]> git.ipfire.org Git - thirdparty/bash.git/commitdiff
bash-4.3-beta file cleanup
authorChet Ramey <chet.ramey@case.edu>
Thu, 10 Oct 2013 19:51:35 +0000 (15:51 -0400)
committerChet Ramey <chet.ramey@case.edu>
Thu, 10 Oct 2013 19:51:35 +0000 (15:51 -0400)
326 files changed:
CWRU/-i [deleted file]
CWRU/CWRU.chlog [deleted file]
CWRU/OS-BUGS/att-yacc-bug [deleted file]
CWRU/OS-BUGS/bsd-rshd-bug [deleted file]
CWRU/OS-BUGS/bsd-tty-driver [deleted file]
CWRU/OS-BUGS/hpux-ulimit-bug [deleted file]
CWRU/OS-BUGS/isc-posix-bug [deleted file]
CWRU/OS-BUGS/next-rlogind-bug [deleted file]
CWRU/OS-BUGS/sco-3.2.4-bug [deleted file]
CWRU/OS-BUGS/sequent-fcntl-dup2-bug [deleted file]
CWRU/OS-BUGS/sun-yp-bug [deleted file]
CWRU/OS-BUGS/ultrix-bugs [deleted file]
CWRU/audit-patch [deleted file]
CWRU/devfd.c [deleted file]
CWRU/devstdin.c [deleted file]
CWRU/history-syslog.1 [deleted file]
CWRU/intmax.c [deleted file]
CWRU/mh-folder-comp [deleted file]
CWRU/misc/asort.c [deleted file]
CWRU/misc/copyright [deleted file]
CWRU/misc/endian.c [deleted file]
CWRU/misc/endian2.c [deleted file]
CWRU/misc/endian3.c [deleted file]
CWRU/misc/getwd.bsd44.c [deleted file]
CWRU/misc/iptrt.c [deleted file]
CWRU/misc/nofd0.c [deleted file]
CWRU/misc/pcat.c [deleted file]
CWRU/misc/pgrp.c [deleted file]
CWRU/misc/pid.c [deleted file]
CWRU/misc/rangecmp.c [deleted file]
CWRU/misc/sigs.dSYM/Contents/Info.plist [deleted file]
CWRU/misc/sigs.dSYM/Contents/Resources/DWARF/sigs [deleted file]
CWRU/misc/sigstat.dSYM/Contents/Info.plist [deleted file]
CWRU/misc/sigstat.dSYM/Contents/Resources/DWARF/sigstat [deleted file]
CWRU/misc/stderr.c [deleted file]
CWRU/misc/test-strtod.c [deleted file]
CWRU/new/execute_cmd.c.lastpipe-first [deleted file]
CWRU/old-changelogs/-i [deleted file]
CWRU/old-changelogs/CHANGES.051093 [deleted file]
CWRU/old-changelogs/CHANGES.071193 [deleted file]
CWRU/old-changelogs/CHANGES.090393 [deleted file]
CWRU/old-changelogs/CWRU.chlog.v10 [deleted file]
CWRU/old-changelogs/CWRU.chlog.v11 [deleted file]
CWRU/old-changelogs/CWRU.chlog.v12 [deleted file]
CWRU/old-changelogs/CWRU.chlog.v13 [deleted file]
CWRU/old-changelogs/CWRU.chlog.v14 [deleted file]
CWRU/old-changelogs/CWRU.chlog.v2 [deleted file]
CWRU/old-changelogs/CWRU.chlog.v3 [deleted file]
CWRU/old-changelogs/CWRU.chlog.v4 [deleted file]
CWRU/old-changelogs/CWRU.chlog.v5 [deleted file]
CWRU/old-changelogs/CWRU.chlog.v6 [deleted file]
CWRU/old-changelogs/CWRU.chlog.v7 [deleted file]
CWRU/old-changelogs/CWRU.chlog.v8 [deleted file]
CWRU/old-changelogs/CWRU.chlog.v9 [deleted file]
CWRU/old-conf/Makefile [deleted file]
CWRU/old-conf/Makefile.builtins [deleted file]
CWRU/old-conf/Makefile.documentation [deleted file]
CWRU/old-conf/Makefile.lib.glob [deleted file]
CWRU/old-conf/Makefile.lib.malloc [deleted file]
CWRU/old-conf/Makefile.lib.readline [deleted file]
CWRU/old-conf/Makefile.lib.termcap [deleted file]
CWRU/old-conf/Makefile.lib.tilde [deleted file]
CWRU/old-conf/config.h [deleted file]
CWRU/old-conf/config.h.mini [deleted file]
CWRU/old-conf/configure [deleted file]
CWRU/old-conf/cpp-Makefile [deleted file]
CWRU/old-conf/machines.h [deleted file]
CWRU/old-conf/support/cat-s [deleted file]
CWRU/old-conf/support/cppmagic [deleted file]
CWRU/old-conf/support/getcppsyms.c [deleted file]
CWRU/old-conf/support/inpath [deleted file]
CWRU/old-conf/support/mkmachtype [deleted file]
CWRU/old-conf/support/mksysdefs [deleted file]
CWRU/old-conf/support/srcdir [deleted file]
CWRU/old/KSH.README [deleted file]
CWRU/old/RELEASE.113 [deleted file]
CWRU/old/RSH.README [deleted file]
CWRU/old/array.doc [deleted file]
CWRU/old/fixlib [deleted file]
CWRU/old/histctl.def [deleted file]
CWRU/old/longsig.c [deleted file]
CWRU/old/mklinks [deleted file]
CWRU/old/mktarfile [deleted file]
CWRU/old/mkversion.c [deleted file]
CWRU/old/pagesize.c [deleted file]
CWRU/old/pagesize.sh [deleted file]
CWRU/old/parse.y.noctlnul [deleted file]
CWRU/old/read.def.stdio [deleted file]
CWRU/old/subst.c.noctlnul [deleted file]
CWRU/posix-parser/Makefile [deleted file]
CWRU/posix-parser/aux.c [deleted file]
CWRU/posix-parser/command.h [deleted file]
CWRU/posix-parser/copy.c [deleted file]
CWRU/posix-parser/endian.h [deleted file]
CWRU/posix-parser/main.c [deleted file]
CWRU/posix-parser/make.c [deleted file]
CWRU/posix-parser/parse.y [deleted file]
CWRU/posix-parser/shell.h [deleted file]
CWRU/save/unwind_prot.c.sighandling [deleted file]
CWRU/usleep.c [deleted file]
MANIFEST.doc [deleted file]
autom4te.cache/output.0 [deleted file]
autom4te.cache/output.1 [deleted file]
autom4te.cache/output.2 [deleted file]
autom4te.cache/output.3 [deleted file]
autom4te.cache/requests [deleted file]
autom4te.cache/traces.0 [deleted file]
autom4te.cache/traces.1 [deleted file]
autom4te.cache/traces.2 [deleted file]
autom4te.cache/traces.3 [deleted file]
builtins/-i [deleted file]
builtins/ChangeLog [deleted file]
builtins/psize-posix.c [deleted file]
builtins/readsave [deleted file]
configure.mk [deleted file]
cross-build/beos-sig.h [deleted file]
cross-build/win32sig.h [deleted file]
examples/complete/complete-tests [deleted file]
examples/copyright [deleted file]
examples/loadables/TODO [deleted file]
examples/loadables/bsdos.glue.c [deleted file]
examples/loadables/copyright-fullcomment [deleted file]
examples/loadables/pushd.def [deleted file]
examples/loadables/pushd.inc [deleted file]
lib/doc-support/Makefile.in [deleted file]
lib/doc-support/getopt.c [deleted file]
lib/doc-support/getopt.h [deleted file]
lib/doc-support/getopt1.c [deleted file]
lib/doc-support/texindex.c [deleted file]
lib/glob/ChangeLog [deleted file]
lib/malloc/OLD/gmalloc.c [deleted file]
lib/malloc/OLD/ogmalloc.c [deleted file]
lib/malloc/OLD/old-nmalloc.c [deleted file]
lib/malloc/OLD/omalloc.c [deleted file]
lib/malloc/memtest.c [deleted file]
lib/posixheaders.old/ansi_stdlib.h [deleted file]
lib/posixheaders.old/filecntl.h [deleted file]
lib/posixheaders.old/memalloc.h [deleted file]
lib/posixheaders.old/posixdir.h [deleted file]
lib/posixheaders.old/posixjmp.h [deleted file]
lib/posixheaders.old/posixstat.h [deleted file]
lib/posixheaders.old/stdc.h [deleted file]
lib/readline/-i [deleted file]
lib/readline/NEW/xxx-autocomplete [deleted file]
lib/readline/copyright-comment [deleted file]
lib/readline/copyright-history [deleted file]
lib/readline/doc/Makefile.in [deleted file]
lib/readline/doc/hist.texinfo [deleted file]
lib/readline/doc/history.3 [deleted file]
lib/readline/doc/history.aux [deleted file]
lib/readline/doc/history.bt [deleted file]
lib/readline/doc/history.cp [deleted file]
lib/readline/doc/history.cps [deleted file]
lib/readline/doc/history.dvi [deleted file]
lib/readline/doc/history.fn [deleted file]
lib/readline/doc/history.html [deleted file]
lib/readline/doc/history.info [deleted file]
lib/readline/doc/history.ky [deleted file]
lib/readline/doc/history.log [deleted file]
lib/readline/doc/history.pg [deleted file]
lib/readline/doc/history.ps [deleted file]
lib/readline/doc/history.tmp [deleted file]
lib/readline/doc/history.toc [deleted file]
lib/readline/doc/history.tp [deleted file]
lib/readline/doc/history.vr [deleted file]
lib/readline/doc/history.vrs [deleted file]
lib/readline/doc/hstech.texinfo [deleted file]
lib/readline/doc/hsuser.texinfo [deleted file]
lib/readline/doc/manvers.texinfo [deleted file]
lib/readline/doc/readline.3 [deleted file]
lib/readline/doc/readline.dvi [deleted file]
lib/readline/doc/readline.html [deleted file]
lib/readline/doc/readline.info [deleted file]
lib/readline/doc/readline.ps [deleted file]
lib/readline/doc/rlman.aux [deleted file]
lib/readline/doc/rlman.bt [deleted file]
lib/readline/doc/rlman.cp [deleted file]
lib/readline/doc/rlman.cps [deleted file]
lib/readline/doc/rlman.fn [deleted file]
lib/readline/doc/rlman.fns [deleted file]
lib/readline/doc/rlman.ky [deleted file]
lib/readline/doc/rlman.log [deleted file]
lib/readline/doc/rlman.pg [deleted file]
lib/readline/doc/rlman.texinfo [deleted file]
lib/readline/doc/rlman.tmp [deleted file]
lib/readline/doc/rlman.toc [deleted file]
lib/readline/doc/rlman.tp [deleted file]
lib/readline/doc/rlman.vr [deleted file]
lib/readline/doc/rltech.texinfo [deleted file]
lib/readline/doc/rluser.texinfo [deleted file]
lib/readline/doc/rluserman.aux [deleted file]
lib/readline/doc/rluserman.bt [deleted file]
lib/readline/doc/rluserman.cp [deleted file]
lib/readline/doc/rluserman.cps [deleted file]
lib/readline/doc/rluserman.dvi [deleted file]
lib/readline/doc/rluserman.fn [deleted file]
lib/readline/doc/rluserman.fns [deleted file]
lib/readline/doc/rluserman.html [deleted file]
lib/readline/doc/rluserman.info [deleted file]
lib/readline/doc/rluserman.ky [deleted file]
lib/readline/doc/rluserman.log [deleted file]
lib/readline/doc/rluserman.pg [deleted file]
lib/readline/doc/rluserman.ps [deleted file]
lib/readline/doc/rluserman.texinfo [deleted file]
lib/readline/doc/rluserman.tmp [deleted file]
lib/readline/doc/rluserman.toc [deleted file]
lib/readline/doc/rluserman.tp [deleted file]
lib/readline/doc/rluserman.vr [deleted file]
lib/readline/doc/rluserman.vrs [deleted file]
lib/readline/examples/rlptytest.c [deleted file]
lib/readline/examples/x [deleted file]
lib/readline/rlptytest.c [deleted file]
lib/termcap/grot/COPYING [deleted file]
lib/termcap/grot/ChangeLog [deleted file]
lib/termcap/grot/INSTALL [deleted file]
lib/termcap/grot/Makefile.in [deleted file]
lib/termcap/grot/NEWS [deleted file]
lib/termcap/grot/README [deleted file]
lib/termcap/grot/configure [deleted file]
lib/termcap/grot/configure.in [deleted file]
lib/termcap/grot/termcap.info [deleted file]
lib/termcap/grot/termcap.info-1 [deleted file]
lib/termcap/grot/termcap.info-2 [deleted file]
lib/termcap/grot/termcap.info-3 [deleted file]
lib/termcap/grot/termcap.info-4 [deleted file]
lib/termcap/grot/termcap.src [deleted file]
lib/termcap/grot/termcap.texi [deleted file]
lib/termcap/grot/texinfo.tex [deleted file]
lib/tilde/ChangeLog [deleted file]
lib/tilde/doc/Makefile [deleted file]
lib/tilde/doc/tilde.texi [deleted file]
po/._hr.po [deleted file]
po/Makevars.template [deleted file]
po/bash-3.1.pot [deleted file]
po/bash-3.2.pot [deleted file]
po/bash-4.0.pot [deleted file]
po/bash-4.1.pot [deleted file]
po/bash-4.2.pot [deleted file]
po/builtins.pot [deleted file]
po/foo.new.po [deleted file]
po/readline.po [deleted file]
po/t-en@quot.gmo [deleted file]
support/bash.icon.ps [deleted file]
support/bash.install [deleted file]
support/bash.xv [deleted file]
support/copyright-comment [deleted file]
support/copyright-def [deleted file]
support/copyright-makefile [deleted file]
support/deblank.sh [deleted file]
support/endian.c [deleted file]
support/mail-shell [deleted file]
support/memtest.c [deleted file]
support/mk-takehome [deleted file]
support/mkdep [deleted file]
support/mkdist [deleted file]
support/mkdocdist [deleted file]
support/mknewvers.sh [deleted file]
support/mksnap [deleted file]
support/relicense [deleted file]
support/texi2dvi-0.43 [deleted file]
support/texi2dvi-0.46 [deleted file]
support/texi2dvi-1.14 [deleted file]
support/texi2html-1.64 [deleted file]
support/texi2html.debug [deleted file]
support/version2.c [deleted file]
tests/-i [deleted file]
tests/RUN-ONE-TEST [deleted file]
tests/RUN-ONE-TEST.gprof [deleted file]
tests/RUN-ONE-TEST.ksh [deleted file]
tests/RUN-TEST-SCRIPT [deleted file]
tests/braces-tests [deleted file]
tests/cond-regexp.sub [deleted file]
tests/cprint1.sub [deleted file]
tests/cracauer-testsuite/DOC [deleted file]
tests/cracauer-testsuite/Makefile [deleted file]
tests/cracauer-testsuite/OBSERVATIONS [deleted file]
tests/cracauer-testsuite/QUESTIONS [deleted file]
tests/cracauer-testsuite/catcher.c [deleted file]
tests/cracauer-testsuite/lib.csh [deleted file]
tests/cracauer-testsuite/lib.sh [deleted file]
tests/cracauer-testsuite/test01.csh [deleted file]
tests/cracauer-testsuite/test01.sh [deleted file]
tests/cracauer-testsuite/test02.csh [deleted file]
tests/cracauer-testsuite/test02.sh [deleted file]
tests/cracauer-testsuite/test03.sh [deleted file]
tests/cracauer-testsuite/test04.sh [deleted file]
tests/cracauer-testsuite/test05.sh [deleted file]
tests/cracauer-testsuite/test06.sh [deleted file]
tests/cracauer-testsuite/test07.csh [deleted file]
tests/cracauer-testsuite/test07.sh [deleted file]
tests/cracauer-testsuite/test08.sh [deleted file]
tests/cracauer-testsuite/test09.sh [deleted file]
tests/cracauer-testsuite/test10.sh [deleted file]
tests/cracauer-testsuite/test11.sh [deleted file]
tests/cracauer-testsuite/test12.sh [deleted file]
tests/cracauer-testsuite/test13.sh [deleted file]
tests/exp-tests [deleted file]
tests/extglob2.sub [deleted file]
tests/glob-test [deleted file]
tests/infile [deleted file]
tests/local-tests [deleted file]
tests/misc/input-line-2.sh [deleted file]
tests/misc/minus-e [deleted file]
tests/misc/minus-e.right [deleted file]
tests/misc/read-nchars-int.tests [deleted file]
tests/misc/regress/README [deleted file]
tests/misc/regress/geoff.post [deleted file]
tests/misc/regress/getdate.mk [deleted file]
tests/misc/regress/getdate.y [deleted file]
tests/misc/regress/shx [deleted file]
tests/misc/regress/shx1 [deleted file]
tests/misc/regress/shx2 [deleted file]
tests/misc/regress/shx3 [deleted file]
tests/misc/regress/shx4 [deleted file]
tests/misc/regress/shx5 [deleted file]
tests/misc/regress/shx7 [deleted file]
tests/misc/regress/shx8 [deleted file]
tests/misc/run-input-test-2 [deleted file]
tests/misc/run-minus-e [deleted file]
tests/misc/test.patmatch [deleted file]
tests/posix-ifs.sh [deleted file]
tests/printf.right.raw [deleted file]
tests/run-gprof [deleted file]
tests/set-e-test [deleted file]
tests/tilde-tests [deleted file]
tests/time.tests [deleted file]

diff --git a/CWRU/-i b/CWRU/-i
deleted file mode 100644 (file)
index e69de29..0000000
diff --git a/CWRU/CWRU.chlog b/CWRU/CWRU.chlog
deleted file mode 100644 (file)
index 4986e4e..0000000
+++ /dev/null
@@ -1,5089 +0,0 @@
-                                2/14/2011
-                                ---------
-[bash-4.2 released]
-
-                                  2/15
-                                  ----
-lib/glob/gmisc.c
-       - fix wmatchlen and umatchlen to avoid going past the end of the
-         string on an incomplete bracket expression that ends with a
-         NUL.  Partial fix for bug reported by Clark Wang <dearvoid@gmail.com>
-
-                                  2/16
-                                  ----
-subst.h
-       - new string extract flag value: SX_WORD.  Used when calling
-         extract_dollar_brace_string to skip over the word in
-         ${param op word} from parameter_brace_expand
-
-subst.c
-       - change parameter_brace_expand to add SX_WORD to flags passed to
-         extract_dollar_brace_string
-       - change parameter_brace_expand to use SX_POSIXEXP for all non-posix
-         word expansion operators that treat single quotes as special, not
-         just % and #
-       - change extract_dollar_brace_string to initialize dolbrace_state to
-         DOLBRACE_WORD if SX_WORD flag supplied and we shouldn't use
-         DOLBRACE_QUOTE.  Fixes bug reported by Juergen Daubert <jue@jue.li>
-
-doc/{bash.1,bashref.texi}
-       - document the exact expansions here strings undergo
-
-                                  2/17
-                                  ----
-lib/readline/vi_mode.c
-       - make sure that `dd', `cc', and `yy' call vidomove_dispatch from
-         rl_domove_read_callback.  Fixes bug reported by Clark Wang
-         <dearvoid@gmail.com>
-
-lib/readline/callback.c
-       - make sure _rl_internal_char_cleanup is called after the
-         vi-motion callbacks (rl_vi_domove_callback) in rl_callback_read_char.
-         Companion to above fix
-
-doc/{bash.1,bashref.texi}
-       - make sure that the text describing the rhs of the == and =~
-         operators to [[ states that only the quoted portion of the pattern
-         is matched as a string
-
-                                  2/18
-                                  ----
-lib/glob/gmisc.c
-       - better fix for umatchlen/wmatchlen: keep track of the number of
-         characters in a bracket expression as the value to increase
-         matchlen by if the bracket expression is not well-formed.  Fixes
-         bug reported by Clark Wang <dearvoid@gmail.com>
-
-subst.c
-       - change expand_string_for_rhs so that it sets the W_NOSPLIT2 flag
-         in the word flags.  We will not perform word splitting or quote
-         removal on the result, so we do not want to add quoted nulls if
-         we see "" or ''.  Fixes bug reported by Mike Frysinger
-         <vapier@gentoo.org>
-
-                                  2/19
-                                  ----
-variables.c
-       - new function, int chkexport(name), checks whether variable NAME is
-         exported and remakes the export environment if necessary.  Returns
-         1 if NAME is exported and 0 if not
-       - call chkexport(name) to get tzset to look at the right variable in
-         the environment when modifying TZ in sv_tz.  Don't call tzset if
-         chkexport doesn't indicate that the variable is exported
-
-variables.h
-       - new extern declaration for chkexport
-
-
-{parse.y,builtins/printf.def}
-       - call sv_tz before calling localtime() when formatting time strings
-         in prompt strings or using printf.  Fixes bug reported by
-         Dennis Williamson <dennistwilliamson@gmail.com>
-
-execute_cmd.c
-       - modify fix of 2/9 to add casts when those variables are passed to
-         functions; some compilers throw errors instead of warnings.  Report
-         and fix from Joachim Schmitz <jojo@schmitz-digital.de>
-
-support/shobj-conf
-       - add a stanza for nsk on the Tandem from Joachim Schmitz
-         <jojo@schmitz-digital.de>
-
-{shell,lib/readline/shell}.c
-       - Tandem systems should use getpwnam (getlogin()); for some reason
-         they don't do well with using getuid().  Fix from Joachim Schmitz
-         <jojo@schmitz-digital.de>
-
-                                   3/1
-                                   ---
-variables.c
-       - make sure that the return value from find_variable is non-null
-         before trying to use it in chkexport.  Fixes bug reported by
-         Evangelos Foutras <foutrelis@gmail.com>
-
-                                   3/3
-                                   ---
-parse.y
-       - when adding $$ to the current token buffer in read_token_word(),
-         don't xmalloc a buffer for two characters and then strcpy it, just
-         copy the characters directly into the token buffer.  Fix from
-         Michael Whitten <mfwitten@gmail.com>
-
-execute_cmd.c
-       - fix expand_word_unsplit to add the W_NOSPLIT2 flag to the word to
-         be expanded, so "" doesn't add CTLNUL.  Similar to fix of 2/18 to
-         expand_string_for_rhs.  Fixes bug reported by Nathanael D. Noblet
-         <nathanael@gnat.ca> and Matthias Klose <doko@debian.org>
-
-parse.y
-       - fix extended_glob case of read_token_word to allocate an extra
-         space in the buffer for the next character read after the extended
-         glob specification if it's a CTLESC or CTLNUL.  Report and fix from
-         Michael Witten <mfwitten@gmail.com>
-       - fix shell expansions case of read_token_word to allocate an extra
-         space in the buffer for the next character read after the shell
-         expansion if it's a CTLESC or CTLNUL.  Report and fix from
-         Michael Witten <mfwitten@gmail.com>
-       - TENTATIVE: fix read_token_word to reduce the amount of buffer space
-         required to hold the translated and double-quoted value of $"..."
-         strings.  Report and fix from Michael Witten <mfwitten@gmail.com>
-       - change code around got_character and got_escaped_character labels to
-         make sure that we call RESIZE_MALLOCED_BUFFER before adding the
-         CTLESC before a CTLESC or CTLNUL, and before adding the character if
-         we're not adding a CTLESC.  Report and fix from
-         Michael Witten <mfwitten@gmail.com>
-
-subst.c
-       - new param flags value, PF_ASSIGNRHS, mirrors W_ASSIGNRHS, noting that
-         parameter expansion is on rhs of assignment statement.  That inhibits
-         word splitting
-       - change param_expand to call string_list_dollar_at with quoted == 1
-         if PF_ASSIGNRHS is set, so it will quote IFS characters in the
-         positional parameter before separating them with the first char of
-         $IFS.  This keeps the rhs from being split inappropriately.  Fixes
-         bug reported by Andres Perera <andres.p@zoho.com>
-
-                                   3/4
-                                   ---
-lib/readline/bind.c
-       - add a missing free of `names' in rl_function_dumper.  Bug report
-         and fix from Michael Snyder <msnyder@vmware.com>
-
-                                   3/5
-                                   ---
-lib/readline/rltty.c
-       - change rl_deprep_terminal so it uses fileno (stdin) for the tty fd
-         if rl_instream is not set, like rl_prep_terminal
-
-                                   3/6
-                                   ---
-lib/readline/display.c
-       - fix rl_message to use a dynamically-allocated buffer instead of a
-         fixed-size buffer of 128 chars for the `local message prompt'.  Bug
-         report and fix from Micah Cowan <micah@cowan.name>
-
-                                   3/7
-                                   ---
-jobs.c
-       - add sentinel to wait_sigint_handler so it only sets wait_sigint_received
-         if waiting_for_child is non-zero; otherwise, it restores the old
-         SIGINT handler and sends itself the SIGINT
-       - set waiting_for_child around the calls to waitchld that use it to
-         synchronously wait for a process
-       - change logic that decides whether or not the child process blocked
-         or handled SIGINT based on whether or not waitpid returns -1/EINTR
-         and the shell receives a SIGINT and the child does not exit.  If
-         the child later exits due to SIGINT, cancel the assumoption that it
-         was handled
-       - instead of testing whether or not the child exited due to SIGINT
-         when deciding whether the shell should act on a SIGINT it received
-         while waiting, test whether or not we think the child caught
-         SIGINT.  If it did, we let it go (unless the shell has it trapped);
-         if it did not catch it, the shell acts on the SIGINT.  Fix from
-         Linus Torvalds <torvalds@linux-foundation.org>, bug report originally
-         from Oleg Nesterov <oleg@redhat.com>
-
-                                   3/8
-                                   ---
-shell.c
-       - initialize no_line_editing to 1 if READLINE is not defined -- we
-         can't have line editing without readline
-
-                                  3/12
-                                  ----
-lib/readline/signals.c
-       - add SIGHUP to the set of signals readline handles
-
-lib/readline/doc/rltech.texi
-       - document that SIGHUP is now part of the set of signals readline
-         handles
-
-lib/readline/input.c
-       - if _rl_caught_signal indicates that read() was interrupted by a
-         SIGHUP or SIGTERM, return READERR or EOF as appropriate
-       - call rl_event_hook, if it's set, if call to read in rl_getc
-         returns -1/EINTR.  If rl_event_hook doesn't do anything, this
-         continues the loop as before.  This handles the other fatal
-         signals
-
-execute_cmd.c
-       - add a couple of QUIT; calls to execute_disk_command and
-         execute_simple_command to improve responsiveness to interrupts
-         and fatal signals
-
-input.c
-       - rearrange getc_with_restart so that the return values from read()
-         are handled right
-
-parse.y
-       - don't need to set terminate_immediately in yy_stream_get, since
-         getc_with_restart checks for terminating signals itself
-       - since readline returns READERR on SIGHUP or SIGTERM, don't need
-         to set terminate_immediately.  Still doesn't handle other
-         signals well -- will have to check that some more
-
-bashline.c
-       - new function, bash_event_hook, for rl_event_hook.  Just checks for
-         terminating signals and acts on them using CHECK_TERMSIG.
-       - set rl_event_hook to bash_event_hook
-
-builtins/read.def
-       - take out setting terminate_immediately; add calls to CHECK_TERMSIG
-         after read calls
-
-doc/{bash.1,bashref.texi}
-       - move the text describing the effect of negative subscripts used to
-         reference indexed array elements to the paragraphs describing
-         ${parameter[subscript]}, since that's where they are implemented.
-         Pointed out by Christopher F. A. Johnson <cfajohnson@gmail.com>
-
-arrayfunc.[ch],subst.c
-       - array_expand_index now takes a new first argument: a SHELL_VAR *
-         of the array variable being subscripted.  Can be used later to fully
-         implement negative subscripts
-
-                                  3/14
-                                  ----
-lib/glob/glob.c
-       - fix mbskipname to not turn the directory entry name into a wide char
-         string if the conversion of the pattern to a wide char string fails
-       - fix mbskipname to call skipname if either the pattern or the filename
-         can't be converted into a wide-char string
-
-lib/glob/xmbsrtowcs.c
-       - fix xdupmbstowcs2 to handle return value of 0 from mbsnrtowcs and
-         short-circuit with failure in that case.  Fixes bug reported by
-         Roman Rakus <rrakus@redhat.com>
-
-                                  3/15
-                                  ----
-bashline.c
-       - new variable, bash_filename_quote_characters to store the value
-         assigned to rl_filename_quote_characters so it can be restored
-         if changed.
-       - change bashline_reset and attempt_shell_completion to restore
-         rl_filename_quote_characters if not set to default
-
-                                  3/22
-                                  ----
-lib/glob/glob.c
-       - wdequote_pathname falls back to udequote_pathname if xdupmbstowcs
-         fails to convert the pathname to a wide-character string
-
-lib/glob/xmbsrtowcs.c
-       - xdupmbstowcs2: change to fix problem with leading '\\' (results in
-         nms == 0, which causes it to short-circuit with failure right
-         away).  Fixes bug pointed out by Werner Fink <werner@suse.de>
-       - xdupmbstowcs2: compensate for mbsnrtowcs returning 0 by taking the
-         next single-byte character and going on
-       - xdupmbstowcs2: change memory allocation to increase by WSBUF_INC
-         bytes; try to avoid calls to realloc (even if they don't actually
-         result in more memory being allocated)
-
-                                  3/24
-                                  ----
-doc/{bash.1,bashref.texi}
-       - slightly modify BASH_SUBSHELL description based on complaint from
-         Sam Liddicott <sam@liddicott.com>
-
-                                  3/25
-                                  ----
-trap.c
-       - change free_trap_strings to not call free_trap_string for signals
-         that are being ignored, like reset_or_restore_signal_handlers.
-         Fixes bug reported by Satoshi Takahashi <blue3waters@gmail.com>
-
-                                  3/26
-                                  ----
-lib/readline/rltypedefs.h
-       - remove old Function/VFunction/CPFunction/CPPFunction typedefs as
-         suggested by Tom Tromey <tromey@redhat.com>
-
-lib/readline/rlstdc.h
-       - move defines for USE_VARARGS/PREFER_STDARG/PREFER_VARARGS from
-         config.h.in to here because declaration of rl_message in
-         readline.h uses the defines.  This makes it hard for another packages
-         to use after the header files are installed, since config.h is not
-         one of the installed files.  Suggested by Tom Tromey
-         <tromey@redhat.com>
-
-                                  3/27
-                                  ----
-print_cmd.c
-       - change indirection_string from a static buffer to a dynamic one
-         managed by indirection_level_string(), so we don't end up truncating
-         PS4.  Suggested by Dennis Williamson <dennistwilliamson@gmail.com>
-
-lib/readline/shell.c
-       - change sh_set_lines_and_columns to use static buffers instead of
-         allocating the buffers to pass to setenv/putenv
-
-lib/readline/terminal.c
-       - change _rl_get_screen_size to not call sh_set_lines_and_columns if
-         ignore_env == 0
-       - _rl_sigwinch_resize_terminal: new function to just retrieve terminal
-         size, ignoring environment
-
-lib/readline/rlprivate.h
-       - new external declaration for _rl_sigwinch_resize_terminal() (currently
-         unused)
-
-lib/readline/signals.c
-       - rl_sigwinch_handler: set _rl_caught_signal to SIGWINCH
-       - rl_sigwinch_handler: don't immediately call rl_resize_terminal; just
-         leave _rl_caught_signal set for RL_CHECK_SIGNALS to handle
-       - _rl_signal_handler: call rl_resize_terminal if sig == SIGWINCH.
-         Should fix hang when sending multiple repeated SIGWINCH reported by
-         Henning Bekel <h.bekel@googlemail.com>
-
-                                  3/29
-                                  ----
-lib/sh/snprintf.c
-       - include math.h for any defines for isinf/isnan
-       - use code from gnulib documentation to implement isinf/isnan if they
-         are not defined
-
-configure.in
-       - don't check for isinf or isnan; c99 says they're macros anyway
-
-config.h.in
-       - remove defines for ISINF_IN_LIBC and ISNAN_IN_LIBC, no longer used
-         by snprintf.c
-
-                                   4/2
-                                   ---
-braces.c
-       - brace_gobbler: fix to understand double-quoted command substitution,
-         since the shell understands unquoted comsubs.  Fixes bug reported
-         by Michael Whitten <mfwitten@gmail.com>
-
-lib/readline/display.c
-       - include <pc.h> on MDOS
-       - get and set screen size using DJGPP-specific calls on MSDOS
-       - move cursor up clear screen using DJGPP-specific calls
-       - don't call tputs on DJGPP; there is no good terminfo support
-
-lib/readline/terminal.c
-       - include <pc.h> on MDOS
-       - get and set screen size using DJGPP-specific calls on MSDOS
-       - use DJGPP-specific initialization on MSDOS, zeroing all the
-         _rl_term_* variables
-       - don't call tputs on DJGPP; there is no good terminfo support
-         DJGPP support from Eli Zaretskii  <eliz@gnu.org>
-
-                                   4/6
-                                   ---
-
-config-top.h
-       - change DEFAULT_PATH_VALUE to something more useful and modern
-
-                                   4/8
-                                   ---
-tests/printf2.sub
-       - make sure LC_ALL and LC_CTYPE are set so LANG assignment takes effect.
-         Reported by Cedric Arbogast <arbogast.cedric@gmail.com>
-
-                                  4/11
-                                  ----
-include/chartypes.h
-       - fix a couple of dicey defines (though ones that don't cause any
-         compiler warnings) in IN_CTYPE_DOMAIN
-
-doc/{bashref.texi,bash.1}
-       - add note referring to duplicating file descriptors in sections
-         describing redirecting stdout and stderr and appending to stdout
-         and stderr.  Suggested by Matthew Dinger <mdinger.bugzilla@gmail.com>
-
-pcomplete.c
-       - it_init_helptopics: new function to support completing on help topics,
-         not just builtins
-       - it_helptopics: new programmable completion list of help topics
-       - build list of helptopic completions in gen_action_completions on
-         demand
-
-pcomplete.h
-       - new extern declaration for it_helptopics
-
-builtins/complete.def
-       - the `helptopic' action now maps to CA_HELPTOPIC intead of CA_BUILTIN,
-         since there are more help topics than just builtins.  Suggested by
-         Clark Wang <dearvoid@gmail.com>
-
-                                  4/12
-                                  ----
-print_cmd.c
-       - fix print_arith_for_command to add a call to PRINT_DEFERRED_HEREDOCS
-         before ending the body of the command, so heredocs get attached to
-         the right command instead of to the loop.  From gentoo bug 363371
-         http://bugs.gentoo.org/show_bug.cgi?id=363371
-
-execute_cmd.c
-       - change coproc_pidchk to unset the appropriate shell variables when
-         the (currently single) known coproc pid terminates
-       - cleanup and new functions to fully support multiple coprocesses when
-         and if I decide to go there
-
-                                  4/13
-                                  ----
-print_cmd.c
-       - fix print_group_command to add a call to PRINT_DEFERRED_HEREDOCS
-         after call to make_command_string_internal before printing closing
-         `}'
-       - fix make_command_string_internal to add a call to
-         PRINT_DEFERRED_HEREDOCS after recursive call to
-         make_command_string_internal in case cm_subshell before printing
-         closing `)'
-
-                                  4/14
-                                  ----
-print_cmd.c
-       - change overlapping strcpy in named_function_string to memmove
-
-sig.h
-       - UNBLOCK_SIGNAL: convenience define, same as UNBLOCK_CHILD, just
-         restores an old signal mask
-
-trap.c
-       - set_signal: instead of setting the signal handler to SIG_IGN while
-         installing the new trap handler, block the signal and unblock it
-         after the new handler is installed.  Fixes bug reported by Roman
-         Rakus <rrakus@redhat.com>
-
-                                  4/15
-                                  ----
-doc/{bash.1,bashref.texi}
-       - make it clear that enabling monitor mode means that all jobs run in
-         separate process groups
-
-                                  4/18
-                                  ----
-builtins/fc.def
-       - update fix of 4/15/2010 to not take saved_command_line_count into
-         account when stepping down the history list to make sure that
-         last_hist indexes something that is valid.  Fixes bug reported by
-         <piuma@piumalab.org>
-
-                                  4/19
-                                  ----
-builtins/fc.def
-       - fc_gethnum: make sure the calculation to decide the last history
-         entry is exactly the same as fc_builtin.  Fixes bug uncovered by
-         fix of 4/18 to stop seg fault
-
-                                  4/22
-                                  ----
-lib/readline/terminal.c
-       - change _rl_enable_meta_key to set a flag indicating that it sent the
-         enable-meta sequence
-       - _rl_disable_meta_key: new function to turn off meta mode after we
-         turned it on with _rl_enable_meta_key
-
-lib/readline/rlprivate.h
-       - extern declaration for _rl_disable_meta_key
-
-configure.in
-       - if not cross-compiling, set CFLAGS_FOR_BUILD from any CFLAGS inherited
-         from the environment.  Fixes HP/UX build problem reported by
-         "Daniel Richard G." <skunk@iSKUNK.ORG>
-
-                                  4/26
-                                  ----
-config-top.h
-       - define MULTIPLE_COPROCS to 0 so the code is still disabled but easy
-         to enable via configure option or editing this file
-
-                                  4/29
-                                  ----
-lib/sh/eaccess.c
-       - freebsd provides faccessat, with the same misfeature as their eaccess
-         and access implementations (X_OK returns true for uid==0 regardless
-         of the actual file permissions), so reorganize code to check the
-         file permissions as with eaccess.  Report and fix from Johan Hattne
-         <johan.hattne@utsouthwestern.edu>
-
-                                   5/2
-                                   ---
-doc/{bash.1,bashref.texi}
-       - add forward reference to `Pattern Matching' from `Pathname
-         Expansion', suggested by Greg Wooledge <wooledg@eeg.ccf.org>
-
-                                   5/5
-                                   ---
-pcomplib.c
-       - the bash_completion project now distributes over 200 completions
-         for various programs, with no end in sight, so increase the value
-         of COMPLETE_HASH_BUCKETS from 32 to 128
-
-pathexp.c
-       - quote_string_for_globbing: make sure CTLESC quoting CTLESC is
-         translated into \<CTLESC> even if the flags include QGLOB_REGEXP.
-         We don't want to process the second CTLESC as a quote character.
-         Fixes bug reported by Shawn Bohrer <sbohrer@rgmadvisors.com>
-
-                                   5/6
-                                   ---
-builtins/printf.def
-       - change PRETURN to not call fflush if ferror(stdout) is true
-       - if a call to one of the stdio functions or printstr leaves
-         ferror(stdout) true, and PRETURN is going to be called, let PRETURN
-         print the error message rather than doubling up the messages.  Fixes
-         problem reported by Roman Rakus <rrakus@redhat.com>
-
-                                   5/9
-                                   ---
-doc/{bash.1,bashref.texi}
-       - add note to the effect that lists inside compound command can be
-         terminated by newlines as well as semicolons.  Suggested by
-         Roman Byshko <rbyshko@gmail.com>
-
-                                  5/10
-                                  ----
-subst.c
-       - remove_quoted_nulls: fix problem that caused it to skip over the
-         character after a CTLNUL, which had the effect of skipping every
-         other of a series of CTLNULs.  Fixes bug reported by
-         Marten Wikstrom <marten.wikstrom@keystream.se>
-
-                                  5/11
-                                  ----
-subst.c
-       - extract_process_subst: add SX_COMMAND flag to call to
-         extract_delimited_string, since we're expanding the same sort of
-         command as command substitution.  Fixes bug reported in Ubuntu
-         bug 779848
-
-                                  5/12
-                                  ----
-configure.in
-       - set the prefer_shared and prefer_static variables appropriately
-         depending on the value of $opt_static_link
-
-aclocal.m4
-       - AC_LIB_LINKFLAGS_BODY: change to not prefer shared versions of the
-         libraries it's searching for if the prefer_shared variable is "no".
-         Fixes problem reported by Cedric Arbogast <arbogast.cedric@gmail.com>
-
-                                  5/13
-                                  ----
-lib/readline/readline.c
-       - _rl_internal_teardown: add call to _rl_disable_meta_key to make the
-         meta key active only for the duration of the call to readline()
-       - _rl_internal_setup: move call to _rl_enable_meta_key here from
-         readline_initialize_everything so the meta key is active only for
-         the duration of the call to readline().  Suggestion from Miroslav
-         Lichvar <mlichvar@redhat.com>
-
-builtins/help.def
-       - help_builtin: change strncmp to strcmp so that `help read' no longer
-         matches `readonly'.  Suggested by Clark Wang <dearvoid@gmail.com>
-
-config.h.in
-       - add define for GLIBC21, checked using jm_GLIBC21 as part of the tests
-         for libintl
-
-lib/malloc/malloc.c
-       - internal_free: don't use the cached value of memtop when deciding
-         whether or not to adjust the break and give memory back to the kernel
-         when using the GNU C library, since glibc uses sbrk for its own
-         internal purposes.  From Debian bug 614815, reported by Samuel
-         Thibault <samuel.thibault@gnu.org>
-
-aclocal.m4
-       - BASH_STRUCT_WEXITSTATUS_OFFSET: change AC_RUN_IFELSE to AC_TRY_RUN
-         to avoid warning about not using AC_LANG_SOURCE
-
-                                  5/14
-                                  ----
-bashline.[ch]
-       - two new functions, bashline_set_event_hook and bashline_reset_event_hook,
-         to set rl_event_hook to bash_event_hook and back to NULL, respectively
-       - don't set rl_event_hook unconditionally
-
-sig.c
-       - termsig_sighandler: if the shell is currently interactive and
-         readline is active, call bashline_set_event_hook to cause
-         termsig_handler to be called via bash_event_hook when the shell
-         returns from the signal handler
-
-                                  5/15
-                                  ----
-lib/readline/display.c
-       - _rl_col_width: Mac OS X has a bug in wcwidth: it does not return 0
-         for UTF-8 combining characters.  Added workaround dependent on
-         MACOSX.  Fixes problem pointed out by Thomas De Contes
-         <d.l.tDecontes@free.fr>
-
-                                  5/16
-                                  ----
-lib/readline/rlmbutil.h
-       - WCWIDTH: wrapper for wcwidth that returns 0 for Unicode combining
-         characters on systems where wcwidth is broken (e.g., Mac OS X).
-
-lib/readline/{complete,display,mbutil}.c
-       - use WCWIDTH instead of wcwidth
-
-                                  5/17
-                                  ----
-lib/readline/display.c
-       - update_line: after computing ofd and nfd, see whether the next
-         character in ofd is a zero-width combining character.  If it is,
-         back ofd and nfd up one, so the base characters no longer compare
-         as equivalent.  Fixes problem reported by Keith Winstein
-         <keithw@mit.edu>
-
-lib/readline/nls.c
-       - _rl_utf8locale: new flag variable, set to non-zero if the current
-         locale is UTF-8
-       - utf8locale(): new function, returns 1 if the passed lspec (or the
-         current locale) indicates that the locale is UTF-8.  Called from
-         _rl_init_eightbit
-
-lib/readline/rlprivate.h
-       - extern declaration for _rl_utf8locale
-
-locale.c
-       - locale_utf8locale: new flag variable, set to non-zero if the current
-         locale is UTF-8 (currently unused)
-       - locale_isutf8(): new function, returns 1 if the passed lspec (or the
-         current locale) indicates that the locale is UTF-8.  Should be called
-         whenever the locale or LC_CTYPE value is modified
-
-aclocal.m4
-       - BASH_WCWIDTH_BROKEN: new test for whether or not wcwidth returns
-         zero-width characters like unicode combining characters as having
-         display length 1; define WCWIDTH_BROKEN in this case
-
-config.h.in
-       - WCWIDTH_BROKEN: new define
-
-lib/readline/rlmbutil.h
-       - change WCWIDTH macro to use _rl_utf8locale and the full range of
-         Unicode combining characters (U+0300-U+036F)
-
-                                  5/19
-                                  ----
-lib/readline/rlprivate.h
-       - _rl_search_context: new member, prevc, will hold character read
-         prior to lastc
-
-lib/readline/isearch.c
-       - _rl_isearch_dispatch: if the character causes us to index into
-         another keymap, save that character in cxt->prevc
-       - _rl_isearch_dispatch: if we index into another keymap, but don't
-         find a function that's special to i-search, and the character that
-         caused us to index into that keymap would have terminated the
-         search, push back cxt->prevc and cxt->lastc to make it appear as
-         if `prevc' terminated the search, and execute lastc as a command.
-         We have to push prevc back so we index into the same keymap before
-         we read lastc.  Fixes bug report from Davor Cubranic
-         <cubranic@stat.ubc.ca>
-
-                                  5/20
-                                  ----
-expr.c
-       - expr_bind_variable: pay attention to the return value from
-         bind_variable and check whether or not we should error out due to
-         a readonly or noassign variable.  Fixes bug reported by Eric
-         Blake <eblake@redhat.com>
-
-                                  5/26
-                                  ----
-
-lib/readline/search.c
-       - include histlib.h for ANCHORED_SEARCH defines
-       - rl_history_search_flags: new variable, holds ANCHORED_SEARCH flag for
-         the duration of a history search
-       - rl_history_search_reinit: takes a new flags variable, defines whether
-         or not the search is anchored; assigned to rl_history_search_flags
-       - rl_history_serarch_reinit: if ANCHORED_SEARCH flag passed, add ^ to
-         beginning of search string; otherwise search string is unmodified
-       - rl_history_search_internal: set rl_point appropriately based on
-         whether or not rl_history_search_flags includes ANCHORED_SEARCH
-       - rl_history_substr_search_forward: new function, for non-anchored
-         substring search forward through history for string of characters
-         preceding rl_point
-       - rl_history_substr_search_backward: new function, for non-anchored
-         substring search backward through history for string of characters
-         preceding rl_point.  Original code from Niraj Kulkarni
-         <kulkarniniraj14@gmail.com>
-
-lib/readline/readline.h
-       - extern declarations for rl_history_substr_search_{for,back}ward
-
-lib/readline/funmap.c
-       - history-substring-search-forward: new bindable command, invokes
-         rl_history_substr_search_forward
-       - history-substring-search-backward: new bindable command, invokes
-         rl_history_substr_search_backward
-
-lib/readline/doc/{rluser.texi,readline.3}
-       - document history-substring-search-forward and
-         history-substring-search-backward
-
-                                  5/27
-                                  ----
-{nojobs,jobs}.c
-       - add support for DONT_REPORT_SIGTERM so that the shell doesn't print
-         a message when a job exits due to SIGTERM since that's the default
-         signal sent by the kill builtin.  Suggested by Marc Herbert
-         <mark.herbert@gmail.com>
-
-config-top.h
-       - DONT_REPORT_SIGTERM: new user-modifiable setting.  Commented out
-         by default
-
-                                  5/28
-                                  ----
-lib/readline/bind.c
-       - _rl_skip_to_delim: skip to a closing double quote or other delimiter,
-         allowing backslash to quote any character, including the delimiter
-       - rl_parse_and_bind: call _rl_skip_to_delim instead of using inline
-         code
-       - rl_parse_and_bind: allow quoted strings as the values of string
-         variables.  Variable values without double quotes have trailing
-         whitespace removed (which still allows embedded whitespace, for
-         better or worse).  Fixes problem with string variables not matching
-         in `set' command if values happen to have trailing spaces or tabs
-         (debian bash bug #602762), but introduces slight incompatibility.
-
-                                  5/29
-                                  ----
-doc/{bash.1,bashref.texi}
-       - clarify unset description to specify that without options, a
-         variable, then a shell function if there is no variable by that
-         name, is unset.  Fixes discrepancy reported by Mu Qiao
-         <qiaomuf@gentoo.org>
-
-                                  6/4
-                                  ----
-doc/{bash.1,bashref.texi}
-       - clarify description of LINES and COLUMNS (and checkwinsize shopt
-         option) to make it clear that only interactive shells set a
-         handler for SIGWINCH and update LINES and COLUMNS.  Original
-         report submitted by Jonathan Nieder <jrnieder@gmail.com>
-
-arrayfunc.c
-       - expand_compound_array_assignment: defer expansion of words between
-         parens when performing compound assignmnt to an associative array
-         variable
-       - assign_compound_array_list: perform the same expansions when doing
-         a compound array assignment to an associative array variable as
-         when doing a straight array index assignment.  The idea is that
-               foo=( [ind1]=bar [ind2]=quux)
-         is the same as
-               foo[ind1]=bar ; foo[ind2]=quux
-
-         This fixes problems with double-expansion and quote removal being
-         performed on the array indices
-
-                                  6/13
-                                  ----
-doc/{bash.1,bashref.texi}
-       - Add a little text to make it clear that the locale determines how
-         range expressions in glob patterns are handled.
-
-
-                                  6/21
-                                  ----
-builtins/read.def
-       - display a message and return error status if -a is used with an
-         existing associative array.  Fixes bug reported by Curtis Doty
-         <curtis@greenkey.net>
-
-                                  6/24
-                                  ----
-{jobs,nojobs}.c
-       - non-interactive shells now react to the setting of checkwinsize
-         and set LINES and COLUMNS after a foreground job exits.  From a
-         suggestion by Leslie Rhorer <lrhorer@satx.rr.com>
-
-doc/{bash.1,bashref.texi}
-       - checkwinsize: remove language saying that only interactive shells
-         check the window size after each command
-
-lib/readline/histfile.c
-       - history_backupfile: new file, creates a backup history file name
-         given a filename (appending `-')
-       - history_do_write: when overwriting the history file, back it up
-         before writing.  Restore backup file on a write error.  Suggested
-         by chkno@chkno.net
-
-bashline.c
-       - find_cmd_name: two new arguments, return the start and end of the
-         actual text string used to find the command name, without taking
-         whitespace into account
-       - attempt_shell_completion: small changes to make sure that completion
-         attempted at the beginning of a non-empty line does not find a
-         programmable completion, even if the command name starts at point
-       - attempt_shell_completion: small change to make sure that completion
-         does not find a progcomp when in whitespace before the command
-         name
-       - attempt_shell_completion: small change to make sure that completion
-         does not find a progcomp when point is at the first character of a
-         command name, even when there is leading whitespace (similar to
-         above).  Fixes problems noted by Ville Skytta <ville.skytta@iki.fi>
-
-subst.c
-       - brace_expand_word_list: since the individual strings in the strvec
-         returned by brace_expand are already allocated, don't copy them to
-         newly-allocated memory when building the WORD_LIST, just use them
-         intact
-
-locale.c
-       - locale_mb_cur_max: cache value of MB_CUR_MAX when we set or change
-         the locale to avoid a function call every time we need to read it
-
-shell.h
-       - new struct to save shell_input_line and associated variables:
-         shell_input_line_state_t
-       - add members of sh_parser_state_t to save and restore token and the
-         size of the token buffer
-
-parse.y
-       - {save,restore}_input_line_state: new functions to save and restore
-         shell_input_line and associated variables
-       - {save,restore}_parser_state: add code to save and restore the token
-         and token buffer size
-       - xparse_dolparen: call save_ and restore_input_line_state to avoid
-         problems with overwriting shell_input_line when we recursively
-         call the parser to parse a command substitution.  Fixes bug
-         reported by Rui Santos <rsantos@grupopie.com>
-
-include/shmbutil.h
-       - use locale_mb_cur_max instead of MB_CUR_MAX in ADVANCE_CHAR and
-         similar macros
-
-lib/glob/smatch.c
-       - rangecmp,rangecmp_wc: change to take an additional argument, which
-         forces the use of strcoll/wscoll when non-zero.  If it's 0, a new
-         variable `glob_asciirange' controls whether or not we use strcoll/
-         wscoll.  If glob_asciirange is non-zero, we use straight
-         C-locale-like ordering. Suggested by  Aharon Robbins
-         <arnold@skeeve.com>
-
-                                  6/30
-                                  ----
-execute_cmd.c
-       - execute_pipeline: make sure the lastpipe code is protected by
-         #ifdef JOB_CONTROL.  Fixes problem reported by Thomas Cort
-         <tcort@minix3.org>
-
-                                   7/2
-                                   ---
-lib/readline/complete.c
-       - EXPERIMENTAL: remove setting of _rl_interrupt_immediately around
-         completion functions that touch the file system.  Idea from Jan
-         Kratochvil <jan.ktratochvil@redhat.com> and the GDB development
-         team
-
-lib/readline/signals.c
-       - rl_signal_handler: if we're in callback mode, don't interrupt
-         immediately on a SIGWINCH
-
-                                   7/3
-                                   ---
-bashline.c
-       - set_directory_hook: and its siblings are a new set of functions to
-         set, save, and restore the appropriate directory completion hook
-       - change callers to use {set,save,restore}_directory_hook instead of
-         manipulating rl_directory_rewrite_hook directly
-       - dircomplete_expand: new variable, defaults to 0, if non-zero causes
-         directory names to be word-expanded during word and filename
-         completion
-       - change {set,save,restore}_directory_hook to look at dircomplete_expand
-         and change rl_directory_completion_hook or rl_directory_rewrite_hook
-         appropriately
-
-bashline.h
-       - extern declaration for set_directory_hook so shopt code can use it
-
-                                   7/6
-                                   ---
-builtins/shopt.def
-       - globasciiranges: new settable shopt option, makes glob ranges act
-         as if in the C locale (so b no longer comes between A and B).
-         Suggested by Aharon Robbins <arnold@skeeve.com>
-
-                                   7/7
-                                   ---
-doc/{bash.1,bashref.texi}
-       - document new `globasciiranges' shopt option
-
-                                   7/8
-                                   ---
-builtins/shopt.def
-       - direxpand: new settable option, makes filename completion expand
-         variables in directory names like bash-4.1 did.
-       - shopt_set_complete_direxpand: new function, does the work for the
-         above by calling set_directory_hook
-
-doc/{bash.1,bashref.texi}
-       - document new `direxpand' shopt option
-
-                                  7/15
-                                  ----
-lib/readline/isearch.c
-       - _rl_isearch_dispatch: when adding character to search string, use
-         cxt->lastc (which we use in the switch statement) instead of c,
-         since lastc can be modified earlier in the function
-
-                                  7/18
-                                  ----
-lib/readline/rlprivate.h
-       - _rl_search_context: add another member to save previous value of
-         (multibyte) lastc: pmb is to mb as prevc is to lastc
-
-lib/readline/isearch.c:
-       - _rl_isearch_dispatch: if a key sequence indexes into a new keymap,
-         but doesn't find any bound function (k[ind].function == 0) or is
-         bound to self-insert (k[ind].function == rl_insert), back up and
-         insert the previous character (the one that caused the index into a
-         new keymap) and arrange things so the current character is the next
-         one read, so both of them end up in the search string.  Fixes bug
-         reported by Clark Wang <dearvoid@gmail.com>
-       - _rl_isearch_dispatch: a couple of efficiency improvements when adding
-         characters to the isearch string
-
-                                  7/24
-                                  ----
-lib/readline/isearch.c
-       - _rl_isearch_dispatch: save and restore cxt->mb and cxt->pmb
-         appropriately when in a multibyte locale
-
-doc/{bash.1,bashref.texi}
-       - correct description of {x}>file (and other redirection operators
-         that allocate a file descriptor) to note the the fd range is
-         greater than or equal to 10.  Fixes problem reported by
-         Christian Ullrich 
-
-lib/readline/signals.c
-       - rl_signal_handler: don't interrupt immediately if in callback mode
-
-lib/readline/callback.c
-       - rl_callback_read_char: install signal handlers only when readline
-         has control in callback mode, so readline's signal handlers aren't
-         called when the application is active (e.g., between the calls to
-         rl_callback_handler_install and rl_callback_read_char).  If the
-         readline signal handlers only set a flag, which the application
-         doesn't know about, the signals will effectively be ignored until
-         the next time the application calls into the readline callback
-         interface.  Fixes problem of calling unsafe functions from signal
-         handlers when in callback mode reported by Jan Kratochvil
-         <jan.kratochvil@redhat.com>
-
-execute_cmd.c
-       - fix_assignment_words: when in Posix mode, the `command' builtin
-         doesn't change whether or not the command name it protects is an
-         assignment builtin.  One or more instances of `command'
-         preceding `export', for instance, doesn't make `export' treat its
-         assignment statement arguments differently.  Posix interpretation
-         #351
-
-doc/{bash.1,bashref.texi}
-       - document new Posix-mode behavior of `command' when preceding builtins
-         that take assignment statements as arguments
-
-builtins/printf.def
-       - printstr: if fieldwidth or precision are < 0 or > INT_MAX when
-         supplied explicitly (since we take care of the `-' separately),
-         clamp at INT_MAX like when using getint().  Fixes issue reported
-         by Ralph Coredroy <ralph@inputplus.co.uk>
-
-                                  7/25
-                                  ----
-lib/readline/chardefs.h
-       - isxdigit: don't define if compiling with c++; declared as a c++
-         template function.  Fixes bug reported by Miroslav Lichvar
-         <mlichvar@redhat.com>
-
-builtins/printf.def
-       - getint: if garglist == 0, return whatever getintmax returns (0).
-         Fixes bug reported  by Ralph Coredroy <ralph@inputplus.co.uk>
-
-                                  7/28
-                                  ----
-doc/{bash.1,bashref.texi}
-       - minor changes to the descriptions of the cd and pushd builtins
-
-lib/sh/zread.c
-       - zsyncfd: change variable holding return value from lseek to
-         off_t.  Bug report and fix from Gregory Margo <gmargo@pacbell.net>
-
-                                   8/1
-                                   ---
-expr.c
-       - don't check for division by 0 when in a context where no evaluation
-         is taking place.  Fixes bug reported by dnade.ext@orange-ftgroup.com
-
-                                   8/6
-                                   ---
-execute_cmd.c
-       - execute_command_internal: the parent branch of the subshell code
-         (where the child calls execute_in_subshell) should not close all
-         open FIFOs with unlink_fifo_list if it's part of a shell function
-         that's still executing.  Fixes bug reported by Maarten Billemont
-         <lhunath@lyndir.com>
-
-                                   8/9
-                                   ---
-builtins/common.c
-       - get_exitstat: return EX_BADUSAGE (2) on a non-numeric argument
-
-builtins/return.def
-       - return_builtin: just call get_exitstat to get the return status,
-         let it handle proper parsing and handling of arguments.  Fixes
-         issue most recently raised by Linda Walsh <bash@tlinx.org>.
-         Reverses change from 9/11/2008 (see above)
-
-                                  8/16
-                                  ----
-doc/{bash.1,bashref.texi}
-       - clean up `set -e' language to make it clearer that any failure of
-         a compound command will cause the shell to exit, not just subshells
-         and brace commands
-
-                                  8/17
-                                  ----
-configure.in
-       - make the various XXX_FOR_BUILD variables `precious' to autoconf to
-         avoid stale data
-       - change how CC_FOR_BUILD is initialized when cross-compiling and not,
-         but do not change behavior
-       - initialize CFLAGS_FOR_BUILD to -g when cross-compiling
-       - initialize LIBS_FOR_BUILD to $(LIBS) when not cross-compiling, empty
-         when cross-compiling
-       - create AUTO_CFLAGS variable to hold basic CFLAGS defaults; used when
-         CFLAGS not inherited from environment (like effect of old
-         auto_cflags variable)
-       - substitute LIBS_FOR_BUILD into output Makefiles
-         [changes inspired by bug report from Nathan Phillip Brink
-         <ohnobinki@ohnopublishing.net> -- gentoo bug 378941]
-
-builtins/Makefile.in   
-       - substitute LIBS_FOR_BUILD from configure, not strictly initialized
-         to $(LIBS)
-
-                                  8/27
-                                  ----
-doc/{bash.1,bashref.texi}
-       - minor changes to the here string description to clarify the
-         expansions performed on the word
-
-support/shobj-conf
-       - handle compilation on Lion (Mac OS X 10.7/darwin11) with changes
-         to darwin stanzas.  Fixes readline bug reported by Vincent
-         Sheffer <vince.sheffer@apisphere.com>
-
-lib/sh/strtrans.c
-       - ansic_wshouldquote: check a string with multi-byte characters for
-         characters that needs to be backslash-octal escaped for $'...'
-       - ansic_shouldquote: if is_basic fails for one character, let
-         ansic_wshouldquote examine the rest of the string and return what
-         it returns.  From a patch sent by Roman Rakus <rrakus@redhat.com>
-
-                                  8/30
-                                  ----
-lib/sh/strtrans.c
-       - ansic_quote: changes to quote (or not) multibyte characters.  New
-         code converts them to wide characters and uses iswprint to check
-         valid wide chars.  From a patch sent by Roman Rakus
-         <rrakus@redhat.com>
-
-                                   9/7
-                                   ---
-lib/sh/shquote.c
-       - sh_backslash_quote: change to be table-driven so we can use a
-         different table if we want to
-       - sh_backslash_quote: takes a second char table[256] argument;
-
-externs.h
-       - sh_backslash_quote: add second argument to function prototype
-
-bashline.c,braces.c,parse.y,builtins/printf.def
-       - change callers of sh_backslash_quote to add second argument
-
-bashline.c
-       - filename_bstab: table of characters to pass to sh_backslash_quote;
-         characters with value 1 will be backslash-quoted
-       - set_filename_bstab: turn on characters in filename backslash-quote
-         table according to passed string argument
-       - call set_filename_bstab every time rl_filename_quote_characters is
-         assigned a value
-       - bash_quote_filename: call sh_backslash_quote with filename_bstab
-         as second argument.  This allows other characters in filenames to
-         be quoted without quoting, for instance, a dollar sign in a shell
-         variable reference
-
-                                   9/8
-                                   ---
-bashline.c
-       - complete_fullquote: new variable, controls table passed to
-         sh_backslash_quote.  If non-zero (the default), the standard set
-         of shell metacharacters -- as in bash versions up to and including
-         bash-4.2 -- gets backslash-quoted by the completion code.  If zero,
-         sh_backslash_quote gets the table with the characters in the
-         variable reference removed, which means they are removed from the
-         set of characters to be quoted in filenames
-
-                                  9/10
-                                  ----
-bashline.c
-       - bash_filename_stat_hook: new function, designed to expand variable
-         references in filenames before readline passes them to stat(2)
-         to determine whether or not they are a directory
-
-                                  9/15
-                                  ----
-builtins/declare.def
-       - if assign_array_element fails due to a bad (or empty) subscript, mark
-         it as an assignment error and don't attempt any further processing
-         of that declaration.  Fixes segfault bug reported by Diego Augusto
-         Molina <diegoaugustomolina@gmail.com>
-
-                                  9/19
-                                  ----
-expr.c
-       - exppower: replace the simple exponentiation algorithm with an
-         implementation of exponentiation by squaring.  Inspired by report
-         from Nicolas ARGYROU <nargy@yahoo.com>
-
-bashline.c
-       - bash_quote_filename: check for rtext being non-null before
-         dereferencing it
-       - set_saved_history: operate_and_get_next assumes that the previous
-         line was added to the history, even when the history is stifled and
-         at the max number of entries.  If it wasn't, make sure the history
-         number is incremented properly.  Partial fix for bug reported by
-         gregrwm <backuppc-users@whitleymott.net>
-
-doc/{bash.1,bashref.texi},lib/readline/doc/{hsuser,rluser}.texi
-       - minor editorial changes inspired by suggestions from
-         Roger Zauner <rogerx.oss@gmail.com>
-
-                                  9/20
-                                  ----
-lib/intl/localealias.c
-       - read_alias_file: close resource leak (fp) when returning on error
-
-                                  9/22
-                                  ----
-execute_command.c
-       - execute_intern_function: implement Posix interpretation 383 by making
-         it an error to define a function with the same name as a special
-         builtin when in Posix mode.
-         http://austingroupbugs.net/view.php?id=383#c692
-
-                                  9/25
-                                  ----
-doc/{bash.1,bashref.texi}
-       - formatting and some content changes from Benno Schulenberg
-         <bensberg@justemail.net>
-       - document new posix-mode behavior from interp 383 change of 9/22
-
-                                  9/30
-                                  ----
-execute_cmd.c
-       - shell_execve: add strerror to error message about executable file
-         that shell can't execute as a shell script.  From suggestion by
-         daysleeper <daysleeper@centrum.cz>
-
-                                  10/1
-                                  ----
-bashhist.c
-       - maybe_add_history: act as if literal_history is set when parser_state
-         includes PST_HEREDOC, so we save the bodies of here-documents just
-         as they were entered.  Fixes bug reported by Jonathan Wakely
-         <bugs@kayari.org>
-       - bash_add_history: make sure that the second and subsequent lines of
-         a here document don't have extra newlines or other delimiting
-         chars added, since they have the trailing newline preserved, when
-         `lithist' is set and history_delimiting_chars isn't called
-
-execute_cmd.c
-       - execute_command_internal: avoid fd exhaustion caused by using
-         process substitution in loops inside shell functions by using
-         copy_fifo_list and close_new_fifos ().  Fixes debian bash bug
-         642504
-
-lib/readline/complete.c
-       - new variable, rl_filename_stat_hook, used by append_to_match.  If
-         filename completion is desired, and rl_filename_stat_hook points
-         to a function, call that function to expand the filename in an
-         application-specific way before calling stat.
-
-bashline.c
-       - bash_default_completion: if variable completion returns a single
-         match, use bash_filename_stat_hook and file_isdir to determine
-         whether or not the variable name expands to a directory.  If it
-         does, set the filename_append_character to `/'.  This is not
-         perfect, so we will see how it works out.  Adds functionality
-         requested by Peter Toft <pto@linuxbog.dk> and Patrick Pfeifer
-         <patrick@pfeifer.de>
-       - rl_filename_stat_hook: assigned bash_filename_stat_hook, so things
-         like $HOME/Downloads (after completion) have a slash appended.
-         In general, this causes the stat hook to be called whenever
-         filename completion is appended.  Adds functionality requested by
-         Patrick Pfeifer <patrick@pfeifer.de>
-
-lib/readline/readline.h
-       - new extern declaration for rl_filename_stat_hook
-
-lib/readline/doc/rltech.texi
-       - rl_directory_rewrite_hook: now documented
-       - rl_filename_stat_hook: document
-
-pcomplete.c
-       - gen_action_completions: in the CA_DIRECTORY case, turn off
-         rl_filename_completion_desired if it was off before we called
-         rl_filename_completion_function and we didn't get any matches.
-         Having it on causes readline to quote the matches as if they
-         were filenames.  Adds functionality requested by many,
-         including Clark Wang <dearvoid@gmail.com>
-
-assoc.[ch]
-       - assoc_replace: new function, takes the same arguments as
-         assoc_insert, but returns the old data instead of freeing it
-       - assoc_insert: if the object returned by hash_insert doesn't have
-         the same value for its key as the key passed as an argument, we
-         are overwriting an existing value.  In this case, we can free the
-         key.  Fixes bug reported by David Parks <davidparks21@yahoo.com>
-
-                                  10/5
-                                  ----
-print_cmd.c
-       - indirection_level_string: small change to only re-enable `x'
-         option after calling decode_prompt_string if it was on before.  In
-         normal mode, it will be, but John Reiser <jreiser@bitwagon.com>
-         has a novel use for that code in conjunction with a pre-loaded
-         shared library that traces system call usage in shell scripts
-
-                                  10/10
-                                  -----
-Makefile.in
-       - Fix from Mike Frysinger <vapier@gentoo.org> to avoid trying to
-         build y.tab.c and y.tab.h with two separate runs of yacc if
-         parse.y changes.  Problem with parallel makes
-       - Fix from Mike Frysinger <vapier@gentoo.org> to avoid subdirectory
-         builds each trying to make version.h (and all its dependencies)
-
-lib/sh/Makefile.in
-       - remove some dependencies on version.h where it doesn't make sense
-
-variables.c
-       - initialize_shell_variables: while reading the environment, a shell
-         running in posix mode now checks for SHELLOPTS being readonly (it
-         gets set early on in main()) before trying to assign to it.  It
-         saves an error message and the variable gets parsed as it should.
-         Fixes bug reported by Len Giambrone <Len.Giambrone@intersystems.com>
-
-                                  10/14
-                                  -----
-doc/{bash.1,bashref.texi}
-       - add to the "duplicating file descriptors" description that >&word
-         doesn't redirect stdout and stderr if word expands to `-'
-       - add to the "appending standard output and standard error"
-         description a note that >&word, where word is a number or `-',
-         causes other redirection operators to apply for sh and Posix
-         compatibility reasons.  Suggested by Greg Wooledge
-         <wooledg@eeg.ccf.org>
-
-                                  10/15
-                                  -----
-pcomplete.c
-       - change pcomp_filename_completion_function to only run the filename
-         dequoting function in the cases (as best as it can figure) where
-         readline won't do it via rl_filename_completion_function.  Based
-         on reports from <lolilolicon@gmail.com>
-
-                                  10/19
-                                  -----
-bashline.c
-       - attempt_shell_completion: add call to set_directory_hook() to make
-         sure the rewrite functions are correct.  It's cheap and doesn't
-         hurt
-       - command_word_completion_function: if completing a command name that
-         starts with `.' or `..', temporarily suppress the effects of the
-         `direxpand' option and restore the correct value after calling
-         rl_filename_completion_function.  If it's enabled, the directory
-         name will be rewritten and no longer match `./' or `../'.  Fixes
-         problem reported by Michael Kalisz <michael@kalisz.homelinux.net>
-
-                                  10/22
-                                  -----
-builtins/history.def
-       - push_history: make sure remember_on_history is enabled before we
-         try to delete the last history entry -- the `history -s' command
-         might not have been saved.  Fixes bug reported by
-         lester@vmw-les.eng.vmware.com
-
-lib/readline/complete.c
-       - rl_callback_read_char: add calls to a macro CALLBACK_READ_RETURN
-         instead of straight return; add same call at end of function.
-         Placeholder for future work in deinstalling signal handlers when
-         readline is not active
-
-                                  10/25
-                                  -----
-expr.c
-       - exp2: catch arithmetic overflow when val1 == INTMAX_MIN and val2 == -1
-         for DIV and MOD and avoid SIGFPE.  Bug report and pointer to fix
-         from Jaak Ristioja <jaak.ristioja@cyber.ee>
-       - expassign: same changes for arithmetic overflow for DIV and MOD
-
-                                  10/28
-                                  -----
-subst.c
-       - parameter_brace_expand: allow pattern substitution when there is an
-         expansion of the form ${var/} as a no-op: replacing nothing with
-         nothing
-       - parameter_brace_patsub: don't need to check for PATSUB being NULL;
-         it never is
-
-flags.c
-       - if STRICT_POSIX is defined, initialize history_expansion to 0, since
-         history expansion (and its treatment of ! within double quotes) is
-         not a conforming posix environment.  From austin-group issue 500
-
-lib/readline/histexpand.c
-       - history_expand: when processing a string within double quotes
-         (DQUOTE == 1), make the closing double quote inhibit history
-         expansion, as if the word were outside double quotes.  In effect,
-         we assume that the double quote is followed by a character in
-         history_no_expand_chars.  tcsh and csh seem to do this.  This
-         answers a persistent complaint about history expansion
-
-                                  10/29
-                                  -----
-make_cmd.c
-       - make_arith_for_command: use skip_to_delim to find the next `;'
-         when breaking the string between the double parens into three
-         separate components instead of a simple character loop.  Fixes
-         bug reported by Dan Douglas <ormaaj@gmail.com>
-
-                                  11/2
-                                  ----
-Makefile.in
-       - make libbuiltins.a depend on builtext.h to serialize its creation
-         and avoid conflict between multiple invocations of mkbuiltins.
-         Fix from Mike Frysinger <vapier@gentoo.org>
-
-                                  11/5
-                                  ----
-findcmd.c
-       - user_command_matches: if stat(".", ...) returns -1, set st_dev
-         and st_ino fields in dotinfo to 0 to avoid same_file matches
-       - find_user_command_in_path: check stat(2) return the same way
-
-lib/glob/glob.c
-       - glob_vector: don't call strlen(pat) without checking pat == 0
-       - glob_dir_to_array: make sure to free `result' and all allocated
-         members before returning error due to malloc failure
-       - glob_vector: make sure to free `nextname' and `npat' on errors
-         (mostly when setting lose = 1)
-       - glob_vector: if flags & GX_MATCHDIRS but not GX_ALLDIRS, make
-         sure we free `subdir'
-       - glob_filename: when expanding ** (GX_ALLDIRS), make sure we
-         free temp_results (return value from glob_vector)
-
-lib/glob/xmbsrtowcs.c
-       - xdupmbstowcs: fix call to realloc to use sizeof (char *) instead
-         of sizeof (char **) when assigning idxtmp
-
-execute_cmd.c
-       - print_index_and_element: return 0 right away if L == 0
-       - is_dirname: fix memory leak by freeing `temp'
-       - time_command: don't try to deref NULL `command' when assigning
-         to `posix_time'
-       - shell_execve: null-terminate `sample' after READ_SAMPLE_BUF so it's
-         terminated for functions that expect that
-
-builtins/read.def
-       - read_builtin: don't call bind_read_variable with a potentially-null
-         string
-
-pcomplete.c
-       - gen_command_matches: don't call dispose_word_desc with a NULL arg
-       - gen_compspec_completions: fix memory leak by freeing `ret' before
-         calling gen_action_completions (tcs, ...).  happens when
-         performing directory completion as default and no completions
-         have been generated
-       - gen_progcomp_completions: make sure to set foundp to 0 whenever
-         returning NULL
-       - it_init_aliases: fix memory leak by freeing alias_list before
-         returning
-
-bashline.c
-       - command_word_completion_function: don't call restore_tilde with a
-         NULL directory_part argument
-       - bash_directory_expansion: bugfix: don't throw away results of
-         rl_directory_rewrite_hook if it's set and returns non-zero
-       - bind_keyseq_to_unix_command: free `kseq' before returning error
-
-arrayfunc.c
-       - assign_array_element_internal: make sure `akey' is freed if non-null
-         before returning error
-       - assign_compound_array_list: free `akey' before returning error
-       - array_value_internal: free `akey' before returning error
-       - unbind_array_element: free `akey' before returning error
-
-subst.c
-       - array_length_reference: free `akey' before returning error in case
-         of expand_assignment_string_to_string error
-       - array_length_reference: free `akey' after call to assoc_reference
-       - skip_to_delim: if skipping process and command substitution, free
-         return value from extract_process_subst
-       - parameter_brace_substring: free `val' (vtype == VT_VARIABLE) before
-         returning if verify_substring_values fails
-       - parameter_brace_expand: remove two duplicate lines that allocate
-         ret in parameter_brace_substring case
-       - parameter_brace_expand: convert `free (name); name = xmalloc (...)'
-         to use `xrealloc (name, ...)'
-       - parameter_brace_expand: free `name' before returning when handling
-         ${!PREFIX*} expansion
-       - split_at_delims: fix memory leak by freeing `d2' before returning
-
-redir.c
-       - redirection_error: free `filename' if the redirection operator is
-         REDIR_VARASSIGN by assigning allocname
-
-eval.c
-       - send_pwd_to_eterm: fix memory leak by freeing value returned by
-         get_working_directory()
-
-builtins/cd.def
-       - change_to_directory: fix memory leak by freeing return value from
-         resetpwd()
-       - cd_builtin: fix memory leak by freeing value returned by dirspell()
-       - cd_builtin: fix memory leak by freeing `directory' if appropriate
-         before overwriting with return value from resetpwd()
-
-builtins/type.def
-       - describe_command: free `full_path' before overwriting it with return
-         value from sh_makepath
-
-builtins/complete.def
-       - compgen_builtin: fix memory leak by calling strlist_dispose (sl)
-         before overwriting sl with return value from completions_to_stringlist
-
-builtins/hash.def
-       - list_hashed_filename_targets: fix memory leak by freeing `target'
-
-make_cmd.c
-       - make_arith_for_command: free `init', `test', and `step' before
-         returning error on parse error
-
-jobs.c
-       - initialize_job_control: don't call move_to_high_fd if shell_tty == -1
-
-general.c
-       - check_dev_tty: don't call close with an fd < 0
-       - legal_number: deal with NULL `string' argument, return invalid
-
-lib/sh/fmtulong.c
-       - fmtulong: if the `base' argument is invalid, make sure we index
-         buf by `len-1' at maximum
-
-print_cmd.c
-       - print_deferred_heredocs: don't try to dereference a NULL `cstring'
-       - cprintf: make sure to call va_end (args)
-
-variables.c
-       - push_dollar_vars: fix call to xrealloc to use sizeof (WORD_LIST *)
-         instead of sizeof (WORD_LIST **)
-
-lib/sh/zmapfd.c
-       - zmapfd: if read returns error, free result and return -1 immediately
-         instead of trying to reallocate it
-
-                                  11/6
-                                  ----
-execute_cmd.c
-       - cpl_reap: rewrote to avoid using pointer after freeing it; now builds
-         new coproc list on the fly while traversing the old one and sets the
-         right values for coproc_list when done
-
-                                  11/12
-                                  -----
-builtins/set.def
-       - if neither -f nor -v supplied, don't allow a readonly function to
-         be implicitly unset.  Fixes bug reported by Jens Schmidt
-         <jens.schmidt35@arcor.de>
-
-lib/readline/callback.c
-       - change CALLBACK_READ_RETURN to clear signal handlers before returning
-         from rl_callback_read_char so readline's signal handlers aren't
-         installed when readline doesn't have control.  Idea from Jan
-         Kratochvil <jan.ktratochvil@redhat.com> and the GDB development
-         team
-
-pcomplete.h
-       - COPT_NOQUOTE: new complete/compgen option value
-
-builtins/complete.def
-       - noquote: new complete/compgen option; will be used to disable
-         filename completion quoting
-
-pcomplete.c
-       - pcomp_set_readline_variables: pay attention to COPT_NOQUOTE; turns
-         of rl_filename_quoting_desired if set; turns it on if unset (value
-         is inverted, since default is on)
-
-doc/bash.1,lib/readline/doc/rluser.texi
-       - document new -o noquote option to complete/compgen/compopt
-
-pathexp.c
-       - quote_string_for_globbing: if QGLOB_REGEXP, make sure characters
-         between brackets in an ERE bracket expression are not inappropriately
-         quoted with backslashes.  This is a pretty substantial change,
-         should be stressed when opening bash up for alpha and beta tests.
-         Fixes bug pointed out by Stephane Chazleas
-         <stephane_chazelas@yahoo.fr>
-
-doc/{bash.1,bashref.texi}
-       - document that regexp matches can be inconsistent when quoting
-         characters in bracket expressions, since usual quoting characters
-         lose their meaning within brackets
-       - note that regular expression matching when the pattern is stored
-         in a shell variable which is quoted for expansion causes string
-         matching
-
-redir.h
-       - RX_SAVEFD: new flag value; notes that a redirection denotes an
-         fd used to save another even if it's not >= SHELL_FD_BASE
-
-redir.c
-       - do_redirection_internal: when deciding whether or not to reset the
-         close-on-exec flag on a restored file descriptor, trust the value
-         of redirect->flags & RX_SAVCLEXEC even if the fd is < SHELL_FD_BASE
-         if the RX_SAVEFD flag is set
-       - add_undo_redirect: set the RX_SAVEFD flag if the file descriptor
-         limit is such that the shell can't duplicate to a file descriptor
-         >= 10.  Fixes a limitation that tripped a coreutils test reported
-         by Paul Eggert <eggert@cs.ucla.edu>
-
-                                  11/19
-                                  -----
-doc/{bash.1,bashref.texi},lib/readline/doc/hsuser.texi
-       - make it clear that bash runs HISTFILESIZE=$HISTSIZE after reading
-         the startup files
-       - make it clear that bash runs HISTSIZE=500 after reading the
-         startup files
-       - make it clear that setting HISTSIZE=0 causes commands to not be
-         saved in the history list
-       - make it clear that setting HISTFILESIZE=0 causes the history file
-         to be truncated to zero size
-
-variables.c
-       - sv_histsize: change so setting HISTSIZE to a value less than 0
-         causes the history to be `unstifled'
-       - sv_histsize: change so setting HISTFILESIZE to a value less than 0
-         results in no file truncation
-       - make it clear that numeric values less than 0 for HISTFILESIZE or
-         HISTSIZE inhibit the usual functions
-
-                                  11/23
-                                  -----
-parse.y
-       - save_input_line_state: add missing `return ls' at the end, since the
-         function is supposed to return its argument.  Pointed out by
-         Andreas Schwab <schwab@linux-m68k.org>
-
-builtins/read.def
-       - skip over NUL bytes in input, as most modern shells seem to.  Bug
-         report by Matthew Story <matt@tablethotels.com>
-
-lib/readline/vi_mode.c
-       - rl_vi_replace: set _rl_vi_last_key_before_insert to invoking key
-
-                                  11/25
-                                  -----
-builtins/read.def
-       - read_builtin: if xrealloc returns same pointer as first argument,
-         don't bother with the remove_unwind_protect/add_unwind_protect pair
-       - read_builtin: set a flag (`reading') around calls to zread/zreadc
-         and readline()
-       - sigalrm: change to set flag (`sigalrm_seen') and only longjmp if
-         currently in read(2) (reading != 0)
-       - CHECK_ALRM: new macro, checks sigalrm_seen and longjmps if non-zero,
-         behavior of old SIGALRM catching function
-       - read_builtin: call CHECK_ALRM in appropriate places while reading
-         line of input.  Fixes bug reported by Pierre Gaston
-         <pierre.gaston@gmail.com>
-
-lib/readline/vi_mode.c
-       - rl_vi_replace: initialize characters before printing characters in
-         vi_replace_keymap to their default values in vi_insertion_keymap,
-         since we're supposed to be in insert mode replacing characters
-       - rl_vi_replace: call rl_vi_start_inserting to set last command to
-         `R' for undo
-       - rl_vi_replace: set _rl_vi_last_key_before_insert to `R' for future
-         use by _rl_vi_done_inserting
-       - vi_save_insert_buffer: new function, broke out code that copies text
-         into vi_insert_buffer from _rl_vi_save_insert
-       - _rl_vi_save_replace: new function, saves text modified by
-         rl_vi_replace (using current point and vi_replace_count to figure
-         it out) to vi_replace_buffer
-       - _rl_vi_save_insert: call vi_save_insert_buffer
-       - _rl_vi_done_inserting: if _rl_vi_last_key_before_insert == 'R', call
-         _rl_vi_save_replace to save text modified in replace mode (uses
-         vi_save_insert_buffer)
-       - _rl_vi_replace_insert: new function, replaces the number of chars
-         in vi_insert_buffer after rl_point with contents ov vi_insert_buffer
-       - rl_vi_redo: call _rl_vi_replace_insert if last command == 'R' and
-         there's something in vi_insert_buffer.  Fixes bug with `.' not
-         redoing the most recent `R' command, reported by Geoff Clare
-         <g.clare@opengroup.org> in readline area on savannah
-
-                                  11/26
-                                  -----
-lib/readline/rlprivate.h
-       - RL_SIG_RECEIVED(): evaluate to non-zero if there is a pending signal
-         to be handled
-       - RL_SIGINT_RECEIVED(): evaluate to non-zero if there is a pending
-         SIGINT to be handled
-
-lib/readline/complete.c
-       - remove all mention of _rl_interrupt_immediately
-       - rl_completion_matches: check RL_SIG_RECEIVED after each call to
-         the entry function, call RL_CHECK_SIGNALS if true to handle the
-         signal
-       - rl_completion_matches: if RL_SIG_RECEIVED evaluates to true, free
-         and zero out the match_list this function allocated
-       - rl_completion_matches: if the completion entry function is
-         rl_filename_completion_function, free the contents of match_list,
-         because that function does not keep state and will not free the
-         entries; avoids possible memory leak pointed out by
-         Garrett Cooper <yanegomi@gmail.com>
-       - gen_completion_matches: if RL_SIG_RECEIVED evalutes to true after
-         calling rl_attempted_completion_function, free the returned match
-         list and handle the signal with RL_CHECK_SIGNALS; avoids
-         possible memory leak pointed out by Garrett Cooper
-         <yanegomi@gmail.com>
-       - gen_completion_matches: if RL_SIG_RECEIVED evaluates to true after
-         calling rl_completion_matches, free the returned match list and
-         handle the signal with RL_CHECK_SIGNALS
-
-lib/readline/util.c
-       - rl_settracefp: new utility function to set the tracing FILE *
-
-lib/readline/signals.c
-       - _rl_sigcleanup: pointer to a function that will be called with the
-         signal and a void * argument from _rl_handle_signal
-       - _rl_sigcleanarg: void * that the rest of the code can set to have
-         passed to the signal cleanup function
-       - _rl_handle_signal: if _rl_sigcleanup set, call as
-               (*_rl_sigcleanup) (sig, _rl_sigcleanarg)
-
-lib/readline/rlprivate.h
-       - extern declarations for _rl_sigcleanup and _rl_sigcleanarg
-
-lib/readline/complete.c
-       - _rl_complete_sigcleanup: signal cleanup function for completion code;
-         calls _rl_free_match_list on _rl_sigcleanarg if signal == SIGINT
-       - rl_complete_internal: before calling display_matches if what_to_do
-         == `?', set _rl_sigcleanup to _rl_complete_sigcleanup so the match
-         list gets freed on SIGINT; avoids possible memory leak pointed out
-         by Garrett Cooper <yanegomi@gmail.com>
-       - rl_complete_internal: in default switch case, call _rl_free_match_list
-         before returning to avoid memory leak
-
-doc/bashref.texi
-       - start at a set of examples for the =~ regular expression matching
-         operator, touching on keeping the pattern in a shell variable and
-         quoting portions of the pattern to remove their special meaning
-
-                                  12/1
-                                  ----
-lib/glob/gmisc.c
-       - extglob_pattern: new function, returns 1 if pattern passed as an
-         argument looks like an extended globbing pattern
-
-lib/glob/glob.c
-       - skipname: return 0 immediately if extglob_pattern returns non-zero,
-         let the extended globbing code do the right thing with skipping
-         names beginning with a `.'
-       - mbskipname: return 0 immediately if extglob_pattern returns non-zero,
-         let the extended globbing code do the right thing with skipping
-         names beginning with a `.'.  Fixes bug reported by Yongzhi Pan
-         <panyongzhi@gmail.com>
-
-                                  12/2
-                                  ----
-lib/glob/smatch.c
-       - patscan, patscan_wc: no longer static so other parts of the glob
-         library can use them, renamed to glob_patscan, glob_patscan_wc
-
-lib/glob/glob.c
-       - extern declarations for glob_patscan, glob_patscan_wc
-       - wchkname: new function, does skipname on wchar_t pattern and dname,
-         old body of mbskipname after converting to wide chars
-       - extglob_skipname: new function, checks all subpatterns in an extglob
-         pattern to determine whether or not a filename should be skipped.
-         Calls skipname for each subpattern.  Dname is only skipped if all
-         subpatterns indicate it should be.  Better fix for bug reported by
-         Yongzhi Pan <panyongzhi@gmail.com>
-       - wextglob_skipname: wide-char version of extglob_skipname, calls
-         wchkname instead of calling back into mbskipname for each
-         subpattern to avoid problems with char/wchar_t mismatch
-       - skipname: call extglob_skipname if extglob_pattern returns non-zero
-       - mbskipname: call wextglob_skipname if extglob_pattern returns non-zero
-       - mbskipname: short-circuit immediately if no multibyte chars in
-         pattern or filename
-
-execute_cmd.c
-       - execute_cond_node: added parens to patmatch assignment statement to
-         make intent clearer
-
-                                  12/3
-                                  ----
-configure.in,config.h.in
-       - check for imaxdiv, define HAVE_IMAXDIV if present
-
-expr.c
-       - expassign, exp2: use imaxdiv if available.  Doesn't help with checks
-         for overflow from 10/25
-
-                                  12/6
-                                  ----
-lib/readline/complete.c
-       - compute_lcd_of_matches: if we're ignoring case in the matches, only
-         use what the user typed as the lcd if it matches the first match
-         (after sorting) up to the length of what was typed (if what the
-         user typed is longer than the shortest of the possible matches, use
-         the shortest common length of the matches instead).  If it doesn't
-         match, use the first of the list of matches, as if case were not
-         being ignored.  Fixes bug reported by Clark Wang
-         <dearvoid@gmail.com>
-
-                                  12/7
-                                  ----
-builtins/cd.def
-       - cd_builtin: add code to return error in case cd has more than one
-         non-option argument, conditional on CD_COMPLAINS define (which is
-         not defined anywhere)
-
-doc/{bash.1,bashref.texi}
-       - note that additional arguments to cd following the directory name
-         are ignored.  Suggested by Vaclav Hanzl <hanzl@noel.feld.cvut.cz>
-
-                                  12/10
-                                  -----
-lib/readline/input.c
-       - rl_read_key: don't need to increment key sequence length here; doing
-         it leads to an off-by-one error
-
-lib/readline/macro.c
-       - rl_end_kbd_macro: after off-by-one error with rl_key_sequence_length
-         fixed, can decrement current_macro_index by rl_key_sequence_length
-         (length of key sequence that closes keyboard macro)
-
-lib/readline/readline.c
-       - _rl_dispatch_subseq: fix extra increment of rl_key_sequence_length
-         when ESC maps to a new keymap and we're converting meta characters
-         to ESC+key
-       - _rl_dispatch_subseq: better increment of rl_key_sequence_length
-         before we dispatch to a function in the ISFUNC case (where the
-         second increment above should have happened)
-       - rl_executing_keyseq: the full key sequence that ended up executing
-         a readline command.  Available to the calling application, maintained
-         by _rl_dispatch_subseq, indexed by rl_key_sequence_length
-       - rl_executing_key: the key that was bound to the currently-executing
-         readline command.  Same as the `key' argument to the function
-
-lib/readline/readline.h
-       - rl_executing_keyseq: extern declaration
-       - rl_executing_key: extern declaration
-       - rl_key_sequence_length: declaration moved here from rlprivate.h,
-         now part of public interface
-
-lib/readline/rlprivate.h
-       - new extern declaration for _rl_executing_keyseq_size, buffer size
-         for rl_executing_keyseq
-
-lib/readline/doc/rltech.texi
-       - documented new variables: rl_executing_key, rl_executing_keyseq,
-         rl_key_sequence_length
-
-                                  12/13
-                                  -----
-bashline.c
-       - bash_execute_unix_command: replace ad-hoc code that searches
-         cmd_xmap for correct command with call to rl_function_of_keyseq
-         using rl_executing_keyseq; now supports key sequences longer
-         than two characters.  Fixes bug reported by Michael Kazior
-         <kazikcz@gmail.com>
-
-                                  12/15
-                                  -----
-make_cmd.c
-       - make_function_def: don't null out source_file before calling
-         make_command so it can be used later on when the function definition
-         is executed
-
-execute_cmd.c
-       - execute_intern_function: second argument is now FUNCTION_DEF *
-         instead of COMMAND *
-       - execute_command_internal: call execute_intern_function with the
-         new second argument (the entire FUNCTION_DEF instead of just the
-         command member)
-       - execute_intern_function: if DEBUGGER is defined, call
-         bind_function_def before calling bind_function, just like
-         make_function_def does (might be able to take out the call in
-         make_function_def depending on what the debugger does with it).
-         Fixes bug reported by <dethrophes@motd005>
-
-expr.c
-       - more minor changes to cases of INTMAX_MIN % -1 and INTMAX_MIN / 1;
-         fix typos and logic errors
-
-                                  12/16
-                                  -----
-bashline.c
-       - find_cmd_start: change flags to remove SD_NOSKIPCMD so it skips over
-         command substitutions and doesn't treat them as command separators
-       - attempt_shell_completion: instead of taking first return from
-         find_cmd_name as command name to use for programmable completion,
-         use loop to skip over assignment statements.  Fixes problem reported
-         by Raphael Droz <raphael.droz+floss@gmail.com>
-       - attempt_shell_completion: if we don't find a command name but the
-         command line is non-empty, assume the other words are all assignment
-         statements and flag that point is in a command position so we can
-         do command name completion
-       - attempt_shell_completion: if the word being completed is the first
-         word following a series of assignment statements, and the
-         command line is non-empty, flag that point is in a command position
-         so we can do command name completion
-
-lib/readline/history.c
-       - history_get_time: atol -> strtol
-
-                                  12/18
-                                  -----
-parse.y
-       - parser_in_command_position: external interface to the
-         command_token_position macro for use by other parts of the shell,
-         like the completion mechanism
-
-externs.h
-       - extern declaration for parser_in_command_position
-
-                                  12/19
-                                  -----
-
-builtins/read.def
-       - read_builtin: make sure all calls to bind_read_variable are passed
-         a non-null string.  Fixes bug reported by Dan Douglas
-         <ormaaj@gmail.com>
-
-bashline.c
-       - attempt_shell_completion: mark that we're in a command position if
-         we're at the start of the line and the parser is ready to accept
-         a reserved word or command name.  Feature most recently suggested
-         by Peng Yu <pengyu.ut@gmail.com>
-
-                                  12/21
-                                  -----
-lib/readline/bind.c
-       - _rl_escchar: return the character that would be backslash-escaped
-         to denote the control character passed as an argument ('\n' -> 'n')
-       - _rl_isescape: return 1 if character passed is one that has a
-         backslash escape
-       - _rl_untranslate_macro_value: new second argument: use_escapes, if
-         non-zero translate to backslash escapes where possible instead of
-         using straight \C-x for control character `x'.  Change callers
-       - _rl_untranslate_macro_value: now global
-
-lib/readline/rlprivate.h
-       - _rl_untranslate_macro_value: extern declaration
-
-lib/readline/{macro.c,readline.h}
-       - rl_print_last_kbd_macro: new bindable function, inspired by patch
-         from Mitchel Humpherys
-
-lib/readline/funmap.c
-       - print-last-kbd-macro: new bindable command, bound to
-         rl_print_last_kbd_macro
-
-lib/readline/doc/{rluser.texi,readline.3},doc/bash.1
-       - print-last-kbd-macro: document.
-
-lib/readline/text.c
-       - _rl_insert_next: if we're defining a macro, make sure the key gets
-         added to the macro text (should really audit calls to rl_read_key()
-         and make sure the right thing is happening for all of them)
-
-bashline.[ch]
-       - print_unix_command_map: new function, prints all bound commands in
-         cmd_xmap using rl_macro_dumper in a reusable format
-
-builtins/bind.def
-       - new -X option: print all keysequences bound to Unix commands using
-         print_unix_command_map.  Feature suggested by Dennis Williamson
-         (2/2011)
-
-doc/{bash.1,bashref.texi}
-       - document new `bind -X' option
-
-                                  12/24
-                                  -----
-
-doc/{bash.1,bashref.texi}
-       - add a couple of sentences to the description of the case modification
-         operators making it clearer that each character of parameter is
-         tested against the pattern, and that the pattern should only attempt
-         to match a single character.  Suggested by Bill Gradwohl
-         <bill@ycc.com>
-
-                                  12/28
-                                  -----
-shell.c
-       - init_noninteractive: instead of calling set_job_control(0) to
-         unconditionally turn off job control, turn on job control if
-         forced_interactive or jobs_m_flag is set
-       - shell_initialize: call initialize_job_control with jobs_m_flag as
-         argument so `bash -m script' enables job control while running the
-         script
-
-jobs.c
-       - initialize_job_control: if the `force' argument is non-zero, turn on
-         job control even if the shell is not currently interactive
-         (interactive == 0)
-
-                                  12/29
-                                  -----
-
-flags.h
-       - new extern declaration for jobs_m_flag
-
-builtins/{cd,set}.def,doc/{bash.1,bashref.texi}
-       - added text clarifying the descriptions of cd -L and -P, suggested by
-         Padraig Brady <p@draigbrady.com>
-       - slight change to the description of `set -P' about resolving symbolic
-         links
-
-lib/readline/doc/rluser.texi
-       - Added an example to the programmable completion section: _comp_cd,
-         a completion function for cd, with additional verbiage.  Text
-         includes a reference to the bash_completion project
-
-                                1/1/2012
-                                --------
-jobs.c
-       - set_job_status_and_cleanup: note that a job is stopped due to
-         SIGTSTP (any_tstped) if job_control is set; there's no need to
-         test interactive
-
-                                   1/5
-                                   ---
-quit.h
-       - LASTSIG(): new macro, expands to signal number of last terminating
-         signal received (terminating_signal or SIGINT)
-
-trap.c
-       - first_pending_trap: returns lowest signal number with a trap pending
-       - trapped_signal_received: set to the last trapped signal the shell
-         received in trap_handler(); reset to 0 in run_pending_traps
-
-builtins/read.def
-       - read_builtin: changes to posix-mode (posixly_correct != 0) to make
-         `read' interruptible by a trapped signal.  After the trap runs,
-         read returns 128+sig and does not assign the partially-read line
-         to the named variable(s).  From an austin-group discussion started
-         by David Korn
-
-                                  1/11
-                                  ----
-doc/{bash.1,bashref.texi}
-       - slight changes to the descriptions of the compat32 and compat40 shell
-         options to clarify their meaning
-
-                                  1/12
-                                  ----
-lib/readline/{colors.[ch],parse-colors.[ch]}
-       - new files, part of color infrastructure support
-
-Makefile.in,lib/readline/Makefile.in
-       - arrange to have colors.o and parse-colors.o added to readline
-         library
-
-{configure,config.h}.in
-       - check for stdbool.h, define HAVE_STDBOOL_H if found
-
-                                  1/14
-                                  ----
-lib/readline/bind.c
-       - colored_stats: new bindable variable, enables using colors to
-         indicate file type when listing completions
-
-lib/readline/complete.c
-       - _rl_colored_stats: new variable, controlled by colored-stats bindable
-         variable
-       - colored_stat_start, colored_stat_end: new functions to set and reset
-         the terminal color appropriately depending on the type of the
-         filename to be printed
-       - print_filename: changes to print colors if `colored-stats' variable
-         set.  Changes contributed by Raphael Droz
-         <raphael.droz+floss@gmail.com>
-
-lib/readline/readline.c
-       - rl_initialize_everything: add call to _rl_parse_colors to parse
-         color values out of $LS_COLORS.  May have to add to rl_initialize
-         to make more dynamic if LS_COLORS changes (which doesn't happen
-         very often, if at all)
-
-lib/readline/rlprivate.h
-       - _rl_colored_stats: new extern declaration
-
-lib/readline/doc/{readline.3,rluser.texi},doc/bash.1
-       - colored-stats: document new bindable readline variable
-
-lib/readline/colors.c
-       - _rl_print_color_indicator: call rl_filename_stat_hook before calling
-         lstat/stat so we can get color indicators for stuff like
-         $HOME/Applications
-
-lib/readline/complete.c
-       - stat_char: call rl_filename_stat_hook before calling lstat/stat
-
-findcmd.[ch],execute_cmd.c
-       - search_for_command: now takes a second `flags' argument; changed
-         header function prototype and callers
-       - search_for_command: if (flags & 1), put the command found in $PATH
-         into the command hash table (previous default behavior)
-
-execute_cmd.c
-       - is_dirname: call search_for_command with flags argument of 0 so it
-         doesn't try to put something in the command hash table
-
-bashline.c
-       - bash_command_name_stat_hook: a hook function for readline's
-         filename_stat_hook that does $PATH searching the same way that
-         execute_cmd.c:execute_disk_command() does it, and rewrites the
-         passed filename if found.  Does not put names into command hash
-         table.  This allows command name completion to take advantage
-         of `visible-stats' and `colored-stats' settings.
-       - executable_completion: new function, calls the directory completion
-         hook to expand the filename before calling executable_file or
-         executable_or_directory; change command_word_completion_function to
-         call executable_completion.  This allows $HOME/bin/[TAB] to do
-         command completion and display alternatives
-
-                                  1/17
-                                  ----
-pcomplete.c
-       - gen_command_matches: now takes a new second argument: the command
-         name as deciphered by the programmable completion code and used
-         to look up the compspec; changed callers (gen_compspec_completions)
-       - gen_shell_function_matches: now takes a new second argument: the
-         command that originally caused the completion function to be
-         invoked; changed callers (gen_compspec_completions))
-       - build_arg_list: now takes a new second argument: the command name
-         corresponding to the current compspec; changed callers
-         (gen_command_matches, gen_shell_function_matches)
-       - build_arg_list: now uses `cmd' argument to create $1 passed to
-         invoked command or shell function
-       - gen_compspec_completions: if we skipped a null command at the
-         beginning of the line (e.g., for completing `>'), add a new word for
-         it at the beginning of the word list and increment nw and cw
-         appropriately.  This is all a partial fix for the shortcoming
-         pointed out by Sung Pae <sungpae@gmail.com>
-
-                                  1/18
-                                  ----
-
-{configure,config.h}.in
-       - new check: check for AUDIT_USER_TTY defined in <linux/audit.h>,
-         define HAVE_DECL_AUDIT_USER_TTY if both are found
-
-lib/readline/rlconf.h
-       - ENABLE_TTY_AUDIT_SUPPORT: new define, allows use of the Linux kernel
-         tty auditing system if it's available and enabled
-
-lib/readline/util.c
-       - _rl_audit_tty: new function, send a string to the kernel tty audit
-         system
-
-lib/readline/rlprivate.h
-       - _rl_audit_tty: new extern declaration
-
-lib/readline/readline.c
-       - readline: call _rl_audit_tty with line to be returned before returning
-         it if the Linux tty audit system is available and it's been enabled
-         in rlconf.h  Original patch from Miroslav Trmac; recent request
-         from Miroslav Lichvar <mlichvar@redhat.com>
-
-                                  1/21
-                                  ----
-
-lib/readline/readline.c:
-       - _rl_dispatch_subseq: add an inter-character timeout for multi-char
-         key sequences.  Suggested by <rogerx.oss@gmail.com>.  Still needs
-         work to make a user-settable variable
-
-parse.y
-       - shell_getc: make code that uses the pop_alias dependent on ALIAS
-         define
-
-variables.h
-       - sv_tz: extern define should only depend on HAVE_TZSET
-
-expr.c
-       - expr_streval: if ARRAY_VARS is not defined, set lvalue->ind to -1;
-         move assignment to `ind' inside define
-       - expr_bind_array_element: declaration and uses need to be #ifdef
-         ARRAY_VARS
-
-arrayfunc.h
-       - AV_ALLOWALL, AV_QUOTED, AV_USEIND: define to 0 if ARRAY_VARS not
-         defined; used in subst.c unconditionally
-
-sig.h
-       - make the signal blocking functions not dependent on JOB_CONTROL
-
-sig.c
-       - sigprocmask: make the replacement definition not dependent on
-         JOB_CONTROL
-
-trap.c
-       - use BLOCK_SIGNAL/UNBLOCK_SIGNAL instead of code dependent on
-         HAVE_POSIX_SIGNALS and BSD signals
-
-                                  1/24
-                                  ----
-
-print_cmd.c
-       - print_redirection_list: change the conditions under which
-         r_duplicating_output_word is mapped to r_err_and_out to more or
-         less match those used in redir.c.  Fixes bug pointed out by
-         Dan Douglas <ormaaj@gmail.com>
-
-
-                                  1/29
-                                  ----
-lib/readline/signals.c
-       - _rl_block_sigwinch,_rl_release_sigwinch: don't compile in bodies
-         unless SIGWINCH is defined.  Fixes bug reported by Pierre Muller
-         <pierre.muller@ics-cnrs.unistra.fr>
-
-doc/{bash.1,bashref.texi}
-       - small modifications to the introduction to the REDIRECTION section
-         to describe how redirections can modify file handles
-       - small modification to the section describing base#n to make it
-         clearer that n can be denoted using non-numerics.  From a posting
-         by Linda Walsh <bash@tlinx.org>
-
-                                   2/2
-                                   ---
-builtins/printf.def
-       - printf_builtin: make sure vbuf is intialized and non-null when -v
-         is supplied, since other parts of the code assume that it's not
-         null (e.g., bind_printf_variable()).  Fixes bug reported by Jim
-         Avera <james_avera@yahoo.com>
-
-                                   2/4
-                                   ---
-lib/readline/undo.c
-       - _rl_free_undo_list: new function, old body of rl_free_undo_list,
-         frees undo entries in UNDO_LIST * passed as argument
-       - rl_free_undo_list: call _rl_free_undo_list
-
-lib/readline/rlprivate.h
-       - _rl_free_undo_list: new extern declaration
-       - _rl_keyseq_timeout: new extern declaration (see below)
-
-lib/readline/misc.c
-       - rl_clear_history: new function.  Clears the history list and frees
-         all associated data similar to history.c:clear_history(), but
-         takes rl_undo_list into account and frees and UNDO_LISTs saved as
-         `data' members of a history list entry
-
-lib/readline/doc/rltech.texi
-       - rl_clear_history: documented
-
-lib/readline/readline.c
-       - _rl_keyseq_timeout: new variable to hold intra-key timeout value
-         from 1/21 fix; specified in milliseconds.  Default value is 500
-       - _rl_dispatch_subseq: change to use _rl_keyseq_timeout as intra-key
-         timeout if it's greater than 0; no timeout if <= 0
-       - _rl_dispatch_subseq: don't check for queued keyboard input if we have
-         pushed or pending input, or if we're reading input from a macro
-
-lib/readline/bind.c
-       - keyseq-timeout: new bindable variable, shadows _rl_keyseq_timeout
-       - string_varlist: add keyseq-timeout
-       - sv_seqtimeout: new function to modify value of _rl_keyseq_timeout;
-         clamps negative values at 0 for now
-       - _rl_get_string_variable_value: return value for keyseq-timeout
-
-doc/bash.1,lib/readline/doc/{rluser.texi,readline.3}
-       - keyseq-timeout: documented
-
-lib/readline/isearch.c
-       - _rl_isearch_dispatch: modification to fix from 7/18 to not use
-         cxt->keymap and cxt->okeymap, since by the time this code is
-         executed, they are equal.  Use `f' to check for rl_insert or
-         unbound func
-       - _rl_isearch_dispatch: if we're switching keymaps, not in
-         callback mode, and don't have pending or pushed input, use
-         _rl_input_queued to resolve a potentially ambiguous key sequence.
-         Suggested by Roger Zauner <rogerx.oss@gmail.com>
-       - _rl_isearch_dispatch: if we have changed keymaps and resolved to
-         an editing function (not self-insert), make sure we stuff the
-         right characters back onto the input after changing the keymap
-         back so the right editing function is executed after the search
-         is terminated.  Rest of fix for bug reported by Roger Zauner
-         <rogerx.oss@gmail.com>
-
-                                   2/5
-                                   ---
-builtins/gen-helpfiles.c
-       - new file: reads struct builtin and writes the long docs to files
-         in the `helpdirs' subdirectory.  The filename is given in the
-         previously-unused `handle' member of the struct builtin.  Links
-         with `tmpbuiltins.o', which is created by Makefile to have the
-         right long documentation.  When not cross-compiling, gets the
-         right #defines based on configuration options from config.h instead
-         of trying to parse conditional parts of def files.  Fixes
-         shortcoming pointed out by Andreas Schwab <schwab@linux-m68k.org>
-
-builtins/Makefile.in
-       - tmpbuiltins.c: new generated file, created to enable creation of
-         separate helpfiles based on correct #defines instead of trying to
-         parse conditional parts of def files
-       - gen-helpfiles: new program to generate helpfiles, links with
-         tmpbuiltins.o
-       - HELPFILES_TARGET: new target, substituted by configure to `helpdoc'
-         if separate helpfiles requested
-       - targets: new target, libbuiltins.a and $(HELPFILES_TARGET)
-       - CREATED_OBJECTS: new variable, holds created object files for
-         make clean; changed make clean to remove created objects
-       - helpdoc: changed to call gen-helpfiles instead of mkbuiltins
-
-Makefile.in
-       - when building libbuiltins.a, recursively call make with `targets'
-         argument to make sure separate helpfiles get built
-
-configure.in
-       - substitute `helpdoc' as value of HELPFILES_TARGET if
-         --enable-separate-helpfiles supplied as configure argument
-
-builtins/mkbuiltins.c
-       - `-nofunctions': new argument, causes mkbuiltins to not write value
-         for function implementing a particular builtin to struct builtin
-         and to write document file name to `handle' member of struct builtin
-       - no longer writes separate helpfiles; that is left to gen-helpfiles
-
-                                   2/8
-                                   ---
-subst.c
-       - make sure last_command_exit_value is set to a non-zero value before
-         any calls to report_error, since `-e' set will short-circuit
-         report_error.  Fixes bug reported by Ewan Mellor
-         <Ewan.Mellor@eu.citrix.com>
-
-variables.c
-       - make_local_array_variable: added second argument; if non-zero,
-         function will return an existing local associative array variable
-         instead of insisting on an indexed array
-
-variable.h,subst.c
-       - make_local_array_variable: changed prototype and caller
-
-builtins/declare.def
-       - declare_internal: add second arg to call to make_local_array_variable;
-         making_array_special, which indicates we're processing an
-         assignment like declare a[b]=c.  Fixes seg fault resulting from
-         a being an already-declared local associative array variable in a
-         function.  Ubuntu bash bug 928900.
-
-                                  2/14
-                                  ----
-
-execute_cmd.c
-       - execute_command_internal: if redirections into or out of a loop fail,
-         don't try to free ofifo_list unless saved_fifo is non-zero.  It's
-         only valid if saved_fifo is set
-
-                                  2/15
-                                  ----
-{arrayfunc,braces,variables}.c
-       - last_command_exit_value: make sure it's set before any calls to
-         report_error, since -e will cause that to exit the shell
-
-builtins/common.c
-       - get_job_by_name: call internal_error instead of report_error so this
-         doesn't exit the shell
-
-                                  2/18
-                                  ----
-builtins/evalstring.c
-       - parse_and_execute: make sure the file descriptor to be redirected to
-         is 1 before calling cat_file.  One fix for bug reported by Dan Douglas
-         <ormaaj@gmail.com>
-
-parse.y
-       - read_token_word: don't return NUMBER if a string of all digits
-         resolves to a number that overflows the bounds of an intmax_t.
-         Other fix for bug reported by Dan Douglas <ormaaj@gmail.com>
-
-                                  2/19
-                                  ----
-lib/sh/strtrans.c
-       - ansicstr: use 0x7f as the boundary for characters that translate
-         directly from ASCII to unicode (\u and \U escapes) instead of
-         UCHAR_MAX, since everything >= 0x80 requires more than one byte.
-         Bug and fix from John Kearney <dethrophes@web.de>
-
-builtins/printf.def
-       - tescape: ditto for printf \u and \U escape sequences
-
-                                  2/20
-                                  ----
-lib/sh/unicode.c
-       - u32toutf8: fix to handle encodings up to six bytes long correctly
-         (though technically UTF-8 only has characters up to 4 bytes long).
-         Report and fix from John Kearney <dethrophes@web.de>
-       - u32toutf8: first argument is now an unsigned 32-bit quantity,
-         changed callers (u32cconv) to pass c instead of wc
-       - u32reset: new function, resets local static state to uninitialized
-         (locale information, currently)
-
-locale.c
-       - call u32reset whenever LC_CTYPE/LC_ALL/LANG is changed to reset the
-         cached locale information used by u32cconv.  From a report from
-         John Kearney <dethrophes@web.de>
-
-                                  2/21
-                                  ----
-doc/{bash,builtins}.1
-       - minor changes from Bjarni Ingi Gislason <bjarniig@rhi.hi.is>
-
-lib/sh/unicode.c
-       - u32cconv: only assume you can directly call wctomb on the passed
-         value if __STDC_ISO_10646__ is defined and the value is <=
-         0x7fffffff
-       - stub_charset: return locale as default instead of "ASCII", let
-         rest of code decide what to do with it
-
-lib/readline/parens.c
-       - _rl_enable_paren_matching: make paren matching work in vi insert
-         mode.  Bug report from <derflob@derflob.de>
-
-                                  2/22
-                                  ----
-lib/sh/shquote.c
-       - sh_backslash_quote: quote tilde in places where it would be
-         expanded.  From a report from John Kearney <dethrophes@web.de>
-
-                                  2/23
-                                  ----
-execute_cmd.c
-       - execute_pipeline: wrap the discard_unwind_frame call in #ifdef
-         JOB_CONTROL, since the frame is only created if JOB_CONTROL is
-         defined.  Bug and fix from Doug Kehn <rdkehn@yahoo.com>
-
-                                  2/25
-                                  ----
-error.c
-       - report_error: make sure last_command_exit_value is non-zero before
-         we call exit_shell, since the exit trap may reference it.  Call
-         exit_shell with last_command_exit_value to allow exit statuses
-         other than 1
-
-unicode.c
-       - stub_charset: use local static buffer to hold charset, don't change
-         value returned by get_locale_var.  Based on idea and code from
-         John Kearney <dethrophes@web.de>
-       - u32toutf16: function to convert unsigned 32-bit value (unicode) to
-         UTF-16.  From John Kearney <dethrophes@web.de>
-       - u32cconv: call u32toutf16 if __STDC_ISO_10646__ defined and wchar_t
-         is two bytes, send result to wcstombs, return if not encoding error.
-         From John Kearney <dethrophes@web.de>
-       - u32cconv: return UTF-8 conversion if iconv conversion to local
-         charset is unsupported
-
-                                   3/2
-                                   ---
-lib/readline/complete.c
-       - print_filename: if there is no directory hook, but there is a stat
-         hook, and we want to append a slash to directories, call the stat
-         hook before calling path_isdir on the expanded directory name.
-         Report and pointer to fix from Steve Rago <sar@nec-labs.com>
-
-                                   3/3
-                                   ---
-builtins/evalstring.c
-       - parse_and_execute: fix to change of 2/18: make sure the file
-         descriptor being redirected to is 0 before calling cat_file when
-         we see something like $(< file).  Real fix for bug reported by
-         Dan Douglas <ormaaj@gmail.com>
-
-subst.c
-       - parameter_brace_patsub: run the replacement string through quote
-         removal even if the expansion is within double quotes, because
-         the parser and string extract functions treat the quotes and
-         backslashes as special.  If they're treated as special, quote
-         removal should remove them (this is the Posix position and
-         compatible with ksh93).  THIS IS NOT BACKWARDS COMPATIBLE.
-
-                                   3/4
-                                   ---
-lib/readline/complete.c
-       - rl_menu_complete: fix to make show-all-if-ambiguous and
-         menu-complete-display-prefix work together if both are set.  Fix
-         from Sami Pietila <sami.pietila@gmail.com>
-
-                                   3/5
-                                   ---
-bashline.c
-       - dircomplete_expand_relpath: new variable, if non-zero, means that
-         `shopt -s direxpand' should expand relative pathnames.  Zero by
-         default, not user-settable yet
-       - bash_directory_completion_hook: if we have a relative pathname that
-         isn't changed by canonicalization or spell checking after being
-         appended to $PWD, then don't change what the user typed.  Controlled
-         by dircomplete_expand_relpath
-
-                                   3/7
-                                   ---
-m4/timespec.m4
-       - new macros, cribbed from gnulib and coreutils: find out whether we
-         have `struct timespec' and what file includes it
-
-m4/stat-time.m4
-       - new macros, cribbed from gnulib and coreutils: find out whether the
-         mtime/atime/ctime/etctime fields of struct stat are of type
-         struct timespec, and what the name is
-
-include/stat-time.h
-       - new file, cribbed from gnulib, with additions from coreutils: include
-         the right file to get the struct timespec define, or provide our own
-         replacement.  Provides a bunch of inline functions to turn the
-         appropriate members of struct stat into `struct timespec' values,
-         zeroing out the tv_nsec field if necessary
-
-test.c
-       - include "stat-time.h" for the nanosecond timestamp resolution stuff
-       - stat_mtime: new function, returns struct stat and the mod time
-         normalized into a `struct timespec' for the filename passed as the
-         first argument
-       - filecomp: call stat_mtime instead of sh_stat for each filename
-         argument to get the mtime as a struct timespec
-       - filecomp: call timespec_cmp instead of using a straight arithmetic
-         comparison for the -nt and -ot operators, using timespec returned by
-         stat_mtime.  Added functionality requested by by Werner Fink
-         <werner@suse.de> for systems that can support it
-
-                                  3/10
-                                  ----
-include/posixdir.h
-       - REAL_DIR_ENTRY: remove dependency on _POSIX_SOURCE, only use feature
-         test macros to decide whether dirent.d_ino is present and usable;
-         define D_INO_AVAILABLE.  Report and fix from Fabrizion Gennari
-         <fabrizio.ge@tiscali.it>
-       - D_FILENO_AVAILABLE: define if we can use dirent.d_fileno
-
-lib/sh/getcwd.c
-       - use D_FILENO_AVAILABLE to decide whether or not to compile in
-         _path_checkino and whether or not to call it.  Report and initial
-         fix from Fabrizion Gennari <fabrizio.ge@tiscali.it>
-
-lib/readline/signals.c
-       - make sure all occurrences of SIGWINCH are protected by #ifdef
-
-sig.c
-       - make sure all occurrences of SIGCHLD are protected by #ifdef
-
-nojobs.c
-       - make sure SA_RESTART is defined to 0 if the OS doesn't define it
-
-version.c
-       - show_shell_version: don't use string literals in printf, use %s.
-         Has added benefit of removing newline from string to be translated
-
-trap.c
-       - queue_sigchld_trap: new function, increments the number of pending
-         SIGCHLD signals by the argument, which is by convention the number
-         of children reaped in a call to waitchld()
-
-trap.h
-       - queue_sigchld_trap: new extern declaration
-
-jobs.c
-       - waitchld: if called from the SIGCHLD signal handler (sigchld > 0),
-         then call queue_sigchld_trap to avoid running the trap in a signal
-         handler context.  Report and original fix from Siddhesh Poyarekar
-         <siddhesh@redhat.com>
-
-lib/sh/unicode.c
-       - u32tocesc: take an unsigned 32-bit quantity and encode it using
-         ISO C99 string notation (\u/\U)
-       - u32cconv: call u32tocesc as a fallback instead of u32cchar
-       - u32cconv: call u32tocesc if iconv cannot convert the character.
-         Maybe do the same thing if iconv_open fails
-       - u32reset: call iconv_close on localconv if u32init == 1
-
-                                  3/11
-                                  ----
-config-top.h
-       - CHECKWINSIZE_DEFAULT: new define, set to initial value of
-         check_window_size (shopt checkwinsize): 0 for off, 1 for on.
-         Default is 0
-
-{jobs,nojobs}.c
-       - check_window_size: default initial value to CHECKWINSIZE_DEFAULT
-
-                                  3/13
-                                  ----
-doc/bashref.texi
-       - change text referring to the copying restrictions to that
-         recommended by the FSF (no Front-Cover Texts and no Back-Cover
-         Texts)
-
-lib/readline/doc/{history,rlman,rluserman}.texi
-       - change text referring to the copying restrictions to that
-         recommended by the FSF (no Front-Cover Texts and no Back-Cover
-         Texts)
-
-                                  3/15
-                                  ----
-array.c
-       - LASTREF_START: new macro to set the starting position for an array
-         traversal to `lastref' if that's valid, and to the start of the array
-         if not.  Used in array_reference, array_insert, array_remove
-       - array_remove: try to be a little smarter with lastref instead of
-         unconditionally invalidating it
-
-                                  3/16
-                                  ----
-array.c
-       - array_insert: fix memory leak by deleting element to be added in the
-         case of an error
-
-                                  3/18
-                                  ----
-lib/sh/mbschr.c
-       - mbschr: don't call mbrlen unless is_basic is false; devolves to a
-         straight character-by-character run through the string
-
-                                  3/19
-                                  ----
-stringlib.c
-       - substring: use memcpy instead of strncpy, since we know the length
-         and are going to add our own NUL terminator
-
-                                  3/20
-                                  ----
-subst.c
-       - parameter_brace_expand_rhs: if expand_string_for_rhs returns a quoted
-         null string (a list with one element for which
-         QUOTED_NULL(list->word->word) returns true), return the quoted null
-         and set the flags in the returned word to indicate it.  Fixes bug
-         reported by Mark Edgar <medgar123@gmail.com>
-
-lib/sh/tmpfile.c
-       - use random(3) instead of get_random_number to avoid perturbing the
-         random sequence you get using $RANDOM.  Bug report and fix from
-         Jurij Mihelic <jurij.mihelic@fri.uni-lj.si>
-
-                                  3/21
-                                  ----
-config-top.h
-       - OPTIMIZE_SEQUENTIAL_ARRAY_ASSIGNMENT: define to 1 to optimize
-         sequential indexed array assignment patterns.  Defined to 1 by
-         default
-
-array.c
-       - array_insert: if OPTIMIZE_SEQUENTIAL_ARRAY_ASSIGNMENT is defined,
-         start the search at lastref (see change from 3/15)
-
-                                  3/27
-                                  ----
-print_cmd.c
-       - debug_print_word_list: new debugging function, prints a word list
-         preceded by an optional string and using a caller-specified
-         separator
-
-                                   4/1
-                                   ---
-command.h
-       - W_ASSNGLOBAL: new flag, set to indicate declare -g
-
-execute_cmd.c
-       - fix_assignment_words: note that we have a -g argument to an assignment
-         builtin and set the W_ASSNGLOBAL flag in the variable word
-
-subst.c
-       - dump_word_flags: print out W_ASSNGLOBAL if present
-       - do_assignment_internal: only set ASS_MKLOCAL if W_ASSIGNARG is set
-         and W_ASSNGLOBAL is not.  Don't want to create a local variable even
-         if variable_context is non-zero if ASSNGLOBAL is set.  Fixes bug
-         reported by Bill Gradwohl <bill@ycc.com>
-
-                                   4/7
-                                   ---
-lib/readline/readline.c
-       - _rl_dispatch_subseq: make the `keyseq-timeout' variable apply to
-         ESC processing when in vi mode.  After hitting ESC, readline will
-         wait up to _rl_keyseq_timeout*1000 microseconds (if set) for
-         additional input before dispatching on the ESC and switching to
-         command/movement mode.  Completes timeout work suggested by
-         <rogerx.oss@gmail.com>; this prompted by report from Barry Downes
-         <barry.downes@gmail.com>
-
-lib/sh/shmbchar.c
-       - sh_mbsnlen: new function, returns the number of (possibly multibyte)
-         characters in a passed string with a passed length, examining at most
-         maxlen (third argument) bytes
-
-externs.h
-       - sh_mbsnlen: extern declaration for new function
-
-shell.c
-       - exit_shell: call maybe_save_shell_history if remember_on_history is
-         set, not just in interactive shells.  That means the history is
-         saved if history is enabled, regardless of whether or not the shell
-         is interactive
-
-doc/{bash.1,bashref.texi}
-       - TMOUT: fix description to make it explicit that TMOUT is the timeout
-         period for a complete line of input, not just any input.  Fixes
-         problem reported in Ubuntu bug 957303:
-         https://bugs.launchpad.net/ubuntu/+source/bash/+bug/957303
-       - HISTFILE: document change to write history list to history file in
-         any shell with history enabled, not just interactive shells.  This
-         seems to be more logical behavior.  Suggested by Greg Wooledge
-         <wooledg@eeg.ccf.org>
-
-                                  4/12
-                                  ----
-lib/readline/colors.h
-       - only include stdbool.h if HAVE_STDBOOL_H is defined
-       - if HAVE_STDBOOL_H is not defined, provide enough definition for the
-         library to use `bool', `true', and `false'
-
-lib/readline/parse-colors.[ch]
-       - don't try to include <stdbool.h> at all; rely on colors.h to do it
-
-lib/sh/snprintf.c
-       - vsnprintf_internal: only treat '0' as a flag to indicate zero padding
-         if `.' hasn't been encountered ((flags&PF_DOT) == 0); otherwise treat
-         it as the first digit of a precision specifier.  Fixes bug reported
-         by Petr Sumbera <petr.sumbera@sun.com>
-
-                                  4/15
-                                  ----
-lib/sh/snprintf.c
-       - vsnprintf_internal: if the '0' and '-' flags both occur, the '0'
-         flag is ignored -- Posix.  Start of a series of fixes based on
-         tests and patches from Petr Sumbera <petr.sumbera@sun.com>
-       - PUT_PLUS: make sure PF_PLUS flag is specified before putting the `+'
-       - vsnprintf_internal: when '+' is read as a flag, don't set right-
-         justify flag if the LADJUST (`-') flag has already been supplied
-       - floating: make sure to output space padding before the `+', zero
-         padding after
-       - exponent: make sure to output space padding before the `+', zero
-         padding after
-       - exponent: only subtract one from the width for the decimal point
-         if we're really going to print one
-       - floating: use presence of PF_PLUS flag to decide whether to account
-         for the `+' in the padded field width.  Ditto for exponent()
-
-                                  4/16
-                                  ----
-lib/sh/snprintf.c
-       - vsnprint_internal: only reduce precision by 1 when processing the `g'
-         format if it's > 0.  A precision of 0 should stay 0; otherwise it
-         gets set to -1 (NOT_FOUND) and converted to the default
-       - number, lnumber: if an explicit precision is supplied, turn off the
-         zero-padding flag and set the pad character back to space
-       - number, lnumber: only account for a `+' when performing the field
-         width calculation if the coversion is base 10; we don't add a `+'
-         for other bases
-
-                                  4/18
-                                  ----
-tests/printf3.sub
-       - try using "perl -e 'print time'" to get the current time in seconds
-         since the epoch if "date +%s" is not available (solaris 8-10)
-
-                                  4/19
-                                  ----
-tests/run-printf
-       - use cat -v instead of relying on diff -a being available to convert
-         control characters to ascii and avoid the dreaded "Binary files
-         /tmp/xx and printf.right differ"
-
-                                  4/20
-                                  ----
-lib/sh/strftime.c
-       - incoporated new version from Aharon Robbins <arnold@skeeve.com>
-
-                                  4/22
-                                  ----
-doc/{bash.1,bashref.texi}
-       - slight change to the description of /dev/tcp and /dev/udp
-
-subst.c
-       - match_wpattern: logic fix to the calculation of `simple' (was |=,
-         needs to be &=).  Bug report from Mike Frysinger <vapier@gentoo.org>,
-         fix from Andreas Schwab <schwab@linux-m68k.org>
-
-bashline.c
-       - bash_filename_stat_hook: add code from bash_directory_completion_hook
-         that performs pathname canonicalization in the same way that cd and
-         other builtins will do
-
-                                  4/25
-                                  ----
-execute_cmd.c
-       - execute_pipeline: change the call to move_to_high_fd to make it use
-         getdtablesize() and to not stomp on existing open file descriptors,
-         like the fd the shell is using to read a script.  Bug report from
-         Greg Wooledge <wooledg@eeg.ccf.org>
-
-                                   5/6
-                                   ---
-subst.c
-       - expand_word_internal: case '$': after calling param_expand and
-         setting had_quoted_null, set TEMP to null.  The code that builds the
-         returned string at the end of the function will take care of making
-         and returning a quoted null string if there's nothing else in
-         ISTRING.  If there is, the quoted null should just go away.  Part of
-         fix for bug reported by Ruediger Kuhlmann <RKuhlmann@orga-systems.com>
-       - expand_word_internal: when processing ISTRING to build return value,
-         only set W_HASQUOTEDNULL in the returned word flags if the word is
-         a quoted null string AND had_quoted_null is set.  Rest of fix
-
-                                   5/9
-                                   ---
-variables.c
-       - bind_variable_internal: if we get an array variable here (implicit
-         assignment to index 0), call make_array_variable_value, which
-         dummies up a fake SHELL_VAR * from array[0].  This matters when
-         we're appending and have to use the current value
-       - bind_variable_internal: after computing the new value, treat assoc
-         variables with higher precedence than simple array variables; it
-         might be that a variable has both attributes set
-
-arrayfunc.c
-       - bind_array_var_internal: break code out that handles creating the
-         new value to be assigned to an array variable index into a new
-         function, make_array_variable_value.  This handles creating a
-         dummy SHELL_VAR * for implicit array[0] assignment.  Fixes bug
-         reported by Dan Douglas <ormaaj@gmail.com>
-
-arrayfunc.h
-       - make_array_variable_value: new extern declaration
-
-                                  5/19
-                                  ----
-variables.c
-       - bind_int_variable: if an assignment statement like x=y comes in
-         from the expression evaluator, and x is an array, handle it like
-         x[0]=y.  Fixes bug reported by Dan Douglas <ormaaj@gmail.com>
-
-                                  5/24
-                                  ----
-
-braces.c
-       - mkseq: handle possible overflow and break the sequence generating
-         loop if it occurs.  Fixes OpenSUSE bug 763591:
-         https://bugzilla.novell.com/show_bug.cgi?id=763591
-
-                                  5/25
-                                  ----
-Makefile.in
-       - LDFLAGS_FOR_BUILD: add to compilation recipes for build tools
-         buildversion, mksignames, mksyntax
-       - LDFLAGS_FOR_BUILD: add to compilation recipes for test tools
-         recho, zecho, printenv, xcase
-
-builtins/Makefile.in
-       - LDFLAGS_FOR_BUILD: add to compilation recipes for build tools
-         gen-helpfiles, psize.aux
-
-variables.c
-       - bind_int_variable: if LHS is a simple variable name without an array
-         reference, but resolves to an array variable, call
-         bind_array_variable with index 0 to make x=1 equivalent to x[0]=1.
-         Fixes bug reported by Dan Douglas <ormaaj@gmail.com>
-
-                                  5/27
-                                  ----
-subst.c
-       - expand_word_internal: make sure has_dollar_at doesn't get reset before
-         recursive calls to param_expand or expand_word_internal, since it has
-         to save state of what came before.  Use temp variable and make sure
-         has_dollar_at is incremented if recursive call processes "$@".
-         Fixes bug reported by gregrwm <backuppc-users@whitleymott.net> and
-         supplemented by Dan Douglas <ormaaj@gmail.com>
-
-doc/{bash.1,bashref.texi}
-       - changes to the description of substring expansion inspired by
-         suggestions from Bill Gradwohl <bill@ycc.com>
-
-doc/bashref.texi
-       - added substring expansion examples inspired by suggestions from
-         Bill Gradwohl <bill@ycc.com>
-
-variables.c
-       - find_shell_variable: search for a variable in the list of shell
-         contexts, ignore the temporary environment
-       - find_variable_tempenv: search for a variable in the list of shell
-         contexts, force search of the temporary environment
-       - find_variable_notempenv: search for a variable in the list of shell
-         contexts, don't force search of the temporary environment
-
-variables.h
-       - find_shell_variable: extern declaration
-       - find_variable_tempenv: extern declaration
-       - find_variable_notempenv: extern declaration
-
-arrayfunc.c
-       - bind_array_variable: call find_shell_variable instead of calling
-         var_lookup directly
-
-findcmd.c
-       - search_for_command: call find_variable_tempenv instead of
-         find_variable_internal directly
-       - _find_user_command_internal: call find_variable_tempenv instead of
-         find_variable_internal directly
-
-builtins/setattr.def
-       - set_var_attribute: call find_variable_notempenv instead of
-         find_variable_internal directly
-       - show_name_attributes:  call find_variable_tempenv instead of
-         find_variable_internal directly
-
-                                   6/1
-                                   ---
-sig.c
-       - termsig_handler: don't try to save the shell history on a terminating
-         signal any more, since it just causes too many problems on Linux
-         systems using glibc and glibc malloc
-
-lib/readline/vi_mode.c
-       - rl_vi_change_to: change to correctly redo `cc', since `c' is not a vi
-         motion character.  From Red Hat bug 813289
-       - rl_vi_delete_to: change to correctly redo `dd', since `d' is not a vi
-         motion character
-       - rl_vi_yank_to: change to correctly redo `yy', since `y' is not a vi
-         motion character
-
-                                   6/4
-                                   ---
-lib/sh/mktime.c
-       - current versions of VMS do not need to include <stddef.h>.  Fix from
-         John E. Malmberg <wb8tyw@qsl.net>
-
-                                   6/5
-                                   ---
-lib/sh/eaccess.c
-       - sh_stat: instead of using a static buffer to do the DEV_FD_PREFIX
-         translation, use a dynamically-allocated buffer that we keep
-         resizing.  Fixes potential security hole reported by David Leverton
-         <levertond@googlemail.com>
-
-                                   6/5
-                                   ---
-braces.c
-       - expand_seqterm: check errno == ERANGE after calling strtoimax for
-         rhs and incr.  Part of a set of fixes from Scott McMillan
-         <scotty.mcmillan@gmail.com>
-       - expand_seqterm: incr now of type `intmax_t', which changes
-         arguments to mkseq
-       - mkseq: a better fix for detecting overflow and underflow since it's
-         undefined in C and compilers `optimize' out overflow checks.  Uses
-         ADDOVERFLOW and SUBOVERFLOW macros
-       - mkseq: use sh_imaxabs (new macro) instead of abs() for intmax_t
-         variables
-       - mkseq: don't allow incr to be converted to -INTMAX_MIN
-       - mkseq: make sure that strvec_create isn't called with a size argument
-         greater than INT_MAX, since it only takes an int
-
-                                   6/6
-                                   ---
-braces.c
-       - mkseq: try and be smarter about not overallocating elements in
-         the return array if the increment is not 1 or -1
-
-                                   6/7
-                                   ---
-parse.y
-       - history_delimiting_chars: if the parser says we're in the middle of
-         a compound assignment (PST_COMPASSIGN), just return a space to avoid
-         adding a stray semicolon to the history entry.  Fixes bug reported
-         by "Davide Brini" <dave_br@gmx.com>
-
-                                   6/8
-                                   ---
-bashline.c
-       - bash_directory_completion_hook: don't attempt spelling correction
-         on the directory name unless the direxpand option is set and we are
-         going to replace the directory name with the corrected one in the
-         readline line.  Suggested by Linda Walsh <bash@tlinx.org>
-
-lib/sh/shquote.c
-       - sh_backslash_quote: now takes a third argument: flags.  If non-zero,
-         tildes are not backslash-escaped.  Have to handle both printf %q,
-         where they should be escaped, and filename completion, where they
-         should not when used as usernames
-
-externs.h
-       - sh_backslash_quote: declaration now takes a third argument
-
-builtins/printf.def
-       - printf_builtin: call sh_backslash_quote with 1 as third argument
-         so tildes get escaped
-
-{bashline,bracecomp}.c
-       - call sh_backslash_quote with 0 as third argument so tildes are not
-         escaped in completed words
-
-doc/bash.1
-       - add `coproc' to the list of reserved words.  From a report by
-         Jens Schweikhardt <schweikh@schweikhardt.net>
-
-                                  6/10
-                                  ----
-execute_cmd.c
-       - line_number_for_err_trap: now global, so parse_and_execute can save
-         and restore it with unwind-protect
-
-builtins/evalstring.c
-       - parse_prologue: save and restore line_number_for_err_trap along
-         with line_number
-       - restore_lastcom: new function, unwind-protect to restore
-         the_printed_command_except_trap
-       - parse_prologue: use restore_lastcom to save and restore the value
-         of the_printed_command_except_trap around calls to parse_and_execute
-         (eval/source/.)
-
-                                  6/15
-                                  ----
-lib/readline/complete.c
-       - complete_fncmp: change filename comparison code to understand
-         multibyte characters, even when doing case-sensitive or case-mapping
-         comparisons.  Fixes problem reported by Nikolay Shirokovskiy
-         <nshyrokovskiy@gmail.com>
-
-                                  6/20
-                                  ----
-builtins/mapfile.def
-       - mapfile: move the line count increment and check for having read
-         the specified number of lines to the end of the loop to avoid
-         reading an additional line with zgetline.  Fixes bug reported by
-         Dan Douglas <ormaaj@gmail.com>
-
-                                  6/21
-                                  ----
-
-execute_cmd.c
-       - execute_pipeline: make sure `lastpipe_flag' is initialized to 0 on
-         all systems, since it's tested later in the function.  Fixes bug
-         reported by John E. Malmberg <wb8tyw@qsl.net>
-
-                                  6/22
-                                  ----
-mailcheck.c
-       - file_mod_date_changed: return 0 right away if mailstat() does not
-         return success.  Fixes bug with using uninitialized values reported
-         by szymon.kalasz@uj.edu.pl
-
-builtins/set.def
-       - the `monitor' option is not available when the shell is compiled
-         without job control, since the underlying `m' flag is not available
-
-nojobs.c
-       - job_control: now declared as int variable, initialized to 0, never
-         modified
-
-jobs.h
-       - job_control: extern declaration no longer dependent on JOB_CONTROL
-
-execute_cmd.c
-       - execute_pipeline: made necessary changes so `lastpipe' shell option
-         is now available in all shells, even those compiled without
-         JOB_CONTROL defined
-
-                                  6/23
-                                  ----
-lib/glob/glob.c
-       - glob_filename: check for interrupts before returning if glob_vector
-         returns NULL or an error.  Bug reported by Serge van den Boom
-         <svdb@stack.nl>, fix from Andreas Schwab <schwab@linux-m68k.org>
-       - call run_pending_traps after each call to QUIT or test of
-         interrupt_state, like we do in mainline shell code
-       - glob_vector: don't call QUIT; in `if (lose)' code block; just free
-         memory, return NULL, and let callers deal with interrupt_state or
-         other signals and traps
-
-                                  6/25
-                                  ----
-lib/readline/input.c
-       - rl_read_key: restructure the loop that calls the event hook a little,
-         so that the hook is called only after rl_gather_tyi returns no input,
-         and any pending input is returned first.  This results in better
-         efficiency for processing pending input without calling the hook
-         on every input character as bash-4.1 did.  From a report from
-         Max Horn <max@quendi.de>
-
-                                  6/26
-                                  ----
-trap.c
-       - signal_is_pending: return TRUE if SIG argument has been received and
-         a trap is waiting to execute
-
-trap.h
-       - signal_is_pending: extern declaration
-
-lib/glob/glob.c
-       - glob_vector: check for pending SIGINT trap each time through the loop,
-         just like we check for interrupt_state or terminating_signal, and
-         set `lose = 1' so we clean up after ourselves and interrupt the
-         operation before running the trap.  This may require a change later,
-         maybe call run_pending_traps and do that if run_pending_traps returns?
-
-variables.c
-       - sv_histtimefmt: set history_comment_character to default (`#') if
-         it's 0 when we're turning on history timestamps.  The history code
-         uses the history comment character to prefix timestamps, and
-         leaving it at 0 effectively removes them from the history.  From a
-         report to help-bash by Dennis Williamson <dennistwilliamson@gmail.com>
-
-                                  6/27
-                                  ----
-lib/readline/signals.c
-       - rl_maybe_restore_sighandler: new function, sets handler for SIG to
-         HANDLER->sa_handler only if it's not SIG_IGN.  Needs to be called
-         on same signals set using rl_maybe_set_sighandler, which does not
-         override an existing SIG_IGN handler (SIGALRM is ok since it does
-         the check inline; doesn't mess with SIGWINCH)
-
-                                  6/30
-                                  ----
-variables.h
-       - additional defines for the new `nameref' variable attribute
-         (att_nameref): nameref_p, nameref_cell, var_setref
-
-variables.c
-       - find_variable_nameref: resolve SHELL_VAR V through chain of namerefs
-       - find_variable_last_nameref: resolve variable NAME until last in a
-         chain of possibly more than one nameref starting at shell_variables
-       - find_global_variable_last_nameref: resolve variable NAME until last
-         in a chain of possibly more than one nameref starting at
-         global_variables
-       - find_nameref_at_context: resolve SHELL_VAR V through chain of namerefs        
-         in a specific variable context (usually a local variable hash table)
-       - find_variable_nameref_context: resolve SHELL_VAR V through chain of
-         namerefs following a chain of varible contexts
-       - find_variable_last_nameref_context: resolve SHELL_VAR V as in
-         find_variable_last_context, but return the final nameref instead of
-         what the final nameref resolves to
-       - find_variable_tempenv, find_variable_notempenv, find_global_variable,
-         find_shell_variable, find_variable: modified to follow namerefs
-       - find_global_variable_noref: look up a global variable without following
-         any namerefs
-       - find_variable_noref: look up a shell variable without following any
-         namerefs
-       - bind_variable_internal: modify to follow a chain of namerefs in the
-         global variables table; change to handle assignments to a nameref by
-         following nameref chain
-       - bind_variable: modify to follow chain of namerefs when binding to a
-         local variable
-       - unbind_variable: changes to unset nameref variables (unsets both
-         nameref and variable it resolves to)
-
-subst.c
-       - parameter_brace_expand_word: change to handle expanding nameref whose
-         value is x[n]
-       - parameter_brace_expand_indir: change to expand in ksh93-compatible
-         way if variable to be indirected is nameref and a simple (non-array)
-         expansion
-       - param_expand: change to expand $foo where foo is a nameref whose value
-         is x[n]
-
-execute_cmd.c
-       - execute_for_command: changes to implement ksh93 semantics when index
-         variable is a nameref
-
-builtins/setattr.def
-       - show_var_attributes: change to add `n' to flags list if att_nameref
-         is set
-
-builtins/set.def
-       - unset_builtin: changes to error messages to follow nameref variables
-
-builtins/declare.def
-       - document new -n option
-       - declare_internal: new `-n' and `+n' options
-       - declare_internal: handle declare -n var[=value] and
-         declare +n var[=value] for existing and non-existant variables.
-         Enforce restriction that nameref variables cannot be arrays.
-         Implement semi-peculiar ksh93 semantics for typeset +n ref=value
-
-                                   7/5
-                                   ---
-variables.c
-       - unbind_variable: unset whatever a nameref resolves to, leaving the
-         nameref variable itself alone
-       - unbind_nameref: new function, unsets a nameref variable, not the
-         variable it references
-
-variables.h
-       - unbind_nameref: extern declaration
-
-builtins/set.def
-       - unset_builtin: modify to add -n option, which calls unbind_nameref
-         leaving unbind_variable for the usual case.  This required slight
-         changes and additions to the test suite
-
-doc/{bash.1,bashref.texi}
-       - document namerefs and typeset/declare/local/unset -n
-
-                                  7/13
-                                  ----
-lib/sh/casemod.c
-       - include shmbchar.h for is_basic and supporting pieces
-       - sh_casemod: use _to_wupper and _to_wlower to convert wide character
-         case instead of TOUPPER and TOLOWER.  Fixes bug reported by
-         Dennis Williamson <dennistwilliamson@gmail.com>, fix from
-         Andreas Schwab <schwab@linux-m68k.org>
-       - cval: short-circuit and return ascii value if is_basic tests true
-       - sh_casemod: short-circuit and use non-multibyte case modification
-         and toggling code if is_basic tests true
-
-lib/readline/signals.c
-       - _rl_{block,release}_sigint: remove the code that actually blocks and
-         releases the signals, since we defer signal handling until calls to
-         RL_CHECK_SIGNALS()
-
-lib/readline/{callback,readline,util}.c
-       - if HAVE_POSIX_SIGSETJMP is defined, use sigsetjmp/siglongjmp without
-         saving and restoring the signal mask instead of setjmp/longjmp
-
-lib/readline/rltty.c
-       - prepare_terminal_settings: don't mess with IXOFF setting if
-         USE_XON_XOFF defined
-
-doc/{bash.1,bashref.texi}
-       - add some text to the description of set -e clarifying its effect
-         on shell functions and shell function execution.  Suggested by
-         Rainer Blome <rainer.blome@gmx.de>
-
-bashline.c
-       - edit_and_execute_command: increment current_command_line_count before
-         adding partial line to command history (for command-oriented-history
-         because of rl_newline at beginning of function), then reset it to 0
-         before adding the dummy history entry to make sure the dummy entry
-         doesn't get added to previous incomplete command.  Partial fix for
-         problem reported by Peng Yu <pengyu.ut@gmail.com>
-
-                                  7/24
-                                  ----
-configure.in
-       - interix: define RECYCLES_PIDS.  Based on a report from Michael
-         Haubenwallner <michael.haubenwallner@salomon.at>
-
-                                  7/26
-                                  ----
-jobs.c
-       - make_child: call bgp_delete on the newly-created pid unconditionally.
-         Some systems reuse pids before cycling through an entire set of
-         CHILD_MAX/_SC_CHILD_MAX unique pids.  This is no longer dependent
-         on RECYCLES_PIDS.  Based on a report from Michael Haubenwallner
-         <michael.haubenwallner@salomon.at>
-
-support/shobj-conf
-       - Mac OS X: drop MACOSX_DEPLOYMENT_TARGET=10.3 from the LDFLAGS. We
-         can finally kill Panther
-
-                                  7/28
-                                  ----
-subst.c
-       - command_substitute: make sure last_made_pid gets reset if make_child
-         fails
-
-execute_cmd.c
-       - execute_command_internal: case cm_simple: decide whether or not to
-         wait_for a child if already_making_children is non-zero, indicates
-         that there is an unwaited-for child.  More of fix for bug report
-         from Michael Haubenwallner <michael.haubenwallner@salomon.at>
-
-jobs.c
-       - make_child: call delete_old_job (new_pid) unconditionally, don't
-         bother to check whether or not pid wrap occurred.  Rest of fix for
-         bug report from Michael Haubenwallner
-         <michael.haubenwallner@salomon.at>
-
-                                  7/29
-                                  ----
-shell.c
-       - subshell_exit: new function, exits the shell (via call to sh_exit())
-         after calling any defined exit trap
-
-externs.h
-       - subshell_exit: new extern declaration
-
-execute_cmd.c
-       - execute_command_internal: make sure to call subshell_exit for
-         {} group commands executed asynchronously (&).  Part of fix for
-         EXIT trap bug reported by Maarten Billemont <lhunath@lyndir.com>
-
-sig.c
-       - reset_terminating_signals: make sure to set termsigs_initialized back
-         to 0, so a subsequent call to initialize_terminating_signals works
-         right.  Rest of fix for bug reported by Maarten Billemont
-         <lhunath@lyndir.com>
-
-{execute_cmd,general,jobs,mailcheck,mksyntax,test}.c
-builtins/{cd,fc,pushd,ulimit}.def
-lib/malloc/getpagesize.h
-lib/sh/{clktck,fpurge,inet_aton,mailstat,oslib,pathcanon,pathphys,spell,strerror}.c
-       - make inclusion of <sys/param.h> dependent on HAVE_SYS_PARAM_H
-         consistently
-
-                                   8/6
-                                   ---
-lib/readline/histexpand.c
-       - history_expand_internal: now takes an additional argument saying
-         whether the history expansion occurs within a quoted string, set to
-         the open quote character
-       - history_expand_internal: use new argument instead of checking prev
-         char and initializing quoted_search_delimiter, pass qc directly to
-         get_history_event, where it allows a matching quote to terminate a
-         string defining an event
-       - history_expand: change single-quote handling code so that if
-         history_quotes_inhibit_expansion is 0, single quotes are treated
-         like double quotes
-       - history_expand: change call to history_expand_internal to pass new
-         argument of `"' if double-quoted string, `'' if single-quoted string;
-         this lets history_expand decide what is a quoted string and what
-         is not
-
-                                   8/7
-                                   ---
-configure.in
-       - AC_CANONICAL_BUILD: invoke for later use
-
-lib/readline/macro.c
-       - _rl_prev_macro_key: new function, inverse of _rl_next_macro_key:
-         backs up the index into the current macro by 1
-
-lib/readline/rlprivate.h
-       - _rl_prev_macro_key: extern declaration
-
-
-lib/readline/readline.c
-       - _rl_dispatch_subseq, _rl_subseq_result: don't call _rl_unget_char
-         if we're currently reading from a macro; call _rl_prev_macro_key
-         instead.  Fixes bug reported by Clark Wang <clark.wang@oracle.com>
-
-                                  8/13
-                                  ----
-builtins/evalstring.c
-       - evalstring(): new function, wrapper around parse_and_execute.
-         make sure we handle cases where parse_and_execute can call `return'
-         and short-circuit without cleaning up properly.  We call
-         parse_and_execute_cleanup() then jump to the previous-saved return
-         location
-
-builtins/common.h
-       - extern declaration for evalstring()
-
-builtins/eval.def
-       - eval_builtin: make sure we handle `eval " ... return"' in contexts
-         where `return' is valid by calling evalstring().  Fixes bug with
-         `eval return' in sourced files reported by Clark Wang
-         <dearvoid@gmail.com>
-
-trap.c
-       - run_pending_traps: call evalstring instead of parse_and_execute.
-         XXX - still needs to handle saving and restoring token state in the
-         presence of `return'; could use unwind_protects for that
-
-builtins/mapfile.def
-       - run_callback: call evalstring instead of parse_and_execute
-
-                                  8/15
-                                  ----
-bashline.c
-       - bash_filename_stat_hook: make sure we don't free local_dirname
-         before using it to canonicalize any expanded filename.  Make sure
-         it always points to *dirname and only free it if we're replacing
-         it.
-
-lib/readline/complete.c
-       - append_to_match: make sure we call rl_filename_stat_hook with
-         newly-allocated memory to avoid problems with freeing it twice
-
-                                  8/17
-                                  ----
-variables.c,config-top.h
-       - if ARRAY_EXPORT is defined to 1 when variables.c is compiled, the
-         code that allows indexed arrays to be exported is enabled and
-         included
-
-                                  8/19
-                                  ----
-shell.c
-       - call start_debugger from main() only if dollar_vars[1] != 0 (close
-         enough to a non-interactive shell, since we can be interactive with
-         -i while running a shell script).  Fixes oddity reported by
-         Techlive Zheng <techlivezheng@gmail.com>
-
-                                  8/20
-                                  ----
-arrayfunc.c
-       - quote_array_assignment_chars: don't bother quoting if the word has
-         not been marked as an assignment (W_ASSIGNMENT)
-       - quote_array_assignment_chars: turn on W_NOGLOB in the word flags
-         so assignment statements don't undergo globbing.  Partial fix for
-         problems reported by Dan Douglas <ormaaj@gmail.com>
-
-                                  8/21
-                                  ----
-command.h
-       - W_NOBRACE: new word flag that means to inhibit brace expansion
-
-subst.c
-       - brace_expand_word_list: suppress brace expansion for words with
-         W_NOBRACE flag
-
-                                  8/22
-                                  ----
-builtins/read.def
-       - read_builtin: don't call dequote_string on what we've read, even if
-         we saw an escape character, unless (input_string && *input_string).
-         We may have escaped an IFS whitespace character.  Fixes seg fault
-         reported by <armandsl@gmail.com>
-
-execute_cmd.c
-       - execute_command_internal: set the_printed_command_except trap when
-         about to execute a ( ... ) user subshell.  For now, set it only if
-         ERR is trapped; can relax that later.  Fixes bug reported by
-         Mike Frysinger <vapier@gentoo.org>
-
-                                  8/23
-                                  ----
-jobs.c
-       - remove references to first_pid and pid_wrap, since we're not using
-         them for anything anymore
-
-                                  8/24
-                                  ----
-subst.c
-       - changes for W_NOBRACE everywhere appropriate: so it can be displayed
-         for debugging, and passed out of expand_word_internal
-
-doc/{bash.1,bashref.texi}
-       - small changes to make it clearer that the = and == operators are
-         equivalent, and will cause pattern matching when used with [[.
-         From a question from Michal Soltys <soltys@ziu.info>
-
-doc/bashref.texi
-       - some small formatting changes from Karl Berry <karl@freefriends.org>
-
-                                  8/27
-                                  ----
-lib/readline/doc/{history,rlman,rluserman}.texi
-       - some small formatting changes from Karl Berry <karl@freefriends.org>
-
-arrayfunc.c
-       - assign_array_element_internal, assign_compound_array_list,
-         unbind_array_element, array_value_internal: changes to make
-         assignment statements to negative indices (a[-1]=2) and unsetting
-         array elements using negative indices (unset 'a[-1]') work.
-         From suggestions by Dennis Williamson <dennistwilliamson@gmail.com>
-         and Chris F. A. Johnson <chris@cfajohnson.com>
-
-subst.c
-       - array_length_reference: changes to make length references to array
-         elements using negative indices (${#a[-1]}) work
-
-                                  8/28
-                                  ----
-doc/{bash.1,bashref.texi}
-       - document new treatment of negative indices to indexed arrays when
-         assigning, referencing, calculating length, and unsetting
-
-                                  8/29
-                                  ----
-shell.c
-       - show_shell_usage: add -l to list of shell invocation options (short
-         for --login).  From Red Hat bug 852469
-
-configure.ac
-       - renamed from configure.in, as latest autoconf versions want.  Patches
-         Stefano Lattarini <stefano.lattarini@gmail.com>
-
-MANIFEST,Makefile.in,doc/bashref.texi,support/mkconffiles
-       - configure.in -> configure.ac
-
-                                   9/1
-                                   ---
-
-parse.y
-       - read_token_word: allow words like {array[ind]} to be valid redirection
-         words for constructs like {x}<file
-
-redir.c
-       - redir_varassign: bind_var_to_int already handles array assignments,
-         so don't need to do anything more for things like {a[i]}<file
-       - redir_varvalue: changes to allow references to {a[i]} when
-         performing redirections using valid_array_reference and
-         get_array_value.  Adds functionality requested most recently by
-         <unknown@vmw-les.eng.vmware.com>
-
-lib/readline/display.c
-       - update_line: if the first difference between the old and new lines
-         is completely before any invisible characters in the prompt, we
-         should not adjust _rl_last_c_pos, since it's before any invisible
-         characters.  Fixed in two places
-       - prompt_modechar: return a character indicating the editing mode:
-         emacs (@), vi command (:), or vi insert (+)
-       - _rl_reset_prompt: new function, just calls rl_expand_prompt.  Will be
-         inlined, placeholder for more changes
-       - expand_prompt: if show-mode-in-prompt is enabled, add a character to
-         the front of the prompt indicating the editing mode, adjusting the
-         various variables as appropriate to keep track of the number of
-         visible characters and number of screen positions
-
-lib/readline/bind.c
-       - show-mode-in-prompt: new bindable boolean variable, shadowed by
-         _rl_show_mode_in_prompt variable
-       - hack_special_boolean_var: call _rl_reset_prompt when toggling or
-         setting show-mode-in-prompt
-
-lib/readline/readline.c
-       - readline_internal_setup: make sure the correct vi mode keymap is set
-         before expanding the prompt string for the first time
-
-lib/readline/misc.c
-       - rl_emacs_editing_mode: make sure to call _rl_reset_prompt if we're
-         showing the editing mode in the prompt
-
-lib/readline/rlprivate.h
-       - _rl_reset_prompt, _rl_show_mode_in_prompt: extern declarations
-
-lib/readline/vi_mode.c
-       - rl_vi_insertion_mode: call _rl_reset_prompt
-       - rl_vi_movement_mode: call _rl_reset_prompt.  Finishes changes for
-         showing mode in prompt string, originally requested by Miroslav
-         Koskar <mkoskar@gmail.com> and most recently by Jordan Michael
-         Ziegler <jziegler@bnl.gov>
-
-doc/bash.1,lib/readline/doc/{readline.3,rluser.texi}
-       - document new show-mode-in-prompt variable, off by default
-
-                                   9/3
-                                   ---
-
-jobs.c
-       - set_childmax: new function, external mechanism for other parts of
-         the shell to set js.c_childmax, the number of saved exited child
-         statuses to remember
-jobs.h
-       - set_childmax: extern declaration
-
-variables.c
-       - CHILD_MAX: new special variable, with sv_childmax function to
-         run when it changes.  Setting CHILD_MAX to a value greater than
-         zero but less than some maximum (currently 8192) sets the number of
-         exited child statuses to remember.  set_childmax (jobs.c) ensures
-         that the number does not drop below the posix-mandated minimum
-         (CHILD_MAX)
-
-doc/{bash.1,bashref.texi}
-       - CHILD_MAX: document new meaning and action when variable is set
-
-                                   9/5
-                                   ---
-redir.c
-       - redir_varassign: call stupidly_hack_special_variables after
-         assigning fd number to specified variable, so we can use constructs
-         like {BASH_XTRACEFD}>foo.  Suggested by Pierre Gaston
-         <pierre.gaston@gmail.com>
-
-                                   9/8
-                                   ---
-expr.c
-       - readtok: invalidate previous contents of `curlval' before freeing
-         and reallocating tokstr (which, chances are, will get the same
-         pointer as before and render curlval inconsistent).  Fixes other
-         bug reported by Dan Douglas <ormaaj@gmail.com>
-
-                                   9/9
-                                   ---
-lib/readline/complete.c
-       - rl_username_completion_function: protect call to setpwent() with
-         #ifdef (HAVE_GETPWENT)/#endif.  Fixes bug reported by
-         Gerd Hofmann <gerd.hofmann.nbg@googlemail.com>
-
-lib/readline/display.c
-       - rl_message: second and subsequent calls to rl_message can result in
-         local_prompt being overwritten with new values (e.g., from the
-         successive calls displaying the incremental search string).  Need
-         to free before overwriting if it's not the same as the value saved
-         in saved_local_prompt.  Fixes memory leak reported by
-         Wouter Vermaelen <vermaelen.wouter@gmail.com>
-
-lib/readline/{terminal.c,rlprivate.h}
-       - move CUSTOM_REDISPLAY_FUNC and CUSTOM_INPUT_FUNC defines from
-         terminal.c to rlprivate.h so other files can use them
-
-expr.c
-       - expr_streval: if noeval is non-zero, just return 0 right away,
-         short-circuiting evaluation completely.  readtok will leave curtok
-         set correctly without re-entering the evaluator at all.  Rest of
-         fix for bug reported by Dan Douglas <ormaaj@gmail.com>
-
-                                  9/11
-                                  ----
-
-parse.y
-       - parse_comsub: make sure the `reserved word ok in this context' flag
-         is preserved after we read `do' followed by whitespace.  Fixes bug
-         reported by Benoit Vaugon <benoit.vaugon@gmail.com>
-
-                                  9/13
-                                  ----
-configure.ac,config.h.in
-       - enable-direxpand-default: new configure option, turns the `direxpand'
-         shell option on by default
-
-bashline.c
-       - dircomplete_expand, dircomplete_expand_relpath: initialize to 1 if
-         DIRCOMPLETE_EXPAND_DEFAULT is defined and non-zero
-
-doc/bashref.texi
-       - enable-direxpand-default: document new configure option
-
-                                  9/14
-                                  ----
-shell.c
-       - --protected: make option valid only when wordexp is compiled into
-         the shell.  Fix from Roman Rakus <rrakus@redhat.com>
-
-configure.ac
-       - HP NonStop (*-nsk*): compile --without-bash-malloc. Change from
-         Joachim Schmitz <jojo@schmitz-digital.de>
-
-                                  9/16
-                                  ----
-subst.c,execute_cmd.c,lib/glob/sm_loop.c,lib/sh/shquote.c
-       - minor code cleanups from Joachim Schmitz <jojo@schmitz-digital.de>
-
-lib/readline/colors.h
-       - workaround for HP NonStop compiler issue with <stdbool.h> from
-         Joachim Schmitz <jojo@schmitz-digital.de>
-
-                                  9/17
-                                  ----
-builtins/printf.def
-       - printf_builtin: handle localtime returning NULL, as can happen when
-         encountering overflow.  Bug report and initial fix from
-         Eduardo A. Bustamante López <dualbus@gmail.com>
-
-doc/{bash.1,bashref.texi}
-       - emphasize that brace expansion using character ranges ({a..c}) acts
-         as if the C locale were in use.  Prompted by message from
-         Marcel Giannelia <info@skeena.net>
-
-                                  9/20
-                                  ----
-lib/sh/wcsnwidth.c
-       - wcsnwidth: new function, variant of wcwidth, returns the number of
-         wide characters from a string that will be displayed to not exceed
-         a specified max column position
-
-                                  9/21
-                                  ----
-builtins/help.def
-       - show_builtin_command_help: break code that displays the short-doc
-         for each builtin in two columns into a new function: dispcolumn
-       - wdispcolumn: multibyte-char version of dispcolumn; uses wide
-         chars and printf "%ls" format.  Fixes problem reported by
-         Nguyá»n Thái Ngá»c Duy <pclouds@gmail.com>
-
-                                  9/22
-                                  ----
-execute_cmd.c
-       - execute_disk_command: before running the command-not-found hook,
-         call kill_current_pipeline() to make sure we don't add processes
-         to an existing pipeline or wait for processes erroneously
-
-                                  9/23
-                                  ----
-lib/readline/input.c
-       - rl_input_available_hook: new hook function, called from
-         _rl_input_available (or _rl_input_queued) to return whether or not
-         input is available wherever the input source is
-
-lib/readline/doc/rltech.texi
-       - rl_input_available_hook: document
-
-                                  9/27
-                                  ----
-lib/glob/sm_loop.c:
-       - GMATCH: after one or more `*', an instance of ?(x) can match zero or
-         1 times (unlike ?, which has to match one character).  The old code
-         failed if it didn't match at least once.  Fixes `a*?(x)' bug.
-       - GMATCH: if we hit the end of the search string, but not the end of
-         the pattern, and the rest of the pattern is something that can
-         match the NUL at the end of the search string, we should successfully
-         match.  Fixes `a*!(x)' bug reported by <hans1worst@gmail.com>
-
-                                  10/2
-                                  ----
-command.h
-       - add c_lock member to coproc structure for future use to tell who is
-         manipulating it
-
-execute_cmd.c
-       - execute_coproc: block SIGCHLD while parent is forking coproc
-         process and adding pid to sh_coproc struct to avoid race condition
-         where child is reaped before the pid is assigned and the coproc is
-         never marked as having died.  Fixes race condition identified by
-         Davide Baldini <baldiniebaldini@gmail.com>
-       - add assignments to c_lock member of struct coproc in various
-         functions that manipulate it; was used to identify race condition
-       - coproc_pidchk: don't call coproc_dispose to avoid using malloc and
-         other functions in a signal handler context
-       - coproc_dispose: call BLOCK_SIGNAL/UNBLOCK_SIGNAL for SIGCHLD while
-         manipulating the sh_coproc struct
-
-                                  10/6
-                                  ----
-lib/readline/complete.c
-       - rl_display_match_list: if printing completions horizontally, don't
-         bother with spacing calculations if limit == 1, which means we are
-         printing one completion per line no matter what.  Fixes bug
-         reported by David Kaasen <kaasen@nvg.ntnu.no>
-
-                                  10/7
-                                  ----
-builtins/declare.def
-       - declare_internal: add error checking for nameref attribute and
-         variable assignments: self-references, attempts to make an array
-         variable a nameref
-
-subst.c
-       - parameter_brace_expand: handle parameter_brace_expand_word returning
-         &expand_param_fatal or &expand_param_error and return the appropriate
-         error value
-       - parameter_brace_expand_word: if a nameref variable's value is not a
-         valid identifier, return an error
-       - param_expand: if a nameref variable's value is not a valid identifier,
-         return an error
-
-test.c
-       - unary_operator: add new -R variable, returns true if variable is set
-         and has the nameref attribute. From ksh93
-
-builtins/test.def
-       - add -R to description of conditional commands for help test
-
-doc/{bash.1,bashref.texi}
-       - document new -R unary conditional operator
-
-                                  10/13
-                                  -----
-trap.c
-       - check_signals_and_traps: new function, convenience function for the
-         rest of the shell to check for pending terminating and interrupt
-         signals, and to check for and process any pending traps
-       - any_signals_trapped: new function, returns non-zero if any signals
-         are trapped and -1 if not
-
-trap.h
-       - extern declaration for check_signals_and_traps
-
-bashline.c
-       - bashline_reset: make sure we reset the event hook
-       - bash_event_hook: call check_signals_and_traps instead of just
-         checking for terminating signals so we can run pending traps and
-         react to interrupts, and reset the event hook when we're done
-
-
-                                  10/14
-                                  -----
-trap.c
-       - trap_handler: if executing in a readline signal handler context,
-         call bashline_set_event_hook to install bash_event_hook to process
-         the signal (if bash cares about it)
-
-sig.c
-       - sigint_sighandler: call bashline_set_event_hook to set the event
-         hook if we're executing in a readline signal handler context
-
-lib/readline/input.c
-       - rl_getc: call RL_CHECK_SIGNALS if read returns -1/EINTR and the caught
-         signal is SIGINT or SIGQUIT rather than waiting until the next time
-         around the loop
-       - rl_getc: call rl_event_hook after calling RL_CHECK_SIGNALS to allow
-         an application signal handler to set the event hook in its own
-         signal handler (e.g., like bash trap_handler or sigint_sighandler)
-
-
-parse.y
-       - yy_readline_get: don't set interrupt_immediately before we call
-         readline().  Inspired by report from lanshun zhou
-         <zls.sogou@gmail.com>
-
-input.c
-       - getc_with_restart: add call to run_pending_traps after call to
-         CHECK_TERMSIG
-
-lib/sh/zread.c
-       - zread: call check_signals_and_traps if read() returns -1/EINTR
-         instead of just ignoring the EINTR and deferring handling any
-         signal that generated it
-
-builtins/mapfile.def
-       - mapfile: don't set interrupt_immediately before calling zgetline()
-         (which uses zread internally)
-
-builtins/read.def
-       - read_builtin: don't set interrupt_immediately before calling zread
-         (moved code around so that it was only being set right around calls
-         to zread to avoid signal handler conflicts).  Inspired by report
-         from lanshun zhou <zls.sogou@gmail.com>
-       - edit_line: don't set interrupt_immediately around call to readline()
-       - include shmbutil.h
-       - read_builtin: don't call read_mbchar unless is_basic(c) returns
-         false for the character we just read
-
-                                  10/15
-                                  -----
-sig.c
-       - throw_to_top_level: if interrupt_state is non-zero, make sure that
-         last_command_exit_value reflects 128+SIGINT if it's not already
-         greater than 128
-
-                                  10/20
-                                  -----
-builtins/wait.def
-       - WAIT_RETURN: set wait_signal_received back to 0 for the potential
-         next call to wait
-
-quit.h
-       - CHECK_WAIT_INTR: macro to check whether trap_handler handled a
-         signal and set wait_signal_received; longjmp to wait_intr_buf in
-         that case
-
-jobs.c
-       - wait_for, waitchld: call CHECK_WAIT_INTR at the same places we call
-         CHECK_TERMSIG to check for terminating signals
-       - wait_sigint_handler: don't longjmp out of the wait builtin unless
-         interrupt_immediately is set; otherwise just SIGRETURN from the
-         handler
-       - wait_sigint_handler: if interrupt_immediately not set, but we are
-         executing in the wait builtin and SIGINT is not trapped, treat it
-         as a `normally received' SIGINT: restore the signal handler and
-         send SIGINT to ourselves
-       - waitchld: when in posix mode and running SIGCHLD traps, don't longjmp
-         to wait_intr_buf (and let wait be interrupted) if we're running from
-         a signal handler.  Wait for CHECK_WAIT_INTR to do the longjmp.
-         run_pending_traps will run the SIGCHLD trap later
-
-nojobs.c
-       - reap_zombie_children, wait_for_single_pid, wait_for: call
-         CHECK_WAIT_INTR where we call CHECK_TERMSIG
-       - wait_sigint_handler: don't longjmp out of the wait builtin unless
-         interrupt_immediately is set; otherwise just SIGRETURN from the
-         handler
-
-trap.c
-       - trap_handler: make sure wait_signal_received is set if the wait
-         builtin is executing, and only longjmp if interrupt_immediately is
-         set.  This whole set of fixes was prompted by report from
-         lanshun zhou <zls.sogou@gmail.com>
-
-                                  10/24
-                                  -----
-lib/glob/glob.c
-       - glob_filename: only check directory_name for globbing chars if
-         it's of non-zero length
-
-lib/sh/strchrnul.c
-       - new simpler implementation
-
-subst.c
-       - command_substitute: call set_shellopts after turning off errexit
-         in subshells so it's reflected in $SHELLOPTS
-
-                                  11/7
-                                  ----
-builtins/evalstring.c
-       - parse_and_execute: treat ERREXIT case like reader_loop does: set
-         variable_context to 0 before longjmping back to top_level. Don't
-         run the unwind-protect context to avoid side effects from popping
-         function contexts.  Part of fix for problem reported by Nikolai
-         Kondrashov <nikolai.kondrashov@redhat.com>
-
-execute_cmd.c
-       - execute_simple_command: call unlink_fifo_list only if this is the
-         last element of a pipeline (or not in a pipeline), rather than for
-         every child.  Fixes difference in behavior between /dev/fd and
-         FIFOs reported by Zev Weiss <zev@bewilderbeest.net>
-       - execute_null_command: do the same thing in the parent branch after
-         make_child
-
-                                  11/14
-                                  -----
-subst.c
-       - parameter_brace_expand: a variable is null if it's special ($@, $*),
-         the expansion occurs within double quotes, and the expansion turns
-         into a quoted null.  Fixes debian bug 692447 reported by
-         Matrosov Dmitriy <sgf.dma@gmail.com>
-
-jobs.c
-       - run_sigchld_trap: make sure `running_trap' sentinel is set
-         appropriately
-       - waitchld: only run the sigchld trap if we're not in a signal
-         handler, not running a trap, and executing the wait builtin.
-         Otherwise, queue for later handling.  We still run one instance
-         of the trap handler per exited child.  Bulk of fix for bug
-         reported by Elliott Forney <idfah@cs.colostate.edu>
-
-trap.c
-       - queue_sigchld_trap: set catch_flag so run_pending_traps notices,
-         and set trapped_signal_received for completeness.  Rest of fix
-         for bug reported by Elliott Forney <idfah@cs.colostate.edu>
-
-lib/malloc/malloc.c
-       - block_signals: renamed to _malloc_block_signals, made public
-       - unblock_signals: renamed to _malloc_unblock_signals, made public
-
-lib/malloc/imalloc.h
-       - extern declarations for _malloc_{un,}block_signals
-
-lib/malloc/table.c
-       - mregister_alloc, mregister_free: block signals around table
-         manipulation
-
-                                  11/15
-                                  -----
-trap.c
-       - run_pending_traps: set SIG_INPROGRESS flag around calls to
-         run_sigchld_handler so other parts of the shell know that the
-         SIGCHLD trap handler is executing
-       - run_pending_traps: if we get a situation where we are looking at
-         running a SIGCHLD trap but the trap string is IMPOSSIBLE_TRAP_HANDLER
-         and the SIG_INPROGRESS flag is set, just skip it.  This is possible
-         if run_pending_traps is called from a SIGCHLD trap handler run by
-         run_sigchld_trap
-
-doc/bash.1,lib/readline/doc/{rluser.texi,readline.3}
-       - corrected description of the effect of `set history-size 0'.  Report
-         from Vesa-Matti J Kari <vmkari@cc.helsinki.fi>
-
-include/stdc.h
-       - CPP_STRING: new define, replaces __STRING
-
-lib/malloc/{malloc.c,imalloc.h}
-       - replace __STRING with CPP_STRING
-
-                                  11/16
-                                  -----
-lib/readline/bind.c
-       - sv_histsize: if argument evaluates to a value < 0, unstifle the
-         history
-
-                                  11/22
-                                  -----
-redir.c
-       - do_redirection_internal: if we have REDIR_VARASSIGN set in the
-         redirection flags and we set up `redirector' using fcntl or dup2,
-         don't add a redirect to make sure it stays open.  Let the
-         script programmer manage the file handle.  Fixes bug reported by
-         Sam Liddicott <sam@liddicott.com>
-
-                                  11/24
-                                  -----
-jobs.c
-       - wait_for_any_job: new function, waits for an unspecified background
-         job to exit and returns its exit status.  Returns -1 on no background
-         jobs or no children or other errors.  Calls wait_for with new
-         sentinel value ANY_PID
-       - wait_for: changes to handle argument of ANY_PID: don't look up or
-         try to modify the child struct, only go through the wait loop once.
-         Return -1 if waitpid returns no children
-
-jobs.h
-       - ANY_PID: new define
-
-builtins/wait.def
-       - new option: -n. Means to wait for the next job and return its exit
-         status.  Returns 127 if there are no background jobs (or no
-         children).  Feature most recently requested by Elliott Forney
-         <idfah@cs.colostate.edu>
-
-doc/{bash.1,bashref.texi}
-       - document new `wait -n' option
-
-execute_cmd.c
-       - execute_command_internal: save make_command_string () result in a
-         temp variable before calling savestring() on it; avoids evaluating
-         make_command_string() result twice.  Fix from John E. Malmberg
-         <wb8tyw@qsl.net>
-
-                                  11/28
-                                  -----
-
-builtins/declare.def
-       - declare_internal: if an array variable is declared using `declare -a'
-         or `declare -A', but not assigned a value, set the `invisible'
-         attribute so the variable does not show up as set.  Fix for bug
-         about variable initialization reported by Tim Friske <me@timfriske.com>
-
-builtins/{mapfile,read}.def
-       - after calling find_or_make_array_variable, make sure the invisible
-         flag is turned off, in case the variable was declared previously
-         using `declare -a' or `declare -A'.  Side effect of above change to
-         declare_internal
-
-subst.c
-       - shell_expand_word_list: handle the W_ASSNGLOBAL flag and put -g into
-         the list of options passed to make_internal_declare as appropriate.
-         Fix for bug reported by Tim Friske <me@timfriske.com>
-
-                                  11/30
-                                  -----
-test.c
-       - unary_op: make sure -v and -n check that the variable is not marked
-         as invisible before calling var_isset.  Fix for bug reported by Tim
-         Friske <me@timfriske.com>
-
-                                  12/2
-                                  ----
-subst.c
-       - process_substitute: turn off the `expanding_redir' flag, which
-         controls whether or not variables.c:find_variable_internal uses the
-         temporary environment to find variables.  We want to use the
-         temp environment, since we don't have to worry about order of
-         evaluation in a subshell.  Fixes bug reported by Andrey Borzenkov
-         <arvidjaar@gmail.com>
-
-                                  12/4
-                                  ----
-lib/glob/glob.c
-       - glob_filename: changes to avoid null filenames and multiple entries
-         returned for patterns like **/** (globstar enabled).  Fixes bug
-         reported by Ulf Magnusson <ulfalizer@gmail.com>
-
-                                  12/10
-                                  -----
-lib/glob/glob.c
-       - glob_filename: finish up a series of changes to make globstar-style   
-         globbing more efficient, avoid more duplicate filenames, and be more
-         compatible with other shells that implement it
-               o collapse a sequence of **/**/** to one **
-               o note when the directory name is all ** or ends in ** so we
-                 can treat it specially when the filename is **
-         All inspired by report from Andrey Borzenkov <arvidjaar@gmail.com>
-
-lib/sh/zread.c
-       - zreadn: new function, like zread, but takes an additional argument
-         saying how many bytes to read into the local buffer.  Can be used to
-         implement `read -N' without so many one-byte calls to zreadc.  Code
-         from Mike Frysinger <vapier@gentoo.org>
-
-                                  12/12
-                                  -----
-lib/glob/sm_loop.c
-       - PATSCAN (glob_patscan): if passed string already points to end of
-         pattern, return NULL immediately.  Fixes problem with
-         extglob_skipname reported by Raphaël Droz <raphael.droz@gmail.com>
-
-                                  12/13
-                                  -----
-execute_cmd.c
-       - execute_coproc: handle the command's exit status being inverted
-         (an oversight).  Fixes bug reported by DJ Mills
-         <danielmills1@gmail.com> and Andreas Schwab <schwab@linux-m68k.org>
-
-                                  12/14
-                                  -----
-lib/readline/readline.c
-       - bind_arrow_keys_internal: add MINGW key bindings for Home, End,
-         Delete, and Insert keys.  Fix from Pierre Muller
-         <pierre.muller@ics-cnrs.unistra.fr>
-
-builtins/printf.def
-       - printf_builtin: '%()T' conversion: if there is no argument supplied,
-         behave as if -1 had been supplied (current time).  ksh93-like feature
-         suggested by Clark Wang <dearvoid@gmail.com>
-
-doc/{bash.1,bashref.texi}
-       - document new printf %()T default argument behavior
-
-                                  12/15
-                                  -----
-lib/readline/display.c
-       - displaying_prompt_first_line: new variable, indicates whether or
-         not the first line of output is displaying the prompt.  Always true
-         in normal mode, sometimes false in horizontal scrolling mode
-       - rl_redisplay: set displaying_prompt_first_line to true unless we
-         are in horizontal mode; set to false in horizontal mode if the left
-         margin of the displayed line is greater than the end of the prompt
-         string
-       - rl_redisplay: when in horizontal scroll mode, don't adjust
-         _rl_last_c_pos by the wrap offset unless the line is displaying
-         a prompt containing invisible chars
-       - update line: don't adjust _rl_last_c_pos by the wrap offset unless
-         the line is displaying a prompt containing invisible chars
-       - update_line: if shrinking the line by reducing the number of
-         displayed characters, but we have already moved the cursor to the
-         beginning of the line where the first difference starts, don't
-         try to delete characters
-
-builtins/read.def
-       - unbuffered_read: set to 2 if invoked as `read -N'
-       - if unbuffered_read is set to 2, compute the number of chars we
-         need to read and read that many with zreadn.  Posix mode still
-         uses zreadintr.  Code from Mike Frysinger <vapier@gentoo.org>
-
-doc/{bash.1,bashref.texi}
-       - read: make it clear that if read times out, it saves any input
-         read to that point into the variable arguments.  Report from
-         Fiedler Roman <Roman.Fiedler@ait.ac.at>
-
-subst.c
-       - command_substitute: change direct assignment of exit_immediately_on_error
-         to use change_flag ('e', FLAG_OFF) instead
-
-flags.c
-       - use errexit_flag as the variable modified by changes to the -e
-         option, reflect those changes to exit_immediately_on_error
-
-execute_cmd.c
-       - execute_builtin: new global variable, builtin_ignoring_errexit, set
-         to 0 by default and set to 1 if eval/source/command executing in a
-         context where -e should be ignored
-       - execute_builtin: set exit_immediately_on_error to errextit_flag
-         after executing eval/source/command in a context where -e should
-         be ignored
-
-flags.c
-       - if builtin_ignoring_errexit is set, changes to errexit_flag are
-         not reflected in the setting of exit_immediately_on_error.  Fixes
-         bug reported by Robert Schiele <rschiele@gmail.com>
-
-                                  12/23
-                                  -----
-include/posixjmp.h
-       - setjmp_nosigs: new define, call setjmp in such a way that it will
-         not manipulate the signal mask
-
-{expr,test,trap}.c
-       - setjmp_nosigs: call instead of setjmp; don't need to manipulate
-         signal mask
-
-builtins/read.def
-       - read_builtin: setjmp_nosigs: call instead of setjmp; don't need
-         to manipulate signal mask
-
-builtins/evalstring.c:
-       - parse_and_execute: setjmp_nosigs: call instead of setjmp; don't need
-         to manipulate signal mask
-       - parse_string: setjmp_nosigs: call instead of setjmp; don't need
-         to manipulate signal mask
-       - parse_and_execute: save and restore the signal mask if we get a
-         longjmp that doesn't cause us to return or exit (case DISCARD)
-
-                                  12/24
-                                  -----
-general.c
-       - bash_tilde_expand: only set interrupt_immediately if there are no
-         signals trapped; we want to jump to top level if interrupted but
-         not run any trap commands
-
-                                  12/25
-                                  -----
-jobs.c
-       - run_sigchld_trap: no longer set interrupt_immediately before calling
-         parse_and_execute, even if this is no longer run in a signal handler
-         context
-
-input.c
-       - getc_with_restart: add call to QUIT instead of CHECK_TERMSIG
-
-parse.y
-       - yy_stream_get: now that getc_with_restart calls QUIT, don't need to
-         set interrupt_immediately (already had call to run_pending_traps)
-
-execute_cmd.c
-       - execute_subshell_builtin_or_function,execute_function,execute_in_subshell:
-         setjmp_nosigs: call instead of setjmp when saving return_catch; don't
-         need to manipulate signal mask
-       - execute_subshell_builtin_or_function,execute_in_subshell:
-         setjmp_nosigs: call instead of setjmp where appropriate when saving
-         top_level; don't need to manipulate signal mask if we're going to
-         exit right away
-
-subst.c
-       - command_substitute: setjmp_nosigs: call instead of setjmp when saving
-         return_catch; don't need to manipulate signal mask
-       - command_substitute: setjmp_nosigs: call instead of setjmp where
-         appropriate when saving top_level; don't need to manipulate signal
-         mask if we're going to exit right away
-
-trap.c
-       - run_exit_trap: setjmp_nosigs: call instead of setjmp when saving
-         return_catch; don't need to manipulate signal mask
-       - run_exit_trap: setjmp_nosigs: call instead of setjmp where
-         appropriate when saving top_level; don't need to manipulate signal
-         mask if we're going to exit right away
-       - _run_trap_internal: setjmp_nosigs: call instead of setjmp when saving
-         return_catch; don't need to manipulate signal mask
-
-builtins/evalfile.c
-       - _evalfile: setjmp_nosigs: call instead of setjmp when saving
-         return_catch; don't need to manipulate signal mask
-
-builtins/evalstring.c
-       - evalstring: setjmp_nosigs: call instead of setjmp when saving
-         return_catch; don't need to manipulate signal mask
-
-shell.c
-       - main: setjmp_nosigs: call instead of setjmp where appropriate when
-         saving top_level; don't need to manipulate signal mask if we're
-         going to exit right away
-       - run_one_command: setjmp_nosigs: call instead of setjmp where
-         appropriate when saving top_level; don't need to manipulate signal
-         mask if we're going to exit right away
-       - run_wordexp: setjmp_nosigs: call instead of setjmp where
-         appropriate when saving top_level; don't need to manipulate signal
-         mask if we're going to exit right away
-
-eval.c
-       - reader_loop: save and restore the signal mask if we get a longjmp
-         that doesn't cause us to return or exit (case DISCARD)
-
-                                  12/26
-                                  -----
-parse.y
-       - shell_input_line_{index,size,len}: now of type size_t; in some cases
-         the unsigned property makes a difference
-       - STRING_SAVER: saved_line_{size,index} now of type size_t
-       - shell_getc: don't allow shell_input_line to grow larger than SIZE_MAX;
-         lines longer than that are truncated until read sees a newline;
-         addresses theoretical buffer overflow described by Paul Eggert
-         <eggert@cs.ucla.edu>
-       - set_line_mbstate: size_t changes like shell_getc
-       - shell_getc: if shell_input_line is larger than 32K, free it and
-         start over to avoid large memory allocations sticking around
-
-variables.c
-       - bind_global_variable: new function, binds value to a variable in
-         the global shell_variables table
-
-variables.h
-       - bind_global_variable: new extern declaration
-
-builtins/declare.def
-       - declare_internal: if -g given with name=value, but variable is not
-         found in the global variable table, make sure to call
-         bind_global_variable so the variable is created and modified at
-         global scope.  Fixes a bug where declare -g x=y could modify `x'
-         at a previous function scope
-
-command.h
-       - W_ASSIGNARRAY: new word flag, compound indexed array assignment
-
-subst.h
-       - ASS_MKGLOBAL: new assignment flag, forcing global assignment even in
-         a function context, used by declare -g
-
-execute_cmd.c
-       - fix_assignment_words: set W_ASSIGNARRAY flag if -a option given to
-         declaration builtin
-
-subst.c
-       - do_assignment_internal: explicitly handle case where we are
-         executing in a function and we want to create a global array or
-         assoc variable
-       - shell_expand_word_list: call make_internal_declare if -a option
-         given to declaration builtin (W_ASSIGNARRAY); handle -g option with
-         it (W_ASSNGLOBAL).  Fixes inconsistency noticed by Vicente Couce
-         Diaz <vituko@gmail.com>, where declare -ag foo=(bar) could modify
-         array variable foo at previous function scope, not global scope
-
-                                  12/27
-                                  -----
-bashline.c
-       - Minix needs the third argument to tputs to be a void funtion taking
-         an int argument, not an int-returning function.  Fix from
-         John E. Malmberg <wb8tyw@qsl.net> as part of VMS bash port
-
-                                  12/29
-                                  -----
-configure.ac,version.c,patchlevel.h
-       - bash-4.3-devel: new version, new shell compatibility level (43)
-
-subst.c
-       - parameter_brace_patsub: put the bash-4.2 code back in from the
-         change of 3/3 that runs the replacement string through quote
-         removal, make it dependent on shell_compatibility_level <= 42
-
-builtins/shopt.def
-       - compat42: new shopt option
-       - set_compatibility_level: change logic to set and unset various
-         compat variables and shell_compatibility_level
-
-COMPAT
-       - new documentation for bash-4.3 compatibility changes
-
-doc/{bash.1,bashref.texi}
-       - compat42: document new shopt option
-
-builtins/shopt.def
-       - set_compatibility_opts: new function, sets the various shopt
-         compat variables based on the value of shell_compatibility_level
-
-builtins/common.h
-       - set_compatibility_opts: new extern declaration
-
-variables.c
-       - BASH_COMPAT: new special variable; sets the shell compatibility
-         level.  Accepts values in decimal (4.2) or integer (42) form;
-         Unsetting variable, setting it to empty string, or setting it to
-         out-of-range value sets the shell's compatibility level to the
-         default for the current version.  Valid values are 3.1/31 through
-         the current version
-       - sv_shcompat: new function implementing logic for BASH_COMPAT
-
-variables.h
-       - sv_shcompat: new extern declaration
-
-doc/{bash.1,bashref.texi}
-       - BASH_COMPAT: description of new variable
-
-lib/readline/complete.c
-       - _rl_colored_stats: default back to 0 for 4.3 release branch
-
-                                1/5/2013
-                                --------
-quit.h
-       - remove spurious call to itrace in CHECK_WAIT_INTR
-
-bashline.c
-       - bash_event_hook: if we're going to jump to top_level, make sure we
-         clean up after readline() by calling rl_cleanup_after_signal().
-         Fixes bug reported against devel branch by Raphaël Droz
-         <raphael.droz@gmail.com>
-       - bash_event_hook: reset the event hook before checking for signals
-         or traps in case we longjmp
-
-doc/{bash.1,bashref.texi}
-       - small additions to the set -e section to make it more clear that
-         contexts where -e is ignored extend to compound commands as well
-         as shell functions
-
-lib/readline/readline.h
-       - rl_signal_event_hook: new extern declaration
-
-lib/readline/input.c
-       - rl_signal_event_hook: new variable, hook function to call when a
-         function (currently just read(2)) is interrupted by a signal and
-         not restarted
-       - rl_getc: call rl_signal_event_hook instead of rl_event_hook
-
-lib/readline/doc/rltech.texi
-       - rl_signal_event_hook: document new function
-
-bashline.c
-       - changes to set rl_signal_event_hook instead of rl_event_hook
-
-lib/readline/readline.h
-       - change readline version numbers to 6.3
-
-                                   1/6
-                                   ---
-doc/{bash.1,bashref.texi}
-       - a couple of changes to the descriptions of the ERR trap and its
-         effects based on a message from Rob Nagler <nagler@bivio.biz>
-
-                                   1/9
-                                   ---
-expr.c
-       - expassign: invalidate curlval before freeing and NULLing tokstr to
-         avoid aliasing issues.  Fixes bug reported by Eduardo A. Bustamante
-         López<dualbus@gmail.com>  and Dan Douglas <ormaaj@gmail.com>
-
-braces.c
-       - array_concat: don't be so aggressive in trying to short-circuit. We
-         can only short-circuit if we have a single-element array where the
-         element is an empty string (array[0] == "" array[1] = 0x0).  Existing
-         practice requires us to replicate arrays and prefix or append empty
-         strings.  Fixes bug reported by Eduardo A. Bustamante López
-         <dualbus@gmail.com>
-
-                                  1/11
-                                  ----
-execute_cmd.c
-       - execute_builtin: since mapfile uses evalstring() to run its callbacks
-         internally, just like eval, so it needs to handle the case where the
-         temp environment given to mapfile persists throughout the entire
-         set of callback commands.  This might be a problem with trap also, but
-         trap isn't run in the same way.  Fixes bug reported by Dan Douglas
-         <ormaaj@gmail.com>
-
-                                  1/13
-                                  ----
-redir.c
-       - redirection_error: before expanding the redirection word (if
-         expandable_redirection_filename returns true), disable command
-         substitution during expansion.  Fixes bug reported by Dan Douglas
-         <ormaaj@gmail.com>
-
-subst.c
-       - expand_word_internal: case '\\': if the next character is an IFS
-         character, and the expansion occurs within double quotes, and the
-         character is not one for which backslash retains its meaning, add
-         the (escaped) '\' and the (escaped) character.  Fixes bug reported
-         by Dan Douglas <ormaaj@gmail.com>
-
-                                  1/15
-                                  ----
-builtins/cd.def
-       - cd_builtin: make sure call to internal_getopt handles -e option.
-         Fixes bug reported by <mashimiao.fnst@cn.fujitsu.com>
-
-                                  1/17
-                                  ----
-subst.c
-       - expand_word_list_internal: make sure tempenv_assign_error is
-         initialized to 0
-
-execute_cmd.c
-       - execute_simple_command: make sure tempenv_assign_error is reset to 0
-         after it's tested to see if an error should force the shell to exit.
-         Fixes problem where a the failure of a tempenv assignment preceding
-         a non-special builtin `sticks' and causes the next special builtin
-         to exit the shell.  From a discussion on bug-bash started by
-         douxin <wq-doux@cn.fujitsu.com>
-
-                                  1/20
-                                  ----
-subst.c
-       - parameter_brace_expand_rhs: call stupidly_hack_special_variables
-         after assigning with ${param[:]=word} even if IFS is changing.
-         Suggested by Dan Douglas <ormaaj@gmail.com> [TENTATIVE, needs work
-         on IFS side effects]
-
-command.h
-       - W_GLOBEXP (which was unused) is now W_SPLITSPACE (which isn't used
-         yet)
-
-{execute_cmd,subst,variables}.c
-       - removed all code that mentioned W_GLOBEXP
-       - removed mention of gnu_argv_flags and code that set it
-
-                                  1/22
-                                  ----
-subst.c
-       - param_expand: set W_SPLITSPACE if we expand (unquoted) $* and
-         IFS is unset or null so we can be sure to split this on spaces
-         no matter what happens with IFS later
-       - expand_word_internal: note that param_expand returns W_SPLITSPACE
-         in the returned word flags and keep track of that state with
-         `split_on_spaces'
-
-                                  1/23
-                                  ----
-subst.c
-       - expand_word_internal: if split_on_spaces is non-zero, make sure
-         we split `istring' on spaces and return the resultant word.  The
-         previous expansions should have quoted spaces in the positional
-         parameters where necessary.  Suggested by Dan Douglas
-         <ormaaj@gmail.com>
-
-execute_cmd.c
-       - execute_command_internal: make sure any subshell forked to run a
-         group command or user subshell at the end of a pipeline runs any
-         EXIT trap it sets.  Fixes debian bash bug 698411
-         http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=698411
-
-subst.c
-       - shell_expand_word_list: fix code that creates args for and calls
-         make_internal_declare to avoid calling it twice (missing `else'
-         in 12/26 change)
-       - do_assignment_internal: fix code from 12/26 change to fix problem
-         where an existing assoc variable could be converted to an array
-         without checking `mkassoc'
-
-                                  1/24
-                                  ----
-builtins/evalfile.c
-       - _evalfile: add missing `close (fd)' calls before returning to
-         avoid fd leaks.  Bug and fix from Roman Rakus <rrakus@redhat.com>
-
-                                  1/25
-                                  ----
-builtins/read.def
-       - read_builtin: don't try to play tricks with the top of the unwind-
-         protect stack after read gets a SIGALRM; save input_string to new
-         memory, run the stack, then restore input_string and assign the
-         variables.  Part of fix for bug reported by konsolebox
-         <konsolebox@gmail.com>; the rest of the fix is with the changes in
-         trap and signal handling and doing away with interrupt_immediately
-
-                                  1/26
-                                  ----
-redir.c
-       - redirection_expand, write_here_string, write_here_document: before
-         calling any of the word expansion functions, after setting
-         expanding_redir to 1 (which bypasses the temp environment in the
-         variable lookup functions), call sv_ifs to reset the cached IFS-
-         related variables set by subst.c:setifs().  This ensures that
-         redirections will not get any IFS values that are set in the
-         temporary environment, as Posix specifies.  Then, after the word
-         expansions, after resetting expanding_redir to 0, call sv_ifs
-         again to make sure the cached IFS values are set from any
-         assignments in the temporary environment.  We force executing_builtin
-         to 1 to `fool' the variable lookup functions into using any temp
-         environment, then reset it to its old value after sv_ifs returns.
-         This is what allows read() to use the (cached) IFS variables set
-         in the temp environment. Fixes inconsistency reported by Dan Douglas
-         <ormaaj@gmail.com>
-
-                                  1/29
-                                  ----
-lib/readline/display.c
-       - update_line: fix off-by-one error when updating vis_lbreaks array
-         in a multibyte locale that occurs when moving multibyte chars from
-         one line down to another.  Bug report and fix from Egmont
-         Koblinger <egmont@gmail.com>
-
-                                  1/30
-                                  ----
-configure.ac
-       - changed version to 4.3-alpha
-
-redir.c
-       - redir_open: handle open returning -1/EINTR, which seems to happen
-         a lot with FIFOs and SIGCHLD, and call QUIT to handle other
-         signals that can interrupt open(2).  Bug report and initial fix
-         from Mike Frysinger <vapier@gentoo.org>
-
-                                  1/31
-                                  ----
-subst.c
-       - parameter_brace_expand: make sure to propagate the PF_ASSIGNRHS flag
-         to parameter_brace_expand_word
-       - parameter_brace_expand_word: make sure that if the PF_ASSIGNRHS flag
-         is set and we are expanding ${a[@]} or ${a[*]} we set quoted to
-         include Q_DOUBLE_QUOTES before calling array_value_internal, mirroring
-         what we do for $@ and $*.  Fixes inconsistency reported by Dan
-         Douglas <ormaaj@gmail.com>
-
-configure.ac
-       - use AC_CHECK_TOOL instead of AC_CHECK_PROG to check for ar, since it
-         will find $host-prefixed versions of utilities.  Report and fix from
-         Mike Frysinger <vapier@gentoo.org>
-
-builtins/setattr.def
-       - set_var_attribute: check whether bind_variable (called when the
-         variable whose attributes are being modified is found in the temp
-         environment) just modified a read-only global variable, and don't
-         bother marking the temporary variable for propagation if so.  The
-         propagation is superfluous and will result in a strange error
-         message
-
-                                   2/2
-                                   ---
-variables.c
-       - initialize_shell_variables: don't try to import function definitions
-         with invalid names from the environment if already in posix mode,
-         but create them as (invisible) exported variables so they pass
-         through the environment.  Print an error message so user knows
-         what's wrong.  Fixes bug reported by Tomas Trnka <ttrnka@mail.muni.cz>
-
-                                   2/9
-                                   ---
-
-builtins/read.def
-       - sigalrm_seen, alrmbuf: now global so the rest of the shell (trap.c)
-         can use them
-       - sigalrm: just sets flag, no longer longjmps to alrmbuf; problem was
-         longjmp without manipulating signal mask, leaving SIGALRM blocked
-
-quit.h
-       - move CHECK_ALRM macro here from builtins/read.def so trap.c:
-         check_signals() can call it
-
-trap.c
-       - check_signals: add call to CHECK_ALRM before QUIT
-       - check_signals_and_traps: call check_signals() instead of including
-         CHECK_ALRM and QUIT inline.  Integrating check for read builtin's
-         SIGALRM (where zread call to check_signals_and_traps can see it)
-         fixes problem reported by Mike Frysinger <vapier@gentoo.org>
-
-                                  2/12
-                                  ----
-lib/glob/xmbsrtowcs.c
-       - xdupmbstowcs2: fixed but where end of string was not handled
-         correctly, causing loop to go past end of string in a bunch of cases.
-         Fixes bug reported by "Dashing" <dashing@hushmail.com>
-
-
-                                  2/13
-                                  ----
-builtins/pushd.def
-       - popd_builtin: treat any argument that isn't -n or of the form
-         [-+][[:digit:]]* as an error.  Fixes problem reported by Bruce
-         Korb <bruce.korb@gmail.com>
-
-                                  2/14
-                                  ----
-configure.ac
-       - add check for sig_atomic_t; already a placeholder for it in
-         config.h.in
-
-                                  2/15
-                                  ----
-subst.c
-       - do_compound_assignment: don't call assign_compound_array_list with
-         a NULL variable in case make_local_xxx_variable returns NULL
-         (it will if you try to shadow a readonly or noassign variable).
-         Fixes bug reported by Richard Tollerton <rich.tollerton@ni.com>
-
-                                  2/16
-                                  ----
-variables.c
-       - make_local_variable: print error messager if an attempt is made to
-         create a local variable shadowing a `noassign' variable.  Previously
-         we just silently refused to do it
-
-trap.[ch]
-       - get_original_signal: now global so rest of the shell can use it
-
-sig.c
-       - initialize_shell_signals: install a signal handler for SIGTERM
-         that does nothing except set a sigterm_received flag instead of
-         ignoring it with SIG_IGN, as long as SIGTERM is not ignored when
-         the shell is started.  Use get_original_signal early to get the
-         original handler, since we will do that later anyway
-       - set_signal_handler: if installing sigterm_sighandler as the SIGTERM
-         handler, make sure to add SA_RESTART flag to make it as close to
-         SIG_IGN as possible
-
-sig.h
-       - sigterm_sighandler: new extern declaration
-
-quit.h
-       - RESET_SIGTERM: set sigterm_receved to 0
-       - CHECK_SIGTERM: check sigterm_received; if it's non-zero, treat it
-         as a fatal signal and call termsig_handler to exit the shell
-
-jobs.c
-       - make_child: call RESET_SIGTERM just before fork() so we can detect
-         if the child process received a SIGTERM before it's able to change
-         the signal handler back to what it was when the shell started
-         (presumably SIG_DFL).  Only has effect if the shell installed
-         sigterm_sighandler for SIGTERM, interactive shells that were not
-         started with SIG_IGN as the SIGTERM handler
-       - make_child: call RESET_SIGTERM in the parent after fork() so the
-         rest of the shell won't react to it
-
-execute_cmd.c
-       - execute_simple_command: call CHECK_SIGTERM after make_child in child
-         to catch SIGTERM received after fork() and before restoring old
-         signal handlers
-       - execute_disk_command: call CHECK_SIGTERM after make_child in child
-         process after restoring old signal handlers and again just before
-         calling shell_execve.  Fixes race condition observed by
-         Padraig Brady <p@draigbrady.com> when testing with his `timeout'
-         program
-
-lib/readline/display.c
-       - open_some_spaces: new function, subset of insert_some_chars that just
-         opens up a specified number of spaces to be overwritten
-       - insert_some_spaces: now just calls to open_some_spaces followed by
-         _rl_output_some_chars
-       - update_line: use col_temp instead of recalculating it using
-         _rl_col_width in the case where we use more columns with fewer bytes
-       - update_line: use open_some_spaces and then output the right number
-         of chars instead of trying to print new characters then overwrite
-         existing characters in two separate calls.  This includes removing
-         some dodgy code and making things simpler.  Fix from Egmont
-         Koblinger <egmont@gmail.com>
-       - use new variable `bytes_to_insert' instead of overloading temp in
-         some code blocks (nls - nfd, bytes that comprise the characters
-         different in the new line from the old)
-
-                                  2/18
-                                  ----
-redir.c
-       - do_redirection_internal: add undoable redirection for the implicit
-         close performed by the <&n- and >&n- redirections.  Fixes bug
-         reported by Stephane Chazelas <stephane.chazelas@gmail.com>
-
-                                  2/19
-                                  ----
-sig.c
-       - termsig_handler: an interactive shell killed by SIGHUP and keeping
-         command history will try to save the shell history before exiting.
-         This is an attempt to preserve the save-history-when-the-terminal-
-         window-is-closed behavior
-
-                                  2/21
-                                  ----
-braces.c
-       - brace_expand: if a sequence expansion fails (e.g. because the
-         integers overflow), treat that expansion as a simple string, including
-         the braces, and try to process any remainder of the string.  The
-         remainder may include brace expansions.  Derived from SuSE bug
-         804551 example (https://bugzilla.novell.com/show_bug.cgi?id=804551)
-
-                                  2/23
-                                  ----
-{quit,sig}.h,sig.c
-       - sigterm_received declaration now in sig.h; type is sig_atomic_t
-       - sigwinch_received type now sig_atomic_t
-       - sig.h includes bashtypes.h and <signal.h> if SIG_DFL not defined
-         (same logic as trap.h) to pick up sig_atomic_t
-
-unwind_prot.c
-       - include sig.h before quit.h (reverse order)
-
-                                  2/27
-                                  ----
-builtins/shopt.def
-       - reset_shopt_options: make sure check_window_size is reset to the
-         default from config.h, not unconditionally to 0
-
-jobs.[ch]
-       - last_made_pid, last_asynchronous_pid: now volatile.  Change from SuSE
-
-jobs.c
-       - wait_for: if we're using sigaction to install a handler for SIGCHLD,
-         make sure we specify SA_RESTART
-
-lib/{tilde,readline}/shell.c
-       - get_home_dir: instead of looking in the password file every time,
-         look once and cache the result
-
-sig.[ch]
-       - sigwinch_received, sigterm_received: now `volatile' qualified
-
-sig.c,quit.h
-       - interrupt_state,terminating_signal: now sig_atomic_t
-
-                                   3/1
-                                   ---
-MANIFEST,examples/*
-       - removed around 120 files without FSF copyrights; requested by
-         Karl Berry in early January
-
-                                   3/2
-                                   ---
-lib/malloc/malloc.c
-       - morecore: only check whether SIGCHLD is trapped if SIGCHLD is defined
-
-doc/bashref.texi
-       - Fixed most of the examples in the GNU Parallel section to use better
-         shell idioms following complaints on bug-bash; added a couple of
-         examples and smoothed out the text
-
-quit.h
-       - include "sig.h" for sig_atomic_t
-
-lib/readline/display.c
-       - update_line: when inserting one or more characters at the end of
-         the display line in a non-multibyte environment, just write from the
-         first difference to the end of the line and return. We don't have
-         to adjust _rl_last_c_pos.  This is needed to adjust from the old
-         two-part copy to a single call to _rl_output_some_chars (change of
-         2/16)
-
-                                   3/4
-                                   ---
-Makefile.in,doc/Makefile.in
-       - PACKAGE_TARNAME, docdir: new variables substituted by autoconf
-       - OTHER_DOCS,OTHER_INSTALLED_DOCS: new variables with auxiliary
-         documentation files to be installed into $(docdir)
-       - install: add new rule to install $(OTHER_DOCS)
-       - uninstall: add new rule to uninstall $(docdir)/$(OTHER_INSTALLED_DOCS)
-
-doc/bash.1
-       - add URL to `POSIX' file in `SEE ALSO' section; put pointer to that
-         section in --posix and set -o posix descriptions
-
-examples/
-       - removed around 110 examples at the request of the FSF due to copyright
-         issues
-
-                                   3/5
-                                   ---
-builtins/setattr.def
-       - readonly: modified help text slightly to make it clearer that
-         functions aren't changed or displayed unless the -f option is given.
-         Report from <gotmynick@gmail.com>
-
-                                   3/9
-                                   ---
-include/typemax.h
-       - SIZE_MAX: define to 65535 (Posix minimum maximum) if not defined
-
-parse.y
-       - include "typemax.h" for possible SIZE_MAX definition, make sure we
-         include it after shell.h
-
-{braces,expr}.c
-       - include "typemax.h" for possible INTMAX_MIN and INTMAX_MAX definitions
-
-                                  3/10
-                                  ----
-bashline.c
-       - bash_default_completion: make sure completion type of `!' (same as
-         TAB but with show-all-if-ambiguous set) and glob-word-completion
-         sets rl_filename_completion_desired to 0 so extra backslashes don't
-         get inserted by `quoting' the completion.  We can't kill all the
-         matches because show-all-if-ambiguous needs them.   Bug report from
-         Marcel (Felix) Giannelia <info@skeena.net>
-
-[bash-4.3-alpha frozen]
-
-                                  3/14
-                                  ----
-general.c
-       - trim_pathname: use memmove instead of memcpy since the source and
-         destination pathnames may overlap.  Report and fix from Matthew
-         Riley <mattdr@google.com>
-
-                                  3/18
-                                  ----
-configure.ac
-       - socklen_t is defined as `unsigned int' if configure can't find it
-
-                                  3/20
-                                  ----
-lib/readline/complete.c
-       - S_ISVTX: since it's not defined on all platforms (Minix), make sure
-         its use is protected with #ifdef
-
-                                  3/21
-                                  ----
-doc/{bash.1,bashref.texi}
-       - Added mention of ${!name[@]} and ${!name[*]} expansions to get all
-         indices of an array.  Suggested by Jonathan Leffler
-         <jonathan.leffler@gmail.com>
-
-                                  3/24
-                                  ----
-subst.h
-       - SD_IGNOREQUOTE: new define for skip_to_delim; if set, means that
-         single quotes (for now) will be treated as ordinary characters
-
-subst.c
-       - skip_to_delim: handle SD_IGNOREQUOTE. no callers use it for now
-
-                                  3/25
-                                  ----
-support/config.{guess,sub}
-       - updated to versions from autoconf-2.69
-
-                                  3/31
-                                  ----
-lib/sh/shquote.c
-       - sh_single_quote: short-circuit quoting a single "'" instead of
-         creating a long string with empty single-quoted strings
-
-parser.h
-       - DOLBRACE_QUOTE2: new define, like DOLBRACE_QUOTE, but need to single-
-         quote results of $'...' expansion because quote removal will be
-         done later.  Right now this is only done for ${word/pat/rep}
-
-parse.y
-       - parse_matched_pair: set state to DOLBRACE_QUOTE2 for pattern
-         substitution word expansion so we don't treat single quote specially
-         in the pattern or replacement string
-       - parse_matched_pair: if we're parsing a dollar-brace word expansion
-         (${...}) and we're not treating single quote specially within
-         double quotes, single-quote the translation of $'...' ansi-c
-         escaped strings.  Original report and fix from Eduardo A.
-         Bustamante López <dualbus@gmail.com>
-
-subst.c
-       - extract_dollar_brace_string: ${word/pat/rep} scanning now sets the
-         DOLBRACE_QUOTE2 flag instead of DOLBRACE_QUOTE so we don't treat
-         single quotes specially within a double-quoted string
-
-execute_cmd.c
-       - fix_assignment_words: skip over assignment statements preceding a
-         command word before trying to figure out whether or not assignment
-         statements following a possible declaration command should be 
-         treated specially.  Fixes bug reported by Dan Douglas
-         <ormaaj@gmail.com>
-
-                                   4/4
-                                   ---
-lib/readline/readline.c
-       - _rl_dispatch_subseq: only call _rl_vi_set_last (and check whether
-         the key is a text modification command) if the key sequence length
-         is 1.  That keeps the arrow keys from setting the last command
-         when called in vi command mode.  Fixes bug reported by Ian A.
-         Watson <watson_ian_a@lilly.com>
-
-                                   4/6
-                                   ---
-lib/readline/bind.c
-       - rl_parse_and_bind: when parsing a double-quoted string as the value
-         of a variable, make sure we skip past the leading double quote.
-         Fix from Andreas Schwab <schwab@linux-m68k.org>
-
-variables.c
-       - hash_lookup: set new local variable last_table_searched to the table
-         a successful lookup appears in; tested in make_local_variable to
-         solve the problem below
-       - make_local_variable: if we find a variable with the tempenv flag
-         set at the same `level' as variable_context', but not found in the
-         temporary_env (temp environment preceding the builtin), return it.
-         The temp environment preceding the function call has already been
-         merged (in execute_function) into the list of variable contexts the
-         function sees as shell_variables by the time this is called.  Fixes
-         inconsistency pointed out by Dan Douglas <ormaaj@gmail.com>
-
-subst.c
-       - expand_arith_string: expanded out contents of expand_string,
-         expand_string_internal, expand_string_if_necessary to create a
-         WORD_DESC and call call_expand_word_internal() on it directly.
-         We don't want process substitution to be performed ( 1<(2) ) should
-         mean something different in an arithmetic expression context.
-         It doesn't work to just turn on the DQUOTE flag, since that means
-         that things like ${x["expression"]} are not expanded correctly.
-         Fixes problem pointed out by Dan Douglas <ormaaj@gmail.com>
-
-                                  4/13
-                                  ----
-subst.c
-       - process_substitute: run the EXIT trap before exiting, as other
-         shells seem to.  Fixes problem pointed out by Dan Douglas
-         <ormaaj@gmail.com>
-
-lib/readline/readline.c
-       - readline_internal_setup: call rl_vi_insertion_mode to enter vi
-         mode instead of rl_vi_insert_mode to avoid resetting the saved last
-         command information.  Posix says that `.' can repeat a command
-         that was entered on a previous line so we need to save the info.
-         Fixes bug reported by Ian A. Watson <watson_ian_a@lilly.com>
-
-                                  4/14
-                                  ----
-lib/readline/complete.c
-       - rl_completion_matches: make sure xrealloc returns something non-null
-         (can happen when interrupted by a signal) before trying to add
-         matches to match_list
-
-subst.c
-       - array_remove_pattern: return NULL right away if array_variable_part
-         returns an invisible variable
-       - array_length_reference: handle array_variable_part returning an
-         invisible variable
-       - get_var_and_type: handle array_variable_part returning an invisible
-         variable
-
-                                  4/15
-                                  ----
-execute_cmd.c
-       - execute_command_internal: make sure to run the EXIT trap for group
-         commands anywhere in pipelines, not just at the end.  From a point
-         raised by Andreas Schwab <schwab@linux-m68k.org>
-
-variables.c
-       - bind_int_variable: make sure invisible flag is unset.  Fixes problems
-         like "declare -ai a; : $(( a[4]=4 ));"
-
-arrayfunc.c
-       - array_variable_part: return variable even if invisible flag set,
-         callers must handle invisible vars
-
-                                  4/18
-                                  ----
-builtins/set.def
-       - unset_builtin: if -n flag given, call unset_nameref instead of
-         unset_variable
-
-variables.c
-       - find_variable_nameref: print warning message if nameref circular
-         reference detected, return NULL and let caller deal with it
-
-builtins/declare.def
-       - declare_builtin: only disallow global references at this point if
-         we are at the global scope
-
-                                  5/16
-                                  ----
-configure.ac
-       - update release status to beta
-
-                                  5/23
-                                  ----
-trap.c
-       - run_pending_traps: save and restore pipeline around calls to
-         evalstring() in case we get a trap while running a trap. Have to
-         figure out the recursive running traps issue elsewhere.  Fixes
-         bug reported by Roman Rakus <rrakus@redhat.com>
-       - run_pending_traps: make sure to set running_trap to the appropriate
-         signal value when running a trap command
-       - run_pending_traps: short-circuit immediately if running_trap set
-         when invoked.  Could change this later to only skip if it would
-         run the same trap as currently being run (running_trap == sig + 1)
-
-configure.ac
-       - add warning if bison not found
-
-lib/readline/doc/rltech.texi
-       - new section with an example program illustrating the callback
-         interface. Suggested by Peng Yu <pengyu.ut@gmail.com>
-
-examples/loadables/Makefile.in
-       - remove references to `cut' and `getconf', which were removed in
-         early March
-
-                                  5/28
-                                  ----
-lib/sh/pathphys.c
-       - sh_realpath: correct inverted two arguments to call to sh_makepath.
-         Report and fix from Julien Thomas <jthomas@exosec.fr>
-
-                                   6/7
-                                   ---
-execute_cmd.c
-       - executing_line_number: the else clauses that are conditional on
-         various options being defined can simply be if clauses -- they are
-         mutually exclusive and all have `return' in the body.  Fixes bug
-         reported by Flavio Medeiros <flaviomotamedeiros@gmail.com>
-
-                                  6/25
-                                  ----
-lib/readline/readline.c
-       - readline_internal_setup: only sent the meta-key enable string to the
-         terminal if we've been told to use one and the terminal has been
-         successfully initialized (RL_ISSTATE (RL_STATE_TERMPREPPED) != 0).
-         Suggested by Dan Mick <dan.mick@inktank.com>
-
-lib/readline/signals.c
-       - _rl_signal_handler: call any defined signal hook after calling
-         rl_resize_terminal when handling a SIGWINCH.  We already have called
-         the original SIGWINCH handler but will not be resending the signal
-         to ourselves
-
-                                  6/27
-                                  ----
-lib/readline/doc/history.3, doc/bash.1
-       - fix description of the `$' modifier to note that it expands to the
-         last *word*, which is not always the last argument.  Report from
-         ariyetz@gmail.com via gnu.org RT
-
-                                  6/29
-                                  ----
-lib/glob/smatch.c
-       - glob_asciiranges: initialize to value of GLOBASCII_DEFAULT instead
-         of 0 (0 if not defined)
-
-configure.ac,config.h.in
-       - --enable-glob-asciiranges-default: new option, controls the value of
-         GLOBASCII_DEFAULT; use it to turn globasciiranges shopt option on
-         by default
-
-doc/bashref.texi
-       - document new --enable-glob-asciiranges-default configure option
-
-variables.c
-       - assign_in_env: implement += value appending semantics for assignments
-         preceding command names
-
-                                   7/4
-                                   ---
-expr.c
-       - set lasttok = NUM in all of the functions that result in a number,
-         even if it's a boolean, to avoid errors with constructs like
-         1 * x = 1, which should be an asignment error.  Fixes problem
-         pointed out by Dan Douglas <ormaaj@gmail.com>
-
-parse.y
-       - decode_prompt_string: don't bother to call strcpy if
-         polite_directory_format returns its argument unchanged.  It's not
-         necessary and Mac OS X 10.9 aborts because of a supposed overlapping
-         string copy.  Bug and fix from simon@hitzemann.org
-
-subst.c
-       - parameter_brace_find_indir: new function, code from
-         parameter_brace_expand_indir that looks up the indirectly-referenced
-         variable, but does not expand it
-       - parameter_brace_expand_indir: call parameter_brace_find_indir to
-         look up indirected variable reference
-       - get_var_and_type: call parameter_brace_find_indir if it looks like we
-         are trying to manipulate an indirect variable reference like
-         ${!b%%foo}.  This makes a difference if !b references an array
-         variable.  Bug report from Dan Douglas <ormaaj@gmail.com>
-
-                                   7/6
-                                   ---
-lib/sh/casemod.c
-       - sh_modcase: make sure argument passed to is_basic is <= UCHAR_MAX,
-         since cval can convert something to a wchar_t greater than UCHAR_MAX.
-         Fixes bug reported by Tomasz Tomasik <scx.mail@gmail.com>
-
-                                   7/8
-                                   ---
-lib/readline/history.c
-       - add_history_time: if history_length == 0, referencing history_length
-         - 1 will result in an array bounds error, so make history_length be
-         at least 1 before going on.  Fixes bug reported by Geng Sheng Liu
-         <gsliu.tju@gmail.com>
-
-builtins/setattr.def
-       - show_func_attributes: display definition (if NODEFS argument is 0) and
-         attributes for a particular function; used by `declare -fp name'
-
-builtins/declare.def
-       - declare_internal: call show_func_attributes if -f supplied with -p.
-         Fixes inconsistency observed by Linda Walsh <bash@tlinx.org>
-
-builtins/common.h
-       - new extern declaration for show_func_attributes
-
-builtins/read.def
-       - read_builtin: check the first supplied variable name for validity
-         before attempting to read any input, since we know we will have to
-         at least use that one.  Don't check any other names yet.  Suggested
-         by jidanni@jidanni.org
-
-                                  7/10
-                                  ----
-redir.c
-       - do_redirection_internal: when closing a file descriptor with
-         r_close_this ([n]<&-) count close errors as redirection errors if
-         errno ends up as EIO or ENOSPC.  Originally reported back in April
-         2012 by Andrey Zaitsev <jstcdr@gmail.com>
-
-                                  7/11
-                                  ----
-redir.c
-       - do_redirection_internal: before calling check_bash_input, make sure
-         that we don't call check_bash_input for an asynchronous process that
-         is replacing stdin with something else. The seek backwards affects
-         the parent process as well, since parents and children share the
-         file pointer. Fixes problem originally reported in March 2013 by
-         Martin Jackson <mjackson220.list@gmail.com>
-
-                                  7/13
-                                  ----
-doc/{bash.1,bashref.texi}
-       - slight change to add a description of `shopt -o' suggested by Bruce
-         Korb <bruce.korb@gmail.com>
-
-                                  7/19
-                                  ----
-lib/readline/histfile.c
-       - history_do_write: if close returns < 0, make sure we restore the
-         backup history file and return a non-zero value
-       - history_truncate_file: if write or close return < 0, make sure we
-         return a non-zero value
diff --git a/CWRU/OS-BUGS/att-yacc-bug b/CWRU/OS-BUGS/att-yacc-bug
deleted file mode 100644 (file)
index 4c1370b..0000000
+++ /dev/null
@@ -1,111 +0,0 @@
-From chet@cwns1.INS.CWRU.Edu Sun Aug 26 17:46:14 1990
-Flags: 50
-Received: from cwns1.INS.CWRU.Edu by cwjcc.INS.CWRU.Edu with SMTP (5.61+ida+/CWRU-1.3-decnet)
-       id AA17813; Sun, 26 Aug 90 17:46:14 -0400 (from chet@cwns1.INS.CWRU.Edu for /usr/local/bin/m2mbox /usr/homes/chet/mbox)
-Received:  by cwns1.INS.CWRU.Edu (5.61+ida+/CWRU-1.3-client)
-       id AA00962; Sun, 26 Aug 90 17:46:31 -0400 (from chet for chet@cwjcc.INS.CWRU.Edu)
-Date: Sun, 26 Aug 90 17:01:56 -0400
-From: Chet Ramey <chet@cwns1.INS.CWRU.Edu>
-To: trent@jove.cs.pdx.edu
-Subject: Re: bash on triton
-Cc: chet@cwns1.INS.CWRU.Edu
-Reply-To: chet@po.CWRU.Edu
-In-Reply-To: Message from trent@jove.cs.pdx.edu of Fri, 24 Aug 90 16:07:19 PDT
-Message-Id: <9008262101.AA00902.SM@cwns1.INS.CWRU.Edu>
-Read-Receipt-To: chet@po.CWRU.Edu
-
-> Actually, it just that PSU gets the short end of the stick compared to
-> the other state universities because we don't have a division I
-> football team (no :-).
-
-Yeah, but didn't you guys produce Neil Lomax (lo these many years ago)?  What
-have the other schools given the NFL lately?
-
-> First thing I noticed is that this alias fails:
->      alias  .root=/usr/local/.root
-> The error is:
->      alias: .root: not a valid shell identifier
-
-This is correct according to Posix 1003.2a draft 5.  An alias must obey this
-pseudo-regexp:
-       [a-zA-Z_][a-zA-Z0-9_]*
-
-(That is, only letters, digits, and underscores, and it may not begin with an
-underscore).  This is in the latest version of the manual page, the one in
-the documentation directory.
-
-> Also it crashes when PROMPT_COMMAND is set, thus:
->      bash$ PROMPT_COMMAND="A=`pwd`"
->      bash$                           # just hit return
->      bash: free: Called with already freed block argument
-
-I am sorting through this problem right now, and I've discovered a few things
-(none complimentary to Sun).
-
-First of all, this crash happens because Sun's programmers are lazy.  The Sun
-malloc allows you to free things multiple times, instead of doing the old
-
-       if (x)
-               free(x);
-       x = NULL;
-
-trick.  The Gnu malloc disallows that.
-
-The root of this set of problems is that the Sun yyparse() is not reentrant
-(`impure').  First of all, /usr/lib/yaccpar has changed a number of things
-to be dynamically allocated that were once static arrays (the state stack
-and the value stack are the two major ones).  Second, some things that used
-to be automatic variables to yyparse (like the state stack) are now
-globally static variables in /usr/lib/yaccpar.  This means no more
-indirectly recursive calls to yyparse().  This is pure bogusness, and
-breaks backwards compatibility in a major way. 
-
-The first indirect call to yyparse() occurs when PROMPT_COMMAND is run
-through parse_and_execute() (parse.y, around line 1200).  The next call to
-yyparse() in your example (hitting return) returns quickly, putting nothing
-onto the state stack.  Of course, YYACCEPT doesn't check whether anything
-was put into the stack; it just goes ahead and frees it anyway. 
-
-The next problem arises when PROMPT_COMMAND contains a backquoted command,
-which is run through parse_and_execute() again.  It doesn't matter that
-this parse_and_execute is in a subshell; the data structures being built by
-Sun's yacc come along for free when bash forks.  The state stack gets all
-screwed up and a segmentation fault is the inevitable result.  If Sun (and,
-I assume, AT&T, since the SCCS line at the top of /usr/lib/yaccpar
-indicates that it is derived from S5R3.1) wants to do this kind of shit,
-they should at least provide a convenience function to clear out the state
-stack. 
-
-Both of these problems are avoided by using bison.  I have put bison on
-triton (you'll have to redo it if you want it; it looks for the parser
-skeletons in /home/chet/lib), and a bash compiled with a bison-generated
-parser does not crash given the above setting of PROMPT_COMMAND.  That bash
-is in /home/chet/bin.  I don't know how to solve these problems in a
-simple way by using the Sun yacc.
-
-`Byacc' (Berkeley Yacc), the 4.4 BSD rewrite of Yacc by Bob Corbett (who
-wrote the original version of bison), should also be OK, though I haven't
-looked at it.
-
-> That brings up something else:  Triton is set up as a mail-less
-> machine (all mail is forwarded elsewhere).  Do you want your mail
-> forwarded to CWSU??  Right now the bug reports Bash generates are
-> vanishing.  (I don't touch sendmail, and, from what I'm told, I'm
-> better off that way :-)
-
-(It's CWRU, by the way.)
-
-Don't worry, I get them all.  Look at the end of shell.c (make_bug_report)
-where it opens a pipe to `/bin/rmail chet@ins.cwru.edu'.
-
-Let me know of any more problems you encounter.
-
-Chet
-
-
---
-Chet Ramey                             ``Levi Stubbs' tears run down
-Network Services Group                   his face...''
-Case Western Reserve University        
-chet@ins.CWRU.Edu              
-
diff --git a/CWRU/OS-BUGS/bsd-rshd-bug b/CWRU/OS-BUGS/bsd-rshd-bug
deleted file mode 100644 (file)
index 54712d4..0000000
+++ /dev/null
@@ -1,46 +0,0 @@
-From chet@odin.INS.CWRU.Edu Sat Apr 27 19:54:13 1991
-Flags: 50
-Received: from odin.INS.CWRU.Edu by usenet.INS.CWRU.Edu with SMTP (5.65b+ida+/CWRU-1.5-UUCPGW)
-       id AA05700; Sat, 27 Apr 91 19:54:13 -0400 (from chet@odin.INS.CWRU.Edu for /usr/local/bin/m2mbox /usr/homes/chet/mbox)
-Received:  by odin.INS.CWRU.Edu (5.65b+ida+/CWRU-1.4-ins)
-       id AA17732; Sat, 27 Apr 91 19:54:06 -0400 (from chet for chet@usenet.INS.CWRU.Edu)
-Date: Sat, 27 Apr 91 19:31:16 -0400
-From: Chet Ramey <chet@odin.INS.CWRU.Edu>
-To: bfox@ai.mit.edu
-Subject: Re: [pedz@aixwiz.austin.ibm.com: fd 9 left open bug]
-Cc: chet@odin.INS.CWRU.Edu, pedz@aixwiz.austin.ibm.com
-Reply-To: chet@po.CWRU.Edu
-In-Reply-To: Message from bfox@bears.ece.ucsb.edu of Wed, 24 Apr 91 12:49:33 PDT
-Message-Id: <9104272331.AA17706.SM@odin.INS.CWRU.Edu>
-Read-Receipt-To: chet@po.CWRU.Edu
-
-> Below is something I call Xemacs which goes across the net, sets up the
-> display variable and then kicks off emacs in such a way that rshd
-> terminates.  The trick is that the shell must die and all file
-> descriptors going back to rshd must be closed.  The same basic script
-> works with csh but I had to add in the "9>&-" part at the end to make
-> it work with bash.   This is because somehow, file descriptor 9 is left
-> open and I guess it must be a dup of stdin, stdout, or stderr.
-
-This is a bug alright, but it's a bug with rshd that's not fixed until
-4.3-reno.
-
-rshd sets up a pipe (int pv[2]; if you have the source to the tahoe rshd)
-to the process it executes and uses it to manage error and control output
-from over the net.  In the child process, it does a dup2(pv[1], 2), but
-never calls close(pv[1]).  Adding that code to the 4.3-tahoe rshd makes it
-(and the Xemacs script) work right.
-
-I don't know how to solve this cleanly in bash.  Doing a blanket close of
-all open file descriptors < 2, < 20 is a no-no, especially when we're not
-interactive.  csh `works' because it does the blanket close on startup, but
-csh can get away with doing that because it doesn't let you manipulate
-arbitrary file descriptors.
-
-Chet
-
---
-Chet Ramey                       Internet: chet@po.CWRU.Edu
-Case Western Reserve University          NeXT Mail: chet@macbeth.INS.CWRU.Edu
-
-``Now,  somehow we've brought our sins back physically -- and they're pissed.''
diff --git a/CWRU/OS-BUGS/bsd-tty-driver b/CWRU/OS-BUGS/bsd-tty-driver
deleted file mode 100644 (file)
index 2083e7c..0000000
+++ /dev/null
@@ -1,38 +0,0 @@
-From chet Thu Aug 13 10:42:35 1992
-Flags: 50
-Received:  by odin.INS.CWRU.Edu (5.65b+ida+/CWRU-1.5-ins)
-       id AA07004; Thu, 13 Aug 92 10:42:35 -0400 (from chet for /usr/homes/chet/bin/mailfilter.sh /usr/homes/chet/mbox)
-Date: Thu, 13 Aug 1992 10:34:47 -0400
-From: Chet Ramey <chet@odin.INS.CWRU.Edu>
-To: przemek@rrdstrad.nist.gov
-Subject: Re: output of background jobs in BASH
-Cc: bug-bash@prep.ai.mit.edu, chet
-Reply-To: chet@po.CWRU.Edu
-In-Reply-To: Message from przemek@rrdstrad.nist.gov of 12 Aug 92 18:15:53 GMT
-Message-Id: <9208131434.AA00639.SM@odin.INS.CWRU.Edu>
-Read-Receipt-To: chet@po.CWRU.Edu
-
-> I believe that this changed when I installed bash 1.12: when I put a job that
-> prints on stdout in background (^Z/bg or directly by &), the output comes out
-> staggered, as if the CR wasn't being added to the LF at the end of the lines.
-
-This is a result of bash using the BSD-style tty driver on Ultrix.  The BSD
-driver ties input and output carriage return translation together with the
-CRMOD bit.  (The CRMOD bit causes CR->LF translation on input and LF->CRLF
-translation on output.)  Unless the CRMOD bit is cleared, it is impossible
-to get a literal ^M in an input line.  Unfortunately, one of the effects of
-clearing it is the loss of output processing you've observed. 
-
-The Ultrix Posix-style tty driver can't be used because it has serious
-problems with losing typeahead when ICANON is switched on and off.  These
-characters seem to reappear later without warning, usually when a
-program that uses the BSD-style ioctls turns on CBREAK (e.g., `more').
-
-Chet
-
---
-``The use of history as therapy means the corruption of history as history.''
-       -- Arthur Schlesinger
-
-Chet Ramey, Case Western Reserve University    Internet: chet@po.CWRU.Edu
-
diff --git a/CWRU/OS-BUGS/hpux-ulimit-bug b/CWRU/OS-BUGS/hpux-ulimit-bug
deleted file mode 100644 (file)
index 7c9a341..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-The HP/UX manual page for ulimit(2) reports that ulimit(1, 0L) will return 
-the maximum file size in terms of 512-byte blocks.  It lies, at least on
-HP/UX 6.5; the number of bytes is returned.
diff --git a/CWRU/OS-BUGS/isc-posix-bug b/CWRU/OS-BUGS/isc-posix-bug
deleted file mode 100644 (file)
index 5acf416..0000000
+++ /dev/null
@@ -1,137 +0,0 @@
-Article 7946 of comp.unix.sysv386:
-Newsgroups: comp.unix.sysv386
-Path: usenet.ins.cwru.edu!agate!stanford.edu!snorkelwacker.mit.edu!think.com!zaphod.mps.ohio-state.edu!rpi!batcomputer!cornell!rochester!lubkin
-From: lubkin@cs.rochester.edu (Saul Lubkin)
-Subject: Binary patch to os.o fixes POSIX panics using VP/ix with job controlled bash
-Message-ID: <1991Apr30.034006.24056@cs.rochester.edu>
-Organization: Computer Science Department University of Rochester
-Date: Tue, 30 Apr 1991 03:40:06 GMT
-
-
-Recently, Uwe Doering posted the following article:
-
-       Article 6891 of comp.unix.sysv386:
-       Path: nancy!uunet!math.fu-berlin.de!fub!geminix.in-berlin.de!gemini
-       From: gemini@geminix.in-berlin.de (Uwe Doering)
-       Newsgroups: comp.unix.sysv386
-       Subject: Re: NAMEI panic - trap "E", address and info follows (+ patch)
-       Message-ID: <KYXPX2E@geminix.in-berlin.de>
-       Date: 13 Apr 91 00:55:41 GMT
-       References: <1991Apr10.040146.645@ddsw1.MCS.COM>
-       Organization: Private UNIX Site
-       Lines: 92
-
-       karl@ddsw1.MCS.COM (Karl Denninger) writes:
-
-       >Is anyone else having problems with a "namei" panic in ISC 2.2 (with NFS,
-       >the NFS/lockd patches, and POSIX patches applied)?
-       >
-       >I have been getting these nearly daily.  Trap type "E", address is d007962f.
-       >That's right near the end of "namei"; here's the relavent line from a "nm"
-       >on the kernel:
-       >
-       >namei               |0xd007919c|extern|       *struct( )|0x0608|     |.text
-       >
-       >Needless to say, I am most displeased with the crashes!
-       >
-       >Near as I can determine, the hardware is fine.  
-       >
-       >All pointers or ideas appreciated...
-
-       I found this bug a few days ago and was about to send a bug report
-       to ISC. The problem is "simply" a NULL pointer reference in the
-       namei() function. The machine I found this on runs ISC 2.21 with
-       the security fix installed. I fixed this bug with a binary patch. It
-       is for the module /etc/conf/pack.d/kernel/os.o. I disassembled the
-       original and then the fixed version of os.o and ran a context diff
-       over the output. Depending on what version of the kernel config kit
-       you have the addresses might be off some bytes. You can apply this
-       patch with every binary file editor.
-
-       ***************
-       *** 35349,35364 ****
-                             [%al,%al]
-               cf71:  74 1e                  je     0x1e <cf91>
-                             [0xcf91]
-       !       cf73:  0f b7 07               movzwl (%edi),%eax
-                             [%edi,%eax]
-       !       cf76:  3d 11 00 00 00         cmpl   $0x11,%eax
-                             [$0x11,%eax]
-       !       cf7b:  74 14                  je     0x14 <cf91>
-                             [0xcf91]
-       !       cf7d:  c7 45 e8 00 00 00 00   movl   $0x0,0xe8(%ebp)
-       !                     [$0x0,-24+%ebp]
-       !       cf84:  eb 19                  jmp    0x19 <cf9f>
-       !                     [0xcf9f]
-               cf86:  90                     nop    
-                             []
-               cf87:  90                     nop    
-       --- 35349,35372 ----
-                             [%al,%al]
-               cf71:  74 1e                  je     0x1e <cf91>
-                             [0xcf91]
-       !       cf73:  85 ff                  testl  %edi,%edi
-       !                     [%edi,%edi]
-       !       cf75:  74 1a                  je     0x1a <cf91>
-       !                     [0xcf91]
-       !       cf77:  0f b7 07               movzwl (%edi),%eax
-                             [%edi,%eax]
-       !       cf7a:  3d 11 00 00 00         cmpl   $0x11,%eax
-                             [$0x11,%eax]
-       !       cf7f:  74 10                  je     0x10 <cf91>
-                             [0xcf91]
-       !       cf81:  eb 15                  jmp    0x15 <cf98>
-       !                     [0xcf98]
-       !       cf83:  90                     nop    
-       !                     []
-       !       cf84:  90                     nop    
-       !                     []
-       !       cf85:  90                     nop    
-       !                     []
-               cf86:  90                     nop    
-                             []
-               cf87:  90                     nop    
-
-       I'm not absolutely sure whether the action that is now taken in case of
-       a NULL pointer is the right one, but I haven't noticed any problems,
-       and most important, there are no more kernel panics! At least not from
-       that spot. :-) The action that is taken if the pointer in _not_ NULL
-       hasn't changed (this is not very obvious from the patch, but look
-       in the disassembler listing of your own kernel for more details).
-       I use this modified kernel for over a week now and it works for
-       me. Of course, as always, I can't give you any guaranty that this
-       patch does something useful on your machine. :-)
-
-       Hope this helps you.
-
-            Uwe
-
-       PS: ISC, if you see this posting, could you drop me a note on whether
-       you have put this on your to-do list? This would save me the time
-       needed to file an official bug report.
-       -- 
-       Uwe Doering  |  INET : gemini@geminix.in-berlin.de
-       Berlin       |----------------------------------------------------------------
-       Germany      |  UUCP : ...!unido!fub!geminix.in-berlin.de!gemini
-       =======================================================================
-
-
-Here is a copy of my recent note to Uwe:
-
-
-       I've applied the binary patch that you recently poosted to comp.unix.sysv386
-       for os.o.
-
-       It works beautifully.  Previously, I had compiled bash1.07CWRU, and it worked
-       well (using POSIX job control), job control and all -- but running VP/ix under
-       this bash caused a system panic.  This evidently is the (now infamous) "POSIX
-       namei bug".  After rebuilding the kernel with a patched os.o, the problem
-       simply disappeared.  VP/ix, like everything else, now works fine under
-       bash1.07CWRU.
-
-
-                               Yours sincerely,
-
-                               Saul Lubkin
-
-
diff --git a/CWRU/OS-BUGS/next-rlogind-bug b/CWRU/OS-BUGS/next-rlogind-bug
deleted file mode 100644 (file)
index 09d0c31..0000000
+++ /dev/null
@@ -1,63 +0,0 @@
-From chet@odin.INS.CWRU.Edu Thu Mar  7 19:16:25 1991
-Flags: 50
-Received: from odin.INS.CWRU.Edu by usenet.INS.CWRU.Edu with SMTP (5.61+ida+/CWRU-1.4-UUCPGW)
-       id AA00967; Thu, 7 Mar 91 19:16:25 -0500 (from chet@odin.INS.CWRU.Edu for /usr/local/bin/m2mbox /usr/homes/chet/mbox)
-Received:  by odin.INS.CWRU.Edu (5.65+ida+/CWRU-1.4-ins)
-       id AA04437; Thu, 7 Mar 91 19:15:31 -0500 (from chet for chet@usenet.INS.CWRU.Edu)
-Date: Thu, 7 Mar 91 19:10:00 -0500
-From: Chet Ramey <chet@odin.INS.CWRU.Edu>
-To: jacob@blackbox.gore.com
-Subject: Re: Library function redefinition
-Cc: chet@odin.INS.CWRU.Edu, bfox@ai.mit.edu
-Reply-To: chet@po.CWRU.Edu
-In-Reply-To: Message from jacob@blackbox.gore.com of Sun, 3 Mar 91 19:18:54 MST
-Message-Id: <9103080010.AA04427.SM@odin.INS.CWRU.Edu>
-Read-Receipt-To: chet@po.CWRU.Edu
-
-> Now that you're working on bash for NeXT, let me ask you if you've run into
-> this bug under 2.0: bash, as a login shell, hangs on rlogin into the NeXT.
-> But it works fine on telnet.  On rlogin, I even get no output to stdout
-> from the 'tset' (or debugging 'echo's) in my startup files.
-
-It's getting stuck in initialize_jobs ().  There is a bug in the NeXT 
-/usr/etc/rlogind that causes bash to be started with the terminal still
-belonging to the rlogind process, and its process group set to 0 (so
-that getpgrp() returns 0 (!)).  It looks like there's a stray setpgrp(0, 0)
-in the rlogind code that NeXT is not handling like 4.3 BSD.
-
-(Another bug that I've found with NeXT 2.0 is that Terminal starts up the
-shell underneath it with argc == 0 and argv[0] = "-".  Not polite.
-`mount -vat nfs' seems to be broken too.  Any more good ones I should look
-for?)
-
-Here's a diff to jobs.c to work around it.  Your line numbers will certainly
-vary (for all I know, the code might, too).
-
-Chet
-
-*** jobs.c~    Tue Mar  5 17:41:00 1991
---- jobs.c     Thu Mar  7 18:50:12 1991
-***************
-*** 1839,1842 ****
---- 1839,1852 ----
-        }
-  
-+ #if defined (NeXT)
-+       /* This is to compensate for a bug in the NeXT 2.0 /usr/etc/rlogind. */
-+       if (shell_pgrp == 0)
-+      {
-+        shell_pgrp = getpid ();
-+        setpgid (0, shell_pgrp);
-+        tcsetpgrp (shell_tty, shell_pgrp);
-+      }
-+ #endif /* NeXT */
-+ 
-        while ((terminal_pgrp = tcgetpgrp (shell_tty)) != -1)
-       {
-
---
-Chet Ramey                             ``Now, somehow we've brought our sins
-Network Services Group                   back physically -- and they're
-Case Western Reserve University                  pissed.''
-chet@ins.CWRU.Edu              My opinions are just those, and mine alone.
-
diff --git a/CWRU/OS-BUGS/sco-3.2.4-bug b/CWRU/OS-BUGS/sco-3.2.4-bug
deleted file mode 100644 (file)
index 7378d3c..0000000
+++ /dev/null
@@ -1,57 +0,0 @@
-From gnulists@ai.mit.edu Mon Feb 22 20:41:24 1993
-Flags: 50
-Received: from po.CWRU.Edu by odin.INS.CWRU.Edu with SMTP (5.65b+ida+/CWRU-1.5.4-ins)
-       id AA17713; Mon, 22 Feb 93 20:41:24 -0500 (from gnulists@ai.mit.edu for /usr/homes/chet/bin/mailfilter.sh /usr/homes/chet/mbox)
-Return-Path: <gnulists@ai.mit.edu>
-Received: from life.ai.mit.edu by po.CWRU.Edu with SMTP (5.65b+ida+/CWRU-1.9)
-       id AA29616; Mon, 22 Feb 93 20:41:17 -0500 (from gnulists@ai.mit.edu for chet@odin.INS.CWRU.Edu)
-Received: from raisin-nut (raisin-nut.ai.mit.edu) by life.ai.mit.edu (4.1/AI-4.10) id AA01858; Mon, 22 Feb 93 20:40:47 EST
-Received: by raisin-nut (4.1/AI-4.10) id AA06708; Mon, 22 Feb 93 20:40:46 EST
-Resent-Date: Mon, 22 Feb 1993 13:29:57 -0500
-Resent-Message-Id: <9302230140.AA06708@raisin-nut>
-Received: from odin.INS.CWRU.Edu by life.ai.mit.edu (4.1/AI-4.10) id AA19283; Mon, 22 Feb 93 13:36:48 EST
-Received:  by odin.INS.CWRU.Edu (5.65b+ida+/CWRU-1.5.4-ins)
-       id AA27765; Mon, 22 Feb 93 13:36:44 -0500 (from chet for bug-bash@prep.ai.mit.edu)
-Date: Mon, 22 Feb 1993 13:29:57 -0500
-From: Chet Ramey <chet@odin.ins.cwru.edu>
-Sender: gnulists@ai.mit.edu
-To: pat@bcserv.wustl.edu
-Subject: Re: bash for SCO Unix 3.2.2/4
-Cc: bug-bash@prep.ai.mit.edu, chet@odin.ins.cwru.edu
-Reply-To: chet@po.cwru.edu
-In-Reply-To: Message from pat@bcserv.wustl.edu of 22 Feb 93 06:23:34 GMT (id <pat.730362214@bcserv>)
-Message-Id: <9302221829.AA27553.SM@odin.INS.CWRU.Edu>
-Read-Receipt-To: chet@po.CWRU.Edu
-Mime-Version: 1.0
-Content-Type: text/plain; charset=us-ascii
-Resent-From: bug-bash-request@prep.ai.mit.edu
-
-> I've had no luck making either bash-1.11 or bash-1.12 for 
-> SCO Unix v 3.2.2 or 3.2.4...
-> 
-> bash-1.12 says (specifically) that it's making for 3.2.2, but
-> still has problems.
-> 
-> It locks up after a few commnds...
-> 
-> I don't have GCC right now, so I did have to tell it that I don't
-> have 'alloca' by undefining it in machines.h - if that could be a problem.
-
-You can't run bash-1.12 on a 3.2.4 system if it's been compiled on a
-3.2.2 system.  Bash contains a fix for the broken sigsuspend in 3.2.2
-that breaks bash on 3.2.4, because 3.2.4 has the bug fixed.
-
-Bash 1.12 should build and run OK out of the box on 3.2.2.  For 3.2.4
-you need to locate the code at around line 1250 of jobs.c and change
-#if !defined (SCO) to #if 1 so that sigsuspend is used.  Then take out
-the SCO defines in flush_child().
-
-Chet
-
---
-``The use of history as therapy means the corruption of history as history.''
-       -- Arthur Schlesinger
-
-Chet Ramey, Case Western Reserve University    Internet: chet@po.CWRU.Edu
-
-
diff --git a/CWRU/OS-BUGS/sequent-fcntl-dup2-bug b/CWRU/OS-BUGS/sequent-fcntl-dup2-bug
deleted file mode 100644 (file)
index 7676d49..0000000
+++ /dev/null
@@ -1,28 +0,0 @@
-From chet@odin.INS.CWRU.Edu Fri May  3 17:22:41 1991
-Flags: 50
-Received: from odin.INS.CWRU.Edu by usenet.INS.CWRU.Edu with SMTP (5.65b+ida+/CWRU-1.5-UUCPGW)
-       id AA22515; Fri, 3 May 91 17:22:41 -0400 (from chet@odin.INS.CWRU.Edu for /usr/local/bin/m2mbox /usr/homes/chet/mbox)
-Received:  by odin.INS.CWRU.Edu (5.65b+ida+/CWRU-1.4-ins)
-       id AA07171; Fri, 3 May 91 17:22:21 -0400 (from chet for chet@usenet.INS.CWRU.Edu)
-Date: Fri, 3 May 91 17:18:03 -0400
-From: Chet Ramey <chet@odin.INS.CWRU.Edu>
-To: jp@lysator.liu.se
-Subject: fixed sequent bug
-Cc: chet@odin.INS.CWRU.Edu
-Reply-To: chet@po.CWRU.Edu
-Message-Id: <9105032118.AA07167.SM@odin.INS.CWRU.Edu>
-Read-Receipt-To: chet@po.CWRU.Edu
-
-
-I fixed it.  Sequent's fcntl and dup2 are both messed up.  They do not set
-the new descriptor to be open-on-exec.  For dup2 it's OK; that's the way
-4.2 BSD did it.  fcntl doing it is a bug, and a bad one.
-
-Chet
-
---
-Chet Ramey                       Internet: chet@po.CWRU.Edu
-Case Western Reserve University          NeXT Mail: chet@macbeth.INS.CWRU.Edu
-
-``Now,  somehow we've brought our sins back physically -- and they're pissed.''
-
diff --git a/CWRU/OS-BUGS/sun-yp-bug b/CWRU/OS-BUGS/sun-yp-bug
deleted file mode 100644 (file)
index 5b84ec0..0000000
+++ /dev/null
@@ -1,52 +0,0 @@
-From chet Mon Jul 27 14:54:45 1992
-Flags: 50
-Received:  by odin.INS.CWRU.Edu (5.65b+ida+/CWRU-1.5-ins)
-       id AA15494; Mon, 27 Jul 92 14:54:45 -0400 (from chet for /usr/homes/chet/bin/mailfilter.sh /usr/homes/chet/mbox)
-Date: Mon, 27 Jul 1992 14:29:55 -0400
-From: Chet Ramey <chet@odin.INS.CWRU.Edu>
-To: stud7b43@x400gate.bnr.ca
-Subject: Re: Bug in Bash 1.12.1
-Cc: bug-bash@ai.mit.edu, chet
-Reply-To: chet@po.CWRU.Edu
-In-Reply-To: Message from stud7b43@x400gate.bnr.ca of Mon, 27 Jul 1992 12:30:00 +0000
-Message-Id: <9207271829.AA14484.SM@odin.INS.CWRU.Edu>
-Read-Receipt-To: chet@po.CWRU.Edu
-
-> I seem to have found a bug in Bash.
-> 
-> How to cause the bug to appear:
-> 1) Start a long username-completion, e.g.
->       cat ~user<TAB>
->    Let it run for a while (don't know exactly how long...)
->    Before it's finished, hit ^C (or whatever the break character
->    is set to)
-> 2) As the next command, run a filename completion with a username in it, eg.
->       cat ~username/.log<TAB>
-> 
-> Error message:  "free: Called with already freed block argument
-
-This is a bug in the Sun YP code that everyone seems to have picked up.
-
-Sun keeps static state in the YP library code -- a pointer into the
-data returned from the server.  When YP initializes itself (setpwent),
-it looks at this pointer and calls free on it if it's non-null.  So far,
-so good.
-
-If one of the YP functions is interrupted during getpwent (the exact function
-is interpretwithsave()), and returns NULL, the pointer is freed without being
-reset to NULL, and the function returns.  The next time getpwent is called,
-it sees that this pointer is non-null, calls free, and the Gnu free()
-blows up because it's being asked to free freed memory.
-
-The traditional Unix mallocs allow memory to be freed multiple times; that's
-probably why this has never been fixed.  You can probably stop it by adding
-an #undef USE_GNU_MALLOC to the appropriate machine description in machines.h.
-
-Chet
-
---
-``The use of history as therapy means the corruption of history as history.''
-       -- Arthur Schlesinger
-
-Chet Ramey, Case Western Reserve University    Internet: chet@po.CWRU.Edu
-
diff --git a/CWRU/OS-BUGS/ultrix-bugs b/CWRU/OS-BUGS/ultrix-bugs
deleted file mode 100644 (file)
index f9fb82c..0000000
+++ /dev/null
@@ -1,74 +0,0 @@
-From chet@odin.INS.CWRU.Edu Fri Dec 21 10:56:27 1990
-Flags: 50
-Received: from odin.INS.CWRU.Edu by usenet.INS.CWRU.Edu with SMTP (5.61+ida+/CWRU-1.3-UUCPGW)
-       id AA27089; Fri, 21 Dec 90 10:56:27 -0500 (from chet@odin.INS.CWRU.Edu for /usr/local/bin/m2mbox.test /usr/homes/chet/mbox)
-Received:  by odin.INS.CWRU.Edu (5.61+ida+/CWRU-1.4-ins)
-       id AA17558; Fri, 21 Dec 90 10:56:18 -0500 (from chet for chet@usenet.INS.CWRU.Edu)
-Date: Fri, 21 Dec 90 10:36:58 -0500
-From: Chet Ramey <chet@odin.ins.cwru.edu>
-To: dbrooks@osf.org
-Subject: Re: bash and OSF/1
-Cc: chet@odin.INS.CWRU.Edu
-Reply-To: chet@po.CWRU.Edu
-In-Reply-To: Message from dbrooks@osf.org of Fri, 21 Dec 90 10:28:26 EST
-Message-Id: <9012211536.AA17531.SM@odin.ins.cwru.edu>
-Read-Receipt-To: chet@po.CWRU.Edu
-
-> Michael Meissner has been suddenly asked to do Real Work (TM) so it's
-> unlikely he'll get to do anything with OSF/1 until the new year.  We
-> talked about it, however, and there are a few issues.
-
-Not (gasp) Real Work!
-
-> The upshot of the above is: expect a block of #defines based on
-> __OSF1__, and expect it possibly not to work under all
-> implementations.
-
-Works for me.
-
-> I have two new bugs for you in 1.06.
-> 
-> - Typeahead is very weird.  Often, I will be in a state where a
->   command is busy, and I type a new one.  The shell prompts and
->   nothing happens; I have to type the line again.  Later, if I enter
->   an interactive command (such as "mail") the missing keystrokes get
->   delivered to it instead.  This is on a pmax, Ultrix 3.1, with some
->   patches of my own and Michael's fignore patch (that may have caused
->   it; I haven't investigated yet.  Just wanted to see if this rang a bell.)
-
-Typeahead under Ultrix is wierd.  This doesn't happen anywhere else.  Here's
-what it does for me:
-
-cwjcc$ sleep 4
-echo hi ; echo hi              <----- typeahead while sleeping
-cwjcc$                         <----- nothing comes out
-cwjcc$ more readline.c
-readline.c: No such file or directory
-cwjcc$ echo hi ; echo hi       <----- now it does...
-hi
-hi
-
-I'll look at it today.
-
-> - The sequence
->      echo foo > /dev/tty
->      cat bar
->   produces:
->      cat: write error: Bad file number
-
-This only happens under Ultrix, too.  It's another consequence of Dec's
-dup2 fuckup (I am *really*pissed*off* about it; it's caused me to waste a
-lot of time already).  File descriptor 1 is getting set to close-on-exec. 
-I haven't decided whether to hack around it in the code or to just make
-Ultrix use the dup2 emulation in general.c.
-
-Cheers,
-
-Chet
-
---
-Chet Ramey                             ``I die, Horatio''
-Network Services Group, Case Western Reserve University
-chet@ins.CWRU.Edu
-                My opinions are just those, and mine alone.
-
diff --git a/CWRU/audit-patch b/CWRU/audit-patch
deleted file mode 100644 (file)
index 3e14ccc..0000000
+++ /dev/null
@@ -1,339 +0,0 @@
-Date: Tue, 06 Feb 2007 16:06:58 -0500
-From: Steve Grubb <sgrubb@redhat.com>
-Subject: Re: bash and linux audit
-To: chet.ramey@case.edu
-Organization: Red Hat
-
-OK, I released audit 1.4 Sunday which has the logging function for user
-commands. It produces audit events like this:
-
-type=USER_CMD msg=audit(01/30/2007 18:23:45.793:143) : user pid=22862 uid=root
-auid=root subj=system_u:system_r:unconfined_t:s0-s0:c0.c1023
-msg='cwd=/root/test dir cmd=ls -l (terminal=tty1 res=success)'
-
-diff -urp bash-3.2.orig/config-bot.h bash-3.2/config-bot.h
---- bash-3.2.orig/config-bot.h 2007-01-03 09:01:05.000000000 -0500
-+++ bash-3.2/config-bot.h      2007-01-20 11:59:23.000000000 -0500
-@@ -97,6 +97,11 @@
- #  define RESTRICTED_SHELL_NAME "rbash"
- #endif
-+/* If the shell is called by this name, it will become audited. */
-+#if defined (AUDIT_SHELL)
-+#  define AUDIT_SHELL_NAME "aubash"
-+#endif
-+
- /***********************************************************/
- /* Make sure feature defines have necessary prerequisites. */
- /***********************************************************/
-diff -urp bash-3.2.orig/config.h.in bash-3.2/config.h.in
---- bash-3.2.orig/config.h.in  2007-01-03 09:01:05.000000000 -0500
-+++ bash-3.2/config.h.in       2007-01-20 11:59:23.000000000 -0500
-@@ -81,6 +81,11 @@
-    flag. */
- #undef RESTRICTED_SHELL
-+/* Define AUDIT_SHELL if you want the generated shell to audit all
-+   actions performed by root account.  The shell thus generated can become
-+   audited by being run with the name "aubash". */
-+#undef AUDIT_SHELL
-+
- /* Define DISABLED_BUILTINS if you want "builtin foo" to always run the
-    shell builtin "foo", even if it has been disabled with "enable -n foo". */
- #undef DISABLED_BUILTINS
-diff -urp bash-3.2.orig/configure.in bash-3.2/configure.in
---- bash-3.2.orig/configure.in 2007-01-03 09:01:05.000000000 -0500
-+++ bash-3.2/configure.in      2007-01-20 11:59:23.000000000 -0500
-@@ -162,6 +162,7 @@ opt_history=yes
- opt_bang_history=yes
- opt_dirstack=yes
- opt_restricted=yes
-+opt_audit=yes
- opt_process_subst=yes
- opt_prompt_decoding=yes
- opt_select=yes
-@@ -195,8 +196,8 @@ dnl a minimal configuration turns everyt
- dnl added individually
- if test $opt_minimal_config = yes; then
-       opt_job_control=no opt_alias=no opt_readline=no
--      opt_history=no opt_bang_history=no opt_dirstack=no
--      opt_restricted=no opt_process_subst=no opt_prompt_decoding=no
-+      opt_history=no opt_bang_history=no opt_dirstack=no opt_restricted=no
-+      opt_audit=no opt_process_subst=no opt_prompt_decoding=no
-       opt_select=no opt_help=no opt_array_variables=no opt_dparen_arith=no
-       opt_brace_expansion=no opt_disabled_builtins=no opt_command_timing=no
-       opt_extended_glob=no opt_cond_command=no opt_arith_for_command=no
-@@ -227,6 +228,7 @@ AC_ARG_ENABLE(progcomp, AC_HELP_STRING([
- AC_ARG_ENABLE(prompt-string-decoding, AC_HELP_STRING([--enable-prompt-string-decoding], [turn on escape character decoding in prompts]), opt_prompt_decoding=$enableval)
- AC_ARG_ENABLE(readline, AC_HELP_STRING([--enable-readline], [turn on command line editing]), opt_readline=$enableval)
- AC_ARG_ENABLE(restricted, AC_HELP_STRING([--enable-restricted], [enable a restricted shell]), opt_restricted=$enableval)
-+AC_ARG_ENABLE(audit, AC_HELP_STRING([--enable-audit], [enable an audited shell]), opt_audit=$enableval)
- AC_ARG_ENABLE(select, AC_HELP_STRING([--enable-select], [include select command]), opt_select=$enableval)
- AC_ARG_ENABLE(separate-helpfiles, AC_HELP_STRING([--enable-separate-helpfiles], [use external files for help builtin documentation]), opt_separate_help=$enableval)
- AC_ARG_ENABLE(single-help-strings, AC_HELP_STRING([--enable-single-help-strings], [store help documentation as a single string to ease translation]), opt_single_longdoc_strings=$enableval)
-@@ -254,6 +256,10 @@ fi
- if test $opt_restricted = yes; then
- AC_DEFINE(RESTRICTED_SHELL)
- fi
-+if test $opt_audit = yes; then
-+AC_DEFINE(AUDIT_SHELL)
-+AUDIT_LIB='-laudit'
-+fi
- if test $opt_process_subst = yes; then
- AC_DEFINE(PROCESS_SUBSTITUTION)
- fi
-@@ -355,6 +361,8 @@ AC_SUBST(HELPDIRDEFINE)
- AC_SUBST(HELPINSTALL)
- AC_SUBST(HELPSTRINGS)
-+AC_SUBST(AUDIT_LIB)
-+
- echo ""
- echo "Beginning configuration for bash-$BASHVERS-$RELSTATUS for ${host_cpu}-${host_vendor}-${host_os}"
- echo ""
-diff -urp bash-3.2.orig/doc/bash.1 bash-3.2/doc/bash.1
---- bash-3.2.orig/doc/bash.1   2007-01-03 09:01:05.000000000 -0500
-+++ bash-3.2/doc/bash.1        2007-01-20 11:59:23.000000000 -0500
-@@ -155,6 +155,12 @@ single-character options to be recognize
- .PP
- .PD 0
- .TP
-+.B \-\-audit
-+The shell logs all commands run by the root user (see
-+.SM
-+.B "AUDIT SHELL"
-+below).
-+.TP
- .B \-\-debugger
- Arrange for the debugger profile to be executed before the shell
- starts.
-@@ -8770,6 +8776,17 @@ turns off any restrictions in the shell 
- script.
- .\" end of rbash.1
- .if \n(zY=1 .ig zY
-+.SH "AUDIT SHELL"
-+.zY
-+.PP
-+If
-+.B bash
-+is started with the name
-+.BR aubash ,
-+or the
-+.B \-\-audit
-+option is supplied at invocation, the shell logs all commands issued by the root user to the audit system.
-+.if \n(zY=1 .ig zY
- .SH "SEE ALSO"
- .PD 0
- .TP
-diff -urp bash-3.2.orig/eval.c bash-3.2/eval.c
---- bash-3.2.orig/eval.c       2007-01-03 09:01:06.000000000 -0500
-+++ bash-3.2/eval.c    2007-01-20 11:59:23.000000000 -0500
-@@ -45,6 +45,11 @@
- #  include "bashhist.h"
- #endif
-+#if defined (AUDIT_SHELL)
-+#  include <libaudit.h>
-+#  include <errno.h>
-+#endif
-+
- extern int EOF_reached;
- extern int indirection_level;
- extern int posixly_correct;
-@@ -58,6 +63,38 @@ extern int rpm_requires;
- static void send_pwd_to_eterm __P((void));
- static sighandler alrm_catcher __P((int));
-+#if defined (AUDIT_SHELL)
-+static int audit_fd = -1;
-+
-+static int
-+audit_start ()
-+{
-+  audit_fd = audit_open ();
-+  if (audit_fd < 0)
-+    return -1;
-+  else
-+    return 0;
-+}
-+
-+static int
-+audit (cmd, result)
-+        char *cmd;
-+        int result;
-+{
-+  int rc;
-+
-+  if (audit_fd < 0)
-+    return 0;
-+
-+  rc = audit_log_user_command (audit_fd, AUDIT_USER_CMD, cmd,
-+                               NULL, !result);
-+  close (audit_fd);
-+  audit_fd = -1;
-+  return rc;
-+}
-+#endif
-+
-+
- /* Read and execute commands until EOF is reached.  This assumes that
-    the input source has already been initialized. */
- int
-@@ -145,7 +182,25 @@ reader_loop ()
-             executing = 1;
-             stdin_redir = 0;
-+#if defined (AUDIT_SHELL)
-+              if (audited && interactive_shell && getuid () == 0)
-+                {
-+                  if (audit_start () < 0)
-+                    {
-+                      if (errno != EINVAL && errno != EPROTONOSUPPORT &&
-+                          errno != EAFNOSUPPORT)
-+                        return EXECUTION_FAILURE;
-+                    }
-+                }
-+#endif
-+
-             execute_command (current_command);
-+#if defined (AUDIT_SHELL)
-+              {
-+                extern char *shell_input_line;
-+                audit (shell_input_line, last_command_exit_value);
-+              }
-+#endif
-           exec_done:
-             QUIT;
-diff -urp bash-3.2.orig/externs.h bash-3.2/externs.h
---- bash-3.2.orig/externs.h    2007-01-03 09:01:06.000000000 -0500
-+++ bash-3.2/externs.h 2007-01-20 12:05:00.000000000 -0500
-@@ -77,6 +77,10 @@ extern int shell_is_restricted __P((char
- extern int maybe_make_restricted __P((char *));
- #endif
-+#if defined (AUDIT_SHELL)
-+extern int maybe_make_audited __P((char *));
-+#endif
-+
- extern void unset_bash_input __P((int));
- extern void get_current_user_info __P((void));
-diff -urp bash-3.2.orig/flags.c bash-3.2/flags.c
---- bash-3.2.orig/flags.c      2007-01-03 09:01:06.000000000 -0500
-+++ bash-3.2/flags.c   2007-01-20 11:59:23.000000000 -0500
-@@ -142,6 +142,12 @@ int restricted = 0;               /* currently restri
- int restricted_shell = 0;     /* shell was started in restricted mode. */
- #endif /* RESTRICTED_SHELL */
-+#if defined (AUDIT_SHELL)
-+/* Non-zero means that this shell is audited. An audited shell records
-+   each command that the root user executes. */
-+int audited = 0;              /* shell was started in audit mode. */
-+#endif /* AUDIT_SHELL */
-+
- /* Non-zero means that this shell is running in `privileged' mode.  This
-    is required if the shell is to run setuid.  If the `-p' option is
-    not supplied at startup, and the real and effective uids or gids
-diff -urp bash-3.2.orig/flags.h bash-3.2/flags.h
---- bash-3.2.orig/flags.h      2007-01-03 09:01:06.000000000 -0500
-+++ bash-3.2/flags.h   2007-01-20 11:59:23.000000000 -0500
-@@ -66,6 +66,10 @@ extern int restricted;
- extern int restricted_shell;
- #endif /* RESTRICTED_SHELL */
-+#if defined (AUDIT_SHELL)
-+extern int audited;
-+#endif /* AUDIT_SHELL */
-+
- extern int *find_flag __P((int));
- extern int change_flag __P((int, int));
- extern char *which_set_flags __P((void));
-Only in bash-3.2: .made
-diff -urp bash-3.2.orig/Makefile.in bash-3.2/Makefile.in
---- bash-3.2.orig/Makefile.in  2007-01-03 09:01:06.000000000 -0500
-+++ bash-3.2/Makefile.in       2007-01-20 11:59:23.000000000 -0500
-@@ -366,6 +366,8 @@ MALLOC_LIBRARY = @MALLOC_LIBRARY@
- MALLOC_LDFLAGS = @MALLOC_LDFLAGS@
- MALLOC_DEP = @MALLOC_DEP@
-+AUDIT_LIB = @AUDIT_LIB@
-+
- ALLOC_HEADERS = $(ALLOC_LIBSRC)/getpagesize.h $(ALLOC_LIBSRC)/shmalloc.h \
-               $(ALLOC_LIBSRC)/imalloc.h $(ALLOC_LIBSRC)/mstats.h \
-               $(ALLOC_LIBSRC)/table.h $(ALLOC_LIBSRC)/watch.h
-@@ -386,7 +388,7 @@ BASHINCFILES =      $(BASHINCDIR)/posixstat.
-                $(BASHINCDIR)/ocache.h
- LIBRARIES = $(SHLIB_LIB) $(READLINE_LIB) $(HISTORY_LIB) $(TERMCAP_LIB) $(GLOB_LIB) \
--          $(TILDE_LIB) $(MALLOC_LIB) $(INTL_LIB) $(LOCAL_LIBS)
-+          $(TILDE_LIB) $(MALLOC_LIB) $(INTL_LIB) $(LOCAL_LIBS) $(AUDIT_LIB)
- LIBDEP = $(SHLIB_DEP) $(INTL_DEP) $(READLINE_DEP) $(HISTORY_DEP) $(TERMCAP_DEP) $(GLOB_DEP) \
-        $(TILDE_DEP) $(MALLOC_DEP)
-diff -urp bash-3.2.orig/parse.y bash-3.2/parse.y
---- bash-3.2.orig/parse.y      2007-01-03 09:01:06.000000000 -0500
-+++ bash-3.2/parse.y   2007-01-20 11:59:23.000000000 -0500
-@@ -258,7 +258,7 @@ int need_here_doc;
- /* Where shell input comes from.  History expansion is performed on each
-    line when the shell is interactive. */
--static char *shell_input_line = (char *)NULL;
-+char *shell_input_line = (char *)NULL;
- static int shell_input_line_index;
- static int shell_input_line_size;     /* Amount allocated for shell_input_line. */
- static int shell_input_line_len;      /* strlen (shell_input_line) */
-diff -urp bash-3.2.orig/shell.c bash-3.2/shell.c
---- bash-3.2.orig/shell.c      2007-01-03 09:01:06.000000000 -0500
-+++ bash-3.2/shell.c   2007-01-20 12:04:23.000000000 -0500
-@@ -240,6 +240,9 @@ struct {
- #if defined (RESTRICTED_SHELL)
-   { "restricted", Int, &restricted, (char **)0x0 },
- #endif
-+#if defined (AUDIT_SHELL)
-+  { "audit", Int, &audited, (char **)0x0 },
-+#endif
-   { "verbose", Int, &echo_input_at_read, (char **)0x0 },
-   { "version", Int, &do_version, (char **)0x0 },
-   { "wordexp", Int, &wordexp_only, (char **)0x0 },
-@@ -644,6 +647,10 @@ main (argc, argv, env)
-     maybe_make_restricted (shell_name);
- #endif /* RESTRICTED_SHELL */
-+#if defined (AUDIT_SHELL)
-+    maybe_make_audited (shell_name);
-+#endif
-+
-   if (wordexp_only)
-     {
-       startup_state = 3;
-@@ -1143,6 +1150,29 @@ maybe_make_restricted (name)
- }
- #endif /* RESTRICTED_SHELL */
-+#if defined (AUDIT_SHELL)
-+/* Perhaps make this shell an `audited' one, based on NAME.  If the
-+   basename of NAME is "aubash", then this shell is audited.  The
-+   name of the audited shell is a configurable option, see config.h.
-+   In an audited shell, all actions performed by root will be logged
-+   to the audit system.
-+   Do this also if `audited' is already set to 1 maybe the shell was
-+   started with --audit. */
-+int
-+maybe_make_audited (name)
-+     char *name;
-+{
-+  char *temp;
-+
-+  temp = base_pathname (name);
-+  if (*temp == '-')
-+    temp++;
-+  if (audited || (STREQ (temp, AUDIT_SHELL_NAME)))
-+    audited = 1;
-+  return (audited);
-+}
-+#endif /* AUDIT_SHELL */
-+
- /* Fetch the current set of uids and gids and return 1 if we're running
-    setuid or setgid. */
- static int
diff --git a/CWRU/devfd.c b/CWRU/devfd.c
deleted file mode 100644 (file)
index e5a3574..0000000
+++ /dev/null
@@ -1,43 +0,0 @@
-#include <unistd.h>
-
-#include <sys/types.h>
-#include <sys/stat.h>
-
-#include <fcntl.h>
-#include <stdio.h>
-#include <stdlib.h>
-
-#if defined (S_IFDIR) && !defined (S_ISDIR)
-#define S_ISDIR(m)      (((m)&S_IFMT) == S_IFDIR)       /* directory */
-#endif
-
-main(c, v)
-int    c;
-char   **v;
-{
-       struct stat     sb;
-       int     r, fd;
-       char    fbuf[32];
-
-       r = stat("/dev/fd", &sb);
-       /* test -d /dev/fd */
-       if (r == -1 || S_ISDIR (sb.st_mode) == 0)
-               exit (1);
-       /* test -r /dev/fd/0 */
-       r = access ("/dev/fd/0", R_OK);
-       if (r == -1)
-               exit (1);
-       /* exec 3</dev/null */
-       fd = open("/dev/null", O_RDONLY, 0666);
-       if (fd == -1)
-               exit (2);
-       if (fd != 3 && (dup2(fd, 3) == -1))
-               exit (1);
-       /* test -r /dev/fd/3 */
-       r = access("/dev/fd/3", R_OK);
-       if (r == -1)
-               exit (1);
-       exit (0);
-}
-
-       
diff --git a/CWRU/devstdin.c b/CWRU/devstdin.c
deleted file mode 100644 (file)
index 45834be..0000000
+++ /dev/null
@@ -1,38 +0,0 @@
-#include <unistd.h>
-
-#include <sys/types.h>
-#include <sys/stat.h>
-
-#include <fcntl.h>
-#include <stdio.h>
-#include <stdlib.h>
-
-#if defined (S_IFDIR) && !defined (S_ISDIR)
-#define S_ISDIR(m)      (((m)&S_IFMT) == S_IFDIR)       /* directory */
-#endif
-
-main(c, v)
-int    c;
-char   **v;
-{
-       struct stat     sb;
-       int     r, fd;
-       char    fbuf[32];
-
-       r = stat("/dev/fd", &sb);
-       /* test -d /dev/fd */
-       if (r == -1 || S_ISDIR (sb.st_mode) == 0)
-               exit (1);
-       /* test -r /dev/stdin < /dev/null */
-       fd = open("/dev/null", O_RDONLY, 0666);
-       if (fd == -1)
-               exit (2);
-       if (dup2(fd, 0) == -1)
-               exit (1);
-       r = access("/dev/stdin", R_OK);
-       if (r == -1)
-               exit (1);
-       exit (0);
-}
-
-       
diff --git a/CWRU/history-syslog.1 b/CWRU/history-syslog.1
deleted file mode 100644 (file)
index d5240d3..0000000
+++ /dev/null
@@ -1,47 +0,0 @@
-#Date: Mon, 14 Dec 1998 23:10:43 -0800
-#From: John Kinsella <jlk@digex.net>
-#To: chet@po.cwru.edu
-#Subject: Re: bash patch
-
-diff -c bash-2.02.1-old/bashhist.c bash-2.02.1/bashhist.c
-*** bash-2.02.1-old/bashhist.c  Fri Feb 27 09:34:33 1998
---- bash-2.02.1/bashhist.c      Mon Dec 14 22:39:23 1998
-***************
-*** 50,55 ****
---- 50,65 ----
-  #  include "bashline.h"
-  #endif
-  
-+ /* SYSLOG_HISTORY - define this if you want all commands entered into
-+  * the shell to be echoed to syslog.
-+  * (feature added by John Kinsella<jlk@digex.net>)
-+  */
-+ #define SYSLOG_HISTORY 1
-+ 
-+ #if defined (SYSLOG_HISTORY)
-+ # include <syslog.h>
-+ #endif
-+ 
-  #if !defined (errno)
-  extern int errno;
-  #endif
-***************
-*** 566,571 ****
---- 576,587 ----
-      {
-        hist_last_line_added = 1;
-        add_history (line);
-+       /* next 3 lines added by John Kinsella<jlk@digex.net> 
-+        * Sends history line to syslog.
-+        */
-+ #if defined( SYSLOG_HISTORY )
-+       syslog( LOG_INFO, "%d - %s", current_user.euid, line );
-+ #endif
-        history_lines_this_session++;
-      }
-    using_history ();
-#
-#-- 
-#John Kinsella                         UNIX ISA
-#jlk@digex.net                         DIGEX West Coast Facility
-#voice 408-873-4278                    pager 888-751-7595
diff --git a/CWRU/intmax.c b/CWRU/intmax.c
deleted file mode 100644 (file)
index cd14111..0000000
+++ /dev/null
@@ -1,19 +0,0 @@
-#include <unistd.h>
-#include <limits.h>
-#include <stdio.h>
-
-#ifndef INTMAX_MAX
-#  ifdef LLONG_MAX
-#    define INTMAX_MAX LLONG_MAX
-#  else
-#    define INTMAX_MAX LONG_MAX
-#  endif
-#endif
-
-main(int c, char **v)
-{
-       printf ("%d\n", INT_MAX);
-       printf ("%ld\n", LONG_MAX);
-       printf ("%lld\n", INTMAX_MAX);
-       exit(0);
-}
diff --git a/CWRU/mh-folder-comp b/CWRU/mh-folder-comp
deleted file mode 100644 (file)
index 905000c..0000000
+++ /dev/null
@@ -1,449 +0,0 @@
-From jwe@che.utexas.edu Wed Sep 21 17:23:40 1994
-Flags: 10
-Return-Path: jwe@che.utexas.edu
-Received: from po.CWRU.Edu (root@po.CWRU.Edu [129.22.4.2]) by odin.INS.CWRU.Edu with ESMTP (8.6.8.1+cwru/CWRU-2.1-ins)
-       id RAA04010; Wed, 21 Sep 1994 17:23:39 -0400 (from jwe@che.utexas.edu for <chet@odin.INS.CWRU.Edu>)
-Received: from life.ai.mit.edu (life.ai.mit.edu [128.52.32.80]) by po.CWRU.Edu with SMTP (8.6.8.1+cwru/CWRU-2.2)
-       id RAA02121; Wed, 21 Sep 1994 17:23:28 -0400 (from jwe@che.utexas.edu for <chet@po.cwru.edu>)
-Received: from schoch.che.utexas.edu by life.ai.mit.edu (4.1/AI-4.10) for chet@po.cwru.edu id AA09989; Wed, 21 Sep 94 17:23:17 EDT
-Received: from localhost (jwe@localhost) by schoch.che.utexas.edu (8.6.8.1/8.6) with SMTP id QAA05737; Wed, 21 Sep 1994 16:22:01 -0500
-Message-Id: <199409212122.QAA05737@schoch.che.utexas.edu>
-To: march@tudor.com
-Cc: bug-bash@prep.ai.mit.edu
-Subject: Re: Completion feature possible?
-In-Reply-To: Your message of 21 Sep 94 13:30:22 EDT
-Date: Wed, 21 Sep 94 16:22:00 EDT
-From: John Eaton <jwe@che.utexas.edu>
-
-Gregory F. March <march@tudor.com> wrote:
-
-: I was having a discussion about MH with one of my friends the other
-: day and I got to thinking that the +folder/subfolder scheme for naming
-: mail folders is a real pain because completion doesn't work on
-: them. Someone then mentioned that zsh (I think) has the ability to
-: specify how to complete (I guess where to look for the files) for
-: different prefixes. Bash right now knows about '@', '~', and '$' (any
-: others?). It would be really helpful if one could define something
-: like:
-: 
-:      completion '+' "$HOME/Mail"
-: 
-: in a config file someplace. Would this be easy? Is there a list of
-: TODO item that someone might want to add this to?
-
-It would be nice to have a general completion feature like this.
-
-Until that happens, maybe you will find the following patch useful.
-It makes MH folder name completion work with bash.  The diffs are
-relative to version 1.14.2.
-
-I realize that changes to readline.c and and complete.c are not good
-since they add some MH-specific stuff to the readline code and not to
-bash, but when I first wrote this, I had no idea what else to do.
-
-Chet, would you consider adding this if it were cleaned up a bit?
-Made optional with cpp conditionals?
-
-This feature has been very useful to me for the last several years
-(since about 1.05 or 1.06, I think).
-
-Thanks,
-
---
-John W. Eaton      | 4.3BSD is not perfect.  -- Leffler, et al. (1989).
-jwe@che.utexas.edu |
-
-
--------------------------------cut here-------------------------------
-diff -rc bash-1.14.2/bashline.c bash-1.14.2.local/bashline.c
-*** bash-1.14.2/bashline.c     Wed Aug  3 09:32:45 1994
---- bash-1.14.2.local/bashline.c       Wed Sep 21 15:39:04 1994
-***************
-*** 58,63 ****
---- 58,64 ----
-  static char *hostname_completion_function ();
-  static char *command_word_completion_function ();
-  static char *command_subst_completion_function ();
-+ static char *mh_folder_completion_function ();
-  
-  static void snarf_hosts_from_file (), add_host_name ();
-  static void sort_hostname_list ();
-***************
-*** 90,95 ****
---- 91,98 ----
-    bash_complete_username_internal (),
-    bash_complete_hostname (), bash_possible_hostname_completions (),
-    bash_complete_hostname_internal (),
-+   bash_complete_mh_folder (), bash_possible_mh_folder_completions (),
-+   bash_complete_mh_folder_internal (),
-    bash_complete_variable (), bash_possible_variable_completions (),
-    bash_complete_variable_internal (),
-    bash_complete_command (), bash_possible_command_completions (),
-***************
-*** 134,140 ****
-    rl_terminal_name = get_string_value ("TERM");
-    rl_instream = stdin;
-    rl_outstream = stderr;
-!   rl_special_prefixes = "$@";
-  
-    /* Allow conditional parsing of the ~/.inputrc file. */
-    rl_readline_name = "Bash";
---- 137,143 ----
-    rl_terminal_name = get_string_value ("TERM");
-    rl_instream = stdin;
-    rl_outstream = stderr;
-!   rl_special_prefixes = "$@+";
-  
-    /* Allow conditional parsing of the ~/.inputrc file. */
-    rl_readline_name = "Bash";
-***************
-*** 193,198 ****
---- 196,207 ----
-    rl_bind_key_in_map ('@', bash_possible_hostname_completions,
-                     emacs_ctlx_keymap);
-  
-+   rl_add_defun ("complete-mh-folder", bash_complete_mh_folder, META('+'));
-+   rl_add_defun ("possible-mh-folder-completions",
-+              bash_possible_mh_folder_completions, -1);
-+   rl_bind_key_in_map ('+', bash_possible_mh_folder_completions,
-+                    emacs_ctlx_keymap);
-+ 
-    rl_add_defun ("complete-variable", bash_complete_variable, -1);
-    rl_bind_key_in_map ('$', bash_complete_variable, emacs_meta_keymap);
-    rl_add_defun ("possible-variable-completions",
-***************
-*** 656,661 ****
---- 665,677 ----
-    if (!matches && *text == '@')
-      matches = completion_matches (text, hostname_completion_function);
-  
-+   /* Another one.  Why not?  If the word starts in '+', then look for
-+      matching mh folders for completion first. */
-+   if (!matches && *text == '+')
-+     {
-+       matches = completion_matches (text, mh_folder_completion_function);
-+     }
-+ 
-    /* And last, (but not least) if this word is in a command position, then
-       complete over possible command names, including aliases, functions,
-       and command names. */
-***************
-*** 1077,1082 ****
---- 1093,1185 ----
-      return ((char *)NULL);
-  }
-  
-+ /* How about a completion function for mh folders? */
-+ static char *
-+ mh_folder_completion_function (text, state)
-+      int state;
-+      char *text;
-+ {
-+   extern int rl_filename_completion_desired;
-+ 
-+   extern char *get_mh_path ();
-+ 
-+   static char *mh_path = (char *)NULL;
-+   static int len;
-+   static int istate;
-+   static char *val;
-+   char *hint;
-+ 
-+   static char *mh_folder_hint = (char *)NULL;
-+ 
-+   /* If we don't have any state, make some. */
-+   if (!state)
-+     {
-+       val = (char *)NULL;
-+ 
-+       if (mh_path)
-+      free (mh_path);
-+ 
-+       mh_path = get_mh_path ();
-+       if (!mh_path && !(hint[1] == '/' || hint[1] == '.'))
-+      return ((char *)NULL);
-+ 
-+       len = strlen (mh_path);
-+     }
-+ 
-+   if (mh_folder_hint)
-+     free (mh_folder_hint);
-+ 
-+   hint = text;
-+   if (*hint == '+')
-+     hint++;
-+ 
-+   mh_folder_hint = (char *)xmalloc (2 + len + strlen (hint));
-+   if (*hint == '/' || *hint == '.') {
-+     len = -1;
-+     sprintf (mh_folder_hint, "%s", hint);
-+   } else
-+     sprintf (mh_folder_hint, "%s/%s", mh_path, hint);
-+ 
-+   istate = (val != (char *)NULL);
-+ 
-+  again:
-+   val = filename_completion_function (mh_folder_hint, istate);
-+   istate = 1;
-+ 
-+   if (!val)
-+     {
-+       return ((char *)NULL);
-+     }
-+   else
-+     {
-+       char *ptr = val + len + 1, *temp;
-+       struct stat sb;
-+       int status = stat (val, &sb);
-+ 
-+       if (status != 0)
-+      return ((char *)NULL);
-+ 
-+       if ((sb.st_mode & S_IFDIR) == S_IFDIR)
-+      {
-+        temp = (char *)xmalloc (2 + strlen (ptr));
-+        *temp = '+';
-+        strcpy (temp + 1, ptr);
-+ 
-+        free (val);
-+        val = "";
-+ 
-+        rl_filename_completion_desired = 1;
-+ 
-+        return (temp);
-+      }
-+       else
-+      {
-+        free (val);
-+      }
-+       goto again;
-+     }
-+ }
-+ 
-  /* History and alias expand the line. */
-  static char *
-  history_expand_line_internal (line)
-***************
-*** 1628,1633 ****
---- 1731,1773 ----
-  {
-    bash_specific_completion
-      (what_to_do, (Function *)username_completion_function);
-+ }
-+ 
-+ static void
-+ bash_complete_mh_folder (ignore, ignore2)
-+      int ignore, ignore2;
-+ {
-+   bash_complete_mh_folder_internal (TAB);
-+ }
-+ 
-+ static void
-+ bash_possible_mh_folder_completions (ignore, ignore2)
-+      int ignore, ignore2;
-+ {
-+   bash_complete_mh_folder_internal ('?');
-+ }
-+ 
-+ static void
-+ bash_complete_mh_folder_internal (what_to_do)
-+      int what_to_do;
-+ {
-+   Function  *orig_func;
-+   CPPFunction *orig_attempt_func;
-+   char *orig_rl_completer_word_break_characters;
-+   extern char *rl_completer_word_break_characters;
-+ 
-+   orig_func = rl_completion_entry_function;
-+   orig_attempt_func = rl_attempted_completion_function;
-+   orig_rl_completer_word_break_characters = rl_completer_word_break_characters;
-+   rl_completion_entry_function = (Function *)mh_folder_completion_function;
-+   rl_attempted_completion_function = (CPPFunction *)NULL;
-+   rl_completer_word_break_characters = " \t\n\"\'";
-+ 
-+   rl_complete_internal (what_to_do);
-+ 
-+   rl_completion_entry_function = orig_func;
-+   rl_attempted_completion_function = orig_attempt_func;
-+   rl_completer_word_break_characters = orig_rl_completer_word_break_characters;
-  }
-  
-  static void
-Only in bash-1.14.2.local: bashline.c.orig
-diff -rc bash-1.14.2/lib/readline/complete.c bash-1.14.2.local/lib/readline/complete.c
-*** bash-1.14.2/lib/readline/complete.c        Tue Jul 26 12:59:57 1994
---- bash-1.14.2.local/lib/readline/complete.c  Wed Sep 21 15:41:19 1994
-***************
-*** 733,751 ****
-             if (rl_filename_completion_desired)
-               {
-                 struct stat finfo;
-!                char *filename = tilde_expand (matches[0]);
-  
-!                if ((stat (filename, &finfo) == 0) && S_ISDIR (finfo.st_mode))
-                   {
-!                    if (rl_line_buffer[rl_point] != '/')
-!                      rl_insert_text ("/");
-                   }
-!                else
-                   {
-!                    if (rl_point == rl_end)
-!                      rl_insert_text (temp_string);
-                   }
--                free (filename);
-               }
-             else
-               {
---- 733,768 ----
-             if (rl_filename_completion_desired)
-               {
-                 struct stat finfo;
-!                char *tilde_expand ();
-!                char *plus_expand ();
-!                char *filename = (char *) NULL;
-  
-!                switch (*matches[0])
-                   {
-!                  case '+':
-!                    filename = plus_expand (matches[0]);
-!                    break;
-!                  case '~':
-!                  default:
-!                    filename = tilde_expand (matches[0]);
-!                    break;
-                   }
-! 
-!                if (filename)
-                   {
-!                    if ((stat (filename, &finfo) == 0)
-!                        && S_ISDIR (finfo.st_mode))
-!                      {
-!                        if (rl_line_buffer[rl_point] != '/')
-!                          rl_insert_text ("/");
-!                      }
-!                    else
-!                      {
-!                        if (rl_point == rl_end)
-!                          rl_insert_text (temp_string);
-!                      }
-!                    free (filename);
-                   }
-               }
-             else
-               {
-Only in bash-1.14.2.local/lib/readline: diffs
-diff -rc bash-1.14.2/lib/readline/readline.c bash-1.14.2.local/lib/readline/readline.c
-*** bash-1.14.2/lib/readline/readline.c        Fri Aug 12 12:47:46 1994
---- bash-1.14.2.local/lib/readline/readline.c  Wed Sep 21 15:36:07 1994
-***************
-*** 23,28 ****
---- 23,29 ----
-  #define READLINE_LIBRARY
-  
-  #include <stdio.h>
-+ #include <string.h>
-  #include <sys/types.h>
-  #include <fcntl.h>
-  #if !defined (NO_SYS_FILE)
-***************
-*** 3518,3523 ****
---- 3519,3616 ----
-  }
-  
-  #endif /* TEST */
-+ 
-+ #define cr_whitespace(c) ((c) == '\r' || (c) == '\n' || whitespace(c))
-+ 
-+ char *
-+ get_mh_path ()
-+ {
-+   static FILE *fp = (FILE *)NULL;
-+   char buf[512];      /* XXX */
-+   char profile[512];  /* XXX */
-+   char *bp;
-+   char *temp_home;
-+   char *temp_path;
-+ 
-+   temp_home = (char *)getenv ("HOME");
-+   if (!temp_home)
-+     return ((char *)NULL);
-+ 
-+   strcpy (profile, temp_home);
-+   strcat (profile, "/.mh_profile");
-+ 
-+   if (fp)
-+     fclose (fp);
-+ 
-+   fp = fopen (profile, "r");
-+   if (fp == (FILE *)NULL)
-+     return ((char *)NULL);
-+ 
-+   while (fgets (buf, 512, fp) != (char *)NULL)  /* XXX */
-+     {
-+       if ((bp = strstr (buf, "Path:")) != (char *)NULL)
-+      {
-+        bp += 5;
-+        while (whitespace (*bp))
-+          bp++;
-+ 
-+        if (*bp == '\0')
-+          return ((char *)NULL);
-+ 
-+        temp_path = (char *)xmalloc (3 + strlen (bp) + strlen (temp_home));
-+ 
-+        strcpy (temp_path, temp_home);
-+        strcat (temp_path, "/");
-+        strcat (temp_path, bp);
-+ 
-+        bp = temp_path;
-+ 
-+        while (!(cr_whitespace (*bp)))
-+          bp++;
-+ 
-+        *bp = '\0';
-+ 
-+        return temp_path;
-+      }
-+     }
-+ 
-+   return ((char *)NULL);
-+ }
-+ 
-+ /* Expand FILENAME if it begins with a plus.  This always returns
-+    a new string. */
-+ char *
-+ plus_expand (filename)
-+      char *filename;
-+ {
-+   static char *dirname = (char *)NULL;
-+ 
-+   if (filename && *filename == '+')
-+     {
-+       char *mh_path = get_mh_path ();
-+ 
-+       if (filename[1] == '/' || filename[1] == '.')
-+      {
-+        dirname = (char *)xmalloc (1 + strlen (filename));
-+ 
-+        strcpy(dirname, filename+1);
-+ 
-+        return dirname;
-+      }
-+ 
-+       if (mh_path)
-+      {
-+        dirname = (char *)xmalloc (1 + strlen (filename) + strlen (mh_path));
-+ 
-+        strcpy (dirname, mh_path);
-+        strcat (dirname, "/");
-+        strcat (dirname, filename+1);
-+ 
-+        return dirname;
-+      }
-+     }
-+   return (char *)NULL;
-+ }
-  
-  \f
-  /*
-
diff --git a/CWRU/misc/asort.c b/CWRU/misc/asort.c
deleted file mode 100644 (file)
index 5a3a304..0000000
+++ /dev/null
@@ -1,52 +0,0 @@
-#include <stdio.h>
-#include <locale.h>
-
-#include <string.h>
-#include <stdlib.h>
-#include <unistd.h>
-
-static int
-qsort_strcmp(s1, s2)
-char   **s1, **s2;
-{
-       return (strcoll(*s1, *s2));
-}
-
-static void
-usage()
-{
-       fprintf(stderr, "asort: usage: asort [-v] args\n");
-}
-
-int
-main(c, v)
-int    c;
-char   **v;
-{
-       int     i, verbose;
-       char    *dlocale;
-
-       verbose = 0;
-       while ((i = getopt(c, v, "v")) != -1) {
-               switch (i) {
-               case 'v':
-                       verbose = 1; break;
-               case '?':
-               default:
-                       usage();
-                       exit(2);
-               }
-       }
-       c -= optind;
-       v += optind;
-
-       dlocale = setlocale(LC_ALL, "");
-       if (verbose)
-               printf("default locale = %s\n", dlocale ? dlocale : "''");
-       qsort(v, c, sizeof(char *), qsort_strcmp);
-       for (i = 0; i < c; i++) {
-               printf("%s ", v[i]);
-       }
-       printf("\n");
-       exit(0);
-}
diff --git a/CWRU/misc/copyright b/CWRU/misc/copyright
deleted file mode 100644 (file)
index df1b6a7..0000000
+++ /dev/null
@@ -1,17 +0,0 @@
-/* Copyright (C) 2008,2009 Free Software Foundation, Inc.
-
-   This file is part of GNU Bash, the Bourne Again SHell.
-
-   Bash is free software: you can redistribute it and/or modify
-   it under the terms of the GNU General Public License as published by
-   the Free Software Foundation, either version 3 of the License, or
-   (at your option) any later version.
-
-   Bash 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 General Public License for more details.
-
-   You should have received a copy of the GNU General Public License
-   along with Bash.  If not, see <http://www.gnu.org/licenses/>.
-*/
diff --git a/CWRU/misc/endian.c b/CWRU/misc/endian.c
deleted file mode 100644 (file)
index 3dd30b3..0000000
+++ /dev/null
@@ -1,21 +0,0 @@
-#include <stdio.h>
-
-main()
-{
-
-union {
-       long int l;
-       char c[sizeof(long int)];
-} u;
-       int x0, x1, x2, x3;
-
-       u.l = 1;
-       x0 = u.c[0];
-       x3 = u.c[sizeof (long int) - 1];
-       printf ("x0 = %d x3 = %d (%s)\n", x0, x3, x3 == 1 ? "bigendian" : "littleendian");
-       x0 = u.l >> 24;
-       x1 = u.l >> 16;
-       x2 = u.l >> 8;
-       x3 = u.l & 0xff;
-       printf ("x0:x3: %d %d %d %d\n", x0, x1, x2, x3);
-}
diff --git a/CWRU/misc/endian2.c b/CWRU/misc/endian2.c
deleted file mode 100644 (file)
index b84754b..0000000
+++ /dev/null
@@ -1,13 +0,0 @@
-#include <stdio.h>
-int
-main()
-{
-       int i = 0x12345678;
-       char *x;
-
-       x = (char *)&i;
-       printf ("0x%x\n", *x);
-       printf ((*x == 0x78) ? "little endian\n" : "big endian\n");
-       return 0;
-}
diff --git a/CWRU/misc/endian3.c b/CWRU/misc/endian3.c
deleted file mode 100644 (file)
index 86b478b..0000000
+++ /dev/null
@@ -1,21 +0,0 @@
-#include <stdio.h>
-
-main()
-{
-
-       union {
-               int l;
-               char c[sizeof(int)];
-       } u;
-       int x0, x1, x2, x3;
-
-       u.l = 0x012345678;
-       x0 = u.c[0];
-       x3 = u.c[sizeof (int) - 1];
-       printf ("x0 = 0x%x x3 = 0x%x (%s)\n", x0, x3, x3 == 0x78 ? "bigendian" : "littleendian");
-       x0 = (u.l >> 24) & 0xff;
-       x1 = (u.l >> 16) & 0xff;
-       x2 = (u.l >> 8)  & 0xff;
-       x3 = u.l & 0xff;
-       printf ("big endian x0:x3: %x %x %x %x\n", x0, x1, x2, x3);
-}
diff --git a/CWRU/misc/getwd.bsd44.c b/CWRU/misc/getwd.bsd44.c
deleted file mode 100644 (file)
index f5dd39b..0000000
+++ /dev/null
@@ -1,254 +0,0 @@
-/*
- * Copyright (c) 1989, 1991 The Regents of the University of California.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- *    notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- *    notice, this list of conditions and the following disclaimer in the
- *    documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- *    must display the following acknowledgement:
- *     This product includes software developed by the University of
- *     California, Berkeley and its contributors.
- * 4. Neither the name of the University nor the names of its contributors
- *    may be used to endorse or promote products derived from this software
- *    without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- */
-
-#if defined(LIBC_SCCS) && !defined(lint)
-static char sccsid[] = "@(#)getcwd.c   5.11 (Berkeley) 2/24/91";
-#endif /* LIBC_SCCS and not lint */
-
-#include <sys/param.h>
-#include <sys/stat.h>
-#include <errno.h>
-#if defined (HAVE_DIRENT_H)
-#include <dirent.h>
-#else
-#include <sys/dir.h>
-#endif
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-#ifdef HAVE_UNISTD_H
-#include <unistd.h>
-#endif
-
-#ifndef HAVE_DIRENT_H
-#  define dirent direct
-#endif
-
-#define        ISDOT(dp) \
-       (dp->d_name[0] == '.' && (dp->d_name[1] == '\0' || \
-           dp->d_name[1] == '.' && dp->d_name[2] == '\0'))
-
-#ifndef dirfd
-#  define dirfd(d)     ((d)->dd_fd)
-#endif
-
-char *
-getcwd(pt, size)
-       char *pt;
-       size_t size;
-{
-       register struct dirent *dp;
-       register DIR *dir;
-       register dev_t dev;
-       register ino_t ino;
-       register int first;
-       register char *bpt, *bup;
-       struct stat s;
-       dev_t root_dev;
-       ino_t root_ino;
-       size_t ptsize, upsize;
-       int save_errno;
-       char *ept, *eup, *up;
-
-       /*
-        * If no buffer specified by the user, allocate one as necessary.
-        * If a buffer is specified, the size has to be non-zero.  The path
-        * is built from the end of the buffer backwards.
-        */
-       if (pt) {
-               ptsize = 0;
-               if (!size) {
-                       errno = EINVAL;
-                       return((char *)NULL);
-               }
-               ept = pt + size;
-       } else {
-               if (!(pt = (char *)malloc(ptsize = 1024 - 4)))
-                       return((char *)NULL);
-               ept = pt + ptsize;
-       }
-       bpt = ept - 1;
-       *bpt = '\0';
-
-       /*
-        * Allocate bytes (1024 - malloc space) for the string of "../"'s.
-        * Should always be enough (it's 340 levels).  If it's not, allocate
-        * as necessary.  Special * case the first stat, it's ".", not "..".
-        */
-       if (!(up = (char *)malloc(upsize = 1024 - 4)))
-               goto err;
-       eup = up + MAXPATHLEN;
-       bup = up;
-       up[0] = '.';
-       up[1] = '\0';
-
-       /* Save root values, so know when to stop. */
-       if (stat("/", &s))
-               goto err;
-       root_dev = s.st_dev;
-       root_ino = s.st_ino;
-
-       errno = 0;                      /* XXX readdir has no error return. */
-
-       for (first = 1;; first = 0) {
-               /* Stat the current level. */
-               if (lstat(up, &s))
-                       goto err;
-
-               /* Save current node values. */
-               ino = s.st_ino;
-               dev = s.st_dev;
-
-               /* Check for reaching root. */
-               if (root_dev == dev && root_ino == ino) {
-                       *--bpt = '/';
-                       /*
-                        * It's unclear that it's a requirement to copy the
-                        * path to the beginning of the buffer, but it's always
-                        * been that way and stuff would probably break.
-                        */
-                       (void)bcopy(bpt, pt, ept - bpt);
-                       free(up);
-                       return(pt);
-               }
-
-               /*
-                * Build pointer to the parent directory, allocating memory
-                * as necessary.  Max length is 3 for "../", the largest
-                * possible component name, plus a trailing NULL.
-                */
-               if (bup + 3  + MAXNAMLEN + 1 >= eup) {
-                       if (!(up = (char *)realloc(up, upsize *= 2)))
-                               goto err;
-                       eup = up + upsize;
-               }
-               *bup++ = '.';
-               *bup++ = '.';
-               *bup = '\0';
-
-               /* Open and stat parent directory. */
-               if (!(dir = opendir(up)) || fstat(dirfd(dir), &s))
-                       goto err;
-
-               /* Add trailing slash for next directory. */
-               *bup++ = '/';
-
-               /*
-                * If it's a mount point, have to stat each element because
-                * the inode number in the directory is for the entry in the
-                * parent directory, not the inode number of the mounted file.
-                */
-               save_errno = 0;
-               if (s.st_dev == dev) {
-                       for (;;) {
-                               if (!(dp = readdir(dir)))
-                                       goto notfound;
-                               if (dp->d_fileno == ino)
-                                       break;
-                       }
-               } else
-                       for (;;) {
-                               if (!(dp = readdir(dir)))
-                                       goto notfound;
-                               if (ISDOT(dp))
-                                       continue;
-                               bcopy(dp->d_name, bup, dp->d_namlen + 1);
-
-                               /* Save the first error for later. */
-                               if (lstat(up, &s)) {
-                                       if (!save_errno)
-                                               save_errno = errno;
-                                       errno = 0;
-                                       continue;
-                               }
-                               if (s.st_dev == dev && s.st_ino == ino)
-                                       break;
-                       }
-
-               /*
-                * Check for length of the current name, preceding slash,
-                * leading slash.
-                */
-               if (bpt - pt <= dp->d_namlen + (first ? 1 : 2)) {
-                       size_t len, off;
-
-                       if (!ptsize) {
-                               errno = ERANGE;
-                               goto err;
-                       }
-                       off = bpt - pt;
-                       len = ept - bpt;
-                       if (!(pt = (char *)realloc(pt, ptsize *= 2)))
-                               goto err;
-                       bpt = pt + off;
-                       ept = pt + ptsize;
-                       (void)bcopy(bpt, ept - len, len);
-                       bpt = ept - len;
-               }
-               if (!first)
-                       *--bpt = '/';
-               bpt -= dp->d_namlen;
-               bcopy(dp->d_name, bpt, dp->d_namlen);
-               (void)closedir(dir);
-
-               /* Truncate any file name. */
-               *bup = '\0';
-       }
-
-notfound:
-       /*
-        * If readdir set errno, use it, not any saved error; otherwise,
-        * didn't find the current directory in its parent directory, set
-        * errno to ENOENT.
-        */
-       if (!errno)
-               errno = save_errno ? save_errno : ENOENT;
-       /* FALLTHROUGH */
-err:
-       if (ptsize)
-               free(pt);
-       free(up);
-       return((char *)NULL);
-}
-
-char *
-getwd(buf)
-       char *buf;
-{
-       char *p;
-
-       if (p = getcwd(buf, MAXPATHLEN))
-               return(p);
-       (void)strcpy(buf, strerror(errno));
-       return((char *)NULL);
-}
diff --git a/CWRU/misc/iptrt.c b/CWRU/misc/iptrt.c
deleted file mode 100644 (file)
index b9d1e2a..0000000
+++ /dev/null
@@ -1,12 +0,0 @@
-#include <stdio.h>
-
-main()
-{
-       if (sizeof(char *) == sizeof(long))
-               printf("long\n");
-       else if (sizeof(char *) == sizeof(short))
-               printf("short\n");
-       else
-               printf("int\n");
-       exit(0);
-}
diff --git a/CWRU/misc/nofd0.c b/CWRU/misc/nofd0.c
deleted file mode 100644 (file)
index 88cae1a..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-main(c, v, e)
-int    c;
-char   **v, **e;
-{
-       close(0);
-       execv(v[1], v+1);
-}
-
-       
diff --git a/CWRU/misc/pcat.c b/CWRU/misc/pcat.c
deleted file mode 100644 (file)
index f520128..0000000
+++ /dev/null
@@ -1,239 +0,0 @@
-/* $Header:cat.c 12.0$ */
-/* $ACIS:cat.c 12.0$ */
-/* $Source: /ibm/acis/usr/src/bin/RCS/cat.c,v $ */
-
-#ifndef lint
-static char *rcsid = "$Header:cat.c 12.0$";
-#endif
-
-/*
- * Copyright (c) 1980 Regents of the University of California.
- * All rights reserved.  The Berkeley software License Agreement
- * specifies the terms and conditions for redistribution.
- */
-
-#ifndef lint
-static char sccsid[] = "@(#)cat.c      5.2 (Berkeley) 12/6/85";
-#endif not lint
-
-/*
- * Concatenate files.
- */
-
-#include <stdio.h>
-#include <sys/types.h>
-#include <sys/stat.h>
-
-/* #define OPTSIZE BUFSIZ      /* define this only if not 4.2 BSD or beyond */
-
-int    bflg, eflg, nflg, sflg, tflg, uflg, vflg;
-int    spaced, col, lno, inline, ibsize, obsize;
-
-#include <signal.h>
-
-sigpipe()
-{
-       write(2, "pcat: caught SIGPIPE\n", 21);
-       exit(1);
-}
-
-main(argc, argv)
-char **argv;
-{
-       int fflg = 0;
-       register FILE *fi;
-       register c;
-       int dev, ino = -1;
-       struct stat statb;
-       int retval = 0;
-
-       signal(SIGPIPE, sigpipe);
-       lno = 1;
-       for( ; argc>1 && argv[1][0]=='-'; argc--,argv++) {
-               switch(argv[1][1]) {
-               case 0:
-                       break;
-               case 'u':
-                       setbuf(stdout, (char *)NULL);
-                       uflg++;
-                       continue;
-               case 'n':
-                       nflg++;
-                       continue;
-               case 'b':
-                       bflg++;
-                       nflg++;
-                       continue;
-               case 'v':
-                       vflg++;
-                       continue;
-               case 's':
-                       sflg++;
-                       continue;
-               case 'e':
-                       eflg++;
-                       vflg++;
-                       continue;
-               case 't':
-                       tflg++;
-                       vflg++;
-                       continue;
-               }
-               break;
-       }
-       if (fstat(fileno(stdout), &statb) == 0) {
-               statb.st_mode &= S_IFMT;
-               if (statb.st_mode!=S_IFCHR && statb.st_mode!=S_IFBLK) {
-                       dev = statb.st_dev;
-                       ino = statb.st_ino;
-               }
-#ifndef        OPTSIZE
-               obsize = statb.st_blksize;
-#endif
-       }
-       else
-               obsize = 0;
-       if (argc < 2) {
-               argc = 2;
-               fflg++;
-       }
-       while (--argc > 0) {
-               if (fflg || (*++argv)[0]=='-' && (*argv)[1]=='\0')
-                       fi = stdin;
-               else {
-                       if ((fi = fopen(*argv, "r")) == NULL) {
-                               perror(*argv);
-                               retval = 1;
-                               continue;
-                       }
-               }
-               if (fstat(fileno(fi), &statb) == 0) {
-                       if ((statb.st_mode & S_IFMT) == S_IFREG &&
-                           statb.st_dev==dev && statb.st_ino==ino) {
-                               fprintf(stderr, "cat: input %s is output\n",
-                                  fflg?"-": *argv);
-                               fclose(fi);
-                               retval = 1;
-                               continue;
-                       }
-#ifndef        OPTSIZE
-                       ibsize = statb.st_blksize;
-#endif
-               }
-               else
-                       ibsize = 0;
-               if (nflg||sflg||vflg)
-                       copyopt(fi);
-               else if (uflg) {
-                       while ((c = getc(fi)) != EOF)
-                               putchar(c);
-               } else
-                       retval |= fastcat(fileno(fi));  /* no flags specified */
-               if (fi!=stdin)
-                       fclose(fi);
-               else
-                       clearerr(fi);           /* reset sticky eof */
-               if (ferror(stdout)) {
-                       fprintf(stderr, "cat: output write error\n");
-                       retval = 1;
-                       break;
-               }
-       }
-       exit(retval);
-}
-
-copyopt(f)
-       register FILE *f;
-{
-       register int c;
-
-top:
-       c = getc(f);
-       if (c == EOF)
-               return;
-       if (c == '\n') {
-               if (inline == 0) {
-                       if (sflg && spaced)
-                               goto top;
-                       spaced = 1;
-               }
-               if (nflg && bflg==0 && inline == 0)
-                       printf("%6d\t", lno++);
-               if (eflg)
-                       putchar('$');
-               putchar('\n');
-               inline = 0;
-               goto top;
-       }
-       if (nflg && inline == 0)
-               printf("%6d\t", lno++);
-       inline = 1;
-       if (vflg) {
-               if (tflg==0 && c == '\t')
-                       putchar(c);
-               else {
-                       if (c > 0177) {
-                               printf("M-");
-                               c &= 0177;
-                       }
-                       if (c < ' ')
-                               printf("^%c", c+'@');
-                       else if (c == 0177)
-                               printf("^?");
-                       else
-                               putchar(c);
-               }
-       } else
-               putchar(c);
-       spaced = 0;
-       goto top;
-}
-
-fastcat(fd)
-register int fd;
-{
-       register int    buffsize, n, nwritten, offset;
-       register char   *buff;
-       struct stat     statbuff;
-       char            *malloc();
-
-#ifndef        OPTSIZE
-       if (obsize)
-               buffsize = obsize;      /* common case, use output blksize */
-       else if (ibsize)
-               buffsize = ibsize;
-       else
-               buffsize = BUFSIZ;
-#else
-       buffsize = OPTSIZE;
-#endif
-
-       if ((buff = malloc(buffsize)) == NULL) {
-               perror("cat: no memory");
-               return (1);
-       }
-
-       /*
-        * Note that on some systems (V7), very large writes to a pipe
-        * return less than the requested size of the write.
-        * In this case, multiple writes are required.
-        */
-       while ((n = read(fd, buff, buffsize)) > 0) {
-               offset = 0;
-               do {
-                       nwritten = write(fileno(stdout), &buff[offset], n);
-                       if (nwritten <= 0) {
-                               perror("cat: write error");
-                               exit(2);
-                       }
-                       offset += nwritten;
-               } while ((n -= nwritten) > 0);
-       }
-
-       free(buff);
-       if (n < 0) {
-               perror("cat: read error");
-               return (1);
-       }
-       return (0);
-}
diff --git a/CWRU/misc/pgrp.c b/CWRU/misc/pgrp.c
deleted file mode 100644 (file)
index 507da56..0000000
+++ /dev/null
@@ -1,13 +0,0 @@
-#include <stdio.h>
-#include <sys/types.h>
-
-int     pid;
-int     pg1;
-
-main()
-{
-       pid = getpid();
-       pg1 = getpgrp(0);
-
-       printf("pid = %d, pgrp = %d\n", pid, pg1);
-}
diff --git a/CWRU/misc/pid.c b/CWRU/misc/pid.c
deleted file mode 100644 (file)
index 458fde4..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-#include <stdio.h>
-
-main()
-{
-       fprintf(stderr, "%d\n", getpid());
-       exit(0);
-}
diff --git a/CWRU/misc/rangecmp.c b/CWRU/misc/rangecmp.c
deleted file mode 100644 (file)
index 8c96502..0000000
+++ /dev/null
@@ -1,45 +0,0 @@
-#include <stdio.h>
-#include <locale.h>
-
-#include <string.h>
-#include <stdlib.h>
-#include <unistd.h>
-
-static void
-usage()
-{
-       fprintf(stderr, "rangecmp: usage: rangecmp [-v] start test end\n");
-}
-
-int
-main(c, v)
-int    c;
-char   **v;
-{
-       int     i, verbose, r1, r2;
-       char    *dlocale;
-
-       verbose = 0;
-       while ((i = getopt(c, v, "v")) != -1) {
-               switch (i) {
-               case 'v':
-                       verbose = 1; break;
-               case '?':
-               default:
-                       usage();
-                       exit(2);
-               }
-       }
-       c -= optind;
-       v += optind;
-
-       dlocale = setlocale(LC_ALL, "");
-       if (verbose)
-               printf("default locale = %s\n", dlocale ? dlocale : "''");
-       r1 = strcoll (v[1], v[0]);
-       printf("strcoll (%s, %s) -> %d\n", v[1], v[0], r1);
-       r2 = strcoll (v[1], v[2]);
-       printf("strcoll (%s, %s) -> %d\n", v[1], v[2], r2);
-
-       exit(0);
-}
diff --git a/CWRU/misc/sigs.dSYM/Contents/Info.plist b/CWRU/misc/sigs.dSYM/Contents/Info.plist
deleted file mode 100644 (file)
index 078424b..0000000
+++ /dev/null
@@ -1,20 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
-<plist version="1.0">
-       <dict>
-               <key>CFBundleDevelopmentRegion</key>
-               <string>English</string>
-               <key>CFBundleIdentifier</key>
-               <string>com.apple.xcode.dsym.sigs</string>
-               <key>CFBundleInfoDictionaryVersion</key>
-               <string>6.0</string>
-               <key>CFBundlePackageType</key>
-               <string>dSYM</string>
-               <key>CFBundleSignature</key>
-               <string>????</string>
-               <key>CFBundleShortVersionString</key>
-               <string>1.0</string>
-               <key>CFBundleVersion</key>
-               <string>1</string>
-       </dict>
-</plist>
diff --git a/CWRU/misc/sigs.dSYM/Contents/Resources/DWARF/sigs b/CWRU/misc/sigs.dSYM/Contents/Resources/DWARF/sigs
deleted file mode 100644 (file)
index 09e76fd..0000000
Binary files a/CWRU/misc/sigs.dSYM/Contents/Resources/DWARF/sigs and /dev/null differ
diff --git a/CWRU/misc/sigstat.dSYM/Contents/Info.plist b/CWRU/misc/sigstat.dSYM/Contents/Info.plist
deleted file mode 100644 (file)
index 801b23e..0000000
+++ /dev/null
@@ -1,20 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
-<plist version="1.0">
-       <dict>
-               <key>CFBundleDevelopmentRegion</key>
-               <string>English</string>
-               <key>CFBundleIdentifier</key>
-               <string>com.apple.xcode.dsym.sigstat</string>
-               <key>CFBundleInfoDictionaryVersion</key>
-               <string>6.0</string>
-               <key>CFBundlePackageType</key>
-               <string>dSYM</string>
-               <key>CFBundleSignature</key>
-               <string>????</string>
-               <key>CFBundleShortVersionString</key>
-               <string>1.0</string>
-               <key>CFBundleVersion</key>
-               <string>1</string>
-       </dict>
-</plist>
diff --git a/CWRU/misc/sigstat.dSYM/Contents/Resources/DWARF/sigstat b/CWRU/misc/sigstat.dSYM/Contents/Resources/DWARF/sigstat
deleted file mode 100644 (file)
index c7e7682..0000000
Binary files a/CWRU/misc/sigstat.dSYM/Contents/Resources/DWARF/sigstat and /dev/null differ
diff --git a/CWRU/misc/stderr.c b/CWRU/misc/stderr.c
deleted file mode 100644 (file)
index f1ec1dc..0000000
+++ /dev/null
@@ -1,12 +0,0 @@
-#include <stdio.h>
-
-main()
-{
-       fprintf(stdout, "to stdout\n");
-       fprintf(stderr, "to stderr\n");
-       fprintf(stdout, "to stdout\n");
-       fprintf(stderr, "to stderr\n");
-       exit(0);
-}
-
-       
diff --git a/CWRU/misc/test-strtod.c b/CWRU/misc/test-strtod.c
deleted file mode 100644 (file)
index e76f93a..0000000
+++ /dev/null
@@ -1,33 +0,0 @@
-#include <stdlib.h>
-#include <stdio.h>
-#include <errno.h>
-
-
-#ifndef errno
-extern int errno;
-#endif
-
-main(c, v)
-int    c;
-char   **v;
-{
-       double  dv, dv2;
-       char    *sv, *ep;
-       int     r;
-
-       sv = "4.2";
-       dv = 4.2;
-
-       errno = 0;
-       dv2 = strtod(sv, &ep);
-       if (*ep)
-               exit(1);
-       else if (errno == ERANGE)
-               exit(1);
-       if (dv != dv2)
-               exit(1);
-       exit(0);
-}
-
-       
-       
diff --git a/CWRU/new/execute_cmd.c.lastpipe-first b/CWRU/new/execute_cmd.c.lastpipe-first
deleted file mode 100644 (file)
index 6b7b533..0000000
+++ /dev/null
@@ -1,3176 +0,0 @@
-/* execute_command.c -- Execute a COMMAND structure. */
-
-/* Copyright (C) 1987,1991 Free Software Foundation, Inc.
-
-   This file is part of GNU Bash, the Bourne Again SHell.
-
-   Bash is free software; you can redistribute it and/or modify it
-   under the terms of the GNU General Public License as published by
-   the Free Software Foundation; either version 1, or (at your option)
-   any later version.
-
-   Bash 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 General Public
-   License for more details.
-
-   You should have received a copy of the GNU General Public License
-   along with Bash; see the file COPYING.  If not, write to the Free
-   Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */
-
-#include <stdio.h>
-#include <ctype.h>
-#include <sys/types.h>
-#include <sys/file.h>
-#include "posixstat.h"
-#include "filecntl.h"
-#include <signal.h>
-
-#if !defined (SIGABRT)
-#define SIGABRT SIGIOT
-#endif
-
-#include <sys/param.h>
-#include <errno.h>
-
-#include "shell.h"
-#include "y.tab.h"
-#include "flags.h"
-#include "hash.h"
-#include "jobs.h"
-
-#include "sysdefs.h"
-#include <glob/fnmatch.h>
-
-#if defined (BUFFERED_INPUT)
-#  include "input.h"
-#endif
-
-#define CMD_NO_WAIT    0x40    /* XXX move to command.h */
-#define CMD_LAST_PIPE  0x80    /* XXX ditto */
-
-#if !defined (errno)
-extern int errno;
-#endif
-
-extern int breaking, continuing, loop_level;
-extern int interactive, login_shell;
-
-#if defined (JOB_CONTROL)
-extern int job_control;
-extern int set_job_control ();
-#endif /* JOB_CONTROL */
-
-extern int getdtablesize ();
-extern int close ();
-extern char *strerror ();
-extern char *string_list ();
-
-#if defined (USG)
-extern pid_t last_made_pid;
-#endif
-
-struct stat SB;
-
-extern WORD_LIST *expand_words (), *expand_word ();
-extern WORD_LIST *expand_word_leave_quoted ();
-extern char *make_command_string ();
-
-extern Function *find_shell_builtin (), *builtin_address ();
-extern SigHandler *set_sigint_handler ();
-
-#if defined (PROCESS_SUBSTITUTION)
-void close_all_files ();
-#endif /* PROCESS_SUBSTITUTION */
-
-/* Static functions defined and used in this file. */
-static void close_pipes (), do_piping (), execute_disk_command ();
-static void execute_subshell_builtin_or_function ();
-static void cleanup_redirects (), cleanup_func_redirects (), bind_lastarg ();
-static void add_undo_close_redirect ();
-static int do_redirection_internal (), do_redirections ();
-static int expandable_redirection_filename (), execute_shell_script ();
-static int execute_builtin_or_function (), add_undo_redirect ();
-static char *find_user_command_internal (), *find_user_command_in_path ();
-
-/* The value returned by the last synchronous command. */
-int last_command_exit_value = 0;
-
-/* The list of redirections to preform which will undo the redirections
-   that I made in the shell. */
-REDIRECT *redirection_undo_list = (REDIRECT *)NULL;
-
-/* Have we just forked, and are we now running in a subshell environment? */
-int subshell_environment = 0;
-
-/* Use this as the function to call when adding unwind protects so we
-   don't need to know what free() returns. */
-void
-vfree (string)
-     char *string;
-{
-  free (string);
-}
-
-#define FD_BITMAP_DEFAULT_SIZE 32
-/* Functions to allocate and deallocate the structures used to pass
-   information from the shell to its children about file descriptors
-   to close. */
-struct fd_bitmap *
-new_fd_bitmap (size)
-     long size;
-{
-  struct fd_bitmap *ret;
-
-  ret = (struct fd_bitmap *)xmalloc (sizeof (struct fd_bitmap));
-
-  ret->size = size;
-
-  if (size)
-    {
-      ret->bitmap = (char *)xmalloc (size);
-      bzero (ret->bitmap, size);
-    }
-  else
-    ret->bitmap = (char *)NULL;
-  return (ret);
-}
-
-void
-dispose_fd_bitmap (fdbp)
-     struct fd_bitmap *fdbp;
-{
-  if (fdbp->bitmap)
-    free (fdbp->bitmap);
-
-  free (fdbp);
-}
-
-void
-close_fd_bitmap (fdbp)
-     struct fd_bitmap *fdbp;
-{
-  register int i;
-
-  if (fdbp)
-    {
-      for (i = 0; i < fdbp->size; i++)
-       if (fdbp->bitmap[i])
-         {
-           close (i);
-           fdbp->bitmap[i] = 0;
-         }
-    }
-}
-
-/* Execute the command passed in COMMAND.  COMMAND is exactly what
-   read_command () places into GLOBAL_COMMAND.  See "command.h" for the
-   details of the command structure.
-
-   EXECUTION_SUCCESS or EXECUTION_FAILURE are the only possible
-   return values.  Executing a command with nothing in it returns
-   EXECUTION_SUCCESS. */
-execute_command (command)
-     COMMAND *command;
-{
-  struct fd_bitmap *bitmap;
-  int result;
-
-  bitmap = new_fd_bitmap (FD_BITMAP_DEFAULT_SIZE);
-
-  /* Just do the command, but not asynchronously. */
-  result = execute_command_internal (command, 0, NO_PIPE, NO_PIPE, bitmap);
-
-  dispose_fd_bitmap (bitmap);
-
-#if defined (PROCESS_SUBSTITUTION)
-  unlink_fifo_list ();
-#endif /* PROCESS_SUBSTITUTION */
-
-  return (result);
-}
-
-/* Return 1 if TYPE is a shell control structure type. */
-int
-shell_control_structure (type)
-     enum command_type type;
-{
-  switch (type)
-    {
-    case cm_for:
-    case cm_case:
-    case cm_while:
-    case cm_until:
-    case cm_if:
-    case cm_group:
-      return (1);
-
-    default:
-      return (0);
-    }
-}
-
-/* A function to use to unwind_protect the redirection undo list
-   for loops. */
-static void
-cleanup_redirects (list)
-     REDIRECT *list;
-{
-  do_redirections (list, 1, 0, 0);
-  dispose_redirects (list);
-}
-
-/* Function to unwind_protect the redirections for functions and builtins. */
-static void
-cleanup_func_redirects (list)
-     REDIRECT *list;
-{
-  do_redirections (list, 1, 0, 0);
-}
-
-#if defined (JOB_CONTROL)
-/* A function to restore the signal mask to its proper value when the shell
-   is interrupted or errors occur while creating a pipeline. */
-static int
-restore_signal_mask (set)
-     sigset_t set;
-{
-  return (sigprocmask (SIG_SETMASK, &set, (sigset_t *)NULL));
-}
-#endif /* JOB_CONTROL */
-
-/* A debugging function that can be called from gdb, for instance. */
-open_files ()
-{
-  register int i;
-  int f, fd_table_size;
-
-  fd_table_size = getdtablesize ();
-
-  fprintf (stderr, "pid %d open files:", getpid ());
-  for (i = 3; i < fd_table_size; i++)
-    {
-      if ((f = fcntl (i, F_GETFD, 0)) != -1)
-       fprintf (stderr, " %d (%s)", i, f ? "close" : "open");
-    }
-  fprintf (stderr, "\n");
-}
-
-execute_command_internal (command, asynchronous, pipe_in, pipe_out, 
-                         fds_to_close)
-     COMMAND *command;
-     int asynchronous;
-     int pipe_in, pipe_out;
-     struct fd_bitmap *fds_to_close;
-{
-  int exec_result = EXECUTION_SUCCESS;
-  int invert, ignore_return;
-  REDIRECT *my_undo_list;
-
-  if (!command || breaking || continuing)
-    return (EXECUTION_SUCCESS);
-
-  run_pending_traps ();
-
-  invert = (command->flags & CMD_INVERT_RETURN) != 0;
-
-  /* If a command was being explicitly run in a subshell, or if it is
-     a shell control-structure, and it has a pipe, then we do the command
-     in a subshell. */
-
-  if ((command->flags & CMD_WANT_SUBSHELL) ||
-      (command->flags & CMD_FORCE_SUBSHELL)  ||
-      (shell_control_structure (command->type) &&
-       (pipe_out != NO_PIPE || pipe_in != NO_PIPE || asynchronous)))
-    {
-      pid_t paren_pid;
-
-      /* Fork a subshell, turn off the subshell bit, turn off job
-        control and call execute_command () on the command again. */
-      paren_pid = make_child (savestring (make_command_string (command)),
-                             asynchronous);
-      if (paren_pid == 0)
-       {
-         int user_subshell, return_code;
-
-#if defined (JOB_CONTROL)
-         set_sigchld_handler ();
-#endif /* JOB_CONTROL */
-
-         set_sigint_handler ();
-
-         user_subshell = (command->flags & CMD_WANT_SUBSHELL) != 0;
-         command->flags &= ~(CMD_FORCE_SUBSHELL | CMD_WANT_SUBSHELL);
-
-         /* If a command is asynchronous in a subshell (like ( foo ) & or
-            the special case of an asynchronous GROUP command where the
-            the subshell bit is turned on down in case cm_group: below), 
-            turn off `asynchronous', so that two subshells aren't spawned.
-
-            This seems semantically correct to me.  For example, 
-            ( foo ) & seems to say ``do the command `foo' in a subshell
-            environment, but don't wait for that subshell to finish'',
-            and "{ foo ; bar } &" seems to me to be like functions or
-            builtins in the background, which executed in a subshell
-            environment.  I just don't see the need to fork two subshells. */
-
-         /* Don't fork again, we are already in a subshell. */
-         asynchronous = 0;
-
-         /* Subshells are neither login nor interactive. */
-         login_shell = interactive = 0;
-
-         subshell_environment = 1;
-
-#if defined (JOB_CONTROL)
-         /* Delete all traces that there were any jobs running.  This is
-            only for subshells. */
-         without_job_control ();
-#endif /* JOB_CONTROL */
-         do_piping (pipe_in, pipe_out);
-
-         if (fds_to_close)
-           close_fd_bitmap (fds_to_close);
-
-         /* Do redirections, then dispose of them before recursive call. */
-         if (command->redirects)
-           {
-             if (do_redirections (command->redirects, 1, 0, 0) != 0)
-               exit (EXECUTION_FAILURE);
-
-             dispose_redirects (command->redirects);
-             command->redirects = (REDIRECT *)NULL;
-           }
-
-         return_code = execute_command_internal
-           (command, asynchronous, NO_PIPE, NO_PIPE, fds_to_close);
-
-         /* If we were explicitly placed in a subshell with (), we need
-            to do the `shell cleanup' things, such as running traps[0]. */
-         if (user_subshell)
-           run_exit_trap ();
-
-         exit (return_code);
-       }
-      else
-       {
-         close_pipes (pipe_in, pipe_out);
-
-         /* If we are part of a pipeline, and not the end of the pipeline,
-            then we should simply return and let the last command in the
-            pipe be waited for.  If we are not in a pipeline, or are the
-            last command in the pipeline, then we wait for the subshell 
-            and return its exit status as usual. */
-         if (pipe_out != NO_PIPE)
-           return (EXECUTION_SUCCESS);
-
-         if (command->flags & CMD_NO_WAIT)
-           return (EXECUTION_SUCCESS);
-
-         stop_pipeline (asynchronous, (COMMAND *)NULL);
-
-         if (!asynchronous)
-           {
-             last_command_exit_value = wait_for (paren_pid);
-
-             /* If we have to, invert the return value. */
-             if (invert)
-               {
-                 if (last_command_exit_value == EXECUTION_SUCCESS)
-                   return (EXECUTION_FAILURE);
-                 else
-                   return (EXECUTION_SUCCESS);
-               }
-             else
-               return (last_command_exit_value);
-           }
-         else
-           {
-             if (interactive)
-               describe_pid (paren_pid);
-
-             run_pending_traps ();
-
-             return (EXECUTION_SUCCESS);
-           }
-       }
-    }
-
-  /* Handle WHILE FOR CASE etc. with redirections.  (Also '&' input
-     redirection.)  */
-  if (do_redirections (command->redirects, 1, 1, 0) != 0)
-    return (EXECUTION_FAILURE);
-
-  my_undo_list = (REDIRECT *)copy_redirects (redirection_undo_list);
-
-  begin_unwind_frame ("loop_redirections");
-
-  if (my_undo_list)
-    add_unwind_protect ((Function *)cleanup_redirects, my_undo_list);
-
-  ignore_return = (command->flags & CMD_IGNORE_RETURN) != 0;
-
-  switch (command->type)
-    {
-    case cm_for:
-      if (ignore_return)
-       command->value.For->flags |= CMD_IGNORE_RETURN;
-      exec_result = execute_for_command (command->value.For);
-      break;
-
-    case cm_case:
-      if (ignore_return)
-       command->value.Case->flags |= CMD_IGNORE_RETURN;
-      exec_result = execute_case_command (command->value.Case);
-      break;
-
-    case cm_while:
-      if (ignore_return)
-       command->value.While->flags |= CMD_IGNORE_RETURN;
-      exec_result = execute_while_command (command->value.While);
-      break;
-
-    case cm_until:
-      if (ignore_return)
-       command->value.While->flags |= CMD_IGNORE_RETURN;
-      exec_result = execute_until_command (command->value.While);
-      break;
-
-    case cm_if:
-      if (ignore_return)
-       command->value.If->flags |= CMD_IGNORE_RETURN;
-      exec_result = execute_if_command (command->value.If);
-      break;
-
-    case cm_group:
-
-      /* This code can be executed from either of two paths: an explicit
-        '{}' command, or via a function call.  If we are executed via a
-        function call, we have already taken care of the function being
-        executed in the background (down there in execute_simple_command ()),
-        and this command should *not* be marked as asynchronous.  If we
-        are executing a regular '{}' group command, and asynchronous == 1,
-        we must want to execute the whole command in the background, so we
-        need a subshell, and we want the stuff executed in that subshell
-        (this group command) to be executed in the foreground of that
-        subshell (i.e. there will not be *another* subshell forked).
-
-        What we do is to force a subshell if asynchronous, and then call
-        execute_command_internal again with asynchronous still set to 1,
-        but with the original group command, so the printed command will
-        look right.
-
-        The code above that handles forking off subshells will note that
-        both subshell and async are on, and turn off async in the child
-        after forking the subshell (but leave async set in the parent, so
-        the normal call to describe_pid is made).  This turning off
-        async is *crucial*; if it is not done, this will fall into an
-        infinite loop of executions through this spot in subshell after
-        subshell until the process limit is exhausted. */
-
-      if (asynchronous)
-       {
-         command->flags |= CMD_FORCE_SUBSHELL;
-         exec_result =
-           execute_command_internal (command, 1, pipe_in, pipe_out,
-                                     fds_to_close);
-       }
-      else
-       {
-         if (ignore_return && command->value.Group->command)
-           command->value.Group->command->flags |= CMD_IGNORE_RETURN;
-         exec_result =
-           execute_command_internal (command->value.Group->command,
-                                     asynchronous, pipe_in, pipe_out,
-                                     fds_to_close);
-       }
-      break;
-
-    case cm_simple:
-      {
-       pid_t last_pid = last_made_pid;
-
-#if defined (JOB_CONTROL)
-       extern int already_making_children;
-#endif /* JOB_CONTROL */
-       if (ignore_return && command->value.Simple)
-         command->value.Simple->flags |= CMD_IGNORE_RETURN;
-       exec_result =
-         execute_simple_command (command->value.Simple, pipe_in, pipe_out,
-                                 asynchronous, fds_to_close);
-
-       /* The temporary environment should be used for only the simple
-          command immediately following its definition. */
-       dispose_used_env_vars ();
-
-#if (defined (Ultrix) && defined (mips)) || !defined (HAVE_ALLOCA)
-       /* Reclaim memory allocated with alloca () on machines which
-          may be using the alloca emulation code. */
-       (void) alloca (0);
-#endif /* (Ultrix && mips) || !HAVE_ALLOCA */
-
-       if (command->flags & CMD_NO_WAIT)
-         break;
-
-       /* If we forked to do the command, then we must wait_for ()
-          the child. */
-#if defined (JOB_CONTROL)
-       if (already_making_children && pipe_out == NO_PIPE)
-#else
-       if (pipe_out == NO_PIPE)
-#endif /* JOB_CONTROL */
-         {
-           if (last_pid != last_made_pid)
-             {
-               stop_pipeline (asynchronous, (COMMAND *)NULL);
-
-               if (asynchronous)
-                 {
-                   if (interactive)
-                     describe_pid (last_made_pid);
-                 }
-               else
-#if !defined (JOB_CONTROL)
-                 /* Do not wait for asynchronous processes started from
-                    startup files. */
-                 if (last_made_pid != last_asynchronous_pid)
-#endif
-                   /* When executing a shell function that executes other
-                      commands, this causes the last simple command in
-                      the function to be waited for twice. */
-                   exec_result = wait_for (last_made_pid);
-             }
-         }
-      }
-      if (!ignore_return && exit_immediately_on_error && !invert &&
-         (exec_result != EXECUTION_SUCCESS))
-       {
-         last_command_exit_value = exec_result;
-         run_pending_traps ();
-         longjmp (top_level, EXITPROG);
-       }
-
-      break;
-
-    case cm_connection:
-      switch (command->value.Connection->connector)
-       {
-         /* Do the first command asynchronously. */
-       case '&':
-         {
-           COMMAND *tc = command->value.Connection->first;
-           REDIRECT *rp = tc->redirects;
-
-           if (ignore_return && tc)
-             tc->flags |= CMD_IGNORE_RETURN;
-
-           /* If this shell was compiled without job control, or if job
-              control is not active (e.g., if the shell is not interactive),
-              the standard input for an asynchronous command is /dev/null. */
-#if defined (JOB_CONTROL)
-           if (!interactive || !job_control)
-#endif /* JOB_CONTROL */
-           {
-             REDIRECT *tr = 
-               make_redirection (0, r_inputa_direction,
-                                 make_word ("/dev/null"));
-             tr->next = tc->redirects;
-             tc->redirects = tr;
-           }
-
-           exec_result = execute_command_internal (tc, 1, pipe_in, pipe_out,
-                                                   fds_to_close);
-
-#if defined (JOB_CONTROL)
-           if (!interactive || !job_control)
-#endif /* JOB_CONTROL */
-           {
-             /* Remove the redirection we added above.  It matters,
-                especially for loops, which call execute_command ()
-                multiple times with the same command. */
-             REDIRECT *tr, *tl;
-
-             tr = tc->redirects;
-             do
-               {
-                 tl = tc->redirects;
-                 tc->redirects = tc->redirects->next;
-               }
-             while (tc->redirects && tc->redirects != rp);
-
-             tl->next = (REDIRECT *)NULL;
-             dispose_redirects (tr);
-           }
-
-           {
-             register COMMAND *second;
-
-             second = command->value.Connection->second;
-
-             if (second)
-               {
-                 if (ignore_return)
-                   second->flags |= CMD_IGNORE_RETURN;
-
-                 exec_result = execute_command_internal
-                   (second, asynchronous, pipe_in, pipe_out, fds_to_close);
-               }
-           }
-         }
-         break;
-
-       case ';':
-         /* Just call execute command on both of them. */
-         if (ignore_return)
-           {
-             if (command->value.Connection->first)
-               command->value.Connection->first->flags |= CMD_IGNORE_RETURN;
-             QUIT;
-             if (command->value.Connection->second)
-               command->value.Connection->second->flags |= CMD_IGNORE_RETURN;
-           }
-         execute_command (command->value.Connection->first);
-         QUIT;
-         exec_result =
-           execute_command_internal (command->value.Connection->second,
-                                     asynchronous, pipe_in, pipe_out,
-                                     fds_to_close);
-         break;
-
-       case '|':
-         {
-           int prev, fildes[2], new_bitmap_size, dummyfd;
-           COMMAND *cmd;
-           int outpipe;
-           struct fd_bitmap *fd_bitmap;
-
-#if defined (JOB_CONTROL)
-           COMMAND *lastcmd;
-           int lastpipe[2];
-           pid_t lastpipe_pid;
-
-           sigset_t set, oset;
-           BLOCK_CHILD (set, oset);
-#endif /* JOB_CONTROL */
-
-#if defined (JOB_CONTROL)
-           /* Fork the last command in the pipeline first, then the rest of
-              the commands, to avoid synchronization problems. */
-           /* Find the last pipeline element */
-           lastcmd = command;
-           while (lastcmd && lastcmd->type == cm_connection &&
-                  lastcmd->value.Connection &&
-                  lastcmd->value.Connection->connector == '|')
-             lastcmd = lastcmd->value.Connection->second;
-
-           if (pipe (lastpipe) < 0)
-             {
-               report_error ("pipe error: %s", strerror (errno));
-               terminate_current_pipeline ();
-               kill_current_pipeline ();
-               last_command_exit_value = EXECUTION_FAILURE;
-               throw_to_top_level ();
-             }
-
-           /* Now execute the rightmost command in the pipeline, but do
-              not wait for it. */
-           if (ignore_return && lastcmd)
-             lastcmd->flags |= CMD_IGNORE_RETURN;
-           lastcmd->flags |= (CMD_NO_WAIT | CMD_LAST_PIPE);
-           fds_to_close->bitmap[lastpipe[1]] = 1;
-           (void) execute_command_internal
-             (lastcmd, asynchronous, lastpipe[0], pipe_out, fds_to_close);
-           lastpipe_pid = last_made_pid;
-#endif /* JOB_CONTROL */
-
-           prev = pipe_in;
-           cmd = command;
-
-           while (cmd &&
-                  cmd->type == cm_connection &&
-                  cmd->value.Connection &&
-                  cmd->value.Connection->connector == '|')
-             {
-               /* Make a pipeline between the two commands. */
-               if (pipe (fildes) < 0)
-                 {
-                   report_error ("pipe error: %s", strerror (errno));
-#if defined (JOB_CONTROL)
-                   terminate_current_pipeline ();
-                   kill_current_pipeline ();
-#endif /* JOB_CONTROL */
-                   last_command_exit_value = EXECUTION_FAILURE;
-                   /* The unwind-protects installed below will take care
-                      of closing all of the open file descriptors. */
-                   throw_to_top_level ();
-                 }
-               else
-                 {
-                   /* Here is a problem: with the new file close-on-exec
-                      code, the read end of the pipe (fildes[0]) stays open
-                      in the first process, so that process will never get a
-                      SIGPIPE.  There is no way to signal the first process
-                      that it should close fildes[0] after forking, so it
-                      remains open.  No SIGPIPE is ever sent because there
-                      is still a file descriptor open for reading connected
-                      to the pipe.  We take care of that here.  This passes
-                      around a bitmap of file descriptors that must be
-                      closed after making a child process in
-                      execute_simple_command. */
-
-                   /* We need fd_bitmap to be at least as big as fildes[0].
-                      If fildes[0] is less than fds_to_close->size, then
-                      use fds_to_close->size. */
-
-                   if (fildes[0] < fds_to_close->size)
-                     new_bitmap_size = fds_to_close->size;
-                   else
-                     new_bitmap_size = fildes[0] + 8;
-
-                   fd_bitmap = new_fd_bitmap (new_bitmap_size);
-
-                   /* Now copy the old information into the new bitmap. */
-                   bcopy (fds_to_close->bitmap, fd_bitmap->bitmap,
-                          fds_to_close->size);
-
-                   /* And mark the pipe file descriptors to be closed. */
-                   fd_bitmap->bitmap[fildes[0]] = 1;
-
-                   /* In case there are pipe or out-of-processes errors, we
-                      want all these file descriptors to be closed when
-                      unwind-protects are run, and the storage used for the
-                      bitmaps freed up. */
-                   begin_unwind_frame ("pipe-file-descriptors");
-                   add_unwind_protect (dispose_fd_bitmap, fd_bitmap);
-                   add_unwind_protect (close_fd_bitmap, fd_bitmap);
-                   if (prev >= 0)
-                     add_unwind_protect (close, prev);
-                   dummyfd = fildes[1];
-                   add_unwind_protect (close, dummyfd);
-
-#if defined (JOB_CONTROL)
-                   add_unwind_protect (restore_signal_mask, oset);
-#endif /* JOB_CONTROL */
-
-                   if (ignore_return && cmd->value.Connection->first)
-                     cmd->value.Connection->first->flags |=
-                       CMD_IGNORE_RETURN;
-
-#if defined (JOB_CONTROL)
-                   if (cmd->value.Connection->second == lastcmd)
-                     {
-                       outpipe = lastpipe[1];
-                       close (fildes[1]);
-                     }
-                   else
-#endif /* JOB_CONTROL */
-                     outpipe = fildes[1];
-
-                   execute_command_internal
-                     (cmd->value.Connection->first, asynchronous, prev,
-                      outpipe, fd_bitmap);
-
-                   if (prev >= 0)
-                     close (prev);
-                   
-                   prev = fildes[0];
-                   close (outpipe);
-
-                   dispose_fd_bitmap (fd_bitmap);
-                   discard_unwind_frame ("pipe-file-descriptors");
-                 }
-               cmd = cmd->value.Connection->second;
-#if defined (JOB_CONTROL)
-               if (cmd == lastcmd)
-                 break;
-#endif
-             }
-
-#if !defined (JOB_CONTROL)
-           /* Now execute the rightmost command in the pipeline.  */
-           if (ignore_return && cmd)
-             cmd->flags |= CMD_IGNORE_RETURN;
-           exec_result =
-             execute_command_internal
-               (cmd, asynchronous, prev, pipe_out, fds_to_close);
-#endif /* !JOB_CONTROL */
-
-           if (prev >= 0)
-             close (prev);
-
-#if defined (JOB_CONTROL)
-           UNBLOCK_CHILD (oset);
-#endif
-
-#if defined (JOB_CONTROL)
-           /* Because we created the processes out of order, we have to
-              reorder the pipeline slightly. */
-           rotate_the_pipeline ();
-           stop_pipeline (asynchronous, (COMMAND *)NULL);
-           if (asynchronous && interactive)
-             describe_pid (lastpipe_pid);
-           exec_result = wait_for (lastpipe_pid);
-           if (!ignore_return && exit_immediately_on_error && !invert &&
-               (exec_result != EXECUTION_SUCCESS))
-             {
-               last_command_exit_value = exec_result;
-               run_pending_traps ();
-               longjmp (top_level, EXITPROG);
-             }
-#endif /* JOB_CONTROL */
-         }
-         break;
-
-       case AND_AND:
-         if (asynchronous)
-           {
-             /* If we have something like `a && b &', run the && stuff in a
-                subshell.  Force a subshell and just call
-                execute_command_internal again.  Leave asynchronous on
-                so that we get a report from the parent shell about the
-                background job. */
-             command->flags |= CMD_FORCE_SUBSHELL;
-             exec_result = execute_command_internal (command, 1, pipe_in,
-                             pipe_out, fds_to_close);
-             break;
-           }
-
-         /* Execute the first command.  If the result of that is successful,
-            then execute the second command, otherwise return. */
-
-         if (command->value.Connection->first)
-           command->value.Connection->first->flags |= CMD_IGNORE_RETURN;
-
-         exec_result = execute_command (command->value.Connection->first);
-         QUIT;
-         if (exec_result == EXECUTION_SUCCESS)
-           {
-             if (ignore_return && command->value.Connection->second)
-               command->value.Connection->second->flags |=
-                 CMD_IGNORE_RETURN;
-
-             exec_result =
-               execute_command (command->value.Connection->second);
-           }
-         break;
-
-       case OR_OR:
-         if (asynchronous)
-           {
-             /* If we have something like `a || b &', run the || stuff in a
-                subshell.  Force a subshell and just call
-                execute_command_internal again.  Leave asynchronous on
-                so that we get a report from the parent shell about the
-                background job. */
-             command->flags |= CMD_FORCE_SUBSHELL;
-             exec_result = execute_command_internal (command, 1, pipe_in,
-                             pipe_out, fds_to_close);
-             break;
-           }
-
-         /* Execute the first command.  If the result of that is successful,
-            then return, otherwise execute the second command. */
-
-         if (command->value.Connection->first)
-           command->value.Connection->first->flags |= CMD_IGNORE_RETURN;
-
-         exec_result = execute_command (command->value.Connection->first);
-         QUIT;
-         if (exec_result != EXECUTION_SUCCESS)
-           {
-             if (ignore_return && command->value.Connection->second)
-               command->value.Connection->second->flags |=
-                 CMD_IGNORE_RETURN;
-
-             exec_result =
-               execute_command (command->value.Connection->second);
-           }
-
-         break;
-
-       default:
-         programming_error ("Bad connector `%d'!",
-                            command->value.Connection->connector);
-         longjmp (top_level, DISCARD);
-         break;
-       }
-      break;
-
-    case cm_function_def:
-      exec_result = intern_function (command->value.Function_def->name,
-                                    command->value.Function_def->command);
-      break;
-
-    default:
-      programming_error
-       ("execute_command: Bad command type `%d'!", command->type);
-    }
-
-  if (my_undo_list)
-    {
-      do_redirections (my_undo_list, 1, 0, 0);
-      dispose_redirects (my_undo_list);
-    }
-
-  discard_unwind_frame ("loop_redirections");
-
-  /* Invert the return value if we have to */
-  if (invert)
-    {
-      if (exec_result == EXECUTION_SUCCESS)
-       exec_result = EXECUTION_FAILURE;
-      else
-       exec_result = EXECUTION_SUCCESS;
-    }
-
-  last_command_exit_value = exec_result;
-  run_pending_traps ();
-  return (last_command_exit_value);
-}
-
-/* Execute a FOR command.  The syntax is: FOR word_desc IN word_list;
-   DO command; DONE */
-execute_for_command (for_command)
-     FOR_COM *for_command;
-{
-  /* I just noticed that the Bourne shell leaves word_desc bound to the
-     last name in word_list after the FOR statement is done.  This seems
-     wrong to me; I thought that the variable binding should be lexically
-     scoped, i.e., only would last the duration of the FOR command.  This
-     behaviour can be gotten by turning on the lexical_scoping switch. */
-
-  register WORD_LIST *releaser, *list;
-  WORD_DESC *temp = for_command->name;
-  char *identifier;
-  SHELL_VAR *old_value = (SHELL_VAR *)NULL; /* Remember the old value of x. */
-  int retval = EXECUTION_SUCCESS;
-  extern int dispose_words ();
-  extern int dispose_variable ();
-
-  if (!check_identifier (temp))
-    return (EXECUTION_FAILURE);
-
-  loop_level++;
-  identifier = temp->word;
-
-  list = releaser = expand_words (for_command->map_list, 0);
-
-  begin_unwind_frame ("for");
-  add_unwind_protect (dispose_words, releaser);
-
-  if (lexical_scoping)
-    {
-      old_value = copy_variable (find_variable (identifier));
-      if (old_value)
-       add_unwind_protect (dispose_variable, old_value);
-    }
-
-  while (list)
-    {
-      QUIT;
-      bind_variable (identifier, list->word->word);
-      if (for_command->flags & CMD_IGNORE_RETURN)
-       for_command->action->flags |= CMD_IGNORE_RETURN;
-      execute_command (for_command->action);
-      retval = last_command_exit_value;
-      QUIT;
-
-      if (breaking)
-       {
-         breaking--; 
-         break;
-       }
-
-      if (continuing)
-       {
-         continuing--;
-         if (continuing)
-           break;
-       }
-
-      list = list->next;
-    }
-
-  loop_level--;
-
-  if (lexical_scoping)
-    {
-      if (!old_value)
-       makunbound (identifier, shell_variables);
-      else
-       {
-         SHELL_VAR *new_value;
-
-         new_value = bind_variable (identifier, value_cell(old_value));
-         new_value->attributes = old_value->attributes;
-       }
-    }
-
-  run_unwind_frame ("for");
-  return (retval);
-}
-
-/* Execute a CASE command.  The syntax is: CASE word_desc IN pattern_list ESAC.
-   The pattern_list is a linked list of pattern clauses; each clause contains
-   some patterns to compare word_desc against, and an associated command to
-   execute. */
-execute_case_command (case_command)
-     CASE_COM *case_command;
-{
-  extern int dispose_words ();
-  extern char *tilde_expand ();
-  register WORD_LIST *list;
-  WORD_LIST *wlist;
-  PATTERN_LIST *clauses;
-  char *word;
-  int retval;
-
-  /* Posix.2 Draft 11.2 says that the word is tilde expanded. */
-  if (member ('~', case_command->word->word))
-    {
-      word = tilde_expand (case_command->word->word);
-      free (case_command->word->word);
-      case_command->word->word = word;
-    }
-  wlist = expand_word (case_command->word, 0);
-  clauses = case_command->clauses;
-  word = (wlist) ? string_list (wlist) : savestring ("");
-  retval = EXECUTION_SUCCESS;
-
-  begin_unwind_frame ("case");
-  add_unwind_protect (dispose_words, wlist);
-  add_unwind_protect ((Function *)vfree, word);
-
-  while (clauses)
-    {
-      QUIT;
-      list = clauses->patterns;
-      while (list)
-       {
-         extern char *quote_string_for_globbing ();
-         char *t, *pattern;
-         WORD_LIST *es;
-         int match, freepat;
-
-         /* Posix.2 draft 11.3 says to do tilde expansion on each member
-            of the pattern list. */
-         if (member ('~', list->word->word))
-           {
-             t = tilde_expand (list->word->word);
-             free (list->word->word);
-             list->word->word = t;
-           }
-
-         es = expand_word_leave_quoted (list->word, 0);
-         if (es && es->word && es->word->word && *(es->word->word))
-           {
-             pattern = quote_string_for_globbing (es->word->word, 1);
-             freepat = 1;
-           }
-         else
-           {
-             pattern = "";
-             freepat = 0;
-           }
-
-         /* Since the pattern does not undergo quote removal according to
-            Posix.2 section 3.9.4.3, the fnmatch() call must be able to
-            recognize backslashes as escape characters. */
-         match = fnmatch (pattern, word, 0) != FNM_NOMATCH;
-         if (freepat)
-           free (pattern);
-         dispose_words (es);
-
-         if (match)
-           {
-             if (clauses->action && 
-                 (case_command->flags & CMD_IGNORE_RETURN))
-               clauses->action->flags |= CMD_IGNORE_RETURN;
-             execute_command (clauses->action);
-             retval = last_command_exit_value;
-             goto exit_command;
-           }
-
-         list = list->next;
-         QUIT;
-       }
-      clauses = clauses->next;
-    }
- exit_command:
-  run_unwind_frame ("case");
-  return (retval);
-}
-
-#define CMD_WHILE 0
-#define CMD_UNTIL 1
-
-/* The WHILE command.  Syntax: WHILE test DO action; DONE.
-   Repeatedly execute action while executing test produces
-   EXECUTION_SUCCESS. */
-execute_while_command (while_command)
-     WHILE_COM *while_command;
-{
-  return (execute_while_or_until (while_command, CMD_WHILE));
-}
-
-/* UNTIL is just like WHILE except that the test result is negated. */
-execute_until_command (while_command)
-     WHILE_COM *while_command;
-{
-  return (execute_while_or_until (while_command, CMD_UNTIL));
-}
-
-/* The body for both while and until.  The only difference between the
-   two is that the test value is treated differently.  TYPE is
-   CMD_WHILE or CMD_UNTIL.  The return value for both commands should
-   be EXECUTION_SUCCESS if no commands in the body are executed, and
-   the status of the last command executed in the body otherwise. */
-execute_while_or_until (while_command, type)
-     WHILE_COM *while_command;
-     int type;
-{
-  extern int breaking;
-  extern int continuing;
-  int commands_executed = 0;
-  int return_value, body_status = EXECUTION_SUCCESS;
-
-  loop_level++;
-  while_command->test->flags |= CMD_IGNORE_RETURN;
-
-  while (1)
-    {
-      return_value = execute_command (while_command->test);
-
-      if (type == CMD_WHILE && return_value != EXECUTION_SUCCESS)
-       break;
-      if (type == CMD_UNTIL && return_value == EXECUTION_SUCCESS)
-       break;
-
-      QUIT;
-      commands_executed = 1;
-
-      if (while_command->flags & CMD_IGNORE_RETURN)
-       while_command->action->flags |= CMD_IGNORE_RETURN;
-      body_status = execute_command (while_command->action);
-
-      QUIT;
-
-      if (breaking)
-       {
-         breaking--;
-         break;
-       }
-
-      if (continuing)
-       {
-         continuing--;
-         if (continuing)
-           break;
-       }
-    }
-  loop_level--;
-
-  return (body_status);
-}
-
-/* IF test THEN command [ELSE command].
-   IF also allows ELIF in the place of ELSE IF, but
-   the parser makes *that* stupidity transparent. */
-execute_if_command (if_command)
-     IF_COM *if_command;
-{
-  int return_value;
-
-  if_command->test->flags |= CMD_IGNORE_RETURN;
-  return_value = execute_command (if_command->test);
-
-  if (return_value == EXECUTION_SUCCESS)
-    {
-      QUIT;
-      if (if_command->true_case && (if_command->flags & CMD_IGNORE_RETURN))
-         if_command->true_case->flags |= CMD_IGNORE_RETURN;
-      return (execute_command (if_command->true_case));
-    }
-  else
-    {
-      QUIT;
-
-      if (if_command->false_case &&
-         (if_command->flags & CMD_IGNORE_RETURN))
-       {
-         if_command->false_case->flags |= CMD_IGNORE_RETURN;
-       }
-
-      return (execute_command (if_command->false_case));
-    }
-}
-
-/* The name of the command that is currently being executed.
-   `test' needs this, for example. */
-char *this_command_name;
-
-static void
-bind_lastarg (arg)
-     char *arg;
-{
-  SHELL_VAR *var;
-
-  if (!arg)
-    arg = "";
-  var = bind_variable ("_", arg);
-  var->attributes &= ~att_exported;
-}
-
-/* For catching RETURN in a function. */
-int return_catch_flag = 0;
-int return_catch_value;
-jmp_buf return_catch;
-
-/* The meaty part of all the executions.  We have to start hacking the
-   real execution of commands here.  Fork a process, set things up,
-   execute the command. */
-execute_simple_command (simple_command, pipe_in, pipe_out, async, fds_to_close)
-     SIMPLE_COM *simple_command;
-     int pipe_in, pipe_out;
-     struct fd_bitmap *fds_to_close;
-{
-  extern int command_string_index, variable_context, line_number;
-  extern char *the_printed_command;
-  extern pid_t last_command_subst_pid;
-  WORD_LIST *expand_words (), *copy_word_list ();
-  WORD_LIST *words, *lastword;
-  char *command_line, *lastarg;
-  int first_word_quoted, result;
-  pid_t old_last_command_subst_pid;
-
-  result = EXECUTION_SUCCESS;
-
-  /* If we're in a function, update the pseudo-line-number information. */
-  if (variable_context)
-    line_number++;
-
-  /* Remember what this command line looks like at invocation. */
-  command_string_index = 0;
-  print_simple_command (simple_command);
-  command_line = (char *)alloca (1 + strlen (the_printed_command));
-  strcpy (command_line, the_printed_command);
-
-  first_word_quoted =
-    simple_command->words ? simple_command->words->word->quoted : 0;
-
-  old_last_command_subst_pid = last_command_subst_pid;
-
-  /* If we are re-running this as the result of executing the `command'
-     builtin, do not expand the command words a second time. */
-  if ((simple_command->flags & CMD_INHIBIT_EXPANSION) == 0)
-    words = expand_words (simple_command->words);
-  else
-    words = copy_word_list (simple_command->words);
-
-  lastarg = (char *)NULL;
-  begin_unwind_frame ("simple-command");
-
-  /* It is possible for WORDS not to have anything left in it.
-     Perhaps all the words consisted of `$foo', and there was
-     no variable `$foo'. */
-  if (words)
-    {
-      extern int dispose_words ();
-      extern Function *last_shell_builtin, *this_shell_builtin;
-      Function *builtin;
-      SHELL_VAR *func;
-
-      if (echo_command_at_execute)
-       {
-         extern char *indirection_level_string ();
-         char *line = string_list (words);
-
-         if (line && *line)
-           fprintf (stderr, "%s%s\n", indirection_level_string (), line);
-
-         if (line)
-           free (line);
-       }
-
-      if (simple_command->flags & CMD_NO_FUNCTIONS)
-       func = (SHELL_VAR *)NULL;
-      else
-       func = find_function (words->word->word);
-
-      add_unwind_protect (dispose_words, words);
-
-      QUIT;
-
-      /* Bind the last word in this command to "$_" after execution. */
-      for (lastword = words; lastword->next; lastword = lastword->next);
-      lastarg = lastword->word->word;
-
-#if defined (JOB_CONTROL)
-      /* Is this command a job control related thing? */
-      if (words->word->word[0] == '%')
-       {
-         int result;
-
-         if (async)
-           this_command_name = "bg";
-         else
-           this_command_name = "fg";
-
-         last_shell_builtin = this_shell_builtin;
-         this_shell_builtin = builtin_address (this_command_name);
-         result = (*this_shell_builtin) (words);
-         goto return_result;
-       }
-
-      /* One other possiblilty.  The user may want to resume an existing job.
-        If they do, find out whether this word is a candidate for a running
-        job. */
-      {
-       char *auto_resume_value;
-
-       if ((auto_resume_value = get_string_value ("auto_resume")) &&
-           !first_word_quoted &&
-           !words->next &&
-           words->word->word[0] &&
-           !simple_command->redirects &&
-           pipe_in == NO_PIPE &&
-           pipe_out == NO_PIPE &&
-           !async)
-         {
-           char *word = words->word->word;
-           register int i, wl = strlen (word), exact;
-
-           exact = strcmp (auto_resume_value, "exact") == 0;
-           for (i = job_slots - 1; i > -1; i--)
-             {
-               if (jobs[i])
-                 {
-                   register PROCESS *p = jobs[i]->pipe;
-                   do
-                     {
-                       if ((JOBSTATE (i) == JSTOPPED) &&
-                           (strncmp (p->command, word,
-                                     exact ? strlen (p->command) : wl) == 0))
-                         {
-                           int started_status;
-
-                           run_unwind_frame ("simple-command");
-                           last_shell_builtin = this_shell_builtin;
-                           this_shell_builtin = builtin_address ("fg");
-
-                           started_status = start_job (i, 1);
-
-                           if (started_status < 0)
-                             return (EXECUTION_FAILURE);
-                           else
-                             return (started_status);
-                         }
-                       p = p->next;
-                     }
-                   while (p != jobs[i]->pipe);
-                 }
-             }
-         }
-      }
-#endif /* JOB_CONTROL */
-
-      /* Remember the name of this command globally. */
-      this_command_name = words->word->word;
-
-      QUIT;
-
-      /* Not a running job.  Do normal command processing. */
-      maybe_make_export_env ();
-
-      /* This command could be a shell builtin or a user-defined function.
-        If so, and we have pipes, then fork a subshell in here.  Else, just
-        do the command. */
-
-      if (func)
-       builtin = (Function *)NULL;
-      else
-       builtin = find_shell_builtin (this_command_name);
-
-      last_shell_builtin = this_shell_builtin;
-      this_shell_builtin = builtin;
-
-      if (builtin || func)
-       {
-         put_command_name_into_env (this_command_name);
-         if ((pipe_in != NO_PIPE) || (pipe_out != NO_PIPE) || async)
-           {
-             if (make_child (savestring (command_line), async) == 0)
-               {
-                 execute_subshell_builtin_or_function
-                   (words, simple_command->redirects, builtin, func,
-                    pipe_in, pipe_out, async, fds_to_close,
-                    simple_command->flags);
-               }
-             else
-               {
-                 close_pipes (pipe_in, pipe_out);
-                 goto return_result;
-               }
-           }
-         else
-           {
-             result = execute_builtin_or_function
-               (words, builtin, func, simple_command->redirects, fds_to_close,
-                simple_command->flags);
-
-             goto return_result;
-           }
-       }
-
-      execute_disk_command (words, simple_command->redirects, command_line,
-                           pipe_in, pipe_out, async, fds_to_close);
-
-      goto return_result;
-    }
-  else if (pipe_in != NO_PIPE || pipe_out != NO_PIPE || async)
-    {
-      /* We have a null command, but we really want a subshell to take
-        care of it.  Just fork, do piping and redirections, and exit. */
-      if (make_child (savestring (""), async) == 0)
-       {
-         do_piping (pipe_in, pipe_out);
-
-         subshell_environment = 1;
-
-         if (do_redirections (simple_command->redirects, 1, 0, 0) == 0)
-           exit (EXECUTION_SUCCESS);
-         else
-           exit (EXECUTION_FAILURE);
-       }
-      else
-       {
-         close_pipes (pipe_in, pipe_out);
-         result = EXECUTION_SUCCESS;
-         goto return_result;
-       }
-    }
-  else
-    {
-      /* Even if there aren't any command names, pretend to do the
-        redirections that are specified.  The user expects the side
-        effects to take place.  If the redirections fail, then return
-        failure.  Otherwise, if a command substitution took place while
-        expanding the command or a redirection, return the value of that
-        substitution.  Otherwise, return EXECUTION_SUCCESS. */
-
-      if (do_redirections (simple_command->redirects, 0, 0, 0) != 0)
-       result = EXECUTION_FAILURE;
-      else if (old_last_command_subst_pid != last_command_subst_pid)
-       result = last_command_exit_value;
-      else
-       result = EXECUTION_SUCCESS;
-    }
-
- return_result:
-  bind_lastarg (lastarg);
-  run_unwind_frame ("simple-command");
-  return (result);
-}
-
-/* Execute a shell builtin or function in a subshell environment.  This
-   routine does not return; it only calls exit().  If BUILTIN is non-null,
-   it points to a function to call to execute a shell builtin; otherwise
-   VAR points at the body of a function to execute.  WORDS is the arguments
-   to the command, REDIRECTS specifies redirections to perform before the
-   command is executed. */
-static void
-execute_subshell_builtin_or_function (words, redirects, builtin, var,
-                                     pipe_in, pipe_out, async, fds_to_close,
-                                     flags)
-     WORD_LIST *words;
-     REDIRECT *redirects;
-     Function *builtin;
-     SHELL_VAR *var;
-     int pipe_in, pipe_out, async;
-     struct fd_bitmap *fds_to_close;
-     int flags;
-{
-  extern char **temporary_env, **function_env, **copy_array ();
-  extern int login_shell, interactive;
-#if defined (JOB_CONTROL)
-  extern int jobs_builtin ();
-#endif /* JOB_CONTROL */
-
-  /* A subshell is neither a login shell nor interactive. */
-  login_shell = interactive = 0;
-
-  subshell_environment = 1;
-
-#if defined (JOB_CONTROL)
-  /* Eradicate all traces of job control after we fork the subshell, so
-     all jobs begun by this subshell are in the same process group as
-     the shell itself. */
-
-  /* Allow the output of `jobs' to be piped. */
-  if (builtin == jobs_builtin && !async &&
-      (pipe_out != NO_PIPE || pipe_in != NO_PIPE))
-    kill_current_pipeline ();
-  else
-    without_job_control ();
-
-  set_sigchld_handler ();
-#endif /* JOB_CONTROL */
-
-  set_sigint_handler ();
-
-  do_piping (pipe_in, pipe_out);
-
-  if (fds_to_close)
-    close_fd_bitmap (fds_to_close);
-
-  if (do_redirections (redirects, 1, 0, 0) != 0)
-    exit (EXECUTION_FAILURE);
-
-  if (builtin)
-    {
-      extern jmp_buf top_level;
-      int result;
-
-      /* Give builtins a place to jump back to on failure,
-        so we don't go back up to main(). */
-      result = setjmp (top_level);
-
-      if (result == EXITPROG)
-       exit (last_command_exit_value);
-      else if (result)
-       exit (EXECUTION_FAILURE);
-      else
-       exit ((*builtin) (words->next));
-    }
-  else
-    {
-      extern int variable_context, line_number;
-      extern void dispose_command (), dispose_function_env ();
-      COMMAND *fc, *tc;
-      int result, return_val;
-
-      tc = (COMMAND *)function_cell (var);
-      fc = (COMMAND *)NULL;
-
-      remember_args (words->next, 1);
-      line_number = 0;
-#if defined (JOB_CONTROL)
-      stop_pipeline (async, (COMMAND *)NULL);
-#endif
-
-      begin_unwind_frame ("subshell_function_calling");
-      unwind_protect_int (variable_context);
-      unwind_protect_int (return_catch_flag);
-      unwind_protect_jmp_buf (return_catch);
-      add_unwind_protect (dispose_command, fc);
-
-      /* The temporary environment for a function is supposed to apply to
-        all commands executed in the function.  If we have a temporary
-        environment, copy it to the special `function environment' and
-        get rid of the temporary environment. */
-      if (temporary_env)
-       {
-         function_env = copy_array (temporary_env);
-         add_unwind_protect (dispose_function_env, (char *)NULL);
-         dispose_used_env_vars ();
-       }
-      else
-       function_env = (char **)NULL;
-
-      /* We can do this because function bodies are always guaranteed to
-        be group commands, according to the grammar in parse.y.  If we
-        don't do this now, execute_command_internal will graciously fork
-        another subshell for us, and we'll lose contact with the rest of
-        the pipeline and fail to get any SIGPIPE that might be sent. */
-
-      if (tc->type == cm_group)
-       fc = (COMMAND *)copy_command (tc->value.Group->command);
-      else
-       fc = (COMMAND *)copy_command (tc);
-
-      if (fc && (flags & CMD_IGNORE_RETURN))
-       fc->flags |= CMD_IGNORE_RETURN;
-
-      /* result = execute_command (fc); doesn't work.
-        We need to explicitly specify the pipes in and out so that they
-        are closed in all the processes that rely on their being closed.
-        If they are not, it is possible to not get the SIGPIPE that we
-        need to kill all the processes sharing the pipe. */
-
-      variable_context++;
-      return_catch_flag++;
-      return_val = setjmp (return_catch);
-
-      if (return_val)
-       result = return_catch_value;
-      else
-       result =
-         execute_command_internal (fc, 0, NO_PIPE, NO_PIPE, fds_to_close);
-
-      run_unwind_frame ("subshell_function_calling");
-
-      exit (result);
-    }
-}
-
-/* Execute a builtin or function in the current shell context.  If BUILTIN
-   is non-null, it is the builtin command to execute, otherwise VAR points
-   to the body of a function.  WORDS are the command's arguments, REDIRECTS
-   are the redirections to perform.  FDS_TO_CLOSE is the usual bitmap of
-   file descriptors to close.
-
-   If BUILTIN is exec_builtin, the redirections specified in REDIRECTS are
-   not undone before this function returns. */
-static int
-execute_builtin_or_function (words, builtin, var, redirects,
-                            fds_to_close, flags)
-     WORD_LIST *words;
-     Function *builtin;
-     SHELL_VAR *var;
-     REDIRECT *redirects;
-     struct fd_bitmap *fds_to_close;
-     int flags;
-{
-  extern int exec_builtin (), eval_builtin ();
-  extern char **temporary_env, **function_env, **copy_array ();
-  int result = EXECUTION_FAILURE;
-  REDIRECT *saved_undo_list;
-
-  if (do_redirections (redirects, 1, 1, 0) != 0)
-    return (EXECUTION_FAILURE);
-
-  saved_undo_list = redirection_undo_list;
-
-  /* Calling the "exec" builtin changes redirections forever. */
-  if (builtin == exec_builtin)
-    {
-      dispose_redirects (saved_undo_list);
-      saved_undo_list = (REDIRECT *)NULL;
-    }
-  else
-    {
-      begin_unwind_frame ("saved redirects");
-      add_unwind_protect (cleanup_func_redirects, (char *)saved_undo_list);
-    }
-
-  redirection_undo_list = (REDIRECT *)NULL;
-
-  if (builtin)
-    {
-      int old_e_flag = exit_immediately_on_error;
-
-      /* The eval builtin calls parse_and_execute, which does not know about
-        the setting of flags, and always calls the execution functions with
-        flags that will exit the shell on an error if -e is set.  If the
-        eval builtin is being called, and we're supposed to ignore the exit
-        value of the command, we turn the -e flag off ourselves, then
-        restore it when the command completes. */
-      if ((builtin == eval_builtin) && (flags & CMD_IGNORE_RETURN))
-       {
-         begin_unwind_frame ("eval_builtin");
-         unwind_protect_int (exit_immediately_on_error);
-         exit_immediately_on_error = 0;
-       }
-
-      result = ((*builtin) (words->next));
-
-      if ((builtin == eval_builtin) && (flags & CMD_IGNORE_RETURN))
-       {
-         exit_immediately_on_error += old_e_flag;
-         discard_unwind_frame ("eval_builtin");
-       }
-    }
-  else
-    {
-      extern void dispose_command (), dispose_function_env ();
-      extern int pop_context ();
-      extern int line_number;
-      int return_val;
-      COMMAND *tc;
-
-      tc = (COMMAND *)copy_command (function_cell (var));
-      if (tc && (flags & CMD_IGNORE_RETURN))
-       tc->flags |= CMD_IGNORE_RETURN;
-
-      begin_unwind_frame ("function_calling");
-      push_context ();
-      add_unwind_protect (pop_context, (char *)NULL);
-      add_unwind_protect (dispose_command, (char *)tc);
-      unwind_protect_int (return_catch_flag);
-      unwind_protect_int (line_number);
-      unwind_protect_jmp_buf (return_catch);
-
-      /* The temporary environment for a function is supposed to apply to
-        all commands executed in the function.  If we have a temporary
-        environment, copy it to the special `function environment' and
-        get rid of the temporary environment. */
-      if (temporary_env)
-       {
-         function_env = copy_array (temporary_env);
-         add_unwind_protect (dispose_function_env, (char *)NULL);
-         dispose_used_env_vars ();
-       }
-      else
-       function_env = (char **)NULL;
-
-      /* Note the second argument of "1", meaning that we discard
-        the current value of "$*"!  This is apparently the right thing. */
-      remember_args (words->next, 1);
-
-      line_number = 0;
-      return_catch_flag++;
-      return_val =  setjmp (return_catch);
-
-      if (return_val)
-       result = return_catch_value;
-      else
-       result =
-         execute_command_internal (tc, 0, NO_PIPE, NO_PIPE, fds_to_close);
-
-      run_unwind_frame ("function_calling");
-    }
-
-  redirection_undo_list = saved_undo_list;
-  if (builtin != exec_builtin)
-    discard_unwind_frame ("saved redirects");
-  do_redirections (redirection_undo_list, 1, 0, 0);
-
-  return (result);
-}
-
-/* Execute a simple command that is hopefully defined in a disk file
-   somewhere.
-
-   1) fork ()
-   2) connect pipes
-   3) look up the command
-   4) do redirections
-   5) execve ()
-   6) If the execve failed, see if the file has executable mode set.
-   If so, and it isn't a directory, then execute its contents as
-   a shell script.
-
-   Note that the filename hashing stuff has to take place up here,
-   in the parent.  This is probably why the Bourne style shells
-   don't handle it, since that would require them to go through
-   this gnarly hair, for no good reason.  */
-static void
-execute_disk_command (words, redirects, command_line, pipe_in, pipe_out,
-                     async, fds_to_close)
-     WORD_LIST *words;
-     REDIRECT *redirects;
-     char *command_line;
-     int pipe_in, pipe_out, async;
-     struct fd_bitmap *fds_to_close;
-{
-  char **make_word_array (), *find_user_command (), *find_hashed_filename ();
-  char *hashed_file, *command, **args;
-
-#if defined (RESTRICTED_SHELL)
-  extern int restricted;
-
-  if (restricted && strchr (words->word->word, '/'))
-    {
-      report_error ("%s: restricted: cannot specify `/' in command names",
-                   words->word->word);
-      last_command_exit_value = EXECUTION_FAILURE;
-      return;
-    }
-#endif /* RESTRICTED_SHELL */
-
-  hashed_file = command = (char *)NULL;
-
-  /* Don't waste time trying to find hashed data for a pathname
-     that is already completely specified. */
-
-  if (!absolute_program (words->word->word))
-    hashed_file = find_hashed_filename (words->word->word);
-
-  /* XXX - this could be a big performance hit... */
-  /* If a command found in the hash table no longer exists, we need to
-     look for it in $PATH. */
-  if (hashed_file)
-    {
-      int st;
-
-      st = file_status (hashed_file);
-      if ((st & (FS_EXISTS | FS_EXECABLE)) != (FS_EXISTS | FS_EXECABLE))
-       {
-         remove_hashed_filename (words->word->word);
-         hashed_file = (char *) NULL;
-       }
-    }
-    
-  if (hashed_file)
-    command = savestring (hashed_file);
-  else
-    {
-      /* A command containing a slash is not looked up in PATH. */
-      if (absolute_program (words->word->word))
-       command = savestring (words->word->word);
-      else
-       {
-         command = find_user_command (words->word->word);
-
-         /* A command name containing a slash is not saved in the
-            hash table. */
-         if (command && !hashing_disabled)
-           {
-             extern int dot_found_in_search;
-
-             remember_filename
-               (words->word->word, command, dot_found_in_search);
-
-             /* Increase the number of hits to 1. */
-             find_hashed_filename (words->word->word);
-           }
-       }
-    }
-
-  if (command)
-    put_command_name_into_env (command);
-
-  /* We have to make the child before we check for the non-existance
-     of COMMAND, since we want the error messages to be redirected. */
-  if (make_child (savestring (command_line), async) == 0)
-    {
-      do_piping (pipe_in, pipe_out);
-
-      /* Execve expects the command name to be in args[0].  So we
-        leave it there, in the same format that the user used to
-        type it in. */
-      args = make_word_array (words);
-
-      if (async)
-       {
-         begin_unwind_frame ("async_redirections");
-         unwind_protect_int (interactive);
-         interactive = 0;
-       }
-
-      subshell_environment = 1;
-
-      if (do_redirections (redirects, 1, 0, 0) != 0)
-       {
-#if defined (PROCESS_SUBSTITUTION)
-         /* Try to remove named pipes that may have been created as the
-            result of redirections. */
-         unlink_fifo_list ();
-#endif /* PROCESS_SUBSTITUTION */
-         exit (EXECUTION_FAILURE);
-       }
-
-      if (async)
-       run_unwind_frame ("async_redirections");
-
-      if (!command)
-       {
-         report_error ("%s: command not found", args[0]);
-         exit (EXECUTION_FAILURE);
-       }
-
-      /* This functionality is now provided by close-on-exec of the
-        file descriptors manipulated by redirection and piping.
-        Some file descriptors still need to be closed in all children
-        because of the way bash does pipes; fds_to_close is a 
-        bitmap of all such file descriptors. */
-      if (fds_to_close)
-       close_fd_bitmap (fds_to_close);
-
-      exit (shell_execve (command, args, export_env));
-    }
-  else
-    {
-      /* Make sure that the pipes are closed in the parent. */
-      close_pipes (pipe_in, pipe_out);
-      if (command)
-       free (command);
-    }
-}
-
-/* If the operating system on which we're running does not handle
-   the #! executable format, then help out.  SAMPLE is the text read
-   from the file, SAMPLE_LEN characters.  COMMAND is the name of
-   the script; it and ARGS, the arguments given by the user, will
-   become arguments to the specified interpreter.  ENV is the environment
-   to pass to the interpreter.
-
-   The word immediately following the #! is the interpreter to execute.
-   A single argument to the interpreter is allowed. */
-static int
-execute_shell_script (sample, sample_len, command, args, env)
-     unsigned char *sample;
-     int sample_len;
-     char *command;
-     char **args, **env;
-{
-  extern char *shell_name;
-  register int i;
-  char *execname, *firstarg;
-  int start, size_increment, larry;
-
-  /* Find the name of the interpreter to exec. */
-  for (i = 2; whitespace (sample[i]) && i < sample_len; i++)
-    ;
-
-  for (start = i;
-       !whitespace (sample[i]) && sample[i] != '\n' && i < sample_len;
-       i++)
-    ;
-
-  execname = (char *)xmalloc (1 + (i - start));
-  strncpy (execname, sample + start, i - start);
-  execname[i - start] = '\0';
-  size_increment = 1;
-
-  /* Now the argument, if any. */
-  firstarg = (char *)NULL;
-  for (start = i;
-       whitespace (sample[i]) && sample[i] != '\n' && i < sample_len;
-       i++)
-    ;
-
-  /* If there is more text on the line, then it is an argument for the
-     interpreter. */
-  if (i < sample_len && sample[i] != '\n' && !whitespace (sample[i]))
-    {
-      for (start = i;
-          !whitespace (sample[i]) && sample[i] != '\n' && i < sample_len;
-          i++)
-       ;
-      firstarg = (char *)xmalloc (1 + (i - start));
-      strncpy (firstarg, sample + start, i - start);
-      firstarg[i - start] = '\0';
-
-      size_increment = 2;
-    }
-
-  larry = array_len (args) + size_increment;
-
-  args = (char **)xrealloc (args, (1 + larry) * sizeof (char *));
-
-  for (i = larry - 1; i; i--)
-    args[i] = args[i - size_increment];
-
-  args[0] = execname;
-  if (firstarg)
-    {
-      args[1] = firstarg;
-      args[2] = command;
-    }
-  else
-    args[1] = command;
-
-  args[larry] = (char *)NULL;
-
-  return (shell_execve (execname, args, env));
-}
-
-/* Call execve (), handling interpreting shell scripts, and handling
-   exec failures. */
-int
-shell_execve (command, args, env)
-     char *command;
-     char **args, **env;
-{
-#if defined (isc386) && defined (_POSIX_SOURCE)
-  __setostype (0);             /* Turn on USGr3 semantics. */
-  execve (command, args, env);
-  __setostype (1);             /* Turn the POSIX semantics back on. */
-#else
-  execve (command, args, env);
-#endif /* !(isc386 && _POSIX_SOURCE) */
-
-  /* If we get to this point, then start checking out the file.
-     Maybe it is something we can hack ourselves. */
-  {
-    struct stat finfo;
-
-    if (errno != ENOEXEC)
-      {
-       if ((stat (command, &finfo) == 0) &&
-           (S_ISDIR (finfo.st_mode)))
-         report_error ("%s: is a directory", args[0]);
-       else
-         file_error (command);
-
-       return (EXECUTION_FAILURE);
-      }
-    else
-      {
-       /* This file is executable.
-          If it begins with #!, then help out people with losing operating
-          systems.  Otherwise, check to see if it is a binary file by seeing
-          if the first line (or up to 30 characters) are in the ASCII set.
-          Execute the contents as shell commands. */
-       extern char *shell_name;
-       int larray = array_len (args) + 1;
-       int i, should_exec = 0;
-
-       {
-         int fd = open (command, O_RDONLY);
-         if (fd != -1)
-           {
-             unsigned char sample[80];
-             int sample_len = read (fd, &sample[0], 80);
-
-             close (fd);
-
-             if (sample_len == 0)
-               return (EXECUTION_SUCCESS);
-
-             /* Is this supposed to be an executable script? */
-             /* If so, the format of the line is "#! interpreter [argument]".
-                A single argument is allowed.  The BSD kernel restricts
-                the length of the entire line to 32 characters (32 bytes
-                being the size of the BSD exec header), but we allow 80
-                characters. */
-
-             if (sample_len > 0 && sample[0] == '#' && sample[1] == '!')
-               return (execute_shell_script (sample, sample_len, command,
-                                             args, env));
-#if defined (NOTDEF)
-#if defined (HAVE_CSH) && ( defined (Bsd) || defined (Ultrix) )
-             /* If this system has Csh, then keep the old
-                BSD semantics. */
-             else if (sample_len > 0 && sample[0] == '#')
-               {
-                 /* Scripts starting with a # are for Csh. */
-                 shell_name = savestring ("/bin/csh");
-                 should_exec = 1;
-               }
-#endif /* HAVE_CSH */
-#endif /* NOTDEF */
-             else if ((sample_len != -1) &&
-                       check_binary_file (sample, sample_len))
-               {
-                 report_error ("%s: cannot execute binary file", command);
-                 return (EX_BINARY_FILE);
-               }
-           }
-       }
-#if defined (JOB_CONTROL)
-       /* Forget about the way that job control was working. We are
-          in a subshell. */
-       without_job_control ();
-#endif /* JOB_CONTROL */
-#if defined (ALIAS)
-       /* Forget about any aliases that we knew of.  We are in a subshell. */
-       delete_all_aliases ();
-#endif /* ALIAS */
-
-#if defined (JOB_CONTROL)
-       set_sigchld_handler ();
-#endif /* JOB_CONTROL */
-        set_sigint_handler ();
-
-       /* Insert the name of this shell into the argument list. */
-       args = (char **)xrealloc (args, (1 + larray) * sizeof (char *));
-
-       for (i = larray - 1; i; i--)
-         args[i] = args[i - 1];
-
-       args[0] = shell_name;
-       args[1] = command;
-       args[larray] = (char *)NULL;
-
-       if (args[0][0] == '-')
-         args[0]++;
-
-       if (should_exec)
-         {
-           struct stat finfo;
-
-#if defined (isc386) && defined (_POSIX_SOURCE)
-           __setostype (0);    /* Turn on USGr3 semantics. */
-           execve (shell_name, args, env);
-           __setostype (1);    /* Turn the POSIX semantics back on. */
-#else
-           execve (shell_name, args, env);
-#endif /* isc386 && _POSIX_SOURCE */
-
-           /* Oh, no!  We couldn't even exec this! */
-           if ((stat (args[0], &finfo) == 0) && (S_ISDIR (finfo.st_mode)))
-             report_error ("%s: is a directory", args[0]);
-           else
-             file_error (args[0]);
-
-           return (EXECUTION_FAILURE);
-         }
-       else
-         {
-           extern jmp_buf subshell_top_level;
-           extern int subshell_argc;
-           extern char **subshell_argv;
-           extern char **subshell_envp;
-
-           subshell_argc = larray;
-           subshell_argv = args;
-           subshell_envp = env;
-           longjmp (subshell_top_level, 1);
-         }
-      }
-  }
-}
-
-#if defined (PROCESS_SUBSTITUTION)
-void
-close_all_files ()
-{
-  register int i, fd_table_size;
-
-  fd_table_size = getdtablesize ();
-
-  for (i = 3; i < fd_table_size; i++)
-    close (i);
-}
-#endif /* PROCESS_SUBSTITUTION */
-
-static void
-close_pipes (in, out)
-     int in, out;
-{
-  if (in >= 0) close (in);
-  if (out >= 0) close (out);
-}
-
-/* Redirect input and output to be from and to the specified pipes.
-   NO_PIPE and REDIRECT_BOTH are handled correctly. */
-static void
-do_piping (pipe_in, pipe_out)
-     int pipe_in, pipe_out;
-{
-  if (pipe_in != NO_PIPE)
-    {
-      dup2 (pipe_in, 0);
-      close (pipe_in);
-    }
-  if (pipe_out != NO_PIPE)
-    {
-      dup2 (pipe_out, 1);
-      close (pipe_out);
-
-      if (pipe_out == REDIRECT_BOTH)
-       dup2 (1, 2);
-    }
-}
-
-/* Defined in flags.c.  Non-zero means don't overwrite existing files. */
-extern int noclobber;
-
-#define AMBIGUOUS_REDIRECT  -1
-#define NOCLOBBER_REDIRECT  -2
-#define RESTRICTED_REDIRECT -3 /* Only can happen in restricted shells. */
-
-/* Perform the redirections on LIST.  If FOR_REAL, then actually make
-   input and output file descriptors, otherwise just do whatever is
-   neccessary for side effecting.  INTERNAL says to remember how to
-   undo the redirections later, if non-zero.  If SET_CLEXEC is non-zero,
-   file descriptors opened in do_redirection () have their close-on-exec
-   flag set. */
-static int
-do_redirections (list, for_real, internal, set_clexec)
-     REDIRECT *list;
-     int for_real, internal;
-{
-  register int error;
-  register REDIRECT *temp = list;
-
-  if (internal && redirection_undo_list)
-    {
-      dispose_redirects (redirection_undo_list);
-      redirection_undo_list = (REDIRECT *)NULL;
-    }
-
-  while (temp)
-    {
-      extern char *strerror ();
-
-      error = do_redirection_internal (temp, for_real, internal, set_clexec);
-
-      if (error)
-       {
-         char *redirection_expand (), *itos ();
-         char *filename;
-
-         if (expandable_redirection_filename (temp))
-           {
-             filename = redirection_expand (temp->redirectee.filename);
-             if (!filename)
-               filename = savestring ("");
-           }
-         else
-           filename = itos (temp->redirectee.dest);
-
-         switch (error)
-           {
-           case AMBIGUOUS_REDIRECT:
-             report_error ("%s: Ambiguous redirect", filename);
-             break;
-
-           case NOCLOBBER_REDIRECT:
-             report_error ("%s: Cannot clobber existing file", filename);
-             break;
-
-#if defined (RESTRICTED_SHELL)
-           case RESTRICTED_REDIRECT:
-             report_error ("%s: output redirection restricted", filename);
-             break;
-#endif /* RESTRICTED_SHELL */
-
-           default:
-             report_error ("%s: %s", filename, strerror (error));
-             break;
-           }
-
-         free (filename);
-         return (error);
-       }
-
-      temp = temp->next;
-    }
-  return (0);
-}
-
-/* Return non-zero if the redirection pointed to by REDIRECT has a
-   redirectee.filename that can be expanded. */
-static int
-expandable_redirection_filename (redirect)
-     REDIRECT *redirect;
-{
-  int result;
-
-  switch (redirect->instruction)
-    {
-    case r_output_direction:
-    case r_appending_to:
-    case r_input_direction:
-    case r_inputa_direction:
-    case r_err_and_out:
-    case r_input_output:
-    case r_output_force:
-    case r_duplicating_input_word:
-    case r_duplicating_output_word:
-      result = 1;
-      break;
-
-    default:
-      result = 0;
-    }
-  return (result);
-}
-\f
-/* Expand the word in WORD returning a string.  If WORD expands to
-   multiple words (or no words), then return NULL. */
-char *
-redirection_expand (word)
-     WORD_DESC *word;
-{
-  char *result;
-  WORD_LIST *make_word_list (), *expand_words_no_vars ();
-  WORD_LIST *tlist1, *tlist2;
-
-  tlist1 = make_word_list (copy_word (word), (WORD_LIST *)NULL);
-  tlist2 = expand_words_no_vars (tlist1);
-  dispose_words (tlist1);
-
-  if (!tlist2 || tlist2->next)
-    {
-      /* We expanded to no words, or to more than a single word.
-        Dispose of the word list and return NULL. */
-      if (tlist2)
-       dispose_words (tlist2);
-      return ((char *)NULL);
-    }
-  result = string_list (tlist2);
-  dispose_words (tlist2);
-
-  return (result);
-}
-
-/* Do the specific redirection requested.  Returns errno in case of error.
-   If FOR_REAL is zero, then just do whatever is neccessary to produce the
-   appropriate side effects.   REMEMBERING, if non-zero, says to remember
-   how to undo each redirection.  If SET_CLEXEC is non-zero, then
-   we set all file descriptors > 2 that we open to be close-on-exec.  */
-static int
-do_redirection_internal (redirect, for_real, remembering, set_clexec)
-     REDIRECT *redirect;
-     int for_real, remembering;
-{
-  WORD_DESC *redirectee = redirect->redirectee.filename;
-  int fd, redirector = redirect->redirector;
-  char *redirectee_word;
-  enum r_instruction ri = redirect->instruction;
-  REDIRECT *new_redirect;
-
-  if (ri == r_duplicating_input_word || ri == r_duplicating_output_word)
-    {
-      /* We have [N]>&WORD or [N]<&WORD.  Expand WORD, then translate
-        the redirection into a new one and continue. */
-      redirectee_word = redirection_expand (redirectee);
-
-      if (redirectee_word[0] == '-' && redirectee_word[1] == '\0')
-       {
-         new_redirect = make_redirection (redirector, r_close_this, 0);
-       }
-      else if (all_digits (redirectee_word))
-       {
-         if (ri == r_duplicating_input_word)
-           {
-             new_redirect = make_redirection
-               (redirector, r_duplicating_input, atoi (redirectee_word));
-           }
-         else
-           {
-             new_redirect = make_redirection
-               (redirector, r_duplicating_output, atoi (redirectee_word));
-           }
-       }
-      else if (ri == r_duplicating_output_word && redirector == 1)
-       {
-         new_redirect = make_redirection
-           (1, r_err_and_out, make_word (redirectee_word));
-       }
-      else
-       {
-         free (redirectee_word);
-         return (AMBIGUOUS_REDIRECT);
-       }
-
-      free (redirectee_word);
-
-      /* Set up the variables needed by the rest of the function from the
-        new redirection. */
-      if (new_redirect->instruction == r_err_and_out)
-       {
-         char *alloca_hack;
-
-         /* Copy the word without allocating any memory that must be
-            explicitly freed. */
-         redirectee = (WORD_DESC *)alloca (sizeof (WORD_DESC));
-         bcopy (new_redirect->redirectee.filename,
-                redirectee, sizeof (WORD_DESC));
-
-         alloca_hack = (char *)
-           alloca (1 + strlen (new_redirect->redirectee.filename->word));
-         redirectee->word = alloca_hack;
-         strcpy (redirectee->word, new_redirect->redirectee.filename->word);
-       }
-      else
-       /* It's guaranteed to be an integer, and shouldn't be freed. */
-       redirectee = new_redirect->redirectee.filename;
-
-      redirector = new_redirect->redirector;
-      ri = new_redirect->instruction;
-
-      /* Overwrite the flags element of the old redirect with the new value. */
-      redirect->flags = new_redirect->flags;
-      dispose_redirects (new_redirect);
-    }
-
-  switch (ri)
-    {
-    case r_output_direction:
-    case r_appending_to:
-    case r_input_direction:
-    case r_inputa_direction:
-    case r_err_and_out:                /* command &>filename */
-    case r_input_output:
-    case r_output_force:
-
-      if (!(redirectee_word = redirection_expand (redirectee)))
-       return (AMBIGUOUS_REDIRECT);
-
-#if defined (RESTRICTED_SHELL)
-      if (restricted && (ri == r_output_direction ||
-                        ri == r_input_output ||
-                        ri == r_err_and_out ||
-                        ri == r_appending_to ||
-                        ri == r_output_force))
-       {
-         free(redirectee_word);
-         return (RESTRICTED_REDIRECT);
-       }
-#endif /* RESTRICTED_SHELL */
-
-      /* If we are in noclobber mode, you are not allowed to overwrite
-        existing files.  Check first. */
-      if (noclobber && (ri == r_output_direction ||
-                     ri == r_input_output ||
-                     ri == r_err_and_out))
-      {
-       struct stat buf;
-       int stat_result;
-
-       stat_result = stat (redirectee_word, &buf);
-       if ((stat_result == 0) && (S_ISREG (buf.st_mode)))
-         {
-           free (redirectee_word);
-           return (NOCLOBBER_REDIRECT);
-         }
-       /* If the file was not there, make sure we use exclusive open so
-          that if it's created before we open it, our open will fail. */
-       if (stat_result != 0)
-         redirect->flags |= O_EXCL;
-       fd = open (redirectee_word, redirect->flags, 0666);
-       if (fd < 0 && errno == EEXIST)
-         {
-           free (redirectee_word);
-           return (NOCLOBBER_REDIRECT);
-         }
-      }
-    else
-      {
-       fd = open (redirectee_word, redirect->flags, 0666);
-#if defined (AFS_CREATE_BUG)
-       if (fd < 0 && errno == EACCES)
-         fd = open (redirectee_word, (redirect->flags & ~O_CREAT), 0666);
-#endif /* AFS_CREATE_BUG */
-      }
-
-    free (redirectee_word);
-
-    if (fd < 0 )
-      return (errno);
-
-      if (for_real)
-       {
-         if (remembering)
-           /* Only setup to undo it if the thing to undo is active. */
-           if ((fd != redirector) && (fcntl (redirector, F_GETFD, 0) != -1))
-             add_undo_redirect (redirector);
-           else
-             add_undo_close_redirect (redirector);
-
-         if ((fd != redirector) && (dup2 (fd, redirector) < 0))
-           return (errno);
-
-#if defined (BUFFERED_INPUT)
-         if (ri == r_input_direction || ri == r_inputa_direction ||
-             ri == r_input_output)
-           duplicate_buffered_stream (fd, redirector);
-#endif /* BUFFERED_INPUT */
-
-         /*
-          * If we're remembering, then this is the result of a while, for
-          * or until loop with a loop redirection, or a function/builtin
-          * executing in the parent shell with a redirection.  In the
-          * function/builtin case, we want to set all file descriptors > 2
-          * to be close-on-exec to duplicate the effect of the old
-          * for i = 3 to NOFILE close(i) loop.  In the case of the loops,
-          * both sh and ksh leave the file descriptors open across execs.
-          * The Posix standard mentions only the exec builtin.
-          */
-         if (set_clexec && (redirector > 2))
-           SET_CLOSE_ON_EXEC (redirector);
-       }
-
-      if (fd != redirector)
-       {
-#if defined (BUFFERED_INPUT)
-         if (ri == r_input_direction || ri == r_inputa_direction ||
-             ri == r_input_output)
-           close_buffered_fd (fd);
-         else
-#endif /* !BUFFERED_INPUT */
-           close (fd);         /* Don't close what we just opened! */
-       }
-
-      /* If we are hacking both stdout and stderr, do the stderr
-        redirection here. */
-      if (ri == r_err_and_out)
-       {
-         if (for_real)
-           {
-             if (remembering)
-               add_undo_redirect (2);
-             if (dup2 (1, 2) < 0)
-               return (errno);
-           }
-       }
-      break;
-
-    case r_reading_until:
-    case r_deblank_reading_until:
-      {
-       /* REDIRECTEE is a pointer to a WORD_DESC containing the text of
-          the new input.  Place it in a temporary file. */
-       int document_index = 0;
-       char *document = (char *)NULL;
-
-       /* Expand the text if the word that was specified had no quoting.
-          Note that the text that we expand is treated exactly as if it
-          were surrounded by double-quotes.  */
-
-       if (!redirectee)
-         document = savestring ("");
-       else
-         {
-           if (!redirectee->quoted)
-             {
-               WORD_LIST *temp_word_list =
-                 (WORD_LIST *)expand_string (redirectee->word,
-                                             Q_HERE_DOCUMENT);
-
-               document = string_list (temp_word_list);
-               if (!document)
-                 document = savestring ("");
-               dispose_words (temp_word_list);
-             }
-           else
-             {
-               document = redirectee->word;
-             }
-           document_index = strlen (document);
-
-           {
-             char filename[40];
-             pid_t pid = getpid ();
-
-             /* Make the filename for the temp file. */
-             sprintf (filename, "/tmp/t%d-sh", pid);
-
-             fd = open (filename, O_TRUNC | O_WRONLY | O_CREAT, 0666);
-             if (fd < 0)
-               {
-                 if (!redirectee->quoted)
-                   free (document);
-                 return (errno);
-               }
-
-             write (fd, document, document_index);
-             close (fd);
-
-             if (!redirectee->quoted)
-               free (document);
-
-             /* Make the document really temporary.  Also make it the
-                input. */
-             fd = open (filename, O_RDONLY, 0666);
-
-             if (unlink (filename) < 0 || fd < 0)
-               return (errno);
-
-             if (for_real)
-               {
-                 if (remembering)
-                   /* Only setup to undo it if the thing to undo is active. */
-                   if ((fd != redirector) &&
-                       (fcntl (redirector, F_GETFD, 0) != -1))
-                     add_undo_redirect (redirector);
-                   else
-                     add_undo_close_redirect (redirector);
-
-                 if (dup2 (fd, redirector) < 0)
-                   return (errno);
-
-#if defined (BUFFERED_INPUT)
-                 duplicate_buffered_stream (fd, redirector);
-#endif
-
-                 if (set_clexec && (redirector > 2))
-                   SET_CLOSE_ON_EXEC (redirector);
-               }
-
-#if defined (BUFFERED_INPUT)
-             close_buffered_fd (fd);
-#else
-             close (fd);
-#endif
-           }
-         }
-      }
-      break;
-
-    case r_duplicating_input:
-    case r_duplicating_output:
-      if (for_real && ((int)redirectee != redirector))
-       {
-         if (remembering)
-           /* Only setup to undo it if the thing to undo is active. */
-           if (fcntl (redirector, F_GETFD, 0) != -1)
-             add_undo_redirect (redirector);
-           else
-             add_undo_close_redirect (redirector);
-
-         /* This is correct.  2>&1 means dup2 (1, 2); */
-         if (dup2 ((int)redirectee, redirector) < 0)
-           return (errno);
-
-#if defined (BUFFERED_INPUT)
-         if (ri == r_duplicating_input)
-           duplicate_buffered_stream ((int)redirectee, redirector);
-#endif /* BUFFERED_INPUT */
-
-         /* First duplicate the close-on-exec state of redirectee.  dup2
-            leaves the flag unset on the new descriptor, which means it
-            stays open.  Only set the close-on-exec bit for file descriptors
-            greater than 2 in any case, since 0-2 should always be open
-            unless closed by something like `exec 2<&-'. */
-         /* if ((already_set || set_unconditionally) && (ok_to_set))
-               set_it () */
-         if (((fcntl ((int)redirectee, F_GETFD, 0) == 1) || set_clexec) &&
-              (redirector > 2))
-           SET_CLOSE_ON_EXEC (redirector);
-       }
-      break;
-
-    case r_close_this:
-      if (for_real)
-       {
-         if (remembering && (fcntl (redirector, F_GETFD, 0) != -1))
-           add_undo_redirect (redirector);
-
-#if defined (BUFFERED_INPUT)
-         close_buffered_fd (redirector);
-#else /* !BUFFERED_INPUT */
-         close (redirector);
-#endif /* !BUFFERED_INPUT */
-       }
-      break;
-    }
-  return (0);
-}
-
-#define SHELL_FD_BASE  10
-
-/* Remember the file descriptor associated with the slot FD,
-   on REDIRECTION_UNDO_LIST.  Note that the list will be reversed
-   before it is executed. */
-static int
-add_undo_redirect (fd)
-     int fd;
-{
-  int new_fd, clexec_flag;
-  REDIRECT *new_redirect, *closer;
-
-  new_fd = fcntl (fd, F_DUPFD, SHELL_FD_BASE);
-
-  if (new_fd < 0)
-    {
-      file_error ("redirection error");
-      return (-1);
-    }
-  else
-    {
-      clexec_flag = fcntl (fd, F_GETFD, 0);
-      closer = make_redirection (new_fd, r_close_this, 0);
-      new_redirect = make_redirection (fd, r_duplicating_input, new_fd);
-      new_redirect->next = closer;
-      closer->next = redirection_undo_list;
-      redirection_undo_list = new_redirect;
-      /*
-       * File descriptors used only for saving others should always be
-       * marked close-on-exec.  Unfortunately, we have to preserve the
-       * close-on-exec state of the file descriptor we are saving, since
-       * fcntl (F_DUPFD) sets the new file descriptor to remain open
-       * across execs.  If, however, the file descriptor whose state we
-       * are saving is <= 2, we can just set the close-on-exec flag,
-       * because file descriptors 0-2 should always be open-on-exec,
-       * and the restore above in do_redirection() will take care of it.
-       */
-      if (clexec_flag || fd < 3)
-       SET_CLOSE_ON_EXEC (new_fd);
-    }
-  return (0);
-}
-
-/* Set up to close FD when we are finished with the current command
-   and its redirections. */
-static void
-add_undo_close_redirect (fd)
-     int fd;
-{
-  REDIRECT *closer;
-
-  closer = make_redirection (fd, r_close_this, 0);
-  closer->next = redirection_undo_list;
-  redirection_undo_list = closer;
-}
-
-intern_function (name, function)
-     WORD_DESC *name;
-     COMMAND *function;
-{
-  SHELL_VAR *var;
-
-  if (!check_identifier (name))
-    return (EXECUTION_FAILURE);
-
-  var = find_function (name->word);
-  if (var && readonly_p (var))
-    {
-      report_error ("%s: readonly function", var->name);
-      return (EXECUTION_FAILURE);
-    }
-
-  bind_function (name->word, function);
-  return (EXECUTION_SUCCESS);
-}
-
-/* Make sure that identifier is a valid shell identifier, i.e.
-   does not contain a dollar sign, nor is quoted in any way.  Nor
-   does it consist of all digits. */
-check_identifier (word)
-     WORD_DESC *word;
-{
-  if (word->dollar_present || word->quoted || all_digits (word->word))
-    {
-      report_error ("`%s' is not a valid identifier", word->word);
-      return (0);
-    }
-  else
-    return (1);
-}
-
-#define u_mode_bits(x) (((x) & 0000700) >> 6)
-#define g_mode_bits(x) (((x) & 0000070) >> 3)
-#define o_mode_bits(x) (((x) & 0000007) >> 0)
-#define X_BIT(x) (x & 1)
-
-/* Return some flags based on information about this file.
-   The EXISTS bit is non-zero if the file is found.
-   The EXECABLE bit is non-zero the file is executble.
-   Zero is returned if the file is not found. */
-int
-file_status (name)
-     char *name;
-{
-  struct stat finfo;
-  static int user_id = -1;
-
-  /* Determine whether this file exists or not. */
-  if (stat (name, &finfo) < 0)
-    return (0);
-
-  /* If the file is a directory, then it is not "executable" in the
-     sense of the shell. */
-  if (S_ISDIR (finfo.st_mode))
-    return (FS_EXISTS);
-
-  /* Find out if the file is actually executable.  By definition, the
-     only other criteria is that the file has an execute bit set that
-     we can use. */
-  if (user_id == -1)
-    user_id = geteuid ();
-
-  /* Root only requires execute permission for any of owner, group or
-     others to be able to exec a file. */
-  if (user_id == 0)
-    {
-      int bits;
-
-      bits = (u_mode_bits (finfo.st_mode) |
-             g_mode_bits (finfo.st_mode) |
-             o_mode_bits (finfo.st_mode));
-
-      if (X_BIT (bits))
-       return (FS_EXISTS | FS_EXECABLE);
-    }
-
-  /* If we are the owner of the file, the owner execute bit applies. */
-  if (user_id == finfo.st_uid && X_BIT (u_mode_bits (finfo.st_mode)))
-    return (FS_EXISTS | FS_EXECABLE);
-
-  /* If we are in the owning group, the group permissions apply. */
-  if (group_member (finfo.st_gid) && X_BIT (g_mode_bits (finfo.st_mode)))
-    return (FS_EXISTS | FS_EXECABLE);
-
-  /* If `others' have execute permission to the file, then so do we,
-     since we are also `others'. */
-  if (X_BIT (o_mode_bits (finfo.st_mode)))
-    return (FS_EXISTS | FS_EXECABLE);
-  else
-    return (FS_EXISTS);
-}
-
-/* Return non-zero if FILE exists and is executable.
-   Note that this function is the definition of what an
-   executable file is; do not change this unless YOU know
-   what an executable file is. */
-int
-executable_file (file)
-     char *file;
-{
-  if (file_status (file) & FS_EXECABLE)
-    return (1);
-  else
-    return (0);
-}
-
-/* DOT_FOUND_IN_SEARCH becomes non-zero when find_user_command ()
-   encounters a `.' as the directory pathname while scanning the
-   list of possible pathnames; i.e., if `.' comes before the directory
-   containing the file of interest. */
-int dot_found_in_search = 0;
-
-/* Locate the executable file referenced by NAME, searching along
-   the contents of the shell PATH variable.  Return a new string
-   which is the full pathname to the file, or NULL if the file
-   couldn't be found.  If a file is found that isn't executable,
-   and that is the only match, then return that. */
-char *
-find_user_command (name)
-     char *name;
-{
-  return (find_user_command_internal (name, FS_EXEC_PREFERRED));
-}
-
-/* Locate the file referenced by NAME, searching along the contents
-   of the shell PATH variable.  Return a new string which is the full
-   pathname to the file, or NULL if the file couldn't be found.  This
-   returns the first file found. */
-char *
-find_path_file (name)
-     char *name;
-{
-  return (find_user_command_internal (name, FS_EXISTS));
-}
-
-static char *
-find_user_command_internal (name, flags)
-     char *name;
-     int flags;
-{
-  char *path_list = (char *)NULL;
-  SHELL_VAR *var;
-
-  /* Search for the value of PATH in both the temporary environment, and
-     in the regular list of variables. */
-  if (var = find_variable_internal ("PATH", 1))
-    path_list = value_cell (var);
-
-  if (!path_list)
-    return (savestring (name));
-
-  return (find_user_command_in_path (name, path_list, flags));
-}
-
-/* Return the next element from PATH_LIST, a colon separated list of
-   paths.  PATH_INDEX_POINTER is the address of an index into PATH_LIST;
-   the index is modified by this function.
-   Return the next element of PATH_LIST or NULL if there are no more. */
-static char *
-get_next_path_element (path_list, path_index_pointer)
-     char *path_list;
-     int *path_index_pointer;
-{
-  extern char *extract_colon_unit ();
-  char *path;
-
-  path = extract_colon_unit (path_list, path_index_pointer);
-
-  if (!path)
-    return (path);
-
-  if (!*path)
-    {
-      free (path);
-      path = savestring (".");
-    }
-
-  return (path);
-}
-
-char *
-user_command_matches (name, flags, state)
-     char *name;
-     int flags, state;
-{
-  register int i;
-  char *path_list;
-  int  path_index;
-  char *path_element;
-  char *match;
-  static char **match_list = NULL;
-  static int match_list_size = 0;
-  static int match_index = 0;
-
-  if (!state)
-    {
-      /* Create the list of matches. */
-      if (!match_list)
-       {
-         match_list =
-           (char **) xmalloc ((match_list_size = 5) * sizeof(char *));
-
-         for (i = 0; i < match_list_size; i++)
-           match_list[i] = 0;
-       }
-
-      /* Clear out the old match list. */
-      for (i = 0; i < match_list_size; i++)
-       match_list[i] = NULL;
-
-      /* We haven't found any files yet. */
-      match_index = 0;
-
-      path_list = get_string_value ("PATH");
-      path_index = 0;
-
-      while (path_list && path_list[path_index])
-       {
-         char *find_user_command_in_path ();
-
-         path_element = get_next_path_element (path_list, &path_index);
-
-         if (!path_element)
-           break;
-
-         match = find_user_command_in_path (name, path_element, flags);
-
-         free (path_element);
-
-         if (!match)
-           continue;
-
-         if (match_index + 1 == match_list_size)
-           match_list = (char **)xrealloc
-             (match_list, ((match_list_size += 10) + 1) * sizeof (char *));
-         match_list[match_index++] = match;
-         match_list[match_index] = (char *)NULL;
-       }
-
-      /* We haven't returned any strings yet. */
-      match_index = 0;
-    }
-
-  match = match_list[match_index];
-
-  if (match)
-    match_index++;
-
-  return (match);
-}
-
-/* Return 1 if PATH1 and PATH2 are the same file.  This is kind of
-   expensive.  If non-NULL STP1 and STP2 point to stat structures
-   corresponding to PATH1 and PATH2, respectively. */
-int
-same_file (path1, path2, stp1, stp2)
-     char *path1, *path2;
-     struct stat *stp1, *stp2;
-{
-  struct stat st1, st2;
-
-  if (stp1 == NULL)
-    {
-      if (stat (path1, &st1) != 0)
-       return (0);
-      stp1 = &st1;
-    }
-
-  if (stp2 == NULL)
-    {
-      if (stat (path2, &st2) != 0)
-       return (0);
-      stp2 = &st2;
-    }
-
-  return ((stp1->st_dev == stp2->st_dev) && (stp1->st_ino == stp2->st_ino));
-}
-
-/* This does the dirty work for find_path_file () and find_user_command ().
-   NAME is the name of the file to search for.
-   PATH_LIST is a colon separated list of directories to search.
-   FLAGS contains bit fields which control the files which are eligible.
-   Some values are:
-      FS_EXEC_ONLY:            The file must be an executable to be found.
-      FS_EXEC_PREFERRED:       If we can't find an executable, then the
-                               the first file matching NAME will do.
-      FS_EXISTS:               The first file found will do.
-*/
-static char *
-find_user_command_in_path (name, path_list, flags)
-     char *name;
-     char *path_list;
-     int flags;
-{
-  char *full_path, *path, *file_to_lose_on;
-  int status, path_index, name_len;
-  struct stat finfo;
-
-  name_len = strlen (name);
-
-  /* The file name which we would try to execute, except that it isn't
-     possible to execute it.  This is the first file that matches the
-     name that we are looking for while we are searching $PATH for a
-     suitable one to execute.  If we cannot find a suitable executable
-     file, then we use this one. */
-  file_to_lose_on = (char *)NULL;
-
-  /* We haven't started looking, so we certainly haven't seen
-     a `.' as the directory path yet. */
-  dot_found_in_search = 0;
-
-  if (absolute_program (name))
-    {
-      full_path = (char *)xmalloc (1 + name_len);
-      strcpy (full_path, name);
-
-      status = file_status (full_path);
-
-      if (!(status & FS_EXISTS))
-       return (0);
-
-      if ((flags & FS_EXEC_ONLY) && (status & FS_EXECABLE))
-       return (full_path);
-      else
-       {
-         free (full_path);
-         return ((char *)NULL);
-       }
-    }
-
-  /* Find out the location of the current working directory. */
-  stat (".", &finfo);
-
-  path_index = 0;
-  while (path_list && path_list[path_index])
-    {
-      /* Allow the user to interrupt out of a lengthy path search. */
-      QUIT;
-
-      path = get_next_path_element (path_list, &path_index);
-
-      if (!path)
-       break;
-
-      if (*path == '~')
-       {
-         char *tilde_expand ();
-         char *t = tilde_expand (path);
-         free (path);
-         path = t;
-       }
-
-      /* Remember the location of "." in the path, in all its forms
-        (as long as they begin with a `.', e.g. `./.') */
-      if ((*path == '.') &&
-         same_file (".", path, &finfo, (struct stat *)NULL))
-       dot_found_in_search = 1;
-
-      full_path = (char *)xmalloc (2 + strlen (path) + name_len);
-      sprintf (full_path, "%s/%s", path, name);
-      free (path);
-
-      status = file_status (full_path);
-
-      if (!(status & FS_EXISTS))
-       goto next_file;
-
-      /* The file exists.  If the caller simply wants the first file,
-        here it is. */
-      if (flags & FS_EXISTS)
-       return (full_path);
-
-       /* If the file is executable, then it satisfies the cases of
-         EXEC_ONLY and EXEC_PREFERRED.  Return this file unconditionally. */
-      if (status & FS_EXECABLE)
-       {
-         if (file_to_lose_on)
-           free (file_to_lose_on);
-
-         return (full_path);
-       }
-
-      /* The file is not executable, but it does exist.  If we prefer
-        an executable, then remember this one if it is the first one
-        we have found. */
-      if (flags & FS_EXEC_PREFERRED)
-       {
-         if (!file_to_lose_on)
-           file_to_lose_on = savestring (full_path);
-       }
-
-    next_file:
-      free (full_path);
-    }
-
-  /* We didn't find exactly what the user was looking for.  Return
-     the contents of FILE_TO_LOSE_ON which is NULL when the search
-     required an executable, or non-NULL if a file was found and the
-     search would accept a non-executable as a last resort. */
-  return (file_to_lose_on);
-}
-
-/* Given a string containing units of information separated by colons,
-   return the next one pointed to by INDX, or NULL if there are no more.
-   Advance INDX to the character after the colon. */
-char *
-extract_colon_unit (string, indx)
-     char *string;
-     int *indx;
-{
-  int i, start;
-
-  i = *indx;
-
-  if (!string || (i >= strlen (string)))
-    return ((char *)NULL);
-
-  /* Each call to this routine leaves the index pointing at a colon if
-     there is more to the path.  If I is > 0, then increment past the
-     `:'.  If I is 0, then the path has a leading colon.  Trailing colons
-     are handled OK by the `else' part of the if statement; an empty
-     string is returned in that case. */
-  if (i && string[i] == ':')
-    i++;
-
-  start = i;
-
-  while (string[i] && string[i] != ':') i++;
-
-  *indx = i;
-
-  if (i == start)
-    {
-      if (string[i])
-       (*indx)++;
-
-      /* Return "" in the case of a trailing `:'. */
-      return (savestring (""));
-    }
-  else
-    {
-      char *value;
-
-      value = (char *)xmalloc (1 + (i - start));
-      strncpy (value, &string[start], (i - start));
-      value [i - start] = '\0';
-
-      return (value);
-    }
-}
-
-/* Return non-zero if the characters from SAMPLE are not all valid
-   characters to be found in the first line of a shell script.  We
-   check up to the first newline, or SAMPLE_LEN, whichever comes first.
-   All of the characters must be printable or whitespace. */
-
-#if !defined (isspace)
-#define isspace(c) ((c) == ' ' || (c) == '\t' || (c) == '\n' || (c) == '\f')
-#endif
-
-#if !defined (isprint)
-#define isprint(c) (isletter(c) || digit(c) || ispunct(c))
-#endif
-
-int
-check_binary_file (sample, sample_len)
-     unsigned char *sample;
-     int sample_len;
-{
-  register int i;
-
-  for (i = 0; i < sample_len; i++)
-    {
-      if (sample[i] == '\n')
-       break;
-
-      if (!isspace (sample[i]) && !isprint (sample[i]))
-       return (1);
-    }
-  return (0);
-}
diff --git a/CWRU/old-changelogs/-i b/CWRU/old-changelogs/-i
deleted file mode 100644 (file)
index e69de29..0000000
diff --git a/CWRU/old-changelogs/CHANGES.051093 b/CWRU/old-changelogs/CHANGES.051093
deleted file mode 100644 (file)
index c7637b5..0000000
+++ /dev/null
@@ -1,115 +0,0 @@
-This file details the changes between the previous release of CWRU bash
-(3/10/93) and this release.
-
-1. Bugs Fixed
-
-New version of endian.c that handles 64-bit machines better
-
-added code to make readline reset itself when $TERMINFO changes
-
-fixed memory leaks in:
-       builtins/exec.def
-       lib/readline/history.c
-       lib/readline/readline.c
-       parse.y
-       subst.c
-       variables.c
-       dispose_cmd.c
-       mailcheck.c
-       bashline.c
-       execute_cmd.c
-       shell.c
-
-make sure that bash_symbolic_link_hook calls get_working_directory with a
-non-empty string argument
-
-check the return value of getdtablesize() for bad values
-
-make the job control tty handlers print error message only if the shell is
-currently interactive
-
-process substitution no longer tries to close every file descriptor
-
-fixed up the source to contain more extern function declarations rather than
-casting the return values
-
-fixed up handling of embedded quoted strings by the parser so that $ is not
-a special character while parsing one
-
-added escape handling to the read builtin so backslashes can escape $IFS
-characters
-
-fixed the brace expansion code so that backslash can act as a delimiter and
-can escape `"' in a double-quoted string
-
-the `<>' redirection needs to open the file O_RDWR|O_CREAT for Posix.2
-compatibility
-
-fixed up the here document reading code so that it will remove backslash-
-quoted newlines if the document delimiter is not quoted
-
-fixed up the unwind_protect_var code so that the same strategy is used
-for both saving and restoring variables
-
-completion functions may now tell readline not to attempt filename completion
-by returning (char **) -1
-
-improved the error message printed by get_working_directory
-
-Compile for solaris if either USGr4 or __svr4__ is defined
-
-bash does not perform a getwd() on startup unless the inherited value of
-$PWD is wrong or $PWD was not in the environment
-
-fixed up the trap saving and restoring code so that savetrap=$(trap) works
-like Posix.2 says it should
-
-non-interactive shells are now much better about cleaning up dead processes
-and jobs on both job control and non job control systems
-
-fixed the code that saves and restores the dollar variables around a `.'
-script so that if the script changes the positional parameters, the old
-values are not restored
-
-fixed the tokenizer so that it will not return ASSIGNMENT_WORD while
-parsing a case statement pattern list
-
-redid the implementation of cprintf for systems without varargs
-
-fixed up the variable expansion code so that illegal variable names in ${ }
-expansion now generate errors rather than produce incorrect results
-
-fixed up some problems with default_buffered_input and the implicit redirection
-of fd 0 to /dev/null for asynchronous commands without job control
-
-new function internal_error for shell internal error messages
-
-changed the sigint signal handler in nojobs.c to do nothing when it's called,
-not even run a signal handler
-
-made the command substitution code more careful about file descriptors when
-errors occur
-
-2. New Features
-
-SIGWINCH causes bash to reset the values of $LINES and $COLUMNS for both
-readline and non-readline systems
-
-changed the code in readline that handled conditional parsing of `$if term='
-to test the terminal name given to $if against both the `long' and `short'
-(portion up to the first `-') forms of the terminal name
-
-the completion code now single-quotes a match that contains a shell word
-break character
-
-the readline code does not define USE_XON_XOFF.  This causes output to be
-swallowed when using bash over a relatively slow line (like a modem line). 
-
-there is now a bindable readline function to do only history expansion;
-bound to M-^ (M-! was already taken)
-
-ulimit now has a -u option to set and get the limit for the maximum number
-of user processes
-
-config.h.mini is a `minimal' configuration file that compiles out just about
-everything
diff --git a/CWRU/old-changelogs/CHANGES.071193 b/CWRU/old-changelogs/CHANGES.071193
deleted file mode 100644 (file)
index 6d24c8f..0000000
+++ /dev/null
@@ -1,63 +0,0 @@
-This file details the changes between the previous release of CWRU bash
-(5/10/93) and this release.
-
-1. Bugs Fixed
-
-commas within backquotes inside matching braces are now treated as
-quoted (e.g., echo {`echo foo:bar | sed s/:/,/`})
-
-don't create the export env unless we are running a command with
-shell_execve (in execute_disk_command), and don't create it anew
-each time a child is forked
-
-make execute_disk_command look in the temp environment for an
-assignment to PATH, and disable hash lookup for the command if
-such an assignment is present 
-
-fixed here documents so that backslash-quoted newlines are treated as
-Posix.2 specifies
-
-removed a number of extraneous unwind-protects or moved them inside
-if statements
-
-only call rl_reset_terminal in sv_term if we're actually using readline
-
-only run traps on SIGCHLD if job_control != 0
-
-fixed readline so it won't try to pass memory allocated with alloca() to
-a separate function
-
-cleaned up the readline global function and variable namespace, and split
-some more code out from readline.c into separate files
-
-added header files that declare extern functions rather than having those
-extern declarations littered throughout the code
-
-readline now allows ^T to be undone
-
-fixed readline so that characters whose screen representation is > 1
-character (e.g., \354) are erased correctly
-
-the read builtin no longer attempts to split its input into words if
-$IFS is unset
-
-changed the terminating signals that bash catches so they're reset to
-their original handlers when a child is forked
-
-the Gnu malloc library code was upgraded to Gnu libc version 1.06
-
-the Gnu termcap library code was upgraded to Gnu termcap version 1.02
-
-the man page was updated to cover the bind -m option
-
-2. New Features
-
-Bash now notices if it's running setuid or setgid and disables $ENV
-processing and importing shell functions from the environment
-
-New flag: -p/-o privileged, set if the shell is running setuid or setgid.
-Turning this off causes the effective uid and gid to be set to the
-real uid and gid
-
-New machine descriptions for the Intel Paragon, Symmetric 375, NeXT 486,
-and HP running 4.4 BSD
diff --git a/CWRU/old-changelogs/CHANGES.090393 b/CWRU/old-changelogs/CHANGES.090393
deleted file mode 100644 (file)
index f38e5f2..0000000
+++ /dev/null
@@ -1,140 +0,0 @@
-This file details the changes between the previous release of CWRU bash
-(07/11/93) and this release.
-
-1. Bugs Fixed
-
-Readline's vi-mode once again has TAB bound to completion; entering `posix
-mode' changes it to self-insert
-
-Bash now binds its special emacs-mode functions directly into
-emacs_meta_keymap so that eight-bit character handling does not interfere
-
-Some source restructuring: more extern functions are defined in header files
-and not in C source files
-
-The handling of `line number' inside functions is now more correct and
-closer to reality
-
-Some functions of `general use' were moved to general.c (vfree,
-full_pathname)
-
-A bug that caused some redirections to be applied twice was fixed in
-execute_command_internal (dispose of redirection_undo_list after copying it;
-ditto for exec_redirection_undo_list)
-
-The exit status of a command that is not found is 126, as Posix.2 specifies
-
-More speed improvements -- bash now runs as fast as the SunOS sh on
-Haertel's `shell benchmark'
-
-Instead of returning pointers to -1, bash and the readline, history, and
-glob libraries now return pointers to special `error pointers', which the
-calling code checks for in place of -1
-
-Fixed a problem with canonicalize_pathname which made it get
-confused with xxx/./yyy if yyy was `.' or `..'
-
-Fixes to make bash recognize SVR4.2 and set USGr4_2 for SVR4.2 systems
-
-Fixes to the HP/UX machine descriptions to make alloca work on HPUX_9
-and to avoid `M_MACHINE redefined' warnings
-
-Fixes to the CRAY machine description
-
-Fixes to the mailpath code to make it Posix.2-compliant -- backslash
-may now quote `%' and `?' 
-
-The namespace was further cleaned up, and more functions and variables
-were made static
-
-On systems with S_IFSOCK or S_ISSOCK defined in sys/stat.h, bash checks
-whether fd 0 is a socket to decide whether or not it's being started by
-rshd and to run the startup files
-
-Bash now gives the signal mask it inherits to its children -- previously,
-login shells cleared the signal mask
-
-cpp-Makefile and subst.c both used the `USE_GLOB_LIBRARY' define, but
-with different meanings; subst.c now uses `USE_POSIX_GLOB_LIBRARY'
-
-Fixed pattern substitution so that ${a%%$b}, where b was unset, no longer
-causes a core dump
-
-Changed the `test_exit' define in test.c to no longer use `longjmp' as
-the rhs or a comma-ized expression; this causes core dumps on some
-optimizer/machine combinations
-
-A speed hack in variables.c: if no local variables are defined for a level
-of shell context, kill_all_local_variables does not need to search the
-whole variable hash table when popping a context
-
-Fixed the `bind' builtin so that -m now changes the keymap for all of the
-subsequent operations
-
-Changed some more builtins to use internal_getopt: bind, command, export,
-readonly, declare, typeset
-
-Fixed fc to use the Posix.2 format for listing commands in the
-history list
-
-Changed bg to set `!', as Posix.2 specifies
-
-Fixed ulimit.def to compile if RLIMIT_RSS is not defined,
-as some systems seem to have it
-
-Replaced lib/malloc/alloca.c with the version from emacs 19.  The old one
-lives in alloca.c.old
-
-malloc.c now uses the ANSI C features to `stringize' macro arguments if
-__STDC__ is defined
-
-Fixes to the GNU malloc library from glibc 1.06 and Mike Haertel
-
-Fixes to readline key binding and lookup for Cray systems, which don't
-like the casting that readline does
-
-Fixes to all readline library source files to clean up the code: make sure
-`int'-returning functions use `return x;' rather than `return;', declare all
-arguments, even the `int' ones, and make some functions void.  Cleaned up
-the code formatting a little, too.
-
-The readline completer now double-quotes filenames with special word-break
-characters, so that tilde expansion still works
-
-^C now breaks out of keyboard macros
-
-If being compiled as part of the shell, readline no longer attempts to
-handle SIGTTIN, SIGTTOU, or SIGTSTP
-
-tilde_expansion_failure_hook is now a CPFunction rather than a Function,
-since that's how it's used
-
-Readline vi-mode `change case' function now skips over characters which
-are neither upper nor lower case
-
-Readline vi-mode now allows replacement to be redoable with `.'
-
-2. New Features
-
-A `strict Posix.2' mode, enabled with the -posix startup option or
-setting the POSIXLY_CORRECT variable (see CWRU/POSIX.NOTES for a 
-description of the changed behavior)
-
-`ONESHOT' is now an option in config.h
-
-cpp-Makefile assumes that fixed header files are present if gcc is being
-used
-
-The redirections attached to a function declaration are now part of that
-function, applied when the function is executed, as specified by Posix.2.
-This caused a change to parse.y that resulted in 66 shift/reduce
-conflicts(!)
-
-All of the OP= functions that Posix.2 specifies are now implemented for
-both `let' and arithmetic substitution
-
-The `command' builtin has acquired the Posix.2 `-v' and `-V' options
-(this shares code with the `type' builtin)
-
-A new `bash_builtins' man page, like the `csh_builtins' page on some
-systems
diff --git a/CWRU/old-changelogs/CWRU.chlog.v10 b/CWRU/old-changelogs/CWRU.chlog.v10
deleted file mode 100644 (file)
index 9fe2a7a..0000000
+++ /dev/null
@@ -1,3177 +0,0 @@
-
-[code made available via ftp -- first redistributable version]
-
-                                   9/3
-                                   ---
-lib/readline/history.c
-       - removed stray extern declaration of strrchr()
-       - made get_history_word_specifier a static function
-
-lib/readline/readline.c
-       - removed redundant declaration of rl_visible_stats
-
-execute_cmd.c
-       - make sure that the subshell forked to execute ( xxx yyy ) &
-         sets original_pgrp to -1 so that ( exec xxx yyy ) & does not
-         make the exec builtin restore the original process group
-
-                                   9/4
-                                   ---
-
-builtins/read.def
-       - free `t' *only if* it was assigned the value from
-         string_list_dollar_star when more words are read than variables
-         supplied
-
-variables.c
-       - moved some external function declarations to file scope
-
-test.c
-       - changed the unary_advance and advance macros to use the
-         do { ... } while (0) idiom rather than the comma operator
-
-                                   9/5
-                                   ---
-builtins/getopts.def
-       - if __GNU_LIBRARY__ is defined, change getopt_set_posix_option_order
-         to a macro, because getopt.c will not be compiled in
-
-                                   9/7
-                                   ---
-subst.c
-       - support $POSIX_PEDANTIC as a synonym for $POSIXLY_CORRRECT
-
-builtins/set.def
-       - added support for `set -o posix'
-       - changed list_long_opts to use a define (`MINUS_O_FORMAT') for
-         the format argument to printf
-
-bashline.c, execute_cmd.c, jobs.c, nojobs.c, print_cmd.c, subst.c, test.c,
-variables.c
-       - moved extern declarations from function scope to file scope, or
-         removed extern function declarations already appearing in bash
-         header files
-
-bashline.c
-       - include alias.h if ALIAS defined
-
-lib/readline/history.h
-       - added extern declaration for history_tokenize
-
-shell.c
-       - changed run_startup_files to use the global value of
-         posixly_correct instead of the posix_env argument, which was
-         eliminated
-
-lib/readline/readline.c
-       - changed alphabetic() so we're not casting the return value
-         from strchr() to an int
-
-                                   9/8
-                                   ---
-builtins/ulimit.def
-       - disable the getrlimit stuff if GETRLIMIT_MISSING is defined
-
-machines.h
-       - define GETRLIMIT_MISSING for the Sequent Symmetry
-       - change the M_OS define to `Dynix_ptx' for the Sequent Symmetry
-       - take HAVE_ALLOCA out of the Symmetry definition
-       - removed extra HAVE_ALLOCA define from linux machine description
-
-cpp-Makefile
-       - add $OSTYPE to HOSTTYPE_DECL, defining it as ${OS_NAME}
-
-variables.c
-       - make a variable $OSTYPE analogous to $HOSTTYPE, set from the
-         OSTYPE define from cpp-Makefile
-
-documentation/bash.1
-       - added description of $OSTYPE
-
-parse.y
-       - changed report_syntax_error so that syntax errors set $? to 2
-         like sh and ksh do
-
-lib/readline/funmap.c
-       - added bindings for the non-incremental `search again' functions
-         like those that vi uses
-
-expr.c, general.c, builtins/trap.def, builtins/common.c
-       - removed some extraneous extern function declarations
-
-                                   9/9
-                                   ---
-jobs.h
-       - added some more extern function declarations exported by jobs.c
-
-parse.y, bashline.c, shell.c, builtins/common.c
-       - removed some extraneous extern function declarations
-
-builtins/common.h
-       - fixed the extern declaration of parse_and_execute_cleanup
-
-lib/readline/readline.h
-       - added more extern function declarations for functions in bind.c
-         and complete.c
-       - include tilde.h instead of redeclaring the tilde variables and
-         functions
-
-parse.y
-       - made with_input_from_stream and with_input_from_stdin void
-         functions
-       - made the yy_*_get and yy_*_unget functions static
-
-shell.c
-       - made all the initialize functions static void
-
-trap.h
-       - added extern declarations for the rest of the functions defined
-         in trap.c
-
-trap.c
-       - made initialize_traps a void function, since it has no return
-         value
-
-externs.h
-       - new file, with function declarations not mentioned in other header
-         files.  Included by shell.h.
-
-cpp-Makefile, builtins/Makefile
-       - updated the dependencies to include new header files
-
-bashline.c, execute_cmd.c, jobs.c, general.c, mailcheck.c, make_cmd.c,
-nojobs.c, parse.y, print_cmd.c, shell.c, subst.c, test.c, trap.c,
-variables.c, builtins/common.c, builtins/bind.def, builtins/declare.def,
-builtins/exec.def, builtins/hash.def, builtins/let.def, builtins/source.def,
-builtins/trap.def, builtins/type.def, error.c
-       - removed extern function declarations already in externs.h
-
-lib/tilde/tilde.h, jobs.h
-       - protect against multiple inclusion with #ifdef __XXX_H__
-
-jobs.h
-       - added extern declaration of job_control
-
-general.c
-       - include <tilde/tilde.h> and remove all of the extern declarations
-         for the tilde variables
-
-lib/readline/history.h
-       - added extern declarations for variables exported by history.c
-
-execute_cmd.c
-       - don't bother trying to free the string passed to make_child in
-         the child if the command is not found
-
-bashhist.c, bashhist.h
-       - new files with bash interface to the history library.  Moved code
-         from parse.y, shell.c, subst.c to here.
-
-parse.y, bashline.c, shell.c, subst.c, variables.c
-       - include bashhist.h
-
-error.c, bashhist.c, bracecomp.c
-       - added copyright comment
-
-machines.h
-       - changed hpux_8 and hpux_9 entries to #undef USE_GNU_MALLOC
-         because they have the same YP bug as SunOS
-
-                                  9/10
-                                  ----
-print_cmd.c
-       - fixed the printing of functions declared within functions by
-         making print_function_def and named_function_string responsible
-         for printing the open and close braces and printing the `inside'
-         command rather than overloading print_group_command
-
-builtins/fc.def, builtins/history.def
-       - fixed up to use bashhist.h and removed extra declarations of
-         history stuff
-
-nojobs.c
-       - restore the top-level signal mask on Posix.1 systems after
-         forking in make_child
-       - make all children set the job control signals to SIG_DFL in
-         make_child
-
-                                  9/12
-                                  ----
-documentation/texi2roff-2.0.shar
-       - removed from the source tree
-
-                                  9/13
-                                  ----
-lib/doc-support
-       - new directory for building texindex
-
-lib/doc-support/texindex.c
-       - upgraded to version 1.45 from the texinfo-3.1 distribution
-
-documentation/Makefile
-       - fixed so that features.dvi would build correctly
-
-variables.c, subst.c, braces.c, flags.c, jobs.c, mailcheck.c, parse.y,
-builtins/cd.def, builtins/common.c, lib/readline/history.c,
-lib/readline/isearch.c, lib/readline/readline.c
-       - removed instances of `index' being used as a variable or
-         structure member
-
-cpp-Makefile
-       - pass HAVE_LIMITS_H through to the rest of the build in
-         SYSTEM_FLAGS and LIBRARY_CFLAGS
-
-maxpath.h
-       - removed inclusion of `sysdefs.h', since the only reason it was
-         included was to pick up HAVE_LIMITS_H
-
-                                  9/14
-                                  ----
-bashhist.h
-       - add extern declaration of history_expansion_inhibited, dependent
-         on BANG_HISTORY
-
-execute_cmd.c, builtins/common.c, subst.c, variables.c, parse.y, jobs.c,
-error.c, bashline.c
-       - moved all extern variable declarations to beginning of file,
-         giving them file scope
-
-execute_cmd.c
-       - changed the code so that /dev/null is used as fd 0 for async
-         jobs if the shell itself is not interactive (!interactive_shell)
-         rather than currently interactive (!interactive)
-
-builtins/break.def, builtins/cd.def, builtins/declare.def
-builtins/exit.def, builtins/fc.def, builtins/fg_bg.def builtins/hash.def,
-builtins/kill.def builtins/read.def, builtins/return.def,
-builtins/setattr.def builtins/source.def, builtins/type.def,
-builtins/wait.def
-       - moved all extern variable declarations to beginning of file,
-         giving them file scope
-
-                                  9/15
-                                  ----
-support/mksysdefs
-       - change the test to set SCOREL so that it handles SCO v4.2 and
-         above (everything above and including 4.0)
-
-machines.h
-       - changed M_OS define of `Solaris' to `SunOS5'; added -DSolaris to
-         SYSDEP_CFLAGS for Solaris 2 systems
-
-                                  9/16
-                                  ----
-print_cmd.c
-       - make sure cprintf() null-terminates the_printed_command correctly
-
-test.c
-       - changed the last two stray stat() calls to test_stat()
-       - made test_stat handle emulation of /dev/fd for systems that
-         don't have it: /dev/fd/x returns the result of fstat(x, finfo)
-
-documentation/bash.1
-       - added -b to the usage line for the `set' builtin
-       - added description of `set -o posix'
-       - added -u, -v to the usage line for the `ulimit' builtin
-       - added text describing key bindings in ~/.inputrc to the
-         READLINE section
-
-documentation/texinfo.tex
-       - upgraded to the latest version from the texinfo-3.1 distribution
-
-documentation/features.texi, lib/readline/doc/rluser.texinfo, 
-lib/readline/doc/hsuser.texinfo
-       - a major overhaul and expansion
-
-                                  9/17
-                                  ----
-bashline.c
-       - set rl_vi_comment_begin to "#" when in Posix.2 mode
-
-lib/readline/vi_mode.c
-       - set vi mode comment begin character string to "#" by default
-
-                                  9/18
-                                  ----
-lib/readline/bind.c
-       - added `set keymap' command to the init file variable setting code
-
-documentation/bash.1, documentation/features.texi
-       - added description of `set keymap' command
-
-lib/readline/doc/rluser.texinfo
-       - completed description of init file and keybinding syntax
-
-                                  9/20
-                                  ----
-variables.c
-       - if POSIXLY_CORRECT or POSIX_PEDANTIC are in the initial shell
-         environment, enter `Posix.2 mode'
-
-machines.h
-       - define SCO REQUIRED_LIBRARIES as `-lc_s -lc -lPW' to pick up
-         the functions in libc and libPW from libc (e.g. rename)
-
-
-                                  9/21
-                                  ----
-execute_cmd.c
-       - fixed X_BIT macro to protect its argument with parens in the
-         macro body
-
-maxpath.h
-       - include sys/param.h on Dynix machines if MAXPATHLEN is not
-         defined after including limits.h
-
-general.c
-       - moved the inclusion of <signal.h> on Posix.1 systems up with the
-         rest of the includes
-
-shell.c, lib/readline/complete.c, lib/tilde/tilde.c
-       - don't extern declare getpwuid on Dynix machines
-
-lib/readline/history.c
-       - make sure strlen() is cast to int whenever used in a comparison
-
-                                  9/23
-                                  ----
-lib/readline/readline.c
-       - changed rl_call_last_kbd_macro to disallow recursive macro
-         execution
-
-                                  9/26
-                                  ----
-bashline.c
-       - free rl_vi_comment_begin before assigning to it; make sure to
-         savestring() what we assign to it
-
-                                  9/28
-                                  ----
-lib/readline/search.c
-       - in noninc_search, make the ^W and ^U bindings closer to what
-         Posix.2 specifies.  (The ^W binding still uses unix_word_rubout,
-         which uses whitespace as the word boundary.  This is what
-         ksh-88 does, too.  Posix.2 says to use punctuation characters
-         as word boundaries also.)
-
-lib/readline/vi_mode.c
-       - fixed a bug in rl_vi_delete_to which caused c[wW] to delete one
-         extra character when there were multiple spaces between words.
-         Made the same change to rl_vi_change_to() and rl_vi_yank_to().
-
-lib/readline/complete.c
-       - fixed quoted substring completion so that `\' can quote the
-         quote character
-       - fixed the quoted string completion mechanism by doing the
-         following:
-               o quoted word break characters do not break words for the
-                 completer, so `"abcde"/xhy' no longer sends `/xhy' to
-                 the rest of the completion code
-               o quotes are stripped after the application-specific
-                 completion function is attempted if filename completion
-                 is about to be performed.  If needed, they are added
-                 back later.  This has the benefit of removing unneeded
-                 quotes.
-
-                                  9/29
-                                  ----
-siglist.h
-       - ICL DRS6000s need sys_siglist to be defined as _sys_siglist
-
-machines.h
-       - take the define of sys_siglist out of the DRS6000 entry
-       - added summary of available definitions for SYSDEP_CFLAGS
-       - added new SYSDEP_CFLAGS variable: HAVE_GETPW_DECLS to isc386, sgi,
-         Linux, Dynix descriptions
-       - changed isc386 description: added ISC_SYSDEPS to make the
-         SYSDEP_CFLAGS lines a little cleaner
-
-shell.c, lib/tilde/tilde.c, lib/readline/complete.c
-       - now uses HAVE_GETPW_DECLS define
-
-lib/tilde/tilde.c
-       - removed references to getpwent(), since it's not called
-       - add extern declaration for getpwnam()
-
-lib/readline/complete.c
-       - add a __STDC__ definition for getpwnam() for isc386 machines
-
-cpp-Makefile
-       - updated the dependencies: bashhist.h, bashansi.h, dependencies
-         on the library include files
-
-                                  9/30
-                                  ----
-mailcheck.c
-       - cleaned up the name space by making functions not used by other
-         files static
-       - took out redundant test in check_mail after the goto next_mail_file
-
-variables.c
-       - cleaned up the code a bit by removing unnecessary { ... } pairs
-         enclosing some code blocks
-       - check for $IGNOREEOF at startup, call sv_ignoreeof if imported
-
-parse.y
-       - new variable `ignoreeof', non-zero if we are ignoring EOF, used
-         in handle_eof_input_unit -- keeps us from looking up $IGNOREEOF
-         and $ignoreeof on every EOF character
-
-subst.c
-       - sv_ignoreeof now sets or clears `ignoreeof'
-
-flags.h
-       - changed flags_alist `name' member to be a char, since we only
-         ever use one character
-       - added FLAG_UNKNOWN to be returned by find_flag, since (int *)-1
-         is not portable, and (int *)0 is just as good a value
-
-flags.c
-       - changed find_flag, change_flag_char, change_flag, to take a
-         char as a parameter rather than a char * because we only use
-         one char and this is faster
-
-builtins/set.def
-       - changed calls to find_flag to pass a char instead of a char *
-
-shell.c, jobs.c, builtins/set.def
-       - changed instances of change_flag_char to change_flag, since the
-         two are now equivalent
-
-cpp-Makefile
-       - added BUILTIN_OBJS, made BUILTINS_LIB depend on them
-       - added dependencies for builtin objects on builtin .def files
-       - otherwise tightened up the dependencies
-
-                                  10/1
-                                  ----
-support/mksysdefs
-       - handle SGI Irix 5.x by making SYSDEF="Irix5"
-
-parse.y
-       - made init_yy_io a void function
-
-input.h
-       - moved extern function declarations for parse.y and input.c to
-         this file from externs.h
-
-shell.c
-       - include input.h unconditionally, now that it has extern function
-         declarations
-       - check for $POSIX_PEDANTIC at shell startup, set posixly_correct
-         if found
-
-make_cmd.c
-       - include input.h for the extern function declarations
-
-execute_cmd.h
-       - new file, with extern declarations from execute_cmd.c
-
-subst.c, builtins/type.def, variables.h, builtins/exec.def, builtins/hash.def,
-shell.c, buitlins/common.c, execute_cmd.c, mailcheck.c
-       - include execute_cmd.h
-
-cpp-Makefile, builtins/Makefile
-       - updated the dependencies as a result of the new and changed
-         include files
-
-execute_cmd.h, externs.h, input.h
-       - changed to use the __P(()) method of using prototypes for extern
-         functions
-
-nojobs.c
-       - include command.h
-
-                                  10/5
-                                  ----
-bashline.c
-       - make sure test_for_directory frees the filename if stat(2)
-         fails
-
-lib/readline/vi_mode.c
-       - fixed the `c' command when used with the following motion
-         commands: `^', `0', `%', `b', `B'.  The cursor was being
-         moved one position too far, resulting in too much erasure
-
-parse.y
-       - changed redirection_needing_here_document into a stack of
-         such redirections (redir_stack), indexed by need_here_doc,
-         to handle command lines with >1 redirection, e.g.
-               cat <<a; cat <<b
-       - new function gather_here_documents to run the redirection stack
-
-shell.c
-       - don't import redirection_needing_here_doc; call
-         gather_here_documents() instead
-
-input.h
-       - extern declaration for gather_here_documents()
-
-machines.h
-       - add OPENDIR_NOT_ROBUST to the SYSDEP_CFLAGS for SunOS 5
-
-                                  10/6
-                                  ----
-subst.c
-       - removed the unused `preserve_backslashes' and Q_KEEP_BACKSLASH
-         code in expand_word_internal
-       - fixed memory leak: free `istring' before longjmping out of a
-         bad substitution
-       - fixed memory leak: free `temp' at the bad_substitution label
-       - fixed memory leak: free `value' at the bad_substitution label
-       - removed all calls to longjmp from expand_word_internal: it now
-         returns a pointer to expand_word_error or expand_word_fatal,
-         and the caller is responsible for cleaning up locally allocated
-         resources and calling longjmp with the appropriate parameter.
-         BY CONVENTION: when one of those distinguished values is returned,
-         the `string' variable has already been freed, so the caller must
-         set it to null or otherwise not free it
-       - changed an fprintf (stderr, ...) to report_error in
-         parameter_brace_expand_error
-
-dispose_cmd.c
-       - check for word->word being non-null in dispose_word before trying
-         to free it
-
-                                  10/8
-                                  ----
-variables.c
-       - made new_shell_variable static
-       - made set_var_read_only, set_func_read_only, set_var_auto_export,
-         set_func_auto_export, sort_char_array, maybe_make_export_env,
-         put_command_name_into_env void functions
-
-variables.h
-       - added declarations for all the missing extern functions
-
-builtins/hash.def
-       - include posixstat.h for definition of struct stat to use in
-         function prototype declarations
-
-expr.c                                 
-       - renamed local function `assignment' to `expassign' to avoid
-         clashing with the global `assignment' defined in variables.c
-
-builtins/source.def
-       - include `execute_cmd.h' to pick up extern function declarations
-
-trap.h
-       - protected against multiple inclusion with __TRAP_H__ define
-       - added prototypes with __P
-
-                                  10/11
-                                  -----
-support/mksysdefs
-       - check in /usr/include/ansi and /usr/include/bsd for NeXT 3.x
-         machines
-
-lib/readline/vi_mode.c
-       - include rldefs.h
-
-                                  10/12
-                                  -----
-test.c
-       - changed the `-x' test to call access(2) when AFS is defined,
-         since `stat' doesn't work with AFS
-
-builtins/cd.def
-       - added code to dirs_builtin to implement dirs -n and dirs +n
-
-documentation/bash.1, documentation/features.texi
-       - updated description of `dirs' builtin
-
-                                  10/14
-                                  -----
-lib/readline/bind.c
-       - new function _rl_bind_if_unbound, which binds a key sequence to a
-         readline function if that key sequence is unbound
-
-lib/readline/readline.c
-       - use _rl_bind_if_unbound to try to bind the arrow keys in
-         init_terminal_io
-
-
-                                 10/15
-                                 ----- 
-
-lib/readline/display.c
-       - laid the groundwork for expanding special characters in
-         readline prompt strings: new function expand_prompt
-       - rl_redisplay now has static local prompt variables:
-               local_prompt: expanded prompt string after last newline
-               local_prompt_prefix: expanded prompt string before last newline
-               visible_length: number of visible chars in local_prompt 
-               prefix_length: number of visible chars in local_prompt_prefix
-         changed when rl_display_prompt changes
-
-                                  10/18
-                                  -----
-lib/readline/display.c
-       - new function: rl_expand_prompt, expands the prompt and sets the
-         local display variables to the right values for redisplay.
-       - changed rl_redisplay to use the values computed by rl_expand_prompt
-         if rl_display_prompt == rl_prompt and the old expansion code if
-         otherwise (for instance, if rl_display_prompt is set by rl_message)
-
-lib/readline/readline.c
-       - new function: rl_get_termcap to retrieve the value of any termcap
-         attribute that readline retrieves
-       - made readline_internal static, added appropriate declarations
-       - new global library variable: rl_visible_prompt_length
-       - added call to rl_expand_prompt in readline() before call to
-         rl_initialize
-
-lib/readline/search.c
-       - use rl_visible_prompt_length instead of strlen(rl_prompt) in
-         noninc_search ()
-
-                                  10/19
-                                  -----
-execute_cmd.c
-       - in execute_command_internal, mark an async job with a forced
-         subshell `( xxx ) &' as no longer an interactive shell, no
-         matter whether or not the original shell was interactive.  This
-         allows jobs to be reaped without notification and fixes a mem
-         `leak' (not really a leak, but the shell keeps increasing the
-         size of the jobs table)
-
-                                  10/21
-                                  -----
-machines.h
-       - updated the NEC EWS description with hints from Jim Blandy
-
-                                  10/23
-                                  -----
-
-lib/readline/display.c
-       - changed expand_prompt so that it understands `escape' characters
-         to mark the beginning and end of a sequence of non-visible
-         characters, and takes these into account when returning the
-         length of the prompt string
-
-lib/readline/readline.h
-       - new defines: RL_PROMPT_START_IGNORE and RL_PROMPT_END_IGNORE
-
-                                  10/24
-                                  -----
-
-parse.y
-       - removed check for $NO_PROMPT_VARS from decode_prompt_string()
-
-documentation/bash.1
-       - removed reference to $NO_PROMPT_VARS
-
-                                  10/25
-                                  -----
-machines.h
-       - add -lc_s to the AIX/PS2 REQUIRED_LIBRARIES definition
-
-lib/readline/readline.c
-       - removed the extra space that rl_yank_nth_arg adds before the
-         yanked string
-
-                                  10/26
-                                  -----
-trap.c
-       - set_sigint_handler now sets the SIGINT handler to sigint_sighandler
-         only if `interactive' is set, rather than interactive_shell.  This
-         fixes the `". x", then sigint' bug reported by Vasco Pedro.
-
-general.c
-       - removed `register' from variable declarations in function prologues
-       - some functions now take slightly different arguments:
-               delete_element takes a `char *' as the third argument
-               find_name_in_list takes a `char **' as the second argument
-
-general.h
-       - changed definition of REVERSE_LIST to cast the argument of the
-         call to reverse_list()
-       - added prototypes for all extern functions defined in general.c
-       - definition of BCOPY for use in general.c and elsewhere
-
-shell.c
-       - changed some calls to reverse_list to REVERSE_LIST
-
-shell.h, make_cmd.c, unwind_prot.c, input.c, builtins.h, error.c
-       - include command.h before general.h for declaration of WORD_LIST
-
-execute_cmd.c, expr.c, general.c, input.c, shell.c, unwind_prot.c, parse.y
-       - changed calls to bcopy to call xbcopy instead, and cast the
-         first two arguments to char *
-
-copy_cmd.c
-       - changed calls to bcopy to call BCOPY instead
-
-machines.h
-       - new machine definition for IBM AIX/ESA (OSF/1) from Sergio
-         Gelato
-
-support/mksysdefs
-       - If `uname -m' returns `ESA', the machine is an IBM ESA
-
-lib/posixheaders/memalloc.h
-       - new file, to unify the code to include <alloca.h> if necessary
-         and declare alloca()
-
-config.h, config.h.mini, lib/readline/rldefs.h, lib/readline/history.c,
-lib/readline/isearch.c, lib/readline/search.c, lib/tilde/tilde.c
-       - changed to include "memalloc.h"
-
-builtins/getopt.c
-       - don't include #pragma alloca line on IBM ESA systems
-       - include malloc.h rather than alloca.h for AIX/ESA
-
-support/getcppsyms.c
-       - new defines to support AIX/ESA
-
-cpp-Makefile, builtins/Makefile, lib/readline/Makefile
-       - updated dependency information to include memalloc.h
-
-lib/readline/vi_keymap.c
-       - `\' in vi insertion mode should be mapped to self-insert rather
-         than quoted-insert
-
-                                  10/27
-                                  -----
-nojobs.c
-       - added variable `already_making_children', made a function
-         start_pipeline called from make_child to set it, value cleared
-         in stop_pipeline.  This is how jobs.c treats it.
-
-execute_cmd.c
-       - in the `subshell' code in execute_command_internal, we need to
-         handle a possible `return' if in a function:
-               f()
-               {
-                       echo x | ( read b ; return 1 )
-                       return 0
-               }
-         and treat it like an `exit'
-       - already_making_children is no longer a job-control only variable
-       - made the code that decides whether or not to wait for a child
-         process in the simple_command case of execute_command_internal
-         be the same for job control and non-job control shells, since
-         already_making_children has been put into nojobs.c
-
-lib/readline/display.c
-       - changed the display code to handle invisible characters in the
-         prompt and still wrap lines at the correct column.  wrap_offset
-         is the variable used to keep track of the number of invisible
-         characters in the buffer
-       - changed rl_redisplay to use `screenchars' from readline.c so we
-         don't have to compute (screenwidth * screenheight) on each
-         redisplay
-
-lib/readline/readline.c
-       - new variable `screenchars', set to the total number of characters
-         on the screen we can use (screenwidth * screenheight)
-       - changed rl_refresh_line so that it computes the line that the
-         cursor is on correctly, taking invisible characters into account
-
-                                  10/28
-                                  -----
-general.h
-       - changed declaration of vfree to xfree
-
-general.c
-       - renamed vfree to xfree, since some systems already have a vfree()
-         in libc
-
-execute_cmd.c, jobs.c, builtins/read.def, builtins/common.c
-       - changed vfree to xfree
-
-shell.c
-       - for systems that don't define USG and define ENOTSOCK, try to
-         use getpeername() in issock() to find out whether or not an
-         fd is a socket
-
-documentation/bash.1, documentation/features.texi
-       - documented the new \[ and \] prompt string escape sequences
-
-documentation/bash.1, lib/readline/doc/rluser.texinfo
-       - documented the new `show-all-if-ambiguous' readline variable
-
-lib/readline/complete.c
-       - changed rl_complete to call rl_complete_internal with `!' if
-         the variable `_rl_complete_show_all' is non-zero
-       - changed rl_complete_internal to show all matches if there is
-         more than one and what_to_do is `!'
-
-lib/readline/bind.c
-       - new variable `show-all-if-ambiguous' to control the value of
-         _rl_complete_show_all
-       - changed a call to alloca() in rl_parse_and_bind to a
-         malloc/free pair (`seq' variable), since some systems do not
-         allow alloca'd memory to be passed to a function
-       - did the same alloca -> xmalloc/free in rl_generic_bind
-         (`keys' variable)
-
-                                  10/29
-                                  -----
-dispose_cmd.h, make_cmd.h, command.h
-       - added prototypes for the extern function declarations
-
-variables.c
-       - BSD/386 needs getenv to have a `const char *' argument
-
-make_cmd.c
-       - changed make_until_or_while to a static function
-
-command.h
-       - removed extern declarations for functions in make_cmd.c; those
-         are in make_cmd.h
-
-                                  11/1
-                                  ----
-input.c
-       - make sure that sync_buffered_stream returns a value
-
-test.c
-       - make sure that binary_operator returns a value
-
-                                  11/2
-                                  ----
-cpp-Makefile
-       - added a definition of GCC_LINT_FLAGS and GCC_LINT_CFLAGS to
-         generate lint-like warnings from gcc
-
-siglist.h
-       - cast references to sys_siglist[] in the `strsignal' macro
-         for the benefit of Linux
-
-jobs.c, nojobs.c
-       - changed all absolute references to sys_siglist to call the
-         strsignal macro instead
-
-lib/readline/{readline.c,display.c,signals.c}
-       - _rl_output_character_function is an int
-
-lib/readline/rltty.c
-       - outchar should return an int
-
-general.c
-       - use %ld to printf longs
-
-builtins/trap.def
-       - reordered code and eliminated some brace groups
-
-builtins/ulimit.def
-       - open_files() should return a long
-
-shell.h
-       - include <varargs.h> if HAVE_VARARGS_H is defined, not simply if
-         HAVE_VFPRINTF is defined
-
-parse.y, execute_cmd.c, subst.c, trap.c, jobs.c
-       - make sure that all function parameters are declared explicitly
-         and not defaulted to int
-
-builtins/fg_bg.def
-       - fixed a bug where last_asynchronous_pid could be set to a random
-         value if an unknown job or a non-job-control job was selected
-
-test.c
-       - added a missing `%s' to a call to test_syntax_error
-
-cpp-Makefile
-       - renamed `endian.h' to `bash-endian.h'; it seems that linux and
-         gnu libc use it in /usr/include.  What a pain in the ass.
-
-                                  11/4
-                                  ----
-machines.h
-       - add `#define HAVE_VARARGS_H' to the Linux machine description;
-         the auto-configuration process is unable to find it in the gcc
-         private include directories
-
-                                  11/5
-                                  ----
-cpp-Makefile
-       - COMPRESS_EXT should be `.gz'
-
-general.h
-       - have the BCOPY define for USG machines use `memmove' rather than
-         `memcpy', since that handles overlapping objects correctly
-
-lib/readline/display.c
-       - fixed the line updating code that checked whether a new line was
-         shorter or had fewer invisible characters that the visible line,
-         and called clear_to_eol with the right value and only in the
-         right cases
-
-machines.h
-       - added separate machine descriptions for NetBSD and FreeBSD
-
-builtins/command.def
-       - don't try to call confstr() on NetBSD
-
-                                  11/6
-                                  ----
-machines.h
-       - define HAVE_BCOPY for sgi
-       - define HAVE_GETHOSTNAME for Linux and HPUX machines later than
-         hpux 6.2
-
-general.h
-       - remove the `if defined (sgi) from the clause that defines BCOPY
-
-general.c
-       - use new HAVE_BCOPY and HAVE_GETHOSTNAME defines instead of the
-         OS-specific symbols used before
-
-                                  11/8
-                                  ----
-machines.h
-       - for i386 machines running aix/ps2, use USE_TERMCAP_EMULATION,
-         since the terminfo database is more up-to-date than termcap
-
-lib/readline/complete.c
-       - make sure that X_OK is defined for the VISIBLE_STATS code
-
-config.h, builtins/echo.def
-       - added a DEFAULT_ECHO_TO_USG option for the echo builtin
-
-lib/readline/rldefs.h
-       - Xenix 2.2 systems, while mostly USGr3, do not have `sighold'
-         and related functions
-
-lib/readline/isearch.c
-       - added a variable `prev_line_found' to keep the incremental
-         searches from finding the same line two or more times in a
-         row
-
-support/getcppsyms.c
-       - recognize `_M_XENIX' and `mc68k32' symbols from cpp
-
-tests/run-dollar-at-star-test
-       - use `../bash' to point at the bash executable rather than
-         `../../sun4/bash'
-
-general.h
-       - some systems have a `strerror' define, so we need to protect
-         the extern function declaration
-
-trap.h
-       - use SIG_DFL rather than NSIG as the test of whether or not to
-         include <signal.h>, since Posix.1 does not require NSIG
-
-                                  11/9
-                                  ----
-subst.c
-       - new function get_word_from_string to slice a field off the front
-         of a string and skip trailing separators according to $IFS
-
-builtins/read.def
-       - changed read_builtin to use get_word_from_string to `incrementally'
-         do word splitting on the line read so that if fewer variable names
-         are given than words read, the separators in the original line are
-         preserved.  This makes `read' Posix.2 compliant.
-
-                                  11/10
-                                  -----
-cpp-Makefile
-       - add a sentinel file `parser-built' for y.tab.c and y.tab.h to
-         depend on, since there's no rule for telling make how to build
-         y.tab.h
-
-shell.c
-       - removed the #ifdef AUX code that sets up a 4.2 compatible
-         environment in favor of using the -ZP option to cc to create
-         a Posix executable (AUX 3.0)
-
-jobs.c
-       - changed sigwinch_sighandler so that it saves the window size
-         struct with the new values in shell_tty_info.c_winsize on AIX PS/2
-         Since readline calls the old sigwinch handler, this code should
-         be called no matter when the signal is received
-
-support/mksysdefs
-       - add code to define AIX_13 on AIX PS/2 version 1.3 machines
-
-machines.h
-       - there are different SYSDEP_CFLAGS and REQUIRED_LIBRARIES for
-         AIX PS/2 1.2 and 1.3, so use the AIX_13 define to differentiate
-
-                                  11/11
-                                  -----
-execute_cmd.c
-       - speedups and fixes for here document processing in
-         do_redirection_internal: don't do string processing we can
-         avoid, use stdio to help with write buffering if we're
-         expanding the document, close some file descriptor leaks
-
-make_cmd.c
-       - speed up gathering here documents: avoid expensive calls to
-         strncmp when possible, avoid a stupid strcpy when stripping
-         leading tabs, use BCOPY instead of strcpy
-
-print_cmd.c
-       - made varargs and non-varargs versions of cprintf() as similar
-         as possible
-       - redid the_printed_command_resize() to be a little smarter about
-         allocating memory
-
-subst.c
-       - sped up string_list_internal by allocating all the necessary
-         space before copying rather than using xrealloc, using BCOPY
-         and an `end ptr' instead of strcat, trying not to call strlen
-         to get the separator length
-       - sped up sub_append_string by using BCOPY instead of strcat,
-         being smarter about memory allocation, and cutting down calls
-         to strcpy
-       - sped up expand_string_internal by not calling the
-         make_word/dispose_word pair, but by filling in a local
-         WORD_DESC, short-circuiting if the string is null or empty
-       - don't bother trying to split words in expand_string_leave_quoted
-         if expand_string_internal returns a null list
-       - ditto for dequoting in expand_string_unsplit
-
-lib/readline/vi_mode.c
-       - removed `w' and `W' from the list of characters that do not
-         require the point to be moved after a call to rl_vi_domove
-         in rl_vi_delete_to (`d') and rl_vi_yank_to (`y').  Only the
-         `c' command (rl_vi_change_to) requires this behavior
-
-                                  11/12
-                                  -----
-subst.c
-       - make sure all places which call expand_word_internal are
-         prepared to deal with error returns (expand_word_error
-         and expand_word_fatal) by adding a convenience function
-         call_expand_word_internal that performs the call and deals
-         with the possible error returns.  This keeps the shell
-         from dumping core on some errors
-
-lib/readline/vi_mode.c
-       - make sure <sys/types.h> is included before rldefs.h
-
-parse.y
-       - changed read_a_line to use and re-use a static line buffer
-
-make_cmd.c
-       - no longer need to free full_line, since read_a_line (called
-         from read_secondary_line), does not allocate a new one on
-         each call
-
-builtins/psize.c, alias.c
-       - need to include command.h before general.h
-
-                                  11/15
-                                  -----
-documentation/features.texi, lib/readline/doc/{hsuser,rluser}.texi
-       - fixed some spelling errors and typos
-
-endian.c
-       - include <sys/types.h> for size_t
-
-Makefile.inc
-       - new file, included in cpp-Makefile, providing biolerplate Gnu
-         make definitions
-
-cpp-Makefile
-       - include Makefile.inc
-       - added `distclean', `realclean' targets as per Gnu coding
-         standards
-
-                                  11/17
-                                  -----
-cpp-Makefile
-       - `make install' now installs the documentation in $(mandir) and
-         $(infodir)
-       - `make documentation' now passes $(MFLAGS) to the sub-make
-
-documentation/Makefile
-       - now has an `install' target
-
-config.h
-       - RESTRICTED_SHELL is no longer automatically defined
-
-support/mksysdefs
-       - Intel paragons (uname -m = paragon) need MAKE_ANSI set to true
-
-lib/readline/history.c
-       - create the history file with mode 0600, since it's supposed to
-         be private information
-
-builtins/fc.def
-       - make sure we put in the tab and `*' only if the line is actually
-         being listed to stdout rather than to a file for reexecution
-
-                                  11/17
-                                  -----
-machines.h
-       - fixed a typo in the hpux machine description
-       - added some SYSDEP_CFLAGS to the __BSD_4_4__ description
-
-README
-       - corrected mail address for bash-maintainers
-
-jobs.h
-       - don't declare fork (), getpid (), and getpgrp () on __BSD_4_4__
-
-                                  11/18
-                                  -----
-subst.c
-       - fix to string_list_internal to make it return a null string if
-         handed a null list
-
-parse.y
-       - fix to find_reserved_word: `word' is declared as the argument, but
-         `token' is what's used in the body
-
-lib/malloc/alloca.c
-       - Crays need to define _getb67() as CRAY_STACKSEG_END
-
-machines.h
-       - ISC machines should be using USE_TERMCAP_EMULATION
-
-                                  11/19
-                                  -----
-lib/readline/Makefile, lib/tilde/Makefile, lib/glob/Makefile, cpp-Makefile
-       - change instances of `make' in recipes to `$(MAKE) $(MFLAGS)'
-
-machines.h
-       - SunOS4 needs `OPENDIR_NOT_ROBUST'
-       - recognize a Motorola M88100 if m88k and USGr4 are defined, since
-         support/mksysdefs sets SYSDEF to USGr4 rather than M88100 for
-         the Motorola V.4
-       - changes to the ISC entry to handle ISC version 4 as well as
-         version 3 using cc and gcc to compile
-
-shell.c
-       - fixed a typo (__POSIX_VERSION -> _POSIX_VERSION)
-       - fixed a problem with reset_terminating_signals which caused the
-         wrong signal numbers to be checked for being trapped or
-         handled specially
-
-lib/readline/vi_keymap.c
-       - ^H in movement mode should by default be mapped to rl_backward
-       - delete (^?) should be unbound in the default movement mode keymap
-
-lib/readline/vi_mode.c
-       - rl_vi_last_arg should insert a space before inserting the last
-         argument, according to Posix.2
-
-getcwd.c
-       - correctly declare the second argument as a size_t if __STDC__
-         is defined
-
-                                  11/20
-                                  -----
-builtins/fc.def
-       - go back to the ad-hoc option parsing style, because the builtin
-         getopt does not handle things like `fc -l -10' correctly
-
-support/mksysdefs
-       - fixed a typo problem defining $UnicosMachine that left a comment
-         unclosed
-
-lib/malloc/alloca.c
-       - bug fix from Bill Jones for CRAY_STACKSEG_END define
-
-config.h, execute_cmd.c
-       - fix for CRAY and defining `word'
-
-machines.h
-       - Crays need to define OPENDIR_NOT_ROBUST
-
-bashtypes.h
-       - sys/types.h with handling for multiple inclusion and Cray
-         peculiarities
-
-execute_cmd.c, make_cmd.c, parse.y, subst.c
-       - include `bashtypes.h' rather than <sys/types.h>
-
-                                  11/22
-                                  -----
-machines.h
-       - add definitions of CRAY_STACKSEG_END for Cray XMP and YMP
-       - removed OLD_CRAY_DESCRIPTION stuff
-
-lib/readline/rldefs.h
-       - encapsulate CRAY peculiarities with casting pointers to ints
-         inside two defines: FUNCTION_TO_KEYMAP and KEYMAP_TO_FUNCTION
-
-lib/readline/bind.c, lib/readline/readline.c
-       - change code to use FUNCTION_TO_KEYMAP and KEYMAP_TO_FUNCTION
-
-maxpath.h
-       - include <sys/param.h> on the convex, but not on bsdi
-
-newversion.c
-       - overhauled and cleaned up
-       - added the `-patch' argument to set the patch level of the shell
-       - look in `.patchlevel' for the patch level and write it out as
-         PATCHLEVEL
-
-version.c
-       - new variable patch_level
-
-shell.c
-       - the version string is now `dist.patch(build)'
-       - new function shell_version_string returns a pointer to the
-         version string, show_shell_version changed to use it
-
-variables.c
-       - bind $BASH_VERSION to the value of shell_version_string ()
-
-                                  11/23
-                                  -----
-machines.h
-       - SCO machines now include -DPGRP_PIPE in the SYSDEP_CFLAGS define
-       - HPUX_9 needs an #undef HAVE_RESOURCE; it appears that they've
-         finally removed getrusage
-
-trap.c
-       - signal_name should return an error when passed NSIG
-
-parse.y
-       - add AND_AND and OR_OR to the list of tokens which are not followed
-         by a semicolon
-       - decrement current_command_line_count if pre_process_line returns
-         a null or empty string, otherwise the next input line may be
-         combined with the previous line inappropriately
-
-                                  11/24
-                                  -----
-machines.h
-       - the KSR/1 section should be delimited by `__ksr1__', added some
-         SYSDEP_CFLAGS to that description
-
-support/mksysdefs
-       - quote all the arguments to expr
-
-support/getcppsyms.c
-       - recognize and pass on `__ksr1__'
-
-lib/readline/bind.c
-       - new inputrc variable `output-meta', which means output meta
-         chars without converting them to M- sequences
-
-lib/readline/readline.c
-       - new variable `_rl_output_meta_chars' to hold value of
-         `output-meta', initially off
-       - slight efficiency improvement to rl_insert_text, rl_forward,
-         rl_backward
-       - changed the order of args to rl_kill_text in rl_unix_word_rubout
-         so that multiple words can be killed and yanked out in the
-         `right' order
-
-lib/readline/display.c
-       - changes to use the value of `_rl_output_meta_chars' to decide how
-         to output characters with the eighth bit set
-
-documentation/bash.1, lib/readline/doc/rluser.texinfo
-       - documented new readline `output-meta' variable
-
-lib/readline/complete.c
-       - make the replacement of typed text by a completion match be a
-         single undoable event
-
-builtins/type.def
-       - call user_command_matches specifying FS_EXEC_ONLY as the search
-         criteria.  This keeps test from finding directories
-
-bashhist.c
-       - changed maybe_save_shell_history so that if the history has
-         been stifled then the history file is replaced with the current
-         history list
-
-                                  11/29
-                                  -----
-builtins/exec.def
-       - if the shell is restricted, exec is not allowed
-
-cpp-Makefile
-       - more changes for GNU standards: VPATH, libdir, srcdir
-
-jobs.h
-       - remove machine-specific undefining of HAVE_WAIT_H
-
-machines.h
-       - cadmus systems need to #undef HAVE_WAIT_H
-       - hpux_usg and hpux_6 systems need to #undef HAVE_WAIT_H
-       - added a section for `Irix5' to the sgi section
-
-documentation/Makefile
-       - fixed up the install for bash_builtins.1 so that it sets the .so
-         path correctly
-
-shell.c
-       - renamed issock to isnetconn and made its inclusion unconditional
-       - added a check for S_ISCHR for SVR4 and SVR4.2 systems to isnetconn
-
-subst.c
-       - added code so that `history_control=ignoreboth' works
-
-documentation/bash.1, documentation/features.texi
-       - added a description of `ignoreboth' to the text describing
-         `history_control'
-
-                                  11/30
-                                  -----
-input.c
-       - don't print an error message in check_bash_input if the fnctl
-         to dup the file descriptor fails unless the file descriptor
-         is already active
-
-jobs.c, nojobs.c
-       - set bash_input.location.buffered_fd to -1 when setting
-         default_buffered_input to -1 in make_child.  This fixes
-         the `( echo hi 1>&3 ) 3>&1 >/dev/null' spurious error message
-
-shell.c, error.c
-       - removed the automated bug report code
-
-support/bashbug.c
-       - is no more
-
-Makefile
-       - added GNU boilerplate definitions
-
-support/bashbug.sh, support/mkbashbug
-       - new files for a BSD sendbug-like bug reporting shell script
-
-cpp-Makefile
-       - changes to use $(SUPPORT_SRC) instead of $(SDIR) under some
-         circumstances
-       - removed references to support/bashbug.c
-       - new target to make bashbug from $(SUPPORT_SRC)/bashbug.sh using
-         $(SUPPORT_SRC)/mkbashbug
-       - bashbug is now created by default
-       - don't build endian.aux or create bash-endian.h if HAVE_WAIT_H
-         is defined, because it will end up being unused anyway
-
-machines.h
-       - add OPENDIR_NOT_ROBUST to the isc386 description
-
-signames.c
-       - make the signal_names array 2 * NSIG long to hack around HP/UX
-         misfeature
-
-builtins/test.def
-       - fixed the help text for -t to note the the fd argument is not
-         optional
-
-                                  12/1
-                                  ----
-builtins/common.c
-       - changed parse_and_execute so that it no longer unconditionally
-         sets `interactive' to 0.  It is now the responsibility of callers
-         of parse_and_execute to set it how they want, and reset it if
-         necessary
-
-shell.c, subst.c, builtins/source.def
-       - changed the functions that call parse_and_execute to manage the
-         value of `interactive'
-
-shell.c
-       - changed maybe_execute_file so that it takes a second argument
-         saying whether or not to force the value of `interactive' to 0
-       - changed all calls to maybe_execute_file to add a second arg
-
-builtins/fc.def, builtins/exit.def
-       - changed all calls to maybe_execute_file to add the second arg
-         Now background jobs re-run with `fc -s' echo the job number
-
-externs.h
-       - changed the function prototype for maybe_execute_file
-
-                                  12/2
-                                  ----
-execute_cmd.c
-       - rewrote the auto-resume code in execute_simple_command for clarity
-       - added the `substring' value for auto_resume to cause a command that
-         matches a substring of a stopped job to restart that job
-
-documentation/bash.1, documentation/features.texi
-       - added a description of the possible values for `auto_resume' and
-         their effects on the shell's behavior
-
-machines.h
-       - added a generic desription for SVR4 running on the sparc from
-         Ian Stewartson
-
-Makefile
-       - added a command to the bash-Makefile target that will remove
-         bash-Makefile and (hopefully) stop the make if something happens
-         and bash-Makefile is created with zero length
-
-                                  12/3
-                                  ----
-machines.h
-       - add -DOPENDIR_NOT_ROBUST to the SYSDEP_CFLAGS for SCO
-       - if compiling with gcc on SCO, link with -lc_s and -lc in
-         REQUIRED_LIBRARIES
-
-                                  12/6
-                                  ----
-builtins/source.def
-       - new variable `sourcelevel' which is incremented each time `.'
-         is called and decremented before source_builtin returns
-
-variables.c
-       - find_variable should call find_variable with a second parameter
-         of 1 if `builtin_env' is non-null, so it will search it.  This
-         ensures that all builtins inside a script read with `.' with a
-         temporary environment will get the right values
-
-subst.c
-       - fix for get_word_from_string: white space should be removed from
-         the beginning of the string if $IFS is " \t\n"
-
-execute_cmd.c
-       - in `Posix.2 mode', redirections should not perform filename
-         expansion when the shell is not interactive
-
-                                  12/7
-                                  ----
-support/getcppsyms.c
-       - recognize `__i386__'
-
-lib/readline/bind.c
-       - only free and reassign `last_readline_init_file' if it has
-         changed (`filename' points to something different) in
-         rl_read_init_file
-
-builtins/ulimit.def
-       - add a `$DEPENDS_ON !MINIX' line so that this won't be built
-         under MINIX
-
-config.h
-       - Minix machines need JOB_CONTROL undefined
-
-cpp-Makefile
-       - don't define libraries with absolute pathnames; use -llibname
-         instead
-       - make sure MALLOC_LIBRARY is defined even if the Gnu malloc is
-         not being used for the benefit of `LD_HAS_NO_DASH_L'
-
-general.c
-       - use a `TIMEVAL_MISSING' define to decide whether or not to
-         try to print a struct timeval * rather than simply `USG'
-
-lib/readline/parens.c
-       - don't try to include <sys/time.h> unless FD_SET is defined
-
-lib/readline/vi_keymap.c
-       - fix incorrect cast of rl_abort in vi_movement_keymap
-
-signames.c
-       - make sure NSIG is defined
-
-siglist.c
-       - include `trap.h' to pick up definition of NSIG if it's undefined
-
-siglist.h
-       - minix uses _sys_siglist and does not need an external declaration
-         for it
-
-                                  12/8
-                                  ----
-lib/readline/readline.c
-       - add `ks' and `ke' to the termcap attributes that readline retrieves
-
-lib/readline/rltty.c
-       - new function `control_keypad' to enable and disable keypad keys.
-         Some systems need this before the arrow keys will work
-       - call control_keypad to enable and disable the keypad from the
-         terminal prep and deprep code
-
-                                  12/9
-                                  ----
-support/mksysdefs
-       - added code a la trn `Configure' to search a list of include
-         directories for each .h file of interest.  Done by defining a
-         variable containing the code fragement we want to execute and
-         calling `eval' on this string for each file
-
-lib/readline/bind.c
-       - slightly changed the filenames used by rl_read_init_file.  Now
-         the filename used is the first non-null file from this list:
-               1. the filename used for the previous call
-               2. the value of the shell variable `INPUTRC'
-               3. ~/.inputrc
-
-documentation/bash.1
-       - added descriptions of INPUTRC to the shell variables and
-         readline sections
-
-documentation/features.texi
-       - added a description of INPUTRC to the shell variables section
-
-lib/readline/doc/rluser.texi
-       - added description of the INPUTRC environment variable
-       - changed instances of ~/.inputrc to the more generic `init file'
-         or `inputrc file'
-
-lib/readline/complete.c
-       - added #defines for the possible values of `do_replace' rather
-         than relying on magic numbers
-       - if a completion that needs double quotes starts with a tilde,
-         rl_complete_internal now performs tilde expansion before
-         quoting the string, since the shell allows double quotes to
-         inhibit tilde expansion
-
-                                  12/10
-                                  -----
-lib/readline/readline.c
-       - new function to kill the whole line no matter what point is:
-         rl_kill_full_line ()
-
-lib/readline/readline.h
-       - extern declaration for rl_kill_full_line ()
-
-lib/readline/funmap.c
-       - rl_kill_full_line is available as `kill-entire-line'
-
-cpp-Makefile
-       - remove `.machine' when `make clean' run
-
-subst.c, subst.h
-       - made expand_string_leave_quoted static again
-
-                                  12/14
-                                  -----
-shell.c
-       - use HAVE_SOCKETS define to decide whether to include <sys/socket.h>
-         and call getsockname(); defined automatically for non-USG systems
-         if ENOTSOCK is defined
-
-                                  12/15
-                                  -----
-bashline.c, flags.c, flags.h, jobs.c, subst.c, builtins/common.c,
-builtins/cd.def
-       - changed `follow_symbolic_links' to `no_symbolic_links', with an
-         opposite meaning
-
-flags.c, flags.h
-       - new shell option, -P/-o physical set if no_symbolic_links is set
-       - changed a sequence of `if' statements into a switch statement in
-         change_flag
-
-documentation/bash.1, documentation/features.texi
-       - added documentation for the -P/-o physical option
-
-builtins/cd.def
-       - follow_symbolic_links is now declared in flags.c and declared
-         extern here
-
-builtins/set.def
-       - code to set and get the value of -P/-o physical
-       - fixed up the help text and short documentation string
-       - made `set -?' print a usage message
-
-subst.c
-       - made sv_nolinks set the new variable `no_symbolic_links'
-
-                                  12/17
-                                  -----
-machines.h
-       - add -DUSG to HPUX_CFLAGS
-       - hpux 9 does not need -lPW and can use the gnu malloc if gcc
-         is being used
-
-config.h
-       - remove the code that defines USG for HPUX, Xenix, and UNIXPC
-         in favor of putting it into the machines.h entry
-
-                                  12/19
-                                  -----
-flags.h
-       - added prototypes for the extern function declarations from flags.c
-
-*.h
-       - added copyrights to the include files which were missing them
-
-lib/readline/vi_mode.c
-       - rl_vi_yank_nth arg inserted the space in the wrong spot before
-         yanking the last argument
-       - removed the call to rl_vi_insertion_mode because of changes to
-         rl_yank_nth_arg
-
-lib/readline/readline.c
-       - changed rl_yank_nth_arg so that vi mode inserts a space in the
-         right spot
-       - fixed rl_yank_nth_arg so that yanking into an empty line does
-         not corrupt the buffer
-
-lib/readline/search.c
-       - fixed noninc_search so that ^H and RUBOUT call rl_rubout
-         explicitly
-
-bashline.c
-       - fix for operate_and_get_next to make ^O work on the most
-         recent line even if the history is unstifled.  From Seth
-         Robertson.  XXX - may not be right
-
-parse.y
-       - set interactive to 0 before calling parse_and_execute in
-         execute_prompt_command to stop infinite recursion through
-         this function
-
-shell.c
-       - moved the code that executes PROMPT_COMMAND to parse_command
-
-parse.y
-       - removed the code that executes PROMPT_COMMAND from read_token
-         to avoid confusing non-reentrant versions of yacc
-       - made execute_prompt_command global, not static
-
-input.h
-       - new declaration for execute_prompt_command 
-
-jobs.c
-       - made give_terminal_to return -1 if tcsetpgrp fails
-       - initialize_jobs now prints a message if job_control ends up being
-         set to 0
-
-support/mkmachtype
-       - shell script stolen from emacs 19 that attempts to output the
-         `GNU-style' machine type, e.g. sparc-sun-sunos4.1.2.  Named
-         `mkmachtype' because I envision people assigning its output to
-         a MACHTYPE variable
-
-
-                                  12/20
-                                  -----
-execute_cmd.c
-       - if a command is found in the temporary $PATH, don't add it to
-         the hash table
-
-error.c
-       - changed report_error so that the script name is echoed instead
-         of the shell name if the shell is not interactive
-
-                                  12/22
-                                  -----
-machines.h
-       - made the Sun description unconditionally #undef USE_GNU_MALLOC
-         because memory access bugs are legion in libc in SunOS 4.x and 5.x
-
-jobs.c
-       - disabled printing an error message when the tcgetattr in
-         get_tty_state() fails
-
-                                  12/27
-                                  -----
-cpp-Makefile, jobs.h
-       - renamed bash-endian.h to bash_endian.h
-
-machines.h
-       - NeXT machines need to #undef HAVE_DIRENT_H, since it requires
-         ANSI/POSIX defines that make the rest of the compilation fail
-       - SGI irix 5.x machines need -DNO_SBRK_DECL in SYSDEP_CFLAGS
-       - machine descriptions for OSF/1 running on i386 and MIPS machines
-         from Michael Meissner
-
-                                  12/28
-                                  -----
-expr.c
-       - fixed so that blank expressions evaluate to 0 rather than an
-         error ($[    ] or $((    )))
-
-lib/readline/readline.c
-       - new variable `_rl_bell_preference' replacing _rl_prefer_visible_bell
-       - changed ding() to use _rl_bell_preference
-
-lib/readline/rldefs.h
-       - definitions for NO_BELL, AUDIBLE_BELL, and VISIBLE_BELL
-
-lib/readline/bind.c
-       - changed rl_variable_bind to parse the `bell-style' variable and its
-         possible values (`none', `audible', or `visible'), keeping
-         `prefer-visible-bell' for backwards compatibility
-
-documentation/bash.1, lib/readline/doc/rluser.texinfo
-       - added descriptions of the `bell-style' and `expand-tilde'
-         readline variables
-
-general.c
-       - changed set_signal_handler for posix systems to attempt to
-         restart all interrupted system calls execept for SIGALRM
-
-trap.c
-       - changed restore_signal to use set_signal_handler() instead of
-         signal()
-       - added a new function set_signal_ignored to set the SIG_HARD_IGNORE
-         flag for a particular signal
-
-execute_cmd.c
-       - call set_signal_ignored for SIGINT and SIGQUIT in the child if
-         the command is asynchronous after calling restore_original_signals,
-         since restore_original_signals will undo work done by make_child
-         done in a new function setup_async_signals
-
-execute_cmd.h
-       - extern declaration for setup_async_signals
-
-subst.c
-       - call setup_async_signals when making the child for process
-         substitution
-
-jobs.c, nojobs.c
-       - removed code from make_child that sets SIGINT and SIGQUIT to
-         SIG_IGN, since setup_async_signals now does that
-
-shell.c
-       - let throw_to_top_level call longjmp with DISCARD if the shell
-         is an interactive shell, but not yet initialized
-
-                                  12/29
-                                  -----
-config.h
-       - define PROCESS_SUBSTITUTION if HAVE_DEV_FD is defined, even if
-         MKFIFO_MISSING is also defined
-
-execute_cmd.c
-       - close pipes created using /dev/fd for process substitution at
-         the same time as the pipes for conventional piping are closed
-
-subst.c
-       - when the /dev/fd list is initialized, clamp the total number of
-         file descriptors at 256, but make sure there is room enough to
-         store a bit for the fd passed to add_fifo_list
-
-                                  12/30
-                                  -----
-lib/readline/readline.c
-       - change a strncpy() in rl_delete_text to a for loop, since some
-         versions of strncpy can't handle overlapping arguments
-
-lib/readline/chardefs.h
-       - definition for digit_value(x)
-
-lib/readline/history.c
-       - changed calls to sscanf followed by an empty for loop that consumes
-         the digits to a for loop that computes the value as it goes along
-         in get_history_word_specifier()
-       - added `x*' and `x-' history word designators from csh
-       - added new `&' modifier to repeat previous substitution
-       - experimental implementation of `q' modifier to quote substituted
-         words by calling single_quote on the substituted string
-
-lib/readline/history.c, builtins/fc.def
-       - changed a loop using strncmp() to find one string in another for
-         substitution to test the current character against the first
-         character of the pattern before calling strncmp()
-
-documentation/bash.1, lib/readline/doc/hsuser.texinfo
-       - documented the new history word designators
-       - documented new `&' and `q' history modifiers
-
-                                   1/1
-                                   ---
-parse.y
-       - broke the code that parses `( ... )' subshells out into its
-         own grammar production
-
-lib/readline/history.c
-       - rearranged some code to get rid of gotos and make the intent
-         clearer
-       - fixed a bug in history_truncate_file that tried to write to
-         a file opened O_RDONLY
-       - changed a stat-open in history_truncate_file into an open-fstat
-         pair
-       - removed gotos in history_search_internal
-       - changed straight strncmp() calls trying to find history line
-         matches to check the first character before calling strncmp in
-         history_search_internal
-       - changed a call to stat after an open (!) to fstat on the
-         returned file descriptor
-       - cleaned up the code in get_history_event
-       - cleaned up some code in get_history_word_specifier
-       - cleaned up some code and removed extra function calls in
-         history_arg_extract
-       - changed history_arg_extract to malloc enough space for the
-         entire string at one time, instead of doing xrealloc in a
-         loop
-       - cleaned up the code in history_tokenize, removing gotos and
-         other spaghetti constructs
-       - replaced a call to sprintf with assignment statements and a call
-         to strcpy in history_expand
-
-cpp-Makefile
-       - changed the `INDEX' target to a `TAGS' target
-
-lib/readline/emacs_keymap.c
-       - added a default binding for ESC-ESC to rl_complete, like ksh emacs
-         mode editing
-
-                                   1/3
-                                   ---
-machines.h
-       - make sure ISC_POSIX is defined as nothing when using gcc on isc386
-
-parse.y
-       - made token_to_read, current_token, last_read_token,
-         token_before_that, EOF_reached, shell_input_line,
-         shell_input_line_*, token, token_buffer_size all static vars
-       - made prompt_again return immediately if the shell is not
-         currently interactive
-       - made yylex call prompt_again only if there is no token_to_read
-         and the shell is currently interactive
-
-jobs.c
-       - changed the NeXT || alliant define to use RLOGIN_PGRP_BUG
-       - use TERMIOS_LDISC define for systems with line discipline field
-         in struct termios
-
-shell.c
-       - use RLOGIN_PGRP_BUG instead of NeXT to fix machines that get
-         started without a controlling terminal
-
-machines.h
-       - added -DRLOGIN_PGRP_BUG to SYSDEP_CFLAGS for NeXT and alliant
-       - added -DTERMIOS_LDISC to SYSDEP_CFLAGS for Ultrix, Sun OS 4,
-         and aixpc
-
-support/mksysdefs
-       - look for sys/param.h, define HAVE_SYS_PARAM if found
-
-cpp-Makefile
-       - pass -DHAVE_SYS_PARAM via SYSTEM_FLAGS if it's found by mksysdefs
-
-maxpath.h
-       - include <sys/param.h> if HAVE_SYS_PARAM is defined
-
-lib/readline/history.c
-       - got rid of the get_which label in get_history_event
-       - got rid of the event_not_found label in history_expand
-       - new function hist_error, which takes care of printing history
-         expansion errors
-
-                                   1/4
-                                   ---
-lib/readline/history.c
-       - split the actual history expansion code out of history_expand into
-         history_expand_internal
-       - got rid of the do_add and add_char labels in history_expand
-       - history_expand now returns 2 if the `p' modifier was given and the
-         caller should just print the results
-       - new function `quote_breaks' to implement the `x' modifier
-
-bashhist.c
-       - if history expansion fails, make sure the error message is
-         printed in a standard way by calling internal_error
-       - print the results of history_expand and return NULL if
-         history_expand returns 2
-
-                                   1/5
-                                   ---
-lib/readline/history.c
-       - rearranged some code in the `s' and `&' cases of the switch in
-         history_expand_internal, added the GET_SUBST_PATTERN macro
-
-                                   1/6
-                                   ---
-tests/*
-       - cleaned up the directory, made a runnable regression test suite
-
-cpp-Makefile
-       - added a `tests' target that runs all of the tests with a newly-
-         built bash
-
-subst.c
-       - made process substitution work only when unquoted
-
-bashhist.c
-       - new function history_number to return the history number of a
-         command
-
-bashhist.h
-       - extern declaration for history_number
-
-parse.y
-       - changed the `!' and `\!' code in decode_prompt_string to use
-         history_number
-       - replaced calls to sprintf/savestring with calls to itos()
-
-variables.c
-       - new dynamic variable $HISTCMD is current history number (what
-         you get with \! in a prompt string)
-
-documentation/bash.1
-       - description of $HISTCMD
-
-                                   1/7
-                                   ---
-
-execute_cmd.c
-       - new variable stdin_redir, incremented for subshells if stdin has
-         been redirected, saved for children so we don't redirect /dev/null
-         to fd 0 if it has already been the subject of a redirection.  Makes
-         bash more sh-compatible, but I'm not sure it's the right thing.
-       - more changes to file_status for systems with AFS
-
-test.c
-       - changed calls to eaccess to EACCESS (not to be confused with the
-         EACCES error).  EACCESS is defined as access on AFS machines,
-         eaccess on all others
-
-siglist.h
-       - don't declare sys_siglist on NetBSD
-
-                                  1/11
-                                  ----
-lib/readline/history.c
-       - if `&' appears in the rhs of a history substitution, it is
-         replaced with the matched lhs.  A single backslash protects
-         the `&' from lhs interpolation
-       - fixed ADD_CHAR macro to properly terminate the target string
-       - changed GET_SUBST_PATTERN so that a single backslash can
-         quote the substitution delimiter
-       - changed GET_SUBST_PATTERN so that subst_lhs is not changed if
-         the lhs pattern is empty
-       - if the lhs is empty and there is no previous substitution, the
-         last string used in a !?string? search is used
-       - turned the GET_SUBST_PATTERN macro into a real function,
-         get_subst_pattern()
-       - changed get_subst_pattern() so that backslashes quoting the
-         search delimiter are removed
-       - fixed get_history_word_specifier so that x- returns x-$ without
-         the last word
-
-documentation/bash.1, lib/readline/doc/hsuser.texinfo
-       - changes for the new history substitution features
-
-                                  1/13
-                                  ----
-make_cmd.c
-       - new function fixup_async_list() which traverses a command list and
-         makes the last command asynchronous (`&').  This is to fix up a
-         problem with the yacc grammar productions
-
-parse.y
-       - call fixup_async_list if a list is followed by a bare `&' without
-         a second list
-
-builtins/fc.def
-       - fixed a bug in fc_gethnum that caused negative history
-         specifications (< 0) to be off by 1 when indexing against the
-         current history index
-
-lib/readline/funmap.c
-       - kill-entire-line -> kill-whole-line
-       - tilde-expand is now a bindable command that calls rl_tilde_expand
-       - added emacs-editing-mode as a bindable command
-       - added more bindable vi-mode readline commands: vi-redo,
-         vi-tilde-expand 
-
-lib/readline/emacs_keymap.c
-       - M-C-H is now bound to backward-kill-word
-
-lib/readline/vi_keymap.c
-       - `0' is now bound to beginning-of-line in vi-movement-mode
-
-documentation/bash.1, lib/readline/doc/rluser.texinfo
-       - added documentation for some of the new readline functions
-
-test.c
-       - added definitions for whitespace, digit, and digit_value when
-         compiling -DSTANDALONE
-
-                                  1/14
-                                  ----
-make_cmd.c, make_cmd.h, parse.y
-       - fixup_async_list -> connect_async_list
-
-parse.y
-       - have the productions for all async lists call connect_async_list,
-         even when followed by another async list
-       - don't save and restore the buffered stream in buffers[] in
-         push_stream and pop_stream if the default input fd is -1
-         (like command substitution sets it to, for instance)
-
-cpp-Makefile
-       - added $(PURIFY) the final cc line, make PURIFY=purify to build
-         a `purified' bash
-
-builtins/read.def
-       - fixed a memory leak -- `input_string' was not being freed
-
-variables.c
-       - fixed a memory leak in assign_in_env -- free value
-
-subst.c
-       - process substitution and command substitution now call make_child
-         with a null first argument -- no need to save a string for the
-         call; it's never used
-
-                                  1/17
-                                  ----
-lib/readline/{readline.h,complete.c}
-       - renamed rl_symbolic_link_hook to rl_directory_completion_hook,
-         which much more accurately reflects its purpose.  Left a define
-         of the old name there is readline.h
-
-bashline.c
-       - use rl_directory_completion_hook instead of rl_symbolic_link_hook
-       - bash_symbolic_link_hook -> bash_directory_completion_hook
-       - bash_directory_completion_hook is now an `int' returning function
-       - bash_directory_completion_hook now tries to to variable expansion
-         and command and arithmetic substitution if the directory name
-         contains `$' or ``'
-       - fixed a bug in bash_directory_completion_hook which made it
-         remove the trailing slash on a directory name
-       - bash_directory_completion returns 1 if variable expansion is
-         performed, 0 otherwise
-       - when doing bash filename-specific completion, don't do any kind
-         of directory name expansion
-       - removed ``' and `$' from the completer word break characters;
-         they're not word break chars
-
-lib/readline/complete.c
-       - changed semantics for rl_directory_completion_hook -- if a non-zero
-         value is returned, the return value is put into the expanded
-         filename, replacing the directory name that the user typed
-       - changed filename_completion_function to quote a replacement if
-         it contains `$' or ``' in addition to characters appearing in
-         rl_completer_word_break_characters (#ifdef SHELL)
-
-                                  1/18
-                                  ----
-shell.c
-       - take out different code for USG and BSD and mail checking.  The
-         shell always calls remember_mail_dates on startup.
-
-                                  1/19
-                                  ----
-execute_cmd.c
-       - changed executable_file into a simple return statement
-
-support/mksysdefs
-       - look for bison, define HAVE_BISON if found
-
-cpp-Makefile
-       - do not unconditionally define HAVE_BISON, let mksysdefs do
-         the work
-
-                                  1/20
-                                  ----
-machines.h
-       - added -DNO_SBRK_DECL to hpux_8, hpux_9, and Solaris descriptions
-
-lib/malloc/malloc.c
-       - removed the code that defines NO_SBRK_DECL for some machines
-
-cpp-Makefile
-       - removed the definitions of PPROMPT and SPROMPT and their inclusion
-         as defines in CFG_FLAGS
-       - added definitions for man3dir and man3ext and passed them to
-         make install in the documentation directory
-
-config.h
-       - PPROMPT and SPROMPT are now defined here
-
-builtins/mkbuiltins.c
-       - plugged up a number of memory leaks (~35K worth)
-
-documentation/Makefile
-       - made readline.3 and readline.ps standard targets
-       - make install now installs readline.3
-
-documentation/readline.3
-       - new manual page documenting the readline library
-
-general.c
-       - don't define TIMEVAL_MISSING on USG systems if HAVE_TIMEVAL is
-         defined
-
-                                  1/21
-                                  ----
-machines.h
-       - define HAVE_SOCKETS in HPUX_SYSDEP_CFLAGS for hpux_8 and hpux_9
-
-Makefile
-       - add a `tests' target that just runs `make -f bash-Makefile tests'
-
-general.c
-       - include config.h before any other include files so <unistd.h>
-         gets included if present
-
-                                  1/24
-                                  ----
-cpp-Makefile
-       - make `bashbug' by using sed with multiple -e options rather than
-         a separate `mkbashbug' program
-
-                                  1/25
-                                  ----
-machines.h
-       - sgi machines need HAVE_SOCKETS defined to make isnetconn() work
-
-lib/readline/isearch.c
-       - rewrote lots of rl_search_history to eliminate spaghetti and
-         increase speed
-
-lib/readline/history.c
-       - added defines for STREQ and STREQN to clean up the search code
-
-lib/readline/complete.c
-       - compare the first characters of the name and returned value from
-         getpwent when attempting username completion to avoid all those
-         calls to strncmp
-
-                                  1/26
-                                  ----
-lib/readline/readline.h
-       - move definition of VISIBLE_STATS here so all files can see it
-       - extern definitions of rl_history_search_forward() and
-         rl_history_search_backward ()
-
-lib/readline/search.c
-       - implementations of rl_history_search_forward() and
-         rl_history_search_backward (), which search through the history
-         list for lines beginning with the string of characters between
-         the beginning of the line and rl_point (history lines with a
-         common prefix)
-       - added definitions of STREQ and STREQN
-
-lib/readline/funmap.c
-       - added `history-search-forward' and `history-search-backward' as
-         bindable commands (names compatible with tcsh)
-
-lib/readline/complete.c
-       - make stat_char use lstat if S_ISLNK is defined to pick up symbolic
-         links
-       - split some common code out into auxiliary functions: printable_part
-         and print_filename
-       - expand filenames before calling stat_char if visible-stats is
-         active
-
-documentation/bash.1, documentation/readline.3, lib/readline/doc/rluser.texinfo
-       - documented new `history-search-forward' and `history-search-backward'
-         readline commands, by default unbound
-
-error.c
-       - changed get_name to get_name_for_error and made it externally
-         visible
-
-error.h
-       - extern declaration for get_name_for_error
-
-test.c
-       - call get_name_for_error in test_syntax_error if the shell is
-         not interactive
-
-                                  1/27
-                                  ----
-lib/readline/emacs_keymap.c
-       - add M-~ as a binding for rl_tilde_expand, it's more intuitive
-
-lib/readline/bind.c, lib/readline/readline.h
-       - exported rl_invoking_keyseqs_in_map as a public interface
-
-lib/readline/rldefs.h
-       - don't include memalloc.h if PRAGMA_ALLOCA is defined
-
-lib/readline/readline.c, lib/readline/isearch.c, lib/tilde/tilde.c,
-lib/readline/complete.c, lib/readline/search.c
-       - replaced all calls to alloca with xmalloc/free pairs or array
-         declarations
-
-lib/readline/history.c
-       - replaced some calls to alloca
-
-variables.c, subst.c, mailcheck.c, alias.c, parse.y, builtins/cd.def
-       - replaced all calls to alloca with xmalloc/free pairs or array
-         declarations
-
-builtins/source.def
-       - replaced call to alloca with xmalloc/free/unwind_protect
-       - replaced stat/open sequence with open/fstat
-
-                                  1/28
-                                  ----
-lib/readline/history.c
-       - print an error message for an unrecognized history modifier
-         instead of just ignoring it
-       - replaced remaining calls to alloca()
-
-execute_cmd.c
-       - added a #pragma alloca at the head of the file if AIX and
-         RISC6000 are defined and __GNUC__ is not
-
-                                  1/31
-                                  ----
-support/recho.c
-       - now a standard part of the distribution, needed for `make tests'
-
-cpp-Makefile
-       - make sure recho is built before the tests are run
-
-                                   2/1
-                                   ---
-builtins/command.def
-       - If subshell_environment is 1, we've already forked and are in
-         a subshell, so add CMD_NO_FORK to the flags of the command
-         to be executed and see if we can get away without forking
-
-                                   2/9
-                                   ---
-support/mksysdefs
-       - write the name of the maintainer to sysdefs.h surrounded by
-         double quotes
-
-cpp-Makefile
-       - removed the now-unnecessary double quotes around the MAINTAIN_DEFINE
-         variable value
-
-lib/readline/readline.h
-       - new variable rl_attempted_completion_over, set in the completion
-         attempt function to suppress the normal filename completion
-
-lib/readline/complete.c
-       - if rl_attempted_completion_over is set after the program-specific
-         completion function is called, don't do filename completion
-
-general.h
-       - new FREE and STRLEN convenience defines
-
-subst.c
-       - code cleanups, use of FREE and STRLEN
-
-                                  2/10
-                                  ----
-execute_cmd.c, parse.y, jobs.c, variables.c, test.c
-       - changed code to use FREE, STRLEN, other code cleanups
-       - removed, wherever possible, calls to strncmp and strcmp
-
-builtins/set.def
-       - changed the `unset' builtin to use internal_getopt
-
-builtins/set.def, builtins/test.def, builtins/fg_bg.def, builtins/type.def,
-builtins/enable.def, builtins/exec.def, builtins/declare.def,
-builtins/ulimit.def, builtins/cd.def, builtins/fc.def
-       - removed calls to strcmp, strncmp wherever possible, replacing
-         them with incline 
-
-builtins/common.h
-       - new define ISOPTION, to test whether a string s is setting
-         a specific option
-
-builtins/kill.def, builtins/read.def, builtins/trap.def, builtins/umask.def,
-builtins/enable.def, builtins/alias.def, builtins/hash.def
-       - changed to use ISOPTION
-
-builtins/read.def
-       - moved option processing before all of the code that sets up
-         the input stream
-
-                                  2/11
-                                  ----
-Makefile
-       - added `distclean' target to mirror one in cpp-Makefile
-
-                                  2/14
-                                  ----
-documentation/bash.1, documentation/features.texi
-       - noted that `=' was not a valid character for an alias name
-
-                                  2/17
-                                  ----
-builtins/common.c
-       - if parse_and_execute gets an interrupt during execution, make
-         sure that `interactive' is restored to the correct value (the
-         same value as `interactive_shell' before throwing control back
-         to the top level with throw_to_top_level so the shell does
-         not exit in throw_to_top_level
-
-builtins/reserved.def
-       - cleaned up the variables section, removing some and correcting
-         the descriptions
-
-                                  2/18
-                                  ----
-cpp-Makefile
-       - provide alternate defintions for build_builtins_in_dir depending
-         on whether __STDC__ is defined and > 0.  The `stdc' version uses
-         `##' to concatenate tokens
-
-machines.h
-       - new machine description for QNX 4.2 from pt@flard.ocunix.on.ca
-
-jobs.c, nojobs.c
-       - changed some calls to report_error to calls to internal_error
-
-test.c
-       - some systems may not define S_IFMT, so use an #ifdef to work around
-
-print_cmd.c
-       - combined the code for print_word_list and command_print_word_list
-         into an internal function that takes a pointer to a function to
-         use to print the words
-
-variables.c
-       - don't call savestring in bind_variable on the value if it's an
-         empty string
-
-nojobs.c
-       - changed wait_for to call waitpid with -1 for pid value on Posix
-         systems so all processes in a pipeline get reaped at the same
-         time (or at least most of them)
-
-                                  2/21
-                                  ----
-lib/readline/{complete.c,display.c,readline.c,rltty.c,signals.c}
-       - changed _GO32_ to __GO32__
-
-machines.h
-       - SunOS5 needs to add /usr/ccs/lib to the library search path
-         for the right termcap library
-
-                                  2/22
-                                  ----
-shell.c
-       - make sure that a subshell sets sourced_env to 0 after longjmp
-         so that $ENV is sourced by subshells forked to execute scripts
-         without a leading `#!' line
-
-bashhist.c, bashhist.h
-       - make maybe_add_history a global interface -- new function
-         to add a line to the history file depending on the value
-         of history_control
-
-builtins/fc.def
-       - call maybe_add_history in fc_addhist rather than add_history
-
-machines.h
-       - new entry for concurrent machines in att universe from
-         geoffl@vallista.ca.boeing.com (Geoffrey A. Lowney)
-
-                                  2/23
-                                  ----
-general.c, general.h
-       - new function string_to_long, which basically does the same
-         thing as atol(), which I don't believe is universal
-
-builtins/ulimit.def
-       - replaced a call to sscanf with calls to all_digits and
-         string_to_long
-       - non-root users can only raise a resource up to the hard limit,
-         even if they specify `unlimited', so shell_ulimit translates
-         RLIM_INFINITY into limit.rlim_max if euid != 0
-
-                                  2/25
-                                  ----
-shell.c
-       - make the default behavior of bash when invoked with -c command
-         to make the first argument after the command string $0 and the
-         rest $1...$N
-
-documentation/bash.1
-       - document the change in -c behavior
-
-                                   3/2
-                                   ---
-mailcheck.c
-       - made add_mail_file return the index in the list of mail files,
-         so an immediate call to find_mail_file need not be made and
-         we are guaranteed that the index returned is never -1
-       - added the check back in that changes the message to note that
-         *new* mail has arrived -- the test was not redundant after all
-       - fixed an off-by-one error in free_mail_files
-       - replaced an sprintf() in get_mailpaths with two calls to strcpy
-
-general.c
-       - changed getc_with_restart to do local buffering to reduce the
-         number of read(2) system calls
-
-subst.c
-       - changed do_assignment_internal to check for expansion and quoting
-         characters and only call expand_string when something needs
-         expansion, string_quote_removal when quotes appear, and savestring
-         for simple assignment statements
-
-                                   3/3
-                                   ---
-builtins/exit.def, documentation/bash.1
-       - removed `bye' as a synonym for `exit'
-
-shell.h
-       - new exit value: EX_USAGE
-
-builtins/{bind,command,declare,fc,getopts,histctl,history,inlib,jobs,read,
-setattr,trap,ulimit}.def
-       - changed to return EX_USAGE when a usage message is printed
-
-builtins/declare.def
-       - removed the `no_modifiers' code, changed argument name to local_var
-
-command.h, make_cmd.h
-       - declarations for the select command, inside #ifdef SELECT_COMMAND
-
-copy_cmd.c
-       - declarations for copying select commands
-
-dispose_cmd.c
-       - code to dispose of select command structures
-
-execute_cmd.c
-       - code to execute select commands
-
-make_cmd.c
-       - code to construct select command structures
-       - removed `coerce_to_word()'
-
-parse.y
-       - code to parse select commands in the grammar.  The SELECT token is
-         returned by read_token only if SELECT_COMMAND is defined
-
-print_cmd.c
-       - code to print select commands
-
-config.h, config.h.mini
-       - make SELECT_COMMAND the #define that controls whether or not the
-         `select' command is compiled in
-
-documentation.bash,1, documentation/features.texi
-       - documented the `select' command and $PS3
-
-                                   3/4
-                                   ---
-builtins/getopts.def
-       - removed a call to sprintf() in favor of expanding a number manually
-
-builtins/getopt.c
-       - make sure that we set nextchar to NULL when incrementing optind
-         so that it does not end up pointing to stale memory (freed, then
-         later reallocated)
-
-                                   3/7
-                                   ---
-builtins/common.c
-       - fixed parse_and_execute not to be overzealous in marking a command
-         as NO_FORK -- make sure there's nothing left in the string to be
-         executed before doing so
-
-machines.h
-       - change the string check for BSD/386 to __bsdi__
-       - add INT_GROUPS_ARRAY to BSDI, SunOS4, 386bsd, FreeBSD, and NetBSD
-         descriptions
-
-test.c
-       - change to use INT_GROUPS_ARRAY
-
-execute_cmd.c
-       - tightened up the execution loop in execute_for_command and
-         removed a couple of unneeded variables
-
-lib/posixheaders/memalloc.h
-       - make sure to check for sun being defined when checking for sparc;
-         there are ICL DRS6000 machines running SVR4.2 out there that do
-         not have the file
-
-                                   3/8
-                                   ---
-execute_cmd.c
-       - make sure close_fd_bitmap is called before do_redirections, lest
-         the bitmap override some of the redirections
-
-cpp-Makefile
-       - supply an explicit suffix list, so make understands the .def.o
-         suffix rule as such
-
-                                   3/9
-                                   ---
-jobs.h
-       - added extern declarations for rest of global functions in jobs.c
-       - added prototypes
-
-jobs.c
-       - made delete_job, terminate_current_pipeline, kill_current_pipeline,
-         describe_pid, notify_and_cleanup, reap_dead_jobs,
-         initialize_job_signals , without_job_control void functions
-
-                                  3/10
-                                  ----
-execute_cmd.c, execute_cmd.h
-       - moved check_identifier to general.c, general.h
-
-general.c
-       - check_identifier has acquired a second parameter; when set to 1
-         this causes the word to be checked by legal_identifier
-       - for and select commands call check_identifier with a second arg
-         of 1, function names are checked with legal_identifier when in
-         Posix.2 mode
-
-general.h
-       - add second argument to extern declaration of check_identifier
-
-CWRU/POSIX.NOTES
-       - added description of new function name behavior
-
-lib/readline/readline.h
-       - include sys/ioctl.h on FreeBSD and NetBSD
-
-lib/readline/rlconf.h
-       - new file, with readline configuration variables
-       - included in rldefs.h
-
-lib/readline/{readline.c,readline.h,complete.c,display.c}
-       - took configuration defines out and put them into rlconf.h
-
-lib/readline/Makefile
-       - updated dependencies to include rlconf.h
-
-                                  3/14
-                                  ----
-lib/readline/Makefile
-       - remove VI_MODE from the CFLAGS
-
-lib/readline/rlconf.h
-       - made VI_MODE a definable configuration option
-
-lib/readline/vi_mode.c
-       - include rlconf.h before testing whether or not VI_MODE is defined
-
-lib/readline./funmap.c
-       - include `rlconf.h' before `readline.h'
-
-lib/readline/keymaps.c
-       - include `rlconf.h' before `vi_keymap.c' and `keymaps.h'
-
-lib/readline/readline.c, lib/readline/vi_mode.c
-       - rl_vi_set_last -> _rl_vi_reset_last
-       - new function _rl_vi_set_last to set the vi-mode last command
-         information
-       - renamed vi_done_inserting to _rl_vi_done_inserting
-
-lib/readline/vi_mode.c
-       - _rl_vi_last_command, _rl_vi_last_repeat, _rl_vi_last_arg_sign,
-         and _rl_vi_doing_insert are now static
-
-                                  3/15
-                                  ----
-bashline.c
-       - unbind C-M-m in emacs_meta_keymap so people don't accidentally
-         switch into vi editing mode
-
-                                  3/21
-                                  ----
-builtins/cd.def
-       - `pwd' now follows the setting of nolinks/set -o physical; there
-         is an undocumented -P option to get the `real' working directory
-
-                                  3/28
-                                  ----
-make_cmd.c
-       - only follow the command chain to the end of a list in
-         connect_async_list if the list is not being executed in the
-         background as a unit with CMD_WANT_SUBSHELL
-
-support/mksysdefs
-       - removed the define of HAVE_CSH
-       - added an additional check for SVR4 on i[34]86 machines from
-         mkmachtype
-
-lib/readline/vi_mode.c
-       - fix up rl_vi_delete_to so that cw deletes the character under
-         the cursor no matter what, as per Posix.2
-       - any text modifying command that calls rl_vi_insertion_mode needs
-         to explicitly set the `last command' info for `.'
-       - rl_vi_movement_mode() no longer resets the `last command' info
-         so that things like `cw' can be redone with `.'
-
-                                  3/29
-                                  ----
-general.h
-       - a new define MEMMOVE_MISSING to specify to use memcpy in the
-         define for BCOPY
-       - the defines for BCOPY don't need a trailing `;'
-
-machines.h
-       - isc386 needs -DMEMMOVE_MISSING in SYSDEP_CFLAGS
-
-                                  3/30
-                                  ----
-bashline.c
-       - fix to set_saved_history to simplify the code by using 
-         rl_get_previous_history
-
-                                  3/31
-                                  ----
-error.c
-       - change the bug report message 
-
-support/mksysdefs
-       - removed `WHOAMI' junk for setting the `maintainer'
-
-cpp-Makefile
-       - hardcode the maintainer to `bug-bash@prep.ai.mit.edu'
-
-subst.c
-       - call rl_reset_terminal in sv_terminal if interactive_shell
-         is nonzero
-       - split the code that checks whether or not expand_string_unsplit
-         needs to be called from do_assignment_internal into a separate
-         function that takes a function pointer to call as an additional
-         parameter
-
-trap.c
-       - make sure that set_signal_ignored also sets original_signals[sig]
-         to SIG_IGN
-
-bashline.c
-       - `{' is not a word break character for the completion functions
-
-                                   4/2
-                                   ---
-[first beta distribution of bash-1.14.0]
-
-                                   4/5
-                                   ---
-builtins/cd.def
-       - fixed a problem with CDPATH processing (used `dirlen' instead of
-         `pathlen')
-
-subst.c
-       - make sure that get_word_from_string updates `stringp' even if
-         it's nothing but separators
-
-builtins/read.def
-       - after the call to get_word_from_string, set *e to 0 only if t
-         is not null and a word was actually returned
-
-machines.h
-       - remove the NO_SBRK_DECL declaration for sgi machines from all
-         but Irix 5.x machines
-       - sgi needs __STDC__ defined if __EXTENSIONS__ is defined
-
-lib/posixheaders/stdc.h
-       - moved the #if defined (__P) inside the check for __STDC__, so
-         the other things get defined even if __P is already defined
-       - don't redefine const, inline, etc. if `const' is already defined
-
-cpp-Makefile
-       - add dependencies on stdc.h
-       - pass -DHAVE_SYS_STREAM_H through to builds in subdirs
-
-support/mksysdefs
-       - redirect error messages from subshell attempting to find and invoke
-         bison
-       - look for <sys/stream.h>, define HAVE_SYS_STREAM_H if found
-
-lib/readline/rldefs.h
-       - include <sys/stream.h> only of HAVE_SYS_STREAM_H is defined
-
-externs.h, print_cmd.c
-       - made print_command and print_simple_command void functions
-
-builtins/common.c, builtins/common.h
-       - builtin_error now a void function
-       - dispose_saved_dollar_vars now a void function
-       - bad_option now a void function
-       - initialize_shell_builtins now a void function
-
-variables.c
-       - initialize_shell_variables now a void function
-       - adjust_shell_level now a void function
-       - delete_all_variables now a void function
-
-jobs.c
-       - inserted some returns into `int'-valued functions lacking them
-
-hash.c
-       - initialize_hash_table now static void
-
-externs.h
-       - added declarations for functions from mailcheck.c
-
-                                   4/6
-                                   ---
-lib/readline/readline.c
-       - added missing function arguments
-
-
-lib/readline/complete.c
-       - get_y_or_n now accepts space for `y' and rubout/del for `n' to
-         be more emacs-like
-
-lib/readline/history.c
-       - fixed an off-by-one error in history_expand_internal: checking
-         the wrong character for the history event or word specifier
-
-                                   4/7
-                                   ---
-lib/readline/complete.c
-       - make sure `max' is intialized to 0 when displaying the possible
-         completions, even if we've done `goto display_matches'
-
-lib/posixheaders/stdc.h
-       - if __STDC__ is defined but we're not using gcc (__GNUC__ not
-         defined), make `inline' expand to nothing
-
-lib/readline/isearch.c
-       - use STREQN to match the search string against the history line,
-         since we're not interested in exact matches, only matches of
-         the search string
-
-                                   4/8
-                                   ---
-machines.h
-       - description for a sparc running netbsd
-
-                                  4/11
-                                  ----
-lib/readline/vi_mode.c
-       - make sure we're starting an undo group when we implicitly
-         enter insertion mode after a command like c[motion], so
-         we can get to the characters that were inserted
-       - new variable: vi_continued_command, set to 1 if we enter
-         insert mode implicitly
-
-                                  4/12
-                                  ----
-machines.h
-       - generic entry for MIPS machines running SVR4, SVR4.2
-       - changed sony entry to handle M_MACHINE already being
-         defined
-
-lib/malloclib/malloc.c
-       - fixes for malloc stats, from kboyce@bnr.ca
-
-                                  4/13
-                                  ----
-machines.h
-       - changed the u370/USGr4 description: added -DNO_SBRK_DECL to
-         SYSDEP_CFLAGS
-
-lib/readline/readline.c
-       - add a call to rl_set_keymap_from_edit_mode after reading the
-         inputrc file in readline_initialize_everything to override
-         the effect of any `set keymap' assignments in the inputrc
-         file
-
-support/mksysdefs
-       - added a check for MIPS RISCos machines
-       - set the value of `dirlist' to /bsd43/usr/include if we're
-         building on a RISCos machine
-
-lib/readline/bind.c
-       - skip leading whitespace in lines read from the inputrc file
-         in rl_read_init_file
-       - call rl_set_keymap_from_edit mode after reading the inputrc
-         file in rl_re_read_init_file
-
-                                  4/14
-                                  ----
-documentation/Makefile
-       - change bash_builtins.1 to builtins.1 in the recipe for `install'
-       - remove the dependency on texindex from features.dvi
-
-builtins/kill.def
-       - remove explicit inclusion of <sys/types.h>
-
-machines.h
-       - Xenix requires -DMEMMOVE_MISSING
-       - Xenix 2.3 requires -DLD_HAS_NO_DASH_L
-       - added #undef HAVE_RESOURCE to xenix descriptions just to be sure
-
-cpp-Makefile
-       - make sure texindex is built before trying to build the documentation
-
-lib/doc-support/texindex.c
-       - fixes for portability and to fit into the bash configuration
-         scheme
-
-support/mksysdefs
-       - fixed the Xenix section to make sure that sysdefs.h defines `i386'
-         for machines.h -- apparently the default xenix cc does not
-         predefine it
-
-                                  4/16
-                                  ----
-shell.c
-       - regularized parsing of `-c' option so it can be bundled with other
-         options
-       - if bash is started with a `-o' without an argument, list the long
-         options with list_minus_o_opts
-
-builtins/set.def
-       - renamed `list_long_opts' to `list_minus_o_opts', made it global
-
-builtins/common.c
-       - builtin_error now calls get_name_for_error if this_command_name
-         is null or empty
-
-hash.c, hash.h
-       - made hash utility functions able to cope with being passed a
-         null hash table
-
-                                  4/18
-                                  ----
-lib/readline/history.c
-       - changes to history_expand, history_expand_internal to allow
-         modifiers to be used with `!#'
-       - changes to get_history_event so that only `?' or newline can
-         terminate a substring search string.  This is more csh-like.
-
-builtins/common.c
-       - get_working_directory now uses get_name_for_error when for_whom
-         is null and it needs to print an error message
-
-shell.c
-       - set no_rc and no_profile in shell_reinitialize to clarify our
-         intent about not running the .bashrc for shell scripts
-
-                                  4/19
-                                  ----
-lib/readline/vi_mode.c
-       - change rl_vi_possible_completions to fix an inadvertent infinite
-         loop in code that attempts to move to the end of the current word
-
-                                  4/21
-                                  ----
-lib/readline/vi_mode.c
-       - comment out rl_vi_possible_completions -- it's unused
-
-lib/readline/vi_keymap.c
-       - comment out vi_escape_keymap declaration -- it's unused
-
-parse.y, subst.c
-       - shells running in `posix mode' do not perform process substitution
-
-                                  4/22
-                                  ----
-support/getcppsyms
-       - don't process and define __GNUC__ at all
-       - only test for and possibly define __STDC__ if __GNUC__ is not
-         defined (not using gcc)
-
-                                  4/25
-                                  ----
-machines.h
-       - Make sure SunOS 4.x has INT_GROUPS_ARRAY defined
-
-                                  4/26
-                                  ----
-lib/readline/readline.c
-       - make sure screenwidth is not set to 0
-
-                                  4/27
-                                  ----
-Makefile
-       - changed the text printed by the `.notified' target to refer to
-         `bashbug'
-
-[1.14.1 announced and made available for anonymous FTP]
-
-                                  4/28
-                                  ----
-builtins/read.def
-       - unset the variables passed to `read' as arguments when EOF is
-         read from stdin (sh, Posix.2 compatibility)
-
-machines.h
-       - add HAVE_STRERROR to the solaris machine description
-
-print_cmd.c
-       - made declaration of printf depend on __GNUC__ being defined, since
-         only gcc seems to need it
-
-cpp-Makefile
-       - renamed DEBUG_FLAGS to CDEBUGFLAGS
-
-                                  4/29
-                                  ----
-builtins/getopt.c
-       - fix for core dump problems
-
-parse.y, make_cmd.c, make_cmd.h, execute_cmd.c
-       - changed make_redirection to take a `REDIRECTEE', which is a union,
-         as its second argument, to avoid int/long/pointer problems
-       - changed all calls to make_redirction to pass a correctuly-
-         initialized REDIRECTEE argument
-
-                                   5/1
-                                   ---
-general.h
-       - Linux needs a slightly different declaration for gethostname()
-
-nojobs.c
-       - fix to arguments to stop_pipeline
-
-                                   5/3
-                                   ---
-alias.c, bashline.c, variables.c
-       - added casts to eliminate compiler warnings
-
-general.h
-       - removed __P type information from functions taking a GENERIC_LIST *,
-         since that is never what is passed
-       - changed prototype to show that xrealloc takes a `void *'
-
-general.c
-       - xrealloc takes a `void *' as its first argument
-
-                                   5/4
-                                   ---
-support/mksysdefs
-       - changed test -r to test -f when looking for ranlib
-
-lib/readline/readline.c
-       - cleaned up some casts before xmalloc/xrealloc calls
-       - make sure the arrow keys are bound into the vi movement keymap in
-         init_terminal_io
-       - set the keymap explicitly in init_terminal_io before trying to
-         bind the arrow keys
-
-lib/readline/vi_keymap.c
-       - bind ESC in vi_movement_keymap to 0 rather than rl_abort, since
-         the rl_abort binding keeps _rl_bind_if_unbound from working
-
-shell.c
-       - look in $PATH for an input file given on the command line only
-         if that file is not an `absolute program' (contains no slashes)
-
-                                   5/5
-                                   ---
-machines.h
-       - changed HPUX_SYSDEP_CFLAGS to HPUX_CFLAGS
-
-general.h, general.c, copy_cmd.c, make_cmd.c, print_cmd.c, parse.y, subst.c
-       - BCOPY -> FASTCOPY because some machines define or undef BCOPY in
-         system header files
-
-longest_sig.c, support/pagesize.{c,sh}
-       - removed from distribution, moved to CWRU/misc
-
-lib/readline/parens.c, lib/readline/bind.c
-       - don't compile in all of the paren-matching code if PAREN_MATCHING
-         is not defined in rlconf.h
-
-                                   5/9
-                                   ---
-lib/readline/rldefs.h
-       - new #define WINSIZE_IN_IOCTL_H, set for machines that need
-         to include <sys/ioctl.h> to get TIOCGWINSZ and related definitions
-       - use `dirent' instead of `direct', define `dirent' as `direct' if
-         HAVE_DIRENT_H is not defined
-
-lib/readline/signals.c, lib/readline/readline.c
-       - changed to include <sys/ioctl.h> if WINSIZE_IN_IOCTL_H defined
-
-lib/readline/readline.c
-       - strip high bit in rl_getc if __GO32__ is defined
-
-lib/readline/complete.c
-       - use `struct dirent' rather than `struct direct' in
-         filename_completion_function
-
-lib/readline/bind.c
-       - make sure that "" is not passed to open as the name of the inputrc
-         file
-
-general.c
-       - hpux_9 needs #undef HAVE_GETDTABLESIZE, just like hpux_8, on hppa
-
-builtins/times.def
-       - Posix.1 systems need to default to using `struct tms' and the
-         output of `times'
-
-jobs.c
-       - don't redefine _POSIX_SOURCE on sun systems if already defined
-
-parse.y
-       - changed a couple of calls to reverse_list to use the REVERSE_LIST
-         macro instead
-
-newversion.c
-       - now adds the `build version' as part of `SCCSVERSION' in the same
-         format as the shell prints the version string
-
-                                  5/12
-                                  ----
-builtins/psize.sh
-       - if /tmp/pipesize is an empty file, default by defining PIPESIZE
-         to be 512.  An empty file indicates that `psize.aux' did not
-         succeed for some reason
-
-                                  5/13
-                                  ----
-machines.h
-       - dynix/ptx needs -DHAVE_SOCKETS added to SYSDEP_CFLAGS
-
-bashline.c
-       - changed some calls to strncmp to use STREQN
-
-                                  5/15
-                                  ----
-print_cmd.c
-       - if the delimiter to a here document is supposed to be quoted,
-         print it single-quoted
-       - make if statements and while/until statements print similarly,
-         with the then/do on the same line as the first word, separated
-         from the command list by a semicolon
-
-make_cmd.c
-       - reverse the order of patterns in the case statement pattern
-         list in make_pattern_list, so it's printed in the same way
-         it was defined
-
-Makefile
-       - make sure that references to cpp-Makefile and ansi-Makefile
-         are prefixed with $(srcdir) or use CPP_MAKEFILE or ANSI_MAKEFILE
-         respectively
-       - make sure that srcdir is passed from Makefile to bash-Makefile
-         when making `all'
-
-support/mkdirs
-       - new program, clone of `mkdir -p'
-
-cpp-Makefile
-       - before running a make in a subdirectory, call `mkdirs' to ensure
-         that that subdirectory exists
-
-                                  5/16
-                                  ----
-newversion.c
-       - added a `-dir' option to specify a directory prefix, like $(srcdir)
-
-                                  5/17
-                                  ----
-builtins/mkbuiltins.c
-       - if the .def filename begins with a slash, don't prepend the name
-         of the `error directory' when printing error messages or writing
-         line number information to a generated c source file
-
-config.h
-       - don't include memalloc.h if BUILDING_MAKEFILE is defined
-
-lib/malloc/Makefile
-       - skeleton Makefile to make this directory more like other
-         library directories
-
-Makefile, cpp-Makefile, builtins/Makefile, lib/*/Makefile
-       - changes to make bash buildable in a directory without the source
-         present by running `make srcdir=xxx'
-
-support/srcdir
-       - new program, used to print the full path of the source directory;
-         it echoes the output of `pwd' if $1 is `.'
-
-                                  5/18
-                                  ----
-cpp-Makefile
-       - CFLAGS -> CCFLAGS, CDEBUGFLAGS -> CFLAGS to obey the GNU standard
-         (which does not consider the possibility that other information
-         besides debugging could conceivably be passed to cc)
-
-general.h
-       - don't prototype gethostname() unless we're defining our own version
-         in general.c
-
-lib/readline/history.c
-       - fix hist_error to allocate and return a new string with the
-         error message; removed the `ret' argument
-
-                                  5/19
-                                  ----
-subst.c
-       - new function char_is_quoted(s, i) returns 1 if character at
-         position i in s is quoted
-
-bashline.c
-       - removed `\' from rl_completer_word_break_characters
-       - make sure that a command separator character is not quoted in
-         attempt_shell_completion by calling char_is_quoted before calling
-         command_word_completion_function
-       - fixed a problem with detection of command separator characters
-         in attempt_shell_completion
-
-lib/readline/complete.c
-       - set found_quote if a backslash is found in the string in
-         rl_complete_internal
-       - if compiled for the shell, call char_is_quoted to find out
-         whether a character in rl_line_buffer is quoted when deciding
-         where to break a word for the completer
-
-                                  5/23
-                                  ----
-machines.h
-       - made sure all definitions of M_OS were quoted
-
-lib/doc-support/Makefile
-       - more surgery to use ${topdir} and ${srcdir}
-
-documentation/bash.1
-       - clarify that redirections may precede only simple commands
-
-support/fixlinks
-       - new script to make multiple copies of files links or symlinks
-         to a single master copy
-
-support/SYMLINKS
-       - name -> target symlink map for support/fixlinks
-
-support/fixlib
-       - modification of fixdist to move lib to ../lib and clone the files
-         in there like using lndir
-
-filecntl.h
-       - moved to lib/posixheaders, replaced with symlink
-
-support/getcppsyms.c
-       - removed support for outputting -D__STDC__; it's rarely right
-
-cpp-Makefile
-       - build_builtins_in_dir(directory, makefile) --> build_builtins(target)
-         to get rid of the need to know how cpp does token concatenation
-
-nojobs.c
-       - changed the printing of the pid for asynchronous jobs to be the
-         same as sh (no brackets)
-       - took a useless loop out of wait_for_background_pids
-
-                                  5/24
-                                  ----
-
-cpp-Makefile
-       - major surgery to replace #define with make variable assignments --
-         now cpp is used only for inclusion and conditionals (and shorthand)
-
-machines.h
-       - new entry for Lynx 2.1
-
-builtins/declare.def
-       - make sure that the name in command name=value is a legal variable
-         name (affects typeset/declare, export, readonly)
-
-                                  5/26
-                                  ----
-machines.h
-       - make sure a 386/486 running Solaris2 is not misidentified as a
-         Sun 386i
-       - make sure a 486 running NeXT OS is identified as a `NeXT-i386'
-
-                                  5/27
-                                  ----
-builtins/enable.def
-       - fixed an off-by-one error in option parsing
-       - improved option parsing to be Posix compliant (`--'), bad options
-
-Makefile
-       - call /bin/sh to run support/mksysdefs and create sysdefs.h, since
-         it's a shell script
-       - ditto for $(CPPMAGIC)
-
-cpp-Makefile
-       - newversion.aux does not need to be linked against the math
-         library
-
-                                  5/30
-                                  ----
-machines.h
-       - set M_OS to `NeXTstep' for NeXT and i386 machines running NeXT OS
-
-[1.14.2 beta release made available for FTP]
-
-                                  5/31
-                                  ----
-siglist.h
-       - don't define `strsignal' on SunOS5; it has its own
-
-builtins/setattr.def
-       - change set_or_show_attributes to check for legal variable names
diff --git a/CWRU/old-changelogs/CWRU.chlog.v11 b/CWRU/old-changelogs/CWRU.chlog.v11
deleted file mode 100644 (file)
index 163247e..0000000
+++ /dev/null
@@ -1,8400 +0,0 @@
-                                   6/2
-                                   ---
-lib/readline/readline.c
-       - fixed an off-by-one error in the kill ring reallocation code
-         in rl_kill_text
-
-Makefile
-       - replaced instances of /bin/sh with $(SHELL)
-
-Makefile, cpp-Makefile, documentation/Makefile
-       - added a working `uninstall' target
-
-[1.14.0 FCS release made available for FTP]
-
-                                   6/3
-                                   ---
-README
-       - added note about building with gcc, same as in Makefile
-
-documentation/Makefile
-       - some versions of make don't understand `$*' in a regular recipe;
-         replace with features.dvi in the recipe for features.ps
-
-                                   6/4
-                                   ---
-subst.c
-       - fix up the calls to string_extract_double_quoted and 
-         string_extract_single_quoted in char_is_quoted so the initial
-         value of the index is *after* the opening quote character
-       - make sure we only return 1 from char_is_quoted if the index
-         into the string after a call to string_extract_double_quoted or
-         string_extract_single_quoted is *greater than* `eindex'
-
-lib/readline/complete.c
-       - change the order and sense of the quoting tests in
-         rl_complete_internal so that the expensive char_is_quoted
-         is only called if `scan' actually is a word break character
-
-shell.c
-       - fixed a typo in the test for a restricted shell
-
-builtins/exec.def
-       - need to include flags.h
-
-                                   6/6
-                                   ---
-make_cmd.c
-       - make sure that we don't try to walk down a null command tree
-         in connect_async_list (tickled by `(command &) &')
-       - if a command has the CMD_WANT_SUBSHELL bit set in its flags,
-         don't even try to walk the command tree and move the `&';
-         just connect the command with a null command using `&'
-
-execute_cmd.c
-       - make sure we don't try to reference a command struct without
-         first checking it (case '&')
-
-                                   6/7
-                                   ---
-machines.h
-       - fix a typo in the NeXT/i386 description; change the NeXT description
-         to #define HAVE_RESOURCE if not already defined rather than putting
-         -DHAVE_RESOURCE into the SYSDEP_CFLAGS
-
-                                   6/9
-                                   ---
-Makefile
-       - make sure all of the rules that reinvoke `make' have the
-         `-f bash-Makefile' before the assignment statements; some
-         versions of make like it that way
-
-variables.c
-       - make sure that `interactive' is set to 0 before evaluating the
-         string containing an exported function obtained from the
-         environment, so that it does not try to execute PROMPT_COMMAND
-         (this may not be the best fix)
-
-                                  6/13
-                                  ----
-documentation/Makefile
-       - make sure all of the directories exist before trying to install
-         doc files into them
-
-lib/readline/history.c
-       - add a missing O_TRUNC to the open call for writing in
-         history_truncate_file
-
-trap.c
-       - run_interrupt_trap should only try to run the trap command if
-         the value is not IMPOSSIBLE_TRAP_HANDLER
-
-Makefile
-       - add `realclean'
-
-lib/readline/complete.c
-       - do the same kind of double-quoting a replacement string if the
-         user supplies the opening double quote as we would if we were
-         adding both quotes ourselves
-
-variables.c
-       - fixed the variable initialization so that history_control/HISTCONTROL
-         can be inherited from a parent shell
-
-INSTALL, README, cpp-Makefile, documentation/bash.1, documentation/readline.3
-       - ai.mit.edu -> prep.ai.mit.edu
-
-shell.c
-       - fixed a problem with setting no_line_editing to the result of the
-         check for running inside emacs, thereby losing any value
-         initialized by the `-nolineediting' flag
-
-cpp-Makefile
-       - `make distclean' will now remove the `installed-bash' link
-
-print_cmd.c
-       - fixed a problem with undefined variables when HAVE_VARARGS_H is
-         not defined
-
-                                  6/14
-                                  ----
-lib/readline/history.c
-       - fixed an error in the csh history expansion code so that the
-         `-y' word designator now expands to `0-y' rather than `1-y'
-
-lib/readline/isearch.c
-       - changed an absolute check for a character falling within the
-         ASCII 32-126 range (printable chars) with checks for CTRL_P
-         and META_CHAR and a check against the value RUBOUT
-       - changed a `break' to a `continue' so that the first non-matching
-         character in the search string does not cause the search to
-         end abruptly
-       - initialize prev_line_found to 0 at the top of rl_search_history
-         to avoid duplicate history lines being saved across searches
-
-lib/readline/rltty.c
-       - consolidated repeated code for setting special characters into
-         `SET_SPECIAL' defines
-
-lib/readline/readline.c
-       - include <sys/ioctl.h> if VSTATUS is defined
-       - add bindable command rl_tty_status (unbound by default)
-
-lib/readline/funmap.c
-       - assign bindable command name `tty-status' to rl_tty_status
-
-INSTALL
-       - add note about compiling with gcc, same text as README
-
-lib/readline/display.c
-       - many changes and tweaks to make redisplay work better when the
-         prompt has invisible characters.  These changes are non-optimal
-         in that the prompt is redrawn more than it needs to be, but
-         things are a hell of a lot better than they were
-
-                                  6/15
-                                  ----
-documentation/Makefile
-       - make a variable NROFF that people can set to `groff -Tascii' if
-         they don't have real nroff
-       - changed the suffix rules to use $<
-
-support/bashbug.sh
-       - if rmail doesn't exist or fails, save the bug report in
-         ~/dead.bashbug
-
-execute_cmd.c
-       - in setup_async_signals, only ignore SIGINT and SIGQUIT if job
-         control is not active.  If it is active and the job is restarted,
-         SIGINT remains ignored, and the now-foregrounded job is not
-         interruptible
-
-subst.c
-       - fixed up a problem with char_is_quoted that caused backslash-
-         escaped characters to cause incorrect results
-
-tests/run-dollars, tests/dollar-at.sh, tests/dollar-star.sh
-       - since the error messages produced by `cat' vary, changed `cat'
-         to `recho' and updated the correct answers file
-
-machines.h
-       - fixes to CRAY_STACKSEG_END definitions for different versions of
-         Unicos on the YMP (from Bill Jones)
-       - Motorola SVR4 machines have getcwd() and should not undef
-         HAVE_GETCWD
-       - on hpux 9.x, don't try to link with -lPW if compiling with gcc
-         (for alloca)
-
-parse.y
-       - an ugly fix for a compiler problem with structure assignment on
-         the cray
-
-                                  6/16
-                                  ----
-builtins/wait.def
-       - replaced a call to sscanf with a validity check using all_digits()
-         and a call to atoi, since a pid_t is not necessarily an int, and
-         the sscanf clobbered the stack frame on systems where it is shorter
-         than an int (e.g., SCO)
-
-lib/readline/display.c
-       - since META_CHAR and the other macros only work with unsigned
-         chars, make rl_character_len convert its argument to an unsigned
-         char before testing it
-
-documentation/Makefile
-       - use $(INSTALL_DATA) instead of $(CP) to install the man pages and
-         info files
-
-cpp-Makefile
-       - use INSTALL_PROGRAM and INSTALL_DATA to install binaries and
-         documentation; pass both values to installs in subdirectories
-
-                                  6/18
-                                  ----
-builtins/ulimit.def
-       - compensate for systems which define RLIMIT_OFILE instead of
-         RLIMIT_NOFILE, or don't provide such a compatibility define
-         themselves
-
-shell.c
-       - make maybe_execute_file check for directories and print an
-         appropriate error message, since it's doing an fstat anyway
-
-support/mksysdefs
-       - added support for a `-s srcdir' option so it can find
-         cpp-Makefile if ansi-Makefile is to be created
-
-Makefile
-       - call mksysdefs with -s $(srcdir)
-
-jobs.c
-       - add the magic #undef lines to avoid redefinition warnings on
-         SunOS 4 only
-
-                                  6/20
-                                  ----
-cpp-Makefile
-       - install `bashbug' with `make install'
-
-trap.c
-       - make sure that `interactive' is set to 0 when running trap
-         commands
-
-builtins/umask.c
-       - fixed typo in usage error message
-
-subst.c
-       - fix process_substitute to set subshell_environment
-
-jobs.c, nojobs.c
-       - only mess with the terminal settings for an interactive shell
-         that is not in a subshell environment
-
-                                  6/21
-                                  ----
-lib/readline/history.h
-       - add extern declaration of history_get
-
-builtins/fc.def
-       - make history replacement when using `r' or `fc -s' obey the
-         setting of HISTCONTROL
-
-general.c
-       - in canonicalize_pathname, preserve a double // at the start
-         of an absolute pathname, since that means something special
-         for the network directory system
-
-README, INSTALL
-       - updated information about submitting bug reports
-
-lib/readline/vi_mode.c, lib/readline/isearch.c
-       - make sure unistd.h is included before rldefs.h, if
-         HAVE_UNISTD_H is defined
-
-                                  6/24
-                                  ----
-lib/readline/complete.c
-       - add `#' to the list of characters which cause a completed filename
-         to be quoted
-
-execute_cmd.c
-       - be more careful about closing pipe file descriptors in do_piping;
-         don't want to have `dup2(i, i); close(i);' problem
-
-lib/readline/{keymaps,readline}.h
-       - include local copies of include files if READLINE_LIBRARY is
-         defined, otherwise include the `official, installed' versions
-         using #include <readline/xxx.h>
-
-lib/readline/*.c
-       - define READLINE_LIBRARY before including any files
-       - include only `local' copies of include files using #include "xxx.h"
-         rather than #include <readline/xxx.h>
-
-                                  6/26
-                                  ----
-execute_cmd.c
-       - check for clobbering the bash input stream before closing a file
-         descriptor due to an r_close_this redirection
-
-lib/readline/history.c
-       - made history_expand inhibit history expansion if the history
-         expansion char is set to 0
-
-lib/readline/chardefs.h
-       - moved savestring() definition to rldefs.h
-       - changed lowercase_p, uppercase_p, to_lower, to_upper defines to
-         use <ctype.h> macros rather than assume ASCII
-
-lib/readline/bind.c, general.c, general.h
-       - use strcasecmp, strncasecmp instead of str[n]icmp if
-         HAVE_STRCASECMP is defined
-
-cpp-Makefile
-       - pass -DHAVE_STRCASECMP to builds in the libraries, primarily
-         readline
-
-machines.h
-       - add HAVE_STRCASECMP to the entries for BSD/386, NetBSD, FreeBSD,
-         and 4.4 BSD
-
-builtins/hash.def
-       - add a fourth parameter to remember_filename, the initial value
-         of times_found (0 if we're just looking it up for `hash', 1
-         for the command execution code)
-
-execute_cmd.c
-       - call remember_filename with an initial value of 1 for times_found
-
-builtins/wait.def
-       - handle a null argument with an error message
-
-builtins/common.c
-       - parse_and_execute now takes a third parameter: the value for
-         `interactive' while it is executing commands
-
-bashline.c, jobs.c, parse.y, shell.c, subst.c, trap.c, variables.c
-       - set the new third argument to parse_and_execute appropriately
-
-builtins/eval.def, builtins/fc.def, builtins/source.def
-       - set the new third argument to parse_and_execute appropriately
-
-builtins/help.def
-       - changed a call to strnicmp to strncmp when trying to find what
-         to give help on; it seems more correct
-
-                                  6/27
-                                  ----
-machines.h
-       - cleaned up the SunOS section so it no longer relies on
-         HAVE_SHARED_LIBS being defined; it uses SunOS4 and SunOS5
-         instead
-
-support/mksysdefs
-       - define SYSDEF to be SunOS4 or SunOS5 depending on the output
-         of uname rather than looking for ld.so
-
-                                  6/29
-                                  ----
-machines.h
-       - minor change to the ardent titan machine description
-       - move the ardent and stardent descriptions before the
-         mips riscos description
-
-print_cmd.c
-       - ardent machines also need the extern declaration for printf
-
-make_cmd.c
-       - connect_async_list should do its work only if the lists to be
-         backgrounded are connected with `;'.  This makes `;' bind tighter
-         than `&', so only the last job in the list is backgrounded.  All
-         other lists should have the entire thing put in the background
-
-parse.y
-       - added a function `print_prompt' to take care of displaying the
-         prompt string if readline is not being used.  This fixes problems
-         with the prompt being displayed before the status of completed
-         jobs is printed
-
-                                  6/30
-                                  ----
-builtins/fg_bg.def
-       - `fg' and `bg' now print error messages if invoked when job control
-         is disabled
-
-lib/readline/rltty.c
-       - if not compiled into the shell, make get_tty_settings get and set
-         the window size.  This noop stops the process if it is started in
-         the background
-
-lib/readline/readline.c
-       - provide a function version of savestring, if not being compiled
-         into the shell, since the macro has been removed from the
-         `public' header files
-
-lib/readline/readline.h
-       - provide all extern function declarations without checking whether
-         VI_MODE or PAREN_MATCHING are defined.  It does not hurt to define
-         them if they are not used and not in the library, and other
-         applications using readline can't tell whether or not VI_MODE was
-         defined when the library was compiled anyway
-
-                                   7/1
-                                   ---
-machines.h
-       - add #undef HAVE_DIRENT_H to the ardent titan description
-
-                                   7/2
-                                   ---
-lib/readline/chardefs.h
-       - removed META_P define, renamed CTRL_P to CTRL_CHAR
-
-lib/readline/bind.c, lib/readline/isearch.c
-       - changed instances of CTRL_P to CTRL_CHAR
-
-lib/readline/search.c
-       - include <unistd.h> before rldefs.h, if HAVE_UNISTD_H is defined
-
-lib/readline/readline.c
-       - declare PC, UP, and BC as extern rather than `local' to the
-         readline library
-
-                                   7/5
-                                   ---
-bashline.c
-       - implement command word completion inside of command substitution
-         with a new function: `command_subst_completion_function'
-
-subst.c
-       - new function to help with command subst completion: unclosed_pair
-
-lib/readline/complete.c
-       - new variable rl_filename_quoting_desired, which can be set to 0
-         to inhibit the quoting of filenames after completion
-
-lib/readline/readline.h
-       - declare rl_filename_completion_desired and
-         rl_filename_quoting_desired
-
-builtins/bind.def
-       - don't save the old value of rl_outstream before initializing
-         readline -- it saves garbage values and screws up readline
-
-parse.y
-       - don't have private state telling whether or not readline has
-         been initialized -- use bash_readline_initialized like other
-         functions in bashline.c
-
-lib/readline/readline.c
-       - make the default 8-bit behavior be based on whether LC_CTYPE is
-         defined and its value (accept iso-8859-1 or iso_8859_1)
-
-                                   7/6
-                                   ---
-variables.c
-       - fix up the declaration of getenv() for convex machines
-
-                                   7/7
-                                   ---
-lib/readline/readline.c
-       - fixed up typos in the declaration of `savestring'
-
-lib/readline/history.c
-       - fixed an off-by-one error in the ADD_CHAR macro which caused one
-         extra character to be overwritten, causing the gnu malloc to abort
-         when that one character was at the end of an allocated block
-       - changed the ADD_STRING macro to avoid some unnecessary xreallocs
-
-lib/readline/display.c
-       - fixed a problem with move_cursor_relative -- function now returns
-         immediately if it has nothing to do
-       - fixed another problem with displaying prompts with invisible chars
-
-lib/readline/chardefs.h
-       - fixed the CTRL macro to be right (agree with the BSD kernel, for
-         example)
-
-cpp-Makefile
-       - fixed typo in the `install' recipe
-
-                                   7/8
-                                   ---
-support/srcdir
-       - fixed to handle srcdir when it begins with ./ or ../ to handle
-         $(srcdir) being a relative path better
-
-cpp-Makefile
-       - changed some include paths to $(BUILTIN_ABSSRC) when building in
-         `builtins' to handle $(srcdir) being a relative path
-       - change the `chmod' on bashbug to turn on read and execute for all
-       - added a couple of definitions to make it easier for a later
-         `configure' program
-
-support/mksysdefs
-       - added a -i option to specify an alternate set of directories to
-         search for include files
-
-lib/readline/bind.c
-       - in rl_read_init_file, when skipping whitespace at the start of
-         the line, decrement `i' so that we don't jump past the start
-         of the next line
-
-machines.h
-       - SCOv4 has a `robust' opendir that checks that you're actually
-         opening a directory
-
-                                  7/11
-                                  ----
-lib/readline/complete.c
-       - make sure a word break character is unquoted before using it to
-         separate out the current word for completing
-
-machines.h
-       - new machine description: NetBSD on motorola m68k machines like
-         the hp300
-       - undef HAVE_GETWD in the generic svr4 machine description, like
-         other svr4 descriptions
-
-lib/readline/rltty.c
-       - make sure to fflush (rl_outstream) after toggling the setting
-         of the keypad and meta key
-
-portbash/libc.sh
-       - add a test for OPENDIR_NOT_ROBUST
-
-support/getcppsyms.c
-       - output __svr4__ if we find __uxps__ (this makes the Fujitsu port of
-         SVR4 to the sparc build OK)
-
-                                  7/12
-                                  ----
-lib/readline/display.c
-       - more display-related fixes when the prompt has invisible chars;
-         this time for screen updates when moving between screen lines
-
-lib/readline/readline.c, lib/readline/display.c
-       - changes to make readline work with terminals that have auto-wrap
-         from Per Bothner (new function _rl_update_final, term_xn changes,
-         some efficiency speedups, new function space_to_eol)
-
-                                  7/13
-                                  ----
-lib/readline/display.c
-       - after moving up screen lines using term_up in _rl_move_vert, if
-         the new screen line is 0, _rl_last_c_pos needs to be adjusted
-         to take invisible characters into account.  This was the source
-         of many bugs
-
-                                  
-                                  7/14
-                                  ----
-documentation/Makefile
-       - change instances of `groff' to `${GROFF}', GROFF is set to
-         `groff' by default
-
-general.c, variables.c
-       - moved `qsort_string_compare' from variables.c to general.c
-
-general.h, variables.h
-       - moved declaration of `qsort_string_compare' from variables.h
-         to general.h
-
-alias.c, lib/readline/funmap.c
-       - moved qsort auxiliary functions after their use and added
-         forward declarations to avoid warnings from ANSI C compilers
-
-memalloc.h
-       - hpux_9 needs alloca declared as `extern void *' if __STDC__
-         is defined
-
-support/mksysdefs
-       - removed HAVE_SHARED_LIBS entirely
-       - make a call to /bin/uname -X for SCO machines to avoid running
-         a different uname from the $PATH
-
-machines.h
-       - new descriptions: Intel i860 running SVR4, Tahoe running 4.3 BSD
-       - changed descriptions: Mips/RiscOS, DG AViiON, unknown machine
-
-jobs.c
-       - changes to how the shell handles foreground jobs dying of SIGINT:
-               an interactive shell using job control will no longer
-               act as if it received a SIGINT if the foreground job
-               dies from a SIGINT
-
-               a non-interactive shell or shell without job control tries
-               to differentiate between SIGINTs it has seen (in
-               wait_sigint_handler) and a foreground job dying of a SIGINT
-               not sent from the keyboard, and runs the normal SIGINT code
-               only in the former case
-
-                                  7/15
-                                  ----
-support/mksysdefs
-       - check for ${UNAME}${RELEASE} expanding to `SunOS4*' or `SunOS5*'
-         to set SYSDEF to SunOS4 or SunOS5, respectively.  Apparently
-         this does not work for Solbourne
-
-                                  7/18
-                                  ----
-
-lib/readline/rltty.c
-       - if output is being flushed on termios systems, loop until the
-         FLUSHO bit is no longer set in the termios struct
-
-support/mksysdefs
-       - added a -A flag to force creation of ansi-Makefile
-
-machines.h
-       - new entry for Tandem machines running SVR3
-
-                                  7/19
-                                  ----
-lib/readline/rldefs.h
-       - include <termcap.h> if HAVE_TERMCAP_H is defined
-       - use <termio.h> stuff if HAVE_TERMIO_H is defined and _POSIX_VERSION
-         is not defined
-
-lib/readline/rldefs.h, lib/readline/history.c
-       - include "config.h" if HAVE_CONFIG_H is defined
-
-lib/readline/{rldefs.h,signals.c,readline.c}
-       - WINSIZE_IN_IOCTL_H -> GWINSZ_IN_SYS_IOCTL for compatibility with
-         other GNU programs
-
-lib/readline/doc/Makefile
-       - fixed up to create the readline and history manuals in dvi and
-         ps format
-
-lib/readline/Makefile
-       - changes inspired by the standalone readline-2.0 distribution
-
-                                  7/20
-                                  ----
-lib/readline/history.c
-       - new function, history_is_stifled (), returns history_stifled
-       - set history_state flags member in the history state functions
-
-lib/readline/history.h
-       - reorganized the function declarations, added missing declarations
-       - history_stifled is no longer exported by the library
-       - added a `flags' member to the HISTORY_STATE structure
-
-bashline.c
-       - use history_is_stifled () instead of history_stifled
-
-lib/readline/readline.c, lib/readline/vi_mode.c
-       - filled in correct argument declarations for functions called via
-         keymaps (count, key)
-
-lib/readline/complete.c
-       - efficiency improvement for compare_strings
-
-                                  7/21
-                                  ----
-examples/dirfuncs
-       - new directory functions from ksh book, contributed by
-         Ken Konecki (kenk@wfg.com)
-
-machines.h
-       - hpux_8 and hpux_9 should both #undef HAVE_ALLOCA unless gcc is
-         being used
-
-                                  7/22
-                                  ----
-bashline.c
-       - fixed up command_word_completion_function so that filenames with
-         leading tildes are completed correctly
-
-                                  7/26
-                                  ----
-builtins/read.def
-       - if -r not given, make sure CTLESC is removed from input string
-         when reading \<newline>
-
-lib/readline/readline.c
-       - new function bind_arrow_keys, which binds vt100/ansi arrow key
-         escape sequences after reading the termcap definition and the
-         inputrc file
-       - new function rl_yank_last_arg, which does what insert-last-arg
-         does in bash
-
-lib/readline/emacs_keymap.c
-       - remove default bindings to rl_arrow_keys for M-[ and M-O
-       - rl_yank_last_arg is now bound to `M-.' and `M-_' in
-         emacs_meta_keymap
-
-subst.c
-       - when performing process substitution on systems with /dev/fd,
-         make sure the child clears the slot in dev_fd_list it gets
-         from its parent so the file descriptor does not get closed
-         inappropriately if reallocated by, e.g., pipe(2)
-
-bashline.c
-       - removed insert_last_arg and the calls to bind in to `M-.' and `M-_'.
-         `insert-last-argument' is now bound to rl_yank_last_arg for
-         backwards compatibility
-
-lib/readline/funmap.c
-       - `yank-last-arg' is now a named command for rl_yank_last_arg
-
-
-documentation/bash.1, documentation/readline.3
-       - add description of yank-last-arg as one of the readline user
-         commands
-
-lib/readline/doc/rluser.texinfo
-       - added description of yank-last-arg
-
-builtins/getopts.def
-       - fixed a typo in the int-to-string code computing the value to set
-         OPTIND to: had '\0' instead of '0'
-       - made getopts handle the case where there are more than 9 dollar
-         variables (where rest_of_args is non-null) correctly
-
-                                  7/28
-                                  ----
-lib/readline/display.c
-       - fixes to the display code for single-line-display in the presence
-         of prompts containing invisible characters
-
-lib/readline/readline.c
-       - if we are using horizontal scrolling and we have term_xn, decrement
-         the screenwidth by 1, since we won't be doing any line wrapping
-
-                                  7/31
-                                  ----
-jobs.c
-       - new variable `freeze_jobs_list' to set when changes to the jobs
-         list or status of jobs in the list (other than calling something
-         like `jobs -n') are undesirable.  This is set when execuing traps
-         on SIGCHLD
-
-                                   8/1
-                                   ---
-subst.c
-       - check that `~' is unquoted before performing tilde expansion in
-         an assignment statement
-
-                                   8/3
-                                   ---
-bracecomp.c
-       - keep brace completion from dumping core if there is only one
-         match
-
-lib/readline/chardefs.h
-       - add a define for digit_p, which returns the value of isdigit()
-
-lib/readline/readline.c
-       - added function equivalents for uppercase_p, lowercase_p, to_upper,
-         to_lower, pure_alphabetic, digit_p, and digit_value
-       - replaced calls to numeric () with calls to digit_p, removed
-         definition of numeric ()
-
-lib/readline/history.c
-       - digit -> digit_p
-
-lib/readline/vi_mode.c
-       - replaced uses of the `isletter' define to use pure_alphabetic
-         from chartypes.h
-       - replaced uses of `numeric' with calls to digit_p
-       - added do...while(0) to `exchange' define
-
-                                   
-                                   8/4
-                                   ---
-execute_cmd.c
-       - make sure execute_function saves and restores the current loop
-         count with unwind_protect_int
-
-documentation/features.texi
-       - change the `Shell Command Line Options' section to `Invoking
-         Bash' to be closer to the GNU coding standards
-
-                                   8/5
-                                   ---
-builtins/read.def
-       - fixed up a memory leak and made behavior correct when no
-         variables given and backslash escaped at least one input char
-       - if we added CTLESC anywhere while reading the input string,
-         make sure we call dequote_string on each word of the input
-         before calling bind_variable with that string
-
-                                   8/6
-                                   ---
-lib/readline/readline.h
-       - removed definition of rl_show_star -- the variable no longer
-         exists
-
-lib/readline/readline.h, lib/readline/history.h
-       - reorganized to follow texinfo manual structure
-
-lib/readline/bind.c
-       - rl_function_dumper is now static
-       - rl_list_funmap names does not take any arguments
-
-builtins/bind.def
-       - rl_list_funmap names does not take any arguments
-
-lib/readline/readline.c, lib/readline/signals.c
-       - rl_init_argument ->_rl_init_argument
-
-lib/readline/rltty.c
-       - remove declaration and references to output_was_flushed
-
-support/getcppsyms.c
-       - if __uxps__ is defined, define __uxps__ and __svr4__
-
-                                   8/9
-                                   ---
-support/mkdist
-       - added a -r option to set the `root name' of the distribution
-         (e.g., `bash' or `readline')
-
-                                  8/10
-                                  ----
-input.c
-       - if check_bash_input sees that default_buffered_input is about
-         to be the target of a redirection, but the buffered input stream
-         is not the current input stream (e.g. as the result of an
-         `eval' while in a script, change default_buffered_input to a
-         new fd and use a new variable `bash_input_fd_changed' to note
-         the change
-
-parse.y
-       - if pop_stream sees that default_buffered_input has changed while
-         a buffered stream was on the save stack (because
-         bash_input_fd_changed is non-zero), then make the popped stream
-         and the corresponding buffer use the new fd
-
-test.c
-       - fixed an off-by-one error in test_stat when testing /dev/fd/n.
-
-cpp-Makefile
-       - add -I$(incdir) to CPPFLAGS
-       - add `incdir = $(prefix)/include' assignment
-
-                                  8/11
-                                  ----
-lib/readline/signals.c
-       - changed some calls to signal () to call rl_set_sighandler()
-       - call _rl_redisplay_after_sigwinch from the sigwinch handler
-         to do better redisplay of wrapped command lines and multi-line
-         prompts
-
-builtins/suspend.def
-       - changed some calls to signal () to call set_signal_handler()
-
-lib/readline/*.c
-       - include config.h before anything else if HAVE_CONFIG_H is defined
-
-lib/readline/readline.c
-       - renamed rl_set_mark to _rl_set_mark_at_pos
-       - call _rl_vi_initialize_line from rl_initialize if the current
-         editing mode is vi mode
-       - only output a term_cr in crlf if term_cr is non-null
-
-lib/readline/readline.h
-       - added declarations for rl_vi_set_mark and rl_vi_goto_mark
-
-lib/readline/readline.c, lib/readline/readline.h
-       - added a new bindable command to set the mark, rl_set_mark
-
-lib/readline/funmap.c
-       - new bindable function with name `set-mark', bound to rl_set_mark
-       - new bindable vi-mode functions with names `vi-set-mark' and
-         `vi-goto-mark'
-
-documentation/{bash.1,readline.3}, lib/readline/doc/rluser.texinfo
-       - added documentation for `set-mark' (unbound)
-
-lib/readline/vi_mode.c
-       - new vi-command mode commands to save marks (the vi `m' command)
-         and go to saved marks (the ``' command)
-       - new function _rl_vi_initialize_line called from rl_initialize
-         to set up the line state in vi mode.  Right now this just resets
-         all the marks
-
-lib/readline/vi_keymap.c
-       - new vi command-mode bindings to set the mark (`m') and to go to
-         a saved mark (``')
-
-documentation/readline.3
-       - added vi-set-mark and vi-goto-mark to list of key bindings for
-         vi command mode
-
-lib/readline/{readline.c,display.c}
-       - renamed term_xn to _rl_term_autowrap
-
-lib/readline/display.c
-       - new function _rl_redisplay_after_sigwinch to encapsulate the
-         necessary redisplay code after a SIGWINCH is received
-
-variables.c
-       - only call find_user_command on the shell name in shell_initialize
-         if shell_name is not an absolute program name
-       - call canonicalize_pathname on the full shell pathname after
-         calling make_absolute on it if the shell name starts with a `.'
-
-siglist.h
-       - FreeBSD does not need a definition of sys_siglist[]
-
-                                  8/12
-                                  ----
-lib/readline/rltty.c
-       - don't try to use FLUSHO unless FLUSHO is defined
-
-cpp-Makefile
-       - make sure to pass $(CC) to the make in the lib/malloc subdirectory
-
-lib/readline/readline.c
-       - don't declare PC, UP, and BC as extern; it causes too many problems
-
-                                  8/13
-                                  ----
-machines.h
-       - add -DNO_SBRK_DECL to SYSDEP_CFLAGS for SVR4.2 on i386
-
-support/mksysdefs
-       - new variable UNAME_S for the output of `uname -s'
-       - if uname -s does not output the same thing as uname, and uname -s
-         outputs UNIX_SV, then set UNAME to UNIX_SV.  Some versions of i386
-         SVR4.2 make `uname' equivalent to `uname -n'
-
-lib/readline/memalloc.h
-       - removed from the library; not needed since readline does not use
-         alloca
-
-lib/readline/{history.c,isearch.c,search.c,rldefs.h}, lib/tilde/tilde.c
-       - no longer include memalloc.h
-
-lib/readline/Makefile
-       - remove dependencies on memalloc.h
-
-lib/readline/signals.c
-       - overhauled signal handling based on ideas from Bruno Haible
-         (haible@ma2s2.mathematik.uni-karlsruhe.de) so that readline
-         saves and restores the signal mask and flags on Posix systems
-       - don't include fcntl.h, sys/file.h, errno.h, or stdlib.h
-       - ignore SIGALRM during rl_signal_handler like SIGINT until the
-         old handler is installed, on non-Posix or non-BSD systems
-       - new define SIGHANDLER_RETURN, dependent on the value of
-         VOID_SIGHANDLER
-       - use RETSIGTYPE instead of `sighandler' as the signal handler
-         return type; it's the name autoconf uses.  If not defined,
-         set up from VOID_SIGHANDLER
-
-lib/readline/rltty.c
-       - call control_meta_key and control_keypad from rl_deprep_terminal
-         before putting the terminal back into ICANON mode to avoid
-         messing up the tty driver
-
-                                  8/15
-                                  ----
-cpp-Makefile
-       - changes so that fewer -Idir arguments are passed to the make
-         in ./builtins
-
-                                  8/16
-                                  ----
-lib/readline/bind.c
-       - use KEYMAP_SIZE instead of 128 in rl_invoking_keyseqs_in_map
-
-lib/readline/complete.c
-       - qsort the array of matches omitting matches[0], which must stay
-         in place no matter what, even if strcmp doesn't compare unsigned
-         chars correctly
-       - some fixes to the loop that prints the list of completions
-
-lib/readline/keymaps.c
-       - run the loop up to 127 when creating a new keymap in rl_make_keymap
-
-input.h, general.h, lib/readline/keymaps.h, lib/readline/tilde.h
-       - use _FUNCTION_DEF instead of __FUNCTION_DEF
-
-lib/readline/parens.c
-       - include "config.h" if HAVE_CONFIG_H is defined
-       - include <sys/select.h> if HAVE_SYS_SELECT_H is defined
-       - use HAVE_SELECT instead of FD_SET as the `configuring define';
-         define HAVE_SELECT if it is not already defined but FD_SET is
-
-lib/readline/readline.c, lib/readline/rltty.c
-       - the __GO32__ include file is <pc.h>
-
-lib/tilde/tilde.c
-       - rewrote tilde_expand_word, eliminated static u_name array in
-         favor of using xmalloc
-
-lib/tilde/tilde.h
-       - use single leading underscore for file inclusion guard
-
-lib/readline/vi_mode.c
-       - use KEYMAP_SIZE rather than a literal 127 as the loop limit when
-         creating the overstrike keymap
-
-support/install.sh
-       - new file, from the make-3.71 distribution
-
-                                  8/17
-                                  ----
-lib/readline/complete.c, lib/readline/readline.h
-       - new variable, rl_basic_quote_characters, used to see
-         if a word break character was a quoting character, so we can
-         do appropriate quoting after the completion
-
-lib/readline/parens.c
-       - use rl_basic_quote_characters when trying to find a matching
-         open paren
-
-lib/readline/doc/rltech.texinfo
-       - description of rl_basic_quote_characters
-
-                                  8/18
-                                  ----
-newversion.c
-       - renamed to support/mkversion.c, which builds to mkversion
-
-cpp-Makefile
-       - changed to use support/mkversion
-       - removed instances of $< except in suffix rules -- some makes don't
-         handle those right
-
-lib/readline/rldefs.h
-       - make sure to #undef HAVE_DIRENT_H on NeXT machines
-
-                                  
-                                  8/19
-                                  ----
-lib/readline/readline.h
-       - removed some duplicate function declarations
-
-trap.h
-       - define DEBUG_TRAP as NSIG for the last slot in trap_list
-       - define EXIT_TRAP as 0
-       - declare trap_list as array of unknown size, since this is just a
-         header file
-
-trap.c
-       - extend trap_list and sigmodes to NSIG+1
-       - initialize DEBUG_TRAP to do nothing; changes to functions to handle
-         DEBUG_TRAP
-       - let decode_signal return OK if NSIG is given, even though this will
-         vary between systems, for DEBUG_TRAP
-       - make reset_signal_handlers and restore_original_signals loop from
-         1 to NSIG, not 0 to NSIG
-       - change GET_ORIGINAL_SIGNAL to try to get the original signal handler
-         only if `sig' is less than NSIG
-       - restore_default_signal just frees the trap string for both EXIT_TRAP
-         and DEBUG_TRAP
-       - run_debug_trap: new function to run traps on DEBUG
-       - free_trap_command: new function to free a trap string if it is
-         really a command and not one of the special trap values
-       - if a SIGINT trap resets the SIGINT trap string, free the old string
-       - new function: set_debug_trap(char *), which will reset the DEBUG
-         trap string, suitable for calling from an unwind-protect handler
-
-signames.c
-       - arrange things so that signal_names[NSIG] == "DEBUG"
-
-builtins/trap.def
-       - make sure traps on DEBUG are printed
-
-execute_cmd.c
-       - call run_debug_trap at the end of the `cm_simple' case in
-         execute_command_internal
-       - change execute_function so that traps on DEBUG do not propagate
-         into the function
-
-documentation/bash.1, documentation/features.texi
-       - documented the new DEBUG trap
-
-                                  8/20
-                                  ----
-shell.c, config.h
-       - made the name of the restricted shell configurable in config.h;
-         the option is RESTRICTED_SHELL_NAME
-
-shell.c
-       - if the shell is invoked as `sh', enter Posix.2 mode after running
-         /etc/profile and ~/.profile
-
-builtins/read.def
-       - added a -p option for a prompt string, which is displayed before
-         trying to read anything
-
-documentation/bash.1
-       - description of `read -p'
-       - description of new -r and -s options to `jobs' 
-
-documentation/features.texi
-       - description of new -r and -s options to `jobs' 
-
-jobs.c
-       - new functions: list_running_jobs, list_stopped_jobs
-       - list_jobs -> list_all_jobs
-       - new function `print_job' to do the work for all of the list*jobs
-         functions
-       - list_one_job type now void, calls print_job to do the work
-
-jobs.h
-       - new declarations for list_running_jobs, list_stopped_jobs
-       - list_one_job now void
-       - list_jobs -> list_all_jobs
-
-builtins/jobs.def
-       - new options: -r to print only running jobs, -s to print only
-         stopped jobs
-
-                                  8/22
-                                  ----
-lib/readline/readline.c
-       - don't try to expand a null prompt string
-
-subst.c
-       - remove special handling of hostname_completion_file and
-         history_control; HOSTFILE and HISTCONTROL are the acceptable
-         names
-       - new function sv_histignore; call if HISTIGNORE variable is
-         assigned to
-
-bashhist.c
-       - new functions and declarations for handling HISTIGNORE variable
-         and its specifications for command lines to ignore
-       - change maybe_add_history to call history_should_ignore if the
-         HISTCONTROL tests are passed
-
-documentation/bash.1, documentation/features.texi
-       - removed mention of history_control and hostname_completion_file
-       - added description of HISTIGNORE
-
-                                  8/23
-                                  ----
-array.c, array.h
-       - promoted to the shell mainline code; the `array' subdir is now
-         gone
-
-variables.h
-       - include `array.h' for the ARRAY typedef
-
-variables.c
-       - changes to assignment() to handle array assignments a[x]=b
-       - split off the creation of new variables into a new function:
-         make_new_variable
-       - split off the construction of variable values for assignments and
-         bindings into a new function: make_variable_value
-       - new function: bind_array_variable, to handle the addition of
-         new array variables and indices
-
-subst.c
-       - changes to do_assignment_internal to handle a[x]=b:
-               parse the subscript out of the name and call evalexp() on it
-               call bind_array_variable to do the value assignment
-       - change the printing of assignment statements when -x is in effect
-         to before the variable binding is attempted, so any error messages
-         look better
-       - new functions for referencing indexed arrays and to find the length
-         of arrays or array indices
-
-                                  8/24
-                                  ----
-expr.c
-       - fixed up error reporting to use get_name_for_error if not executing
-         a builtin
-
-subst.c
-       - everywhere evalexp() is called, use maybe_expand_string to expand
-         the expression (calls expand_string if necessary)
-
-subst.h
-       - extern declarations for array convenience functions exported to the
-         rest of the shell
-
-variables.c
-       - more new convenience array functions: make_new_array_variable and
-         convert_var_to_array
-
-builtins/declare.def
-       - additions to declare_internal to add a -a flag which makes array
-         variables, and the requisite semantics (declare +a does not work,
-         declare -a name=value does not work, etc.)
-       - code to support the ksh-like declare a[] syntax to make array
-         variables
-
-builtins/setattr.def
-       - made set_or_show_attributes understand array variables and `-a'
-
-builtins/set.def
-       - changes to make `unset name' work, where name is an array variable
-       - changes to make `unset name[xxx]' work
-
-                                  8/25
-                                  ----
-
-lib/readline/readline.c
-       - make sure meta characters are added to a keyboard macro as
-         ESC-char if we are converting meta chars to ascii
-       - change rl_unix_word_rubout to handle repeat counts
-       - move the check of LC_CTYPE from rl_initialize to
-         readline_initialize_everything, where it should have been
-         all along
-
-error.c
-       - make sure <sys/types.h> is included before <fcntl.h>
-
-machines.h
-       - new entry for Bull DPX2
-
-lib/tilde/tilde.c
-       - include <sys/types.h> before <pwd.h>
-
-variables.c
-       - PS1 and PS2 are no longer non-unsettable
-
-                                  8/26
-                                  ----
-variables.c
-       - PPID, UID, and EUID, since they are read-only, need not appear on
-         the `non-unsettable' list
-       - PATH and IFS now have the `nounset' attribute set rather than use
-         a separate `non-unsettable' list
-       - the non-unsettable list and non_unsettable() are gone
-
-variables.h
-       - new define `non_unsettable_p' to test nounset attribute
-
-builtins/set.def
-       - `unset' now uses non_unsettable_p to tell whether a variable can
-         be unset even if it's not readonly
-
-builtins/read.def
-       - read -a arrayname will read a list of values from stdin and assign
-         them to the array `arrayname', splitting on " \t\n" (honoring
-         backslash quoting if -r is not supplied)
-
-builtins/declare.def
-       - print values of arrays when `display -a' is invoked
-
-builtins/exit.def
-       - remove references to `bye'
-
-                                  8/28
-                                  ----
-lib/readline/rltty.c
-       - removed calls to control_keypad; they cause problems on some
-         machines and should not really be performed by an application
-
-cpp-Makefile
-       - support for optionally linking array.o into the shell
-
-lib/glob/glob.c
-       - when returning an error after glob_filename on the directory name
-         returns an error result, make sure to free `result'.  This fixes
-         a memory leak for names passed to glob_filename which contain
-         globbing characters before the first `/' but do not match any
-         existing files
-
-                                  8/29
-                                  ----
-execute_cmd.c
-       - the `for' and `select' commands should expand their word lists
-         using expand_words_no_vars
-
-command.h, execute_cmd.c, general.c, make_cmd.c, print_cmd.c, subst.c,parse.y
-       - changed the `dollar_present', `quoted', and `assignment' members
-         of WORD_DESC to a single flags word
-
-                                  8/30
-                                  ----
-variables.c
-       - make get_string_value return array[0] if called with a variable
-         that is an array
-
-                                  8/31
-                                  ----
-lib/readline/display.c
-       - don't take the value of _rl_term_autowrap into account when
-         computing which screen line the cursor should be on; it screws
-         up wrapping on terminals without the `xn' capability
-
-lib/readline/examples/rltest.c
-       - new file, test code moved here from readline.c
-
-documentation/features.texi, lib/readline/doc/hsuser.texinfo
-       - fixed up printing of some of the shell options and the history
-         commands and modifiers
-
-subst.c
-       - make sure $name, where `name' is an array variable, returns
-         ${name[0]}
-
-variables.c
-       - convert a variable to an array even if index 0 is being assigned to,
-         instead of leaving it a `normal' variable
-
-                                   9/1
-                                   ---
-
-builtins/setattr.def
-       - make sure that array variables printed by `declare' single-quote
-         the value after the `=' so the statement can be reused as input
-
-variables.c
-       - make sure array variables can be exported (name=(assignments)), and
-         that the export code works.  The code is commented out because of
-         the possible confusion between an array and a regular string that
-         looks like an array assignment string.
-
-                                   9/2
-                                   ---
-variables.c
-       - make sure there is an executable file with the same name as
-         `shell' name in the current directory before assigning it to
-         $BASH at startup.  If there is not, just make $BASH the login
-         shell name
-
-                                   9/3
-                                   ---
-parse.y
-       - removed a reduction from the `list0' production that could cause
-         statements which require semicolons to be allowed without error
-         (like before a `}' in a group command)
-
-lib/readline/display.c
-       - new functions: _rl_save_prompt and _rl_restore_prompt to save and
-         restore prompt invisible character info
-       - if the redisplay code encounters a line shorter than the old one
-          and containing invisible characters, make sure that the cursor is
-         at the end of the new text before calling clear_to_eol
-       - new variable last_invisible containing the index in the prompt
-         string of the last invisible character.  We only have to redraw
-         the prompt string of _rl_last_c_pos is < last_invisible
-       - new function _rl_make_prompt_for_search to take care of setting
-         up the prompt string for a non-incremental search when the prompt
-         contains invisible characters
-       - fix so that a prompt string with invisible characters is not
-         redrawn each time through update_line (don't tputs term_cr unless
-         the cursor is before the last invisible character in the prompt
-         and will be moving past the last invisible char of the prompt
-
-lib/readline/isearch.c
-       - call _rl_save_prompt and _rl_restore_prompt when changing the prompt
-         to do i-search
-
-                                   9/4
-                                   ---
-lib/readline/readline.c
-       - doing_an_undo -> _rl_doing_an_undo for use by the vi-mode code
-       - rewrote rl_do_undo to reformat and eliminate a clumsy goto
-       - new split the add-to-kill-ring code off into a separate function,
-         _rl_copy_to_kill_ring
-       - added a new bindable function rl_copy_region_as_kill
-       - added a new bindable function rl_kill_region
-       - moved _rl_char_search_internal to here from vi_mode.c
-       - new bindable function rl_char_search
-
-lib/readline/vi_mode.c
-       - made `.' work for the `cw' and `[Ss]' commands, which implicitly
-         put the editor into insertion mode after they run
-       - split rl_vi_char_search code that actually searches for a character
-         into a new function, _rl_char_search_internal
-
-lib/readline/emacs_keymap.c
-       - bind M-= to possible-completions for ksh compatibility
-       - bind M-* to insert-completions
-       - bind C-x C-x to exchange-point-and-mark
-       - bind C-] to character-search
-       - bind C-@ to set-mark
-
-lib/readline/funmap.c
-       - new bindable function names: exchange-point-and-mark, kill-region,
-         copy-region-as-kill, character-search
-
-lib/readline/readline.h
-       - declare rl_exchange_point_and_mark, rl_copy_region_to_kill,
-         rl_kill_region, and rl_char_search externally
-
-documentation/{bash.1,readline.3}, lib/readline/doc/rluser.texinfo
-       - document new exchange-point-and-mark bindable command
-       - documented M-* default emacs-mode binding to insert-completions
-       - documented new copy-region-as-kill and kill-region commands
-       - documented new character search emacs-mode command
-       - documented new binding for set-mark
-
-lib/readline/rldefs.h
-       - moved values for `dir' when searching for characters in the line
-         from vi_mode.c to here
-
-                                   9/6
-                                   ---
-general.c
-       - new function ansicstr, which decodes ANSI-C backslash-escaped
-         characters (with the addition of \e and \E to mean escape) and
-         returns a new string
-
-subst.c
-       - new expansion $'...' which translates ANSI-C backslash escapes
-         in `...' and expands to the result
-
-builtins/echo.def
-       - ifdefs for ANSI-C for \a and \v rather than just expanding to
-         literal ASCII values
-
-documentation/bash.1
-       - documented new $'...' expansion
-
-                                   9/7
-                                   ---
-builtins/enable.def
-       - fixed up the help text
-       - added a -s flag to restrict operation to Posix.2 `special' builtins
-       - removed -all option; -a is the way to do it now
-       - converted to use the builtin getopt
-
-builtins/common.c
-       - changed builtin_address_internal to return a pointer to a
-         struct builtin, which makes it much more useful.  Changed
-         find_shell_builtin and builtin_address accordingly
-       - new function find_special_builtin, which returns special builtins
-         ((flags & SPECIAL_BUILTIN) != 0)
-
-execute_cmd.c
-       - in Posix.2 mode, find special builtins before shell functions
-         when performing command lookup
-       - in find_user_command_internal, return NULL if there is no $PATH
-       - in Posix.2 mode, failure of a special builtin causes a non-
-         interactive shell to exit
-
-variables.c
-       - allow $PATH to be unset
-
-                                   9/8
-                                   ---
-input.h
-       - added a new `input type': st_stdin, for use when using readline,
-         since readline is not properly a string
-
-parse.y
-       - surgery on the grammar:
-               o added new `compound_list' production: a list that can end
-                 without a newline, `;' or `&' (used in subshell commands
-                 and case clause commands)
-               o removed shell_command_1, folded rules into command
-               o eliminated pattern_list_1; changed case_clause_sequence to
-                 directly incorporate the SEMI_SEMI token (a pattern_list_1
-                 was just a pattern_list with a trailing SEMI_SEMI)
-               o new `for_command' and `case_command' productions
-               o redirections -> redirection_list
-               o newlines -> newline_list
-               o redid the code that attaches redirections to the function
-                 command rather than the function definition and eliminated
-                 all of the shift/reduce conflicts
-       - changed with_input_from_stdin in the readline case to set
-         bash_input.type to st_stdin
-
-print_cmd.c
-       - a couple of changes to the way functions are printed
-
-shell.c
-       - only execute the PROMPT_COMMAND if input is not coming from a
-         string (bash_input.type != st_string).  This fixes the problem
-         of PROMPT_COMMAND being executed by `eval' commands in an
-         interactive shell
-
-                                  9/12
-                                  ----
-shell.c
-       - all interactive shells SIGHUP running jobs when exiting due to
-         a SIGHUP, not just login shells
-
-                                  9/13
-                                  ----
-config.h, config.h.mini
-       - changed the default primary prompt (PPROMPT) to "\s\$ "
-       - removed the INTERACTIVE_COMMENTS define
-
-flags.c
-       - interactive comments are now enabled by default, regardless of the
-         INTERACTIVE_COMMENTS define
-
-input.h
-       - a new enum: stream_type, used in the BASH_INPUT struct
-
-parse.y
-       - bash_input.type is now initialized to st_none
-
-bashhist.c
-       - command_oriented_history is now the default
-
-documentation/bash.1
-       - removed description of `nolinks' variable, updated set -P
-         description
-       - removed description of `notify' variable, updated set -b
-         description
-       - removed description of `noclobber' variable, updated set -C
-         description
-
-variables.c
-       - IFS may now be unset
-
-builtins/read.def
-       - now does the right thing if IFS is unset (acts as if it is
-         set to " \t\n")
-
-builtins/cd.def
-       - added a new parameter to change_to_directory () which says
-         whether or not to follow symlinks, instead of using the
-         global no_symbolic_links
-       - changed cd_builtin to accept a -P option to disable symlink
-         following temporarily
-
-builtins/ulimit.def
-       - instead of using a hardcoded `long' for the return type of the
-         rlimit functions, use RLIMTYPE, which defaults to long
-       - new defines string_to_rlimtype -> string_to_long and
-         print_rlimtype for systems which do not need `RLIMTYPE' defined
-         to something other than long
-
-general.c
-       - function replacements for string_to_rlimtype and print_rlimtype
-         for machines which have RLIMTYPE defined in the machine description
-
-general.h
-       - extern declarations for string_to_rlimtype and print_rlimtype
-
-shell.c
-       - don't source file named by $ENV at script startup if act_like_sh
-         is turned on
-
-machines.h
-       - new entry for amiga/netbsd
-       - change all the netbsd entries to add -DRLIMTYPE=quad_t to
-         SYSDEP_CFLAGS
-
-siglist.h
-       - define sys_siglist as _sys_siglist on the amiga only if USGr4 is
-         defined
-
-print_cmd.c
-       - change so that printf is not prototyped on LynxOS with gcc
-
-lib/readline/Makefile
-       - changed the `installdirs' target to not fail if the directories
-         do not need creating
-
-lib/readline/history.c
-       - fixed a bug in history_arg_extract which manifested itself when
-         !* was used after a command without arguments (e.g., pwd ; echo !*)
-
-                                  9/15
-                                  ----
-subst.c
-       - expand_word_internal should preserve the flags (other than
-         W_QUOTED) from the word passed as a parameter on the word it returns
-       - expand_words_internal renamed to expand_word_list_internal
-       - expand_word_list_internal does not perform word splitting or
-         globbing on words with the W_ASSIGNMENT bit set
-       - removed special treatment of `notify', `command_oriented_history',
-         `history_control', and `nolinks'
-       - rewrote some of the sv_* functions to remove or avoid calls to
-         sscanf, one of the most expensive C library functions
-
-variables.c
-       - don't look for $command_oriented_history at startup, since it now
-         defaults to `on'
-
-general.h, general.c
-       - new function posix_initialize to do whatever is necessary to enable
-         `Posix mode'
-
-shell.c, subst.c
-       - call posix_initialize
-
-general.c
-       - rewrote replacements for strchr, strrchr to make them faster
-
-builtins/enable.def
-       - new -f option and necessary support to load builtins from a shared
-         object file on systems supporting both dlopen() and dlsym().  New
-         builtins loaded this way can replace existing shell builtins or
-         add completely new functionality
-
-builtins.h
-       - mkbuiltins.c creates `static_shell_builtins', which is a fixed
-         array, `shell_builtins' points to this array initially
-       - extern declaration for current_builtin
-
-builtins/mkbuiltins.c
-       - change to creat static_shell_builtins[] and declare shell_builtins
-         as a pointer to it
-       - change to declare `current_builtin' in created builtins.c
-
-builtins/source.def
-       - print an error message and return failure if no filename argument
-         is supplied
-
-builtins/common.c
-       - current_builtin is set by find_shell_builtin, find_special_builtin,
-         and builtin_address_internal
-       - new function builtin_usage, which prints the contents of
-         current_builtin->short_doc
-
-builtins/{bind,declare,enable,fc,getopts,hash,history,jobs,kill,read,set,
-         setattr,trap,ulimit,umask}.def
-       - changed the builtins in these files to use builtin_usage() to
-         print usage messages
-
-cpp-Makefile
-       - support for the HAVE_DLOPEN and HAVE_DLSYM defines
-
-machines.h
-       - added -ldl and -Bdynamic to the SunOS4 entry
-
-documentation/{bash.1,features.texi}
-       - documented new enable -f option to dynamically load builtins
-
-                                  9/16
-                                  ----
-test.c
-       - added `==' as a synonym for `='
-
-                                  9/18
-                                  ----
-bashline.c
-       - include readline/rlconf.h so that VI_MODE is defined if
-         appropriate
-
-shell.c
-       - removed `-nobraceexpansion' option
-
-flags.c, flags.h
-       - added new -B flag; enabled if brace expansion is turned on
-
-subst.c
-       - use brace_expand instead of !no_brace_expand
-
-builtins/set.def
-       - change set -o braceexpand to be equivalent to set -B
-
-parse.y
-       - in with_input_from_stdin, do nothing if bash_input.type already
-         is st_stdin or if there is already a stream with type st_stdin
-         on the saved stream stack
-       - new function stream_on_stack to find out if there is a saved
-         stream of a specified type
-
-documentation/bash.1, documentation/features.texi
-       - doeumented new set -B option
-       - removed -nobraceexpansion shell startup option
-
-                                  9/19
-                                  ----
-builtins/reserved.def
-       - made `help select' work
-
-cpp-Makefile
-       - removed references to the nonexistant `load.def'
-       - removed conditionals based on GETOPTS_BUILTIN
-
-builtins/getopts.def
-       - no longer $DEPENDS_ON GETOPTS_BUILTIN
-
-config.h, config.h.mini, builtins/help.def
-       - made the `help' builtin dependent on the HELP_BUILTIN define
-       - removed GETOPTS_BUILTIN
-
-builtins/mkbuiltins.c
-       - made the `$DEPENDS_ON' clause work for reserved words and
-         shell control structures in reserved.def by writing out
-         dependencies to builtext.h even if there is no `function'
-       - made the long_doc for each builtin and reserved word get
-         written out to builtins.c with #ifdef HELP_BUILTIN surrounding
-         the doc strings -- this makes the minimal shell much smaller
-
-shell.c, documentation/bash.1
-       - removed `-quiet' long option
-
-parse.y
-       - make sure that word splitting is not performed on the prompt
-         string after expanding in prompt_string_decode by calling
-         expand_string_unsplit instead of expand_string
-
-lib/readline/bind.c
-       - new readline variable `mark-directories': if set, completed
-         directory names have a slash appended
-
-lib/readline/complete.c
-       - support for `mark-directories'
-
-documentation/{bash.1,readline.3}, lib/readline/doc/rluser.texinfo
-       - documented the new `mark-directories' variable
-
-builtins/bind.def
-       - new option `-r' to remove a binding for a specified key sequence
-       - make sure that a failure return from bind resets the keymap
-         correctly if a -m option was supplied
-
-documentation/{bash.1,features.texi}
-       - documented new bind -r option
-
-                                  9/20
-                                  ----
-builtins/jobs.def
-       - new `disown' builtin
-
-documentation/{bash.1,features.texi}
-       - documented new `disown' builtin
-
-cpp-Makefile
-       - removed support for `MAKE_SHELL' cpp variable
-       - renamed endian.aux to mkendian, look for endian.c in support dir
-       - link in array.o, alias.o, braces.o, bracecomp.o
-         unconditionally, rely on cpp defines in the files to exclude code
-       - pass -DHAVE_SYS_SIGLIST if sys_siglist is defined
-       - pass -DHAVE_GETCWD if HAVE_GETCWD is defined in machines.h
-       - pass -DHAVE_VFPRINTF_EMUALTION through from machines.h to
-         compilation
-
-array.c
-       - don't compile in body of file unless ARRAY_VARS is defined
-
-braces.c
-       - don't compile in body of file unless BRACE_EXPANSION is defined
-
-alias.c
-       - don't compile in body of file unless ALIAS is defined
-
-bracecomp.c
-       - don't compile in body of file unless BRACE_EXPANSION and READLINE
-         are defined
-
-bashline.c
-       - don't compile in body of file unless READLINE is defined
-
-bashhist.c
-       - don't compile in body of file unless HISTORY is defined
-
-siglist.c
-       - don't compile in body of file unless HAVE_SYS_SIGLIST is not
-         defined
-
-getcwd.c
-       - don't compile in body of file unless HAVE_GETCWD is not defined
-
-vprint.c
-       - don't compile in body of file unless USE_VFPRINTF_EMULATION
-         is defined
-
-support/mksysdefs
-       - for SCO machines, define SYSDEF as SCO or SCOv4
-
-lib/readline/readline.[ch]
-       - new function rl_push_macro_input (s), which makes s the current
-         macro input string
-
-endian.c
-       - renamed to support/endian.c
-
-                                  9/21
-                                  ----
-lib/readline/complete.c
-       - more file types for the VISIBLE_STATS code:
-               |       FIFOs
-               %       character special devices
-               #       block special devices
-
-lib/readline/isearch.c
-       - made RETURN an alternate search string terminator
-
-builtins/read.def
-       - removed use of stdio -- unbuffered stdio on a dup of fd 0 is
-         a big loss
-
-builtins/set.def
-       - new function: minus_o_option_value, returns 1, 0, or -1 given
-         a -o option name (-1 means a bad name)
-       - reorganized list_minus_o_options to be more efficient
-
-execute_cmd.c
-       - when expanding a here document, use maybe_expand_string rather
-         than a simple expand_string to try a speed things up a bit
-
-input.c
-       - don't compile in the body of the file unless BUFFERED_INPUT
-         is defined in config.h
-
-                                  9/22
-                                  ----
-jobs.h, siglist.h
-       - replaced instances of Solaris with SunOS5
-
-shell.c
-       - changed long option parsing code so that --arg is equivalent
-         to -arg, when `arg' is one of the recognized multichar options
-
-builtins/history.def
-       - rewrote to regularize the option parsing and use internal_getopt
-       - now allows only one of -awrn to be specified
-       - added a new -p option that adds each of its arguments to the
-         end of the history list, and deletes the `history -p' history
-         entry
-
-builtins/trap.def
-       - added new -p option to display specified trap values, or all
-         trap values if no other arguments supplied
-
-documentation/{bash.1,features.texi}
-       - documented new history -p option
-       - documented new trap -p option
-
-                                  9/25
-                                  ----
-lib/readline/display.c
-       - fixed up the calcluation of the correct cursor line number (a `+'
-         and `-' were transposed in the calculation of `nleft')
-
-                                  9/26
-                                  ----
-general.c
-       - moved isint() here from test.c, renamed to legal_number
-
-general.h
-       - extern declaration of legal_number
-
-test.c
-       - only compile isint() if SHELL is not defined, define it as
-         legal_number otherwise
-
-trap.c
-       - use legal_number in decode_signal instead of sscanf()
-
-builtins/common.c
-       - moved list_sigs to here from trap.def, renamed to
-         display_signal_list
-       - changed get_numeric_arg to use legal_number instead of doing
-         the parsing and calculation itself
-
-builtins/common.h
-       - extern declaration for display_signal_list
-
-builtins/{trap.def
-       - changed to use display_signal_list for trap -l
-
-builtins/kill.def
-       - changed to use display_signal_list for kill -l
-       - added new kill -n signum option
-
-documentation/bash.1
-       - added description of new kill -l signame functionality
-       - added description of new kill -n signum feature
-       - added description of new enable -d option
-
-builtins.h
-       - added a char *handle member to `struct builtin' for later use
-       - new flags value: BUILTIN_DELETED
-
-builtins/mkbuiltins.c
-       - added code to inintialize the `handle' member to null in the
-         static builtin array definition
-
-builtins/common.c
-       - don't `find' a builtin if the BUILTIN_DELETED flag is set in the
-         flags word of the struct builtins array
-
-builtins/enable.def
-       - new option -d to remove a builtin loaded with -f, depends on
-         HAVE_DLCLOSE
-
-cpp-Makefile
-       - pass -DHAVE_DLCLOSE through from machines.h to compilation
-
-machines.h
-       - change SunOS4 machine description to define HAVE_DLCLOSE
-
-                                  9/27
-                                  ----
-shell.c
-       - split shell exit code off into a separate function: exit_shell(status)
-
-builtins/exec.def
-       - rewrote for clarity and speed and to use the builtin getopt()
-       - added new -a, -c, and -l options
-       - now calls exit_shell if shell_execve fails and the shell is not
-         interactive
-
-documentation/bash.1
-       - documented the new options to `exec'
-
-                                  9/28
-                                  ----
-builtins/exec.def
-       - if the execve fails and the shell is not going to exit, reinitialize
-         traps and signals
-       - only call end_job_control if subshell_environment != 0
-       - exec should exit unconditionally if the execve fails and
-         subshell_environment != 0
-
-subst.c
-       - if valid_brace_expansion_word fails, make sure `temp' is set to
-         NULL before trying to free it after the `goto bad_substitution'
-
-cpp-Makefile
-       - add $(CPPFLAGS) to the compilation flags when making `mksignames'
-
-documentation/features.texi
-       - fixed a typo in the tilde expansion section
-
-                                  9/29
-                                  ----
-machines.h
-       - DEC OSF/1 has the dlopen/dlsym/dlclose set of library functions
-
-shell.c
-       - don't execute /etc/profile if -noprofile given
-
-builtins/pushd.def
-       - new file, pushd/popd/dirs split off from cd.def
-       - replaced calls to sscanf with calls to legal_number
-
-builtins/Makefile, cpp-Makefile
-       - changes for pushd.def
-
-config.h, config.h.mini
-       - ALLOW_RIGID_POSIX_COMPLIANCE is no longer used
-
-subst.c, variables.c
-       - GETOPTS_BUILTIN is no longer used
-
-variables.c
-       - if the first character of argv[0] is not a `/', search the path
-         and canonicalize the result to find out how to set $BASH
-
-                                  10/2
-                                  ----
-builtins/enable.def
-       - changed enable_shell_builtin to use builtin_address_internal to find
-         the builtin rather than searching the list itself
-       - list_some_builtins skips a builtin if flags & BUILTIN_DISABLED != 0
-       - rewrote dyn_load_builtin to take a list of names to load from a
-         single filename
-       - don't dlclose the shared object in dyn_unload_builtin unless its
-         reference count drops to 0
-
-builtins/test.def
-       - don't bother making new copies of everything in the argument list
-         when constructing the argc and argv for test_command; just make
-         sure not to free anything but ARGV
-
-                                  10/3
-                                  ----
-bashline.c
-       - remove C-e binding in vi movement mode which switches into emacs
-         mode
-
-general.c
-       - make xfree only try to call free on non-null strings
-
-                                  10/4
-                                  ----
-builtins/read.def
-       - new `-e' option that uses readline to read the line
-       - if one of the arguments is not a legal variable name, print an
-         error message and return failure
-
-builtins/reserved.def
-       - changed the `Variables' to `variables' so `help variables' works
-
-subst.c
-       - set startup_state to 2 in child of command substitution to try to
-         avoid some unneeded forks
-
-trap.c
-       - removed call to reset_terminating_signals in restore_original
-         signals; callers are now required to take care of that themselves,
-         if necessary
-
-execute_cmd.c, subst.c
-       - added necessary calls to reset_terminating_signals before calls
-         to restore_original_signals
-
-execute_cmd.c
-       - when executing a null command in a subshell, don't bother passing
-         a string to make_child; just pass NULL
-       - in execute_builtin_or_function, don't add so many unwind-protects
-         if `subshell' == 1
-       - in command_substitute, call cleanup_the_pipeline to discard the
-         old pipeline, so pipeline_pgrp does not get set to 0 in
-         start_pipeline, which is called by make_child via making_children
-
-jobs.c, nojobs.c
-       - new function, ignore_tty_job_signals, to set SIGTTIN, SIGTTOU, and
-         SIGTSTP to SIG_IGN
-       - new function, default_tty_job_signals, to set those signals
-         to SIG_DFL
-       - new function, cleanup_the_pipeline to free up the_pipeline and
-         set it to NULL
-
-                                  10/5
-                                  ----
-builtins/history.def
-       - the history -p option is now -s (to sort of parallel the ksh
-         print -s option)
-       - the -s option now combines all of its arguments into a single
-         string and appends the string to the history list
-       - new history -p option to history expand each argument and print
-         the result without modifying the history list
-
-documentation/bash.1, documentation/features.texi
-       - documented the new -e option to read
-       - documented the new history -s and -p options
-       - documented the new cd and pwd -L options
-
-builtins/cd.def
-       - changed cd and pwd to use internal_getopt
-       - added the -L option to cd and pwd to follow symlinks (like if
-         set +P were issued)
-
-builtins/pushd.def
-       - added text for dirs +N and dirs -N to the dirs builtin long doc
-       - added -v option to dirs to print dirstack one dir per line with
-         stack index prepended
-
-                                  10/6
-                                  ----
-execute_cmd.c
-       - split the command searching code into a new function:
-         search_for_command
-       - removed a bunch of dead code from shell_execve
-       - removed call to reset_terminating_signals when executing a function
-         or builtin in a subshell (either via (xxx) or xxx &)
-       - don't add unwind protects at all in execute_function if subshell == 1
-
-lib/readline/chardefs.h
-       - new macro ALPHABETIC(c), returns 1 if c is a letter or digit
-
-lib/readline/readline.c
-       - don't call abort() in rl_change_case(); it's impolite in a
-         library function
-       - new macro, SWAP, used to swap values of two integers
-       - changed alphabetic to use ALPHABETIC, made it slightly faster
-       - modified rl_change_case() so that word capitalization is the
-         same as GNU Emacs
-
-lib/readline/search.c
-       - in noninc_dosearch, don't reset the history positition to what
-         it was if we're currently in vi editing mode (as per Posix.2
-         `/' and `?' vi-mode editing commands)
-
-                                  10/7
-                                  ----
-builtins/common.c
-       - changed single_quote and double_quote to use char pointers
-         rather than string indexing
-       - new function backslash_quote(string), which quotes special
-         characters in STRING using backslashes
-
-                                  10/8
-                                  ----
-alias.h
-       - added an extern declaration for alias_expand_word
-
-parse.y
-       - broke the alias expansion code off into a function
-         alias_expand_token; its return value says whether to re-read
-         a token or go on
-       - changed the alias expansion code to handle aliases that expand
-         to nothing better
-       - broke the code that does special-case token recognition off into
-         a function: special_case_tokens
-       - used the new functions to make sure that the special-case tokens
-         can be the expansion of an alias
-       - made sure that if in `posix mode' that reserved words cannot be
-         aliased and that all reserved words can be the values of aliases
-         and be recognized after expansion
-
-                                  10/10
-                                  -----
-lib/readline/complete.c
-       - replaced #ifdef SHELL code with two new exported readline interfaces:
-         rl_filename_quoting_function and rl_filename_dequoting_function.
-         Both return a pointer to char.
-       - new extern variable rl_filename_quote_characters, containing a list
-         of characters that cause a word to be quoted by the completer if
-         they appear in a file name
-
-bashline.c
-       - new functions for rl_filename_quoting_function and
-         rl_filename_dequoting_function.
-       - initialize rl_filename_quoting_function and rl_filename_dequoting_function
-         in initialize_readline
-       - initialize rl_filename_quote_characters
-
-lib/readline/readline.h
-       - extern declarations for new public interfaces
-         rl_filename_quoting_function and rl_filename_dequoting_function
-       - added declarations for NO_MATCH, SINGLE_MATCH, and MULT_MATCH for
-         use by the filename quoting functions
-       - new extern declaration for rl_filename_quote_characters
-
-lib/readline/history.c
-       - made a version of single_quote be compiled in if SHELL is not
-         defined
-       - the `q' and `x' modifiers are now compiled in by default, not
-         just if SHELL is defined
-
-                                  10/11
-                                  -----
-subst.c
-       - string_quote_removal was being a little overzealous in stripping
-         things within embedded quoted strings when `quoted' was == 1.
-         Only remove one level of quotes each time through the function
-         This fixes the problem of quotes being stripped incorrectly in
-               var="The text \"hello\" should show up inside double quotes."
-
-lib/readline/history.c
-       - made the behavior of single quotes inhibiting history expansion
-         configurable with a variable: history_quotes_inhibit_expansion,
-         not just shell-specific
-       - added a new variable: history_search_delimiter_chars, which is a
-         list of characters that can also delimit a history search string
-
-lib/readline/history.h
-       - extern declaration of history_quotes_inhibit_expansion
-       - extern declaration of history_search_delimiter_chars
-
-bashhist.c
-       - set history_quotes_inhibit_expansion to 1 in bash_initialize_history
-       - initialize history_search_delimiter_chars to ";&()|<>"
-
-lib/readline/doc/{rltech,hstech}.texinfo
-       - documented new readline and history library interfaces
-
-parse.y
-       - split the part of read_token that reads a single word off into
-         a new function: read_token_word
-
-lib/readline/chardefs.h
-       - include <string.h> by default; only check HAVE_STRING_H if
-         HAVE_CONFIG_H is defined
-
-                                  10/12
-                                  -----
-parse.y
-       - moved the `RESET' code out of read_token into reset_parser
-       - rewrote some of decode_prompt_string to make it more efficient
-       - rewrote more of read_token_word to make it more efficient
-       - make shell_getc cast its result to `unsigned char' before
-         returning it.  This fixes the problem of \255 appearing in a
-         line
-
-machines.h
-       - new entry for m68k machines running Linux
-
-                                  10/13
-                                  -----
-builtins/exec.def
-       - use search_for_command rather than find_user_command to look up
-         the path to exec, so the hash table and temp environment are used
-
-variables.c
-       - don't rebuild the export environment after binding a shell
-         function unless that function is exported
-       - make sure that copy_variable copies arrays correctly, using
-         dup_array()
-       - in assign_in_env, only call tilde_expand if a `~' appears somewhere
-         in the value
-
-execute_cmd.c
-       - if we found $PATH in the temp environment in search_for_command,
-         call find_user_command_in_path instead of find_user_command, so
-         we don't try to search the temporary env again.  Call
-         find_user_command as normal if PATH is not in the temp environment
-
-subst.c
-       - char_is_quoted should not be compiled in if READLINE is not
-         defined
-
-lib/readline/complete.c
-       - add a new external interface: Function *rl_char_is_quoted_p,
-         which is called to find out whether a word break character is
-         quoted and should be skipped over when breaking words for
-         the completer
-
-lib/readline/readline.h
-       - extern declaration for rl_char_is_quoted_p
-
-bashline.c
-       - initialize rl_char_is_quoted_p to char_is_quoted
-
-lib/readline/doc/rltech.texinfo
-       - documented rl_char_is_quoted_p
-
-lib/readline/readline.c
-       - extend the undo records so that a `start' or `end' value of -1
-         means rl_point and a value of -2 means rl_end.  This is a start
-         to better support for undoing vi-mode commands like `C'
-
-lib/readline/vi_mode.c
-       - don't save what's entered in insert mode after a `C' command
-         for later insertion when doing a `redo'
-
-                                  10/16
-                                  -----
-test.c
-       - rewrote unop() to use a switch statement instead of a call to
-         strchr
-       - remove #ifdef SHELL blocks by defining getuid, geteuid, getgid
-         and getegid as references to current_user.{uid,euid,gid,egid}
-         respectively
-       - change group_member to only fetch the group list once and to use
-         NGROUPS_MAX or NGROUPS to find the maximum number of groups
-
-documentation/bash.1
-       - fixed description of ${#@} expansion
-
-                                  10/17
-                                  -----
-support/bashbug.sh
-       - add a `From:' line to the mail message handed to rmail
-
-                                  10/18
-                                  -----
-test.c
-       - rewrote binary_operator for speed and clarity
-       - removed age_of, added arithcomp(), filecomp() to support new
-         binary_operator
-       - removed support for `-l string'
-
-documentation/bash.1
-       - removed mention of `-l string' from `test' description
-
-                                  10/19
-                                  -----
-cpp-Makefile
-       - pass PROGRAM as the double-quoted shell name to compilation of
-         shell.c and error.c
-
-                                  10/20
-                                  -----
-support/bashbug.sh
-       - don't try to use ${word:-expansion}; ultrix sh doesn't understand it
-
-hash.c
-       - new function: flush_hash_table (table, free_data) to delete the
-         contents of a given hash table.  *free_data is called to free
-         each item's data, if free() is inappropriate
-
-builtins/hash.def
-       - new functions free_hashed_filenames and free_filename_data to
-         flush the table of hashed filenames
-
-subst.c
-       - change sv_path to call flush_hashed_filenames directly
-
-variables.c
-       - only sort arrays of variables or functions for the environment or
-         `set' output if `posixly_correct' is set.  sh does it; ksh does
-         not, and there's no real requirement to do so
-       - rewrote delete_all_variables so it looks like flush_hash_table
-
-trap.c
-       - two new flag values for the `sigmodes' array: SIG_INPROGRESS,
-         which is set for sigmodes[sig] while a trap handler for sig
-         is executing, and SIG_CHANGED, which is set if a new trap
-         value is set when SIG_INPROGRESS is set.  This should obviate
-         the need to set the trap value to IMPOSSIBLE_TRAP_HANDLER while
-         the trap handler is executing
-
-alias.c
-       - rewrote delete_all_aliases so it looks like flush_hash_table
-
-                                  10/21
-                                  -----
-alias.c
-       - changed delete_all_aliases to call flush_hash_table directly
-         and use free_alias_data as the `free function' argument
-
-variables.c
-       - changed delete_all_variables to call flush_hash_table directly
-
-tests/run-test, tests/test-tests
-       - new scripts to run tests of the `test' builtin as part of the
-         regression test
-
-                                  10/24
-                                  -----
-bashline.c
-       - initialize_hostname_list needs to look for HOSTFILE first
-       - hostname list is no longer sorted
-       - replaced binary search in hostnames_matching with a simple
-         linear search
-       - made the code that reads hostnames skip over the first word on
-         a line only if its first character is a digit, assuming it's
-         an Internet address
-
-copy_cmd.c
-       - removed copy_select_command; overload copy_for_command, since the
-         select and for command structs are exactly the same
-
-make_cmd.c
-       - combined make_for_command and make_select_command into a new
-         function, make_for_or_select
-       - rewrote make_here_document to remove the unneeded `switch' statement
-
-builtins/common.c, builtins/hash.def
-       - moved remove_hashed_filename from common.c to hash.def
-
-builtins/common.c
-       - remove the \r from error message printed by get_working_directory
-       - change parse_and_execute to call dispose_fd_bitmap directly then
-         discard the `pe_dispose' unwind-protect frame rather than running
-         the frame
-
-builtins/set.def
-       - changed how set -o options are set and retrieved, using set and get
-         functions to avoid all that special-case inline code
-
-                                  10/26
-                                  -----
-test.c
-       - added unary operator `-o', which returns true of the shell option
-         name given as an argument is set
-
-lib/readline/readline.c
-       - added a definition of set_lines_and_columns to be called if the
-         library is not compiled -DSHELL
-
-shell.c
-       - added a --verbose startup long option
-       - renamed `--nolineediting' to `--noediting'
-
-                                  10/27
-                                  -----
-lib/readline/util.c
-       - new file, for readline utility functions
-
-lib/readline/readline.c
-       - moved a bunch of functions to util.c
-
-subst.c
-       - make sure set_sigint_handler is called only by the subshells doing
-         command and process substitution
-
-builtins/read.def
-       - make sure that rlbuf is initialized to null
-
-trap.c
-       - new flag for sigmodes[] members: SIG_IGNORED, set when signal is
-         ignored, even if it's special or untrappable
-       - new function: signal_is_ignored (sig), which returns 1 if SIG
-         has been ignored with trap ''
-
-builtins/trap.def
-       - changed to use the builtin getopt
-
-shell.c
-       - added a check to sigint_sighandler for whether or not SIGINT has
-         been ignored with trap '' in an interactive shell.  This fixes
-         the problem with `read' being interruptible in an interactive
-         shell even if SIGINT is being ignored
-
-                                  11/8
-                                  ----
-lib/readline/Makefile
-       - added definition of INSTALLED_HEADERS, just in case
-
-                                  11/11
-                                  -----
-variables.c
-       - change assign_in_env so that it doesn't use savestring ("") to
-         set `value' to a dummy value; don't call strcpy if there's
-         nothing to copy
-
-                                  11/15
-                                  -----
-general.h
-       - new defines, legal_variable_starter and legal_variable_char
-       - new define SIGRETURN(n) which encapsulates the VOID_SIGHANDLER
-         differences when returning from a signal handler
-
-general.c, variables.c, subst.c, expr.c
-       - use legal_variable_starter and legal_variable_char
-
-shell.c, nojobs.c, trap.c, jobs.c, builtins/suspend.def
-       - change to use SIGRETURN macro
-
-subst.c
-       - massive changes to clean up the code and remove unused code and
-         variables
-       - expanded the ${#param} code so that all of the shell special
-         variables may have their length taken
-
-tests/run-tilde
-       - new test for tilde expansion
-
-bashline.c
-       - fix a bug in command_subst_completion_matches: make sure that
-         `matches' is static
-
-parse.y
-       - don't print a prompt when not using readline if the current
-         input type is st_string
-
-machines.h
-       - add -DINT_GROUPS_ARRAY to SYSDEP_CFLAGS on ultrix
-       - fixes to the cray machine description from Bill Jones
-
-braces.c
-       - fixed a bug in brace_gobbler that prevented a backslash from
-         escaping an open brace
-
-                                  11/16
-                                  -----
-tests/braces-tests, tests/run-braces
-       - new regression tests for brace expansion
-
-builtins/pushd.def
-       - new -p option for `dirs' that prints dirstack on per line
-         without numbers
-
-                                  11/17
-                                  -----
-command.h
-       - move redirection error values here from execute_cmd.c
-       - new defines INPUT_REDIRECT and OUTPUT_REDIRECT
-
-shell.c
-       - make the default MAINTAINER `bash-maintainers@prep.ai.mit.edu'
-
-execute_cmd.c
-       - many changes to clean up the code and remove unused variables and
-         functions
-       - new functions: redirection_error, find_in_path_element,
-         find_absolute_program
-       - fixes to redirection error reporting, so things like exec 4<&y*
-         and exec 4<&$FOO are displayed correctly
-       - removed the `lexical_scoping' code
-
-flags.c, flags.h
-       - removed the lexical_scoping code and variable
-
-documentation/{bash.1,features.texi}
-       - removed the description of the `-l' option to `set'
-
-jobs.c
-       - don't try to open /dev/tty to get the controlling tty, use
-         fd 2 like other job control shells
-
-lib/readline/vi_mode.c
-       - when using `d%', make sure the matching character found by
-         the `%' is deleted by the `d'.  Ditto for `c%'.
-       - stub function for vi undo: rl_vi_undo.  Right now it just
-         calls rl_undo_command
-
-lib/readline/vi_keymap.c
-       - change to call rl_vi_undo instead of rl_undo_command
-
-lib/readline/readline.h
-       - extern declaration for rl_vi_undo
-
-                                  11/21
-                                  -----
-execute_cmd.c
-       - fix to print_select_list to avoid a possible divide-by-zero error
-         and subsequent core dump
-       - fix to execute_select_command to just return 0 if there is no
-         select list
-
-parse.y
-       - remove `in' from the list of tokens that cannot take trailing
-         semicolons
-
-builtins/read.def
-       - make sure that leading IFS whitespace is removed before calling
-         get_word_from_string the first time.  This matters when IFS is
-         not " \t\n" but non-null
-       - make sure the array code uses IFS to split the input string
-         before assigning it to the array
-
-                                  11/22
-                                  -----
-parse.y
-       - make sure that if \nnn expands to CTLESC or CTLNUL, the char
-         is protected by a CTLESC
-       - new variable `promptvars', which, if non-zero, causes all the
-         variable expansions to be performed in decode_prompt_string.
-         If zero, only quote removal is performed.
-
-builtins/source.def
-       - new variable: `source_uses_path', set to 1 by default.  If
-         non-zero, the `.' builtin uses $PATH to find the script to
-         source
-
-builtins/getopt.h
-       - cut out everything not needed by bash
-
-builtins/getopt.c
-       - cut out everything not needed by bash
-
-builtins/getopts.def
-       - removed the call to getopt_set_posix_option_order, which is no
-         longer necessary
-
-execute_cmd.c
-       - split the code that writes out here documents to files out into
-         a separate function
-
-                                  11/23
-                                  -----
-builtins/getopt.c, builtins/getopt.h, builtins/getopts.def, subst.c
-       - prefix all of the getopt variables and functions with `sh_'
-         (that is, optind becomes sh_optind and getopt becomes sh_getopt)
-         to avoid confusion with a system's getopt(3) implementation
-
-subst.c
-       - new functions: parameter_brace_substring and verify_substring_values
-         and changes to expand_word_internal to support the ksh-93
-         ${var:exp1:exp2} substring syntax
-
-documentation/bash.1
-       - documented the new ${var:exp1[:exp2]} syntax
-
-                                  11/25
-                                  -----
-builtins/setattr.def
-       - don't allow readonly -n at all
-
-array.c
-       - split array_to_string into two parts; a new function
-         array_to_string_internal does the real work
-       - new function array_subrange () to return a subset of the elements
-         in an array
-
-subst.c
-       - augmented the substring code to handle the positional parameters
-         and array variables
-       - made quote_list and dequote_list return their WORD_LIST *
-         arguments so they can be used like
-
-               z = string_list ((quoted ? quote_list (l) : l), xxx);
-
-       - augmented the ${xxx} expansion code to do indirect variable
-         references if the first character of the variable name is `!'
-
-tests/new-exp.tests
-       - added regression tests for substring expansion
-       - added regression tests for indirect variable references
-
-                                  11/28
-                                  -----
-builtins/set.def
-       - added set -o hashfunc and set -o onecmd, synonyms for set -h
-         and set -t, respectively
-
-builtins/shift.def
-       - changed shift so that the positional parameters are not changed
-         if the argument is > $# (this is ksh and Posix.2, unlike sh)
-
-documentation/bash.1
-       - documented true behavior of `shift'
-
-lib/readline/kill.c
-       - split the kill ring management code and the kill commands out
-         from readline.c into this file
-
-lib/readline/undo.c
-       - split the code that does undoing out of readline.c into this file
-
-shell.c
-       - force the shell to exit with status 127 if a longjmp back to
-         run_one_command occurs with bash -c
-       - force the last command exit status to 1 if a
-         longjmp (top_level, DISCARD) is performed
-
-builtins/read.def
-       - don't throw away partial lines after reading EOF
-
-subst.c
-       - command substitution should not inherit the -e flag
-
-builtins/source.def
-       - make sure to set the exit status correctly when in posix mode
-         and the filename argument to `.' does not exist
-
-                                  11/29
-                                  -----
-lib/readline/input.c
-       - split the input buffering and character input code out of
-         readline.c to here
-
-lib/readline/macro.c
-       - moved the keyboard macro management code to here from readline.c
-
-lib/readline/readline.c
-       - removed the STATIC_MALLOC code
-
-lib/readline/rltty.c
-       - return -1 in POSIX get_tty_settings if tcgetattr returns -1 and
-         errno != EINTR, even if output is being flushed
-
-                                  12/1
-                                  ----
-machines.h
-       - fixes to the hpux_8 and hpux_9 machine descriptions
-
-trap.c
-       - make run_exit_trap return the right exit status
-         (last_command_exit_value)
-       - run_exit_trap no longer preserves the value of last_command_exit_value
-         around the execution of the trap commands
-       - run_exit_trap now turns off SIG_TRAPPED and sets SIG_INPROGRESS
-         and will not try to run anything if SIG_INPROGRESS is set
-
-trap.h
-       - change definition for run_exit_trap
-
-shell.c
-       - call run_exit_trap only if trap[0] is set and not ignored
-
-builtins/exit.def
-       - make sure we only source the .bash_logout file once, even if it
-         contains a call to `exit'
-
-execute_cmd.c
-       - if we run an exit trap in a (...) user subshell, allow it to
-         override the exit status of the subshell
-
-lib/readline/readline.c
-       - made rl_delete_text bounds check its `to' argument, and limit
-         it at rl_end
-
-lib/readline/vi_mode.c
-       - make rl_vi_subst call `rl_delete_text' directly for the `s'
-         command
-
-support/mksysdefs
-       - define a new variable for the sysdefs.h file for ISC machines:
-         ISC_release, which can be ISC_2, ISC_3, or ISC_4
-
-machines.h
-       - don't `#undef' HAVE_GETCWD on ISC 4.x machines
-       - `#undef' HAVE_RESOURCE on ISC 4.x machines
-
-support/mkversion.c
-       - include "posixstat.h" rather than <sys/stat.h> for the benefit
-         of ISC machines
-
-                                  12/5
-                                  ----
-lib/readline/complete.c
-       - changed username_completion_function so that a null username
-         generates a list of all users as possible completions
-
-lib/readline/readline.h
-       - added definitions for STREQ, STREQN
-
-lib/readline/{search.c,isearch.c,kill.c}
-       - removed private definitions of STREQ, STREQN
-
-execute_cmd.c
-       - in find_user_command_internal, just return a copy of the pathname
-         passed as an argument if there is no PATH
-
-                                  12/6
-                                  ----
-siglist.h
-       - NetBSD 1.0 does not need a define for strsignal()
-
-                                  12/8
-                                  ----
-subst.c
-       - removed assignment_name, word_list_quote_removal, word_quote_removal,
-         and sub_append_number -- unused functions
-       - removed some unexecuted code from expand_word_internal
-
-                                  12/9
-                                  ----
-execute_cmd.c
-       - if PATH is set to the empty string, find executables in the
-         current directory
-
-shell.c, parse.y, trap.c
-       - before setting the SIGINT sighandler unconditionally to one of
-         sigint_sighandler or termination_unwind_protect, check that it
-         is not ignored.  Now trap '' 2 really sets the SIGINT signal
-         handler to SIG_IGN. [In 1.14.3]
-
-trap.c
-       - rewrote set_sigint_handler to use SIG_IGNORED rather than checking
-         against IGNORE_SIG
-       - changed ignore_signal, run_exit_trap, maybe_call_trap_handler, and
-         run_trap_internal to check SIG_IGNORED
-
-shell.c
-       - removed the check for signal_is_ignored(SIGINT) in sigint_sighandler
-
-                                  12/11
-                                  -----
-sig.c, sig.h
-       - new files, moved signal-related definitions and code here from
-         shell.c, general.h, general.c, jobs.c, jobs.h, externs.h
-
-unwind_prot.c, shell.h, nojobs.c
-       - include sig.h
-
-                                  12/12
-                                  -----
-jobs.c
-       - only break out of loops if SIGTSTP was used to stop a job in the
-         loop, the shell is currently interactive, and job control is on.
-         SIGSTOP does not break loops. [In 1.14.3]
-
-                                  12/13
-                                  -----
-expr.c
-       - bases < 2 or > 36 are now accepted without silently being reset
-         to 10
-
-braces.c
-       - make sure array_concat copies the array it returns if one of
-         the arguments is null [In 1.14.3]
-
-                                  12/14
-                                  -----
-subst.c
-       - split the ${...} expansion code out into a separate function,
-         static char *parameter_brace_expand()
-       - changes to array_value so that any variable can be referred to
-         as an array with an integer subscript.  The value will be
-         returned if a non-array variable is referred to as ${var[0]};
-         if the subscript is > 0 a null string is returned
-
-                                  12/15
-                                  -----
-machines.h
-       - fixes to freebsd description for FreeBSD 2 [In 1.14.3]
-
-support/bashbug.sh
-       - changed to use /usr/lib/sendmail if present or /usr/sbin/sendmail
-         if present, defaulting to rmail [In 1.14.3]
-
-bashhist.c
-       - HISTFILESIZE now controls how large the history file is after
-         it is written.  After saving the shell history, sv_histfilesize
-         will truncate it if necessary.  history -w can override this.
-
-documentation/bash.1
-       - documented change to treatment of HISTSIZE when saving history
-
-lib/malloc/malloc.c
-       - removed the calls to sigsetmask() in malloc().  This should
-         result in a speed improvement
-
-                                  12/19
-                                  -----
-builtins/enable.def
-       - don't allow -f or -d in a restricted shell
-
-builtins/alias.def
-       - rewrote alias and unalias to use the internal getopt
-       - added -p option to print the alias list to alias
-       - fixed up the documentation for `alias'
-
-documentation/{bash.1,features.texi}
-       - updated the documentation for `alias'
-       - updated the documentation for $_
-
-array.c,array.h
-       - new function `empty_array (ARRAY *a)' removes all of the
-         elements in a without destroying the array variable in
-         preparation for overwriting it.  Used by read -a.
-
-builtins/read.def
-       - call empty_array() before assigning list of values with read -a
-       - changed dispose_array to use empty_array to destroy the
-         array elements
-
-variables.c
-       - set $_ to argv[0] at variable initialization time
-
-                                  12/20
-                                  -----
-subst.c
-       - broke the pattern removal code into a few separate functions:
-         getpatspec to get the pattern specifier, getpattern to do the
-         necessary word expansions and return the pattern to be matched
-       - new function: parameter_list_remove_pattern(), which implements
-         the ${param[#%][[%#]]pattern} where param is `@' or `*'
-
-documentation/bash.1
-       - documented new pattern removal functionality for the positional
-         paramters
-
-general.c
-       - new function strsub (s, pat, rep, gflag) replaces PAT with REP
-         in S.  All occurrences are replaced if GFLAG != 0; the first is
-         replaced otherwise
-       - changed strindex() to avoid multiple calls to strnicmp by
-         checking first character of the string
-
-builtins/fc.def
-       - changed to use builtin_getopt with a check for fc numbers as
-         arguments
-       - some code rearranging for efficiency and clarity
-       - fc_dosubs now just calls strsub(); fc_replace is gone
-
-                                  12/21
-                                  -----
-subst.c
-       - new function, match_pattern, which matches a shell globbing
-         pattern anywhere in a string and returns the boundaries of the
-         match
-
-lib/readline/readline.h
-       - declarations for rl_insert_command and rl_backward_char_search
-
-lib/readline/readline.c
-       - new function rl_insert_comment, no longer vi-mode-specific
-       - new function rl_backward_char_search
-
-lib/readline/bind.c
-       - comment-begin now sets the comment char for emacs and vi modes
-       - variable holding the value is now _rl_comment_begin
-
-lib/readline/vi_mode.c
-       - move the `comment-begin' stuff to readline.c and bind.c
-
-lib/readline/funmap.c
-       - vi-comment is now insert-comment
-       - new bindable command character-search-backward
-
-lib/readline/vi_mode.c
-       - command mode `#' now invokes rl_insert_comment
-
-lib/readline/emacs_keymap.c
-       - M-# now bound to insert-comment
-       - M-space now bound to set-mark
-       - M-^] now bound to character-search-backward
-
-bashline.c
-       - posix_readline_initialize now calls rl_variable_bind to set the
-         value of comment-begin rather than directly modifying
-         _rl_comment_begin
-
-documentation/{bash.1,readline.3}, lib/readline/doc/rluser.texinfo
-       - added description of new bindable `insert-comment' command
-       - documented new M-space emacs mode binding
-       - documented new character-search-backward command and default
-         emacs mode binding to M-C-]
-
-shell.c
-       - only call posix_initialize if posixly_correct is set
-
-                                  12/22
-                                  -----
-cpp-Makefile
-       - make $(Program) depend on $(srcdir)/.distribution, for the
-         benefit of systems where `make' does not have VPATH support
-         [In 1.14.3]
-
-jobs.c
-       - if a foreground job is killed by SIGINT while job control is
-         active, print a newline to compensate for the kernel printing
-         ^C without one [in 1.14.3]
-
-bashline.c
-       - make sure bashline_reinitialize resets rl_completion_entry_function
-         to NULL, as the comment says it should [In 1.14.3]
-
-                                  12/23
-                                  -----
-test.c
-       - fix a problem that caused core dumps if a `)' was missing in a
-         parenthesized expression [In 1.14.3]
-
-jobs.c
-       - broke the code the manages the manipulation of the job table and
-         process status out of flush_child into a new function waitchld()
-       - flush_child now just calls waitchld() with a parameter that tells
-         it not to block
-       - wait_for calls waitchld() with the pid it's looking for and tells
-         it to block (don't call it with WNOHANG)
-       - cleaned up wait_for considerably -- turned the wait_loop: label
-         stuff into a do-while loop and removed the setting of job status
-         (that's now done only by waitchld).  wait_for now calls
-         waitchld continuously until the job it is interested in is
-         marked JDEAD.
-
-                                  12/28
-                                  -----
-subst.c
-       - fixed expand_word_internal so that any word that expands into
-         nothing and contains a double-quoted $@ is removed, like sh
-         and ksh
-       - new function: expand_string_for_rhs, which calls expand_word_internal
-         with a variable that lets it find out whether or not a $@ appeared
-         in the WORD in ${paramOPword} when expanding it, so that "$@"
-         and various other things are handled correctly on the rhs
-       - added params for parameter_brace_expand to tell expand_word_internal
-         if a quoted $@ was processed as part of the rhs (or even the lhs);
-         these new params are passed along to parameter_brace_expand_rhs
-       - pass the right value of quoted to parameter_brace_expand_rhs from
-         parameter_brace_expand.  expand_string_for_rhs doesn't need to know
-         whether the brace expression is quoted
-
-                                  12/31
-                                  -----
-support/printenv
-       - now an official part of the distribution, moved from CWRU/misc
-         [in 1.14.3]
-
-cpp-Makefile
-       - copy support/printenv into the `tests' directory when making tests
-         [in 1.14.3]
-       - change to understand GCC_STANDARD [in 1.14.3]
-
-support/bashbug.sh
-       - fixed a typo that caused it to not parse correctly [in 1.14.3]
-
-machines.h
-       - define GCC_STANDARD if the standard `cc' is gcc and you don't want
-         to use the compiler named `gcc' for some reason [in 1.14.3]
-
-                                   1/2
-                                   ---
-general.h
-       - added FS_DIRECTORY to the list of flags that file_status returns
-
-execute_cmd.c
-       - changed find_in_path_element to return null if the flags argument
-         specifies FS_EXEC_ONLY and the file is not executable
-       - return FS_DIRECTORY from file_status if the argument specifies a
-         directory
-       - new function, is_directory (char *), which returns non-zero if the
-         filename argument is a directory
-
-execute_cmd.h
-       - extern declaration for is_directory
-
-flags.c, flags.h
-       - hashing_disabled and locate_commands_in_functions were removed,
-         hashing_enabled added
-
-execute_cmd.c, builtins/common.c. builtins/hash.def
-       - use hashing_enabled instead of hashing_disabled, and reverse
-         the sense of tests of it
-
-documentation/bash.1, documentation/features.texi
-       - changed description of `set -h/set -o hashcmds', removed
-         set -d/set -o nohash
-
-bashline.c
-       - changed command_word_completion_function to return matches if names
-         are directories as well as if they are executable files
-
-support/mksysdefs
-       - look for `ranlib' in $PATH before searching the file system;
-         look in /usr/gnu/bin for it; default to `:' if not found
-
-general.c
-       - change ansicstr to accept a second argument telling it whether to
-         recognize \c and to pass back a non-zero value in it if \c is
-         seen
-
-general.h
-       - changed extern declaration of ansicstr
-
-subst.c
-       - call ansicstr with an extra argument
-
-                                   1/3
-                                   ---
-builtins/echo.def
-       - rewrote to use ansicstr() with the new argument
-
-                                   1/4
-                                   ---
-trap.c
-       - changed instances of signal() to set_signal_handler() [in 1.14.4]
-       - combined reset_signals and restore_signals into a single function,
-         since they were essentially identical
-
-subst.c
-       - if set -u is set, references to the positional parameters now
-         generate errors if that parameter is not set [in 1.14.4]
-
-lib/*/Makefile, builtins/Makefile
-       - since RANLIB can be just `ranlib', just try to run it without
-         checking that the file exists [in 1.14.4]
-
-builtins/set.def
-       - changed `hashcmds' to `hashall'
-
-documentation/{bash.1,features.texi}
-       - changed `hashcmds' to `hashall'
-
-                                   1/5
-                                   ---
-trap.c
-       - make the loop that restores signal handlers run from signal 0 to
-         make sure user subshells don't inherit traps on `exit' (to fix
-         for 1.14.3, change restore_original_signals so that the loop
-         starts from 0) [in 1.14.4]
-
-variables.c
-       - don't import exported function definitions at startup if the
-         shell is restricted
-
-builtins/source.def
-       - don't allow use of pathname arguments containing `/' in a
-         restricted shell
-
-execute_cmd.c
-       - when a shell is spawned to execute a shell script without a
-         #! line, turn off the -r flag if the shell is restricted
-
-shell.c
-       - added a new long option `--restricted'
-
-documentation/bash.1
-       - added a section on the restricted shell, and documented the
-         new `--restricted' long invocation option
-
-                                   1/7
-                                   ---
-shell.c
-       - when using bash -c command, make run_one_command return
-         last_command_exit_value if a throw_to_top_level with value
-         EXITPROG occurs [in 1.14.4]
-
-print_cmd.c
-       - make sure to initialize arg_index in the non-varargs implementation
-         of cprintf [in 1.14.4]
-
-jobs.c
-       - don't try to change the state of the SIGCHLD handler before
-         calling waitchld() from wait_for, since SIGCHLD is blocked
-         while this code is executing [in 1.14.4]
-
-                                  1/11
-                                  ----
-lib/readline/rltty.c
-       - call control_keypad iff the value of a new variable,
-         _rl_enable_keypad, is non-zero
-
-lib/readline/bind.c
-       - new readline variable `enable-keypad' to control whether readline
-         tries to manipulate the application keypad
-
-documentation/{bash.1,readline.3}, lib/readline/doc/rluser.texinfo
-       - documented new `enable-keypad' variable
-
-                                  1/12
-                                  ----
-lib/readline/search.c
-       - make sure to call rl_unix_word_rubout and rl_unix_line_discard
-         with the correct arguments [in 1.14.4]
-
-make_cmd.h
-       - make sure make_select_command is declared even if SELECT_COMMAND
-         is not defined
-
-parse.y
-       - make sure the \[ and \] escape sequences are not recognized if
-         READLINE is not defined [in 1.14.4]
-
-config.h
-       - make sure HISTORY is defined if READLINE is; code moved here
-         from bashhist.c [in 1.14.4]
-
-bashhist.c
-       - removed check for READLINE being defined without HISTORY; now
-         in config.h
-       - new function, bash_history_reinit
-
-flags.h, flags.c, builtins/set.def
-       - the -H/-o histexpand flag should be compiled into the shell
-         only if BANG_HISTORY is defined [in 1.14.4]
-
-subst.c
-       - don't include sv_histchars unless BANG_HISTORY is defined
-         [in 1.14.4]
-       - if QUOTED is true in parameter_brace_expand_rhs, pre-process the
-         word on the rhs of the parameter expansion by a call to
-         string_extract_double_quoted with the STRIPDQ parameter set to 1
-       - new arg for string_extract_double_quoted; causes it to strip
-         double quotes and alter its backslash handling behavior; designed
-         to be called from parameter_brace_expand_rhs
-       - changed all other instances of string_extract_double_quoted to
-         call it with STRIPDQ set to 0, to get old behavior
-
-shell.c
-       - call bash_history_reinit rather than manipulating history
-         variables directly
-
-variables.c
-       - don't auto-export $BASH [in 1.14.4]
-
-tests/rhs-exp.tests
-       - new test script to check for behavior fixed by changes to
-         string_extract_double_quoted and parameter_brace_expand_rhs
-
-parse.y
-       - `for' and `select' must now take non-empty lists between
-         `in' and `;'
-
-                                  1/16
-                                  ----
-subst.c
-       - fixed string_quote_removal to do double-quoted string processing
-         itself rather than call string_extract_double_quoted, which
-         assumes that a call to expand_word_internal or the equivalent
-         will follow immediately and leaves some backslashes in place,
-         inappropriately for quote removal
-
-                                  1/23
-                                  ----
-subst.c
-       - make sure to set `temp' to NULL after it's freed by sub_append_string
-         in expand_word_internal to keep it from pointing to newly-allocated
-         memory that will be subsequently freed, causing a `memory freed
-         twice' error [in 1.14.4]
-
-trap.c
-       - handle the EXIT_TRAP specially in reset_or_restore_signal_handlers,
-         since in both cases we simply want to free up the trap string and
-         mark the signal as not trapped
-
-shell.h
-       - added \n to the list of characters in slashify_in_double_quotes
-
-                                  1/26
-                                  ----
-subst.c
-       - make string_extract_single_quoted and string_extract_double_quoted
-         `inline'
-       - new function skip_single_quoted, used when we used to call
-         string_extract_single_quoted and just throw the returned string
-         away
-       - new function skip_double_quoted for the same purpose
-
-                                  1/28
-                                  ----
-subst.c
-       - fixed expand_word_internal so that if an assignment word
-         is expanded, no word splitting is performed [in 1.14.4]
-
-builtins/ulimit.def
-       - some systems lack RLIMIT_CPU; so `#ifdef' its use [in 1.14.4]
-       - some versions of cpp expand parameters like \n if `n' is an
-         argument to the macro; change `n' to `num' in the definition
-         of print_rlimtype to compensate [in 1.14.4]
-
-builtins/read.def
-       - make sure the read loop sets `saw_escape' to note that an
-         escape character was read if CTLESC or CTLNUL is read [in 1.14.4]
-
-shell.c, sig.c
-       - only test interactive_shell before calling maybe_save_shell_history
-         [in 1.14.4]
-shell.c
-       - include <locale.h> if HAVE_LOCALE_H is defined
-       - call setlocale(LC_ALL, "") at the beginning of main() if
-         either _POSIX_VERSION or HAVE_SETLOCALE is defined
-
-support/mksysdefs
-       - look for <locale.h>, define HAVE_LOCALE_H if found
-
-cpp-Makefile
-       - pass HAVE_LOCALE_H through from sysdefs.h to the build process
-
-bashhist.c
-       - remove test against interactive_shell in maybe_save_shell_history
-         [in 1.14.4]
-
-variables.c
-       - moved definition of DEFAULT_MAIL_PATH to config.h
-
-config.h, config.h.mini
-       - now has definition of DEFAULT_MAIL_PATH [in 1.14.4]
-       - changed default value of PATH to
-         `/usr/gnu/bin:/usr/local/bin:/usr/ucb:/bin:/usr/bin:.'
-         [in 1.14.4]
-
-documentation/bash.1
-       - updated the example of the default path in the description of
-         the PATH variable
-
-lib/readline/readline.c
-       - set up a table of `legal' LC_CTYPE values and match the value of
-         $LC_CTYPE against it when deciding whether or not to default to
-         eight-bit input and output
-       - check for LC_ALL, LC_CTYPE, and LANG, in that order, for names to
-         check against the legal_lc_ctype_values table
-
-lib/readline/bind.c
-       - moved strindex, stricmp, and strnicmp to lib/readline/util.c, 
-         added _rl_ prefix to names
-       - some miscellaneous code cleanups and speedups
-
-lib/readline/rldefs.h
-       - define _POSIX_VDISABLE as _SVR4_VDISABLE if there is a define
-         for the latter and not the former [in 1.14.4]
-       - moved defining _rl_stricmp and _rl_strnicmp as strcasecmp and
-         strncasecmp, respectively, here from bind.c, since the functions
-         are now defined in util.c and used in two files
-
-builtins/common.c
-       - removed the \n case in double_quote, so a backslash is not added
-         before an existing newline.  The \<newline> pair is removed by
-         the parser before anything else in the shell gets hold of it
-         except within single quotes [in 1.14.4]
-
-                                  1/30
-                                  ----
-general.c
-       - make sure the string index in canonicalize_pathname never goes
-         < 0 (it can, in some cases, result in `start' being -1, and `i'
-         being set to that) [in 1.14.4]
-
-                                   2/1
-                                   ---
-execute_cmd.c
-       - fix a typo in a call to `access' in AFS-specific code [in 1.14.4]
-
-                                   2/3
-                                   ---
-builtins/shopt.def
-       - finally added new `shopt' builtin
-
-builtins/umask.def
-       - converted to use builtin_getopt
-
-bashhist.c
-       - support for storing literal newlines in the history list when
-         command_oriented_history is enabled, rather than using semicolons
-
-builtins/Makefile
-       - changed rule to make a .o file from a .def file to remove the
-         .c file if the compilation fails
-
-                                   2/6
-                                   ---
-bashhist.c
-       - added new variable `force_append_history' that will force the
-         history list to be appended to the history file at shell exit
-       - new function, maybe_append_history, to append any history lines
-         from the current session to the history file.  Used by history -a
-
-builtins/bind.def
-       - changed the `-d' option to -p
-
-builtins/set.def
-       - added `allenv' as a -o synonym for `set -k'.  Now all of the
-         single-letter shell options have -o equivalents
-
-builtins/shopt.def
-       - added -p option to display shell options, like other builtins
-       - added `interactive_comments' as a shell option, like set -o
-
-builtins/bind.def, builtins/history.def, builtins/enable.def
-       - changed use of multiple variables to hold option flag settings to
-         one variable with bits representing flag values
-
-documentation/bash.1, documentation/features.texi
-       - changed the description of the `bind' builtin for the new -p option
-       - changed the description of the `set' builtin for the new
-         `-o allenv' option
-       - updated the description of the `shopt' builtin
-
-builtins/history.def
-       - changed -a option to use maybe_append_history
-
-subst.c
-       - changed the substring/subarray code to make negative offsets
-         count backwards from the end of the string or array
-
-builtins/bashgetopt.c
-       - added option modifiers `;' (argument is optional) and `#'
-         (argument is optional, but if present must be numeric)
-
-builtins/hash.def
-       - converted to use builtin_getopt
-       - broke code out into a new function: add_hashed_command
-
-                                   2/7
-                                   ---
-builtins/getopt.c
-       - changed to save state to avoid relying on `nextchar' staying the
-         same across calls to sh_getopt [in 1.14.4]
-       - added a function to restore `nextchar' from this saved state
-         [in 1.14.4]
-       - removed some dead code
-
-builtins/getopts.def
-       - call function to restore sh_getopt state when parsing explicitly
-         supplied arguments rather than the positional parameters [in 1.14.4]
-
-lib/readline/vi_mode.c
-       - fixed an off-by-one error in _rl_vi_done_inserting that put the
-         \0 in vi_insert_buf at offset `len' instead of `len - 1'
-
-lib/readline/complete.c
-       - print_filename now filters out control characters and displays
-         them in printable format, rather than relying on the tty driver
-         to do the right thing [in 1.14.4]
-
-                                   2/8
-                                   ---
-lib/posixheaders/stdc.h
-       - test for each special keyword being defined individually, rather
-         than just testing on `const' [in 1.14.4]
-
-lib/readline/util.c
-       - new function _rl_abort_internal; rl_abort just calls this
-
-nojobs.c
-       - include error.h for extern function definitions [in 1.14.4]
-
-builtins/ulimit.def
-       - include <unistd.h> if HAVE_UNISTD_H is defined
-       - use HAVE_LIMITS_H to decide whether or not to include <limits.h>
-
-variables.c, subst.c, builtins/set.def
-       - removed special handling of `noclobber' variable
-
-builtins/set.def
-       - new function set_shellopts to set up the $SHELLOPTS variable
-         based on the values of the set -o options; `set' calls this
-         function whenever one of the options is changed
-       - new function parse_shellopts to take the value of SHELLOPTS and
-         turn on each option found therein
-       - new function initialize_shell_options to parse any inherited
-         value of $SHELLOPTS and set up $SHELLOPTS
-
-shell.c
-       - call initialize_shell_options at the end of shell_initialize()
-
-execute_cmd.c, general.c
-       - moved extract_colon_unit from execute_cmd.c to general.c
-
-execute_cmd.h, general.h
-       - moved extern declaration of extract_colon_unit from
-         execute_cmd.h to general.h
-
-documentation/{bash.1,features.texi}
-       - documented SHELLOPTS
-
-                                  2/18
-                                  ----
-builtins/{shopt,pushd,jobs,umask}.def
-       - removed the `longjobs', `longdirs', `pushd_home' and `symbolic_umask'
-         options
-
-lib/readline/{histexpand,histsearch,histfile}.c, lib/readline/histlib.h
-       - new files, split off from old history library history.c
-
-lib/readline/history.c, lib/readline/history.h
-       - new function clear_history() to clear the history list
-
-lib/readline/doc/hstech.texinfo
-       - documented clear_history ()
-
-builtins/pushd.def
-       - new function clear_directory_stack() to delete all elements of
-         the dir stack
-       - new -c option for `dirs' to clear directory stack
-       - new function get_dirstack_index for dirs -N and dirs +N to use
-       - new function get_dirstack_element(i, dir) for use by other parts of
-         the shell that want the functionality of dirs -N and dirs +N
-         (dir is 1 for dirs +N, -1 for dirs -N)
-       - new function set_dirstack_element(i, dir, val) for use by other
-         parts of the shell to change values in the dirstack (dir is -1
-         for dirs -N, +1 for dirs +N).  Used when assigning to $DIRSTACK.
-
-builtins/history.def
-       - new -c option to clear the history list
-
-documentation/bash.1, documentation/features.texi
-       - removed no-longer-valid shopt options
-       - documented new dirs -c option
-       - documented new history -c option
-       - documented new \T and \H prompt escape sequences
-       - documented new $DIRSTACK dynamic array variable
-       - documented the new expand-glob and list-glob readline commands
-
-variables.c
-       - set PS4 to its default value of `+ ', so that unsetting it will
-         disable the tracing characters [in 1.14.4]
-       - new framework for dynamic array variables -- each place an
-         array index is assigned to, a test is made.  if a dynamic
-         assignment function exists, it is called with args `self',
-         the index being assigned to, and the new value
-       - new variable `$DIRSTACK', a dynamic array variable that holds
-         the current contents of the directory stack.  You can even
-         change the stack by assigning to thie variable
-
-shell.c
-       - changed indirection_level_string to return the null string if
-         $PS4 is unset or null [in 1.14.4]
-
-parse.y
-       - new \H prompt escape for hostname up to first `.'; changed \h
-         to return full hostname (like \w/\W)
-       - new \T prompt escape for 12-hour time
-
-bashline.c
-       - new readline functions to expand glob patterns and insert or
-         list the expansions (special completion functions)
-
-
-                                  2/20
-                                  ----
-builtins/pushd.def
-       - new code for `pushd -n' and `popd -n' to inhibit cd when
-         adding or removing directories from the stack
-       - broke functionality off into separate functions for use by the
-         $DIRSTACK manipulation functions
-
-                                  2/21
-                                  ----
-lib/readline/kill.c
-       - new functions to copy words to the kill ring, backward or
-         forward
-
-lib/readline/readline.h
-       - extern declarations for rl_copy_{backward,forward}_word
-
-
-lib/readline/funmap.c
-       - new bindable readline commands: copy-backward-word and
-         copy-forward-word to copy portions of the line to the kill
-         ring without deleting them
-
-documentation/{bash.1,readline.3}, lib/readline/doc/hsuser.texinfo
-       - documented the new copy-backward-word and copy-forward-word
-         readline commands
-
-mailcheck.c, config.h
-       - the declaration of DEFAULT_MAIL_PATH is now only in config.h
-         and used by mailcheck.c and variables.c.  There is no need to
-         use DEFAULT_MAIL_PATH_LEN; `sizeof' does the job [in 1.14.4]
-
-                                  2/22
-                                  ----
-support/mksysdefs
-       - changes to fix `RELEASE' if it ends up being set to the empty string
-         [in 1.14.4]
-       - check for amdahl UTS [in 1.14.4]
-       - check for SGI Irix version 6.x [in 1.14.4]
-
-machines.h
-       - new entry for Amdahl UTS [in 1.14.4]
-       - changes to the SGI entry for Irix 6.x [in 1.14.4]
-
-                                  2/23
-                                  ----
-machines.h
-       - changes for BSD/OS 2.0 (M_OS now set to `BSD_OS') [in 1.14.4]
-
-support/mksysdefs
-       - change to recognize BSD/OS 2.0 and set SYSDEF to BSDI2 [in 1.14.4]
-
-siglist.h
-       - don't declare sys_siglist on BSD/OS 2.0 [in 1.14.4]
-
-                                  2/24
-                                  ----
-parse.y
-       - if reset_parser is called while the prompt command is being
-         executed because of a syntax error in $PROMPT_COMMAND, an
-         infinite loop results.  set token_to_read back to 0 at the
-         end of execute_prompt_command to stop the looping [in 1.14.4]
-
-                                  2/25
-                                  ----
-mailcheck.h
-       - new header file for mail-checking and related definitions
-       - declaration of DEFAULT_MAIL_PATH is now here
-
-mailcheck.c
-       - new function, make_default_mailpath, which constructs a default
-         $MAILPATH string from DEFAULT_MAIL_PATH [in 1.14.4]
-       - change remember_mail_dates to call make_default_mailpath
-         [in 1.14.4]
-
-externs.h
-       - moved function declarations for functions in mailcheck.c to
-         mailcheck.h
-
-variables.c
-       - change initialize_shell_variables to call make_default_mailpath
-         [in 1.14.4]
-       - removed some unneeded variables in initialize_shell_variables
-
-                                  2/26
-                                  ----
-lib/readline/callback.c
-       - new file with readline callback function interface
-
-lib/readline/rlconf.h
-       - new READLINE_CALLBACKS define for the readline callback code to
-         be compiled in and available
-
-lib/readline/readline.c
-       - broke readline_internal into three functions: readline_internal_setup,
-         readline_internal_charloop, and readline_internal_teardown
-       - changes for READLINE_CALLBACKS
-
-lib/readline/readline.h
-       - extern declarations for the readline callback code
-
-cpp-Makefile
-       - added lib/readline/callback.c to the list of readline files
-
-lib/readline/input.c
-       - added a layer of indirection to allow the user to specify the
-         function that reads a character from rl_instream.  The variable
-         name is rl_getc_function, set by default to rl_getc
-
-                                  2/27
-                                  ----
-lib/readline/display.c
-       - added a variable rl_redisplay_function to allow an application-
-         specified redisplay function, for those apps that want to control
-         redisplay
-
-lib/readline/readline.c
-       - extern declarations for rl_getc_function and rl_redisplay_function
-
-lib/readline/{readline,display,isearch,search,parens}.c
-       - changed to call through rl_redisplay_function rather than
-         rl_redisplay directly
-
-parse.y
-       - try to avoid some work in reset_readline_prompt and prompt_again
-         if the prompt is the empty or null string [in 1.14.4]
-
-lib/readline/readline.c
-       - call rl_expand_prompt unconditionally [in 1.14.4]
-
-lib/readline/display.c
-       - short-circuit out of rl_expand_prompt if the prompt string is null
-         after clearing out the saved local prompt values.  This allows
-         $PS2 to be set to "" [in 1.14.4]
-
-lib/readline/doc/rltech.texinfo
-       - documented the callback code and functions
-       - documented rl_getc_function and rl_redisplay_function
-
-lib/readline/{callback,readline,rltty,signals}.c
-       - added layer of indirction for terminal prep and deprep, with
-         rl_term_prep_function and rl_term_deprep_function.  These are
-         set by default to rl_prep_terminal and rl_deprep_terminal,
-         respectively
-
-lib/readline/readline.h
-       - make rl_term_prep_function and rl_term_deprep_function available
-         to callers
-
-                                   3/1
-                                   ---
-lib/readline/complete.c
-       - broke the (long, complicated) rl_complete_internal code into a
-         number of separate functions:
-
-               find_completion_word
-               gen_completion_matches
-               remove_duplicate_matches
-               display_matches
-               insert_text
-               insert_match
-               append_to_match
-               insert_all_matches
-
-       - made some efficiency improvments to filename_completion_function
-       - the completion ignore function is now called no matter what type
-         of completion is being performed (as it should have been all along)
-
-lib/readline/rldefs.h
-       - use #defines for the possible values ORed into `found_quote' by
-         the completion code
-
-                                   3/2
-                                   ---
-make_cmd.c, general.c
-       - moved make_word_array from make_cmd.c to general.c, renamed to
-         word_list_to_argv, extended it to optionally not malloc all of
-         the strings and to reserve space at the start of the array
-
-execute_cmd.c
-       - changed to use word_list_to_argv, not mallocing space for the
-         strings
-
-builtins/common.c, builtins/common.h
-       - new function make_builtin_argv, which uses word_list_to_argv
-         and reserves 1 slot at the beginning for the command name
-
-builtins/exec.def
-       - changed to use word_list_to_argv
-
-builtins/{getopts,test}.def
-       - changed to use make_builtin_argv
-
-subst.c
-       - new function match_pattern_char, to see if the first char of
-         a string has a chance to match a given pattern (test against
-         the first char of the pattern); used by match_pattern in the
-         MATCH_ANY case
-
-                                   3/3
-                                   ---
-jobs.c
-       - renamed flush_child to sigchld to capture the functionality better
-
-array.c
-       - new function array_pat_subst, to do pattern substitution on each
-         element in an array
-
-array.h
-       - extern declaration for array_pat_subst
-
-subst.c
-       - new function pat_subst to do pattern matching and substitution on
-         a string
-       - new function parameter_brace_pat_subst to implement
-         ${v/[/]pat[/sub]}; calls pat_subst for simple vars,
-         pos_params_pat_subst to do substitution on the positional params,
-         and array_pat_subst for things like ${v[@]/p/r}
-
-subst.h
-       - extern declaration for pat_subst so array.c can find it
-
-                                   3/6
-                                   ---
-parse.y
-       - <>filename now dups filename to file descriptor 0 for both input
-         and output even when not in posix.2 mode
-
-bashline.c
-       - add the globbing characters to the list of characters that need
-         to be quoted by filename completion
-
-jobs.h
-       - new convenience macros:
-               RUNNING, STOPPED, DEADJOB - to test a job's state
-               IS_FOREGROUND, IS_NOTIFIED, IS_JOBCONTROL - flags
-
-jobs.c, builtins/{kill,fg_bg}.def
-       - changed to use new jobs.h macros
-
-                                   3/7
-                                   ---
-array.c, array.h
-       - new function dup_array_subrange(a, s, e) to make a new array
-         out of the elements of array A between S and E, inclusive
-       - add `quoted' parameters to array_subrange and array_pat_subst
-         to preserve proper quoting of elements when expanding things
-         like "${av[@]/xx/yy}"
-       - new function array_quote to quote the members of an array like
-         the functions in subst.c
-
-subst.c
-       - pass the quoted flag to array_subrange and array_pat_subst
-       - quote_string is no longer static
-
-subst.h
-       - extern declaration for quote_string
-
-builtins/hash.def
-       - added a -p pathname option to specify a pathname for the command
-         name to be hashed.  With -p, no path search is performed.
-
-lib/readline/histexpand.c
-       - broke history_tokenize off into history_tokenize_internal and
-         added two arguments: a character index and a word index.  If
-         the char index is >= 0, the word index will be modified to point
-         into the returned array of strings to the word surrounding that
-         particular character index
-       - new function history_find_word(line, ind) to return the word 
-         containing the character at index IND in LINE
-       - new variable search_match, found by history_find_word, to hold the
-         word last matched by a !?string? search
-       - corrected a problem with the `%' modifier: it should insert the
-         word last matched, not the last search string
-
-                                   3/8
-                                   ---
-cpp-Makefile
-       - changed INSTALL_PROGRAM and INSTALL_DATA to use support/install.sh
-       - changed `install' target to not explicitly save the old version of
-         bash in `bash.old'; let install take care of it
-
-shell.c
-       - new static variable `running_under_emacs', set to 1 if the
-         variable `EMACS' is in the startup environment, and to 2 if
-         we're running under the `eterm' terminal emulator
-       - send an escape sequence to eterm if running_under_emacs is 2
-         after executing any $PROMPT_COMMAND to tell it the current
-         directory
-
-                                   3/9
-                                   ---
-builtins/ulimit.def
-       - made getting -u work for systems that have a MAXUPRC define.
-         it still cannot be set without RLIMIT_NPROC
-
-shell.c
-       - include trap.h for sig definitions
-
-builtins/common.h, subst.h, general.h, externs.h
-       - more extern function declarations
-
-bashhist.c
-       - new function, bash_history_disable(), to turn off history and
-         history expansion
-       - bash_history_disable now sets history_expansion_inhibited
-
-bashline.h
-       - new file with extern declarations from bashline.c
-
-parse.y, bashhist.c, builtins/bind.def, subst.c, sig.c
-       - include bashline.h
-
-                                  3/10
-                                  ----
-lib/glob/glob.h
-       - new file with extern declarations for local glob library
-
-shell.c
-       - include glob.h, mailcheck.h
-
-cpp-Makefile
-       - changes to dependencies due to mailcheck.h, bashline.h, glob.h
-
-                                  3/13
-                                  ----
-execute_cmd.c
-       - new function execute_connection to execute commands of type
-         cm_connection
-       - new function execute_pipeline, to execute pipelines
-
-lib/readline/rltty.c
-       - add a `tty' argument to the set_winsize function/macro, the
-         non-shell version needs it
-
-                                  3/14
-                                  ----
-parse.y
-       - added \a (bell) and \e (escape) prompt string escape sequences
-
-                                  3/16
-                                  ----
-lib/readline/display.c
-       - fixed bug in update_line that caused stray characters to be left on
-         lines after the first if characters are deleted so that the first
-         line becomes exactly as long as the screen width [in 1.14.4]
-
-lib/readline/doc-support
-       - brought in the GNU getopt because texindex needs it
-
-documentation/Makefile
-       - adopted the BSD convention of a suffix of `.0' for formatted
-         manual pages
-
-                                  3/17
-                                  ----
-support/inpath
-       - a script to find out if a particular command name appears in
-         a directory in $PATH [in 1.14.4]
-
-support/mksysdefs
-       - changed to use inpath to find `ranlib' [in 1.14.4]
-
-                                  3/18
-                                  ----
-bashline.c
-       - include bashline.h
-       - removed the DYNAMIC_HISTORY_COMPLETION define; that code is now
-         included unconditionally
-       - renamed ETCHOSTS to DEFAULT_HOSTS_FILE; moved definition to
-         bashline.h
-       - moved definition of BRACE_COMPLETION to config.h
-
-config.h
-       - conditional definition of BRACE_COMPLETION is now here
-
-pathnames.h
-       - new file with defines that are absolute pathnames
-
-shell.h
-       - include pathnames.h
-
-mailcheck.h
-       - def of DEFAULT_MAIL_PATH now moved to pathnames.h
-
-shell.c
-       - def of SYS_PROFILE moved to pathnames.h
-
-alias.h
-       - removed a bunch of extra definitions
-
-lib/readline/{vi_mode.c,bind.c}
-       - removed superfluous STATIC_MALLOC code
-
-variables.c
-       - removed SHADOWED_ENV code
-
-                                  3/20
-                                  ----
-machines.h
-       - don't define USG or USGr3 for linux machines [in 1.14.4]
-       - change REVERSED_SETVBUF_ARGS to SETVBUF_REVERSED for autoconf
-         compatibility
-
-shell.c
-       - change REVERSED_SETVBUF_ARGS to SETVBUF_REVERSED for autoconf
-         compatibility
-
-support/mksysdefs, maxpath.h
-       - change HAVE_SYS_PARAM to HAVE_SYS_PARAM_H for autoconf
-         compatibility
-
-support/mksysdefs, jobs.h
-       - use HAVE_SYS_WAIT_H
-
-machines.h, error.c
-       - change HAVE_VFPRINTF to HAVE_VPRINTF for autoconf compatibility
-
-test.c
-       - replace UID_T and GID_T with GETGROUPS_T, the size of the elements
-         of the array returned by getgroups
-
-general.c
-       - define HAVE_KILLPG if killpg() is present; compile in a replacement
-         killpg if not
-
-machines.h, jobs.c
-       - change BSD_GETPGRP to HAVE_BSD_PGRP
-
-sig.c
-       - don't call initialize_siglist if HAVE_SYS_SIGLIST is defined, no
-         longer use INITIALIZE_SIGLIST
-
-machines.h, lib/malloc/malloc.c
-       - change NO_SBRK_DECL to SBRK_DECLARED
-
-                                  3/22
-                                  ----
-machines.h
-       - BSD/OS 2.0 does not need INT_GROUPS_ARRAY in SYSDEP_CFLAGS
-
-lib/readline/rldefs.h
-       - don't check `Linux'; just include <termcap.h> if HAVE_TERMCAP_H
-         is defined
-
-builtins/command.def
-       - changed get_standard_path to use HAVE_CONFSTR 
-
-execute_cmd.c
-       - execute_simple_command no longer uses alloca
-       - don't check RISC6000 anymore when deciding whether to use
-         #pragma alloca
-
-execute_cmd.c, shell.c
-       - check for ultrix instead of Ultrix when calling alloca(0)
-
-jobs.h
-       - check HAVE_UNISTD_H to see whether to declare fork, getpid,
-         and getpgrp
-
-builtins/common.c
-       - include <signal.h> for NSIG
-
-sig.h
-       - don't define SIGABRT as SIGIOT unless SIGIOT is defined
-
-jobs.c
-       - check for ultrix instead of Ultrix
-
-                                  3/23
-                                  ----
-general.c, general.h
-       - new function check_dev_tty, which makes sure we can open
-         /dev/tty
-
-shell.c
-       - call check_dev_tty instead of having the code inline
-
-posixstat.h
-       - removed references to isc386
-
-general.h
-       - code to define one of TERMIOS_TTY_DRIVER, TERMIO_TTY_DRIVER,
-         or NEW_TTY_DRIVER
-
-jobs.c, nojobs.c
-       - use the general.h code to define the tty driver types
-
-                                  3/24
-                                  ----
-builtins/declare.def
-       - new -p option to display variables and their values and attributes
-         `declare -p xxx' displays attribs and value of var `xxx'
-
-builtins/setattr.def
-       - new function to display the attributes and value of a particular
-         variable; used by set_or_show_attributes
-       - new function to look up a variable by name and show that name's
-         attributes and value
-
-builtins/common.c
-       - declarations for new functions in setattr.def
-
-variables.c
-       - don't set a default value for MAILPATH in initialize_shell_variables;
-         let remember_mail_dates take care of it [in 1.14.4]
-
-mailcheck.c
-       - fixed an off-by-one bug in make_default_mailpath [in 1.14.4]
-
-                                  3/28
-                                  ----
-[changes for autoconf-generated config files]
-
-lib/malloc/malloc.c
-       - use HAVE_GETPAGESIZE, HAVE_BSD_SIGNALS, HAVE_POSIX_SIGNALS
-
-trap.c
-       - remove tests for USG and USGr4
-       - test on HAVE_POSIX_SIGNALS rather than _POSIX_VERSION
-       - use MUST_REINSTALL_SIGHANDLERS define to decide whether trap_handler
-         should call signal again
-
-getcwd.c
-       - redid the directory includes for autoconf compatibility
-       - use HAVE_LSTAT instead of testing for S_ISLNK
-       - use STRUCT_DIRENT_HAS_D_INO
-       - include memalloc.h for alloca define
-
-general.h
-       - cleaned up strchr, strrchr definitions
-       - removed tests against USG
-       - use HAVE_MEMMOVE instead of MEMMOVE_MISSING
-
-jobs.c
-       - use HAVE_WAIT3, MUST_REINSTALL_SIGHANDLERS, GETPGRP_VOID
-
-mailcheck.h
-       - removed definition of DEFAULT_MAIL_DIRECTORY; now set by
-         autoconf in config.h
-
-shell.c
-       - remove checks on USG, just check for HAVE_GETPW_DECLS
-       - use C_ALLOCA define
-       - redid the isnetconn() code using HAVE_SYS_SOCKET_H,
-         HAVE_GETPEERNAME, SVR4 and SVR4_2
-
-general.c
-       - use HAVE_KILLPG, HAVE_RESTARTABLE_SYSCALLS, HAVE_UNAME,
-         ULIMIT_MAXFDS, HAVE_TIMEVAL, HAVE_TIMES
-
-lib/readline/rldefs.h
-       - redid the tty driver definitions using HAVE_TERMIOS_H, etc.
-       - don't define anything having to do with signal type
-
-lib/glob/glob.c
-       - redid the DIRENT defines and includes
-       - redid other includes to remove dependencies on USG and system
-         type (e.g., NeXT)
-
-builtins/times.def
-       - changed to use HAVE_GETRUSAGE, HAVE_TIMEVAL, HAVE_TIMES, and
-         the autoconf way to include <sys/time.h> and <time.h>
-
-builtins/ulimit.def
-       - changed to use HAVE_GETRLIMIT
-       - removed test of USG being defined
-
-siglist.h
-       - changed to use SYS_SIGLIST_DECLARED, HAVE_UNDER_SYS_SIGLIST, and
-         HAVE_STRSIGNAL
-
-print_cmd.c
-       - use PRINTF_DECLARED
-
-builtins/command.def
-       - use HAVE_CONFSTR along with _CS_PATH to get the standard path
-
-execute_cmd.c
-       - only compile in execute_shell_script if HAVE_HASH_BANG_EXEC is not
-         defined
-
-nojobs.c
-       - use HAVE_SIGINTERRUPT, HAVE_KILLPG, HAVE_POSIX_SIGNALS,
-         MUST_REINSTALL_SIGHANDLERS, HAVE_WAITPID, *_TTY_DRIVER defines
-
-test.c
-       - set up a new `getmaxgroups' define, moving the code out of inline
-       - eliminate use of GETGROUPS_T
-
-variables.c
-       - use CAN_REDEFINE_GETENV
-
-sig.c, sig.h
-       - use HAVE_POSIX_SIGNALS, MUST_REINSTALL_SIGHANDLERS
-
-pathnames.h
-       - removed the default mail directory defines; now set by autoconf
-
-oslib.c
-       - new file, functions from general.c that are unix-version variable
-
-general.h
-       - slightly changed function declarations for use by oslib.c
-
-support/bashbug.sh
-       - changed @xxx@ to !xxx! for sed substitutions to avoid conflicts
-         with autoconf substitutions in the Makefile
-       - added MACHTYPE variable
-
-mailcheck.c
-       - changed DEFAULT_MAIL_PATH to DEFAULT_MAIL_DIRECTORY, since that
-         more clearly defines its function
-
-lib/readline/rltty.h
-       - new file, to include the correct tty driver #include file
-
-lib/readline/rltty.c
-       - include rltty.h
-
-lib/malloc/malloc.c
-       - make systems with Posix signals block all signals while malloc
-         is executing
-
-                                  3/29
-                                  ----
-input.c
-       - use off_t as the type of a seek offset, rather that int or long
-
-variables.c, oslib.c
-       - moved `getenv' from variables.c to oslib.c
-
-                                  3/31
-                                  ----
-sig.c, sig.h
-       - new function, jump_to_top_level, which just calls longjmp with
-         top_level as an argument -- here to isolate calls to longjmp
-
-subst.c
-       - replaced calls to longjmp with jump_to_top_level
-
-bashjmp.h
-       - new file with setjmp/longjmp defines and declarations
-
-shell.h, nojobs.c
-       - include bashjmp.h in place of setjmp.h
-
-shell.c, sig.c, execute_cmd.c, unwind_prot.h, expr.c,
-builtins/{return,source}.def
-       - change to use new defs in bashjmp.h
-
-subst.c
-       - make sure PAT and REP in pattern substitution are run through
-         expand_string_unsplit
-
-builtins/set.def
-       - don't try to blindly dereference the value returned by
-         find_flags in set_shellopts
-
-                                   4/2
-                                   ---
-aclocal.m4, config.h.in, config.h.top, config.h.bot, configure.in,
-support/install.sh, support/config.guess, support/config.sub
-       - new files for (now official) autoconf-based configuration
-
-Makefile.in, builtins/Makefile.in,
-lib/{doc-support,malloc,glob,termcap,tilde,readline}/Makefile.in
-       - new Makefiles for autoconf
-
-[additionally, all source files now include config.h]
-
-                                   4/3
-                                   ---
-array.c, array.h
-       - index_t --> arrayind_t, because some systems define index_t in
-         <sys/types.h>
-
-                                   4/4
-                                   ---
-aclocal.m4
-       - fix test for broken dup2
-
-lib/*/Makefile.in
-       - make all object files depend on $(BUILD_DIR)/config.h
-
-                                   4/5
-                                   ---
-array.c
-       - fixed problems in empty_array: need to reset max_index
-         and max_size, and remove the links in the element chain
-         after freeing them
-
-jobs.c
-       - new functions to save an array of status values for each
-         foreground job that exits (degenerate case is to have a
-         single-process job exit and have a 1-element array)
-       - new function to set a shell array variable `PIPESTATUS'
-         which holds the status values from each member of the
-         last-executed pipeline that spawned children
-
-documentation/bash.1
-       - documented $PIPESTATUS
-
-                                   4/6
-                                   ---
-configure.in
-       - added new --with-afs argument to #define AFS for execute_cmd.c
-
-                                  4/10
-                                  ----
-builtins/ulimit.def
-       - use sysconf(_SC_CHILD_MAX) to find the maximum number of child
-         proceeses per user if HAVE_SYSCONF and _SC_CHILD_MAX are both
-         defined and RLIMIT_NPROC is not
-
-                                  4/12
-                                  ----
-lib/readline/undo.c
-       - new variable, local to library, to keep track of the number of
-         `open' undo groups (UNDO_BEGIN without corresponding UNDO_END)
-       - new function _rl_fix_last_undo_of_type to modify start and end
-         bounds of last undo record of a specified type
-
-lib/readline/vi_mode.c
-       - _rl_vi_done_inserting now calls rl_end_undo_group if the count
-         of unclosed groups is > 0
-       - fixed rl_vi_change_to to save an undo record when redoing and
-         to fix the buffer corruption when doing `u' undo after a `.'
-         redo of `C'
-
-                                  4/13
-                                  ----
-unwind_prot.h
-       - changed to use a union { char *s; int i; } when unwind-protecting
-         integers to force correct alignment on machines where ints and
-         pointers differ in size
-
-lib/readline/readline.c
-       - new variable Keymap rl_executing_keymap, which is set to the
-         keymap the last function was invoked out of
-
-lib/readline/bind.c
-       - new variable Keymap rl_binding_keymap, which is set to the last
-         keymap a function and key sequence were bound in
-
-                                  4/17
-                                  ----
-general.c
-       - removed xmalloc, xrealloc, xfree to xmalloc.c
-
-lib/malloc/Makefile.in
-       - MALLOC and ALLOCA are both set by autoconf
-       - need to provide some empty stub file to make up the library
-         in case neither malloc.c and alloca.c are compiled into the
-         shell
-
-lib/malloc/gmalloc.c
-       - new file, GNU libc malloc code
-
-Makefile.in
-       - new source file, xmalloc.c, new object file, xmalloc.o
-
-general.h
-       - changed type of size argument to xmalloc, xrealloc to `size_t'
-
-configure.in
-       - changes for new argument `--with-glibc-malloc' that includes
-         gmalloc.o in libmalloc.a
-
-                                  4/18
-                                  ----
-xmalloc.c
-       - if malloc or realloc return null, report in the error message
-         how many bytes have been allocated
-
-lib/readline/display.c
-       - changed redisplay code to use an array of positions in the visible
-         and invisible lines at which to break lines instead of simply
-         calculating based on the screenwidth and number of invisible
-         characters.  In the future, this will allow newlines embedded in
-         the lines to display to be handled better
-
-[Bash-1.14.4 released to net]
-
-                                  4/19
-                                  ----
-lib/readline/signals.c
-       - changed last call to signal() to call rl_set_sighandler()
-
-                                  4/20
-                                  ----
-lib/readline/display.c
-       - changed some ascii-specific code to use CTRL_CHAR and UNCTRL
-       - finished up the changes that keep an array of line breaks
-
-shell.h
-       - moved #define constants for parameter pattern substitution here
-         from subst.c
-
-subst.c
-       - changed the pattern substitution functions to take a `flags'
-         parameter, which subsumes the match type, global replacement
-         flag, and quoted variables
-       - changed the pattern substitution functions to handle the `#'
-         and `%' match qualifiers, which anchor the match at the
-         beginning and end of the string, respectively
-
-shell.c
-       - moved the code that turns off privileged mode into a function
-         named `disable_priv_mode'
-       - if the shell is running setuid or setgid and `-p' is not
-         supplied, turn off privileged mode and reset the effective
-         uid/gid
-
-                                  4/21
-                                  ----
-subst.c
-       - added a `quoted' paramter to parameter_brace_remove_pattern;
-         Posix.2 says that the pattern is parsed differently if the
-         entire expression is double-quoted
-       - `getpattern' now takes a second argument, `quoted'
-       - fixed `getpattern' to correctly handles a pattern spec when
-         the whole expression is double-quoted.  Posix.2 says that
-         quote characters inside the pattern spec don't quote any
-         special pattern chars if the whole thing is double-quoted.
-         For example, the `*' in "${foo#'*'}" is not quoted, and the
-         single quotes must appear literally.
-
-Makefile.in
-       - add `documentation' as a dependency of `.made'
-
-                                  4/24
-                                  ----
-Makefile.in
-       - added `installdirs' target that makes bindir, infodir, mandir,
-         and man3dir [in 1.14.5 cpp-Makefile]
-
-                                  4/25
-                                  ----
-builtins/fc.def
-       - fixed problem with `fc -l' that occurred when fewer than 16 lines
-         were in the history list [in 1.14.5]
-
-                                   5/1
-                                   ---
-Makefile.in, {builtins,documentation}/Makefile.in, lib/*/Makefile.in
-       - fixed up the various `clean' targets to agree with Gnu coding
-         standards
-
-                                   5/2
-                                   ---
-lib/readline/complete.c
-       - made insert_all_matches correctly quote each of the filenames
-         inserted into the line, if necessary
-
-config.h.top
-       - surround definitions of DEFAULT_PATH_VALUE and STANDARD_UTILS_PATH
-         with #ifndef/#endif to allow them to be overridden from the command
-         line
-
-builtins/set.def
-       - changed set -o allenv to set -o keyword for ksh88 compatibility
-
-documentation/{bash.1,features.texi}
-       - changed set -o allenv to set -o keyword
-
-builtins/setattr.def
-       - added a `nodefs' attribute to set_or_show_attributes,
-         show_var_attributes, and show_name_attributes to inhibit printing
-         of definition as well as name
-
-builtins/declare.def
-       - changed calls to set_or_show_attributes, and show_var_attributes
-         accordingly
-
-                                   5/3
-                                   ---
-Makefile.in
-       - LIBPATH -> LIBSUBDIR
-
-                                   5/4
-                                   ---
-lib/readline/bind.c
-       - renamed readline variable meta-flag to be input-meta
-
-documentation/bash.1, lib/readline/doc/rluser.texinfo
-       - changed meta-flag to input-meta
-
-documentation/Makefile.in
-       - use groff -Tascii to convert .1 -> .0
-
-subst.c
-       - new function, strip_trailing_ifs_whitespace, does the obvious
-
-builtins/read.def
-       - call strip_trailing_ifs_whitespace before assigning last
-         variable to remainder of input string [in 1.14.5]
-
-                                   5/5
-                                   ---
-builtins/hashcom.h
-       - changed check_dot member of the PATH_DATA struct to flags, and
-         added a HASH_CHKDOT define to replace the check_dot semantics
-       - add HASH_RELPATH define for flags value
-
-builtins/hash.def, builtins/common.c
-       - instead of xxx->check_dot, use (xxx->flags & HASH_CHKDOT)
-
-builtins/hash.def
-       - if the full pathname to which a command is being hashed does
-         not begin with a `/', set the HASH_RELPATH flag for it
-
-builtins/common.c
-       - if a hashed filename as HASH_RELPATH set, check ./filename,
-         returning null if that filename is not executable
-
-execute_cmd.c, general.c, execute_cmd.h, general.h
-       - moved same_file and check_binary_file from execute_cmd.c to
-         general.c
-
-hashlib.c, Makefile.in
-       - renamed hash.c to hashlib.c
-
-hashlib.h, Makefile.in, builtins/Makefile.in, alias.h, variables.h,
-execute_cmd.c, hashlib.c, builtins/hashcom.h
-       - renamed hash.h to hashlib.h
-
-variables.c, alias.c
-       - removed inclusion of `hash.h'; header files already include
-         correct file
-
-Makefile.in
-       - new rule to remake all the Makefiles (`make Makefiles')
-       - more changes to adhere to GNU coding standards for the various
-         flavors of `clean' targets
-
-                                   5/8
-                                   ---
-documentation/Makefile.in
-       - use `texi2dvi' to make dvi files rather than tex and texindex
-         [in 1.14.5]
-       - don't install `bash_builtins.1' [in 1.14.5]
-
-Makefile.in
-       - removed instances of doc-support/texindex
-
-                                   5/9
-                                   ---
-make_cmd.c
-       - new function make_bare_word, to make a WORD_DESC from a string but
-         not to set any of its flags
-       - broke make_word into make_bare_word and make_word_flags
-       - fixed a bug in make_word_flags to make backslash-quoting a quoting
-         character work right to not set the W_QUOTED flags
-
-subst.c, array.c, execute_cmd.c
-       - call make_bare_word instead of make_word in situations where we
-         don't want the flags set inadvertently
-
-                                  5/11
-                                  ----
-subst.c
-       - removed special handling of $POSIX_PEDANTIC
-
-                                  5/12
-                                  ----
-shell.c
-       - broke the code that fetches the uids and gids into a new
-         function, uidget()
-
-subst.c
-       - EUID and UID are no longer handled specially, since they're
-         readonly
-       - removed sv_uids function
-       - merge sv_histfilesize into sv_histsize
-
-variables.c
-       - instead of calling sv_uids from initialize_shell_variables,
-         call uidset() instead
-       - sv_uids -> uidset with mods to make it faster and avoid an
-         extra call to free, malloc, and itos
-
-bashhist.c
-       - call sv_histsize instead of sv_histfilesize
-
-                                  5/13
-                                  ----
-pathexp.c
-       - moved setup_ignore_patterns here from bashline.c, so GLOBIGNORE
-         works even when readline is compiled out of the shell
-       - changed the ignore data structure to a `struct ignorevar',
-         defined in pathexp.h
-       - added functions to implement GLOBIGNORE
-
-bashline.c
-       - setup_ignore_patterns now in pathexp.c
-       - renamed _ignore_names to ignore_completion_names
-
-subst.c
-       - new function sv_globignore to be called when GLOBIGNORE changes
-         value
-
-documentation/{bash.1,features.texi}
-       - documented GLOBIGNORE
-
-                                  5/15
-                                  ----
-documentation/texinfo.tex
-       - upgraded to version 2.145 from autoconf-2.3 distribution
-
-                                  5/16
-                                  ----
-lib/readline/display.c
-       - delicate surgery on rl_redisplay, update_line, and _rl_update_final
-         to convert to using the line breaks array instead of assuming that
-         lines wrap because they're too long and using absolute buffer
-         positioning calculated from the screen width.  Now the `lithist'
-         shopt option works right
-
-lib/readline/complete.c
-       - make sure insert_match doesn't double an opening quote character
-         after make_quoted_replacement adds an opening quote [in 1.14.5]
-       - make sure append_match doesn't double a closing quote character
-         [in 1.14.5]
-
-quit.h
-       - new macros: SETINTERRUPT, CLRINTERRUPT, ADDINTERRUPT, DELINTERRUPT
-         to manipulate the value of interrupt_state
-
-trap.c, sig.c, jobs.c
-       - changes to use the new macros from quit.h
-
-jobs.c
-       - make an a job that exits due to SIGINT make the shell act as if
-         it received the interrupt itself, but only if SIGINT is not
-         trapped [in 1.14.5]
-
-                                  5/18
-                                  ----
-builtins/common.c
-       - fix up find_hashed_filename and the HASH_RELPATH code.  still need
-         to use `shopt -s checkhash' to check the hashed pathnames.  could
-         fix this up more to make that unnecessary in the HASH_RELPATH case
-
-subst.c
-       - new function get_array_value that does array subscripting for
-         things like aa[1], for use by other parts of the shell like the
-         expression evaluator
-
-expr.c
-       - changes to make things like $(( aa[1] + aa[2])) work without
-         using ${aa[1]}
-
-bashhist.c
-       - converted the HISTIGNORE code to use the `struct ignorevar'
-         framework, with a callback function histignore_item_func to
-         set the HIGN_EXPAND flag if needed
-
-pathexp.c
-       - made the `globignore' variable static
-       - redid the code that removes ignored names from the `names' array
-         in ignore_globbed_names to make it more efficient
-
-bashline.c
-       - made the `fignore' variable static
-
-                                  5/20
-                                  ----
-Makefile.in
-       - made the `distclean' target remove the Makefiles in subdirectories
-         created by autoconf
-
-                                  5/22
-                                  ----
-builtins/command.def
-       - don't allow `command -p' if the shell is restricted
-
-documentation/bash.1
-       - documented the restriction on command -p for rbash
-
-                                  5/23
-                                  ----
-aclocal.m4
-       - add a new macro BASH_CHECK_TYPE, based on AC_CHECK_TYPE, that
-         allows the caller to specify the header files to be included
-         in the test program and provides for a default value to be
-         defined if the type is found in the system files
-
-configure.in
-       - check for getrusage and gettimeofday functions/syscalls
-       - use BASH_CHECK_TYPE to check for clock_t in sys/types.h and
-         sys/times.h
-       - use BASH_CHECK_TYPE to check for sigset_t instead of a special
-         BASH_TYPE_SIGSET_T
-       - use BASH_CHECK_TYPE to check for quad_t instead of BASH_QUAD_T
-       - new argument --enable-command-timing to compile in the `time'
-         reserved word and command timing
-
-general.c
-       - print_time_in_hz takes a `clock_t', not a `time_t'
-
-execute_cmd.c
-       - support for timing pipelines with a new function time_command
-       - execute_command_internal calls time_command if it is passed a
-         command with the CMD_TIME_PIPELINE bit set in command->flags
-       - new functions difftimeval and addtimeval to do arithmetic on
-         timeval structs with overflow
-
-parse.y
-       - new production: pipeline_command, used by list1 and simple_list1
-       - pipeline_command includes rules to handle `!' and time
-       - code to recognize `time' as a reserved word
-
-print_cmd.c
-       - new code to print `time ' before a command if the CMD_TIME_PIPELINE
-         flag bit is turned on
-
-builtins/test.def
-       - added description of string1 < string2 and string1 > string2 to
-         the long doc
-
-test.c
-       - added `<' and `>' string binary operators
-
-documentation/bash.1
-       - documented the `time' reserved word and command timing
-       - documented the new test `<' and `>' binary operators
-
-documentation/features.texi
-       - documented the `time' reserved word and command timing
-       - added more to the section detailing the differences between bash
-         and sh
-       - added descriptions of LINENO and ENV to the Ksh variables section
-       - added description of echo to bash builtins section
-       - added PPID, BASH, SHLVL to the Bash variables section
-
-subst.c
-       - added a `quoted' parameter to extract_dollar_brace_string; changed
-         all calls to it
-
-                                  5/24
-                                  ----
-builtins/let.def
-       - wrote code for an `exp' builtin that treats all of its arguments
-         as an expression, concatenates them like `eval', and runs the
-         expression evaluator
-
-expr.c
-       - added code to do the Posix.2 conditional operator: expr?expr:expr
-       - added a `noeval' flag to suppress evaluation.  currently it only
-         suppresses assignment
-       - added code to the && and || functions so that evaluation is
-         suppressed in the part of the statement that is not supposed to
-         be executed (a && b: set noeval if a is false; a || b; set
-         noeval if a is true)
-
-                                  5/25
-                                  ----
-documentation/{bash.1,features.texi}
-       - documented new `expr?expr:expr' conditional expression syntax
-         now arithmetic evaluation is Posix.2-conformant
-
-lib/readline/readline.c
-       - added several more locale names to the list of legal $LANG
-         values
-
-subst.c
-       - fixed a bug in parameter_brace_patsub: when replacing a string 
-         with nothing, rep was set to "", and the code attempted to
-         free "", which the GNU malloc upchucked on
-
-bashhist.c
-       - just add a line to the history if command_oriented_history is
-         set to 1 and the current line in the command is > 1; don't
-         even bother checking history_ignore
-
-parse.y
-       - new variable `two_tokens_ago' to remember the token read before
-         `token_before_that'
-       - fix to history_delimiting_chars to make sure that no semicolon
-         is added after `()' (assume its a function definition), but that
-         a semicolon is added after other `)' (assume its a parenthesized
-         command)
-
-                                  5/31
-                                  ----
-tests/run-all
-       - put `.' first in $PATH and don't export ENV
-       - set THIS_SH to ../bash if it's unset
-
-lib/readline/complete.c
-       - only try to find a word break character in rl_complete_internal
-         if we hit the end of the input string and found_quote == 0
-         (the opening quote could have been the last character in the
-         string)
-
-                                   6/2
-                                   ---
-subst.c
-       - changed make_quoted_char to return CTLNUL\0 if passed a \0
-         (this is what quote_string does, too) [in 1.14.5]
-       - changed list_string to use make_quoted_char when adding a quoted
-         null argument due to a null field when ifs != ' \t\n'
-       - added an `expandpat' argument to getpattern, which tells it to
-         call string_extract_double_quoted if the pattern expression is
-         double-quoted, and changed all calls to initially pass `1' as
-         its value
-
-jobs.c
-       - changed start_job so that an attempt to start a job marked as
-         JDEAD elicits an error message [in 1.14.5]
-
-Makefile.in
-       - fixed `distclean' target so that it removes Makefiles in subdirs
-         *after* descending into them to do submakes (!)
-       - fixed `realclean' target to remove everything that distclean does
-
-                                   6/5
-                                   ---
-builtins/declare.def
-       - fixed a typo that made `declare +r var' turn off read-only status
-         for a variable [in 1.14.5]
-       - added -p option to short doc and long doc
-       - added code to allow `declare -f -options name' to set and unset
-         attributes for the named functions.  Only when no other options
-         are supplied will the named and value of the function be displayed
-         [in 1.14.5]
-
-variables.h
-       - new SETVARATTR macro to set or unset attributes for a specific
-         SHELL_VAR *
-
-builtins/setattr.def
-       - use SETVARATTR
-
-                                   6/7
-                                   ---
-execute_cmd.c
-       - moved the retrieval of $PS3 inside the loop in execute_select_command
-         so that PS3 can be modified in the select command's body
-         [in 1.14.5]
-
-execute_cmd.c
-       - changed execute_builtin and execute_function to not set
-         builtin_env and function_env, respectively, to NULL if there is
-         no temporary env.  This makes the temp env persist across calls
-         to functions from other functions [in 1.14.5]
-
-configure.in
-       - Linux needs LOCAL_LDFLAGS set to -rdynamic
-
-                                   6/8
-                                   ---
-general.c
-       - canonicalize_pathname should not attempt to interpret backslash
-         quoting `/', since Unix doesn't really allow it [in 1.14.5]
-
-bashline.c
-       - added `\', `!', and `)' to the list of characters which
-         cause filenames to be quoted
-       - changed bash_quote_filename to use any of the three shell
-         quoting styles based on the value of a variable,
-         completion_quoting_style
-       - if *qcp is not 0 when passed to bash_quote_filename, adjust the
-         type of completion we're doing based on its value (i.e.,
-         *qcp == '"' forces double quoting, *qcp == '\'' forces single)
-       - bash_quote_filename now leaves the quotes intact in the filename
-         it returns.  The readline completion code takes care of avoiding
-         doubled open quotes
-       - if a filename containing a `!' is passed to bash_quote_filename
-         without an opening quote character, and we are performing history
-         expansion, use single quoting as the quoting style
-
-bashhist.c
-       - changed bash_history_disable to not call bash_history_reinit(0),
-         but do what it needs to directly
-       - new function bash_history_enable
-       - make history_expansion_inhibited exist only if BANG_HISTORY
-         is defined
-
-bashhist.h
-       - extern declaration for bash_history_enable
-
-lib/readline/complete.c
-       - make make_quoted_replacement set should_quote to 1 if the quote
-         character is `'' as well as if it's `"'
-
-test.c
-       - added the csh-like `=~' and `!~' pattern-matching binary operators
-         which match the string on the lhs against the shell pattern on
-         the rhs.  PATTERN_MATCHING must be defined for this to work; it is
-         undefined and undocumented by default
-
-jobs.c
-       - broke the code that gets the new window size and sets $LINES and
-         $COLUMNS out of sigwinch_sighandler into a new function,
-         get_window_size, which sigwinch_sighandler calls
-
-                                  6/12
-                                  ----
-parse.y
-       - new function, pop_expansion, to remove the top string on the
-         expanded token stack
-       - renamed save_expansion to push_expansion
-
-lib/readline/complete.c
-       - fixed a bug in find_completion_word that tested found_quote
-         instead of quote_char when trying to decide if we have an unclosed
-         quoted string [in 1.14.6]
-
-                                  6/26
-                                  ----
-subst.c
-       - fixed expand_word_internal to remove all traces of $*, even if
-         it's quoted, if there are no positional parameters and there are
-         other characters in the expansion
-
-bashline.c
-       - don't attempt hostname completion if multiple consecutive `@'
-         characters appear
-
-                                  6/27
-                                  ----
-shell.c
-       - initialize top_level early, and exit if a longjmp sends us there
-         before we reinitialize
-
-subst.c
-       - more fixes to expansion of quoted $* when no positional parameters
-       - broke the code that assigns a value to an array element (and parses
-         the array element reference) into a new function,
-         do_array_element_assignment
-
-builtins/read.def
-       - new function, bind_read_variable, to allow binding simple variables
-         and array elements to strings read (uses do_array_element_assignment)
-       - changed occurrences of bind_variable to bind_read_variable where
-         it matters
-
-variables.c
-       - tentative change to bind_variable to make x=y the same as x[0]=y
-         if x is already an array variable.  This works for `read' as well.
-         This is what ksh does.
-
-                                  6/28
-                                  ----
-alias.h
-       - added a `flags' member to the ASSOC struct and renamed it to
-         `alias_t'
-
-alias.c, bashline.c, builtins/alias.def, builtins/type.def
-       - changed ASSOC to alias_t
-
-alias.c
-       - changed add_alias to set the AL_EXPANDNEXT flag when the alias is
-         inserted into the hash table
-
-parse.y
-       - added a third parameter to push_string: a pointer to the alias_t
-         that is being expanded
-       - push_string marks the alias it's passed as being expanded
-         (AL_BEINGEXPANDED)
-       - pop_string marks the alias being popped as no longer being
-         expanded
-       - changed shell_getc to defer popping an alias expansion until
-         the parser has had a chance to catch up, since the parser reads
-         ahead and would cause the expansion to be popped before it
-         fully parsed the expanded string
-       - changed alias_expand_word to check the AL_BEINGEXPANDED flag
-         instead of the expanded_token_stack when checking whether an
-         alias is already being expanded
-
-oslib.c
-       - make the definition of bzero be surrounded by #ifdef HAVE_BZERO
-         rather than lumping it in with bcopy
-
-configure.in
-       - add a test for bzero
-
-config.h.in
-       - add a template for HAVE_BZERO
-
-                                   7/3
-                                   ---
-builtins/set.def
-       - added new meaning for `set +o' without options, as per the latest
-         draft of Posix.2.  It means to list -o options as a series of set
-         commands to recreate the current settings
-
-documentation/bash.1
-       - augmented description of the `set' builtin
-
-                                   7/6
-                                   ---
-jobs.c
-       - make sure that temp_handler is not set to SIG_DFL before calling
-         it from waitchld
-
-builtins/cd.def
-       - rewrote cd_builtin to make the code flow clearer
-       - broke full directory name construction out into a separate
-         function: mkpath
-       - cd_builtin now tests that a directory constructed from a $CDPATH
-         entry is actually a directory before trying to chdir to it
-       - added an error message if $HOME is not set
-       - added a descriptive error message if `cd -' used and OLDPWD unset
-       - changed the error messages to use builtin_error, not file_error
-       - moved the code at the bind_and_exit label into a function,
-         bindpwd (no_symlinks)
-       - Posix.2 says that when using $CDPATH, the resultant value of PWD
-         should have no symlinks
-
-                                   7/7
-                                   ---
-input.c
-       - if fd_to_buffered_stream fails in some way and returns a NULL
-         buffered stream, with_input_from_buffered_stream uses a function
-         that does nothing but return EOF as the `getter'.  This keeps
-         the shell from crashing if invoked with fd 0 closed
-
-subst.c
-       - made the `quoted' parameter to expand_word_internal into a flags
-         word with flag values defined in shell.h.  Each place where
-         `quoted' is tested for a non-zero value was changed to test
-         (quoted & (Q_HERE_DOCUMENT|Q_DOUBLE_QUOTES)) != 0 instead
-
-mailcheck.c, shell.c, parse.y
-       - change calls to the expand_string* functions to pass an explicit
-         Q_DOUBLE_QUOTES where appropriate
-
-                                   7/9
-                                   ---
-subst.c
-       - getpattern now passes Q_NOQUOTE to expand_word_internal, indicating
-         that quotes in the pattern spec are not to be treated specially
-
-                                  7/12
-                                  ----
-jobs.c
-       - fixed up the MUST_UNBLOCK_CHILD code in wait_for so that it now
-         unblocks all signals and sets the signal handler for SIGCHLD to
-         SIG_DFL.  pre-v4 SCO machines seem to require this [in 1.14.5]
-
-[Bash-1.14.5 released to net 7/16]
-
-                                  7/17
-                                  ----
-documentation/features.texi
-       - changed the Bourne Shell builtins section to have the same format
-         as the bash builtins section, with usage synopses
-       - added a section on the restricted shell
-
-                                  7/18
-                                  ----
-documentation/features.texi
-       - changed the name of this document to the Bash Reference Manual
-       - added sections on POSIX mode and restricted shell
-
-lib/readline/doc/hsuser.texinfo
-       - added the text from the bash manual page about the bash history
-         facilities if BashFeatures is set
-
-                                  7/19
-                                  ----
-documentation/features.texi
-       - added more stuff to the bash basics section
-
-lib/readline/doc/rluser.texinfo
-       - added a sample inputrc file
-
-                                  7/20
-                                  ----
-documentation/features.texi
-       - added section on shell expansions to bash basics section
-
-builtins/Makefile.in, lib/glob/Makefile.in, lib/malloc/Makefile.in,
-lib/readline/Makefile.in, lib/termcap/Makefile.in, lib/tilde/Makefile.in
-       - ar is now called with flags `cr' when building libraries
-
-                                  7/21
-                                  ----
-lib/readline/complete.c
-       - fixed a bug in find_completion_word that resulted in the found_quote
-         flag and the delimiter character not being passed back to the
-         caller (tested (*fp) instead of (fp) before assigning found_quote;
-         similarly for dp).  With this fix, the filename dequoting function
-         is properly called
-
-                                  7/25
-                                  ----
-general.c
-       - renamed bash_tilde_expand to bash_tilde_expansion_failure_hook
-       - new function, bash_tilde_expand, that just sets interrupt_immediately
-         and calls tilde_expand, returning what tilde_expand returns
-
-subst.c, general.c, shell.c, execute_cmd.c, variables.c, bashline.c,
-builtins/cd.def
-       - changed calls to tilde_expand to calls to bash_tilde_expand instead
-
-                                  7/27
-                                  ----
-builtins/set.def
-       - added a -o history option to enable and disable command history
-         saving.  This uses bash_history_enable() and bash_history_disable()
-         It's keyed off of remember_on_history.  With this, shell scripts 
-         can use the command history
-
-bashhist.c
-       - bash_history_enable now calls sv_history_control and sv_histignore
-
-builtins/fc.def
-       - if history_list() returns a null pointer, immediately return
-         [in 1.14.6]
-
-documentation/{bash.1,features.texi}, lib/readline/doc/hsuser.texinfo
-       - added a description of the `set -o history' option and changed
-         text to refer to it rather than strictly interactive shells
-
-                                   8/1
-                                   ---
-variables.c
-       - new builtin variable $HOSTNAME, initialized to current_host_name
-         as set in shell.c
-
-documentation/bash.1, documentation/features.texi
-       - documented $HOSTNAME
-
-                                   8/3
-                                   ---
-support/texi2html
-       - new program, a texinfo-html converter
-
-documentation/Makefile.in
-       - added directives to produce features.html from features.texi
-
-MANIFEST.doc
-       - added features.html and features_toc.html to the doc distribution
-
-                                  8/10
-                                  ----
-lib/readline/bind.c
-       - new functions rl_variable_dumper and rl_dump_variables to print
-         readline variables and their values to rl_outstream
-       - new functions rl_get_keymap_name and rl_get_keymap_name_from_edit_mode
-         to get the name of the current keymap for the variable dumper
-
-lib/readline/readline.h
-       - extern declarations for rl_variable_dumper, rl_dump_variables, and
-         rl_get_keymap_name
-
-builtins/bind.def
-       - added -V flag to print variable names and bindings
-       - added -P flag to print variable names and bindings in the syntax
-         of the inputrc file
-
-lib/readline/funmap.c
-       - added new bindable `dump-variables' readline command
-
-documentation/{bash.{1,html},readline.3,features.html},
-lib/readline/doc/rluser.texinfo
-       - documented new `dump-variables' readline command
-
-documentation/{bash.{1,html},features.{texi,html}
-       - documented new bind -P and -V options
-
-documentation/bashbug.1
-       - new manual page
-
-documentation/Makefile.in
-       - changes to build and install bashbug.1
-
-                                  8/15
-                                  ----
-print_cmd.c
-       - new function `xprintf' that just calls vfprintf(stdout, ...)
-         to avoid having to declare printf
-
-parse.y
-       - slight change in how read_token_word computes `all_digits'
-
-                                  8/21
-                                  ----
-
-subst.c
-       - new function dequote_escapes to remove CTLESC escaping
-         CTLESC and CTLNUL in a string, returning a new string
-
-                                  8/25
-                                  ----
-shell.c
-       - execute the file SYS_BASHRC for interactive shells if SYS_BASHRC
-         is defined, before executing ~/.bashrc
-
-config.h.top
-       - add a dummy commented definition for SYS_BASHRC, defaulting to
-         /etc/bash.bashrc
-
-lib/readline/input.c
-       - added code to call select() in rl_gather_tyi() and return
-         immediately if it indicates that there is nothing to read on
-         the readline input fd (#ifdef HAVE_SELECT)
-
-lib/posixheaders/posixdir.h
-       - new file to localize the <dirent.h>/<sys/dir.h> and dirent/direct
-         mess
-
-posixdir.h, lib/readline/posixdir.h
-       - symlinks to lib/posixheaders/posixdir.h
-
-lib/readline/rldefs.h
-       - removed the posix dir includes and defines
-
-lib/readline/complete.c, getcwd.c
-       - include posixdir.h rather than having the code inline
-
-builtins/cd.def
-       - new code to do spelling correction on the directory name
-         modified from patch sent by Neil Russell (caret@c-side.com)
-
-                                  8/29
-                                  ----
-builtins/shopt.def
-       - new option `cdspell' to toggle cd directory name spelling
-         correction
-
-documentation/{bash.{1,html},features.texi}
-       - documented new shopt `cdspell' option
-
-                                   9/5
-                                   ---
-subst.c
-       - $'' should expand to the same thing as '' (a quoted null string)
-
-shell.h
-       - changed CTLNUL to '\177'; some scripts use ^B for things like IFS
-         [in 1.14.6]
-
-                                   9/7
-                                   ---
-support/config.guess
-       - added code to identify a PPC running Solaris 2
-
-doc
-       - new directory replacing documentation
-
-Makefile.in, MANIFEST, MANIFEST.doc, configure.in
-       - replaced `documentation' with `doc'
-
-                                   9/8
-                                   ---
-lib/readline/display.c
-       - fixed the code in _rl_update_final that decides whether or not the
-         cursor is at character position 0 on an otherwise-empty line and
-         adjusts _rl_vis_botlin accordingly
-
-                                  9/13
-                                  ----
-general.c
-       - fixed canonicalize_pathname to make sure that intermediate
-         results correspond to directories before blindly chopping
-         off the last component when we see a `..'.  This fixes the
-         `cd ../.../..' being equivalent to `cd ..' problem
-
-subst.c
-       - fixed make_named_pipe so that mkfifo is called with mode 0600
-         for security reasons [in 1.14.6]
-       - changed the /dev/fd version of add_fifo_list to zero out new
-         entries to the fifo_list when it resizes it larger [in 1.14.6]
-       - changed make_dev_fd_filename to use DEV_FD_PREFIX
-
-aclocal.m4
-       - changed BASH_HAVE_DEV_FD to check for /proc/self/fd and define
-         DEV_FD_PREFIX to either "/dev/fd/" or "/proc/self/fd/" as
-         appropriate
-
-                                  9/14
-                                  ----
-lib/readline/display.c
-       - when displaying the first line of a multiline prompt, make sure
-         that the final \n is followed by a \r (outputting one if necessary)
-         so that we know we are starting at column 0
-
-variables.h
-       - new attribute: att_local
-
-variables.c
-       - changed make_local_variable to set the att_local attribute
-       - changed makunbound to just make variables marked as `local' in
-         the current context invisible.  This makes the local variable
-         persist throughout the function even if it is unset, so a
-         subsequent assignment preserves the `local' attribute
-       - changed kill_all_local_variables to unset the att_local attribute
-         before calling makunbound
-
-                                  9/18
-                                  ----
-lib/readline/complete.c
-       - make sure the cursor is on the last line of a possibly-multiple-
-         line command line before listing the completions in
-         display_matches
-
-                                  9/19
-                                  ----
-braces.c
-       - fixed the non-SHELL case in brace_gobbler so the loop exits when
-         it should
-
-lib/readline/bind.c, lib/readline/readline.h
-       - added functions to dump key sequences bound to macros and their
-         values
-
-builtins/bind.def
-       - added -S and -s options to dump the readline macros and their values
-       - changed the options so that -p and -P dump functions, -v and -V
-         dump variables, and -s and -S dump macros (s for string)
-
-doc/{bash.{1,html},readline.3,features.texi}, lib/readline/doc/rluser.texinfo
-       - added documentation for the new `bind' options
-       - added documentation for the new readline functions to dump macros
-         and the key sequences that output them
-
-                                  9/22
-                                  ----
-print_cmd.c
-       - new function xtrace_print_word_list (WORD_LIST *) to print the
-         words of a simple command when set -x is on.  This prints ''
-         when it encounters an empty string
-
-externs.h
-       - new extern declaration for xtrace_print_word_list
-
-execute_cmd.c
-       - call xtrace_print_word_list in execute_simple_command
-
-                                  9/25
-                                  ----
-builtins/getopts.def
-       - make sure that the loop counter stops at 10 when stepping through
-         the dollar_vars array to count the number of positional parameters
-         [in 1.14.6]
-
-                                  9/30
-                                  ----
-lib/readline/histsearch.c
-       - fixed history_search_internal to bail immediately if it gets a
-         null or empty search string.  This fixes the !? core dumps.
-         [in 1.14.6]
-
-                                  10/3
-                                  ----
-lib/readline/histexpand.c
-       - if there is a null string given with a !? search specifier, use
-         a previous search string if one exists, else fail immediately
-
-trap.c
-       - made run_exit_trap preserve $? around the call to execute the
-         trap string, unless the trap string contains an `exit'
-         command, in which case it can set the shell's exit status
-         [in 1.14.6]
-
-         In other words:
-
-               touch /tmp/z
-               trap 'rm /tmp/z ; exit 5' 0
-               exit 1
-
-         exits with status 5; while
-
-               touch /tmp/z
-               trap 'rm /tmp/z' 0
-               exit 1
-
-         exits with status 1
-
-subst.c, parse.y
-       - moved the $'...' code from subst.c to parse.y, more like ksh
-         does it
-
-doc/bash.1, doc/bash.html, doc/features.texi
-       - moved the description of $'...' from the expansion section to
-         the quoting section
-
-                                  10/4
-                                  ----
-command.h
-       - added a `line' member to the function struct for the source line
-         the function definition starts on
-
-make_cmd.c
-       - initialize the `line' member in Function_def to 0
-       - make_function_def takes a third parameter telling which line the
-         function definition started on and a fourth telling which line
-         the function body started on
-
-make_cmd.h
-       - changed prototype for make_function_def
-
-parse.y
-       - new variable `function_dstart', set by read_token and read_token_word
-         to keep track of where a function definition begins
-       - new variable `function_bstart' to keep track of where function
-         body begins
-       - pass function_dstart and function_bstart to make_function_def
-       - new function strtrans to do the $"..." locale-specific translation
-         of `...'
-       - call strtrans() to translate $"string".  The translated string is
-         double-quoted
-
-doc/bash.{1,html}
-       - updated the description of LINENO now that line numbers within
-         functions are correct
-
-configure.in
-       - look for the `gettext' library function
-
-config.h.in
-       - define HAVE_GETTEXT if gettext(3) exists in a findable library
-
-                                  10/5
-                                  ----
-builtins/common.c
-       - changed backslash_quote so that `#' is only quoted at the start
-         of a word
-       - new function contains_shell_metas returns 1 if the argument
-         string contains one or more shell meta-characters that require
-         quoting
-
-builtins/common.h
-       - extern declaration for contains_shell_metas
-
-print_cmd.c
-       - changed xtrace_print_word_list to print words containing
-         shell metacharacters within single quotes
-
-lib/termcap
-       - upgraded to GNU termcap version 1.3
-
-                                  10/9
-                                  ----
-lib/readline/readline.c
-       - call setlocale(LC_CTYPE, ...) after finding a legal value for
-         one of LC_ALL, LC_CTYPE, or LANG
-
-                                  10/11
-                                  -----
-lib/readline/search.c
-       - make rl_history_search_internal just do previous-history or
-         next-history as appropriate when given a null search string
-         (rl_point == 0)
-
-                                  10/24
-                                  -----
-subst.c
-       - fixed an off-by-one error in char_is_quoted that skipped a
-         characters after calling skip_single_quoted or skip_double_quoted
-         [in 1.14.6]
-       - fixed an off-by-one error in string_extract_verbatim so it
-         leaves *sindex at the separator character if the separator
-         character is "'" [in 1.14.6]
-
-                                  10/27
-                                  -----
-parse.y
-       - in CHECK_FOR_RESERVED_WORD, make sure that reading a `}'
-         decrements open_brace_awaiting_satisfaction if it is non-zero
-         [in 1.14.6]
-
-shell.c
-       - don't run the shell startup files if the shell is running
-         setuid
-       - don't source $ENV if the shell is running setuid
-
-variables.c
-       - new parameter to initialize_shell_variables: no_functions.  If
-         non-zero, don't import functions from the environment
-
-variables.h
-       - change to function prototype for initialize_shell_variables
-
-lib/readline/complete.c
-       - fix for the code that decides whether or not a char is quoted for
-         applications that don't supply a value for rl_char_is_quoted_p
-       - fixed insert_match to not remove a user-supplied opening quote
-         character if make_quoted_replacement does not return a string
-         beginning with that quote character
-
-                                  11/2
-                                  ----
-general.c
-       - new function ungetc_with_restart that handles the local buffering
-         [in 1.14.6]
-
-parse.y
-       - changed yy_stream_unget to call ungetc_with_restart if the OS
-         does not have restartable syscalls [in 1.14.6]
-
-                                  11/3
-                                  ----
-bashline.c
-       - rewrote _ignore_completion_names to actually free and remove
-         names from the array if more than one names in the array
-         passed is acceptable, instead of just bailing [in 1.14.6]
-
-                                  11/7
-                                  ----
-bashline.c
-       - if no matches are acceptable to _ignore_completion_names,
-         free the entries in NAMES, set NAMES[0] == 0, and let the
-         caller clean up [in 1.14.6]
-       - fixed a problem with backslash-quoted characters in
-         bash_dequote_filename that caused the character after the
-         backslash to be interpreted
-       - bash_dequote_filename now takes a quote_char parameter that,
-         if non-zero, gives the quote character (`'' or `"') that
-         delimits the filename.  Used to initialize the quoting state
-
-lib/readline/complete.c
-       - if the completion ignore function returns with MATCHES == 0
-         or MATCHES[0] == 0, ring the bell and quit the completion
-         attempt [in 1.14.6]
-       - pass quote_char to gen_completion_matches so it can pass it
-         along to the app-specific filename dequoting function
-       - have gen_completion_matches pass quote_char to whatever function
-         is pointed to by rl_filename_dequoting_function
-
-pathexp.c
-       - rewrote ignore_globbed_names to be more like _ignore_completion_names
-
-lib/readline/doc/rltech.texinfo
-       - updated documentation for rl_filename_dequoting_function
-
-                                  11/10
-                                  -----
-subst.c
-       - fixed remove_quoted_nulls so that it is now a full function that
-         removes unquoted CTLNUL chars from the string it is passed
-         [in 1.14.6]
-       - fixed expand_word_internal to avoid generating some unneeded
-         quoted nulls (if the string is partially quoted, note that we
-         have seen a quoted null and add one if the rest of the string
-         doesn't expand to anything)
-
-                                  11/13
-                                  -----
-variables.c
-       - bind HOSTTYPE, OSTYPE, and HOSTNAME unconditionally
-
-pathexp.c
-       - new function quote_globbing_chars, adds `\' before globbing
-         chars in its string argument, returns new string
-
-pathexp.h
-       - extern declaration for quote_globbing_chars
-
-bashhist.c
-       - if the previous line contains globbing chars, run it through
-         quote_globbing_chars before trying to match.  This affects
-         only HISTIGNORE patterns containing `&'
-
-                                  11/14
-                                  -----
-bashhist.c
-       - if the history line to be added contains globbing chars, quote
-         them with backslashes by calling quote_globbing_chars in
-         history_should_ignore before comparing them against the
-         patterns in HISTIGNORE
-
-bashline.c
-       - make sure that we erase the current readline line after running
-         fc on it and executing the resultant commands in
-         vi_edit_and_execute_command, so the original readline line
-         doesn't get returned [in 1.14.6]
-
-jobs.h
-       - added a new job listing format: JLIST_NONINTERACTIVE -- like
-         JLIST_LONG, but does not print the job number
-
-jobs.c
-       - added code to pretty_print_job to handle JLIST_NONINTERACTIVE
-       - call notify_and_cleanup() from wait_for even if the shell is
-         running a script (interactive_shell == 0)
-       - changed notify_and_cleanup to call notify_of_job_status if
-         interactive or interactive_shell == 0, so scripts report
-         about jobs they run
-       - changed notify_of_job_status to call pretty_print_job with a
-         JLIST_NONINTERACTIVE format if interactive_shell is 0 and a
-         job is marked JDEAD, after printing the script name and line
-         number.  This message is printed only if the job dies due to
-         a fatal signal
-
-support/mkversion.c
-       - added support for a `-status status' argument to set the
-         `release status' of the shell (alpha, beta, or release).  It
-         defines `RELSTATUS' in version.h and changes the definition
-         of SCCSVERSION, if present
-
-Makefile.in
-       - set a RELSTATUS variable that is included when printing the build
-         message and passed to mkversion with the -status option
-       - make RELSTATUS one of the variables sed sets when it creates
-         bashbug from support/bashbug.sh
-
-version.c
-       - added a `release_status' variable that's set to RELSTATUS if
-         it's defined
-
-support/bashbug.sh
-       - added the `RELSTATUS' variable to the report with heading
-         `Release Status'
-       - set the bug address to chet@po.cwru.edu if the release status
-         is `alpha' or `beta'
-
-                                  11/15
-                                  -----
-
-shell.c, execute_cmd.c
-       - new variable expand_aliases to control alias expansion.  For now,
-         this is set to the same value as interactive_shell when that is
-         set
-
-parse.y
-       - perform alias expansion if expand_aliases is non-zero rather than
-         checking the value of interactive_shell
-
-                                  11/16
-                                  -----
-builtins/shopt.def
-       - new option `expand_aliases' to control the value of expand_aliases
-
-doc/bash.1, doc/bash.html
-       - updated the description of `shopt' with the `expand_aliases' option
-
-                                  11/28
-                                  -----
-bashline.c
-       - if there is only one completion in _ignore_completion_names, see
-         if it is acceptable and return right away [in 1.14.6]
-
-configure.in
-       - change to define WAITPID_BROKEN on SCO 3.2v5
-
-                                  12/6
-                                  ----
-parse.y
-       - call prompt_again in read_token_word if a newline is read in an
-         interactive shell and bash_input.type is either st_stdin or
-         st_stream
-       - remove superfluous call to reset_readline_prompt in yy_readline_get
-
-                                  12/7
-                                  ----
-parse.y
-       - combine delimiters, delimiter_depth, and delimiter_space into a
-         single structure of type `struct dstack'
-       - replace all references to delimiter* with dstack.delimiter*
-       - include parser.h for struct dstack
-       - new define pop_delimiter(), analogous to push_delimiter
-       - current_delimiter, push_delimiter, and pop_delimiter defines now
-         include the delimiter stack struct as the first parameter
-
-parser.h
-       - now includes definition of struct dstack
-
-bashline.c
-       - include parser.h for struct dstack
-       - refer to dstack.delimiter_depth instead of delimiter_depth
-
-                                  12/12
-                                  -----
-execute_cmd.c
-       - before doing a longjmp(subshell_top_level,...) when executing a
-         shell script without a leading #!, set history_lines_this_session
-         to 0 to forget about the history and not save it on an exec
-         (we don't free the memory with clear_history(), though -- that
-         would slow bash down)
-
-                                  12/14
-                                  -----
-jobs.c, nojobs.c
-       - cause the sigwinch handling code to be compiled into the shell
-         even if READLINE is defined
-       - new functions: set_sigwinch_handler and unset_sigwith_handler
-         to enable and disable catching of SIGWINCH and adjusting $LINES
-         and $COLUMNS
-       - changed initialize_job_signals to install a signal handler for
-         SIGWINCH with set_sigwinch_handler
-
-jobs.h
-       - extern declarations for set_sigwinch_handler and
-         unset_sigwinch_handler
-
-                                  12/20
-                                  -----
-doc/bash.{1,html}, doc/readline.3, lib/readline/doc/rluser.texinfo
-       - documented the readline `visible-stats' variable
-
-                                  12/21
-                                  -----
-trap.c
-       - new global variable `running_trap' incremented and decremented
-         around running a trap command in _run_trap_internal
-
-execute_cmd.c
-       - new variable currently_executing_command, set to the COMMAND *
-         currently being processed by execute_command_internal, unless a
-         trap command is being run (running_trap != 0)
-       - new function executing_line_number, which returns the line number
-         of the currently executing command (which may not be the same as
-         line_number)
-       - don't run the debug trap if it was not set before the current
-         simple command was executed, since we don't want to run it after
-         the trap command that sets the DEBUG trap
-
-variables.c
-       - new function assign_lineno, to assign a value to line_number
-         when LINENO is set
-       - changed get_lineno to call executing_line_number() rather than
-         returning line_number
-
-parse.y
-       - new argument for push_stream telling it whether or not to reset
-         line_number to 0
-
-builtins/common.c
-       - change to parse_and_execute to call push_stream with an argument
-
-                                  12/29
-                                  -----
-subst.c
-       - set subshell_environment in command_substitute and process_substitute
-         for the child process
-
-                                   1/2
-                                   ---
-trap.c
-       - made decode_signal recognize signal names case insensitively
-
-shell.c
-       - make the shell exit on a longjmp (DISCARD, ...) if
-         subshell_environment is non-zero
-
-                                  1/16
-                                  ----
-lib/readline/histexpand.c
-       - let the `!' in ${!xxx} pass through without error
-
-shell.c
-       - new --help long option
-       - new function show_shell_usage() for use by --help
-
-                                  1/19
-                                  ----
-parse.y
-       - changes to shell_getc to make sure that lines consisting of only a
-         newline get added to the history correctly when they are part of
-         a quoted string
-
-                                  1/24
-                                  ----
-aclocal.m4, configure.in
-       - added a check for -lsocket (and -lnsl) to fix solaris problems
-         with isnetconn()
-
-shell.c
-       - rearranged the code in isnetconn to check for a socket using
-         getpeername() first, before any SVR4 or SVR4.2-specific checks
-       - added checks for ttys (isatty) and FIFOs (S_ISFIFO) to the
-         SVR4/SVR4.2 case of isnetconn()
-
-general.h
-       - new macro RESIZE_MALLOCED_BUFFER to check and see whether there
-         is enough room in a string to add a given number of characters
-         and to resize it if there is not
-
-                                  1/25
-                                  ----
-parse.y, general.c, subst.c, bashhist.c, alias.c, array.c, variables.c
-       - use RESIZE_MALLOCED_BUFFER where appropriate
-
-                                  1/26
-                                  ----
-support/config.{guess,sub}
-       - merged in latest changes from GNU master copies
-
-                                  1/30
-                                  ----
-
-jobs.c
-       - make sure to freeze the jobs list when calling a trap handler
-         for SIGINT
-       - added code to waitchld() so that a SIGINT trap handler is called
-         if the shell is running a shell script and a SIGINT is received
-         while waiting for a foreground job, even if that job does not
-         die from the SIGINT
-
-jobs.c, nojobs.c
-       - make get_tty_state reset $LINES and $COLUMNS after each process
-         exits if the variable `check_window_size' is non-zero
-
-builtins/shopt.def
-       - new variable `checkwinsize', which controls the value of
-         check_window_size
-
-doc/{bash.{1,html},features.texi}
-       - updated description of `shopt' to include `checkwinsize'
-
-execute_cmd.c, lib/readline,complete.c
-       - some changes from the GNU WIN32 project for the bash port to
-         Windows NT and Windows 95
-
-bashwait.h
-       - new file, with `union wait' defines from jobs.h
-
-jobs.h
-       - include `bashwait.h' if <sys/wait.h> is not present and
-         _POSIX_VERSION is not defined
-       - removed define of pid_t for non-Posix systems; now provided by
-         autoconf in config.h
-
-                                  1/31
-                                  ----
-parse.y
-       - new temporary delimiter stack, used when decoding prompt strings.
-         This is needed so command substitutions in the prompt strings
-         (especially PS2) don't screw up the parser's quoting state
-
-lib/readline/complete.c
-       - new variable for readline library users:
-         rl_completion_append_character.  The value of this variable is
-         the character appended to a completion when it occurs at the
-         end of a line.  Setting it to '\0' causes nothing to be
-         appended.
-
-lib/readline/readline.h
-       - declaration for rl_completion_append_character
-
-lib/readline/doc/rltech.texinfo
-       - documented rl_completion_append_character as int variable available
-         to library users
-
-subst.c
-       - new code for maintaining a string array saying which words in the
-         output of expand_word_list_internal are the result of globbing
-
-variables.c
-       - new function put_gnu_argv_flags_into_env (pid, flags_string)
-         to put Roland's GNU getopt helper variable into the export_env
-
-execute_cmd.c
-       - in execute_disk_command, after forking the child, put the GNU
-         getopt helper environment variable into the child's export_env
-
-unwind_prot.c
-       - changed unwind_protect_var and restore_variable to do the
-         bcopy of the variable's value if it's shorter than the size of
-         an int, as well as if it's longer.  This keeps stray data
-         from being copied if a short is being unwind-protected
-
-unwind_prot.h
-       - new define, unwind_protect_short, to protect variables smaller
-         than an int
-
-jobs.c
-       - in the code that handles SIGCHLD traps, call unwind_protect_short
-         if that is the size of a pid_t (for last_made_pid)
-
-                                   2/5
-                                   ---
-Makefile.in
-       - only try make distclean in HIST_LIBDIR if Makefile exists -- could
-         have already been removed if HIST_LIBDIR is the same as RL_LIBDIR
-
-general.c
-       - make canonicalize_pathname be more careful about what it checks
-         for being a directory name when processing a full pathname
-
-Makefile.in, configure.in, doc/Makefile.in
-       - small changes to get bash to build better in a directory not the
-         source directory
-
-                                  2/12
-                                  ----
-Makefile.in
-       - added `install-strip' target
-
-                                  2/14
-                                  ----
-doc/bash.{1,html}, doc/features.texi
-       - documented the `--verbose' startup option
-
-lib/readline/complete.c
-       - fix to gen_completion_matches to fix a memory leak
-       - fix to rl_complete_internal to fix a memory leak
-
-                                  2/15
-                                  ----
-bashwait.h
-       - changed to use WORDS_BIGENDIAN instead of LITTLE_ENDIAN or
-         BIG_ENDIAN
-
-configure.in, config.h.in
-       - call AC_C_BIGENDIAN, define WORDS_BIGENDIAN
-
-Makefile.in
-       - remove all references to mkendian.c, mkendian, and bash_endian.h
-       - added a `symlinks' target that just runs support/fixlinks
-
-MANIFEST
-       - mkendian.c is no longer in the distribution
-
-                                  2/16
-                                  ----
-execute_cmd.c
-       - include <sys/times.h> if HAVE_SYS_TIMES_H and HAVE_TIMES are
-         defined
-
-bashline.c
-       - fix to bash_directory_completion_hook to compensate for
-         canonicalize_pathname returning NULL
-
-variables.c
-       - fix to initialize_shell_variables to compensate for
-         canonicalize_pathname returning NULL
-
-                                  2/22
-                                  ----
-tests/test-tests, tests/test.right
-       - changes to avoid writing in the source directory -- all temp files
-         are created in /tmp
-
-[First alpha release at Thu Feb 22 15:59:51 EST 1996]
-
-                                  2/23
-                                  ----
-lib/readline/rldefs.h
-       - work around SVR4.2 bug including <sys/ptem.h> and <termios.h>
-
-lib/readline/chardefs.h
-       - fix to CTRL_CHAR macro for chars > 128 on systems with signed
-         characters
-
-builtins/ulimit.def
-       - protect more of the RLIMIT_* defines with checks
-       - new macro RETINVALID() to set errno and return the correct
-         value for an invalid request
-
-doc/Makefile.in
-       - add a definition for INSTALL, set by autoconf
-
-                                  2/26
-                                  ----
-support/bashbug.sh
-       - if USER is unset, assign it the value of $LOGNAME or `whoami`
-
-Makefile.in,{lib/*,doc,builtins}/Makefile.in
-       - use `test' instead of `[' to conform to GNU coding standards
-       - `incdir' -> `includedir' as per latest GNU coding standards
-
-lib/readline/Makefile.in, lib/glob/Makefile.in
-       - use $(srcdir)/ instead of $(srcdir) in the CSOURCES variable
-
-general.h
-       - new define, FS_NODIRS, to not find directory names when searching
-         $PATH
-
-execute_cmd.c
-       - fix to find_in_path_element so it does not return directories
-       - executable_file() no longer returns directories as executable
-
-                                  2/27
-                                  ----
-jobs.h
-       - new flag value: J_NOHUP
-
-jobs.c
-       - new function: nohup_job(job).  Sets J_NOHUP flag for specified
-         job
-       - change hangup_all_jobs so that jobs marked J_NOHUP are not
-         sent SIGHUP.  If stopped, the job still gets SIGCONT.
-       - changed calls to report_error to call internal_error, which will
-         not exit the shell
-       - changed FIND_CHILD define to call internal_error, restore the
-         SIGINT handler, set termination_state to 127 and return, rather
-         than aborting the shell
-
-builtins/jobs.def
-       - new option for disown: `-h'.  Marks the specified jobs J_NOHUP.
-
-doc/{bash.{1,html},features.texi}
-       - added description of `disown -h'
-
-jobs.c, nojobs.c
-       - include some files needed for struct winsize by SCO
-
-lib/readline/input.c
-       - added some #ifdefs to avoid including <sys/time.h> on systems
-         with select but without <sys/select.h>
-
-configure.in
-       - check for <stdarg.h>, define HAVE_STDARG_H in config.h if found
-
-config.h.bot
-       - define USE_VARARGS and either PREFER_STDARG or PREFER_VARARGS
-         if one of <stdarg.h> or <varargs.h> is present
-
-aclocal.m4
-       - moved default mail directory check here from configure.in, macro
-         name is BASH_DEFAULT_MAIL_DIR
-       - rewrote BASH_CHECK_DEV_FD to cache the value
-       - minor fixes from Bruno Haible
-
-shell.c
-       - no longer includes <varargs.h>
-
-builtins/Makefile.in
-       - add -I$(topdir)/builtins to list of includes
-
-execute_cmd.c, lib/glob/glob.c
-       - include memalloc.h for correct alloca definitions
-
-error.[ch], print_cmd.c, builtins/common.[ch]
-       - changes to include new ANSI-C stdargs code if PREFER_STDARG is
-         defined
-
-                                  2/28
-                                  ----
-aclocal.m4
-       - more minor fixes from Andreas Schwab
-
-doc/Makefile.in
-       - change TEXINPUTS makefile variables to TEXINPUTDIR to avoid
-         conflict with shell variable of the same name
-
-builtins/pushd.def
-       - fix to avoid a bad call to free after a call to
-         polite_directory_format does not change its argument string
-
-lib/readline/bind.c
-       - fixes to _rl_macro_dumper_internal so that it prints whatever
-         prefix it's passed, if any
-
-                                  2/29
-                                  ----
-Makefile.in
-       - slight change to the rule for `stamp-h': it should be created by
-         running `config.status', not explicitly by the makefile rule
-
-builtins/Makefile.in
-       - replace `..' in the dependencies with `$(topdir)'
-       - replace `.' in the dependencies with `$(srcdir)'
-
-                                   3/1
-                                   ---
-Makefile.in
-       - add a rule to build builtins/builtext.h for the benefit of
-         deficient makes like the SunOS one
-
-variables.c
-       - fix to assign_in_env so that values in the environment are
-         properly null-terminated
-
-builtins/Makefile.in
-       - added dependencies for object files made from .c files in this
-         directory: common.o, getopt.o, bashgetopt.o.  SunOS /bin/make
-         doesn't seem to be able to handle anything else
-
-support/mkclone
-       - new script to replace clone-bash that works from MANIFEST to link
-         only those files contained in a distribution
-
-support/mkversion.c
-       - change so that it doesn't try to get `.build' from the source
-         directory when that's different from the build directory
-
-                                   3/4
-                                   ---
-bashjmp.h
-       - #undef setjmp and longjmp before redefining them as sigsetjmp and
-         siglongjmp, respectively
-
-bashhist.c
-       - fixed an uninitialized variable problem in expand_histignore_pattern
-
-builtins/set.def
-       - used `on_or_off' where `value' was needed in minus_o_option_commands
-
-builtins/common.h
-       - added extern declaration for set_var_attribute
-
-print_cmd.c
-       - include `bashansi.h' instead of just string.h or strings.h
-
-builtins/*.def, builtins/common.c
-       - include `../bashansi.h' where appropriate
-
-parse.y
-       - fixed a parenthesization problem in alias_expand_token
-
-general.h
-       - added extern declaration for `ungetc_with_restart'
-
-lib/readline/readline.c
-       - renamed LibraryVersion to rl_library_version, made it extern,
-         assigned `2.1' to it
-
-lib/readline/readline.h
-       - extern declaration for `rl_library_version'
-
-lib/readline/doc/rltech.texinfo
-       - added description of `rl_library_version'
-
-lib/glob/glob.c
-       - changed call to sprintf in glob_dir_to_array to a couple of
-         calls to strcpy, since we keep the length of the first string
-         we copy
-
-                                   3/7
-                                   ---
-aclocal.m4
-       - added new macro `BASH_FUNC_LSTAT' to check for lstat on Linux,
-         which defines it as an inline function in <sys/stat.h>
-
-configure.in
-       - call BASH_FUNC_LSTAT if $ac_cv_func_lstat has value `no'
-
-                                   3/8
-                                   ---
-parse.y
-       - changed the occurrences of `list' in the if command productions
-         to use `compound_list' instead
-
-                                  3/11
-                                  ----
-parse.y
-       - changed the occurrences of `list' in the while and until command
-         productions to use `compound_list'
-
-lib/readline/complete.c
-       - fix to filename_completion_function -- off-by-one error when
-         expand-tilde is enabled and a filename to be completed begins
-         with `~/'
-
-                                  3/12
-                                  ----
-builtins/cd.def
-       - made the POSIX.2 behavior of PWD not containing symlinks after
-         using $CDPATH part of `posix mode', not default shell behavior
-
-lib/readline/display.c
-       - fix to update_line to handle update problems when using
-         horizontal scroll mode.  This is a dumb update solution -- it
-         should use a better one
-
-                                  3/14
-                                  ----
-examples/functions/csh-compat
-       - replaced the defintion for `alias' with a better one posted to
-         usenet by Mohit Aron <aron@cs.rice.edu>
-
-                                  3/15
-                                  ----
-jobs.c
-       - fix to wait_for_background_pids to keep `wait' from hanging
-
-                                  3/19
-                                  ----
-lib/readline/input.c
-       - new function `_rl_input_available()' returns > 0 if there is
-         input available on the readline input file descriptor.  Only
-         works if select(2) or FIONREAD are available
-
-lib/readline/isearch.c
-       - slight change to the isearch termination behavior -- ESC still
-         terminates the search, but if there is pending input or if input
-         arrives within 0.1 seconds (on systems with select(2)) it is
-         used as a prefix character with rl_execute_next
-
-shell.c
-       - the GNU coding standards say to write the output generated by
-         the --help command line option to stdout, not stderr
-       - show_shell_version now takes an `extended' option that displays
-         copyright information if non-zero
-       - show_shell_version now prints the value of `MACHTYPE' by default
-       - the `--version' option now causes the shell to exit successfully
-         after printing the extended version information
-
-externs.h
-       - changed prototype for show_shell_version
-
-shell.c, bashline.c, builtins/help.def
-       - changed calls to show_shell_version to add appropriate argument
-
-Makefile.in
-       - pass a `MACHTYPE' define to the compiler
-
-                                  3/22
-                                  ----
-general.c
-       - changed print_timeval() and print_time_in_hz() to output three
-         fractional digits after the decimal point
-
-examples/loadables/sleep.c
-       - changed to an implementation that will sleep fractional portions
-         of seconds if select() is available
-
-                                  3/25
-                                  ----
-builtins/shopt.def
-       - fixes to shopt -o from Andreas Schwab.  Use FLAG_ON/FLAG_OFF
-         instead of SETOPT/UNSETOPT
-
-                                  3/26
-                                  ----
-Makefile.in, builtins/Makefile.in
-       - use `@includedir@' instead of `@incdir' for autoconf 2.9
-
-Makefile.in
-       - the `info', `dvi', and `ps' targets do not depend on `texindex'
-       - add a `dist' target that just prints a message describing how
-         distributions are constructed
-
-support/mkdirs
-       - replace uses of [...] with `test'
-
-                                  3/28
-                                  ----
-parse.y
-       - fix for a problem with \@ prompt expansion from Tim Mooney
-
-jobs.c
-       - broke the code that prints a pipeline out into a separate
-         function: print_pipeline().  This gets called by
-         pretty_print_job and can be used for debugging
-       - two new functions to save and restore the_pipeline around calls
-         to make_child that you don't want to disturb the current pipeline,
-         for example in process substitution
-
-subst.c
-       - changed process_substitute to call save_pipeline and
-         restore_pipeline in the appropriate places
-
-                                  3/29
-                                  ----
-general.c
-       - ansicstr now takes an additional parameter, the length of the
-         string to be translated.  It's the second paramter.
-
-builtins/echo.def
-       - changed call to ansicstr to pass strlen(list->word->word)
-
-parse.y
-       - redid the $'...' expansion so it works like it's supposed to:
-         the quoted strings may appear anywhere in a token, and multiple
-         ansi-c quoted strings may appear in a token
-       - redid the $"..." expansion so it works like it's supposed to
-
-tests/nquote.{tests,right}, tests/run-nquote
-       - tests for the $'...' and $"..." quoting stuff -- simple-minded
-
-subst.c
-       - on systems without /dev/fd, open the named pipe for a `reading
-         in child' process substitution (>(...)) with O_NONBLOCK
-
-lib/posixheaders/filecntl.h
-       - add code to make sure the O_NONBLOCK is defined to O_NDELAY if
-         it is present and O_NONBLOCK is not defined by <fcntl.h>
-
-general.c
-       - don't bother handling both O_NONBLOCK and O_NDELAY in
-         unset_nodelay_mode, since filecntl.h defines O_NONBLOCK as
-         O_NDELAY for non-Posix systems
-
-                                   4/1
-                                   ---
-lib/readline/funmap.c
-       - made `vi-fetch-history' a bindable command name
-
-doc/readline.3
-       - many cleanups, updated the list of default bindings 
-
-                                   4/4
-                                   ---
-doc/bash.1, doc/readline.3
-       - fixed up use of \-; now it is not used unless the text is being
-         printed in bold or italic
-
-configure.in, config.h.in
-       - add a configuration option, --enable-usg-echo-default, to turn
-         on DEFAULT_ECHO_TO_USG and make `echo' expand backslash-escaped
-         characters by default
-
-                                   4/8
-                                   ---
-parse.y
-       - another small change to localeexpand to handle backslash-escaped
-         double quotes in the double-quoted string
-
-                                   4/9
-                                   ---
-shell.c
-       - add the value of MACHTYPE to the text output by `--help'
-
-                                  4/11
-                                  ----
-parse.y
-       - more changes to the $"..." and $'...' code to move it into
-         read_token
-       - don't try to check token[token_index - 1] unless token_index
-         is greater than 0
-
-                                  4/12
-                                  ----
-trap.c
-       - new function run_trap_cleanup to clean up after _run_trap_internal
-         in the event that parse_and_execute does not return normally
-         (e.g., if a `return' is executed in the trap command)
-       - set running_trap to the number of the signal whose trap is being
-         run plus one in _run_trap_internal
-
-trap.h
-       - extern declaration for run_trap_cleanup
-
-jobs.c
-       - new function `unfreeze_jobs_list' to set freeze_jobs_list back to 0.
-         called from parse_and_execute_cleanup so a `return' while running
-         an interrupt trap does not leave the jobs list frozen
-
-jobs.h
-       - new extern declaration for unfreeze_jobs_list
-
-builtins/common.c
-       - if running_trap is non-zero in parse_and_execute_cleanup, indicating
-         that parse_and_execute was running a trap command when it got a
-         `return', call run_trap_cleanup (running_trap - 1)
-       - parse_and_execute_cleanup now calls unfreeze_jobs_list
-
-                                  4/16
-                                  ----
-Makefile.in
-       - don't try to make `doc' as a dependency of `install'
-
-doc/Makefile.in
-       - make `info' a dependency of `install' to make sure the info
-         document is present and up to date before installing it
-       - make the `install' target install the documents with a $(srcdir)/
-         prefix in case we're building in another directory
-
-lib/glob/glob.c
-       - fixed an off-by-one error in glob_dir_to_array
-
-shell.c
-       - removed an extra increment of arg_index when setting up the
-         arguments for -c command
-
-                                  4/17
-                                  ----
-pathexp.c
-       - made quote_globbing_chars backslash-quote backslashes as well as
-         `?*[]'; changed it to be a little faster
-
-bashhist.c
-       - call quote_globbing_chars to quote backslashes in the previous
-         history line even if no other globbing chars are present.  This
-         is done only if we're matching against a HISTIGNORE pattern of `&'
-       - don't bother quoting globbing characters in the current history
-         line in history_should_ignore -- fnmatch ignores special chars in
-         its `string' argument
-
-[bash-2.0-alpha2 frozen]
-
-                                  4/18
-                                  ----
-command.h
-       - new flag value for a word: W_NOSPLIT.  A word with this bit set
-         in its flags will not have word splitting performed
-
-parse.y
-       - turn on the W_NOSPLIT flags for assignment statements appearing
-         where an assignment statement is acceptable (words that would
-         return ASSIGNMENT_WORD rather than WORD).  This means that, for
-         the time being, assignment statement arguments to builtins like
-         `declare' or `alias' will be split unless they are quoted
-
-subst.c
-       - don't split a word in expand_word_internal if the W_NOSPLIT flag
-         is set, rather than checking W_ASSIGNMENT; do the same thing in
-         expand_word_list_internal
-
-builtins.h
-       - a new flag, ASSIGNMENT_BUILTIN, indicating that this builtin takes
-         assignment statements as arguments
-       - rearranged the values of the builtin flags, so the BUILTIN_* flags
-         come first, then the *_BUILTIN flags
-
-builtins/makebuiltins.c
-       - added code for an array of `assignment builtins' -- builtins that
-         take assignment statements as arguments -- and to add the
-         ASSIGNMENT_BUILTIN flag for those builtins
-
-execute_cmd.c
-       - added a hack function `fix_assignment_words', which checks the
-         first word of a builtin command to see if it is a builtin that
-         has the ASSIGNMENT_BUILTIN flag set, and adds W_NOSPLIT to the
-         flags for all words with the W_ASSIGNMENT bit set.  This means
-         that word splitting is not done for any of the assignment
-         statements in commands like `declare z=$a'
-
-                                  4/19
-                                  ----
-execute_cmd.c
-       - fixed a memory-freed-twice error in find_in_path_element
-
-lib/readline/rltty.c
-       - include <sys/ioctl.h> if GWINSZ_IN_SYS_IOCTL is defined and
-         SHELL is not defined
-
-lib/readline/input.c
-       - changed a stray HAVE_FIONREAD to FIONREAD
-       - include <sys/ioctl.h> if FIONREAD_IN_SYS_IOCTL is defined
-
-aclocal.m4
-       - new macro, BASH_HAVE_FIONREAD, to check for a #define of
-         FIONREAD in <sys/ioctl.h> or one of the files it includes;
-         defines FIONREAD_IN_SYS_IOCTL if present
-
-config.h.in
-       - new line for FIONREAD_IN_SYS_IOCTL
-
-configure.in
-       - call BASH_HAVE_FIONREAD
-
-                                  4/22
-                                  ----
-builtins/cd.def
-       - fixed a memory-freed-twice error in mkpath()
-
-jobs.c
-       - don't print a job termination message for a non-interactive shell
-         with startup_state == 2 (those shells are started to run commands
-         when bash is invoked with `-c command')
-
-                                  4/23
-                                  ----
-general.h
-       - definition for a `generic pointer' type PTR_T -- `void *' on ANSI
-         C systems, `char *' otherwise
-
-jobs.h
-       - new members of job struct: `j_cleanup', a function to call when the
-         job is marked JDEAD, and `cleanarg', argument to pass to j_cleanup
-
-jobs.c
-       - initialize j_cleanup and cleanarg to NULL in stop_pipeline
-       - call j_cleanup from waitchld() when a job is marked JDEAD
-
-test.c
-       - fixed binop() so it recognizes `<' and `>' as binary operators
-       - fixed a bug in binary_operator so `<' works correctly
-
-tests/test-tests
-       - fixed the tests so they no longer rely on the modes of files in
-         the file system to test -u, -g, -r, -x, -w, and so on, except
-         for a few `standard' files like /dev/tty and /dev/null
-       - added tests for string < string and string > string
-
-xmalloc.c
-       - include <unistd.h> if HAVE_UNISTD_H is defined for a prototype
-         for sbrk
-       - add an extern declaration for sbrk if SBRK_DECLARED is not defined
-       - use PTR_T to cast the return value of sbrk() when finding out where
-         the break is and how many bytes of memory have been allocated
-
-lib/malloc/malloc.c
-       - added code to write 0xcf into memory as it's freed, to uncover
-         callers that try to refer to freed memory, and writes 0xdf into
-         newly-allocated memory, to uncover callers that assume something
-         about new allocations (e.g., that newmem[0] == 0)
-
-lib/malloc/gmalloc.c
-       - latest version from GNU sources
-
-                                  4/25
-                                  ----
-doc/bash.1
-       - changed the description of `unset' to include a description of
-         the `-v' option
-
-parse.y
-       - fixed a problem with conversion to 12-hour time in
-         decode_prompt_string that made 12:00pm show up as 00:00pm
-
-                                  4/26
-                                  ----
-builtins/common.c, subst.c
-       - a couple of fixes from Andreas Schwab
-
-configure.in
-       - set up the minimal configuration after checking for
-         --enable-minimal-config with AC_ARG_ENABLE, before checking any
-         of the other options, instead of after checking all options.
-         This makes `--enable-minimal-config --enable-prompt-string-decoding'
-         work as documented
-       - changed AC_PREREQ to require autoconf version 2.8 or higher
-       - added some code to disable gnu malloc by default on the systems
-         listed in NOTES
-       - set MALLOC_SRC to have the $(ALLOC_LIBSRC)/ prefix to avoid having
-         a directory in the dependencies when making without the gnu
-         malloc
-
-lib/malloc/Makefile.in
-       - make gmalloc.o depend on $(BUILD_DIR)/config.h
-
-                                  4/30
-                                  ----
-COMPAT
-       - new file listing user-visible incompatibilites between bash-1.14
-         and bash-2.0
-
-parse.y
-       - new prompt expansions, \v (version) and \V (version + patchlevel)
-
-config.h.top
-       - the default value of PS1 is now '\s-\v\$ '
-
-doc/{bash.{1,html},features.texi}
-       - added descriptions of \v and \V prompt expansions
-       - changed default value of PS1
-
-Makefile.in
-       - added dependencies on config.h.top for files that use definitions
-         included there
-
-builtins/exec.def
-       - removed reference to `no_exit_on_failed_exec' from the help text
-
-                                   5/3
-                                   ---
-builtins/cd.def
-       - fixed a typo in fix from 4/22
-
-                                   5/7
-                                   ---
-builtins/common.c
-       - new function `no_options (WORD_LIST *)' to be called by builtins
-         that do not take options to check for options and -?.  It returns
-         0 on success, non-zero if an unwanted option is supplied
-
-builtins/common.h
-       - extern declaration for no_options
-
-builtins/return.def
-       - corrected the error message to include returning from a sourced
-         script
-
-builtins/{getopts,eval,wait,source,fg_bg,help}.def
-       - changed the following builtins to either call no_options or test
-         explicitly for options and return EX_USAGE if any are found:
-
-               getopts eval wait source . fg bg help
-
-builtins/help.def
-       - error messages are now printed using builtin_error
-
-                                   5/8
-                                   ---
-builtins/jobs.def
-       - fixed an unitialized variable problem
-
-tests/more-exp.tests
-       - added additional tests for IFS problem uncovered by `iffe'
-
-                                   5/9
-                                   ---
-lib/malloc/Makefile.in
-       - use $(ALLOCA_SOURCE) instead of $< in rule that builds alloca.o.
-         Some makes don't expand the $< in non-suffix rules
-
-lib/readline/rldefs.h
-       - fix workaround for SVR4.2 bug
-
-shell.c
-       - even though SVR4.2 has getpeername(), isnetconn() should not use it
-
-maxpath.h
-       - rework to make sure PATH_MAX and NAME_MAX are defined, and remove
-         the BUILDING_MAKEFILE code
-
-general.c, parse.y, oslib.c, jobs.c, builtins/common.c, builtins/cd.def
-       - change uses of MAXPATHLEN to PATH_MAX
-
-examples/loadables/{{log,base,dir}name,tty,pathchk,tee}.c
-       - new loadable builtins:
-
-               logname basename dirname tty pathchk tee
-
-configuure.in, config.h.in
-       - look for tzset(3), define HAVE_TZSET if found
-
-subst.c
-       - new special variable function, sv_tz, which calls tzset when
-         TZ is changed, if tzset(3) exists and the shell is compiled
-         to do prompt string decoding
-
-subst.h
-       - extern declaration for sv_tz
-
-                                  5/10
-                                  ----
-builtins/echo.def
-       - only call printf if the string to print is non-null
-       - add an fflush(stdout) after the printf call to work around a
-         bug in SunOS 5.5
-
-                                  5/16
-                                  ----
-shell.c
-       - moved some variable declarations out of this file to more
-         logical places
-
-support/config.guess
-       - small fixes from rfg@monkeys.com
-
-version.c
-       - moved functions for getting, setting, and displaying shell version
-         information here from shell.c
-
-general.c
-       - moved set_lines_and_columns to variables.c
-       - moved getc_with_restart and ungetc_with_restart to input.c
-       - new function argv_to_word_list(), converts an array of strings
-         into a WORD_LIST
-       - renamed find_name_in_list to find_name_in_array to match rest
-         of functions that operate on arrays of strings
-
-configure.in, Makefile.in, jobs.c, nojobs.c
-       - changes so that jobs.c no longer includes nojobs.c, and the correct
-         object file (jobs.o or nojobs.o) is selected by configure
-         and substituted into the Makefile
-
-list.c
-       - new file, list manipulation functions from general.c
-
-externs.h, general.h
-       - moved extern declarations for functions defined in oslib.c and
-         list.c to externs.h from general.h
-
-                                  5/17
-                                  ----
-locale.c
-       - new file, with locale code from parse.y and shell.c
-
-shell.c
-       - don't turn off job control if act_like_sh is set
-       - if an unknown option is supplied at startup or if -c is
-         supplied without an argument, exit with EX_USAGE
-       - call posix_initialize after parsing all the options, to
-         catch `bash -o posix'
-       - new functions: init_interactive(), init_noninteractive()
-       - exit with EX_NOTFOUND if a script argument is not found
-       - exit with EX_NOINPUT if a script file cannot be opened for
-         some reason
-
-shell.h
-       - new define for EX_NOINPUT exit status (126)
-
-                                  5/18
-                                  ----
-lib/readline/bind.c
-       - fixed _rl_get_keyname() so that it properly handles C-\ and outputs
-         it as \C-\\ and C-" as \C-\".  This fixes the improper binding
-         commands written by `bind -p' that caused weird things to happen
-         when people used the output of `bind -p' as a start for their
-         own inputrc files
-       - new function _rl_init_file_error to print error messages encountered
-         while parsing the inputrc file
-       - print out an error message if parsing an inputrc line and no closing
-         double quote is found for a key binding
-
-lib/readline/complete.c
-       - in rl_complete_internal, if the completion function results in
-         multiple matches, but none match up to even the first character, 
-         use what the user typed in (which is presumably a glob pattern
-         that expanded into multiple files) as matches[0].  This makes
-         things like show-all-if-ambiguous work right, too
-
-oslib.c
-       - if we are providing our own version of getenv(), provide a function
-         _getenv() as well, which just calls getenv()
-
-builtins/ulimit.def
-       - #define _KERNEL before including <sys/resource.h> if HPUX is
-         defined.  This makes the full set of limits available on hpux
-         version 8 and above
-
-bashline.c
-       - new function, enable_hostname_completion, sets up readline to
-         perform or not perform hostname completion.  Hostname completion
-         is on by default.
-       - don't attempt hostname completion in attempt_shell_completion()
-         unless perform_hostname_completion is set
-
-builtins/shopt.def
-       - add a `set_func' member to the shopt options structure, to provide
-         a hook for those variables that require a little more than just
-         toggling a variable on or off
-       - new shopt variable `hostcomplete', turns hostname completion on and
-         off
-
-doc/{bash.{1,html},features.texi}
-       - added description of new shopt `hostcomplete' variable
-
-                                  5/21
-                                  ----
-sig.c
-       - don't try to save the shell history in termination_unwind_protect
-         if we're dying due to SIGABRT
-
-bashhist.c
-       - new functions: last_history_entry (static), last_history_line
-
-bashhist.h
-       - extern declarations for new functions in bashhist.c
-
-error.c
-       - have programming_error() report the last command in the history
-         before aborting
-
-builtins/fc.def
-       - if the editor returns a non-zero exit status when using `fc -e',
-         return immediately without trying to execute the commands, as
-         per Posix.2, 5.12.2
-       - when using `fc -s', echo the command to be executed to stderr,
-         not stdout
-
-lib/readline/terminal.c
-       - new file, with all code related to termcap/terminfo
-
-lib/readline/{readline,rltty,display,util}.c
-       - moved functions dealing with termcap to terminal.c
-
-lib/readline/readline.c
-       - readline_initialize_everything now calls _rl_enable_meta_key()
-         to turn on the meta key, based on the value of _rl_enable_meta
-         (on by default)
-
-lib/readline/rltty.c
-       - do not enable and disable the meta key each time readline is
-         called; do it once at initialization
-
-                                  5/23
-                                  ----
-bashhist.c
-       - when `hist_verify' is set, call re_edit with the expanded line,
-         not the original one, and do not print the results of the
-         expansion before re-editing
-
-                                  5/24
-                                  ----
-support/config.guess
-       - recognize linux/sparc
-
-configure.in
-       - don't use GNU malloc on linux/sparc
-
-variables.c
-       - initialize a new $MACHTYPE variable to the value of MACHTYPE as
-         set by autoconf
-
-doc/{bash.{1,html},features.texi}
-       - documented $MACHTYPE
-
-                                  5/30
-                                  ----
-builtins/ulimit.def
-       - allow the max vm size to be set via setrlimit() if RLIMIT_VMEM
-         is defined
-
-                                  5/31
-                                  ----
-shell.h
-       - changed EX_USAGE to 258, EX_BADUSAGE is now 2
-       - added a number of execution failure statuses, so that builtins
-         can indicate various failures.  All are greater than 256, so
-         they cannot be returned by other utilities
-
-execute_cmd.c
-       - new function, builtin_status(), to translate the new return
-         status codes to something the shell can export
-       - changed execute_simple_command to call builtin_status after
-         execute_builtin_or_function to translate error codes if a
-         builtin is invoked.  If a function or regular builtin is
-         invoked, all return values greater than EX_SHERRBASE get
-         translated to EXECUTION_FAILURE, with the exception that
-         EX_USAGE gets translated to EX_BADUSAGE.  If a special
-         builtin failed with a status > EX_SHERRBASE, special_builtin_failed
-         is set to cause the shell to exit in POSIX mode
-       - changed execute_builtin_or_function to return EX_REDIRFAIL if
-         redirections fail
-       - changed execute_subshell_builtin_or_function to translate
-         EX_USAGE to EX_BADUSAGE if a builtin is executed
-       - set this_command_name to NULL in execute_for_command before binding
-         each member of the word list to the loop variable, to avoid
-         garbled error messages if the variable has the integer attribute
-
-builtins/{set,unset}.def
-       - return EX_USAGE instead of EXECUTION_FAILURE if a bad option is
-         supplied
-
-builtins/source.def
-       - return EX_USAGE instead of EXECUTION_FAILURE if the required
-         filename argument is missing
-
-builtins/setattr.def
-       - return EX_BADASSIGN if any assignment statements given as arguments
-         to readonly, export, etc. return failures (assignment to
-         non-identifier, assignment to readonly variable)
-
-builtins/declare.def
-       - don't allow `declare var=value' to assign value to a readonly
-         variable
-
-lib/readline/rldefs.h
-       - include <stdarg.h> if we're going to be using stdarg instead of
-         varargs
-
-lib/readline/display.c
-       - added `stdarg' version of rl_message
-
-lib/readline/readline.h
-       - changed extern declaration for rl_message to be in ANSI-C format
-         if __STDC__ is defined and we're using stdarg
-
-variables.c
-       - make sure this_command_name is set to null before calling
-         make_variable_value in assign_array_var_from_string so any
-         error messages are not garbled
-
-                                   6/2
-                                   ---
-builtins/common.c
-       - don't execute the command in parse_and_execute if -n has been
-         enabled and the shell is not interactive
-       - include flags.h for read_but_dont_execute
-
-[bash-2.0-alpha3 released]
-
-                                   6/5
-                                   ---
-subst.c
-       - array_length_reference and parameter_brace_expand_length now
-         return -1 on errors
-       - parameter_brace_expand now returns &expand_param_error if
-         paramter_brace_expand_length returns something < 0
-
-variables.c
-       - assign_in_env now checks for assignments to readonly shell
-         variables and disallows them
-
-                                   6/6
-                                   ---
-xmalloc.c
-       - only do pointer arithmetic on pointers cast to (char *), since
-         it's not required that compilers support arithmetic on void *
-
-shell.c
-       - make sure <sys/socket.h> is included with the same conditions
-         used to call getpeername(2) in isnetconn()
-
-parse.y
-       - added a new function, paren_match, to parse the contents of $(...)
-         constructs.  This function correctly handles embedded quoted
-         strings, embedded command substitutions, embedded command
-         substitutions with embedded quoted strings, etc.  The implementation
-         is much closer to that described in POSIX.2, section 3.6.3.
-       - changed read_token_word to call paren_match where appropriate
-
-subst.c
-       - rewrote extract_delimited_string so that it correctly understands
-         quoted strings inside command substitutions, a la paren_match
-         in parse.y.  Corrected the description of the function's output
-         in the code.  extract_delimited_string is now very recursive, and
-         does not try to do everything in one pass without recursion
-
-                                   6/7
-                                   ---
-test.c
-       - fixed three_arguments() to test the second argument for a valid
-         binary operator before checking whether or not the first argument
-         is `!'.  This is what POSIX.2 says to do.
-
-lib/malloc/malloc.c
-       - don't compile in the memory scrambling code (#define MEMSCRAMBLE)
-         if NO_MEMSCRAMBLE is defined.
-
-configure.in
-       - define NO_MEMSCRAMBLE in LOCAL_CFLAGS for SCO 3.2v[45]
-
-                                   6/9
-                                   ---
-parse.y
-       - renamed paren_match to parse_matched_pair
-       - call parse_matched_pair to parse <(...) and >(...) constructs,
-         since those should be treated the same as $(...) for the purposes
-         of matching parens and skipping embedded quoted strings
-
-                                  6/13
-                                  ----
-parse.y
-       - augmented parse_matched_pair
-               o fixed up backslash quoting and CTLESC handling after
-                 backslashes
-               o match pairs of ${...} and $[...] inside double-quoted
-                 strings or `` strings
-               o keep track of line number quoted string starts on for
-                 better error messages
-               o push and pop delimiters when parsing quoted strings
-                 inside $(...), ${...}, and $[...] for use by the
-                 history code
-               o set EOF_Reached to 1 if we get an EOF before finding the
-                 match closer
-       - rewrote read_token_word from scratch to use parse_matched_pair:
-               o shell quote characters use parse_matched_pair to find
-                 the matching quote
-               o fixed up backslash parsing code
-               o compound array assignments use parse_matched_pair
-               o corrected all_digits and dollar_present computations, so,
-                 for instance, 2''>/dev/null is no longer accepted as
-                 identical to 2>/dev/null
-               o converted ${...} parsing to use parse_matched_pair
-               o removed printing of error messages about unmatched quotes;
-                 now handled by parse_matched_pair
-               o converted $'...' and $"..." to use parse_matched_pair
-               o removed all of the delimited_xxx and dollar_xxx variables
-                 and embedded_quoted_string
-       - modified report_syntax_error to regularize error messages:
-               o non-interactive shells and interactive shells running
-                 scripts with `.' now always report line numbers
-               o unexpected EOF is always reported when EOF_Reached is true
-               o non-interactive shells no longer duplicate the script name
-                 in error messages (e.g., `./z3: ./z3: line 3: syntax error')
-
-bashline.c
-       - make sure `newnames' is freed in _ignore_completion_names
-
-lib/readline/complete.c
-       - don't insert the first match on TAB completion in
-         rl_complete_internal() if matches[0] is the empty string --
-         that will overwrite whatever the user has typed, if dequoting
-         what the user typed results in the empty string
-
-execute_cmd.c
-       - include <limits.h> if HAVE_LIMITS_H is defined for ARG_MAX
-       - only put the special environment variable for GNU getopt into
-         the environment if ARG_MAX exceeds 10240
-
-subst.c
-       - rewrote extract_dollar_brace_string so that it fully obeys
-         the POSIX.2 rules for finding the closing `}' and uses
-         skip_{single,double}_quoted rather than trying to do it with
-         inline delimiters
-       - removed the INC_NEST and DEC_NEST defines
-
-                                  6/14
-                                  ----
-jobs.c
-       - don't print status messages for background jobs that complete
-         successfully when running shell scripts
-
-builtins/shopt.def
-       - when using shopt -o as a synonym for set -o, make sure $SHELLOPTS
-         is updated
-       - make sure to update $SHELLOPTS when using shopt to set or unset
-         interactive comments
-
-execute_cmd.c
-       - fixed find_in_path_element to not return non-executable files
-         when FS_EXEC_PREFERRED is one of the flags, after saving such
-         a file as file_to_lose_on (fix from william@nscs.fast.net)
-
-                                  6/17
-                                  ----
-lib/readline/complete.c
-       - after printing possible completions, all lines of a multi-line
-         prompt are redisplayed using rl_forced_update_display()
-
-subst.c
-       - in expand_word_internal, only do tilde expansion on words where
-         (flags & (W_ASSIGNMENT|W_QUOTED)) == W_ASSIGNMENT (unquoted
-         assignment statements) and contain unquoted `=~' or `:~', and
-         only if posixly_correct is off.  POSIX.2 says that only the
-         assignments preceding the command name should be tilde-expanded.
-
-                                  6/18
-                                  ----
-support/config.guess
-       - recognize the new Pyramid DC-OSx as `mips-pyramid-sysv4'
-
-configure.in
-       - set LOCAL_CFLAGS to -Xa for mips-pyramid-sysv4 as per
-         Peter Chubb
-
-subst.c
-       - variable assignment errors when there is not a command name
-         after the assignments now causes a non-interactive shell to 
-         exit in POSIX.2 mode
-
-execute_cmd.c
-       - if the iteration variable in a for statement is a read-only
-         variable, a variable assignment error occurs.  This causes
-         non-interactive shells to exit in posix mode, and a failure
-         status to be returned for other non-interactive shells and
-         interactive shells
-       - if the selection variable in a select statement is a read-only
-         variable, a variable assignment error occurs, with the same
-         consequences as a for statement variable assignment error
-
-doc/bashref.*
-       - renamed features.* to bashref.*, since that more accurately
-         reflects the current contents
-
-                                  6/19
-                                  ----
-test.c
-       - changed three_arguments() to do one-argument tests on $1 and
-         $3 and return the appropriate values if -a or -o is given as
-         the second argument
-       - changed three_arguments() to perform a one-argument test on
-         $2 if $1 == '(' and $3 == ')' and return that result
-       - make sure test_stat translates /dev/fd/xx to DEV_FD_PREFIX/xx
-         so /dev/fd/0 always means the same thing, even on linux,
-         which uses /proc/self/fd
-
-aclocal.m4
-       - added a check for libncurses in BASH_CHECK_LIB_TERMCAP
-
-configure.in
-       - added an initial message saying we're configuring for bash-2.0
-
-lib/glob/fnmatch.c
-       - made a small change to fnmatch() to fix a bug matching patterns
-         with multiple consecutive `*'s
-
-                                  6/20
-                                  ----
-parse.y
-       - inhibit history expansion when calling pre_process_line() from
-         shell_getc() if the current delimiter is a single quote, even
-         if we're on a different line than the opening quote
-       - make sure read_a_line prints a prompt if we're interactive and
-         not using readline, and make sure we call clearerr() if we
-         get EOF when interactive and not using readline
-
-bashhist.c
-       - new function history_expansion_p(char *) returns 1 if the string
-         passed contains the history expansion or history substitution
-         characters
-       - pre_process_line() now calls history_expansion_p and calls
-         the history expansion code only if that returns 1
-
-                                  6/26
-                                  ----
-lib/readline/isearch.c
-       - swap the behavior of ^J and ^M when i-searching.  ^J now terminates
-         the search without accepting the line.  ^M terminates the search
-         and accepts the line, executing the command
-
-examples/loadables/sprintf.c
-       - new `sprintf' builtin: sprintf var format [args...]
-
-lib/readline/readline.c
-       - added a line in _rl_dispatch that sets _rl_suppress_redisplay if
-         the function is rl_insert and there is input available
-
-                                  6/27
-                                  ----
-builtins/getopts.def
-       - new function, getopts_bind_variable(), used when assigning a value
-         to the user-supplied variable passed to getopts().  It makes sure
-         that that variable name is legal and prints an error message if it
-         is not
-
-builtins/getopt.c
-       - don't increment sh_optind until after we've checked whether or not
-         the current option character appears in the list of options passed
-         to getopts by the user
-
-                                  6/28
-                                  ----
-variables.c
-       - added a new parameter to print_var_value: QUOTE.  If it's non-zero
-         and the variable's value contains shell metacharacters, quote the
-         value so it can be read back in
-
-variables.h
-       - changed extern declaration for print_var_value
-
-siglist.h
-       - if SYS_SIGLIST_DECLARED is not defined, but HAVE_UNDER_SYS_SIGLIST
-         is, only declare sys_siglist as extern char *sys_siglist[] if
-         sys_siglist is not `#define'd
-
-parse.y
-       - make sure a reserved word is acceptable before returning `}' as
-         a token from special_case_tokens, even if the token read so far
-         is "}"
-       - make reset_parser set allow_open_brace to 0
-
-                                   7/1
-                                   ---
-test.c
-       - fixed binop to not try to read s[3] if s[2] == '\0'.  There are
-         no one-character binary operators that begin with `-'
-
-variables.c
-       - fixed kill_all_local_variables to do nothing if variable_context
-         is >= local_variable_stack_size (indicating that we do have some
-         local variables, but not at this level of function nesting, and
-         we are beyond the end of the array allocated the last time we
-         had local variables)
-
-                                   7/2
-                                   ---
-execute_cmd.c
-       - non-interactive shells in posix mode should exit if the variable
-         in a for command is not a valid identifier.  This should really
-         be caught by the parser
-       - non-interactive shells in posix mode should exit if a function
-         name is not a valid identifier.  This should also be caught by
-         the parser
-
-                                   7/3
-                                   ---
-jobs.c
-       - non-interactive shells should ignore stopped children, so
-         waitchld() should set waitpid_flags to WUNTRACED only if the
-         shell is interactive and it's not a subshell environment
-
-lib/readline/signals.c
-       - if not being compiled as part of the shell, readline should
-         catch SIGTERM and clean up
-
-shell.c
-       - change to isnetconn: on Solaris 2.5, getpeername() can return
-         EINVAL rather than ENOTSOCK if the fd passed as the first
-         argument is not a socket
-
-                                   7/5
-                                   ---
-lib/readline/complete.c
-       - new variable, available to library users, to inhibit completion
-         and cause the completion character to be inserted into the
-         line with self-insert: rl_inhibit_completion.  Set to 0 by default.
-
-lib/readline/readline.h
-       - extern declaration for rl_inhibit_completion
-
-lib/readline/doc/rltech.texinfo
-       - documented rl_inhibit_completion
-
-lib/readline/bind.c
-       - new readline user variable: disable-completion.  This provides
-         users a way to toggle the value of rl_inhibit_completion
-
-doc/{bash.{1,html},readline.3}, lib/readline/doc/rluser.texinfo
-       - documented disable-completion variable
-
-lib/readline/doc/Makefile
-       - added `html' target to create html from rlman.texinfo and
-         hist.texinfo
-
-                                   7/8
-                                   ---
-builtins/cd.def
-       - only try cd spelling correction if the shell is currently
-         interactive, regardless of value of `cdspell' option
-
-lib/posixheaders/alloca.h
-       - AIX 4.2 needs `#pragma alloca' if gcc is not being used
-
-                                   7/9
-                                   ---
-builtins/getopts.def
-       - return EXECUTION_FAILURE from getopts if it's trying to assign
-         to a read-only variable
-       - reset sh_badopt to zero in getopts_reset()
-
-builtins/getopt.c
-       - new variable, sh_badopt, set to 1 if we find an illegal option
-       - do the increment of sh_optind if sh_badopt is non-zero and we're
-         at the end of the option string at the beginning of sh_getopt().
-         The increment is deferred until the next call so $OPTIND is
-         correct
-
-builtins/getopt.h
-       - extern declaration of sh_badopt
-
-                                  7/10
-                                  ----
-Makefile.in
-       - don't pass ALLOCA_SOURCE or ALLOCA_OBJECT to the make in lib/malloc
-       - don't make libmalloc.a depend on ALLOCA_DEP -- it causes some
-         compilers to build alloca.o in the top directory, and if ALLOCA
-         is not defined, makes the malloc library depend on a directory
-
-aclocal.m4
-       - some small changes to make the output look better
-
-memalloc.h
-       - made some small changes suggested by the autoconf documentation
-
-                                  7/11
-                                  ----
-parse.y
-       - swapped meanings of \h and \H in prompt_string_decode for
-         bash-1.14.6 compatibility
-
-doc/{bash.{1,html},bashref.texi}
-       - updated prompt string decoding section with swap of \h and \H
-
-general.c
-       - print_timeval and print_time_in_hz now accept a FILE * as the
-         first argument, so `times' can print to stdout while `time'
-         prints to stderr
-
-execute_cmd.c
-       - changed time_command to print the timing statistics to stderr
-
-builtins/times.def
-       - added the FILE * argument to the calls to print_timeval and
-         print_time_in_hz
-
-support/texi2html
-       - upgraded to version 1.50
-
-error.c
-       - include bashhist.h if HISTORY is defined for declarations of
-         last_history_line() and remember_on_history
-
-lib/glob/glob.c
-       - add a `#pragma alloca' as the first thing in the file if we're
-         not using gcc and _AIX is defined
-
-lib/posixheaders/memalloc.h
-       - remove the `#pragma alloca' stuff; it is done in the C source
-         files now, to avoid problems with other AIX header file
-         declarations
-
-                                  7/12
-                                  ----
-lib/readline/rltty.c
-       - some changes to work around AIX 4.2 bugs (sometimes OPOST is unset
-         in termios, sometimes FLUSHO is inexplicably set in termios, etc.)
-
-                                  7/15
-                                  ----
-lib/readline/rltty.c
-       - make SETATTR use TCSADRAIN on POSIX machines.  This setting is
-         supposed to be used for changes that affect output
-
-[bash-2.0-alpha4 released]
-
-                                  7/16
-                                  ----
-trap.c
-       - changed reset_or_restore_signal_handlers to honor traps before
-         special signals, so that `trap "" 2' works right and causes
-         children to ignore SIGINT
-
-locale.c
-       - added lc_all variable to track the value of LC_ALL
-       - added new functions: set_default_locale_vars, set_locale_var,
-         set_lang, get_locale_var, removed get_current_messages_locale
-
-subst.h
-       - added extern declaration for sv_locale
-
-subst.c
-       - LC_ALL, LC_CTYPE, LC_MESSAGES, and LANG are now special variables;
-         sv_locale() is called when they are assigned a value
-
-shell.c
-       - call set_default_locale_vars after initializing the shell variables
-         in main(), so LC_CTYPE and LC_MESSAGES (if present) have values
-       - shell.c does not need to include <locale.h>
-
-general.c
-       - changed print_timeval and print_time_in_hz to format their output
-         as Posix.2 specifies for `time -p' if the new POSIX_TIME argument
-         is non-zero
-
-parse.y
-       - new grammar production: timespec, to handle `time' and `time -p'
-       - change to special_case_tokens so that -p after `time' returns
-         TIMEOPT
-
-execute_cmd.c
-       - set posix_time in time_command if the command's flags include
-         CMD_TIME_POSIX
-       - call print_timeval and print_time_in_hz with posix_time as
-         the new third argument
-       - use a space to separate the word (`real') and the time if we're
-         in posix mode.  This is what POSIX.2 defines for `time -p'
-
-builtins/times.def
-       - call print_timeval and print_time_in_hz with 0 as the new third
-         argument
-
-command.h
-       - new flag: CMD_TIME_POSIX, used to handle `time -p'
-
-doc/{bash.{1,html},bashref.texi}
-       - documented `time -p'
-
-                                  7/17
-                                  ----
-support/mkversion.c
-       - include `config.h' before any other include files
-
-parse.y
-       - initialize was_dollar to 0 in parse_matched_pair
-
-configure.in
-       - removed duplicate check for <sys/file.h> from call to
-         AC_HAVE_HEADERS
-
-sig.c
-       - include siglist.h so we can find out if it defines HAVE_SYS_SIGLIST
-
-siglist.h
-       - define HAVE_SYS_SIGLIST if we end up defining sys_siglist as
-         _sys_siglist (Solaris 2.[45])
-
-siglist.c
-       - include "siglist.h" before testing whether or not HAVE_SYS_SIGLIST
-         is defined; it may be defined in there (Solaris 2.[45])
-
-                                  7/19
-                                  ----
-examples/misc/alias-conv.sh
-       - updated, now uses code from examples/functions/csh-compat to do
-         the alias conversion, uses `command' builtin in functions it
-         creates, does some substitution of csh special variables to
-         bash equivalents
-
-examples/misc/cshtobash
-       - a more ambitious script that attempts to convert csh aliases,
-         environment variables, and local variables to bash equivalents
-
-                                  7/22
-                                  ----
-bashline.c
-       - added `:' to the set of completion word break characters so that
-         individual directories in $PATH assignments can be completed
-
-aclocal.m4
-       - added a new macro, BASH_CC_WORKS, that aborts configuration if
-         ${CC} can't compile a simple program successfully
-
-configure.in
-       - call BASH_CC_WORKS before doing anything else
-
-                                  7/23
-                                  ----
-execute_cmd.c
-       - fixed select_query to print the prompt ($PS3) to stderr
-
-support/bashbug.sh
-       - workaround for bug in SunOS 5.x /bin/sh that causes it to
-         not ignore interrupts while waiting for a foreground process
-         to exit
-
-                                  7/24
-                                  ----
-general.c
-       - added new functions to decompose `timeval's and `clock_t's into
-         seconds and thousandths of seconds:  timeval_to_secs and
-         clock_t_to_secs
-       - changed print_timeval and print_time_in_hz to call timeval_to_secs
-         and clock_t_to_secs, respectively
-       - removed no-longer-used third argument for print_timeval and
-         print_time_in_hz -- `time' output is now done in execute_cmd.c
-
-general.h
-       - new extern declarations for timeval_to_secs and clock_t_to_secs
-
-builtins/times.def
-       - changed calls to print_timeval and print_time_in_hz, removing the
-         no-longer-used third argument
-
-execute_cmd.c
-       - changed the way time_command prints its output:  it now interprets
-         a format string, replacing several escape sequences prefixed with
-         a `%' with the real, user, and system times.  There are options in
-         the format string to ask for the `long' format that `times' uses
-         as well as to specify the number of places after the decimal point,
-         and whether to output fractional seconds at all
-       - time_command now uses the value of the `TIMEFORMAT' variable, if
-         present, to format the timing output.  This is flexible enough to
-         encompass the bash default, posix `time -p', BSD, and SV time
-         formats
-
-                                  7/25
-                                  ----
-Makefile.in
-       - `make clean' should delete the files listed in $(CREATED_SUPPORT);
-         `make mostlyclean' should not
-
-doc/{bash.{1,html},bashref.texi}
-       - fixed an error in the description of the effect that setting and
-         unsetting GLOBIGNORE has on the setting of the `dotglob' option
-
-doc/bashref.texi
-       - updated the section listing the major differences between bash
-         and the SVR4.2 shell
-
-lib/readline/readline.c
-       - removed the setting of _rl_suppress_redisplay, since it doesn't
-         really do anything yet
-
-oslib.c
-       - new function get_clk_tck (void), returns the value of _SC_CLK_TCK
-         if sysconf(3) is available, otherwise returns the value of
-         CLOCKS_PER_SEC (default 60)
-
-general.c
-       - moved CLOCKS_PER_SEC defines to oslib.c
-       - changed clock_t_to_secs to call get_clk_tck once to get the
-         right value to use
-
-externs.h
-       - extern declaration for get_clk_tck
-
-execute_cmd.c
-       - changed print_formatted_time so that a `%' at the end of the string
-         is output literally
-       - changed print_formatted_time to output a newline after the
-         translated format string, so it does not need to be included in
-         the format
-       - changed BASH_TIMEFORMAT (the default time format) to have a leading
-         newline to match ksh93
-
-configure.in
-       - use `shlicc2' on BSD/OS machines
-
-                                  7/26
-                                  ----
-doc/bash.html
-       - major overhaul, cleaned up text, corrected some minor HTML errors
-
-variables.c
-       - call sv_optind and sv_opterr to initialize the getopts stuff in
-         initialize_shell_variables
-
-                                  7/29
-                                  ----
-shell.c
-       - don't let maybe_execute_file try to read files that are not
-         `regular files'
-
-                                  7/30
-                                  ----
-parse.y
-       - cast `string' in yy_string_get() to unsigned char * to avoid
-         sign extension bugs.  For example, bash -c $'ls\377who'
-
-
-builtins/reserved.def
-       - add help text for the `time' reserved word
-       - deleted description of `HISTCONTROL'
-       - added descriptions for HISTIGNORE, PWD, HOSTNAME, GLOBIGNORE,
-         MACHTYPE
-
-                                  7/31
-                                  ----
-builtins/common.c
-       - parse_and_execute saves and restores the line number around
-         calls, and resets it to 0 when pushing the string onto the
-         input stack
-
-parse.y
-       - added code that parses `` within a double-quoted string as a
-         single word
-
-                                   8/6
-                                   ---
-configure.in, config.h.in
-       - look for `textdomain' as well as `gettext' for internationalization
-
-locale.c
-       - when LC_MESSAGES is set, call textdomain as well as setlocale
-       - new variable `default_domain', used to track the value of
-         $TEXTDOMAIN
-
-subst.c        
-       - call sv_locale when TEXTDOMAIN changes
-
-                                   8/7
-                                   ---
-error.c
-       - new function, sys_error(), which prints a formatted string followed
-         by a colon and strerror(errno) to stderr
-
-error.h
-       - extern declaration for sys_error
-
-jobs.c, nojobs.c, input.c, execute_cmd.c, subst.c
-       - changes to use sys_error()
-
-[many files]
-       - changes to many of the literal strings in the code for consistency
-         and easier potential translation
-
-                                   8/8
-                                   ---
-parse.y
-       - new function debug_parser(int) to toggle the value of yydebug
-         if YYDEBUG != 0
-
-                                   8/9
-                                   ---
-oslib.c
-       - don't use CLOCKS_PER_SEC, just try to get CLK_TCK (60 by default)
-
-bashline.c
-       - set saved_history_line_to_use to -1 when it's not going to be used
-         rather than 0.  A value of 0 can be confused with the first
-         history line
-
-builtins/evalstring.c
-       - moved parse_and_execute and auxiliary functions here from
-         builtins/common.c
-
-builtins/evalfile.c
-       - moved maybe_execute_file here from shell.c
-
-Makefile.in, builtins/Makefile.in
-       - changes necessitated by the new files
-
-                                  8/12
-                                  ----
-builtins/common.c
-       - fixed an off-by-one bug in single_quote that could make bash
-         run off the end of a string if it consisted entirely of single
-         quotes
-
-                                  8/13
-                                  ----
-shell.c
-       - moved code from main() to a new function: open_shell_script
-       - don't try to fclose(default_input) if BUFFERED_INPUT is defined
-       - moved argument binding code out of two places in main() and
-         open_shell_script() to a new function: bind_args().  This takes
-         an additional argument telling whether to bind starting at $0
-         or $1
-       - moved the code that calls the with_input_from_* functions into
-         a new function: set_bash_input
-       - moved the normal shell command-line option parsing code out of
-         main() into a new function: parse_shell_options
-       - moved the long option parsing code out of main() into a new
-         function: parse_long_options()
-
-general.c
-       - new function: move_to_high_fd(fd), which tries to move FD to a
-         file descriptor close to the allowed maximum, returning the new
-         fd and closing the old one (or returning the old one if something
-         goes wrong)
-
-general.h
-       - new extern declaration for move_to_high_fd
-
-variables.c
-       - moved indirection_level_string() here from shell.c
-
-jobs.c
-       - change initialize_jobs to use move_to_high_fd() instead of the
-         inline code to do the same thing
-
-                                  8/14
-                                  ----
-lib/readline/readline.c
-       - add `en_US.ISO8859-1' to the list of legal LANG values that turns
-         on readline's 8-bit mode
-
-                                  8/15
-                                  ----
-builtins/evalfile.c
-       - combined source_file and maybe_execute_file into a new function
-         _evalfile(fname, flags), where the flags select the appropriate
-         behavior
-
-eval.c
-       - moved the functions that perform the read-eval loop here from
-         shell.c
-
-execute_cmd.c
-       - changed CPU calculation for printing timing statistics using
-         ideas and code from Deven Corzine (deven@ties.org)
-
-eval.c, builtins/evalstring.c
-       - make sure we dispose of global_command if set -n is on and the
-         shell is not interactive
-
-                                  8/16
-                                  ----
-variables.c
-       - make a new array variable, BASH_VERSINFO, with version information:
-
-               BASH_VERSINFO[0] = release      (2)
-               BASH_VERSINFO[1] = version      (00)
-               BASH_VERSINFO[2] = patch level  (0)
-               BASH_VERSINFO[3] = build version (1058)
-               BASH_VERSINFO[4] = release status (beta1)
-               BASH_VERSINFO[5] = $MACHTYPE    (sparc-sun-sunos4.1.4)
-
-doc/{bash.{1,html},bashref.texi}
-       - Documented BASH_VERSINFO
-
-configure.in, config.h.in
-       - look for bindtextdomain(), set HAVE_BINDTEXTDOMAIN if found
-
-subst.c
-       - call sv_locale if TEXTDOMAINDIR is set or changes
-
-locale.c
-       - handle TEXTDOMAINDIR in set_locale_var; call bindtextdomain if
-         it is present
-
-tests/array.tests
-       - added calls to egrep to filter out BASH_VERSINFO and PIPESTATUS,
-         which can vary from system to system
-
-                                  8/19
-                                  ----
-shell.c
-       - moved line_buffer_stream from here to oslib.c, made it into a
-         replacement for setlinebuf() if that is not available
-
-externs.h
-       - extern declaration for setlinebuf()
-
-lib/readline/input.c
-       - in rl_gather_tyi, punt if chars_avail < 0 after checking input fd
-
-                                  8/20
-                                  ----
-builtins/suspend.def
-       - send SIGSTOP instead of SIGTSTP
-
-                                  8/21
-                                  ----
-builtins/colon.def
-       - added true and false as builtins (undocumented)
-
-CWRU/POSIX.NOTES, doc/bashref.texi
-       - note that process substitution is not available in posix mode
-
-bashintl.h
-       - new header file for internationalization, included by locale.c
-
-                                  8/22
-                                  ----
-subst.c
-       - in command_substitute, set istring to NULL before trying to
-         make the pipe, so if that fails, the code at error_exit:
-         doesn't try to free it
-
-execute_cmd.c
-       - when executing a shell script without a leading `#!' internally,
-         and the shell is not interactive, close the fd to the script
-         we're reading.  If this is called by the exec builtin, the shell
-         will not have forked, and the fd will not have been closed, even
-         though it's marked close-on-exec
-       - if subshell_argv is non-null, free its members (except 0) and
-         subshell_argv in shell_execve before reassigning it
-       - dispose of currently_executing_command before jumping back to
-         subshell_top_level
-
-builtins/hash.def
-       - use a sentinel variable so we only initialize the hash table
-         once in initialize_filename_hashing
-
-shell.c
-       - don't flush the filename hash table in shell_reinitialize
-       - free dollar_vars[0] in set_shell_name before assigning it
-       - don't fetch the current hostname more than once
-       - don't fetch the current user information more than once unless
-         the uid changes
-
-parse.y
-       - initialize_bash_input should free bash_input.name if it is
-         non-null before zeroing it
-
-                                  8/23
-                                  ----
-aclocal.m4
-       - changed BASH_CHECK_SOCKLIB:  if -lsocket is present, check for
-         and cache the existence of -lnsl.  Define LIBS appropriately
-         based on the values of the cache variables rather than relying
-         on the autoconf tests to do it
-
-                                  8/26
-                                  ----
-parse.y
-       - fix up yy_readline_get and yy_stream_get to fix the sign
-         extension problem
-
-shell.c
-       - move the setjmp(top_level) that catches early SIGINTs to the
-         first statement in main()
-
-Makefile.in
-       - added a `strip' target to strip the binary
-
-[bash-2.0-beta1 frozen]
-
-                                  8/27
-                                  ----
-parse.y
-       - replaced several static state variables with a single flags word:
-         parser_state
-
-                                  8/28
-                                  ----
-parse.y
-       - in read_token_word, combined the ${...} case with the other
-         expansion cases -- the code was identical
-       - added code to handle ksh-style ((...)) -- equivalent to
-         `let "..."'.  In fact, the above construct is translated internally
-         into `let "..."', so error messages output by the evaluator
-         will contain `let'
-
-expr.c
-       - changed evalerror to call internal_error so the name of the
-         shell script is prefixed to the message, if necessary
-
-Makefile.in
-       - changed RELSTATUS to `beta2'
-
-tests/{arith,new-exp}.{tests,right}
-       - changed the expected error message because of the change in format
-         of the arithmetic evaluation error messages in expr.c
-
-builtins/pushd.def
-       - changed pushd_builtin so `pushd -' is equivalent to `pushd $OLDPWD'
-
-externs.h
-       - changed the extern declaration for setlinebuf() to avoid having
-         to include stdio.h before externs.h everywhere
-
-                                  8/29
-                                  ----
-error.c
-       - new function, parser_error, for use by parts of the parser that
-         don't want to call report_syntax_error
-
-error.h
-       - extern declaration for parser_error
-
-parse.y
-       - changed some parts of the parser to use parser_error
-       - made the ((...)) code #ifdef'd on DPAREN_ARITHMETIC
-
-shell.c
-       - added a line to the --help output saying to use `bashbug' to
-         report bugs
-
-configure.in
-       - added new option: --enable-dparen-arithmetic; it controls
-         the DPAREN_ARITHMETIC define in config.h
-       - changed $host_os check for SCO to only enable -DWAITPID_BROKEN
-         for sco3.2v5; all other SCO versions enable -DMUST_UNBLOCK_CHILD
-
-config.h.in
-       - added line for DPAREN_ARITHMETIC, modified by configure
-
-doc/{bash.{1,html},bashref.texi}
-       - documented new ((...)) command and new configuration option
-
-execute_cmd.c
-       - shell_execve should not try to close default_buffered_input unless
-         it is >= 0.  Other code that closes it and deallocates the buffer
-         should set default_buffered_input to -1
-
-                                  8/30
-                                  ----
-configure.in
-       - more changes to LOCAL_CFLAGS for sco machines
-
-error.c
-       - changed parser_error to handle all cases of the shell being
-         interactive, not interactive, reading from a script, and reading
-         from some other file
-
-parse.y
-       - changed report_syntax_error to call parser_error for consistent
-         messages
-
-dispose_cmd.c
-       - change dispose_command to use programming_error instead of
-         report_error
-
-execute_cmd.c, input.c, general.c
-       - changed calls to report_error to internal_error, since we don't
-         want to possibly exit in any of those cases
-
-                                   9/3
-                                   ---
-input.c
-       - changed the `localbuf' type to `unsigned char'
-
-parse.y
-       - changed yy_stream_get to use feof to test for end of file when
-         not using getc_with_restart
-
-                                   9/6
-                                   ---
-config.h.top
-       - added a commented-out define for SYS_BASH_LOGOUT, which is a
-         system-wide .bash_logout file, run when a login shell exits
-       - added /sbin to STANDARD_UTILS_PATH
-
-builtins/exit.def
-       - added support for SYS_BASH_LOGOUT
-
-                                  9/10
-                                  ----
-lib/readline/{{chardefs,histlib}.h,{bind,histexpand,readline,util,vi_mode}.c}
-       - changed to_upper to _rl_to_upper and to_lower to _rl_to_lower
-       - changed digit_value to _rl_digit_value
-       - changed digit_p to _rl_digit_p
-       - changed uppercase_p and lowercase_p to _rl_uppercase_p and
-         _rl_lowercase_p respectively
-       - changed pure_alphabetic to _rl_pure_alphabetic
-
-support/zecho.c
-       - new file, implements a bare-bones echo (no -n, no \-escapes),
-         to be used by tests
-
-tests/rhs-exp.tests
-       - changed calls to echo to use recho to avoid errors when bash is
-         configured with --enable-usg-echo-default
-
-tests/more-exp.tests
-       - changed some calls to echo to use zecho to avoid errors when bash
-         is configured with --enable-usg-echo-default
-
-                                  9/11
-                                  ----
-lib/readline/histexpand.c
-       - fixed a possible off-by-one error in history_expand_internal when
-         deciding whether or not to reallocate `result'
-
-expr.c
-       - fixed expcond() so that an assignment may be supplied as the
-         token after the `?'
-       - illegal bases now cause an evaluation error
-       - multiple base specifications now cause an evaluation error
-
-tests/arith.tests
-       - added more tests for conditional operator and associativity
-
-tests/{run-heredoc,heredoc.{tests,right}}
-       - new set of tests for here-documents
-
-builtins/common.c
-       - print out the name returned by get_name_for_error in
-         builtin_error()
-
-subst.c
-       - set this_command_name to NULL before processing command-line
-         assignment statements so arithmetic evaluation errors don't
-         print garbage
-       - according to POSIX.2, echo ${foo?$x} should print the expanded
-         value of $x, even when it doesn't expand into anything
-
-                                  9/12
-                                  ----
-shell.c
-       - changed the execution of startup files so that $ENV is never
-         run by a non-interactive shell and an interactive shell begun
-         as `sh' reads and executes $ENV, as posix specifies
-
-doc/{bash.{1,html},bashref.texi}
-       - updated description of startup file behavior
-
-doc/Makefile.in
-       - make sure references to bashref.texi are preceded by $(srcdir)/
-         so we can build the documentation in another directory just by
-         typing `make'; e.g. after giving configure the --srcdir option
-
-subst.c
-       - change to array_remove_pattern to avoid evaluating the `param'
-         part of the ${param#word} spec twice when doing things like
-         echo ${A[x=(i+=1)]#${A[y=(i+=2)]}}
-
-                                  9/13
-                                  ----
-builtins/bashgetopt.c
-       - fixed a problem with `;' option specifier (optional argument)
-
-support/config.{sub,guess}
-       - added cases to recognize CRAY C90 and T90
-
-builtins/ulimit.def
-       - rewritten almost from scratch to use internal_getopt and to not
-         mask the return value from getrlimit/setrlimit, and to make it
-         easier to maintain
-       - added `-l' option for systems with RLIMIT_MEMLOCK (4.4 BSD)
-
-doc/{bash.{1,html},bashref.texi}
-       - documented new `-l' option to `ulimit'
-
-                                  9/24
-                                  ----
-parse.y
-       - added `in' to the list of tokens that should not be followed by
-         a semicolon when combining history lines
-       - removed the special-case code in history_delimiting_chars that
-         tried to be smart about `()'
-
-                                  9/25
-                                  ----
-print_cmd.c
-       - fixes to print_group_command from Andreas Schwab
-       - rewrote indent() to use a single malloced string for the spaces
-         to print, rather than calling cprintf multiple times
-
-shell.c
-       - make sure to set the strings in current_user to NULL after freeing
-         their contents in uidget().
-
-parse.y
-       - make sure decode_prompt_string quotes the values inserted by the
-         \w and \W escape sequences using backslashes if the string will be
-         expanded later because promptvars is set
-
-support/mkdirs
-       - removed leading `^' from regular expressions to be matched by
-         `expr' on the advice of meyering@appaloosa.asic.sc.ti.com
-
-                                  9/26
-                                  ----
-parse.y
-       - added a few more possible flag values for parser_state
-       - changed history_delimiting_chars to not add a semicolon after a
-         right paren if we're parsing a case statement
-
-                                  9/27
-                                  ----
-builtins/ulimit.def
-       - a few minor cleanups
-
-                                  10/1
-                                  ----
-builtins/trap.def
-       - make sure first_arg is non-empty before calling signal_object_p()
-
-[bash-2.0-beta2 frozen]
-
-                                  10/2
-                                  ----
-bashintl.h
-       - if we have setlocale(), but don't have a definition for LC_ALL,
-         undefine HAVE_SETLOCALE
-
-configure.in
-       - set LOCAL_LDFLAGS on AIX 4.2 to allow dynamic loading of builtins
-
-builtins/enable.def
-       - use correct flags for AIX 4.2 in dlopen call if _AIX is defined
-
-examples/loadables/Makefile
-       - add sample commands for AIX 4.2
-
-                                  10/3
-                                  ----
-variables.c
-       - new functions: merge_temporary_env(), merge_builtin_env(), to
-         take temporary_env and builtin_env, respectively, and create
-         shell variables from them
-
-variables.h
-       - new extern declarations for merge_temporary_env() and
-         merge_builtin_env()
-
-execute_cmd.c
-       - if variable assignments preceds a posix special builtin, and the
-         shell is in posix mode, those assignments should persist in the
-         shell environment after the builtin completes
-
-doc/bashref.texi
-       - modified description of what's changed by posix mode to include
-         the persistance of assignment statements preceding special builtins
-
-doc/mkposix
-       - new script to create CWRU/POSIX.NOTES directly from the `Bash
-         POSIX Mode' node of bashref.texi, like INSTALL is created
-
-                                  10/4
-                                  ----
-lib/{malloc,glob,readline}/Makefile.in, builtins/Makefile.in
-       - don't have autoconf substitute LOCAL_CFLAGS into the CFLAGS
-         assignment so people on SCO 3.2v[45] can still build with
-         NO_MEMSCRAMBLE even when they run `make CFLAGS=...'
-
-test.c
-       - renamed eaccess() to test_eaccess() to avoid conflict with SCO
-
-config.h.bot
-       - #undef HAVE_GETCWD if GETCWD_BROKEN is defined, so we use the
-         replacement in getcwd.c
-
-general.c
-       - fixed a small memory leak in full_pathname that occurs if
-         getcwd() returns NULL
-
-oslib.c
-       - new constant string variable: bash_getcwd_errstr, to use when
-         getcwd() returns NULL
-
-{general,jobs}.c, parse.y, builtins/{cd.def,common.c}
-       - change calls to getwd() to use getcwd() instead
-
-general.c, builtins/common.c, builtins/cd.def
-       - changed error behavior when getcwd() returns NULL to use
-         bash_getcwd_errstr, sys_error(), and strerror(errno) where
-         appropriate
-
-sig.c
-       - change a couple of calls to signal to set_signal_handler
-
-aclocal.m4
-       - added definitions of _popen and _pclose to the BASH_FUNC_GETCWD
-         macro
-
-configure.in
-       - added -DPATH_MAX=1024 to LOCAL_CFLAGS for sco3.2v[45] on the
-         advice of <grog@lemis.de>
-       - removed check for getwd(3)
-
-externs.h
-       - removed extern declaration for getwd(), added extern declaration
-         for getcwd() if HAVE_GETCWD is not defined
-
-oslib.c
-       - removed definition of getwd(); it is no longer used
-
-lib/readline/rltty.c
-       - changed SETATTR macro for SCO POSIX systems to call tcsetattr
-         with TCSANOW, on advice of <wbader@nacs.fast.net>
-
-                                  10/7
-                                  ----
-support/mkdirs
-       - slight change to work around a bug in the HP-UX `expr'
-
-                                  10/8
-                                  ----
-lib/readline/vi_mode.c
-       - changes so that the text inserted with an `i' command is available
-         to be reinserted with `.'
-
-examples/functions/autoload.v2
-       - new implementation: uses arrays, keeps a list of autoloaded
-         functions, allows autoloaded functions to be removed, allows
-         autoloaded functions to be listed
-
-execute_cmd.c
-       - when freeing the members of subshell_argv in shell_execve(), free
-         only the members up to subshell_argc
-
-                                  10/9
-                                  ----
-configure.in
-       - replaced calls to AC_HAVE_FUNCS with AC_CHECK_FUNCS
-       - replaced calls to AC_FUNC_CHECK with AC_CHECK_FUNC
-       - replaced calls to AC_HAVE_HEADERS with AC_CHECK_HEADERS
-       - added additional code to check for libintl.{a,so} for the
-         internationalization functions if bindtextdomain is not found
-         in libc
-       - define HAVE_WAIT3 if AC_FUNC_CHECK(wait3,...) succeeds, rather
-         than HAVE_FUNC_WAIT3, which is not used in the source
-       - added a call to AC_FUNC_STRCOLL to check for the presence of a
-         working strcoll(3)
-
-config.h.in
-       - removed HAVE_FUNC_WAIT3
-       - added HAVE_STRCOLL
-
-variables.c, stringlib.c
-       - move sort_char_array from variables.c to stringlib.c
-
-variables.h, externs.h
-       - move extern declaration of sort_char_array from variables.h to
-         externs.h
-
-variables.c
-       - don't sort the exported environment, even when we're not in
-         posix mode
-
-stringlib.c
-       - changed qsort_string_compare to use strcoll(3) if it is available
-         (HAVE_STRCOLL is defined).  This means that the results of glob
-         expansions are now sorted in the per-locale collation order
-
-locale.c
-       - track the value of $LC_COLLATE and call setlocale(LC_COLLATE,...)
-         when it changes.  Also, set its default value
-
-subst.c
-       - LC_COLLATE is now a special variable; call sv_locale when it is
-         assigned to or unset
-
-lib/readline/util.c
-       - move compare_strings here from complete.c; renamed it
-         _rl_qsort_string_compare; made it use strcoll(3) if it's
-         available; made it global so other library files can use it
-
-lib/readline/complete.c
-       - use _rl_qsort_string_compare instead of static compare_strings.
-         This means that completions are now sorted in a locale-specific
-         collation order
-
-lib/readline/funmap.c
-       - removed static declaration of qsort_string_compare; qsort now
-         uses _rl_qsort_string_compare instead
-
-oslib.c
-       - rewrote stricmp, strnicmp; renamed them strcasecmp and
-         strncasecmp, since they're only compiled in if HAVE_STRCASECMP
-         is not defined
-
-externs.h
-       - removed extern declarations of strnicmp, stricmp, replacing them
-         with declarations of strcasecmp and strncasecmp if HAVE_STRCASECMP
-         is not defined; removed #defines of stricmp and strnicmp to
-         strcasecmp and strncasecmp
-
-trap.c
-       - changed calls to stricmp to direct calls to strcasecmp
-
-Makefile.in
-       - bumped RELSTATUS to `beta3'
-
-doc/bash.{1,html}
-       - added mention of LC_COLLATE
-
-doc/bashref.texi
-       - removed item about sorting environment from the section on posix
-         mode
-
-                                  10/16
-                                  -----
-subst.c
-       - fixed array_length_reference to return 0 for an unbound variable
-         and 1 for a variable that is not an array
-
-examples/scripts.v2/cdhist.bash
-       - package with functions to replace cd and maintain a cd directory
-         stack
-
-examples/scripts.v2/pmtop
-       - a `poor man's top' for SunOS 4.x and BSD
-
-examples/scripts.v2/bashrand
-       - a script to return a random number within a specified range, with
-         an optional seed
-
-examples/scripts/zprintf
-       - printf(1) replacement that uses gawk to do the output
-
-doc/{bash.{1,html},bashref.texi}, lib/readline/doc/hsuser.texinfo
-       - several small corrections
-
-                                  10/17
-                                  -----
-variables.c
-       - changed the calls to list_string_with_quotes and then
-         expand_words_no_vars in assign_array_var_from_string to a single
-         call to expand_string.  This behaves more rationally, and closer
-         to ksh93
-
-subst.c
-       - commented out list_string_with_quotes -- it is no longer used
-
-lib/readline/terminal.c
-       - new function, _rl_set_screen_size(int rows, int cols), to set
-         readline's idea of the screen size
-
-jobs.c, nojobs.c
-       - make sure that window size changes are propagated back down to
-         the readline code, by calling _rl_set_screen_size with the
-         new sizes.  This happens when bash gets a SIGWINCH or if
-         `checkwinsize' is set with `shopt'
-
-                                  10/18
-                                  -----
-support/config.guess
-       - added code to recognize the various NetBSD ports
-
-lib/readline/signals.c
-       - don't install a handler for SIGALRM if the containing application
-         has installed a handler with SA_RESTART as part of the flags.
-         This is in effect, obviously, only for systems with POSIX signals.
-
-subst.c
-       - make parameter_brace_expand_length expand variables in a double-
-         quoted environment so it takes spaces in the variable value into
-         account
-
-                                  10/21
-                                  -----
-command.h
-       - flags for possible values of subshell_environment telling what
-         caused the subshell
-
-builtins/command.def
-       - the `command' builtin should not be setting CMD_NO_FORK at all;
-         it doesn't know enough about the execution context to do so
-
-execute_cmd.c, subst.c
-       - set subshell_environment to one of the values in command.h rather
-         than to `1', so we know what kind of subshell it is (just for
-         informational purposes; nothing actually uses this yet)
-
-
-                                  10/22
-                                  -----
-execute_cmd.c
-       - just return EXECUTION_SUCCESS immediately in execute_command_internal
-         if read_but_dont_execute is set
-
-                                  10/23
-                                  -----
-general.c
-       - fixed check_dev_tty to return immediately if ttyname() returns NULL
-
-builtins/suspend.def
-       - SIGSTOP cannot be caught, so there's no reason to try to do so
-
-examples/loadables/{finfo,pathchk,print}.c
-       - minor fixes
-
-pathexp.c
-       - fix to off-by-one error in setup_ignore_patterns
-
-jobs.c
-       - try to set the tty pgrp to our pgrp if we change our pgrp to our
-         pid and become a process group leader.  If it doesn't work,
-         reset our pgrp to what it was originally and disable job control
-
-aclocal.m4
-       - new test, BASH_STRUCT_TERMIO_LDISC, to test for a c_line member
-         of struct termio
-
-config.h.in
-       - add a new preprocessor variable, TERMIO_LDISC, undefined by default
-
-configure.in
-       - call BASH_STRUCT_TERMIO_LDISC after BASH_STRUCT_TERMIOS_LDISC
-
-                                  10/25
-                                  -----
-lib/readline/terminal.c
-       - increased the size of the termcap buffers to 4096
-
-                                  10/29
-                                  -----
-parse.y
-       - include memalloc.h for uses of alloca that the code in the
-         generated bison parser does not catch (e.g., HP-UX 10.10)
-
-aclocal.m4
-       - new test, BASH_KERNEL_RLIMIT_CHECK, to check whether a given
-         HP-UX machine needs _KERNEL defined for the RLIMIT_* defines in
-         <sys/resource.h> (9.05, 10.01 yes, 10.10,10.20 no)
-
-configure.in
-       - call BASH_KERNEL_RLIMIT_CHECK if $host_os begins with `hpux'
-
-config.h.in
-       - new #undef for RLIMIT_NEEDS_KERNEL
-
-builtins/ulimit.def
-       - only define _KERNEL before including <sys/resource.h> if HPUX
-         and RLIMIT_NEEDS_KERNEL are both defined
-
-[bash-2.0-beta3 frozen]
-
-                                  11/1
-                                  ----
-locale.c
-       - if setting LC_ALL to a null value (as is done when `unset LC_ALL'
-         is run), call setlocale() to set LC_ALL back to default_locale
-
-lib/readline/readline.c
-       - moved i18n code from here to nls.c
-
-lib/readline/Makefile.in, Makefile.in
-       - new readline library member, nls.c
-
-lib/readline/nls.c
-       - new file, with internationalization code from readline.c (such as
-         it is)
-       - updated legal_lang_values to just contain a list of codesets
-       - added code modified from a diff sent by Ulrich Drepper
-         <drepper@cygnus.com> to parse a locale specification and isolate
-         and normalize the codeset part, for checking against the values
-         in legal_lang_values
-
-                                  11/4
-                                  ----
-builtins/setattr.def, locale.c, aclocal.m4, oslib.c
-       - minor cleanups
-
-                                  11/5
-                                  ----
-lib/readline/complete.c, test.c, trap.c
-       - more minor cleanups
-
-                                  11/6
-                                  ----
-parse.y
-       - added a `flags' parameter to parse_matched_pair, currently unused
-
-                                  11/7
-                                  ----
-configure.in, config.h.in
-       - add a check for time_t, defaulting to `long' if it's not
-         defined in <sys/types.h>
-
-builtins/fc.def
-       - use `time_t *' instead of `long *' in call to time()
-
-                                  11/8
-                                  ----
-configure.in
-       - removed check for getpwent in libsun.a; it's not necessary for
-         recent versions of irix (irix[56].?)
-
-                                  11/11
-                                  -----
-test.c
-       - used `&&' where `||' was needed when testing if HAVE_LSTAT and
-         S_IFLNK are both defined
-
-[bash-2.0-beta3 net release version frozen]
-
-                                  11/12
-                                  -----
-builtins/getopt.c
-       - when sh_getopt detects that a required argument is not present,
-         set sh_optarg to "" so that getopts does the right thing
-
-                                  11/15
-                                  -----
-builtins/ulimit.c
-       - made the default (without -H or -S) report the soft limit and set
-         both soft and hard limits (like sh and ksh)
-
-expr.c
-       - changed the maximum base in base#num constants to 64, implemented
-         just like ksh93
-
-doc/{bash.{1,html},bashref.texi}
-       - updated description of ulimit builtin to new behavior when
-         neither -H nor -S is supplied
-       - updated arithmetic evaluation section with new maximum base and
-         explanation of how numbers between 10 and 63 are represented
-
-lib/readline/vi_mode.c
-       - in rl_vi_done_inserting, don't try to save the text entered while
-         in insert mode unless rl_undo_list is non-null (indicating that
-         there was actually some text to be saved)
-
-                                  11/19
-                                  -----
-lib/readline/tcap.h
-       - new file, for termcap library definitions.  Uses <termcap.h> if
-         it is available
-
-lib/readline/rldefs.h
-       - remove inclusion of termcap.h; now included in tcap.h
-
-lib/readline/{terminal,display,readline}.c
-       - include tcap.h
-
-lib/readline/Makefile.in
-       - update dependencies to include tcap.h
-
-                                  11/21
-                                  -----
-lib/readline/complete.c
-       - broke the code that computes the lcd of the list of completion
-         matches out into a separate function, compute_lcd_of_matches()
-
-lib/readline/complete.c
-       - call compute_lcd_of_matches after calling the application-specific
-         completion ignore function, since it may have eliminated some
-         names from the match list
-
-builtins/cd.def
-       - replaced instances of MAXNAMLEN in the spelling correction code
-         with PATH_MAX
-
-lib/readline/terminal.c
-       - new termcap capabilities: kh (sent by Home key) and kH (sent by
-         End key) automatically bound to beginning-of-line and end-of-line
-         respectively in emacs_standard and vi_movement maps
-
-mailcheck.c
-       - fix to remember_mail_dates so any message following the
-         filename is saved correctly
-
-                                  11/22
-                                  -----
-lib/readline/bind.c
-       - fixed extern declaration of _rl_parsing_coditionalized_out
-         to match declaration in readline.c
-
-                                  11/25
-                                  -----
-doc/{bash.{1,html},bashref.texi}
-       - fixed a gross documentation error in the description of
-         ${parameter:offset:length} (offset and length were transposed)
-       - slight changes to the description of output redirection
-
-subst.c
-       - new function, quoted_substring, to return substrings of variables
-         when the expression is within double quotes and the value has
-         CTLESC characters embedded within it.  Called by
-         parameter_brace_substring
-       - get_var_and_type should return VT_POSPARMS if `*' is passed as
-         the variable name
-       - added a new first parameter for pos_params -- the variable name
-       - changed pos_params to obey the rules for "$*" wrt using the
-         first character of IFS as the separator in the result
-       - if an unquoted $* or $@ is expanded, call quote_escapes on the
-         result to protect any special characters from inadvertently
-         causing quoting
-
-                                  12/3
-                                  ----
-builtins/ulimit.def
-       - corrected a misspelling of `unlimited'
-       - added support for linux RLIMIT_AS resource limit for -v option
-         and changed the block multiplier to 1024 if we have RLIMIT_VMEM
-         or RLIMIT_AS
-
-                                  12/5
-                                  ----
-lib/readline/readline.c
-       - fix rl_insert to handle a count of exactly 1024
-
-shell.c
-       - new function: unbind_args(), which removes all the positional
-         parameters.  Just calls remember_args(NULL, 1)
-
-execute_cmd.c
-       - call unbind_args when executing a subshell, after setting up
-         subshell_argX
-
-bashintl.h
-       - include <libintl.h> if HAVE_LIBINTL_H defined
-
-config.h.in
-       - add HAVE_LIBINTL_H define
-
-configure.in
-       - add call to AC_CHECK_HEADERS for libintl.h
-
-doc/Makefile.in
-       - added infodir and various mandir defines for completeness
-
-Makefile.in
-       - changed some of the *dir defines to use the autoconf values
-         (e.g., bindir = @bindir@)
-       - changed manroot to mandir, removed old mandir and manext variables
-       - added `manpfx' variable; should be either `man' or `cat'
-
-                                  12/6
-                                  ----
-lib/readline/readline.c
-       - fixed rl_digit_loop so it once again displays the argument count
-         as it's being entered (added calls to _rl_save_prompt and
-         _rl_restore_prompt)
-
-                                  12/7
-                                  ----
-support/config.guess
-       - recognize netbsd/vax
-       - recognize openbsd on all supported platforms
-       - recognize tenon's machten running on powerpc and macintosh
-
-                                  12/9
-                                  ----
-support/config.guess
-       - added all sorts of systems from config.guess distributed with
-         autoconf-2.12
-
-                                  12/10
-                                  -----
-subst.c
-       - new function quoted_strchr(); does the same thing as strchr but
-         honors shell backslash and CTLESC quoting conventions
-       - parameter_brace_patsub now calls quoted_strchr
-
-                                  12/11
-                                  -----
-shell.c
-       - if the shell is named `-su', run the normal login shell startup
-         files, even if the shell is not interactive.  This handles the
-         case of `su - username -c command' compatibly
-
-lib/readline/readline.c
-       - minor change to rl_digit_loop so that M-- and M--1 are equivalent,
-         as the prompt for digit arguments has always implied
-
-lib/malloc/malloc.c
-       - added definitions of calloc() and cfree(), compiled in unless
-         NO_CALLOC is defined to cpp
-
-
-                                  12/16
-                                  -----
-parse.y
-       - protect uses of history_expansion_inhibited with #ifdef
-         BANG_HISTORY
-
-[bash-2.0-release candidate frozen]
-
-builtins/common.c
-       - changed backslash_quote to quote a tilde if it's the first
-         character in the string
-
-                                  12/17
-                                  -----
-aclocal.m4
-       - changed BASH_CC_WORKS to provide a cross-compiling default for
-         better error messages
-
-configure.in
-       - generated configure using autoconf-2.12
-       - changed the default value of CFLAGS to `-g -O2'
-
-                                  12/18
-                                  -----
-aclocal.m4
-       - look for /var/spool/mail before /usr/spool/mail when checking
-         for the default mail directory
-
-jobs.c, builtins/shopt.def
-       - fixed a couple of `macro replacement within a string literal'
-         problems
-
-Makefile.in
-       - removed `realclean' target
-
-shell.c
-       - changed the first line ouput by bash --version to conform to
-         the latest GNU coding standards (replace space between version
-         and machtype with a hyphen)
-
-                                  12/19
-                                  -----
-execute_cmd.c
-       - when looking at the debug trap in execute_function and
-         execute_command_internal, make sure it's trapped and not
-         ignored before trying to save the value of the trap string
-
-                                  12/20
-                                  -----
-trap.c
-       - changed set_signal and ignore_signal to handle EXIT_TRAP and
-         DEBUG_TRAP specially, so we don't try to fetch signal handlers
-         or do other unnecessary things
-
-                                  12/22
-                                  -----
-builtins/ulimit.def
-       - if the current euid is not 0, and we're trying to set the hard
-         limit of a resource to RLIM_INFINITY, set it to the current hard
-         limit to avoid error messages
-
-builtins/read.def
-       - fix for bug that caused core dump if line read had leading white
-         space and IFS was set to ''
-
-[bash-2.0-release frozen]
-
diff --git a/CWRU/old-changelogs/CWRU.chlog.v12 b/CWRU/old-changelogs/CWRU.chlog.v12
deleted file mode 100644 (file)
index dc687d4..0000000
+++ /dev/null
@@ -1,10049 +0,0 @@
-                               12/23/1996
-                               ----------
-[bash-2.0 released]
-
-                                  12/27
-                                  -----
-configure.in
-       - don't automatically use GNU malloc on FreeBSD, the builtin one
-         is supposed to be better (but doesn't have the debugging hooks)
-
-builtins/exec.def
-       - check that full_pathname(command) doesn't return NULL because of
-         inaccessible parent directories
-
-support/config.sub
-       - recognize OpenBSD
-
-execute_cmd.c
-       - broke the code that opens a file for output redirection when in
-         noclobber mode out into a separate function: noclobber_open().
-         This tries to avoid race conditions and file replacement between
-         stat(2) and open(2)
-
-subst.c
-       - make sure pat_subst does not run off the end of its return
-         string when copying the unmatched portion of the input string
-
-                                  12/30
-                                  -----
-doc/Makefile.in
-       - don't install readline.3 by default
-
-lib/tilde/tilde.c
-       - removed an unnecessary check for string[i] being non-null in
-         tilde_find_suffix
-
-                                  12/31
-                                  -----
-support/config.{sub,guess}
-       - merged in changes from config.sub in autoconf-2.12 distribution
-
-lib/readline/readline.c
-       - in rl_newline, only call _rl_vi_done_inserting and _rl_vi_reset_last
-         if readline is currently in vi mode
-
-lib/readline/display.c
-       - corrected a misuse of inv_lbreaks where vis_lbreaks was wanted in
-         the code that decides whether the cursor is at the beginning of
-         an otherwise-empty line
-
-                                1/2/1997
-                                --------
-support/bashbug.sh
-       - fixed a typo, thanks to eggert@twinsun.com
-
-aclocal.m4
-       - new test, BASH_STRUCT_DIRENT_D_FILENO, testing for d_fileno member
-         of struct dirent
-
-configure.in
-       - call BASH_STRUCT_DIRENT_D_FILENO
-
-config.h.in
-       - new #define for STRUCT_DIRENT_HAS_D_FILENO
-
-lib/posixheaders/posixdir.h
-       - only define d_fileno as d_ino if STRUCT_DIRENT_HAS_D_INO is defined
-         and STRUCT_DIRENT_HAS_D_FILENO is not defined.  This fixed the
-         problem of compiling getcwd.c on SunOS4.1.4 with cc
-
-                                   1/3
-                                   ---
-lib/readline/complete.c
-       - fix a memory-used-after-freed bug reported by Andreas Schwab
-
-configure.in
-       - call BASH_CHECK_SOCKLIB only if getpeername is not found in libc
-         (ac_cv_func_getpeername = no)
-
-                                  1/13
-                                  ----
-
-builtins/getopt.h
-       - change #define guard to _SH_GETOPT_H to avoid similar guards in
-         /usr/include/getopt.h (Dec OSF/1 4.x, for example)
-
-variables.h
-       - fix assign_array_from_string so that it rejects attempts to assign
-         to readonly variables
-
-subst.c
-       - fix verify_substring_values to handle offsets that are past the
-         end or before the beginning (in the case of a negative offset)
-         of the expanded variable value
-
-                                  1/14
-                                  ----
-bashline.c
-       - fix a problem where any completion after a `cmd` command
-         substitution would inappropriately attempt command completion,
-         even if the previous command substitution was correctly closed
-
-builtins/evalstring.c
-       - unwind_protect remember_on_history even if the shell is not
-         interactive, since history can now be used in scripts, and
-         `source' will turn off interactive_shell before calling
-         parse_and_execute
-
-jobs.c
-       - new function get_job_by_pid(pid, block) to translate a pid to
-         a job number.  The block argument says whether or not to block
-         SIGCHLD
-
-jobs.h
-       - new extern declaration for get_job_by_pid
-
-builtins/jobs.def
-       - call get_job_by_pid if an argument appears to be a pid rather
-         than a jobspec
-
-configure.in
-       - configure --without-gnu-malloc automatically on MachTen 4.x
-
-builtins/cd.def
-       - change to mindist() so that a best guess of `.' returns 3,
-         which means not reasonable
-
-lib/posixheaders/memalloc.h
-       - changed hpux_9 to __hpux, since the new config stuff doesn't
-         define hpux_9
-
-subst.c
-       - fix parameter_brace_patsub to handle null patterns (doesn't
-         do anything)
-
-oslib.c
-       - slight change to bzero replacement
-
-support/bashbug.sh
-       - changed TEMP to be /tmp/bbug.$$ as a sop to systems with 14-char
-         file names
-
-doc/bashref.texi
-       - add note to POSIX Mode section that the output of `set' when
-         invoked without arguments is sorted when in POSIX mode
-
-                                  1/15
-                                  ----
-support/recho.c
-       - a couple of changes prompted by a `gcc -Wall'
-
-subst.c
-       - changed ASSIGN_RETURN macro to use the do...while(0) idiom to
-         avoid problems with its multiple statements
-
-builtins/setattr.def
-       - a bad identifier given to readonly or export without an assignment
-         statement (e.g. `readonly a[5]') is an error, but not an assignment
-         error (i.e., return EXECUTION_FAILURE rather than EX_BADASSIGN)
-
-tests/{{array,new-exp}.,tilde-}tests
-       - added `set +o posix' at the beginning to disable POSIX mode, which
-         causes some of the tests to fail.  Some systems (e.g. LINUX-FT),
-         set POSIXLY_CORRECT by default
-
-tests/test-tests
-       - added a warning if $UID is 0 to the effect that the test suite
-         should not be run as root
-       - worked around the `noread' and `nowrite' tests failing when run
-         as root
-
-test.c
-       - began removing the remains of the STANDALONE code, since test is
-         included in GNU shellutils
-
-                                  1/16
-                                  ----
-lib/readline/{readline,display}.c
-       - a couple of slight changes to build on Win95 using djgpp (reported
-         by x-aes@telelogic.se)
-
-Makefile.in
-       - changed TERMCAP_LIBDIR to TERM_LIBDIR, so building the termcap
-         library (if necessary) should work now
-
-bashline.c
-       - new function: quote_word_break_characters(), to backslash-quote 
-         characters in a filename that the readline completion code would
-         treat as word breaks
-       - change bash_quote_filename to call quote_word_break_characters if
-         the completion quoting style says to use backslashes
-       - add `:' to rl_filename_quote_characters, since it's part of
-         filename_word_break_characters
-
-lib/posixheaders/posixjmp.h
-       - new file, with half of bashjmp.h
-       - posixjmp.h and lib/readline/posixjmp.h are symlinks to this file
-
-bashjmp.h
-       - include "posixjmp.h" for possible redefinitions of setjmp/longjmp
-         and procenv_t
-
-                                  1/17
-                                  ----
-shell.c
-       - bad options now cause the standard shell usage message (a subset
-         of what `bash --help' prints) to be displayed on stderr
-
-trap.c
-       - don't free the trap command for a DEBUG trap in
-         restore_default_signal if SIG_INPROGRESS is set -- there's already
-         a pointer saved to the old value in _run_trap_internal.  This
-         makes bashdb run better, too
-
-examples/bashdb/bashdb.{pre,fns}
-       - a couple of minor fixes; it actually has a chance of working now
-
-                                  1/21
-                                  ----
-config.h.in
-       - add a define for <dlfcn.h>, HAVE_DLFCN_H
-
-configure.in
-       - look for <dlfcn.h>, define HAVE_DLFCN_H if found
-
-builtins/enable.def
-       - include <dlfcn.h> only if HAVE_DLFCN_H is defined
-
-lib/readline/display.c
-       - renamed clear_to_eol to _rl_clear_to_eol and made it global, so
-         other library files (readline.c) can use it
-       - new function _rl_clear_screen, to clear the screen with the right
-         termcap escape sequence
-
-lib/readline/readline.c
-       - call _rl_clear_to_eol and _rl_clear_screen instead of using tputs
-       - extern declarations for _rl_clear_to_eol and _rl_clear_screen
-
-                                  1/22
-                                  ----
-mailcheck.c
-       - fixed a problem in make_default_mailpath() where a slash was not
-         added between the default mail directory and the username
-
-                                  1/23
-                                  ----
-stringlib.c
-       - added a fourth parameter to ansicstr: the length of the returned
-         string
-
-externs.h
-       - changed declaration of ansicstr
-
-parse.y
-       - changed call to ansicstr -- saves a call to strlen
-
-builtins/echo.def
-       - changed call to ansicstr
-       - if do_v9 is non-zero, use putchar to output the string instead
-         of printf, since there may be embedded NULL characters
-
-doc/{bash.1,bashref.texi}, builtins/trap.def
-       - modified the `trap' documentation to make it clearer that trap
-         takes multiple signal specs as arguments
-
-jobs.c, nojobs.c, jobs.h
-       - renamed initialize_jobs to initialize_job_control, added an
-         argument (force)
-
-jobs.c
-       - set shell_tty to fileno(stderr) in initialize_job_control if
-         the shell is not interactive.  This fixes the problem of bad
-         tty pgrps when monitor mode is turned on in a non-interactive
-         shell
-
-sig.c
-       - made initialize_terminating_signals do only that; moved the rest
-         of the code that used to be there into a new function:
-         initialize_shell_signals, which calls initialize_terminating_signals
-         if the shell is interactive
-       - initialize_terminating_signals is now extern
-       - made reset_terminating_signals return immediately if
-         termsigs_intitialized is zero, meaning that
-         initialize_terminating_signals has not been called
-
-sig.h
-       - new extern declaration for initialize_terminating_signals
-
-trap.c
-       - call initialize_terminating_signals from set_signal if sig is
-         EXIT_TRAP and the shell is not interactive.  Since the terminating
-         signals do not need to be initialized until a trap on exit is
-         set, not doing that at startup should result in a speed increase
-         for scripts
-
-execute_cmd.c
-       - save and restore command->flags in time_command, so you can use
-         `time command' in a loop
-
-                                  1/24
-                                  ----
-lib/readline/display.c
-       - fix redisplay code to wrap correctly if the prompt is longer than
-         the screen width (reported by bos@Eng.Sun.COM)
-
-lib/readline/undo.c
-       - don't include <setjmp.h>, it's not needed
-
-lib/readline/{util,readline}.c
-       - include "posixjmp.h" instead of <setjmp.h>
-       - readline_top_level is now a `procenv_t' instead of a `jmp_buf'
-         (now readline uses the correct posix semantics for preserving
-         the signal mask and other things across longjmp)
-
-parse.y
-       - fixes to push_string/pop_string to make them more general -- they
-         now can be used generally, instead of having to be associated
-         with an alias being expanded
-       - fixes to the parser so that it parses (( ls abc; ls def); ls ghi)
-         as a nested subshell command for backwards compatibility.  Broke
-         the double-paren expression parsing off into a new function:
-         parse_arith_cmd, called from read_token when a `((' is seen.  If
-         it looks like an arithmetic command, return `let' and set things
-         up so that the expression is returned as a double-quoted string
-         by the next call to read_token.  If it's a nested subshell, push
-         the text we parsed onto the list of strings for later consumption
-         and return `('
-
-lib/glob/glob.c
-       - fix glob_vector so it doesn't short-circuit checking a filename if
-         it starts with a `.' and the pattern starts with `\.' (if
-         noglob_dot_filenames is set).  This makes `".junk2"*' match
-         `.junk2.txt' correctly
-
-                                  1/27
-                                  ----
-support/bashbug.sh
-       - ask for confirmation before sending the bug report
-
-builtins/fc.def
-       - when editing and re-executing a multiline command, make sure
-         current_command_line_count is initialized and then incremented
-         for each line read from the file so that the lines added to
-         the history list by fc_replhist and fc_addhist obey the `lithist'
-         and `cmdhist' shopt options.  Reported by tibbitts@pb.seflin.org
-
-                                  1/28
-                                  ----
-lib/readline/readline.h
-       - added a couple of extern declarations for variables described in
-         the documentation but heretofore undeclared
-
-builtins/ulimit.def
-       - try to catch some classes of integer overflows before calling
-         set_limit
-
-                                  1/29
-                                  ----
-parse.y
-       - push and pop a `(' delimiter while parsing a $(...) construct, so
-         the history code doesn't try to inappropriately add a `;' when
-         a newline appears in the `...'
-
-aclocal.m4
-       - new macro, BASH_STRUCT_WINSIZE, which looks for `struct winsize'
-         in <sys/ioctl.h> (or one of the files it includes)
-
-configure.in
-       - call BASH_STRUCT_WINSIZE
-       - slightly reorganized the calls to bash-specific macros
-
-config.h.in
-       - add an `#undef STRUCT_WINSIZE_IN_SYS_IOCTL'
-
-jobs.c, nojobs.c
-       - only look in sys/ptem.h for struct winsize if
-         STRUCT_WINSIZE_IN_SYS_IOCTL is not defined to cpp
-
-                                  1/30
-                                  ----
-.{distribution,patchlevel}
-       - renamed to _{distribution,patchlevel}
-
-configure.in
-       - create a variable BASHVERS, from the contents of _distribution,
-         and a variable BASHPATCH, from the contents of _patchlevel,
-         (using m4 magic so we don't have to distribute .distribution
-         and .patchlevel) and substitute them into Makefile.in
-
-Makefile.in
-       - use Version and PatchLevel variables instead of the contents of
-         .distribution and .patchlevel, respectively.  These are set by
-         configure
-       - removed `.machine' from targets and dependencies
-
-support/mkversion.sh
-       - new shell script to handle updating version.h, replaces mkversion.c
-         (which is now overkill)
-
-support/mkdist
-       - don't bother with writing .distribution and .patchlevel files,
-         since they're no longer distributed
-
-support/mknewvers.sh
-       - simple bash script to make new version files.  It can increment
-         the major or minor version numbers or patchlevel, or take a
-         completely new version number (e.g., 2.01) as an argument
-
-doc/Makefile.in
-       - added support for the `install-info' command to update the info
-         directory file after installing bash.info
-
-                                  1/31
-                                  ----
-builtins/help.def
-       - fix core dump with `help --'
-
-susbt.c
-       - make call_expand_word_internal obey the convention that if
-         expand_word_internal returns &expand_word_{fatal,error}, then
-         w->word has already been freed
-       - return &expand_word_fatal from expand_word_internal if the shell
-         is not interactive and `set -u' has been executed
-
-test.c, general.c
-       - moved group_member from test.c to general.c
-
-externs.h, general.h
-       - moved extern declaration of group_member from externs.h to general.h
-
-general.c
-       - broke the code that initializes the group array out into a new
-         function, initialize_group_array()
-       - initialize_group_array() now initializes an array even if the OS
-         does not have getgroups().  If it does not, an array with one
-         element (the real gid) is created
-       - call sysconf(_SC_NGROUPS_MAX) if sysconf is available and
-         _SC_NGROUPS_MAX is defined
-       - new function, char **get_group_list(int *), to return an array
-         of strings made from the groups list
-
-variables.c
-       - new dynamic array variable: GROUPS, expands to the group set as
-         obtained with getgroups() (or whatever initialize_group_array()
-         makes)
-
-doc/{bash.{1,html},bashref.texi}
-       - added description of GROUPS variable
-
-test/test-tests
-       - before modifying the setgid bit on /tmp/setgid, try to change its
-         group to ${GROUPS[0]} 
-
-                                   2/3
-                                   ---
-aclocal.m4
-       - new autconf macro, BASH_MISC_SPEED_T, to see if speed_t is defined
-         in <sys/types.h>
-
-configure.in
-       - call BASH_MISC_SPEED_T
-
-config.h.in
-       - add `#undef SPEED_T_IN_SYS_TYPES'
-
-lib/readline/tcap.h
-       - include `rltty.h' if HAVE_TERMCAP_H and __linux__ are defined, but
-         SPEED_T_IN_SYS_STYPES is not, before including <termcap.h>
-
-support/mksignames.c, siglist.c
-       - add support for 4.4 BSD SIGLOST
-
-support/config.guess
-       - add support for recognizing QNX based on `uname' output
-
-Makefile.in
-       - make sure recho and zecho are compiled with the same set of CC
-         options as the rest of the sources
-
-lib/readline/bind.c
-       - change calls to rl_generic_bind to cast the third argument to
-         (char *) where necessary
-
-command.h
-       - two new flags: CMD_AMPERSAND (currently unused), and CMD_STDIN_REDIR,
-         which means that this command should have its standard input
-         redirected from /dev/null if there are not any explicit redirections
-         to stdin
-
-execute_cmd.c
-       - a redirection of type r_inputa_direction is no longer added at the
-         beginning of the redirection chain for an async command;
-         CMD_STDIN_REDIR is set in the flags instead
-       - new function: stdin_redirects: returns the number of redirections to
-         stdin in a chain of redirections
-       - new functions: async_redirect_stdin() to open /dev/null and make it
-         file descriptor 0
-       - changes to make CMD_STDIN_REDIR propagate to all of the necessary
-         functions (like execute_simple_command)
-       - execute_disk command now takes the flags from simple_command rather
-         than just the CMD_NO_FORK flag as its last argument
-       - various places after make_child is executed (in the child) check for
-         CMD_STDIN_REDIRECT (and no stdin redirections or piping) and call
-         async_redirect_stdin
-       - stdin_redir is now global
-
-eval.c
-       - set stdin_redir to 0 just before calling execute_command so it
-         gets reset to a known value and doesn't persist across commands
-
-                                   2/4
-                                   ---
-builtins/ulimit.def
-       - add a stub function for ulimit(2) on systems without HAVE_RESOURCE
-         or HAVE_ULIMIT that just sets errno to EINVAL and returns -1 --
-         QNX is one such system
-
-bashhist.c
-       - pre_process_line needs to protect all occurrences of hist_verify
-         with #ifdef READLINE
-
-builtins/shopt.def
-       - hist_verify needs to be protected with #ifdef READLINE, not
-         #ifdef HISTORY
-
-                                   2/5
-                                   ---
-support/config.{guess,sub}, configure.in
-       - chages to better support the Harris Night Hawk
-
-[many files]
-       - changes for things pointed out by gcc -Wall
-
-lib/glob/Makefile.in
-       - make sure -DSHELL is included in CCFLAGS so that globbing is
-         interruptible
-
-lib/malloc/malloc.c
-       - extern declaration for botch: if botch is #defined, it should be
-         the name of a void function
-
-configure.in,Makefile.in,builtins/Makefile.in,
-lib/{glob,malloc,readline,tilde}/Makefile.in
-       - add a LOCAL_DEFS variable, substituted from configure into the
-         various Makefiles.  It's set to -DSHELL, so that define gets
-         passed to all sub-makes without doing anything special
-
-lib/readline/readline.c
-       - change to rl_digit_loop to make it compatible with GNU emacs:
-         if a key bound to `universal-argument' is read after reading
-         some digits, it terminates the argument but is otherwise
-         ignored.  This is how people can insert repeated digits
-
-doc/{bash.{1,html},readline.3}, lib/readline/doc/rluser.texinfo
-       - changed description of `universal-argument' to describe how
-         to terminate a numeric argument
-
-                                   2/6
-                                   ---
-jobs.c
-       - changed kill_pid to diddle the job and process data structures
-         if we're sending SIGCONT to a stopped job with `kill' so that
-         the shell knows the job is running again.  ksh93 does this
-
-                                   2/7
-                                   ---
-unwind_prot.c
-       - changed bcopy to FASTCOPY
-
-builtins/enable.def
-       - changed pointer arithmetic in delete_builtin to just subtract
-         the head of the builtins list (shell_builtins) from a pointer
-         to the builtin to be deleted (b) to find its index in the list
-         on ANSI C systems
-
-                                  2/10
-                                  ----
-lib/readline/bind.c
-       - when using old-style keynames to bind to a new-style macro,
-         pass an array of type (unsigned char *) to rl_macro_bind
-
-builtins/getopt.c
-       - change sh_getopt to return EOF if nextchar is empty or NULL
-         and sh_optind is greater than argc.  This can happen if a
-         script mixes calls to `getopts' with calls to `shift'
-
-                                  2/11
-                                  ----
-print_cmd.c
-       - fixed make_command_string_internal so that commands with the
-         CMD_TIME_POSIX flag set print `time -p' instead of `time'
-       - changed print_redirection_list so the here documents are
-         printed after all the other redirections, and followed by a
-         newline (rather than a possible semicolon)
-       - added a new variable, was_heredoc, to avoid adding a semicolon
-         at the beginning of an empty line after printing the heredoc
-         ending delimiter
-
-execute_cmd.c
-       - don't put the gnu_argv_flags into the environment any more; it's
-         proven to be a bad idea
-
-configure.in
-       - set LOCAL_CFLAGS to `-DSunOS5' on Solaris 5.5[.x]
-
-builtins/echo.def
-       - only call fflush() after printing each word on SunOS 5.5, since
-         that's the system with the bug that prompted its inclusion in
-         the first place
-
-support/mksignames.c
-       - added support for more system-specific signals from AIX 4.2,
-         changed initialization order so that system-specific signals
-         are done first, before the common signals
-
-                                  2/12
-                                  ----
-execute_cmd.c
-       - broke the code that creates a file containing the text of a
-         here document out into a separate function: here_doc_to_fd
-       - create the temp file used for a here document with mode 600
-       - open the temp file used for a here document with O_EXCL
-
-shell.h
-       - changed the uid members of struct user_info to be of type uid_t
-         and the gid members to be of type gid_t
-
-parse.y
-       - changed the type of the `type' argument to init_yy_io() to be
-         `enum stream_type', since that's what's always passed
-
-input.h
-       - changed the function prototype for init_yy_io so the third arg is
-         type `enum stream_type'
-
-externs.h
-       - added a prototype for getcwd, if HAVE_GETCWD is not defined
-
-builtins/umask.def
-       - changed all variables that are used as arguments to or save the
-         return value from umask(2) to be of type mode_t
-       - changed print_symbolic_umask to take an argument of type mode_t
-
-                                  2/13
-                                  ----
-jobs.c
-       - if old_sigint_handler is set to SIG_DFL, as it will be in a script
-         without a trap on SIGINT installed, call termination_unwind_protect()
-         directly from waitchld()
-
-                                  2/14
-                                  ----
-configure.in
-       - added a section before the call to BASH_CHECK_LIB_TERMCAP to
-         set a variable prefer_curses on some systems (AIX, for one)
-
-aclocal.m4
-       - in BASH_CHECK_LIB_TERMCAP, don't return -ltermcap if $prefer_curses
-         is non-empty
-
-lib/readline/Makefile.in
-       - redid the dependencies
-
-                                  2/17
-                                  ----
-hashlib.c, getcwd.c
-       - include `bashansi.h' instead of stdlib.h and string.h
-
-error.c, siglist.c, xmalloc.c, builtins/{common,evalfile,mkbuiltins,psize}.c,
-builtins/{exec,exit,fg_bg,hash,history}.def
-       - include `bashtypes.h' instead of directly including <sys/types.h> 
-
-builtins/fc.def
-       - include ../bashtypes.h and ../posixstat.h instead of bashtypes.h
-         and posixstat.h
-
-builtins/mkbuiltins.c
-       - include ../posixstat.h instead of <sys/stat.h>
-
-general.h
-       - include `bashtypes.h' if RLIMTYPE is defined, so we can fetch
-         a definition of quad_t (or whatever) from <sys/types.h> before
-         using it in a function prototype
-
-Makefile.in, builtins/Makefile.in
-       - updated dependencies
-
-                                  2/18
-                                  ----
-builtins/set.def
-       - new function, set_posix_mode, called when `set [-+]o posix'
-         or `shopt -[su] -o posix' is executed.  It sets or unsets
-         $POSIXLY_CORRECT and calls sv_strict_posix
-
-subst.c
-       - in sv_strict_posix, call posix_readline_initialize only if
-         the shell is interactive (interactive_shell != 0)
-
-shell.c
-       - if we are acting like `sh', call posix_readline_initialize
-         if the shell is interactive
-       - moved the code that does posix.2 mode initialization after
-         interactive_shell is set, and call posix_readline_initialize
-         if interactive_shell is non-zero
-
-bashwait.h
-       - renamed to unionwait.h, since that is what it defines
-
-posixwait.h
-       - moved the POSIX 1003.1 job control defines here from jobs.h
-
-jobs.h
-       - include `posixwait.h'
-
-                                  2/19
-                                  ----
-braces.c
-       - if SHELL is defined, pass the contents of new-style command
-         substitution through without expanding brace constructs between
-         the parens -- let the subshell do it
-
-subst.c
-       - when brace-expanding words, preserve the flags (word->flags) if
-         brace expansion does not change the word.  This fixes the problem
-         of things like
-
-                local -a avar=( ${PATH//: } );
-
-bashline.c
-       - have shell_expand_line pass a copy of rl_line_buffer to expand_string
-         in case there are substitution errors and the string gets freed
-
-                                  2/20
-                                  ----
-expr.c
-       - make sure that expland and explor set `lasttok' to LAND and LOR,
-         respectively, if they parse `&&' or `||'.  This makes the
-         precedence code work right
-
-subst.c
-       - changes so that non-interactive shells exit immediately when a
-         parameter that is unset is referenced after `set -u' has been
-         executed causes the shell to exit immediately
-
-                                  2/21
-                                  ----
-flags.c
-       - if `set -r' is executed, call maybe_make_restricted so that $PATH
-         and $SHELL are made read-only
-
-execute_cmd.c
-       - if `set -e' has been executed, and we're inverting a pipeline's
-         return status with `!', set CMD_IGNORE_RETURN so a failing
-         command does not inadvertently cause the shell to exit before
-         the exit status can be inverted.  This is probably only a problem
-         with the `eval' builtin.
-
-                                  2/24
-                                  ----
-builtins/hash.def
-       - add a missing argument of 0 to add_hashed_command
-
-builtins/kill.def
-       - job identifiers can be used in non-interactive shells as long as
-         job control has been turned on with `set -m'
-
-jobs.c
-       - we want to be notified of stopped jobs if job_control is non-zero,
-         even if the shell is not interactive
-
-execute_cmd.c
-       - make sure shell_execve returns EX_NOTFOUND if execve fails and
-         errno is set to ENOENT
-       - makes sure execute_builtin saves the temporary environment to
-         builtin_env for the `eval' builtin, since it can destroy the
-         temporary environment when it calls parse_and_execute
-
-bashhist.c
-       - new variable: hist_last_line_added, set to 1 if the last command
-         line was added to the history successfully as a separate entry.
-         Used by `history' and `fc'
-
-                                  2/25
-                                  ----
-trap.c
-       - save line number before executing trap command, because
-         parse_and_execute resets it to 1 and the trap command might
-         want it
-
-execute_cmd.c
-       - change to executing_line_number to return trap_line_number if
-         the shell is currently running a trap
-
-                                  2/26
-                                  ----
-execute_cmd.c
-       - change to time_command so that a `real' value of 0 does not
-         cause a divide-by-zero error when computing cpu percentage
-
-lib/readline/signals.c
-       - if MUST_REINSTALL_SIGHANDLERS is defined, reinstall the SIGWINCH
-         handler in rl_handle_sigwinch
-
-builtins/set.def
-       - `unset' now rejects attempts to unset names that are not valid
-         shell identifiers as errors
-       - add a description of `-o history' option to help text
-
-subst.c
-       - in parameter_brace_patsub, we want backslash removal done on
-         the replacement if (mflags & MATCH_QUOTED), since the code
-         in expand_word_internal will not do it.  We need to call
-         expand_string_unsplit directly, since maybe_expand_string does
-         not do the right thing
-
-                                  2/28
-                                  ----
-execute_cmd.c
-       - if execute_for_command finds that the iteration variable is readonly,
-         decrement loop_level before returning
-
-builtins/break.def
-       - if the break count is <= 0, display an error message and break out
-         of all loops
-
-builtins/command.def
-       - if PATH is unset, and we're using command -p, we don't want PATH
-         to be set to the empty string when `command' completes
-
-builtins/common.c
-       - POSIX.2 says `kill -l signum' prints the signal name without the
-         leading `SIG' prefix, so check for this_shell_builtin == kill_builtin
-         in display_signal_list
-
-builtins/getopts.def
-       - when invoked without any arguments, `getopts' now prints a usage
-         message
-
-                                   3/3
-                                   ---
-builtins/common.c
-       - add a second argument to get_numeric_arg: if non-zero, the shell
-         exits on a bad argument; if not, the shell jumps to top_level
-         with a DISCARD argument, which aborts the current command
-
-builtins/{break,exit,history,return,shift}.def
-       - change calls to get_numeric_argument
-
-lib/readline/funmap.c
-       - add `dump-macros' to list of bindable names
-
-lib/readline/readline.h
-       - added extern declaration for rl_prompt (it was apparently missing)
-
-lib/readline/readline.c
-       - new internal function, _rl_init_line_state, which sets rl_point
-         and rl_end to 0, sets the_line to point to _rl_line_buffer, and
-         clears the line
-
-lib/readline/callback.c
-       - if a user's callback function does not clear the line, clear it
-         for him by calling _rl_init_line_state
-
-                                   3/4
-                                   ---
-alias.c
-       - made the readline support functions #ifdef READLINE, so they're
-         not compiled into the shell unless readline is
-
-lib/readline/bind.c
-       - new function _rl_untranslate_macro_value, to expand meta-prefixes
-         and other special characters in a macro value for printing by
-         _rl_macro_dumper_internal
-       - call _rl_untranslate_macro_value in _rl_macro_dumper_internal to
-         get a printable version of the macro value
-
-lib/readline/readline.c
-       - new variable, rl_dispatching, set to 1 when we call a function
-         from _rl_dispatch
-
-lib/readline/readline.h
-       - extern declaration for rl_dispatching
-
-lib/readline/complete.c
-       - make sure S_ISCHR and S_ISBLK are defined before using them
-
-lib/readline/terminal.c
-       - add a new #define NEED_EXTERN_PC.  Define this if the termcap
-         or curses libraries need `extern' before declarations of PC,
-         BC, and UP
-
-lib/readline/{readline,terminal,histfile}.c
-       - changes to compile on OS/2 with OS/2 `EMX' port of gcc, originally
-         sent by ilya@math.ohio-state.edu
-
-builtins/set.def
-       - fixed a bug in set_shellopts that caused the shell to crash if
-         there were no shell options set
-
-                                   3/5
-                                   ---
-configure.in,Makefile.in
-       - choose run-all or run-minimal as the test script based on whether
-         the --enable-minimal-config option was given to configure
-
-builtins/setattr.def
-       - fixed `export -p' and `readonly -p' so that they output `export'
-         or `readonly' when in POSIX mode, as POSIX.2 specifies
-
-                                   3/6
-                                   ---
-builtins/setattr.def
-       - make `readonly -a var=(...)' work just like `declare -ar var=(...)',
-         since the two logically mean the same
-       - `readonly -f' and `export -f' don't print the function definition
-         for each readonly or exported function, respectively, when in
-         POSIX mode
-
-jobs.c, nojobs.c
-       - don't report status for processes killed by SIGPIPE if
-         DONT_REPORT_SIGPIPE is defined
-
-config.h.top
-       - added a commented-out define for DONT_REPORT_SIGPIPE
-
-execute_cmd.c
-       - `time' can now be used to time background pipelines, and reports
-         the timing statistics when the pipeline completes
-
-[bash-2.01-alpha1 frozen]
-
-                                  3/12
-                                  ----
-subst.c
-       - move the parent end of the pipe file descriptor used for process
-         substitution to a high, unused file descriptor to avoid clashes
-         with redirections performed explicitly by a script
-
-configure.in
-       - added a `--with-curses' argument so curses can be forcibly chosen
-         over libtermcap (some Unix versions ship lousy termcap databases)
-
-support/mkconffiles
-       - new script to create _distribution and _patchlevel from values
-         contained in `configure'
-
-doc/bashref.texi
-       - updated installation instructions
-
-                                  3/13
-                                  ----
-general.c
-       - if `getgroups' returns 0, make sure we add the primary group id
-         as GROUPS[0].
-       - if we have getgroups, and the primary gid is not in the array
-         getgroups returns, add it as group_array[0] and shuffle everything
-         up one element.  This ensures that current_user.gid == group_array[0]
-         all the time
-
-tests/builtins.tests
-       - changes to avoid stray variables in environment when the shell
-         version of printenv is used with bash as /bin/sh, running the
-         `exec -c' tests.
-
-                                  3/14
-                                  ----
-builtins/cd.def
-       - spelling correction is no longer enabled by default
-
-support/bashbug.sh
-       - if the shell's release status is alpha or beta, offer the option
-         of sending the bug report to the bash-testers mailing list as
-         well as to chet
-
-                                  3/17
-                                  ----
-configure.in
-       - configure --without-gnu-malloc by default on *-sgi-irix6* because
-         their code needs 8-byte alignment
-
-support/bashbug.sh
-       - ``' needs to be quoted with a backslash in double-quoted strings
-
-aclocal.m4
-       - slight changes to the strcoll test, since AIX 4.2 returns -1, 0, or
-         1 from strcmp(3) but a numeric collation order difference from
-         strcoll(3)
-
-                                  3/18
-                                  ----
-command.h
-       - new redirection error code:  HEREDOC_REDIRECT
-
-execute_cmd.c
-       - return HEREDOC_REDIRECT from do_redirection_internal when
-         here_document_to_fd cannot create the temp file for a here document
-       - changed redirection_error to print a meaningful message when
-         here document temp file creation fails (HEREDOC_REDIRECT)
-
-                                  3/19
-                                  ----
-subst.c
-       - changes to match_pattern_char: return 1 if the first char of the
-         pattern is `?' only if the string is non-null; just return 1 if
-         the first char of the pattern is `[' and the string is non-empty
-         rather than try to re-implement the brace matching code from fnmatch
-
-lib/glob/fnmatch.c
-       - some changes from glibc-2.0.1 posix/fnmatch.c
-
-                                  3/21
-                                  ----
-variables.c
-       - only do the initialization of `ignoreeof' if the shell is
-         interactive
-       - reset values of $SHLVL > 1000 to 1 in adjust_shell_level, and
-         don't call itos, since we don't need its generality
-       - new function, initialize_shell_level, just calls adjust_shell_level
-         with argument of 1.  If $SHLVL is unset, adjust_shell_level will
-         deal with it correctly
-       - change initialize_shell_variables to not malloc a copy of each
-         environment variable, just keep two pointers into the env string:
-         one for the name, one for the value
-       - broke the code that computes the value of $BASH out into a separate
-         function: get_bash_name
-       - get_bash_name special-cases shell_name with a `./' prefix when
-         initializing $BASH
-       - new function: set_home_var, sets $HOME to current_user.home_dir if
-         it's not already set, calling get_current_user_info if
-         current_user.home_dir is NULL
-       - new function: set_shell_var, sets $SHELL to current_user.shell if
-         it's not already set, calling get_current_user_info if
-         current_user.shell is NULL
-       - changed places that reference information in current_user to check
-         for NULL values of the member they're interested in and call
-         get_current_user_info if necessary
-
-shell.c
-       - moved the code that sets up the information in current_user that
-         comes from the password file into a new function,
-         get_current_user_info
-       - shell_initialize calls get_current_user_info only if the shell is
-         interactive
-
-externs.h
-       - new extern declaration for get_current_user_info(), so variables.c
-         can use it
-
-                                  3/24
-                                  ----
-lib/tilde/tilde.c
-       - if SHELL is defined, user the current_user struct info to find
-         the user's home directory rather than calling getpwuid
-
-                                  3/25
-                                  ----
-nojobs.c
-       - don't try to open /dev/tty when getting or setting the tty state
-         and window size; use shell_tty instead
-       - initialize shell_tty to standard error in initialize_job_control
-       - only fetch the tty state initially if the shell is interactive
-
-general.c
-       - open /dev/tty with the O_NONBLOCK flag
-
-variables.c
-       - changed all_vars so that it sorts its output all the time, not
-         just when in POSIX mode.  This means that the output of `set'
-         and `export' will be sorted
-
-builtins/set.def
-       - in initialize_shell_options, only call parse_shellopts if we
-         inherited $SHELLOPTS from the environment
-       - make sure we call parse_shellopts from initialize_shell_options
-         with a copy of the value of SHELLOPTS, in case one of the functions
-         called while setting one of the variables modifies $SHELLOPTS
-
-lib/readline/readline.c
-       - make sure that digit arguments don't change the state of
-         rl_last_func
-
-support/printenv.c
-       - new file, printenv(1) clone, used to avoid environment variables
-         that might be set automatically when using printenv.sh
-
-lib/tilde/tilde.c
-       - if SHELL is defined, don't call getenv to get the value of $HOME,
-         call get_string_value () directly
-
-                                  3/26
-                                  ----
-lib/readline/histexpand.c
-       - abstracted the `#ifdef SHELL' stuff that checked for special cases
-         that should not be history expanded ([!...], ${!...}) into a call
-         to a function that is the value of the
-         new history_inhibit_expansion_function variable
-
-lib/readline/history.h
-       - extern declaration for history_inhibit_expansion_function
-
-bashhist.c
-       - new function, bash_history_inhibit_expansion, which checks for
-         the special cases in which history expansion should be inhibited
-       - changes to the various history initialization functions to
-         set history_inhibit_expansion_function
-
-lib/readline/doc/hstech.texinfo
-       - documented history_inhibit_expansion_function
-
-lib/readline/shell.c
-       - new file, containing versions of the functions that are provided
-         by bash when readline is linked as part of bash
-       - new function: get_env_value().  If SHELL is defined, this calls
-         get_string_value().  If SHELL is not defined, this calls getenv()
-
-lib/readline/histexpand.c
-       - moved single_quote() to shell.c
-
-lib/readline/util.c
-       - moved savestring() to shell.c
-
-lib/readline/terminal.c
-       - moved set_lines_and_columns() to shell.c
-
-lib/readline/Makefile.in, Makefile.in
-       - added shell.c and shell.o to the appropriate variables that contain
-         the files comprising the readline and history libraries
-
-lib/readline/signals.c
-       - introduced two new cpp defines:  HANDLE_JOB_SIGNALS and
-         HANDLE_SIGTERM.  When HANDLE_JOB_SIGNALS is defined, SIGTSTP,
-         SIGTTIN, and SIGTTOU are caught and handled.  When HANDLE_SIGTERM
-         is defined, SIGTERM is caught and handled.  These are both
-         defined automatically if SHELL is not defined
-
-lib/readline/{bind,histfile,nls,readline,terminal}.c
-       - call get_env_value instead of getenv().  This should remove the
-         dependency on being able to redefine getenv() in oslib.c
-
-shell.c
-       - added a missing argument of -1 to the call to list_minus_o_opts.
-         Now `bash -o' lists all options, not just random ones depending
-         on what's on the stack
-
-                                  3/28
-                                  ----
-builtins/ulimit.def
-       - change RLIM_INFINITY to the hard limit only if the hard limit is
-         greater than the current (soft) limit
-
-hashlib.c
-       - return immediately from flush_hash_table if the hash table passed
-         is NULL
-
-                                   4/1
-                                   ---
-shell.c
-       - remove call to initialize_filename_hashing -- initialize the hash
-         table the first time a hashed command has to be remembered
-
-hashcmd.c
-       - new file, with functions to perform filename hashing and lookup
-         taken from builtins/hash.def and builtins/common.c
-       - change to remember_filename -- call initialize_filename_hashing
-         if hashing_initialized is 0
-
-hashcmd.h
-       - new file, mostly from builtins/hashcom.h, with extern function
-         declarations added
-
-execute_cmd.c, builtins/{hash,type}.def
-       - include hashcmd.h for hash function and type definitions
-
-builtins/{common.{c,h},hash.def}
-       - moved hashing functions and declarations to hashcmd.c/hashcmd.h
-
-Makefile.in, builtins/Makefile.in
-       - changed source and object file definitions and dependencies because
-         of addition of hashcmd.h and hashcmd.c
-
-builtins/hash.def
-       - return immediately from print_hashed_commands if hashed_commands
-         is empty, indicating that the hash table has not been initialized
-
-                                   4/2
-                                   ---
-lib/readline/bind.c
-       - fixed translation of ESC in rl_untranslate_keyseq and
-         rl_untranslate_macro_value
-
-lib/readline/{readline,kill}.c
-       - added an argument to _rl_fix_point telling it whether or not to
-         fix up the mark also; changed calls to _rl_fix_point to add the
-         appropriate argument
-
-Makefile.in
-       - changed the substitution delimiter in the `sed' commands that
-         create bashbug from `:' to `%' to avoid conflicts with options
-         containing `:'
-
-                                   4/3
-                                   ---
-print_cmd.c
-       - made the initial value and the default growth value for the
-         printed command somewhat smaller -- we don't really need to
-         allocate 4096 bytes for the printed command
-       - added stdarg support to xprintf if PREFER_STDARG is defined
-
-stringlib.c
-       - changed strip_trailing to take the index of the last character
-         as the second argument, saving a (useless) call to strlen, since
-         the caller already knows where the end of the string is
-
-subst.c
-       - change call to strip_trailing in command_substitute to add the
-         new second argument
-
-externs.h
-       - changed extern declaration for strip_trailing
-
-                                   4/4
-                                   ---
-Makefile.in, configure.in, lib/malloc/Makefile.in
-       - changed the strategy for picking which `malloc' to include by
-         having configure define a `malloc target' and the Makefile in
-         lib/malloc implementing rules for that target
-
-                                   4/5
-                                   ---
-Makefile.in
-       - slightly changed the rules for remaking `parser-built':  it is
-         now a copy of y.tab.h, updated only when the contents of y.tab.h
-         change
-       - everything that used to depend on y.tab.h now depends on
-         parser-built
-
-                                   4/6
-                                   ---
-execute_cmd.c, print_cmd.c
-       - use #include <y.tab.h> so we pick up y.tab.h from the build
-         directory instead of the source directory if it happens to be
-         recreated in the build directory
-
-                                   4/7
-                                   ---
-bashline.c
-       - fixed another problem with `pwd`/[TAB] thinking that the `/
-         started an unclosed command substitution, generating errors
-
-                                   4/8
-                                   ---
-general.c
-       - renamed bash_tilde_expansion_failure_hook to be
-         bash_special_tilde_expansions, since that more accurately reflects
-         its function
-       - changed tilde_initialize so that there is no failure hook -- the
-         special expansions are handled first with the preexpansion hook
-
-lib/tilde/tilde.c
-       - new variable: tilde_expansion_preexpansion_hook -- if non-null, it
-         points to a function that is called before standard tilde expansion
-         is attempted
-
-lib/tilde/tilde.h
-       - extern declaration for tilde_expansion_preexpansion_hook
-
-doc/{bash.{1,html},bashref.texi}
-       - added optional open paren to description of `case' command syntax
-
-                                   4/9
-                                   ---
-variables.c
-       - on qnx, set and export a variable `NODE' which contains the QNX
-         `node id'
-
-general.c
-       - QNX system can now handle pathnames with a leading `//'
-
-configure.in
-       - added `-Dqnx' to LOCAL_CFLAGS on QNX machines
-
-lib/malloc/getpagesize.h
-       - some systems need sysconf(_SC_PAGE_SIZE) to obtain the page size;
-         added code to check for it
-
-                                  4/10
-                                  ----
-print_cmd.c
-       - include the prototype for cprintf only if PREFER_STDARG is defined,
-         otherwise just have a K&R-style forward function declaration
-
-hashlib.h
-       - reduced the default number of buckets in a hash table to 53
-
-lib/tilde/tilde.c
-       - prime the result string in tilde_expand by allocating a new string
-         that's as long as the input string (+16 if a tilde appears in
-         the string to be expanded).  This should reduce the number of
-         reallocs
-
-subst.c
-       - broke the code that reads the output of a command substitution
-         through the pipe to the subshell out into a separate function:
-         read_comsub().  This does not use stdio, but rather reads
-         directly from the pipe into a local 128-character buffer
-
-                                  4/11
-                                  ----
-execute_cmd.c
-       - some systems need both <sys/time.h> and <time.h>, so include both
-         if it's possible, otherwise include <sys/time.h> (if present)
-
-lib/readline/rl{tty,defs}.h
-       - moved includes of <sys/stream.h>, <sys/ptem.h>, etc. to rltty.h
-
-lib/readline/terminal.c
-       - include rltty.h after rldefs.h
-
-variables.c
-       - changes to make environment creation faster and use less memory
-         (fewer malloc/free calls, too):
-
-               o two new variables: export_env_index (how many environment
-                 strings are in export_env) and export_env_size (the
-                 number of slots for strings allocated in export_env)
-               o added new function add_to_export_env, since adding the
-                 exported shell variables and shell functions does not
-                 need to search the export_env for a definition to supersede
-                 (we just cleared it out!)
-               o renamed add_or_supersede to add_or_supersede_exported_var,
-                 since it always works on export_env, and changed the second
-                 argument to a flag saying whether or not to allocate a new
-                 copy of the string placed into the environment
-               o changed calls to add_or_supersede to the new
-                 add_or_supersede_exported_var with the appropriate flags
-               o don't free and reallocate export_env in maybe_make_export_env,
-                 just free the strings and start anew
-               o prime the size of export_env from the total number of shell
-                 variables and shell functions -- this will always be enough
-                 for the exported shell functions and variables, and big
-                 enough most of the time for the entire environment
-
-builtins/cd.def
-       - efficiency hack in bindpwd():  if PWD is exported, we will have to
-         rebuild the entire exported environment after every time we change
-         directories.  What we do is see if array_needs_making changes value
-         from 0 to 1 after bind_variable ("PWD", dirname) is called, and
-         that PWD is exported.  If that happens, we just replace the value
-         of PWD in the exported environment with a call to
-         add_or_supersede_exported_var
-
-bashline.c, parse.y
-       - check calls to pre_process_line to make a fresh copy of the line
-         if pre_process_line returns what it was passed, in preparation
-         for future changes
-
-bashhist.c
-       - pre_process_line now returns its argument if it did not make
-         any changes to it
-
-alias.c
-       - free the bucket entry holding the alias to be removed in
-         remove_alias, as well as the data
-
-                                  4/14
-                                  ----
-unwind_prot.c
-       - if an unwind-protect frame is being discarded, and its cleanup
-         function is `restore_variable', the `arg' member points to a
-         SAVED_VAR that must be freed.  This change is made in
-         remove_unwind_protect_internal and unwind_frame_discard_internal
-
-parse.y
-       - need to free memory allocated by parse_arith_cmd if it is an
-         arithmetic command, after using it to make a new word
-
-subst.c
-       - fixed some memory leaks caused by not freeing the argument to
-         make_bare_word, which duplicates its string argument
-       - need to dispose list generated by list_rest_of_args in
-         paramter_list_remove_pattern
-       - make sure the return value from getpattern() is freed
-       - make sure array_value_internal always returns newly-allocated
-         memory
-       - get_var_and_type returns a new type: VT_ARRAYMEMBER if the
-         string passed is of the form var[index]
-       - make sure parameter_brace_substring frees the memory allocated
-         by get_var_and_type if verify_substring_values returns 0
-
-hashlib.c, hashlib.h
-       - new function, dispose_hash_table (table), which frees the
-         table's bucket array and the table itself
-
-alias.c
-       - call dispose_hash_table from delete_all_aliases instead of just
-         freeing the table
-
-pathexp.c
-       - make sure to free `newnames' (but *not* its contents) before
-         returning from ignore_globbed_names
-
-builtins/exec.def
-       - make sure the argv created to pass to shell_execve is freed if
-         the execve fails and we're not exiting on failed execs
-
-expr.c
-       - broke evalexp into two functions: evalexp, which sets up the
-         jmp_buf that errors jump to, and subexpr, which does the
-         evaluation and pushing and popping of contexts
-       - readtok now calls subexpr to evaluate subexpressions in
-         parentheses
-       - evalexp now takes an additional paramter, a pointer to an int.
-         If the expression contains errors, the location to which this
-         points gets 0, otherwise it gets 1 to show that the value
-         returned may be used.  This plugs up memory leaks that were
-         the result of evalexp() longjmping back to top_level
-       - fixed a memory leak: expr_stack[0] was not being freed
-
-externs.h
-       - changed extern declaration for evalexp
-
-variables.c, subst.c, builtins/let.def
-       - changed calls to evalexp appropriately.  They either cause a
-         longjmp (top_level, DISCARD) (which is what the old stuff in
-         expr.c did) or are handled by returning an appropriate error
-         value (e.g., &expand_word_error in subst.c)
-
-                                  4/16
-                                  ----
-shell.c
-       - make sure to free dollar_vars[0] before assigning it the first
-         argument following `-c command'
-
-variables.c
-       - if unsetting a local variable with a previous context, make sure      
-         to free the hash table element used to store the local variable
-
-lib/readline/terminal.c
-       - rearrange the includes so <sys/ioctl.h> is included before rltty.h,
-         as it is in rltty.c
-
-                                  4/17
-                                  ----
-flags.c
-       - new function: reset_shell_flags, which resets all of the flags
-         back to their initial values
-
-flags.h
-       - extern declaration for reset_shell_flags
-
-builtins/set.def
-       - new function: reset_shell_options, which resets all of the -o
-         options that are not also shell flags back to their initial values
-
-builtins/shopt.def
-       - new function: reset_shopt_options, which resets all of the shopt
-         options that are not also shell flags or -o options back to their
-         initial values
-
-builtins/common.h
-       - extern declarations for reset_shell_options and reset_shopt_options
-
-execute_cmd.c
-       - broke the code that reinitializes things when an executable script
-         without a leading `#!' is found out into a new function:
-         initialize_subshell
-       - initialize_subshell now calls the reset_* functions that reset the
-         shell flags and options
-
-general.c, general.h
-       - move_to_high_fd now takes a third argument: the highest fd at which
-         to start looking.  If that's less than 20, the maximum number of
-         open files as returned by getdtablesize() is used (which is what
-         it did before this)
-
-jobs.c, shell.c, subst.c
-       - changed calls to move_to_high_fd appropriately
-
-[bash-2.01-beta1 frozen]
-
-                                  4/18
-                                  ----
-general.c
-       - itos now uses a local char buffer to do its conversion, but still
-         returns newly-allocated memory
-
-                                  4/21
-                                  ----
-variables.c
-       - be a little more careful when checking for backwards-compatibility
-         with exported function definitions
-
-                                  4/22
-                                  ----
-builtins/ulimit.def
-       - translate RLIM_INFINITY to limit.rlim_max if the current limit is
-         less than or equal to the hard limit, not just strictly less than
-         (the change of 3/28 was too drastic)
-
-                                  4/23
-                                  ----
-oslib.c
-       - fixed definition of to_lower on machines without strcasecmp
-
-trap.c
-       - don't free the trap command in change_signal if the SIG_INPROGRESS
-         is set in the signal's flags -- it will cause memory to be freed
-         twice if a trap command resets the signal handler more than once,
-         and _run_trap_internal keeps a pointer to the trap command so it
-         can free it, so there will be no leaks
-
-                                  4/24
-                                  ----
-aclocal.m4,configure.in
-       - removed BASH_CC_WORKS, since AC_PROG_CC now has the functionality
-
-shell.c, externs.h
-       - get_current_user_info is now a void function
-
-bashline.c
-       - alias_expand_line_internal was removed
-       - new function, alias_expand_line, performs alias expansion on
-         rl_line_buffer and either replaces rl_line_buffer or signals
-         an error
-       - new bindable commands: alias-expand-line and
-         history-and-alias-expand-line, available if ALIAS is defined
-
-                                  4/25
-                                  ----
-Makefile.in, lib/malloc/malloc.c
-       - changed the define that turns on malloc range checking from
-         `rcheck' to `RCHECK'
-
-lib/readline/isearch.c
-       - fixed a couple of places where rl_search_history would try to
-         free a NULL pointer
-
-                                  4/29
-                                  ----
-unwind_prot.c
-       - fixed a problem with saving a variable that is a null pointer
-         in unwind_protect_var.  It happens only on machines where the
-         size of a pointer is not the size of an int.  The old FASTCOPY
-         code would copy the eight bytes at memory location zero, which
-         did not necessarily make a null pointer
-
-                                  4/30
-                                  ----
-shell.c
-       - run_startup_files should turn off job control, since the startup
-         files should be run without job control enabled -- this makes
-         SIGINT interrupt startup file execution again
-       - if we get a SIGINT or other longjmp to top_level while executing
-         the startup files, re-enable job control for interactive shells
-         before setting locally_skip_execution
-
-                                   5/2
-                                   ---
-lib/readline/nls.c
-       - if we have setlocale(3), don't bother with checking the
-         environment variables for valid values; just use setlocale()
-         to set the locale categories from the environment variables
-         directly and go into eight-bit mode if the current locale is
-         not C or POSIX
-
-                                   5/5
-                                   ---
-sig.c
-       - make sure that the handler for SIGPROF is not changed if it has
-         been set to something other than SIG_IGN or SIG_DFL -- this makes
-         profiling work after the terminating signals have been initialized
-
-bashline.c
-       - if a filename containing `!' is completed, and the user has started
-         the string with a `"', change the completion style to backslash-      
-         quoting, since there's no way to use `!' with double quotes (this
-         requires more changes to readline to really work right)
-
-                                   5/6
-                                   ---
-lib/readline/complete.c
-       - changes to make_quoted_replacement, insert_all_matches, and
-         insert_match and their callers to allow the application-specific
-         filename quoting function to change the quote character (e.g., for
-         bash to change a filename containing a `!' and started with a
-         double quote by the user into a filename with the `!' quoted by
-         a backslas and no double quote)
-
-                                   5/8
-                                   ---
-jobs.c
-       - new function: nohup_all_jobs(), calls nohup_job for each entry in
-         the jobs list
-       - delete_all_jobs is now global
-
-jobs.h
-       - new extern declarations for delete_all_jobs() and nohup_all_jobs()
-
-builtins/jobs.def
-       - `disown' without any jobspec arguments means the current job.  Fix
-         a core dump printing the error message when there is no current job
-
-                                  5/12
-                                  ----
-subst.c
-       - process an expansion like $((foo); bar) as a command substitution,
-         not as an arithmetic expansion.  An arithmetic expansion must have
-         a closing `))'
-
-                                  5/14
-                                  ----
-builtins/evalstring.c
-       - the third argument to parse_and_execute() is now a flags word.
-         The caller can control the value of `interactive' and whether
-         or not history is disabled while parse_and_execute() runs
-
-builtins/common.h
-       - new #defines for the flag values for parse_and_execute()
-
-{bashline,jobs,shell,subst,trap,variables}.c, parse.y, builtins/evalfile.c,
-builtins/{eval,fc}.def
-       - changed calls to parse_and_execute appropriately
-
-builtins/evalfile.c
-       - if _evalfile() is passed FEVAL_HISTORY as part of the flags arg,
-         don't pass SEVAL_NOHIST to parse_and_execute
-       - new function: fc_execute_file, which sets FEVAL_HISTORY in the
-         flags argument to _evalfile()
-
-bashline.c
-       - call bash_add_history instead of add_history from
-         vi_edit_and_execute_command so the bash state variables get
-         updated properly.  This keeps the `v' command from operating
-         on an empty command when the history list is stifled
-
-bashhist.c
-       - bash_add_history is now global
-
-bashhist.h
-       - extern declaration for bash_add_history
-
-builtins/fc.def
-       - call fc_execute_file instead of maybe_execute_file in the
-         edit-and-re-execute case (fc -e ...)
-       - don't manually insert the commands from the file created by `fc -e'
-         into the history list, just set remember_on_history and let
-         fc_execute_file take care of telling parse_and_execute to do the
-         right thing.  This makes compound commands and the `cmdhist'
-         and `lithist' settings work better.  This supersedes the fix of
-         1/27.  This was reported again by rchen@fractal.eng.yale.edu.
-
-parse.y
-       - the body of a `for' command (the commands between do...done or
-         {...}) should be a `compound_list' instead of a `list'.  Problem
-         reported by cpg@research.bell-labs.com
-
-                                  5/19
-                                  ----
-lib/readline/complete.c
-       - in filename_completion_function, if we find that the directory
-         pointer (return value from opendir(3)), is not null when state
-         is 0 (indicating that this is the first time the completion
-         function has been called for the current completion), call
-         closedir on it, assuming that it was left open by a previous
-         (interrupted) completion
-
-[bash-2.01-beta2 frozen]
-
-                                  5/27
-                                  ----
-Makefile.in
-       - make sure that `make distclean' (and other clean targets) remove
-         the `printenv' executable
-
-tests/execscript, tests/redir.tests
-       - make sure to set LANG=C and LC_ALL=C so the messages show up in
-         English
-
-tests/run-func
-       - add a warning about exported functions in the environment
-
-                                  5/29
-                                  ----
-builtins/hash.def
-       - if one of the arguments passed to `hash' is an absolute pathname,
-         just continue the loop, don't do list=list->next first.  This
-         fixes the `hash a/b' -> core dump bug
-
-                                  5/30
-                                  ----
-general.c
-       - change canonicalize_pathname to leave a leading `/' alone, as
-         POSIX requires
-
-                                   6/2
-                                   ---
-support/xenix-link.sh
-       - shell script for linking bash under Xenix
-
-                                   6/3
-                                   ---
-bashline.c
-       - fixed a memory leak in command_word_completion_function, courtesy
-         of a.pfaller@pop.gun.de
-
-hashcmd.c
-       - fixed find_hashed_filename to always return a newly-allocated
-         string
-
-execute_cmd.c
-       - since find_hashed_filename returns newly-allocated memory, don't
-         call savestring() on it, and free it if the data is stale (in
-         search_for_command()).  Another memory leak fixed courtesy of
-         a.pfaller@pop.gun.de
-
-builtins/type.def
-       - free the value returned by find_hashed_filename
-
-[bash-2.01-release frozen]
-
-                                   6/6
-                                   ---
-configure.in
-       - force shlicc2 and libc malloc for BSD/OS 3.0
-
-                                   6/9
-                                   ---
-doc/Makefile.in
-       - don't create ${man3dir}, since we're not installing the readline
-         manual page
-
-lib/readline/readline.h
-       - rl_dispatching should be declared `extern'
-         [in bash-2.01.1]
-
-                                  6/10
-                                  ----
-lib/malloc/Makefile.in
-       - make sure ${ALLOCA_SOURCE} is preceded by ${srcdir} so that things
-         work when building in a directory other than the source directory
-         [in bash-2.01.1]
-
-                                  6/30
-                                  ----
-lib/readline/examples/rltest.c
-       - don't free the value returned by history_list()
-
-lib/readline/histfile.c
-       - open the history file for writing with mode 0600 for better
-         security
-         [in bash-2.01.1]
-
-execute_cmd.c
-       - select_query now uses legal_number to decide whether the user's
-         selection is a valid number, and just executes the loop again if
-         invalid input is entered
-         [in bash-2.01.1]
-
-                                   7/1
-                                   ---
-builtins/evalstring.c
-       - fix to parse_and_execute so `bash -c 'time [-p] zzz'' works right
-         [in bash-2.01.1]
-
-execute_cmd.c
-       - fix to execute_command_internal so that `bash -c time [-p] (zzz)''
-         works right
-         [in bash-2.01.1]
-       - print_formatted_time should pass a long as the fourth parameter
-         to mkfmt 
-         [in bash-2.01.1]
-
-externs.h, shell.c
-       - `exit_shell' is now a void function
-
-hashlib.c
-       - print_table_stats is now a void function
-
-mailcheck.c
-       - made add_mail_file check for the filename in the mail file list
-         using the expanded filename, since that is what it puts into
-         the list
-         [in bash-2.01.1]
-
-variables.c
-       - for the time being, PWD will be auto-exported, since some systems
-         seem to expect it
-
-doc/bashref.texi, lib/readline/doc/{hist,rlman}.texinfo
-       - added necessary `dircategory' and `direntry' commands to make
-         `install-info' work correctly
-
-Makefile.in
-       - move $(LDFLAGS) after $(BUILTINS_LDFLAGS) and $(LIBRARY_LDFLAGS) on
-         the line that links bash
-
-doc/texinfo.tex
-       - upgraded to version 2.185 from the texinfo-3.9 distribution
-
-lib/tilde/tilde.c
-       - fixed a bug in tilde_expand so that enough space is allocated for
-         the string and terminating null byte if a `~' does not appear.
-         This was masked before by the bash malloc()
-         [in bash-2.01.1]
-
-                                   7/3
-                                   ---
-aclocal.m4
-       - new test, BASH_TYPE_INT32_T, to check which builtin C type is
-         32 bits wide
-       - new test, BASH_TYPE_PTRDIFF_T, to check which builtin C type is
-         appropriate for pointer arithmetic
-
-configure.in
-       - check sizes of int and long, and for the existence of an int32_t
-         basic system type.  Call BASH_TYPE_INT32_T if int32_t is not
-         defined anywhere in the system header files
-       - check size of (char *), and for the existence of a ptrdiff_t
-         basic system type.  Call BASH_TYPE_PTRDIFF_T if ptrdiff_t is not
-         defined anywhere in the system header files
-       - added a check for <stddef.h>
-
-config.h.in
-       - add lines for SIZEOF_INT, SIZEOF_LONG, SIZEOF_CHAR_P, int32_t,
-         u_int32_t, and ptrdiff_t
-       - added line for HAVE_STDDEF_H
-
-lib/malloc/malloc.c
-       - new version, with many changes and much better memory usage; old
-         (bash-2.01) version is lib/malloc/omalloc.c
-
-lib/malloc/gmalloc.c
-       - new version, with a number of changes and range checking included
-         by default; old (bash-2.01) version is lib/malloc/ogmalloc.c
-
-execute_cmd.c
-       - applied patch from 5/27 to make execute_simple_command fork early
-         if it's part of a pipeline.  This keeps assignment statements or
-         other commands that don't require a builtin, function, or disk
-         command to be executed from modifying the shell's environment
-
-tests/exec?.sub
-       - renamed from tests/execscript.sub? because those filenames are
-         too long for System V 14-char filename systems
-
-tests/source?.sub
-       - renamed from tests/source.sub? because those filenames are bad
-         for DOS/Windows
-
-tests/getopts?.sub
-       - renamed from tests/getopts.sub? because those filenames are bad
-         for DOS/Windows
-
-tests/histexp.{tests,right}
-       - renamed from histexpand.{tests,right} because those filenames are
-         too long for System V 14-char filename systems
-
-tests/trap1.sub
-       - renamed from trap.sub1 because that filename was bad for DOS/Windows
-
-tests/ifs-[123].right
-       - renamed from ifs.[123].right because those filenames were bad for
-         DOS/Windows
-
-tests/ifs-[123].test
-       - renamed from ifs-test-[123].sh because those filenames were bad
-         for DOS/Windows
-
-examples/startup-files/Bashrc.bfox
-       - renamed from examples/startup-files/Bashrc because that filename
-         conflicts with examples/startup-files/bashrc on case-insensitive
-         file systems
-
-tests/exec.right
-       - renamed from execscript.right because that filename is too long
-         for System V 14-char filename systems
-
-tests/run-set-e
-       - renamed from run-set-e-test
-
-tests/misc/perftest
-       - renamed from tests/misc/haertel.perftest because that filename is
-         too long for System V 14-char filename systems
-
-lib/glob/fnmatch.c
-       - new version with full POSIX.2 BRE matching (character classes,
-         collating symbols, equivalence classes), full support for
-         strcoll(3), and case-insensitive pattern matching
-
-lib/glob/fnmatch.h
-       - new version, with necessary symbols for the new fnmatch.c
-
-tests/posixpat.{tests,right}, tests/run-posixpat
-       - test suite for the POSIX.2 BRE pattern matching code
-
-variables.c
-       - make sure that array assignment using the compound syntax empties
-         the array before doing the assignment
-         [in bash-2.01.1]
-
-trap.c
-       - new function, trap_to_sighandler(sig), which returns the correct
-         trap handler for SIG depending on the information in sigmodes[sig]
-         [in bash-2.01.1]
-
-sig.h
-       - extern declarations for trap_handler and trap_to_sighandler
-         [in bash-2.01.1]
-
-jobs.c
-       - if we get an interrupt while waiting for a command to complete,
-         and there was a trap set on SIGINT that resets the handler to
-         SIG_DFL, the value that waitchld uses for old_trap_handler will
-         be wrong (it will be trap_handler, but trap_handler no longer
-         knows anything about SIGINT).  If old_signal_handler is trap_handler,
-         but signal_is_trapped(SIGINT) returns 0, we need to call
-         trap_to_sighandler to decide what to do
-         [in bash-2.01.1]
-
-                                   7/7
-                                   ---
-locale.c
-       - fix to set_locale_var to handle an assignment to LC_ALL (e.g., as
-         the result of `unset LANG') when default_locale is null
-         [in bash-2.01.1]
-
-                                   7/8
-                                   ---
-builtins/umask.def, doc/{bash.{1,html},bashref.texi}
-       - added `-p' option for umask to print output in a reusable form
-
-                                   7/9
-                                   ---
-doc/{bash.{1,html},bashref.texi}
-       - removed descriptions of `-type', `-path', and `-all' options to
-         the `type' builtin in preparation for removing them in the next
-         release
-
-builtins/type.def
-       - removed mention of `-type', `-path', and `-all' options from the
-         long help description
-
-error.c, error.h
-       - new function: internal_warning, for warning messages
-
-variables.c
-       - changed a call to internal_error to use internal_warning
-       - modified change of 7/3 so that arrays are not emptied until
-         just before the shell is about to assign the new values, so
-         the old value can be used to generate the rhs of the assignment,
-         if necessary.  This is how `normal' shell variables work
-         [in bash-2.01.1]
-
-jobs.c, jobs.h
-       - delete_job now takes a second int argument and prints a warning
-         message when deleting a stopped job if the second argument is
-         non-zero
-
-jobs.c, builtins/jobs.def
-       - changed all calls to delete_job to provide a proper second arg
-
-lib/readline/bind.c
-       - broke rl_read_init_file into an `upper' and `lower' half in
-         preparation for adding file inclusion capability to inputrc
-         parsing
-       - handle_parser_directive now displays an error message if an
-         unknown directive is encountered
-       - parser_endif now prints an error message if an $endif without
-         a matching $if is found
-       - added `$include' parser directive to read bindings and commands
-         from another file at that point
-
-lib/readline/doc/rluser.texinfo, doc/{bash.{1,html},readline.3}
-       - documented new readline `$include' parser directive
-
-shell.c, parse.y
-       - added a new invocation option, --dump-po-strings, and code to
-         make it dump translatable strings ($"...") in GNU gettext
-         `po' format
-
-doc/{bash.{1,html},bashref.texi}
-       - documented new `--dump-po-strings' invocation option
-
-lib/readline/{{kill,funmap}.c,readline.h}
-       - added `rl_paste_from_clipboard()', bound to `paste-from-clipboard'
-         for CYGWIN32 users
-
-lib/readline/kill.c
-       - incorporated bfox's patches for `iterative' yank-last-arg handling.
-         This means that one can keep pressing M-. and move backwards in
-         the history, yanking the last argument of successive history lines
-
-lib/readline/rlwinsize.h
-       - new file, encapsulates various locations of the definition for
-         `struct winsize'
-
-aclocal.m4
-       - augmented BASH_STRUCT_WINSIZE to look in termios.h as well as
-         sys/ioctl.h for definition of `struct winsize'
-
-lib/readline/rltty.h
-       - include "rlwinsize.h" after including tty-driver-specific header
-         file
-
-                                  7/10
-                                  ----
-support/config.guess
-       - add better support for SunOS on M68K (old Sun3 machines)
-
-parse.y
-       - check for compound array assignment in read_token_word only if
-         there are characters before the `=' (which would make it a legal
-         assignment statement).  This fixes the problem with defining a
-         function named `=' with `=() { echo foo; }'
-         [in bash-2.01.1]
-
-jobs.c, jobs.h
-       - nohup_all_jobs and delete_all_jobs now take a parameter which
-         says whether or not to restrict their operation to only running
-         jobs
-
-jobs.c
-       - changed all calls to delete_all_jobs
-
-builtins/jobs.def
-       - added `-a' (all jobs) and `-r' (running jobs only) options to
-         `disown'
-
-doc/{bash.{1,html},bashref.texi}
-       - documented new `-a' and `-r' options to `disown'
-
-findcmd.c, findcmd.h
-       - new files with command searching code from execute_cmd.c and
-         function declarations from execute_cmd.h
-
-Makefile.in, builtins/Makefile.in
-       - updated dependencies to account for new findcmd.[ch]
-       - updated dependencies to account for new redir.[ch]
-
-redir.c, redir.h
-       - new files with code that sets up lists and performs redirections
-         from execute_cmd.c and execute_cmd.h
-
-execute_cmd.c
-       - include new findcmd.h, redir.h
-
-                                  7/11
-                                  ----
-Makefile.in, configure.in
-       - PROFILE_FLAGS is now substituted into the Makefile by configure
-
-                                  7/14
-                                  ----
-print_cmd.c
-       - make sure single_quote is called from xtrace_print_word_list
-         to correctly quote each word of trace output, especially those
-         with embedded quotes
-         [in bash-2.01.1]
-
-aclocal.m4
-       - extended BASH_CHECK_GETPW_FUNCS so that it checks that getpwuid
-         and getpwnam can also be declared, as well as getpwent
-         [in bash-2.01.1]
-       - in BASH_FUNC_PRINTF, cast printf to type `_bashfunc' before trying
-         to assign it to `pf' to avoid any prototype problems in the
-         declaration
-         [in bash-2.01.1]
-
-trap.c
-       - include <unistd.h> before any of the bash-specific header files,
-         but after config.h
-         [in bash-2.01.1]
-
-test.c
-       - include <errno.h> and declare `extern int errno' before including
-         any of the bash-specific include files, but after <unistd.h>
-         [in bash-2.01.1]
-
-builtins/Makefile.in
-       - PROFILE_FLAGS is now substituted into the Makefile by configure
-
-configure.in
-       - new options, --enable-profiling and --enable-static-link, to turn
-         on profiling with gprof and link bash statically (if using gcc)
-         for use as a root shell.  The former implies the latter.  If
-         we're linking statically, dynamic loading of new builtins is not
-         available
-
-doc/bashref.texi
-       - documented new --enable-profiling and --enable-static-link
-         options in installation section; regenerated INSTALL
-
-lib/glob/glob.[ch]
-       - new global variable, glob_ignore_case, turns on case-insensitive
-         filename matching in fnmatch() using the FNM_CASEFOLD flag
-
-doc/{bash.{1,html},bashref.texi}
-       - documented new shopt `nocaseglob' option
-
-                                  7/15
-                                  ----
-bashline.c
-       - when glob_complete_word is called with state == 0, make sure we
-         set rl_filename_completion_desired so that proper quoting of
-         the resultant filenames is performed
-         [in bash-2.01.1]
-
-                                  7/16
-                                  ----
-externs.h, oslib.c
-       - strcasecmp and strncasecmp replacements should have `const char *'
-         as the first two arguments, to match OS definitions
-         [in bash-2.01.1]
-
-                                  7/17
-                                  ----
-(many files)
-       - changes for minix-2.0, mostly just adding #ifndef _MINIX around
-         include files that minix doesn't provide, like <sys/param.h> and
-         <sys/file.h>
-
-lib/readline/terminal.c
-       - removed `outchar' function; use _rl_output_character_function in
-         its place
-
-support/config.guess
-       - changes to recognize HP_ARCH of `hppa2.0'
-
-test.c
-       - new `-N' option: `test -N file' returns true if FILE exists and
-         has been modified since it was last accessed
-
-doc/{bash.{1,html},bashref.texi}
-       - documented new `test -N' option
-
-                                  7/22
-                                  ----
-aclocal.m4
-       - prefer /var/spool/mail to /usr/spool/mail in BASH_DEFAULT_MAIL_DIR
-         [in bash-2.01.1]
-
-lib/readline/{complete,bind}.c
-       - new readline variable, print-completions-horizontally, which causes
-         matches to be printed across the screen (like `ls -x') rather than
-         up-and-down (like `ls')
-       - new readline variable, completion-ignore-case, which causes filename
-         completion and matching to be performed case-insensitively
-
-doc/{bash.{1,html},readline.3}, lib/readline/doc/rluser.texinfo
-       - documented new print-completions-horizontally variable
-       - documented new completion-ignore-case variable
-
-_distribution, Makefile.in
-       - bumped the version number up to 2.02-alpha1
-
-bracecomp.c
-       - fixes so that the braces are not quoted by the filename quoting
-         function when complete-into-braces is executed with M-{.  The
-         brace completion functions do filename quoting themselves
-         [in bash-2.01.1]
-
-pathexp.c
-       - changed quote_string_for_globbing so that it takes a flags word
-         as its second argument
-
-pathexp.h
-       - defines for flags passed to quote_string_for_globbing
-
-subst.c,execute_cmd.c
-       - changed calls to quote_string_for_globbing to pass the correct
-         flag arguments
-
-expr.c
-       - added a `**' binary operator to do exponentiation (2**16 == 65536).
-         precedence is lower than arithmetic operators, higher than unary
-         operators (2**16-1 == 65535)
-
-doc/{bash.{1,html},bashref.texi}
-       - documented new `**' arithmetic binary operator
-
-                                  7/24
-                                  ----
-shell.c
-       - added new (currently undocumented) `--wordexp' option to do the
-         job required by POSIX.2 wordexp().  If -n is supplied along with
-         --wordexp, command substitution is disallowed and the shell
-         exits with a status of 125 if one is attempted.  If there is an
-         expansion error, the shell exits with a status of 127.  If there
-         is a shell parsing error, the shell exits with a status of 126.
-         Otherwise, the exit status is 0.  The current output is
-
-               number of words\n
-               number of bytes\n
-               expanded words, one per line, separated by newlines
-
-         This will have to be changed when an interface to glibc is coded
-
-                                  7/28
-                                  ----
-hashcmd.h
-       - reduced the default size of the filename hash table from 631
-         to 107
-
-sig.c
-       - don't call initialize_siglist if HAVE_UNDER_SYS_SIGLIST is defined
-         [in bash-2.01.1]
-
-siglist.c
-       - don't compile this file if HAVE_UNDER_SYS_SIGLIST is defined
-         [in bash-2.01.1]
-
-variables.c
-       - fix to make $RANDOM work better in subshells
-         [in bash-2.01.1]
-
-aclocal.m4
-       - new macro, BASH_DECL_UNDER_SYS_SIGLIST, looks for _sys_siglist in
-         <signal.h> and <unistd.h>, defines UNDER_SYS_SIGLIST_DECLARED if
-         found
-         [in bash-2.01.1]
-       - change BASH_UNDER_SYS_SIGLIST to require BASH_DECL_UNDER_SYS_SIGLIST,
-         like BASH_SYS_SIGLIST requires AC_DECL_SYS_SIGLIST
-         [in bash-2.01.1]
-
-config.h.in
-       - add a line for UNDER_SYS_SIGLIST_DECLARED
-         [in bash-2.01.1]
-
-configure.in
-       - make sure that SVR4_2 is defined for machines that have $host_os
-         sysv4.2* (e.g., sysv4.2MP) as well as $host == sysv4.2
-         [in bash-2.01.1]
-
-                                  7/29
-                                  ----
-command.h
-       - new command type, ARITH_COM, used to create and execute a ((...))
-         command without translating it into let "..."
-
-parse.y
-       - changes to the grammar and lexer so that ((...)) is parsed as a
-         command of type ARITH_CMD.  An ARITH_CMD is a WORD_LIST, for
-         future expansion, even though only the first word is used
-
-make_cmd.c, make_cmd.h
-       - definition and declaration of a function to build an arithmetic
-         command
-
-dispose_cmd.c
-       - added code to dispose of arithmetic commands
-
-print_cmd.c
-       - added code to print arithmetic commands, both `regularly' and
-         when they're being traced with `set -x'
-
-externs.h
-       - extern declaration for xtrace_print_arith_cmd
-
-copy_cmd.c
-       - added code to copy arithmetic commands
-
-execute_cmd.c
-       - added code to directly execute arithmetic commands -- they are
-         a shell_control_structure, so just about everything like
-         redirections and piping is taken care of by the boilerplate code.
-         All that's needed is to expand the expression (which is within
-         double quotes -- added by parse.y:parse_arith_cmd()), print it
-         if tracing is enabled, call the expression evaluator, and return
-         an appropriate result
-
-                                  7/30
-                                  ----
-input.c
-       - new function, set_buffered_stream(fd, bp), sets the buffered stream
-         associated with FD to BP and returns the old buffered stream
-
-input.h
-       - extern declaration for set_buffered_stream
-
-parse.y
-       - call set_buffered_stream rather than manipulating the BUFFERS array
-         directly
-
-shell.c
-       - unset_bash_input now takes an argument, CHECK_ZERO.  This tells it
-         whether to check whether default_buffered_input is >= 0 or just > 0
-
-externs.h
-       - changed extern declaration for unset_bash_input
-
-execute_cmd.c, jobs.c, nojobs.c
-       - changed calls to unset_bash_input to add appropriate argument
-
-input.h
-       - #undef B_* before defining them as flag values for b_flags.  Some
-         systems, like SVR4, have a B_ERROR define in a file included by
-         jobs.c and nojobs.c, and it causes a warning
-
-                                  7/31
-                                  ----
-fnmatch.c
-       - rewrote most of fnmatch(), so that it now implements ksh-88 style
-         pattern matching (`[@+*?!](patlist)') if the FNM_EXTMATCH flag
-         is set
-
-fnmatch.h
-       - added a define for FNM_EXTMATCH
-
-                                   8/4
-                                   ---
-lib/readline/display.c
-       - fixed _rl_redisplay_after_sigwinch () so that it really redisplays
-         only the portion after the final newline of a multi-line prompt
-         [in bash-2.01.1]
-
-bashline.c
-       - attempt_shell_completion no longer returns matches if a glob pattern
-         matches more than one filename -- it caused too many problems
-         [in bash-2.01.1]
-
-                                   8/5
-                                   ---
-lib/glob/glob.c
-       - updated glob_pattern_p so that the extended matching operators
-         are recognized
-
-pathexp.c
-       - udpated unquoted_glob_pattern_p so that the extended matching
-         operators are recognized
-       - udpated quote_globbing_chars so that the extended matching
-         operators are recognized and quoted appropriately
-
-subst.c
-       - updated match_pattern_char so that the extended matching operators
-         are recognized
-
-parse.y
-       - updated read_token_word so that it parses an extended matching
-         pattern as a single word
-
-jobs.c
-       - if a job is suspended with SIGTSTP, and the user has set
-         checkwinsize with `shopt', update the window size
-         [in bash-2.01.1]
-
-pathexp.c, pathexp.h
-       - new global variable, extended_glob, controls whether the extended
-         pattern matching features are enabled
-
-pathexp.h
-       - new define, FNMATCH_EXTFLAG, to be OR'd with other values for
-         flags argument to fnmatch to enable the extended pattern matching
-         features if extended_glob is set
-
-{pathexp,execute_cmd,bashhist,subst,test}.c, builtins/help.def
-       - changed calls to fnmatch to add FNMATCH_EXTFLAG to the flags arg if
-         extended_glob is non-zero
-
-lib/glob/glob.c
-       - changed flags arg passed to fnmatch to include FNM_EXTMATCH if
-         extended_glob is non-zero (#ifdef SHELL)
-
-                                   8/6
-                                   ---
-builtins/shopt.def
-       - added a new `extglob' shell option, controls the value of
-         extended_glob
-
-                                   8/7
-                                   ---
-doc/{bash.{1,html},bashref.texi}
-       - documented new extended pattern matching operators and the `extglob'
-         shell option
-
-tests/{extglob.{tests,right},run-extglob}
-       - test suite for the new extended globbing features
-
-                                   8/8
-                                   ---
-parse.y, pathexp.h, lib/glob/fnmatch.c
-       - made the extended globbing code #ifdef EXTENDED_GLOB
-
-config.h.in
-       - added a line for EXTENDED_GLOB, controlled by configure
-
-configure.in
-       - new option, --enable-extended-glob, controls defining of
-         EXTENDED_GLOB (on by default)
-
-doc/bashref.texi
-       - documented new `configure' `--enable-extended-glob' option
-
-                                  8/11
-                                  ----
-builtins/printf.def
-       - new `printf' builtin, implemented according to POSIX.2 spec
-         for printf(1)
-
-Makefile.in,builtins/Makefile.in
-       - added necessary stuff for new printf builtin
-
-                                  8/12
-                                  ----
-lib/readline/isearch.c
-       - change to make ^G interrupt the incremental search correctly
-         [in bash-2.01.1]
-
-configure.in, config.h.in
-       - configure now checks for the availability of strtoul(3)
-
-builtins/printf.def
-       - use strtoul for the `%o', `%u', `%x', and `%X' formats if it
-         is available
-
-                                  8/13
-                                  ----
-tests/{printf.{right,tests},run-printf}
-       - extensive test suite for the new `printf' builtin
-
-builtins/Makefile.in
-       - change so that `builtext.h' is not recreated every time the source
-         file for a builtin is changed if the contents are the same.  This
-         keeps many files from being recompiled
-
-                                  8/14
-                                  ----
-subst.c
-       - changed verify_substring_values so that it returns -1 for substring
-         range errors, 0 for expression errors, and 1 for success
-         [in bash-2.01.1]
-       - changed parameter_brace_substring to return an error if
-         verify_substring_values returns 0, and a null string if it returns
-         -1.  This matches the ksh93 behavior
-         [in bash-2.01.1]
-
-trap.c
-       - changed decode_signal so that it makes sure the first three
-         characters of a signal name are `SIG' before allowing the `SIG'
-         prefix to be omitted.  This is so a signal spec of `T' does not
-         match `EXIT', for instance
-         [in bash-2.01.1]
-
-builtins/trap.def
-       - make sure that showtrap() displays traps for signals with unknown
-         names using the signal number
-         [in bash-2.01.1]
-shell.c
-       - make sure that `bash -r' doesn't turn on the restricted mode until
-         after the startup files are executed
-         [in bash-2.01.1]
-
-doc/{bash.{1,html},bashref.texi}
-       - documented printf builtin
-
-                                  8/15
-                                  ----
-general.c
-       - added \xNNN escape to ansicstr -- NNN are up to three hex digits.
-         This affects $'...', `echo -e', and printf
-
-builtins/printf.def
-       - added \xNNN escape to bexpand -- NNN are up to three hex digits.
-         This affects printf's `%b' conversion specifier
-
-doc/{bash.{1,html},bashref.texi}
-       - documented new \xNNN escape sequence for echo, $'...', and printf
-
-builtins/setattr.def
-       - make sure that a variable found in the temp environment does not
-         cause a null string to be assigned by bind_variable (e.g.,
-               foo="" export foo
-         )
-         [in bash-2.01.1]
-
-                                  8/18
-                                  ----
-subst.c
-       - fixed a bug that sometimes caused bad memory (pointer into an
-         allocated block) to be passed to free when doing arithmetic
-         substitution.  Bug report from stevet@myofb.org
-         [in bash-2.01.1]
-
-                                  8/19
-                                  ----
-subst.c
-       - considerable changes:  moved the code that expands a single
-         $... parameter expansion into a separate function: param_expand()
-         This function returns a string, which may contain characters
-         quoted with CTLESC or CTLNUL without doing word splitting
-       - changed expand_word_internal to not remove the expansion of "$*"
-         if the number of positional parameters is > 0
-       - changed the '"' case of expand_word_internal to remove quoted
-         nulls from the resultant word if the expansion was not "$@", and
-         the word is not a quoted null string ([] == CTLNUL, [1] == '\0')
-
-subst.c, variables.c
-       - moved the code that handles special variables from subst.c to
-         variables.c
-
-                                  8/20
-                                  ----
-subst.c
-       - rearranged the source a bit to group functions with similar
-         operation together
-       - fixed parameter_brace_expand so that it no longer allows
-         indirect expansion of `special' variables
-       - fixed parameter_brace_expand so taking the length of some of
-         the shell's special parameters works again
-       - moved all of the code that computes the length of a shell
-         parameter (the ${#xxx} expansion) into parameter_brace_expand_length.
-         Previously, the code that handled the lengths of the shell's
-         special parameters was in parameter_brace_expand_word
-       - valid indirect expansions are now only variable names or positional
-         parameters
-
-                                  8/21
-                                  ----
-subst.c
-       - fixed param_expand to raise an expansion error if $! is being
-         expanded and no asynchronous processes have been created
-       - an expression error in a $((...)) arithmetic expansion now causes
-         a non-interactive shell running in POSIX mode to exit
-       - relaxed change of 8/20 to allow indirect references to $#, $@, $*
-
-builtins/bashref.texi
-       - documented new posix-mode exit on invalid expressions in $((...))
-
-lib/readline/complete.c
-       - don't call rl_strpbrk unless rl_filename_quote_characters is not
-         NULL -- strpbrk requires non-NULL arguments
-         [in bash-2.01.1]
-
-                                  8/22
-                                  ----
-bashline.c
-       - don't make `history-expand-line' a bindable command unless
-         BANG_HISTORY is defined, and don't compile the code for that
-         command in unless BANG_HISTORY is defined
-       - make history_expand_line(), tcsh_magic_space(), alias_expand_line(),
-         and history_and_alias_expand_line() int-returning functions that
-         return 0 for success and non-zero on error.  This allows
-         tcsh_magic_space() to just call history_expand_line() and insert
-         a space if that returns successfully
-       - `magic-space' is now a bindable readline command
-
-doc/bash.{1,html}, lib/readline/doc/rluser.texinfo
-       - documented new `magic-space' bindable readline command
-
-                                  8/25
-                                  ----
-parse.y
-       - fixed decode_prompt_string so that values of $PWD longer than
-         PATH_MAX don't cause buffer overruns (char t_string[PATH_MAX])
-         [in bash-2.01.1]
-
-general.c
-       - fixed polite_directory_format so that values of $HOME longer
-         than PATH_MAX don't cause buffer overruns (char tdir[PATH_MAX])
-         [in bash-2.01.1]
-
-subst.c
-       - fix to expansion of $* so that the positional parameters are
-         separated by the first character of $IFS, even when the expansion
-         is not within double quotes, so the correct split is still
-         performed even when IFS does not contain a space.  Works for
-         ${*}, too
-       - fix to expansion of $@ so that the positional parameters are
-         separated by the first character of $IFS, even when the expansion
-         is not within double quotes, so the correct split is still
-         performed even when IFS does not contain a space.  Works for
-         ${@}, too
-       - new function, string_list_dollar_at(), which is to $@ as
-         string_list_dollar_star is to $*
-       - fixed expansion of $@ so that splitting is still done even if
-         IFS is unset or NULL, as POSIX.2 specifies (section 3.5.2)
-       - fixed expansion of $* so that it expands to multiple words if there
-         is more than one positional parameter, just like $@, even if
-         IFS is unset or NULL
-       - new function list_quote_escapes, quotes (with CTLESC) all
-         CTLESC and CTLNUL characters in each member of the list
-
-tests/dollar-{at,star}.sh
-       - combined into dollar-at-star, changed run-dollars accordingly
-
-                                  8/26
-                                  ----
-Makefile.in
-       - make the `tests' target use $(SHELL) instead of hardcoding `sh'
-
-                                  8/29
-                                  ----
-subst.c
-       - expand_word_list_internal now takes a flags word as the second
-         argument, telling which expansions to perform on the WORD_LIST
-       - broke expand_word_list_internal into several functions: one
-         each to do brace expansion, glob expansion, and the `normal'
-         shell expansions
-       - new extern function: expand_words_shellexp() to perform the
-         `normal' shell expansions on a WORD_LIST
-
-subst.h
-       - extern declaration for expand_words_shellexp
-
-bashline.c
-       - fixed a problem with attempt_shell_completion where it attempted
-         to refer to rl_line_buffer[-1] (completion at the start of the
-         line, which means that ti == -1, which means that the test for
-         rl_line_buffer[ti] at line 715 was an array bounds error
-         [in bash-2.01.1]
-
-eval.c
-       - new function, parse_string_to_word_list(), which takes a string
-         and runs it through the parser, returning the resultant word
-         list
-
-externs.h
-       - new extern declaration for parse_string_to_word_list()
-
-variables.c
-       - change assign_array_var_from_string to first split the string
-         between the parens on whitespace, then expand the resultant
-         list of words with all the shell expansions before doing the
-         assignment
-
-                                   9/4
-                                   ---
-redir.c, redir.h
-       - redirection_error is no longer a static function
-
-builtins/evalstring.c
-       - changes to handle $( < filename ) (equivalent to $(cat filename))
-         as in ksh
-
-lib/readline/bind.c
-       - added two new functions: rl_unbind_function_in_map(func, map),
-         which unbinds all keys that execute FUNC in MAP; and
-         rl_unbind_command_in_map(command, map), which unbinds all keys
-         bound to COMMAND in MAP
-
-lib/readline/readline.h
-       - extern declarations for rl_unbind_{function,command}_in_map
-
-lib/readline/doc/rltech.texi
-       - documented rl_unbind_{function,command}_in_map
-
-builtins/bind.def
-       - added a new option, -u FUNCNAME, which unbinds all key sequences
-         bound to FUNCNAME in the specified (or current) keymap
-
-doc/{bash.{1,html},bashref.texi}
-       - documented new $( < filename ) command substitution
-       - documented new bind -u FUNCNAME option
-
-                                   9/5
-                                   ---
-shell.c
-       - send SIGHUP to all jobs when an interactive login shell exits if
-         the variable `hup_on_exit' is non-zero
-       - modified run_startup_files so that if `NON_INTERACTIVE_LOGIN_SHELLS'
-         is #define'd (perhaps in config.h.top, though there is nothing there
-         for it), all login shells (interactive and non-interactive) run
-         /etc/profile and one of the per-user login shell startup files
-
-builtins/shopt.def
-       - new shopt option `huponexit' to control the value of hup_on_exit
-
-doc/{bash.{1,html},bashref.texi}
-       - documented new `huponexit' shell option
-
-                                   9/8
-                                   ---
-builtins/common.c
-       - changed contains_shell_metas to return 1 if a tilde appears at the
-         start of a string or after a `=' or `:'
-       - changed backslash_quote to quote a tilde if it appears at the start
-         of a string or after a `=' or `:'
-
-lib/readline/complete.c
-       - moved rl_tilde_expand to util.c; it doesn't really have anything
-         to do with completion
-       - moved insert_text to readline.c, renamed it _rl_replace_text (since
-         that's really what it does), changed callers
-       - moved code that postprocesses the list of completion matches into
-         a new function: postprocess_matches
-       - new implementation of tcsh-like menu completion in a single new
-         function: rl_menu_complete
-
-lib/readline/{funmap.c,readline.h}
-       - necessary declarations for binding rl_menu_complete to the
-         new `menu-complete' command
-
-doc/{bash.{1,html},readline.3}, lib/readline/doc/rluser.texinfo
-       - documented new `menu-complete' bindable readline command
-
-                                   9/9
-                                   ---
-jobs.c
-       - delete_job should print a warning only if subshell_environment
-         is 0, so we don't print bogus warnings when shell scripts without
-         a leading #! are executed
-
-                                  9/10
-                                  ----
-builtins/read.def
-       - fixed the code so that the `read' is automatically restarted when
-         it returns -1 with errno == EINTR.  SIGINT is handled by the
-         interrupt handler, since interrupt_immediately is set to 1, so
-         this handles things like SIGCHLD
-         [in bash-2.01.1]
-
-                                  9/11
-                                  ----
-test.c
-       - reorganized the code slightly to make it easier to add the ksh-like
-         [[...]] compound command
-
-test.h
-       - new file, with extern declarations for functions available in test.c
-
-externs.h
-       - moved declaration of test_command to test.h
-
-builtins/test.def
-       - include `test.h'
-
-                                  9/16
-                                  ----
-{command,make_cmd,dispose_cmd,externs,subst}.h
-parse.y, subst.c
-{make,dispose,copy,print,execute}_cmd.c
-       - changes to add the new ksh-93 compatible [[...]] conditional command
-
-configure.in
-       - new enable option, --enable-cond-command, to compile in the [[...]]
-         command code
-
-config.h.in
-       - new #define, COND_COMMAND, to compile in the [[...]] command code
-
-tests/{run-cond,cond.{tests,right}}
-       - test suite for the new [[...]] command
-
-{builtins,lib/{readline,glob,tilde}}/Makefile.in
-       - explicit dependencies for .o files on .c files for losing makes
-         like Solaris
-
-doc/{bash.{1,html},bashref.texi}
-       - documented the new `[[' compound command
-       - documented the test/[ builtin behavior based on the number of
-         arguments in the description of the builtin
-       - made a new section for conditional expressions that just lists
-         the available primaries -- the connectives and other operators
-         are listed in the description of the [[ command and the test/[
-         builtin
-
-                                  9/18
-                                  ----
-builtins/set.def
-       - minus_o_option_commands is now a global function so the shopt
-         code can use it
-       - minus_o_option_commands now takes an argument telling it which
-         options to print, just like list_minus_o_options
-       - new function, print_minus_o_option, which prints the value of
-         a `set -o' option either in the traditional format or in the
-         format used by `set +o'
-       - changed list_minus_o_opts and minus_o_option_commands to call
-         print_minus_o_option
-
-builtins/shopt.def
-       - `shopt -p' now causes output to be printed in a format reusable
-         as input (the format is a series of shopt commands, like the
-         output of `set +o')
-       - fixed a bug that made `shopt -so' and `shopt -uo' not work
-       - fixed list_shopt_o_options so that `shopt -op' acts like `set +o'
-       - fixed list_shopt_o_options to that `shopt -op optname' prints the
-         value of optname in a reusable format
-       - fixed list_some_o_options so that `shopt -ops' and `shopt -opu'
-         work and display output in a reusable format
-
-                                  9/19
-                                  ----
-doc/{bash.{1,html},bashref.texi}
-       - documented new `shopt -p' behavior
-
-shell.c
-       - made `bash +o' display the same output as `set +o' and then
-         start an interactive shell (previously `bash -o' and `bash +o'
-         displayed the same thing)
-
-builtins/common.h
-       - added prototypes to the extern function declarations
-
-                                  9/22
-                                  ----
-builtins/evalstring.c
-       - fixed the DISCARD case of the jump_to_top_level so that it
-         doesn't try to call dispose_command(command) after the
-         `pe_dispose' unwind frame gets run, since that disposes the
-         command
-
-                                  9/23
-                                  ----
-test.[ch]
-       - test_eaccess is now a global function so that globbing code can
-         use it
-
-lib/glob/glob.c
-       - rewrote glob_vector to be slightly more efficient and to not
-         read the directory if the filename pattern does not contain
-         any globbing chars.  This satisfies the POSIX requirement that
-         read permission is not required for a directory when the
-         pathname component does not contain a pattern character (bug
-         reported by jsm28@cam.ac.uk)
-
-subst.c
-       - fixed parameter_brace_expand so that ${array[@]} and ${array[*]}
-         behave correctly when IFS is unset or set to something that does
-         not contain a space (they should result in separate words, just
-         like $@ and $*)
-
-tests/{run-array2,array-at-star,array2.right}
-       - tests for the expansions of ${array[@]} and ${array[*]}, derived
-         from the tests in dollar-at-star
-
-                                  9/24
-                                  ----
-jobs.c
-       - fixed cleanup_dead_jobs so that it doesn't remove the job
-         containing last_asynchronous_pid from the job table.  This
-         fixes the POSIX.2 `wait' requirement problem
-
-                                  9/25
-                                  ----
-parse.y
-       - added `\r' escape sequence to the prompt expansion code
-
-lib/readline/chardefs.h
-       - added defines for ISOCTAL, OCTVALUE, isxdigit (if not defined),
-         and HEXVALUE
-
-lib/readline/bind.c
-       - added `normal' echo/printf-like backslash escapes to the
-         key sequence translation code, with the addition that \d
-         expands to RUBOUT.  This means that key sequence definitions
-         (before the `:') and macro values may contain these special
-         backslash-escape sequences
-       - now that we can translate octal escape sequences in key bindings,
-         change _rl_get_keyname so that it turns characters with values
-         128-159 inclusive into octal escape sequences (\200-\237), since
-         those characters are not ASCII or ISO Latin 1
-
-doc/{bash.{1,html},readline.3}, lib/readline/doc/rluser.texinfo
-       - documented new backslash escapes for readline key sequence and
-         macro translation
-
-builtins/pushd.def
-       - new function, get_dirstack_from_string(char *string), returns an
-         element from the directory stack or null, treating the argument
-         exactly as `dirs string' would, with the exception that if
-         the first character of `string' is not `+' or `-', a `+' is
-         assumed
-
-builtins/common.h
-       - new extern declaration for get_dirstack_from_string
-
-general.c
-       - added code to bash_special_tilde_expansions to get the expansion
-         using get_dirstack_from_string() if the first character of the
-         tilde-prefix is a digit or the first character is a `+' or `-'
-         and the second is a digit
-
-tests/dstack.{tests,right}
-       - renamed from dirstack.{tests,right}
-
-tests/dtack2.{tests,right}
-       - new tests for the directory stack tilde expansion code
-
-tests/run-dirstack
-       - now runs both dstack and dstack2
-
-                                  10/3
-                                  ----
-trap.c
-       - reordered header file inclusion for irix 4
-
-execute_cmd.c
-       - fixed select_query so that a reply that is not a number is treated
-         the same as a numeric reply that is out of range
-
-lib/readline/util.c
-       - added a backwards-compatibility definition of _rl_savestring()
-
-builtins/set.def
-       - initialize_shell_options now takes an argument saying whether or
-         not we should parse $SHELLOPTS from the environment.  The shell
-         does not parse the value if it's restricted, running setuid, or
-         running in `privileged mode'
-
-shell.c
-       - change call to initialize_shell_options to add the correct argument
-
-builtins/common.h
-       - changed extern declaration for initialize_shell_options
-
-doc/{bash.{1,html},bashref.texi}
-       - added note that the shell ignores $SHELLOPTS in the environment at
-         startup if running in privileged mode
-       - added note that the restricted shell does not parse $SHELLOPTS from
-         the environment at startup
-
-                                  10/6
-                                  ----
-aclocal.m4
-       - change BASH_RLIMIT_TYPE so that it looks for rlim_t in
-         <sys/resource.h> as well as <sys/types.h>, for Solaris 2.6
-       - new macro, BASH_LARGE_FILE_SUPPORT, to enable special compilation
-         options for large files on Solaris 2.6 (from eggert@twinsun.com)
-
-mailcheck.c
-       - the `file_size' member of the FILEINFO struct should be of
-         type `off_t'
-       - the `size' variable in file_has_grown should be of type `off_t'
-       - the RESET_MAIL_FILE macro should initialize file_size to 0, not 0L
-
-builtins/Makefile.in
-       - LDFLAGS and LOCAL_LDFLAGS are now set by configure
-       - `mkbuiltins' is now created from `mkbuiltins.o' instead of directly
-         from the source to the executable
-
-builtins/evalfile.c
-       - fixed _evalfile so that it handles large files correctly on
-         systems where the st_size member of `struct stat' will not fit
-         into an `int'
-
-builtins/mkbuiltins.c
-       - don't assume that st_size fits into an int
-
-input.[ch]
-       - the `b_size' member of a struct BSTREAM is now of type `size_t'
-       - changed third argument to make_buffered_stream to size_t; changed
-         caller
-       - changed `size' variable in fd_to_buffered_stream to type `size_t'
-
-general.h
-       - include <sys/resource.h> if HAVE_SYS_RESOURCE_H and RLIMTYPE are
-         both defined, for possible necessary definition of RLIMTYPE
-         (e.g., on Solaris 2.6)
-
-{execute_cmd,jobs}.c, builtins/times.def
-       - don't include <sys/resource.h> explicitly if RLIMTYPE is defined,
-         since general.h will include it in that case
-
-lib/readline/bind.c
-       - new function, char *_rl_read_file(filename, sizep), which reads
-         FILENAME into a malloced buffer, returning the buffer and the
-         size of the buffer in *SIZEP
-
-lib/readline/histfile.c
-       - changed read_history_range and history_truncate_file to handle
-         large files
-
-hashcmd.c
-       - find_hashed_filename should not add `./' to the front of a pathname
-         that already begins with `./'
-
-                                  10/8
-                                  ----
-support/config.sub
-       - recognize `hppa2.0' as a valid machine architecture
-
-aclocal.m4
-       - changed BASH_CHECK_LIB_TERMCAP so that `gnutermcap' is not chosen
-         if `$prefer_curses' is set to something
-
-bashhist.c
-       - don't use HISTCONTROL or HISTIGNORE to remove lines from the
-         second and subsequent lines of a multi-line command
-         (current_command_line_count > 1).  Old code did this only when
-         command-oriented-history was enabled
-
-doc/{bash.{1,html},bashref.texi}
-       - changed descriptions of HISTCONTROL and HISTIGNORE to state that
-         these variables are not applied to the second and subsequent
-         lines of a multi-line command
-
-builtins/hash.def, {copy,dispose}_cmd.c
-       - include "bashtypes.h" -- cray machines need it because of their
-         oddball definition of `word'
-
-configure.in
-       - changed check of ${host_cpu} to check for `*cray*' and `*Cray*'
-         when deciding whether to include the GNU malloc, since it
-         seems that ${host_cpu} gets set to `CrayYMP'
-
-                                  10/9
-                                  ----
-configure.in
-       - look for strtod and strtol in libc
-       - make lib/sh directory in build directory if not there
-       - create lib/sh/Makefile
-
-config.h.in
-       - added HAVE_STRTOD and HAVE_STRTOL
-
-Makefile.in
-       - changes for lib/sh/libsh.a (shell library)
-
-builtins/printf.def
-       - took out the `#ifdef STRTOUL' code, since strtoul is in libsh.a,
-         and will be resolved from there if it's not in libc
-
-variables.c
-       - call strtol() instead of string_to_long()
-
-general.c, general.h
-       - removed string_to_long
-       - changed legal_number to use strtol so it correctly sets errno
-         to ERANGE on overflow
-       - moved bash_getcwd_errstr here from lib/sh/oslib.c
-
-externs.h
-       - moved extern declarations for functions defined in libsh to a
-         separate section of the file, added extern declarations for
-         other functions in libsh
-
-builtins/ulimit.def
-       - changed macro definition for string_to_rlimtype to call strtol
-         directly instead of string_to_long
-
-lib/sh/clktck.c
-       - moved get_clock_tck to its own file, since it's compiled in
-         unconditionally
-
-                                  10/10
-                                  -----
-lib/sh/getenv.c
-       - moved getenv() and __getenv() here from lib/sh/oslib.c
-
-lib/sh/{setlinebuf,strerror,strcasecmp}.c
-       - moved {setlinebuf,strerror,strcasecmp}() from oslib.c to
-         individual files
-
-lib/sh/Makefile.in, Makefile.in
-       - changes for new files in lib/sh
-
-aclocal.m4
-       - new macro BASH_SYS_RESTARTABLE_SYSCALLS, which does what
-         AC_SYS_RESTARTABLE_SYSCALLS does, but using posix sigaction()
-
-configure.in
-       - call BASH_SYS_RESTARTABLE_SYSCALLS if ac_cv_sys_restartable_syscalls
-         is `no'
-
-                                  10/13
-                                  -----
-builtins/jobs.def
-       - catch out-of-range jobs better in disown_builtin
-
-configure.in
-       - don't build with GNU malloc on cygwin32
-
-trap.c
-       - change signal_name to handle the case where signal_names[sig] is
-         NULL, which can happen on cygwin32
-
-execute_cmd.c
-       - changes to do_piping to make pipes text mode (O_TEXT) on cygwin32
-
-cross-build
-       - new directory with cache files and other stuff for cross-compiling
-         bash (currently only for building for cygwin32 on a Unix machine)
-
-cross-build/cygwin32.cache
-       - new file containing configuration variable assignments for
-         cygwin32 that would otherwise require a default case for AC_TRY_RUN
-
-configure.in
-       - source ${srcdir}/cross-build/cygwin32.cache on CYGWIN32 systems
-         if we're cross-compiling on a unix machine
-       - set $CC_FOR_BUILD for cygwin32 cross-compiling environment
-
-Makefile.in
-       - CC_FOR_BUILD is now a variable set by configure
-
-builtins/mkbuiltins.c
-       - only check for read(2) returning <= 0 in extract_info() (error
-         and exit on < 0, warning and return on == 0)
-
-builtins/evalfile.c
-       - only check for read(2) returning <= 0 in _evalfile() (error and
-         and failure return on < 0, success on == 0 while short-circuting
-         rest of operation)
-
-                                  10/14
-                                  -----
-
-vprint.c
-       - moved to lib/sh/vprint.c
-
-lib/sh/Makefile.in
-       - added entries for vprint.[co] in the appropriate places
-
-cross-build/win32sig.h
-       - a version of signames.h for cross-compiling for the CYGWIN32
-         environment on a Unix machine (from noer@cygnus.com)
-
-aclocal.m4
-       - made all cases of AC_TRY_RUN and AC_TRY_COMPILE have reasonable
-         default cases for cross-compiling, and tell the user what they are
-
-Makefile.in
-       - removed vprint.c from shell sources and vprint.o from shell
-         objects
-       - added a level of indirection for signames.h -- the variable
-         SIGNAMES_H is set by configure to either `lsignames.h' or
-         a file for a cross-compilation environment (currently only
-         the cygwin32 stuff is supported).  Then that file is copied
-         to `signames.h'.  `lsignames.h' is created by `mksignames' as
-         was previously used to create signames.h directly
-
-configure.in
-       - set SIGNAMES_H to either `$(srcdir)/cross-build/win32sig.h' or
-         `lsignames.h' as appropriate, substitute into Makefile
-
-                                  10/15
-                                  -----
-builtins/Makefile.in
-       - CC_FOR_BUILD is now set by configure and used to build mkbuiltins
-         and psize.aux
-
-variables.h
-       - new variable attribute `att_tempvar', set if the SHELL_VAR * was
-         constructed on the fly from the temporary environment
-
-variables.c
-       - find_name_in_env_array now sets the `att_tempvar' attribute on
-         the SHELL_VAR it creates
-
-findcmd.c
-       - search_for_command now disposes the SHELL_VAR created by searching
-         the temporary environment for $PATH, if it is found there
-       - _find_user_command_internal also disposes of the SHELL_VAR if it
-         has the `att_tempvar' attribute set
-
-builtins/setattr.c
-       - show_name_attributes looks in the temporary environemnt, so it needs
-         to dispose the SHELL_VAR if it has the att_tempvar attribute set
-
-subst.c
-       - parameter_brace_expand_word now disposes of the SHELL_VAR returned
-         by find_variable if it has the att_tempvar attribute set
-       - ditto for param_expand and word_split
-
-builtins/kill.def
-       - disallow null pid arguments instead of treating them as 0
-       - display a usage message and return failure if no pid or job
-         arguments are supplied
-
-                                  10/16
-                                  -----
-builtins/declare.def
-       - make `var=value declare -x var' behave the same as
-         `var=value export var' and `var=value declare -r var' behave the
-         same as `var=value readonly var', now that we have the `tempvar'
-         attribute
-
-                                  10/22
-                                  -----
-jobs.c
-       - non-interactive shells shouldn't report jobs killed by a SIGINT,
-         even if the standard output is to a terminal
-       - pretty_print_job should add a CR at the end of its output if the
-         shell is interactive and asynchronous notification is being
-         performed.  This fixes the problem with extra CRs in the output
-         of $(jobs)
-
-general.c
-       - changed canonicalize_pathname to change `//' into `/', but leave
-         other pathnames starting with two consecutive slashes alone
-
-                                  10/27
-                                  -----
-
-lib/readline/histexpand.c
-       - fixed history_expand so that the appearance of the history
-         comment character at the beginning of a word inhibits history
-         expansion for the rest of the line
-
-                                  10/29
-                                  -----
-jobs.c,variables.c
-       - moved set_pipestatus_array to variables.c
-
-variables.c
-       - new function, set_pipestatus_from_exit(int), which sets the
-         PIPESTATUS variable from a command's exit status
-
-variables.h
-       - extern declarations for set_pipestatus_from_exit and
-         set_pipestatus_array
-
-execute_cmd.c
-       - fixed execute_simple_command to call set_pipestatus_from_exit
-         if a foreground builtin or function, or a foreground null
-         command is executed
-
-                                  10/31
-                                  -----
-shell.c
-       - fixed run_startup_files to detect being run by sshd, and treat
-         that case as equivalent to being run by rshd
-
-                                  11/3
-                                  ----
-builtins/set.def
-       - make sure `set -a' doesn't cause SHELLOPTS to be exported when
-         a change is made to one of the shell options
-
-                                  11/4
-                                  ----
-pathexp.c
-       - fix to shell_glob_filename in the code that uses a POSIX glob
-         library
-
-                                  11/5
-                                  ----
-jobs.c
-       - fix cleanup_dead_jobs to hang onto the job corresponding to
-         last_asynchronous_pid only if the shell is not interactive
-         (this still has the problem that until a new async process
-         is started, the job will stay in the jobs table)
-
-configure.in,aclocal.m4
-       - added a new macro, BASH_TYPE_U_INT32_T, to check for u_int32_t
-         separately from int32_t, since there are systems (HP-UX 10.20)
-         that have a define for the latter but not the former
-
-                                  11/6
-                                  ----
-jobs.c
-       - cleanup_dead_jobs no longer checks whether the job it is deleting
-         corresponds to last_asynchronous_pid
-       - notify_of_job_status and mark_dead_jobs_as_notified now will not
-         mark the job corresponding to last_asynchronous_pid as notified
-         if the shell is not interactive
-       - wait_for_single_pid, if told to wait for last_asynchronous_pid,
-         or the job of which it is a member, will take care of marking
-         the job as notified after calling wait_for and collecting the
-         status.  This means that two successive `wait' calls for $! will
-         succeed the first time and fail the second, as POSIX.2 specifies
-         (take this code out if it causes problems)
-
-                                  11/7
-                                  ----
-jobs.c
-       - wait_for_job, if told to wait for the job corresponding to the
-         last async pid, will mark the job as notified after waiting for
-         it and collecting the status
-
-general.h
-       - fixed MEMBER macro to avoid reading past end of S (it used to
-         test s[1] before s[0], which is an error if s == "")
-
-subst.c
-       - expand_word_internal should free ISTRING before returning if
-         param_expand returns an error
-       - parameter_brace_expand_word should free the memory it allocates
-         and passes to param_expand
-
-execute_cmd.c
-       - execute_arith_command should call dispose_words on the list
-         returned by expand_words
-
-parse.y
-       - after calling parse_arith_command, read_token needs to free the
-         string value that parse_arith_command fills in, since make_word
-         makes a copy of the string it's passed
-
-                                  11/10
-                                  -----
-subst.c
-       - cond_expand_word needs to free the value returned by string_list
-         after it is run through quote_string_for_globbing
-
-parse.y
-       - make sure cond_term frees yylval.word if it is just a `!' and
-         it's parsed as a term negation operator
-
-variables.c
-       - assign_array_var_from_string needs to free the word list returned
-         by parse_string_to_word_list after calling expand_words_shellexp
-         on it
-
-execute_cmd.c
-       - changed execute_simple_command to avoid saving the_printed_command
-         into command_line until just before it's needed.  This should save
-         time and prevent memory leaks on errors, but it must be watched
-         closely to make sure that the_printed_command doesn't change out
-         from under execute_simple_command before we copy it
-
-                                  11/12
-                                  -----
-builtins/alias.def
-       - alias and unalias should print error messages when passed an
-         argument that is not an alias for printing or deletion,
-         respectively, even if the shell is not interactive
-
-builtins/exit.def
-       - `logout' will no longer exit a non-login non-interactive shell
-
-                                  11/17
-                                  -----
-lib/readline/nls.c
-       - add `koi8-r' as a legal LANG value
-
-builtins/alias.def
-       - if `alias' or `alias -p' is executed when no aliases are defined,
-         the return status should be 0, according to POSIX.2
-
-                                  11/18
-                                  -----
-subst.c
-       - changed a couple of calls to make_word_list (make_word(z), ...)
-         to add_string_to_list (z, ...)
-
-execute_cmd.c
-       - execute_cond_command now sets this_command_name to `[['
-
-                                  11/21
-                                  -----
-variables.c
-       - all_visible_{function,variable}s and the functions they call
-         should be compiled in only if READLINE is defined
-
-                                  11/24
-                                  -----
-aclocal.m4
-       - remove some leading whitespace before preprocessor statements in
-         BASH_KERNEL_RLIMIT_CHECK
-
-general.[ch]
-       - fix declarations for group_member so the extern declaration in
-         general.h agrees with the definition in general.c (fix from
-         Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>)
-
-builtins/cd.def
-       - print the new working directory if the shell is interactive
-         and `cd -' succeeds
-       - don't print the new working directory if it's found in $CDPATH
-         if the shell is not interactive
-
-                                  11/25
-                                  -----
-builtins/cd.def
-       - fixes to bindpwd so that it copes with get_working_directory
-         returning NULL (bug from schwab@issan.informatik.uni-dortmund.de)
-
-                                  12/2
-                                  ----
-support/config.guess
-       - add support for new OS name for SINIX SVR4 systems
-
-                                  12/3
-                                  ----
-
-builtins/set.def
-       - `unset' should check that a function it's trying to unset is a
-         legal identifier only when in POSIX mode
-
-redir.c
-       - changed here_document_to_fd to try and make sure the filename
-         used for the here document is `more unique', since the old
-         version would fail if two here documents were created in less
-         than a second
-
-                                  12/4
-                                  ----
-builtins/cd.def
-       - POSIX.2 says that if CDPATH is used to find the new directory,
-         and it's not relative to the current directory, the new directory
-         name should be displayed on stdout even if the shell is not
-         interactive
-
-                                  12/5
-                                  ----
-parse.y
-       - changes so that `time' is recognized as a reserved word only at
-         the beginning of a pipeline (the last read token is one of 0,
-         `;', `\n', `&&', `||', or `&'):
-
-               o add clause to special_case_tokens that does the check
-                 and returns TIME if the conditions are met
-               o take check for `TIME' out of CHECK_FOR_RESERVED_WORD, but
-                 leave it in the word_token_alist so that `type' still
-                 reports it as a `keyword'
-               o new function, time_command_acceptable(), encapsulates the
-                 necessary conditions for `time' to be returned as a 
-                 reserved word
-
-[bash-2.02-alpha1 frozen]
-
-                                1/6/1998
-                                --------
-lib/glob/fnmatch.c
-       - fix define for isgraph so that it does not return success for space
-       - fix strcompare() so that the call to strcoll is surrounded by
-         #ifdef HAVE_STRCOLL
-
-                                   1/7
-                                   ---
-lib/glob/fnmatch.c
-       - the `test' argument to brackmatch() should be of type `unsigned char'
-
-                                  1/11
-                                  ----
-execute_cmd.c
-       - make sure execute_arith_command sets this_command_name to `(('
-
-                                  1/29
-                                  ----
-parse.y
-       - make sure the code for pushing and popping strings is compiled in
-         if either ALIAS or DPAREN_ARITHMETIC is defined, because the ((
-         code uses push_string in the case of a nested subshell
-       - fix cond_skip_newlines so it resets the prompt to $PS2 while
-         parsing an unfinished conditional command
-
-dispose_cmd.c, copy_cmd.c, builtins/hash.def
-       - fixes to not use `word' as a variable name or the name of a
-         function parameter to get around stuff in the Cray Unix include
-         files
-
-builtins/printf.def
-       - return failure immediately if an illegal format character is
-         encountered
-
-redir.c
-       - make the code that creates here-documents behave better if the
-         file it's trying to create already exists for some reason
-
-lib/readline/complete.c
-       - changed print_filename to return the number of characters it
-         outputs; changed callers to use that value.  This makes columns
-         line up when printing completion listings with filenames
-         containing control characters
-
-doc/bash.{1,html}
-       - fixed a typo in the quote removal section
-
-                                  1/30
-                                  ----
-parse.y
-       - free_string_list() needs to check that t->expander is not NULL
-         before trying to dereference it
-       - reset_parser() doesn't need to set pushed_string_list to NULL
-         after calling free_string_list(), since free_string_list does it
-
-configure.in,cross-build/cygwin32.cache
-       - fixes from Geoff Noer for better cygwin32 cross-compilation
-
-tests/printf.{tests,right}
-       - removed test for integer overflow, since error messages differ
-         across systems
-
-pathexp.c
-       - fixed a problem with unquoted_glob_pattern_p that made things
-         like `x+*' not expand correctly
-
-lib/glob/glob.c
-       - fixed a problem with glob_pattern_p that made things like `x+*'
-         not expand correctly
-
-builtins/cd.def
-       - if `cd -P' is executed, or `set -o physical' has been executed,
-         the value of $PWD after a successful cd will not contain any
-         symlinks, regardless of whether or not the shell is in posix mode
-
-                                   2/3
-                                   ---
-lib/readline/shell.c
-       - include <string.h> or <strings.h> as appropriate
-
-                                   2/4
-                                   ---
-builtins/common.c
-       - take out the code in backslash_quote() that looks for tildes to
-         quote, for the time being
-       - if getcwd() fails, get_working_directory now prints the error
-         message corresponding to errno in addition to the rest of the
-         information -- TENTATIVE CHANGE
-
-lib/sh/getcwd.c
-       - fix from Paul Smith to make getcwd() behave better in the presence
-         of lstat(2) failures
-
-stringlib.c
-       - when copying the replacement string into the output string being
-         constructed, strsub() needs to make sure enough space for the
-         replacement string is allocated, not the length of the pattern
-         (use REPLEN, not PATLEN)
-
-mailcheck.c
-       - make sure make_default_mailpath() has a valid current_user struct
-         before trying to construct the default mailpath
-
-                                   2/5
-                                   ---
-execute_cmd.c
-       - execute_builtin needs to call run_unwind_frame if the builtin is
-         `source' or `eval' and we're not in a subshell rather than just
-         calling dispose_builtin_env, because not all invocations copy 
-         the temporary_env to builtin_env, and nested calls to `.' require
-         that the temporary env given to the first persist until that first
-         call to `.' finishes
-
-parse.y
-       - fix to history_delimiting_chars so that function definitions like
-
-               function xyz
-               {
-                       echo a
-               }
-
-         are saved to the history correctly when command_oriented_history
-         is enabled, but literal_history is not
-
-bashhist.c
-       - when calling internal_error from pre_process_line, use "%s" as
-         the format with history_value as the argument to avoid the
-         problem with the failed history event containing printf escape
-         sequences
-
-                                  2/13
-                                  ----
-shell.c
-       - if shell_initialized is non-zero, don't line-buffer stderr and
-         stdout in shell_initialize on SunOS5 -- see if this fixes the
-         crashing problems for scripts without a leading `#! /bin/sh'
-
-                                  2/17
-                                  ----
-bashline.c
-       - added diffs to _ignore_completion_names from Andreas Schwab to
-         complete names that would otherwise be ignored with FIGNORE if
-         they are the only possible completions.  Define NO_FORCE_FIGNORE
-         if you want this; it is not defined by default
-
-                                  2/19
-                                  ----
-support/bashbug.sh
-       - changed the bug-bash address to bug-bash@gnu.org
-
-examples/loadables/Makefile.in
-       - converted from `Makefile' with some boilerplate configure variables
-         to find the source and build directories -- still requires some
-         hand-editing to get the right CFLAGS and LDFLAGS for shared object
-         creation
-
-Makefile.in
-       - create examples/loadables/Makefile with `make makefiles'
-
-configure.in
-       - create examples/loadables directory so `make makefiles' can write a
-         makefile there
-
-general.c
-       - make sure initialize_groups_array always sets things up so that
-         ${GROUPS[0]} is the user's primary group (current_user.gid)
-
-                                  2/20
-                                  ----
-lib/readline/parens.c
-       - change the time delay when showing matching parens from 1.5 sec to
-         0.5 sec
-
-                                  2/23
-                                  ----
-shell.c
-       - isnetconn() should call getpeername(fd,...) instead of using 0
-         (though fileno(stdin) should always be 0)
-
-support/config.guess
-       - updates from master FSF copy
-
-                                  2/24
-                                  ----
-support/man2html.c
-       - modified version of man2html to convert bash.1 into bash.html
-
-support/Makefile.in
-       - simple Makefile to create man2html
-
-configure.in
-       - make sure support/Makefile is created
-
-Makefile.in
-       - make sure support/Makefile is created and cleaned
-
-doc/Makefile.in
-       - changes to suffix rules to say how to make .html from .1 
-       - `bash.html' is now a makefile target, created by man2html from
-         bash.1 rather than being hand-modified
-
-lib/sh/itos.c, general.c
-       - new file, itos() from general.c.  This is here because the
-         implementation of strerror in lib/sh/strerror.c uses itos()
-
-Makefile.in, lib/sh/Makefile.in
-       - changes to add itos.c in libsh.a
-
-externs.h, general.h
-       - moved extern declaration of itos() from general.h to externs.h
-
-aclocal.m4
-       - changes to BASH_LARGE_FILE_SUPPORT for the LFS64_* variables in
-         Solaris 2.6
-
-Makefile.in
-       - make sure configure sets CPPFLAGS in this file
-
-                                  2/27
-                                  ----
-
-builtins/command.def
-       - make sure get_standard_path returns the value of
-         STANDARD_UTILS_PATH if _CS_PATH is defined, but confstr(3)
-         returns 0, indicating that _CS_PATH does not have a defined
-         value
-
-bashhist.c
-       - fixed bash_history_inhibit_expansion() so that extended globbing
-         expressions like *.!(c) are not history expanded if extended_glob
-         is non-zero (shopt -s extglob has been executed)
-
-                                   3/2
-                                   ---
-Makefile.in
-       - changed release status to `beta1'
-
-[bash-2.02-beta1 frozen]
-
-                                  3/17
-                                  ----
-lib/readline/vi_mode.c
-       - make sure _rl_vi_save_insert() gets a non-null UNDO_LIST pointer
-         before trying to do anything with it
-
-jobs.c
-       - add a call to internal_warning from wait_for_job if the job is
-         stopped
-       - changed notify_of_job_status to not report pipelines exiting due to
-         SIGPIPE in non-interactive shells if the shell is compiled with
-         -DDONT_REPORT_SIGPIPE
-
-builtins/psize.sh
-       - some fixes to try to avoid /tmp file races and surreptitious
-         substitutions
-
-version.c
-       - changed the extended version info to show 1998 as the copyright year
-
-parse.y
-       - fixes from Andreas Schwab <schwab@LS5.informatik.uni-dortmund.de>
-         for compilation errors when the shell is configured --disable-alias
-         but with dparen arithmetic enabled
-
-eval.c
-       - fixes from Andreas Schwab <schwab@LS5.informatik.uni-dortmund.de> to
-         make sure the input stream is popped correctly when performing an
-         array assignment in the command argument to `bash -c', e.g.,
-         `bash -c 'A=()''
-
-builtins/kill.def
-       - make `kill' with no arguments print a usage message and return a
-         failure status
-
-alias.c
-       - fix so that rd_token doesn't dump core when trying to do alias
-         expansion on a line containing an unclosed single quote (fix from
-         Vasco Pedro <vp@di.fct.unl.pt>)
-
-builtins/cd.def
-       - fix so that using a non-empty directory from CDPATH to construct
-         the name of the directory to change to results in an absolute
-         pathname of the new current working directory being displayed,
-         as POSIX.2 specifies
-
-support/bashbug.sh
-       - a couple of small fixes to minimize /tmp file races -- the script
-         is still raceable, the window is just smaller
-
-                                  3/24
-                                  ----
-variables.c
-       - make sure assign_in_env passes a malloc'd string to
-         expand_string_unsplit, because some of the error code assumes that
-         it is malloc'd and frees it (bug reported by Marko.Makela@HUT.FI)
-
-                                  3/25
-                                  ----
-doc/bashref.texi
-       - changed the email addresses to use the @email texinfo tag
-
-trap.c
-       - call reset_parser from the exit trap code before calling
-         parse_and_execute, so reserved words are parsed correctly
-
-subst.c
-       - make sure parameter_brace_patsub expands the pattern string as if
-         the expression were not in double quotes, even if the entire
-         expansion is enclosed in double quotes, so that quote removal
-         on embedded double quotes is performed correctly (bug report from
-         schwab@issan.informatik.uni-dortmund.de)
-
-                                  3/27
-                                  ----
-support/config.guess
-       - changes to allow Power PCs running Apple's Rhapsody to configure
-
-                                  3/31
-                                  ----
-
-Makefile.in
-       - changed release status to `beta2'
-
-[bash-2.02-beta2 frozen]
-
-                                   4/6
-                                   ---
-subst.c
-       - make sure command_substitute does not try to set the terminal's
-         process group to a background job
-
-[bash-2.02 frozen]
-
-                                  4/18
-                                  ----
-[bash-2.02 released]
-
-                                  4/20
-                                  ----
-bashline.c
-       - make sure that rl_defun is not called for
-         history-and-alias-expand-line unless both ALIAS and BANG_HISTORY
-         are defined
-         [in bash-2.02.1]
-
-                                  4/22
-                                  ----
-make_cmd.c
-       - make sure that make_here_document allocates enough space for the
-         first line of the here document, by using the line length +2
-         (instead of 1000, which is what the old code did, and breaks if
-         the first line of the here document is enough longer than 1000
-         characters to cause other memory to be scribbled on)
-         [in bash-2.02.1]
-
-builtins/cd.def
-       - when in posix mode, a value of "" for CDPATH should be treated the
-         same as the current directory, not result in an error
-         [in bash-2.02.1]
-
-lib/malloc/malloc.c
-       - change the mh_align member of `union mhead' to be of type double
-         rather than a pointer, so that malloc will return (hopefully)
-         8-byte aligned memory
-         [in bash-2.02.1]
-
-                                  4/23
-                                  ----
-aclocal.m4
-       - add a new macro to check whether or not off_t is 64 bits 
-
-                                  4/24
-                                  ----
-configure.in
-       - fixed a typo so the bash malloc is not compiled in on mips-sgi-irix6
-
-lib/readline/display.c
-       - fix for readline redisplay if the prompt string is longer than the
-         screen width and includes invisible characters
-         [in bash-2.02.1]
-
-jobs.c
-       - make_child should not set the terminal's process group to
-         pipeline_pgrp if pipeline_pgrp == shell_pgrp (indicating that we
-         are forking a child for a command substitution)
-         [in bash-2.02.1]
-
-subst.c
-       - in execute_simple_command, in the child forked if there is a pipe
-         or the command is asynchronous, set subshell_environment to
-         SUBSHELL_ASYNC only if the command is asynchronous, SUBSHELL_FORK
-         if there is a pipe in or out
-         [in bash-2.02.1]
-
-                                  4/27
-                                  ----
-support/texi2dvi
-       - upgraded to version 0.8 (from 0.5)
-
-support/texi2html
-       - upgraded to version 1.52 (from 1.51)
-
-support/config.sub
-       - config.sub now recognizes all the permutations of the system name
-         that config.guess produces for alphas
-         [in bash-2.02.1]
-
-aclocal.m4
-       - changed BASH_TYPE_INT32_T, BASH_TYPE_U_INT32_T, and
-         BASH_TYPE_PTRDIFF_T to avoid compiling a program; instead use
-         the values determined by the AC_CHECK_SIZEOF tests to determine
-         the default values to supply to AC_CHECK_TYPE
-
-configure.in
-       - don't call AC_CHECK_TYPE({int32_t,u_int32_t,ptrdiff_t}) from
-         configure.in; use the updated BASH_TYPE macros instead
-
-builtins/exec.def
-       - if shell_execve fails, set ARGS to null because the realloc() call
-         by shell_execve may have caused it to be reallocated and freed --
-         we don't want to free the memory twice
-
-lib/glob/fnmatch.c
-       - fixes from ache@nagual.pp.ru to make fnmatch work for eight-bit
-         characters when `isupper' and `islower' are used -- they were
-         restricted to ASCII characters before, probably to work around
-         some ancient, broken C libraries in which is{low,upp}er are valid
-         only for ASCII characters and return bogus values otherwise
-         [in bash-2.02.1]
-
-                                  4/29
-                                  ----
-builtins/cd.def
-       - fixed a problem with the shell displaying the old working directory
-         instead of the new one after changing to a directory found via
-         $CDPATH when in physical mode (set -o physical)
-         [in bash-2.02.1]
-
-make_cmd.c
-       - make make_cond_command initialize the line number from the cond_node
-         that's passed as an argument (not that it's used right now)
-
-copy_cmd.c
-       - make sure that copy_cond_command copies the type of the cond command,
-         since execute_cond_command uses that to decide what kind of test
-         to perform
-         [in bash-2.02.1]
-
-builtins/printf.def
-       - make sure the for loop that processes the format string actually
-         consumes arguments; otherwise process it only once to avoid
-         infinite loops (e.g., `printf " " abc def ghi')
-         [in bash-2.02.1]
-       - if the format string is empty after preprocessing by ansicstr,
-         return immediately
-         [in bash-2.02.1]
-
-tests/run-printf
-       - use `diff -a' so the presence of a non-printing character in the
-         output doesn't confuse diff into thinking the files are binary
-         (test whether or not `diff' supports `-a' first)
-
-Makefile.in
-       - keep $(LOCAL_LIBS) from being specified twice
-
-                                  4/30
-                                  ----
-support/shobj-conf
-       - a script to generate variables to do shared object configuration
-         for the loadable builtin stuff
-
-configure.in
-       - added a section for shared object configuration using an `eval'
-         of the output of shobj-conf and substituting the generated values
-         with AC_SUBST
-
-examples/loadables/Makefile.in
-       - the system-specific shared object configuration variables are now
-         substituted by configure
-
-                                   5/4
-                                   ---
-builtins/ulimit.def
-       - some changes for HPUX 9.x's peculiar handling of RLIMIT_FILESIZE
-       - changed the limit retrieval functions to return an error code
-         and the value in a reference argument to avoid use of RLIM_INVALID
-
-general.c
-       - new function, get_group_array(), which returns an array of
-         gids
-
-examples/loadables/{id,printenv,sync,uname,whoami,push}.c
-       - new loadable builtins
-
-variables.c
-       - moved code that initializes $PPID into a new function, set_ppid()
-
-variables.h
-       - extern declaration for set_ppid()
-
-                                   5/6
-                                   ---
-subst.c
-       - make sure that the `"' (double-quoted string) case of
-         expand_word_internal calls string_list_dollar_at if we've expanded
-         a double-quoted $@ so correct splitting on $IFS is done when
-         the expansion is complete.  We can't simply call string_list
-         because that forces a space separator, and $IFS may not contain
-         a space
-         [in bash-2.02.1]
-
-                                   5/7
-                                   ---
-builtins/umask.def
-       - broke the code that parses a symbolic mode out of symbolic_umask
-         into a separate function that takes a symbolic mode and an initial
-         set of bits to modify
-
-examples/loadables/mkdir.c
-       - new loadable builtin
-
-                                  5/11
-                                  ----
-builtins/printf.def
-       - use the format string length provided by ansicstr() to process the
-         format string, rather than testing for nullness, to handle NUL
-         bytes in the expanded format string
-
-builtins/pushd.def
-       - changes so it can be built as both a regular builtin and a loadable
-         builtin from the same source
-
-examples/loadables/Makefile.in
-       - changes to build pushd.c from ${topdir}/builtins/pushd.def and then
-         compile it with the correct flags to make it a loadable builtin,
-         even if PUSHD_AND_POPD is not defined in config.h
-
-                                  5/12
-                                  ----
-lib/readline/complete.c
-       - use rl_completer_quote_characters instead of #ifdef SHELL/#endif
-         code in make_quoted_replacement.  This means complete.c no longer
-         has any #ifdef SHELL code
-
-                                  5/13
-                                  ----
-builtins/Makefile.in
-       - `make clean' should remove mkbuiltins.o
-
-Makefile.in
-       - all of the various `clean' targets need to descend into lib/sh
-         and run the appropriate target there
-
-builtins/type.def
-       - changed to use the builtin getopt.  The old long options are
-         handled by prescanning the argument list looking for the long
-         options, processing them, and taking them out of the list before
-         passing it to internal_getopt()
-
-lib/readline/signals.c
-       - removed #ifdef SHELL code -- job control signals and SIGTERM are
-         always set in rl_set_signals, but are set to SIG_IGN if the old
-         handler was SIG_IGN (as bash sets it)
-       - new function rl_maybe_set_sighandler, which sets the signal
-         disposition back to SIG_IGN if the old handler was SIG_IGN
-       - removed #ifdef HANDLE_JOB_SIGNALS and #ifdef HANDLE_SIGTERM code
-
-lib/readline/rltty.c
-       - removed #ifdef SHELL code -- set_winsize is always called
-         to force the application to stop if it's not in the foreground
-         before getting the tty attributes
-
-                                  5/14
-                                  ----
-lib/readline/signals.c
-       - readline now catches SIGQUIT and cleans up the tty before resending
-         it to its container application (unless the calling application has
-         set the disposition of SIGQUIT to be SIG_IGN)
-       - rl_handle_sigwinch is now called rl_sigwinch_handler
-       - rl_sigwinch_handler now calls rl_resize_terminal to fetch the
-         screen size after a SIGWINCH
-       - the sighandler_cxt struct for non-posix systems now includes
-         sa_flags and sa_mask variables, for future use
-       - new variable, rl_catch_signals, indicating that readline should
-         install its own signal handlers for SIGINT, SIGTERM, SIGQUIT,
-         SIGALRM, SIGTSTP, SIGTTIN, and SIGTTOU
-       - new variable, rl_catch_sigwinch, indicating that readline should
-         install its own SIGWINCH handler, which will chain to a calling
-         application's SIGWINCH handler
-       - new function, rl_free_line_state(), to free up variable state
-         associated with the current line after receiving a signal
-       - new function, rl_cleanup_after_signal(), to clean up the display
-         and terminal state after receiving a signal
-       - new function, rl_reset_after_signal(), to reinitialize the
-         terminal state after a signal handler returns and readline
-         continues
-       - rl_set_signals and rl_clear_signals now look at the values of
-         rl_catch_signals and rl_catch_sigwinch
-
-lib/readline/terminal.c
-       - new function rl_resize_terminal (), to reset readline's idea of
-         the screen size after a SIGWINCH
-
-lib/readline/readline.h
-       - extern declarations for rl_resize_terminal(), rl_free_line_state(),
-         rl_cleanup_after_signal(), rl_reset_after_signal()
-       - extern declarations for rl_catch_signals and rl_catch_sigwinch
-
-variables.c
-       - new functions, get_env_value(char *) and get_home_dir(void) to
-         satisfy references from the tilde and readline libraries when
-         they are compiled as part of bash
-
-lib/tilde/tilde.c
-       - rely on extern declarations of get_env_value and get_home_dir;
-         there is no more #ifdef SHELL code
-
-lib/readline/shell.c
-       - implementation of get_home_dir that uses getpwuid() to satisfy
-         references from tilde.c when not compiled as part of bash
-       - removed savestring()
-       - removed #ifdef SHELL/#endif pair -- all of these functions will be
-         resolved from bash when readline is linked into bash
-
-lib/readline/savestring.c
-       - new file, with function definition for savestring() for backwards
-         compatibility
-
-Makefile.in, _distribution
-       - bumped things up to bash-2.03-alpha
-
-                                  5/15
-                                  ----
-lib/readline/rlconf.h
-       - removed #ifdef SHELL/#endif pair, so the callback stuff will be
-         compiled into libreadline, but never linked into bash (since it's
-         not referenced)
-
-configure.in
-       - added new `--with-installed-readline' option to allow readline to
-         be linked with an already-installed version -- this will probably
-         not work with versions of readline prior to 2.3 (libreadline.so.4)
-         [THIS IS STILL UNDOCUMENTED]
-
-Makefile.in
-       - changed necessary variables to allow the `--with-installed-readline'
-         option to work; shared and static libraries are supported
-
-                                  5/18
-                                  ----
-lib/readline/display.c
-       - _rl_save_prompt is now rl_save_prompt; _rl_restore_prompt is now
-         rl_restore_prompt
-
-lib/readline/readline.h
-       - extern declarations for rl_save_prompt and rl_restore_prompt
-
-lib/readline/{search,isearch,readline,display}.c
-       - converted calls to _rl_{save,restore}_prompt () to use new public
-         versions
-
-lib/readline/doc/rltech.texinfo
-       - documented new public functions rl_{save,restore}_prompt
-
-                                  5/19
-                                  ----
-lib/readline/readline.c
-       - new hook function variable, rl_pre_input_hook.  If non-zero, it's
-         called from readline_internal_setup just before it returns and
-         readline starts reading input
-
-lib/readline/readline.h
-       - extern declaration for rl_pre_input_hook
-
-lib/readline/doc/rltech.texinfo
-       - documented new variable rl_pre_input_hook
-
-                                  5/20
-                                  ----
-lib/readline/complete.c
-       - new hook function variable, rl_completion_display_matches_hook.
-         If non-null, this function is called when readline would normally
-         display the list of completion matches
-
-lib/readline/readline.h
-       - extern declaration for rl_completion_display_matches_hook
-
-lib/readline/doc/rltech.texinfo
-       - documented rl_completion_display_matches_hook
-
-lib/readline/readline.c
-       - if RL_LIBRARY_VERSION is not defined, define it to 4.0 to match
-         the version number of the shared libraries
-
-lib/readline/doc/{hist,rlman}.texinfo
-       - changed the version and edition to 4.0 to match the library version
-
-support/config.guess
-       - added case clause for matching UnixWare 7 from SCO (SVR5) -- further
-         work may be needed 
-         [These fixes were in a usenet posting from hops@sco.com]
-
-support/config.sub
-       - added case clauses to recognize various aliases for SCO Open Server
-         and Open Desktop
-         [in bash-2.02.1]
-       - broke the code that canonicalizes unixware into unixware2 and
-         unixware7 clauses (multiple places)
-         [in bash-2.02.1]
-       - added clause to recognize `sysv5' for SVR5
-         [These fixes were in a usenet posting from hops@sco.com]
-         [in bash-2.02.1]
-
-configure.in
-       - add `-b elf' to LOCAL_CFLAGS for sco3.2v5* to allow dynamic linking
-         (and loadable builtins)
-       - add AC_DEFINE(SVR5) on SVR5 (unixware 7)
-
-config.h.in
-       - add #undef SVR5, set by configure
-
-                                  5/21
-                                  ----
-shell.c
-       - line-buffer stdout and stderr in shell_initialize only if
-         shell_initialized is 0 on all systems, not just SunOS 5
-         [in bash-2.02.1]
-
-support/rlvers.sh
-       - script to print out the version number of any installed
-         readline library
-
-configure.in
-       - only allow --with-installed-readline if the version of the
-         installed readline library is 4.0 or greater
-
-                                  5/22
-                                  ----
-lib/readline/complete.c
-       - broke the code that actually displays a list of completion
-         matches on the output stream into a separate public function,
-         rl_display_match_list, so it can be called from the hook
-         function rl_completion_display_matches_hook.
-
-lib/readline/readline.h
-       - new extern declaration for rl_display_match_list
-
-lib/readline/rltech.texinfo
-       - documented rl_display_match_list
-
-configure.in,Makefile.in
-       - --enable-static-link now creates a STATIC_LD variable in Makefile
-         rather than adding to LDFLAGS directly.  LDFLAGS now includes
-         $(STATIC_LD)
-
-                                   6/2
-                                   ---
-builtins/cd.def
-       - OLDPWD is now auto-exported
-       - broke the code out of bindpwd() that updated the value of PWD in
-         the export environment in-place and made it general, so it can
-         be used for OLDPWD, too (this should be made *more* general, and
-         moved to variables.c)
-
-                                   6/3
-                                   ---
-variables.c
-       - moved builtins/cd.def:export_pwd_var to here, renamed it to
-         update_export_env_inplace
-       - converted put_command_name_into_env to just call
-         update_export_env_inplace
-       - made dummy variable for OLDPWD, marked as invisible and exported,
-         in initialize_shell_variables
-
-variables.h
-       - extern declaration for update_export_env_inplace
-
-builtins/cd.def
-       - changed calls to export_pwd_var to update_export_env_inplace
-
-lib/readline/bind.c
-       - added missing return in rl_unbind_function_in_map
-       - changed _rl_read_file to check whether or not `read' returns
-         < 0 rather than < file_size
-       - _rl_read_init_file needs to free `openname' after calling
-         _rl_read_file, since it's not used again
-
-lib/readline/callback.c
-       - bogus extern declaration for `readline_internal_startup', should
-         be readline_internal_setup
-
-lib/readline/histfile.c
-       - read_history_range now checks whether read(2) returns < 0 rather
-         than checking the return value against the file size
-
-lib/readline/parens.c
-       - whoops -- timer.tv_usec is *micro* seconds, not milliseconds
-
-lib/readline/readline.c
-       - initialize `eof' to 1 in readline_internal_charloop
-
-                                   6/5
-                                   ---
-configure.in
-       - if we're configuring with an installed version of readline, set and
-         have configure substitute RL_INCLUDE to `-I$(includedir)', so the
-         build process uses the installed readline include files as well as
-         the libraries
-
-Makefile.in, builtins/Makefile.in
-       - add @RL_INCLUDE@ in the appropriate places, substituted by configure
-
-lib/readline/{history,readline}.h
-       - add `extern "C"' wrapper if `__cplusplus' is defined
-
-lib/glob/fnmatch.h
-       - include stdc.h
-       - add prototypes to extern declaration for fnmatch()
-
-lib/readline/rlstdc.h
-       - link to ../posixheaders/stdc.h (in readline lib with different name
-         for benefit of standalone readline library installation)
-
-lib/readline/{history,keymaps}.h
-       - include rlstdc.h
-       - add prototypes to all of the extern function declarations
-
-lib/readline/history.h
-       - the `data' member of a HIST_ENTRY is now a histdata_t, which is
-         either a void * (ansi c) or a char * (k&r c)
-
-lib/readline/readline.c
-       - changed calls to replace_history_entry to pass a histdata_t as the
-         third parameter
-
-                                   6/8
-                                   ---
-copy_cmd.c
-       - make sure that copy_cond_command doesn't blindly try to copy
-         com->op, since that will be null for AND and OR nodes, at least
-         [in bash-2.02.1]
-
-lib/readline/vi_mode.c
-       - added missing second argument to rl_vi_[fbe][Ww]ord(), since
-         they're used as pseudo-bindable commands (they appear in the
-         default funmap) as well as utility functions
-
-lib/readline/readline.h
-       - include rlstdc.h
-       - added prototypes for functions from vi_mode.c, util.c, terminal.c,
-         search.c, util.c, undo.c, readline.c, parens.c, macro.c, kill.c,
-         keymaps.c, isearch.c, input.c, funmap.c, display.c, complete.c,
-         callback.c, 
-       - added extern declarations for functions from rltty.c
-
-lib/readline/{readline,util}.c
-       - rl_refresh_line now takes the standard two arguments for bindable
-         commands; changed callers
-
-lib/readline/*.c
-       - small cleanups for incorrect arguments, etc. uncovered by use of
-         function prototypes
-
-bashline.c
-       - small cleanups for incorrect arguments, etc. uncovered by use of
-         function prototypes
-
-                                  6/11
-                                  ----
-jobs.c
-       - cast result of strsignal() to (char *) for the benefit of broken
-         Cray UNICOS machines
-         [in bash-2.02.1]
-
-configure.in,aclocal.m4
-       - new test, BASH_TYPE_BITS64_T, used to find out what basic type is
-         64 bits long; defaults to `double'
-       - call AC_CHECK_SIZEOF(double)
-
-config.h.in
-       - #define for bits64_t, undef by default
-
-                                  6/24
-                                  ----
-aclocal.m4
-       - changed BASH_TYPE_BITS64_T so that it checks the size of a char *
-         first, before trying sizeof(double)
-
-lib/readline/doc/rluser.texinfo,doc/{bash.1,readline.3}
-       - changed default binding for tilde-expand to M-&, since bash
-         overrides M-~ to force username completion
-
-bashline.c
-       - fixed an off-by-one error in hostnames_matching that exhibited
-         itself when an exact multiple of 16 hostnames matched (fix
-         from <davidg@nikhef.nl>)
-         [in bash-2.02.1]
-
-                                  6/30
-                                  ----
-lib/readline/readline.c
-       - the maximum numeric argument is now 1000000
-
-bashline.c
-       - fixed a bug in bash_directory_completion_hook that caused memory
-         to be freed twice if a directory name containing an unset
-         variable was completed and `set -u' had been set
-
-configure.in
-       - on LynxOS, add a -DRECYCLES_PIDS to LOCAL_CFLAGS
-
-execute_cmd.c
-       - make sure that the changes to make the shell fork early when
-         run in the background do not cause commands such as `%1 &'
-         to fork
-         [in bash-2.02.1]
-       - if RECYCLES_PIDS is defined, execute_command_internal sets
-         last_made_pid to NO_PID after waiting for a foreground process,
-         if the return status is 0 (fix from plai@Lynx.COM (Paul Lai))
-
-lib/readline/kill.c
-       - fixes from Andreas Schwab to rl_yank_last_arg that make it
-         behave better
-
-lib/readline/input.c
-       - fixes from Donald Beaudry <donb@sgi.com> to make the input buffering
-         and rl_stuff_char work right when the input buffer is nearly full
-         (probably not a problem with keyboard input, but maybe a problem
-         with programmers attempting to use rl_stuff_char to preload the
-         input buffer)
-
-                                  7/14
-                                  ----
-parse.y
-       - fix to decode_prompt_string so that the \$ expansion quotes the `$'
-         so it won't be processed by subsequent parameter expansion
-       - change read_token_word so a $$ appearing in a token is recognized
-         and parsed immediately, so a single or double quote after the
-         second `$' doesn't cause ANSI-C expansion or locale translation
-         (bug report from haertel@ichips.intel.com)
-
-                                  7/16
-                                  ----
-lib/readline/display.c
-       - fixed a bug that caused core dumps in xrealloc if the prompt was
-         longer than 1024 characters
-
-                                  7/21
-                                  ----
-builtins/mkbuiltins.c
-       - if the number of characters read from the .def file is less than
-         the file size reported by `stat', and the read completed without
-         errors, reset the file size to avoid writing garbage at the end
-         of the generated .c file (needed on WIN32 systems, doesn't hurt
-         on Unix)
-
-                                  7/22
-                                  ----
-CWRU/empty-for-wordlist
-       - patch from Brian Fox for parse.y to allow bash to accept an empty
-         `wordlist' after the `in' keyword in a for statement
-
-                                  7/23
-                                  ----
-doc/bash.1
-       - corrected the synopsis of the `for' and `select' statements to
-         indicate that the semicolon (or newline) after the optional
-         `in words' is required
-
-[bash-2.02.1 released]
-
-                                  7/28
-                                  ----
-lib/readline/display.c
-       - make sure visible_length is initialized to 0 in rl_expand_prompt.
-         Fix from Gerhard Niklasch <nikl@mathematik.tu-muenchen.de>.
-
-lib/glob/glob.c
-       - make sure that quotes are removed from the filename being globbed
-         in glob_vector() before calling the GLOB_TESTNAME macro if there
-         are no globbing characters in the pattern
-
-doc/Makefile.in
-       - make sure that builtins.1 is looked for in $(srcdir) when running
-         `make install' (it's still commented out, though)
-
-                                  7/30
-                                  ----
-config.h.bot
-       - if PROMPT_STRING_DECODE is not defined, define PPROMPT (the primary
-         prompt string) as "$ "
-
-variables.c
-       - if PROMPT_STRING_DECODE is not defined, and current_user.euid == 0,
-         PS1 defaults to "# ", otherwise it defaults to `primary_prompt'
-
-doc/bashbug.1
-       - fixed email address prep.ai.mit.edu -> gnu.org
-
-                                   8/3
-                                   ---
-support/shobj-conf
-       - add `solaris2' as a possible OS name, treated the same as sunos5
-
-                                   8/4
-                                   ---
-shell.c
-       - changed maybe_make_restricted() so that $ENV and $BASH_ENV are
-         read-only variables in a restricted shell
-
-doc/{bash.1,bashref.texi}
-       - added ENV and BASH_ENV to the list of readonly variables in
-         restricted mode
-
-parse.y
-       - added `do', `then', `else', `{', and `(' to the list of keywords
-         that may precede the `time' reserved word
-
-general.c
-       - added sanity checks to timeval_to_secs and clock_t_to_secs so
-         that if the fractional part is >= 1000, 1 is added to the
-         seconds and 1000 is subtracted from the fractional seconds
-
-                                   8/6
-                                   ---
-Makefile.in
-       - use $(CC_FOR_BUILD) to build mksignames
-
-configure.in
-       - changes to allow cross-building for BeOS as well as cygwin32
-
-cross-build/{beos-sig.h,x86-beos.cache}
-       - new files for cross-compiling for BeOS
-
-                                   8/7
-                                   ---
-Makefile.in
-       - changed rule for version.h to use && instead of if-then-else-fi to
-         make sure the recipe fails if mkversion.sh fails
-
-configure.in
-       - beos does not use the GNU malloc
-
-lib/sh/itos.c
-       - broke itos into inttostr(i, buf, len) and itos(i), which calls
-         inttostr and returns a newly-allocated string with the result
-
-support/mksignames.c
-       - define `SIGKILLTHR' if system include files define it
-
-externs.h
-       - extern declaration for inttostr(int, char *, int)
-
-                                  8/13
-                                  ----
-lib/sh/strtol.c
-       - include stdc.h before bashansi.h
-
-execute_cmd.c
-       - make sure that execute_cond_node treats `=' the same as `=='
-
-                                  8/25
-                                  ----
-variables.c, print_cmd.c
-       - changed some calls to itos to use inttostr instead
-
-cross-build/x86-beos.cache, {execute_cmd,general,shell,trap}.c
-       - some changes for BeOS (from fnf@ninemoons.com)
-
-lib/posixheaders/memalloc.h
-       - changes to handle case where we're using both gcc and the C
-         version of alloca(), or if we have alloca.h and we're using
-         the C version of alloca() (from fnf@ninemoons.com)
-
-lib/sh/oslib.c
-       - if bcopy or bzero are #defines, #undef them before defining
-         replacement functions
-
-support/config.guess
-       - recognize AmigaOS (from fnf@ninemoons.com)
-       - recognize BeOS running on various machines
-         (from fnf@ninemoons.com)
-
-support/config.sub
-       - change basic_machine definition for amiga; added amigaos
-         (from fnf@ninemoons.com)
-       - changed definitions for MIPS machines running Linux (from
-         fnf@ninemoons.com)
-       - recognize `beos' as a valid operating system
-         (from fnf@ninemoons.com)
-       - changed OS for *-cbm to `amigaos' rather than `amigados'
-         (from fnf@ninemoons.com)
-
-examples/functions/autoload.v3
-       - a new version, from Mark Kennedy <mtk@ny.ubs.com>
-
-lib/readline/readline.c
-       - new function, rl_delete_or_show_completions, like tcsh editing
-         function delete-char-or-list
-
-lib/readline/readline.h
-       - new extern declaration for rl_delete_or_show_completions
-
-lib/readline/funmap.c
-       - new bindable name `delete-char-or-list', like tcsh
-
-lib/readline/doc/rluser.texinfo, doc/{bash.1,readline.3}
-       - documented new delete-char-or-list command
-
-general.c
-       - fix full_pathname to keep it from generating things like
-         //foo when the current directory is /
-
-                                  8/27
-                                  ----
-builtins/fc.def
-       - fixed the help text for the -e option
-
-                                  8/28
-                                  ----
-support/shobj-conf
-       - added a clause for AIX 4.2 systems running gcc -- just the
-         standard gcc stuff for shared objects, but it has to come
-         before the other AIX 4.2 clause
-
-                                  8/31
-                                  ----
-shell.c
-       - some changes so that `set -e' is turned off while executing
-         the startup files
-
-                                   9/3
-                                   ---
-flags.c
-       - new variable, `restricted_shell', non-zero if the shell was
-         started in restricted mode
-
-flags.h
-       - extern declaration for restricted_shell
-
-shell.c
-       - new function, shell_is_restricted, returns 1 if the shell is
-         supposed to be restricted based on the basename of $0 or the
-         -r option
-       - set restricted_shell to the value returned by shell_is_restricted
-         before executing the startup files
-
-externs.h
-       - extern declaration for shell_is_restricted
-
-builtins/shopt.def
-       - new shopt variable, restricted_shell, indicates whether the shell
-         was restricted at startup -- useful in startup files
-
-doc/{bash.1,bashref.texi}
-       - documented new restricted_shell shopt option
-
-                                  9/15
-                                  ----
-lib/sh/rename.c
-       - new file, replacement for rename(2) if the OS doesn't provide it
-
-configure.in,config.h.in,Makefile.in,lib/sh/Makefile.in
-       - machinery for including rename.o in libsh.a
-
-nojobs.c
-       - make sure that set_tty_state returns a value
-
-builtins/mkbuiltins.c
-       - use a call to rename(2) instead of a link/unlink pair
-
-lib/glob/glob.c
-       - don't #define bcopy if bcopy is already defined
-
-lib/readline/histfile.c
-       - add a call to ftruncate for BeOS, which ignores the O_TRUNC flag
-         to open
-
-lib/readline/input.c
-       - make rl_getc loop if read returns -1/EINTR on BeOS
-
-configure.in
-       - set ARFLAGS and substitute it into the Makefiles
-
-{,builtins,lib/{glob,malloc,readline,sh,termcap,tilde}}/Makefile.in
-       - ARFLAGS is now substituted by configure
-       - use ARFLAGS in rules that create libraries using $(AR)
-
-builtins/printf.def
-       - fixed bug that caused a core dump when a modifier was supplied
-         in the format string without a conversion character (e.g. `%h')
-
-                                  9/17
-                                  ----
-lib/glob/glob.c
-       - if filenames starting with a dot don't have to be matched
-         explicitly (e.g., after a `shopt -s dotglob'), don't match
-         `.' or `..' in any case
-
-eval.c
-       - make sure that array assignments don't show up in the history list
-         (fix from Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>)
-
-lib/readline/complete.c
-       - fix to rl_menu_complete so it inserts a single completion properly
-         when a word matches only one filename
-
-                                  9/24
-                                  ----
-execute_cmd.c
-       - difftimeval should zero out the tv_usec field if the tv_sec field
-         is < 0
-       - addtimeval should check for tv_usec being == 1000000 and add one
-         to tv_sec if it is
-
-                                  9/25
-                                  ----
-subst.c
-       - fix to expand_word_internal to prevent non-whitespace IFS characters
-         from causing word splitting if they are not the results of an
-         expansion (not exactly right yet, but I think it's the result of a
-         problem with the ${...} end-brace-matching code in the parser)
-
-                                  9/28
-                                  ----
-parse.y
-       - new flag for parse_matched_pair -- P_FIRSTCLOSE -- which makes it not
-         count and match additional construct open characters
-       - change calls to parse_matched_pair when matching braces in
-         ${...} constructs (both unquoted and within double quotes) to
-         specify the P_FIRSTCLOSE flag to match POSIX.2 requirements
-
-subst.c
-       - changed fix from 9/25, now that the parser problem is fixed
-
-                                  9/30
-                                  ----
-variables.c
-       - change expansion of list of words between (...) in array assignments
-         to include pathname generation in assign_array_var_from_string
-
-doc/{bash.1,bashref.texi}
-       - clarified behavior of the shell at startup if running setuid, with
-         and without the -p option supplied
-
-                                  10/7
-                                  ----
-bashhist.c
-       - change default open(2) mode to 0600 instead of 0666 for `privacy
-         concerns'
-
-                                  10/13
-                                  -----
-lib/readline/display.c
-       - fixed a problem with displaying tabs after newlines, from
-         <qrczak@knm.org.pl>
-       - in update_line, if we are printing over existing material,
-         only call space_to_eol or _rl_clear_to_eol if lendiff is non-zero
-       - when moving the cursor in _rl_move_cursor_relative, only call
-         _rl_backspace if the current cursor position is strictly greater
-         than the desired cursor position
-
-                                  10/14
-                                  -----
-locale.c
-       - LC_ALL is no longer set automatically when LANG is assigned a value
-
-config.h.{top,bot}
-       - renamed to config-{top,bot}.h, respectively
-
-config.h.in
-       - include config-top.h and config-bot.h
-
-Makefile.in
-       - things now depend on config-top.h and config-bot.h
-
-subst.c
-       - minor changes to extract_dollar_brace_string and char_is_quoted to
-         allow things like "${PIP[TAB] to perform correct variable completion
-
-                                  10/15
-                                  -----
-builtins/Makefile.in
-       - add $(PROFILE_FLAGS) to the make recipe that creates `mkbuiltins',
-         so configuring with --enable-profiling works right
-
-                                  10/20
-                                  -----
-doc/bashref.texi
-       - documented the new --with-installed-readline option
-
-[bash-2.03-alpha1 frozen]
-
-                                  10/21
-                                  -----
-builtins/reserved.def
-       - fixed help text for { ... } to make it clear that a semicolon is
-         required before the closing brace
-
-                                  10/22
-                                  -----
-trap.c
-       - in decode_signal, don't bother calling strcasecmp if
-         signal_names[sig] is null or empty
-
-                                  11/2
-                                  ----
-configure.in
-       - make sure RL_LIBDIR and HIST_LIBDIR are assigned values even if
-         readline or history is configured out of the shell, so the -L
-         options have arguments in the link command
-
-test.c
-       - make test_syntax_error cause test to return a status > 1, to
-         conform to POSIX.2 4.62.8
-
-doc/readline.3
-       - make sure the SYNOPSIS section indicates that programmers should
-         include <stdio.h> before <readline.h>
-
-                                  11/9
-                                  ----
-Makefile.in
-       - install with explicit mode of 0755
-
-                                  11/10
-                                  -----
-builtins/test.def
-       - make sure that a missing `]' makes `[' exit with status 2, to
-         conform to POSIX.2 4.62.8
-
-command.h
-       - new word flag: W_NOGLOB, meaning to not perform globbing
-
-execute_cmd.c
-       - fix_assignment_statements now turns on the W_NOGLOB flag for
-         arguments to `assignment builtins' that have W_ASSIGNMENT set
-
-subst.c
-       - expand_word_internal needs to preserve the W_NOGLOB flag from
-         the word being expanded to the word being returned
-       - glob_expand_word_list does not call shell_glob_filename for a
-         word with W_NOGLOB set
-
-builtins/shopt.def
-       - print_shopt is now void
-
-configure.in
-       - machines running Rhapsody don't use the bash malloc
-       - pass host_vendor to the Makefiles with AC_SUBST
-
-support/config.guess
-       - Rhapsody is really rhapsody, not nextstep
-
-support/config.sub
-       - add rhapsody to the list of supported configurations
-
-Makefile.in
-       - pass CONF_HOSTTYPE, CONF_OSTYPE, and CONF_MACHTYPE as -D options
-         in SYSTEM_FLAGS, to indicate that they came from the configuration
-         process
-       - set VENDOR variable from host_vendor configuration variable
-       - pass CONF_VENDOR as part of SYSTEM_FLAGS
-
-variables.c
-       - define HOSTTYPE, OSTYPE, and MACHTYPE as CONF_HOSTTYPE, CONF_OSTYPE,
-         and CONF_MACHTYPE, respectively
-
-                                  11/11
-                                  -----
-doc/{bashref.texi,bash.1}
-       - updated description of `read' to clarify the -r option and its
-         effect on backslash escaping
-
-                                  11/13
-                                  -----
-examples/loadables/{ln,unlink}.c
-       - new loadable builtins
-
-                                  11/23
-                                  -----
-lib/glob/fnmatch.c
-       - some fixes to handle extended glob patterns immediately following
-         a `*'
-
-tests/extglob.tests
-       - updated with cases from bug report fixed today
-
-support/shobj-conf
-       - udpated stanza for aix 4.2 with gcc, based on information from
-         jik@cisco.com
-
-configure.in
-       - changes to add the correct linker options to allow dynamic linking
-         when using gcc on AIX 4.2, instead of insisting on the AIX C
-         compiler
-
-examples/misc/aliasconv.{bash,sh}
-       - changes to handle aliases with embedded single quotes
-
-                                  11/25
-                                  -----
-lib/readline/complete.c
-       - postprocess_matches should call compute_lcd_of_matches with an
-         argument of `t' instead of `text'
-       - postprocess_matches should never call ding(); leave that for the
-         callers
-       - postprocess_matches no longer needs `text' as the first argument
-       - rl_complete_internal needs to call ding() if postprocess_matches
-         returns 0, since postprocess_matches no longer does it
-       - rl_complete_internal can now free `text' immediately after calling
-         gen_completion_matches, since it's no longer used
-
-                                  11/30
-                                  -----
-print_cmd.c
-       - make sure redirections following compound commands have a space
-         separating them from the command
-
-                                  12/1
-                                  ----
-general.c
-       - changed canonicalize_pathname so that if the result path begins
-         with `//', it will be changed to `/' if and only if the original
-         path did not begin with `//' (there has to be a non-slash after
-         the leading `///' in the original path)
-
-                                  12/2
-                                  ----
-builtins/evalstring.c
-       - augment the test for turning on CMD_NO_FORK to make sure that
-         parse_and_execute_level == 1.  That takes care of things like
-
-               bash -c 'for f in 1 2 3; do eval "/bin/echo \"$f\"" ; done'
-
-         only printing one line of output
-
-                                  12/8
-                                  ----
-config-top.h
-       - add commented-out #define for NON_INTERACTIVE_LOGIN_SHELLS so
-         that users may, if they choose, make things like
-
-               #! /bin/bash --login
-
-         work in shell scripts
-
-                                  12/10
-                                  -----
-jobs.c
-       - changes to the way jobs are reaped when the shell is not
-         interactive:
-
-               o notify_of_job_status no longer marks dead jobs as
-                 notified if they did not exit due to a signal;
-               o changed mark_background_jobs_as_notified to take an
-                 argument `force':  if zero, we only mark enough
-                 dead jobs as notified to keep CHILD_MAX jobs in the
-                 jobs list, as POSIX.2 specifies.  If non-zero, mark
-                 all dead jobs as notified;
-               o wait_for_background_pids marks all dead jobs as
-                 notified when it has finished waiting for everything,
-                 since the only thing that calls it is the `wait' builtin;
-               o wait_for_single_pid marks a job as notified after it
-                 has completed, since the only things that call it are
-                 wait_for_background_pids and the `wait' builtin
-               o wait_for_job marks the job as notified after the last
-                 pid completes
-
-execute_cmd.c
-       - change execute_subshell_builtin_or_function to check
-         subshell_environment and pipe_out to decide whether or not to fork
-         if builtin == jobs_builtin, since the early-forking code added in
-         bash-2.02 means that the piping has probably already been done
-
-                                  12/15
-                                  -----
-parse.y
-       - changes to make avar=((...)) a syntax error instead of ignoring
-         the nested parens and treating it as an array assignment
-
-shell.c
-       - changed run_startup_files so that any shell, whether or not it is
-         interactive, will run the login shell startup files when given the
-         --login option.  This happens only when not in posix mode.
-
-builtins/enable.def
-       - changes to handle Tenon's MachTen, whose dlclose() does not return
-         a value
-
-lib/glob/fnmatch.c
-       - changed gmatch so that when it calls extmatch, it removes FNM_PERIOD
-         from the flags if it's not matching at the start of the string.
-         This fixes the problem of `@' and `+' extended-glob subpatterns
-         containing bracket expressions treating `.' specially when matching
-         a portion of the string starting with `.'
-
-config-top.h
-       - removed define for NON_INTERACTIVE_LOGIN_SHELLS, since it's no longer
-         necessary
-
-                                  12/17
-                                  -----
-lib/readline/complete.c
-       - change rl_complete_internal and rl_menu_complete to check
-         rl_filename_completion_desired to decide whether or not we're
-         completing filenames instead of checking whether the attempted
-         completion function is filename_completion_function.
-         filename_completion_function sets rl_filename_completion_desired,
-         so this shouldn't break anything -- just allow postprocessing of
-         matches for user-supplied filename completion functions that don't
-         call filename_completion_function
-
-lib/readline/display.c
-       - new function, _rl_erase_entire_line, which erases the entire line,
-         no matter where the cursor is, and puts the cursor at the beginning
-         of the (newly-empty) line
-
-lib/readline/readline.c
-       - new application-level variable, rl_erase_empty_line, which, if
-         non-zero, tells readline to erase the contents of the current line,
-         prompt and all, if the only character typed to an otherwise-blank
-         line is bound to rl_newline.  Requested by the Cygnus GDB folks.
-       - change to rl_newline to suppress the call to _rl_update_final if
-         rl_erase_empty_line is non-zero, and rl_point == rl_end == 0, since
-         _rl_update_final calls crlf()
-       - change to readline_internal_charloop to call _rl_erase_entire_line
-         if newline was the only thing typed on an otherwise-empty line
-
-lib/readline/readline.h
-       - extern declaration for rl_erase_empty_line
-
-lib/readline/doc/rltech.texinfo
-       - documented new rl_erase_empty_line variable
-
-                                  12/18
-                                  -----
-Makefile.in
-       - changed RELSTATUS to `beta1'
-
-[bash-2.03-beta1 frozen]
-
-                                  12/21
-                                  -----
-doc/{bash.1,bashref.texi}
-       - added description of `test -h'; equivalent to `test -L'
-
-                                  12/22
-                                  -----
-support/shobj-conf
-       - SHOBJ_LDFLAGS should be those options to ld which are common
-         between building dynamically loadable shared objects and shared
-         libraries
-       - added two new variables: SHOBJ_XLDFLAGS, which are ld options
-         specific to building dynamically loaded shared objects, and
-         SHLIB_LIBS, which are other libraries against which shared libraries
-         should be linked.  These are for the benefit of AIX 4.2; other
-         stanzas do not need to be changed.
-
-configure.in
-       - add call to AC_SUBST for SHOBJ_XLDFLAGS
-
-examples/loadables/Makefile.in
-       - SHOBJ_XLDFLAGS is now substituted by configure
-       - $(SHOBJ_LDFLAGS) -> $(SHOBJ_LDFLAGS) $(SHOBJ_XLDFLAGS) in all
-         recipes that build loadable builtins
-
-                                  12/29
-                                  -----
-support/config.{guess,sub}
-       - changes for NEC SX4 machines running SUPER-UX (?).  Info from
-         Nicholas Clark <nick@flirble.org>
-
-lib/readline/bind.c
-       - new bindable variable, `isearch-terminators', which is the list of
-         characters that will terminate an incremental search without
-         subsequently executing the character as a command
-
-lib/readline/isearch.c
-       - changes to incorporate the new isearch-terminators bindable variable;
-         uses new private readline variable _rl_isearch_terminators
-         (suggested by Brian Fox)
-
-doc/{bash.1,readline.3}, lib/readline/doc/rluser.texinfo
-       - documented new `isearch-terminators' settable variable
-
-lib/readline/complete.c
-       - new convenience function, free_match_list, called from
-         rl_complete_internal
-
-                                  12/30
-                                  -----
-aclocal.m4
-       - changed the calls to AC_MSG_ERROR in the cross-compiling sections
-         to AC_MSG_WARN, since AC_MSG_ERROR can cause configure to abort
-
-examples/functions/which
-       - new function, emulation of `which' as it appears in FreeBSD
-
-                                  12/31
-                                  -----
-lib/readline/readline.c
-       - new bindable function: rl_rubout_or_delete.  Does rl_rubout if
-         rl_point is at the end of the line, or rl_delete if not.  This
-         is intended to mimic the Motif/Netscape/GNOME behavior of the
-         DEL character, and can be bound to delete to get that behavior
-
-lib/readline/readline.h
-       - new extern declaration for rl_rubout_or_delete
-
-lib/readline/funmap.c
-       - bound the name `forward-backward-delete-char' to
-         rl_rubout_or_delete (currently not bound to any keys)
-
-lib/readline/doc/manvers.texinfo
-       - new file with readline manual version information, to mantain
-         consistent numbering between readline and history manuals
-
-lib/readline/doc/{rlman,hist}.texinfo
-       - @include manvers.texinfo for version information
-       - moved the @dircategory and and @direntry directives inside
-         the @ifinfo block
-       - changed copyrights to 1988-1999
-
-doc/Makefile.in, lib/readline/doc/Makefile.in
-       - texi2html is now called with -menu (to handle the texinfo menus)
-         and -monolithic (to include the table of contents in the generated
-         HTML file instead of putting it in a separate file
-       - changed recipes to remove references to TOC html files
-
-lib/glob/fnmatch.c
-       - include <string.h> or <strings.h> as appropriate for strchr()
-         declaration
-
-                                1/4/1999
-                                --------
-print_cmd.c
-       - don't print bare words when printing conditional expressions in
-         print_cond_node, use cprintf("%s", cond->op->word)
-
-subst.c
-       - in separate_out_assignments, if VARLIST is non-null on function
-         entry, free it up to clean up after a previous error longjmp
-
-                                   1/5
-                                   ---
-configure.in
-       - make sure the case clause that disables the bash malloc on alpha
-         machines catches things like `alphaev56' as well as `alpha'
-
-                                  1/12
-                                  ----
-lib/readline/histlib.h
-       - new error message code: NO_PREV_SUBST
-
-lib/readline/histexpand.c
-       - handle NO_PREV_SUBST with appropriate error message in hist_error
-       - in history_expand_internal, if the `s' or `&' case results in a
-         null or empty LHS, return NO_PREV_SUBST
-
-error.c
-       - new interface: command_error(func, code, e, flags); intended to
-         collect command-related errors in one place
-       - new interface: command_errstr(code); returns a string describing
-         command error CODE
-
-error.h
-       - extern declarations for command_error and command_errstr
-
-command.h
-       - possible values for CODE in calls to command_error and command_errstr
-
-{shell,print_cmd,make_cmd,execute_cmd,dispose_cmd,eval}.c ,builtins/evalstring.c
-       - changed some calls to programming_error to use command_error
-
-                                  1/13
-                                  ----
-configure.in
-       - if --enable-profiling is specified on a solaris2 machine, don't
-         turn on enable-static-link, since it's very hard to build a
-         static binary on solaris2 and gprof does not (apparently) require it
-
-builtins/getopts.def
-       - add calls to sh_getopt_restore_state so the state is restored each
-         time getopts is called.  This protects us against the behavior of
-         some mallocs, which causes `nextchar' to be set to garbage in
-         getopt.c when a function is called between calls to getopts
-
-                                  1/14
-                                  ----
-lib/readline/complete.c
-       - if postprocess_matches returns 0 in rl_complete_internal, reset
-         completion_changed_buffer to 0 before returning, since nothing
-         has been changed
-
-                                  1/20
-                                  ----
-subst.c
-       - fixed pat_subst so that null patterns with a `#' specifier prefix
-         the string to be substituted on with the replacement, and null
-         patterns with a `%' specifier append the replacement to the string
-         to be substituted on
-
-doc/{bash.1,bashref.texi}
-       - corrected a small error in the description of parameter pattern
-         substitution
-
-support/mksignames.c
-       - SIGINFO means something else on sequent systems
-
-                                  1/26
-                                  ----
-execute_cmd.c
-       - fix to execute_simple_command to keep a child process from getting
-         a bad value of last_asynchronous_pid when the shell forks early
-
-                                   2/1
-                                   ---
-Makefile.in
-       - changed RELSTATUS to `beta2'
-
-                                   2/2
-                                   ---
-[bash-2.03-beta2 released]
-
-                                   2/3
-                                   ---
-tests/{cprint.{tests,right},run-cprint}
-       - new test to exercise the command printing and copying code --
-         hopefully this will avoid things like the `conditional commands
-         in functions make the shell abort' problem
-
-                                   2/4
-                                   ---
-version.c
-       - if MACHTYPE is not defined, use CONF_MACHTYPE if it's defined
-
-                                   2/5
-                                   ---
-builtins/read.def
-       - if READLINE is defined, we need an extra pair of braces around
-         the `while' loop that reads from fd 0 if the -e option is
-         supplied, otherwise the code erroneously tests the value of
-         `retval', which is not set when using readline
-
-                                  2/15
-                                  ----
-builtins/fc.def
-       - make sure that fc closes `stream' before calling fc_execute_file
-
-                                  2/17
-                                  ----
-builtins/fc.def
-       - don't bother opening and closing the file of commands before
-         calling fc_execute_file, since parse_and_execute will write the
-         commands to the history file for us
-
-Makefile.in
-       - changed release status to `release'
-
-                                  2/18
-                                  ----
-parse.y
-       - change to special_case_tokens so that `time' is not recognized
-         as a reserved word while the parser is parsing a case statement
-         pattern list (if `time' is the first pattern, the last read
-         token will be newline, which time_command_acceptable says is OK
-         to start a pipeline)
-
-pathexp.c
-       - some changes to the POSIX_GLOB_LIBRARY code (often unused)
-
-shell.c
-       - a couple of changes for Interix (nee OPENNT)
-       - added code that handles systems without a third argument to main();
-         initializing `env' from `environ', conditionalized on a cpp define
-         NO_MAIN_ENV_ARG
-
-configure.in, config.h.in
-       - check for the presence of sbrk(2); define HAVE_SBRK if found
-
-xmalloc.c
-       - don't do the space allocated computation when malloc or realloc
-         fails if HAVE_SBRK is not defined
-
-configure.in
-       - new configure variable, MAKE_SHELL, defaults to /bin/sh
-
-Makefile.in,{builtins,doc,support,lib/{glob,malloc,readline,sh,termcap,tilde},examples/loadables}/Makefile.in
-       - set SHELL from @MAKE_SHELL@
-
-lib/posixheaders/posixjmp.h
-       - Don't override defines for setjmp and longjmp in <setjmp.h> on
-         Internix (nee OPENNT)
-
-lib/readline/complete.c
-       - Interix (OPENNT) doesn't do username completion
-
-configure.in
-       - on Interix/OPENNT ($host_os == interix* or opennt*), add
-         -DNO_MAIN_ENV_ARG to LOCAL_CFLAGS
-       - on Interix/OPENNT, set MAKE_SHELL to $OPENNT_ROOT/bin/sh rather
-         than a straight /bin/sh
-
-cross-build/opennt.cache
-       - a `configure' cache file for Interix/OPENNT; not necessarily
-         for cross-compiling, but this is where the other system cache
-         files are
-
-[bash-2.03 released]
-
-                                  2/19
-                                  ----
-configure.in
-       - changed OPENNT_ROOT to INTERIX_ROOT for building on Interix
-
-support/config.guess
-       - added two stanzas for Interix running on alpha and intel hardware
-
-                                  2/22
-                                  ----
-config-bot.h
-       - if PROMPT_STRING_DECODE is not defined, #undef PPROMPT before
-         redefining it, to avoid warning messages
-
-execute_cmd.c
-       - set jobs_hack in execute_subshell_builtin_or_function only if
-         JOB_CONTROL is defined
-
-                                  2/24
-                                  ----
-trap.c
-       - fixed an obscure bug caused by a race condition in run_pending_traps.
-         Read the comments in the source code for a full description of the
-         problem and solution
-
-                                   3/1
-                                   ---
-aclocal.m4
-       - new test, BASH_STRUCT_TIMEVAL, which tries to compile a code
-         fragment that includes <sys/time.h> and <time.h> as appropriate
-         and defines HAVE_TIMEVAL if the compile succeeds
-
-configure.in
-       - call BASH_STRUCT_TIMEVAL rather than running a pair of
-         AC_HEADER_EGREPs on sys/time.h and time.h
-
-lib/readline/histfile.c
-       - include "posixstat.h" rather than <sys/stat.h>
-       - in history_truncate_file, only try to truncate if the history file
-         is a regular file
-
-                                   3/2
-                                   ---
-aclocal.m4
-       - changed BASH_STRUCT_TIMEVAL back to using a pair of
-         AC_EGREP_HEADERs instead of compiling a program fragment
-
-lib/readline/readline.c
-       - readline_internal_charloop should cast the first argument to
-         _rl_dispatch to `unsigned char' to avoid problems with negative
-         array indices on systems where signed chars are the default
-
-lib/readline/kill.c
-       - instead of doing a sequence of next_history() calls in
-         rl_yank_nth_arg_internal, save and restore the history
-         position explicitly after finding the correct entry.  This
-         attempts to ensure that rl_yank_nth_arg leaves the history
-         pointer set to the same position as when it was called.
-         Fix from Vasco Pedro <vp@di.fct.unl.pt>
-
-                                   3/5
-                                   ---
-redir.c
-       - broke code that opens file for redirection in do_redirection_internal
-         into a separate function: redir_open(path, flags, mode, ri)
-
-general.h
-       - changed STREQN so that it evaluates to 1 (strings are equivalent)
-         if N == 0, to match the behavior of strncmp
-
-lib/sh/zwrite.c
-       - new file, zwrite() from builtins/evalstring.c
-
-builtins/evalstring.c
-       - removed private definition of zwrite
-
-builtins/common.c
-       - double_quote needs to protect newlines with backslashes as well
-       - new function, un_double_quote, to remove backslashes proctecting
-         characters that are special in double quotes
-
-builtins/common.h
-       - new extern declaration for un_double_quote
-
-parse.y
-       - changed read_token_word to requote the expanded value of $'...'
-         using single_quote
-       - added a new flag to parse_matched_pair: P_ALLOWESC.  It allows
-         backslashes to quote embedded single quotes, and is used by
-         the $'...' translation code for better ksh93-compatibility
-       - changed localeexpand to call mk_msgstr on the string passed
-         before displaying it if all we're doing is displaying translatable
-         strings in `po' format.  mk_msgstr quotes backslashes and double
-         quotes in the string passed with backslashes, and encloses the
-         result in double quotes.  If only -D is supplied, the string is
-         not changed at all -- this is what ksh93 does
-
-lib/readline/rlconf.h
-       - removed PAREN_MATCHING #define, paren matching is always compiled
-         into readline
-
-lib/readline/parens.c
-       - removed code that was active if PAREN_MATCHING was not defined
-       - added _rl_enable_paren_matching, which is called when the readline
-         variable `blink-matching-paren' is assigned a value and changes
-         the appropriate key bindings in emacs_standard_keymap
-
-lib/readline/bind.c
-       - no more PAREN_MATCHING defines, `blink-matching-paren' is always
-         available
-       - if `blink-matching-paren' is assigned a value, call
-         _rl_enable_paren_matching (rl_blink_matching_paren)
-
-lib/readline/emacs_keymap.c
-       - removed PAREN_MATCHING defines; the default key bindings for
-         ), ], and } are self-insert
-
-                                   3/7
-                                   ---
-stringlib.c
-       - added an extra argument to ansicstr so that `echo -e' will not
-         convert \' to '
-
-externs.h
-       - changed extern declaration for ansicstr
-
-parse.y, builtins/{echo,printf}.def
-       - changed calls to ansicstr() appropriately
-
-eval.c
-       - in parse_string_to_word_list, if an unexpected token is encountered
-         that causes the string to not parse to a simple command, or to
-         completely consume the string, display an error message and jump
-         back to the top level after restoring the parsing environment,
-         returning an error status from the attempted assignment
-
-                                   3/8
-                                   ---
-lib/glob/fnmatch.c
-       - fixed patscan and extmatch to handle embedded [...](...) patterns
-         better
-
-tests/{extglob2.{tests,right},run-extglob2}
-       - an additional set of ksh extended globbing tests, cribbed from zsh
-
-                                  3/10
-                                  ----
-general.c
-       - changed unset_nodelay_mode slightly to make sure it handles both
-         O_NDELAY and O_NONBLOCK if they have different values; it now
-         returns a value of 0 on success (or no action); -1 on failure
-
-general.h
-       - changed extern declaration for unset_nodelay_mode
-
-
-lib/readline/shell.c
-       - new function: unset_nodelay_mode; identical to definition in
-         general.c
-
-lib/readline/input.c
-       - changed rl_getc to call unset_nodelay_mode if the read fails with
-         errno == EWOULDBLOCK || errno == EAGAIN
-
-                                  3/11
-                                  ----
-lib/termcap/termcap.c
-       - minor changes from termutils-2.0
-       - minor change to MS-DOS version of valid_filename_p so MS-DOS-specific
-         code from tgetent() can be removed (from Michel@smr.nl)
-
-lib/readline/bind.c
-       - in _rl_read_file, null-terminate the buffer at the number of
-         characters actually read, not what stat() says the file size is
-       - use ~/_inputrc as a last-ditch inputrc filename on MS-DOS
-
-lib/readline/complete.c
-       - change printable_part to handle MS-DOS `drive-letter:' pathname
-         prefixes
-       - removed __GO32__ code, since it's for DJGPP 1.x, which is not
-         supported any more, and they don't work for DJGPP 2.x
-       - added code to support MS-DOS drive letter prefixes and //X/...
-         to filename_completion_function
-       - _rl_completion_case_fold defaults to 1 on MS-DOS
-
-lib/readline/{display,input,readline,rltty,signals,terminal}.c
-       - removed __GO32__ code
-
-lib/readline/histfile.c
-       - make read_history_range and history_truncate_file work with the
-         actual number of characters read from the file, not the file size
-         as reported by stat()
-
-lib/readline/readline.c
-       - change bind_arrow_keys_internal to bind MS-DOS arrow keys to the
-         appropriate functions if __MSDOS__ is defined
-
-lib/readline/rltty.c
-       - make sure set_winsize is always defined, with a null body if
-         TIOCGWINSZ is not defined
-
-lib/readline/shell.c
-       - include <stdio.h>, since this file uses sprintf
-
-support/shobj-conf
-       - MS-DOS does not support shared objects
-
-lib/tilde/tilde.c
-       - change tilde_find_suffix and isolate_tilde_prefix to understand
-         backslash as a pathname separator on MS-DOS
-
-                                  3/12
-                                  ----
-lib/readline/{bind,readline,terminal}.c
-       - no longer need to include <signal.h>
-
-lib/readline/terminal.c
-       - don't need to include <setjmp.h>
-
-builtins/history.def
-       - broke the code than handles deleting a particular history entry
-         from the history list out into a separate function: delete_histent
-       - added `-d offset' option to delete the history entry at position
-         OFFSET, as displayed when the history is listed
-
-jobs.c, nojobs.c
-       - new function, count_all_jobs(), returns the number of active jobs
-         in the jobs list
-
-jobs.h
-       - extern declaration for count_all_jobs()
-
-configure.in
-       - check for C library function ttyname()
-
-config.h.in
-       - define HAVE_TTYNAME if configure finds ttyname(3)
-
-parse.y
-       - two new escape sequences for decode_prompt_string:
-
-               \j      number of active jobs in jobs list
-               \l      basename of shell's tty device name
-
-doc/{bash.1,bashref.texi}, lib/readline/doc/hsuser.texi
-       - documented new `history -d' option
-       - documented new \j and \l prompt string expansion sequences
-
-lib/readline/bind.c
-       - new static state variable, currently_reading_init_file, set to
-         1 while _rl_read_init_file is operating on a file
-       - changed _rl_init_file_error to include the name and line number
-         from the init file only if currently_reading_init_file is non-zero
-         (this is needed since applications like bash can call
-         rl_parse_and_bind, and error messages from those calls would be
-         misleading if they referred to the last inputrc file read
-
-bashline.c
-       - support for a `extended command keymap', which will allow
-         readline key sequences to be bound to unix commands using an
-         auxiliary keymap and a special function that knows how to execute
-         commands from it
-       - bind_keyseq_to_unix_command supports `bind -x'
-       - bash_execute_unix_command is the readline callback that looks in
-         an auxiliary keymap to find the shell command to execute for a
-         particular key sequence
-       - new variable, no_empty_command_completion, which suppresses $PATH
-         searching for command completion when TAB is typed on an empty
-         line
-
-bashline.h
-       - extern declaration for new function bind_keyseq_to_unix_command
-
-builtins/bind.def
-       - added `-x' option to bind a key sequence to a shell command
-
-builtins/help.def
-       - added `-s' option to just print a builtin's short_doc
-
-builtins/shopt.def
-       - added new shell option, no_empty_cmd_completion', mirroring value
-         of no_empty_command_completion
-
-doc/{bash.1,bashref.texi}
-       - documented new `bind -x' option
-       - documented new shopt `no_empty_cmd_completion' option
-       - documented new `help -s' option
-
-Makefile.in
-       - changed RELSTATUS to `devel'
-
-_distribution
-       - changed to `2.04'
-
-                                  3/15
-                                  ----
-support/shobj-conf
-       - add `-h $@' to linking options on Solaris 2 with gcc
-
-expr.c
-       - changes to add {pre,post}-{inc,dec}rement operators (++id, --id,
-         id++, id--).  These are somewhat more liberal than ksh93, and
-         may require more strict syntax checking down the line
-
-tests/arith.{tests,right}
-       - additional tests for {pre,post}-{inc,dec}rement operators
-
-                                  3/16
-                                  ----
-command.h
-       - structures and types for ksh-93-style arithmetic `for' command
-
-configure.in
-       - new `--enable-arith-for-command' option to compile arithmetic for
-         command code into the shell
-
-config.h.in
-       - new define, ARITH_FOR_COMMAND, turned on by configure
-
-parse.y
-       - changed read_token_word to parse a set of arithmetic for expressions
-         between (( and )) as long as the last token read before the `(('
-         was FOR
-       - added grammar rules to build arithmetic for commands
-
-make_cmd.c
-       - functions to parse (( ... )) into the three sub-expressions needed
-         for the arithmetic for command and create the command structures
-         (done this way instead of in the grammar rules to avoid forcing
-         users to quote special characters between the (( and )) )
-
-make_cmd.h
-       - extern declaration for make_arith_for_command
-
-copy_cmd.c
-       - code to copy arithmetic for commands
-
-dispose_cmd.c
-       - code to dispose of arithmetic for commands
-
-print_cmd.c
-       - code to print arithmetic for commands
-
-execute_cmd.c
-       - code to execute arithmetic for commands and note that they are
-         shell control structures for the piping code
-
-doc/{bash.1,bashref.texi}
-        - documented new arithmetic for command
-
-doc/bashref.texi
-       - documented new configure --enable-arith-for-command option
-
-                                  3/17
-                                  ----
-builtins/read.def
-       - added `-t timeout' option and code to support it
-
-                                  3/18
-                                  ----
-examples/loadables/Makefile.in
-       - various clean targets need to descend into perl
-
-examples/loadables/perl/Makefile.in
-       - added mostlyclean and maintainer-clean targets
-
-include
-       - new directory, with files from lib/posixheaders
-
-lib/posixheaders
-       - removed
-
-{posixwait,unionwait,maxpath}.h
-       - moved from top src directory to include subdir
-
-Makefile.in,builtins/Makefile.in,lib/{glob,malloc,sh,tilde}/Makefile.in
-       - updated dependencies and file lists for new include directory
-       - added BASHINCDIR variable, added -I${BASHINCDIR} to cc's include path
-
-MANIFEST,support/SYMLINKS
-       - updated for new include directory
-
-lib/readline/{ansi_stdlib,posixdir,posixjmp,posixstat,rlstdc}.h
-       - changed symlinks to point to ../../include rather than
-         ../posixheaders
-
-builtins/common.h
-       - changed `#include "../stdc.h"' to `#include "stdc.h"'
-
-builtins/{cd,exec,fc,history,pushd,source,type,umask,printf}.def
-builtins/{mkbuiltins,common,evalfile,evalstring,getopt}.c
-       - changed include specifications:
-               ../posixstat.h -> posixstat.h
-               ../filecntl.h -> filecntl.h
-               ../maxpath.h -> maxpath.h
-               ../memalloc.h -> memalloc.h
-
-include/shtty.h
-       - new file, contents of bashtty.h and code from jobs.c that includes
-         the appropriate terminal file
-
-lib/sh/shtty.c
-       - new file with some tty manipulation utility functions
-
-bashtty.h
-       - removed
-
-jobs.c, nojobs.c
-       - include shtty.h instead of bashty.h and other code that includes
-         the correct system-dependent tty include file
-
-lib/sh/Makefile.in
-       - added shtty.o as part of libsh.a
-
-MANIFEST
-       - added include/shtty.h and lib/sh/shtty.c, removed bashtty.h
-
-                                  3/19
-                                  ----
-lib/readline/display.c
-       - some more __MSDOS__ code to make readline work better with DJGPP:
-               output \r instead of tputs(term_cr, ...)
-
-lib/readline/terminal.c
-       - some changes for __DJGPP__ (one is of dubious value -- doesn't
-         DJGPP have a termcap library?)
-
-                                  3/23
-                                  ----
-configure.in
-       - make sure that the $CC argument to shobj-conf is quoted
-
-support/shobj-conf
-       - changes to SGI SHOBJ_LDFLAGS from David Kaelbling <drk@sgi.com>
-
-                                  3/24
-                                  ----
-lib/sh/zread.c
-       - interface to read(2) that restarts automatically if errno == EINTR
-
-externs.h
-       - new declarations for functions in lib/sh/{zread,zwrite}.c
-
-lib/sh/Makefile.in, Makefile.in
-       - add zread.c, zread.o to appropriate file lists
-
-{subst,input}.c, builtins/{evalstring.c,read.def}
-       - converted some loops around read() to call zread() instead
-
-lib/readline/rltty.h
-       - new struct _rl_tty_chars to save tty special characters
-
-lib/readline/rltty.c
-       - new function save_tty_chars to save tty special characters
-         (currently they're only saved -- nothing looks at them yet)
-       - two new internal library functions, _rl_disable_tty_signals ()
-         and _rl_restore_tty_signals (), intended to disable tty driver
-         signal processing for readline's literal-next code, so users
-         can do stuff like ^V^C and have ^C end up in the readline
-         buffer even if ^C is the terminal's interrupt character
-
-lib/readline/readline.c
-       - changed rl_quoted_insert to disable and restore tty signal
-         handling around the call to rl_read_key (), so users can put
-         tty special chars into the readline buffer
-
-                                  3/25
-                                  ----
-expr.c
-       - added `,' operator (expr1 , expr2) -- both expr1 and expr2 are
-         evaluated and the return value is the value of expr2.  Precedence
-         is higher than assignment (which makes it highest)
-       - make `lasttp' (pointer to last token) part of the expression
-         context that is saved and restored by {push,pop}_context.  This
-         is used only in error reporting
-
-doc/{bash.1,bashref.texi}
-       - documented new `,' arithmetic operator
-       - cleaned up some of the language concerning variables referenced
-         by name within an arithmetic expression
-
-lib/readline/readline.c
-       - new application-settable variable, rl_num_chars_to_read, which, if
-         set to a non-zero value, causes readline to return after reading
-         that many characters (or at least that many characters, if
-         rl_startup_hook is used to prime the input buffer) rather than
-         when reading a character bound to accept-line
-
-lib/readline/readline.h
-       - extern declaration for rl_num_chars_to_read
-
-builtins/read.def
-       - added new `-n nchars' option to read NCHARS from stdin rather than
-         a complete line.  Works both with and without using readline
-
-doc/{bash.1,builtins.texi}
-       - documented new `read -n nchars' option
-
-                                  3/26
-                                  ----
-execute_cmd.c
-       - make sure all uses of PIDs are of type pid_t
-
-redir.c
-       - broke stdin_redirects into two functions: stdin_redirection, which
-         checks a single redirection specification, and a new stdin_redirects,
-         which does what it did before but calls stdin_redirection for each
-         redirection in the chain
-
-                                  3/29
-                                  ----
-aclocal.m4
-       - new test, BASH_CHECK_DEV_STDIN, checks for /dev/stdin.  If it's
-         present HAVE_DEV_STDIN is defined and it's assumed that /dev/stdout
-         and /dev/stderr are present as well
-
-configure.in
-       - call BASH_CHECK_DEV_STDIN
-
-config.h.in
-       - add HAVE_DEV_STDIN, initially undefined
-
-test.c
-       - add /dev/std{in,out,err} to the special filenames that are handled
-         by test_stat() if HAVE_DEV_STDIN is not defined
-
-doc/{bash.1,bashref.texi}
-       - documented conditional expressions' handling of /dev/std{in,out,err}
-
-stringlib.c
-       - new function, find_string_in_alist, to find (or match as an extended
-         glob pattern) a string in a STRING_INT_ALIST and return the
-         associated token value
-
-externs.h
-       - extern declaration for find_string_in_alist
-
-redir.c
-       - new STRING_INT_ALIST list of filenames the redirection code handles
-         specially (_redir_special_filenames)
-       - new function, redir_special_open () to handle filenames found in
-         _redir_special_filenames (framework for /dev/tcp and /dev/udp, but
-         those are not implemented get)
-
-doc/{bash.1,bashref.texi}
-       - documented special filename handling in redirections
-
-                                  3/30
-                                  ----
-builtins/read.def
-       - added `-d delim' option, like ksh93, to read until delim rather
-         than newline
-
-doc/{bash.1,bashref.texi}
-       - documented new read `-d delim' option
-
-configure.in
-       - look for gethostbyname(3), inet_aton(3)
-       - look for <netdb.h> and <netinet/in.h>
-       - call BASH_FUNC_GETHOSTBYNAME if gethostbyname(3) is not in libc
-       - check for u_int and u_long types, default to `unsigned int' and
-         `unsigned long' respectively
-       - new enable option `--enable-net-redirections' to compile in the
-         /dev/tcp and /dev/udp redirection code
-
-aclocal.m4
-       - new macro, BASH_FUNC_GETHOSTBYNAME, looks for gethostbyname(3) in
-         the socket libraries if it's not found in libc
-
-config.h.in
-       - new defines: HAVE_GETHOSTBYNAME, HAVE_INET_ATON, HAVE_NETDB_H,
-         HAVE_NETINET_IN_H, NETWORK_REDIRECTIONS
-       - new defines: u_int, u_long
-
-lib/sh/inet_aton.c
-       - new file, from GNU libc, slightly modified to remove inet_addr()
-
-lib/sh/netopen.c
-       - new file, functions to create tcp/udp network connections.  Exports
-         a single function: netopen(pathname)
-
-externs.h
-       - extern declaration for netopen()
-
-lib/sh/Makefile.in, Makefile.in, MANIFEST
-       - added appropriate references to inet_aton.c and netopen.c
-
-config-bot.h
-       - if HAVE_SYS_SOCKET_H, HAVE_GETPEERNAME, and HAVE_NETINET_IN_H are
-         all defined, define HAVE_NETWORK
-
-redir.c
-       - call netopen for pathnames of the form /dev/(tcp|udp)/host/port
-         if HAVE_NETWORK is defined; print a warning message otherwise
-       - /dev/tcp and /dev/udp code is only compiled in if
-         NETWORK_REDIRECTIONS is defined
-
-                                  3/31
-                                  ----
-lib/sh/zread.c
-       - new function, zsyncfd(fd) which syncs the kernel's seek pointer on
-         FD with the last character returned by zreadc()
-
-externs.h
-       - extern declaration for zsyncfd
-
-builtins/read.def
-       - use zreadc if the input is not unbuffered (this cuts the number
-         of read(2) calls *way* down)
-       - if input is not unbuffered, call zsyncfd before returning to make
-         sure zreadc's buffering doesn't consume too much input
-
-                                   4/1
-                                   ---
-Makefile.in
-       - install bashbug with mode 555
-
-                                   4/2
-                                   ---
-shell.c
-       - make want_pending_command and read_from_stdin global rather than
-         local variables
-
-flags.c
-       - change which_set_flags to insert `c' and `s' if the `-c' and `-s'
-         invocation options, respectively, were supplied at shell startup
-
-bashline.c
-       - change bash_directory_completion_hook to change the logic for
-         deciding whether or not to parameter expand the directory name --
-         now we expand only if there's a `$' (still has problems if the
-         user quoted the `$') or a `` pair.  Fixes bug reported by
-         chuckjr@sinclair.net.  To fix the `$' problem, could possibly
-         check what the user typed with rl_line_buffer and start, end
-         parameters to gen_completion_matches
-       - changed attempt_shell_completion to slightly adjust the logic for
-         deciding whether or not a word is in a command position:  if the
-         word being completed has a single opening single or double quote
-         before the command separator, treat it as a candidate for (quoted)
-         command word completion
-       - now that we understand partially-quoted strings as completion
-         candidates, we can do command completion on certain unclosed
-         uses of $(...
-
-subst.c
-       - change extract_delimited_string to not return an error for an
-         unclosed construct if DOING_COMPLETION is non-zero
-
-                                   4/5
-                                   ---
-expr.c
-       - fixed `ss=09 ; let ss=10' bug by introducing one-token lookahead
-         after a string token is parsed.  If the next token is `=', we
-         don't evaluate the variable's value as an expression, since it's
-         not going to be used
-
-variables.h
-       - added new member to struct variable: exportstr -- for the future
-         caching of strings to be placed into the environment
-       - extern declaration for bind_variable_value
-
-variables.c
-       - make sure that the `exportstr' member of a struct variable is
-         initialized correctly, and put code in to free it where appropriate
-         (if non-null)
-       - new function, bind_variable_value(VAR, VALUE); make shell variable
-         VAR have value VALUE
-       - make sure var->exportstr is invalidated when a variable or function
-         is assigned a value
-
-builtins/declare.def
-       - call bind_variable_value instead of duplicating some of bind_variable
-         inline
-
-                                   4/6
-                                   ---
-variables.h
-       - new macros, VSETATTR and VUNSETATTR to set and clear variable
-         attributes
-
-builtins{read,set,setattr,declare}.def,{execute_cmd,expr,shell,subst,variables}.c
-       - change to use VSETATTR and VUNSETATTR
-
-                                   4/7
-                                   ---
-doc/Makefile.in
-       - if htmldir is set by configure, install the html files into that
-         directory with `make install' and remove them with `make uninstall'
-
-Makefile.in,doc/Makefile.in
-       - htmldir is set by configure and passed from the Makefile to the
-         install in the doc subdirectory
-
-configure.in
-       - substitute `htmldir' into Makefiles
-
-support/config.guess
-       - some small changes for Apple's Rhapsody
-
-lib/termcap/Makefile.in
-       - make the `distclean' and `maintainer-clean' targets remove Makefile
-
-lib/termcap/ltcap.h
-       - new private library include file, for Rhapsody __private_extern__
-         define
-
-lib/termcap/{termcap,tparam}.c
-       - include "ltcap.h"
-       - if HAVE_CONFIG_H is defined, include <stdlib.h> if HAVE_STDLIB_H is
-         defined, otherwise declare getenv, malloc, realloc as extern
-       - add __private_extern__ qualifier for extern data that Rhapsody
-         requires
-
-shell.c
-       - don't run the startup files in the rshd case if shell_level is >= 2
-         This should catch the case of
-               rsh machine bash -c 'echo a'
-         running the .bashrc twice, once for the shell started by rshd and
-         one for the shell running -c command
-
-                                   4/8
-                                   ---
-variables.c
-       - in initialize_shell_variables, unset the export attribute from
-         SSH_CLIENT if it exists and we got it from the initial environment
-
-shell.c
-       - don't bother unsetting export attribute from SSH_CLIENT, since we
-         now do it in initialize_shell_variables
-
-lib/readline/display.c
-       - don't check prompt_this_line[-2] in rl_redisplay if prompt_this_line
-         isn't at least 2 characters after the start of rl_display_prompt
-
-lib/readline/histfile.c
-       - change the name of the default history file to _history on MS-DOS
-
-lib/readline/histlib.h
-       - add an extern declaration for history_offset
-
-lib/readline/hist{expand,search}.c
-       - remove extern declaration for history_offset; now in histlib.h
-
-lib/readline/xmalloc.h
-       - new file, extern declarations for xmalloc, xrealloc, xfree
-
-lib/readline/rlprivate.h
-       - new file, with extern declarations for `readline private' global
-         variables and functions
-
-lib/readline/rlshell.h
-       - new file, with extern function declarations for stuff in shell.c
-
-lib/readline/Makefile.in
-       - add dependencies on xmalloc.h, rlshell.h
-       - add xmalloc.h, rlprivate.h to list of header files
-
-MANIFEST
-       - add lib/readline/xmalloc.h, lib/readline/rlprivate.h,
-         lib/readline/rlshell.h
-
-Makefile.in
-       - add $(RL_LIBSRC)/xmalloc, $(RL_LIBSRC)/rlprivate.h,
-         $(RL_LIBSRC)/rlshell.h to READLINE_SOURCE variable
-
-lib/readline/{bind,complete,display,funmap,histexpand,histfile,history,input,
-isearch,keymaps,kill,macro,readline,search,shell,util,vi_mode}.c
-       - include "xmalloc.h" rather than extern declarations for xmalloc,
-         xrealloc, xfree
-
-lib/readline/terminal.c
-       - new function, used in two places, _emx_get_screensize for EMX
-
-lib/readline/readline.c
-       - EMX apparently no longer needs _emx_build_environ
-
-lib/readline/signals.c
-       - support for __EMX__ in rl_signal_handler
-       - don't set the old handler passed to rl_set_sighandler to
-         rl_signal_handler, because that would cause infinite recursion if
-         that signal were generated
-
-lib/readline/xmalloc.c
-       - no longer the same as lib/malloc/xmalloc.c, which is no longer
-         used by anyone
-       - changes to include xmalloc.h, define READLINE_LIBRARY, change
-         some of the argument types
-
-lib/tilde/tilde.c
-       - add prototypes for extern function declarations if __STDC__
-         defined
-
-lib/readline/{terminal,bind,readline,nls,histexpand}.c
-       - include "rlshell.h" for function prototypes
-
-                                   4/9
-                                   ---
-lib/readline/{bind,callback,complete,display,input,isearch,kill,macro,nls,
-parens,readline,rltty,search,signals,terminal,util,vi_mode}.c
-       - include "rlprivate.h"
-       - remove extern declarations already in rlprivate.h
-
-xmalloc.c
-       - xfree should take a PTR_T as its argument
-
-general.h
-       - change prototype for xfree to use void * instead of char *
-
-lib/malloc/malloc.c
-       - define PTR_T like it is defined in general.h
-       - malloc() returns a PTR_T
-       - free() takes a PTR_T as its argument
-       - realloc() returns a PTR_T and takes a PTR_T as its first argument
-       - memalign returns a PTR_T
-       - valloc returns a PTR_T
-       - calloc returns a PTR_T
-       - cfree() takes a PTR_T
-
-variables.c
-       - new function: char **all_variables_matching_prefix (char *prefix)
-
-variables.h
-       - extern declaration for all_variables_matching_prefix
-
-bashline.c
-       - converted variable_completion_function to use
-         all_variables_matching_prefix
-
-stringlib.c
-       - new function, char **alloc_array(n), allocates an argv-style
-         array of strings with room for N members
-
-externs.h
-       - extern declaration for alloc_array
-
-                                  4/13
-                                  ----
-lib/readline/keymaps.c
-       - include "readline.h"
-       - remove extern function declarations
-
-include/stdc.h
-       - break the definition of __P out from a strict __STDC__ block,
-         since __GNUC__ and __cplusplus also indicate that prototypes
-         are available
-
-lib/readline/readline.h
-       - adjust conditional declaration of rl_message, since __cplusplus
-         indicates that prototypes are available
-
-lib/readline/rlstdc.h
-       - private copy, modified, no longer symlinked to ../../include/stdc.h
-       - __P is defined if __GNUC__ or __cplusplus is defined
-       - removed defines for __STRING, const, inline, signed, volatile, since
-         readline does not use them
-
-lib/readline/{search,readline}.c
-       - extern declaration for _rl_free_history_entry with prototypes,
-         since it's not in rlprivate.h
-
-lib/readline/history.h
-       - added some missing `extern's in function declarations
-
-lib/readline/undo.c
-       - include "rlprivate.h"
-
-lib/readline/shell.c
-       - include "rlshell.h"
-
-lib/readline/Makefile.in
-       - update dependencies for undo.c, shell.c
-
-lib/tilde/tilde.h
-       - add #define for __P if not already defined
-       - use prototypes in extern function declarations with __P()
-
-lib/readline/doc/rluserman.texinfo
-       - new file, derived from rlman.texinfo
-
-{bashline,findcmd,general,pathexp}.c, builtins/getopts.def
-       - call alloc_array(N) instead of (char **)xmalloc (N * sizeof (char *))
-
-subst.c
-       - added code to implement ksh-93 ${!prefix*} expansion
-
-doc/{bash.1,bashref.texi}
-       - documented new ${!prefix*} expansion
-
-                                  4/15
-                                  ----
-execute_cmd.c
-       - new variable, this_shell_function, points to SHELL_VAR of currently
-         executing shell function
-
-variables.c
-       - new dynamic variable, FUNCNAME -- invisible when not executing shell
-         function
-
-doc/{bash.1,bashref.texi}
-       - documented new FUNCNAME variable
-
-                                  4/16
-                                  ----
-support/rlvers.sh
-       - add -T option to specify correct termcap library
-
-configure.in
-       - Irix 4.x still needs to link with -lsun if it contains a replacement
-         getpwent function that works with NIS
-       - if we're configuring with an already-installed readline library,
-         call BASH_CHECK_LIB_TERMCAP and pass the resulting $TERMCAP_LIB to
-         support/rlvers.sh
-
-lib/readline/readline.c
-       - in rl_forward, if rl_point ends up being < 0, set it to 0
-
-lib/readline/exammples/excallback.c
-       - new callback example code, from `Jeff Solomon <jsolomon@stanford.edu>'
-
-lib/sh/getcwd.c
-       - define NULL as 0 if not defined by one of the standard include files
-       - cast result of malloc and realloc to (char *) where appropriate
-
-variables.c
-       - new functions for use by dynamic variables: null_assign and
-         null_array_assign.  Used as assign_func for a particular variable,
-         they cause assignments to that variable to be silently ignored
-       - FUNCNAME and GROUPS are no longer readonly
-       - FUNCNAME changed to use null_assign
-       - GROUPS changed to use null_array_assign.  This means that the
-         variable can be unset if desired (like for Oracle startup scripts),
-         but cannot be assigned to
-
-doc/{bash.1,bashref.texi}
-       - added text about assignments being silently discarded to descriptions
-         of FUNCNAME and GROUPS
-       - removed text saying that GROUPS is readonly
-       - added standard text about GROUPS being unset and losing its special
-         properties, even if reset
-
-command.h
-       - new command type, cm_subshell, actually causes the shell to fork
-         and then executes the command in the SUBSHELL_COM struct
-
-parse.y
-       - ( ... ) now creates a command of type cm_subshell, with the same
-         flag CMD_WANT_SUBSHELL as previous
-
-make_cmd.c
-       - new function make_subshell_command
-
-make_cmd.h
-       - extern declaration for make_subshell_command
-
-dispose_cmd.c
-       - code to destroy a SUBSHELL_COM
-
-copy_cmd.c
-       - code to duplicate a SUBSHELL_COM
-
-print_cmd.c
-       - code to print a SUBSHELL_COM
-
-execute_cmd.c
-       - broke the code that handles executing commands in subshells out of
-         execute_command_internal into a new function, execute_in_subshell,
-         with the same arguments
-       - executing a command of type cm_subshell is just a slightly special
-         case, handled in execute_in_subshell
-
-                                  4/18
-                                  ----
-execute_cmd.c
-       - changed code in execute_command_internal that executes subshell
-         commands to check for command->type == cm_subshell in addition to
-         checking that commmand->flags & CMD_WANT_SUBSHELL is non-zero
-       - changed execute_in_subshell to set the CMD_NO_FORK flag on the
-         command to be executed by a command of type cm_subshell
-         (command->value.Subshell->command), if that command is a simple
-         command (type == cm_simple) or a nested subshell (type == cm_subshell)
-         and is not being timed
-       - changed execute_command_internal to just call and return the value
-         returned by execute_in_subshell if it gets a command of type
-         cm_subshell with flags including CMD_NO_FORK
-
-lib/malloc/malloc.c
-       - morecore() should always return through morecore_done, not with a
-         simple `return'
-
-                                  4/20
-                                  ----
-variables.c
-       - new function, quote_array_assignment_chars, backslash quotes all
-         `[' and `]' before an `=' in a word that's part of the body of a
-         compound array assignment.  Needed because we run the list through
-         the globbing code now.  Don't bother if `=' does not appear in
-         the string or if the first char is not `['
-       - call quote_array_assignment_chars from assign_array_var_from_string
-         now
-
-eval.c
-       - moved parse_string_to_word_list to parse.y
-
-parse.y
-       - moved parse_string_to_word_list here.  Much simpler -- no longer
-         tries to parse a command, but just reads tokens using read_token().
-         Any token but a WORD or ASSIGNMENT_WORD causes a syntax error.
-         Don't have to mess around with saving global_command or calling
-         parse_command, but do need to save and restore the history stuff,
-         so the array assignment doesn't get saved on the history list
-
-                                  4/21
-                                  ----
-nojobs.c
-       - changed to use functions in lib/sh/shtty.c (tt{get,set}attr) for
-         the terminal attributes
-       - added a `flags' field to struct proc_status, flags are PROC_RUNNING
-         and PROC_NOTIFIED (status has been returned to `wait')
-       - functions check flags & PROC_RUNNING to check whether or not a
-         particular process is still alive; PROC_RUNNING is reset by
-         set_pid_status
-       - new function, mark_dead_jobs_as_notified, same function as the one
-         in jobs.c
-       - cleanup_dead_jobs reaps jobs only if they're dead and not marked
-         as notified
-       - wait_for_background pids marks all pids as notified and reaps them
-         before it returns, since it's called by the `wait' builtin
-       - wait_for_single_pid marks the pid being waited for as notified so
-         its slot can be reclaimed -- it's only called by the `wait' builtin
-       - new function, process_exit_status, to turn what wait(2) takes into
-         an exit status
-
-                                  4/22
-                                  ----
-nojobs.c
-       - add_pid takes a new second argument, async_p, which is non-zero if
-         the process is in the background
-       - new flag, PROC_ASYNC, set by add_pid
-       - set_pid_status now sets the PROC_NOTIFIED flag if PROC_ASYNC is unset,
-         so foreground jobs get cleaned up right away
-       - changed mark_dead_jobs_as_notified to take a `force' argument; if
-         non-zero, it marks only enough dead jobs to make the number of
-         un-notified dead jobs < CHILD_MAX
-       - new function, reap_dead_jobs, same as in jobs.c
-
-execute_cmd.c
-       - don't need separate cases for REAP any more
-
-                                  4/23
-                                  ----
-builtins/printf.def
-       - new function, tescape, which processes a single backslash
-         escape sequence and returns the number of characters consumed by
-         the argument string (code taken from bexpand)
-       - changed bexpand to call tescape rather than do backslash-escape
-         sequence conversion itself
-       - changed occurrences of `illegal' in error messages to `invalid'
-       - printf no longer calls ansicstr to translate backslash-escape
-         sequences; the mainline printf code now calls tescape whenever it
-         hits a backslash
-
-                                  4/26
-                                  ----
-subst.c
-       - new variable, garglist, set to list of words to be expanded after
-         leading assignment statements are removed
-       - command_substitute now calls maybe_make_exported_env before making
-         the child process if there are no variable assignments preceding
-         the command currently being expanded, or if the command currently
-         being expanded consists only of variable assignments
-
-execute_cmd.c
-       - the `early fork' code in execute_simple_command now calls
-         maybe_make_export_env before forking because execute_disk_command
-         would do that in the vast majority of cases, and this will obviate
-         the need to do it for subsequent commands if the environment does
-         not change
-
-                                  4/27
-                                  ----
-variables.h
-       - more macros to manipulate the exportstr member of a SHELL_VAR
-       - changed initialize_shell_variables to cache the value from the
-         environment as the initial exportstr for all imported variables
-       - changed make_var_array to use exportstr if it exists, instead
-         of computing the value
-       - changed make_var_array to cache exportstr for exported functions,
-         so they don't have to be deparsed every time the export env is
-         remade
-
-                                  4/28
-                                  ----
-lib/readline/{histlib,rldefs}.h
-       - changed STREQN macro to evaluate to 1 if the third argument is 0
-
-lib/readline/search.c
-       - changed rl_history_search_{for,back}ward so they leave point at
-         the end of the line when the string to search for is empty, like
-         previous-history and next-history
-       - broke common code out of rl_history_search_{for,back}ward into
-         a new function, rl_history_search_reinit
-       - rewrote rl_history_search_internal to be more like the
-         non-incremental search functions, use noninc_search_from_pos,
-         and leave the last history line found in the current line buffer
-         if the search fails
-       - new function, make_history_line_current, takes care of making
-         the current line buffer a copy of the history entry passed as an
-         argument; used by rl_history_search_internal and noninc_dosearch
-
-subst.c
-       - make ${!prefix@} be the same as ${!prefix*} for (undocumented)
-         ksh93 compatibility
-
-                                  4/30
-                                  ----
-lib/readline/doc/rltech.texinfo
-       - added note about including <readline/readline.h>, and that <stdio.h>
-         should be included before readline.h
-
-lib/readline/doc/hstech.texinfo
-       - added note about including <readline/history.h>
-
-lib/readline/doc/manvers.texinfo
-       - updated version to 4.1
-
-lib/readline/{bind,complete,display,isearch,nls,parens,readline,signals,tilde,
-histexpand}.c
-       - added prototypes with __P((...)) for forward static function
-         declarations
-
-lib/readline/display.c
-       - broke the code that initializes VISIBLE_LINE and INVISIBLE_LINE out
-         of rl_redisplay into a new function, init_line_structures, which
-         takes an argument giving the minimum number of characters that the
-         line must hold 
-       - new function for use by applications that want to display the
-         initial prompt themselves rather than having the first call to
-         readline do it:  rl_on_new_line_with_prompt (modified from code in
-         the CLISP distribution)
-
-lib/readline/readline.c
-       - new external variable, rl_already_prompted, to let readline know
-         that the prompt string has already been displayed on the screen
-         before the first call to readline
-       - test rl_already_prompted before displaying the prompt in
-         readline_internal_setup
-       - if rl_already_prompted is non-zero, readline_internal_setup calls
-         rl_on_new_line_with_prompt instead of rl_on_new_line
-
-lib/readline/readline.h
-       - extern declaration for rl_on_new_line_with_prompt
-       - extern declaration for rl_already_prompted
-
-lib/readline/doc/rltech.texinfo
-       - documented rl_on_new_line_with_prompt and rl_already_prompted
-
-builtins/read.def
-       - new -s option (silent mode).  Input from a terminal is not echoed
-
-doc/{bash.1,bashref.texi}
-       - documented new `-s' option to read builtin
-
-                                   5/3
-                                   ---
-lib/readline/vi_mode.c
-       - replaced references to rl_getc with (*rl_getc_function)
-
-[bash-2.04-devel frozen]
-
-                                   5/5
-                                   ---
-subst.c
-       - make sure that verify_substring_values always passes malloc'd
-         memory to maybe_expand_string as the string to be expanded,
-         since it gets freed on errors
-
-support/shobj-conf
-       - don't need -R option for shared libraries on Solaris
-       - new stanza for OSF/1 machines with gcc
-
-lib/readline/readline.c
-       - new variable, rl_gnu_readline_p, always 1.  Available to allow
-         readline users to test whether or not they're linking against
-         the true readline, rather than some bogus replacement (from CLISP)
-
-lib/readline/readline.h
-       - extern declaration for rl_gnu_readline_p
-
-hashlib.h, hashcmd.h
-       - added prototypes to extern function declarations
-
-pcomplete.h
-       - new file, declarations for the programmable completion stuff
-
-pcomplib.c
-       - new file, library functions for programmable completion
-
-                                   5/6
-                                   ---
-builtins/complete.def
-       - new file, interface to programmable completion management
-
-configure.in
-       - new enable argument --enable-progcomp, defines
-         PROGRAMMABLE_COMPLETION
-
-config.h.in
-       - #define for PROGRAMMABLE_COMPLETION
-
-config-bot.h
-       - if PROGRAMMABLE_COMPLETION is defined and READLINE is not,
-         #undef PROGRAMMABLE_COMPLETION
-
-pcomplete.c
-       - new file, placeholder for programmable completion generators and
-         associated functions
-
-Makefile.in, builtins/Makefile.in
-       - changes to add pcomplete.c, builtins/complete.def
-
-                                   5/7
-                                   ---
-subst.c
-       - new function, #ifdef READLINE, skip_to_delim (s, i, delims).
-         Starting at s[i], return the index of the first character in s
-         that is contained in delims.  Understands shell quoting.
-       - added two arguments to list_string_with_quotes: an index to
-         watch for, and a pointer to int to return the index into the
-         created word list of the word containing the sentinel.  Now
-         compiled in all the time.  The returned index starts at 1.
-
-subst.h
-       - extern declarations for char_is_quoted, unclosed_pair, and
-         skip_to_delim
-       - changed extern declaration for list_string_with_quotes, moved
-         it out of the #ifdef ARRAY_VARS section
-
-bashline.c
-       - removed extern declarations for char_is_quoted and unclosed_pair
-
-variables.c
-       - new function, SHELL_VAR **all_exported_variables()
-       = new function, SHELL_VAR **all_array_variables(), #ifdef ARRAY_VARS
-
-variables.h
-       - extern declaration for all_exported_variables, all_array_variables
-
-lib/sh/strpbrk.c
-       - replacement if we don't have strpbrk(3)
-
-configure.in, config.h.in
-       - check for strpbrk(3), define HAVE_STRPBRK if found
-
-builtins/shopt.def
-       - new function, char **get_shopt_options (), returns an array of
-         shopt option names
-
-builtins/set.def
-       - new function, char **get_minus_o_opts (), returns an array of
-         `set -o' option names
-
-builtins/common.h
-       - extern declarations for get_shopt_options, get_minus_o_opts
-
-                                  5/10
-                                  ----
-pathexp.c
-       - make the POSIX_GLOB_LIBRARY code implement the GLOBIGNORE stuff
-
-                                  5/11
-                                  ----
-array.c
-       - new convenience function, char **array_to_argv (ARRAY *),
-         converts an array to a list of string values
-
-array.h
-       - extern declaration for array_to_argv
-
-execute_cmd.c
-       - new convenience function, int execute_shell_function (SHELL_VAR *,
-         WORD_LIST *)
-
-execute_cmd.h
-       - extern declaration for execute_shell_function
-
-builtins/evalstring.c
-       - make parse_and_execute unwind_protect current_prompt_string
-         if the shell is interactive
-
-                                  5/12
-                                  ----
-variables.c
-       - moved bind_int_variable from expr.c to here; it now returns a
-         SHELL_VAR *, like the other variable binding functions
-
-variables.h
-       - extern declaration for bind_int_variable
-
-                                  5/14
-                                  ----
-bashline.c, parse.y, general.c, make_cmd.c, subst.c, braces.c, execute_cmd.c
-       - replaced some common code sequences with calls to substring()
-
-lib/readline/doc/rltech.texinfo
-       - fixed small typo in description of rl_completion_entry_function
-
-                                  5/18
-                                  ----
-stringlib.c
-       - new function, strcreplace(char *string, int c, char *text, int do_glob)
-         replaces all occurrences of C in STRING with TEXT.  Backslash may
-         be used to quote C.  If DO_GLOB is non-zero, the replacement TEXT
-         is quoted to protect globbing characters.
-
-externs.h
-       - extern declaration for strcreplace
-
-bashhist.c
-       - use strcreplace in expand_histignore_pattern
-
-pcomplete.c
-       - finished initial implementation of programmable completion
-
-alias.c
-       - code to set the aliases itemlist to dirty when an alias is added
-         or removed, if PROGRAMMABLE_COMPLETION is defined
-
-variables.c
-       - code to set the functions itemlist to dirty when a shell function
-         is added or removed, if PROGRAMMABLE_COMPLETION is defined
-
-builtins/enable.def
-       - code to set the builtins itemlist to dirty when a shell builtin
-         is added or removed, if PROGRAMMABLE_COMPLETION is defined
-       - code to set the enabled and disabled itemlists to dirty when a
-         builtin is enabled or disabled, if PROGRAMMABLE_COMPLETION is
-         defined
-
-builtins/shopt.def
-       - new shell option, `progcomp', on if programmable_completion_enabled
-         (from pcomplete.c) is non-zero
-
-doc/{bash.1,bashref.texi}
-       - note that `${' is not eligible for brace expansion to avoid
-         conflicts with parameter expansion
-
-                                  5/19
-                                  ----
-builtins/complete.def
-       - added a new `compgen' builtin for use by completion functions
-
-                                  5/21
-                                  ----
-bashline.c
-       - new function, void clear_hostname_list(void), to delete all the
-         entries in the hostname completion list
-
-bashline.h
-       - extern declaration for clear_hostname_list
-
-variables.c
-       - changed sv_hostfile to clear the hostname list if $HOSTFILE is
-         unset
-
-doc/{bash.1,bashref.texi}
-       - documented new behavior of HOSTFILE when it's unset
-       - added some awkwardly-worded text to make it clear that an
-         interactive shell cannot be started with non-option arguments
-         or with the -c option
-
-shell.c
-       - restored NON_INTERACTIVE_LOGIN_SHELLS test, so that if it is
-         defined, shells with argv[0][0] == '-' and not in posix mode
-         run the startup files even if non-interactive
-
-config-top.h
-       - added commented-out #define for NON_INTERACTIVE_LOGIN_SHELLS
-
-                                  5/24
-                                  ----
-subst.c
-       - make sure the characters in IFS are cast to unsigned before being
-         indexed in ifscmap (expand_word_internal)
-
-                                  5/25
-                                  ----
-parse.y
-       - change grammar rule for arithmetic for expressions to handle a
-         list_terminator after the `))' instead of requiring a newline_list
-
-subst.c
-       - fix so that variable indirection can reference the shell's special
-         variables (like $0...$9, $$, $#, etc.)
-
-pcomplete.c
-       - changed gen_wordlist_matches to use split_at_delims to split the
-         string at $IFS first, then expand each individual word
-
-                                  5/27
-                                  ----
-lib/readline/histfile.c
-       - change things so that O_BINARY mode is used when reading and writing
-         the history file on cygwin32 as well as OS/2 (__EMX__)
-
-parse.y
-       - add calls to push_delimiter and pop_delimiter around the call
-         to parse_matched_pair when parsing $'...' and $"..." so the
-         history entry is added correctly
-
-                                  5/28
-                                  ----
-doc/{bash.1,bashref.texi}, lib/readline/doc/rluser.texinfo
-       - documented new programmable completion facilities
-
-doc/bashref.texi
-       - documented new configure `--enable-progcomp' option
-
-                                   6/1
-                                   ---
-variables.c
-       - if make_local_variable is being asked to make a local shadow
-         variable of a read-only variable, print an error message and
-         return NULL
-       - if make_local_variable returns NULL to make_local_array_variable,
-         just return it
-
-builtins/declare.def
-       - if we're making local variables, and make_local_array_variable or
-         make_local_variable returns NULL, just flag an error and go on
-
-                                   6/2
-                                   ---
-Makefile.in
-       - changed release status to `alpha1'
-
-[bash-2.04-alpha1 frozen]
-
-                                  6/18
-                                  ----
-bashline.c
-       - fixed find_cmd_start so that it doesn't spin-loop on commands with
-         a command separator like `;' or `&'.  Problem was not incrementing
-         `os' past the delimiter found
-
-                                  6/21
-                                  ----
-variables.c
-       - cosmetic change: introduced two macros to encapsulate initialization
-         of dynamic variables
-
-                                  6/23
-                                  ----
-pcomplib.c
-       - new function: num_progcomps(void), returns the number of entries in
-         the programmable completions hash table
-
-pcomplete.h
-       - extern declaration for num_progcomps
-
-bashline.c
-       - make sure some programmable completions have been defined before
-         diving into the programmable completion code
-
-shell.c
-       - in open_shell_script, move the fd opened to the script to a high
-         one with move_to_high_fd in all cases -- the buffered input code
-         still has problems if fd == 0 and later on fd 0 is closed or
-         redirected (cf. input.c:check_bash_input())
-
-builtins/printf.def
-       - getlong() now calls strtol directly with a third argument of 0 so
-         it can handle 0x (hex) and 0 (octal) prefixes, which legal_number
-         does not -- this has implications for arguments to %d that begin
-         with `0'
-
-lib/sh/getenv.c
-       - make sure that the variable found in the temporary environment has
-         a non-null value before calling savestring() on it
-
-subst.c
-       - make sure split_at_delims returns 0 in *nwp and *cwp if handed a
-         null or empty string
-
-pcomplete.c
-       - make sure build_arg_list handles lwords == 0, as it will be if an
-         empty command line is handed to the programmable completion code
-         (like compgen -C xyz)
-
-execute_cmd.c
-       - make sure execute_shell_function passes a non-null bitmap of fds to
-         close to execute_function, allocating and deallocating it locally
-
-sig.c
-       - don't mess with SIGPROF in initialize_terminating_signals
-
-jobs.c, nojobs.c
-       - if the user has requested it with checkwinsize, check for a new
-         window size after a job exits due to a signal as well as being
-         stopped
-
-lib/readline/kill.c
-       - changed rl_kill_region to set the point to the beginning of the
-         region after the kill is performed
-
-                                  6/24
-                                  ----
-configure.in
-       - make sure ranges ([1-9]*) are protected with [...] for m4 quoting
-
-variables.c
-       - make sure that bind_variable_value honors `set -a' and that it
-         marks the environment for recreation if necessary
-
-                                  6/25
-                                  ----
-lib/readline/complete.c
-       - if we're completing at the end of the line, find_completion_word
-         shouldn't test whether the character is a special word break
-         char and (possibly) advance rl_point past the end of the buffer
-
-parse.y
-       - change mk_msgstr to write embedded newlines as `\n"<NL>"', as the
-         PO file format apparently requires
-
-                                  6/28
-                                  ----
-lib/readline/display.c
-       - code to manage the growth of the inv_lbreaks and vis_lbreaks arrays
-         beyond 256, since there are pathalogical command lines that can
-         have more than 256 line breaks for redisplay
-
-                                  6/30
-                                  ----
-stringlib.c
-       - include pathexp.h for extern declaration of quote_globbing_chars
-
-variables.h
-       - change CACHE_EXPORTSTR to savestring() the value and not set the
-         att_importstr flag
-
-                                   7/6
-                                   ---
-support/bashbug.sh
-       - bashbug now accepts --help and --version options
-
-bashline.c
-       - change bash_quote_filename to use single quotes if the user
-         does not specify an opening quote character and the filename being
-         completed contains newlines
-
-                                   7/8
-                                   ---
-configure.in, aclocal.m4, config.h.in
-       - BASH_TYPE_INT32_T --> BASH_TYPE_BITS32_T; int32_t --> bits32_t
-       - BASH_TYPE_U_INT32_T --> BASH_TYPE_U_BITS32_T; u_int32_t --> u_bits32_t
-
-lib/malloc/{malloc,gmalloc}.c, lib/sh/inet_aton.c
-       - int32_t --> bits32_t; u_int32_t --> u_bits32_t
-
-aclocal.m4
-       - new tests: BASH_TYPE_BITS16_T, BASH_TYPE_U_BITS16_T
-
-configure.in
-       - add check for sizeof short, sizeof char
-       - call BASH_TYPE_BITS16_T, BASH_TYPE_U_BITS16_T
-
-config.h.in
-       - new #defines for bits16_t, u_bits16_t
-
-lib/malloc/malloc.c
-       - use u_bits16_t for type of mi_magic2
-
-
-                                  7/16
-                                  ----
-lib/readline/display.c
-       - new private library function, _rl_strip_prompt, to remove instances
-         of RL_PROMPT_{START,END}_IGNORE from the passed prompt string
-
-lib/readline/rlprivate.h
-       - extern declaration for _rl_strip_prompt
-
-lib/readline/readline.c
-       - call _rl_strip_prompt before outputting the prompt if we're not
-         doing any echoing of input chars (readline_echoing_p == 0)
-
-Makefile.in
-       - tentative change to rule for parser-built: use $< instead of
-         `y.tab.h' in recipe
-
-                                  7/19
-                                  ----
-support/config.{guess,sub}
-       - add code to handle all versions of Mac OS (e.g., Mac OS X)
-
-                                  7/26
-                                  ----
-lib/readline/bind.c
-       - on cygwin32, treat \r\n as a line terminator when reading the
-         inputrc file
-
-                                  7/29
-                                  ----
-lib/sh/netopen.c
-       - fixed problem in _getaddr with copying the address returned from
-         gethostbyname to the `struct in_addr *' argument -- hostnames
-         now work in /dev/(tcp|udp)/host/port
-
-                                   8/2
-                                   ---
-configure.in
-       - on Apple Rhapsody systems, set LOCAL_CFLAGS to -DRHAPSODY
-
-variables.h
-       - changes from Apple for building fat binaries on Rhapsody,
-         setting HOSTYPE, OSTYPE, VENDOR, and MACHTYPE
-
-lib/readline/terminal.c
-       - some work on the `dumb terminal' setup code in _rl_init_terminal_io
-         to make sure it's complete for use by the redisplay code and some
-         stuff in {readline,complete}.c
-
-lib/readline/display.c
-       - new function, _rl_current_display_line, returns the number of
-         lines down from the first `screen line' of the current readline
-         line the cursor is
-
-lib/readline/readline.c
-       - make rl_refresh_line call _rl_current_display_line
-
-lib/readline/rlprivate.h
-       - extern declaration for _rl_current_display_line
-
-                                   8/3
-                                   ---
-doc/bashref.texi
-       - reorganized slightly:
-               o a new shell builtins chapter
-               o a new shell variables chapter
-               o a new special builtins section
-               o bourne shell features chapter removed
-               o alias builtins moved to the bash builtins section
-               o bourne shell differences moved to appendix
-               o order of readline and history chapters swapped
-               o indices are now unnumbered appendices
-               o some text cleaned up and some explanatory text added
-
-lib/readline/terminal.c
-       - if a calling application is using a custom redisplay function,
-         don't call tgetent to get the terminal attributes, since those
-         are used only by the redisplay code.  Still get the window
-         size, though
-
-lib/glob/fnmatch.c
-       - range comparisons in bracket expressions no longer use strcoll(3),
-         since in some locales (de, for example), [A-Z] matches all
-         characters
-
-parse.y, print_cmd.c
-       - some changes to make sure the shell compiles when
-         DPAREN_ARITHMETIC is not defined but ARITH_FOR_COMMAND is
-
-                                   8/5
-                                   ---
-redir.c
-       - in the here document code in do_redirection_internal, check
-         that the file descriptor returned by here_document_to_fd is not
-         the same as a file descriptor specified as the redirector
-         before closing it
-
-                                   8/6
-                                   ---
-parse.y
-       - make sure the pipline rule for `timespec BANG pipeline' sets the
-         CMD_INVERT_RETURN flag for the pipeline command
-
-builtins/wait.def
-       - use setjmp with a special jump buffer to take longjmps in the
-         case that a SIGINT is received while waiting for jobs or processes
-         it makes wait return with a status > 128, as POSIX.2 specifies
-
-{jobs,nojobs}.c
-       - changed wait_sigint_handler to longjmp to wait_intr_buf if it's
-         executing the wait builtin and SIGINT is trapped.  It calls
-         trap_handler to make sure a pending trap for SIGINT is set also,
-         so the trap is taken when the wait builtin returns
-
-                                   8/9
-                                   ---
-jobs.c
-       - save and restore the value of errno in sigchld_handler
-
-trap.c
-       - save and restore the value of errno in trap_handler
-
-                                  8/10
-                                  ----
-Makefile.in
-       - changed release status to beta1
-
-                                  8/13
-                                  ----
-include/posixtime.h
-       - new file to encapsulate the <time.h> and <sys/time.h> mess
-
-Makefile.in
-       - add posixtime.h to list of include files in BASHINCFILES
-       - update dependencies for general.o, execute_cmd.o
-
-general.c, execute_cmd.c, builtins/times.def
-       - include posixtime.h instead of <time.h>, <sys/time.h>
-
-general.c
-       - protect inclusion of <sys/times.h> with HAVE_SYS_TIMES_H check
-
-builtins/Makefile.in
-       - update dependencies for times.o
-
-                                  8/16
-                                  ----
-lib/sh/timeval.c
-       - moved functions dealing with struct timevals here from general.c
-         and execute_cmd.c
-
-lib/sh/clock.c
-       - moved functions dealing with clock_ts here from general.c
-         (print_time_in_hz renamed to print_clock_t)
-
-externs.h
-       - moved extern declarations for timeval_to_secs and print_timeval
-         here from general.h
-       - moved extern declarations for clock_t_to_secs and print_clock_t
-         here from general.h
-
-builtins/times.def
-       - calls to print_time_in_hz changed to print_clock_t
-
-Makefile.in
-       - added references for lib/sh/timeval.c and lib/sh/clock.c
-
-lib/sh/Makefile.in
-       - clock.o and timeval.o are now included in libsh.a
-
-                                  8/23
-                                  ----
-execute_cmd.c
-       - make sure last_command_exit_value is updated before running a
-         DEBUG trap in the cm_simple case of execute_command_internal
-
-lib/readline/display.c
-       - new function, static void redraw_prompt (char *), used to
-         redraw the last line of a multiline prompt that possibly
-         contains terminal escape sequences
-       - call redraw_prompt from _rl_redisplay_after_sigwinch
-
-                                  8/24
-                                  ----
-lib/readline/bind.c
-       - new struct with names of string-valued readline variables and
-         handler functions to call when the variable is set
-       - changed rl_variable_bind to use functions to find boolean vars
-         and string vars in their respective lists
-       - new function, bool_to_int, to translate a boolean value that may
-         appear as an argument to `set <boolean-var-name>' to 1 or 0
-       - new function, hack_special_boolean_var, called if the element in
-         the boolean_vars struct has the V_SPECIAL flag set, to provide
-         any necessary other action when a boolean variable is set
-       - new functions to be called when each string variable is set;
-         called by rl_variable_bind
-
-execute_cmd.c
-       - do_piping no longer sets pipes to O_TEXT mode if __CYGWIN32__
-         is defined
-
-                                  8/25
-                                  ----
-subst.c
-       - parameter_brace_patsub now mallocs a local copy of `patsub', because
-         if it starts with a `/' we increment it, and functions down the call
-         chain will free that on an error (and if we pass the incremented
-         value, will try to free unallocated memory)
-       - pos_params now short-circuits and returns a null string immediately
-         if start == end, meaning we want 0 positional parameters
-
-                                  8/26
-                                  ----
-subst.c
-       - fixed pat_subst to correctly handle a null replacement string with
-         a null pattern string prefixed with `%' or `#'
-
-                                   9/3
-                                   ---
-variables.c
-       - don't import shell functions from the environment if the shell was
-         started with -n
-
-                                   9/8
-                                   ---
-subst.c
-       - if a command substitution is being performed inside a shell function,
-         catch `return' in command_substitute so that a return inside the
-         command substitution doesn't jump back to execute_function (or one
-         of its brethren) and go on with the command
-
-parse.y
-       - in history_delimiting_chars, if the first line is `for var' and
-         command_oriented_history is active, we don't want a semicolon if
-         the next token to be read is `in', but we do want one otherwise.
-         All we can do is check shell_input_line and see if the next chars
-         are `in' -- if so, we return " "
-
-                                  9/16
-                                  ----
-builtins/hash.def
-       - don't allow `hash -p /pathname/with/slashes name' if the shell
-         is restricted
-
-doc/{bash.1,bashref.texi}
-       - updated description of restricted shell mode
-
-lib/readline/display.c
-       - fixed a bug in _rl_update_final which used the inv_lbreaks array
-         to index into visible_line
-
-jobs.c
-       - waitchld() need not go through the pain of setting up an environment
-         to execute traps on SIGCHLD if children_exited == 0
-       - waitchld returns -1 if waitpid() returns -1 with errno == ECHILD,
-         indicating that there are no unwaited-for child processes, and it
-         has not yet reaped any dead children
-       - wait_for, wait_for_single_pid return -1 if waitchld() returns -1
-       - new function, mark_all_jobs_as_dead
-       - wait_for_background_pids calls mark_all_jobs_as_dead if
-         wait_for_single_pid returns -1 with errno == ECHILD, since there are
-         no unwaited-for child processes
-
-subst.c
-       - tentative change: subshells started for command substitution no
-         longer unconditionally disable job control
-
-                                  9/17
-                                  ----
-parse.y
-       - new function: save_token_state().  Saves the value of last_read_token
-         and the two previous tokens in an allocated array and returns the
-         array
-       - new function: restore_token_state(ts).  TS is an array returned by
-         save_token_state.  last_read_token and the two previous tokens are
-         set from the values in TS
-
-trap.c
-       - run_pending_traps calls save_token_state and restore_token_state
-         around the call to parse_and_execute, which will call the parser
-         and possibly leave it in a state where reserved words will not be
-         recognized (_run_trap_internal, too)
-
-                                  9/20
-                                  ----
-support/bashbug.sh
-       - if sendmail is used as $RMAIL, pass `-i -t' as arguments so changes
-         made by the user to the recipient headers in the message are
-         honored
-
-                                  9/21
-                                  ----
-bashhist.c
-       - if histverify has been set, make sure a `:p' modifier to a history
-         expansion prints the result
-
-builtins/echo.def
-       - new extern variable, xpg_echo, set to 1 if DEFAULT_ECHO_TO_USG is
-         defined and 0 otherwise
-       - echo_builtin now sets the initial value of do_v9 from xpg_echo
-
-builtins/shopt.def
-       - new shopt option, `xpg_echo', turns backslash escape expansion by
-         `echo' on and off at runtime
-
-builtins/{bash.1,bashref.texi}
-       - documented new `xpg_echo' shell option
-
-tests/{builtins.tests,builtins2.sub,shopt.tests}
-       - changes for new `xpg_echo' shell option
-
-configure.in
-       - changes for FreeBSD-3.x ELF to add `-rdynamic' to LOCAL_LDFLAGS.
-         This allows dynamic loading of builtins
-
-support/shobj-conf
-       - changes to handle FreeBSD-3.x elf or a.out object file formats
-
-                                  9/23
-                                  ----
-[bash-2.04-beta1 released]
-
-                                  9/24
-                                  ----
-jobs.c
-       - wait_for returns -1 only if the shell is currently executing the
-         `wait' builtin, since that's the only thing that cares
-
-execute_cmd.c
-       - moved cases of close_fd_bitmap to before calls to do_piping to
-         handle some pathological cases
-
-                                  9/29
-                                  ----
-execute_cmd.c
-       - save the command line in execute_simple_command before making the
-         export environment, since maybe_make_export_env clobbers
-         the_printed_command if there are exported functions
-
-                                  9/30
-                                  ----
-configure.in,config.h.in
-       - check explicitly for setvbuf; define HAVE_SETVBUF if found
-
-configure.in
-       - change opt_gnu_malloc to opt_bash_malloc, since the bash malloc
-         is not really the gnu malloc anymore
-       - new argument, --with-bash-malloc, identical to --with-gnu-malloc
-       - AC_DEFINE(USING_BASH_MALLOC) if opt_bash_malloc is enabled
-
-config.h.in
-       - new #define for USING_BASH_MALLOC
-
-doc/bashref.texi
-       - updated installation section to add --with-bash-malloc and
-         change description of --with-gnu-malloc
-
-lib/sh/setlinebuf.c
-       - change name of function to sh_setlinebuf, just returns 0 if
-         HAVE_SETVBUF and HAVE_SETLINEBUF are undefined
-       - prefer setvbuf to setlinebuf if we have both
-       - if we're using setvbuf, use a local buffer for stdin and stdout
-         local buffer is BUFSIZ unless we're using the bash malloc
-         (USING_BASH_MALLOC is defined), in which case it's 1008 (which
-         the bash malloc rounds up to 1024)
-
-                                  10/4
-                                  ----
-input.c
-       - if USING_BASH_MALLOC is defined, set the max buffer size to 8176,
-         which the bash malloc rounds up to 8192
-
-                                  10/5
-                                  ----
-pcomplete.c
-       - new function, pcomp_filename_completion_function, a wrapper for
-         filename_completion_function that dequotes the filename first
-
-bashline.c
-       - changed bash_directory_completion_matches to dequote the filename
-         before passing it (indirectly) to filename_completion_function
-
-execute_cmd.c
-       - change execute_command to defer calling unlink_fifo_list until any
-         shell function has finished executing (variable_context == 0)
-
-configure.in
-       - added AC_CYGWIN, AC_MINGW32, AC_EXEEXT
-
-                                  10/8
-                                  ----
-subst.c
-       - expand_word_internal(): changes some things to avoid small (2 or 3
-         byte) calls to xmalloc -- added a label and some gotos (BEWARE)
-       - changed make_dev_fd_filename so it doesn't call sprintf anymore
-
-                                  10/27
-                                  -----
-execute_cmd.c
-       - make execute_select_command handle the effects of the `continue'
-         builtin correctly
-
-                                  11/5
-                                  ----
-Makefile.in
-       - RELSTATUS changed to `beta2'
-
-                                  11/8
-                                  ----
-[bash-2.04-beta2 released]
-
-                                  11/9
-                                  ----
-shell.c
-       - make run_startup_files check for ssh2 as well as ssh1
-
-                                  11/19
-                                  -----
-parse.y
-       - make sure parsing conditional commands isn't confused by unexpected
-         tokens (like `[[)]]')
-
-builtins/common.c
-       - fix get_job_spec to return NO_JOB for numeric job specs that are
-         beyond the size of the jobs table
-
-builtins/type.def
-       - change describe_command to report `not found' if a path search
-         returns the same string as the command name and the command name
-         does not match an executable file.  This has implications for
-         `type' and `command -[vV]'.
-       - if a command is not found in $PATH, but an executable file with the
-         name supplied exists in the current directory, make the command
-         into a full pathname for the `command' builtin.  This has
-         implications for `type' and `command -[vV]'
-
-subst.c
-       - new function, expand_prompt_string, expands prompt string and
-         returns the string passed if an error occurs
-
-subst.h
-       - extern declaration for expand_prompt_string
-
-parse.y
-       - decode_prompt_string calls expand_prompt_string instead of
-         expand_string_unsplit
-
-                                  11/22
-                                  -----
-builtins/echo.def
-       - return EXECUTION_FAILURE if ferror(stdout) is true
-
-                                  11/23
-                                  -----
-locale.c
-       - if LC_ALL is unset, call setlocale(LC_ALL, lc_all), because lc_all
-         holds the default locale
-
-                                  11/29
-                                  -----
-lib/readline/shell.c
-       - define NULL as 0 if it's not defined
-       - change single_quote to allocate 4 characters in new string for
-         each character in the old one (like builtins/common.c:single_quote)
-
-locale.c
-       - when a locale variable (LC_*) is unset, pass "" to setlocale()
-         to get the default locale set, since value is NULL
-
-lib/sh/makepath.c
-       - new function, sh_makepath(char *path, char *dir, int flags)
-
-Makefile.in
-       - changed version to beta3
-
-builtins/type.def
-       - changed describe_command to use sh_makepath()
-
-builtins/cd.def
-       - removed private declaration of mkpath(), changed to use sh_makepath
-
-general.c
-       - changed make_absolute to use sh_makepath
-       - changed full_pathname to use sh_makepath
-
-findcmd.c
-       - removed private definition of make_full_pathname, changed to use
-         sh_makepath
-
-doc/{bashref.texi,bash.1}
-       - added text to description of `getopts' to make it clear that getopts
-         may be used to parse option characters other than letters, and
-         that `:' and `?' may not be used as option characters
-
-eval.c
-       - when processing a jump_to_top_level(EXITPROG), make sure the shell
-         doesn't think it's still in a function by setting variable_context
-         to 0
-
-doc/rbash.1
-       - a skeletal man page for rbash, adapted from debian
-
-support/bashbug.sh
-       - try to find a default editor if EDITOR is unset, rather than blindly
-         using `emacs'
-
-                                  11/30
-                                  -----
-support/config.{guess,sub}
-       - many changes from the latest `automake' distribution, from the
-         Debian folks
-
-                                  12/2
-                                  ----
-lib/readline/keymaps.h, lib/tilde/tilde.h
-       - added support for C++ compilation (`extern "C" {...}')
-
-                                  12/3
-                                  ----
-subst.c
-       - in process_substitute, make sure the child resets the O_NONBLOCK
-         flag on the file descriptor opened for read to a named pipe
-
-jobs.c
-       - new function, raw_job_exit_status, returns exit status of last job
-         in pipeline
-       - change job_exit_status to call raw_job_exit_status and pass the
-         result to process_exit_status
-       - in notify_of_job_status, get termination status from call to
-         raw_job_exit_status, rather than the first job in the pipeline
-         (fixes debian bug #15165)
-
-bashhist.c
-       - changed bash_history to not add shell comment lines to the history
-         file (fixes debian bug #21901).  Uses new function shell_comment(L)
-         which returns 1 if L is a shell comment line.  Doesn't handle
-         comments embedded in lines yet
-
-redir.c
-       - when running in POSIX.2 mode, bash no longer performs word splitting
-         on the expanded value of the word supplied as the filename argument
-         to a redirection operator (fixes debian bug #30460)
-
-doc/bashref.texi
-       - added new redirection stuff to POSIX Mode section (from previous fix)
-
-                                  12/6
-                                  ----
-hashlib.h
-       - removed extra semicolon at end of HASH_ENTRIES define
-
-redir.c
-       - replaced toggling of disallow_filename_globbing flag with setting
-         flags in redirection word to include W_NOGLOB if the shell is in
-         POSIX mode and not interactive when expanding the filename argument
-         to a redirection
-
-                                  12/7
-                                  ----
-builtins/common.c
-       - new function, backslash_quote_for_double_quotes(char *), quotes
-         characters special when in double quotes in the string passed as
-         an argument.
-         #ifdef PROMPT_STRING_DECODE; called by decode_prompt_string
-
-builtins/common.h
-       - extern declaration for backslash_quote_for_double_quotes
-
-parse.y
-       - call backslash_quote_for_double_quotes instead of backslash_quote
-         in decode_prompt_string
-
-                                  12/9
-                                  ----
-parse.y
-       - before expanding the \u prompt string escape sequence, make sure
-         current_user.user_name is non-null and call get_current_user_info
-         if it is
-
-                                  12/10
-                                  -----
-support/mkversion.sh
-       - changes to avoid relying on floating point output format, which
-         can be locale-specific
-
-                                  12/14
-                                  -----
-print_cmd.c
-       - changes to named_function_string (for normal function printing)
-         and print_function_def (for printing function definitions embedded
-         in other commands) to print redirections that should be attached
-         to the function as a whole after the closing brace
-
-tests/func1.sub
-       - tests for printing functions with attached redirections, called by
-         func.tests
-
-                                  12/16
-                                  -----
-lib/readline/complete.c
-       - if we're completing files in the root directory and executing the
-         visible-stats code, don't pass an empty pathname to
-         rl_directory_completion_hook, because, for bash, that will be
-         expanded to the current directory.  Just pass `/' instead.
-
-lib/tilde/tilde.c
-       - fix to tilde_expand_word for Cygwin to avoid creating pathnames
-         beginning with `//' if $HOME == `/'
-
-variables.c
-       - don't bother with the exportstr validation on cygwin systems,
-         or even using exportstr at all, since that system has weird
-         environment variables
-
-                                  12/17
-                                  -----
-configure.in
-       - new option, --enable-xpg-echo-default, new name for
-         --enable-usg-echo-default (which is still present for backwards
-         compatibility)
-
-configure.in, config.h.in, builtins/echo.def
-       - DEFAULT_ECHO_TO_USG -> DEFAULT_ECHO_TO_XPG
-
-                                  12/29
-                                  -----
-aclocal.m4
-       - changed a couple of tests to avoid creating files with known
-         names in /tmp
-
-support/rlvers.sh
-       - changed to create files in /tmp/rlvers
-
-support/mksignames.c
-       - now understands the POSIX.1b real-time signal names on systems
-         that support them
-
-                                  12/30
-                                  -----
-[bash-2.04-beta3 released]
-
-                                  12/31
-                                  -----
-redir.c
-       - try some more things to avoid race file replacements in
-         here_document_to_fd
-
-parse.y
-       - two new functions:
-               get_current_prompt_level: returns 2 if current prompt is $PS2,
-                                         1 otherwise
-               set_current_prompt_level: sets current prompt to $PS2 if arg
-                                         is 2, $PS1 otherwise
-
-copy_cmd.c
-       - make sure to copy the `line' member in copy_arith_for_command
-
-pcomplete.c
-       - free up `lwords' and `line' after evaluating any command or shell
-         function in gen_compspec_completions
-       - after filtering any matches specified by cs->filterpat in
-         gen_compspec_completions, free ret->list (the members have
-         already been copied or freed by filter_stringlist)
-
-bashline.c
-       - free what find_cmd_name returns after calling the programmable
-         completion code
-
-                                1/4/2000
-                                --------
-subst.c 
-       - make call_expand_word_internal set w->word to NULL if either
-         expand_word_error or expand_word_fatal is returned 
-
-                                   1/7
-                                   ---
-parse.y
-       - two new functions: set_current_prompt_level(int) and
-         get_current_prompt_level() to set and get the `level' of
-         current_prompt_string (1 if $PS1, 2 if $PS2)
-
-externs.h
-       - extern declarations for {get,set}_current_prompt_level
-
-builtins/evalstring.c
-       - add an unwind_protect to save and restore the current prompt
-         string pointers using {get,set}_current_prompt_level
-
-                                   1/9
-                                   ---
-Makefile.in
-       - changed release status to `beta4'
-
-                                  1/18
-                                  ----
-[bash-2.04-beta4 released]
-
-                                  1/19
-                                  ----
-configure.in
-       - moved checks for non-unix variants to beginning of tests
-
-Makefile.in, {builtins,support}/Makefile.in
-       - added some $(EXEEXT) suffixes to generated programs for non-Unix
-         systems
-
-                                  1/20
-                                  ----
-parse.y
-       - make get_current_prompt_level return 1 if current_prompt_string is
-         NULL (as it would be while sourcing startup files)
-
-support/rlvers.sh
-       - rmdir $TDIR in the exit trap
-       - move the exit trap after we successfully create $TDIR
-
-                                  1/21
-                                  ----
-subst.c
-       - several changes to split_at_delims to make non-whitespace
-         delimiters create separate fields containing those delimiters,
-         like the shell parser does with meta characters.  This allows
-         redirection operators, for example, to be treated as separate
-         words by the programmable completion code
-
-examples/complete/complete-examples
-       - added new function: _redir_op, which return true if the word
-         passed as an argument contains a redirection operator (just
-         bare-bones for now)
-       - changed set completion function to use _redir_op as an example
-
-parse.y
-       - make parse_string_to_word_list save and restore the value of
-         shell_input_line_terminator, since an assignment like
-         COMPREPLY=() inside a shell function called by the programmable
-         completion code can change shell_input_line_terminator out from
-         underneath shell_getc().  shell_getc will set the input line
-         terminator to EOF when it gets EOF from the getter function, and
-         the string getter function returns EOF at EOS.  parse_and_execute
-         tests for EOS directly and never gets EOF from shell_getc, so it
-         does not have this problem.
-
-                                  1/24
-                                  ----
-lib/readline/funmap.c
-       - #define QSFUNC like in complete.c
-       - cast _rl_qsort_string_compare to a QSFUNC * in the call to qsort
-
-lib/readline/terminal.c
-       - correct a typo in usage of the __EMX__ preprocessor define
-       - fix a reversed usage of `#if defined (__DJGPP__)' in 
-         _rl_control_keypad
-       - remove extern declarations for _rl_in_stream and _rl_out_stream
-
-lib/readline/rlprivate.h
-       - add extern declaration for _rl_in_stream, since there's already
-         one for _rl_out_stream
-
-builtins/ulimit.def
-       - if bash is using ulimit(2), make sure that getfilesize() returns
-         the value multiplied by 512 to convert it from a number of blocks
-         to a number of bytes
-
-                                  1/25
-                                  ----
-execute_cmd.c
-       - make sure execute_command_internal sets last_command_exit_value
-         correctly when inverting the return value of a (...) subshell
-         command
-
-tests/{run-invert,invert.{tests,right}}
-       - new tests for return value inversion
-
-configure.in
-       - compile without bash malloc on m68k-motorola-sysv due to a file
-         descriptor leak in closedir(3) -- the motorola implementation
-         requires that freed memory be readable so it can free the dirent
-         and then look back at it to find the file descriptor
-
-expr.c
-       - fix negative exponents in v**e to return an eval error
-
-                                   2/1
-                                   ---
-Makefile.in
-       - changed status to beta5
-
-jobs.c
-       - fixed a problem with checking the wrong process when checking to
-         see whether or not we need to reset the tty state.  The old code
-         checked the first process in a pipeline; the new code checks all
-         processes in the pipeline to see whether any of them exited due
-         to a signal or was stopped.  If none were signalled or stopped,
-         the code uses the exit status of the last process in the job's
-         pipeline
-
-                                   2/4
-                                   ---
-[bash-2.04-beta5 released]
-
-eval.c
-       - call set_current_prompt_level instead of setting prompt_string_pointer
-         directly
-
-                                  2/10
-                                  ----
-[bash-2.04-beta5 re-released to net]
-
-                                  2/11
-                                  ----
-sig.c
-       - make sure SIGCHLD is defined in initialize_shell_signals before
-         trying to use it in sigdelset() (DJGPP fix)
-
-                                  2/14
-                                  ----
-lib/sh/shtty.c
-       - include <unistd.h> before <shtty.h>
-       - separate tests for ONLCR, ONOCR, ONLRET to cope with systems like
-         DJGPP that don't implement the full POSIX termios option set
-
-builtins/psize.sh
-       - set TMPDIR only if it's not already set
-
-lib/glob/glob.c
-       - if a system doesn't define _POSIX_SOURCE but has a `struct dirent'
-         without a d_ino member, define REAL_DIR_ENTRY to 1 so all entries
-         are read
-
-configure.in
-       - check for <arpa/inet.h> header file
-
-config.h.in
-       - add HAVE_ARPA_INET_H define
-
-lib/sh/inet_aton.c
-       - don't compile unless HAVE_NETWORK, HAVE_NETINET_IN_H, and
-         HAVE_ARPA_INET_H are all defined in config.h or config-bot.h
-
-                                  2/16
-                                  ----
-subst.c
-       - if we have a construct like "${@:-}", we need to note that we're
-         not using whatever is in $@ (we're using the rhs), so the special
-         double-quoting $@ rules do not apply
-
-                                  2/21
-                                  ----
-lib/readline/signals.c
-       - declare SigHandler before using it on non-POSIX systems
-
-lib/sh/{zread,zwrite}.c
-       - include <sys/types.h> unconditionally
-
-configure.in
-       - m68k-motorola-sysv should be m68k-sysv in the section that sets
-         opt_bash_malloc to no for certain systems
-
-builtins/complete.def
-       - fixed a typo (stoppped) when printing out completion actions
-
-                                  2/22
-                                  ----
-lib/sh/netopen.c
-       - include <arpa/inet.h> if it's present
-
-aclocal.m4
-       - new macro, BASH_FUNC_INET_ATON, checks for inet_aton(3) including
-         <netinet/in.h> and <arpa/inet.h>, which some systems require to
-         resolve the function
-
-configure.in
-       - if autoconf can't fund inet_aton on its own, try BASH_FUNC_INET_ATON
-
-pcomplete.c
-       - fixed a memory leak in gen_wordlist_completions
-       - changed gen_wordlist_completions to do prefix-matching against the
-         word being completed
-
-doc/bash.1, lib/readline/doc/rluser.texinfo
-       - documented the change in behavior of the -W option to complete and
-         compgen
-
-builtins/umask.def
-       - if parse_symbolic_mode() returns -1, symbolic_umask needs to return
-         -1 as well, otherwise the umask will be changed inappropriately
-
-input.c
-       - always compile in getc_with_restart and ungetc_with_restart
-
-parse.y
-       - yy_stream_get and yy_stream_unget now call getc_with_restart and
-         ungetc_with_restart, respectively, to avoid problems with some
-         systems not restarting the read(2) when signals that bash handles
-         are received during the read (since bash installs its signal
-         handlers without the SA_RESTART flag)
-
-lib/readline/complete.c
-       - don't default rl_completion_case_fold to 1 if __DJGPP__ is defined
-
-                                  2/25
-                                  ----
-subst.c
-       - renamed `varlist' to `subst_assign_varlist' and made it global
-
-jobs.c
-       - when running a SIGCHLD trap, need to unwind-protect
-         subst_assign_varlist and set it to NULL before running the trap
-         command (fix from ericw@bestnet.org and doogie@debian.org)
-
-                                  2/28
-                                  ----
-lib/readline/doc/rltech.texinfo
-       - document rl_funmap_names()
-
-                                  2/29
-                                  ----
-subst.c
-       - change split_at_delims to set the current word more appropriately
-         when the cursor is between two words.  Should probably change this
-         again to set the current word like this only when the cursor is at
-         whitespace or another delim just before the word start
-
-                                   3/1
-                                   ---
-lib/sh/shtty.c
-       - more checks for flag bits being defined before using them
-
-                                   3/7
-                                   ---
-variables.h
-       - fix typo in COPY_EXPORTSTR definition 
-
-                                  3/14
-                                  ----
-subst.c
-       - changed split_at_delims so that if the cursor is at whitespace
-         between words, and we're interested in the current word (cwp != NULL),
-         make a new empty word and set the cwp to that word
-
-locale.c
-       - support for setting LC_NUMERIC locale category based on value of
-         LC_NUMERIC shell variable
-
-variables.c
-       - LC_NUMERIC is now treated specially
-
-doc/{bash.1,bashref.texi}
-       - LC_NUMERIC updates
-
-                                  3/15
-                                  ----
-pcomplete.c
-       - fix to avoid freeing memory twice
-
-                                  3/17
-                                  ----
-[bash-2.04 released]
-
-                                  3/20
-                                  ----
-doc/bash.1
-       - minor typo fix to description of `xpg_echo' option in `echo'
-         description
-
-                                  3/23
-                                  ----
-parse.y
-       - minor fix to parse_string_to_word_list to allow newlines in
-         compound array assignments
-
-                                  3/27
-                                  ----
-lib/readline/rltty.c
-       - fixed a missing-semicolon syntax error in the old 4.3 BSD tty code
-
-support/mksignames.c
-       - if SIGRTMAX is >= 2*NSIG, just #undef SIGRTMIN and SIGRTMAX.  This
-         is an issue on AIX 4.3 (only, so far) -- checked by configure, which
-         #defines UNUSABLE_RT_SIGNALS if this is the case
-
-aclocal.m4
-       - new macro, BASH_CHECK_RTSIGS, checks whether or not real-time
-         signals are defined with large values and defines UNUSABLE_RT_SIGNALS
-         if they are
-
-config.h.in
-       - place marker for UNDEF_RT_SIGNALS (initially undefined)
-
-configure.in
-       - call BASH_CHECK_RTSIGS in the `bash miscellaneous' section
-
-                                  3/29
-                                  ----
-
-subst.c
-       - fixed a problem in match_pattern_char, where `string' was checked
-         for a paren following a [?+!@], rather than `pat'
-       - the code that checks whether or not to exit after a failed
-         ${word?msg} substitution needs to check interactive_shell rather
-         than interactive to avoid exiting if such a construct appears in
-         a sourced file
-
-                                  3/31
-                                  ----
-
-bashline.c
-       - add `{' to the list of characters that need to be quoted by the
-         completion code when appearing in a filename
-
-                                   4/1
-                                   ---
-lib/glob/fnmatch.c
-       - fixed an error in brackmatch() while skipping the rest of a bracket
-         expression after a character matched.  When `c' was a backslash and
-         *p was a backslash, as in a pattern like [/\\], the old code didn't
-         take both backslashes into account and ended up skipping the `]'
-         after erroneously concluding that it was quoted.  Report and fix
-         from akim@epita.fr
-
-                                   4/3
-                                   ---
-lib/readline/rltty.c
-       - slight change to the BSD tty interface code, so that if the first
-         ioctl fails, get_tty_settings returns -1 immediately
-       - better checking of ioctl return values in BSD tty version of
-         get_tty_settings
-
-                                   4/5
-                                   ---
-doc/{bash.1,bashref.texi}
-       - documented use of LINES and COLUMNS variables
-
-                                  4/12
-                                  ----
-lib/readline/rltty.c
-       - change the SETATTR define for the termio tty driver to use
-         TCSETAW (the analog of the termios TCSADRAIN)
-
-lib/glob/fnmatch.c
-       - fix for posix-style bracket expressions ([:xxx:], [=x=]) broken
-         by fix of 4/1 for quotes in bracket expressions
-
-                                  4/26
-                                  ----
-subst.c
-       - fix to list_string and get_word_from_string to make a non-whitespace
-         IFS character preceded by IFS whitespace part of the current field
-         delimiter, not a separate delimiter that would result in a separate
-         null field when splitting.  cf POSIX.2, 3.6.5, (3)(b).  Bug reported
-         by amc@cs.berkeley.edu
-       - changed the behavior of the (currently undocumented) ${!prefix@}
-         expansion to be analogous to the expansion of $@ in other contexts
-         when double-quoted.  ksh93 seems to do this.  Bug reported by
-         Ken Pizzini <ken@halcyon.com>
-       - changed read_comsub to ignore NUL bytes in the command substitution
-         output, printing a warning message for now
-
-parse.y
-       - changed shell_getc to ignore NUL bytes in the input, printing a
-         warning message for now
-       - changed read_a_line to print a warning when a NUL byte is encountered,
-         like shell_getc does
-
-                                  5/18
-                                  ----
-subst.c
-       - make sure split_at_delims uses d2 only if it's non-null
-       - make split_at_delims skip leading newlines in the string to split,
-         if newline is a delimiter
-
-jobs.c
-       - prevent hanging processes by marking a child process as not running
-         (even if the shell thinks it is) when waitpid() returns -1/ECHILD --
-         this indicates that waitpid never returned a reasonable status
-         for that child though, which may be a symptom of another problem
-
-builtins/cd.def
-       - make `pwd' print an error message if the write fails when displaying
-         the current directory
-
-lib/readline/histexpand.c
-       - return NULL from history_find_word if history_tokenize_internal
-         returns (char **)NULL rather than attempting to dereference a
-         possibly-NULL pointer
-       - change history_tokenize_internal to set *indp to -1 before any
-         processing if indp is non-null
-
-                                  5/19
-                                  ----
-builtins/trap.def
-       - when in POSIX.2 mode and printing trap dispositions, print the
-         signal name without the leading `SIG', as POSIX.2 requires
-
-                                  5/23
-                                  ----
-lib/readline/readline.c
-       - readline_initialize_everything now assigns $TERM to rl_terminal_name
-         if the application has left it unset, and calls _rl_init_terminal_io
-         with the resultant value
-
-lib/readline/doc/rltech.texinfo
-       - updated the description of rl_terminal_name to note initialization
-
-parse.y
-       - change parse_string_to_word_list to save and restore the value of
-         current_command_line_count before calling back into the parser --
-         it will screw up history if the string extends over one line.  Bug
-         reported by Jan.Djarv@mbox200.swipnet.se
-
-                                   6/7
-                                   ---
-unwind_prot.h
-       - change unwind_protect_string to pass the address of the variable to
-         unwind_protect_var on machines where ints and char *s are not the
-         same size
-
-unwind_prot.c
-       - make sure we save the value of a variable in unwind_protect_var on
-         machines where sizeof(char *) != sizeof(int), not the contents the
-         value points to.  Fix from Andreas Schwab <schwab@suse.de>
-
-                                   6/8
-                                   ---
-configure.in
-       - auto-configure MacOS X without bash malloc (like Rhapsody)
-
-                                  6/12
-                                  ----
-configure.in
-       - replace `cygwin32' with `cygwin'
-
-builtins/evalfile.c
-       - in _evalfile, change all instances of \r to \n in the file to be
-          sourced and evaluated if __CYGWIN__ is defined
-
-input.c
-       - change \r to \n in the buffer argument to make_buffered_stream and
-          after calling zread() from b_fill_buffer if __CYGWIN__ is defined
-
-                                  6/29
-                                  ----
-lib/sh/Makefile.in
-       - add rest of dependency rules for makepath.o
-
-                                   7/3
-                                   ---
-jobs.c
-       - changed `int' to `WAIT' in a couple of places for non-POSIX
-         environments
-
-                                   7/5
-                                   ---
-locale.c
-       - try to avoid an unnecessary memory allocation in localetrans() in
-         the case that a translation for the string exists
-
-lib/readline/doc/rluserman.texinfo
-       - change the `direntry' information to make it use rluserman instead
-         of readline
-
-                                   7/6
-                                   ---
-execute_cmd.c
-       - changes to execute_in_subshell so it honors a `!' prefixing a command
-         inside a user subshell (...)
-
-support/config.{guess,sub}
-       - add cases for Apple Darwin (Mac OS X)
-
-configure.in
-       - Apple Darwin (MacOS X) uses its own malloc
-
-lib/readline/readline.h
-       - removed bogus extern declaration of savestring
-
-                                   7/7
-                                   ---
-builtins/common.c
-       - in get_working_directory, don't count on getcwd returning anything
-         useful in the buffer passed as the first argument on failure; just
-         use bash_getcwd_errstr in the error message
-
-examples/loadables/cut.c
-       - loadable version of cut(1), from the FreeBSD source tree
-
-                                  7/18
-                                  ----
-lib/readline/vi_mode.c
-       - changed two instances of (*rl_getc_function) (rl_instream) to calls
-         to rl_read_key(), which works better when using the readline
-         callback interface
-
-builtins/evalfile.c
-       - added FEVAL_CHECKBINARY flag for _evalfile; controls whether a check
-         for a binary file is performed
-       - FEVAL_CHECKBINARY is not set by source_file or maybe_execute_file,
-         which means that the startup file execution and the `.' builtin will
-         not check for binary files
-       - FEVAL_CHECKBINARY is not set by fc_execute_file, so that files
-         composed of history commands run by the `fc' builtin will not check
-         for binary files
-
-                                  7/21
-                                  ----
-shell.c
-       - added `--init-file' as a synonym for `--rcfile'
-
-                                  7/26
-                                  ----
-support/shobj-conf
-       - added commented-out stanzas for hpux 10 and hpux 11 when the HP
-         unbundled ANSI C compiler is being used
-
-                                  7/27
-                                  ----
-shell.c
-       - don't call end_job_control() from exit_shell if subshell_environment
-         is non-zero, even if the shell is interactive
-
-                                   8/1
-                                   ---
-bashhist.c
-       - change maybe_add_history to remember if we saved the first line of
-         a command and don't save the second and subsequent lines of a
-         multi-line command if we didn't save the first line
-
-configure.in, config.h.in
-       - add autoconf check for getservbyname()
-
-lib/sh/netopen.c
-       - add support for named services in /dev/(tcp|udp)/host/service
-         translation
-       - make sure _netopen sets errno to something other than 0 if something
-         goes wrong, so the redirection functions behave
-
-                                   8/3
-                                   ---
-parse.y
-       - changes to shell_getc so that history saving of blank lines in
-         multi-line commands does a better job of syntactic correctness
-
-bashline.c
-       - bind ^O to operate-and-get-next in emacs_standard_keymap explicitly,
-         rather than letting rl_add_defun do it in whatever keymap is current
-
-                                   8/4
-                                   ---
-builtins/ulimit.def
-       - removed some of the special handling of RLIM_INFINITY -- the old
-         code would let people use RLIM_INFINITY as a shorthand for setting
-         the soft limit to the hard limit.  Now, the code just passes
-         RLIM_INFINITY through if the hard limit is being set, so any kernel
-         errors will get through
-
-                                  8/10
-                                  ----
-parse.y
-       - change the grammar rule for group_command so that it's composed of
-         a compound_list instead of a list, which requires a terminator
-         This means that you can now do (legal) things like
-
-               { { echo a b c ; } }
-
-         since the second close brace will be recognized as such because a
-         reserved word is legal in that context
-
-                                  8/23
-                                  ----
-subst.c
-       - fix parameter_brace_substring to free all memory allocated by
-         get_var_and_type in the VT_ARRAYMEMBER case (returned parameter
-         `val')
-
-                                  8/30
-                                  ----
-variables.c
-       - now that we have dynamic array variables, remove the check for
-         array_p in bind_variable and let array variables with assignment
-         functions call the assignment function
-
-subst.c
-       - change cond_expand_word to perform tilde expansion (like it should
-         have done all along)
-
-lib/readline/complete.c
-       - don't allow backslash to quote anything inside a single-quoted
-         string in find_completion_word
-
-doc/{bash.1,bashref.texi}
-       - note that `set -a' will cause functions to be exported
-
-lib/readline/parens.c
-       - changed the blink timeout so it's settable by the application.  A
-         new function, int rl_set_paren_blink_timeout (int u), (still
-         undocumented) will set the timeout to U usec
-
-variables.c
-       - at startup of an interactive login shell, if the current directory
-         is $HOME, and $HOME and $PWD are not the same, set the current
-         directory (and $PWD) to $HOME
-       - break code that initializes $PWD and $OLDPWD into set_pwd function
-
-variables.h
-       - new extern declaration for set_pwd()
-
-                                   9/6
-                                   ---
-lib/readline/{readline,callback}.c
-       - allocate memory for rl_prompt instead of simply using what's passed
-         as the `prompt' argument to readline() or
-         rl_callback_handler_install().  This will allow constant strings to
-         be passed to readline(), since the prompt processing code wants to
-         write to rl_prompt
-
-lib/sh/pathcanon.c
-       - new file, does pathname canonicalization
-
-externs.h
-       - extern declarations for stuff in lib/sh/pathcanon.c
-
-general.c
-       - canonicalize_pathname now simply calls sh_canonpath()
-
-                                   9/7
-                                   ---
-pcomplete.h
-       - new member in a `struct compspec': options
-       - define some flag values for options field
-
-pcomplib.c
-       - make sure options field is allocated and copied by compspec utility
-         functions
-
-builtins/complete.def
-       - add struct for completion options.  These control the `meta-behavior'
-         of the compspec.  Initially, there are three:
-
-               default - perform bash default completion if programmable
-                         completion produces no matches
-               dirnames - perform directory name completion if programmable
-                          completion produces no matches
-               filenames - tell readline that the compspec produces filenames,
-                           so it can do things like append slashes to
-                           directory names and suppress trailing spaces
-
-       - add `-o option' to complete and compgen, setting new options field
-         in a compspec
-       - add code to display any -o options when a compspect is printed
-         with the `-p' option to complete
-
-pcomplete.c
-       - programmable_completions now passes back to the caller in the last
-         argument any options associated with the active compspec (from the
-         options field)
-       - change gen_compspec_completions to re-call gen_action_completions
-         with a CA_DIRECTORY action if the rest of the compspec actions
-         generate no matches and the COPT_DIRNAMES option is present
-
-bashline.c
-       - if a programmable completion was specified to return filenames with
-         the `-o filenames' option, set rl_filename_completion_desired to 1
-         so readline does its special filename-specific things
-       - if a compspec was defined to fall back to the readline default with
-         the `-o default' option, suppress setting the
-         rl_attempted_completion_over variable in attempt_shell_completion
-         so readline will go on and do filename completion
-
-include/ansi_stdlib.h
-       - add extern declarations for atof and strtod
-
-builtins/printf.def
-       - change getdouble() to use strtod (since we provide a version in
-         libsh if the C library doesn't have one), and change the calling
-         convention to match the other getXXX functions (take value pointer
-         as argument, return success or failure).  This makes printf handle
-         invalid floating point numbers better
-
-doc/bash.1, lib/readline/doc/rluser.texinfo
-       - documented new `-o' option to complete and compgen; described the
-         arguments and their effects
-
-lib/readline/{macro,util}.c
-       - renamed _rl_executing_macro to rl_executing_macro; made it public
-
-lib/readline/readline.h
-       - new extern declaration for rl_executing_macro
-
-lib/readline/rltech.texinfo
-       - documented rl_executing_macro
-
-                                   8/8
-                                   ---
-lib/readline/readline.c
-       - new state variable, rl_readline_state
-
-lib/readline/readline.h
-       - extern declaration for rl_readline_state
-       - define some flag bits for rl_readline_state and macros to test and
-         set them
-
-lib/readline/{readline,complete,isearch,macro,rltty,search,signals,undo,vi_mode}.c
-       - added calls to the macros that set and unset various readline states
-
-lib/readline/readline.c
-       - new private function, _rl_free_saved_history_line, to free up the
-         history entry saved in saved_line_for_history
-
-lib/readline/search.c
-       - free any saved history entry in rl_history_search_reinit(), because
-         rl_get_previous_history makes a call to maybe_save_line without
-         freeing up the saved line when it returns (so rl_get_next_history
-         can use it)
-       - fix up noninc_search_from_pos to deal with invalid history indices
-         better
-
-                                  9/12
-                                  ----
-support/shobj-conf
-       - HPUX 11.0 needs the `-fpic' flag passed to the linker as well as
-         the compiler
-
-execute_cmd.c
-       - on MS-DOS systems, let the #! checking stuff in execute_shell_script
-         treat \r as EOL (identical to \n)
-
-input.c
-       - on DJGPP systems, allow buffered_getchar to ignore \r.  Change
-         suggested by snowball3@bigfoot.com
-
-                                  9/13
-                                  ----
-lib/sh/tmpfile.c
-       - new file, with functions for creating and (hopefully safely) opening
-         temporary files for the shell
-
-externs.h
-       - extern declarations for functions in tmpfile.c
-
-variables.c
-       - new function, get_random_number, returns random values from the
-         shell's (lame) RNG to the rest of the shell
-
-variables.h
-       - new extern declaration for get_random_number()
-
-subst.c
-       - changed make_named_pipe to call sh_mktmpname instead of mktemp
-
-redir.c
-       - changed here_document_to_fd to call sh_mktmpfd instead of using
-         inline code
-
-builtins/fc.def
-       - changed fc_builtin to call sh_mktmpfp instead of using inline code
-
-builtins/common.h
-       - new extern declaration for fc_execute_file()
-
-bashline.c
-       - if RL_ISSTATE(RL_STATE_INITIALIZED) is 0 in initialize_readline,
-         call rl_initialize to bind the defaults before setting up our
-         custom shell functions and key bindings
-
-lib/readline/doc/{rluser,hsuser}.texinfo
-       - some markup changes proposed by dima@chg.ru
-
-lib/readline/rlstdc.h, lib/tilde/tilde.h
-       - to get ready for some `const' changes to the source, define const
-         as either `__const' (gcc -traditional) or nothing if __STDC__ and
-         __cplusplus are not defined
-
-lib/readline/readline.c
-       - upped the default readline version to `4.2-alpha'
-
-lib/readline/readline.[ch]
-       - readline now takes a `const char *' as an argument
-
-lib/readline/history.h
-       - read_history(), read_history_range(), write_history(),
-         append_history(), history_truncate_file() now take `const char *'
-         filename arguments
-
-lib/readline/histfile.c
-       - history_filename(), read_history(), read_history_range(),
-         write_history(), append_history(), history_truncate_file(),
-         history_do_write() now take `const char *' filename arguments
-
-lib/readline/readline.h
-       - rl_read_init_file() now takes a `const char *' filename argument
-
-lib/readline/bind.c
-       - current_readline_init_file is now a `const char *'
-       - _rl_read_init_file(), rl_read_init_file() now take `const char *'
-         filename arguments
-
-lib/tilde/tilde.c
-       - tilde_expand(), tilde_expand_word() now take a `const char *'
-         as their first argument
-
-lib/readline/chardefs.h
-       - fixed CTRL_CHAR macro to be right on systems where chars are unsigned
-         by default
-
-                                  9/14
-                                  ----
-lib/readline/doc/{rl,hs}tech.texinfo
-       - documented new `const char *' function arguments where appropriate
-
-lib/readline/vi_mode.c
-       - clamp the numeric argument in vi mode at 999999, just like in emacs
-         mode
-
-lib/readline/doc/rltech.texinfo
-       - documented rl_readline_state and its possible bit values
-
-builtins/source.def
-       - in maybe_pop_dollar_vars, don't overwrite a shell function's
-         argument list even if the sourced script changes the positional
-         parameters
-
-lib/readline/{util.c,rlprivate.h}
-       - made _rl_strindex() and _rl_savestring() take `const char *'
-         arguments
-
-                                  9/15
-                                  ----
-subst.c
-       - renamed `doing_completion' to `no_longjmp_on_fatal_error', a more
-         accurate description of its current behavior
-
-pcomplete.[ch], externs.h, lib/sh/stringlist.c
-       - moved the stringlist code from pcomplete.c to lib/sh/stringlist.c
-       - moved the type declaration and extern function declarations from
-         pcomplete.h to externs.h
-
-stringlib.c, externs.h, lib/sh/stringvec.c
-       - moved the char array code from stringlib.c to lib/sh/stringvec.c
-
-                                  9/18
-                                  ----
-subst.c
-       - new static variable, expand_no_split_dollar_star, to ensure that
-         $* isn't `split and rejoined' when expanded via a call to
-         expand_string_unsplit or expand_word_no_split
-
-                                  9/19
-                                  ----
-subst.[ch], execute_cmd.c
-       - renamed expand_word_no_split to expand_word_unsplit
-
-copy_cmd.c
-       - in copy_word, just assign w->flags to new_word->flags rather than
-         bcopying the entire structure
-
-configure.in, config.h.in
-       - add autoconf check for pathconf(3)
-
-lib/sh/tmpfile.c
-       - test for systems with short filenames using pathconf and
-         _PC_NAME_MAX, so generated temp file names don't exceed that length
-         (only do this if the file name length is less than 32, since the
-         current code doesn't generate filenames longer than about 17 chars)
-
-                                  9/20
-                                  ----
-command.h
-       - added `W_NOSPLIT2' word flag to prepare for supporting weird $@
-         expansion on the rhs of assignment statements (inspecting the ksh93
-         behavior, it seems like nothing except $@ is split, and $@ is split
-         on $IFS and rejoined as a single string)
-
-                                  9/21
-                                  ----
-subst.c
-       - since verify_substring_values looks for arithmetic expressions
-         bounded by `:', do some ad-hoc parsing of the substring passed as
-         the argument to avoid cutting the expression off at the wrong `:'
-         (since the inclusion of conditional expressions, expressions may
-         contain a `:').  Do some paren balancing, too.
-
-                                  9/22
-                                  ----
-command.h
-       - new #define, CLOBBERING_REDIRECT, evaluates to true for any redirect
-         that will clobber a file and should be subject to `noclobber'
-
-redir.c
-       - changed redir_open to use CLOBBERING_REDIRECT instead of
-         OUTPUT_REDIRECT.  This means that <> no longer tests the value of
-         noclobber, as POSIX.2 specifies
-
-parse.y
-       - made a change to cond_term so that expressions like [[ (x) ]] are
-         parsed correctly
-
-                                  9/25
-                                  ----
-parse.y
-       - small change to grammar for arith_for_command and special_case_tokens
-         to allow `do...done' or {...} after ((...)) without an intervening
-         list_terminator (for ksh93 compatibility)
-
-builtins/printf.def
-       - `printf' now treats \E and \e the same when performing backslash
-         escape expansion for the %b format character for compatibility with
-         $'...' quoting (for ksh93 compatibility)
-
-                                  9/26
-                                  ----
-builtins/source.def
-       - new variable, source_searches_cwd, initially 1.  If non-zero, `.'
-         searches $PWD for the filename argument if it's not found in $PATH
-
-general.c
-       - changed posix_initialize to turn off source_searches_cwd if posix
-         mode is being enabled; turn it on if posix mode is being disabled
-       - changed things so interactive_comments is not turned off if posix
-         mode is disabled, since that's rarely what is desired
-
-variables.c
-       - changed uidset() to set UID and EUID only if they are not already
-         set when the shell starts up
-       - changed things to HOSTNAME is set only if it's not set when the
-         shell starts up
-
-execute_cmd.c
-       - changed execute_builtin_or_function so that if a command like
-         `command exec 4<file' is executed, the effect is as if the `command'
-         had been omitted, as POSIX.2 requires
-
-subst.c
-       - changed array_length_reference to support ${foo[X]} when foo is not
-         an array variable and X is 0, @, or * (everything else returns 0)
-         for ksh compatibility
-       - changed array_value_internal to support ${foo[@]} and ${foo[*]}
-         when foo is not an array variable (as ksh does)
-
-                                  9/27
-                                  ----
-general.h
-       - added defines for ABSPATH (absolute pathname), RELPATH (relative
-         pathname, and ROOTEDPATH (pathname rooted at /), with different
-         definitions for Unix and Cygwin
-       - added defines for DIRSEP (the directory separator in pathnames,
-         and ISDIRSEP (whether a particular character is the directory
-         separator)
-       - added PATHSEP define: takes a character and decides whether it
-         delimits a filename component of a pathname
-       - changed isletter(c) #define to just call isalpha(c)
-
-lib/sh/pathcanon.c
-       - changed to use new pathname #defines from general.h above
-
-general.c
-       - changed make_absolute, absolute_pathname to understand
-         Cygwin's idea of an absolute pathname: [[:upper:][:lower:]]:/
-       - rewrote absolute_pathname to use PATHSEP and ABSPATH
-       - changed full_pathname to use ABSPATH
-
-variables.c
-       - changed get_bash_name to use ABSPATH and RELPATH, and to handle the
-         case when $PWD is unset when it is called
-
-subst.c
-       - if compiling on cygwin, translate \r\n to \n when reading the output
-         of a command substitution in read_comsub()
-
-                                  9/28
-                                  ----
-input.c, shell.c, builtins/read.def, lib/tilde/tilde.c
-       - changed __CYGWIN32__ to __CYGWIN__
-
-lib/readline/{bind,funmap,kill}.c, lib/readline/readline.h
-       - changed __CYGWIN32__ to __CYGWIN__
-
-input.c
-       - a couple of minor changes to clean up the code
-
-parse.y
-       - changed shell_getc and shell_ungetc to implement one character of
-         lookahead/lookbehind when pushing a character back at the start
-         of an input line (the old code would have discarded it because
-         shell_input_line_index was 0)
-
-lib/readline{histsearch.c,history.h}
-       - history_search_internal, history_search, history_search_prefix,
-         history_search_pos now take const char * string arguments
-
-lib/readline/{histexpand.c,history.h}
-       - get_history_event, history_arg_extract, history_tokenize_internal,
-         history_tokenize now take const char * string arguments
-
-lib/readline/{history.c,history.h}
-       - add_history, replace_history_entry now take const char * string
-         arguments
-
-lib/readline/{bind.c,readline.h}
-       - rl_add_defun, rl_unbind_command_in_map, rl_set_key, rl_macro_bind,
-         rl_generic_bind, rl_translate_keyseq, rl_named_function,
-         rl_function_of_keyseq, rl_variable_bind, rl_get_keymap_by_name
-         now take const char * string arguments where appropriate
-       - rl_function_dumper, rl_list_funmap_names needed changes to deal
-         with rl_funmap_names returning const char **
-       - rl_readline_name is now a const char * variable
-
-lib/readline/keymaps.h
-       - duplicate definition of rl_get_keymap_by_name needs const changes
-
-lib/readline/{bind.c,rlprivate.h}
-       - _rl_bind_if_unbound takes a const char * string argument
-
-lib/readline/{funmap.c,readline.h}
-       - rl_add_funmap_entry now takes a const char * string argument
-       - rl_funmap_names now returns a const char **
-       - a FUNMAP now has a const char *name member
-
-lib/readline/{terminal.c,readline.h,rlprivate.h}
-       - _rl_init_terminal_io, rl_get_termcap, rl_reset_terminal,
-         _rl_output_some_chars now take const char * string arguments
-
-lib/readline/{readline.[ch],rlprivate.h}
-       - rl_library_version and rl_terminal_name are now const char *
-         variables
-       - rl_insert_text, _rl_replace_text now take const char * string
-         arguments
-
-lib/readline/{callback.c,readline.h}
-       - rl_callback_handler_install takes a const char * string argument
-
-lib/readline/doc/{rltech,hstech}.texinfo
-       - changed documentation for newly-consted functions and variables
-
-lib/readline/{complete.c,readline.h}
-       - rl_strpbrk now takes const char * string arguments
-       - username_completion_function and filename_completion_function
-         now take const char * string arguments
-       - rl_basic_word_break_characters, rl_basic_quote_characters,
-         rl_completer_word_break_characters, rl_completer_quote_characters,
-         rl_filename_quote_characters, rl_special_prefixes are all
-         const char * variables
-
-lib/readline/{display.c,rlprivate.h}
-       - _rl_move_cursor_relative takes a const char * string argument
-
-redir.c
-       - change from tbisp@uswest.net to fix a problem with cygwin and
-         here_document_to_fd, since cygwin doesn't allow a file to be
-         unlinked if there is a descriptor open on it
-
-display.c
-       - fixed a slight bug in the logic deciding whether or not to redraw
-         a prompt containing invisible characters in update_line.  Fixes
-         bug reported by bdluevel@heitec.net
-
-                                  9/29
-                                  ----
-shell.c
-       - fixed a problem with a too-aggressive setting of restricted shell
-         mode based on shell_name.  Old code set `restricted' even after a
-         longjmp due to shell_execve trying to execute an executable script
-         without a leading `#!', though that case should result in an
-         unrestricted shell
-
-                                  10/2
-                                  ----
-copy_cmd.c
-       - make sure copy_function_def copies the `flags' and `line' members
-         of the function_def
-
-parse.y
-       - make the function_def production take a new function_body parse
-         unit, which is currently just a group_command (in prep for future
-         changes)
-
-builtins/printf.def
-       - changed getint, getlong, getulong, getdouble to print warnings on
-         range errors and return the clamped values that strtol/strtod
-         return, as POSIX.2 specifies
-
-                                  10/3
-                                  ----
-parse.y
-       - made a function_def a `command' instead of a `shell_command'
-         This makes the grammar more closely resemble that supplied in
-         the POSIX.2 standard
-       - made a `function_body' be like the function_body production in
-         the POSIX.2 standard.  This relaxes the restriction that the
-         body be composed of a group_command, but introduces a YACC
-         shift/reduce conflict
-
-print_cmd.c
-       - changes to named_function_string (for normal function printing)
-         and print_function_def (for printing function definitions embedded
-         in other commands) to print redirections that should be attached
-         to the function as a whole after the closing brace, because of
-         the changes to the parser
-
-tests/func2.sub
-       - tests for new function declarations whose bodies are not group
-         commands -- the command printing code still prints them with the
-         braces
-
-                                  10/4
-                                  ----
-lib/sh/pathphys.c
-       - new function, sh_physpath, resolves symlinks in pathname passed
-         as argument
-
-builtins/cd.def
-       - changed pwd_builtin to use sh_physpath if -P supplied or in
-         physical mode
-       - changed bindpwd to use sh_physpath if the no_symlinks argument is
-         non-zero
-       - changed change_to_directory to use sh_physpath and set
-         the_current_working_directory appropriately if the `nolinks'
-         argument is non-zero
-
-                                  10/5
-                                  ----
-variables.c, bashline.c, builtins/cd.def
-       - replaced calls to canonicalize_pathname with sh_canonpath
-
-builtins/cd.def
-       - rewrote change_to_directory to make it much shorter and simpler
-
-command.h
-       - added SUBSHELL_PIPE as possible flag value for subshell_environment
-
-execute_cmd.c
-       - execute_simple_command sets SUBSHELL_PIPE in subshell_environment
-         if the command has a pipe in or out
-
-subst.c
-       - don't reset pipeline_pgrp to shell_pgrp in command_substitute if
-         we're already in a pipline
-         ((subshell_environment & SUBSHELL_PIPE) != 0)
-
-                                  10/6
-                                  ----
-subst.c 
-       - change command_substitute to call setmode(fd, O_TEXT) on the pipe
-         file descriptor if __CYGWIN__ is defined; remove the other code
-         that converts CR/LF to LF on cygwin
-
-                                  10/9
-                                  ----
-stringlib.c
-       - change strcreplace() to make sure that RESIZE_MALLOCED_BUFFER is
-         called everywhere characters are added
-
-                                  10/11
-                                  -----
-lib/sh/spell.c
-       - new file, with the spelling correction code from builtins/cd.def
-
-builtins/cd.def
-       - a little surgery on cd_builtin, to make the structure clearer
-
-                                  10/12
-                                  -----
-builtins/read.def
-       - include fcntl.h and io.h on __CYGWIN__
-       - set mode of fd 0 to O_TEXT if __CYGWIN__ and O_TEXT are both
-         defined
-
-shell.c
-       - in open_shell_script, set mode of fd opened to the shell script
-         to O_TEXT if __CYGWIN__ and O_TEXT are both defined
-
-builtins/evalfile.c
-       - changed the __CYGWIN__ code to call setmode(fd, O_TEXT) instead
-         of translating \r to \n after the read() returns
-
-                                  10/13
-                                  -----
-lib/sh/strtrans.c, stringlib.c
-       - moved ansicstr() from stringlib.c to new file lib/sh/strtrans.c
-       - new function ansic_quote, to quote a string with $'...'
-
-lib/sh/strindex.c, stringlib.c
-       - moved strindex() from stringlib.c to new file lib/sh/strindex.c
-
-lib/sh/Makefile.in
-       - compile `shquote.c' in as part of the shell library
-       - compile `strtrans.c' in as part of the shell library
-       - compile `strindex.c' in as part of the shell library
-
-Makefile.in
-       - link with libsh before any of the readline libraries
-
-builtins/common.c
-       - removed the functions also appearing in lib/sh/shquote.c
-
-externs.h, builtins/common.h
-       - moved extern declarations for functions in lib/sh/shquote.c to
-         externs.h from builtins/common.h
-
-variables.c
-       - print_var_value (used in the output of `set') now calls
-         ansic_quote to quote the value, so any non-printable characters
-         are displayed
-
-                                  10/14
-                                  -----
-syntax.h
-       - new file, with definitions from shell.h having to do with shell
-         syntax, metacharacters, and quoting
-
-parse.y
-       - moved defines for shell metachars and other char class declarations
-         to syntax.h
-
-shell.h
-       - now includes syntax.h
-
-Makefile.in,builtins/Makefile.in,lib/sh/Makefile.in
-       - added syntax.h to appropriate dependency lists
-
-                                  10/16
-                                  -----
-mksyntax.c
-       - new program, to build a syntax table for the shell at compile time
-
-Makefile.in
-       - new generated file, syntax.c, generated by mksyntax
-
-general.h
-       - `digit(x)' is now just defined as `isdigit(x)'
-
-syntax.h
-       - now that we have sh_syntaxtab[], change the appropriate defines
-         to use it
-
-parse.y, subst.c
-       - change checks of member(c, slashify_in_quotes) to test
-         sh_syntaxtab[c] & CBSDQUOTE
-
-builtins/set.def
-       - corrected the help text for `unset', since PATH and IFS may be
-         unset
-
-subst.c
-       - changed explicit tests for shell special parameters using member()
-         or strchr() to test (sh_syntaxtab[c] & CSPECVAR) instead
-       - changed some boilerplate calls to member() that test for validity
-         of various characters in the expansion process to macros for
-         efficiency
-
-lib/sh/shquote.c
-       - changed some of the functions to use checks against sh_syntaxtab[]
-         flag values
-
-                                  10/19
-                                  -----
-findcmd.c
-       - find_user_command_in_path no longer finds directories if the caller
-         specified FS_NODIRS in the flags argument.  This fixes the bug of
-         hashing directory names, at the loss of some information about
-         attempting to execute directories
-
-builtins/hash.def
-       - hash -p dirname name no longer puts directories into the hash table
-
-                                  10/26
-                                  -----
-builtins/read.def
-       - make sure that the last unwind-protect added is the one that calls
-         xfree(input_string), so that this is the top element on the
-         unwind-protect stack
-       - if xrealloc() is called to increase the size of input_string, make
-         sure to remove the top element from the unwind-protect stack (the
-         old xfree) and add a new one, in case realloc() freed the original
-         input_string and allocated new space.  This fixes the bug of bash
-         crashing because it's trying to free already-freed memory if the
-         `read' is interrupted (reported by klausf@Pool.Informatik.RWTH-Aachen.DE)
-
-                                  10/27
-                                  -----
-subst.c
-       - fixed a problem in expand_word_list_internal so that
-         last_command_exit_value is set to 1 if a variable assignment fails
-         and a jump_to_top_level (DISCARD) is taken.  This fixes the problem
-         of assignment statements to read-only variables appearing to succeed
-         (though it always worked right in non-interactive posix-mode shells)
-
-                                  10/30
-                                  -----
-lib/readline/readline.h
-       - rl_completion_entry_function is now of type CPFunction *, since
-         that's the actual type that's used, and casting function pointers
-         of different types (which happened all the time as a result), is
-         problematic on some architectures
-
-lib/readline/complete.c
-       - changed entry function argument to gen_completion_matches to be of
-         type CPFunction *, since that's how it's used
-       - changed variables that are completion entry function pointers to be
-         of type CPFunction *, removed problematic typecasts
-
-lib/readline/doc/rltech.texinfo
-       - documented type change for rl_completion_entry_func
-
-lib/readline/rltypedefs.h
-       - new file, with all the readline function typedefs
-
-lib/readline/rltypedefs.h
-       - new typedef, rl_command_func_t, which is a function returning
-         an int
-       - a KEYMAP_ENTRY now contains a pointer to an rl_command_func_t
-       - new typedef, rl_compentry_func_t, which is a function returning
-         a char *
-       - new typdef, rl_completion_func_t, which is a function returning
-         a char **
-       - new typedef, rl_quote_func_t, which is a function returning a
-         char *
-       - new typedef, rl_dequote_func_t, which is a function returning a
-         char *
-       - new typedef, rl_compignore_func_t, which is a function returning a
-         char *
-       - new typedef, rl_compdisp_func_t, which is a void function taking
-         a char **, int, int argument list
-       - new typedef, rl_hook_func_t, which is a function taking no args
-         and returning an int (used for input and other hooks)
-       - new typedef, rl_modterm_func_t, which is a void function tkaing
-         an int, used to modify terminal (rl_prep_term_function)
-       - new typedef, rl_getc_func_t, which is an int-returning function
-         that takes a FILE *
-       - new typedef, rl_linebuf_func_t, which takes a string and an int
-         index and returns an int
-       - new generic typedefs, rl_intfunc_t and rl_voidfunc_t, which are
-         functions which take and return int and void, respectively 
-       - new generic typedef, rl_vintfunc_t, which takes an int and returns
-         void
-       - new generic typedefs, rl_icpfunc_t and rl_vcpfunc_t, which take a
-         char * and return int and void, respectively
-       - new generic typedefs, rl_icppfunc_t and rl_vcppfunc_t, which take
-         a char ** and return int and void, respectively
-
-lib/readline/rlprivate.h
-       - rl_last_func is now of type rl_command_func_t *
-
-lib/readline/readline.c
-       - declare rl_last_func as rl_command_func_t *
-
-lib/readline/{bind,readline,vi_keymap,emacs_keymap,funmap,keymaps,isearch}.c
-lib/readline/readline.h
-       - change appropriate cases of (Function *) to (rl_command_func_t *)
-
-lib/readline/{readline.h,bind.c}
-       - rl_named_function and rl_function_of_keyseq now return a
-         (rl_command_func_t *)
-
-lib/readline/bind.c
-       - changed type of functions in parser function table from Function *
-         to _rl_parser_func_t *
-
-lib/readline/funmap.c
-       - removed `vi-bracktype' from vi function map -- it's not a
-         bindable function
-
-lib/readline/{readline.h,complete.c}
-       - changed appropriate uses of CPFunction * to rl_compentry_func_t *
-         or rl_quote_func_t *
-
-lib/readline/{rltty.c,readline.h}
-       - rl_prep_term_function is now of type rl_vintfunc_t *
-       - rl_deprep_term_function is now of type rl_voidfunc_t *
-
-lib/readline/{keymaps,history.h}
-       - include rltypedefs.h or <readline/rltypedefs.h> as appropriate
-
-lib/readline/{display.c,readline.h}
-       - rl_redisplay_func is now of type rl_voidfunc_t *
-
-lib/readline/{callbacks.c,readline.h}
-       - the `linefunc' argument to rl_callback_handler_install and the
-         rl_linefunc variable are now of type rl_vcpfunc_t *
-
-lib/readline/{complete.c,readline.h}
-       - rl_completion_display_matches_hook is now of type
-         rl_compdisplay_func_t *
-       - rl_directory_completion_hook is now of type rl_icppfunc_t *
-
-lib/readline/{history.h,histexpand.c}
-       - history_inhibit_expansion_function is now of type
-         rl_linebuf_func_t *
-
-lib/readline/histexpand.c
-       - new private type, _hist_search_func_t, used to indirect through
-         the various history search functions
-
-lib/tilde/tilde.h
-       - new typedef, tilde_hook_func_t, which takes a char * and returns
-         a char *
-
-lib/tilde/tilde.[ch]
-       - tilde_expansion_preexpansion_hook and tilde_expansion_failure_hook
-         are now of type tilde_hook_func_t *
-
-[THERE ARE NO LONGER ANY REFERENCES TO Function *, CPFunction *, or
-CPPFunction * IN THE READLINE SOURCE, WHICH INCLUDES THE TILDE LIBRARY]
-
-{bashline,bracecomp}.c, bashline.h
-       - changes for changed type of rl_completion_entry_func and other
-         changed types (rl_compentry_func_t, rl_completion_func_t,
-         const changes for prototypes, etc.)
-
-pathexp.[ch]
-       - shell_glob_filename now takes a `const char *' argument
-       - quote_string_for_globbing now takes a `const char *' argument
-
-                                  10/31
-                                  -----
-lib/sh/zwrite.c
-       - fix zwrite() to update the buffer pointer in the case of a
-         partial write, in addition to decreasing the count of bytes to
-         be written
-
-support/config.{guess,sub}
-       - added entries for MIPS-based Compaq machines running NonStopUX
-
-                                  11/1
-                                  ----
-lib/readline/undo.c
-       - renamed free_undo_list to be rl_free_undo_list, made a dummy
-         replacement function free_undo_list that just calls
-         rl_free_undo_list
-
-lib/readline/readline.h
-       - extern declaration for rl_free_undo_list
-
-lib/readline/{readline,signals}.c
-       - changed calls to free_undo_list to rl_free_undo_list
-
-lib/readline/doc/rltech.texinfo
-       - changed all function types and arguments for new typedefs
-
-                                  11/2
-                                  ----
-lib/readline/{rlprivate.h,terminal.c,display.c}
-       - term_clreol, term_clrpag, term_cr, term_backspace, term_goto,
-         term_pc, term_im, term_ei, term_ic, term_ip, term_IC, term_dc,
-         term_DC, term_forward_char, term_up, term_mm, term_mo, term_ku,
-         term_kd, term_kr, term_kl, term_ks, term_ke, term_kh, term_kH,
-         terminal_can_insert variables all now have a _rl_ prefix
-
-lib/readline/{rlprivate.h,terminal.c,display.c, readline.c}
-       - screenheight, screenwidth, screenchars now have an _rl_ prefix
-
-lib/readline/{terminal,complete,isearch,kill,macro,readline,search,undo,util,vi_mode}.c
-       - changed calls to ding to calls to rl_ding
-
-lib/readine/{isearch,readline,search}.c
-       - saved_line_for_history now has an _rl_ prefix
-
-lib/readline/readline.[ch]
-       - renamed maybe_{replace,save,unsave} line to have an rl_ prefix
-
-lib/readline/{readline,search,isearch}.c
-       - changed calls to maybe_{replace,save,unsave} line to call the
-         rl_-prefixed equivalents
-
-lib/readline/{rlprivate.h,readline.c,util.c}
-       - renamed alphabetic to rl_alphabetic; changed calls
-
-lib/readline/{bind.c,funmap.c,rlprivate.h}
-       - possible_control_prefixes -> _rl_possible_control_prefixes
-       - possible_meta_prefixes -> _rl_possible_meta_prefixes
-
-lib/readline/compat.c
-       - new file for entry points for backwards compatibility functions
-       - moved free_undo_list here from undo.c
-       - maybe_{replace,save,unsave}_line function that call their rl_
-         counterparts
-       - moved ding() here; it just calls rl_ding()
-       - moved alphabetic here; it just calls _rl_alphabetic()
-
-lib/readline/Makefile.in
-       - make sure compat.o is built and linked appropriately
-
-bashline.c,pcomplete.c
-       - changed calls to ding() to call rl_ding()
-
-support/shobj-conf
-       - changed linux stanza SHLIB_XLDFLAGS to make the `soname' in a
-         shared library have only the major version number, rather than
-         major and minor numbers
-       - made analogous changes for bsd/os-4
-       - changed freebsd 3.x stanza to match `freebsdelf[3-9]*' for
-         FreeBSD elf systems and `freebsdaout[3-9]*' for FreeBSD
-         a.out systems (are there any?)
-
-lib/readline/doc/{rluser,hsuser}.texinfo
-       - changed uses of @samp to @option where appropriate
-
-doc/bashref.texi
-       - changed uses of @samp to @option where appropriate
-
-                                  11/3
-                                  ----
-lib/readline/{readline.h,complete.c,compat.c}
-       - completion_matches, username_completion_function,
-         filename_completion_function all have an rl_ prefix
-
-{bashline,bracecomp,pcomplete}.c
-       - changed calls to completion_matches, username_completion_function,
-         and filename_completion_function
-
-lib/sh/shquote.c
-       - single_quote, double_quote, un_double_quote, backslash_quote,
-         backslash_quote_for_double_quotes, contains_shell_metas all now
-         have an sh_ prefix
-
-externs.h
-       - changed extern declarations for functions from shquote.c
-
-{array,bashline,pcomplete,print_cmd,variables}.c, parse.y
-builtins/{alias,complete,trap,type}.def
-       - changed callers of single_quote
-
-{array,bashline}.c, builtins/setattr.def
-       - changed callers of double_quote
-
-{bashline,bracecomp}.c, parse.y, builtins/printf.def
-       - changed callers of backslash_quote
-
-parse.y
-       - changed callers of backslash_quote_for_double_quotes
-
-{print_cmd,variables}.c
-       - changed callers of contains_shell_metas
-
-lib/readline/{rlshell.h,shell.c,histexpand.c}
-       - single_quote -> sh_single_quote
-
-lib/readline/{rlshell.h,shell.c,input.c}
-general.[ch],shell.c,subst.c
-        - unset_nodelay_mode -> sh_unset_nodelay_mode
-
-lib/readline/{rlshell.h,shell.c}, lib/tilde/tilde.c, variables.c
-       - get_home_dir -> sh_get_home_dir
-
-lib/readline/rlshell.h,lib/readline/bind,histfile,nls,readline,shell,terminal}.c, lib/tilde/tilde.c, variables.c
-       - get_env_value -> sh_get_env_value
-
-lib/readline/rlshell.h,lib/readline/{shell,terminal}.c
-variables.h,{jobs,nojobs,variables}.c
-       - set_lines_and_columns -> sh_set_lines_and_columns
-
-                                  11/6
-                                  ----
-configure.in
-       - bash can only link with an already-installed readline library whose
-         version is 4.2 or greater
-
-variables.h
-       - new variable attribiute, noassign, with its accompanying test macro,
-         noassign_p.  Completely internal, not user-settable
-
-execute_cmd.c
-       - treat noassign variables like readonly variables, except an attempt
-         to assign to them does not cause a non-interactive shell in POSIX
-         mode to abort
-
-{subst,variables}.c,builtins/declare.def
-       - attempts to assign to `noassign' variables return an error status,
-         but no error messages -- almost identical to readonly variables
-
-variables.c
-       - GROUPS and FUNCNAME are `noassign' variables, meaning assignment to
-         them is disallowed, but that they may be unset (in which case they
-         lose their special properties)
-
-doc/{bash.1,bashref.texi}
-       - documented that assignments to GROUPS and FUNCNAME are disallowed
-         and return an error status
-
-                                  11/8
-                                  ----
-lib/readline/{funmap.c,bind.c,rlprivate.h}
-       - _rl_possible_{control,meta}_prefixes are now arrays of `const char *'
-         and are defined in bind.c, since that's where they're used
-
-lib/readline/rltty.c
-       - changed prepare_terminal_settings to take an `oldtio' argument
-         instead of `otio', which shadows the global declaration
-
-lib/readline/bind.c
-       - the `name' member of a parser_directive element is now a
-         `const char *'
-       - the `name' member of a boolean_varlist element is now a
-         `const char *'
-       - the `name' member of a string_varlist element is now a
-         `const char *'
-       - the `name' member of an assoc_list element is now a
-         `const char *'
-       - the `name' member of an keymap_names element is now a
-         `const char *'
-
-lib/readline/display.c
-       - changed scope-local char * variable `temp' to `vtemp' because
-         there's already a function local variable named `temp' of a
-         different type (int) in rl_redisplay
-
-lib/readline/util.c
-       - pathname_alphabetic_chars is now `const char *'
-
-lib/readline/terminal.c
-       - the `tc_var' member of a _tc_string element is now a
-         `const char *'
-
-lib/readline/histexpand.c
-       - changed history_expand_internal to remove the duplicate local
-         declaration of `t' in the `s'/`&' case
-
-lib/readline/histfile.c
-       - in history_filename, `home' is now a `const char *'
-
-lib/tilde/tilde.c
-       - default_prefixes and default_suffixes are now arrays of
-         `const char *'
-
-lib/readline/vi_mode.c
-       - vi_motion and vi_texmod are now `const char *'
-
-lib/readline/complete.c
-       - simplified the conditional declaration of getpwent()
-
-variables.[ch]
-       - get_string_value now takes a `const char *' argument
-
-                                  11/10
-                                  -----
-display.c
-       - changes to expand_prompt and rl_redisplay to keep track of the number
-         of invisible characters on the first line of the prompt, in case it
-         takes up more than one physical line, and not all invisible chars are
-         on the first line
-       - the code that determines the index into the line at which to wrap the
-         first line if the visible prompt length exceeds the screen width was
-         changed to use the number of invisible chars in the first physical
-         prompt line rather than the total number of invisible characters
-       - changed redraw_prompt to save and restore prompt_invis_chars_first_line
-
-subst.c
-       - changed expand_string_internal to savestring() the string argument
-         to avoid possible doubly-freed memory on substitution errors
-       - fixed expand_word_list_internal so that commands with assignment
-         statements preceding words that expand to nothing return a failure
-         status if one of the assignments fails; for example
-
-               readonly TVAR
-               TVAR=7 $ECHO $ABCDE
-       - made sure that all cases of jump_to_top_level set
-         last_command_exit_value to something non-zero before jumping, since
-         they are by definition errors
-
-builtins/evalstring.c
-       - changed parse_and_execute to set last_result to EXECUTION_FAILURE
-         along with last_command_exit_value in the `DISPOSE' case of a
-         jump_to_top_level, since we can return this value in most
-         (interactive) circumstances
-
-                                  11/14
-                                  -----
-general.c
-       - fix legal_number so that it skips any trailing whitespace in its
-         string argument after strtol returns, since strtol does not
-
-lib/readline/{complete.c,readline.h}
-       - new function pointer, rl_directory_rewrite_hook, identical in effect
-         to rl_directory_completion_hook except that it does not modify what
-         is displayed when the possible completions are listed or inserted
-
-bashline.c
-       - changed tcsh_magic_space to try and insert a space closer to where
-         the point was originally, rather than always inserting it at the
-         end of the line
-
-                                  11/16
-                                  -----
-jobs.c
-       - fixed a bug that happened on cygwin systems that caused the jobs
-         table to fill up if a file sourced from an interactive shell ran
-         lots of jobs -- notify_and_cleanup() never called notify_of_job_status
-
-subst.c
-       - fixed pat_match to avoid infinite recursion on zero-length matches
-         from match_pattern
-
-                               11/17/2000
-                               ----------
-[bash-2.05-alpha1 released]
-
-                                  11/18
-                                  -----
-support/shobj-conf
-       - added GNU Hurd support, identical to linux
-
-variables.c
-       - cygwin systems don't use the exportstr stuff at all, so call
-         INVALIDATE_EXPORTSTR before testing var->exportstr, since just
-         blindly using the value_cell will break exported functions that
-         already have an exportstr set
-       - when recomputing the exported value because valid_exportstr fails,
-         make sure to call named_function_string if the variable is a shell
-         function
-
-                                  11/20
-                                  -----
-variables.c
-       - removed call to valid_exportstr; the exportstr code has been
-         adequately debugged
-
-lib/glob/fnmatch.c
-       - reverted to the POSIX.2 behavior of using the current locale and
-         strcoll() to evaluate range expressions in bracket expressions
-
-doc/{bash.1,bashref.texi}
-       - added note to Pattern Matching section emphasizing that the current
-         locale plays a part in evaluating range expressions within [...]
-
-aclocal.m4
-       - added an #include <unistd.h> to the test for posix sigaction
-         restarting interrupted system calls
-
-support/config.guess
-       - changes from Tim Mooney to support `letter version' releases of
-         Tru 64 Unix on the Alpha (e.g., 5.1a)
-
-                                  11/21
-                                  -----
-lib/sh/pathphys.c
-       - make sure MAXSYMLINKS is defined
-
-aclocal.m4
-       - changed BASH_CHECK_PWFUNCS to just use AC_EGREP_CPP on a file
-         that includes pwd.h and other header files, checking for getpwuid.
-         It #defines HAVE_GETPW_DECLS if the egrep succeeds
-
-lib/readline/complete.c
-       - provide extern declaration of getpwent if _POSIX_SOURCE is defined,
-         since most systems don't declare it in <pwd.h> unless _POSIX_SOURCE
-         is undefined
-
-                                  11/22
-                                  -----
-input.c
-       - fixed a small typo in the cygwin-specific code
-
-doc/{bashref.texi,bash.1}
-       - added some more explanatory text about the effect of the current
-         locale's collating order on range expressions within bracket
-         expressions
-
-doc/bashref.texi, lib/readline/doc/{rltech,rluser,hstech}.texinfo
-       - changed to use @env instead of @code for the names of environment
-         and shell variables in text (not in tables yet)
-
-                                  11/27
-                                  -----
-configure.in
-       - configure without the bash malloc on Interix
-
-lib/readline/doc/rltech.texinfo
-       - changed completion_matches() to rl_completion_matches()
-       - changed filename_completion_function() to
-         rl_filename_completion_function()
-       - changed username_completion_function() to
-         rl_username_completion_function()
-
-lib/readline/rlprivate.h
-       - changed declaration of _rl_alphabetic to rl_alphabetic, since that's
-         what's used in the C files
-
-support/bashbug.sh
-       - Debian has /usr/bin/editor as a link to the system default editor;
-         make that one of the alternatives if $EDITOR is not set
-       - if the OS provides mktemp(1) or tempfile(1), use those to create
-         the temp file for the bug report
-
-lib/readline/{readline.[ch], callback.c}
-       - new function, rl_set_prompt, called with prompt string as argument,
-         sets and, if necessary, expands rl_prompt
-
-lib/readline/{complete.c,compat.c,readline.h}
-       - rl_completion_matches now takes a `const char *' as its first
-         argument
-       - compute_lcd_of_matches now takes a `const char *' as its third
-         argument
-
-lib/readline/rltypedefs.h
-       - a rl_completion_func_t now takes a `const char *' as its first
-         argument
-
-lib/readline/Makefile.in
-       - added dependencies on rltypedefs.h
-
-bashline.c
-       - attempt_shell_completion now takes a `const char *' as its first
-         argument
-       - removed bogus cast when assigning to rl_attempted_completion_function
-         and rl_completion_entry_function
-       - bash_directory_completion_matches takes a `const char *' argument
-
-pcomplete.c
-       - gen_matches_from_itemlist, pcomp_filename_completion_function,
-         gen_action_completions, gen_globpat_matches, gen_wordlist_matches,
-         gen_compspec_completions now take `const char *' arguments as
-         appropriate
-       - programmable_completions now takes `const char *' first and 
-         second arguments
-
-pcomplib.c
-       - find_compspec now takes a `const char *' argument
-
-                                  11/29
-                                  -----
-shell.c
-       - in open_shell_script, if we have /dev/fd, don't perform the check
-         for a binary file if isatty(fd) (where fd is opened on the script
-         name) returns non-zero
-       - in open_shell_script, don't call init_noninteractive again, since it
-         can undo changes made by the startup files ($BASH_ENV)
-
-input.c
-       - in fd_to_buffered_stream, make sure buffer size (and hence size
-         arg passed to read(2)) is greater than zero.  This makes
-         bash /dev/stdin work right.
-       - return -1 from sync_buffered_stream immediately if buffers is NULL
-         (can happen when running `bash -i /dev/stdin' and executing a
-         command that requires a fork)
-
-                                  11/30
-                                  -----
-jobs.c
-       - renamed cont_signal_handler to sigcont_sighandler for consistency
-       - renamed stop_signal_handler to sigstop_sighandler for consistency
-       - if there is no jobs list or no outstanding jobs, return immediately
-         from notify_of_job_status, before fussing with the signal state
-       - change map_over_jobs to not fuss with the signal state unless there
-         are jobs
-
-lib/malloc/malloc.c
-       - encapsulated the code to block and unblock signals during morecore()
-         execution into two functions:  block_signals and unblock_signals
-       - only block signals in morecore() if interrupt_immediately is non-zero
-         or SIGINT or SIGCHLD is trapped
-
-                                  12/1
-                                  ----
-lib/readline/readline.c
-       - fix to rl_forward to make sure that lend doesn't get set < 0, since
-         that will result in rl_point being < 0
-
-                                  12/5
-                                  ----
-parse.y
-       - fix to parse_matched_pair to allow backslash to escape a ' inside a
-         $'...' construct inside another grouping construct like ${...}
-       - translate $'...' and $"..." in parse_matched_pair, because nothing
-         else will do it if such a construct appears inside a grouping
-         construct
-
-                                  12/6
-                                  ----
-configure.in
-       - make sure all bracket tests for pattern matching in case statements
-         are appropriately quoted, so autoconf doesn't swallow the brackets
-       - add -rdynamic to LOCAL_LDFLAGS for freebsd-4.x
-
-examples/loadables/realpath.c
-       - new loadable builtin, canonicalizes pathnames and expands symlinks
-
-builtins/ulimit.def
-       - added undocumented -w option for setting RLIMIT_SWAP, if it's defined
-
-                                  12/7
-                                  ----
-bashline.c
-       - reordered code in initialize_readline so all of the rl_add_defun
-         calls are made before the call to rl_initialize, and all of the
-         rl_{bind,unbind}_key_in_map calls are made after initializing
-         readline.  This allows the bash-specific function names to be used
-         in ~/.inputrc
-
-                                  12/12
-                                  -----
-lib/readline/callback.c
-       - in rl_callback_read_char, loop after returning from
-         readline_internal_char and test rl_pending_input in case some
-         function (like the incremental search functions and digit argument
-         functions) pushed input back with rl_execute_next
-
-lib/readline/readline.h
-       - new rl_state flag:  RL_STATE_INPUTPENDING, indicating that
-         rl_execute_next has pushed input back for rl_get_key to read
-
-lib/readline/input.c
-       - new function to clear rl_pending_input: rl_clear_pending_input()
-
-lib/readline/{input,readline,signals}.c
-       - when rl_pending_input is set, set state RL_STATE_INPUTPENDING;
-         unset that state when rl_read_key returns the pending input
-       - call rl_clear_pending_input at appropriate points
-
-                                  12/15
-                                  -----
-lib/readline/histfile.c
-       - don't leak file descriptors while attempting to truncate a non-regular
-         file
-
-input.c
-       - make sure check_bash_input sets the close-on-exec flag for the file
-         descriptor used to save the bash input fd
-
-parse.y
-       - if default_buffered_input gets changed while it's on the saved
-         stream stack, make sure it gets set to close-on-exec when it's
-         restored by pop_stream()
-
-                                  12/18
-                                  -----
-builtins/ulimit.def
-       - change set_limit to account for Cygwin's setdtablesize() being
-         declared as a void function
-
-support/config.{guess,sub}
-       - change cygwin32 to cygwin
-
-                                  12/20
-                                  -----
-nojobs.c
-       - make wait_sigint_handler handle the case of interrupt_immediately
-         being non-zero when it's called, and jump out appropriately
-
-jobs.c
-       - new function to run sigchld traps: run_sigchld_trap(); called from
-         waitchld
-       - broke the code that computes the printable job status messages for
-         pretty_print_job out into a separate function
-       - rearranged some code eliminating a useless `else' branch in wait_for
-       - shell_tty_info is now a TTYSTRUCT, using defines from shtty.h
-       - broke the code that sets a job's status after waitpid says its state
-         has changed and cleans up after a received SIGINT out into a separate
-         function: set_job_status_and_cleanup
-       - last_stopped_job() -> job_last_stopped() to avoid collision with a
-         variable name
-       - last_running_job() -> job_last_running() for consistency
-
-                                  12/21
-                                  -----
-variables.c
-       - new function, print_func_list (SHELL_VAR **list); prints shell
-         functions from list in a form that may be re-used as input to
-         redefine the functions
-
-variables.h
-       - new extern declaration for print_func_list
-
-builtins/set.def
-       - set without options now calls print_func_list to have functions
-         printed in a way that can be reused as input (this affects
-         `declare' and `declare -p' also)
-
-                                  12/27
-                                  -----
-general.h
-       - add an ISOCTAL define
-
-builtins/common.h
-       - use ISOCTAL in read_octal function
-
-parse.y
-       - in decode_prompt_string, don't just skip STRING forward by 3 if an
-         octal sequence is translated; handle sequences of fewer than three
-         characters by checking each character
-
-                                  12/28
-                                  -----
-doc/{bash.1,bashref.texi}
-       - make sure `vi-move' is a documented keymap argument to bind's
-         `-m' option
-
-                                  12/29
-                                  -----
-variables.c
-       - change print_assignment so that functions are printed in a way that
-         may be reused as input (without the `=')
-
-                                1/2/2001
-                                --------
-test.c
-       - fix test_command to print an error message if `[' is supplied a
-         single argument that is not `]'
-
-support/shobj-conf
-       - change test of $SHOBJ_CC from `gcc*' to `*gcc*' to handle full
-         pathnames
-
-                                  1/11
-                                  ----
-execute_cmd.c
-       - in initialize_subshell, zero out builtin_env, since those aren't
-         supposed to be exported
-
-variables.c
-       - new function: shell_var_from_env_string, creates a SHELL_VAR from
-         a `name=value' style environment string and returns it
-       - new function: bind_name_in_env_array(name, value, array), makes
-         NAME have VALUE in ARRAY, a temporary environment
-       - new function: bind_tempenv_variable (name, value), makes NAME have
-         VALUE in one of the temporary environments -- temporary_env,
-         builtin_env, or function_env
-       - changed bind_variable to call bind_tempenv_variable if one of the
-         temporary environments is non-null before modifying the
-         shell_variables table.  This fixes a problem with sourced scripts
-         modifying variables in a temporary environment, but not seeing the
-         updated values
-
-                                  1/12
-                                  ----
-variables.c
-       - changed things so OSTYPE, HOSTTYPE, and MACHTYPE are set only if
-         they don't have a value at shell startup
-
-                                  1/17
-                                  ----
-builtins/fc.def
-       - create temp file with MT_USETMPDIR
-
-variables.c
-       - allow function local readonly variables to overwrite (or shadow)
-         other (calling) function readonly variables, but not global
-         readonly ones
-
-builtins/wait.def
-       - replace unwind_protect of interrupt_immediately, since that's a
-         variable that you cannot unwind-protect (the unwind-protect code
-         uses it)
-
-                                  1/22
-                                  ----
-Makefile.in
-       - changed RELSTATUS to `beta1'
-
-lib/readline/terminal.c
-       - added rl_set_screen_size function, wrapper around
-         _rl_set_screen_size so bash doesn't call _rl_ functions
-
-lib/readline/{rlprivate,readline}.h
-       - moved rl_explicit_arg to readline.h
-       - moved rl_numeric_arg to readline.h
-       - moved rl_editing_mode to readline.h
-       - moved rl_last_func to readline.h
-       - added rl_set_screen_size to readline.h
-
-lib/readline/doc/rltech.texinfo
-       - documented rl_explicit_arg, rl_editing_mode, rl_numeric_arg,
-         rl_last_func
-       - documented rl_set_screen_size
-
-{jobs,nojobs}.c
-       - _rl_set_screen_size -> rl_set_screen_size
-
-{bashline,pcomplete}.c, builtins/set.def
-       - removed extern declarations of variables defined in readline.h
-
-                                  1/23
-                                  ----
-support/rlvers.sh
-       - use $TMPDIR if it's defined
-       - use $RL_INCDIR (set by -I option, /usr/local/include by default)
-         as the directory containing the installed readline header files
-       - cd to the temp directory before attempting compilation
-
-configure.in
-       - pass `-I ${includedir}' to rlvers.sh
-
-                                  1/29
-                                  ----
-subst.c
-       - fixed parameter_brace_expand to only throw away the state of
-         quoted dollar-at if we're going to be using the rhs of the
-         brace expansion, since whatever parameter_brace_expand_rhs sets
-         should be what goes (corrects bad fix of 2/16/2000)
-       - fixed param_expand to only free temp after calling
-         parameter_brace_expand if it's a quoted null and we *did not*
-         have a quoted $@, since in that case we want to keep it and
-         do the $@ special handling (fixes real problem from 2/16/2000)
-
-                                  1/30
-                                  ----
-variables.c
-       - remove export attribute from SSH2_CLIENT, like SSH_CLIENT
-
-                                   2/1
-                                   ---
-unwind_prot.c
-       - added new function, clear_unwind_protect_list, to zero out the
-         unwind_protect list, optionally freeing the elements
-
-unwind_prot.h
-       - new extern declaration for clear_unwind_protect_list
-
-execute_cmd.c
-       - call clear_unwind_protect_list in initialize_subshell.  This fixes
-         the problem of core dumps when calling a shell script without a
-         leading `#!' from a shell function or other context with an
-         unwind-protect list
-       - set variable_context and return_catch_flag to 0 in
-         initialize_subshell, since a new subshell is no longer in a shell
-         function
-
-                                   2/2
-                                   ---
-doc/readline.3
-       - updated the text; clarified several points
-       - changed the usage synopsis to include <readline/readline.h> and
-         <readline/history.h>
-
-lib/readline/doc/hstech.texinfo
-       - made sure all function prototypes are valid ANSI C (mostly
-         changing () to (void))
-
-lib/readline/doc/rluser.texinfo
-       - a few clarifications
-
-lib/readline/doc/rltech.texinfo
-       - a few clarifications
-       - added two new subsections for character input and terminal
-         management
-       - changed all function prototypes to be valid ANSI C (mostly
-         replacing () with (void))
-       - documented some variables in readline.h but previously not in
-         the reference manual (rl_num_chars_to_read, rl_dispatching,
-         rl_gnu_readline_p, rl_completion_type)
-       - documented some functions in readline.h but previously not in
-         the reference manual (rl_clear_pending_input, rl_prep_terminal,
-         rl_deprep_terminal, rl_tty_set_default_bindings, rl_alphabetic,
-         rl_crlf)
-
-lib/readline/readline.h
-       - added extern declaration for rl_clear_pending_input()
-       - added extern declaration for rl_alphabetic
-       - changed rltty_set_default_bindings to rl_tty_set_default_bindings
-       - changed crlf() -> rl_crlf()
-
-lib/readline/rltty.c
-       - new function, rl_tty_set_default_bindings, just calls
-         rltty_set_default_bindings (needed `rl_' prefix)
-
-lib/readline/readline.c
-       - readline_default_bindings now calls rl_tty_set_default_bindings
-
-lib/readline/terminal.c
-       - renamed crlf() to rl_crlf(); crlf() is still defined for backwards
-         compatibility 
-
-bashline.c, lib/readline/{complete,display}.c
-       - changed all calls to crlf() to rl_crlf()
-
-test.c
-       - fix filecomp() so that `test file1 -nt file2' doesn't fail if file1
-         exists but file2 does not
-
-                                   2/5
-                                   ---
-lib/readline/{terminal,compat}.c
-       - move crlf() backwards-compatibility definition to compat.c
-
-execute_cmd.c
-       - if we're running a command `( command ) &' from a non-interactive
-         shell, don't unconditionally disable expand_aliases.  Only do it
-         when running such a command from an interactive shell, since then
-         we're changing to a non-interactive shell
-
-                                   2/6
-                                   ---
-[bash-2.05-beta1 released]
-
-lib/readline/compat.c
-       - add extern declaration for rl_crlf()
-
-lib/readline/undo.c
-       - initialize start and end in rl_do_undo to avoid bogus gcc compiler
-         warning with -Wall
-
-lib/readline/rlprivate.h
-       - fix typo in extern declaration of _rl_current_display_line()
-       - add extern declaration of _rl_free_saved_history_line()
-
-lib/readline/terminal.c
-       - return immediately from _rl_set_screen_size if one of the args is 0
-       - new function, rl_get_screen_size (int *rows, int *cols) to return
-         readline's idea of the screen dimensions
-
-lib/readline/doc/rltech.texinfo
-       - documented rl_get_screen_size
-
-                                   2/7
-                                   ---
-pathexp.c
-       - a couple of fixes for the POSIX_GLOB_LIBRARY version of the globbing
-         code
-
-expr.c
-       - fixed omission of ^= from the special assignment operators
-
-shell.c
-       - change logic for setting `posixly_correct' at shell startup:  if
-         $POSIXLY_CORRECT or $POSIX_PEDANTIC is found in the environment,
-         set it to 1, otherwise retain the previous value (which is
-         initialized to 0)
-
-                                  2/10
-                                  ----
-builtins/evalstring.c
-       - since subshell_environment is now a flags word, test for the
-         SUBSHELL_COMSUB bit being set when decided whether or not to
-         evaluate $(<file), not just for subshell_environment ==
-         SUBSHELL_COMSUB
-
-                                  2/12
-                                  ----
-lib/readline/doc/rltech.texinfo
-       - fixed a couple of problems with the documentation for
-         rl_prep_terminal and rl_deprep_terminal 
-       - added description of rl_set_prompt
-
-support/config.sub
-       - added support for Linux running on the IBM S390
-
-                                  2/13
-                                  ----
-input.c
-       - new function, fd_is_bash_input (fd), encapsulates the test for
-         whether or not FD is the file descriptor from which bash is reading
-         its input
-       - change check_bash_input to call fd_is_bash_input
-       - new function, save_bash_input (fd, new_fd), handles saving the
-         buffered stream associated with file descriptor FD to one
-         associated with NEW_FD.  If NEW_FD == -1, this function allocates a
-         file descriptor itself with fcntl
-       - new function, set_bash_input_fd(fd), sets the fd bash is using to
-         read input to FD
-       - changed duplicate_buffered_stream to note that the buffer it's
-         duplicating to was the bash input buffer (B_WASBASHINPUT)
-
-input.h
-       - extern declarations for fd_is_bash_input and save_bash_input
-       - new flag for b->flag: B_WASBASHINPUT
-
-redir.c
-       - in add_undo_redirect, if FD is 0, make the undo redirect be of type
-         r_duplicating_input instead of r_duplicating_output, since that fd
-         requires special handling in the presence of buffered streams (fixes
-         problem with scripts reading input through a pipe restoring bash
-         input buffered stream correctly after a `read' with an input
-         redirection
-
-                                  2/14
-                                  ----
-lib/readline{complete,util}.c
-       - moved rl_strpbrk to util.c with rest of string utility functions,
-         renamed to _rl_strpbrk
-
-lib/readline/rlprivate.h
-       - extern declaration for _rl_strpbrk
-
-lib/readline/input.c
-       - make the timeout in rl_gather_tyi() be a variable
-         (_keyboard_input_timeout) rather than a constant
-       - new function, rl_set_keyboard_input_timeout (int u) to set
-         _keyboard_input_timeout.  The argument is in microseconds; returns
-         the old value of _keyboard_input_timeout
-       - _rl_input_available uses _keyboard_input_timeout also
-
-lib/readline/readline.h
-       - extern declaration for rl_set_keyboard_input_timeout
-
-lib/readline/doc/rltech.texinfo
-       - documented rl_variable_bind(), rl_macro_bind(), rl_macro_dumper(),
-         rl_variable_dumper(), rl_push_macro_input(), rl_show_char()
-
-                                  2/20
-                                  ----
-findcmd.c
-       - new function, executable_or_directory(name), returns 1 if NAME is
-         an executable file or a directory
-
-findcmd.h
-       - extern declaration for executable_or_directory()
-
-bashline.c
-       - call executable_or_directory() from command_word_completion_function,
-         which requires a single stat(2), instead of executable_file() and
-         is_directory(), each of which requires a stat(2)
-
-                                  2/21
-                                  ----
-execute_cmd.c
-       - changed execute_builtin to handle `return' with a preceding variable
-         assignment list specially when in POSIX mode.  POSIX says that the
-         variable assignments should persist after the builtin returns, since
-         `return' is a special builtin.  Since `return' does a longjmp and
-         doesn't go through the normal cleanup path, we need to do special
-         things
-
-variables.c
-       - new function, merge_function_env(), merges the function_env into
-         the shell_variables table
-
-variables.h
-       - extern declaration for merge_function_env()
-
-execute_cmd.c
-       - changed execute_function to merge any variable assignments preceding
-         the function call into shell_variables if the shell is running in
-         POSIX mode
-
-subst.c
-       - changed parameter_brace_expand_error to do tilde expansion on the
-         rhs of the expansion, if it's not null
-       - changed command_substitute so that the subshell begun to execute
-         the command substitution inherits the setting of the `-e' option
-         when in POSIX mode
-
-builtins/break.def
-       - changed check_loop_level to not print a complaining message when
-         the shell is running in POSIX mode, even if BREAK_COMPLAINS is
-         defined.  This affects `break' and `continue'
-       - changed `break' and `continue' to return success even if the shell
-         is not executing a loop, as POSIX specifies
-
-builtins/set.def
-       - changed reset_shell_options() to not clear posixly_correct, so
-         subshells spawned to execute shell scripts without a leading `#!'
-         inherit posix mode from their parent shell
-
-variables.c
-       - changed make_new_variable to create the shell_variables hash table
-         if it hasn't been done yet.  This is needed because bind_variable
-         may be called before initialize_shell_variables (e.g., when
-         `bash -o posix' calls bind_variable("POSIXLY_CORRECT", "y") from
-         parse_shell_options -> set_minus_o_option -> set_posix_mode
-         This makes `bash --posix' and `bash -o posix' equivalent, as they
-         should always have been
-       - changed maybe_make_export_env to merge the contents of `builtin_env'
-         into export_env after function_env and before temporary_env.  This
-         fixes the problems with variable assignments preceding `eval' or
-         `source' not making it into the environment passed to executed disk
-         commands (var=20 eval printenv var)
-
-doc/bashref.texi
-       - noted that variable assignments preceding shell function calls
-         persist in the shell environment after the function returns when
-         the shell is running in POSIX mode
-       - noted that when the shell is running in POSIX mode, subshells
-         spawned to execute command substitutions inherit the value of
-         the `-e' option from the parent shell
-
-                                  2/26
-                                  ----
-doc/bashref.texi
-       - augmented description of bash non-posix behavior in posix mode
-         with information from running the vsc-lite test suite
-
-                                  2/28
-                                  ----
-general.c
-       - since POSIX.2 says that aliases should be expanded even in
-         non-interactive shells, enable alias expansion in
-         posix_initialize() when posix mode is enabled, and set it to the
-         value of interactive_shell if posix mode is disabled
-
-shell.c
-       - before running the startup scripts, set expand_aliases to
-         posixly_correct, since we don't want alias expansion in startup
-         files unless we've been given the --posix invocation option
-
-doc/bashref.texi
-       - added item in BASH Posix Mode section noting that alias expansion
-         is always enabled when in posix mode
-
-Makefile.in
-       - changed release level to `beta2'
-
-                                   3/1
-                                   ---
-jobs.c
-       - expanded retcode_name_buffer to 64
-       - changed printable_job_status to conform to posix.2 for text of
-         stopped job status: `Stopped(SIGTSTP)' or `Stopped(SIGSTOP)'
-
-doc/bashref.texi
-       - Noted above change in posix mode section
-
-                                   3/5
-                                   ---
-lib/readline/bind.c
-       - changed rl_get_keymap_by_name to work case-insensitively
-
-                                   3/6
-                                   ---
-doc/readline.{0,3,ps}
-       - removed from distribution; moved to readline distribution
-
-lib/readline/doc/history.3
-       - man page for history library; neither built nor installed
-         (part of the standalone readline distribution)
-
-lib/readline/histfile.c
-       - changed history_truncate_file to return 0 on success, errno
-         on failure
-       - changed history_do_write to return errno on a write error.  This
-         affects write_history and append_history
-
-lib/readline/history.c
-       - max_input_history is now history_max_entries; the old variable is
-         maintained for backwards compatibility
-
-lib/readline/histexpand.c
-       - the list of delimiters that separate words for history_tokenize
-         is now a variable: history_word_delimiters; default value is as
-         before
-       - changed history_expand to return 0 immediately if its second
-         argument is NULL
-
-bashline.c
-       - changed to use history_max_entries
-
-lib/readline/history.h
-       - extern declaration for history_max_entries
-       - extern declaration for history_word_delimiters
-
-                                   3/8
-                                   ---
-test.c
-       - changed unary_operator() to return FALSE for non-numeric arguments
-         to `-t'
-
-                                   3/9
-                                   ---
-[bash-2.05-beta2 released]
-
-                                  3/12
-                                  ----
-lib/readline/doc/rltech.texinfo
-       - documented rl_set_paren_blink_timeout()
-       - moved the example function to its own info node
-
-lib/readline/{hstech.texinfo,history.3}
-       - `$' is not in the default value of history_word_delimiters
-
-                                  3/13
-                                  ----
-bashline.c
-       - in maybe_add_history, if the tests for HISTCONTROL succeed, but
-         the HISTIGNORE check fails, set first_line_saved to 0
-
-                                  3/15
-                                  ----
-
-lib/glob/fnmatch.c
-       - fixed a bug in patscan that caused `[' to be treated as special
-         even inside a nested bracket expression.  It's supposed to lose
-         it's special handling inside []
-       - fixed a bug in patscan that caused `]' to end an embedded bracket
-         expression even if it was the first character after the `[' (or
-         a leading `!' or `^')
-
-                                  3/22
-                                  ----
-execute_cmd.c
-       - made a small change to shell_execve to report a more user-friendly
-         error if execve(2) fails because of a `#! interpreter' error with
-         `interpreter'
-       - in shell_execve, if HAVE_HASH_BANG_EXEC is not defined, make sure
-         the file length is > 2 characters before attempting to execute an
-         interpreter
-
-                                  3/26
-                                  ----
-jobs.c, nojobs.c
-       - give_terminal_to now takes a second argument, FORCE.  If that
-         second argument is non-zero, give the terminal away no matter
-         what job_control is set to
-
-jobs.h
-       - changed extern declaration of give_terminal_to
-
-{jobs,sig,subst}.c,parse.y
-       - changed all calls to give_terminal_to to add a second argument
-         of 0
-
-jobs.c
-       - changed second argument of call to give_terminal_to in
-         end_job_control to 1, to force this even if job_control is 0.
-         This fixes the problem of `exec other-job-control-shell' in a
-         startup file hanging, since run_startup_files sets job_control to 0
-
-subst.c
-       - fixed test of subshell_environment in command_substitute to test the
-         bit SUBSHELL_ASYNC rather than test equality, since it's now a
-         bitmask
-
-                                  3/27
-                                  ----
-shell.c
-       - changed posix initialization calls to set POSIXLY_CORRECT=y and
-         then call sv_strict_posix, so $SHELLOPTS includes `posix' and
-         POSIXLY_CORRECT is set, for both the posix command line options
-         and when act_like_sh is non-zero
-
-redir.c
-       - the `>& filename' redirection now works in posix mode, redirecting
-         stdout and stderr, since POSIX.2 leaves it unspecified
-
-doc/bashref.texi
-       - removed item about `>& filename' from Bash POSIX Mode section
-
-parse.y
-       - fixed a problem in decode_prompt_string with `\W' not printing
-         anything if PWD == "//"
-
-lib/readline/input.c
-       - in rl_read_key, after calling (*rl_event_hook), check for rl_done
-         being set, and return '\n' if it is
-
-Makefile.in
-       - changed RELSTATUS to `release'
-
-                                  3/28
-                                  ----
-support/bashbug.sh
-       - replace use of $(...) with `...` for the benefit of old versions
-         of sh
-
-builtins/set.def
-       - changed print_all_shell_variables to not print shell function names
-         and definitions when in posix mode
-
-doc/bashref.texi
-       - noted change in `set' behavior in posix mode section
-
-                                   4/2
-                                   ---
-lib/readline/readline.c
-       - changed default value of RL_LIBRARY_VERSION to `4.2'
-
-                                   4/5
-                                   ---
-[bash-2.05-release frozen]
-
-                                   4/6
-                                   ---
-bashline.c
-       - fix to vi_edit_and_execute_command to keep it from adding an
-         empty line to the history and not resetting current_command_line_count,
-         which resulted in each command re-run with `v' having a `;' appended
-
diff --git a/CWRU/old-changelogs/CWRU.chlog.v13 b/CWRU/old-changelogs/CWRU.chlog.v13
deleted file mode 100644 (file)
index 565b0cb..0000000
+++ /dev/null
@@ -1,9648 +0,0 @@
-                                4/9/2001
-                                --------
-[bash-2.05 released]
-
-                                  4/10
-                                  ----
-redir.c
-       - check return value of fclose() in write_here_document() for error
-         returns; don't just rely on fwrite() failing
-
-support/bashbug.sh
-       - set TMPDIR to /tmp if it's null or unset
-       - use $TMPDIR in the TEMP tempfile name template
-       - fixed the call to `mktemp', if it exists, to make it more portable
-
-jobs.c
-       - if WCONTINUED is not defined, define it to 0 and add a define for
-         WIFCONTINUED(wstatus) which expands to 0
-       - add WCONTINUED to the flags passed to waitpid(2) in waitchld()
-       - don't increment children_exited if waitpid's status is WIFCONTINUED,
-         since we don't want to call a SIGCHLD trap handler in this case
-       - in waitchld(), we set child->running to 1 if WIFCONTINUED(status)
-         is non-zero
-       - make sure pretty_print_job doesn't check for the core dump bit if
-         the process has been continued; it's only valid if the job is dead
-       - in set_job_status_and_cleanup, set the job to JRUNNING if job_state
-         is non-zero and the job was previously marked as JSTOPPED
-
-configure.in
-       - add -DBROKEN_DIRENT_D_INO to interix LOCAL_CFLAGS
-
-lib/glob/glob.c
-       - if BROKEN_DIRENT_D_INO is defined, define REAL_DIR_ENTRY to 1
-
-jobs.c
-       - in kill_pid, we only need to block and unblock SIGCHLD if the
-         `group' argument is non-zero, since otherwise we just call `kill'
-         on the pid argument
-
-version.c
-       - update copyright date to 2001
-
-bashline.c
-       - prog_complete_return needs to take a `const char *' as its first
-         argument
-       - history_completion_generator needs to take a `const char *' as
-         its first argument, and `text' needs to be a `const char *'
-
-                                  4/11
-                                  ----
-redir.c
-       - fixed a weird typo in redir_special_open, case RF_DEVFD, added
-         call to all_digits before call to legal_number
-       - fixed do_redirection_internal to call legal_number instead of atol(3)
-         when translating r_duplicating_{in,out}put_word, so it handles
-         overflow better
-       - produce an error message in redirection_error for out-of-range
-         file descriptors
-       - change allocation strategy in redirection_error so we don't have to
-         malloc scratch memory if redirection_expand() fails
-
-jobs.h
-       - added defines for `running' member of a struct process
-
-general.c
-       - fix legal_number to return 0 when strtol(3) reports overflow or
-         underflow
-
-parse.y
-       - changed read_token_word to call legal_number instead of atoi(3)
-
-input.c
-       - return -1/EBADF from close_buffered_fd if fd is < 0
-
-command.h
-       - fixed bogus comment about IS_DESCRIPTOR in description of the
-         REDIRECTEE struct
-
-print_cmd.c
-       - change cprintf's 'd' modifier code to display negative numbers as
-         an out-of-range value.  We can do this only because the only use
-         of %d is to output file descriptor numbers in redirections
-
-support/mksignames.c
-       - need to include config.h to get a possible value for
-         UNUSABLE_RT_SIGNALS
-
-                                  4/16
-                                  ----
-lib/readline/doc/rluser.texinfo
-       - corrected a small error in one description of M-DEL
-
-                                  4/17
-                                  ----
-stringlib.c
-       - need to initialize `ind' before calls to RESIZE_MALLOCED_BUFFER
-         in strcreplace()
-
-support/bashversion.c
-       - new file, prints bash version information
-
-Makefile.in
-       - rules for building bashversion and linking it to version.o
-
-                                  4/24
-                                  ----
-conftypes.h
-       - new file with HOSTTYPE, OSTYPE, MACHTYPE, etc. defines from
-         variables.h
-
-variables.h, version.c
-       - include conftypes.h
-
-patchlevel.h
-       - new file, contains define for PATCHLEVEL.  Doing away with the old
-         scheme of having the information in configure.in
-
-version.c
-       - include patchlevel.h
-
-Makefile.in
-       - run bashversion -p to find patch level rather than have configure
-         substitute in a value
-       - pass -S ${top_srcdir} to support/mkversion.sh
-
-support/mkversion.sh
-       - don't put PATCHLEVEL define into version.h, but accept and ignore
-         a -p option
-       - take a new -S srcdir option
-       - find the patch level by parsing it out of patchlevel.h
-
-configure.in
-       - hard-code BASHVERS assignment instead of reading it from a file
-       - remove BASHPATCH; don't substitute it
-
-_distribution,_patchlevel
-       - removed
-
-                                  4/26
-                                  ----
-shell.c
-       - call init_noninteractive() in open_shell_script if forced_interactive
-         is non-zero (the shell was started with -i) and fd_is_tty is 0
-         (the script file is a real file, not something like /dev/stdin),
-         since it wasn't done earlier
-
-builtins/printf.def
-       - change for POSIX.2 compliance when conversion errors are encountered
-         when processing %d, %u, and floating point conversion operators
-         (print a warning message, return the value accumulated at the time
-         of the error -- which is always 0 -- and exit with a non-zero status)
-
-command.h
-       - added CMD_COMMAND_BUILTIN for use by the `command' builtin and the
-         code in execute_cmd.c
-
-builtins/command.def
-       - add CMD_COMMAND_BUILTIN to the created command's flags
-
-                                   5/1
-                                   ---
-configure.in
-       - add call to AC_C_CONST to test `const' compiler behavior
-       - add call to AC_C_INLINE to test `inline' compiler behavior
-       - add call to AC_C_STRINGIZE to test cpp #x stringizing operator
-
-config.h.in
-       - add `#undef const' for configure to substitute
-       - add `#undef inline' for configure to substitute
-       - add `#undef HAVE_STRINGIZE' for configure to substitute
-
-include/stdc.h
-       - remove code that defines or undefines `const' and `inline'
-       - change the __STRING macro to be defined depending on the value
-         of HAVE_STRINGIZE
-
-lib/malloc/malloc.c
-       - change the __STRING macro to be defined depending on the value
-         of HAVE_STRINGIZE
-
-lib/readline/{readline,rlprivate}.h
-       - moved rl_get_termcap to readline.h, making it a public function
-
-lib/readline/readline.h
-       - new #define, RL_READLINE_VERSION, hex-encoded library version
-         number, currently set to 0x0402
-       - new public int variable, rl_readline_version
-
-lib/readline/readline.c
-       - #define RL_READLINE_VERSION if it is not already defined (which it
-         should be in readline.h)
-       - initialize rl_readline_version to RL_READLINE_VERSION
-
-lib/readline/doc/rltech.texinfo
-       - documented rl_get_termcap
-       - documented rl_readline_version
-
-jobs.c
-       - job_exit_status should return an int, not a WAIT (undetected
-         before because on most POSIX-like systems a WAIT is really an int)
-
-builtins/evalfile.c
-       - added FEVAL_REGFILE (file must be a regular file) to accepted
-          _evalfile flags
-       - fc_execute_file() adds FEVAL_REGFILE to _evalfile flags.  This
-         means that startup files and files read with `.' no longer need
-         to be regular files
-
-                                   5/2
-                                   ---
-
-lib/termcap/Makefile.in
-       - fix target for installed termcap library (normally unused)
-
-lib/tilde/Makefile.in
-       - fix install target to install in $(libdir) (normally unused)
-
-Makefile.in
-       - don't make $(man3dir) since there's nothing installed there
-
-Makefile.in,doc/Makefile.in
-       - change `man1ext' to `.1', `man3ext' to `.3'
-       - change appropriate install targets to use new values of man[13]ext
-       - use `test ...' instead of `[...]'
-       - add support for DESTDIR root installation prefix, for package
-         building (installdirs, install, install-strip, uninstall targets)
-
-builtins/common.c
-       - new function int get_exitstat(WORD_LIST *list) returns an eight-bit
-         exit status value for use in return, exit, logout builtins
-
-builtins/common.h
-       - extern declaration for get_exitstat()
-
-builtins/{exit,return}.def
-       - call get_exitstat where appropriate
-
-builtins/printf.def
-       - add support for "'" flag character as posix 1003.2-200x d6 says
-       - fix core dump when user-supplied field width or precision is 0
-       - fix to printstr() to handle zero-length precision with `%b' format
-         specifier (printf '%.0b-%.0s\n' foo bar)
-       - fix to printstr() to treat a negative field width as a positive
-         field width with left-justification
-       - fix to mklong to avoid static buffers, which can always be overrun
-         by someone sufficiently motivated
-
-bashline.c
-       - change var in add_host_name to type `size_t' for passing to xrealloc
-
-                                   5/3
-                                   ---
-execute_cmd.c
-       - change restore_signal_mask to accept a sigset_t *, since a sigset_t
-         may not fit into a pointer, change call
-
-unwind_prot.c
-       - use a union UWP in restore_variable when restoring a variable whose
-         size is the same as sizeof(int), the reverse of the method used to
-         store it in unwind_protect_int
-
-builtins/printf.def
-       - use a #define LENMODS containing the length modifiers instead of
-         testing against each possible modifier character, save any mod
-         character found
-       - add support for ISO C99 length specifiers `j', `t', and `z'
-       - if `L' modifier is supplied with a floating point conversion char,
-         pass a `long double' to printf if HAVE_LONG_DOUBLE is defined
-
-configure.in,config.h.in
-       - call AC_C_LONG_DOUBLE to check for `long double'; define
-         HAVE_LONG_DOUBLE if supported
-
-bashline.c
-       - fix an inadvertantly-unclosed comment in attempt_shell_completion
-       - make set_saved_history return a value
-       - make dynamic_complete_history return a useful value
-
-{make_cmd,execute_cmd,shell,subst,trap,variables,input,unwind_prot,test,
-pcomplete}.c
-       - removed some declared-but-unused variables
-
-builtins/{cd,enable,fc,set,setattr,type,umask,printf,complete}.def
-       - removed some declared-but-unused variables
-
-lib/sh/{zread,netopen}.c
-       - removed some declared-but-unused variables
-
-execute_cmd.c
-       - in execute_arith_command, use a long variable to hold the result
-         of evalexp(), since that's what it returns
-
-builtins/evalstring.c
-       - make cat_file return -1 on a read or write error
-
-lib/sh/stringlib.c
-       - make merge_stringlists() return the right value
-
-                                   5/7
-                                   ---
-pcomplete.c
-       - remove typo that caused empty declaration (;;)
-
-parse.y
-       - fix yyerror() to accept a single string argument; fix callers
-
-trap.c
-       - cast pointer to long instead of int when printing message with
-         internal_warning() in run_pending_traps()
-
-subst.c
-       - fix process_substitute to handle stdin being closed
-
-test.c
-       - change `while' to `if' in and() and or(), since the loop isn't
-         actually performed -- there's an unconditional `return' in the
-         loop body
-       - check for integer overflow of arguments to `-t'
-
-lib/sh/netopen.c
-       - change _getserv() to reject negative port/service numbers
-
-expr.c
-       - fix strlong() to not convert the base specification from long to
-         int before checking for overflow, since truncation on machines
-         where sizeof(int) != sizeof(long) may mask errors
-
-builtins/{jobs,kill,wait}.def
-       - use legal_number instead of atoi when converting strings to pid_t;
-         check for numeric overflow
-
-input.c
-       - fix for cygwin in b_fill_buffer -- off-by-one error when checking
-         buffer for \r\n termination
-
-general.h
-       - new #define INT_STRLEN_BOUND(t), computes max length of string
-         representing integer value of type T, possibly including a sign
-         character
-       - include <limits.h> if it's present
-
-{execute_cmd,findcmd,test}.c
-       - don't include <limits.h>, since general.h does it now
-
-{execute_cmd,lib/sh/itos,pcomplete,print_cmd,subst,variables}.c
-       - use INT_STRLEN_BOUND instead of static array sizes when converting
-         various strings to integer values
-
-shell.h
-       - struct fd_bitmap now uses an `int' size, since it's bounded by
-         the number of file descriptors, which must fit into an `int'
-
-execute_cmd.c
-       - FD_BITMAP_DEFAULT_SIZE is now 32, not 32L
-       - new_fd_bitmap takes an `int' size parameter, not a `long'
-
-execute_cmd.h
-       - change prototype for new_fd_bitmap()
-
-test.c
-       - fix test_stat to check for overflow when parsing the integer file
-         descriptor number; return ENOENT instead of EBADF for files that
-         are not open
-
-hashlib.c
-       - don't discard the upper 32 bits of the random value, if present
-
-lib/readline/shell.c
-       - use the same INT_STRLEN_BOUND mechanism to decide how much space to
-         allocated in sh_set_lines_and_columns
-
-                                   5/8
-                                   ---
-aclocal.m4
-       - add check for libtinfo (termcap-specific portion of ncurses-5.2) to
-         BASH_CHECK_LIB_TERMCAP
-       - new macro, RL_LIB_READLINE_VERSION, checks version of installed
-         readline library and (optionally) writes version #defines to
-         config.h.  Bash doesn't use the version defines
-
-configure.in
-       - call RL_LIB_READLINE_VERSION instead of support/rlvers.sh
-
-execute_cmd.c
-       - fix execute_shell_script and the WHITECHAR and STRINGCHAR macros
-         to check array bounds before indexing into the sample string
-
-unwind_prot.[ch]
-       - import new versions submitted by Paul Eggert <eggert@twinsun.com>
-         with a couple of changes for backwards compatibility, so the rest
-         of the source doesn't need to be changed yet
-
-jobs.c
-       - use unwind_protect_var on last_made_pid in run_sigchld_trap
-
-builtins/bind.def
-       - use unwind_protect_var on rl_outstream
-
-general.c
-       - rework print_rlimtype to use INT_STRLEN_BOUND and handle the
-         most negative number correctly
-
-expr.c
-       - `tokval' should have been a `long', since all arithmetic is done
-         as longs
-
-builtins/history.def
-       - consolidate tests for valid history position in one block to
-         avoid duplicate code and strings
-
-builtins/ulimit.def
-       - fix check for overflow when setting limit to work when int is 32
-         bits and RLIMTYPE is 64
-
-lib/sh/tmpfile.c
-       - don't truncate the result of time(3) to int; just use time_t,
-         since it's being assigned to an `unsigned long'
-
-mailcheck.c
-       - use legal_number instead of atoi in time_to_check_mail() to catch
-         more numeric errors; consolidate error checking in one block
-       - last_time_mail_checked should be a time_t
-
-                                   5/9
-                                   ---
-builtins/set.def
-       - recognize `set [-+]o nolog' if HISTORY is defined
-
-bashline.c
-       - new variable `dont_save_function_defs', set by `set -o nolog';
-         currently ignored
-
-command.h
-       - the `dest' member of a REDIRECTEE is now an `int'
-
-parse.y,redir.c
-       - changed uses of `redir.test' (where redir is a REDIRECTEE) since
-         it's now an int
-
-lib/readline/rlstdc.h
-       - don't mess around with `const', rely on configure to supply a
-         proper definition if the compiler doesn't support it
-
-lib/tilde/tilde.h
-       - include <config.h> if HAVE_CONFIG_H is defined
-       - don't mess around with `const', rely on configure
-
-builtins/shopt.def
-       - new read-only `shopt' option, login_shell, non-zero if shell is a
-         login shell (as decided by shell.c)
-       - new function set_login_shell(), sets shopt private value of
-         login_shell
-
-builtins/common.h
-       - new extern declaration for set_login_shell
-
-shell.c
-       - call set_login_shell after setting value of login_shell (in
-         main() and set_shell_name())
-
-parse.y
-       - added new `\A' prompt string escape sequence:  time in 24-hour
-         HH:MM format
-
-configure.in, config.h.in
-       - check for <grp.h>, define HAVE_GRP_H if found
-
-builtins/complete.def
-       - add new `-A group/-g' option to complete group names
-
-pcomplete.h
-       - new define for CA_GROUP, used with group name completion
-
-pcomplete.c
-       - add code to support CA_GROUP group name completion
-
-bashline.c
-       - new function, bash_groupname_completion_function(), supports
-         programmable completion of group names
-
-bashline.h
-       - extern declaration for bash_groupname_completion_function
-
-lib/readline/bind.c
-       - new inputrc variable, `match-hidden-files', controls completion
-         matching files beginning with a `.' (on Unix)
-
-lib/readline/complete.c
-       - new variable, _rl_match_hidden_files, mirrors `match-hidden-files'
-         inputrc variable
-
-lib/readline/rlprivate.h
-       - extern declaration for _rl_match_hidden_files
-
-builtins/hash.def
-       - new `-t' option to list hash values for each filename argument
-
-builtins/read.def
-       - alarm(3) takes an `unsigned int' argument, not int
-       - check for arithmetic overflow with -t and -n options
-
-input.c
-       - check for read error before doing \r\n translation on cygwin in
-         b_fill_buffer
-       - reset bp->b_used to 0 instead of leaving it at -1 on read error
-         in b_fill_buffer
-
-builtins/shopt.def
-       - new functions, shopt_setopt(name, mode) and
-         shopt_listopt(name, mode) to give the rest of the shell an easy
-         interface
-
-builtins/common.h
-       - extern declarations for shopt_setopt and shopt_listopt
-
-shell.c
-       - new invocation options -O and +O, to list or set/unset shopt
-         options like +o/-o sets and unsets `set -o' options
-
-doc/{bash.1,bashref.texi}
-       - document `set -o nolog'
-       - document `login_shell' shopt option
-       - document new `\A' prompt string escape sequence
-       - document new `-t' option to `hash'
-       - document new `[+-]O' invocation option
-
-doc/bashref.texi
-       - add text to `Invoking Bash' section defining a login shell; text
-         taken from man page
-
-doc/bash.1, lib/readline/doc/rluser.texinfo
-       - documented new complete/compgen `-A group/-g' option
-
-lib/readline/doc/{rluser.texinfo,readline.3}, doc/bash.1
-       - documented new `match-hidden-files' inputrc variable
-
-                                  5/10
-                                  ----
-configure.in
-       - fix AC_CHECK_PROG(ar, ...)
-       - add AC_CHECK_TYPE for ssize_t
-
-config.h.in
-       - new #undef for ssize_t
-
-lib/sh/zread.c
-       - int -> ssize_t fixes to mirror modern declarations of read and write
-       - the `off' variable in zsyncfd should be an off_t since it computes
-         a file offset
-       - the local buffer `lbuf' is now char, since it's not nice to pass
-         unsigned char * to read(2), and the values from it are assigned to
-         a char anyway
-       - lind and lused are now size_t, since they index into a buffer
-       - set lused to 0 on read error
-
-lib/sh/zwrite.c
-       - change second argument to type `char *', since ISO C says you have
-         to pass a `char *' to `write'
-
-externs.h
-       - fix extern declarations of zread, zread1, zreadc, and zwrite
-       - prototype extern declaration of qsort_string_compare
-       - add extern declaration for history_delimiting_chars() from parse.y
-
-input.h
-       - b_used and b_inputp members ofr struct BSTREAM are now size_t
-
-builtins/evalstring.c
-       - the number of chars read with zread in cat_file should be assigned
-         to a variable of type ssize_t
-
-input.c
-       - the number of chars read with zread in b_fill_buffer should be
-         assigned to a variable of type ssize_t
-       - `localbuf' is now type char[], since POSIX says you shouldn't pass
-         unsigned char * to read(2)
-       - in getc_with_restart(), use a variable of type unsigned char to
-         get a value from the local buffer and return it
-       - in ungetc_with_restart, explicitly return the character arg passed
-         to avoid relying on localbuf being unsigned char
-
-subst.c
-       - the number of chars read with zread in read_comsub should be
-         assigned to a variable of type ssize_t
-
-mksyntax.c
-       - instead of casting to unsigned char * in addcstr, use a variable
-         of type unsigned char and let the compiler do the work
-
-parse.y
-       - instead of casting to unsigned char * in yy_readline_get, use a
-         variable of type unsigned char and let the compiler do the work
-       - ditto for yy_string_get and shell_getc (cast to unsigned char)
-
-subst.c
-       - instead of casting to unsigned char when assigning to ifscmap in
-         expand_word_internal, use a variable of type unsigned char and
-         let the compiler do the work
-
-lib/sh/strtrans.c
-       - instead of casting to unsigned char in ansic_quote, use a variable
-         of type unsigned char and let the compiler do the work
-
-builtins/evalstring.c
-       - remove extern declarations for zwrite and run_trap_cleanup; they're
-         in externs.h
-       - prototype cat_file forward declaration
-
-Makefile.in
-       - remove -I$(includedir) from INCLUDES and SUBDIR_INCLUDES
-
-aclocal.m4
-       - change RL_LIB_READLINE_VERSION to set RL_PREFIX, RL_LIBDIR,
-         and RL_INCLUDEDIR to what it used to test the installed readline
-         library version for use by the caller
-       - change RL_LIB_READLINE_VERSION to not compute ac_cv_rl_prefix if
-         the caller has already assigned it a value
-       - rename _rl_prefix -> ac_cv_rl_prefix, _rl_libdir -> ac_cv_rl_libdir,
-         _rl_includedir -> ac_cv_rl_includedir
-
-configure.in
-       - change testing of whether to use the value of
-         $opt_with_installed_readline to be != no, to allow the user to
-         specify a prefix where the installed readline library may be found
-       - if --with-installed-readline=PREFIX is supplied, set ac_cv_rl_prefix
-         to PREFIX before calling RL_LIB_READLINE_VERSION
-       - if --with-installed-readline[=PREFIX] is supplied, don't set
-         RL_LIBDIR and RL_INCLUDEDIR; let RL_LIB_READLINE_VERSION take care
-         of it, set RL_INCLUDE=-I${RL_INCLUDEDIR}
-       - if --with-installed-readline[=PREFIX] is supplied, and we're
-         linking with the history library, assign $RL_LIBDIR to HIST_LIBDIR
-         so we use the same version of the installed readline and history
-         libraries
-
-Makefile.in, builtins/Makefile.in
-       - have configure substitute RL_INCLUDEDIR, set RL_INCLUDEDIR variable
-
-doc/bashref.texi
-       - updated description of --with-installed-readline configure option 
-
-general.c
-       - moved QSFUNC typedef here from builtins/common.c
-
-{alias,bashline,variables,lib/sh/stringvec}.c
-       - cast fourth argument to qsort to (QSFUNC *)
-
-alias.c
-       - prototype forward declaration of qsort_alias_compare
-
-bashhist.c
-       - include <glob/glob.h> for extern declaration of glob_pattern_p
-       - remove extern declaration of history_delimiting_chars; it's now
-         in externs.h
-       - prototype forward declarations of histignore_item_func,
-         maybe_add_history, and bash_add_history
-
-bracecomp.c
-       - remove extern declaration for sh_backslash_quote; it's in externs.h
-
-braces.c
-       - remove extern declaration for extract_command_subst; it's in subst.h
-       - prototype forward declarations for expand_amble, array_concat, and
-         brace_gobbler
-
-error.c
-       - prototype extern declaration of give_terminal_to, fix bad call
-
-{execute_cmd,expr,findcmd,jobs,mailcheck,nojobs,pcomplete,print_cmd,redir,
-shell}.c
-       - prototype all static forward function declarations
-
-pcomplete.c
-       - changed some function parameters to `const char *' to avoid discarding
-         const qualifier
-
-make_cmd.c
-       - make_bare_word, make_word_flags, and make_word now take a
-         `const char *' string argument
-
-make_cmd.h
-       - changed extern declarations for make_bare_word and make_word
-
-print_cmd.c
-       - cprintf now takes a `const char *' as its first argument, like
-         xprintf and printf
-       - the conditional define for xprintf should have been HAVE_VPRINTF,
-         not HAVE_VFPRINTF
-
-shell.c
-       - in isnetconn(), the return value of sizeof() is size_t
-
-aclocal.m4
-       - add inclusion of stddef.h if STDC_HEADERS is defined to 1 in
-         BASH_CHECK_TYPE
-
-configure.in
-       - add a call to BASH_CHECK_TYPE for socklen_t (type of third argument
-         to getpeername(2))
-
-                                  5/11
-                                  ----
-lib/readline/bind.c
-       - make `useq' a char array to pass to rl_macro_bind in
-         rl_parse_and_bind
-
-lib/readline/{{bind,isearch}.c,rlprivate.h}
-       - _rl_isearch_terminators is now a char *, not unsigned char *
-
-{subst,variables,lib/sh/tmpfile}.c
-       - dollar_dollar_pid is now a `pid_t' instead of `int'
-
-variables.c
-       - sbrand() now takes an `unsigned long' to set the seed value
-       - changed last_random_value to type int, since it's always between
-         0 and 32767
-       - use strtoul to convert the value in assign_random instead of atoi
-       - take out casts in any arguments to sbrand()
-       - take out cast to int in call to inttostr in set_ppid()
-
-subst.c
-       - don't cast last_asynchronous_pid when passing to itos()
-
-{sig,subst}.c
-       - prototype all static forward function declarations
-
-                                  5/14
-                                  ----
-{test,trap,variables}.c
-       - prototype all static forward function declarations
-
-variables.c
-       - free_variable_hash_data() now takes a PTR_T, a `generic pointer'
-
-builtins/{alias,bind,break,cd,complete,declare,enable,exit,fc,fg_bg,help,
-history,jobs,pushd,read,set,trap,umask,
-       - prototype all static forward function declarations
-
-builtins/read.def
-       - reset_eol_delim now takes a `char *' arg, since that's what the
-         unwind_protect functions pass it, and it ignores its arguments
-         anyway
-
-lib/readline/{histsearch,input,kill,rltty,search,vi_mode}.c
-       - prototype all static forward function declarations
-
-lib/tilde/tilde.c
-       - prototype all static forward function declarations
-       - tilde_find_prefix, tilde_find_suffix, isolate_tilde_prefix, and
-         glue_prefix_and_suffix now take `const char *' arguments where
-         appropriate
-
-configure.in,config.h.in
-       - check for vsnprintf, define HAVE_VSNPRINTF if found
-
-lib/readline/display.c
-       - use vsnprintf() in rl_message if it's available; if we don't, at
-         least set the last character in msg_buf to 0 to avoid overrun --
-         we really can't do anything about overflow at this point.  if it's
-         available, this fixes buffer overflow problems in rl_message
-
-                                  5/15
-                                  ----
-lib/readline/histexpand.c
-       - in get_history_word_specifier, allow any character to terminate
-         a `:first-' modifier, not just `:' and null.  This is what csh
-         appears to do.  This allows things like `!:0- xyzzy' to replace the
-         last argument with xyzzy
-
-                                  5/18
-                                  ----
-configure.in, config.h.in
-       - check for <stdint.h>, define HAVE_STDINT_H if found
-       - check for intmax_t in <stdint.h>, define intmax_t as long if not
-         found
-
-                                  5/21
-                                  ----
-builtins/kill.def
-       - change to use strerror() for error message when kill(2) fails
-
-aclocal.m4
-       - new macro, BASH_C_LONG_LONG, check for `long long'
-
-configure.in, config.h.in
-       - call BASH_C_LONG_LONG, define HAVE_LONG_LONG if found
-
-lib/sh/snprintf.c
-       - new file, with implementations of snprintf, vsnprintf, asprintf,
-         and vasprintf, derived from inetutils version
-
-Makefile.in, lib/sh/Makefile.in
-       - add snprintf.c/snprintf.o
-
-configure.in, config.h.in
-       - add checks for snprintf, asprintf, vasprintf, with appropriate
-         cpp defines
-
-lib/readline/{rldefs,xmalloc}.h, lib/readline/xmalloc.c
-       - xmalloc and xrealloc now take `size_t' arguments, like their bash
-         counterparts
-
-externs.h,lib/sh/itos.c
-       - inttostr and itos now take `long' arguments
-       - inttostr takes a `size_t' argument for the buffer size
-
-{expr,lib/malloc/malloc,variables,general}.c
-       - fixed calls to itos() by removing casts, etc.
-
-subst.[ch]
-       - get_dollar_var_value now takes a long, not an int
-       - sub_append_number now takes a long, not an int
-
-subst.c
-       - in parameter_brace_expand_word, use a long and legal_number to
-         translate ${N}, to avoid overflow
-       - in parameter_brace_expand_length, use a long and legal_number to
-         translate ${#N}, to avoid overflow
-       - in do_array_element_assignment, array_expand_index,
-         array_value_internal, use arrayind_t instead of int
-       - let verify_substring_values take long * arguments for the return
-         value of evalexp()
-       - pass long * arguments to verify_substring_values in
-         parameter_brace_substring
-       - parameter_brace_expand_length now returns `long'
-       - parameter_brace_expand now uses a long variable for the return
-         value of parameter_brace_expand_length
-       - param_expand now uses a long variable for the return value from
-         evalexp
-       - array_length reference now returns an `arrayind_t', since it can
-         return the num_elements member of an array, which is of type
-         arrayind_t
-
-subst.h
-       - array_expand_index now returns an `arrayind_t'
-
-array.[ch]
-       - array_subrange now takes arrayind_t arguments, not `int'
-       - dup_array_subrange now uses arrayind_t local variable to do
-         array indexing
-       - use long to print array indices in print_element
-
-variables.c
-       - null_array_assign, assign_dirstack, bind_array_variable
-         now take arrayind_t arguments as array indices
-       - assign_array_var_from_word_list, assign_array_var_from_string,
-         unbind_array_element now use arrayind_t local variables for
-         array indexing
-
-variables.h
-       - change extern declaration of bind_array_variable
-
-builtins/common.[ch]
-       - get_numeric_arg now returns a `long', since it usually returns
-         the value of legal_number()
-
-builtins/{shift,break}.def
-       - use long variables for the return value of get_numeric_arg
-
-builtins/history.def
-       - convert string argument to int only if it's in range
-
-builtins/pushd.def
-       - set_dirstack_element and get_dirstack_element now take `long'
-         index arguments
-       - get_dirstack_index now takes a `long' index argument, since it's
-         passed the converted value from legal_number
-
-lib/sh/timeval.c
-       - in print_timeval, don't assume that the number of minutes fits into
-         an int, since it's just seconds/60.
-
-lib/sh/clock.c
-       - ditto for print_clock_t
-
-                                  5/22
-                                  ----
-shell.c
-       - since the -O option settings may possibly be overridden by the
-         normal shell initialization or posix initialization, save the
-         invocation options on an alist (with add_shopt_to_alist) and
-         process them after basic initialization (with run_shopt_alist)
-
-                                  5/23
-                                  ----
-trap.h
-       - new define, BASH_NSIG, all system signals plus special bash traps
-
-trap.c, builtins/trap.def
-       - use BASH_NSIG for array bounds and loops where appropriate
-
-trap.c
-       - change decode_signal to disallow numeric signal numbers above
-         NSIG -- this means you can only reference special traps like
-         DEBUG by name
-       - new SPECIAL_TRAP(s) macro to test whether s is one of the special
-         bash traps (currently DEBUG and EXIT)
-       - change reset_or_restore_signal_handlers so command substitution
-         doesn't inherit the debug trap (like ksh93), and child processes
-         don't have to rely on initialize_traps being run to get rid of
-         any debug trap
-
-support/mksignames.c
-       - add extra "ERR" signal name, value NSIG+1, allocate space for it
-         and write it out in signal_names[]
-
-trap.h
-       - new define: ERROR_TRAP == NSIG+1, change BASH_NSIG to NSIG+2
-       - extern declarations for set_error_trap, run_error_trap
-       - new define: TRAP_STRING(s), expands to trap_list[s] if signal S
-         is trapped and not ignored, NULL otherwise
-
-trap.c
-       - add ERROR_TRAP to SPECIAL_TRAPS define
-       - initialize ERROR_TRAP stuff in initialize_traps
-       - new function: set_error_trap(command), sets the ERR trap string
-       - new function: run_error_trap(command), runs the ERR trap string
-       - set trap string for ERROR_TRAP to NULL in free_trap_strings
-       - change reset_or_restore_signal_handlers so child processes don't
-         inherit the ERR trap
-       - add case to call run_error_trap in maybe_call_trap_handler
-
-execute_cmd.c
-       - in execute_command_internal, keep track of ERR trap and call it if
-         necessary
-       - use TRAP_STRING to get the value of debug and error traps
-       - in execute_function, arrange things so the ERR trap is not inherited
-         by shell functions, and is saved and restored like the DEBUG trap
-
-doc/{bash.1,bashref.texi}
-       - documented new ERR trap
-
-tests/{trap.{tests,right},trap2.sub,trap2a.sub}
-       - added ERR trap tests
-
-subst.c
-       - on machines without /dev/fd, change the named pipe fifo list to a
-         list of structs containing pathname and proc information
-       - change unlink_fifo_list to kill the proc in the fifo list with
-         signal 0 and not remove the fifo if the proc is still alive.  This
-         should fix the problem on those backward systems without /dev/fd
-         where fifos were removed when a job using process substitution was
-         suspended
-
-                                  5/24
-                                  ----
-examples/loadables/getconf.h
-       - new file, with basic defines needed to make getconf work minimally
-         on POSIX systems without the necessary definitions
-
-examples/loadables/getconf.c
-       - replacement functions for confstr, sysconf, pathconf for systems
-         that lack them, providing a minimal posix interface
-       - heavily augmented getconf, now supports all POSIX.1-200x,
-         POSIX.2-200x, Solaris 7, AIX 4.2 getconf variables
-
-                                  5/29
-                                  ----
-builtins/setattr.def
-       - make `readonly', `export', and `declare' print `invisible' variables
-         as just a command and variable name, without a value, when listing
-         all variables (as POSIX.2-200x d6 requires)
-
-                                  5/30
-                                  ----
-
-configure.in
-       - upgraded to autoconf-2.50 on main development machine, so require
-         autoconf-2.50 in preparation for using some if its new features
-       - call AC_C_PROTOTYPES
-       - remove call to AC_EXEEXT, which now does the wrong thing
-       - changed AC_INIT to new flavor
-       - added call to AC_CONFIG_SRCDIR
-       - AC_CONFIG_HEADER -> AC_CONFIG_HEADERS
-       - AC_RETSIGTYPE -> AC_TYPE_SIGNAL
-
-configure.in, aclocal.m4, config.h.in
-       - removed call to BASH_LARGE_FILE_SUPPORT, use AC_SYS_LARGEFILE
-         standard support, with new macros _FILE_OFFSET_BITS and
-         _LARGE_FILES
-       - removed definition of BASH_LARGE_FILE_SUPPORT
-
-doc/bashref.texi
-       - document new `--enable-largefile' configure option
-
-lib/readline/readline.c
-       - change rl_set_prompt to call rl_expand_prompt unconditionally, so
-         local_prompt and local_prompt_prefix get set correctly
-
-                                   6/6
-                                   ---
-lib/readline/complete.c
-       - don't append `/' or ` ' to a match when completing a symlink that
-         resolves to a directory, unless the match doesn't add anything
-         to the word.  This means that a tab will complete the word up to
-         the full name, but not add anything, and a subsequent tab will add
-         a slash.  Change to append_to_match; callers changed
-
-hashlib.c
-       - new function, hash_table_nentries (table), returns the number of
-         items in TABLE
-
-hashlib.h
-       - extern declaration for hash_table_nentries
-
-configure.in
-       - configure without bash malloc on openbsd; they claim it needs
-         eight-bit alignment (which the bash malloc provides, but...)
-
-                                   7/2
-                                   ---
-stringlib.c
-       - only call RESIZE_MALLOCED_BUFFER from strsub() if the replacement
-         string length is > 0, avoid possible hangs if replacement is null
-
-subst.c
-       - don't include input.h; no longer needed
-
-configure.in
-       - remove calls to AC_SYS_RESTARTABLE_SYSCALLS and
-         BASH_SYS_RESTARTABLE_SYSCALLS; the results are no longer used
-
-config.h.in
-       - remove define for HAVE_RESTARTABLE_SYSCALLS
-
-aclocal.m4
-       - removed definition of BASH_SYS_RESTARTABLE_SYSCALLS; no longer used
-
-execute_cmd.c
-       - changed select command so `return' no longer terminates the select
-         command, so it can be used to return from an enclosing function.
-         This is as ksh (88 and 93) does it
-
-lib/readline/vi_mode.c
-       - fix trivial typo in declaration of vi_motion; `t' appears twice;
-         the second instance should be `T'
-
-                                   7/3
-                                   ---
-configure.in
-       - don't add -static to LDFLAGS on Solaris 2.x.  This means that the
-         auxiliary programs will be built as dynamic executables, but that
-         should do no harm
-
-                                   7/5
-                                   ---
-lib/glob/fnmatch.c
-       - fix the code that processes **(pattern) to short-circuit if the
-         pattern is ill-formed or lacks a trailing `)'  -- this fixes the
-         segfault on **(/*)
-
-Makefile.in, builtins/Makefile.in
-       - split CCFLAGS into CCFLAGS_FOR_BUILD and CFLAGS, to aid in
-         cross-compilation
-       - build programs that use $(CC_FOR_BUILD) using $(CCFLAGS_FOR_BUILD)
-
-configure.in, config.h.in
-       - check for getaddrinfo(3), define HAVE_GETADDRINFO if found
-
-lib/sh/netopen.c
-       - implemented a version of _netopen (_netopen6) that uses
-         getaddrinfo(3) if available, use if HAVE_GETADDRINFO is defined.
-         old _netopen is _netopen4; _netopen now calls either _netopen6
-         or _netopen4 as appropriate
-
-                                   7/9
-                                   ---
-builtins/exit.def
-       - don't source ~/.bash_logout if subshell_environment is non-zero
-
-execute_command.c
-       - in execute_until_or_while, handle the case where `breaking' is
-         set in the loop test (e.g., by the job control code when a job
-         is stopped with SIGTSTP), but the return value from the test is
-         something that would cause the loop to break.  Need to decrement
-         `breaking' in this case
-
-                                  7/10
-                                  ----
-execute_cmd.c
-       - in execute_in_subshell, make sure a command of type cm_subshell
-         inherits its `enclosing' command's CMD_IGNORE_RETURN flag
-
-variables.c
-       - in maybe_make_export_env, don't allow restricted shells to put
-         exported functions in the export environment
-
-                                  7/11
-                                  ----
-lib/glob/strmatch.h
-       - renamed old fnmatch.h
-       - changed guard #ifdef to _STRMATCH_H
-       - include system <fnmatch.h> if HAVE_LIBC_FNM_EXTMATCH is defined
-
-lib/glob/strmatch.c
-       - renamed old fnmatch.c
-       - include "strmatch.h"
-       - if HAVE_LIBC_FNM_EXTMATCH is defined, define a dummy version of
-         strmatch() that just calls fnmatch(3)
-
-lib/glob/glob.c
-       - include "strmatch.h"
-       - fnmatch -> strmatch
-
-Makefile.in, lib/glob/Makefile.in
-       - fnmatch -> strmatch
-
-{bashhist,execute_cmd,pathexp,pcomplete,shell,stringlib,subst,test}.c,
-pathexp.h,builtins/help.def
-       - include <glob/strmatch.h>
-       - fnmatch -> strmatch
-
-execute_cmd.c
-       - broke the code that parses the interpreter name from a #! line
-         out from execute_shell_script to a new function, getinterp()
-       - call getinterp from execute_shell_script
-       - use return value from getinterp in error message about bad
-         #! interpreter in shell_execve
-
-                                  7/12
-                                  ----
-lib/readline/isearch.c
-       - the last isearch string is now remembered in a new static variable,
-         last_isearch_string
-       - if ^R^R is typed, readline now searches for the remembered isearch
-         string, if one exists
-
-                                  7/24
-                                  ----
-pcomplete.h
-       - extern declaration for completions_to_stringlist()
-
-                                  7/25
-                                  ----
-builtins/complete.def
-       - make compgen handle -o default option
-       - make compgen return success only if sl->list_len is non-zero,
-         indicating that there are items on the list
-
-                                  7/31
-                                  ----
-execute_cmd.c
-       - in execute_connection, force stdin to /dev/null for asynchronous
-         commands if job control is not active, not just if the shell is
-         running a shell script (since you can run `set -m' in a script)
-
-lib/readline/rltty.c
-       - make sure _rl_tty_restore_signals resets `tty_sigs_disabled' on
-         successful restoration of the terminal modes
-       - make sure _rl_tty_disable_signals turns off IXON so that ^S and
-         ^Q can be read by rl_quoted_insert
-
-                                   8/1
-                                   ---
-aclocal.m4
-       - new check for FNM_EXTMATCH being defined in <fnmatch.h>, as Ullrich
-         Drepper intends to do for new versions of GNU libc
-
-config.h.in
-       - new definition for HAVE_LIBC_FNM_EXTMATCH
-
-configure.in
-       - check for fnmatch, but don't define anything in config.h
-       - call BASH_FUNC_FNMATCH_EXTMATCH to check for FNM_EXTMATCH
-
-                                   8/2
-                                   ---
-alias.h
-       - remove bogus extern declaration for xmalloc()
-       - include "stdc.h"
-       - add prototype declarations for all extern function declarations
-
-xmalloc.c,lib/readline/xmalloc.c
-       - fix xmalloc to return a PTR_T
-       - fix xrealloc to return a PTR_T and take a PTR_T as first argument
-
-include/ansi_stdlib.h
-       - extern declarations for malloc and realloc have them return PTR_T
-
-xmalloc.h
-       - new file, with extern declarations for functions in xmalloc.c
-
-general.h
-       - removed extern declarations for functions in xmalloc.c
-       - include xmalloc.h
-
-Makefile.in,builtins/Makefile.in
-       - update dependencies to include xmalloc.h
-
-parse.y,{alias,array,bashline,bracecomp,execute_cmd,findcmd,flags,general,
-hashcmd,locale,mailcheck,make_cmd,pathexp,pcomplete,print_cmd,stringlib,
-subst,unwind_prot,variables}.c
-builtins/{common,evalfile}.c
-builtins/{cd,command,enable,exec,printf,read,set}.def
-lib/sh/{makepath,netopen,pathphys,setlinebuf,shquote,snprintf,stringlist,
-strtrans,tmpfile}.c
-lib/readline/{util,terminal,shell,readline,macro,kill,isearch,input,
-histfile,histexpand,display,complete,bind}.c
-       - make sure all calls to xmalloc are cast to the right return value
-
-siglist.c
-       - include xmalloc.h
-
-parse.y,{alias,bashline,bracecomp,expr,make_cmd,nojobs,print_cmd,subst}.c
-builtins/{fc,printf,read}.def
-lib/sh/snprintf.c, lib/tilde/tilde.c
-lib/readline/{bind,display,histexpand,isearch,macro,util,vi_mode}.c
-       - make sure all calls to xrealloc are cast to the right return value
-
-lib/sh/{netopen,setlinebuf,shquote,snprintf}.c, lib/tilde/tilde.c
-       - include xmalloc.h, remove extern declaration of xmalloc
-
-lib/readline/xmalloc.h
-       - xmalloc and xrealloc should return PTR_T
-
-lib/readline/rldefs.h
-       - don't include an extern declaration for xmalloc
-
-                                   8/7
-                                   ---
-support/shobj-conf
-       - fixed up commented-out stanzas for HP's unbundled C compiler on
-         HP/UX
-
-support/bashbug.sh
-       - force the subject to be changed from the default
-
-lib/readline/doc/{rluser.texinfo,readline.3}, doc/bash.1
-       - document that transpose-words swaps the last two words on the line
-         if point is at the end of the line
-
-                                   8/9
-                                   ---
-stringlib.c
-       - fix possible infinite recursion problem with null pattern in
-         strsub()
-
-hashlib.c
-       - new function copy_hash_table to copy a hash table using a caller-
-         supplied function to copy item data (defaults to savestring())
-
-hashlib.h
-       - new extern declaration for copy_hash_table
-
-builtins/declare.def
-       - changes so that declare [-a] var=value assigns `value' to element 0
-         of array variable `var' like ksh93
-       - change so that declare [-a] var[N]=value assigns `value' to element
-         N of array variable `var' like ksh93
-
-                                  8/13
-                                  ----
-arrayfunc.c
-       - new file, for miscellaneous array functions
-
-arrayfunc.h
-       - new file, extern declarations for functions in arrayfunc.c
-
-variables.c
-       - move convert_var_to_array, bind_array_variable,
-         assign_array_from_string, assign_array_var_from_word_list,
-         assign_array_var_from_string, quote_array_assignment_chars,
-         skipsubscript, unbind_array_element, print_array_assignment
-         to arrayfunc.c
-
-shell.h
-       - include arrayfunc.h after variables.h
-
-variables.h
-       - remove above extern function declarations moved to arrayfunc.h
-       - add extern declaration for var_lookup
-
-Makefile.in
-       - add arrayfunc.c, arrayfunc.h in appropriate places
-       - add arrayfunc.h to dependencies
-
-subst.c
-       - move valid_array_reference, array_expand_index, array_variable_part,
-         array_value_internal, array_value (now global), get_array_value,
-         do_array_element_assignment to arrayfunc.c
-
-subst.h
-       - extern declarations for functions above moved to arrayfunc.h
-
-arrayfunc.h
-       - extern declarations for above functions from subst.c
-
-subst.[ch]
-       - string_list_dollar_star and string_list_dollar_at are now global
-         functions
-       - quote_escapes is now a global function
-
-subst.c
-       - maybe_expand_string -> expand_string_if_necessary
-       - expand_string_to_string -> expand_string_to_string_internal
-       - new functions: expand_string_to_string and
-         expand_string_unsplit_to_string, which call
-         expand_string_to_string_internal with expand_string and
-         expand_string_unsplit as the FUNC arguments, respectively
-
-arrayfunc.c
-       - change array_expand_index to call expand_string_to_string instead
-         of maybe_expand_string
-
-                                  8/14
-                                  ----
-shell.c
-       - in execute_env_file, call expand_string_unsplit_to_string
-
-mailcheck.c
-       - in check_mail, call expand_string_to_string
-
-variables.c
-       - in assign_in_env, call expand_string_unsplit_to_string
-
-arrayfunc.c
-       - new function, array_variable_name, splits an array reference into
-         a name (which is returned as a new string) and subscript
-       - change array_variable_part to just call array_variable_name and
-         look up the string returned with find_variable
-       - new function, find_or_make_array_variable (name, flags) which will
-         look up an array variable and convert a string variable to an
-         array if necessary.  The FLAGS argument, if non-zero, says to
-         check the readonly and noassign attributes and fail if either is set
-
-builtins/read.def
-       - make `read -a aname' honor any readonly status of `aname'
-       - read -a now calls find_or_make_array_variable with FLAGS value 1
-
-arrayfunc.[ch], subst.c, builtins/{declare,read}.def
-       - do_array_element_assignment -> assign_array_element
-
-                                  8/20
-                                  ----
-parse.y
-       - changed `for' command grammar to allow missing word list after `IN'
-         token, like latest POSIX drafts require
-
-lib/sh/tmpfile.c
-       - in sh_mktmpname(), check for filenum == 0 and init to non-zero number
-         in this case.  it can happen on arithmetic overflow
-
-support/mkversion.sh
-       - added `[0-9].[0-9][0-9][a-z]' as an acceptable value for a
-         distribution to allow for intermediate versions, like 2.05a
-
-support/config.guess
-       - removed the addition of the output of `/usr/bin/objformat' when
-         creating the canonical name on FreeBSD machines, so the canonical
-         name is once again `freebsd4.2' instead of `freebsdelf4.2'
-
-                                  8/22
-                                  ----
-lib/readline/{rlstdc,history,keymaps,readline,rldefs,rlprivate,rlshell,
-rltypedefs,xmalloc}.h
-lib/readline/{bind,compat,complete,display,funmap,histexpand,histsearch,
-input,isearch,kill,nls,parens,readline,rltty,search,shell,signals,vi_mode
-       - changed __P to PARAMS
-
-lib/tilde/tilde.[ch]
-       - changed __P to PARAMS
-
-{Makefile,configure}.in
-       - changed the version number to 2.05a
-       - changed the release status to `alpha1'
-
-                                  8/23
-                                  ----
-support/shobj-conf
-       - support for building shared libraries on Darwin/MacOS X
-
-siglist.h
-       - extern declaration for strsignal() to compensate for lack of
-         a definition in some system include files
-
-jobs.c
-       - remove casts from strsignal() calls
-
-[bash-2.05a-alpha1 frozen]
-
-                                  8/27
-                                  ----
-[bash-2.05a-alpha1 released]
-
-                                  8/27
-                                  ----
-execute_cmd.c
-       - fix eval_arith_for_expr to handle the case where the expanded
-         word list is NULL, returning 0 in this case
-
-print_cmd.c
-       - in print_function_def, make sure that func_redirects is assigned
-         a value before being used
-
-                                  8/28
-                                  ----
-alias.c
-       - include <ctype.h> for definition of isalpha()
-
-bashhist.h
-       - add prototypes for extern function declarations
-
-flags.c
-       - include bashhist.h for extern function declarations
-
-mksyntax.c
-       - include <unistd.h> if HAVE_UNISTD_H is defined in config.h
-
-parse.y
-       - include test.h for extern function declarations
-
-externs.h
-       - change extern declaration for setlinebuf to sh_setlinebuf
-
-stringlib.c
-       - include <glob/glob.h> for extern function declarations
-
-variables.h
-       - add function prototypes for all of the sv_* functions
-
-builtins/common.h
-       - add extern declarations for set_shellopts() and parse_shellopts()
-         from builtins/set.def
-
-variables.c
-       - include "hashcmd.h" for extern declaration for flush_hashed_filenames
-       - include "pathexp.h" for extern declaration for setup_glob_ignore
-
-lib/malloc/malloc.c
-       - cast to `long' instead of `int' in memalign for 64-bit machines
-
-{pcomplete,trap}.c
-       - changed printf escape sequences used to print pointers to %p
-
-lib/readline/undo.c
-       - include "xmalloc.h" for extern function declaration
-
-input.h
-       - add function prototypes to extern declarations for getc_with_restart
-         and ungetc_with_restart
-
-variables.[ch]
-       - changed type of `function' member of `struct name_and_function' to
-         `sv_func_t', which is defined and prototyped in variables.h
-       - map_over now takes an `sh_var_map_func_t *'
-
-shell.h
-       - start of a set of function pointer typedefs like those in
-         lib/readline/rltypedefs.h
-
-hashlib.[ch]
-       - second paramter to flush_hash_table is now an `sh_free_func_t *'
-
-trap.c
-       - parameter to reset_or_restore_signal_handlers is now an
-         `sh_resetsig_func_t *'
-
-pcomplete.h, pcomplib.c
-       - function pointer argument to print_all_compspecs is now an
-         `sh_csprint_func_t *'
-       - function pointer `list_getter' element of an `ITEMLIST' is now
-         prototyped with __P((...)) instead of using `Function *'
-
-jobs.[ch]
-       - `j_cleanup' member of a JOB is now an `sh_vptrfunc_t *'
-
-alias.c
-       - map_over_aliases now takes an `sh_alias_map_func_t *'
-       - free_alias_data now takes a `PTR_T'
-
-pathexp.c
-       - function pointer argument to ignore_globbed_names is now an
-         `sh_ignore_func_t *' 
-
-bashline.c
-       - function pointer argument to _ignore_completion_names is now an
-         `sh_ignore_func_t *' 
-
-pathexp.h,{bashhist,bashline.c
-       - `item_func' member of a `struct ignorevar' is now an
-         `sh_iv_item_func_t *'
-
-builtins/evalfile.c
-       - `errfunc' is now an `sh_vmsg_func_t *'
-
-jobs.c
-       - map_over_job now takes an `sh_job_map_func_t *' as its first argument
-
-array.[ch]
-       - function pointer argument to array_walk is now an
-         `sh_ae_map_func_t *'
-
-general.c
-       - tilde_expansion_preexpansion_hook has type `tilde_hook_func_t *',
-         and so the assignment in tilde_initialize doesn't need a cast
-
-list.c
-       - map_over_words now takes an `sh_icpfunc_t *' as its second argument
-
-input.h
-       - the `getter' and `ungetter' function pointer members of a
-         BASH_INPUT are now of types `sh_cget_func_t *' and
-         `sh_cunget_func_t *' respectively
-       - init_yy_io now takes an `sh_cget_func_t *' as its first argument and
-         an `sh_cunget_func_t *' as its second
-
-parse.y
-       - init_yy_io now takes an `sh_cget_func_t *' as its first argument and
-         an `sh_cunget_func_t *' as its second
-       - initialize_bash_input casts bash_input.getter and bash_input.ungetter
-         appropriately
-
-builtins/mkbuiltins.c
-       - make the extern function definitions written to builtext.h have
-         prototypes with __P((...))
-       - include "stdc.h"
-       - change Function to mk_handler_func_t
-       - fixed comment_handler to take the right number of args
-       - prototyped all the handler functions with __P((...))
-
-builtins.h
-       - the `function' member of a struct builtin is now of type
-         `sh_builtin_func_t *'
-
-builtins/common.[ch]
-       - last_shell_builtin, this_shell_builtin are now of type
-         `sh_builtin_func_t *'
-       - find_shell_builtin, builtin_address, find_special_builtin now return
-         `sh_builtin_func_t *'
-
-builtins/exit.def, {execute_cmd,jobs,nojobs,variables}.c, parse.y
-       - changed all declarations of last_shell_builtin and this_shell_builtin
-
-execute_cmd.c
-       - execute_builtin, execute_builtin_or_function,
-         execute_subshell_builtin_or_function now take an
-         `sh_builtin_func_t *' instead of a `Function *' for argument
-       - changed appropriate variables from `Function *' to
-         `sh_builtin_func_t *'
-
-builtins/{bind,builtin,enable,read,setattr}.def
-       - replaced uses of `Function *' in variable declarations with
-         appropriate types (sh_builtin_func_t * or rl_command_func_t *)
-
-builtins/set.def
-       - set_func and get_func members of binary_o_options are now of types
-         `setopt_set_func_t *' and `setopt_get_func_t *', which are
-         prototyped
-
-builtins/shopt.def
-       - set_func member of shopt_vars is now of type `shopt_set_func_t *'
-
-bashline.c
-       - enable_hostname_completion now returns `int' (the old value of
-         perform_hostname_completion)
-
-[The only use of Function and VFunction now is for unwind-protects]
-
-                                   9/4
-                                   ---
-lib/sh/getcwd.c
-       - use const define from config.h rather than `CONST'
-       - use PTR_T define from xmalloc.h rather than `PTR'
-       - include xmalloc.h for PTR_T
-       - remove PATH_MAX define, rely on value from maxpath.h
-
-{general,mailcheck}.c, lib/sh/{pathcanon,pathphys}.c
-       - don't include maxpath.h directly; it's already included by shell.h
-
-lib/sh/mailstat.c
-       - new `mailstat()' implementation, to stat a mailbox file for
-         mail checking.  handles maildir-style mail directories with one
-         file per message and creates a dummy stat struct from them
-
-lib/sh/Makefile.in
-       - add mailstat.c and mailstat.o in the appropriate places
-
-lib/malloc/malloc.c
-       - augmented implementation with wrapper functions that pass in file
-         and line number information from cpp.  currently unused, but a
-         placeholder for future debugging and use tracking
-
-lib/malloc/shmalloc.h
-       - new file, extern declarations for allocation wrapper functions for
-         use by the shell (and others, I guess)
-
-xmalloc.[ch]
-       - wrapper functions for xmalloc, xfree, xrealloc (sh_ prefixed) that
-         pass cpp line number information through to the malloc functions,
-         if USING_BASH_MALLOC is defined
-
-                                   9/5
-                                   ---
-lib/malloc/gmalloc.c
-       - removed; no longer part of distribution
-
-lib/malloc/Makefile.in
-       - removed references to gmalloc.[co]
-
-configure.in, doc/bashref.texi
-       - removed references to `--with-glibc-malloc' configure option
-
-{configure,Makefile}.in
-       - changed the way bash malloc is configured into the Makefile, making
-         it more like how readline is configured.  If the bash malloc is
-         not configured in, nothing in lib/malloc will be built
-
-                                   9/6
-                                   ---
-lib/malloc/imalloc.h
-       - new file, some internal malloc definitions
-
-lib/malloc/mstats.h
-       - new file, definitions for malloc statistics structs and functions
-
-lib/malloc/trace.c
-       - new file, malloc tracing functions (currently just print messages
-         to stderr), code is #ifdef MALLOC_TRACE
-
-lib/malloc/stats.c
-       - new file, moved malloc stats code from malloc.c to here
-
-lib/malloc/malloc.c
-       - moved some definitions to imalloc.h
-       - moved stats code to stats.c
-       - malloc tracing calls added to internal_{malloc,realloc,free}, all
-         #ifdef MALLOC_TRACE
-
-lib/malloc/Makefile.in, Makefile.in
-       - added {imalloc,mstats}.h, {trace,stats}.c
-
-parse.y
-       - changed decode_prompt_string to save and restore $?
-         (last_command_exit_value) around calls to expand_prompt_string(),
-         so command substitutions in PS1, etc. don't change $?
-
-{array,subst}.c
-       - a couple more arrayind_t fixes from Paul Eggert
-
-configure.in
-       - remove redundant check for wait3(2)
-
-redir.h
-       - fixed a typo (stdin_redirs -> stdin_redirects)
-
-                                  9/10
-                                  ----
-execute_cmd.c
-       - remove check for \n and \r from WHITESPACE macro, since those
-         chars are not whitespace as returned by the whitespace(c) macro
-       - getinterp now takes a `char *' as first arg, not unsigned char *
-       - execute_shell_script now takes a `char *' as first arg, not
-         unsigned char *
-       - fix typo in forward declaration for `initialize_subshell'
-       
-general.[ch]
-       - check_binary_file now takes a (char *) argument, not unsigned char *
-       - pass unsigned char to isspace and isprint because of ISO C fuckup
-       - bash_tilde_expand now takes a `const char *' as its argument
-
-builtins/evalfile.c, shell.c
-       - buffer passed to check_binary_file is char, not unsigned char
-
-parse.y
-       - fix extern declaration for yyerror()
-       - yyerror now takes a `const char *' as first arg
-
-{error,jobs}.c
-       - fixes to printf-style functions to handle pids wider than an int
-
-lib/readline/{isearch,vi_mode}.c
-       - fix call to rl_message in rl_display_search (remove extra arg)
-
-variables.c
-       - fix missing argument to builtin_error in make_local_variable
-
-builtins/getopts.def
-       - since getopts takes no options, change while loop calling
-         internal_getopts to a simple `if' check
-
-builtins/printf.def
-       - since printf takes no options, change while loop calling
-         internal_getopts to a simple `if' check
-
-lib/readline/bind.c
-       - remove _SET_BELL macro, expand code inline
-
-lib/readline/input.c
-       - change _rl_input_available to use either select or FIONREAD,
-         but not both
-
-lib/readline/readline.c
-       - fix rl_digit_loop to remove unreachable code at end of loop
-
-{bashhist,bashline,expr,jobs,redir,shell}.c, builtins/fc.def, lib/sh/snprintf.c
-       - bracket unused functions with #ifdef INCLUDE_UNUSED/#endif
-       - remove some unused variables
-
-execute_cmd.c
-       - remove #ifdef'd code that allowed `return' to terminate a select
-         statement
-
-expr.c
-       - remove some extraneous tests from strlong()
-
-array.h
-       - arrayind_t is now a long, since shell arithmetic is performed as
-         longs
-       - remove second declaration of new_array_element
-
-builtins/printf.def
-       - in mklong, xrealloc cannot return NULL, so don't check for it
-       - remove some #if 0 code
-       - fix core dump triggered by a format specification with more than
-         one `*'
-       - remove `foundmod', since its value mirrors `modchar != 0'
-       - include "common.h" for builtin_{error,usage} declarations
-
-Makefile.in,builtins/Makefile.in
-       - updated some dependencies due to new include files
-
-pcomplete.c
-       - include "execute_cmd.h" for declaration of execute_shell_function
-
-arrayfunc.c
-       - include <stdio.h> for printf
-       - include "builtins/common.h" for builtin_error declaration
-
-builtins/evalstring.c
-       - include "../trap.h" for run_trap_cleanup declaration
-
-builtins/help.def
-       - include "common.h" instead of locally declaring builtin_error
-         and builtin_usage
-
-error.h
-       - add extern declaration for itrace()
-       - add prototype to extern declaration of get_name_for_error
-       - file_error now takes a `const char *' as first argument
-
-externs.h
-       - added prototype for sh_setlinebuf declaration, bracketed with
-         NEED_SH_SETLINEBUF_DECL so we don't need stdio.h everywhere
-       - add extern declaration for parse.y:return_EOF()
-
-shell.c
-       - add NEED_SH_SETLINEBUF_DECL before including shell.h
-
-lib/readline/callback.c
-       - include <stdlib.h> or "ansi_stdlib.h" for abort declaration
-
-quit.h
-       - remove declaration of throw_to_top_level
-
-subst.c
-       - remove unused extern declaration for getopts_reset
-
-lib/sh/netopen.c
-       - include <shell.h> for legal_number, etc.
-       - add prototype for inet_aton extern declaration
-
-lib/sh/clock.c
-       - include <stdc.h> for __P declaration
-       - add extern declaration for get_clk_tck
-
-support/mkversion.sh
-       - changed so that extern function declarations for functions in
-         version.c (moved from externs.h) are in the generated version.h
-
-shell.h
-       - include version.h
-
-version.c
-       - various `char *' version variables are now `const char *'
-
-general.h
-       - add prototype for same_file, bracketed with _POSIXSTAT_H
-         #ifdef, since that's what include/posixstat.h defines
-
-builtins/common.[ch]
-       - _evalfile, maybe_execute_file, source_file, and fc_execute_file
-         now take a `const char *' as their first argument
-
-eval.c
-       - removed extern declaration of yyparse; it's in externs.h
-
-parse.y
-       - added prototypes to static forward function declarations
-       - changed local `all_digits' variable in read_token_word () to
-         all_digit_token to avoid clash with all_digits() function in
-         general.c
-
-{bashhist,copy_cmd,make_cmd,hashlib,mailcheck}.c
-       - added prototypes for static function declarations
-
-shell.h
-       - add extern declarations for interactive, interactive_shell,
-         changed c files with extern declarations
-
-pcomplete.c
-       - changed it_init_aliases to avoid shadowing global variable
-         `aliases'
-
-bashline.c,pathexp.c,general.h
-       - sh_ignore_func_t is now a pointer to a function taking a
-         `const char *'; users changed
-
-configure.in
-       - test for <strings.h>
-
-config.h.in
-       - add #undef HAVE_STRINGS_H
-
-bashansi.h
-       - change like recommended in autoconf manual
-
-                                  9/11
-                                  ----
-[a date which will live in infamy.  prayers for the victims.]
-
-execute_cmd.c
-       - don't use an absolute index into abuf in mkfmt, use
-         sizeof(abuf) to compute last index
-
-builtins/common.c
-       - fix read_octal to do a better job of detecting overflow while
-         iterating through the string
-
-builtins/umask.def
-       - change octal-print mode to print 4 digits, like other shells
-       - cast umask to unsigned long to avoid problems on systems where
-         it's wider than an int (POSIX doesn't guarantee that mode_t is
-         no wider than an int, but real-world systems use int)
-
-builtins/printf.def
-       - mklong can never return NULL (it uses xrealloc), so the mainline
-         doesn't need to check for NULL returns
-       - new function, getldouble (long double *), to get long doubles
-       - mklong now takes a `char *' as its second argument, the modifier(s)
-         to use
-       - changed use of `modchar' to handle more than a single modifier
-         character
-       - changed to handle `long double' and `L' formats better, rather
-         than discarding long double information
-       - since printf now follows the POSIX.2 rules for conversion errors,
-         we can dispense with the status returns from the get* functions
-       - make the get* functions as similar in structure as possible,
-         removing type casts, etc.
-
-lib/sh/timeval.c,execute_cmd.c
-       - change some instances of `long' to `time_t', for systems where
-         a time_t is bigger than a long
-
-jobs.c
-       - include "posixtime.h" instead of <sys/time.h>
-
-config.h.in
-       - add defines for HAVE_DECL_CONFSTR, HAVE_DECL_STRTOLD,
-         HAVE_DECL_SBRK, HAVE_DECL_PRINTF
-       - remove defines for SBRK_DECLARED and PRINTF_DECLARED
-       - add _GNU_SOURCE define
-
-configure.in
-       - add AC_CHECK_DECLS for strtold, confstr, sbrk, printf
-       - remove call to BASH_FUNC_SBRK_DECLARED
-       - remove call to BASH_FUNC_PRINTF
-
-xmalloc.c, lib/malloc/malloc.c
-       - change check of SBRK_DECLARED to HAVE_SBRK_DECL
-
-print_cmd.c
-       - change PRINTF_DECLARED to HAVE_DECL_PRINTF
-
-builtins/evalstring.c, builtins/common.h
-       - parse_and_execute now takes a `const char *' as its second argument
-
-input.h,parse.y
-       - with_input_from_* functions now take a `const char *' as their
-         second argument
-       - init_yy_io now takes a `const char *' as its fourth argument
-
-parse.y,externs.h
-       - parse_string_to_word_list now takes a `const char *' as its second
-         argument
-
-tests/builtins.right
-       - change output to account for extra digit in umask output
-
-pcomplib.c
-       - free_progcomp now takes a PTR_T argument
-
-builtins/bashgetopt.h
-       - include <stdc.h>
-       - add prototypes to extern declarations
-
-builtins/shopt.def
-       - add prototypes to static function declarations
-
-builtins/{fc,umask,wait}.def, builtins/{bashgetopt,common}.c
-       - include <ctype.h> for isdigit macro (referenced by `digit(x)')
-
-lib/readline/complete.c
-       - added more static function declarations with prototypes
-
-                                  9/12
-                                  ----
-lib/sh/tmpfile.c
-       - use `^' instead of `*' in sh_mktmpname to make filenames a bit
-         more random
-
-include/stdc.h,lib/readline/rldstdc.h
-       - add __attribute__ definition 
-
-builtins/common.h
-       - add printf __attribute__ to declaration of builtin_error
-
-error.h
-       - add printf __attribute__ to declaration of programming_error,
-         report_error, parser_error, fatal_error, sys_error, internal_error,
-         internal_warning
-
-lib/readline/readline.h
-       - add printf __attribute__ to declaration of rl_message
-
-pcomplete.c
-       - add printf __attribute__ to declaration of debug_printf
-
-print_cmd.c
-       - add printf __attribute__ to declarations of cprintf, xprintf
-
-include/chartypes.h
-       - new file, includes <ctype.h> and defines macros that check for
-         safe (ascii) arguments before calling the regular ctype macros
-
-{alias,bashline,execute_cmd,expr,findcmd,general,locale,mksyntax,stringlib,subst,variables}.c
-parse.y
-builtins/{bashgetopt,common}.c
-builtins/{fc,printf,umask,wait}.def
-lib/glob/strmatch.c
-lib/sh/{oslib,pathcanon,pathphys,snprintf,strcasecmp,strindex,stringvec,strtod,strtol,strtrans}.c
-examples/loadables/{head,sleep}.c
-       - include "chartypes.h" or <chartypes.h> instead of <ctype.h>
-
-Makefile.in,{builtins,lib/{glob,sh}}/Makefile.in
-       - update dependencies to include chartypes.h
-
-lib/sh/inet_aton.c
-       - use `unsigned char' instead of `char' to pass to ctype.h functions
-
-lib/sh/netopen.c
-       - check for '0' <= host[0] <= '9' in _getaddr instead of using
-         isdigit
-
-subst.c,lib/sh/shquote.c
-       - change array subscripts into sh_syntaxtab from `char' to
-         `unsigned char'
-
-{alias,bashline,execute_cmd,expr,general,subst}.c, parse.y
-builtins/{fc,printf,umask,wait}.def builtins/{bashgetopt,common}.c
-lib/sh/{pathcanon,pathphys,snprintf,strcasecmp,strindex,strtod,strtol,strtrans}.c
-examples/loadables/{head,sleep}.c
-       - change to use some of the new macros in chartypes.h
-       - remove old local macro definitions now provided by chartypes.h
-
-general.h
-       - remove definition of isletter, ISOCTAL, digit, digit_value
-       - change legal_variable_starter and legal_variable_char to use
-         chartypes.h macros
-       - change ABSPATH to use chartypes.h macros
-
-lib/readline/util.c
-       - change to use Paul Eggert's FUNCTION_FOR_MACRO define to define
-         function replacements for macros in chardefs.h
-
-lib/readline/chardefs.h
-       - added some of the same macros as in chartypes.h
-       - change _rl_lowercase_p, _rl_uppercase_p, _rl_digit_p,
-         _rl_to_upper, _rl_to_lower to use new IS* macros
-       - added _rl_isident macro from vi_mode.c:isident
-
-lib/readline/{bind,complete,nls}.c
-       - change to use some of the new macros from chardefs.h
-
-lib/readline/vi_mode.c
-       - isident -> _rl_isident
-       - remove local defines of macros in chardefs.h
-
-lib/sh/strtol.c
-       - updated to new version, modified from glibc 2.2.4 and sh-utils-2.0.
-         This one can do strtoll and strtoull, if necessary
-
-                                  9/13
-                                  ----
-builtins/ulimit.def
-       - changed get_limit so it retrieves both hard and soft limits
-         instead of one or the other
-       - changed callers of get_limit
-       - changed getmaxvm to take soft limit, hard limit as arguments
-       - changed getmaxuprc to just take a single argument, the value
-       - changed calls to printone() to pass soft limit or hard limit
-         depending on `mode' instead of using old current_limit variable
-       - moved check for out-of-range limits in ulimit_internal into the
-         block that converts a string argument to a value of type rlim_t
-       - changed RESOURCE_LIMITS struct to break the description into a
-         description string and separate scale factor string
-       - changed print_all_limits to print a single error message if
-         get_limit fails, including limits[i].description now that the
-         scale factor has been removed from the description string
-       - removed DESCFMT define, since it's now used only in printone()
-       - changed printone to print the option character associated with a
-         particular limit if we're printing multiple limits
-       - changed calls to builtin_error to print the description associated
-         with a limit if setting or getting the limit fails
-       - added support for new POSIX 1003.1-200x rlim_t values:
-         RLIM_SAVED_CUR and RLIM_SAVED_MAX, which expand to the current
-         soft and hard limits, whatever they are
-       - changed printone to print `hard' or `soft' if the current limit is
-         RLIM_SAVED_MAX or RLIM_SAVED_CUR, respectively
-       - changed ulimit_internal to handle new `hard' and `soft' arguments
-       - changed help text do describe the special limit arguments `hard',
-         `soft', and `unlimited'
-
-doc/{bash.1,bashref.texi}
-       - documented new `hard' and `soft' limit arguments to `ulimit'
-
-hashlib.[ch]
-       - find_hash_item now takes a `const char *' is its first argument
-       - hash_string now takes a `const char *' is its first argument
-       - remove_hash_item now takes a `const char *' as its first argument
-
-pcomplib.c
-       - removed cast from first argument to find_hash_item in find_compspec
-
-general.[ch]
-       - absolute_program now takes a `const char *' as its argument
-       - absolute_pathname now takes a `const char *' as its argument
-
-lib/glob/glob.[ch]
-       - glob_pattern_p now takes a `const char *' as its argument
-
-bashline.c
-       - removed cast from first argument to absolute_program in
-         command_word_completion_function
-       - removed cast from first argument to glob_pattern_p in
-         attempt_shell_completion
-
-findcmd.[ch]
-       - find_absolute_program, find_user_command, find_path_file,
-         search_for_command, user_command_matches now take a
-         `const char *' as their first argument
-       - file_status, executable_file, is_directory, executable_or_directory
-         now take a `const char *' as their argument
-       - _find_user_command_internal, find_user_command_internal,
-         find_user_command_in_path 
-
-lib/sh/makepath.c, externs.h
-       - changed sh_makepath so it takes `const char *' for its first
-         two arguments
-
-hashcmd.[ch]
-       - find_hashed_filename now takes a `const char *' as its first arg
-       - remove_hashed_filename now takes a `const char *' as its first arg
-
-variables.[ch]
-       - new_shell_variable, var_lookup, shell_var_from_env_string,
-         find_name_in_env_array, bind_function, makunbound,
-         bind_name_in_env_array, bind_tempenv_variable, bind_variable
-         now take a `const char *' as their first arg
-       - find_function, make_new_variable, find_tempenv_variable,
-         find_variable_internal, find_variable, set_func_read_only,
-         set_func_auto_export, all_variables_matching_prefix, assign_in_env,
-         assignment, kill_local_variable, make_local_variable, unbind_variable
-         now take a `const char *' as their arg
-       - mk_env_string now takes `const char *' arguments
-
-arrayfunc.[ch]
-       - skipsubscript now takes a `const char *' as its argument
-
-                                  9/17
-                                  ----
-lib/readline/complete.c
-       - attempt to preserve case of what the user typed in
-         compute_lcd_of_matches if we're ignoring case in completion
-
-builtins/{let,pushd}.def,{execute_cmd,expr}.c
-       - change some 0L constants to 0 and let the compiler sort it out
-
-                                  9/18
-                                  ----
-lib/malloc/alloca.c
-       - alloca now takes a `size_t' argument
-
-include/memalloc.h
-       - if we're providing an extern function declaration for alloca,
-         use `void *' and prototype if __STDC__ is defined
-       - if HAVE_ALLOCA_H is defined, but C_ALLOCA is defined, don't
-         define HAVE_ALLOCA
-
-                                  9/19
-                                  ----
-subst.c
-       - do_assignment_internal, do_assignment, and do_assignment_no_expand
-         now take a `const char *' as their first argument
-
-general.h
-       - a `sh_assign_func_t' is now a function taking a `const char *' and
-         returning int
-
-hashcmd.c
-       - free_filename_data now takes a `PTR_T' argument to agree with the
-         typedef for `sh_free_func_t'
-
-lib/sh/snprintf.c
-       - use TYPE_MAXIMUM define like strtol.c instead of huge constants
-
-                                  9/20
-                                  ----
-lib/sh/snprintf.c
-       - don't bother to compile the bulk of the body unless HAVE_SNPRINTF
-         or HAVE_ASPRINTF is not defined
-
-                                  9/24
-                                  ----
-flags.c
-       - ignore `set -n' if the shell was started interactively
-
-lib/readline/readline.c
-       - initialize readline_echoing_p to 0; let the terminal-specific code
-         in rltty.c set it appropriately
-
-lib/malloc/malloc.c
-       - changed internal_memalign() slightly to avoid compiler warnings about
-         negating an unsigned variable (-alignment -> (~alignment + 1))
-
-                                  9/27
-                                  ----
-lib/readline/readline.c
-       - changed rl_newline to set _rl_history_saved_point appropriately
-         for the {previous,next}_history code
-
-lib/readline/rlprivate.h
-       - extern declaration for _rl_history_preserve_point
-
-lib/readline/bind.c
-       - new bindable variable, `history-preserve-point', sets value of
-         _rl_history_preserve_point
-
-                                  10/1
-                                  ----
-lib/malloc/table.c
-       - new file, with a map of allocated (and freed) memory for debugging
-         multiple frees, etc.  Indexed by hash on values returned by
-         malloc(); holds size, file and line number info for last alloc or
-         free and a couple of statistics pointers
-
-lib/malloc/malloc.c
-       - a few cleanups; added calls for registering allocations and frees
-         if MALLOC_REGISTER is defined
-       - replaced MALLOC_RETURN with explicit MALLOC_NOTRACE define
-       - reordered fields in `struct...minfo' in `union mhead' to restore
-         eight-byte alignment
-       - added explicit checks for underflow in free and realloc since
-         checking mh_magic2 is not sufficient to detect everything (it's
-         no longer the last field in the struct, and thus not the bytes
-         immediately preceding what's returned to the user)
-       - new function, xbotch, for printing file and line number info for
-         the failed assertion before calling botch() (programming_error())
-
-configure.in
-       - replaced call to BASH_C_LONG_LONG with call to
-         AC_CHECK_TYPES([long long])
-       - moved the C compiler tests before the tests for various
-         system types, so we can know whether we have `long long'
-         before testing for 64-bit types
-       - if we have `long long', check for sizeof(long long) and save value
-
-aclocal.m4
-       - changed BASH_TYPE_BITS64_T to check `long long' before `long', but
-         after `double'
-
-                                  10/2
-                                  ----
-lib/malloc/malloc.c
-       - made malloc and realloc both agree on the rounding for a request of
-         size N (round up to nearest multiple of 8 after adjusting for
-         malloc overhead); uses new ALLOCATED_BYTES macro
-       - realloc and free now use new IN_BUCKET macro for underflow checks
-
-execute_cmd.c
-       - fixed time_command() to use `time_t' instead of `long' to hold
-         time stamps
-
-lib/sh/clock.c
-       - clock_t_to_secs now takes a `time_t *' second argument
-       - fixed print_clock_t to call clock_t_to_secs with right arguments
-
-lib/sh/timeval.c
-       - fixed print_timeval to make `minutes' a `long' and make its
-         structure identical to print_clock_t
-
-redir.c
-       - changed redirection_error to check for EBADF and use the file
-         descriptor being redirected from in the error message if it
-         is >= 0
-
-Makefile.in
-       - changed release status to `beta1'
-
-lib/glob/collsyms.h
-       - added a few ASCII symbols to the posix_collsyms array
-
-                                  10/3
-                                  ----
-aclocal.m4
-       - fixed typo in BASH_TYPE_BITS64_T
-
-configure.in
-       - added check for unsigned chars with AC_C_CHAR_UNSIGNED
-
-config.h.in
-       - added PROTOTYPES and __CHAR_UNSIGNED__ #defines
-
-general.h
-       - if CHAR_MAX is not define by <limits.h>, provide a definition
-
-builtins/printf.def
-       - change tescape() to mask \0 and \x escape sequences with 0xFF
-       - change tescape() to process at most two hex digits after a `\x'
-
-lib/sh/strtrans.c
-       - change strtrans() to mask \0 and \x escape sequences with 0xFF
-       - change strtrans() to process at most two hex digits after a `\x'.
-         This affects `echo -e' and $'...' processing
-
-lib/readline/bind.c
-       - changed rl_translate_keyseq() to process at most two hex digits
-         after a `\x'
-
-lib/readline/doc/{rluser.texinfo,readline.3}, doc/bash.1
-       - changed documentation for key binding escape sequences to specify
-         that at most two hex digits after \x are translated
-       - changed documentation for key binding to specify that the result
-         of \nnn or \xhh escapes is an eight-bit value, not just ASCII
-
-doc/{bash.1,bashref.texi}
-       - changed documentation of $'...' to specify that at most two hex
-         digits after \x are translated
-       - changed `echo' documentation to specify that at most two hex
-         digits after \x are translated
-       - changed documentation for `echo' and $'...' to specify that the
-         result of \nnn or \xhh escapes is an eight-bit value, not just ASCII
-
-                                  10/4
-                                  ----
-lib/malloc/malloc.c
-       - changed interface for xbotch to pass memory address and error code
-         as two additional arguments
-       - call mregister_describe_mem from xbotch to get the last allocation
-         or free before the botch
-
-configure.in
-       - call AC_CHECK_DECLS([strsignal])
-
-config.h.in
-       - add HAVE_DECL_STRSIGNAL
-
-siglist.h
-       - make declaration of strsignal() dependent on !HAVE_DECL_STRSIGNAL
-
-                                  10/5
-                                  ----
-support/texi2html
-       - upgraded to version 1.64
-
-                                  10/9
-                                  ----
-aclocal.m4
-       - added check for `long long' to BASH_TYPE_PTRDIFF_T
-
-configure.in
-       - replaced call to BASH_HAVE_TIOCGWINSZ with AC_HEADER_TIOCGWINSZ
-
-aclocal.m4
-       - replaced body of BASH_STRUCT_TERMIOS_LDISC with call to
-         AC_CHECK_MEMBER(struct termios.c_line, ...)
-       - replaced body of BASH_STRUCT_TERMIO_LDISC with call to
-         AC_CHECK_MEMBER(struct termios.c_line, ...)
-
-[bash-2.05a-beta1 frozen]
-
-                                  10/10
-                                  -----
-lib/sh/snprintf.c
-       - fixed exponent() to not smash the trailing zeros in the fraction
-         when using %g or %G with an `alternate form'
-       - fixed exponent() to handle the optional precision with %g and %G
-         correctly (number of significant digits before the exponent)
-
-                                  10/11
-                                  -----
-expr.c
-       - fixed strlong() to correct the values of `@' and `_' when
-         translating base-64 constants (64#@ == 62 and 64#_ == 64), for
-         compatibility with ksh
-
-lib/sh/itos.c
-       - added a slightly more flexible fmtlong() function that takes a
-         base argument and flags (for future use)
-       - rewrote itos and inttostr in terms of fmtlong
-
-lib/sh/fmtulong.c
-       - new file, converts unsigned long to string.  hooks for `unsigned
-         long long' in the future.  unused as yet
-
-                                  10/15
-                                  -----
-lib/readline/rltty.c
-       - change the SET_SPECIAL macro to avoid possible (but highly
-         unlikely) negative array subscripts
-
-error.h
-       - add __attribute__ to extern declaration of itrace (even though the
-         function isn't defined in released versions of bash)
-
-bashansi.h
-       - include <strings.h> if HAVE_STRINGS_H is defined, to get any extra
-         function declarations provided therein
-
-copy_cmd.c
-       - fix typo in forward declaration for copy_arith_for_command
-
-lib/malloc/stats.c
-       - make the accumulators in _print_malloc_stats be `unsigned long'
-         instead of `int'
-
-externs.h, sig.h
-       - add `__noreturn__' gcc attribute to exit_shell and jump_to_top_level
-         declarations
-
-lib/sh/mailstat.c, support/bashversion.c
-       - include <bashansi.h> for some string function declarations
-
-lib/malloc/shmalloc.h
-       - added extern declarations of functions that do malloc debugging
-
-lib/readline/{isearch,readline,vi_mode}.c
-       - make sure we index into _rl_keymap with a non-negative index
-
-parse.y
-       - make sure we index into sh_syntaxtab with a non-negative index
-
-lib/readline/vi_mode.c
-       - bound the vi_mark_chars array with the number of characters between
-         'a' and 'z' rather than using a fixed amount
-       - don't use _rl_lowercase_p when deciding whether the char read by
-         rl_vi_set_mark is a valid mark; just use 'a' <= char <= 'z'
-
-lib/readline/chardefs.h
-       - conditionally include memory.h and strings.h as in general.h
-       - replace ISASCII with IN_CTYPE_DOMAIN like other GNU software
-       - add defines for ISPRINT(c), ISLOWER(c) and ISUPPER(c)
-       - fix defines for _rl_lowercase_p, _rl_uppercase_p, _rl_digit_p,
-         _rl_pure_alphabetic, ALPHABETIC, _rl_to_upper, _rl_to_lower,
-         and _rl_isident to work on systems with signed chars
-
-include/chartypes.h
-       - replace ISASCII with IN_CTYPE_DOMAIN like other GNU software
-
-lib/sh/{strcasecmp,strtod,strtol}.c
-       - don't pass possibly-negative characters to tolower() or toupper()
-
-lib/glob/strmatch.c
-       - don't bother testing for isupper in FOLD; rely on TOLOWER macro
-         from <chartypes.h> to do it
-       - don't use local definitions of isblank, et al.; rely on macros
-         from <chartypes.h>
-
-lib/readline/{display,readline}.c, mksyntax.c
-       - use new ISPRINT macro instead of isprint()
-
-builtins/{kill.def,mkbuiltins.c},{error,execute_cmd,jobs,nojobs,subst}.c
-       - don't assume that a pid_t fits into an int for printing and other
-         uses
-
-variables.[ch]
-       - the unused put_gnu_argv_flags_into_env now takes a `long' pid
-         argument
-
-configure.in, config.h.in
-       - call AC_STRUCT_ST_BLOCKS, define HAVE_STRUCT_STAT_ST_BLOCKS if found
-       - check for strtoull(), define HAVE_STRTOULL if found
-       - check for uintmax_t, define to `unsigned long' if not found
-
-lib/sh/mailstat.c
-       - don't use st_blocks member of struct stat unless
-         HAVE_STRUCT_STAT_ST_BLOCKS is defined; otherwise use the st_nlink
-         field to return the total number of messages in a maildir-style
-         mail directory
-
-general.h,{alias,expr,general,subst,variables}.c
-builtins/{printf,read}.def
-lib/readline/{bind,complete,nls}.c
-lib/sh/{pathcanon,pathphys,shquote,snprintf,strindex,strtod,strtol,strtrans}.c
-       - cast args to ctype macros to unsigned char for systems with signed
-         chars; other fixes for signed chars
-
-lib/sh/{fmtullong,strtoull.c}
-       - new files, more support for `long long'
-
-Makefile.in, lib/sh/Makefile.in
-       - make fmtullong.o and strtoull.o part of libsh
-
-lib/sh/itos.c
-       - remove local copy of fmtlong; use fmtulong instead
-       - new functions: uitos, uinttostr work on `unsigned long'
-
-lib/sh/snprintf.c
-       - fixes to make `unsigned long long' work (%llu)
-       - fixes to make unsigned formats not print the sign when given
-         an unsigned long that is greater than LONG_MAX
-
-externs.h
-       - extern declarations for fmtulong, fmtulloing, strtoull
-       - extern declarations for uitos, uinttostr
-
-                                  10/16
-                                  -----
-configure.in
-       - move header checks before function checks
-       - move c compiler tests before header checks
-       - check for <inttypes.h> with BASH_HEADER_INTTYPES
-       - change type checks for intmax_t, uintmax_t to not attempt to
-         include <stdint.h>
-       - check for strtoimax, strtoumax, strtoll, strtol, strtoull, strtoul
-         with BASH_CHECK_DECL (for declarations in header files) and
-         AC_REPLACE_FUNCS (for availability and LIBOBJS substitution)
-       - remove check for have_long_long around sizeof check for long long
-         (since autoconf will give it a size of 0 if the type isn't found)
-
-config.h.in
-       - add a define for HAVE_INTTYPES_H
-       - add a define for HAVE_UNSIGNED_LONG_LONG
-       - add defines for HAVE_STRTOIMAX, HAVE_STRTOUMAX, HAVE_STRTOLL
-
-aclocal.m4
-       - new func, BASH_HEADER_INTTYPES, which just calls AC_CHECK_HEADERS
-         on <inttypes.h>; separate so it can be AC_REQUIREd
-       - AC_REQUIRE([BASH_HEADER_INTTYPES]) in BASH_CHECK_TYPE
-       - include <inttypes.h> in BASH_CHECK_TYPE if HAVE_INTTYPES_H is
-         defined
-       - change AC_DEFINE to AC_DEFINE_UNQUOTED in BASH_CHECK_TYPE
-       - new `long long' checking macros:  BASH_TYPE_LONG_LONG and
-         BASH_TYPE_UNSIGNED_LONG_LONG
-       - new BASH_CHECK_DECL 
-
-lib/sh/{strto[iu]max,strtoll}.c, lib/sh/Makefile.in, Makefile.in
-       - new files
-
-externs.h
-       - extern declarations for strtoll, strtoimax, strtoumax
-
-lib/malloc/alloca.c
-       - include <bashtypes.h> for size_t
-
-builtins/printf.def
-       - new functions: getllong, getullong, getintmax, getuintmax; return
-         long long, unsigned long long, intmax_t, uintmax_t respectively
-       - builtin printf now handles `ll' and `j' length modifiers directly
-
-lib/sh/Makefile.in
-       - use LIBOBJS to decide whether or not the strto* functions are
-         needed
-
-                                  10/17
-                                  -----
-configure.in
-       - call AC_REPLACE_FUNCS(rename)
-       - move getcwd, strpbrk, strcasecmp, strerror, strtod
-         from AC_CHECK_FUNCS to AC_REPLACE_FUNCS
-       - only call BASH_FUNC_GETCWD if $ac_func_getcwd == "yes"
-       - call BASH_CHECK_SYS_SIGLIST
-       - if we don't have vprintf but have _doprnt, call AC_LIBOBJ(vprint)
-
-lib/sh/Makefile.in
-       - remove rename, getcwd, inet_aton, strpbrk, strcasecmp, strerror,
-         strtod, vprint from OBJECTS; picked up from LIBOBJS
-
-aclocal.m4
-       - change BASH_FUNC_GETCWD to call AC_LIBOBJ(getcwd) if the libc
-         getcwd(3) calls popen(3)
-       - change BASH_FUNC_INET_ATON to call AC_LIBOBJ(inet_aton) if it's
-         not found in libc or as a #define even with the special includes
-       - BASH_KERNEL_RLIMIT_CHECK -> BASH_CHECK_KERNEL_RLIMIT
-       - BASH_DEFAULT_MAILDIR -> BASH_SYS_DEFAULT_MAILDIR
-       - BASH_JOB_CONTROL_MISSING -> BASH_SYS_JOB_CONTROL_MISSING
-       - BASH_REINSTALL_SIGHANDLERS -> BASH_SYS_REINSTALL_SIGHANDLERS
-       - BASH_SIGNAL_CHECK -> BASH_SYS_SIGNAL_VINTAGE
-       - BASH_DUP2_CLOEXEC_CHECK -> BASH_FUNC_DUP2_CLOEXEC_CHECK
-       - BASH_PGRP_SYNC -> BASH_SYS_PGRP_SYNC
-       - BASH_RLIMIT_TYPE -> BASH_TYPE_RLIMIT
-       - BASH_FUNC_PRINTF -> BASH_DECL_PRINTF
-       - BASH_FUNC_SBRK_DECLARED -> BASH_DECL_SBRK
-       - BASH_MISC_SPEED_T -> BASH_CHECK_SPEED_T
-       - BASH_CHECK_SOCKLIB -> BASH_CHECK_LIB_SOCKET
-       - new macro, BASH_CHECK_SYS_SIGLIST, encapsulates all the checks for
-         sys_siglist, _sys_siglist, and strsignal(), sets SIGLIST_O to
-         siglist.o if appropriate
-
-Makefile.in
-       - use SIGLIST_O variable to decide whether or not we need siglist.o
-
-{execute_cmd,subst}.c
-       - change a couple of instances of ISDIGIT to DIGIT, where we really,
-         really only want ascii digits
-
-ansi_stdlib.h
-       - don't need a declaration for atol()
-
-                                  10/18
-                                  -----
-
-aclocal.m4
-       - new macro, BASH_FUNC_PRINTF_A_FORMAT, checks for printf support
-         for %a, %A conversion specifiers, defines HAVE_PRINTF_A_FORMAT
-         if successful
-
-configure.in
-       - call AC_CHECK_FUNCS for isascii
-       - call BASH_FUNC_PRINTF_A_FORMAT
-
-config.h.in
-       - add a define for HAVE_ISASCII
-       - add a define for HAVE_PRINTF_A_FORMAT
-
-lib/sh/snprintf.c
-       - for long double output, fall back to sprintf using ldfallback()
-         function for floating point formats
-       - support %a, %A using dfallback() or ldfallback() if
-         HAVE_PRINTF_A_FORMAT is defined
-       - fix bug in vasprintf that returned wrong value in its first
-         argument if the buffer holding the result string got reallocated
-       - fixed PUT_CHAR macro to increment the counter even if we've
-         exceeded the buffer size, for the return value from
-         vsnprintf/snprintf
-       - fix vsnprintf_internal to not use counter < length as a loop
-         condition, but always process the entire format string (for
-         the return value from vsnprintf/snprintf)
-
-builtins/printf.def
-       - support %a, %A if HAVE_PRINTF_A_FORMAT is defined
-
-include/typemax.h
-       - new file, with the TYPE_MAXIMUM stuff that's duplicated in several
-         files in lib/sh
-
-lib/sh/{fmtulong,strtol,snprintf}.c
-       - include <typemax.h> instead of having the definitions in each file
-
-lib/sh/Makefile.in
-       - updated dependencies for typemax.h
-
-                                  10/22
-                                  -----
-configure.in
-       - call AC_CHECK_FUNCS on ctype.h functions/macros that bash redefines
-         in chartypes.h
-
-config.h.in
-       - defines for HAVE_IS{ASCII,BLANK,GRAPH,PRINT,SPACE,XDIGIT}
-
-include/chartypes.h, lib/glob/strmatch.c, lib/readline/chardefs.h
-       - don't redefine some is* ctype macros/functions if HAVE_ISXXX is
-         defined (meaning that an appropriate function, but not a macro,
-         exists)
-
-lib/sh/strtrans.c
-       - new function, ansic_shouldquote, returns 1 if argument string
-         contains non-printing chars that should be quoted with $'...'
-
-externs.h
-       - new declaration for ansic_shouldquote()
-
-variables.c
-       - change print_var_value to ansi C quote the string if we're not in
-         posix mode and the variable's value contains non-printing chars,
-         to use the regular shell single quoting if the value contains
-         shell meta-characters, and to just output the string otherwise
-
-lib/sh/shquote.c
-       - add `break' to `case '~':' to avoid fallthrough and extra test
-
-doc/bashref.texi
-       - note that in POSIX mode, `set' displays variable values that
-         include nonprinting characters without quoting, unless they
-         contain shell metacharacters
-
-builtins/printf.def, lib/sh/snprintf.c
-       - handle `F' conversion specifier as equivalent to 'f'
-
-parse.y, {nojobs,variables}.c
-       - a couple of cleanups for when building a minimal configuration
-
-nojobs.c
-       - new function: stop_making_children(), just sets
-         already_making_children to 0 (like stop_pipeline)
-
-subst.c
-       - call stop_making_children from subst.c:command_substitute if
-         JOB_CONTROL is not defined.  This fixes the bug where the wrong
-         process is waited for (and its status returned) when using
-         command substitution in a null command in a shell function
-
-builtins/printf.def
-       - new variable `tw' used to keep track of the total number of
-         characters written by a single call to `printf' -- to be
-         used for the `%n' conversion, which will be added later.  It
-         gets reset each time we reuse the format string, which is what
-         ksh93 seems to do
-
-                                  10/23
-                                  -----
-variables.c
-       - new function, bind_var_to_int (char *var, long val)
-
-variables.h
-       - extern declaration for bind_var_to_int
-
-lib/sh/netopen.c
-       - use gai_strerror() for error messages when getaddrinfo() fails
-       - use PF_INET if DEBUG is defined, since IPv6 doesn't work for me
-
-Makefile.in
-       - pass DEBUG=${DEBUG} down to makes in some subdirectories
-
-{builtins,lib/{glob,sh}}/Makefile.in
-       - append ${DEBUG} to LOCAL_CFLAGS value, passed by top-level Makefile
-
-builtins/printf.def
-       - added support for %n format conversion char (number of chars printed
-         so far from current format string)
-
-                                  10/24
-                                  -----
-variables.c
-       - if posixly_correct is set, the default value of $MAILCHECK is 600
-       - use legal_number instead of atoi in adjust_shell_level
-       - treat non-numeric assignments to SECONDS as 0 in assign_seconds
-       - new function, init_funcname_var; sets FUNCNAME as a dynamic variable
-         if it's not set in the initial environment
-       - new function, init_groups_var; sets GROUPS as a dynamic array
-         variable if it's not set in the initial environment
-       - new function, init_dirstack_var; sets DIRSTACK as a dynamic array
-         variable if it's not set in the initial environment
-       - new function, init_seconds_var; sets SECONDS as a dynamic
-         variable using any valid integer value in the initial environment
-         as the initial value, as if an assignment had been performed
-       - call init_funcname_var, init_groups_var, init_dirstack_var,
-         init_seconds_var from initialize_dynamic_variables
-       - non-numeric values assigned to LINENO are treated as 0
-       - change initialize_shell_variables to not auto-export PATH or TERM
-       - change set_home_var to not auto-export HOME
-       - change set_shell_var to not auto-export SHELL
-       - broke the code that sets HOSTNAME, HOSTTYPE, MACHTYPE, OSTYPE
-         out into a separate function, set_machine_vars; none of those
-         variables are auto-exported
-       - bash no longer un-exports SSH_CLIENT or SSH2_CLIENT
-
-shell.c
-       - changed isnetconn() to check SSH_CLIENT and SSH2_CLIENT only if
-         SSH_SOURCE_BASHRC is defined in config-top.h
-
-config-top.h
-       - added a commented-out definition for SSH_SOURCE_BASHRC
-
-                                  10/25
-                                  -----
-
-Makefile.in
-       - changed RELSTATUS to `rc1' (release candidate 1)
-
-                                  10/29
-                                  -----
-locale.c
-       - fixed an `=' vs. `==' typo in set_locale_var when parsing
-         LC_NUMERIC
-
-doc/{bash.1,bashref.texi}
-       - document what bash does with $POSIXLY_CORRECT
-
-doc/builtins.1
-       - some updates
-
-builtins/psize.sh
-       - some mktemp(1) changes
-
-lib/readline/readline.c
-       - change rl_backward to check for rl_point < 0 and reset to 0 if so
-
-lib/readline/util.c
-       - don't compile in _rl_strpbrk if HAVE_STRPBRK is defined
-
-lib/readline/rlprivate.h
-       - remove extern declaration of _rl_strpbrk
-
-lib/readline/rldefs.h
-       - #define _rl_strpbrk as strpbrk if HAVE_STRPBRK is define, otherwise
-         add extern declaration of _rl_strpbrk from rlprivate.h
-
-{mailcheck,shell,variables}.c
-       - make sure to include posixtime.h to get any prototype for time(3)
-         in scope
-
-{array,eval,execute_cmd,mksyntax,subst}.c, parse.y
-builtins/common.c
-lib/sh/pathcanon.c
-       - a few changes as the result of `gcc -Wall' patches from solar
-         designer
-
-builtins/read.def, parse.y
-       - change some calls to free() to xfree()
-
-builtins/set.def
-       - make sure unset_builtin() resets unset_array to 0 each time through
-         the loop, because it's set (and used) depending on the current
-         argument
-
-shell.h
-       - new define, USE_VAR, to force the compiler to not put a particular
-         variable in a register -- helpful if registers are not restored
-         by setjmp/longjmp
-
-builtins/{evalfile.c,{read,wait}.def}, {eval,execute_cmd,shell,test}.c
-       - use USE_VAR for some variables
-
-subst.c
-       - fixed a case in expand_word_internal where a NULL pointer could
-         have been passed to free() (though free() should ignore it)
-       - fixed a case at the end of expand_word_internal where LIST could
-         have been used uninitialized (it makes gcc happy, though it
-         doesn't happen in practice)
-
-test.c
-       - give test_syntax_error(), beyond(), and integer_expected_error()
-         the `__noreturn__' attribute for gcc
-
-unwind_prot.c
-       - in clear_unwind_protect_list(), convert `flags' to `long' (via
-         assignment to a `long' variable) before casting to `char *', in
-         case pointers and longs are 64 bits and ints are 32 (makes no
-         difference on 32-bit machines)
-
-                                  10/30
-                                  -----
-print_cmd.c
-       - fixed cprintf to avoid gcc warning about assigning const pointer
-         to non-const (discarding type qualifier)
-
-{make_cmd,pcomplete,test}.c,parse.y
-       - some minor changes to shut up gcc warnings
-
-lib/sh/tmpfile.c
-       - fixed sh_mktmpfp to avoid file descriptor leaks in the case that
-         sh_mktmpfd succeeds but fdopen fails for some reason
-       - change sh_mktmpfd to use the same scheme for computing `filenum'
-         as sh_mktmpname
-       - change get_sys_tmpdir to prefer P_tmpdir if P_tmpdir is defined
-       - changed sh_mktmpname and sh_mktmpfd to avoid trying to assign to
-         `nameroot' if `nameroot == 0' (duh)
-       - add code to sh_mktmpfd to use mkstemp(3) if USE_MKSTEMP is defined
-       - add code to sh_mktmpname to use mktemp(3) if USE_MKTEMP is defined
-
-support/{fixlinks,mkclone}
-       - use mktemp if it's available for the symlink test
-       - use $TMPDIR instead of hardcoding /tmp; default to /tmp
-       - use a better filename for the symlink test instead of `z'
-
-support/bashbug.sh
-       - more changes inspired by a patch from solar designer
-
-lib/malloc/Makefile.in
-       - new target `alloca', which builds libmalloc.a with alloca.o only
-         (for systems without alloca that are configured --without-bash-malloc)
-
-configure.in
-       - if we don't have a working alloca and are not configured to build
-         the bash malloc library, make a malloc library containing only
-         alloca.o
-
-aclocal.m4
-       - slight change to RL_LIB_READLINE_VERSION to deal with minor version
-         numbers with a letter appended (like 4.2a)
-
-                                  10/31
-                                  -----
-doc/{bash.1,bashref.texi}
-       - slight change to note that only interactive shells resend a SIGHUP
-         to all jobs before exiting
-
-externs.h
-       - declare strto[ui]max only if NEED_STRTOIMAX_DECL is defined.  This
-         keeps picky compilers from choking because intmax_t is not defined
-         (MacOS X 10.1)
-
-builtins/printf.def
-       - #define NEED_STRTOIMAX_DECL before including shell.h
-
-                                  11/1
-                                  ----
-general.c
-       - check in bash_tilde_expand() for an unquoted tilde-prefix; don't
-         bother passing the string to tilde_expand unless the prefix is
-         unquoted
-
-shell.c
-       - fix a problem with $LINENO when executing commands supplied with
-         the -c invocation option when ONESHOT is defined
-
-[bash-2.05a-rc1 frozen]
-
-builtins/printf.def
-       - fix the %n conversion to require that the variable name supplied
-         be a valid shell identifier
-
-variables.c
-       - improve random number generator slightly by using the upper 16
-         bits of the running random number instead of the lower 16, which
-         are incrementally more random
-
-                                  11/2
-                                  ----
-configure.in
-       - if RL_INCLUDEDIR ends up being /usr/include, don't put
-         -I$(RL_INCLUDEDIR) into CFLAGS
-
-                                  11/5
-                                  ----
-doc/{bash.1,bashref.texi}
-       - correct description of POSIXLY_CORRECT to note that the shell enters
-         posix mode *before* the startup files are read if POSIXLY_CORRECT
-         is in the initial environment
-
-variables.c
-       - fix function prologues for init_dirstack_var and init_groups_var
-         to agree with caller (no arguments)
-
-jobs.c
-       - fix forward function declarations for pipe_read and pipe_close
-
-subst.c
-       - removed `inline' attribute from skip_double_quoted because it can
-         potentially be called recursively
-
-bashline.c
-       - quick fix to bashline.c:attempt_shell_completion programmable
-         completion code to just punt if the end of the command word found
-         by find_cmd_end is <= the start found by find_cmd_start (the bug
-         is probably in find_cmd_start -- fix later)
-
-pcomplete.c
-       - fix gen_matches_from_itemlist to return if the stringlist is null
-         after any cleaning or initialization, before trying to use it
-       - fix GEN_COMPS to only bother to try to append the STRINGLIST
-         returned by gen_matches_from_itemlist to `glist' if it's non-NULL
-
-lib/sh/stringlist.c
-       - make copy_stringlist return NULL if the STRINGLIST * passed as an
-         argument is NULL
-       - make append_stringlist call copy_stringlist only if M2 is non-NULL;
-         otherwise just return NULL if m1 is NULL
-       - make word_list_to_stringlist return 0 immediately if the passed
-         LIST argument is NULL
-       - make realloc_stringlist call alloc_stringlist if the passed
-         STRINGLIST argument (`sl') is 0, just like realloc calls malloc
-
-subst.c
-       - in skip_to_delim(), if we have an unclosed ${, and it's at the end
-         of the string (string[i] == '{', string[i+1] == '{' and
-         string[i+2] == 0, return si (i + 2) immediately without bothering
-         to call extract_dollar_brace_string or extract_delimited_string
-       - in skip_to_delim(), if string[i] is 0 after a call to
-         extract_dollar_brace_string or extract_delimited_string (meaning we
-         have an unclosed ${ or other expansion, return i immediately without
-         doing a `continue' (which will increment i past the end of string)
-       - in split_at_delims, don't increment te by 1 if it's pointing to a
-         delimiter.  this has the effect of skipping the first delimiter
-         char in a possibly multi-character delimiter, and ignoring
-         single-char delimiters like `>'
-
-configure.in
-       - use AC_CHECK_MEMBERS([struct stat.st_blocks]) instead of a call to
-         AC_STRUCT_ST_BLOCKS to avoid configure changing LIBOBJS if the test
-         fails
-
-general.c
-       - introduce two new variables: bash_tilde_{prefixes,suffixes}, set
-         to the additional prefixes and suffixes bash wants to pass to the
-         tilde expansion code (reserved for post-bash-2.05a fix)
-
-aclocal.m4
-       - add missing `test' in BASH_CHECK_SYS_SIGLIST
-
-                                  11/7
-                                  ----
-lib/readline/vi_mode.c
-       - fix rl_vi_goto_mark to explicitly check that the desired mark is
-         between 'a' and 'z', since some locales have lowercase letters
-         outside that range, which could cause a negative subscript
-
-include/chartypes.h
-       - remove superfluous `#undef ISASCII'
-
-lib/sh/strto[iu]max.c
-       - changes from Paul Eggert to work around buggy compilers and catch
-         configuration errors at compile time
-
-aclocal.m4
-       - new macro, BASH_C_LONG_DOUBLE, identical to AC_C_LONG_DOUBLE but
-         with a fix for Irix 5.3 (not called, since I'm not sure it's the
-         right thing to do -- the C standard allows double and long double
-         to be the same size)
-
-lib/sh/snprintf.c
-       - only try to write the trailing NUL in vsnprintf_internal if
-         data->length is >= 0, since if it's not, we probably don't have
-         a buffer
-
-Makefile.in
-       - changed RELSTATUS to `release'
-
-                                  11/8
-                                  ----
-lib/sh/strtol.c
-       - make sure chars passed to toupper are cast to unsigned
-
-unwind_prot.c
-       - change clear_unwind_protect_list to not require a cast from `int'
-         to `char *'
-
-lib/readline/chardefs.h
-       - make _rl_digit_p succeed only for ascii digits, since that's what
-         most callers assume
-
-                                  11/13
-                                  -----
-doc/bashref.texi
-       - added `ERR' trap and [-+]O invocation option to section listing
-         differences from the Bourne shell
-
-                                  11/15
-                                  -----
-[bash-2.05a released]
-
-                                  11/19
-                                  -----
-include/stdc.h
-       - new define, INLINE, defined as `inline' for gcc and empty otherwise
-
-subst.c
-       - make skip_double_quoted, sub_append_string have INLINE attribute
-
-trap.c
-       - use BASH_NSIG as upper limit for signal names in signal_name()
-
-lib/readline/bind.c
-       - use RL_COMMENT_BEGIN_DEFAULT in output for rl-comment-begin value
-
-error.c
-       - fix sys_error to save value of errno around calls to fprintf
-
-doc/Makefile.in
-       - added rules to create PDF files from postscript and dvi input
-
-MANIFEST.doc
-       - added {article,bash,bashref,rose94}.pdf
-
-doc/bash.1
-       - rearranged some `.PD 0' and `.TP' directives so man2html will
-         handle them better (shouldn't affect groff output)
-
-support/man2html.c
-       - small fix to handle quoted string arguments to directives like
-         `.BR' without mangling the output
-
-                                  11/20
-                                  -----
-{arrayfunc,variables}.c
-       - changed calling sequence for dynamic array variable `assign'
-         functions to (SHELL_VAR *self, char *value, arrayind_t ind)
-       - changed calling sequence for dynamic variable assign functions
-         to the same as array variable assign_func.  Now this can be
-         prototyped
-
-variables.h
-       - the assign_func member of a `struct variable' is now of type
-         `sh_var_assign_func_t', which is prototyped
-       - the dynamic_value member of a `struct variable' is now of type
-         `sh_var_value_func_t', which is prototyped
-
-variables.c
-       - changed to use `sh_var_assign_func_t' and `sh_var_value_func_t'
-
-builtins/cd.def
-       - when in posix mode, if the new directory name formed by PWD and
-         the argument passed by the user cannot be canonicalized, and the
-         -P option has not been supplied, return failure immediately
-       - if canonicalization failed, but the fallback to the directory
-         name specified by the user succeeds, reset the current working
-         directory
-
-lib/readline/{input.c,rlprivate.h}
-       - renamed rl_unget_char to _rl_unget_char; made library global
-
-lib/readline/{{bind,readline}.c,{keymaps,rlprivate}.h}
-       - support for `key subsequences'; allows a key sequence and a function
-         mapped to a subsequence of that key sequence.  Primarily to allow
-         arrow keys to be bound in readline vi insert mode, while preserving
-         the ESC function to switch to command mode.
-
-lib/readline/{input.c,rlprivate.h}
-       - new function, _rl_input_queued(T), does a check with select or
-         FIONREAD with a timeout of `T' (which is generally 0)
-
-lib/readline/readline.c
-       - change _rl_dispatch_subseq to test for input in the queue if we
-         get ESC while in vi insertion mode if the keymap entry type for
-         ESC is ISKMAP.  If _rl_input_queued returns non-zero, we assume
-         that an arrow key sequence has been pressed and go ahead with the
-         subsequence.  If it returns zero, we assume that the user pressed
-         ESC to switch into command mode, and dispatch to that right away.
-         This avoids forcing the user to press another key before switching
-         into command mode
-
-                                  11/21
-                                  -----
-lib/readline/readline.c
-       - bind common arrow key sequences in vi insertion keymap
-
-lib/readline/terminal.c
-       - bind termcap definition's arrow keys in vi insertion keymap
-
-lib/readline/bind.c
-       - check for rl_vi_movement_mode in _rl_bind_if_unbound, so
-         binding the arrow keys can work
-
-lib/readline/readline.c
-       - since _rl_bind_if_unbound does the check of what's currently
-         bound to the key sequence, the check in bind_arrow_keys_internal
-         was redundant
-       - bind_arrow_keys_internal now takes a Keymap argument and handles
-         saving and restoring _rl_keymap; changed bind_arrow_keys
-         accordingly
-
-builtins/fc.def
-       - fix from Paul Eggert to substitute the nearest history number in
-         range if an out-of-range value is supplied.  POSIX requires this
-
-lib/sh/pathcanon.c
-       - fix from Corrina Vinschen for the special `cygdrive' prefix on
-         Cygwin
-
-bashhist.c
-       - split the history adding code into more pieces:
-           check_history_control (char *line) checks LINE against the value
-           of HISTCONTROL, returning 1 if LINE should be saved and 0 if not
-
-           check_add_history (char *line) calls check_history_control and
-           history_should_ignore (line) and saves the line with
-           bash_add_history if the checks indicate that it should be saved
-
-           maybe_add_history just calls check_add_history to set the value
-           of first_line_saved
-
-bashhist.h
-       - extern declaration for check_add_history()
-
-shell.c
-       - don't call load_history() from the interactive shell startup
-         code if history_lines_this_session is > 0, indicating that we've
-         already saved some lines in the history and that we probably
-         don't want to overwrite them
-
-builtins/history.def
-       - call check_add_history from push_history, so `history -s xx'
-         works even when in a compound command whose first line has not
-         been saved.  (Caveat:  in a compound command when the first
-         line has been saved, the line supplied to history -s will become
-         part of the compound command's history entry.  Of course, the
-         delete_history call could remove the compound command from the
-         history entirely)
-
-bashline.c
-       - use sh_makepath instead of xmalloc/sprintf in
-         command_word_completion_function
-
-lib/readline/complete.c
-       - get_y_or_n now takes an int FOR_PAGER argument; caller changed
-         If FOR_PAGER is non-zero, get_y_or_n returns appropriate values
-         for a more-like pager:  `newline' or `return' return 2; `q' or
-         `Q' return 0
-       - there is now a mini internal more-like pager for displaying a
-         list of completions that exceeds the screen height (new function
-         _rl_internal_pager, called from rl_display_match_list)
-
-                                  11/24
-                                  -----
-command.h
-       - new flag, W_TILDEEXP, says to do tilde expansion on an
-         assignment word
-
-execute_cmd.c
-       - fix_assignment_words now sets W_TILDEEXP for assignment word
-         arguments to `assignment builtins'
-
-general.c
-       - bash_tilde_expand now takes a second argument indicating whether
-         or not it's being invoked in an `assignment context'
-
-general.h
-       - change extern declaration for bash_tilde_expand
-
-{bashline,execute_cmd,findcmd,general,variables}.c
-builtins/evalfile.c
-lib/sh/makepath.c
-       - fix callers of bash_tilde_expand appropriately
-
-subst.c
-       - fix callers of bash_tilde_expansion appropriately
-       - add (currently commented-out) code that would tilde expand assignment
-         statement arguments to assignment builtins (W_TILDEEXP flag set)
-         even when the shell is in posix mode
-
-bashline.c
-       - fix attempt_shell_completion to turn off
-         rl_filename_completion_desired when doing command name completion,
-         so no slash gets appended to the name if there happens to be a
-         directory with the same name in the current directory
-
-                                  11/26
-                                  -----
-lib/readline/rltech.texinfo
-       - a couple of additions to the rl_stuff_char description
-
-parse.y
-       - turn off echo_input_at_read in parse_string_to_word_list, so `set -v'
-         doesn't give extra lines of output when doing compound array
-         assignment
-
-subst.c
-       - fix split_at_delims to handle skipping over a `\n' if it's a
-         delimiter (use spctabnl(c) instead of whitespace(c))
-
-                                  11/27
-                                  -----
-support/config.{guess,sub}
-       - updated (with bash changes) to latest version from gnu.org
-
-sig.h
-       - add prototype for set_signal_handler declaration
-
-builtins/setattr.def
-       - add prototype to extern declaration of declare_builtin
-
-builtins/times.def
-       - add no_options call, since times takes no options
-
-lib/sh/spell.c
-       - add prototypes to forward declarations for midist and spdist
-
-lib/sh/strtrans.c
-       - add explicit int return type to ansic_shouldquote declaration
-
-lib/readline/rldefs.h, lib/readline/{macro,readline,util,undo}.c
-       - move define for SWAP to rldefs.h, removed from various C files
-
-lib/readline/vi_mode.c
-       - removed define for exchange(), changed to use SWAP instead
-
-lib/readline/bind.c
-       - added some static forward function declarations
-       - find_boolean_var, find_string_var now take a `const char *' argument
-
-lib/readline/signals.c
-       - added static forward declaration for rl_maybe_set_sighandler
-
-lib/readline/readline.c
-       - add some common key bindings for the HOME and END keys in
-         bind_arrow_keys_internal
-
-lib/readline/terminal.c
-       - fetch the `@7' termcap string; it's sent by the END key
-       - attempt to bind the terminal's END key to rl_end_of_line in
-         bind_termcap_arrow_keys; I don't know why I was using `kH'
-         instead of `@7'
-
-doc/builtins.1
-       - remove `case', `for', `if', `until', `while' from NAME section;
-         those are not shell builtins
-
-                                  11/28
-                                  -----
-stringlib.c
-       - new function, find_token_in_alist, takes a token value and an
-         ALIST argument, and returns the string correspoinding to the
-         token if found in the alist
-
-externs.h
-       - new extern declaration for find_token_in_alist()
-
-subst.c
-       - string_list_internal is no longer static
-
-subst.h
-       - new extern declaration for string_list_internal()
-
-parse.y
-       - new alist array of other tokens returned by read_token which are
-         not reserved words in word_token_alist[]
-       - reworked error reporting:  new functions print_offending_line,
-         which prints the line containing the syntax error,
-         error_token_from_token, which takes the current token and tries to
-         figure out its textual representation, and error_token_from_text,
-         which does the old job of finding the bad token by analyzing the
-         text of shell_input_line at the current index
-       - report_syntax_error now tries to figure out the token that caused
-         the syntax error by first looking at current_token and falling
-         back to the old method of textual analysis if that fails
-       - report_syntax_error doesn't say the token resulting from the textual
-         analysis of the input line is an `unexpected token'; it just
-         says there is a `syntax error near xxx'
-       - changed conditional command error reporting to use the value
-         returned by error_token_from_token if it's not null instead of
-         just using the token value in the message, since current_token
-         ends up being set to -1, and the text of the message from
-         report_syntax_error might not be exactly right
-       - change parse_string_to_word_list to set current_token to the
-         offending token returned by read_token before calling yyerror()
-         to make the error reporting do the right thing
-
-aclocal.m4
-       - fixed typo in BASH_CHECK_LIB_TERMCAP
-
-configure.in
-       - add check for isinf(3); define HAVE_ISINF_IN_LIBC if found
-
-config.h.in
-       - add define for HAVE_ISINF_IN_LIBC
-
-lib/sh/snprintf.c
-       - check for Inf and NaN, using isinf and isnan if they're found in
-         libc
-       - use the current locale for thousands separator and decimal point
-       - recognize "'" flag; not implemented yet
-       - fix for snprintf/vsnprintf with length of 0 and string argument of
-         0 with non-zero length
-
-builtins/read.def
-       - TMOUT is now the default timeout for `read' (and select) if set,
-         like ksh93 when reading from the terminal
-       - edit_line (called by read -e) now just does readline's filename
-         completion by setting rl_attempted_completion_function to NULL,
-         since e.g., doing command completion for the first word on the
-         line wasn't really useful
-
-execute_cmd.c
-       - changed select_command to return failure status if select_query
-         returns NULL, indicating that read_builtin returned
-         EXECUTION_FAILURE
-
-doc/{bash.1,bashref.texi}
-       - documented new TMOUT behavior 
-       - slight change to the description of the test `-ef' option
-
-doc/bashref.texi
-       - added item to posix mode section describing failure behavior of
-         cd when invoked in logical mode and the pathname formed by
-         combining $PWD and the directory argument does not refer to an
-         existing directory
-
-                                  11/29
-                                  -----
-execute_cmd.c
-       - fix execute_function to call dispose_function_env after
-         merge_function_env if the shell is in posix mode (fixes debian
-         bash bug #117673)
-
-lib/readline/readline.c
-       - rl_forward -> rl_forward_char; rl_forward function for compatibility
-       - rl_backward -> rl_backward_char; rl_forward function for
-         compatibility
-       - new functions, rl_forward_byte, rl_backward_byte, for future use
-
-lib/readline/readline.h
-       - extern declarations for rl_forward_char, rl_backward_char,
-         rl_forward_byte, rl_backward_byte
-
-lib/readline/{emacs_keymap,funmap,vi_keymap,vi_mode
-       - rl_forward -> rl_forward_char
-       - rl_backward -> rl_backward_char
-
-lib/readline/funmap.c
-       - new bindable names, `backward-byte' and `forward-byte'
-
-aclocal.m4
-       - new function, BASH_CHECK_MULTIBYTE, encapsulates checks for
-         multibyte code
-
-config.h.in
-       - add necessary defines for multibyte include files and functions
-
-configure.in
-       - add call to BASH_CHECK_MULTIBYTE
-
-config-bot.h
-       - add code to define HANDLE_MULTIBYTE if prerequisites are met
-
-lib/sh/xstrchr.c
-       - new file, xstrchr() is strchr(3) that handles multibyte characters
-
-bashhist.c
-       - first_line_saved -> current_command_first_line_saved; variable is
-         now global
-
-bashhist.h
-       - extern declaration for current_command_first_line_saved
-
-                                  11/30
-                                  -----
-bashhist.c
-       - break the code that actually calls add_history out of
-         bash_add_history into a new function, really_add_history;
-         bash_add_history now calls really_add_history
-       - check_add_history takes a second `force' argument telling it
-         whether to call bash_add_history (force == 0) or really_add_history
-         (force != 0)
-
-builtins/history.def
-       - in push_history, call delete_last_history if the current command
-         has more than one line, the first line was saved, and
-         command-oriented history is active.  This takes care of deleting
-         the right history element if `history -s' is used within a
-         compound or multiline command
-       - in push_history, call check_add_history with second argument of 1
-         to skip check of current_command_line_count and add the arguments
-         to history -s as a single separate history entry
-
-                                  12/3
-                                  ----
-lib/readline/complete.c
-       - append a slash to completed names which are symlinks to directories
-         if the new variable _rl_complete_mark_symlink_dirs is non-zero
-
-lib/readline/rlprivate.h
-       - extern declaration for _rl_complete_mark_symlink_dirs
-
-lib/readline/bind.c
-       - new bindable variable, `mark-symlinked-directories', mirrors the
-         value of _rl_complete_mark_symlink_dirs
-
-doc/bash.1, lib/readline/doc/{readline.3,rluser.texinfo}
-       - documented new `mark-symlinked-directories' variable
-
-                                  12/4
-                                  ----
-variables.[ch]
-       - set_pipestatus_array now takes a second argument with the number
-         of processes in the array
-       - changed set_pipestatus_array to just modify the value in place if
-         the existing array has one element and the new array has one
-         element, and to modify existing values in place if new array has
-         more elements than existing array
-
-variables.c, jobs.c
-       - changed set_pipestatus_array callers
-
-jobs.c
-       - moved call to setjstatus() from set_job_status_and_cleanup to
-         wait_for, since set_job_status_and_cleanup is part of the SIGCHLD
-         signal handler call path, and race conditions accessing the
-         PIPESTATUS array will result for things like
-
-               while true; do date; done | cat > /dev/null
-
-                                  12/5
-                                  ----
-xmalloc.h
-       - don't redefine xmalloc, xrealloc, and xfree if DISABLE_MALLOC_WRAPPERS
-         is #defined
-
-config.h.in
-       - #undef for DISABLE_MALLOC_WRAPPERS
-
-configure.in
-       - define DISABLE_MALLOC_WRAPPERS if the --with-purify option is
-         supplied
-
-lib/malloc/trace.c
-       - new function, malloc_trace_bin(N), traces allocations and frees
-         to bucket N (uses the same type of bitmap as `busy')
-
-lib/malloc/table.c
-       - fix wraparound search problem in find_entry when searching for a
-         free entry when the table is full
-
-                                  12/6
-                                  ----
-lib/malloc/table.c
-       - keep an `overflow bucket' around to use when the table is full,
-         so find_entry always returns a valid pointer when FIND_ALLOC
-         is set
-       - new static variable to keep a count of the number of MT_ALLOC
-         entries in the mem_table
-
-lib/sh/{oslib,clktck}.c
-       - if HAVE_LIMITS_H is defined, include <limits.h>
-
-lib/sh/oslib.c
-       - new function, getmaxgroups() returns max number of simultaneous
-         groups
-       - new function, getmaxchild(), returns max number of simultaneous
-         user processes
-
-general.c
-       - removed forest of #defines for getmaxgroups()
-
-externs.h
-       - new extern declaration for getmaxgroups()
-       - new extern declaration for getmaxchild()
-       - new extern declaration for isnetconn()
-
-lib/sh/netconn.c,shell.c
-       - new file, isnetconn() from shell.c moved here
-
-Makefile.in, lib/sh/Makefile.in
-       - necessary changes for netconn.c
-
-builtins/ulimit.def
-       - changed getmaxuprc() to just call getmaxchild() and massage the
-         return value appropriately
-
-{jobs,nojobs}.c
-       - use the value returned by getmaxchild() in
-         mark_dead_jobs_as_notified instead of static CHILD_MAX
-
-jobs.c
-       - new function, compact_jobs_list, removes some number of jobs from
-         the jobs table and reallocates the table, copying the jobs that
-         are left from the old table to the new.  Compaction happens from
-         the beginning of the list and removes dead jobs, and we make sure
-         to keep the last CHILD_MAX jobs as POSIX.2 requires
-       - call compact_jobs_list from stop_pipeline if we're in a subshell,
-         there are no free jobs in the jobs table, and the jobs table is
-         at or above some maximum limit
-
-execute_cmd.c
-       - change eval_arith_for_expr to set this_command_name to `((' before
-         calling evalexp, since it might be changed by evaluating the
-         loop body between evalexp calls
-
-trap.c
-       - change reset_signal to turn off the SIG_TRAPPED flag for the
-         given signal, so shell builtins and functions running in command
-         substitutions don't run the signal handlers (traps are not supposed
-         to be inherited by command substitutions)
-
-parse.y
-       - changed parse_string_to_word_list to turn off alias expansion
-         while parsing the array assignment
-
-                                  12/9
-                                  ----
-alias.c
-       - fix add_alias so that redefining an alias's value also resets the
-         EXPANDNEXT flag
-
-                                  12/10
-                                  -----
-parse.y
-       - new function, token_is_assignment, called to check whether the text
-         before `=' makes up a valid assignment token before trying to parse
-         a compound assignment statement
-       - new function, parse_compound_assignment, to parse a compound
-         assignment statement instead of using parse_matched_pair; handles
-         comments and error reporting in the parser instead of waiting until
-         expansion time
-       - changed parse_compound_assignment and parse_string_to_word_list to
-         allow reserved words in compound array assignments
-
-lib/readline/doc/rltech.texinfo
-       - changed the documentation for rl_callback_read_char and
-         rl_callback_handler_remove to say what happens to the terminal
-         settings and what needs to be done to reset them
-
-                                  12/11
-                                  -----
-bashline.c
-       - add emacs_edit_and_execute_command, bound to C-xC-e, like vi-mode
-         `v' command
-       - add bindable command name `edit-and-execute-command', bound to
-         run emacs_edit_and_execute_command()
-
-lib/glob/strmatch.c
-       - add support for ksh93-like [:word:] character class (isalnum + `_')
-
-doc/{bash.1,bashref.texi}
-       - add note to section describing lists to clarify that a sequence of
-         one or more newlines may be used to delimit a command, equivalent
-         to a semicolon
-       - document new [:word:] pattern matching character class
-
-doc/bash.1, lib/readline/doc/rluser.texinfo
-       - document `edit-and-execute-command' and its default emacs-mode
-         binding
-
-include/chartypes.h
-       - add defines for TOCTRL and UNCTRL if they're not already defined
-
-lib/readline/chardefs.h
-       - #undef UNCTRL if it's defined to avoid cpp redefinition warnings
-
-lib/sh/strtrans.c
-       - add \cX (Control-X) escape for $'...' to ansicstr()
-       - change ansic_quote() to allocate at least four chars for each char
-         in the string argument, to account for \0xx octal values
-       - change ansic_quote() to no longer call sprintf for non-printable
-         characters; just translate the string to octal directly
-
-print_cmd.c
-       - change xtrace_print_word_list to call ansic_quote() if
-         ansic_shouldquote() indicates that there are nonprinting characters
-         in a word
-
-builtins/type.def
-       - changed deprecated long option parsing to just replace the word
-         in the list with the equivalent short option (-type -> -t) instead
-         of removing words from the list
-       - changed describe_command to take a single flags argument instead
-         of two int args; changed caller
-       - type now has two new options:  -f suppresses function lookup (like
-         command), and -P forces a PATH search for the name(s)
-
-builtins/common.h
-       - flags for describe_command are here
-       - changed extern declaration of describe_command
-
-builtins/command.def
-       - changed call to describe_command to use flags from common.h, and
-         the right number of arguments
-
-doc/{bash.1,bashref.texi}
-       - documented new -f and -P options to `type'
-
-                                  12/12
-                                  -----
-lib/readline/rldefs.h
-       - fixed prototype for _rl_strnicmp
-
-execute_cmd.c
-       - select_query now takes a new argument, an int flag saying whether
-         or not to print the menu the first time through the loop.  An
-         empty line in response to the prompt will always cause the menu
-         to be reprinted
-       - changed execute_select_command to cause select_query to reprint
-         the menu only if REPLY is set to NULL, if KSH_COMPATIBLE_SELECT
-         is defined
-
-config-top.h
-       - define KSH_COMPATIBLE_SELECT, with a comment about its meaning
-
-lib/readline/readline.c
-       - change rl_insert_comment to toggle if given an explicit numeric
-         argument:  if the first characters on the line don't specify a
-         comment, insert one; if they do, delete the comment text
-
-doc/bash.1, lib/readline/doc/{readline.3,rluser.texinfo}
-       - documented new behavior of insert-comment with a numeric argument
-
-                                  12/13
-                                  -----
-lib/malloc/watch.c
-       - new file, implements watchpoint functions
-
-lib/malloc/watch.h
-       - new file, define some `events' for watchpoints and extern function
-         and variable declarations for watchpoint code
-
-lib/malloc/imalloc.h
-       - #define MALLOC_WATCH if MALLOC_DEBUG is defined
-       - add __P define as in include/stdc.h if not already defined
-
-lib/malloc/malloc.c
-       - remove __P define, now in imalloc.h
-       - include watch.h if MALLOC_WATCH is defined
-       - added calls to _malloc_ckwatch in internal_malloc, internal_free,
-         and internal_realloc
-
-include/stdc.h
-       - augment __P define to allow prototypes if PROTOTYPES is defined
-
-lib/readline/rlstdc.h
-       - augment PARAMS define to allow prototypes if PROTOTYPES is defined
-
-lib/malloc/Makefile.in, Makefile.in
-       necessary changes to include watch.c in libmalloc
-
-lib/readline/readline.c
-       - fix rl_delete_text to make sure that the starting position is >= 0
-       - _rl_init_line_state (called by readline via readline_initialize)
-         now sets rl_mark to 0
-       - rl_get_{next,previous}_history set rl_mark to 0 if rl_point is at
-         the end of the line and rl_end otherwise in emacs mode
-
-lib/readline/kill.c
-       - rl_yank_nth_arg_internal and rl_paste_clipboard now set the mark
-         at point before calling rl_insert_text, like rl_yank
-       - rl_kill_full_line now resets rl_mark to 0
-       - rl_kill_line and rl_backward_kill_line now set rl_mark to the
-         point after the kill in emacs mode
-       - rl_kill_word and rl_backward_kill_word now set rl_mark to the
-         point after the kill in emacs mode
-       - rl_unix_word_rubout and rl_unix_line_discard now set rl_mark to
-         the point after the kill in emacs mode
-
-lib/readline/search.c
-       - noninc_search saves and restores the mark, since it can be changed
-         while reading the search string
-       - noninc_dosearch sets the mark at the end of the line, making the
-         region bound the `inserted' text since rl_point is set to 0
-       - rl_history_search_internal sets the mark at the end of the line,
-         for the same reason
-
-lib/readline/isearch.c
-       - rl_search_history now saves and restores the mark
-       - if no matching lines are found at all when doing an isearch, leave
-         point where it was instead of moving it to the end of the line
-
-                                  12/17
-                                  -----
-lib/readline/rlmbutil.h
-       - new file, place for multi-byte character defines and extern
-         declarations
-
-lib/readline/{bind.c,readline.c,rlprivate.h}
-       - new bindable variable, `byte-oriented', tracks value of
-         rl_byte_oriented variable
-
-lib/readline/mbutil.c
-       - new file, with multibyte char utility functions
-
-lib/readline/{complete,display,readline,util,vi_mode}.c
-       - new code for multibyte characters, derived from IBM patch
-
-                                  12/18
-                                  -----
-lib/sh/tmpfile.c
-       - include posixtime.h for time() extern declaration
-
-support/bashversion.c
-       - include <unistd.h> if it's available
-
-lib/readline/{histexpand,input,isearch,search}.c
-       - new code for multibyte characters, derived from IBM patch
-
-lib/readline/readline.h
-       - include rltypedefs.h
-
-                                  12/19
-                                  -----
-lib/readline/complete.c
-       - slight change to mark-directories code to avoid adding a slash if
-         point is at the end of the line (rl_line_buffer[rl_point] == '\0')
-         and the previous character was a slash
-       - change printable_part to not return empty pathnames, which could
-         happen when completing filenames and a filename with a trailing
-         slash was passed as the argument.  If the portion following the
-         trailing slash is NULL, ignore it and look for a previous slash.
-         If there's no previous slash, just return the filename argument
-       - new variable, rl_completion_mark_symlink_dirs, mirrors the value
-         of (user-settable with a variable) _rl_complete_mark_symlink_dirs
-         but may be modified by application-specific completion functions
-         when appropriate (set in rl_complete_internal and rl_menu_complete)
-
-lib/readline/readline.h
-       - extern declaration for rl_completion_mark_symlink_dirs
-
-pcomplete.c
-       - if one of the actions is CA_DIRECTORY, set
-         rl_completion_mark_symlink_dirs to indicate that we want the
-         trailing slash (might have to relax this)
-
-lib/readline/doc/rltech.texinfo
-       - documented rl_completion_mark_symlink_dirs variable
-
-lib/readline/doc/rluser.texinfo, doc/bash.1
-       - documented the fact that `complete -d' and `complete -o dirnames'
-         force readline to append a slash to symlinks to directories
-
-builtins/enable.def
-       - changed enable_shell_builtin to disallow enabling disabled
-         builtins in a restricted shell
-
-doc/{bash.1,bashref.texi}
-       - documented new enable behavior in restricted shells
-
-doc/Makefile.in
-       - new rule to make an `RBASH' file documenting the restrictions
-         imposed by a restricted shell
-
-expr.c
-       - broke the code that evaluates variables and returns results out
-         of readtok() into a new function: expr_streval()
-       - expr_streval() now performs the standard unset variable error
-         behavior if `set -u' has been executed and it's asked to look
-         up an unset variable
-       - broke the code that frees up the expression context stack into
-         a new function: expr_unwind()
-
-variables.c
-       - fixed bind_int_variable so it handles array element assignment,
-         so expressions like `b[7]++' and `b[0] = 42' work right
-       - new function, get_variable_value, returns the string value of
-         the SHELL_VAR * passed as an argument
-       - get_string_value now calls get_variable_value with a non-null
-         result from find_variable
-
-                                  12/20
-                                  -----
-lib/readline/rlmbutil.h, mbutil.c
-       - combined _rl_find_next_mbchar and _rl_find_next_nonzero_mbchar into
-         a single function
-       - combined _rl_find_prev_mbchar and _rl_find_prev_nonzero_mbchar into
-         a single function
-
-lib/readline/{display,readline,vi_mode}.c
-       - changed callers of _rl_find_next_mbchar and
-         _rl_find_next_nonzero_mbchar
-
-lib/readline/{complete,display,histexpand,readline,vi_mode}.c
-       - changed callers of _rl_find_prev_mbchar and
-         _rl_find_prev_nonzero_mbchar
-
-                                  12/20
-                                  -----
-lib/sh/mktime.c
-       - new file, from glibc/gawk, compiled in if system doesn't have a
-         working mktime(3)
-
-lib/sh/strftime.c
-       - new file, from gawk, compiled in if system doesn't have a
-         working strftime(3)
-
-lib/sh/Makefile.in, Makefile.in
-       - changes for mktime.c, strftime.c
-
-configure.in
-       - call AC_FUNC_MKTIME, AC_STRUCT_TM, AC_STRUCT_TIMEZONE
-       - call AC_REPLACE_FUNC(strftime)
-
-config.h.in
-       - add defines for TM_IN_SYS_TIME, HAVE_TZSET, HAVE_TM_ZONE,
-         HAVE_STRUCT_TM_TM_ZONE, HAVE_STRFTIME
-
-externs.h
-       - provide an extern declaration for strftime if HAVE_STRFTIME is
-         not defined and NEED_STRFTIME_DECL is
-
-lib/tilde/tilde.h
-       - header files should not include <config.h>
-
-parse.y
-       - replace code in decode_prompt_string that chops up value returned
-         by ctime(3) with calls to strftime -- as a result, the expansion
-         of \@ has changed slightly (since it depends on the locale)
-       - added new \D{format} prompt string escape; `format' is passed to
-         strftime(3).  Empty format is the same as `%X' (locale-specific
-         representation of the current time)
-       - combined cases for '\\', '\a', '\e', and '\r' in same case branch
-         in decode_prompt_string
-
-doc/{bash.1,bashref.texi}
-       - documented new \D{format} prompt string expansion
-
-builtins/printf.def
-       - use ISO C PRIdMAX instead of INTMAX_CONV
-       - pass length of format modifiers to mklong instead of computing it
-         with strlen()
-
-lib/sh/{fmtulong,fmtullong}.c
-       - changes from Paul Eggert to make more general
-
-arrayfunc.c
-       - when converting a variable to an array, make sure to unset the
-         dynamic_value and assign_func members of the struct variable,
-         since they're not valid anymore
-
-                                  12/27
-                                  -----
-configure.in
-       - use AC_HELP_STRING in AC_ARG_WITH and AC_ARG_ENABLE 
-       - remove AC_ARG_ENABLE for largefile, since AC_SYS_LARGEFILE adds
-         one
-
-                                1/2/2002
-                                --------
-{alias,bashline,execute_cmd,general,shell,subst,variables,arrayfunc}.c,general.h
-       - changed some calls to strchr to calls to xstrchr for multibyte
-         characters
-
-include/shmbutil.h
-       - add extern declaration for xstrchr to avoid including externs.h
-         where it's not appropriate
-
-{braces,make_cmd,pathexp,subst,arrayfunc}.c, lib/sh/xstrchr.c
-       - include shmbutil.h
-
-{stringlib,subst}.c, {externs,subst}.h
-       - moved substring() from subst.c to stringlib.c, moved declaration
-         from subst.h to externs.h
-
-lib/sh/xmbsrtowcs.c
-       - new file, replacement function for mbsrtowcs
-
-lib/sh/Makefile.in
-       - add entries for xmbsrtowcs.c
-
-Makefile.in
-       - add dependencies on shmbutil.h to appropriate object files
-
-lib/glob/strmatch.c
-       - break character-class testing out into separate function:
-         is_cclass, in prep for multibyte changes
-
-{braces,make_cmd}.c
-       - changes for multibyte characters
-
-builtins/printf.def
-       - changes from Paul Eggert to just use intmax_t everywhere an
-         int/long/quad is needed and print with "%ld" if the number
-         fits in a long and %PRIdMAX otherwise
-       - remove getlong, getulong, getllong, getullong, since they're
-         no longer needed
-       - use a new type `floatmax_t' to print floating point numbers, the
-         widest-available floating point type (like `intmax_t'); new
-         function `getfloatmax' that calls strtold or strtod as appropriate
-       - remove getdouble, getldouble, since they're no longer needed
-
-lib/sh/fmtumax.c
-       - new file, string-to-[u]intmax_t conversion, just includes
-         fmtulong.c with the right defines
-
-Makefile.in, lib/sh/Makefile.in
-       - additions for fmtumax.c
-
-bashtypes.h
-       - include <inttypes.h> if it's available
-
-expr.c
-       - arithmetic is now in intmax_t instead of long
-
-externs.h
-       - extern declaration for fmtumax
-       - change extern declarations for evalexp, itos, inttostr,
-         uitos, uinttostr since they now return or use intmax_t instead
-         of long
-
-{execute_cmd,general,mailcheck,subst,variables}.c, parse.y
-{array,general,subst,test,variables}.h
-lib/sh/{itos,netopen}.c
-builtins/{bashgetopt,common}.c, builtins/common.h
-builtins/{break,fc,history,jobs,let,printf,pushd,read,shift,wait}.def
-       - changes for intmax_t shell arithmetic conversion
-
-doc/{bashref.texi,bash.1}
-       - documented long->intmax_t shell arithmetic conversion
-
-sig.c
-       - in initialize_terminating_signals, if we've already trapped a
-         terminating signal, don't reset the signal handler for it
-
-                                   1/3
-                                   ---
-{arrayfunc,pathexp}.c, parse.y
-       - changes for multibyte chars
-
-parse.y, lib/sh/strtrans.c
-       - moved ansiexpand from parse.y to lib/sh/strtrans.c
-
-parse.y, locale.c
-       - moved mk_msgstr and localeexpand from parse.y to locale.c
-
-parse.y
-       - new function, yy_input_name, returns name of input file from
-         bash_input.name
-       - broke the code that parses ((...)) constructs out of read_token
-         into a new function, parse_dparen()
-
-externs.h
-       - new extern declaration for ansiexpand(), mk_msgstr(), and
-         localeexpand()
-
-input.h
-       - new extern declaration for yy_input_name()
-
-{error,locale}.c
-       - use yy_input_name for error and other messages
-
-execute_cmd.c
-       - change shell_execve to make sure that the file is executable
-         before looking at the interpreter to find out why the execve()
-         failed (avoids misleading error message)
-
-lib/glob/glob.c
-       - move code that matches leading `.' and skips those filenames into
-         a separate function: skipname(), so there can be unibyte and
-         multibyte versions of that function
-
-                                   1/7
-                                   ---
-subst.c
-       - more changes for multibyte characters
-
-print_cmd.c
-       - change semicolon() so it doesn't output a `;' immediately after a
-         newline, since that results in a null command, which is a syntax
-         error
-
-variables.c
-       - fix indirection_level_string to turn off set -x while evaluating
-         PS4
-
-                                   1/8
-                                   ---
-builtins/set.def
-       - make -o options into one struct, instead of separate structs for
-         option names corresponding to flags and non-flag option names.
-         This has the side effect of sorting the option names in output
-
-lib/glob/glob.c
-       - new function, mbskipname(), multibyte char version of skipname()
-       - removed all #ifndef SHELL code, this will never be used outside
-         the shell
-
-include/posixdir.h
-       - move REAL_DIR_ENTRY define here from lib/glob/glob.c
-
-lib/glob/glob_loop.c
-       - new file, included in glob.c for unibyte and multibyte versions of
-         glob_pattern_p
-       - added some forward static function declarations with prototypes
-       - more changes for multibyte character handling
-
-lib/glob/Makefile.in
-       - make glob.c depend on glob_loop.c
-       - changes for xmbsrtowcs.[co]
-
-lib/glob/xmbsrtowcs.c
-       - moved here from lib/sh, since the matching functions use it, and
-         libglob.a is linked after libsh.a
-
-                                   1/9
-                                   ---
-lib/glob/smatch.c
-       - new file, with strmatch (now xstrmatch) and associated functions,
-         with changes for multibyte chars
-
-lib/glob/sm_loop.c
-       - new file, included by smatch.c, with `generic' versions of matching
-         functions that are compiled twice:  once each for single-byte and
-         multibyte characters
-
-lib/glob/strmatch.c
-       - strip out everything except strmatch(), which either calls fnmatch
-         (if HAVE_LIBC_FNM_EXTMATCH is defined) or xstrmatch
-
-lib/glob/collsyms.c
-       - changes for multibyte chars
-
-lib/glob/Makefile.in, Makefile.in
-       - changes for new source files
-
-                                  1/10
-                                  ----
-lib/readline/complete.c
-       - new function, rl_completion_mode (rl_command_func_t *func), returns
-         the appropriate value to pass to rl_complete_internal depending on
-         FUNC and the value of `show-all-if-ambiguous'.  This allows
-         application completion functions to present the same interface as
-         rl_complete
-
-lib/readline/readline.h
-       - new extern declaration for rl_completion_mode()
-
-lib/readline/doc/rltech.texinfo
-       - documented rl_completion_mode
-
-lib/readline/readline.[ch]
-       - bumped the version number to 4.3, changing the relevant cpp defines
-
-configure.in
-       - require that an installed readline version be at least readline-4.3
-
-bashline.c
-       - converted bash-specific completion functions to use
-         rl_completion_mode instead of passing TAB unconditionally
-
-builtins/bashgetopt.c
-       - the `#' option specifier now means a required numeric argument,
-         not an optional one
-
-builtins/type.def
-       - when converting [-]-{path,type,all} to -[pta], don't bother
-         freeing and reallocating the option string; just change opt[1]
-         and null opt[2]
-
-lib/sh/snprintf.c
-       - support %ls/%S and %lc/%C for wide strings and characters,
-         respectively, if HANDLE_MULTIBYTE is defined
-
-mailcheck.c
-       - don't print a message about new mail if the file has not grown,
-         even if the access time is less than the modification time
-
-                                  1/14
-                                  ----
-lib/readline/readline.c
-       - new function, rl_replace_line, to replace the readline line buffer
-         with the text supplied as an argument
-       - new function, rl_replace_from_history, replaces readline line
-         buffer with text from history entry passed as argument (undocumented,
-         not in readline.h because it requires a definition of
-         HIST_ENTRY for the prototype)
-
-lib/readline/readlne.h
-       - new extern declaration for rl_replace_line
-
-lib/readline/doc/rltech.texinfo
-       - documented rl_replace_line
-
-lib/readline/{isearch,readline,search}.c
-       - use rl_replace_line and rl_replace_from_history where appropriate
-
-lib/readline/readline.c
-       - broke the code that sets point after moving through the history
-         (_rl_history_preserve_point and _rl_history_saved_point) out
-         into a separate function, _rl_history_set_point()
-
-lib/readline/{complete.c,rlprivate.h}
-       - find_completion_word -> _rl_find_completion_word
-       - free_match_list -> _rl_free_match_list
-
-lib/readline/complete.c
-       - postprocess_matches and _rl_free_match_list now return immediately
-         if passed a null match list
-
-variables.c
-       - new function, find_local_variable, finds a local variable by name
-         at the current variable context
-       - in find_variable_internal, call find_local_variable before searching
-         any of the temporary environments if variable_context > 0 (meaning
-         we're in a shell function).  This lets a local variable
-         override a variable whose value was passed in the `function
-         environment'
-
-                                  1/15
-                                  ----
-variables.h, execute_cmd.c
-       - declare variables describing the temporary environments in
-         variables.h instead of in C files
-
-findcmd.c, builtins/setattr.def
-       - instead of calling find_tempenv_variable, use find_variable_internal
-         and check whether the returned SHELL_VAR * has the tempvar
-         attribute
-
-variables.c
-       - tentative change to lookup order in find_variable_internal so that
-         function local variables are found before variables in
-         function_env when executing a shell function
-       - change make_local_variable to handle making a local variable when
-         a variable with the same name already appears in one of the
-         temporary environments
-       - broke the body of make_var_array out into a new function:
-               static char **make_env_array_from_var_list (SHELL_VAR **vars)
-       - new function, make_var_array_internal, takes a hash table to look
-         in and a pointer to a mapping function and returns a char **
-         environment-style list
-       - make_var_array now just calls make_var_array_internal
-       - new mapping function, local_and_exported, returns all local variables
-         in the current variable context with the export attribute set
-       - new function, make_local_export_array, returns an environment-style
-         char ** array of exported local variables in current context
-       - change environment creation order in maybe_make_export_env to
-         add variables to the environment in opposite order that
-         find_variable_internal uses.  This means that local variables in
-         shell functions override variables with the same name in the
-         function_env
-       - change make_local_variable to set the initial value of the
-         variable it creates to NULL to make the `is set' and `is null'
-         tests that the expansion code does work right
-       - change make_local_variable to inherit the value of a variable with
-         the same name from the temporary enviroment
-
-                                  1/16
-                                  ----
-Makefile.in
-       - link bashversion with buildversion.o instead of version.o, for
-         cross-compiling.  version.o is for the target system;
-         buildversion.o is for the build system
-
-error.c
-       - add line numbers to internal_error() messages if the shell is
-         not interactive and running a shell script or a -c command
-       - report_error now prints non-zero line numbers for non-interactive
-         shells
-
-test.c
-       - test_syntax_error now calls builtin_error() instead of printing
-         its own messages
-
-builtins/common.c
-       - builtin_error now prints line numbers if a non-interactive shell
-         is running a shell script or a -c command
-
-print_cmd.c
-       - in cprintf, remove free_argp, since it's not used
-
-builtins/history.def
-       - make `history -n' increment the number of history lines in this
-         session by the number of lines read from the history file
-
-arrayfunc.c
-       - fix array_value_internal to expand the subscript even if the
-         variable is unset, so side effects produced by the arithmetic
-         evaluation will take place
-
-lib/readline/doc/{rluser,rltech}.texinfo
-       - some fixes for printing in @smallbook format from Brian
-         Youmans
-
-                                  1/17
-                                  ----
-jobs.h
-       - new PRUNNING, PSTOPPED, PDEADPROC defines for PROCESSes, analogous
-         to RUNNING, STOPPED, and DEADJOB defines for jobs
-
-jobs.c
-       - use PS_RUNNING, PS_DONE, PS_STOPPED values for `running' field
-         of a PROCESS
-       - find_pipeline and find_job now take an additional flags argument
-         that, if non-zero, means to find only running processes; changed
-         all callers
-       - changed calls to find_pipeline and find_job made from waitchld
-         to find only running processes
-       - find_pipeline takes a third argument: an int *.  If it looks in
-         the jobs list to find the pid, and the arg is non-null, it passes
-         the job index back to the caller.  Used to avoid calls to
-         find_pipeline immediately followed by find_job with the same PID
-
-nojobs.c
-       - a couple of changes to make sure that set_pid_status is never
-         called with a pid argument of 0 or -1
-
-trap.c
-       - change trap_handler to longjmp to wait_intr_buf (set by wait_builtin)
-         if a signal is received for which a trap has been set during
-         execution of the wait builtin (need to include builtins.h and
-         builtins/builtext.h and declare some extern variables for the
-         right things to check)
-       - new variable to keep track of which signal caused the longjmp to
-         wait_intr_buf, set by trap_handler (wait_signal_received)
-
-builtins/wait.def
-       - set the return value of wait when a longjmp(wait_intr_buf, 1) is
-         done to 128 + wait_signal_received
-
-{jobs,nojobs}.c
-       - set wait_signal_received to SIGINT in wait_sigint_handler before
-         the longjmp(wait_intr_buf, 1)
-
-                                  1/18
-                                  ----
-bashline.c
-       - turn off rl_filename_completion_desired when completing a command
-         name with a single match only if the first char of that match is
-         not a `/'
-       - if there are multiple identical matches for a command name in
-         attempt_shell_completion, turn off rl_filename_completion_desired
-         if the first char is not a `/' to avoid readline appending a
-         slash if there's a directory with the same name in the current
-         directory
-
-                                  1/22
-                                  ----
-lib/readline/complete.c
-       - new variable, _rl_page_completions, to control whether we want to
-         run the internal pager when listing completions (defaults to 1)
-
-lib/readline/rlprivate.h
-       - extern declaration for _rl_page_completions
-
-lib/readline/bind.c
-       - new bindable variable, `page-completions', controls value of
-         _rl_page_completions
-
-lib/readline/doc/{rluser.texinfo,readline.3}, doc/bash.1
-       - documented `page-completions' variable
-
-Makefile.in
-       - use $(INSTALL_SCRIPT) instead of $(INSTALL_PROGRAM) to install
-         `bashbug'
-
-aclocal.m4
-       - fix small quoting problem in RL_LIB_READLINE_VERSION macro
-
-lib/readline/terminal.c
-       - fetch and save terminal's `vs' and `ve' cursor control attributes
-       - fetch and save terminal's `kI' attribute (string sent by Insert)
-       - new function, _rl_set_cursor, sets cursor to normal (insert mode)
-         or very visible (overwrite mode)
-
-lib/readline/readline.c
-       - new global variable, rl_insert_mode
-       - new function to toggle overwrite mode, rl_overwrite_mode
-       - each new line starts in insert mode
-       - switching to vi mode or emacs mode resets to insert mode
-       - reset cursor to normal before returning line
-       - _rl_replace_text now returns the number of characters inserted,
-         the return value from rl_insert_text
-       - new function, _rl_insert_or_replace_text (const char *string, int insert),
-         either inserts STRING or replaces the number of chars in STRING
-         with STRING starting at rl_point, depending on value of INSERT
-       - renamed rl_insert to _rl_insert_char, rl_insert just calls
-         _rl_insert_char with the same arguments when in insert mode
-       - new function, _rl_overwrite_char, handles self-insert in overwrite
-         mode.  Does multibyte chars by reading an entire multibyte character
-         before entering overwrite loop
-       - new function, _rl_overwrite_rubout, handles RUBOUT when in
-         overwrite mode, called from rl_rubout
-       - new function, _rl_rubout_char, old body of rl_rubout; rl_rubout
-         calls this when not in overwrite mode 
-
-lib/readline/readline.h
-       - extern declarations for rl_insert_mode and rl_overwrite_mode()
-
-lib/readline/rldefs.h
-       - define constants for values of rl_insert_mode
-
-lib/readline/rlprivate.h
-       - extern declarations for _rl_set_cursor and _rl_set_insert_mode
-       - change type of _rl_replace_text to return int
-       - extern declarations for _rl_insert_char, _rl_rubout_char
-
-lib/readline/funmap.c
-       - new bindable name `overwrite-mode', bound to rl_overwrite_mode
-
-lib/readline/rlconf.h
-       - define CURSOR_MODE if you want the cursor to show insert or
-         overwrite mode (only available if both `vs' and `ve' capabilities
-         are present)
-
-lib/readline/{complete,parens,readline,search,vi_mode}.c
-       - change calls to rl_insert to _rl_insert_char
-
-lib/readline/{readline,search}.c
-       - change calls to rl_rubout to _rl_rubout_char to avoid overwrite
-         mode problems
-
-lib/readline/vi_mode.c
-       - fix rl_vi_overstrike to just call _rl_overwrite_char, which
-         handles multibyte chars
-
-lib/readline/doc/{rluser.texinfo,readline.3}, doc/bash.1
-       - document new `overwrite-mode' command
-
-                                  1/23
-                                  ----
-lib/readline/readline.c
-       - return 0 immediately from rl_insert_text if the string to insert
-         is NULL or ""
-
-bashline.c
-       - if a numeric argument is given to one of the bash-specific glob
-         pattern completion functions (including TAB), append a `*' to
-         the word before generating matches
-       - in attempt_shell_completion, when doing glob completion, only
-         set the match list to NULL if rl_completion_type == TAB and
-         there is more than one completion.  This permits listing completions
-         with double tabs and displaying ambiguous completions
-       - new function, bash_glob_complete_word, appends a `*' to the word
-         to be completed and then globs it.  It uses a new filename
-         quoting function (bash_glob_quote_filename) to avoid quoting
-         globbing characters in the filename if there are no matches or
-         multiple matches
-
-lib/readline/complete.c
-       - set completion_changed_buffer to 0 in rl_complete_internal if
-         no matches were produced by the completion generator function
-       - new variable, rl_completion_suppress_append, suppresses appending
-         of rl_completion_append_character.  Settable by application
-         completion functions, always 0 when application completion
-         functions are called (set to 0 by rl_complete_internal and
-         rl_menu_complete)
-       - broke the code that assigns default values to readline completion
-         variables out of rl_complete_internal and rl_menu_complete into
-         a new function, set_completion_defaults (int what_to_do)
-
-lib/readline/readline.h
-       - extern declaration for rl_completion_suppress_append
-
-lib/readline/doc/rluser.texinfo, doc/bash.1
-       - documented behavior of glob-expand-word and glob-list-expansions
-         when supplied a numeric argument
-       - documented glob-complete-word
-
-lib/readline/doc/rltech.texinfo
-       - documented rl_completion_suppress_append
-
-                                  1/24
-                                  ----
-lib/readline/text.c
-       - new file, text and character handling functions from readline.c
-
-lib/readline/misc.c
-       - new file, miscellanous bindable functions and their supporting
-         code from readline.c
-
-Makefile.in, lib/readline/Makefile.in
-       - changes for text.c, misc.c
-
-lib/readline/bind.c
-       - change ISKMAP case of rl_invoking_keyseqs_in_map to output
-         ESC as "\M-" instead of "\e" -- it's closer to the documentation
-       - change _rl_get_keyname to output ESC as \e instead of \C-[
-         (it's easier to understand)
-
-pcomplete.h
-       - new flag, COPT_NOSPACE
-
-builtins/complete.def
-       - new `-o nospace' option for complete and compgen (though it doesn't
-         really do anything for compgen, since that doesn't hand anything
-         off to readline)
-
-bashline.c
-       - if a programmable completion specifies COPT_NOSPACE, set
-         rl_completion_suppress_append = 1
-
-lib/readline/doc/rluser.texinfo
-       - documented new `-o nospace' option to complete and compgen
-
-doc/{bash.1,bashref.texi}
-       - documented $'\cX' escape sequence (forgot to before)
-
-                                  1/28
-                                  ----
-variables.c
-       - make_new_variable now takes the HASH_TABLE * as its second
-         argument; changed callers
-       - new function, bind_variable_in_table, takes the HASH_TABLE * as
-         its third paramter; bind_variable calls bind_variable_in_table
-         with shell_variables as third argument
-
-variables.h
-       - new struct var_context, variable context (per-scope -- global,
-         function local, etc.)
-
-variables.[ch],builtins/common.[ch]
-       - moved functions that push and pop a variable context from
-         builtins/common.c to variables.c; move extern function
-         declarations to variables.h
-       - new function, all_local_variables
-       - variable_in_context is now static, used only by all_local_variables
-
-variables.[ch],execute_cmd.c
-       - push_context now takes the function name as an argument for
-         future use
-       - push_context takes an indication of whether or not the function is
-         executing in a subshell and saves the positional parameters only
-         if not in a subshell
-       - new functions for managing a stack of variable contexts and
-         scopes:  new_var_context, dispose_var_context, push_var_context,
-         pop_var_context, push_scope, pop_scope
-
-builtins/declare.def
-       - call all_local_variables instead of map_over (...) in declare_internal
-       - don't call make_local_variable if we're looking at functions
-         ((flags_on & att_function) != 0), since it's wasted
-       - make sure VAR is set to NULL if check for variable_context fails
-         and we didn't just create or fetch a local variable in
-         declare_internal
-       - in non-function branch of declare_internal, only call find_variable
-         if VAR is NULL -- if it's not null, we just created or fetched a
-         local variable and don't need to do it again
-
-                                  1/29
-                                  ----
-variables.[ch]
-       - the temporary environments (temporary_env, builtin_env, function_env)
-         are now HASH_TABLEs instead of argv-style arrays of strings (this
-         is an intermediate step on the way to the new lcc-inspired symbol
-         table scope structure)
-       - new internal attribute for variables: att_propagate.  This means
-         to propagate the value out of the temporary environment up the
-         (for now implicit) chain of variable scopes when the containing
-         temporary environment is deleted
-
-variables.c
-       - assign_in_env now adds to the HASH_TABLE temporary_env instead
-         of making environment-style strings in an array of strings
-       - changed the way the temporary environments are merged into the
-         shell variable table to account for the new HASH_TABLE temp
-         environments
-       - changed the way the export environment is created due to the new
-         structure of the temporary environments
-       - new function, bind_variable_internal (name, value, table), binds
-         NAME to have VALUE in TABLE without searching the temporary
-         environments
-       - removed: shell_var_from_env_string, bind_name_in_env_array
-       - variable_in_context now checks the att_local attribute and makes
-         sure the variable is not invisible
-       - local_and_exported now makes sure the variable is not invisible
-
-execute_cmd.c
-       - we no longer need to copy the temporary environment to function_env
-         or builtin_env, we can simply use variable assignments
-
-{findcmd,subst,variables}.c, builtins/{declare,setattr}.def
-       - since variables from the temporary environments are no longer turned
-         into SHELL_VARs on the fly, don't dispose the SHELL_VAR returned
-         by find_variable or find_variable_internal
-       - need to savestring() the value returned by find_variable if it has
-         the tempvar attribute before calling bind_variable on it, because
-         bind_variable will search and bind into the temporary environments
-         and will free the old value before binding the new.  For temporary
-         environments, these two pointers will be the same, and
-         bind_tempenv_variable will end up using freed memory
-
-builtins/{declare,setattr}.def
-       - set the att_propagate attribute when exporting or making readonly
-         variables from the temp environment (i.e., `var=value declare -x var'
-         or `var=value export var' sets the propagate attribute on the entry
-         for `var' in the temporary environment HASH_TABLE)
-
-lib/readline/isearch.c
-       - ^W when reading isearch string yanks the current word out of the
-         current line into the search string, skipping the portion already
-         matched
-       - ^Y when reading isearch string yanks the rest of the current line
-         into the search string, skipping the portion already matched
-
-                                  1/30
-                                  ----
-{print_cmd,variables}.c
-       - moved indirection_level_string() from variables.c to print_cmd.c
-
-{externs,variables}.h
-       - moved extern declaration of indirection_level_string to externs.h
-
-{general,variables}.c
-       - moved assignment() from variables.c to general.c
-
-{general,variables}.h
-       - moved extern declaration of assignment() to general.h
-
-{externs,input}.h
-       - moved extern declaration of decode_prompt_string to externs.h
-
-print_cmd.c
-       - include flags.h, don't include stdc.h
-
-variables.c
-       - moved some functions around to group functions better
-       - changed new_shell_variable to explicitly initialize each member
-         of the created struct variable instead of calling bzero()
-       - make_new_variable now just calls new_shell_variable instead
-         of duplicating what it does
-       - removed some code in bind_function that duplicated what
-         new_variable does on the newly-created SHELL_VAR
-       - since there are no local function variables (functions are always
-         made at the global scope), kill_all_local_variables() doesn't
-         need to consider functions
-
-                                  1/31
-                                  ----
-variables.c
-       - sort the array of special variables
-       - short-circuit the search in stupidly_hack_special_variables if
-         the passed name can't be found in the rest of the array
-         (that is, if name[0] < special_vars[i].name[0])
-
-lib/readline/history.c
-       - unstifle_history() was returning values exactly opposite of
-         the documentation
-
-lib/readline/doc/{hsuser.texinfo,history.3}
-       - clarified the unstifle_history() documentation a little
-
-                                   2/4
-                                   ---
-variables.c
-       - in bind_variable, don't call bind_tempenv_variable after a
-         find_tempenv_variable succeeds -- just change the value inline.
-         There's no reason to look it up twice
-       - change makunbound to only call stupidly_hack_special_variables
-         if we're not unsetting a function
-
-variables.[ch]
-       - new function, unbind_function, like makunbound but doesn't mess
-         with previous contexts or calling stupidly_hack_special_variables
-
-builtins/set.def
-       - change unset_builtin to call either unbind_func or unbind_variable
-
-builtins/getopts.def
-       - call unbind_variable(name) instead of makunbound(name, shell_variables)
-
-                                   2/5
-                                   ---
-lib/glob/sm_loop.c
-       - use malloc instead of xmalloc in BRACKMATCH and handle failures
-
-error.c
-       - add extern declaration of executing_line_number with prototype,
-         since execute_cmd.h can't be included without including other
-         files
-
-lib/readline/parens.c
-       - include <unistd.h>
-
-lib/malloc/stats.c
-       - include <unistd.h>
-       - add extern declaration of malloc_free_blocks() with prototype
-
-pathexp.c
-       - added some forward declarations with prototypes for static functions
-
-lib/readline/rlprivate.h
-       - removed declarations of rl_untranslate_keyseq, rl_discard_argument,
-         rl_stop_output, rl_alphabetic since they appear in readline.h
-
-                                   2/6
-                                   ---
-{arrayfunc,execute_cmd,pcomplete,shell}.c
-       - change calls to makunbound(name, shell_variables) to
-         unbind_variable (name)
-
-                                   2/7
-                                   ---
-builtins/getopt.c
-       - don't defer incrementing of OPTIND when an invalid option is
-         encountered until the next call to sh_getopt() -- what if OPTIND
-         is reset before that next call?  This means that OPTIND is always
-         incremented to the next option to be handled when an option is
-         returned, whether it's valid or not.  This is what POSIX-2002
-         says to do.
-
-syntax.h
-       - new #define, CSUBSTOP
-
-mksyntax.c
-       - add "-=?+" with value CSUBSTOP to the syntax table.  These are the
-         valid expansion operators OP in ${param[:]OPword}
-
-subst.c
-       - use table lookup for CSUBSTOP in VALID_PARAM_EXPAND_CHAR
-       - new flags for the string extraction functions:  EX_NOALLOC.  This
-         indicates that the functions are being used only to skip over
-         strings and the result won't be used, so the substring shouldn't
-         be allocated, copied, and freed
-       - new flag for string_extract:  EX_VARNAME.  This serves the same
-         purpose as the old `varname' parameter.  parameter_brace_expand()
-         changed appropriately
-       - extract_delimited_string and extract_dollar_brace_string now take
-         an additional `flags' argument, which may include EX_NOALLOC
-       - changed callers of extract_delimited_string and
-         extract_dollar_brace_string appropriately
-       - string_extract now understands EX_NOALLOC; callers changed
-       - some smaller code cleanups
-       - converted char_is_quoted(), unclosed_pair(), and skip_to_delim()
-         to understand multibyte characters
-
-                                  2/11
-                                  ----
-variables.[ch]
-       - moved to a symbol organization inspired by lcc.  The basic structure
-         is no longer a HASH_TABLE, but a VAR_CONTEXT, which includes a hash
-         table as one of its members.  VAR_CONTEXTs are linked together to do
-         variable scoping.  One nice thing about this is that the entire
-         symbol table doesn't need to be searched at function scope exit to
-         remove local variables.  Fixes problems with only one instance of
-         builtin_env and function_env, even though it really is a stack
-       - shell_variables is now a VAR_CONTEXT *, with a global_variables
-         variable that points to the bottom of the stack for fast access
-       - function-scope local variables (assignments specified on the command
-         line before a function call) and function-local variables (declared
-         with the `local' builtin) have been unified in the same variable
-         context, replacing function_env
-       - assignment statements preceding the `.' and `eval' builtins are now
-         a separate variable scope VAR_CONTEXT, replacing builtin_env
-       - temporary_env (a HASH_TABLE) is now the only separate environment
-       - changes to export environment creation, variable binding, variable
-         lookup, local variable propagation all changed to work with the
-         new symbol table/scope structure
-       - a SHELL_VAR no longer has a `prev_context' member; it's not needed
-
-execute_cmd.c
-       - changes to push_context calls to include any temporary variables in
-         temporary_env; pop_context takes care of propagating any temporary
-         variables if necessary
-       - calls to push_scope if `eval' or `.' is called with a list of
-         preceding variable assignments, and pop_scope called at end of
-         builtin's execution.  pop_scope takes care of merging temporary
-         variables into the shell environment when appropriate
-
-builtins/{setattr,declare}.def
-       - changes to account for variable assignments preceding `local',
-         `export', `readonly', `declare', etc. to work with the new
-         variable scoping implementation
-
-shell.c
-       - since shell_variables is now a VAR_CONTEXT, call
-         delete_all_contexts() when the shell is reinitializing instead of
-         delete_all_variables()
-
-builtins/common.c
-       - new function, get_job_by_name(), used by execute_simple_command()
-         for the `auto_resume' stuff and get_job_spec()
-
-builtins/common.h
-       - new set of #defined constants for flags argument to
-         get_job_by_name()
-
-                                  2/12
-                                  ----
-command.h
-       - new redirection operator: r_reading_string for `here strings'
-
-parse.y
-       - new token, LESS_LESS_LESS, for new redirection `here string'
-         operator: [N]<<< word
-       - recognize LESS_LESS_LESS and create the appropriate redirection
-
-{dispose_cmd,copy_cmd,make_cmd,print_cmd}.c
-       - recognize r_reading_string and do the right thing (dispose_redirects,
-         copy_redirect, print_redirection, and make_redirection, respectively)
-
-redir.c
-       - here_document_to_fd now takes the redirection operator as its
-         second argument
-       - new function, write_here_string, expands a here string and writes it
-         to the here document file descriptor
-       - here_document_to_fd calls write_here_string for r_reading_string
-         operator
-       - handle r_reading_string in do_redirection_internal() and
-         stdin_redirection()
-
-                                  2/18
-                                  ----
-doc/{bash.1,bashref.texi}
-       - documented here strings
-
-{configure,Makefile}.in
-       - bumped version number up to bash-2.05b and the release status
-         to alpha1
-
-expr.c
-       - make expr_streval understand that variables with the `invisible'
-         attribute are really unset, and accessing such a variable when
-         `set -u' is set should be an error
-
-variables.h
-       - new accessor macros: var_isset(var) and var_isnull(var), test
-         whether var->value is NULL
-
-{eval,subst,variables}.c, builtins/{declare,setattr}.def
-       - be more consistent about using value_cell(var) instead of
-         directly referencing var->value
-       - use var_isset and var_isnull where appropriate
-
-builtins/help.def
-       - augmented a couple of help strings with pointers to `info' and
-         `man -k'
-
-                                  2/14
-                                  ----
-variables.h
-       - new macros to use when setting variable values directly instead of
-         through bind_variable and its siblings
-
-{arrayfunc,variables}.c
-       - use var_setarray and other lvalue macros instead of assigning to
-         var->value directly
-
-builtins/setattr.def
-       - change show_var_attributes to show function definitions separately
-         from function attributes.  This allows the output of `declare -f'
-         (with other flags), `export -f', and `readonly -f' to be reused as
-         shell input, instead of the old
-
-               declare -f[flags] func()
-               {
-                       foo
-               }
-
-         which has syntax errors.  When in posix mode, `export -fp' and
-         `readonly -fp' still don't print function definitions
-
-                                  2/16
-                                  ----
-parse.y
-       - comment out calls to discard_parser_constructs; no need to call
-         empty functions
-
-                                  2/18
-                                  ----
-lib/sh/memset.c
-       - replacement function for memset(3)
-
-lib/sh/Makefile.in, Makefile.in
-       - additions for memset.c
-
-configure.in,config.h.in
-       - check for memset, define HAVE_MEMSET if found, add memset.o to
-         LIBOBJS if not
-
-lib/malloc/malloc.c
-       - removed zmemset(), replaced with calls to memset(3)
-
-{subst,execute_cmd,lib/sh/netopen}.c
-       - replaced calls to bzero with calls to memset
-
-subst.c
-       - word_split() now takes a second argument: the value of $IFS, so
-         it doesn't have to look up IFS every time
-       - word_list_split() now calls getifs() and passes the result to
-         each call to word_split() as its second arg
-       - do a quick scan for CTLNUL in remove_quoted_nulls before allocating
-         new string, copying old string to it, copying over original string
-         and freeing new string
-
-eval.c
-       - don't bother calling dispose_used_env_vars if temporary_env is NULL
-
-execute_cmd.c
-       - fix fix_assignment_words to only look up the builtin corresponding
-         to the first word if one of the words in the list is marked as
-         W_ASSIGNMENT
-
-hashlib.c
-       - renamed hash_string to hash_bucket, which better reflects what it
-         does
-       - extracted the portion of hash_bucket that computes the hash out
-         into a new hash_string()
-       - made new body of hash_bucket into a macro HASH_BUCKET; function
-         just calls the macro
-       - calls to hash_bucket in this file now call HASH_BUCKET macro
-       - in add_hash_item, just add a new item at the front of the appropriate
-         bucket list instead of at the end
-
-hashcmd.h
-       - reduced FILENAME_HASH_BUCKETS to 53 from 107
-
-                                  2/19
-                                  ----
-hashlib.[ch]
-       - find_hash_item, remove_hash_item, add_hash_item all take a new
-         third `flags' argument
-       - add_hash_item doesn't call find_hash_item if HASH_NOSRCH passed in
-         flags arg
-       - find_hash_item will create a new hash table entry if HASH_CREATE is
-         passed in flags arg
-       - new function, hash_walk, takes a pointer to a function and a table
-         and calls the function for each item in the table.  If the function
-         returns < 0, the walk is terminated
-       - fixed flush_hash_table to set table->nentries to 0 after freeing
-         all entries
-       - BUCKET_CONTENTS now has a new `khash' member, what key hashes to;
-         set by HASH_BUCKET macro (which calls hash_string), assigned in
-         find_hash_item (HASH_CREATE) and add_hash_item
-       - find_hash_item and remove_hash_item check `khash' against the
-         hash of the string argument before calling strcmp
-
-{alias,hashlib,hashcmd,pcomplib,variables}.c
-       - changed all calls to {find,remove,add}_hash_item
-
-builtins/hash.def
-       - return immediately from print_hashed_commands if there are no
-         entries in the hash table (this eliminates need for `any_printed'
-         variable)
-       - change print_hashed_commands to use hash_walk
-
-alias.c
-       - short-circuit all_aliases and map_over_aliases if
-         HASH_ENTRIES(aliases) == 0
-       - simplify map_over_aliases by just allocating enough room in the
-         returned list for all entries in the aliases hash table, instead
-         of doing the check and xrealloc
-       - add_alias now calls add_hash_item with HASH_NOSRCH argument
-
-pcomplete.h
-       - sh_csprint_func_t is no more; use hash_wfunc instead
-
-pcomplib.c
-       - short-circuit print_all_compspecs if HASH_ENTRIES(prog_completes)
-         is 0
-       - print_all_compspecs now takes a `hash_wfunc *' argument
-       - print_all_compspecs now just calls hash_walk
-
-builtins/complete.def
-       - new function, print_compitem, takes a BUCKET_CONTENTS *, extracts
-         the right info, and calls print_one_completion
-
-variables.c
-       - short-circuit map_over_funcs if HASH_ENTRIES(shell_functions) == 0
-       - short-circuit flatten if the passed table has no entries
-       - bind_variable_internal takes a new fourth argument: `hflags',
-         to pass to hash table functions
-       - make_new_variable now passes HASH_NOSRCH flag to add_hash_item
-       - set_if_not now calls bind_variable_internal and passes
-         HASH_NOSRCH as flags argument
-       - bind_function now calls add_hash_item with HASH_NOSRCH argument
-       - fixed make_local_variable:  old_var == 0 && was_tmpvar can never
-         be true
-       - if we didn't find an old variable in make_local_variable, call
-         bind_variable_internal with HASH_NOSRCH argument
-       - fix push_temp_var to reset variable context to 0 if binding into
-         global_variables->table
-
-parse.y
-       - fix to parse_compound_assignment to avoid core dumps on empty
-         compound array assignments
-
-subst.c
-       - getifs() is now global so read_builtin can call it
-
-subst.h
-       - extern declaration for getifs()
-
-                                  2/20
-                                  ----
-hashlib.c
-       - changed hash_string to use a better hash function
-       - changed HASH_BUCKET to use masking rather than modulus to hash a
-         string to a bucket -- HASH TABLES MUST NOW BE SIZED BY POWERS
-         OF TWO
-
-hashlib.h
-       - DEFAULT_HASH_BUCKETS is now 64
-
-hashcmd.h
-       - FILENAME_HASH_BUCKETS is now 64
-
-pcomplib.c
-       - COMPLETE_HASH_BUCKETS is now 32
-
-variables.c
-       - TEMPENV_HASH_BUCKETS is now 4
-
-alias.c
-       - new define, ALIAS_HASH_BUCKETS, set to 16, used to size alias table
-
-hashlib.c
-       - removed initialize_hash_table; folded code into make_hash_table
-       - fixed copy_bucket_array to copy the `khash' member of an item
-       - renamed functions to be more systematic and easier for me:
-               make_hash_table -> hash_create
-               hash_table_nentries -> hash_size
-               copy_hash_table -> hash_copy
-               find_hash_item -> hash_search
-               remove_hash_item -> hash_remove
-               add_hash_item -> hash_insert
-               flush_hash_table -> hash_flush
-               dispose_hash_table -> hash_dispose
-               print_table_stats -> hash_pstats
-               get_hash_bucket -> hash_items
-       - changed hash_search to short-circuit if table->nentries == 0 and
-         HASH_CREATE has not been passed in the flags argument
-
-{alias,variables,hashcmd,pcomplib}.c
-       - renamed calls to all renamed functions from hashlib.c
-
-builtins/kill.def
-       - don't drop a leading `-' in a pid argument
-       - call kill_pid with an explicit third argument of 1 if the pid
-         argument to kill is < -1, rather than rely on the behavior of
-         kill(2)
-
-                                  2/21
-                                  ----
-subst.c
-       - quoted_strchr is no longer declared `inline'
-       - skip_double_quoted is no longer declared `inline'
-       - string_extract_double_quoted is no longer declared `inline'
-
-lib/readline/input.c
-       - rl_gather_tyi is now an `int' valued function; returns the number
-         of characters read (0 or 1) or -1 on error
-       - if rl_gather_tyi() returns -1 to rl_read_key(), set rl_done to 1
-         and return a newline; something is wrong with the input fd
-
-                                  2/25
-                                  ----
-variables.[ch]
-       - IFS is now a special variable
-       - new special var function, sv_ifs(), called when IFS is set or unset
-       - call setifs() when IFS is first set in initialize_shell_variables
-       - call setifs() from make_local_variable and assign_in_env if
-         appropriate
-       - if assign_in_env() is called with a var assignment like `VAR=',
-         make the value in the new SHELL_VAR created be "" like
-         do_assignment_internal does, since certain parts of the shell use
-         a NULL value as evidence that the variable is unset (though
-         attributes may have been assigned)
-       - if push_temp_var pushes something up to the global_variables table,
-         make sure that the context is set to 0
-       - new function dispose_temporary_env, called by both
-         dispose_used_env_vars and merge_temporary_env with different `free
-         func' function pointers; calls sv_ifs after disposing the temporary
-         environment
-       - push_exported_var now calls bind_variable_internal instead of
-         bind_variable
-       - pop_scope and pop_context now call sv_ifs
-
-subst.[ch]
-       - new global variables used to keep track of IFS state, to avoid
-         having to call find_variable("IFS") all the time:
-
-               ifs_var         the SHELL_VAR for IFS
-               ifs_value       ifs_var ? value_cell (ifs_var) : " \t\n"
-               ifs_cmap        bitmap of characters in ifs_value
-               ifs_firstc      first character in ifs_value
-
-       - new function setifs(), sets the aforementioned ifs variables each
-         time IFS is set or unset, and at nested scope exit
-       - instead of calling getifs() from inside subst.c, use ifs_value
-       - getifs() now just returns ifs_value
-       - use ifs_firstc in string_list_dollar_star()
-       - only call member() in issep() if separators is more than one char
-       - don't cache a bitmap every time expand_word_internal() is called;
-         use ifs_cmap instead
-       - new macro, isifs(c), checks whether C is in ifs_cmap
-
-builtins/read.def
-       - use issep() and isifs() macros instead of looking at $IFS directly
-
-syntax.h
-       - make sure macros that access sh_syntaxtab cast the argument to
-         `unsigned char' before array access
-       - new macros: issyntype(c, type) and notsyntype(c, type), check
-         sh_syntaxtab[c] for a particular flag value `type'
-
-                                  2/26
-                                  ----
-hashlib.h
-       - the `data' member of a `BUCKET_CONTENTS' is now a PTR_T
-
-{hashlib,alias,variables,hashcmd,pcomplib}.c
-       - removed some casts when assigning to and using `data' member of a
-         `BUCKET_CONTENTS'
-
-subst.c
-       - in split_at_delims, call make_word_list instead of allocating and
-         initializing a WORD_LIST * directly
-
-make_cmd.[ch]
-       - add_string_to_list is now just a macro that calls make_word_list
-       - make_simple_command now calls make_word_list instead of allocating
-         a WORD_LIST * directly
-
-                                  2/27
-                                  ----
-copy_cmd.c
-       - copy_word now calls make_bare_word to allocate the copy
-       - copy_word_list now calls make_word_list to allocate the copy
-
-shell.h
-       - include `ocache.h' for simple object caching
-       - call cmd_init() to initialize the WORD_DESC and WORD_LIST object
-         caches
-
-{make,dispose}_cmd.c
-       - allocate WORD_DESC * and WORD_LIST * vars from their respective
-         ocaches, and return them to the cache when disposing
-
-jobs.c
-       - renamed old `waiting_for_job' variable to `queue_sigchld', which
-         better reflects its intent:  sigchld_handler does not call waitchld
-         if `queue_sigchld' is non-zero, it simply increments the count of
-         waiting children
-       - cleanup_dead_jobs now just sets and clears queue_sigchld instead of
-         blocking and unblocking SIGCHLD; it calls waitchld at the end if
-         `sigchld' is non-zero, but that's not really necessary
-       - in setjstatus, only call xrealloc if `statsize' is less than the
-         number of processes passed -- no reason to do it if they're the
-         same
-
-                                  2/28
-                                  ----
-sig.[ch]
-       - reinitialize_signals is no more; initialize_signals takes an
-         argument saying whether or not we are reinitializing
-
-builtins/exec.def
-       - reinitialize_signals() -> initialize_signals(1)
-
-test.c
-       - fix filecomp() to work right when one file has a non-positive
-         timestamp and the other file does not exist
-
-doc/{bash.1,bashref.texi}
-       - document what happens for test's -nt and -ot operators when one
-         file operand exists and the other does not
-
-jobs.c
-       - if we haven't messed with SIGTTOU, just manipulate queue_sigchld
-         in notify_of_job_status instead of calling sigprocmask()
-       - list_one_job now calls pretty_print_job directly instead of going
-         through print_job
-       - pretty_print_job now must be called with SIGCHLD blocked or held
-         instead of blocking SIGCHLD itself
-       - changed start_job so that it doesn't call UNBLOCK_CHILD and then
-         immediately call BLOCK_CHILD again (explicitly or via last_pid()),
-         call find_last_pid instead of last_pid and then UNBLOCK_CHILD
-       - changed wait_for_job the same way
-       - find_last_pid now takes a second argument: block; uses BLOCK_CHILD
-         if `block' is 1, not otherwise.  Changed existing calls:
-               find_last_pid(j) -> find_last_pid(j, 0)
-               last_pid(j) -> find_last_pid(j, 1)
-         `last_pid()' is now gone
-       - rewrote wait_for_background_pids(); it was a little strange
-       
-copy_cmd.c
-       - copy_if_command: don't copy null false_case commands
-       - copy_simple_command: don't copy a null redirection list
-
-subst.c
-       - in get_word_from_string and list_string, just check for " \t\n"
-         directly rather than calling strcmp
-       - in get_word_from_string and strip_trailing_ifs_whitespace, use
-         isifs() instead of issep(), since they're never called with
-         separators != $IFS
-       - change issep() to call isifs if separators is longer than one
-         character, since it's never called with anything but "", " ",
-         or $IFS
-
-                                   3/1
-                                   ---
-sig.h
-       - enclose the BLOCK_SIGNAL macro in a do {...} while (0) loop, at it
-         should have been all along
-
-lib/readline/doc/rltech.texinfo
-       - document that readline defaults to stdin/stdout if rl_instream/
-         rl_outstream are NULL
-
-lib/readline/terminal.c
-       - if an application is using a custom redisplay function,
-         rl_resize_terminal just calls rl_forced_update_display to tell
-         (*rl_redisplay_func) to update the display, otherwise call
-         _rl_redisplay_after_sigwinch
-
-lib/readline/readline.c
-       - change readline_internal_setup() so the change to vi insertion mode
-         happens even if readline_echoing_p is 0
-       - don't print the prompt to rl_outstream in readline_internal_setup
-         if we're not echoing and the caller has defined a custom redisplay
-         function -- let the redisplay function deal with it
-
-configure.in
-       - new option: --enable-mem-scramble, controls memory scrambling on
-         free() (on by default; only affects use of bash malloc)
-
-config.h.in
-       - new option MEMSCRAMBLE, controlled by --enable-mem-scramble
-
-                                   3/5
-                                   ---
-parse.y
-       - added ksh-like behavior of [...] to read_token_word:  if a `[' is
-         seen in an assignment context and the previous characters in the
-         token form a valid identifier, parse the [...] with
-         parse_matched_pair to allow spaces (and newlines) in the subscript
-
-bashline.c
-       - new function bash_servicename_completion_function, for completing
-         service names from /etc/services
-
-bashline.h
-       - new extern declaration for bash_servicename_completion_function
-
-builtins/complete.def
-       - allow new `-s/-A service' option to complete and compgen builtins
-
-pcomplete.h
-       - new CA_SERVICE define, new ITEMLIST variable it_services
-
-pcomplete.c
-       - add callback to bash_servicename_completion_function to generate
-         list of matching service names for completion
-
-doc/bash.1,lib/readline/doc/rluser.texinfo
-       - documented new `-s/-A service' option to complete and compgen
-
-                                   3/6
-                                   ---
-builtins/read.def
-       - change hard-coded `0' to new variable `fd' (initially 0) in
-         preparation for adding `-u fd' option
-
-bashline.c
-       - bash_directory_completion_hook calls expand_prompt_string instead
-         of expand_string (it does the right thing).  This keeps expansion
-         errors from causing a longjmp, which shouldn't happen because of
-         completion
-       - command_subst_completion_function was augmented very slightly to
-         do filename completion on a non-command-word in a command
-         substitution
-       - command_subst_completion_function now skips over the lcd that
-         rl_completion_matches puts in matches[0] if there is more than
-         one possible completion
-
-                                   3/7
-                                   ---
-builtins/read.def
-       - only add the unwind_protect to free `rlbuf' if `edit' is non-zero,
-         since we won't be using readline otherwise
-
-lib/sh/zread.c
-       - renamed zread1 -> zreadintr
-
-redir.c
-       - small change to redirection_error() to make a slightly better
-         guess about the invalid file descriptor if the redirection op is
-         r_duplicating_input or r_duplicating_output
-
-include/stdc.h
-       - new macro, SH_VA_START, to encapsulate the difference between
-         stdarg va_start and varargs va_start
-
-{error,pcomplete,print_cmd}.c,builtins/common.c,lib/sh/snprintf.c
-       - use SH_VA_START
-
-                                   3/8
-                                   ---
-builtins/read.def
-       - support for the ksh-like `-u fd' option
-
-general.c
-       - new function sh_validfd(fd), returns 1 if fd is a valid open file
-         descriptor
-
-general.h
-       - extern decl for sh_validfd
-
-bashline.c
-       - don't call posix_readline_initialize() from initialize_readline();
-         sv_strict_posix() should already have taken care of it
-
-                                  3/11
-                                  ----
-{error,pcomplete,print_cmd}.c, builtins/common.c
-       - removed non-varargs versions of functions
-
-builtins/printf.def
-       - if the string argument to %q has non-printing characters, call
-         ansic_quote to quote it rather than sh_backslash_quote
-
-variables.h
-       - new attribute: att_trace (and corresponding trace_p() macro).
-         Functions with this attribute will inherit the DEBUG trap.
-         Currently ignored for variables
-
-builtins/declare.def
-       - new `-t' option to declare/typeset toggle the `att_trace' attribute
-
-builtins/setattr.def
-       - check for att_trace and output `-t' flag in show_var_attributes
-
-execute_cmd.c
-       - if a function is being traced (it has the `-t' attribute set),
-         don't turn off the DEBUG trap when it executes
-
-doc/{bash.1,bashref.texi}
-       - document the new `-t' option to declare/typeset
-
-                                  3/12
-                                  ----
-execute_cmd.c
-       - don't execute the debug trap in the `cm_simple:' case of
-         execute_command_internal; run it in execute_simple_command so we
-         get the line number information right when executing in a shell
-         function
-       - run a DEBUG trap before executing ((...)) arithmetic commands,
-         like ksh93
-       - run a DEBUG trap before executing [[...]] conditional commands,
-         like ksh93
-
-eval.c
-       - add a static forward declaration for alrm_catcher()
-
-general.c
-       - add static forward declarations for bash_special_tilde_expansions,
-         unquoted_tilde_word, initialize_group_array
-
-variables.h
-       - add extern declarations for sh_get_env_value, map_over_funcs,
-         local_exported_variables
-
-variables.c
-       - add static forward declarations for dispose_temporary_env,
-         make_func_export_array
-
-bashhist.c
-       - add static forward declaration for check_history_control
-
-configure.in
-       - add a call to AC_CHECK_DECLS for strcpy
-
-config.h.in
-       - add placeholder for HAVE_DECL_STRCPY define, set by configure
-
-general.h
-       - don't declare strcpy if HAVE_DECL_STRCPY is defined with a non-zero
-         value
-
-sig.h
-       - add prototype to typedef of SigHandler
-
-lib/readline/histlib.h
-       - removed extern declaration of strcpy()
-       - include string.h/strings.h directly in histlib.h instead of source
-         files
-
-lib/readline/{histexpand,histfile,history,histsearch}.c
-       - don't include string.h/strings.h now that histlib.h includes it
-
-lib/tilde/tilde.c
-       - removed extern declaration of strcpy(), rely on string.h/strings.h
-
-command.h
-       - four new redirection types: r_move_input, r_move_output,
-         r_move_input_word, r_move_output_word, for
-         [N]<&word- and [N]>&word- from ksh93
-
-print_cmd.c
-       - changes to print r_move_input[_word] and r_move_output[_word]
-
-copy_cmd.c
-       - changes to copy r_move_input[_word] and r_move_output[_word]
-
-dispose_cmd.c
-       - changes to dispose r_move_input_word and r_move_output_word
-
-make_cmd.c
-       - changes to make r_move_input[_word] and r_move_output[_word] from
-         r_duplicating_{input,output}_word, which is how the new redirs
-         are passed by the parser
-
-redir.c
-       - changes to make r_move_input[_word] and r_move_output[_word] do
-         the right thing when executed
-
-builtins/read.def
-       - print an error message and return failure immediately if zread/zreadc
-         return < 0
-
-doc/{bash.1,bashref.texi}
-       - documented new [n]<&word- and [n]>&word- redirections
-
-                                  3/13
-                                  ----
-lib/readline/isearch.c 
-       - enabled code to allow chars bound to rl_rubout to delete characters
-         from the incremental search string
-
-shell.c
-       - add `-l' invocation option to parse_shell_options; equivalent to
-         `--login'
-       - fixed set_login_shell to check first char of base pathname of argv0
-         for `-', like other shells
-       - move the check for make_login_shell after the call to
-         parse_shell_options because the `-l' option might set it
-
-doc/{bash.1,bashref.texi}
-       - documented new `-l' invocation option
-
-array.c
-       - new function, array_shift, shifts an array left by a specified
-         number of elements
-       - array_walk is now compiled in by default
-       - array_to_assignment_string now takes a second argument: int quoted.
-         If non-zero, the result is single-quoted before being returned
-       - quoted_array_assignment_string has been removed
-
-array.[ch]
-       - renamed most of the array functions so that all have an array_
-         prefix and are more systematically named
-       - array_slice now preserves the indicies from the original array
-       - change array_to_assign to use a static buffer for expanding the
-         array indices, instead of malloc/free
-
-{arrayfunc,subst,variables}.c, builtins/read.def
-       - changed calls to various array functions to use new names
-
-lib/sh/stringvec.c, externs.h
-       - renamed all of the functions to have a strvec_ prefix and to have
-         a more sensible name scheme
-       - strvec_search's arguments are now supplied in reverse order, so
-         the char **array is first, like the other functions
-       - new function, strvec_resize, xrealloc for strvecs
-
-{alias,array,bracecomp,braces,bashline,execute_cmd,findcmd,general,pathexp,
-pcomplete,variables}.c
-lib/sh/stringlist.c
-builtins/{bind,complete,exec,getopts,pushd,set}.def
-       - change calls to all functions from lib/sh/stringvec.c
-       - use strvec_resize where appropriate
-
-externs.h
-       - only declare dup2() if HAVE_DUP2 is undefined or DUP2_BROKEN is
-         defined
-
-lib/readline/{macro,readline,util}.c, lib/readline/rlprivate.h
-       - _rl_defining_kbd_macro is gone, use RL_ISSTATE(RL_STATE_MACRODEF)
-
-lib/readline/readline.h
-       - new struct readline_state, encapsulates most of readline's internal
-         state in case you need reentrancy or nested calls to readline()
-       - extern declarations for rl_save_state, rl_restore_state
-
-lib/readline/readline.c
-       - add (undocumented) int rl_save_state (struct readline_state *),
-         int rl_restore_state (struct readline_state *)
-
-                                  3/14
-                                  ----
-array.[ch]
-       - new function, array_rshift, shifts an array right by a specified
-         number of elements, optionally inserting a new element 0
-
-examples/bashdb/bashdb
-       - new single-file version of bash debugger, originally modified from
-         version in bash-2.04 by Gary Vaughan (the old debugger still
-         appears in examples/obashdb).  This version has a more gdb-like
-         command set
-
-examples/bashdb/bashdb.el
-       - new emacs bashdb debugger mode from Masatake YAMATO <jet@gyve.org>
-
-execute_cmd.c
-       - don't make $LINENO relative to function start unless the shell is
-         currently interactive -- this is what ksh93 does and what I
-         believe to be the intent of POSIX.2 (this required changing some
-         of the test checks because the output has changed)
-       - run the debug trap for each command in an arithmetic for expression,
-         like ksh93 does
-
-lib/readline/vi_mode.c
-       - redid rl_vi_subst (binding func for `s' and `S') in terms of
-         rl_vi_change_to:  `S' == `cc' and `s' == `c '.  This makes undo
-         work right
-
-                                  3/18
-                                  ----
-hashlib.c
-       - fixed hash_walk to return if the item function returns < 0, instead
-         of breaking out of the current hash chain
-
-array.c
-       - fixed array_walk to return if the item function returns < 0, like
-         hash_walk
-
-lib/sh/stringlist.c, externs.h
-       - new function: strlist_walk, takes a stringlist and a pointer to an
-         item func.  Like other _walk funcs, if item func returns < 0 the
-         walk is cancelled
-       - new function: strlist_flush, frees items in the contained list
-         with strvec_flush
-       - renamed functions to have a strlist_ prefix and be more systematic
-
-pcomplib.c,pcomplete.h
-       - removed redundant `progcomp_initialized' variable
-       - renamed functions to have `progcomp_' or `compspec_' prefixes
-         like the hash library
-
-{bashline,pcomplete}.c,builtins/complete.def
-       - fixed calls to stringlist functions to use new names
-       - fixed calls to functions in pcomplib.c to use new names
-
-pcomplete.c
-       - made the debugging code #ifdef DEBUG -- it should be mature enough
-
-builtins/hash.def,parse.y
-       - use REVERSE_LIST(x, t) instead of (t)reverse_list(x)
-
-list.c,{externs,general}.h
-       - renamed the list functions to have a list_ prefix, changed callers
-
-externs.h,{execute_cmd,stringlib,subst}.c,builtins/common.c,lib/sh/stringvec.c
-       - word_list_to_argv -> strvec_from_word_list
-       - argv_to_word_list -> strvec_to_word_list
-       - moved functions to lib/sh/stringvec.c
-
-lib/sh/stringvec.c
-       - changed name of second argument to strvec_from_word_list from `copy'
-         to `alloc' so the use of `copy' between strvec_from_word_list and
-         strvec_to_word_list isn't as confusing
-       - changed name and sense of second argument to
-         strvec_to_word_list from `copy' to `alloc' for the same reason --
-         now both functions agree on semantics of second argument
-
-lib/sh/stringlist.c
-       - ditto for strlist_from_word_list and strlist_to_word_list
-
-subst.c
-       - changed callers of strvec_to_word_list
-
-                                  3/19
-                                  ----
-builtins/hash.def
-       - added `-l' option to list table or individual targets in reusable
-         format
-       - added `-d' option to remove one or more names from the table of
-         hashed commands (provides `unhash' or `unalias -t' functionality)
-
-doc/{bash.1,bashref.texi}
-       - documented new `-l' and `-d' options to `hash'
-
-hashcmd.[ch]
-       - renamed functions to have a `phash_' prefix and follow new naming
-         convention
-       - phash_remove now returns an int:  1 if command not in hash table,
-         0 if filename removed OK
-
-{findcmd,variables}.c, builtins/{hash,type}.def
-       - changed callers to use new names from hashcmd.c
-
-builtins/common.[ch]
-       - new function, sh_notfound(s), prints standard `not found' message
-       - new function, sh_invalidid(s), prints standard `invalid identifier'
-         message
-       - new function, sh_restricted(s), prints standard `restricted' message
-         for restricted shells
-       - new function, sh_invalidnum(s), prints standard `invalid number'
-         message
-       - renamed bad_option to sh_invalidopt, changed to print
-         `invalid option' instead of `unknown option'
-       - new function, sh_invalidoptname, prints standard `invalid option
-         name' for long options
-       - new function, sh_badjob (s), prints standard `no such job' message
-       - new function, sh_invalidsig (s), prints standard `invalid signal
-         specification' message
-       - new function, sh_nojobs (s), prints standard `no job control' message
-       - new function, sh_needarg (s), prints standard `option requires an
-         argument' message
-       - new function, sh_neednumarg (s), prints standard `numeric
-         argument required' message
-       - new function, sh_badpid(s), prints standard `not a pid...' message
-       - new function, sh_erange (s, desc) prints standard `out of range'
-         message, optionally using `desc' to say what the argument is
-
-builtins/{alias,command,declare,exec,hash,type}.def
-       - call sh_notfound() instead of calling builtin_error directly
-
-builtins/{declare,getopts,read,set,setattr}.def
-       - call sh_invalidid() instead of calling builtin_error directly
-
-builtins/{cd,command,enable,exec,hash,source}.def
-       - call sh_restricted() instead of calling builtin_error directly
-
-builtins/{printf,read,ulimit}.def, builtins/common.c
-       - call sh_invalidnum instead of calling builtin_error directly
-
-builtins/{complete,declare,pushd,set}.def, builtins/bashgetopt.c
-       - call sh_invalidopt instead of bad_option or builtin_error directly
-
-builtins/{complete,set,shopt}.def
-       - call sh_invalidoptname instead of builtin_error directly
-
-builtins/{fg_bg,jobs,kill,wait}.def
-       - call sh_badjob instead of calling builtin_error directly
-
-builtins/common.c, builtins/{kill,signal}.def
-       - call sh_invalidsig instead of calling builtin_error directly
-
-builtins/{fg_bg,suspend,wait}.def
-       - call sh_nojobs instead of calling builtin_error directly
-
-builtins/{common,bashgetopt}.c, builtins/{hash,kill}.def
-       - call sh_neednumarg and sh_needarg where required
-
-builtins/{kill,wait}.def
-       - call sh_badpid where required
-
-builtins/{break,fc,history,pushd,shift,ulimit,umask}.def
-       - call sh_erange where appropriate
-
-builtins/printf.def
-       - new static function, printf_erange, prints standard out-of-range
-         warning message
-
-builtins/set.def
-       - changed so that calls to sh_invalidopt always include the leading
-         `+' or `-'
-
-builtins/shopt.def
-       - changed SHOPT_ERROR macro to shopt_error function
-
-builtins/bind.def
-       - regularized error messages to `bind: object: error string' like
-         other error messages
-
-builtins.h
-       - the `short_doc' member of a `struct builtin' is now of type
-         `const char *'
-       - the strings in `long_doc' array of a struct builtin are now const
-
-builtins/mkbuiltins.c
-       - changes for new `const' members of struct builtin
-
-                                  3/20
-                                  ----
-lib/readline/histfile.c
-       - use pointers instead of indexing into buffer when reading the
-         contents of the history file in read_history_range and
-         history_truncate_file
-
-                                  3/21
-                                  ----
-lib/readline/histfile.c
-       - new file, with code to mmap the history file for reading and
-         writing (depends on HAVE_MMAP, currently nothing checks for that)
-
-                                  3/25
-                                  ----
-error.[ch]
-       - new function, err_badarraysub(s), calls report_error with standard
-         `bad array subscript' message
-       - new function, err_unboundvar(s), calls report_error with standard
-         `unbound variable' message
-       - new function, err_readonly(s), calls report_error with standard
-         `readonly variable' message
-
-{arrayfunc,subst}.c
-       - call err_badarraysub where appropriate
-
-{expr,subst}.c
-       - call err_unboundvar where appropriate
-
-{arrayfunc,variables}.c
-       - call err_readonly where appropriate
-
-shell.c
-       - changed text of bad option error messages to be the same as that
-         printed for builtin errors
-
-builtins/common.c
-       - changed sh_invalidopt to print the invalid option before the rest
-         of the error message (required some tests to be modified)
-       - new function, sh_readonly, calls builtin_error with standard
-         `readonly variable' message
-
-variables.c,builtins/declare.def
-       - call sh_readonly where appropriate
-
-lib/sh/stringvec.c
-       - added strvec_remove (sv, s), removes S from SV and shuffles rest of
-         elements down 1
-
-lib/sh/stringlist.c
-       - added strlist_remove(sl, s), just calls strvec_remove on the
-         component list
-
-externs.h
-       - new extern declarations for strvec_remove and strlist_remove
-       - fixed extern declaration for strvec_search; the arguments were
-         reversed (unimportant, it's not compiled into the shell)
-
-subst.c
-       - change param_expand to call quote_escapes on values retrieved when
-         expanding the positional parameters
-       - change parameter_brace_expand_word to quote escapes on values
-         retrieved when expanding the positional parameters
-       - fix parameter_brace_substring to quote escape characters on unquoted
-         substrings extracted from variable values (needed to separate case
-         VT_VARIABLE from VT_ARRAYMEMBER for this, since, because
-         get_var_and_type calls array_value for VT_ARRAYMEMBER, we need to
-         skip over quoted characters in an already-appropriately-quoted
-         string to find the substring we want)
-       - fix parameter_brace_substring to quote escape characters in the
-         value returned by pos_params when expanding subsets of the
-         positional parameters and not within double quotes (in which case
-         pos_params() quotes the string for us)
-       - fix parameter_brace_substring to quote escape characters in the
-         value returned by array_subrange when expanding subsets of an
-         array and not within double quotes (in which case
-         array_subrange() quotes the string for us)
-       - new function, quoted_strlen(s), does strlen(s) while skipping over
-         characters quoted with CTLESC (#ifdef INCLUDE_UNUSED, since it's
-         not used yet)
-       - changed pos_params() so it always returns a list whose members are
-         quoted strings if (quoted&(Q_HERE_DOCUMENT|Q_DOUBLE_QUOTES)) != 0
-
-arrayfunc.c
-       - fix array_value to consistently call quote_escapes, even when a
-         non-array variable is being subscripted with element 0, in which
-         case we return the variable value
-
-lib/sh/strtrans.c
-       - make the for_echo parameter to ansicstr a `flags' parameter that
-         has its old `for echo' meaning if flags&1 is non-zero (which is
-         consistent with the old code)
-       - Added code to the `flags' parameter to ansicstr so that if flags&2
-         is non-zero, CTLESC and CTLNUL are escaped with CTLESC in the
-         expanded string
-       - change ansiexpand() to call ansicstr with a `flags' parameter of 2
-
-                                  3/26
-                                  ----
-lib/readline/histfile.c
-       - when reading and writing the history file, use malloc instead of
-         xmalloc and handle failures gracefully, so the application doesn't
-         abort if the history file or history list is too big
-
-                                  3/27
-                                  ----
-arrayfunc.c
-       - changed array_value_internal to take an additional `int *'
-         parameter, in which is returned the type of array indexing
-         performed (array[@] vs. array or array[index])
-       - changed array_value and get_array_value to take a corresponding
-         extra parameter and pass it to array_value_internal
-       - changed array_value_internal to no longer return newly-allocated
-         memory or quote CTLESC and CTLNUL in the returned string if
-         `simple' array indexing (subscript not `@' or `*') is being
-         performed.  This makes it more like a variable lookup
-
-arrayfunc.h
-       - changed prototypes for array_value and get_array_value
-
-expr.c
-       - added new parameter to call to get_array_value in expr_streval
-       - don't need to free memory returned by get_array_value any more
-
-subst.c
-       - quote_escapes now works with multibyte characters
-       - dequote_string now works with multibyte characters
-       - dequote_escapes is now needed, so it's compiled in, and it
-         now works with multibyte characters
-       - remove_quoted_escapes now just calls dequote_escapes and copies the
-         result over the argument string
-       - remove_quoted_nulls now returns its char * argument, parallels
-         remove_quoted_escapes
-       - parameter_brace_expand_word now passes the new argument to
-         array_value and quotes CTLESC and CTLNUL in the result if it's a
-         `simple' array expansion by calling quote_escapes
-       - get_var_and_type now returns VT_ARRAYMEMBER for references like
-         ${array} where `array' is an array variable (just like ${array[0]}).
-         Documented (in comment) that a VT_VARIABLE return value means that
-         quote_escapes has been called at some point
-       - changed callers of get_var_and_type to no longer free value if
-         VT_ARRAYMEMBER is returned as type
-       - changed parameter_brace_substring and parameter_brace_patsub to
-         call dequote_escapes on the value from get_var_and_type if the
-         type is VT_VARIABLE, since the substring and pattern substitution
-         code doesn't understand CTLESC quoting
-       - parameter_brace_substring no longer needs to call quoted_substring
-         for the VT_ARRAYMEMBER case
-       - changed parameter_brace_patsub to call quote_escapes on the result
-         of pat_subst for the VT_VARIABLE and VT_ARRAYMEMBER cases, and to
-         quote the returned string in the VT_ARRAYVAR and VT_POSPARAMS cases
-         if the `MATCH_QUOTED' flag isn't set (if it is, the pattern
-         substitution functions perform any necessary quoting)
-       - quoted_substring is no longer used; it's now #ifdef INCLUDE_UNUSED
-
-lib/malloc/mstats.h
-       - new member in _malstats: u_bits32_t bytesreq, the total number of
-         bytes requested by the caller via calls to malloc() and realloc()
-
-lib/malloc/stats.c
-       - print bytesreq member in _print_malloc_stats
-       - don't print statistics for buckets for which nmal == 0 (no mallocs)
-
-lib/malloc/malloc.c
-       - modified internal_malloc, internal_realloc to keep running total of
-         number of bytes requested by calling application
-
-shell.c
-       - sh_exit is now compiled in; exit_shell calls sh_exit
-
-error.c
-       - changed fatal_error, report_error, parser_error to call sh_exit
-
-                                  3/28
-                                  ----
-subst.[ch]
-       - changed Q_NOQUOTE to Q_PATQUOTE; it makes the intent more clear
-
-subst.c
-       - moved code from parameter_brace_expand into a new function that
-         dispatches for pattern substitution: parameter_brace_remove_pattern
-       - changed structure of parameter_brace_remove_pattern to be like
-         parameter_brace_patsub and its ilk:  call get_var_and_type to
-         isolate the variable name, move the pattern isolation code out of
-         the various *_remove_pattern functions into
-         parameter_brace_remove_pattern and pass the results to the various
-         functions, use a switch on the return value from get_var_and_type
-         to decide which function to call, regularized the arguments to the
-         separate pattern removal functions
-       - parameter_brace_remove_pattern now properly quotes escape chars in
-         the returned value
-       - changed get_var_and_type to call dequote_escapes on the `value'
-         parameter for case VT_VARIABLE and return the result in *valp,
-         so the calling functions don't have to do it themselves; changed
-         callers appropriately
-       - fixed getpattern() where it broke posix compliance:  if you enclose
-         a pattern removal spec in double quotes, the outer double quotes
-         have no effect on the pattern (POSIX.1-200x 2.6.2).  This uncovered
-         a bug in the test suite (!)
-
-pathexp.c
-       - fixed a problem with quote_string_for_globbing where it would change
-         consecutive CTLESC chars all to \ instead of changing every other
-         quoted char
-
-                                  3/31
-                                  ----
-lib/malloc/{malloc,stats}.c
-       - moved declaration of _mstats to malloc.c so stats.o doesn't get
-         linked into the shell if the stats functions aren't called
-
-                                   4/2
-                                   ---
-lib/glob/smatch.c
-       - introduce `XCHAR' define, which is the type of arguments passed to
-         strcoll/strcmp/strlen and their wide-character equivalents, added
-         appropriate casts
-       - static arrays in single-byte version of rangecmp() are `char', not
-         `unsigned char', so compilers don't complain about calls to strcoll
-
-lib/glob/sm_loop.c
-       - casts for `XCHAR' and `XCHAR *' arguments to libc functions
-       - use prototype declaration for BRACKMATCH if `PROTOTYPES' is defined
-         to avoid problems with type promotion (unsigned char -> int)
-
-lib/glob/collsyms.h
-       - `name' member of struct _COLLSYM is now of type `XCHAR *', since
-         some compilers don't like `unsigned char *' initializers from
-         constant strings
-
-[bash-2.05b-alpha1 released]
-
-                                   4/3
-                                   ---
-builtins/{evalstring.c,common.h}
-       - new flag for parse_and_execute, SEVAL_NOFREE, means to not free
-         the argument string when finished
-
-lib/readline/text.c
-       - fixed a trivial typo in _rl_insert_char when reading multibyte
-         char sequences
-       - replace calls to ding() with rl_ding()
-
-include/chartypes.h
-       - remove SIGN_EXTEND_CHAR and TOASCII macros; they're unused
-
-make_cmd.c
-       - include dispose_cmd.h for extern function declarations
-
-lib/glob/glob.c
-       - include `shmbutil.h' and `xmalloc.h' for extern function declarations
-
-lib/glob/smatch.c
-       - include `xmalloc.h' for extern function declarations
-
-shell.c
-       - fix maybe_make_restricted to use its argument instead of global
-         `shell_name'
-
-version.c
-       - update copyright message to include this year
-
-lib/readline/display.c
-       - fixes from Jiro SEKIBA <jir@yamato.ibm.com> to fix autowrapping
-         when using multibyte characters
-
-lib/glob/sm_loop.c
-       - fixed a problem in BRACKMATCH where not enough memory was allocated
-         to hold a multibyte character when parsing POSIX.2 char class names
-
-support/config.{guess,sub}
-       - updated via patch from Paul Eggert with latest GNU additions
-
-variables.c
-       - var_lookup should use its `vcontext' argument instead of
-         unconditionally using `shell_variables'
-
-                                   4/4
-                                   ---
-builtins/bind.def,doc/{bash.1,bashref.texi}
-       - changed the usage summary and help text to make it clear that any
-         readline command that may appear in ~/.inputrc may be supplied as
-         one of the non-option arguments to `bind'
-
-builtins/mkbuiltins.c
-       - added support for `-H' option, which means to write long documentation
-         for each builtin to a separate file in the `helpfiles' directory
-
-builtins/Makefile.in
-       - new target `helpdoc', just creates long doc files in helpfiles
-         directory
-
-lib/sh/zcatfd.c
-       - new file, with zcatfd(int fd, int ofd, char *fn); dumps data from
-         FD to OFD
-
-Makefile.in,lib/sh/Makefile.in
-       - added zcatfd.c, zcatfd.o member of libsh.a
-
-builtins/evalstring.c
-       - changed cat_file to call zcatfd(fd, 1, fn)
-
-builtins/{shopt,colon}.def
-       - removed the $DOCNAME directive for `shopt', `true', and `false';
-         just use the names
-       - changed $DOCNAME for `:' to just be `colon' instead of
-         `colon_builtin'
-
-builtins/reserved.def
-       - added help entries for ((, [[, `for (('
-
-builtins/let.def
-       - add id++, id--, ++id, --id, ** to help text
-
-                                   4/8
-                                   ---
-builtins/bashgetopt.[ch]
-       - changed to allow options beginning with `+', enabled by a leading
-         `+' in the option string
-       - new variable, list_opttype, set to `-' or `+'
-
-builtins/{common.c,{builtin,eval,exit,fg_bg,let,printf,pushd,return,source,wait}.def
-       - changes to allow a `--' option for every builtin that accepts
-         operands but not options, as per posix.1-2001
-
-builtins/{declare,setattr}.def
-       - use internal_getopt for parsing options, now that it supports `+'
-
-builtins/set.def
-       - use internal_getopt for initial option parse, now that it supports
-         a leading `+'
-
-
-{configure,Makefile}.in, builtins/{Makefile.in,help.def,mkbuiltins.c}
-       - support for a new configure option, ``--enable-separate-helpfiles'',
-         moves the `long' help text to separate help files, installed by
-         default into ${datadir}/bash, one file per builtin.  Off by
-         default -- it saves 47K, but it's only 47K, and it's in the text
-         segment
-
-flags.c
-       - build internal_getopt() option string argument from flags array at
-         runtime in shell.c
-
-shell.c
-       - new variable to control writing malloc stats at exit:
-         malloc_trace_at_exit, 0 by default
-
-lib/malloc/malloc.c
-       - heavily updated:
-               o partial page allocated on first call to malloc to make
-                 subsequent sbrks page-aligned no longer wasted
-               o begin and end range guards are now the same value: the chunk
-                 requested
-               o coalescing code was changed to attempt to coalesce first two
-                 adjacent blocks on the free list; enabled by default
-               o blocks of size 32 are now candidates for larger block
-                 splitting, since 32 is the most popular size
-               o blocks of size 32 are now candidates for smaller block
-                 coalescing
-               o the IN_BUCKET check was changed to just make sure that the
-                 size isn't too big for the bucket, since the `busy block'
-                 checking code may increase the bucket by one or more,
-                 meaning that the old check would fail and cause a panic when
-                 a chunk allocated in such a way was freed
-               o bin sizes are now precomputed and looked up in an array
-                 rather than being computed at runtime
-               o moved the _mstats declaration here to avoid the stats code
-                 being linked in even when no stats functions were called
-                 (only matters if MALLOC_DEBUG is defined)
-               o malloc now keeps track of the address of the top of the heap
-                 and will return large chunks to the system with calls to
-                 sbrk with a negative argument when freeing the top chunk.
-                 Two thresholds:  LESSCORE_FRC means to unconditionally return
-                 memory to the system; LESSCORE_MIN means to return memory if
-                 there's at least one block already on the free list
-
-lib/malloc/mstats.h
-       - stats struct now keeps track of number of block coalesces by bin,
-         and the number of times memory was returned to the system by bin
-
-lib/malloc/stats.c
-       - trace_malloc_stats now takes a second argument: the name of the file
-         to write to.  The first `%p' in the template file name is replaced
-         by the pid
-
-                                   4/9
-                                   ---
-lib/malloc/imalloc.h
-       - added some macros derived from dlmalloc and glibc malloc to inline
-         memcpy and memset if the requested size is <= 32 bytes
-
-lib/malloc/malloc.c
-       - use MALLOC_MEMSET instead of memset in internal_{malloc,free}
-
-include/ocache.h
-       - use OC_MEMSET (variant of MALLOC_MEMSET) in ocache_free
-
-configure.in, config.h.in
-       - check for getservent(), define HAVE_GETSERVENT if found
-
-bashline.c
-       - punt immediately from bash_servicename_completion_function if
-         HAVE_GETSERVENT is not defined (cygwin seems to not define it)
-       - include "input.h" for extern save_token_state() and
-         restore_token_state() declarations
-       - change bash_execute_unix_command to call parse_and_execute with
-         SEVAL_NOHIST flag so the command doesn't get saved on the history
-         list
-       - change bash_execute_unix_command to save and restore the current
-         command line count and the token state (last_read_token, etc.).
-         Everything else is saved by either parse_and_execute directly or
-         the call it makes to push_stream().  The shell_input_line stuff
-         doesn't need to be saved and restored; it's not computed until
-         readline() returns
-
-                                  4/10
-                                  ----
-lib/glob/glob.[ch]
-       - glob_filename and glob_vector now take an additional `flags' arg
-       - define GX_MARKDIRS as possible flag value for glob_filename and
-         glob_vector
-
-lib/sh/snprintf.c
-       - fixed some bugs with handling of `g' and `G' formats
-       - make sure numtoa returns the fractional part correctly when passed 0
-       - implemented thousands grouping for `'' flag character
-
-lib/sh/rename.c
-       - a few changes to make it more bulletproof
-
-                                  4/11
-                                  ----
-lib/glob/glob.c
-       - added the couple of dozen lines of code to glob_dir_to_array to
-         finish implementing GX_MARKDIRS
-
-builtins/set.def
-       - changed unset builtin so that it no longer considers unsetting an
-         unset variable or function to be an error
-
-lib/readline/display.c
-       - fix to rl_redisplay for a problem which caused display to be messed
-         up when the last line of a multi-line prompt (possibly containing
-         invisible characters) was longer than the screen width
-
-                                  4/15
-                                  ----
-aclocal.m4
-       - use AC_DEFINE_UNQUOTED in BASH_SYS_DEFAULT_MAIL_DIR instead of
-         enumerating all of the possible values and using AC_DEFINE
-
-                                  4/16
-                                  ----
-Makefile.in, {builtins,support}/Makefile.in
-       - new variables, CFLAGS_FOR_BUILD and CPPFLAGS_FOR_BUILD, substituted
-         by `configure'
-       - changed CCFLAGS_FOR_BUILD to BASE_CCFLAGS, removing $(CPPFLAGS);
-         CCFLAGS and CCFLAGS_FOR_BUILD now include $(BASE_CCFLAGS) with
-         (possibly) different values for CPPFLAGS and CFLAGS 
-       - GCC_LINT_CFLAGS now includes $(BASE_CCFLAGS) and $(CPPFLAGS)
-         instead of CCFLAGS_FOR_BUILD
-       - new variable, LDFLAGS_FOR_BUILD, right now equivalent to LDFLAGS
-       - remove $(CPPFLAGS) from recipes for buildversion, mksignames, and
-         mksyntax
-
-configure.in
-       - compute and substitute CFLAGS_FOR_BUILD, CPPFLAGS_FOR_BUILD, and
-         LDFLAGS_FOR_BUILD
-       - changed qnx to use LOCAL_LDFLAGS and LOCAL_LIBS instead of putting
-         everything in LOCAL_LDFLAGS
-
-builtins/Makefile.in
-       - remove $(PROFILE_FLAGS) from recipe for building `mkbuiltins'
-       - use LDFLAGS_FOR_BUILD instead of LDFLAGS in recipe for building
-         `mkbuiltins'
-
-Makefile.in
-       - use $(CC_FOR_BUILD) and $(CCFLAGS_FOR_BUILD) to build auxiliary
-         test programs (printenv, recho, zecho)
-
-support/Makefile.in
-       - use CC_FOR_BUILD and CCFLAGS_FOR_BUILD in recipe for building
-         `man2html'
-
-lib/tilde/Makefile.in
-       - substitute PROFILE_FLAGS, use PROFILE_FLAGS in $(CCFLAGS)
-
-                                  4/25
-                                  ----
-Makefile.in, configure.in
-       - moved RELSTATUS to configure.in; configure substitutes it into
-         the generated Makefile
-
-lib/sh/snprintf.c
-       - fix wchars() to deal with systems where MB_CUR_MAX is not a
-         constant expression
-
-                                   5/2
-                                   ---
-lib/sh/shquote.c
-       - add `,' to list of chars that are backslash-quoted.  It doesn't
-         hurt normal usage and prevents filenames with commas from being
-         inappropriately split by brace expansion after using
-         complete-into-braces
-
-                                   5/6
-                                   ---
-lib/sh/xstrchr.c
-       - we only need the check of MB_CUR_MAX and the slow code for a
-         few encodings, and even then only for a subset of the charset
-
-arrayfunc.c
-       - some speedups for skipsubscript and multibyte chars from Bruno Haible
-
-locale.c
-       - changed set_lang to call setlocale(LC_ALL, ...) if LC_ALL doesn't
-         already have a value, but doesn't change any shell variables
-
-include/shmbutil.h
-       - major speedups from Bruno Haible, mostly concerned with reducing
-         the number of strlen(3) calls
-
-subst.c
-       - change callers of macros in shmbutil.h to add extra argument as
-         necessary
-       - skip_single_quoted and skip_double_quoted take another argument:
-         the length of the string; mostly useful when using multibyte chars
-       - many speedups from precomputing string lengths at function start
-       - fixed a small bug in de_backslash in the midst of rewriting for
-         better efficiency
-
-{braces,make_cmd,pathexp}.c
-       - change callers of macros in shmbutil.h to add extra argument as
-         necessary
-
-pathexp.c
-       - fix a one-too-far problem with multibyte chars in
-         unquoted_glob_pattern_p
-
-braces.c
-       - brace_gobbler takes a new argument, the length of the passed string
-       - expand_amble takes a new argument, the length of the passed string
-
-                                   5/7
-                                   ---
-subst.c
-       - modified remove_quoted_nulls to eliminate the memory allocation and
-         do the copy in place using the same strategy as de_backslash
-
-lib/readline/{rldefs.h,complete.c}
-       - new define RL_QF_OTHER_QUOTE, so _rl_find_completion_word can note
-         that it found a quoting character other than \'" that appears in
-         rl_completer_quote_characters
-
-                                   5/9
-                                   ---
-jobs.c
-       - save and restore old value of jobs_list_frozen when calling trap
-         handlers from set_job_status_and_cleanup to avoid seg faults when
-         running recursive trap handlers
-
-                                  5/10
-                                  ----
-builtins/common.h
-       - new #defines to use for value of changed_dollar_vars (provides
-         information about the caller who wants to blow away the old dollar
-         variables)
-
-builtins/common.c
-       - changed set_dollar_vars_changed to set changed_dollar_vars to one
-         of the ARGS_* values depending on the caller and environment
-
-builtins/source.def
-       - source restores the positional parameters unless the `set' builtin
-         was called to specify a new set while not executing a shell function
-
-                                  5/13
-                                  ----
-POSIX
-       - new file, was in CWRU/POSIX.NOTES
-
-doc/{Makefile.in,Makefile}
-       - changed `posix' rule to modify ../POSIX
-
-doc/mkposix
-       - write to `POSIX' by default
-
-lib/sh/strtrans.c
-       - when ansicstr is parsing a format string for `echo -e' (or the
-         equivalent xpg_echo option is enabled), obey the POSIX-2001/SUSv3
-         standard and accept 0-3 octal digits after a leading `0'
-
-doc/{bash.1,bashref.texi}
-       - updated `echo' description to note that up to three octal digits
-         are now accepted following `\0'
-
-                                  5/16
-                                  ----
-doc/Makefile.in
-       - remove the generated documentation on `make distclean' if the
-         build directory and source directory are not the same
-
-Makefile.in
-       - descend into `support' subdirectory on a `make clean' and
-         `make distclean'
-       - remove parser-built, y.tab[ch] on a `make distclean' if the build
-         directory and source directory are not the same
-
-support/Makefile.in
-       - support various `clean' targets and remove man2html.o and man2html
-
-{configure,Makefile}.in
-       - move values for DEBUG and MALLOC_DEBUG into configure.in; on by
-         default for development versions; off by default for releases
-         (off for profiling, too)
-
-                                  5/21
-                                  ----
-parse.y
-       - modified the grammar to allow a simple_list followed by yacc_EOF
-         to terminate a command.  This fixes problems with things like
-         a backslash-newline at the end of an `eval'd string
-       - change handle_eof_input_unit() to reset the token state before
-         calling prompt_again(), in case the prompt to be evaluated contains
-         a command substitution
-
-                                  5/23
-                                  ----
-lib/readline/vi_mode.c
-       - fix `r' command (rl_vi_change_char) when HANDLE_MULTIBYTE is defined
-         but MB_CUR_MAX == 1
-
-                                  5/24
-                                  ----
-lib/malloc/watch.c
-       - don't try to print `file' argument to _watch_warn if it's null
-
-lib/malloc/malloc.c
-       - changed guard checking code in internal_{malloc,free,realloc} to
-         access memory as (char *) and copy into a union instead of
-         casting and dereferencing a pointer to u_bits32_t, since that
-         results in unaligned accesses which will cause Sparcs to upchuck
-
-                                  5/30
-                                  ----
-[bash-2.05b-beta1 released]
-
-lib/readline/text.c
-       - fixed a problem with rl_transpose_chars on systems supporting
-         multibyte characters with a locale that doesn't have any multibyte
-         chars
-
-                                   6/4
-                                   ---
-expr.c
-       - fix a/=0 and a%=0 to throw evaluation errors rather than core dumps
-
-lib/readline/display.c
-       - fix core dump when line wrapping a multibyte character (line
-         accidentally dropped from the original patch)
-
-lib/readline/mbutil.c
-       - fix reversed return value from _rl_is_mbchar_matched; fixes problem
-         with backward-char-search
-
-                                  6/10
-                                  ----
-lib/sh/getenv.c
-       - fix getenv to not free value returned by find_tempenv_variable
-       - add setenv, putenv, unsetenv for completeness
-
-                                  6/12
-                                  ----
-shell.c
-       - change init_noninteractive to init expand_aliases to the value of
-         posixly_correct
-       - don't initialize expand_aliases to posixly_correct anywhere else.
-         This allows the -O expand_aliases invocation option to work correctly
-
-general.c
-       - fix move_to_high_fd to not try the dup2 unless the fd loop results
-         in an fd > 3; just return the passed file descriptor otherwise
-       - use HIGH_FD_MAX, defined in general.h, instead of hard-coded 256
-         as highest file descriptor to try
-
-subst.c
-       - in process_substitute, call move_to_high_fd with `maxfd' parameter
-         of -1 instead of 64, so move_to_high_fd will use its maximum
-
-                                  6/21
-                                  ----
-lib/malloc/malloc.c
-       - don't bother calling MALLOC_MEMSET if the requested size is 0
-
-builtins/setattr.def
-       - note in short doc that export and readonly can take assignment
-         statements as arguments
-
-error.c
-       - new function, error_prolog(), to capture common error message
-         prefix code (except for parser errors)
-
-                                  6/25
-                                  ----
-aclocal.m4
-       - add tests for standard-conforming declarations for putenv and
-         unsetenv in system header files
-
-{configure,config.h}.in
-       - call BASH_FUNC_STD_PUTENV and BASH_FUNC_STD_UNSETENV, define
-         HAVE_STD_GETENV and HAVE_STD_UNSETENV, respectively, if they
-         succeed
-
-lib/sh/getenv.c
-       - change putenv and unsetenv to take differing prototypes in
-         stdlib.h into account
-
-                                  6/27
-                                  ----
-[bash-2.05b-beta2 released]
-
-                                  6/28
-                                  ----
-builtins/common.c
-       - fix get_job_spec so that %N works when N is the size of the jobs
-         list (%8 means job 8, but the 7th member of the jobs array, so
-         it's OK if N == job_slots because the function returns N-1)
-
-                                   7/1
-                                   ---
-shell.c
-       - turn off line editing if $EMACS is set to `t'
-
-                                  7/10
-                                  ----
-builtins/set.def
-       - remove mention of `-i' from long help doc, since it has no effect
-
-                                  7/17
-                                  ----
-[bash-2.05b released]
-
-                                  7/18
-                                  ----
-
-lib/malloc/malloc.c
-       - make sure that the `free_return' label has a non-empty statement
-         to branch to
-
-                                  7/19
-                                  ----
-locale.c
-       -  only call setlocale() from set_lang() if HAVE_SETLOCALE is defined;
-          otherwise just return 0
-
-lib/readline/mbutil.c
-       - only try to memset `ps' in _rl_get_char_len if it's non-NULL.  Ditto
-         for _rl_adjust_point
-
-                                  7/23
-                                  ----
-execute_cmd.c
-       - fix for executing_line_number() when compiling without conditional
-         commands, dparen arithmetic or the arithmetic for command
-
-                                  
-                                  7/24
-                                  ----
-support/Makefile.in
-       - fix maintainer-clean, distclean, mostlyclean targets
-
-builtins/common.c
-       - fix bug in sh_nojobs where it doesn't pass the right number of args
-         to builtin_error
-
-bashline.c
-       - when using command completion and trying to avoid appending a slash
-         if there's a directory with the same name in the current directory,
-         use absolute_pathname() instead of just checking whether the first
-         char of the match is a slash to catch things like ./ and ../
-
-examples/complete/bashcc-1.0.1.tar.gz
-       - a package of completions for Clear Case, from Richard S. Smith
-         (http://www.rssnet.org/bashcc.html)
-
-input.c
-       - fix check_bash_input to call sync_buffered_stream if the passed fd
-         is 0 and the shell is currently reading input from fd 0 -- all it
-         should cost is maybe an additional read system call, and it fixes
-         the bug where an input redirection to a builtin inside a script
-         which is being read from stdin causes the already-read-and-buffered
-         part of the script to be thrown away, e.g.:
-
-               bash < x1
-
-         where x1 is
-
-               hostname
-               read Input < t.in
-               echo $Input
-               echo xxx
-
-execute_cmd.c
-       - in initialize_subshell(), call unset_bash_input (0) to not mess with
-         fd 0 if that's where bash thinks it's reading input from.  Fixes
-         bug reported by jg@cs.tu-berlin.de on 17 July 2002.  Should be a way
-         to check whether or not the current fd 0 at the time of the call has
-         not been redirected, like in the bug report.  Also might eventually
-         want to throw in a sync_buffered_stream if bash is reading input
-         from fd 0 in a non-interactive shell into a buffered stream, so the
-         stream is sync'd -- might be necessary for some uses
-
-                                  7/25
-                                  ----
-lib/readline/signals.c
-       - make sure rl_catch_sigwinch is declared even if SIGWINCH is not
-         defined, so the readline state saving and restoring functions in
-         readline.c are always the same size even if SIGWINCH is not defined,
-         and undefined references don't occur when SIGWINCH is not defined
-
-                                  7/30
-                                  ----
-bashline.c
-       - augment patch from 7/24 to not disable rl_filename_completion_desired
-         if the first char of the match is `~'
-
-lib/readline/bind.c
-       - when creating `shadow' keymaps `bound' to ANYOTHERKEY, don't bind
-         a key whose type is ISFUNC but whose function is the `fake'
-         rl_do_lowercase_version (fixes debian bash bug #154123)
-
-lib/readline/readline.c
-       - don't call _rl_vi_set_last from _rl_dispatch_subseq if
-         key == ANYOTHERKEY (when truncated to `sizeof(char)', it will be 0,
-         which strchr will find in `vi_textmod')
-
-                                  7/31
-                                  ----
-lib/readline/input.c
-       - fix rl_gather_tyi to only slurp up one line of available input, even
-         if more than one line is available (fixes debian bash bug #144585)
-
-                                   8/3
-                                   ---
-bashline.c
-       - better fix for command completion problem -- test for directory
-         explicitly with test_for_directory before turning off
-         rl_filename_completion_desired, since that's the case we're trying
-         to protect against
-
-                                   8/5
-                                   ---
-include/shmbutil.h
-       - fix ADVANCE_CHAR macro to advance the string pointer if mbrlen
-         returns 0, indicating that the null wide character (wide string
-         terminator) was found (debian bash bug #155436)
-
-lib/readline/mbutil.c
-       - fix _rl_adjust_point to increment the string pointer if mbrlen
-         returns 0
-
-support/shobj-conf
-       - fix for the `-install_name' value in SHLIB_XLDFLAGS assignment for
-         Darwin from the fink folks
-
-                                   8/6
-                                   ---
-builtins/exit.def
-       - broke code that runs ~/.bash_logout out into a separate function:
-         bash_logout()
-
-builtins/common.h
-       - extern declaration for bash_logout()
-
-eval.c
-       - call bash_logout() from alrm_catcher(), so timed-out login shells
-         run ~/.bash_logout before processing the exit trap
-
-lib/sh/strtrans.c
-       - implemented $'\x{hexdigits}' expansion from ksh93
-
-configure.in
-       - define RECYCLES_PIDS in LOCAL_CFLAGS for cygwin; don't bother to
-         link with -luser32
-
-examples/loadables/strftime.c
-       - new loadable builtin, interface to strftime(3)
-
-                                   8/7
-                                   ---
-parse.y
-       - parse_arith_cmd now takes a second argument, a flag saying whether
-         or not to add double quotes to a parsed arithmetic command; changed
-         callers
-       - changed parse_dparen so it tells parse_arith_cmd to not add the
-         double quotes and therefore doesn't need to remove them
-       - change parse_dparen to add W_NOGLOB|W_NOSPLIT|W_QUOTED flags to word
-         created when parsing (( ... )) arithmetic command, since the double
-         quotes are no longer added
-
-make_cmd.c
-       - in make_arith_for_expr, set the flags on the created word to
-         W_NOGLOB|W_NOSPLIT|W_QUOTED
-
-execute_cmd.c
-       - change execute_arith_command to expand the expression with
-         expand_words_no_vars, like the arithmetic for command code does
-       - fix execute_arith_command to handle the case where the expanded
-         expression results in a NULL word without crashing
-
-tests/{arith-for,cprint}.tests
-       - change expected output to account for no longer adding quotes to
-         ((...)) commands
-
-                                   8/8
-                                   ---
-print_cmd.c
-       - take out the space after printing the `((' and before printing the
-         `))' in print_arith_command, print_arith_for_command, and
-         xtrace_print_arith_cmd
-
-tests/{arith-for,cprint}.tests
-       - change expected output to account for no longer adding leading and
-         trailing spaces when printing ((...)) and arithmetic for commands
-
-                                  8/17
-                                  ----
-subst.c
-       - fix issep() define to handle case where separators[0] == '\0', in
-         which case it always returns false
-
-lib/readline/histexpand.c
-       - fix off-by-one error in history_expand_internal when using the `g'
-         modifier that causes it to skip every other match when matching a
-         single character (reported by gjyun90@resl.auto.inha.ac.kr)
-
-doc/{bash.1,bashref.texi}
-       - make sure that the name=word form of argument to declare/typeset,
-         export, and readonly is documented in the description
-
-                                  8/30
-                                  ----
-lib/readline/histexpand.c
-       - make history_expand_internal understand double quotes, because
-         single quotes are not special inside double quotes, according to
-         our shell-like quoting conventions.  We don't want unmatched
-         single quotes inside double-quoted strings inhibiting history
-         expansion
-       - make `a' modifier equivalent to `g' modifier for compatibility with
-         the BSD csh
-       - add a `G' modifier that performs a given substitution once per word
-         (tokenized as the shell would do it) like the BSD csh `g' modifier
-
-                                  8/31
-                                  ----
-braces.c
-       - when compiling for the shell, treat ${...} like \{...} instead of
-         trying to peek backward when we see a `{'.  This makes it easier
-         to handle things like \${, which should be brace expanded because
-         the $ is quoted
-
-                                   9/7
-                                   ---
-aclocal.m4
-       - redirect stdin from /dev/null in BASH_CHECK_DEV_FD before testing
-         the readability of /dev/fd/0, so we're dealing with a known quantity
-
-                                  9/11
-                                  ----
-[prayers for the victims of 9/11/01]
-
-shell.c
-       - fix maybe_make_restricted to handle a restricted login shell with a
-         base pathname of `-rbash' and skip over any leading `-'
-
-                                  9/13
-                                  ----
-builtins/evalstring.c
-       - in parse_and_execute, make sure we don't try to run unwind-protects
-         back to `pe_dispose' after a longjmp back to top_level if the
-         pe_dispose frame hasn't been initialized
-
-lib/readline/display.c
-       - fix problem with prompt overwriting previous output when the output
-         doesn't contain a newline in a multi-byte locale.  This also should
-         fix the problem of bash slowing down drastically on long lines when
-         using a multi-byte locale, because it no longer tries to rewrite the
-         entire line each time.  Patch from Jiro SEKIBA <jir@yamato.ibm.com>
-
-parse.y
-       - move the typedef for alias_t that is compiled in if ALIAS is not
-         defined up before the prototype for push_string, since that takes
-         an alias_t * parameter
-
-lib/readline/terminal.c
-       - bind the termcap description's left and right arrow keys to
-         rl_backward_char and rl_forward_char, respectively,  instead of
-         rl_forward and rl_backward (which are just there for backwards
-         compatibility)
-
-aclocal.m4
-       - when testing readability of /dev/stdin, redirect stdin from /dev/null
-         to make sure it's a readable file
-
-                                  9/17
-                                  ----
-config-bot.h
-       - don't test __STDC__ when deciding whether or not to use stdarg.h;
-         just use it if it's present
-
-tests/read2.sub
-       - redirect from /dev/tty when using `read -t' 
-
-                                  9/20
-                                  ----
-builtins/history.def
-       - when reading `new' entries from the history file with `history -n',
-         fix increment of history_lines_this_session by taking any change
-         in history_base into account
-
-lib/sh/pathphys.c
-       - changes to sh_physpath to deal with pathnames that end up being
-         longer than PATH_MAX without dumping core
-
-lib/readline/doc/{history.3,hsuser.texinfo},doc/ bash.1
-       - documented new `a' and `G' history modifiers
-
-                                  9/25
-                                  ----
-lib/readline/misc.c
-       - when traversing the history list with arrow keys in vi insertion
-         mode, put the cursor at the end of the line (like in emacs mode)
-
-mksyntax.c
-       - don't try to use \a and \v unless __STDC__ is defined; use the
-         ascii integer equivalents otherwise
-       - include "config.h" in the generated syntax.c file for a possible
-         definition of `const'
-
-doc/{bash.1,bashref.texi}
-       - document the meaning of a null directory in $PATH
-
-                                  9/26
-                                  ----
-parse.y
-       - fix set_line_mbstate to handle case where mbrlen() returns 0,
-         indicating the null wide character
-       - fix set_line_mbstate so we don't directly compare a char variable
-         to EOF, since char can (and is) unsigned on some machines
-
-bashline.c
-       - change bash_execute_unix_command to save a little bit more state:
-         last_shell_builtin, this_shell_builtin, last_command_exit_value
-
-                                  9/27
-                                  ----
-execute_cmd.c
-       - tentative change to execute_simple_command to avoid freeing freed
-         memory in the case where bash forks early but still ends up calling
-         execute_disk_command, without passing newly-allocated memory to
-         make_child.  This may fix the core dumps with the linux-from-scratch
-         folks
-
-                                  9/28
-                                  ----
-Makefile.in,{builtins,lib/sh}/Makefile.in      
-       - fix up dependencies, mostly on ${BUILD_DIR}/version.h, so that
-         parallel makes work with GNU and BSD makes
-
-shell.h
-       - new struct to save partial parsing state when doing things like
-         bash_execute_unix_command and other operations that execute
-         commands while a line is being entered and parsed
-
-parse.y
-       - new functions, save_parser_state() and restore_parser_state(), to
-         save and restore partial parsing state 
-
-bashline.c
-       - change bash_execute_unix_command to call {save,restore}_parser_state
-
-builtins/jobs.def
-       - change execute_list_with_replacements to eliminate a run_unwind_frame
-         in favor of calling the cleanup explicitly and discarding the frame
-
-execute_cmd.c
-       - change execute_for_command to avoid a run_unwind_frame in the case
-         where the loop variable is readonly or otherwise not assignable
-       - change execute_select_command and execute_simple_command to use
-         discard_unwind_frame by running the cleanup code explicitly, instead
-         of using run_unwind_frame
-       - make sure execute_select_command decreases loop_level even on error
-
-                                  9/30
-                                  ----
-doc/{bash.1,bashref.texi}
-       - fixed description of `unset' now that unsetting a previously-unset
-         variable is no longer an error
-
-                                  10/3
-                                  ----
-{configure,config.h}.in
-       - augment check for strtold with additional check to detect the
-         horribly broken hp/ux 11.x implementation that returns `long_double';
-         defines STRTOLD_BROKEN if so
-
-builtins/printf.def
-       - define floatmax_t as `double' if STRTOLD_BROKEN is defined
-
-                                  10/5
-                                  ----
-lib/readline/keymaps.c
-       - don't automatically bind uppercase keys to rl_do_lowercase_version
-         in rl_make_bare_keymap
-
-lib/readline/readline.c
-       - explicitly check for ANYOTHERKEY binding to rl_do_lowercase_version
-         and dispatch to lowercase of key when a prefix is not matched
-
-                                  10/12
-                                  -----
-bashline.c
-       - set COMP_WORDBREAKS in enable_hostname_completion to the value
-         of rl_completer_word_break_characters
-
-variables.c
-       - new special variable COMP_WORDBREAKS, controls the value of
-         rl_completer_word_break_characters
-
-variables.h
-       - new extern declaration for sv_comp_wordbreaks()
-
-subst.c
-       - change split_at_delims to behave more like shell word splitting if
-         the passed value for the delimiters is NULL, indicating that the
-         function is to use $IFS to split
-
-{execute_cmd,jobs,test,findcmd,input,make_cmd,redir,shell}.c
-builtins/mkbuiltins.c,builtins/{fc,history,source,umask}.def
-lib/sh/netconn.c
-lib/termcap/termcap.c
-lib/readline/histfile.c
-       - make sure all inclusions of <sys/file.h> are protected by
-         HAVE_SYS_FILE_H
-
-bashline.c
-       - don't turn off rl_filename_completion_desired in
-         attempt_shell_completion if the partial pathname contains a slash.
-         This still doesn't solve the problem of partial pathname completion
-         starting with a directory in the current directory without a
-         leading `./'.  There's no way to tell the difference between that
-         and a file found in $PATH (which may contain `.') at the point that
-         attempt_shell_completion acts
-
-                                  10/18
-                                  -----
-locale.c
-       - don't set lc_all to the default locale when LC_ALL is being unset
-       - new function, reset_locale_vars(), called to recompute the correct
-         locale variable values when LC_ALL is unset
-       - changed set_lang to not set LC_ALL, which it never should have been
-         doing in the first place, and to maintain a local variable `lang'
-         corresponding to $LANG
-       - change get_locale_var to use the precedence posix.2 specifies:
-         LC_ALL overrides individual variables; LANG, if set, is the default
-       - change set_locale_var to call get_locale_var to get the appropriate
-         value for the variable being set or unset
-       - call get_locale_var instead of using passed value in set_locale_var
-         to get the defaulting and precedence right
-
-lib/readline/nls.c
-       - new function, _rl_get_locale_var(), which does the same thing as
-         locale.c:get_locale_var(), with the right precedence and defaulting,
-         using sh_get_env_value to get the right bash variable values
-       - if HAVE_SETLOCALE is defined, _rl_init_eightbit first calls
-         _rl_get_locale_var to get the right value for LC_CTYPE, and uses
-         that in the call to setlocale.  If _rl_get_locale_var returns NULL,
-         call setlocale() to get the current international environment, and,
-         finally, if that returns null, call setlocale with a second argument
-         of "" to force the implementation's `native' environment
-
-pcomplete.c
-       - change gen_wordlist_completions to dequote the text before comparing
-         it against the expanded word list 
-       - changed gen_matches_from_itemlist to do the same thing
-
-bashline.c
-       - new global function, bash_dequote_word, calls bash_dequote_filename
-         on the text passed.  Used by the programmable completion code
-
-lib/readline/histfile.c
-       - make sure that whenever read_history_range returns a non-zero value
-         that it sets errno to some useful value
-
-                                  10/19
-                                  -----
-variables.c
-       - COMP_WORDBREAKS is now a dynamic variable, mirroring value of
-         rl_completer_word_break_characters.  Makes sure that the variable
-         always points to dynamic memory if it's not null or the readline
-         default
-
-bashline.c
-       - change enable_hostname_completion to manage a dynamic value of
-         rl_completer_word_break_characters, since assignments to
-         COMP_WORDBREAKS can change its value unpredictably
-
-lib/readline/{complete.c,readline.h}
-       - rl_completer_word_break_characters no longer has `const' attribute
-
-bashline.c
-       - clean up necessary places due to rl_completer_word_break_characters
-         no longer being `const'
-
-doc/{bash.1,bashref.texi}
-       - document new COMP_WORDBREAKS variable
-
-                                  10/21
-                                  -----
-print_cmd.c
-       - fix indirection_level_string to handle the case where the decoded
-         $PS4 is null without seg faulting
-
-                                  10/22
-                                  -----
-builtins/shift.def
-       - make sure that there is actually an argument when reporting a shift
-         count that exceeds the number of positional paramters and
-         shift_verbose is enabled
-
-lib/readline/rltty.c
-       - change SET_SPECIAL to call a new function, set_special_char, since
-         it contains a block.  It's called infrequently, so the performance
-         impact of making it a function should be negligible, and it helps
-         debugging
-
-                                  10/29
-                                  -----
-bashline.c
-       - make sure the editor in VI_EDIT_COMMAND and EMACS_EDIT_COMMAND is
-         quoted; it might contain spaces (e.g., `emacs -nw')
-
-aclocal.m4
-       - cache ac_cv_rl_version in RL_LIB_READLINE_VERSION macro
-
-configure.in
-       - change logic that sets RL_INCLUDEDIR so that it doesn't try to set
-         a bogus include path if the argument to --with-installed-readline
-         is `yes' -- helps with cross-compiling
-
-lib/readline/histexpand.c
-       - fix history_tokenize_word so that it handles <( and >( better
-
-                                  10/30
-                                  -----
-redir.c
-       - fix write_here_string so it handles the case where `herestr' expands
-         to NULL without seg faulting
-
-                                  10/31
-                                  -----
-mailcheck.c
-       - reverse logic flip from bash-2.05 that handled systems that don't
-         change the atime when the mailbox is accessed; make sure the file
-         is bigger before we report new mail.  This is the case in the vast
-         majority of cases.  Reported by jim@jtan.com
-
-                                  11/5
-                                  ----
-parse.y
-       - change action for `for x; { list; }' and corresponding `select'
-         production to use \"$@\" instead of just $@, as it is with all the
-         other actions
-
-                                  11/9
-                                  ----
-parse.y
-       - new flag for parse_matched_pair: P_DQUOTE, indicating that the
-         pair of characters being matched is between double quotes
-       - parse_matched_pair now passes P_DQUOTE down to recursive calls:
-         if the open char to be matched is a `"' or the passed-in flags
-         include P_DQUOTE, set the local `rflags' variable to P_DQUOTE and
-         pass `rflags' down to recursive calls
-       - if `rflags' includes P_DQUOTE, don't try to ansiexpand $'...' or
-         locale expand $"..."; consistent with other quoting constructs
-
-                                  11/11
-                                  -----
-doc/{bash.1,bashref.texi}
-       - explicitly note that variables referenced in arithmetic expressions
-         without using `$' evaluate to 0 if they are null or unset
-       - note that a null variable value evaluates to 0 when used in an
-         arithmetic context, like when a variable with the `-i' attribute is
-         assigned a null value
-       - document the ${!prefix@} expansion as equivalent to ${!prefix*}
-
-                                  11/12
-                                  -----
-doc/{bash.1,bashref.texi}
-       - note that the value of an arithmetic expression is as in C
-       - change the wording to note that `arithmetic evaluation' (not
-         arithmetic expansion, which has a different meaning) is performed
-         on the value assigned to a variable whose integer attribute is set
-
-                                  11/13
-                                  -----
-execute_cmd.c
-       - fix execute_disk_command so it calls exit() after printing the error
-         message in a restricted shell context if the shell has already forked
-         (nofork != 0 && there are no pipes)
-
-                                  11/19
-                                  -----
-builtins/type.def
-       - don't report on aliases unless expand_aliases is set and the parser
-         is performing alias expansion; changed tests/type.tests and
-         tests/type.right accordingly
-
-                                  11/25
-                                  -----
-general.c
-       - fix for full pathnames including drive letters on cygwin from
-         Corinna (convert to posix-style paths, which the rest of the
-         code handles much better)
-
-lib/readline/text.c
-       - fixes to overwrite mode from jimmy@is-vn.bg:
-               o in _rl_overwrite_char, do the overwrite mode self-insert
-                 as one group, even when overwriting more than 1 char
-               o in _rl_overwrite_char, do the insert before the delete so
-                 that an undo positions the cursor on the character restored,
-                 not to the right of it
-               o in _rl_overwrite_rubout, don't do rl_insert_char(' ') unless
-                 rl_point < rl_end.  Since overwrite-mode self-insert acts as
-                 in insert-mode when at eol, make rubout behave like
-                 insert-mode rubout
-
-                                  11/30
-                                  -----
-lib/readline/misc.c
-       - call rl_replace_line with `1' as second parameter if we're going to
-         immediately overwrite the undo list
-
-lib/readline/search.c
-       - in make_history_line_current, use _rl_replace_text to make the line
-         replacement an undoable operation.  Affects all non-incremental
-         search functions.
-
-parse.y
-       - make behavior introduced on 11/9 dependent on extended_quote
-         variable, controllable by extquote shopt option.  Default setting is
-         on for backwards compatibility
-
-builtins/shopt.def
-       - new `extquote' option to control extended_quote variable
-
-                                  12/3
-                                  ----
-jobs.c
-       - change message printed when attempting to put a background job in
-         the background with `bg' to include the job id and make the
-         statement declarative
-
-                                  12/10
-                                  -----
-bashhist.h
-       - define explicit flag values for history_control
-
-variables.c
-       - change sv_history_control to use new flag values
-       - change sv_history_control to parse $HISTCONTROL as a colon-separated
-         list of values for the history_control variable
-
-bashhist.c
-       - change check_history_control to use new flag values and restructure
-         to remove case statement
-       - new function hc_erasedups(line); removes all entries matching LINE
-         from the history list
-       - call hc_erasedups() from check_add_history after we've determined
-         that we're saving the line
-
-doc/{bash.1,bashref.texi}
-       - documented new options available for $HISTCONTROL and that it can
-         be a colon-separated list of history control options
-
-                                  12/11
-                                  -----
-subst.c
-       - fix pat_subst() to not increment `e' (pointer to the end of the
-         matched portion of the string) until after we're sure we're going
-         around the loop again; fixes problem with empty replacements for
-         a pattern that doesn't match (bug reported by Don Coleman
-         <don@coleman.org>)
-
-                                  12/17
-                                  -----
-lib/readline/display.c
-       - fixes to multibyte redisplay from jir@yamato.ibm.com (Jiro SEKIBA):
-               o speed up calculation of first difference between old and new
-                 lines in the common case
-               o don't try to see if we're in the middle of a multbyte char
-                 in update_line (we'll see how this one works out)
-
-                                  12/18
-                                  -----
-doc/bashref.texi
-       - make it clear that the `command-list' function definition may be
-         terminated by an ampersand before the closing brace
-
-                                  12/28
-                                  -----
-redir.c
-       - set `expanding_redir' flag when expanding words in a redirection
-
-subst.c
-       - new function, exp_jump_to_top_level(), to do any word expansion
-         cleanup before a call to jump_to_top_level from within that file;
-         sets expanding_redir back to 0 before jump_to_top_level
-
-variables.c
-       - in find_variable(), don't call find_variable_internal with a second
-         parameter of 1 if expanding_redir is non-zero
-       - in find_variable_internal(), don't search the temporary env if
-         subshell_environment includes SUBSHELL_FORK (indicating a simple
-         command) and expanding_redir is non-zero
-
-parse.y
-       - increment line_number when we read a \<newline> pair
-
-array.c
-       - added array_unshift_element and array_shift_element (which just call
-         array_shift and array_rshift, respectively), for bash debugger
-         support
-
-                                1/4/2003
-                                --------
-doc/{bash.1,bashref.texi}
-       - note in the section describing the execution environment passed to
-         children that subshells inherit shell functions marked for export
-       - note in the section describing shell functions the possibility
-         that exported functions may result in two entries in the environment
-         with the same name
-
-parse.y
-       - when pushing an alias expansion onto the pushed_string list, append
-         a space to the expanded definition to make the parser's lookahead
-         work without using the `mustpop' hack in shell_getc
-
-                                   1/8
-                                   ---
-shell.c
-       - change calls to exit() with EX_USAGE as a parameter to use
-         EX_BADUSAGE instead, since EX_USAGE is defined as 258 and is
-         technically out of range
-
-                                  1/14
-                                  ----
-aclocal.m4
-       - check for the termcap functions in libc first:  if we don't have
-         to link in another library, let's not do it
-       - change the test for mbstate_t to use AC_TRY_COMPILE instead of
-         AC_TRY_RUN
-
-doc/{bash.1,bashref.texi}
-       - document that bash turns line editing off if environment variable
-         EMACS is set to `t' when it starts up
-
-doc/bash.1
-       - minor change to give the ftp url for the latest version of bash in
-         the bug reports section
-
-lib/readline/histexpand.c
-       - in get_history_event, cast a couple of `const char *' variables to
-         `char *' in function call parameter lists to avoid compiler warnings
-
-                                  1/21
-                                  ----
-builtins/cd.def
-       - change `cd -' so it prints the current working directory after a
-          successful chdir even when the shell is not interactive
-
-                                  1/31
-                                  ----
-lib/readline/doc/rltech.texinfo
-       - clarified exactly what is meant by the term `application-specific
-         completion function', made its use consistent, and documented
-         what variables are changed before such a function is called
-
-lib/readline/input.c
-       - new function, _rl_pushed_input_available(), returns non-zero if
-         there are characters in the input queue managed by rl_get_char
-         and _rl_unget_char
-
-lib/readline/rlprivate.h
-       - new extern declaration for _rl_pushed_input_available
-
-lib/readline/callback.c
-       - change rl_callback_read_char to check _rl_pushed_input_available
-         and loop if there's something there, so characters don't languish
-         until more keyboard input is read
-
-execute_cmd.c
-       - new variable, last_command_exit_signal, non-zero if
-         last_command_exit_value result from wait_for was result of a signal
-
-nojobs.c
-       - keep track of whether or not a given pid was killed by a signal with
-         a new flag in the pid_list array
-       - new function int find_termsig_by_pid(pid_t pid) to get the
-         terminating signal, if any, for a particular pid
-       - new function int get_termsig(WAIT status) returns the terminating
-         signal corresponding to status
-       - set last_command_exit_signal in wait_for and the various wait_for_xx
-         functions
-
-jobs.c
-       - new functions, process_exit_signal and job_exit_signal, return the
-         signal that killed a given process or job, if a signal caused its
-         death
-       - set last_command_exit_signal in wait_for by calling job_exit_signal
-         or process_exit_signal appropriately
-
-subst.c
-       - don't resend SIGINT to ourselves unless last_command_exit_signal is
-         SIGINT and last_command_exit_value == 128 + SIGINT.  This fixes the
-         $(exit 130) bug reported by Paul Jarc
-
-expr.c
-       - new function, expr_bind_variable, calls bind_int_variable and
-         then stupidly_hack_special_variables.  This fixes the
-         `let OPTIND=1' bug
-
-bashline.c
-       - change history_and_alias_expand_line and shell_expand_line to call
-         history_expand_line_internal so calls to pre_process_line are
-         localized
-       - change history_expand_line_internal and cleanup_expansion_error to
-         temporarily turn off hist_verify before calling pre_process_line
-         to avoid the effects described by teirllm@dms.auburn.edu
-
-parse.y
-       - don't unconditionally turn off PST_ALEXPNEXT in push_string.  This
-         fixes the multiple alias expansion bug reported by Paul Jarc.
-
-lib/readline/vi_mode.c
-       - change rl_vi_subst to push `l' instead of ` ' -- it should be
-         equivalent, but this has been reported to fix a problem in multibyte
-         locales
-
-lib/readline/readline.h
-       - new state flag value RL_STATE_TTYCSAVED, indicates that save_tty_chars
-         has been called.  Since it's only used and visible internally, it's
-         undocumented
-
-lib/readline/rltty.h
-       - changed all of the members of _rl_tty_chars struct to `unsigned char'
-
-lib/readline/rltty.c
-       - set the RL_STATE_TTYCSAVED after save_tty_chars is called
-       - new function, rl_tty_unset_default_bindings(), resets bindings for
-         everything rl_tty_set_default_bindings() messes with back to
-         rl_insert, so rl_tty_set_default_bindings can be called again with
-         possible changes
-       - new function that does the bulk of the work for
-         rltty_set_default_bindings:  _rl_bind_tty_special_chars()
-       - change prepare_terminal_settings so that it can track changes to the
-         terminal special chars made by stty(1):  unset the bindings with
-         rl_tty_unset_default_bindings before calling save_tty_chars, and
-         _rl_tty_set_default_bindings after, with the new values from
-         get_tty_settings().  This implements a long-standing request, most
-         recently made by Tim Waugh of Red Hat.
-
-lib/readline/readline.h
-       - extern declaration for rl_tty_unset_default_bindings()
-
-lib/readline/readline.c
-       - new function, reset_default_bindings, calls
-         rl_tty_unset_default_bindings() to reset the terminal special chars
-         back to rl_insert and then read the new ones
-
-lib/readline/doc/rltech.texinfo
-       - documented rl_tty_unset_default_bindings()
-
-                                   2/1
-                                   ---
-[prayers and condolences to the families of the space shuttle crew members]
-
-aclocal.m4
-       - add checks for mbrtowc and mbrlen in BASH_CHECK_MULTIBYTE
-       - new check, BASH_FUNC_CTYPE_NONASCII, checks whether or not the ctype
-         functions handle non-ascii characters correctly
-
-config.h.in
-       - add HAVE_MBRTOWC and HAVE_MBRLEN
-       - add NO_MULTIBYTE_SUPPORT for new configure argument
-       - add CTYPE_NON_ASCII
-
-config-bot.h, lib/readline/rlmbutil.h
-       - make sure that mbrtowc, mbrlen, and wcwidth are all present before
-         turning on HANDLE_MULTIBYTE
-       - turn off multibyte chars if NO_MULTIBYTE_SUPPORT is defined
-
-configure.in
-       - new argument --enable-multibyte (enabled by default), allows
-         multibyte support to be turned off even on systems that support it
-
-lib/readline/chardefs.h
-       - define NON_NEGATIVE as 1 if CTYPE_NON_ASCII is defined
-
-                                   2/3
-                                   ---
-config.h.in
-       - add HAVE_WCTOMB
-
-aclocal.m4
-       - check for wctomb in BASH_CHECK_MULTIBYTE
-
-                                   2/4
-                                   ---
-lib/readline/vi_mode.c
-       - in _rl_vi_change_mbchar_case, make sure the result from wctomb()
-         is NULL-terminated before trying to insert it with rl_insert_text()
-
-                                   2/5
-                                   ---
-lib/readline/display.c
-       - fix to update_line to avoid problems on systems with multibyte
-         characters when moving between history lines when the new line
-         has more glyphs but fewer bytes (twaugh@redhat.com)
-
-lib/readline/vi_mode.c
-       - use wcrtomb() instead of wctomb() in _rl_vi_change_mbchar_case
-
-pcomplete.c
-       - fix init_itemlist_from_varlist to handle the case where the
-         `varlist' is NULL
-
-doc/{bash.1,bashref.texi}
-       - clarified when a simple command may fail without the shell exiting
-         when -e is set
-
-                                  2/13
-                                  ----
-parse.y
-       - when bash is started with --nolineediting, ignore \[ and \] when
-         decoding the prompt string
-
-subst.c
-       - fix remove_quoted_nulls so that a string with a CTLESC appearing
-         after a CTLNUL (which was removed) does not leave characters in
-         the string inappropriately
-
-                                  2/14
-                                  ----
-builtins/common.h
-       - new flag value for parse_and_execute(): SEVAL_RESETLINE, which
-         allows the caller to specify whether or not the internal idea
-         of the line number should be reset to 1
-
-builtins/evalstring.c
-       - parse_and_execute() now tells push_string to reset the line
-         number only if the SEVAL_RESETLINE flag is set by the caller
-
-                                  2/15
-                                  ----
-builtins/evalfile.c
-       - pass SEVAL_RESETLINE from _evalfile() to parse_and_execute()
-
-subst.c
-       - if the shell is currently interactive, pass SEVAL_RESETLINE to
-         parse_and_execute() when doing command substitution
-
-jobs.c
-       - add SEVAL_RESETLINE to parse_and_execute while running SIGCHLD trap
-
-command.h
-       - add `line' members to case_com, for_com, select_com
-       - rearranged order of members in some of the command structs, so
-         `flags' and `line' are first
-       - added a `source_file' member to the function_def struct; keeps
-         track of where the function was defined
-
-doc/Makefile.in
-       - add some new suffix rules:  .dvi.ps
-
-doc/{bash.1,bashref.texi}
-       - added text to the description of the `trap' builtin tightening up
-         the language describing when the ERR trap will be run
-
-error.c
-       - if $BASH_SOURCE (internally-maintained) exists, use BASH_SOURCE[0]
-         in get_name_for_error if the shell is not interactive
-
-array.h
-       - new convenience defines: array_push and array_pop
-
-variables.c
-       - change get_funcname to return this_shell_function->name only if
-         arrays have not been compiled into the shell
-       - change init_funcname_var to initialize FUNCNAME as an array variable
-         if we have arrays
-       - new function: get_self(SHELL_VAR *self), a degenerate `dynamic_value'
-         function for dynamic variables
-       - new function: init_dynamic_array_var(), a generic dynamic array
-         variable initializer to handle the common case
-       - use init_dynamic_array_var() instead of explicit init_dirstack_var()
-       - use init_dynamic_array_var() instead of explicit init_groups_var()
-       - new dynamic array variables:  BASH_ARGC, BASH_ARGV, BASH_SOURCE,
-         BASH_LINENO, initialized with init_dynamic_array_var
-
-shell.c
-       - initialize BASH_LINENO, BASH_SOURCE, FUNCNAME in open_shell_script
-
-{execute_cmd,trap}.c
-       - take out trap_line_number, since parse_and_execute doesn't reset the
-         line number any more when running the trap commands
-
-make_cmd.c
-       - augment make_function_def to get source file name and call
-         bind_function_def to save the entire FUNCTION_DEF
-
-variables.c
-       - new hash table: shell_function_defs, keeps table of shell function
-         definitions including source file and line number info corresponding
-         to shell_functions table
-       - new functions: find_function_def and bind_function_def to manage
-         the shell_function_defs hash table
-       - new function: unbind_function_def to remove a function definition
-         from the shell_function_defs table (right now uncalled)
-
-variables.h
-       - extern declaration for bind_function_def, find_function_def
-       - new extern declaration for unbind_function_def
-
-execute_cmd.c
-       - in function prologue and epilogue, push and pop FUNCNAME,
-         BASH_SOURCE, and BASH_LINENO information
-
-dispose_cmd.c
-       - broke the code that disposes a FUNCTION_DEF out into two new
-         functions: dispose_function_def and dispose_function_def_contents
-
-dispose_cmd.h
-       - new extern declarations for dispose_function_def_contents and 
-         dispose_function_def
-
-copy_cmd.c
-       - move body of copy_function_def (other than allocating a new
-         FUNCTION_DEF) to copy_function_def_contents
-       - make sure to copy the new source_file member of a function_def in
-         copy_function_def_contents
-       - copy_function_def is no longer static, copy_function_def_contents
-         is not either
-
-command.h
-       - new extern declaration for copy_function_def_contents and
-         copy_function_def
-
-parse.y
-       - keep a stack of line numbers where case, select, and for commands
-         start, with a maximum nesting level of 128; increment when reading
-         word after `for', `select' or `case' in read_token_word; decrement
-         in grammar actions after parsing a complete for, arith_for, select,
-         or case command
-       - create for, case, arith_for, and select commands with an extra
-         line number (word_lineno[word_top]) argument
-
-make_cmd.c
-       - make_for_or_select, make_for_command, make_case_command, and
-         make_select_command all take an extra `line_number' argument
-
-make_cmd.h
-       - corresponding changes to extern declarations for those functions
-
-                                  2/16
-                                  ----
-{execute_cmd,shell,variables}.c
-       - follow each call to remember_args with a call to push_args or
-         pop_args to manage the BASH_ARGV and BASH_ARGC arrays.  Only set
-         when the shell is started to run shell script or runs a shell
-         function.  Doesn't handle `set' or `shift' yet, nor `source'.
-
-execute_cmd.c
-       - keep track of the level of subshells with a new variable, manipulated
-         in execute_in_subshell
-       - set currently_executing_command in execute_command_internal(),
-         even if we're running a trap
-       - better line number management when executing simple commands,
-         conditional commands, for commands in execute_command_internal()
-         and the various functions that implement the commands
-         (execute_cond_command, execute_for_command, execute_etc.)
-
-variables.c
-       - new dynamic variable BASH_SUBSHELL, with new get_subshell and
-         assign_subshell functions to manipulate it
-       - new functions push_args (WORD_LIST *list) and pop_args (void) to
-         manage the BASH_ARGC and BASH_ARGV dynamic array variables
-
-variables.h
-       - new extern declarations for push_args and pop_args
-
-builtins/evalfile.c
-       - in _evalfile, do appropriate things to the FUNCNAME, BASH_ARGV,
-         BASH_ARGC, BASH_SOURCE, and BASH_LINENO variables
-
-support/mksignames.c
-       - add another fake signal for `trap'; make NSIG+2 == `RETURN'
-
-trap.c
-       - _run_trap_internal now returns an int:  the exit value of the command
-         run as the result of the trap
-       - run_debug_trap now returns an int: the exit value of the command
-         run as the result of the trap
-       - RETURN is a new special trap
-       - new function: set_return_trap(char *command) interface for the rest
-         of the shell, like set_{debug,error}_trap
-       - new function: run_return_trap()
-       - command substitution and other child processes don't inherit the
-         return trap
-
-trap.h
-       - new extern declaration for set_return_trap() and run_return_trap
-       - new defines for RETURN_TRAP; increment BASH_NSIG
-       - change extern declaration for run_debug_trap() since it now returns
-         an int
-
-shell.c
-       - new invocation long option:  --debugger, turns on debugging and
-         sets internal `debugging_mode' variable
-
-execute_cmd.c
-       - new code to save return trap when executing a shell function, so
-         shell functions don't inherit it
-       - run debug trap before binding the variable and running the action
-         list in a `for' command
-       - run debug trap before binding the selection variable and running
-         the query in a `select' command
-       - run debug trap before running matcher in a `case' command
-
-builtins/set.def
-       - new `set -o functrace' (set -T), causes DEBUG trap to be inherited
-         by shell functions
-       - new `set -o errtrace' (set -E), causes ERR trap to be inherited
-         by shell functions
-
-flags.c
-       - new flags -E and -T, control error_trace_mode and
-         function_trace_mode respectively
-
-flags.h
-       - new extern declarations for error_trace_mode and function_trace_mode
-
-                                  2/17
-                                  ----
-doc/bashref.texi
-       - changed the `dircategory' as per Karl Berry's suggestion
-
-doc/texinfo.tex
-       - update to version of 2003/02/04 from texinfo.org
-
-support/texi2dvi
-       - update to version 1.14 from texinfo-4.5 distribution
-
-                                  2/20
-                                  ----
-support/config.{guess,sub}
-       - update to versions of 2002/11/30
-
-lib/readline/doc/manvers.texinfo
-       - renamed to version.texi to match other GNU software
-       - UPDATE-MONTH variable is now `UPDATED-MONTH'
-
-lib/readline/doc/{hist,rlman,rluserman}.texinfo
-       - include version.texi
-
-doc/version.texi
-       - new file, with standard stuff matching other GNU distributions
-
-{doc,lib/readline/doc}/Makefile.in
-       - include right stuff for `version.texi'
-
-lib/readline/doc/{rluserman,rlman,hist}.texinfo
-       - use @copying and @insertcopying and @ifnottex instead of @ifinfo
-       - add FDL as an appendix entitled `Copying This Manual'
-
-lib/readline/doc/{rltech,rluser,hstech,hsuser}.texi
-       - changed the suffix from `texinfo' to `texi'
-
-lib/readline/doc/{rlman,rluserman}.texinfo, doc/bashref.texi
-       - include rltech.texi,rluser.texi,hstech.texi, and hsuser.texi
-
-lib/readline/doc/Makefile.in,doc/Makefile.in
-       - made appropriate changes for {{rl,hs}tech,{rl,hs}user}.texi
-
-lib/readline/doc/{rlman,rluserman}.texinfo
-       - changed the suffix from `texinfo' to `texi'
-
-lib/readline/doc/hist.texinfo
-       - renamed to history.texi
-
-                                  2/25
-                                  ----
-pathnames.h.in
-       - moved pathnames.h here so value of DEBUGGER_START_FILE can be
-         substituted by configure
-
-aclocal.m4
-       - added AM_PATH_LISPDIR for debugger
-
-configure.in
-       - added some variables: `bashvers', `relstatus' to use info in more
-         than one place
-       - call AM_PATH_LISPDIR
-       - new option:  --enable-debugger, sets DEBUGGER cpp option
-       - new option with AC_ARG_VAR:  DEBUGGER_START_FILE
-       - make `pathnames.h' a file generated by configure
-
-Makefile.in
-       - add rule to create pathnames.h
-
-builtins/declare.def
-       - added extra line number and source file name to `declare -F' output
-         if `--debugger' is used at startup
-
-builtins/evalfile.c
-       - call run_return_trap from source_file before returning the result
-         from _evalfile()
-
-execute_cmd.c
-       - call run_return_trap in execute_function before restoring the old
-         context
-
-builtins/source.def
-       - arrange to save and restore DEBUG traps when sourcing files if
-         function_trace_mode (set -o functrace) is not set
-
-print_cmd.c
-       - broke print_for_command, print_select_command, print_case_command
-         into two functions each:  one to print the `header' and one for
-         the body
-       - print_cond_command is no longer static
-       - print_arith_command now takes a WORD_LIST *, since it doesn't
-         actually do anything with the ARITH_COM it's passed except print
-         the enclosed WORD_LIST
-       - print_arith_command is no longer static
-
-externs.h
-       - extern declarations for print_{for,select,case}_command_head,
-         print_cond_command, print_arith_command
-
-{.,builtins,lib/sh}/Makefile.in
-       - corrected dependencies on pathnames.h, since it's now created in
-         the build directory
-
-                                   3/5
-                                   ---
-lib/glob/glob.c
-       - handle alloca() failing (it's supposed to return NULL)
-       - use malloc() (with its attendent bookkeeping) instead of alloca()
-         in glob_filename()
-
-subst.c
-       - check whether shell_glob_filename returns NULL in
-         glob_expand_word_list
-       - change parameter_brace_expand_rhs to handle cases like
-         ${a[2]:=value} by properly creating the array element instead of a
-         variable named `a[2]' (reported by <opengeometry@yahoo.ca>)
-
-variables.c
-       - change bind_int_variable to use valid_array_reference instead
-         of looking for `[' 
-
-lib/readline/vi_mode.c
-       - check for `a' in _rl_vi_done_inserting so the text inserted by an
-         `a' command can be reinserted with a `.'
-
-lib/readline/readline.c
-       - when entering vi insertion mode in readline_internal_setup(), make
-         sure that _rl_vi_last_key_before_insert is set to `i' so that undo
-         groups and redo work better (reported by <opengeometry@yahoo.ca>)
-
-lib/glob/sm_loop.c
-       - handle ?(...) in a pattern immediately following a `*', instead of
-         ignoring the `(' and treating the `?' as a single-char match, as
-         long as FNM_EXTFLAG is set (reported by <anderson110@poptop.llnl.gov>)
-
-aclocal.m4
-       - new test for presence of struct timezone, BASH_STRUCT_TIMEZONE
-
-config.h.in
-       - add HAVE_STRUCT_TIMEZONE
-
-configure.in
-       - call BASH_STRUCT_TIMEZONE
-
-execute_cmd.c
-       - don't try to use `struct timezone' in calls to gettimeofday unless
-         HAVE_STRUCT_TIMEZONE is defined; use (void *)NULL otherwise
-
-                                  3/20
-                                  ----
-execute_cmd.c
-       - new variable, the_printed_command_except_trap, saves the command
-         being executed before a trap is executed, for the debugger
-
-trap.c
-       - if in debugging mode, let command substitutions and other child
-         processes inherit the DEBUG and ERR traps if the `functrace'
-         (which is really a bad name, given this semantic) or `errtrace'
-         options, respectively, have been set
-
-shell.c
-       - local_pending_command renamed to command_execution_string; no longer
-         static
-
-variables.c
-       - new dynamic variable, BASH_COMMAND, set to the command string
-         currently executing, or the one that caused a trap to execute
-         (mapped to the_printed_command_except_trap)
-       - new variable, BASH_EXECUTION_STRING, set to the argument to the
-         -c invocation option, if the shell was started that way
-
-                                  3/22
-                                  ----
-execute_cmd.c
-       - changed execute_for_command, eval_arith_for_expr,
-         execute_select_command, execute_arith_command, execute_cond_command,
-         execute_simple_command to implement new DEBUG trap semantics
-         for the debugger: if the DEBUG trap commands return a non-zero
-         status and debugging_mode is non-zero, we skip the command to be
-         executed
-
-trap.c
-       - change run_debug_trap for the debugger: if we're in the debugger
-         and the DEBUG trap returns 2 while we're in a function or sourced
-         script, we force a `return'
-
-shell.c
-       - new function, start_debugger(), that sources the debugger start file
-         and turns the debugger on
-
-builtins/shopt.def
-       - new settable option, `extdebug', turns on debugging_mode, as if
-         --debugger had been supplied at invocation (but does not source
-         debugger startup file)
-
-trap.c
-       - make sure that run_exit_trap arranges for `returns' to come back
-         there, too, so a `return' executed by an `exit' invoked within a
-         shell function behaves correctly
-
-support/shobj-conf
-       - change darwin/MacOS X stanza based on advice from mac os x developers
-
-lib/sh/mailstat.c
-       - set the atime member of the synthesized stat struct to 0 if `cur/'
-         is empty, rather than leaving it undefined
-
-                                  3/24
-                                  ----
-builtins/caller.def
-       - new builtin to provide a call stack for the debugger
-
-builtins/evalfile.c
-       - added a second `flags' argument to source_file()
-       - new flag value for flags argument to _evalfile():  FEVAL_NOPUSHARGS.
-         If included in flags arg, it means to not manipulate the BASH_ARGV
-         and BASH_ARGC arrays
-
-builtins/common.h
-       - change prototype for source_file()
-
-builtins/source.def
-       - add flag value to call to source_file():  set to 1 if we replaced
-         the positional parameters
-       - add call to push_args if additional arguments supplied to the
-         source builtin
-       - add call to pop_args in maybe_pop_dollar_vars
-
-execute_cmd.c
-       - run the debug trap in execute_function so the debugger can stop
-         before the first command in a function body is executed
-       - modify subshell_level before executing a builtin or function in a
-         subshell
-       - print `for', `select', `case' command heads when set -x is enabled
-
-print_cmd.c
-       - `xtrace_print_word_list' now takes an additional flags argument,
-         which, if non-zero, says to print indirection_level_string()
-       - new functions to print for, select, and case command heads when
-         set -x is enabled
-       - add spaces after `((' and before `))' in xtrace_print_arith_command
-
-externs.h
-       - changed extern declaration for xtrace_print_word_list
-       - new declarations for xtrace_print_{for,case,select}_command_head()
-
-subst.c
-       - modify subshell_level when executing a command substitution
-
-                                  3/25
-                                  ----
-execute_cmd.c
-       - use `line_number' in executing_line_number instead of looking into
-         the current command if it's a simple command; rearrange code to
-         make this simpler to compile in and out
-       - need to save and restore value of currently_executing_command around
-         calls to debug trap and return trap in execute_function
-
-make_cmd.c
-       - make sure make_arith_for_command() disposes the WORD_LIST * it is
-         passed, since nothing else does and it's not used directly
-
-                                  3/28
-                                  ----
-Makefile.in    
-       - fixed dependencies for `error.o' on shell.h and version.h -- makes
-         parallel makes (gmake -j 4) work correctly
-
-doc/{bash.1,bashref.texi}
-       - documented all new features added to support the debugger
-
-                                   4/1
-                                   ---
-lib/sh/shquote.c
-       - make sure CTLESC and CTLNUL characters are escaped with CTLESC
-         by sh_double_quote, sh_backslash_quote and
-         sh_backslash_quote_for_double_quotes
-         Fixes vulnerability reported by svdb@stack.nl
-
-shell.h
-       - new `pipestatus' member of sh_parser_state_t, to save and restore
-         $PIPESTATUS
-
-parse.y
-       - changes to save_parser_state and restore_parser_state to save and
-         restore $PIPESTATUS
-
-builtins/read.def
-       - add a call to word_list_remove_quoted_nulls before assigning the
-         word list read from standard input to an array variable.  Fixes
-         bug reported by holzhey@ppprs1.phy.tu-dresden.de
-
-                                   4/3
-                                   ---
-execute_cmd.c
-       - in execute_null_command, if redirections are supplied, make sure
-         things like 3</etc/passwd are undone immediately, since they're
-         being done in the current shell
-       - functions now inherit the RETURN trap only if function tracing is
-         on for that function or globally
-
-lib/readline/misc.c
-       - in rl_replace_from_history, don't force rl_replace_line to clear
-         the undo_list, since it might point directly at an undo list
-         from a history entry (to which we have no handle)
-
-                                   4/4
-                                   ---
-trap.c
-       - initialize RETURN_TRAP stuff appropriately in initialize_traps()
-       - let command substitutions inherit the RETURN trap if we're in
-         the debugger and function tracing has been enabled
-
-redir.c
-       - do_redirections and do_redirection_internal now take a single
-         flags argument instead of multiple boolean flags
-
-redir.h
-       - new #defines for flags argument to do_redirection{s,_internal}
-
-execute_cmd.c
-       - change all calls to do_redirection to use new flag values
-
-parse.y
-       - new function, free_pushed_string_input(), an external interface to
-         clear the pushed_string list (alias expansion)
-       - new define SHOULD_PROMPT to say when it's OK to call prompt_again
-         (if the shell is currently interactive and is reading input from
-         the terminal or readline)
-       - make sure shell_getc and read_secondary_line only call prompt_again
-         if SHOULD_PROMPT evaluates to true
-       - prompt_again shouldn't do anything if the shell is currently in the
-         middle of expanding a multiline alias, since we won't be printing a
-         prompt anyway
-
-externs.h
-       - new extern declaration for free_pushed_string_input()
-
-execute_cmd.c
-       - command_substitute and process_substitute now call
-         free_pushed_string_input because they shouldn't deal with any
-         partial alias expansion the parent shell may have started
-
-                                   4/5
-                                   ---
-braces.c
-       - added {x..y} brace expansion, shorthand for {x,x+1,x+2,...,y}:
-         x, y can be integers or single characters; the sequence can be
-         ascending or descending; increment is always 1.  Beware that
-         something like {a..A} can lead to non-letters.
-
-                                   4/7
-                                   ---
-subst.c
-       - change extract_delimited_string and extract_dollar_brace_string to
-         return NULL on an expansion error when no_longjmp_on_fatal_error
-         is set, so the calling functions don't assume that the expansion
-         was successful (primarily the prompt expansion and completion code)
-
-doc/{bash.1,bashref.texi}
-       - documented new sequence generation feature of brace expansion
-
-                                   4/8
-                                   ---
-lib/sh/strstr.c
-       - replacement for strstr(3), in case the C library doesn't provide it
-
-configure.in
-       - check for strstr, add to LIBOBJS if not found
-
-array.c
-       - array_walk now takes a third void * argument; it's passed to `func'
-         as its second argument
-
-array.h
-       - change sh_ae_map_func_t prototype to add void * second argument
-
-                                  4/10
-                                  ----
-array.c
-       - new function: array_keys_to_word_list, returns a list of indices for
-         a given array
-
-array.h
-       - new extern declaration for array_keys_to_word_list
-
-arrayfunc.c
-3      - new function: char *array_keys(), returns a string with keys for a
-         given array, with the appropriate quoting
-
-arrayfunc.h
-       - new extern declaration for array_keys
-
-subst.c
-       - code to implement ksh93-like ${!array[@]} expansion (array[*] works,
-         too), which expands to all the keys (indices) of ARRAY
-
-doc/{bash.1,bashref.texi}
-       - documented new ${!array[@]} expansion
-
-                                  4/19
-                                  ----
-builtins/setattr.def
-       - remove any mention of the `-n' option from readonly builtin's short
-         and long documentation
-
-pcomplib.c
-       - fix progcomp_insert to increase the refcount on the `cs' argument
-         before calling hash_insert -- fixes the problem of multiple calls
-         to progcomp_insert with the same compspec
-
-doc/bash.1
-       - add mention of characters that inhibit history expansion when found
-         immediately following an unquoted `!'
-
-bashline.c
-       - convert the code conditionally compiled in by the NO_FORCE_FIGNORE
-         #define to something runtime-tunable with the `force_fignore'
-         variable (opposite sense).  force_fignore is 1 by default
-
-builtins/shopt.def
-       - new tunable `shopt' option: `force_fignore', controls force_fignore
-         variable and behavior of FIGNORE handling
-
-lib/readline/complete.c
-       - new variable, _rl_complete_show_unmodified, causes completer to list
-         possible completions if more than one completion and partial
-         completion cannot be done
-       - new value for what_to_do argument to rl_complete_internal, `@',
-         indicating that we want the show-unmodified behavior
-       - change rl_completion_type to return `@' when appropriate
-
-lib/readline/bind.c
-       - new bindable variable, show-all-if-unmodified, which controls value
-         of _rl_complete_show_unmodified
-
-lib/readline/rlprivate.h
-       - extern declaration for _rl_complete_show_unmodified
-
-lib/readline/doc/rluser.texi
-       - documented show-all-if-unmodified
-
-lib/readline/doc/rltech.texi
-       - documented new `@' value for second argument to rl_complete_internal
-       - documented new return value from rl_completion_type
-
-                                  4/22
-                                  ----
-lib/readline/signals.c
-       - in rl_set_signal, set sa_flags to SA_RESTART for SIGWINCH, if we
-         have POSIX signals -- this is what most applications expect, and
-         they're not prepared to deal with EINTR
-
-                                  4/25
-                                  ----
-bashline.c
-       - take out attempts to suppress readline filename completion when
-         attempting command completion and there is a directory with the
-         same name in the current directory.  #if 0'd for now; maybe make
-         it conditional later
-
-error.c
-       - new variable, gnu_error_format, causes non-interactive errors with
-         line numbers to be printed in the `gnu style' (filename:lineno:)
-         instead of the `shell style' (filename: line lineno:) by
-         error_prolog and parser_error
-
-version.h,support/mkversion
-       - don't put extern function declarations into created version.h any
-         more
-
-version.c,externs.h
-       - add extern declarations for show_shell_version() and
-         shell_version_string(), since they're no longer in version.h
-         (this backs out change from 9/10/2001)
-
-shell.h
-       - don't include version.h
-
-Makefile.in
-       - remove unneeded dependencies on version.h -- only version.o
-         needs it now
-
-builtins/shopt.def
-       - new option `gnu_errfmt', changes error messages with line numbers
-         to use the `standard' gnu format
-
-pcomplete.h
-       - new COPT_BASHDEFAULT and COPT_PLUSDIRS defines
-
-bashline.c
-       - if the COPT_BASHDEFAULT flag is set, try the rest of the bash
-         default completions if a compspec with that flag set generates
-         no matches
-       - broke bash completions out into separate function:
-         bash_default_completion(const char *text, int start, int end,
-         int qc, int in_command_position); change attempt_shell_completion
-         to call it
-
-bashline.h
-       - new extern declaration for bash_default_completion
-
-builtins/complete.def
-       - added code to compgen to call bash_default_completion if a compspec
-         with the COPT_BASHDEFAULT flag set generates no matches from the
-         programmable completion options
-
-doc/{bash.1,bashref.texi}
-       - document new `gnu_errfmt' shopt option
-
-doc/bash.1,lib/readline/doc/rluser.texi
-       - document new `-o bashdefault' option to complete and compgen
-
-                                  4/26
-                                  ----
-pcomplete.c
-       - if a compspec has the COPT_PLUSDIRS flag set, generate any
-         directory name completions and add them to the set of possible
-         completions as the last thing in gen_compspec_completions
-
-builtins/complete.def
-       - add new `-o plusdirs' option to complete and compgen; means to
-         do directory name completion in addition to other actions
-         specified by the compspec, and do it last
-
-                                  5/12
-                                  ----
-copy_cmd.c
-       - fix copy_{for,select,case}_command to copy the line member
-
-                                  5/13
-                                  ----
-lib/readline/rlmbutil.h,include/shmbutil.h
-       - new #define MB_INVALIDCH, evaluates to true if return value from
-         mbrtowc or mbrlen denotes an invalid multibyte character
-       - new #define MB_NULLWCH, evaluates to true if return value from
-         mbrtowc or mbrlen denotes a null multibyte character
-
-lib/readline/complete.c
-       - new function, fnwidth(), returns printed length of a filename,
-         correctly handling multibyte characters
-       - new function, fnprint(), displays a filename on rl_outstream
-         correctly handling multibyte characters
-       - use fnwidth() instead of simple strlen() for length calculations
-         in display_matches
-
-lib/readline/{display,mbutil}.c
-       - use MB_INVALIDCH and MB_NULLWCH as appropriate
-
-                                  5/21
-                                  ----
-configure.in
-       - turn off the builtin malloc on GNU/FreeBSD systems (GNU userland,
-         FreeBSD kernel)
-
-                                  5/24
-                                  ----
-pcomplete.c
-       - in programmable_completions, copy the compspec before using it to
-         generate the possible completions, allowing the completion for the
-         command to be changed by the compspec itself without causing a
-         core dump because the shell frees freed memory (reported by
-         marcus.harnish@gmx.net)
-
-parse.y
-       - in shell_getc, don't call notify_and_cleanup in an interactive shell
-         unless the shell is currently reading from the terminal and would
-         print a prompt.  This fixes programmable completions printing job
-         notifications (reported by r.d.green@lancaster.ac.uk)
-       - use SHOULD_PROMPT macro consistently
-
-shell.c
-       - use get_string_value instead of getenv when looking up $TERM and
-         $EMACS to see whether the shell is running under emacs
-       - check for `TERM=dumb' as well as `EMACS=t' to decide whether or
-         not to turn off command-line editing in emacs shell windows
-         (reported by jik@kamens.brookline.ma.us)
-
-                                  5/28
-                                  ----
-expr.c
-       - save and restore the `evalbuf' context, since evalexp can be
-         called recursively (e.g. a[b[c]])
-
-                                  5/29
-                                  ----
-builtins/common.c
-       - in display_signal_list, when displaying for `kill -l' in posix mode,
-         display signal names without the `SIG' prefix
-
-doc/bashref.texi
-       - documented changed to posix mode behavior of kill -l
-
-builtins/kill.def
-       - changed the error message printed when argument is not a pid or
-         job id
-
-doc/{bash.1,bashref.texi}
-       - fixed a slight inconsistency in the different sections describing
-         the `promptvars' option
-
-doc/Makefile.in
-       - new rule to create `bash.info' from `bashref.info' by running sed
-         to change the internal references.  This makes the installed
-         bash.info work right
-       - make the install target install bash.info after it's been modified
-         from bashref.info
-
-                                  5/30
-                                  ----
-builtins/cd.def
-       - after testing with ferror(), call clearerr if ferror() evaluates
-         to true
-
-execute_cmd.c
-       - call clearerr(stdout) after executing a builtin or function,
-         before restoring any redirections
-
-bashhist.c
-       - initialize history_comment_char in bash_history_initialize
-
-builtins/alias.def
-       - if posix mode is enabled, and the `-p' option is not supplied, don't
-         list aliases with a preceding `alias ', as POSIX.2 specifies
-
-doc/bashref.texi
-       - note new posix mode behavior of displaying alias names and values
-       - note new posix mode behavior of trap builtin not checking first
-         argument to be a possible signal specification
-       - note new posix mode behavior of `kill' not accepting signal names
-         with a leading `SIG'
-
-include/stdc.h,lib/readline/rlstdc.h
-       - don't check the __STRICT_ANSI__ define when deciding whether or not
-         to #undef __attribute__
-
-trap.[ch]
-       - decode_signal and signal_object_p take an additional flags arg to
-         satisfy POSIX.2 signal name translation requirements
-       - change decode_signal to honor the new DSIG_NOCASE (match case-
-         insensitively) and DSIG_SIGPREFIX (allow signal specifications
-         with the `SIG' prefix) flags
-
-builtins/{common.c,{trap,kill}.def}
-       - change calls to decode_signal to add the new argument with
-         appropriate values.  For kill, POSIX.2 says case-insensitive without
-         the `SIG' prefix.  For trap, POSIX.2 says applications may decode
-         case-insensitively and with the SIG prefix
-
-builtins/trap.def
-       - when in posix mode, don't check for the first argument being a
-         possible signal spec and revert the signal handling to the
-         original disposition
-
-                                   6/1
-                                   ---
-shell.h
-       - new MATCH_STARSUB define, to tell the callers of the various pattern
-         substitution and removal functions that call string_list to treat
-         "$*" and "${array[*]}" appropriately
-subst.c
-       - if get_var_and_type encounters an array variable subscripted by `*'
-         or `$*', return VT_STARSUB or'd into the variable type value
-       - callers of get_var_and_type check for VT_STARSUB in the returned type
-         this will fix problems with ${*...} not being separated with the
-         first character of $IFS when double-quoted
-       - in parameter_brace_patsub, set MATCH_STARSUB if VT_STARSUB is set by
-         get_var_and_type
-       - change pos_params_pat_subst to call string_list_dollar_star if
-         the match flags include MATCH_STARSUB
-       - change parameter_brace_substring to call array_subrange with an
-         additional argument indicating the character indexing the array
-
-array.c
-       - change array_patsub to join the modified array elements with the
-         first character of $IFS if MATCH_STARSUB is set in the match flags
-         passed in
-       - array_subrange now takes an additional argument indicating the
-         index type -- used to separate with first char of $IFS if the
-         index char is `*' and the expression is double-quoted
-
-array.h
-       - change prototype declaration of array_subrange to add additional arg
-
-                                   6/2
-                                   ---
-doc/FAQ
-       - merged in some updates about POSIX from Andrew Josey
-
-                                   6/3
-                                   ---
-bashjmp.h
-       - new value for jump_to_top_level:  ERREXIT
-
-{eval,shell,subst,trap}.c,builtins/evalstring.c
-       - ERREXIT is (for now) equivalent to EXITPROG as a value from
-         jump_to_top_level
-
-                                   6/9
-                                   ---
-doc/bash.1,lib/readline/doc/readline.3
-       - documented new `show-all-if-unmodified' readline variable
-
-                                  6/14
-                                  ----
-lib/readline/history.c
-       - new function, histdata_t free_history_entry (HIST_ENTRY *h),
-         frees H and its line, returning the application-specific data
-       - use free_history_entry where appropriate
-
-lib/readline/history.h
-       - extern declaration for free_history_entry()
-
-lib/readline/doc/{history.3,hstech.texi}
-       - document free_history_entry
-
-                                  6/16
-                                  ----
-lib/readline/readline.[ch]
-       - changed varions defines for readline/history library versions to 5.0
-
-subst.c
-       - pass information about whether or not an indirectly-expanded variable
-         contains ${array[@]}, ${array[*]}, $@, or $*
-       - new function, chk_atstar, performs checks for ${array[@]},
-         ${array[*]}, $@, or $* for the parameter_brace_expand* functions and
-         sets flags (passed as args) to the results
-       - call chk_atstar from parameter_brace_expand_indir and
-         parameter_brace_expand
-
-                                  6/28
-                                  ----
-doc/{bash.1,bashref.texi}
-       - clarified that (...) commands are executed in a subshell environment
-
-                                  6/30
-                                  ----
-lib/readline/bind.c
-       - fix a problem with parsing nested if statements in inputrc files
-         (fix from dimakar@yahoo.com)
-
-                                   7/3
-                                   ---
-{jobs,nojobs}.c
-       - fix places that use the return value from strsignal() to check
-         for NULL return values using a new function, j_strsignal()
-
-builtins/kill.def
-       - removed JOB_CONTROL restriction; kill is now available as a builtin
-         when the shell is built without job control
-
-                                  7/10
-                                  ----
-jobs.c
-       - some systems have WIFCONTINUED but not WCONTINUED; separate the
-         #defines
-
-                                  7/14
-                                  ----
-lib/readline/history.h
-       - new `timestamp' member of a HIST_ENTRY
-       - extern declarations for add_history_time and history_get_time
-
-lib/readline/doc/{history.3,hstech.texi}
-       - document add_history_time and history_get_time
-
-lib/readline/history.c
-       - implementations of history_get_time and add_history_time
-       - change add_history to initialize the timestamp information
-       - change free_history_entry to free the timestamp
-       - change replace_history_entry to duplicate the timestamp
-       - change history_total_bytes to add the memory taken by the time
-         stamps
-
-bashhist.c,builtins/history.def
-       - use free_history_entry where appropriate
-
-lib/readline/histfile.c
-       - changes to read_history_range to deal with new history file format
-         including timestamps
-       - changes to history_do_write to write out the timestamp information
-       - changes to history_truncate_file to understand the timestamp
-         information
-
-                                  7/22
-                                  ----
-doc/{bash.1,bashref.texi}
-       - fixed function declaration documentation to specify that any compound
-         command may be used as the function body, not just a group command
-
-                                  7/23
-                                  ----
-lib/readline/histfile.c
-       - don't allocate space for null timestamps in history_do_write, and
-         don't write out null timestamp entries
-
-parse.y
-       - fix CHECK_FOR_RESERVED_WORD to call time_command_acceptable() and
-         return TIME if the token is "time" and `time' is legal in that
-         context
-
-                                  7/29
-                                  ----
-lib/sh/fmtulong.c
-       - include <inttypes.h> for possible definitions of intmax_t, uintmax_t
-         (reported by ro@techfak.uni-bielefeld.de)
-
-                                  7/30
-                                  ----
-parse.y
-       - remove checking for `time' reserved word from special_case_tokens();
-         use regular mechanism in CHECK_FOR_RESERVED_WORD.  This allows `time'
-         to be aliased.  (Reported by Glenn Morris
-         <gmorris+gmane@ast.cam.ac.uk>)
-
-                                  7/31
-                                  ----
-lib/readline/history.h
-       - extern declaration for history_write_timestamps
-
-lib/readline/histfile.c
-       - don't write timestamps to the history file in history_do_write
-         unless history_write_timestamps is set to non-zero by the application
-         (set to 0 by default)
-
-lib/readline/doc/{hstech.texi,history.3}
-       - document history_write_timestamps
-
-variables.[ch]
-       - new special variable function, HISTTIMEFORMAT; special function
-         sets history_write_timestamps to 1 if HISTTIMEFORMAT is set
-
-                                   8/4
-                                   ---
-builtins/history.def
-       - added support for printing time stamps based on the value of the
-         HISTTIMEFORMAT variable when displaying history entries
-
-doc/{bash.1,bashref.texi}
-       - added description of new HISTTIMEFORMAT variable
-
-                                   8/5
-                                   ---
-config-top.h
-       - remove /usr/ucb from any default paths
-
-mailcheck.c
-       - make_default_mailpath now returns NULL if DEFAULT_MAIL_DIRECTORY
-         is not defined
-       - remember_mail_dates now returns if make_default_mailpath returns
-         NULL
-
-config-bot.h
-       - reorganized the sections; provide an explicit placeholder for
-         builders to #undef any feature defines they don't want that
-         configure creates for them, like the default mail path
-
-                                   8/9
-                                   ---
-config.h.in
-       - add HAVE_REGEX_H, HAVE_REGCOMP, HAVE_REGEXEC for detection of POSIX.2
-         regular expression functions
-       - add COND_REGEXP define to enable and disable the =~ operator for
-         matching extended regular expressions in [[...]] commands
-
-configure.in
-       - new option, --enable-cond-regexp, enables =~ and code to perform
-         regular expression matching in [[...]]
-
-config-bot.h
-       - undef COND_REGEXP if the OS doesn't provide posix regexp support
-
-doc/bashref.texi
-       - documnent new --enable-cond-regexp option to configure
-
-                                  8/18
-                                  ----
-support/shobj-conf
-       - support for shared objects on FreeBSD-gnu (from Robert Millan)
-
-                                  8/25
-                                  ----
-lib/sh/shmatch.c
-       - new file, shell interface to posix extended regular expression
-         matching
-
-externs.h
-       - new extern declarations for functions in shmatch.c
-
-execute_cmd.c
-       - incorporate code into execute_cond_node that does extended regular
-         expression matching for the =~ operator
-
-parse.y
-       - add `=~' to the list of binary operators accepted by the conditional
-         command parser
-
-doc/{bash.1,bashref.texi}
-       - documented =~ conditional binary operator and the BASH_REMATCH
-         variable
-
-                                  8/27
-                                  ----
-lib/readline/display.c
-       - take multibyte characters into account when looking for quoted
-         substrings on which to do completion (fix from jir@yamato.ibm.com)
-
-lib/readline/util.c
-       - fix typo in _rl_strpbrk
-
-lib/readline/rldefs.h
-       - use function version of _rl_strpbrk in multibyte locales, because
-         it understands to skip over special characters in multibyte
-         character sequences
-
-                                  8/28
-                                  ----
-jobs.c
-       - in wait_for, check for window size changes if a job that exits due
-         to a signal or is stopped was in the foreground, not just if it's
-         the current job
-
-                                  9/10
-                                  ----
-support/config.{guess,sub}
-       - add support to recognize FreeBSD running on the amd64
-
-subst.c
-       - if the new `fail_glob_expansion' variable is non-zero, globbing that
-         fails to match anything causes an expansion error
-
-builtins/shopt.def
-       - new `failglob' expansion:  if enabled, failed globs cause an error
-
-test/shopt.right
-       - take `failglob' into account
-
-doc/{bash.1,bashref.texi}
-       - documented new `failglob' option and its effects
-
-                                  9/12
-                                  ----
-findcmd.c
-       - fix file_status to treat the mode bits and uid right -- in particular,
-         don't assume the `other' bits always apply.  Bug reported by
-         <moseley@hank.org>; fix inspired by <carlo@alinoe.com>
-
-command.h
-       - new word flag: W_NOCOMSUB, meaning to not perform command
-         substitution on a word
-
-subst.c
-       - new flag for param_expand: PF_NOCOMSUB.  If non-zero, $(...)
-         command substitutions are not expanded, but returned unchanged
-       - change expand_word_internal to pass through `` command substitutions
-         unchanged if (word->flags & W_NOCOMSUB) != 0
-       - change expand_word_internal to pass PF_NOCOMSUB to param_expand
-         if (word->flags & W_NOCOMSUB) != 0
-
-builtins/shopt.def
-       - rename set_interactive_comments to set_shellopts_after_change, which
-         more accurately reflects its purpose
-
-syntax.h
-       - add a define for isblank() in case the system doesn't provide one
-
-jobs.c
-       - change raw_job_exit_status to understand `pipefail', using the new
-         `pipefail_opt' variable
-
-flags.[ch]
-       - declare pipefail_opt
-       - reset pipefail_opt to 0 in reset_shell_flags
-
-builtins/set.def
-       - add `set -o pipefail' and document it in help output
-
-doc/{bash.1,bashref.texi}
-       - document `set -o pipefail' and the effect of the pipefail option
-
-mksyntax.c,syntax.h
-       - sh_syntaxtab is no longer `const'
-       - new generated variable, sh_syntabsiz, set to number of entries in
-         sh_syntaxtab, written to generated syntax.c
-
-locale.c
-       - new function, locale_setblanks(), sets each member of the current
-         locale's <blank> class to have the CSHBRK flag in sh_syntaxtab
-
-                                  9/17
-                                  ----
-arrayfunc.c
-       - change convert_var_to_array to not set array[0] to a NULL value
-         (if the scalar variable had no value; e.g., after being created
-         with `local arrayvar')
-
-lib/readline/display.c
-       - save and restore the value of prompt_invis_chars_first_line in
-         rl_{save,restore}_prompt, and reinitialize it to 0 before printing
-         something in the message area
-
-lib/readline/bind.c
-       - new functions: rl_bind_keyseq_if_unbound_in_map(ks, func, kmap);
-         binds key sequence KS to function FUNC in keymap KMAP, and
-         rl_bind_keyseq_if_unbound (ks, func); binds key sequence KS to
-         function FUNC in the current keymap
-
-lib/readline/readline.h
-       - extern function declarations for rl_bind_keyseq_if_unbound_in_map and
-         rl_bind_keyseq_if_unbound
-
-lib/readline/{readline,terminal}.c
-       - _rl_bind_if_unbound -> rl_bind_keyseq_if_unbound
-
-lib/readline/{bind.c,rlprivate.h}
-       - remove _rl_bind_if_unbound
-
-                                  9/18
-                                  ----
-lib/readline/doc/rltech.texi
-       - document rl_bind_keyseq_if_unbound and
-         rl_bind_keyseq_if_unbound_in_map
-
-                                  9/19
-                                  ----
-lib/readline/bind.c
-       - new functions rl_bind_key_if_unbound_in_map and
-         rl_bind_key_if_unbound; analogous to (and implemented in terms of)
-         keyseq functions
-       - rl_bind_keyseq_in_map: a new function, equivalent to rl_set_key
-         (which remains for backwards compatibility); changed callers to
-         use it
-       - new function, rl_bind_keyseq, equivalent to rl_bind_keyseq_in_map
-         with a third argument of _rl_keymap
-
-lib/readline/readline.h
-       - extern declarations for rl_bind_key_if_unbound_in_map and
-         rl_bind_key_if_unbound
-       - extern declarations for rl_bind_keyseq_in_map and rl_bind_keyseq
-
-lib/readline/doc/rltech.texi
-       - document rl_bind_keyseq and rl_bind_keyseq_in_map
-
-configure.in
-       - require at least readline-5.0
-
-config-bot.h
-       - define SYS_SIGLIST_DECLARED if it's not defined, but
-         HAVE_DECL_SYS_SIGLIST is, to deal with differences between
-         autoconf versions
-
-bashline.c
-       - use rl_bind_key_if_unbound_in_map when binding bash keybindings in
-         initialize_readline(), so inputrc files can override them
-
-                                  9/22
-                                  ----
-lib/readline/histsearch.c
-       - do better bounds checking for history_offset and history_length in
-         history_search_internal
-
-builtins/history.def
-       - in delete_last_history(), make sure we don't leave the history
-         offset longer than the history length after calling delete_histent
-
-                                  9/23
-                                  ----
-jobs.c
-       - small change to notify_of_job_status so job status messages get
-         printed even if the shell was started to run `-c command'.  The
-         old behavior was intentional, but I cannot remember why, so we'll
-         try it the other way for a while (debian bash bug #211693)
-
-                                  9/24
-                                  ----
-jobs.c
-       - slightly modify change from 9/23 so that jobs started to run
-         command substitutions don't print job status messages
-
-                                  9/25
-                                  ----
-lib/readline/search.c
-       - when reading a non-incremental search string from the terminal,
-         use a separate undo list rather than chaining it to the undo list
-         from the rest of the line, since the whole undo list will get
-         freed when the search string is complete
-
-lib/readline/readline.h
-       - changed the defines guarding the stdarg prototype for rl_message to
-         match what's actually used in display.c, where it's defined
-
-                                  9/26
-                                  ----
-[bash-3.0-alpha released]
-
-                                  9/29
-                                  ----
-lib/sh/shmatch.c
-       - fix to build correctly when arrays are not compiled into the shell
-
-subst.c
-       - fix command substitution to run any exit trap defined in the
-         command substitution before returning; the exit trap is not inherited
-         from the calling shell
-
-lib/readline/shell.c
-       - change sh_set_lines_and_columns to free the memory allocated and
-         passed to setenv(), since setenv is specified by POSIX to allocate
-         new memory and copy its arguments
-
-jobs.c
-       - change logic in make_child so that every child process attempts to
-         set the terminal's process group to the pipeline's process group
-         when PGRP_PIPE is defined, just like when it's undefined.  This is
-         reported to fix some tricky synchronization problems on Red Hat
-         Enterprise Linux 3.  Fix from Ernie Petrides <petrides@redhat.com>.
-
-                                  9/30
-                                  ----
-builtins/printf.def
-       - tescape no longer needs a `trans_squote' argument, since it's the
-         same as the `sawc' argument.  The `sawc' argument now means to do
-         the %b argument processing if non-null
-       - fix processing of octal constants for %b arguments (\0 followed by
-         up to three octal digits) and other escape sequences (\ followed by
-         up to three octal digits)
-       - hex constants `\xHHH' are now allowed to contain any positive
-         number of digits; previously they were restricted to two [removed]
-       - allow two new escape sequences: \" and \?, for compatibility with
-         ksh93 and ANSI C
-
-doc/{bash.1,bashref.texi}
-       - documented processing that printf performs for arguments to %b
-         escape sequences
-
-lib/sh/strtrans.c
-       - add \" and \? to escape sequences recognized by `echo -e'
-
-                                  10/1
-                                  ----
-version.c
-       - use snprintf instead of sprintf if configure tells us we have it
-
-                                  10/3
-                                  ----
-subst.c
-       - in list_remove_pattern, take into account the fact that one of the
-         list elements may be NULL, and don't free the result of
-         remove_pattern() without checking
-       - in remove_pattern, return savestring(param) if *param == '\0',
-         since callers expect to free() non-null return values
-
-                                  10/4
-                                  ----
-subst.c
-       - change verify_substring_values to make it clearer that the first
-         offset deals with array indices and the second deals with numbers
-         of elements, when doing array subranges with ${a[@]:e1:e2}
-
-array.c
-       - change array_subrange to make it explicit that the second offset
-         argument is a count of the desired number of elements, not an
-         ending index.  This deals with sparse arrays correctly.
-
-                                  10/6
-                                  ----
-variables.c
-       - fix memory leak in assign_in_env
-
-                                  10/8
-                                  ----
-subst.c
-       - in parameter_brace_expand, check that the last characters are `]}'
-         before checking for ${!array[@]}
-
-execute_cmd.c,builtins/source.def
-       - push and pop the args (BASH_ARGV and BASH_ARGC) when executing a
-         shell function or sourcing a script only when in debugging mode
-
-                                  10/11
-                                  -----
-arrayfunc.c
-       - make sure array_variable_name returns values for the SUBP and LENP
-         arguments if they're non-null, since callers expect to use them
-         even if the array subscript is bad
-
-error.c
-       - call exit_shell instead of sh_exit from parser_error and
-         report_error so the right things happen (running exit trap, doing
-         the right interactive cleanup, etc.)
-
-lib/readline/complete.c
-       - new variable, rl_completion_quote_character, set to any quote char
-         readline thinks it finds before any application completion
-         function is called
-       - new variable, rl_completion_suppress_quote, settable by an
-         application-specific completion function.  If set to non-zero, the
-         completion code does not append a closing quote in append_to_match
-
-lib/readline/readline.h
-       - extern declarations for rl_completion_quote_character and
-         rl_completion_suppress_quote
-
-bashline.c
-       - set rl_completion_suppress_quote in command_subst_completion_function
-         because that would be inserted before any closing "`" or ")", which
-         is somewhat disconcerting
-
-lib/readline/doc/rltech.texi
-       - documented rl_completion_suppress_quote and
-         rl_completion_quote_character
-
-                                  10/13
-                                  -----
-bashhist.c
-       - use sv_histchars instead of setting history_comment_char directly in
-         bash_initialize_history so assignments to $histchars made in
-         ~/.bashrc are honored
-
-                                  10/21
-                                  -----
-trap.c
-       - make sure run_exit_trap sets `running_trap' appropriately
-       - new variable, trap_saved_exit_value, set to last_command_exit_value
-         before running any trap commands; available to the rest of the
-         shell; use trap_saved_exit_value to replace some function-local
-         variables
-
-builtins/exit.def
-       - if the shell is running the exit trap, and no argument is given
-         to `exit', use trap_saved_exit_value as the exit status instead
-         of the last command exit value (which could be the previous command
-         run in the exit trap), as required by POSIX.2
-
-                                  10/25
-                                  -----
-doc/{bash.1,bashref.texi}
-       - add `alias' to the list of documented `assignment statement' builtins
-
-                                  11/1
-                                  ----
-doc/bash.1
-       - remove the `.' from the sample $PATH value
-
-parse.y
-       - make sure parse_compound_assignment prompts with $PS2 if it reads
-         a newline while parsing the compound assignment statement. Bug
-         reported by Stephane Chazelas
-       - parse_string_to_word_list now takes a new second argument: `int flags'
-       - new parser state flag: PST_COMPASSIGN; indicates that the shell is
-         parsing a compound assignment statement
-       - parse_string_to_word_list turns on PST_COMPASSIGN if `flags' arg
-         has low bit set
-       - turn PST_COMPASSIGN on and off in parse_compound_assignment
-
-externs.h
-       - change prototype declaration for parse_string_to_word_list
-
-arrayfunc.c
-       - change call to parse_string_to_word_list to add new flags arg
-
-general.c
-       - assignment() takes a new `flags' second argument
-       - if `flags' is non-zero, accept `[' as a legal assignment statement
-         starter character (for parsing compound array assignments)
-
-general.h
-       - add new argument to prototype declaration for assignment()
-
-parse.y,{subst,variables}.c, builtins/{setattr,declare}.def
-       - change calls to assignment() (parse.y calls with flags == 1 when
-         parser_state inlcudes PST_COMPASSIGN)
-
-arrayfunc.c
-       - in assign_array_var_from_string(), don't treat an expanded word
-         of the form [ind]=value specially unless the W_ASSIGNMENT flag is
-         set.  This means that words that are the result of expansions but
-         happen to have the same format as compound assignment statement
-         words will not be treated as such.  For instance
-
-               v='[12]=foobar'
-               a=( $v )
-
-         will result in a[0]='[12]=foobar' instead of a[12]=foobar.  This
-         is closer to how `regular' assignment statements are treated and
-         compatible with ksh93.  Bug reported by Stephane Chazelas
-
-shell.c
-       - new --protected argument, disables command substitution when used
-         with --wordexp (like --wordexp, it remains undocumented)
-       - change run_wordexp to turn on the W_NOCOMSUB flag in each word
-         to be expanded if protected_mode is set
-
-                                  11/7
-                                  ----
-doc/{bash.1,bashref.texi}
-       - clarified the language concerning inherited signal dispositions and
-         when traps are run
-
-support/shobj-conf
-       - slight changes to the darwin (Mac OS X) stanza for MacOS X 10.3
-         (for the readline shared library builds, which shares this script)
-
-lib/readline/histexpand.c
-       - change to make `^' behave as equivalent to word one, as csh does,
-         and as the documentation states
-
-lib/readline/display.c
-       - in update_line, make sure to use col_lendiff in all calculations
-         where the cursor position is concerned (like when calculating
-         the value of _rl_last_c_pos).  Fixes bug reported by Andreas
-         Schwab
-
-                                  11/12
-                                  -----
-trap.c
-       - make _run_trap_internal catch `return' builtin longjmps and clean
-         up before longjmping on to where the return was intended to go
-         (fixes bug with not turning off SIG_INPROGRESS flag when `return'
-         executed in trap command)
-
-                                  11/18
-                                  -----
-builtins/cd.def
-       - in posix mode, set errno to ENOTDIR if canonicalization fails,
-         unless the canonicalization functions leave it set to ENOENT
-
-                                  11/25
-                                  -----
-make_cmd.c
-       - in make_simple_command, don't blindly dereference element.redirect
-
-parse.y
-       - the list_terminator production now has an `int' value so it can be
-         used in other grammar productions
-       - add a rule that makes `time' on a line by itself time a null
-         command (this is iffy)
-
-                                  11/28
-                                  -----
-subst.c
-       - change the pattern substitution code (${var//pat/rep}) to use the
-         same pattern expansion function (getpattern()) as the pattern
-         removal expansions.  This has the effect of no longer performing
-         quote removal on the pattern before trying to match it.  This
-         fixes an incompatibility with ksh93 reported on comp.unix.shell
-
-nojobs.c
-       - add replacement function for siginterrupt on the off chance that a
-         system has posix signals but lacks siginterrrupt
-
-lib/readline/display.c
-       - fix from Tim Waugh at Red Hat to speed up inserting characters into
-         long lines in a UTF-8 environment by optimizing the calculation of
-         the first difference between old and new lines by checking to see
-         whether the old line is a subset of the new
-
-                                  11/29
-                                  -----
-lib/malloc/stats.c
-       - break code that opens file (and interprets %p) into separate function
-         _imalloc_fopen(char *s, char *fn, char *def, char *defbuf, size_t defsiz)
-         for use by rest of library
-       - default stats file is now `stats.PID'
-
-lib/malloc/trace.c
-       - new function, malloc_set_tracefn (char *s, char *fn), sets tracing
-         to the file named by FN (with %p interpolated as the pid), using
-         some default if FN is NULL
-
-lib/malloc/shmalloc.h
-       - new extern declaration for malloc_set_tracefn
-
-                                  12/4
-                                  ----
-execute_cmd.c
-       - combined several common strings from do_piping() into one
-         dup_error() function
-
-builtins/common.[ch]
-       - new function, `sh_notbuiltin(s)' prints error message about s not
-         being a shell builtin
-
-builtins/{builtin,enable}.def
-       - call sh_notbuiltin instead of using literal string
-
-{arrayfunc,expr,error}.c
-       - use one string variable for `bad array subscript' error message; use
-         in calls to various error reporting functions
-
-Makefile.in
-       - add variables for localedir and the PACKAGE_* variables, auto-set
-         by configure
-
-configure.in
-       - un-cache values for gettext, textdomain, and bindtextdomain if they're
-         not in libc but in libintl so the right variables get set
-
-bashintl.h
-       - add necessary defines for marking strings to be translated using
-         gettext
-
-locale.c
-       - set textdomain and directory in set_default_locale
-       - don't call textdomain with the value of $TEXTDOMAIN, since we don't
-         want to override the default domain ("bash")
-       - don't call bindtextdomain unless default_domain already has a value
-       - when translating $"..." strings, use dgettext with the script's
-         default domain (value of $TEXTDOMAIN)
-
-                                  12/9
-                                  ----
-builtins/mkbuiltins.c
-       - include "bashintl.h" in the generated "builtins.c"
-
-support/{config.rpath,mkinstalldirs}
-       - new files to support gettext i18n
-
-ABOUT-NLS
-       - new readme file for gettext internationalization
-
-po/{Makefile.in.in,Rules-quot,boldquot.sed,en@boldquot.header,en@quot.header,insert-header.sin,quot.sed,remove-potcdate.sin}
-po/{POTFILES.in,bash.pot}
-       - new files for gettext
-
-lib/intl
-       - new directory, with libintl stuff from gettext
-
-aclocal.m4
-       - add m4 files from gettext distribution needed by libintl
-
-configure.in
-       - create po/Makefile.in and lib/intl/Makefile in AC_OUTPUT
-       - add call to AM_GNU_GETTEXT to initialize gettext stuff
-
-Makefile.in
-       - use mkinstalldirs instead of mkdirs in the `installdirs' target
-       - changes for intl/ and po/ subdirectories in build and install
-       - changes to have libintl linked in, as determined by configure
-       - changes to have libintl built, just in case it's used (though I'd
-         rather not)
-
-                                  12/10
-                                  -----
-config.h.in
-       - additional #defines required by the libintl library
-       - add ENABLE_NLS define for AM_GNU_GETTEXT
-       - take out defines for HAVE_{BINDTEXTDOMAIN,GETTEXT,TEXTDOMAIN}
-
-configure.in
-       - removed old tests for libintl and gettext/textdomain/bindtextdomain
-
-locale.c
-       - remove HAVE_GETTEXT code; we have gettext unconditionally now
-
-bashintl.h
-       - change to include "gettext.h" and remove the conditional code based
-         on whether or not gettext is present
-
-                                  12/16
-                                  -----
-lib/readline/vi_mode.c
-       - fix problem with rl_vi_eWord that caused it to skip over the last
-         character of a word if invoked while point was on the next-to-last
-         character
-
-                                  12/18
-                                  -----
-{arrayfunc,bashhist,bashline,error,eval,execute_cmd,expr,general,input,jobs}.c
-{mailcheck,make_cmd,nojobs,pcomplete,pcomplib,print_cmd,redir,shell,sig}.c
-{subst,test,trap,variables,version,xmalloc}.c
-parse.y
-builtins/{common,evalfile,getopt}.c
-builtins/{bind,break,caller,cd,complete,declare,enable,exec,exit,fc,fg_bg}.def
-builtins/{hash,help,history,jobs,kill,printf,pushd,read,return,set,setattr}.def
-builtins/{shift,shopt,source,suspend,type,ulimit,umask}.def
-lib/sh/{fmtulong,netopen}.c
-       - include "bashintl.h" for gettext defines
-
-Makefile.in
-       - add `-DBUILDTOOL' to CFLAGS for buildversion.o
-
-bashintl.h
-       - if `BUILDTOOL' is defined, define ENABLE_NLS to 0 so we don't have
-         to compile and link in the gettext stuff
-
-Makefile.in,lib/sh/Makefile.in,builtins/Makefile.in
-       - update dependencies on bashintl.h and include/gettext.h
-
-                                  12/19
-                                  -----
-{arrayfunc,bashhist,bashline,error,eval,execute_cmd,expr,general,input,jobs}.c
-{mailcheck,make_cmd,nojobs,pcomplete,pcomplib,print_cmd,redir,shell,sig}.c
-{subst,test,trap,variables,version,xmalloc}.c
-builtins/{common,evalfile,getopt}.c
-builtins/{bind,break,caller,cd,complete,declare,enable,exec,exit,fc,fg_bg}.def
-builtins/{hash,help,history,jobs,kill,let,printf,pushd,read,return,set}.def
-builtins/{setattr,shift,shopt,source,suspend,type,ulimit,umask}.def
-lib/sh/{fmtulong,netopen}.c
-lib/malloc/{malloc,stats,table,watch}.c
-       - mark up strings in source files for gettext processing
-
-lib/malloc/imalloc.h
-       - include "bashintl.h" if SHELL is defined, otherwise make _(x) an
-         identity define
-
-lib/malloc/Makefile.in
-       - add dependencies on ${topdir}/bashintl.h and ${BASHINCDIR}/gettext.h
-
-                                  12/21
-                                  -----
-bashline.c
-       - make sure we index into rl_line_buffer with indexes > 0 in
-         attempt_shell_completion
-
-                                  12/31
-                                  -----
-Makefile.in
-       - descend into `po' and run make recursively for the various clean
-         targets
-
-                                1/4/2004
-                                --------
-include/shmbutil.h
-       - two new macros:  BACKUP_CHAR(str, strsize, i), which backs up one
-         multibyte character in STR starting at index I, and
-         BACKUP_CHAR_P(str, strsize, p), which backs up one multibyte
-         character in STR starting at P, which is a char *
-
-                                   1/6
-                                   ---
-pcomplete.c
-       - in pcomp_filename_completion_function, use the quote character
-         readline found (and assigned to rl_complete_quote_character) when
-         dequoting the filename by a completion call from readline (when
-         rl_dispatching != 0)
-
-bashline.c
-       - ditto for bash_directory_completion_matches
-
-                                   1/7
-                                   ---
-lib/readline/complete.c
-       - new variable,  rl_completion_found_quote, set to non-zero value if
-         readline finds what it thinks is quoting in the word to be completed
-
-lib/readline/readline.h
-       - extern declaration for rl_completion_found_quote
-
-                                   1/8
-                                   ---
-lib/readline/doc/rltech.texi
-       - documented rl_completion_found_quote
-
-lib/readline/complete.c
-       - in compute_lcd_of_matches, if it looks like what the user typed was
-         dequoted before generating filename matches, dequote the user's
-         text again before figuring out the case-insensitive lcd
-
-                                   1/9
-                                   ---
-lib/readline/display.c
-       - fix from Edward Catmur <ed@catmur.co.uk> to logic that handles
-         invisible characters in prompt string.  Original code was wrong
-         about local_prompt_prefix; it gave incorrect results when prompt
-         contained invisible characters after a line break
-
-                                  1/10
-                                  ----
-subst.c
-       - new function, mb_substring(), does character (possibly multibyte)
-         oriented rather than strictly byte-oriented substring extraction.
-         The passed indices, rather than strictly indexing into the string,
-         indicate character positions that need to be calculated.  From
-         Tim Waugh <twaugh@redhat.com>
-       - change parameter_brace_substring to use mb_substring if necessary
-
-included/shmbutil.h
-       - new define SADD_MBQCHAR_BODY, common code for adding a quoted
-         (preceded by CTLESC) multibyte character to an accumulating string
-         in the subst.c expansion code
-
-subst.c
-       - use SADD_MBQCHAR_BODY in expand_word_internal
-       - new static function, mb_getcharlens, allocates and returns an array
-         of character lengths for (possibly multibyte) characters in the
-         argument string
-       - change pattern matching operations to use while loops instead of
-         for loops to handle multibyte characters better (no more simple
-         increment or decrement)
-       - change pattern matching operations to use multibyte character
-         operations instead of simple increments and decrements.  Don't
-         use BACKUP_CHAR_P -- use the mblen array instead, because that
-         avoids the N**2 behavior of having to count from the beginning
-         of the string each time you want to back up one character.  Changes
-         to remove_pattern and match_pattern
-
-                                  1/12
-                                  ----
-lib/readline/display.c
-       - make expand_prompt count multbyte characters in the prompt string
-         by using _rl_find_next_mbchar (and copying possibly more than one
-         byte) instead of a simple increment and single byte copy
-
-                                  1/13
-                                  ----
-lib/readline/display.c
-       - expand_prompt takes a new reference argument -- it returns
-         the actual count of (possibly multibyte) characters displayed
-         on the screen
-       - don't short-circuit in expand_prompt unless we're not going to
-         be using any multibyte characters
-       - change calls  to expand_prompt to pass an argument for the
-         number of physical characters the prompt occupies
-         (prompt_physical_chars)
-       - initialize `lpos' (the physical cursor position) from
-         prompt_physical_chars in rl_redisplay
-
-lib/readline/mbutil.c
-       - in _rl_find_prev_mbchar_internal, if mbrtowc returns -1 or -2, and
-         we assume that the character is a single-byte char, make sure we
-         update `prev' so it doesn't get lost.  Fixes problems encountered
-         when a non-ascii char is the last char on the line and we're moving
-         back past it with ^B, and other display problems caused by the same
-         situation
-
-                                  1/15
-                                  ----
-lib/readline/doc/rltech.texi
-       - document RL_PROMPT_START_IGNORE and RL_PROMPT_END_IGNORE in the
-         description of rl_expand_prompt()
-
-                                  1/20
-                                  ----
-bashline.c
-       - in initialize_readline, make sure M-C-j and M-C-m are still bound to
-         vi-editing-mode before unbinding them -- they may have been rebound
-         in an inputrc
-
-variables.c
-       - in unbind_variable, unset attributes other than `local' and exported
-         (if the variable came from a temporary environment) when unsetting a
-         local variable inside a function
-
-                                  1/21
-                                  ----
-configure.in
-       - add libintl build directory to the list of include directories if
-         it's being built (using INTL_BUILDDIR)
-
-Makefile.in,{builtins,lib/{sh,malloc}}/Makefile.in
-       - substitute LIBBUILD as ${BUILD_DIR}/${LIBSUBDIR}
-       - define INTL_BUILDDIR as ${LIBBUILD}/intl
-
-{builtins,lib/sh}/Makefile.in
-       - make sure INTL_INC is added to  the list of include directories
-       - make sure INTL_LIBSRC is defined with the correct value
-
-{configure,Makefile,{builtins,lib/sh}/Makefile}.in
-       - substitute LIBINTL_H as ${INTL_BUILDDIR}/libintl.h
-
-Makefile.in,builtins/Makefile.iin
-       - all files depending on bashintl.h also depend on ${LIBINTL_H}
-         (which may be empty)
-
-Makefile.in
-       - make a rule telling how to build lib/intl/libintl.h if necessary
-
-                                  1/24
-                                  ----
-builtins/read.def
-       - make sure that the array name supplied as an argument to -a is a
-         valid identifier
-
-parse.y
-       - make the \W expansion abbreviate $HOME with a ~ (seems to be more
-         useful)
-
-doc/{bash.1,bashref.texi}
-       - document new behavior of \W
-
-subst.c
-       - make sure parameter_brace_expand_rhs uses the first character of
-         $IFS when making the string to return from the expanded word
-         (which, in the case of "$@" or $@, contains multiple words that
-         need to be separated)
-
-                                  1/25
-                                  ----
-builtins/common.c
-       - change get_job_spec to make `%' by itself or an empty argument
-         return NO_JOB
-
-jobs.h
-       - new possible value for a job spec return value:  BAD_JOBSPEC
-         (for syntactically invalid specs, like the empty string)
-
-shell.c
-       - in open_shell_script, check to see whether or not we can find and
-         open the filename argument before setting dollar_vars[0] or
-         manipulating BASH_SOURCE, so the error messages come out better
-
-subst.c
-       - in string_list_internal, short-circuit right away to savestring()
-         if the list only has a single element
-
-                                  1/28
-                                  ----
-lib/readline/rltypedefs.h
-       - new set of typedefs for functions returning char * with various
-         arguments (standard set)
-
-lib/readline/complete.c
-       - new function pointer, rl_completion_word_break_hook, called by
-         _rl_find_completion_word, used to set word break characters at
-         completion time, allowing them to be position-based
-
-lib/readline/doc/rltech.texi
-       - documented rl_completion_word_break_hook
-
-lib/readline/kill.c
-       - added new rl_unix_filename_rubout, which deletes one filename
-         component in a Unix pathname backward (delimiters are whitespace
-         and `/')
-
-lib/readline/readline.h
-       - extern declaration for rl_unix_filename_rubout
-
-lib/readline/funmap.c
-       - new bindable readline command `unix-filename-rubout'
-
-lib/readline/doc/{readline.3,rluser.texi},doc/bash.1
-       - documented `unix-filename-rubout'
-
-                                  1/29
-                                  ----
-lib/readline/histexpand.c
-       - change history_tokenize_internal to handle non-whitespace delimiter
-         characters by creating separate fields (like the shell does when
-         splitting on $IFS)
-
-                                  1/30
-                                  ----
-lib/glob/xmbsrtowcs.c
-       - new function, xdupmbstowcs, for convenience:  calls xmbsrtowcs
-         while allocating memory for the new wide character string
-       - some small efficiency improvments to xmbsrtowcs
-
-include/shmbutil.h
-       - extern declaration for xdupmbstowcs
-
-lib/glob/strmatch.h
-       - include config.h for definition of HANDLE_MULTIBYTE
-       - remove the HAVE_LIBC_FNM_EXTMATCH tests
-       - new extern declaration for wcsmatch(whchar_t *, wchar_t *, int)
-
-configure.in
-       - remove call to BASH_FUNC_FNMATCH_EXTMATCH; it's no longer used
-
-lib/glob/smatch.c
-       - simplify xstrmatch() by using xdupmbstowcs() instead of inline code
-
-lib/glob/glob.c
-       - modify mbskipname() to avoid the use of alloca
-       - simplify mbskipname() by using xdupmbstowcs() instead of inline code
-       - simplify glob_pattern_p() by using xdupmbstowcs() instead of
-         inline code
-       - fix memory leak in wdequote_pathname
-       - simplify wdequote_pathname() by using xdupmbstowcs() instead of
-         inline code
-
-lib/glob/strmatch.c
-       - new function, wcsmatch(), `exported' wide-character equivalent of
-         strmatch()
-
-subst.c
-       - old match_pattern is now match_upattern
-       - match_pattern now either calls match_upattern or converts
-         mbstrings to wide chars and calls match_wpattern
-       - match_upattern reverted to old non-multibyte code
-       - new function: match_pattern_wchar, wide character version of
-         match_pattern_char
-
-                                   2/1
-                                   ---
-subst.c
-       - old remove_pattern is now remove_upattern
-       - remove_upattern reverted to old non-multibyte code (pre-Waugh patch)
-       - new multibyte version of remove_pattern: remove_wpattern
-       - remove_pattern now calls either remove_upattern or converts a
-         multibyte string to a wide character string and calls
-         remove_wpattern
-       - new function, wcsdup, wide-character version of strdup(3)
-
-                                   2/4
-                                   ---
-print_cmd.c
-       - temporarily translate a >&filename redirection from
-         r_duplicating_output_word to r_err_and_out (as the expansion code
-         in redir.c does) so it prints without a leading `1' (file
-         descriptor)
-
-                                   2/5
-                                   ---
-aclocal.m4
-       - add a check for wcsdup to BASH_CHECK_MULTIBYTE
-
-config.h.in
-       - add HAVE_WCSDUP define
-
-                                   2/9
-                                   ---
-builtins/shift.def
-       - fix a call to sh_erange that possibly dereferences a NULL pointer
-
-                                  2/12
-                                  ----
-general.c
-       - start at a general set of file property checking functions:
-         file_isdir(), file_iswdir() (is writable directory)
-
-general.h
-       - extern declarations for new functions
-
-lib/sh/tmpfile.c
-       - use file_iswdir() to make sure the temporary directory used for
-         here documents and other temp files is writable in get_sys_tmpdir()
-
-                                  2/17
-                                  ----
-bashline.c
-       - fix conditional binding of emacs-mode M-~ -- there is a default
-         binding for it (rl_tilde_expand), so a straight call to
-         rl_bind_key_if_unbound_in_map doesn't do the right thing
-
-                                  2/27
-                                  ----
-[bash-3.0-beta1 released]
-
-                                  2/29
-                                  ----
-subst.c
-       - fixed expansion so referencing $a, when a is an array variable
-         without an element assigned to index 0, exits the shell when
-         `-u' is enabled
-
-expr.c
-       - make the exponentiation operator (**) associative, so things like
-         2**3**4  work right (change `if' to `while')
-
-                                   3/3
-                                   ---
-lib/sh/strftime.c
-       - SCO Unix 3.2, like Solaris, requires that the system's `timezone'
-         variable be declared as long
-
-lib/readline/{bind,histfile,input,parens}.c
-       - changes for Tandem (including `floss.h' (?))
-
-                                   3/4
-                                   ---
-subst.c
-       - change param_expand to quote the entire expanded string instead
-         of just the escape characters if the expansion appears between
-         double quotes or in a here-document (for simple variable expansions
-         or expansions of positional parameters)
-
-                                   3/8
-                                   ---
-subst.c
-       - analogous changes to parameter_brace_expand_word to fix the same
-         quoting problem as on 3/4; fix callers to understand that  the
-         value returned might be quoted now and should be dequoted if
-         necessary
-       - add a `quoted' argument to get_var_and_type, change callers
-       - change today's fix and fix from 3/4 to not call quote_string if the
-         value is "" (because quote_string turns that into CTLNUL\0)
-
-                                   3/9
-                                   ---
-builtins/cd.def
-       - resetpwd() now takes a `caller' argument so it can be used by pwd
-         as well as cd
-       - change pwd_builtin to call resetpwd() if sh_physpath() fails to
-         return a valid pathname
-
-                                  3/14
-                                  ----
-expr.c
-       - reworked exp0 and readtok() to make post-increment and post-decrement
-         into real tokens, which may be separated from their accompanying
-         variables by whitesapce
-       - made analogous changes to readtok() to make pre-increment and
-         pre-decrement work when separated from their accompanying identifier
-         by whitespace
-
-                                  3/18
-                                  ----
-lib/readline/misc.c
-       - in rl_maybe_unsave_line, don't force rl_replace_line to clear
-         the undo_list, since it might point directly at an undo list
-         from a history entry (to which we have no handle)
-
-                                  3/19
-                                  ----
-lib/readline/display.c
-       - rl_save_prompt and rl_restore_prompt now save and restore the value
-         of prompt_physical_chars
-       - set prompt_physical_chars in rl_redisplay when expand_prompt has
-         not been called (e.g., when rl_display_prompt is set and is not
-         equal to rl_prompt, like when searching)
-
-lib/readline/histexpand.c
-       - don't call add_history in history_expand if the `:p' modifier is
-         supplied; leave that to the calling application.  This means that
-         `history -p', for example, will not add anything to the history
-         list (as documented), nor will history expansions invoked by
-         emacs-mode M-C-e line editing
-
-config-bot.h
-       - check whether HAVE_DECL_SYS_SIGLIST is defined to 1 rather than just
-         defined, to work around newer versions of autoconf defining it to 0
-
-config.h.in
-       - change default status of HAVE_MALLOC to #undef instead of #define
-
-bashhist.c
-       - extern declarations for rl_done and rl_dispatching
-       - don't call re_edit from pre_process_line unless rl_dispatcing is zero,
-         so we don't call it from something like shell-expand-line
-       - change pre_process_line to add an expanded history specification
-         that returned `print only' to the history list, since history_expand
-         no longer does it (and, when using readline, do it only when
-         rl_dispatching is zero)
-
-                                  3/22
-                                  ----
-config.h.in,aclocal.m4
-       - change bash-specific functions that look in struct dirent to define
-         HAVE_STRUCT_DIRENT_xxx, like AC_CHECK_MEMBERS does (though the
-         functions are otherwise the same)
-       - new function, BASH_STRUCT_DIRENT_D_NAMLEN, define
-         HAVE_STRUCT_DIRENT_D_NAMLEN if struct dirent has a `d_namlen' member
-
-configure.in
-       - call BASH_STRUCT_DIRENT_D_NAMLEN
-
-include/posixdir.h
-       - use new and renamed HAVE_STRUCT_DIRENT_D_xxx defines
-
-                                   4/7
-                                   ---
-builtins/cd.def
-       - ensure that we print out a non-null pathname after getting a
-         directory from CDPATH and canonicalizing it (e.g., if the result
-         exceeds PATH_MAX in length and the_current_working_directory is
-         set to NULL)
-
-                                  4/12
-                                  ----
-print_cmd.c
-       - new function to print out assignment statements when `set -x' has
-         been enabled: xtrace_print_assignment
-
-externs.h
-       - extern declaration for xtrace_print_assignment
-
-                                  4/13
-                                  ----
-{subst,variables}.c
-       - call xtrace_print_assignment instead of using inline code
-
-jobs.c
-       - if turning on job control when it was previously off, set
-         pipeline_pgrp to 0 in set_job_control so make_child puts
-         subsequent children in their own process group
-
-                                  4/14
-                                  ----
-general.c
-       - new function, legal_alias_name, called to decide whether an
-         argument to add_alias is a valid alias name -- essentially any
-         character except one which must be quoted to the shell parser
-         and `/'
-
-general.h
-       - new extern declaration for legal_alias_name
-
-builtins/alias.def
-       - `unalias' now returns failure status if no NAME arguments are
-         supplied and -a is not given
-       - call legal_alias_name to make sure alias name is valid before
-         calling add_alias from alias_builtin
-
-                                  4/19
-                                  ----
-include/shmbutil.h
-       - include <config.h> for definition of HANDLE_MULTIBYTE rather than
-         duplicating logic
-
-                                  4/20
-                                  ----
-
-doc/{bash.1,bashref.texi}
-       - make sure $0 is consistently referred to as a `special parameter'
-       - document which characters are now not allowed in alias names
-
-                                  4/23
-                                  ----
-
-builtins/{jobs,kill,wait}.def
-       - removed requirement that job control be enabled to use job control
-         notation, as SUSv3 implies
-
-subst.c
-       - based on a message from David Korn, change param_expand to not call
-         string_list_dollar_star if the only quoting is Q_HERE_DOCUMENT --
-         quoted here documents are like double quoting, but not exactly
-       - analogous changes to list_remove_pattern and pos_params
-
-                                  4/24
-                                  ----
-lib/readline/doc/rluser.texi
-       - fix error in description of emacs-mode C-xC-e command (uses $VISUAL
-         instead of $FCEDIT)
-
-                                  4/28
-                                  ----
-support/bashbug.sh
-       - integrate a patch from Stefan Nordhausen
-         <nordhaus@informatik.hu-berlin.de> that reduces race conditions
-         by using a temporary directory inside $TMPDIR and creating the
-         temp files in that
-
-                                  4/30
-                                  ----
-builtins/common.c
-       - use pathconf(".", _PC_PATH_MAX) where available to size the argument
-         to getcwd() rather than using a straight PATH_MAX
-
-builtins/cd.def
-       - if get_working_directory fails and returns null (causing resetpwd
-         to return NULL), use set_working_directory to set $PWD to the
-         absolute pathname for which chdir just succeeded
-
-                                   5/1
-                                   ---
-lib/readline/vi_mode.c
-       - in rl_vi_change_to, call _rl_vi_set_last with rl_numeric_arg instead
-         of `last', since they're equal at call time and rl_vi_domove can
-         change rl_numeric_arg (which vi apparently updates).  Fixes redo bug
-         of `c2....' reported by Marion Berryman <mwberryman@copper.net>
-
-                                   5/4
-                                   ---
-parse.y
-       - fix decode_prompt_string to properly deal with strftime() returning 0
-
-                                   5/6
-                                   ---
-variables.c
-       - in make_local_array_variable, return an already-existing local array
-         variable immediately rather than creating a new array (causing a
-         memory leak)
-
-                                   5/8
-                                   ---
-lib/readline/vi_mode.c
-       - change rl_vi_domove to set rl_explicit_arg before calling
-         rl_digit_loop1 so that multi-digit numeric arguments work right
-       - _rl_vi_last_command is no longer static
-
-lib/readline/rlprivate.h
-       - new extern declaration for _rl_vi_last_command
-
-lib/readline/text.c
-       - change rl_newline to only call _rl_vi_reset_last if the last command
-         (_rl_vi_last_command) is not a text modification command.  This lets
-         the last-command and last-argument work across command lines
-
-                                  5/13
-                                  ----
-builtins/common.c
-       - use getcwd(0,0) rather than providing a fixed pathname with a fixed
-         length (PATH_MAX) so getcwd() will allocate sufficient memory
-
-aclocal.m4
-       - change BASH_FUNC_GETCWD to check whether or not getcwd(0,0) will
-         allocate memory for the returned value -- nobody implements that
-         and getcwd-via-popen, so it should capture the old test as well
-
-                                  5/27
-                                  ----
-
-builtins/trap.def
-       - the historical behavior of assuming that a signal's handling should
-         be set to its original disposition is only in effect if a single
-         argument is given, otherwise the first argument is assumed to be a
-         command to execute
-       - when in posix mode, if trap gets a single argument, display an
-         error message and return EX_USAGE
-       - change the help message and usage string to better explain trap's
-         behavior
-
-doc/{bash.1,bashref.texi}
-       - describe the new default behavior when the first argument is a
-         signal spec
-       - note that signal names are case insensitive and the SIG prefix is
-         optional in arguments to `trap'
-       - note that signal name arguments to `kill' are case-insensitive
-
-lib/readline/display.c
-       - make sure rl_on_new_line_with_prompt sets rl_display_prompt to
-         rl_prompt (just to make sure it's set)
-       - have rl_on_new_line_with_prompt use local_prompt if it's set
-
-                                   6/2
-                                   ---
-subst.c
-       - in string_extract_double_quoted, cope with extract_delimited_string
-         returning NULL, as it can when attempting completion on an unclosed
-         command substitution
-
-                                  6/24
-                                  ----
-lib/readline/complete.c
-       - change print_filename to add a `/' to listed directory names if
-         `mark-directories' has been enabled
-
-builtins/umask.def
-       - make sure that the mask passed to parse_symbolic_mode has all but
-         the operative low eight bits masked off, to avoid complementing
-         all 0s to -1, which is the error return code.  This makes things
-         like `a=rwx' and `ugo=rwx' work and turn off the umask
-
-                                  6/26
-                                  ----
-builtins/getopts.def
-       - when `getopts' reaches the end of options, unset OPTARG before
-         returning EOF.  In response to a bug report from Apple
-
-configure.in
-       - when cross-compiling, don't set CPPFLAGS_FOR_BUILD and
-         LDFLAGS_FOR_BUILD from CPPFLAGS and LDFLAGS, respectively, since
-         those are for the target instead of the build platform (report
-         from robert@schwebel.de)
-
-shell.c
-       - a shell whose standard error (but not standard output) is directed
-         to a terminal should be interactive, according to POSIX/SUS.  This
-         means that sh > sh.out will start an interactive shell.  Bug report
-         from llattanzi@apple.com
-
-doc/{bash.1,bashref.texi}
-       - change mention of standard output to standard error in definition
-         of interactive shell
-
-lib/readline/vi_mode.c
-       - new convenience function, rl_vi_start_inserting, calls
-         _rl_vi_set_last to save the last textmod command state and then calls
-         rl_vi_insertion_mode to enter insert mode
-       - change functions to use rl_vi_start_inserting
-
-lib/readline/readline.h
-       - extern declaration for rl_vi_start_inserting
-
-bashline.c
-       - new function for vi-mode completion, bash_vi_complete.  Does
-         filename expansion as POSIX specifies, unlike the default readline
-         bindings (which don't know about globbing).  Bound to `\', `*',
-         and `=' in vi command keymap.  Internals very similar to
-         rl_vi_complete; just calls bash glob expansion functions
-
-lib/readline/vi_mode.c
-       - change rl_vi_change_char so that an entire change is a single
-         undoable event, rather than each individual change in a [count]r
-         command
-       - fix rl_vi_change_char so that replacing characters up to EOL works
-         rather than generating rl_ding
-       - fix rl_vi_change_case so that replacing characters up to EOL works
-         rather than generating rl_ding
-
-                                  6/28
-                                  ----
-builtins/echo.def
-       - call clearerr(stdout) before writing anything and testing its
-         failure or success
-
-                                  6/29
-                                  ----
-bashline.c
-       - only set rl_explicit_arg in bash_glob_complete_word if readline is
-         in emacs mode; let bash_vi_complete take care of setting it in vi
-         mode
-       - fix bash_vi_complete to only set rl_explicit_arg unless the posix
-         conditions are met: no globbing characters in the vi `bigword'
-         being completed
-
-                                  6/30
-                                  ----
-[bash-3.0-rc1 released]
-
-                                   7/1
-                                   ---
-lib/readline/complete.c
-       - make sure `extension_char' is initialized before deciding whether
-         or not the append a `/' to a possible completion when visible-stats
-         is not enabled
-
-                                   7/2
-                                   ---
-subst.c
-       - fix a boundary overrun in string_extract_double_quoted that could
-         occur when the word completion code attempts to expand an incomplete
-         construct (like a quoted unclosed command substitution)
-
-                                   7/4
-                                   ---
-subst.c
-       - set tempenv_assign_error to non-zero if an assignment to the
-         temporary environment fails for some reason (e.g., attempted
-         assignment to a readonly variable)
-
-execute_cmd.c
-       - fix execute_simple_command to force a non-interactive shell in
-         POSIX mode to exit if an assignment to the temporary environment
-         preceding a special builtin fails (bug report from
-         llattanzi@apple.com)
-
-                                   7/5
-                                   ---
-bashline.c
-       - in bash_directory_completion_hook, don't perform word expansions
-         if the filename appears to have been completed from the file
-         system rather than typed in by the user.  Bug reported by Tim
-         Waugh <twaugh@redhat.com>
-
-                                   7/7
-                                   ---
-lib/readline/misc.c
-       - if _rl_maybe_save_line is being asked to save a line other than
-         what's already saved, free up the current saved line and save the
-         current contents of rl_line_buffer.  Bug reported by
-         llattanzi@apple.com
-
-                                  7/12
-                                  ----
-lib/readline/input.c
-       - do better EOF detection in rl_gather_tyi -- if a read returns 0 when
-         the fd is in non-blocking mode, stuff an EOF into the input stream
-         (reported by mattias@virtutech.se)
-
-                                  7/13
-                                  ----
-lib/readline/vi_mode.c
-       - make sure rl_vi_put honors `count' arguments and yanks things
-         multiple times if requested
-
-                                  7/16
-                                  ----
-builtins/umask.def
-       - make sure that the `who' part of the umask symbolic mode argument
-         defaults to `a' if it's missing
-
-flags.c
-       - make sure that maybe_make_restricted only gets called after the
-         shell is initialized, so `bash -r' doesn't result in inappropriate
-         error messages
-
-[bash-3.0 frozen]
-
-                                  7/27
-                                  ----
-doc/Makefile.in
-       - small fixes
-
-[bash-3.0 released]
-
diff --git a/CWRU/old-changelogs/CWRU.chlog.v14 b/CWRU/old-changelogs/CWRU.chlog.v14
deleted file mode 100644 (file)
index 6ae6104..0000000
+++ /dev/null
@@ -1,11049 +0,0 @@
-                                7/27/2004
-                                ---------
-
-[bash-3.0 released]
-
-                                  7/28
-                                  ----
-array.c
-       - in array_insert(), make sure the value to be added is non-NULL before
-         calling savestring() on it
-
-builtins/reserved.def
-       - fix description of `CDPATH'
-
-lib/readline/display.c
-       - when expanding a prompt that spans multiple lines with embedded
-         newlines, set prompt_physical_chars from the portion after the
-         final newline, not the preceding portion.  Bug reported by
-         "Ralf S. Engelschall" <rse@engelschall.com>
-
-make_cmd.c
-       - explicitly declare `lineno' in function prologue for make_case_command
-
-builtins/evalfile.c
-       - include `trap.h' for declaration for run_return_trap
-
-bashline.c
-       - fix a `return' without a value in enable_hostname_completion
-
-general.c
-       - include test.h for extern declaration for test_eaccess
-
-externs.h
-       - add declaration for zcatfd
-
-tests/{history,histexp}.tests
-       - unset HISTFILESIZE to avoid problems if a value of 0 is inherited
-         from the environment
-
-                                  7/30
-                                  ----
-bashline.c
-       - small changes to glob_expand_word to perform tilde expansion before
-         attempting globbing
-
-builtins/Makefile.in
-       - fix the install-help target to not cd into the `helpfiles'
-         subdirectory, so a value of $INSTALL_DATA containing a relative
-         pathname (e.g., .././support/install.sh) remains valid
-
-                                  7/31
-                                  ----
-subst.c
-       - new function, mbstrlen(s), returns length of a multibyte character
-         string
-
-include/shmbutil.h
-       - new macro, MB_STRLEN(s), calls mbstrlen or STRLEN as appropriate
-
-builtins/trap.def
-       - small change so that a first argument that's a valid signal number
-         (digits only -- no symbolic names) will be treated as a signal and
-         reverted back to the original handling disposition.  Fixes debian
-         complaints
-
-subst.c
-       - call MB_STRLEN instead of STRLEN where appropriate in
-         parameter_brace_expand_length to handle multibyte characters properly
-       - call MB_STRLEN instead of strlen in verify_substring_values so that
-         negative substrings of strings with multibyte chars work properly
-
-                                   8/1
-                                   ---
-jobs.c
-       - describe_pid needs to write to stderr, not stdout (POSIX)
-       - start_job, since it's only used by builtins (fg/bg), needs to write
-         its output to stdout, not stderr (POSIX)
-
-sig.c
-       - add an `orig_flags' member to struct terminating_signal so the
-         original signal handling flags (SA_RESTART, etc.) can be preserved
-         on POSIX systems
-       - make sure to preserve the signal flags state in
-         initialize_terminating_signals and reset them for child processes
-         in reset_terminating_signals
-
-builtins/fc.def
-       - fixed an off-by-one error that caused `fc -l' to list one too many
-         history entries
-       - in posix mode, `fc' should not list any indication as to whether or
-         not history lines have been modified (POSIX)
-       - when in posix mode, the default editor for `fc' should be `ed' (POSIX)
-
-doc/bashref.texi
-       - updated the description of `trap' behavior when given a first
-         argument that is a valid signal number
-       - noted that `fc -l' won't indicate whether a history entry has been
-         modified if the shell is in posix mode
-
-builtins/command.def
-       - fixed bug: `command -v' is supposed to be silent if a command is not
-         found
-
-builtins/hash.def
-       - `hash' should print its `hash table empty' message to stderr
-
-lib/readline/misc.c
-       - back out 7/7 change to _rl_maybe_save_line; it breaks emacs-mode ^P
-
-general.c
-       - changed base_pathname so that it will return reasonable results for
-         non-absolute pathnames -- this is what is intended by all of its
-         callers
-
-arrayfunc.c
-       - fix array_variable_part to return NULL if it finds an invisible
-         variable in the hash table.  Fixes seg fault caused by referring to
-         unset local variable using array notation
-
-{locale,variables}.c
-       - support LC_TIME as a special locale variable so HISTTIMEFORMAT tracks
-         the current locale
-
-                                   8/2
-                                   ---
-variables.c
-       - fixed small memory leak in makunbound() when a local array variable
-         is unset.  Fix from William Park
-
-lib/readline/display.c
-       - fixed a problem when computing the number of invisible characters on
-         the first line of a prompt whose length exceeds the screen width
-         (should only happen when invisible characters occur after the
-         line wrap).  Bug reported by agriffis@gentoo.org
-
-builtins/command.def
-       - `command -V' passes a new flag, CDESC_ABSPATH, which means to convert
-         to an absolute path
-
-builtins/type.def
-       - in posix mode, `type' and `command -v/-V' should not report
-         non-executable files, even if the execution code will attempt to
-         run them.  Other posix shells do this
-
-doc/bashref.texi
-       - add note to POSIX Mode section describing behavior of type and command
-         when finding a non-executable file
-
-execute_cmd.c
-       - force extended_glob to 1 before calling binary_test in
-         execute_cond_node so that the right extended pattern matching gets
-         performed
-
-                                   8/3
-                                   ---
-braces.c
-       - make sure lhs[0] and rhs[0] are cast to `unsigned char' so chars
-         with values > 128 are handled correctly
-
-builtins/printf.def
-       - change bexpand() and printstr() to handle strings with a leading
-         '\0' whose length is non-zero, since that's valid input for the
-         `%b' format specifier
-
-subst.c
-       - fix a couple of instances of find_variable that didn't check the
-         result for an invisible variable
-
-variables.c
-       - BASH_ARGC, BASH_ARGV, BASH_SOURCE, BASH_LINENO no longer created as
-         invisible vars
-
-pcomplete.c
-       - make sure COMP_WORDS is not invisible when bind_comp_words returns
-       - ditto for COMPREPLY in gen_shell_function_matches
-
-                                   8/4
-                                   ---
-braces.c
-       - fix problem where ${ was ignored but did not increment the open
-         brace count.  Bug reported by Tim Waugh <twaugh@redhat.com>
-
-variables.c
-       - if make_local_variable finds a variable in the correct context in
-         the right variable scope, make sure it's not invisible before
-         returning it
-
-                                   8/5
-                                   ---
-builtins/trap.def
-       - fixed usage message to show `action' as not optional, though it
-         actually is when not in posix mode (for a single argument)
-
-                                   8/7
-                                   ---
-configure.in
-       - kfreebsd-gnu has had its sbrk() problems fixed, and no longer needs
-         to be configured --without-gnu-malloc
-
-lib/readline/vi_mode.c
-       - in rl_vi_search, free any saved history line before starting the
-         search, so failure leaves you at that line, not the last line in
-         the history (assuming the current line is not the last history line).
-         Fix from llattanzi@apple.com to replace fix of 7/7
-
-                                   8/9
-                                   ---
-support/Makefile.in
-       - renamed `mostly-clean' target to `mostlyclean'
-
-                                  8/11
-                                  ----
-lib/readline/vi_mode.c
-       - make same change for EOL in multibyte character case of
-         rl_vi_change_char
-
-                                  8/12
-                                  ----
-subst.c
-       - in verify_substring_values, fix off-by-one error checking bounds of
-         `offset', esp. in array values (e.g., getting the highest element
-         of an array)
-
-                                  8/16
-                                  ----
-aclocal.m4
-       - change BASH_CHECK_DEV_FD to make sure that file descriptors > 2 are
-         accessible via /dev/fd, unlike FreeBSD 5.x
-
-lib/sh/strftime.c
-       - make sure `zone' is initialized with gettimeofday before it is used
-       - work around HPUX lack of `altzone' and differing definitions of
-         `timezone'
-
-lib/malloc/malloc.c
-       - internal_memalign and memalign now take a `size_t' as their first
-         argument, which seems to be the prevailing standard
-
-lib/malloc/{malloc.c,shmalloc.h}
-       - change sh_memalign to take a `size_t' as its first argument
-
-builtins/echo.def
-       - if posixly_correct and xpg_echo are both set, don't try to interpret
-         any arguments at all, as POSIX/XOPEN requires (fix inspired by Paul
-         Eggert)
-
-doc/bashref.texi
-       - amend description of bash posix mode to include new echo behavior
-
-builtins/fg_bg.def
-       - allow bg to take multiple job arguments, as posix seems to specify,
-         placing them all in the background, returning the status of the last
-         one as the status of `bg'
-
-lib/readline/vi_mode
-       - fix _rl_vi_change_mbchar_case (multibyte-char version of `~'
-         command) to have the right behavior at EOL -- handle case where vi
-         mode backs up at the end of the line
-
-                                  8/18
-                                  ----
-array.c
-       - check for an empty array in array_rshift before shifting elements
-         and adjusting max_index
-       - check for null array in array_subrange
-
-jobs.c
-       - fix raw_job_exit_status to not ignore exit status of the last
-         process in the pipeline when `set -o pipefail' is enabled
-
-                                  8/19
-                                  ----
-lib/readline/mbutil.c
-       - make sure _rl_find_next_mbchar_internal has a valid multibyte
-         character before it checks whether or not it's a zero-width
-         wide character and adjusts point accordingly
-
-                                  8/24
-                                   ----
-bashline.c
-        - new function, bash_directory_expansion, duplicates the expansions
-          performed on the directory name by rl_filename_completion_function
-        - call bash_directory_expansion in command_word_completion_function
-          if we decide we're doing tilde expansion (and any other
-          canonicalization) on the directory name being completed
-
-                                   8/25
-                                   ----
-configure.in
-        - use new-style AC_CHECK_HEADER to check for sys/ptem.h (which requires
-          sys/stream.h).  The correct checks are in the code, but autoconf
-          complains if sys/stream.h is not included, rather than simply
-          checking for the header's presence
-
-                                  8/26
-                                  ----
-builtins/hash.def
-       - fix a bug that prevented `hash -d' from working right (as soon as
-         hash removed a command from the table, the bug caused it to be added
-         right back)
-
-                                  8/27
-                                  ----
-doc/{bash.1,bashref.texi}
-       - explicitly note that conditional primaries that operate on files
-         operate on the targets of symbolic links rather than the links
-         themselves
-
-                                  8/30
-                                  ----
-lib/readline/display.c
-       - fix multibyte calculation of `physchars' in prompt expansion, to
-         handle double-width multibyte characters correctly
-       - changes to rl_redisplay to handle prompts longer than the screenwidth
-         that might contain double-width multibyte characters.  Fixes from
-         Tomohiro Kubota
-
-                                   9/6
-                                   ---
-subst.c
-       - change word_list_split to avoid really bad behavior caused by calling
-         list_append for each split word -- as the list gets long, you have
-         to traverse it every time.  Keep a pointer to the end of the list and
-         and just tack onto it
-
-                                   9/8
-                                   ---
-lib/readline/complete.c
-       - change fnprint to calculate the displayed width of a filename in
-         the same way as fnwidth
-
-subst.c
-       - in verify_substring_values, when expanding ${array[@]:offset}, make
-         sure negative offsets count from one greater than the array's
-         maximum index so things like ${x[@}: -1} work to give the last element
-         (requires fixing array tests)
-
-builtins/common.c
-       - new error function, sh_wrerror(),  for builtins to call when a write
-         error occurs
-
-builtins/common.h
-       - extern declaration for sh_wrerror()
-
-builtins/cd.def
-       - change builtin_error call to use sh_wrerror()
-
-builtins/echo.def
-       - report write errors with sh_wrerror() instead of just returning
-         failure
-
-builtins/printf.def
-       - change printstr to return failure (-1) or success (0) indication
-         rather than void
-       - report write errors when printstr() fails, return failure
-       - if any of the PF/printf calls fail, report write error and return
-         failure
-
-execute_cmd.c
-       - change execute_in_subshell so the subshell command inherits the
-         command timing flags from the enclosing COMMAND *
-
-                                  9/11
-                                  ----
-[prayers for the victims of 9/11/2001]
-
-lib/sh/strnlen.c
-       - new file, implementation of GNU libc extension function strnlen
-
-lib/sh/Makefile.in, {config.h,configure,Makefile}.in, MANIFEST
-       - changes for strnlen
-
-configure.in
-       - version changed to 3.1-devel
-
-doc/bash.1, lib/readline/doc/rluser.texi
-       - added description of `-o plusdirs' to complete/compgen (thanks,
-         Arnold)
-
-parse.y
-       - new parser_state flag, PST_ASSIGNOK, if set indicates we're parsing
-         arguments to a builtin that accepts assignment statement arguments
-       - turn on PST_ASSIGNOK in read_token_word when appropriate
-       - turn off PST_ASSIGNOK in read_token when appropriate
-       - don't attempt to parse a compound assignment specially unless we're
-         in a position where an assignment statement is acceptable, or
-         PST_ASSIGNOK is set
-
-                                  9/13
-                                  ----
-variables.c
-       - make BASH_ARGC, BASH_ARGV, BASH_LINENO, and BASH_SOURCE
-         non-unsettable, since the shell uses those values internally
-
-expr.c
-       - make exponentiation right-associative, as is apparently correct
-
-                                  9/16
-                                  ----
-arrayfunc.c
-       - make sure convert_var_to_array marks the environment as needing
-         recreation if the converted variable was exported
-
-                                  9/17
-                                  ----
-braces.c
-       - mark ${ as introducing an additional level of braces only if it's
-         not in a quoted string -- quoted strings are handled before brace
-         matching is done
-
-parse.y
-       - fixed an obscure problem in history_delimiting_chars where the `in'
-         in a case statement could have a semicolon added after it, if the
-         `case word' was on a previous line
-
-support/config.guess
-       - support for newest versions of tandem non-stop kernel
-
-lib/readline/display.c
-       - in compute_lcd_of_matches, explicitly cast `text' to `char *' before
-         passing it to rl_filename_dequoting_function
-
-lib/readline/terminal.c
-       - bind the key sequence sent by the keypad `delete' key to delete-char
-         (same as ^D in emacs mode)
-
-builtins/ulimit.def
-       - in print_all_limits, don't print anything if get_limit returns
-         -1/EINVAL, indicating that the kernel doesn't support that particular
-         limit
-       - add -i (max number of pending signals), -q (max size of posix msg
-         queues), -x (max number of file locks) for systems (Linux) that
-         support them
-
-doc/{bash.1,bashref.texi}
-       - fix description of correspondence between FUNCNAME, BASH_LINENO,
-         and BASH_SOURCE indices in description of BASH_LINENO
-
-                                  9/18
-                                  ----
-lib/sh/shquote.c
-       - don't quote CTLESC and CTLNUL with CTLESC in sh_backslash_quote, as
-         long as the resultant string never gets sent to the word expansion
-         functions without going through the shell parser
-
-externs.h
-       - add extern declarations for strnlen and strpbkrk from lib/sh
-
-subst.[ch]
-       - changes to handle case where IFS consists of multibyte characters.
-         Changed: string_extract_verbatim, split_at_delims,
-         string_list_dollar_star, string_list_dollar_at, list_string,
-         get_word_from_string, setifs
-
-                                  9/19
-                                  ----
-mailcheck.c
-       - change file_mod_date_changed to reset the cached mail file data if
-         the file size drops to zero
-
-lib/readline/complete.c
-       - change append_to_match so that a non-zero value for
-         rl_completion_suppress_append will cause no `/' to be appended to a
-         directory name
-
-bashline.c
-       - experimental change to suppress appending a slash for a completed
-         filename that is found in PATH as well as a directory in the current
-         directory under certain circumstances:  a single instance found in
-         $PATH when `.' is not in $PATH, and multiple instances found in the
-         $PATH, even when `.' is in the $PATH
-
-                                  9/24
-                                  ----
-command.h
-       - new word flag: W_ASSIGNRHS, means word is rhs of assignment statement
-       - new word flag: W_NOTILDE, means word is not to be tilde expanded
-       - new word flag (internal): W_ITILDE, means the next character is a
-         tilde that should be expanded
-
-general.c
-       - new set of tilde suffixes for use when parsing the RHS of an
-         assignment statement and =~ should not be subject to tilde expansion
-       - if ASSIGN_P argument to bash_tilde_expand is 2, use tilde prefixes
-         for parsing RHS of assignment statement
-
-general.[ch]
-       - new function bash_tilde_find_word, drop-in replacement for
-         tilde_find_word
-
-subst.c
-       - call bash_tilde_expand with secord argument of 2 when expanding rhs
-         of an assignment statement, so tildes after second and subsequent
-         `=' in an assignment are not expanded
-       - new function, expand_string_assignment, to expand the rhs of an
-         assignment statement
-       - add `~' to EXP_CHAR, the characters that will cause the word
-         expansion functions to be called
-       - move tilde expansion into expand_word_internal instead of many
-         different calls to bash_tilde_expand scattered across different
-         functions.  NOTE:  This means that double quotes surrounding a
-         {paramOPword} expansion will cause tilde expansion to NOT be
-         performed on `word'.  I think this is right, what POSIX specifies,
-         and consistent with the behavior of other characters in the rhs
-
-execute_cmd.c
-       - take out calls to bash_tilde_expand before calling word expansion
-         functions
-
-                                  9/26
-                                  ----
-execute_cmd.c
-       - make sure to call UNBLOCK_CHILD before returning on a pipe creation
-         failure in execute_pipeline
-
-                                  9/27
-                                  ----
-variables.c
-       - change get_bash_command to deal with the_printed_command_except_trap
-         being NULL
-
-execute_cmd.c
-       - fix execute_simple_command to deal with the_printed_command being
-         NULL when assigning to the_printed_command_except_trap -- fixes
-         seg fault in savestring()
-
-parse.y
-       - change the parser so that the closing `)' in a compound variable
-         assignment delimits a token -- ksh93 does it this way
-
-doc/{bash.1,bashref.texi}
-       - change description of tilde expansion to note that expansion is
-         attempted only after the first =~ in an assignment statement
-
-builtins/declare.def
-       - when assigning to an array variable with declare -a x=(...), make
-         sure the last character in the rhs  of the variable assignment is
-         `)', not just that it appears somewhere
-
-                                  9/28
-                                  ----
-command.h
-       - add a `W_NOEXPAND' flag to inhibit all expansion except quote removal
-       - add a `W_COMPASSIGN' flag to denote a word is a compound assignment
-         statement
-
-parse.y
-       - set W_COMPASSIGN on words that appear to be compound assignments
-
-subst.c
-       - pass W_NOXPAND and W_COMPASSIGN through end of expand_word_internal
-
-subst.[ch]
-       - new function, expand_assignment_string_to_string, calls
-         expand_string_assignment and then string_list on the result
-
-variables.c
-       - assign_in_env now calls expand_assignment_string_to_string
-
-                                  9/30
-                                  ----
-builtins/common.c
-       - change get_job_spec so the null job `%' once again means the current
-         job
-
-                                  10/1
-                                  ----
-subst.c
-       - do_assignment_internal now takes a WORD_DESC * as its first
-         argument, and uses its `word' member as the assignment string
-       - change expand_word_list_internal to call do_word_assignment instead
-         of do_assignment, passing it `word' instead of, e.g., `word->word'
-       - change extract_array_assignment_list to just return the passed
-         string minus a trailing `)' if the last character is a right
-         paren
-       - change do_assignment_internal to call extract_array_assignment_list
-
-subst.[ch]
-       - change do_assignment and do_assignment_no_expand to take a `char *'
-         instead of `const char *' first argument; change extern prototypes
-       - new function, do_word_assignment, takes a WORD_DESC * and calls
-         do_assignment_internal on it; add extern declaration with prototype
-
-general.h
-       - new typedef, sh_wassign_func_t, like sh_assign_func_t but takes a
-         WORD_DESC * as its first argument
-
-variables.[ch]
-       - assign_in_env now takes a WORD_DESC * as its first argument
-
-                                  10/2
-                                  ----
-command.h
-       - new word flag, W_ASSNBLTIN, denotes that the word is a builtin
-         command (in a command position) that takes assignment statements
-         as arguments, like `declare'
-       - new word flags, W_ASSIGNARG, denotes that word is an assignment
-         statement given as argument to assignment builtin
-
-execute_cmd.c
-       - set W_ASSNBLTIN flag in fix_assignment_words if necessary (if there
-         are any arguments that are assignment statements)
-       - set W_ASSIGNARG flag in fix_assignment_words if necessary
-
-subst.c
-       - new function, do_compound_assignment, encapsulates the necessary
-         code to perform a compound array assignment (including creation of
-         local variables); called from do_assignment_internal
-       - to fix the double-expansion problem with compound array assignments
-         that are arguments to builtins like `declare', changed
-         shell_expand_word_list to treat those arguments like assignment
-         statements (with proper creation of local variables inside shell
-         functions) and pass the attribute-setting portion of the statement
-         onto the builtin.  This is what ksh93 appears to do, from inspection
-         of the `ksh93 -x' output
-
-execute_cmd.c
-       - fix execute_simple_command:  in case of pipeline or async command,
-         when forking early, set `subshell_environment' so that it can contain
-         both SUBSHELL_PIPE and SUBSHELL_ASYNC -- the two should not be
-         mutually exclusive.  Fixes bug reported by pierre.humblet@ieee.org
-       - remove references to last_pid, old_command_subst_pid; use NO_PID as
-         a sentinel value to decide whether or not a child process has been
-         created and needs to be waited for.  Submitted by
-         pierre.humblet@ieee.org to fix recycling-pid problem on cygwin
-
-doc/{bash.1,bashref.texi}
-       - fixed documentation of `@(pattern)' extended globbing operator --
-         it succeeds if the string matches one of the patterns, not exactly
-         one.  This is what ksh93 does, too
-
-lib/readline/complete.c
-       - fixed rl_menu_complete so that a negative argument cycles backwards
-         through the list
-
-                                  10/3
-                                  ----
-subst.c
-       - use W_COMPASSIGN flag in do_assignment_internal instead of deciding
-         lexically which assignments are compound array assignments
-
-                                  10/6
-                                  ----
-support/shobj-conf
-       - additions for System V.5 from Boyd Gerber <gerberb@zenez.com>
-
-subst.c
-       - in command_substitute, if subshell_environment includes
-         SUBSHELL_ASYNC, call make_child with the `async_p' argument set to
-         non-zero.  This keeps command substitutions for async commands or
-         pipelines from trying to give the terminal back to the shell's
-         pgrp.  make sure to save and restore last_asynchronous_pid.  Fix
-         suggested by <pierre.humblet@ieee.org>
-
-                                  10/7
-                                  ----
-config.h.in
-       - add a placeholder definition for WCONTINUED_BROKEN
-
-                                  10/9
-                                  ----
-aclocal.m4
-       - add BASH_CHECK_WCONTINUED, checks for glibc bug where WCONTINUED is
-         defined but rejected as invalid by waitpid(2)
-
-configure.in
-       - add call to BASH_CHECK_WCONTINUED, defines WCONTINUED_BROKEN
-
-redir.c
-       - experimental change to add_undo_redirect to save manipulations to
-         file descriptors >= SHELL_FD_BASE (10) on the list of redirections
-         to be undone even if `exec' causes the list to be discarded
-
-doc/{bash.1,bashref.texi}
-       - note that redirections using file descriptors > 9 should be used
-         carefully, because they might conflict with file descriptors the
-         shell uses internally
-
-                                  10/11
-                                  -----
-parse.y
-       - fix pipeline_command production to handle case where `pipeline'
-         as `argument' of `!' or `time' is null (e.g., a syntax error not
-         handled by the grammar)
-
-                                  10/13
-                                  -----
-lib/readline/readline.c
-       - new internal variable, _rl_bind_stty_chars; if non-zero, bind the
-         terminal special characters to readline equivalents at startup
-       - change readline_default_bindings() and reset_default_bindings() to
-         understand _rl_bind_stty_chars
-
-lib/readline/rlprivate.h
-       - new extern declaration for _rl_bind_stty_chars
-
-lib/readline/rltty.c
-       - change rl_prep_terminal to add support for _rl_bind_stty_chars
-
-                                  10/15
-                                  -----
-lib/readline/bind.c
-       - new bindable variable, `bind-tty-special-chars', bound to value of
-         _rl_bind_stty_chars
-
-doc/bash.1,lib/readline/doc/{readline.3,rluser.texi}
-       - documented new readline variable `bind-tty-special-chars'
-
-builtins/pushd.def
-       - make the first check for option `--' skip the rest of option
-         checking
-
-                                  10/16
-                                  -----
-lib/readline/shell.c
-       - change sh_set_lines_and_columns to prefer setenv, which has
-         predictable memory allocation behavior, to putenv, which does not
-
-                                  10/19
-                                  -----
-variables.c
-       - change push_exported_var so that a tempenv variable has to have the
-         export attribute set (which they all do -- something to look at) and
-         the `propagate' attribute set to be propagated down to the next
-         scope
-
-execute_cmd.c
-       - change execute_builtin so that if CMD_COMMAND_BUILTIN is set in the
-         passed flags argument, call pop_scope with a value that says the
-         builtin is not special, since `command' means that preceding variable
-         assignments don't persist in the environment.  Fixes problem with
-         variable assignments preceding command preceding special builtin
-         keeping those variable assignments around (when in posix mode)
-
-                                  10/20
-                                  -----
-lib/sh/shquote.c
-       - new function, sh_mkdoublequoted, brackets a given string with
-         double quotes and returns a new string.  Flags argument, if non-
-         zero, means to quote embedded double quotes with backslashes
-
-externs.h
-       - new extern declaration for sh_mkdoublequoted
-
-parse.y
-       - use sh_mkdoublequoted after calling localeexpand()
-
-lib/sh/strtrans.c
-       - change ansicstr to understand that  (flags & 4) != 0 means to remove
-         backslash from unrecognized escape sequences
-
-general.c
-       - fix logic problem in assignment() that caused non-variable-starter
-         characters to be allowed, resulting in things like `1=xxx' creating
-         a variable `1' in the hash table
-
-                                  10/21
-                                  -----
-bashline.c
-       - don't call programmable_completions with an assignment statement
-         argument
-
-                                  10/22
-                                  -----
-lib/readline/rltty.c
-       - in prepare_terminal_settings, turn echoing on (readline_echoing_p)
-         if get_tty_settings fails because the input is not a terminal
-
-                                  10/24
-                                  -----
-lib/readline/util.c
-       - include rlmbutil.h for multibyte definitions
-       - new function, _rl_walphabetic, wide char version of rl_alphabetic
-
-lib/readline/mbutil.c
-       - new function, _rl_char_value(buf, ind), returns value of (possibly
-         multibyte) character at buf[ind]
-
-lib/readline/rlmbutil.h
-       - extern defines for _rl_walphabetic and _rl_char_value for when
-         multibyte chars are not being used
-       - new wrapper definitions for _rl_find_next_mbchar (MB_NEXTCHAR) and
-         _rl_find_prev_mbchar (MB_PREVCHAR) that try to avoid unneeded
-         function calls
-
-lib/readline/text.c
-       - fix rl_foward_word to work with multibyte characters (or in a
-         multibyte locale) using above utility functions
-       - fix rl_backward_word to work with multibyte characters (or in a
-         multibyte locale) using above utility functions
-
-                                  10/26
-                                  -----
-parse.y
-       - fix parse_matched_pair so that it doesn't swallow \<newline> when
-         parsing a $'...' construct (call shell_getc with different arg)
-
-                                  10/28
-                                  -----
-lib/glob/glob.c
-       - after some (compiled-in) threshold, glob_vector will stop using
-         alloca to allocate `struct globval's and will switch to using
-         malloc, with appropriate cleanup before returning
-
-subst.c
-       - don't expand tildes after `=' in expand_word_internal, even if the
-         W_TILDEEXP flag is set, unless it's the first tilde in a word
-         marked W_ASSIGNMENT
-
-                                  10/31
-                                  -----
-lib/readline/text.c
-       - make sure rl_point doesn't go below 0 in rl_delete_horizontal_space
-         (from SUSE, but not sent in)
-
-shell.c
-       - make sure shell_is_restricted skips over a single leading `-' in
-         the shell name (from SUSE, but not sent in)
-
-lib/readline/display.c
-       - disable `fast redisplay' at the end of the line if in a locale that
-         supports multibyte characters (from SUSE, but not sent in)
-
-lib/readline/histexpand.c
-       - fix a problem with finding the delimiter of a `?' substring when
-         compiled for multibyte characters (from SUSE, but not sent in)
-
-                                  11/1
-                                  ----
-lib/readline/display.c
-       - correct some assignments to _rl_last_c_pos:  when in a multibyte
-         locale, it's used as an absolute cursor position; when not using
-         multibyte characters, it's a buffer offset.  I should have caught
-         this when the multibyte character support was donated
-
-                                  11/5
-                                  ----
-general.c
-       - change `assignment()' to accept `+=' assignment operator
-
-arrayfunc.[ch]
-       - bind_array_variable and assign_array_element both take a new `flags'
-         argument
-       - assign_array_var_from_string, assign_array_from_string, and
-         assign_array_var_from_word_list now all take a new `flags' argument
-       - change assign_array_var_from_word_list to understand how to append
-         to an array variable
-       - change assign_array_var_from_string to understand how to append
-         to an array variable.  It does not unset the previous value if
-         appending, allowing both old values to be changed and new ones to
-         be added
-
-subst.h
-       - new flag #defines to use for evaluating assignment statements
-
-{subst,variables}.c, builtins/{declare,read}.def
-       - change callers of assign_array_element and bind_array_variable
-       - change do_compound_assignment to understand assignment flags
-       - change do_assignment_internal to set assignment flags and pass them
-         to underlying functions
-
-pcomplete.c,builtins/{declare,read}.def
-       - fix callers of assign_array_var_from_string, assign_array_var_from_word_list
-
-variables.[ch]
-       - make_variable_value now takes a new `flags' argument
-       - make_variable_value now understands how to append to a particular
-         variable, using the old value
-       - bind_variable_value now takes a new `flags' argument
-       - change make_variable_value to understand ASS_APPEND flag
-       - bind_variable now takes a new `flags' argument
-       - bind_variable_internal now takes a new `flags' argument
-
-arrayfunc.c
-       - change callers of make_variable_value to add flags arg
-
-builtins/declare.def
-       - change callers of bind_variable_value to add flags arg
-
-{execute_cmd,mailcheck,pcomplete,shell,subst,variables}.c,parse.y
-builtins/{cd,command,declare,getopts,read,set,setattr}.def
-       - change callers of bind_variable to add flags arg
-
-variables.c
-       - change callers of bind_variable_internal
-       - change bind_variable_internal to pass assignment flags on to
-         make_variable_value
-       - change assign_in_env to treat `var+=value' like `var=value'
-
-arrayfunc.c
-       - break code that actually constructs the new value and assigns it
-         to a particular array index out into a new functions:
-         bind_array_var_internal.  This fakes out make_variable_value by
-         passing a dummy SHELL_VAR * so it can do proper appending and other
-         += processing
-       - changes to assign_array_var_from_string to accept and process as if
-         they were `standalone' assignment statements array assignment words
-         of the form [ind]+=val
-
-                                  11/7
-                                  ----
-builtins/declare.def
-       - added support for `declare [flags] var+=value'.  `Flags' are applied
-         before the assignment is performed, which has implications for things
-         like `-i' -- if -i is supplied, arithmetic evaluation and increment
-         will be performed
-
-builtins/setattr.def
-       - add support for `+=' assignment for rest of `assignment builtins':
-         export, readonly
-
-                                  11/12
-                                  -----
-lib/readline/display.c
-       - make sure prompt_physical_chars and prompt_invis_chars_first_line
-         are reset to 0 if the prompt string passed to rl_expand_prompt is
-         NULL or empty
-
-                                  11/14
-                                  -----
-{configure,config.h}.in
-       - check for `raise', define HAVE_RAISE if available
-
-lib/intl/dcigettext.c
-       - make sure `raise' is defined if HAVE_RAISE is not before
-         eval-plurah.h is included
-
-lib/malloc/trace.c
-       - put extern declaration for imalloc_fopen inside the MALLOC_TRACE
-         #ifdef
-
-                                  11/16
-                                  -----
-lib/intl/Makefile.in
-       - make sure SHELL is defined to cpp
-
-lib/intl/dcigettext.c
-       - make sure we use getcwd() even if HAVE_GETCWD is not defined after
-         including config.h; if SHELL is defined, #define HAVE_GETCWD
-
-                                  11/18
-                                  -----
-trap.[ch]
-       - new function, int signal_in_progress(int sig), returns TRUE if the
-         trap handler for signal SIG is currently executing
-
-                                  11/19
-                                  -----
-redir.c
-       - slightly change do_redirection_internal to set the close-on-exec
-         flag for file descriptors > 2 used to save file descriptors < 2
-         using explicit redirections (e.g., `exec 3>&1').  This keeps file
-         descriptors pointing to pipes from being left open but doesn't
-         change the shell's file descriptor semantics
-
-                                  11/20
-                                  -----
-doc/{bash.1,bashref.texi}
-       - correct some minor typos, forwarded from doko@debian.org
-
-                                  11/22
-                                  -----
-doc/bash.1,lib/readline/doc/{readline.3,rluser.texi}
-       - documented detail that yank-last-arg and yank-nth-arg use the history
-         arg expansion code (and, as a result, are subject to restrictions
-         of the history-comment character)
-
-                                  11/23
-                                  -----
-execute_cmd.c
-       - changes so that BASH_COMMAND preserves its value into a DEBUG trap:
-         for commands, arithmetic for command expressions, select commands,
-         case commands, (( commands, [[ commands, simple commands
-
-                                  11/24
-                                  -----
-doc/{bash.1,bashref.texi}
-       - changed description of `set' builtin slightly so that it is clear
-         that only variables are displayed in posix mode and that read-only
-         variables can't be reset by simply sourcing the output of `set'
-
-lib/sh/strftime.c
-       - don't try to redefine `inline' if it's already defined
-
-                                  11/26
-                                  -----
-execute_cmd.c
-       - fix execute_function to check funcname_a after function execution,
-         since FUNCNAME can be changed or unset within a function
-
-                                  11/27
-                                  -----
-builtins/evalfile.c
-       - make same changes as 11/26, this time to _evalfile
-
-execute_cmd.c
-       - change execute_function to run the return trap after a function
-         completes execution even if the shell is compiled without DEBUGGER
-         defined
-
-trap.c
-       - change reset_or_restore_signal_handlers so that the RETURN trap is
-         not inherited by command substitution when DEBUGGER is not defined
-
-                                  11/30
-                                  -----
-lib/readline/misc.c
-       - fix memory leaks in _rl_free_history_entry and rl_maybe_replace_line
-         caused by not freeing `timestamp' member of history entry
-       - make sure timestamp is initialized to NULL in rl_maybe_save_line
-
-                                  12/1
-                                  ----
-execute_cmd.c
-       - fix execute_function so a function calling `return' will run the
-         RETURN trap, if one's defined
-
-doc/{bash.1,bashref.texi}
-       - fix description of RETURN trap in various places to indicate that it's
-         only inherited by shell functions if function tracing is on globally
-         or has been enabled for that function
-       - fix documentation to indicate that the DEBUG and RETURN traps are
-         inherited under the same conditions
-
-execute_cmd.c
-       - a function does not inherit the RETURN trap if a DEBUG trap is
-         currently running
-
-                                  12/2
-                                  ----
-lib/glob/xmbsrtowcs.c
-       - change xmbsrtowcs to handle the one case where malloc can fail
-         (though it should not matter) -- don't try to free a null pointer
-
-                                  12/9
-                                  ----
-subst.c
-       - fix get_var_and_type to handle var[@], where `var' is a scalar
-         variable, identically to var -- all calling expansions can now
-         handle var[@] like var.  Bug reported by agriffis@gentoo.org
-
-                                  12/10
-                                  -----
-lib/readline/bind.c
-       - make new-style "\M-x" keybindings obey `convert-meta' settings
-         (bug reported by twaugh@redhat.com)
-
-                                  12/14
-                                  -----
-builtins/set.def
-       - added description of `-' option to help text
-
-builtins/shopt.def
-       - fix bug that caused `gnu_errfmt' to not be compiled in unless
-         READLINE is defined
-
-                                  12/16
-                                  -----
-subst.c
-       - fixed a typo in string_extract_verbatim in first call to MBLEN
-         (used `slen - 1' instead of `slen - i')
-
-                                  12/17
-                                  -----
-subst.c
-       - avoid some calls to strlen if the value is only being used for
-         ADVANCE_CHAR and MB_CUR_MAX == 1 (since ADVANCE_CHAR doesn't need
-         it unless multibyte characters are possible)
-       - change string_extract_verbatim so it takes the length of the string
-         as a parameter, so we don't have to recompute the length of the same
-         string over and over again when doing word splitting (that kills if
-         it's a long string)
-
-                                  12/18
-                                  -----
-subst.c
-       - in string_list_dollar_star, make sure to null-terminate the
-         separator if the character is longer than one byte
-
-                                  12/22
-                                  -----
-doc/{bash.1,bashref.texi}
-       - changed text in quoting section explaining that double quotes do
-         not prevent history expansion from taking place, and that backslashes
-         escaping ! are not removed
-
-                                  12/28
-                                  -----
-shell.c
-       - set gnu_error_format to 1 if running under emacs.  This should allow
-         the emacs `next-error' stuff to work, at least for interactive shells
-
-parse.y
-       - change yy_stream_get to set interrupt_immediately before calling
-         getc_with_restart when the shell is interactive.  This avoids the
-         synchronization problem caused by the call to QUIT in read_a_line,
-         which results in the first character after a SIGINT/^C to be
-         dropped
-
-                                  12/30
-                                  -----
-builtins/mkbuiltins.c
-       - changes to write long documentation to arrays as a single string by
-         default, rather than an array of strings -- enabled by default
-       - new option, -S, to restore old behavior of writing multiple strings
-         for long documentation
-       - changes to avoid filenames written when the separate-filenames option
-         (-H) has been supplied being run through gettext
-
-configure.in
-       - new cofiguration option, --enable-single-help-strings (on by default),
-         causes help text to be stored as a single string (or smaller set than
-         one string per line)
-
-builtins/Makefile.in
-       - pass `-S' to mkbuiltins if single-help-strings is turned off
-
-doc/bashref.texi
-       - documented new `single-help-strings' configure option
-
-                                1/3/2005
-                                --------
-jobs.c
-       - make wait_for return a non-zero status if the job or processed
-         waited for is suspended.  Returns 128 + stop signal.  This fixes
-         the problem with `echo one && sleep 5 && echo two' displaying
-         `two' after the sleep is suspended
-
-                                   1/5
-                                   ---
-print_cmd.c
-       - change indirection_level_string so the code duplicates the first
-         character of $PS4 to indicate the indirection level, rather than
-         the first byte
-
-                                   1/8
-                                   ---
-variables.c
-       - new special variable hook function for COMP_WORDBREAKS; sets
-         rl_completer_word_break_characters back to NULL when the variable
-         is unset
-       - change bind_variable_value to understand dynamic variables with
-         assign_function set, and handle them correctly.  If the variable is
-         being appended to, use make_variable_value to create the new
-         value
-       - change bind_variable_internal to understand dynamic variables with
-         assign_function set, and handle them the same way
-       - RANDOM and LINENO now get the integer attribute, so appending works
-         as expected
-       - ditto for HISTCMD, MAILCHECK, OPTIND
-
-lib/readline/display.c
-       - change _rl_make_prompt_for_search to set prompt_physical_chars
-         appropriately
-       - rl_save_prompt and rl_restore_prompt save and restore
-         prompt_prefix_length
-       - change redraw_prompt to use rl_save_prompt and rl_restore_prompt
-       - change rl_restore_prompt to set the `save' variables back to
-         NULL/0 so code can check whether or not the prompt has been saved
-       - change rl_message and rl_clear_message to save and restore the
-         prompt if the caller has not already done it (using a simple
-         semaphore-like variable)
-       - change rl_message to call expand_prompt, so that local_prompt and
-         local_prompt prefix are set before calling the redisplay functions,
-         in case the prompt is longer than a screenwidth (fixes bug
-         reported to debian by epl@unimelb.edu.au)
-
-lib/readline/doc/rltech.texi
-       - make sure to note that rl_save_prompt should be called before
-         rl_message, and rl_restore_prompt before rl_clear_message
-
-pcomplete.c
-       - make sure to save and restore the parser state around the call to
-         execute_shell_function in gen_shell_function_matches.  Fixes bug
-         reported by a050106.1.keeLae3x@captaincrumb.com (cute)
-
-lib/readline/readline.c
-       - fix _rl_dispatch_subseq in the case where we're recursing back up
-         the chain (r == -2) and we encounter a key shadowed by a keymap,
-         but originally bound to self-insert.  Calling rl_dispatch with
-         ANYOTHERKEY as the first argument will call rl_insert, but with
-         ANYOTHERKEY (256) as the char to insert.  Use the shadow keymap
-         and set things up to dispatch to rl_insert with the shadowed key
-         as the argument.  Fixes the bug reported by Thomas Glanzmann
-         (sithglan@stud.uni-erlangen.de)
-
-                                  1/13
-                                  ----
-command.h
-       - new word flag: W_HASQUOTEDNULL
-
-make_cmd.c
-       - new function to allocate a WORD_DESC * without doing anything with a
-         containing string:  alloc_word_desc
-
-make_cmd.h
-       - extern declaration for alloc_word_desc
-
-dispose_cmd.c
-       - new function to just free a WORD_DESC * without freeing the contained
-         string:  dispose_word_desc
-
-dispose_cmd.h
-       - extern declaration for dispose_word_desc
-
-subst.c
-       - change some places to use alloc_word_desc
-       - make same changes to word_list_quote_removal as were made to
-         word_list_split
-       - set W_HASQUOTEDNULL when a word is created with w->word[0] ==
-         CTLNUL and w->word[1] == '\0'
-
-subst.c
-       - parameter_brace_expand_word now returns a WORD_DESC * -- changed
-         callers to understand
-       - parameter_brace_expand_indir now returns a WORD_DESC * -- changed
-         callers to understand
-       - parameter_brace_expand_rhs now returns a WORD_DESC * -- changed
-         callers to understand
-       - remove W_HASQUOTEDNULL from a word's flags when remove_quoted_nulls
-         is called on the word's enclosed string
-
-                                  1/15
-                                  ----
-subst.c
-       - param_expand now returns a WORD_DESC * -- changed callers to
-         understand
-       - parameter_brace_expand now returns a WORD_DESC * -- changed
-         callers to understand
-       - in expand_word_internal, only call remove_quoted_nulls after a word
-         is returned with W_HASQUOTEDNULL
-       - changes to pass W_HASQUOTEDNULL flag out of expand_word_internal;
-         changed callers to call remove_quoted_nulls only if return value has
-         W_HASQUOTEDNULL set.  This is a mostly-complete fix for the
-         long-standing CTLNUL confusion between a quoted null expansion and
-         the expansion of a variable with a literal '\177' in its value
-       - change string_list_dollar_at to compute the separator character the
-         same way as string_list_dollar_star:  using the already-computed
-         values generated in setifs()
-       - when expanding unquoted $*, if $IFS is empty, check whether or not
-         we're eventually going to split the results (e.g., on the rhs of an
-         assignment statement) and concatenate the positional parameters as
-         if the expansion were within double quotes if we're not going to
-         split
-
-tests/iquote.tests
-       - test cases based on old bug reports about the quoted-null vs. 0177
-         problem the recent code fixes
-
-                                  1/16
-                                  ----
-dispose_cmd.c
-       - set w->word to 0 before putting a WORD_DESC * back in the cache in
-         dispose_word_desc; changed callers to delete those assignments
-
-variables.c
-       - change assign_random and get_random_value so that the random number
-         generator only gets re-seeded once in a subshell environment, and
-         assigning a value to RANDOM counts as seeding the generator.  This
-         makes the sequences a little more predictable
-
-                                  1/20
-                                  ----
-lib/readline/history.c
-       - fix replace_history_entry, remove_history to return NULL if
-         passed index is < 0
-
-                                  1/22
-                                  ----
-lib/sh/netconn.c
-       - fix isnetconn() to understand that getpeername can return ENOTCONN
-         to indicate that an fd is not a socket
-
-configure.in
-       - set BUILD_DIR to contain backslashes to escape any spaces in the
-         directory name -- this is what make will accept in targets and
-         prerequisites, so it's better than trying to use double quotes
-       - set SIZE to the appropriate value if some cross-compiling tool
-         chain is being used; `size' by default (can be overridden by
-         SIZE environment variable)
-
-Makefile.in
-       - use $(SIZE) instead of size; set SIZE from configure
-
-                                  1/31
-                                  ----
-arrayfunc.c
-       - in array_value_internal, return NULL right away if the variable's
-         value is NULL, instead of passing a null string to add_string_to_list
-
-                                   2/1
-                                   ---
-jobs.h
-       - new struct to hold stats and counters for child processes and jobs
-       - change some uses of global and static variables to use members of
-         new struct (struct jobstats)
-
-                                   2/2
-                                   ---
-
-jobs.[ch]
-       - change PRUNNING to PALIVE
-       - new define INVALID_JOB
-       - new macro get_job_by_jid(ind), currently expands to jobs[ind]
-       - new define J_JOBSTATE, operates on a JOB * like JOBSTATE operates on
-         a job index
-       - new function, reset_job_indices, called from delete_job if
-         js.j_lastj or js.j_firstj are removed
-       - change various functions to keep counters and stats in struct jobstats
-
-pcomplete.c, builtins/common.c, builtins/{exit,fg_bg,jobs,kill,wait}.def
-       - change global variables (e.g., job_slots) to struct members
-         (e.g., js.j_jobslots)
-       - use INVALID_JOB define where appropriate
-       - use get_job_by_jid and J_JOBSTATE where appropriate
-
-trap.c
-       - change reset_or_restore_signal_handler to not free the exit trap
-         string if the function pointer is reset_signal, which is used when
-         the trap strings shouldn't be freed, like in command substitution
-
-                                   2/4
-                                   ---
-jobs.c
-       - new function, realloc_jobs_list, copies jobs array to newly-allocated
-         memory shrinking (or growing) size to have next multiple of JOB_SLOTS
-         greater than js.j_njobs
-       - change compact_jobs_list to just call reap_dead_jobs and then
-         realloc_jobs_list, simplifying it considerably
-       - discard_pipeline now returns `int':  the number of processes freed
-       - slightly changed the logic deciding whether or not to call
-         compact_jobs_list:  now non-interactive shells will compact the
-         list if it reaches MAX_JOBS_IN_ARRAY in size
-
-parse.y
-       - move test for backslash-newline after pop_string in shell_getc so
-         that things like
-
-               ((echo 5) \
-                (echo 6))
-
-         work right
-
-                                   2/8
-                                   ---
-jobs.h
-       - new structs for holding status of exited background processes, as
-         POSIX specifies
-       - new job flag: J_ASYNC
-
-jobs.c
-       - new functions to manipulate struct holding status of exited
-         background processes
-       - new members in struct jobstats to hold pointer to last created job
-         and last created asynchronous job
-       - initialize js.c_childmax in initialize_job_control
-       - if the `async' arg to stop_pipeline is non-null, set the J_ASYNC
-         flag in the job struct
-       - set js.j_last_made_job and js.j_last_asynchronous_job in
-         stop_pipeline
-       - new function: find_last_proc, returns the PROCESS * to the last proc
-         in a job's pipeline
-       - changed find_last_pid to call find_last_proc
-       - change delete_job to call bgp_add on the last proc of the job being
-         deleted
-       - change delete_all_jobs and wait_for_background_pids to call bgp_clear
-
-                                   2/9
-                                   ---
-jobs.c
-       - change wait_for_single_pid to look for pid in bgpids.list (using
-         bgp_search()) if find_pipeline returns NULL
-
-                                  2/10
-                                  ----
-support/shobj-conf
-       - change the solaris-gcc stanza so that it auto-selects the appropriate
-         options for ld depending on which `ld' gcc says it's going to run
-
-                                  2/11
-                                  ----
-jobs.h
-       - add support for PS_RECYCLED as a process state, add PRECYCLED macro
-         to test it.  Change PALIVE and PRUNNING macros to not count processes
-         in PS_RECYCLED state
-
-execute_cmd.c
-       - restore use of last_pid as sentinel value; use NO_PID as sentinel
-         only if RECYCLES_PIDS is defined
-
-jobs.c
-       - change find_job to return a pointer to the PROCESS the desired pid
-         belongs to, analogous to find_pipeline returning pointer to JOB
-       - change find_job callers to add extra argument
-       - change running_only arguments to find_pipeline and find_job to
-         alive_only, since we don't want recycled pids returned here and it
-         better describes the result
-       - new function find_process, calls find_pipeline and searches the
-         returned pipeline for the PROCESS * describing the desired pid
-       - in make_child, if fork() returns the same pid as the value of
-         last_asynchronous_pid when RECYCLES_PIDS is defined, avoid pid
-         aliasing by resetting last_asynchronous_pid to 1
-       - use PRUNNING instead of child->running, since we, for the most
-         part, don't want to consider recycled pids (e.g., in make_child())
-       - call find_process instead of find_pipeline in waitchld()
-       - use PEXITED(p) instead of testing p->running == PS_DONE
-       - in make_child, call bgp_delete to remove a just-created pid from the
-         last of saved pid statuses
-       - in add_process, check whether or not pid being added is already in
-         the_pipeline or the jobs list (using find_process) and mark it as
-         recycled if so
-       - This set of fixes mostly came from Pierre Humblet
-         <pierre.humblet@ieee.org> to fix pid aliasing and reuse problems on
-         cygwin
-
-variables.c
-       - set $_ from the environment if we get it there, set to $0 by
-         default if not in env
-
-doc/{bashref.texi,bash.1}
-       - a couple of clarifying changes to the description of $_ based on
-         comments from Glenn Morris <gmorris+mail@ast.cam.ac.uk>
-
-                                  2/15
-                                  ----
-shell.c
-       - use strstr instead of strmatch when checking whether $EMACS contains
-         `term' -- simpler and faster
-
-                                  2/18
-                                  ----
-builtins/cd.def
-       - implement posix requirement that `pwd -P' set $PWD to a directory
-         name containing no symlinks
-       - add new function, setpwd(), just sets (and changes exported value)
-         of PWD
-
-doc/bashref.texi
-       - add note to posix mode section about pwd -P setting $PWD
-
-doc{bash.1,bashref.texi}
-       - added note that BASH_ARGC and BASH_ARGV are only set in extended
-         debug mode
-       - expand description of extdebug option to include everything changed
-         by extended debug mode
-
-                                  2/19
-                                  ----
-pathexp.h
-       - new flag macro, FNMATCH_IGNCASE, evaluates to FNM_CASEFOLD if the
-         match_ignore_case variable is non-zero
-
-execute_cmd.c
-       - new variable, match_ignore_case
-       - change call to strmatch() in execute_case_command so it includes
-         FNMATCH_IGNCASE
-
-test.c
-       - change call to strmatch() in patcomp() so that pattern matching
-         calls for [[ ... ]] obey the match_ignore_case variable
-
-lib/sh/shmatch.c
-       - if match_ignore_case is set, enable REG_ICASE in the regexp match
-         flags
-
-builtins/shopt.def
-       - new settable option, `nocasematch', controls the match_ignore_case
-         variable.  Currently alters pattern matching for case and [[ ... ]]
-         commands (==, !=, and =~ operators)
-
-doc/{bashref.texi,bash.1}
-       - updated descriptions of [[ and case to include reference to
-         nocasematch option
-
-                                  2/22
-                                  ----
-builtins/mkbuiltins.c
-       - add `times' to the list of posix special builtins
-
-                                  2/23
-                                  ----
-builtins/cd.def
-       - posix mode no longer turns on effect of -P option on $PWD if a
-         directory is chosen from CDPATH
-
-doc/bashref.texi
-       - clarified that in posix mode, reserved words are not alias expanded
-         only in a reserved word context
-       - removed item about cd, $CDPATH, and -P from posix mode section
-
-                                  2/24
-                                  ----
-builtins/reserved.def
-       - minor cleanups to the description of `if'
-
-                                   3/2
-                                   ---
-subst.c
-       - change list_string and get_word_from_string to explicitly treat an
-         IFS character that is not space, tab, or newline *and any adjacent
-         IFS white space* as a single delimiter, as SUSv3/XPG6 says
-
-builtins/read.def
-       - check whether or not the number of fields is exactly the same as
-         the number of variables instead of just assigning the rest of the
-         line (minus any trailing IFS white space) to the last variable.
-         This parses a field and checks whether or not it consumes all of
-         the input (including any trailing field delimiters), falling back
-         to the previous behavior if it does not.  This is what POSIX.2
-         specifies, I believe (and the consensus of the austin-group list).
-         This requires a few tests in read.tests to be changed: backslashes
-         escaping IFS whitespace characters at the end of input cause the
-         whitespace characters to be preserved in the value assigned to the
-         variable, and the trailing non-whitespace field delimiter issue
-
-                                   3/7
-                                   ---
-configure.in
-       - add -D_POSIX_SOURCE to the LOCAL_CFLAGS for Interix
-
-                                   3/8
-                                   ---
-bashline.c
-       - make bash_directory_expansion a void function, since it doesn't have
-         any return value
-
-                                   3/9
-                                   ---
-builtins/read.def
-       - when testing for a pipe, use `fd' instead of hard-coding 0, since we
-         can read from other file descriptors now
-
-lib/sh/zread.c
-       - in zsyncfd, only set lind and lused to 0 if the lseek succeeds.
-         If the lseek fails, we might steal input from other programs, but
-         a failed lseek won't cause us to erroneously discard input
-
-                                  3/11
-                                  ----
-builtins/evalstring.c
-       - don't allow parse_and_execute to short-circuit and call exec() if
-         the command's return value is being inverted
-
-                                  3/15
-                                  ----
-builtins/printf.def
-       - new macro PC to call putchar and increment number of chars printed -
-         fixes bug in computation of value for %n format char
-       - `tw' is now a global var so printstr can modify it using PC()
-       - convert PF macro to use asprintf into a local buffer
-         Preparation for printf -v var
-       - add code to add the text printed to a `variable buffer' if -v option
-         supplied.  The buffer grows as needed
-       - printf now takes a `-v var' option to put the output into the variable
-         VAR rather than sending it to stdout.  It does not:
-               print partial output on error (e.g., format string error)
-               handle NULs in the variable value, as usual
-
-                                  3/16
-                                  ----
-parse.y
-       - fix bug in prompt string decoding that caused a core dump when PS1
-         contained \W and PWD was unset (null pointer deref)
-
-builtins/printf.def
-       - changed -v var behavior so it stores partial output into the named
-         variable upon an error
-
-                                  3/24
-                                  ----
-lib/readline/bind.c
-       - bool_to_int now takes a `const char *' argument
-
-support/{printenv,recho,zecho}.c
-       - include config.h
-       - include "bashansi.h" for appropriate extern function declarations
-
-configure.in
-       - on MacOS X 10.4, compensate for loader not allowing static library
-         to override existing system dynamic library when compiling -dynamic
-         (affects readline and history libraries); so use absolute pathname
-         instead of -lreadline as library name
-
-lib/glob/{glob,sm_loop,smatch}.c
-       - make sure to cast arguments to (char *)  or (unsigned char *) as
-         appropriate to avoid gcc4 warnings
-
-lib/glob/smatch.c
-       - collsym (single-byte version) now takes a (CHAR *) first argument to
-         match callers; cast argument to strncmp appropriately
-
-lib/sh/snprintf.c
-       - fix ldfallback and dfallback to handle width and precision specs in
-         the format passed to sprintf()
-       - fix STAR_ARGS macro to deal with negative field widths and precisions
-
-                                  3/25
-                                  ----
-builtins/printf.def
-       - since a negative precision in a "x.x[fFgGeE]" format specifier should
-         be allowed but treated as if the precision were missing, let it
-         through
-
-lib/sh/snprintf.c
-       - fix * code to deal with a negative precision by treating it as if
-         the `.' and any digit string in the precision had not been specified
-       - fix format parsing code to deal with a negative inline precision,
-         e.g., "%4.-4f" by treating it as if the `'. and any digit string in
-         the precision had not been specified
-       - a `+' in a format specifier should only act as a flag if it comes
-         before a `.' (otherwise it is ignored)
-
-lib/readline/vi_mode.c
-       - new function, rl_vi_rubout, to rl_rubout as rl_vi_delete is to
-         rl_delete; saves deleted text for possible reinsertion as with any
-         vi-mode `text modification' command (fixes problem with `X' reported
-         by beat.wieland@gmx.ch)
-
-lib/readline/vi_keymap.c
-       - bind `X' in vi command mode to rl_vi_rubout
-
-lib/readline/funmap.c
-       - add a bindable `vi-rubout' command, runs rl_vi_rubout
-
-lib/readline/text.c
-       - rewrote internals of _rl_rubout_char to make structure cleaner
-
-lib/readline/{complete,text}.c
-       - changed code to remove #ifdef HANDLE_MULTIBYTE where possible
-
-                                  3/28
-                                  ----
-lib/readline/examples/rl.c
-       - include <sys/stat.h> instead of posixstat.h if READLINE_LIBRARY not
-         defined
-
-subst.c
-       - fix mbstrlen to treat invalid multibyte sequences as sequences of
-         single-byte characters
-
-                                   4/8
-                                   ---
-configure.in
-       - default SIZE to `:' if cross-compiling and an appropriate size for
-         the target is not found
-
-                                  4/11
-                                  ----
-subst.c
-       - change match_upattern and match_wpattern to check whether or not the
-         supplied pattern matches anywhere in the supplied string, prefixing
-         and appending the pattern with `*' if necessary.  If it doesn't we
-         can short-circuit immediately rather than waste time doing up to
-         N-1 unsuccessful calls to strmatch/wcsmatch (which kills for long
-         strings, even if the pattern is short)
-
-                                  4/12
-                                  ----
-configure.in
-       - make sure the special case for MacOS X 10.4 only kicks in if the
-         `--with-installed-readline' option isn't supplied
-
-lib/readline/{callback,readline,signals}.c
-       - make sure rl_prep_term_function and rl_deprep_term_function aren't
-         dereferenced if NULL (as the documentation says)
-
-builtins/mkbuiltins.c
-       - don't bother with the special HAVE_BCOPY code; just use straight
-         assignments
-
-builtins/ulimit.def
-       - use _POSIX_PIPE_BUF in pipesize() if it's defined and PIPE_BUF is
-         not
-
-                                  4/13
-                                  ----
-execute_cmd.c
-       - add cm_function_def to the list of control structures for which
-         child processes are forked when pipes come in or out
-
-                                  4/14
-                                  ----
-builtins/read.def
-       - make sure the ^As added for internal quoting are not counted as
-         characters read when -n is supplied
-
-                                  4/20
-                                  ----
-redir.c
-       - fix redir_open so that the repeat open on failure that AFS support
-         adds restores the correct value of errno for any error message
-
-                                  4/26
-                                  ----
-
-Makefile.in
-       - make sure mksignames and mksyntax are invoked with the $(EXEEXT)
-         extension
-
-                                  4/28
-                                  ----
-lib/readline/readline.h
-       - new state variable: RL_STATE_CALLBACK, means readline is using the
-         callback interface
-
-lib/readline/callback.c
-       - set RL_STATE_CALLBACK in rl_callback_handler_install, unset in
-         rl_callback_handler_remove
-
-                                  4/29
-                                  ----
-config-top.h
-       - DONT_REPORT_SIGPIPE is now on by default, since it apparently
-         interferes with scripts
-
-configure.in
-       - arrange things so PGRP_PIPE is defined on Linux-2.4+ and version 3
-         kernels (ones that apparently schedule children to run before their
-         parent)
-
-                                  4/30
-                                  ----
-builtins/caller.def
-       - add call to no_options, so it can handle `--' option
-
-doc/{bash.1,bashref.texi}
-       - note explicitly that test, :, true, and false don't understand --
-         as meaning the end of options
-
-                                   5/7
-                                   ---
-support/shobj-conf
-       - darwin 8 needs the same LDFLAGS setting as darwin 7
-
-parse.y
-       - in save_parser_state, make sure we cast the return value from
-         xmalloc() to the right type
-       - remove casts to (char *) in calls to yyerror()
-
-lib/readline/signals.c
-       - make SIGQUIT and SIGALRM code conditional on their definition
-       - use raise() to send a signal if we don't have kill()
-
-lib/readline/display.c
-       - some MS-DOS and MINGW changes from the cygwin and mingw folks
-
-config.h.in
-       - add HAVE_PWD_H for <pwd.h>
-       - add HAVE_FCNTL, HAVE_KILL for respective system calls
-       - add HAVE_GETPW{ENT,NAM,UID} for passwd functions
-
-configure.in
-       - add check for <pwd.h>
-       - add checks for fcntl, kill system calls
-       - add checks for getpw{ent,nam,uid} C library functions
-       - pass a flag indicating we're cross compiling through to
-         CFLAGS_FOR_BUILD in Makefile.in
-
-lib/readline/complete.c
-       - guard inclusion of <pwd.h> with HAVE_PWD_H
-       - don't provide a missing declaration for getpwent if we don't have it
-       - guard calls to {get,end}pwent with HAVE_GETPWENT
-
-lib/readline/shell.c
-       - guard inclusion of <pwd.h> with HAVE_PWD_H
-       - guard inclusion of <fcntl.h> with HAVE_FCNTL_H
-       - don't provide a missing declaration for getpwuid if we don't have it
-       - guard calls to getpwuid with HAVE_GETPWUID
-       - don't bother with body of sh_unset_nodelay_mode if we don't have
-         fcntl
-
-lib/tilde/tilde.c
-       - guard inclusion of <pwd.h> with HAVE_PWD_H
-       - guard calls to getpw{nam,uid} with HAVE_GETPW{NAM,UID}
-       - guard calls to {get,end}pwent with HAVE_GETPWENT
-
-Makefile.in,builtins/Makefile.in
-       - @CROSS_COMPILE@ is substituted into CFLAGS_FOR_BUILD (equal to
-         -DCROSS_COMPILING if bash is being cross-compiled)
-
-                                   5/9
-                                   ---
-aclocal.m4
-       - print version as `0.0' in RL_LIB_READLINE_VERSION if the
-         `rl_gnu_readline_p' variable isn't 1 (accept no imitations)
-
-                                  5/11
-                                  ----
-lib/readline/rlprivate.h
-       - definition of a readline `search context', to be use for incremental
-         search initially and other types of search later.  Original from
-         Bob Rossi as part of work on incremental searching problems when
-         using callback interface
-
-lib/readline/isearch.c
-       - functions to allocate and free search contexts
-       - function to take a search context and a character just read and
-         `dispatch' on it:  change search parameters, add to search string,
-         search further, etc.
-       - isearch is now completely context-driven:  a search context is
-         allocated and passed to the rest of the functions
-
-                                  5/12
-                                  ----
-lib/readline/isearch.c
-       - an additional `isearch cleanup' function that can be called from
-         the callback interface functions when the search is to be terminated
-       - an additional `isearch callback' function that can be called from
-         rl_callback_read_char when input is available
-       - short-circuit from rl_search_history after initialization if
-         the callback interface is being used
-
-lib/readline/callback.c
-       - in rl_callback_read_char(), if RL_STATE_ISEARCH is set, call
-         _rl_isearch_callback to read the character and dispatch on it.
-         If RL_STATE_ISEARCH is unset when that call returns, and there is
-         input pending, call rl_callback_read_char() again so we don't
-         have to wait for new input to pick it up
-
-support/shobj-conf,configure.in
-       - add support for dragonfly bsd, the same as freebsd
-
-                                5/13-5/15
-                                ---------
-lib/readline/callback.c
-       - support for readline functions to `register' a function that will
-         be called when more input is available, with a generic data
-         structure to encapsulate the arguments and parameters.  Primarily
-         intended for functions that read a single additional character,
-         like quoted-insert
-       - support for callback code reading numeric arguments in a loop,
-         using readline state and an auxiliary variable
-       - support for callback code performing non-incremental searches using
-         the same search context struct as the isearch code
-
-lib/readline/{callback,display}.c
-       - if a callback function sets `_rl_redisplay_wanted', the redisplay
-         function will be called as soon as it returns
-
-lib/readline/input.c
-       - changes to _rl_read_mbchar to handle reading the null multibyte
-         character and translating it into '\0'
-
-lib/readline/misc.c
-       - break rl_digit_loop() into component functions that can be called
-         individually from the callback code more easily
-       - share some of the functions with rl_digit_loop1() in vi_mode.c
-
-lib/readline/readline.h
-       - change the version #defines to reflect readline 5.1
-
-lib/readline/search.c
-       - break code into smaller functions that can be composed to work with
-         the callback code more easily
-
-lib/readline/text.c
-       - in rl_quoted_insert(), don't mess around with the tty signals if
-         running in `callback mode'
-
-lib/readline/vi_mode.c
-       - changed set-mark, goto-mark, change-char, and char-search to work
-         when called by callback functions
-
-                                  5/17
-                                  ----
-
-lib/readline/rlprivate.h
-       - new struct declaration for a `reading key sequence' context
-
-lib/readline/readline.c
-       - new variable, _rl_dispatching_keymap, keeps track of which keymap
-         we are currently searching
-       - functions to allocate and deallocate contexts for reading multi-char
-         key sequences
-
-                                  5/18
-                                  ----
-lib/readline/rlprivate.h
-       - new struct defining a context for multiple-key key sequences (the
-         base case is escape-prefixed commands)
-
-lib/readline/readline.c
-       - change structure of _rl_dispatch_subseq to allow for callback code
-         to use it - rudimentary support for supporting the existing
-         recursion using a stack of contexts, each with a reference to the
-         previous
-       - fix so that ^G works when in callback mode
-
-lib/readline/callback.c
-       - call the appropriate multiple-key sequence callback if the state is
-         set
-
-                                  5/19
-                                  ----
-lib/readline/readline.c
-       - broke code from _readline_internal_char after call to rl_dispatch
-         out into separate function:  _rl_internal_char_cleanup, callable by
-         other parts of the code
-       - change _rl_internal_char_cleanup to unset _rl_want_redisplay after
-         it calls (*rl_redisplay_func)
-
-lib/readline/callback.c
-       - call _rl_internal_char_cleanup from rl_callback_read_char when
-         appropriate
-
-                                  5/24
-                                  ----
-lib/readline/callback.c
-       - use _rl_dispatch_callback and a chain of _rl_keyseq_contexts to
-         simulate the recursion used to decode multicharacter key sequences
-         (even things like ESC- as meta-prefix)
-       - call setjmp in rl_callback_read_char to give things like rl_abort
-         a place to jump, since the saved location in readline() will not
-         be valid
-       - keep calling _rl_dispatch_callback from rl_callback_read_char while
-         we are still decoding a multi-key key sequence
-       - keep calling readline_internal_char from rl_callback_read_char while
-         we are reading characters from a macro
-
-lib/readline/macro.c
-       - use a slightly different strategy upon encountering the end of a macro
-         when using the callback interface:  when the last character of a
-         macro is read, and we are reading a command, pop the macro off the    
-         stack immediately so the loop in rl_callback_read_char terminates
-         when it should
-
-lib/readline/readline.c
-       - if longjmp() is called and we end up at the saved location while
-         using the callback interface, just return -- don't go back into a
-         blocking read
-       - new function to dispose a chain of rl_keyseq_cxts
-       - only read new input in _rl_dispatch_callback if the KSEQ_DISPATCHED
-         flag is not set in the current keyseq context -- if it is, we are
-         traversing the chain back up and should use what we already saved
-       - use -3 as a magic value from _rl_dispatch_subseq to indicate that
-         we're allocating a new context and moving downward in the chain
-         (a special return value for the benefit of _rl_dispatch_callback)
-
-lib/readline/rlprivate.h
-       - new extern declaration for _rl_keyseq_chain_dispose
-
-                                   6/1
-                                   ---
-builtins/read.def
-       - fixed a bug that occurred when reading a set number of chars and
-         the nth char is a backslash (read one too many).  Bug reported by
-         Chris Morgan <chmorgan@gmail.com>
-
-execute_cmd.c
-       - fix execute_builtin so the `unset' builtin also operates on the
-         temporary environment in POSIX mode (as well as source and eval),
-         so that unsetting variables in the temporary environment doesn't
-         leave them set when unset completes.  Report by Eric Blake
-         <ebb9@byu.net>
-
-array.c
-       - fix from William Park for array_rshift when shifting right on an
-         empty array -- corrects calculation of array->max_index
-
-builtins/exec.def
-       - if an exec fails and the execfail option is set, don't call
-         restart_job_control unless the shell is interactive or job_control
-         is set
-
-jobs.c
-       - add a run-time check for WCONTINUED being defined in header files
-         but rejected with EINVAL by waitpid().  Fix from Maciej Rozycki
-         <macro@linux-mips.org>
-
-                                  6/20
-                                  ----
-bashhist.c
-       - make sure calls to sv_histchars are protected by #ifdef BANG_HISTORY
-       - ditto for calls to history_expand_line_internal
-
-                                  6/23
-                                  ----
-doc/bashref.texi
-       - remove extra blank lines in @menu constructs
-
-variables.c
-       - assign export_env to environ (extern char **) every time it changes
-         (mostly in add_to_export_env define), so maybe getenv will work on
-         systems that don't allow it to be replaced
-
-                                  6/29
-                                  ----
-bashline.c
-       - in bash_directory_completion_hook, be careful about not turning `/'
-         into `//' and `//' into `///' for benefit of those systems that treat
-         `//' as some sort of `network root'.  Fix from Eric Blake
-         <ebb9@byu.net>
-
-lib/readline/complete.c
-       - in to_print, do the right thing after stripping the trailing slash
-         from full_pathname: // doesn't turn into /, and /// doesn't become
-         //.  Fix from Eric Blake <ebb9@byu.net>
-
-                                  6/30
-                                  ----
-lib/malloc/trace.c
-       - include <unistd.h> if it's available for a definition of size_t
-
-jobs.c
-       - in wait_for, if a child process is marked as running but waitpid()
-         returns -1/ECHILD (e.g., when the bash process is being traced by
-         strace), make sure to increment c_reaped when marking the child as
-         dead
-       - in without_job_control, make sure to close the pgrp pipe after
-         calling start_pipeline
-
-                                   7/1
-                                   ---
-Makefile.in
-       - only remove pathnames.h when the other files created by running
-         configure are removed (e.g., Makefile).  Fix from William Park
-
-lib/sh/shquote.c
-       - since backslash-newline disappears when within double quotes, don't
-         add a backslash in front of a newline in sh_double_quote.  Problem
-         reported by William Park
-
-jobs.c
-       - in notify_of_job_status, don't print status messages about
-         terminated background processes unless job control is active
-
-bashhist.c
-       - new variable, hist_last_line_pushed, set to 0 in really_add_history
-         (used by `history -s' code)
-
-bashhist.h
-       - new extern declaration for history -s
-
-builtins/history.def
-       - don't remove last history entry in push_history if it was added by
-         a call to push_history -- use hist_last_line_pushed as a sentinel
-         and set it after adding history entry.  This allows multiple
-         calls to history -s to work right:  adding all lines to the history
-         rather than deleting all but the last.  Bug reported by Matthias
-         Schniedermeyer <ms@citd.de>
-       - pay attention to hist_last_line_pushed in expand_and_print_history()
-         so we don't delete an entry pushed by history -s
-
-                                   7/4
-                                   ---
-print_cmd.c
-       - fix print_arith_for_command to not print so many blanks between
-         expressions in ((...))
-
-command.h
-       - new word flag: W_DQUOTE.  Means word should be treated as if double
-         quoted
-
-make_cmd.c
-       - add W_DQUOTE to word flags in make_arith_for_expr
-
-parse.y
-       - add W_DQUOTE to word flags for (( ... )) arithmetic commands
-
-subst.c
-       - don't perform tilde expansion on a word with W_DQUOTE flag set
-       - don't perform process substitution on a word with W_DQUOTE flag set
-
-arrayfunc.c
-       - expand an array index within [...] the same way as an arithmetic
-         expansion between (( ... ))
-
-lib/readline/input.c
-       - use getch() instead of read() on mingw
-
-lib/readline/readline.c
-       - add a few key bindings for the arrow keys on mingw
-
-lib/readline/rldefs.h
-       - if on mingw, define NO_TTY_DRIVER
-
-lib/readline/rltty.c
-       - compile in the stub functions for _rl_{disable,restore}_tty_signals
-         if on mingw
-       - compile in stub function for rl_restart_output on mingw
-       - make sure enough functions and macros are defined to compile if
-         NO_TTY_DRIVER is defined (lightly tested - builds on MacOS X, at
-         least)
-
-                                   7/7
-                                   ---
-command.h
-       - add a `flags' member to the PATTERN_LIST structure
-
-make_cmd.c
-       - intialize the `flags' member of a PATTERN_LIST when it's created
-
-builtins/psize.c
-       - protect extern declaration of errno with usual #ifdef errno
-
-configure.in, variables.c
-       - changes for QNX 6.x
-
-                                   7/9
-                                   ---
-parse.y
-       - fix parse_matched_pair to handle single and double quoted strings
-         inside old-style command substitution (``) since they can each
-         quote the ` and embedded $-expansions.  Report by Eric Blake
-         <ebb9@byu.net>
-
-{configure,Makefile}.in
-       - TILDE_LIB is now substituted into Makefile by configure
-
-configure.in
-       - if configuring --with-installed-readline on cygwin, set TILDE_LIB
-         to the empty string to avoid multiply-defined symbols.  Cygwin
-         doesn't allow undefined symbols in dynamic libraries.  Report by
-         Eric Blake <ebb9@byu.net>
-
-                                  7/11
-                                  ----
-input.c
-       - in duplicate_buffered_stream, don't call free_buffered_stream if the
-         two buffered streams share the same b_buffer object (e.g., if they
-         had already been duplicated with a previous call).  Fixes Debian bug
-         reported by eero17@bigfoot.com
-
-                                  7/12
-                                  ----
-shell.c
-       - make set_shell_name more resistant to a NULL argument
-       - in bind_args, use < instead of != when counting the arguments and
-         making the arg list
-       - in main(), make sure arg_index is not initialized to a value greater
-         than argc
-
-                                  7/14
-                                  ----
-lib/readline/display.c
-       - in expand_prompt, don't set the location of the last invisible
-         char if the sequence is zero length  (\[\])
-
-                                  7/15
-                                  ----
-doc/{bash.1,bashref.texi}
-       - document that the shell uses $TMPDIR when creating temporary files
-
-                                  7/20
-                                  ----
-[bash-3.1-alpha1 frozen]
-
-                                  7/29
-                                  ----
-builtins/evalstring.c
-       - make sure that parse_and_execute saves and restores the value of
-         loop_level, so loops in sourced scripts and eval'd strings don't
-         mess up the shell's parser state
-
-bashline.c
-       - change command_subst_completion_function to suppress appending
-         any character to a unique completion, instead of a space, unless
-         the last word in the quoted command substitution completes to a
-         directory name.  In that case we append the expected slash
-
-                                   8/1
-                                   ---
-builtins/printf.def
-       - make sure variables are initialized if their values are tested later
-
-[bash-3.1-alpha1 updated and re-frozen]
-
-                                   8/2
-                                   ---
-variables.c
-       - make sure to call stifle_history with an `int' instead of an intmax_t.
-         Sometimes it makes a difference
-
-                                   8/3
-                                   ---
-[bash-3.1-alpha1 released]
-
-support/mksignames.c
-       - add `SIGSTKFLT' (RHE3)
-       - add `SIGXRES' (Solaris 9)
-
-                                   8/4
-                                   ---
-builtins/ulimit.def
-       - fix typo to make `x' the right option for locks
-       - add new options to short help synopsis
-
-variables.c
-       - use get_variable_value instead of direct reference to value_cell
-         in make_variable_value when appending to the current value, so
-         references to array variables without subscripts will be equivalent
-         to element 0
-
-lib/readline/text.c
-       - rewrote rl_change_case to correctly change the case of multibyte
-         characters where appropriate
-
-                                   8/5
-                                   ---
-configure.in
-       - remove call to obsolete macro AC_ACVERSION
-       - remove special calls to AC_CYGWIN and AC_MINGW32; AC_CANONICAL_HOST
-         takes care of those cases
-
-general.h
-       - include `chartypes.h' for definition of ISALPHA
-       - fix definitions of ABSPATH and RELPATH for cygwin
-       - fix definition of ISDIRSEP for cygwin to allow backslash as a
-         directory name separator
-
-                                   8/9
-                                   ---
-builtins/setattr.def
-       - when setting a variable from the temporary environment in
-         set_var_attribute  (e.g., `LC_ALL=C export LC_ALL'), make sure to
-         call stupidly_hack_special_variables after binding the variable in
-         the current context
-
-builtins/printf.def
-       - make sure to call stupidly_hack_special_variables if using `printf -v'
-         to put formatted output in a shell variable
-
-                                  8/11
-                                  ----
-support/shobj-conf
-       - new variable: SHLIB_LIBPREF, prefix for shared library name (defaults
-         to `lib'
-       - new variable: SHLIB_DLLVERSION, used on Cygwin to set the library
-         version number
-       - new variable: SHLIB_DOT, separator character between library name and
-         suffix and version information (defaults to `.')
-       - new stanza for cygwin to generate windows-compatible dll
-
-                                  8/14
-                                  ----
-variables.c
-       - new special variable function for Cygwin, so the export environment
-         is remade when HOME is changed.  The environment is the only way to
-         get information from the shell to cygwin dlls, for instanace, when
-         bash is compiled to use an already-installed libreadline
-
-variables.h
-       - new extern declaration for sv_home
-
-                                  8/15
-                                  ----
-lib/readline/display.c
-       - call init_line_structures from rl_redisplay if vis_lbreaks == 0
-         to avoid consequences of a poorly-timed SIGWINCH
-
-                                  8/16
-                                  ----
-subst.c
-       - fix logic for performing tilde expansion when in posix mode (don't
-         rely on W_TILDEEXP flag always being set, because it won't be when
-         expanding the RHS of assignment statement).  Use W_TILDEEXP only
-         when deciding to expand a word marked as W_ASSIGNMENT that doesn't
-         precede a command name
-
-                                  8/17
-                                  ----
-execute_cmd.c
-       - in execute_function, when subshell == 1, don't short-cut by using
-         the command contained in the group command -- if you do, any
-         redirections attached to the group command (function) don't get
-         executed
-
-general.h
-       - new #define, FS_READABLE, indicates file is readable by current
-         user
-
-findcmd.c
-       - rewrote file_status to use S_xxx POSIX file mode bits and to add
-         support for FS_READABLE (affects ./source and searching $PATH for
-         scripts whose names are supplied as arguments on the command line)
-       - change find_path_file to look for readable files -- source requires
-         it
-       - change find_in_path_element to do the right thing when FS_READABLE
-         is supplied as a flag
-
-doc/bashref.texi
-       - remove note about posix non-compliance in `.': we now require and
-         look for readable files when searching $PATH
-
-                                  8/20
-                                  ----
-subst.c
-       - fix setifs to handle case where passed variable is non-zero but
-         v->value == 0 (as in an unset local variable); treat IFS as unset
-         in this case
-
-jobs.c
-       - in kill_pid, if asked to killpg a process or pgrp whose pgrp is
-         recorded as the same as the shell's, just call killpg and let the
-         chips fall where they may -- there may be other processes in that
-         pgrp that are not children of the shell, so killing each process
-         in the pipeline will not do a complete job, and killpg'ing each
-         such process will send too many signals in the majority of cases
-
-builtins/cd.def
-       - in posix mode, pwd needs to check that the value it prints and `.'
-         are the same file
-
-builtins/read.def
-       - if reading input from stdin in a non-interactive shell and calling
-         `read', call sync_buffered_stream to seek backward in the input
-         stream if necessary (XXX - should we do this for all shell builtins?)
-
-                                  8/23
-                                  ----
-builtins/cd.def
-       - in posix mode, if canonicalization of the absolute pathname fails
-         because the path length exceeds PATH_MAX, but the length of the passed
-         (non-absolute) pathname does not, attempt the chdir, just as when
-         not in posix mode
-
-builtins/type.def
-       - don't have describe_command call sh_makepath if the full path found
-         is already an absolute pathname (sh_makepath will stick $PWD onto the
-         front of it)
-
-                                  8/24
-                                  ----
-
-jobs.c
-       - in posix mode, don't have start_job print out and indication of
-         whether the job started by `bg' is the current or previous job
-       - change start_job to return success if a job to be resumed in the
-         background is already running.  This means that bg won't fail when
-         asked to bg a background job, as SUSv3/XPG6 requires
-       - new function, init_job_stats, to zero out the global jobstats struct
-
-{jobs,nojobs}.c
-       - change kill_pid to handle pids < -1 by killing process groups
-
-jobs.h
-       - extern declaration for init_job_stats
-
-lib/readline/history.c
-       - check whether or not the history list is null in remove_history
-
-builtins/history.def
-       - delete_last_history is no longer static so fc builtin can use it
-
-builtins/fc.def
-       - use free_history_entry in fc_replhist instead of freeing struct
-         members individually
-       - call delete_last_history from fc_replhist instead of using inline
-         code
-       - if editing (-l not specified), make sure the fc command that caused
-         the editing is removed from the history list, as POSIX specifies
-
-builtins/kill.def
-       - just call kill_pid with any pid argument and let it handle pids < -1
-         This is the only way to let kill_pid know whether a negative pid or
-         a job spec was supplied as an argument to kill
-
-builtins/fg_bg.def
-       - force fg_bg to return EXECUTION_SUCCESS explicitly if called by bg
-         and start_job returns successfully
-       - bg now returns success only if all the specified jobs were resumed
-         successfully
-
-execute_cmd.c
-       - call init_job_stats from initialize_subshell to zero out the global
-         job stats structure
-
-                                  8/25
-                                  ----
-bashline.c
-       - change vi_edit_and_execute_command to just call vi when in posix
-         mode, instead of checking $FCEDIT and $EDITOR
-
-lib/readline/search.c
-       - if in vi_mode, call rl_free_undo_list in make_history_line_current
-         to dispose of undo list accumulated while reading the search string
-         (if this isn't done, since vi mode leaves the current history
-         position at the entry which matched the search, the call to
-         rl_revert_line in rl_internal_teardown will mangle the matched
-         history entry using a bogus rl_undo_list)
-       - call rl_free_undo_list after reading a non-incremental search string
-         into rl_line_buffer -- that undo list should be discarded
-
-lib/readline/rlprivate.h
-       - add UNDO_LIST * member to search context struct
-
-lib/readline/isearch.c
-       - initialize UNDO_LIST *save_undo_list member of search context struct
-
-                                  8/27
-                                  ----
-lib/readline/bind.c
-       - change rl_parse_and_bind to strip whitespace from the end of a
-         variable value assignment before calling rl_variable_bind
-
-doc/bash.1,lib/readline/doc/{rluser.texi,readline.3}
-       - clarified the language concerning parsing values for boolean
-         variables in assignment statements
-
-                                  8/28
-                                  ----
-lib/sh/pathphys.c
-       - fix small memory leak in sh_realpath reported by Eric Blake
-
-                                  8/31
-                                  ----
-doc/bashref.texi
-       - add additional notes to posix mode section
-
-                                   9/3
-                                   ---
-parse.y
-       - if $'...' occurs within a ${...} parameter expansion within
-         double quotes, don't single-quote the expanded result -- the double
-         quotes will cause it to be expanded incorrectly
-
-                                   9/4
-                                   ---
-builtins/fc.def
-       - if STRICT_POSIX is defined, the posix mode default for the editor to
-         use is $FCEDIT, then ed
-
-shell.c
-       - if STRICT_POSIX is defined, initialize `posixly_correct' to 1
-
-config.h.in
-       - add #undef STRICT_POSIX
-
-                                   9/5
-                                   ---
-configure.in
-       - add new option argument, --enable-strict-posix-default, configures
-         bash to be posix-conformant (including defaulting echo to posix
-         conformance) by default
-
-builtins/echo.def
-       - if STRICT_POSIX is defined, default echo to xpg-style
-
-doc/bashref.texi
-       - describe the --enable-strict-posix-default option to configure
-
-                                  9/10
-                                  ----
-builtins/mkbuiltins.c
-       - change to not generate N_(""), because the translated empty string is
-         special to GNU gettext
-
-                                  9/13
-                                  ----
-lib/readline/complete.c
-       - a negative value for rl_completion_query_items means to not ask
-
-lib/readline/doc/{{rltech,rluser}.texi,readline.3}
-       - documented new semantics for rl_completion_query_items/
-         completion-query-items
-
-                                  9/14
-                                  ----
-bashline.c
-       - bind M-TAB in emacs mode to dynamic-complete-history even if the
-         current binding is `tab-insert' (which is what it is by default),
-         not just if it's unbound
-
-                                  9/15
-                                  ----
-eval.c
-       - call QUIT before calling dispose_command on current_command after
-         the  `exec_done' label.  If we dispose current_command first, the
-         longjmp might restore the value of current_command after we've
-         disposed it, and the subsequent call to dispose_command from the
-         DISCARD case will free memory twice
-
-                                  9/16
-                                  ----
-lib/sh/strto[iu]max.c
-       - make sure the function being declared is not a cpp define before
-         defining it -- should fix problems on HP-UX
-
-                                  9/19
-                                  ----
-Makefile.in
-       - make sure the binaries for the tests are at the front of $PATH
-
-                                  9/22
-                                  ----
-parse.y
-       - new flag for parse_matched_pair: P_COMMAND, indicating that the
-         text being parsed is a command (`...`, $(...))
-       - change calls to parse_matched_pair to include P_COMMAND where
-         appropriate
-       - if P_COMMAND flag is set and the text is unquoted, check for comments
-         and don't try to parse embedded quoted strings if in a comment (still
-         not exactly right yet)
-
-                                  9/24
-                                  ----
-builtins/history.def
-       - if running history -n, don't count these new lines as history lines
-         for the current session if the `histappend' shell option is set.
-         If we're just appending to the history file, the issue that caused
-         history_lines_this_session to be recalculated doesn't apply -- the
-         history file won't be missing any entries
-
-lib/readline/isearch.c
-       - fix C-w handler for isearch string reader to handle multibyte chars
-
-lib/readline/rlmbutil.h
-       - new defines for _rl_to_wupper and _rl_to_wlower
-
-lib/readline/text.c
-       - use _rl_to_wupper and _rl_to_wlower as appropriate
-
-                                  9/26
-                                  ----
-execute_cmd.c
-       - in shell_execve, if the exec fails due to E2BIG or ENOMEM, just print
-         the appropriate error message instead of checking out any interpreter
-         specified with #!
-
-                                  9/30
-                                  ----
-bashhist.c
-       - make $HISTCMD available anytime remember_on_history is non-zero,      
-         which indicates that we're saving commands to the history, and
-         let it evaluate to 1 if we're not
-
-                                  10/4
-                                  ----
-lib/sh/snprintf.c
-       - in floating(), make sure d != 0 before calling chkinfnan -- gcc on the
-         version of Solaris 9 I have translates 0 to -inf on the call
-
-[bash-3.1-beta1 frozen]
-
-                                  10/6
-                                  ----
-jobs.c
-       - set the_pipeline to NULL right away in cleanup_the_pipeline, and
-         dispose a copy of the pointer so we don't mess with the_pipeline
-         while we're in the process of destroying it
-       - block and unblock SIGCHLD around manipulating the_pipeline in
-         cleanup_the_pipeline  
-
-                                  10/7
-                                  ----
-[bash-3.1-beta1 released]
-
-lib/readline/isearch.c
-       - when switching directions, make sure we turn off the SF_REVERSE
-         flag in the search context's flags word if we're going from reverse
-         to forward i-search
-
-lib/readline/bind.c
-       - new function, rl_variable_value, returns a string representing a
-         bindable readline variable's value
-       - new auxiliary function, _rl_get_string_variable_value, encapsulates
-         everything needed to get a bindable string variable's value
-       - rewrote rl_variable_dumper to use _rl_get_string_variable_value
-
-lib/readline/readline.h
-       - new extern declaration for rl_variable_value
-
-lib/readline/doc/rltech.texi
-       - documented rl_variable_value
-
-bashline.c
-       - in command_word_completion_function, if readline sets
-         rl_completion_found_quote, but doesn't set rl_completion_quote_character,
-         we have an embedded quoted string or backslash-escaped character in
-         the passed text.  We need to dequote that before calling
-         filename_completion_function.  So far, this is in place only for
-         absolute program names (those containing a `/')
-       - in command_word_completion_function, use rl_variable_value to decide
-         whether or not we should ignore case, and use strncasecmp instead of
-         strncmp where appropriate
-
-                                  10/11
-                                  -----
-builtins/fc.def
-       - fixed a typo when using POSIX_FC_EDIT_COMMAND
-
-redir.h
-       - new flag values for redirections: RX_INTERNAL and RX_USER (currently
-         unused)
-
-redir.c
-       - add_undo_redirect and add_undo_close_redirect now set RX_INTERNAL
-         flag when making new redirects
-       - in do_redirection_internal, only set file descriptors > 2 to CLEXEC
-         if they're marked as RX_INTERNAL
-
-                                  10/12
-                                  -----
-jobs.c
-       - in wait_for_single_pid, if in posix mode, remove the waited-for pid
-         from the list of background pids, forgetting it entirely.  POSIX
-         conformance tests test for this.
-
-lib/readline/{readline.h,vi_mode.c}
-       - new state flag, RL_STATE_VICMDONCE, set after entering vi command
-         mode the first time; reset on each call to readline()
-
-                                  10/13
-                                  -----
-lib/readline/undo.c
-       - in rl_revert_line, make sure that revert-line in vi mode leaves
-         rl_point set to 0 no matter the state of the line buffer
-
-lib/readline/vi_mode.c
-       - when entering vi_command mode for the first time, free any existing
-         undo list so the previous insertions won't be undone by the `U'
-         command.  This is how POSIX.2 says `U' should work (and the test
-         suite tests for it)
-
-lib/readline/bind.c
-       - change rl_parse_and_bind so only `set' commands involving boolean
-         readline variables have trailing whitespace stripped from the value
-         string
-
-                                  10/16
-                                  -----
-lib/glob/sm_loop.c
-       - fix patscan() to correctly scan backslash-escaped characters
-
-                                  10/18
-                                  -----
-lib/sh/{winsize.c,Makefile.in},{jobs,nojobs}.c,Makefile.in,externs.h
-       - moved get_new_window_size from jobs.c/nojobs.c to new file,
-         lib/sh/winsize.c, made function global
-
-{jobs,nojobs,sig}.c,{jobs,sig}.h
-       - moved SIGWINCH handling code to sig.c rather than duplicate it in
-         jobs.c and nojobs.c
-       - call set_sigwinch_handler from sig.c code rather than job control
-         signal initialization
-
-sig.[ch]
-       - new variable, sigwinch_received, acts like interrupt_state for
-         SIGWINCH, set by sigwinch_sighandler.  sigwinch_sighandler no longer
-         calls get_new_window_size
-
-parse.y
-       - add call to get_new_window_size if sigwinch_received at top of
-         shell_getc
-
-                                  10/19
-                                  -----
-lib/malloc/malloc.c
-       - to avoid orphaning memory on free if the right bucket is busy, use a
-         new function xplit(mem, bucket) to split the block into two or more
-         smaller ones and add those to the right bucket (appropriately marking
-         it as busy)
-       - audit bsplit(), bcoalesce(), and xsplit() for proper use of busy[],
-         since they're dealing with two separate buckets
-
-                                  10/22
-                                  -----
-subst.c
-       - new flag for string_extract: EX_REQMATCH, means to return an error
-         if a matching/closing character is not found before EOS
-       - new static flag variables: extract_string_error and extract_string_fatal
-       - change expand_word_internal to check for new error returns from
-         string_extract and return errors if appropriate
-
-                                  10/23
-                                  -----
-builtins/cd.def
-       - make sure we free TDIR in change_to_directory after calling
-         set_working_directory (which allocates new memory) and other places
-         we short-circuit and return
-
-                                  10/24
-                                  -----
-subst.c
-       - modified fix from 10/22 to allow bare ` to pass through (for
-         some backwards compatibility and more correctness)
-
-                                  10/27
-                                  -----
-conftypes.h
-       - make MacOS X use the RHAPSODY code that gets HOSTTYPE, et al.
-         at build rather than configure time, to support universal binaries
-         (fix from llattanzi@apple.com)
-
-                                  10/30
-                                  -----
-builtins/evalstring.c
-       - make sure we don't turn on CMD_NO_FORK in parse_and_execute if
-         we're running a trap command on signal receipt or exit
-
-execute_cmd.c
-       - in shell_execve, improve the error message a little bit if the
-         interpreter name in a #! exec header ends with a ^M (as in a DOS-
-         format file)
-
-                                  11/1
-                                  ----
-lib/readline/vi_mode.c
-       - fix vi-mode `r' command to leave the cursor in the right place
-
-[bash-3.1-rc1 frozen]
-
-                                  11/5
-                                  ----
-execute_cmd.c
-       - make sure a DEBUG trap doesn't overwrite a command string passed to
-         make_child in execute_simple_command
-
-bashline.c
-       - rearrange some code in bash_quote_filename so filenames with leading
-         tildes containing spaces aren't tilde-expanded before being
-         returned to the caller
-
-                                  11/6
-                                  ----
-lib/readline/display.c
-       - when deciding where to move the cursor in rl_redisplay and needing
-         to move the cursor back after moving it vertically and compensate
-         for invisible characters in the prompt string, make sure that
-         _rl_last_c_pos is treated as an absolute cursor position in a
-         multibyte locale and the wrap offset (number of invisible characters)
-         is added explicitly when deciding how many characters to backspace
-
-                                  11/10
-                                  -----
-lib/readline/terminal.c
-       - _rl_set_screen_size now interprets a lines or columns argument < 0
-         as an indication not to change the current value
-
-                                  11/11
-                                  -----
-
-lib/readline/terminal.c
-       - new function, rl_reset_screen_size, calls _rl_get_screen_size to
-         reset readline's idea of the terminal size
-       - don't call _rl_get_screen_size in _rl_init_terminal_io if both        
-         _rl_screenheight and _rl_screenwidth are > 0
-       - don't initialize _rl_screenheight and _rl_screenwidth to 0 in
-         _rl_init_terminal_io; let caller take care of it
-       - set _rl_screenheight and _rl_screenwidth to 0 before calling
-         _rl_init_terminal_io
-
-lib/readline/readline.h
-       - new extern declaration for rl_reset_screen_size
-
-lib/readline/doc/rltech.texi
-       - documented rl_reset_screen_size
-
-variables.c
-       - if readline is being used, compile in a special var function for
-         assignments to LINES and COLUMNS that calls rl_set_screen_size or
-         rl_reset_screen_size as appropriate.  Only do this in posix mode
-         and only when STRICT_POSIX is defined at compile time
-       - new semaphore variable, winsize_assignment, set while doing an
-         assignment to LINES or COLUMNS
-       - new variable, winsize_assigned, says LINES or COLUMNS was assigned
-         to or found in the environment
-       - if in the middle of an assignment to LINES or COLUMNS, make
-         sh_set_lines_and_columns a no-op
-
-lib/sh/winsize.c
-       - get_new_window_size now takes two int * arguments, to return the
-         screen dimensions
-
-externs.h
-       - change extern declaration for get_new_window_size
-
-{jobs,nojobs}.c, parse.y
-       - change callers of get_new_window_size
-
-                                  11/12
-                                  -----
-lib/readline/terminal.c
-       - new variable, rl_prefer_env_winsize, gives LINES and COLUMNS
-         precedence over values from the kernel when computing window size
-
-lib/readline/readline.h
-       - extern declaration for rl_prefer_env_winsize
-
-lib/readline/doc/rltech.texi
-       - document rl_prefer_env_winsize
-
-                                  11/13
-                                  -----
-lib/readline/rltty.c
-       - change rl_prep_terminal to make sure we set and reset the tty
-         special characters in the vi insertion keymap if in vi mode.  This
-         matters if we get accept-line for the previous line while in vi
-         command mode
-
-                                  11/14
-                                  -----
-builtins/pushd.def
-       - make sure any call to cd_builtin includes a leading `--' from the
-         argument list (or constructs one)
-
-                                  11/16
-                                  -----
-pcomplete.c
-       - fix small memory leak in gen_wordlist_matches
-
-[bash-3.1-rc2 frozen]
-
-                                  11/21
-                                  -----
-[bash-3.1-rc2 released]
-
-                                  11/23
-                                  -----
-lib/readline/display.c
-       - changes to rl_redisplay to compensate for update_line updating
-         _rl_last_c_pos without taking invisible characters in the line into
-         account.  Important in multibyte locales where _rl_last_c_pos is an
-         absolute cursor position
-       - changes to _rl_move_cursor_relative to account for _rl_last_c_pos
-         being an absolute cursor position in a multibyte character locale
-       - rewrote _rl_move_cursor_relative to make it a little simpler
-
-                                  11/29
-                                  -----
-lib/readline/display.c
-       - changes to rl_redisplay and update_line for update_line to communicate
-         upward that it took the number of invisible characters on the current
-         line into account when modifying _rl_last_c_pos
-       - in update_line, adjust _rl_last_c_pos by wrap_offset before calling
-         _rl_move_cursor_relative, so we pass correct information about the
-         true cursor position
-
-                                  12/1
-                                  ----
-configure.in
-       - changed release status to `release'
-
-[bash-3.1 frozen]
-
-                                  12/8
-                                  ----
-[bash-3.1 released]
-
-                                  12/9
-                                  ----
-doc/{bash.1,version.texi},lib/readline/doc/version.texi
-       - remove `beta1' from man page footer and texinfo documents
-
-variables.c
-       - make sure winsize_assignment is protected by #ifdef READLINE, so
-         minimal shell will compile
-
-builtins/read.def
-       - make sure error cases free memory and run any unwind-protects to
-         avoid memory leaks
-
-                                  12/10
-                                  -----
-execute_cmd.c
-       - change execute_command_internal to set $PIPESTATUS for ((...)) and
-         [[ ... ]] commands
-
-doc/{bash.1,bashref.texi,version.texi}
-       - add documentation for ulimit -[iqx] and bump revision date
-
-                                  12/12
-                                  -----
-parse.y
-       - make sure parse_compound_assignment saves and restores the
-         PST_ASSIGNOK parser state flag around its calls to read_token.
-         Fixes bug reported by Mike Frysinger
-
-                                  12/13
-                                  -----
-parse.y
-       - change parse_compound_assignment to save and restore the value of
-         last_read_token.  Not sure why it was set unconditionally in the
-         first place after parsing the complete compound assignment
-
-                                  12/14
-                                  -----
-lib/readline/text.c
-       - don't use return value of rl_kill_text (which always succeeds and
-         returns the number of characters killed) in rl_delete as an indication
-         of success or failure
-       - ditto for return value of rl_delete_text
-
-lib/readline/readline.c
-       - don't return the value of the called readline function as the return
-         value from _rl_dispatch_subseq; -1 means something different to the
-         callers (return 0 all the time to indicate that a readline function
-         was found and dispatched).  Fix from Andreas Schwab for <DEL><DEL>
-         bug in callback interface first reported by Mike Frysinger
-
-execute_cmd.c
-       - fixed a typo in execute_case_command
-
-                                  12/15
-                                  -----
-aclocal.m4
-       - add check for wctype() to BASH_CHECK_MULTIBYTE, define HAVE_WCTYPE
-
-config.h.in
-       - add HAVE_WCTYPE #define
-
-config-bot.h
-       - add HAVE_WCTYPE to the set of checks for HANDLE_MULTIBYTE.  This
-         should catch the deficient NetBSD multibyte support
-
-                                  12/16
-                                  -----
-parse.y
-       - use CTLESC instead of literal '\001' when decode_prompt_string
-         prefixes RL_PROMPT_START_IGNORE and RL_PROMPT_END_IGNORE
-
-                                  12/20
-                                  -----
-lib/readline/display.c
-       - don't treat RL_PROMPT_START_IGNORE specially inside a sequence of
-         ignored characters
-       - keep track of the start of the current sequence of ignored
-         characters; make sure that an empty sequence of such characters
-         really is an empty sequence, not one that happens to end with '\001'
-         (RL_PROMPT_START_IGNORE)
-
-                                  12/21
-                                  -----
-subst.c
-       - change expand_word_internal to process rest of `tilde-word' as a
-         regular part of the word if tilde expansion leaves the tilde-word
-         unchanged.  This means that ~$USER expands to ~chet, which seems
-         more intuitive, and is effectively what bash-3.0 did
-
-                                  12/23
-                                  -----
-subst.c
-       - when making a local array variable in do_compound_assignment, make
-         sure that we don't use a variable of the same name from a previous
-         context
-
-doc/bash.1
-       - documented expansions for word and patterns in case statement
-
-builtins/ulimit.def,doc/{bashref.texi,bash.1}
-       - added new -e and -r (nice and rtprio) options to ulimit; documented
-         them
-
-                                  12/26
-                                  -----
-variables.c
-       - use `hmax' instead of `num' in sv_histsize to avoid integer overflow
-         problems with intmax_t
-
-builtins/read.def
-       - add unwind-protect to restore rl_attempted_completion_function in
-         case of a timeout
-
-{bashline,variables}.c
-       - move initialization of HISTSIZE from initialization path to
-         load_history, so it can be overridden by a value assigned in a
-         startup file
-
-lib/readline/misc.c
-       - add a missing `return r' so that rl_digit_loop returns a meaningful
-         value
-
-lib/readline/{bind,callback,display,isearch,rltty,search,text,vi_mode}.c
-       - minor cleanups to satisfy compiler warnings, mostly removing unused
-         variables
-
-                                  12/27
-                                  -----
-support/Makefile.in
-       - add LIBS_FOR_BUILD support; defaults to ${LIBS}
-
-Makefile.in
-       - add LIBS_FOR_BUILD with no default value; use when linking programs
-         using CC_FOR_BUILD (e.g., bashversion)
-
-                                  12/28
-                                  -----
-lib/readline/bind.c
-       - fix rl_translate_keyseq bad translation of \M-\C-x sequences
-
-execute_cmd.c
-       - in execute_arith_command, if the expression expands to more than one
-         word, make sure we join the words into a single string and pass the
-         entire thing to evalexp()
-
-expr.c
-       - new functions: _is_arithop(c), returns true if C is a valid single-
-         character arithmetic operator; _is_multiop(c), returns true if C is
-         a token corresponding to a valid multi-character arithmetic operator
-       - if we encounter a character that isn't a valid arithmetic
-         operator, throw an error.  Try to be intelligent about what type of
-         error message to print
-
-subst.c
-       - new function, expand_arith_string, calls expand_string_if_necessary;
-         used where an arithmetic expression needs to be expanded
-
-subst.h
-       - new extern declaration for expand_arith_string
-
-arrayfunc.c
-       - in array_expand_index, call expand_arith_string to expand the
-         subscript in a fashion consistent with other arithmetic expressions
-
-subst.c
-       - fix parameter_brace_patsub so that we don't try to anchor the pattern
-         at the beginning or end of the string if we're doing global
-         replacement -- that combination doesn't doesn't make sense, and
-         the changed behavior is compatible with ksh93
-
-doc/{bash.1,bashref.texi}
-       - changed description of pattern substitution to match the new
-         semantics
-
-tests/new-exp.tests
-       - change tests to remove all ${pat//#rep} and ${pat//%rep}
-         expansions, since they don't mean the same thing anymore
-
-                                  12/29
-                                  -----
-support/signames.c
-       - new file, initialize_signames() function from old mksignames.c.  This
-         file builds the signal_names array
-
-support/mksignames.c
-       - strip out initialize_signames(), move to signames.c.  This file only
-         writes signames.h
-       - set up to only write a stub signames.h if CROSS_COMPILING is defined,
-         with extern declaration for initialize_signames
-       - if not cross compiling, #define initialize_signames to nothing
-
-Makefile.in
-       - mksignames is now linked from mksignames.o and buildsignames.o
-       - add rules to build signames.o, assuming we're building it as part
-         of the shell (cross-compiling)
-
-trap.c
-       - call initialize_signames from initialize_traps
-
-configure.in
-       - set SIGNAMES_O to nothing (normal) or signames.o (cross-compiling),
-         substitute into Makefile
-       - don't set SIGNAMES_H if cross-compiling any more
-
-                                  12/30
-                                  -----
-command.h
-       - new word flag: W_NOPROCSUB, inhibits process substitution on a word
-
-subst.c
-       - change expand_word_internal to suppress process substitution if the
-         word has the W_NOPROCSUB flag
-
-shell.c
-       - --wordexp turns on W_NOPROCSUB in addition to W_NOCOMSUB
-
-subst.c
-       - change string_list_dollar_at and string_list_dollar_star so that
-         MB_CUR_MAX is used to size an array only when using gcc, since gcc
-         can handle non-constant array sizes using a mechanism like alloca.
-         Other compilers, e.g. Sun's compiler, do not implement that
-         extension
-
-                                  12/31
-                                  -----
-builtins/mkbuiltins.c
-       - when cross-compiling, don't include <config.h>, since it's for the
-         target rather than the host system.  Instead, choose a reasonable
-         set of default #defines based on a minimal POSIX system
-
-jobs.c
-       - change find_process to handle a NULL return value from find_pipeline
-       - return immediately from delete_job if jobs[index] is already NULL or
-         if it has a null pipeline associated with it
-       - in delete_job, if find_last_proc returns NULL, don't try to call
-         bgp_delete
-
-                                1/7/2006
-                                --------
-doc/bash.1
-       - patch from Tim Waugh to replace some literal single quotes with
-         \(aq, the groff special character for it
-
-jobs.c
-       - in realloc_jobs_list, make sure to zero out slots after j_lastj
-         in the new list
-
-                                   1/9
-                                   ---
-support/mksignames.c
-       - make sure to include <signal.h> to get right value of NSIG from
-         (usually) <sys/signal.h>
-
-                                  1/10
-                                  ----
-parse.y
-       - when calling parse_matched_pair on a $(...) command substitution,
-         don't pass the P_DQUOTE flag so that single quotes don't get
-         stripped from $'...' inside the command substitution.  Bug report
-         and fix from Mike Stroyan <mike.stroyan@hp.com>
-
-jobs.c
-       - start maintaining true count of living children in js.c_living
-       - call reset_current in realloc_jobs_list, since old values for current
-         and previous job are most likely incorrect
-       - don't allocate a new list in realloc_jobs_list if the old size and
-         new size are the same; just compact the existing list
-       - make sure realloc_jobs_list updates value of js.j_njobs
-       - add some more itrace messages about non-null jobs after j_lastj in
-         jobs array
-
-                                  1/11
-                                  ----
-bashjmp.h
-       - new value for second argument to longjmp: SIGEXIT.  Reserved for
-         future use
-
-                                  1/12
-                                  ----
-jobs.c
-       - add logic to make_child to figure out when pids wrap around
-       - turn second argument to delete_job into flags word, added flag to
-         prevent adding proc to bgpids list
-
-                                  1/13
-                                  ----
-lib/readline/vi_mode.c
-       - move code that moves forward a character out of rl_vi_append_mode
-         into a separate function, _rl_vi_append_forward
-       - change _rl_vi_append_mode to save `a' as the last command, so it
-         can be redone properly
-       - new function _rl_vi_backup, moves point back a character taking
-         multibyte locales into account
-       - change rl_vi_redo to handle redoing an `a' command specially --
-         it should be redone like `i' but after moving forward a character
-       - change rl_vi_redo to use _rl_vi_backup to move point backward
-         after redoing `i' or `a'
-
-jobs.c
-       - new function, delete_old_job (pid), checks whether or not PID is in
-         a job in the jobs list.  If so, and the job is dead, it just removes
-         the job from the list.  If so, and the job is not dead, it zeros
-         the pid in the appropriate PROCESS so pid aliasing doesn't occur
-       - make_child calls delete_old_job to potentially remove an already-used
-         instance of the pid just forked from the jobs list if pids have
-         wrapped around.  Finally fixes the bug reported by Tim Waugh
-         <twaugh@redhat.com>
-
-trap.c
-       - new define, GETORIGSIG(sig), gets the original handling for SIG and
-         sets SIG_HARD_IGNORE if that handler is SIG_IGN
-       - call GETORIGSIG from initialize_traps, get_original_signal, and
-         set_signal
-
-jobs.c
-       - in wait_for, if the original SIGINT handler is SIG_IGN, don't set
-         the handler to wait_sigint_handler.  This keeps scripts started in
-         the background (and ignoring SIGINT) from dying due to SIGINT while
-         they're waiting for a child to exit.  Bug reported by Ingemar
-         Nilsson <init@kth.se>
-
-lib/readline/vi_mode.c
-       - don't save text to buffer unless undo pointer points to a record of
-         type UNDO_INSERT; zero it out instead.  This fixes bug reported by
-         Craig Turner <craig@synect.com> with redoing `ctd[ESC]' (empty
-         insert after change to)
-
-shell.c
-       - change set_shell_name so invocations like "-/bin/bash" are marked as
-         login shells
-
-doc/bash.1
-       - add note about destroying functions with `unset -f' to the section
-         on shell functions
-
-lib/readline/terminal.c
-       - if readline hasn't been initialized (_rl_term_autowrap == -1, the
-         value it's now initialized with), call _rl_init_terminal_io from
-         _rl_set_screen_size before deciding whether or not to decrement
-         _rl_screenwidth.  Fixes bug from Mike Frysinger <vapier@gentoo.org>
-
-                                  1/14
-                                  ----
-lib/readline/input.c
-       - allow rl_set_keyboard_input_timeout to set the timeout to 0, for
-         applications that want to use select() like a poll without any
-         waiting
-
-lib/readline/doc/rltech.texi
-       - documented valid values for timeout in rl_set_keyboard_input_timeout
-
-jobs.c
-       - in stop_pipeline, don't have the parent shell call give_terminal_to
-         if subshell_environment contains SUBSHELL_ASYNC (no background
-         process should ever give the terminal to anything other than
-         shell_pgrp)
-       - in make_child, don't give the terminal away if subshell_environment
-         contains SUBSHELL_ASYNC
-
-                                  1/15
-                                  ----
-subst.c
-       - in parameter_brace_expand, if extracting ${#varname}, only allow
-         `}' to end the expansion, since none of the other expansions are
-         valid.  Fixes Debian bug reported by Jan Nordhorlz <jckn@gmx.net>
-
-                                  1/17
-                                  ----
-parse.y
-       - in parse_matched_pair, protect all character tests with the MBTEST
-         macro
-       - in parse_dparen, take out extra make_word after call to alloc_word_desc
-         (mem leak)
-
-                                  1/18
-                                  ----
-parse.y
-       - in parse_matched_pair, add P_ALLOWESC to flags passed to recursive
-         parse_matched_pair call when encountering a single or double quote
-         inside a ``-style command substitution
-
-execute_cmd.c
-       - add call to QUIT at beginning of execute_command_internal; better
-         responsiveness to SIGINT
-
-                                  1/21
-                                  ----
-lib/readline/bind.c
-       - change rl_invoking_keyseqs_in_map to honor the setting of
-         convert-meta when listing key bindings, since if convert-meta is off,
-         using '\M-' as the prefix for bindings in, for instance,
-         emacs-escape-keymap, is wrong.  This affects `bind -p' output
-       - change rl_untranslate_keyseq to add '\e' instead of '\C-[' for
-         ESC
-
-execute_cmd.c
-       - add call to QUIT at end of execute_command
-
-                                  1/23
-                                  ----
-lib/readline/display.c
-       - changed two places in update_line where a check of whether the cursor
-         is before the last invisible character in the prompt string to
-         differentiate between the multibyte character case (where
-         _rl_last_c_pos is a physical cursor position) and the single-byte
-         case (where it is a buffer index).  This prevents many unnecessary
-         \r-redraw the line sequences.  Reported by Dan Jacobson.
-
-                                  1/24
-                                  ----
-quit.h
-       - wrap QUIT macro in do...while(0) like other compound statement
-         macros
-       - CHECK_TERMSIG define (placeholder for now); future use will be to
-         handle any received signals that should  cause the shell to
-         terminate (e.g., SIGHUP)
-
-{input,jobs,nojobs}.c
-       - add calls to CHECK_TERMSIG where appropriate (reading input and
-         waiting for children)
-       - include quit.h if necessary
-
-                                  1/25
-                                  ----
-parse.y
-       - undo change that makes `)' in a compound assignment delimit a token.
-         It messes up arithmetic expressions in assignments to `let', among
-         other things
-
-sig.h,{jobs,nojobs,sig,trap}.c,builtins/trap.def
-       - rename termination_unwind_protect to termsig_sighandler
-
-sig.c
-       - split termsig_sighandler into two functions: termsig_sighandler, which
-         runs as a signal handler and sets a flag noting that a terminating
-         signal was received, and termsig_handler, which runs when it is `safe'
-         to handle the signal and exit
-       - new terminate_immediately variable, similar to interrupt_immediately
-       - termsig_sighandler calls termsig_handler immediately if
-         terminate_immediately is non-zero
-
-quit.h
-       - change CHECK_TERMSIG macro to check terminating_signal and call
-         termsig_handler if it's non-zero
-       - add same check of terminating_signal and call to termsig_handler to
-         QUIT macro
-
-{jobs,nojobs}.c
-       - change call to termsig_sighandler to call termsig_handler directly,
-         as was intended
-
-parse.y,builtins/read.def
-       - set terminate_immediately to non-zero value when reading interactive
-         input, as is done with interrupt_immediately
-
-                                  1/26
-                                  ----
-doc/{bash.1,bashref.texi}
-       - reworded the POSIX standard references to remove mention of POSIX.2
-         or 1003.2 -- it's all the 1003.1 standard now.  Recommended by
-         Arnold Robbins
-
-                                  1/27
-                                  ----
-lib/readline/complete.c
-       - move call to filename dequoting function into
-         rl_filename_completion_function; call only if directory completion
-         hook isn't set.  This means that directory-completion-hook now needs
-         to dequote the directory name.  We don't want to dequote the directory
-         name before calling the directory-completion-hook.  Bug reported by
-         Andrew Parker <andrewparker@bigfoot.com>
-
-bashline.c
-       - add necessary directory name dequoting to bash_directory_expansion
-         and bash_directory_completion_hook
-
-lib/readline/doc/rltech.texi
-       - add note to description of rl_directory_completion_hook that it
-         needs to dequote the directory name even if no other expansions are
-         performed
-
-                                  1/28
-                                  ----
-braces.c
-       - make sure that we skip over braces that don't start a valid matched
-         brace expansion construct in brace_expand -- there might be a valid
-         brace expansion after the unmatched `{' later in the string
-       - brace_gobbler now checks that when looking for a `}' to end a brace
-         expansion word, there is an unquoted `,' or `..' that's not inside
-         another pair of braces.  Fixes the a{b{c,d}e}f problem reported by
-         Tim Waugh
-
-builtins/declare.def
-       - when not in posix mode, and operating on shell functions, typeset
-         and declare do not require their variable operands to be valid
-         shell identifiers.  The other `attribute' builtins work this way.
-         Fixes inconsistency reported by Mike Frysinger <vapier@gentoo.org>
-
-{configure,config.h}.in
-       - add test for setregid, define HAVE_SETREGID and HAVE_DECL_SETREGID
-         as appropriate
-       - add test for eaccess, define HAVE_EACCESS if found
-
-lib/sh/eaccess.c
-       - new file, with sh_stat and sh_eaccess functions, moved from test.c
-       - renamed old sh_eaccess as sh_stataccess, since it uses the stat(2)
-         information to determine file accessibility
-       - new function, sh_euidaccess, to call when uid != euid or gid != egid;
-         temporarily swaps uid/euid and gid/egid around call to access
-       - rewrote sh_eaccess to call eaccess, access, sh_euidaccess or
-         sh_stataccess as appropriate.  access(2) will take into account
-         things like ACLs, read-only file systems, file flags, and so on.
-
-lib/sh/Makefile.in,Makefile.in
-       - add necessary entries for eaccess.[co]
-
-test.c
-       - change calls to test_stat to call sh_stat
-
-{test,general}.c
-       - change calls to test_eaccess to call sh_eaccess
-
-externs.h
-       - new extern declaration for sh_eaccess
-
-test.[ch]
-       - remove test_stat and test_eaccess
-
-                                  1/29
-                                  ----
-braces.c
-       - make change from 1/28 dependant on CSH_BRACE_COMPAT not being
-         defined (since old bash behavior is what csh does, defining
-         CSH_BRACE_COMPAT will produce old bash behavior)
-
-                                  1/30
-                                  ----
-bashline.c
-       - last argument of bash_default_completion is now a flags word:
-         DEFCOMP_CMDPOS (in command position) is only current value
-       - attempt_shell_completion now computes flags before calling
-         bash_default_completion
-       - if no_empty_command_completion is set, bash does not attempt command
-         word completion even if not at the beginning of the line, as long
-         as the word to be completed is empty and start == end (catches
-         beginning of line and all whitespace preceding point)
-
-                                   2/4
-                                   ---
-lib/readline/display.c
-       - change _rl_make_prompt_for_search to use rl_prompt and append the
-         search character to it, so the call to expand_prompt in rl_message
-         will process the non-printing characters correctly.  Bug reported
-         by Mike Stroyan <mike.stroyan@hp.com>
-
-                                   2/5
-                                   ---
-lib/readline/display.c
-       - fix off-by-one error when comparing against PROMPT_ENDING_INDEX,
-         which caused a prompt with invisible characters to be redrawn one
-         extra time in a multibyte locale.  Change from <= to < fixes
-         multibyte locale, but I added 1 to single-byte definition of
-         PROMPT_ENDING_INDEX (worth checking) to compensate.  Bug reported
-         by Egmont Koblinger <egmont@uhulinux.hu>
-
-                                   2/8
-                                   ---
-lib/readline/terminal.c
-       - call _emx_get_screensize with wr, wc like ioctl code for consistency
-       - new function, _win_get_screensize, gets screen dimensions using
-         standard Windows API for mingw32 (code from Denis Pilat)
-       - call _win_get_screensize from _rl_get_screen_size on mingw32
-
-lib/readline/rlconf.h
-       - define SYS_INPUTRC (/etc/inputrc) as system-wide default inputrc
-         filename
-
-support/shobj-conf
-       - changes to make loadable builtins work on MacOS X 10.[34]
-
-builtins/pushd.def
-       - changes to make it work as a loadable builtin compiled with gcc4
-
-                                   2/9
-                                   ---
-lib/readline/bind.c
-       - add SYS_INPUTRC as last-ditch default (if DEFAULT_INPUTRC does not
-         exist or can't be read) in rl_read_init_file
-
-lib/readline/doc/rluser.texi
-       - add description of /etc/inputrc as ultimate default startup file
-
-                                  2/10
-                                  ----
-lib/readline/bind.c
-       - fix problem with rl_function_of_keyseq that returns a non-keymap
-         bound to a portion of the passed key sequence without processing
-         the entire thing.  We can bind maps with existing non-map
-         functions using the ANYOTHERKEY binding code.
-
-variables.c
-       - shells running in posix mode do not set $HOME, as POSIX apparently
-         requires
-
-                                  2/15
-                                  ----
-braces.c
-       - mkseq() now takes the increment as an argument; changed callers
-
-                                  2/16
-                                  ----
-builtins/hash.def
-       - print `hash table empty' message to stdout instead of stderr
-
-                                  2/17
-                                  ----
-lib/readline/readline.c
-       - when resetting rl_prompt in rl_set_prompt, make sure rl_display_prompt
-         is set when the function returns
-
-                                  2/18
-                                  ----
-lib/readline/display.c
-       - further fixes to _rl_make_prompt_for_search from Eric Blake to deal
-         with multiple calls to expand_prompt
-
-                                  2/21
-                                  ----
-builtins/hash.def
-       - don't print `hash table empty' message in posix mode
-
-                                  2/27
-                                  ----
-lib/glob/sm_loop.c
-       - change extmatch() to turn off FNM_PERIOD in flags passed to recursive
-         calls to gmatch() when calling it with a substring after the start
-         of the string it receives.  Changed `+', `*', `?, `@', and `!' cases
-         to do the right thing.  Fixes bug reported by Benoit Vila
-         <bvila@free.fr>
-
-braces.c
-       - add QUIT; statements to mkseq to make large sequence generation
-         interruptible
-
-                                  2/28
-                                  ----
-lib/glob/glob.c
-       - initialize nalloca in glob_vector
-
-                                   3/1
-                                   ---
-lib/glob/glob.c
-       - in glob_vector, when freeing up the linked list after some error,
-         make sure to set `tmplink' to 0 if `firstlink' is set to 0, else we
-         get multiple-free errors
-
-                                   3/5
-                                   ---
-trap.c
-       - inheritance of the DEBUG, RETURN, and ERR traps is now dependent
-         only on the `functrace' and `errtrace' shell options, as the
-         documentation says, rather than on whether or not the shell is in
-         debugging mode.  Reported by Philip Susi <psusi@cfl.rr.com>
-
-parse.y
-       - in parse_matched_pair, don't recursively parse ${...} or other
-         ${...} constructs inside ``
-       - in parse_matched_pair, remove special code that recursively parses
-         quoted strings inside `` constructs.  For Bourne shell compatibility
-
-                                   3/6
-                                   ---
-builtins/pushd.def
-       - let get_directory_stack take take an `int flags' argument and convert
-         $HOME to ~ if flags&1 is non-zero
-
-builtins/common.h
-       - change extern declaration for get_directory_stack
-
-variables.c
-       - call get_directory_stack with an arg of 0 to inhibit converting
-         $HOME to  ~ in the result.  Fixes cd ${DIRSTACK[1]} problem
-         reported by Len Lattanzi <llattanzi@apple.com> (cd fails because
-         the tildes won't be expanded after variable expansion)
-
-jobs.c
-       - changed hangup_all_jobs slightly so stopped jobs marked J_NOHUP
-         won't get a SIGCONT
-
-general.c
-       - changed check_binary_file() to check for a NUL byte instead of a
-         non-printable character.  Might at some point want to check
-         entire (possibly multibyte) characters instead of just bytes.  Hint
-         from ksh via David Korn
-
-                                   3/7
-                                   ---
-builtins/reserved.def
-       - changed runs of spaces to tabs in variables help text to make
-         indentation better when displayed
-
-builtins/mkbuiltins.c
-       - changes to avoid the annoying extra space that keeps gettext from
-         being passed an empty string
-
-                                   3/9
-                                   ---
-lib/glob/glob.c
-       - make sure globbing is interrupted if the shell receives a terminating
-         signal
-
-                                  3/14
-                                  ----
-lib/readline/search.c
-       - call rl_message with format argument of "%" in _rl_nsearch_init
-         to avoid `%' characters in the prompt string from being interpreted
-         as format specifiers to vsnprintf/vsprintf
-
-                                  3/19
-                                  ----
-parse.y, eval.c, input.h
-       - change execute_prompt_command to execute_variable_command; takes the
-         variable name as a new second argument
-
-                                  3/25
-                                  ----
-bashline.c
-       - command_word_completion_function keeps track of when it's searching
-         $PATH and doesn't return directory names as matches in that case.
-         Problem reported by Pascal Terjan <pterjan@mandriva.com>
-       - command_word_completion_function returns what it's passed as a
-         possible match if it's the name of a directory in the current
-         directory (only non-absolute pathnames are so tested).
-
-                                  3/27
-                                  ----
-subst.c
-       - expand_arith_string takes a new argument: quoted.  Either 0 (outside
-         subst.c) or Q_DOUBLE_QUOTES (substitution functions); changed callers
-
-subst.h
-       - changed extern declaration for expand_arith_string
-
-arrayfunc.c
-       - changed call to expand_arith_string in array_expand_index
-
-                                  3/31
-                                  ----
-lib/readline/histfile.c
-       - change read_history_range to allow windows-like \r\n line endings
-
-execute_cmd.c
-       - add new variable, line_number_for_err_trap, currently set but not
-         used
-
-                                   4/2
-                                   ---
-lib/sh/strtrans.c
-       - add code to echo -e and echo with xpg_echo enabled to require
-         a leading 0 to specify octal constants
-
-                                   4/3
-                                   ---
-subst.c
-       - slight change to wcsdup() replacement: use memcpy instead of wcscpy
-
-parse.y
-       - before turning on W_COMPASSIGN, make sure the final character in the
-         token is a `(' (avoids problems with things like a=(4*3)/2)
-
-                                   4/4
-                                   ---
-lib/sh/snprintf.c
-       - in number() and lnumber(), turn off PF_ZEROPAD if explicit precision
-         supplied in format
-       - change number() and lnumber() to correctly implement zero-padding
-         specified by a non-zero `.precision' part of the format
-
-subst.c
-       - new flag for extract_delimited_string: EX_COMMAND.  For $(...), so
-         we can do things like skip over delimiters in comments.  Added to
-         appropriate callers
-       - changes to extract_delimited_string to skip over shell comments when
-         extracting a command for $(...) (EX_COMMAND is contained in the
-         flags argument)
-
-                                   4/5
-                                   ---
-subst.c
-       - first argument to skip_single_quoted is now a const char *
-       - new function, chk_arithsub, checks for valid arithmetic expressions
-         by balancing parentheses.  Fix based on a patch from Len Lattanzi
-
-                                   4/6
-                                   ---
-{configure,config.h}.in
-       - add separate test for isnan in libc, instead of piggybacking on
-         isinf-in-libc test
-
-lib/sh/snprintf.c
-       - separate the isnan replacement function so it's guarded by its own
-         HAVE_ISNAN_IN_LIBC define
-
-lib/sh/wcsdup.c
-       - new file, contains replacement wcsdup library function from subst.c
-         with change back to using wcscpy
-
-Makefile.in,lib/sh/Makefile.in
-       - make sure wcsdup.c is compiled and linked in
-
-subst.c
-       - wcsdup now found in libsh; removed static definition
-
-                                  4/10
-                                  ----
-lib/readline/callback.c
-       - loop over body of rl_callback_read_char as long as there is additional
-         input rather than just calling readline_internal_char, which does
-         not handle multi-character key sequences or escape-prefixed chars
-
-lib/readline/macro.c
-       - make sure we turn off RL_STATE_MACROINPUT when the macro stack is
-         empty if we are reading additional input with RL_STATE_MOREINPUT
-
-support/shobj-conf
-       - Mac OS X no longer likes the `-bundle' option to gcc when creating a
-         dynamic shared library
-
-                                  4/11
-                                  ----
-lib/tilde/tilde.c
-       - don't try to dereference user_entry if HAVE_GETPWENT isn't defined
-
-lib/readline/input.c
-       - make sure chars_avail is not used without being assigned a value in
-         rl_gather_tyi
-       - use _kbhit() to check for available input on Windows consoles, in
-         rl_gather_tyi and _rl_input_available
-
-                                  4/21
-                                  ----
-lib/readline/display.c
-       - calculate (in expand_prompt) and keep track of length of local_prompt
-         in local_prompt_len; use where appropriate
-       - when using o_pos to check whether or not we need to adjust
-         _rl_last_c_pos after calling update_line, assume that it's correct
-         (a buffer index in non-multibyte locales and a cursor position in
-         multibyte locales) and adjust with wrap_offset as appropriate
-       - in update_line, set cpos_adjusted to 1 after calling
-         _rl_move_cursor_relative to move to the end of the displayed prompt
-         string
-       - in _rl_move_cursor_relative, check that the multibyte display
-         position is after the last invisible character in the prompt string
-         before offsetting it by the number of invisible characters in the
-         prompt (woff)
-
-                                  4/26
-                                  ----
-lib/readline/doc/{rluser.texi,readline.3}
-       - make sure to note that key bindings don't allow any whitespace
-         between the key name or sequence to be bound and the colon
-
-                                  4/28
-                                  ----
-lib/readline/display.c
-       - in update_line, make sure we compare _rl_last_c_pos as strictly less
-         than PROMPT_ENDING_INDEX, since it's 0-based, to avoid multiple
-         prompt redraws
-
-                                   5/4
-                                   ---
-parse.y
-       - in decode_prompt_string, only prefix the expansion of \[ or \]
-         with CTLESC if the corresponding readline escape character is
-         CTLESC (coincidentally the same as \[) or CTLNUL.  Bug report sent
-         by Mike Frysinger <vapier@gentoo.org> prompted the discovery
-
-aclocal.m4
-       - slight change to test for /dev/fd to compensate for a linux
-         failing; suggested by Mike Frysinger <vapier@gentoo.org>
-
-                                   5/9
-                                   ---
-arrayfunc.c
-       - broke assign_array_var_from_string into two functions:
-         expand_compound_array_assignment and assign_compound_array_list;
-         assign_array_var_from_string just calls those functions now
-
-arrayfunc.h
-       - new extern declarations for expand_compound_array_assignment and
-         assign_compound_array_list
-
-subst.c
-       - in do_compound_assignment, call expand_compound_array_assignment
-         before creating the local variable so a previous inherited
-         value can be used when expanding the rhs of the compound assignment
-         statement
-
-                                  5/11
-                                  ----
-doc/{bash.1,bashref.texi}
-       - clarifed `trap' description to make it clear that trapped signals
-         that are not set to SIG_IGN are reset when a subshell is created
-
-                                  5/18
-                                  ----
-locale.c
-       - change reset_locale_vars to call setlocale (LC_ALL, "") if LANG
-         is unset or NULL
-       - if LANG is unset or NULL, reset the export environment before
-         calling setlocale in reset_locale_vars, and trust that it will
-         change the environment setlocale() inspects
-
-                                  5/21
-                                  ----
-lib/readline/history.c
-       - new function, HIST_ENTRY *alloc_history_entry (char *string, char *ts);
-         creates a new history entry with text STRING and timestamp TS (both
-         of which may be NULL)
-       - new function, HIST_ENTRY *copy_history_entry (HIST_ENTRY *hist),
-         which copies the line and timestamp entries to new memory but just
-         copies the data member, since that's an opaque pointer
-       - new function, void replace_history_data (int which, histdata_t *old, histdata_t *new)
-         which replaces the `data' member of specified history entries with
-         NEW, as long as it is OLD.  WHICH says which history entries to
-         modify
-       - add calls to replace_history_data in rl_free_undo_list and
-         rl_do_undo
-
-lib/readline/undo.c
-       - new function, alloc_undo_entry (enum undo_code what, int start, int end, char *text)
-         takes care of allocating and populating a struct for an individual
-         undo list entry
-       - new function: _rl_copy_undo_entry(UNDO_LIST *entry)
-       - new function: _rl_copy_undo_list(UNDO_LIST *head)
-
-lib/readline/rlprivate.h
-       - new extern declarations for _rl_copy_undo_{entry,list}
-
-execute_cmd.c
-       - change execute_cond_node so that quoting the rhs of the =~
-         operator forces string matching, like the == and != operators
-
-                                  5/23
-                                  ----
-redir.c
-       - add_undo_redirect now takes as an additional argument the type of
-         redirection we're trying to undo
-       - don't add a "preservation" redirection for fds > SHELL_FD_BASE if
-         the redirection is closing the fd
-
-                                  5/24
-                                  ----
-subst.c
-       - make sure that parameter_brace_substring leaves this_command_name
-         set to either NULL or its previous value after setting it so that
-         arithmetic evaluation errors while expanding substring values
-         contain meaningful information
-
-                                   6/9
-                                   ---
-execute_cmd.c
-       - make sure that SUBSHELL_ASYNC and SUBSHELL_PIPE are set as flag bits
-         in subshell_environment, rather than setting only a single value
-       - change execute_subshell_builtin_or_function to give the `return'
-         builtin a place to longjmp to when executed in a subshell or pipeline
-         (mostly as the last command in a pipeline).  Bug reported by
-         Oleg Verych <olecom@gmail.com>
-       - in execute_simple_command, make sure to call execute_disk_command
-         with the_printed_command_except_trap to keep DEBUG trap command
-         strings from overwriting the command strings associated with jobs
-         and printed in job control messages.  Bug reported by Daniel Kahn
-         Gillmor <dkg-debian.org@fifthhorseman.net>
-
-[bash-3.2-alpha frozen]
-
-                                  6/22
-                                  ----
-syntax.h
-       - add new CBLANK (for [:blank:] class) flag value for syntax table and
-         shellblank(c) character test macro
-
-mksyntax.c
-       - add support for setting CBLANK flag in the syntax table depending on
-         whether or not isblank(x) returns true for character x
-
-locale.c
-       - change locale_setblanks to set or unset CBLANK flag for each
-         character when locale changes
-
-parse.y
-       - change call to whitespace(c) in lexical analyzer (read_token()) to
-         call shellblank(c) instead, so locale-specific blank characters are
-         treated as white space.  Fixes bug reported by Serge van deb Boom
-         <svdb+bug-bash@stack.nl>
-
-print_cmd.c
-       - when printing redirections, add a space between <, >, and <> and the
-         following word, to avoid conflicts with process substitution.  Bug
-         reported by Ittay Dror <ittyad@qlusters.com>
-
-                                  6/26
-                                  ----
-configure.in
-       - set CROSS_COMPILE to the empty string by default, so we don't inherit
-         a random value from the environment.   Bug reported by
-         Lee Revell <rlrevell@joe-job.com>
-
-                                  6/29
-                                  ----
-lib/glob/xmbsrtowcs.c
-       - make sure destp is non-null before assigning a 0 to *destp in
-         xdupmbstowcs.  Fix from Louiwa Salem <loulwas@us.ibm.com>
-
-execute_cmd.c
-       - fix execute_in_subshell to make sure asynchronous isn't set to 0
-         before subshell_environment is set appropriately and
-         setup_async_signals is run.  Based on report by Louiwa Salem
-         <loulwas@us.ibm.com>
-
-lib/readline/bind.c
-       - in rl_generic_bind(), make sure that the keys array is freed before
-         an error return.  Fix from Louiwa Salem <loulwas@us.ibm.com>
-
-                                   7/1
-                                   ---
-builtins/read.def
-       - make sure all editing code is protected with #ifdef READLINE, esp.
-         unwind-protect that restores the default completion function
-
-lib/readline/display.c
-       - make sure to set local_prompt_len in rl_message() [in bash-3.2-alpha]
-
-                                   7/5
-                                   ---
-builtins/printf.def
-       - add more of echo's write error handling to printf.  Suggested by
-         martin.wilck@fujitsu-siemens.com
-
-                                   7/7
-                                   ---
-lib/readline/display.c
-       - save and restore local_prompt_len in rl_{save,restore}_prompt
-         [in bash-3.2-alpha]
-
-                                   7/8
-                                   ---
-[bash-3.2-alpha released]
-
-                                   7/9
-                                   ---
-lib/readline/display.c
-       - make sure that _rl_move_cursor_relative sets cpos_adjusted when it
-         offsets `dpos' by wrap_offset in a multi-byte locale.  Bug reported
-         by Andreas Schwab and Egmont Koblinger
-
-subst.c
-       - make sure that the call to mbstowcs in string_extract_verbatim is
-         passed a string with enough space for the closing NUL.  Reported
-         by Andreas Schwab
-
-                                  7/18
-                                  ----
-lib/readline/{display,terminal}.c
-       - remove #ifdefs for HACK_TERMCAP_MOTION so we can use
-         _rl_term_forward_char in the redisplay code unconditionally
-
-lib/readline/rlprivate.h
-       - new extern declaration for _rl_term_forward_char
-
-lib/readline/display.c
-       - in _rl_move_cursor_relative, use `dpos' instead of `new' when
-         deciding whether or not a CR is faster than moving the cursor from
-         its current position
-       - in _rl_move_cursor_relative, we can use _rl_term_forward_char to
-         move the cursor forward in a multibyte locale, if it's available.
-         Since that function doesn't have a handle on where the cursor is in
-         the display buffer, it has to output a cr and print all the data.
-         Fixes rest of problem reported by Egmont Koblinger
-       - change variable denoting the position of the cursor in the line buffer
-         from c_pos (variable local to rl_redisplay) to cpos_buffer_position
-         (variable local to file) for future use by other functions
-
-                                  7/25
-                                  ----
-lib/malloc/{stats,table}.h
-       - include <string.h> for prototypes for memset, strlen
-
-lib/termcap/{termcap,tparam}.c
-       - include <string.h> and provide macro replacement for bcopy if
-         necessary
-
-                                  7/27
-                                  ----
-lib/readline/histexpand.c
-       - add support for `<<<' here-string redirection operator to
-         history_tokenize_word.  Bug reported by agriffis@gentoo.org
-
-externs.h      
-       - don't add prototype for strerror() if HAVE_STRERROR defined
-
-                                  7/29
-                                  ----
-subst.c
-       - in list_string, use `string' instead of `s' -- s is not initialized
-
-                                   8/9
-                                   ---
-subst.c
-       - fix parameter_brace_expand to set W_HASQUOTEDNULL in the WORD_DESC it
-         returns if the result of parameter_brace_substring is a quoted null
-         ("\177").  Fixes bug reported by Igor Peshansky <pechtcha@cs.nyu.edu>
-
-                                  8/16
-                                  ----
-lib/readline/readline.h
-       - new #define, READERR, intended to be used to denote read/input errors
-
-lib/readline/input.c
-       - in rl_getc, if read() returns an error other than EINTR (after the
-         EWOULDBLOCK/EAGAIN cases are handled), return READERR rather than
-         converting return value to EOF if readline is reading a top-level
-         command (RL_STATE_READCMD)
-
-lib/readline/readline.c
-       - if rl_read_key returns READERR to readline_internal_char[loop],
-         abort as if it had read EOF on an empty line, without any conversion
-         to newline, which would cause a partial line to be executed.  This
-         fixes the bug reported by Mathieu Bonnet <mathieu.bonnet@nalkym.org>
-
-aclocal.m4
-       - when testing for validity of /dev/fd/3, use /dev/null instead of
-         standard input, since the standard input fails with linux and `su'.
-         Bug reported by Greg Shafer <gschafer@zip.com.au>
-
-                                  8/17
-                                  ----
-Makefile.in
-       - switch the TAGS and tags targets so TAGS is the output of `etags' and
-         tags is the output of `ctags'.  Suggested by Masatake YAMATO
-
-                                  8/25
-                                  ----
-execute_cmd.c
-       - change code to match documentation: set BASH_COMMAND (which takes its
-         value from the_printed_command_except_trap) only when not running a
-         trap.  Rocky says the debugger is ok with this, and this is what his
-         original diffs did
-
-                                  8/29
-                                  ----
-variables.c
-       - change set_if_not to create shell_variables if it is NULL, since
-         -o invocation options can cause variables to be set before the
-         environment is scanned
-
-[bash-3.2-beta frozen]
-
-                                   9/5
-                                   ---
-[bash-3.2-beta released]
-
-                                   9/8
-                                   ---
-variables.c
-       - change dispose_used_env_vars to call maybe_make_export_env
-         immediately if we're disposing a temporary environment, since
-         `environ' points to the export environment and getenv() will use
-         that on systems that don't allow getenv() to be replaced.  This
-         could cause the temporary environment to affect the shell.  Bug
-         reported by Vasco Pedro <vp@di.uevora.pt>
-
-builtins/echo.def,doc/{bash.1,bashref.texi}
-       - clarify that `echo -e' and echo when the `xpg_echo' shell option is
-         enabled require the \0 to precede any octal constant to be expanded.
-         Reported by Vasco Pedro <vp@di.uevora.pt>
-
-                                  9/12
-                                  ----
-builtins/printf.def
-       - make sure `%q' format specifier outputs '' for empty string arguments
-         Bug reported by Egmont Koblinger <egmont@uhulinux.hu>
-
-make_cmd.c
-       - change make_here_document to echo lines in here-doc if set -v has
-         been executed.  Reported by Eduardo Ochs <eduardoochs@gmail.com>
-
-aclocal.m4
-       - change BASH_CHECK_MULTIBYTE:
-               o replace check for wctomb with check for wcrtomb
-               o add checks for wcscoll, iswctype, iswupper, iswlower,
-                 towupper, towlower
-               o add call to AC_FUNC_MBRTOWC to check for mbrtowc and mbstate_t
-                 define HAVE_MBSTATE_T manually
-               o add checks for wchar_t, wctype_t, wint_t
-
-config.h.in
-       - add defines for wcscoll, iswctype, iswupper, iswlower, towupper,
-         towlower functions
-       - replace define for wctomb with one for wcrtomb
-       - add defines for wchar_t, wint_t, wctype_t types
-
-config-bot.h, lib/readline/rlmbutil.h
-       - add check for HAVE_LOCALE_H before defining HANDLE_MULTIBYTE
-       - add checks for: ISWCTYPE, ISWLOWER, ISWUPPER, TOWLOWER, TOWUPPER
-       - add checks for: WCTYPE_T, WCHAR_T, WCTYPE_T
-
-                                  9/13
-                                  ----
-lib/readline/display.c
-       - when displaying prompts longer than the screenwidth in rl_redisplay,
-         and looking for the index of the last character whose buffer index
-         is <= the screen width to set up the inv_lbreaks array, make sure to
-         catch the case where the index == the screen width (an off-by-one
-         error occurs otherwise with prompts one character longer than the
-         screen width).  Bug reported by Alexey Toptygin <alexeyt@freeshell.org>
-
-configure.in
-       - change DEBUGGER_START_FILE to start with ${ac_default_prefix}/share,
-         like bashdb installs itself.  Reported by Nick Brown
-         <nickbroon@blueyonder.co.uk>
-
-                                  9/14
-                                  ----
-lib/readline/display.c
-       - make multibyte code that computes the buffer indices of line breaks
-         for a multi-line prompt dependent on MB_CUR_MAX, so we don't take
-         the function call hit unless we're in a locale that can have
-         multibyte characters
-
-                                  9/19
-                                  ----
-subst.c
-       - make dequote_list extern so other parts of the shell can use it
-
-subst.h
-       - extern declaration for dequote_list
-
-builtins/read.def
-       - call dequote_list before assigning words read to array variable if
-         we saw an escape character.  Old code left spurious CTLESCs in the
-         string after processing backslashes.  Bug reported by Daniel Dawson
-         <ddawson@icehouse.net>
-
-                                  9/21
-                                  ----
-[bash-3.2 frozen]
-
-                                  10/9
-                                  ----
-support/shobj-coonf
-       - change -fpic to -fPIC for FreeBSD systems (needed for SPARC at least)
-
-                                  10/11
-                                  -----
-[bash-3.2 released]
-
-                                  10/12
-                                  -----
-parse.y
-       - change parse_matched_pair to make sure `` command substitution does
-         not check for shell comments while parsing.  Bug reported against
-         bash-3.2 by Greg Schaefer <gschafer@zip.com.au>
-
-                                  10/14
-                                  -----
-parse.y
-       - add new parser_state flag: PST_REGEXP; means we are parsing a
-         regular expression following the =~ conditional operator
-       - cond_node sets PST_REGEXP after reading the `=~' operator     
-       - change read_token to call read_token_word immediately if the
-         PST_REGEXP bit is set in parser_state
-       - change read_token_word to skip over `(' and `|' if PST_REGEXP is
-         set, since those characters are legitimate regexp chars (but still
-         parse matched pairs of parens)
-
-                                  10/16
-                                  -----
-builtins/ulimit.def
-       - add -e and -r to $SHORT_DOC usage string
-
-po/ru.po
-       - fix encoding; Russian text in the file is actually encoded in KOI8-R
-
-                                  10/23
-                                  -----
-shell.c
-       - make sure that the call to move_to_high_fd in open_shell_script
-         passes 1 for the  `check_new' parameter so open high file descriptors
-         don't get closed and reused.  Bug reported by Mike Stroyan
-         <mike.stroyan@hp.com>
-
-doc/bashref.texi
-       - fixes for typos and misspellings sent in by Brian Gough
-
-                                  10/24
-                                  -----
-support/shobj-conf
-       - make netbsd shared library creation like openbsd's until I hear
-         differently (called using `gcc -shared')
-
-                                  10/26
-                                  -----
-subst.c
-       - fix bug in parameter_brace_patsub so if the first character of the
-         expanded pattern is a `/', it is not taken as a global replacement
-         specifier.  Bug reported on forums.nekochan.net 
-
-                                  10/27
-                                  -----
-builtins/printf.def
-       - if we need an extern declaration for asprintf, make sure we include
-         stdarg.h or varargs.h, whichever is appropriate
-       - if we do not have asprintf, add an extern declaration using
-         stdarg format.  This fixes the bugs with %G on IRIX reported by
-         Matthew Woehlke <mwoehlke@tibco.com> and Stuart Shelton
-         <srcshelton@gmail.com>
-
-
-lib/sh/snprintf.c
-       - add note to not call log_10 with 0 argument -- we don't want to do
-         what real log10 does (-infinity/raise divide-by-zero exception)
-       - make sure numtoa (used by dtoa) takes the precision into account
-         when computing the fractional part with an argument of `0.0'
-       - make sure `g' and `G' formats don't print radix char if there are
-         no characters to be printed after it (change to floating())
-       - change callers of log_10 (exponent, 'g' and 'G' cases in
-         vsnprintf_internal) to not call it with 0 for argument.  This fixes
-         the hang reported on IRIX by Matthew Woehlke <mwoehlke@tibco.com>
-         and Stuart Shelton <mwoehlke@tibco.com>
-
-                                  10/28
-                                  -----
-builtins/{caller,pushd}.def
-       - changed longdoc strings in loadable builtin section to be single
-         strings, as put in the build directory builtins.c file, to aid
-         translators
-
-                                  11/1
-                                  ----
-execute_cmd.c
-       - reset subshell_environment to 0 after make_child() call in
-         execute_null_command.  Fix provided by Roy Marples
-         <uberlord@gentoo.org>
-
-                                  11/7
-                                  ----
-lib/tilde/tilde.c
-lib/readline/{util,undo,callback,input,isearch,kill}.c
-       - make sure that memory allocated with xmalloc is freed with xfree
-
-                                  11/9
-                                  ----
-lib/readline/display.c
-       - make sure that _rl_redisplay_after_sigwinch clears the last displayed
-         line instead of the current line (instead of assuming that the
-         cursor is on the last line).  Fixes bug reported by Egmont
-         Koblinger <egmont@uhulinux.hu>
-
-                                  11/10
-                                  -----
-lib/readline/display.c
-       - make sure that _rl_col_width is never called with MB_CUR_MAX == 1,
-         since it doesn't count invisible characters and they are not
-         compensated for.  Added a warning in _rl_col_width if called when
-         MB_CUR_MAX == 1.  Bug reported and solution suggested by Eric
-         Blake <ebb9@byu.net>
-
-                                  11/11
-                                  -----
-lib/readline/display.c
-       - make sure _rl_wrapped_line is initialized to inv_lbsize int chars.
-         inv_lbsize and vis_lbsize are the same at that point, but it makes
-         the intent clearer.  Fix from jan.kratochvil@redhat.com.
-       - in rl_redisplay, make sure we call memset on _rl_wrapped_line with
-         its full initialized size: inv_lbsize*sizeof(int).  Fix from
-         jan.kratochvil@redhat.com.
-       - wrap the invisible and visible line variables and _rl_wrapped_line
-         into line_state structures, which can be swapped more efficiently.
-         Have to watch the wrapped_line field, since there's now one for
-         each struct.  Changes from jan.kratochvil@redhat.com.
-
-lib/readline/complete.c
-       - in stat_char, check for `//server' on cygwin and return `/', since
-         it will always behave as a directory.  Fix from Eric Blake
-
-lib/readline/histfile.c
-       - Cygwin's mmap() works in recent versions, so don't #undef HAVE_MMAP.
-         Recommendation from Eric Blake
-
-lib/readline/rlwinsize.h
-       - make sure tcflow() is defined on SCO Unix.  Fix from William Bader
-
-aclocal.m4
-       - add check for localeconv to AM_INTL_SUBDIR macro
-
-config.h.in
-       - add HAVE_LOCALECONV
-
-lib/sh/snprintf.c
-       - add check for HAVE_LOCALECONV for GETLOCALEDATA macro
-
-general.[ch]
-       - first argument to legal_number is now `const char *'
-
-                                  11/14
-                                  -----
-lib/readline/{readline,rlprivate}.h
-       - move rl_display_prompt declaration from rlprivate.h to readline.h
-
-lib/readline/util.h
-       - new function: rl_free(void *mem), for use by users of readline dlls
-         on Windows
-
-lib/readline/readline.h
-       - new extern declaration for rl_free
-
-lib/readline/doc/rltech.texi
-       - document rl_free and rl_display_prompt for use by application writers
-
-                                  11/15
-                                  -----
-aclocal.m4
-       - change tests for /dev/fd and /dev/stdin to use constructs of the form
-         (exec test ... ) instead of test ... to avoid bash's /dev/fd and
-         /dev/stdin emulation
-
-                                  11/16
-                                  -----
-jobs.c
-       - in delete_job, reset_current was being called before the job slot
-         was cleared -- moved after job_slots[job] was set to NULL.  Fixes
-         bug reported by Dan Jacobson <jidanni@jidanni.org>
-
-                                  11/19
-                                  -----
-findcmd.c
-       - when the checkhash option is set, fix the check for the hashed
-         pathname being an existing executable file.  Old code required a
-         hash table deletion and re-addition.  Bug reported by Linda
-         Walsh <bash@tlinx.org>
-
-                                  11/21
-                                  -----
-subst.c
-       - in pos_params, handle case of `start' == 0 by making the list of
-         positional parameters begin with $0
-       - in parameter_brace_substring, increment `len' if start == 0, since
-         we will be adding $0 to the beginning of the list when we process it
-
-doc/{bash.1,bashref.texi}
-       - document new behavior of `0' offset when using substring expansion
-         with the positional parameters
-
-support/shobj-conf
-       - changes to shared object creation for loadable builtins on Mac OS X
-         10.4 to use libtool instead of ld by specifying -dynamiclib
-         argument and changing options to be appropriate for libtool.  This
-         winds up creating a dynamic shared library instead of an executable
-
-                                  11/24
-                                  -----
-{jobs,nojobs}.c
-        - don't set last_asynchronous_pid to the child's pid in the child
-          for asynchronous jobs (for compatibility -- all other posix shells
-          seem to do it this way).  This means that (echo $! )& echo $! should
-          display two different pids.  Fix from discussion on the
-          austin-group-l list
-
-builtins/mkbuiltins.c
-       - change builtins.c file generation so short doc strings are marked for
-         gettext and available for subsequent translation.  Suggestion by
-         Benno Schulenberg <bensberg@justemail.net>
-
-builtins/{bind,cd,hash,inlib,printf,pushd,test,times,ulimit}.def
-lib/malloc/malloc.c
-{shell,subst}.c
-       - fix a few strings that were not marked as translatable.  Fix from
-         Benno Schulenberg <bensberg@justemail.net>
-
-lib/readline/misc.c
-       - new function, _rl_revert_all_lines(void).  Goes through history,
-         reverting all entries to their initial state by undoing any undo
-         lists.
-
-lib/readline/rlprivate.h
-       - extern declaration for _rl_revert_all_lines
-
-rldefs.h
-       - add #undef HAVE_STRCOLL if STRCOLL_BROKEN is defined, prep to move
-         from config.h.in.  Problem reported by Valerly Ushakov
-         <uwe@ptc.spbu.ru>
-
-                                  11/25
-                                  -----
-lib/readline/readline.c
-       - call _rl_revert_all_lines from readline_internal_teardown if the
-         variable _rl_revert_all_at_newline is non-zero
-       - declare _rl_revert_all_lines initially 0
-
-                                  11/27
-                                  -----
-doc/{bash.1,bashref.texi}
-       - make sure to be explicit that `typeset +r' cannot remove the readonly
-         attribute from a variable
-
-                                  11/28
-                                  -----
-lib/sh/zmapfd.c
-       - new file, implements zmapfd(), which takes a file and returns its
-         contents in a string
-
-externs.h
-       - extern declaration for zmapfd
-
-                                  11/29
-                                  -----
-builtins/evalfile.c
-       - in _evalfile, use zmapfd to read the contents of the file into a
-         string, rather than using the size reported by stat and reading that
-         many characters, if the file is not a regular file (for things like
-         named pipes, stat reports the size as 0)
-
-                                  12/3
-                                  ----
-lib/sh/snprintf.c
-       - make sure number() sets the FL_UNSIGNED flag for %x and %X, so
-         fmtulong treats them as unsigned numbers.  Fixes bug reported by
-         James Botte <James.M.Botte@lowes.com>
-
-                                  12/13
-                                  -----
-lib/readline/util.c
-       - new function, _rl_ttymsg, for internal warning messages -- does
-         redisplay after printing message
-       - new function, _rl_errmsg, for internal warning/error messages --
-         does not do redisplay after printing message
-
-lib/readline/rlprivate.h
-       - new extern declaration for _rl_ttymsg, _rl_errmsg
-
-lib/readline/{bind,callback,complete,display,rltty}.c
-       - use _rl_ttymsg/_rl_errmsg instead of direct writes to stderr
-
-lib/sh/tmpfile.c
-       - in get_tmpdir(), make sure that $TMPDIR names a writable directory;
-         otherwise skip it.  This catches names longer than PATH_MAX, but in
-         case it doesn't test that the length does not exceed PATH_MAX.  Fixes
-         heap overrun bug reported by Eric Blake <ebb9@byu.net>
-
-                                  12/16
-                                  -----
-builtin/{set,declare,shopt,trap,wait,bind,complete,enable,fc,history,read,setattr}.def
-doc/{bash.1,bashref.texi}
-       - improvements and clarifications to the help text associated with
-         several builtins, in some cases bringing them into line with the
-         man page text.  From Benno Schulenberg <bensberg@justemail.net>
-
-doc/{bash.1,bashref.texi}
-       - add `E' and `T' to the synopsis of the set builtin.
-         From Benno Schulenberg <bensberg@justemail.net>
-
-builtins/{break,exit,fg_bg,hash,jobs,type,ulimit}.def
-builtins/{common,evalfile}.c
-{error,expr,jobs,mksyntax,nojobs,shell,subst,version,siglist}.c
-       - add gettextizing marks to untranslated strings
-         From Benno Schulenberg <bensberg@justemail.net>
-
-                                  12/19
-                                  -----
-builtins/common.c
-       - change display_signal_list (used by `trap -l' and `kill -l') to use
-         five columns instead of 4 to display signal names
-
-builtins/help.def
-       - use the true terminal width instead of assuming 80 when displaying
-         help topics, leaving two characters of whitespace between horizontal
-         descriptions instead of 1
-       - change to print in columns with entries sorted down rather than across
-         (that is, like `ls' rather than `ls -x').  Change inspired by Benno 
-         Schulenberg <bensberg@justemail.net>
-
-jobs.h
-       - give values to the JOB_STATE enumerations so they can be used as
-         bitmasks, too
-
-                                  12/22
-                                  -----
-doc/{bash.1,bashref.texi}
-       - change description of `set' to make it clearer that you can use
-         `+' to turn off options
-       - clarify in the description of word splitting that sequences of
-         IFS whitespace at the beginning or end of the string are ignored
-
-                                  12/26
-                                  -----
-doc/bashref.texi
-       - move `shopt' builtin to its own section; change internal references
-         from `Bash Builtins' to the new shopt builtin
-       - new section for builtins that modify shell behavior in `Shell
-         Builtin Commands'; move set and shopt to new section.  Changes
-         inspired by Benno Schulenberg <bensberg@justemail.net>
-
-{redir,subst}.c
-       - add MT_USETMPDIR flag to calls to sh_mktmpfd and sh_mktmpname.  Bug
-         reported by Eric Blake <ebb9@byu.net>
-
-{configure,Makefile}.in
-       - changes so that the pathname for DEBUGGER_START_FILE is substituted
-         into pathnames.h at make time (allowing more flexibility in setting
-         `prefix' or `datadir') instead of at configure time.  Suggested by
-         Nick Brown <nickbroon@blueyonder.co.uk>
-
-shell.c
-       - declaration for  have_devfd; initialized from HAVE_DEV_FD
-       - declaration for check_jobs_at_exit; initialized to 0
-       - declaration for autocd; initialized to 0
-
-variables.c
-       - new dynamic variable, BASHPID, always set from return value from
-         getpid() (changes even when $$ doesn't change).  Idea from Bruce
-         Korb <bruce.corb@3pardata.com>
-
-builtins/exit.def
-       - if check_jobs_at_exit is non-zero, list jobs if there are any stopped
-         or running background jobs; don't exit shell if any running jobs
-
-execute_cmd.c
-       - in execute_simple_command, if the first word of a simple command is
-         a directory name (after looking for builtins, so `.' isn't caught)
-         that isn't found in $PATH, and `autocd' is non-zero, prefix a "cd"
-         to the command words
-
-builtins/shopt.def
-       - new `checkjobs' option, changes value of check_jobs_at_exit
-       - new `autocd' option, changes value of autocd
-
-pcomplete.c
-       - add COMP_TYPE, set to rl_completion_type, to list of variables set
-         by bind_compfunc_variables and unset by unbind_compfunc_variables
-
-doc/{bash.1,bashref.texi}
-       - document BASHPID
-       - document new shopt `checkjobs' option
-       - document new shopt `autocd' option
-       - document COMP_TYPE completion variable
-
-                                  12/29
-                                  -----
-aclocal.m4
-       - in BASH_SYS_SIGLIST, check HAVE_DECL_SYS_SIGLIST instead of the
-         obsolete and no-longer-supported SYS_SIGLIST_DECLARED
-
-                                  12/30
-                                  -----
-lib/readline/vi_mode.c
-       - add ` (backquote) to the list of vi motion characters
-       - in rl_vi_delete_to, rl_vi_change_to, and rl_vi_yank_to, don't delete
-         character under the cursor if the motion command moves the cursor
-         backward, so add F and T to the commands that don't cause the
-         mark to be adjusted
-       - add ` to the characters that don't cause the mark to be adjusted
-         when used as a motion command, since it's defined to behave that way
-       - when a motion character that may adjust the mark moves point
-         backward, don't adjust the mark so the character under the cursor
-         isn't deleted
-
-lib/readline/complete.c
-       - add variable rl_sort_completion_matches; allows application to
-         inhibit match list sorting
-       - add variable rl_completion_invoking_key; allows applications to
-         discover the key that invoked rl_complete or rl_menu_complete
-
-lib/readline/readline.h
-       - extern declarations for rl_completion_invoking_key and
-         rl_sort_completion_matches
-
-lib/readline/doc/rltech.texi
-       - documented rl_completion_invoking_key and rl_sort_completion_matches
-
-pcomplete.c
-       - export variable COMP_KEY to completion functions; initialized from
-         rl_completion_invoking_key; unset along with rest of completion
-         variables
-
-doc/{bash.1,bashref.texi},lib/readline/doc/rluser.texi
-       - document COMP_KEY
-
-[many files]
-       - changes to make variables and function parameters `const' for better
-         text sharing.  Changes originally from Andreas Mohr
-         <andi@rhlx01.fht-esslingen.de>
-
-                                1/4/2007
-                                --------
-lib/intl/Makefile.in
-       - use cmp before copying libgnuintl.h to libintl.h -- maybe save a few
-         rebuilds
-
-lib/builtins/Makefile
-       - fixes to build LIBINTL_H if necessary, dependency on this for
-         mkbuiltins.o prevented `make -j 6' from working correctly
-
-                                   1/8
-                                   ---
-subst.c
-       - new function, fifos_pending(), returns the count of FIFOs in
-         fifo_list (process substitution)
-
-subst.h
-       - extern declaration for fifos_pending()
-
-execute_cmd.c
-       - in execute_simple_command, if CMD_NO_FORK is set before we call
-         execute_disk_command, make sure there are no FIFOs in the expanded
-         words (from process substitution) and turn off CMD_NO_FORK if there
-         are, so they can get unlinked when the command finishes
-
-                                  1/10
-                                  ----
-subst.c
-       - read_comsub now takes a flags parameter and returns appropriate W_*
-         flags in it
-       - command_substitute now returns a WORD_DESC *, with the string it used
-         to return as the `word' and `flags' filled in appropriately
-
-subst.h
-       - changed extern declaration for command_substitute
-
-{pcomplete,subst}.c
-       - changed callers of command_substitute appropriately
-
-subst.c
-       - string_extract_verbatim now takes an additional int flags argument;
-         changed callers
-
-                                  1/11
-                                  ----
-support/texi2html
-       - fix problem that caused index links to not be generated if the first
-         index node had a name different than the node name
-
-doc/bashref.texi
-       - encapsulated all indexes into a single `Indexes' appendix; works
-         around bug fixed in texi2html
-
-                                  1/12
-                                  ----
-subst.c
-       - add call to sv_histtimefmt in initialize_variables so HISTTIMEFORMAT
-         from the environment is honored.  Fix from Ark Submedes (heh)
-         <archimerged@gmail.com>
-
-lib/readline/histfile.c
-       - make sure that the first character following the history comment
-         character at the beginning of a line is a digit before interpreting
-         it as a timestamp for the previous line
-
-doc/{bash.1,bashref.texi},lib/readline/doc/hsuser.texi
-       - added detail to make it clear exactly how history timestamps are
-         saved to and read from the history file
-
-subst.c
-       - change quote_escapes to add CTLESC before spaces if IFS is null,
-         just in case we have to split on literal spaces later on (e.g., in
-         case of unquoted $@).  Corresponding changes to dequote_escapes.
-         Fixes a couple of problems reported by Brett Stahlman
-         <brettstahlman@comcast.net>
-
-                                  1/14
-                                  ----
-subst.c
-       - make same change to read_comsub to add CTLESC before ' ' if $IFS is
-         null, since we will split on literal spaces later
-
-                                  1/15
-                                  ----
-array.c
-       - new function, array_quote_escapes (ARRAY *a), calls quote_escapes
-         on each element of the array in the same way array_quote calls
-         quote_string
-       - call array_quote_escapes if match is not quoted in array_patsub
-       - array_slice is now used, so remove the #ifdef INCLUDE_UNUSED define
-       - change structure of array_subrange to call array_slice to create a
-         new array with the desired subset of elements, then call array_quote
-         or array_quote_escapes as necessary, like array_patsub.  Convert to
-         a string by calling array_to_string on the sliced-out array
-
-array.h
-       - new extern declaration for array_quote_escapes
-
-subst.c
-       - since array_patsub now calls quote_escapes as necessary, callers
-         don't need to call it after array_patsub returns.  Fixes first bug
-         reported by Brett Stahlman <brettstahlman@comcast.net>
-       - since array_subrange now calls quote_escapes as necessary, callers
-         don't need to call it after array_patsub returns.  Same fix as
-         for array_patsub
-
-                                  1/31
-                                  ----
-configure.in
-       - add -DSOLARIS to LOCAL_CFLAGS for solaris x
-
-config-bot.h
-       - don't #undef HAVE_GETCWD if GETCWD_BROKEN and SOLARIS are both
-         defined.  Solaris's loopback mount implementation breaks some of the
-         file system assumptions the replacement getcwd uses.
-
-builtins/common.c
-       - if GETCWD_BROKEN is defined, call getcwd with PATH_MAX for the size
-         argument, so it will allocate a buffer for the current working dir
-         with that size, instead of one that's `big enough'
-
-config.h.in
-       - add #undef PRI_MACROS_BROKEN for AIX 4.3.3
-
-pathexp.h
-       - new flag value for quote_string_for_globbing: QGLOB_REGEXP (quoting
-         an ERE for matching as a string)
-
-pathexp.c
-        - change quote_string_for_globbing to understand QGLOB_REGEXP
-
-execute_cmd.c
-       - change execute_cond_node to pass 2 (regexp match), 1 (shell pattern
-         match), or 0 (no matching) to cond_expand_word
-
-subst.c
-       - change cond_expand_word to translate SPECIAL==2 into passing
-         QGLOB_REGEXP to quote_string_for_globbing
-
-locale.c
-       - by default, if all else fails, set shell's idea of locale to ""
-         instead of its idea of `default_locale' -- the library functions
-         behave better with that value
-
-                                   2/2
-                                   ---
-builtins/printf.def
-       - if PRI_MACROS_BROKEN is defined, #undef PRIdMAX (AIX 4.3.3 broken)
-
-                                   2/3
-                                   ---
-Makefile.in,{builtins,doc}/Makefile.in,lib/*/Makefile.in
-       - add assignment for datarootdir as per GNU coding standards
-
-Makefile.in,builtins/Makefile.in,lib/intl/Makefile.in,po/Makefile.in.in
-       - use @localedir@ instead of $(datadir)/locale in assignment
-
-                                  2/13
-                                  ----
-jobs.c
-       - fix compact_jobs_list to not return js.j_lastj, since that is in use
-         and should not be overwritten.  Fix from Len Lattanzi
-         <llattanzi@apple.com>
-
-                                  2/16
-                                  ----
-lib/readline/text.c
-       - change rl_forward_char to allow moving to the end of the line when
-         using the arrow keys in vi insertion mode, rather than having the
-         behavior identical between vi command and insertion modes.  Change
-         suggested by Hugh Sasse <hgs@dmu.ac.uk>
-
-                                  2/19
-                                  ----
-CWRU/audit-patch
-       - patch from Steve Grubb of RedHat <sgrubb@redhat.com> to make bash
-         audit root's behavior by logging commands using his audit
-         framework.  Enabled if the shell's name is `aubash'.
-
-                                   3/8
-                                   ---
-jobs.c
-       - use WSTATUS (p->status) instead of bare p->status.  Fix from
-         Jim Brown <jim.brown@rsmas.miami.edu>
-
-                                   3/9
-                                   ---
-lib/readline/{complete,input,isearch,misc,readline,text,vi_mode}.c
-       - make sure cases where rl_read_key returns -1 (usually due to EIO
-         because the controlling tty has gone away) are handled correctly.
-         Prompted by report from Thomas Loeber <ifp@loeber1.de>
-
-                                  3/10
-                                  ----
-sig.c
-       - new function, top_level_cleanup, callable from contexts where some
-         cleanup needs to be performed before a non-fatal call to
-         jump_to_top_level
-
-sig.h
-       - new extern declaration for top_level_cleanup
-
-builtins/common.c
-       - add calls to top_level_cleanup before calls to jump_to_top_level
-         in a builtin command context (no_args(), get_numeric_arg()).  Fixes
-         bug reported by Ian Watson
-
-lib/readline/display.c
-       - in _rl_move_cursor_relative, use `new' when comparing against
-         the last invisible character in the prompt, since they both denote
-         buffer indices when in a multibyte locale, whereas `dpos' is a
-         display position
-
-                                  3/13
-                                  ----
-lib/readline/complete.c
-       - set rl_completion_append_character to the default (' ') in
-         set_completion_defaults().  Fixes bug reported by David Emerson
-         <demerson3x@angelbase.com>
-
-                                  3/23
-                                  ----
-builtins/evalfile.c
-       - make sure read() returns a value >= 0 before using it as an index
-         into string[]
-       - use a variable of type `ssize_t' for return value from read()
-       - only try to read the entire contents of a regular file in one shot
-         if the file size is less than SSIZE_MAX.  These fix problems
-         reported by hooanon05@yahoo.co.jp.
-
-include/typemax.h
-       - define SSIZE_MAX as 32767 if it's not defined
-
-lib/readline/display.c
-       - in rl_redisplay() and update_line(), if redrawing the prompt because
-         it contains invisible characters, make sure we redraw the character
-         indicating a modified history line and take it into account when
-         computing _rl_last_c_pos
-       - in update_line, if deleting characters and redrawing the new text,
-         make sure we adjust _rl_last_c_pos by wrap_offset in a multibyte
-         locale if the text we're drawing starts before or at the last
-         invisible character in the prompt string.  Fixes bug reported on
-         bug-readline by J Pelkey <pelkeyj@gmail.com>
-
-parse.y
-       - when adding at CTLESC character to the current token, do not
-         escape it with CTLESC if pass_next_character indicates that the
-         CTLESC was escaped by a backslash.  Fixes bug reported by
-         Paul Bagshaw <paul.bagshaw@orange-ftgroup.com>.
-
-                                  3/25
-                                  ----
-lib/readline/text.c
-       - in rl_forward_char, short-circuit the loop if in emacs mode and
-         rl_point == rl_end.  Fixes problem with multibyte locales
-         reported by Len Lattanzi <llattanzi@apple.com>
-
-                                  3/29
-                                  ----
-command.h
-       - new flag for subshell_environment: SUBSHELL_PROCSUB, for process
-         substitution
-
-subst.c
-       - add SUBSHELL_PROCSUB to subshell_environment in process_substitute
-
-                                  3/30
-                                  ----
-doc/Makefile.in
-       - fix installation of bash.info to understand that it is in the build
-         directory, not the source directory
-
-mailcheck.c
-       - new function, init_mail_dates, calls remember_mail_dates only if
-         there are no mailboxes in `mailfiles'
-       - new function, init_mail_file, initializes a FILEINFO, using the
-         last time mail was checked as the mtime and atime (or the time the
-         shell was started if last_time_mail_checked is uninitialized)
-       - call init_mail_file instead of update_mail_file in add_mail_file,
-         called from remember_mail_dates (which is supposed to initialize
-         the list of mail files)
-       - new convenience functions, alloc_mail_file and dispose_mail_file to
-         allocate and free FILEINFO structs
-
-mailcheck.h
-       - extern declaration for init_mail_dates
-
-shell.c
-       - call init_mail_dates instead of remember_mail_dates
-
-                                   4/4
-                                   ---
-builtins/read.def
-       - changes to print $PS2 when a line is continued with a backslash in
-         an interactive shell.  This is as POSIX requires
-
-                                   4/5
-                                   ---
-subst.c
-       - make sure quote_escapes is only ever called when the word to be
-         escaped is not marked as double-quoted -- cleaner, and allows us
-         to make certain assumptions
-
-                                   4/6
-                                   ---
-subst.c
-       - change all EX_* defines to begin with SX_
-       - new flag, SX_NOCTLESC, obeyed by string_extract_verbatim, tells it
-         to not obey CTLESC quoting
-       - change quote_escapes to not quote CTLESC with CTLESC if one of the
-         chars in $IFS is CTLESC, since the return value from quote_string
-         will be passed to word splitting and filename generation
-       - change read_comsub to do the same thing for unquoted command
-         substitutions
-       - change list_string to pass SX_NOCTLESC if CTLESC is one of the
-         chars in $IFS, so it will split on CTLESC instead of using it as a
-         quote character
-
-                                   4/7
-                                   ---
-subst.c
-       - slight change to string_extract_verbatim to allow CTLESC to quote
-         CTLNUL even if SX_NOCTLESC is set in the flags passed, to protect
-         the CTLNULs from future calls to remove_quoted_nulls.  Only
-         matters when $IFS contains CTLESC
-       - changes to cope with $IFS containing CTLNUL in the same way as the
-         CTLESC changes
-
-builtins/read.def
-       - changes to cope with $IFS containing CTLNUL in the same way as the
-         CTLESC changes
-
-                                  4/16
-                                  ----
-lib/sh/strftime.c
-       - a couple of fixes to the `%z' code
-
-eval.c
-       - add an fflush after printing the auto-logout message
-
-                                  4/24
-                                  ----
-subst.c
-       - add call to top_level_cleanup in exp_jump_to_top_level to get things
-         like unwind-protects and the loop levels cleaned up
-
-{arrayfunc,expr,variables}.c
-       - add calls to top_level_cleanup before jump_to_top_level() 
-
-                                  4/27
-                                  ----
-builtins/complete.def
-       - make sure the `command' argument to the -C option is printed with
-         single quotes, since multi-word commands will require them.  Bug
-         reported by martin@snowplow.org
-
-execute_cmd.c
-       - change execute_builtin_or_function and execute_subshell_builtin_or_function
-         to call fflush(stdout) after the builtin or function returns, to
-         make sure that all output  is flushed before the call returns.  It
-         matters on cygwin.  Fix suggested by Eric Blake <ebb9@byu.net>
-
-redir.c
-       - in do_redirection_internal, if the file descriptor being acted upon
-         is the same one used by the stdout stream, call fflush(stdout) to
-         make sure all output is flushed before changing the underlying fd
-         out from underneath stdio.  Fix suggested by Eric Blake <ebb9@byu.net>
-
-
-                                  4/30
-                                  ----
-
-builtins/common.c
-       - new function, sh_chkwrite(int), fflushes stdout and checks for error;
-         printing an error message and returning a new exit status if there's
-         an error on stdout.  Takes exit status as argument; returns new exit
-         status (EXECUTION_FAILURE if write error)
-
-builtins/common.h
-       - new extern declaration for sh_chkwrite
-
-builtins/{alias,cd,complete,echo,fc,history,pushd,shopt,times,trap,type,ulimit,umask}.def
-       - change to use sh_chkwrite to report write errors
-
-builtins/fc.def
-       - if an error occurs while writing commands from the history to a file
-         to be executed, report a write error and return failure without
-         attempting to execute any commands
-
-                                   5/1
-                                   ---
-builtins/{bind,declare,set,setattr}.def
-       - change to use sh_chkwrite to report write errors
-
-                                   5/2
-                                   ---
-lib/readline/input.c
-       - fix off-by-one errors in _rl_get_char (pop_index) and rl_stuff_char
-         (push_index) that caused the 511th character in the buffer to be
-         discarded.  Fixes bug reported by Tom Bjorkholm <tom.bjorkholm@ericsson.com>
-
-                                   5/8
-                                   ---
-subst.c
-       - fix parameter_brace_remove_pattern to pass getpattern() newly-allocated
-         memory.  If word expansions (particularly brace expansions) are
-         required, the expansion code will free the string passed to
-         expand_word_internal, and we don't want to free unallocated memory
-         (patstr++) or have duplicate frees (patstr).  Fixes bug reported on
-         Red Hat bugzilla
-
-                                   5/9
-                                   ---
-lib/readline/signals.c
-       - fix bug in rl_set_signals that caught SIGINT twice and didn't catch
-         SIGTERM.  Bug reported by Ed Kwan <ed.kwan@onstor.com>
-
-                                  5/18
-                                  ----
-jobs.c
-       - change compact_jobs_list to return 1 if js.j_lastj == 0 and there is
-         a job in jobs[0]; compact_jobs_list should never return an index
-         already occupied
-       - change reset_job_indices to avoid infinite looping when js.j_firstj
-         == 0 or js.j_firstj == js.j_jobslots upon function entry.  Fixes
-         bug reported by osicka@post.cz
-
-                                  5/20
-                                  ----
-
-execute_cmd.c
-       - new variable, executing_builtin, keeps track of number of "levels"
-         of builtins being executed; incremented by execute_builtin; saved
-         and restored by execute_simple_command
-
-subst.c
-       - new variable, assigning_in_environment, set and unset around calls
-         to assign_in_env by the expansion code
-
-variables.c
-       - use executing_builtin and assigning_in_environment to decide whether
-         or not to look into temporary_env when calling find_variable_internal.
-         Fixes problem reported by Kevin Quinn <kevquinn@gentoo.org>
-
-                                  5/22
-                                  ----
-redir.c
-       - change add_undo_redirect to differentiate between file descriptors
-         greater than SHELL_FD_BASE (currently 10) used internally to save
-         others and then being the targets of user redirection and fds that
-         are just the target of user redirections.  The former need to have
-         an `exec undo' redirect added to undo it in case exec throws away
-         redirections; the latter does not.  We use the close-on-exec flag
-         for this:  if it's set, we assume that the file descriptor is being
-         used internally to save another.  Fixes problem reported by Ian
-         Jackson <ian@davenant.greenend.org.uk>
-
-shell.c
-       - new function, init_interactive_script(), does interactive initialization
-         for a script run with `bash -i script' -- does everything the same
-         as init_interactive except set `interactive == 1', which causes the
-         shell to read from the standard input, after calling
-         init_noninteractive
-       - call init_interactive_script if a script is run as `bash -i script'.
-         Fixes problem reported by Joseph Michaud <jmichaud@sgi.com>
-
-                                  5/24
-                                  ----
-builtins/printf.def
-       - change vbadd to only call FASTCOPY if the passed buffer length is
-         > 1
-       - if the `-v' option is supplied and `vbuf' is already non-null from a
-         previous `printf -v var' call, set vbuf[0]=0 explicitly instead of
-         relying on vbadd to do it -- vbadd may not be called.
-       - fix PRETURN macro to set vbuf[0] == 0 if vbuf is not freed.  These
-         should fix problem reported by Elmar Stellnberger <estellnb@yahoo.de>
-
-lib/readline/display.c
-        - fix update_line to deal with the case where col_lendiff > 0 (meaning
-          the new string takes up more screen real estate than the old) but
-          lendiff < 0 (meaning that it takes fewer bytes to do so).  This can
-          happen when a multibyte prompt string is replaced with a longer one
-          containing only single-byte characters (e.g., when doing a reverse
-          i-search).  Fixes gentoo bug reported by Peter Volkov
-          <torre_cremata@mail.ru>
-
-builtins/read.def
-       - make sure we only print $PS2 if the standard input is a terminal
-       - new function, read_mbchar, to read a multibyte character so we
-         can make sure we read entire multibyte chars when `read -n' is
-         used, rather than bytes.  Only called when -n is supplied.
-         Fixes problem reported by Stanislav Brabec <sbrabec@suse.cz>
-
-                                  5/25
-                                  ----
-externs.h
-       - new #defines for third argument to named_function_string:
-         FUNC_MULTILINE (don't suppress newlines) and FUNC_EXTERNAL (convert
-         to external display form)
-
-subst.h
-       - new extern declaration for remove_quoted_escapes
-
-subst.c
-       - remove_quoted_escapes is now global
-
-print_cmd.c
-       - in named_function_string, if FUNC_EXTERNAL is in the flags argument,
-         call remove_quoted_escapes to convert from internal to external form.
-         Fixes bug reported by Bo Andresen <bo.andresen@zlin.dk>
-
-variables.c,builtins/{declare,setattr,type}.def
-       - use FUNC_MULTILINE in calls to named_function_string as appropriate
-       - add FUNC_EXTERNAL to calls to named_function_string as appropriate
-
-                                  5/27
-                                  ----
-{make_cmd,variables}.c
-       - changes to enable the shell to compile when debugger support is
-         configured out (function_def hash table and access functions).  Fixes
-         bug reported by Horst Wente <horst.wente@acm.org>
-
-builtins/help.def
-       - fix bug in `help' two-column printing to avoid referencing
-         shell_builtins[num_shell_builtins]
-
-error.c
-       - in get_name_for_error, use dollar_vars[0] if the name returned from
-         looking in $BASH_SOURCE[0] is the empty string as well as if it's
-         null
-
-                                  5/31
-                                  ----
-arrayfunc.c
-       - change array_value_internal to set *RTYPE to 1 if the reference is
-         array[*] and 2 if the reference is array[@]
-
-subst.c
-       - in parameter_brace_expand_word, set the flags returned by the word
-         desc to include W_HASQUOTEDNULL if array_value returns QUOTED_NULL
-         for an array reference like x[*] and the word is quoted.  Fixes bug
-         reported by Christophe Martin <schplurtz@free.fr>
-
-                                   6/1
-                                   ---
-jobs.c
-       - several changes to preserve errno if tcgetpgrp/tcgetattr/tcsetattr
-         fail, for subsequent error messages
-       - change initialize_job_control to turn off job control if the terminal
-         pgrp == -1 or is not equal to shell_pgrp (with an error message)
-       - in initialize_job_control, if the shell has been forced interactive
-         with -i, make sure stderr is hooked to a tty before using it as
-         the controlling terminal.  If it's not, try to open /dev/tty and
-         assign it to shell_tty.  Fixes problems reported by Derek Fawcus
-         <dfawcus@cisco.com>
-
-                                  6/13
-                                  ----
-support/shobj-conf
-       - changes to support shared object and shared library creation on AIX
-         5.x and later versions.  From Niklas Edmundsson <nikke@acc.umu.se>
-
-                                  6/17
-                                  ----
-builtins/mkbuiltins.c
-       - new array of builtins, posix_builtins, containing builtins listed
-         as special to the command search order by POSIX
-       - add POSIX_BUILTIN to the builtin flags if the builtin name is one
-         that's special to the posix command search order
-
-builtins.h
-       - new define, POSIX_BUILTIN, means that a builtin is special to the
-         posix command search order
-
-                                  6/22
-                                  ----
-lib/readline/display.c
-       - new macro, WRAP_OFFSET, intended to replace W_OFFSET.  Takes prompt
-         strings longer than one physical line with invisible characters on
-         the second line into account when calculating the number of
-         invisible characters on the current screen line
-       - use WRAP_OFFSET where appropriate (update_line, _rl_move_cursor_relative)
-       - change update_line to deal with adjusting _rl_last_c_pos in a
-         multibyte environment when the prompt has invisible chars on the
-         second line and redisplay has output the invisible characters
-       - change _rl_move_cursor_relative to adjust _rl_last_c_pos in a
-         multibyte environment when the prompt has invisible chars on the
-         second line and the redisplay draws the invisible character.  Fixes
-         redisplay bug reported by Andreas Schwab <schwab@suse.de>
-
-
-                                  7/11
-                                  ----
-
-lib/readline/rltty.c
-       - enable flush-output code for systems other than AIX 4.1.  Problem
-         reported by Jan Kratochvil <jan.kratochvil@redhat.com>
-
-                                  7/12
-                                  ----
-lib/readline/display.c
-       - set prompt_invis_chars_first_line from the portion of the prompt
-         following the final newline, instead of from the prefix.  Fixes
-         bug reported on the Ubuntu bug list by dAniel hAhler
-         <ubuntu@thequod.de>
-
-                                  7/13
-                                  ----
-variables.c
-       - use native __QNX__ and __QNXNTO__ cpp defines instead of qnx and
-         qnx6, respectively.  Patch from Sean Boudreau <seanb@qnx.com>
-
-lib/sh/getcwd.c
-       - #undef HAVE_LSTAT on qnx, so it uses stat instead.  Patch from
-         Sean Boudreau <seanb@qnx.com>
-
-                                  7/21
-                                  ----
-builtins/common.c
-       - change sh_invalidnum to be a little smarter about octal and hex
-         numbers and change the message appropriately.  Bug originally
-         reported on coreutils list by Jürgen Niinre <Jyrgen.Niinre@emt.ee>
-
-                                  7/26
-                                  ----
-test.c
-       - make sure the string passed to test_unop has only a single character
-         following the `-'.  Fixes bug reported by Michael A. Smith
-         <michael@smith-li.com>
-
-parse.y
-       - better input validation: make sure a word looks like a conditional
-         unary operator (-X) before calling test_unop
-
-                                  7/28
-                                  ----
-trap.c
-       - in trap_handler, if it's called directly from the signal handler
-         (e.g., SIGINT sighandler, set by set_sigint_handler), but the
-         trap disposition has been reset to the default between the
-         assignment and receipt of the signal, check that the signal is
-         trapped and issue a warning if the shell was compiled with
-         debugging enabled.  Fixes bug reported by Fergus Henderson
-         <fergus@google.com>
-
-                                   8/1
-                                   ---
-lib/readline/{util,histexpand}.c
-       - fixes for small memory leaks from Michael Snyder <msnyder@sonic.net>
-
-                                  8/18
-                                  ----
-Makefile.in
-       - add dependency on builtins/builtext.h to nojobs.o list.  Fixes
-         `make -j 5' issue reported by Chris MacGregor <chris@bouncingdog.com>
-
-examples/loadables/Makefile.in
-       - add @LDFLAGS@ to SHOBJ_LDFLAGS assignment -- experimental.  Suggested
-         by Mike Frysinger <vapier@gentoo.org>
-
-examples/loadables/{basename,cut,dirname,finfo,head,ln,logname,mkdir,pathchk,print,printenv,push,realpath,rmdir,sleep,tee,truefalse,tty,uname,unlink,whoami}.c
-       - fix up some includes.  Fix from Mike Frysinger <vapier@gentoo.org>
-
-                                  8/21
-                                  ----
-histexpand.c
-       - fix another memory leak in history_find_word.  Bug report originally
-         from Michael Snyder <msnyder@sonic.net>; test case suggested by Jim
-         Blandy <jimb@codesourcery.com>
-
-                                  8/26
-                                  ----
-subst.c
-       - change to do_assignment_internal to make an assignment to a variable
-         with the `noassign' internal attribute not a variable assignment
-         error.
-       - fix do_assignment_internal so assignment to a `noassign' variable
-         does not cause it to suddenly become visible if it's currently
-         invisible
-
-                                   9/3
-                                   ---
-stringlib.c
-       - change strsub to check whether or not temp is non-null before
-         trying to null-terminate it.  Also make sure temp is allocated
-         even if the pattern and replacement strings are empty, and set
-         to a copy of string (like ${foo//})
-         Bug report from Timo Lindfors <timo.lindfors@iki.fi>
-
-                                  9/10
-                                  ----
-{config.h,Makefile,configure}.in,aclocal.m4
-       - new tests for fpurge and __fpurge
-
-lib/sh/fpurge.c, externs.h
-       - new file, fpurge(3) implementation with external decl in externs.h
-
-builtins/common.c
-       - add call to fpurge(stdout) to sh_chkwrite
-
-{redir,execute_cmd}.c
-       - add call to fpurge(stdout) after fflush(stdout) before changing
-         stdout file descriptor and after a builtin or function executes
-
-                                  9/12
-                                  ----
-expr.c
-       - make sure noeval is set to 0 when a longjmp occurs, since it will
-         not be reset otherwise, and it can be set to 1 while processing
-         a {pre,post}-increment or {pre,post}-decrement token
-       - set noeval to 0 at the beginning of evalexp, since it's never
-         called recursively
-
-                                  9/14
-                                  ----
-config-top.h
-       - new builder-modifiable define:  DONT_REPORT_BROKEN_PIPE_WRITE_ERRORS
-         Turning it on will cause errors from EPIPE to not be reported by
-         the normal shell write error message mechanism
-
-builtins/common.c
-       - if DONT_REPORT_BROKEN_PIPE_WRITE_ERRORS is defined, don't print an
-         error message from sh_wrerror if errno == EPIPE.  Suggestion from
-         Petr Sumbera <petr.sumbera@sun.com>
-
-                                  9/19
-                                  ----
-{jobs,nojobs}.c,jobs.h
-       - add code to retry fork() after EAGAIN, with a progressively longer
-         sleep between attempts, up to FORKSLEEP_MAX (16) seconds.  Suggested
-         by Martin Koeppe <mkoeppe@gmx.de>
-
-                                  9/21
-                                  ----
-version.c
-       - change copyright year to 2007
-
-                                  9/25
-                                  ----
-pathexp.c
-       - change quote_string_for_globbing to add a backslash in front of a
-         backslash appearing in the pathname string, since the globbing
-         code will interpret backslashes as quoting characters internally.
-         Bug reported by <herbert@gondor.apana.org.au> on the debian list
-         (443685)
-
-                                  10/8
-                                  ----
-lib/readline/display.c
-       - in update_line, make sure _rl_last_c_pos is > 0 before setting
-         cpos_adjusted (or we actually moved the cursor to column 0 in
-         _rl_move_cursor_relative).  Fixes redisplay bug with prompt with
-         only invisible characters reported by dAniel hAhler
-         <ubuntu@thequod.de>
-
-                                  10/10
-                                  -----
-lib/readline/display.c
-       - in rl_redisplay, when calculating the new physical cursor position
-         in a multibyte locale (`tx'), do not call rl_backspace if tx ends
-         up < 0.  Rest of fix for bug reported by dAniel hAhler
-         <ubuntu@thequod.de>
-
-                                  10/12
-                                  -----
-lib/sh/getcwd.c
-       - fix memory overwrite problem that's possible if buf is NULL and
-         passed size is greater than the pathname length.  Reported by
-         Ian Campbell <ian.campbell@xensource.com>
-
-builtins/ulimit.def
-       - change the multiplier for the -c and -f options (`blocks') to 512,
-         the traditional value (and the one POSIX specifies).  Bug reported
-         by Pete Graner <pgraner@redhat.com>
-
-braces.c
-       - pass process substitution through unchanged the same as command
-         substitution.  Prompted by suggestion from Stephane Chazelas
-         <stephane_chazelas@yahoo.fr>
-
-lib/readline/input.c
-       - in rl_unget_char, fix off-by-one error when resetting pop_index if
-         it's < 0.  Bug reported by Uwe Doering <gemini@geminix.org>
-
-builtins/type.def
-       - change exit status of `type' to not successful if any of the
-         requested commands are not found.  Reported by Stephane Chazleas
-         <stephane_chazelas@yahoo.fr>
-
-pcomplete.c
-       - change command_line_to_word_list to use rl_completer_word_break_characters
-         instead of the shell metacharacters to split words, so programmable
-         completion does the same thing readline does internally.  Reported
-         by Vasily Tarasov <vtaras@sw.ru>
-
-                                  10/16
-                                  -----
-bashline.c
-       - When completing a command name beginning with a tilde and containing
-         escaped specical characters, dequote the filename before prefixing
-         it to the matches, so the escapes are not quoted again.  Reported
-         by neil@s-z.org
-
-                                  10/17
-                                  -----
-expr.c
-       - in readtok(), don't reset lasttp if we've consumed the whitespace
-         at the end of the expression string.  Fixes error message problem
-         reported by <anmaster@tele2.se>
-
-                                  11/1
-                                  ----
-builtins/printf.def
-       - change asciicode() to return intmax_t; add multibyte character
-         support instead of assuming ASCII (depending on behavior of system
-         multibyte support functions).  Fixes bug reported by Rich
-         Felker <dalias@aerifal.cx>
-
-                                  11/5
-                                  ----
-execute_cmd.c
-       - if redirections attached to a compound command fail, make sure to
-         set last_command_exit_value when returning EXECUTION_FAILURE.
-         Fixes bug reported separately by Andreas Schwab <schwab@suse.de>
-         and Paul Eggert <eggert@cs.ucla.edu>
-
-                                  11/9
-                                  ----
-builtins/read.def
-       - make sure the return value from get_word_from_string is freed if
-         non-null.  Fixes memory leak bug reported by Lars Ellenberg
-         <lars.ellenberg@linbit.com>
-
-                                  11/10
-                                  -----
-variables.c
-       - use getpid() as value of seeded_subshell to avoid problems with
-         random number generator not getting re-seeded correctly when
-         subshells are created.  Fix from Tomas Janousek <tjanouse@redhat.com>
-
-lib/readline/display.c
-       - in update_line(), when outputting characters at the end of the line,
-         e.g., when displaying the prompt string, adjust _rl_last_c_pos by
-         wrap_offset if the text we're drawing begins before the last
-         invisible character in the line.  Similar to fix from 5/24.  Fixes
-         bug reported by Miroslav Lichvar <mlichvar@redhat.com>
-
-                                  11/14
-                                  -----
-subst.c
-       - fix $[ expansion case to deal with extract_arithmetic_subst
-         returning NULL (if the `]' is missing) and return the construct
-         unchanged in that case.  Fixes tab completion bug reported by
-         Heikki Hokkanen <hoxu@users.sf.net> (debian bug 451263)
-
-lib/readline/mbutil.c
-       - fix _rl_find_next_mbchar_internal to deal with invalid multibyte
-         character sequences when finding non-zero-length chars.  Fixes
-         bug reported by Morita Sho <morita-pub-en-debian@inz.sakura.ne.jp>
-
-                                  11/15
-                                  -----
-variables.c
-       - add new function `seedrand' to seed the bash random number
-         generator from more random data.  Suggestion from Steve Grubb
-         <sgrubb@redhat.com>
-       - replace the rng in brand() with a slightly better one from FreeBSD
-         (filtered through Mac OS X 10.5).  Replacement suggested by
-         Steve Grubb <sgrubb@redhat.com>
-
-                                  11/21
-                                  -----
-configure.in
-       - darwin 9 also requires linking against libreadline.a and
-         libhistory.a because of Apple's questionable decision to ship a
-         libreadline "replacement" that doesn't provide all functions
-
-doc/{bash.1,bashref.texi}
-       - slight change to the text describing the effect of set -e when
-         in a || or && list
-
-                                  12/5
-                                  ----
-jobs.c
-       - fix raw_job_exit_status to correct mixing of int/WAIT values (need
-         to return a WAIT)
-       - arrange so that children run as part of command substitutions also
-         set the SIGINT handler to wait_sigint_handler, since they effectively
-         don't do job control
-       - in wait_for, if a child run as part of a command substitution exits
-         due to SIGINT, resend the SIGINT to the waiting shell with kill(2).
-         This makes sure the exit status propagates 
-
-doc/{bash.1,bashref.texi}
-       - tighten up the language describing when bash tries to see if its
-         stdin is a socket, so it can run the startup files.  Suggested by
-         Vincent Lefevre <vincent@vinc17.org>
-
-eval.c
-       - in the DISCARD case of a longjmp to top_level, make sure
-         last_command_exit_value is set to EXECUTION_FAILURE if it's 0,
-         but leave existing non-zero values alone
-
-subst.c
-       - in command_substitute, don't reset pipeline_pgrp in the child
-         process -- this means that second and subsequent children spawned by
-         this comsub shell get put into the wrong process group, not the
-         shell's.  Fix for bug reported by Ingo Molnar <mingo@elte.hu>
-
-                                  12/6
-                                  ----
-support/shobj-conf
-       - make sure the cases for darwin8.x (Mac OS X 10.4.x) are extended to
-         darwin9.x (Mac OS X 10.5.x).  Fixes problem originally reported
-         against readline-5.2 by schneecrash@gmail.com
-
-                                  12/8
-                                  ----
-subst.c
-       - make sure to add the results of (successful) tilde expansion as a
-         quoted string, to inhibit pathname expansion and word splitting.
-         From recent Austin Group interpretation.
-
-include/shtty.h, lib/sh/shtty.c
-       - add ttfd_onechar, ttfd_noecho, ttfd_eightbit, ttfd_nocanon, and
-         ttfd_cbreak to set tty attributes associated with a particular
-         file descriptor (which is presumed to point to a terminal).  Support
-         for fix for bug reported by b_bashbug@thebellsplace.com
-
-lib/readline/display.c
-       - make sure we only use rl_invis_chars_first_line when the number of
-         physical characters exceeds the screen width, since that's the
-         only time expand_prompt sets it to a valid value
-
-                                  12/12
-                                  -----
-builtins/set.def
-       - change set_minus_o_option to return EX_USAGE if an invalid option
-         name is supplied.  All callers can handle it.
-       - change set_builtin to return what set_minus_o_option returns if it's
-         not EXECUTION_SUCCESS.  This allows EX_USAGE errors to abort a
-         shell running in posix mode
-
-                                  12/14
-                                  -----
-builtins/read.def
-       - generalize the calls to the tty attribute functions to maintain a
-         local copy of the terminal attributes and use the fd supplied as
-         the argument to the -u option (default 0).  Fix for bug reported
-         by b_bashbug@thebellsplace.com
-
-doc/bashref.texi, lib/readline/doc/{history,rlman,rluser,rluserman}.texi
-       - Slight changes to conform to the latest FSF documentation standards.
-         Patch from Karl Berry <karl@freefriends.org>
-
-                                  12/20
-                                  -----
-execute_cmd.c
-       - after calling clear_unwind_protect_list, make sure we reset
-         parse_and_execute_level to 0, since there's nothing left to
-         restore it if top_level_cleanup tests it.  Fixes bug reported
-         by Len Lattanzi <llattanzi@apple.com>
-
-                                  12/31
-                                  -----
-lib/sh/getcwd.c
-       - new function, _path_checkino, checks whether the inode corresponding
-         to the path constructed from the first two arguments is the same as
-         the inode number passed as the third argument
-       - if BROKEN_DIRENT_D_INO is defined, meaning the d_ino/d_fileno
-         member of struct dirent doesn't contain valid values, use
-         _path_checkino instead of directly comparing against d_fileno.
-         Fixes Interix problem reported by Michael Haubenwallner
-         <haubi@gentoo.org>
-
-                                1/7/2008
-                                --------
-array.c
-       - fix array_subrange to separate elements in returned string with
-         first char of $IFS if QUOTED is non-zero, since this indicates
-         the caller used ${array[@]:foo}.  Fixes bug reported by Lea
-         Wiemann <lewiemann@gmail.com>
-
-                                   1/8
-                                   ---
-subst.c
-       - new function returning a string containing the first character of
-         $IFS: char *ifs_firstchar(int *)
-
-subst.h
-       - extern declaration for ifs_firstchar()
-
-array.c
-       - call ifs_firstchar() to get first character of $IFS when needed
-         (array_subrange() and array_patsub())
-
-                                  1/11
-                                  ----
-lib/readline/display.c
-       - use sentinel variable set at end of init_line_structures to decide
-         whether to call it from rl_redisplay, since early SIGWINCH on
-         Mac OS X that hits during this function can cause _rl_wrapped_line
-         to be referenced before initialization.  Fix for bug reported by
-         Len Lattanzi <llattanzi@apple.com>
-
-subst.[ch]
-       - skip_to_delim is now compiled into the shell all the time, not just
-         when readline is linked in
-
-subst.c
-       - use skip_to_delim to find the `/' denoting the end of a pattern
-         in pattern substitution, since it knows more shell syntax than
-         quoted_strchr and understands multibyte characters.  Fixes bug
-         reported by Dmitry V Golovashkin <Dmitry.Golovashkin@sas.com>
-
-                                  1/15
-                                  ----
-subst.c
-       - add `flags' argument to skip_to_delim telling it whether or not to
-         set no_longjmp_on_fatal_error; set this flag when calling from the
-         readline completion code
-
-subst.h        
-       - update extern declaration for skip_to_delim
-
-                                  1/17
-                                  ----
-subst.c
-       - expand_prompt_string takes a third argument: the initial flags for
-         the WORD
-
-subst.h
-       - change extern declaration for expand_prompt_string to add third arg
-
-bashline.c
-       - pass W_NOCOMSUB as third argment to expand_prompt_string when
-         calling from bash_directory_completion_hook, since we don't want
-         to do command substitution from the completion code
-
-parse.y
-       - change call to expand_prompt_string
-
-                                  1/18
-                                  ----
-doc/Makefile.in
-       - added an `install_builtins' rule to install the builtins.1 man page,
-         preprocessing it with sed to force `.so man1/bash.1', which some
-         versions of man require.  Suggestion from Peter Breitenlohner
-         <peb@mppmu.mpg.de>
-       - new target `install_everything' that will install normal documentation
-         and builtins man page
-       - changed uninstall target to remove bash_builtins page from man
-         directory
-
-lib/readline/vi_mode.c
-       - new function, rl_vi_insert_mode, which calls rl_vi_start_inserting
-         to make sure the value of `last command to repeat' is set correctly.
-         Fix from Thomas Janousek <tjanouse@redhat.com>
-       - add support for redoing inserts made with the `I' command.  Fix
-         from Thomas Janousek <tjanouse@redhat.com>
-       - add support for redoing inserts made with the `A' command
-
-lib/readline/readline.h
-       - new extern declaration for rl_vi_insert_mode
-
-lib/readline/{misc,readline,vi_mode,vi_keymap}.c
-       - change calls to rl_vi_insertion_mode to rl_vi_insert_mode
-
-                                  1/19
-                                  ----
-builtins/read.def
-       - change timeout behavior when not reading from a tty device to save
-         any partial input in the variable list, but still return failure.
-         This also causes variables specified as arguments to read to be
-         set to null when there is no input available.  Fix inspired by
-         Brian Craft <bcboy@thecraftstudio.com>
-
-                                  1/21
-                                  ----
-builtins/fc.def
-       - change computation of last_hist to use remember_on_history instead
-         of a hard-coded `1'.  This keeps fc -l -1 in PROMPT_COMMAND from
-         looking too far back
-
-                                  1/25
-                                  ----
-lib/readline/complete.c
-       - fix fnwidth to use string[pos] instead of *string when testing the
-         current character for a control character or rubout
-
-                                   2/2
-                                   ---
-general.c
-       - change posix_initialize to turn off source/. searching $PWD when
-         the file sourced is not found in $PATH.  Fixes bug reported by
-         Paolo Bonzini <bonzini@gnu.org> and Eric Blake <ebb9@byu.net>
-
-                                   2/9
-                                   ---
-builtins/*.def
-       - changes to text and formatting suggested by Jan Schampera
-         <jan.schampera@web.de>
-
-                                  2/16
-                                  ----
-bashline.c
-       - change command_word_completion_function to use the word completion
-         found by readline, which matters only when ignoring case is on
-         and the completion found in the file system differs in case from
-         the text the user typed (this is what readline does for normal
-         filename completion).  Fixes issue reported by Jian Wang
-         <jwang@a10networks.com.cn>.
-
-                                  2/18
-                                  ----
-builtins/source.def
-       - if the filename passed as an argument contains a `/', don't search
-         $PATH.  Not sure why it wasn't like this before
-
-                                  2/21
-                                  ----
-lib/readline/terminal.c
-       - change rl_crlf so that the MINT system on ATARI systems adds a
-         carriage return before the \n
-
-                                  2/22
-                                  ----
-doc/{bash.1,bashref.texi}
-       - added text to the EXIT STATUS section noting that exit statuses
-         fall between 0 and 255, inclusive
-
-support/mkversion.sh
-       - output a #define for DEFAULT_COMPAT_LEVEL (${major}${minor}; e.g. 32)
-         to version.h
-
-version.c
-       - int variable, shell_compatibility_level, set to DEFAULT_COMPAT_LEVEL
-         by default
-
-builtins/shopt.def
-       - new shopt variable, compat31, sets shell_compatibility_level to 31
-         (or back to default if unset)
-
-execute_cmd.c
-       - in execute_cond_node, restore bash-3.1 behavior of quoted rhs of
-         regexp matches if shell_compatibility_level == 31
-
-                                  2/28
-                                  ----
-lib/readline/rltty.c
-       - set readline_echoing_p = 1 if tcgetattr fails and sets errno to
-         EINVAL, as Linux does when the fd is a pipe.  Reported by Mike
-         Frysinger <vapier@gentoo.org>
-
-                                   3/6
-                                   ---
-{MANIFEST,Makefile.in},lib/sh/{casemod,uconvert,ufuncs}.c
-       - new library sources from bash-4.0-devel tree
-
-lib/sh/spell.c
-       - moved cdspell() here from builtins/cd.def, renamed dirspell()
-
-externs.h
-       - new declarations for extern functions from new library files
-       - new extern declaration for lib/sh/spell.c:dirspell()
-
-builtins/cd.def
-       - call extern library function dirspell(); remove static cdspell()
-
-builtins/read.def
-       - when read times out, make sure input_string is null-terminated before
-         assigning any partial input read to the named variables
-
-                                  3/10
-                                  ----
-lib/glob/xmbsrtowcs.c
-       - cut the number of memory allocations in xdupmbstowcs by not keeping
-         track of the indices if the caller hasn't asked for it
-
-                                  3/17
-                                  ----
-builtins/fc.def
-       - make sure the adjustment to i in fc_gethnum uses the same formula
-         fc_builtin uses to calculate last_hist
-       - make sure that every time fc_gethnum is called, the fc command last
-         in the history list has not yet been deleted, since fc_gethnum
-         assumes that it has not.  Fix from John Haxby <john.haxby@oracle.com>
-
-lib/readline/complete.c
-       - new private library function, _rl_reset_completion_state(), used to
-         reset any completion state internal to the library when a signal
-         is received
-       - call _rl_reset_completion_state() before returning from
-         rl_complete_internal
-
-lib/readline/rlprivate.h
-       - new extern declaration for _rl_reset_completion_state
-
-lib/readline/signals.c
-       - call _rl_reset_completion_state from rl_signal_handler on SIGINT.
-         This fixes one of the problems identified by Mika Fischer
-         <mf+ubuntu@zoopnet.de>
-
-pcomplete.c
-       - programmable_completions now saves pointer to the compspec it's
-         working with in new global variable CURCS
-       - new function, pcomp_set_readline_variables, that sets or unsets
-         readline variables based on a passed flags value (COPT_FILENAMES,
-         etc.)
-       - new function, pcomp_set_compspec_options, to set or unset bits in
-         the options word of a passed compspec (default CURCS)
-       - only call bash_dequote_filename (via rl_filename_dequoting_function)
-         from pcomp_filename_completion_function if the readline state
-         word indicates word completion is in progress
-
-pcomplete.h
-       - new extern declaration for curcs
-       - new extern declaration for pcomp_set_readline_variables
-       - new extern declaration for pcomp_set_compspec_options
-
-bashline.c
-       - fix bash_dequote_filename to implement shell quoting conventions:
-               1. Inhibit backslash stripping within single quotes
-               2. Inhibit backslash stripping within double quotes only if
-                  the following character is one of the special ones
-       - call pcomp_set_readline_variables from attempt_shell_completion
-         instead of doing the equivalent inline
-
-                                  3/18
-                                  ----
-bracecomp.c
-       - make sure we sort array of matches in byte order (using strcmp). so
-         the brace calculations work correctly even when the locale orders
-         characters like aAbBcC...zZ.  Fixes bug reported by Torsten Nahm
-         <torstennahm@torstennahm.de>
-
-                                  3/20
-                                  ----
-lib/readline/{rltty,signals}.c
-       - move block_sigint and release_sigint from rltty.c to signals.c; add
-         _rl_ prefix to make them public to the library; change callers.
-         From Jan Kratochvil <jan.kratochvil@redhat.com>
-
-lib/readline/rlprivate.h
-       - new extern declarations for _rl_block_sigint and _rl_release_sigint
-
-lib/readline/display.c
-       - add calls to _rl_block_sigint and _rl_release_sigint to rl_redisplay,
-         since it maniupluates global data structures.  Fix from Jan
-         Kratochvil <jan.kratochvil@redhat.com>
-
-builtins/printf.def
-       - change calls to asprintf and manually adding to vbuf to use calls
-         to vsnprintf against vbuf directly -- if the number of characters
-         to be written overflows the buffer, realloc the buffer and use
-         vsnprintf again.  This should reduce the memory used by printf.
-         Idea from Yuya Katayama <yuya999@gmail.com>
-
-lib/readline/doc/rltech.texi
-       - documented rest of readline's state flags, including RL_STATE_CALLBACK
-       - documented rl_save_state and rl_restore_state
-
-                                  3/27
-                                  ----
-lib/readline/{rlprivate.h,{display,readline,rltty,terminal,text}.c}
-       - rename readline_echoing_p to _rl_echoing_p for namespace consistency
-
-lib/readline/{rlprivate.h,{callback,readline,util}.c}
-       - rename readline_top_level to _rl_top_level for namespace consistency
-
-builtins/ulimit.def
-       - new -b (socket buffer size) and -T (number of threads) options
-
-array.c
-       - fix bug in calculation of the array element assignment string length:
-         use length of `is' instead of `indstr'.  Reported as ubuntu bug
-         #202885 by John McCabe-Dansted
-
-builtins/setattr.def
-       - new function, show_all_var_attributes, displays attributes and
-         values for all shell variables (or shell functions) in a reusable
-         format
-
-builtins/common.h
-       - new extern declaration for show_all_var_attributes
-
-builtins/declare.def
-       - change `declare -p' to print out all variable attributes and values,
-         and `declare -fp' to print out all function attributes and
-         definitions.  Inspired by request from John Love-Jensen
-         <eljay@adobe.com>
-
-doc/{bash.1,bashref.texi}
-       - document new -b and -T options to ulimit
-       - tighten up language describing AND and OR lists
-       - add description of new behavior of `declare -p'
-
-                                  3/28
-                                  ----
-pcomplete.c
-       - rename curcs -> pcomp_curcs
-       - new global completion variable, pcomp_curcmd, the current command
-         name being completed
-
-builtins/complete.def
-       - new builtin, compopt, allows completion options for command names
-         supplied as arguments or the current completion being executed to
-         be modified.  Suggested by Mika Fischer <mf+ubuntu@zoopnet.de>
-
-                                  3/30
-                                  ----
-doc/{bash.1,bashref.texi},lib/readline/doc/rluser.texi
-       - document new compopt builtin
-
-                                   4/5
-                                   ---
-support/shobj-conf
-       - change solaris10 stanza to use -fPIC to fix 64-bit sparc_v9/solaris10
-         compilations.  Fix from Fabian Groffen <grobian@gentoo.org>
-
-builtins/read.def
-       - added `-i text' option, inserts `text' into line if using readline.
-         Suggested by many, used some ideas from Kevin Pulo <kevin@pulo.com.au>
-
-doc/{bash.1,bashref.texi}
-       - document new `-i text' option to read builtin
-
-                                   4/7
-                                   ---
-lib/readline/bind.c
-       - new settable variable, `history-size', sets the max number of
-         entries in the history list
-
-doc/bash.1,lib/readline/doc/{rluser.texi,readline.3}
-       - document new `history-size' settable readline variable
-
-                                   4/8
-                                   ---
-builtins/complete.def
-       - change build_actions calling sequence to take a struct with `other'
-         (non-action) flag arguments (-p, -r)
-       - add support for `-E' option to build_actions and complete builtin --
-         modifies or displays (internal) `_EmptycmD_' completion spec
-
-bashline.c
-       - change attempt_shell_completion to try programmable completion on an
-         `empty' command line and return the results
-
-doc/bash.1,lib/readline/doc/rluser.texi
-       - documented new `-E' option to `complete'
-
-                                   4/9
-                                   ---
-bashhist.c
-       - new variable, `enable_history_list', used to reflect setting of
-         `-o history' option
-       - change bash_history_{enable,disable,reinit} to set enable_history_list
-         as well as remember_on_history
-
-builtins/set.def
-       - use `enable_history_list' instead of `remember_on_history' to keep
-         value of `-o history' option
-
-builtins/evalstring.c
-       - instead of unwind-protecting remember_on_history, use a function to
-         restore it to the value of `enable_history_list' after
-         parse_and_execute runs the commands in the string.  This allows
-         history to be turned off in a startup file, for instance.  Problem
-         reported by Dan Jacobson <jidanni@jidanni.org>
-
-                                  4/11
-                                  ----
-bashline.c
-       - limited support for completing command words with globbing characters
-         (only a single match completed on TAB, absolute or relative
-         pathnames supported, no $PATH searching, some support for displaying
-         possible matches, can be used with menu completion).
-         Suggested by Harald Koenig <h.koenig@science-computing.de>
-
-print_cmd.c
-       - change redirection printing to output r_err_and_out as `&>file',
-         since the man page says that's the preferred form
-
-                                  4/12
-                                  ----
-builtins/*.def
-       - change long doc so the first line is a short description
-       - add `Exit Status:' section to each longdoc describing exit values
-
-builtins/help.def
-       - new `-d' option to print short description of each utility
-       - new `-m' option to print description of each builtin in a
-         pseudo-manpage format (inspired by ksh93)
-
-doc/{bash.1,bashref.texi}
-       - document new `-d' and `-m' options to `help'
-
-builtins/mapfile.def
-       - new builtin, `mapfile', imported from bash-4.0-devel branch
-
-tests/{mapfile.{data,right,tests},run-mapfile}
-       - tests for `mapfile' builtin
-
-doc/{bash.1,bashref.texi}
-       - added description of `mapfile' builtin
-
-MANIFEST,Makefile.in,builtins/Makefile.in
-       - added entries for mapfile source files
-
-arrayfunc.[ch]
-       - new function, bind_array_element, to support mapfile builtin
-
-                                  4/20
-                                  ----
-expr.c
-       - fix operator precendence in expcond():  term after the `:' is
-         a conditional-expression, not a logical-OR-expression (using C
-         terminology).  Bug reported by <archimerged@gmail.com>
-
-                                  4/22
-                                  ----
-bashintl.h
-       - new P_ define for using ngettext to decide on plural forms
-         (currently unused)
-
-                                  4/25
-                                  ----
-execute_cmd.c
-       - in execute_disk_command, if the command is not found, search for
-         a shell function named `command_not_found_handle' and call it
-         with the words in the command as arguments.  Inspired by Debian
-         feature.
-
-doc/{bash.1,bashref.texi}
-       - document new command_not_found_handle behavior in COMMAND EXECUTION
-         section
-
-configure.in
-       - change default version to bash-4.0-devel
-
-                                  4/28
-                                  ----
-variables.c
-       - change push_func_var and push_exported_var to call
-         stupidly_hack_special_variables if the temporary variable is going
-         to be disposed.  This undoes any internal changes caused by a local
-         variable assignment in the environment or in a shell function.  Bug
-         reported by Morita Sho <morita-pub-en-debian@inz.sakura.ne.jp> in
-         http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=478096
-
-                                   5/3
-                                   ---
-builtins/fc.def
-       - fixed a problem caused by change of 1/21 to use remember_on_history,
-         since it's turned off by parse_and_execute(), but can cause the
-         last command in history to be deleted and leave last_hist pointing
-         beyond the end of the history list.  edit_and_execute_command can
-         do this.
-
-bashline.c
-       - new define, RL_BOOLEAN_VAR_VALUE, to take a readline boolean variable
-         and get its value as 0 or 1 (consider making readline global)
-       - put tty back into canonical mode before calling parse_and_execute in
-         edit_and_execute_command and then back into raw mode after it
-         returns.  Fixes problem identified by <koersen@gmail.com>.
-
-                                   5/4
-                                   ---
-lib/glob/glob.c
-       - code to support `globstar' option: GX_GLOBSTAR and two internal
-         flags.  Changes to skipname, glob_vector, mbskipname, glob_filename.
-         New function finddirs().
-
-lib/glob/glob.h
-       - new defines to support globstar code
-
-builtins/shopt.def
-       - new shell option, `globstar', enables special handling of `**' in
-         glob patterns -- matches all directories recursively
-
-pathexp.h
-       - extern declaration for glob_star
-
-pathexp.c
-       - break inline code out of quote_globbing_chars into a separate
-         function to decide whether a character is a globbing char:
-         glob_char_p
-       - change shell_glob_filename to call glob_filename with the
-         GX_GLOBSTAR flag if glob_star is set
-
-doc/{bash.1,bashref.texi}
-       - document new `globstar' shell option
-
-arrayfunc.c
-       - new function, broken out of quote_array_assignment_chars:
-         quote_assign; extended from old code to make sure that globbing
-         chars and chars in $IFS are quoted when displaying assignment
-         statements, especially in compound array assignments
-
-                                   5/5
-                                   ---
-bashline.c
-       - new variable, dircomplete_spelling, controls spelling correction
-         of directory names when doing filename completion
-       - change bash_directory_completion_hook to incorporate spelling
-         correction if initial canonicalization of directory name fails
-
-builtins/shopt.def
-       - new shell option, `dirspell', enables and disables spelling
-         correction of directory names during word completion
-
-builtins/read.def
-       - support for fractional timeout values (ival.uval); uses uconvert
-         and falarm/setitimer
-
-config.h.in
-       - new `HAVE_SETITIMER' define
-
-configure.in
-       - look for setitimer(2), define HAVE_SETITIMER if found
-
-doc/{bash.1,bashref.texi}
-       - document new `dirspell' shopt option
-       - document new fractional values to `read -t timeout'
-
-                                   5/6
-                                   ---
-assoc.[ch]
-       - new files, basic support for associative array implementation
-
-general.h
-       - new extern declarations for sh_openpipe, sh_closepipe, trim_pathname
-
-general.c
-        - new functions: sh_openpipe to create a pipe and move the file
-          descriptors to a high range; sh_closepipe, to close pipe fds and
-          clean up, and trim_pathname, to replace portions of a pathname
-          with `...' (for prompting)
-
-jobs.c
-       - don't set last_asynchronous_pid in child shell (messes up $!, among
-         other things)
-
-parse.y,parser.h
-       - moved definitions of parser flags to parser.h
-
-array.c
-       - imported array_modcase (case-changing operations on arrays) from
-         4.0-devel branch
-
-array.h
-       - new extern declaration for array_modcase
-
-lib/readline/complete.c
-       - new variable, rl_menu_completion_entry_function, generator for
-         rl_menu_complete
-       - new menu completion `browsing' implementation, with several
-         improvements over the old code.  Inspired by Sami Pietila
-         <sami.pietila@gmail.com>
-
-lib/readline/readline.h
-       - extern declaration for rl_menu_completion_entry_function
-
-                                   5/8
-                                   ---
-lib/readline/complete.c
-       - add support for a third argument to fnprint and print_filename,
-         which supports replacing a specified portion of the pathnames
-         printed when displaying possible completions with a `...' (or
-         `___', if the prefix would be confused with a portion of the
-         filename)
-       - new variable, _rl_completion_prefix_display_length, sets the
-         number of characters in a common prefix to be replaced with an
-         ellipsis when displaying possible completions
-       - add support to _rl_display_match_list to find the length of the
-         common prefix of all items being displayed, and passing that
-         value to print_filename for possible replacement with an ellipsis
-         if that length is longer than _rl_completion_prefix_display_length
-
-lib/readline/bind.c
-       - add support for retrieving value of history-size variable to
-         _rl_get_string_variable_value
-       - new bindable variable, completion-prefix-display-length.  When
-         displaying possible completions, matches with a common prefix
-         longer than this value have the common prefix replaced with an
-         ellipsis
-       - support for retrieving value of completion-prefix-display-length
-         variable to _rl_get_string_variable_value
-       - new bindable variable, revert-all-at-newline:  if enabled, causes
-         all changes in history lines to be undone before readline returns
-         after processing a newline
-
-doc/bash.1,lib/readline/doc/{readline.3,rluser.texi}
-       - document new `completion-prefix-display-length' variable
-       - document new `revert-all-at-newline' variable
-
-execute_cmd.c
-       - change execute_builtin to not inherit the `-e' flag into commands
-         executed by the `command' or `source/.' builtins if we are supposed
-         to be ignoring the return value.  This is like `eval'.  Fixes bug
-         reported by Hiroshi Fujishima <hirobo@tonteki.org>
-
-                                  5/10
-                                  ----
-variables.c
-       - when reading the initial environment, don't create variables with
-         names that are not valid shell identifiers.  Fixes bug reported by
-         Stephane Chazleas <stephane_chazelas@yahoo.fr>
-
-                                  5/13
-                                  ----
-subst.c
-       - fix string_quote_removal to gracefully handle the case where a
-         backslash is the final character in the string (leaves the backslash
-         in place).  Fixes bug reported by Ian Robertson
-         <iroberts@u.washington.edu>
-
-                                  5/16
-                                  ----
-support/checkbashisms
-       - Perl script that purports to check for bash-specific features in a
-         shell script.  Lifted from Debian via ubuntu
-
-                                  5/20
-                                  ----
-lib/readline/display.c
-       - in update_line, when deciding whether or not to adjust _rl_last_c_pos
-         in a multibyte environment after printing the last line of a multiline
-         prompt with invisible characters on the first and last lines, use
-         the number of inivisible chars on the first line in the calculation
-         deciding whether or not we're past the last invisible character and
-         need to adjust the cursor position.  Old code used the number of
-         invisible chars on the last prompt line.  Fixes bug reported by
-         stuff@slinkp.com.
-       - in update_line, when fixing _rl_last_c_pos after drawing the first
-         line of the prompt, use the number of invisible chars on the first
-         line as the offset, instead of the total number of invisible chars
-       - use prompt_multibyte_characters, the number of multibyte chars in
-         the prompt string, to short-circuit some relatively expensive
-         multibyte text processing in rl_redisplay
-
-                                  5/21
-                                  ----
-variables.c
-       - new function, reinit_special_variables(), a hook for special
-         vars that need their hook functions called when they're unset as
-         a result of the shell reinitializing itself to run a script
-
-shell.c
-       - shell_reinitialize now calls reinit_special_variables
-       - shell_reinitialize now calls bashline_reset
-
-variables.h
-       - new extern declaration for reinit_special_variables
-
-bashline.c
-       - new function, bashline_reset(), called when the shell reinitializes
-         in shell_reinitialize.  Right now, just resets
-         bash_readline_initialized to 0.
-
-bashline.h
-       - new extern declaration for bashline_reset()
-
-                                  5/23
-                                  ----
-bashhist.c
-       - new function, bash_clear_history, clears the history and resets any
-         associated internal bash state
-
-bashhist.h
-       - extern declaration for bash_clear_history
-
-builtins/history.def
-       - call bash_clear_history instead of clear_history for `history -c'.
-         Fixes part of problem reported by Scott McDermott
-         <scott.m.mcdermott@gmail.com>
-       - decrement history_lines_this_session in delete_histent, called for
-         `history -d'
-
-builtins/history.def,bashhist.[ch]
-       - move delete_histent() to bashhist.c; rename to bash_delete_histent
-       - move delete_last_history() to bashhist.c; rename to
-         bash_delete_last_history()
-
-                                  5/25
-                                  ----
-braces.c
-       - add another parameter to mkseq(), the number of digits to put into
-         each member of a numeric sequence (width), changes to determine
-         any zero-padding go into expand_seqterm
-       - changes to expand_seqterm to allow user-specified increments
-
-bashline.[ch],shell.c,sig.c
-       - switched names of bashline_reinitialize and bashline_reset to better
-         reflect their functions
-       - when searching $PATH for directories to use for command completion,
-         make sure to free `current_path' before going out of scope
-       - new bindable function `dabbrev-expand', which is more or less
-         menu completion using dynamic history completion as the generator
-       - changes to bash_execute_unix_command to set variables for the
-         executed command like programmable completion: READLINE_LINE
-         (rl_line_buffer) and READLINE_POINT (rl_point)
-       - change to bash_execute_unix_command to allow the executed command
-         to change the readline line buffer by modifying the value of
-         READLINE_LINE and to change rl_point by modifying the value of
-         READLINE_POINT
-
-common.h
-       - new SEVAL_ defines for later parse_string changes from 4.0-devel
-         branch
-
-command.h
-       - new defines for new &>> r_append_err_and_out redirection
-
-builtins/evalstring.c
-       - new function, parse_string, parses a command from a passed string
-         and returns the number of characters consumed.  For satisfying
-         Posix rules when parsing command substitutions, from bash-4.0-devel
-         branch
-       - split out common prolog code from parse_string and
-         parse_and_execute into a separate function called from both
-
-parse.y
-       - small changes to add symbols needed for parse_string
-       - parser change to add `|&' as synonym for `2>&1 |'; translation is
-         performed at parse time so |& never shows up in output of
-         print_command, for instance.  Picked up from zsh, merged in from
-         bash-4.0-devel branch
-
-parse.y,{redir,copy_cmd,dispose_cmd,make_cmd,print_cmd}.c
-       - implement new &>> r_append_err_and_out (like >>foo 2>&1); merged
-         in from bash-4.0-devel branch
-
-doc/{bash.1,bashref.texi},lib/readline/doc/rluser.texi
-       - document new optional increment in brace expansion
-       - document new zero-padded fixed-width integer brace expansion
-       - document new `dabbrev-expand' bindable readline command
-       - document new effects of `bind -x' setting and reading the values of
-         READLINE_LINE and READLINE_POINT
-       - document new |& synonym for `2>&1 |' pipeline operator
-
-                                  5/26
-                                  ----
-parse.y        - recognize new ;& and ;;& case action list terminator tokens and
-         implement them in the grammar, setting CASEPAT_FALLTHROUGH and
-         CASEPAT_TESTNEXT flags as appropriate
-
-print_cmd.c
-       - print new ;& and ;;& case clause action list terminators as
-         appropriate
-
-execute_cmd.c
-       - implement new case clause action list terminators:
-               ;& - fall through to actions associated with next pattern list
-               ;;& - fall through to tests in next pattern list
-
-doc/{bash.1,bashref.texi}
-       - document new ;& and ;;& case clause action list terminators
-
-                                  5/28
-                                  ----
-jobs.c
-       - change waitchld so it treats SIGCHLD like SIGINT if `wait' is being
-         executed, and allows wait to jump out before running any trap set
-         on SIGCHLD.  Fixes debian bug #483016 reported by Miroslav Rudisin
-         <miero@atrey.karlin.mff.cuni.cz>
-       - run_sigchld_trap is no longer static, so the trap code in trap.c
-         can call it
-       - change run_sigchld_trap to call set_impossible_sigchld_trap instead
-         of just using a call to restore_default_signal
-
-jobs.h
-       - new extern declaration for run_sigchld_trap
-
-trap.c
-       - fix run_pending_traps to run a SIGCHLD trap if the trap handler isn't
-         set to IMPOSSIBLE_TRAP_HANDLER
-       - in trap_handler, don't reset the SIGCHLD trap handler to trap_handler
-         if MUST_REINSTALL_SIGHANDLERS is defined
-       - new function, set_impossible_sigchld_handler, sets the trap string
-         associated with SIGCHLD to IMPOSSIBLE_TRAP_HANDLER; used as a sentinel
-         by run_sigchld_trap and maybe_set_sigchld_handler
-       - change maybe_set_sigchld_handler to set the SIGCHLD trap string only
-         if the current value is IMPOSSIBLE_TRAP_HANDLER.  This ensures that
-         any traps on SIGCHLD set in a SIGCHLD handler will persist.  Fixes
-         debian bug #483016 reported by Miroslav Rudisin
-         <miero@atrey.karlin.mff.cuni.cz>
-
-trap.h
-       - new extern declaration for set_impossible_sigchld_trap
-
-                                  5/31
-                                  ----
-parse.y
-       - new function: parse_comsub(), parses $(...) by parsing command
-         between parens and making sure the next token is `)'.  From
-         the bash-4.0-devel branch
-       - new function: xparse_dolparen, helper function for parsing
-         command substitutions in $(...).  Called from subst.c to extract
-         a command substitution during word expansion.  From bash-4.0-devel
-         branch
-       - new function: rewind_input_stream().  Rewinds bash_input.location.string
-         back to where it was before the shell parsed a $() command
-         substitution.  From bash-4.0-devel branch
-       - changes to parse_matched_pair to combine most of the flag variables
-         (was_dollar, in_comment, and so on) into a local flags word
-
-                                   6/2
-                                   ---
-parse.y
-       - call trim_pathname, which retains only the last $PROMPT_DIRTRIM
-         directories and replaces the intervening characters with `...',
-         when expanding \w and \W
-
-doc/{bash.1,bashref.texi}
-       - document the effect of setting PROMPT_DIRTRIM
-
-                                   6/3
-                                   ---
-builtins/ulimit.def
-       - make the multiplier (block size) for -c and -f 512 bytes only if in
-         Posix mode and 1024 bytes otherwise (as in previous versions).  Uses
-         POSIXBLK and BLOCK_SIZE defines to parameterize size based on value
-         of posixly_correct
-
-doc/bashref.texi
-       - document this addition to posix mode
-
-builtins/common.c
-       - change get_numeric_arg to have a calling sequence and return value
-         more closely mimicking general.c:legal_number(), with the addition
-         of a flags word
-       - add extra value for `fatal' argument to get_numeric_arg to force it
-         to return failure to the caller rather than longjmping
-
-builtins/common.h
-       - change prototype declaration for get_numeric_arg
-
-builtins/{break,shift}.def
-       - change calls to get_numeric_arg to deal with new semantics and calling
-         sequence
-
-builtins/history.def
-       - display_history now returns an int
-       - change calling sequence for get_numeric_arg in display_history
-       - display_history now returns failure to the caller if get_numeric_arg
-         detects an invalid number, rather than jumping back to the top level
-       - use value returned by display_history as return status of history
-         builtin, filtered through sh_chkwrite
-       - history no longer aborts compound commands on invalid arguments.
-         fixes problem reported by Chu Li <chul@cn.fujitsu.com>
-
-{braces,subst}.c
-      - extract_command_subst now takes a third flags argument; passed flags
-       are ORd into flags passed to other functions; changed callers
-
-subst.h
-       - move SX_* defines here from subst.c so parse.y:xparse_dolparen can
-         see them and behave appropriately
-       - extract_command_subst now takes a third flags argument; change
-         prototype
-
-subst.c
-       - change extract_command_subst to call xparse_dolparen when extracting
-         a $() construct
-       - change calls to extract_delimited_string to extract_command_subst
-         as appropriate
-       - if command_substitute returns a NULL word desc, don't call
-         dispose_word_desc on it
-
-parse.y
-       - change xparse_dolparen to use the SX_* flags now in subst.h
-
-                                  6/16
-                                  ----
-subst.c
-       - in quote_list, set W_HASQUOTEDNULL flag in the word if quote_string
-         turns "" into CTLNUL
-       - in dequote_list, turn off W_HASQUOTEDNULL flag in the word if
-         dequote_string turns CTLNUL into ""
-       - new function, string_list_pos_params, encapsulates everything
-         needed to turn the positional parameters or an array indexed with
-         '@' or '*' into a string, including taking care of quoting and
-         using the first char of $IFS, when used in another expansion like
-         pattern removal or pattern substitution
-       - change list_remove_pattern, pos_params, pos_params_pat_subst to
-         call string_list_pos_params.  Fixes problems reported by
-         Stephane Chazelas <stephane_chazelas@yahoo.fr>
-
-                                  6/22
-                                  ----
-variables.h
-       - include assoc.h for associative arrays
-       - defines for case-modifying expansions and associative array variables
-       - sh_var_assign_func_t functions now take an extra char * parameter
-
-                                  6/25
-                                  ----
-variables.c
-       - change declarations and definitions of sh_var_assign_func_t functions
-         to add the extra char * parameter: null_assign, null_array_assign,
-         assign_seconds, assign_random, assign_lineno, assign_subshell,
-         assign_dirstack
-       - change calls to var->assign_func to add extra char * argument
-       - broke part of body of dispose_variable out into a new function,
-         dispose_variable_value, which knows how to free all kinds of shell
-         variable data
-       - changes to deal with variables with the internal `nofree' attribute
-
-arrayfunc.c
-       - change calls to var->assign_func to add extra char * argument
-       - bind_array_var_internal now takes an extra `char *key' argument
-       - additions for associative array implementation; from bash-4.0-devel
-         tree
-
-arrayfunc.[ch],subst.c
-       - expand_compound_array_assignment now takes the variable as the first
-         argument (SHELL_VAR *); changed function definition and callers
-
-builtins/set.def
-       - changes to handle associative arrays in `unset'
-
-{execute_cmd,command}.h
-       - definitions for coproc implementation; from bash-4.0-devel tree
-
-variables.c
-       - new functions for associative arrays: make_new_assoc_variable,
-         make_local_assoc_variable
-
-                                  6/26
-                                  ----
-variables.c
-       - more infrastructure for associative arrays; from bash-4.0-devel tree
-       - infrastructure for handling assignments to variables with
-         case-modifying attributes; from bash-4.0-devel tree
-
-config.h.in
-       - add #defines controlling case-modifying variable attributes and word
-         expansions
-
-configure.in
-       - add enable options for case-modifying variable attributes and word
-         expansions (--enable-casemod-attributes and --enable-casemod-expansions,
-         respectively); from bash-4.0-devel tree
-
-execute_cmd.c
-       - add code to fix_assignment_words to handle assignment statements to
-         "assignment builtins" that seem to be associative arrays.  Imperfect
-
-subst.c
-       - array_remove_pattern now takes a SHELL_VAR * as its first argument
-         instead of an ARRAY *; from the bash-4.0-devel tree
-       - changes to array_length_reference for associative arrays; from the
-         bash-4.0-devel tree
-       - changes to get_var_and_type for associative arrays; from the
-         bash-4.0-devel tree
-       - changes to parameter_brace_substring for associative arrays; from the
-         bash-4.0-devel tree
-       - changes to param_expand for associative arrays; from the
-         bash-4.0-devel tree
-
-builtins/declare.def
-       - changes for associative arrays: new `-A' option, changes to make
-         local and global associative array variables; from the bash-4.0-devel
-         tree
-
-                                  6/27
-                                  ----
-execute_cmd.c
-       - in execute_command_internal, when short-circuiting execution
-         because `breaking' or `continuing' is non-zero, preserve the exit
-         status by returning `last_command_exit_value' instead of an
-         unconditional EXECUTION_SUCCESS.  Fixes bug reported by Roman
-         Rakus <rrakus@redhat.com>
-
-                                  6/28
-                                  ----
-variables.c
-       - fix get_var_and_type to appropriately handle references like
-         ${varname[0]}, where `varname' is a scalar variable
-
-make_cmd.[ch],parse.y
-       - make_here_document now takes a second argument: the current line
-         number; changed caller (gather_here_documents)
-
-builtins/setattr.def
-       - added support for associative arrays and the `-A' variable attribute
-         option; from the bash-4.0-devel tree
-
-subst.c
-       - change code that transforms `declare -A xxx=(yyy)' to perform the
-         internal `declare -A xxx' before doing the variable assignment,
-         because associative arrays have to be declared before being assigned
-         to as such; uses new function make_internal_declare
-
-                                  6/30
-                                  ----
-subst.[ch]
-       - dequote_escapes is now external; add declaration in subst.h
-       - remove_quoted_nulls is now external; add declaration in subst.h
-
-array.[ch]
-       - new functions for completeness:  array_dequote, array_dequote_escapes,
-         array_remove_quoted_nulls
-       - array_subrange now calls array_remove_quoted_nulls for "${array[*]}".
-         Fixes bug reported by Vitor De Araujo <ux386@yahoo.com.br>
-       - array_patsub now calls array_remove_quoted_nulls for "${array[*]}"
-       - array_modcase now calls array_remove_quoted_nulls for "${array[*]}"
-       - array_patsub now handles the mflags&MATCH_QUOTED case appropriately
-         (that implies "${array[@]}")
-
-subst.c
-       - new functions for case-modifying word expansion suppport:
-         pos_params_casemod, parameter_brace_casemod; from bash-4.0-devel branch
-
-assoc.c
-       - new functions for completeness: assoc_remove_quoted_nulls
-       - assoc_patsub now calls assoc_remove_quoted_nulls for "${assoc[*]}"
-       - assoc_modcase now calls assoc_remove_quoted_nulls for "${array[*]}"
-       - assoc_patsub now handles the mflags&MATCH_QUOTED case appropriately
-         (that implies "${assoc[@]}")
-
-                                   7/1
-                                   ---
-assoc.[ch]
-       - new function, assoc_subrange: takes a hash table, converts it to a
-         word list, and performs the subrange and indexing on that list
-       - new functions for completeness: assoc_dequote, assoc_dequote_escapes
-
-subst.c
-       - verify_substring_values now takes the variable SHELL_VAR * as its
-         new first argument; changed callers
-       - change verify_substring_values to handle associative arrays using the
-         number of elements as the upper bound
-       - brought in code to do case-modifying word expansions from
-         bash-4.0-devel branch, conditional on CASEMOD_EXPANSIONS
-
-input.c
-       - if the read(2) in getc_with_restart returns -1/EAGAIN, turn off
-         non-blocking mode on the file descriptor and try again.  Fixes
-         problem reported by Glynn Clements <glynn@clements.plus.com>
-
-                                   7/2
-                                   ---
-doc/{bash.1,bashref.texi}
-       - documented new case-modifying word expansions
-
-make_cmd.c
-       - change make_here_document to display a warning message including the
-         start line of a here document if it ends up delimited by EOF.
-         Addresses issue raised by Richard Neill <rn214@hermes.cam.ac.uk>
-
-subst.c
-       - in do_assignment_internal, make sure the `invisible' attribute is
-         unset before returning success
-
-                                   7/3
-                                   ---
-config-top.h
-       - add `CASEMOD_CAPCASE' define to include or exclude the ~[~] word
-         expansion and the `capcase' variable attribute (declare -c)
-
-builtins/declare.def
-       - add support for manipulating the case-modifying attributes (new
-         declare -clu); from bash-4.0-devel branch
-
-builtins/setattr.def
-       - add support for reporting case-modifying attributes (-clu attributes);
-         from bash-4.0-devel branch
-
-doc/{bash.1,bashref.texi}
-       - specify that the read builtin timing out results in a return value
-         greater than 128
-       - document new `-l' and `-u' options to declare/typeset/local.  Leave
-         `-c' undocumented for now
-
-                                   7/4
-                                   ---
-make_cmd.[ch]
-       - make_coproc_command: construct a coproc; from bash-4.0-devel tree
-
-dispose_cmd.c
-       - dispose coproc command; from bash-4.0-devel tree
-
-copy_cmd.c
-       - copy a coproc command; from bash-4.0-devel tree
-
-print_cmd.c
-       - print a coproc command; from bash-4.0-devel tree
-
-shell.c
-       - dispoe the current coproc on shell exit; from bash-4.0-devel tree
-
-redir.c
-       - when closing redirects as part of user redirections, check whether
-         or not active coprocess fds are being closed and close the coproc
-         if so; from bash-4.0-devel tree
-
-config.h.in
-       - add define for COPROCESS_SUPPORT to include coprocesses
-
-configure.in
-       - add support for configuring coprocesses into and out of the build
-
-jobs.c
-       - in waitchld, check whether or not a coproc processs has exited;
-         from the bash-4.0-devel tree
-
-                                   7/5
-                                   ---
-doc/bashref.texi
-       - document new --enable-coprocesses option that includes coprocess
-         support
-
-execute_cmd.c
-       - add functions for coprocess support, including execute_coproc and
-         code to call it when command->type == cm_coproc; from
-         bash-4.0-devel tree
-
-lib/sh/fdprintf.c
-       - new library function fdprintf(int fd, const char *format, ...);
-         printf to a file descriptor
-
-{configure,config.h}.in
-       - support for detecting fdprintf and compiling in replacement
-
-Makefile.in,lib/sh/Makefile.in
-       - add rules to include fdprintf.o
-
-doc/{bash.1,bashref.texi}
-       - documented coprocesses and `coproc' reserved word
-
-                                   7/7
-                                   ---
-subst.c
-       - fix array_length_reference to use MB_STRLEN instead of STRLEN, so
-         multibyte characters in array values are computed correctly.  Fixes
-         bug reported by Wang Xin <wxinee@gmail.com>
-
-                                  7/10
-                                  ----
-jobs.c
-       - new function, maybe_give_terminal_to (old, new, flags), sets the
-         terminal pgrp to NEW if and only if it's currently set to OLD
-       - call maybe_give_terminal_to when the parent sets the terminal pgrp
-         to the pipeline pgrp in stop_pipeline, so we don't give the
-         terminal to the new job's pgrp unless it's currently owned by the
-         shell.  Fixes race condition described by Joe Peterson
-         <joe@skyrush.com>, where parent bash may change tty pgrp after a
-         grandchild (interactive bash child of su) has changed it to
-         something else.  The call to maybe_give_terminal_to makes explicit
-         a previously-implicit assumption
-
-aclocal.m4
-       - remove dependency on writable /tmp by creating directories in
-         build directory
-
-shell.c
-       - make changes to how bash sets no_line_editing and running_under_emacs
-         to deal with various emacs terminal emulators; use better check
-         for `eterm', since bash sends $PWD to eterm with control sequences
-         that confuse other programs.  Problem reported by Micah Cowan
-         <micah@cowan.name>
-
-
-                                  7/12
-                                  ----
-print_cmd.c
-       - break code that prints here-documents into two functions:
-         print_heredoc_header, which prints the operator and delimiter, and
-         print_heredoc_body, which prints the body text and closing delimiter
-       - change print_redirection to call print_heredoc_{header,body}
-       - sentinel variable, printing_connection, used when printing a command
-         of type `connection' (|, &&, ||, etc.)
-       - change print_redirection_list to save any here documents it finds
-         while printing a connection and save them in `deferred_heredocs'
-       - new function, print_deferred_heredocs, called from print_redirection
-         in the cm_connection case, calls print_heredoc_header for all the
-         here documents, then prints the operator (|, &&, ||, etc.), then
-         the here-document body.  This preserves syntactic correctness; the
-         old code printed the control operator after the body of the here
-         document.  Fixes bug reported by <buport@figpost.com>
-
-                                  7/16
-                                  ----
-locale.c
-       - in set_locale_var, print a warning message if setlocale() fails any
-         time it's called -- required some code restructuring
-
-                                  7/19
-                                  ----
-support/shobj-conf
-       - support for mingw32, contributed by Carlo Bramix
-         <carlo.bramix@libero.it>
-
-                                  7/23
-                                  ----
-execute_cmd.c
-       - added support (currently unused) to manage a list of coprocs
-
-                                  7/25
-                                  ----
-bashline.c
-       - add extern declarations for literal_history and force_append_history
-
-builtins/shopt.def
-       - include "bashhist.h" instead of having extern declarations for the
-         appropriate history variables
-
-parser.h
-       - new parser_state value: PST_HEREDOC, set when reading body of here-
-         document in parse.y:read_secondary_line
-
-parse.y
-       - set PST_HEREDOC bit in parser_state when reading a secondary line
-         for the body of a here-document
-       - change read_secondary_line to save lines in the body of a here-
-         document in the shell history list if remember_on_history is
-         set.  Fixes bug reported by Gene Golub <gene_golub@hotmail.com>
-
-                                   8/4
-                                   ---
-configure.in
-       - changed to 4.0-alpha
-
-lib/readline/readline.h
-       - changed constants to reflect readline-6.0 version
-
-                                  8/11
-                                  ----
-lib/readline/signals.c
-       - make sure we don't use SIGWINCH without checking whether or not it's
-         defined.  Fix from Pedro Alves <pedro@codesourcery.com>
-
-                                  8/12
-                                  ----
-
-COPYING
-       - updated to GPLv3; edits in every file with a copyright or license
-         declaration to update to gpl3
-
-version.c
-       - update extended version info to latest gnu standard
-
-                                  8/17
-                                  ----
-subst.c
-       - change exp_jump_to_top_level to only call top_level_cleanup if
-         parse_and_execute_level is 0.  If it's not, the longjmp to
-         parse_and_execute will run the unwind-protect stack.  Fixes bug
-         most recently reported by Roman Rakus <rrakus@redhat.com>
-
-                                  8/18
-                                  ----
-support/config.{guess,sub}
-       - updated to newer versions from autoconf-2.62 distribution
-
-                                  8/20
-                                  ----
-subst.c
-       - fixed parameter_brace_substring to differentiate between indexed and
-         associative arrays when computing second offset, instead of
-         assuming indexed array
-
-                                  8/21
-                                  ----
-support/xcase.c
-       - simple program to convert input from lower to uppercase and vice
-         versa.  Now used by coproc test suite, since `tr -u' is not
-         portable.
-
-                                  8/22
-                                  ----
-doc/bash.1
-       - fixed description of the bindable edit-and-execute commands to note
-         they check $VISUAL first, instead of $FCEDIT.  Fixed bug reported
-         by
-
-[bash-4.0-alpha frozen]
-
-                                  8/28
-                                  ----
-[bash-4.0-alpha released]
-
-                                   9/1
-                                   ---
-builtins/evalstring.c
-       - fixed typo in parse_string (ostring used uninitialized).  Bug
-         reported by Andreas Schwab <schwab@suse.de>
-
-subst.c
-       - fix return value of parameter_brace_expand to set the
-         W_HASQUOTEDNULL flag in the returned WORD_DESC * if the return value
-         from parameter_brace_remove_pattern is a quoted null string.  Fixes
-         bug reported by Andreas Schwab <schwab@suse.de>
-       - set the W_HASQUOTEDNULL flag in the return value from
-         parameter_brace_expand if the return value from parameter_brace_patsub
-         is a quoted null string
-
-                                   9/6
-                                   ---
-builtins/read.def
-       - change read -t 0 to return success if there is input available to be
-         read -- allows scripts to poll for input.  Uses input_avail libsh
-         function
-
-                                   9/9
-                                   ---
-externs.h
-       - fix extern fpurge declaration -- use HAVE_DECL_FPURGE instead of
-         NEED_FPURGE_DECL, since the former is set by `configure'
-
-jobs.h
-       - add extern declaration for close_pgrp_pipe
-       - add a new job state JNONE (-1) to the enum
-
-jobs.c
-       - include execute_cmd.h for extern declarations for coproc functions
-
-subst.c
-       - include builtins/builtext.h for extern declarations for functions
-         implementing builtins (e.g., declare_builtin)
-
-arrayfunc.c
-       - include "pathexp.h" for extern declaration for glob_char_p
-
-braces.c
-       - add extern declaration for `asprintf'
-
-lib/readline/rlprivate.h
-       - add extern declarations for _rl_trace, _rl_tropen
-
-lib/sh/zgetline.c
-       - add extern declarations for zread, zreadc
-
-lib/sh/mktime.c
-       - include "bashansi.h" for string function declarations
-
-builtins/common.h
-       - add extern declaration for parse_string
-
-trap.c
-       - include jobs.h for extern declaration for run_sigchld_trap
-
-general.c
-       - fix call to strtoimax in legal_number; if ep == string when function
-         returns, the number was not converted, even if errno is not set.
-         Fix from Paul Jarc <prj@case.edu>
-
-                                  9/11
-                                  ----
-[prayers for the victims of 9/11/2001]
-
-builtins/return.def
-       - call no_options, as Posix requires.  This also has the effect of
-         disallowing negative return values unless they're prefixed by `--'
-
-                                  9/13
-                                  ----
-builtins/bind.def
-       - add an error message when bind is used without line editing active,
-         instead of just returning an error status
-
-variables.c
-       - make sure make_local_variable never creates visible variables with
-         a value, whether or not a variable with the same name existed in a
-         previous context.  This is consistent with ksh93.  Fix from
-         <neil@s-z.org>
-
-                                  9/16
-                                  ----
-execute_cmd.c
-       - add call to CHECK_TERMSIG in shell_execve after the call to execve
-         returns.  Recommended by Roman Rakus <rrakus@redhat.com>
-       - add QUIT check in execute_connection after executing first command
-         in a `&' connection
-
-                                  9/22
-                                  ----
-execute_cmd.c
-       - new semaphore variable, executing_list, incremented every time a
-         list (command1;command2 or command1 || command2 or command1 &&
-         command2) is executed; used as sentinel for rest of shell
-
-sig.c,builtins/evalstring.c
-       - set executing_list to 0 when throwing execution back to top level;
-         make sure to unwind-protect it in appropriate places
-
-jobs.c
-       - if a pipeline is killed by SIGINT while executing a list (when
-         executing_list is non-zero), make sure the shell acts as if an
-         interrupt occurred.  The behavior is dependent on the shell
-         compatibility level being > 32 (bash-4.0 and above)
-
-                                  9/23
-                                  ----
-redir.c
-       - don't bother reporting an error with a file descriptor, even if
-         the errno is EBADF, if the redirection error (e.g., NOCLOBBER)
-         can't have anything to do with the fd.  Fixes bug reported by
-         "David A. Harding" <dave@dtrt.org>, debian bug #499633.
-
-                                  9/24
-                                  ----
-builtins/declare.def
-       - make `declare [option] var' (and the `typeset' equivalent) create
-         invisible variables, instead of assigning the null string to a
-         visible variable.  Fixes bug reported by Bernd Eggink <monoped@sudrala.de>
-
-                                  9/25
-                                  ----
-builtins/common.[ch]
-       - new function, builtin_warning(), like builtin_error but for warning
-         messages
-
-builtins/bind.def
-       - experimental: print a warning, but go on, if line editing not active
-         when bind is invoked.  Suggested by Rocky Bernstein
-         <rocky.bernstein@gmail.com>
-
-                                  10/3
-                                  ----
-test.c
-       - use same_file instead of directly comparing st_dev and st_ino when
-         comparing files in filecomp().  From mingw32 patches submitted
-         by Hector Chu <hkcc2@cantab.net>
-
-                                  10/4
-                                  ----
-
-redir.c
-       - in redirection_error(), use `error' instead of errno when comparing
-         against EBADF.  From mingw32 patches submitted by Hector Chu
-         <hkcc2@cantab.net>
-
-shell.c
-       - in unset_bash_input(), reset bash_input.type to st_none after
-         closing the default buffered fd.  From mingw32 patches submitted
-         by Hector Chu <hkcc2@cantab.net>
-
-builtins/cd.def
-       - ignore CDPATH when in privileged mode.  Suggested by Paul Jarc
-         <prj@po.cwru.edu>
-
-variables.c
-       - change sv_globignore to only act if privileged mode is not enabled.
-         Suggested by Paul Jarc <prj@po.cwru.edu>
-
-doc/bash.1,bashref.texi
-       - document new treatment of CDPATH and GLOBIGNORE when privileged
-         mode is enabled
-
-builtins/read.def
-       - change prompt printing to occur after terminal is set to no-echo
-         mode.  Based on suggestion from Stephane Chazelas
-         <stephane_chazelas@yahoo.fr>
-
-lib/readline/signals.c
-       - new variables to keep track of special characters corresponding to
-         SIGINT, SIGQUIT, and SIGTSTP
-       - new variable to keep track of whether tty is echoing control
-         characters corresponding to SIGINT, SIGQUIT, and SIGTSTP
-       - new function, _rl_echo_signal_char(int sig) to display the tty
-         special char generating SIGINT, SIGQUIT, or SIGTSTP.  Based on
-         idea and code from Joe Peterson <joe@skyrush.com>
-       - call rl_echo_signal_char in rl_signal_handler: if the terminal
-         settings indicate it, readline will echo characters that generate
-         keyboard signals
-
-lib/readline/rltty.c
-       - set _rl_intr_char, _rl_quit_char, and _rl_susp_char to special
-         characters that generate signals from keyboard
-       - set _rl_echoctl if ECHOCTL tty flag is set
-
-lib/readline/rlprivate.h
-       - extern declarations for _rl_intr_char, _rl_quit_char, and
-         _rl_susp_char
-       - extern declaration for _rl_echoctl
-
-lib/readline/readline.h
-       - extern declaration for rl_echo_signal_char()
-
-lib/readline/doc/rltech.texi
-       - document rl_echo_signal_handler(): available for applications
-         that install their own signal handlers
-
-                                  10/5
-                                  ----
-execute_cmd.c
-       - fix errexit logic to not cause the shell to exit when a command in
-         a pipeline fails.  Fixes bug reported by Marcin Owsiany
-         <marcin@owsiany.pl>
-
-                                  10/14
-                                  -----
-builtins/evalstring.c
-       - don't short-circuit execution in parse_and_execute if we want to
-         run an exit trap.  Fixes bug reported by Steffen Kiess
-         <s-kiess@web.de>
-
-                                  10/18
-                                  -----
-parse.y
-       - fix error production to only call YYACCEPT if the shell is currently
-         interactive and not in parse_and_execute (so parser errors in
-         things like eval will correctly set $?).  Fixes bug reported by
-         marco-oweber@gmx.de
-
-execute_cmd.c
-       - make sure variable name errors in execute_for_command and non-
-         identifier function names in execute_intern_function set the
-         return status to EX_BADUSAGE (2), not EX_USAGE (258)
-
-parser.h
-       - new parser state, PST_REPARSE
-
-parse.y
-       - turn PST_REPARSE on in parse_string_to_word_list
-       - in parse_matched_pair, if parsing a single-quoted string and
-         PST_REPARSE is set, don't requote CTLESC or CTLNUL.  Fixes bug with
-         compound array assignment using $'\x7f' reported by Antonio Macchi
-         <antonio_macchi@alice.it>
-
-                                  10/23
-                                  -----
-configure.in
-       - define LOCAL_LDFLAGS as `-z interpose' on Solaris 8, 9, and 10 to
-         allow the bash malloc to interpose the libc malloc when called by
-         library functions pre-bound to the libc malloc.  Suggested by
-         Serge Dussud <Serge.Dussud@Sun.COM>
-
-                                  10/26
-                                  -----
-doc/bash.1
-       - add single-sentence descriptions to rest of parameter expansions.
-         Suggested by Ken Irving <fnkci@uaf.edu>
-
-                                  10/27
-                                  -----
-subst.c
-       - rearrange code in skip_to_delims to allow quote characters and other
-         shell expansion characters to be delimiters
-       - add new flags value for inverting search: skip to the next character
-         NOT in the set of delimiters passed as an argument
-
-subst.h
-       - define for new SD_INVERT flag value for skip_to_delims
-
-                                  10/28
-                                  -----
-bashline.c
-       - new bindable functions: shell-forward-word and shell-backward-word.
-         Like forward-word and backward-word, but understand shell quoting
-         and use shell metacharacters and whitespace as delimiters.
-         Suggested by Andre Majorel <amajorel@teaser.fr>
-       - new bindable functions: shell-kill-word and shell-backward-kill-word.
-         Like kill-word and backward-kill-word, but understand shell quoting
-         and  use shell metacharacters and whitespace as delimiters.
-         Suggested by Andre Majorel <amajorel@teaser.fr>
-
-doc/bash.1,lib/readline/doc/rluser.texi
-       - documented shell-forward-word and shell-backward-word
-       - documented shell-kill-word and shell-backward-kill-word
-
-                                  11/1
-                                  ----
-redir.c
-       - add extra argument to add_undo_redirect: fdbase.  FD used to save
-         a file descriptor must be > fdbase if fdbase >= SHELL_FD_BASE.  A
-         value of -1 for fdbase means to just use SHELL_FD_BASE.  Fixes bug
-         with 0<&10 reported by Clark Jian Wang <dearvoid@gmail.com>
-
-                                  11/5
-                                  ----
-unwind_prot.c
-       - new function: have_unwind_protects(); returns 1 if unwind_protect_list
-         is not empty
-
-unwind_prot.h
-       - extern declaration for have_unwind_protects
-
-builtins/evalstring.c
-       - in parse_and_execute_cleanup, make sure that we don't call
-         run_unwind_frame and expect it to decrement parse_and_execute_level
-         if there's no unwind_protect_list, since there's a while loop in
-         throw_to_top_level that calls parse_and_execute_cleanup as long as
-         parse_and_execute_level is non-zero
-
-                                  11/9
-                                  ----
-variables.c
-       - fix the assign function for COMP_WORDBREAKS to allocate new memory
-         to store as the variable's value, to avoid freeing memory twice
-         if the variable is unset after rl_completer_word_break_characters
-         is freed and reallocated.  Fix from Mike Stroyan <mike@stroyan.net
-
-                                  11/11
-                                  -----
-bashline.c
-       - new function to reset the value of rl_completer_word_break_characters
-         while honoring setting of `hostcomplete': reset_completer_word_break_chars.
-
-bashline.h
-       - new extern declaration for reset_completer_word_break_chars.
-
-variables.c
-       - call reset_completer_word_break_chars in sv_comp_wordbreaks when the
-         variable is unset
-
-[bash-4.0-beta frozen]
-
-                                  11/16
-                                  -----
-subst.c
-       - call set_pipestatus_from_exit in exp_jump_to_top_level so that
-         failed expansions that set $? will set $PIPESTATUS.  Fixes bug
-         reported by Eric Blake <ebb9@byu.net>
-
-                                  11/20
-                                  -----
-general.c
-       - new 'file_exists(fn)' primitive; just calls stat(2)
-
-general.h
-       - new extern declaration for file_exists
-
-bashline.c
-       - add `~' to rl_filename_quote_characters so make_quoted_replacement
-         will call bash_quote_filename for words containing `~'.  Then
-         bash_quote_filename can make choices based on that
-       - change quote_word_break_chars to backslash-quote the tilde in a
-         filename with a leading tilde that exists in the current directory,
-         since we want to inhibit tilde expansion in this case
-
-execute_cmd.c
-       - call file_isdir from shell_execve instead of stat(2) directly
-
-bashhist.c
-       - use file_exists and file_isdir primitives instead of calling stat
-
-                                  11/21
-                                  -----
-redir.c
-       - When undoing saving of non-standard file descriptors (>=3) using
-         file descriptors >= SHELL_FD_BASE, we set the saving fd to be
-         close-on-exec and use a flag (RX_SAVCLEXEC) to decide how to set
-         close-on-exec when the fd is restored.  Set flag in add_undo_redirect,
-         check in do_redirection_internal.  Fixes problem reported by Andreas
-         Schwab <schwab@suse.de>
-
-                                  11/26
-                                  -----
-subst.c
-       - fix param_expand to have expansions of $@ and $* exit the shell if
-         there are no positional parameters and `set -u' is enabled.  Fixes
-         bug reported by Dan Jacobson <jidanni@jidanni.org>
-
-                                  11/27
-                                  -----
-lib/readline/display.c
-       - fix update_line to not call space_to_eol if current cursor position
-         (_rl_last_c_pos) indicates that we're already at end of line.
-         Partial fix for bug reported by Mike Frysinger <vapier@gentoo.org>
-       - in update_line, don't call insert_some_chars if that will start
-         before the last invisible character in the prompt string and not
-         draw the entire prompt string.  More of the partial fix for bug
-         reported by Mike Frysinger <vapier@gentoo.org>
-       - fix update_line to adjust _rl_last_c_pos by wrap_offset when adding
-         characters beginning before the last invisible character in the
-         prompt.  New code is same as previously existed in a different code
-         path.  Rest of fix for bug from Mike Frysinger <vapier@gentoo.org>
-       - fix assignment of newline breaks (inv_lbreaks) to correctly account
-         for prompts longer than two screen lines containing invisible
-         characters.  The assumption is that part of the invisible characters
-         are on the first line (prompt_invis_chars_first_line) and the
-         remainder are on the last (wrap_offset - prompt_invis_chars_first_line).
-         Fix is in rl_redisplay.  part of fix for bug reported by
-         "Wesley J. Landaker" <wjl@icecavern.net> in
-         http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=265182
-         [TENTATIVE]
-       - fix _rl_move_cursor_relative to correctly offset `dpos' by `woff'
-         when there are invisible characters on lines after the second by
-         using (_rl_screenwidth*_rl_last_v_pos) when seeing whether or not
-         we just wrote some invisible characters.  Rest of fix for bug
-         reported in http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=265182
-         [TENTATIVE]
-
-                                  12/11
-                                  -----
-sig.c
-       - reset the execution context before running the exit trap in
-         termsig_handler
-
-general.c
-       - set and unset terminate_immediately like interrupt_immediately in
-         bash_tilde_expand
-
-builtins/read.def
-       - change terminate_immediately to a counter instead of a flag, as
-         interrupt_immediately is used
-
-lib/readline/display.c
-       - slight change to fix from 11/27 to deal with prompts longer than a
-         screen line where the invisible characters all appear after the
-         line wrap.  Fixes bug reported by Andreas Schwab <schwab@suse.de>
-
-builtins/{echo,printf}.def
-       - increment terminate_immediately at entry; decrement before returning.
-         Fix for bug reported by Ralf.Wildenhues@gmx.de
-
-                                  12/16
-                                  -----
-subst.c
-       - fix off-by-one error in /dev/fd version of add_fifo_list; make
-         sure we add to totfds when it is == fd, not just when fd > totfds.
-         Fixes bug reported by marciso@gmail.com
-
-[bash-4.0-beta2 frozen]
-
-                                  12/29
-                                  -----
-doc/{bash.1,bashref.texi}
-       - document more clearly that when not in Posix mode, command
-         substitution does not inherit the -e option.  From bug report from
-         Freddy Vulto <fvulto@gmail.com>
-
-{execute_cmd,sig,builtins/evalstring}.c
-       - sentinel variable to keep track of whether or not we're supposed to
-         ignore the failure status of a command executed in a command
-         substitution even if the `-e' option is set: comsub_ignore_return
-       - increment and decrement comsub_ignore_return in execute_simple_command
-         before calling expand_words
-       - in parse_and_execute, if comsub_ignore_return is non-zero and the
-         SUBSHELL_COMSUB bit is set in subshell_environment, enable the
-         CMD_IGNORE_RETURN flag in every command executed from the passed
-         string.  Fixes problem reported by Freddy Vulto <fvulto@gmail.com>
-       - make sure to reset comsub_ignore_return every time we throw to the
-         top level, like executing_list flag
-
-                                1/2/2009
-                                --------
-parse.y
-       - fix to rewind_input_stream to handle case of $(...) command
-         substitution followed by a quoted literal newline.  Report and fix
-         from Andreas Schwab <schwab@suse.de>
-
-                                   1/7
-                                   ---
-
-subst.c
-       - fix match_wpattern and match_upattern to prefix a `*' to the
-         pattern even if it starts with a `*(' (if extglob is enabled)
-         before checking whether or not it can match anywhere in the
-         string.  Fixes bug reported by os@sernet.de.
-
-[bash-4.0-rc1 frozen]
-
-                                   1/9
-                                   ---
-locale.c
-       - since setlocale() doesn't set errno to anything meaningful,
-         don't include the strerror() result in the error message if
-         it fails
-       - make sure the error messages printed when setlocale fails are
-         localizable
-
-                                  1/11
-                                  ----
-lib/readline/histexpand.c
-       - make sure that every time history_no_expand_chars is tested, we
-         also call the history_inhibit_expansion_function if it's set.
-         Fixes bug reported by Yang Zhang <yanghatespam@gmail.com>
-
-                                  1/12
-                                  ----
-trap.c
-       - make sure to call parse_and_execute with the SEVAL_RESETLINE bit
-         set in the flags so it will reset the line number when running
-         the trap commands.  Partial fix for bug reported by
-         peter360@fastmail.us
-
-                                  1/14
-                                  ----
-builtins/reserved.def
-       - document `coproc' so it can be used with `help' builtin.  Pointed
-         out by Pierre Gaston <pgas@freeshell.org>
-
-lib/sh/casemod.c
-       - added two new flags: CASE_UPFIRST and CASE_LOWFIRST to casemod
-         the first character of the passed string and pass the rest
-         through unchanged.  Fixes bug reported by Jan Schampera
-         <jan.schampera@web.de>
-
-externs.h
-       - new defines for CASE_UPFIRST and CASE_LOWFIRST
-
-subst.c
-       - use CASE_UPFIRST for ^ and CASE_LOWFIRST for , casemod operators
-
-builtins/mapfile.def
-       - call zreset() before calling first zgetline(), to clean out any
-         remaining data in local buffer used by zreadc.  Fixes bug
-         reported by Pierre Gaston <pierre.gaston@gmail.com>
-
-                                  1/15
-                                  ----
-lib/sh/zread.c
-       - renamed zreadintr to zreadretry -- not perfect, but better
-       - new functions: zreadintr, which just calls read so it can be
-         interruptible, and zreadcintr, which is like zreadc but uses
-         zreadintr to fill the buffer
-
-lib/sh/zgetline.c
-       - in zgetline, when zread/zreadc return <= 0, make sure line is
-         non-null before assigning to line[nr]
-
-builtins/mapfile.def
-       - return an error right away if the supplied array variable name
-         refers to a readonly or noassign array
-       - set interrupt_immediately so calls to zgetline can be
-         interrupted.  Fixes bug reported by Pierre Gaston
-         <pierre.gaston@gmail.com>
-       - if interactive, pass the SEVAL_INTERACT and SEVAL_NOHIST flags
-         to parse_and_execute when calling callbacks.  Fixes bug reported
-         by Pierre Gaston <pierre.gaston@gmail.com>
-       - add `readarray' as a synonym for mapfile
-
-doc/{bash.1,bashref.texi}
-       - document behavior of mapfile builtin adding index of array element
-         to be assigned as additional argument to callback string.  Reported
-         by Pierre Gaston <pierre.gaston@gmail.com>
-       - document readarray as synonym for mapfile
-
-builtins/common.c
-       - new error function, sh_ttyerror(set), prints an error message having
-         to do with setting or getting terminal attributes
-
-builtins/read.def
-       - print error message if read fails to set terminal attributes
-
-                                  1/16
-                                  ----
-execute_cmd.c
-       - new function, coproc_reap, calls coproc_dispose if sh_coproc is
-         marked as COPROC_DEAD
-       - new function, cpl_reap, disposes coprocs marked as COPROC_DEAD
-         from coproc list
-       - change coproc_pidchk to just mark the coproc as dead instead of
-         calling coproc_dispose, so we don't call unsafe functions from
-         a signal handler.  Fixes bug reported by Andreas Schwab
-         <schwab@suse.de>
-
-execute_cmd.h
-       - new extern declaration for coproc_reap
-
-command.h
-       - new flags for c_flags member of a struct coproc
-
-{jobs,nojobs}.c
-       - add call to coproc_reap in cleanup_dead_jobs, which will do the
-         right queueing or blocking of SIGCHLD
-
-trap.c
-       - modify change from 1/12 to not reset the line number when running
-         the DEBUG and RETURN traps
-
-                                  1/18
-                                  ----
-lib/sh/casemod.c
-       - change default operations to work on entire passed string instead
-         of breaking into words at non-alpha-numerics.  Use new
-         CASE_USEWORDS flag to enable by-word behavior.  Fixes bug reported
-         by Jan Schampera <jan.schampera@web.de>
-
-builtins/printf.def
-       - in vbprintf, bracket each call to vsnprintf (which uses the args
-         passed to vbprintf) with SH_VA_START and va_end, so we can
-         reninitialize the argument list for each call.  This is actually
-         what the C standard requires.  Fixes bug that caused printf -b
-         to `ignore' first % format specifier if it came first in the
-         string.  Reported by David Leverton <levertond@googlemail.com>
-
-builtins/mapfile.def
-       - start the line count at 1, since it doesn't get incremented before
-         (or after) reading the first line, so things like
-         `mapfile -n 5 -c 1 -C 'echo foo' array < file' work right and call
-         the callback after the first line is read.  Fixes bug reported by
-         Pierre Gaston <pierre.gaston@gmail.com>
-
-                                  1/22
-                                  ----
-lib/readline/complete.c
-       - set _rl_interrupt_immediately non-zero before reading from the file
-         system or calling an application-defined completion function
-
-lib/readline/signals.c
-       - renamed rl_signal_handler to _rl_handle_signal; new version of
-         rl_signal_handler that just calls _rl_handle_signal (for now)
-       - new function _rl_signal_handler that calls _rl_handle_signal without
-         any checking
-
-lib/readline/rlprivate.h
-       - new extern declaration for _rl_signal_handler
-       - new define, RL_CHECK_SIGNALS, checks whether or not _rl_caught_signal
-         is set and calls _rl_signal_handler if so
-
-lib/readline/{bind,input,readline}.c
-       - add RL_CHECK_SIGNALS in appropriate places
-
-lib/readline/signals.c
-       - change rl_signal_handler to set a flag and return rather than
-         run through the entire signal handling process.  If
-         _rl_interrupt_immediately is set, call the signal handling code
-         right away instead of setting the flag.  Initial fix for crash
-         bug reported by Roman Rakus <rrakus@redhat.com>
-
-aclocal.m4
-       - new macro, BASH_TYPE_SIG_ATOMIC_T, tests for sig_atomic_t in
-         <signal.h>, defines as int if not defined
-
-configure.in
-       - call BASH_TYPE_SIG_ATOMIC_T
-       - call AC_C_VOLATILE
-
-config.h.in
-       - empty define for sig_atomic_t
-       - empty define for volatile
-
-                                  1/27
-                                  ----
-subst.c
-       - audit calls to add_character and change to add_ifs_character (which
-         quotes characters in $IFS).  Affects primarily `:', `=', and `~'.
-         Fixes bug reported by Jan Schampera <jan.schampera@web.de>; fix
-         suggested by Stephane Chazelas <stephane_chazelas@yahoo.fr>
-
-                                   2/1
-                                   ---
-configure.in
-       - call AC_C_RESTRICT
-
-config.h.in
-       - add empty defintion for `restrict'
-
-pcomplete.c
-       - use unwind_protects around call to execute_shell_function in
-         gen_shell_function_matches to prevent data corruption if
-         throw_to_top_level is called.  Bug report and fix from
-         werner@suse.de.
-
-execute_cmd.c
-       - don't clamp CPU usage at 100% in print_formatted_time.  Bug reported
-         by Linda Walsh <bash@tlinx.org>
-
-                                   2/5
-                                   ---
-locale.c
-       - in set_locale_var, set errno to 0 before calling setlocale(), and
-         print strerror (errno) if setlocale fails and errno ends up non-zero
-
-                                   2/6
-                                   ---
-configure.in
-       - backed out of solaris change from 10/23/2008 (adding `-z interpose'
-         to LDFLAGS) due to solaris updates to fix a linker problem.
-         Updatted by Serge Dussud <Serge.Dussud@Sun.COM>
-
-                                  2/12
-                                  ----
-execute_cmd.c
-       - change execute_connection so failure of a pipeline will cause the
-         shell to exit if -e is on.  From discussion on austin-group
-         mailing list
-       - change execute_command_internal so failure of a user-specified
-         subshell will cause the shell to exit if -e is on.  From discussion
-         on austin-group mailing list
-
-                                  2/13
-                                  ----
-doc/{bash.1,bashref.texi}
-       - clarified description of set -e option to accurately reflect current
-         implementation
-
-                                  2/19
-                                  ----
-print_cmd.c
-       - fix print_deferred_heredocs to not print a space if the separator
-         string is null
-       - change print_deferred_heredocs to set `was_heredoc' after printing
-         something
-       - change connection printing code to only print the `;' separator
-         if we haven't just printed a here-document
-       - change connection printing code to print any deferred here
-         documents after the rhs of the connection.  Fixes bug reported by
-         Bo Andresen <bo.andresen@zlin.dk>
-
-[bash-4.0 frozen]
-
-                                  2/20
-                                  ----
-
-[bash-4.0 released]
-
-                                  2/22
-                                  ----
-
-parse.y
-       - fix parse_comsub to not test a character for being a possible shell
-         metacharacter if LEX_PASSNEXT flag is set.  Fixes bug reported by
-         Mike Frysinger <vapier@gentoo.org>
-
-pcomplete.c
-       - add call to save_parser_state (accidentally dropped from patch) to
-         gen_shell_function_matches.  Fixes bug with bash_completion and
-         file/directory completion reported by phil@Arcturus.universe
-
-Makefile.in
-       - fix assignment to LDFLAGS_FOR_BUILD to match those in subdir
-         Makefiles.  Fixes bug reported by Mike Frysinger <vapier@gentoo.org>
-
-builtins/mapfile.def
-       - make sure the callback quantum (-c option argument) is > 0.  Fixes
-         bug reported by Stephane Chazleas <stephane_chazelas@yahoo.fr>
-
-                                  2/23
-                                  ----
-parse.y
-       - fix save_token_state and restore_token_state to save and restore
-         current_token.  Fixes bug reported by Bernd Eggink
-         <monoped@sudrala.de>
-
-builtins/exit.def
-       - check jobs[i] before checking whether or not it's running when
-         the checkjobs option is set and we're looking for running jobs
-         at exit.  Fixes bug reported by Mike Frysinger <vapier@gentoo.org>
-
-                                  2/24
-                                  ----
-siglist.c
-       - include bashintl.h for definition of _.  Fixes bug reported by
-         Greg Wooledge <wooledg@eeg.ccf.org>
-
-                                  2/25
-                                  ----
-subst.c
-       - new function, skip_matched_pair.  Similar to skip_to_delim and
-         the extract_XXX family
-       - move skipsubscript here from arrayfunc.c; re-implement in terms of
-         skip_matched_pair.  Fixes bugs reported by <anmaster@tele2.se>
-
-arrayfunc.c
-       - remove skipsubscript; moved to subst.c
-
-parse.y
-       - change reset_parser to set current_token to '\n'.  Rest of fix for
-         bug reported by Bernd Eggink <monoped@sudrala.de>; earlier fix on
-         2/23
-
-                                  2/26
-                                  ----
-builtins/declare.def
-       - when given something like array[x]=y (which sets making_array_special
-         to 1), don't convert an associative array to an indexed array (line
-         493).  Part of fix for bug reported by Pierre Gaston
-         <pierre.gaston@gmail.com>
-       - if offset == 0, indicating that we do not have a valid assignment,
-         make sure any `name' containing a `[' is a valid array reference
-         before trying to go on.  Not doing this leads to creating crazy
-         variables like `name[foo[bar]=bax'.  Rest of fix for bug reported
-         by Pierre Gaston <pierre.gaston@gmail.com>
-
-assoc.c
-       - change assoc_to_assign to single-quote the array keys if `quoted' is
-         non-zero.  Makes things easier to read with weird characters in the
-         key
-
-parse.y
-       - fix parse_comsub to not set LEX_HEREDELIM when it sees "<<<".  Fixes
-         bug reported by Mike Frysinger <vapier@gentoo.org>
-
-                                  2/27
-                                  ----
-parse.y
-       - fix report_syntax_error to set last_command_exit_value to
-         EX_BADUSAGE (2) instead of EX_USAGE (258), since there's nothing
-         that will translate that to something < 128 before reading the
-         next command.  Partial fix for bug reported by Mike Frysinger
-         <vapier@gentoo.org>
-
-sig.c
-       - fix sigint_sighandler to set last_command_exit_value to sig+128
-         before calling throw_to_top_level.  Rest of fix for bug reported
-         by Mike Frysinger <vapier@gentoo.org>
-
-jobs.c
-       - if fork() fails, set last_command_exit_value to 126 before calling
-         throw_to_top_level
-
-execute_cmd.c
-       - defer calling unlink_fifo_list in parent branch of
-         execute_disk_command if we're executing in a shell function
-       - change execute_function to call unlink_fifo_list before returning
-         if it's the top-level function
-
-                                   3/2
-                                   ---
-builtins/read.def
-       - if read times out, make sure we remove the top element from the
-         unwind-protect stack (the free of input_string) and run the rest,
-         to reset the tty and readline and alarm states.  Then we jump to
-         assigning the variables to any partial input.  Fixes bug reported
-         by Christopher F. A. Johnson <cfajohnson@gmail.com>
-
-                                   3/3
-                                   ---
-parse.y
-       - break comment checking code into a common COMMENT_BEGIN define so
-         we can use it in multiple places in parse_comsub
-       - in parse_comsub, don't alter the LEX_RESWDOK flag if we read a
-         `#' and we're checking comments, even though `#' isn't a `shell break'
-         character.  Fixes bug reported by Mike Frysinger  <vapier@gentoo.org>
-
-braces.c
-       - in expand_seqterm, decrease the total length of the rhs by the length
-         of any (optional) increment, so we don't end up with unwanted zero
-         padding because the rhs length is wrong.  Fixes bug reported by
-         Carl Albing <albing@comcast.net>
-
-                                   3/4
-                                   ---
-doc/{bash.1,bashref.texi}
-       - changes to clean up some of the language describing the effects of
-         terminal process groups on the ability to read from and write to
-         the terminal
-
-                                   3/5
-                                   ---
-support/shobj-conf
-       - add host_vendor to string tested in switch to handle things like
-         gentoo/freebsd
-       - beginning with version 7, FreeBSD no longer has /usr/bin/objformat
-         or a.out binaries and libraries.  It's always ELF.  Fix from
-         Timothy Redaelli <drizzt@gentoo.org>
-
-parse.y
-       - in parse_comsub, allow comments if we are ready to read a
-         reserved word (tflags & LEX_RESWDOK), haven't read anything from
-         one yet (lex_rwlen == 0) and the current character is a '#'
-
-                                   3/6
-                                   ---
-parse.y
-       - new lex flag for parse_comsub: LEX_INWORD.  Turn it off when
-         we see a shell break character; turn it on or keep it on when
-         not a break character.  Keep track of word length (reset to 0
-         when we turn on LEX_INWORD when it was off).
-       - don't use COMMENT_BEGIN in parse_comsub any more; test
-         whether or not LEX_INWORD is set and lex_wlen == 0 in addition
-         to tests for LEX_RESWDOK and lex_rwlen.  Comments are valid
-         when at the start of a word
-       - move LEX_PASSNEXT code to the top of parse_comsub, so the rest
-         of the function doesn't have to check for the flag at different
-         places
-
-                                   3/7
-                                   ---
-parse.y
-       - in parse_comsub, when looking for a reserved word (LEX_RESWDOK
-         non-zero), and in a case statement, we can see either an esac
-         or a pattern list.  We handle an esac separately.  We should
-         turn off LEX_RESWDOK if we see anything but a newline, since
-         we'll be reading a pattern list.  Other part of fix for bug
-         reported by Mike Frysinger <vapier@gentoo.org> (rest of fix
-         on 3/3)
-
-                                  3/10
-                                  ----
-{.,lib/readline}/doc/fdl.texi
-       - updated to FDL version 1.3
-
-                                  3/11
-                                  ----
-parse.y
-       - when using the |& construct with a simple command preceding it, add
-         the implicit redirection to the simple command's redirection list,
-         since the redirections associated with the command struct are never
-         executed.  Fixes bug reported by Matt Zyzik <Matt@ice.filescope.com>
-
-                                  3/14
-                                  ----
-execute_cmd.c
-       - in execute_case_command, if ;& is used with no following pattern
-         list, make sure we don't reference a NULL pointer.  Bug report and
-         fix from Clark Jian Wang <dearvoid@gmail.com>
-
-parse.y
-       - make parser_state global, so other files can use it
-       - command_word_acceptable now returns non-zero if PST_REDIRLIST bit
-         set in parser_state, so we accept assignment statements and
-         perform alias expansion.  Fix for bug reported by Vincent
-         Lefevre <vincent@vinc17.org> (2/24/2009)
-
-parser.h
-       - add PST_REDIRLIST flag, notes that parser is currently parsing a
-         redirection list preceding a simple command
-
-make_cmd.c
-       - make_simple_command now turns on PST_REDIRLIST in parser_state when
-         creating a new simple command
-       - make_simple_command turns off PST_REDIRLIST in parser_state if it
-         adds a non-redirection to the command it's building
-       - clean_simple_command turns off PST_REDIRLIST to make sure it's off
-
-subst.c
-       - new flag for param_expand: PF_IGNUNBOUND, means to not exit if the
-         variable is unbound even if `set -u' is enabled
-       - change param_expand to not call err_unboundvar if the `pflags'
-         argument has the PF_IGNUNBOUND bit set
-       - parameter_brace_expand_word now takes an extra `pflags' argument to
-         pass down to param_expand; changed callers
-       - changed call to parameter_brace_expand_word in parameter_brace_expand
-         to add PF_IGNUNBOUND flag so ${@:-foo} doesn't cause the shell to
-         exit (but ${@} does) when there are no positional parameters.  Fixes  
-         Debian bug 519165 from Dan Jacobson <jidanni@jidanni.org>
-
-parse.y
-       - add code to parse_comsub to allow here-documents within command
-         substitutions to be delimited by the closing right paren, with the
-         usual warning about here documents delimited by EOF on execution.
-         Fixes regression from bash-3.2 noted in Red Hat bugzilla 485664 by
-         Ralf Corsepius
-
-                                  3/15
-                                  ----
-subst.c
-       - string_list_dollar_at now checks for Q_PATQUOTE, which getpattern()
-         uses to denote Q_DOUBLE_QUOTES (?).  Fixes a=abcd echo "${a#$*}"
-         when IFS= and args are `a b' as noted by Stephane Chazleas
-         <stephane_chazelas@yahoo.fr>
-       - param_expand now checks for Q_PATQUOTE and treats it identically
-         to Q_DOUBLE_QUOTES when expanding $*
-       - expand_word_unsplit now sets W_NOSPLIT in the flags of the word it
-         passes to expand_word_internal if $IFS is NULL
-       - expand_word_leave_quoted now sets expand_no_split_dollar_star and
-         the W_NOSPLIT bit in the word flags before calling
-         expand_word_internal if $IFS is NULL, just like expand_word_unsplit.
-         It is now virtually identical to expand_word_unsplit.  Rest of fix for
-         problems reported by Stephane Chazleas <stephane_chazelas@yahoo.fr>
-
-                                  3/20
-                                  ----
-trap.c
-       - in _run_trap_internal, don't pass SEVAL_RESETLINE as flag to
-         parse_and_execute if running the ERR trap (further modification
-         of change from 1/12)
-
-execute_cmd.c
-       - in execute_simple_command, set line_number to line_number_for_err_trap
-         before calling run_error_trap.  Part of fix for bug reported by
-         Brian J. Murrell <brian@interlinx.bc.ca>
-       - change other places calling run_error_trap() to set and use
-         line_number_for_err_trap
-
-                                  3/21
-                                  ----
-builtins/fc.def
-       - Even though command substitution through parse_and_execute turns 
-         off remember_on_history, command substitution in a shell when
-         set -o history has been enabled (interactive or not) should use it
-         in the last_hist calculation as if it were on.  Same calculation
-         in fc_gethnum and fc_builtin.  Fixes bug reported by
-         Ian Kelling <smallnow@gmail.com> 
-
-sig.c
-       - change termsig_sighandler to terminate immediately if it gets called
-         twice with the same signal before termsig_handler gets called.  This
-         fixes the `looping on SIGSEGV' phenomenon reported by Linux users.
-
-parse.y
-       - in read_secondary_line, don't try to add NULL lines to the history
-         list.  Report and patch from Lubomir Rintel <lkundrak@v3.sk>
-
-                                  3/22
-                                  ----
-sig.c
-       - Augment change from 3/21 with explicit check for signals we *don't*
-         want this to happen for.  Patch from Lubomir Rintel <lkundrak@v3.sk>
-
-                                  3/28
-                                  ----
-array.c
-       - in array_reference, return NULL immediately if the desired index
-         is larger than the maximum
-       - add cache of last array referenced and last array element referenced;
-         use in array_reference to optimize case of sequential access;
-         invalidated where necessary in other functions
-       - array_rshift needs to set max_index to 0 if the array was empty
-         before shifting in the new element 0
-       - array_shift needs to use element_index(a->head->prev) to set the
-         max_index, not a simple decrement, to deal with sparse arrays
-
-                                   4/1
-                                   ---
-bashline.c
-       - in bash_dequote_filename, return right away after copying the
-         backslash if the last character in the string to be expanded
-         is a backslash.  The old code copied an extra NUL and overwrote
-         the bounds checking.  Fixes bug reported by Shawn Starr
-         https://bugzilla.redhat.com/show_bug.cgi?id=488649
-
-                                   4/3
-                                   ---
-subst.c
-       - in pat_subst.c, make sure to copy one character from the input
-         string in the case of a null pattern match, since we substitute
-         on the null match and then increment past the current character.
-         Not doing this means that each character of the original string
-         is replaced because of the null matches.  Fixes debian bug
-         reported bhy Louis-David Mitterrand <ldm@apartia.fr>
-         http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=522160
-
-lib/sh/winsize.c
-       - incorporate contents of readline/rlwinsize.h to get all the various
-         system dependencies right when trying to find TIOCGWINSZ.  Fixes
-         bug reported by Dan Price <dp@eng.sun.com>
-
-                                   4/6
-                                   ---
-doc/{bash.1,bashref.texi}
-       - fix description of conditional `>' and `<' to remove statement that
-         the comparison pays attention to the current locale -- it has
-         always used strcmp
-
-lib/glob/glob.c
-       - fixed a bug in glob_filename that caused glob_dir_to_array to be
-         called to prepend a (globbed) directory name onto the results from
-         glob_vector, which, if we were globbing `**', glob_vector has
-         already done.  Effect is to have the directory name(s) on there
-         twice.  Fixes "dir*/**" bug reported by Matt Zyzik
-         <Matt@ice.filescope.com>
-
-                                   4/8
-                                   ---
-doc/{bash.1,bashref.texi}
-       - fix short syntax summary of for command to reflect full bash
-         syntax (which is a superset of Posix syntax).  Fixes bug reported
-         by Reuben Thomas <rrt@sc3d.org>
-
-                                  4/10
-                                  ----
-{expr,subst}.c
-       - make sure last_command_exit_value is set to EXECUTION_FAILURE
-         before calling err_unboundvar, in case set -e is enabled and
-         the shell exits from there.  Fixes bug reported by Freddy
-         Vulto <fvulto@gmail.com> and Piotr Zielinski
-         <piotr.zielinski@gmail.com>
-
-                                  4/11
-                                  ----
-jobs.c
-       - in restore_pipeline, don't call discard_pipeline with a NULL
-         argument
-
-trap.c
-       - in run_debug_trap, make sure to save and restore the pipeline,
-         pipeline_pgrp, and state of the pipeline around running the debug
-         trap, then remove any job created by running the debug trap from
-         the jobs table when it completes.  Fixes for two bugs reported
-         by lex@upc.ua
-
-                                  4/12
-                                  ----
-lib/readline/signals.c
-       - new functions to block and release SIGWINCH like the SIGINT blocking
-         and releasing functions
-
-lib/readline/rlprivate.h
-       - new extern declarations for _rl_block_sigwinch and _rl_release_sigwinch
-
-lib/readline/display.c
-       - block SIGWINCH during redisplay like SIGINT.  Should fix bug reported
-         by Nicolai Lissner <nlissne@linux01.org>
-
-                                  4/13
-                                  ----
-lib/readline/readline.h
-       - new readline state variable: RL_STATE_REDISPLAYING
-
-lib/readline/display.c
-       - in rl_redisplay, don't block SIGWINCH during redisplay; just set
-         the REDISPLAYING state
-
-lib/readline/terminal.c
-       - in rl_resize_terminal, don't call rl_redisplay_after_sigwinch() if
-         we're already in the middle of redisplay (RL_STATE_REDISPLAYING).
-         Fix for bug reported by Nicolai Lissner <nlissne@linux01.org>
-
-                                  4/15
-                                  ----
-parse.y
-       - fix parse_comsub to add check for \n when seeing whether the current
-         character can change to a state where a reserved word is legal,
-         since it is not a shell meta character.  Fixes bug reported by
-         Bernd Eggink <monoped@sudrala.de>.
-
-                                  4/17
-                                  ----
-jobs.c
-       - new functions to save and restore the pgrp_pipe (since there's only
-         one): save_pgrp_pipe and restore_pgrp_pipe
-
-trap.c
-       - run_debug_trap now saves and restores the pgrp_pipe before and
-         after calling the debug trap
-       - run_debug_trap now makes sure the terminal is owned by the pipeline
-         pgrp after the debug trap runs.  Rest of fix for bug reported by
-         Oleksly Melnyk <o.melnyk@upc.ua> (lex@upc.ca)
-
-                                  4/19
-                                  ----
-include/posixselect.h
-       - new include file, encapsulates select(2) includes and defines for
-         bash and readline.  Inspired by patch from Mike Frysinger
-         <vapier@gentoo.org>
-
-lib/sh/input_avail.c
-        - include "posixselect.h"
-
-lib/readline/{input,parens}.c
-       - include "posixselect.h" instead of using inline includes
-       - use new USEC_TO_TIMEVAL define to make sure that values for timeouts
-         greater than one second are handled properly
-
-lib/sh/fpurge.c
-       - updated implementation, taken from gnulib
-
-                                  4/21
-                                  ----
-lib/glob/glob.c
-       - in finddirs, don't try to free a return value of glob_error_return
-         from glob_vector.  Bug and fix from werner@suse.de
-
-lib/readline/signals.c
-       - in rl_echo_signal_char, check that SIGQUIT and SIGTSTP are defined
-         before trying to use them.  Bug report and fix from Volker Grabsch
-         <vog@notjusthosting.com>
-
-                                  4/24
-                                  ----
-aclocal.m4
-       - add conditional inclusion of <stdint.h> to BASH_CHECK_TYPE
-
-bashtypes.h,lib/sh/strto[iu]max.c
-       - include <stdint.h> if present for any existing declaration of
-         intmax_t and uintmax_t.  Fixes Interix problem reported by
-         Markus Duft <mduft@gentoo.org>
-
-lib/sh/strindex.c,externs.h,builtins/common.h
-       - renamed strindex to strcasestr to agree with other implementations
-         (e.g., BSD, MacOS X, gnulib); changed callers
-
-lib/sh/{strindex.c,Makefile.in},Makefile.in
-       - renamed strindex.c to strcasestr.c
-
-configure.in
-       - add strcasestr to call to AC_REPLACE_FUNCS, take advantage of
-         existing libc implementations
-
-config.h.in
-       - add define for HAVE_STRCASESTR
-
-lib/sh/mbscmp.c
-       - fix mbscmp to return correct values when the strings do not contain
-         valid multibyte characters.  Ideas from gnulib
-
-xstrchr.c
-       - only compare current character against C if mblength == 1
-
-{shell,variables}.c
-       - changed some xstrchr calls back to strchr when the arguments cannot
-         contain multibyte characters
-
-lib/sh/{xstrchr.c,Makefile.in},Makefile.in
-       - renamed xstrchr to mbschr; renamed file to mbschr.c
-
-aclocal.m4
-       - change BASH_CHECK_MULTIBYTE to use AC_REPLACE_FUNCS(mbschr)
-
-externs.h
-       - extern declarations for mbscmp and mbschr, conditional on the usual
-         HAVE_MBSCMP and HAVE_MBSCHR defines
-
-general.h,{alias,arrayfunc,bashline,general,execute_cmd,subst}.c
-       - changed calls to xstrchr to mbschr
-
-doc/bash.1
-       - use `pathname expansion' consistently, not `filename expansion' or
-         `filename generation'
-
-doc/bashref.texi
-       - use the phrase `filename expansion' consistently (since this is
-         what the Gnu people prefer) instead of `pathname expansion' or
-         `filename generation'
-
-aclocal.m4,config.h.in
-       - check for mbscasecmp in BASH_CHECK_MULTIBYTE, define HAVE_MBSCASECMP
-         if found
-
-lib/sh/{mbscasecmp.c,Makefile.in}
-       - new file, case-insensitive multibyte string comparison
-
-externs.h
-       - extern declaration for mbscasecmp
-
-                                  4/25
-                                  ----
-lib/readline/display.c
-       - in _rl_move_cursor_relative, don't adjust dpos by woff if it's
-         already less than woff (don't want it less than 0)
-       - in _rl_move_cursor_relative, short-circuit right away if the cursor
-         is at columns 0 and `new' is 0 (doesn't matter if it's a multibyte
-         locale or not, or whether there are invisible chars in the prompt)
-       - in _rl_move_cursor_relative, go ahead and adjust dpos if
-         prompt_physical_chars >= _rl_screenwidth (previous check was just > )
-         Fixes bug reported by Andreas Schwab <schwab@linux-m68k.org>
-
-                                  4/28
-                                  ----
-lib/glob/glob.c
-       - in glob_vector, don't add an empty pathname ("") if we're adding the
-         currect directory to the dirlist and GX_NULLDIR is set -- we can just
-         ignore it, since the passed directory name (".") was created by
-         the caller.  Fixes bug reported by Matt Zyzik <matt.zyzik@nyu.edu>
-
-                                   5/5
-                                   ---
-subst.c
-       - make expansion of $@ and $* when set -u is in effect and there are
-         no positional parameters be a non-fatal error.  This is the
-         consensus of the austin group, though it is not historical practice.
-         Message from Geoff Clare <20090505091501.GA10097@squonk.masqnet> of
-         5 May 2009 and http://austingroupbugs.net/view.php?id=155
-
-
-                                  5/20
-                                  ----
-lib/glob/glob.c
-       - tentative fix to glob_filename to compensate for glob_vector putting
-         null pathname at front of result vector when dflags&GX_NULLDIR.
-         Current fix manually removes empty string element from front of
-         result vector; a better fix would be to use a flag so glob_vector
-         doesn't add it at all.  Augments patch from 4/28, which appears to
-         have broken some things.  Fixes bug reported by Matt Zyzik
-         <matt.zyzik@nyu.edu>
-
-                                  5/22
-                                  ----
-
-lib/glob/glob.c
-       - better fix for glob_filename; supersedes patch of 5/20.  Now the
-         code does not set GX_ADDCURDIR if directory_len == 0 and the
-         function has not been called recursively ((flags & GX_ALLDIRS) == 0).
-         Better fix for bug reported by Matt Zyzik <matt.zyzik@nyu.edu>
-
-Makefile.in
-       - fix build race condition that occurs in some makes caused by
-         libreadline.a and libhistory.a containing some of the same files
-         (e.g., xmalloc.o) and conflicting when trying to build both at
-         the same time.  Reported by Mike Frysinger <vapier@gentoo.org>
-
-                                  5/25
-                                  ----
-lib/readline/vi_mode.c
-       - fix _rl_vi_initialize_line so that the loop counter is not
-         unsigned (it doesn't matter, but it eliminates a compiler warning).
-         Bug reported by Dave Caroline <dave.thearchivist@gmail.com>
-
-                                  5/26
-                                  ----
-doc/{bash.1,bashref.texi}
-       - add text to the description of array variables making it clear
-         that an array variable is not considered set until a subscript
-         has been assigned a value
-
-                                  5/29
-                                  ----
-lib/readline/text.c
-       - fix rl_change_case to handle case where mbrtowc doesn't find a
-         valid multibyte character
-
-lib/readline/vi_mode.c
-       - fix _rl_vi_change_mbchar_case to handle case where mbrtowc doesn't
-         find a valid multibyte character
-
-lib/sh/casemod.c
-       - fix sh_modcase to handle case where mbrtowc doesn't find a valid
-         multibyte character
-
-lib/readline/mbutil.c
-       - fix _rl_find_next_mbchar_internal to not call mbrtowc at the end of
-         the string, since implementations return different values -- just
-         break the loop immediately
-
-lib/readline/display.c
-       - fix rl_redisplay to make same sort of cursor position adjustments
-         based on multibyte locale and _rl_last_c_pos when performing
-         horizontal scrolling rather than line wrapping.  Probably still
-         more to do.  Fixes bug reported by jim@jim.sh
-
-                                   6/5
-                                   ---
-doc/{bash.1,bashref.texi}
-       - added some more explanation of the inheritance of the ERR trap at
-         the suggestion of Thomas Pospisek <tpo@sourcepole.ch>
-
-findcmd.c
-       - use eaccess(2) if available in file_status to take other file
-         access mechanisms such as ACLs into account.  Patch supplied
-         by werner@suse.de
-
-                                  6/12
-                                  ----
-xmalloc.c
-       - also calculate lowest brk() value the first time xmalloc/xrealloc
-         (and their sh_ counterparts) are called
-       - error messages consolidated into a single function (allocerr/
-         sh_allocerr) to avoid string duplication
-
-                                  6/16
-                                  ----
-variables.c
-       - changes to allow variables.c to be compiled if ALIAS is not defined.
-         Bug and fix from John Gatewood Ham <uraphalinuxserver@gmail.com>
-
-lib/sh/getcwd.c
-       - fix so systems defining BROKEN_DIRENT_D_INO have the necessary
-         defines.  Fix from Jay Krell <jay.krell@cornell.edu>
-
-configure.in
-       - add -D_ALL_SOURCE to interix CFLAGS for struct timezone definition.
-         Bug and fix from John Gatewood Ham <uraphalinuxserver@gmail.com>
-
-                                  6/29
-                                  ----
-variables.c
-       - change initialize_shell_variables to add environment variables with
-         invalid names to the variables hash table, but marking them as
-         invisible and imported
-       - new function, export_environment_candidate.  Used when creating the
-         export environment for commands to include variables with invalid
-         names inherited from the initial environment.  Apparently this
-         behavior is widespread
-       - change make_var_export_array to use export_environment_candidate
-         rather than visible_and_exported to test variables for inclusion
-         in the export environment
-
-                                   7/1
-                                   ---
-builtins/read.def
-       - fix a memory leak where the number of fields is not the same as
-         the number of variables passed to `read'.  Bug report from
-         werner@suse.de
-
-builtins/command.def
-       - move section of code that sets PATH from -p option before the
-         verbose-handling section, so command -v and command -V honor
-         the PATH set by command -p.  Bug report and fix from
-         ohki@gssm.otsuka.tsukuba.ac.jp
-
-                                   7/9
-                                   ---
-subst.c
-       - change brace_expand_word_list to defer brace expansion on compound
-         array assignments that are arguments to builtins like `declare',
-         deferring the expansion until the assignment statement is processed.
-         Fixes inconsistency reported by agriffis@n01se.net
-
-                                  7/16
-                                  ----
-bashline.c
-       - fix bash_execute_unix_command to set rl_point correctly based on
-         READLINE_POINT.  The old method of using save_point will not
-         work because maybe_make_readline_line will change rl_point.  Bug
-         reported by Henning Bekel <h.bekel@googlemail.com>
-
-trap.c
-       - fix _run_trap_internal and run_pending_traps to save and restore
-         value of subst_assign_varlist so the dispose_words on it doesn't
-         leave dangling pointers after the trap handler runs.  Fixes bug
-         reported by Marc Herbert <marc.herbert@gmail.com>
-
-                                  7/22
-                                  ----
-subst.c
-       - fix off-by-one error in pos_params when computing positional
-         parameters beginning with index 0.  Bug and fix from Isaac Good
-         <isaacgood@gmail.com>
-
-                                  7/24
-                                  ----
-lib/readline/display.c
-       - add code to _rl_move_cursor_relative and _rl_col_width to short-
-         circuit a few special cases: prompt string and prompt string plus
-         line contents, both starting from 0.  Saves a bunch of calls to
-         multibyte character functions using already-computed information.
-         As a side effect, fixes bug reported by Lasse Karkkainen
-         <tronic+8qug@trn.iki.fi>
-
-subst.c
-       - fixed a problem in split_at_delims that could leave *cwp set to -1
-         if the line ends in IFS whitespace and SENTINEL is one of those
-         whitespace characters.  Fixes problem with setting COMP_CWORD for
-         programmable completion reported by Ville Skytta <ville.skytta@iki.fi>
-
-bashline.c
-       - change bash_execute_unix_command to clear the current line (if the
-         terminal supplies the "ce" attribute) instead of moving to a new
-         line.  Inspired by report from Henning Bekel <h.bekel@googlemail.com>
-
-builtins/printf.def
-       - changes to allow printf -v var to assign to array indices, the way
-         the read builtin can.  Suggested by Christopher F. A. Johnson
-         <cfajohnson@gmail.com>
-
-lib/readline/complete.c
-       - fix rl_old_menu_complete and rl_menu_complete to appropriately set
-         and unset RL_STATE_COMPLETING while generating the list of matches.
-         Fixes debian bug #538013 reported by Jerome Reybert
-         <jreybert@gmail.com>
-
-                                  7/25
-                                  ----
-execute_cmd.c
-       - change execute_builtin to temporarily turn off and restore the ERR
-         trap for the eval/source/command builtins in the same way as we
-         temporarily disable and restore the setting of the -e option.
-         Fixes bug reported by Henning Garus <henning.garus@googlemail.com>
-
-                                  7/27
-                                  ----
-shell.c
-       - add fflush(stdout) and fflush(stderr) to exit_shell before closing
-         any file descriptors at exit time (e.g., coproc pipes)
-
-                                  7/30
-                                  ----
-lib/readline/complete.c
-       - new function rl_backward_menu_complete, just passes negative count
-         argument to rl_menu_complete
-       - change rl_menu_complete to act appropriately if rl_last_command is
-         rl_backward_menu_complete, so we can cycle forward and backward
-         through the list of completions
-
-lib/readline/doc/{readline.3,rluser.texi},doc/bash.1
-       - document new "menu-complete-backward" bindable readline function.
-         Suggested by Jason Spiro <jasonspiro04@gmail.com>
-
-lib/readline/vi_keymap.c
-       - add binding of C-n to menu-complete and C-p to menu-complete-backward
-         in vi-insert keymap, as suggested by Jason Spiro
-         <jasonspiro04@gmail.com>
-
-pcomplete.c
-       - fixed a bug in programmable_completions: the options it returned from
-         the compspec it found were set before generating the completions,
-         which meant that any changes made by "compopt" were overridden and
-         only in effect for the duration of the executing shell function
-         rather than the entire completion.  Fixes bug reported by Ville
-         Skytta <ville.skytta@iki.fi>
-
-                                  7/31
-                                  ----
-lib/readline/keymaps.c
-       - fixed memory leak in rl_discard_keymap by freeing storage associated
-         with hierarchical keymaps
-       - new convenience function, rl_free_keymap, that calls rl_discard_keymap
-         and frees the keymap passed as an argument
-
-lib/readline/util.c
-       - new bindable keymap function, _rl_null_function, to be used internally
-
-lib/readline/rlprivate.h
-       - extern declaration for _rl_null_function
-
-lib/readline/bind.c
-       - fix rl_generic_bind in the case where we are trying to override a
-         keymap with a null function (e.g., when trying to unbind it).  We
-         can't use a NULL function pointer in ANYOTHERKEY since that's
-         indistinguishable from the keymap not having been overridden at all.
-         We use  _rl_null_function instead, which simply does nothing.  We
-         could add an rl_ding to it later.  Fixes problem with hitting ESC
-         repeatedly while in vi command mode reported by James Rowell
-         <jrjimmy801-misc1@yahoo.com>
-
-builtins/bind.def
-       - call rl_bind_keyseq instead of rl_set_key for -r option
-
-lib/readline/readline.c
-       - Set vi_movement_keymap[ESC] to _rl_null_function after binding the
-         arrow keys in bind_arrow_keys() to allow vi-mode users to hit ESC
-         multiple times in vi command mode while still allowing the arrow
-         keys to work
-
-                                   8/2
-                                   ---
-bashline.c
-       - fix clear_hostname_list by setting hostname_list_initialized to 0
-         after freeing all list members.  Fixes bug reported by Freddy
-         Vulto <fvulto@gmail.com>
-
-lib/readline/display.c
-       - in update_line, if we copy data from one line to another because we
-         are wrapping a multibyte character from, say, the first line to the
-         second, we need to update OMAX and the line indices to account for
-         the moved data.  Bug report and fix from Martin Hamrle
-         <martin.hamrle@gmail.com>
-
-                                   8/3
-                                   ---
-pcomplete.h
-       - defines for EMPTYCMD ("_EmptycmD_") and DEFAULTCMD ("_DefaultCmD_")
-
-builtins/complete.def
-       - change compopt_builtin to make -E work on the "empty" command
-         completion
-       - fix print_compitem and print_compopts to replace EMPTYCMD with -E
-       - added -D (default) option to complete/compgen/compopt.  No supporting
-         code yet
-
-doc/bash.1,lib/readline/doc/rluser.texi
-       - document new -D, -E options to compopt
-       - document new -D option to complete/compgen
-
-shell.h
-       - new define, EX_WEXPCOMSUB, value of 125
-       - new define, EX_RETRYFAIL, value of 124 (for programmable completion)
-
-subst.c
-       - use EX_WEXPCOMSUB instead of literal 125 as exit status when a shell
-         invoked to run wordexp(3) with the -n option supplied attempts a
-         command substitution
-
-pcomplete.c
-       - new define, PCOMP_RETRYFAIL, used to indicate a "failure, retry with
-         next completion" status to the programmable completion code
-
-                                   8/4
-                                   ---
-pcomplete.c
-       - changed gen_shell_function_matches to take an extra parameter
-         indicating whether the specified shell function was not found or
-         returned the special "fail/retry" status, and, if it was either,
-         to not bother returning any matches list
-       - changed gen_compspec_completions to take an extra parameter to pass
-         through the "found" status from gen_shell_function_completions
-       - new function gen_progcomp_completions to take care of searching for
-         and evaluating a compspec for a particular word, saving its status,
-         and returning to its caller (programmable_completions) whether or
-         not to retry completion.  This function also checks whether a
-         retry changed the compspec associated with a command and short-
-         circuits the retry if it has not
-       - changed programmable_completions to try default completion (if set)
-         if a specific completion was not found for a command
-       - changed programmable_completions to implement "fail/retry" semantics
-         for a shell function that returns 124 and changes the compspec
-         associated with the command.  All based on proposal and changes from
-         Behdad Esfahbod (Red Hat bugzilla 475229)
-
-doc/bash.1,lib/readline/doc/rluser.texi
-       - documented new dynamic programmable completion functionality
-
-                                   8/5
-                                   ---
-stringlib.c
-       - first argument to substring() is now `const char *'
-
-externs.h
-       - changed extern declaration for substring()
-
-subst.c
-       - skipsubscript now takes a third FLAGS argument, passes to
-         skip_matched_pair
-       - skip_matched_pair now interprets flags&1 to mean not to parse
-         matched pairs of quotes, backquotes, or shell word expansion
-         constructs
-
-{subst,general,expr}.c
-       - changed skipsubscript() callers
-
-assoc.c
-       - changed assoc_to_assign to double-quote the key if it contains any
-         shell metacharacters
-
-arrayfunc.c
-       - use skipsubscript in quote_assign rather than quote any glob
-         characters in the subscript of an array assignment
-       - in assign_compound_array_list, call skipsubscript with a flags
-         argument of 1 if assigning an associative array to avoid trying
-         to re-parse quoted strings
-
-redir.c
-       - set expanding_redir before expanding body of here documents and
-         here strings to avoid looking for variables in temporary env
-
-                                   8/7
-                                   ---
-lib/readline/readline.c
-       - in _rl_dispatch_callback, return value of -3 means that we have
-         added to a key sequence, but there are previous matches in the
-         sequence.  Don't call _rl_subseq_result if we get a -3 from a
-         previous context in the chain; just go back up the chain.  Report
-         and fix from <freehaha@gmail.com>
-
-bashline.c
-       - fixes to history_completion_generator and bash_dabbrev_expand to
-         make dabbrev-expand inhibit suppressing of appending space char
-         to matches.  Have to do it with the generator too because
-         rl_menu_complete turns off suppressing the appended space in
-         set_completion_defaults().  Suggestion from Dan Nicolaescu
-         <dann@ics.uci.edu>
-       - suppress completion match sorting in bash_dabbrev_expand by
-         setting rl_sort_completion_matches = 0.  Suggestion from Dan
-         Nicolaescu <dann@ics.uci.edu>
-       - don't qsort history match list in build_history_completion_array
-         if dabbrev_expand_active == 1
-       - start the loop in build_history_completion_array that gathers words
-         from history for possible completions from the end of the list
-         rather than the beginning.  It doesn't matter where you start if
-         the results are sorted, and dabbrev-expand is supposed to offer
-         the most recent completions first
-
-                                  8/12
-                                  ----
-execute_cmd.c
-       - change to execute_command_internal to make [[ ... ]] conditional
-         command subject to settings of `set -e' and the ERR trap
-
-                                  8/14
-                                  ----
-execute_cmd.c
-       - change to execute_command_internal to make (( ... )) arithmetic
-         command subject to settings of `set -e' and the ERR trap
-
-lib/readline/text.c
-       - new bindable function, rl_skip_csi_sequence, reads the characters
-         that make up a control sequence as defined by ECMA-48.  Sequences
-         are introduced by the Control Sequence Indicator (CSI) and
-         contain a defined set of characters.  Insert, End, Page Up and so
-         on are CSI sequences.  Report and code from Andy Koppe
-         <andy.koppe@gmail.com>
-
-lib/readline/readline.h
-       - extern declaration for rl_skip_csi_sequence
-
-lib/readline/funmap.c
-       - new bindable command "skip-csi-sequence", runs rl_skip_csi_sequence
-
-doc/bash.1,lib/readline/doc/{readline.3,rluser.texi}
-       - documented new bindable command "skip-csi-sequence", unbound by
-         default
-
-builtins/evalfile.c
-       - fix _evalfile to remove embedded null bytes from the file read
-         into the string.  Report and proposed fix from Roman Rakus
-         <rrakus@redhat.com>
-
-{configure,config.h}.in
-       - check for syslog(3), define HAVE_SYSLOG
-       - check for syslog.h, define HAVE_SYSLOG_H
-
-config-top.h
-       - new define SYSLOG_HISTORY, disabled by default
-
-config-bot.h
-       - if HAVE_SYSLOG or HAVE_SYSLOG_H are not defined, undef SYSLOG_HISTORY
-
-bashhist.c
-       - if SYSLOG_HISTORY is defined, call bash_syslog_history with the
-         line added to the history in bash_add_history.
-       - new function, bash_syslog_history(line), sends line to syslog at
-         user.info.  The line is truncated to send no more than 600
-         (SYSLOG_MAXLEN) bytes to syslog. Feature requested by many, and
-         required by some national laws
-
-sig.c
-       - in termsig_handler, resend SIGHUP to children if subshell_environment
-         indicates we're a shell performing command or process substitution
-
-jobs.c
-       - add CHECK_TERMSIG calls to wait_for in addition to the ones in
-         waitchld()
-
-builtins/shopt.def
-       - new functions set_bashopts, parse_bashopts, and initialize_bashopts
-         to manage new environment variable $BASHOPTS, like $SHELLOPTS but
-         for shopt options
-       - change toggle_shopts to call set_bashopts after setting options, so
-         $BASHOPTS reflects new values
-
-shell.c
-       - call initialize_bashopts after calling initialize_shell_options at
-         shell startup
-
-configure.in
-       - new configure `enable' option --enable-exended-glob-default, to
-         set the initial default value of the `extglob' shell option
-
-config.h
-       - new define, EXTGLOB_DEFAULT, controlled by the `extended-glob-default'
-         configure option
-
-pathexp.c
-        - initialize extended_glob variable to EXTGLOB_DEFAULT
-
-doc/{bash.1,bashref.texi}
-       - document new $BASHOPTS variable and its behavior
-
-doc/bashref.texi
-       - document new --enable-extended-glob-default configure option
-
-                                  8/16
-                                  ----
-print_cmd.c
-       - new variables: xtrace_fd and xtrace_fp, the file descriptor and
-         FILE * to which we send `set -x' tracing output.  If fd == -1
-         then fp == STDERR, the default mode
-       - new function xtrace_init, sets xtrace_fd == -1 and xtrace_fp = stderr
-       - new function xtrace_set (fd, fp), sets xtrace_fd and xtrace_fp
-         to the arguments
-       - new function xtrace_reset, handles closing old xtrace fd/fp and
-         moving them back to -1/stderr
-       - new function xtrace_fdchck, calls xtrace_reset if the fd passed as
-         an argument is xtrace_fd
-       - change xtrace functions to fprintf to xtrace_fp instead of stderr
-
-shell.c
-       - call xtrace_init() very early in main()
-
-variables.c
-       - new special variable, BASH_XTRACEFD, holds file descriptor used for
-         set -x trace output.  Inspired by suggestion from Bruce Korb
-         <bruce.korb@gmail.com>
-
-doc/{bash.1,bashref.texi}
-       - added description of new BASH_XTRACEFD variable
-
-redir.c
-       - add calls to xtrace_fdchk to the redirections that close file
-         descriptors, so we notice if we close BASH_XTRACEFD and compensate
-         accordingly (same places that call coproc_fdchk())
-
-                                  8/18
-                                  ----
-lib/readline/text.c
-       - change to _rl_replace_text to add error checks: start must be <=
-         end, and we don't call rl_insert_text if passed the empty string
-
-config.h.in
-       - add define for HAVE_ICONV, already found by intl autoconf macros
-       - add define for HAVE_LOCALE_CHARSET
-
-aclocal.m4
-       - add check for locale_charset() to BASH_CHECK_MULTIBYTE
-
-lib/sh/fnxform.c
-       - new file with two public function: fnx_tofs and fnx_fromfs.
-         Primarily intended for use on MacOS X, they use iconv to convert
-         between whatever the current locale encoding is and "UTF-8-MAC",
-         a special encoding on OS X in which all characters are
-         decomposed unicode, as the HFS+ filesystem stores them.  These
-         functions return a pointer to a local buffer, allocated once and
-         resized as necessary, to avoid too many allocations; callers
-         should not free the return value, since it may be the string
-         passed
-
-Makefile.in
-       - make sure LIBICONV is set by autoconf (@LIBICONV@) and added to
-         list of link libraries
-
-externs.h
-       - new extern declarations for fnx_fromfs and fnx_tofs
-
-lib/glob/glob.c
-       - convert the filename read using readdir() in glob_vector() using
-         fnx_fromfs and use that value in the call to strmatch.  This
-         ensures that we're using the precomposed Unicode value of the
-         filename rather than the native decomposed form.  Original bug
-         report from Len Lattanzi <llatanzi@apple.com>; fix inspired by
-         Guillaume Outters <guillaume.outters@free.fr>
-
-                                  8/19
-                                  ----
-lib/readline/complete.c
-       - new completion hook: rl_filename_rewrite_hook, can rewrite or modify
-         filenames read from the filesystem before they are compared to the
-         word to be completed
-
-lib/readline/readline.h
-       - extern declaration for rl_filename_rewrite_hook
-
-lib/readline/doc/rltech.texi
-       - document rl_filename_rewrite_hook
-
-bashline.c
-       - new function, bash_filename_rewrite_hook, assigned to
-         rl_filename_rewrite_hook.  Calls fnx_fromfs to convert from
-         filesystem format to "input" format.  This makes completing
-         filenames with accented characters work on Mac OS X
-
-                                  8/20
-                                  ----
-lib/readline/bind.c
-       - new bindable variable "skip-completed-text", bound to
-         _rl_skip_completed_text.  If enabled, it means to note when
-         completing before the end of a word and skipping over characters
-         after rl_point that match in both the completion to be inserted
-         and the word being completed.  It means that completing
-         `Makefile' with the cursor after the `e' results in `Makefile'
-         instead of `Makefilefile'.  Inspired by an idea from Jared
-         Yanovich <phierunner@comcast.net> from back in 2004
-
-lib/readline/rlprivate.h
-       - extern declaration for _rl_skip_completed_text
-
-lib/readline/complete.c
-       - implement semantics of _rl_skip_completed_text in insert_match:
-         skip characters in `replacement' that match chars in rl_line_buffer
-         from the start of the word to be completed
-
-                                  8/21
-                                  ----
-error.c
-       - change parser_error to set last_command_exit_value to 2 before
-         calling exit_shell (if set -e is enabled), so any exit or ERR
-         trap gets the right value of $?.  Suggestion from Stefano
-         Lattarini <stefano.lattarini@gmail.com>
-
-braces.c
-       - fix expand_seqterm so that a non-zero-prefixed term that's longer
-         than a zero-prefixed term determines the length of each term
-         in the brace-expanded sequence.  This means that things like
-         {01..100} will have three digits in all the elements of the
-         expanded list.  Fixes bug reported by Jeff Haemer
-         <jeffrey.haemer@gmail.com>
-
-                                  8/24
-                                  ----
-{arrayfunc,variables}.c
-       - when inserting a value into an associative array using syntax like
-         T=v where T is an already-declared associative array using key "0",
-         make sure the key is in newly-allocated memory so it can be freed
-         when the variable is unset.  Fixes bug reported as redhat 518644
-         by Jon Fairbairn
-
-                                  8/26
-                                  ----
-lib/readline/funmap.c
-       - add "old-menu-complete" binding for rl_old_menu_complete
-
-lib/readline/readline.h
-       - add extern declaration for rl_old_menu_complete
-
-subst.c
-       - fix memory leak when processing ${!prefix@}.  Need to dispose all
-         words in the word list created from all matching variable.  Fixes
-         bug reported by muszi@muszi.kite.hu.
-
-                                  8/29
-                                  ----
-execute_cmd.c
-       - add fflush(stdout) and fflush(stderr) to child coproc code before
-         calling exit after execute_in_subshell
-
-                                  8/31
-                                  ----
-lib/readline/{{bind,readline}.c,rlprivate.h}
-       - new bindable variable, "echo-control-characters", enabled by default.
-         This controls whether or not readline honors the tty ECHOCTL bit
-         and displays characters corresponding to keyboard-generated signals.
-         Controlled by _rl_echo_control_chars variable, declared in readline.c
-
-lib/readline/signals.c
-       - if _rl_echo_control_chars == 0, don't go through _rl_echo_signal_char
-
-
-lib/readline/doc/{readline.3,rluser.texi}
-       - document "echo-control-characters" bindable variable
-
-                                   9/1
-                                   ---
-lib/readline/histexpand.c
-       - hist_string_extract_single_quoted now takes an additional argument:
-         a flags word.  The only defined value (flags & 1) allows backslash
-         to quote the single quote.  This is to inhibit history expansion
-         inside $'...' containing an escaped single quote.
-       - change history_expand to call hist_string_extract_single_quoted
-         with flags == 1 if it sees $'.  Fixes bug reported by Sean
-         Donner <sean.donner@gmail.com>
-
-                                   9/2
-                                   ---
-builtins/printf.def
-       - add a call to sh_wrerror if ferror() succeeds in the PRETURN macro,
-         to print an error message in the case that the final fflush fails
-         (for instance, because it attempts to write data that didn't have a
-         trailing newline).  Fixes bug reported by Stefano Lattarini
-         <stefano.lattarini@gmail.com>
-
-                                   9/7
-                                   ---
-arrayfunc.c
-       - some fixes to assign_compound_array_list to avoid null pointer
-         dereferences pointed out by clang/scan-build
-
-lib/glob/glob.c
-       - fixes to udequote_pathname and wdequote_pathname to avoid possible
-         null pointer dereferences pointed out by clang/scan-build
-
-lib/readline/undo.c
-       - fix to _rl_copy_undo_list (function unused) to avoid deref of
-         uninitialized pointer pointed out by clang/scan-build
-
-general.c
-       - fix string_to_rlimtype so it works if passed a null pointer (though
-         it never is)
-
-builtins/mapfile.def
-       - fix to mapfile() to avoid possible null pointer dereference pointed   
-         out by clang/scan-build
-
-variables.c
-       - fix to valid_exportstr to avoid possible null pointer dereferences
-         pointed out by clang/scan-build
-
-bashline.c
-       - fix to bash_execute_unix_command to avoid possible null pointer
-         dereference if READLINE_LINE or READLINE_POINT is not bound
-
-                                  9/11
-                                  ----
-[Prayers for the victimes of 9/11/2001]
-
-command.h
-       - add `rflags' member to struct redirect to hold private flags and
-         state information
-       - change redirector to a REDIRECTEE instead of int to prepare for
-         possible future changes
-
-{copy_cmd,dispose_cmd,make_cmd,print_cmd,redir}.c
-       - changes resulting from type change of `redirector' member of struct
-         redirect: change x->redirector to x->redirector.dest and add code
-         where appropriate to deal with x->redirector.filename
-
-make_cmd.h
-       - change extern declaration for make_redirection
-
-make_cmd.c
-       - first argument of make_redirection is now a `REDIRECTEE' to prepare
-         for possible future changes.  First arg is now assigned directly to
-         redirector member instead of assigning int to redirector.dest
-
-{make_cmd,redir}.c,parse.y
-       - changes resulting from type change of first argument to
-         make_redirection from int to REDIRECTEE.  In general, changes are
-         using REDIRECTEE sd and assigning old argument to sd.dest, then
-         passing sd to make_redirection
-
-make_cmd.[ch],parse.y
-       - add fourth argument to make_redirection: flags.  Sets initial value
-         of `rflags' member of struct redirect
-       - changed all callers of make_redirection to add fourth argument of 0
-
-                                  9/15
-                                  ----
-parse.y
-       - change read_token_word to return REDIR_WORD for tokens of the form
-         {var} where `var' is a valid shell identifier and the character
-         following the } is a `<' or `>'
-       - add REDIR_WORD versions of all input and output file redirections
-         and here documents
-
-print_cmd.c
-       - change input and output file redirection direction and here
-         document cases of print_redirection to print a varname
-         specification of the form {var} when appropriate.  Still need
-         to fix rest of cases
-
-redir.c
-       - implement REDIR_VARASSIGN semantics for file input and output
-         redirections and here documents
-
-                                  9/16
-                                  ----
-parse.y
-       - added REDIR_WORD versions of remaining redirection constructs except
-         for err_and_out ones
-
-redir.c
-       - handle REDIR_VARASSIGN semantics for rest of redirection constructs 
-       - accommodate REDIR_VARASSIGN when translating redirections
-       - new function, redir_varvalue, does variable lookup for {v} when
-         redirection needs the value (e.g., r_close_this)
-
-print_cmd.c
-       - fix rest of cases to print {varname} when REDIR_VARASSIGN is set in
-         redirect->rflags
-
-doc/{bash.1,bashref.texi}
-       - document new {varname} REDIR_VARASSIGN form of redirections
-
-tests/vredir.{right,tests},vredir[1-5].sub
-       - tests for new {varname} REDIR_VARASSIGN form of redirections
-
-                                  9/18
-                                  ----
-subst.c
-       - new flags argument to split_at_delims: these flags are ORd with
-         SD_NOJMP and passed to skip_to_delim
-       - change skip_to_delim to honor new SD_NOQUOTEDELIM flag by not
-         checking whether or not single and double quotes are delimiters
-         if it's set in passed flags until after skipping quoted strings.
-
-subst.h
-       - change extern declaration for split_at_delims
-       - new define for SD_NOQUOTEDELIM flag
-
-pcomplete.c
-       - pass SD_NOQUOTEDELIM in flags argument to split_at_delims so single
-         and double quotes, even though they're in
-         rl_completer_word_break_characters, don't act as word delimiters
-         for programmable completion.  Fixes bug reported by Freddy
-         Vulto <fvulto@gmail.com>
-
-lib/glob/glob.c
-       - in glob_filename, after recursively scanning a directory specified
-         with `**', turn off GX_ALLDIRS|GX_ADDCURDIR before calling
-         glob_vector on the rest of the pathname, since it may not apply to
-         the rest of the pattern.  Turned back on if the filename makes it
-         appropriate.  Fixes bug reported by Anders Kaseorg <andersk@mit.edu>
-
-redir.c
-       - change execute_null_command to fork a child to execute if any of
-         the commands redirections have the REDIR_VARASSIGN flag set, since
-         those commands are not supposed to have side effects
-
-test.c
-       - < and > binary operators will obey the locale by using strcoll if
-         the TEST_LOCALE flag is passed to binary_test
-
-test.h
-       - new define for TEST_LOCALE
-
-execute_cmd.c
-       - execute_cond_node sets TEST_LOCALE so [[ str1 < str2 ]] (and >)
-         obey the locale.  Fixes bug/incompatibility reported by Greg
-         Wooledge <wooledg@eeg.ccf.org>
-
-doc/{bash.1,bashref.texi}
-       - documented [[ command new locale-sensitive treatment of < and >
-
-                                  9/24
-                                  ----
-configure.in
-       - add "darwin10" cases like darwin8 and darwin9 to handle linking with
-         included readline and history libraries
-
-                                  9/26
-                                  ----
-lib/readline/display.c
-       - modify change of 7/24 to use prompt_physical_chars instead of
-         prompt_visible_length to account for visible multibyte characters in
-         the line (usually in the prompt).  Fixes debian bug #547264
-         reported by Pietro Battiston <toobaz@email.it>
-       - add flags argument to _rl_col_width; changed callers.  flags > 0
-         means that it's ok to use the already-computed prompt information;
-         flags == 0 means that we're expanding the prompt and we should not
-         short-circuit
-
-parse.y
-       - in decode_prompt_string, when expanding \w and \W on Mac OS X,
-         use fnx_fromfs to convert from "filesystem" form to "input" form.
-         This makes $PWD with multibyte characters work in the prompt
-         string on Mac OS X
-
-lib/sh/fnxform.c
-       - in fnx_fromfs and fnx_tofs, use templen instead of outlen as last
-         argument in calls to iconv, since outlen is used to keep track of
-         the size of the buffer, and iconv potentially modifies its
-         `outbytesleft' argument
-
-                                  9/29
-                                  ----
-subst.c
-       - make skip_to_delim understand how to skip over process substitution
-         constructs the way it skips $(...) command substitution
-
-                                  9/30
-                                  ----
-lib/readline/terminal.c
-       - don't set the `terminal has meta key' flag if the `MT' capability is
-         available; that means something completely different
-
-                                  10/1
-                                  ----
-builtins/help.def
-       - make sure width is at least 7, since we pass `width/2 - 3' to strncpy
-         as the length argument.  Terminal widths <= 6 are converted to 80.
-         Fixes bug reported by Chris Hall <c@pobox.co.uk>
-
-configure.in
-       - changed version to 4.1-alpha
-
-subst.h
-       - new flag for skip_to_delim: SD_NOSKIPCMD, which means to not skip
-         over embedded command and process substitutions, but rather to look
-         for delimiters within them
-
-subst.c
-       - implement semantics of SD_NOSKIPCMD in skip_to_delim
-
-bashline.c
-       - call skip_to_delim with SD_NOSKIPCMD from find_cmd_start, so
-         programmable completion can use the completion defined for `b' for
-         command lines like "a $(b c".  Fixes inconsistency/bug reported by
-         Freddy Vulto <fvulto@gmail.com>
-
-parser.h
-       - replace unused PST_CMDTOKEN parser state value with PST_EXTPAT,
-         means currently parsing an extended glob pattern (extglob)
-
-parse.y
-       - fix cond_node() so that extended_glob is set before parsing the
-         rhs of the `==' or `!=' operators.  For ksh93 compatibility.
-       - reset extended_glob to global value (saved in parse_cond_command())
-         in reset_parser()
-
-                                  10/5
-                                  ----
-jobs.c
-       - change waitchld() to only interrupt the wait builtin when the shell
-         receives SIGCHLD in Posix mode.  It's a posix requirement, but
-         makes easy things hard to do, like run a SIGCHLD trap for every
-         exiting child.  Change prompted by question from Alex Efros
-         <powerman@powerman.name>
-
-doc/bashref.texi
-       - document new posix mode behavior about SIGCHLD arriving while the
-         wait builtin is executing when a trap on SIGCHLD has been set
-
-                                  10/6
-                                  ----
-lib/readline/histexpand.c
-       - fix hist_expand to keep from stopping history expansion after the
-         first multibyte character (a `break' instead of a `continue').
-         Fixes debian bug (#549933) reported by Nikolaus Schulz
-         <microschulz@web.de>
-
-                                  10/8
-                                  ----
-builtins/read.def
-       - implement new `-N nchars' option: read exactly NCHARS characters,
-         ignoring any delimiter, and don't split the result on $IFS.
-         Feature requested by Richard Stallman <rms@gnu.org>
-
-doc/{bash.1,bashref.texi}
-       - document new `read -N' option
-
-                                  10/9
-                                  ----
-lib/readline/bind.c
-       - new bindable variable, "enable-meta-key", controls whether or not
-         readline enables any meta modifier key the terminal claims to
-         support.  Suggested by Werner Fink <werner@suse.de>
-
-lib/readline/doc/{readline.3,rluser.texi},doc/bash.1
-       - document new readline "enable-meta-key" bindable variable
-
-                                  10/10
-                                  -----
-trap.c
-       - new function, free_trap_string(), does what it says and turns off
-         SIG_TRAPPED flag without changing signal disposition
-
-[bash-4.1-alpha frozen]
-
-                                  10/16
-                                  -----
-builtins/mapfile.def
-       - return an error if the variable passed is not an indexed array.
-         Fixes bug reported by Nick Hobson <nick.hobson@yahoo.com>
-       - change help text to make it clear that an indexed array is required
-
-doc/{bash.1,bashref.texi}
-       - changed description of mapfile to note that the array variable
-         argument must be an indexed array, and mapfile will return an
-         error if it is not
-
-subst.c
-       - change expand_string_unsplit and expand_string_leave_quoted to
-         add the (previously unused) W_NOSPLIT2 flag to the created word
-       - change expand_word_internal to understand W_NOSPLIT2 to mean that
-         we're not going to split on $IFS, so we should not quote any
-         characters in IFS that we add to the result string.  Fixes bug
-         reported by Enrique Perez-Terron <enrio@online.no>
-       - change cond_expand_word similarly.  Fixes rest of bug reported by
-         Enrique Perez-Terron <enrio@online.no>
-
-parse.y
-       - save and restore value of last_command_subst_pid around call to
-         expand_prompt_string in decode_prompt_string.  Fixes bug that causes
-         $? to be set wrong when using a construct like false || A=3 when
-         set -x is enabled and $PS4 contains a command substitution.  Reported
-         by Jeff Haemer <jeffrey.haemer@gmail.com>
-
-                                  10/17
-                                  -----
-execute_cmd.c
-       - in execute_in_subshell, make sure we set setjmp(return_catch) before
-         running the command, in case the command or its word expansion
-         calls jump_to_top_level.  Fixes bug reported by Nils Bernhard
-         <nils.bernhard@yahoo.de>
-
-subst.c
-       - new PF_NOSPLIT2 flag for param_expand
-       - parameter_brace_expand takes a new `pflags' argument, before the
-         `output' parameters; passes to param_expand as necessary
-       - change parameter_brace_expand to call parameter_brace_expand_word
-         with the PF_NOSPLIT2 flag if the pflags argument to
-         parameter_brace_expand has it set
-
-parse.y
-       - change report_syntax_error to set last_command_exit_value to
-         EX_BADSYNTAX if parse_and_execute_level is > 0, indicating a
-         syntax error while we're executing a dot script, eval string,
-         trap command, etc.
-
-builtins/evalstring.c
-       - in parse_and_execute, if parse_command() returns non-zero,
-         indicating a parse error, print a warning message if the conditions
-         would require  a posix-mode shell to abort (parse error in a `.'
-         script or eval string)
-
-                                  10/19
-                                  -----
-builtins/evalfile.c
-       - even if the `check binary' flag is not passed to _evalfile, return an
-         error after reading 128 null characters if called by `source', on
-         the assumption that it's probably a binary file.  [This will be in
-         bash-4.1-beta]
-
-                                  10/24
-                                  -----
-[bash-4.1-alpha released]
-
-bashline.c
-       - don't call command_substitution_completion_function if we're
-         completing a substring delimited by a single quote.  Fixes bug
-         reported by bash-bugs@atu.cjb.net
-
-lib/readline/complete.c
-       - make sure _rl_skip_completed_text defaults to 0, as the
-         documentation states (incorrect in bash-4.1-alpha)
-       - in insert_match, skip over a close quote in the replacement text if
-         the character at point when completion is invoked is a single
-         quote.  Fixes complaint from bash-bugs@atu.cjb.net
-
-                                  10/26
-                                  -----
-shell.c
-       - in main, make sure "$EMACS" is non-null before calling strstr on its
-         value.  Fixes Red Hat bug 530911 submitted by Mitchell Berger
-
-builtins/mapfile.def
-       - don't save callback commands in shell history.  Suggested by
-         Jan Schampera <jan.schampera@web.de>
-
-mailcheck.c
-       - in file_mod_date_changed, make sure the modification time is later
-         than the saved modification date, not just that it's not equal.
-         Fix from Evgeniy Dushistov <dushistov@mail.ru>
-       - in file_access_date_changed, make sure the access time is later
-         than the saved access time, not just that it's not equal
-
-                                  10/27
-                                  -----
-builtins/shopt.def
-       - added new `compat40' compatibility variable, with associated changes
-         to shell_compatibility_level(), since the default compatibility level
-         is now 41
-
-test.c
-       - make the < and > operators to [[ use strcoll() only if the shell
-         compatibility level is greater than 40 (it is 41 by default in
-         bash-4.1)
-
-                                  10/28
-                                  -----
-support/shobj-conf
-       - decrease the default version of FreeBSD that creates shared libraries
-         to 4.x.  Advice from Peter Jeremy <peterjeremy@acm.org>
-
-                                  11/2
-                                  ----
-parse.y
-       - change parse_comsub to free `heredelim' and set it to 0 whenever the
-         comsub scanner finds the end of a here document.  Really need to
-         implement a stack of here doc delimiters like in the parser (can we
-         use redir_stack here, too?)
-       - fix parse_comsub to not attempt to read another here doc delimiter
-         after seeing a shell break character (that is not newline) if we
-         already have one.  Fixes Debian bash bug #553485, submitted by
-         Samuel Hym <samuel.hym@gmail.com>
-
-                                  11/3
-                                  ----
-variables.c
-       - fix bind_variable_internal to call a variable's dynamic 'set function'
-         with the right arguments depending on whether it's an associative
-         array, an indexed array, or a scalar.  Fixes Ubuntu bug #471504
-         https://bugs.launchpad.net/ubuntu/+source/bash/+bug/471504 reported
-         by AJ Slater <aj.slater@gmail.com>
-
-[bash-4.1-beta frozen]
-
-                                  11/11
-                                  -----
-builtins/printf.def
-       - in getintmax(), in the case of a conversion error, return the partial
-         value accumulated so far, which is suppose to be what
-         strtoimax/strtoll/strtol returns
-
-                                  11/17
-                                  -----
-[bash-4.1-beta released]
-
-                                  11/18
-                                  -----
-builtins/{common.h,shopt.def},shell.c
-       - changed shopt variable "set functions" to take the option name as
-         the first argument; changed function prototypes and callers
-
-builtins/shopt.def
-       - change set_compatibility_level() to turn off other compatNN options
-         when one is set -- enforce mutual exclusivity.  Fixes problem noted
-         by Jan Schampera <jan.schampera@web.de>
-
-                                  11/19
-                                  -----
-lib/readline/rltty.c
-       - make sure prepare_terminal_settings() tests for the presence of
-         ECHOCTL before using it.  Fixes bug reported by Joachim Schmitz
-         <schmitz@hp.com>
-
-config-top.h
-       - new WORDEXP_OPTION define (off by default)
-
-shell.c
-       - don't include the --wordexp option or the supporting function
-         (run_wordexp) if WORDEXP_OPTION is not defined.  Suggested by
-         Aharon Robbins <arnold@skeeve.com>
-
-execute_cmd.c
-       - in execute_cond_node, turn on comsub_ignore_return if the flags
-         indicate we're ignoring the return value before calling
-         cond_expand_word.  Fixes bug reported by Anirban Sinha
-         <asinha@zeugmasystems.com>
-
-                                  11/20
-                                  -----
-lib/sh/snprintf.c,builtins/printf.def
-       - change check for HAVE_ASPRINTF and HAVE_SNPRINTF to check if value
-         is 1 or 0 rather than whether they are defined or not.  This allows
-         a value of 0 to enable function replacement
-
-configure.in,aclocal.m4
-       - new autoconf macro, BASH_FUNC_SNPRINTF, checks for snprintf present
-         and working as C99 specifies with a zero length argument.  Idea
-         from Greg Wooledge <wooledg@eeg.ccf.org>
-       - new macro BASH_FUNC_VSNPRINTF, does same thing for vsnprintf
-
-                                  11/25
-                                  -----
-subst.c
-       - in command_substitute, only tell parse_and_execute to reset the line
-         number in an interactive shell if sourcelevel == 0 -- we'll use the
-         line numbers from the sourced file
-
-execute_cmd.c
-       - in execute_simple_command, only subtract function_line_number from
-         line_number if sourcelevel == 0.  If sourcing, we'll use the line
-         numbers from the sourced file.  Fixes bug reported by Hugo
-         Mildenberger <Hugo.Mildenberger@namir.de>
-
-builtins/declare.def
-       - in declare_internal, call bind_assoc_variable instead of
-         bind_array_variable in the case of declare -A foo=bar.  Fixes bug
-         reported by Bernd Eggink <monoped@sudrala.de>.
-
-                                  11/27
-                                  -----
-lib/readline/util.c
-       - change declaration for _rl_walphabetic to use prototype, assuming
-         that any system with multibyte characters has a compiler that can
-         handle prototypes.  Fix for AIX compilation problem reported by
-         Nick Hillman <nick_hillman@neverbox.com>
-
-                                  11/28
-                                  -----
-execute_cmd.c
-       - make funcnest file-scope static and unwind-protect its value in
-         execute_function, so it can be used as a real measure of function
-         call nesting
-
-general.c
-       - fix off-by-one error in trim_pathname that caused it to short-circuit 
-         when PROMPT_DIRTRIM == number of directories - 1.  Fixes bug
-         reported by Dennis Williamson <dennistwilliamson@gmail.com>
-
-                                  11/29
-                                  -----
-jobs.c
-       - when fork() returns -1/EAGAIN, call waitchld(-1, 0) so the shell can
-         reap any dead jobs before trying fork again.  Currently disabled
-         until bash-4.2 development starts
-
-lib/readline/complete.c
-       - when incrementing _rl_interrupt_immediately, make sure it's greater
-         than 0 before decrementing it.  In practice, not a problem, but
-         the right way to do it.  Suggested by Jan Kratochvil
-         <jan.kratochvil@redhat.com>
-
-lib/readline/signals.c
-       - make sure rl_signal_handler doesn't set rl_caught_signal if
-         _rl_interrupt_immediately is set, so RL_CHECK_SIGNALS doesn't
-         cause it to be processed twice.  Suggested by Jan Kratochvil
-         <jan.kratochvil@redhat.com>
-       - if the callback interface is being used, use the code path that
-         immediately handles signals.  This restores the readline-5.2
-         behavior.  Fixes GDB readline bug reported by Jan Kratochvil
-         <jan.kratochvil@redhat.com>
-
-                                  12/18
-                                  -----
-[bash-4.1-rc1 released]
-
-                                  12/22
-                                  -----
-config-top.h
-       - don't have SYSLOG_HISTORY enabled by default
-
-lib/sh/Makefile.in
-       - add explicit dependency on pathnames.h for parallel make support
-
-externs.h
-       - add extern declaration for xtrace_fdchk
-
-lib/sh/snprintf.c
-       - add local prototype declarations for isinf, isnan if we are providing
-         local definitions
-
-lib/sh/fnxform.c
-       - add extern declaration for get_locale_var if HAVE_LOCALE_CHARSET not
-         defined
-
-execute_cmd.c
-       - define NEED_FPURGE_DECL so we pick up any extern declaration for
-         fpurge (e.g., if the system doesn't provide it)
-
-builtins/shopt.def
-       - correct prototype and declaration for set_shellopts_after_change so
-         it's the correct type for shopt_set_func_t
-       - add new function shopt_enable_hostname_completion that is the correct
-         type for shopt_set_func_t; just calls enable_hostname_completion and
-         returns its result
-
-                                  12/26
-                                  -----
-doc/{bash.1,bashref.texi}
-       - add \E and \" escape sequences to ANSI-C quoting description.
-         Suggested by Aharon Robbins <arnold@skeeve.com>
-
-                                  12/29
-                                  -----
-doc/bash.1
-       - make sure shell and environment variable names are always in
-         `small caps' bold.  Suggested by Aharon Robbins <arnold@skeeve.com>
-
-                                  12/30
-                                  -----
-{execute_cmd.c,parse.y,Makefile}
-       - changes for building minimal configuration from Matthias Klose
-         <doko@debian.org>
-
-[bash-4.1 frozen]
-
-                                  12/31
-                                  -----
-[bash-4.1 released]
-
-                                1/5/2010
-                                --------
-doc/bashref.texi
-       - document compat32 and compat40 shopt options.  Omission pointed out
-         by Dilyan Palauzov <Dilyan.Palauzov@aegee.org>
-
-                                   1/6
-                                   ---
-lib/readline/complete.c
-       - use `convfn' (converted filename) instead of entry->d_name (filename
-         read from file system) when adding partial or full completions to
-         the command line.  Bug and fix from Guillaume Outters
-         <guillaume.outters@free.fr>
-
-                                   1/7
-                                   ---
-builtins/printf.def
-       - fix prototype in extern declaration for vsnprintf.  Fix for bug
-         reported by Yann Rouillard <yann@pleiades.fr.eu.org>
-
-                                   1/9
-                                   ---
-parse.y
-       - fix shell_getc to handle alias expansions containing quoted
-         newlines.  Problems in bash-4.1 with aliases containing quoted
-         newlines in the middle of and at the end of their expansion.
-         Fix for bug reported by Jonathan Claggett
-         <jonathan@claggett.org>
-       - change mk_alexpansion to not append a space to an alias
-         expansion ending with a newline.  Works with shell_getc
-
-                                  1/11
-                                  ----
-lib/glob/Makefile.in
-       - add dependencies on shell.h and pathnames.h.  From Mike Frysinger
-         <vapier@gentoo.org>
-
-                                  1/15
-                                  ----
-doc/{bash.1,{bashref,version}.texi},lib/readine/doc/rluser.texi
-       - some typo fixes from Aharon Robbins <arnold@skeeve.com>
-       - added descriptions of ENV, COPROC, and MAPFILE variables
-       - added descriptions of READLINE_LINE and READLINE_POINT
-
-                                  1/21
-                                  ----
-arrayfunc.c
-       - free `akey', the word-expanded index into the assoc array to avoid
-         mem leak in array_value_internal
-       - free index into assoc array in unbind_array_element
-       - change array_value_internal to take an additional argument: an
-         arrayind_t *.  If not null, an index to an indexed array is
-         returned there.  If not an indexed array or subscript is @ or
-         *, the value is unchanged
-
-                                  1/22
-                                  ----
-builtins/ulimit.def
-       - include <ulimit.h> if we found it during configure and we don't
-         have resources.  Fixes omission reported by Joachim Schmitz
-         <jojo@schmitz-digital.de>
-
-{configure,config.h}.in
-       - check for <ulimit.h>, define HAVE_ULIMIT_H if found
-
-lib/sh/oslib.c
-       - include <signal.h> for extern declaration for kill(2) if
-         HAVE_KILLPG not defined
-
-jobs.c
-       - if HAVE_KILLPG is not defined, add an extern prototype decl for
-         killpg()
-
-                                  1/24
-                                  ----
-print_cmd.c
-       - when printing here-string redirections, don't quote the string.  The
-         original quotes, if any, are still in place and don't need to be
-         requoted.  Fixes bug reported by Arfrever Frehtes Taifersar Arahesis
-         <arfrever.fta@gmail.com>
-
-subst.c
-       - fix array_length_reference to return 0 for variables that have not
-         been assigned a value.  Fixes bug reported by Mart Frauenlab
-         <mart.frauenlob@chello.at>, but is not backwards compatible
-
-arrayfunc.[ch]
-       - change array_value to take a new arrayind_t *indp parameter like
-         get_array_value; changed extern prototype declaration
-
-subst.c
-       - changed callers of array_value to add extra parameter
-
-expr.c
-       - change expr_streval to set a new `lvalue' parameter with information
-         about the string being evaluated: string, value, array index (if
-         any), variable evaluated (if set).
-       - saving and restoring current context now saves and restores the
-         current `lvalue'
-       - new function expr_bind_array_element, binds an array element with an
-         already-computed index to a specified value
-       - anywhere we set the current token to a string (STR), save and set
-         the current lvalue
-       - change calls to expr_bind_variable to check whether or not the
-         current lvalue indicates an indexed array was evaluated, and, if so,
-         call expr_bind_array_element using the already-computed index
-         (curlval.ind).  Fixes problems with dynamic variables (e.g., RANDOM)
-         in array indices with {pre,post}-{inc,dec}rement and op=
-         operators reported by <dennis@netstrata.com>
-
-                                  1/25
-                                  ----
-expr.c
-       - fix subexpr() to initialize curlval and lastlval when resetting all
-         of the rest of the expression-parsing variables
-
-                                  1/26
-                                  ----
-builtins/setattr.def
-       - in show_var_attributes, if the variable is not set (value == 0),
-         don't print `name=""', just print `name'.  Pointed out by
-         Mart Frauenlab <mart.frauenlob@chello.at>
-
-arrayfunc.c
-       - fix array_keys to return NULL if the variable is not set or
-         invisible.  Pointed out by Mart Frauenlab <mart.frauenlob@chello.at>
-       - change array_value_internal to return NULL for variable which has
-         not been set
-
-                                  1/30
-                                  ----
-bashline.c
-       - in command_word_completion_function, don't call glob_pattern_p
-         on hint -- use the already-computed `globpat'.  At this point,
-         hint might contain an already-dequoted globbing character, but
-         glob_matches will be NULL.  Fixes bug reported by
-         coyote@wariat.org.pl
-
-                                   2/5
-                                   ---
-builtins/exec.def
-       - set extern variable "exec_argv0" to the argument to -a
-
-shell.c
-       - if exec_argv0 is set, set dollar_vars[0] to it and set it to NULL,
-         assuming it was set by `exec -a'.  `exec -a foo' now sets $0 to
-         foo in an executable shell script without a leading `#!' (fixes
-         longstanding bug)
-
-                                   2/8
-                                   ---
-variables.c
-       - in push_func_var, if a variable is in a special builtin's temporary
-         environment and needs to be propagated because we're in Posix mode,
-         or we just need to propagate a variable, and we are executing in a
-         function without any local variables (so the function-local variable
-         context has no variable hash table), make sure we create a hash
-         table so we have a place to save the variable to be propagated.
-         Fixes bug reported by Crestez Dan Leonard <cdleonard@gmail.com>.
-
-                                  2/18
-                                  ----
-builtins/hash.def
-       - change add_hashed_command to remove the command being looked up from
-         the hash table before trying to add it.  That way, if it's not found,
-         there won't be anything remaining in the hash table
-
-                                  2/26
-                                  ----
-trap.[ch]
-       - move IMPOSSIBLE_TRAP_HANDLER define to trap.h so other parts of the
-         shell can use it
-
-parse.y
-       - change yy_readline_get to use IMPOSSIBLE_TRAP_HANDER instead of NULL
-         as a sentinel value for the SIGINT signal handler
-       - make sure yy_readline_get resets interrupt_immediately to 0 after
-         calling readline() using the same criteria it used to set it to 1
-         before the call -- make the code symmetric.  Suggested by Werner
-         Fink <werner@suse.de>
-
-builtins/read.def
-       - move assignment to `retval' before decrement of interrupt_immediately
-         and terminate_immediately and call to discard_unwind_frame
-       - move assign_vars label before decrement of interrupt_immediately and
-         terminate_immediately so those variables get reset appropriately
-         if read -t times out
-
-subst.h
-       - new define for Q_DOLBRACE, indicates double-quoted ${...}
-
-subst.c
-       - in parameter_brace_expand, before calling parameter_brace_expand_rhs,
-         add Q_DOLBRACE to `quoted' if we're within double quotes.
-       - in expand_word_internal, if the Q_DOLBRACE flag is set, remove a
-         backslash escaping a }.  Result of a Posix discussion on the
-         austin-group list
-
-                                  2/27
-                                  ----
-variables.c
-       - new functions to save and restore the PIPESTATUS variable's internal
-         array: save_pipestatus_array and restore_pipestatus_array
-
-variables.h
-       - new extern declarations for save_pipestatus_array and
-         restore_pipestatus_array
-
-trap.c
-       - in run_pending_traps, _run_trap_internal, and run_exit_trap, save
-         and restore $PIPESTATUS while traps are running.  Fixes bug
-         reported by Florian Bruhin <me@the-compiler.org>
-
-parse.y
-       - use save_pipestatus_array and restore_pipestatus_array in
-         save_parser_state and restore_parser_state, respectively, replacing
-         inline code
-
-lib/readline/histfile.c
-       - fix callers of history_filename to be prepared to cope with it
-         returning NULL
-       - change history_filename to return NULL if $HOME is not set, rather
-         than trying to write the history file in the current directory.
-         This is the default directory, used only if the application does
-         not specify a history filename.  Changed due to long-ago (unsent)
-         bug report from OpenBSD
-
-{Makefile,config.h,configure}.in,externs.h,lib/sh/{dprintf.c,Makefile.in}
-       - change fdprintf to dprintf, which is the Posix standard interface,
-         look for it with configure, replace it if not available
-
-                                  2/28
-                                  ----
-command.h
-       - add new subshell flag, SUBSHELL_RESETTRAP.  Indicates to the trap
-         builtin that the shell is executing a command substitution and
-         should free the trap strings we left unfreed by reset_signal_handlers()
-
-trap.c
-       - free_trap_string() and free_trap_strings() are now compiled in
-
-builtins/trap.def
-       - if changing a signal disposition and the SUBSHELL_RESETTRAP flag is
-         set in subshell_environment, free the trap strings left unfreed by
-         reset_signal_handlers
-
-subst.c
-       - in command_substitute, set the SUBSHELL_RESETTRAP flag.  This change
-         is for Austin Group Posix interpretation 53
-         (http://austingroupbugs.net/view.php?id=53)
-
-                                   3/7
-                                   ---
-lib/sh/{Makefile.in,strchrnul.c},Makefile.in
-       - implementation of strchrnul, from gnulib
-
-configure.in,config.h.in
-       - look for strchrnul and compile in version in lib/sh/strchrnul.c if
-         not available
-       - look for mbsnrtowcs and define HAVE_MBSNRTOWCS if available
-
-lib/sh/xmbsrtowcs.c
-       - new function, xdupmbstowcs2, fast version of xdupmbstowcs used when
-         mbsnrtowcs is available and the indices are not required.  Called
-         from xdupmbstowcs as required.  Initial patch from
-         <0xe2.0x9a.0x9b@gmail.com>
-
-                                  3/22
-                                  ----
-print_cmd.c
-       - call print_deferred_heredocs virtually every time a recursive call
-         to make_command_string_internal is made so here documents get
-         printed correctly when they are attached to commands inside compound
-         commands such as for and while.  Fixes bug reported by Mike
-         Frysinger <vapier@gentoo.org>
-
-                                  3/25
-                                  ----
-builtins/printf.def
-       - fix have_precision case in PF macro to call printf with precision
-         instead of fieldwidth argument.  Fixes bug reported by Rob Robason
-         <rob@robason.net>
-
-                                  3/26
-                                  ----
-trap.[ch]
-       - new function, signal_is_hard_ignored, returns true if the shell
-         inherited SIG_IGN as a signal's disposition
-       - new function, set_original_signal (sig, handler), provides interface
-         for rest of shell to set original_signals[sig] = handler
-
-execute_cmd.c
-       - execute_disk_command needs to call reset_terminating_signals in the
-         child process before resetting traps with restore_original_signals
-
-builtins/trap.def
-       - call initialize_terminating_signals before calling display_traps for
-         trap -p or trap without any other arguments.  Possible future use
-
-lib/readline/complete.c
-       - rl_filename_completion_function needs to call
-         rl_filename_dequoting_function with `dirname' (which has already
-         been tilde-expanded) instead of `users_dirname', because it calls
-         opendir with `dirname'.  Fixes bug reported by Stefan H. Holek 
-         <stefan@jarn.com>
-
-                                  3/27
-                                  ----
-sig.c
-       - experimental change to set_signal_handler: when setting the SIGCHLD
-         handler, set the SA_RESTART flag so that interruptible system calls
-         get restarted after a child dies.  Fixes bug reported by Tomas
-         Trnka <tomastrnka@gmx.com>, but needs further evaluation
-
-lib/sh/eaccess.c
-       - eaccess(2) apparently does only half the job: it does not check that
-         the permission bits on a file actually allow, for instance, execution.
-         Need to augment with a call to sh_stataccess if eaccess returns
-         success on FreeBSD.  Fixes FreeBSD problem reported by Johan Hattne
-         <johan.hattne@utsouthwestern.edu>
-
-                                  3/28
-                                  ----
-parse.y,bashline.c,externs.h
-       - history_delimiting_chars now takes a const char * as an argument:
-         the line being added to the history.  Changed callers
-
-parse.y
-       - bash_add_history should not add a semicolon separator if the current
-         history entry already ends in a newline.  It can introduce syntax
-         errors (e.g., when it results in a null command before a close brace).
-         Fixes bug reported by Andreas Schwab <schwab@linux-m68k.org>
-
-parse.y
-       - history_delimiting_chars needs to return a newline instead of a
-         semicolon if it thinks the current line starts a here document
-         (if it contains `<<').  Also keeps track of the fact with a new
-         static variable, LAST_WAS_HEREDOC, so it can return the right
-         sequence of newlines later for the here-document body.  Fixes bug
-         reported by Andreas Schwab <schwab@linux-m68k.org>
-
-                                  3/29
-                                  ----
-lib/sh/eaccess.c
-       - if the system has faccessat, sh_eaccess will now use it in
-         preference to all other options
-
-                                  3/30
-                                  ----
-subst.h
-       - new string_extract and extract_dollar_brace_string flag value:
-         SX_POSIXEXP, set if the shell is expanding one of the new Posix
-         pattern removal word expansions
-
-parser.h
-       - new definitions for "word expansion state", shared between parse.y
-         and subst.c
-
-subst.c
-       - include parser.h
-
-                                   4/9
-                                   ---
-builtins/declare.def
-       - make sure declare_internal calls bind_assoc_variable with newly-
-         allocated memory for the key argument when using an implicit key
-         of "0".  Bug report and fix from Andreas Schwab
-         <schwab@linux-m68k.org>
-
-                                  4/14
-                                  ----
-lib/readline/input.c
-       - restructure the rl_event_hook loop in rl_read_key to call the
-         event hook after rl_gather_tyi() returns and rl_get_char has
-         a chance to collect the input.  Previous behavior was to call
-         the event hook before attempting to read input.  Problem
-         reported by Anant Shankar <anantshankar17@gmail.com>
-
-                                  4/15
-                                  ----
-builtins/fc.def
-       - fc_builtin needs to check whether the calculation of last_hist
-         leaves hlist[last_hist] == 0, and keep decrementing it until it
-         leaves a non-null history entry or goes < 0.  Currently only
-         does this if saved_command_line_count > 0, indicating we're
-         trying to edit a multi-line command.  Fixes bug reported by
-         Roman Rakus <rrakus@redhat.com>
-
-                                  4/17
-                                  ----
-subst.c
-       - new process substitution helper functions:
-               unlink_fifo - closes a single FD or FIFO
-               num_fifos - returns number of open FDs or active FIFOs
-               copy_fifo_list - returns a bitmap of open FDs or active FIFOs
-                 by index into appropriate list (dev_fd_list or fifo_list)
-               close_new_fifos - take a bitmap saved by copy_fifo_list and
-                 call unlink_fifo on any FD or FIFO open at the time of the
-                 call that is not marked as active in list
-
-execute_cmd.c
-       - execute_builtin_or_function: use new framework to close process
-         substitution FDs or FIFOs created by a shell builtin or shell
-         function.  Fixes bug reported by Charles Duffy <charles@dyfis.net>
-
-doc/{bash.1,bashref.texi}
-       - document 'C and "C constants for printf builtin
-
-                                  4/22
-                                  ----
-lib/readline/complete.c
-       - new function to return screenwidth for use when displaying possible
-         matches: complete_get_screenwidth; changed uses of _rl_screenwidth
-         to use complete_get_screenwidth().
-       - change complete_get_screenwidth to query (readline-private)
-         _rl_completion_colums, $COLUMNS, then _rl_screenwidth in that order
-       - change rl_display_match_list to deal with limit < 0 (which implies
-         that cols == 0) when _rl_screenwidth > 0
-
-lib/readline/bind.c
-       - new bindable variable: completion-display-width, controls the
-         number of columns used when displaying completions with new
-         sv_compwidth function to call when value is set or unset
-
-lib/readline/doc/{readline.3,rltech.texi}
-       - documented completion-display-width variable
-
-                                  4/23
-                                  ----
-execute_cmd.c
-       - change execute_in_subshell to reset trap handlers without freeing
-         the trap strings and set SUBSHELL_RESETTRAP.  In line with Austin
-         Group interp #53 (trap in a subshell).
-       - ditto for execute_simple_command where it can be determined that
-         the shell is going to run a builtin or function in a subshell
-
-trap.c
-       - new function, get_all_original_signals, retrieves the original
-         signal disposition for all signals
-
-trap.h
-       - extern declaration for get_all_original_signals
-
-builtins/trap.def
-       - change showtrap to display signals that are "hard ignored" as
-         trap commands to ignore them, even though that trap command would
-         be a no-op.  Partial fix for feature request from Siddhesh
-         Poyarekar <siddhesh.poyarekar@gmail.com>
-       - change trap_builtin to call get_all_original_signals before displaying
-         traps.  This will show inherited ignored signals.  Rest of feature
-         request from Siddhesh Poyarekar <siddhesh.poyarekar@gmail.com>
-
-lib/readline/histexpand.c
-       - fix history_tokenize_word so that it understands $(...) and the
-          <(...) and >(...) expansions as a single word
-       - change history_tokenize_word so that it understands extended shell
-         globbing patterns as a single word.  Code is very similar to
-         $(...) code above.  Bug reported by Rajeev V. Pillai
-         <rajeevvp@gmail.com>
-
-                                  4/24
-                                  ----
-lib/readline/vi_mode.c
-       - add checks to rl_vi_char_search to make sure we've already done a
-         search if the command is `;' or `,', and return immediately if we
-         have not.  Fixes bug reported by Eric Ho <ericmho@shaw.ca>
-
-lib/readline/text.c
-       - make sure `dir' is in the valid range before searching in
-         _rl_char_search_internal.  Range checks in the code depend on it
-         being non-zero
-
-                                   5/3
-                                   ---
-lib/readline/complete.c
-       - in rl_complete_internal, if show-all-if-ambiguous or
-         show-all-if-unmodified are set (what_to_do == '!' or '@',
-         respectively), and the common match prefix is shorter than the
-         text being completed, inhibit inserting the match.
-         The guess is that replacing text with a shorter match will not
-         be wanted
-
-                                  5/20
-                                  ----
-lib/sh/unicode.c
-       - new file, with unicode character conversion-related code.  Will be
-         used to implement \u and \U escapes where appropriate, and for
-         other unicode-related functions in the future
-
-                                  5/21
-                                  ----
-builtins/printf.def
-       - add code to handle \u and \U escapes in format strings and arguments
-         processed by the %b format specifier
-
-lib/sh/strtrans.c
-       - add code to handle \u and \U escapes as unicode characters, works for
-         both `echo -e' and $'...'
-
-doc/{bash.1,bashref.texi}
-       - document new \u and \U escape sequences for $'...' and echo (printf
-         defers to the system's man page or Posix)
-
-                                  5/24
-                                  ----
-execute_cmd.c
-       - change execute_disk_command to return a status, instead of just
-         leaving it in `last_command_exit_value', since the parent's return
-         value is sometimes used (e.g., when a restricted shell refuses to
-         run a command with a `/').  Fixes bug reported by David Pitt
-         <David.Pitt@anz.com>
-
-                                  5/25
-                                  ----
-bashline.c
-       - change bash completion functions to save and restore the value of
-         rl_ignore_some_completions_function, and set it to the bash default
-         of filename_completion_ignore where appropriate.  Fixes bug
-         reported by Henning Bekel <h.bekel@googlemail.com>
-
-variables.c
-       - new convenience function: find_global_variable (name).  Looks for
-         NAME in the global variables table, skipping any local and
-         temporary environment variables
-
-builtins/declare.def
-       - add new -g option to declare/typeset/local, forces variables to be
-         created or modified at the global scope when executing inside a
-         shell function.  Requested by many, most recently by
-         konsolebox@gmail.com
-
-                                  5/27
-                                  ----
-test.c
-       - added new `-v var' unary test operator; returns TRUE if var is set
-         (i.e., has been assigned a value).  Works in both test builtin and
-         [[ conditional command
-
-doc/{bash.1,bashref.texi}
-       - documented new `-v var' unary conditional operator
-
-tests/test.tests
-       - added tests for new -v var operator
-
-builtins/kill.def
-       - change kill builtin so -PID (pgrp specification) following a
-         -s sig or -n sig option is not interpreted as a signal specification.
-         Fixes bug reported by Roman Rakus <rrakus@redhat.com>
-
-builtins/evalstring.c
-       - in parse_and_execute, if parse_command() returns non-zero,
-         indicating a parse error, exit the shell if the conditions require
-         a posix-mode non-interactive shell to abort (parse error in a `.'
-         script or eval string).  Bash-4.1 only printed a warning.  This is
-         from Austin Group interp 114
-
-doc/bashref.texi
-       - add note to the posix mode section of the texinfo manual noting
-         the changed behavior for `.' and `eval'
-
-parse.y
-       - change time_command_acceptable to allow TIME token to appear after
-         BANG token (to allow `! time foo', which is supposed to be valid)
-       - change pipeline_command production to allow multiple instances of
-         `!' (which toggle inverting the return status) and `time' (which
-         have no effect)
-
-execute_cmd.c
-       - In posix mode, `time' without a following pipeline prints the
-         elapsed user, system, and real time for the shell and its
-         children since the shell was invoked.
-         It's like `times' but obeys the setting of TIMEFORMAT.  A future
-         revision of Posix will require this
-
-doc/{bashref.texi,bash.1}
-       - document new posix mode use of `time' 
-
-parse.y
-       - add production to pipeline_command that permits `!' by itself to
-         be equivalent to `false' (and, with the changes above, permits
-         `! !' to be roughly equivalent to `true').  A future revision of
-         Posix will require this
-
-                                  5/28
-                                  ----
-parse.y
-       - fix \W prompt expansion to use memmove instead of strcpy, since the
-         source and target strings overlap (though you think it wouldn't
-         matter, since the overlapping regions are never touched at the same
-         time).  Fixes bug reported by Stéphane Jourdoi
-         <sjourdois@gmail.com>
-
-parse.y
-       - Posix interp 217 states that $(( must be parsed first as an
-         arithmetic expansion, so avoid attempting to parse it as a nested
-         command substitution.  Fixes bug reported by several, most recently
-         <jwm@horde.net>
-
-subst.c
-       - change extract_delimited_string to process nested $( as a possible
-         command substitution, but only if already parsing an arithmetic
-         expansion.  Rest of fix for Posix interp 217
-       - change parameter_brace_expand_rhs to make the := expansion operator
-         perform quote removal and both assign the result to the variable and
-         return it as the result of the expansion, rather than assign the
-         value after quote removal but return the value before quote removal.
-         Posix interp 221
-       - introduce new internal quoting flag: Q_DOLBRACE.  Denotes a double-
-         quoted ${...} expansion.  In this case, Posix interp 221 requires
-         that a backslash quoting an embedded `}' be removed, even though it's
-         not one of the characters marked as special inside double quotes.
-         Set in parameter_brace_expand, used by expand_word_internal.
-
-parse.y
-       - introduce new parsing state, P_DOLBRACE, set when parsing a ${...}
-         expansion
-       - set a "dolbrace operator state" in parse_matched_pair to decide
-         whether the lexer is reading the param, op, or word in
-         ${paramOPword}.  Will be used to decide whether or not to treat
-         single quotes specially in a double-quoted "${...}
-
-                                  5/29
-                                  ----
-parse.y
-       - change parse_matched_pair so that a single quote appearing in a
-         double-quoted ${...} expansion is not special unless the expansion
-         operator is `#[#]' or `%[%]'.  Posix interp 221
-
-subst.c
-       - change string_extract_double_quoted so that a single quote appearing
-         in a double-quoted ${...} expansion is not special unless the
-         expansion operator is `#[#]' or `%[%]'.  Posix interp 221
-
-doc/bashref.texi
-       - document posix-mode effects of Posix interp 221
-       - add section describing GNU parallel as requested by Stallman
-
-lib/readline/complete.c
-       - broke code that compares filenames read from the file system (and
-         possibly converted) to words being completed out into a separate
-         function: complete_fncmp
-       - augment complete_fncmp to treat hyphen and underscore as equivalent
-         when comparing filenames if _rl_completion_case_map is set
-
-lib/readline/rlprivate.h
-       - new extern declaration for _rl_completion_case_map
-
-lib/readline/util.c
-       - change _rl_strnicmp to return the difference between the characters,
-         like strcasecmp, and not modify the pointers it is passed
-       - change _rl_stricmp to not modify the pointers it is passed
-
-lib/readline/bind.c
-       - new bindable variable, "completion-case-map", toggles value of
-         _rl_completion_case_map
-
-lib/readline/doc/{rluser.texi,readline.3}
-       - document new bindable readline variable "completion-case-map"
-
-execute_cmd.c
-       - change execute_function to reset funcnest and jump back to top level
-         if funcnest exceeds funcnest_max
-       - use funcnest_max as a max function nesting level, if set to numeric
-         value greater than 0 (defaults to 0, so inactive)
-
-variables.c
-       - new variable FUNCNEST, controls funcnest_max value if set to numeric
-         value > 0
-sig.c
-       - reset funcnest to 0 when throw_to_top_level occurs
-
-doc/{bash.1,bashref.texi}
-       - document FUNCNEST variable and its effect on function execution
-
-lib/readline/funmap.c
-       - add new bindable command names to avoid case-insensitive matching
-         problems between, for instance, vi-fword and vi-fWord:
-
-               vi-forward-word
-               vi-forward-bigword
-               vi-backward-word
-               vi-backward-bigword
-               vi-end-word
-               vi-end-bigword
-
-         Suggested in a different form in 2006 (!) by Servatius Brandt
-         <servatius.brandt@arcor.de>
-
-builtins/mapfile.def
-       - run_callback now takes a new third argument: curline, the line
-         currently being read and about to be assigned
-       - the callback function/command now takes an additional argument:
-         the line to be assigned to the array index.  Feature suggested by
-         Dennis Williamson <dennistwilliamson@gmail.com>
-
-doc/{bash.1,bashref.texi}
-       - document new additional `line' argument to mapfile callback
-
-                                  5/30
-                                  ----
-builtins/printf.def
-       - add new %(fmt)T format specifier, where FMT is a strftime format.
-         Argument is number of seconds since the epoch, with -1 meaning
-         current time (roughly date +%s) and -2 meaning shell start time
-         (roughly $SECONDS, unless it's been assigned a value or unset).
-         Fieldwidth and precision are preserved, strftime result is printed
-         as with %[-][[fieldwidth][.[precision]]]s
-
-doc/{bash.1,bashref.texi}
-       - document new %(datefmt)T printf format specifier and special
-         arguments
-
-builtins/hash.def
-       - don't permit programs with slashes to be entered into the hash table
-         at all, even with the -p option.  Inconsistency pointed out by
-         Jan Schampera <jan.schampera@web.de>
-
-builtins/shopt.def
-       - add `compat41' option in preparation for bash-4.2
-
-                                   6/6
-                                   ---
-lib/readline/vi_mode.c
-       - finish restructuring rl_vi_domove and the functions that call it so
-         it works in callback mode, including numeric arguments.  Requested
-         a long time ago by Bob Rossi 
-
-lib/readline/callback.c
-       - arrange to call appropriate callback when readline state indicates
-         RL_STATE_VIMOTION, so vi motion commands like `cw' and `d2w' are
-         handled in callback mode
-
-lib/sh/wcswidth.c
-       - replacement wcswidth implementation
-
-aclocal.m4
-       - add REPLACE_FUNCS(wcswidth) to BASH_CHECK_MULTIBYTE
-
-execute_cmd.c
-       - fix select_query and print_index_and_element to compute correct
-         display width of select list elements in presence of multibyte
-         characters.  Bug reported by Bernd Eggink <monoped@sudrala.de>
-
-builtins/cd.def
-       - add posix-mandated -e option; currently ignored in most circumstances
-
-doc/{bash.1,bashref.texi}
-       - document new `cd -e' option
-
-                                  6/12
-                                  ----
-arrayfunc.c
-       - change array_value_internal to treat negative subscripts to indexed
-         arrays, offset from array_max_index(x) + 1, so foo[-1] is the last
-         element of $foo
-
-subst.c
-       - Change verify_substring_values to allow negative length specifications
-         when using string variables or array members.  Negative lengths
-         mean to return characters from OFFSET until (${#var} - N) for
-         {var:offset:-N}.  Feature requested by Richard Neill
-         <rn214@hermes.cam.ac.uk>
-
-doc/{bash.1,bashref.texi}
-       - document new behavior of negative subscripts to indexed arrays
-       - document new behavior of negative LENGTH in substring expansion
-
-configure.in
-       - change version to bash-4.2-devel
-
-variables.c
-       - make sure initialize_shell_variables calls sv_xtracefd if
-         BASH_XTRACEFD is inherited in the shell environment.  Fixes but
-         reported by <jsunx1@bellsouth.net>
-
-                                  6/13
-                                  ----
-lib/readline/complete.c
-       - change get_y_or_n to always return 1 when in callback mode, so we
-         don't do a blocking read.  Have to wait until readline-7.0 to add
-         a state so we can use callbacks, since that will change public
-         interface
-
-                                  6/17
-                                  ----
-subst.c
-       - fix memory leak in parameter_brace_expand: when performing pattern
-         removal with parameter_brace_remove_pattern, make sure `name' is
-         freed.  Fixes bug reported by oyvindh@dhampir.no
-
-                                  6/23
-                                  ----
-{parse.y,subst.c}
-       - make the ${param//pat/rep}, ${param^pat}, and ${param,pat} expansions
-         require single quotes and double quotes to match when within double
-         quotes.  This way every expansion except the Posix ones behaves as
-         bash has always behaved
-
-subst.c
-       - change remove_upattern and remove_wpattern to return their first
-         argument if nothing matches, change callers to allocate memory
-         appropriately
-       - change remove_pattern to short-circuit and return copy of PARAM
-         if remove_wpattern returns its first argument (indicating no match)
-         rather than convert back to multibyte string, allocating new memory
-         twice and calling wcsrtombs
-
-                                  6/24
-                                  ----
-execute_cmd.c
-       - add missing initializers for sh_coproc to eliminate a compiler
-         warning.  Patch from Werner Fink <werner@suse.de>
-
-                                  6/27
-                                  ----
-parse.y
-       - add `TIMEIGN' token to handle `time -p -- ...'.  Pointed out by
-         Laszlo Ersek <lacos@caesar.elte.hu> on austin-group list
-
-                                  6/28
-                                  ----
-jobs.c
-       - treat a shell with (subshell_environment&SUBSHELL_PIPE) != 0 like
-         a command substitution in wait_for and act like we received a
-         SIGINT if a job we're waiting for dies of SIGINT.  Fixes bug
-         reported by Ilya Basin <basinilya@gmail.com>
-
-                                   7/2
-                                   ---
-jobs.c
-       - if fork() fails in make_child, try to reap some dead children before
-         retrying
-
-execute_cmd.c
-       - change execute_pipeline to run the last command of a non-asynchronous
-         pipeline in the current shell environment if the `lastpipe' shell
-         option is enabled and job control is not active.  Code from
-         Werner Fink <werner@suse.de>
-
-parse.y
-       - Posix says (issue 267) that time is not recognized as a keyword
-         if the next token begins with a `-'
-
-doc/{bash.1,bashref.texi}
-       - changed the descriptions of BASH_SOURCE, BASH_LINENO, and FUNCNAME
-         as proposed in Ubuntu bug 591677.
-       - document new `lastpipe' shell option that runs last command of a
-         pipeline in the current shell environment
-       - document new posix-mode behavior with `time -p'
-
-                                   7/5
-                                   ---
-aclocal.m4
-       - new autoconf test WEXITSTATUS_OFFSET, bit offset in status word
-         returned by wait() of the process's exit status
-
-jobs.[ch]
-       - change stop_pipeline to return the actual index of the job just
-         created and added to the jobs table, instead of the current job
-       - job_exit_status and job_exit_signal are now global functions, with
-         extern declarations in jobs.h
-       - append_process: new utility function for use by the lastpipe code,
-         takes info, creates a PROCESS from them, and adds it to the end of
-         the passed job id's pipeline.  lastpipe code uses it to add a dummy
-         process for the last command in the pipeline
-       - freeze_jobs_list: new utility function so rest of shell can freeze
-         the jobs list.  Used by the lastpipe code
-
-execute_cmd.c
-       - changes to lastpipe code to make `pipefail' option, $PIPESTATUS, and
-         $? work correctly.  Uses append_process and job_exit_status
-
-                                  7/10
-                                  ----
-subst.c
-       - when performing pattern substitution word expansions, a `&' in the
-         replacement string is replaced by the text matched by the pattern.
-         The `&' can be quoted with a backslash to inhibit the expansion.
-         CURRENTLY DISABLED
-
-                                  7/13
-                                  ----
-pcomplib.[ch]
-       - new member for struct compspec: lcommand.  for future use
-
-                                  7/15
-                                  ----
-parse.y
-       - fix problem in parse_comsub where extra space was added to here-doc
-         delimiter if the first word in the comsub contained a `/'.  Fixes
-         bug reported by Alex Khesin <alexk@google.com>
-
-                                  7/20
-                                  ----
-parse.y
-       - change reserved_word_acceptable to return success if the last two
-         tokens read were `function WORD'.  Allows function definitions like
-         function good [[ -x foo ]];.  Fixes bug reported by Linda Walsh
-         <bash@tlinx.org>
-
-doc/{bash.1,bashref.texi}
-       - change function definition meta-syntax to make it clearer, rather
-         than let the text note the optional portions
-
-                                  7/24
-                                  ----
-bashhist.c
-       - change bash_history_inhibit_expansion() to suppress history expansion
-         for $! parameter expansion.  Fixes debian bug #589745 submitted by
-         Frank Heckenbach <f.heckenbach@fh-soft.de>
-
-lib/readline/terminal.c
-       - change rl_resize_terminal to always fetch the new terminal size and
-         only force the redisplay if _rl_echoing_p is non-zero.  Fixes bug
-         reported by Balazs Kezes <rlblaster@gmail.com>
-
-                                  7/25
-                                  ----
-lib/readline/xfree.c
-       - new file, contains definition of xfree moved from xmalloc.c
-
-                                  7/28
-                                  ----
-variables.c
-       - check suspect return values from bind_variable before trying to use
-         the returned SHELL_VAR *.  Changes to: initialize_shell_variables,
-         bind_int_variable, FIND_OR_MAKE_VARIABLE.  Fixes bug reported by
-         Roman Rakus <rrakus@redhat.com>
-
-                                  7/31
-                                  ----
-lib/readline/rltty.c
-       - fix rl_prep_terminal and rl_deprep_terminal to use fileno(stdout)
-         if rl_instream is NULL.  Fixes bug reported by Otto Allmendinger
-         otto.allmendinger@googlemail.com
-
-                                   8/2
-                                   ---
-lib/sh/casemod.c
-       - if the passed string is NULL or empty, return it immediately.  Fixes
-         bug reported by Dennis Williamson <dennistwilliamson@gmail.com>
-
-subst.c
-       - fix pat_subst to cope with the passed string being NULL
-
-arrayfunc.h
-       - added flag values for array_value_internal and its callers; converted
-         array_value_internal `allow_all' parameter into a general flags word
-       - get_array_value now takes a flags value
-       - changed array_value internal to use *indp as an index to use if the
-         AV_USEIND flag is set, rather than recomputing it
-
-subst.c
-       - get_var_and_type takes two new parameters: a flags word and an index
-         that represents an already-computed index for an array reference
-         (just indexed arrays so far).  Index is used and passed to array_value
-         if flags includes AV_USEIND
-       - parameter_brace_expand_word takes a new argument: the already-
-         computed index; returns W_ARRAYIND if word expanded is being used
-         as an array index
-       - changed parameter_brace_casemod, parameter_brace_patsub,
-         parameter_brace_substring, parameter_brace_remove_pattern to take new
-         flags and index arguments from parameter_brace_expand_word.  They
-         pass the new parameters along to get_var_and_type to use an
-         already-computed array index if necessary.  Fixes bug where array
-         indexes are computed twice reported by Andrew Benton
-         <b3nton@gmail.com>
-
-doc/bash.1,lib/readline/doc/{history.3,hsuser.texi}
-       - modified description of history event designators to clarify that
-         all non-absolute event designators are relative to the current
-         position in the history list.  Question raised by Frank
-         Heckenbach <f.heckenbach@fh-soft.de> as debian bash bug 590012
-
-                                   8/5
-                                   ---
-subst.c
-       - remove code that does not add a quoted null when the input string
-         is partially quoted; subsequent word splitting may require it.
-         Fixes bug reported by Eric Blake <eblake@redhat.com>
-
-                                  8/12
-                                  ----
-lib/glob/gmisc.c
-       - move match_pattern_wchar and match_pattern_char to new file in
-         glob library
-       - new functions: wmatchlen(pat, max) and umatchlen(pat, max), computes
-         number of characters PAT will match.  Returns the number of chars
-         that will be matched or -1 if the match length is indeterminate
-         (i.e., contains a `*')
-
-subst.c
-       - use umatchlen/wmatchlen in match_upattern/match_wpattern to bound
-         the number of match attempts in large strings to (usually) one,
-         depending on match length.  Fixes performance problems with
-         pattern substitution in large strings noted by Yi Yan
-         <yiyan97@hotmail.com>.  Can be applied to remove_[uw]pattern also
-
-                                  8/13
-                                  ----
-bashhist.c
-       - in maybe_append_history, change check for history_lines_this_session
-         so that we append the lines to the file if it's equal to the value
-         returned by where_history().  This means that without this change,
-         the history won't be appended if all the lines in the history list
-         were added in the current session since the last time the history
-         file was read or written.  Fixes bug reported by Bruce Korb
-         <bruce.korb@gmail.com>
-
-shell.h,parse.y
-       - add prompt_string_pointer to the parser_state struct saved and
-         restored by {save,restore}_parser_state.  Fixes both bugs exposed
-         by bash_completion and completion of open backquotes reported by
-         Egmont Koblinger <egmont@gmail.com>
-
-subst.h
-       - new flag for skip_to_delim: SD_EXTGLOB.  Skip extended globbing
-         patterns while looking for ending delimiter
-
-subst.c
-       - when passed the SD_EXTGLOB flag, skip_to_delim skips over extended
-         globbing patterns (when extended_glob is set) while looking for a
-         character in the delimiter set
-
-pathexp.c
-       - split_ignorespec: new function to replace calls to extract_colon_unit
-         in setup_ignore_patterns.  uses skip_to_delim with the SD_EXTGLOB
-         flag to skip over extended globbing patterns in variables like
-         HISTIGNORE and GLOBIGNORE.  Fixes bug reported by Dimitar DIMITROV
-         <mitkofr@yahoo.fr> and Greg Wooledge <wooledg@eeg.ccf.org>
-
-                                  8/28
-                                  ----
-lib/readline/rlprivate.h
-       - add members to search_cxt to save _rl_keymap
-       - new flag for isearch context: SF_CHGKMAP, set if we changed the
-         keymap while reading a character for the search string that
-         translated to a command
-
-lib/readline/isearch.c
-       - save current readline keymap in cxt->keymap and cxt->okeymap
-         in _rl_scxt_alloc
-       - in _rl_isearch_dispatch, only check for cxt->lastc as a member of
-         cxt->search_terminators if it's > 0 (i.e., not an isearch opcode)
-
-                                   9/3
-                                   ---
-support/signames.c
-       - add Solaris SIGJVM1 and SIGJVM2.  Update from Stefan Teleman
-         <stefan.teleman@oracle.com>
-
-shell.c
-       - instead of closing all fds 3-20 at shell startup, just set them to
-         be close-on-exec.  Report from Rainer Mülle <raimue@macports.org>
-
-lib/readline/isearch.c
-       - in _rl_isearch_dispatch, if the current character maps to ISKMAP,
-         move to the indicated keymap (using cxt->keymap) and go on to
-         read another character.  Fixes problem reported by Davor
-         Cubranic <cubranic@stat.ubc.ca>
-       - in _rl_isearch_dispatch, after translating key to possible opcode,
-         restore _rl_keymap from cxt->okeymap if necessary
-       - in _rl_isearch_dispatch, use key sequences that map to default
-         functions that ^G, ^W, and ^Y map to as equivalent to those chars
-
-lib/readline/complete.c
-       - new variable, _rl_menu_complete_prefix_first, zero by default
-       - change menu_complete to display common prefix (matches[0]) first
-         before cycling through rest of match list if
-         _rl_menu_complete_prefix_first is non-zero.  Suggested by Sami
-         Pietila <sami.pietila@gmail.com>
-
-lib/readline/bind.c
-       - new bindable readline variable, "menu-complete-display-prefix",
-         controls setting of _rl_menu_complete_prefix_first
-
-doc/{bash.1,bashref.texi},lib/readline/doc/{readline.3,rluser.texi}
-       - added description of menu-complete-display-prefix bindable
-         readline variable
-
-                                  9/17
-                                  ----
-configure.in
-       - remove AM_PATH_LISPDIR call since we don't use that bash debugger
-         any more.  Suggested by Mike Frysinger <vapier@gentoo.org>
-
-                                  10/6
-                                  ----
-findcmd.c
-       - change executable_file to set errno to EISDIR if the passed name
-         is a directory
-
-builtins/exec.def
-       - change exec_builtin to report appropriate error message if the
-         file argument is a directory.  Noted by Eric Blake <eblake@redhat.com>
-         in a message to austin-group
-
-builtins/source.def
-       - change source_builtin to make sure the shell exits if the file is
-         not found when in a non-interactive shell running in  posix mode
-         and source_searches_cwd == 0 (as posix mode makes it by default).
-         Pointed out in http://thread.gmane.org/gmane.comp.shells.dash/291/focus=392
-         by Jilles Tjoelker <jilles@stack.nl>
-
-execute_cmd.c
-       - set executing_command_builtin in execute_builtin if the builtin is
-         command_builtin.  Unwind-protected in execute_function_or_builtin
-         (like executing_builtin variable).  Available for rest of shell
-
-builtins/{source.def,evalfile.c}
-       - make sure that non-interactive posix mode shells exit if the file
-         argument to `.' is not found only if they are not being executed
-         by the command builtin (executing_command_builtin == 0).  This is
-         how `command' can cancel effects of special builtin exit properties
-         in the case of `dot file not found'
-
-                                  10/13
-                                  -----
-lib/sh/strtrans.c
-       - pass \c through unchanged if not escaping for `echo -e' and they are
-         the final two characters in the string
-
-                                  10/15
-                                  -----
-subst.c
-       - extract_dollar_brace_string: fix problem with single quotes
-         in unquoted ${...} for Posix compliance
-
-                                  10/16
-                                  -----
-builtins/exec.def
-       - catch return value from shell_execve; don't print duplicate error
-         message if return value is EX_NOTFOUND.  Make sure exit status
-         from exec is 127 if command is not found
-
-execute_cmd.c
-       - fix typo (`saved_redirects' should be `saved redirects') in
-         execute_function_or_builtin `command exec' case.  Typo caused
-         too much of the unwind-protect stack to be discarded
-       - in same execute_function_or_builtin case, don't discard the
-         `saved redirects' frame unconditionally; only discard it if
-         saved_redirects is non-null in the `command exec' case.  Fixes
-         sh -c 'command exec; exit 1' hanging bug uncovered by FreeBSD
-         sh test cases
-
-                                  10/18
-                                  -----
-subst.c
-       - when in posix mode, shell should not exit if a variable assignment
-         error (e.g., assigning to readonly variable) occurs preceding a
-         command that is not a special builtin.  Fixes bug uncovered by
-         FreeBSD sh test cases
-       - when in posix mode, the ${!?} and ${!#} expansions are not indirect
-         expansions, but posix word expansions involving the `!' variable
-
-parse.y
-       - fix parse_comsub so that it does not skip backslash-newline when
-         parsing a comment
-
-                                  10/19
-                                  -----
-subst.c
-       - fix parameter_brace_expand so that an attempt to use the % or #
-         expansions on an unset variable with -u set will cause a non-
-         interactive shell to abort.  Posix change
-       - fix parameter_brace_expand so that an attempt to use pattern
-         substitution or case modification expansions on an unset variable
-         with -u set will cause and unbound variable error and make a
-         non-interactive shell abort
-       - change parameter_brace_expand_length to return INTMAX_MIN if a
-         positional parameter is unset and -u is set
-       - if parameter_brace_expand_length returns INTMAX_MIN when -u is set,
-         treat it as an unbound variable error and make a non-interactive
-         shell abort.  Posix change
-       - change parameter_brace_expand_length to return INTMAX_MIN if an
-         implicit reference to array[0] is made ${#array} and array[0] is
-         not set when -u is set
-
-                                  10/20
-                                  -----
-builtins/cd.def
-       - Posix 2008 says that if no matching directories are found in $CDPATH,
-         use the directory name passed as an operand and go on.  Posix change
-
-doc/bashref.texi
-       - change Posix mode section with latest additions and removals
-
-                                  11/4
-                                  ----
-lib/readline/complete.c
-       - fix rl_menu_complete and rl_old_menu_complete to keep incrementing
-         match_list_index by match_list_size as long as it's < 0.  Fixes
-         bug reported by jeenuv@gmail.com
-
-braces.c
-       - make mkseq() take intmax_t arguments for sequence start and end
-         and make sure it's passed intmax_t values.  Fixes bug reported by
-         Pete Gregory <pg@bushlitt.org>
-
-sig.c
-       - if termsig_handler is called when terminate_immediately == 1,
-         assume we're being called as a signal handler and set
-         history_lines_this_session to 0 to inhibit history file being
-         written on shell exit.  Fixes long-standing bug most recently
-         observed by Andreas Schwab <schwab@linux-m68k.org>
-
-                                  11/5
-                                  ----
-redir.c
-       - add_undo_close_redirect now returns int, 0 on success, non-zero on
-         failure.  Currently always succeeds
-       - new macro REDIRECTION_ERROR to make do_redirection_internal return
-         value of errno
-       - change do_redirection_internal to call REDIRECTION_ERROR after
-         saving file descriptor and make do_redirection_internal return error
-         if add_undo_redirect or add_undo_close redirect fails.  This makes
-         failure to save a file descriptor a redirection error and the shell
-         behaves appropriately.  Fixes bug reported by Eric Blake
-         <eblake@redhat.com>
-
-bashline.c
-       - modify bash_forward_shellword to correctly handle quoted strings,
-         especially if point is in a quoted string when function is invoked.
-         Fixes bug reported by Daniel Colascione <dan.colascione@gmail.com>
-
-configure.in
-       - change version to 4.2-alpha
-
-                                  11/7
-                                  ----
-lib/readline/text.c
-       - in rl_insert, if we're not in the multibyte code path, don't try to
-         optimize and insert all of the available typeahead input if we're
-         reading input from a macro.  Fixes bug reported by Andre Majorel
-         <aym-ung@teaser.fr>
-
-lib/readline/text.c
-       - break out multibyte guts of rl_forward_char into a separate function
-         _rl_forward_char_internal that does nothing but calculate the new
-         value of point
-       - change rl_forward_char to call _rl_forward_char_internal instead of
-         having equivalent code inline
-
-lib/readline/rlprivate.h
-       - new extern declaration for _rl_forward_char_internal
-
-lib/readline/vi_mode.c
-       - change _rl_vi_append_forward to call _rl_forward_char_internal to
-         set rl_point, instead of calling rl_forward_char.  When at the end
-         of the line, rl_forward_char will ring the bell.  Fixes debian
-         bash bug 601042, reported by Alan J. Greenberger <alanjg@ptd.net>
-
-                                  11/14
-                                  -----
-subst.c
-       - fix match_upattern to use correct test to immediately break out of
-         loop (when potential match length is greater than number of chars
-         remaining in the string) in MATCH_ANY case
-
-                                  11/15
-                                  -----
-subst.c
-       - include "typemax.h" to make sure we have a definition of INTMAX_MIN
-
-                                  11/16
-                                  -----
-lib/sh/unicode.c
-       - make sure `localconv' isn't declared on machines without iconv
-       - add stub_charset for systems that don't have locale_charset: looks
-         up LC_CTYPE, returns everything after last `.', "UTF-8" if the
-         value is exactly "UTF-8", and "ASCII" otherwise
-
-                                  11/20
-                                  -----
-lib/readline/vi_mode.c
-       - in rl_domove_motion_callback, make sure to use m->key instead of
-         key, which is not initialized and should not be used.  Bug report
-         from Andreas Schwab <schwab@linux-m68k.org>
-       - in rl_vi_domove, make assignment to `m' explicit instead of
-         relying on evaluation order semantics, since the C standard leaves
-         them unspecified.  Bug report from Andreas Schwab
-         <schwab@linux-m68k.org>
-
-                                  11/21
-                                  -----
-lib/sh/shquote.c
-       - sh_single_quote and sh_double_quote now take a const char *
-         argument.  Fixes problem pointed out by Joachim Schmitz
-         <jojo@schmitz-digital.de>
-
-externs.h
-       - change extern declarations for sh_single_quote and sh_double_quote
-
-lib/sh/strchrnul.c
-       - make sure that return value is cast to (char *) if we're using a
-         part of the passed (const char *) argument.  Fixes problem pointed
-         out by Joachim Schmitz <jojo@schmitz-digital.de>
-
-lib/glob/gmisc.c
-       - fix a typo that mixed up defines for LPAREN and RPAREN.  Bug and
-         fix from Andreas Schwab <schwab@linux-m68k.org>
-       - use WLPAREN and WRPAREN in multibyte character environments
-       - fixed typos using L'cc' in a non-wide-char environment
-
-lib/readline/complete.c
-       - fix rl_filename_completion_function to dequote users_dirname if
-         there is a filename dequoting function (as well as dirname), since
-         users_dirname gets tacked back onto the beginning of the possible
-         completions and then requoted.  Bug reported by Andreas Schwab
-         <schwab@linux-m68k.org>
-
-                                  11/22
-                                  -----
-lib/readline/parens.c
-       - the `blink-matching-paren' variable should default to off
-
-                                  11/23
-                                  -----
-subst.h
-       - add extern declaration for close_new_fifos()
-
-lib/sh/fnxform.c
-       - fix curencoding to return the character past the `.', not a string
-         beginning with `.'
-
-lib/sh/unicode.c
-       - fix stub_charset to do the same cut-off at `@' as curencoding().
-         These two functions should be combined
-
-builtins/printf.def
-       - document new %(datefmt)T modifier in help text
-
-                                  11/24
-                                  -----
-parse.y
-       - fix `W' case in decode_prompt_string: memmove was copying one too
-         few bytes and missed the closing NUL.  Bug report from Tim Mooney
-         <Tim.Mooney@ndsu.edu>
-
-                                  11/26
-                                  -----
-subst.c
-       - in expand_word_internal, don't add quoted nulls to partially-
-         quoted strings if the word will not be subjected to word splitting
-         later (which will remove the quoted null).  Fixes bug reported by
-         Rocky Bernstein <rocky.bernstein@gmail.com>
-
-                                  11/28
-                                  -----
-subst.c
-       - change multibyte case of match_pattern to revert to match_upattern
-         if neither the pattern nor the string has any multibyte characters
-
-alias.c
-       - fix tests of backslash-escaped characters in skipquotes, skipws,
-         rd_token to check for backslash at EOS and not go past the end.
-         Fixes debian bug 603696 reported by Tim Small <tim@buttersideup.com>
-
-include/shmbchar.h
-       - new file, mbchar.h from gnulib minus the <stdbool.h> include
-
-lib/sh/shmbchar.c
-       - new file, mbchar.c from gnulib with additions
-       - moved mbstrlen from subst.c to here, changed initialization of mbs
-       - change mbstrlen to use is_basic to avoid calls to mbrlen for ASCII
-         chars; code hints from gnulib
-       - don't copy mbs and mbsbak if we're not calling mbrlen
-
-                                  11/29
-                                  -----
-lib/glob/smatch.c
-       - change xstrmatch to use internal_strmatch() if the pattern and
-         string don't have any multibyte characters
-
-                                  11/30
-                                  -----
-include/shmbutil.h
-       - change ADVANCE_CHAR and ADVANCE_CHAR_P macros to use is_basic and
-         only call mbrlen and copy state and state_bak if is_basic returns
-         false (non-ASCII).  Called all over the place.
-       - change rest of macros except BACKUP_CHAR and BACKUP_CHAR_P in the
-         same way
-
-                                  12/2
-                                  ----
-subst.c
-       - audit all calls to string_list and make sure caller can handle a
-         NULL return value.  Fixes bug reported by David Rochberg
-         <rochberg@google.com>
-
-general.h
-       - change sh_wassign_func_t to take an additional argument: an int
-         flags word
-
-subst.c
-       - change do_word_assignment to take an additional argument to match
-         wassign_func_t; change callers
-       - change call to (*assign_func) in expand_word_list_internal to match
-         new wassign_func_t prototype
-       - (*assign_func) passes 1 as additional arg if the simple command is
-         a builtin or function, in which case the assignment to the
-         temporary env should take effect
-
-variables.c
-       - change assign_in_env to take an additional argument to match
-         wassign_func_t; change callers
-       - move call to sv_ifs from dispose_temporary_env to
-         dispose_used_env_vars; we don't need to do it if called from
-         merge_temporary_env
-
-                                  12/3
-                                  ----
-variables.c
-       - change dispose_temporary_env to maintain a list (tempvar_list) of
-         variables that need to be handled specially.  If a variable that
-         gets freed by push_temp_var or propagate_temp_var is one of the
-         variables that the shell handles specially (IFS, LANG, etc.), it's
-         stored on the list.  For each variable in this list,
-         dispose_temp_var calls stupidly_hack_special_variables.
-       - assign_in_env calls stupidly_hack_special_variables if flags arg
-         is non-zero, so variable assignments affect current shell
-         execution environment if a builtin or function is being executed.
-         Fixes bug reported by Bruno Haible <bruno@clisp.org>
-
-                                  12/5
-                                  ----
-subst.c
-       - use mbsmbchar on both string and pattern in match_pattern instead
-         of strlen and mbstrlen; only go through the strings once
-
-                                  12/6
-                                  ----
-lib/readline/kill.c
-       - in rl_yank_last_arg, only switch directions if the `count'
-         argument is < 0, not < 1.  This makes explicit count arguments of
-         0 work as expected.  Fixes bug reported by Dennis Williamson
-         <dennistwilliamson@gmail.com>
-
-doc/bash.1,lib/readline/doc/{readline.3,rluser.texi}
-       - fix documentation for yank-last-arg to make it clear how the count
-         argument is set and how second and subsequent calls treat any
-         numeric argument
-
-doc/{bash.1,bashref.texi}
-       - slight changes to the description of test
-       - change \(bv to `|'; it seems that many `internationalized' versions
-         of groff don't render that as a vertical bar.  Fixes Debian bug
-         603805
-
-                                  12/10
-                                  -----
-configure.in
-       - changed release status to 4.2-beta
-
-                                  12/14
-                                  -----
-[bash-4.2-beta frozen]
-
-                                  12/18
-                                  -----
-redir.c
-       - change REDIRECTION_ERROR macro to accept a third argument: an
-         additional file descriptor to close before returning and error (pass
-         -1 to do nothing)
-       - change calls to REDIRECTION_ERROR to close appropriate file
-         descriptors.  Fixes bug reported by Andreas Schwab
-         <schwab@linux-m68k.org>
-       - make sure to close any file descriptors opened for REDIR_VARASSIGN
-         before returning an error
-
-                                  12/19
-                                  -----
-expr.c
-       - move processing of unary `-' and `+' to exp1 from exp0 to avoid
-         precedence problems.  Fixes bug reported by <12bric@gmail.com>
-
-                                  12/22
-                                  -----
-lib/sh/fpurge.c
-       - updated version from gnulib, inlined gnulib stdio-impl.h
-
-                                  12/24
-                                  -----
-doc/bash.1
-       - change the description of while and until to use `list-1' and
-         `list-2', similar to the Posix description.  Suggested by
-         Jeff Haemer <jeffrey.haemer@gmail.com>
-
-                                  12/27
-                                  -----
-execute_cmd.c
-       - slight changes to execute_command_internal and how it captures the
-         exit status of (command) and shell control structures with pipes to
-         avoid multiple variable assignments to last_command_exit_value
-       - change to execute_simple_command so that parent branches of shells
-         forked to execute commands in pipelines don't change $? to 0
-         (if (pipe_out != NO_PIPE) result = last_command_exit_value).  Fixes
-         bug reported by Damien Nadà<dnade.ext@orange-ftgroup.com>
-
-                                  12/28
-                                  -----
-configure.in
-       - changed version to bash-4.2-rc1
-
-                                1/2/2011
-                                --------
-lib/readline/complete.c
-       - fix rl_filename_completion_function to dequote and save users_dirname
-         before calling any function to transform the directory name passed
-         to opendir().  Fix from Andreas Schwab <schwab@linux-m68k.org>
-
-lib/readline/doc/
-       - make sure to note that rl_directory_completion_hook cannot modify
-         the directory name argument if it returns 0
-
-bashline.c
-       - make sure that bash_directory_completion_hook consistently returns
-         non-zero whenever it modifies its directory name argument 
-
-lib/readline/terminal.c
-       - don't bother with the declarations (extern or not) for PC, BS, and
-         UP if NCURSES_VERSION is defined, since ncurses defines local
-         versions of those symbols in the library.  Fixes bug most recently
-         reported by Kevin Scott <kscott@eznet.net> against Mac OS X
-
-include/filecntl.h
-       - make sure O_TEXT and O_BINARY are defined to avoid Windows-specific
-         (or cygwin-specific) code.  This and the following changes from
-         Eric Blake <eblake@redhat.com> for current cygwin systems
-
-input.h
-       - add a B_TEXT flag to note when the underlying file descriptor is
-         opened in O_TEXT mode
-
-lib/sh/tmpfile.c
-       - make sure temporary files are opened in binary mode (O_BINARY) on
-         systems where it matters
-
-input.c
-       - make sure to set the B_TEXT flag if the file descriptor has O_TEXT
-         in its flags (returned by fcntl)
-       - change b_fill_buffer to compensate for lseek() and read() returning
-         different offsets on files opened in O_TEXT mode
-       - cygwin now is able to lseek on files and set the unbuffered and text
-         flags appropriately, so can use the general test for a seekable fd
-       - now that cygwin uses O_TEXT or O_BINARY appropriately, we no longer
-         have to manually translate \r\n to \n
-
-redir.c
-       - remove the Cygwin-1.1 code from here_document_to_fd; cygwin is now
-         up to version 1.7 and can unlink an open file descriptor
-       - make sure temporary files used for here documents are opened in
-         binary mode (O_BINARY) on systems where it matters
-
-execute_cmd.c,parse.y
-       - make sure error messages use all printable characters in filenames
-         and strings
-
-{builtins/evalfile,shell,subst}.c
-       - remove cygwin-specific calls to setmode to force file descriptors
-         into text mode, since we're using text or binary mode according to
-         the mode of the mount point
-
-execute_cmd.c
-       - when creating pipes and making them stdin and stdout, make sure to
-         tell stdio that the mode of the underlying file descriptor may have
-         changed from text to binary
-
-subst.c
-       - when creating pipes for command substitution, make sure to
-         tell stdio that the mode of the underlying file descriptor may have
-         changed from text to binary
-
-                                   1/3
-                                   ---
-doc/{bash.1,bashref.texi}
-       - changes to the readonly documentation suggested by Jan Schampera
-         <jan.schampera@web.de>
-
-                                   1/4
-                                   ---
-builtins/read.def
-       - change bind_read_variable to consistently return NULL if there is some
-         kind of variable assignment error (e.g., assigning to a readonly or
-         noassign var)
-       - change read builtin to only call stupidly_hack_special_variables if
-         bind_read_variable returns non-NULL
-       - change read_builtin to return EXECUTION_FAILURE if there is an
-         assignment error (e.g., assigning to a readonly or noassign var).
-         Fixes bug reported by Jan Schampera <jan.schampera@web.de>
-
-                                   1/5
-                                   ---
-builtins/{help.def,common.c}
-       - change uses of a builtin's `short_doc' member to go through gettext
-         for possible translation before being displayed.  Suggestion from
-         <goeran@uddeborg.se>
-
-                                   1/6
-                                   ---
-shell.h
-       - new exit status define: EX_MISCERROR (2)
-
-builtins/getopts.def
-       - change getopts_bind_variable to return error if an attempt is made
-         to assign to a variable with the `noassign' attribute
-       - change getopts_bind_variable to return EX_MISCERROR if attempt is
-         made to assign to readonly or noassign variable
-
-builtins/cd.def
-       - change setpwd to return an int and return failure when PWD is
-         readonly; success otherwise
-       - change bindpwd to return failure if setpwd returns EXECUTION_FAILURE.
-         Inspired by message from Eric Blake <eblake@redhat.com>
-       - change pwd builtin to return failure if PWD is readonly (and setpwd
-         returns EXECUTION_FAILURE)
-
-                                   1/8
-                                   ---
-lib/sh/eaccess.c
-       - on FreeBSD and Solaris, check the result of access(2) with mode X_OK
-         for root by checking sh_stataccess().  Same code as was added to
-         check result of eaccess().  Fixes Solaris 11 problem reported by
-         <cloyce@headgear.org>
-
-                                  1/10
-                                  ----
-builtins/set.def
-       - add description of `--' to help text
-
-[bash-4.2-rc1 released]
-
-                                  1/14
-                                  ----
-lib/readline/readline.h
-       - fix/update description of rl_directory_rewrite_hook
-
-lib/readline/complete.c
-       - if there are no directory rewrite or completion hooks, set dirname
-         to a duplicate copy of users_dirname instead of calling the
-         dequoting function again
-
-bashline.c
-       - use rl_directory_rewrite_hook instead of rl_directory_completion_hook
-         to avoid changing the directory name the user typed, other than
-         dequoting it.  Fixes bug introduced by changes to directory
-         completion hook, pointed out first by William Bader
-         <william.bader@gmail.com>
-
-                                  1/16
-                                  ----
-lib/sh/strftime.c
-       - portability and other (int->long) updates from Aharon Robbins
-         <arnold@skeeve.com>
-
-configure.in
-       - change release level to rc2
-
-                                  1/17
-                                  ----
-execute_cmd.c
-       - short-circuit select builtin if read_builtin returns anything but
-         EXECUTION_SUCCESS, not just EXECUTION_FAILURE.  Fixes bug reported
-         by Pierre Gaston <pierre.gaston@gmail.com>
-
-                                  1/19
-                                  ----
-execute_cmd.c
-       - change execute_simple_command to save and restore the values of
-         executing_builtin and executing_command_builtin before discarding
-         the unwind-protect frame.  Bug and fix from Werner Fink
-         <werner@suse.de>
-
-                                  1/24
-                                  ----
-variables.c
-       - change brand to set rseed to a known, constant value if it's 0,
-         so the sequence is known.  Fixes issue reported by Olivier
-         Mehani <shtrom@ssji.net>
-
-                                   2/2
-                                   ---
-braces.c
-       - make sure to pass an `int' argument to asprintf in mkseq.  Fixes
-         bug reported by Mike Frysinger <vapier@gentoo.org>
-
-                                   2/5
-                                   ---
-lib/glob/gmisc.c
-       - fix wmatchlen and umatchlen to initialize all state variables.  Fix
-         from Andreas Schwab <schwab@linux-m68k.org>
-
-jobs.c
-       - change wait_for to call restore_sigint_handler right after exiting
-         the wait loop, instead of right before function returns.  Reduces
-         the window for a SIGINT to be lost because a child does not exit      
-         due to SIGINT
-
-                                   2/7
-                                   ---
-configure.in
-       - changed release status to `release'
-
-                                   2/9
-                                   ---
-execute_cmd.c
-       - make sure some variables are declared as volatile if necessary.  Bug
-         report and fix from Eric Blake <eblake@redhat.com>
-
-[bash-4.2 frozen]
-
-                                  2/11
-                                  ----
-print_cmd.c
-       - in indirection_level_string, change to simpler test of result of
-         MBLEN (< 0 instead of MB_INVALIDCH)
-
diff --git a/CWRU/old-changelogs/CWRU.chlog.v2 b/CWRU/old-changelogs/CWRU.chlog.v2
deleted file mode 100644 (file)
index a494dd3..0000000
+++ /dev/null
@@ -1,584 +0,0 @@
-
-This documents the changes between the first `public' release of CWRU bash
-and this, its second release.  It summarizes, without going into detail,
-the changes that have been made. 
-
-NEW FEATURES
-
-       o `getopts' builtin, as specified by Posix.2
-
-       o new configuration variable HAVE_UNISTD_H, used to include
-         <unistd.h> and test for Posix features
-
-       o `ulimit' has new -p and -n options to report the pipe buffer size
-         and number of available file descriptors, respectively
-
-       o allow SIGCHLD to be trapped and useful behavior to result if it is
-
-       o Posix termios and signal code for readline and the shell itself
-
-       o can optionally use the GNU termcap library
-
-       o new output for `times' builtin that looks like ksh:
-
-               shell-user shell-sys
-               child-user child-sys
-
-       o `ulimit' limits now apply to both shell and its children
-
-       o new machines.h entries
-
-       o no longer does the costly `close file descriptors 3-NOFILE'
-         each time it exec's a program -- now uses the close-on-exec
-         flag for the files it fiddles with
-
-NOTABLE BUG FIXES
-
-       o jobs.c only sets and gets the tty state in an interactive shell
-
-       o bash does better process group checking on Posix systems, eliminating
-         some error messages
-
-       o fix for `infinite login' bug on System V machines when executing a
-         script from a .bash_profile
-
-       o the `trap' command now behaves as 1003.2 specifies, as of draft 9
-
-       o restore original terminal process group upon exit, so as to not
-         confuse a parent Bourne shell
-
-       o `bash file', where `file' is a binary file, now reports an error
-
-       o shells started with `-s' now execute the .bashrc file
-
-
-CHANGES (by date and files affected)
-                                9/20 - 9/30
-                                -----------
-
-builtins.c, builtins.c.posix
-       - added getopts help text
-       - removed extra "let" from `let' error message
-       - added correct extern definition for list_rest_of_args() to shift
-         builtin
-
-jobs.c, jobs.c.posix
-       - removed bogus call to set_process_resource_limits() from
-         make_child() as a consequence of redoing `ulimit'
-       - initialize shell_tty to -1
-       - only get or set the tty state after a command completes if the shell
-         is interactive
-       - use shell_tty in get_tty_state() and set_tty_state() instead of
-         reopening /dev/tty every time
-
-jobs.c.posix
-       - do better pgrp checking in initialize_jobs() to avoid error message
-         about not being able to setpgid(2) on startup
-       - changed tcsetattr() error messages slightly
-
-expr.c
-       - avoid advancing beyond the end of the expression when reporting an
-         error
-       - NULL expressions now return 0 ($[], for example)
-
-mailcheck.c
-       - #ifdef redundant definition of NOW, which is also defined in
-         general.h
-
-variables.c
-       - initialize $OPTIND and $OPTERR to 1 for getopts
-       - add correct extern definition for itos()
-
-subst.c
-       - if $IFS is unset, it defaults to " \t\n"
-       - add special variable hack functions for $OPTIND, $OPTERR
-
-builtins.h
-       - add definition for getopts_builtin()
-
-getopts.c
-       - new file, source for `getopts' builtin command
-
-ulimit.c
-       - remove the `struct ResourceLimit' stuff; limits now apply to both
-         the shell and its children
-       - took out set_process_resource_limits(), let ulimit(2) or
-         setrlimit(2) do the work
-       - changed error messages to use builtin_error() instead of
-         report_error()
-       - changed the block factor for RLIMIT_CPU from 1000 (milliseconds)
-         to 1 (seconds)
-
-
-                                   10/1
-                                   ----
-
-builtins.c, builtins.c.posix
-       - changed `test' help text for -ef option
-       - made `trap -' reset all signals to their original values
-
-machines.h
-       - added a new configuration variable, HAVE_UNISTD_H, which should
-         be defined if /usr/include/unistd.h exists
-
-cpp-Makefile
-       - make HAVE_UNISTD_H show though from machines.h to the bash code
-       - add an explicit build line for ulimit.o so `psize.sh' is run
-         each time ulimit.o is remade.  This is kind of flaky.
-config.h
-       - include <unistd.h> if HAVE_UNISTD_H is defined, use it to test
-         for various Posix features (job control, signals, termios)
-
-jobs.c, jobs.c.posix
-       - restore original signals to child process in make_child()
-       - keep count of number of children that exit or stop in flush_child(),
-         and call a trap handler for SIGCHLD that many times.  This allows
-         SIGCHLD to be trapped without disaster occurring.
-
-shell.c
-       - If we're on a Posix system, initialize signals the Posix way
-       - clear signal mask in initialize_signals() if on Posix system
-       - set login_shell and make_login_shell to 0 upon entry to main(),
-         solving the System V infinite login bug
-
-trap.c
-       - preserve value of $? when running traps
-       - don't allow a signal ignored upon entry to the shell to be trapped
-         or reset to the default
-       - do not allow trapping SIGCHLD to change the signal handler, but
-         save the commands to be executed.  Run these commands from the
-         SIGCHLD signal handler for each child that exits or stops
-       - don't allow SIGCHLD signal handler to be overridden or have SIGCHLD
-         ignored
-       - new function added to restore all trapped signals to their original
-         values
-
-ulimit.c
-       - add new -p option to report pipe buffer size.  This is flaky on 
-         all non-Posix systems (those that do not define PIPE_BUF).
-
-readline/readline.c
-       - add Posix termios and signal code
-
-                                   10/2
-                                   ----
-
-jobs.c, jobs.c.posix
-       - only fetch terminal state in initialize_jobs() if the shell is
-         interactive
-
-                                   10/3
-                                   ----
-
-machines.h
-       - new entry for Stardent
-       - new variable USE_TERMCAP_EMULATION, for those systems that have the
-         termcap(3) functions in the curses library, but have not linked 
-         /usr/lib/libtermcap.a to libcurses.a
-
-cpp-Makefile
-       - use USE_TERMCAP_EMULATION to set TERMCAP and TERMLIB
-
-siglist.c, alias.h, general.c
-       - declare the return values of xmalloc() and malloc() for the benefit
-         of machines which cannot cope with simply casting the return value
-
-shell.c, execute_cmd.c
-       - change the re-execution of main() when executing a shell script to
-         use setjmp/longjmp
-
-builtins.c
-       - add code to change the shell level in exec_builtin(), decrementing
-         it before trying the execve(2) and incrementing it again if that
-         fails
-
-variables.c
-       - new function adjust_shell_level() to change shell level by a
-         specified increment
-       - initialize `noclobber' in shell_initialize(), if we have inherited
-         the `noclobber' variable from a parent shell
-
-ulimit.c
-       - add new option -n, which reports the max number of available file
-         descriptors as reported by getdtablesize().  On SunOS 4.1, this
-         can be set, too, with setrlimit(RLIM_NOFILE, ...).
-
-                                   10/4
-                                   ----
-
-readline/readline.c
-       - Ultrix turns off system call restart when executing in `Posix mode'
-         (when sigaction(3) is used to set signal handling), so make it use
-         the System V version of shell_getc()
-
-jobs.c.posix
-       - fix a bug in start_job() where `oset' was not initialized in the first
-         call to sigprocmask(), yet was used in subsequent calls
-       - remove the `shadow' instance of shell_tty_info in the code that sets
-         the line discipline in initialize_jobs()
-
-shell.c
-       - if job control is being used, restore the tty pgrp to its original
-         value so as to not screw the parent
-
-builtins.c, builtins.c.posix
-       - make the output of `times' look more like ksh
-
-                                   10/5
-                                   ----
-
-jobs.c.posix
-       - HP/UX no longer needs the signal handler for SIGCHLD reset via a
-         call to signal() in flush_child() -- this breaks job control
-
-machines.h
-       - add HAVE_VPRINTF to HP/UX entry
-
-siglist.c
-       - include <stdio.h>, sprintf(3) requires it on some systems
-
-                                   10/8
-                                   ----
-
-execute_cmd.c
-       - make $LINENO in a function count the number of simple commands
-         executed
-
-                                   10/9
-                                   ----
-
-termcap, cpp-Makefile
-       - new GNU termcap library, cribbed from Emacs.  #define
-         USE_GNU_TERMCAP in machines.h entry to use it.  Small changes
-         required to cpp-Makefile to make it work.  This works on
-         4.3 BSD, at least.
-
-machines.h
-       - add new entry for AIX/370
-
-general.c
-       - sysv_getc() is also needed for Ultrix machines running in Posix
-         mode, so change the #ifdef accordingly (Ultrix passes the
-         SV_INTERRUPT flag to sigvec(2) in sigaction(3)).
-
-subst.c
-       - use sysv_getc() for Ultrix machines running in Posix mode for
-         command subsitution pipe reading
-
-                                   10/10
-                                   -----
-
-shell.c, execute_cmd.c
-       - if the `file' portion of `bash file' is a binary file, report an
-         error and do not attempt to execute it
-
-jobs.c, jobs.c.posix
-       - the code that does the guts of `kill' now sends the SIGCONT to a
-         stopped job after it sends the specified signal, not before
-
-                                   10/11
-                                   -----
-
-parse.y
-       - set +H also turned off putting commands into the history list
-
-shell.c
-       - make shells started with -s read .bashrc
-
-       
-                                   10/14
-                                   -----
-
-expr.c
-       - changed calls to `report_error' to call `builtin_error'.  I don't
-         know if this is exactly right, but it seems to me that an error
-         in an expression shouldn't kill the shell if -e is set.
-
-fc.c
-       - changed `report_error' to `builtin_error'
-
-                                   10/16
-                                   -----
-
-readline/vi_mode.c
-       - repeat count to rl_vi_subst() was incorrectly being ignored
-       - don't call rl_vi_change_case() on an empty line; two calls in
-         a row can cause a seg fault
-
-
-                                   10/17
-                                   -----
-
-execute_cmd.c
-       - give builtins run in pipes a useful setting of top_level to
-         longjmp(2) to on errors
-
-
-builtins.c, builtins.c.posix
-       - replace some occurrences of longjmp (top_level, ...) with simple
-         calls to return (EXECUTION_FAILURE)
-
-                                   10/18
-                                   -----
-
-readline/readline.c
-       - Make O_NDELAY be the same as O_NONBLOCK on Posix systems
-       - Don't use IXANY if it's not defined (some strict Posix systems do
-         not define it)
-       - Posix systems need NOFLSH for c_lflag to avoid flushing the input
-         buffer after a SIGINT, SIGQUIT, or SIGSUSP.  This is still wrong,
-         though.
-
-execute_cmd.c, test.c, general.h
-       - use the Posix S_IS* macros to test file formats instead of explicitly
-         masking with S_IFMT and testing the result.  Macros are provided
-         for those systems that do not have them (like 4.3 BSD).
-
-parse.y
-       - fix expansion of \W in the prompt string so that it works when
-         you're in the root directory
-
-machines.h
-       - add machine description for concurrent in UCB universe
-
-Makefile
-       - make sure $(MFLAGS) is passed to the recursive make of bash-Makefile
-
-                                   10/22
-                                   -----
-
-jobs.c.posix
-       - make sure the NOFLSH bit is turned on in the termios c_lflag word
-         so that typeahead doesn't get flushed on receipt of signals. THIS
-         HAS BEEN TAKEN OUT.
-
-                                   10/23
-                                   -----
-
-execute_cmd.c
-       - change extract_colon_unit() to increment the path index past a
-         colon when it is called, before it tries to get the next component
-         from the path.  Without doing this, `.' was always found as the
-         second component in the path, whether it was actually there or not.
-
-trap.c, shell.c
-       - made SIGINT trap handling act the same as that of ksh and the BSD
-         sh.  As a side effect (really the reason for doing this in the
-         first place), `read' is now interruptible.
-Makefile
-       - made the CPPFLAGS definition useful by passing it to cpp when
-         making bash-Makefile from cpp-Makefile
-       - made the `echo' line when creating bash-Makefile really echo by
-         quoting the redirection to bash-Makefile
-
-general.c
-       - make fcntl.h be included only if NO_DUP2 is defined
-
-                                   10/24
-                                   -----
-cpp-Makefile
-       - make libreadline.a depend on the objects, not the sources.  Without
-         this, you could delete on of the .o files to try to force a library
-         rebuild and have it not happen.
-
-                                   10/25
-                                   -----
-
-shell.c
-       - make a flag of `-' signal the end of option arguments, like the
-         4.3 BSD sh, and in accordance with the Posix command line syntax
-         standard
-
-shell.c, builtins.c, builtins.c.posix
-       - shuffle some code around so -o option can be given on the command
-         line -- there's no reason why it shouldn't be allowed.
-
-variables.c, variables.h, execute_cmd.c, builtins.c, builtins.c.posix, shell.c,
-subst.c, bashline.c, hash.h, variables.h
-       - change the implementation of shell function and variable storage to
-         a hash table instead of a singly-linked list
-
-make_cmd.c, shell.c
-       - bug reports only get mailed out if MAIL_BUG_REPORTS is defined
-
-                                   10/29
-                                   -----
-
-bashline.c
-       - some random cleanups from bfox
-       - make sure alias expansion is attempted in shell_expand_line () only
-         if ALIAS is defined
-
-hash.c
-       - add default case to make_hash_table to force the number of buckets
-         in the table to be the default if 0 is passed as the number of
-         buckets
-
-variables.c
-       - make initialize_shell_variables () call make_hash_table () with an
-         argument of 0 again (see previous entry).
-
-
-variables.c, builtins.c, builtins.c.posix
-       - cleanups because map_over(), all_vars(), all_shell_variables(), and
-         all_shell_functions () can possibly return NULL lists, and such
-         lists should not be sorted or freed
-
-trap.c
-       - make sure we declare `extern int last_command_exit_value' in
-         run_interrupt_trap ().
-
-variables.c
-       - Don't override a HOSTTYPE variables that comes in from the
-         environment
-
-                                   10/30
-                                   -----
-
-variables.c
-       - Fix a bug in variables.c: make_var_array () where it called
-         array_len on a NULL list
-
-builtins.c, builtins.c.posix
-       - Add a description of `-m' to the help for the `set' builtin
-         command
-
-                                   11/1
-                                   ----
-
-general.c
-       - added a definition of bzero() for USG machines, because
-         there is a reference to it in the new variable hashing code
-
-                                   11/2
-                                   ----
-
-shell.c
-       - set forced_interactive to 0 in shell_reinitialize(), otherwise
-         shell scripts get marked as interactive
-
-                                   11/6
-                                   ----
-
-execute_cmd.c
-       - eliminated the costly loop from 3 to NOFILE closing all file
-         descriptors each time we exec a command by setting all file
-         descriptors > 2 opened as the result of a redirection and internal
-         to the shell to be close-on-exec, as well as all file descriptors
-         opened to save others in add_undo_redirect().  `internal to the
-         shell' means that the redirections were attached to shell builtin.
-         Other `internal' redirections include while, for, and until
-         loops, and shell functions.  I got scared after reading that
-         s5r4 provides 2048 fd's per process -- 2045 (mostly useless)
-         close() calls on *each executed program*?  No way, no how.
-
-         This caused the other fixes for this file to be discovered.
-
-         Unfortunately (there always seems to be a catch), 4.3 BSD up to
-         4.3-tahoe leaves a file descriptor open in setpwent() if you're
-         using dbm password files.  4.3+NFS does this if you're not using
-         YP.  Arghhhhhhh...  I haven't decided yet what to do about this;
-         probably just set fd 3 to close-on-exec when the shell is
-         initialized.
-
-execute_cmd.c
-       - removed the call to `add_undo_redirect()' when a file is being
-         closed with the redirection operators [n]<&- and [n]>&-.  The
-         effect was to make those operators useless.  Sad to say, I was
-         probably the dummy who put it in there...
-
-execute_cmd.c
-       - when calling fcntl(redirector, F_GETFD, 0) in do_redirection() to
-         find out if a file descriptor is active, do it only if redirector
-         is not the same as `fd', which you've just opened.  This has
-         spectacularly bad consequences if you do something like
-
-               exec 3</dev/tty 4>/tmp/foo 5</dev/null
-
-         I'm probably to blame for this, too...
-
-execute_cmd.c
-       - when saving a file descriptor in add_undo_redirect, make sure we
-         save the state of the close-on-exec flag, and restore it when
-         dup2'ing the saved fd back to the orignal.
-
-execute_cmd.c
-       - when performing a redirection that causes us to open a file, make
-         sure we at least add an undo record to close the file, even if
-         the file descriptor is not already active
-
-execute_cmd.c
-       - when duplicating a file descriptor as the result of a redirection
-         instruction, make sure to manually duplicate the state of the
-         close-on-exec flag
-
-                                   11/13
-                                   -----
-
-execute_cmd.c
-       - finally tracked down and stamped out the persistant bug that caused
-         the shell to hang when doing a command like "history | more" when
-         there was more than a pipeful of text to send to `more' and you quit
-         out of `more'after the first screenful.  An extra read end of the
-         pipe was being left open in the shell started to run `history', the
-         consequence being that that shell at the beginning of the pipeline
-         would never get the SIGPIPE that would cause it to exit.  The fix
-         is kind of strange: pass around a file descriptor to close whenever
-         a child process is created in either execute_command_internal or
-         execute_simple_command.  We just pass the file descriptor that we
-         want closed to the instance of execute_command_internal that runs
-         the first half of the pipeline, and it gets closed just like we
-         want.
-
-         In the future, this can (and probably should) be made into a bitmap
-         of file descriptors to close.  It wouldn't have to be big, 16 should
-         be enough given the ability to do close-on-exec.
-
-builtins.c, builtins.c.posix
-       - changed the one call to execute_command_internal to add the extra
-         parameter needed by the above fix.
-
-unwind_prot.c
-       - make without_interrupts() block SIGINT on capable systems (Posix
-         and systems with BSD sigs) instead of ignoring it, which causes
-         interrupts to be dropped.  Blocking is what you want, anyway.
-
-execute_cmd.c
-       - add an unwind_protect for the redirections for a function or
-         builtin.  To see why this is needed, define a function shcat:
-
-               shcat()
-               {
-                       while read line
-                       do
-                               echo "$line"
-                       done
-               }
-
-         Now execute "shcat < INSTALL" and try to interrupt it.  Bash will
-         keep reading the lines from INSTALL and trying to execute them
-         until EOF, at which point the shell exits.
-
-                                   11/14
-                                   -----
-
-execute_cmd.c
-       - a subshell spawned to execute a function or a builtin with a pipe
-         or an asynchronous function or builtin should have login_shell and
-         interactive set to 0.  That way, if someone is stupid enough to
-         pipe to `exit' from a login shell, the subshell won't try to exec
-         .bash_logout.
-
-                                   11/16
-                                   -----
-builtins.c, builtins.c.posix
-       - exit status of `type' was wrong for executable files, hashed and
-         unhashed
-
-bashline.c
-       - Made bash_complete_filename_internal take just about everything
-         as a possible filename character.  It still can't do completion
-         of a filename containing blanks if you type one of the blanks,
-         though -- it needs the blanks-as-word-separators logic to work
-         at all.
diff --git a/CWRU/old-changelogs/CWRU.chlog.v3 b/CWRU/old-changelogs/CWRU.chlog.v3
deleted file mode 100644 (file)
index 932586d..0000000
+++ /dev/null
@@ -1,1119 +0,0 @@
-This documents the changes between the second `public' release of CWRU bash
-and this, its third release.  It summarizes, without going into detail, the
-changes that have been made. 
-
-NEW FEATURES
-
-       o Some performance work was done.  Scripts are now somewhat faster.
-         Bash will never be a speed demon -- it allocates, frees, and
-         copies way too many times.
-
-       o Added a new readline variable `prefer-visual-bell'.  If this is
-         set, and the `vb' termcap capability exists, visual rather than
-         audible bells will be used.
-
-       o `bash file' will now search the $PATH for `file' if it is not
-         found in the current directory.
-
-       o new machines.h variables: HAVE_MULTIPLE_GROUPS, HAVE_RESOURCE
-
-       o new machines.h entries: AIX/PS2, System V.4 on 386, AIX/370, Ardent
-         Titan, DG AViiON, Harris Nighthawk, SGI Iris
-
-       o all filenames are now fewer than 14 characters
-
-       o The FIGNORE variable was implemented
-
-NOTABLE BUG FIXES
-
-       o When expanding commands, word splitting is no longer performed on
-         all words, but only the output of command, arithmetic, and variable
-         and parameter substitution
-
-       o The close-on-exec code now also passes around a bitmap of file
-         descriptors to close in child processes.  This is necessary
-         because of the way bash does pipes.  Details on request.
-
-       o Fixed readline to do correct cursor motion when using Sun's
-         shelltool or cmdtool.
-
-       o Fixed command substitution so that old-style substitution (``)
-         passes the characters between the backquotes through verbatim.
-
-       o Fixed reading here documents to obey newline quoting
-
-                                   11/19
-                                   -----
-nojobs.c
-       - removed bogus call to set_process_resource_limits
-
-test.c
-       - changed references to SYSV to USG
-
-readline/readline.c
-       - added support for visible bells, turned on by the startup file
-         variable "prefer-visible-bell"
-       - changed rl_signal_handler() so that sigsetmask() is not called
-         on vanilla SYSV machines
-       - made include declarations correct for USG machines that define
-         TIOCGWINSZ in sys/ioctl.h
-
-variables.c
-       - s5r3 invokes getenv() before main() in some cases.  Make sure
-         that the variable hash table is created there if it does not
-         exist.  (BSD systems using gprof also do this, by the way.)
-
-                                   11/20
-                                   -----
-readline/readline.c
-       - Make sure HACK_TERMCAP_MOTION is not defined.  It's faster to
-         print a character than an escape sequence for a non-destructive
-         space, and it screws up on OpenWindows shelltool and cmdtool.
-
-subst.c
-       - Finally fixed the word splitting bug.  Bash now splits only the
-         results of command, parameter, and arithmetic expansion that do
-         not appear in double quotes.  As currently implemented, the change
-         has expand_word_internal return a flag indicating whether or not
-         it expanded something.  If not, the word is not split.  This is
-         only noticed by expand_words_1; all other functions that call
-         expand_word_internal ignore the result -- they are either supposed
-         to or not supposed to do word splitting and they take care of it
-         themselves.  This latter bit may have to be changed later.
-
-readline/emacs_keymap.c
-       - Make M-TAB insert a tab.  The binding had been inadvertently
-         omitted.
-
-builtins.c, builtins.c.posix
-       - make read_builtin() call string_list_dollar_star when more words
-         are read than variables specified, because Posix specifies that in
-         this case, the intervening separators are preserved in the
-         remaining words (``the leftover words and their intervening
-         separators are assigned to the last var'').  This allows the
-         following to work correctly:
-
-               while read line
-               do
-                       echo "$line"
-               done < /etc/passwd
-
-subst.c
-       - remove from list_string the requirement that the word be quoted to
-         make sequences of characters in $IFS expand to separate arguments.
-         I can't remember why it was there.
-
-builtins.c, builtins.c.posix
-       - both ksh and the s5r3 sh remove the trailing newline from a line
-         input to `read', so now bash does, too.
-
-                                   11/21
-                                   -----
-execute_cmd.c
-       - Finally do things the *right* way, and pass around a bitmap of
-         file descriptors to close when forking.  The way bash does
-         pipes forces this.
-
-builtins.c, builtins.c.posix
-       - change the call to execute_command_internal in parse_and_execute
-         to call it with an empty bitmap of file descriptors to close.
-
-shell.c
-       - make the fd that we open to read a script argument be close-on-exec
-
-shell.c, variables.c, readline/readline.c
-       - add endpwent() everywhere getpwnam or getpwuid is called -- they
-         leave an open file descriptor on systems with YP code derived
-         from Sun's 3.x release.
-
-
-                                   11/25
-                                   -----
-builtins.c, builtins.c.posix
-       - use the same logic for locating a program when in the exec builtin as
-         when finding a program normally -- pathnames with slashes in them
-         anywhere are not looked up via $PATH.
-
-shell.c
-       - when invoked as `bash file', use $PATH to look up `file', using the
-         same logic as the `.' builtin.  (Said logic is possibly faulty --
-         files with slashes in their names are still looked up in the path.
-         This is different from ksh86, at least.)  Do this only if `file'
-         is not found in the current directory.
-       - when invoked as an interactive login shell, close all file
-         descriptors < 20 first thing.  There is a fairly common bug in the
-         Sun NFS code that leaves an open file descriptor when you use one
-         of the getpw* C library functions. 
-
-                                   11/28
-                                   -----
-shell.c
-       - make sure history_expansion is set to 0 if interactive is set to 0.
-         This fix makes rn's mbox.saver run correctly, rather than report
-         the famous `Event not found' error.
-
-                                   11/29
-                                   -----
-variables.c
-       - make sure the hash table is created in getenv if necessary on all
-         systems; gprof requires it.
-
-builtins.c, builtins.c.posix
-       - make read return 1 only on EOF
-
-shell.c
-       - make `bash file' look through $PATH only if ./file does not exist.
-         (bug fix for previous improvement)
-
-readline/readline.c
-       - need to turn off CRMOD when using the BSD tty driver so that extra
-         carriage returns are not generated
-
-subst.c, parse.y
-       - changes so that characters between backquotes in double quotes are
-         passed through verbatim, so this will work: echo "ab `echo "hi"` cd"
-         echoes ab hi cd.  The fixes are to string_extract_double_quoted and
-         read_token.
-
-subst.c
-       - small change in command substitution error message printed when
-         pipe(2) fails -- `backquote' --> `command'
-
-                                   12/1
-                                   ----
-parse.y, shell.c, builtins.c, builtins.c.posix, make_cmd.c
-       - changed the way parsing of here documents works in the presence
-         of continued lines (unquoted backslash-newline pair or via quoting).
-         Now the shell reads up to an unquoted newline before trying to
-         read the contents of the here-document (that's the way sh works).
-         The changes are spread out over multiple files.
-
-         The cases that this fixes are these:
-
-               cat << EOF | sed -n \
-                       -e 'blah blah...' \
-                       -e 'more more...'
-               input
-               to
-               cat
-               for
-               sed
-               EOF
-
-               cat << EOF | echo 'a b c
-               d e f
-               g h i'
-               EOF
-
-         Previously, the yacc-generated bash parser would resolve the
-         `<< EOF' redirection and immediately try to create the here
-         document, and the rest of the command would become part of
-         the here document.
-
-         Changes by file:
-               parse.y:
-                       added two new variables, need_here_doc, and
-                       redirection_needing_here_doc.  The yacc actions
-                       associated with the here-document productions
-                       were modified to set these variables appropriately.
-                       Changed read_token to read the text of any pending
-                       here-documents just before it returns an unquoted
-                       newline to the parser.
-               make_cmd.c:
-                       moved the code that reads the text of the
-                       here-document out of make_redirection into a new
-                       function named make_here_document.  The cases in
-                       make_redirection don't do anything now; they just
-                       set the EOF marker and return
-               shell.c:
-                       added a wrapper function around yyparse called
-                       parse_command that initializes the above variables,
-                       calls parse_command, then makes the here-document
-                       if necessary by calling make_here_document (usually
-                       it doesn't need to; read_token has already done it).
-               builtins.c.posix:
-               builtins.c:
-                       changed the call to yyparse to a call to parse_command
-                       (in parse_and_execute)
-
-subst.c
-       - for some reason which I have not yet fully divined, a shell whose
-         standard output (file descriptor 1) is closed cannot perform
-         backquote substitution if the child closes both sides of the pipe
-         after dup2(fildes[1], 1).  The obvious fix is to not close 
-         fildes[0] in the child, but it's not intuitive.  I got the example
-         from the Dec Ultrix 4.0 release notes:
-
-               exec >&-
-               echo `echo hi` >&2
-
-         The 4.3 BSD sh has the same problem.  I'm stumped.
-
-         (LATER NOTE:  I'm not stumped anymore.)
-
-                                   12/2
-                                   ----
-shell.c
-       - shells started to execute scripts (`bash file') should set
-         remember_on_history and history_expansion to 0.
-       - redid maybe_execute_file to eliminate a possibly unnecessary
-         call to stat.  Just open the file immediately and call fstat
-         to get the size.  Return if the open fails.
-
-execute_cmd.c
-       - redid same_file to eliminate some calls to stat().  Added two
-         new parameters, which, if non-null, are pointers to status
-         information about the pathnames passed.  This required changes
-         to find_user_command_in_path.
-       - eliminated some calls to strlen in find_user_command_in_path
-
-builtins.c, builtins.c.posix
-       - changed calls to same_file to pass the two extra parameters
-
-parse.y
-       - only call pre_process_line in shell_getc if the shell is
-         interactive, because history expansion and remembering lines
-         on the history are not done for script shells
-       - make the shell echo comment lines (lines whose first character
-         is `#') by moving the after_pre_process label to just before 
-         that code
-       - eliminated several calls to xrealloc in shell_getc when the
-         shell is non-interactive by correcting confusing uses of
-         shell_input_line_size -- after pre_process_line is called, it
-         must be set to strlen(shell_input_line) because we don't know
-         what the `true' allocated size of that block is, but not if
-         pre_process_line is never called.  This became apparent
-         as a result of the previous two changes.
-
-readline/history.c
-       - make history_do_write abort on write errors instead of ignoring
-         them.
-
-                                   12/3
-                                   ----
-general.c
-       - defined bcopy in terms of memcpy for USG systems
-       - changed the USG getwd to return the result of getcwd
-
-                                   12/4
-                                   ----
-readline/vi_keymap.c, readline/funmap.c
-       - changed #ifdef FILE to #ifdef BUFSIZ as the test for a
-         previous inclusion of stdio.h
-
-general.c
-       - changed USG getwd emulation to return an error message in the
-         buffer if the getcwd fails
-
-subst.c
-       - fixed extern declaration of copy_word
-
-variables.c
-       - set_var_auto_export does a complete new lookup of the variable
-         it's setting.  Most of the time in initialize_shell_variables
-         it's called immediately after bind_variable or set_if_not on
-         the same variable.  Made set_if_not return a SHELL_VAR * like
-         bind_variable, then replaced the calls to set_var_auto_export
-         with calls to a new function set_auto_export that is passed a
-         SHELL_VAR * and skips the lookup.
-
-execute_cmd.c
-       - don't call print_simple_command in execute_simple_command if the
-         shell is not interactive, since the only place that's ever used
-         is pretty_print_job, which is never called if the shell is not
-         interactive.  This might need to be changed.
-
-                                   12/5
-                                   ----
-parse.y
-       - made read_token call atoi(3) instead of using sscanf("%d") when
-         reading numbers
-
-variables.c
-       - changed a call to sprintf in put_command_name_into_env into two
-         assignment statements and a call to strcpy
-
-variables.c
-       - changed a call to sprintf in make_var_array into two calls to
-         strcpy and an assignment statement
-
-execute_cmd.c
-       - only call geteuid() once in executable_file and cache the result
-
-general.h
-       - added definitions for STREQ and STREQN, which are replacements for
-         strcmp(a, b) == 0 and strncmp(a, b, n) == 0 that check the first
-         character to possibly save a function call.  From C News.
-
-variables.c
-       - changed add_or_supercede to use STREQN 
-
-parse.y
-       - changed most instances of strcmp() in read_token to use STREQ.
-         Rearranged some code to reduce the number of times this is called.
-         The idea is to rewrite code like
-
-               if ((this token is xx) && (certain conditions hold))
-
-         to be
-
-               if ((certain conditions hold) && (this token is xx))
-
-         to take advantage of left-to-right evaluation done by many (most?)
-         C compilers.
-
-subst.c
-       - changed instance of strcmp() in stupidly_hack_special_variables
-         to STREQ
-
-alias.c
-       - changed instance of strcmp() in find_alias to STREQ
-
-hash.c
-       - changed instance of strcmp() in find_hash_item to STREQ
-
-execute_cmd.c
-       - changed instance of strcmp() in find_shell_builtin to STREQ
-
-unwind_prot.c
-       - changed instance of strcmp() in unwind_frame_discard_internal
-         to STREQ
-
-                                   12/6
-                                   ----
-readline/readline.c
-       - In rl_complete_internal, when listing all completion possibilities,
-         if the length of the longest item to be listed is greater than the
-         screen width, a divide-by-0 exception can result.  Fix is to always
-         make sure `limit' is at least 1.
-
-                                   12/7
-                                   ----
-readline/readline.c
-       - Add a new #define, HAVE_BSD_SIGNALS.  This is for hybrid systems
-         like HP-UX (pre-Posix) that have both termio and the BSD reliable
-         signal mechanism (sigmask, sigblock, sigsetmask, etc.).  This
-         allows better use of `critical sections' when changing the terminal
-         parameters.
-
-readline/history.c
-       - Need to #include <fcntl.h> for System V.4
-
-makeargs.sh
-       - If we are on System V.4, define USGr4 and make it show through to
-         the rest of the build process
-
-machines.h
-       - changed the i386 entry to add support for recognizing System V.4
-         machines
-
-                                   12/8
-                                   ----
-shell.c
-       - made the TMOUT code be executed only for interactive shells
-       - .bashrc should not be run if the standard input and standard
-         output are not ttys
-
-machines.h
-       - reorganized the `i386' section so that all defines for a single
-         machine/OS combination are now grouped
-
-                                   12/9
-                                   ----
-shell.c
-       - make the -s flag force interactive use only if all the other
-         conditions for interactive use are met
-       - since the same conditions are used to mark the shell as
-         interactive and to decide whether or not to execute the .bashrc,
-         only execute the .bashrc if we are interactive, and use the
-         value of `interactive' in the test
-       - only test if `file' in `bash file' is a binary file if the file
-         descriptor obtained by opening it is not a tty.  An argument of
-         /dev/fd/xx is always a tty, and we can't read on it and seek
-         back to the beginning.
-
-variables.c
-       - replaced the random number generator functions with the simple
-         linear congruential generator from the ANSI C standard
-
-                                   12/10
-                                   -----
-machines.h
-       - added new defines: HAVE_MULTIPLE_GROUPS for systems that allow
-         multiple simultaneous group membership and support getgroups(2),
-         and HAVE_RESOURCE for systems that define struct rusage and
-         have getrlimit(2) and setrlimit(2)
-
-execute_cmd.c
-       - changed executable_file and group_member to obey the new
-         HAVE_MULTIPLE_GROUPS define
-
-ulimit.c
-       - allow the full range of options for systems that define
-         HAVE_RESOURCE
-
-builtins.c, builtins.c.posix
-       - make systems that have HAVE_RESOURCE defined use the getrusage
-         code in times_builtin
-
-                                   12/11
-                                   -----
-cpp-Makefile
-       - make ulimit.o dependent on `psize' so that psize can use 
-         the same #ifdefs and #defines as the rest of the code
-
-psize.c
-       - added definition of memset for those machines that don't have
-         it
-
-psize.sh
-       - removed the compilation of psize.c
-
-shell.c
-       - save and restore the SIGALRM catcher around the TMOUT code in
-         read_command, in case it's trapped
-
-trap.c, execute_cmd.c, shell.c
-       - redid the way traps were done slightly.  Now, instead of calling
-         parse_and_execute out of a signal handler (!), the signal handler
-         just sets a flag that the rest of the code checks at appropriate
-         times.  This means traps are kind of like interrupts, but serviced
-         far fewer times.  It also means a bit of a loss of immediacy.
-
-                                   12/12
-                                   -----
-
-shell.c
-       - fixed a bug in read_command that caused the handler for SIGALRM
-         to be reset to garbage each time through.
-
-variables.c
-       - change makunbound to call stupidly_hack_special_variables so
-         that things like `noclobber' and such can be reset properly
-         on function exit or when a `special' variable is unset.
-
-                                   12/14
-                                   -----
-parse.y
-       - made `<>' without a number specifying the file descriptor open
-         the named file for both standard input and standard output.
-
-cpp-Makefile, jobs.h, endian.c, endian.h, endian.sh
-       - made jobs.h include a file `endian.h' if NO_WAIT_H is defined.
-         This file defines either BIG_ENDIAN or LITTLE_ENDIAN, and is
-         automatically generated by `endian' and `endian.sh'.
-
-execute_cmd.c
-       - aa && bb & was being executed incorrectly -- the subshell was
-         not being forced for the `aa && bb' portion.  Same for aa || bb &.
-         Of course, if the sh `grammar' was regular `aa && bb &' would
-         be treated the same way as `aa ; bb &'.
-
-cpp-Makefile, psize.sh, ulimit.c
-       - changed the `psize' stuff so that ulimit.c includes a file
-         `pipesize.h', which contains a #define for PIPESIZE.
-         pipesize.h depends on psize, which is still made via the standard
-         `make' rules.  It's exactly like the `endian' stuff.
-
-parse.y
-       - pre_process_line can return NULL, so we have to take that into
-         account in shell_getc
-
-glob.c
-       - fixed glob_pattern_p to only return TRUE for a pattern containing
-         a `[' if there is at least one `]' to match it.  It produces wrong
-         results if allow_null_glob_expansion is set, and is inefficient
-         otherwise (wasted calls to glob_filename).
-
-         For instance, if some twisted soul sets allow_null_glob_expansion,
-         the following would produce an error without this fix:
-
-               if [ a = a ] ; then echo hi ; fi
-
-                                   12/16
-                                   -----
-execute_cmd.c, parse.y, shell.h
-       - the `subshell bit' in the command struct is being used for two
-         purposes: to signal that the user requested that this command be
-         done in a subshell via `()' and to force some portions of a
-         command to be executed in a subshell, like `{ xx } &'.  We need
-         to differentiate between the two so that the command printed when
-         reporting job status is correct and so the code is clearer.
-
-         Define two `states' for that value, if non-zero: WANT_SUBSHELL is
-         used when the user requests a subshell, and FORCE_SUBSHELL is used
-         internally by the command execution code.
-
-parse.y
-       - clean up some casts, and make sure function arguments are coerced
-         to the correct type
-
-subst.c
-       - comment out some unnecessary `break' statements in case statement
-         clauses that immediately follow `goto' statements.  It makes the
-         compilation output cleaner on a compiler that complains about such
-         things, like the IBM/4.3 compiler (High-C).
-
-make_cmd.c
-       - move all the error reporting code to the end of the file, so that
-         picky compilers that like to report about mismatches in the number
-         of arguments won't complain about the varargs code.
-       - it's not allows to pass a va_list from one function to another, so
-         expand the body of fatal_error to be the same as report_error in
-         the varargs case
-
-                                   12/17
-                                   -----
-readline/readline.c
-       - Use TCXONC in rl_restart_output, if it's defined.
-
-make_cmd.c, builtins.c, builtins.c.posix, shell.c
-       - Make all the non-varargs versions of the various error reporting
-         functions take 5 arguments
-
-                                   12/18
-                                   -----
-builtins.c, builtins.c.posix
-       - made the builtins that accept option arguments report errors when
-         they get a bad option, and make these error messages consistent.
-         The builtins affected are: export, hash, history, read, readonly,
-         dirs, jobs, declare, typeset, local, and type.
-
-shell.c
-       - make the function that displays the version number of the shell
-         indicate that it's the CWRU version.
-
-readline/readline.c
-       - On machines without BSD signals, do a signal(SIGINT, SIG_IGN) in
-         rl_signal_handler if an interrupt is received.  This will take
-         the place of blocking it while in the handler.
-
-jobs.c, jobs.c.posix
-       - change the setting of the job control signals SIGTSTP, SIGTTOU,
-         and SIGTTIN to SIG_DFL in make_child when job control is not
-         active
-
-                                   12/19
-                                   -----
-builtins.c, builtins.c.posix
-       - corrected some spelling errors and other mistakes in the help
-         documentation
-
-readline/readline.c
-       - Made the inclusion of sys/ptem.h dependent on the definition of
-         USGr4
-
-                                   12/20
-                                   -----
-machines.h
-       - Added -DUSGr4 to SYSDEP_CFLAGS in the System V.4 machines.h entry
-         for the i386 so it will get passed to readline.
-       - new entry for Ardent Titan
-
-                                   12/22
-                                   -----
-general.c
-       - added two new functions to print time values in a standard way:
-         print_timeval, which prints the contents of a struct timeval,
-         and print_time_in_hz, which prints a time_t scaled by the value
-         of HZ (which is system-dependent).
-
-builtins.c, builtins.c.posix
-       - made times_builtin call the new functions for printing time
-
-                                   12/30
-                                   -----
-general.h
-       - made the definition of `sighandler' as `void' or `int' depend
-         on the definition of VOID_SIGHANDLER; provide the definition
-         for those systems already using that code
-
-machines.h
-       - new entry for AIX/PS2 1.2
-
-                                   12/31
-                                   -----
-mailcheck.c
-       - When reporting that a mail file has been read, take into account
-         changes in the file size as well, and only report the change if
-         the file has gotten larger.  This help for systems like USG that
-         don't change the access time of /usr/mail/$USER to be the same
-         as the modification time after the mail in the file is manipulated.
-
-                                    1/2
-                                    ---
-builtins.c, builtins.c.posix
-       - the `command' builtin should not reparse its arguments; it screws
-         up quoting (consider "command echo 'foo &'"), so instead of making
-         a string and calling parse_and_execute, make a new simple command
-         struct, put the arguments to `command' in it as its words, and
-         call execute_command recursively.
-       - added a correct extern declaration for copy_word_list () in
-         remember_args
-
-make_cmd.c
-       - new function: make_bare_simple_command() to support the changes to
-         the command builtin
-
-                                    1/3
-                                    ---
-builtins.c.posix, jobs.c.posix, jobs.h.posix
-       - renamed these to be `.px' to help out systems with short file names
-
-CWRU.changelog, CWRU.changelog.v2
-       - renamed these to CWRU.chlog and CWRU.chlog.v2 for the same reason
-
-longest_signal_desc.c
-       - renamed to longest_sig.c
-
-enable-posix
-       - changed to recognize and use the `.px' suffix
-
-termcap/termcap.texinfo
-       - renamed to termcap.tex
-
-makeargs.sh
-       - change instance of `uuname' to `uuname -l' for compatibility with
-         more systems
-       - look for uuname in /bin as well as /usr/bin
-
-cpp-Makefile
-       - always define HAVE_ALLOCA if HAVE_GCC is defined
-
-bashline.c
-       - declare functions referred to in several places at the start of
-         the file
-
-jobs.c, jobs.c.px
-       - signal handlers should take one argument to be portable
-
-jobs.c.px
-       - hack around SCO Unix broken sigsuspend() and the fact that it
-         can't do job control on /dev/tty
-
-variables.c
-       - add declaration for sbrand before it is used
-
-machines.h
-       - define USGr3 for generic System V.3 entry; it is used in
-         readline/readline.c to conditionally include sys/ptem.h for the
-         `struct winsize' definition.  I'm about to say screw it and
-         define one myself.
-
-readline/readline.c
-       - include sys/ptem.h for both system V.3 and V.4 (USGr3 and USGr4)
-
-                                    1/4
-                                    ---
-shell.h
-       - some USG systems have a definition for MAXPATHLEN, so only define
-         it if there is no existing definition
-
-bashline.c
-       - changed operate_and_get_next to realize when it is at the end of
-         the stifled history list and to adjust the history pointer to the
-         `next' line appropriately
-
-readline/history.c
-       - made three variables needed by the above change to bashline.c
-         public: history_stifled, max_input_history, and history_length
-
-parse.y
-       - reset last_read_token and current_token in handle_eof_input_unit
-         so that an alias expansion on the next command entered will be
-         handled correctly.  If these are not reset, last_read_token ends
-         up being `yacc_EOF', which is not something that that will cause
-         command_token_position to return TRUE.
-
-                                    1/7
-                                    ---
-execute_cmd.c
-       - changed the test for matching jobs when testing for auto-resume
-         to make `exact' work as documented
-
-builtins.c, builtins.c.px
-       - Change exit_builtin so an interactive shell prints a message
-         when it exits: `logout' if it is a login shell, `exit' otherwise
-
-general.c
-       - include <sys/time.h> and compile in print_timeval if HAVE_RESOURCE
-         is defined
-
-readline/readline.c, readline/readline.h, bashline.c
-       - added a new readline function to call on filename completion, after
-         the match list has been generated:
-         rl_filename_completion_ignore_function().
-         It gets to munge the list of matches to its satisfaction.  It is
-         used to implement FIGNORE, a colon-separated list of filename
-         suffixes to ignore when doing filename completion
-
-jobs.c, jobs.c.px
-       - rewrote pretty_print_job to fix this bug:
-
-               thor$ { sleep 2 ; exit 1 ;} | sleep 10 &
-               [1] 11854
-               thor$ j
-               [1]+  Running                 { sleep 2; exit 1 } | sleep 10 &
-               thor$ j
-               [1]+  Exit 1                  { sleep 2; exit 1 } | sleep 10 &
-               thor$
-               [1]+  Exit 1                  { sleep 2; exit 1 } | sleep 10
-               thor$ echo $?
-               0
-
-         (since it's the exit status of the last job in the pipeline that
-         bash cares about, make it the one whose status is displayed.)  Also,
-         print "Running" if any processes in the job are still running,
-         instead of the status of the process group leader.  The code was
-         rearranged a bit as well.
-
-                                    1/8
-                                    ---
-fc.c
-       - changed fc_replhist to call history_get with a parameter offset by
-         history_base, like it should have been in the first place
-
-execute_cmd.c
-       - call dispose_used_env_vars () after any call to
-         execute_simple_command, because the temporary environment should be
-         in force only for the simple command immediately following it.
-         This fixes the
-               a=c printenv a | printenv a
-         bug, which should print nothing, but used to print `c'.
-       - added form feed ('\f') to the list of acceptable control characters
-         in check_binary_file
-
-                                    1/9
-                                    ---
-make_cmd.c
-       - fix to make_simple_command to make <> work.  We need to follow the
-         chain of redirections passed as element.redirect to the end, since
-         there might be more than a single redirection there.
-
-                                   1/14
-                                   ----
-machines.h
-        - redid the DEC, Mips, and Sony entries to get rid of the individual
-          MIPSEL and MIPSEB entries.  The goal is to isolate everything into
-          manufacturer-specific blocks.
-
-                                   1/18
-                                   ----
-builtins.c, builtins.c.px
-       - added call to QUIT to history_builtin, to allow the display of
-         history entries to be interruptible
-
-variables.c
-       - made find_variable return the dynamic value for a variable only
-         if this variable is in the current context.  This is to avoid
-         an `extra' value of RANDOM, for instance, being `wasted' in the
-         call to find_variable in make_local_variable
-
-execute_cmd.c, builtins.c, builtins.c.px, shell.h
-       - changed the bitmap holding the file descriptors to be closed in
-         the child to be a structure holding a bitmap and a size, rather
-         than use a char * bitmap with a fixed size, which will inevitably
-         be too small.  You'd probably run out of processes before you
-         ran out of file descriptors, though.  Pipe errors now call
-         throw_to_top_level () rather than return an error, because it's
-         no use continuing with the current pipeline.  Not doing so can
-         cause a call to wait_for () for the remainder of the pipeline,
-         which is just going to sit there in a stopped state with no user
-         feedback.
-
-                                   1/20
-                                   ----
-subst.c
-       - increased the amount of memory allocated when adding a number to
-         the string currently being expanded from 10 to 16.  10 characters
-         will not hold the result of 32767 * 32767, for instance.  16
-         should be plenty, but 32 would be better.
-
-                                   1/21
-                                   ----
-bashline.c
-       - added a new emacs-mode readline command to display the shell version
-         (kind of like Korn's C-V, but it displays on a separate line).  It's
-         on C-X C-V.
-
-                                   1/22
-                                   ----
-shell.c
-       - make termination_unwind_protect save the history only for an
-         interactive shell
-       - consolidated the loading and saving of the history file into
-         two functions: load_history () and save_history ()
-       - changed the history writing behavior so that interactive shells
-         will always try to append the history from the current session
-         to this history file instead of rewriting it every time.
-
-                                   1/23
-                                   ----
-general.h
-       - Posix systems have void signal handlers
-
-ulimit.c, ulimit.c.new, jobs.c.px, jobs.c, general.c
-       - moved the getdtablesize() emulation for non-BSD systems to
-         general.c, removing the private copies held by jobs.c.px, jobs.c,
-         ulimit.c, and ulimit.c.new
-
-execute_cmd.c, general.c
-       - replaced all references to NOFILE with references to
-         getdtablesize ()
-
-machines.h
-       - new entries for DG AViiON and Harris Nighthawk
-
-general.h
-       - split the replacement Posix stat definitions into their own
-         header file, `posixstat.h'
-
-test.c
-       - removed the Posix S_IS* macro definitions and added an include of
-         posixstat.h to pick them up
-
-general.c
-       - added an inclusion of posixstat.h for the replacement Posix stat
-         definitions
-
-posixstat.h
-       - this file should be included only after <sys/stat.h>
-       - some Posix-wannabe systems do not define the S_IS* macros, and
-         do not define the S_IF macros in favor of _S_IF* macros.
-
-shell.c
-       - make all signals in the terminating_signals array be conditionally
-         compiled it -- no signals are assumed to be present
-
-glob.c
-       - some Posix systems do not have a member d_ino in struct dirent.
-         Its use is now compiled out if _POSIX_SOURCE is defined.  I don't
-         think the check is necessary anyway; isn't readdir guaranteed to
-         return only active directory entries?
-
-cpp-Makefile
-       - added various entries for posixstat.h
-
-subst.c
-       - changed the code by add_number in expand_word_internal to call
-         itos() when translating an int to a string
-
-misc.c
-       - enlarged MAX_INT_LEN to 32
-
-                                   1/25
-                                   ----
-shell.c
-       - made bash, when invoked with the -c command option, save the rest
-         of the arguments as the positional parameters
-
-                                   1/29
-                                   ----
-
-misc.c
-       - made itos() handle negative numbers correctly
-
-posixstat.h
-       - include <sys/stat.h>, now can be included as a replacement for
-         stat.h
-
-builtins.c, builtins.c.px, execute_cmd.c, mailcheck.c, shell.c, test.c
-       - changed to include posixstat.h instead of <sys/stat.h>
-
-                                   1/30
-                                   ----
-
-lots of changes to nearly every file as the result of a merge with Brian's
-version of this code
-
-                                   1/31
-                                   ----
-
-parse.y
-       - correctly cast NULL pointer arguments passed to the command
-         construction functions in make_cmd.c
-
-test.c
-       - change uses of access(2) to call a new function eaccess(), which
-         performs a stat(2) call and checks the permission bits itself.
-         This means that root no longer finds that /etc/passwd is an
-         executable file.
-
-                                    2/3
-                                    ---
-test.c
-        - make eaccess() use group_member() from execute_cmd.c to test group
-          membership against all groups a user is in.  Do this if the system
-         supports multiple groups.
-
-                                    2/5
-                                    ---
-shell.c
-       - bash always executes .bashrc unless it's a login shell or acting
-         like sh.  Brian wants it this way.
-
-parse.y
-       - build a stack of tokens that have been alias expanded during a 
-         single call to read_token(), and use it to stop alias loops
-
-                                    2/6
-                                    ---
-make_cmd.c
-       - if redirection_expand returns NULL, it means that the word being
-         expanded expanded into multiple words.  In this case, abort the
-         here-document processing.  Specifically:
-
-               cat << $(date)
-
-         no longer dumps core calling strlen with a null argument.
-
-                                    2/8
-                                    ---
-readline/vi_mode.c
-       - some changes to rl_vi_eWord to make completion on `*' work
-         right
-
-builtins.c, builtins.c.px
-       - made history_builtin add a newline at the end of the history
-         expansions done when the -s option is specified
-
-                                    2/9
-                                    ---
-
-variables.c
-       - backed out of 1/18 change to find_variable().  It has the effect
-        of making this function always return the same value:
-
-              rand()
-              {
-                      echo $RANDOM
-              }
-
-                                  2/10
-                                  ----
-parse.y
-       - save the value of eof_encountered around execution of
-         PROMPT_COMMAND, otherwise ignoreeof will not work
-
-documentation/bash.1
-       - Add descriptions of the keybindings to go from emacs editing mode
-         to vi and vice versa
-
-                                  2/11
-                                  ----
-shell.c
-       - added tests for running shell scripts and for stdin being a tty
-         to the test for reading and executing .bashrc.  This means that
-         bash -c command still runs .bashrc (that's next :-).
-
-parse.y
-       - added test for interactive to disable alias expansion for
-         non-interactive shells
-
-builtins.c, builtins.c.px
-       - history -s is now gone
-
-                                   2/12
-                                   ----
-shell.c
-       - implemented a better (hopefully the final) test for executing
-         ~/.bashrc at shell startup
-
-general.c
-       - made dup2() emulation better, based on ideas from Usenet
-
-fc.c
-       - made fc_gethnum treat 0 the same as a negative number (an offset
-         from the current command number) so that fc -l -30 0 works
-         correctly
-       - make sure history_base is ignored in all calculations, but use it
-         when reporting the command number with the -l flag
-       - make `last' default to the current command when the -l flag is
-         given so that fc -l -20 works as it does in ksh
-
-                                   2/20
-                                   ----
-
-Many changes from a merge with bfox's version 1.07
-
-                                     2/25
-                                     ----
-
-jobs.c.px, jobs.h.px, builtins.c.px
-       - These files are no more, having been merged with jobs.c, jobs.h
-         and builtins.c
-
-jobs.c, jobs.h, builtins.c, shell.c, make_cmd.c, subst.c, execute_cmd.c,
-nojobs.c
-       - Adopted pid_t and WAIT_T as `native' types
-       - Propagated pid_t definition around to all necessary files
-
-readline/readline.c
-       - Some systems need the USG code without being USG (like HPUX and
-         AIX, for instance)
-
-                                     2/27
-                                     ----
-
-fc.c
-       - fixed up a few remaining bugs
-       - added code that lets options be grouped behind a single `-'
-       - added fencepost code that prevents overflow errors
-
-Another merge with Brian's almost-1.07
-
-                                    3/1
-                                    ---
-
-A final merge with Brian's 1.07
-
-                                     3/2
-                                     ---
-
-execute_cmd.c
-       - fixed a problem with asynchronous commands started from `.'
-         scripts (run with parse_and_execute) being waited for
-         inappropriately on systems without job control.  For example,
-         `. foo' where foo contains
-
-               . bar
-               echo bar done
-
-         and bar contains
-
-               sleep 300 &
-               sleep 300 &
-
-         would not echo `bar done' until 5 minutes had passed and both
-         `sleep' processes had exited.  Badness.
-
-nojobs.c
-       - fixed up so that bash can be built without job control on BSD
-         systems -- God forbid.
-
-                                    3/7
-                                    ---
-
-jobs.c
-       - Added code to initialize_jobs () to handle the broken NeXT 2.0
-         rlogind, which starts bash so that the terminal still belongs
-         to the rlogind process and getpgrp () returns 0 (?).  Looks like
-         a setpgrp(0, 0) is being done somewhere, and NeXT is not handling
-         it like 4.3 BSD does.
-
-                                   3/11
-                                   ----
-shell.c
-       - $0 is now initialized to `bash' for interactive shells when there
-         is no argv[0]
-
-                                   3/12
-                                   ----
-
-jobs.c
-       - Make set_new_line_discipline return 0 when on a termio system
-         without NTTYDISC defined (like HP/UX 6.x)
-
-                                   3/13
-                                   ----
-                     BASELINE FOR NETWORK WIDE RELEASE
diff --git a/CWRU/old-changelogs/CWRU.chlog.v4 b/CWRU/old-changelogs/CWRU.chlog.v4
deleted file mode 100644 (file)
index dade714..0000000
+++ /dev/null
@@ -1,234 +0,0 @@
-This file documents changes to CWRU bash following its first network-wide
-release.
-
-                                   3/15
-                                   ----
-Makefile
-       - change the declaration of $CPP_ARGS so that CPP_CC can have
-         embedded blanks, by adding quotes
-
-bashline.c
-       - some cosmetic changes to the FIGNORE support functions
-
-glob.c
-       - don't define USGr3 if it's already defined
-
-variables.c
-       - a declaration for the argument to put_command_name_into_env was
-         missing
-
-builtins.c
-       - only print the command name in builtin_error if this_command_name
-         is non-null
-
-expr.c
-       - catch something % 0 as an error
-
-subst.c
-       - make sure this_command_name is set to NULL before calling evalexp,
-         because evalexp uses builtin_error
-
-                                   3/18
-                                   ----
-
-variables.c
-       - changed getenv() to search the inherited environment if the hash
-         table of shell variables does not exist or has not been created
-
-                                   3/19
-                                   ----
-
-subst.c
-       - when doing command substitution, strip only the trailing newlines.
-         This is in accordance with Posix.2.
-
-general.c
-       - strip_trailing () has aquired a new flag telling whether to strip
-         all white space or just trailing newlines.
-
-variables.c
-       - since some places in the code rely on bind_variable returning a
-         valid value, the dynamic variable assignment functions have been
-         changed to take a pointer to themselves as the first parameter:
-
-               return ((*(entry->assign_func)) (entry, value));
-
-         and then return that value after doing whatever they need to
-
-                                     3/30
-                                     ----
-
-bashline.c
-       - disabled builtin commands should not be returned to the readline
-         completion functions as legal command alternatives
-
-flags.c
-       - do not redefine NULL; check only after including all needed
-         .h files
-
-nojobs.c
-       - fix unconditional reference to status.w_*
-       - fix typo after call to WIFCORED in wait_for
-
-readline/readline.c
-       - make sure all calls to BSD signal mechanism are protected by test
-         for HAVE_BSD_SIGNALS define
-       - make sure declaration of struct ltchars variable is protected by
-         test for definition of TIOCGLTC
-       - change #include file from sys/errno.h to errno.h
-       - added a new function rl_stop_output (), the non-emacs version of
-         ^S, to go with rl_restart_output.  Haven't done anything with it
-         yet.
-       - added Posix support in the form of tcflow() calls to 
-         rl_restart_output and rl_stop_output
-
-readline/readline.h
-       - change the declaration of rl_filename_completion_ignore_function
-         to extern.  It was coming up as multiply defined on some systems
-
-siglist.c
-       - change #include file from sys/signal.h to signal.h
-       - some systems define _NSIG but not NSIG.  Define NSIG in terms of
-         _NSIG on those systems
-
-ulimit.c
-       - change #include file from sys/errno.h to errno.h
-
-subst.c
-       - string_extract_double_quoted() needs to ignore "" inside `` pair,
-         but this code should be executed only if the ` is not backslash-
-         escaped.
-       - changed sv_uids() to give UID, EUID the integer attribute
-         automatically
-
-machines.h
-       - check for the DG AViiON defining either __DGUX__ or DGUX, make
-         sure DGUX is defined in any case
-
-trap.c
-       - change run_pending_traps to loop from 1 to NSIG instead of 0 to
-         NSIG
-
-execute_cmd.c
-       - For a command run explicitly in a subshell via (), run_exit_trap ()
-         needs to be called after that command has executed for /bin/sh
-         compatibility
-
-variables.c
-       - make $PPID have the integer attribute when it is intialized
-
-                                    4/2
-                                    ---
-
-subst.c
-       - make string_extract_double_quoted handle backslash-escaped
-         ` correctly when parsing a `` pair
-
-                                    4/3
-                                    ---
-
-jobs.c
-       - make sure job_control is set to 1 before the first time
-         give_terminal_to is called, so that it does its job and the
-         process groups are correct.
-
-subst.c
-       - make string_extract_double_quoted() not turn \\ into \ inside
-         quoted strings.  The translations will be taken care of later.
-
-nojobs.c
-       - make sure we get the tty state in initialize_jobs(), and don't
-         try to set it in set_tty_state until we know we have saved
-         valid settings.
-
-                                     4/6
-                                     ---
-
-shell.c, execute_cmd.c, shell.h
-       - shell now exits with status 127 when asked to execute a binary        
-         file as a shell script
-
-builtins.c
-       - `local' is once again an error outside a function
-       - `trap' now formats output differently when given no arguments;
-         the new format is suitable for feeding back to the shell as
-         input to `trap'
-       - cleaned up a contradiction in the help text for the `export'
-         builtin
-       - `export' and `readonly' now accept a -p flag for Posix.2 compliance
-         that acts the same as if no flags had been specified, and take a
-         `--' option to disable further option processing
-       - `unset' takes a `--' argument to disable further option
-         processing
-       - when given the -f flag, unset will now try to unset a variable
-         if no function is found for the name supplied
-       - `kill' now takes a -s signal argument as equivalent to -signal
-       - `kill' takes a `--' argument to disable further option processing,
-         since a negative number may be used to denote a process group
-       - `kill -l' now takes arguments and lists the names for individual
-         signals by number.  If the number given as argument is > 128, it
-         is assumed to be an exit status, and 128 is subtracted before
-         further processing
-
-builtins.c, variables.c
-       - `set +' is no more; print_vars_no_values() is no longer needed
-
-flags.c, builtins.c
-       - `set -C' is now an alias for noclobber
-
-trap.c
-       - SIGNULL is no longer a valid name for signal 0
-
-getopts.c, subst.c
-       - resetopts () --> getopts_reset ()
-       - rewrote getopt() per Brian's request
-
-builtins.c
-       - `return' is now valid when executing a file with the `.' builtin
-         and causes the execution to be aborted
-
-execute_cmd.c
-       - file descriptors > 2 manipulated via `exec' are no longer set to
-         close-on-exec
-
-                                    4/8
-                                    ---
-
-cpp-Makefile
-       - fixed the bad definition of RANLIB if RANLIB_LOCATION was defined
-       - pass the correct definition of ranlib through to the make of
-         readline
-
-readline/readline.c
-       - make sure some defaults for screen size are defined in the case
-         of a dumb terminal
-
-builtins.c
-       - `return' now works for aborting files executed with the `.'
-         builtin
-
-parse.y
-       - a `"' before a closing ) in a $( ) construct within double
-         quotes is no longer an error
-
-subst.c
-       - string_extract_double_quoted now passes everything between $(
-         and ) through verbatim, without scanning it for double quotes.
-         This way, `echo "$(echo "*")"' will echo `*' like it should.
-
-documentation/bash.1
-       - updated to reflect the changes from Posix.2 draft 11.
-
-                                   4/10
-                                   ----
-
-execute_cmd.c, builtins.c
-       - changed some instances of absolute_pathname to absolute_program
-         (like doing PATH, CDPATH searching, the `type' builtin,  and
-         filename hashing)
-
-readline/readline.c
-       - made rl_deprep_terminal do a little sanity checking on the
-         values in otio that it is restoring
-
-       Minor update of tar files available for FTP from CWRU
diff --git a/CWRU/old-changelogs/CWRU.chlog.v5 b/CWRU/old-changelogs/CWRU.chlog.v5
deleted file mode 100644 (file)
index 55b994c..0000000
+++ /dev/null
@@ -1,1492 +0,0 @@
-
-                                  4/11
-                                  ----
-
-machines.h, general.c, cpp-Makefile
-       - wrapped the definition of strerror() inside a new machines.h
-         variable, HAVE_STRERROR
-
-machines.h
-       - new machine definition for the Encore series 91
-       - removed definitions of NO_WAIT_H; let makeargs.sh decide for us
-
-builtins.c
-       - the test used in cd_builtin () to decide whether or not to use
-         CDPATH was incorrect.  It now uses CDPATH unless the directory
-         name begins with a slash.
-
-cpp-Makefile, machines.h
-       - added SYSDEP_LDFLAGS for flags to ld, analogous to SYSDEP_CFLAGS
-
-                                  4/13
-                                  ----
-
-machines.h
-       - more changes to Encore entries from pierson@encore.com
-       - added -Wf,-XNl3072 to SYSDEP_CFLAGS for all machines that use the
-         MIPS chip and compilers.  This increases the maximum size of a
-         string constant, which some of the help strings in builtins.c
-         were exceeding
-
-jobs.c
-       - include trap.h only if JOB_CONTROL is defined, since nojobs.c
-         does not use its facilities
-
-                                    4/14
-                                    ----
-
-getopts.c
-       - changed error handling so that it obeys the Posix.2 draft 11 spec
-         (which is like ksh-88)
-
-                                  4/16
-                                  ----
-
-execute_cmd.c
-       - only run the exit trap in a subshell when command_subshell ==
-         USER_SUBSHELL, which means the user forced a subshell with ( )
-
-cpp-Makefile
-       - updated the dependency information
-
-quit.h
-       - changed the definition of throw_to_top_level to `extern' -- it
-         sometimes matters
-
-readline/vi_mode.c
-       - fix to make the vi-mode `b' command work when you type it twice
-         in a row
-
-                                  4/17
-                                  ----
-
-readline/vi_mode.c
-       - more fixes for vi `b' and `B' commands
-       - fixes for vi `w' and `W' commands
-       - fixed `_' command to yank the correct arg from the previous history
-         line
-
-readline/{vi_{mode,keymap}.c,readline.h}
-       - added a new function, rl_vi_fetch_history(), to implement the `G'
-         command.  It's not totally right, but it's better than having none
-         at all.
-
-                                  4/18
-                                  ----
-
-builtins.c
-       - only call the with_input_from_* functions in set_minus_o_option
-         if the shell is interactive when doing set -o emacs or set -o vi
-         (this prevents core dumps when doing a "set -o emacs" from a
-         startup file, because none of that stuff is initialized when the
-         startup files are run)
-
-bashline.c
-       - make sure all of the bindings are done to explicit keymaps, so
-         as to not randomly change the keymap the user has chosen with
-         a set -o in a .bashrc file.  The original ones all assumed the
-         current keymap was the emacs keymap, and this will screw up a
-         vi keymap seriously.
-
-readline.c
-       - .inputrc file parsing now recognizes the `$if mode=emacs' or
-         `$if mode=vi' construct in parser_if()
-
-trap.c
-       - make sure the jmp_buf stored in top_level is valid during the
-         execution of run_exit_trap, or we may jump off into never-never
-         land.
-
-         For example, consider a script that runs until it reads eof, and
-         has an exit trap set that contains a call to `exit'.
-         parse_and_execute will be called after reader_loop (and hence the
-         valid definition of top_level) is already off the stack and
-         invalid, and the longjmp in exit_builtin will seg fault.
-
-machines.h
-       - for MIPS machines in the BSD universe (-systype bsd), make sure
-         HAVE_UNISTD_H is undefined -- the compiler doesn't let us get to
-         it, even if it is there (wierd)
-
-config.h
-       - made the HELP_TEXT define that enables the inclusion of the huge
-         documentation strings for builtins a configurable parameter defined
-         here.  It's undefined by default, which means the long text is
-         not compiled in.
-
-general.c
-       - rewrote strip_trailing() to make it handle all cases where the
-         entire string should be stripped (e.g. "\n\n\n\n" when newlines
-         only are to be stripped)
-
-subst.c
-       - quoted results of command substitutions should have trailing
-         newlines stripped, not just the last newline as it was doing
-
-builtins.c
-       - aliases are no longer required to be legal identifiers, as
-         defined by Posix.2.  This originally came from 1003.2a,
-         draft 5, but I think it's on its way out
-
-                                  4/19
-                                  ----
-
-shell.c
-       - fixed a typo in the code that decides whether or not to source
-         ~/.bashrc, so now it sources it when we expect it to (no more
-         sourcing .bashrc for `echo ls | bash').  It was a misplaced
-         paren.
-
-parse.y, subst.c
-       - when parsing and evaluating $() and $[] constructs, bash needs
-         to take into account instances of `(' and `[' respectively
-         inside the delimiting characters and adjust the number of closing
-         parens or brackets that need to be read before the construct is
-         complete.  This is so things like $( (pwd) ) or $((pwd)) will
-         work as expected.
-
-                                    4/21
-                                    ----
-parse.y
-       - consolidated two grammar rules for `function f { echo foo; }'
-         into one -- there was no real difference between the two
-
-variables.c
-       - deleted inclusion of version.h.  It was not used.
-
-cpp-Makefile
-       - removed dependence of variables.o on version.h.  This caused
-         variables.c to be unnecessarily recompiled each time
-         version.h changed.
-
-trap.h
-       - changed the definition of IGNORE_SIG to be SIG_IGN, because
-         defining it as 0 made it the same as SIG_DFL, and hence
-         DEFAULT_SIG
-
-jobs.c, nojobs.c
-       - changed the restoration of signals altered by traps to be
-         after SIGINT, SIGQUIT, and SIGTERM are restored to their
-         default state so that ignored signals remain ignored in
-         children
-
-jobs.c
-       - SIGINT and SIGQUIT should be ignored by default for asynchronous
-         children
-       - changed all calls to signal (s, SIG_DFL) in make_child for SIGINT,
-         SIGQUIT, and SIGTERM to call restore_default_signal() instead
-         (which should really be called restore_original_signal()), because
-         what you really want is for children to have the values for these
-         signals that the shell started with.
-
-trap.c
-       - make sure signals set to be ignored in the shell are set to SIG_IGN
-         in the child by calling ignore_signal in restore_original_signals()
-       - make the loop that records the original values of the signals for
-         the shell in initialize_traps() run from 1 to NSIG-1
-
-                                  4/22
-                                  ----
-
-shell.c
-       - make sure the `i' flag is turned on (so that it appears in $-)
-         before the startup scripts are run
-
-                                  4/23
-                                  ----
-
-general.c
-       - changed pathname_backup to not back up past the start of the
-         path it is passed looking for a `/'.  It causes core dumps on
-         a lot of systems.
-
-config.h
-       - Ultrix does dup2() wrong, so make it use the dup2() emulation
-         implemented with fcntl() by making sure NO_DUP2 is defined
-
-jobs.c
-       - fixed a posix race condition by making the first process in a
-         pipeline wait for all of the processes to be created and have
-         their process group set correctly before returning from
-         make_child().  The synchronization is done around a shared pipe.
-       - added a function close_pgrp_pipe() that other files can call to
-         have the pgrp pipe closed for them
-
-subst.c
-       - added call to close_pgrp_pipe from the parent half of the command
-         substitution code, since this code will not call start_pipeline
-         or stop_pipeline.  Otherwise the child waits forever trying to
-         read the pipe.
-
-readline/vi_mode.c
-       - more changes to the vi mode code, this time to rl_vi_eWord for the
-         `E' command
-
-                                  4/24
-                                  ----
-
-execute_cmd.c
-       - only restart an auto-resume job if the job is marked as JSTOPPED.
-         This fixes the `for i in 1 2 3; do who; done | sort' only running
-         `who' once bug.
-
-parse.y
-       - removed extern declarations of index(), rindex(); they should be
-         taken care of in general.h
-
-machines.h
-       - some changes to the mips and sgi entries
-
-readline/readline.c
-       - change rl_redisplay so DEL is echoed as C-?
-
-                                  4/25
-                                  ----
-
-makeargs.sh
-       - a new implementation from Brian
-
-jobs.h
-       - changed the sense of the test for the presence of sys/wait.h to
-         test HAVE_WAIT_H rather than NO_WAIT_H.  HAVE_WAIT_H is set by
-         makeargs.sh
-
-jobs.c
-       - don't bother calling tcsetpgrp() in give_terminal_to() if the
-         process group already owns the terminal
-
-test.c
-       - change eaccess() so that root requires execute permission for
-         anyone in order to be able to execute a file
-
-execute_cmd.c
-       - change executable_file() so that root can execute a file if any
-         of the u, g, o x-bits are turned on
-
-documentation/features.texinfo
-       - fixed a typo on line 352 ({ -> })
-
-documentation/bash.1
-       - some cosmetic changes to the manual page
-
-                                  4/26
-                                  ----
-
-parse.y
-       - made read_a_line handle a null character being returned from
-         yy_getc () in a reasonable fashion instead of falling out of
-         a loop and returning garbage to its caller
-
-                                  4/27
-                                  ----
-
-shell.c
-       - make the file descriptor from which we are reading the text of
-         a script be set to close-on-exec
-
-execute_cmd.c
-       - now that Ultrix uses the dup2() emulation in general.c, the code
-         that sets file descriptors to open-on-exec on Ultrix systems
-         can be disabled
-       - fixed up the test for root in executable_file()
-
-test.c
-       - fixed up the test for root in eaccess() so that root can read or
-         write any file, but only execute executable files
-
-                                    4/28
-                                    ----
-braces.c
-       - if the text between braces does not contain a comma, just return
-         the text with braces intact.  This is for greater /bin/sh
-         compatibility
-
-                                  4/29
-                                  ----
-
-bashline.c
-       - some changes from a merge with bfox bash-1.07
-
-execute_cmd.c
-       - added an extern declaration for make_command_string()
-
-general.c
-       - made itos() use unsigned arithmetic so that $[ 32768*65536] works
-         right
-
-                                  4/30
-                                  ----
-
-readline/readline.c
-       - fixed typo for sys5 termio version of rl_prep_terminal() that
-         called ioctl with the wrong number of parameters
-       - made readline handle SIGALRM and clean up after itself when
-         it hits
-
-ulimit.c, ulimit.c.new
-       - fixed up return value for -f on HP/UX -- the man page for
-         ulimit(2) lies about its return value
-
-makeargs.sh
-       - need to initialize SYSDEF and SHLIB so we don't pick up any
-         values from the environment
-
-readline/history.c
-       - fixed typo in `mode' argument in call to open(): 066 -> 0666
-
-builtins.c
-       - mark HP/UX as not having resources even though it has
-         /usr/include/sys/resource.h
-
-cpp-Makefile, Makefile, makeargs.sh, config.h
-       - changes from bfox bash-1.07
-
-machines.h, builtins.c, general.c
-       - changes for bfox port to cadmus
-
-posixstat.h
-       - added definitions for Posix file modes for those systems that do
-         not have them
-
-                                   5/1
-                                   ---
-
-subst.c
-       - added a function remove_quoted_nulls to do quote removal when we're
-         not doing word splitting.  It's called from expand_string_unsplit
-
-fc.c
-       - removed the code that handled EOF from fc_readline
-       - fixed possible memory leaks in fc_builtin (line returned from
-         fc_readline()) and fc_readline()
-       - fixed calls to builtin_error so they no longer include a literal
-         "fc" in the error string
-
-execute_cmd.c
-       - fixed execute_simple_command so that commands called from the
-         command builtin do not have arguments re-expanded by another
-         call to expand_words()
-
-readline/readline.c
-       - disable the ONLCR bit in the termio and termios version of
-         rl_prep_terminal so that pesky extra ^M is no longer sent
-
-readline/vi_mode.c
-       - fixed a typo that caused a test to be reversed in rl_vi_bword()
-
-                                   5/2
-                                   ---
-
-shell.c
-       - preserve leading `-' in argv[0] (and $0) when bash is invoked
-         this way.  Ensure that we do not infinitely recurse executing
-         .bash_profile if there is a shell script that bash executes or
-         a command substitution by incrementing shell_name past a leading
-         `-' when main() is invoked a second time.  Initialize $0 to
-         "bash" if it is null or equal to "-".
-
-builtins.c
-       - added symbolic mode printing and arguments (like chmod) to umask.
-         Now, "umask 002" and "umask a=rx,ug+w" are equivalent
-       - removed change to unset from Posix.2 draft 11; it is required to
-         use -f if trying to unset a function and it unsets a variable
-         otherwise
-
-bashline.c
-       - make sure display_shell_version leaves the cursor at column 0
-         before calling rl_on_new_line()
-
-                                   5/3
-                                   ---
-
-jobs.c
-       - defined a `unifying' way to get the process group of an arbitrary
-         process: getpgid(p).  Constructed a bunch of #defines to get it
-         defined correctly in terms of getpgrp().  Used in initialize_jobs
-
-execute_cmd.c
-       - converted a call to statmode & S_IFDIR (which was wrong in the
-         first place, should have been (statmode & S_IFMT) == S_IFDIR)
-         into a call to S_ISDIR (statmode) in executable_file
-       - for systems with broken (4.2 BSD-style) dup2() calls, which do
-         not set the new descriptor to be open across execs, define
-         DUP2_BROKEN and do the explicit setting ourselves.  Ordinarily,
-         setting NO_DUP2 and using the fcntl emulation is sufficient, but
-         on some systems (Sequent Dynix), fcntl(fd, F_DUPFD, fd2) is
-         broken this way, too.
-
-expr.c, fc.c
-       - make sure NULL is defined as 0, redefining it if necessary
-
-                                    5/3
-                                    ---
-
-execute_cmd.c
-       - in execute_case_command(), make sure we call expand_word on the
-         case statement pattern with quoting set to Q_KEEP_BACKSLASH, so
-         backslashes are not treated specially depending on the character
-         that follows them.  Here's the comment from the relevant section
-         of the code:
-
-         /* expand_word calls expand_word_internal, then performs word
-            splitting and dequotes the result.  This causes parameter
-            expansion, command substitution, arithmetic expansion, and
-            quote removal to occur.  What we *really* want is only
-            parameter expansion and " and ' removal.  Calling expand_word
-            with Q_KEEP_BACKSLASH is the way to do part of this.  The
-            command substitution part is still done, but that's OK. */
-
-subst.c
-       - break the command substitution code off into its own function,
-         command_substitute()
-
-shell.h, subst.c, execute_cmd.c
-       - enumerated the possible values for the `quoted' argument to the
-         expansion functions: Q_DOUBLE_QUOTES, which means expand as if
-         the string were in double quotes, Q_HERE_DOCUMENT, which means
-         expand the string according to the rules for expanding here-
-         documents, and Q_KEEP_BACKSLASH, which means to not treat back-
-         slashes specially at all.
-
-readline/vi_keymap.c
-       - bound `*', `=', and `\' in the vi movement keymap to rl_vi_complete
-
-readline/vi_mode.c
-       - If the command is cw or cW, we don't want whitespace after the
-         end of the word eaten, so change the w or W to e or E,
-         respectively
-       - made rl_vi_complete handle all three kinds of vi_mode completion
-       - changed rl_vi_char_search to check boundary conditions and avoid
-         going off the end or start of the current line searching for a 
-         character
-       - changed rl_vi_domove to implement the `yy' command
-
-                                   5/6
-                                   ---
-subst.c
-       - check the return value from expand_string_internal in
-         expand_string_unsplit; make sure we don't try to dereference a
-         null value
-
-machines.h
-       - new entry for NCR tower 32 running System V.3
-       - changes to IBM AIX entries
-
-               Changes from a merge with bfox 1.07 sources
-
-                                   5/7
-                                   ---
-
-cpp-Makefile
-       - take out some explicit `touch' commands that are taken care of
-         by the dependencies
-       - added the files created in the build process (endian, psize,
-         sysdefs) to the `make clean' target
-
-nojobs.c
-       - don't print a message if a command was terminated by SIGINT
-       - removed the call to QUIT from wait_for; the builtin `wait'
-         command does not go through this function
-       - added siginterrupt calls so we can run this on a 4.2+ BSD
-         system without job control and interrupt `wait'
-
-Makefile
-       - make the command to run to remove runs of blank lines from the
-         cpp output configurable (`cat -s' means nothing on System V;
-         there are some alternatives: ssp on HP/UX, for example)
-
-                                   5/8
-                                   ---
-test.c
-       - added a `posixtest()' function that implements a proposal to the
-         Posix.2 shell working group by David Korn.  Broke the code that
-         handles unary and binary operators out into individual functions.
-         Added functions that will check whether a string is a valid test
-         unary or binary operator.
-       - changed eaccess so that the test for root and X_OK works for
-         both files and directories
-       - added a new unary operator, -a, which is true if its argument
-         simply exists in the file system
-
-shell.c
-       - changed the test for whether or not we are running under an emacs
-         shell buffer to test if TERM = "emacs", rather than for the
-         presence of the environment variable EMACS
-
-general.c
-       - added a function unset_nodelay_mode that will unset either flavor
-         of no-delay mode (O_NONBLOCK or O_NDELAY) for a given file
-         descriptor.  This is called from shell.c$main() for the standard
-         input.
-
-glob.c
-       - added code to check that a directory is really a directory before
-         calling opendir on it.  Some systems do not check, and core dump
-         in readdir() (e.g. MIPS)
-
-expr.c
-       - allow underscores in the names that the token reader recognizes
-         as variables
-       - set a maximum recursion level of 1024 calls to pushexp()
-
-builtins.c
-       - parse_and_execute has to setjmp (top_level) (saving the old value,
-         of course) so that bad substitutions and the like that call
-         (longjmp (top_level, DISCARD)) don't jump to the `real' top level,
-         which leaves input still coming from the string passed to
-         parse_and_execute, and sometimes core dumps
-
-shell.c
-       - made an option -- signal the end of the options list, as Posix
-         specifies
-
-getopt.c
-       - a slightly modified version of the GNU getopt().  The changes
-         are:
-               o the addition of a variable optopt, which holds the option
-                 character last processed
-               o The value of optarg is now specified in the case of
-                 return values: if an illegal option is given, optarg
-                 is NULL; if a required option argument is missing,
-                 optarg[0] == 0
-               o a function to programmatically set the option order that
-                 getopt will handle to the Posix option order:
-                 set_posix_option_order
-               o changed the error messages printed to be those that
-                 Posix.2 specifies
-
-getopts.c
-       - deleted private version of getopt()
-       - changes to work with the modified GNU getopt as described above
-
-                                   5/9
-                                   ---
-builtins.c
-       - added -v option to `unset'; changed it to comply with Hal
-         Jesperson's latest Posix.2 draft
-
-machines.h
-       - picked up a machine description for a 386 box running ISC 2.2 from
-         bfox
-       - add -DDUP2_BROKEN to the entries for Sequents running Dynix because
-         Dynix does not set the new file descriptor created with dup2() or
-         fcntl(fd, F_DUPFD, ...) to be open across execs
-
-make_cmd.c
-       - Make sure all the arguments to make_command are cast to the correct
-         values
-
-general.h, jobs.c, execute_cmd.c
-       - moved the definition of FD_CLOEXEC to general.h, which should be
-         included *after* <fcntl.h>
-
-shell.c
-       - timeouts should happen only when the shell is interactive, so just
-         move all the code in read_command that deals with it inside an
-         if (interactive) statement.
-       - changed message printed by show_shell_version to be that same as
-         that put into the $BASH_VERSION variable
-
-readline/readline.c
-       - don't destroy the value of the tty flags when trying to read with
-         O_NDELAY turned off in rl_gather_tyi()
-
-Makefile, squish.awk
-       - For systems that do not have a -s option to cat that compresses
-         runs of blank lines to a single blank line, there is an awk script
-         supplied that will do it
-
-parse.y
-       - made yy_stream_unget and yy_readline_unget return values, not
-         garbage
-
-                                  5/10
-                                  ----
-variables.c
-       - don't deallocate the old value in bind_variable until any needed
-         arithmetic evaluation has been done.  If we're performing an
-         assignment statment like `even=even+2' where even has the integer
-         attribute, we'll need the old value to evaluate the RHS
-
-shell.c
-       - make throw_to_top_level call bashline_reinitialize so all the
-         function pointers are restored to their correct values on an
-         interrupt (problem observed on a Sun running SunOS 4.1)
-
-                                    5/11
-                                    ----
-jobs.c
-       - replaced literal `bash:' in error messages with the name of the
-         shell, as given in shell_name
-
-                                  5/13
-                                  ----
-nojobs.c
-       - make sure the pid passed to wait_for is valid before calling
-         wait() by doing a kill(pid, 0)
-
-test.c
-       - test -e should return true if a file exists in the file system,
-         according to Posix.2.  Make it equivalent to -a, document it in
-         the man page and help text, and make -a undocumented
-       - all variables global to test.c should be declared as static
-         (e.g. test_exit_status, test_exit_buf)
-       - make test -f behave as Posix.2 mandates (file exists and is a
-         regular file) instead of trying to please both BSD and System V
-
-makeargs.sh
-       - if the file /etc/xlc.cfg exists and contains the string _IBMR2,
-         assume we're on an RS/6000 and define RISC6000
-
-builtins.c
-       - Print traps in trap_builtin only if trap_list[i] is neither of
-         DEFAULT_SIG or IGNORE_SIG
-
-jobs.c
-       - run trap on SIGCHLD only if it is neither of DEFAULT_SIG or
-         IGNORE_SIG
-
-trap.c
-       - make it an error if trap_handler catches a signal for which the
-         trap_list holds IGNORE_SIG or DEFAULT_SIG
-
-                                  5/14
-                                  ----
-
-execute_cmd.c
-       - make redirection_expand return (char *)NULL in the case where the
-         word expands to nothing
-
-jobs.c
-       - added two functions: terminate_stopped_jobs, which walks the job
-         list and sends SIGTERM and SIGCONT to each stopped job, and
-         hangup_all_jobs, which walks the job list and sends SIGHUP and,
-         if necessary, SIGCONT to all jobs
-
-shell.c
-       - added call to terminate_stopped_jobs() after reader_loop exits,
-         before the shell is about to exit
-       - added call to hangup_all_jobs if the shell receives a SIGHUP that
-         causes it to exit
-
-test.c
-       - removed remaining vestiges of the special-casing of the -f operator
-         between System V and BSD
-
-                                    5/18
-                                    ----
-
-builtins.c
-       - traps should be printed if trap_list[i] == IGNORE_SIG
-       - fixed a typo in fg_bg() that would cause a seg fault when
-         decode_job_spec returned DUP_JOB
-
-trap.c
-       - don't run a trap on EXIT if set to IGNORE_SIG
-
-shell.c
-       - the initialization of traps must be done before we initialize
-         signals, because the shell needs to know that values of signals
-         that it inherited from its parent
-
-execute_cmd.c
-       - broke all the stuff bash does after execve into a new function,
-         bash_execve, called exactly like execve.  If it returns, it
-         returns EXECUTION_FAILURE, so the execute_simple_command code can
-         just do exit (bash_execve (command, argv, envp))
-
-builtins.c
-       - made the exec builtin call bash_execve so executable shell scripts
-         can be the target of exec
-
-                                    5/19
-                                    ----
-subst.c
-       - added new functions that will perform quote removal only on
-         strings, WORD_DESCs, and WORD_LISTs.
-
-make_cmd.c
-       - quote removal is the only expansion that should be performed on
-         the delimiter of a here document, so call the new quote removal
-         functions in subst.c instead of redirection_expand()
-
-subst.c, shell.h
-       - changed expand_word_internal to do the right thing when given
-         a `quoted' argument of Q_KEEP_BACKSLASH; it means to preserve
-         backslashes unconditionally.
-
-         This causes a flag to be set inside expand_word_internal that it
-         passes to recursive invocations (like when expanding "string").
-         The values for the `quoted' argument have been changed to be
-         distinct bit values so that they can be masked and OR'd together.
-
-execute_cmd.c
-         execute_cmd.c now calls expand_word with an argument of 
-         Q_KEEP_BACKSLASH, so that only parameter expansions and "" and ''
-         removal are performed
-
-                                    5/22
-                                    ----
-
-                     Another big merge with bfox source
-
-builtins.c
-       - restore the original values of signals before calling bash_execve
-         in exec_builtin
-
-                                  5/23
-                                  ----
-test.c
-       - Brian's change to `unop' broke it -- the function now has an
-         integer passed to it, not a string of the form -x
-       - ! with 4 arguments should not fall through to the default case;
-         a `break' statement was missing
-
-config.h, machines.h, cpp-Makefile
-       - change NO_DUP2 to !HAVE_DUP2
-
-general.c
-       - change NO_DUP2 to !HAVE_DUP2
-       - add a call to SET_OPEN_ON_EXEC for the new file descriptor in our
-         dup2() emulation using fcntl
-
-execute_cmd.c
-       - removed the calls to SET_OPEN_ON_EXEC that were enabled by defining
-         DUP2_BROKEN; now undef HAVE_DUP2 and use the dup2 emulation in
-         general.c for those machines
-
-                                  5/24
-                                  ----
-subst.c
-       - Even if no expansion is performed in expand_word_internal, and
-         therefore no word splitting is done, the quoted null characters
-         still need to be removed from the WORD_LIST.  Add a new function
-         word_list_remove_quoted_nulls to do the removal for each element
-         of the list, and call it from expand_words_1
-
-bashline.c
-       - call tilde_expand on the returned $PATH components in
-         command_word_completion_function
-
-More fixes and changes from a merge with bfox's source
-
-                                    5/25
-                                    ----
-execute_cmd.c
-       - changed some `pid' declarations to be pid_t instead of int
-
-variables.c
-       - dollar_dollar_pid is still an int, so cast the return value
-         of getpid() when assigning to it
-
-                                  5/28
-                                  ----
-subst.c
-       - more quoted null character fixes -- {de,}quote_string needs to
-         handle quoted null strings, and list_string has to do the
-         right thing with them
-
-builtins.c, execute_cmd.c
-       - bash_execve -> shell_execve
-
-makeargs.sh
-       - typo fix: elc.cfg -> xlc.cfg
-
-cat-s
-       - change the length($0) == 0 to NF == 0 so that lines with only white
-         space are deleted as well as blank lines
-
-subst.c
-       - quote_string and dequote_string now return char * and allocate a
-         new string for the return value
-
-expr.c
-       - have evalexp() save and restore the old value of evalbuf around
-         possible recursive calls
-
-cpp-Makefile
-       - the failure of a `touch' command is no longer a fatal error
-
-readline/readline.c
-       - only try to use ONLCR if it is defined
-
-machines.h
-       - fixes to the AT&T 3B2 and IBM AIX (RT, 370) descriptions
-
-readline/vi_mode.c
-       - now `p' is allowed at the end of a line
-       - yank-to (yw, ye) yanked one-too-few characters -- fix in
-         rl_vi_yank_to
-       - `r' command should not advance the cursor to the right
-       - `cw' now works like ce (and cW like cE) in that the white space
-         after the deleted word is not deleted
-       - cw now deletes the last character on the line, when point is the
-         last character on the line when it is executed
-
-                                  5/29
-                                  ----
-subst.c
-       - fixed a seg fault when trying to do parameter substitution assignment
-         (${a=b}) with a null string:  ${UnDeFiNeD=`false`}
-
-machines.h
-       - new entry for Sequent Symmetry running Dynix/ptx (System V.3.2)
-
-builtins.c
-       - parse_and_execute needs to handle longjmp(top_level, EXITPROG)
-         (FORCE_EOF, too) by restoring the old value of top_level and
-         doing another longjmp.  This is needed so that an exit inside a
-         `.' script will actually exit the shell
-       - make `typeset -f foo' print the definition of the function foo,
-         if one exists.
-
-jobs.h
-       - defined NO_PID as -1, a value that cannot possibly be a pid
-
-jobs.c
-       - all pid and pgrp variables are initialized to (pid_t) NO_PID
-
-subst.c
-       - reorganized the ${} code into several functions
-       - make the brace-counting code that gathers the RHS of a ${}
-         parameter substitution use extract_delimited_string
-       - if no asynchronous commands have been executed, $! should echo
-         nothing
-       - make ${#} work like $#
-       - make ${#-foo} a bad substitution
-       - test for len_alt_opener == 0 in extract_delimited_string before
-         comparing the string with alt_opener
-       - ${special_var?} should echo the standard message ``parameter
-         null or not set''
-       - plugged some memory leaks -- memory was not freed before longjmp
-         calls after bad substitutions
-
-                                  5/30
-                                  ----
-
-subst.c
-       - more radical reorganization
-
-cpp-Makefile
-       - redid the dependencies so that it's no longer required to `touch'
-         a .h file if another .h file changes
-
-glob.c
-       - statbuf -> finfo
-
-readline/tilde.c
-       - new file that handles the tilde expansion for the shell and readline
-
-readline/readline.c
-       - tilde_expand removed from this file; now in tilde.c
-
-general.c
-       - new function tilde_initialize to initialize the tilde expansion
-         code
-       - bash_tilde_expand is now in general.c, since it should work even
-         if readline is turned off for some reason
-
-shell.c
-       - tilde_initialize called as part of shell initialization
-
-                                  5/31
-                                  ----
-
-parse.y
-       - aliases consisting entirely of digits are now allowed; simply
-         commented out the !all_digits test
-
-documentation/bash.1
-       - the PROMPTING section should make clear the difference between
-         \w and \W
-
-machines.h
-       - small fix to isc386 entry -- we still have alloca if we're using
-         gcc
-       - add -D_DGUX_SOURCE to the SYSDEP_CFLAGS for the DG/UX entries
-       - add -DNLS to the RS6000 SYSDEP_CFLAGS
-
-cppmagic.sh
-       - improved the test for gcc-cpp by also looking for the word
-         `recognized' in the error message
-
-readline/readline.c
-       - don't declare getpwuid() and getpwnam() if we're on an ISC 386
-         machine
-
-machines.h, posixstat.h, execute_cmd.c
-       - changes from Saul Lubkin for Posix bash on ISC 2.2
-
-                                   6/1
-                                   ---
-
-jobs.c
-       - make the behavior of jobs started when job control is not active
-         be the following:
-
-               if the shell is interactive, set SIGTSTP, SIGTTIN, and
-               SIGTTOU to SIG_IGN.  This way, typing ^Z to a running
-               process will not do anything
-
-               if the shell is  non-interactive, set SIGTSTP, SIGTTIN,
-               and SIGTTOU to SIG_DFL, so jobs started from scripts
-               will stop when the script shell gets a SIGTSTP
-
-         It might work to simply not change the values of the signals if
-         job_control == 0, since this is how they *should* be, but that
-         seems too chancy.
-
-execute_cmd.c
-       - make && and || constructs unstoppable, because there's no other
-         way to prevent the second process from executing immediately
-         if the first one is stopped (this is what ksh appears to do).
-         Make sure that we add an unwind_protect call to restore the
-         value of job_control if the command is interrupted.
-
-                                   6/3
-                                   ---
-
-subst.c
-       - tilde expansion should be performed if there is an unquoted tilde
-         anywhere in the word, so we can check for `=~' and `:~'
-
-                                   6/4
-                                   ---
-
-subst.c
-       - tilde expansion should be performed in do_assignment_internal
-         only if the `expand' argument is 1 and we do the other expansions
-       - pass the word to tilde_expand in expand_words_internal even if
-         its quoted bit (tlist->word->quoted) is set
-
-jobs.c
-       - make set_job_control return the old value of job_control, so you
-         can say `old_job_control = set_job_control (0);'
-
-unwind_prot.c
-       - added a structure to save the value of an integer variable.  Two
-         new functions use it: unwind_protect_var (&var) allocates this
-         structure, fills it in, then calls add_unwind_protect specifying
-         restore_variable as the function to execute.  restore_variable takes
-         this structure as an argument, restores the specified variable,
-         and frees the structure it gets
-
-builtins.c, execute_cmd.c
-       - changes to use unwind_protect_var to restore variables
-
-                                   6/5
-                                   ---
-
-readline/readline.c
-       - readline now enables 8-bit input by default for termio, termios
-         systems (c_iflag &= ~ISTRIP)
-
-shell.c, builtins.c
-       - special_source_interrupt was renamed to parse_and_execute_level
-
-builtins.c
-       - parse_and_execute now uses unwind-protects to clean up after itself,
-         allowing these to be run from another place in the code if necessary
-       - special_buf is no longer used as a cleanup mechanism
-       - new function parse_and_execute_cleanup that can be called from
-         anywhere that encapsulates all the necessary unwind protects for
-         parse_and_execute
-       - period_builtin now calls parse_and_execute_cleanup to have
-         parse_and_execute clean up if the `return' builtin is executed
-         while in the middle of a `.' command and not inside a function
-
-trap.c
-       - run_interrupt_trap now prevents recursive calls to itself by
-         making trap_list[SIGINT] null while it is executing
-
-shell.c
-       - reorganized throw_to_top_level: run_interrupt_trap is now called
-         as the first thing, and throw_to_top_level calls
-         parse_and_execute_cleanup to make parse_and_execute clean up
-         after itself
-
-subst.c
-       - fixed a bug caused by string_rest_of_args returning NULL, which
-         caused parameter_brace_expand_length to get a seg fault because
-         it didn't check the return value when expanding ${#*} with no
-         dollar variables
-
-machines.h
-       - fixed up the HP/UX entry.  HP/UX 7.0 and above (the Posix versions)
-         define __hpux to cpp, giving us a way to automatically tell the
-         difference between Posix and non-Posix implementations (whether or
-         not to link with -lBSD)
-
-trap.c
-       - save the value of last_command_exit_value while running the exit
-         trap.  This way any exit trap will not change the value of
-         `exit 5', for instance
-
-subst.c
-       - added a function unquoted_member (c, s), which behaves like
-         member but tests whether or not c occurs in an unquoted portion
-         of the string
-       - made the test for calling tilde expansion be
-               ((first character is a tilde) ||
-                (tilde appears && word not quoted) ||
-                (tilde appears && tilde is unquoted))
-         this uses unquoted_member (c, s)
-
-shell.c
-       - Xenix has the middle two arguments to setvbuf different from
-         every other implementation in the world.  Add #ifdef'd code
-
-machines.h
-       - the Xenix 386 definition has to have M_OS and SYSDEP_CFLAGS
-         undefined because they might have already been set if i386
-         is defined
-
-cpp-Makefile
-       - make the gcc line for making malloc.o include a -o $@, since we
-         know gcc can handle it
-
-builtins.c
-       - preserve the value of last_command_exit_value around the
-         execution of ~/.bash_logout
-
-                                   6/6
-                                   ---
-subst.c
-       - generalized unquoted_member to unquoted_substring, and changed
-         the tilde expansion tests to call unquoted_substring with the
-         full tilde prefixes as the substrings (:~, =~)
-
-builtins.c
-       - `read' now accepts a `--' argument to signal the end of the
-         options
-
-                                   6/7
-                                   ---
-documentation/bash.1
-       - added description of the `silent' error reporting mechanism of
-         getopts that is enabled when the first character of the option
-         string is a `:'
-       - added description of the new features of tilde expansion (:~
-         and =~)
-
-subst.c
-       - fixed sv_optind to call getopts_reset with the value of $OPTIND
-         rather than resetting it to 1
-
-getopt.c
-       - commented out the code executed when optind is reset to 0 that
-         decides on the option order.  We always want REQUIRE_ORDER
-
-getopts.c
-       - only call set_posix_option_order once
-
-builtins.c
-       - `type' gets a -- option to signal the end of the option arguments
-       - `typeset/declare' gets a -- option to signal the end of the
-         option arguments
-       - `hash' gets a -- option to signal the end of the option arguments,
-         and gets rewritten to boot
-       - redid `umask' option processing code to be more regular -- fixed
-         the bug where `umask --' would print nothing
-       - added Posix.2 `-p' option to `command' builtin, also added a
-         `--' argument with the standard meaning
-       - `trap' gets a -- option to signal the end of the option arguments,
-         and gets rewritten to structure it like other builtins
-       - set_or_show_attributes was changed so that you can't just make a
-         read-only variable read-write by saying `readonly -n var'
-
-                                    6/8
-                                    ---
-variables.c
-       - if bash is executing a function (variable_context > 0), then look
-         in the temporary environment for a variable's value first
-
-machines.h
-       - new entry for Honeywell Bull X20 from lele@idea.sublink.org
-       - for hp/ux versions < 7.0, we still need to link with -lPW to
-         get alloca
-
-                                   6/11
-                                   ----
-subst.c
-       - include <sys/types.h>
-
-machines.h
-       - change the `catch-all' entries for things like MIPS to use
-         #if defined (mips) && !defined (M_MACHINE)
-
-builtins.c
-       - took out the readonly -n change.  Enable it for strict sh
-         compatibility
-
-unwind_prot.c
-       - extended the saved variable code to full generality by adding a
-         size field to the struct.  Variables bigger than a char * will
-         be copied into a block of memory allocated to hold their value
-         and restored from there
-
-builtins.c, trap.c, execute_cmd.c
-       - changes to unwind_protect_var calls to add value, size arguments
-
-shell.c, jobs.c
-       - only catch SIGINT with sigint_sighandler if the shell is
-         interactive; otherwise let termination_unwind_protect get it
-
-shell.c
-       - startup files may now be aborted by using the `return' builtin
-       - set SIGTERM to SIG_IGN if the shell is interactive, not just if
-         it's a login shell.  Without this, `kill 0' will kill an
-         interactive shell
-
-                                   6/12
-                                   ----
-jobs.c
-       - replace instances of M_UNIX with the more descriptive SCO
-
-machines.h
-       - gather all 386 machines into one block, stop #undef'ing i386
-
-builtins.c
-       - make exec_builtin not completely expand the command name and
-         stick it in argv[0] if the `-' flag is supplied -- instead,
-         tack a `-' on the front of whatever the user typed
-
-                                   6/13
-                                   ----
-jobs.c
-       - don't change SIGQUIT's signal handler at all in
-         initialize_job_signals
-
-execute_cmd.c
-       - change execute_case_command to do string_list on the result of
-         expand_word (word) instead of just taking the first word and
-         assuming no splitting was done
-       - in execute_simple_command, make sure the call to bind_lastarg
-         is done before the dispose_words, because lastarg just points
-         at the last word, which is invalid after the dispose_words
-
-machines.h, jobs.c
-       - new machine-specific variables: BSD_GETPGRP, TERMIOS_MISSING
-
-glob.c
-       - make an incomplete character class (e.g. [X-]) behave as if
-         no class were specified instead of giving an error
-
-filecntl.h
-       - new include file that encapsulates fcntl.h and the declarations
-         for close-on-exec stuff
-
-execute_cmd.c, builtins.c, shell.c
-       - new arg for execute*command* functions that tells whether or not
-         to obey the -e flag and exit when a simple command exits with a
-         non-zero exit status
-       - fixed exit status of while to be success if no commands are
-         executed
-       - fixed exit status of until to be success if no commands are
-         executed
-
-                                     6/15
-                                     ----
-execute_cmd.c
-       - since while and until commands are so similar, combined the bodies
-         into execute_while_or_until (), which takes a type argument to
-         decide which one it is.  execute_{while,until}_command just call
-         this function
-       - added unwind protect calls to execute_for_command to free up the
-         list (for word in list)
-       - eliminated a possible call to find_function in execute_simple_command
-       - added unwind protect calls to execute_simple_command
-       - plugged a couple of memory leaks in execute_simple_command:
-               o freeing the expanded command words when executing a function
-                 or builtin with a pipe in or out
-               o the name of the command (`command') when executing from a
-                 disk file
-
-subst.c
-       - implemented the Posix.2-style $(( )) arithmetic substitution.  I
-         think we'll let this remain mercifully undocumented
-
-variables.c
-       - removed support for old Posix.2-style exported functions, since
-         Posix.2 no longer specifies exported functions
-
-                                     6/17
-                                     ----
-nojobs.c
-       - make wait_for_single_pid () check the validity of its pid
-         argument before calling wait(2), returning 127 if the pid is
-         invalid
-
-jobs.c
-       - if wait_for_single_pid () is called with an argument that does
-         not match a child of the shell, return 127 as Posix.2 specifies
-
-
-builtins.c
-       - made `set' treat `set -' and `set +xv' as equivalent, like the
-         Posix.2 spec mandates (though it does mark the construct as
-         obsolescent)
-       - made the strings output by `export' and `readonly' when showing
-         variable definitions match those specified by Posix.2
-       - if STRICT_POSIX_COMPATIBILITY is #defined when compiling the
-         shell, the shell will exit in the event that it cannot find the
-         file specified as the first argument to `.'
-
-variables.c
-       - turned set_auto_export(var) into a two-statement macro, saving a
-         number of function calls
-
-                                     6/19
-                                     ----
-execute_cmd.c
-       - split the different parts of execute_simple_command into different
-         functions: execute_builtin_or_function, execute_disk_command, and
-         execute_subshell_builtin_or_function to make the whole mess
-         easier to understand
-
-                                     6/21
-                                     ----
-builtins.c
-       - make sure that `type' does not report directories as executable.
-         Call executable_file to make sure.
-       - have the `set' builtin check the validity of its flags arguments
-         before actually doing anything with them.  This prevents things
-         like `set -help' from exiting the shell
-
-flags.h
-       - added declarations for the functions exported by flags.c
-       - added #if defined (_FLAGS_H) protection against multiple inclusion
-
-shell.c
-       - don't do the .bashrc if we're a login shell, even if we're not
-         doing the .profile
-
-general.c
-       - uts -> ut, since UTS compilers define uts for the C preprocessor
-
-makeargs.sh
-       - better treatment of machines that do not have the `hostname'
-         command
-
-                                   6/22
-                                   ----
-readline/readline.c
-       - on termio and termios systems, turn off NL -> CR and CR -> NL
-         input translation so bash will see the two characters distinctly
-
-                                     6/23
-                                     ----
-ulimit.c
-       - cleaned up the shell_ulimit code so there was not so much code
-         duplication (cut 70K from binary!)
-       - added -H, -S to use hard, soft BSD resource limits
-       - ulimit now allows multiple options: -d -t -c or -dtc
-       - ulimit can print multiple options in the same format it uses for
-         -a
-       - USG systems can use -p, -n, -a -- there is no longer a ulimit.c.new
-       - -n uses RLIMIT_NOFILE for getting as well as setting, and so can
-         use hard and soft limits
-       - `ulimit limit' now behaves like `ulimit -f limit'
-
-                                     6/25
-                                     ----
-execute_cmd.c
-       - since do_redirection () is the only place where we have the value
-         of the expanded redirection word, report open () failures there
-
-       - broke the #! emulation code out into a separate function and made
-         it handle the single argument that you can give interpreters
-
-builtins.c
-       - make `command -p' use the Posix.2 configuration variable _CS_PATH
-         (with confstr()) or the #define CS_PATH to find the path that will
-         pick up all the standard utilities before falling back to using
-         COMMAND_MINUS_P_PATH
-
-                                   6/26
-                                   ----
-builtins.c
-       - make sure we include `-o' in the list of legal flags when checking
-         for illegal ones in the set builtin
-
-                                   6/29
-                                   ----
-fc.c
-       - parse and execute the entire edited file of commands when doing
-         `fc -e' so that compound commands work
-
-readline/readline.c
-       - allow leading whitespace in lines passed to rl_parse_and_bind()
-
-machines.h
-       - MIPS machines cannot handle the inclusion of /usr/include/sys/wait.h,
-         so #undef HAVE_WAIT_H
-
-cpp-Makefile
-       - pass only a subset of the CFLAGS down to the make in readline,
-         because some make programs and cc's get overloaded
-
-                                     6/30
-                                     ----
-ulimit.c
-       - rewrote to do the 6/23 changes right
-       - added -- to mean end of options
-
-execute_cmd.c
-       - made a number of functions static
-       - changed do_redirection to do_redirection_internal
-
-cpp-Makefile, config.h, builtins.h, builtins.c, subst.c
-       - made the inclusion of the getopts code dependent on the definition
-         of GETOPTS_BUILTIN
-
-vprint.c
-       - new name for misc.c, since all that it contains now are definitions
-         for v[fs]printf()
-
-builtins.c
-       - made help for history_builtin include -s only if HISTORY_DASH_S
-         is defined, to match the code
-       - made the help for the ulimit builtin match the code, depending on
-         HAVE_RESOURCE being defined
-       - make the help builtin interruptible by adding calls to QUIT in
-         the loop
-       - `cd -' now prints the name of the directory it's changing to
-       - change the help text for the wait builtin to show that job specs
-         are allowed only on systems which support job control
-       - changed an fprintf(stdout, ...) to printf(...) in history_builtin
-
-jobs.c
-       - make kill_pid kill the correct pid when walking through all the
-         pids in a job
-
-test.c
-       - don't call strlen when we just want to know whether or not a string
-         is null; it suffices to test the first character
-
-bashline.c
-       - fixed a typo in the comment text for the FIGNORE code
-
-documentation/bash.1
-       - some typo fixes
-
-documentation/features.texi
-       - fixed some typos
-
-glob/glob.c
-       - if we're not globbing dot filenames, and the first character of the
-         pathname is a `.', make sure the pattern matches it exactly before
-         we call glob_match in glob_vector()
-
-                                    7/1
-                                    ---
-fc.c
-       - use maybe_execute_file instead of calling parse_and_execute
-         when re-executing the file of commands
-
-builtins.c
-       - removed the help text #define; the savings is too small to bother
-
-ulimit.c
-       - set `verbose_print' after a group of specific options is given,
-         so `ulimit -pdt -m' prints everything verbosely
-
-                                     7/3
-                                     ---
-getopts.c
-       - made it include the Gnu `getopt.h' instead of declaring its
-         variables as extern
-
-getopt.c
-       - added a function getopt_set_posix_option_order() to set the
-         default option ordering to that required by Posix.2
-       - added a variable default_ordering to hold the default style
-         of option ordering that getopt() handles.  Usually it is
-         PERMUTE, but it can be set to REQUIRE_ORDER
-
-cpp-Makefile
-       - made all of the getopts files depend on GETOPTS_BUILTIN being
-         defined; changed some variable names for the getopts files
-
-builtins.c
-       - made exit_builtin and logout_builtin return the value of
-         exit_and_logout() instead of expecting exit_and_logout not to
-         return
-       - the `type' builtin now prints `keyword' instead of `reserved word'
-         when given the `-type' option
-
-jobs.c
-       - removed the final default #else clause for set_new_tty_driver();
-         if none of NEW_TTY_DRIVER, TERMIO_TTY_DRIVER, or TERMIOS_TTY_DRIVER
-         is defined, the compilation is hopeless anyway
-
-                                     7/4
-                                     ---
-jobs.c
-       - added support for another format for pretty_print_job: print the
-         information only of the job is marked as not having been notified,
-         then set the job as having been notified so there will not be
-         multiple lines of information about the same job.  flush_child ()
-         resets this flag to 0 when a job's status changes
-       - made a number of private functions static
-
-builtins.c
-       - added a Posix.2a-like `-n' flag to the jobs builtin to print only
-         those jobs that have changed status since they were last printed
-
-documentation/bash.1
-       - added description of -n option to `jobs' builtin section
-
-                                    7/5
-                                    ---
-shell.c
-       - test help file name for nullness and emptyness (hf && *hf) before
-         trying to read the history from it.  Make the same changes when
-         saving the history.
-
-shell.c, jobs.c, quit.h
-       - changed the type of throw_to_top_level from type `sighandler' to
-         void
-
-execute_cmd.c, builtins.c
-       - make sure all int-valued functions return some value
-
-readline/readline.c
-       - if S_ISDIR is defined, then use it, otherwise use S_IFDIR
-         (Posix vs. traditional Unix)
-
-                                     7/6
-                                     ---
-builtins.c
-       - made the exit status of the kill builtin agree with the Posix.2
-         specification
-
-documentation/bash.1
-       - added specifications of the return values of most of the builtins
-         likely to be used in scripts
-
-                                    7/8
-                                    ---
-execute_cmd.c
-       - set this_shell_builtin and last_shell_builtin each time we
-         execute a simple command.  This means that this_shell_builtin
-         being non-null will indicate we are running a builtin
-
-variables.c
-       - if we're executing a builtin, look in the temp environment first
-         for a variable before looking in the variable hash table
-
-                                   7/11
-                                   ----
-test.c
-       - fixed precedence bug by making bash adhere to traditional sh
-         grammar for -a and -o
-
-readline/readline.c
-       - fixed a bug that would cause core dumps when trying to use ^P
-         to get to a line longer than rl_line_buffer_len, then trying
-         to insert something.
-
-
-
-[Radical reorganization of the shell sources, inclusion of builtins/*]
diff --git a/CWRU/old-changelogs/CWRU.chlog.v6 b/CWRU/old-changelogs/CWRU.chlog.v6
deleted file mode 100644 (file)
index 3fb0fb1..0000000
+++ /dev/null
@@ -1,1010 +0,0 @@
-[Beginning of work with version 1.10]
-
-                                    7/14
-                                    ----
-documentation/bash.1
-       - added description of the `bind' builtin
-       - fixed typo in description of the `command' builtin
-
-builtins/bind.def
-       - fixed up the error message printed when rl_read_init_file fails
-
-builtins/alias.def
-       - print_alias should be a static function
-
-builtins/history.def
-       - added support for `--'
-
-builtins/break.def
-       - added the glue for the `continue' builtin, which had been left out
-
-builtins/common.c
-       - changed find_shell_builtin to use a binary search.  This eliminates
-         40 calls to `strcmp' each time `test' is called, for instance
-       - added a function initialize_shell_builtins () that sorts the array
-         of shell builtins so the binary search will work
-
-shell.c
-       - added call to initialize_shell_variables in shell_initialize()
-
-builtins/mkbuiltins.c
-       - added a footer to the text written to builtins.c that initializes
-         the variable num_shell_builtins to the number of shell builtins in
-         the shell_builtins array
-
-builtins.h
-       - added an extern declaration of num_shell_builtins
-
-builtins/enable.def, builtins/help.def
-       - changed to use num_shell_builtins
-
-cpp-Makefile
-       - make the copy of builtins/builtext.h happen only if builtext.h
-         has changed, using `cmp'.  This keeps bashline.c from being
-         recompiled every time something in the builtins directory
-         changes
-
-                                  7/15
-                                  ----
-builtins/history.def
-       - fixed up the help text to reflect reality
-
-documentation/bash.1
-       - more changes to the `alias' builtin text
-
-                                  7/16
-                                  ----
-builtins/Makefile
-       - added a .SUFFIXES line to define .def as a suffix; old versions of
-         make require it
-
-getcppsyms.c
-       - corrected spelling error: MTPSEL -> MIPSEL
-       - added more defines: mc68020, m68k, bsd4_2, bsd4_3, ibmrt, ns32000,
-         hp9000s800, hp9000s500, hp9000s300, hp9000s200
-
-readline/readline.c
-       - fixed a typo on rl_prep_terminal for BSD tty driver systems that
-         caused ^J and ^M to both be mapped to ^M on input.  The net
-         effect was that it was impossible to get a literal ^M into a line,
-         like into an `ed' here document
-
-                                  7/17
-                                  ----
-
-cpp-Makefile
-       - make sure CPPFLAGS is passed to sub-makes
-
-machines.h
-       - Pyramid's don't have alloca(), so #undef HAVE_ALLOCA in the
-         machines.h entry
-
-builtins/history.def
-       - cleaned up the option parsing a little bit; corrected support
-         for the `--' option
-
-                                  7/18
-                                  ----
-variables.c
-       - don't inherit IFS from the environment anymore
-
-machines.h
-       - fix the definition of SYSDEP_CFLAGS for ultrix machines
-
-cpp-Makefile
-       - make builtins/libbuiltins.a depend on pipesize.h, because ulimit.def
-         includes it
-       - shell.o needs to depend on endian.h
-
-getcppsyms.c
-       - more HP symbols for the 9000 series
-
-subst.c
-       - if command_substitute is passed a null or empty string, then just
-         return ((char *)NULL) immediately, without forking a child
-
-parse.y, subst.c, shell.c, execute_cmd.c
-       - added ksh-like process substitution using FIFOs (named pipes)
-
-                                  7/19
-                                  ----
-
-config.h
-       - made PROCESS_SUBSTITUTION a configurable option
-
-cpp-Makefile
-       - made y.tab.c depend on files included by shell.h
-
-                                    7/20
-                                    ----
-subst.c
-       - make sure we call close_pgrp_pipe from the process substitution
-         code in the parent
-
-                                  7/24
-                                  ----
-subst.c
-       - no longer unconditionally tilde-expand `:~' in words (but still
-         do it in assignments)
-
-test.c
-       - trim trailing blanks from integer expressions so isint() does not
-         choke on them
-
-                                  7/25
-                                  ----
-makeargs.sh
-       - remove the -D from the SYSDEF definition of USGr4
-
-builtins/history.def
-       - include "../filecntl.h" instead of sys/file.h
-
-make_cmd.c
-       - add declaration of reverse_list ()
-
-subst.c
-       - add cast to return value from strlen() in sub_append_string ();
-         ANSI C makes the return value a size_t, which can be unsigned
-
-builtins/suspend.def
-       - add argument to suspend_continue(), since it's a signal handler
-
-readline/readline.c
-       - make rl_handle_sigwinch have only one argument: int sig
-       - make rl_signal_handler have only one argument: int sig
-       - add extern char *getenv() declaration at top level
-       - add extern char *index(), *rindex() declarations at top level, if
-         these are not already #defines
-       - add cast to d_namlen area of struct dirent, because it's an
-         unsigned short
-
-test.c
-       - change isint to:
-               take a string as first argument
-               accept a NULL second argument, meaning toss the value
-               work correctly with leading - and +
-               compute the value on the fly, rather than calling atol
-       - change age_of to:
-               take a string as first argument
-               accept a NULL second argument
-       - int_expt_err -> integer_expected_error
-       - changed all calls to stat to call a new function test_stat, which
-         immediately returns an error when given a null pathname.  This is
-         what Posix.1 says
-       - changed eaccess, age_of to disallow null pathnames as well
-
-builtins/ulimit.def
-       - System V.4 does not define RLIMIT_RSS, so disable the `m' option
-
-builtins/mkbuiltins.c
-       - need to include "../filecntl.h"
-
-builtins/source.def
-       - need to include "../filecntl.h"
-
-builtins/times.def
-       - System V.4 does not define a struct rusage, so use times(2) instead
-         of getrusage(2)
-
-                                    7/26
-                                    ----
-readline/readline.c
-       - output a \r in crlf() only if we're running under the BSD tty
-         driver (NEW_TTY_DRIVER) -- the Posix (termios) and System V
-         (termio) drivers do not disable output nl->crnl mapping
-       - if read returns 0 in rl_getc, return EOF to the caller
-
-cpp-Makefile
-       - make sure we pass -DHAVE_UNISTD_H down to the make in readline
-         so that the proper tty driver is used (BSD, termio, or termios)
-
-                                    7/27
-                                    ----
-config.h, parse.y
-       - made csh-style `!' history expansion and prompt string decoding
-         configurable, based on the definition of CSH_HISTORY_EXPANSION
-         and PROMPT_STRING_DECODE, respectively.  Both can be enabled
-         and disabled in config.h
-
-readline/readline.c
-       - reformatted maybe_unsave_line and maybe_replace_line
-       - if we use ^R to find a history line longer than rl_line_buffer_len,
-         we can't simply do a strcpy(the_line, line_found).  We have to use
-         xrealloc to increase the length of rl_line_buffer in
-         rl_search_history
-       - do the same xrealloc trick in maybe_unsave_line, rl_get_next_history
-
-execute_cmd.c
-       - changed the way pipes are created.  Now, SIGCHLD is blocked before
-         anything is done, and pipelines are created in a tight while loop
-
-parse.y
-       - changed pipelines to be right associative rather than left.  This
-         way, the process tree is right-heavy rather than left -- there will
-         never be a command with a pipeline in cmd->value.Connection->first
-
-jobs.c
-       - removed all references to the pgrp_pipe process group synchronization
-         hack, including the functions pipe_read, pipe_close, and
-         close_pgrp_pipe
-
-subst.c
-       - removed calls to close_pgrp_pipe for command and process
-         substitution
-
-execute_cmd.c
-       - obey_minus_e_flag -> check_exit_on_error
-
-                                  7/30
-                                  ----
-builtins/command.def
-       - HP/UX 7.x defines _CS_PATH, but does not have the getconf() function
-         to support it.  Need a special #define to work around.
-
-                                  7/31
-                                  ----
-
-shell.h, parse.y, make_cmd.c, copy_cmd.c, print_cmd.c, execute_cmd.c
-       - consolidated the command->subshell and command->invert_pipeline
-         members into a single command->flags
-
-execute_cmd.c, shell.c, builtins/common.c, builtins/command.def
-       - removed the check_exit_on_error parameter to the execute_*
-         functions; the functionality is now one of the flag bits attached
-         to each command.
-
-shell.h, make_cmd.c
-       - each command type now has a `flags' member associated with it,
-         initialized to 0 in make_XXX_command
-
-                                    8/3
-                                    ---
-jobs.c
-       - wrap the system dependencies for waiting for children inside a
-         WAIT_FOR_CHILD macro, whose syntax matches the Posix waitpid()
-         function
-
-readline/readline.c
-       - make sure all definitions for XON/XOFF are wrapped inside the
-         USE_XON_XOFF cpp define
-
-subst.c
-       - make string_list and string_list_dollar_star use a common base
-         function: string_list_internal (list, separator)
-
-                                   8/5
-                                   ---
-builtins/mkbuiltins.c
-       - build the new builtins.c as a temp file, then rename it when
-         it's done
-
-shell.c
-       - when on an Apollo, turn off line editing if executing in a pad
-
-                                   8/6
-                                   ---
-inlib.def
-       - new builtin for use on Apollo machines
-
-lib/readline/vi_mode.c
-       - fixed `blind strcpy into the_line' bug in rl_vi_dosearch
-       - made ~ vi change case command take a numeric argument, like ksh-88
-       - made vi character search commands (t, T, f, F, ;) take arguments
-       - made vi `_' directive unconditionally append a space before
-         inserting the last arg
-       - make rl_vi_replace only create vi_replace_keymap once
-
-                                   8/7
-                                   ---
-lib/readline/{Makefile, readline.c, vi_mode.c}
-       - finally made vi_mode.c standalone and not included by readline.c
-         so I don't have to wait so long for recompiles each time I change
-         something in either file
-
-lib/readline/vi_mode.c
-       - made rl_vi_change_char (vi `r' command) accept an argument count
-       - if user has bound ^H to erase, make ^H erase when in overstrike
-         mode (vi `R' command)
-       - `cl' deletes one too many characters, so don't advance rl_mark an
-         extra character in rl_vi_change_to if the command is `l'
-       - readline thinks that the first word on a line is the 0th, while vi
-         thinks the first word on a line is the 1st.  Compensate.  This is
-         for the vi `_' command
-       - `dl' deletes one too many characters, make fix to rl_vi_delete_to
-         analogous to that made to rl_vi_change_to to not move mark forward
-       - fixed handling of numeric args in rl_vi_domove so that the correct
-         numeric arg was displayed, the digit read was used to initialize
-         rl_numeric_arg, and the non-digit key stuffed back by rl_digit_loop1
-         was re-read, executed, and passed back as the value of the
-         movement command (makes d5l work right, for instance)
-       - made rl_vi_fetch_history treat a numeric argument correctly -- an
-         argument of n means we want the command that `history' would have
-         labeled as the nth command in its output
-       - extended the vi search commands `/' and `?' to accept a string
-         starting with `^' and find only matches that are prefixes of
-         history lines.  Used a new function vi_history_search_pos that
-         acts like history_search_pos but understands `^'
-       - use rl_line_buffer instead of the_line so the_line can be static
-         and private to readline.c
-
-lib/readline/history.c
-       - fixed the calculation of how much of the history line to test when
-         searching forward in the history list for a string.  Previously,
-         the absolute value of the difference in length was not used.
-       - generalized history_search into history_search_internal, which
-         takes a third parameter that tells whether or not the string must
-         match at the beginning of a history line.  A new function
-         history_search_prefix uses it, and get_history_event now uses it.
-         history_search (string, dir) now simply calls
-         history_search_internal (string, dir, 0)
-
-lib/readline/readline.c
-       - fixed rl_yank_nth_arg to always move point forward and append a
-         space if in vi mode
-
-bashline.c
-       - added a function to implement the vi movement mode `v' command,
-         which runs `fc -e ${VISUAL:-${EDITOR:-vi}}' on either the 
-         command being entered or a command from the history corresponding
-         to the numeric argument given to the command.  This is commented
-         out, because currently there's no way for the shell to know
-         whether or not vi-mode has been compiled into readline
-
-                                    8/8
-                                    ---
-shell.h, execute_cmd.c, parse.y, print_cmd.c
-       - CMD_INVERT_PIPELINE -> CMD_INVERT_RETURN
-         CMD_IGNORE_EXIT_VALUE -> CMD_IGNORE_RETURN
-
-execute_cmd.c
-       - changes from bfox
-       - need to initialize lastarg to NULL at start of
-         execute_simple_command.  For a command that's just an assignment
-         statement, `words' is nil and lastarg never gets set, binding
-         garbage and possibly stepping on memory
-       - lastarg now can be a variable local to execute_simple_command,
-         and it works better that way (e.g. it gets set to garbage when
-         executing a `.' command)
-
-builtins/exec.def
-       - after testing for `-' as argument, make sure there are more
-         arguments before doing anything else.  Return if no more args
-
-                                   8/9
-                                   ---
-builtins/trap.def
-       - make sure the shell always ignores SIGQUIT, especially after a
-         call to trap that restores the default value of the signal handler.
-         The same thing needs to happen for SIGTERM if interactive, and
-         SIGTTIN, SIGTTOU, and SIGTSTP if job control is active
-
-parse.y
-       - call run_pending_traps () immediately after calling readline
-
-                                    8/10
-                                    ----
-jobs.c
-       - only declare sys_siglist once, at top of file, rather than have
-         three or four separate extern declarations
-
-                                  8/13
-                                  ----
-subst.c
-       - rewrote string_extract_double_quoted as a state machine to fix a
-         quoting bug and implement the Posix.2 draft 11 quoting rules
-
-lib/readline/vi_mode.c
-       - don't go back into insertion mode after performing completion in
-         command mode
-
-                                  8/15
-                                  ----
-subst.c
-       - rewrote list_string to implement the Posix.2 draft 11 field
-         splitting rules
-
-                                  8/16
-                                  ----
-builtins/alias.def
-       - make sure single_quote() adds terminating alias
-
-parse.y
-       - make sure we turn off expand_next_token when returning tokens that
-         are not words, like `>'
-
-lib/readline/readline.c
-       - make the termio and termios versions of rl_prep_terminal and
-         rl_deprep_terminal use the static flag terminal_prepped to tell
-         whether or not they should do anything
-
-test.c
-       - removed unused definition of test_io_error
-
-                                  8/18
-                                  ----
-lib/readline/readline.c
-       - fixed the BSD/v7 terminal driver versions of rl_prep_terminal and
-         rl_deprep_terminal to mimic the structure of the sys5/Posix versions
-         with respect to terminal_prepped
-       - fixed a possible call to malloc(0) when allocating space for
-         macro_keys in rl_macro_bind
-       - made rl_variable_bind ring the bell if asked to set the editing mode
-         to vi when vi mode has not been compiled into libreadline
-
-test.c
-       - fixed term() so that -l string is recognized correctly as the LHS
-         of a binary operator
-       - made enough changes so that test.c compiles standalone on the RT
-         running 4.3 and can be installed as /bin/test
-
-                                   8/20
-                                   ----
-parse.y
-       - fixed turning off alias expansion so aliases are still expanded
-         after || and &&, for instance
-
-execute_cmd.c
-       - should only add an unwind-protect to restore the signal mask if
-         job control is in effect
-
-builtins/suspend.def
-       - should only be compiled in if job control is in effect
-
-builtins/alias.def
-       - make sure we free the string allocated and returned by single_quote()
-         in print_alias()
-
-builtins/reserved.def
-       - fix help text for `for' loop to indicate that the semicolon is
-         required only if the `in words' portion is present
-
-                                     8/21
-                                     ----
-documentation/bash.1
-       - fixed the description of tilde expansion to indicate that it is
-         performed on the RHS of assignment statements, and that =~ and
-         :~ are expanded in such cases
-
-machines.h
-       - updated Ultrix MIPS machines entry to undefine HAVE_ALLOCA_H.
-         Ultrix 4.2 on Decstations has /usr/include/alloca.h, which defines
-         alloca as __builtin_alloca, but this version of alloca is severely
-         limited and unusable
-
-jobs.c, subst.c
-       - some Posix systems (e.g. SGI) can't even handle a call to setpgid
-         when the only other member of the process group is a zombie.
-         Restored the old pgrp_pipe synchronization code, #ifdef'd on
-         PGRP_PIPE
-
-machines.h
-       - added -DPGRP_PIPE to the SGI SYSDEP_CFLAGS
-
-trap.c
-       - need to re-install signal handler on USG machines without BSD
-         signals (in trap_handler).  There's still the USG signal race
-         condition, though
-       - if interrupt_immediately is set, run a trap handler directly
-         from trap_handler, instead of just setting the flag
-
-                                   8/26
-                                   ----
-subst.c
-       - changed parameter_brace_expand_rhs to perform tilde expansion on
-         the value it's expanding
-
-parse.y
-       - declared shell_pgrp as extern pid_t, need to include jobs.h on
-         job control systems to make sure it's defined
-
-jobs.c
-       - make a job that is suspended show the signal that caused the
-         suspension in the exit status (128 + WSTOPSIG(s))
-
-jobs.c, execute_cmd.c, builtins/fg_bg.def
-       - make start_job return -1 on error, 0 when starting a background
-         job, and the return value from wait_for when starting a fore-
-         ground job
-
-lib/readline/vi_mode.c
-       - there was an off-by-one error in rl_vi_domove.  We are not at
-         the end of the line if rl_point <= rl_end - 1, not just <.
-         This messed up things like `dw' to the end of the line
-
-                                   8/28
-                                   ----
-subst.c
-       - forgot to malloc space for tresult before trying to use it in
-         word_list_quote_removal
-
-                                   8/29
-                                   ----
-lib/readline/Makefile
-       - make sure that ../glob/tilde_expand.o is linked into the readline
-         library
-       - make sure that xmalloc.o is linked into the readline library
-
-lib/readline/xmalloc.c
-       - new file, linked into readline library for those applications that
-         do not define their own versions
-
-nojobs.c
-       - removed redundant call to signal(SIGQUIT, SIG_IGN)
-       - rearranged code in make_child so signals get the right values
-         in children of the shell
-
-jobs.c
-       - don't call restore_default_signal -- let restore_original_signals
-         do the work, because signals ignored in the shell with trap '' sig
-         are supposed to be ignored in children
-
-trap.c
-       - make sure restore_original_signals restores the values of SIGINT,
-         SIGQUIT, and SIGTERM, unless there has been a trap command called
-         on them
-
-                                    9/4
-                                    ---
-builtins/exec.def
-       - make sure that all signals are restored to their original values
-         before execing the new program
-
-bashline.c
-       - make shell_expand_line output an extra \r after pre_process_line
-         runs
-
-                                     9/5
-                                     ---
-lib/readline/readline.[ch]
-       - new function rl_tilde_expand, which attempts to perform
-         tilde expansion on the word under the cursor
-       - readline now recognizes a new variable, `expand-tilde', which
-         controls whether the tilde expansion functions are called
-         when bash does completion (default is off).  The internal
-         form of this variable is rl_complete_with_tilde_expansion
-
-lib/readline/vi_mode.c
-       - new function rl_vi_tilde_expand, which performs tilde expansion
-         on the word under the cursor when in movement mode, then enters
-         vi insertion mode.
-
-lib/readline/{vi,emacs}_keymap.c
-       - bind rl_tilde_expand to M-& in emacs mode, and rl_vi_tilde_expand
-         to & in vi command (movement) mode
-
-                                    9/6
-                                    ---
-subst.c
-       - fix string_extract_double_quoted to malloc the correct amount of
-         space for the returned string
-
-execute_cmd.c
-       - add an undo redirection to do_redirection_internal for the `close
-         descriptor' case
-
-                                     9/7
-                                     ---
-lib/readline/vi_mode.c
-       - the first character of the string inserted into the command line
-         when the vi mode `#' command is executed is now controlled by the
-         internal variable `rl_vi_comment_character'
-
-lib/readline/readline.c
-       - the readline user-settable variable `vi-comment-character' now
-         controls the value of rl_vi_comment_character
-
-                                   9/10
-                                   ----
-test.c
-       - fixed problems in binary_operator() caused by -l.  Made sure that
-         bash always dereferences a valid member of argv.  Check that the
-         (new) operator is a valid binary operator after a leading -l arg
-         is processed.
-
-lib/readline/vi_mode.c
-       - changed rl_vi_comment_character to rl_vi_comment_begin, which is
-         a character string
-
-lib/realine/readline.c
-       - changed the name of the variable controlling the vi comment
-         string to comment-begin
-
-                                   9/11
-                                   ----
-subst.c
-       - changed ${#@} and ${#*} to return the number of arguments, for
-         sh and ksh compatibility, since the latest Posix.2 draft has
-         left it unspecified
-
-shell.c
-       - added a workaround for a bug in the NeXT 2.1 rlogind, which causes
-         the shell to start with no control terminal -- just open(2) the
-         result of ttyname(3), which causes it to become a controlling
-         terminal
-
-                                   9/13
-                                   ----
-parse.y
-       - added the reserved words that can precede a list of commands to
-         the list of command word predecessors in command_token_position
-
-builtins/kill.def
-       - added support for negative process specifications to kill
-         process groups
-
-                                   9/17
-                                   ----
-builtins/read.def
-       - turn off att_invisible when binding a variable to the results of
-         read
-
-subst.c
-       - don't expand invisible variables in the $VAR expansion code
-
-                                     9/18
-                                     ----
-lib/readline/readline.c
-       - changed the use of _POSIX_VERSION to use HAVE_POSIX_SIGNALS and
-         TERMIOS_TTY_DRIVER
-
-                                   9/24
-                                   ----
-shell.h, execute_cmd.c, builtins/command.def
-       - replaced two global variables, inhibit_command_word_expansion
-         and ignore_function_references, and replaced them with flags
-         in the simple command structure
-
-jobs.c
-       - make sure current_job and previous_job are reset to NO_JOB in
-         delete_all_jobs()
-       - stop_pipeline allocates an extra slot in the jobs array
-
-                                   9/27
-                                   ----
-builtins/wait.def
-       - make the wait builtin use interrupt_immediately to get immediate
-         trap execution while waiting for commands
-
-subst.c
-       - when IFS is set to the null string (IFS=""), "$*" should
-         concatenate the positional parameters into a single word
-
-builtins/break.def
-       - if the argument to `break' or `continue' is not >= 1, Posix.2
-         says the builtin should return EXECUTION_FAILURE
-
-shell.h
-       - Posix.2 has specified that the shell should exit with status
-         126 when asked to execute a file that is not executable.  This
-         changes the definition of EX_BINARY_FILE
-
-builtins/trap.def
-       - the format of the command string printed out when trap has
-         no arguments has changed to "trap -- %s %s" in the latest
-         version of Posix.2
-
-                                   9/30
-                                   ----
-builtins/alias.def
-       - make sure single_quote allocates space for the opening and closing
-         quotes by allocating 3 + (2 * strlen(s)) bytes
-
-nojobs.c
-       - Under certain circumstances, when set_tty_state is called
-         without a successful get_tty_state, the file descriptor
-         opened on /dev/tty could be left unclosed
-
-                                   10/2
-                                   ----
-execute_cmd.c
-       - with redirections of type r_close_this, we don't need to check
-         if redirectee != redirector, since redirectee is not being used
-         there
-
-parse.y
-       - in yy_readline_get, we should only worry about shell_pgrp and
-         job_control if JOB_CONTROL is defined
-
-builtins/enable.def
-       - make enable_shell_command skip over entries with null values
-         for `function'
-
-subst.c
-       - fixed a typo: S_ISFIFO -> S_IFIFO
-
-                                   10/3
-                                   ----
-builtins/ulimit.def
-       - some machines have a setdtablesize() system call, the `set'
-         analog of getdtablesize().  If HAVE_SETDTABLESIZE is defined,
-         call it when ulimit -n newlim is used.
-
-machines.h
-       - Sequent symmetry machines have setdtablesize(), add a
-         -DHAVE_SETDTABLESIZE to SYSDEP_CFLAGS
-
-parse.y
-       - made reserved_word_acceptable() static
-       - rearranged tests for reserved words so that in_case_pattern_list
-         test is performed first
-       - turned command_token_position into a #define, since it was almost
-         identical to reserved_word_acceptable
-
-                                   10/4
-                                   ----
-shell.c
-       - for Ultrix Decstations or machines using Gwyn's alloca() emulation,
-         call alloca(0) in reader_loop after executing each command to try
-         and reclaim outstanding storage
-
-                                   10/7
-                                   ----
-bashline.c
-       - fixed a bug that caused the internal index into the shell builtins
-         array to be incremented by one too many before returning matches
-         for command completion
-
-jobs.c
-       - if PGRP_PIPE is not defined, have each child process give the
-         terminal to the pipeline process group
-
-                                   10/8
-                                   ----
-support/mksysdefs
-       - make Xenix machines call /bin/uname instead of the one found in
-         $PATH
-
-subst.c
-       - added a declaration for unquoted_substring at the top of the
-         file
-
-maxpath.h
-       - include <limits.h> rather than <sys/limits.h>, since that is the
-         Posix-specified include file
-
-bashline.c
-       - make ` be a command separator for purposes of command completion
-         Now `ch[TAB] will attempt command completion
-
-lib/readline/readline.c
-       - don't compile in the termios code if TERMIOS_MISSING is defined
-
-machines.h
-       - since Ultrix typeahead is broken using the termios code, define
-         TERMIOS_MISSING in SYSDEP_CFLAGS
-
-                                   10/9
-                                   ----
-
-general.c
-       - add a pathname canonicalization routine canonicalize_pathname to
-         remove sequences of > 1 slash, remove . and ./, munge the
-         passed pathname to handle .. and ../, and remove trailing /
-         characters
-
-builtins/cd.def
-       - call canonicalize_pathname after making the pathname absolute
-         with make_absolute
-
-                                   10/10
-                                   -----
-builtins/source.def
-       - check that the file being sourced is not a binary file
-
-builtins/ulimit.def
-       - added a new flag -v that reports the current and maximum limits
-         on the amount of virtual memory allocated to a process.  This is
-         implemented using RLIMIT_VMEM on those machines that have it
-         (svr4) and as the sum of RLIMIT_DATA and RLIMIT_STACK on other
-         machines with the BSD resource limits
-
-                                   10/11
-                                   -----
-general.c, parse.y
-       - unified #defines surrounding sysv_getc () declaration and use
-
-shell.c
-       - have first setjmp before startup files are executed test the
-         return code from setjmp to decide whether or not to exit the
-         shell or to skip the startup files
-
-                                    10/13
-                                    -----
-expr.c
-       - need to initialize tokval and tokstr each time evalexp() is
-         executed
-
-execute_cmd.c
-       - make sure that functions executed in the background set up a
-         valid place to return to (using return_catch) so that trying
-         to execute `return' doesn't result in a longjmp botch
-
-                                   10/14
-                                   -----
-lib/readline/vi_mode.c
-       - make rl_vi_ccmment insert a space after inserting `:' as the
-         comment character
-
-builtins/getopt.c
-       - make string.h be included #if defined (USG) || defined (hpux)
-
-                                   10/15
-                                   -----
-bashline.c
-       - fix bug that causes bash to get a seg fault on attempting
-         completion after FIGNORE=
-
-test.c
-       - test -foobar was the same as test -f.  Make sure an operator is
-         only two characters long
-
-                                   10/16
-                                   -----
-shell.c
-       - interactive shells should call get_tty_state after reading the
-         startup files, so that any stty commands therein are not lost
-
-support/mksysdefs
-       - for a machine to be an `isc386', it must have both
-         /etc/conf/kconfig.d and /usr/include/sys/limits.h
-
-                                   10/17
-                                   -----
-subst.c
-       - re-implemented ${#xx} in parameter_brace_expand_length to
-         call expand_string on $xx and take the length of the result.
-         If no result (e.g. if xx is undefined variable), return 0
-
-execute_cmd.c
-       - remove the attempt to put commands on both sides of && and ||
-         in a non-job-control environment
-
-                                  10/18
-                                  -----
-lib/readline/history.c
-       - If we are compiling for the shell, allow quotes to inhibit
-         history expansion
-
-test.c
-       - A new version from djm@eng.umd.edu
-
-subst.c
-       - If we don't get all of the name when we go to expand ${#xx},
-         where `name' is the stuff inside the braces, it's a bad
-         expansion error
-       - the ${xx} code advanced `sindex' one too many, so the character
-         immediately following the close brace was skipped
-
-                                  10/21
-                                  -----
-type.def
-       - the state variable used in calls to user_command_matches when
-         looking up disk files was not being reset to 0 for each item
-         looked up
-
-nojobs.c
-       - reversed the sense of the first test for _POSIX_VERSION
-         vs. USG to determine what time of terminal handling code to
-         use
-
-                                  10/22
-                                  -----
-lib/glob/fnmatch.[ch]
-       - Roland McGrath's implementation of the Posix.2 pattern matching
-         function fnmatch()
-
-subst.c
-       - removed emulation of fnmatch, declaration of FNM_NOMATCH
-       - include <fnmatch.h>
-
-execute_cmd.c
-       - removed declaration of FNM_NOMATCH, now includes <fnmatch.h>
-       - case pattern expansion now calls fnmatch(pat, str, FNM_NOESCAPE)
-         to disable backslash escaping.  Still not sure this is the
-         right thing.
-
-cpp-Makefile
-       - changes so that ./lib/glob (actually $(GLIBSRC)) is in the include
-         file search path
-       - make sure fnmatch.c gets put into lib/glob/libglob.a
-
-machines.h
-       - isc386 needs -DPGRP_PIPE added to SYSDEP_CFLAGS
-
-make_cmd.c
-       - <<- means kill leading TAB characters, not all whitespace
-
-                                  10/24
-                                  -----
-builtins/type.def
-       - make sure we note that we found something if a file is found in
-         the hash table, so a successful exit status is returned
-
-                                  10/25
-                                  -----
-machines.h
-       - for Convex machines, also check for __convex__ and __convexc__
-         being defined by cpp
-
-                                   10/27
-                                   -----
-lib/glob/glob.c
-       - Posix systems should always use the `dirent' style of reading
-         directories, for portability
-
-lib/readline/readline.c
-       - restructured the maze of defines and include files for the
-         directory reading code to default to Posix-style if
-         _POSIX_VERSION is defined, regardless of whether the system is
-         BSD or System V
-       - in readline_internal, lastc should be initialized to -1, because
-         0 can be a valid input character (some people use ^@ (NUL) as
-         the eof character, for instance, because it's easy to type)
-       - readline should bind eof_char for the termios and termio ttyio
-         systems
-       - make sure _POSIX_VDISABLE is defined for termio and termios
-         systems
-       - readline should check against _POSIX_VDISABLE rather than -1 to
-         decide whether a special character is disabled
-       - if VLNEXT is defined, termios systems should bind c_cc[VLNEXT] to
-         rl_quoted_insert
-       - if VWERASE is defined, termios systems should bind c_cc[VWERASE]
-         to rl_unix_word_rubout
-       - readline should always call readline_default_bindings each time,
-         so changes made by `stty' are obeyed.  Move the call from
-         readline_initialize_everything to readline_initialize so any new
-         settings are recognized each time readline is called.  This is
-         for erase, kill, literal-next, and word erase characters
-
-lib/readline/funmap.c
-       - added a funmap entry for rl_call_last_kbd_macro in default_funmap
-         (as "call-last-kbd-macro")
-
-execute_cmd.c
-       - when executing a ()-subshell command with redirections,
-         execute_command_internal performs the redirections associated with
-         the entire subshell command itself, but then forgets to dispose of
-         and clear command->redirects before calling itself recursively
-
-subst.c
-       - ${#-} and ${#?} are not illegal, and should expand to the lengths
-         of $- and $?, respectively
-
-                                  10/28
-                                  -----
-variables.c
-       - fix from bfox: change bind_variable to call var_lookup rather
-         than find_variable, because find_variable will look in the
-         temporary environment under some circumstances
-
-subst.c
-       - ${#:} should be (and is now) an error
-
-                                  10/29
-                                  -----
-lib/readline/readline.c
-       - readline_default_bindings is again called from
-         readline_initialize_everything, so it is only called once
-
-                                  10/30
-                                  -----
-test.c
-       - make sure uid_t and gid_t are defined on non-Posix USG systems
-         (this may be overkill)
-
-machines.h
-       - Ardent has a non-functional vfprintf??
-
-lib/malloc/gmalloc.c
-       - new Gnu malloc, written by Mike Haertel, snagged from gdb 4.2
-       - define the code that tries to intuit getpagesize
-
-builtins/ulimit.def
-       - make sure all calls to getmaxvm are protected by HAVE_RESOURCE
-
-builtins/times.def
-       - protect the getrusage calls with #if defined (HAVE_RESOURCE) &&
-         defined (RUSAGE_SELF) rather than some system specific
-         identifiers
-
-[end of work with version 1.10]
diff --git a/CWRU/old-changelogs/CWRU.chlog.v7 b/CWRU/old-changelogs/CWRU.chlog.v7
deleted file mode 100644 (file)
index be260f0..0000000
+++ /dev/null
@@ -1,671 +0,0 @@
-[Beginning of work with version 1.11]
-
-                                   10/31
-                                   -----
-Makefile
-       - changed instances of $(AWK) to $(GAWK) -- political correctness from
-         bfox
-
-builtins.h, builtins/help.def, builtins/mkbuiltins.c
-       - changed representation of long_doc from a single string to an
-         array of strings
-
-execute_cmd.c
-       - only call __setostype() if on isc386 and _POSIX_SOURCE is
-         defined
-
-general.c
-       - only define functions for index and rindex if index and rindex
-         are not already cpp defines
-
-jobs.c
-       - #undef some things that clash between <sys/ioctl.h> and <termios.h>
-         on Posix suns
-
-machines.h
-       - make isc386 machines links with the shared C library explicitly
-         (-lc_s)
-       - new entry for a MagicStation (?) from bfox
-
-variables.c
-       - use a cpp define _CONST_HACK to determine whether the parameter to
-         getenv() is a char const * (yes for _STDC_, no otherwise)
-
-builtins/type.def
-       - make found_file local to the block that searches for executable
-         disk files
-
-                                  11/4
-                                  ----
-execute_cmd.c
-       - make execute_function_or_builtin use unwind protects to protect
-         the `return catch' variables
-
-support/getcppsyms.c
-       - added definitions for M_UNIX, M_XENIX, and _AIX
-
-                                  11/5
-                                  ----
-bashline.c
-       - fix a call to savestring in command_word_completion_function with
-         a post-incremented int parameter, since savestring is a macro that
-         evaluates its argument twice (builtin completion)
-
-lib/glob/fnmatch.c
-       - add `^' as a character that negates a character class ([])
-
-                                  11/6
-                                  ----
-subst.c
-       - add a new variable last_command_subst_pid to keep track of the
-         pid of the last child created for command substitution.  Used
-         to determine whether or not command substitution has taken
-         place.
-
-execute_cmd.c
-       - made the exit status of a command that has only assignments and
-         redirections obey the Posix spec
-
-unwind_prot.c, trap.c
-       - make sure all sigset_t variables are initialized with sigemptyset
-         before use
-
-lib/glob/fnmatch.c
-       - fixed a couple of bugs with [] classes in fnmatch: not checking
-         whether or not we've hit the ']' and not incrementing the string
-         argument in the right place
-
-                                  11/7
-                                  ----
-braces.c
-       - Make backquotes inhibit brace expansion -- defer it until the
-         subshell runs
-       - Ditto for $( )
-
-subst.c
-       - since braces.c now calls unquoted_member and unquoted_substring,
-         they can no longer be static functions
-
-config.h
-       - two new configuration options: ALLOW_RIGID_POSIX_COMPLIANCE and
-         DISABLED_BUILTINS
-
-shell.c, jobs.c
-       - define and use top_level_signal_mask, restored on longjmps to
-         top_level by throw_to_top_level
-
-builtins/builtin.def
-       - use builtin_address to find the function (if so configured) so
-         that `builtin foo' still works after `enable -n foo'
-
-builtins/common.c
-       - have both find_shell_builtin, which never finds disabled builtins,
-         and builtin_address, which does
-
-                                  11/8
-                                  ----
-general.c
-       - the getdtablesize emulation should ensure that _SC_OPEN_MAX is
-         defined on Posix systems before trying to use it in a call to
-         sysconf()
-
-
-                                   11/10
-                                   -----
-lib/glob/fnmatch.c
-       - fixes from Roland McGrath for some of the more egregious bugs
-       - naturally, Roland missed a few
-
-lib/readline/readline.c
-       - add missing calls to sigemptyset(), since Posix specifies that
-         all sigset_t variables be initialized before use using it
-       - only turn off ISTRIP and INPCK in the termio(s) code if the
-         character size is 8 bits ((otio.c_cflag & CSIZE) == CS8)
-       - Sequents running Dynix/ptx should include <sys/pte.h> rather
-         that <sys/ptem.h>
-
-builtins/type.def
-       - change a call to printf to builtin_error when printing a
-         diagnostic that something is not found
-
-builtins/times.def
-       - changed file inclusion code to include <sys/time.h> and
-         <sys/resource.h> if HAVE_RESOURCE is defined, then to include
-         <sys/times.h> if !HAVE_RESOURCE and RUSAGE_SELF is not defined.
-         This catches systems with deficient <sys/resource.h> files
-
-                                   11/11
-                                   -----
-lib/readline/readline.c
-       - Don't try to dereference funmap in rl_named_function() if it's
-         null (as it is before rl_initialize_funmap is called)
-
-                                  11/12
-                                  -----
-lib/readline/readline.c
-       - backed out of change of 11/11 to rl_named_function
-
-bashline.c
-       - add a state variable bash_readline_initialized to keep track of
-         whether or not readline has been initialized with a call to
-         initialize_readline()
-
-builtins/bind.def
-       - if readline has not been initialized the first time this is
-         called, call initialize_readline
-
-                                  11/13
-                                  -----
-execute_cmd.c
-       - execute_subshell_builtin_or_function would only let the output
-         of `jobs' be piped if pipe_in and pipe_out were both != NO_PIPE
-         (?).  Obviously a typo.
-
-builtins/command.def
-       - add an unwind_protect to dispose of the new command created
-         by the call to make_bare_simple_command
-
-builtins/jobs.def
-       - add the `jobs -x command args' form from the System V.4 sh
-         All job specs in `args' are replaced with the appropriate
-         job's process group id and `command' is executed
-
-builtins/getopt.c
-       - if getopt() finds that optind > argc when it is called, it
-         sets optind = argc and returns EOF
-
-builtins/times.def
-       - backed out of 11/10 change.  Some systems, most notably
-         HP/UX have all the correct includes and defines and simply
-         do not implement getrusage().  At all.
-
-subst.c
-       - if sv_optind finds that OPTIND has been unset or set to an
-         empty string, call getopts_reset (0).  The Gnu getopt
-         resets its internal state when optind == 0.
-       - call getopts_reset(0) if OPTIND=1, because that's what the
-         Posix spec says to use to reset
-
-                                  11/14
-                                  -----
-builtins/alias.def
-       - fixed a typo in the SHORT_DOC for the unalias builtin
-
-builtins/shift.def
-       - allowed the shift count to be 0
-
-                                  11/15
-                                  -----
-lib/readline/readline.c
-       - turn on 8 bit characters if NO_EIGHT_BIT_CHARACTERS is not
-         defined and the Posix termios code path is being taken
-
-[The following two entries describe what's needed for an initial
-implementation of the vi mode `.' command]
-
-lib/readline/vi_mode.c
-       - new variables:
-               vi_last_command: last command that modified text in
-                                the buffer
-               vi_last_repeat: the repeat count to vi_last_command
-               vi_last_arg_sign: arg sign for vi_last_repeat
-               vi_last_motion: the last motion qualifier for the
-                               text modification commands that use one
-               vi_redoing: state variable, if 1 we're re-doing a
-                           command
-               vi_textmod: list of commands that modify text
-                           (initially "_*\\AaIiCcDdPpYyRrSsXx~")
-
-       - new functions:
-               rl_vi_redo: an initial implementation of the vi mode
-                           `.' command
-               rl_vi_set_last: initialize the state of the new variables
-                               described above
-               rl_vi_textmod_command: return true if command passed is
-                                      a text modification command
-       - changed rl_vi_domove to save the movement command information in
-         vi_last_motion
-       - changed rl_vi_movement_mode to call rl_vi_set_last to initialize
-         the `last command' state
-
-lib/readline/readline.c
-       - changed rl_dispatch to save vi_last_command, vi_last_repeat,
-         and vi_last_arg_sign
-       - changed rl_newline to call vi_set_last
-
-lib/readline/readline.h
-       - new function rl_vi_redo
-
-lib/readline/vi_keymap.c
-       - bind rl_vi_redo to `.'
-
-                                  11/20
-                                  -----
-posixstat.h
-       - make isc386 defines for S_IFDIR and S_IFMT be used if they
-         do not already appear, no matter whether or not gcc is being
-         used for the compile
-
-machines.h
-       - new entry for Omron Luna 88k running Mach 2.5 (nice machines)
-
-lib/readline/vi_mode.c
-       - fixed a bug with rl_vi_domove and the last word on the line.
-         If rl_point ended up > rl_end, it was being set to rl_end - 1
-         rather than to rl_end.
-
-cpp-Makefile
-       - quote the values of RANLIB and AR passed to makes in
-         subdirectories
-
-shell.c
-       - instead of making all Xenix systems swap the second and third
-         arguments to setvbuf, make that behavior dependent on the
-         definition of REVERSED_SETVBUF_ARGS
-
-                                  11/21
-                                  -----
-lib/readline/readline.c
-       - fixed an error in rl_forward that caused vi-mode to walk off
-         the end of the line after executing `l' in command mode on an
-         empty line
-
-                                  11/22
-                                  -----
-support/getcppsyms.c
-       - added the `luna88k' define
-
-                                   11/24
-                                   -----
-execute_cmd.c
-       - all calls to dup2 in do_redirection_internal should be checked
-         for errors and the redirection should fail if the dup2 fails
-
-shell.h, parse.y, execute_cmd.c, print_cmd.c, make_cmd.c
-       - replaced the single redirection operator `r_duplicating' with
-         r_duplicating_input and r_duplicating_output to avoid the
-         read 1<&7 getting printed as read 1>&7 problem:
-               foo()
-               {
-                       exec 9</dev/tty
-                       read 1<&9
-                       exec 9<&-
-               }
-         is printed wrong when `type foo' is executed
-
-shell.h
-       - added two new redirection_operators, r_duplicating_input_word and
-         r_duplicating_output_word to implement true sh semantics for
-         [n]<&word and [n]>&word
-parse.y
-       - eliminated the old yacc production for >& word, meaning put stdout
-         and stderr into `word'
-       - added productions for [n]<&word and [n]>&word that use the new
-         redirection operators
-execute_cmd.c
-       - the first thing done in do_redirection_internal is now a check for
-         r_duplicating_input_word and r_duplicating_output_word.  If the
-         redirection is one of those two, `word' is expanded and a new
-         redirection is made
-print_cmd.c
-       - new code to print the [n]<&word and [n]>&word redirections
-         (r_duplicating_input_word and r_duplicating_output_word)
-make_cmd.c
-       - new code for make_redirection to handle r_duplicating_input_word
-         and r_duplicating_output_word
-
-documentation/bash.1
-       - added documentation for the -x option to `jobs' + minor cleanups
-         and corrections
-
-                                  11/25
-                                  -----
-cpp-Makefile
-       - added GCC_EXTRAS for gcc-specific compiler flags
-
-execute_cmd.c
-       - removed some unused functions (close_all_files) and variables
-         (file_exists_p)
-
-parse.y
-       - added new command-oriented-style history: all lines of a multiple
-         line command will be added to the same history line
-       - new variable current_command_line_count to keep track of the
-         number of lines in the current command.  If > 1, a line is appended
-         to the current history line to implement command-oriented history
-       - new function bash_add_history
-
-shell.c
-       - added code to reset current_command_line_count to 0 before calling
-         parse_command and yyparse
-
-subst.c
-       - the command-oriented history is controlled by the setting of the
-         variable command_oriented_history
-
-builtins/reserved.def
-       - a new help topic: `variables', giving help on some common shell
-         variables
-
-                                  11/26
-                                  -----
-lib/glob/glob.c
-       - if the filename portion of the pathname to be matched is null
-         (e.g. a*/), do not call glob_vector to attempt to match each
-         file in the expanded directories against the null string.
-
-                                  11/27
-                                  -----
-lib/glob/glob.c
-       - force globbing of directory names even if the metacharacters
-         contained therein are protected by backslashes.  The globbing
-         strips the quotes correctly
-
-shell.c
-       - make sure current_command_line_count is declared everywhere
-         it's used
-
-parse.y
-       - remove declaration of history_lines_this_session from
-         pre_process_line
-       - add extern declaration of history_lines_this_session to
-         bash_add_history
-
-                                  12/2
-                                  ----
-trap.h
-       - removed inclusion of <sys/types.h> because most files include it
-         themselves, and this is dangerous on systems that do not protect
-         against multiple inclusion of header files
-
-trap.c
-       - include <sys/types.h> before "trap.h" since it was the only file
-         in the distribution not to do so
-
-shell.c
-       - Install the SIGINT sighandler the Posix way on machines with
-         _POSIX_VERSION defined
-
-                                  12/3
-                                  ----
-dispose_cmd.c
-       - make sure dispose_redirects properly handles r_duplicating_input_word
-         and r_duplicating_output_word by freeing the `filename'
-
-execute_cmd.c
-       - fix do_redirection_internal to copy new_redirect->redirectee.filename
-         using alloca() so no memory has to be freed at function exit
-
-                                  12/4
-                                  ----
-parse.y
-       - expand \n in PS1 or PS2 into \r\n only if line editing is enabled
-
-shell.c
-       - define top_level_mask if _POSIX_VERSION defined
-
-newversion.c
-       - made it write a definition of SCCSVERSION to version.h -- an SCCS
-         string so the `what' command will be useful
-
-version.c
-       - new variable `sccsversion' set to SCCSVERSION
-
-                                  12/5
-                                  ----
-builtins/fc.def
-       - make fc_gethist check that the history list is non-null before
-         trying to access its members
-
-                                  12/6
-                                  ----
-lib/readline/readline.c
-       - changed the ISTRIP code (again) to force bash to disable ISTRIP
-         only if the tty driver guarantees eight bits (cflag & CSIZE == CS8)
-
-                                  12/9
-                                  ----
-lib/readline/readline.c
-       - tgetent returns 0 if it can't find the terminal name in /etc/termcap,
-         so we failed if it returns <= 0, not < 0.
-
-                                  12/11
-                                  -----
-machines.h
-       - Sony machines running NEWS-OS 4.0 (V.4) should have strerror(),
-         so define HAVE_STRERROR
-       - Pyramids running BSD do not all have the vprintf family of functions,
-         so remove the definition of HAVE_VPRINTF
-
-                                  12/12
-                                  -----
-parse.y
-       - make sure that shell_getc always checks that shell_input_line is
-         valid before trying to reference shell_input_line[0]
-
-                                  12/13
-                                  -----
-mailcheck.c
-       - Since `dollar_underscore' saves the value of $_ in a local variable,
-         it's possible that bind_variable can free and reallocate the cell
-         for $_, leaving dollar_underscore pointing at freed storage.  The
-         fix is to copy it into freshly-allocated memory.
-       - ensure that when saving and restoring dollar_underscore that we do
-         not try to call strlen on a null string
-
-                                   12/15
-                                   -----
-general.c, execute_cmd.c
-       - moved the utility function `all_digits' from execute_cmd.c to
-         general.c
-
-builtins/kill.def
-       - remove use of sscanf, used calls to all_digits and atoi instead
-
-machines.h
-       - if not using gcc, need to make SYSDEP_LDFLAGS = -Xp for Posix
-         on isc386
-
-                                  12/16
-                                  -----
-machines.h
-       - isc386 has multiple groups
-
-execute_cmd.c
-       - add a QUIT to the while loop in find_user_command_in_path that
-         searches the path, so users can interrupt a lengthy path search
-
-                                  12/17
-                                  -----
-builtins/alias.def
-       - added the Posix-specified -a option to unalias, made unalias obey
-         the getopt argument syntax guidelines
-
-builtins/jobs.def
-       - made `jobs' handle the -- option to signal the end of arguments
-
-flags.c
-       - Posix.2a has specified that the -b flag stand for asynchronous
-         notification, so move the definition of asynchronous_notification
-         here and add a new entry to the `flags' struct if JOB_CONTROL is
-         defined
-
-flags.h
-       - add an extern declaration of asynchronous_notification
-
-jobs.c
-       - change the definition of asynchronous_notification to extern, since
-         it's now declared in flags.c
-
-builtins/set.def
-       - change documentation strings to add -b option, note that
-         set -o notify is now the same as set -b
-       - change the code to make set -o notify the same as set -b
-         (list_long_opts(), take the special case out of set_minus_o_option)
-
-                                  12/19
-                                  -----
-lib/readline/readline.c
-       - added support for $LINES, $COLUMNS.  The variables are read after
-         the ioctl(TIOCGWINSZ) and before calls to tgetent
-
-builtins/fc.def
-       - made the fc output format correspond to that specified by Posix.2a 
-         ("%d\t%s\n")
-
-                                  12/20
-                                  -----
-execute_cmd.c
-       - user_command_matches did not properly handle a null $PATH element,
-         which should be the same as ".".  Changed the code to mirror
-         find_user_command_in_path ()
-
-
-                                   12/23
-                                   -----
-execute_cmd.c
-       - added a new function get_next_path_element, which calls
-         extract_colon_unit and interprets the result, translating
-         "" to "."
-
-builtins/cd.def
-       - added description of -l option to dirs short_doc
-       - fixed the bug that caused `dirs' to always print an extra
-         trailing space
-
-documentation/bash.1
-       - added description of -l option to dirs
-
-parse.y
-       - added optional leading ( for case clause, as per Posix.2
-
-                                  12/30
-                                  -----
-lib/readline/vi_mode.c
-       - removed unused variable `added_blank'
-
-bashline.c
-       - added dynamic completion from bfox
-
-execute_cmd.c
-       - redirections must be performed in a child before execution of
-         the command is attempted or aborted (because it's not found
-         by a hash table or $PATH search), according to Posix.2
-
-getcwd.c
-       - new file, from the Gnu C library, for systems that don't do
-         this right -- they use popen("/bin/pwd", "r") instead
-
-                                  12/31
-                                  -----
-builtins/type.def
-       - the type builtin would not report a name as not found if any name
-         had previously been found because the flag variable used to report
-         this (found_something) was not reset each time through the loop.
-         Added a variable `found_any' to be global and reset found_something
-         to 0 each time through the loop
-
-                                    1/4
-                                    ---
-builtins/jobs.def
-       - make sure that the call to add_unwind_protect in
-         execute_list_with_replacements is made after the new command
-         struct is completely initialized
-
-support/mksysdefs
-       - look for /dev/fd, define HAVE_DEV_FD if present
-
-cpp-Makefile
-       - pass HAVE_DEV_FD through to make in SYSTEM_FLAGS
-
-shell.c, execute_cmd.c
-       - call unlink_fifo_list only if HAVE_DEV_FD is not defined and
-         PROCESS_SUBSTITUTION is defined
-
-subst.c
-       - new function make_dev_fd_filename to return /dev/fd/xx, where
-         xx corresponds to the parent end of the pipe
-       - all the named pipe utility functions should be #if !defined
-         (HAVE_DEV_FD)
-       - change process_subsitute to do the following on systems with /dev/fd:
-               1.  Make a pipe in the parent
-               2.  if (open_for_read_in_child)
-                       parent_pipe_fd = fildes[1]
-                       child_pipe_fd = fildes[0]
-                   else
-                       parent_pipe_fd = fildes[0]
-                       child_pipe_fd = fildes[1]
-               3.  pathname = make_dev_fd_filename (parent_pipe_fd);
-               4.  fork
-               5.  In parent, close child_pipe_fd and return pathname
-               6.  In child, turn off job control, dup child_pipe_fd to
-                   either fd 0 or 1 depending on OPEN_FOR_READ_IN_CHILD,
-                   close parent_pipe_fd, parse and execute the string,
-                   and exit
-
-shell.c
-       - added call to unlink_fifo_list in reader_loop so that all fifos
-         get closed, even after builtin commands are executed
-
-                                   1/6
-                                   ---
-machines.h, make_cmd.c, print_cmd.c, shell.c, cpp-Makefile
-       - HAVE_VPRINTF --> HAVE_VFPRINTF
-
-cpp-Makefile, machines.h, test.c
-       - HAVE_MULTIPLE_GROUPS --> HAVE_GETGROUPS
-
-cpp-Makefile, machines.h
-       - HAVE_SIGLIST --> HAVE_SYS_SIGLIST
-
-parse.y
-       - add if_command production
-
-builtins/echo.def
-       - validate all arguments before using them so that -nanything != -n
-       - document the -E option and its use
-
-builtins/umask.def
-       - allow other arguments to be used with -S
-
-subst.c
-       - make sure to close all files in the child created to run a
-         process substutition to avoid holding write file descriptors
-         to pipes that will cause the shell to hang
-
-                                   1/7
-                                   ---
-cpp-Makefile
-       - fixed a typo: SEARCHLIB -> SEARCH_LIB
-
-machines.h
-       - new description for Amiga 3000 running System V.4
-
-shell.c
-       - default secondary prompt is now "> "
-
-builtins/bashgetopt.c
-       - more internal cleanups and bug fixes
-
-support/mksysdefs
-       - detect the amiga by the presence of /usr/amiga
-
-                                   1/9
-                                   ---
-general.c
-       - canonicalize_pathname should remove ./ only if it's at the
-         beginning of the pathname, or immediately preceded by a `/'
-
-                                  1/10
-                                  ----
-documentation/bash.1
-       - clean up the documentation for test -t, since according to
-         Posix, it always requires an argument
-
-general.c
-       - don't build index and rindex for DG machines
-
-
-machines.h
-       - description for System V.4 on IBM 370 architecture
-       - fixed up DG/UX machine description
diff --git a/CWRU/old-changelogs/CWRU.chlog.v8 b/CWRU/old-changelogs/CWRU.chlog.v8
deleted file mode 100644 (file)
index 2aa1437..0000000
+++ /dev/null
@@ -1,251 +0,0 @@
-[ Work begins after network release of version 1.11 ]
-
-                                    1/11
-                                    ----
-nojobs.c
-       - Posix systems now reap zombie children and retry a fork() once if
-         it fails
-       - Posix systems should use waitpid() rather than wait() wherever
-         possible
-       - Posix systems do not need to validate a pid before calling waitpid()
-         in wait_for_single_pid(); waitpid takes a pid argument
-
-                                  1/13
-                                  ----
-execute_cmd.c
-       - get_next_path_element can return NULL, so the code that calls it
-         must take that possibility into account
-
-jobs.c
-       - there was an extra parameter in the select() call
-
-builtins/type.def
-       - successful_finds needed to be initialized to 0
-
-machines.h
-       - fixed a typo (_D -> -D) in the DG/UX machine description
-
-                                  1/14
-                                  ----
-execute_cmd.c
-       - fixed extract_colon_unit to return "" in the case of a trailing
-         colon in the path
-
-INSTALL
-       - note that on SCO Xenix 386 one must use cc -E rather than /lib/cpp
-         to process cpp-Makefile
-
-cpp-Makefile
-       - fixed the problem of a single quote in a makefile comment
-
-machines.h
-       - Xenix 386 machines need -DUSG in SYSDEP_CFLAGS
-
-lib/readline/readline.c
-       - changed the includes around so that the Xenix 386 support is
-         in the same section as the USGr3 code, and the Xenix 286
-         support is in the same section as the plain USG code
-
-shell.c
-       - split the `int code = setjmp (top_level)' statement in
-         reader_loop into two statements -- some compilers don't like
-         it
-
-parse.y
-       - changed the overloaded `yy_input_dev' to a `union STREAM',
-         where a `union STREAM' is
-
-               typedef union STREAM {
-                       FILE    *s_file;
-                       char    *s_string;
-               } STREAM;
-
-         and changed the parameter to init_yy_io and all the functions
-         that call it to use a STREAM argument instead of casting back
-         and forth between a (char *) and a (FILE *)
-
-builtins/times.def
-       - If hpux or USGr4, #undef HAVE_RESOURCE, rather than try to fit
-         all the special cases onto a single line deciding whether or
-         not to include <sys/resource.h>
-
-                                  1/15
-                                  ----
-bashline.c
-       - changed the bindable name for the ksh-style ^O function from
-         operate_and_get_next to operate-and-get-next
-
-execute_cmd.c
-       - some systems (e.g SGI) allow the result of alloca to be assigned
-         only to a `simple' variable, so I introduced a dummy one instead
-         of assigning to redirectee->word directly
-
-shell.c
-       - fixed a typo: PENDANTIC -> PEDANTIC
-
-machines.h
-       - took -DREVERESED_SETVBUF_ARGS out of the entries for Xenix 386
-
-cpp-Makefile
-       - added double quotes around the RHS of the assignment to
-         SYSTEM_NAME to avoid further cpp processing if the system name
-         happens to be a cpp define
-
-bashline.c
-       - added `search-forward', `search-backward' functions that perform
-         non-incremental history searches using the vi-mode code
-
-                                  1/16
-                                  ----
-builtins/ulimit.def
-       - fixed a typo in a comment
-       - added parens around the object in an #if defined preprocessor
-         statement
-
-machines.h
-       - the Xenix 386 machine descriptions need to #undef HAVE_GETWD
-
-builtins/read.def
-       - Fixed read to treat backslash as an escape character unless
-         -r is given, as per Posix.2
-
-lib/readline/readline.c
-       - Fixed up the maze of dire[cn]t includes and defines so that
-         they're correct for Xenix (finally)
-
-lib/glob/glob.c
-       - ditto.  Now the defines/includes are correct for Xenix 386
-
-execute_cmd.c
-       - a loop of the form
-                       while : ; do echo -n 1; done
-         can run a machine using Gwyn's alloca() emulation out of memory
-         because alloca() keeps getting called at the same stack level
-         and never frees anything up.  Added a call to alloca(0) after
-         the call to execute_simple_command in execute_command_internal
-       - added Karl Kleinpaste's workaround for the AFS file creation
-         bug, dependent on AFS_CREAT_BUG
-
-parse.y
-       - \s in a prompt string needs to decode to the shell basename, as
-         per the documentation, rather than the full shell name
-
-                                  1/17
-                                  ----
-nojobs.c
-       - fixed a typo in one of the WAITPID calls, thanks to Bruce Evans
-
-[At this point, all of these fixes were sent along to bfox]
-
-support/getcppsyms.c
-       - now recognizes cpp symbol __hppa for use on HP precision
-         architecture machines
-
-machines.h
-       - M_MACHINE is now `hppa' for HP Precision Architecture machines, so
-         to make sure hpux is defined, it's now in SYSDEP_CFLAGS
-       - Make sure that the RS6000/AIXv3 description defines M_OS as AIX,
-         not "AIX".  The quotes are added in cpp-Makefile
-
-                                  1/27
-                                  ----
-parser.h
-       - new file, contains structures necessary to parse commands
-
-input.h
-       - new file, contains definitions and structures used to read input
-
-bashline.c
-       - removed the definitions for search-backward, search-forward
-
-cpp-Makefile
-       - removed the definition of DESTDIR; now passed down from Makefile
-
-error.c, error.h
-       - new files to isolate the error-handling functions
-
-command.h
-       - new file including structures used internally to represent
-         commands
-
-parse.y
-       - include input.h, parser.h
-       - changed all the code that deals with input streams to fit the
-         new framework defined in input.h
-
-make_cmd.c
-       - moved the error reporting code to error.c
-       - added cpp code to ensure that alloca is defined correctly
-
-shell.h
-       - removed the code that was moved to input.h, parser.h, command.h
-
-builtins/common.c
-       - moved a call to setjmp out of an if statement
-       - changed the input code to work with the new input framework
-
-builtins/getopt.c
-       -include config.h if compiling for the shell
-
-lib/readline/readline.c
-       - change representation of characters > 127 to octal
-         rather than M-c
-       - changed representation of characters < ' ' to ^X rather
-         than C-x
-       - fixed a memory leak in parser_if () by freeing `tname'
-
-machines.h
-       - removed MIPS_CFLAGS from the ultrix Decstation entry, since the
-         limit no longer needs increasing
-
-variables.c
-       - move the initialization of PWD before the environment is read, so
-         an exported version of PWD takes precedence
-
-readline.c, funmap.c, emacs_keymap.c
-       - removed support for rl_arrow_keys -- it should now be done by the
-         inputrc file
-
-documentation/bash.1
-       - only non-job-control shells start background jobs ignoring SIGINT
-         and SIGQUIT
-
-builtins/umask.def
-       - don't print the octal representation of the umask if the symbolic
-         representation has already been displayed
-       - a bad option to umask should return EXECUTION_FAILURE, not -1
-
-shell.c
-       - new function, init_signal_handler (sig), to initialize the SIG
-         signal hander, call it in main loop
-
-nojobs.c
-       - call init_signal_handler (SIGINT, sigint_sighandler) so the correct
-         thing happens on Posix systems
-
-general.c
-       - updated the comment above the fallback implemenation of killpg()
-
-machines.h
-       - machine entry for the Unix PC
-       - new variable HAVE_DIRENT
-
-                                  1/28
-                                  ----
-machines.h
-       - SCO needs to #undef HAVE_GETCWD so that the getcwd() function
-         supplied with bash is used
-
-subst.c
-       - USG machines should include <string.h>, others <strings.h>
-       - sub_append_number should use itos() rather than xmalloc and
-         sprintf
-
-builtins/ulimit.def
-       - changed the resource limit struct to one that has no explicit
-         size to account for systems with differing numbers of resource
-         limits
-
-lib/readline/readline.c
-       - there was an off-by-one error in the code that counts the number
-         of items to list when doing completion listing
diff --git a/CWRU/old-changelogs/CWRU.chlog.v9 b/CWRU/old-changelogs/CWRU.chlog.v9
deleted file mode 100644 (file)
index d1474fb..0000000
+++ /dev/null
@@ -1,5062 +0,0 @@
-[work begins on post-netwide-1.12 release.]
-
-                                  1/30
-                                  ----
-machines.h, general.c, nojobs.c
-       - changes for AIX/RT 2.2.1
-
-lib/readline/vi_mode.c
-       - fixed a bug with vi mode, `cw' and whitespace that removed the
-         last character of the previous word
-
-lib/readline/readline.c
-       - readline did not correctly save the value of last_readline_init_file
-         across things like `bind'.  Now it does the following:
-
-               last_readline_init_file initialized to NULL
-               readline_initialize_everything calls rl_read_init_file with
-               an explicit argument of ~/.inputrc
-               rl_read_init_file sets last_readline_init_file to
-               savestring(filename) so it saves a fresh copy
-
-getcwd.c
-       - new version from Roland McGrath, with changes for the bash build
-         environment
-
-execute_cmd.c, variables.c
-       - bash was not looking for $PATH in the temp environment when
-         looking up a command.  Now, find_variable looks in the temp
-         environment if subshell_environment is set.  This will be
-         set when bash is looking a command up in the path (it's set in
-         find_user_command_internal while looking up the path string to
-         pass to find_user_command_in_path)
-
-                                  1/31
-                                  ----
-make_cmd.c
-       - removed useless call to alloca, replaced with a static array
-         definition
-
-                                   2/3
-                                   ---
-machines.h
-       - Cray machine description
-
-                                   2/4
-                                   ---
-builtins/getopt.[ch]
-       - upgraded to a more recent version from the Gnu C library
-
-jobs.c
-       - added a call to init_signal_handler to replace equivalent in-line
-         code in initialize_jobs
-
-trap.c
-       - new function: maybe_call_trap_handler (sig) calls a trap function
-         for signal SIG if one exists
-
-jobs.c
-       - bash now (effectively) ignores SIGINT while waiting for a job run
-         from a script.  We don't want to die if a SIGINT is received while
-         running another process, only if that job dies due to SIGINT.  This
-         lets interactive processes run from scripts that want to catch
-         SIGINT and handle it do so without disturbing the shell that's
-         interpreting the script.  All other versions of sh behave this way.
-
-         The implementation is fairly straightforward.  In wait_for, the
-         parent shell sets the SIGINT handler to wait_sigint_handler, which
-         allows the wait builtin to be interrupted and sloughs off everything
-         else.  flush_child controls the behavior when a `foreground' process
-         dies due to SIGINT: it calls a trap handler if one exists;
-         otherwise it calls either sigint_sighandler (interactive) or
-         termination_unwind_protect (non-interactive).  It then resets the
-         SIGINT signal handler to what it was before wait_for changed it.
-         wait_for does reset the sighandler before returning if flush_child
-         does not, so the SIGINT does not stay ignored.
-
-         There is a race condition between the time that make_child creates
-         a child and sets it to run and the time the parent calls wait_for.
-         This is handled by having old_sigint_handler, which holds the
-         value of the `real' SIGINT signal handler, be NULL except when the
-         shell is in wait_for, and only operate on the SIGINT handler state
-         if this variable is non-null.
-
-         Should the stuff be unwind-protected?  I don't think so; u-p gets
-         run on interrupts, and we're controlling the interrupt handler.
-
-                                   2/5
-                                   ---
-trap.c
-       - new function signal_is_trapped (sig) returns 1 if a trap handler
-         has been established for SIG
-
-shell.c
-       - have throw_to_top_level call longjmp(top_level, DISCARD) if the
-         shell is non-interactive and a SIGINT occurred and was trapped
-
-cpp-Makefile, machines.h
-       - instead of running `basename ...` to discover the name of the
-         alloca object file, use a new variable $ALLOCA_OBJECT.  It's set
-         to alloca.o if we're using the C emulation, and to ALLOCA_OBJ,
-         which must be defined in the machines.h entry, for an
-         architecture defining ALLOCA_ASM
-
-cpp-Makefile
-       - BSD make of 4.3-tahoe and later already defines MACHINE and does
-         not allow it to be overridden, so replace it with Machine.
-
-endian.c
-       - added changes from Cray to configure endianness correctly on
-         machines with 8-byte longs
-
-parse.y
-       - added '&' to no_semi_successors in bash_add_history so bash will
-         not add a semicolon after it appears
-
-                                   2/6
-                                   ---
-subst.c
-       - since string_extract_verbatim was overloaded, added a new function
-         string_extract_single_quoted to call when extracting strings in
-         ''
-
-lib/readline/history.c
-       - changed call to string_extract_verbatim to a call to
-         string_extract_single_quoted
-
-lib/readline/vi_mode.c
-       - rl_vi_subst was not calling rl_end_undo_group properly (i.e. at all)
-
-execute_cmd.c
-       - On systems without job control, async commands (`&') have an
-         extra redirection added before calling execute_command_internal
-         that redirects /dev/null to standard input.  This redirection
-         must be removed right after execute_command_internal returns,
-         because the loop functions call execute_command_internal multiple
-         times with the same command struct.  If we keep tacking redirections
-         onto the front of it, eventually we'll run out of file descriptors
-         on a big enough loop.
-
-jobs.c
-       - some functions were not correctly blocking SIGCHLD while running:
-         delete_all_jobs, map_over_jobs, start_job when it calls
-         reset_current
-
-                                   2/7
-                                   ---
-print_cmd.c
-       - an extra space was being printed at the end of a redirection list.
-         This caused exporting of functions with embedded here-documents to
-         fail, since the end marker would not be matched
-
-                                    2/8
-                                    ---
-nojobs.c
-       - change reap_zombie_children to keep calling waitpid while it returns
-         something > 0 (a valid pid)
-       - add a call to reap_zombie_children if we get a valid pid after
-         waiting in wait_for
-
-variables.c
-       - include pwd.h after sys/types.h.  It matters on some systems.
-
-shell.c
-       - added a function to encapsulate the differences between systems
-         in setting a file pointer to line-buffered: line_buffer_file
-
-                                   2/9
-                                   ---
-shell.c
-       - unbuffer stdin when it's not a tty and bash is reading a script
-         from stdin
-
-                                  2/10
-                                  ----
-
-machines.h, cpp-Makefile
-       - a new machine description variable HAVE_DIRENT, passed down to
-         makes in libraries
-
-support/mksysdefs
-       - check for the existance of /usr/include/dirent.h, define
-         HAVE_DIRENT_H if there
-
-                                  2/11
-                                  ----
-machines.h
-       - add #define USE_TERMCAP_EMULATION to HP-UX machine description
-       - added #define HAVE_DIRENT to a number of entries
-
-jobs.h
-       - added missing definitions for WSTOPSIG, WTERMSIG, WEXITSTATUS
-         for Posix systems that do not have them and do not have the
-         `union wait' defined
-
-builtins/suspend.def, unwind_prot.c, longest_sig.c
-       - include <sys/types.h> before <signal.h> -- some systems require
-         it
-
-support/mksysdefs
-       - For HP machines running HPUX, SYSDEF is set to one of hpux8, hpux7,
-         hpux6, or hpux, corresponding to different releases of HP-UX.
-       - if `uname -m' returns something starting with XD88, the machine is
-         a Tektronix XD88
-
-                                  2/12
-                                  ----
-variables.c
-       - stop core dumping on startup if SHLVL is not set
-
-lib/glob/glob.c
-       - make sure we always recurse and glob the entire filename so the
-         quoting characters added in shell_glob_filename get removed
-         correctly
-
-jobs.c
-       - new function end_job_control to terminate stopped jobs and
-         give the terminal back to the original pgrp
-       - new function restart_job_control to re-initialize the job
-         control state
-
-builtins/exec.def
-       - call end_job_control before we try to execve the command so
-         we're back in the original process group for the new process
-         and restart_job_control if the shell_execve fails and we're
-         not exiting
-
-shell.c
-       - change the code that resets the pgrp just before exiting to
-         call end_job_control instead
-
-lib/readline/chardefs.h
-       - new define, MACRO_CHAR
-
-lib/readline/readline.c
-       - changed rl_generic bind to correctly handle binding keys > 128
-         by using the appropriate meta keymap (map[ESC].function as a
-         keymap)
-       - changed rl_dispatch, rl_show_char, and rl_bind_key to use
-         UNMETA instead of substracting 128 and to use META_CHAR to
-         check for a character's `meta-ness'
-
-                                  2/13
-                                  ----
-lib/readline/readline.c, lib/glob/glob.c
-       - define HAVE_DIRENT if it's not defined but HAVE_DIRENT_H is
-
-lib/readline/history.c
-       - instead of calling write(2) twice for each history line, build
-         a big buffer of all the history data to write, fill it, and
-         call write(2) once
-
-subst.c
-       - wrapped up the eight-bit changes by making the single-quoted
-         strings and double-quoted strings code in expand_word_internal
-         simply discard a word if it's "" or '' and that's not the
-         entire word.  This preserves sh semantics.
-
-parse.y
-       - If process substitution is compiled into the shell, there was
-         a mistake by which <[ and >[ were treated the same as $[
-
-lib/glob/glob.c, lib/readline/readline.c
-       - Reorganized the twisty maze of defines for HAVE_DIRENT
-
-                                  2/14
-                                  ----
-posixstat.h
-       - removed lines consisting of only a single #.  Some ANSI cpps
-         don't like lines like that
-
-execute_cmd.c
-       - added a call to QUIT between commands in cmd1 ; cmd2 sequence
-
-test.c
-       - removed redundant declaration of expr() in test_command()
-
-                                    2/16
-                                    ----
-builtins/Makefile
-       - added dependencies on the header files in the main shell directory
-
-jobs.c, jobs.h, builtins/fg_bg.def, builtins/kill.def
-       - replaced the notified, foreground, and job_control members of the
-         job structure with a flags field and bits J_NOTIFIED, J_FOREGROUND,
-         and J_JOBCONTROL
-
-subst.c
-       - fixed a typo (result[0] == '\0') in EIGHT_BIT version of
-         dequote_string
-
-cpp-Makefile
-       - added dependencies for the builtin object files
-
-execute_cmd.c
-       - complete fix from 2/14 -- add QUIT calls to &&, ||, and `;' when
-         executing a command and ignoring the return value
-
-jobs.c
-       - if a job is suspended while running in a loop, break out of the
-         loop
-
-nojobs.c
-       - made the same wait_sigint_handler and wait_for changes as those
-         made to jobs.c
-
-shell.c
-       - moved the code that adds 128 to last_command_exit_value before
-         any SIGINT trap handler is run
-
-subst.c
-       - if a word is enclosed completely in "" or '', set the quoted
-         flag when the word is returned from expand_word_internal. This
-         keeps the globbing routines from being called
-
-                                  2/17
-                                  ----
-shell.c
-       - use shell_name instead of (++argv[0]) when testing for a
-         restricted shell
-
-                                  2/18
-                                  ----
-general.c
-       - redid the defines for index and rindex to define and use
-         HAVE_INDEX and HAVE_RINDEX, respectively
-
-machines.h
-       - added HAVE_DIRENT to the AIXRT machine description
-
-jobs.c
-       - define and use INVALID_SIGNAL_HANDLER as something old_sigint_handler
-         cannot be set to
-
-                                  2/19
-                                  ----
-
-config.h
-       - made restricted shell mode configurable, #define RESTRICTED_SHELL
-
-shell.c, flags.c, execute_cmd.c, builtins/cd.def
-       - add code to implement ksh/sh restricted shell mode
-
-shell.c
-       - new function maybe_make_restricted (name) which turns the shell
-         into a restricted shell if name == `rbash'
-
-lib/readline/readline.c
-       - fixed rl_key_sequence_length problem when meta-ized characters are
-         read (one too short).  This left extra characters in macros when
-         end-kbd-macro was bound to a meta-ized character
-
-builtins/common.c
-       - added set_working_directory (name) as analog of
-         get_working_directory
-
-variables.h
-       - added `imported' variable attribute
-
-                                  2/20
-                                  ----
-Makefile
-       - DESTDIR -> bindir
-       - aix-Makefile -> ansi-Makefile because an ANSI C compiler like that
-         in SunOS5 (hah!) need not accept /**/# as a directive
-
-bashline.c
-       - added code from bfox to do completion into brace expansions
-       - use BUILTIN_ENABLED flag
-
-builtins.h
-       - added a flags field to struct builtin to replace the `enabled'
-         structure member
-
-cpp-Makefile
-       - set SHELL=MAKE_SHELL if MAKE_SHELL is defined
-       - added support for the LD_HAS_NO_DASH_L definition from machines.h
-       - PROGRAM -> Program
-       - support for the new LD_HAS_NO_DASH_L machine defintion variable
-
-execute_cmd.c
-       - removed the subshell_environment variable
-       - find_user_command_internal now calls find_variable_internal
-
-general.c
-       - moved init_signal_handler here, changed name to set_signal_handler
-
-general.h
-       - added definition for set_signal_handler for non-Posix systems
-
-jobs.c
-       - now print `Done' when a background job exits with status 0
-
-machines.h
-       - combined all of the Sun machine descriptions into one
-       - new descriptions for SunOS5, Alliant, Motorola Delta 68k
-       - completely redid the HPUX description, making M_MACHINE much more
-         specific rather than just `hpux'
-
-nojobs.c
-       - change all instances of signal() to set_signal_handler()
-
-shell.c
-       - removed definition of init_signal_handler
-       - changed more instances of signal to set_signal_handler
-
-subst.c
-       - monster reformat
-
-variables.c
-       - added a function find_variable_internal that can be explictly told
-         to search the temporary environment, changed find_variable to call
-         it
-       - changed all variables and functions from the initial shell
-         environment to have the `imported' attribute
-       - made set_func_auto_export return the pointer to the function struct
-
-builtins/Makefile
-       - ar clq --> ar cq
-
-builtins/cd.def
-       - `pushd_silent' is gone
-
-builtins/common.c
-       - there is no more `enabled' member of a builtin struct;
-         test with BUILTIN_ENABLED instead
-
-builtins/enable.def, builtins/help.def
-       - use BUILTIN_ENABLED bitmask
-
-builtins/mkbuiltins.c
-       - initialize all builtins to be BUILTIN_ENABLED | STATIC_BUILTIN
-
-lib/glob/Makefile
-       - ar clq -> ar cq
-
-lib/glob/glob.c
-       - added another shell interruption point
-       - reorganized the twisty maze of dirent defines to use HAVE_DIRENT_H
-
-lib/readline/readline.c, lib/readline/funmap.c
-       - put rl_arrow_keys back in
-
-lib/readline/Makefile
-       - ar clq -> ar cq
-
-lib/readline/readline.c
-       - reorganized the twisty maze of dirent defines to use HAVE_DIRENT_H
-       - made the search string for i-searches dynamically allocated and
-         expandable rather than using alloca
-       - turned on USE_XON_XOFF again
-       - RL_DEFAULT_INPUT_FILE -> DEFAULT_INPUTRC
-
-support/cppmagic
-       - added `legal' to the list of unknown flags
-
-support/getcppsyms
-       - now recognizes _M88KBCS_TARGET
-
-support/mksysdefs
-       - code to distinguish SunOS5 from SunOS4
-       - aix-Makefile -> ansi-Makefile
-
-lib/readline/vi_mode.c
-       - after completing with `*' or `\', Posix.2a says to go into
-         insertion mode
-       - for c[wW], don't move back any farther than we started to
-         emulate c[eE] -- Posix.2 says the cursor position should not
-         change
-
-variables.c
-       - if we get PWD from the environment, and it's the same directory
-         as `.' (calling same_file) set the_current_working_directory
-         to that value
-
-builtins.h
-       - added a #define for SPECIAL_BUILTIN
-
-mksysdefs
-       - Xenix systems now have one of XENIX_22, XENIX_23, or XENIX_32
-         defined based on the OS release level
-       - test for /dev/fd being a directory and /dev/fd/0 being readable
-         to decide whether or not we have the /dev/fd way of naming open
-         files
-
-                                  2/24
-                                  ----
-builtins/common.c
-       - set_working_directory is now a void
-
-general.c
-       - new implementation of canonicalize_pathname from bfox
-         (+ bug fixes, of course)
-
-bashline.c
-       - make bash_symbolic_link_hook call canonicalize_pathname
-
-variables.c
-       - set_func_auto_export no longer returns a SHELL_VAR *
-
-lib/readline/readine.c
-       - added code to determine whether or not the terminal has a
-         meta key and to use it while editing if one is available
-
-subst.c
-       - minor bug fix to remove_quoted_escapes (logic bomb :-)
-
-                                  2/25
-                                  ----
-machines.h
-       - cleaned up the hpux section.  Cannot define M_OS as HPUX_X,
-         because HPUX_X is already defined as expanding to nothing;
-         this results in a blank M_OS
-
-       - attempted to rationalize Xenix support.  Depending on the
-         XENIX_nn define provided by support/mksysdefs, configure in
-         -DREVERSED_SETVBUF_ARGS, -xenix, -lx, -ldir, and HAVE_DIRENT
-
-               Xenix 2.2: -DREVERSED_SETVBUF_ARGS
-                          cc -lx
-
-               Xenix 2.3: HAVE_DIRENT
-                          cc -ldir
-
-               Xenix 3.2: HAVE_DIRENT
-                          cc -xenix -ldir
-
-                                  2/26
-                                  ----
-builtins/source.def
-       - POSIX_PENDANTIC -> POSIX_PEDANTIC
-
-                                  2/27
-                                  ----
-support/getcppsyms.c
-       - consolidated HP definitions to be of the form
-
-               #if defined (__hp9000s300) || defined (hp9000s300)
-                 printf (" -Dhp9000s300")
-               #endif /* __hp9000s300 || hp9000s300 */
-
-machines.h
-       - changed the way the hp9000s300 tests for hp9000s200 being defined
-
-support/mksysdefs
-       - changed the XENIX_nn defines a little bit
-
-input.c
-       - new input buffering package -- like stdio but allows syncing with
-         the underlying file descriptor when creating child processes, and
-         provides a fd-stream mapping.
-
-input.h, shell.c, jobs.c
-       - changes for the input buffering package, using default_buffered_input
-         in place of default_input
-
-general.c
-       - fix canonicalize_pathname to keep from running off the end of the
-         result string (check result[i] before assigning start = i++)
-
-jobs.c
-       - change some calls to signal to call set_signal_handler instead
-
-                                    2/29
-                                    ----
-shell.c
-       - only initialize default_buffered_input to the input file
-         descriptor if the shell is not interactive
-
-builtins/getopt.c
-       - cast the arguments properly in calls to my_bcopy
-
-execute_cmd.c
-       - added code to do_redirection_internal to change buffered streams
-         if one of the file descriptors corresponding to a buffered input
-         stream is modified.  This lets the shell do proper buffering if
-         the file descriptor from which the shell is reading input is
-         modified by a redirection (e.g., exec 0</etc/passwd)
-
-input.c, shell.c, parse.y, jobs.c, nojobs.c
-       - changed default_buffered_input to an integer file descriptor that
-         is mapped to a buffered stream via the `buffers' array
-
-input.c
-       - the `buffers' array is now lazily dynamically allocated
-       - added functions to duplicate buffered streams so that things like
-         exec 0<&4 will work right
-       - added functions to access the buffered stream functionality given
-         a file descriptor argument, indexed through the `buffers' array.
-       - unbuffered streams now have bp->b_size == 1, so that no special-
-         case code is needed when reads are done.
-
-input.h
-       - the member of the BASH_INPUT union in effect if it describes a
-         buffered stream is now a file descriptor
-
-jobs.c
-       - SCO 3.2.4 has fixed the sigsuspend() bug, so don't execute the
-         hack workaround if SCOv4 is defined
-
-                                    3/1
-                                    ---
-builtins/common.c
-       - made shell_builtin_compare perform some tests itself before
-         calling strcmp to cut down the number of strcmp calls
-       - did the same thing for builtin_address_internal
-
-parse.y
-       - removed calls to strcmp from read_token, just test if token[0] == }
-         and !token[1]
-       - only call clearerr if bash_input.type == st_stream in shell_getc
-       - removed a call to strcpy from shell_getc that only added a newline;
-         changed it to two assignment statements
-       - used token_index instead of a call to strlen at the end of
-         read_token where the word is being constructed and returned
-
-unwind_prot.c
-       - changed a strcmp to a STREQ in unwind_frame_run_internal
-
-variables.c
-       - removed some dead code that had been #if'd out
-       - added a variable to avoid a call to strlen in
-         initialize_shell_variables
-       - change a call to strncmp to a STREQN in initialize_shell_variables
-       - changed strcmp to STREQ in non_unsettable
-
-                                   3/2
-                                   ---
-jobs.c
-       - rearranged the code that calls flush_child (0) for SCO so it is
-         easier to do something like SCO && !SCOv4
-       - changed flush_child so that the loop is performed in a blocking
-         fashion only if SCO && !SCOv4
-
-                                   3/3
-                                   ---
-signames.c
-       - new standalone program to create a signames.h file that contains
-         the initialization code for the signal_names array
-
-trap.h
-       - removed the signal_names array initialization code
-       - include "signames.h"
-
-cpp-Makefile
-       - make sure signames.aux builds signames.h correctly
-
-input.c
-       - changed fd_is_seekable and bufstream_getc into macros
-
-mksysdefs
-       - changes to define SCOv4 if uname returns the right info
-
-machines.h
-       - changes to define BROKEN_SIGSUSPEND and NO_DEV_TTY_JOB_CONTROL
-         for various SCO systems
-
-jobs.c
-       - check for BROKEN_SIGSUSPEND and NO_DEV_TTY_JOB_CONTROL instead
-         of using SCO
-
-                                   3/4
-                                   ---
-general.c
-       - make set_signal_handler return the old signal handler again
-
-shell.c
-       - set SIGINT handler to sigint_sighandler for non-interactive shells
-       - remove SIGQUIT from list of terminating signals
-
-                                   3/5
-                                   ---
-builtins/trap.def
-       - added special SIGINT handling for the case of reverting a signal
-         handler to the default
-
-shell.c
-       - added SIGINT back to the list of terminating signals for
-         non-interactive shells
-
-variables.c
-       - initialize mail variables in initialize_shell_variables only if
-         interactive_shell is true
-       - only check for command_oriented_history if interactive shell
-       - only initialize the history variables if history expansion is
-         being performed (remember_on_history == 1)
-       - only make PS1 and PS2 non-unsettable if the shell is interactive
-
-                                   3/6
-                                   ---
-variables.c
-       - set up a new temporary environment, FUNCTION_ENV, which is the
-         temporary environment provided to a function
-       - make find_tempenv_variable search both temporary_env and
-         function_env, searching function_env if variable_context > 0
-       - change maybe_make_export_env to add variables from function_env
-         to the environment
-       - new function dispose_function_env to deallocate the temporary
-         function environment and cause a new export_env to be made
-       - added code to qsort_string_compare to compare the first
-         characters of the strings passed before calling strcmp
-
-general.c
-       - new function copy_array (char **array) returns a newly-allocated
-         copy of ARRAY
-
-execute_cmd.c
-       - added code to execute_builtin_or_function that initializes the
-         temporary function environment and takes care of disposing of
-         it on normal or abnormal exit
-       - dispose of temporary environment after we initialize the function
-         environment
-       - added same code to execute_subshell_builtin_or_function
-       - since the trap code now restores the SIGCHLD handler to the
-         original, any time make_child is called and the shell needs to
-         run in the child process, set_sigchld_handler should be called
-         to reinstall the proper SIGCHLD handler
-
-jobs.c
-       - new function set_sigchld_handler to reinstall flush_child as the
-         SIGCHLD signal handler
-
-                                   3/9
-                                   ---
-bashline.c
-       - swapped code around to avoid calling savestring (this_fignore)
-         when this_fignore is null
-
-                                  3/10
-                                  ----
-jobs.c
-       - make sure the code in flush_child that calls the SIGCHLD trap
-         handler saves last_made_pid and the_pipeline using unwind-protects
-
-lib/readline/readline.c
-       - make sure the code that uses VLNEXT is protected by #ifdef
-         TERMIOS_TTY_DRIVER
-
-shell.c
-       - add a `beenhere' flag to avoid executing $ENV more than once
-
-parse.y
-       - added a new token ASSIGNMENT_WORD
-       - made read_token return ASSIGNMENT_WORD if in a simple command
-         position, token contains `=', the `=' is not the first character,
-         and the characters before `=' are a legal identifier (as Posix.2
-         specifies)
-       - a simple_command_element can now also be an ASSIGNMENT_WORD
-       - alias expansion is attempted if the last token was an
-         ASSIGNMENT_WORD, as Posix.2a specifies
-
-                                  3/11
-                                  ----
-execute_cmd.c
-       - moved the code that checks command words for `/' down into
-         execute_disk_command, and made it check only the first command
-         word, like sh and ksh
-        - vfree() is no longer static, so other code that needs to add 
-          unwind-protects that use free can use it
-
-trap.c
-       - added a function set_sigchld_trap (command) to set the SIGCHLD
-         trap handler to `command', because unwind-protects cannot take
-         two arguments
-
-jobs.c
-       - changed the code in flush_child to set up and use and unwind-protect
-         frame to protect the things it needs to while running the SIGCHLD
-         trap commands
-
-                                  3/12
-                                  ----
-nojobs.c
-       - added the BUFFERED_INPUT code to make_child
-
-subst.c
-       - folded the test and increment of the string pointer into
-         string_extract_double_quoted and string_extract_single_quoted
-       - made string_extract_verbatim and string_extract static
-
-lib/readline/history.c
-       - changed code that calls string_extract_single_quoted to not
-         increment the string pointer after the call
-
-variables.c
-       - added code to qsort_var_comp to compare the first character of
-         the variable names before calling strcmp
-
-                                  3/13
-                                  ----
-parse.y
-       - include string.h or strings.h
-
-lib/readline/readline.c, lib/glob/glob.c
-       - removed the code that defined HAVE_DIRENT_H if _POSIX_VERSION
-         was defined -- it breaks on apollos, and is a bad idea
-         anyway
-
-input.c
-       - make sure close_buffered_fd closes the fd, whether or not it
-         was a buffered stream
-
-                                  3/16
-                                  ----
-machines.h
-       - added a #define LD_HAS_NO_DASH_L to the Sequent Dynix entries
-
-trap.c
-       - made trap_list[SIGINT] == IMPOSSIBLE_TRAP_HANDLER while running
-         the interrupt trap, so we can tell if the trap handler sets
-         another trap and not restore the original handler if so
-
-                                  3/17
-                                  ----
-trap.c
-       - a new function set_sigint_handler, which subshells doing `shellsy'
-         things like command substitution and ( cmd ) call to make sure
-         they handle interrupts right
-
-execute_cmd.c, subst.c
-       - added calls to set_sigint_handler in the appropriate spots
-
-                                  3/18
-                                  ----
-hash.c
-       - replaced the old hash function with the one from Gnu cpp, which has
-         a much better distribution
-
-jobs.c
-       - make end_job_control call setpgid to reset the pgrp to the original
-         only if original_pgrp >= 0
-
-builtins/exec.c
-       - remove the calls to restore_default_signal; restore_original_signals
-         now does all the necessary work
-
-                                  3/19
-                                  ----
-jobs.c, nojobs.c
-       - make sure that make_child resets default_buffered_input to -1
-         after closing it with close_buffered_fd
-
-                                  3/23
-                                  ----
-lib/glob/tilde.c
-       - had an extern declaration for malloc rather than xmalloc
-
-general.h
-       - added #define for REVERSE_LIST, a macro which calls reverse_list
-         on a list only if the pointer is valid and there is more than one
-         element
-
-parse.y
-       - removed calls to legal_assignment in read_token; assignment()
-         already does those checks
-
-general.c
-       - reformatted reverse_list
-
-copy_cmd.c
-       - changed calls to reverse_list in copy_word_list and copy_redirects
-         to calls to REVERSE_LIST
-
-subst.c
-       - changed a call to reverse_list in expand_word_internal to one to
-         REVERSE_LIST
-
-                                  3/24
-                                  ----
-builtins/common.c
-       - replaced a call to sscanf with code to skip leading whitespace and
-         calls to all_digits and atoi
-
-mailcheck.c
-       - did the same for a call to sscanf in time_to_check_mail
-
-                                  3/26
-                                  ----
-variables.c
-       - made find_variable_internal call find_tempenv_variable only if
-         temporary_env or function_env exists
-[gprof.int.4]
-
-alias.c, alias.h
-       - rewrote the alias code so that it now uses a hash table instead
-         of looking things up in a linear list
-
-subst.c
-       - removed the inclusion of alias.h
-
-parse.y
-       - added inclusion of alias.h
-
-cpp-Makefile
-       - removed alias.h from subst.o's dependencies
-       - added alias.h to y.tab.o's dependencies
-
-bashline.c, builtins/alias.def
-       - rewrote code that knew about the internal alias data structure
-         to use an array of alias structures to search, match, and print
-
-                                  3/27
-                                  ----
-test.c
-       - group_member() needs to check against gid and egid regardless
-         of whether or not the system has getgroups(2); Posix.1 does not
-         require that the primary group id show up in the group list,
-         and some systems do not put it there
-
-                                  3/30
-                                  ----
-parse.y
-       - add `|' to the list of tokens that should not have a semicolon
-         following them when adding a line to the history when command-
-         oriented history is active
-
-lib/readline/readline.c
-       - fixed up the control character display by making the code print
-         c ^ 0x40
-
-support/cppmagic
-       - add support for recognizing the s5r4 c pre-processor,
-         /usr/ccs/lib/cpp
-
-lib/readline/vi_mode.c
-       - made rl_vi_delete_to pay attention to whether or not we're redoing,
-         and to use the last motion key if we are
-       - made rl_vi_char_search use the last char searched for if we're
-         redoing
-
-                                  3/31
-                                  ----
-parse.y
-       - removed the check for non-interactive-ness when doing shell
-         comments
-
-                                   4/1
-                                   ---
-lib/readline/readline.c
-       - completion with tilde expansion needs to have any `/' present at
-         the end of the user's directory name re-inserted manually, because
-         pathname canonicalization strips any trailing `/', before tacking
-         on the expanded filename
-
-subst.c
-       - fixed a bug in dequote_string that caused reading beyond the end
-         of the string if the last character in the string was an (unquoted)
-         CTLESC
-       - made list_string obey the setting of `quoted' and not do the
-         initial strip of whitespace from the beginning and end of the
-         word if it was set
-       - expand_word_internal calls list_string with quoting == 1 if splitting
-         a word after expanding "$@"
-
-error.c
-       - new function itrace for interactive traces
-
-subst.c
-       - command_substitute should give the terminal back to pipeline_pgrp
-         only if the shell is interactive
-
-execute_cmd.c
-       - execute_disk_command should turn off interactive while performing
-         redirections for an asynchronous command.  The problem was a race
-         condition with command_subst.  A command like
-               date > `hostname` &
-
-         would leave the subshell begun to run date and the primary shell
-         fighting over the terminal.  After the subshell did the command
-         substitution, it wanted to give the terminal back to pipeline_pgrp,
-         which was its own pid.  Since it was in the background, though,
-         that was wrong, and ended up taking the terminal away from the
-         primary (interactive) shell, which thought it had the thing.
-
-lib/readline/readline.c
-       - if SYSTEM_CALL_RESTART is not defined, declare c as an integer
-
-                                   4/3
-                                   ---
-bashline.c
-       - put code into command_word_completion_func to skip all but pathname
-         completion checks if the hint given is an absolute pathname
-       - fix strncmp of basename against hint text (??); this always failed
-         unless there was no pathname given
-
-                                   4/7
-                                   ---
-bashline.c
-       - fixed the cases where the simple `last character is a command
-         separator' test fails for distinguishing between program name
-         completion and filename completion: the tokens >&, >|, and <&.
-       - corrected fix of 4/3 to handle command word completion with and
-         without leading paths
-
-                                   4/8
-                                   ---
-lib/readline/readline.c
-       - break the declaration and initialization of a variable with a call
-         to setjmp into a declaration and separate assignment statement (for
-         Cray)
-
-                                  4/10
-                                  ----
-subst.c
-       - A word that uses both "" and '' to do quoting will not be marked
-         as fully quoted by expand_word_internal.  Wrote a
-         fully_quoted_word () predicate function to solve that.
-       - Quoted patterns with globbing characters are sent to the
-         globbing functions because glob_pattern_p doesn't understand
-         shell quoting.  Wrote a new function unquoted_glob_pattern_p,
-         to fix that.
-
-                                  4/13
-                                  ----
-shell.c
-       - make sure default_input is valid and being used for an interactive
-         shell started without line editing
-
-                                  4/15
-                                  ----
-builtins/common.c
-       - redid part of the new get_numeric_argument code to avoid a call to
-         atoi and just do everything ourselves
-
-variables.c
-       - only call set_if_not on PS1 and PS2 in initialize_shell_variables
-         if the shell is not interactive
-       - check the variable returned by looking up PWD to make sure it's
-         non-null before trying to use it in initialize_shell_variables
-
-jobs.c
-       - add a descriptive tag to the call to get_working_directory in
-         job_working_directory
-
-                                  4/17
-                                  ----
-test.c
-       - fixed a typo in group_member: gid -> pgid in assignment statement
-       - in the normal Sun compilation environment, getgroups returns an
-         array of ints, not gid_ts.  getgid and getegid also return ints.
-         stat structures contain a gid_t, though.
-
-         Need to reorder the includes so that stat.h is included first, then
-         uid_t and gid_t are redefined to int, then the rest of the files
-         are included.
-
-         Also need to cast the values from a stat structure to gid_t and
-         uid_t before comparing them to the results of getgid and getuid
-         when implementing -O and -G
-
-                                    4/21
-                                    ----
-lib/readline/readline.c
-       - added code to rl_getc to handle EWOULDBLOCK/EAGAIN and turning off
-         no-delay mode
-
-                                  4/22
-                                  ----
-
-builtins/cd.def
-       - made change_to_directory canonicalize the pathname before attempting
-         to chdir(2) if follow_symbolic_links is set
-
-                                  4/23
-                                  ----
-builtins/type.def
-       - made type handle absolute program names by just echoing the name
-
-builtins/alias.def
-       - made single_quote correctly handle single quotes in aliases
-
-                                  4/28
-                                  ----
-trap.c
-       - made ignore_sig and restore_default_signal check that the value
-         of the original signal handler (in original_signals) was valid
-         before trying to use it.  Bug noticed with `trap "" 1 2 3' as
-         first line in script.
-
-                                  4/29
-                                  ----
-lib/readline/readline.c
-       - made rl_signal_handler only unblock the signal it just received
-         on BSD and Posix systems
-
-                                   5/5
-                                   ---
-builtins/type.def
-       - don't look up the function with find_function until we actually
-         need the info
-
-execute_cmd.c
-       - in do_redirection_internal, don't do unnecessary work.  For instance,
-         >&1 ends up duplicating fd 1 as itself (then adding a close for it,
-         which is a bug)
-
-                                   5/8
-                                   ---
-general.h
-       - don't attempt to declare index and rindex if `index' is defined
-         (with #define)
-
-lib/readline/vi_mode.c
-       - fixed the `c' command so that cl and c<space> are equivalent --
-         formerly the c<space> changed two characters instead of one.
-         The same fix was made to rl_vi_change_to, rl_vi_delete_to, and
-         rl_vi_yank_to
-
-parse.y
-       - bash_add_history did not correctly handle lines that ended with
-         an escaped newline.  It would insert semicolons in the locations
-         where the line breaks occurred.
-
-                                    5/12
-                                    ----
-documentation/bash.1
-       - removed references to pushd_silent
-       - added setion on process substitution
-
-subst.c
-       - fixed a bug in expand_word_internal that caused $xxx"" to expand
-         to nothing when `xxx' was unset.  The code now explicitly turns
-         a partially quoted string that expands to nothing (istring[0] == 0)
-         into a QUOTED_NULL (istring[0] = CTLNUL) before returning the
-         word list.
-
-                                  5/15
-                                  ----
-documentation/bash.1
-       - added a missing .PD in the builtins section after the line
-         summarizing `:'
-       - added text describing the effect of additional arguments to the
-         `.' command
-
-subst.c, general.c, jobs.c, nojobs.c, error.c, getcwd.c
-       - only declare errno as `extern int' if it's not #defined
-
-builtins/{bind,exec,fc,kill,source}.def, lib/readline/{readline,history}.c
-       - ditto with errno
-
-lib/glob/fnmatch.c
-       - ditto with errno
-
-                                    5/17
-                                    ----
-execute_cmd.c
-       - shells compiled with job control active should perform the implicit
-         `</dev/null' redirection for asynchronous commands when it is not
-         active
-
-builtins/mkbuiltins.c
-       - added a `-nodocument' option to inhibit the output of the `xxx_doc'
-         array that is a builtin's long documentation.  Saves between 26
-         and 27K in the bash executable on the RT, 32K on the Sun-4
-
-                                  5/22
-                                  ----
-print_cmd.c
-       - added code to make group commands print better
-
-builtins/common.c
-       - new function remove_hashed_filename to remove a filename from the
-         table of hashed commands
-
-execute_cmd.c
-       - make sure the filename found in the hash table actually exists and
-         is executable.  If not, remove it from the hash table and look it
-         up in $PATH.
-
-general.c
-       - make sure to #include <signal.h> before defining set_signal_handler
-         (on Posix systems)
-
-builtins/command.def
-       - change HPUX_7 to hpux_7
-
-                                  5/27
-                                  ----
-builtins/times.def
-       - added USGr3 to the list of systems that should have HAVE_RESOURCE
-         undefined even though <sys/resource.h> exists
-
-                                  5/28
-                                  ----
-machines.h
-       - added a description for 386/486 boxes running BSDI BSD/386
-
-support/mksysdefs
-       - looks for <limits.h> and writes a define to sysdefs.h if it's
-         found
-
-maxpath.h
-       - rewritten -- now includes limits.h if HAVE_LIMITS_H is defined,
-         then tries to define MAXPATHLEN as PATH_MAX
-
-                                  5/29
-                                  ----
-lib/readline/history.c
-       - added definition for rl_string_extract_single_quoted so the
-         code inhibiting history expansion inside quotes does not depend
-         on the shell
-       - change to use rl_string_extract_single_quoted
-       - removed code that would have inhibited history expansion in
-         double-quoted strings
-
-subst.c
-       - make string_extract_{single,double}_quoted static again
-
-                                   6/1
-                                   ---
-trap.c
-       - systems with _POSIX_VERSION defined need not reset the signal handler
-         inside trap_handler
-       - set_signal should use set_signal_handler() to install the signal
-         handler rather than signal()
-       - initialize_traps needs to use set_signal_handler for SIGINT and
-         SIGQUIT rather than signal()
-       - restore_default_signal needs to use set_signal_handler
-
-parse.y
-       - the readline interface code needs to use set_signal_handler to
-         install the SIGINT handler
-
-lib/readline/readline.c
-       - new function rl_set_sighandler, which is the readline analogue of
-         the bash set_signal_handler
-       - rl_set_signals and rl_clear_signals need to use rl_set_sighandler
-         for SIGINT and SIGALRM
-
-                                   6/2
-                                   ---
-signames.c
-       - fixed a typo (signame_names -> signal_names)
-
-                                   6/3
-                                   ---
-subst.c, general.c
-       - AIX machines need to use sysv_getc rather than getc when reading
-         from the command substitution pipe -- read(2) is not restarted
-         automatically when interrupted by a signal and returns EINTR
-
-                                   6/5
-                                   ---
-documentation/bash.1
-       - removed documentation of M-C-j command in emacs editing mode
-       - added description of M-{ (complete-into-braces)
-       - added description of M-! and C-x ! command completion
-       - added description of M-TAB dynamic history completion
-
-lib/readline/search.c
-       - new file containing code to perform non-incremental history
-         searches.  Functions to call are rl_noninc_forward_search
-         and rl_noninc_backward_search
-
-lib/readline/emacs_keymap.c
-       - bound M-^R to non-incremental-search-backward, M-^S to
-         non-incremental-search-forward
-
-lib/readline/readline.h
-       - extern defintions for rl_noninc_{forward,backward}_search
-
-lib/readline/funmap.c
-       - added names `non-incremental-forward-search-history' and
-         `non-incremental-reverse-search-history'
-
-lib/readline/vi_mode.c
-       - rl_vi_yank_arg should put readline into insertion mode when
-         it is done
-
-lib/readline/vi_keymap.c
-       - ^I should just insert when in vi insertion mode, rather than
-         attempt completion
-
-                                    6/6
-                                    ---
-
-lib/readline/funmap.c
-       - removed the `vi-dosearch' bindable string, since rl_vi_dosearch
-         is really a private function for vi_mode.c.  It does not fit
-         the calling conventions of the bindable readline functions
-         (and I've since removed it)
-
-lib/readline/readline.h
-       - removed the extern definition for rl_vi_dosearch
-
-lib/readline/search.c
-       - added new functions rl_noninc_forward_search_again and
-         rl_noninc_backward_search_again to search for the last saved
-         search string from the current `noninc' history position
-
-lib/readline/vi_mode.c
-       - removed the vi history search code and changed rl_vi_search
-         and rl_vi_search_again to call the non-incremental search code
-         from search.c
-
-                                   6/8
-                                   ---
-
-[changes from bfox version dated 5/10]
-
-bashline.c
-       - changed the conditional clause that decides whether a token is
-         in a command position for command name completion to be a little
-         simpler
-
-bracecomp.c
-       - new version from bfox
-
-config.h
-       - moved BUFFERED_INPUT define here
-
-flags.c
-       - new flag for interactive comments
-       - reformatted find_flag
-
-flags.h
-       - added interactive_comments and an extern declaration of restricted
-
-machines.h
-       - new cray definition from bfox
-
-maxpath.h
-       - don't include limits.h if BUILDING_MAKEFILE is defined
-
-shell.c
-       - moved the check for restricted to immediately after the sourcing
-         or .profile
-
-test.c
-       - now includes shell.h in the initial block of includes
-
-trap.c
-       - new function get_original_signal to take care of the bookkeeping
-         of correctly setting up original_signals[sig]
-
-trap.h
-       - signal_decode -> decode_signal
-
-builtins/exec.def
-       - adjusted the help text to make it clear that only non-interactive
-         shells check the no_exit_on_failed_exec variable and exit if the
-         execve fails
-
-builtins/set.def
-       - added description and code to implement set -o interactive_comments
-
-lib/glob/glob.c
-       - if PAT is empty when glob_vector is called, skip the loop and
-         return one empty filename.  This is how to make echo */ echo
-         only directory names
-
-lib/readline/parens.c
-       - new file from bfox implementing parenthesis matching for readline
-
-lib/readline/emacs_keymap.c
-       - if PAREN_MATCHING is defined, perform `show-matching' on `)', `}',
-         and `]'
-
-lib/readline/history.c
-       - add `$' to the list of separating characters in history_tokenize
-         so that two-character `$' tokens ($$, $!, $() are parsed correctly
-
-lib/readline/readline.c
-       - Make an argument of 1 to rl_rubout and rl_delete work the same
-         as if any other argument had been given by saving the text on
-         the kill ring
-       - in rl_getc, check that the value returned from read == sizeof
-         unsigned char
-
-lib/readline/readline.h
-       - added declaration of rl_event_hook, which is the address of a
-         function to call periodically while readline is awaiting
-         character input
-
-support/cppmagic
-       - new implementation from bfox, now returns a full cpp specification,
-         complete with system dependent flags
-
-support/mksysdefs
-       - added a variable MAKE_ANSI which, if set to true, causes the
-         ansi Makefile to be generated
-       - added code to recognize various types of cray/unicos machines
-
-[end of fixes from bfox]
-
-getcwd.c
-       - integrated changes that allow getcwd to handle paths longer
-         than PATH_MAX by shifting to using a dynamically-allocated
-         buffer
-
-builtins/set.def
-       - make the check for emacs or vi check to make sure the shell is
-         interactive
-
-                                  6/10
-                                  ----
-builtins/common.c
-       - the dollar_arg_stack was never being reallocated in push_dollar_vars
-         because of a stray `if (!dollar_arg_stack)' before the realloc call
-
-                                    6/12
-                                    ----
-cpp-Makefile
-       - added some missing $(RM) $@ in explicit targets for objects (the
-         ones that don't go through the default rules) as well as the
-         targets for the auxiliary programs
-
-subst.c
-       - redid the way bash handles assignment statements on command lines
-         to fix two bugs:
-
-               1) variable assignments are not supposed to affect expansion
-                  performed on the same line, if a command is to be run
-               2) if the words left after removing the variable and environment
-                  assignments don't expand to a command word, the assignments
-                  should affect the shell's environment
-
-         new function: separate_out_assignments
-               removes variable assignments that precede other words and puts
-               them on VARLIST
-               removes environment assignments in the rest of the words, if
-               set -k is in effect, and puts them on ENVLIST
-
-         just before expand_words_internal returns, it checks varlist and
-         envlist (if it is doing expansion) and performs the assignments, if
-         any.  If it's returning a null list, these assignments affect the
-         shell's environment
-
-                                    6/13
-                                    ----
-subst.c
-       - eliminated ENVLIST; VARLIST can serve for both variable and
-         environment assignments
-
-       - sped up expand_words_internal's section for brace expansion by
-         eliminating unnecessary copies -- original word is used unless brace
-         expansion occurred, in which case the original word is linked to
-         a list of words to dispose when brace expansion is completed
-
-       - sped up the word expansions section of expand_words_internal by
-         (possibly) eliminating a call to reverse_list on the results of
-         word expansion and splitting on $IFS, because the most common
-         case will expand to only a single word
-       - `expanded' needs to be freed only if expansion and word splitting
-         took place, no moving the call to dispose_words up after the call
-         to word_list_split means that the common case no longer needs to
-         copy the list
-
-       - sped up globbing by eliminating copying as was done for brace
-         expansion -- keeping a list of `disposable' words and using the
-         original list contents if expansion failed or was not performed
-       - in the case that we're not globbing a word because it has no
-         unquoted globbing characters, eliminated the copy and creation of
-         a brand new list
-       - added a define GLOB_FAILED that handles the cases of using and
-         not using the GNU libc Posix.2 globbing library
-       - moved the code that dequotes the original word so it's executed
-         only if the glob fails
-       - wrapped the code that performs globbing inside an if (new_list)
-         clause
-       - call REVERSE_LIST only if we're actually doing globbing; otherwise
-         dequote the list and go on to performing assignments
-
-                                  6/15
-                                  ----
-lib/glob/glob.c
-       - if the directory portion of a pathname to be globbed contains
-         quoted globbing characters, the quotes (backslashes) need to be
-         removed before the code tries to open and read that directory
-
-                                  6/17
-                                  ----
-execute_cmd.c
-       - index -> indx in extract_colon_unit
-
-nojobs.c
-       - make wait_for_single_pid return the status of the pid it's waited
-         for, instead of throwing it away
-       - added a simple pid-status array to avoid multiple calls to
-         wait_for and calling wait on dead processes.  make_child adds
-         pids to this array, and the status of a pid is updated when
-         it's returned from wait(2) or waitpid(2)
-       - removed the checks for whether or not the pid is valid (using
-         kill(2)) in favor of using the information in the pid_list
-
-parse.y
-       - call cleanup_dead_jobs on non-job-control systems to clean up the
-         pid_list
-
-                                  6/18
-                                  ----
-subst.c
-       - include config.h before trying to include string.h or strings.h
-         so USG is properly defined
-
-                                    6/19
-                                    ----
-support/mksysdefs
-       - look for /usr/include/string.h and define HAVE_STRING_H if
-         found.  This is the file mandated by ANSI C.
-
-cpp-Makefile
-       - look for the HAVE_STRING_H definition from sysdefs.h and define
-         it as part of SYSTEM_FLAGS if found
-       - added the HAVE_STRING_H to LIBRARY_CFLAGS, so readline can
-         decide what to include
-
-general.c, parse.y, subst.c
-       - use the HAVE_STRING_H define in deciding which flavor of the
-         include file to use
-
-builtins/common.c
-       - include strings.h or string.h, depending on the definition of
-         HAVE_STRING_H
-       - added extern declaration of rindex and index at file scope
-       - removed extern declaration of rindex in find_hashed_filename
-
-lib/readline/rldefs.h
-       - removed the messy #ifdef clauses and such from readline.c and
-         moved them to this new file
-       - added a section on string functions (string.h vs. strings.h,
-         whether or not index and rindex need to be defined)
-
-lib/readline/readline.c
-       - removed the messy #ifdef clauses that attempt to parameterize
-         things and define constants on a system-specific basis
-       - removed the definition of the unused variable xoff_state
-
-flags.c
-       - corrected a typo in the comment describing jobs_m_flag
-
-jobs.c
-       - new function, current_working_directory (), which returns the
-         cwd without calling malloc to allocate memory, even indirectly.
-         This can safely be called from a signal handler, like when
-         flush_child calls notify_of_job_status if async notification is on
-       - changed call to job_working_directory in pretty_print_job to call
-         current_working_directory
-       - moved assignment to DIR in notify_of_job_status after the calls
-         to sigprocmask to block SIGCHLD and SIGTTOU
-       - in notify_of_job_status, DIR is now assigned via a call to
-         current_working_directory and hence does not need to be freed
-       - notify_of_job_status now initializes DIR to NULL and calls
-         current_working_directory only if it needs to
-       - changed a call to reverse_list in stop_pipeline to REVERSE_LIST,
-         because most pipelines will be only one process long
-
-builtins/jobs.def
-       - make an illegal jobspec cause a failure instead of returning 0 all
-         the time
-
-builtins/times.def
-       - times now ignores any arguments for sh and ksh compatibility
-
-                                    6/20
-                                    ----
-execute_cmd.c
-       - fixed execute_until_or_while to actually return the status of the
-         last command executed in the body rather than
-         last_command_exit_value, which is the status of the test (which
-         has just failed)
-
-                                    6/23
-                                    ----
-execute_cmd.c
-       - fixed execute_subshell_builtin_or_function to exit with 
-         last_command_exit_value if a builtin longjmps to top_level
-         with value EXITPROG, rather than with EXITPROG (3)
-
-                                  6/25
-                                  ----
-cpp-Makefile
-       - added rldefs.h to READLINE_SOURCE
-
-builtins/type.def
-       - `type' now returns 0 if no arguments are given
-
-jobs.c
-       - make wait_sigint_handler obey interrupt_immediately as well
-         as whether the wait builtin is the current command (XXX - in
-         the future remove the check for wait_builtin entirely and
-         just use interrupt_immediately, because this_shell_builtin
-         could be changed by the code that runs from a SIGCHLD trap)
-       - make the code that runs commands from SIGCHLD traps set
-         interrupt_immediately to 1 each time through the loop
-
-                                  6/26
-                                  ----
-builtins/common.c
-       - declare extern void vfree and use it in the add unwind protect
-         call, to avoid having to declare what type free returns
-
-execute_cmd.c, builtins/common.c
-       - removed all references to builtin_pipe_in_hack, which is no
-         longer used
-
-parse.y
-       - removed all references to current_token_being_expanded and
-         pending_token_being_expanded, since their function is subsumed
-         by expanded_token_stack.  Also no need to save this on the
-         pushed string stack, so that element is removed from the
-         struct.
-         (current_token_being_expanded == expanded_token_stack->saved_token)
-
-builtin/jobs.def
-       - removed immediate return if job_control == 0.  This makes it work
-         in command substitution subshells
-
-                                    6/29
-                                    ----
-expr.c
-       - added unary `+'
-       - added bitwise not (`~') at same precedence as logical not (`!')
-       - added left and right shifts (<<, >>) between +,- and the comparisons
-       - added bitwise and, or, xor (&, |, ^)
-       - added logical and, or (&&, ||)
-       - changed exp1 to allow multiple consecutive ! and ~ (in the same way
-         that exp0 allows multiple consecutive leading - and +
-
-lib/readline/history.c
-       - close memory leak -- in history_do_write, free the output filename
-         before returning
-       - close same memory leak in read_history_range
-
-builtins/enable.def
-       - make `enable' with no arguments print only the enabled builtins, and
-         `enable -n' with no other arguments print only the disabled builtins
-
-builtins/setattr.def
-       - make readonly and export return failure when given -f with an
-         argument that is not a function name
-       - added -n to the documentation for readonly
-
-execute_cmd.c
-       - cleaned up the code that checks for #! and binary files some: made
-         sure the file descriptor was always closed, made sure sample_len
-         was > 0 before checking the first two characters, collapsed two
-         if statements into one
-
-jobs.c
-       - changed call to job_working_directory in start_job to call to
-         current_working_directory
-       - changed input_tty to a macro
-       - changed the call to QUIT in wait_for after the wait_loop
-         label to depend on whether job_control is enabled; the test
-         against the terminal process group is superfluous now that
-         we use wait_sigint_handler
-
-builtins/fg_bg.def
-       - Posix.2a specifies that fg and bg should return failure if
-         run when job control is disabled
-
-                                   7/2
-                                   ---
-variables.c
-       - when an existing variable is given a new value by bind_variable,
-         turn off the invisible attribute
-
-shell.c
-       - dup default_buffered_input using fcntl(fd, F_DUPFD, 10) to put
-         it above the shell's user-manipulatable range
-
-execute_cmd.c
-       - in add_undo_redirect, make the redirection added a
-         r_duplicating_input so buffered streams get duplicated as
-         necessary.  It makes no difference for the non-buffered-stream
-         code
-
-                                   7/3
-                                   ---
-subst.c
-       - command_substitute needs to set interactive = 0 and leave
-         interactive_shell reflecting the interactive state of the
-         parent shell
-
-signames.c
-       - prevent SIGGRANT and SIGRETRACT from overriding other already-defined
-         signal names, since, on the RT at least, they override SIGUSR2
-         and SIGEMT, respectively, which are much more common
-
-jobs.c
-       - in notify_of_job_status, if job control is not enabled, do not
-         print the status messages.  Mark dead jobs as notified so they
-         get cleaned up properly
-
-braces.c
-       - when checking for `,' if a closing brace was not found, make
-         sure the , is unquoted
-       - make sure we found an unquoted , before attempting to perform
-         the expansion -- since brace_gobbler purports to understand
-         quoting with \, the rest of the code should support it
-       - disabled the code that caused a failure longjmp if a matching
-         closing brace was not found -- the pattern should be left
-         unchanged, as with any other failed expansion
-
-trap.c
-       - new function maybe_set_sigchld_trap, which sets the trap on
-         SIGCHLD if and only if the signal is not currently trapped
-
-jobs.c
-       - call maybe_set_sigchld_trap after running SIGCHLD trap commands
-         on the death of a child to restore the trap handler, so if the
-         trap handler calls `trap xxx CHLD' it will not be overwritten
-
-lib/glob/fnmatch.c
-       - fnmatch must treat [ without a matching ] as a `regular' character
-         to be matched against the string so that the Posix.2 rules for
-         case command matching are not broken
-
-shell.c
-       - change the call to fcntl that sets default_buffered_input to one
-         to dup2(fd, getdtablesize() - 1) to hopefully get the highest
-         file descriptor
-
-                                   7/6
-                                   ---
-parse.y
-       - if read_token reads a character that matches the current delimiter
-         character, it should make sure the character is `"' before
-         checking delimited_paren_level and blindly accepting it.  There
-         are other values for `delimiter' besides `"'.
-
-shell.c
-       - turn on no_line_editing for non-interactive shells
-
-builtins/set.def
-       - removed test against interactive_shell when deciding whether or
-         not emacs or vi is `on' [backed out of fix from 6/8]
-
-                                   7/8
-                                   ---
-lib/readline/history.c
-       - changed get_history_event so that shell metacharacters (;&()|<>)
-         can terminate an event spec
-
-subst.c
-       - the TERM and TERMCAP variables need special handling only if
-         READLINE is defined
-       - ditto for history_completion_file
-
-machines.h
-       - new description for HPs running OSF/1
-
-                                   7/9
-                                   ---
-lib/readline/readline.c
-       - new variable `eight-bit-input'.  If this is on, readline disables
-         ISTRIP for the Posix or sysv tty drivers
-
-execute_cmd.c, variables.c
-       - new variable `subshell_environment' set in children right after
-         forking and reset in shell_reinitialize.  It means to look in
-         the temporary environment first when looking up variables and
-         functions
-
-                                  7/13
-                                  ----
-config.h, parse.y
-       - changed CSH_HISTORY_EXPANSION to BANG_HISTORY_EXPANSION
-
-shell.c
-       - made all the history-related code #ifdef HISTORY
-       - made maybe_save_shell_history be called only if the shell is
-         interactive and we're remembering history lines
-
-parse.y, flags.c, flags.h, subst.c, variables.c
-       - made all the history-related code #ifdef HISTORY
-       - assignment_acceptable and command_token_position no longer are
-         dependent on ALIAS being defined, since they are used to return
-         ASSIGNMENT_WORD tokens
-
-builtins/bind.def
-       - removed inclusion of readline/history.h
-
-builtins/exec.def, builtins/common.c
-       - made all the history-related code #ifdef HISTORY
-
-builtins/fc.def, builtins/history.def
-       - added a $DEPENDS_ON HISTORY line
-
-builtins/mkbuitins.c
-       - line_error should not try to print error_directory without checking
-         to see whether it is NULL
-
-builtins/Makefile
-       - add $(DIRECTDEFINE) to the command line that builds builtins.c
-
-lib/glob/tilde.c
-       - use getpwuid(getuid()) to look up the home directory of the user
-         executing the shell for tilde expansion ~/foo if $HOME unset
-
-cpp-Makefile, subst.c, config.h
-       - Fixes to make brace expansion a configuration option, on by default
-
-                                  7/14
-                                  ----
-builtins/set.def
-       - fixed unset so an attempt to unset a readonly variable or function
-         is an error (as Posix.2 specifies)
-
-general.h
-       - removed extern declarations of index, rindex
-       - added extern declarations for strchr, strrchr
-       - changed `member' to use strchr
-
-subst.c, general.c, bashline.c, execute_cmd.c, parse.y, test.c
-       - changed calls to index to calls to strchr, calls to rindex to calls
-         to strrchr
-
-builtins/echo.def, builtins/fc.def, builtins/common.c
-       - changed calls to index to calls to strchr, calls to rindex to calls
-         to strrchr
-
-lib/glob/glob.c
-       - changed calls to index to calls to strchr, calls to rindex to calls
-         to strrchr
-
-lib/readline/history.c, lib/readline/readline.c, lib/readline/vi_mode.c
-       - changed calls to index to calls to strchr, calls to rindex to calls
-         to strrchr
-
-lib/readline/vi_mode.c
-       - changed calls to strchr to inline checks, since we're only checking
-         for two characters
-
-                                  7/15
-                                  ----
-variables.c
-       - If PPID is imported, turn off export status
-
-                                  7/17
-                                  ----
-general.h
-       - for USG and Posix systems, define NO_READ_RESTART_ON_SIGNAL
-
-
-general.c
-       - sysv_getc --> getc_with_restart
-       - compile in getc_with_restart if NO_READ_RESTART_ON_SIGNAL is
-         defined
-
-subst.c
-       - call getc_with_restart in command_substitute if on a system
-         with NO_READ_RESTART_ON_SIGNAL defined
-
-parse.y
-       - call getc_with_restart in yy_stream_get if NO_READ_RESTART_ON_SIGNAL
-         is defined
-
-input.c
-       - change b_fill_buffer to restart reads on EINTR
-
-general.h
-       - wrap the declarations of strchr and strrchr inside an #ifdef strchr
-         because some ANSI C compilers (e.g., RS/6000) make them defines in
-         /usr/include/string.h
-
-                                  7/20
-                                  ----
-lib/readline/readline.c
-       - wrap the declarations of strchr and strrchr inside an #ifdef strchr
-         because some ANSI C compilers (e.g., RS/6000) make them defines in
-         /usr/include/string.h
-
-                                  7/21
-                                  ----
-lib/readline/parens.c
-       - wrap all parameters and variables associated with the select call
-         into #ifdef FD_SET
-
-execute_cmd.c
-       - added tilde expansion to the pattern list members of case statement
-         clauses, as specified by Posix.2 d11.3
-
-lib/readline/readline.c
-       - when comparing members of the c_cc array directly against
-         _POSIX_VDISABLE, cast both sides to unsigned char
-
-support/getcppsyms.c
-       - recognized __svr4__
-
-machines.h
-       - for Sun machines, if __svr4__ is defined and USGr4 is not, define
-         USGr4
-
-shell.c
-       - some machines need sys/types.h included before stdio.h (mostly for
-         size_t)
-
-lib/malloc/malloc.c
-       - add SunOS5 to the list of systems that do no redefine valloc (?)
-
-                                  7/22
-                                  ----
-make_cmd.c
-       - save and restore the value of line_number around reading a
-         here-document
-
-lib/glob/glob.c
-       - change to use HAVE_STRING_H to decide which version of the
-         header files to include
-
-                                    7/25
-                                    ----
-execute_cmd.c
-       - fixed execute_command_internal so that failure to perform
-         redirections attached to a shell compound command like if
-         or while causes the command to return failure right away
-       - eliminated use of redir_result in execute_builtin_or_function
-       - changed execute_while_or_until so that body_status is
-         initialized to EXECUTION_SUCCESS, and then directly returned
-         without a check for commands_executed, so that the Posix.2
-         behavior of returning success when no body commands are
-         executed is preserved
-
-                                  7/27
-                                  ----
-jobs.c
-       - make sure that trap_list[SIGCHLD] is not set to IGNORE_SIG
-         before trying to run commands when a SIGCHLD is caught
-
-test.c
-       - define and use UID_T and GID_t, which are equivalent to uid_t
-         and gid_t on all systems but SunOS 4.1.?, because SunOS makes
-         `int' the return value of all the uid and gid functions (except
-         stat!)
-
-                                  7/28
-                                  ----
-shell.c
-       - call end_job_control in termination_unwind_protect
-
-variables.c
-       - if PWD is imported from the environment and it is wrong (i.e.,
-         not the same as the current directory), rebind it to the current
-         directory (as obtained by get_working_directory)
-
-                                  7/29
-                                  ----
-lib/readline/history.c
-       - do not history expand ! when immediately preceded by [, assuming
-         it's the globbing pattern negation character
-
-execute_cmd.c
-       - plug some memory leaks -- redirectee_word needs to be freed
-         before returning from do_redirection_internal
-       - changed the noclobber code to open the file with O_EXCL after
-         verifying that it's not there with stat to shorted possible
-         race conditions (this doesn't help over NFS)
-
-                                  7/30
-                                  ----
-lib/readline/history.c
-       - treat a negative arg to stifle_history as 0
-
-lib/readline/readline.c
-       - #undef PC before declaring it as a variable because some systems
-         (Solaris2) define it in system header files
-       - changed type of insert_some_chars, update_line, and delete_chars
-         to void
-       - added a check when doing filename completion in
-         filname_completion_function to see if the first characters of the
-         filename and directory entry match before calling strncmp
-         (inline expansion of STREQN)
-
-                                  7/31
-                                  ----
-lib/readline/vi_keymap.c
-       - Make arrow keys work for history in vi command mode by binding
-         `o' and `[' in vi_escape keymap to rl_arrow_keys
-
-                                   8/6
-                                   ---
-subst.c
-       - broke the code that quotes strings for the globbing functions
-         into a separate function: quote_string_for_globbing (), so
-         there are not two copies of it
-       
-execute_cmd.c
-       - rewrote execute_case_command so that quote_string_for_globbing
-         is called for the patterns in a pattern list and reordered some
-         other code for clarity
-       - execute_case_command now turns quoted null strings into empty
-         strings because quote_string_for_globbing does not do it
-
-                                   8/7
-                                   ---
-lib/readline/readline.c
-       - added generic code to init_terminal_io to fetch the termcap
-         codes for the arrow keys (ku, kd, kl, kr) and bind the right
-         functions to them
-
-lib/readline/vi_keymap.c, lib/readline/emacs_keymap.c
-       - removed bindings to `rl_arrow_keys' from all keymaps
-
-                                  8/13
-                                  ----
-subst.c
-       - command_substitute: only close fildes[1] if it's > 2
-
-                                  8/26
-                                  ----
-lib/readline/readline.c
-       - rewrote get_y_or_n to get rid of label and goto
-       - added code to the completion listing function that makes it
-         skip padding the line out with blanks after writing what will
-         be the last filename on the line
-
-machines.h
-       - added -DHAVE_SETDTABLESIZE to SYSDEP_CFLAGS for Sequents
-         running Dynix/ptx
-
-                                  8/28
-                                  ----
-machines.h
-       - added a machine description for the BBN Butterfly from
-         Kaveh Ghazi
-
-variables.c
-       - HPOSF1 machines cannot redefine getenv()
-
-support/getcppsyms.c
-       - recognize __hp_osf
-
-parse.y
-       - allow reserved word recognition after done, fi, and esac
-         Posix.2 section 3.4 seems to allow this
-
-lib/readline/readline.c
-       - include <sys/ioctl.h> on OSF/1 machines for TIOCGWINSZ
-
-subst.c
-       - in command_substitute, when checking to see that we're not
-         overflowing `istring', allow for the insertion of two characters
-         in the check to account for possible quoting
-
-                                   9/3
-                                   ---
-builtins/bashgetopt.c
-       - force reset_internal_getopt to set loptend to NULL
-       - force internal_getopt to set loptend to NULL when the list it
-         gets is NULL, and when it detects that it's been called with
-         a different word list
-
-                                   9/8
-                                   ---
-variables.c
-       - make adjust_shell_level clamp the value of $SHLVL at 1
-
-[Fixes from bfox 1.13]
-
-bashline.c
-       - remove `%' from list of readline special prefixes
-
-config.h
-       - BANG_HISTORY_EXPANSION -> BANG_HISTORY
-
-cpp-Makefile
-       - add HAVE_STRCHR
-       - changes to macros that build libraries
-       - reorganized library declarations and support
-
-execute_cmd.c
-       - indx -> p_index in extract_colon_unit
-
-general.c
-       - provide definitions of strchr, strrchr for systems that do not
-         have them
-
-machines.h
-       - define `Solaris' for Suns running Solaris 2.x
-       - turn all the definitions of M_OS into strings
-
-parse.y
-       - replace delimiter and old_delimiter with a stack of delimiters
-         encountered while parsing the current token
-
-subst.c
-       - removed all traces of EIGHT_BIT
-
-variables.c
-       - new function dispose_temporary_vars, for both dispose_used_env_vars
-         and dispose_function_env
-
-lib/readline/readline.c
-       - `eight-bit-input' -> `meta-flag'
-
-lib/tilde
-       - new directory for the tilde expansion library code
-
-[end of bfox changes]
-
-cpp-Makefile
-       - pass $(RM) down to makes in libraries
-
-                                  9/10
-                                  ----
-parse.y
-       - remove the bfox change that set CMD_FORCE_SUBSHELL for async
-         commands
-
-                                  9/14
-                                  ----
-builtins/bind.def
-       - surround the code with #ifdef READLINE
-
-builtins/fg_bg.def
-       - surround the body of the code with #ifdef JOB_CONTROL
-
-builtins/getopts.def
-       - surround the body of the code with #ifdef GETOPTS_BUILTIN
-
-builtins/alias.def
-       - surround the body of the code with #ifdef ALIAS
-
-                                  9/15
-                                  ----
-lib/readline/emacs_keymap.c
-       - bind rl_noninc_reverse_search to M-P and rl_noninc_forward_search
-         to M-N, respectively
-
-lib/readline/readline.c
-       - made name_key_alist struct static
-       - added new functions to manipulate keymaps:
-               rl_get_keymap_by_name()
-               rl_get_keymap()
-               rl_set_keymap()
-
-lib/readline/keymaps.h
-       - added declarations for the new keymap functions
-
-builtins/bind.def
-       - added -m map option to allow bind commands to specify the keymap
-         to be used when binding key sequences to readline commands
-
-                                  9/16
-                                  ----
-builtins/alias.def
-       - in single_quote, allocate a new string three times as big as the
-         old to handle the possible quoting characters
-
-bashline.c
-       - set last_fignore to null after freeing it in setup_ignore_patterns
-
-                                  9/17
-                                  ----
-parse.y
-       - added code to handle the functionality of `ignoreboth' as a
-         value for history_control (ignore both lines beginning with
-         spaces and duplicates of the last history entry)
-       - don't use history_control for the second and subsequent lines
-         of a multi-line command when command_oriented_history is in
-         effect
-
-                                  9/18
-                                  ----
-bashline.c
-       - fix attempt_shell_completion to call command_word_completion_function
-         even if the supplied text begins with `/'
-       - fix command_word_completion_function to make sure that absolute
-         program names passed are executable before returning them as
-         possible matches
-
-                                  9/20
-                                  ----
-parse.y
-       - If we read a blank line (shell_input_line[0] == 0) and we have
-         reached EOF (shell_input_line_terminator == EOF) then don't echo
-         the line, even if -v has been turned on
-
-                                  9/23
-                                  ----
-lib/malloc/malloc.c
-       - changed to use USG rather than SYSV
-       - changed BSD42 to BSD4_2 like emacs malloc.c
-       - removed conditional compilation code dealing with VMS
-       - include getpagesize.h only if BSD4_2 is not defined
-       - changed conditionally compiled code dealing with BSD, since
-         BSD is not defined by bash and malloc.c does not include
-         sys/param.h, which defines BSD on 4.x BSD systems
-
-lib/malloc/getpagesize.h
-       - new implementation, inspired by gdb 4.6
-               uses _SC_PAGESIZE, if present
-               defaults to 4096
-
-lib/readline/vi_keymap.c
-       - when in insert mode, Posix.2a says that \ is quoted-insert
-       - remove the binding to vi_escape_keymap; Posix.2a says that
-         ESC in movement mode does nothing (vi description)
-
-                                  9/24
-                                  ----
-shell.c
-       - shell should send SIGHUP to all it's jobs when it receives
-         SIGHUP only if it is an interactive login shell
-
-execute_cmd.c
-       - systems running the Andrew File System don't use the Unix file
-         mode bits to decide whether or not a file is executable (they're
-         unused, since AFS as ACLs), so executable_file needs to call
-         access (file, X_OK) if running on AFS
-
-                                  9/25
-                                  ----
-jobs.c
-       - make sure a non-interactive shell initializes original_pgrp to
-         NO_PID, so it does not attempt to give the terminal back to that
-         pgrp when it exits or calls the `exec' builtin
-
-                                  10/3
-                                  ----
-machines.h
-       - add -DHAVE_RESOURCE to the NeXT machine description as SYSDEP_CFLAGS
-       - add -DHAVE_GETDTABLSIZE and -DHAVE_SETDTABLESIZE to Dynix/ptx
-         description
-
-shell.c
-       - make a non-interactive script shell call dup2 on the fd it has
-         open to the script file to move the descriptor to one that hopefully
-         user programs will not attempt to use
-
-general.c
-       - make the definition of getdtablesize() depend on HAVE_GETDTABLESIZE
-         not being defined.  Auto-define that for non-USG systems (or HPUX).
-         This allows a SYSDEP_CFLAGS entry to override it
-
-builtins/ulimit.def
-       - new function canraise(cmd, curlim, newlim) to call on systems
-         without HAVE_RESOURCE to decide whether or not the limit can be
-         raised.  Maybe we should remove the test altogether and let the
-         system call fail instead
-
-                                  10/8
-                                  ----
-execute_cmd.c
-       - If a command is not found, make the exit status 127 like Posix.2
-         says
-
-                                  10/14
-                                  -----
-print_cmd.c
-       - changed cprintf(s) to cnprintf(args_length, s) and made cnprintf
-         malloc the buffer it uses for vsprintf to avoid overrun of the
-         5000-character temp buffer used previously.  args_length is the
-         expected total length of all the arguments
-
-                                  10/15
-                                  -----
-jobs.c
-       - set last_command_exit_value before calling a trap handler for
-         SIGINT: new function process_exit_status(), changes to use it
-
-                                  10/18
-                                  -----
-print_cmd.c
-       - removed `cnprintf' changes
-       - re-implemented cprintf as a miniature vsprintf interpreting %s,
-         %d, and %c and using a dynamically-allocated buffer
-
-support/mksysdefs
-       - look for /usr/include/varargs.h and define HAVE_VARARGS_H if
-         found
-
-cpp-Makefile
-       - pass HAVE_VARARGS_H down to the makes in the various libraries
-
-                                  10/26
-                                  -----
-lib/glob/glob.c
-       - free `result' before using temp_results to return the value
-         of glob_dir_to_array -- plugs a small memory leak
-
-                                  11/2
-                                  ----
-[Fixes from bfox version dated 10/18]
-
-bashline.c
-       - separated definitions of BRACE_COMPLETION and the extern declaration
-         of the brace completion functions
-
-config.h
-       - make PROCESS_SUBSTITUTION depend on the value of MKFIFO_MISSING
-
-cpp-Makefile
-       - add posixstat.h, tilde.[ch], xmalloc.c to the readline library
-         sources (also the corresponding object files)
-       - make the definition of HAVE_TILDE_SOURCE depend on the definition
-         of HAVE_READLINE_SOURCE
-
-lib/posixheaders
-       - new directory, for posix support functions and header files
-       - various cleanups to the library support rules
-
-execute_cmd.c
-       - make the practice of checking hashed filenames for executability
-         dependent on $POSIXLY_CORRECT
-
-general.c
-       - The `hppa' running hpux-8 does not have `getdtablesize'
-
-general.h
-       - make the extern declaration of strchr and strrchr go away if
-         __STDC__ is defined
-jobs.h
-       - test for and define all of the W* macros individually
-
-machines.h
-       - completely new alliant description from bfox
-       - add -DMKFIFO_MISSING to NeXT SYSDEP_CFLAGS
-       - add description for Siemens MX500 running `sinix'
-
-builtins/common.c
-       - move code that depends on BANG_HISTORY being defined inside #ifdef
-         HISTORY blocks, since you can't have BANG_HISTORY without HISTORY
-
-builtins/echo.def
-       - make -E work all the time, not just on sys5 systems
-
-builtins/enable.def
-       - add -all option (with synonym of -a)
-       - change `DISABLED' to 2 and make argument to list_some_builtins a
-         bitmask
-
-builtins/kill.def
-       - it is an error if `signum' == NSIG
-
-documentation/bash.1
-       - added -E flag to `echo'
-       - added description of -all to enable
-
-lib/readline/tilde.c, lib/readline/xmalloc.c
-       - links to these files for standalone readline lib
-
-lib/readline/{funmap.c,history.c,keymaps.c,readline.c}
-       - make xmalloc and xrealloc static again and dependent on the
-         definition of STATIC_MALLOC
-
-lib/readline/readline.c
-       - include <sys/file.h> only if NO_SYS_FILE is not defined
-       - add support for a `stat' char after filenames when listing completion
-         alternatives if VISIBLE_STATS is defined
-       - add support for _GO32_ definition (PC)
-       - add LibraryVersion internal variable
-       - initialize rl_instream and rl_outstream to NULL, because all of a
-         sudden stdin and stdout may no longer be constants
-       - make readline_default_bindings `static void'
-       - add support for quoting a portion of the input line to make it
-         immune from completion
-
-support/getcppsyms.c
-       - recognize `alliant'
-
-support/mksysdefs
-       - presence of /bin/fxc.info indicates that the machine is an alliant
-
-support/{FAQ,PORTING,mklinks,fixdist}
-       - new files
-
-[end of changes from bfox]
-
-machines.h
-       - added support for HP-UX 9.0 (hpux_9)
-
-                                  11/12
-                                  -----
-machines.h
-       - added -lsocket to the REQUIRED_LIBRARIES define for ICL RS6000
-       - removed the `#undef HAVE_WAIT_H' from the isc386 description
-
-lib/readline/rltty.c
-       - split off almost all tty-related code from readline.c to this file
-
-                                  11/13
-                                  -----
-lib/readline/rltty.c
-       - changed the way the bsd tty code works to use a `struct bsdtty'
-         that encapsulates all of the bsd tty state into a single structure
-         that can be passed around by reference
-       - changed the bsd tty setup and teardown code to be more like the
-         ce version of things
-lib/readline/rldefs.h
-       - added code to define HAVE_USG_SIGHOLD for svr3 machines.  The
-         prepping and deprepping code uses them to block SIGINT while
-         getting and setting the tty attributes
-
-                                  11/14
-                                  -----
-lib/readline/rltty.c
-       - encapsulated the system-specific code for setting up the terminal
-         into a function: `prepare_terminal_settings'.  This means that the
-         code for rl_prep_terminal and rl_deprep_terminal is basically
-         identical between tty driver versions
-       - changed the BSD version of rltty_set_default_bindings to use a
-         struct bsdtty and get_tty_settings
-       - rl_prep_terminal and rl_deprep terminal are now non tty-driver
-         specific -- there is only one version of each function.  The
-         tty-driver specific code is now in {set,get}_tty_settings and
-         prepare_terminal_settings
-
-                                  11/24
-                                  -----
-
-general.c
-       - make the function definitions for bcopy and bzero depend on a
-         HAVE_BCOPY define
-
-machines.h
-       - define HAVE_BCOPY for RS/6000s, RTs running AIX, and Linux
-       - new description for Linux
-
-shell.c, variables.c
-       - don't declare getpwuid for Linux systems
-
-support/getcppsyms.c
-       - recognize `linux' and `__linux__'
-
-builtins/psize.c
-       - don't redefine memset() for USG machines
-
-general.c
-       - add extern declaration of getdtablesize() to dup2() replacement
-       - don't compile in bcopy and bzero on Linux machines
-
-test.c
-       - don't declare getgid, getegid, or geteuid on Linux
-
-lib/readline/rldefs.h
-       - don't try to include <sys/stream.h> on Linux machines
-
-lib/readline/readline.c
-       - only call rl_parse_and_bind on non-empty lines when reading
-         ~/.inputrc
-       - allow backslash to quote characters in the key sequence to be
-         bound, which allows you to bind C-x \ for example
-       - allow delimiter characters in the body of a macro, quoted with
-         a backslash
-       - changed rl_function_dumper so that it outputs backslash-quoted
-         " and \ when called by bind -d
-
-lib/readline/funmap.c
-       - fixed a typo in the entry for `vi-replace'
-
-subst.c
-       - make sure the $(( xxx )) case sets this_command_name to NULL so
-         there are no confusing garbled error messages
-       - fix a memory leak in $[ xxx ] code (free temp)
-       - make $(( xxx )) case do the same variable expansion that the
-         $[ xxx ] case does
-
-                                  11/25
-                                  -----
-parse.y
-       - removed CMD_FORCE_SUBSHELL assignments
-
-command.h
-       - add a new flag for commands: CMD_NO_FORK
-
-shell.c
-       - added a function run_one_command for -c shells that just sets up
-         the top_level stuff for longjmp and calls parse_and_exec.  This
-         is controlled by the definition of ONESHOT
-
-execute_cmd.c
-       - execute_disk_command takes an extra argument: nofork.  If non-zero,
-         this tells it to not fork for a command without pipes in or out
-       - set NO_FORK for a simple command run in a subshell with
-         want_subshell ( `( xxx )' )
-
-builtins/common.c
-       - if the from_file argument to parse_and_execute is "-c", then
-         assume this is a one-shot -c command and set NO_FORK for simple
-         commands.  This is controlled by the definition of ONESHOT
-
-                                  12/1
-                                  ----
-support/getcppsyms.c
-       - add defines for bsdi and __386BSD__
-
-machines.h
-       - add a section for 386bsd
-
-                                  12/2
-                                  ----
-input.c
-       - added a new function check_bash_input (fd) which checks whether
-         or not file descriptor fd is the buffered fd which bash is using
-         to read a script, and, if so, swaps the buffered fd to a new
-         file descriptor and reinits bash_input
-       - input buffering now solves these problems:
-               parent-child synchronization
-               using the script fd in a user redirection
-               auto-restart of interrupted reads on all systems
-               speed
-
-execute_cmd.c
-       - call check_bash_input from do_redirection_internal before a call
-         to dup2 and a call to duplicate_buffered_fd
-
-                                  12/3
-                                  ----
-builtins/getopt.c
-       - only redefine `const' if it is not already #defined
-
-lib/readline/rltty.c
-       - make sure HANDLE_SIGNALS is defined here as it is in readline.c
-
-                                  12/7
-                                  ----
-lib/malloc/malloc.c
-       - change the conditional around get_lim_data to be HAVE_RESOURCE
-         (ulimit if not defined, getrlimit if it is)
-       - removed the 4.1BSD version of get_lim_data
-       - conditionalize the inclusion of sys/resource.h on the definition
-         of HAVE_RESOURCE
-
-                                  12/11
-                                  -----
-lib/readline/readline.c
-       - changed the name of strpbrk to rl_strpbrk to avoid any conflicts
-         with OS include files and libraries
-
-                                  12/15
-                                  -----
-
-bashline.c
-       - changed initialize_readline to type void
-
-execute_cmd.c
-       - execute_for_command called expand_words with an extra argument
-
-jobs.c
-       - changed stop_pipeline to use xrealloc instead of realloc
-
-lib/readline/readline.c
-       - changed rl_complete_internal to call xmalloc instead of malloc
-
-variables.c
-       - dispose_used_env_vars, non_unsettable declared void
-
-builtins/common.c
-       - include <sys/stat.h> because we cast things to struct stat *
-
-builtins/exit.def
-       - change exit_or_logout to be declared static
-
-builtins/psize.c
-       - removed call to memset and therefore the need to #ifdef it's
-         definition
-
-builtins/bind.def, builtins/ulimit.def
-       - add extern declaration for strerror()
-
-builtins/exec.def
-       - add extern declaration for strerror()
-       - add extern declaration for full_pathname() and remove casts to
-         char *
-       - add extern declaration for make_word_array() and remove casts to
-         char **
-
-builtins/fc.def, copy_cmd.c, shell.c, parse.y
-       - add extern declaration for reverse_list()
-
-builtins/read.def
-       - change free to vfree so systems don't complain about the extern
-         declaration (type clashes, etc.)
-
-lib/tilde/tilde.c
-       - include string.h or strings.h as appropriate to get the correct
-         declaration of strcpy before the savestring macro uses it
-
-parse.y
-       - add extern declaration for sub_append_string and remove casts to
-         char *
-       - add extern declaration for add_string_to_list and remove casts to
-         WORD_LIST *
-
-                                  12/16
-                                  -----
-lib/malloc/malloc.c
-       - move the check for RLIMIT_DATA after the inclusion of
-         <sys/resource.h> (duh!)
-
-bashline.c
-       - added extern declaration for get_working_directory
-
-jobs.c
-       - added extern declaration for polite_directory_format
-
-execute_cmd.c
-       - added extern declaration for copy_redirects
-
-subst.c
-       - added extern declaration for reverse_list
-
-machines.h
-       - new entry for KSR1 running KSROS (OSF/1)
-
-support/getcppsyms.c
-       - recognize `ksr1'
-
-general.h
-       - make sure that strcpy is declared before the definition of
-         savestring
-
-alias.c, bashline.c, bracecomp.c, braces.c, copy_cmd.c, execute_cmd.c,
-expr.c, general.c, hash.c, jobs.c, mailcheck.c, make_cmd.c, print_cmd.c,
-trap.c, variables.c, parse.y
-        - make sure that string.h or strings.h is included before general.h
-          (which is included by shell.h)
-        
-builtins/mkbuiltins.c
-        - add extern declaration of strcpy if __STDC__ and strcpy not defined
-        - include <string.h> or <strings.h> as needed
-
-builtins/cd.def, builtins/shift.def, builtins/source.def, builtins/test.def,
-builtins/command.def, builtins/declare.def, builtins/fc.def,
-builtins/getopts.def, builtins/hash.def
-       - include <string.h> or <strings.h> before definition of savestring
-
-lib/tilde/tilde.c, lib/readline/chardefs.h
-       - include <string.h> or <strings.h> before definition of savestring
-
-lib/readline/readline.c
-       - made glean_key_from_name cast NAME to unsigned char * before
-         dereferencing it to better handle 8-bit character sets
-
-                                  12/17
-                                  -----
-subst.c
-       - made command_substitute set up top_level with setjmp so that shells
-         running command substitution won't longjmp all the way back to
-         main() if they're interrupted and call throw_to_top_level
-
-                                  12/18
-                                  -----
-lib/readline/readline.c
-       - split the code that handles setting the screen size off into a new
-         function: set_screen_size
-       - changed init_terminal_io to call set_screen_size
-       - changed rl_handle_sigwinch to call set_screen_size instead of
-         totally reinitializing the world on each SIGWINCH
-       - added a new function cr() that simply puts the cursor at physical
-         column 0
-       - changed rl_handle_sigwinch to call cr() and
-         rl_forced_update_display() after resetting its idea of the screen
-         size
-
-                                  12/20
-                                  -----
-lib/readline/history.c
-       - changed the way history_expand treats `\' to make it a general
-         quoting character like the shell treats it so that allows single
-         quotes to be quoted
-
-                                  12/23
-                                  -----
-machines.h
-       - changed M_OS define in BSDI description to BSD386, since cpp
-         doesn't like BSD/386
-
-                                  12/28
-                                  -----
-execute_cmd.c
-       - changed execute_case_command so that expand_word_no_split is called
-         on the `word', as Posix.2 specifies
-
-                                   1/5
-                                   ---
-machines.h
-       - new machine description for Dec Alpha running Dec OSF/1
-
-support/getcppsyms.c
-       - recognize alpha, __alpha, osf, and __osf__
-
-                                   1/7
-                                   ---
-lib/readline/readline.c
-       - removed definition of HANDLE_SIGNALS
-       - changed rl_signal_handler so that systems with HAVE_POSIX_SIGNALS
-         defined will not set the SIGINT handler to SIG_IGN
-       - include <sys/ioctl.h> for _386BSD and BSD386 for TIOCGWINSZ
-
-lib/readline/rldefs.h
-       - added definition of HANDLE_SIGNALS
-
-lib/readline/rltty.c
-       - added GETATTR and SETATTR macros for termios/termio systems for
-         use by get_tty_settings and set_tty_settings
-
-                                   1/9
-                                   ---
-shell.c
-       - new variable: startup_state.  Set to 0 for scripts, 1 for
-         interactive shells, and 2 for -c command shells.  Superset of
-         the functionality provided by the `interactive_shell' variable
-
-builtins/common.c
-       - changed parse_and_execute to use startup_state to detect that
-         it's being called as a result of -c command, rather than the
-         ad-hoc method previously employed
-
-                                  1/11
-                                  ----
-support/getcppsyms.c
-       - recognize `m88k'
-
-machines.h
-       - new description for Motorola M88K Delta running SVR4
-
-support/mksysdefs
-       - moved the defaulting of `SYSDEF' to `cadmus' until just before
-         the definition is written out
-
-shell.c
-       - changed ambiguous assignment to `login_shell' by introducing a
-         dummy variable (~line 400: login_shell = -++login_shell)
-
-lib/malloc/malloc.c
-       - moved the code that decides whether or not to define USG or
-         BSD4_2 inside checks for USG and USGr4, since USGr4 passes
-         the tests for the various signals
-
-alias.c
-       - changed a call to index() to strchr()
-
-                                  1/12
-                                  ----
-lib/readline/readline.c
-       - moved inclusion of posixstat.h before inclusion of rldefs.h
-         (rldefs.h requires that stat.h be included before it)
-       - don't test whether or not a file is a symlink or a socket
-         in stat_char unless S_ISLNK and S_ISSOCK are defined,
-         respectively
-
-                                  1/13
-                                  ----
-machines.h
-       - added -I/usr/ucbinclude to SYSDEP_CFLAGS and a #define 
-         USE_GNU_TERMCAP for the ICL DRS6000 description
-
-support/bashbug.c
-       - added definition for gethostname() for systems that do not have
-         it (USG except for SGI and HP)
-
-                                  1/14
-                                  ----
-test.c
-       - made the #define of uid_t also dependent on HAVE_UID_T being
-         undefined.  That way, hosts which have trouble can add a
-         -DHAVE_UID_T to SYSDEP_CFLAGS in the machines.h entry
-       - made the extern declaration of getgid() be conditionalized out
-         on Sony non-Posix machines
-
-machines.h
-       - added -DHAVE_UID_T to SYSDEP_CFLAGS in the Sony/BSD entry
-
-                                  1/15
-                                  ----
-parse.y
-       - made type of `report_syntax_error' be static void
-       - made type of `handle_eof_input_unit' be static void
-       - added an error message when EOF is reached unexpectedly
-         (if EOF_Reached is 1 when report_syntax_error is called)
-       - added `extern void make_here_document ();'
-
-make_cmd.c
-       - made type of make_here_document be void
-
-execute_cmd.c
-       - added declarations of set_clexec to function prologues for
-         do_redirection and do_redirection_internal
-
-variables.c
-       - added `extern long atol()' to assign_seconds ()
-
-jobs.c
-       - changed type of `making_children ()' to void
-       - removed unused label `wait_exit' in wait_for()
-       - changed `sigset_t set' to `sigset_t suspend_set' inside the
-         BROKEN_SIGSUSPEND definition because `set' shadows the
-         definition used in BLOCK_CHILD and UNBLOCK_CHILD
-
-mailcheck.c
-       - changed type of add_mail_file to void
-
-alias.c
-       - changed type of delete_all_aliases to void
-       - changed block-local declaration of `tl' to `tlen', because
-         `tl' shadows a function-scope variable
-
-input.c
-       - made duplicate_buffered_stream return new fd (like dup2) when
-         it finishes
-       - made free_buffered_stream() a void-valued function
-
-bashline.c
-       - cleaned up the precedence of the expression that checks whether
-         or not the ignore patterns have changed in setup_ignore_patterns
-
-lib/readline/readline.c
-       - made rl_gather_tyi a void-valued function
-       - made rl_dispatch a void-valued function
-       - made rl_redisplay a void-valued function
-       - made free_history_entry a void-valued function
-       - removed unused label `some_matches' from rl_complete_internal
-
-lib/readline/vi_mode.c
-       - removed check of return value from rl_dispatch in rl_vi_redo,
-         since rl_dispatch never returned one anyway
-
-lib/readline/history.c
-       - removed unused label `search_won' in get_history_event
-       - removed unused label `read_which' in get_history_event
-       - removed unused label `bad_word_spec' in history_expand
-       - removed unused label `error_exit' in history_expand
-       - changed block-local declaration of `len' to `slen' in
-         history_expand because len shadows a function-local variable
-       - changed block-local declaration of `l' to `ll' in
-         history_expand because len shadows a function-local variable
-       - removed unused label `get_first' in get_history_word_specifier
-
-                                  1/18
-                                  ----
-parse.y
-       - fixed up the support for `unexpected EOF' errors by making
-         read_token set `EOF_Reached' to 1 before returning yacc_EOF
-         when it reads EOF while looking for the start of a token
-       - added better messages for unexpected eof to report_syntax_error
-       - added better messages for unexpected tokens to report_syntax_error
-       - made handle_eof_input_unit reset EOF_Reached to 0 if the
-         shell is interactive
-       - made report_syntax_error reset EOF_Reached to 0 if the
-         shell is interactive
-       - changed the non-interactive error messages to add `line' before
-         printing the line number rather than simply use filename:digit:
-
-                                  1/19
-                                  ----
-builtins/type.def
-       - changed code so that simple `type' (-all not specified) takes
-         the same path as a regular command search (find_user_command()
-         rather than user_command_matches())
-
-                                  1/20
-                                  ----
-shell.c
-       - new variable `passwd_shell' set from the pw_shell field in the
-         password file
-       - new variable `passwd_dir' set from the pw_dir field in the
-         password file
-
-variables.c
-       - used passwd_shell and passwd_dir to eliminate the calls to the
-         getpw* functions
-       - if $SHELL is unset at shell startup, it is set to the value of
-         passwd_shell
-
-                                  1/21
-                                  ----
-support/mksysdefs
-       - look for sys/ptem.h, define HAVE_SYS_PTEM_H if found
-       - look for sys/pte.h, define HAVE_SYS_PTE_H if found
-
-cpp-Makefile
-       - pass HAVE_SYS_PTEM_H and HAVE_SYS_PTE_H to the readline make
-
-lib/readline/rldefs.h
-       - include sys/ptem.h and sys/pte.h depending on the above two
-         definitions
-
-lib/readline/readline.c
-       - include <sys/ioctl.h> if on an AIX system to get TIOCGWINSZ and
-         struct winsize
-
-machines.h
-       - added #undef HAVE_ALLOCA to hpux_6 description.  alloca seems
-         to have problems when passing alloca'd memory to other functions
-         (esp. in the globbing code, passing directory_name)
-
-                                  1/22
-                                  ----
-machines.h
-       - make the cadmus definition active only of M_MACHINE is not defined
-         when the code gets there
-
-                                   2/1
-                                   ---
-builtins/set.def
-       - changed the reference to $9 in the help string
-       - added `-' to the help string listing the options
-
-documentation/bash.1
-       - changed the reference to $9 in the set builtin description
-       - added `-' to the set builtin synopsis listing the options
-
-                                   2/2
-                                   ---
-machines.h
-       - added REQUIRED_LIBARIES = -lPW -lc_s to SCO unix description
-         when not using gcc
-
-variables.c
-       - new variable builtin_env; builtin analogue of function_env
-       - new function dispose_builtin_env to free up all strings in
-         builtin_env
-       - find_tempenv_variable now looks in builtin_env after the
-         temporary environment
-
-execute_cmd.c
-       - execute_builtin_or_function and execute_subshell_builtin_or_function
-         now set up builtin_env for the `source' builtin so that things like
-         this work:
-               foo contains:
-                       echo XXX=$XXX
-                       echo XXX=$XXX
-               and you run
-                       XXX=aaa . foo
-               which should output
-                       XXX=aaa
-                       XXX=aaa
-         (bug report by mfg@castle.ed.ac.uk)
-
-                                   2/3
-                                   ---
-execute_cmd.c
-       - when a command is forced into a subshell with ( ), turn off its
-         INVERT_RETURN bit in the flags so the exit status of the subshell
-         is not inverted.  In execute_command_internal
-
-                                   2/5
-                                   ---
-[work to make readline configurably 8-bit clean]
-
-lib/readline/readline.c
-       - added variable convert_meta_chars_to_ascii, which controls
-         whether meta characters are converted into ESC-prefixed
-         key sequences.  Set to 1 by default
-       - added a readline variable `convert-meta', settable in a
-         .inputrc, that controls the value of convert_meta_chars_to_ascii
-
-lib/readline/keymaps.h
-       - changed the hard-coded keymap size of 128 to a #define
-         of KEYMAP_SIZE, which is initially 128
-
-lib/readline/keymaps.c
-       - changed all instances of 128 to KEYMAP_SIZE
-       - changed rl_make_keymap to initialize positions 128-256 to
-         rl_insert if KEYMAP_SIZE > 128
-
-lib/readline/chardefs.h
-       - properly define _CHARDEFS_ to protect against multiple inclusion
-
-documentation/bash.1
-       - documented new `convert-meta' readline variable
-
-                                   2/7
-                                   ---
-lib/readline/keymaps.h
-       - increased KEYMAP_SIZE to 256
-
-lib/readline/emacs_keymap.c
-       - added entries to make the keymaps 256 entries.  The entries in
-         emacs_standard_keymap are the ISO Latin-1 characters
-
-lib/readline/vi_keymap.c
-       - added entries to make the keymaps 256 entries.  The entries in
-         vi_insertion_keymap are the ISO Latin-1 characters
-
-                                   2/8
-                                   ---
-lib/readline/readline.c
-       - make sure that rl_display checks that there is room for 8 more
-         characters when deciding whether or not to realloc the line,
-         since we might have to insert a tab
-       - rl_display_search should not use MESSAGE as a printf format
-         string, since it might contain %
-       - reversed arguments in calls to rl_kill_text in
-         rl_unix_word_rubout so that killed text is prepended to the
-         undo data rather than appended
-
-                                   2/9
-                                   ---
-builtins/alias.def
-       - moved single_quote() to builtins/common.c and made it global
-
-builtins/trap.def
-       - made sure that the output of `trap' is suitable for re-input
-         to the shell as a trap definition by using proper single-quoting
-         of the command
-
-lib/readline/readline.c
-       - new readline variable `completion-query-items' to control the
-         value of rl_completion_query_items (initially and by default
-         100)
-       - new function rl_insert_completions which performs a call to
-         rl_complete_internal ('*')
-
-lib/readline/readline.h
-       - added extern declaration for rl_insert_completions ()
-
-lib/readline/funmap.c
-       - added bindable command name `insert-completions' that maps to a
-         call to rl_insert_completions ()
-
-documentation/bash.1
-       - added documentation for new `completion-query-items' readline
-         variable
-       - added documentation for new `insert-completions' readline
-         command
-
-                                  2/10
-                                  ----
-subst.c
-       - made ${xxx} behave correctly when the -u option was on and xxx
-         was not set
-       - made $xxx with -u enabled and xxx unset set $? to 1
-
-lib/malloc/malloc.c
-       - made free() a void function, like ANSI and Posix say to
-
-support/mksydefs
-       - look for /usr/include/stdlib.h and define HAVE_STDLIB_H if found
-
-cpp-Makefile
-       - pass HAVE_STDLIB_H to all makes
-
-ansi_stdlib.h
-       - new file containing the extern function declarations that ANSI
-         puts into <stdlib.h> that bash uses; really a link to
-         lib/posixheaders/ansi_stdlib.h
-
-lib/posixheaders/ansi_stdlib.h
-       - real copy of ansi_stdlib.h
-
-alias.c, bashline.c, variables.c, shell.c, error.c, hash.c, signames.c,
-expr.c, general.c, input.c, builtins/mkbuiltins.c, builtins/fc.def,
-lib/glob/glob.c, lib/tilde/tilde.c, lib/malloc/xmalloc.c
-       - include <stdlib.h> if HAVE_STDLIB_H is defined, include
-         ansi_stdlib.h if not
-
-general.h, alias.h
-       - removed extern declarations for malloc and realloc
-
-lib/readline/{readline,history,funmap,keymaps,vi_mode}.c
-       - include <stdlib.h> or ansi_stdlib.h
-       - remove extern char *getenv() declarations
-
-cpp-Makefile
-       - added dependencies on ansi_stdlib.h
-
-support/fixdist
-       - changes to make things work with ansi_stdlib.h (basically just
-         dupliating the lines for posixstat.h)
-
-alias.h, braces.c, expr.c, general.h, hash.h, vprint.c,
-builtins/fc.def, builtins/getopts.def, lib/glob/glob.c,
-lib/tilde/tilde.c
-       - define NULL as ((void *)0) if NULL undefined and compiling in an
-         ANSI C environment (__STDC__)
-
-                                  2/11
-                                  ----
-lib/readline/readline.c
-       - moved declaration of convert_meta_chars_to_ascii into the `forward'
-         declarations section, before its first use
-
-                                  2/13
-                                  ----
-expr.c
-       - if x is a char *, don't compare *x to NULL, use '\0' instead
-
-                                  2/15
-                                  ----
-lib/readline/readline.c
-       - add a call to rl_initialize_funmap at the beginning of
-         rl_named_function to make sure all of the function names will
-         be found
-
-                                  2/16
-                                  ----
-parse.y
-       - handle double-quoted ${...} words like the Posix.2 spec says --
-         count braces and skip command substitutions and quoted strings
-         to find the end of the pattern: new variables delimited_brace_level
-         and dollar_brace_level
-       - add new variable embedded_quoted_string so that the parser can
-         skip embedded quoted strings while parsing $() and ${}
-         constructs
-
-subst.c
-       - new function: extract_dollar_brace_string () which implements
-         the Posix.2 rules about ${...} extraction: counting braces while
-         skipping quoted strings and command substitutions.  Called from
-         extract_string_double_quoted and expand_word_internal
-       - changed the way pattern removal was done: the pattern is now
-         run through tilde expansion, parameter expansion, command
-         substitution, and arithmetic substitution, then quoted in a
-         way acceptable to fnmatch with quote_string_for_globbing
-       - add code so that expansions like ${HOME:`xxxx`} are errors, as
-         they should be, and put the full expansion string in the error
-         message
-
-                                  2/17
-                                  ----
-
-subst.c
-       - changed expand_word_internal to call parameter_brace_expand_rhs
-         with the `quoted' parameter set to 0 except when the separator
-         between PARAM and WORD is `+'.  This makes things like
-
-               echo "${undef-"foo bar"}"
-         echo `foo bar' without the quotes.  I'm still not sure this is
-         right, but it is compatible with other versions of sh
-
-                                  2/18
-                                  ----
-parse.y
-       - add code to reserved_word_acceptable so that bash will parse a
-         reserved word after a `}'
-
-getcwd.c
-       - make it compilable on machines without dirent.h and struct direct
-         or unistd.h (like the NeXT) using the proper conditional inclusion
-         with HAVE_DIRENT_H and HAVE_UNISTD_H
-
-general.c
-       - moved the getwd() replacement out from inside #ifdef USG and just
-         protected it with #ifdef HAVE_GETWD
-
-machines.h
-       - added #undef HAVE_GETWD and #undef HAVE_GETCWD to the NeXT
-         machine description
-
-subst.c
-       - added `forward' declarations for tilde_expand and
-         expand_string_unsplit and removed the function-local extern
-         declarations
-
-                                  2/19
-                                  ----
-getcwd.c
-       - changed to do conditional inclusion of limits.h, stdlib.h, string.h
-
-                                  2/22
-                                  ----
-builtins/cd.def
-       - if the chdir to the canonicalized form of the pathname in
-         change_to_directory fails, try what the user passed.  If that
-         succeeds, reinitialize the_current_working_directory to what
-         getwd() returns, and return success.  Fix for pathological
-         cases like
-
-               mkdir x
-               cd x
-               ( cd .. ; mv x y )
-               cd .
-
-                                  2/24
-                                  ----
-command.h
-       - added extern declarations for make_word_array, make_command,
-         make_bare_simple_command, and make_here_document
-       - added extern declarations for functions in copy_command.c:
-         copy_command, copy_word, copy_word_list, copy_redirect,
-         copy_redirects
-
-copy_cmd.c
-       - made all functions not used outside this file static
-
-execute_cmd.c
-       - removed extern declaration of make_word_array
-
-                                  2/25
-                                  ----
-shell.c
-       - made non-interactive shell look for $BASH_ENV startup file rather
-         than $ENV (conflict with Posix.2)
-
-command.h
-       - broke the `union redirectee' out of the struct redirect, made
-         the union it's own typedef (REDIRECTEE), then added
-         REDIRECTEE redirectee to the struct redirect
-       - made the `dest' member of a REDIRECTEE a long.  It matters on
-         some machines (sizeof(long) == sizeof(pointer) != sizeof(int)
-         and works on those machines with all those sizes being 32 bits
-         (this should really be a typedef rather than a long)
-
-execute_cmd.c, parse.y
-       - changed all calls to make_redirection to pass a WORD_DESC * or
-         a long as the third argument to make_redirection
-[this should conclude the changes needed for the alpha]
-
-                                   3/2
-                                   ---
-subst.c, variables.c
-       - moved some function-scope extern function declarations to file
-         scope
-
-subst.c
-       - changed paramter_brace_expand_pattern to call expand_string_internal
-         on the removal pattern, since we do not want word splitting
-
-jobs.c
-       - call get_tty_state or set_tty_state in wait_for() depending on
-         a job's exit status when interactive_shell is set, rather
-         than testing interactive.  This makes stty commands in scripts
-         executed with `.' `stick'
-
-nojobs.c
-       - make sure we only call {set,get}_tty_state when interactive_shell
-         is set
-
-                                   3/3
-                                   ---
-unwind_prot.c
-       - make sure there is actually something on unwind_protect_list
-         before calling without_interrupts to run something on it or
-         delete something from it
-
-jobs.c
-       - make sure job_slots is not empty in cleanup_dead_jobs and
-         delete_all_jobs before actually doing something
-
-                                   3/4
-                                   ---
-machines.h
-       - add #undef HAVE_GETWD to Xenix286 machine description
-
-lib/readline/history.c
-       - fixed an off-by-one error in the history expansion code: if
-         the length of the result string after adding the current piece
-         is (allocated_len - 1), the strcpy will write over the first
-         marker placed there by the malloc debugging code.
-       - changed the history realloc code to work in 256-character chunks
-         rather than 255-character ones
-
-                                   3/8
-                                   ---
-execute_cmd.c
-       - new variable exec_redirection_undo_list that holds redirections
-         that must be undone even when `exec' throws away
-         redirection_undo_list.  These are copies of open files for
-         constructs like 7<&1.  Set in add_undo_redirect and used in
-         execute_builtin_or_function.  Disposed of otherwise.
-
-                                   3/9
-                                   ---
-execute_cmd.c
-       - fixed a memory leak in execute_builtin_or_function by adding an
-         unwind_protect to dispose of saved_undo_list
-       - anywhere do_redirections is called with INTERNAL==1 (which means
-         we make redirection_undo_list), arrange to clean up 
-         exec_redirection_undo_list
-
-print_cmd.c
-       - massive namespace cleanups -- made almost all functions static
-       - new function `colon' to be called in place of `cprintf(";")'
-         to ensure that we don't print a `;' right after a `&' from 
-         compound command printing functions (if, while, until, for)
-
-[put code out for FTP on 3/10]
-
-                                  3/11
-                                  ----
-documentation/bash.1
-       - removed the description of >&word as a way to redirect both
-         standard output and standard error
-
-endian.c
-       - moved new-endian.c to this.  This handles 64-bit machines
-         directly
-
-lib/readline/readline.c
-       - rl_copy -> rl_copy_text to avoid clashes with Sun's libraries
-       - moved the completion code to a new file
-
-lib/readline/complete.c
-       - new file with the completion code from readline
-
-lib/readline/Makefile, cpp-Makefile
-       - added complete.c and complete.o to the necessary make variables
-
-subst.c
-       - added an entry to special_vars to make a change to $TERMINFO
-         cause readline to reset itself (sv_terminal())
-
-                                  3/12
-                                  ----
-builtins/exec.def
-       - free `command' if the exec fails
-
-machines.h
-       - change sgi machine description to define HAVE_GETWD
-
-lib/readline/history.c
-       - fixed a memory leak in read_history_range -- need to free
-         `buffer' before returning
-       - if read(2) returns <= 0 in history_truncate_file, then
-         immediately exit
-       - start checking at buffer[chars_read - 1] for newlines
-
-lib/readline/readline.c
-       - fixed a memory leak in rl_read_init_file -- `buffer' must
-         be freed before we return
-       - rearranged code in update_line so that we check for ols and
-         nls being in bounds before trying to compare their values
-
-parse.y
-       - fixed memory leak in read_token -- don't need to save `token'
-         into a fresh variable before calling push_string because
-         push_string does its own savestring in save_expansion
-
-subst.c
-       - fixed memory leak in expand_words_internal -- the word_list
-         allocated by the `@' case when expanding $@ needs to
-         be freed after turning it into a string with string_list
-       - fixed memory leak in expand_word_internal -- the string
-         returned by extract_dollar_brace_string needs to be freed
-       - fixed memory leak in expand_word_internal -- the string
-         returned by substring() in the `default:' case needs to be
-         freed
-
-variables.c
-       - fixed a free-memory reference in makunbound -- have to save the
-         value of `name' before calling dispose_variable, because it
-         might directly reference old_var->name.  If so, then
-         stupidly_hack_special_variables will refer to freed memory
-
-dispose_cmd.c
-       - fixed a memory leak in dispose_command: if a group_command is
-         being disposed, need to free command->value.Group after
-         calling dispose_command (command->value.Group->command);
-       - fixed a memory leak in dispose_command: if a case command is
-         being disposed, need to free command->value.Case after
-         freeing everything else
-
-mailcheck.c
-       - fixed memory leak in remember_mail_dates -- need to
-         free the value returned by get_mailpaths()
-       - fixed memory leak in remember_mail_dates -- need to
-         free the value returned by extract_colon_unit()
-
-                                  3/13
-                                  ----
-bashline.c
-       - fixed memory leak in bash_symbolic_link_hook -- 
-         get_working_directory always returns newly-allocated memory
-         that must be freed
-       - fixed memory leak in bash_symbolic_link_hook -- 
-         if `*dirname' is going to be replaced, the current contents
-         have to be freed (if non-null)
-       - make bash_symbolic_link_hook call get_working_directory with
-         a non-empty string for the value of `for_whom'
-
-execute_cmd.c
-       - make sure that execute_command cleans up after itself by
-         disposing the fd_bitmap it allocates
-
-shell.c
-       - fixed memory leak in reader_loop -- if throw_to_top_level is
-         called with DISCARD, the current command needs to be disposed
-
-lib/readline/complete.c
-       - when we return NULL to indicate the end of a set of completion
-         matches, free dirname, filename, and users_dirname -- there's
-         no reason to let them persist between calls, consuming memory
-
-                                  3/16
-                                  ----
-shell.c
-       - when moving the `script' fd to the highest available fd, check
-         for getdtablesize returning -1 and default to 20 in that case
-
-jobs.c
-       - if getdtablesize returns something < 0, default to 20 
-       - check that getdtablesize() leaves `nds' set to something valid
-         before trying to dup2 shell_tty to it
-
-machines.h
-       - changed M_OS in KSR/1 description to OSF1
-
-maxpath.h
-       - include sys/param.h if __ksr1__ defined
-
-parse.y
-       - changed declaration of the_time from long to time_t
-
-lib/readline/readline.c
-       - changed extern declarations for rl_basic_word_break_characters
-         and rl_completer_word_break_characters to file scope rather
-         than block scope
-       - changed declaration of chars_avail (param to FIONREAD ioctl) to
-         int, which it should have been all along
-
-                                  3/17
-                                  ----
-jobs.c
-       - clamp nfds in initialize_jobs at 256
-
-shell.c
-       - clamp the value returned by getdtablesize() to 256
-
-                                  3/19
-                                  ----
-execute_cmd.c
-       - make find_user_command_in_path return a pathname if it exists
-         and the caller wants FS_EXISTS files.  This affects the `.'
-         builtin and files as script arguments to the shell (shell.c)
-       - clamp the highest-numbered file descriptior at 256 in
-         close_all_files().
-
-jobs.c
-       - make get_tty_info print error message on tcgetattr failure only
-         if interactive != 0 (that is, we're really interactive now)
-
-lib/readline/rltty.c
-       - changed SETATTR macro to call tcsetattr with TCSANOW flag, since
-         this call is being used to affect an input file descriptor.
-         Ditto for the sys5 tty driver code and TCSETA (was TCSADRAIN and
-         TCSETAW, respectively)
-       - added a flag for ksr1 machines `ksrflow' which is the state of
-         suspended output for this process.  If 1, this process has called
-         tcflow (tty, TCOOFF) to suspend output and tcflow(tty, TCOON)
-         may be called safely
-       - temporarily (?) disabled the code that simulates at ^Q at the end
-         of set_tty_settings.  Let's see if it makes any difference
-
-                                  3/22
-                                  ----
-execute_cmd.c
-       - new global variable (yucch) `current_fds_to_close' that is set to
-         the fd_bitmap passed to execute_simple_command while expand_words
-         is being executed so that this information is available to the
-         process substitution code
-       - set current_fds_to_close to NULL at start of execute_command
-
-subst.c
-       - change call to close_all_files in process_substitute to call
-         close_fd_bitmap (current_fds_to_close)
-       - fixed memory leak in parameter_brace_expand_length() -- need to
-         free the memory used to expand the PS1 in something like ${#PS1}
-       - fixed memory leak in expand_word_internal ${3:+posix} did not
-         free the memory used to expand the $3
-
-documentation/bash.1
-       - && and || have equal precedence; fixed up man page to reflect
-         this
-
-                                  3/23
-                                  ----
-[fixes from bfox version of 1.13 dated 3/21/93 from eos.ucsb.edu]
-
-config.h
-       - #undef alloca before redefining it as __builtin_alloca
-
-cpp-Makefile
-       - compile newversion.c with $(CFLAGS) instead of $(DEBUG_FLAGS)
-
-general.h
-       - new #define: maybe_free(x)
-
-jobs.c
-       - alliant has same problem as NeXT wrt /usr/etc/rlogind and /dev/tty
-       - make delete_all_jobs be static void
-
-builtins/cd.def
-       - use maybe_free define
-
-builtins/common.c
-       - HAVE_VPRINTF --> HAVE_VFPRINTF
-
-builtins/test.def
-       - document -h as a synonym for -L
-
-lib/readline/history.c, lib/readline/rldefs.h
-       - #undef alloca before redefining it as __builtin_alloca
-
-lib/readline/history.c
-       - new functions history_get_state and history_set_state
-
-lib/readline/tilde.c
-       - put in #pragma alloca if on AIX machine
-
-support/getcppsyms.c
-       - recognize __GNUC__ and __STDC__ and pass them along as output
-
-                                  3/24
-                                  ----
-
-subst.c
-       - removed fully_quoted_word(), since it was unused
-
-execute_cmd.c
-       - added extern declarations for functions in dispose_cmd.c
-       - removed extern declaration of atol()
-
-parse.y
-       - added extern declaration for dispose_words()
-
-documentation/bash.1
-       - re-added the description of >&filename as a way to redirect
-         both stdout and stderr to filename
-
-machines.h
-       - slight changes to the alpha description
-
-shell.c
-       - moved all the extern function declarations to have file scope
-
-print_cmd.c
-       - colon --> semicolon
-
-parse.y
-       - in read_token, if we're parsing an embedded quoted string, don't
-         bother with special processing of `$' and characters following
-
-                                  3/25
-                                  ----
-print_cmd.c
-       - added a new function the_printed_command_resize to expand the
-         printed command buffer in cprintf()
-
-builtins/bind.def
-       - removed the unwind-protect code, because unwind_protect_pointer
-         is not guaranteed to work on a FILE *
-
-lib/readline/readline.c
-       - assign in_stream and out_stream immediately, because they may
-         be used before readline_internal is called
-
-                                  3/26
-                                  ----
-cpp-Makefile
-       - allow for use of different compress programs with the use of
-         $(COMPRESS) and $(COMPRESS_EXT)
-
-                                  3/29
-                                  ----
-
-general.c
-       - new function set_lines_and_columns to set $LINES and $COLUMNS in
-         response to a SIGWINCH
-
-lib/readline/readline.c
-       - call set_lines_and_columns() in set_screen_size() to set the
-         right environment variables on a SIGWINCH (code needed to be
-         rearranged a bit to make this happen)
-
-jobs.c
-       - add a SIGWINCH handler to set $LINES and $COLUMNS if readline is
-         not being compiled into the shell and TIOCGWINSZ and SIGWINCH
-         are defined
-
-subst.c
-       - made dequote_string extern so `read' can use it
-
-builtins/read.def
-       - added CTLESC characters to represent escapes instead of doing
-         backslash processing internally
-
-braces.c
-       - fixed the brace expansion code so that backslash can correctly
-         act as an escape character, and escape `"' in a double-quoted
-         string
-
-                                  3/31
-                                  ----
-make_cmd.c
-       - the `<>' redirection needs to open the file O_RDWR|O_CREAT
-         for Posix.2 compatibility
-
-                                   4/1
-                                   ---
-parse.y
-       - the function read_a_line was changed to take a flag telling it
-         whether or not to remove quoted newlines
-       - read_secondary_line was changed to call read_a_line with an arg
-         of 1, telling it to strip \<newline> pairs
-
-         These two changes fix two bugs with here documents:
-               1.  delimiter check occurs after \<newline> stripping
-               2.  leading tab deletion occurs after \<newline> stripping
-
-lib/readline/rldefs.h
-       - include <termcap.h> if on Linux
-
-lib/readline/readline.c
-       - don't declare PC, BC, and UP if on Linux (??)
-       - change the conditional parsing code that handles the `$if term='
-         construct to test the name given in the if command against both
-         the `long' and `short' forms of rl_terminal_name.  For instance,
-         if `rl_terminal_name' were `sun-cmd', it would be tested with
-         stricmp against both `sun' and `sun-cmd'
-
-machines.h
-       - add HAVE_VFPRINTF to the Linux description
-
-unwind_prot.h
-       - change the unwind_protect_int macro to cast the second argument to
-         unwind_protect_var to a (char *), which is what unwind_protect_var
-         expects
-
-unwind_prot.c
-       - change unwind_protect_var to allocate memory and do a bcopy if the
-         size of the variable passed to save is not sizeof(int).  That's
-         what restore_variable expects
-
-lib/readline/complete.c
-       - fixed rl_complete_internal so that it pays attention to the value
-         of rl_completer_quote_characters and quotes a match if the match
-         contains a word break character
-
-bashline.c
-       - set rl_completer_quote_characters to ' and "
-
-                                   4/5
-                                   ---
-lib/readline/complete.c
-       - changed rl_complete_internal so that an `attempted completion
-         function' may tell readline not to perform filename completion
-         if it fails by returning (char **) -1
-
-bashline.c
-       - attempt_shell_completion should return (char **) -1 if doing
-         command word completion and no matches are found.  This will
-         tell readline not to perform filename completion
-
-                                   4/6
-                                   ---
-builtins/common.c
-       - fixed the error message printer by get_working_directory:
-         `for_whom', shell_name, or `bash: ' is printed first; the
-         first non-empty one being printed.  Explanatory text is
-         added to the error message
-
-                                   4/7
-                                   ---
-machines.h
-       - in the Sun section, define Solaris of either `USGr4' or __svr4__
-         is defined
-       - Solaris 2 systems have sys_siglist, so don't #undef HAVE_SYS_SIGLIST
-
-jobs.c
-       - don't declare sys_siglist if on Solaris 2
-
-                                   4/8
-                                   ---
-lib/readline/rldefs.h
-       - do not define USE_XON_XOFF.  This causes output to be swallowed
-         when using bash over a relatively slow line (like a modem line).
-         This means that ^S and ^Q don't work on termio/termios systems;
-         use ^V to quote characters instead
-
-variables.c
-       - don't perform a get_working_directory on startup unless we did
-         not inherit $PWD or the inherited value of $PWD is wrong
-
-trap.c
-       - new functions: free_trap_strings and reset_original_signals.
-         Together they do the same thing as restore_original_signals()
-
-jobs.c, nojobs.c
-       - removed call to restore_original_signals from make_child.  Now
-         callers have to handle this themselves
-
-execute_cmd.c
-       - added a call to restore_original_signals after make_child in the
-         child process everywhere make_child is called
-
-subst.c
-       - added call to restore_original_signals after make_child in
-         process_substitute
-       - added call to reset_signal_handlers after make_child in
-         command_substitute for the child process
-
-         [THERE IS A PROBLEM WITH A TRAP on `0' -- it is inherited in the
-          child process started to run the command substitution]
-
-[These are fixes to make savetraps="$(trap)" work as Posix.2 specifies]
-
-                                  4/11
-                                  ----
-bashline.c
-       - supply a value for rl_completer_word_break_characters; `$' is
-         not a shell word break character
-
-                                  4/13
-                                  ----
-lib/readline/complete.c
-       - only look at adding quote characters to completion matches if
-         we're doing filename completion
-
-bashline.c
-       - don't supply a value for rl_completer_word_break_characters
-
-                                  4/14
-                                  ----
-documentation/bash.1
-       - clarify what the readline function shell-expand-line does
-
-jobs.c
-       - clean up dead jobs in wait_for even in non-interactive shells
-         rather than waiting for the next call to the parser
-
-                                  4/15
-                                  ----
-bashline.c
-       - reorganized the shell_expand_line code; broke it up into several
-         discrete functions
-       - added new functions: history_and_alias_expand_line,
-         history_expand_line
-       - added a new emacs-mode command, M-!, bound to history-expand-line
-
-                                  4/18
-                                  ----
-unwind_prot.c
-       - more fixes to the save-variable and restore-variable code,
-         mostly to make things work better on machines like the alpha
-         where sizeof(int) != sizeof(char *):
-
-               save and restore now use identical logic and nearly
-               identical code to decide whether or not to use malloc and
-               bcopy or assignment
-
-builtins/common.c
-       - new functions to manage the state of the dollar variables:
-
-               dollar_vars_changed - return 1 if the dollar variables have
-                                     been changed
-               set_dollar_vars_changed - set the state of dollar variable
-                                         modification to `changed'
-               set_dollar_vars_unchanged - set the state of dollar variable
-                                         modification to `unchanged'
-
-builtins/source.def
-       - new function: maybe_pop_dollar_vars.  This is called so that the
-         `.' command will restore the dollar variables only if the script
-         run with . has not changed them.  If the script changed $@, the
-         new values should stay in place
-       - changes to source_builtin to set the state of the dollar
-         variables to `unchanged' before executing the script, and calling
-         maybe_pop_dollar_vars() to decide whether or not to restore the
-         dollar variables and to do so if warranted
-
-machines.h
-       - new description for NEC EWS4800, from m-hirano@sra.co.jp via
-         hikichi@sra.co.jp
-
-                                  4/19
-                                  ----
-support/mksysdefs
-       - check for both /hp-ux and /bin/uname before deciding a machine
-         should be checked for an HP/UX revision level
-
-                                  4/22
-                                  ----
-input.h, general.h, lib/readline/readline.h, lib/tilde/tilde.h
-       - added typedefs for CPFunction (pointer to function returning
-         pointer to char) and CPPFunction (pointer to function returning
-         pointer to pointer to char)
-
-execute_cmd.c
-       - replaced all instances of (int)redirectee in do_redirection_internal
-         with a variable redir_fd, which is set to redirectee.dest
-
-print_cmd.c
-       - replaced all instances of (int)redirectee in print_redirection
-         with a variable redir_fd, which is set to redirectee.dest
-
-maxpath.h
-       - #include <sys/param.h> on OSF/1 systems
-
-subst.c
-       - added extern declaration for list_append
-       - changed sv_allow_null_glob_expansion to compare the return value
-         from find_variable to NULL to set the value of
-         allow_null_glob_expansion
-
-parse.y
-       - fix the assignment_acceptable macro so we cannot return
-         ASSIGNMENT_WORD while in the middle of a case statement pattern
-         list (in_case_pattern_list != 0)
-
-general.c
-       - Linux has gethostname() and does not need the emulation
-
-jobs.c
-       - Linux has a declaration for sys_siglist that conflicts with the
-         extern declaration; use the one from the standard include file
-       - the sigprocmask emulation did not handle NULL arguments in
-         oldset and newset; check them before using
-
-                                  4/23
-                                  ----
-lib/readline/complete.c
-       - use single_quote() to quote a completion replacement with
-         embedded occurrences of characters from rl_completer_quote_characters
-
-                                  4/26
-                                  ----
-print_cmd.c
-       - redid cprintf() for systems without varargs to be what bfox has
-         (using char * where bfox has void *)
-
-parse.y
-       - make read_secondary_line take an argument telling it whether or
-         not to have read_a_line remove quoted newlines
-
-make_cmd.c
-       - pass an argument to read_secondary_line saying whether or not to
-         remove quoted newlines, set to 1 if the delimiter of a here
-         document is unquoted
-
-                                  4/28
-                                  ----
-builtins/ulimit.def
-       - added -u option to set and get the max number of processes
-         available to a user; available on systems which define
-         RLIMIT_NPROC
-       - added better handling of getrlimit failures to ulimit_builtin
-
-cpp-Makefile
-       - made $(HOSTTYPE_DECL) appear on the cc command line before the
-         $(CPPFLAGS) when making variables.o
-
-                                  4/29
-                                  ----
-lib/readline/complete.c
-       - added an extern declaration for getpwent() for isc386 machines
-         where __STDC__ is not defined and _POSIX_SOURCE is
-
-                                  4/30
-                                  ----
-general.c
-       - new function legal_identifier, which returns 1 if a string
-         passed is a legal shell identifier and 0 otherwise.  Used
-         to decide what is and is not a legal variable name for the
-         expansion functions
-
-subst.c
-       - make expand_word_internal check that a ${ } expression
-         that starts with a digit is composed of all digits before
-         deciding that a variable starting with a digit is special
-         (setting var_is_special to 1)
-       - new function valid_brace_expansion_word (name, var_is_special)
-         returns 1 if name is a legal lhs of a brace expansion
-         expression
-       - make expand_word_internal check an identifier for validity
-         before passing it off to parameter_brace_expand_word by calling
-         valid_brace_expansion_word ()
-       - new function valid_length_expression (name) returns 1 if NAME is
-         something that can be passed to parameter_brace_expand_length();
-         called from expand_word_internal before calling
-         parameter_brace_expand_length()
-
-
-       These fix the following:
-               ${#<digit><alpha>} was treated as x=$<digit><alpha>, ${#x}
-               ${<digit><alpha>} was treated as ${<digit>}<alpha>
-               ${<illegal-id>} was not flagged as an error
-               ${#<illegal-id>} was not flagged as an error
-
-                                   5/2
-                                   ---
-input.c
-       - make check_bash_input change the value of default_buffered_fd
-         if it moves the input fd to a new fd as the result of a 
-         redirection
-
-execute_cmd.c
-       - don't make do_piping try the dup2 and close if pipe_out ==
-         REDIRECT_BOTH (-2) -- it's useless work
-       - add error checking to do_piping to see if the dup2 calls fail
-         and why
-
-error.c
-       - new function internal_error for shell internal error messages
-
-jobs.c
-       - changed some fprintf(stderr, ...) calls to internal_error()
-         calls
-
-                                   5/3
-                                   ---
-execute_cmd.c
-       - do not change the buffered stream associated with a file descriptor
-         when processing an r_inputa_direction redirection in
-         do_redirection_internal
-
-jobs.c, nojobs.c
-       - don't sync the buffered stream associated with default_buffered_input
-         in make_child if the shell is reading input from fd 0 and running an
-         asynchronous command
-
-                                   5/4
-                                   ---
-
-execute_cmd.c
-       - if the shell is not interactive, clean up the dead jobs each time
-         we call execute_command ()
-
-jobs.c
-       - new function, mark_dead_jobs_as_notified
-       - if the shell is not interactive, mark all dead jobs as notified in
-         notify_and_cleanup so that cleanup_dead_jobs frees up the slot in
-         the jobs array
-
-nojobs.c
-       - make cleanup_dead_jobs call reap_zombie_children on Posix systems,
-         so the shell doesn't keep growing in size as more jobs accumulate
-         before a call to wait_for()
-
-                                   5/6
-                                   ---
-jobs.c
-       - take the code that resets the signal handler out of flush_child;
-         it should be done in wait_for
-       - new function reap_dead_jobs to be run by non-interactive shells
-         that marks all dead jobs as notified and cleans up the job list
-       - removed the code from notify_and_cleanup that marks dead jobs as
-         notified if the shell is not interactive
-
-execute_cmd.c
-       - took the code that cleaned up dead jobs out of execute_command
-         There is a problem when this is run as the result of a trap on
-         SIGINT and the trap command is called directly from flush_child --
-         a job slot can disappear out from underneath flush_child and
-         wait_for and cause the shell to abort
-       - added a new define REAP that causes a non-interactive shell to
-         clean out the job table by calling reap_dead_jobs or
-         cleanup_dead_jobs
-       - added calls to reap to execute_for_command and
-         execute_until_or_while
-
-nojobs.c
-       - changed wait_sigint_handler to not do anything when it is called,
-         not even run a signal handler
-       - changed wait_for to call the old sigint handler if a foreground
-         process exits due to a SIGINT
-
-         [these make nojobs.c behave like jobs.c when waiting for a job in
-         a non-interactive shell]
-
-config.h.mini
-       - new `minimal' configuration file
-
-                                   5/7
-                                   ---
-subst.c
-       - make sure that command_substitute closes the pipe file descriptors
-         if there is a goto error_exit
-
-                                  5/10
-                                  ----
-nojobs.c
-       - add a SIGWINCH handler to set $LINES and $COLUMNS if readline is
-         not being compiled into the shell and TIOCGWINSZ and SIGWINCH
-         are defined
-
-[code put out for FTP on slc2.ins.cwru.edu]
-
-                                  5/11
-                                  ----
-
-braces.c
-       - commas within backquotes inside matching braces are now treated as
-         quoted (e.g., echo {`echo foo:bar | sed s/:/,/`})
-
-lib/readline/search.c
-       - added extern declarations for xmalloc, xrealloc
-
-                                  5/12
-                                  ----
-lib/malloc/malloc.c
-       - added a #define wrapper around the sbrk() declaration so that it's
-         not declared as char * if hpux_8 or VOID_STAR_SBRK are defined
-
-subst.c
-       - changed sense of #ifdef so that unless KSH_INCOMPATIBLE is defined
-         ${#@} and ${#*} are equivalent to $#
-
-                                  5/13
-                                  ----
-execute_cmd.c
-       - don't create the export env unless we are running a command with
-         shell_execve (in execute_disk_command)
-
-jobs.c, nojobs.c
-       - don't create the export env in make_child (why were we doing this
-         in the first place?)
-
-hash.c
-       - removed declaration of initialize_hashed_filenames, which is unused
-
-subst.c
-       - make list_rest_of_args, list_string, and the brace expansion code
-         in expand_words_internal use the REVERSE_LIST macro rather than a
-         call to reverse_list()
-
-make_cmd.c, copy_cmd.c
-       - change uses of reverse_list to REVERSE_LIST
-
-                                  5/17
-                                  ----
-execute_cmd.c
-       - make execute_disk_command look in the temp environment for an
-         assignment to PATH, and disable hash lookup for the command if
-         such an assignment is present
-
-                                  5/18
-                                  ----
-parse.y
-       - changed read_a_line so that a backslash can quote a \<newline>
-         pair and prevent its removal when remove_quoted_newline is 1
-
-                                  5/19
-                                  ----
-siglist.h
-       - new file, to encapsulate the declarations of sys_siglist and
-         provide a `strsignal' macro
-
-jobs.h, siglist.c, longest_sig.c
-       - include siglist.h
-
-jobs.c, nojobs.c
-       - removed declaration of sys_siglist
-
-                                  5/20
-                                  ----
-execute_cmd.c
-       - don't set up the loop_redirections unwind-protect unless there
-         are actually some redirections
-       - combined the AND_AND and OR_OR cases of execute_command_internal
-         to remove some duplicated code
-       - folded two tests together in the simple command case of
-         execute_command_internal to remove a layer of indentation and
-         braces
-       - don't set up the unwind_protect in execute_simple_command unless
-         the command actually expands to something
-       - broke the code that executes functions and builtins out into new
-         functions (execute_function and execute_builtin) and changed
-         execute_builtin_or_function and execute_subshell_builtin_or_function
-         to call them
-       - replaced the async_redirections unwind-protect in
-         execute_disk_command, since there's no reason to do it if we're
-         already in a subshell and simply going to exit if the redirections
-         fail
-       - set up the unwind-protect on saved_undo_list in 
-         execute_builtin_or_function only if there are redirections saved
-         in saved_undo_list
-       - only call do_redirections in execute_disk_command if there are
-         redirections to perform -- no need for the side effects since
-         we're in a subshell
-
-                                  5/21
-                                  ----
-parse.y
-       - make read_a_line, shell_getc, decode_prompt_string, prompt_again,
-         bash_add_history, reset_readline_prompt, read_token, discard_until,
-         shell_ungetc static functions
-       - eliminated the after_preprocess label in shell_getc
-       - broke the prompt command execution code out into a separate
-         function: execute_prompt_command
-
-subst.c
-       - combined some common code in extract_string_double_quoted for the
-         $( ) and ${ } cases
-       - changed the allocation scheme in string_list_internal to hopefully
-         reduce the number of allocations
-       - added a new define SET_INT_VAR and changed all of the sv_*
-         functions that set a variable depending on whether or not a
-         variable exists to use it
-
-variables.c
-       - declare argument to getenv as `const char *' on Linux
-
-machines.h
-       - Linux has the fixed include files if gcc is being used to compile
-         the shell
-
-                                  5/23
-                                  ----
-subst.c
-       - only call rl_reset_terminal in sv_term if no_line_editing is 0
-         (which means we're actually using readline)
-
-                                  5/25
-                                  ----
-execute_cmd.c
-       - changed execute_for_command to explicitly call the functions that
-         were to be called by the unwind-protect code (e.g., dispose_words),
-         and changed the run_unwind_frame call to a call to
-         dispose_unwind_frame.  This is to avoid using the kernel to block
-         interrupts as much as possible
-       - did the same for execute_case_command and execute_builtin
-
-jobs.c
-       - only run traps on SIGCHLD if job_control != 0
-
-                                   6/3
-                                   ---
-unwind_prot.c
-       - have without_interrupts call QUIT only if interrupt_immediately
-         is set to 1
-
-                                   6/7
-                                   ---
-machines.h, jobs.h, lib/readline/chardefs.h, maxpath.h
-       - changes for Solaris 2 with gcc from Greg Onufer
-
-lib/malloc/malloc.c
-       - define NO_SBRK_DECL if hpux_8 or Solaris
-       - declare sbrk as extern char * unless NO_SBRK_DECL is defined.
-         VOID_STAR_SBRK has been removed
-
-lib/readline/readline.c
-       - changed a call to alloca to a call to xmalloc to avoid problems
-         on the DEC alpha (can't pass memory allocated with alloca to
-         another function)
-       - moved key binding and startup file code to bind.c
-
-lib/readline/rldefs.h
-       - created common definitions for emacs_mode and vi_mode
-
-lib/readline/bind.c
-       - new file containing the key binding and startup file code.
-
-                                   6/8
-                                   ---
-lib/readline/readline.c
-       - changed rl_message to use varargs, if HAVE_VARARGS_H is defined
-
-lib/readline/rldefs.h
-       - include <varargs.h> if HAVE_VARARGS_H is defined
-
-lib/readline/{readline.c,bind.c,rltty.c,vi_mode.c,search.c}
-       - cleaned up the namespace by prefixing all pseudo-global readline
-         variables (variables private to the library but used in multiple
-         files) with _rl_
-
-                                  6/10
-                                  ----
-[changes from bfox]
-
-bashansi.h
-       - new file, including both string.h and ansi_stdlib.h
-
-dispose_cmd.h, make_cmd.h, subst.h
-       - new files containing extern function declarations
-
-endian.c
-       - for machines with sizeof(long)==8, shift by 31, then 1 to fake
-         out gcc 2.4, which complains when you shift by 32
-
-general.h
-       - added an include of string.h or strings.h
-       - changed the declarations of the savestring() and member() macros
-
-shell.c
-       - changed the structure of the long_args struct to be more portable
-
-subst.c
-       - made dequote_string and dequote_list static
-
-[end of changes from bfox]
-
-general.h
-       - added extern declarations for all of the non-int functions
-         defined in general.c
-
-<most files>
-       - removed extern declarations that appear in one of the bash header
-         files
-
-                                  6/15
-                                  ----
-lib/readline/readline.c
-       - incorporated a patch to rl_transpose_chars from Tom Tromey
-         which allows C-t to be undone
-       - fixed rl_rubout so the fast screen fixup when deleting the
-         last character on the line handles characters that are more
-         than one screen position wide by erasing the right number of
-         physical characters
-
-                                  6/16
-                                  ----
-siglist.h
-       - don't declare sys_siglist on 4.4 BSD
-
-builtins/mkbuiltins.c, lib/readline/history.c
-       - include <unistd.h> if HAVE_UNISTD_H is defined
-
-                                  6/19
-                                  ----
-machines.h
-       - new description for the Intel Paragon running OSF/1
-
-support/getcppsyms.c
-       - new variables for the paragon (__i860__, __PARAGON__, etc.)
-
-documentation/bash.1
-       - make it clear the the -noprofile switch disables the sourcing
-         of ~/.bash_login and ~/.profile as well as /etc/profile and
-         ~/.bash_profile
-
-                                  6/23
-                                  ----
-shell.c
-       - instead of calling maybe_execute_file on "/etc/profile",
-         use a #define for SYS_PROFILE, which is initially defined
-         to be "/etc/profile" by default
-
-lib/readline/isearch.c
-       - new file, with the isearch code
-
-lib/readline/display.c
-       - new file, with the incremental redisplay code
-
-lib/readline/readline.c
-       - removed the isearch, display code
-
-                                  6/24
-                                  ----
-lib/readline/readline.c
-       - removed the signal-handling code
-
-lib/readline/signals.c
-       - new file with the signal-handling  code
-
-                                   7/1
-                                  ----
-test.c
-       - changed the `advance' macro to get around some picky compilers
-
-machines.h
-       - machine description for hp9000 running 4.4 BSD
-
-support/getcppsyms.c
-       - recognize __BSD_4_4__ for 4.4 BSD machines
-
-builtins/souirce.def
-       - cast the st_size stat struct member to int because it's
-         64 bits on 4.4 BSD
-
-lib/readline/signals.c
-       - include <sys/ioctl.h> if compiling on a 4.4 BSD machine
-
-                                   7/2
-                                   ---
-builtins/read.def
-       - if $IFS is unset it defaults to "" when splitting the line
-         read into words (so no splitting is performed)
-
-                                   7/5
-                                   ---
-shell.c
-       - remove SIGKILL from terminating_signals[] -- it can't be caught
-         or ignored
-       - make terminating_signals[] static
-       - make terminating_signals[] an array of structs that hold the signal
-         number and the original handler
-       - change initialize_terminating_signals to use the new struct termsig
-         and to set the original handlers for all the terminating_signals
-       - new function reset_terminating_signals to restore original handlers
-         for all terminating signals in terminating_signals[]
-
-trap.c
-       - new function signal_is_special, returns 1 if a signal is one of
-         the signals the shell treats specially
-       - call reset_terminating_signals from restore_original_signals
-
-getcwd.c
-       - changed call to `stat' to call `lstat' to keep symlinks that
-         point to non-existant files from causing getcwd to fail
-       - if S_ISLNK is not defined after inclusing `posixstat.h', use
-         a cpp #define lstat stat
-
-machines.h
-       - new entry for Symmetric 375 running 4.2 BSD
-
-support/getcppsyms.c
-       - recognize and pass along `scs' for the Symmetric 375
-
-lib/readline/bind.c
-       - new function: rl_set_keymap_from_edit_mode, which sets the
-         keymap appropriately depending on the editing mode as if we
-         were about to edit a command line
-
-                                   7/6
-                                   ---
-lib/termcap
-       - new code from the GNU termcap library distribution 1.02
-
-endian.c
-       - include bashansi.h
-
-shell.c
-       - fall back to sourcing $ENV if $BASH_ENV is not found
-
-variables.c
-       - make add_or_supercede search `array' only if it is non-null
-
-                                   7/7
-                                   ---
-subst.c
-       - made do_assignment_internal an int function that returns 1 if
-         the assignment was made correctly and 0 if it was not
-       - do_assignment and do_assignment_no_expand now return the value
-         from do_assignment_internal
-
-variables.c
-       - made assign_in_env return 1 if everything appeared to go
-         successfully (which it always does)
-
-cpp-Makefile
-       - add variables.c as an explicit dependency for variables.o; there
-         appears to be a bug in Gnu make
-
-braces.c
-       - removed static version of copy_array since there's already one
-         in general.c, declared extern in general.h
-
-lib/malloclib
-       - updated to sources from Gnu libc 1.06
-
-                                   7/9
-                                   ---
-shell.h
-       - new struct: user_info, containing uid, gid and passwd file info
-         about the current user
-
-shell.c
-       - new variable current_user of type struct user_info
-       - eliminated passwd_shell, passwd_dir, and current_user_name
-
-subst.c
-       - rewrote sv_uids to use the info in current_user.uid and .euid
-         and to use itos rather than sprintf
-
-variables.c, mailcheck.c, test.c, execute_cmd.c, parse.y
-       - changed to use current_user.user_name rather than current_user_name
-         and to use current_user.shell and current_user.home_dir instead of
-         passwd_shell and passwd_dir, respectively
-
-flags.c, flags.h
-       - new flag, `-p' for `privileged', a la ksh.  This is set automatically
-         if uid != euid || gid != egid
-       - if +p, set the real and effective uids and gids to the real uid and
-         gid
-
-flags.c
-       - include shell.h for the current_user struct and don't explicitly
-         include header files included by shell.h
-
-builtins/set.def
-       - code to handle -p and -o privileged
-
-documentation/bash.1
-       - added documentation for set -p/set -o privileged
-       - added documentation for bind -m keymap
-       - added documentation to readline section for non-inc search bindings
-
-builtins/bind.def
-       - documented the -m keymap option
-
-                                  7/10
-                                  ----
-machines.h
-       - new description for NeXTstep running on intel 486
-
-lib/tilde/tilde.c
-       - fixed up definition of savestring macro
-
-bashline.c
-       - changed attempt_shell_completion so that when completing command
-         words and no matches are found, it tells readline to perform
-         filename completion but sets the completion ignore function
-         to one that will ignore all filenames matched, leaving only
-         directories in the list of matches
-       - generalized the ignore processing, breaking the body of the
-         existing ignore function into a generic function that takes as an
-         argument a pointer to a function used to test each filename in the
-         match list for `acceptability'
-       - added a new ignore function to support the `ignore filenames'
-         behavior described above
-
-                                  7/12
-                                  ----
-
-machines.h
-       - add #undef HAVE_GETCWD to Motorola M88100 description
-[put code out for FTP on slc2.ins.cwru.edu]
-
-                                  7/13
-                                  ----
-builtins/type.def
-       - broke the code that does the work of the type builtin out into a
-         separate function and added a couple of other display options,
-         for eventual use by command -v and -V
-
-builtins/bashgetopt.c
-       - added a new function `report_bad_option'
-
-builtins/jobs.def, bultins/histctl.def
-       - changed to use report_bad_option
-
-builtins/command.def
-       - added the Posix.2 -v and -V options
-
-                                  7/14
-                                  ----
-execute_cmd.c
-       - make sure that execute_command_internal sets redirection_undo_list
-         and exec_redirection_undo_list to NULL after making local copies
-         so things don't get undone twice.  This can happen as the result
-         of an `fc' redoing a command with redirections:
-                       wc subst.c > xxx &
-                       r
-         [bug report from Ian Watson]
-
-builtins/setattr.def
-       - converted to use internal_getopt, so export and readonly both use
-         it
-
-builtins/bashgetopt.c
-       - changed the default error messages a little bit
-
-shell.h
-       - new exit values:  EX_NOEXEC, for when a command name is not
-         executable (126), and EX_NOTFOUND, for when a command is not
-         found (127)
-
-execute_cmd.c
-       - change to use EX_NOEXEC and EX_NOTFOUND
-
-parse.y
-       - broke function definitions off into their own production,
-         function_def
-
-                                  7/15
-                                  ----
-builtins/kill.def
-       - added code so that signals are listed by kill -l in the manner
-         specified by Posix.2 if the POSIXLY_CORRECT variable exists in
-         the environment
-       - Posix.2 UPE says kill can take % job control arguments even if
-         job control is disabled, so let interactive shells use them
-
-parse.y
-       - decode_prompt_string now performs the Posix.2 ! expansion for
-         $PS1 and $PS2, if POSIXLY_CORRECT is turned on
-
-builtins/exec.def
-       - changed exit status to be in line with Posix.2 specification
-         (127 for not found, 126 for not executable)
-
-builtins/wait.def
-       - unknown jobs should cause wait to return 127
-
-shell.c
-       - change the behavior of sh -c so that if POSIXLY_CORRECT is in the
-         environment, the first argument after -c command is assigned to
-         $0, and the rest of the arguments, if any, are bound to $1 ... $n
-         Posix.2 4.56.3 specifies this behavior
-       - move the code that does -c command out of the !local_skip_execution
-         block.  I can't see why it was there in the first place
-       - made some of the private variables static to clean up the name
-         space
-       - moved the code that runs the startup files into a separate
-         function: run_startup_files.  This is called with an argument
-         telling it whether or not to use the Posix.2 startup file sequence
-         ($ENV).  This argument is 1 if POSIXLY_CORRECT is found in the
-         environment at startup
-
-builtins/fg_bg.def
-       - bg needs to set last_asynchronous_pid when restarting a job in
-         the background, as per Posix.2, 5.4.2
-
-jobs.c
-       - make sure the status of exited jobs is printed as Done(n) where
-         `n' is the exit status, if POSIXLY_CORRECT is specified
-
-                                  7/16
-                                  ----
-general.c
-       - fixed a problem with canonicalize_pathname which made it get
-         confused with xxx/./yyy if yyy was `.' or `..'
-
-parse.y
-       - broke the code in read_token that checked for reserved words
-         into a macro: CHECK_FOR_RESERVED_WORD
-       - if posixly_correct is 1, read_token does not allow reserved words
-         to be aliased (checks for reserved words before doing alias
-         expansion).  See Posix.2 3.3.1
-       - changed the function_def production to make redirections
-         specified with a function definition bind to the function
-         rather than to the definition.  This introduced 66 (!)
-         bison shift/reduce conflicts.  From Posix.2 3.9.5
-       - if `posixly_correct' is set, <>word will open word for read/write
-         on fd 0, rather than fd 0 and fd 1 as normal
-
-builtins/source.def
-       - removed the ALLOW_RIGID_POSIX_COMPLIANCE define; the check for
-         POSIXLY_CORRECT will always be performed
-
-shell.c
-       - new long option: -posix, sets posixly_correct to 1
-       - posixly_correct set to 1 in main if POSIXLY_CORRECT found in
-         shell environment
-
-subst.c
-       - new function sv_strict_posix, sets value of posixly_correct
-         depending on $POSIXLY_CORRECT
-       - if posixly_correct is set, don't do tilde expansion on 
-         =~ in words that are not shell assignment statements
-
-execute_cmd.c, jobs.c
-       - removed calls to getenv("POSIXLY_CORRECT") with checks of
-         posixly_correct
-       - if posixly_correct is set, don't translate >&x into >x 2>&1
-
-expr.c
-       - implemented the OP= Posix.2 arithmetic assignment operators
-         (see Posix.2 table 2.15, section 2.9.2.1, and section 3.6.4)
-
-documentation/bash.1
-       - added documentation of new arithmetic evaluation assignment
-         operators
-       - documented the new -posix long option
-
-                                  7/17
-                                  ----
-builtins/setattr.def
-       - made set_or_show_attributes correctly quote the values of shell
-         variables it prints so the output of `export' or `readonly' can
-         be used as input to the shell
-
-builtins/fc.def
-       - made fc write its output as Posix.2 5.12.6.1 specifies: when not
-         numbering, the command should still be output with a leading tab
-
-variables.c
-       - if `posixly_correct' is true, bash uses ~/.sh_history as the
-         default value of $HISTFILE
-
-shell.c, subst.c
-       - if posixly_correct is true, turn on interactive comments, since
-         that's what Posix.2 says to do
-
-                                  7/20
-                                  ----
-lib/malloclib/{malloc.c,free.c,malloc.h}
-       - bug fix from Mike Haertel
-
-builtins/mkbuiltins.c
-       - added code so that the Posix.2 `special' builtins have
-         SPECIAL_BUILTIN added to the flags in their entry in the
-         builtins array defined in builtins.c
-
-shell.c
-       - declare `restricted' as `extern int', since it's already
-         declared in flags.c
-
-lib/readline/bind.c
-       - only try to set the keymap to vi_insertion_keymap in
-         rl_set_keymap_from_edit_mode if VI_MODE is #defined
-
-lib/malloc/malloc.c
-       - define NO_SBRK_DECL for hpux_9
-
-machines.h
-       - hpux_9 needs to link with libPW.a to pick up alloca(), which
-         has reportedly been fixed
-
-lib/tilde/Makefile
-       - add a definition for RM to the makefile
-
-                                  7/21
-                                  ----
-documentation/Makefile
-       - added info, dvi targets
-       - changed `squeaky-clean' to `distclean'
-       - use $(MAKEINFO) in recipes rather than `makeinfo'
-
-bashline.c
-       - fixed memory leak in cleanup_expansion_error
-       - fixed up some extern declarations of pre_process_line
-
-cpp-Makefile
-       - define HAVE_FIXED_INCLUDES by default if we're using gcc
-
-                                  7/27
-                                  ----
-machines.h
-       - add -ldgc to the DG/UX description if we're not building an
-         `M88KBCS_TARGET'
-
-                                  7/28
-                                  ----
-shell.c
-       - always initialize top_level_mask from what the shell inherits,
-         even for login shells
-
-lib/tilde/tilde.c
-       - declare the getpw functions only for USG systems
-
-                                  7/30
-                                  ----
-lib/readline/readline.c
-       - new function: _rl_kill_kbd_macro () to cancel any keyboard
-         macros being defined on a SIGINT
-
-lib/readline/signals.c
-       - call _rl_kill_kbd_macro on a SIGINT
-
-bashline.c
-       - don't bind anything with a META via rl_add_defun; change those to
-         add the definition unbound, then explicitly bind it into
-         emacs_meta_keymap
-
-                                   8/3
-                                   ---
-bashline.c
-       - save and restore the value of rl_startup_hook when using it in
-         special editing functions
-
-                                   8/4
-                                   ---
-general.c
-       - new global variable: global_error_list, returned instead of -1
-         from functions returning lists
-       - changed delete_element to return &global_error_list instead of
-         (char **)-1
-
-braces.c, general.c, expr.c
-       - removed the conditional definition of NULL; it should be defined
-         in general.h
-
-lib/glob/glob.c
-       - new global variable: glob_error_return, returned instead of
-         (char **)-1 to signal a glob error
-       - changed functions to return &glob_error_return instead of
-         (char **)-1
-
-subst.c
-       - fix the GLOB_FAILED macro to test against &glob_error_return
-         rather than (char **)-1
-
-builtins/ulimit.def
-       - cleaned up the casts like (long) -1; changed to -1L, which is
-         equivalent and more correct
-
-lib/readline/complete.c
-       - use the address of a new local variable `dead_slot' to mark
-         dead slots in the list of completion matches rather than
-         (char *)-1, which doesn't work everywhere
-
-lib/readline/history.c
-       - have get_history_word_specifier return the address of a static
-         variable `error_pointer' in case of error, rather than (char *)-1
-
-lib/readline/signals.c
-       - if SHELL is defined, don't mess with SIGTSTP, SIGTTIN, or SIGTTOU
-
-lib/readline/vi_mode.c
-       - make rl_vi_change_case skip over characters that are neither
-         upper nor lower case
-
-                                   8/5
-                                   ---
-lib/readline/funmap.c
-       - made qsort_string_compare compare the first characters of the
-         two strings before calling strcmp()
-
-builtins/bind.def
-       - rewrote to use internal_getopt
-       - map specifications made with -m now affect all other options
-         and binding specifications
-       - no processing is done until all the options have been processed
-       - the -q option is now limited to a single argument, as the
-         documentation has always stated
-
-lib/readline/vi_mode.c
-       - fixed the `r' command so that the replacement is saved, and it
-         is redoable
-
-command.h
-       - add `line' members to the simple_command and command structs to
-         keep track of the line number the command appears on for $LINENO
-
-make_cmd.c
-       - save line number when making a `bare' simple command to the value
-         of line_number
-       - save the first line of a function definition in make_function_def
-
-copy_cmd.c
-       - make sure that the line number information is copied with a command
-
-execute_cmd.c
-       - use the line number attached to the start of a function definition
-         and the line number of commands to update line_number while a
-         function is executing
-
-                                   8/6
-                                   ---
-config.h, config.h.mini, cpp-Makefile
-       - made ONESHOT a configuration option rather than a cpp define in
-         cpp-Makefile
-
-builtins/fc.def, builtins/getopts.def
-       - removed the code that defines NULL if undefined -- these files
-         include general.h, which already does that
-
-lib/posixheaders/stdc.h
-       - new file containing macros so that functions can be defined with
-         prototypes using the __P macro and compile on both ANSI C and
-         `traditional' C compilers
-
-lib/malloc/malloc.c
-       - changed the ASSERT macro to use a new __STRING define when calling
-         botch(), so that ANSI C systems see the correct error string
-         rather than `p' (unfortunately, the MAGICx constants are expanded
-         in the string passed to botch())
-
-                                   8/7
-                                   ---
-bashline.c, execute_cmd.c, variables.c, parse.y, make_cmd.c, jobs.c
-       - removed extern declarations of functions already declared as extern
-         in bash header files
-
-execute_cmd.c
-       - include lib/tilde/tilde.h
-       - include builtins/common.h
-       - include builtins/builtext.h for the extern declarations for the
-         shell builtins
-       - moved vfree() to general.c
-
-builtins/common.c
-       - made dotted_filename static
-       - made builtin_address_internal static
-
-builtins/common.h
-       - new file with extern declarations for all functions defined in
-         common.c
-
-variables.h
-       - added extern declaration of qsort_string_compare, assign_in_env
-
-mailcheck.c
-       - removed full_pathname (), since it is a function of general use
-
-general.c
-       - moved full_pathname () here from mailcheck.c
-       - moved vfree() here from execute_cmd.c
-
-general.h
-       - added extern declaration for full_pathname
-
-subst.h
-       - added extern declaration for dequote_string
-
-jobs.h
-       - added external declarations for wait_for_background_pids and
-         wait_for_single_pid
-
-parse.y
-       - new function: find_reserved_word
-
-builtins/{alias,builtin,cd,exec,exit,hash,read,setattr,shift,trap,wait}.def
-       - removed extern declarations, replaced with inclusion of common.h
-
-builtins/type.def
-       - include common.h, remove extraneous extern declarations
-       - call find_reserved_word instead of searching word_token_alist
-
-builtins/bashgetopt.h
-       - new file, extern declarations for stuff defined in bashgetopt.c
-
-builtins/{bind,command,fc,histctl,jobs,setattr}.def
-       - include bashgetopt, removed internal getopt extern declarations
-
-cpp-Makefile, builtins/Makefile
-       - add dependencies on bashgetopt.h to builtins
-       - add dependencies on common.h to builtins
-
-nojobs.c
-       - wait_for_background_pids should be void
-
-                                   8/9
-                                   ---
-builtins/common.c
-       - new function, double_quote(), to double-quote strings
-
-documentation/bash.1
-       - added text specifying return value of `command -[vV]'
-       - added description of the -E option to echo
-       - added text specifying that `enable' accepts -a in place of -all
-
-                                  8/10
-                                  ----
-shell.c
-       - since non-Posix systems with job control use top_level_mask,
-         it needs to be initialized correctly by
-         initialize_terminating_signals
-
-mailcheck.c
-       - fixed mailpath-parsing code to correctly handle backslash-quoted
-         `?' and `%' in the $MAILPATH entries by adding a function
-         parse_mailpath_spec to return a pointer to the first unquoted
-         `?' or `%' and having remember_mail_dates and check_mail call it
-
-documentation/bash_builtins.1
-       - new man page for bash builtins, from jaws@pangaea.dme.nt.gov.au
-         (implemented by using number registers as flags and sourcing
-         bash.1)
-
-                                  8/16
-                                  ----
-bashline.c
-       - have maybe_make_readline_line use rl_delete_text rather than
-         rl_kill_text because the text need not be saved on the kill
-         ring
-
-                                  8/17
-                                  ----
-jobs.h
-       - don't include extern declarations for fork(), getpid(), or
-         getpgrp() if __SVR4_2__ is defined (Unixware, SVR4.2).
-         __SVR4_2__ used as in siglist.h
-
-test.c
-       - don't include extern declarations for getegid(), getgid(),
-         or geteuid() if __SVR4_2__ is defined (Unixware, SVR4.2)
-
-                                  8/18
-                                  ----
-execute_cmd.c
-       - don't check that the current directory in the path is `.' if
-         we've already found `.' in the path in find_user_command_internal
-       - new function make_full_pathname, to glue `path' and `name'
-         together in find_user_command_internal rather than using sprintf,
-         which is very slow
-
-                                  8/19
-                                  ----
-
-support/mksysdefs
-       - packaged all of the uname calls into one block at the top of the
-         script; uname sets up some script variables:
-
-               UNAME
-               UNAME_R
-               UNAME_M
-               RELEASE
-               LEVEL
-       - make sure machines running SVR4.2 have __SVR4_2__ defined
-
-machines.h
-       - for i386 machines running SVR4.2, make sure that __SVR4_2__ is
-         added to SYSDEP_CFLAGS
-
-test.c
-       - changed the test_exit define to use the do { ... } while(0) idiom
-       - made GID_T and UID_T be int for BSD/386, since that's what
-         getgroups() returns
-       - cast both sides of a test to UID_T or GID_T to make sure we're
-         on the same page when testing
-
-lib/readline/bind.c, lib/readline/readline.c
-       - fixes to deal with the Cray's pointers of different sizes --
-         pointers to functions are a different size than pointers to
-         structs
-
-                                  8/20
-                                  ----
-machines.h, test.c, jobs.h, siglist.h, support/mksysdefs
-       - changed __SVR4_2__ to USGr4_2
-
-support/getcppsyms.c
-       - added support for recognizing __SVR4_2__ and USGr4_2
-
-                                  8/23
-                                  ----
-
-variables.c
-       - added a static variable that keeps track of whether or not
-         function local variables have been created with the `local'
-         or `typeset' builtins and short-circuits the call to
-         kill_all_local_variables if none have been created
-
-lib/readline/vi_mode.c
-       - extern declaration for rl_vi_check and rl_digit_loop1
-       - declare `count' argument to rl_vi_delete
-       - made rl_vi_set_last a void function
-
-lib/readline/bind.c
-       - declare `count' argument to strnicmp
-
-lib/readline/readline.c
-       - made rl_add_undo, free_undo_list void functions
-
-lib/readline/readline.c, lib/readline/bind.c, lib/readline/search.c,
-lib/readline/vi_mode.c
-       - changed return; to return 0; and added explicit returns to many
-         `int' returning functions that didn't return a value
-
-                                  8/24
-                                  ----
-builtins/ulimit.def
-       - check for RLIMIT_RSS being defined before trying to use it
-
-machines.h
-       - fixes to cray machine description from Bill Jones
-
-builtins/common.c
-       - make all of the dollar_arg_stack stuff static
-
-lib/malloc/alloca.c
-       - new version, from emacs 19
-
-                                  8/26
-                                  ----
-lib/readline/complete.c
-       - use double quotes to quote replacement text with word breaks
-         rather than single quotes, which inhibit tilde expansion
-
-lib/readline/vi_keymap.c
-       - changed TAB to default to completion for the VI insert keymap
-
-bashline.c
-       - new function: posix_readline_initialize to make any changes
-         to the readline keymaps when switching into and out of Posix.2
-         mode
-       - call posix_readline_initialize from initialize_readline
-
-subst.c
-       - call posix_readline_initialize from sv_strict_posix
-
-                                  8/27
-                                  ----
-subst.c
-       - changed USE_GLOB_LIBRARY to USE_POSIX_GLOB_LIBRARY to make the
-         intent clear
-
-shell.c
-       - new function, issock(fd) returns 1 if FD is a socket according
-         to fstat(2) -- note that this only works if S_ISSOCK is defined
-         in posixstat.h
-       - run_startup_files calls issock to see whether or not to run
-         the .bashrc
-
-input.c
-       - include general.h for declarations of xmalloc, xrealloc
-
-lib/tilde/tilde.c, lib/tilde/tilde.h
-       - tilde_expansion_failure_hook is now a pointer to a CPFunction,
-         since that's how it's used
-
-lib/readline/history.c
-       - include <string.h> or <strings.h> as appropriate
-
-                                  8/29
-                                  ----
-machines.h
-       - avoid `M_MACHINE redefined' messages in the hpux description
-
-                                  8/30
-                                  ----
-jobs.h
-       - added #defines for sigfillset, sigdelset, and sigismember to fill
-         out the Posix.1 signal functions
-
-general.h
-       - add an extern declaration for getwd()
-
-general.c
-       - NeXT machines already have a vfree() with a declaration in stdlib.h,
-         so don't define our vfree() on those systems
-
-cpp-Makefile
-       - NeXT machines don't have a link to `gcc', so make sure that
-         HAVE_GCC is not defined on those machines, even if __GNUC__ is
-
-lib/readline/readline.h, lib/readline/complete.c
-       - rl_attempted_completion_function is now declared as a pointer to
-         a CPPFunction, since that's how it is used
-
-bashline.c, bracecomp.c
-       - fixed assignments to rl_attempted_completion_function, since it's
-         now a pointer to a CPPFunction
-
-lib/readline/keymaps.h
-       - fleshed out declarations of function types inside __FUNCTION_DEF
-         macro to match other files
-
-lib/readline/readline.h
-       - removed typedefs for function pointer types, since they are now
-         declared in keymaps.h
-
-                                  8/31
-                                  ----
-
-lib/readline/complete.c
-       - if there is more than one match, don't quote the replacement
-         text unless the matching prefix has a word break character.  The
-         old code quoted the replacement if any of the possible replacements
-         had a word break character
-
-builtins/alias.def
-       - fixed memory leak -- free the array returned by all_aliases when
-         alias is called without arguments
-
-builtins/read.def
-       - fixed memory leak -- need to free return value from
-         string_list_dollar_star
-
-builtins/fc.def
-       - fixed memory leak -- need to free return value from fc_readline
-
-builtins/hash.def
-       - fixed memory leak -- need to free return value from
-         find_user_command
-
-builtins/alias.def
-       - fixed memory leak -- remove_alias needs to free the key in the
-         hash table entry it deletes
-
-execute_cmd.c
-       - fixed memory leak in find_user_command_in_path: if we're not
-         returning full_path, we need to free it
-
-lib/readline/bind.def
-       - fixed memory leak -- need to free the returned arrays from
-         recursive calls to invoking_keyseqs_in_map
-
-                                   9/1
-                                   ---
-builtins/bind.def
-       - return failure immediately if no_line_editing is set
-
-builtins/shift.def
-       - fixed memory leak -- make sure all of the word list element from
-         rest_of_args is freed when shifting it into dollar_vars[9]
-
-builtins/hash.def
-       - fixed memory leak -- only need to save the key for a particular
-         hash item once in remember_filename
-
-expr.c
-       - fixed memory leak -- free `tokstr' after performing the assignment
-         statement and before assigning to it with savestring
-
-execute_cmd.c
-       - fixed memory leak -- need to free the copy of the command line
-         passed to make_child in execute_disk_command if the command is
-         not found
-
-lib/readline/display.c
-       - fixed call to tgoto in delete_chars -- caused the delete to fail
-         when using term_DC on some systems
-
-[code made available via ftp -- first redistributable version]
diff --git a/CWRU/old-conf/Makefile b/CWRU/old-conf/Makefile
deleted file mode 100644 (file)
index 5331319..0000000
+++ /dev/null
@@ -1,116 +0,0 @@
-# Hey Emacs, this Makefile is in -*- makefile -*- mode!
-#
-# Makefile for Bash.
-# If your cpp doesn't like -P, just get rid of it (the -P, not cpp).
-# If you wish to use Gcc, then type `make CC=gcc CPPNAME='$(CC) -E''.
-# If you wish to use GNU's Make, then change `MAKE'.
-# If you don't like the destination, then change `bindir'.
-# The file that you most likely want to look at is cpp-Makefile.
-#
-# If you haven't read README, now might be a good time.
-
-# Include some boilerplate Gnu makefile definitions.
-prefix = /usr/local
-exec_prefix = $(prefix)
-bindir = $(exec_prefix)/bin
-srcdir = .
-VPATH = $(srcdir)
-
-# MAKE    = make
-RM      = rm -f
-SHELL   = /bin/sh
-GAWK     = awk
-# GAWK     = gawk
-
-# Force CPPNAME to be the name of your C preprocesor if Bash can't
-# find it.  For instance, `CPPNAME=/usr/libexec/cpp' on 4.4 BSD.
-# If all else fails, set CPPNAME=$(CC) -E
-CPPNAME =
-CPP     = `/bin/sh $(CPPMAGIC) $(GETCPPSYMS) "$(CPPNAME)"` -P
-
-CPP_MAKEFILE = $(srcdir)/cpp-Makefile
-ANSI_MAKEFILE = ansi-Makefile
-
-# CPPFLAGS = $(SYSTEM) $(CPP_DEFINES)
-CPPFLAGS = $(CPP_DEFINES) -I. -I$(srcdir)
-CPP_ARGS = -DCPP_CC="$(CC)"
-
-SUPPORTDIR     = ./support/
-SUPPORTSRC     = $(srcdir)/support/
-
-MKSYSDEFS      = $(SUPPORTSRC)mksysdefs
-CPPMAGIC       = $(SUPPORTSRC)cppmagic
-CAT_S          = $(SUPPORTSRC)cat-s
-GETCPPSYMS     = $(SUPPORTDIR)getcppsyms
-GETCPPSYMS_SRC = $(SUPPORTSRC)getcppsyms.c
-
-# Here is a command which compresses runs of multiple blank lines to a
-# single blank line.  "cat -s" works for BSD systems, but not for USG
-# systems.  You can use an awk script if you like.  If you have too
-# much trouble with this, just forget it.  It is for making
-# bash-Makefile pretty and readable; something that isn't strictly
-# necessary.
-# SQUASH_BLANKS = cat -s
-#
-SQUASH_BLANKS = $(GAWK) -f $(CAT_S)
-
-all:   .notified bash-Makefile
-       $(MAKE) -f bash-Makefile $(MFLAGS) $(MAKEARGS) srcdir=$(srcdir) \
-               prefix=$(prefix)
-
-bash-Makefile: $(CPP_MAKEFILE) Makefile machines.h sysdefs.h config.h
-       @-if [ -f ansi-Makefile ]; then \
-           echo "cp ansi-Makefile tmp-Makefile.c"; \
-           cp ansi-Makefile tmp-Makefile.c; else \
-           echo "cp $(CPP_MAKEFILE) tmp-Makefile.c"; \
-           cp $(CPP_MAKEFILE) tmp-Makefile.c; \
-         fi
-       $(RM) $(GETCPPSYMS)
-       $(SHELL) $(SUPPORTSRC)mkdirs support
-       $(CC) -o $(GETCPPSYMS) $(GETCPPSYMS_SRC)
-       rm -f bash-Makefile
-       @$(SHELL) -c 'echo $(CPP) $(CPPFLAGS) $(CPP_ARGS) tmp-Makefile.c \| $(SQUASH_BLANKS) \> bash-Makefile'
-       @$(SHELL) -c '$(CPP) $(CPPFLAGS) $(CPP_ARGS) tmp-Makefile.c | $(SQUASH_BLANKS) >bash-Makefile'
-       rm -f tmp-Makefile.c
-       @test -s bash-Makefile || { rm -f bash-Makefile ; exit 1; }
-
-sysdefs.h: $(MKSYSDEFS)
-       $(SHELL) $(MKSYSDEFS) -s $(srcdir)
-
-# This is also performed by support/mksysdefs, but there's no way to change
-# it if cpp-Makefile is changed without changing anything else, since there
-# are no dependencies.  This lets you run `make ansi-Makefile'.
-ansi-Makefile: $(CPP_MAKEFILE)
-       grep -v '/\*\*/' $(CPP_MAKEFILE) > $@
-
-# Subsequent lines contain targets that are correctly handled by an
-# existing bash-Makefile.
-
-install uninstall newversion architecture: bash-Makefile
-       $(MAKE) -f bash-Makefile $(MFLAGS) $(MAKEARGS) bindir=$(bindir) \
-               prefix=$(prefix) $@
-
-tests DEFINES tags documentation: bash-Makefile directory-frob
-       $(MAKE) -f bash-Makefile $(MFLAGS) $(MAKEARGS) bindir=$(bindir) $@
-
-clean distclean realclean: bash-Makefile directory-frob
-       rm -f .notified
-       $(MAKE) -f bash-Makefile $(MFLAGS) $(MAKEARGS) bindir=$(bindir) $@
-
-directory-frob:
-
-.NOEXPORT:
-
-.notified:
-       @echo ""
-       @echo "   You are about to make this version of GNU Bash for"
-       @echo "   this architecture for the first time.  If you haven't"
-       @echo "   yet read the README file, you may want to do so.  If"
-       @echo "   you wish to report a bug in Bash, or in the installation"
-       @echo "   procedure, please run the bashbug script and include:"
-       @echo ""
-       @echo " * a description of the bug,"
-       @echo " * a recipe for recreating the bug reliably,"
-       @echo " * a fix for the bug if you have one!"
-       @echo ""
-       @touch .notified
diff --git a/CWRU/old-conf/Makefile.builtins b/CWRU/old-conf/Makefile.builtins
deleted file mode 100644 (file)
index 1d486e9..0000000
+++ /dev/null
@@ -1,268 +0,0 @@
-# This Makefile for building libbuiltins.a is in -*- text -*- for Emacs.
-#
-MKBUILTINS = mkbuiltins
-RANLIB = ranlib
-CFLAGS = -g -I.. -I.
-SHELL = /bin/sh
-# CC = cc
-AR = ar
-RM = rm -f
-CP = cp
-
-srcdir = .
-VPATH = .:$(srcdir)
-
-.SUFFIXES:
-.SUFFIXES: .def .c .o
-# How to make a .o file from a .def file.
-.def.o:
-       $(RM) $@
-       ./$(MKBUILTINS) $(DIRECTDEFINE) $<
-       $(CC) -c $(CFLAGS) $(CPPFLAGS) $*.c || ( $(RM) $*.c ; exit 1 )
-       $(RM) $*.c
-
-# How to make a .c file from a .def file.
-.def.c:
-       $(RM) $@
-       ./$(MKBUILTINS) $(DIRECTDEFINE) $<
-
-# Here is a rule for making .o files from .c files that does not
-# force the type of the machine (like -M_MACHINE) into the flags.
-.c.o:
-       $(RM) $@
-       $(CC) -c $(CFLAGS) $(CPPFLAGS) $<
-
-DEFS =  $(srcdir)/alias.def $(srcdir)/bind.def $(srcdir)/break.def \
-       $(srcdir)/builtin.def $(srcdir)/cd.def $(srcdir)/colon.def \
-       $(srcdir)/command.def $(srcdir)/declare.def $(srcdir)/echo.def \
-       $(srcdir)/enable.def $(srcdir)/eval.def $(srcdir)/getopts.def \
-       $(srcdir)/exec.def $(srcdir)/exit.def $(srcdir)/fc.def \
-       $(srcdir)/fg_bg.def $(srcdir)/hash.def $(srcdir)/help.def \
-       $(srcdir)/history.def $(srcdir)/jobs.def $(srcdir)/kill.def \
-       $(srcdir)/let.def $(srcdir)/read.def $(srcdir)/return.def \
-       $(srcdir)/set.def $(srcdir)/setattr.def $(srcdir)/shift.def \
-       $(srcdir)/source.def $(srcdir)/suspend.def $(srcdir)/test.def \
-       $(srcdir)/times.def $(srcdir)/trap.def $(srcdir)/type.def \
-       $(srcdir)/ulimit.def $(srcdir)/umask.def $(srcdir)/wait.def \
-       $(srcdir)/reserved.def $(srcdir)/pushd.def $(srcdir)/shopt.def
-
-STATIC_SOURCE = common.c getopt.c bashgetopt.c getopt.h 
-
-OFILES = builtins.o \
-       alias.o bind.o break.o builtin.o cd.o colon.o command.o \
-       common.o declare.o echo.o enable.o eval.o exec.o exit.o \
-       fc.o fg_bg.o hash.o help.o history.o jobs.o kill.o let.o \
-       pushd.o read.o return.o set.o setattr.o shift.o source.o \
-       suspend.o test.o times.o trap.o type.o ulimit.o umask.o \
-       wait.o getopts.o shopt.o getopt.o bashgetopt.o 
-
-THINGS_TO_TAR = $(DEFS) $(STATIC_SOURCE) Makefile ChangeLog
-
-CREATED_FILES = builtext.h builtins.c psize.aux pipesize.h
-
-all: $(MKBUILTINS) libbuiltins.a
-
-libbuiltins.a: $(MKBUILTINS) $(OFILES)
-       $(RM) $@
-       $(AR) cq $@ $(OFILES)
-       -$(RANLIB) $@
-
-builtext.h builtins.c: $(MKBUILTINS) $(DEFS)
-       $(RM) builtext.h builtins.c
-       ./$(MKBUILTINS) -externfile builtext.h -structfile builtins.c \
-       -noproduction $(DIRECTDEFINE) $(DEFS)
-
-mkbuiltins: $(srcdir)/mkbuiltins.c ../config.h
-       $(CC) $(CFLAGS) -o $(MKBUILTINS) $(srcdir)/mkbuiltins.c
-
-ulimit.o: ulimit.def pipesize.h
-
-pipesize.h:    psize.aux
-       $(SHELL) $(srcdir)/psize.sh > pipesize.h
-
-psize.aux:     psize.c
-       $(CC) $(CFLAGS) -o $@ $(srcdir)/psize.c
-
-documentation: builtins.texi
-
-$(OFILES):     $(MKBUILTINS) ../config.h
-
-builtins.texi: $(MKBUILTINS)
-       ./$(MKBUILTINS) -documentonly $(DEFS)
-
-clean:
-       $(RM) $(OFILES) $(CREATED_FILES) $(MKBUILTINS) libbuiltins.a
-
-alias.o: alias.def
-bind.o: bind.def
-break.o: break.def
-builtin.o: builtin.def
-cd.o: cd.def
-colon.o: colon.def
-command.o: command.def
-declare.o: declare.def
-echo.o: echo.def
-enable.o: enable.def
-eval.o: eval.def
-exec.o: exec.def
-exit.o: exit.def
-fc.o: fc.def
-fg_bg.o: fg_bg.def
-hash.o: hash.def
-help.o: help.def
-history.o: history.def
-jobs.o: jobs.def
-kill.o: kill.def
-let.o: let.def
-pushd.o: pushd.def
-read.o: read.def
-return.o: return.def
-set.o: set.def
-setattr.o: setattr.def
-shift.o: shift.def
-source.o: source.def
-suspend.o: suspend.def
-test.o: test.def
-times.o: times.def
-trap.o: trap.def
-type.o: type.def
-umask.o: umask.def
-wait.o: wait.def
-getopts.o: getopts.def
-reserved.o: reserved.def
-
-common.o: ../shell.h ../command.h ../config.h ../memalloc.h ../general.h
-common.o: ../variables.h ../input.h hashcom.h ../bashhist.h
-common.o: ../quit.h  ../unwind_prot.h ../maxpath.h ../jobs.h ../builtins.h
-common.o: ../dispose_cmd.h ../make_cmd.h ../subst.h ../externs.h
-common.o: ../execute_cmd.h ../error.h
-alias.o: ../command.h ../config.h ../memalloc.h ../error.h ../general.h
-alias.o: ../quit.h ../dispose_cmd.h ../make_cmd.h ../subst.h ../externs.h
-alias.o: ../shell.h ../unwind_prot.h ../variables.h common.h ../maxpath.h
-bind.o: ../command.h ../config.h ../memalloc.h ../error.h ../general.h
-bind.o: ../quit.h ../dispose_cmd.h ../make_cmd.h ../subst.h ../externs.h
-bind.o: ../maxpath.h ../bashline.h
-bind.o: ../shell.h ../unwind_prot.h ../variables.h bashgetopt.h
-break.o: ../command.h ../config.h ../memalloc.h ../error.h ../general.h
-break.o: ../quit.h ../dispose_cmd.h ../make_cmd.h ../subst.h ../externs.h
-break.o: ../shell.h ../unwind_prot.h ../variables.h ../maxpath.h
-builtin.o: ../command.h ../config.h ../memalloc.h ../error.h ../general.h
-builtin.o: ../quit.h common.h ../maxpath.h
-builtin.o: ../dispose_cmd.h ../make_cmd.h ../subst.h ../externs.h
-builtin.o: ../shell.h ../unwind_prot.h ../variables.h 
-cd.o: ../command.h ../config.h ../memalloc.h ../error.h ../general.h
-cd.o: ../quit.h ../dispose_cmd.h ../make_cmd.h ../subst.h ../externs.h
-cd.o: ../shell.h ../unwind_prot.h ../variables.h common.h ../maxpath.h
-command.o: ../command.h ../config.h ../memalloc.h ../error.h ../general.h
-command.o: ../quit.h bashgetopt.h ../maxpath.h
-command.o: ../dispose_cmd.h ../make_cmd.h ../subst.h ../externs.h
-command.o: ../shell.h ../unwind_prot.h ../variables.h 
-declare.o: ../command.h ../config.h ../memalloc.h ../error.h ../general.h
-declare.o: ../quit.h ../dispose_cmd.h ../make_cmd.h ../subst.h ../externs.h
-declare.o: ../shell.h ../unwind_prot.h ../variables.h ../maxpath.h
-echo.o: ../command.h ../config.h ../memalloc.h ../error.h ../general.h
-echo.o: ../quit.h ../dispose_cmd.h ../make_cmd.h ../subst.h ../externs.h
-echo.o: ../shell.h ../unwind_prot.h ../variables.h ../maxpath.h
-enable.o: ../command.h ../config.h ../memalloc.h ../error.h ../general.h
-enable.o: ../quit.h ../dispose_cmd.h ../make_cmd.h ../subst.h ../externs.h
-enable.o: ../shell.h ../unwind_prot.h ../variables.h ../maxpath.h
-eval.o: ../command.h ../config.h ../memalloc.h ../error.h ../general.h
-eval.o: ../quit.h ../dispose_cmd.h ../make_cmd.h ../subst.h ../externs.h
-eval.o: ../shell.h ../unwind_prot.h ../variables.h ../maxpath.h
-exec.o: ../command.h ../config.h ../memalloc.h ../error.h ../general.h
-exec.o: ../quit.h ../dispose_cmd.h ../make_cmd.h ../subst.h ../externs.h
-exec.o: ../shell.h ../unwind_prot.h ../variables.h common.h ../execute_cmd.h
-exec.o: ../maxpath.h ../flags.h
-exit.o: ../command.h ../config.h ../memalloc.h ../error.h ../general.h
-exit.o: ../quit.h ../dispose_cmd.h ../make_cmd.h ../subst.h ../externs.h
-exit.o: ../shell.h ../unwind_prot.h ../variables.h ../maxpath.h
-fc.o: ../builtins.h ../command.h bashgetopt.h ../bashhist.h
-fc.o: ../command.h ../config.h ../memalloc.h ../error.h ../general.h
-fc.o: ../quit.h ../dispose_cmd.h ../make_cmd.h ../subst.h ../externs.h
-fc.o: ../flags.h ../unwind_prot.h ../variables.h ../shell.h ../maxpath.h
-fg_bg.o: ../command.h ../config.h ../memalloc.h ../error.h ../general.h
-fg_bg.o: ../quit.h ../dispose_cmd.h ../make_cmd.h ../subst.h ../externs.h
-fg_bg.o: ../shell.h ../unwind_prot.h ../variables.h ../maxpath.h
-getopts.o: ../command.h ../config.h ../memalloc.h ../error.h ../general.h
-getopts.o: ../quit.h ../dispose_cmd.h ../make_cmd.h ../subst.h ../externs.h
-getopts.o: ../shell.h ../unwind_prot.h ../variables.h ../maxpath.h
-hash.o: ../builtins.h ../command.h ../quit.h ../execute_cmd.h
-hash.o: ../command.h ../config.h ../memalloc.h ../error.h ../general.h
-hash.o: ../shell.h ../unwind_prot.h ../variables.h common.h ../maxpath.h
-help.o: ../command.h ../config.h ../memalloc.h ../error.h ../general.h
-help.o: ../quit.h ../dispose_cmd.h ../make_cmd.h ../subst.h ../externs.h
-help.o: ../shell.h ../unwind_prot.h ../variables.h ../maxpath.h
-history.o: ../command.h ../config.h ../memalloc.h ../error.h ../general.h
-history.o: ../quit.h ../dispose_cmd.h ../make_cmd.h ../subst.h ../externs.h
-history.o: ../filecntl.h ../shell.h ../unwind_prot.h ../variables.h
-history.o: ../bashhist.h ../maxpath.h
-inlib.o: ../command.h ../config.h ../memalloc.h ../error.h ../general.h
-inlib.o: ../shell.h ../unwind_prot.h ../variables.h ../maxpath.h
-inlib.o: ../quit.h ../dispose_cmd.h ../make_cmd.h ../subst.h ../externs.h
-jobs.o: ../command.h ../config.h ../memalloc.h ../error.h ../general.h
-jobs.o: ../quit.h bashgetopt.h ../maxpath.h
-jobs.o: ../dispose_cmd.h ../make_cmd.h ../subst.h ../externs.h
-jobs.o: ../shell.h ../unwind_prot.h ../variables.h 
-kill.o: ../command.h ../config.h ../memalloc.h ../error.h ../general.h
-kill.o: ../quit.h ../dispose_cmd.h ../make_cmd.h ../subst.h ../externs.h
-kill.o: ../shell.h ../trap.h ../unwind_prot.h ../variables.h ../maxpath.h
-let.o: ../command.h ../config.h ../memalloc.h ../error.h ../general.h
-let.o: ../quit.h ../dispose_cmd.h ../make_cmd.h ../subst.h ../externs.h
-let.o: ../shell.h ../unwind_prot.h ../variables.h ../maxpath.h
-pushd.o: ../command.h ../config.h ../memalloc.h ../error.h ../general.h
-pushd.o: ../quit.h ../dispose_cmd.h ../make_cmd.h ../subst.h ../externs.h
-pushd.o: ../shell.h ../unwind_prot.h ../variables.h ../maxpath.h common.h
-read.o: ../command.h ../config.h ../memalloc.h ../error.h ../general.h
-read.o: ../quit.h ../dispose_cmd.h ../make_cmd.h ../subst.h ../externs.h
-read.o: ../shell.h ../unwind_prot.h ../variables.h ../maxpath.h
-return.o: ../command.h ../config.h ../memalloc.h ../error.h ../general.h
-return.o: ../quit.h ../dispose_cmd.h ../make_cmd.h ../subst.h ../externs.h
-return.o: ../shell.h ../unwind_prot.h ../variables.h ../maxpath.h
-set.o: ../command.h ../config.h ../memalloc.h ../error.h ../general.h
-set.o: ../quit.h ../dispose_cmd.h ../make_cmd.h ../subst.h ../externs.h
-set.o: ../shell.h ../unwind_prot.h ../variables.h ../maxpath.h
-setattr.o: ../command.h ../config.h ../memalloc.h ../error.h ../general.h
-setattr.o: ../quit.h common.h bashgetopt.h ../maxpath.h
-setattr.o: ../dispose_cmd.h ../make_cmd.h ../subst.h ../externs.h
-setattr.o: ../shell.h ../unwind_prot.h ../variables.h 
-shift.o: ../command.h ../config.h ../memalloc.h ../error.h ../general.h
-shift.o: ../quit.h ../dispose_cmd.h ../make_cmd.h ../subst.h ../externs.h
-shift.o: ../shell.h ../unwind_prot.h ../variables.h ../maxpath.h
-source.o: ../command.h ../config.h ../memalloc.h ../error.h ../general.h
-source.o: ../quit.h ../dispose_cmd.h ../make_cmd.h ../subst.h ../externs.h
-source.o: ../shell.h ../unwind_prot.h ../variables.h ../maxpath.h
-suspend.o: ../command.h ../config.h ../memalloc.h ../error.h ../general.h
-suspend.o: ../quit.h ../dispose_cmd.h ../make_cmd.h ../subst.h ../externs.h
-suspend.o: ../shell.h ../unwind_prot.h ../variables.h ../maxpath.h
-test.o: ../command.h ../config.h ../memalloc.h ../error.h ../general.h
-test.o: ../quit.h ../dispose_cmd.h ../make_cmd.h ../subst.h ../externs.h
-test.o: ../shell.h ../unwind_prot.h ../variables.h ../maxpath.h
-times.o: ../command.h ../config.h ../memalloc.h ../error.h ../general.h
-times.o: ../quit.h ../dispose_cmd.h ../make_cmd.h ../subst.h ../externs.h
-times.o: ../shell.h ../unwind_prot.h ../variables.h ../maxpath.h
-trap.o: ../command.h ../config.h ../memalloc.h ../error.h ../general.h
-trap.o: ../quit.h common.h ../maxpath.h
-trap.o: ../dispose_cmd.h ../make_cmd.h ../subst.h ../externs.h
-trap.o: ../shell.h ../unwind_prot.h ../variables.h ../execute_cmd.h
-type.o: ../command.h ../config.h ../memalloc.h ../error.h ../general.h
-type.o: ../quit.h common.h ../maxpath.h
-type.o: ../dispose_cmd.h ../make_cmd.h ../subst.h ../externs.h
-type.o: ../shell.h ../unwind_prot.h ../variables.h 
-ulimit.o: ../command.h ../config.h ../memalloc.h ../error.h ../general.h
-ulimit.o: ../quit.h ../dispose_cmd.h ../make_cmd.h ../subst.h ../externs.h
-ulimit.o: ../shell.h ../unwind_prot.h ../variables.h ../maxpath.h
-umask.o: ../command.h ../config.h ../memalloc.h ../error.h ../general.h
-umask.o: ../quit.h ../dispose_cmd.h ../make_cmd.h ../subst.h ../externs.h
-umask.o: ../shell.h ../unwind_prot.h ../variables.h ../maxpath.h
-wait.o: ../command.h ../config.h ../memalloc.h ../error.h ../general.h
-wait.o: ../quit.h ../dispose_cmd.h ../make_cmd.h ../subst.h ../externs.h
-wait.o: ../shell.h ../unwind_prot.h ../variables.h ../maxpath.h
-shopt.o: ../command.h ../config.h ../memalloc.h ../error.h ../general.h
-shopt.o: ../quit.h ../dispose_cmd.h ../make_cmd.h ../subst.h ../externs.h
-shopt.o: ../shell.h ../unwind_prot.h ../variables.h ../maxpath.h
-shopt.o: common.h bashgetopt.h
-bashgetopt.o: ../bashansi.h ../ansi_stdlib.h
-mkbuiltins.o: ../bashansi.h ../ansi_stdlib.h
-fc.o: ../bashansi.h ../ansi_stdlib.h
-
-#bind.o: $(RL_LIBSRC)chardefs.h $(RL_LIBSRC)readline.h $(RL_LIBSRC)keymaps.h
diff --git a/CWRU/old-conf/Makefile.documentation b/CWRU/old-conf/Makefile.documentation
deleted file mode 100644 (file)
index 3096a51..0000000
+++ /dev/null
@@ -1,119 +0,0 @@
-# This Makefile is for the Bash/documentation directory -*- text -*-.
-#
-CP         = cp
-RM         = rm -f
-
-INSTALL_DATA = install -c -m 644
-
-DOC_SUPPORT = ../lib/doc-support/
-TEXINDEX    = $(DOC_SUPPORT)texindex
-TEXINDSRC   = $(DOC_SUPPORT)texindex.c
-TEX        = tex
-QUIETPS            = #set this to -q to shut up dvips
-DVIPS      = dvips -D 300 $(QUIETPS) -o $@     # tricky
-TEXINPUTS   = ./../lib/readline/doc
-MAKEINFO    = makeinfo
-
-# Change to groff -Tascii if you don't have nroff
-NROFF      = nroff
-
-# This should be a program that converts troff to postscript
-GROFF      = groff
-
-HSUSER      = ./../lib/readline/doc/hsuser.texinfo
-RLUSER      = ./../lib/readline/doc/rluser.texinfo
-
-.SUFFIXES:     .0 .1 .3 .ms .ps .txt .dvi
-
-.1.ps:
-       $(RM) $@
-       -${GROFF} -man $< > $@
-
-.1.0:
-       $(RM) $@
-       -${NROFF} -man $< > $@
-
-.ms.ps:
-       $(RM) $@
-       -${GROFF} -ms $< > $@
-
-.ms.txt:
-       $(RM) $@
-       -${NROFF} -ms $< > $@
-
-.3.ps:
-       $(RM) $@
-       -${GROFF} -man $< > $@
-
-.3.0:
-       $(RM) $@
-       -${NROFF} -man $< > $@
-
-all: ps info dvi text
-
-ps: bash.ps builtins.ps readline.ps article.ps
-dvi: features.dvi features.ps 
-info: features.info
-text: bash.0 builtins.0 readline.0
-
-features.dvi: features.texi $(HSUSER) $(RLUSER)
-       TEXINPUTS=.:$(TEXINPUTS):$$TEXINPUTS $(TEX) features.texi
-       $(TEXINDEX) features.??
-       TEXINPUTS=.:$(TEXINPUTS):$$TEXINPUTS $(TEX) features.texi
-
-features.ps: features.dvi
-       $(RM) $@
-       $(DVIPS) features.dvi
-
-features.info: features.texi $(HSUSER) $(RLUSER)
-       $(MAKEINFO) --no-split -I$(TEXINPUTS) features.texi
-
-bash.dvi: $(TEXINDEX) bash.texinfo $(HSUSER) $(RLUSER)
-       TEXINPUTS=.:$(TEXINPUTS):$$TEXINPUTS $(TEX) bash.texinfo
-       $(TEXINDEX) bash.??
-       TEXINPUTS=.:$(TEXINPUTS):$$TEXINPUTS $(TEX) bash.texinfo
-
-bashman.ps: bash.dvi
-       rm -f $@
-       $(DVIPS) bash.dvi
-
-bash.txt: bash.1
-bash.ps: bash.1
-builtins.ps: builtins.1 bash.1
-builtins.txt: builtins.1 bash.1
-readline.txt: readline.3
-readline.ps: readline.3
-article.ps: article.ms
-
-$(TEXINDEX): $(TEXINDSRC)
-       (cd $(DOC_SUPPORT); $(MAKE) $(MFLAGS) texindex)
-
-hsuser.texinfo: ../lib/readline/doc/hsuser.texinfo
-       ln -s ../lib/readline/doc/hsuser.texinfo .
-
-rluser.texinfo: ../lib/readline/doc/rluser.texinfo
-       ln -s ../lib/readline/doc/rluser.texinfo .
-
-clean:
-       rm -f *.aux *.cp *.fn *.ky *.log *.pg *.toc *.tp *.vr *.cps *.pgs \
-       *.fns *.kys *.tps *.vrs *.o core texindex rluser.texinfo hsuser.texinfo
-
-distclean:
-       rm -f *.aux *.cp *.fn *.ky *.log *.pg *.toc *.tp *.vr *.cps *.pgs \
-       *.dvi *.info *.info-* *.fns *.kys *.tps *.vrs *.o core texindex \
-       rluser.texinfo hsuser.texinfo
-
-realclean:     clean
-
-install: all
-       -[ -d $(mandir) ] || mkdir $(mandir)
-       $(INSTALL_DATA) bash.1 $(mandir)
-       sed 's:so bash.1:so man1/bash.1:' < builtins.1 > $(mandir)/bash_builtins.1
-       -[ -d $(man3dir) ] || mkdir $(man3dir)
-       $(INSTALL_DATA) readline.3 $(man3dir)
-       -[ -d $(infodir) ] || mkdir $(infodir)
-       $(INSTALL_DATA) features.info $(infodir)/bash.info
-
-uninstall:
-       $(RM) $(mandir)/bash.1 $(mandir)/bash_builtins.1
-       $(RM) $(man3dir)/readline.3 $(infodir)/bash.info
diff --git a/CWRU/old-conf/Makefile.lib.glob b/CWRU/old-conf/Makefile.lib.glob
deleted file mode 100644 (file)
index 467a510..0000000
+++ /dev/null
@@ -1,92 +0,0 @@
-## -*- text -*- ####################################################
-#                                                                 #
-# Makefile for the GNU Glob Library.                              #
-#                                                                 #
-####################################################################
-
-# This Makefile is hand made from a template file, found in
-# ../template.  Each library must provide several Makefile
-# targets: `all', `clean', `documentation', `install', and
-# `what-tar'.  The `what-tar' target reports the names of the
-# files that need to be included in a tarfile to build the full
-# code and documentation for this library.
-
-# Please note that the values for INCLUDES, CC, AR, RM, CP,
-# RANLIB, and selfdir are passed in from ../Makefile, and do
-# not need to be defined here.
-srcdir = .
-VPATH = .:$(srcdir)
-
-# Here is a rule for making .o files from .c files that doesn't force
-# the type of the machine (like -sun3) into the flags.
-.c.o:
-       $(CC) -c $(CFLAGS) $(INCLUDES) $(LOCAL_DEFINES) $(CPPFLAGS) $<
-
-# LOCAL_DEFINES are flags that are specific to this library.
-# Define -DUSG if you are using a System V operating system.
-LOCAL_DEFINES = $(LOCAL_INCLUDES) #-DUSG
-
-# For libraries which include headers from other libraries.
-LOCAL_INCLUDES = -I..
-
-# The name of the library target.
-LIBRARY_NAME = libglob.a
-
-# The C code source files for this library.
-CSOURCES = $(srcdir)glob.c $(srcdir)fnmatch.c
-
-# The header files for this library.
-HSOURCES = $(srcdir)fnmatch.h
-
-OBJECTS = glob.o fnmatch.o
-
-# The texinfo files which document this library.
-DOCSOURCE = doc/glob.texi
-DOCOBJECT = doc/glob.dvi
-DOCSUPPORT = doc/Makefile
-DOCUMENTATION = $(DOCSOURCE) $(DOCOBJECT) $(DOCSUPPORT)
-
-SUPPORT = Makefile ChangeLog $(DOCSUPPORT)
-
-SOURCES  = $(CSOURCES) $(HSOURCES) $(DOCSOURCE)
-
-THINGS_TO_TAR = $(SOURCES) $(SUPPORT)
-
-######################################################################
-
-all: $(LIBRARY_NAME)
-
-$(LIBRARY_NAME): $(OBJECTS)
-       $(RM) -f $@
-       $(AR) cq $@ $(OBJECTS)
-       -[ -n "$(RANLIB)" ] && $(RANLIB) $@
-
-what-tar:
-       @for file in $(THINGS_TO_TAR); do \
-         echo $(selfdir)$$file; \
-       done
-
-documentation: force
-       -(cd doc; $(MAKE) $(MFLAGS))
-force:
-
-# The rule for 'includes' is written funny so that the if statement
-# always returns TRUE unless there really was an error installing the
-# include files.
-install:
-       -$(MV) $(bindir)/$(LIBRARY_NAME) $(bindir)/$(LIBRARY_NAME)-old
-       $(CP) $(LIBRARY_NAME) $(bindir)/$(LIBRARY_NAME)
-       -[ -n "$(RANLIB)" ] && $(RANLIB) -t $(bindir)/$(LIBRARY_NAME)
-
-clean:
-       rm -f $(OBJECTS) $(LIBRARY_NAME)
-       -(cd doc; $(MAKE) $(MFLAGS) clean)
-
-
-######################################################################
-#                                                                   #
-#  Dependencies for the object files which make up this library.     #
-#                                                                   #
-######################################################################
-
-fnmatch.o: fnmatch.c fnmatch.h
diff --git a/CWRU/old-conf/Makefile.lib.malloc b/CWRU/old-conf/Makefile.lib.malloc
deleted file mode 100644 (file)
index c6a7b0e..0000000
+++ /dev/null
@@ -1,33 +0,0 @@
-# Skeleton Makefile for the GNU malloc code
-#
-# Maybe this should really create a library instead of just compiling
-# source files
-
-srcdir = .
-VPATH = .:$(srcdir)
-
-.c.o:
-       $(CC) $(CFLAGS) $(CPPFLAGS) -c $<
-
-.s.o:
-       $(CC) $(CFLAGS) $(CPPFLAGS) -c $<
-
-MALLOC_SOURCE = malloc.c
-
-ALLOCA_SOURCE = alloca.c
-ALLOCA_OBJECT = alloca.o
-
-libmalloc.a:   malloc.o $(ALLOCA)
-       rm -f $@
-       ar cq $@ malloc.o $(ALLOCA)
-       -[ -n "$(RANLIB)" ] && $(RANLIB) $@
-
-malloc.o: malloc.c getpagesize.h
-
-$(ALLOCA_OBJECT): $(ALLOCA_SOURCE)
-
-alloca.o:      $(ALLOCA_SOURCE)
-       $(CC) $(CFLAGS) $(CPPFLAGS) -c $<
-       @- if [ "$(ALLOCA_OBJECT)" != alloca.o ]; then \
-               mv $(ALLOCA_OBJECT) alloca.o >/dev/null 2>&1 ; \
-       fi
diff --git a/CWRU/old-conf/Makefile.lib.readline b/CWRU/old-conf/Makefile.lib.readline
deleted file mode 100644 (file)
index 7a12a1f..0000000
+++ /dev/null
@@ -1,154 +0,0 @@
-## -*- text -*- ####################################################
-#                                                                 #
-# Makefile for the GNU Readline and History Libraries.            #
-#                                                                 #
-####################################################################
-
-srcdir = .
-VPATH = .:$(srcdir)
-
-INSTALL = install -c
-INSTALL_PROGRAM = ${INSTALL}
-INSTALL_DATA = ${INSTALL} -m 644
-
-RANLIB = ranlib
-AR = ar
-RM = rm
-CP = cp
-MV = mv
-
-# See the file STANDALONE for the -D defines that readline understands
-DEFS =
-# For libraries which include headers from other libraries.
-LOCAL_INCLUDES = -I. -I..
-
-CPPFLAGS = $(DEFS) $(LOCAL_INCLUDES)
-
-# Here is a rule for making .o files from .c files that doesn't force
-# the type of the machine (like -sun3) into the flags.
-.c.o:
-       $(CC) -c $(CPPFLAGS) $(CFLAGS) $<
-
-# The name of the main library target.
-LIBRARY_NAME = libreadline.a
-
-# The C code source files for this library.
-CSOURCES = $(srcdir)readline.c $(srcdir)funmap.c $(srcdir)keymaps.c \
-          $(srcdir)vi_mode.c $(srcdir)parens.c $(srcdir)rltty.c \
-          $(srcdir)complete.c $(srcdir)bind.c $(srcdir)isearch.c \
-          $(srcdir)display.c $(srcdir)signals.c $(srcdir)emacs_keymap.c \
-          $(srcdir)vi_keymap.c $(srcdir)util.c $(srcdir)kill.c \
-          $(srcdir)undo.c $(srcdir)macro.c $(srcdir)input.c \
-          $(srcdir)callback.c $(srcdir)xmalloc.c \
-          $(srcdir)history.c $(srcdir)histsearch.c $(srcdir)histexpand.c \
-          $(srcdir)histfile.c \
-          $(srcdir)tilde.c \
-
-# The header files for this library.
-HSOURCES = readline.h rldefs.h chardefs.h keymaps.h history.h histlib.h \
-          posixstat.h tilde.h rlconf.h
-
-HISTOBJ = history.o histexpand.o histfile.o histsearch.o
-TILDEOBJ= tilde.o
-OBJECTS = readline.o vi_mode.o funmap.o keymaps.o parens.o search.o \
-         rltty.o complete.o bind.o isearch.o display.o signals.o \
-         util.o kill.o undo.o macro.o input.o callback.o xmalloc.o \
-         $(HISTOBJ) $(TILDEOBJ)
-
-# The texinfo files which document this library.
-DOCSOURCE = doc/rlman.texinfo doc/rltech.texinfo doc/rluser.texinfo
-DOCOBJECT = doc/readline.dvi
-DOCSUPPORT = doc/Makefile
-DOCUMENTATION = $(DOCSOURCE) $(DOCOBJECT) $(DOCSUPPORT)
-
-SUPPORT = Makefile ChangeLog $(DOCSUPPORT) examples/[-a-z.]*
-
-SOURCES  = $(CSOURCES) $(HSOURCES) $(DOCSOURCE)
-
-THINGS_TO_TAR = $(SOURCES) $(SUPPORT)
-
-INSTALLED_HEADERS = readline.h chardefs.h keymaps.h history.h tilde.h
-
-##########################################################################
-
-all: libreadline.a libhistory.a
-
-libreadline.a: $(OBJECTS)
-       $(RM) -f $@
-       $(AR) cq $@ $(OBJECTS)
-       -[ -n "$(RANLIB)" ] && $(RANLIB) $@
-
-libhistory.a: $(HISTOBJ) xmalloc.o
-       $(RM) -f $@
-       $(AR) cq $@ $(HISTOBJ) xmalloc.o
-       -[ -n "$(RANLIB)" ] && $(RANLIB) $@
-
-documentation: force
-       [ ! -d doc ] && mkdir doc
-       (if [ -d doc ]; then cd doc; $(MAKE) $(MFLAGS); fi)
-
-force:
-
-# The rule for 'includes' is written funny so that the if statement
-# always returns TRUE unless there really was an error installing the
-# include files.
-install: installdirs libreadline.a
-       for file in $(INSTALLED_HEADERS) ; do \
-               $(INSTALL_DATA) $(srcdir)/$$file $(incdir)/readline ; \
-       done
-       ${INSTALL_DATA} readline.h keymaps.h chardefs.h history.h \
-               $(incdir)/readline
-       -${MV} $(libdir)/libreadline.a $(libdir)/libreadline.old
-       ${INSTALL_DATA} libreadline.a $(bindir)/libreadline.a
-       -[ -n "$(RANLIB)" ] && $(RANLIB) -t $(bindir)/libreadline.a
-
-installdirs:
-       -[ ! -d $(incdir)/readline ] && { \
-         mkdir $(incdir)/readline && chmod 755 $(incdir)/readline; }
-       -[ ! -d $(libdir) ] && mkdir $(libdir)
-
-uninstall:
-       cd $(incdir)/readline && ${RM} -f ${INSTALLED_HEADERS}
-       cd $(libdir) && ${RM} -f libreadline.a libreadline.old
-
-clean:
-       rm -f $(OBJECTS) *.a
-       (if [ -d doc ]; then cd doc; $(MAKE) $(MFLAGS) $@; fi)
-
-tags:  force
-       etags $(CSOURCES) $(HSOURCES)
-
-TAGS:  force
-       ctags -x $(CSOURCES) $(HSOURCES) > $@
-
-readline: readline.h rldefs.h chardefs.h
-readline: $(OBJECTS)
-       $(CC) $(CFLAGS) $(CPPFLAGS) $(READLINE_DEFINES) \
-         $(LOCAL_INCLUDES) -DTEST -o readline readline.c vi_mode.o funmap.o \
-         keymaps.o -ltermcap
-
-realclean distclean mostlyclean: clean
-
-# Dependencies
-readline.o: readline.c readline.h rldefs.h rlconf.h chardefs.h
-readline.o: keymaps.h history.h
-vi_mode.o: rldefs.h rlconf.h readline.h history.h
-funmap.o: funmap.c readline.h rlconf.h
-keymaps.o: keymaps.c emacs_keymap.c vi_keymap.c keymaps.h chardefs.h rlconf.h
-history.o: history.h histlib.h
-histexpand.o: history.h histlib.h
-histsearch.o: history.h histlib.h
-histfile.o: history.h histlib.h
-isearch.o: readline.h history.h
-search.o: readline.h history.h
-display.o: readline.h history.h rldefs.h rlconf.h
-complete.o: readline.h rldefs.h rlconf.h
-rltty.o: rldefs.h rlconf.h readline.h
-bind.o: rldefs.h rlconf.h readline.h history.h
-signals.o: rldefs.h rlconf.h readline.h history.h
-parens.o: readline.h
-kill.o: rldefs.h rlconf.h readline.h history.h
-macro.o: rldefs.h rlconf.h readline.h history.h
-undo.o: rldefs.h rlconf.h readline.h history.h
-input.o: rldefs.h rlconf.h readline.h history.h
-callback.o: rlconf.h rldefs.h readline.h
diff --git a/CWRU/old-conf/Makefile.lib.termcap b/CWRU/old-conf/Makefile.lib.termcap
deleted file mode 100644 (file)
index bbdf99f..0000000
+++ /dev/null
@@ -1,64 +0,0 @@
-## -*- text -*- ####################################################
-#                                                                 #
-# Makefile for termcap replacement libbrary.                      #
-#                                                                 #
-####################################################################
-
-# Here is a rule for making .o files from .c files that doesn't force
-# the type of the machine (like -sun3) into the flags.
-.c.o:
-       $(CC) -c $(CFLAGS) $(LOCAL_INCLUDES) $(CPPFLAGS) $*.c
-
-# Destination installation directory.  The libraries are copied to DESTDIR
-# when you do a `make install'.
-DESTDIR = /usr/local/lib
-
-DEBUG_FLAGS = -g
-#OPTIMIZE_FLAGS = -O
-LDFLAGS = $(DEBUG_FLAGS) 
-CFLAGS = $(DEBUG_FLAGS) $(OPTIMIZE_FLAGS)
-
-SHELL = /bin/sh
-
-# A good alternative is gcc -traditional.
-#CC = gcc -traditional
-CC = cc
-RANLIB = /usr/bin/ranlib
-AR = ar
-RM = rm
-CP = cp
-
-CSOURCES = termcap.c tparam.c
-
-SOURCES  = $(CSOURCES)
-
-OBJECTS = termcap.o tparam.o
-
-DOCUMENTATION = termcap.texinfo
-
-THINGS_TO_TAR = $(SOURCES) $(DOCUMENTATION)
-
-##########################################################################
-
-all: libtermcap.a
-
-libtermcap.a:  $(OBJECTS)
-               $(RM) -f $@
-               $(AR) clq $@ $(OBJECTS)
-               -[ -n "$(RANLIB)" ] && $(RANLIB) $@
-
-termcap.tar:   $(THINGS_TO_TAR)
-               tar -cf $@ $(THINGS_TO_TAR)
-
-termcap.tar.Z: termcap.tar
-               compress -f termcap.tar
-
-install:       $(DESTDIR)/libtermcap.a
-
-clean:
-               rm -f *.o *.a *.log *.cp *.tp *.vr *.fn *.aux *.pg *.toc
-
-$(DESTDIR)/libtermcap.a: libtermcap.a
-               -mv $(DESTDIR)/libtermcap.a $(DESTDIR)/libtermcap.old
-               cp libtermcap.a $@
-               -[ -n "$(RANLIB)" ] && $(RANLIB) -t $@
diff --git a/CWRU/old-conf/Makefile.lib.tilde b/CWRU/old-conf/Makefile.lib.tilde
deleted file mode 100644 (file)
index b3f4c26..0000000
+++ /dev/null
@@ -1,94 +0,0 @@
-## -*- text -*- ####################################################
-#                                                                 #
-# Makefile for the GNU Tilde Library.                             #
-#                                                                 #
-####################################################################
-
-# This Makefile is hand made from a template file, found in
-# ../template.  Each library must provide several Makefile
-# targets: `all', `clean', `documentation', `install', and
-# `what-tar'.  The `what-tar' target reports the names of the
-# files that need to be included in a tarfile to build the full
-# code and documentation for this library.
-
-# Please note that the values for INCLUDES, CC, AR, RM, CP,
-# RANLIB, and selfdir are passed in from ../Makefile, and do
-# not need to be defined here.
-RM = rm
-
-srcdir = .
-VPATH = .:$(srcdir)
-
-# Here is a rule for making .o files from .c files that doesn't force
-# the type of the machine (like -sun3) into the flags.
-.c.o:
-       $(CC) -c $(CFLAGS) $(INCLUDES) $(LOCAL_DEFINES) $(CPPFLAGS) $<
-
-# LOCAL_DEFINES are flags that are specific to this library.
-# Define -DUSG if you are using a System V operating system.
-LOCAL_DEFINES = $(LOCAL_INCLUDES) #-DUSG
-
-# For libraries which include headers from other libraries.
-LOCAL_INCLUDES = -I..
-
-# The name of the library target.
-LIBRARY_NAME = libtilde.a
-
-# The C code source files for this library.
-CSOURCES = $(srcdir)/tilde.c
-
-# The header files for this library.
-HSOURCES = $(srcdir)/tilde.h
-
-OBJECTS = tilde.o
-
-# The texinfo files which document this library.
-DOCSOURCE = doc/tilde.texi
-DOCOBJECT = doc/tilde.dvi
-DOCSUPPORT = doc/Makefile
-DOCUMENTATION = $(DOCSOURCE) $(DOCOBJECT) $(DOCSUPPORT)
-
-SUPPORT = Makefile ChangeLog $(DOCSUPPORT)
-
-SOURCES  = $(CSOURCES) $(HSOURCES) $(DOCSOURCE)
-
-THINGS_TO_TAR = $(SOURCES) $(SUPPORT)
-
-######################################################################
-
-all: $(LIBRARY_NAME)
-
-$(LIBRARY_NAME): $(OBJECTS)
-       $(RM) -f $@
-       $(AR) cq $@ $(OBJECTS)
-       -[ -n "$(RANLIB)" ] && $(RANLIB) $@
-
-what-tar:
-       @for file in $(THINGS_TO_TAR); do \
-         echo $(selfdir)$$file; \
-       done
-
-documentation: force
-       -(cd doc; $(MAKE) $(MFLAGS))
-force:
-
-# The rule for 'includes' is written funny so that the if statement
-# always returns TRUE unless there really was an error installing the
-# include files.
-install:
-       -$(MV) $(bindir)/$(LIBRARY_NAME) $(bindir)/$(LIBRARY_NAME)-old
-       $(CP) $(LIBRARY_NAME) $(bindir)/$(LIBRARY_NAME)
-       -[ -n "$(RANLIB)" ] && $(RANLIB) -t $(bindir)/$(LIBRARY_NAME)
-
-clean:
-       $(RM) -f $(OBJECTS) $(LIBRARY_NAME)
-       -(cd doc; $(MAKE) $(MFLAGS) clean)
-
-
-######################################################################
-#                                                                   #
-#  Dependencies for the object files which make up this library.     #
-#                                                                   #
-######################################################################
-
-tilde.o: tilde.h tilde.c
diff --git a/CWRU/old-conf/config.h b/CWRU/old-conf/config.h
deleted file mode 100644 (file)
index b805d0d..0000000
+++ /dev/null
@@ -1,178 +0,0 @@
-/* config.h -- Configuration file for bash. */
-
-/* Copyright (C) 1987,1991 Free Software Foundation, Inc.
-
-   This file is part of GNU Bash, the Bourne Again SHell.
-
-   Bash is free software; you can redistribute it and/or modify it
-   under the terms of the GNU General Public License as published by
-   the Free Software Foundation; either version 1, or (at your option)
-   any later version.
-
-   Bash 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 General Public
-   License for more details.
-
-   You should have received a copy of the GNU General Public License
-   along with Bash; see the file COPYING.  If not, write to the Free
-   Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */
-
-#if !defined (_CONFIG_H_)
-#define _CONFIG_H_
-
-#if !defined (BUILDING_MAKEFILE)
-#include "memalloc.h"
-#endif
-
-#if defined (HAVE_UNISTD_H) && !defined (BUILDING_MAKEFILE)
-#  ifdef CRAY
-#    define word __word
-#  endif
-#include <unistd.h>
-#  ifdef CRAY
-#    undef word
-#  endif
-#endif
-
-/* Define JOB_CONTROL if your operating system supports
-   BSD-like job control. */
-#define JOB_CONTROL
-
-/* Note that vanilla System V machines don't support BSD job control,
-   although some do support Posix job control. */
-#if defined (USG) || defined (MINIX) || defined (Minix)
-#  if !defined (_POSIX_JOB_CONTROL)
-#    undef JOB_CONTROL
-#  endif /* !_POSIX_JOB_CONTROL */
-#endif /* USG || Minix || MINIX */
-
-/* Define ALIAS if you want the alias features. */
-#define ALIAS
-
-/* Define PUSHD_AND_POPD if you want those commands to be compiled in.
-   (Also the `dirs' commands.) */
-#define PUSHD_AND_POPD
-
-/* Define BRACE_EXPANSION if you want curly brace expansion a la Csh:
-   foo{a,b} -> fooa foob.  Even if this is compiled in (the default) you
-   can turn it off at shell startup with `-nobraceexpansion', or during
-   shell execution with `set +o braceexpand'. */
-#define BRACE_EXPANSION
-
-/* Define READLINE to get the nifty/glitzy editing features.
-   This is on by default.  You can turn it off interactively
-   with the -nolineediting flag. */
-#define READLINE
-
-/* Define BANG_HISTORY if you want to have Csh style "!" history expansion.
-   This is unrelated to READLINE. */
-#define BANG_HISTORY
-
-/* Define HISTORY if you want to have access to previously typed commands.
-
-   If both HISTORY and READLINE are defined, you can get at the commands
-   with line editing commands, and you can directly manipulate the history
-   from the command line.
-
-   If only HISTORY is defined, the `fc' and `history' builtins are
-   available. */
-#define HISTORY
-
-#if defined (BANG_HISTORY) && !defined (HISTORY)
-   /* BANG_HISTORY requires HISTORY. */
-#  define HISTORY
-#endif /* BANG_HISTORY && !HISTORY */
-
-#if defined (READLINE) && !defined (HISTORY)
-#  define HISTORY
-#endif
-
-/* Define this if you want completion that puts all alternatives into
-   a brace expansion shell expression. */
-#if defined (BRACE_EXPANSION) && defined (READLINE)
-#  define BRACE_COMPLETION
-#endif /* BRACE_EXPANSION */
-
-/* The default value of the PATH variable. */
-#define DEFAULT_PATH_VALUE \
-  "/usr/gnu/bin:/usr/local/bin:/usr/ucb:/bin:/usr/bin:."
-
-/* The value for PATH when invoking `command -p'.  This is only used when
-   the Posix.2 confstr () function, or CS_PATH define are not present. */
-#define STANDARD_UTILS_PATH \
-  "/bin:/usr/bin:/usr/ucb:/usr/sbin:/etc:/usr/etc"
-
-/* Define V9_ECHO if you want to give the echo builtin backslash-escape
-   interpretation using the -e option, in the style of the Bell Labs 9th
-   Edition version of echo. */
-#define V9_ECHO
-
-/* Define DEFAULT_ECHO_TO_USG if you want the echo builtin to interpret
-   the backslash-escape characters by default, like the System V echo.
-   This requires that V9_ECHO be defined. */
-/* #define DEFAULT_ECHO_TO_USG */
-#if !defined (V9_ECHO)
-#  undef DEFAULT_ECHO_TO_USG
-#endif
-
-/* Define CONTINUE_AFTER_KILL_ERROR if you want the kill command to
-   continue processing arguments after one of them fails. */
-#define CONTINUE_AFTER_KILL_ERROR
-
-/* Define BREAK_COMPLAINS if you want the non-standard, but useful
-   error messages about `break' and `continue' out of context. */
-#define BREAK_COMPLAINS
-
-/* Define HELP_BUILTIN if you want the `help' shell builtin and the long
-   documentation strings compiled into the shell. */
-#define HELP_BUILTIN
-
-/* Define RESTRICTED_SHELL if you want the generated shell to have the
-   ability to be a restricted one.  The shell thus generated can become
-   restricted by being run with the name "rbash", or by setting the -r
-   flag. */
-#define RESTRICTED_SHELL
-
-/* If the shell is called by this name, it will become restricted. */
-#if defined (RESTRICTED_SHELL)
-#define RESTRICTED_SHELL_NAME "rbash"
-#endif
-
-/* Define DISABLED_BUILTINS if you want "builtin foo" to always run the
-   shell builtin "foo", even if it has been disabled with "enable -n foo". */
-/* #define DISABLED_BUILTINS */
-
-/* Define PROCESS_SUBSTITUTION if you want the K*rn shell-like process
-   substitution features "<(file)". */
-/* Right now, you cannot do this on machines without fully operational
-   FIFO support.  This currently include NeXT and Alliant. */
-#if !defined (MKFIFO_MISSING) || defined (HAVE_DEV_FD)
-#  define PROCESS_SUBSTITUTION
-#endif /* !MKFIFO_MISSING */
-
-/* Define PROMPT_STRING_DECODE if you want the backslash-escaped special
-   characters in PS1 and PS2 expanded.  Variable expansion will still be
-   performed. */
-#define PROMPT_STRING_DECODE
-
-/* Define BUFFERED_INPUT if you want the shell to do its own input
-   buffering. */
-#define BUFFERED_INPUT
-
-/* Define ONESHOT if you want sh -c 'command' to avoid forking to execute
-   `command' whenever possible. */
-#define ONESHOT
-
-/* Default primary and secondary prompt strings. */
-#define PPROMPT "\\s\\$ "
-#define SPROMPT "> "
-
-/* Define SELECT_COMMAND if you want the Korn-shell style `select' command:
-       select word in word_list; do command_list; done */
-#define SELECT_COMMAND
-
-/* Define ARRAY_VARS if you want ksh-style one-dimensional array variables. */
-#define ARRAY_VARS
-
-#endif /* !_CONFIG_H_ */
diff --git a/CWRU/old-conf/config.h.mini b/CWRU/old-conf/config.h.mini
deleted file mode 100644 (file)
index 3c967ac..0000000
+++ /dev/null
@@ -1,191 +0,0 @@
-/* config.h -- Configuration file for bash. */
-
-/* This is a `minimal' configuration file.  It will create a shell without:
-       job control
-       aliases
-       pushd and popd
-       readline
-       history
-       restricted shell mode
-       `disabled' builtins (builtin xxx finds xxx even after enable -n xxx)
-       process substitution
-       prompt string decoding (though variable expansion is still done)
-       the `select' command
-       the `help' builtin
-*/
-       
-/* Copyright (C) 1987,1991 Free Software Foundation, Inc.
-
-   This file is part of GNU Bash, the Bourne Again SHell.
-
-   Bash is free software; you can redistribute it and/or modify it
-   under the terms of the GNU General Public License as published by
-   the Free Software Foundation; either version 1, or (at your option)
-   any later version.
-
-   Bash 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 General Public
-   License for more details.
-
-   You should have received a copy of the GNU General Public License
-   along with Bash; see the file COPYING.  If not, write to the Free
-   Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */
-
-#if !defined (_CONFIG_H_)
-#define _CONFIG_H_
-
-#include "memalloc.h"
-
-#if defined (HPUX) || defined (UNIXPC) || defined (Xenix)
-#  if !defined (USG)
-#    define USG
-#  endif
-#endif
-
-#if defined (HAVE_UNISTD_H) && !defined (BUILDING_MAKEFILE)
-#include <unistd.h>
-#endif
-
-/* Define JOB_CONTROL if your operating system supports
-   BSD-like job control. */
-/* #define JOB_CONTROL */
-
-/* Note that vanilla System V machines don't support BSD job control,
-   although some do support Posix job control. */
-#if defined (USG) && !defined (_POSIX_JOB_CONTROL)
-#  undef JOB_CONTROL
-#endif /* USG && !_POSIX_JOB_CONTROL */
-
-/* Define ALIAS if you want the alias features. */
-/* #define ALIAS */
-
-/* Define PUSHD_AND_POPD if you want those commands to be compiled in.
-   (Also the `dirs' commands.) */
-/* #define PUSHD_AND_POPD */
-
-/* Define BRACE_EXPANSION if you want curly brace expansion a la Csh:
-   foo{a,b} -> fooa foob.  Even if this is compiled in (the default) you
-   can turn it off at shell startup with `-nobraceexpansion', or during
-   shell execution with `set +o braceexpand'. */
-/* #define BRACE_EXPANSION */
-
-/* Define READLINE to get the nifty/glitzy editing features.
-   This is on by default.  You can turn it off interactively
-   with the -nolineediting flag. */
-/* #define READLINE */
-
-/* Define BANG_HISTORY if you want to have Csh style "!" history expansion.
-   This is unrelated to READLINE. */
-/* #define BANG_HISTORY */
-
-/* Define HISTORY if you want to have access to previously typed commands.
-
-   If both HISTORY and READLINE are defined, you can get at the commands
-   with line editing commands, and you can directly manipulate the history
-   from the command line.
-
-   If only HISTORY is defined, the `fc' and `history' builtins are
-   available. */
-/* #define HISTORY */
-
-#if defined (BANG_HISTORY) && !defined (HISTORY)
-   /* BANG_HISTORY requires HISTORY. */
-#  define HISTORY
-#endif /* BANG_HISTORY && !HISTORY */
-
-#if defined (READLINE) && !defined (HISTORY)
-#  define HISTORY
-#endif
-
-/* Define this if you want completion that puts all alternatives into
-   a brace expansion shell expression. */
-#if defined (BRACE_EXPANSION) && defined (READLINE)
-#  define BRACE_COMPLETION
-#endif /* BRACE_EXPANSION */
-
-/* The default value of the PATH variable. */
-#define DEFAULT_PATH_VALUE \
-  "/usr/gnu/bin:/usr/local/bin:/usr/ucb:/bin:/usr/bin:."
-
-/* The value for PATH when invoking `command -p'.  This is only used when
-   the Posix.2 confstr () function, or CS_PATH define are not present. */
-#define STANDARD_UTILS_PATH \
-  "/bin:/usr/bin:/usr/ucb:/usr/sbin:/etc:/usr/etc"
-
-/* The default directory in which to look for mail files when
-   checking mail.  The trailing slash is required. */
-#if defined (USG)
-#  define DEFAULT_MAIL_PATH "/usr/mail/"
-#else
-#  define DEFAULT_MAIL_PATH "/usr/spool/mail/"
-#endif
-
-/* Define V9_ECHO if you want to give the echo builtin backslash-escape
-   interpretation using the -e option, in the style of the Bell Labs 9th
-   Edition version of echo. */
-#define V9_ECHO
-
-/* Define DEFAULT_ECHO_TO_USG if you want the echo builtin to interpret
-   the backslash-escape characters by default, like the System V echo.
-   This requires that V9_ECHO be defined. */
-/* #define DEFAULT_ECHO_TO_USG */
-#if !defined (V9_ECHO)
-#  undef DEFAULT_ECHO_TO_USG
-#endif
-
-/* Define CONTINUE_AFTER_KILL_ERROR if you want the kill command to
-   continue processing arguments after one of them fails. */
-#define CONTINUE_AFTER_KILL_ERROR
-
-/* Define BREAK_COMPLAINS if you want the non-standard, but useful
-   error messages about `break' and `continue' out of context. */
-#define BREAK_COMPLAINS
-
-/* Define HELP_BUILTIN if you want the `help' shell builtin and the long
-   documentation strings compiled into the shell. */   
-/* #define HELP_BUILTIN */
-
-/* Define RESTRICTED_SHELL if you want the generated shell to have the
-   ability to be a restricted one.  The shell thus generated can become
-   restricted by being run with the name "rbash", or by setting the -r
-   flag. */
-/* #define RESTRICTED_SHELL */
-
-/* Define DISABLED_BUILTINS if you want "builtin foo" to always run the
-   shell builtin "foo", even if it has been disabled with "enable -n foo". */
-/* #define DISABLED_BUILTINS */
-
-/* Define PROCESS_SUBSTITUTION if you want the K*rn shell-like process
-   substitution features "<(file)". */
-/* Right now, you cannot do this on machines without fully operational
-   FIFO support.  This currently include NeXT and Alliant. */
-#if !defined (MKFIFO_MISSING)
-#  define PROCESS_SUBSTITUTION
-#endif /* !MKFIFO_MISSING */
-
-/* Define PROMPT_STRING_DECODE if you want the backslash-escaped special
-   characters in PS1 and PS2 expanded.  Variable expansion will still be
-   performed. */
-/* #define PROMPT_STRING_DECODE */
-
-/* Define BUFFERED_INPUT if you want the shell to do its own input
-   buffering. */
-#define BUFFERED_INPUT
-
-/* Define ONESHOT if you want sh -c 'command' to avoid forking to execute
-   `command' whenever possible. */
-#define ONESHOT
-
-/* Default primary and secondary prompt strings. */
-#define PPROMPT "\\s\\$ "
-#define SPROMPT "> "
-
-/* Define SELECT_COMMAND if you want the Korn-shell style `select' command:
-       select word in word_list; do command_list; done */
-/* #define SELECT_COMMAND */
-
-/* Define ARRAY if you want ksh-style one-dimensional arrays. */
-/* #define ARRAY_VARS */
-
-#endif /* !_CONFIG_H_ */
diff --git a/CWRU/old-conf/configure b/CWRU/old-conf/configure
deleted file mode 100755 (executable)
index 53e10b6..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-#!/bin/sh
-#
-# This shell script does nothing since Bash doesn't require
-# configuration to be forced on it; it auto-configures.  You can
-# change the location of the source directory with +srcdir.
-#
-echo "Bash is configured to auto configure."
-exit 0
diff --git a/CWRU/old-conf/cpp-Makefile b/CWRU/old-conf/cpp-Makefile
deleted file mode 100644 (file)
index 3e8887a..0000000
+++ /dev/null
@@ -1,1379 +0,0 @@
-/* This -*- C -*- file (cpp-Makefile) is run through the C preprocessor
-   to produce bash-Makefile which is machine specific.
-
-   If you have Gcc and/or Bison, you might wish to mention that right
-   below here.
-
-   Since this is to become a Makefile, blank lines which appear outside
-   of comments may not contain a TAB character.
-
-   Copyright (C) 1987,1991 Free Software Foundation, Inc.
-
-   This file is part of GNU Bash, the Bourne Again SHell.
-
-   Bash is free software; you can redistribute it and/or modify it under
-   the terms of the GNU General Public License as published by the Free
-   Software Foundation; either version 1, or (at your option) any later
-   version.
-
-   Bash 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 General Public License
-   for more details.
-
-   You should have received a copy of the GNU General Public License along
-   with Bash; see the file COPYING.  If not, write to the Free Software
-   Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */
-
-/**/# This Makefile is automagically made from cpp-Makefile.  You should
-/**/# not be editing this file; edit cpp-Makefile, machines.h, or
-/**/# support/mksysdefs instead.  Then, assuming the edits were required
-/**/# to compile Bash on your system, mail the changes you had to make to
-/**/# bash-maintainers@prep.ai.mit.edu.  We will do our best to incorporate
-/**/# them into the next release.
-
-/**/# Make sure the first target in the makefile is the right one
-all: .made
-
-/* **************************************************************** */
-/*                                                                 */
-/*                     Which compiler are you using?               */
-/*                                                                 */
-/* **************************************************************** */
-
-/* Define HAVE_GCC if you have the GNU C compiler. */
-/* #define HAVE_GCC */
-
-#if defined (__GNUC__) && !defined (HAVE_GCC) && !defined (GCC_STANDARD)
-#  define HAVE_GCC
-#endif
-
-/* Undefine HAVE_FIXED_INCLUDES if you are not using GCC with the fixed
-   header files. */
-#if defined (HAVE_GCC) && !defined (HAVE_FIXED_INCLUDES)
-#  define HAVE_FIXED_INCLUDES
-#endif /* HAVE_GCC && !HAVE_FIXED_INCLUDES */
-
-/* Include some boilerplate Gnu makefile definitions. */
-prefix = /usr/local
-
-/**/#prefix = @prefix@
-
-exec_prefix = $(prefix)
-bindir = $(exec_prefix)/bin
-libdir = $(exec_prefix)/lib
-
-manroot = $(prefix)/man
-
-man1ext = 1
-man1dir = $(manroot)/man$(man1ext)
-man3ext = 3
-man3dir = $(manroot)/man$(man3ext)
-mandir = $(man1dir)
-manext = $(man1ext)
-
-infodir = $(prefix)/info
-
-srcdir = .
-/**/#srcdir = @srcdir@
-
-VPATH = .:$(srcdir)
-
-incdir = $(prefix)/include
-/**/#incdir = @incdir@
-
-/* If you have purify, and want to use it, uncomment this definition or
-   run the make as `make -f bash-Makefile bash PURIFY=purify'. */
-PURIFY = # purify
-
-/* This includes the appropriate description for the machine that you are
-   using (we hope).  If the compilation doesn't work correctly, then you
-   will have to edit the file `machines.h' to include a description for the
-   machine that your Cpp uniquely identifies this as.  For example, Sun 4's
-   are recognized by the Cpp identifier `sparc', Vax is recognized with `vax',
-   etc.  The order of these files is very important.  Config.h must come last,
-   since it is capable of undef'ing various things. */
-#define BUILDING_MAKEFILE   /* Tell config.h to avoid #including anything. */
-#include "sysdefs.h"
-#include "machines.h"
-#include "config.h"
-
-/**/# Here is a rule for making .o files from .c files that does not
-/**/# force the type of the machine (like -M_MACHINE) into the flags.
-.c.o:
-       $(RM) $@
-       $(CC) $(CCFLAGS) $(CPPFLAGS) -c $<
-
-YACC = YACC_PROG
-
-#if defined (HAVE_GCC)
-#  if defined (GCC_FLAGS)
-GCC_EXTRAS = GCC_FLAGS
-#  endif /* GCC_FLAGS */
-#  if !defined (HAVE_FIXED_INCLUDES)
-/* This is guaranteed to work, even if you have the fixed includes!
-   (Unless, of course, you have the fixed include files installed in
-   /usr/include.  Then it will break.) */
-CC = gcc -traditional -I/usr/include $(GCC_EXTRAS)
-#  else /* HAVE_FIXED_INCLUDES */
-CC = gcc $(GCC_EXTRAS)
-#  endif /* HAVE_FIXED_INCLUDES */
-#else /* !HAVE_GCC */
-CC = CPP_CC
-#endif /* !HAVE_GCC */
-
-SHELL=/bin/sh
-CP = cp
-RM = rm -f
-AR = ar
-#if defined (RANLIB_LOCATION)
-RANLIB = RANLIB_LOCATION
-#else
-RANLIB = ranlib
-#endif /* RANLIB_LOCATION */
-
-INSTALL_PROGRAM = $(SUPPORT_SRC)install.sh -c -s
-INSTALL_DATA = $(SUPPORT_SRC)install -c -m 644
-
-COMPRESS = gzip
-COMPRESS_EXT = .gz
-
-Machine = M_MACHINE
-OS = M_OS
-
-/**/# PROFILE_FLAGS is either -pg, to generate profiling info for use
-/**/# with gprof, or nothing (the default).
-PROFILE_FLAGS=
-
-/* These are defined in machines.h or sysdefs.h */
-#if defined (SYSDEP_CFLAGS)
-/**/# This system has some peculiar flags that must be passed to the
-/**/# the C compiler (or to cpp).
-SYSDEP = SYSDEP_CFLAGS
-#endif /* SYSDEP_CFLAGS */
-
-#if defined (SYSDEP_LDFLAGS)
-/**/# This system has some peculiar flags that must be passed to the
-/**/# link editor (ld).
-SYSDEP_LD = SYSDEP_LDFLAGS
-#endif /* SYSDEP_LDFLAGS */
-
-#if defined (HAVE_SETLINEBUF)
-/**/# This system has the setlinebuf () call.
-LINEBUF = -DHAVE_SETLINEBUF
-#endif
-
-#if defined (HAVE_VFPRINTF)
-/**/# This system has the vprintf () and vfprintf () calls.
-VPRINTF = -DHAVE_VFPRINTF
-#endif /* HAVE_VFPRINTF */
-
-#if defined (USE_VFPRINTF_EMULATION)
-VPRINTF = -DHAVE_VFPRINTF -DUSE_VFPRINTF_EMULATION
-#endif /* USE_VFPRINTF_EMULATION */
-
-#if defined (VOID_SIGHANDLER)
-/**/# The signal () call provided by the system returns a pointer to
-/**/# a function returning void.  The signal handlers themselves are
-/**/# thus void functions.
-SIGHANDLER = -DVOID_SIGHANDLER
-#endif
-
-#if defined (HAVE_STRERROR)
-/**/# This system has the strerror () function.
-STRERROR = -DHAVE_STRERROR
-#endif
-
-#if defined (HAVE_GETGROUPS)
-/**/# This system has multiple groups.
-GROUPS = -DHAVE_GETGROUPS
-#endif
-
-#if defined (HAVE_GETWD)
-/**/# This system has the getwd () call.
-GETWD = -DHAVE_GETWD
-#endif
-
-#if defined (HAVE_GETCWD)
-/**/# This system has the getcwd () call.
-GETCWD = -DHAVE_GETCWD
-#endif
-
-#if defined (HAVE_DUP2)
-/**/# This system has a working version of dup2 ().
-DUP2 = -DHAVE_DUP2
-#endif /* HAVE_DUP2 */
-
-#if defined (HAVE_DIRENT)
-/**/# This system uses struct dirent for reading directories with readdir.
-DIRENT = -DHAVE_DIRENT
-#endif /* HAVE_DIRENT */
-
-#if defined (HAVE_STRCHR)
-/**/# This system has strchr () and strrchr () string functions.
-STRCHR = -DHAVE_STRCHR
-#endif /* HAVE_STRCHR */
-
-#if defined (HAVE_STRCASECMP)
-STRCASE = -DHAVE_STRCASECMP
-#endif /* HAVE_STRCASECMP */
-
-#if defined (HAVE_SYS_SIGLIST)
-SIGLIST = -DHAVE_SYS_SIGLIST
-#endif /* HAVE_SYS_SIGLIST */
-
-#if defined (HAVE_DLOPEN)
-DLOPEN = -DHAVE_DLOPEN
-#endif
-
-#if defined (HAVE_DLSYM)
-DLSYM = -DHAVE_DLSYM
-#endif
-
-#if defined (HAVE_DLCLOSE)
-DLCLOSE = -DHAVE_DLCLOSE
-#endif
-
-#if defined (HAVE_ALLOCA)
-ALLOCA_DEFINE = -DHAVE_ALLOCA
-#else
-ALLOCA_DEFINE =
-#endif /* HAVE_ALLOCA */
-
-#if defined (HAVE_SYS_STREAM_H)
-/**/# This system has <sys/stream.h>
-STREAM = -DHAVE_SYS_STREAM_H
-#endif /* HAVE_SYS_STREAM_H */
-
-#if defined (HAVE_SYS_PTEM_H)
-/**/# This system has <sys/ptem.h>
-PTEM = -DHAVE_SYS_PTEM_H
-#endif /* HAVE_SYS_PTEM_H */
-
-#if defined (HAVE_SYS_PTE_H)
-/**/# This system has <sys/pte.h>
-PTE = -DHAVE_SYS_PTE_H
-#endif /* HAVE_SYS_PTE_H */
-
-/**/# This system has <unistd.h>.
-#if defined (HAVE_UNISTD_H)
-UNISTD = -DHAVE_UNISTD_H
-#endif
-
-/**/# This system has <stdlib.h>
-#if defined (HAVE_STDLIB_H)
-STDLIB = -DHAVE_STDLIB_H
-#endif
-
-/**/# This system has <limits.h>
-#if defined (HAVE_LIMITS_H)
-LIMITSH = -DHAVE_LIMITS_H
-#endif
-
-/**/# This system has <locale.h>
-#if defined (HAVE_LOCALE_H)
-LOCALE = -DHAVE_LOCALE_H
-#endif
-
-#if defined (HAVE_ALLOCA_H)
-ALLOCA_H_DEFINE = -DHAVE_ALLOCA_H
-#else
-ALLOCA_H_DEFINE =
-#endif /* HAVE_ALLOCA_H */
-
-#if defined (HAVE_RESOURCE)
-/**/# This system has <sys/resource.h>
-RESOURCE = -DHAVE_RESOURCE
-#endif
-
-#if defined (HAVE_SYS_PARAM)
-/**/# This system has <sys/param.h>
-PARAM = -DHAVE_SYS_PARAM
-#endif
-
-#if defined (HAVE_WAIT_H)
-/**/# This system has <sys/wait.h>
-WAITH = -DHAVE_WAIT_H
-#endif
-
-#if defined (HAVE_DIRENT_H)
-/**/# This system has /usr/include/dirent.h
-DIRENTH = -DHAVE_DIRENT_H
-#endif /* HAVE_DIRENT_H */
-
-#if defined (HAVE_STRING_H)
-/**/# This system has /usr/include/string.h
-STRINGH = -DHAVE_STRING_H
-#endif /* HAVE_STRING_H */
-
-#if defined (HAVE_VARARGS_H)
-/**/# This system has /usr/include/varargs.h
-VARARGSH = -DHAVE_VARARGS_H
-#endif /* HAVE_VARARGS_H */
-
-#if defined (HAVE_DEV_FD)
-/**/# This system has the /dev/fd directory for naming open files.
-DEVFD = -DHAVE_DEV_FD
-#endif /* HAVE_DEV_FD */
-
-/**/# The GNU coding standards don't recognize the possibility that
-/**/# other information besides optimization and debugging might be
-/**/# passed to cc.  A different name should have been used.
-CFLAGS = -O -g
-
-SYSTEM_FLAGS = $(LINEBUF) $(VPRINTF) $(UNISTD) $(STDLIB) $(LIMITSH) $(LOCALE) \
-       $(GROUPS) $(RESOURCE) $(PARAM) $(SIGHANDLER) $(SYSDEP) $(WAITH) \
-       $(GETWD) $(GETCWD) $(DUP2) $(STRERROR) $(DIRENT) $(DIRENTH) $(STRINGH) \
-       $(VARARGSH) $(STRCHR) $(STRCASE) $(DEVFD) $(DLOPEN) $(DLSYM) \
-       $(DLCLOSE) $(SIGLIST) -D$(Machine) -D$(OS) -DPROGRAM='"$(Program)"' \
-       -DHOSTTYPE='$(Machine)' -DOSTYPE='$(OS)'
-
-/* Compilation flags to use in the shell directory and to pass to builds
-   in subdirectories (readline, termcap) to ensure that alloca is treated
-   in a consistent fashion. */
-ALLOCA_CFLAGS = $(ALLOCA_DEFINE) $(ALLOCA_H_DEFINE)
-
-LDFLAGS        = $(NOSHARE) $(SYSDEP_LD) $(EXTRA_LD_PATH) $(PROFILE_FLAGS) $(CFLAGS)
-CCFLAGS        = $(PROFILE_FLAGS) $(SYSTEM_FLAGS) -DSHELL $(ALLOCA_CFLAGS) \
-         $(MALLOC_CFLAGS) $(CFLAGS)
-CPPFLAGS= -I. -I$(srcdir) -I$(LIBSRC) -I$(incdir)
-GCC_LINT_FLAGS = -ansi -Wall -Wshadow -Wpointer-arith -Wcast-qual \
-                -Wwrite-strings -Werror -Wstrict-prototypes \
-                -Wmissing-prototypes
-GCC_LINT_CFLAGS = $(CCFLAGS) $(GCC_LINT_FLAGS)
-
-/* It is conceivable that you wish to edit some things beyond this point,
-   but I guess that it is highly unlikely, and may give you a headache. */
-
-/* **************************************************************** */
-/*                                                                 */
-/*                 How to Build the support libraries.             */
-/*                                                                 */
-/* **************************************************************** */
-
-/**/# The location of sources for the support libraries.
-LIBPATH = ./lib/
-LIBSRC = $(srcdir)/$(LIBPATH)
-
-/**/# Preface building with the full path of the current library source.
-LIBINC_DECL  = topdir=`sh $(srcdir)/support/srcdir $(srcdir)`; export topdir
-LIBINC_USAGE = "-I$${topdir} -I$${topdir}/$(LIBPATH) -I$(LIBSRC)"
-
-/* Defines used when building libraries. */
-#define LIBMAKE_FLAGS CFLAGS='$(LIBRARY_CFLAGS) '$(LIBINC_USAGE) \
-       CPPFLAGS='$(CPPFLAGS)' LDFLAGS='$(LDFLAGS)' \
-       RANLIB='$(RANLIB)' AR='$(AR)' CC='$(CC)' RM='$(RM)' \
-
-/**/# Flags used when building libraries.
-LIBRARY_CFLAGS  = $(PROFILE_FLAGS) $(CFLAGS) $(SIGHANDLER) $(ALLOCA_CFLAGS) \
-                 $(SYSDEP) $(DIRENT) $(DIRENTH) $(STRINGH) $(VARARGSH) \
-                 $(PTEM) $(PTE) $(STREAM) $(STRERROR) $(RESOURCE) \
-                 $(STRCHR) -D$(Machine) -D$(OS) $(UNISTD) $(LIMITSH) \
-                 $(STRCASE) $(STDLIB) -DSHELL
-
-/* Macro used to build a library. */
-#define build_lib_in_dir(directory, target, srcdef, makefile) \
-       @echo "Building in " directory "..."; \
-       sh $(SUPPORT_SRC)mkdirs directory ; \
-       ($(LIBINC_DECL); cd directory; \
-        if [ ! -f Makefile ]; then cp makefile Makefile; fi; \
-        $(MAKE) target $(MFLAGS) LIBMAKE_FLAGS srcdef)
-
-BUILTIN_CFLAGS = $(CCFLAGS)
-BUILTIN_LIBFLAGS = "-I. -I$${topdir} -I$${topdir}/$(LIBPATH) -I$(incdir)"
-
-/* The builtins are somewhat special in that more information is needed
-   to compile them correctly. */
-#define build_builtins(target) \
-       @sh $(SUPPORT_SRC)mkdirs $(DEFDIR) ; \
-       ($(LIBINC_DECL); cd $(DEFDIR); \
-        if [ ! -f Makefile ]; then \
-               cp $(BUILTIN_ABSSRC)/Makefile Makefile; \
-        fi; \
-        $(MAKE) $(MFLAGS) target \
-        srcdir=$(BUILTIN_ABSSRC) CPPFLAGS='' \
-        CFLAGS='$(CCFLAGS) -I$(BUILTIN_ABSSRC) '$(BUILTIN_LIBFLAGS) \
-        LDFLAGS='$(LDFLAGS)' RANLIB='$(RANLIB)' AR='$(AR)' CC='$(CC)' \
-        RM='$(RM)' RL_LIBSRC='$(RL_ABSSRC)' \
-        DIRECTDEFINE='-D '$(BUILTIN_SRCDIR))
-
-/**/# The name of this program.
-Program = bash
-
-/* **************************************************************** */
-/*                                                                  */
-/*                 Support for desired libraries.                   */
-/*    This includes Termcap, Glob, Tilde, History, and Readline.    */
-/*                                                                  */
-/* **************************************************************** */
-
-/* Does this machine's linker need a space after -L? */
-#if defined (HAVE_GCC)
-#  undef SEARCH_LIB_NEEDS_SPACE
-#endif /* HAVE_GCC */
-
-#if defined (SEARCH_LIB_NEEDS_SPACE)
-/**/# The native compiler for this machines requires a space after '-L'.
-SEARCH_LIB = -L $(UNSET_VARIABLE_CREATES_SPACE)
-#else
-/**/# The compiler being used to build Bash can handle -L/library/path.
-SEARCH_LIB = -L
-#endif /* !SEARCH_LIB_NEEDS_SPACE */
-
-#if defined (EXTRA_LIB_SEARCH_PATH)
-/**/# Additional instructions to the linker telling it how to find libraries.
-LOCAL_LD_PATH = EXTRA_LIB_SEARCH_PATH
-EXTRA_LD_PATH = $(SEARCH_LIB)$(LOCAL_LD_PATH)
-#endif /* EXTRA_LIB_SEARCH_PATH */
-
-/* Right now we assume that you have the full source code to Bash.  If
-   you simply have the library and header files installed, then
-   undefine HAVE_READLINE_SOURCE. */
-#define HAVE_READLINE_SOURCE
-
-#if defined (HAVE_READLINE_SOURCE)
-
-RL_LIBSRC = $(LIBSRC)readline/
-RL_LIBDOC = $(RL_LIBSRC)doc/
-RL_LIBDIR = $(LIBPATH)readline/
-RL_ABSSRC = $${topdir}/$(RL_LIBDIR)
-
-READLINE_LIBRARY = $(RL_LIBDIR)libreadline.a
-
-/**/# The source, object and documentation of the GNU Readline library.
-READLINE_SOURCE        = $(RL_LIBSRC)rldefs.h $(RL_LIBSRC)rlconf.h \
-                 $(RL_LIBSRC)readline.h \
-                 $(RL_LIBSRC)chardefs.h $(RL_LIBSRC)keymaps.h \
-                 $(RL_LIBSRC)history.h $(RL_LIBSRC)histlib.h \
-                 $(RL_LIBSRC)posixstat.h $(RL_LIBSRC)tilde.h \
-                 $(RL_LIBSRC)funmap.c $(RL_LIBSRC)emacs_keymap.c \
-                 $(RL_LIBSRC)search.c $(RL_LIBSRC)vi_keymap.c \
-                 $(RL_LIBSRC)keymaps.c $(RL_LIBSRC)parens.c \
-                 $(RL_LIBSRC)vi_mode.c $(RL_LIBSRC)callback.c \
-                 $(RL_LIBSRC)readline.c $(RL_LIBSRC)tilde.c \
-                 $(RL_LIBSRC)rltty.c $(RL_LIBSRC)complete.c \
-                 $(RL_LIBSRC)bind.c $(RL_LIBSRC)isearch.c \
-                 $(RL_LIBSRC)display.c $(RL_LIBSRC)signals.c \
-                 $(RL_LIBSRC)util.c $(RL_LIBSRC)kill.c \
-                 $(RL_LIBSRC)undo.c $(RL_LIBSRC)macro.c \
-                 $(RL_LIBSRC)input.c $(RL_LIBSRC)xmalloc.c \
-                 $(RL_LIBSRC)histexpand.c $(RL_LIBSRC)history.c \
-                 $(RL_LIBSRC)histsearch.c $(RL_LIBSRC)histfile.c
-       
-READLINE_OBJ   = $(RL_LIBDIR)readline.o $(RL_LIBDIR)funmap.o \
-                 $(RL_LIBDIR)parens.o $(RL_LIBDIR)search.o \
-                 $(RL_LIBDIR)keymaps.o $(RL_LIBDIR)xmalloc.o \
-                 $(RL_LIBDIR)rltty.o $(RL_LIBDIR)complete.o \
-                 $(RL_LIBDIR)bind.o $(RL_LIBDIR)isearch.o \
-                 $(RL_LIBDIR)display.o $(RL_LIBDIR)signals.o \
-                 $(RL_LIBDIR)tilde.o $(RL_LIBDIR)util.o \
-                 $(RL_LIBDIR)kill.o $(RL_LIBDIR)undo.o \
-                 $(RL_LIBDIR)macro.o $(RL_LIBDIR)input.o \
-                 $(RL_LIBDIR)callback.o \
-                 $(RL_LIBDIR)history.o $(RL_LIBDIR)histexpand.o \
-                 $(RL_LIBDIR)histsearch.o $(RL_LIBDIR)histfile.o
-
-READLINE_DOC   = $(RL_LIBDOC)rlman.texinfo $(RL_LIBDOC)rluser.texinfo \
-                 $(RL_LIBDOC)rltech.texinfo
-
-READLINE_DOC_SUPPORT  = $(RL_LIBDOC)Makefile $(RL_LIBDOC)readline.dvi \
-                 $(RL_LIBDOC)readline.info
-
-/**/# This has to be written funny to avoid looking like a C comment starter.
-READLINE_EXAMPLES = $(RL_LIBSRC)examples/[a-zA-Z]*.[ch] \
-                   $(RL_LIBSRC)examples/Makefile $(RL_LIBSRC)examples/Inputrc
-
-/**/# Support files for GNU Readline.
-READLINE_SUPPORT = $(RL_LIBSRC)Makefile $(RL_LIBSRC)ChangeLog \
-                  $(RL_LIBSRC)COPYING $(READLINE_EXAMPLES) \
-                  $(READLINE_DOC_SUPPORT)
-
-#else /* !HAVE_READLINE_SOURCE */
-
-#  if defined (READLINE)
-READLINE_LIBRARY = -lreadline
-#  endif /* READLINE */
-RL_LIBDIR = $(srcdir)/$(LIBSRC)readline/
-
-#endif /* !HAVE_READLINE_SOURCE */
-
-#if defined (READLINE)
-/**/# You wish to compile with the line editing features installed.
-READLINE_LIB = -lreadline
-
-/**/# You only need termcap (or curses) if you are linking with GNU Readline.
-#  if defined (USE_TERMCAP_EMULATION)
-TERMCAP_LIB = -lcurses
-#  else  /* !USE_TERMCAP_EMULATION */
-TERMCAP_LIB = -ltermcap
-#  endif /* !USE_TERMCAP_EMULATION */
-
-/**/# Directory list for -L so that the link editor (ld) can find -lreadline.
-#  if !defined (LD_HAS_NO_DASH_L)
-#    if defined (HAVE_READLINE_SOURCE)
-READLINE_LDFLAGS = $(SEARCH_LIB)$(RL_LIBDIR) $(TERMCAP_LDFLAGS)
-#    else
-READLINE_LDFLAGS = $(TERMCAP_LDFLAGS) $(SEARCH_LIB)$(libdir) \
-                  $(SEARCH_LIB)/usr/local/lib
-#    endif /* HAVE_READLINE_SOURCE */
-#  endif /* LD_HAS_NO_DASH_L */
-#endif /* READLINE */
-
-/* Right now we assume that you have the full source code to Bash,
-   including the source code to the history library.  If you only have
-   the library and header files installed, then you can undefine
-   HAVE_HISTORY_SOURCE. */
-#define HAVE_HISTORY_SOURCE
-
-#  if defined (HISTORY) && !defined (READLINE)
-/**/# You are compiling with history features but without line editing.
-HISTORY_LIB = -lhistory
-#  endif /* HISTORY && !READLINE */
-
-#if defined (HAVE_HISTORY_SOURCE)
-
-HIST_LIBSRC = $(LIBSRC)readline/
-HIST_LIBDOC = $(HIST_LIBSRC)doc/
-HIST_LIBDIR = $(LIBPATH)readline/
-HIST_ABSSRC = $${topdir}/$(HIST_LIBDIR)/
-
-/* If you are building with readline, then you do not explicitly need the
-   history library. */
-#  if defined (READLINE)
-HISTORY_LIBRARY = 
-#  else
-HISTORY_LIBRARY = $(HIST_LIBDIR)libhistory.a
-#  endif /* !READLINE */
-
-/**/# The source, object and documentation of the history library.
-HISTORY_SOURCE = $(HIST_LIBSRC)history.c $(HIST_LIBSRC)histexpand.c \
-                 $(HIST_LIBSRC)histsearch.c $(HIST_LIBSRC)histfile.c \
-                 $(HIST_LIBSRC)history.h $(HIST_LIBSRC)histlib.h
-HISTORY_OBJ    = $(HIST_LIBDIR)history.o $(HIST_LIBDIR)histexpand.o \
-                 $(HIST_LIBDIR)histsearch.o $(HIST_LIBDIR)histfile.o
-HISTORY_DOC    = $(HIST_LIBDOC)hist.texinfo $(HIST_LIBDOC)hsuser.texinfo \
-                 $(HIST_LIBDOC)hstech.texinfo
-
-/**/# Directory list for -L so that the link editor (ld) can find -lhistory.
-#  if defined (HISTORY) && !defined (READLINE)
-#    if !defined (LD_HAS_NO_DASH_L)
-HISTORY_LDFLAGS = $(SEARCH_LIB)$(HIST_LIBDIR)
-#    endif /* LD_HAS_NO_DASH_L */
-#  endif /* HISTORY && !READLINE */
-#else /* !HAVE_HISTORY_SOURCE */
-#  if defined (HISTORY) && !defined (READLINE)
-HISTORY_LIBRARY = -lhistory
-HISTORY_LDFLAGS = $(SEARCH_LIB)$(libdir) $(SEARCH_LIB)/usr/local/lib
-#  endif /* HISTORY && !READLINE */
-#endif /* !HAVE_HISTORY_SOURCE */
-
-#if defined (USE_GNU_TERMCAP)
-#  define HAVE_TERMCAP_SOURCE
-TERM_LIBSRC = $(LIBSRC)termcap/
-TERM_LIBDIR = $(LIBPATH)termcap/
-TERM_ABSSRC = $${topdir}/$(TERM_LIBDIR)
-
-/**/# The source, object and documentation for the GNU Termcap library.
-TERMCAP_LIBRARY = $(TERM_LIBDIR)libtermcap.a
-
-TERMCAP_SOURCE = $(TERM_LIBSRC)termcap.c $(TERM_LIBSRC)tparam.c
-TERMCAP_OBJ    = $(TERM_LIBDIR)termcap.o $(TERM_LIBDIR)tparam.o
-TERMCAP_DOC    = $(TERM_LIBSRC)termcap.texinfo
-TERMCAP_SUPPORT = $(TERM_LIBSRC)Makefile $(TERM_LIBSRC)ChangeLog
-
-#  if !defined (LD_HAS_NO_DASH_L)
-TERMCAP_LDFLAGS = $(SEARCH_LIB)$(TERM_LIBDIR)
-#  endif /* !LD_HAS_NO_DASH_L */
-#else /* !USE_GNU_TERMCAP */
-
-/* Guessed at symbol for LIBRARIES, below. */
-#  if defined (USE_TERMCAP_EMULATION)
-TERMCAP_LIBRARY = -lcurses
-#  else /* !USE_TERMCAP_EMULATION */
-TERMCAP_LIBRARY = -ltermcap
-#  endif /* !USE_TERMCAP_EMULATION */
-#endif /* !USE_GNU_TERMCAP */
-
-/* The glob library is always used. */
-#define USE_GLOB_LIBRARY
-
-#if defined (USE_GLOB_LIBRARY)
-GLOB_LIBSRC = $(LIBSRC)glob/
-GLOB_LIBDIR = $(LIBPATH)glob/
-GLOB_ABSSRC = $${topdir}/$(GLOB_LIBDIR)
-
-GLOB_LIBRARY = $(GLOB_LIBDIR)libglob.a
-
-GLOB_SOURCE = $(GLOB_LIBSRC)glob.c $(GLOB_LIBSRC)fnmatch.c \
-             $(GLOB_LIBSRC)glob.h $(GLOB_LIBSRC)fnmatch.h
-GLOB_OBJ    = $(GLOB_LIBDIR)glob.o $(GLOB_LIBDIR)fnmatch.o
-GLOB_DOC    = $(GLOB_LIBSRC)doc/glob.texi $(GLOB_LIBSRC)doc/Makefile
-GLOB_SUPPORT= $(GLOB_LIBSRC)Makefile $(GLOB_LIBSRC)ChangeLog
-
-#  if !defined (LD_HAS_NO_DASH_L)
-GLOB_LDFLAGS = $(SEARCH_LIB)$(GLOB_LIBDIR)
-#  endif /* !LD_HAS_NO_DASH_L */
-GLOB_LIB     = -lglob
-#endif /* USE_GLOB_LIBRARY */
-
-/* The source code for the tilde expansion library. */
-#if defined (HAVE_READLINE_SOURCE)
-#  define HAVE_TILDE_SOURCE
-#endif /* HAVE_READLINE_SOURCE */
-
-#if defined (HAVE_TILDE_SOURCE)
-/**/# The source, object and documentation for the GNU Tilde library.
-TILDE_LIBSRC = $(LIBSRC)tilde/
-TILDE_LIBDIR = $(LIBPATH)tilde/
-TILDE_ABSSRC = $${topdir}/$(TILDE_LIBDIR)
-
-TILDE_LIBRARY = $(TILDE_LIBDIR)libtilde.a
-
-TILDE_SOURCE   = $(TILDE_LIBSRC)tilde.c $(TILDE_LIBSRC)tilde.h
-TILDE_OBJ      = $(TILDE_LIBDIR)tilde.o
-TILDE_DOC      = $(TILDE_LIBSRC)doc/tilde.texi $(TILDE_LIBSRC)doc/Makefile
-TILDE_SUPPORT  = $(TILDE_LIBSRC)Makefile $(TILDE_LIBSRC)ChangeLog
-
-TILDE_LIB = -ltilde
-
-#  if !defined (LD_HAS_NO_DASH_L)
-TILDE_LDFLAGS = $(SEARCH_LIB)$(TILDE_LIBDIR)
-#  endif /* !LD_HAS_NO_DASH_L */
-
-#else /* !HAVE_TILDE_SOURCE */
-/**/# Guessed at location of the tilde 
-TILDE_LIBRARY = $(libdir)/libtilde.a
-#endif /* !HAVE_TILDE_SOURCE */
-
-/**/# The directory which contains the source for malloc.  The name must
-/**/# end in a slash, as in "./lib/malloc/".
-ALLOC_LIBSRC = $(LIBSRC)malloc/
-ALLOC_LIBDIR = $(LIBPATH)malloc/
-ALLOC_ABSSRC = $${topdir}/$(ALLOC_LIBDIR)
-
-/**/# Our malloc.
-#if defined (USE_GNU_MALLOC)
-
-MALLOC_OBJ = $(ALLOC_LIBDIR)malloc.o
-MALLOC_SRC = $(ALLOC_LIBSRC)malloc.c
-MALLOC_FLAGS = -Drcheck -Dbotch=programming_error
-
-MALLOC_LIBRARY = $(ALLOC_LIBDIR)libmalloc.a
-
-#  if !defined (LD_HAS_NO_DASH_L)
-MALLOC_LDFLAGS = $(SEARCH_LIB)$(ALLOC_LIBDIR)
-#  endif /* !LD_HAS_NO_DASH_L */
-MALLOC_LIB     = -lmalloc
-
-MALLOC_DEP = $(MALLOC_LIBRARY)
-#endif /* USE_GNU_MALLOC */
-
-/* If this user doesn't have alloca (), then we must try to supply them
-   with a working one. */
-#if !defined (HAVE_ALLOCA)
-ALLOCA = alloca.o
-#  if defined (ALLOCA_ASM)
-ALLOCA_SOURCE = ALLOCA_ASM
-ALLOCA_OBJECT = ALLOCA_OBJ
-#  else
-ALLOCA_SOURCE = alloca.c
-ALLOCA_OBJECT = alloca.o
-#  endif /* ALLOCA_ASM */
-ALLOCA_DEP = $(ALLOC_LIBSRC)$(ALLOCA_SOURCE)
-#endif /* !HAVE_ALLOCA */
-
-/* Protect the `i386' used in the definition of ALLOC_FILES. */
-#if defined (i386)
-#  undef i386
-#  define i386_defined
-#endif /* i386 */
-
-ALLOC_HEADERS = $(ALLOC_LIBSRC)getpagesize.h
-ALLOC_FILES = $(ALLOC_LIBSRC)malloc.c $(ALLOC_LIBSRC)alloca.c \
-             $(ALLOC_LIBSRC)i386-alloca.s $(ALLOC_LIBSRC)x386-alloca.s \
-             $(ALLOC_LIBSRC)xmalloc.c
-
-/* Perhaps restore the `i386' define. */
-#if defined (i386_defined)
-#  define i386
-#  undef i386_defined
-#endif /* i386_defined */
-
-#if defined (USE_GNU_MALLOC)
-$(ALLOC_LIBDIR)libmalloc.a: $(MALLOC_SRC) $(ALLOCA_DEP)
-               @sh $(SUPPORT_SRC)mkdirs $(ALLOC_LIBDIR)
-               @$(RM) $@
-               @($(LIBINC_DECL); cd $(ALLOC_LIBDIR) ; \
-                if [ ! -f Makefile ]; then cp $(ALLOC_ABSSRC)Makefile Makefile ; fi; \
-                $(MAKE) $(MFLAGS) CC=$(CC) \
-                CFLAGS='$(LIBRARY_CFLAGS) $(MALLOC_FLAGS)' \
-                CPPFLAGS='$(CPPFLAGS)' MALLOC_SOURCE=$(MALLOC_SRC) \
-                ALLOCA=$(ALLOCA) RANLIB=$(RANLIB) \
-                ALLOCA_SOURCE=$(ALLOCA_SOURCE) \
-                ALLOCA_OBJECT=$(ALLOCA_OBJECT) \
-                srcdir=$(ALLOC_ABSSRC) libmalloc.a )
-#endif /* USE_GNU_MALLOC */
-
-BASHPOSIX_LIB     = $(LIBSRC)posixheaders/
-BASHPOSIX_SUPPORT = $(BASHPOSIX_LIB)posixstat.h $(BASHPOSIX_LIB)ansi_stdlib.h \
-                   $(BASHPOSIX_LIB)memalloc.h $(BASHPOSIX_LIB)stdc.h
-
-/**/# Declare all of the sources for the libraries that we have.
-LIBRARY_SOURCE  = $(READLINE_SOURCE) $(HISTORY_SOURCE) $(TERMCAP_SOURCE) \
-                 $(GLOB_SOURCE) $(TILDE_SOURCE) $(MALLOC_SOURCE)
-LIBRARY_DOC    = $(READLINE_DOC) $(HISTORY_DOC) $(TERMCAP_DOC) $(GLOB_DOC) \
-                 $(TILDE_DOC) $(MALLOC_DOC)
-LIBRARY_SUPPORT = $(READLINE_SUPPORT) $(HISTORY_SUPPORT) $(TERMCAP_SUPPORT) \
-                 $(GLOB_SUPPORT) $(TILDE_SUPPORT) $(MALLOC_SUPPORT)
-LIBRARY_TAR     = $(LIBRARY_SOURCE) $(LIBRARY_DOC) $(LIBRARY_SUPPORT)
-
-/**/# The order is important.  Most dependent first.
-#if defined (LD_HAS_NO_DASH_L)
-/**/# This linker does not know how to grok the -l flag, or perhaps how
-/**/# to grok the -L flag, or both.
-LIBRARIES = $(READLINE_LIBRARY) $(HISTORY_LIBRARY) $(TERMCAP_LIBRARY) \
-           $(GLOB_LIBRARY) $(TILDE_LIBRARY) $(MALLOC_LIBRARY) $(LOCAL_LIBS)
-#else /* !LD_HAS_NO_DASH_L */
-LIBRARIES = $(READLINE_LIB) $(HISTORY_LIB) $(TERMCAP_LIB) $(GLOB_LIB) \
-           $(TILDE_LIB) $(MALLOC_LIB) $(LOCAL_LIBS)
-#endif /* !LD_HAS_NO_DASH_L */
-
-#if defined (READLINE)
-#  if defined (HAVE_TERMCAP_SOURCE)
-TERMCAP_DEP = $(TERMCAP_LIBRARY)
-#  endif /* HAVE_TERMCAP_SOURCE */
-#  if defined (HAVE_READLINE_SOURCE)
-READLINE_DEP = $(READLINE_LIBRARY)
-#  endif /* HAVE_READLINE_SOURCE */
-#endif /* READLINE */
-
-#if defined (HISTORY) && defined (HAVE_HISTORY_SOURCE) && !defined (READLINE)
-HISTORY_DEP = $(HISTORY_LIBRARY)
-#endif
-
-#if defined (USE_GLOB_LIBRARY)
-GLOB_DEP = $(GLOB_LIBRARY)
-#else
-GLOBC = glob.c fnmatch.c
-GLOBO = glob.o fnmatch.o
-#endif /* USE_GLOB_LIBRARY */
-
-#if defined (HAVE_TILDE_SOURCE)
-TILDE_DEP = $(TILDE_LIBRARY)
-#endif
-
-/**/# Source files for libraries that Bash depends on.
-LIBDEP = $(READLINE_DEP) $(TERMCAP_DEP) $(GLOB_DEP) $(HISTORY_DEP) \
-        $(TILDE_DEP) $(MALLOC_DEP)
-
-/**/# Rules for cleaning the readline and termcap sources.
-#if defined (HAVE_READLINE_SOURCE)
-CLEAN_READLINE = (cd $(RL_LIBDIR); $(MAKE) $(MFLAGS) clean)
-#else
-CLEAN_READLINE = :
-#endif /* !HAVE_READLINE_SOURCE */
-
-#if defined (HAVE_HISTORY_SOURCE)
-#  if !defined (READLINE)
-CLEAN_HISTORY = (cd $(HIST_LIBDIR); $(MAKE) $(MFLAGS) clean)
-#  else
-CLEAN_HISTORY = :
-#  endif /* READLINE */
-#endif /* !HAVE_HISTORY_SOURCE */
-
-#if defined (HAVE_TERMCAP_SOURCE)
-CLEAN_TERMCAP = (cd $(TERM_LIBDIR); $(MAKE) $(MFLAGS) clean)
-#else
-CLEAN_TERMCAP = :
-#endif /* !HAVE_TERMCAP_SOURCE */
-
-#if defined (USE_GLOB_LIBRARY)
-CLEAN_GLOB = (cd $(GLOB_LIBDIR); $(MAKE) $(MFLAGS) clean)
-#else
-CLEAN_GLOB = :
-#endif /* !USE_GLOB_LIBRARY */
-
-#if defined (HAVE_TILDE_SOURCE)
-CLEAN_TILDE = (cd $(TILDE_LIBDIR); $(MAKE) $(MFLAGS) clean)
-#else
-CLEAN_TILDE = :
-#endif /* !HAVE_TILDE_SOURCE */
-
-CLEAN_MALLOC = (cd $(MALLOC_LIBDIR); $(MAKE) $(MFLAGS) clean)
-
-LIBRARY_LDFLAGS = $(READLINE_LDFLAGS) $(HISTORY_LDFLAGS) $(TILDE_LDFLAGS) \
-                 $(GLOB_LDFLAGS) $(MALLOC_LDFLAGS)
-
-#if defined (REQUIRED_LIBRARIES)
-/**/# Locally required libraries.
-LOCAL_LIBS = REQUIRED_LIBRARIES
-#endif /* REQUIRED_LIBRARIES */
-
-BUILTINS_LIB = builtins/libbuiltins.a
-
-/**/# The main source code for the Bourne Again SHell.
-CSOURCES = shell.c parse.y general.c make_cmd.c print_cmd.c y.tab.c \
-          dispose_cmd.c execute_cmd.c variables.c $(GLOBC) version.c \
-          expr.c copy_cmd.c flags.c subst.c hash.c mailcheck.c \
-          test.c trap.c jobs.c nojobs.c $(ALLOC_FILES) braces.c \
-          vprint.c input.c bashhist.c array.c sig.c \
-          unwind_prot.c siglist.c getcwd.c $(RL_SUPPORT_SRC) error.c
-
-HSOURCES = shell.h flags.h trap.h hash.h jobs.h builtins.h alias.c y.tab.h \
-          general.h variables.h config.h $(ALLOC_HEADERS) alias.h maxpath.h \
-          quit.h machines.h posixstat.h filecntl.h unwind_prot.h parser.h \
-          command.h input.h error.h bashansi.h dispose_cmd.h make_cmd.h \
-          subst.h externs.h siglist.h bashhist.h bashline.h bashtypes.h \
-          array.h sig.h mailcheck.h
-
-SOURCES         = $(CSOURCES) $(HSOURCES) $(BUILTIN_DEFS)
-
-/**/# Matching object files.
-OBJECTS         = shell.o y.tab.o general.o make_cmd.o print_cmd.o $(GLOBO) \
-          dispose_cmd.o execute_cmd.o variables.o copy_cmd.o error.o \
-          expr.o flags.o jobs.o subst.o hash.o mailcheck.o test.o \
-          trap.o input.o unwind_prot.o sig.o version.o \
-          alias.o array.o braces.o bracecomp.o bashhist.o bashline.o \
-          getcwd.o siglist.o vprint.o \
-          $(BUILTINS_LIB)
-
-/**/# Where the source code of the shell builtins resides.
-BUILTIN_SRCDIR=$(srcdir)/builtins/
-DEFSRC=$(BUILTIN_SRCDIR)
-/**/# The trailing slash was left off this definition on purpose
-BUILTIN_ABSSRC=$${topdir}/builtins
-DEFDIR = builtins/
-BUILTIN_DEFS = $(DEFSRC)alias.def $(DEFSRC)bind.def $(DEFSRC)break.def \
-              $(DEFSRC)builtin.def $(DEFSRC)cd.def $(DEFSRC)colon.def \
-              $(DEFSRC)command.def $(DEFSRC)declare.def \
-              $(DEFSRC)echo.def $(DEFSRC)enable.def $(DEFSRC)eval.def \
-              $(DEFSRC)exec.def $(DEFSRC)exit.def $(DEFSRC)fc.def \
-              $(DEFSRC)fg_bg.def $(DEFSRC)hash.def $(DEFSRC)help.def \
-              $(DEFSRC)history.def $(DEFSRC)jobs.def $(DEFSRC)kill.def \
-              $(DEFSRC)let.def $(DEFSRC)read.def $(DEFSRC)return.def \
-              $(DEFSRC)set.def $(DEFSRC)setattr.def $(DEFSRC)shift.def \
-              $(DEFSRC)source.def $(DEFSRC)suspend.def $(DEFSRC)test.def \
-              $(DEFSRC)times.def $(DEFSRC)trap.def $(DEFSRC)type.def \
-              $(DEFSRC)ulimit.def $(DEFSRC)umask.def $(DEFSRC)wait.def \
-              $(DEFSRC)getopts.def $(DEFSRC)reserved.def $(DEFSRC)pushd.def \
-              $(DEFSRC)shopt.def
-BUILTIN_C_SRC  = $(DEFSRC)mkbuiltins.c $(DEFSRC)common.c \
-                 $(DEFSRC)hashcom.h $(DEFSRC)/bashgetopt.c $(GETOPT_SOURCE)
-BUILTIN_C_OBJ  = $(DEFDIR)common.o $(DEFDIR)bashgetopt.o
-BUILTIN_OBJS = $(DEFDIR)alias.o $(DEFDIR)bind.o $(DEFDIR)break.o \
-              $(DEFDIR)builtin.o $(DEFDIR)cd.o $(DEFDIR)colon.o \
-              $(DEFDIR)command.o $(DEFDIR)declare.o \
-              $(DEFDIR)echo.o $(DEFDIR)enable.o $(DEFDIR)eval.o \
-              $(DEFDIR)exec.o $(DEFDIR)exit.o $(DEFDIR)fc.o \
-              $(DEFDIR)fg_bg.o $(DEFDIR)hash.o $(DEFDIR)help.o \
-              $(DEFDIR)history.o $(DEFDIR)jobs.o $(DEFDIR)kill.o \
-              $(DEFDIR)let.o $(DEFDIR)pushd.o $(DEFDIR)read.o \
-              $(DEFDIR)return.o $(DEFDIR)shopt.o \
-              $(DEFDIR)set.o $(DEFDIR)setattr.o $(DEFDIR)shift.o \
-              $(DEFDIR)source.o $(DEFDIR)suspend.o $(DEFDIR)test.o \
-              $(DEFDIR)times.o $(DEFDIR)trap.o $(DEFDIR)type.o \
-              $(DEFDIR)ulimit.o $(DEFDIR)umask.o $(DEFDIR)wait.o \
-              $(DEFDIR)getopts.o $(BUILTIN_C_OBJ)
-GETOPT_SOURCE   = $(DEFSRC)getopt.c $(DEFSRC)getopt.h
-PSIZE_SOURCE   = $(DEFSRC)psize.sh $(DEFSRC)psize.c
-BUILTIN_SUPPORT = $(DEFSRC)Makefile $(PSIZE_SOURCE) $(BUILTIN_C_SRC)
-
-/**/# Documentation for the shell.
-DOCDIR = $(srcdir)/documentation/
-
-ENDIAN_SUPPORT = $(SUPPORT_SRC)endian.c
-#if !defined (HAVE_WAIT_H)
-ENDIAN_HEADER = bash_endian.h
-#endif
-
-SIGNAMES_SUPPORT = $(SUPPORT_SRC)mksignames.c
-
-SUPPORT_SRC = $(srcdir)/support/
-SDIR = ./support/
-EXAMPLES = ./examples/
-TEST_SUITE = ./test-suite/
-
-CREATED_SUPPORT = bash_endian.h signames.h sysdefs.h \
-                 $(SDIR)getcppsyms recho tests/recho
-
-/**/# Keep GNU Make from exporting the entire environment for small machines.
-.NOEXPORT:
-
-.made: $(Program) bashbug
-       cp .machine .made
-
-$(Program):  .build $(OBJECTS) $(LIBDEP) $(srcdir)/.distribution
-       $(RM) $@
-       $(PURIFY) $(CC) $(LDFLAGS) $(LIBRARY_LDFLAGS) -o $(Program) $(OBJECTS) $(LIBRARIES)
-       ls -l $(Program)
-       size $(Program)
-
-.build:        $(SOURCES) cpp-Makefile mkversion
-       if ./mkversion -dir $(srcdir) -build; then mv -f newversion.h version.h; fi
-       @echo
-       @echo "   ***************************************************"
-       @echo "   *                                                 *"
-       @echo "   * Making Bash-`cat $(srcdir)/.distribution`.`cat $(srcdir)/.patchlevel` for a $(Machine) running $(OS)"
-       @echo "   *                                                 *"
-       @echo "   ***************************************************"
-       @echo
-       @echo "$(Program) last made for a $(Machine) running $(OS)" >.machine
-
-bashbug: $(SUPPORT_SRC)bashbug.sh cpp-Makefile mkversion
-       @sed -e "s:@MACHINE@:$(Machine):" -e "s:@OS@:$(OS):" \
-            -e "s:@CFLAGS@:$(CCFLAGS):" -e "s:@CC@:$(CC):" \
-            -e "s:@RELEASE@:`cat $(srcdir)/.distribution`:" \
-            -e "s:@PATCHLEVEL@:`cat $(srcdir)/.patchlevel`:" \
-            $(SUPPORT_SRC)bashbug.sh > $@
-       @chmod a+rx bashbug
-
-version.h:     mkversion
-       if ./mkversion -dir $(srcdir) -build; then mv -f newversion.h version.h; fi
-
-y.tab.c: parser-built
-y.tab.h: parser-built
-parser-built:  parse.y parser.h command.h stdc.h input.h
-       $(RM) $@
-       -if test -f y.tab.h; then mv -f y.tab.h old-y.tab.h; fi
-       $(YACC) -d $(srcdir)/parse.y
-       -if cmp -s old-y.tab.h y.tab.h; then mv old-y.tab.h y.tab.h; fi
-       touch $@
-
-#if defined (READLINE) && defined (HAVE_READLINE_SOURCE)
-$(READLINE_LIBRARY): $(READLINE_SOURCE)
-       build_lib_in_dir ($(RL_LIBDIR), libreadline.a, srcdir=$(RL_ABSSRC), $(RL_ABSSRC)Makefile)
-#endif /* READLINE && HAVE_READLINE_SOURCE */
-
-#if defined (HISTORY) && defined (HAVE_HISTORY_SOURCE) && !defined (READLINE)
-$(HISTORY_LIBRARY): $(HISTORY_SOURCE)
-       build_lib_in_dir ($(HIST_LIBDIR), libhistory.a, srcdir=$(HIST_ABSSRC), $(HIST_ABSSRC)Makefile)
-#endif /* HISTORY && HAVE_HISTORY_SOURCE && !READLINE */
-
-#if defined (HAVE_TERMCAP_SOURCE)
-$(TERMCAP_LIBRARY): $(TERMCAP_SOURCE)
-       build_lib_in_dir ($(TERM_LIBDIR), libtermcap.a, srcdir=$(TERM_ABSSRC), $(TERM_ABSSRC)Makefile)
-#endif /* HAVE_TERMCAP_SOURCE */
-
-#if defined (USE_GLOB_LIBRARY)
-$(GLOB_LIBRARY): $(GLOB_SOURCE)
-       build_lib_in_dir ($(GLOB_LIBDIR), libglob.a, srcdir=$(GLOB_ABSSRC), $(GLOB_ABSSRC)Makefile)
-#endif /* USE_GLOB_LIBRARY */
-
-#if defined (HAVE_TILDE_SOURCE)
-$(TILDE_LIBRARY): $(TILDE_SOURCE)
-       build_lib_in_dir ($(TILDE_LIBDIR), libtilde.a, srcdir=$(TILDE_ABSSRC), $(TILDE_ABSSRC)Makefile)
-#endif /* HAVE_TILDE_SOURCE */
-
-mkendian:      $(SUPPORT_SRC)endian.c
-       $(CC) $(CCFLAGS) $(CPPFLAGS) -o $@ $(SUPPORT_SRC)endian.c
-
-bash_endian.h:     mkendian
-       $(RM) $@
-       ./mkendian $@
-
-mksignames:    $(SUPPORT_SRC)mksignames.c
-               $(CC) $(CCFLAGS) $(CPPFLAGS) -o $@ $(SUPPORT_SRC)mksignames.c
-
-signames.h:   mksignames
-       $(RM) $@
-       ./mksignames $@
-
-builtins/libbuiltins.a: $(BUILTIN_OBJS) config.h memalloc.h
-       build_builtins (libbuiltins.a)
-
-builtins/common.o:     $(BUILTIN_SRCDIR)common.c
-       build_builtins (common.o)
-builtins/bashgetopt.o: $(BUILTIN_SRCDIR)bashgetopt.c
-       build_builtins (bashgetopt.o)
-
-builtins/builtext.h: builtins/libbuiltins.a
-
-/* Dependencies for the main bash source. */
-copy_cmd.o: shell.h sig.h command.h stdc.h hash.h
-copy_cmd.o: general.h variables.h config.h memalloc.h quit.h
-copy_cmd.o: dispose_cmd.h make_cmd.h subst.h externs.h
-dispose_cmd.o: shell.h sig.h command.h stdc.h
-dispose_cmd.o: general.h variables.h config.h memalloc.h quit.h
-dispose_cmd.o: dispose_cmd.h make_cmd.h subst.h externs.h
-error.o: error.h
-execute_cmd.o: shell.h sig.h command.h stdc.h y.tab.h posixstat.h flags.h jobs.h
-execute_cmd.o: general.h variables.h config.h memalloc.h quit.h hash.h
-execute_cmd.o: unwind_prot.h siglist.h builtins/builtext.h 
-execute_cmd.o: dispose_cmd.h make_cmd.h subst.h externs.h bashtypes.h
-expr.o: shell.h sig.h command.h stdc.h hash.h
-expr.o: general.h variables.h config.h memalloc.h quit.h
-expr.o: dispose_cmd.h make_cmd.h subst.h externs.h
-flags.o: flags.h stdc.h config.h memalloc.h general.h quit.h
-general.o: shell.h sig.h command.h stdc.h maxpath.h
-general.o: general.h variables.h config.h memalloc.h quit.h machines.h
-general.o: dispose_cmd.h make_cmd.h subst.h externs.h stdc.h
-hash.o: shell.h sig.h command.h stdc.h hash.h
-hash.o: general.h variables.h config.h memalloc.h quit.h
-hash.o: dispose_cmd.h make_cmd.h subst.h externs.h stdc.h
-jobs.o: shell.h sig.h command.h stdc.h hash.h trap.h jobs.h siglist.h
-jobs.o: general.h variables.h config.h memalloc.h quit.h
-jobs.o: dispose_cmd.h make_cmd.h subst.h externs.h builtins/builtext.h
-mailcheck.o: posixstat.h maxpath.h variables.h
-mailcheck.o: hash.h quit.h mailcheck.h
-make_cmd.o: shell.h sig.h command.h stdc.h flags.h input.h bashtypes.h
-make_cmd.o: general.h variables.h config.h memalloc.h quit.h
-make_cmd.o: dispose_cmd.h make_cmd.h subst.h externs.h
-y.tab.o: shell.h sig.h command.h stdc.h flags.h maxpath.h alias.h
-y.tab.o: general.h variables.h config.h memalloc.h quit.h mailcheck.h
-y.tab.o: dispose_cmd.h make_cmd.h subst.h externs.h bashtypes.h bashline.h
-print_cmd.o: shell.h sig.h command.h stdc.h y.tab.h
-print_cmd.o: general.h variables.h config.h memalloc.h quit.h
-print_cmd.o: dispose_cmd.h make_cmd.h subst.h externs.h
-shell.o: shell.h sig.h command.h stdc.h flags.h machines.h stdc.h parser.h
-shell.o: general.h variables.h config.h memalloc.h quit.h
-shell.o: dispose_cmd.h make_cmd.h subst.h externs.h mailcheck.h
-shell.o: posixstat.h filecntl.h jobs.h input.h $(ENDIAN_HEADER)
-subst.o: shell.h sig.h command.h stdc.h flags.h jobs.h siglist.h bashtypes.h
-subst.o: general.h variables.h config.h memalloc.h quit.h
-subst.o: dispose_cmd.h make_cmd.h subst.h externs.h execute_cmd.h
-subst.o: builtins/getopt.h $(GLOB_LIBSRC)glob.h bashline.h
-test.o: posixstat.h
-trap.o: trap.h shell.h sig.h command.h stdc.h hash.h unwind_prot.h signames.h
-trap.o: general.h variables.h config.h memalloc.h quit.h
-trap.o: dispose_cmd.h make_cmd.h subst.h externs.h
-unwind_prot.o: config.h memalloc.h general.h unwind_prot.h sig.h
-variables.o: shell.h sig.h command.h stdc.h hash.h flags.h mailcheck.h
-variables.o: config.h memalloc.h general.h variables.h quit.h
-variables.o: execute_cmd.h dispose_cmd.h make_cmd.h subst.h externs.h
-sig.o: shell.h sig.h command.h stdc.h hash.h flags.h
-sig.o: config.h memalloc.h general.h variables.h quit.h
-sig.o: bashtypes.h jobs.h bashline.h
-version.o: version.h .build
-
-alias.o: ansi_stdlib.h
-bashline.o: ansi_stdlib.h
-variables.o: ansi_stdlib.h
-shell.o: ansi_stdlib.h
-error.o: ansi_stdlib.h
-hash.o: ansi_stdlib.h
-signames.o: ansi_stdlib.h
-expr.o: ansi_stdlib.h
-general.o: ansi_stdlib.h
-input.o: ansi_stdlib.h
-
-#if !defined (JOB_CONTROL)
-jobs.o: nojobs.c
-#endif /* !JOB_CONTROL */
-
-array.o: general.h shell.h sig.h variables.h quit.h config.h memalloc.h
-array.o: command.h error.h maxpath.h unwind_prot.h dispose_cmd.h
-array.o: make_cmd.h subst.h externs.h
-array.o: array.h stdc.h builtins/common.h
-
-braces.o: general.h shell.h sig.h variables.h quit.h config.h memalloc.h
-braces.o: dispose_cmd.h make_cmd.h subst.h externs.h
-braces.o: maxpath.h unwind_prot.h command.h stdc.h
-
-bracecomp.o: bracecomp.c
-bracecomp.o: shell.h sig.h command.h hash.h builtins.h general.h variables.h
-bracecomp.o: quit.h alias.h config.h
-bracecomp.o: dispose_cmd.h make_cmd.h subst.h externs.h stdc.h
-#if defined (HAVE_READLINE_SOURCE)
-bracecomp.o: $(RL_LIBSRC)readline.h
-#endif /* HAVE_READLINE_SOURCE */
-
-bashline.o: shell.h sig.h command.h stdc.h hash.h builtins.h execute_cmd.h
-bashline.o: general.h variables.h config.h memalloc.h quit.h alias.h
-bashline.o: dispose_cmd.h make_cmd.h subst.h externs.h config.h bashline.h
-bashline.o: $(GLOB_LIBSRC)glob.h
-
-bashhist.o: config.h bashansi.h posixstat.h filecntl.h
-bashhist.o: shell.h sig.h command.h stdc.h hash.h builtins.h execute_cmd.h
-bashhist.o: general.h variables.h memalloc.h quit.h alias.h
-bashhist.o: dispose_cmd.h make_cmd.h subst.h externs.h flags.h
-
-/* Dependencies which rely on the user using the source to READLINE. */
-#if defined (READLINE) && defined (HAVE_READLINE_SOURCE)
-bashline.o: $(RL_LIBSRC)chardefs.h $(RL_LIBSRC)readline.h $(RL_LIBSRC)keymaps.h
-y.tab.o: $(RL_LIBSRC)keymaps.h $(RL_LIBSRC)chardefs.h $(RL_LIBSRC)readline.h
-#endif /* READLINE && HAVE_READLINE_SOURCE */
-
-#if defined (HISTORY) && defined (HAVE_HISTORY_SOURCE)
-subst.o: $(HIST_LIBSRC)history.h
-bashline.o: $(HIST_LIBSRC)history.h
-bashhist.o: $(HIST_LIBSRC)history.h
-y.tab.o: $(HIST_LIBSRC)history.h
-#endif /* HISTORY && HAVE_HISTORY_SOURCE */
-
-#if defined (USE_GLOB_LIBRARY)
-subst.o: $(GLOB_LIBSRC)fnmatch.h
-execute_cmd.o: $(GLOB_LIBSRC)fnmatch.h
-bashhist.o: $(GLOB_LIBSRC)fnmatch.h
-#endif /* USE_GLOB_LIBRARY */
-
-#if defined (HAVE_TILDE_SOURCE)
-execute_cmd.o: $(TILDE_LIBSRC)tilde.h
-general.o: $(TILDE_LIBSRC)tilde.h
-mailcheck.o: $(TILDE_LIBSRC)tilde.h
-shell.o: $(TILDE_LIBSRC)tilde.h
-subst.o: $(TILDE_LIBSRC)tilde.h
-variables.o: $(TILDE_LIBSRC)tilde.h
-#endif /* HAVE_TILDE_SOURCE */
-
-/* Dependencies for the shell builtins. */
-builtins/common.o: shell.h sig.h command.h config.h memalloc.h general.h error.h
-builtins/common.o: variables.h input.h $(DEFDIR)hashcom.h siglist.h
-builtins/common.o: quit.h unwind_prot.h maxpath.h jobs.h builtins.h
-builtins/common.o: dispose_cmd.h make_cmd.h subst.h externs.h bashhist.h
-builtins/common.o: execute_cmd.h stdc.h
-builtins/alias.o: command.h config.h memalloc.h error.h general.h maxpath.h
-builtins/alias.o: quit.h builtins/common.h
-builtins/alias.o: shell.h sig.h command.h stdc.h unwind_prot.h variables.h 
-builtins/alias.o: dispose_cmd.h make_cmd.h subst.h externs.h
-builtins/bind.o: command.h config.h memalloc.h error.h general.h maxpath.h
-builtins/bind.o: dispose_cmd.h make_cmd.h subst.h externs.h stdc.h
-builtins/bind.o: shell.h sig.h unwind_prot.h variables.h quit.h
-builtins/bind.o: $(DEFDIR)bashgetopt.h
-builtins/break.o: command.h config.h memalloc.h error.h general.h maxpath.h
-builtins/break.o: shell.h sig.h unwind_prot.h variables.h quit.h
-builtins/break.o: dispose_cmd.h make_cmd.h subst.h externs.h stdc.h
-builtins/builtin.o: command.h config.h memalloc.h error.h general.h maxpath.h
-builtins/builtin.o: quit.h $(DEFDIR)common.h
-builtins/builtin.o: shell.h sig.h unwind_prot.h variables.h 
-builtins/builtin.o: dispose_cmd.h make_cmd.h subst.h externs.h stdc.h
-builtins/cd.o: command.h config.h memalloc.h error.h general.h maxpath.h quit.h 
-builtins/cd.o: shell.h sig.h unwind_prot.h variables.h $(DEFDIR)common.h
-builtins/cd.o: dispose_cmd.h make_cmd.h subst.h externs.h stdc.h
-builtins/command.o: command.h config.h memalloc.h error.h general.h maxpath.h
-builtins/command.o: quit.h $(DEFDIR)bashgetopt.h
-builtins/command.o: shell.h sig.h unwind_prot.h variables.h 
-builtins/command.o: dispose_cmd.h make_cmd.h subst.h externs.h stdc.h
-builtins/declare.o: command.h config.h memalloc.h error.h general.h maxpath.h
-builtins/declare.o: shell.h sig.h unwind_prot.h variables.h quit.h
-builtins/declare.o: dispose_cmd.h make_cmd.h subst.h externs.h stdc.h
-builtins/echo.o: command.h config.h memalloc.h error.h general.h maxpath.h
-builtins/echo.o: shell.h sig.h unwind_prot.h variables.h quit.h
-builtins/echo.o: dispose_cmd.h make_cmd.h subst.h externs.h stdc.h
-builtins/enable.o: command.h config.h memalloc.h error.h general.h maxpath.h
-builtins/enable.o: shell.h sig.h unwind_prot.h variables.h quit.h
-builtins/enable.o: dispose_cmd.h make_cmd.h subst.h externs.h stdc.h
-builtins/eval.o: command.h config.h memalloc.h error.h general.h maxpath.h quit.h 
-builtins/eval.o: shell.h sig.h unwind_prot.h variables.h 
-builtins/eval.o: dispose_cmd.h make_cmd.h subst.h externs.h stdc.h
-builtins/exec.o: command.h config.h memalloc.h error.h general.h maxpath.h quit.h 
-builtins/exec.o: shell.h sig.h unwind_prot.h variables.h $(DEFDIR)common.h stdc.h
-builtins/exec.o: dispose_cmd.h make_cmd.h subst.h externs.h execute_cmd.h
-builtins/exec.o: flags.h
-builtins/exit.o: command.h config.h memalloc.h error.h general.h maxpath.h
-builtins/exit.o: shell.h sig.h unwind_prot.h variables.h quit.h
-builtins/exit.o: dispose_cmd.h make_cmd.h subst.h externs.h stdc.h
-builtins/fc.o: builtins.h command.h stdc.h 
-builtins/fc.o: command.h config.h memalloc.h error.h general.h maxpath.h quit.h 
-builtins/fc.o: flags.h unwind_prot.h variables.h shell.h sig.h 
-builtins/fc.o: dispose_cmd.h make_cmd.h subst.h externs.h stdc.h
-builtins/fc.o: $(DEFDIR)bashgetopt.h bashhist.h
-builtins/fg_bg.o: command.h config.h memalloc.h error.h general.h maxpath.h
-builtins/fg_bg.o: shell.h sig.h unwind_prot.h variables.h quit.h
-builtins/fg_bg.o: dispose_cmd.h make_cmd.h subst.h externs.h stdc.h
-builtins/getopts.o: command.h config.h memalloc.h error.h general.h maxpath.h
-builtins/getopts.o: shell.h sig.h unwind_prot.h variables.h quit.h 
-builtins/getopts.o: dispose_cmd.h make_cmd.h subst.h externs.h stdc.h
-builtins/hash.o: builtins.h command.h execute_cmd.h stdc.h
-builtins/hash.o: command.h config.h memalloc.h error.h general.h maxpath.h
-builtins/hash.o: shell.h sig.h unwind_prot.h variables.h $(DEFDIR)common.h quit.h 
-builtins/help.o: command.h config.h memalloc.h error.h general.h maxpath.h
-builtins/help.o: dispose_cmd.h make_cmd.h subst.h externs.h stdc.h
-builtins/help.o: shell.h sig.h unwind_prot.h variables.h quit.h
-builtins/help.o: $(GLOB_LIBSRC)glob.h
-builtins/history.o: command.h config.h memalloc.h error.h general.h maxpath.h
-builtins/history.o: quit.h dispose_cmd.h make_cmd.h subst.h externs.h stdc.h
-builtins/history.o: filecntl.h shell.h sig.h unwind_prot.h variables.h 
-builtins/history.o: bashhist.h
-builtins/inlib.o: command.h config.h memalloc.h error.h general.h maxpath.h
-builtins/inlib.o: shell.h sig.h unwind_prot.h variables.h quit.h 
-builtins/inlib.o: dispose_cmd.h make_cmd.h subst.h externs.h stdc.h
-builtins/jobs.o: command.h config.h memalloc.h error.h general.h maxpath.h
-builtins/jobs.o: quit.h $(DEFDIR)bashgetopt.h
-builtins/jobs.o: shell.h sig.h unwind_prot.h variables.h 
-builtins/jobs.o: dispose_cmd.h make_cmd.h subst.h externs.h stdc.h
-builtins/kill.o: command.h config.h memalloc.h error.h general.h maxpath.h
-builtins/kill.o: quit.h dispose_cmd.h make_cmd.h subst.h externs.h stdc.h
-builtins/kill.o: shell.h sig.h trap.h unwind_prot.h variables.h 
-builtins/let.o: command.h config.h memalloc.h error.h general.h maxpath.h
-builtins/let.o: quit.h dispose_cmd.h make_cmd.h subst.h externs.h stdc.h
-builtins/let.o: shell.h sig.h unwind_prot.h variables.h 
-builtins/pushd.o: command.h config.h memalloc.h error.h general.h maxpath.h
-builtins/pushd.o: quit.h dispose_cmd.h make_cmd.h subst.h externs.h stdc.h
-builtins/pushd.o: shell.h sig.h unwind_prot.h variables.h $(DEFDIR)common.h
-builtins/read.o: command.h config.h memalloc.h error.h general.h maxpath.h
-builtins/read.o: quit.h dispose_cmd.h make_cmd.h subst.h externs.h stdc.h
-builtins/read.o: shell.h sig.h unwind_prot.h variables.h 
-builtins/return.o: command.h config.h memalloc.h error.h general.h maxpath.h
-builtins/return.o: quit.h dispose_cmd.h make_cmd.h subst.h externs.h stdc.h
-builtins/return.o: shell.h sig.h unwind_prot.h variables.h 
-builtins/set.o: command.h config.h memalloc.h error.h general.h maxpath.h
-builtins/set.o: quit.h dispose_cmd.h make_cmd.h subst.h externs.h
-builtins/set.o: shell.h sig.h unwind_prot.h variables.h flags.h stdc.h
-builtins/setattr.o: command.h config.h memalloc.h error.h general.h maxpath.h
-builtins/setattr.o: quit.h $(DEFDIR)common.h $(DEFDIR)bashgetopt.h
-builtins/setattr.o: shell.h sig.h unwind_prot.h variables.h 
-builtins/setattr.o: dispose_cmd.h make_cmd.h subst.h externs.h stdc.h
-builtins/shift.o: command.h config.h memalloc.h error.h general.h maxpath.h
-builtins/shift.o: quit.h dispose_cmd.h make_cmd.h subst.h externs.h stdc.h
-builtins/shift.o: shell.h sig.h unwind_prot.h variables.h 
-builtins/shift.o: dispose_cmd.h make_cmd.h subst.h externs.h stdc.h
-builtins/source.o: command.h config.h memalloc.h error.h general.h maxpath.h
-builtins/source.o: quit.h dispose_cmd.h make_cmd.h subst.h externs.h stdc.h
-builtins/source.o: shell.h sig.h unwind_prot.h variables.h 
-builtins/suspend.o: command.h config.h memalloc.h error.h general.h maxpath.h
-builtins/suspend.o: quit.h dispose_cmd.h make_cmd.h subst.h externs.h stdc.h
-builtins/suspend.o: shell.h sig.h unwind_prot.h variables.h 
-builtins/test.o: command.h config.h memalloc.h error.h general.h maxpath.h
-builtins/test.o: quit.h dispose_cmd.h make_cmd.h subst.h externs.h stdc.h
-builtins/test.o: shell.h sig.h unwind_prot.h variables.h 
-builtins/times.o: command.h config.h memalloc.h error.h general.h maxpath.h
-builtins/times.o: quit.h dispose_cmd.h make_cmd.h subst.h externs.h stdc.h
-builtins/times.o: shell.h sig.h unwind_prot.h variables.h 
-builtins/trap.o: command.h config.h memalloc.h error.h general.h maxpath.h
-builtins/trap.o: quit.h $(DEFDIR)common.h
-builtins/trap.o: shell.h sig.h unwind_prot.h variables.h 
-builtins/trap.o: dispose_cmd.h make_cmd.h subst.h externs.h stdc.h
-builtins/type.o: command.h config.h memalloc.h error.h general.h maxpath.h
-builtins/type.o: quit.h $(DEFDIR)common.h
-builtins/type.o: shell.h sig.h unwind_prot.h variables.h execute_cmd.h
-builtins/type.o: dispose_cmd.h make_cmd.h subst.h externs.h stdc.h
-builtins/ulimit.o: command.h config.h memalloc.h error.h general.h maxpath.h
-builtins/ulimit.o: quit.h dispose_cmd.h make_cmd.h subst.h externs.h stdc.h
-builtins/ulimit.o: shell.h sig.h unwind_prot.h variables.h 
-builtins/umask.o: command.h config.h memalloc.h error.h general.h maxpath.h
-builtins/umask.o: quit.h dispose_cmd.h make_cmd.h subst.h externs.h stdc.h
-builtins/umask.o: shell.h sig.h unwind_prot.h variables.h 
-builtins/wait.o: command.h config.h memalloc.h error.h general.h maxpath.h
-builtins/wait.o: quit.h dispose_cmd.h make_cmd.h subst.h externs.h stdc.h
-builtins/wait.o: shell.h sig.h unwind_prot.h variables.h
-builtins/shopt.o: command.h config.h memalloc.h error.h general.h
-builtins/shopt.o: quit.h dispose_cmd.h make_cmd.h subst.h externs.h
-builtins/shopt.o: shell.h unwind_prot.h variables.h maxpath.h
-builtins/shopt.o: builtins/common.h builtins/bashgetopt.h
-
-builtins/bashgetopt.o: bashansi.h ansi_stdlib.h
-builtins/mkbuiltins.o: bashansi.h ansi_stdlib.h
-builtins/fc.o: bashansi.h ansi_stdlib.h
-
-#if defined (READLINE) && defined (HAVE_READLINE_SOURCE)
-builtins/bind.o: $(RL_LIBSRC)chardefs.h $(RL_LIBSRC)readline.h $(RL_LIBSRC)keymaps.h
-#endif /* READLINE && HAVE_READLINE_SOURCE */
-
-#if defined (HISTORY) && defined (HAVE_HISTORY_SOURCE)
-builtins/bind.o: $(HIST_LIBSRC)history.h
-builtins/fc.o: $(HIST_LIBSRC)history.h
-builtins/history.o: $(HIST_LIBSRC)history.h
-#endif /* HISTORY && HAVE_HISTORY_SOURCE */
-
-#if defined (HAVE_TILDE_SOURCE)
-builtins/common.o: $(TILDE_LIBSRC)tilde.h
-builtins/cd.o: $(TILDE_LIBSRC)tilde.h 
-#endif /* HAVE_TILDE_SOURCE */
-
-builtins/alias.o: builtins/alias.def
-builtins/bind.o: builtins/bind.def
-builtins/break.o: builtins/break.def
-builtins/builtin.o: builtins/builtin.def
-builtins/cd.o: builtins/cd.def
-builtins/colon.o: builtins/colon.def
-builtins/command.o: builtins/command.def
-builtins/declare.o: builtins/declare.def
-builtins/echo.o: builtins/echo.def
-builtins/enable.o: builtins/enable.def
-builtins/eval.o: builtins/eval.def
-builtins/exec.o: builtins/exec.def
-builtins/exit.o: builtins/exit.def
-builtins/fc.o: builtins/fc.def
-builtins/fg_bg.o: builtins/fg_bg.def
-builtins/getopts.o: builtins/getopts.def
-builtins/hash.o: builtins/hash.def
-builtins/help.o: builtins/help.def
-builtins/history.o: builtins/history.def
-builtins/inlib.o: builtins/inlib.def
-builtins/jobs.o: builtins/jobs.def
-builtins/kill.o: builtins/kill.def
-builtins/let.o: builtins/let.def
-builtins/pushd.o: builtins/pushd.def
-builtins/read.o: builtins/read.def
-builtins/reserved.o: builtins/reserved.def
-builtins/return.o: builtins/return.def
-builtins/set.o: builtins/set.def
-builtins/setattr.o: builtins/setattr.def
-builtins/shift.o: builtins/shift.def
-builtins/shopt.o: builtins/shopt.def
-builtins/source.o: builtins/source.def
-builtins/suspend.o: builtins/suspend.def
-builtins/test.o: builtins/test.def
-builtins/times.o: builtins/times.def
-builtins/trap.o: builtins/trap.def
-builtins/type.o: builtins/type.def
-builtins/ulimit.o: builtins/ulimit.def
-builtins/umask.o: builtins/umask.def
-builtins/wait.o: builtins/wait.def
-
-install:       .made
-               $(INSTALL_PROGRAM) $(Program) $(bindir)/$(Program)
-               $(INSTALL_PROGRAM) bashbug $(bindir)/bashbug
-               $(RM) installed-$(Program)
-               -ln -s $(bindir)/$(Program) installed-$(Program)
-               ( cd $(DOCDIR) ; $(MAKE) $(MFLAGS) mandir=$(mandir) \
-                       man3dir=$(man3dir) infodir=$(infodir) \
-                       INSTALL_PROGRAM="${INSTALL_PROGRAM}" \
-                       INSTALL_DATA="${INSTALL_DATA}" $@ )
-
-uninstall:     .made
-               $(RM) $(bindir)/$(Program) installed-$(Program) $(bindir)/bashbug
-               ( cd $(DOCDIR) ; $(MAKE) $(MFLAGS) mandir=$(mandir) man3dir=$(man3dir) infodir=$(infodir) $@ )
-               
-.distribution:
-               ./mkversion -dir $(srcdir) -dist `$(Program) -c 'echo $$BASH_VERSION'`
-
-mkversion:     $(SUPPORT_SRC)mkversion.c
-               $(CC) $(CCFLAGS) $(CPPFLAGS) -I$(srcdir) -I.. -o $@ $(SUPPORT_SRC)mkversion.c
-
-newversion:    mkversion
-               $(RM) .build
-               ./mkversion -dir $(srcdir) -dist
-               mv -f newversion.h version.h
-               $(MAKE) -f $(srcdir)/Makefile $(MFLAGS) srcdir=$(srcdir)
-
-texindex:      force
-               build_lib_in_dir($(LIBPATH)doc-support, texindex, $${topdir}/lib/doc-support, $${topdir}/lib/doc-support/Makefile)
-
-documentation:  force texindex
-               (cd $(DOCDIR); $(MAKE) $(MFLAGS) CFLAGS='$(CCFLAGS)')
-
-force:
-
-tags:          $(SOURCES) $(BUILTIN_C_SRC) $(LIBRARY_SOURCE)
-               etags $(SOURCES) $(BUILTIN_C_SRC) $(LIBRARY_SOURCE)
-
-TAGS:          $(SOURCES) $(BUILTIN_C_SRC) $(LIBRARY_SOURCE)
-               ctags -x $(SOURCES) $(BUILTIN_C_SRC) $(LIBRARY_SOURCE) > $@
-
-clean:
-               $(RM) $(OBJECTS) $(Program) bashbug ansi-Makefile *.aux
-               $(RM) .build .made .machine version.h
-               $(RM) $(CREATED_SUPPORT) bash-Makefile tags TAGS
-               (cd $(DOCDIR); $(MAKE) $(MFLAGS) clean)
-               (cd builtins; $(MAKE) $(MFLAGS) clean)
-               $(CLEAN_READLINE) ;
-               $(CLEAN_HISTORY) ;
-               $(CLEAN_TERMCAP) ;
-               $(CLEAN_GLOB) ;
-               $(CLEAN_TILDE) ;
-               $(CLEAN_MALLOC) ;
-
-distclean:     clean
-               $(RM) installed-bash
-
-realclean:     clean
-               $(RM) y.tab.c y.tab.h parser-built installed-bash
-
-recho:         $(SUPPORT_SRC)recho.c
-       @$(CC) -o $@ $(SUPPORT_SRC)recho.c
-
-tests:         force $(Program) recho
-       -[ -d tests ] || mkdir tests
-       @cp recho $(SUPPORT_SRC)printenv tests
-       ( cd tests ; sh run-all )
diff --git a/CWRU/old-conf/machines.h b/CWRU/old-conf/machines.h
deleted file mode 100644 (file)
index 3a66338..0000000
+++ /dev/null
@@ -1,2314 +0,0 @@
-/* machines.h --
-   Included file in the makefile that gets run through Cpp.  This file
-   tells which machines have what features based on the unique machine
-   identifier present in Cpp. */
-
-/* Copyright (C) 1993 Free Software Foundation, Inc.
-
-   This file is part of GNU Bash, the Bourne Again SHell.
-
-   Bash is free software; you can redistribute it and/or modify it under
-   the terms of the GNU General Public License as published by the Free
-   Software Foundation; either version 2, or (at your option) any later
-   version.
-
-   Bash 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 General Public License
-   for more details.
-
-   You should have received a copy of the GNU General Public License along
-   with Bash; see the file COPYING.  If not, write to the Free Software
-   Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */
-
-/* **************************************************************** */
-/*                                                                  */
-/*                Global Assumptions (true for most systems).       */
-/*                                                                  */
-/* **************************************************************** */
-
-/* We make some global assumptions here.  This can be #undef'ed in
-   various machine specific entries. */
-
-/* If this file is being processed with Gcc, then the user has Gcc. */
-#if defined (__GNUC__) && !defined (NeXT) && !defined (__FreeBSD__)
-#  if !defined (HAVE_GCC)
-#    define HAVE_GCC
-#  endif /* HAVE_GCC */
-#endif /* __GNUC__ && !NeXT && !__FreeBSD__ **/
-
-/* Assume that all machines have the getwd () system call.  We unset it
-   for USG systems. */
-#define HAVE_GETWD
-
-/* Assume that all systems have a working getcwd () call.  We unset it for
-   ISC systems. */
-#define HAVE_GETCWD
-
-/* Most (but not all) systems have a good, working version of dup2 ().
-   For systems that don't have the call (HP/UX), and for systems
-   that don't set the open-on-exec flag for the dup'ed file descriptors,
-   (Sequents running Dynix, Ultrix), #undef HAVE_DUP2 in the machine
-   description. */
-#define HAVE_DUP2
-
-/* Every machine that has Gcc has alloca as a builtin in Gcc.  If you are
-   compiling Bash without Gcc, then you must have alloca in a library,
-   in your C compiler, or be able to assemble or compile the alloca source
-   that we ship with Bash. */
-#define HAVE_ALLOCA
-
-/* We like most machines to use the GNU Malloc routines supplied in the
-   source code because they provide high quality error checking.  On
-   some machines, our malloc () cannot be used (because of library
-   conflicts, for example), and for those, you should specifically
-   #undef USE_GNU_MALLOC in the machine description. */
-#define USE_GNU_MALLOC
-
-/* This causes the Gnu malloc library (from glibc) to be used. */
-/* #define USE_GNU_MALLOC_LIBRARY */
-
-/* Assume that every operating system supplies strchr () and strrchr ()
-   in a standard library until proven otherwise. */
-#define HAVE_STRCHR
-
-/* Hardware-dependent CFLAGS. */
-#define MACHINE_CFLAGS
-
-/* **************************************************************** */
-/*                                                                 */
-/*                     Sun Microsystems Machines                   */
-/*                                                                 */
-/* **************************************************************** */
-
-/* NetBSD running on a sparc. */
-#if defined (sparc) && defined (__NetBSD__)
-#  define M_MACHINE "sun4"
-#  define M_OS "NetBSD"
-#  define SYSDEP_CFLAGS -DOPENDIR_NOT_ROBUST -DINT_GROUPS_ARRAY \
-                       -DRLIMTYPE=quad_t
-#  define SYSDEP_LDFLAGS -static
-#  define HAVE_SYS_SIGLIST
-#  define HAVE_SETLINEBUF
-#  define HAVE_GETGROUPS
-#  define HAVE_VPRINTF
-#  define HAVE_STRERROR
-#  define VOID_SIGHANDLER
-#  define HAVE_DIRENT
-#  define HAVE_STRCASECMP
-#endif /* sparc && __NetBSD__ */
-
-#if defined (sun) && !defined (M_MACHINE)
-/* We aren't currently using GNU Malloc on Suns because of a bug in Sun's
-   YP which bites us when Sun free ()'s an already free ()'ed address.
-   When Sun fixes their YP, we can start using our winning malloc again. */
-/* #undef USE_GNU_MALLOC */
-
-/* Most Sun systems have signal handler functions that are void. */
-#  define VOID_SIGHANDLER
-
-/* Most Sun systems have the following. */
-#  define HAVE_SYS_SIGLIST
-#  define HAVE_SETLINEBUF
-#  define HAVE_VPRINTF
-#  define HAVE_GETGROUPS
-
-/* Check for SunOS4 or greater. */
-#  if defined (SunOS5)
-#    define M_OS "SunOS5"
-#    define SYSDEP_CFLAGS -DUSGr4 -DUSG -DSolaris -DOPENDIR_NOT_ROBUST \
-                         -DSBRK_DECLARED -DINT_GROUPS_ARRAY
-#    define EXTRA_LIB_SEARCH_PATH /usr/ccs/lib
-#    if !defined (HAVE_GCC)
-#      define REQUIRED_LIBRARIES -ldl
-#      define SYSDEP_LDFLAGS -Bdynamic
-#    endif /* !HAVE_GCC */
-#    define HAVE_STRERROR
-#    undef HAVE_GETWD
-#    undef HAVE_SETLINEBUF
-#  endif /* SunOS5 */
-
-#  if defined (SunOS4)
-#    define M_OS "SunOS4"
-#    define SYSDEP_CFLAGS -DHAVE_BSD_PGRP -DOPENDIR_NOT_ROBUST -DTERMIOS_LDISC \
-                         -DINT_GROUPS_ARRAY
-#    define HAVE_DIRENT
-#    define HAVE_DLOPEN
-#    define HAVE_DLSYM
-#    define HAVE_DLCLOSE
-#    define REQUIRED_LIBRARIES -ldl
-#    if !defined (HAVE_GCC)
-#      define SYSDEP_LDFLAGS -Bdynamic
-#    endif
-#  endif /* SunOS4 */
-
-#  if !defined (SunOS4) && !defined (SunOS5)
-#    define M_OS "SunOS3"
-#    if !defined (sparc) && !defined (__sparc__)
-#      undef VOID_SIGHANDLER
-#    endif /* !sparc */
-#  endif /* !SunOS4 && !SunOS5 */
-
-#  if defined (mc68010)
-#    define sun2
-#    define M_MACHINE "sun2"
-#  endif
-#  if defined (mc68020)
-#    define sun3
-#    define M_MACHINE "sun3"
-#  endif
-#  if defined (sparc) || defined (__sparc__)
-#    define sun4
-#    define M_MACHINE "sparc"
-#  endif
-#  if defined (i386)
-#    define done386
-#    if !defined (SunOS5)
-#      define Sun386i
-#      define M_MACHINE "Sun386i"
-#    else
-#      define M_MACHINE "i386"
-#    endif
-#  endif /* i386 */
-
-#endif /* sun && !M_MACHINE */
-
-/* **************************************************************** */
-/*                                                                 */
-/*                     DEC Machines (vax, decstations)             */
-/*                                                                 */
-/* **************************************************************** */
-
-/* ************************ */
-/*                          */
-/*     Alpha with OSF/1     */
-/*                          */
-/* ************************ */
-#if defined (__alpha) || defined (alpha)
-#  define M_MACHINE "alpha"
-#  define M_OS "OSF1"
-#  define HAVE_SYS_SIGLIST
-#  define HAVE_SETLINEBUF
-#  define HAVE_VPRINTF
-#  define HAVE_STRERROR
-#  define HAVE_GETGROUPS
-#  define VOID_SIGHANDLER
-#  define HAVE_DLOPEN
-#  define HAVE_DLSYM
-#  define HAVE_DLCLOSE
-#  define USE_TERMCAP_EMULATION
-#  if !defined (__GNUC__)
-#    define SYSDEP_CFLAGS -DNLS -D_BSD
-#  endif /* !__GNUC__ */
-#  undef HAVE_ALLOCA
-#  undef USE_GNU_MALLOC
-#endif /* __alpha || alpha */
-
-/* ************************ */
-/*                         */
-/*         Ultrix          */
-/*                         */
-/* ************************ */
-#if defined (ultrix)
-#  if defined (MIPSEL)
-#    undef HAVE_ALLOCA_H
-#    define M_MACHINE "MIPSEL"
-#  else /* !MIPSEL */
-#    define M_MACHINE "vax"
-#  endif /* !MIPSEL */
-#  define SYSDEP_CFLAGS -DHAVE_BSD_PGRP -DTERMIOS_MISSING -DTERMIOS_LDISC \
-                       -DINT_GROUPS_ARRAY
-#  define M_OS "Ultrix"
-#  define HAVE_DIRENT
-#  define VOID_SIGHANDLER
-#  define HAVE_SYS_SIGLIST
-#  define HAVE_SETLINEBUF
-#  define HAVE_VPRINTF
-#  define HAVE_GETGROUPS
-#  undef HAVE_DUP2
-#endif /* ultrix */
-
-/* ************************ */
-/*                         */
-/*     VAX 4.3 BSD         */
-/*                         */
-/* ************************ */
-#if defined (vax) && !defined (ultrix)
-#  define M_MACHINE "vax"
-#  define M_OS "Bsd"
-#  define HAVE_SETLINEBUF
-#  define HAVE_SYS_SIGLIST
-#  define HAVE_GETGROUPS
-#  define USE_VFPRINTF_EMULATION
-#endif /* vax && !ultrix */
-
-/* ************************ */
-/*                         */
-/*     Tahoe 4.3 BSD       */
-/*                         */
-/* ************************ */
-#if defined (tahoe)
-#  define M_MACHINE "tahoe"
-#  define M_OS "Bsd"
-#  define HAVE_SETLINEBUF
-#  define HAVE_SYS_SIGLIST
-#  define HAVE_GETGROUPS
-#  define HAVE_VPRINTF
-#endif /* tahoe */
-
-/* **************************************************************** */
-/*                                                                 */
-/*             Machines with MIPSco processors                     */
-/*                                                                 */
-/* **************************************************************** */
-
-/* **************************************** */
-/*                                         */
-/*             SGI Iris/IRIX               */
-/*                                         */
-/* **************************************** */
-#if defined (sgi)
-#  if defined (Irix3)
-#    define M_OS "Irix3"
-#    if !defined (HAVE_GCC)
-#      undef MACHINE_CFLAGS
-#      define MACHINE_CFLAGS -real_frameptr -Wf,-XNl3072
-#    endif
-#    undef HAVE_ALLOCA
-#  endif /* Irix3 */
-#  if defined (Irix4)
-#    define M_OS "Irix4"
-#    if !defined (HAVE_GCC)
-#      undef MACHINE_CFLAGS
-#      define MACHINE_CFLAGS -Wf,-XNl3072
-#    endif
-#  endif /* Irix4 */
-#  if defined (Irix5)
-#    define M_OS "Irix5"
-#    if !defined (HAVE_GCC)
-#      undef MACHINE_CFLAGS
-#      define MACHINE_CFLAGS -Wf,-XNl3072
-#    endif
-#  endif /* Irix5 */
-#  if defined (Irix6)
-#    define M_OS "Irix6"
-#    if !defined (HAVE_GCC)
-#      undef MACHINE_CFLAGS
-#      define MACHINE_CFLAGS -mips2
-#    endif /* !HAVE_GCC */
-#  endif /* Irix6 */
-#  define M_MACHINE "sgi"
-#  define HAVE_GETGROUPS
-#  define VOID_SIGHANDLER
-#  define HAVE_SYS_SIGLIST
-#  define HAVE_SETLINEBUF
-#  define HAVE_VPRINTF
-#  if !defined (Irix6)
-#    define REQUIRED_LIBRARIES -lsun
-#  endif /* !Irix6 */
-   /* SGI cc uses ansi c features *without* defining __STDC__ */
-#  if defined (__EXTENSIONS__) && !defined (__STDC__)
-#    define ANSIC -D__STDC__
-#  else
-#    define ANSIC
-#  endif /* !__EXTENSIONS__ || __STDC__ */
-#  if defined (Irix5) || defined (Irix6)
-#    define SGI_CFLAGS -DUSG -DPGRP_PIPE -DHAVE_BCOPY -DHAVE_GETPW_DECLS \
-                      -DHAVE_SOCKETS -DSBRK_DECLARED
-#  else
-#    define SGI_CFLAGS -DUSG -DPGRP_PIPE -DHAVE_BCOPY -DHAVE_GETPW_DECLS \
-                      -DHAVE_SOCKETS
-#  endif /* !Irix5 */
-#  define SYSDEP_CFLAGS SGI_CFLAGS MACHINE_CFLAGS ANSIC
-#endif  /* sgi */
-
-/* ************************ */
-/*                         */
-/*       NEC EWS 4800      */
-/*                         */
-/* ************************ */
-#if defined (nec_ews)
-#  if defined (SYSTYPE_SYSV) || defined (USGr4)
-#    define M_MACHINE "ews4800"
-#    define M_OS "USG"
-#    define HAVE_VPRINTF
-#    define VOID_SIGHANDLER
-#    define HAVE_STRERROR
-#    define HAVE_DUP2
-#    undef HAVE_GETWD
-#    undef HAVE_RESOURCE /* ? */
-     /* Alloca requires either Gcc or cc with -lucb. */
-#    if !defined (HAVE_GCC)
-#      define EXTRA_LIB_SEARCH_PATH /usr/ucblib
-#      define REQUIRED_LIBRARIES -lc -lucb
-#    endif /* !HAVE_GCC */
-#    if defined (MIPSEB)
-#      if !defined (HAVE_GCC)
-#        undef MACHINE_CFLAGS
-#        define MACHINE_CFLAGS -Wf,-XNl3072
-#      endif
-#      define SYSDEP_CFLAGS MACHINE_CFLAGS -DUSGr4 -DUSGr3 -D_POSIX_JOB_CONTROL
-#    else /* !MIPSEB */
-#      define SYSDEP_CFLAGS -DUSGr4
-#    endif /* MIPSEB */
-#  else /* !SYSTYPE_SYSV && !USGr4 */
-#    define M_OS "Bsd"
-#  endif /* !SYSTYPE_SYSV && !USGr4 */
-#  define HAVE_SYS_SIGLIST
-#  define HAVE_SETLINEBUF
-#  define HAVE_GETGROUPS
-#endif /* nec_ews */
-
-/* ************************ */
-/*                         */
-/*  Generic MIPS SVR4, 4.2  */
-/*                         */
-/* ************************ */
-#if defined (MIPSEB) && defined (USGr4)
-#  define M_MACHINE "MIPSEB"
-#  define M_OS "USG"
-#  if defined (sony) && !defined (HAVE_GCC)
-#    undef MACHINE_CFLAGS
-#    define MACHINE_CFLAGS -Wf,-XNl3072
-#  endif
-/* XXX - os/svr4.h -- for the future -- XXX */
-#  undef HAVE_GETWD
-#  define HAVE_DIRENT
-#  define HAVE_STRERROR
-#  define HAVE_VPRINTF
-#  define VOID_SIGHANDLER
-#  define HAVE_SYS_SIGLIST
-#  define HAVE_SETLINEBUF
-#  define HAVE_GETGROUPS
-/* alloca */
-#  if !defined (HAVE_GCC)
-#    define EXTRA_LIB_SEARCH_PATH /usr/ucblib
-#    define REQUIRED_LIBRARIES -lc -lucb
-#  endif /* !HAVE_GCC */
-#  if defined (USGr4_2)
-#    define SYSDEP_CFLAGS MACHINE_CFLAGS -DUSGr4 -DUSGr4_2
-#  else
-#    define SYSDEP_CFLAGS MACHINE_CFLAGS -DUSGr4
-#  endif /* !USGr4_2 */
-#endif
-
-/* ************************ */
-/*                         */
-/*         Sony            */
-/*                         */
-/* ************************ */
-#if defined (sony) && !defined (M_MACHINE)
-#  if defined (MIPSEB)
-#    define M_MACHINE "MIPSEB"
-#  else /* !MIPSEB */
-#    define M_MACHINE "sony"
-#  endif /* !MIPSEB */
-
-#  if defined (SYSTYPE_SYSV) || defined (USGr4)
-#    define M_OS "USG"
-#    undef HAVE_GETWD
-#    define HAVE_DIRENT
-#    define HAVE_STRERROR
-#    define HAVE_VPRINTF
-#    define VOID_SIGHANDLER
-     /* Alloca requires either Gcc or cc with -lucb. */
-#    if !defined (HAVE_GCC)
-#      define EXTRA_LIB_SEARCH_PATH /usr/ucblib
-#      define REQUIRED_LIBRARIES -lc -lucb
-#    endif /* !HAVE_GCC */
-#    if defined (MIPSEB)
-#      if !defined (HAVE_GCC)
-#        undef MACHINE_CFLAGS
-#        define MACHINE_CFLAGS -Wf,-XNl3072
-#      endif
-#      define SYSDEP_CFLAGS MACHINE_CFLAGS -DUSGr4
-#    else /* !MIPSEB */
-#      define SYSDEP_CFLAGS -DUSGr4
-#    endif /* !MIPSEB */
-#  else /* !SYSTYPE_SYSV && !USGr4 */
-#    define M_OS "Bsd"
-#    define SYSDEP_CFLAGS -DHAVE_UID_T
-#  endif /* !SYSTYPE_SYSV && !USGr4 */
-#  define HAVE_SYS_SIGLIST
-#  define HAVE_SETLINEBUF
-#  define HAVE_GETGROUPS
-#endif /* sony */
-
-/* ******************************* */
-/*                                */
-/*  Ardent Titan OS v2.2 and later */
-/*                                */
-/* ******************************* */
-#if defined (ardent)
-#  define M_MACHINE "Ardent Titan"
-#  define M_OS "Bsd"
-#  if defined (titan)
-#    undef HAVE_GETGROUPS
-#  else
-#    define HAVE_GETGROUPS
-#  endif /* !titan */
-#  define HAVE_SYS_SIGLIST
-#  define HAVE_SETLINEBUF
-#  define SYSDEP_CFLAGS -43 -w
-#  define SYSDEP_LDFLAGS -43
-#  undef HAVE_ALLOCA
-#  undef USE_GNU_MALLOC
-#  undef HAVE_VPRINTF
-#  undef HAVE_DIRENT_H
-#endif /* ardent */
-
-/* ************************ */
-/*                         */
-/*       Stardent          */
-/*                         */
-/* ************************ */
-#if defined (stardent) && !defined (M_MACHINE)
-#  define M_MACHINE "Stardent"
-#  define M_OS "USG"
-#  define HAVE_SYS_SIGLIST
-#  define USE_TERMCAP_EMULATION
-#  define VOID_SIGHANDLER
-#  undef HAVE_GETWD
-#  undef HAVE_ALLOCA
-#endif /* stardent */
-
-/* ******************************** */
-/*                                 */
-/*        MIPS RISC/os             */
-/*                                 */
-/* ******************************** */
-
-/* Notes on compiling with "make":
-
-   * Place /bsd43/bin in your PATH before /bin.
-   * Use `$(CC) -E' instead of `/lib/cpp' in Makefile.
-*/
-#if defined (mips) && (!defined (M_MACHINE) || defined (RiscOS))
-
-#  if defined (MIPSEB)
-#    define M_MACHINE "MIPSEB"
-#  else /* !MIPSEB */
-#    if defined (MIPSEL)
-#      define M_MACHINE "MIPSEL"
-#    else /* !MIPSEL */
-#      define M_MACHINE "mips"
-#    endif /* !MIPSEL */
-#  endif /* !MIPSEB */
-
-#  define M_OS "Bsd"
-
-   /* Special things for machines from MIPS Co. */
-#  define MIPS_CFLAGS -DOPENDIR_NOT_ROBUST -DPGRP_PIPE
-
-#  if !defined (HAVE_GCC)
-#    undef MACHINE_CFLAGS
-#    define MACHINE_CFLAGS -Wf,-XNl3072 -systype bsd43
-#  endif /* !HAVE_GCC */
-#  define HAVE_SYS_SIGLIST
-#  define HAVE_SETLINEBUF
-#  define HAVE_VPRINTF
-#  define HAVE_GETGROUPS
-#  undef HAVE_UNISTD_H
-#  if !defined (HAVE_RESOURCE)
-#    define HAVE_RESOURCE
-#  endif /* !HAVE_RESOURCE */
-#  if defined (bsd4_4)
-#    define VOID_SIGHANDLER
-#    define HAVE_UNISTD_H      /* ??? atsuo@harl.hitachi.co.jp */
-#    define SYSDEP_CFLAGS MACHINE_CFLAGS MIPS_CFLAGS -D__BSD_4_4__
-#  else
-     /* /usr/include/sys/wait.h appears not to work correctly, so why use it? */
-#    undef HAVE_WAIT_H
-#    define SYSDEP_CFLAGS MACHINE_CFLAGS MIPS_CFLAGS
-#  endif
-#endif /* mips */
-
-/* ************************ */
-/*                         */
-/*       Pyramid           */
-/*                         */
-/* ************************ */
-#if defined (pyr)
-#  define M_MACHINE "Pyramid"
-#  define M_OS "Bsd"
-#  if !defined (HAVE_GCC)
-#    undef HAVE_ALLOCA
-#  endif /* HAVE_GCC */
-#  define HAVE_SYS_SIGLIST
-#  define HAVE_SETLINEBUF
-#  define HAVE_GETGROUPS
-#endif /* pyr */
-
-/* ************************ */
-/*                         */
-/*         IBMRT           */
-/*                         */
-/* ************************ */
-#if defined (ibm032)
-#  define M_MACHINE "IBMRT"
-#  define M_OS "Bsd"
-#  define HAVE_SYS_SIGLIST
-#  define HAVE_SETLINEBUF
-#  define USE_VFPRINTF_EMULATION
-   /* Alloca requires either gcc or hc or pcc with -ma in SYSDEP_CFLAGS. */
-#  if !defined (HAVE_GCC)
-#    define SYSDEP_CFLAGS -ma -U__STDC__
-#  endif /* !HAVE_GCC */
-#  define HAVE_GETGROUPS
-/* #define USE_GNU_TERMCAP */
-#endif /* ibm032 */
-
-/* **************************************************************** */
-/*                                                                 */
-/*       All Intel 386 Processor Machines are Defined Here!        */
-/*                                                                 */
-/* **************************************************************** */
-
-#if defined (i386)
-
-/* Sequent Symmetry running Dynix/ptx 2.x */
-#  if !defined (done386) && defined (_SEQUENT_)
-#    define done386
-#    define M_MACHINE "Symmetry"
-#    define M_OS "Dynix"
-#    define DYNIX_CFLAGS -DHAVE_GETDTABLESIZE -DHAVE_SETDTABLESIZE \
-                        -DHAVE_GETPW_DECLS -DHAVE_SOCKETS
-#    define SYSDEP_CFLAGS -DUSG -DUSGr3 DYNIX_CFLAGS
-#    define HAVE_DIRENT
-#    define HAVE_VPRINTF
-#    define VOID_SIGHANDLER
-/* Might need to add -lsocket -linet -lnsl to the list of libraries. */
-#    define REQUIRED_LIBRARIES -lPW -lseq
-#    undef HAVE_GETWD
-#    undef HAVE_RESOURCE
-#    undef HAVE_ALLOCA
-#  endif /* _SEQUENT_ */
-
-/* Sequent Symmetry running Dynix (4.2 BSD) */
-#  if !defined (done386) && defined (sequent)
-#    define done386
-#    define M_MACHINE "Symmetry"
-#    define M_OS "Bsd"
-#    define SYSDEP_CFLAGS -DCPCC -DHAVE_SETDTABLESIZE
-#    define HAVE_SETLINEBUF
-#    define HAVE_SYS_SIGLIST
-#    define HAVE_GETGROUPS
-#    define LD_HAS_NO_DASH_L
-#    undef HAVE_DUP2
-#  endif /* Sequent 386 */
-
-/* NeXT 3.x on i386 */
-#  if !defined (done386) && defined (NeXT)
-#    define done386
-#    define M_MACHINE "i386"
-#    define M_OS "NeXTstep"
-#    define HAVE_VPRINTF
-#    define HAVE_SYS_SIGLIST
-#    define HAVE_GETGROUPS
-#    define HAVE_STRERROR
-#    define VOID_SIGHANDLER
-#    if !defined (HAVE_RESOURCE)
-#      define HAVE_RESOURCE
-#    endif
-#    define HAVE_STRCASECMP
-#    define GCC_STANDARD
-#    undef HAVE_GETWD
-#    undef HAVE_GETCWD
-#    undef USE_GNU_MALLOC
-#    undef HAVE_DIRENT_H
-#    define SYSDEP_CFLAGS -DNeXT -DMKFIFO_MISSING -DRLOGIN_PGRP_BUG
-#  endif
-
-/* Generic 386 clone running Mach (4.3 BSD-compatible). */
-#  if !defined (done386) && defined (MACH)
-#    define done386
-#    define M_MACHINE "i386"
-#    define M_OS "Bsd"
-#    define HAVE_SETLINEBUF
-#    define HAVE_SYS_SIGLIST
-#    define HAVE_GETGROUPS
-#  endif /* i386 && MACH */
-
-/* AIX PS/2 1.[23] for the [34]86. */
-#  if !defined (done386) && defined (aixpc)
-#    define done386
-#    define M_MACHINE "aixpc"
-#    define M_OS "AIX"
-#    define HAVE_VPRINTF
-#    define VOID_SIGHANDLER
-#    if defined (AIX_13)       /* AIX PS/2 1.3 */
-#      define SYSDEP_CFLAGS -DTERMIOS_LDISC
-#      define REQUIRED_LIBRARIES -lc_s
-#    else
-#      define SYSDEP_CFLAGS -D_BSD -DTERMIOS_LDISC
-#      define REQUIRED_LIBRARIES -lbsd -lc_s
-#    endif /* !AIX_13 */
-#    define HAVE_GETGROUPS
-#    if !defined (HAVE_GCC)
-#      undef HAVE_ALLOCA
-#      undef HAVE_ALLOCA_H
-#    endif /* !HAVE_GCC */
-#    define USE_TERMCAP_EMULATION
-#  endif /* AIXPC i386 */
-
-/* System V Release 4 on the 386 */
-#  if !defined (done386) && defined (USGr4)
-#    define done386
-#    define M_MACHINE "i386"
-#    define M_OS "USG"
-#    define HAVE_DIRENT
-#    define HAVE_SYS_SIGLIST
-#    define HAVE_VPRINTF
-#    define VOID_SIGHANDLER
-     /* Alloca requires either Gcc or cc with -lucb. */
-#    if !defined (HAVE_GCC)
-#      define EXTRA_LIB_SEARCH_PATH /usr/ucblib
-#      define REQUIRED_LIBRARIES -lc -lucb
-#    endif /* !HAVE_GCC */
-#    define HAVE_GETGROUPS
-#    if defined (USGr4_2)
-#      define SYSDEP_CFLAGS -DUSGr4 -DUSGr4_2 -DSBRK_DECLARED
-#    else
-#      define SYSDEP_CFLAGS -DUSGr4
-#    endif /* ! USGr4_2 */
-#    undef HAVE_GETWD
-#  endif /* System V Release 4 on i386 */
-
-/* 386 box running Interactive Unix 2.2 or greater. */
-#  if !defined (done386) && defined (isc386)
-#    define done386
-#    define M_MACHINE "isc386"
-#    define M_OS "USG"
-#    define HAVE_DIRENT
-#    define HAVE_VPRINTF
-#    define VOID_SIGHANDLER
-#    define HAVE_GETGROUPS
-#    define USE_TERMCAP_EMULATION
-#    if defined (HAVE_GCC)
-#      define SYSDEP_LDFLAGS -posix
-#      define ISC_POSIX
-#    else
-#      define REQUIRED_LIBRARIES -lPW
-#      define SYSDEP_LDFLAGS -Xp
-#      define ISC_POSIX -Xp
-#    endif
-#    define ISC_SYSDEPS -DUSGr3 -DPGRP_PIPE -DHAVE_GETPW_DECLS -D_POSIX_SOURCE -DOPENDIR_NOT_ROBUST -DMEMMOVE_MISSING
-#    if defined (__STDC__)
-#      if defined (HAVE_GCC)
-#        define ISC_EXTRA -DO_NDELAY=O_NONBLOCK
-#      else
-#        define ISC_EXTRA -Dmode_t="unsigned short" -DO_NDELAY=O_NONBLOCK
-#      endif /* HAVE_GCC */
-#    else
-#      define ISC_EXTRA
-#    endif /* __STDC__ */
-#    define SYSDEP_CFLAGS ISC_SYSDEPS ISC_POSIX ISC_EXTRA
-#    undef HAVE_GETWD
-#    if !defined (ISC_4)
-#      undef HAVE_GETCWD
-#    else /* ISC_4 */
-#      undef HAVE_RESOURCE
-#    endif /* ISC_4 */
-#  endif /* isc386 */
-
-/* Xenix386 machine (with help from Ronald Khoo <ronald@robobar.co.uk>). */
-#  if !defined (done386) && defined (Xenix386)
-#    define done386
-#    define M_MACHINE "i386"
-#    define M_OS "Xenix"
-#    define XENIX_CFLAGS -DUSG -DUSGr3 -DMEMMOVE_MISSING
-
-#    if defined (XENIX_22)
-#      define XENIX_EXTRA -DSETVBUF_REVERSED
-#      define REQUIRED_LIBRARIES -lx
-#    else /* !XENIX_22 */
-#      define HAVE_DIRENT
-#      if defined (XENIX_23)
-#        define XENIX_EXTRA -DLD_HAS_NO_DASH_L
-#        define REQUIRED_LIBRARIES -ldir
-#      else /* !XENIX_23 */
-#        define XENIX_EXTRA -xenix
-#        define SYSDEP_LDFLAGS -xenix
-#        define REQUIRED_LIBRARIES -ldir -l2.3
-#      endif /* !XENIX_23 */
-#    endif /* !XENIX_22 */
-
-#    define SYSDEP_CFLAGS XENIX_CFLAGS XENIX_EXTRA
-#    define HAVE_VPRINTF
-#    define VOID_SIGHANDLER
-#    define ALLOCA_ASM x386-alloca.s
-#    define ALLOCA_OBJ x386-alloca.o
-#    undef HAVE_ALLOCA
-#    undef HAVE_GETWD
-#    undef HAVE_RESOURCE
-#  endif /* Xenix386 */
-
-/* SCO UNIX 3.2 chip@count.tct.com (Chip Salzenberg) */
-#  if !defined (done386) && defined (M_UNIX)
-#    define done386
-#    define M_MACHINE "i386"
-#    define M_OS "SCO"
-#    define SCO_CFLAGS -DUSG -DUSGr3 -DNO_DEV_TTY_JOB_CONTROL -DPGRP_PIPE
-#    if defined (SCOv4)
-#      define SYSDEP_CFLAGS SCO_CFLAGS -DWAITPID_BROKEN
-#    else /* !SCOv4 */
-#      define SYSDEP_CFLAGS SCO_CFLAGS -DMUST_UNBLOCK_CHLD -DOPENDIR_NOT_ROBUST
-#    endif /* !SCOv4 */
-#    define HAVE_VPRINTF
-#    define VOID_SIGHANDLER
-#    define HAVE_GETGROUPS
-#    undef HAVE_GETWD
-#    undef HAVE_RESOURCE
-/* advice from wbader@cess.lehigh.edu and Eduard.Vopicka@vse.cz */
-#    if !defined (HAVE_GCC)
-#      define REQUIRED_LIBRARIES -lc_s -lc -lPW
-#    else
-#      define REQUIRED_LIBRARIES -lc_s -lc
-#    endif /* !HAVE_GCC */
-#  endif /* SCO Unix on 386 boxes. */
-
-#  if !defined (done386) && defined (__OSF1__)
-#    define done386
-#    define M_MACHINE "i386"
-#    define M_OS "OSF1"
-#    define HAVE_SYS_SIGLIST
-#    define HAVE_SETLINEBUF
-#    define HAVE_VPRINTF
-#    define HAVE_STRERROR
-#    define HAVE_GETGROUPS
-#    define VOID_SIGHANDLER
-#    define HAVE_BCOPY
-#    define USE_TERMCAP_EMULATION
-#    define SYSDEP_CFLAGS -D_BSD
-#    define REQUIRED_LIBRARIES -lbsd
-#  endif /* OSF/1 */
-
-/* BSDI BSD/OS running on a 386 or 486. */
-#  if !defined (done386) && defined (__bsdi__)
-#    define done386
-#    define M_MACHINE "i386"
-#    if defined (BSDI2)
-#      define M_OS "BSD_OS"
-#      define SYSDEP_CFLAGS -DOPENDIR_NOT_ROBUST -DRLIMTYPE=quad_t
-#    else
-#      define M_OS "BSD386"
-#      define SYSDEP_CFLAGS -DOPENDIR_NOT_ROBUST -DINT_GROUPS_ARRAY
-#    endif
-#    define HAVE_SYS_SIGLIST
-#    define HAVE_SETLINEBUF
-#    define HAVE_GETGROUPS
-#    define HAVE_VPRINTF
-#    define HAVE_STRERROR
-#    define VOID_SIGHANDLER
-#    define HAVE_DIRENT
-#    define HAVE_STRCASECMP
-#  endif /* !done386 && bsdi */
-
-/* NetBSD running on a 386 or 486. */
-#  if !defined (done386) && defined (__NetBSD__)
-#    define done386
-#    define M_MACHINE "i386"
-#    define M_OS "NetBSD"
-#    define SYSDEP_CFLAGS -DOPENDIR_NOT_ROBUST -DINT_GROUPS_ARRAY \
-                         -DRLIMTYPE=quad_t
-#    define HAVE_SYS_SIGLIST
-#    define HAVE_SETLINEBUF
-#    define HAVE_GETGROUPS
-#    define HAVE_VPRINTF
-#    define HAVE_STRERROR
-#    define VOID_SIGHANDLER
-#    define HAVE_DIRENT
-#    define HAVE_STRCASECMP
-#  endif /* !done386 && __NetBSD__ */
-
-/* FreeBSD running on a 386 or 486. */
-#  if !defined (done386) && defined (__FreeBSD__)
-#    define done386
-#    define M_MACHINE "i386"
-#    define M_OS "FreeBSD"
-#    if __FreeBSD__ > 1
-#      define SYSDEP_CFLAGS -D__BSD_4_4__ -DRLIMTYPE=quad_t
-#    else
-#      define SYSDEP_CFLAGS -DOPENDIR_NOT_ROBUST -DINT_GROUPS_ARRAY
-#    endif
-#    define HAVE_SYS_SIGLIST
-#    define HAVE_SETLINEBUF
-#    define HAVE_GETGROUPS
-#    define HAVE_VPRINTF
-#    define HAVE_STRERROR
-#    define VOID_SIGHANDLER
-#    define HAVE_DIRENT
-#    define HAVE_STRCASECMP
-#    define GCC_STANDARD
-#  endif /* !done386 && __FreeBSD__ */
-
-/* Jolitz 386BSD running on a 386 or 486. */
-#  if !defined (done386) && defined (__386BSD__)
-#    define done386
-#    define M_MACHINE "i386"
-#    define M_OS "_386BSD"
-#    define SYSDEP_CFLAGS -DOPENDIR_NOT_ROBUST -DINT_GROUPS_ARRAY
-#    define HAVE_SYS_SIGLIST
-#    define HAVE_SETLINEBUF
-#    define HAVE_GETGROUPS
-#    define HAVE_VPRINTF
-#    define HAVE_STRERROR
-#    define VOID_SIGHANDLER
-#    define HAVE_DIRENT
-#    define HAVE_STRCASECMP
-#  endif /* !done386 && __386BSD__ */
-
-#  if !defined (done386) && (defined (__linux__) || defined (linux))
-#    define done386
-#    define M_MACHINE "i386"
-#    define M_OS "Linux"
-#    define SYSDEP_CFLAGS -DHAVE_GETDTABLESIZE -DHAVE_BCOPY \
-                         -DHAVE_GETPW_DECLS -DHAVE_GETHOSTNAME
-#    define REQUIRED_LIBRARIES
-#    define HAVE_GETGROUPS
-#    define HAVE_STRERROR
-#    define VOID_SIGHANDLER
-#    define HAVE_SYS_SIGLIST
-#    define HAVE_VPRINTF
-#    define HAVE_VARARGS_H
-#    define SEARCH_LIB_NEEDS_SPACE
-#    if defined (__GNUC__)
-#      define HAVE_FIXED_INCLUDES
-#    endif /* __GNUC__ */
-#    undef USE_GNU_MALLOC
-#    undef HAVE_SETLINEBUF
-#    undef HAVE_GETWD
-#  endif  /* !done386 && __linux__ */
-
-/* QNX 4.2 with GCC pt@flard.ocunix.on.ca (Paul Trunley) */
-#  if !defined (done386) && defined (qnx)
-#    define done386
-#    define M_MACHINE "i386"
-#    define M_OS "QNX"
-#    define SYSDEP_CFLAGS -D_POSIX_SOURCE -O2 -DUSG
-#    define HAVE_VPRINTF
-#    define VOID_SIGHANDLER
-#    define HAVE_GCC
-#    define HAVE_FIXED_INCLUDES
-#    define HAVE_STRERROR
-#    define HAVE_GETGROUPS
-#    undef USE_GNU_MALLOC
-#  endif /* QNX 4.2 with GCC */
-
-/* Lynx 2.1.0 (Mike Brennen <mbrennen@maverick.intecom.com>) */
-#  if !defined (done386) && (defined (__Lynx__) || defined (Lynx))
-#    define done386
-#    define M_MACHINE "i386"
-#    define M_OS "Lynx"
-#    define SYSDEP_CFLAGS -DHAVE_GETDTABLESIZE -DHAVE_BCOPY
-#    define REQUIRED_LIBRARIES -lc_p
-#    define HAVE_GETGROUPS
-#    define VOID_SIGHANDLER
-#    define HAVE_SYS_SIGLIST
-#    define HAVE_VPRINTF
-#    define HAVE_VARARGS_H
-#    if defined (__GNUC__)
-#      define HAVE_FIXED_INCLUDES
-#    endif /* __GNUC__ */
-/* Actually, Lynx does have unistd.h, but it defines _POSIX_VERSION,
-   and doesn't supply a fully compatible job control package.  We just
-   pretend that it doesn't have it. */
-#  undef HAVE_UNISTD_H
-/* Lynx's wait structure reverses w_Stopval and w_Stopsig - don't use it */
-#  undef HAVE_WAIT_H
-#  undef HAVE_DIRENT_H
-#  endif  /* !done386 && __Lynx__ */
-
-/* Assume a generic 386 running Sys V Release 3. */
-#  if !defined (done386)
-#    define done386
-#    define M_MACHINE "i386"
-#    define M_OS "USG"
-#    define SYSDEP_CFLAGS -DUSGr3
-#    define HAVE_VPRINTF
-#    define VOID_SIGHANDLER
-     /* Alloca requires either Gcc or cc with libPW.a */
-#    if !defined (HAVE_GCC)
-#      define REQUIRED_LIBRARIES -lPW
-#    endif /* !HAVE_GCC */
-#    undef HAVE_GETWD
-#  endif /* Generic i386 Box running Sys V release 3. */
-#endif /* All i386 Machines with an `i386' define in cpp. */
-
-/* **************************************************************** */
-/*                                                                 */
-/*                      Alliant FX/800                             */
-/*                                                                 */
-/* **************************************************************** */
-/* Original descs flushed.  FX/2800 machine desc 1.13 bfox@ai.mit.edu.
-   Do NOT use -O with the stock compilers.  If you must optimize, use
-   -uniproc with fxc, and avoid using scc. */
-#if defined (alliant)
-#  define M_MACHINE "alliant"
-#  define M_OS "Concentrix"
-#  define HAVE_SYS_SIGLIST
-#  define HAVE_SETLINEBUF
-#  define HAVE_GETGROUPS
-#  define HAVE_VPRINTF
-#  define HAVE_RESOURCE
-#  define VOID_SIGHANDLER
-#  define HAVE_STRERROR
-#  define USE_GNU_MALLOC
-#  define LD_HAS_NO_DASH_L
-#  define SYSDEP_CFLAGS -DTERMIOS_MISSING -DMKFIFO_MISSING \
-       -DHAVE_BSD_PGRP -DRLOGIN_PGRP_BUG -w
-   /* Actually, Alliant does have unistd.h, but it defines _POSIX_VERSION,
-      and doesn't supply a fully compatible job control package.  We just
-      pretend that it doesn't have it. */
-#  undef HAVE_UNISTD_H
-#  undef HAVE_ALLOCA
-#endif /* alliant */
-
-/* **************************************************************** */
-/*                                                                  */
-/*            Motorola Delta series running System V R3V6/7         */
-/*                                                                  */
-/* **************************************************************** */
-/* Contributed by Robert L. McMillin (rlm@ms_aspen.hac.com).  */
-
-#if defined (m68k) && defined (sysV68)
-#  define M_MACHINE "Delta"
-#  define M_OS "USG"
-#  define SYSDEP_CFLAGS -DUSGr3
-#  define VOID_SIGHANDLER
-#  define HAVE_VPRINTF
-#  define REQUIRED_LIBRARIES -lm881
-#  undef HAVE_GETWD
-#  undef HAVE_RESOURCE
-#  undef HAVE_DUP2
-#  undef HAVE_ALLOCA
-#endif /* Delta series */
-
-/* **************************************************************** */
-/*                                                                  */
-/*            Motorola m68k system running Linux                    */
-/*                                                                  */
-/* **************************************************************** */
-
-#if defined (mc68020) && (defined (__linux__) || defined (linux))
-#    define M_MACHINE "m68k"
-#    define M_OS "Linux"
-#    define SYSDEP_CFLAGS -DUSG -DUSGr3 -DHAVE_GETDTABLESIZE -DHAVE_BCOPY \
-                        -DHAVE_GETPW_DECLS -DHAVE_GETHOSTNAME
-#    define REQUIRED_LIBRARIES
-#    define HAVE_GETGROUPS
-#    define HAVE_STRERROR
-#    define VOID_SIGHANDLER
-#    define HAVE_SYS_SIGLIST
-#    define HAVE_VPRINTF
-#    define HAVE_VARARGS_H
-#    define SEARCH_LIB_NEEDS_SPACE
-#    if defined (__GNUC__)
-#      define HAVE_FIXED_INCLUDES
-#    endif /* __GNUC__ */
-#    undef USE_GNU_MALLOC
-#    undef HAVE_SETLINEBUF
-#    undef HAVE_GETWD
-#  endif  /* m68k && __linux__ */
-
-/* **************************************************************** */
-/*                                                                 */
-/*                   Gould 9000 - UTX/32 R2.1A                     */
-/*                                                                 */
-/* **************************************************************** */
-#if defined (gould)            /* Maybe should be GOULD_PN ? */
-#  define M_MACHINE "gould"
-#  define M_OS "Bsd"
-#  define HAVE_SYS_SIGLIST
-#  define HAVE_SETLINEBUF
-#  define HAVE_GETGROUPS
-#endif /* gould */
-
-/* ************************ */
-/*                         */
-/*         NeXT            */
-/*                         */
-/* ************************ */
-#if defined (NeXT) && !defined (M_MACHINE)
-#  define M_MACHINE "NeXT"
-#  define M_OS "NeXTstep"
-#  define HAVE_VPRINTF
-#  define HAVE_SYS_SIGLIST
-#  define HAVE_GETGROUPS
-#  define HAVE_STRERROR
-#  define VOID_SIGHANDLER
-#  if !defined (HAVE_RESOURCE)
-#    define HAVE_RESOURCE
-#  endif
-#  define HAVE_STRCASECMP
-#  define GCC_STANDARD
-#  undef HAVE_GETWD
-#  undef HAVE_GETCWD
-#  undef HAVE_DIRENT_H
-#  define SYSDEP_CFLAGS -DMKFIFO_MISSING -DRLOGIN_PGRP_BUG
-#  undef USE_GNU_MALLOC
-#endif /* NeXT */
-
-/* ********************** */
-/*                        */
-/*       m68k NetBSD      */
-/*                        */
-/* ********************** */
-#if defined (m68k) && defined (__NetBSD__)
-#  include <machine/param.h>
-#  define M_MACHINE MACHINE
-#  define M_OS "NetBSD"
-/* os/netbsd.h */
-#  define SYSDEP_CFLAGS -DOPENDIR_NOT_ROBUST -DINT_GROUPS_ARRAY \
-                       -DRLIMTYPE=quad_t
-#  define HAVE_SYS_SIGLIST
-#  define HAVE_SETLINEBUF
-#  define HAVE_GETGROUPS
-#  define HAVE_VPRINTF
-#  define HAVE_STRERROR
-#  define VOID_SIGHANDLER
-#  define HAVE_DIRENT
-#  define HAVE_STRCASECMP
-#endif /* m68k && __NetBSD__ */
-
-/* ************************ */
-/*                         */
-/*     hp9000 4.4 BSD      */
-/*                         */
-/* ************************ */
-#if defined (hp9000) && defined (__BSD_4_4__)
-#  define M_MACHINE "hp9000"
-#  define M_OS "BSD_4_4"
-#  define HAVE_SYS_SIGLIST
-#  define HAVE_SETLINEBUF
-#  define HAVE_GETGROUPS
-#  define HAVE_STRERROR
-#  define HAVE_VPRINTF
-#  define VOID_SIGHANDLER
-#  define HAVE_STRCASECMP
-#  define SYSDEP_CFLAGS -DHAVE_GETDTABLESIZE -DHAVE_BCOPY -DHAVE_RESOURCE
-#  undef HAVE_ALLOCA
-#endif /* hp9000 && __BSD_4_4__ */
-
-/* ************************ */
-/*                         */
-/*     hp9000 4.3 BSD      */
-/*                         */
-/* ************************ */
-#if defined (hp9000) && !defined (hpux) && !defined (M_MACHINE)
-#  define M_MACHINE "hp9000"
-#  define M_OS "Bsd"
-#  undef HAVE_ALLOCA
-#  define HAVE_SYS_SIGLIST
-#  define HAVE_SETLINEBUF
-#  define HAVE_GETGROUPS
-#  define USE_VFPRINTF_EMULATION
-#endif /* hp9000 && !hpux */
-
-/* ************************ */
-/*                          */
-/*          hpux            */
-/*                          */
-/* ************************ */
-#if defined (hpux)
-
-/* HPUX comes in several different flavors, from pre-release 6.2 (basically
-   straight USG), to Posix compliant 9.0. */
-
-   /* HP machines come in several processor types.
-      They are distinguished here. */
-#  if defined (hp9000s200) && !defined (hp9000s300)
-#    define M_MACHINE "hp9000s200"
-#  endif /* hp9000s200 */
-#  if defined (hp9000s300) && !defined (M_MACHINE)
-#    define M_MACHINE "hp9000s300"
-#  endif /* hp9000s300 */
-#  if defined (hp9000s500) && !defined (M_MACHINE)
-#    define M_MACHINE "hp9000s500"
-#  endif /* hp9000s500 */
-#  if defined (hp9000s700) && !defined (M_MACHINE)
-#    define M_MACHINE "hp9000s700"
-#  endif /* hp9000s700 */
-#  if defined (hp9000s800) && !defined (M_MACHINE)
-#    define M_MACHINE "hp9000s800"
-#  endif /* hp9000s800 */
-#  if defined (hppa) && !defined (M_MACHINE)
-#    define M_MACHINE "hppa"
-#  endif /* hppa */
-
-/* Define the OS as the particular type that we are using. */
-/* This is for HP-UX systems earlier than HP-UX 6.2 -- no job control. */
-#  if defined (HPUX_USG)
-#    define M_OS "USG"
-#    define HPUX_CFLAGS -Dhpux
-#    define REQUIRED_LIBRARIES -lPW -lBSD
-#    undef HAVE_WAIT_H
-#    define HPUX_EXTRA
-#  else /* !HPUX_USG */
-
-/* All of the other operating systems need HPUX to be defined. */
-#    define HPUX_EXTRA -DHPUX -Dhpux -DHAVE_GETHOSTNAME -DUSG
-
-     /* HPUX 6.2 .. 6.5 require -lBSD for getwd (), and -lPW for alloca (). */
-#    if defined (HPUX_6)
-#      define M_OS "hpux_6"
-#      define REQUIRED_LIBRARIES -lPW -lBSD
-#      undef HAVE_ALLOCA
-#      undef HAVE_WAIT_H
-#    endif /* HPUX_6 */
-
-     /* On HP-UX 7.x, we do not link with -lBSD, so we don't have getwd (). */
-#    if defined (HPUX_7)
-#      define M_OS "hpux_7"
-#      define REQUIRED_LIBRARIES -lPW
-#      define HPUX_CFLAGS -DHAVE_SOCKETS
-#      undef HAVE_GETWD
-#      undef USE_GNU_MALLOC
-#    endif /* HPUX_7 */
-
-     /* HP-UX 8.x systems do not have a working alloca () on all platforms.
-       This can cause us problems, especially when globbing.  HP has the
-       same YP bug as Sun, so we #undef USE_GNU_MALLOC. */
-#    if defined (HPUX_8)
-#      define M_OS "hpux_8"
-#      if !defined (__GNUC__)
-#        undef HAVE_ALLOCA
-#       define HPUX_ANSI +O3 -Aa -D_HPUX_SOURCE
-#      else
-#       define HPUX_ANSI
-#      endif
-#      undef HAVE_GETWD
-#      undef USE_GNU_MALLOC
-#      define HPUX_CFLAGS -DSBRK_DECLARED -DHAVE_SOCKETS HPUX_ANSI
-#    endif /* HPUX_8 */
-
-     /* HP-UX 9.0 reportedly fixes the alloca problems present in the 8.0
-        release.  If so, -lPW is required to include it. */
-#    if defined (HPUX_9)
-#      define M_OS "hpux_9"
-#      if !defined (__GNUC__)
-#        undef HAVE_ALLOCA
-#       define HPUX_ANSI +O3 -Ae
-#      else
-#       define HPUX_ANSI
-#      endif
-#      undef HAVE_GETWD
-#      undef USE_GNU_MALLOC
-#      undef HAVE_RESOURCE
-#      define HPUX_CFLAGS -DSBRK_DECLARED -DHAVE_SOCKETS -DHAVE_GETHOSTNAME HPUX_ANSI
-#    endif /* HPUX_9 */
-
-#  endif /* !HPUX_USG */
-
-   /* All of the HPUX systems that we have tested have the following. */
-#  define HAVE_DIRENT
-#  define HAVE_VPRINTF
-#  define VOID_SIGHANDLER
-#  define HAVE_GETGROUPS
-#  define HAVE_STRERROR
-#  define USE_TERMCAP_EMULATION
-#  define SEARCH_LIB_NEEDS_SPACE
-
-#  if defined (HPUX_CFLAGS)
-#    define SYSDEP_CFLAGS HPUX_CFLAGS HPUX_EXTRA
-#  else /* !HPUX_CFLAGS */
-#    define SYSDEP_CFLAGS HPUX_EXTRA
-#  endif /* !HPUX_CFLAGS */
-
-#endif /* hpux */
-
-/* ************************ */
-/*                          */
-/*        MIPS OSF/1        */
-/*                          */
-/* ************************ */
-#  if defined (MIPSEL) && defined (__OSF1__)
-#    define M_MACHINE "mips"
-#    define M_OS "OSF1"
-#    define HAVE_SYS_SIGLIST
-#    define HAVE_SETLINEBUF
-#    define HAVE_VPRINTF
-#    define HAVE_STRERROR
-#    define HAVE_GETGROUPS
-#    define VOID_SIGHANDLER
-#    define HAVE_BCOPY
-#    define USE_TERMCAP_EMULATION
-#    define SYSDEP_CFLAGS -D_BSD
-#    define REQUIRED_LIBRARIES -lbsd
-#  endif /* MIPSEL && __OSF1__ */
-
-/* ************************ */
-/*                          */
-/*        HP OSF/1          */
-/*                          */
-/* ************************ */
-#if defined (__hp_osf)
-#  define M_MACHINE "HPOSF1"
-#  define M_OS "OSF1"
-#  define SYSDEP_CFLAGS -q no_sl_enable
-#  define SYSDEP_LDFLAGS -q lang_level:classic
-#  define REQUIRED_LIBRARIES -lPW
-#  define HAVE_SETLINEBUF
-#  define HAVE_VPRINTF
-#  define VOID_SIGHANDLER
-#  define HAVE_GETGROUPS
-#  define HAVE_STRERROR
-#  undef HAVE_ALLOCA
-#endif /* __hp_osf */
-
-/* ************************ */
-/*                          */
-/*        KSR1 OSF/1        */
-/*                          */
-/* ************************ */
-#if defined (__ksr1__)
-#  define M_MACHINE "KSR1"
-#  define M_OS "OSF1"
-#  define HAVE_SETLINEBUF
-#  define HAVE_VPRINTF
-#  define VOID_SIGHANDLER
-#  define HAVE_GETGROUPS
-#  define HAVE_STRERROR
-#  define SYSDEP_CFLAGS -DHAVE_GETDTABLESIZE -DHAVE_BCOPY -DHAVE_UID_T
-#  undef HAVE_ALLOCA
-#  undef USE_GNU_MALLOC
-#endif /* ksr1 */
-
-/* ************************ */
-/*                          */
-/*   Intel Paragon - OSF/1  */
-/*                          */
-/* ************************ */
-#if defined (__i860) && defined (__PARAGON__)
-#  define M_MACHINE "Paragon"
-#  define M_OS "OSF1"
-#  define HAVE_GETGROUPS
-#  define HAVE_SETLINEBUF
-#  define HAVE_VPRINTF
-#  define VOID_SIGHANDLER
-#  define HAVE_STRERROR
-#  define HAVE_SYS_SIGLIST
-#endif /* __i860 && __PARAGON__ */
-
-/* ************************ */
-/*                          */
-/* IBM AIX/ESA (OSF/1)      */
-/*                          */
-/* ************************ */
-#if defined(AIXESA) || (defined(__ibmesa) && defined(_AIX))
-#  define M_MACHINE "IBMESA"
-#  define M_OS "OSF1"
-#  define HAVE_GETGROUPS
-#  define HAVE_SETLINEBUF
-#  define HAVE_VPRINTF
-#  define VOID_SIGHANDLER
-#  define HAVE_STRERROR
-#  define HAVE_SYS_SIGLIST
-#  define HAVE_ALLOCA_H                /* hack for AIX/ESA, which has malloc.h */
-#  undef USE_GNU_MALLOC
-#endif /* AIXESA || (__ibmesa && _AIX) */
-
-/* ************************ */
-/*                          */
-/*   Intel i860  -- SVR4    */
-/*                          */
-/* ************************ */
-#if defined (__i860) && defined (USGr4) && !defined (M_MACHINE)
-#  define M_MACHINE "i860"
-#  define M_OS "USG"
-#  define HAVE_DIRENT
-#  define HAVE_SYS_SIGLIST
-#  define HAVE_VPRINTF
-#  define VOID_SIGHANDLER
-#  define HAVE_GETGROUPS
-#  if !defined (HAVE_GCC) && !defined (HAVE_ALLOCA_H)
-#    undef HAVE_ALLOCA
-#  endif /* !HAVE_GCC && !HAVE_ALLOCA_H */
-#  if defined (USGr4_2)
-#    define SYSDEP_CFLAGS -DUSGr4 -DUSGr4_2
-#  else
-#    define SYSDEP_CFLAGS -DUSGr4
-#  endif /* ! USGr4_2 */
-#  undef HAVE_GETWD
-#endif /* __i860 && USGr4 */
-
-/* ************************ */
-/*                         */
-/*         Xenix286        */
-/*                         */
-/* ************************ */
-#if defined (Xenix286)
-#  define M_MACHINE "i286"
-#  define M_OS "Xenix"
-
-#  define XENIX_CFLAGS -DUSG -DUSGr3 -DMEMMOVE_MISSING
-
-#  if defined (XENIX_22)
-#    define XENIX_EXTRA -DSETVBUF_REVERSED
-#    define REQUIRED_LIBRARIES -lx
-#  else /* !XENIX_22 */
-#    define HAVE_DIRENT
-#    if defined (XENIX_23)
-#      define XENIX_EXTRA -DLD_HAS_NO_DASH_L
-#      define REQUIRED_LIBRARIES -ldir
-#    else /* !XENIX_23 */
-#      define XENIX_EXTRA -xenix
-#      define SYSDEP_LDFLAGS -xenix
-#      define REQUIRED_LIBRARIES -ldir -l2.3
-#    endif /* !XENIX_23 */
-#  endif /* !XENIX_22 */
-
-#  define SYSDEP_CFLAGS XENIX_CFLAGS XENIX_EXTRA
-#  undef HAVE_ALLOCA
-#  undef HAVE_GETWD
-#  undef HAVE_RESOURCE
-#endif /* Xenix286 */
-
-/* ************************ */
-/*                         */
-/*         convex          */
-/*                         */
-/* ************************ */
-#if defined (convex)
-#  define M_MACHINE "convex"
-#  define M_OS "Bsd"
-#  undef HAVE_ALLOCA
-#  define HAVE_SETLINEBUF
-#  define HAVE_SYS_SIGLIST
-#  define HAVE_GETGROUPS
-#endif /* convex */
-
-/* ************************ */
-/*                          */
-/*          AIX/RT          */
-/*                          */
-/* ************************ */
-#if defined (aix) && !defined (aixpc)
-#  define M_MACHINE "AIXRT"
-#  define M_OS "USG"
-#  define HAVE_DIRENT
-#  define HAVE_VPRINTF
-#  define HAVE_SYS_SIGLIST
-#  define VOID_SIGHANDLER
-#  define HAVE_GETGROUPS
-#  define USE_TERMCAP_EMULATION
-#  if !defined (HAVE_GCC)
-#    undef MACHINE_CFLAGS
-#    define MACHINE_CFLAGS -a
-#  endif /* !HAVE_GCC */
-#  define SYSDEP_CFLAGS MACHINE_CFLAGS -DNLS -DUSGr3 -DHAVE_BCOPY
-#  undef USE_GNU_MALLOC
-#  undef HAVE_ALLOCA
-#  undef HAVE_RESOURCE
-#endif /* aix && !aixpc */
-
-/* **************************************** */
-/*                                         */
-/*             IBM RISC 6000               */
-/*                                         */
-/* **************************************** */
-#if defined (RISC6000) || defined (_IBMR2)
-#  define M_MACHINE "RISC6000"
-#  define M_OS "AIX"
-#  define HAVE_DIRENT
-#  define HAVE_SYS_SIGLIST
-#  define HAVE_SETLINEBUF
-#  define HAVE_VPRINTF
-#  define VOID_SIGHANDLER
-#  define USE_TERMCAP_EMULATION
-#  define HAVE_GETGROUPS
-#  define SYSDEP_CFLAGS -DNLS -DUSGr3 -DHAVE_BCOPY
-#  undef HAVE_ALLOCA
-#  undef HAVE_GETWD
-#  undef USE_GNU_MALLOC
-#endif /* RISC6000 */
-
-/* **************************************** */
-/*                                         */
-/*     u370 IBM AIX/370                    */
-/*                                         */
-/* **************************************** */
-#if defined (u370)
-#  if defined (_AIX370)
-#    define M_MACHINE "AIX370"
-#    define M_OS "Bsd"
-#    define REQUIRED_LIBRARIES -lbsd
-#    define HAVE_SETLINEBUF
-#    define HAVE_VPRINTF
-#    define SYSDEP_CFLAGS -D_BSD
-#    define HAVE_GETGROUPS
-#    define USE_TERMCAP_EMULATION
-#    undef USE_GNU_MALLOC
-#  endif /* _AIX370 */
-#  if defined (USGr4) /* System V Release 4 on 370 series architecture. */
-#    define M_MACHINE "uxp"
-#    define M_OS "USG"
-#    define HAVE_DIRENT
-#    define HAVE_SYS_SIGLIST
-#    define HAVE_VPRINTF
-#    define USE_GNU_MALLOC
-#    define VOID_SIGHANDLER
-#    if !defined (HAVE_GCC)
-#      undef HAVE_ALLOCA
-#      define EXTRA_LIB_SEARCH_PATH /usr/ucblib
-#      define REQUIRED_LIBRARIES -lc -lucb
-#    endif /* !HAVE_GCC */
-#    define HAVE_GETGROUPS
-#    define HAVE_RESOURCE
-#    define SYSDEP_CFLAGS -DUSGr4 -DSBRK_DECLARED
-#    endif /* USGr4 */
-#endif /* u370 */
-
-/* ************************ */
-/*                         */
-/*         ATT 3B          */
-/*                         */
-/* ************************ */
-#if defined (att3b) || defined (u3b2)
-#  if defined (att3b)
-#    define M_MACHINE "att3b"
-#    define HAVE_SYS_SIGLIST
-#  else /* !att3b */
-#    define M_MACHINE "u3b2"
-#  endif /* !att3b */
-#  define M_OS "USG"
-#  undef HAVE_GETWD
-#  define HAVE_VPRINTF
-#  define VOID_SIGHANDLER
-   /* For an AT&T Unix before V.3 take out the -DUSGr3 and the HAVE_DIRENT. */
-#  define SYSDEP_CFLAGS -DUSGr3
-#  define HAVE_DIRENT
-   /* Alloca requires either Gcc or cc with libPW.a. */
-#  if !defined (HAVE_GCC)
-#    define REQUIRED_LIBRARIES -lPW
-#  endif /* !HAVE_GCC */
-#endif /* att3b */
-
-/* ************************ */
-/*                         */
-/*         ATT 386         */
-/*                         */
-/* ************************ */
-#if defined (att386)
-#  define M_MACHINE "att386"
-#  define M_OS "USG"
-#  undef HAVE_GETWD
-   /* Alloca requires either Gcc or cc with libPW.a. */
-#  if !defined (HAVE_GCC)
-#    define REQUIRED_LIBRARIES -lPW
-#  endif /* HAVE_GCC */
-#  define HAVE_SYS_SIGLIST
-#  define HAVE_VPRINTF
-#  define VOID_SIGHANDLER
-   /* For an AT&T Unix before V.3 take out the -DUSGr3 and the HAVE_DIRENT. */
-#  define SYSDEP_CFLAGS -DUSGr3
-#  define HAVE_DIRENT
-#endif /* att386 */
-
-/* ************************ */
-/*                         */
-/*      ATT UNIX PC        */
-/*                         */
-/* ************************ */
-#if defined (unixpc)
-#  define M_MACHINE "unixpc"
-#  define M_OS "USG"
-#  define HAVE_VPRINTF
-#  define HAVE_DIRENT
-#  if defined (HAVE_GCC)
-#    define REQUIRED_LIBRARIES -ldirent -shlib
-#  else /* !HAVE_GCC */
-#    define REQUIRED_LIBRARIES -ldirent
-#  endif /* !HAVE_GCC */
-#  undef HAVE_GETWD
-#  undef HAVE_DUP2
-#  undef VOID_SIGHANDLER
-#  undef HAVE_WAIT_H
-#endif /* unixpc */
-
-/* ************************ */
-/*                         */
-/*         Encore          */
-/*                         */
-/* ************************ */
-#if defined (MULTIMAX)
-#  if defined (n16)
-#    define M_MACHINE "Multimax32k"
-#  else
-#    define M_MACHINE "Multimax"
-#  endif /* n16 */
-#  if defined (UMAXV)
-#    define M_OS "USG"
-#    define REQUIRED_LIBRARIES -lPW
-#    define SYSDEP_CFLAGS -DUSGr3
-#    define HAVE_DIRENT
-#    define HAVE_VPRINTF
-#    define USE_TERMCAP_EMULATION
-#    define VOID_SIGHANDLER
-#  else
-#    if defined (CMU)
-#      define M_OS "Mach"
-#    else
-#      define M_OS "Bsd"
-#    endif /* CMU */
-#    define HAVE_SYS_SIGLIST
-#    define HAVE_STRERROR
-#    define HAVE_SETLINEBUF
-#  endif /* UMAXV */
-#  define HAVE_GETGROUPS
-#endif  /* MULTIMAX */
-
-/* ******************************************** */
-/*                                             */
-/*   Encore Series 91 (88K BCS w Job Control)  */
-/*                                             */
-/* ******************************************** */
-#if defined (__m88k) && defined (__UMAXV__)
-#  define M_MACHINE "Gemini"
-#  define M_OS "USG"
-#  define REQUIRED_LIBRARIES -lPW
-#  define USE_TERMCAP_EMULATION
-#  define HAVE_DIRENT
-#  define HAVE_GETGROUPS
-#  define HAVE_VPRINTF
-#  define VOID_SIGHANDLER
-#  define SYSDEP_CFLAGS -q ext=pcc -D_POSIX_JOB_CONTROL -D_POSIX_VERSION \
-                       -Dmalloc=_malloc -Dfree=_free -Drealloc=_realloc
-#endif  /* m88k && __UMAXV__ */
-
-/* ******************************************** */
-/*                                             */
-/*    System V Release 4 on the ICL DRS6000     */
-/*                                             */
-/* ******************************************** */
-#if defined (drs6000)
-#  define M_MACHINE "drs6000"
-#  define M_OS "USG"
-#  define SYSDEP_CFLAGS -Xa -DUSGr4
-#  define SEARCH_LIB_NEEDS_SPACE
-#  define HAVE_DIRENT
-#  define HAVE_SYS_SIGLIST
-#  define HAVE_VPRINTF
-#  define HAVE_GETGROUPS
-#  define HAVE_STRERROR
-#  define VOID_SIGHANDLER
-#  define USE_GNU_TERMCAP
-#  if !defined (__GNUC__)
-#    undef HAVE_ALLOCA
-#  endif
-#  undef HAVE_ALLOCA_H
-#  undef USE_GNU_MALLOC
-#endif /* drs6000 */
-
-/* ******************************************** */
-/*                                             */
-/*   System V Release 4 on the Sparc (generic)  */
-/*                                             */
-/* ******************************************** */
-#if defined (sparc) && defined (__svr4__) && !defined (M_MACHINE)
-#  define M_MACHINE "sparc"
-#  define M_OS "SVR4"
-#  define SYSDEP_CFLAGS -DUSG -DUSGr4 -DHAVE_UID_T
-#  define HAVE_DIRENT
-#  define HAVE_VPRINTF
-#  define HAVE_GETGROUPS
-#  define HAVE_STRERROR
-#  define VOID_SIGHANDLER
-#  define USE_GNU_TERMCAP
-#  if !defined (__GNUC__)
-#    undef HAVE_ALLOCA
-#  endif
-#  undef HAVE_BCOPY
-#  undef HAVE_GETWD
-#  undef USE_GNU_MALLOC
-#endif /* sparc && __svr4__ */
-
-/* ******************* */
-/*                    */
-/*   Commodore Amiga   */
-/*                    */
-/* ******************* */
-#if defined (amiga) && defined (__NetBSD__)
-#  define M_MACHINE "amiga"
-#  define M_OS "NetBSD"
-#  define SYSDEP_CFLAGS -DOPENDIR_NOT_ROBUST -DINT_GROUPS_ARRAY \
-                       -DRLIMTYPE=quad_t
-#  define HAVE_SYS_SIGLIST
-#  define HAVE_SETLINEBUF
-#  define HAVE_GETGROUPS
-#  define HAVE_VPRINTF
-#  define HAVE_STRERROR
-#  define VOID_SIGHANDLER
-#  define HAVE_DIRENT
-#  define HAVE_STRCASECMP
-#endif /* amiga && __NetBSD__ */
-
-#if defined (amiga) && !defined (M_MACHINE)
-#  define M_MACHINE "amiga"
-#  define M_OS "USG"
-#  define SYSDEP_CFLAGS -DUSGr4
-#  if !defined (HAVE_GCC)
-#    define EXTRA_LIB_SEARCH_PATH /usr/ucblib
-#    define REQUIRED_LIBRARIES -lc -lucb
-#  endif /* !HAVE_GCC */
-#  define HAVE_DIRENT
-#  define HAVE_SYS_SIGLIST
-#  define HAVE_VPRINTF
-#  define VOID_SIGHANDLER
-#  define HAVE_GETGROUPS
-#  define HAVE_STRERROR
-#  undef HAVE_GETWD
-#  undef USE_GNU_MALLOC
-#endif /* System V Release 4 on amiga */
-
-/* ************************ */
-/*                         */
-/*         clipper         */
-/*                         */
-/* ************************ */
-/* This is for the Orion 1/05 (A BSD 4.2 box based on a Clipper processor) */
-#if defined (clipper) && !defined (M_MACHINE)
-#  define M_MACHINE "clipper"
-#  define M_OS "Bsd"
-#  define HAVE_SETLINEBUF
-#  define HAVE_GETGROUPS
-#endif  /* clipper */
-
-/* ******************************** */
-/*                                 */
-/*    Integrated Solutions 68020?   */
-/*                                 */
-/* ******************************** */
-#if defined (is68k)
-#  define M_MACHINE "is68k"
-#  define M_OS "Bsd"
-#  define HAVE_SYS_SIGLIST
-#  define HAVE_SETLINEBUF
-#  define HAVE_GETGROUPS
-#  define USE_VFPRINTF_EMULATION
-#  undef HAVE_ALLOCA
-#endif /* is68k */
-
-/* ******************************** */
-/*                                 */
-/*        Omron Luna/Mach 2.5      */
-/*                                 */
-/* ******************************** */
-#if defined (luna88k)
-#  define M_MACHINE "Luna88k"
-#  define M_OS "Bsd"
-#  define HAVE_SYS_SIGLIST
-#  define USE_GNU_MALLOC
-#  define HAVE_SETLINEBUF
-#  define HAVE_VPRINTF
-#  define HAVE_GETGROUPS
-#  define HAVE_VPRINTF
-#endif /* luna88k */
-
-/* ************************ */
-/*                         */
-/*   BBN Butterfly GP1000   */
-/*   Mach 1000 v2.5        */
-/*                         */
-/* ************************ */
-#if defined (butterfly) && defined (BFLY1)
-#define M_MACHINE "BBN Butterfly"
-#define M_OS "Mach 1000"
-#define HAVE_SETLINEBUF
-#define HAVE_SYS_SIGLIST
-#define HAVE_GETGROUPS
-#define HAVE_VPRINTF
-#  ifdef BUILDING_MAKEFILE
-MAKE = make
-#  endif /* BUILDING_MAKEFILE */
-#endif /* butterfly */
-
-/* **************************************** */
-/*                                         */
-/*         Apollo/SR10.2/BSD4.3            */
-/*                                         */
-/* **************************************** */
-/* This is for the Apollo DN3500 running SR10.2 BSD4.3 */
-#if defined (apollo)
-#  define M_MACHINE "apollo"
-#  define M_OS "Bsd"
-#  define SYSDEP_CFLAGS -D_POSIX_VERSION -D_INCLUDE_BSD_SOURCE \
-                       -D_INCLUDE_POSIX_SOURCE -DTERMIOS_MISSING \
-                       -DHAVE_BSD_PGRP -Dpid_t=int
-#  define HAVE_SYS_SIGLIST
-#  define HAVE_SETLINEBUF
-#  define HAVE_GETGROUPS
-#endif /* apollo */
-
-/* ************************ */
-/*                         */
-/*     DG AViiON           */
-/*                         */
-/* ************************ */
-/* This is for the DG AViiON box (runs DG/UX with both AT&T & BSD features.) */
-/* DG/UX comes standard with Gcc. */
-#if defined (__DGUX__) || defined (DGUX)
-#  define M_OS "DGUX"
-#  if !defined (_M88KBCS_TARGET)
-#    define M_MACHINE "AViiON"
-#    define REQUIRED_LIBRARIES -ldgc
-#  else /* _M88KBCS_TARGET */
-#    define M_MACHINE "m88kBCS_AV"
-#    undef MACHINE_CFLAGS
-#    define MACHINE_CFLAGS -D_M88K_SOURCE
-#    undef HAVE_RESOURCE
-#  endif /* _M88KBCS_TARGET */
-#  define SYSDEP_CFLAGS MACHINE_CFLAGS -D_DGUX_SOURCE -DPGRP_PIPE -DUSG
-#  define HAVE_GCC
-#  define HAVE_FIXED_INCLUDES
-#  define HAVE_STRERROR
-#  define HAVE_GETGROUPS
-#  define VOID_SIGHANDLER
-#  undef HAVE_GETWD
-#  undef USE_GNU_MALLOC
-
-/* If you want to build bash for M88K BCS compliance on a DG/UX 5.4
-   or above system, do the following:
-     - If you have built in this directory before run "make clean" to
-       endure the Bash directory is clean.
-     - Run "eval `sde-target m88kbcs`" to set the software development
-       environment to build BCS objects.
-     - Run "make".
-     - Do "eval `sde-target default`" to reset the SDE. */
-#endif /* __DGUX__ */
-
-/* ************************ */
-/*                         */
-/*    Harris Night Hawk            */
-/*                         */
-/* ************************ */
-/* This is for the Harris Night Hawk family. */
-#if defined (_CX_UX)
-#  if defined (_M88K)
-#    define M_MACHINE "nh4000"
-#  else /* !_M88K */
-#    if defined (hcx)
-#      define M_MACHINE "nh2000"
-#    else /* !hcx */
-#      if defined (gcx)
-#        define M_MACHINE "nh3000"
-#      endif /* gcx */
-#    endif /* !hcx */
-#  endif /* !_M88K */
-#  define M_OS "USG"
-#  define SYSDEP_CFLAGS -g -Xa -v -Dgetwd=bash_getwd -D_POSIX_SOURCE \
-                       -D_POSIX_JOB_CONTROL
-#  define USE_TERMCAP_EMULATION
-#  define HAVE_VPRINTF
-#  define HAVE_GETGROUPS
-#  define VOID_SIGHANDLER
-#  undef USE_GNU_MALLOC
-#  undef HAVE_GETWD
-#endif /* _CX_UX */
-
-/* **************************************** */
-/*                                         */
-/*             Tektronix                   */
-/*                                         */
-/* **************************************** */
-/* These are unproven as yet. */
-#if defined (Tek4132)
-#  define M_MACHINE "Tek4132"
-#  define M_OS "Bsd"
-#  define HAVE_SYS_SIGLIST
-#  define HAVE_SETLINEBUF
-#  define HAVE_GETGROUPS
-#endif /* Tek4132 */
-
-#if defined (Tek4300)
-#  define M_MACHINE "Tek4300"
-#  define M_OS "Bsd"
-#  define HAVE_SYS_SIGLIST
-#  define HAVE_SETLINEBUF
-#  define HAVE_GETGROUPS
-#endif /* Tek4300 */
-
-/* ************************ */
-/*                          */
-/*     Tektronix XD88       */
-/*                          */
-/* ************************ */
-#if defined (m88k) && defined (XD88)
-#  define M_MACHINE "XD88"
-#  define M_OS "USG"
-#  define HAVE_DIRENT
-#  define HAVE_VPRINTF
-#  define HAVE_GETCWD
-#  define VOID_SIGHANDLER
-#  define HAVE_GETGROUPS
-#  undef HAVE_GETWD
-#  undef HAVE_ALLOCA
-#endif /* m88k && XD88 */
-
-/* ************************ */
-/*                          */
-/*     Motorola M88100      */
-/*                          */
-/* ************************ */
-#if defined (m88k) && (defined (M88100) || defined (USGr4))
-#  define M_MACHINE "M88100"
-#  define M_OS "USG"
-#  if defined (USGr4)
-#    define SYSDEP_CFLAGS -DUSGr4 -D_POSIX_JOB_CONTROL
-#  else
-#    define SYSDEP_CFLAGS -D_POSIX_JOB_CONTROL
-#  endif
-#  define HAVE_DIRENT
-#  define HAVE_VPRINTF
-#  define VOID_SIGHANDLER
-#  define HAVE_GETGROUPS
-#  undef HAVE_GETWD
-#  if !defined (USGr4)
-#    undef HAVE_GETCWD
-#  endif
-#  undef HAVE_ALLOCA
-#endif /* m88k && M88100 */
-
-/* ************************ */
-/*                         */
-/*     Sequent Balances     */
-/*       (Dynix 3.x)       */
-/* ************************ */
-#if defined (sequent) && !defined (M_MACHINE)
-#  define M_MACHINE "Sequent"
-#  define M_OS "Bsd"
-#  define HAVE_SYS_SIGLIST
-#  define HAVE_SETLINEBUF
-#  define HAVE_GETGROUPS
-#  define LD_HAS_NO_DASH_L
-#  undef HAVE_DUP2
-#endif /* sequent */
-
-/* ****************************************** */
-/*                                           */
-/*    NCR Tower 32, System V Release 3       */
-/*                                           */
-/* ****************************************** */
-#if defined (tower32)
-#  define M_MACHINE "tower32"
-#  define M_OS "USG"
-#  if !defined (HAVE_GCC)
-#    define REQUIRED_LIBRARIES -lPW
-     /* Disable stack/frame-pointer optimization, incompatible with alloca */
-#    undef MACHINE_CFLAGS
-#    define MACHINE_CFLAGS -W2,-aat
-#  endif /* !HAVE_GCC */
-#  define SYSDEP_CFLAGS -DUSGr3 MACHINE_CFLAGS
-#  define HAVE_VPRINTF
-#  define USE_TERMCAP_EMULATION
-#  define VOID_SIGHANDLER
-#  undef HAVE_GETWD
-#endif /* tower32 */
-
-/* ************************ */
-/*                         */
-/*     Concurrent          */
-/*                         */
-/* ************************ */
-#if defined (concurrent)
-#  define M_MACHINE "Concurrent"
-#  if defined (USE_BSD_UNIVERSE)
-     /* Use the BSD universe (`universe ucb') */
-#    define M_OS "Bsd"
-#    define HAVE_SYS_SIGLIST
-#    define HAVE_SETLINEBUF
-#    define HAVE_GETGROUPS
-#  else /* !USE_BSD_UNIVERSE */
-   /* Concurrent 7000 with RTU 6.1A using the ATT universe (`universe att') */
-#    define M_OS "USG"
-#    define SYSDEP_CFLAGS -DHAVE_BCOPY -DHAVE_UID_T -DHAVE_GETDTABLESIZE -Dmc7000
-#    define REQUIRED_LIBRARIES -ljobs
-#    define HAVE_VPRINTF
-#    define HAVE_GETGROUPS
-#    define HAVE_DUP2
-#    define HAVE_DIRENT
-#    define HAVE_SYS_SIGLIST
-#  endif /* !USE_BSD_UNIVERSE */
-#endif /* concurrent */
-
-/* **************************************************************** */
-/*                                                                  */
-/*             Honeywell Bull X20 (lele@idea.sublink.org)          */
-/*                                                                  */
-/* **************************************************************** */
-#if defined (hbullx20)
-#  define M_MACHINE "Honeywell"
-#  define M_OS "USG"
-#  define SYSDEP_CFLAGS -DUSG
-   /* Bull x20 needs -lposix for struct dirent. */
-#  define REQUIRED_LIBRARIES -lPW -lposix
-#  define HAVE_DIRENT
-#  define HAVE_VPRINTF
-#  define VOID_SIGHANDLER
-#  define USE_TERMCAP_EMULATION
-#  undef HAVE_GETWD
-#endif  /* hbullx20 */
-
-/* **************************************************************** */
-/*                                                                  */
-/*             Bull DPX2 (F.Pierresteguy@frcl.bull.fr)              */
-/*                                                                  */
-/* **************************************************************** */
-#if defined (DPX2)
-#  define M_MACHINE "DPX2"
-#  define M_OS "USG"
-#  define SYSDEP_CFLAGS -DUSG -DUSGr3 -DHAVE_BCOPY -DHAVE_UID_T -D_POSIX_JOB_CONTROL
-/* #  define REQUIRED_LIBRARIES -lPW -lposix */
-#  define HAVE_DIRENT
-#  define VOID_SIGHANDLER
-#  define HAVE_POSIX_SIGNALS
-#  define HAVE_VPRINTF
-#  define HAVE_SETVBUF
-#  define HAVE_STRERROR
-#  define HAVE_GETGROUPS
-#  define HAVE_GETDTABLESIZE
-#  define USE_TERMCAP_EMULATION
-#endif  /* DPX2 */
-
-/* ************************ */
-/*                         */
-/*         CRAY            */
-/*                         */
-/* ************************ */
-#if defined (cray)
-#  include <sys/param.h>
-#  if defined (Cray1) || defined (Cray2)
-#    define M_MACHINE "Cray"
-#    define CRAY_STACK
-#  endif
-#  if defined (CrayXMP) && !defined (M_MACHINE)
-#    define M_MACHINE "CrayXMP"
-#    define CRAY_STACK -DCRAY_STACKSEG_END=getb67
-#  endif
-#  if defined (CrayYMP) && !defined (M_MACHINE)
-#    define M_MACHINE "CrayYMP"
-#    if RELEASE_LEVEL >= 7000
-#      define CRAY_STACK -DCRAY_STACKSEG_END=_getb67
-#    else
-#      define CRAY_STACK -DCRAY_STACKSEG_END=getb67
-#    endif /* RELEASE_LEVEL < 7000 */
-#  endif
-#  if !defined (M_MACHINE)
-#    define M_MACHINE "Cray"
-#    define CRAY_STACK
-#  endif
-#  define M_OS "Unicos"
-#  define SYSDEP_CFLAGS -DUSG -DPGRP_PIPE -DOPENDIR_NOT_ROBUST \
-                       -DHAVE_BCOPY CRAY_STACK
-#  define HAVE_VPRINTF
-#  define HAVE_MULTIPLE_GROUPS
-#  define VOID_SIGHANDLER
-#  define USE_TERMCAP_EMULATION
-#  undef HAVE_ALLOCA
-#  undef HAVE_RESOURCE
-#  undef USE_GNU_MALLOC
-#endif /* cray */
-
-/* ************************ */
-/*                         */
-/*     MagicStation        */
-/*                         */
-/* ************************ */
-#if defined (MagicStation)
-#  define M_MACHINE "MagicStation"
-#  define M_OS "USG"
-#  define SYSDEP_CFLAGS -DUSGr4
-#  define HAVE_DIRENT
-#  define HAVE_GETGROUPS
-#  define HAVE_STRERROR
-#  define VOID_SIGHANDLER
-#  undef HAVE_ALLOCA
-#  undef HAVE_GETWD
-#endif /* MagicStation */
-
-/* ************************ */
-/*                         */
-/*        Plexus           */
-/*                         */
-/* ************************ */
-#if defined (plexus)
-#  define M_MACHINE "plexus"
-#  define M_OS "USG"
-#  define REQUIRED_LIBRARIES -lndir
-#  define USE_TERMCAP_EMULATION
-#  undef HAVE_DUP2
-#  undef HAVE_GETWD
-#  define HAVE_VPRINTF
-#  undef HAVE_ALLOCA           /* -lPW doesn't work w/bash-cc? */
-#endif /* plexus */
-
-/* ************************ */
-/*                         */   
-/*     Siemens MX500        */
-/*      (SINIX 5.2x)       */
-/* ************************ */
-#if defined (sinix)
-#define M_MACHINE "Siemens MX500"
-#define M_OS "SINIX V5.2x"
-#define USG
-#define HAVE_GETCWD
-#define VOID_SIGHANDLER
-#define HAVE_STRERROR
-#define HAVE_GETGROUPS
-#define HAVE_VPRINTF
-#define HAVE_POSIX_SIGNALS
-#define HAVE_RESOURCE
-#define USE_GNU_MALLOC
-#define SYSDEP_CFLAGS -DUSGr3 -DUSG
-#define REQUIRED_LIBRARIES syscalls.o
-#undef HAVE_ALLOCA
-#undef HAVE_GETWD
-#endif /* sinix */
-
-/* ************************ */
-/*                         */
-/*  Symmetric 375 (4.2 BSD) */
-/*                         */
-/* ************************ */
-#if defined (scs) && !defined (M_MACHINE)
-#  define M_MACHINE "Symmetric_375"
-#  define M_OS "Bsd"
-#  define HAVE_SYS_SIGLIST
-#  define HAVE_GETGROUPS
-#  define HAVE_SETLINEBUF
-#  define USE_VFPRINTF_EMULATION
-#  define USE_GNU_MALLOC
-#  undef HAVE_STRCHR
-#endif /* scs */
-
-/* ************************ */
-/*                         */
-/*    Tandem running SVR3   */
-/*                         */
-/* ************************ */
-#if defined (tandem) && !defined (M_MACHINE)
-#  define M_MACHINE "tandem"
-#  define M_OS "USG"
-#  define SYSDEP_CFLAGS -DUSGr3
-#  define HAVE_VPRINTF
-#  define VOID_SIGHANDLER
-   /* Alloca requires either Gcc or cc with libPW.a */
-#  if !defined (HAVE_GCC)
-#    define REQUIRED_LIBRARIES -lPW
-#  endif /* !HAVE_GCC */
-#  undef HAVE_GETWD
-#endif /* Tandem running SVR3 */
-
-/* ****************** */
-/*                    */
-/*     Amdahl UTS     */
-/*                    */
-/* ****************** */
-
-#if defined (UTS)
-#  define M_MACHINE "uts"
-#  define M_OS "systemV"
-#  define SYSDEP_CFLAGS -DUSG -DMEMMOVE_MISSING
-#  define REQUIRED_LIBRARIES
-#  undef HAVE_SYS_SIGLIST
-#  undef HAVE_GETWD
-#  undef HAVE_ALLOCA
-#  define HAVE_VPRINTF
-#  define HAVE_DIRENT
-#  undef HAVE_RESOURCE
-#endif  /* UTS */
-
-/* ************************ */
-/*                         */
-/*    PCS Cadmus System            */
-/*                         */
-/* ************************ */
-#if defined (cadmus) && !defined (M_MACHINE)
-#  define M_MACHINE "cadmus"
-#  define M_OS "BrainDeath"
-#  define SYSDEP_CFLAGS -DUSG
-#  define HAVE_DIRENT
-#  define HAVE_VPRINTF
-#  define VOID_SIGHANDLER
-#  define USE_TERMCAP_EMULATION
-#  undef HAVE_GETWD
-#  undef HAVE_ALLOCA
-#  undef HAVE_WAIT_H
-#endif /* cadmus */
-
-/* **************************************************************** */
-/*                                                                 */
-/*                     Generic Entry                               */
-/*                                                                 */
-/* **************************************************************** */
-
-/* Use this entry for your machine if it isn't represented here.  It
-   is loosely based on a Vax running 4.3 BSD. */
-
-#if !defined (M_MACHINE)
-#  define UNKNOWN_MACHINE
-#endif
-
-#if defined (UNKNOWN_MACHINE)
-#  define M_MACHINE "UNKNOWN_MACHINE"
-#  define M_OS "UNKNOWN_OS"
-
-/* Required libraries for building on this system. */
-#  define REQUIRED_LIBRARIES
-
-/* Define HAVE_SYS_SIGLIST if your system has sys_siglist[]. */
-#  define HAVE_SYS_SIGLIST
-
-/* Undef HAVE_GETWD if your C library does not provide a working version
-   of getwd(). */
-/* #  undef HAVE_GETWD */
-
-/* Undef HAVE_GETCWD if your C library does not provide a working version
-   of getcwd(). */
-/* #  undef HAVE_GETCWD */
-
-/* Undef HAVE_ALLOCA if you are not using Gcc, and neither your library
-   nor compiler has a version of alloca ().  In that case, we will use
-   our version of alloca () in alloca.c */
-/* #  undef HAVE_ALLOCA */
-
-/* Undef USE_GNU_MALLOC if there appear to be library conflicts, or if you
-   especially desire to use your OS's version of malloc () and friends.  We
-   reccommend against this because GNU Malloc has debugging code built in. */
-/* #  undef USE_GNU_MALLOC */
-
-/* Define USE_GNU_TERMCAP if you want to use the GNU termcap library
-   instead of your system termcap library. */
-/* #  define USE_GNU_TERMCAP */
-
-/* Define HAVE_SETLINEBUF if your machine has the setlinebuf ()
-   stream library call.  Otherwise, setvbuf () will be used.  If
-   neither of them work, you can edit in your own buffer control
-   based upon your machines capabilities. */
-#  define HAVE_SETLINEBUF
-
-/* Define HAVE_VPRINTF if your machines has the vfprintf () library
-   call.  Otherwise, printf will be used.  */
-#  define HAVE_VPRINTF
-
-/* Define USE_VFPRINTF_EMULATION if you want to use the BSD-compatible
-   vfprintf() emulation in vprint.c. */
-/* #  define USE_VFPRINTF_EMULATION */
-
-/* Define HAVE_GETGROUPS if your OS allows you to be in multiple
-   groups simultaneously by supporting the `getgroups' system call. */
-#  define HAVE_GETGROUPS
-
-/* Define SYSDEP_CFLAGS to be the flags to cc that make your compiler
-   work.  For example, `-ma' on the RT makes alloca () work. */
-/* This is a summary of the semi-machine-independent definitions that
-   can go into SYSDEP_CFLAGS:
-
-       AFS     -       The Andrew File System is being used
-       AFS_CREATE_BUG - AFS has a bug with file creation if O_CREAT is
-                        specified
-       BROKEN_SIGSUSPEND - sigsuspend(2) does not work to wake up processes
-                           on SIGCHLD
-       HAVE_BSD_PGRP - getpgrp(2) takes a pid argument, a la 4.3 BSD
-       HAVE_BCOPY -    bcopy(3) exists and works as in BSD
-       HAVE_GETDTABLESIZE - getdtablesize(2) exists and works correctly
-       HAVE_GETHOSTNAME - gethostname(2) or gethostname(3) is present and
-                          works as in BSD
-       HAVE_GETPW_DECLS - USG machines with the getpw* functions defined in
-                          <pwd.h> that cannot handle redefinitions in the
-                          bash source
-       HAVE_RESOURCE - <sys/resource.h> and [gs]rlimit exist and work
-       HAVE_SETDTABLESIZE - setdtablesize(2) exists and works correctly
-       HAVE_SOCKETS - this system has BSD sockets added to a System V base
-       HAVE_UID_T -    Definitions for uid_t and gid_t are in <sys/types.h>
-       INT_GROUPS_ARRAY - the second argument to getgroups(3) is an array
-                          of integers
-       MEMMOVE_MISSING - the system does not have memmove(3)
-       MKFIFO_MISSING - named pipes do not work or mkfifo(3) is missing
-       NO_DEV_TTY_JOB_CONTROL - system can't do job control on /dev/tty
-       SBRK_DECLARED - don't declare sbrk as extern char *sbrk() in
-                      lib/malloc/malloc.c
-       OPENDIR_NOT_ROBUST - opendir(3) allows you to open non-directory files
-       PGRP_PIPE -     Requires parent-child synchronization via pipes to
-                       make job control work right
-       SETVBUF_REVERSED - brain-damaged implementation of setvbuf that
-                               has args 2 and 3 reversed from the SVID and
-                               ANSI standard
-       RLOGIN_PGRP_BUG - processes started by rlogind have a process group
-                         of 0
-       TERMIOS_LDISC - system has a c_line line discipline member in struct
-                       termios
-       TERMIOS_MISSING - the termios(3) functions are not present or don't
-                         work, even though _POSIX_VERSION is defined
-       USG     -       The machine is running some sort of System V Unix
-       USGr3   -       The machine is running SVR3.x
-       USGr4   -       The machine is running SVR4
-       USGr4_2 -       The machine is running SVR4.2
-
-       Some other machine-dependent options:
-       CPCC    -       Dynix
-       NLS     -       Alpha, AIX
-       _BSD    -       Alpha
-       _DGUX_SOURCE -  DG/UX
-       _INCLUDE_BSD_SOURCE - Apollo
-       _INCLUDE_POSIX_SOURCE - Apollo
-
-       Posix.1 options that are normally set in <unistd.h>:
-       _POSIX_VERSION -        Encore, Apollo
-       _POSIX_SOURCE - ISC, QNX, Harris
-       _POSIX_JOB_CONTROL - NEC EWS, Encore, Harris, Motorola, Bull
-*/
-#  define SYSDEP_CFLAGS
-
-/* Define HAVE_STRERROR if your system supplies a definition for strerror ()
-   in the C library, or a macro in a header file. */
-/* #  define HAVE_STRERROR */
-
-/* Define HAVE_STRCASECMP if your system supplies definitions for the
-   casel-insensitive string comparison functions strcasecmp and strncasemp
-   in the C library or one of the system header files. */
-/* #  define HAVE_STRCASECMP */
-
-/* Define HAVE_DIRENT if you have the dirent library and a definition of
-   struct dirent.  If not, the BSD directory reading library and struct
-   direct are assumed. */
-/* #  define HAVE_DIRENT */
-
-/* If your system does not supply /usr/lib/libtermcap.a, but includes
-   the termcap routines as a part of the curses library, then define
-   this.  This is the case on some System V machines. */
-/* #  define USE_TERMCAP_EMULATION */
-
-/* Define VOID_SIGHANDLER if your system's signal () returns a pointer to
-   a function returning void. */
-/* #  define VOID_SIGHANDLER */
-
-/* Define EXTRA_LIB_SEARCH_PATH if your required libraries (or standard)
-   ones for that matter) are not normally in the ld search path.  For
-   example, some machines require /usr/ucblib in the ld search path so
-   that they can use -lucb. */
-/* #  define EXTRA_LIB_SEARCH_PATH /usr/ucblib */
-
-/* Define SEARCH_LIB_NEEDS_SPACE if your native ld requires a space after
-   the -L argument, which gives the name of an alternate directory to search
-   for libraries specified with -llib.  For example, the HPUX ld requires
-   this:
-       -L lib/readline -lreadline
-   instead of:
-       -Llib/readline -lreadline
- */
-/* #  define SEARCH_LIB_NEEDS_SPACE */
-
-/* Define LD_HAS_NO_DASH_L if your ld can't grok the -L flag in any way, or
-   if it cannot grok the -l<lib> flag, or both. */
-/* #  define LD_HAS_NO_DASH_L */
-
-/* Define GCC_STANDARD if the standard `cc' is gcc and you don't want
-   to use the compiler named `gcc' for some reason. */
-/* #  define GCC_STANDARD */
-   
-#  if defined (LD_HAS_NO_DASH_L)
-#   undef SEARCH_LIB_NEEDS_SPACE
-#  endif /* LD_HAS_NO_DASH_L */
-
-#endif  /* UNKNOWN_MACHINE */
diff --git a/CWRU/old-conf/support/cat-s b/CWRU/old-conf/support/cat-s
deleted file mode 100644 (file)
index 87ba163..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-# This awk script is called from within Makefile to strip multiple blank
-# lines from stdin.
-BEGIN { newlines = 0 }
-{
-  if (NF == 0)
-    newlines = 1;
-  else
-    {
-      if (newlines)
-       {
-         printf "\n";
-         newlines = 0;
-       }
-      print $0;
-    }
-}
diff --git a/CWRU/old-conf/support/cppmagic b/CWRU/old-conf/support/cppmagic
deleted file mode 100755 (executable)
index b0a951c..0000000
+++ /dev/null
@@ -1,51 +0,0 @@
-#!/bin/sh
-# Return a full cpp specification, complete with system dependent flags.
-#
-# Syntax: cppmagic [ program-to-generate-flags [ guessed-cpp ]]
-#
-# If only one arg is present it is the name of a program to invoke
-# which should generate -Dfoo defines.
-#
-# If two args are present the second arg is the name of the C
-# preprocessor to use.
-#
-# Invoked with no args, provides a C preprocessor name and
-# -traditional flag if that is appropriate.
-#
-#  ../Makefile calls this file thusly: "cppmagic getcppsyms".
-#
-#  Typical output:
-#
-#    /lib/cpp -Dunix -Dm68k
-#
-
-Cpp=
-
-if [ "$2" ]; then
-   Cpp=$2
-else
-   for cpp in /lib/cpp /usr/lib/cpp /usr/ccs/lib/cpp; do
-      if [ -f $cpp ]; then
-        Cpp=$cpp
-      fi
-   done
-   if [ "$Cpp" = "" ]; then
-      Cpp=cpp
-   fi
-fi
-
-TRADITIONAL=
-FLAGS=
-
-# First flag might be `-traditional' if this is Gnu Cpp.
-unknown_flag=`$Cpp -traditional /dev/null 2>&1 |
-               egrep 'known|recognized|valid|bad|legal'`
-if [ "$unknown_flag" = "" ]; then
-  TRADITIONAL=-traditional
-fi
-
-if [ "$1" ]; then
-   FLAGS=`$1`
-fi
-
-echo $Cpp $TRADITIONAL $FLAGS
diff --git a/CWRU/old-conf/support/getcppsyms.c b/CWRU/old-conf/support/getcppsyms.c
deleted file mode 100644 (file)
index e4cb044..0000000
+++ /dev/null
@@ -1,427 +0,0 @@
-/* getcppsyms.c - Find unique compiler symbols. */
-
-/* Copyright (C) 1993 Free Software Foundation, Inc.
-
-   This file is part of GNU Bash, the Bourne Again SHell.
-
-   Bash is free software; you can redistribute it and/or modify it under
-   the terms of the GNU General Public License as published by the Free
-   Software Foundation; either version 2, or (at your option) any later
-   version.
-
-   Bash 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 General Public License
-   for more details.
-
-   You should have received a copy of the GNU General Public License along
-   with Bash; see the file COPYING.  If not, write to the Free Software
-   Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */
-
-/* Some cpp's do not define any symbols, but instead let /bin/cc do it
-   for them.  For such machines, running this file may prove useful.  It
-   outputs the list of symbols which /bin/cc or /lib/cpp define and which
-   we had the foresight to guess at. */
-
-#include <stdio.h>
-
-int
-main ()
-{
-#if defined (__BSD_4_4__)
-  printf ("-D__BSD_4_4__");
-#endif /* __BSD_4_4__ */
-#if defined (CMU)
-  printf (" -DCMU");
-#endif /* CMU */
-#if defined (_COFF)
-  printf (" -D_COFF");
-#endif /* _COFF */
-#if defined (DGUX)
-  printf (" -DDGUX");
-#endif /* DGUX */
-#if defined (GOULD_PN)
-  printf (" -DGOULD_PN");
-#endif /* GOULD_PN */
-#if defined (MACH)
-  printf (" -DMACH");
-#endif /* MACH */
-#if defined (MIPSEB)
-  printf (" -DMIPSEB");
-#endif /* MIPSEB */
-#if defined (MIPSEL)
-  printf (" -DMIPSEL");
-#endif /* MIPSEL */
-#if defined (MULTIMAX)
-  printf (" -DMULTIMAX");
-#endif /* MULTIMAX */
-#if defined (M_UNIX)
-  printf (" -DM_UNIX");
-#endif /* M_UNIX */
-#if defined (M_XENIX)
-  printf (" -DM_XENIX");
-#endif /* M_XENIX */
-#if defined (_M_XENIX)
-  printf (" -D_M_XENIX");
-#endif /* _M_XENIX */
-#if defined (NeXT)
-  printf (" -DNeXT");
-#endif /* NeXT */
-#if defined (__PARAGON__)
-  printf (" -D__PARAGON__");
-#endif /* __PARAGON__ */
-#if defined (_PGC_)
-  printf (" -D_PGC_");
-#endif /* _PGC_ */
-#if defined (__PGC__)
-  printf (" -D__PGC__");
-#endif /* __PGC__ */
-#if defined (RES)
-  printf (" -DRES");
-#endif /* RES */
-#if defined (RISC6000)
-  printf (" -DRISC6000");
-#endif /* RISC6000 */
-#if defined (RT)
-  printf (" -DRT");
-#endif /* RT */
-#if defined (SYSTYPE_BSD)
-  printf (" -DSYSTYPE_BSD");
-#endif /* SYSTYPE_BSD */
-#if defined (SYSTYPE_SYSV)
-  printf (" -DSYSTYPE_SYSV");
-#endif /* SYSTYPE_SYSV */
-#if defined (Sun386i)
-  printf (" -DSun386i");
-#endif /* Sun386i */
-#if defined (Tek4132)
-  printf (" -DTek4132");
-#endif /* Tek4132 */
-#if defined (Tek4300)
-  printf (" -DTek4300");
-#endif /* Tek4300 */
-#if defined (UMAXV)
-  printf (" -DUMAXV");
-#endif /* UMAXV */
-#if defined (USGr4)
-  printf (" -DUSGr4");
-#endif /* USGr4 */
-#if defined (USGr4_2)
-  printf (" -DUSGr4_2");
-#endif /* USGr4_2 */
-#if defined (__SVR4_2__)
-  printf (" -D__SVR4_2__");
-#endif /* __SVR4_2__ */
-#if defined (Xenix286)
-  printf (" -DXenix286");
-#endif /* Xenix286 */
-#if defined (_AIX)
-  printf (" -D_AIX");
-#endif /* _AIX */
-#if defined (_AIX370)
-  printf (" -D_AIX370");
-#endif /* _AIX370 */
-#if defined (_IBMESA)
-  printf (" -D_IBMESA");
-#endif /* _IBMESA */
-#if defined (__ibmesa)
-  printf (" -D__ibmesa");
-#endif /* __ibmesa */
-#if defined (_U370)
-  printf (" -D_U370");
-#endif /* _U370 */
-#if defined (_NLS)
-  printf (" -D_NLS");
-#endif /* _NLS */
-#if defined (_CX_UX)
-  printf (" -D_CX_UX");
-#endif /* _CX_UX */
-#if defined (_IBMR2)
-  printf (" -D_IBMR2");
-#endif /* _IBMR2 */
-#if defined (_M88K)
-  printf (" -D_M88K");
-#endif /* _M88K */
-#if defined (_M88KBCS_TARGET)
-  printf (" -D_M88KBCS_TARGET");
-#endif /* _M88KBCS_TARGET */
-#if defined (__DGUX__)
-  printf (" -D__DGUX__");
-#endif /* __DGUX__ */
-#if defined (__UMAXV__)
-  printf (" -D__UMAXV__");
-#endif /* __UMAXV__ */
-#if defined (__m88k)
-  printf (" -D__m88k");
-#endif /* __m88k */
-#if defined (__uxpm__)
-  printf (" -DUSGr4 -Du370 -D__uxpm__");
-#endif /* __uxpm__ */
-#if defined (__uxps__)
-  printf (" -D__svr4__ -D__uxps__");
-#endif /* __uxps__ */
-#if defined (alliant)
-  printf (" -Dalliant");
-#endif /* alliant */
-#if defined (alpha)
-  printf (" -Dalpha");
-#endif /* alpha */
-#if defined (__alpha)
-  printf (" -D__alpha");
-#endif /* __alpha */
-#if defined (aix)
-  printf (" -Daix");
-#endif /* aix */
-#if defined (aixpc)
-  printf (" -Daixpc");
-#endif /* aixpc */
-#if defined (apollo)
-  printf (" -Dapollo");
-#endif /* apollo */
-#if defined (ardent)
-  printf (" -Dardent");
-#endif /* ardent */
-#if defined (att386)
-  printf (" -Datt386");
-#endif /* att386 */
-#if defined (att3b)
-  printf (" -Datt3b");
-#endif /* att3b */
-#if defined (bsd4_2)
-  printf (" -Dbsd4_2");
-#endif /* bsd4_2 */
-#if defined (bsd4_3)
-  printf (" -Dbsd4_3");
-#endif /* bsd4_3 */
-#if defined (__bsdi__)
-  printf (" -D__bsdi__");
-#endif /* __bsdi__ */
-#if defined (bsdi)
-  printf (" -Dbsdi");
-#endif /* bsdi */
-#if defined (__386BSD__)
-  printf (" -D__386BSD__");
-#endif /* __386BSD__ */
-#if defined (cadmus)
-  printf (" -Dcadmus");
-#endif /* cadmus */
-#if defined (clipper)
-  printf (" -Dclipper");
-#endif /* clipper */
-#if defined (concurrent)
-  printf (" -Dconcurrent");
-#endif /* concurrent */
-#if defined (convex) || defined (__convex__) || defined (__convexc__)
-#  if !defined (__GNUC__)
-  printf (" -pcc");
-#  endif /* !__GNUC__ */
-  printf (" -Dconvex");
-#endif /* convex */
-#if defined (dmert)
-  printf (" -Ddmert");
-#endif /* dmert */
-#if defined (gcos)
-  printf (" -Dgcos");
-#endif /* gcos */
-#if defined (gcx)
-  printf (" -Dgcx");
-#endif /* gcx */
-#if defined (gould)
-  printf (" -Dgould");
-#endif /* gould */
-#if defined (hbullx20)
-  printf (" -Dhbullx20");
-#endif /* hbullx20 */
-#if defined (hcx)
-  printf (" -Dhcx");
-#endif /* hcx */
-#if defined (host_mips)
-  printf (" -Dhost_mips");
-#endif /* host_mips */
-#if defined (hp9000) || defined (__hp9000)
-  printf (" -Dhp9000");
-#endif /* hp9000 || __hp9000 */
-#if defined (hp9000s200) || defined (__hp9000s200)
-  printf (" -Dhp9000s200");
-#endif /* hp9000s200 || __hp9000s200 */
-#if defined (hp9000s300) || defined (__hp9000s300)
-  printf (" -Dhp9000s300");
-#endif /* hp9000s300 || __hp9000s300 */
-#if defined (hp9000s500) || defined (__hp9000s500)
-  printf (" -Dhp9000s500");
-#endif /* hp9000s500 || __hp9000s500 */
-#if defined (hp9000s700) || defined (__hp9000s700)
-  printf (" -Dhp9000s700");
-#endif /* hp9000s700 || __hp9000s700 */
-#if defined (hp9000s800) || defined (__hp9000s800)
-  printf (" -Dhp9000s800");
-#endif /* hp9000s800 || __hp9000s800 */
-#if defined (hppa) || defined (__hppa)
-  printf (" -Dhppa");
-#endif /* hppa || __hppa */
-#if defined (hpux) || defined (__hpux)
-  printf (" -Dhpux");
-#endif /* hpux */
-#if defined (__hp_osf)
-  printf (" -D__hp_osf");
-#endif /* __hp_osf */
-#if defined (i386)
-  printf (" -Di386");
-#endif /* i386 */
-#if defined (__i386__)
-  printf (" -D__i386__");
-#endif
-#if defined (__i860)
-  printf(" -D__i860");
-#endif /* __i860 */
-#if defined (__i860__)
-  printf(" -D__i860__");
-#endif /* __i860__ */
-#if defined (ibm)
-  printf (" -Dibm");
-#endif /* ibm */
-#if defined (ibm032)
-  printf (" -Dibm032");
-#endif /* ibm032 */
-#if defined (ibmrt)
-  printf (" -Dibmrt");
-#endif /* ibmrt */
-#if defined (interdata)
-  printf (" -Dinterdata");
-#endif /* interdata */
-#if defined (is68k)
-  printf (" -Dis68k");
-#endif /* is68k */
-#if defined (ksr1)
-  printf (" -Dksr1");
-#endif /* ksr1 */
-#if defined (__ksr1__)
-  printf (" -D__ksr1__");
-#endif /* __ksr1__ */
-#if defined (linux)
-  printf (" -Dlinux");
-#endif /* linux */
-#if defined (__linux__)
-  printf (" -D__linux__");
-#endif /* __linux__ */
-#if defined (luna88k)
-  printf (" -Dluna88k");
-#endif /* luna88k */
-#if defined (m68k)
-  printf (" -Dm68k");
-#endif /* m68k */
-#if defined (m88k)
-  printf (" -Dm88k");
-#endif /* m88k */
-#if defined (mc68010)
-  printf (" -Dmc68010");
-#endif /* mc68010 */
-#if defined (mc68020)
-  printf (" -Dmc68020");
-#endif /* mc68020 */
-#if defined (mc68030)
-  printf (" -Dmc68030");
-#endif /* mc68030 */
-#if defined (mc68040)
-  printf (" -Dmc68040");
-#endif /* mc68040 */
-#if defined (mc68k32)
-  printf (" -Dmc68k32");
-#endif /* mc68k32 */
-#if defined (mips)
-  printf (" -Dmips");
-#endif /* mips */
-#if defined (n16)
-  printf (" -Dn16");
-#endif /* n16 */
-#if defined (ns32000)
-  printf (" -Dns32000");
-#endif /* ns32000 */
-#if defined (os)
-  printf (" -Dos");
-#endif /* os */
-#if defined (osf)
-  printf (" -Dosf");
-#endif /* osf */
-#if defined (__osf__)
-  printf (" -D__osf__");
-#endif /* __osf__ */
-#if defined (__OSF1__)
-  printf(" -D__OSF1__");
-#endif /* __OSF1__ */
-#if defined (pdp11)
-  printf (" -Dpdp11");
-#endif /* pdp11 */
-#if defined (plexus)
-  printf (" -Dplexus")
-#endif /* plexus */
-#if defined (pyr)
-  printf (" -Dpyr");
-#endif /* pyr */
-#if defined (scs)
-  printf (" -Dscs");
-#endif /* scs */
-#if defined (sequent)
-  printf (" -Dsequent");
-#endif /* sequent */
-#if defined (sgi)
-  printf (" -Dsgi");
-#endif /* sgi */
-#if defined (sony)
-  printf (" -Dsony");
-#endif /* sony */
-#if defined (sparc)
-  printf (" -Dsparc");
-#endif /* sparc */
-#if defined (stardent)
-  printf (" -Dstardent");
-#endif /* stardent */
-#if defined (sun)
-  printf (" -Dsun");
-#endif /* sun */
-#if defined (sun2)
-  printf (" -Dsun2");
-#endif /* sun2 */
-#if defined (sun3)
-  printf (" -Dsun3");
-#endif /* sun3 */
-#if defined (sun4)
-  printf (" -Dsun4");
-#endif /* sun4 */
-#if defined (__svr4__)
-  printf (" -D__svr4__");
-#endif /* __svr4__ */
-#if defined (tower32)
-  printf (" -Dtower32");
-#endif /* tower32 */
-#if defined (tss)
-  printf (" -Dtss");
-#endif /* tss */
-#if defined (u370)
-  printf (" -Du370");
-#endif /* u370 */
-#if defined (u3b)
-  printf (" -Du3b");
-#endif /* u3b */
-#if defined (u3b2)
-  printf (" -Du3b2");
-#endif /* u3b2 */
-#if defined (u3b20d)
-  printf (" -Du3b20d");
-#endif /* u3b20d */
-#if defined (u3b5)
-  printf (" -Du3b5");
-#endif /* u3b5 */
-#if defined (ultrix)
-  printf (" -Dultrix");
-#endif /* ultrix */
-#if defined (unix)
-  printf (" -Dunix");
-#endif /* unix */
-#if defined (vax)
-  printf (" -Dvax");
-#endif /* vax */
-
-  printf ("\n");
-  exit (0);
-}
diff --git a/CWRU/old-conf/support/inpath b/CWRU/old-conf/support/inpath
deleted file mode 100755 (executable)
index 95f28bc..0000000
+++ /dev/null
@@ -1,19 +0,0 @@
-#! /bin/sh
-#
-# Search $PATH for a file the same name as $1; return TRUE if found.
-#
-
-command=$1
-[ -n "$command" ] || exit 1
-
-set `echo $PATH | sed 's/^:/.:/
-                       s/::/:.:/g
-                       s/:$/:./
-                       s/:/ /g'`
-       
-while [ $# -ne 0 ] ; do
-       [ -f $1/$command ] && exit 0    # test -x not universal
-       shift
-done
-
-exit 1
diff --git a/CWRU/old-conf/support/mkmachtype b/CWRU/old-conf/support/mkmachtype
deleted file mode 100755 (executable)
index b2bc5ca..0000000
+++ /dev/null
@@ -1,282 +0,0 @@
-#!/bin/sh
-# This script attempts to guess a canonical system name.
-#   Copyright (C) 1992, 1993 Free Software Foundation, Inc.
-#
-# This file is free software; you can redistribute it and/or modify it
-# under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program 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
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.  */
-
-#
-# This script attempts to guess a canonical system name similar to
-# config.sub.  If it succeeds, it prints the system name on stdout, and
-# exits with 0.  Otherwise, it exits with 1.
-#
-# The plan is that this can be called by configure scripts if you
-# don't specify an explicit system type (host/target name).
-#
-# Only a few systems have been added to this list; please add others
-# (but try to keep the structure clean).
-#
-
-UNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown
-UNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown
-UNAME_SYSTEM=`(uname -s) 2>/dev/null` || UNAME_SYSTEM=unknown
-UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown
-
-# Note: order is significant - the case branches are not exclusive.
-
-case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
-    alpha:OSF1:1.*:*)
-       # 1.2 uses "1.2" for uname -r.
-       echo alpha-dec-osf${UNAME_RELEASE}
-        exit 0 ;;
-    alpha:OSF1:V1.*:*)
-       # 1.3 uses "V1.3" for uname -r.
-       echo alpha-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^V//'`
-       exit 0 ;;
-    arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*)
-       echo arm-acorn-riscix${UNAME_RELEASE}
-       exit 0;;
-    sun4*:SunOS:5.*:*)
-       echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
-       exit 0 ;;
-    sun4*:SunOS:6*:*)
-       # According to config.sub, this is the proper way to canonicalize
-       # SunOS6.  Hard to guess exactly what SunOS6 will be like, but
-       # it's likely to be more like Solaris than SunOS4.
-       echo sparc-sun-solaris3`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
-       exit 0 ;;
-    sun4*:SunOS:*:*)
-       echo sparc-sun-sunos${UNAME_RELEASE}
-       exit 0 ;;
-    sun3*:SunOS:*:*)
-       echo m68k-sun-sunos${UNAME_RELEASE}
-       exit 0 ;;
-    RISC*:ULTRIX:*:*)
-       echo mips-dec-ultrix${UNAME_RELEASE}
-       exit 0 ;;
-    VAX*:ULTRIX*:*:*)
-       echo vax-dec-ultrix${UNAME_RELEASE}
-       exit 0 ;;
-    mips:*:5*:RISCos)
-       echo mips-mips-riscos${UNAME_RELEASE}
-       exit 0 ;;
-    m88k:*:4*:R4*)
-       echo m88k-motorola-sysv4
-       exit 0 ;;
-    m88k:*:3*:R3*)
-       echo m88k-motorola-sysv3
-       exit 0 ;;
-    AViiON:dgux:*:*)
-       echo m88k-dg-dgux${UNAME_RELEASE}
-       exit 0 ;;
-    M88*:*:R3*:*)
-       # Delta 88k system running SVR3
-       echo m88k-motorola-sysv3
-       exit 0 ;;
-    *:IRIX:*:*)
-       echo mips-sgi-irix${UNAME_RELEASE}
-       exit 0 ;;
-    i[34]86:AIX:*:*)
-       echo i386-ibm-aix
-       exit 0 ;;
-    *:AIX:2:3)
-       echo rs6000-ibm-aix3.2
-       exit 0 ;;
-    *:AIX:*:*)
-       echo rs6000-ibm-aix
-       exit 0 ;;
-    *:BOSX:*:*)
-       echo rs6000-bull-bosx
-       exit 0 ;;
-    DPX/2?00:B.O.S.:*:*)
-       echo m68k-bull-sysv3
-       exit 0 ;;
-    9000/31?:HP-UX:*:*)
-       echo m68000-hp-hpux
-       exit 0 ;;
-    9000/[34]??:HP-UX:*:*)
-       echo m68k-hp-hpux
-       exit 0 ;;
-    9000/[34]??:4.3bsd:1.*:*)
-       echo m68k-hp-bsd
-       exit 0 ;;
-    hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*)
-       echo m68k-hp-bsd4.4
-       exit 0 ;;
-    9000/7??:HP-UX:*:* | 9000/8?7:HP-UX:*:* )
-       echo hppa1.1-hp-hpux
-       exit 0 ;;
-    9000/8??:HP-UX:*:*)
-       echo hppa1.0-hp-hpux
-       exit 0 ;;
-    3050*:HI-UX:*:*)
-       sed 's/^        //' << EOF >dummy.c
-       #include <unistd.h>
-       int
-       main ()
-       {
-         long cpu = sysconf (_SC_CPU_VERSION);
-         if (CPU_IS_HP_MC68K (cpu))
-           puts ("m68k-hitachi-hiuxwe2");
-         else if (CPU_IS_PA_RISC (cpu))
-           {
-             switch (cpu)
-               {
-                 case CPU_PA_RISC1_0: puts ("hppa1.0-hitachi-hiuxwe2"); break;
-                 case CPU_PA_RISC1_1: puts ("hppa1.1-hitachi-hiuxwe2"); break;
-                 case CPU_PA_RISC2_0: puts ("hppa2.0-hitachi-hiuxwe2"); break;
-                 default: puts ("hppa-hitachi-hiuxwe2"); break;
-               }
-           }
-         else puts ("unknown-hitachi-hiuxwe2");
-         exit (0);
-       }
-EOF
-       ${CC-cc} dummy.c -o dummy && ./dummy && rm dummy.c dummy && exit 0
-       rm -f dummy.c dummy
-       echo unknown-hitachi-hiuxwe2
-       exit 0 ;;
-    9000/7??:4.3bsd:*:* | 9000/8?7:4.3bsd:*:* )
-       echo hppa1.1-hp-bsd
-       exit 0 ;;
-    9000/8??:4.3bsd:*:*)
-       echo hppa1.0-hp-bsd
-       exit 0 ;;
-    C1*:ConvexOS:*:*)
-       echo c1-convex-bsd
-        exit 0 ;;
-    C2*:ConvexOS:*:*)
-       echo c2-convex-bsd
-        exit 0 ;;
-    CRAY*X-MP:UNICOS:*:*)
-       echo xmp-cray-unicos
-        exit 0 ;;
-    CRAY*Y-MP:UNICOS:*:*)
-       echo ymp-cray-unicos
-        exit 0 ;;
-    CRAY-2:UNICOS:*:*)
-       echo cray2-cray-unicos
-        exit 0 ;;
-    hp3[0-9][05]:NetBSD:*:*)
-       echo m68k-hp-netbsd${UNAME_RELEASE}
-       exit 0 ;;
-    i[34]86:NetBSD:*:*)
-       echo ${UNAME_MACHINE}-unknown-netbsd${UNAME_RELEASE}
-       exit 0 ;;
-    amiga:NetBSD:*:*)
-       echo m68k-cbm-netbsd{$UNAME_RELEASE}
-       exit 0 ;;
-    i[34]86:Linux:*:*)
-       echo ${UNAME_MACHINE}-unknown-linux
-       exit 0 ;;
-    i[34]86:UNIX_SV:4.*:*)
-       if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then
-               echo ${UNAME_MACHINE}-univel-sysv${UNAME_RELEASE}
-       else
-               echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE}
-       fi
-       exit 0 ;;
-    i[34]86:*:3.2:*)
-       if /bin/uname -X 2>/dev/null >/dev/null ; then
-               UNAME_REL=`(/bin/uname -X|egrep Release|sed -e 's/.*= //')`
-               (/bin/uname -X|egrep i80486 >/dev/null) && UNAME_MACHINE=i486
-               echo ${UNAME_MACHINE}-unknown-sco$UNAME_REL
-       else
-               echo ${UNAME_MACHINE}-unknown-sysv3.2
-       fi
-       exit 0 ;;
-    mini*:CTIX:SYS*5:*)
-       # "miniframe"
-       echo m68010-convergent-sysv
-       exit 0 ;;
-    M680[234]0:*:R3V[567]*:*)
-       test -r /sysV68 && echo 'm68k-motorola-sysv' && exit 0 ;;
-    3[34]??:*:4.0:*)
-       uname -p 2>/dev/null | grep 86 >/dev/null \
-         && echo i486-ncr-sysv4 && exit 0 ;;
-    m680[234]0:LynxOS:2.2*:*)
-       echo m68k-lynx-lynxos${UNAME_RELEASE}
-       exit 0 ;;
-    i[34]86:LynxOS:2.2*:*)
-       echo i386-lynx-lynxos${UNAME_RELEASE}
-       exit 0 ;;
-    TSUNAMI:LynxOS:2.2*:*)
-       echo sparc-lynx-lynxos${UNAME_RELEASE}
-       exit 0 ;;
-esac
-
-#echo '(No uname command or uname output not recognized.)' 1>&2
-#echo "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" 1>&2
-
-cat >dummy.c <<EOF
-main()
-{
-#if defined (sony)
-#if defined (MIPSEB)
-#else
-  printf("m68k-sony-newsos\n"); exit(0);
-#endif
-#endif
-
-#if defined (__arm) && defined (__acorn) && defined (__unix)
-  printf("arm-acorn-riscix"); exit (0);
-#endif
-
-#if defined(hp300) && !defined(hpux)
-  printf("m68k-hp-bsd\n"); exit(0);
-#endif
-
-#if defined(NeXT)
-  printf("m68k-next-bsd\n"); exit(0);
-#endif
-
-#if defined (MULTIMAX) || defined (n16)
-#if defined (UMAXV)
-  printf("ns32k-encore-sysv\n"); exit(0);
-#else
-#if defined (CMU)
-  printf("ns32k-encore-mach\n"); exit(0);
-#else
-  printf("ns32k-encore-bsd\n"); exit(0);
-#endif
-#endif
-#endif
-
-#if defined(__386BSD__) || (defined(__bsdi__) && defined(__i386__))
-  printf("i386-unknown-bsd\n"); exit(0);
-#endif
-
-#if defined(sequent)
-#if defined(i386)
-  printf("i386-sequent-dynix\n"); exit(0);
-#endif
-#if defined (ns32000)
-  printf("ns32k-sequent-dynix\n"); exit(0);
-#endif
-#endif
-
-#if defined(_SEQUENT_)
-  printf("i386-sequent-ptx\n"); exit(0);
-#endif
-
-  exit (1);
-}
-EOF
-
-${CC-cc} dummy.c -o dummy && ./dummy && rm dummy.c dummy && exit 0
-rm -f dummy.c dummy
-
-#echo '(Unable to guess system type)' 1>&2
-
-exit 1
diff --git a/CWRU/old-conf/support/mksysdefs b/CWRU/old-conf/support/mksysdefs
deleted file mode 100755 (executable)
index 05040d1..0000000
+++ /dev/null
@@ -1,489 +0,0 @@
-#!/bin/sh
-#
-# This file creates a file called "sysdefs.h" which contains CPP defines
-# helping to describe the operating system features.  We just take guesses
-# by looking at random files.
-
-# Removes any inherited definitions.
-SYSDEF=
-MAKE_ANSI=
-
-while [ $# -gt 0 ]; do
-       case "$1" in
-       -s)     shift; srcdir=$1; shift ;;
-       -i)     shift; incdir="$1"; shift ;;
-       -A)     shift; MAKE_ANSI=true ;;
-       *)      break ;;
-       esac
-done
-
-sysdefs=${1-./sysdefs.h}
-: ${srcdir=.}
-
-rm -f $sysdefs
-
-echo "/* sysdefs.h -- #defines for your system created by $0."    >>$sysdefs
-echo "   Do NOT EDIT this file, since any changes will disappear." >>$sysdefs
-echo "   Instead, edit $0, or config.h, or machines.h. */"        >>$sysdefs
-echo ""                                                                   >>$sysdefs
-echo "#if !defined (_SYSDEFS_H_)"                                 >>$sysdefs
-echo "#  define _SYSDEFS_H_"                                      >>$sysdefs
-
-# was if [ -f /usr/bin/uname ] || [ -f /bin/uname ]
-if ( uname >/dev/null 2>&1 ) 2>/dev/null
-then
-       UNAME=`uname`                   # SunOS
-       UNAME_R=`uname -r 2>/dev/null`  # 4.1.2
-       UNAME_M=`uname -m 2>/dev/null`  # sun4m
-       UNAME_V=`uname -v 2>/dev/null`  # 13
-       UNAME_S=`uname -s 2>/dev/null`  # SunOS
-       RELEASE=`expr "$UNAME_R" : '[^0-9]*\([0-9]*\)'` # 4
-       case "$RELEASE" in
-       "")     RELEASE=0 ;;
-       *)      RELEASE=`expr "$RELEASE" + 0` ;;
-       esac
-       LEVEL=`expr "$UNAME_R" : '[^0-9]*[0-9]*.\([0-9]*\)'`    # 1
-       SUBLEVEL=`expr "$UNAME_R" : '[^0-9]*[0-9]*.[0-9]*.\([0-9]*\)'` # 2
-fi
-
-# check for versions of SunOS and BSD/OS
-case "${UNAME}${RELEASE}" in
-SunOS4*) SYSDEF=SunOS4 ;;
-SunOS5*) SYSDEF=SunOS5 ;;
-BSD/OS2*) SYSDEF=BSDI2 ;;
-esac
-
-# Test for NeXT
-if [ -d /NextLibrary ]; then
-       MAKE_ANSI=true
-fi
-
-# Intel Paragon
-case "$UNAME_M" in
-paragon) MAKE_ANSI=true ;;
-esac
-
-# Test for shared libraries (this is pretty sVr4ish).
-if [ -f /usr/ccs/lib/libc.so ]; then
-       SYSDEF=USGr4
-fi
-
-# Some versions of i386 SVR4.2 make `uname' equivalent to `uname -n', which
-# is contrary to all other versions of uname
-if [ -n "$UNAME" ] && [ "$UNAME_S" != "$UNAME" ] && [ "$UNAME_S" = UNIX_SV ]; then
-       UNAME=UNIX_SV
-fi
-
-# another check for SVR4 on 386 or 486 machines
-case "${UNAME_M}:${UNAME}:${UNAME_R}" in
-i[34]86:UNIX_SV:4.*)   SYSDEF=USGr4 ;;
-esac
-
-# A check for Mips RISCos
-case "$UNAME_V" in
-UMIPS|RISCos) SYSDEF=RISCos_${RELEASE}_${LEVEL} ;;
-esac
-
-# A check for Amdahl UTS
-case "$UNAME" in
-uts) SYSDEF=UTS ;;
-esac
-
-# Look for an error message when trying to exec bison.  If we find
-# what we're looking for, then we don't have it.  If we get something
-# else (like an error message about no grammar file), then we have
-# it.
-YACC=yacc
-if ( cd /tmp ; bison /dev/null 2>&1 >/dev/null | grep 'no input grammar' >/dev/null 2>&1 ) 2>/dev/null; then
-       YACC="bison -y"
-elif ( cd /tmp ; byacc /dev/null 2>&1 >/dev/null | grep 'unexpected ' >/dev/null 2>&1) 2>/dev/null; then
-       YACC=byacc
-fi
-
-# Try to locate ranlib.  I think this is a bad idea.
-if sh ${srcdir}/support/inpath ranlib; then
-       RANLIB_LOCATION=ranlib
-elif [ -f /usr/bin/ranlib ]; then
-       RANLIB_LOCATION=/usr/bin/ranlib;
-elif [ -f /bin/ranlib ]; then
-       RANLIB_LOCATION=/bin/ranlib;
-elif [ -f /usr/local/bin/ranlib ]; then
-       RANLIB_LOCATION=/usr/local/bin/ranlib;
-elif [ -f /usr/gnu/bin/ranlib ]; then
-       RANLIB_LOCATION=/usr/gnu/bin/ranlib
-elif [ -f /usr/local/gnubin/ranlib ]; then
-       RANLIB_LOCATION=/usr/local/gnubin/ranlib;
-else
-       RANLIB_LOCATION=:       # XXX
-fi
-
-if [ -n "${RANLIB_LOCATION}" ]; then
-  echo ""                                              >>$sysdefs
-  echo "#if !defined (RANLIB_LOCATION)"                >>$sysdefs
-  echo "#  define RANLIB_LOCATION ${RANLIB_LOCATION}"  >>$sysdefs
-  echo "#endif /* RANLIB_LOCATION */"                  >>$sysdefs
-fi
-
-#
-# Is this a Xenix system?
-#
-if [ -f /xenix ]; then
-  SYSDEF="Xenix"
-  case "`/bin/uname -p`" in
-    *286) SYSDEF="Xenix286" ;;
-    *386) SYSDEF="Xenix386" ;;
-  esac
-
-  # make sure that `i386' is defined for machines.h
-  if [ "$SYSDEF" = "Xenix386" ]; then
-    echo ""                            >>$sysdefs
-    echo "#if !defined (i386)"         >>$sysdefs
-    echo "#  define i386"              >>$sysdefs
-    echo "#endif /* !i386 */"          >>$sysdefs      
-  fi
-
-  # Pass the release number of the OS through to the machine descriptions
-  # in machines.h.
-  if [ -f /etc/perms/soft ]; then
-    rel=`grep rel= /etc/perms/soft`
-    case "$rel" in
-      *2.2.*) XREL=XENIX_22 ;;
-      *2.3.*) XREL=XENIX_23 ;;
-      *3.2.*) XREL=XENIX_32 ;;
-      *) XREL= ;;
-    esac
-
-    if [ "$XREL" ]; then
-      echo ""                          >>$sysdefs
-      echo "#if !defined ($XREL)"      >>$sysdefs
-      echo "#  define $XREL"           >>$sysdefs
-      echo "#endif /* !$XREL */"       >>$sysdefs
-    fi
-  fi
-fi
-
-#
-# Is this some kind of Sys Vish system?
-#
-if [ -f /unix ]; then
-  if [ -d /generic ]; then   # This is an AIX system.
-    SYSDEF="aixpc"
-    MAKE_ANSI=true
-  elif [ -d /etc/conf/kconfig.d ] && [ -f /usr/include/sys/limits.h ]; then
-    SYSDEF="isc386"                    # This is a 386 running ISC?
-    ISCREL="ISC_$RELEASE"
-    echo "#if !defined ($ISCREL)"      >>$sysdefs
-    echo "#  define $ISCREL"           >>$sysdefs
-    echo "#endif /* $ISCREL */"                >>$sysdefs
-  elif [ -f /etc/xlc.cfg ]; then
-    if fgrep _IBMR2 /etc/xlc.cfg >/dev/null 2>&1; then
-      SYSDEF=RISC6000
-      MAKE_ANSI=true
-    fi
-  elif [ -f /bin/4d -a -f /bin/uname ]; then
-    case "$UNAME_R" in
-      3.*) SYSDEF="Irix3" ;;
-      4.*) SYSDEF="Irix4" ;;
-      5.*) SYSDEF="Irix5" ;;
-      6.*) SYSDEF="Irix6" ;;
-      *)   SYSDEF="Irix3" ;;
-    esac
-  elif [ -d /usr/amiga ]; then
-    SYSDEF="amiga"             # An Amiga running V.4.
-  elif [ -f /bin/fxc.info ]; then
-    SYSDEF="alliant"
-  fi
-fi
-
-# Is this a Unicos system?
-if [ -f /unicos ]; then
-   MAKE_ANSI=true
-   UnicosMachine=
-
-   # Test for the variaous flavors of Cray machines.
-   if [ -x /bin/cray1 ] && /bin/cray1 2>/dev/null; then
-      UnicosMachine=Cray1
-   fi
-
-   if [ -x /bin/cray2 ] && /bin/cray2 2>/dev/null; then
-      UnicosMachine=Cray2
-   fi
-
-   if [ -x /bin/crayxmp ] && /bin/crayxmp 2>/dev/null; then
-      UnicosMachine=CrayXMP
-   fi
-   if [ -x /bin/crayymp ] && /bin/crayymp 2>/dev/null; then
-      UnicosMachine=CrayYMP
-   fi
-
-   if [ "$UnicosMachine" ]; then
-      echo "#if !defined ($UnicosMachine)"     >>$sysdefs
-      echo "#  define $UnicosMachine"          >>$sysdefs
-      echo "#endif /* !$UnicosMachine */"      >>$sysdefs
-   fi
-fi
-
-# Is this (and what kind of) a HPUX system?
-if [ -f /hp-ux ]; then
-  SYSDEF=HPUX_${RELEASE}
-  if [ "$RELEASE" = 6 -a "$LEVEL" -lt 2 ]; then
-    SYSDEF=HPUX_USG
-  fi
-fi
-
-if [ "$SYSDEF" = "" ]; then
-       case "$UNAME_M" in
-       ESA) SYSDEF=AIXESA ;;    
-       XD88*) SYSDEF=XD88 ;;
-       M88100) SYSDEF=M88100 ;;        # Motorola Delta 88K
-       esac
-fi
-
-# What release of SCO Unix is this?
-if [ "$SYSDEF" = "" -a -f /bin/uname ]; then
-  case `/bin/uname -X 2>/dev/null | grep '^Release' 2>/dev/null` in
-    *3.2v4.*) SYSDEF=SCOv4 ;;
-          *) SYSDEF=SCO ;;
-  esac
-fi
-
-#
-# Default to cadmus for unknown SysVish systems
-#
-if [ -f /unix ] && [ "$SYSDEF" = "" ]; then
-  SYSDEF="cadmus"
-fi
-
-if [ "$SYSDEF" != "" ]; then
-  echo ""                                      >>$sysdefs
-  echo "#if !defined ($SYSDEF)"                        >>$sysdefs
-  echo "#  define $SYSDEF"                     >>$sysdefs
-  echo "#endif /* $SYSDEF */"                  >>$sysdefs
-fi
-
-# Now look for certain include files in a list of directories
-# Poor substitute for autoconf
-
-# Add any other directories where include files are found to this list or
-# create another case
-if [ -n "$incdir" ]; then
-       dirlist="$incdir"
-else
-       case "$SYSDEF" in
-       RISCos*) dirlist="/bsd43/usr/include";;
-       *) dirlist="/usr/include /usr/include/bsd /usr/include/ansi" ;;
-       esac
-fi
-
-# Code fragment to be executed to find a particular include file.  Make sure
-# to set `file' to the pathname of the file you want, relative to /usr/include,
-# before calling `eval $findf'.
-findf="
-found='';
-for d in \$dirlist;
-do
-       if test -f \$d/\$file;
-       then
-               found=yes;
-               break;
-       fi;
-done
-"
-
-file=sys/stream.h
-eval $findf
-if [ -n "$found" ]; then
-  echo ""                                      >>$sysdefs
-  echo "#if !defined (HAVE_SYS_STREAM_H)"      >>$sysdefs
-  echo "#  define HAVE_SYS_STREAM_H"           >>$sysdefs
-  echo "#endif /* HAVE_SYS_STREAM_H */"                >>$sysdefs
-fi
-
-file=sys/ptem.h
-eval $findf
-if [ -n "$found" ]; then
-  echo ""                                      >>$sysdefs
-  echo "#if !defined (HAVE_SYS_PTEM_H)"                >>$sysdefs
-  echo "#  define HAVE_SYS_PTEM_H"             >>$sysdefs
-  echo "#endif /* HAVE_SYS_PTEM_H */"          >>$sysdefs
-fi
-
-file=sys/pte.h
-eval $findf
-if [ -n "$found" ]; then
-  echo ""                                      >>$sysdefs
-  echo "#if !defined (HAVE_SYS_PTE_H)"         >>$sysdefs
-  echo "#  define HAVE_SYS_PTE_H"              >>$sysdefs
-  echo "#endif /* HAVE_SYS_PTE_H */"           >>$sysdefs
-fi
-
-file=sys/wait.h
-eval $findf
-if [ -n "$found" ]; then
-  echo ""                                      >>$sysdefs
-  echo "#if !defined (HAVE_SYS_WAIT_H)"                >>$sysdefs
-  echo "#  define HAVE_SYS_WAIT_H"             >>$sysdefs
-  echo "#endif /* HAVE_SYS_WAIT_H */"          >>$sysdefs
-fi
-
-file=sys/resource.h
-eval $findf
-if [ -n "$found" ]; then
-  echo ""                                      >>$sysdefs
-  echo "#if !defined (HAVE_RESOURCE)"          >>$sysdefs
-  echo "#  define HAVE_RESOURCE"               >>$sysdefs
-  echo "#endif /* HAVE_RESOURCE */"            >>$sysdefs
-fi
-
-file=sys/param.h
-eval $findf
-if [ -n "$found" ]; then
-  echo ""                                      >>$sysdefs
-  echo "#if !defined (HAVE_SYS_PARAM_H)"       >>$sysdefs
-  echo "#  define HAVE_SYS_PARAM_H"            >>$sysdefs
-  echo "#endif /* HAVE_SYS_PARAM_H */"         >>$sysdefs
-fi
-
-file=unistd.h
-eval $findf
-if [ -n "$found" ]; then
-  echo ""                                      >>$sysdefs
-  echo "#if !defined (HAVE_UNISTD_H)"          >>$sysdefs
-  echo "#  define HAVE_UNISTD_H"               >>$sysdefs
-  echo "#endif /* HAVE_UNISTD_H */"            >>$sysdefs
-fi
-
-file=stdlib.h
-eval $findf
-if [ -n "$found" ]; then
-  echo ""                                      >>$sysdefs
-  echo "#if !defined (HAVE_STDLIB_H)"          >>$sysdefs
-  echo "#  define HAVE_STDLIB_H"               >>$sysdefs
-  echo "#endif /* HAVE_STDLIB_H */"            >>$sysdefs
-fi
-
-file=limits.h
-eval $findf
-if [ -n "$found" ]; then
-  echo ""                                      >>$sysdefs
-  echo "#if !defined (HAVE_LIMITS_H)"          >>$sysdefs
-  echo "#  define HAVE_LIMITS_H"               >>$sysdefs
-  echo "#endif /* HAVE_LIMITS_H */"            >>$sysdefs
-fi
-
-file=locale.h
-eval $findf
-if [ -n "$found" ]; then
-  echo ""                                      >>$sysdefs
-  echo "#if !defined (HAVE_LOCALE_H)"          >>$sysdefs
-  echo "#  define HAVE_LOCALE_H"               >>$sysdefs
-  echo "#endif /* HAVE_LOCALE_H */"            >>$sysdefs
-fi
-
-file=alloca.h
-eval $findf
-if [ -f /usr/include/alloca.h ]; then
-  echo ""                                      >>$sysdefs
-  echo "#if !defined (HAVE_ALLOCA_H)"          >>$sysdefs
-  echo "#  define HAVE_ALLOCA_H"               >>$sysdefs
-  echo "#endif /* HAVE_ALLOCA_H */"            >>$sysdefs
-fi
-
-file=dirent.h
-eval $findf
-if [ -n "$found" ]; then
-  echo ""                                      >>$sysdefs
-  echo "#if !defined (HAVE_DIRENT_H)"          >>$sysdefs
-  echo "#  define HAVE_DIRENT_H"               >>$sysdefs
-  echo "#endif /* HAVE_DIRENT_H */"            >>$sysdefs
-fi
-
-file=string.h
-eval $findf
-if [ -n "$found" ]; then
-  echo ""                                      >>$sysdefs
-  echo "#if !defined (HAVE_STRING_H)"          >>$sysdefs
-  echo "#  define HAVE_STRING_H"               >>$sysdefs
-  echo "#endif /* HAVE_STRING_H */"            >>$sysdefs
-fi
-
-file=varargs.h
-eval $findf
-if [ -n "$found" ]; then
-  echo ""                                      >>$sysdefs
-  echo "#if !defined (HAVE_VARARGS_H)"         >>$sysdefs
-  echo "#  define HAVE_VARARGS_H"              >>$sysdefs
-  echo "#endif /* HAVE_VARARGS_H */"           >>$sysdefs
-fi
-
-# Does the system have a /dev/fd directory?
-if [ -d /dev/fd ]; then
-  echo ""                                      >>$sysdefs
-  echo "#if !defined (HAVE_DEV_FD)"            >>$sysdefs
-  echo "#  define HAVE_DEV_FD"                 >>$sysdefs
-  echo "#endif /* HAVE_DEV_FD */"              >>$sysdefs
-fi
-
-# Is this SVR4.2?  It's subtly different from USGr4
-if [ "$UNAME" = "UNIX_SV" ] && [ "$UNAME_R" = "4.2" ]; then
-  echo ""                                      >>$sysdefs
-  echo "#if !defined (USGr4_2)"                >>$sysdefs
-  echo "#  define USGr4_2"             >>$sysdefs
-  echo "#endif /* USGr4_2 */"          >>$sysdefs
-fi
-
-# Is this AIX PS/2 1.3?  Yuck.
-if [ "$UNAME" = "AIX" ] && [ "$UNAME_V" = "1" ] && [ "$RELEASE" = "3" ]; then
-  case "$UNAME_M" in
-  i386|i486)
-       echo ""                                 >>$sysdefs
-       echo "#if !defined (AIX_13)"            >>$sysdefs
-       echo "#  define AIX_13"                 >>$sysdefs
-       echo "#endif /* AIX_13 */"              >>$sysdefs
-       ;;
-  esac
-fi
-
-if [ -n "$YACC" ]; then
-  echo ""                                      >>$sysdefs
-  echo "#if !defined (YACC_PROG)"              >>$sysdefs
-  echo "#  define YACC_PROG $YACC"             >>$sysdefs
-  echo "#endif /* YACC_PROG */"                        >>$sysdefs
-fi
-
-# Functions to test for a la autoconf
-#      getwd
-#      getcwd
-#      strchr
-#      strcasecmp
-#      getgroups
-#      setlinebuf
-#      strerror
-#      vfprintf
-#      bcopy
-#      getdtablesize
-#      setdtablesize
-#      alloca
-#      gethostname
-#      memmove (missing)
-#      mkfifo (missing)
-#
-# Other things to test
-#      opendir robustness
-#      dup2 working
-#      void sighandler
-#      sys_siglist[]
-#      uid_t, gid_t
-#      have_getpw_decls
-#      reversed setvbuf args
-#      int getgroups
-
-# If this system's cpp might not like `/**/#' in cpp-Makefile, make an
-# alternate ansi-style cpp-Makefile.
-if [ -n "$MAKE_ANSI" ]; then
-   grep -v '/\*\*/' ${srcdir}/cpp-Makefile >ansi-Makefile
-fi
-
-# These should be the last 2 lines in this file!
-echo ""                                                >>$sysdefs
-echo "#endif /* _SYSDEFS_H_ */"                        >>$sysdefs
diff --git a/CWRU/old-conf/support/srcdir b/CWRU/old-conf/support/srcdir
deleted file mode 100755 (executable)
index 9d8ccd7..0000000
+++ /dev/null
@@ -1,13 +0,0 @@
-#! /bin/sh
-#
-# srcdir - print out the absolute pathname of the top of the bash source
-#         tree.  Used for getting the right value to makes in subdirectories
-#
-
-case "$1" in
-'.'|./)        pwd ;;
-./*|..*)       echo `pwd`/"$1" ;;
-*)     echo "$1" ;;
-esac
-
-exit 0
diff --git a/CWRU/old/KSH.README b/CWRU/old/KSH.README
deleted file mode 100644 (file)
index 8d19d88..0000000
+++ /dev/null
@@ -1,136 +0,0 @@
-
-This is a description of the changes made to bash for increased ksh
-compatibility.
-
-1.  $SECONDS
-
-       "Each time this parameter is referenced, the number of seconds
-        since shell invocation is returned.  If this parameter is assigned
-        a value, then the value returned will be the value that was 
-        assigned plus the number of seconds since the assignment."
-
-       Files changed:  variables.c
-                       variables.h
-                       subst.c
-                       general.c
-                       shell.c
-                       general.h
-
-2.  $TMOUT
-
-       "If set to a value greater than 0, the shell will terminate if a
-        command is not entered within the prescribed number of seconds
-        after issuing the PS1 prompt."
-
-       Files changed:  shell.c  (the implementation is not perfect)
-
-3.  $RANDOM
-
-       "Each time this parameter is referenced, a random integer is 
-        generated.  The sequence of random numbers can be initialized
-        by assigning a numeric value to RANDOM."
-
-       Files changed:  subst.c
-                       variables.c
-
-4.  $REPLY
-
-       "This parameter is set by the `read' special command when no 
-        arguments are supplied."
-
-       Files changed:  builtins.c
-
-5.  integer variables
-
-       `declare -i' (also export) makes a variable an integer (turns on
-       the integer attribute).  When assignment is made to a variable with
-       the -i attribute, arithmetic expression evaluation is done on the
-       value before it is assigned to the variable.
-
-       Files changed:  variables.h
-                       variables.c
-                       builtins.c
-
-6.  Arithmetic expression evaluation.
-
-       Here is the comment at the beginning of the new file `expr.c':
-
-
-       ksh-style expression evaluation.
-
-       All arithmetic is done as long integers with no checking for overflow
-       (though division by 0 is caught and flagged as an error).
-
-       The following operators are handled, grouped into a set of levels in
-       order of decreasing precedence.
-
-       "-"                     [level 0 (unary negation)]
-       "!"                     [level 1]
-       "*", "/", "%"           [level 2]
-       "+", "-"                [level 3]
-       "<=", ">=", "<", ">"    [level 4]
-       "==", "!="              [level 5]
-       "="                     [level 6 (assignment)]
-
-       (Note that most of these operators have special meaning to bash, and an
-       entire expression should be quoted, e.g. "a=$a+1" or "a=a+1" to ensure
-       that it is passed intact to the evaluator).
-
-       Sub-expressions within parentheses have a precedence level greater than
-       all of the above levels and are evaluated first.  Within a single prece-
-       dence group, evaluation is left-to-right, except for the arithmetic
-       assignment operator (`='), which is evaluated right-to-left (as in C).
-
-       The expression evaluator returns the value of the expression (assignment
-       statements have as a value what is returned by the RHS).  The `let'
-       builtin, on the other hand, returns 0 if the last expression evaluates to
-       a non-zero, and 1 otherwise.
-
-       Implementation is a recursive-descent parser.
-
-       Files added:    expr.c
-
-7. `let' builtin
-
-       Parameters may be assigned numeric values via the `let' builtin.
-       Each of its arguments is an expression to be evaluated.  `let'
-       returns 0 if the value of the last expression is non-zero, and
-       1 otherwise.
-
-       Note that the "((...))" form of this command has not yet been
-       implemented; it requires changes to the parsing functions.
-
-       Files changed:  builtins.c
-
-8.  $_
-
-       $_ is set to the last argument of the previous command line, after
-       expansion.  It is still used as before when checking for mail.
-       Two new keybindings have been added to insert this into the current
-       command line (M-_ and M-.).
-
-       Files changed:  mailcheck.c
-                       execute_cmd.c
-                       bashline.c
-
-9.  `cd -'
-
-       Equivalent to 'cd $OLDPWD'
-
-       Files changed:  builtins.c
-
-10.  "ulimit -a"
-
-       "List all of the current resource limits (BSD only)."
-
-       Files changed:  builtins.c
-
-11.  ${#@} and ${#*}
-
-       These expand to the number of positional parameters.
-
-       Files changed: subst.c
-
-Chet Ramey
-Information Network Services, Case Western Reserve University
-chet@ins.CWRU.Edu
diff --git a/CWRU/old/RELEASE.113 b/CWRU/old/RELEASE.113
deleted file mode 100644 (file)
index f38e5f2..0000000
+++ /dev/null
@@ -1,140 +0,0 @@
-This file details the changes between the previous release of CWRU bash
-(07/11/93) and this release.
-
-1. Bugs Fixed
-
-Readline's vi-mode once again has TAB bound to completion; entering `posix
-mode' changes it to self-insert
-
-Bash now binds its special emacs-mode functions directly into
-emacs_meta_keymap so that eight-bit character handling does not interfere
-
-Some source restructuring: more extern functions are defined in header files
-and not in C source files
-
-The handling of `line number' inside functions is now more correct and
-closer to reality
-
-Some functions of `general use' were moved to general.c (vfree,
-full_pathname)
-
-A bug that caused some redirections to be applied twice was fixed in
-execute_command_internal (dispose of redirection_undo_list after copying it;
-ditto for exec_redirection_undo_list)
-
-The exit status of a command that is not found is 126, as Posix.2 specifies
-
-More speed improvements -- bash now runs as fast as the SunOS sh on
-Haertel's `shell benchmark'
-
-Instead of returning pointers to -1, bash and the readline, history, and
-glob libraries now return pointers to special `error pointers', which the
-calling code checks for in place of -1
-
-Fixed a problem with canonicalize_pathname which made it get
-confused with xxx/./yyy if yyy was `.' or `..'
-
-Fixes to make bash recognize SVR4.2 and set USGr4_2 for SVR4.2 systems
-
-Fixes to the HP/UX machine descriptions to make alloca work on HPUX_9
-and to avoid `M_MACHINE redefined' warnings
-
-Fixes to the CRAY machine description
-
-Fixes to the mailpath code to make it Posix.2-compliant -- backslash
-may now quote `%' and `?' 
-
-The namespace was further cleaned up, and more functions and variables
-were made static
-
-On systems with S_IFSOCK or S_ISSOCK defined in sys/stat.h, bash checks
-whether fd 0 is a socket to decide whether or not it's being started by
-rshd and to run the startup files
-
-Bash now gives the signal mask it inherits to its children -- previously,
-login shells cleared the signal mask
-
-cpp-Makefile and subst.c both used the `USE_GLOB_LIBRARY' define, but
-with different meanings; subst.c now uses `USE_POSIX_GLOB_LIBRARY'
-
-Fixed pattern substitution so that ${a%%$b}, where b was unset, no longer
-causes a core dump
-
-Changed the `test_exit' define in test.c to no longer use `longjmp' as
-the rhs or a comma-ized expression; this causes core dumps on some
-optimizer/machine combinations
-
-A speed hack in variables.c: if no local variables are defined for a level
-of shell context, kill_all_local_variables does not need to search the
-whole variable hash table when popping a context
-
-Fixed the `bind' builtin so that -m now changes the keymap for all of the
-subsequent operations
-
-Changed some more builtins to use internal_getopt: bind, command, export,
-readonly, declare, typeset
-
-Fixed fc to use the Posix.2 format for listing commands in the
-history list
-
-Changed bg to set `!', as Posix.2 specifies
-
-Fixed ulimit.def to compile if RLIMIT_RSS is not defined,
-as some systems seem to have it
-
-Replaced lib/malloc/alloca.c with the version from emacs 19.  The old one
-lives in alloca.c.old
-
-malloc.c now uses the ANSI C features to `stringize' macro arguments if
-__STDC__ is defined
-
-Fixes to the GNU malloc library from glibc 1.06 and Mike Haertel
-
-Fixes to readline key binding and lookup for Cray systems, which don't
-like the casting that readline does
-
-Fixes to all readline library source files to clean up the code: make sure
-`int'-returning functions use `return x;' rather than `return;', declare all
-arguments, even the `int' ones, and make some functions void.  Cleaned up
-the code formatting a little, too.
-
-The readline completer now double-quotes filenames with special word-break
-characters, so that tilde expansion still works
-
-^C now breaks out of keyboard macros
-
-If being compiled as part of the shell, readline no longer attempts to
-handle SIGTTIN, SIGTTOU, or SIGTSTP
-
-tilde_expansion_failure_hook is now a CPFunction rather than a Function,
-since that's how it's used
-
-Readline vi-mode `change case' function now skips over characters which
-are neither upper nor lower case
-
-Readline vi-mode now allows replacement to be redoable with `.'
-
-2. New Features
-
-A `strict Posix.2' mode, enabled with the -posix startup option or
-setting the POSIXLY_CORRECT variable (see CWRU/POSIX.NOTES for a 
-description of the changed behavior)
-
-`ONESHOT' is now an option in config.h
-
-cpp-Makefile assumes that fixed header files are present if gcc is being
-used
-
-The redirections attached to a function declaration are now part of that
-function, applied when the function is executed, as specified by Posix.2.
-This caused a change to parse.y that resulted in 66 shift/reduce
-conflicts(!)
-
-All of the OP= functions that Posix.2 specifies are now implemented for
-both `let' and arithmetic substitution
-
-The `command' builtin has acquired the Posix.2 `-v' and `-V' options
-(this shares code with the `type' builtin)
-
-A new `bash_builtins' man page, like the `csh_builtins' page on some
-systems
diff --git a/CWRU/old/RSH.README b/CWRU/old/RSH.README
deleted file mode 100644 (file)
index 6a3498b..0000000
+++ /dev/null
@@ -1,54 +0,0 @@
-
-This is a description of the changes made to bash to provide a `restricted'
-shell, `rbash', organized by changes to various source files.
-
-1.  shell.c
-
-       Moved the declaration of restricted to flags.c; it is now declared
-       extern here.  Changed the detection of a restricted shell; now, any
-       instance of the shell for which *(basename(argv[0])) == 'r' (where
-       basename returns either everything after the last '/' in its 
-       argument or its argument is restricted.  Also, if SHELL is set on
-       entry to the shell, and it's basename is "rbash", the shell is
-       restricted.
-
-       This paragraph applies only to CWRU, or to those who have compiled
-       the shell with "CWRU" defined.  When a shell is determined to be
-       restricted, and it is a login shell, the file "/etc/rprofile" (and
-       only that file) is executed.  There is no execution of ~/.profile
-       or ~/.bash_profile.  The .bashrc file is executed, but after the
-       restrictions have been turned on (users may customize their instances
-       of the shell in this file while not compromising any kind of security
-       arrangements set up by the administrator).
-
-2.  builtins.c
-
-       cd_builtin was modified to return failure if bash is operating in
-       `restricted mode', so changing directories is not allowed.
-
-3.  variables.c
-
-       initialize_shell_variables () was modified to make PATH and SHELL
-       read-only when restricted == 1.  These variables may not be unset
-       in a restricted shell.
-
-4.  flags.c
-
-       The variable `restricted' is now declared here.  A new flag `-r',
-       to turn on restricted mode, has been added.  `change_flag' has 
-       been modified to disallow `set +r' if restricted == 1.
-
-5.  execute_cmd.c
-
-       execute_simple_command () was modified to disallow commands and
-       file names that contain a slash.
-
-       Code was added to do_redirections () and do_redirection() to
-       disallow output file redirection specifications if restricted is
-       1.
-
-Chet Ramey
-Information Network Services, Case Western Reserve University
-chet@ins.CWRU.Edu
-
-(I took almost all of this stuff out again after putting it in.)
diff --git a/CWRU/old/array.doc b/CWRU/old/array.doc
deleted file mode 100644 (file)
index 1bd14b5..0000000
+++ /dev/null
@@ -1,53 +0,0 @@
-This describes how bash users create, destroy, assign, and reference array
-variables.  Array variables are variables whose values are arrays of strings,
-and whose elements may be referenced individually.
-
-CREATING
-       - any variable may be declared as an array using `typeset -a'
-       - an ordinary variable may be converted to an array using
-         `typeset -a'; the value becomes array[0]
-
-       - there is a question of notation used to simultaneously declare
-         an array variable and populate it with values sequentially,
-         like ksh does with `set -A'.  `set -A' is a horrible choice;
-         it should be discarded immediately.
-
-               - we can use `typeset -a array [values...]'
-
-DESTROYING
-       - `unset name' will destroy the array `name'
-       - how to treat `typeset +a array'?
-               - I think we should keep the variable, convert it from an
-                 array to an `ordinary' variable, and make the value at
-                 the smallest index of the array the value of the new
-                 variable
-
-ASSIGNING
-       - array[index]=value will serve to assign values to individual
-         elements of the array
-       - the subscript can be an arbitrary arithmetic expression; it
-         will be run through the expression evaluator
-       - this can create arrays, too
-               - this is analogous to defining a variable by simply
-                 assigning to it
-
-REFERENCING
-       - $array will expand to all elements of the array, just like $*
-         expands to all the positional parameters
-       - "$array" is like "$@"
-       - ${array[index]} is used to reference array element `index', where
-         `index' can be an arbitrary arithmetic expression
-               - two special values for `index': * and @ expand to all
-                 elements of the array, just like $* and $@.  Quoting
-                 behavior is the same, too
-       - using a subscript is an error if a variable has not been declared
-         as an array (is this wise?)
-       - ${#variable}, if `variable' is an array, expands to the number of
-         elements in the array
-               - ${#variable[n]} expands to the length of variable[n].  n
-                 may be an arbitrary arithmetic expression
-               - ${#variable[*]} and ${#variable[@]} expand to the number of
-                 elements in the array
-
-OPEN QUESTIONS
-       - should we allow them to be exported?  Ksh does not, but rc does
diff --git a/CWRU/old/fixlib b/CWRU/old/fixlib
deleted file mode 100755 (executable)
index 7d74c08..0000000
+++ /dev/null
@@ -1,87 +0,0 @@
-
-# This script is for bash-maintainers only!  It takes a freshly unpacked Bash,
-# and reorganizes it so that there is exactly one version of any given
-# source file.
-#
-
-if [ "$0" != "./fixdist" ]; then
-   echo "You must run 'fixdist' from the 'support' directory!"
-   exit 1
-fi
-
-cd ../lib
-must_exist="posixheaders/posixstat.h posixheaders/ansi_stdlib.h"
-must_exist="$must_exist tilde/tilde.c tilde/tilde.h"
-must_exist="$must_exist malloc/xmalloc.c"
-
-for filename in $must_exist; do
-   if [ ! -f $filename ]; then
-      echo "The file lib/$filename doesn't exist, but it must!"
-      exit 1
-   fi
-done
-
-echo -n "Relinking neccessary files in lib/readline..."
-cd readline
-for filename in tilde.c tilde.h; do
-   rm $filename
-   ln -s ../tilde/$filename .
-done
-
-rm posixstat.h && ln -s ../posixheaders/posixstat.h .
-rm ansi_stdlib.h && ln -s ../posixheaders/ansi_stdlib.h .
-rm xmalloc.c && ln -s ../malloc/xmalloc.c .
-echo "done."
-
-echo -n "Linking files in . ..."
-cd ../..
-rm posixstat.h && ln -s lib/posixheaders/posixstat.h .
-rm ansi_stdlib.h && ln -s lib/posixheaders/ansi_stdlib.h .
-echo "done."
-
-echo "Should I move the \"lib\" directory to \"../lib\" if I wouldn't"
-echo -n "clobber anything by doing so (y/n)? "
-read reply
-if [ "$reply" != 'y' ]; then
-   echo "You said no, so in that case I'm all done."
-   exit 0
-fi
-
-# Try as hard as we can to move the lib directory to ../lib.
-#
-if [ -d ../lib ]; then
-   echo "The directory $(cd ../lib; pwd) already exists.  It looks like:"
-   echo $(cd ../lib; ls -ldg .; ls -lF)
-   echo "I can:"
-   echo "  1) Move the directory to another name,"
-   echo "  2) Delete matching directories from within it,"
-   echo "  3) Copy files into existing directories, or"
-   echo "  4) Quit now, while you are ahead."
-   echo ""
-   echo -n "Which will it be? "
-   read reply
-   case "$reply" in
-     1)
-       echo "I would be moving the directory to lib-old now"
-       ;;
-     2)
-       echo "I would be deleting the matching directories now"
-       ;;
-     3)
-       echo "I would just go ahead and copy the directories now"
-       ;;
-     4)
-       echo "Probably a good move.  Look at the script support/mklinks."
-       ;;
-   esac
-else
-   echo -n "Moving lib to ../lib, and relinking lib in this directory..."
-   mv lib ../lib
-   mkdir lib
-   cd lib
-   ../support/mklinks ../../lib
-   echo "done."
-fi
-
-echo "That concludes this fixing of the distribution."
-exit 0
diff --git a/CWRU/old/histctl.def b/CWRU/old/histctl.def
deleted file mode 100644 (file)
index f319a71..0000000
+++ /dev/null
@@ -1,110 +0,0 @@
-This file is histctl.def, from which is created histctl.c.
-It implements the builtin "histctl" in Bash.
-
-Copyright (C) 1987, 1989, 1991, 1992 Free Software Foundation, Inc.
-
-This file is part of GNU Bash, the Bourne Again SHell.
-
-Bash is free software; you can redistribute it and/or modify it under
-the terms of the GNU General Public License as published by the Free
-Software Foundation; either version 1, or (at your option) any later
-version.
-
-Bash 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 General Public License
-for more details.
-
-You should have received a copy of the GNU General Public License along
-with Bash; see the file COPYING.  If not, write to the Free Software
-Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
-
-$PRODUCES histctl.c
-
-$BUILTIN histctl
-$FUNCTION histctl_builtin
-$DEPENDS_ON HISTORY
-$SHORT_DOC histctl [-cC] [-iI space|dups|both|none]
-Control how lines are saved into the command history.  An option
-of -c enables command-oriented history, in which all lines of a
-compound command are saved as a single history entry.  The -i
-option permits certain lines to be discarded without being stored
-in the history: SPACE means to ignore lines beginning with a space;
-DUPS means to ignore lines the same as the last command entered
-into the history; BOTH enables SPACE and DUPS; and NONE means to
-store all lines.
-$END
-
-#include "../shell.h"
-
-#if defined (HISTORY)
-#include "bashgetopt.h"
-#include "../bashhist.h"
-
-#define HIGNORE_NONE   0x0
-#define HIGNORE_SPACE  0x01
-#define HIGNORE_DUPS   0x02
-#define HIGNORE_BOTH   (HIGNORE_SPACE | HIGNORE_DUPS)
-
-int
-histctl_builtin (list)
-     WORD_LIST *list;
-{
-  int opt;
-  char *spec;
-
-  reset_internal_getopt ();
-  while ((opt = internal_getopt (list, "CcI:i:")) != -1)
-    {
-      switch (opt)
-       {
-       case 'c':
-         command_oriented_history++;
-         break;
-       case 'C':
-         command_oriented_history = 0;
-         break;
-       case 'i':
-         spec = list_optarg;
-         if (strcmp (spec, "none") == 0)
-           history_control = HIGNORE_NONE;
-         else if (strcmp (spec, "space") == 0)
-           history_control |= HIGNORE_SPACE;
-         else if (strcmp (spec, "dups") == 0)
-           history_control |= HIGNORE_DUPS;
-         else if (strcmp (spec, "both") == 0)
-           history_control |= HIGNORE_BOTH;
-         else
-           {
-             builtin_error ("invalid argument to -i: %s", spec);
-             builtin_error ("usage: histctl [-cC] [-iI space|dups|both|none]");
-             return (EX_USAGE);
-           }
-         break;
-       case 'I':
-         spec = list_optarg;
-         if (strcmp (spec, "none") == 0)
-           history_control = HIGNORE_NONE;
-         else if (strcmp (spec, "space") == 0)
-           history_control &= ~HIGNORE_SPACE;
-         else if (strcmp (spec, "dups") == 0)
-           history_control &= ~HIGNORE_DUPS;
-         else if (strcmp (spec, "both") == 0)
-           history_control &= ~HIGNORE_BOTH;
-         else
-           {
-             builtin_error ("invalid argument to -I: %s", spec);
-             builtin_error ("usage: histctl [-cC] [-iI space|dups|both|none]");
-             return (EX_USAGE);
-           }
-         break;
-       default:
-         report_bad_option ();
-         builtin_error ("usage: histctl [-cC] [-iI space|dups|both|none]");
-         return (EX_USAGE);
-       }
-    }
-
-  return (EXECUTION_SUCCESS);
-}
-#endif /* HISTORY */
diff --git a/CWRU/old/longsig.c b/CWRU/old/longsig.c
deleted file mode 100644 (file)
index 56ec91c..0000000
+++ /dev/null
@@ -1,50 +0,0 @@
-/* The answer to this question is 24. */
-#include <stdio.h>
-#include <sys/types.h>
-#include <signal.h>
-#include "siglist.h"
-
-/* Copyright (C) 1987,1989 Free Software Foundation, Inc.
-
-This file is part of GNU Bash, the Bourne Again SHell.
-
-Bash is free software; you can redistribute it and/or modify it under
-the terms of the GNU General Public License as published by the Free
-Software Foundation; either version 1, or (at your option) any later
-version.
-
-Bash 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 General Public License
-for more details.
-
-You should have received a copy of the GNU General Public License along
-with Bash; see the file COPYING.  If not, write to the Free Software
-Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */
-
-main (argc, argv)
-     int argc;
-     char **argv;
-{
-  int longest, length = 0;
-  int i;
-
-  for (i = 0; i < NSIG; i++)
-    {
-      printf ("%2d) %s\n", i, sys_siglist[i]);
-      if (strlen (sys_siglist[i]) > length)
-       {
-         longest = i;
-         length = strlen (sys_siglist[i]);
-       }
-    }
-
-  printf ("The longest name is %d:\"%s\", which is %d chars in length.\n",
-         longest, sys_siglist[longest], length);
-}
-\f
-/*
- * Local variables:
- * compile-command: "cc -o longest_sig longest_sig.c"
- * end:
- */
diff --git a/CWRU/old/mklinks b/CWRU/old/mklinks
deleted file mode 100755 (executable)
index 612aa99..0000000
+++ /dev/null
@@ -1,41 +0,0 @@
-
-# Yet another script which requires an already built Bash.
-#
-# This makes links in the current directory to the directory specified as
-# the first argument.
-#
-
-topdir=$1
-
-if [ ! "$topdir" ]; then
-  echo "No directory specified.  Read the script $0."
-  exit 1
-fi
-
-function clone_files ()
-{
-  local dir=$1;
-  local files;
-
-  files=$(cd $dir; echo *);
-
-  if [ ! "$files" ]; then
-    return 0;
-  fi
-
-  for filename in $files; do
-    if [ -d $dir/$filename ]; then
-      # If the file to clone is this directory, then skip it.
-      if [ $(cd $dir/$filename; pwd) = $(pwd) ]; then
-       continue;
-      fi
-      mkdir $filename;
-      (cd $filename; clone_files ../$dir/$filename)
-    else
-      ln -s $dir/$filename .;
-    fi
-  done
-  rm -f \#* *~ .*~ *.bak .*.bak  *.tmp .*.tmp *.o core a.out;
-}
-
-clone_files $topdir
diff --git a/CWRU/old/mktarfile b/CWRU/old/mktarfile
deleted file mode 100755 (executable)
index 88097f5..0000000
+++ /dev/null
@@ -1,74 +0,0 @@
-#!/bin/sh
-# How to make a distribution tarfile.
-#
-# $1 is the name of the program.
-# $2 is the version number.
-# Remaining args are files to tar.
-# Optional argument of "~+notar" means don't create the actual tar file,
-# just create the symlinked directory.
-
-tar_inhibited=""
-if [ "$1" = "+notar" ]; then
-  tar_inhibited=yes
-  shift
-fi
-
-PROGRAM=$1
-VERSION=$2
-
-if [ "$PROGRAM" = "" -o "$VERSION" = "" ]; then
-  echo "Usage: mktarfile [+notar] <progname> <version> <file ...>"
-  echo "Using the \`+notar' option causes a clone directory to be made."
-  exit 2;
-fi
-
-shift; shift
-
-TARFILE=$PROGRAM.tar
-TARDIR=$PROGRAM-$VERSION
-
-# Delete the tarfile if we are to create it.
-if [ ! "tar_inhibited" ]; then
-  rm -rf $TARFILE
-fi
-
-# Delete the destination directory if it already exists.
-rm -rf $TARDIR
-
-# Make the destination directory.
-echo "Making directory $TARDIR..."
-mkdir $TARDIR
-
-topdir=`pwd`
-where_I_am=$TARDIR
-
-trap "cd $topdir" 3
-
-for i in $*; do
-  filename=$i
-  while [ "$filename" ]; do
-    remainder=`echo $filename | sed 's@[-_a-zA-Z~0-9.]*/@@'`
-    dir=`echo $filename | sed "s@$remainder\\\$@@" | sed "s@/@@"`
-    if [ "$dir" ]; then
-       if [ ! -d $where_I_am/$dir ]; then
-         echo "Making directory $where_I_am/$dir..."
-         mkdir $where_I_am/$dir
-       fi
-       cd $where_I_am/$dir; where_I_am=`pwd`
-       filename=$remainder
-    else
-       break
-    fi
-  done
-  cd $topdir; where_I_am=$TARDIR
-  ln -s $topdir/$i $TARDIR/$i
-done
-
-if [ ! "$tar_inhibited" ]; then
-  echo "tar -chf $TARFILE $TARDIR"
-  tar -chf $TARFILE $TARDIR
-  echo "rm -rf $TARDIR"
-  rm -rf $TARDIR
-fi
-
-exit 0
diff --git a/CWRU/old/mkversion.c b/CWRU/old/mkversion.c
deleted file mode 100644 (file)
index 8164a8f..0000000
+++ /dev/null
@@ -1,305 +0,0 @@
-/* Simple program to make new version numbers for the shell.
-   Big deal, but it was getting out of hand to do everything
-   in the makefile. */
-
-/* Copyright (C) 1989 Free Software Foundation, Inc.
-
-This file is part of GNU Bash, the Bourne Again SHell.
-
-Bash is free software; you can redistribute it and/or modify it under
-the terms of the GNU General Public License as published by the Free
-Software Foundation; either version 1, or (at your option) any later
-version.
-
-Bash 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 General Public License
-for more details.
-
-You should have received a copy of the GNU General Public License along
-with Bash; see the file COPYING.  If not, write to the Free Software
-Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */
-
-#include "config.h"
-
-#include <sys/types.h>
-#include "posixstat.h"
-#include <stdio.h>
-#include "bashansi.h"
-
-char *progname;
-char *dir;
-char *status;
-
-FILE *must_open ();
-
-main (argc, argv)
-     int argc;
-     char **argv;
-{
-  FILE *file;
-  float distver = 0.0;
-  int buildver = 0, patchlevel = 0;
-  int dist = 0, build = 0, patch = 0;
-  int dist_inc = 0, build_inc = 0, patch_inc = 0;
-  int dot_dist_needs_making = 0;
-  int arg_index = 1;
-  struct stat sb;
-
-  progname = argv[0];
-
-  status = dir = (char *)0;
-  while (arg_index < argc && argv[arg_index][0] == '-')
-    {
-      if (strcmp (argv[arg_index], "-dist") == 0)
-        {
-         dist++;
-         dist_inc++;
-        }
-      else if (strcmp (argv[arg_index], "-build") == 0)
-        {
-         build++;
-         build_inc++;
-        }
-      else if (strcmp (argv[arg_index], "-patch") == 0)
-        {
-          patch++;
-         patch_inc++;
-        }
-      else if (strcmp (argv[arg_index], "-dir") == 0)
-       {
-         dir = argv[++arg_index];
-         if (dir == 0)
-           {
-             fprintf (stderr, "%s: `-dir' requires an argument\n", progname);
-             exit (1);
-           }
-         if (stat (dir, &sb) < 0)
-           {
-             fprintf (stderr, "%s: cannot stat %s\n", progname, dir);
-             exit (1);
-           }
-         if ((sb.st_mode & S_IFMT) != S_IFDIR)
-           {
-             fprintf (stderr, "%s: not a directory\n", progname);
-             exit (1);
-           }
-       }
-      else if (strcmp (argv[arg_index], "-status") == 0)
-        {
-          status = argv[++arg_index];
-         if (status == 0)
-           {
-             fprintf (stderr, "%s: `-status' requires an argument\n", progname);
-             exit (1);
-           }
-        }
-      else
-       {
-         fprintf (stderr, "%s: unknown option: %s\n", progname, argv[arg_index]);
-         fprintf (stderr, "usage: %s [-dist|-patch|-build] [-dir directory]\n", progname);
-         exit (1);
-       }
-      arg_index++;
-    }
-
-  if (get_float_from_file (".distribution", &distver, 1) == 0)
-    dot_dist_needs_making++;
-
-  if (get_int_from_file (".patchlevel", &patchlevel, 1) == 0)
-    {
-      patchlevel = 0;
-      patch_inc = 0;
-    }
-
-  if (get_int_from_file (".build", &buildver, 0) == 0)
-    buildver = 0;
-
-  /* Setting distribution version. */
-  if (dist && arg_index < argc)
-    if (sscanf (argv[arg_index], "%f", &distver) != 1)
-      {
-       fprintf (stderr, "%s: Bad input `%s'.  Expected float value for -dist.\n",
-                progname, argv[arg_index]);
-       exit (1);
-      }
-    else
-      {
-       arg_index++;
-       dist_inc = 0;
-      }
-
-  /* Setting patchlevel via argument. */
-  if (patch && arg_index < argc)
-    if (sscanf (argv[arg_index], "%d", &patchlevel) != 1)
-      {
-       fprintf (stderr, "%s: Bad input `%s'.  Expected int value for -patch.\n",
-                progname, argv[arg_index]);
-       exit (1);
-      }
-    else
-      {
-       arg_index++;
-       patch_inc = 0;
-      }
-    
-  if (build && arg_index < argc)
-    if (sscanf (argv[arg_index], "%d", &buildver) != 1)
-      {
-       fprintf (stderr, "%s: Bad input `%s'.  Expected int value for -build.\n",
-                progname, argv[arg_index]);
-       exit (1);
-      }
-    else
-      {
-       arg_index++;
-       build_inc = 0;
-      }
-
-  if (dot_dist_needs_making && !distver)
-    {
-      fprintf (stderr, "%s: There is no `.distribution' file to infer from.\n", progname);
-      exit (1);
-    }
-
-  if (dist_inc)
-    distver = distver + 0.01;
-
-  if (patch_inc)
-    patchlevel++;
-
-  if (build_inc)
-    buildver++;
-
-  file = must_open ("newversion.h", "w");
-
-  /* Output the leading comment. */
-  fprintf (file, 
-"/* Version control for the shell.  This file gets changed when you say\n\
-   `make newversion' to the Makefile.  It is created by mkversion. */\n");
-
-  fprintf (file, "\n/* The distribution version number of this shell. */\n");
-  fprintf (file, "#define DISTVERSION \"%.2f\"\n", distver);
-
-  fprintf (file, "\n/* The patch level of this version of the shell. */\n");
-  fprintf (file, "#define PATCHLEVEL %d\n", patchlevel);
-
-  fprintf (file, "\n/* The last built version of this shell. */\n");
-  fprintf (file, "#define BUILDVERSION %d\n", buildver);
-
-  if (status)
-    {
-      fprintf (file, "\n/* The release status of this shell. */\n");
-      fprintf (file, "#define RELSTATUS \"%s\"\n", status);
-    }
-
-  fprintf (file, "\n/* A version string for use by sccs and the what command. */\n\n");
-  if (status)
-    fprintf (file, "#define SCCSVERSION \"@(#)Bash version %.2f.%d(%d) %s GNU\"\n\n",
-      distver, patchlevel, buildver, status);
-  else
-    fprintf (file, "#define SCCSVERSION \"@(#)Bash version %.2f.%d(%d) GNU\"\n\n",
-      distver, patchlevel, buildver);
-
-  fclose (file);
-
-  file = must_open (".build", "w");
-  fprintf (file, "%d\n", buildver);
-  fclose (file);
-
-  /* Making a new distribution. */
-  if (dist)
-    {
-      file = must_open (".distribution", "w");
-      fprintf (file, "%.2f\n", distver);
-      fclose (file);
-    }
-
-  /* Releasing a new patch level. */
-  if (patch)
-    {
-      file = must_open (".patchlevel", "w");
-      fprintf (file, "%d\n", patchlevel);
-      fclose (file);
-    }
-
-  exit (0);
-}
-
-char *
-makename (fn, from_srcdir)
-     char *fn;
-{
-  char *ret;
-  int dlen;
-
-  dlen = (from_srcdir && dir) ? strlen (dir) + 1 : 0;
-  ret = (char *)malloc (dlen + strlen (fn) + 1);
-  if (ret == 0)
-    {
-      fprintf (stderr, "%s: malloc failed\n", progname);
-      exit (1);
-    }
-  if (from_srcdir && dir)
-    sprintf (ret, "%s/%s", dir, fn);
-  else
-    (void)strcpy (ret, fn);
-
-  return ret;
-}
-
-get_float_from_file (filename, var, from_srcdir)
-     char *filename;
-     float *var;
-     int from_srcdir;
-{
-  FILE *stream;
-  int result;
-  char *name;
-
-  name = makename (filename, from_srcdir);
-  stream = fopen (name, "r");
-  free (name);
-  if (stream == (FILE *)NULL)
-    return (0);
-  result = fscanf (stream, "%f\n", var);
-  fclose (stream);
-  return (result == 1);
-}
-
-get_int_from_file (filename, var, from_srcdir)
-     char *filename;
-     int *var, from_srcdir;
-{
-  FILE *stream;
-  int result;
-  char *name;
-
-  name = makename (filename, from_srcdir);
-  stream = fopen (name, "r");
-  free (name);
-  if (stream == (FILE *)NULL)
-    return (0);
-  result = fscanf (stream, "%d\n", var);
-  fclose (stream);
-  return (result == 1);
-}
-
-FILE *
-must_open (name, mode)
-     char *name, *mode;
-{
-  FILE *temp = fopen (name, mode);
-
-  if (!temp)
-    {
-      fprintf (stderr, "%s: Cannot open `%s' for mode `%s'.\n",
-              progname, name, mode);
-      fprintf
-       (stderr,
-        "Perhaps you don't have %s permission to the file or directory.\n",
-        (strcmp (mode, "w") == 0) ? "write" : "read");
-      exit (3);
-    }
-  return (temp);
-}
diff --git a/CWRU/old/pagesize.c b/CWRU/old/pagesize.c
deleted file mode 100644 (file)
index ee2baa3..0000000
+++ /dev/null
@@ -1,64 +0,0 @@
-/*
- * getpagesize - print the system pagesize
- *
- * Chet Ramey
- * chet@ins.cwru.edu
- */
-
-#include <stdio.h>
-
-/*
- * I know these systems have getpagesize(2)
- */
-
-#if defined (Bsd) || defined (Ultrix) || defined (sun)
-#  define HAVE_GETPAGESIZE
-#endif
-
-#if !defined (HAVE_GETPAGESIZE)
-
-#if defined (HAVE_UNISTD_H)
-#  include <unistd.h>
-#  if defined (_SC_PAGESIZE)
-#    define getpagesize() sysconf(_SC_PAGESIZE)
-#  endif /* _SC_PAGESIZE */
-#endif
-
-#if !defined (getpagesize)
-#  include <sys/param.h>
-#  if defined (PAGESIZE)
-#     define getpagesize() PAGESIZE
-#  else /* !PAGESIZE */
-#    if defined (EXEC_PAGESIZE)
-#      define getpagesize() EXEC_PAGESIZE
-#    else /* !EXEC_PAGESIZE */
-#      if defined (NBPG)
-#        if !defined (CLSIZE)
-#          define CLSIZE 1
-#        endif /* !CLSIZE */
-#        define getpagesize() (NBPG * CLSIZE)
-#      else /* !NBPG */
-#        if defined (NBPC)
-#          define getpagesize() NBPC
-#        endif /* NBPC */
-#      endif /* !NBPG */
-#    endif /* !EXEC_PAGESIZE */
-#  endif /* !PAGESIZE */
-#endif /* !getpagesize */
-
-#if !defined (getpagesize)
-#  define getpagesize() 4096  /* Just punt and use reasonable value */
-#endif
-
-#endif /* no EXEC_PAGESIZE */
-
-#endif /* not HAVE_GETPAGESIZE */
-
-main()
-{
-#if defined (HAVE_GETPAGESIZE) || defined (getpagesize)
-  printf ("%ld\n", getpagesize ());
-#else
-  puts ("1024");
-#endif
-}
diff --git a/CWRU/old/pagesize.sh b/CWRU/old/pagesize.sh
deleted file mode 100755 (executable)
index 08a2935..0000000
+++ /dev/null
@@ -1,20 +0,0 @@
-#! /bin/sh
-#
-# pagesize.sh -- determine this system's page size, and write a define to
-#               lib/malloc/pagesize.h for the Gnu malloc's valloc().
-
-echo "/*"
-echo " * pagesize.h"
-echo " *"
-echo " * This file is automatically generated by pagesize.sh"
-echo " * Do not edit!"
-echo " */"
-echo ""
-
-if [ -x /bin/pagesize ]; then
-       echo "#define getpagesize() `/bin/pagesize`"
-else
-       echo "#define getpagesize() `./support/pagesize.aux`"
-fi
-
-exit 0
diff --git a/CWRU/old/parse.y.noctlnul b/CWRU/old/parse.y.noctlnul
deleted file mode 100644 (file)
index 1e8921a..0000000
+++ /dev/null
@@ -1,3163 +0,0 @@
-/* Yacc grammar for bash. */
-
-/* Copyright (C) 1989 Free Software Foundation, Inc.
-
-   This file is part of GNU Bash, the Bourne Again SHell.
-
-   Bash is free software; you can redistribute it and/or modify it under
-   the terms of the GNU General Public License as published by the Free
-   Software Foundation; either version 1, or (at your option) any later
-   version.
-
-   Bash 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 General Public License
-   for more details.
-
-   You should have received a copy of the GNU General Public License along
-   with Bash; see the file LICENSE.  If not, write to the Free Software
-   Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */
-
-%{
-#include "config.h"
-
-#include "bashtypes.h"
-#include "bashansi.h"
-
-#if defined (HAVE_UNISTD_H)
-#  include <unistd.h>
-#endif
-
-#include <stdio.h>
-#include <signal.h>
-
-#include "shell.h"
-#include "trap.h"
-#include "flags.h"
-#include "input.h"
-#include "mailcheck.h"
-#include "builtins/common.h"
-#include "builtins/builtext.h"
-
-#if defined (READLINE)
-#  include "bashline.h"
-#  include <readline/readline.h>
-#endif /* READLINE */
-
-#if defined (HISTORY)
-#  include "bashhist.h"
-#  include <readline/history.h>
-#endif /* HISTORY */
-
-#if defined (JOB_CONTROL)
-#  include "jobs.h"
-#endif /* JOB_CONTROL */
-
-#if defined (ALIAS)
-#  include "alias.h"
-#endif /* ALIAS */
-
-#if defined (PROMPT_STRING_DECODE)
-#include <sys/param.h>
-#include <time.h>
-#include "maxpath.h"
-#endif /* PROMPT_STRING_DECODE */
-
-#define RE_READ_TOKEN  -99
-#define NO_EXPANSION   -100
-
-#define YYDEBUG 1
-extern int eof_encountered;
-extern int no_line_editing, running_under_emacs;
-extern int current_command_number;
-extern int interactive, interactive_shell, login_shell;
-extern int posixly_correct;
-extern int last_command_exit_value;
-extern int interrupt_immediately;
-extern char *shell_name, *current_host_name;
-extern Function *last_shell_builtin, *this_shell_builtin;
-#if defined (BUFFERED_INPUT)
-extern int bash_input_fd_changed;
-#endif
-
-/* **************************************************************** */
-/*                                                                 */
-/*                 "Forward" declarations                          */
-/*                                                                 */
-/* **************************************************************** */
-
-static int reserved_word_acceptable ();
-static int read_token ();
-static int yylex ();
-static int read_token_word ();
-static void discard_parser_constructs ();
-
-static void report_syntax_error ();
-static void handle_eof_input_unit ();
-static void prompt_again ();
-static void reset_readline_prompt ();
-static void print_prompt ();
-
-/* PROMPT_STRING_POINTER points to one of these, never to an actual string. */
-char *ps1_prompt, *ps2_prompt;
-
-/* Handle on the current prompt string.  Indirectly points through
-   ps1_ or ps2_prompt. */
-char **prompt_string_pointer = (char **)NULL;
-char *current_prompt_string;
-
-/* If non-zero, the decoded prompt string undergoes parameter and
-   variable substitution, command substitution, arithmetic substitution,
-   string expansion, process substitution, and quote removal in
-   decode_prompt_string. */
-int promptvars = 1;
-
-/* The decoded prompt string.  Used if READLINE is not defined or if
-   editing is turned off.  Analogous to current_readline_prompt. */
-static char *current_decoded_prompt;
-
-/* The number of lines read from input while creating the current command. */
-int current_command_line_count;
-
-/* Variables to manage the task of reading here documents, because we need to
-   defer the reading until after a complete command has been collected. */
-static REDIRECT *redir_stack[10];
-int need_here_doc;
-
-/* Where shell input comes from.  History expansion is performed on each
-   line when the shell is interactive. */
-static char *shell_input_line = (char *)NULL;
-static int shell_input_line_index = 0;
-static int shell_input_line_size = 0;  /* Amount allocated for shell_input_line. */
-static int shell_input_line_len = 0;   /* strlen (shell_input_line) */
-
-/* Either zero or EOF. */
-static int shell_input_line_terminator = 0;
-
-static REDIRECTEE redir;
-%}
-
-%union {
-  WORD_DESC *word;             /* the word that we read. */
-  int number;                  /* the number that we read. */
-  WORD_LIST *word_list;
-  COMMAND *command;
-  REDIRECT *redirect;
-  ELEMENT element;
-  PATTERN_LIST *pattern;
-}
-
-/* Reserved words.  Members of the first group are only recognized
-   in the case that they are preceded by a list_terminator.  Members
-   of the second group are recognized only under special circumstances. */
-%token IF THEN ELSE ELIF FI CASE ESAC FOR SELECT WHILE UNTIL DO DONE FUNCTION
-%token IN BANG TIME
-
-/* More general tokens. yylex () knows how to make these. */
-%token <word> WORD ASSIGNMENT_WORD
-%token <number> NUMBER
-%token AND_AND OR_OR GREATER_GREATER LESS_LESS LESS_AND
-%token GREATER_AND SEMI_SEMI LESS_LESS_MINUS AND_GREATER LESS_GREATER
-%token GREATER_BAR
-
-/* The types that the various syntactical units return. */
-
-%type <command> inputunit command pipeline pipeline_command
-%type <command> list list0 list1 compound_list simple_list simple_list1
-%type <command> simple_command shell_command
-%type <command> for_command select_command case_command group_command
-%type <command> function_def if_command elif_clause subshell
-%type <redirect> redirection redirection_list
-%type <element> simple_command_element
-%type <word_list> word_list pattern 
-%type <pattern> pattern_list case_clause_sequence case_clause
-
-%start inputunit
-
-%left '&' ';' '\n' yacc_EOF
-%left AND_AND OR_OR
-%right '|'
-%%
-
-inputunit:     simple_list '\n'
-                       {
-                         /* Case of regular command.  Discard the error
-                            safety net,and return the command just parsed. */
-                         global_command = $1;
-                         eof_encountered = 0;
-                         discard_parser_constructs (0);
-                         YYACCEPT;
-                       }
-       |       '\n'
-                       {
-                         /* Case of regular command, but not a very
-                            interesting one.  Return a NULL command. */
-                         global_command = (COMMAND *)NULL;
-                         YYACCEPT;
-                       }
-       |
-               error '\n'
-                       {
-                         /* Error during parsing.  Return NULL command. */
-                         global_command = (COMMAND *)NULL;
-                         eof_encountered = 0;
-                         discard_parser_constructs (1);
-                         if (interactive)
-                           {
-                             YYACCEPT;
-                           }
-                         else
-                           {
-                             YYABORT;
-                           }
-                       }
-       |       yacc_EOF
-                       {
-                         /* Case of EOF seen by itself.  Do ignoreeof or 
-                            not. */
-                         global_command = (COMMAND *)NULL;
-                         handle_eof_input_unit ();
-                         YYACCEPT;
-                       }
-       ;
-
-word_list:     WORD
-                       { $$ = make_word_list ($1, (WORD_LIST *)NULL); }
-       |       word_list WORD
-                       { $$ = make_word_list ($2, $1); }
-       ;
-
-redirection:   '>' WORD
-                       {
-                         redir.filename = $2;
-                         $$ = make_redirection (1, r_output_direction, redir);
-                       }
-       |       '<' WORD
-                       {
-                         redir.filename = $2;
-                         $$ = make_redirection (0, r_input_direction, redir);
-                       }
-       |       NUMBER '>' WORD
-                       {
-                         redir.filename = $3;
-                         $$ = make_redirection ($1, r_output_direction, redir);
-                       }
-       |       NUMBER '<' WORD
-                       {
-                         redir.filename = $3;
-                         $$ = make_redirection ($1, r_input_direction, redir);
-                       }
-       |       GREATER_GREATER WORD
-                       {
-                         redir.filename = $2;
-                         $$ = make_redirection (1, r_appending_to, redir);
-                       }
-       |       NUMBER GREATER_GREATER WORD
-                       {
-                         redir.filename = $3;
-                         $$ = make_redirection ($1, r_appending_to, redir);
-                       }
-       |       LESS_LESS WORD
-                       {
-                         redir.filename = $2;
-                         $$ = make_redirection (0, r_reading_until, redir);
-                         redir_stack[need_here_doc++] = $$;
-                       }
-       |       NUMBER LESS_LESS WORD
-                       {
-                         redir.filename = $3;
-                         $$ = make_redirection ($1, r_reading_until, redir);
-                         redir_stack[need_here_doc++] = $$;
-                       }
-       |       LESS_AND NUMBER
-                       {
-                         redir.dest = $2;
-                         $$ = make_redirection (0, r_duplicating_input, redir);
-                       }
-       |       NUMBER LESS_AND NUMBER
-                       {
-                         redir.dest = $3;
-                         $$ = make_redirection ($1, r_duplicating_input, redir);
-                       }
-       |       GREATER_AND NUMBER
-                       {
-                         redir.dest = $2;
-                         $$ = make_redirection (1, r_duplicating_output, redir);
-                       }
-       |       NUMBER GREATER_AND NUMBER
-                       {
-                         redir.dest = $3;
-                         $$ = make_redirection ($1, r_duplicating_output, redir);
-                       }
-       |       LESS_AND WORD
-                       {
-                         redir.filename = $2;
-                         $$ = make_redirection (0, r_duplicating_input_word, redir);
-                       }
-       |       NUMBER LESS_AND WORD
-                       {
-                         redir.filename = $3;
-                         $$ = make_redirection ($1, r_duplicating_input_word, redir);
-                       }
-       |       GREATER_AND WORD
-                       {
-                         redir.filename = $2;
-                         $$ = make_redirection (1, r_duplicating_output_word, redir);
-                       }
-       |       NUMBER GREATER_AND WORD
-                       {
-                         redir.filename = $3;
-                         $$ = make_redirection ($1, r_duplicating_output_word, redir);
-                       }
-       |       LESS_LESS_MINUS WORD
-                       {
-                         redir.filename = $2;
-                         $$ = make_redirection
-                           (0, r_deblank_reading_until, redir);
-                         redir_stack[need_here_doc++] = $$;
-                       }
-       |       NUMBER LESS_LESS_MINUS WORD
-                       {
-                         redir.filename = $3;
-                         $$ = make_redirection
-                           ($1, r_deblank_reading_until, redir);
-                         redir_stack[need_here_doc++] = $$;
-                       }
-       |       GREATER_AND '-'
-                       {
-                         redir.dest = 0L;
-                         $$ = make_redirection (1, r_close_this, redir);
-                       }
-       |       NUMBER GREATER_AND '-'
-                       {
-                         redir.dest = 0L;
-                         $$ = make_redirection ($1, r_close_this, redir);
-                       }
-       |       LESS_AND '-'
-                       {
-                         redir.dest = 0L;
-                         $$ = make_redirection (0, r_close_this, redir);
-                       }
-       |       NUMBER LESS_AND '-'
-                       {
-                         redir.dest = 0L;
-                         $$ = make_redirection ($1, r_close_this, redir);
-                       }
-       |       AND_GREATER WORD
-                       {
-                         redir.filename = $2;
-                         $$ = make_redirection (1, r_err_and_out, redir);
-                       }
-       |       NUMBER LESS_GREATER WORD
-                       {
-                         redir.filename = $3;
-                         $$ = make_redirection ($1, r_input_output, redir);
-                       }
-       |       LESS_GREATER WORD
-                       {
-                         redir.filename = $2;
-                         $$ = make_redirection (0, r_input_output, redir);
-                       }                         
-       |       GREATER_BAR WORD
-                       {
-                         redir.filename = $2;
-                         $$ = make_redirection (1, r_output_force, redir);
-                       }
-       |       NUMBER GREATER_BAR WORD
-                       {
-                         redir.filename = $3;
-                         $$ = make_redirection ($1, r_output_force, redir);
-                       }
-       ;
-
-simple_command_element: WORD
-                       { $$.word = $1; $$.redirect = 0; }
-       |       ASSIGNMENT_WORD
-                       { $$.word = $1; $$.redirect = 0; }
-       |       redirection
-                       { $$.redirect = $1; $$.word = 0; }
-       ;
-
-redirection_list: redirection
-                       {
-                         $$ = $1;
-                       }
-       |       redirection_list redirection
-                       { 
-                         register REDIRECT *t;
-
-                         for (t = $1; t->next; t = t->next)
-                           ;
-                         t->next = $2; 
-                         $$ = $1;
-                       }
-       ;
-
-simple_command:        simple_command_element
-                       { $$ = make_simple_command ($1, (COMMAND *)NULL); }
-       |       simple_command simple_command_element
-                       { $$ = make_simple_command ($2, $1); }
-       ;
-
-command:       simple_command
-                       { $$ = clean_simple_command ($1); }
-       |       shell_command
-                       { $$ = $1; }
-       |       shell_command redirection_list
-                       {
-                         COMMAND *tc;
-
-                         tc = $1;
-                         /* According to Posix.2 3.9.5, redirections
-                            specified after the body of a function should
-                            be attached to the function and performed when
-                            the function is executed, not as part of the
-                            function definition command. */
-                         if (tc->type == cm_function_def)
-                           {
-                             tc = tc->value.Function_def->command;
-                             if (tc->type == cm_group)
-                               tc = tc->value.Group->command;
-                           }
-                         if (tc->redirects)
-                           {
-                             register REDIRECT *t;
-                             for (t = tc->redirects; t->next; t = t->next)
-                               ;
-                             t->next = $2;
-                           }
-                         else
-                           tc->redirects = $2;
-                         $$ = $1;
-                       }
-       ;
-
-shell_command: for_command
-                       { $$ = $1; }
-       |       case_command
-                       { $$ = $1; }
-       |       WHILE list DO list DONE
-                       { $$ = make_while_command ($2, $4); }
-       |       UNTIL list DO list DONE
-                       { $$ = make_until_command ($2, $4); }
-       |       select_command
-                       { $$ = $1; }
-       |       if_command
-                       { $$ = $1; }
-       |       subshell
-                       { $$ = $1; }
-       |       group_command
-                       { $$ = $1; }
-       |       function_def
-                       { $$ = $1; }
-       ;
-
-for_command:   FOR WORD newline_list DO list DONE
-                       { $$ = make_for_command ($2, add_string_to_list ("\"$@\"", (WORD_LIST *)NULL), $5); }
-       |       FOR WORD newline_list '{' list '}'
-                       { $$ = make_for_command ($2, add_string_to_list ("$@", (WORD_LIST *)NULL), $5); }
-       |       FOR WORD ';' newline_list DO list DONE
-                       { $$ = make_for_command ($2, add_string_to_list ("\"$@\"", (WORD_LIST *)NULL), $6); }
-       |       FOR WORD ';' newline_list '{' list '}'
-                       { $$ = make_for_command ($2, add_string_to_list ("\"$@\"", (WORD_LIST *)NULL), $6); }
-       |       FOR WORD newline_list IN word_list list_terminator newline_list DO list DONE
-                       { $$ = make_for_command ($2, REVERSE_LIST ($5, WORD_LIST *), $9); }
-       |       FOR WORD newline_list IN word_list list_terminator newline_list '{' list '}'
-                       { $$ = make_for_command ($2, REVERSE_LIST ($5, WORD_LIST *), $9); }
-       ;
-
-select_command:        SELECT WORD newline_list DO list DONE
-                       {
-                         $$ = make_select_command ($2, add_string_to_list ("\"$@\"", (WORD_LIST *)NULL), $5);
-                       }
-       |       SELECT WORD newline_list '{' list '}'
-                       {
-                         $$ = make_select_command ($2, add_string_to_list ("$@", (WORD_LIST *)NULL), $5);
-                       }
-       |       SELECT WORD ';' newline_list DO list DONE
-                       {
-                         $$ = make_select_command ($2, add_string_to_list ("\"$@\"", (WORD_LIST *)NULL), $6);
-                       }
-       |       SELECT WORD ';' newline_list '{' list '}'
-                       {
-                         $$ = make_select_command ($2, add_string_to_list ("\"$@\"", (WORD_LIST *)NULL), $6);
-                       }
-       |       SELECT WORD newline_list IN word_list list_terminator newline_list DO list DONE
-                       {
-                         $$ = make_select_command ($2, (WORD_LIST *)reverse_list ($5), $9);
-                       }
-       |       SELECT WORD newline_list IN word_list list_terminator newline_list '{' list '}'
-                       {
-                         $$ = make_select_command ($2, (WORD_LIST *)reverse_list ($5), $9);
-                       }
-       ;
-
-case_command:  CASE WORD newline_list IN newline_list ESAC
-                       { $$ = make_case_command ($2, (PATTERN_LIST *)NULL); }
-       |       CASE WORD newline_list IN case_clause_sequence newline_list ESAC
-                       { $$ = make_case_command ($2, $5); }
-       |       CASE WORD newline_list IN case_clause ESAC
-                       { $$ = make_case_command ($2, $5); }
-       ;
-
-function_def:  WORD '(' ')' newline_list group_command
-                       { $$ = make_function_def ($1, $5); }
-
-       |       FUNCTION WORD '(' ')' newline_list group_command
-                       { $$ = make_function_def ($2, $6); }
-
-       |       FUNCTION WORD newline_list group_command
-                       { $$ = make_function_def ($2, $4); }
-       ;
-
-subshell:      '(' compound_list ')'
-                       { $2->flags |= CMD_WANT_SUBSHELL; $$ = $2; }
-       ;
-       
-if_command:    IF list THEN list FI
-                       { $$ = make_if_command ($2, $4, (COMMAND *)NULL); }
-       |       IF list THEN list ELSE list FI
-                       { $$ = make_if_command ($2, $4, $6); }
-       |       IF list THEN list elif_clause FI
-                       { $$ = make_if_command ($2, $4, $5); }
-       ;
-
-
-group_command: '{' list '}'
-                       { $$ = make_group_command ($2); }
-       ;
-
-elif_clause:   ELIF list THEN list
-                       { $$ = make_if_command ($2, $4, (COMMAND *)NULL); }
-       |       ELIF list THEN list ELSE list
-                       { $$ = make_if_command ($2, $4, $6); }
-       |       ELIF list THEN list elif_clause
-                       { $$ = make_if_command ($2, $4, $5); }
-       ;
-
-case_clause:   pattern_list
-       |       case_clause_sequence pattern_list
-                       { $2->next = $1; $$ = $2; }
-       ;
-
-pattern_list:  newline_list pattern ')' compound_list
-                       { $$ = make_pattern_list ($2, $4); }
-       |       newline_list pattern ')' newline_list
-                       { $$ = make_pattern_list ($2, (COMMAND *)NULL); }
-       |       newline_list '(' pattern ')' compound_list
-                       { $$ = make_pattern_list ($3, $5); }
-       |       newline_list '(' pattern ')' newline_list
-                       { $$ = make_pattern_list ($3, (COMMAND *)NULL); }
-       ;
-
-case_clause_sequence:  pattern_list SEMI_SEMI
-       |       case_clause_sequence pattern_list SEMI_SEMI
-                       { $2->next = $1; $$ = $2; }
-       ;
-
-pattern:       WORD
-                       { $$ = make_word_list ($1, (WORD_LIST *)NULL); }
-       |       pattern '|' WORD
-                       { $$ = make_word_list ($3, $1); }
-       ;
-
-/* A list allows leading or trailing newlines and
-   newlines as operators (equivalent to semicolons).
-   It must end with a newline or semicolon.
-   Lists are used within commands such as if, for, while.  */
-
-list:          newline_list list0
-                       {
-                         $$ = $2;
-                         if (need_here_doc)
-                           gather_here_documents ();
-                        }
-       ;
-
-compound_list: list
-       |       newline_list list1
-                       {
-                         $$ = $2;
-                       }
-       ;
-
-list0:         list1 '\n' newline_list
-       |       list1 '&' newline_list
-                       {
-                         if ($1->type == cm_connection)
-                           $$ = connect_async_list ($1, (COMMAND *)NULL, '&');
-                         else
-                           $$ = command_connect ($1, (COMMAND *)NULL, '&');
-                       }
-       |       list1 ';' newline_list
-
-       ;
-
-list1:         list1 AND_AND newline_list list1
-                       { $$ = command_connect ($1, $4, AND_AND); }
-       |       list1 OR_OR newline_list list1
-                       { $$ = command_connect ($1, $4, OR_OR); }
-       |       list1 '&' newline_list list1
-                       {
-                         if ($1->type == cm_connection)
-                           $$ = connect_async_list ($1, $4, '&');
-                         else
-                           $$ = command_connect ($1, $4, '&');
-                       }
-       |       list1 ';' newline_list list1
-                       { $$ = command_connect ($1, $4, ';'); }
-       |       list1 '\n' newline_list list1
-                       { $$ = command_connect ($1, $4, ';'); }
-       |       pipeline_command
-                       { $$ = $1; }
-       ;
-
-list_terminator:'\n'
-       |       ';'
-       |       yacc_EOF
-       ;
-
-newline_list:
-       |       newline_list '\n'
-       ;
-
-/* A simple_list is a list that contains no significant newlines
-   and no leading or trailing newlines.  Newlines are allowed
-   only following operators, where they are not significant.
-
-   This is what an inputunit consists of.  */
-
-simple_list:   simple_list1
-                       {
-                         $$ = $1;
-                         if (need_here_doc)
-                           gather_here_documents ();
-                       }
-       |       simple_list1 '&'
-                       {
-                         if ($1->type == cm_connection)
-                           $$ = connect_async_list ($1, (COMMAND *)NULL, '&');
-                         else
-                           $$ = command_connect ($1, (COMMAND *)NULL, '&');
-                         if (need_here_doc)
-                           gather_here_documents ();
-                       }
-       |       simple_list1 ';'
-                       {
-                         $$ = $1;
-                         if (need_here_doc)
-                           gather_here_documents ();
-                       }
-       ;
-
-simple_list1:  simple_list1 AND_AND newline_list simple_list1
-                       { $$ = command_connect ($1, $4, AND_AND); }
-       |       simple_list1 OR_OR newline_list simple_list1
-                       { $$ = command_connect ($1, $4, OR_OR); }
-       |       simple_list1 '&' simple_list1
-                       {
-                         if ($1->type == cm_connection)
-                           $$ = connect_async_list ($1, $3, '&');
-                         else
-                           $$ = command_connect ($1, $3, '&');
-                       }
-       |       simple_list1 ';' simple_list1
-                       { $$ = command_connect ($1, $3, ';'); }
-
-       |       pipeline_command
-                       { $$ = $1; }
-       ;
-
-pipeline_command: pipeline
-                       { $$ = $1; }
-       |       BANG pipeline
-                       {
-                         $2->flags |= CMD_INVERT_RETURN;
-                         $$ = $2;
-                       }
-       |       TIME pipeline
-                       {
-                         $2->flags |= CMD_TIME_PIPELINE;
-                         $$ = $2;
-                       }
-       |       TIME BANG pipeline
-                       {
-                         $3->flags |= CMD_TIME_PIPELINE|CMD_INVERT_RETURN;
-                         $$ = $3;
-                       }
-       |       BANG TIME pipeline
-                       {
-                         $3->flags |= CMD_TIME_PIPELINE|CMD_INVERT_RETURN;
-                         $$ = $3;
-                       }
-       ;
-
-pipeline:
-               pipeline '|' newline_list pipeline
-                       { $$ = command_connect ($1, $4, '|'); }
-       |       command
-                       { $$ = $1; }
-       ;
-%%
-
-/* Initial size to allocate for tokens, and the
-   amount to grow them by. */
-#define TOKEN_DEFAULT_GROW_SIZE 512
-
-/* Shell meta-characters that, when unquoted, separate words. */
-#define shellmeta(c)   (strchr ("()<>;&|", (c)) != 0)
-#define shellbreak(c)  (strchr ("()<>;&| \t\n", (c)) != 0)
-#define shellquote(c)  ((c) == '"' || (c) == '`' || (c) == '\'')
-
-/* The token currently being read. */
-static int current_token = 0;
-
-/* The last read token, or NULL.  read_token () uses this for context
-   checking. */
-static int last_read_token = 0;
-
-/* The token read prior to last_read_token. */
-static int token_before_that = 0;
-
-/* The token read prior to token_before_that. */
-static int two_tokens_ago;
-
-/* If non-zero, it is the token that we want read_token to return
-   regardless of what text is (or isn't) present to be read.  This
-   is reset by read_token.  If token_to_read == WORD or
-   ASSIGNMENT_WORD, yylval.word should be set to word_desc_to_read. */
-static int token_to_read;
-static WORD_DESC *word_desc_to_read;
-
-/* Global var is non-zero when end of file has been reached. */
-int EOF_Reached = 0;
-
-/* yy_getc () returns the next available character from input or EOF.
-   yy_ungetc (c) makes `c' the next character to read.
-   init_yy_io (get, unget, type, location) makes the function GET the
-   installed function for getting the next character, makes UNGET the
-   installed function for un-getting a character, sets the type of stream
-   (either string or file) from TYPE, and makes LOCATION point to where
-   the input is coming from. */
-
-/* Unconditionally returns end-of-file. */
-int
-return_EOF ()
-{
-  return (EOF);
-}
-
-/* Variable containing the current get and unget functions.
-   See ./input.h for a clearer description. */
-BASH_INPUT bash_input;
-
-/* Set all of the fields in BASH_INPUT to NULL. */
-void
-initialize_bash_input ()
-{
-  bash_input.type = st_none;
-  bash_input.name = (char *)NULL;
-  bash_input.location.file = (FILE *)NULL;
-  bash_input.location.string = (char *)NULL;
-  bash_input.getter = (Function *)NULL;
-  bash_input.ungetter = (Function *)NULL;
-}
-
-/* Set the contents of the current bash input stream from
-   GET, UNGET, TYPE, NAME, and LOCATION. */
-void
-init_yy_io (get, unget, type, name, location)
-     Function *get, *unget;
-     int type;
-     char *name;
-     INPUT_STREAM location;
-{
-  bash_input.type = type;
-  FREE (bash_input.name);
-
-  if (name)
-    bash_input.name = savestring (name);
-  else
-    bash_input.name = (char *)NULL;
-
-  /* XXX */
-#if defined (CRAY)
-  memcpy((char *)&bash_input.location.string, (char *)&location.string, sizeof(location));
-#else
-  bash_input.location = location;
-#endif
-  bash_input.getter = get;
-  bash_input.ungetter = unget;
-}
-
-/* Call this to get the next character of input. */
-int
-yy_getc ()
-{
-  return (*(bash_input.getter)) ();
-}
-
-/* Call this to unget C.  That is, to make C the next character
-   to be read. */
-int
-yy_ungetc (c)
-     int c;
-{
-  return (*(bash_input.ungetter)) (c);
-}
-
-#if defined (BUFFERED_INPUT)
-int
-input_file_descriptor ()
-{
-  switch (bash_input.type)
-    {
-    case st_stream:
-      return (fileno (bash_input.location.file));
-    case st_bstream:
-      return (bash_input.location.buffered_fd);
-    case st_stdin:
-    default:
-      return (fileno (stdin));
-    }
-}
-#endif /* BUFFERED_INPUT */
-
-/* **************************************************************** */
-/*                                                                 */
-/*               Let input be read from readline ().               */
-/*                                                                 */
-/* **************************************************************** */
-
-#if defined (READLINE)
-char *current_readline_prompt = (char *)NULL;
-char *current_readline_line = (char *)NULL;
-int current_readline_line_index = 0;
-
-static int
-yy_readline_get ()
-{
-  SigHandler *old_sigint;
-  int line_len, c;
-
-  if (!current_readline_line)
-    {
-      if (!bash_readline_initialized)
-       initialize_readline ();
-
-#if defined (JOB_CONTROL)
-      if (job_control)
-       give_terminal_to (shell_pgrp);
-#endif /* JOB_CONTROL */
-
-      if (signal_is_ignored (SIGINT) == 0)
-       {
-         old_sigint = (SigHandler *)set_signal_handler (SIGINT, sigint_sighandler);
-         interrupt_immediately++;
-       }
-
-      current_readline_line = readline (current_readline_prompt ?
-                                         current_readline_prompt : "");
-
-      if (signal_is_ignored (SIGINT) == 0)
-       {
-         interrupt_immediately--;
-         set_signal_handler (SIGINT, old_sigint);
-       }
-
-      /* Reset the prompt to the decoded value of prompt_string_pointer. */
-      reset_readline_prompt ();
-
-      if (!current_readline_line)
-       return (EOF);
-
-      current_readline_line_index = 0;
-      line_len = strlen (current_readline_line);
-
-      current_readline_line = xrealloc (current_readline_line, 2 + line_len);
-      current_readline_line[line_len++] = '\n';
-      current_readline_line[line_len] = '\0';
-    }
-
-  if (!current_readline_line[current_readline_line_index])
-    {
-      free (current_readline_line);
-      current_readline_line = (char *)NULL;
-      return (yy_readline_get ());
-    }
-  else
-    {
-      c = current_readline_line[current_readline_line_index++];
-      return (c);
-    }
-}
-
-static int
-yy_readline_unget (c)
-     int c;
-{
-  if (current_readline_line_index && current_readline_line)
-    current_readline_line[--current_readline_line_index] = c;
-  return (c);
-}
-
-void  
-with_input_from_stdin ()
-{
-  INPUT_STREAM location;
-
-  if (bash_input.type != st_stdin && stream_on_stack (st_stdin) == 0)
-    {
-      location.string = current_readline_line;
-      init_yy_io (yy_readline_get, yy_readline_unget,
-                 st_stdin, "readline stdin", location);
-    }
-}
-
-#else  /* !READLINE */
-
-void
-with_input_from_stdin ()
-{
-  with_input_from_stream (stdin, "stdin");
-}
-#endif /* !READLINE */
-
-/* **************************************************************** */
-/*                                                                 */
-/*   Let input come from STRING.  STRING is zero terminated.       */
-/*                                                                 */
-/* **************************************************************** */
-
-static int
-yy_string_get ()
-{
-  register char *string;
-  register int c;
-
-  string = bash_input.location.string;
-  c = EOF;
-
-  /* If the string doesn't exist, or is empty, EOF found. */
-  if (string && *string)
-    {
-      c = *string++;
-      bash_input.location.string = string;
-    }
-  return (c);
-}
-
-static int
-yy_string_unget (c)
-     int c;
-{
-  *(--bash_input.location.string) = c;
-  return (c);
-}
-
-void
-with_input_from_string (string, name)
-     char *string, *name;
-{
-  INPUT_STREAM location;
-
-  location.string = string;
-  init_yy_io (yy_string_get, yy_string_unget, st_string, name, location);
-}
-
-/* **************************************************************** */
-/*                                                                 */
-/*                  Let input come from STREAM.                    */
-/*                                                                 */
-/* **************************************************************** */
-
-static int
-yy_stream_get ()
-{
-  int result = EOF;
-
-  if (bash_input.location.file)
-#if !defined (HAVE_RESTARTABLE_SYSCALLS)
-    result = getc_with_restart (bash_input.location.file);
-#else /* HAVE_RESTARTABLE_SYSCALLS */
-    result = getc (bash_input.location.file);
-#endif /* HAVE_RESTARTABLE_SYSCALLS */
-  return (result);
-}
-
-static int
-yy_stream_unget (c)
-     int c;
-{
-  return (ungetc (c, bash_input.location.file));
-}
-
-void
-with_input_from_stream (stream, name)
-     FILE *stream;
-     char *name;
-{
-  INPUT_STREAM location;
-
-  location.file = stream;
-  init_yy_io (yy_stream_get, yy_stream_unget, st_stream, name, location);
-}
-
-typedef struct stream_saver {
-  struct stream_saver *next;
-  BASH_INPUT bash_input;
-  int line;
-#if defined (BUFFERED_INPUT)
-  BUFFERED_STREAM *bstream;
-#endif /* BUFFERED_INPUT */
-} STREAM_SAVER;
-
-/* The globally known line number. */
-int line_number = 0;
-
-STREAM_SAVER *stream_list = (STREAM_SAVER *)NULL;
-
-void
-push_stream ()
-{
-  STREAM_SAVER *saver = (STREAM_SAVER *)xmalloc (sizeof (STREAM_SAVER));
-
-  xbcopy ((char *)&bash_input, (char *)&(saver->bash_input), sizeof (BASH_INPUT));
-
-#if defined (BUFFERED_INPUT)
-  saver->bstream = (BUFFERED_STREAM *)NULL;
-  /* If we have a buffered stream, clear out buffers[fd]. */
-  if (bash_input.type == st_bstream && bash_input.location.buffered_fd >= 0)
-    {
-      saver->bstream = buffers[bash_input.location.buffered_fd];
-      buffers[bash_input.location.buffered_fd] = (BUFFERED_STREAM *)NULL;
-    }
-#endif /* BUFFERED_INPUT */
-
-  saver->line = line_number;
-  bash_input.name = (char *)NULL;
-  saver->next = stream_list;
-  stream_list = saver;
-  EOF_Reached = line_number = 0;
-}
-
-void
-pop_stream ()
-{
-  if (!stream_list)
-    EOF_Reached = 1;
-  else
-    {
-      STREAM_SAVER *saver = stream_list;
-
-      EOF_Reached = 0;
-      stream_list = stream_list->next;
-
-      init_yy_io (saver->bash_input.getter,
-                 saver->bash_input.ungetter,
-                 saver->bash_input.type,
-                 saver->bash_input.name,
-                 saver->bash_input.location);
-
-#if defined (BUFFERED_INPUT)
-      /* If we have a buffered stream, restore buffers[fd]. */
-      /* If the input file descriptor was changed while this was on the
-        save stack, update the buffered fd to the new file descriptor and
-        re-establish the buffer <-> bash_input fd correspondence. */
-      if (bash_input.type == st_bstream && bash_input.location.buffered_fd >= 0)
-        {
-          if (bash_input_fd_changed)
-           {
-             bash_input_fd_changed = 0;
-             if (default_buffered_input >= 0)
-               {
-                 bash_input.location.buffered_fd = default_buffered_input;
-                 saver->bstream->b_fd = default_buffered_input;
-               }
-           }
-         buffers[bash_input.location.buffered_fd] = saver->bstream;
-        }
-#endif /* BUFFERED_INPUT */
-
-      line_number = saver->line;
-
-      FREE (saver->bash_input.name);
-      free (saver);
-    }
-}
-
-/* Return 1 if a stream of type TYPE is saved on the stack. */
-int
-stream_on_stack (type)
-     enum stream_type type;
-{
-  register STREAM_SAVER *s;
-
-  for (s = stream_list; s; s = s->next)
-    if (s->bash_input.type == type)
-      return 1;
-  return 0;
-}
-
-/*
- * This is used to inhibit alias expansion and reserved word recognition
- * inside case statement pattern lists.  A `case statement pattern list' is:
- *
- *     everything between the `in' in a `case word in' and the next ')'
- *     or `esac'
- *     everything between a `;;' and the next `)' or `esac'
- */
-static int in_case_pattern_list = 0;
-
-#if defined (ALIAS)
-
-#define END_OF_ALIAS 0
-
-/*
- * Pseudo-global variables used in implementing token-wise alias expansion.
- */
-
-static int expand_next_token;
-
-/*
- * Pushing and popping strings.  This works together with shell_getc to 
- * implement alias expansion on a per-token basis.
- */
-
-typedef struct string_saver {
-  struct string_saver *next;
-  int expand_alias;  /* Value to set expand_alias to when string is popped. */
-  char *saved_line;
-  alias_t *expander;   /* alias that caused this line to be pushed. */
-  int saved_line_size, saved_line_index, saved_line_terminator;
-} STRING_SAVER;
-
-STRING_SAVER *pushed_string_list = (STRING_SAVER *)NULL;
-
-#if 0
-static void push_expansion ();
-static void pop_expansion ();
-static int token_is_being_expanded ();
-#endif
-
-/*
- * Push the current shell_input_line onto a stack of such lines and make S
- * the current input.  Used when expanding aliases.  EXPAND is used to set
- * the value of expand_next_token when the string is popped, so that the
- * word after the alias in the original line is handled correctly when the
- * alias expands to multiple words.  TOKEN is the token that was expanded
- * into S; it is saved and used to prevent infinite recursive expansion.
- */
-static void
-push_string (s, expand, ap)
-     char *s;
-     int expand;
-     alias_t *ap;
-{
-  STRING_SAVER *temp = (STRING_SAVER *) xmalloc (sizeof (STRING_SAVER));
-
-  temp->expand_alias = expand;
-  temp->saved_line = shell_input_line;
-  temp->saved_line_size = shell_input_line_size;
-  temp->saved_line_index = shell_input_line_index;
-  temp->saved_line_terminator = shell_input_line_terminator;
-  temp->expander = ap;
-  temp->next = pushed_string_list;
-  pushed_string_list = temp;
-
-  ap->flags |= AL_BEINGEXPANDED;
-#if 0
-  push_expansion (ap->name);
-#endif
-
-  shell_input_line = s;
-  shell_input_line_size = strlen (s);
-  shell_input_line_index = 0;
-  shell_input_line_terminator = '\0';
-  expand_next_token = 0;
-}
-
-/*
- * Make the top of the pushed_string stack be the current shell input.
- * Only called when there is something on the stack.  Called from shell_getc
- * when it thinks it has consumed the string generated by an alias expansion
- * and needs to return to the original input line.
- */
-static void
-pop_string ()
-{
-  STRING_SAVER *t;
-
-  FREE (shell_input_line);
-  shell_input_line = pushed_string_list->saved_line;
-  shell_input_line_index = pushed_string_list->saved_line_index;
-  shell_input_line_size = pushed_string_list->saved_line_size;
-  shell_input_line_terminator = pushed_string_list->saved_line_terminator;
-  expand_next_token = pushed_string_list->expand_alias;
-
-  t = pushed_string_list;
-  pushed_string_list = pushed_string_list->next;
-
-  t->expander->flags &= ~AL_BEINGEXPANDED;
-
-  free((char *)t);
-}
-
-static void
-free_string_list ()
-{
-  register STRING_SAVER *t, *t1;
-
-  for (t = pushed_string_list; t; )
-    {
-      t1 = t->next;
-      FREE (t->saved_line);
-      t->expander->flags &= ~AL_BEINGEXPANDED;
-      free ((char *)t);
-      t = t1;
-    }
-  pushed_string_list = (STRING_SAVER *)NULL;
-}
-
-#if 0
-/* XXX - NO LONGER USED - XXX */
-/* This is a stack to save the values of all tokens for which alias
-   expansion has been performed during the current call to read_token ().
-   It is used to prevent alias expansion loops:
-
-      alias foo=bar
-      alias bar=baz
-      alias baz=foo
-
-   Ideally this would be taken care of by push and pop string, but because
-   of when strings are popped the stack will not contain the correct
-   strings to test against.  (The popping is done in shell_getc, so that when
-   the current string is exhausted, shell_getc can simply pop that string off
-   the stack, restore the previous string, and continue with the character
-   following the token whose expansion was originally pushed on the stack.)
-
-   What we really want is a record of all tokens that have been expanded for
-   aliases during the `current' call to read_token().  This does that, at the
-   cost of being somewhat special-purpose (OK, OK vile and unclean). */
-
-typedef struct _exp_saver {
-      struct _exp_saver *next;
-      char *saved_token;
-} EXPANSION_SAVER;
-
-EXPANSION_SAVER *expanded_token_stack = (EXPANSION_SAVER *)NULL;
-
-static void
-push_expansion (s)
-     char *s;
-{
-  EXPANSION_SAVER *t;
-
-  t = (EXPANSION_SAVER *)xmalloc (sizeof (EXPANSION_SAVER));
-  t->saved_token = savestring (s);
-  t->next = expanded_token_stack;
-  expanded_token_stack = t;
-}
-
-/* Return 1 if TOKEN has already been expanded in the current `stack' of
-   expansions.  If it has been expanded already, it will appear as the value
-   of saved_token for some entry in the stack of expansions created for the
-   current token being expanded. */
-static int
-token_has_been_expanded (token)
-     char *token;
-{
-  register EXPANSION_SAVER *t;
-
-  for (t = expanded_token_stack; t; t = t->next)
-    {
-      if (STREQ (token, t->saved_token))
-       return (1);
-    }
-
-  return (0);
-}
-
-static void
-free_expansion_stack ()
-{
-  register EXPANSION_SAVER *t, *t1;
-
-  for (t = expanded_token_stack; t; )
-    {
-      t1 = t->next;
-      free (t->saved_token);
-      free (t);
-      t = t1;
-    }
-  expanded_token_stack = (EXPANSION_SAVER *)NULL;
-}
-
-static void
-pop_expansion ()
-{
-  EXPANSION_SAVER *t;
-
-  if (expanded_token_stack == NULL)
-    return;
-
-  t = expanded_token_stack;
-  expanded_token_stack = t->next;
-
-  free (t->saved_token);
-  free (t);
-}
-#endif /* 0 */
-#endif /* ALIAS */
-
-/* Return a line of text, taken from wherever yylex () reads input.
-   If there is no more input, then we return NULL.  If REMOVE_QUOTED_NEWLINE
-   is non-zero, we remove unquoted \<newline> pairs.  This is used by
-   read_secondary_line to read here documents. */
-static char *
-read_a_line (remove_quoted_newline)
-     int remove_quoted_newline;
-{
-  static char *line_buffer = (char *)NULL;
-  static int buffer_size = 0;
-  int indx = 0, c, peekc, pass_next;
-
-  pass_next = 0;
-  while (1)
-    {
-      c = yy_getc ();
-
-      /* Allow immediate exit if interrupted during input. */
-      QUIT;
-
-      if (c == 0)
-       continue;
-
-      /* If there is no more input, then we return NULL. */
-      if (c == EOF)
-       {
-         if (indx == 0)
-           return ((char *)NULL);
-         c = '\n';
-       }
-
-      /* `+2' in case the final character in the buffer is a newline. */
-      if (indx + 2 > buffer_size)
-       line_buffer = xrealloc (line_buffer, buffer_size += 128);
-
-      /* IF REMOVE_QUOTED_NEWLINES is non-zero, we are reading a
-        here document with an unquoted delimiter.  In this case,
-        the line will be expanded as if it were in double quotes.
-        We allow a backslash to escape the next character, but we
-        need to treat the backslash specially only if a backslash
-        quoting a backslash-newline pair appears in the line. */
-      if (pass_next)
-        {
-         line_buffer[indx++] = c;
-         pass_next = 0;
-        }
-      else if (c == '\\' && remove_quoted_newline)
-       {
-         peekc = yy_getc ();
-         if (peekc == '\n')
-           continue;   /* Make the unquoted \<newline> pair disappear. */
-         else
-           {
-             yy_ungetc (peekc);
-             pass_next = 1;
-             line_buffer[indx++] = c;          /* Preserve the backslash. */
-           }
-       }
-      else
-       line_buffer[indx++] = c;
-
-      if (c == '\n')
-       {
-         line_buffer[indx] = '\0';
-         return (line_buffer);
-       }
-    }
-}
-
-/* Return a line as in read_a_line (), but insure that the prompt is
-   the secondary prompt.  This is used to read the lines of a here
-   document.  REMOVE_QUOTED_NEWLINE is non-zero if we should remove
-   newlines quoted with backslashes while reading the line.  It is
-   non-zero unless the delimiter of the here document was quoted. */
-char *
-read_secondary_line (remove_quoted_newline)
-     int remove_quoted_newline;
-{
-  prompt_string_pointer = &ps2_prompt;
-  prompt_again ();
-  return (read_a_line (remove_quoted_newline));
-}
-
-/* **************************************************************** */
-/*                                                                 */
-/*                             YYLEX ()                            */
-/*                                                                 */
-/* **************************************************************** */
-
-/* Reserved words.  These are only recognized as the first word of a
-   command. */
-STRING_INT_ALIST word_token_alist[] = {
-  { "if", IF },
-  { "then", THEN },
-  { "else", ELSE },
-  { "elif", ELIF },
-  { "fi", FI },
-  { "case", CASE },
-  { "esac", ESAC },
-  { "for", FOR },
-#if defined (SELECT_COMMAND)
-  { "select", SELECT },
-#endif
-  { "while", WHILE },
-  { "until", UNTIL },
-  { "do", DO },
-  { "done", DONE },
-  { "in", IN },
-  { "function", FUNCTION },
-#if defined (COMMAND_TIMING)
-  { "time", TIME },
-#endif
-  { "{", '{' },
-  { "}", '}' },
-  { "!", BANG },
-  { (char *)NULL, 0}
-};
-
-/* Return the next shell input character.  This always reads characters
-   from shell_input_line; when that line is exhausted, it is time to
-   read the next line.  This is called by read_token when the shell is
-   processing normal command input. */
-
-static int
-shell_getc (remove_quoted_newline)
-     int remove_quoted_newline;
-{
-  register int i;
-  int c;
-  static int mustpop = 0;
-
-  QUIT;
-
-#if defined (ALIAS)
-  /* If shell_input_line[shell_input_line_index] == 0, but there is
-     something on the pushed list of strings, then we don't want to go
-     off and get another line.  We let the code down below handle it. */
-
-  if (!shell_input_line || ((!shell_input_line[shell_input_line_index]) &&
-                           (pushed_string_list == (STRING_SAVER *)NULL)))
-#else /* !ALIAS */
-  if (!shell_input_line || !shell_input_line[shell_input_line_index])
-#endif /* !ALIAS */
-    {
-      line_number++;
-
-    restart_read:
-
-      /* Allow immediate exit if interrupted during input. */
-      QUIT;
-
-      i = 0;
-      shell_input_line_terminator = 0;
-
-#if defined (JOB_CONTROL)
-      /* This can cause a problem when reading a command as the result
-        of a trap, when the trap is called from flush_child.  This call
-        had better not cause jobs to disappear from the job table in
-        that case, or we will have big trouble. */
-      notify_and_cleanup ();
-#else /* !JOB_CONTROL */
-      cleanup_dead_jobs ();
-#endif /* !JOB_CONTROL */
-
-#if defined (READLINE)
-      if (interactive && bash_input.type != st_string && no_line_editing)
-#else
-      if (interactive && bash_input.type != st_string)
-#endif
-       print_prompt ();
-
-      if (bash_input.type == st_stream)
-       clearerr (stdin);
-
-      while (c = yy_getc ())
-       {
-         /* Allow immediate exit if interrupted during input. */
-         QUIT;
-
-         if (i + 2 > shell_input_line_size)
-           {
-             shell_input_line_size += 256;
-             shell_input_line = xrealloc (shell_input_line, shell_input_line_size);
-           }
-
-         if (c == EOF)
-           {
-             if (bash_input.type == st_stream)
-               clearerr (stdin);
-
-             if (i == 0)
-               shell_input_line_terminator = EOF;
-
-             shell_input_line[i] = '\0';
-             break;
-           }
-
-         shell_input_line[i++] = c;
-
-         if (c == '\n')
-           {
-             shell_input_line[--i] = '\0';
-             current_command_line_count++;
-             break;
-           }
-       }
-      shell_input_line_index = 0;
-      shell_input_line_len = i;                /* == strlen (shell_input_line) */
-
-#if defined (HISTORY)
-#if 0
-      if (interactive && shell_input_line && shell_input_line[0])
-#else
-      if (remember_on_history && shell_input_line && shell_input_line[0])
-#endif
-       {
-         char *expansions;
-
-         expansions = pre_process_line (shell_input_line, 1, 1);
-
-         free (shell_input_line);
-         shell_input_line = expansions;
-         shell_input_line_len = shell_input_line ?
-                                strlen (shell_input_line) :
-                                0;
-         if (!shell_input_line_len)
-           current_command_line_count--;
-
-         /* We have to force the xrealloc below because we don't know the
-            true allocated size of shell_input_line anymore. */
-         shell_input_line_size = shell_input_line_len;
-       }
-#endif /* HISTORY */
-
-      if (shell_input_line)
-       {
-         /* Lines that signify the end of the shell's input should not be
-            echoed. */
-         if (echo_input_at_read && (shell_input_line[0] ||
-                                    shell_input_line_terminator != EOF))
-           fprintf (stderr, "%s\n", shell_input_line);
-       }
-      else
-       {
-         shell_input_line_size = 0;
-         prompt_string_pointer = &current_prompt_string;
-         prompt_again ();
-         goto restart_read;
-       }
-
-      /* Add the newline to the end of this string, iff the string does
-        not already end in an EOF character.  */
-      if (shell_input_line_terminator != EOF)
-       {
-         if (shell_input_line_len + 3 > shell_input_line_size)
-           shell_input_line = xrealloc (shell_input_line,
-                                       1 + (shell_input_line_size += 2));
-
-         shell_input_line[shell_input_line_len] = '\n';
-         shell_input_line[shell_input_line_len + 1] = '\0';
-       }
-    }
-  
-  c = shell_input_line[shell_input_line_index];
-
-  if (c)
-    shell_input_line_index++;
-
-  if (c == '\\' && remove_quoted_newline &&
-      shell_input_line[shell_input_line_index] == '\n')
-    {
-       prompt_again ();
-       line_number++;
-       goto restart_read;
-    }
-
-#if defined (ALIAS)
-  /* If C is NULL, we have reached the end of the current input string.  If
-     pushed_string_list is non-empty, it's time to pop to the previous string
-     because we have fully consumed the result of the last alias expansion.
-     Do it transparently; just return the next character of the string popped
-     to. */
-  if (!c && (pushed_string_list != (STRING_SAVER *)NULL))
-    {
-      if (mustpop)
-        {
-          pop_string ();
-          c = shell_input_line[shell_input_line_index];
-         if (c)
-           shell_input_line_index++;
-         mustpop--;
-        }
-      else
-        {
-          mustpop++;
-          c = ' ';
-        }
-    }
-#endif /* ALIAS */
-
-  if (!c && shell_input_line_terminator == EOF)
-    return ((shell_input_line_index != 0) ? '\n' : EOF);
-
-  return ((unsigned char)c);
-}
-
-/* Put C back into the input for the shell. */
-static void
-shell_ungetc (c)
-     int c;
-{
-  if (shell_input_line && shell_input_line_index)
-    shell_input_line[--shell_input_line_index] = c;
-}
-
-static void
-shell_ungetchar ()
-{
-  if (shell_input_line && shell_input_line_index)
-    shell_input_line_index--;
-}
-
-/* Discard input until CHARACTER is seen, then push that character back
-   onto the input stream. */
-static void
-discard_until (character)
-     int character;
-{
-  int c;
-
-  while ((c = shell_getc (0)) != EOF && c != character)
-    ;
-
-  if (c != EOF)
-    shell_ungetc (c);
-}
-
-void
-execute_prompt_command (command)
-     char *command;
-{
-  Function *temp_last, *temp_this;
-  char *last_lastarg;
-  int temp_exit_value, temp_eof_encountered;
-
-  temp_last = last_shell_builtin;
-  temp_this = this_shell_builtin;
-  temp_exit_value = last_command_exit_value;
-  temp_eof_encountered = eof_encountered;
-  last_lastarg = get_string_value ("_");
-  if (last_lastarg)
-    last_lastarg = savestring (last_lastarg);
-
-  parse_and_execute (savestring (command), "PROMPT_COMMAND", 0);
-
-  last_shell_builtin = temp_last;
-  this_shell_builtin = temp_this;
-  last_command_exit_value = temp_exit_value;
-  eof_encountered = temp_eof_encountered;
-
-  bind_variable ("_", last_lastarg);
-  FREE (last_lastarg);
-
-  if (token_to_read == '\n')   /* reset_parser was called */
-    token_to_read = 0;
-}
-
-/* Place to remember the token.  We try to keep the buffer
-   at a reasonable size, but it can grow. */
-static char *token = (char *)NULL;
-
-/* Current size of the token buffer. */
-static int token_buffer_size = 0;
-
-/* Command to read_token () explaining what we want it to do. */
-#define READ 0
-#define RESET 1
-#define prompt_is_ps1 \
-      (!prompt_string_pointer || prompt_string_pointer == &ps1_prompt)
-
-/* Function for yyparse to call.  yylex keeps track of
-   the last two tokens read, and calls read_token.  */
-static int
-yylex ()
-{
-  if (interactive && (current_token == 0 || current_token == '\n'))
-    {
-      /* Before we print a prompt, we might have to check mailboxes.
-        We do this only if it is time to do so. Notice that only here
-        is the mail alarm reset; nothing takes place in check_mail ()
-        except the checking of mail.  Please don't change this. */
-      if (prompt_is_ps1 && time_to_check_mail ())
-       {
-         check_mail ();
-         reset_mail_timer ();
-       }
-
-      /* Avoid printing a prompt if we're not going to read anything, e.g.
-        after resetting the parser with read_token (RESET). */
-      if (token_to_read == 0 && interactive)
-       prompt_again ();
-    }
-
-  two_tokens_ago = token_before_that;
-  token_before_that = last_read_token;
-  last_read_token = current_token;
-  current_token = read_token (READ);
-  return (current_token);
-}
-
-/* When non-zero, we have read the required tokens
-   which allow ESAC to be the next one read. */
-static int allow_esac_as_next = 0;
-
-/* When non-zero, accept single '{' as a token itself. */
-static int allow_open_brace = 0;
-
-/* DELIMITERS is a stack of the nested delimiters that we have
-   encountered so far. */
-static char *delimiters = (char *)NULL;
-
-/* Offset into the stack of delimiters. */
-int delimiter_depth = 0;
-
-/* How many slots are allocated to DELIMITERS. */
-static int delimiter_space = 0;
-  
-void
-gather_here_documents ()
-{
-  int r = 0;
-  while (need_here_doc)
-    {
-      make_here_document (redir_stack[r++]);
-      need_here_doc--;
-    }
-}
-
-/* Macro for accessing the top delimiter on the stack.  Returns the
-   delimiter or zero if none. */
-#define current_delimiter() \
-  (delimiter_depth ? delimiters[delimiter_depth - 1] : 0)
-
-#define push_delimiter(character) \
-  do \
-    { \
-      if (delimiter_depth + 2 > delimiter_space) \
-       delimiters = xrealloc \
-         (delimiters, (delimiter_space += 10) * sizeof (char)); \
-      delimiters[delimiter_depth] = character; \
-      delimiter_depth++; \
-    } \
-  while (0)
-
-/* When non-zero, an open-brace used to create a group is awaiting a close
-   brace partner. */
-static int open_brace_awaiting_satisfaction = 0;
-
-#define command_token_position(token) \
-  (((token) == ASSIGNMENT_WORD) || \
-   ((token) != SEMI_SEMI && reserved_word_acceptable(token)))
-
-#define assignment_acceptable(token) command_token_position(token) && \
-                                       (in_case_pattern_list == 0)
-
-/* Check to see if TOKEN is a reserved word and return the token
-   value if it is. */
-#define CHECK_FOR_RESERVED_WORD(tok) \
-  do { \
-    if (!dollar_present && !quoted && \
-       reserved_word_acceptable (last_read_token)) \
-      { \
-       int i; \
-       for (i = 0; word_token_alist[i].word != (char *)NULL; i++) \
-         if (STREQ (tok, word_token_alist[i].word)) \
-           { \
-             if (in_case_pattern_list && (word_token_alist[i].token != ESAC)) \
-               break; \
-             if (word_token_alist[i].token == ESAC) \
-               in_case_pattern_list = 0; \
-             if (word_token_alist[i].token == '{') \
-               open_brace_awaiting_satisfaction++; \
-             return (word_token_alist[i].token); \
-           } \
-      } \
-  } while (0)
-
-#if defined (ALIAS)
-
-    /* OK, we have a token.  Let's try to alias expand it, if (and only if)
-       it's eligible.
-
-       It is eligible for expansion if the shell is in interactive mode, and
-       the token is unquoted and the last token read was a command
-       separator (or expand_next_token is set), and we are currently
-       processing an alias (pushed_string_list is non-empty) and this
-       token is not the same as the current or any previously
-       processed alias.
-
-       Special cases that disqualify:
-        In a pattern list in a case statement (in_case_pattern_list). */
-static int
-alias_expand_token (token)
-     char *token;
-{
-  char *expanded;
-  int c, expand_next;
-  alias_t *ap;
-
-  if (expand_next_token || command_token_position (last_read_token) && !in_case_pattern_list)
-    {
-      ap = find_alias (token);
-
-#if 0
-      /* Currently expanding this token. */
-      if ((expanded_token_stack && token_has_been_expanded (token)))
-       return (NO_EXPANSION);
-#else
-      if (ap && (ap->flags & AL_BEINGEXPANDED))
-       return (NO_EXPANSION);
-#endif
-
-      expanded = ap ? savestring (ap->value) : (char *)NULL;
-      if (expanded)
-       {
-         push_string (expanded, ap->flags & AL_EXPANDNEXT, ap);
-         return (RE_READ_TOKEN);
-       }
-      else
-       /* This is an eligible token that does not have an expansion. */
-       return (NO_EXPANSION);
-    }
-  return (NO_EXPANSION);
-}
-#endif /* ALIAS */
-
-/* Handle special cases of token recognition:
-       IN is recognized if the last token was WORD and the token
-       before that was FOR or CASE or SELECT.
-
-       DO is recognized if the last token was WORD and the token
-       before that was FOR or SELECT.
-
-       ESAC is recognized if the last token caused `allow_esac_as_next'
-       to be set
-
-       `{' is recognized if the last token as WORD and the token
-       before that was FUNCTION.
-
-       `}' is recognized if there is an unclosed `{' prsent.
-*/
-
-static int
-special_case_tokens (token)
-     char *token;
-{
-  if ((last_read_token == WORD) &&
-#if defined (SELECT_COMMAND)
-      ((token_before_that == FOR) || (token_before_that == CASE) || (token_before_that == SELECT)) &&
-#else
-      ((token_before_that == FOR) || (token_before_that == CASE)) &&
-#endif
-      (token[0] == 'i' && token[1] == 'n' && !token[2]))
-    {
-      if (token_before_that == CASE)
-       {
-         in_case_pattern_list = 1;
-         allow_esac_as_next++;
-       }
-      return (IN);
-    }
-
-  if (last_read_token == WORD &&
-#if defined (SELECT_COMMAND)
-      (token_before_that == FOR || token_before_that == SELECT) &&
-#else
-      (token_before_that == FOR) &&
-#endif
-      (token[0] == 'd' && token[1] == 'o' && !token[2]))
-    return (DO);
-
-  /* Ditto for ESAC in the CASE case. 
-     Specifically, this handles "case word in esac", which is a legal
-     construct, certainly because someone will pass an empty arg to the
-     case construct, and we don't want it to barf.  Of course, we should
-     insist that the case construct has at least one pattern in it, but
-     the designers disagree. */
-  if (allow_esac_as_next)
-    {
-      allow_esac_as_next--;
-      if (STREQ (token, "esac"))
-       {
-         in_case_pattern_list = 0;
-         return (ESAC);
-       }
-    }
-
-  if (allow_open_brace)
-    {
-      allow_open_brace = 0;
-      if (token[0] == '{' && !token[1])
-       {
-         open_brace_awaiting_satisfaction++;
-         return ('{');
-       }
-    }
-
-  if (open_brace_awaiting_satisfaction && token[0] == '}' && !token[1])
-    {
-      open_brace_awaiting_satisfaction--;
-      return ('}');
-    }
-
-  return (-1);
-}
-
-/* Called from shell.c when Control-C is typed at top level.  Or
-   by the error rule at top level. */
-void
-reset_parser ()
-{
-  delimiter_depth = 0; /* No delimiters found so far. */
-  open_brace_awaiting_satisfaction = 0;
-  in_case_pattern_list = 0;
-
-#if defined (ALIAS)
-  if (pushed_string_list)
-    {
-      free_string_list ();
-      pushed_string_list = (STRING_SAVER *)NULL;
-    }
-
-#if 0
-  if (expanded_token_stack)
-    {
-      free_expansion_stack ();
-      expanded_token_stack = (EXPANSION_SAVER *)NULL;
-    }
-#endif
-
-  expand_next_token = 0;
-#endif /* ALIAS */
-
-  if (shell_input_line)
-    {
-      free (shell_input_line);
-      shell_input_line = (char *)NULL;
-      shell_input_line_size = shell_input_line_index = 0;
-    }
-
-  last_read_token = '\n';
-  token_to_read = '\n';
-}
-
-/* Read the next token.  Command can be READ (normal operation) or 
-   RESET (to normalize state). */
-static int
-read_token (command)
-     int command;
-{
-  int character;               /* Current character. */
-  int peek_char;               /* Temporary look-ahead character. */
-  int result;                  /* The thing to return. */
-
-  if (command == RESET)
-    {
-      reset_parser ();
-      return ('\n');
-    }
-
-  if (token_to_read)
-    {
-      result = token_to_read;
-      if (token_to_read == WORD || token_to_read == ASSIGNMENT_WORD)
-       yylval.word = word_desc_to_read;
-      token_to_read = 0;
-      return (result);
-    }
-
-#if defined (ALIAS)
-  /* If we hit read_token () and there are no saved strings on the
-     pushed_string_list, then we are no longer currently expanding a
-     token.  This can't be done in pop_stream, because pop_stream
-     may pop the stream before the current token has finished being
-     completely expanded (consider what happens when we alias foo to foo,
-     and then try to expand it). */
-#if 0
-  if (!pushed_string_list && expanded_token_stack)
-    {
-      free_expansion_stack ();
-      expanded_token_stack = (EXPANSION_SAVER *)NULL;
-    }
-#endif
-
-  /* This is a place to jump back to once we have successfully expanded a
-     token with an alias and pushed the string with push_string () */
- re_read_token:
-#endif /* ALIAS */
-
-  /* Read a single word from input.  Start by skipping blanks. */
-  while ((character = shell_getc (1)) != EOF && whitespace (character))
-    ;
-
-  if (character == EOF)
-    {
-      EOF_Reached = 1;
-      return (yacc_EOF);
-    }
-
-  if (character == '#' && (!interactive || interactive_comments))
-    {
-      /* A comment.  Discard until EOL or EOF, and then return a newline. */
-      discard_until ('\n');
-      shell_getc (0);
-      character = '\n';        /* this will take the next if statement and return. */
-    }
-
-  if (character == '\n')
-    {
-      /* If we're about to return an unquoted newline, we can go and collect
-        the text of any pending here document. */
-      if (need_here_doc)
-       gather_here_documents ();
-
-#if defined (ALIAS)
-      expand_next_token = 0;
-#endif /* ALIAS */
-
-      return (character);
-    }
-
-  /* Shell meta-characters. */
-  if (shellmeta (character))
-    {
-#if defined (ALIAS)
-      /* Turn off alias tokenization iff this character sequence would
-        not leave us ready to read a command. */
-      if (character == '<' || character == '>')
-       expand_next_token = 0;
-#endif /* ALIAS */
-
-      peek_char = shell_getc (1);
-      if (character == peek_char)
-       {
-         switch (character)
-           {
-           case '<':
-             /* If '<' then we could be at "<<" or at "<<-".  We have to
-                look ahead one more character. */
-             peek_char = shell_getc (1);
-             if (peek_char == '-')
-               return (LESS_LESS_MINUS);
-             else
-               {
-                 shell_ungetc (peek_char);
-                 return (LESS_LESS);
-               }
-
-           case '>':
-             return (GREATER_GREATER);
-
-           case ';':
-             in_case_pattern_list = 1;
-#if defined (ALIAS)
-             expand_next_token = 0;
-#endif /* ALIAS */
-             return (SEMI_SEMI);
-
-           case '&':
-             return (AND_AND);
-
-           case '|':
-             return (OR_OR);
-           }
-       }
-      else if (character == '<' && peek_char == '&')
-       return (LESS_AND);
-      else if (character == '>' && peek_char == '&')
-       return (GREATER_AND);
-      else if (character == '<' && peek_char == '>')
-       return (LESS_GREATER);
-      else if (character == '>' && peek_char == '|')
-       return (GREATER_BAR);
-      else if (peek_char == '>' && character == '&')
-       return (AND_GREATER);
-
-      shell_ungetc (peek_char);
-
-      /* If we look like we are reading the start of a function
-        definition, then let the reader know about it so that
-        we will do the right thing with `{'. */
-      if (character == ')' && last_read_token == '(' && token_before_that == WORD)
-       {
-         allow_open_brace = 1;
-#if defined (ALIAS)
-         expand_next_token = 0;
-#endif /* ALIAS */
-       }
-
-      if (in_case_pattern_list && character == ')')
-       in_case_pattern_list = 0;
-
-#if defined (PROCESS_SUBSTITUTION)
-      /* Check for the constructs which introduce process substitution.
-        Shells running in `posix mode' don't do process substitution. */
-      if (posixly_correct ||
-         ((character != '>' && character != '<') || peek_char != '('))
-#endif /* PROCESS_SUBSTITUTION */
-       return (character);
-    }
-
-  /* Hack <&- (close stdin) case. */
-  if (character == '-' && (last_read_token == LESS_AND || last_read_token == GREATER_AND))
-    return (character);
-     
-  /* Okay, if we got this far, we have to read a word.  Read one,
-     and then check it against the known ones. */
-  result = read_token_word (character);
-#if defined (ALIAS)
-  if (result == RE_READ_TOKEN)
-    goto re_read_token;
-#endif
-  return result;
-}
-
-static int
-read_token_word (character)
-     int character;
-{
-  /* The value for YYLVAL when a WORD is read. */
-  WORD_DESC *the_word;
-
-  /* Index into the token that we are building. */
-  int token_index;
-
-  /* ALL_DIGITS becomes zero when we see a non-digit. */
-  int all_digits;
-
-  /* DOLLAR_PRESENT becomes non-zero if we see a `$'. */
-  int dollar_present;
-
-  /* QUOTED becomes non-zero if we see one of ("), ('), (`), or (\). */
-  int quoted;
-
-  /* Non-zero means to ignore the value of the next character, and just
-     to add it no matter what. */
- int pass_next_character;
-
-  /* Non-zero means parsing a dollar-paren construct.  It is the count of
-     un-quoted close parens we need to see. */
-  int dollar_paren_level;
-
-  /* Another level variable.  This one is for dollar_parens inside of
-     double-quotes. */
-  int delimited_paren_level;
-
-  /* Non-zero means parsing a dollar-bracket construct ($[...]).  It is
-     the count of un-quoted `]' characters we need to see. */
-  int dollar_bracket_level;
-
-  /* Non-zero means parsing a `${' construct.  It is the count of
-     un-quoted `}' we need to see. */
-  int dollar_brace_level;
-
-  /* A level variable for parsing '${ ... }' constructs inside of double
-     quotes. */
-  int delimited_brace_level;
-
-  /* A boolean variable denoting whether or not we are currently parsing
-     a double-quoted string embedded in a $( ) or ${ } construct. */
-  int embedded_quoted_string;
-
-  /* The current delimiting character. */
-  int cd;
-  int result, peek_char;
-
-  if (token_buffer_size < TOKEN_DEFAULT_GROW_SIZE)
-    {
-      FREE (token);
-      token = xmalloc (token_buffer_size = TOKEN_DEFAULT_GROW_SIZE);
-    }
-
-  token_index = 0;
-  all_digits = digit (character);
-  dollar_present = quoted = 0;
-  embedded_quoted_string = pass_next_character = 0;
-  dollar_paren_level = delimited_paren_level = 0;
-  dollar_brace_level = delimited_brace_level = dollar_bracket_level = 0;
-
-  for (;;)
-    {
-      if (character == EOF)
-       goto got_token;
-
-      if (pass_next_character)
-       {
-         pass_next_character = 0;
-         goto got_character;
-       }
-
-      cd = current_delimiter ();
-
-      if (cd && character == '\\' && cd != '\'')
-       {
-         peek_char = shell_getc (0);
-         if (peek_char != '\\')
-           shell_ungetc (peek_char);
-         else
-           {
-             token[token_index++] = character;
-             goto got_character;
-           }
-       }
-
-      /* Handle backslashes.  Quote lots of things when not inside of
-        double-quotes, quote some things inside of double-quotes. */
-          
-      if (character == '\\' && (delimiter_depth == 0 || cd != '\''))
-       {
-         peek_char = shell_getc (0);
-
-         /* Backslash-newline is ignored in all cases excepting
-            when quoted with single quotes. */
-         if (peek_char == '\n')
-           {
-             character = '\n';
-             goto next_character;
-           }
-         else
-           {
-             shell_ungetc (peek_char);
-
-             /* If the next character is to be quoted, do it now. */
-             if (cd == 0 || cd == '`' ||
-                 (cd == '"' && member (peek_char, slashify_in_quotes)))
-               {
-                 pass_next_character++;
-                 quoted = 1;
-                 goto got_character;
-               }
-           }
-       }
-
-      /* This is a hack, in its present form.  If a backquote substitution
-        appears within double quotes, everything within the backquotes
-        should be read as part of a single word.  Jesus.  Now I see why
-        Korn introduced the $() form. */
-      if (delimiter_depth && (cd == '"') && (character == '`'))
-       {
-         push_delimiter (character);
-         goto got_character;
-       }
-
-      /* cd = current_delimiter (); */         /* XXX - may not need */
-      if (delimiter_depth)
-       {
-         if (character == cd)
-           {
-             /* If we see a double quote while parsing a double-quoted
-                $( ) or ${ }, and we have not seen ) or }, respectively,
-                 note that we are in the middle of reading an embedded
-                 quoted string. */
-             if ((delimited_paren_level || delimited_brace_level) &&
-                 (character == '"'))
-               {
-                 embedded_quoted_string = 1 - embedded_quoted_string;
-                 goto got_character;
-               }
-               
-             delimiter_depth--;
-             goto got_character;
-           }
-       }
-
-      /* If the delimiter character is not single quote, parse some of
-        the shell expansions that must be read as a single word. */
-      if (cd != '\'')
-       {
-#if defined (PROCESS_SUBSTITUTION)
-         if (character == '$' || character == '<' || character == '>')
-#else
-         if (character == '$')
-#endif /* !PROCESS_SUBSTITUTION */
-           {
-             /* If we're in the middle of parsing a $( ) or ${ }
-                construct with an embedded quoted string, don't
-                bother looking at this character any further. */
-             if (embedded_quoted_string)
-               goto got_character;
-
-             peek_char = shell_getc (1);
-             shell_ungetc (peek_char);
-             if (peek_char == '(')
-               {
-                 if (!delimiter_depth)
-                   dollar_paren_level++;
-                 else
-                   delimited_paren_level++;
-
-                 pass_next_character++;
-                 goto got_character;
-               }
-             else if (peek_char == '[' && character == '$')
-               {
-                 if (!delimiter_depth)
-                   dollar_bracket_level++;
-
-                 pass_next_character++;
-                 goto got_character;
-               }
-             /* This handles ${...} constructs. */
-             else if (peek_char == '{' && character == '$')
-               {
-                 if (!delimiter_depth)
-                   dollar_brace_level++;
-                 else
-                   delimited_brace_level++;
-
-                 pass_next_character++;
-                 goto got_character;
-               }
-           }
-
-#if defined (ARRAY_VARS)
-         if (character == '=')
-           {
-             if (embedded_quoted_string)
-               goto got_character;
-
-             peek_char = shell_getc (1);
-             shell_ungetc (peek_char);
-             if (peek_char == '(')
-               {
-                 if (!delimiter_depth)
-                   dollar_paren_level++;
-                 else
-                   delimited_paren_level++;
-
-                 pass_next_character++;
-                 goto got_character;
-               }
-           }
-#endif
-
-/* Generally, delim_xxx counts occurrences of xxx inside double quotes, while
-   dollar_xxx counts unquoted occurrences.  These macros take care of
-   incrementing and decrementing both appropriately. */
-#define INC_DELIM(delim, dol) \
-  do \
-    { \
-      if (delimiter_depth && delim) \
-       delim++; \
-      if (!delimiter_depth && dol) \
-       dol++; \
-    } \
-  while (0)
-
-#define DEC_DELIM(delim, dol) \
-  do \
-    { \
-      if (delimiter_depth && delim) \
-       delim--; \
-      if (!delimiter_depth && dol) \
-       { \
-         dol--; \
-         goto got_character; \
-       } \
-    } \
-  while (0)
-
-         /* If we are parsing a $() or $[] construct, we need to balance
-            parens and brackets inside the construct.  This whole function
-            could use a rewrite. */
-         if (character == '(' && !embedded_quoted_string)
-           INC_DELIM (delimited_paren_level, dollar_paren_level);
-
-         /* This code needs to take into account whether we are inside a
-            case statement pattern list, and whether this paren is supposed
-            to terminate it (hey, it could happen).  It's not as simple
-            as just using in_case_pattern_list, because we're not parsing
-            anything while we're reading a $( ) construct. */
-         else if (character == ')' && !embedded_quoted_string)
-           DEC_DELIM (delimited_paren_level, dollar_paren_level);
-
-         else if (character == '[' && !delimiter_depth && dollar_bracket_level)
-           dollar_bracket_level++;
-
-         else if (character == ']' && !delimiter_depth && dollar_bracket_level)
-           {
-             dollar_bracket_level--;
-             goto got_character;
-           }
-
-         else if (character == '{' && embedded_quoted_string == 0)
-           INC_DELIM (delimited_brace_level, dollar_brace_level);
-
-         else if (character == '}' && embedded_quoted_string == 0)
-           DEC_DELIM (delimited_brace_level, dollar_brace_level);
-       }
-
-      /* When not parsing a multi-character word construct, shell meta-
-        characters break words. */
-      if (!dollar_paren_level && !dollar_bracket_level &&
-         !dollar_brace_level && !delimiter_depth &&
-         shellbreak (character))
-       {
-         shell_ungetc (character);
-         goto got_token;
-       }
-
-      /* If we see a delimiter, remember it. */
-      if (!delimiter_depth && shellquote (character))
-       {
-         push_delimiter (character);
-         quoted = 1;
-         goto got_character;
-       }
-
-#if 0
-      all_digits = all_digits ? digit (character) : 0;
-#else
-      all_digits &= digit (character);
-#endif
-      dollar_present |= character == '$';
-
-    got_character:
-
-      if (character == CTLESC /* || character == CTLNUL */)
-       token[token_index++] = CTLESC;
-
-      token[token_index++] = character;
-
-      if (token_index == (token_buffer_size - 1))
-       {
-         token_buffer_size += TOKEN_DEFAULT_GROW_SIZE;
-         token = xrealloc (token, token_buffer_size);
-       }
-    next_character:
-      if (character == '\n' && interactive && bash_input.type == st_stream)
-       prompt_again ();
-
-      /* We want to remove quoted newlines (that is, a \<newline> pair)
-        unless we are within single quotes or pass_next_character is
-        set (the shell equivalent of literal-next). */
-      cd = current_delimiter ();
-      character = shell_getc (cd != '\'' && !pass_next_character);
-    }  /* end for (;;) */
-
-got_token:
-
-  token[token_index] = '\0';
-
-  /* EOF while reading a multi-char word construct generates an error. */      
-  if ((delimiter_depth || dollar_paren_level || dollar_bracket_level) &&
-      character == EOF)
-    {
-      char reporter = '\0';
-
-      if (delimiter_depth == 0)
-       {
-         if (dollar_paren_level)
-           reporter = ')';
-         else if (dollar_bracket_level)
-           reporter = ']';
-       }
-
-      if (reporter == 0)
-       reporter = current_delimiter ();
-
-      report_error ("unexpected EOF while looking for `%c'", reporter);
-      return (-1);
-    }
-
-  /* Check to see what thing we should return.  If the last_read_token
-     is a `<', or a `&', or the character which ended this token is
-     a '>' or '<', then, and ONLY then, is this input token a NUMBER.
-     Otherwise, it is just a word, and should be returned as such. */
-  if (all_digits && (character == '<' || character == '>' ||
-                   last_read_token == LESS_AND ||
-                   last_read_token == GREATER_AND))
-      {
-       yylval.number = atoi (token);
-       return (NUMBER);
-      }
-
-  /* Check for special case tokens. */
-  result = special_case_tokens (token);
-  if (result >= 0)
-    return result;
-
-#if defined (ALIAS)
-  /* Posix.2 does not allow reserved words to be aliased, so check for all
-     of them, including special cases, before expanding the current token
-     as an alias. */
-  if (posixly_correct)
-    CHECK_FOR_RESERVED_WORD (token);
-
-  /* Aliases are expanded in interactive shells only, and quoting inhibits
-     alias expansion. */
-  if (interactive_shell && quoted == 0)
-    {
-      result = alias_expand_token (token);
-      if (result == RE_READ_TOKEN)
-       return (RE_READ_TOKEN);
-      else if (result == NO_EXPANSION)
-       expand_next_token = 0;
-    }
-
-  /* If not in Posix.2 mode, check for reserved words after alias
-     expansion. */
-  if (!posixly_correct)
-#endif
-    CHECK_FOR_RESERVED_WORD (token);
-
-  the_word = (WORD_DESC *)xmalloc (sizeof (WORD_DESC));
-  the_word->word = xmalloc (1 + token_index);
-  the_word->flags = 0;
-  strcpy (the_word->word, token);
-  if (dollar_present)
-    the_word->flags |= W_HASDOLLAR;
-  if (quoted)
-    the_word->flags |= W_QUOTED;
-  if (assignment (token))
-    the_word->flags |= W_ASSIGNMENT;
-
-  yylval.word = the_word;
-
-  /* A word is an assignment if it appears at the beginning of a
-     simple command, or after another assignment word.  This is
-     context-dependent, so it cannot be handled in the grammar. */
-  result = (assignment_acceptable (last_read_token) &&
-           (the_word->flags & W_ASSIGNMENT)) ? ASSIGNMENT_WORD : WORD;
-
-  if (last_read_token == FUNCTION)
-    allow_open_brace = 1;
-
-  return (result);
-}
-
-/* Return 1 if TOKEN is a token that after being read would allow
-   a reserved word to be seen, else 0. */
-static int
-reserved_word_acceptable (token)
-     int token;
-{
-  if (token == '\n' || token == ';' || token == '(' || token == ')' ||
-      token == '|' || token == '&' || token == '{' ||
-      token == '}' ||                  /* XXX */
-      token == AND_AND ||
-      token == BANG ||
-      token == TIME ||
-      token == DO ||
-      token == ELIF ||
-      token == ELSE ||
-      token == FI ||
-      token == IF ||
-      token == OR_OR ||
-      token == SEMI_SEMI ||
-      token == THEN ||
-      token == UNTIL ||
-      token == WHILE ||
-      token == DONE ||         /* XXX these two are experimental */
-      token == ESAC ||
-      token == 0)
-    return (1);
-  else
-    return (0);
-}
-
-/* Return the index of TOKEN in the alist of reserved words, or -1 if
-   TOKEN is not a shell reserved word. */
-int
-find_reserved_word (token)
-     char *token;
-{
-  int i;
-  for (i = 0; word_token_alist[i].word; i++)
-    if (STREQ (token, word_token_alist[i].word))
-      return i;
-  return -1;
-}
-
-#if defined (READLINE)
-/* Called after each time readline is called.  This insures that whatever
-   the new prompt string is gets propagated to readline's local prompt
-   variable. */
-static void
-reset_readline_prompt ()
-{
-  char *temp_prompt;
-
-  if (prompt_string_pointer)
-    {
-      temp_prompt = (*prompt_string_pointer)
-                       ? decode_prompt_string (*prompt_string_pointer)
-                       : (char *)NULL;
-
-      if (temp_prompt == 0)
-        {
-          temp_prompt = xmalloc (1);
-          temp_prompt[0] = '\0';
-        }
-
-      FREE (current_readline_prompt);
-      current_readline_prompt = temp_prompt;
-    }
-}
-#endif /* READLINE */
-
-#if defined (HISTORY)
-/* A list of tokens which can be followed by newlines, but not by
-   semi-colons.  When concatenating multiple lines of history, the
-   newline separator for such tokens is replaced with a space. */
-static int no_semi_successors[] = {
-  '\n', '{', '(', ')', ';', '&', '|',
-  CASE, DO, ELSE, IF, SEMI_SEMI, THEN, UNTIL, WHILE, AND_AND, OR_OR,
-  0
-};
-
-/* If we are not within a delimited expression, try to be smart
-   about which separators can be semi-colons and which must be
-   newlines.  Returns the string that should be added into the
-   history entry. */
-char *
-history_delimiting_chars ()
-{
-  if (delimiter_depth == 0)
-    {
-      register int i;
-
-      /* First, handle some special cases. */
-      /*(*/
-      /* If we just read `()', assume it's a function definition, and don't
-        add a semicolon.  If the token before the `)' was not `(', assume
-        it's a parenthesized command and add the semicolon. */
-      /*)(*/
-      if (token_before_that == ')')
-       return ((two_tokens_ago == '(') ? " " : "; "); /*)*/
-
-      for (i = 0; no_semi_successors[i]; i++)
-       {
-         if (token_before_that == no_semi_successors[i])
-           return (" ");
-       }
-      return ("; ");
-    }
-  else
-    return ("\n");
-}
-#endif /* HISTORY */
-
-/* Issue a prompt, or prepare to issue a prompt when the next character
-   is read. */
-static void
-prompt_again ()
-{
-  char *temp_prompt;
-
-  if (!interactive)    /* XXX */
-    return;
-
-  ps1_prompt = get_string_value ("PS1");
-  ps2_prompt = get_string_value ("PS2");
-
-  if (!prompt_string_pointer)
-    prompt_string_pointer = &ps1_prompt;
-
-  temp_prompt = *prompt_string_pointer
-                       ? decode_prompt_string (*prompt_string_pointer)
-                       : (char *)NULL;
-
-  if (temp_prompt == 0)
-    {
-      temp_prompt = xmalloc (1);
-      temp_prompt[0] = '\0';
-    }
-
-  current_prompt_string = *prompt_string_pointer;
-  prompt_string_pointer = &ps2_prompt;
-
-#if defined (READLINE)
-  if (!no_line_editing)
-    {
-      FREE (current_readline_prompt);
-      current_readline_prompt = temp_prompt;
-    }
-  else
-#endif /* READLINE */
-    {
-      FREE (current_decoded_prompt);
-      current_decoded_prompt = temp_prompt;
-    }
-}
-
-static void
-print_prompt ()
-{
-  fprintf (stderr, "%s", current_decoded_prompt);
-  fflush (stderr);
-}
-
-/* Return a string which will be printed as a prompt.  The string
-   may contain special characters which are decoded as follows:
-   
-       \a      bell (ascii 07)
-       \e      escape (ascii 033)
-       \d      the date in Day Mon Date format
-       \h      the hostname
-       \H      the hostname up to the first `.'
-       \n      CRLF
-       \s      the name of the shell
-       \t      the time in 24-hour hh:mm:ss format
-       \T      the time in 12-hour hh:mm:ss format
-       \@      the time in 12-hour am/pm format
-       \w      the current working directory
-       \W      the last element of $PWD
-       \u      your username
-       \#      the command number of this command
-       \!      the history number of this command
-       \$      a $ or a # if you are root
-       \nnn    character code nnn in octal
-       \\      a backslash
-       \[      begin a sequence of non-printing chars
-       \]      end a sequence of non-printing chars
-*/
-#define PROMPT_GROWTH 50
-char *
-decode_prompt_string (string)
-     char *string;
-{
-  WORD_LIST *list;
-  char *result, *t;
-#if defined (PROMPT_STRING_DECODE)
-  int result_size, result_index;
-  int c, n;
-  char *temp, octal_string[4];
-  time_t the_time;
-
-  result = xmalloc (result_size = PROMPT_GROWTH);
-  result[result_index = 0] = 0;
-  temp = (char *)NULL;
-
-  while (c = *string++)
-    {
-      if (posixly_correct && c == '!')
-       {
-         if (*string == '!')
-           {
-             temp = savestring ("!");
-             goto add_string;
-           }
-         else
-           {
-#if !defined (HISTORY)
-               temp = savestring ("1");
-#else /* HISTORY */
-               temp = itos (history_number ());
-#endif /* HISTORY */
-               string--;       /* add_string increments string again. */
-               goto add_string;
-           }
-       } 
-      if (c == '\\')
-       {
-         c = *string;
-
-         switch (c)
-           {
-           case '0':
-           case '1':
-           case '2':
-           case '3':
-           case '4':
-           case '5':
-           case '6':
-           case '7':
-             strncpy (octal_string, string, 3);
-             octal_string[3] = '\0';
-
-             n = read_octal (octal_string);
-             temp = xmalloc (3);
-
-             if (n == CTLESC || n == CTLNUL)
-               {
-                 string += 3;
-                 temp[0] = CTLESC;
-                 temp[1] = n;
-                 temp[2] = '\0';
-               }
-             else if (n == -1)
-               {
-                 temp[0] = '\\';
-                 temp[1] = '\0';
-               }
-             else
-               {
-                 string += 3;
-                 temp[0] = n;
-                 temp[1] = '\0';
-               }
-
-             c = 0;
-             goto add_string;
-         
-           case 't':
-           case 'd':
-           case 'T':
-           case '@':
-             /* Make the current time/date into a string. */
-             the_time = time (0);
-             temp = ctime (&the_time);
-
-             temp = (c != 'd') ? savestring (temp + 11) : savestring (temp);
-             temp[(c != 'd') ? 8 : 10] = '\0';
-
-             /* quick and dirty conversion to 12-hour time */
-             if (c == 'T' || c == '@')
-               {
-                 if (c == '@')
-                   {
-                     temp[5] = 'a';    /* am/pm format */
-                     temp[6] = 'm';
-                     temp[7] = '\0';
-                   }
-                 c = temp[2];
-                 temp[2] = '\0';
-                 n = atoi (temp);
-                 temp[2] = c;
-                 n -= 12;
-                 if (n > 0)
-                   {
-                     temp[0] = (n / 10) + '0';
-                     temp[1] = (n % 10) + '0';
-                     if (temp[5] == 'a') temp[5] = 'p';
-                   }
-               }
-             goto add_string;
-
-           case 'n':
-             temp = xmalloc (3);
-             temp[0] = no_line_editing ? '\n' : '\r';
-             temp[1] = no_line_editing ? '\0' : '\n';
-             temp[2] = '\0';
-             goto add_string;
-
-           case 's':
-             temp = base_pathname (shell_name);
-             temp = savestring (temp);
-             goto add_string;
-       
-           case 'w':
-           case 'W':
-             {
-               /* Use the value of PWD because it is much more efficient. */
-               char t_string[MAXPATHLEN];
-
-               temp = get_string_value ("PWD");
-
-               if (temp == 0)
-                 getwd (t_string);
-               else
-                 strcpy (t_string, temp);
-
-               if (c == 'W')
-                 {
-                   t = strrchr (t_string, '/');
-                   if (t && t != t_string)
-                     strcpy (t_string, t + 1);
-                   temp = savestring (t_string);
-                 }
-               else
-                 temp = savestring (polite_directory_format (t_string));
-               goto add_string;
-             }
-      
-           case 'u':
-             temp = savestring (current_user.user_name);
-             goto add_string;
-
-           case 'h':
-           case 'H':
-             temp = savestring (current_host_name);
-             if (c == 'H' && (t = (char *)strchr (temp, '.')))
-               *t = '\0';
-             goto add_string;
-
-           case '#':
-             temp = itos (current_command_number);
-             goto add_string;
-
-           case '!':
-#if !defined (HISTORY)
-             temp = savestring ("1");
-#else /* HISTORY */
-             temp = itos (history_number ());
-#endif /* HISTORY */
-             goto add_string;
-
-           case '$':
-             temp = xmalloc (2);
-             temp[0] = current_user.euid == 0 ? '#' : '$';
-             temp[1] = '\0';
-             goto add_string;
-
-#if defined (READLINE)
-           case '[':
-           case ']':
-             temp = xmalloc (3);
-             temp[0] = '\001';
-             temp[1] = (c == '[') ? RL_PROMPT_START_IGNORE : RL_PROMPT_END_IGNORE;
-             temp[2] = '\0';
-             goto add_string;
-#endif /* READLINE */
-
-           case '\\':
-             temp = xmalloc (2);
-             temp[0] = c;
-             temp[1] = '\0';
-             goto add_string;
-
-           case 'a':
-           case 'e':
-             temp = xmalloc (2);
-             temp[0] = (c == 'a') ? '\07' : '\033';
-             temp[1] = '\0';
-             goto add_string;
-
-           default:
-             temp = xmalloc (3);
-             temp[0] = '\\';
-             temp[1] = c;
-             temp[2] = '\0';
-
-           add_string:
-             if (c)
-               string++;
-             result =
-               sub_append_string (temp, result, &result_index, &result_size);
-             temp = (char *)NULL; /* Freed in sub_append_string (). */
-             result[result_index] = '\0';
-             break;
-           }
-       }
-      else
-       {
-         if (result_index > result_size - 3)
-           {
-             while (result_index > result_size - 3)
-               result_size += PROMPT_GROWTH;
-             result = xrealloc (result, result_size);
-           }
-
-         result[result_index++] = c;
-         result[result_index] = '\0';
-       }
-    }
-#else /* !PROMPT_STRING_DECODE */
-  result = savestring (string);
-#endif /* !PROMPT_STRING_DECODE */
-
-  /* Perform variable and parameter expansion and command substitution on
-     the prompt string. */
-  if (promptvars)
-    {
-      list = expand_string_unsplit (result, Q_DOUBLE_QUOTES);
-      free (result);
-      result = string_list (list);
-      dispose_words (list);
-    }
-  else
-    {
-      t = dequote_string (result);
-      free (result);
-      result = t;
-    }
-
-  return (result);
-}
-
-/* Report a syntax error, and restart the parser.  Call here for fatal
-   errors. */
-int
-yyerror ()
-{
-  report_syntax_error ((char *)NULL);
-  reset_parser ();
-  return (0);
-}
-
-/* Report a syntax error with line numbers, etc.
-   Call here for recoverable errors.  If you have a message to print,
-   then place it in MESSAGE, otherwise pass NULL and this will figure
-   out an appropriate message for you. */
-static void
-report_syntax_error (message)
-     char *message;
-{
-  char *name, *msg, *t;
-  int token_end, i;
-
-  if (message)
-    {
-      if (!interactive)
-       {
-         name = bash_input.name ? bash_input.name : "stdin";
-         report_error ("%s: line %d: `%s'", name, line_number, message);
-       }
-      else
-       {
-         if (EOF_Reached)
-           EOF_Reached = 0;
-         report_error ("%s", message);
-       }
-
-      last_command_exit_value = EX_USAGE;
-      return;
-    }
-
-  if (shell_input_line && *shell_input_line)
-    {
-      t = shell_input_line;
-      i = shell_input_line_index;
-      token_end = 0;
-
-      if (i && t[i] == '\0')
-       i--;
-
-      while (i && (whitespace (t[i]) || t[i] == '\n'))
-       i--;
-
-      if (i)
-       token_end = i + 1;
-
-      while (i && (member (t[i], " \n\t;|&") == 0))
-       i--;
-
-      while (i != token_end && (whitespace (t[i]) || t[i] == '\n'))
-       i++;
-
-      if (token_end)
-       {
-         msg = xmalloc (1 + (token_end - i));
-         strncpy (msg, t + i, token_end - i);
-         msg[token_end - i] = '\0';
-
-         report_error ("syntax error near unexpected token `%s'", msg);
-         free (msg);
-       }
-      else if ((i == 0) && (token_end == 0))   /* a 1-character token */
-       {
-         report_error ("syntax error near unexpected token `%c'", t[i]);
-       }
-
-      if (!interactive)
-       {
-         msg = savestring (shell_input_line);
-         token_end = strlen (msg);
-         name = bash_input.name ? bash_input.name : "stdin";
-
-         while (token_end && msg[token_end - 1] == '\n')
-           msg[--token_end] = '\0';
-
-         report_error ("%s: line %d: `%s'", name, line_number, msg);
-         free (msg);
-       }
-    }
-  else
-    {
-      msg = EOF_Reached ? "syntax error: unexpected end of file" : "syntax error";
-      if (!interactive)
-        {
-         name = bash_input.name ? bash_input.name : "stdin";
-         report_error ("%s: line %d: %s", name, line_number, msg);
-        }
-      else
-       {
-         /* This file uses EOF_Reached only for error reporting
-            when the shell is interactive.  Other mechanisms are 
-            used to decide whether or not to exit. */
-         EOF_Reached = 0;
-         report_error (msg);
-       }
-    }
-  last_command_exit_value = EX_USAGE;
-}
-
-/* ??? Needed function. ??? We have to be able to discard the constructs
-   created during parsing.  In the case of error, we want to return
-   allocated objects to the memory pool.  In the case of no error, we want
-   to throw away the information about where the allocated objects live.
-   (dispose_command () will actually free the command. */
-static void
-discard_parser_constructs (error_p)
-     int error_p;
-{
-}
-   
-/* Do that silly `type "bye" to exit' stuff.  You know, "ignoreeof". */
-
-/* A flag denoting whether or not ignoreeof is set. */
-int ignoreeof = 0;
-
-/* The number of times that we have encountered an EOF character without
-   another character intervening.  When this gets above the limit, the
-   shell terminates. */
-int eof_encountered = 0;
-
-/* The limit for eof_encountered. */
-int eof_encountered_limit = 10;
-
-/* If we have EOF as the only input unit, this user wants to leave
-   the shell.  If the shell is not interactive, then just leave.
-   Otherwise, if ignoreeof is set, and we haven't done this the
-   required number of times in a row, print a message. */
-static void
-handle_eof_input_unit ()
-{
-  if (interactive)
-    {
-      /* shell.c may use this to decide whether or not to write out the
-        history, among other things.  We use it only for error reporting
-        in this file. */
-      if (EOF_Reached)
-       EOF_Reached = 0;
-
-      /* If the user wants to "ignore" eof, then let her do so, kind of. */
-      if (ignoreeof)
-       {
-         if (eof_encountered < eof_encountered_limit)
-           {
-             fprintf (stderr, "Use \"%s\" to leave the shell.\n",
-                      login_shell ? "logout" : "exit");
-             eof_encountered++;
-             /* Reset the prompt string to be $PS1. */
-             prompt_string_pointer = (char **)NULL;
-             prompt_again ();
-             last_read_token = current_token = '\n';
-             return;
-           } 
-       }
-
-      /* In this case EOF should exit the shell.  Do it now. */
-      reset_parser ();
-      exit_builtin ((WORD_LIST *)NULL);
-    }
-  else
-    {
-      /* We don't write history files, etc., for non-interactive shells. */
-      EOF_Reached = 1;
-    }
-}
diff --git a/CWRU/old/read.def.stdio b/CWRU/old/read.def.stdio
deleted file mode 100644 (file)
index 6811384..0000000
+++ /dev/null
@@ -1,293 +0,0 @@
-This file is read.def, from which is created read.c.
-It implements the builtin "read" in Bash.
-
-Copyright (C) 1987, 1989, 1991 Free Software Foundation, Inc.
-
-This file is part of GNU Bash, the Bourne Again SHell.
-
-Bash is free software; you can redistribute it and/or modify it under
-the terms of the GNU General Public License as published by the Free
-Software Foundation; either version 1, or (at your option) any later
-version.
-
-Bash 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 General Public License
-for more details.
-
-You should have received a copy of the GNU General Public License along
-with Bash; see the file COPYING.  If not, write to the Free Software
-Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
-
-$PRODUCES read.c
-
-$BUILTIN read
-$FUNCTION read_builtin
-$SHORT_DOC read [-r] [-p prompt] [-a array] [name ...]
-One line is read from the standard input, and the first word is
-assigned to the first NAME, the second word to the second NAME, etc.
-with leftover words assigned to the last NAME.  Only the characters
-found in $IFS are recognized as word delimiters.  The return code is
-zero, unless end-of-file is encountered.  If the -r option is given,
-this signifies `raw' input, and backslash processing is disabled.  If
-the `-p' option is supplied, the string supplied as an argument is
-output without a trailing newline before attempting to read.  If -a
-is supplied, the words read are assigned to sequential indices of ARRAY,
-starting at zero.
-$END
-
-#include <stdio.h>
-#include "../shell.h"
-#include "common.h"
-#include "bashgetopt.h"
-
-static int stream_close ();
-
-extern int interrupt_immediately;
-
-/* Read the value of the shell variables whose names follow.
-   The reading is done from the current input stream, whatever
-   that may be.  Successive words of the input line are assigned
-   to the variables mentioned in LIST.  The last variable in LIST
-   gets the remainder of the words on the line.  If no variables
-   are mentioned in LIST, then the default variable is $REPLY. */
-read_builtin (list)
-     WORD_LIST *list;
-{
-  register char *varname;
-  int size, c, i, fildes, raw_mode, pass_next, saw_escape, opt, retval;
-  char *input_string, *orig_input_string, *ifs_chars, *prompt, *arrayname;
-  FILE *input_stream;
-  SHELL_VAR *ifs;
-#if defined (ARRAY_VARS)
-  SHELL_VAR *v;
-  WORD_LIST *alist;
-#endif
-
-  i = 0;               /* Index into the string that we are reading. */
-  raw_mode = 0;                /* Not reading raw input be default. */
-  arrayname = prompt = (char *)NULL;
-
-  reset_internal_getopt ();
-  while ((opt = internal_getopt (list, "rp:a:")) != -1)
-    {
-      switch (opt)
-        {
-        case 'r':
-         raw_mode = 1;
-         break;
-       case 'p':
-         prompt = list_optarg;
-         break;
-#if defined (ARRAY_VARS)
-       case 'a':
-         arrayname = list_optarg;
-         break;
-#endif
-       default:
-         builtin_usage ();
-         return (EX_USAGE);
-       }
-    }
-  list = loptend;
-
-  /* We need unbuffered input from stdin.  So we make a new stream with
-     the same file descriptor as stdin, then unbuffer it. */
-  fildes = dup (fileno (stdin));
-
-  if (fildes == -1)
-    return (EXECUTION_FAILURE);
-
-  input_stream = fdopen (fildes, "r");
-
-  if (!input_stream)
-    {
-      close (fildes);
-      return (EXECUTION_FAILURE);
-    }
-
-  ifs = find_variable ("IFS");
-  if (ifs == 0)
-    ifs_chars = " \t\n";
-  else
-    ifs_chars = value_cell (ifs);
-
-  input_string = xmalloc (size = 128);
-
-  setbuf (input_stream, (char *)NULL);
-
-  begin_unwind_frame ("read_builtin");
-  add_unwind_protect (xfree, input_string);
-  add_unwind_protect (stream_close, input_stream);
-  interrupt_immediately++;
-
-  if (prompt && isatty (0))
-    {
-      fprintf (stderr, "%s", prompt);
-      fflush (stderr);
-    }
-
-  pass_next = 0;       /* Non-zero signifies last char was backslash. */
-  saw_escape = 0;      /* Non-zero signifies that we saw an escape char */
-
-  while ((c = getc (input_stream)) != EOF)
-    {
-      if (i + 2 >= size)
-       input_string = xrealloc (input_string, size += 128);
-
-      /* If the next character is to be accepted verbatim, a backslash
-        newline pair still disappears from the input. */
-      if (pass_next)
-       {
-         if (c == '\n')
-           i--;                /* back up over the CTLESC */
-         else
-           input_string[i++] = c;
-         pass_next = 0;
-         continue;
-       }
-
-      if (c == '\\' && !raw_mode)
-       {
-         pass_next++;
-         saw_escape++;
-         input_string[i++] = CTLESC;
-         continue;
-       }
-
-      if (c == '\n')
-       break;
-
-      if (c == CTLESC || c == CTLNUL)
-       input_string[i++] = CTLESC;
-
-      input_string[i++] = c;
-    }
-  input_string[i] = '\0';
-
-  interrupt_immediately--;
-  discard_unwind_frame ("read_builtin");
-
-  fclose (input_stream);
-
-  if (c == EOF)
-    {
-      retval = EXECUTION_FAILURE;
-      input_string[0] = '\0';
-    }
-  else
-    retval = EXECUTION_SUCCESS;
-
-#if defined (ARRAY_VARS)
-  /* If -a was given, take the string read, break it into a list of words,
-     an assign them to `arrayname' in turn. */
-  if (arrayname)
-    {
-      v = find_variable (arrayname);
-      if (v == 0)
-        v = make_new_array_variable (arrayname);
-      else if (array_p (v) == 0)
-        v = convert_var_to_array (v);
-
-      alist = list_string (input_string, " \t\n", 0);
-      if (alist)
-       {
-         assign_word_list (array_cell (v), alist);
-         dispose_words (alist);
-       }
-      free (input_string);
-      return (retval);
-    }
-#endif /* ARRAY_VARS */ 
-
-  if (!list)
-    {
-      SHELL_VAR *var;
-      char *t;
-
-      if (saw_escape)
-       {
-         t = dequote_string (input_string);
-         var = bind_variable ("REPLY", t);
-         free (t);
-       }
-      else
-       var = bind_variable ("REPLY", input_string);
-      var->attributes &= ~att_invisible;
-      free (input_string);
-    }
-  else
-    {
-      SHELL_VAR *var;
-      char *t;
-      /* This code implements the Posix.2 spec for splitting the words
-        read and assigning them to variables.  If $IFS is unset, we
-        use the default value of " \t\n". */
-      if (!ifs_chars)
-       ifs_chars = "";
-
-      orig_input_string = input_string;
-      while (list->next)
-       {
-         char *e, *t1;
-
-         varname = list->word->word;
-
-         /* If there are more variables than words read from the input,
-            the remaining variables are set to the empty string. */
-         if (*input_string)
-           {
-             /* This call updates INPUT_STRING. */
-             t = get_word_from_string (&input_string, ifs_chars, &e);
-             if (t)
-               *e = '\0';
-             /* Don't bother to remove the CTLESC unless we added one
-                somewhere while reading the string. */
-             if (t && saw_escape)
-               {
-                 t1 = dequote_string (t);
-                 var = bind_variable (varname, t1);
-                 free (t1);
-               }
-             else
-               var = bind_variable (varname, t);
-           }
-         else
-           {
-             t = (char *)0;
-             var = bind_variable (varname, "");
-           }
-
-         stupidly_hack_special_variables (varname);
-         var->attributes &= ~att_invisible;
-
-         if (t)
-           free (t);
-
-         list = list->next;
-       }
-
-      if (saw_escape)
-       {
-         t = dequote_string (input_string);
-         var = bind_variable (list->word->word, t);
-         free (t);
-       }
-      else
-       var = bind_variable (list->word->word, input_string);
-      stupidly_hack_special_variables (list->word->word);
-      var->attributes &= ~att_invisible;
-      free (orig_input_string);
-    }
-
-  return (retval);
-}
-
-/* This way I don't have to know whether fclose () is a
-   function or a macro. */
-static int
-stream_close (file)
-     FILE *file;
-{
-  return (fclose (file));
-}
diff --git a/CWRU/old/subst.c.noctlnul b/CWRU/old/subst.c.noctlnul
deleted file mode 100644 (file)
index b6621c0..0000000
+++ /dev/null
@@ -1,5659 +0,0 @@
-/* subst.c -- The part of the shell that does parameter, command, and
-   globbing substitutions. */
-
-/* Copyright (C) 1987,1989 Free Software Foundation, Inc.
-
-   This file is part of GNU Bash, the Bourne Again SHell.
-
-   Bash is free software; you can redistribute it and/or modify it under
-   the terms of the GNU General Public License as published by the Free
-   Software Foundation; either version 2, or (at your option) any later
-   version.
-
-   Bash 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 General Public License
-   for more details.
-
-   You should have received a copy of the GNU General Public License along
-   with Bash; see the file COPYING.  If not, write to the Free Software
-   Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */
-
-#include "config.h"
-
-#include "bashtypes.h"
-#include <stdio.h>
-#include <pwd.h>
-#include <signal.h>
-#include <errno.h>
-
-#if defined (HAVE_UNISTD_H)
-#  include <unistd.h>
-#endif
-
-#include "bashansi.h"
-#include "posixstat.h"
-
-#include "shell.h"
-#include "flags.h"
-#include "jobs.h"
-#include "execute_cmd.h"
-#include "filecntl.h"
-#include "trap.h"
-#include "pathexp.h"
-
-#include "builtins/getopt.h"
-#include "builtins/common.h"
-
-#if defined (READLINE)
-#  include "bashline.h"
-#  include <readline/readline.h>
-#else
-#  include <tilde/tilde.h>
-#endif
-
-#if defined (HISTORY)
-#  include "bashhist.h"
-#  include <readline/history.h>
-#endif
-
-#include <glob/fnmatch.h>
-
-#if !defined (errno)
-extern int errno;
-#endif /* !errno */
-
-/* The size that strings change by. */
-#define DEFAULT_ARRAY_SIZE 128
-
-/* How to quote character C. */
-static char *make_quoted_char ();
-
-/* Process ID of the last command executed within command substitution. */
-pid_t last_command_subst_pid = NO_PID;
-
-/* Extern functions and variables from different files. */
-extern int last_command_exit_value, interactive, interactive_shell;
-extern int subshell_environment, startup_state;
-extern int dollar_dollar_pid;
-extern int posixly_correct;
-extern int eof_encountered, eof_encountered_limit, ignoreeof;
-extern char *this_command_name;
-extern struct fd_bitmap *current_fds_to_close;
-#if defined (READLINE)
-extern int no_line_editing;
-extern int hostname_list_initialized;
-#endif
-
-/* Non-zero means to allow unmatched globbed filenames to expand to
-   a null file. */
-int allow_null_glob_expansion;
-
-static WORD_LIST expand_word_error, expand_word_fatal;
-static char expand_param_error, expand_param_fatal;
-
-static WORD_LIST *expand_string_internal ();
-static WORD_LIST *expand_word_internal (), *expand_word_list_internal ();
-static WORD_LIST *expand_string_leave_quoted ();
-static WORD_LIST *expand_string_for_rhs ();
-static WORD_LIST *word_list_split ();
-static WORD_LIST *quote_list (), *dequote_list ();
-static int unquoted_substring (), unquoted_member ();
-static int do_assignment_internal ();
-static char *string_extract_verbatim (), *string_extract ();
-static char *string_extract_double_quoted (), *string_extract_single_quoted ();
-static int skip_single_quoted (), skip_double_quoted ();
-static char *extract_delimited_string ();
-static char *extract_dollar_brace_string ();
-
-/* **************************************************************** */
-/*                                                                 */
-/*                     Utility Functions                           */
-/*                                                                 */
-/* **************************************************************** */
-
-/* Cons a new string from STRING starting at START and ending at END,
-   not including END. */
-char *
-substring (string, start, end)
-     char *string;
-     int start, end;
-{
-  register int len;
-  register char *result;
-
-  len = end - start;
-  result = xmalloc (len + 1);
-  strncpy (result, string + start, len);
-  result[len] = '\0';
-  return (result);
-}
-
-/* Conventions:
-
-     A string with s[0] == CTLNUL && s[1] == 0 is a quoted null string.
-     The parser passes CTLNUL as CTLESC CTLNUL. */
-
-/* The parser passes us CTLESC as CTLESC CTLESC and CTLNUL as CTLESC CTLNUL.
-   This is necessary to make unquoted CTLESC and CTLNUL characters in the
-   data stream pass through properly.
-   Here we remove doubled CTLESC characters inside quoted strings before
-   quoting the entire string, so we do not double the number of CTLESC
-   characters. */
-static char *
-remove_quoted_escapes (string)
-     char *string;
-{
-  register char *s;
-  int docopy;
-  char *t, *t1;
-
-  if (string == NULL)
-    return (string);
-
-  t1 = t = xmalloc (strlen (string) + 1);
-  for (docopy = 0, s = string; *s; s++, t1++)
-    {
-#if 0
-      if (*s == CTLESC && (s[1] == CTLESC || s[1] == CTLNUL))
-#else
-      if (*s == CTLESC && s[1] == CTLESC)
-#endif
-       {
-         s++;
-         docopy = 1;
-       }
-      *t1 = *s;
-    }
-  *t1 = '\0';
-  if (docopy)
-    strcpy (string, t);
-  free (t);
-  return (string);
-}
-
-/* Quote escape characters in string s, but no other characters.  This is
-   used to protect CTLESC and CTLNUL in variable values from the rest of
-   the word expansion process after the variable is expanded. */
-static char *
-quote_escapes (string)
-     char *string;
-{
-  register char *s, *t;
-  char *result;
-
-  result = xmalloc ((strlen (string) * 2) + 1);
-  for (s = string, t = result; *s; )
-    {
-      if (*s == CTLESC /* || *s == CTLNUL */)
-       *t++ = CTLESC;
-      *t++ = *s++;
-    }
-  *t = '\0';
-  return (result);
-}
-
-static char *
-dequote_escapes (string)
-     char *string;
-{
-  register char *s, *t;
-  char *result;
-
-  result = xmalloc (strlen (string) + 1);
-  for (s = string, t = result; *s; )
-    {
-#if 0
-      if (*s == CTLESC && (s[1] == CTLESC || s[1] == CTLNUL))
-#else
-      if (*s == CTLESC && s[1] == CTLESC)
-#endif
-       {
-         s++;
-         if (*s == '\0')
-           break;
-       }
-      *t++ = *s++;
-    }
-  *t = '\0';
-  return result;
-}
-
-/* Extract a substring from STRING, starting at SINDEX and ending with
-   one of the characters in CHARLIST.  Don't make the ending character
-   part of the string.  Leave SINDEX pointing at the ending character.
-   Understand about backslashes in the string.  If VARNAME is non-zero,
-   and array variables have been compiled into the shell, everything
-   between a `[' and a corresponding `]' is skipped over. */
-static char *
-string_extract (string, sindex, charlist, varname)
-     char *string, *charlist;
-     int *sindex, varname;
-{
-  register int c, i;
-  char *temp;
-
-  for (i = *sindex; c = string[i]; i++)
-    {
-      if (c == '\\')
-       if (string[i + 1])
-         i++;
-       else
-         break;
-#if defined (ARRAY_VARS)
-      else if (varname && c == '[')
-       {
-         int ni;
-         /* If this is an array subscript, skip over it and continue. */
-         ni = skipsubscript (string, i);
-         if (string[ni] == ']')
-           i = ni;
-       }
-#endif
-      else if (MEMBER (c, charlist))
-         break;
-    }
-  c = i - *sindex;
-  temp = xmalloc (1 + c);
-  strncpy (temp, string + *sindex, c);
-  temp[c] = '\0';
-  *sindex = i;
-  return (temp);
-}
-
-/* Extract the contents of STRING as if it is enclosed in double quotes.
-   SINDEX, when passed in, is the offset of the character immediately
-   following the opening double quote; on exit, SINDEX is left pointing after
-   the closing double quote.  If STRIPDQ is non-zero, unquoted double
-   quotes are stripped and the string is terminated by a null byte.
-   Backslashes between the embedded double quotes are processed.  If STRIPDQ
-   is zero, an unquoted `"' terminates the string. */
-static inline char *
-string_extract_double_quoted (string, sindex, stripdq)
-     char *string;
-     int *sindex, stripdq;
-{
-  int c, j, i, t;
-  char *temp, *ret;            /* The new string we return. */
-  int pass_next, backquote, si;        /* State variables for the machine. */
-  int dquote;
-
-  pass_next = backquote = dquote = 0;
-  temp = xmalloc (1 + strlen (string) - *sindex);
-
-  for (j = 0, i = *sindex; c = string[i]; i++)
-    {
-      /* Process a character that was quoted by a backslash. */
-      if (pass_next)
-       {
-         /* Posix.2 sez:
-
-            ``The backslash shall retain its special meaning as an escape
-            character only when followed by one of the characters:
-               $       `       "       \       <newline>''.
-
-            If STRIPDQ is zero, we handle the double quotes here and let
-            expand_word_internal handle the rest.  If STRIPDQ is non-zero,
-            we have already been through one round of backslash stripping,
-            and want to strip these backslashes only if DQUOTE is non-zero,
-            indicating that we are inside an embedded double-quoted string. */
-
-            /* If we are in an embedded quoted string, then don't strip
-               backslashes before characters for which the backslash
-               retains its special meaning, but remove backslashes in
-               front of other characters.  If we are not in an
-               embedded quoted string, don't strip backslashes at all.
-               This mess is necessary because the string was already
-               surrounded by double quotes (and sh has some really weird
-               quoting rules).
-               The returned string will be run through expansion as if
-               it were double-quoted. */
-         if ((stripdq == 0 && c != '"') ||
-             (stripdq && ((dquote && strchr (slashify_in_quotes, c)) || dquote == 0)))
-           temp[j++] = '\\';
-         temp[j++] = c;
-         pass_next = 0;
-         continue;
-       }
-
-      /* A backslash protects the next character.  The code just above
-        handles preserving the backslash in front of any character but
-        a double quote. */
-      if (c == '\\')
-       {
-         pass_next++;
-         continue;
-       }
-
-      /* Inside backquotes, ``the portion of the quoted string from the
-        initial backquote and the characters up to the next backquote
-        that is not preceded by a backslash, having escape characters
-        removed, defines that command''. */
-      if (backquote)
-       {
-         if (c == '`')
-           backquote = 0;
-         temp[j++] = c;
-         continue;
-       }
-
-      if (c == '`')
-       {
-         temp[j++] = c;
-         backquote++;
-         continue;
-       }
-
-      /* Pass everything between `$(' and the matching `)' or a quoted
-        ${ ... } pair through according to the Posix.2 specification. */
-      if (c == '$' && ((string[i + 1] == '(') || (string[i + 1] == '{')))
-       {
-         si = i + 2;
-         if (string[i + 1] == '(')
-           ret = extract_delimited_string (string, &si, "$(", "(", ")");
-         else
-           ret = extract_dollar_brace_string (string, &si, 1);
-
-         temp[j++] = '$';
-         temp[j++] = string[i + 1];
-
-         for (t = 0; ret[t]; t++, j++)
-           temp[j] = ret[t];
-         temp[j++] = string[si];
-
-         i = si;
-         free (ret);
-         continue;
-       }
-
-      /* Add any character but a double quote to the quoted string we're
-         accumulating. */
-      if (c != '"')
-       {
-         temp[j++] = c;
-         continue;
-       }
-
-      /* c == '"' */   
-      if (stripdq)
-       {
-         dquote ^= 1;
-         continue;
-       }
-
-      break;
-    }
-  temp[j] = '\0';
-
-  /* Point to after the closing quote. */
-  if (c)
-    i++;
-  *sindex = i;
-
-  return (temp);
-}
-
-/* This should really be another option to string_extract_double_quoted. */
-static inline int
-skip_double_quoted (string, sind)
-     char *string;
-     int sind;
-{
-  int c, j, i;
-  char *ret;
-  int pass_next, backquote, si;
-
-  pass_next = backquote = 0;
-
-  for (j = 0, i = sind; c = string[i]; i++)
-    {
-      if (pass_next)
-       {
-         pass_next = 0;
-         continue;
-       }
-      else if (c == '\\')
-       {
-         pass_next++;
-         continue;
-       }
-      else if (backquote)
-       {
-         if (c == '`')
-           backquote = 0;
-         continue;
-       }
-      else if (c == '`')
-       {
-         backquote++;
-         continue;
-       }
-      else if (c == '$' && ((string[i + 1] == '(') || (string[i + 1] == '{')))
-       {
-         si = i + 2;
-         if (string[i + 1] == '(')
-           ret = extract_delimited_string (string, &si, "$(", "(", ")");
-         else
-           ret = extract_dollar_brace_string (string, &si, 0);
-         i = si;
-         free (ret);
-         continue;
-       }
-      else if (c != '"')
-       continue;
-      else
-       break;
-    }
-
-  if (c)
-    i++;
-
-  return (i);
-}
-
-/* Extract the contents of STRING as if it is enclosed in single quotes.
-   SINDEX, when passed in, is the offset of the character immediately
-   following the opening single quote; on exit, SINDEX is left pointing after
-   the closing single quote. */
-static inline char *
-string_extract_single_quoted (string, sindex)
-     char *string;
-     int *sindex;
-{
-  register int i, j;
-  char *temp;
-
-  for (i = *sindex; string[i] && string[i] != '\''; i++)
-    ;
-
-  j = i - *sindex;
-  temp = xmalloc (1 + j);
-  strncpy (temp, string + *sindex, j);
-  temp[j] = '\0';
-
-  if (string[i])
-    i++;
-  *sindex = i;
-
-  return (temp);
-}
-
-static inline int
-skip_single_quoted (string, sind)
-     char *string;
-     int sind;
-{
-  register int i;
-
-  for (i = sind; string[i] && string[i] != '\''; i++)
-    ;
-  if (string[i])
-    i++;
-  return i;
-}
-
-/* Just like string_extract, but doesn't hack backslashes or any of
-   that other stuff.  Obeys quoting.  Used to do splitting on $IFS. */
-static char *
-string_extract_verbatim (string, sindex, charlist)
-     char *string, *charlist;
-     int *sindex;
-{
-  register int i = *sindex;
-  int c;
-  char *temp;
-
-  if (charlist[0] == '\'' && charlist[1] == '\0')
-    return (string_extract_single_quoted (string, sindex));
-
-  for (i = *sindex; c = string[i]; i++)
-    {
-      if (c == CTLESC)
-       {
-         i++;
-         continue;
-       }
-
-      if (MEMBER (c, charlist))
-       break;
-    }
-
-  c = i - *sindex;
-  temp = xmalloc (1 + c);
-  strncpy (temp, string + *sindex, c);
-  temp[c] = '\0';
-  *sindex = i;
-
-  return (temp);
-}
-
-/* Extract the $( construct in STRING, and return a new string.
-   Start extracting at (SINDEX) as if we had just seen "$(".
-   Make (SINDEX) get the position just after the matching ")". */
-char *
-extract_command_subst (string, sindex)
-     char *string;
-     int *sindex;
-{
-  return (extract_delimited_string (string, sindex, "$(", "(", ")"));
-}
-
-/* Extract the $[ construct in STRING, and return a new string.
-   Start extracting at (SINDEX) as if we had just seen "$[".
-   Make (SINDEX) get the position just after the matching "]". */
-char *
-extract_arithmetic_subst (string, sindex)
-     char *string;
-     int *sindex;
-{
-  return (extract_delimited_string (string, sindex, "$[", "[", "]"));
-}
-
-#if defined (PROCESS_SUBSTITUTION)
-/* Extract the <( or >( construct in STRING, and return a new string.
-   Start extracting at (SINDEX) as if we had just seen "<(".
-   Make (SINDEX) get the position just after the matching ")". */
-char *
-extract_process_subst (string, starter, sindex)
-     char *string;
-     char *starter;
-     int *sindex;
-{
-  return (extract_delimited_string (string, sindex, starter, "(", ")"));
-}
-#endif /* PROCESS_SUBSTITUTION */
-
-#if defined (ARRAY_VARS)
-char *
-extract_array_assignment_list (string, sindex)
-     char *string;
-     int *sindex;
-{
-  return (extract_delimited_string (string, sindex, "(", "(", ")"));
-}
-#endif
-
-/* Extract and create a new string from the contents of STRING, a
-   character string delimited with OPENER and CLOSER.  SINDEX is
-   the address of an int describing the current offset in STRING;
-   it should point to just after the first OPENER found.  On exit,
-   SINDEX gets the position just after the matching CLOSER.  If
-   OPENER is more than a single character, ALT_OPENER, if non-null,
-   contains a character string that can also match CLOSER and thus
-   needs to be skipped. */
-
-#define INC_NEST \
-  do \
-    { \
-      if (delimiter == 0) \
-       nesting_level++; \
-      else \
-       delimited_nesting_level++; \
-    } \
-  while (0)
-
-/* Cannot use the do...while(0) idiom because of the `break' in the
-   macro body. */
-#define DEC_NEST \
-      if (delimiter && delimited_nesting_level) \
-       delimited_nesting_level--; \
-      if (delimiter == 0) \
-       { \
-         nesting_level--; \
-         if (nesting_level == 0) \
-           break; \
-       }
-
-static char *
-extract_delimited_string (string, sindex, opener, alt_opener, closer)
-     char *string;
-     int *sindex;
-     char *opener, *alt_opener, *closer;
-{
-  register int i, c, l;
-  int pass_character, nesting_level;
-  int delimiter, delimited_nesting_level;
-  int len_closer, len_opener, len_alt_opener;
-  char *result;
-
-  len_opener = STRLEN (opener);
-  len_alt_opener = STRLEN (alt_opener);
-  len_closer = STRLEN (closer);
-
-  pass_character = delimiter = delimited_nesting_level = 0;
-
-  nesting_level = 1;
-
-  for (i = *sindex; c = string[i]; i++)
-    {
-      if (pass_character)
-       {
-         pass_character = 0;
-         continue;
-       }
-
-      if (c == CTLESC)
-       {
-         pass_character++;
-         continue;
-       }
-
-      if (c == '\\' && delimiter == '"' &&
-             (member (string[i + 1], slashify_in_quotes)))
-       {
-         pass_character++;
-         continue;
-       }
-
-      if (!delimiter || delimiter == '"')
-       {
-         if (STREQN (string + i, opener, len_opener))
-           {
-             INC_NEST;
-             i += len_opener - 1;
-             continue;
-           }
-
-         if (len_alt_opener && STREQN (string + i, alt_opener, len_alt_opener))
-           {
-             INC_NEST;
-             i += len_alt_opener - 1;
-             continue;
-           }
-
-         if (STREQN (string + i, closer, len_closer))
-           {
-             i += len_closer - 1;
-             DEC_NEST;
-           }
-       }
-
-      if (delimiter)
-       {
-         if (c == delimiter || delimiter == '\\')
-           delimiter = 0;
-         continue;
-       }
-      else if (c == '"' || c == '\'' || c == '\\')
-       delimiter = c;
-    }
-
-  l = i - *sindex;
-  result = xmalloc (1 + l);
-  strncpy (result, string + *sindex, l);
-  result[l] = '\0';
-  *sindex = i;
-
-  if (c == 0 && (delimiter || nesting_level))
-    {
-      report_error ("bad substitution: no `%s' in %s", closer, string);
-      free (result);
-      jump_to_top_level (DISCARD);
-    }
-  return (result);
-}
-
-/* Extract a parameter expansion expression within ${ and } from STRING.
-   Obey the Posix.2 rules for finding the ending `}': count braces while
-   skipping over enclosed quoted strings and command substitutions.
-   SINDEX is the address of an int describing the current offset in STRING;
-   it should point to just after the first `{' found.  On exit, SINDEX
-   gets the position just after the matching `}'.  QUOTED is non-zero if
-   this occurs inside double quotes. */
-/* XXX -- this is very similar to extract_delimited_string -- XXX */
-static char *
-extract_dollar_brace_string (string, sindex, quoted)
-     char *string;
-     int *sindex, quoted;
-{
-  register int i, c, l;
-  int pass_character, nesting_level, si;
-  int delimiter, delimited_nesting_level;
-  char *result, *t;
-
-  pass_character = delimiter = delimited_nesting_level = 0;
-
-  nesting_level = 1;
-
-  for (i = *sindex; c = string[i]; i++)
-    {
-      if (pass_character)
-       {
-         pass_character = 0;
-         continue;
-       }
-
-      if (c == CTLESC)
-       {
-         pass_character++;
-         continue;
-       }
-
-      /* Backslashes quote the next character. */
-      if (c == '\\')
-       {
-         if ((delimiter == '"') &&
-             (member (string[i + 1], slashify_in_quotes)))
-           {
-             pass_character++;
-             continue;
-           }
-       }
-
-      if (!delimiter || delimiter == '"')
-       {
-         if (string[i] == '$' && string[i+1] == '{')
-           {
-             INC_NEST;
-             i++;
-             continue;
-           }
-
-         /* Pass the contents of old-style command substitutions through
-            verbatim. */
-         if (string[i] == '`')
-           {
-             si = i + 1;
-             t = string_extract (string, &si, "`", 0);
-             i = si;
-             free (t);
-             continue;
-           }
-
-         /* Pass the contents of new-style command substitutions through
-            verbatim. */
-         if (string[i] == '$' && string[i+1] == '(')
-           {
-             si = i + 2;
-             t = extract_delimited_string (string, &si, "$(", "(", ")");
-             i = si;
-             free (t);
-             continue;
-           }
-
-         if (string[i] == '{')
-           {
-             INC_NEST;
-             continue;
-           }
-
-         if (string[i] == '}')
-           {
-             DEC_NEST;
-           }
-       }
-
-      if (delimiter)
-       {
-         if (c == delimiter || delimiter == '\\')
-           delimiter = 0;
-         continue;
-       }
-      else if (c == '"' || c == '\'' || c == '\\')
-       delimiter = c;
-    }
-
-  l = i - *sindex;
-  result = xmalloc (1 + l);
-  strncpy (result, string + *sindex, l);
-  result[l] = '\0';
-  *sindex = i;
-
-  if (c == 0 && (delimiter || nesting_level))
-    {
-      report_error ("bad substitution: no ending `}' in %s", string);
-      free (result);
-      jump_to_top_level (DISCARD);
-    }
-  return (result);
-}
-
-/* Remove backslashes which are quoting backquotes from STRING.  Modifies
-   STRING, and returns a pointer to it. */
-char *
-de_backslash (string)
-     char *string;
-{
-  register int i, l;
-
-  for (i = 0, l = strlen (string); i < l; i++)
-    if (string[i] == '\\' && (string[i + 1] == '`' || string[i + 1] == '\\' ||
-                             string[i + 1] == '$'))
-      strcpy (string + i, string + i + 1);     /* XXX - should be memmove */
-  return (string);
-}
-
-#if 0
-/* Replace instances of \! in a string with !. */
-void
-unquote_bang (string)
-     char *string;
-{
-  register int i, j;
-  register char *temp;
-
-  temp = xmalloc (1 + strlen (string));
-
-  for (i = 0, j = 0; (temp[j] = string[i]); i++, j++)
-    {
-      if (string[i] == '\\' && string[i + 1] == '!')
-       {
-         temp[j] = '!';
-         i++;
-       }
-    }
-  strcpy (string, temp);
-  free (temp);
-}
-#endif
-
-#if defined (READLINE)
-/* Return 1 if the portion of STRING ending at EINDEX is quoted (there is
-   an unclosed quoted string), or if the character at EINDEX is quoted
-   by a backslash. */
-int
-char_is_quoted (string, eindex)
-     char *string;
-     int eindex;
-{
-  int i, pass_next, quoted;
-
-  for (i = pass_next = quoted = 0; i <= eindex; i++)
-    {
-      if (pass_next)
-       {
-         pass_next = 0;
-         if (i >= eindex)      /* XXX was if (i >= eindex - 1) */
-           return 1;
-         continue;
-       }
-      else if (string[i] == '\'' || string[i] == '"')
-       {
-         i = (string[i] == '\'') ? skip_single_quoted (string, ++i)
-                                 : skip_double_quoted (string, ++i);
-         if (i > eindex)
-           return 1;
-       }
-      else if (string[i] == '\\')
-       {
-         pass_next = 1;
-         continue;
-       }
-    }
-  return (0);
-}
-
-int
-unclosed_pair (string, eindex, openstr)
-     char *string;
-     int eindex;
-     char *openstr;
-{
-  int i, pass_next, openc, olen;
-
-  olen = strlen (openstr);
-  for (i = pass_next = openc = 0; i <= eindex; i++)
-    {
-      if (pass_next)
-       {
-         pass_next = 0;
-         if (i >= eindex)      /* XXX was if (i >= eindex - 1) */
-           return 0;
-         continue;
-       }
-      else if (STREQN (string + i, openstr, olen))
-       {
-         openc = 1 - openc;
-         i += olen - 1;
-       }
-      else if (string[i] == '\'' || string[i] == '"')
-       {
-         i = (string[i] == '\'') ? skip_single_quoted (string, i)
-                                 : skip_double_quoted (string, i);
-         if (i > eindex)
-           return 0;
-       }
-      else if (string[i] == '\\')
-       {
-         pass_next = 1;
-         continue;
-       }
-    }
-  return (openc);
-}
-#endif /* READLINE */
-
-#if 0
-/* UNUSED */
-/* Extract the name of the variable to bind to from the assignment string. */
-char *
-assignment_name (string)
-     char *string;
-{
-  int offset;
-  char *temp;
-
-  offset = assignment (string);
-  if (offset == 0)
-    return (char *)NULL;
-  temp = xmalloc (offset + 1);
-  strncpy (temp, string, offset);
-  temp[offset] = '\0';
-  return (temp);
-}
-#endif
-
-/* Return a single string of all the words in LIST.  SEP is the separator
-   to put between individual elements of LIST in the output string. */
-static char *
-string_list_internal (list, sep)
-     WORD_LIST *list;
-     char *sep;
-{
-  register WORD_LIST *t;
-  char *result, *r;
-  int word_len, sep_len, result_size;
-
-  if (list == 0)
-    return ((char *)NULL);
-
-  /* This is nearly always called with either sep[0] == 0 or sep[1] == 0. */
-  sep_len = STRLEN (sep);
-  result_size = 0;
-
-  for (t = list; t; t = t->next)
-    {
-      if (t != list)
-       result_size += sep_len;
-      result_size += strlen (t->word->word);
-    }
-
-  r = result = xmalloc (result_size + 1);
-
-  for (t = list; t; t = t->next)
-    {
-      if (t != list && sep_len)
-       {
-         if (sep_len > 1)
-           {
-             FASTCOPY (sep, r, sep_len);
-             r += sep_len;
-           }
-         else
-           *r++ = sep[0];
-       }
-
-      word_len = strlen (t->word->word);
-      FASTCOPY (t->word->word, r, word_len);
-      r += word_len;
-    }
-
-  *r = '\0';    
-  return (result);
-}
-
-/* Return a single string of all the words present in LIST, separating
-   each word with a space. */
-char *
-string_list (list)
-     WORD_LIST *list;
-{
-  return (string_list_internal (list, " "));
-}
-
-/* Return a single string of all the words present in LIST, obeying the
-   quoting rules for "$*", to wit: (P1003.2, draft 11, 3.5.2) "If the
-   expansion [of $*] appears within a double quoted string, it expands
-   to a single field with the value of each parameter separated by the
-   first character of the IFS variable, or by a <space> if IFS is unset." */
-char *
-string_list_dollar_star (list)
-     WORD_LIST *list;
-{
-  char *ifs, sep[2];
-
-  ifs = get_string_value ("IFS");
-  if (ifs == 0)
-    sep[0] = ' ';
-  else if (*ifs == '\0')
-    sep[0] = '\0';
-  else
-    sep[0] = *ifs;
-
-  sep[1] = '\0';
-
-  return (string_list_internal (list, sep));
-}
-
-/* Return the list of words present in STRING.  Separate the string into
-   words at any of the characters found in SEPARATORS.  If QUOTED is
-   non-zero then word in the list will have its quoted flag set, otherwise
-   the quoted flag is left as make_word () deemed fit.
-
-   This obeys the P1003.2 word splitting semantics.  If `separators' is
-   exactly <space><tab><newline>, then the splitting algorithm is that of
-   the Bourne shell, which treats any sequence of characters from `separators'
-   as a delimiter.  If IFS is unset, which results in `separators' being set
-   to "", no splitting occurs.  If separators has some other value, the
-   following rules are applied (`IFS white space' means zero or more
-   occurrences of <space>, <tab>, or <newline>, as long as those characters
-   are in `separators'):
-
-       1) IFS white space is ignored at the start and the end of the
-          string.
-       2) Each occurrence of a character in `separators' that is not
-          IFS white space, along with any adjacent occurrences of
-          IFS white space delimits a field.
-       3) Any nonzero-length sequence of IFS white space delimits a field.
-   */
-
-/* BEWARE!  list_string strips null arguments.  Don't call it twice and
-   expect to have "" preserved! */
-
-/* Perform quoted null character removal on STRING.  We don't allow any
-   quoted null characters in the middle or at the ends of strings because
-   of how expand_word_internal works.  remove_quoted_nulls () simply
-   turns STRING into an empty string iff it only consists of a quoted null. */
-#define remove_quoted_nulls(string) \
-  do { if (QUOTED_NULL (string)) string[0] ='\0'; } while (0)
-
-/* Perform quoted null character removal on each element of LIST.
-   This modifies LIST. */
-void
-word_list_remove_quoted_nulls (list)
-     WORD_LIST *list;
-{
-  register WORD_LIST *t;
-
-  for (t = list; t; t = t->next)
-    remove_quoted_nulls (t->word->word);
-}
-
-/* This performs word splitting and quoted null character removal on
-   STRING. */
-#define issep(c)       (member ((c), separators))
-
-WORD_LIST *
-list_string (string, separators, quoted)
-     register char *string, *separators;
-     int quoted;
-{
-  WORD_LIST *result;
-  WORD_DESC *t;
-  char *current_word, *s;
-  int sindex, sh_style_split;
-
-  if (!string || !*string)
-    return ((WORD_LIST *)NULL);
-
-  sh_style_split =
-    separators && *separators && (STREQ (separators, " \t\n"));
-
-  /* Remove sequences of whitespace at the beginning of STRING, as
-     long as those characters appear in IFS.  Do not do this if
-     STRING is quoted or if there are no separator characters. */
-  if (!quoted || !separators || !*separators)
-    {
-      for (s = string; *s && spctabnl (*s) && issep (*s); s++);
-
-      if (!*s)
-       return ((WORD_LIST *)NULL);
-
-      string = s;
-    }
-
-  /* OK, now STRING points to a word that does not begin with white space.
-     The splitting algorithm is:
-       extract a word, stopping at a separator
-       skip sequences of spc, tab, or nl as long as they are separators
-     This obeys the field splitting rules in Posix.2. */
-  for (result = (WORD_LIST *)NULL, sindex = 0; string[sindex]; )
-    {
-      current_word = string_extract_verbatim (string, &sindex, separators);
-      if (current_word == 0)
-       break;
-
-      /* If we have a quoted empty string, add a quoted null argument.  We
-        want to preserve the quoted null character iff this is a quoted
-        empty string; otherwise the quoted null characters are removed
-        below. */
-#if 0
-      if (QUOTED_NULL (current_word))
-       {
-         t = make_bare_word ("");
-         t->flags |= W_QUOTED;
-         free (t->word);
-         t->word = make_quoted_char ('\0');
-         result = make_word_list (t, result);
-       }
-      else if (current_word[0] != '\0')
-#else
-      if (current_word[0] != '\0')
-#endif
-       {
-         /* If we have something, then add it regardless.  However,
-            perform quoted null character removal on the current word. */
-#if 0
-         remove_quoted_nulls (current_word);
-#endif
-         result = make_word_list (make_word (current_word), result);
-         if (quoted & (Q_DOUBLE_QUOTES|Q_HERE_DOCUMENT))
-           result->word->flags |= W_QUOTED;
-       }
-
-      /* If we're not doing sequences of separators in the traditional
-        Bourne shell style, then add a quoted null argument. */
-      else if (!sh_style_split && !spctabnl (string[sindex]))
-       {
-         t = make_bare_word ("");
-         t->flags |= W_QUOTED;
-         free (t->word);
-         t->word = make_quoted_char ('\0');
-         result = make_word_list (t, result);
-       }
-
-      free (current_word);
-
-      /* Move past the current separator character. */
-      if (string[sindex])
-       sindex++;
-
-      /* Now skip sequences of space, tab, or newline characters if they are
-        in the list of separators. */
-      while (string[sindex] && spctabnl (string[sindex]) && issep (string[sindex]))
-       sindex++;
-    }
-  return (REVERSE_LIST (result, WORD_LIST *));
-}
-
-/* Parse a single word from STRING, using SEPARATORS to separate fields.
-   ENDPTR is set to the first character after the word.  This is used by
-   the `read' builtin.
-   XXX - this function is very similar to list_string; they should be
-        combined - XXX */
-char *
-get_word_from_string (stringp, separators, endptr)
-     char **stringp, *separators, **endptr;
-{
-  register char *s;
-  char *current_word;
-  int sindex, sh_style_split;
-
-  if (!stringp || !*stringp || !**stringp)
-    return ((char *)NULL);
-    
-  s = *stringp;
-
-  sh_style_split =
-    separators && *separators && (STREQ (separators, " \t\n"));
-
-  /* Remove sequences of whitespace at the beginning of STRING, as
-     long as those characters appear in IFS. */
-  if (sh_style_split || !separators || !*separators)
-    {
-      for (; *s && spctabnl (*s) && issep (*s); s++);
-
-      /* If the string is nothing but whitespace, update it and return. */
-      if (!*s)
-       {
-         *stringp = s;
-         if (endptr)
-           *endptr = s;
-         return ((char *)NULL);
-       }
-    }
-
-  /* OK, S points to a word that does not begin with white space.
-     Now extract a word, stopping at a separator, save a pointer to
-     the first character after the word, then skip sequences of spc,
-     tab, or nl as long as they are separators.
-     
-     This obeys the field splitting rules in Posix.2. */
-  sindex = 0;
-  current_word = string_extract_verbatim (s, &sindex, separators);
-
-  /* Set ENDPTR to the first character after the end of the word. */
-  if (endptr)
-    *endptr = s + sindex;
-
-  /* Move past the current separator character. */
-  if (s[sindex])
-    sindex++;
-
-  /* Now skip sequences of space, tab, or newline characters if they are
-     in the list of separators. */
-  while (s[sindex] && spctabnl (s[sindex]) && issep (s[sindex]))
-    sindex++;
-
-  /* Update STRING to point to the next field. */
-  *stringp = s + sindex;
-  return (current_word);
-}
-
-/* Remove IFS white space at the end of STRING.  Start at the end
-   of the string and walk backwards until the beginning of the string
-   or we find a character that's not IFS white space and not CTLESC.
-   Only let CTLESC escape a white space character if SAW_ESCAPE is
-   non-zero.  */
-char *
-strip_trailing_ifs_whitespace (string, separators, saw_escape)
-     char *string, *separators;
-     int saw_escape;
-{
-  char *s;
-  
-  s = string + STRLEN (string) - 1;
-  while (s > string && ((spctabnl (*s) && issep (*s)) ||
-                       (saw_escape && *s == CTLESC && spctabnl (s[1]))))
-    s--;
-  *++s = '\0';
-  return string;
-}
-
-#if defined (ARRAY_VARS)
-WORD_LIST *
-list_string_with_quotes (string)
-     char *string;
-{
-  WORD_LIST *list;
-  char *token, *s;
-  int c, i, tokstart, len;
-
-  for (s = string; s && *s && spctabnl (*s); s++)
-    ;
-  if (s == 0 || *s == 0)
-    return ((WORD_LIST *)NULL);
-
-  tokstart = i = 0;
-  list = (WORD_LIST *)NULL;
-  while (1)
-    {
-      c = s[i];
-      if (c == '\\')
-       {
-         i++;
-         if (s[i])
-           i++;
-       } 
-      else if (c == '\'')
-        i = skip_single_quoted (s, ++i);
-      else if (c == '"')
-       i = skip_double_quoted (s, ++i);
-      else if (c == 0 || spctabnl (c))
-       {
-         /* We have found the end of a token.  Make a word out of it and
-            add it to the word list. */
-         len = i - tokstart;
-         token = xmalloc (len + 1);
-         strncpy (token, s + tokstart, len);
-         token[len] = '\0';
-         list = make_word_list (make_word (token), list);
-         free (token);
-         while (spctabnl (s[i]))
-           i++;
-         if (s[i])
-           tokstart = i;
-         else
-           break;
-       }
-      else
-       i++;    /* normal character */
-    }
-  return (REVERSE_LIST (list, WORD_LIST *));
-}
-#endif /* ARRAY_VARS */
-
-#if defined (PROCESS_SUBSTITUTION)
-#define EXP_CHAR(s) (s == '$' || s == '`' || s == '<' || s == '>' || s == CTLESC)
-#else
-#define EXP_CHAR(s) (s == '$' || s == '`' || s == CTLESC)
-#endif
-
-/* If there are any characters in STRING that require full expansion,
-   then call FUNC to expand STRING; otherwise just perform quote
-   removal if necessary.  This returns a new string. */
-static char *
-maybe_expand_string (string, quoted, func)
-     char *string;
-     int quoted;
-     WORD_LIST *(*func)();
-{
-  WORD_LIST *list;
-  int i, saw_quote;
-  char *ret;
-     
-  for (i = saw_quote = 0; string[i]; i++)
-    {
-      if (EXP_CHAR (string[i]))
-       break;
-      else if (string[i] == '\'' || string[i] == '\\' || string[i] == '"')
-       saw_quote = 1;
-    }
-
-  if (string[i])
-    {    
-      list = (*func) (string, quoted);
-      if (list)
-       {
-         ret = string_list (list);
-         dispose_words (list);
-       }
-      else
-       ret = (char *)NULL;
-    }
-  else if (saw_quote && ((quoted & (Q_HERE_DOCUMENT|Q_DOUBLE_QUOTES)) == 0))
-    ret = string_quote_removal (string, quoted);
-  else
-    ret = savestring (string);
-  return ret;
-}
-
-#if defined (ARRAY_VARS)
-SHELL_VAR *
-do_array_element_assignment (name, value)
-     char *name, *value;
-{
-  char *t;
-  int ind, ni;
-  SHELL_VAR *entry;
-
-  t = strchr (name, '[');
-  if (t == 0)
-    return ((SHELL_VAR *)NULL);
-  ind = t - name;
-  ni = skipsubscript (name, ind);
-  if ((ALL_ELEMENT_SUB (t[1]) && t[2] == ']') || (ni <= ind + 1))
-    {
-      report_error ("%s: bad array subscript", name);
-      return ((SHELL_VAR *)NULL);
-    }
-  *t++ = '\0';
-  ind = array_expand_index (t, ni - ind);
-  if (ind < 0)
-    {
-      t[-1] = '[';             /* restore original name */
-      report_error ("%s: bad array subscript", name);
-      return ((SHELL_VAR *)NULL);
-    }
-  entry = bind_array_variable (name, ind, value);
-  t[-1] = '[';         /* restore original name */
-  return (entry);
-}
-#endif /* ARRAY_VARS */
-
-/* Given STRING, an assignment string, get the value of the right side
-   of the `=', and bind it to the left side.  If EXPAND is true, then
-   perform parameter expansion, command substitution, and arithmetic
-   expansion on the right-hand side.  Perform tilde expansion in any
-   case.  Do not perform word splitting on the result of expansion. */
-static int
-do_assignment_internal (string, expand)
-     char *string;
-     int expand;
-{
-  int offset;
-  char *name, *value;
-  SHELL_VAR *entry;
-#if defined (ARRAY_VARS)
-  char *t;
-  int ni, assign_list = 0;
-#endif
-
-  offset = assignment (string);
-  name = savestring (string);
-  value = (char *)NULL;
-
-  if (name[offset] == '=')
-    {
-      char *temp;
-
-      name[offset] = 0;
-      temp = name + offset + 1;
-
-#if defined (ARRAY_VARS)
-      if (expand && temp[0] == '(' && strchr (temp, ')'))
-       {
-         assign_list = ni = 1;
-         value = extract_delimited_string (temp, &ni, "(", "(", ")");
-       }
-      else
-#endif
-      if (expand && temp[0])
-       {
-         temp = (strchr (temp, '~') && unquoted_member ('~', temp))
-                  ? bash_tilde_expand (temp)
-                  : savestring (temp);
-
-         value = maybe_expand_string (temp, 0, expand_string_unsplit);
-         free (temp);
-       }
-      else
-       value = savestring (temp);
-    }
-
-  if (value == 0)
-    value = savestring ("");
-
-  if (echo_command_at_execute)
-#if defined (ARRAY_VARS)
-    if (assign_list)
-      fprintf (stderr, "%s%s=(%s)\n", indirection_level_string (), name, value);
-    else
-#endif
-    fprintf (stderr, "%s%s=%s\n", indirection_level_string (), name, value);
-
-#define ASSIGN_RETURN(r)       FREE (value); free (name); return (r);
-
-#if defined (ARRAY_VARS)
-  if (t = strchr (name, '['))
-    {
-      if (assign_list)
-       {
-         report_error ("%s: cannot assign list to array member", name);
-         ASSIGN_RETURN (0);
-       }
-      entry = do_array_element_assignment (name, value);
-      if (entry == 0)
-        ASSIGN_RETURN (0);
-    }
-  else if (assign_list)
-    entry = assign_array_from_string (name, value);
-  else
-#endif /* ARRAY_VARS */
-  entry = bind_variable (name, value);
-
-  stupidly_hack_special_variables (name);
-
-  if (entry)
-    entry->attributes &= ~att_invisible;
-
-  /* Return 1 if the assignment seems to have been performed correctly. */
-  ASSIGN_RETURN (entry ? ((entry->attributes & att_readonly) == 0) : 0);
-}
-
-/* Perform the assignment statement in STRING, and expand the
-   right side by doing command and parameter expansion. */
-int
-do_assignment (string)
-     char *string;
-{
-  return do_assignment_internal (string, 1);
-}
-
-/* Given STRING, an assignment string, get the value of the right side
-   of the `=', and bind it to the left side.  Do not do command and
-   parameter substitution on the right hand side. */
-int
-do_assignment_no_expand (string)
-     char *string;
-{
-  return do_assignment_internal (string, 0);
-}
-
-/* Most of the substitutions must be done in parallel.  In order
-   to avoid using tons of unclear goto's, I have some functions
-   for manipulating malloc'ed strings.  They all take INDX, a
-   pointer to an integer which is the offset into the string
-   where manipulation is taking place.  They also take SIZE, a
-   pointer to an integer which is the current length of the
-   character array for this string. */
-
-/* Append SOURCE to TARGET at INDEX.  SIZE is the current amount
-   of space allocated to TARGET.  SOURCE can be NULL, in which
-   case nothing happens.  Gets rid of SOURCE by freeing it.
-   Returns TARGET in case the location has changed. */
-inline char *
-sub_append_string (source, target, indx, size)
-     char *source, *target;
-     int *indx, *size;
-{
-  if (source)
-    {
-      int srclen, n;
-
-      srclen = strlen (source);
-      if (srclen >= (int)(*size - *indx))
-       {
-         n = srclen + *indx;
-         n = (n + DEFAULT_ARRAY_SIZE) - (n % DEFAULT_ARRAY_SIZE);
-         target = xrealloc (target, (*size = n));
-       }
-
-      FASTCOPY (source, target + *indx, srclen);
-      *indx += srclen;
-      target[*indx] = '\0';
-
-      free (source);
-    }
-  return (target);
-}
-
-#if 0
-/* UNUSED */
-/* Append the textual representation of NUMBER to TARGET.
-   INDX and SIZE are as in SUB_APPEND_STRING. */
-char *
-sub_append_number (number, target, indx, size)
-     int number, *indx, *size;
-     char *target;
-{
-  char *temp;
-
-  temp = itos (number);
-  return (sub_append_string (temp, target, indx, size));
-}
-#endif
-
-/* Return the word list that corresponds to `$*'. */
-WORD_LIST *
-list_rest_of_args ()
-{
-  register WORD_LIST *list, *args;
-  int i;
-
-  /* Break out of the loop as soon as one of the dollar variables is null. */
-  for (i = 1, list = (WORD_LIST *)NULL; i < 10 && dollar_vars[i]; i++)
-    list = make_word_list (make_bare_word (dollar_vars[i]), list);
-
-  for (args = rest_of_args; args; args = args->next)
-    list = make_word_list (make_bare_word (args->word->word), list);
-
-  return (REVERSE_LIST (list, WORD_LIST *));
-}
-
-int
-number_of_args ()
-{
-  register WORD_LIST *list;
-  int n;
-
-  for (n = 0; n < 9 && dollar_vars[n+1]; n++)
-    ;
-  for (list = rest_of_args; list; list = list->next)
-    n++;
-  return n;
-}
-
-/* Make a single large string out of the dollar digit variables,
-   and the rest_of_args.  If DOLLAR_STAR is 1, then obey the special
-   case of "$*" with respect to IFS. */
-char *
-string_rest_of_args (dollar_star)
-     int dollar_star;
-{
-  register WORD_LIST *list;
-  char *string;
-
-  list = list_rest_of_args ();
-  string = dollar_star ? string_list_dollar_star (list) : string_list (list);
-  dispose_words (list);
-  return (string);
-}
-
-/***************************************************
- *                                                *
- *        Functions to Expand a String            *
- *                                                *
- ***************************************************/
-/* Call expand_word_internal to expand W and handle error returns.
-   A convenience function for functions that don't want to handle
-   any errors or free any memory before aborting. */
-static WORD_LIST *
-call_expand_word_internal (w, q, c, e)
-     WORD_DESC *w;
-     int q, *c, *e;
-{
-  WORD_LIST *result;
-
-  result = expand_word_internal (w, q, c, e);
-  if (result == &expand_word_error)
-    jump_to_top_level (DISCARD);
-  else if (result == &expand_word_fatal)
-    jump_to_top_level (FORCE_EOF);
-  else
-    return (result);
-}
-
-/* Perform parameter expansion, command substitution, and arithmetic
-   expansion on STRING, as if it were a word.  Leave the result quoted. */
-static WORD_LIST *
-expand_string_internal (string, quoted)
-     char *string;
-     int quoted;
-{
-  WORD_DESC td;
-  WORD_LIST *tresult;
-
-  if (string == 0 || *string == 0)
-    return ((WORD_LIST *)NULL);
-
-  bzero (&td, sizeof (td));
-  td.word = string;
-  tresult = call_expand_word_internal (&td, quoted, (int *)NULL, (int *)NULL);
-  return (tresult);
-}
-
-/* Expand STRING by performing parameter expansion, command substitution,
-   and arithmetic expansion.  Dequote the resulting WORD_LIST before
-   returning it, but do not perform word splitting.  The call to
-   remove_quoted_nulls () is in here because word splitting normally
-   takes care of quote removal. */
-WORD_LIST *
-expand_string_unsplit (string, quoted)
-     char *string;
-     int quoted;
-{
-  WORD_LIST *value;
-
-  if (!string || !*string)
-    return ((WORD_LIST *)NULL);
-
-  value = expand_string_internal (string, quoted);
-  if (value)
-    {
-#if 0
-      if (value->word)
-       remove_quoted_nulls (value->word->word);
-#endif
-      dequote_list (value);
-    }
-  return (value);
-}
-
-/* Expand STRING just as if you were expanding a word, but do not dequote
-   the resultant WORD_LIST.  This is called only from within this file,
-   and is used to correctly preserve quoted characters when expanding
-   things like ${1+"$@"}.  This does parameter expansion, command
-   subsitution, arithmetic expansion, and word splitting. */
-static WORD_LIST *
-expand_string_leave_quoted (string, quoted)
-     char *string;
-     int quoted;
-{
-  WORD_LIST *tlist;
-  WORD_LIST *tresult;
-
-  if (string == 0 || *string == '\0')
-    return ((WORD_LIST *)NULL);
-
-  tlist = expand_string_internal (string, quoted);
-
-  if (tlist)
-    {
-      tresult = word_list_split (tlist);
-      dispose_words (tlist);
-      return (tresult);
-    }
-  return ((WORD_LIST *)NULL);
-}
-
-/* This does not perform word splitting or dequote the WORD_LIST
-   it returns. */
-static WORD_LIST *
-expand_string_for_rhs (string, quoted, dollar_at_p, has_dollar_at)
-     char *string;
-     int quoted, *dollar_at_p, *has_dollar_at;
-{
-  WORD_DESC td;
-  WORD_LIST *tresult;
-
-  if (string == 0 || *string == '\0')
-    return (WORD_LIST *)NULL;
-
-  bzero (&td, sizeof (td));
-  td.word = string;
-  tresult = call_expand_word_internal (&td, quoted, dollar_at_p, has_dollar_at);
-  return (tresult);
-}
-    
-/* Expand STRING just as if you were expanding a word.  This also returns
-   a list of words.  Note that filename globbing is *NOT* done for word
-   or string expansion, just when the shell is expanding a command.  This
-   does parameter expansion, command substitution, arithmetic expansion,
-   and word splitting.  Dequote the resultant WORD_LIST before returning. */
-WORD_LIST *
-expand_string (string, quoted)
-     char *string;
-     int quoted;
-{
-  WORD_LIST *result;
-
-  if (!string || !*string)
-    return ((WORD_LIST *)NULL);
-
-  result = expand_string_leave_quoted (string, quoted);
-  return (result ? dequote_list (result) : result);
-}
-
-/***************************************************
- *                                                *
- *     Functions to handle quoting chars          *
- *                                                *
- ***************************************************/
-
-static WORD_LIST *
-dequote_list (list)
-     WORD_LIST *list;
-{
-  register char *s;
-  register WORD_LIST *tlist;
-
-  for (tlist = list; tlist; tlist = tlist->next)
-    {
-      s = dequote_string (tlist->word->word);
-      free (tlist->word->word);
-      tlist->word->word = s;
-    }
-  return list;
-}
-
-static char *
-make_quoted_char (c)
-     int c;
-{
-  char *temp;
-
-  temp = xmalloc (3);
-  if (c == 0)
-    {
-#if 0
-      temp[0] = CTLNUL;
-      temp[1] = '\0';
-#else
-      temp[0] = '\0';
-#endif
-    }
-  else
-    {
-      temp[0] = CTLESC;
-      temp[1] = c;
-      temp[2] = '\0';
-    }
-  return (temp);
-}
-
-/* Quote STRING.  Return a new string. */
-char *
-quote_string (string)
-     char *string;
-{
-  register char *t;
-  char *result;
-
-  if (*string == 0)
-    {
-      result = xmalloc (2);
-#if 0
-      result[0] = CTLNUL;
-      result[1] = '\0';
-#else
-      result[0] = '\0';
-#endif
-    }
-  else
-    {
-      result = xmalloc ((strlen (string) * 2) + 1);
-
-      for (t = result; *string; )
-       {
-         *t++ = CTLESC;
-         *t++ = *string++;
-       }
-      *t = '\0';
-    }
-  return (result);
-}
-
-/* De-quoted quoted characters in STRING. */
-char *
-dequote_string (string)
-     char *string;
-{
-  register char *t;
-  char *result;
-
-  result = xmalloc (strlen (string) + 1);
-
-#if 0
-  if (QUOTED_NULL (string))
-    {
-      result[0] = '\0';
-      return (result);
-    }
-#endif
-
-  /* If no character in the string can be quoted, don't bother examining
-     each character.  Just return a copy of the string passed to us. */
-  if (strchr (string, CTLESC) == NULL)         /* XXX */
-    {                                          /* XXX */
-      strcpy (result, string);                 /* XXX */
-      return (result);                         /* XXX */
-    }
-
-  for (t = result; *string; string++, t++)
-    {
-      if (*string == CTLESC)
-       {
-         string++;
-
-         if (!*string)
-           break;
-       }
-
-      *t = *string;
-    }
-
-  *t = '\0';
-  return (result);
-}
-
-/* Quote the entire WORD_LIST list. */
-static WORD_LIST *
-quote_list (list)
-     WORD_LIST *list;
-{
-  register WORD_LIST *w;
-  char *t;
-
-  for (w = list; w; w = w->next)
-    {
-      t = w->word->word;
-      w->word->word = quote_string (t);
-      free (t);
-      w->word->flags |= W_QUOTED;
-    }
-  return list;
-}
-
-/* **************************************************************** */
-/*                                                                 */
-/*                 Functions for Removing Patterns                 */
-/*                                                                 */
-/* **************************************************************** */
-
-/* Remove the portion of PARAM matched by PATTERN according to OP, where OP
-   can have one of 4 values:
-       RP_LONG_LEFT    remove longest matching portion at start of PARAM
-       RP_SHORT_LEFT   remove shortest matching portion at start of PARAM
-       RP_LONG_RIGHT   remove longest matching portion at end of PARAM
-       RP_SHORT_RIGHT  remove shortest matching portion at end of PARAM
-*/
-
-#define RP_LONG_LEFT   1
-#define RP_SHORT_LEFT  2
-#define RP_LONG_RIGHT  3
-#define RP_SHORT_RIGHT 4
-
-static char *
-remove_pattern (param, pattern, op)
-     char *param, *pattern;
-     int op;
-{
-  register int len;
-  register char *end;
-  register char *p, *ret, c;
-
-  if (param == NULL || *param == '\0')
-    return (param);
-  if (pattern == NULL || *pattern == '\0')     /* minor optimization */
-    return (savestring (param));
-
-  len = STRLEN (param);
-  end = param + len;
-
-  switch (op)
-    {
-      case RP_LONG_LEFT:       /* remove longest match at start */
-       for (p = end; p >= param; p--)
-         {
-           c = *p; *p = '\0';
-           if (fnmatch (pattern, param, 0) != FNM_NOMATCH)
-             {
-               *p = c;
-               return (savestring (p));
-             }
-           *p = c;
-         }
-       break;
-
-      case RP_SHORT_LEFT:      /* remove shortest match at start */
-       for (p = param; p <= end; p++)
-         {
-           c = *p; *p = '\0';
-           if (fnmatch (pattern, param, 0) != FNM_NOMATCH)
-             {
-               *p = c;
-               return (savestring (p));
-             }
-           *p = c;
-         }
-       break;
-
-      case RP_LONG_RIGHT:      /* remove longest match at end */
-       for (p = param; p <= end; p++)
-         {
-           if (fnmatch (pattern, p, 0) != FNM_NOMATCH)
-             {
-               c = *p; *p = '\0';
-               ret = savestring (param);
-               *p = c;
-               return (ret);
-             }
-         }
-       break;
-
-      case RP_SHORT_RIGHT:     /* remove shortest match at end */
-       for (p = end; p >= param; p--)
-         {
-           if (fnmatch (pattern, p, 0) != FNM_NOMATCH)
-             {
-               c = *p; *p = '\0';
-               ret = savestring (param);
-               *p = c;
-               return (ret);
-             }
-         }
-       break;
-    }
-  return (savestring (param)); /* no match, return original string */
-}
-
-/* Return 1 of the first character of STRING could match the first
-   character of pattern PAT.  Used to avoid n2 calls to fnmatch(). */
-static int
-match_pattern_char (pat, string)
-     char *pat, *string;
-{
-  register char *np;
-  int neg;
-  char c, c1;
-
-  if (*string == 0)
-    return (0);
-
-  switch (c = *pat++)
-    {
-    default:
-      return (*string == c);
-    case '\\':
-      return (*string == *pat);
-    case '?':
-    case '*':
-      return (1);
-    case '[':
-      for (np = pat; *np != ']'; np++);
-      if (*np == 0)
-        return (*string == '[');
-      if (neg = (*pat == '!' || *pat == '^'))
-       pat++;
-      for ( ; (c1 = *pat++) != ']'; )
-       {
-         if (c1 == '\\')
-           c1 = *pat++;
-         if (c1 == 0)
-           return (0);
-         if (*pat != '-' || pat[1] == '\0' || pat[1] == ']')
-           return (neg ? *string != c1 : *string == c1);
-         if (c1 <= *string && *string <= pat[1])
-           return (1);
-         pat += 2;
-       }
-    }
-}
-
-/* Match PAT anywhere in STRING and return the match boundaries.
-   This returns 1 in case of a successful match, 0 otherwise.  SP
-   and EP are pointers into the string where the match begins and
-   ends, respectively.  MTYPE controls what kind of match is attempted.
-   MATCH_BEG and MATCH_END anchor the match at the beginning and end
-   of the string, respectively.  The longest match is returned. */
-static int
-match_pattern (string, pat, mtype, sp, ep)
-     char *string, *pat;
-     int mtype;
-     char **sp, **ep;
-{
-  int c;
-  register char *p, *p1;
-  char *end;
-
-  if (string == 0 || *string == 0 || pat == 0 || *pat == 0)
-    return (0);
-
-  end = string + STRLEN (string);
-
-  switch (mtype)
-    {
-    case MATCH_ANY:
-      for (p = string; p <= end; p++)
-       {
-         if (match_pattern_char (pat, p))
-           {
-             for (p1 = end; p1 >= p; p1--)
-               {
-                 c = *p1; *p1 = '\0';
-                 if (fnmatch (pat, p, 0) == 0)
-                   {
-                     *p1 = c;
-                     *sp = p;
-                     *ep = p1;
-                     return 1;
-                   }
-                 *p1 = c;
-               }
-           }
-       }
-      return (0);
-
-    case MATCH_BEG:
-      if (match_pattern_char (pat, string) == 0)
-        return (0);
-      for (p = end; p >= string; p--)
-       {
-         c = *p; *p = '\0';
-         if (fnmatch (pat, string, 0) == 0)
-           {
-             *p = c;
-             *sp = string;
-             *ep = p;
-             return 1;
-           }
-         *p = c;
-       }
-      return (0);
-
-    case MATCH_END:
-      for (p = string; p <= end; p++)
-       if (fnmatch (pat, p, 0) == 0)
-         {
-           *sp = p;
-           *ep = end;
-           return 1;
-         }
-      return (0);
-    }
-
-  return (0);
-}
-
-/*******************************************
- *                                        *
- *     Functions to expand WORD_DESCs     *
- *                                        *
- *******************************************/
-
-/* Expand WORD, performing word splitting on the result.  This does
-   parameter expansion, command substitution, arithmetic expansion,
-   word splitting, and quote removal. */
-
-WORD_LIST *
-expand_word (word, quoted)
-     WORD_DESC *word;
-     int quoted;
-{
-  WORD_LIST *result, *tresult;
-
-  tresult = call_expand_word_internal (word, quoted, (int *)NULL, (int *)NULL);
-  result = word_list_split (tresult);
-  dispose_words (tresult);
-  return (result ? dequote_list (result) : result);
-}
-
-/* Expand WORD, but do not perform word splitting on the result.  This
-   does parameter expansion, command substitution, arithmetic expansion,
-   and quote removal. */
-WORD_LIST *
-expand_word_no_split (word, quoted)
-     WORD_DESC *word;
-     int quoted;
-{
-  WORD_LIST *result;
-
-  result = call_expand_word_internal (word, quoted, (int *)NULL, (int *)NULL);
-  return (result ? dequote_list (result) : result);
-}
-
-/* Perform shell expansions on WORD, but do not perform word splitting or
-   quote removal on the result. */
-WORD_LIST *
-expand_word_leave_quoted (word, quoted)
-     WORD_DESC *word;
-     int quoted;
-{
-  return (call_expand_word_internal (word, quoted, (int *)NULL, (int *)NULL));
-}
-
-/* Return the value of a positional parameter.  This handles values > 10. */
-char *
-get_dollar_var_value (ind)
-     int ind;
-{
-  char *temp;
-  WORD_LIST *p;
-
-  if (ind < 10)
-    temp = dollar_vars[ind] ? savestring (dollar_vars[ind]) : (char *)NULL;
-  else /* We want something like ${11} */
-    {
-      ind -= 10;
-      for (p = rest_of_args; p && ind--; p = p->next)
-        ;
-      temp = p ? savestring (p->word->word) : (char *)NULL;
-    }
-  return (temp);
-}
-
-#if defined (PROCESS_SUBSTITUTION)
-
-/* **************************************************************** */
-/*                                                               */
-/*                 Hacking Process Substitution                    */
-/*                                                               */
-/* **************************************************************** */
-
-#if !defined (HAVE_DEV_FD)
-/* Named pipes must be removed explicitly with `unlink'.  This keeps a list
-   of FIFOs the shell has open.  unlink_fifo_list will walk the list and
-   unlink all of them. add_fifo_list adds the name of an open FIFO to the
-   list.  NFIFO is a count of the number of FIFOs in the list. */
-#define FIFO_INCR 20
-extern char *mktemp ();
-
-static char **fifo_list = (char **)NULL;
-static int nfifo = 0;
-static int fifo_list_size = 0;
-
-static void
-add_fifo_list (pathname)
-     char *pathname;
-{
-  if (nfifo >= fifo_list_size - 1)
-    {
-      fifo_list_size += FIFO_INCR;
-      fifo_list = (char **)xrealloc (fifo_list,
-                                    fifo_list_size * sizeof (char *));
-    }
-
-  fifo_list[nfifo++] = savestring (pathname);
-}
-
-void
-unlink_fifo_list ()
-{
-  if (nfifo == 0)
-    return;
-
-  while (nfifo--)
-    {
-      unlink (fifo_list[nfifo]);
-      free (fifo_list[nfifo]);
-      fifo_list[nfifo] = (char *)NULL;
-    }
-  nfifo = 0;
-}
-
-static char *
-make_named_pipe ()
-{
-  char *tname;
-
-  tname = mktemp (savestring ("/tmp/sh-np-XXXXXX"));
-  if (mkfifo (tname, 0666) < 0)
-    {
-      free (tname);
-      return ((char *)NULL);
-    }
-
-  add_fifo_list (tname);
-  return (tname);
-}
-
-#else /* HAVE_DEV_FD */
-
-/* DEV_FD_LIST is a bitmap of file descriptors attached to pipes the shell
-   has open to children.  NFDS is a count of the number of bits currently
-   set in DEV_FD_LIST.  TOTFDS is a count of the highest possible number
-   of open files. */
-static char *dev_fd_list = (char *)NULL;
-static int nfds = 0;
-static int totfds;     /* The highest possible number of open files. */
-
-static void
-add_fifo_list (fd)
-     int fd;
-{
-  if (!dev_fd_list || fd >= totfds)
-    {
-      int zero;
-
-      totfds = getdtablesize ();
-      if (totfds < 0 || totfds > 256)
-       totfds = 256;
-      if (fd > totfds)
-       totfds = fd + 2;
-
-      zero = dev_fd_list == (char *) NULL;
-      dev_fd_list = xrealloc (dev_fd_list, totfds);
-      if (zero)
-       bzero (dev_fd_list, totfds);
-      /* XXX - should zero out new portion of list here - XXX */
-    }
-
-  dev_fd_list[fd] = 1;
-  nfds++;
-}
-
-void
-unlink_fifo_list ()
-{
-  register int i;
-
-  if (nfds == 0)
-    return;
-
-  for (i = 0; nfds && i < totfds; i++)
-    if (dev_fd_list[i])
-      {
-       close (i);
-       dev_fd_list[i] = 0;
-       nfds--;
-      }
-
-  nfds = 0;
-}
-
-#if defined (NOTDEF)
-print_dev_fd_list ()
-{
-  register int i;
-
-  fprintf (stderr, "pid %d: dev_fd_list:", getpid ());
-  fflush (stderr);
-
-  for (i = 0; i < totfds; i++)
-    {
-      if (dev_fd_list[i])
-       fprintf (stderr, " %d", i);
-    }
-  fprintf (stderr, "\n");
-}
-#endif /* NOTDEF */
-
-static char *
-make_dev_fd_filename (fd)
-     int fd;
-{
-  char *ret;
-
-  ret = xmalloc (16);
-  sprintf (ret, "/dev/fd/%d", fd);
-  add_fifo_list (fd);
-  return (ret);
-}
-
-#endif /* HAVE_DEV_FD */
-
-/* Return a filename that will open a connection to the process defined by
-   executing STRING.  HAVE_DEV_FD, if defined, means open a pipe and return
-   a filename in /dev/fd corresponding to a descriptor that is one of the
-   ends of the pipe.  If not defined, we use named pipes on systems that have
-   them.  Systems without /dev/fd and named pipes are out of luck.
-
-   OPEN_FOR_READ_IN_CHILD, if 1, means open the named pipe for reading or
-   use the read end of the pipe and dup that file descriptor to fd 0 in
-   the child.  If OPEN_FOR_READ_IN_CHILD is 0, we open the named pipe for
-   writing or use the write end of the pipe in the child, and dup that
-   file descriptor to fd 1 in the child.  The parent does the opposite. */
-
-static char *
-process_substitute (string, open_for_read_in_child)
-     char *string;
-     int open_for_read_in_child;
-{
-  char *pathname;
-  int fd, result;
-  pid_t old_pid, pid;
-#if defined (HAVE_DEV_FD)
-  int parent_pipe_fd, child_pipe_fd;
-  int fildes[2];
-#endif /* HAVE_DEV_FD */
-#if defined (JOB_CONTROL)
-  pid_t old_pipeline_pgrp;
-#endif  
-
-  if (!string || !*string)
-    return ((char *)NULL);
-
-#if !defined (HAVE_DEV_FD)
-  pathname = make_named_pipe ();
-#else /* HAVE_DEV_FD */
-  if (pipe (fildes) < 0)
-    {
-      internal_error ("can't make pipes for process substitution: %s",
-       strerror (errno));
-      return ((char *)NULL);
-    }
-  /* If OPEN_FOR_READ_IN_CHILD == 1, we want to use the write end of
-     the pipe in the parent, otherwise the read end. */
-  parent_pipe_fd = fildes[open_for_read_in_child];
-  child_pipe_fd = fildes[1 - open_for_read_in_child];
-  pathname = make_dev_fd_filename (parent_pipe_fd);
-#endif /* HAVE_DEV_FD */
-
-  if (!pathname)
-    {
-      internal_error ("cannot make pipe for process subsitution: %s",
-       strerror (errno));
-      return ((char *)NULL);
-    }
-
-  old_pid = last_made_pid;
-
-#if defined (JOB_CONTROL)
-  old_pipeline_pgrp = pipeline_pgrp;
-  pipeline_pgrp = shell_pgrp;
-  cleanup_the_pipeline ();
-#endif /* JOB_CONTROL */
-
-  pid = make_child ((char *)NULL, 1);
-  if (pid == 0)
-    {
-      reset_terminating_signals ();    /* XXX */
-      /* Cancel traps, in trap.c. */
-      restore_original_signals ();
-      setup_async_signals ();
-      subshell_environment++;
-    }
-
-#if defined (JOB_CONTROL)
-  set_sigchld_handler ();
-  stop_making_children ();
-  pipeline_pgrp = old_pipeline_pgrp;
-#endif /* JOB_CONTROL */
-
-  if (pid < 0)
-    {
-      internal_error ("cannot make a child for process substitution: %s",
-       strerror (errno));
-      free (pathname);
-#if defined (HAVE_DEV_FD)
-      close (parent_pipe_fd);
-      close (child_pipe_fd);
-#endif /* HAVE_DEV_FD */
-      return ((char *)NULL);
-    }
-
-  if (pid > 0)
-    {
-      last_made_pid = old_pid;
-
-#if defined (JOB_CONTROL) && defined (PGRP_PIPE)
-      close_pgrp_pipe ();
-#endif /* JOB_CONTROL && PGRP_PIPE */
-
-#if defined (HAVE_DEV_FD)
-      close (child_pipe_fd);
-#endif /* HAVE_DEV_FD */
-
-      return (pathname);
-    }
-
-  set_sigint_handler ();
-
-#if defined (JOB_CONTROL)
-  set_job_control (0);
-#endif /* JOB_CONTROL */
-
-#if !defined (HAVE_DEV_FD)
-  /* Open the named pipe in the child. */
-  fd = open (pathname, open_for_read_in_child ? O_RDONLY : O_WRONLY);
-  if (fd < 0)
-    {
-      internal_error ("cannot open named pipe %s for %s: %s", pathname,
-       open_for_read_in_child ? "reading" : "writing", strerror (errno));
-      exit (127);
-    }
-#else /* HAVE_DEV_FD */
-  fd = child_pipe_fd;
-#endif /* HAVE_DEV_FD */
-
-  if (dup2 (fd, open_for_read_in_child ? 0 : 1) < 0)
-    {
-      internal_error ("cannot duplicate named pipe %s as fd %d: %s",
-       pathname, open_for_read_in_child ? 0 : 1, strerror (errno));
-      exit (127);
-    }
-
-  close (fd);
-
-  /* Need to close any files that this process has open to pipes inherited
-     from its parent. */
-  if (current_fds_to_close)
-    {
-      close_fd_bitmap (current_fds_to_close);
-      current_fds_to_close = (struct fd_bitmap *)NULL;
-    }
-
-#if defined (HAVE_DEV_FD)
-  /* Make sure we close the parent's end of the pipe and clear the slot
-     in the fd list so it is not closed later, if reallocated by, for
-     instance, pipe(2). */
-  close (parent_pipe_fd);
-  dev_fd_list[parent_pipe_fd] = 0;
-#endif /* HAVE_DEV_FD */
-
-  result = parse_and_execute (string, "process substitution", 0);
-
-#if !defined (HAVE_DEV_FD)
-  /* Make sure we close the named pipe in the child before we exit. */
-  close (open_for_read_in_child ? 0 : 1);
-#endif /* !HAVE_DEV_FD */
-
-  exit (result);
-  /*NOTREACHED*/
-}
-#endif /* PROCESS_SUBSTITUTION */
-
-/* Perform command substitution on STRING.  This returns a string,
-   possibly quoted. */
-static char *
-command_substitute (string, quoted)
-     char *string;
-     int quoted;
-{
-  pid_t pid, old_pid, old_pipeline_pgrp;
-  char *istring;
-  int istring_index, istring_size, c, result, fildes[2];
-  FILE *istream;
-
-  istring_index = istring_size = 0;
-
-  /* Don't fork () if there is no need to.  In the case of no command to
-     run, just return NULL. */
-  if (!string || !*string || (string[0] == '\n' && !string[1]))
-    return ((char *)NULL);
-
-  /* Pipe the output of executing STRING into the current shell. */
-  if (pipe (fildes) < 0)
-    {
-      internal_error ("Can't make pipes for command substitution!");
-      goto error_exit;
-    }
-
-  old_pid = last_made_pid;
-#if defined (JOB_CONTROL)
-  old_pipeline_pgrp = pipeline_pgrp;
-  pipeline_pgrp = shell_pgrp;
-  cleanup_the_pipeline ();
-#endif
-
-  istring= (char *)NULL;
-  pid = make_child ((char *)NULL, 0);
-  if (pid == 0)
-    /* Reset the signal handlers in the child, but don't free the
-       trap strings. */
-    reset_signal_handlers ();
-
-#if defined (JOB_CONTROL)
-  set_sigchld_handler ();
-  stop_making_children ();
-  pipeline_pgrp = old_pipeline_pgrp;
-#endif /* JOB_CONTROL */
-
-  if (pid < 0)
-    {
-      internal_error ("Can't make a child for command substitution: %s",
-       strerror (errno));
-    error_exit:
-
-      FREE (istring);
-      close (fildes[0]);
-      close (fildes[1]);
-      return ((char *)NULL);
-    }
-
-  if (pid == 0)
-    {
-      set_sigint_handler ();   /* XXX */
-#if defined (JOB_CONTROL)
-      set_job_control (0);
-#endif
-      if (dup2 (fildes[1], 1) < 0)
-       {
-         internal_error
-           ("command_substitute: cannot duplicate pipe as fd 1: %s",
-            strerror (errno));
-         exit (EXECUTION_FAILURE);
-       }
-
-      /* If standard output is closed in the parent shell
-        (such as after `exec >&-'), file descriptor 1 will be
-        the lowest available file descriptor, and end up in
-        fildes[0].  This can happen for stdin and stderr as well,
-        but stdout is more important -- it will cause no output
-        to be generated from this command. */
-      if ((fildes[1] != fileno (stdin)) &&
-         (fildes[1] != fileno (stdout)) &&
-         (fildes[1] != fileno (stderr)))
-       close (fildes[1]);
-
-      if ((fildes[0] != fileno (stdin)) &&
-         (fildes[0] != fileno (stdout)) &&
-         (fildes[0] != fileno (stderr)))
-       close (fildes[0]);
-
-      /* The currently executing shell is not interactive. */
-      interactive = 0;
-
-      /* Command substitution does not inherit the -e flag. */
-      exit_immediately_on_error = 0;
-
-      remove_quoted_escapes (string);
-
-      startup_state = 2;       /* see if we can avoid a fork */
-      /* Give command substitution a place to jump back to on failure,
-        so we don't go back up to main (). */
-      result = setjmp (top_level);
-
-      if (result == EXITPROG)
-       exit (last_command_exit_value);
-      else if (result)
-       exit (EXECUTION_FAILURE);
-      else
-       exit (parse_and_execute (string, "command substitution", -1));
-    }
-  else
-    {
-      istream = fdopen (fildes[0], "r");
-
-#if defined (JOB_CONTROL) && defined (PGRP_PIPE)
-      close_pgrp_pipe ();
-#endif /* JOB_CONTROL && PGRP_PIPE */
-
-      close (fildes[1]);
-
-      if (!istream)
-       {
-         internal_error ("Can't reopen pipe to command substitution (fd %d): %s",
-                       fildes[0], strerror (errno));
-         goto error_exit;
-       }
-
-      /* Read the output of the command through the pipe. */
-      while (1)
-       {
-#if !defined (HAVE_RESTARTABLE_SYSCALLS)
-         c = getc_with_restart (istream);
-#else
-         c = getc (istream);
-#endif /* HAVE_RESTARTABLE_SYSCALLS */
-
-         if (c == EOF)
-           break;
-
-         /* Add the character to ISTRING. */
-         if (istring_index + 2 >= istring_size)
-           {
-             while (istring_index + 2 >= istring_size)
-               istring_size += DEFAULT_ARRAY_SIZE;
-             istring = xrealloc (istring, istring_size);
-           }
-
-         if ((quoted & (Q_HERE_DOCUMENT|Q_DOUBLE_QUOTES)) || c == CTLESC /* || c == CTLNUL */)
-           istring[istring_index++] = CTLESC;
-
-         istring[istring_index++] = c;
-       }
-
-      if (istring)
-       istring[istring_index] = '\0';
-
-      fclose (istream);
-      close (fildes[0]);
-
-      last_command_exit_value = wait_for (pid);
-      last_command_subst_pid = pid;
-      last_made_pid = old_pid;
-
-#if defined (JOB_CONTROL)
-      /* If last_command_exit_value > 128, then the substituted command
-        was terminated by a signal.  If that signal was SIGINT, then send
-        SIGINT to ourselves.  This will break out of loops, for instance. */
-      if (last_command_exit_value == (128 + SIGINT))
-       kill (getpid (), SIGINT);
-
-      /* wait_for gives the terminal back to shell_pgrp.  If some other
-        process group should have it, give it away to that group here. */
-      if (interactive && pipeline_pgrp != (pid_t)0)
-       give_terminal_to (pipeline_pgrp);
-#endif /* JOB_CONTROL */
-
-      /* If we read no output, just return now and save ourselves some
-        trouble. */
-      if (istring_index == 0)
-       goto error_exit;
-
-      /* Strip trailing newlines from the output of the command. */
-      if (quoted & (Q_HERE_DOCUMENT|Q_DOUBLE_QUOTES))
-       {
-         while (istring_index > 0)
-           {
-             if (istring[istring_index - 1] == '\n')
-               {
-                 --istring_index;
-
-                 /* If the newline was quoted, remove the quoting char. */
-                 if (istring[istring_index - 1] == CTLESC)
-                   --istring_index;
-               }
-             else
-               break;
-           }
-         istring[istring_index] = '\0';
-       }
-      else
-       strip_trailing (istring, 1);
-
-      return (istring);
-    }
-}
-
-/********************************************************
- *                                                     *
- *     Utility functions for parameter expansion       *
- *                                                     *
- ********************************************************/
-
-static int
-getpatspec (c, value)
-     int c;
-     char *value;
-{
-  if (c == '#')
-    return ((*value == '#') ? RP_LONG_LEFT : RP_SHORT_LEFT);
-  else /* c == '%' */
-    return ((*value == '%') ? RP_LONG_RIGHT : RP_SHORT_RIGHT);
-}
-
-/* Posix.2 says that the WORD should be run through tilde expansion,
-   parameter expansion, command substitution and arithmetic expansion.
-   This leaves the result quoted, so quote_string_for_globbing () has
-   to be called to fix it up for fnmatch ().  If QUOTED is non-zero,
-   it means that the entire expression was enclosed in double quotes.
-   This means that quoting characters in the pattern do not make any
-   special pattern characters quoted.  For example, the `*' in the
-   following retains its special meaning: "${foo#'*'}". */
-static char *
-getpattern (value, quoted, expandpat)
-     char *value;
-     int quoted, expandpat;
-{
-  char *pat, *tword;
-  WORD_LIST *l;
-  int i;
-
-  tword = strchr (value, '~') ? bash_tilde_expand (value) : savestring (value);
-
-  /* expand_string_internal () leaves WORD quoted and does not perform
-     word splitting. */
-  if (expandpat && (quoted & (Q_HERE_DOCUMENT|Q_DOUBLE_QUOTES)) && *tword)
-    {
-      i = 0;
-      pat = string_extract_double_quoted (tword, &i, 1);
-      free (tword);
-      tword = pat;
-    }
-
-  /* There is a problem here:  how to handle single or double quotes in the
-     pattern string when the whole expression is between double quotes? */
-#if 0
-  l = *tword ? expand_string_for_rhs (tword, quoted, (int *)NULL, (int *)NULL)
-#else
-  l = *tword ? expand_string_for_rhs (tword,
-                                     (quoted & (Q_HERE_DOCUMENT|Q_DOUBLE_QUOTES)) ? Q_NOQUOTE : quoted,
-                                     (int *)NULL, (int *)NULL)
-#endif
-            : (WORD_LIST *)0;
-  free (tword);
-  pat = string_list (l);
-  dispose_words (l);
-  if (pat)
-    {
-      tword = quote_string_for_globbing (pat, 1);
-      free (pat);
-      pat = tword;
-    }
-  return (pat);
-}
-
-/* Handle removing a pattern from a string as a result of ${name%[%]value}
-   or ${name#[#]value}. */
-static char *
-parameter_brace_remove_pattern (value, temp, c, quoted)
-     char *value, *temp;
-     int c, quoted;
-{
-  int patspec;
-  char *pattern, *tword;
-
-  patspec = getpatspec (c, value);
-  if (patspec == RP_LONG_LEFT || patspec == RP_LONG_RIGHT)
-    value++;
-
-  pattern = getpattern (value, quoted, 1);
-
-  tword = remove_pattern (temp, pattern, patspec);
-
-  FREE (pattern);
-  return (tword);
-}
-
-static char *
-list_remove_pattern (list, pattern, patspec, type, quoted)
-     WORD_LIST *list;
-     char *pattern;
-     int patspec, type, quoted;
-{
-  WORD_LIST *new, *l;
-  WORD_DESC *w;
-  char *tword;
-
-  for (new = (WORD_LIST *)NULL, l = list; l; l = l->next)
-    {
-      tword = remove_pattern (l->word->word, pattern, patspec);
-      w = make_bare_word (tword);
-      new = make_word_list (w, new);
-    }
-
-  l = REVERSE_LIST (new, WORD_LIST *);
-  if (type == '*')
-    tword = (quoted & (Q_HERE_DOCUMENT|Q_DOUBLE_QUOTES)) ? string_list_dollar_star (l) : string_list (l);
-  else
-    tword = string_list ((quoted & (Q_HERE_DOCUMENT|Q_DOUBLE_QUOTES)) ? quote_list (l) : l);
-
-  dispose_words (l);
-  return (tword);
-}
-
-static char *
-parameter_list_remove_pattern (value, type, c, quoted)
-     char *value;
-     int type, c, quoted;
-{
-  int patspec;
-  char *pattern;
-
-  patspec = getpatspec (c, value);
-  if (patspec == RP_LONG_LEFT || patspec == RP_LONG_RIGHT)
-    value++;
-
-  pattern = getpattern (value, quoted, 1);
-
-  return (list_remove_pattern (list_rest_of_args (), pattern, patspec, type, quoted));
-}
-
-#if defined (ARRAY_VARS)
-static char *
-array_remove_pattern (value, aspec, c, quoted)
-     char *value, *aspec;
-     int c, quoted;
-{
-  SHELL_VAR *var;
-  int len, ind, patspec;
-  char *ret, *t, *pattern;
-  WORD_LIST *l;
-
-  var = array_variable_part (aspec, &t, &len);
-  if (var == 0)
-    return ((char *)NULL);
-
-  patspec = getpatspec (c, value);
-  if (patspec == RP_LONG_LEFT || patspec == RP_LONG_RIGHT)
-    value++;
-
-  pattern = getpattern (value, quoted, 1);
-
-  if (ALL_ELEMENT_SUB (t[0]) && t[1] == ']')
-    {
-      if (array_p (var) == 0)
-        {
-          report_error ("%s: bad array subscript", aspec);
-          return ((char *)NULL);
-        }
-      l = array_to_word_list (array_cell (var));
-      if (l == 0)
-        return ((char *)NULL);
-      ret = list_remove_pattern (l, pattern, patspec, t[0], quoted);
-      dispose_words (l);
-    }
-  else
-    {
-      ind = array_expand_index (t, len);
-      if (ind < 0)
-       {
-         report_error ("%s: bad array subscript", aspec);
-         return ((char *)NULL);
-       }
-      if (array_p (var) == 0 && ind != 0)
-       return ((char *)NULL);
-
-      t = array_p (var) ? array_reference (array_cell (var), ind) : value_cell (var);
-      ret = remove_pattern (t, pattern, patspec);
-      if (ret)
-       quote_escapes (ret);
-    }
-  return ret;
-}
-
-int
-valid_array_reference (name)
-     char *name;
-{
-  char *t;
-  int r, len;
-
-  t = strchr (name, '[');
-  if (t)
-    {
-      *t = '\0';
-      r = legal_identifier (name);
-      *t = '[';
-      if (r == 0)
-       return 0;
-      /* Check for a properly-terminated non-blank subscript. */
-      len = skipsubscript (t, 0);
-      if (t[len] != ']' || len == 1)
-       return 0;
-      for (r = 1; r < len; r++)
-       if (whitespace (t[r]) == 0)
-         return 1;
-      return 0;
-    }
-  return 0;
-}
-
-/* Expand the array index beginning at S and extending LEN characters. */
-int
-array_expand_index (s, len)
-     char *s;
-     int len;
-{
-  char *exp, *t;
-  int val;
-
-  exp = xmalloc (len);
-  strncpy (exp, s, len - 1);
-  exp[len - 1] = '\0';
-  t = maybe_expand_string (exp, 0, expand_string);
-  this_command_name = (char *)NULL;
-  val = evalexp (t);
-  free (t);
-  free (exp);
-  return val;
-}
-
-/* Return the variable specified by S without any subscript.  If non-null,
-   return the index of the start of the subscript in *SUBP.  If non-null,
-   the length of the subscript is returned in *LENP. */
-SHELL_VAR *
-array_variable_part (s, subp, lenp)
-     char *s, **subp;
-     int *lenp;
-{
-  char *t;
-  int ind, ni;
-  SHELL_VAR *var;
-
-  t = strchr (s, '[');
-  ind = t - s;
-  ni = skipsubscript (s, ind);
-  if (ni <= ind + 1 || s[ni] != ']')
-    {
-      report_error ("%s: bad array subscript", s);
-      return ((SHELL_VAR *)NULL);
-    }
-
-  *t = '\0';
-  var = find_variable (s);
-  *t++ = '[';
-
-  if (subp)
-    *subp = t;
-  if (lenp)
-    *lenp = ni - ind;
-  return var;
-}
-
-static char *
-array_value_internal (s, quoted, allow_all)
-     char *s;
-     int quoted, allow_all;
-{
-  int len, ind;
-  char *retval, *t;
-  WORD_LIST *l;
-  SHELL_VAR *var;
-
-  var = array_variable_part (s, &t, &len);
-
-  if (var == 0)
-    return (char *)NULL;
-
-  if (ALL_ELEMENT_SUB (t[0]) && t[1] == ']')
-    {
-      if (array_p (var) == 0 || allow_all == 0)
-        {
-          report_error ("%s: bad array subscript", s);
-          return ((char *)NULL);
-        }
-      l = array_to_word_list (array_cell (var));
-      if (l == (WORD_LIST *)NULL)
-       return ((char *) NULL);
-
-      if (t[0] == '*')         /* ${name[*]} */
-       retval = (quoted & (Q_HERE_DOCUMENT|Q_DOUBLE_QUOTES)) ? string_list_dollar_star (l) : string_list (l);
-      else                     /* ${name[@]} */
-       retval = string_list ((quoted & (Q_HERE_DOCUMENT|Q_DOUBLE_QUOTES)) ? quote_list (l) : l);
-
-      dispose_words (l);
-    }
-  else
-    {
-      ind = array_expand_index (t, len);
-      if (ind < 0)
-       {
-         report_error ("%s: bad array subscript", var->name);
-         return ((char *)NULL);
-       }
-      if (array_p (var) == 0)
-        return (ind == 0 ? value_cell (var) : (char *)NULL);
-      retval = array_reference (array_cell (var), ind);
-      if (retval)
-       retval = quote_escapes (retval);
-    }
-
-  return retval;
-}
-
-static char *
-array_value (s, quoted)
-     char *s;
-     int quoted;
-{
-  return (array_value_internal (s, quoted, 1));
-}
-
-/* Return the value of the array indexing expression S as a single string.
-   If ALLOW_ALL is 0, do not allow `@' and `*' subscripts.  This is used
-   by other parts of the shell such as the arithmetic expression evaluator
-   in expr.c. */
-char *
-get_array_value (s, allow_all)
-     char *s;
-     int allow_all;
-{
-  return (array_value_internal (s, 0, allow_all));
-}
-
-static int
-array_length_reference (s)
-     char *s;
-{
-  int ind, len;
-  char *t;
-  ARRAY *array;
-  SHELL_VAR *var;
-
-  var = array_variable_part (s, &t, &len);
-
-  if (var == 0 || array_p (var) == 0)
-    return (0);
-
-  array = array_cell (var);
-
-  if (ALL_ELEMENT_SUB (t[0]) && t[1] == ']')
-    return (array_num_elements (array));
-
-  ind = array_expand_index (t, len);
-  if (ind < 0)
-    {
-      report_error ("%s: bad array subscript", t);
-      return (0);
-    }
-  t = array_reference (array, ind);
-  len = STRLEN (t);
-
-  return (len);
-}
-#endif /* ARRAY_VARS */
-
-static int
-valid_brace_expansion_word (name, var_is_special)
-     char *name;
-     int var_is_special;
-{
-  if (digit (*name) && all_digits (name))
-    return 1;
-  else if (var_is_special)
-    return 1;
-#if defined (ARRAY_VARS)
-  else if (valid_array_reference (name))
-    return 1;
-#endif /* ARRAY_VARS */
-  else if (legal_identifier (name))
-    return 1;
-  else
-    return 0;
-}
-
-/* Parameter expand NAME, and return a new string which is the expansion,
-   or NULL if there was no expansion.
-   VAR_IS_SPECIAL is non-zero if NAME is one of the special variables in
-   the shell, e.g., "@", "$", "*", etc.  QUOTED, if non-zero, means that
-   NAME was found inside of a double-quoted expression. */
-static char *
-parameter_brace_expand_word (name, var_is_special, quoted)
-     char *name;
-     int var_is_special, quoted;
-{
-  char *temp, *tt;
-  int arg_index;
-  SHELL_VAR *var;
-  WORD_LIST *l;
-
-  /* Handle multiple digit arguments, as in ${11}. */
-  if (digit (*name))
-    {
-      arg_index = atoi (name);
-      temp = get_dollar_var_value (arg_index);
-    }
-  else if (var_is_special)      /* ${@} */
-    {
-      tt = xmalloc (2 + strlen (name));
-      tt[0] = '$';
-      strcpy (tt + 1, name);
-      l = expand_string_leave_quoted (tt, quoted);
-      free (tt);
-      temp = string_list (l);
-      dispose_words (l);
-    }
-#if defined (ARRAY_VARS)
-  else if (valid_array_reference (name))
-    {
-      temp = array_value (name, quoted);
-    }
-#endif
-  else if (var = find_variable (name))
-    {
-      if (var && invisible_p (var) == 0)
-        {
-#if defined (ARRAY_VARS)
-         temp = array_p (var) ? array_reference (array_cell (var), 0) : value_cell (var);
-#else
-         temp = value_cell (var);
-#endif
-
-         if (temp)
-           temp = quote_escapes (temp);
-        }
-      else
-       temp = (char *)NULL;
-    }
-  else
-    temp = (char *)NULL;
-
-  return (temp);
-}
-
-/* Expand an indirect reference to a variable: ${!NAME} expands to the
-   value of the variable whose name is the value of NAME. */
-static char *
-parameter_brace_expand_indir (name, var_is_special, quoted)
-     char *name;
-     int var_is_special, quoted;
-{
-  char *temp, *t;
-
-  t = parameter_brace_expand_word (name, var_is_special, quoted);
-  if (t == 0)
-    return (t);
-  temp = parameter_brace_expand_word (t, t[0] == '@' && t[1] == '\0', quoted);
-  free (t);
-  return temp;
-}
-
-/* Expand the right side of a parameter expansion of the form ${NAMEcVALUE},
-   depending on the value of C, the separating character.  C can be one of
-   "-", "+", or "=".  QUOTED is true if the entire brace expression occurs
-   between double quotes. */
-static char *
-parameter_brace_expand_rhs (name, value, c, quoted, qdollaratp, hasdollarat)
-     char *name, *value;
-     int c, quoted, *qdollaratp, *hasdollarat;
-{
-  WORD_LIST *l;
-  char *t, *t1, *temp;
-  int hasdol;
-
-  temp = (*value == '~' || (strchr (value, '~') && unquoted_substring ("=~", value)))
-        ? bash_tilde_expand (value)
-       : savestring (value);
-
-  /* If the entire expression is between double quotes, we want to treat
-     the value as a double-quoted string, with the exception that we strip
-     embedded unescaped double quotes. */
-  if ((quoted & (Q_HERE_DOCUMENT|Q_DOUBLE_QUOTES)) && *temp)
-    {
-      hasdol = 0;
-      t = string_extract_double_quoted (temp, &hasdol, 1);
-      free (temp);
-      temp = t;
-    }
-    
-  hasdol = 0;
-  /* XXX was 0 not quoted */
-  l = *temp ? expand_string_for_rhs (temp, quoted, &hasdol, (int *)NULL)
-           : (WORD_LIST *)0;
-  if (hasdollarat)
-    *hasdollarat = hasdol || (l && l->next);
-  free (temp);
-  if (l)
-    {
-      /* The expansion of TEMP returned something.  We need to treat things
-         slightly differently if HASDOL is non-zero. */
-      temp = string_list (l);
-      /* If l->next is not null, we know that TEMP contained "$@", since that
-        is the only expansion that creates more than one word. */
-      if ((hasdol && quoted) || l->next)
-       *qdollaratp = 1;
-      dispose_words (l);
-    }
-  else if ((quoted & (Q_HERE_DOCUMENT|Q_DOUBLE_QUOTES)) && hasdol)
-    {
-      /* The brace expansion occurred between double quotes and there was 
-        a $@ in TEMP.  It does not matter if the $@ is quoted, as long as
-        it does not expand to anything.  In this case, we want to return
-        a quoted empty string. */
-      temp = xmalloc (2);
-#if 0
-      temp[0] = CTLNUL;
-      temp[1] = '\0';
-#else
-      temp[0] = '\0';
-#endif
-    }
-  else
-    temp = (char *)NULL;
-
-  if (c == '-' || c == '+')
-    return (temp);
-
-  /* c == '=' */
-  t = temp ? savestring (temp) : savestring ("");
-  t1 = dequote_string (t);
-  free (t);
-  bind_variable (name, t1);
-  free (t1);
-  return (temp);
-}
-
-/* Deal with the right hand side of a ${name:?value} expansion in the case
-   that NAME is null or not set.  If VALUE is non-null it is expanded and
-   used as the error message to print, otherwise a standard message is
-   printed. */
-static void
-parameter_brace_expand_error (name, value)
-     char *name, *value;
-{
-  WORD_LIST *l;
-  char *temp;
-
-  if (value && *value)
-    {
-      l = expand_string (value, 0);
-      temp =  string_list (l);
-      report_error ("%s: %s", name, temp ? temp : value);
-      FREE (temp);
-      dispose_words (l);
-    }
-  else
-    report_error ("%s: parameter null or not set", name);
-
-  /* Free the data we have allocated during this expansion, since we
-     are about to longjmp out. */
-  free (name);
-  FREE (value);
-}
-
-/* Return 1 if NAME is something for which parameter_brace_expand_length is
-   OK to do. */
-static int
-valid_length_expression (name)
-     char *name;
-{
-  return (!name[1] ||                                          /* ${#} */
-         ((name[1] == '@' || name[1] == '*') && !name[2]) ||   /* ${#@}, ${#*} */
-         (digit (name[1]) && all_digits (name + 1)) ||         /* ${#11} */
-#if defined (ARRAY_VARS)
-         valid_array_reference (name + 1) ||                   /* ${#a[7]} */
-#endif
-         legal_identifier (name + 1));                         /* ${#PS1} */
-}
-
-/* Handle the parameter brace expansion that requires us to return the
-   length of a parameter. */
-static int
-parameter_brace_expand_length (name)
-     char *name;
-{
-  char *t, *newname;
-  int number;
-  WORD_LIST *list;
-#if defined (ARRAY_VARS)
-  SHELL_VAR *var;
-#endif
-
-  if (name[1] == '\0')                 /* ${#} */
-    number = number_of_args ();
-#if defined (ARRAY_VARS)
-  else if (valid_array_reference (name + 1))
-    number = array_length_reference (name + 1);
-#endif /* ARRAY_VARS */
-  else if (name[1] != '*' && name[1] != '@')
-    {
-      number = 0;
-
-      if (digit (name[1]))             /* ${#1} */
-       {
-         t = get_dollar_var_value (atoi (name + 1));
-         number = STRLEN (t);
-         FREE (t);
-       }
-#if defined (ARRAY_VARS)
-      else if ((var = find_variable (name + 1)) && array_p (var))
-       {
-         t = array_reference (array_cell (var), 0);
-         number = STRLEN (t);
-       }
-#endif
-      else                             /* ${#PS1} */
-       {
-         newname = savestring (name);
-         newname[0] = '$';
-         list = expand_string (newname, 0);
-         t = list ? string_list (list) : (char *)NULL;
-         free (newname);
-         if (list)
-           dispose_words (list);
-
-         number = STRLEN (t);
-         FREE (t);
-       }
-    }
-  else                                 /* ${#@} and ${#*} */
-    number = number_of_args ();
-
-  return (number);
-}
-
-/* Verify and limit the start and end of the desired substring.  If
-   VTYPE == 0, a regular shell variable is being used; if it is 1,
-   then the positional paramters are being used; if it is 2, then
-   VALUE is really a pointer to an array variable that should be used. */
-static int
-verify_substring_values (value, substr, vtype, e1p, e2p)
-     char *value, *substr;
-     int vtype, *e1p, *e2p;
-{
-  char *t, *temp1; 
-  int len;
-#if defined (ARRAY_VARS)
- ARRAY *a;
-#endif  
-
-  t = strchr (substr, ':');
-  if (t)
-    *t = '\0';
-  temp1 = maybe_expand_string (substr, 1, expand_string);
-  *e1p = evalexp (temp1);
-  free (temp1);
-
-  switch (vtype)
-    {
-    case 0:
-      len = strlen (value);
-      break;
-    case 1:
-      len = number_of_args () + 1;
-      break;
-#if defined (ARRAY_VARS)
-    case 2:
-      a = (ARRAY *)value;
-      len = array_num_elements (a) + 1;
-      break;
-#endif
-    }
-
-  if (*e1p < 0)                /* negative offsets count from end */
-    *e1p += len;
-
-  if (t)
-    {
-      t++;
-      temp1 = maybe_expand_string (t, 1, expand_string);
-      t[-1] = ':';
-      *e2p = evalexp (temp1);
-      free (temp1);
-      if (*e2p < 0)
-        {
-          internal_error ("%s: substring expression < 0", t);
-         return (0);
-        }
-      *e2p += *e1p;            /* want E2 chars starting at E1 */
-      if (*e2p > len)
-        *e2p = len;
-    }
-  else
-    *e2p = len;
-
-  return (1);
-}
-
-/* Return a string containing the positional parameters from START to
-   END, inclusive. */
-static char *
-pos_params (start, end, quoted)
-     int start, end, quoted;
-{
-  WORD_LIST *save, *params, *h, *t;
-  char *ret;
-  int i;
-
-  save = params = list_rest_of_args ();
-  if (save == 0)
-    return ((char *)NULL);
-
-  for (i = 1; params && i < start; i++)
-    params = params->next;
-  if (params == 0)
-    return ((char *)NULL);
-  for (h = t = params; params && i < end; i++)
-    {
-      t = params;
-      params = params->next;
-    }
-
-  t->next = (WORD_LIST *)NULL;
-  ret = string_list ((quoted & (Q_HERE_DOCUMENT|Q_DOUBLE_QUOTES)) ? quote_list (h) : h);
-  t->next = params;
-
-  dispose_words (save);
-  return (ret);
-}
-
-#define VT_VARIABLE    0
-#define VT_POSPARMS    1
-#define VT_ARRAYVAR    2
-
-/* Return the type of variable specified by VARNAME (simple variable,
-   positional param, or array variable.  Also return the value specified
-   by VARNAME (value of a variable or a reference to an array element). */
-static int
-get_var_and_type (varname, value, varp, valp)
-     char *varname, *value;
-     SHELL_VAR **varp;
-     char **valp;
-{
-  int vtype;
-  char *temp;
-#if defined (ARRAY_VARS)
-  SHELL_VAR *v;
-#endif
-  
-  vtype = varname[0] == '@' && varname[1] == '\0';     /* VT_POSPARMS */
-  *varp = (SHELL_VAR *)NULL;
-
-#if defined (ARRAY_VARS)
-  if (valid_array_reference (varname))
-    {
-      v = array_variable_part (varname, &temp, (int *)0);
-      if (v && array_p (v))
-       {
-         if (temp[0] == '@' && temp[1] == ']')
-           {
-             vtype = VT_ARRAYVAR;
-             *valp = (char *)array_cell (v);
-           }
-         else
-           {
-             vtype = VT_VARIABLE;
-             *valp = array_value (varname, 1);
-           }
-         *varp = v;
-       }
-      else
-       return -1;
-    }
-  else if ((v = find_variable (varname)) && array_p (v))
-    {
-      vtype = VT_VARIABLE;
-      *varp = v;
-      *valp = array_reference (array_cell (v), 0);
-    }
-  else
-#endif
-  *valp = value;
-
-  return vtype;
-}
-
-/* Process a variable substring expansion: ${name:e1[:e2]}.  If VARNAME
-   is `@', use the positional parameters; otherwise, use the value of
-   VARNAME.  If VARNAME is an array variable, use the array elements. */
-
-static char *
-parameter_brace_substring (varname, value, substr, quoted)
-     char *varname, *value, *substr;
-     int quoted;
-{
-  int e1, e2, vtype;
-  char *temp, *val;
-  SHELL_VAR *v;
-
-  if (value == 0)
-    return ((char *)NULL);
-
-  this_command_name = varname;
-
-  vtype = get_var_and_type (varname, value, &v, &val);
-  if (vtype == -1)
-    return ((char *)NULL);
-
-  if (verify_substring_values (val, substr, vtype, &e1, &e2) == 0)
-    return (&expand_param_error);
-
-  switch (vtype)
-    {
-    case VT_VARIABLE:
-      temp = substring (value, e1, e2);
-      break;
-    case VT_POSPARMS:
-      temp = pos_params (e1, e2, quoted);
-      break;
-#if defined (ARRAY_VARS)
-    case VT_ARRAYVAR:
-      temp = array_subrange (array_cell (v), e1, e2, quoted);
-      break;
-#endif
-    }
-
-  return temp;
-}
-
-char *
-pat_subst (string, pat, rep, mflags)
-     char *string, *pat, *rep;
-     int mflags;
-{
-  char *ret, *s, *e, *str;
-  int rsize, rptr, l, replen, mtype;
-
-  ret = xmalloc (rsize = 64);
-  ret[0] = '\0';
-
-  mtype = mflags & MATCH_TYPEMASK;
-
-  for (replen = STRLEN (rep), rptr = 0, str = string;;)
-    {
-      if (match_pattern (str, pat, mtype, &s, &e) == 0)
-       break;
-      l = s - str;
-      if ((rptr + l + replen) >= rsize)
-       {
-         while ((rptr + l + replen) >= rsize)
-           rsize += 64;
-         ret = xrealloc (ret, rsize);
-       }
-      /* OK, now copy the leading unmatched portion of the string (from
-        str to s) to ret starting at rptr (the current offset).  Then copy
-         the replacement string at ret + rptr + (s - str).  Increment
-         rptr (if necessary) and str and go on. */
-      if (l)
-       {
-         strncpy (ret + rptr, str, l);
-         rptr += l;
-       }
-      if (replen)
-       {
-         strncpy (ret + rptr, rep, replen);
-         rptr += replen;
-       }
-      str = e;         /* e == end of match */
-      if (((mflags & MATCH_GLOBREP) == 0) || mtype != MATCH_ANY)
-        break;
-    }
-
-  /* Now copy the unmatched portion of the input string */
-  if (*str)
-    strcpy (ret + rptr, str);
-  else
-    ret[rptr] = '\0';
-
-  return ret;
-}
-
-/* Do pattern match and replacement on the positional parameters. */
-static char *
-pos_params_pat_subst (string, pat, rep, mflags)
-     char *string, *pat, *rep;
-     int mflags;
-{
-  WORD_LIST *save, *params;
-  WORD_DESC *w;
-  char *ret;
-
-  save = params = list_rest_of_args ();
-  if (save == 0)
-    return ((char *)NULL);
-
-  for ( ; params; params = params->next)
-    {
-      ret = pat_subst (params->word->word, pat, rep, mflags);
-      w = make_bare_word (ret);
-      dispose_word (params->word);
-      params->word = w;
-      FREE (ret);
-    }
-
-  ret = string_list ((mflags & MATCH_QUOTED) ? quote_list (save) : save);
-  dispose_words (save);
-
-  return (ret);
-}
-
-static char *
-parameter_brace_patsub (varname, value, patsub, quoted)
-     char *varname, *value, *patsub;
-     int quoted;
-{
-  int vtype, mflags;
-  char *val, *temp, *pat, *rep, *p;
-  SHELL_VAR *v;
-
-  if (value == 0)
-    return ((char *)NULL);
-
-  this_command_name = varname;
-
-  vtype = get_var_and_type (varname, value, &v, &val);
-  if (vtype == -1)
-    return ((char *)NULL);
-
-  mflags = 0;
-  if (*patsub == '/')
-    {
-      mflags |= MATCH_GLOBREP;
-      patsub++;
-    }
-
-  if (quoted & (Q_HERE_DOCUMENT|Q_DOUBLE_QUOTES))
-    mflags |= MATCH_QUOTED;
-
-  if (rep = strchr (patsub, '/'))
-    *rep++ = '\0';
-  else
-    rep = (char *)NULL;
-
-  if (rep && *rep == '\0')
-    rep = (char *)NULL;
-
-  /* Expand PAT and REP for command, variable and parameter, arithmetic,
-     and process substitution.  Also perform quote removal.  Do not
-     perform word splitting or filename generation. */
-  pat = maybe_expand_string (patsub, quoted, expand_string_unsplit);
-  if (rep)
-    rep = maybe_expand_string (rep, quoted, expand_string_unsplit);
-
-  p = pat;
-  if (pat[0] == '#')
-    {
-      mflags |= MATCH_BEG;
-      p++;
-    }
-  else if (pat[0] == '%')
-    {
-      mflags |= MATCH_END;
-      p++;
-    }
-  else
-    mflags |= MATCH_ANY;
-
-  /* OK, we now want to substitute REP for PAT in VAL.  If GLOBAL is 1,
-     the substitution is done everywhere, otherwise only the first
-     occurrence of PAT is replaced. */
-  switch (vtype)
-    {
-    case VT_VARIABLE:
-      temp = pat_subst (val, p, rep, mflags);
-      break;
-    case VT_POSPARMS:
-      temp = pos_params_pat_subst (val, p, rep, mflags);
-      break;
-#if defined (ARRAY_VARS)
-    case VT_ARRAYVAR:
-      temp = array_pat_subst (array_cell (v), p, rep, mflags);
-      break;
-#endif
-    }
-
-  FREE (pat);
-  FREE (rep);
-
-  return temp;
-}
-
-/* ${[#][!]name[[:]#[#]%[%]-=?+[word][:e1[:e2]]]} */
-static char *
-parameter_brace_expand (string, indexp, quoted, quoted_dollar_atp, contains_dollar_at)
-     char *string;
-     int *indexp, quoted, *quoted_dollar_atp, *contains_dollar_at;
-{
-  int check_nullness, var_is_set, var_is_null, var_is_special;
-  int want_substring, want_indir, want_patsub;
-  char *name, *value, *temp, *temp1;
-  int t_index, sindex, c, number;
-
-  sindex = *indexp;
-  t_index = ++sindex;
-  name = string_extract (string, &t_index, "#%:-=?+/}", 1);
-  value = (char *)NULL;
-  var_is_set = var_is_null = var_is_special = check_nullness = 0;
-  want_substring = want_indir = want_patsub = 0;
-
-  /* If the name really consists of a special variable, then
-     make sure that we have the entire name.  Handle indirect
-     references to special variables here, too. */
-  if ((sindex == t_index ||
-      ((sindex == t_index - 1) && string[sindex] == '!')) &&
-       (string[t_index] == '-' ||
-        string[t_index] == '?' ||
-        string[t_index] == '#'))
-    {
-      t_index++;
-      free (name);
-      temp1 = string_extract (string, &t_index, "#%:-=?+/}", 0);
-      name = xmalloc (3 + (strlen (temp1)));
-      *name = string[sindex];
-      if (string[sindex] == '!')
-       {
-         /* indirect ref. of special variable */
-         name[1] = string[sindex + 1];
-         strcpy (name + 2, temp1);
-       }
-      else
-       strcpy (name + 1, temp1);
-      free (temp1);
-    }
-  sindex = t_index;
-
-  /* Find out what character ended the variable name.  Then
-     do the appropriate thing. */
-  if (c = string[sindex])
-    sindex++;
-
-  /* If c is followed by one of the valid parameter expansion
-     characters, move past it as normal.  If not, assume that
-     a substring specification is being given, and do not move
-     past it. */
-  if (c == ':' && member (string[sindex], "-=?+"))
-    {
-      check_nullness++;
-      if (c = string[sindex])
-       sindex++;
-    }
-  else if (c == ':')
-    want_substring = 1;
-  else if (c == '/')
-    want_patsub = 1;
-
-  want_indir = *name == '!';
-
-  /* Determine the value of this variable. */
-
-  /* Check for special variables, directly and indirectly
-     referenced. */
-  if ((digit (*name) && all_digits (name)) ||
-      (name[1] == '\0' && member (*name, "#-?$!@*")) ||
-      (want_indir && name[2] == '\0' && member (name[1], "#-?$!@*")))
-    var_is_special++;
-
-  /* Check for special expansion things. */
-  if (*name == '#')    /* length of a parameter */
-    {
-      /* Take the lengths of some of the shell's special
-         parameters. */
-      if (string[sindex] == '}' && name[1] == '\0' &&
-         check_nullness == 0 && member (c, "-?$!#"))
-       {
-         free (name);
-         switch (c)
-           {
-           case '-':
-             temp1 = which_set_flags ();
-             break;
-           case '?':
-             temp1 = itos (last_command_exit_value);
-             break;
-           case '$':
-             temp1 = itos (dollar_dollar_pid);
-             break;
-           case '!':
-             if (last_asynchronous_pid == NO_PID)
-               temp1 = (char *)NULL;
-             else
-               temp1 = itos ((int)last_asynchronous_pid);
-             break;
-           case '#':
-             temp1 = itos (number_of_args ());
-             break;
-           }
-         number = STRLEN (temp1);
-         FREE (temp1);
-         *indexp = ++sindex;   /* { string[sindex] == '}' */
-         return (itos (number));
-       }
-
-      /* Don't allow things like ${#:-foo} to go by; they are
-         errors.  If we are not pointing at the character just
-         after the closing brace, then we haven't gotten all of
-         the name.  Since it begins with a special character,
-         this is a bad substitution.  Explicitly check for ${#:},
-         which the rules do not catch.  Also check NAME for
-         validity before trying to go on. */
-      if (string[sindex - 1] != '}' ||
-         member (c, "?-=+") ||
-         (name[1] == '\0' && c == '}' && check_nullness) ||
-         (valid_length_expression (name) == 0))
-       {
-         temp = (char *)NULL;
-         goto bad_substitution;
-       }
-
-      number = parameter_brace_expand_length (name);
-      free (name);
-
-      *indexp = sindex;
-      return (itos (number));
-    }
-
-  /* ${@} is identical to $@. */
-  if (name[0] == '@' && name[1] == '\0')
-    {
-      if ((quoted & (Q_HERE_DOCUMENT|Q_DOUBLE_QUOTES)) && quoted_dollar_atp)
-       *quoted_dollar_atp = 1;
-
-      if (contains_dollar_at)
-       *contains_dollar_at = 1;
-    }
-
-  /* Make sure that NAME is valid before trying to go on. */
-  if (valid_brace_expansion_word (want_indir ? name + 1 : name,
-                                       var_is_special) == 0)
-    {
-      temp = (char *)NULL;
-      goto bad_substitution;
-    }
-
-  if (want_indir)
-    temp = parameter_brace_expand_indir (name + 1, var_is_special, quoted);
-  else
-    temp = parameter_brace_expand_word (name, var_is_special, quoted);
-
-#if defined (ARRAY_VARS)
-  if ((quoted & (Q_HERE_DOCUMENT|Q_DOUBLE_QUOTES)) && valid_array_reference (name))
-    {
-      temp1 = strchr (name, '[');
-      if (temp1 && temp1[1] == '@' && temp1[2] == ']')
-        {
-         if ((quoted & (Q_HERE_DOCUMENT|Q_DOUBLE_QUOTES)) && quoted_dollar_atp)
-           *quoted_dollar_atp = 1;
-         if (contains_dollar_at)
-           *contains_dollar_at = 1;
-       }
-    }
-#endif
-
-  var_is_set = temp != (char *)0;
-  var_is_null = check_nullness && (var_is_set == 0 || *temp == 0);
-
-  /* Get the rest of the stuff inside the braces. */
-  if (c && c != '}')
-    {
-      /* Extract the contents of the ${ ... } expansion
-         according to the Posix.2 rules. */
-      value = extract_dollar_brace_string (string, &sindex, quoted);
-      /*{*/
-      if (string[sindex] == '}')
-        sindex++;
-      else
-       goto bad_substitution;
-    }
-  else
-    value = (char *)NULL;
-
-  *indexp = sindex;
-  
-  /* If this is a substring spec, process it and add the result. */
-  if (want_substring)
-    {
-      temp1 = parameter_brace_substring (name, temp, value, quoted);
-      FREE (name);
-      FREE (value);
-      FREE (temp);
-      return (temp1);
-    }
-  else if (want_patsub)
-    {
-      temp1 = parameter_brace_patsub (name, temp, value, quoted);
-      FREE (name);
-      FREE (value);
-      FREE (temp);
-      return (temp1);
-    }          
-                   
-  /* Do the right thing based on which character ended the variable name. */
-  switch (c)
-    {
-    default:
-    case '\0':
-    bad_substitution:
-      report_error ("%s: bad substitution", string ? string : "??");
-      FREE (value);
-      FREE (temp);
-      free (name);
-      return &expand_param_error;
-
-    /*{*/
-    case '}':
-      if (var_is_set == 0 && unbound_vars_is_error)
-        {
-         report_error ("%s: unbound variable", name);
-         FREE (value);
-         FREE (temp);
-         free (name);
-         last_command_exit_value = 1;
-         return &expand_param_error;
-       }
-      break;
-
-    case '#':  /* ${param#[#]pattern} */
-    case '%':  /* ${param%[%]pattern} */
-      if (value == 0 || *value == '\0' || temp == 0 || *temp == '\0')
-        {
-          FREE (value);
-         break;
-        }
-      if ((name[0] == '@' || name[0] == '*') && name[1] == '\0')
-       temp1 = parameter_list_remove_pattern (value, name[0], c, quoted);
-#if defined (ARRAY_VARS)
-      else if (valid_array_reference (name))
-       temp1 = array_remove_pattern (value, name, c, quoted);
-#endif
-      else
-       temp1 = parameter_brace_remove_pattern (value, temp, c, quoted);
-      free (temp);
-      free (value);
-      temp = temp1;
-      break;
-
-    case '-':
-    case '=':
-    case '?':
-    case '+':
-      if (var_is_set && var_is_null == 0)
-        {
-         /* We don't want the value of the named variable for
-            anything, just the value of the right hand side. */
-         if (c == '+')
-           {
-             FREE (temp);
-             if (value)
-               {
-                 temp = parameter_brace_expand_rhs (name, value, c,
-                                                    quoted,
-                                                    quoted_dollar_atp,
-                                                    contains_dollar_at);
-                 if (temp && *temp == '\0' && (quoted & (Q_DOUBLE_QUOTES|Q_HERE_DOCUMENT)))
-                   quoted |= Q_QUOTEDNULL;
-                 free (value);
-               }
-             else
-               temp = (char *)NULL;
-           }
-         else
-           {
-             FREE (value);
-           }
-         /* Otherwise do nothing; just use the value in TEMP. */
-       }
-      else     /* VAR not set or VAR is NULL. */
-        {
-         FREE (temp);
-         temp = (char *)NULL;
-         if (c == '=' && var_is_special)
-           {
-             report_error ("$%s: cannot assign in this way", name);
-             free (name);
-             free (value);
-             return &expand_param_error;
-           }
-         else if (c == '?')
-           {
-             parameter_brace_expand_error (name, value);
-             return (interactive ? &expand_param_error : &expand_param_fatal);
-           }
-         else if (c != '+')
-           {
-             temp = parameter_brace_expand_rhs (name, value, c, quoted,
-                                              quoted_dollar_atp,
-                                              contains_dollar_at);
-             if (temp && *temp == '\0' && (quoted & (Q_DOUBLE_QUOTES|Q_HERE_DOCUMENT)))
-               quoted |= Q_QUOTEDNULL;
-           }
-         free (value);
-       }
-      break;
-    }
-  free (name);
-  return (temp);
-}
-
-/* Make a word list which is the parameter and variable expansion,
-   command substitution, arithmetic substitution, and quote removed
-   expansion of WORD.  Return a pointer to a WORD_LIST which is the
-   result of the expansion.  If WORD contains a null word, the word
-   list returned is also null.
-
-   QUOTED contains flag values defined in shell.h.
-
-   CONTAINS_DOLLAR_AT and EXPANDED_SOMETHING are return values; when non-null
-   they point to an integer value which receives information about expansion.
-   CONTAINS_DOLLAR_AT gets non-zero if WORD contained "$@", else zero.
-   EXPANDED_SOMETHING get non-zero if WORD contained any parameter expansions,
-   else zero.
-
-   This only does word splitting in the case of $@ expansion.  In that
-   case, we split on ' '. */
-
-/* Values for the local variable quoted_state. */
-#define UNQUOTED        0
-#define PARTIALLY_QUOTED 1
-#define WHOLLY_QUOTED    2
-
-static WORD_LIST *
-expand_word_internal (word, quoted, contains_dollar_at, expanded_something)
-     WORD_DESC *word;
-     int quoted;
-     int *contains_dollar_at;
-     int *expanded_something;
-{
-  WORD_LIST *list;
-  WORD_DESC *tword;
-  SHELL_VAR *var;
-
-  /* The intermediate string that we build while expanding. */
-  char *istring;
-
-  /* The current size of the above object. */
-  int istring_size;
-
-  /* Index into ISTRING. */
-  int istring_index;
-
-  /* Temporary string storage. */
-  char *temp, *temp1;
-
-  /* The text of WORD. */
-  register char *string;
-
-  /* The index into STRING. */
-  int sindex;
-
-  /* This gets 1 if we see a $@ while quoted. */
-  int quoted_dollar_at;
-
-  /* One of UNQUOTED, PARTIALLY_QUOTED, or WHOLLY_QUOTED, depending on
-     whether WORD contains no quoting characters, a partially quoted
-     string (e.g., "xx"ab), or is fully quoted (e.g., "xxab"). */
-  int quoted_state;
-
-  register int c;              /* Current character. */
-  int number;                  /* Temporary number value. */
-  int t_index;                 /* For calls to string_extract_xxx. */
-
-  istring = xmalloc (istring_size = DEFAULT_ARRAY_SIZE);
-  istring[istring_index = 0] = '\0';
-
-  quoted_dollar_at = 0;
-  quoted_state = UNQUOTED;
-
-  string = word->word;
-  if (string == 0)
-    goto finished_with_string;
-
-  if (contains_dollar_at)
-    *contains_dollar_at = 0;
-
-  /* Begin the expansion. */
-
-  for (sindex = 0; ;)
-    {
-      c = string[sindex];
-
-      /* Case on toplevel character. */
-      switch (c)
-       {
-       case '\0':
-         goto finished_with_string;
-
-       case CTLESC:
-         temp = xmalloc (3);
-         temp[0] = CTLESC;
-         temp[1] = c = string[++sindex];
-         temp[2] = '\0';
-
-         if (string[sindex])
-           sindex++;
-
-         goto add_string;
-
-#if defined (PROCESS_SUBSTITUTION)
-         /* Process substitution. */
-       case '<':
-       case '>':
-         {
-           if (string[++sindex] != '(' || (quoted & (Q_HERE_DOCUMENT|Q_DOUBLE_QUOTES)) || posixly_correct)
-             {
-               sindex--;
-               goto add_character;
-             }
-           else
-             t_index = sindex + 1; /* skip past both '<' and '(' */
-
-           temp1 = extract_process_subst (string, (c == '<') ? "<(" : ">(", &t_index);
-           sindex = t_index;
-
-           /* If the process substitution specification is `<()', we want to
-              open the pipe for writing in the child and produce output; if
-              it is `>()', we want to open the pipe for reading in the child
-              and consume input. */
-           temp = temp1 ? process_substitute (temp1, (c == '>')) : (char *)0;
-
-           FREE (temp1);
-
-           goto dollar_add_string;
-         }
-#endif /* PROCESS_SUBSTITUTION */
-
-       /* See about breaking this into a separate function:
-           char *
-           param_expand (string, sindex, quoted, expanded_something,
-                         contains_dollar_at, quoted_dollar_at)
-           char *string;
-           int *sindex, quoted, *expanded_something, *contains_dollar_at;
-           int *quoted_dollar_at;
-       */
-       case '$':
-
-         if (expanded_something)
-           *expanded_something = 1;
-
-         c = string[++sindex];
-
-         /* Do simple cases first. Switch on what follows '$'. */
-         switch (c)
-           {
-             /* $0 .. $9? */
-           case '0':
-           case '1':
-           case '2':
-           case '3':
-           case '4':
-           case '5':
-           case '6':
-           case '7':
-           case '8':
-           case '9':
-             temp1 = dollar_vars[digit_value (c)];
-             if (unbound_vars_is_error && temp1 == (char *)NULL)
-               {
-                 report_error ("$%c: unbound variable", c);
-                 free (string);
-                 free (istring);
-                 last_command_exit_value = 1;
-                 return (&expand_word_error);
-               }
-             temp = temp1 ? savestring (temp1) : (char *)NULL;
-             goto dollar_add_string;
-
-             /* $$ -- pid of the invoking shell. */
-           case '$':
-             number = dollar_dollar_pid;
-
-           add_number:
-             temp = itos (number);
-           dollar_add_string:
-             if (string[sindex]) sindex++;
-
-             /* Add TEMP to ISTRING. */
-           add_string:
-             if (temp)
-               {
-                 istring = sub_append_string
-                   (temp, istring, &istring_index, &istring_size);
-                 temp = (char *)0;
-               }
-             
-             break;
-
-             /* $# -- number of positional parameters. */
-           case '#':
-             number = number_of_args ();
-             goto add_number;
-
-             /* $? -- return value of the last synchronous command. */
-           case '?':
-             number = last_command_exit_value;
-             goto add_number;
-
-             /* $- -- flags supplied to the shell on invocation or
-                by `set'. */
-           case '-':
-             temp = which_set_flags ();
-             goto dollar_add_string;
-
-             /* $! -- Pid of the last asynchronous command. */
-           case '!':
-             number = (int)last_asynchronous_pid;
-
-             /* If no asynchronous pids have been created, expand
-                to nothing. */
-             if (number == (int)NO_PID)
-               {
-                 if (string[sindex])
-                   sindex++;
-                 if (expanded_something)
-                   *expanded_something = 0;
-                 break;
-               }
-             goto add_number;
-
-             /* The only difference between this and $@ is when the
-                arg is quoted. */
-           case '*':           /* `$*' */
-             temp = string_rest_of_args (quoted);
-
-             /* If there are no command-line arguments, this should just
-                disappear if there are other characters in the expansion,
-                even if it's quoted. */
-             if ((quoted & (Q_HERE_DOCUMENT|Q_DOUBLE_QUOTES)) && temp && *temp == '\0')
-               {
-                 free (temp);
-                 temp = (char *)NULL;
-               }
-             /* In the case of a quoted string, quote the entire arg-list.
-                "$1 $2 $3". */          
-             if ((quoted & (Q_HERE_DOCUMENT|Q_DOUBLE_QUOTES)) && temp)
-               {
-                 temp1 = temp;
-                 temp = quote_string (temp);
-                 free (temp1);
-               }
-             goto dollar_add_string;
-
-             /* When we have "$@" what we want is "$1" "$2" "$3" ... This
-                means that we have to turn quoting off after we split into
-                the individually quoted arguments so that the final split
-                on the first character of $IFS is still done.  */
-           case '@':           /* `$@' */
-             list = list_rest_of_args ();
-
-             /* We want to flag the fact that we saw this.  We can't turn
-                off quoting entirely, because other characters in the
-                string might need it (consider "\"$@\""), but we need some
-                way to signal that the final split on the first character
-                of $IFS should be done, even though QUOTED is 1. */
-             if (quoted & (Q_HERE_DOCUMENT|Q_DOUBLE_QUOTES))
-               quoted_dollar_at = 1;
-             if (contains_dollar_at)
-               *contains_dollar_at = 1;
-             temp = string_list (((quoted & (Q_HERE_DOCUMENT|Q_DOUBLE_QUOTES)) && list) ? quote_list (list) : list);
-             dispose_words (list);
-             goto dollar_add_string;
-
-           /* $'...' ANSI-C expand text between quotes and add the result. */
-           case '\'':
-             t_index = sindex + 1;
-             temp1 = string_extract_single_quoted (string, &t_index);
-             sindex = t_index;
-             temp = ansicstr (temp1, (int *)NULL);
-             free (temp1);
-             if (temp)
-               {
-                 temp1 = temp;
-                 temp = quote_string (temp1);
-                 free (temp1);
-                 if (*temp == '\0' && (quoted & (Q_DOUBLE_QUOTES|Q_HERE_DOCUMENT)))
-                   quoted |= Q_QUOTEDNULL;
-               }
-             else
-               {
-                 temp = xmalloc (2);
-#if 0
-                 temp[0] = CTLNUL;
-                 temp[1] = '\0';
-#else
-                 temp[0] = '\0';
-#endif
-                 quoted |= Q_QUOTEDNULL;
-               }
-             goto add_string;
-
-           case '{':   /*}*/
-             temp = parameter_brace_expand (string, &sindex, quoted,
-                                            &quoted_dollar_at,
-                                            contains_dollar_at);
-             if (temp == &expand_param_error || temp == &expand_param_fatal)
-               {
-                 free (string);
-                 free (istring);
-                 return (temp == &expand_param_error) ? &expand_word_error
-                                                      : &expand_word_fatal;
-               }
-             if (temp && *temp == '\0' && (quoted & (Q_DOUBLE_QUOTES|Q_HERE_DOCUMENT)))
-               quoted |= Q_QUOTEDNULL;
-             goto add_string;
-             /* break; */
-
-             /* Do command or arithmetic substitution. */
-           case '(':   /*)*/
-             /* We have to extract the contents of this paren substitution. */
-             t_index = sindex + 1;
-             temp = extract_command_subst (string, &t_index);
-             sindex = t_index;
-
-             /* For Posix.2-style `$(( ))' arithmetic substitution,
-                extract the expression and pass it to the evaluator. */
-             if (temp && *temp == '(')
-               {
-                 temp1 = temp + 1;
-                 t_index = strlen (temp1) - 1;
-
-                 if (temp1[t_index] != ')')
-                   {
-                     report_error ("%s: bad arithmetic substitution", temp);
-                     free (temp);
-                     free (string);
-                     free (istring);
-                     return &expand_word_error;
-                   }
-
-                 /* Cut off ending `)' */
-                 temp1[t_index] = '\0';
-
-                 /* Expand variables found inside the expression. */
-                 temp1 = maybe_expand_string (temp1, 1, expand_string);
-
-                 /* No error messages. */
-                 this_command_name = (char *)NULL;
-                 number = evalexp (temp1);
-                 free (temp);
-                 free (temp1);
-
-                 goto add_number;
-               }
-
-             temp1 = command_substitute (temp, quoted);
-             FREE (temp);
-             temp = temp1;
-             goto dollar_add_string;
-
-             /* Do straight arithmetic substitution. */
-           case '[':
-             /* We have to extract the contents of this
-                arithmetic substitution. */
-             t_index = sindex + 1;
-             temp = extract_arithmetic_subst (string, &t_index);
-             sindex = t_index;
-
-              /* Do initial variable expansion. */
-             temp1 = maybe_expand_string (temp, 1, expand_string);
-
-             /* No error messages. */
-             this_command_name = (char *)NULL;
-             number = evalexp (temp1);
-             free (temp1);
-             free (temp);
-
-             goto add_number;
-
-           default:
-             /* Find the variable in VARIABLE_LIST. */
-             temp = (char *)NULL;
-
-             for (t_index = sindex;
-                  (c = string[sindex]) && legal_variable_char (c);
-                  sindex++);
-             temp1 = substring (string, t_index, sindex);
-
-             /* If this isn't a variable name, then just output the `$'. */
-             if (temp1 == 0 || *temp1 == '\0')
-               {
-                 FREE (temp1);
-                 temp = xmalloc (2);
-                 temp[0] = '$';
-                 temp[1] = '\0';
-                 if (expanded_something)
-                   *expanded_something = 0;
-                 goto add_string;
-               }
-
-             /* If the variable exists, return its value cell. */
-             var = find_variable (temp1);
-
-             if (var && invisible_p (var) == 0 && value_cell (var))
-               {
-#if defined (ARRAY_VARS)
-                 if (array_p (var))
-                   {
-                     temp = array_reference (array_cell (var), 0);
-                     if (temp)
-                       temp = quote_escapes (temp);
-                   }
-                 else
-#endif
-                 temp = quote_escapes (value_cell (var));
-                 free (temp1);
-                 goto add_string;
-               }
-
-             temp = (char *)NULL;
-
-             if (unbound_vars_is_error)
-               report_error ("%s: unbound variable", temp1);
-             else
-               {
-                 free (temp1);
-                 goto add_string;
-               }
-
-             free (temp1);
-             free (string);
-             last_command_exit_value = 1;
-             free (istring);
-             return &expand_word_error;
-           }
-         break;                /* End case '$': */
-
-       case '`':               /* Backquoted command substitution. */
-         {
-           sindex++;
-
-           if (expanded_something)
-             *expanded_something = 1;
-
-           temp = string_extract (string, &sindex, "`", 0);
-           de_backslash (temp);
-           temp1 = command_substitute (temp, quoted);
-           FREE (temp);
-           temp = temp1;
-           goto dollar_add_string;
-         }
-
-       case '\\':
-         if (string[sindex + 1] == '\n')
-           {
-             sindex += 2;
-             continue;
-           }
-
-         c = string[++sindex];
-
-         if (quoted & Q_HERE_DOCUMENT)
-           temp1 = slashify_in_here_document;
-         else if (quoted & Q_DOUBLE_QUOTES)
-           temp1 = slashify_in_quotes;
-         else
-           temp1 = "";
-
-         if ((quoted & (Q_HERE_DOCUMENT|Q_DOUBLE_QUOTES)) && member (c, temp1) == 0)
-           {
-             temp = xmalloc (3);
-             temp[0] = '\\'; temp[1] = c; temp[2] = '\0';
-           }
-         else
-           /* This character is quoted, so add it in quoted mode. */
-           temp = make_quoted_char (c);
-
-         if (c)
-           sindex++;
-         else
-           quoted |= Q_QUOTEDNULL;
-         goto add_string;
-
-       case '"':
-         if (quoted & (Q_DOUBLE_QUOTES|Q_HERE_DOCUMENT|Q_NOQUOTE))
-           goto add_character;
-
-         t_index = ++sindex;
-         temp = string_extract_double_quoted (string, &sindex, 0);
-
-         /* If the quotes surrounded the entire string, then the
-            whole word was quoted. */
-         quoted_state = (t_index == 1 && string[sindex] == '\0')
-                           ? WHOLLY_QUOTED
-                           : PARTIALLY_QUOTED;
-
-         if (temp && *temp)
-           {
-             int dollar_at_flag;
-
-             tword = make_word (temp);         /* XXX */
-             free (temp);
-             temp = (char *)NULL;
-
-             list = expand_word_internal (tword, Q_DOUBLE_QUOTES, &dollar_at_flag, (int *)NULL);
-
-             if (list == &expand_word_error || list == &expand_word_fatal)
-               {
-                 free (istring);
-                 free (string);
-                 /* expand_word_internal has already freed temp_word->word
-                    for us because of the way it prints error messages. */
-                 tword->word = (char *)NULL;
-                 dispose_word (tword);
-                 return list;
-               }
-
-             dispose_word (tword);
-
-             /* "$@" (a double-quoted dollar-at) expands into nothing,
-                not even a NULL word, when there are no positional
-                parameters. */
-             if (list == 0 && dollar_at_flag)
-               {
-                 quoted_dollar_at++;
-                 break;
-               }
-
-             /* If we get "$@", we know we have expanded something, so we
-                need to remember it for the final split on $IFS.  This is
-                a special case; it's the only case where a quoted string
-                can expand into more than one word.  It's going to come back
-                from the above call to expand_word_internal as a list with
-                a single word, in which all characters are quoted and
-                separated by blanks.  What we want to do is to turn it back
-                into a list for the next piece of code. */
-             if (list)
-               dequote_list (list);
-
-             if (dollar_at_flag)
-               {
-                 quoted_dollar_at++;
-                 if (expanded_something)
-                   *expanded_something = 1;
-               }
-           }
-         else
-           {
-             /* What we have is "".  This is a minor optimization. */
-             free (temp);
-             list = (WORD_LIST *)NULL;
-             quoted |= Q_QUOTEDNULL;
-           }
-
-         /* The code above *might* return a list (consider the case of "$@",
-            where it returns "$1", "$2", etc.).  We can't throw away the
-            rest of the list, and we have to make sure each word gets added
-            as quoted.  We test on tresult->next:  if it is non-NULL, we
-            quote the whole list, save it to a string with string_list, and
-            add that string. We don't need to quote the results of this
-            (and it would be wrong, since that would quote the separators
-            as well), so we go directly to add_string. */
-         if (list)
-           {
-             if (list->next)
-               {
-                 temp = string_list (quote_list (list));
-                 dispose_words (list);
-                 goto add_string;
-               }
-             else
-               {
-                 temp = savestring (list->word->word);
-                 dispose_words (list);
-               }
-           }
-         else
-           temp = (char *)NULL;
-
-         /* We do not want to add quoted nulls to strings that are only
-            partially quoted; we can throw them away. */
-         if (!temp && (quoted_state == PARTIALLY_QUOTED))
-           continue;
-
-       add_quoted_string:
-
-         if (temp)
-           {
-             temp1 = temp;
-             temp = quote_string (temp);
-             if (*temp1 == '\0')
-               quoted |= Q_QUOTEDNULL;
-             free (temp1);
-           }
-         else
-           {
-             /* Add NULL arg. */
-             temp = xmalloc (2);
-#if 0
-             temp[0] = CTLNUL;
-             temp[1] = '\0';
-#else
-             temp[0] = '\0';
-#endif
-             quoted |= Q_QUOTEDNULL;
-           }
-         goto add_string;
-         /* break; */
-
-       case '\'':
-         if (quoted & (Q_DOUBLE_QUOTES|Q_HERE_DOCUMENT|Q_NOQUOTE))
-           goto add_character;
-
-         t_index = ++sindex;
-         temp = string_extract_single_quoted (string, &sindex);
-
-         /* If the entire STRING was surrounded by single quotes,
-            then the string is wholly quoted. */
-         quoted_state = (t_index == 1 && string[sindex] == '\0')
-                           ? WHOLLY_QUOTED
-                           : PARTIALLY_QUOTED;
-
-         /* If all we had was '', it is a null expansion. */
-         if (*temp == '\0')
-           {
-             free (temp);
-             temp = (char *)NULL;
-             quoted |= Q_QUOTEDNULL;
-           }
-         else
-           remove_quoted_escapes (temp);
-
-         /* We do not want to add quoted nulls to strings that are only
-            partially quoted; such nulls are discarded. */
-         if (temp == 0 && (quoted_state == PARTIALLY_QUOTED))
-           continue;
-
-         goto add_quoted_string;
-         /* break; */
-
-       default:
-         /* This is the fix for " $@ " */
-         if (quoted & (Q_HERE_DOCUMENT|Q_DOUBLE_QUOTES))
-           {
-             temp = make_quoted_char (c);
-             if (c == 0)
-               quoted |= Q_QUOTEDNULL;
-             goto dollar_add_string;
-           }
-
-       add_character:
-         if (istring_index + 1 >= istring_size)
-           {
-             while (istring_index + 1 >= istring_size)
-               istring_size += DEFAULT_ARRAY_SIZE;
-             istring = xrealloc (istring, istring_size);
-           }
-         istring[istring_index++] = c;
-         istring[istring_index] = '\0';
-
-         /* Next character. */
-         sindex++;
-       }
-    }
-
-finished_with_string:
-  /* OK, we're ready to return.  If we have a quoted string, and
-     quoted_dollar_at is not set, we do no splitting at all; otherwise
-     we split on ' '.  The routines that call this will handle what to
-     do if nothing has been expanded. */
-
-  /* Partially and wholly quoted strings which expand to the empty
-     string are retained as an empty arguments.  Unquoted strings
-     which expand to the empty string are discarded.  The single
-     exception is the case of expanding "$@" when there are no
-     positional parameters.  In that case, we discard the expansion. */
-
-  /* Because of how the code that handles "" and '' in partially
-     quoted strings works, we need to make ISTRING into a QUOTED_NULL
-     if we saw quoting characters, but the expansion was empty.
-     "" and '' are tossed away before we get to this point when
-     processing partially quoted strings.  This makes "" and $xxx""
-     equivalent when xxx is unset. */
-
-  /* If we expand to nothing and there were no single or double quotes
-     in the word, we throw it away.  Otherwise, we return a NULL word.
-     The single exception is for $@ surrounded by double quotes when
-     there are no positional parameters.  In that case, we also throw
-     the word away. */
-
-  if (*istring == '\0')
-    {
-      if (quoted_state == PARTIALLY_QUOTED && quoted_dollar_at == 0)
-       {
-#if 0
-         istring[0] = CTLNUL;
-         istring[1] = '\0';
-#else
-         istring[0] = '\0';
-#endif
-         tword = make_bare_word (istring);
-         list = make_word_list (tword, (WORD_LIST *)NULL);
-         if (quoted & (Q_HERE_DOCUMENT|Q_DOUBLE_QUOTES|Q_QUOTEDNULL))
-           tword->flags |= W_QUOTED;
-       }
-      /* According to sh, ksh, and Posix.2, if a word expands into nothing
-        and a double-quoted "$@" appears anywhere in it, then the entire
-        word is removed. */
-      else  if (quoted_state == UNQUOTED || quoted_dollar_at)
-       list = (WORD_LIST *)NULL;
-      else
-       {
-         tword = make_bare_word (istring);
-         list = make_word_list (tword, (WORD_LIST *)NULL);
-         if (quoted & (Q_HERE_DOCUMENT|Q_DOUBLE_QUOTES|Q_QUOTEDNULL))
-           tword->flags |= W_QUOTED;
-       }
-    }
-  else if (word->flags & W_ASSIGNMENT)
-    {
-      tword = make_bare_word (istring);
-      list = make_word_list (tword, (WORD_LIST *)NULL);
-      tword->flags |= W_ASSIGNMENT;    /* XXX */
-      if (quoted & (Q_HERE_DOCUMENT|Q_DOUBLE_QUOTES))
-        tword->flags |= W_QUOTED;
-    }
-  else
-    {
-      char *ifs_chars;
-
-      if (quoted_dollar_at)
-       {
-         var = find_variable ("IFS");
-         ifs_chars = var ? value_cell (var) : " \t\n";
-       }
-      else
-       ifs_chars = (char *)NULL;
-
-      /* According to Posix.2, "$@" expands to a single word if
-        IFS="" and the positional parameters are not empty. */
-      if (quoted_dollar_at && ifs_chars && *ifs_chars)
-       {
-         list = list_string (istring, " ", 1);
-       }
-      else
-       {
-         tword = make_bare_word (istring);
-         list = make_word_list (tword, (WORD_LIST *)NULL);
-         if ((quoted & (Q_DOUBLE_QUOTES|Q_HERE_DOCUMENT)) || (quoted_state == WHOLLY_QUOTED))
-           tword->flags |= W_QUOTED;
-         if (word->flags & W_ASSIGNMENT)
-           tword->flags |= W_ASSIGNMENT;
-       }
-    }
-
-  free (istring);
-  return (list);
-}
-
-/* **************************************************************** */
-/*                                                                 */
-/*                Functions for Quote Removal                      */
-/*                                                                 */
-/* **************************************************************** */
-
-/* Perform quote removal on STRING.  If QUOTED > 0, assume we are obeying the
-   backslash quoting rules for within double quotes. */
-char *
-string_quote_removal (string, quoted)
-     char *string;
-     int quoted;
-{
-  char *r, *result_string, *temp;
-  int sindex, tindex, c, dquote;
-
-  /* The result can be no longer than the original string. */
-  r = result_string = xmalloc (strlen (string) + 1);
-
-  for (dquote = sindex = 0; c = string[sindex];)
-    {
-      switch (c)
-       {
-       case '\\':
-         c = string[++sindex];
-         if (((quoted & (Q_HERE_DOCUMENT|Q_DOUBLE_QUOTES)) || dquote) && member (c, slashify_in_quotes) == 0)
-           *r++ = '\\';
-         /* FALLTHROUGH */
-
-       default:
-         *r++ = c;
-         sindex++;
-         break;
-
-       case '\'':
-         if ((quoted & (Q_HERE_DOCUMENT|Q_DOUBLE_QUOTES)) || dquote)
-           {
-             *r++ = c;
-             sindex++;
-             break;
-           }
-         tindex = sindex + 1;
-         temp = string_extract_single_quoted (string, &tindex);
-         if (temp)
-           {
-             strcpy (r, temp);
-             r += strlen (r);
-             free (temp);
-           }
-         sindex = tindex;
-         break;
-
-       case '"':
-         dquote = 1 - dquote;
-         sindex++;
-         break;
-       }
-    }
-    *r = '\0';
-    return (result_string);
-}
-
-#if 0
-/* UNUSED */
-/* Perform quote removal on word WORD.  This allocates and returns a new
-   WORD_DESC *. */
-WORD_DESC *
-word_quote_removal (word, quoted)
-     WORD_DESC *word;
-     int quoted;
-{
-  WORD_DESC *w;
-  char *t;
-
-  t = string_quote_removal (word->word, quoted);
-  w = make_bare_word (t);
-  return (w);
-}
-
-/* Perform quote removal on all words in LIST.  If QUOTED is non-zero,
-   the members of the list are treated as if they are surrounded by
-   double quotes.  Return a new list, or NULL if LIST is NULL. */
-WORD_LIST *
-word_list_quote_removal (list, quoted)
-     WORD_LIST *list;
-     int quoted;
-{
-  WORD_LIST *result, *t, *tresult;
-
-  for (t = list, result = (WORD_LIST *)NULL; t; t = t->next)
-    {
-      tresult = (WORD_LIST *)xmalloc (sizeof (WORD_LIST));
-      tresult->word = word_quote_removal (t->word, quoted);
-      tresult->next = (WORD_LIST *)NULL;
-      result = (WORD_LIST *) list_append (result, tresult);
-    }
-  return (result);
-}
-#endif
-
-/* Return 1 if CHARACTER appears in an unquoted portion of
-   STRING.  Return 0 otherwise. */
-static int
-unquoted_member (character, string)
-     int character;
-     char *string;
-{
-  int sindex, c;
-
-  for (sindex = 0; c = string[sindex]; )
-    {
-      if (c == character)
-       return (1);
-
-      switch (c)
-       {
-       default:
-         sindex++;
-         break;
-
-       case '\\':
-         sindex++;
-         if (string[sindex])
-           sindex++;
-         break;
-
-       case '\'':
-         sindex = skip_single_quoted (string, ++sindex);
-         break;
-
-       case '"':
-         sindex = skip_double_quoted (string, ++sindex);
-         break;
-       }
-    }
-  return (0);
-}
-
-/* Return 1 if SUBSTR appears in an unquoted portion of STRING. */
-static int
-unquoted_substring (substr, string)
-     char *substr, *string;
-{
-  int sindex, c, sublen;
-
-  if (substr == 0 || *substr == '\0')
-    return (0);
-
-  sublen = strlen (substr);
-  for (sindex = 0; c = string[sindex]; )
-    {
-      if (STREQN (string + sindex, substr, sublen))
-       return (1);
-
-      switch (c)
-       {
-       case '\\':
-         sindex++;
-
-         if (string[sindex])
-           sindex++;
-         break;
-
-       case '\'':
-         sindex = skip_single_quoted (string, ++sindex);
-         break;
-
-       case '"':
-         sindex = skip_double_quoted (string, ++sindex);
-         break;
-
-       default:
-         sindex++;
-         break;
-       }
-    }
-  return (0);
-}
-
-/*******************************************
- *                                        *
- *    Functions to perform word splitting  *
- *                                        *
- *******************************************/
-
-/* This splits a single word into a WORD LIST on $IFS, but only if the word
-   is not quoted.  list_string () performs quote removal for us, even if we
-   don't do any splitting. */
-WORD_LIST *
-word_split (w)
-     WORD_DESC *w;
-{
-  WORD_LIST *result;
-  SHELL_VAR *ifs;
-  char *ifs_chars;
-  WORD_DESC *tw;
-
-  if (w)
-    {
-      ifs = find_variable ("IFS");
-      /* If IFS is unset, it defaults to " \t\n". */
-      ifs_chars = ifs ? value_cell (ifs) : " \t\n";
-
-      if ((w->flags & W_QUOTED) || !ifs_chars)
-       ifs_chars = "";
-
-      result = list_string (w->word, ifs_chars, w->flags & W_QUOTED);
-      /* If the word expands to nothing, but is quoted, make a null word. */
-      if (result == 0 && (w->flags & W_QUOTED))
-        {
-          tw = make_bare_word ("");
-          tw->flags |= W_QUOTED;
-          result = make_word_list (tw, (WORD_LIST *)NULL);
-        }
-    }
-  else
-    result = (WORD_LIST *)NULL;
-
-  return (result);
-}
-
-/* Perform word splitting on LIST and return the RESULT.  It is possible
-   to return (WORD_LIST *)NULL. */
-static WORD_LIST *
-word_list_split (list)
-     WORD_LIST *list;
-{
-  WORD_LIST *result, *t, *tresult;
-
-  for (t = list, result = (WORD_LIST *)NULL; t; t = t->next)
-    {
-      tresult = word_split (t->word);
-      result = (WORD_LIST *) list_append (result, tresult);
-    }
-  return (result);
-}
-
-/**************************************************
- *                                               *
- *     Functions to expand an entire WORD_LIST   *
- *                                               *
- **************************************************/
-
-static WORD_LIST *varlist = (WORD_LIST *)NULL;
-
-/* Separate out any initial variable assignments from TLIST.  If set -k has
-   been executed, remove all assignment statements from TLIST.  Initial
-   variable assignments and other environment assignments are placed
-   on VARLIST. */
-static WORD_LIST *
-separate_out_assignments (tlist)
-     WORD_LIST *tlist;
-{
-  register WORD_LIST *vp, *lp;
-
-  if (!tlist)
-    return ((WORD_LIST *)NULL);
-
-  varlist = (WORD_LIST *)NULL;
-  vp = lp = tlist;
-
-  /* Separate out variable assignments at the start of the command.
-     Loop invariant: vp->next == lp
-     Loop postcondition:
-       lp = list of words left after assignment statements skipped
-       tlist = original list of words
-  */
-  while (lp && (lp->word->flags & W_ASSIGNMENT))
-    {
-      vp = lp;
-      lp = lp->next;
-    }
-
-  /* If lp != tlist, we have some initial assignment statements. */
-  /* We make VARLIST point to the list of assignment words and
-     TLIST point to the remaining words.  */
-  if (lp != tlist)
-    {
-      varlist = tlist;
-      /* ASSERT(vp->next == lp); */
-      vp->next = (WORD_LIST *)NULL;    /* terminate variable list */
-      tlist = lp;                      /* remainder of word list */
-    }
-
-  /* vp == end of variable list */
-  /* tlist == remainder of original word list without variable assignments */
-  if (!tlist)
-    /* All the words in tlist were assignment statements */
-    return ((WORD_LIST *)NULL);
-
-  /* ASSERT(tlist != NULL); */
-  /* ASSERT((tlist->word->flags & W_ASSIGNMENT) == 0); */
-
-  /* If the -k option is in effect, we need to go through the remaining
-     words, separate out the assignment words, and place them on VARLIST. */
-  if (place_keywords_in_env)
-    {
-      WORD_LIST *tp;   /* tp == running pointer into tlist */
-
-      tp = tlist;
-      lp = tlist->next;
-
-      /* Loop Invariant: tp->next == lp */
-      /* Loop postcondition: tlist == word list without assignment statements */
-      while (lp)
-       {
-         if (lp->word->flags & W_ASSIGNMENT)
-           {
-             /* Found an assignment statement, add this word to end of
-                varlist (vp). */
-             if (!varlist)
-               varlist = vp = lp;
-             else
-               {
-                 vp->next = lp;
-                 vp = lp;
-               }
-
-             /* Remove the word pointed to by LP from TLIST. */
-             tp->next = lp->next;
-             /* ASSERT(vp == lp); */
-             lp->next = (WORD_LIST *)NULL;
-             lp = tp->next;
-           }
-         else
-           {
-             tp = lp;
-             lp = lp->next;
-           }
-       }
-    }
-  return (tlist);
-}
-
-/* Take the list of words in LIST and do the various substitutions.  Return
-   a new list of words which is the expanded list, and without things like
-   variable assignments. */
-
-WORD_LIST *
-expand_words (list)
-     WORD_LIST *list;
-{
-  return (expand_word_list_internal (list, 1));
-}
-
-/* Same as expand_words (), but doesn't hack variable or environment
-   variables. */
-WORD_LIST *
-expand_words_no_vars (list)
-     WORD_LIST *list;
-{
-  return (expand_word_list_internal (list, 0));
-}
-
-/* The workhorse for expand_words () and expand_words_no_vars ().
-   First arg is LIST, a WORD_LIST of words.
-   Second arg DO_VARS is non-zero if you want to do environment and
-   variable assignments, else zero.
-
-   This does all of the substitutions: brace expansion, tilde expansion,
-   parameter expansion, command substitution, arithmetic expansion,
-   process substitution, word splitting, and pathname expansion.  Words
-   with the W_QUOTED or W_ASSIGNMENT bits set, or for which no expansion
-   is done, do not undergo word splitting.  Words with the W_ASSIGNMENT
-   bit set do not undergo pathname expansion. */
-static WORD_LIST *
-expand_word_list_internal (list, do_vars)
-     WORD_LIST *list;
-     int do_vars;
-{
-  WORD_LIST *tlist, *new_list, *next, *temp_list, *orig_list, *disposables;
-  char *temp_string;
-
-  if (list == 0)
-    return ((WORD_LIST *)NULL);
-
-  tlist = copy_word_list (list);
-
-  if (do_vars)
-    {
-      tlist = separate_out_assignments (tlist);
-      if (tlist == 0)
-       {
-         if (varlist)
-           {
-             /* All the words were variable assignments, so they are placed
-                into the shell's environment. */
-             for (new_list = varlist; new_list; new_list = new_list->next)
-               do_assignment (new_list->word->word);
-             dispose_words (varlist);
-             varlist = (WORD_LIST *)NULL;
-           }
-         return ((WORD_LIST *)NULL);
-       }
-    }
-
-  /* Begin expanding the words that remain.  The expansions take place on
-     things that aren't really variable assignments. */
-
-#if defined (BRACE_EXPANSION)
-  /* Do brace expansion on this word if there are any brace characters
-     in the string. */
-  if (brace_expansion && tlist)
-    {
-      register char **expansions;
-      WORD_LIST *braces;
-      int eindex;
-
-      for (braces = disposables = (WORD_LIST *)NULL; tlist; tlist = next)
-       {
-         next = tlist->next;
-
-         /* Only do brace expansion if the word has a brace character.  If
-            not, just add the word list element to BRACES and continue.  In
-            the common case, at least when running shell scripts, this will
-            degenerate to a bunch of calls to `strchr', and then what is
-            basically a reversal of TLIST into BRACES, which is corrected
-            by a call to reverse_list () on BRACES when the end of TLIST
-            is reached. */
-         if (strchr (tlist->word->word, '{'))
-           {
-             expansions = brace_expand (tlist->word->word);
-
-             for (eindex = 0; temp_string = expansions[eindex]; eindex++)
-               {
-                 braces = make_word_list (make_word (temp_string), braces);
-                 free (expansions[eindex]);
-               }
-             free (expansions);
-
-             /* Add TLIST to the list of words to be freed after brace
-                expansion has been performed. */
-             tlist->next = disposables;
-             disposables = tlist;
-           }
-         else
-           {
-             tlist->next = braces;
-             braces = tlist;
-           }
-       }
-
-      dispose_words (disposables);
-      tlist = REVERSE_LIST (braces, WORD_LIST *);
-    }
-#endif /* BRACE_EXPANSION */
-
-  /* We do tilde expansion all the time.  This is what 1003.2 says. */
-  for (orig_list = tlist, new_list = (WORD_LIST *)NULL; tlist; tlist = next)
-    {
-      WORD_LIST *expanded;
-      int expanded_something, has_dollar_at;
-
-      temp_string = tlist->word->word;
-
-      next = tlist->next;
-
-      /* Posix.2 section 3.6.1 says that tildes following `=' in words
-        which are not assignment statements are not expanded.  We do
-        this only if POSIXLY_CORRECT is enabled. */
-      if (temp_string[0] == '~' ||
-         (posixly_correct == 0 && strchr (temp_string, '~') &&
-          unquoted_substring ("=~", temp_string)))
-       {
-         tlist->word->word = bash_tilde_expand (temp_string);
-         free (temp_string);
-       }
-
-      expanded_something = 0;
-      expanded = expand_word_internal
-       (tlist->word, 0, &has_dollar_at, &expanded_something);
-
-      if (expanded == &expand_word_error || expanded == &expand_word_fatal)
-       {
-         /* By convention, each time this error is returned,
-            tlist->word->word has already been freed. */
-         tlist->word->word = (char *)NULL;
-         
-         /* Dispose our copy of the original list. */
-         dispose_words (orig_list);
-         /* Dispose the  new list we're building. */
-         dispose_words (new_list);
-
-         if (expanded == &expand_word_error)
-           jump_to_top_level (DISCARD);
-         else
-           jump_to_top_level (FORCE_EOF);
-       }
-
-      /* Don't split assignment words, even when they do not precede a
-        command name. */
-      if (expanded_something && (tlist->word->flags & W_ASSIGNMENT) == 0)
-       {
-         temp_list = word_list_split (expanded);
-         dispose_words (expanded);
-       }
-      else
-       {
-         /* If no parameter expansion, command substitution, process
-            substitution, or arithmetic substitution took place, then
-            do not do word splitting.  We still have to remove quoted
-            null characters from the result. */
-#if 0
-         word_list_remove_quoted_nulls (expanded);
-#endif
-         temp_list = expanded;
-       }
-
-      /* In the most common cases, t will be a list containing only one
-        element, so the call to reverse_list would be wasted. */
-      expanded = REVERSE_LIST (temp_list, WORD_LIST *);
-      new_list = (WORD_LIST *)list_append (expanded, new_list);
-    }
-
-  new_list = REVERSE_LIST (new_list, WORD_LIST *);
-
-  dispose_words (orig_list);
-
-  /* Okay, we're almost done.  Now let's just do some filename
-     globbing. */
-  if (new_list)
-    {
-      char **glob_array;
-      register int glob_index;
-      WORD_LIST *glob_list;
-      WORD_DESC *tword;
-
-      orig_list = disposables = (WORD_LIST *)NULL;
-      tlist = new_list;
-
-      /* orig_list == output list, despite the name. */
-      if (!disallow_filename_globbing)
-       {
-         glob_array = (char **)NULL;
-         while (tlist)
-           {
-             /* For each word, either globbing is attempted or the word is
-                added to orig_list.  If globbing succeeds, the results are
-                added to orig_list and the word (tlist) is added to the list
-                of disposable words.  If globbing fails and failed glob
-                expansions are left unchanged (the shell default), the
-                original word is added to orig_list.  If globbing fails and
-                failed glob expansions are removed, the original word is
-                added to the list of disposable words.  orig_list ends up
-                in reverse order and requires a call to reverse_list to
-                be set right.  After all words are examined, the disposable
-                words are freed. */
-             next = tlist->next;
-
-             /* If the word isn't quoted and there is an unquoted pattern
-                matching character in the word, then glob it. */
-             if ((tlist->word->flags & (W_QUOTED|W_ASSIGNMENT)) == 0 &&
-                 unquoted_glob_pattern_p (tlist->word->word))
-               {
-                 glob_array = shell_glob_filename (tlist->word->word);
-
-                 /* Handle error cases.
-                    I don't think we should report errors like "No such file
-                    or directory".  However, I would like to report errors
-                    like "Read failed". */
-
-                 if (GLOB_FAILED (glob_array))
-                   {
-                     glob_array = (char **) xmalloc (sizeof (char *));
-                     glob_array[0] = (char *)NULL;
-                   }
-
-                 /* Dequote the current word in case we have to use it. */
-                 if (glob_array[0] == NULL)
-                   {
-                     temp_string = dequote_string (tlist->word->word);
-                     free (tlist->word->word);
-                     tlist->word->word = temp_string;
-                   }
-
-                 /* Make the array into a word list. */
-                 glob_list = (WORD_LIST *)NULL;
-                 for (glob_index = 0; glob_array[glob_index]; glob_index++)
-                   {
-                     tword = make_bare_word (glob_array[glob_index]);
-                     glob_list = make_word_list (tword, glob_list);
-                   }
-
-                 if (glob_list)
-                   {
-                     orig_list = (WORD_LIST *)list_append (glob_list, orig_list);
-                     tlist->next = disposables;
-                     disposables = tlist;
-                   }
-                 else if (allow_null_glob_expansion == 0)
-                   {
-                     /* Failed glob expressions are left unchanged. */
-                     tlist->next = orig_list;
-                     orig_list = tlist;
-                   }
-                 else
-                   {
-                     /* Failed glob expressions are removed. */
-                     tlist->next = disposables;
-                     disposables = tlist;
-                   }
-               }
-             else
-               {
-                 /* Dequote the string. */
-                 temp_string = dequote_string (tlist->word->word);
-                 free (tlist->word->word);
-                 tlist->word->word = temp_string;
-                 tlist->next = orig_list;
-                 orig_list = tlist;
-               }
-
-             free_array (glob_array);
-             glob_array = (char **)NULL;
-
-             tlist = next;
-           }
-
-         if (disposables)
-           dispose_words (disposables);
-
-         new_list = REVERSE_LIST (orig_list, WORD_LIST *);
-       }
-      else
-       {
-         /* Dequote the words, because we're not performing globbing. */
-         for (temp_list = new_list; temp_list; temp_list = temp_list->next)
-           {
-             temp_string = dequote_string (temp_list->word->word);
-             free (temp_list->word->word);
-             temp_list->word->word = temp_string;
-           }
-       }
-    }
-
-  if (do_vars)
-    {
-      Function *assign_func;
-
-      /* If the remainder of the words expand to nothing, Posix.2 requires
-        that the variable and environment assignments affect the shell's
-        environment. */
-      assign_func = new_list ? assign_in_env : do_assignment;
-
-      for (temp_list = varlist; temp_list; temp_list = temp_list->next)
-       (*assign_func) (temp_list->word->word);
-
-      dispose_words (varlist);
-      varlist = (WORD_LIST *)NULL;
-    }
-
-  return (new_list);
-}
-
-/*************************************************
- *                                              *
- *     Functions to manage special variables    *
- *                                              *
- *************************************************/
-
-/* An alist of name.function for each special variable.  Most of the
-   functions don't do much, and in fact, this would be faster with a
-   switch statement, but by the end of this file, I am sick of switch
-   statements. */
-
-#define SET_INT_VAR(name, intvar)  intvar = find_variable (name) != 0
-
-struct name_and_function {
-  char *name;
-  VFunction *function;
-} special_vars[] = {
-  { "PATH", sv_path },
-  { "MAIL", sv_mail },
-  { "MAILPATH", sv_mail },
-  { "MAILCHECK", sv_mail },
-
-  { "POSIXLY_CORRECT", sv_strict_posix },
-  { "GLOBIGNORE", sv_globignore },
-
-  /* Variables which only do something special when READLINE is defined. */
-#if defined (READLINE)
-  { "TERM", sv_terminal },
-  { "TERMCAP", sv_terminal },
-  { "TERMINFO", sv_terminal },
-  { "HOSTFILE", sv_hostfile },
-#endif /* READLINE */
-
-  /* Variables which only do something special when HISTORY is defined. */
-#if defined (HISTORY)
-  { "HISTIGNORE", sv_histignore },
-  { "HISTSIZE", sv_histsize },
-  { "HISTFILESIZE", sv_histsize },
-  { "HISTCONTROL", sv_history_control },
-#  if defined (BANG_HISTORY)
-  { "histchars", sv_histchars },
-#  endif /* BANG_HISTORY */
-#endif /* HISTORY */
-
-  { "IGNOREEOF", sv_ignoreeof },
-  { "ignoreeof", sv_ignoreeof },
-
-  { "OPTIND", sv_optind },
-  { "OPTERR", sv_opterr },
-
-  { (char *)0, (VFunction *)0 }
-};
-
-/* The variable in NAME has just had its state changed.  Check to see if it
-   is one of the special ones where something special happens. */
-void
-stupidly_hack_special_variables (name)
-     char *name;
-{
-  int i;
-
-  for (i = 0; special_vars[i].name; i++)
-    {
-      if (STREQ (special_vars[i].name, name))
-       {
-         (*(special_vars[i].function)) (name);
-         return;
-       }
-    }
-}
-
-/* What to do just after the PATH variable has changed. */
-void
-sv_path (name)
-     char *name;
-{
-  /* hash -r */
-  flush_hashed_filenames ();
-}
-
-/* What to do just after one of the MAILxxxx variables has changed.  NAME
-   is the name of the variable.  This is called with NAME set to one of
-   MAIL, MAILCHECK, or MAILPATH.  */
-void
-sv_mail (name)
-     char *name;
-{
-  /* If the time interval for checking the files has changed, then
-     reset the mail timer.  Otherwise, one of the pathname vars
-     to the users mailbox has changed, so rebuild the array of
-     filenames. */
-  if (name[4] == 'C')  /* if (strcmp (name, "MAILCHECK") == 0) */
-    reset_mail_timer ();
-  else
-    {
-      free_mail_files ();
-      remember_mail_dates ();
-    }
-}
-
-/* What to do when GLOBIGNORE changes. */
-void
-sv_globignore (name)
-     char *name;
-{
-  setup_glob_ignore (name);
-}
-
-#if defined (READLINE)
-/* What to do just after one of the TERMxxx variables has changed.
-   If we are an interactive shell, then try to reset the terminal
-   information in readline. */
-void
-sv_terminal (name)
-     char *name;
-{
-  if (interactive_shell && no_line_editing == 0)
-    rl_reset_terminal (get_string_value ("TERM"));
-}
-
-void
-sv_hostfile (name)
-     char *name;
-{
-  hostname_list_initialized = 0;
-}
-#endif /* READLINE */
-
-#if defined (HISTORY)
-/* What to do after the HISTSIZE or HISTFILESIZE variables change.
-   If there is a value for this HISTSIZE (and it is numeric), then stifle
-   the history.  Otherwise, if there is NO value for this variable,
-   unstifle the history.  If name is HISTFILESIZE, and its value is
-   numeric, truncate the history file to hold no more than that many
-   lines. */   
-void
-sv_histsize (name)
-     char *name;
-{
-  char *temp;
-  long num;
-
-  temp = get_string_value (name);
-
-  if (temp && *temp)
-    {
-      if (legal_number (temp, &num))
-        {
-         if (name[4] == 'S')
-           {
-             stifle_history (num);
-             num = where_history ();
-             if (history_lines_this_session > num)
-               history_lines_this_session = num;
-           }
-         else
-           {
-             history_truncate_file (get_string_value ("HISTFILE"), (int)num);
-             if (num <= history_lines_in_file)
-               history_lines_in_file = num;
-           }
-       }
-    }
-  else if (name[4] == 'S')
-    unstifle_history ();
-}
-
-/* What to do after the HISTIGNORE variable changes. */
-void
-sv_histignore (name)
-     char *name;
-{
-  setup_history_ignore (name);
-}
-
-/* What to do after the HISTCONTROL variable changes. */
-void
-sv_history_control (name)
-     char *name;
-{
-  char *temp;
-
-  history_control = 0;
-  temp = get_string_value (name);
-
-  if (temp && *temp && STREQN (temp, "ignore", 6))
-    {
-      if (temp[6] == 's')      /* ignorespace */
-       history_control = 1;
-      else if (temp[6] == 'd') /* ignoredups */
-       history_control = 2;
-      else if (temp[6] == 'b') /* ignoreboth */
-       history_control = 3;
-    }
-}
-
-#if defined (BANG_HISTORY)
-/* Setting/unsetting of the history expansion character. */
-void
-sv_histchars (name)
-     char *name;
-{
-  char *temp;
-
-  temp = get_string_value (name);
-  if (temp)
-    {
-      history_expansion_char = *temp;
-      if (temp[0] && temp[1])
-       {
-         history_subst_char = temp[1];
-         if (temp[2])
-             history_comment_char = temp[2];
-       }
-    }
-  else
-    {
-      history_expansion_char = '!';
-      history_subst_char = '^';
-      history_comment_char = '#';
-    }
-}
-#endif /* BANG_HISTORY */
-#endif /* HISTORY */
-
-/* If the variable exists, then the value of it can be the number
-   of times we actually ignore the EOF.  The default is small,
-   (smaller than csh, anyway). */
-void
-sv_ignoreeof (name)
-     char *name;
-{
-  SHELL_VAR *tmp_var;
-  char *temp;
-
-  eof_encountered = 0;
-
-  tmp_var = find_variable (name);
-  ignoreeof = tmp_var != 0;
-  temp = tmp_var ? value_cell (tmp_var) : (char *)NULL;
-  if (temp)
-    eof_encountered_limit = (*temp && all_digits (temp)) ? atoi (temp) : 10;
-}
-
-void
-sv_optind (name)
-     char *name;
-{
-  char *tt;
-  int s;
-
-  tt = get_string_value ("OPTIND");
-  if (tt && *tt)
-    {
-      s = atoi (tt);
-
-      /* According to POSIX, setting OPTIND=1 resets the internal state
-        of getopt (). */
-      if (s < 0 || s == 1)
-       s = 0;
-    }
-  else
-    s = 0;
-  getopts_reset (s);
-}
-
-void
-sv_opterr (name)
-     char *name;
-{
-  char *tt;
-
-  tt = get_string_value ("OPTERR");
-  sh_opterr = (tt && *tt) ? atoi (tt) : 1;
-}
-
-void
-sv_strict_posix (name)
-     char *name;
-{
-  SET_INT_VAR (name, posixly_correct);
-  posix_initialize (posixly_correct);
-#if defined (READLINE)
-  posix_readline_initialize (posixly_correct);
-#endif /* READLINE */
-}
diff --git a/CWRU/posix-parser/Makefile b/CWRU/posix-parser/Makefile
deleted file mode 100644 (file)
index 74f45ae..0000000
+++ /dev/null
@@ -1,14 +0,0 @@
-SRCS=  main.c parse.y make.c copy.c aux.c 
-OBJS=  main.o parse.o make.o copy.o aux.o
-
-PROG=  parse
-
-AUX=   ../../../sun4/error.o
-
-CFLAGS=        -g -I. -I../.. -I. -DTEST -Dalloca=__builtin_alloca
-LDFLAGS= -g
-
-$(PROG):       $(OBJS)
-       $(CC) $(LDFLAGS) -o $@ $(OBJS) $(AUX) $(LIBS)
-
-parse.o: parse.y
diff --git a/CWRU/posix-parser/aux.c b/CWRU/posix-parser/aux.c
deleted file mode 100644 (file)
index bd8c8c9..0000000
+++ /dev/null
@@ -1,231 +0,0 @@
-#include <stdio.h>
-#include <errno.h>
-#include <sys/types.h>
-#include <sys/param.h>
-#include "filecntl.h"
-
-#include "shell.h"
-#include <strings.h>
-char *
-xmalloc (size)
-     int size;
-{
-  register char *temp = (char *)malloc (size);
-
-  if (!temp)
-    fatal_error ("Out of virtual memory!");
-
-  return (temp);
-}
-
-char *
-xrealloc (pointer, size)
-     register char *pointer;
-     int size;
-{
-  char *temp;
-
-  if (!pointer)
-    temp = (char *)xmalloc (size);
-  else
-    temp = (char *)realloc (pointer, size);
-
-  if (!temp)
-    fatal_error ("Out of virtual memory!");
-
-  return (temp);
-}
-/* Reverse the chain of structures in LIST.  Output the new head
-   of the chain.  You should always assign the output value of this
-   function to something, or you will lose the chain. */
-GENERIC_LIST *
-reverse_list (list)
-     register GENERIC_LIST *list;
-{
-  register GENERIC_LIST *next, *prev = (GENERIC_LIST *)NULL;
-
-  while (list) {
-    next = list->next;
-    list->next = prev;
-    prev = list;
-    list = next;
-  }
-  return (prev);
-}
-
-/* Return the number of elements in LIST, a generic list. */
-int
-list_length (list)
-     register GENERIC_LIST *list;
-{
-  register int i;
-
-  for (i = 0; list; list = list->next, i++);
-  return (i);
-}
-
-/* Delete the element of LIST which satisfies the predicate function COMPARER.
-   Returns the element that was deleted, so you can dispose of it, or -1 if
-   the element wasn't found.  COMPARER is called with the list element and
-   then ARG.  Note that LIST contains the address of a variable which points
-   to the list.  You might call this function like this:
-
-   SHELL_VAR *elt = delete_element (&variable_list, check_var_has_name, "foo");
-   dispose_variable (elt);
-*/
-GENERIC_LIST *
-delete_element (list, comparer, arg)
-     GENERIC_LIST **list;
-     Function *comparer;
-{
-  register GENERIC_LIST *prev = (GENERIC_LIST *)NULL;
-  register GENERIC_LIST *temp = *list;
-
-  while (temp) {
-    if ((*comparer) (temp, arg)) {
-      if (prev) prev->next = temp->next;
-      else *list = temp->next;
-      return (temp);
-    }
-    prev = temp;
-    temp = temp->next;
-  }
-  return ((GENERIC_LIST *)-1);
-}
-
-/* Find NAME in ARRAY.  Return the index of NAME, or -1 if not present.
-   ARRAY shoudl be NULL terminated. */
-int
-find_name_in_list (name, array)
-     char *name, *array[];
-{
-  int i;
-
-  for (i=0; array[i]; i++)
-    if (strcmp (name, array[i]) == 0)
-      return (i);
-
-  return (-1);
-}
-
-/* Return the length of ARRAY, a NULL terminated array of char *. */
-int
-array_len (array)
-     register char **array;
-{
-  register int i;
-  for (i=0; array[i]; i++);
-  return (i);
-}
-
-/* Free the contents of ARRAY, a NULL terminated array of char *. */
-void
-free_array (array)
-     register char **array;
-{
-  register int i = 0;
-
-  if (!array) return;
-
-  while (array[i])
-    free (array[i++]);
-  free (array);
-}
-
-/* Allocate and return a new copy of ARRAY and its contents. */
-char **
-copy_array (array)
-  register char **array;
-{
-  register int i;
-  int len;
-  char **new_array;
-
-  len = array_len (array);
-  new_array = (char **)xmalloc ((len + 1) * sizeof (char *));
-  for (i = 0; array[i]; i++)
-    new_array[i] = savestring (array[i]);  
-  new_array[i] = (char *)NULL;
-  return (new_array);
-}
-
-/* Append LIST2 to LIST1.  Return the header of the list. */
-GENERIC_LIST *
-list_append (head, tail)
-     GENERIC_LIST *head, *tail;
-{
-  register GENERIC_LIST *t_head = head;
-
-  if (!t_head)
-    return (tail);
-
-  while (t_head->next) t_head = t_head->next;
-  t_head->next = tail;
-  return (head);
-}
-
-#include <stdio.h>
-
-#ifndef NULL
-#define NULL 0x0
-#endif
-
-#if defined (ibm032)
-/*
- * Most vanilla 4.3 (not 4.3-tahoe) sites lack vfprintf.
- * Here is the one from 4.3-tahoe (it is freely redistributable).
- *
- * Beware!  Don't trust the value returned by either of these functions; it
- * seems that pre-4.3-tahoe implementations of _doprnt () return the first
- * argument, i.e. a char *.  Besides, _doprnt () is incorrectly documented
- * in the 4.3 BSD manuals, anyway (it's wrong in SunOS 3.5 also, but they
- * have the v*printf functions (incorrectly documented (vprintf), but they
- * are present)).
- */
-#include <varargs.h>
-
-int
-vfprintf (iop, fmt, ap)
-     FILE *iop;
-     char *fmt;
-     va_list ap;
-{
-  int len;
-  char localbuf[BUFSIZ];
-
-  if (iop->_flag & _IONBF)
-    {
-      iop->_flag &= ~_IONBF;
-      iop->_ptr = iop->_base = localbuf;
-      len = _doprnt (fmt, ap, iop);
-      (void) fflush (iop);
-      iop->_flag |= _IONBF;
-      iop->_base = NULL;
-      iop->_bufsiz = 0;
-      iop->_cnt = 0;
-    }
-  else
-    len = _doprnt (fmt, ap, iop);
-  return (ferror (iop) ? EOF : len);
-}
-
-/*
- * Ditto for vsprintf
- */
-int
-vsprintf (str, fmt, ap)
-     char *str, *fmt;
-     va_list ap;
-{
-  FILE f;
-  int len;
-
-  f._flag = _IOWRT+_IOSTRG;
-  f._ptr = str;
-  f._cnt = 32767;
-  len = _doprnt (fmt, ap, &f);
-  *f._ptr = 0;
-  return (len);
-}
-
-#endif /* ibm032 */
diff --git a/CWRU/posix-parser/command.h b/CWRU/posix-parser/command.h
deleted file mode 100644 (file)
index a7586a7..0000000
+++ /dev/null
@@ -1,179 +0,0 @@
-/* command.h -- The structures used internally to represent commands, and
-   the extern declarations of the functions used to create them. */
-
-#if !defined (_COMMAND_H)
-#define _COMMAND_H
-
-/* Instructions describing what kind of thing to do for a redirection. */
-enum r_instruction {
-  r_output_direction, r_input_direction, r_inputa_direction,
-  r_appending_to, r_reading_until, r_duplicating_input,
-  r_duplicating_output, r_deblank_reading_until, r_close_this,
-  r_err_and_out, r_input_output, r_output_force,
-  r_duplicating_input_word, r_duplicating_output_word
-};
-
-/* Command Types: */
-enum command_type { cm_for, cm_case, cm_while, cm_if, cm_simple,
-                   cm_connection, cm_function_def, cm_until, cm_group };
-
-/* A structure which represents a word. */
-typedef struct word_desc {
-  char *word;          /* Zero terminated string. */
-  int dollar_present;  /* Non-zero means dollar sign present. */
-  int quoted;          /* Non-zero means single, double, or back quote
-                          or backslash is present. */
-  int assignment;      /* Non-zero means that this word contains an
-                          assignment. */
-} WORD_DESC;
-
-/* A linked list of words. */
-typedef struct word_list {
-  struct word_list *next;
-  WORD_DESC *word;
-} WORD_LIST;
-
-
-/* **************************************************************** */
-/*                                                                 */
-/*                     Shell Command Structs                       */
-/*                                                                 */
-/* **************************************************************** */
-
-/* What a redirection descriptor looks like.  If FLAGS is IS_DESCRIPTOR,
-   then we use REDIRECTEE.DEST, else we use the file specified. */
-typedef struct redirect {
-  struct redirect *next;       /* Next element, or NULL. */
-  int redirector;              /* Descriptor to be redirected. */
-  int flags;                   /* Flag value for `open'. */
-  enum r_instruction  instruction; /* What to do with the information. */
-  union {
-    int dest;                  /* Place to redirect REDIRECTOR to, or ... */
-    WORD_DESC *filename;       /* filename to redirect to. */
-  } redirectee;
-  char *here_doc_eof;          /* The word that appeared in <<foo. */
-} REDIRECT;
-
-/* An element used in parsing.  A single word or a single redirection.
-   This is an ephemeral construct. */
-typedef struct element {
-  WORD_DESC *word;
-  REDIRECT *redirect;
-  struct element *next;
-} ELEMENT;
-
-/* Possible values for command->flags. */
-#define CMD_WANT_SUBSHELL  0x01        /* User wants a subshell: ( command ) */
-#define CMD_FORCE_SUBSHELL 0x02        /* Shell needs to force a subshell. */
-#define CMD_INVERT_RETURN  0x04        /* Invert the exit value. */
-#define CMD_IGNORE_RETURN  0x08        /* Ignore the exit value.  For set -e. */
-#define CMD_NO_FUNCTIONS   0x10 /* Ignore functions during command lookup. */
-#define CMD_INHIBIT_EXPANSION 0x20 /* Do not expand the command words. */
-
-/* What a command looks like. */
-typedef struct command {
-  enum command_type type;      /* FOR CASE WHILE IF CONNECTION or SIMPLE. */
-  int flags;                   /* Flags controlling execution environment. */
-  REDIRECT *redirects;         /* Special redirects for FOR CASE, etc. */
-  union {
-    struct for_com *For;
-    struct case_com *Case;
-    struct while_com *While;
-    struct if_com *If;
-    struct connection *Connection;
-    struct simple_com *Simple;
-    struct function_def *Function_def;
-    struct group_com *Group;
-  } value;
-} COMMAND;
-
-/* Structure used to represent the CONNECTION type. */
-typedef struct connection {
-  int ignore;                  /* Unused; simplifies make_command (). */
-  COMMAND *first;              /* Pointer to the first command. */
-  COMMAND *second;             /* Pointer to the second command. */
-  int connector;               /* What separates this command from others. */
-} CONNECTION;
-
-/* Structures used to represent the CASE command. */
-
-/* Pattern/action structure for CASE_COM. */
-typedef struct pattern_list {
-  struct pattern_list *next;   /* Clause to try in case this one failed. */
-  WORD_LIST *patterns;         /* Linked list of patterns to test. */
-  COMMAND *action;             /* Thing to execute if a pattern matches. */
-} PATTERN_LIST;
-
-/* The CASE command. */
-typedef struct case_com {
-  int flags;                   /* See description of CMD flags. */
-  WORD_DESC *word;             /* The thing to test. */
-  PATTERN_LIST *clauses;       /* The clauses to test against, or NULL. */
-} CASE_COM;
-
-/* FOR command. */
-typedef struct for_com {
-  int flags;           /* See description of CMD flags. */
-  WORD_DESC *name;     /* The variable name to get mapped over. */
-  WORD_LIST *map_list; /* The things to map over.  This is never NULL. */
-  COMMAND *action;     /* The action to execute.
-                          During execution, NAME is bound to successive
-                          members of MAP_LIST. */
-} FOR_COM;
-
-/* IF command. */
-typedef struct if_com {
-  int flags;                   /* See description of CMD flags. */
-  COMMAND *test;               /* Thing to test. */
-  COMMAND *true_case;          /* What to do if the test returned non-zero. */
-  COMMAND *false_case;         /* What to do if the test returned zero. */
-} IF_COM;
-
-/* WHILE command. */
-typedef struct while_com {
-  int flags;                   /* See description of CMD flags. */
-  COMMAND *test;               /* Thing to test. */
-  COMMAND *action;             /* Thing to do while test is non-zero. */
-} WHILE_COM;
-
-/* The "simple" command.  Just a collection of words and redirects. */
-typedef struct simple_com {
-  int flags;                   /* See description of CMD flags. */
-  WORD_LIST *words;            /* The program name, the arguments,
-                                  variable assignments, etc. */
-  REDIRECT *redirects;         /* Redirections to perform. */
-} SIMPLE_COM;
-
-/* The "function_def" command.  This isn't really a command, but it is
-   represented as such for now.  If the function def appears within 
-   `(' `)' the parser tries to set the SUBSHELL bit of the command.  That
-   means that FUNCTION_DEF has to be run through the executor.  Maybe this
-   command should be defined in a subshell.  Who knows or cares. */
-typedef struct function_def {
-  int ignore;                  /* See description of CMD flags. */
-  WORD_DESC *name;             /* The name of the function. */
-  COMMAND *command;            /* The parsed execution tree. */
-} FUNCTION_DEF;
-
-/* A command that is `grouped' allows pipes to take effect over
-   the entire command structure. */
-typedef struct group_com {
-  int ignore;                  /* See description of CMD flags. */
-  COMMAND *command;
-} GROUP_COM;
-
-/* Forward declarations of functions called by the grammer. */
-extern REDIRECT *make_redirection ();
-extern WORD_LIST *make_word_list ();
-extern WORD_DESC *make_word ();
-
-extern COMMAND
-  *make_for_command (), *make_case_command (), *make_if_command (),
-  *make_while_command (), *command_connect (), *make_simple_command (),
-  *make_function_def (), *clean_simple_command (), *make_until_command (),
-  *make_group_command ();
-
-extern PATTERN_LIST *make_pattern_list ();
-extern COMMAND *global_command, *copy_command ();
-
-#endif /* _COMMAND_H */
diff --git a/CWRU/posix-parser/copy.c b/CWRU/posix-parser/copy.c
deleted file mode 100644 (file)
index 19d49be..0000000
+++ /dev/null
@@ -1,279 +0,0 @@
-/* copy_command.c -- copy a COMMAND structure.  This is needed
-   primarily for making function definitions, but I'm not sure
-   that anyone else will need it.  */
-
-/* Copyright (C) 1987,1991 Free Software Foundation, Inc.
-
-   This file is part of GNU Bash, the Bourne Again SHell.
-
-   Bash is free software; you can redistribute it and/or modify it
-   under the terms of the GNU General Public License as published by
-   the Free Software Foundation; either version 1, or (at your option)
-   any later version.
-
-   Bash 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 General Public
-   License for more details.
-
-   You should have received a copy of the GNU General Public License
-   along with Bash; see the file COPYING.  If not, write to the Free
-   Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */
-
-#include <stdio.h>
-#include "shell.h"
-
-/* Forward declaration. */
-extern COMMAND *copy_command ();
-
-WORD_DESC *
-copy_word (word)
-     WORD_DESC *word;
-{
-  WORD_DESC *new_word = (WORD_DESC *)xmalloc (sizeof (WORD_DESC));
-  bcopy (word, new_word, sizeof (WORD_DESC));
-  new_word->word = savestring (word->word);
-  return (new_word);
-}
-
-/* Copy the chain of words in LIST.  Return a pointer to 
-   the new chain. */
-WORD_LIST *
-copy_word_list (list)
-     WORD_LIST *list;
-{
-  WORD_LIST *new_list = NULL;
-
-  while (list)
-    {
-      WORD_LIST *temp = (WORD_LIST *)xmalloc (sizeof (WORD_LIST));
-      temp->next = new_list;
-      new_list = temp;
-      new_list->word = copy_word (list->word);
-      list = list->next;
-    }
-  return ((WORD_LIST *)reverse_list (new_list));
-}
-
-PATTERN_LIST *
-copy_case_clause (clause)
-     PATTERN_LIST *clause;
-{
-  PATTERN_LIST *new_clause = (PATTERN_LIST *)xmalloc (sizeof (PATTERN_LIST));
-  new_clause->patterns = copy_word_list (clause->patterns);
-  new_clause->action = copy_command (clause->action);
-  return (new_clause);
-}
-
-PATTERN_LIST *
-copy_case_clauses (clauses)
-     PATTERN_LIST *clauses;
-{
-  PATTERN_LIST *new_list = (PATTERN_LIST *)NULL;
-
-  while (clauses)
-    {
-      PATTERN_LIST *new_clause = copy_case_clause (clauses);
-      new_clause->next = new_list;
-      new_list = new_clause;
-      clauses = clauses->next;
-    }
-  return ((PATTERN_LIST *)reverse_list (new_list));
-}
-
-/* Copy a single redirect. */
-REDIRECT *
-copy_redirect (redirect)
-     REDIRECT *redirect;
-{
-  REDIRECT *new_redirect = (REDIRECT *)xmalloc (sizeof (REDIRECT));
-  bcopy (redirect, new_redirect, (sizeof (REDIRECT)));
-  switch (redirect->instruction)
-    {
-    case r_reading_until:
-    case r_deblank_reading_until:
-      new_redirect->here_doc_eof = savestring (redirect->here_doc_eof);
-      /* There is NO BREAK HERE ON PURPOSE!!!! */
-    case r_appending_to:
-    case r_output_direction:
-    case r_input_direction:
-    case r_inputa_direction:
-    case r_err_and_out:
-    case r_input_output:
-    case r_output_force:
-    case r_duplicating_input_word:
-    case r_duplicating_output_word:
-      new_redirect->redirectee.filename =
-       copy_word (redirect->redirectee.filename);
-      break;
-    }
-  return (new_redirect);
-}
-  
-REDIRECT *
-copy_redirects (list)
-     REDIRECT *list;
-{
-  REDIRECT *new_list = NULL;
-
-  while (list)
-    {
-      REDIRECT *temp = copy_redirect (list);
-      temp->next = new_list;
-      new_list = temp;
-      list = list->next;
-    }
-  return ((REDIRECT *)reverse_list (new_list));
-}
-  
-FOR_COM *
-copy_for_command (com)
-     FOR_COM *com;
-{
-  FOR_COM *new_for = (FOR_COM *)xmalloc (sizeof (FOR_COM));
-  new_for->flags = com->flags;
-  new_for->name = copy_word (com->name);
-  new_for->map_list = copy_word_list (com->map_list);
-  new_for->action = copy_command (com->action);
-  return (new_for);
-}
-
-GROUP_COM *
-copy_group_command (com)
-     GROUP_COM *com;
-{
-  GROUP_COM *new_group = (GROUP_COM *)xmalloc (sizeof (GROUP_COM));
-
-  new_group->command = copy_command (com->command);
-  return (new_group);
-}
-
-CASE_COM *
-copy_case_command (com)
-     CASE_COM *com;
-{
-  CASE_COM *new_case = (CASE_COM *)xmalloc (sizeof (CASE_COM));
-
-  new_case->flags = com->flags;
-  new_case->word = copy_word (com->word);
-  new_case->clauses = copy_case_clauses (com->clauses);
-  return (new_case);
-}
-
-WHILE_COM *
-copy_while_command (com)
-     WHILE_COM *com;
-{
-  WHILE_COM *new_while = (WHILE_COM *)xmalloc (sizeof (WHILE_COM));
-
-  new_while->flags = com->flags;
-  new_while->test = copy_command (com->test);
-  new_while->action = copy_command (com->action);
-  return (new_while);
-}
-
-IF_COM *
-copy_if_command (com)
-     IF_COM *com;
-{
-  IF_COM *new_if = (IF_COM *)xmalloc (sizeof (IF_COM));
-
-  new_if->flags = com->flags;
-  new_if->test = copy_command (com->test);
-  new_if->true_case = copy_command (com->true_case);
-  new_if->false_case = copy_command (com->false_case);
-  return (new_if);
-}
-
-SIMPLE_COM *
-copy_simple_command (com)
-     SIMPLE_COM *com;
-{
-  SIMPLE_COM *new_simple = (SIMPLE_COM *)xmalloc (sizeof (SIMPLE_COM));
-
-  new_simple->flags = com->flags;
-  new_simple->words = copy_word_list (com->words);
-  new_simple->redirects = copy_redirects (com->redirects);
-  return (new_simple);
-}
-  
-FUNCTION_DEF *
-copy_function_def (com)
-     FUNCTION_DEF *com;
-{
-  FUNCTION_DEF *new_def = (FUNCTION_DEF *)xmalloc (sizeof (FUNCTION_DEF));
-
-  new_def->name = copy_word (com->name);
-  new_def->command = copy_command (com->command);
-  return (new_def);
-}
-
-/* Copy the command structure in COMMAND.  Return a pointer to the
-   copy.  Don't you forget to dispose_command () on this pointer
-   later! */
-COMMAND *
-copy_command (command)
-     COMMAND *command;
-{
-  COMMAND *new_command = (COMMAND *)NULL;
-
-  if (command)
-    {
-      new_command = (COMMAND *)xmalloc (sizeof (COMMAND));
-      bcopy (command, new_command, sizeof (COMMAND));
-      new_command->flags = command->flags;
-
-      if (command->redirects)
-       new_command->redirects = copy_redirects (command->redirects);
-
-      switch (command->type)
-       {
-       case cm_for:
-         new_command->value.For = copy_for_command (command->value.For);
-         break;
-
-       case cm_group:
-         new_command->value.Group = copy_group_command (command->value.Group);
-         break;
-
-       case cm_case:
-         new_command->value.Case = copy_case_command (command->value.Case);
-         break;
-      
-       case cm_until:
-       case cm_while:
-         new_command->value.While = copy_while_command (command->value.While);
-         break;
-      
-       case cm_if:
-         new_command->value.If = copy_if_command (command->value.If);
-         break;
-      
-       case cm_simple:
-         new_command->value.Simple = copy_simple_command (command->value.Simple);
-         break;
-      
-       case cm_connection:
-         {
-           CONNECTION *new_connection;
-
-           new_connection = (CONNECTION *)xmalloc (sizeof (CONNECTION));
-           new_connection->connector = command->value.Connection->connector;
-           new_connection->first =
-             copy_command (command->value.Connection->first);
-           new_connection->second =
-             copy_command (command->value.Connection->second);
-           new_command->value.Connection = new_connection;
-           break;
-         }
-      
-         /* Pathological case.  I'm not even sure that you can have a
-            function definition as part of a function definition. */
-       case cm_function_def:
-         new_command->value.Function_def =
-           copy_function_def (command->value.Function_def);
-         break;
-       }
-    }
-  return (new_command);
-}
diff --git a/CWRU/posix-parser/endian.h b/CWRU/posix-parser/endian.h
deleted file mode 100644 (file)
index ebbf6d6..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-/* endian.h - Define BIG or LITTLE endian. */
-
-/* This file was automatically created by `endian.aux'.  You shouldn't
-   edit this file, because your changes will be overwritten.  Instead,
-   edit the source code file `endian.c'. */
-
-#if !defined (BIG_ENDIAN)
-#  define BIG_ENDIAN
-#endif /* BIG_ENDIAN */
diff --git a/CWRU/posix-parser/main.c b/CWRU/posix-parser/main.c
deleted file mode 100644 (file)
index 2175391..0000000
+++ /dev/null
@@ -1,97 +0,0 @@
-#include <stdio.h>
-#include "shell.h"
-
-COMMAND *global_command;
-int last_command_exit_value;
-int interrupt_state;
-int interactive = 1;
-int eof_encountered = 0;
-int exit_immediately_on_error = 1;
-
-char *the_current_maintainer = "chet";
-
-char *shell_name = "posix";
-
-void
-throw_to_top_level()
-{
-}
-
-char *
-base_pathname(s)
-char   *s;
-{
-       return s;
-}
-
-char *
-strerror(s)
-int    s;
-{
-       return ("error");
-}
-
-parse_command ()
-{
-  extern int need_here_doc, current_command_line_count;
-  extern REDIRECT *redirection_needing_here_doc;
-  int r;
-
-  need_here_doc = 0;
-  redirection_needing_here_doc = (REDIRECT *)NULL;
-
-  current_command_line_count = 0;
-  r = yyparse ();
-
-  if (need_here_doc)
-    make_here_document (redirection_needing_here_doc);
-  need_here_doc = 0;
-
-  return (r);
-}
-
-main(argc, argv)
-int    argc;
-char   **argv;
-{
-       with_input_from_stdin();
-
-       if (parse_command () == 0) {
-               printf ("legal command in the Posix shell\n");
-               exit (0);
-       } else {
-               printf ("illegal\n");
-               exit (1);
-       }
-}
-
-char *
-string_quote_removal (s)
-{
-       return (savestring (s));
-}
-
-assignment (string)
-     char *string;
-{
-  register int c, index = 0;
-
-  c = string[index];
-
-  if (!isletter (c) && c != '_')
-    return (0);
-
-  while (c = string[index])
-    {
-      /* The following is safe.  Note that '=' at the start of a word
-         is not an assignment statement. */
-      if (c == '=')
-        return (index);
-
-      if (!isletter (c) && !digit (c) && c != '_')
-        return (0);
-
-      index++;
-    }
-  return (0);
-}
diff --git a/CWRU/posix-parser/make.c b/CWRU/posix-parser/make.c
deleted file mode 100644 (file)
index cc49b18..0000000
+++ /dev/null
@@ -1,596 +0,0 @@
-/* make_cmd.c --
-   Functions for making instances of the various parser constructs. */
-
-/* Copyright (C) 1989 Free Software Foundation, Inc.
-
-This file is part of GNU Bash, the Bourne Again SHell.
-
-Bash is free software; you can redistribute it and/or modify it under
-the terms of the GNU General Public License as published by the Free
-Software Foundation; either version 1, or (at your option) any later
-version.
-
-Bash 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 General Public License
-for more details.
-
-You should have received a copy of the GNU General Public License along
-with Bash; see the file COPYING.  If not, write to the Free Software
-Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */
-
-#include <stdio.h>
-#include <sys/types.h>
-#include <sys/file.h>
-#include "config.h"
-#include "general.h"
-#include "error.h"
-#include "command.h"
-#include "flags.h"
-#include "filecntl.h"
-
-#if defined (JOB_CONTROL)
-#include "jobs.h"
-#endif
-
-extern GENERIC_LIST *reverse_list ();
-
-WORD_DESC *
-make_word (string)
-     char *string;
-{
-  WORD_DESC *temp;
-
-  temp = (WORD_DESC *)xmalloc (sizeof (WORD_DESC));
-  temp->word = savestring (string);
-  temp->quoted = temp->dollar_present = temp->assignment = 0;
-
-  while (*string)
-    {
-      if (*string == '$') temp->dollar_present = 1;
-
-      if (member (*string, "'`\\\""))
-       {
-         temp->quoted = 1;
-         if (*string == '\\')
-           string++;
-       }
-
-      if (*string)
-       (string++);
-    }
-  return (temp);
-}
-
-WORD_DESC *
-make_word_from_token (token)
-     int token;
-{
-  char tokenizer[2];
-
-  tokenizer[0] = token;
-  tokenizer[1] = '\0';
-
-  return (make_word (tokenizer));
-}
-
-WORD_LIST *
-make_word_list (word, link)
-     WORD_DESC *word;
-     WORD_LIST *link;
-{
-  WORD_LIST *temp;
-
-  temp = (WORD_LIST *)xmalloc (sizeof (WORD_LIST));
-  temp->word = word;
-  temp->next = link;
-  return (temp);
-}
-
-WORD_LIST *
-add_string_to_list (string, list)
-     char *string;
-     WORD_LIST *list;
-{
-  WORD_LIST *temp = (WORD_LIST *)xmalloc (sizeof (WORD_LIST));
-  temp->word = make_word (string);
-  temp->next = list;
-  return (temp);
-}
-
-WORD_DESC *
-coerce_to_word (number)
-     int number;
-{
-  char string[24];
-
-  sprintf (string, "%d", number);
-  return (make_word (string));
-}
-
-COMMAND *
-make_command (type, pointer)
-     enum command_type type;
-     SIMPLE_COM *pointer;
-{
-  COMMAND *temp;
-
-  temp = (COMMAND *)xmalloc (sizeof (COMMAND));
-  temp->type = type;
-  temp->value.Simple = pointer;
-  temp->value.Simple->flags = 0;
-  temp->flags = 0;
-  temp->redirects = (REDIRECT *)NULL;
-  return (temp);
-}
-
-COMMAND *
-command_connect (com1, com2, connector)
-     COMMAND *com1, *com2;
-     int connector;
-{
-  CONNECTION *temp;
-
-  temp = (CONNECTION *)xmalloc (sizeof (CONNECTION));
-  temp->connector = connector;
-  temp->first = com1;
-  temp->second = com2;
-  return (make_command (cm_connection, (SIMPLE_COM *)temp));
-}
-
-COMMAND *
-make_for_command (name, map_list, action)
-     WORD_DESC *name;
-     WORD_LIST *map_list;
-     COMMAND *action;
-{
-  FOR_COM *temp = (FOR_COM *)xmalloc (sizeof (FOR_COM));
-
-  temp->flags = 0;
-  temp->name = name;
-  temp->map_list = map_list;
-  temp->action = action;
-  return (make_command (cm_for, (SIMPLE_COM *)temp));
-}
-
-COMMAND *
-make_group_command (command)
-     COMMAND *command;
-{
-  GROUP_COM *temp = (GROUP_COM *)xmalloc (sizeof (GROUP_COM));
-
-  temp->command = command;
-  return (make_command (cm_group, (SIMPLE_COM *)temp));
-}
-
-COMMAND *
-make_case_command (word, clauses)
-     WORD_DESC *word;
-     PATTERN_LIST *clauses;
-{
-  CASE_COM *temp;
-
-  temp = (CASE_COM *)xmalloc (sizeof (CASE_COM));
-  temp->flags = 0;
-  temp->word = word;
-  temp->clauses = (PATTERN_LIST *)reverse_list (clauses);
-  return (make_command (cm_case, (SIMPLE_COM *)temp));
-}
-
-PATTERN_LIST *
-make_pattern_list (patterns, action)
-     WORD_LIST *patterns;
-     COMMAND *action;
-{
-  PATTERN_LIST *temp;
-
-  temp = (PATTERN_LIST *)xmalloc (sizeof (PATTERN_LIST));
-  temp->patterns = patterns;
-  temp->action = action;
-  temp->next = NULL;
-  return (temp);
-}
-
-COMMAND *
-make_if_command (test, true_case, false_case)
-     COMMAND *test, *true_case, *false_case;
-{
-  IF_COM *temp;
-
-  temp = (IF_COM *)xmalloc (sizeof (IF_COM));
-  temp->flags = 0;
-  temp->test = test;
-  temp->true_case = true_case;
-  temp->false_case = false_case;
-  return (make_command (cm_if, (SIMPLE_COM *)temp));
-}
-
-COMMAND *
-make_until_or_while (test, action, which)
-     COMMAND *test, *action;
-     enum command_type which;
-{
-  WHILE_COM *temp;
-
-  temp = (WHILE_COM *)xmalloc (sizeof (WHILE_COM));
-  temp->flags = 0;
-  temp->test = test;
-  temp->action = action;
-  return (make_command (which, (SIMPLE_COM *)temp));
-}
-
-COMMAND *
-make_while_command (test, action)
-     COMMAND *test, *action;
-{
-  return (make_until_or_while (test, action, cm_while));
-}
-
-COMMAND *
-make_until_command (test, action)
-     COMMAND *test, *action;
-{
-  return (make_until_or_while (test, action, cm_until));
-}
-
-COMMAND *
-make_bare_simple_command ()
-{
-  COMMAND *command;
-  SIMPLE_COM *temp = (SIMPLE_COM *)xmalloc (sizeof (SIMPLE_COM));
-
-  temp->flags = 0;
-  temp->words = (WORD_LIST *)NULL;
-  temp->redirects = (REDIRECT *)NULL;
-  command = (COMMAND *)xmalloc (sizeof (COMMAND));
-  command->type = cm_simple;
-  command->redirects = (REDIRECT *)NULL;
-  command->flags = 0;
-  command->value.Simple = temp;
-  return (command);
-}
-
-COMMAND *
-new_make_simple_command (word, prefix, suffix)
-     WORD_DESC *word;
-     ELEMENT *prefix;
-     ELEMENT *suffix;
-{
-  /* Make a list of words and redirects from WORD, PREFIX, and SUFFIX. */
-  WORD_LIST *w = (WORD_LIST *)NULL;
-  REDIRECT *r = (REDIRECT *)NULL;
-  COMMAND *ret;
-  SIMPLE_COM *sc;
-  register ELEMENT *te;
-
-  ret = make_bare_simple_command ();
-  sc = ret->value.Simple;
-
-  te = prefix;
-  while (te)
-    {
-      ELEMENT *t2;
-      if (te->redirect)
-        {
-          te->redirect->next  = r;
-          r->next = te->redirect;
-        }
-      else if (te->word)
-        {
-          WORD_LIST *twl = make_word_list (te->word, (WORD_LIST *)NULL);
-          twl->next = w;
-          w = twl;
-        }
-      t2 = te;
-      te = te->next;
-      free (t2);
-    }
-
-  if (word)
-    {
-      WORD_LIST *twl = make_word_list (word, (WORD_LIST *)NULL);
-      twl->next = w;
-      w = twl;
-    }
-
-  te = suffix;
-  while (te)
-    {
-      ELEMENT *t2;
-      if (te->redirect)
-        {
-          te->redirect->next  = r;
-          r->next = te->redirect;
-        }
-      else if (te->word)
-        {
-          WORD_LIST *twl = make_word_list (te->word, (WORD_LIST *)NULL);
-          twl->next = w;
-          w = twl;
-        }
-      t2 = te;
-      te = te->next;
-      free (t2);
-    }
-
-  sc->words = (WORD_LIST *)reverse_list (w);
-  sc->redirects = (REDIRECT *)reverse_list (r);
-  sc->flags = 0;
-
-  return (ret);
-}
-
-/* Return a command which is the connection of the word or redirection
-   in ELEMENT, and the command * or NULL in COMMAND. */
-COMMAND *
-make_simple_command (element, command)
-     ELEMENT element;
-     COMMAND *command;
-{
-  /* If we are starting from scratch, then make the initial command
-     structure.  Also note that we have to fill in all the slots, since
-     malloc doesn't return zeroed space. */
-  if (!command)
-    command = make_bare_simple_command ();
-  if (element.word)
-    {
-      WORD_LIST *tw = (WORD_LIST *)xmalloc (sizeof (WORD_LIST));
-      tw->word = element.word;
-      tw->next = command->value.Simple->words;
-      command->value.Simple->words = tw;
-    }
-  else
-    {
-      REDIRECT *r = element.redirect;
-      /* Due to the way <> is implemented, there may be more than a single
-        redirection in element.redirect.  We just follow the chain as far
-        as it goes, and hook onto the end. */
-      while (r->next)
-       r = r->next;
-      r->next = command->value.Simple->redirects;
-      command->value.Simple->redirects = element.redirect;
-    }
-  return (command);
-}
-
-#define POSIX_HERE_DOCUMENTS
-make_here_document (temp)
-     REDIRECT *temp;
-{
-  int kill_leading = 0;
-
-  switch (temp->instruction)
-    {
-      /* Because we are Bourne compatible, we read the input for this
-        << or <<- redirection now, from wherever input is coming from.
-        We store the input read into a WORD_DESC.  Replace the text of
-        the redirectee.word with the new input text.  If <<- is on,
-        then remove leading TABS from each line. */
-
-      case r_deblank_reading_until:    /* <<-foo */
-       kill_leading++;
-       /* ... */
-      case r_reading_until:            /* <<foo */
-       {
-         extern char *redirection_expand ();
-         extern char *string_quote_removal ();
-         char *redirectee_word;
-         int len;
-
-         char *document = (char *)NULL;
-         int document_index = 0, document_size = 0;
-
-#if !defined (POSIX_HERE_DOCUMENTS)
-         /* Because of Bourne shell semantics, we turn off globbing, but
-            only for this style of redirection.  I feel a little ill.  */
-         {
-           extern int disallow_filename_globbing;
-           int old_value = disallow_filename_globbing;
-           disallow_filename_globbing = 1;
-
-           redirectee_word = redirection_expand (temp->redirectee.filename);
-
-           disallow_filename_globbing = old_value;
-         }
-#else /* POSIX_HERE_DOCUMENTS */
-         /* Quote removal is the only expansion performed on the delimiter
-            for here documents, making it an extremely special case.  I
-            still feel ill. */
-         redirectee_word =
-           string_quote_removal (temp->redirectee.filename->word, 0);
-#endif /* POSIX_HERE_DOCUMENTS */
-
-         /* redirection_expand will return NULL if the expansion results in
-            multiple words or no words.  Check for that here, and just abort
-            this here document if it does. */
-         if (redirectee_word)
-           len = strlen (redirectee_word);
-         else
-           {
-             temp->here_doc_eof = savestring ("");
-             goto document_done;
-           }
-
-         free (temp->redirectee.filename->word);
-         temp->here_doc_eof = redirectee_word;
-
-         /* Read lines from wherever lines are coming from.
-            For each line read, if kill_leading, then kill the
-            leading tab characters.
-            If the line matches redirectee_word exactly, then we have
-            manufactured the document.  Otherwise, add the line to the
-            list of lines in the document. */
-         {
-           extern char *read_secondary_line ();
-           char *line;
-           int l;
-
-           while (line = read_secondary_line ())
-             {
-               if (!line)
-                 goto document_done;
-
-               if (kill_leading)
-                 {
-                   register int i;
-
-                   /* Hack:  To be compatible with some Bourne shells, we 
-                      check the word before stripping the whitespace.  This
-                      is a hack, though. */
-                   if ((strncmp (line, redirectee_word, len) == 0) &&
-                       line[len] == '\n')
-                     goto document_done;
-
-                   for (i = 0; line[i] == '\t'; i++)
-                     ;
-
-                   if (i)
-                     strcpy (&line[0], &line[i]);
-                 }
-
-               if ((strncmp (line, redirectee_word, len) == 0) &&
-                   line[len] == '\n')
-                 goto document_done;
-
-               l = strlen (line);
-               if (l + document_index >= document_size)
-                 {
-                   document = (char *)
-                     xrealloc (document, (document_size += (10 * l)));
-                 }
-
-               if (l != 0)
-                 {
-                   strcpy (&document[document_index], line);
-                   free (line);
-                   document_index += l;
-                 }
-             }
-  document_done:
-           if (!document)
-             document = savestring ("");
-           temp->redirectee.filename->word = document;
-         }
-       }
-    }
-}
-   
-/* Generate a REDIRECT from SOURCE, DEST, and INSTRUCTION. 
-   INSTRUCTION is the instruction type, SOURCE is an INT,
-   and DEST is an INT or a WORD_DESC *. */
-REDIRECT *
-make_redirection (source, instruction, dest)
-     enum r_instruction instruction;
-{
-  REDIRECT *temp = (REDIRECT *)xmalloc (sizeof (REDIRECT));
-
-  /* First do the common cases. */
-  temp->redirector = source;
-  temp->redirectee.dest = dest;
-  temp->instruction = instruction;
-  temp->next = (REDIRECT *)NULL;
-
-  switch (instruction)
-    {
-
-    case r_output_direction:   /* >foo */
-    case r_output_force:       /* >| foo */
-      temp->flags = O_TRUNC | O_WRONLY | O_CREAT;
-      break;
-
-    case r_input_direction:    /* <foo */
-    case r_inputa_direction:   /* foo & makes this. */
-      temp->flags = O_RDONLY;
-      break;
-
-    case r_appending_to:       /* >>foo */
-      temp->flags = O_APPEND | O_WRONLY | O_CREAT;
-      break;
-
-    case r_deblank_reading_until: /* <<-foo */
-    case r_reading_until:      /* << foo */
-      break;
-
-    case r_duplicating_input:          /* 1<&2 */
-    case r_duplicating_output:         /* 1>&2 */
-    case r_close_this:                 /* <&- */
-    case r_duplicating_input_word:     /* 1<&$foo */
-    case r_duplicating_output_word:    /* 1>&$foo */
-      break;
-    
-    case r_err_and_out:                /* command &>filename */
-      temp->flags = O_TRUNC | O_WRONLY | O_CREAT;
-      break;
-
-    case r_input_output:
-      temp->flags = O_RDWR;
-      break;
-
-    default:
-      programming_error ("Redirection instruction from yyparse () '%d' is\n\
-out of range in make_redirection ().", instruction);
-      abort ();
-      break;
-    }
-  return (temp);
-}
-
-COMMAND *
-make_function_def (name, command)
-     WORD_DESC *name;
-     COMMAND *command;
-{
-  FUNCTION_DEF *temp;
-
-  temp = (FUNCTION_DEF *)xmalloc (sizeof (FUNCTION_DEF));
-  temp->command = command;
-  temp->name = name;
-  return (make_command (cm_function_def, (SIMPLE_COM *)temp));
-}
-
-/* Reverse the word list and redirection list in the simple command
-   has just been parsed.  It seems simpler to do this here the one
-   time then by any other method that I can think of. */
-COMMAND *
-clean_simple_command (command)
-     COMMAND *command;
-{
-  extern GENERIC_LIST *reverse_list ();
-
-  if (command->type != cm_simple)
-    {
-      programming_error
-       ("clean_simple_command () got a command with type %d.", command->type);
-    }
-  else
-    {
-      command->value.Simple->words =
-       (WORD_LIST *)reverse_list (command->value.Simple->words);
-      command->value.Simple->redirects = 
-       (REDIRECT *)reverse_list (command->value.Simple->redirects);
-    }
-
-  return (command);
-}
-
-/* Cons up a new array of words.  The words are taken from LIST,
-   which is a WORD_LIST *.  Absolutely everything is malloc'ed,
-   so you should free everything in this array when you are done.
-   The array is NULL terminated. */
-char **
-make_word_array (list)
-     WORD_LIST *list;
-{
-  int count = list_length (list);
-  char **array = (char **)xmalloc ((1 + count) * sizeof (char *));
-
-  for (count = 0; list; count++)
-    {
-      array[count] = (char *)xmalloc (1 + strlen (list->word->word));
-      strcpy (array[count], list->word->word);
-      list = list->next;
-    }
-  array[count] = (char *)NULL;
-  return (array);
-}
diff --git a/CWRU/posix-parser/parse.y b/CWRU/posix-parser/parse.y
deleted file mode 100644 (file)
index df7faba..0000000
+++ /dev/null
@@ -1,1932 +0,0 @@
-/* Yacc grammar for bash. */
-
-/* Copyright (C) 1989 Free Software Foundation, Inc.
-
-   This file is part of GNU Bash, the Bourne Again SHell.
-
-   Bash is free software; you can redistribute it and/or modify it under
-   the terms of the GNU General Public License as published by the Free
-   Software Foundation; either version 1, or (at your option) any later
-   version.
-
-   Bash 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 General Public License
-   for more details.
-
-   You should have received a copy of the GNU General Public License along
-   with Bash; see the file LICENSE.  If not, write to the Free Software
-   Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */
-
-%{
-#include <stdio.h>
-#include <sys/types.h>
-#include <signal.h>
-#include <varargs.h>
-#include "shell.h"
-#include "flags.h"
-
-#define YYDEBUG 1
-extern int eof_encountered;
-extern int no_line_editing;
-extern int interactive, interactive_shell;
-
-extern COMMAND *new_make_simple_command ();
-
-extern char *index ();
-/* **************************************************************** */
-/*                                                                 */
-/*                 "Forward" declarations                          */
-/*                                                                 */
-/* **************************************************************** */
-
-/* This is kind of sickening.  In order to let these variables be seen by
-   all the functions that need them, I am forced to place their declarations
-   far away from the place where they should logically be found. */
-
-static int reserved_word_acceptable ();
-
-/* PROMPT_STRING_POINTER points to one of these, never to an actual string. */
-char *ps1_prompt, *ps2_prompt;
-
-/* Handle on the current prompt string.  Indirectly points through
-   ps1_ or ps2_prompt. */
-char **prompt_string_pointer = (char **)NULL;
-char *current_prompt_string;
-
-/* The number of lines read from input while creating the current command. */
-int current_command_line_count = 0;
-
-/* Variables to manage the task of reading here documents, because we need to
-   defer the reading until after a complete command has been collected. */
-REDIRECT *redirection_needing_here_doc = (REDIRECT *)NULL;
-int need_here_doc = 0;
-%}
-
-%union {
-  WORD_DESC *word;             /* the word that we read. */
-  int number;                  /* the number that we read. */
-  WORD_LIST *word_list;
-  COMMAND *command;
-  REDIRECT *redirect;
-  ELEMENT *element;
-  PATTERN_LIST *pattern;
-  int separator_token;
-}
-
-/* Reserved words.  Members of the first group are only recognized
-   in the case that they are preceded by a list_terminator.  Members
-   of the second group are recognized only under special circumstances. */
-%token IF THEN ELSE ELIF FI CASE ESAC FOR WHILE UNTIL DO DONE FUNCTION
-%token IN BANG
-
-/* More general tokens. yylex () knows how to make these. */
-%token <word> WORD ASSIGNMENT_WORD NAME
-%token <number> NUMBER
-%token AND_AND OR_OR GREATER_GREATER LESS_LESS LESS_AND
-%token GREATER_AND SEMI_SEMI LESS_LESS_MINUS AND_GREATER LESS_GREATER
-%token GREATER_BAR NEWLINE
-
-/* The types that the various syntactical units return. */
-
-%type <command> complete_command
-%type <command> list and_or pipeline pipe_sequence tcommand compound_command
-%type <command> simple_command subshell compound_list term
-%type <command> function_definition brace_group
-%type <command> for_clause case_clause while_clause if_clause until_clause
-%type <command> do_group else_part
-%type <redirect> redirect_list redirect
-%type <word_list> wordlist pattern 
-%type <separator_token> separator separator_op linebreak newline_list
-%type <separator_token> sequential_sep
-%type <pattern> case_list case_item
-%type <element> cmd_prefix cmd_suffix
-%type <word> cmd_name cmd_word
-
-%start inputunit
-
-%left yacc_EOF
-%%
-
-inputunit:     complete_command NEWLINE
-                       {
-                         TRACE("reduced complete_command NEWLINE to inputunit");
-                         global_command = $1;
-                         YYACCEPT;
-                       }
-       |       NEWLINE
-                       {
-                         TRACE("reduced NEWLINE to inputunit");
-                         global_command = (COMMAND *)NULL;
-                         YYACCEPT;
-                       }
-       ;
-
-complete_command
-       :       list separator
-                       {
-                         TRACE("reduced 'list separator' to complete_command");
-                         /* Case of regular command.  Discard the error
-                            safety net,and return the command just parsed. */
-                         $$ = $1;
-                       }
-       |       list
-                       {
-                         TRACE("reduced list to complete_command");
-                         /* Case of regular command.  Discard the error
-                            safety net,and return the command just parsed. */
-                         $$ = $1;
-                       }
-       |       error
-                       {
-                         /* Error during parsing.  Return NULL command. */
-                         global_command = (COMMAND *)NULL;
-                         eof_encountered = 0;
-                         discard_parser_constructs (1);
-                         if (interactive)
-                           {
-                             YYACCEPT;
-                           }
-                         else
-                           {
-                             YYABORT;
-                           }
-                       }
-       |       yacc_EOF
-                       {
-                         /* Case of EOF seen by itself.  Do ignoreeof or 
-                            not. */
-                         global_command = (COMMAND *)NULL;
-                         handle_eof_input_unit ();
-                         YYACCEPT;
-                       }
-       ;
-
-list   :       list separator_op and_or
-                       {
-                         $$ = command_connect ($1, $3, $2);
-                         if (need_here_doc)
-                           make_here_document (redirection_needing_here_doc);
-                         need_here_doc = 0;
-                        }
-       |       and_or
-                       {
-                         $$ = $1;
-                         if (need_here_doc)
-                           make_here_document (redirection_needing_here_doc);
-                         need_here_doc = 0;
-                         TRACE("reduced and_or to list");
-                        }
-       ;
-
-and_or :       pipeline
-                       {
-                         TRACE("reduced pipeline to and_or");
-                         $$ = $1;
-                       }
-       |       and_or AND_AND linebreak pipeline
-                       { $$ = command_connect ($1, $4, AND_AND); }
-       |       and_or OR_OR linebreak pipeline
-                       { $$ = command_connect ($1, $4, OR_OR); }
-       ;
-
-pipeline:      pipe_sequence
-                       {
-                         TRACE("reduced pipe_sequence to pipeline");
-                         $$ = $1;
-                       }
-       |       BANG pipe_sequence
-                       {
-                         $2->flags |= CMD_INVERT_RETURN;
-                         $$ = $2;
-                       }
-       ;
-
-pipe_sequence: tcommand
-                       { 
-                         TRACE("reduced tcommand to pipe_sequence");
-                         $$ = $1;
-                       }
-       |       pipe_sequence '|' linebreak tcommand
-                       { $$ = command_connect ($1, $4, '|'); }
-       ;
-
-tcommand:      simple_command
-                       { 
-                         TRACE("reduced simple_command to tcommand");
-                         $$ = clean_simple_command ($1);
-                       }
-       |       compound_command
-                       { $$ = $1; }
-       |       compound_command redirect_list
-                       {
-                         $1->redirects = $2;
-                         $$ = $1;
-                       }
-       |       function_definition
-                       { $$ = $1; }
-       ;
-
-compound_command
-       :       brace_group
-                       { $$ = $1; }
-       |       subshell
-                       { $$ = $1; }
-       |       for_clause
-                       {
-                         TRACE("reduced FOR_CLAUSE to COMPOUND_COMMAND");
-                         $$ = $1;
-                       }
-       |       case_clause
-                       { $$ = $1; }
-       |       if_clause
-                       {
-                         TRACE("reduced IF_CLAUSE to COMPOUND_COMMAND");
-                         $$ = $1;
-                       }
-       |       while_clause
-                       {
-                         TRACE("reduced WHILE_CLAUSE to COMPOUND_COMMAND");
-                         $$ = $1;
-                       }
-       |       until_clause
-                       { $$ = $1; }
-       ;
-
-subshell:      '(' list ')'
-                       { $2->flags |= CMD_WANT_SUBSHELL; $$ = $2; }
-       ;
-
-
-compound_list
-       :       term
-                       { $$ = $1; }
-       |       newline_list term
-                       { $$ = $2; }
-       |       term separator
-                       { $$ = command_connect ($1, 0, $2); }
-       |       newline_list term separator
-                       { $$ = command_connect ($2, 0, $3); }
-       ;
-
-term   :       term separator and_or
-                       { $$ = command_connect ($1, $3, $2); }
-       |       and_or
-                       { $$ = $1; }
-       ;
-
-for_clause
-       :       FOR WORD do_group
-                       { $$ = make_for_command ($2, (WORD_LIST *)add_string_to_list ("\"$@\"", (WORD_LIST *)NULL), $3); }
-       |       FOR WORD newline_list IN wordlist sequential_sep do_group
-                       { $$ = make_for_command ($2, (WORD_LIST *)reverse_list ($5), $7); }
-       |       FOR WORD IN wordlist sequential_sep do_group
-                       {
-                         TRACE("reduced FOR_CLAUSE");
-                         $$ = make_for_command ($2, (WORD_LIST *)reverse_list ($4), $6);
-                       }
-       ;
-
-wordlist:      wordlist WORD
-                       { $$ = make_word_list ($2, $1); }
-       |       WORD
-                       { $$ = make_word_list ($1, (WORD_LIST *)NULL); }
-       ;
-
-case_clause
-       :       CASE WORD IN linebreak case_list ESAC
-                       { $$ = make_case_command ($2, $5); }
-       |       CASE WORD IN linebreak ESAC
-                       { $$ = make_case_command ($2, (PATTERN_LIST *)NULL); }
-       ;
-
-case_list
-       :       case_list case_item
-                       { $2->next = $1; $$ = $2; }
-       |       case_item
-                       { $$ = $1; }
-       ;
-
-case_item
-       :       pattern ')' linebreak SEMI_SEMI linebreak
-                       { $$ = make_pattern_list ($1, (COMMAND *)NULL); }
-       |       pattern ')' compound_list SEMI_SEMI linebreak
-                       { $$ = make_pattern_list ($1, $3); }
-       |       '(' pattern ')' compound_list SEMI_SEMI linebreak
-                       { $$ = make_pattern_list ($2, $4); }
-       |       '(' pattern ')' linebreak SEMI_SEMI linebreak
-                       { $$ = make_pattern_list ($2, (COMMAND *)NULL); }
-       ;
-
-pattern:       WORD
-                       { $$ = make_word_list ($1, (WORD_LIST *)NULL); }
-       |       pattern '|' WORD
-                       { $$ = make_word_list ($3, $1); }
-       ;
-
-if_clause:     IF compound_list THEN compound_list else_part FI
-                       { $$ = make_if_command ($2, $4, $5); }
-       |       IF compound_list THEN compound_list FI
-                       { $$ = make_if_command ($2, $4, (COMMAND *)NULL); }
-       ;
-
-else_part:     ELIF compound_list THEN else_part
-                       { $$ = make_if_command ($2, $4, (COMMAND *)NULL); }
-       |       ELSE compound_list
-                       { $$ = $2; }
-       ;
-
-while_clause:  WHILE compound_list do_group
-                       {
-                         TRACE("reduced WHILE_CLAUSE");
-                         $$ = make_while_command ($2, $3);
-                       }
-       ;
-
-until_clause:  UNTIL compound_list do_group
-                       { $$ = make_until_command ($2, $3); }
-       ;
-
-function_definition
-       :       WORD '(' ')' linebreak brace_group
-                       { $$ = make_function_def ($1, $5); }
-       ;
-
-brace_group:   '{' compound_list '}'
-                       { $$ = make_group_command ($2); }
-       ;
-
-
-do_group:      DO compound_list DONE
-                       {
-                         TRACE("reduced DO_GROUP");
-                         $$ = $2;
-                       }
-       ;
-
-cmd_prefix:    ASSIGNMENT_WORD
-                       {
-                         struct element *temp_element;
-                         temp_element = (ELEMENT *)xmalloc (sizeof (ELEMENT));
-                         temp_element->word = $1;
-                         temp_element->redirect = (REDIRECT *)NULL;
-                         temp_element->next = (struct element *)NULL;
-                         TRACE("reduced cmd_prefix to ASSIGNMENT_WORD");
-                         $$ = temp_element;
-                       }
-       |       cmd_prefix ASSIGNMENT_WORD
-                       {
-                         struct element *temp_element;
-                         temp_element = (ELEMENT *)xmalloc (sizeof (ELEMENT));
-                         temp_element->word = $2;
-                         temp_element->redirect = (REDIRECT *)NULL;
-                         temp_element->next = (struct element *)NULL;
-                         $1->next = temp_element;
-                         TRACE("reduced cmd_prefix to cmd_prefix ASSIGNMENT_WORD");
-                         $$ = $1;
-                       }
-       |       redirect
-                       {
-                         struct element *temp_element;
-                         temp_element = (ELEMENT *)xmalloc (sizeof (ELEMENT));
-                         temp_element->word = (WORD_DESC *)NULL;
-                         temp_element->redirect = $1;
-                         temp_element->next = (struct element *)NULL;
-                         TRACE("reduced cmd_prefix to redirect");
-                         $$ = temp_element;
-                       }
-       |       cmd_prefix redirect                     
-                       {
-                         struct element *temp_element;
-                         temp_element = (ELEMENT *)xmalloc (sizeof (ELEMENT));
-                         temp_element->word = (WORD_DESC *)NULL;
-                         temp_element->redirect = $2;
-                         temp_element->next = (struct element *)NULL;
-                         $1->next = temp_element;
-                         TRACE("reduced cmd_prefix to cmd_prefix redirect");
-                         $$ = $1;
-                       }
-       ;
-
-cmd_name:      WORD
-                       {
-                         TRACE ("reduced WORD to cmd_name");
-                         $$ = $1;
-                       }
-       ;
-       
-cmd_word:      WORD
-                       {
-                         TRACE ("reduced WORD to cmd_word");
-                         $$ = $1;
-                       }
-       ;
-
-cmd_suffix:    WORD
-                       {
-                         struct element *temp_element;
-                         temp_element = (ELEMENT *)xmalloc (sizeof (ELEMENT));
-                         temp_element->word = $1;
-                         temp_element->redirect = (REDIRECT *)NULL;
-                         temp_element->next = (struct element *)NULL;
-                         TRACE("reduced cmd_suffix to WORD");
-                         $$ = temp_element;
-                       }
-       |       cmd_suffix WORD
-                       {
-                         struct element *temp_element;
-                         temp_element = (ELEMENT *)xmalloc (sizeof (ELEMENT));
-                         temp_element->word = $2;
-                         temp_element->redirect = (REDIRECT *)NULL;
-                         temp_element->next = (struct element *)NULL;
-                         TRACE("reduced cmd_suffix to cmd_suffix WORD");
-                         $1->next = temp_element;
-                         $$ = $1;
-                       }
-       |       redirect
-                       {
-                         struct element *temp_element;
-                         temp_element = (ELEMENT *)xmalloc (sizeof (ELEMENT));
-                         temp_element->word = (WORD_DESC *)NULL;
-                         temp_element->redirect = $1;
-                         temp_element->next = (struct element *)NULL;
-                         TRACE("reduced cmd_sufffix to redirect");
-                         $$ = temp_element;
-                       }
-       |       cmd_suffix redirect                     
-                       {
-                         struct element *temp_element;
-                         temp_element = (ELEMENT *)xmalloc (sizeof (ELEMENT));
-                         temp_element->word = (WORD_DESC *)NULL;
-                         temp_element->redirect = $2;
-                         temp_element->next = (struct element *)NULL;
-                         $1->next = temp_element;
-                         TRACE("reduced cmd_suffix to cmd_suffix redirect");
-                         $$ = $1;
-                       }
-       ;
-
-simple_command:        cmd_prefix cmd_word cmd_suffix
-                       { $$ = new_make_simple_command ($2, $1, $3); }
-       |       cmd_prefix cmd_word
-                       { $$ = new_make_simple_command ($2, $1, (ELEMENT *)NULL); }
-       |       cmd_prefix
-                       { $$ = new_make_simple_command ((WORD_DESC *)NULL, $1, (ELEMENT *)NULL); }
-       |       cmd_name cmd_suffix
-                       { $$ = new_make_simple_command ($1, (ELEMENT *)NULL, $2); }
-       |       cmd_name
-                       {
-                         TRACE("reduced cmd_name to simple_command");
-                         $$ = new_make_simple_command ($1, (ELEMENT *)NULL, (ELEMENT *)NULL);
-                       }
-       ;
-
-redirect_list: redirect
-                       {
-                         $$ = $1;
-                       }
-       |       redirect_list redirect
-                       { 
-                         register REDIRECT *t = $1;
-
-                         while (t->next)
-                           t = t->next;
-                         t->next = $2; 
-                         $$ = $1;
-                       }
-       ;
-
-redirect:      '>' WORD
-                       { $$ = make_redirection ( 1, r_output_direction, $2); }
-       |       '<' WORD
-                       { $$ = make_redirection ( 0, r_input_direction, $2); }
-       |       NUMBER '>' WORD
-                       { $$ = make_redirection ($1, r_output_direction, $3); }
-       |       NUMBER '<' WORD
-                       { $$ = make_redirection ($1, r_input_direction, $3); }
-       |       GREATER_GREATER WORD
-                       { $$ = make_redirection ( 1, r_appending_to, $2); }
-       |       NUMBER GREATER_GREATER WORD
-                       { $$ = make_redirection ($1, r_appending_to, $3); }
-
-       |       LESS_AND NUMBER
-                       { $$ = make_redirection ( 0, r_duplicating_input, $2); }
-       |       NUMBER LESS_AND NUMBER
-                       { $$ = make_redirection ($1, r_duplicating_input, $3); }
-       |       GREATER_AND NUMBER
-                       { $$ = make_redirection ( 1, r_duplicating_output, $2); }
-       |       NUMBER GREATER_AND NUMBER
-                       { $$ = make_redirection ($1, r_duplicating_output, $3); }
-       |       LESS_AND WORD
-                       { $$ = make_redirection ( 0, r_duplicating_input_word, $2); }
-       |       NUMBER LESS_AND WORD
-                       { $$ = make_redirection ($1, r_duplicating_input_word, $3); }
-       |       GREATER_AND WORD
-                       { $$ = make_redirection ( 1, r_duplicating_output_word, $2); }
-       |       NUMBER GREATER_AND WORD
-                       { $$ = make_redirection ($1, r_duplicating_output_word, $3); }
-       |       GREATER_AND '-'
-                       { $$ = make_redirection ( 1, r_close_this, 0); }
-       |       NUMBER GREATER_AND '-'
-                       { $$ = make_redirection ($1, r_close_this, 0); }
-       |       LESS_AND '-'
-                       { $$ = make_redirection ( 0, r_close_this, 0); }
-       |       NUMBER LESS_AND '-'
-                       { $$ = make_redirection ($1, r_close_this, 0); }
-       |       AND_GREATER WORD
-                       { $$ = make_redirection ( 1, r_err_and_out, $2); }
-       |       NUMBER LESS_GREATER WORD
-                       { $$ = make_redirection ( $1, r_input_output, $3); }
-       |       LESS_GREATER WORD
-                       {
-                         REDIRECT *t1, *t2;
-                         extern WORD_DESC *copy_word ();
-
-                         t1 = make_redirection ( 0, r_input_direction, $2);
-                         t2 = make_redirection ( 1, r_output_direction, copy_word ($2));
-                         t1->next = t2;
-                         $$ = t1;
-                       }                         
-       |       GREATER_BAR WORD
-                       { $$ = make_redirection ( 1, r_output_force, $2); }
-       |       NUMBER GREATER_BAR WORD
-                       { $$ = make_redirection ( $1, r_output_force, $3); }
-       |       LESS_LESS WORD
-                       {
-                         $$ = make_redirection ( 0, r_reading_until, $2);
-                         redirection_needing_here_doc = $$;
-                         need_here_doc = 1;
-                       }
-       |       NUMBER LESS_LESS WORD
-                       {
-                         $$ = make_redirection ($1, r_reading_until, $3);
-                         redirection_needing_here_doc = $$;
-                         need_here_doc = 1;
-                       }
-       |       LESS_LESS_MINUS WORD
-                       {
-                         $$ = make_redirection ( 0, r_deblank_reading_until, $2);
-                         redirection_needing_here_doc = $$;
-                         need_here_doc = 1;
-                       }
-       |       NUMBER LESS_LESS_MINUS WORD
-                       {
-                         $$ = make_redirection ($1, r_deblank_reading_until, $3);
-                         redirection_needing_here_doc = $$;
-                         need_here_doc = 1;
-                       }
-       ;
-
-newline_list:  NEWLINE
-                       {
-                         TRACE("reduced NEWLINE to newline_list");
-                         $$  = NEWLINE; /* XXX -- broken */
-                       }
-       |       newline_list NEWLINE
-                       {
-                         TRACE("reduced newline_list newline to newline_list");
-                         $$ = NEWLINE; /* XXX -- broken */
-                       }
-       ;
-
-linebreak:     newline_list
-                       {
-                         TRACE("reduced newline_list to linebreak");
-                         $$ = NEWLINE; /* XXX -- broken */
-                       }
-       |
-                       {
-                         TRACE("reduced empty to linebreak");
-                         $$ = NEWLINE; /* XXX -- broken */
-                       }
-       ;
-
-separator_op:  '&'
-                       {
-                         TRACE("reducing '&' to separator_op");
-                         $$ = '&'; /* XXX -- broken */
-                       }
-       |       ';'
-                       {
-                         TRACE("reducing ';' to separator_op");
-                         $$ = ';'; /* XXX -- broken */
-                       }
-       ;
-
-separator:     separator_op linebreak
-                       {
-                         TRACE("reduced separator_op linebreak to separator");
-                         $$ = $1; /* XXX -- broken */
-                       }
-       |       newline_list
-                       {
-                         TRACE("reduced newline_list to separator");
-                         $$ = ';'; /* XXX -- broken */
-                       }
-       ;
-
-sequential_sep:        ';' linebreak
-                       {
-                         TRACE("reduced ';' linebreak to sequential_sep");
-                         $$ = ';'; /* XXX -- broken */
-                       }
-       |       newline_list
-                       {
-                         TRACE("reduced newline_list to sequential_sep: ';'");
-                         $$ = ';'; /* XXX -- broken */
-                       }
-       ;
-
-%%
-
-/* Initial size to allocate for tokens, and the
-   amount to grow them by. */
-#define TOKEN_DEFAULT_GROW_SIZE 512
-
-/* The token currently being read. */
-int current_token = 0;
-
-/* The last read token, or NULL.  read_token () uses this for context
-   checking. */
-int last_read_token = 0;
-
-/* The token read prior to last_read_token. */
-int token_before_that = 0;
-
-/* Global var is non-zero when end of file has been reached. */
-int EOF_Reached = 0;
-
-/* yy_getc () returns the next available character from input or EOF.
-   yy_ungetc (c) makes `c' the next character to read.
-   init_yy_io (get, unget), makes the function `get' the installed function
-   for getting the next character, and makes `unget' the installed function
-   for un-getting a character. */
-return_EOF ()                  /* does nothing good. */
-{
-  return (EOF);
-}
-
-/* Variables containing the current get and unget functions. */
-
-/* Some stream `types'. */
-#define st_stream 0
-#define st_string 1
-
-Function *get_yy_char = return_EOF;
-Function *unget_yy_char = return_EOF;
-int yy_input_type = st_stream;
-FILE *yy_input_dev = (FILE *)NULL;
-
-/* The current stream name.  In the case of a file, this is a filename. */
-char *stream_name = (char *)NULL;
-
-/* Function to set get_yy_char and unget_yy_char. */
-init_yy_io (get_function, unget_function, type, location)
-     Function *get_function, *unget_function;
-     int type;
-     FILE *location;
-{
-  get_yy_char = get_function;
-  unget_yy_char = unget_function;
-  yy_input_type = type;
-  yy_input_dev = location;
-}
-
-/* Call this to get the next character of input. */
-yy_getc ()
-{
-  return (*get_yy_char) ();
-}
-
-/* Call this to unget C.  That is, to make C the next character
-   to be read. */
-yy_ungetc (c)
-{
-  return (*unget_yy_char) (c);
-}
-
-with_input_from_stdin ()
-{
-  with_input_from_stream (stdin, "stdin");
-}
-
-/* **************************************************************** */
-/*                                                                 */
-/*   Let input come from STRING.  STRING is zero terminated.       */
-/*                                                                 */
-/* **************************************************************** */
-
-int
-yy_string_get ()
-{
-  /* If the string doesn't exist, or is empty, EOF found. */
-  if (!(char *)yy_input_dev || !*(char *)yy_input_dev)
-    return (EOF);
-  else
-    {
-      register char *temp = (char *)yy_input_dev;
-      int c = *temp++;
-      yy_input_dev = (FILE *)temp;
-      return (c);
-    }
-}
-
-int
-yy_string_unget (c)
-     int c;
-{
-  register char *temp = (char *)yy_input_dev;
-  *(--temp) = c;
-  yy_input_dev = (FILE *)temp;
-  return (c);
-}
-
-with_input_from_string (string, name)
-     char *string;
-     char *name;
-{
-  init_yy_io (yy_string_get, yy_string_unget, st_string, (FILE *)string);
-  stream_name = savestring (name);
-}
-
-/* **************************************************************** */
-/*                                                                 */
-/*                  Let input come from STREAM.                    */
-/*                                                                 */
-/* **************************************************************** */
-
-int
-yy_stream_get ()
-{
-  if (yy_input_dev)
-    return (getc (yy_input_dev));
-  else
-    return (EOF);
-}
-
-int
-yy_stream_unget (c)
-     int c;
-{
-  return (ungetc (c, yy_input_dev));
-}
-
-with_input_from_stream (stream, name)
-     FILE *stream;
-     char *name;
-{
-  init_yy_io (yy_stream_get, yy_stream_unget, st_stream, stream);
-  stream_name = savestring (name);
-}
-
-typedef struct stream_saver {
-  struct stream_saver *next;
-  Function *getter, *putter;
-  int type, line;
-  char *location, *name;
-} STREAM_SAVER;
-
-/* The globally known line number. */
-int line_number = 0;
-
-STREAM_SAVER *stream_list = (STREAM_SAVER *)NULL;
-
-push_stream ()
-{
-  STREAM_SAVER *temp = (STREAM_SAVER *)xmalloc (sizeof (STREAM_SAVER));
-  temp->type = yy_input_type;
-  temp->location = (char *)yy_input_dev;
-  temp->getter = get_yy_char;
-  temp->putter = unget_yy_char;
-  temp->line = line_number;
-  temp->name = stream_name; stream_name = (char *)NULL;
-  temp->next = stream_list;
-  stream_list = temp;
-  EOF_Reached = line_number = 0;
-}
-
-pop_stream ()
-{
-  if (!stream_list)
-    {
-      EOF_Reached = 1;
-    }
-  else
-    {
-      STREAM_SAVER *temp = stream_list;
-    
-      EOF_Reached = 0;
-      stream_list = stream_list->next;
-
-      if (stream_name)
-       free (stream_name);
-      stream_name = temp->name;
-
-      init_yy_io (temp->getter, temp->putter, temp->type, (FILE *)temp->location);
-      line_number = temp->line;
-      free (temp);
-    }
-}
-static int in_case_pattern_list = 0;
-
-\f
-/* Return a line of text, taken from wherever yylex () reads input.
-   If there is no more input, then we return NULL. */
-char *
-read_a_line ()
-{
-  char *line_buffer = (char *)NULL;
-  int indx = 0, buffer_size = 0;
-  int c;
-
-  while (1)
-    {
-      c = yy_getc ();
-
-      if (c == 0)
-       continue;
-
-      /* If there is no more input, then we return NULL. */
-      if (c == EOF)
-       {
-         c = '\n';
-         if (!line_buffer)
-           return ((char *)NULL);
-       }
-
-      /* `+2' in case the final (200'th) character in the buffer is a newline;
-        otherwise the code below that NULL-terminates it will write over the
-        201st slot and kill the range checking in free(). */
-      if (indx + 2 > buffer_size)
-       if (!buffer_size)
-         line_buffer = (char *)xmalloc (buffer_size = 200);
-       else
-         line_buffer = (char *)xrealloc (line_buffer, buffer_size += 200);
-
-      line_buffer[indx++] = c;
-      if (c == '\n')
-       {
-         line_buffer[indx] = '\0';
-         return (line_buffer);
-       }
-    }
-}
-
-/* Return a line as in read_a_line (), but insure that the prompt is
-   the secondary prompt. */
-char *
-read_secondary_line ()
-{
-  prompt_string_pointer = &ps2_prompt;
-  prompt_again ();
-  return (read_a_line ());
-}
-
-\f
-/* **************************************************************** */
-/*                                                                 */
-/*                             YYLEX ()                            */
-/*                                                                 */
-/* **************************************************************** */
-
-/* Reserved words.  These are only recognized as the first word of a
-   command.  TOKEN_WORD_ALIST. */
-STRING_INT_ALIST word_token_alist[] = {
-  {"if", IF},
-  {"then", THEN},
-  {"else", ELSE},
-  {"elif", ELIF},
-  {"fi", FI},
-  {"case", CASE},
-  {"esac", ESAC},
-  {"for", FOR},
-  {"while", WHILE},
-  {"until", UNTIL},
-  {"do", DO},
-  {"done", DONE},
-  {"in", IN},
-  {"function", FUNCTION},
-  {"{", '{'},
-  {"}", '}'},
-  {"!", BANG},
-  {(char *)NULL, 0}
-};
-
-/* Where shell input comes from.  History expansion is performed on each
-   line when the shell is interactive. */
-char *shell_input_line = (char *)NULL;
-int shell_input_line_index = 0;
-int shell_input_line_size = 0; /* Amount allocated for shell_input_line. */
-int shell_input_line_len = 0;  /* strlen (shell_input_line) */
-
-/* Either zero, or EOF. */
-int shell_input_line_terminator = 0;
-
-/* Return the next shell input character.  This always reads characters
-   from shell_input_line; when that line is exhausted, it is time to
-   read the next line. */
-int
-shell_getc (remove_quoted_newline)
-     int remove_quoted_newline;
-{
-  int c;
-
-  QUIT;
-
-  if (!shell_input_line || !shell_input_line[shell_input_line_index])
-    {
-      register int i, l;
-      char *pre_process_line (), *expansions;
-
-      restart_read_next_line:
-
-      line_number++;
-
-    restart_read:
-
-      i = 0;
-      shell_input_line_terminator = 0;
-
-      clearerr (stdin);
-      while (c = yy_getc ())
-       {
-         if (i + 2 > shell_input_line_size)
-           shell_input_line = (char *)
-             xrealloc (shell_input_line, shell_input_line_size += 256);
-
-         if (c == EOF)
-           {
-             clearerr (stdin);
-
-             if (!i)
-               shell_input_line_terminator = EOF;
-
-             shell_input_line[i] = '\0';
-             break;
-           }
-
-         shell_input_line[i++] = c;
-
-         if (c == '\n')
-           {
-             shell_input_line[--i] = '\0';
-             current_command_line_count++;
-             break;
-           }
-       }
-      shell_input_line_index = 0;
-      shell_input_line_len = i;                /* == strlen (shell_input_line) */
-
-      if (!shell_input_line || !shell_input_line[0])
-       goto after_pre_process;
-
-      if (interactive)
-       {
-         expansions = pre_process_line (shell_input_line, 1, 1);
-
-         free (shell_input_line);
-         shell_input_line = expansions;
-         shell_input_line_len = shell_input_line ?
-                                strlen (shell_input_line) :
-                                0;
-         /* We have to force the xrealloc below because we don't know the
-            true allocated size of shell_input_line anymore. */
-         shell_input_line_size = shell_input_line_len;
-       }
-
-  after_pre_process:
-#if 0
-      if (shell_input_line)
-       {
-         fprintf (stderr, "%s\n", shell_input_line);
-       }
-      else
-       {
-         shell_input_line_size = 0;
-         prompt_string_pointer = &current_prompt_string;
-         prompt_again ();
-         goto restart_read;
-       }
-#endif
-
-      /* Add the newline to the end of this string, iff the string does
-        not already end in an EOF character.  */
-      if (shell_input_line_terminator != EOF)
-       {
-         l = shell_input_line_len;     /* was a call to strlen */
-
-         if (l + 3 > shell_input_line_size)
-           shell_input_line = (char *)xrealloc (shell_input_line,
-                                       1 + (shell_input_line_size += 2));
-
-         strcpy (shell_input_line + l, "\n");
-       }
-    }
-  
-  c = shell_input_line[shell_input_line_index];
-
-  if (c)
-    shell_input_line_index++;
-
-  if (c == '\\' && remove_quoted_newline &&
-      shell_input_line[shell_input_line_index] == '\n')
-    {
-       prompt_again ();
-       goto restart_read_next_line;
-    }
-
-  if (!c && shell_input_line_terminator == EOF)
-    {
-      if (shell_input_line_index != 0)
-       return (NEWLINE);
-      else
-       return (EOF);
-    }
-
-  return (c);
-}
-
-/* Put C back into the input for the shell. */
-shell_ungetc (c)
-     int c;
-{
-  if (shell_input_line && shell_input_line_index)
-    shell_input_line[--shell_input_line_index] = c;
-}
-
-/* Discard input until CHARACTER is seen. */
-discard_until (character)
-     int character;
-{
-  int c;
-  while ((c = shell_getc (0)) != EOF && c != character)
-    ;
-  if (c != EOF )
-    shell_ungetc (c);
-}
-
-#if defined (HISTORY_REEDITING)
-/* Tell readline () that we have some text for it to edit. */
-re_edit (text)
-     char *text;
-{
-#if defined (READLINE)
-  if (strcmp (stream_name, "readline stdin") == 0)
-    bash_re_edit (text);
-#endif /* READLINE */
-}
-#endif /* HISTORY_REEDITING */
-
-/* Non-zero means do no history expansion on this line, regardless
-   of what history_expansion says. */
-int history_expansion_inhibited = 0;
-
-/* Do pre-processing on LINE.  If PRINT_CHANGES is non-zero, then
-   print the results of expanding the line if there were any changes.
-   If there is an error, return NULL, otherwise the expanded line is
-   returned.  If ADDIT is non-zero the line is added to the history
-   list after history expansion.  ADDIT is just a suggestion;
-   REMEMBER_ON_HISTORY can veto, and does.
-   Right now this does history expansion. */
-char *
-pre_process_line (line, print_changes, addit)
-     char *line;
-     int print_changes, addit;
-{
-  char *return_value;
-  return_value = savestring (line);
-
-  return (return_value);
-}
-
-\f
-/* Place to remember the token.  We try to keep the buffer
-   at a reasonable size, but it can grow. */
-char *token = (char *)NULL;
-
-/* Current size of the token buffer. */
-int token_buffer_size = 0;
-
-/* Command to read_token () explaining what we want it to do. */
-#define READ 0
-#define RESET 1
-#define prompt_is_ps1 \
-      (!prompt_string_pointer || prompt_string_pointer == &ps1_prompt)
-
-/* Function for yyparse to call.  yylex keeps track of
-   the last two tokens read, and calls read_token.  */
-
-yylex ()
-{
-  if (interactive && (!current_token || current_token == NEWLINE))
-    {
-      prompt_again ();
-    }
-
-  token_before_that = last_read_token;
-  last_read_token = current_token;
-  current_token = read_token (READ);
-  return (current_token);
-}
-
-/* Called from shell.c when Control-C is typed at top level.  Or
-   by the error rule at top level. */
-reset_parser ()
-{
-  read_token (RESET);
-}
-  
-/* When non-zero, we have read the required tokens
-   which allow ESAC to be the next one read. */
-static int allow_esac_as_next = 0;
-
-/* When non-zero, accept single '{' as a token itself. */
-static int allow_open_brace = 0;
-
-/* DELIMITER is the value of the delimiter that is currently
-   enclosing, or zero for none. */
-static int delimiter = 0;
-static int old_delimiter = 0;
-
-/* When non-zero, an open-brace used to create a group is awaiting a close
-   brace partner. */
-static int open_brace_awaiting_satisfaction = 0;
-
-/* If non-zero, it is the token that we want read_token to return regardless
-   of what text is (or isn't) present to be read.  read_token resets this. */
-int token_to_read = 0;
-
-/* Read the next token.  Command can be READ (normal operation) or 
-   RESET (to normalize state). */
-read_token (command)
-     int command;
-{
-  extern int interactive_shell;        /* Whether the current shell is interactive. */
-  int character;               /* Current character. */
-  int peek_char;               /* Temporary look-ahead character. */
-  int result;                  /* The thing to return. */
-  WORD_DESC *the_word;         /* The value for YYLVAL when a WORD is read. */
-
-  if (token_buffer_size < TOKEN_DEFAULT_GROW_SIZE)
-    {
-      if (token)
-       free (token);
-      token = (char *)xmalloc (token_buffer_size = TOKEN_DEFAULT_GROW_SIZE);
-    }
-
-  if (command == RESET)
-    {
-      delimiter = old_delimiter = 0;
-      open_brace_awaiting_satisfaction = 0;
-      in_case_pattern_list = 0;
-
-      if (shell_input_line)
-       {
-         free (shell_input_line);
-         shell_input_line = (char *)NULL;
-         shell_input_line_size = shell_input_line_index = 0;
-       }
-      last_read_token = NEWLINE;
-      token_to_read = NEWLINE;
-      return (NEWLINE);
-    }
-
-  if (token_to_read)
-    {
-      int rt = token_to_read;
-      token_to_read = 0;
-      return (rt);
-    }
-
-  /* Read a single word from input.  Start by skipping blanks. */
-  while ((character = shell_getc (1)) != EOF && whitespace (character));
-
-  if (character == EOF)
-    return (yacc_EOF);
-
-  if (character == '#' && !interactive)
-    {
-      /* A comment.  Discard until EOL or EOF, and then return a newline. */
-      discard_until ('\n');
-      shell_getc (0);
-
-      /* If we're about to return an unquoted newline, we can go and collect
-        the text of any pending here document. */
-      if (need_here_doc)
-       make_here_document (redirection_needing_here_doc);
-      need_here_doc = 0;
-
-      return (NEWLINE);
-    }
-
-  if (character == '\n')
-    {
-      /* If we're about to return an unquoted newline, we can go and collect
-        the text of any pending here document. */
-      if (need_here_doc)
-       make_here_document (redirection_needing_here_doc);
-      need_here_doc = 0;
-
-      TRACE ("read_token: returning NEWLINE");
-      return (NEWLINE);
-    }
-
-  if (member (character, "()<>;&|"))
-    {
-      /* Please note that the shell does not allow whitespace to
-        appear in between tokens which are character pairs, such as
-        "<<" or ">>".  I believe this is the correct behaviour. */
-      if (character == (peek_char = shell_getc (1)))
-       {
-         switch (character)
-           {
-             /* If '<' then we could be at "<<" or at "<<-".  We have to
-                look ahead one more character. */
-           case '<':
-             peek_char = shell_getc (1);
-             if (peek_char == '-')
-               return (LESS_LESS_MINUS);
-             else
-               {
-                 shell_ungetc (peek_char);
-                 return (LESS_LESS);
-               }
-
-           case '>':
-             return (GREATER_GREATER);
-
-           case ';':
-             in_case_pattern_list = 1;
-             return (SEMI_SEMI);
-
-           case '&':
-             return (AND_AND);
-
-           case '|':
-             return (OR_OR);
-           }
-       }
-      else
-       {
-         if (peek_char == '&')
-           {
-             switch (character)
-               {
-               case '<': return (LESS_AND);
-               case '>': return (GREATER_AND);
-               }
-           }
-         if (character == '<' && peek_char == '>')
-           return (LESS_GREATER);
-         if (character == '>' && peek_char == '|')
-           return (GREATER_BAR);
-         if (peek_char == '>' && character == '&')
-           return (AND_GREATER);
-       }
-      shell_ungetc (peek_char);
-
-      /* If we look like we are reading the start of a function
-        definition, then let the reader know about it so that
-        we will do the right thing with `{'. */
-      if (character == ')' &&
-         last_read_token == '(' && token_before_that == WORD)
-       {
-         allow_open_brace = 1;
-       }
-
-      if (in_case_pattern_list && (character == ')'))
-       in_case_pattern_list = 0;
-#if defined (PROCESS_SUBSTITUTION)
-      /* If we are performing process substitution, let <( and >( by
-        and make a word. */
-      if (!((character == '>' || character == '<') && peek_char == '('))
-#endif /* PROCESS_SUBSTITUTION */
-
-      TRACE("read_token: returning '%c'", character);
-      return (character);
-    }
-
-  /* Hack <&- (close stdin) case. */
-  if (character == '-')
-    {
-      switch (last_read_token)
-       {
-       case LESS_AND:
-       case GREATER_AND:
-         return (character);
-       }
-    }
-  
-  /* Okay, if we got this far, we have to read a word.  Read one,
-     and then check it against the known ones. */
-  {
-    /* Index into the token that we are building. */
-    int token_index = 0;
-
-    /* ALL_DIGITS becomes zero when we see a non-digit. */
-    int all_digits = digit (character);
-
-    /* DOLLAR_PRESENT becomes non-zero if we see a `$'. */
-    int dollar_present = 0;
-
-    /* QUOTED becomes non-zero if we see one of ("), ('), (`), or (\). */
-    int quoted = 0;
-
-    /* Non-zero means to ignore the value of the next character, and just
-       to add it no matter what. */
-    int pass_next_character = 0;
-
-    /* Non-zero means parsing a dollar-paren construct.  It is the count of
-       un-quoted closes we need to see. */
-    int dollar_paren_level = 0;
-
-    /* Non-zero means parsing a dollar-bracket construct ($[...]).  It is
-       the count of un-quoted `]' characters we need to see. */
-    int dollar_bracket_level = 0;
-
-    /* Another level variable.  This one is for dollar_parens inside of
-       double-quotes. */
-    int delimited_paren_level = 0;
-
-    for (;;)
-      {
-       if (character == EOF)
-         goto got_token;
-
-       if (pass_next_character)
-         {
-           pass_next_character = 0;
-           goto got_character;
-         }
-
-      if (delimiter && character == '\\' && delimiter != '\'')
-       {
-         peek_char = shell_getc (0);
-         if (peek_char != '\\')
-           shell_ungetc (peek_char);
-         else
-           {
-             token[token_index++] = character;
-             goto got_character;
-           }
-       }
-
-       /* Handle backslashes.  Quote lots of things when not inside of
-          double-quotes, quote some things inside of double-quotes. */
-          
-       if (character == '\\' && delimiter != '\'')
-         {
-           peek_char = shell_getc (0);
-
-           /* Backslash-newline is ignored in all cases excepting
-              when quoted with single quotes. */
-           if (peek_char == '\n')
-             {
-               character = '\n';
-               goto next_character;
-             }
-           else
-             {
-               shell_ungetc (peek_char);
-
-               /* If the next character is to be quoted, do it now. */
-               if (!delimiter || delimiter == '`' ||
-                   ((delimiter == '"' ) &&
-                    (member (peek_char, slashify_in_quotes))))
-                 {
-                   pass_next_character++;
-                   quoted = 1;
-                   goto got_character;
-                 }
-             }
-         }
-
-       /* This is a hack, in its present form.  If a backquote substitution
-          appears within double quotes, everything within the backquotes
-          should be read as part of a single word.  Jesus.  Now I see why
-          Korn introduced the $() form. */
-       if (delimiter && delimiter == '"' && character == '`')
-         {
-           old_delimiter = delimiter;
-           delimiter = character;
-           goto got_character;
-         }
-
-       if (delimiter)
-         {
-           if (character == delimiter)
-             {
-               if (delimited_paren_level)
-                 {
-#if defined (NOTDEF)
-                   report_error ("Expected ')' before %c", character);
-                   return (NEWLINE);
-#else
-                   goto got_character;
-#endif /* NOTDEF */
-                 }
-
-               delimiter = 0;
-
-               if (old_delimiter == '"' && character == '`')
-                 {
-                   delimiter = old_delimiter;
-                   old_delimiter = 0;
-                 }
-
-               goto got_character;
-             }
-         }
-
-       if (!delimiter || delimiter == '`' || delimiter == '"')
-         {
-#if defined (PROCESS_SUBSTITUTION)
-           if (character == '$' || character == '<' || character == '>')
-#else
-           if (character == '$')
-#endif /* PROCESS_SUBSTITUTION */
-             {
-               peek_char = shell_getc (1);
-               shell_ungetc (peek_char);
-               if (peek_char == '(')
-                 {
-                   if (!delimiter)
-                     dollar_paren_level++;
-                   else
-                     delimited_paren_level++;
-
-                   pass_next_character++;
-                   goto got_character;
-                 }
-               else if (peek_char == '[')
-                 {
-                   if (!delimiter)
-                     dollar_bracket_level++;
-
-                   pass_next_character++;
-                   goto got_character;
-                 }
-             }
-
-           /* If we are parsing a $() or $[] construct, we need to balance
-              parens and brackets inside the construct.  This whole function
-              could use a rewrite. */
-           if (character == '(')
-             {
-               if (delimiter && delimited_paren_level)
-                 delimited_paren_level++;
-
-               if (!delimiter && dollar_paren_level)
-                 dollar_paren_level++;
-             }
-
-           if (character == '[')
-             {
-               if (!delimiter && dollar_bracket_level)
-                 dollar_bracket_level++;
-             }
-
-           /* This code needs to take into account whether we are inside a
-              case statement pattern list, and whether this paren is supposed
-              to terminate it (hey, it could happen).  It's not as simple
-              as just using in_case_pattern_list, because we're not parsing
-              anything while we're reading a $( ) construct.  Maybe we
-              should move that whole mess into the yacc parser. */
-           if (character == ')')
-             {
-               if (delimiter && delimited_paren_level)
-                 delimited_paren_level--;
-
-               if (!delimiter && dollar_paren_level)
-                 {
-                   dollar_paren_level--;
-                   goto got_character;
-                 }
-             }
-
-           if (character == ']')
-             {
-               if (!delimiter && dollar_bracket_level)
-                 {
-                   dollar_bracket_level--;
-                   goto got_character;
-                 }
-             }
-         }
-
-       if (!dollar_paren_level && !dollar_bracket_level && !delimiter &&
-           member (character, " \t\n;&()|<>"))
-         {
-           shell_ungetc (character);
-           goto got_token;
-         }
-    
-       if (!delimiter)
-         {
-           if (character == '"' || character == '`' || character == '\'')
-             {
-               quoted = 1;
-               delimiter = character;
-               goto got_character;
-             }
-         }
-
-       if (all_digits) all_digits = digit (character);
-       if (character == '$') dollar_present = 1;
-
-      got_character:
-
-       token[token_index++] = character;
-
-       if (token_index == (token_buffer_size - 1))
-         token = (char *)xrealloc (token, (token_buffer_size
-                                           += TOKEN_DEFAULT_GROW_SIZE));
-       {
-         char *decode_prompt_string ();
-
-       next_character:
-         if (character == '\n' && interactive && yy_input_type != st_string)
-           prompt_again ();
-       }
-       /* We want to remove quoted newlines (that is, a \<newline> pair)
-          unless we are within single quotes or pass_next_character is
-          set (the shell equivalent of literal-next). */
-       character = shell_getc ((delimiter != '\'') && (!pass_next_character));
-      }
-
-  got_token:
-
-    token[token_index] = '\0';
-       
-    if ((delimiter || dollar_paren_level || dollar_bracket_level) &&
-       character == EOF)
-      {
-       if (dollar_paren_level && !delimiter)
-         delimiter = ')';
-       else if (dollar_bracket_level && !delimiter)
-         delimiter = ']';
-
-       report_error ("Unexpected EOF.  Looking for `%c'.", delimiter);
-       return (-1);
-      }
-
-    if (all_digits)
-      {
-       /* Check to see what thing we should return.  If the last_read_token
-          is a `<', or a `&', or the character which ended this token is
-          a '>' or '<', then, and ONLY then, is this input token a NUMBER.
-          Otherwise, it is just a word, and should be returned as such. */
-
-       if ((character == '<' || character == '>') ||
-           (last_read_token == LESS_AND ||
-            last_read_token == GREATER_AND))
-         {
-           yylval.number = atoi (token); /* was sscanf (token, "%d", &(yylval.number)); */
-           return (NUMBER);
-         }
-      }
-
-    /* Handle special case.  IN is recognized if the last token
-       was WORD and the token before that was FOR or CASE. */
-    if ((last_read_token == WORD) &&
-       ((token_before_that == FOR) || (token_before_that == CASE)) &&
-       (STREQ (token, "in")))
-      {
-       if (token_before_that == CASE)
-         {
-           in_case_pattern_list = 1;
-           allow_esac_as_next++;
-         }
-       TRACE("returning %s as IN", token);
-       return (IN);
-      }
-
-    /* Ditto for DO in the FOR case. */
-    if ((last_read_token == WORD) && (token_before_that == FOR) &&
-       (STREQ (token, "do")))
-      return (DO);
-
-    /* Ditto for ESAC in the CASE case. 
-       Specifically, this handles "case word in esac", which is a legal
-       construct, certainly because someone will pass an empty arg to the
-       case construct, and we don't want it to barf.  Of course, we should
-       insist that the case construct has at least one pattern in it, but
-       the designers disagree. */
-    if (allow_esac_as_next)
-      {
-       allow_esac_as_next--;
-       if (STREQ (token, "esac"))
-         {
-           in_case_pattern_list = 0;
-           return (ESAC);
-         }
-      }
-
-    /* Ditto for `{' in the FUNCTION case. */
-    if (allow_open_brace)
-      {
-       allow_open_brace = 0;
-       if (STREQ (token, "{"))
-         {
-           open_brace_awaiting_satisfaction++;
-           return ('{');
-         }
-      }
-
-    /* Check to see if it is a reserved word.  */
-    if (!dollar_present && !quoted &&
-       reserved_word_acceptable (last_read_token))
-      {
-       int i;
-       for (i = 0; word_token_alist[i].word != (char *)NULL; i++)
-         if (STREQ (token, word_token_alist[i].word))
-           {
-             if (in_case_pattern_list && (word_token_alist[i].token != ESAC))
-               break;
-
-             if (word_token_alist[i].token == ESAC)
-               in_case_pattern_list = 0;
-
-             if (word_token_alist[i].token == '{')
-               open_brace_awaiting_satisfaction++;
-
-             TRACE("returning %s as %d", token, word_token_alist[i].token);
-             return (word_token_alist[i].token);
-           }
-      }
-
-    /* What if we are attempting to satisfy an open-brace grouper? */
-    if (open_brace_awaiting_satisfaction && strcmp (token, "}") == 0)
-      {
-       open_brace_awaiting_satisfaction--;
-       return ('}');
-      }
-
-    the_word = (WORD_DESC *)xmalloc (sizeof (WORD_DESC));
-    the_word->word = (char *)xmalloc (1 + strlen (token));
-    strcpy (the_word->word, token);
-    the_word->dollar_present = dollar_present;
-    the_word->quoted = quoted;
-    the_word->assignment = assignment (token);
-
-    yylval.word = the_word;
-
-    result = WORD;
-
-    if ((last_read_token == ASSIGNMENT_WORD || command_word_acceptable (last_read_token)) &&
-        the_word->assignment &&
-        token[0] != '=' &&
-        legal_assignment (token))
-      result = ASSIGNMENT_WORD;
-
-    TRACE("read_token: returning %s as %s", token,
-               (result == WORD) ? "WORD" :
-                                  result == NAME ? "NAME" : "ASSIGNMENT_WORD");
-    if (last_read_token == FUNCTION)
-      allow_open_brace = 1;
-  }
-  return (result);
-}
-
-legal_assignment (s)
-char *s;
-{
-  extern char *index ();
-  char *t = index (s, '=');
-  int result;
-
-  *t = '\0';
-  result = legal_identifier (s);
-  *t = '=';
-  return (result);
-}
-
-/* Return 1 if this token is a legal shell `identifier'; that is, it consists
-   solely of letters, digits, and underscores, and does not begin with a
-   digit. */
-legal_identifier (name)
-     char *name;
-{
-  register char *s;
-
-  if (!name || !*name)
-    return (0);
-
-  if (digit (*name))
-    return (0);
-
-  for (s = name; s && *s; s++)
-    {
-      if (!isletter (*s) && !digit (*s) && (*s != '_'))
-        return (0);
-    }
-  return (1);
-}
-
-/* Return 1 if TOKEN is a token that after being read would allow
-   a reserved word to be seen, else 0. */
-static int
-reserved_word_acceptable (token)
-     int token;
-{
-  if (member (token, "\n;()|&{") ||
-      token == AND_AND ||
-      token == BANG ||
-      token == DO ||
-      token == ELIF ||
-      token == ELSE ||
-      token == IF ||
-      token == FI ||
-      token == ESAC ||
-      token == OR_OR ||
-      token == SEMI_SEMI ||
-      token == THEN ||
-      token == UNTIL ||
-      token == WHILE ||
-      token == 0)
-    return (1);
-  else
-    return (0);
-}
-
-/* Return 1 if TOKEN is a token that after being read would allow
-   a reserved word to be seen, else 0. */
-static int
-command_word_acceptable (token)
-     int token;
-{
-  if (member (token, "\n;()|&{") ||
-      token == AND_AND ||
-      token == BANG ||
-      token == DO ||
-      token == ELIF ||
-      token == ELSE ||
-      token == IF ||
-      token == OR_OR ||
-      token == THEN ||
-      token == UNTIL ||
-      token == WHILE ||
-      token == 0)
-    return (1);
-  else
-    return (0);
-}
-
-reset_readline_prompt ()
-{
-}
-
-/* Add a line to the history list.
-   The variable COMMAND_ORIENTED_HISTORY controls the style of history
-   remembering;  when non-zero, and LINE is not the first line of a
-   complete parser construct, append LINE to the last history line instead
-   of adding it as a new line. */
-bash_add_history (line)
-     char *line;
-{
-}
-\f
-/* Issue a prompt, or prepare to issue a prompt when the next character
-   is read. */
-prompt_again ()
-{
-  char *temp_prompt, *decode_prompt_string ();
-
-  ps1_prompt = "posix$ ";
-  ps2_prompt = "> ";
-
-  if (!prompt_string_pointer)
-    prompt_string_pointer = &ps1_prompt;
-
-  current_prompt_string = *prompt_string_pointer;
-  prompt_string_pointer = &ps2_prompt;
-
-  fprintf (stderr, "%s", current_prompt_string);
-  fflush (stderr);
-}
-
-char *
-decode_prompt_string (string)
-     char *string;
-{
-  char *result;
-  result = savestring (string);
-
-  return (result);
-}
-
-/* Report a syntax error, and restart the parser.  Call here for fatal
-   errors. */
-yyerror ()
-{
-  report_syntax_error ((char *)NULL);
-  reset_parser ();
-}
-
-/* Report a syntax error with line numbers, etc.
-   Call here for recoverable errors.  If you have a message to print,
-   then place it in MESSAGE, otherwise pass NULL and this will figure
-   out an appropriate message for you. */
-report_syntax_error (message)
-     char *message;
-{
-  if (message)
-    {
-      if (!interactive)
-       {
-         char *name = stream_name ? stream_name : "stdin";
-         report_error ("%s:%d: `%s'", name, line_number, message);
-       }
-      else
-       report_error ("%s", message);
-
-      return;
-    }
-
-  if (shell_input_line && *shell_input_line)
-    {
-      char *error_token, *t = shell_input_line;
-      register int i = shell_input_line_index;
-      int token_end = 0;
-
-      if (!t[i] && i)
-       i--;
-
-      while (i && (t[i] == ' ' || t[i] == '\t' || t[i] == '\n'))
-       i--;
-
-      if (i)
-       token_end = i + 1;
-
-      while (i && !member (t[i], " \n\t;|&"))
-       i--;
-
-      while (i != token_end && member (t[i], " \n\t"))
-       i++;
-
-      if (token_end)
-       {
-         error_token = (char *)alloca (1 + (token_end - i));
-         strncpy (error_token, t + i, token_end - i);
-         error_token[token_end - i] = '\0';
-
-         report_error ("syntax error near `%s'", error_token);
-       }
-      else if ((i == 0) && (token_end == 0))   /* a 1-character token */
-       {
-         error_token = (char *) alloca (2);
-         strncpy(error_token, t + i, 1);
-         error_token[1] = '\0';
-
-         report_error ("syntax error near `%s'", error_token);
-       }
-
-      if (!interactive)
-       {
-         char *temp = savestring (shell_input_line);
-         char *name = stream_name ? stream_name : "stdin";
-         int l = strlen (temp);
-
-         while (l && temp[l - 1] == '\n')
-           temp[--l] = '\0';
-
-         report_error ("%s:%d: `%s'", name, line_number, temp);
-         free (temp);
-       }
-    }
-  else
-    report_error ("Syntax error");
-}
-
-/* ??? Needed function. ??? We have to be able to discard the constructs
-   created during parsing.  In the case of error, we want to return
-   allocated objects to the memory pool.  In the case of no error, we want
-   to throw away the information about where the allocated objects live.
-   (dispose_command () will actually free the command. */
-discard_parser_constructs (error_p)
-     int error_p;
-{
-/*   if (error_p) {
-     fprintf (stderr, "*");
-  } */
-}
-   
-handle_eof_input_unit ()
-{
-  EOF_Reached = 1;
-}
-
-TRACE(va_alist)
-va_dcl
-{
-  va_list args;
-  char *format;
-  
-  va_start (args);
-  fprintf(stderr, "TRACE: ");
-  format = va_arg (args, char *);
-  vfprintf (stderr, format, args);
-  fprintf (stderr, "\n");
-        
-  va_end (args);
-}
diff --git a/CWRU/posix-parser/shell.h b/CWRU/posix-parser/shell.h
deleted file mode 100644 (file)
index 9fb1442..0000000
+++ /dev/null
@@ -1,71 +0,0 @@
-/* shell.h -- The data structures used by the shell */
-
-#include "config.h"
-#include "general.h"
-#include "error.h"
-#include "variables.h"
-#include "quit.h"
-#include "maxpath.h"
-#include "unwind_prot.h"
-#include "command.h"
-
-extern int EOF_Reached;
-
-#define NO_PIPE -1
-#define REDIRECT_BOTH -2
-#define IS_DESCRIPTOR -1
-
-#define NO_VARIABLE -1
-
-/* A bunch of stuff for flow of control using setjmp () and longjmp (). */
-#include <setjmp.h>
-extern jmp_buf top_level, catch;
-
-#define NOT_JUMPED 0           /* Not returning from a longjmp. */
-#define FORCE_EOF 1            /* We want to stop parsing. */
-#define DISCARD 2              /* Discard current command. */
-#define EXITPROG 3             /* Unconditionally exit the program now. */
-
-/* Values that can be returned by execute_command (). */
-#define EXECUTION_FAILURE 1
-#define EXECUTION_SUCCESS 0
-
-/* Special exit status used when the shell is asked to execute a
-   binary file as a shell script. */
-#define EX_BINARY_FILE 126
-
-/* The list of characters that are quoted in double-quotes with a
-   backslash.  Other characters following a backslash cause nothing
-   special to happen. */
-#define slashify_in_quotes "\\`$\""
-#define slashify_in_here_document "\\`$"
-
-/* Constants which specify how to handle backslashes and quoting in
-   expand_word_internal ().  Q_DOUBLE_QUOTES means to use the function
-   slashify_in_quotes () to decide whether the backslash should be
-   retained.  Q_HERE_DOCUMENT means slashify_in_here_document () to
-   decide whether to retain the backslash.  Q_KEEP_BACKSLASH means
-   to unconditionally retain the backslash. */
-#define Q_DOUBLE_QUOTES  0x1
-#define Q_HERE_DOCUMENT  0x2
-#define Q_KEEP_BACKSLASH 0x4
-
-extern char **shell_environment;
-extern WORD_LIST *rest_of_args;
-
-/* Generalized global variables. */
-extern int executing, login_shell;
-
-/* Structure to pass around that holds a bitmap of file descriptors
-   to close, and the size of that structure.  Used in execute_cmd.c. */
-struct fd_bitmap {
-  long size;
-  char *bitmap;
-};
-
-#define FD_BITMAP_SIZE 32
-
-#if defined (EIGHT_BIT)
-#  define CTLESC '\001'
-#  define CTLNUL '\002'
-#endif /* EIGHT_BIT */
diff --git a/CWRU/save/unwind_prot.c.sighandling b/CWRU/save/unwind_prot.c.sighandling
deleted file mode 100644 (file)
index a334767..0000000
+++ /dev/null
@@ -1,294 +0,0 @@
-/* I can't stand it anymore!  Please can't we just write the
-   whole Unix system in lisp or something? */
-
-/* Copyright (C) 1987,1989 Free Software Foundation, Inc.
-
-This file is part of GNU Bash, the Bourne Again SHell.
-
-Bash is free software; you can redistribute it and/or modify it under
-the terms of the GNU General Public License as published by the Free
-Software Foundation; either version 1, or (at your option) any later
-version.
-
-Bash 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 General Public License
-for more details.
-
-You should have received a copy of the GNU General Public License along
-with Bash; see the file COPYING.  If not, write to the Free Software
-Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */
-
-/* **************************************************************** */
-/*                                                                 */
-/*                   Unwind Protection Scheme for Bash             */
-/*                                                                 */
-/* **************************************************************** */
-#include <sys/types.h>
-#include <signal.h>
-#include "config.h"
-#include "general.h"
-#include "unwind_prot.h"
-
-/* If CLEANUP is null, then ARG contains a tag to throw back to. */
-typedef struct _uwp {
-  struct _uwp *next;
-  Function *cleanup;
-  char *arg;
-} UNWIND_ELT;
-
-static void
-  unwind_frame_discard_internal (), unwind_frame_run_internal (),
-  add_unwind_protect_internal (), remove_unwind_protect_internal (),
-  run_unwind_protects_internal ();
-
-static UNWIND_ELT *unwind_protect_list = (UNWIND_ELT *)NULL;
-
-/* Run a function without interrupts. */
-void
-without_interrupts (function, arg1, arg2)
-     VFunction *function;
-     char *arg1, *arg2;
-{
-#if defined (_POSIX_VERSION)
-  static int sets_done = 0;
-  static sigset_t set;
-  sigset_t oset;
-
-  /* SET needs to be initialized only once. */
-  if (sets_done == 0)
-    {
-      sigemptyset (&set);
-      sigaddset (&set, SIGINT);
-      sets_done = 1;
-    }
-  sigemptyset (&oset);
-
-  sigprocmask (SIG_BLOCK, &set, &oset);
-#else
-#  if defined (USG)
-  SigHandler *old_int;
-
-  old_int = (SigHandler *)signal (SIGINT, SIG_IGN);
-#  else
-  int oldmask = sigblock (SIGINT);
-#  endif
-#endif
-
-  (*function)(arg1, arg2);
-
-#if defined (_POSIX_VERSION)
-  sigprocmask (SIG_SETMASK, &oset, (sigset_t *)NULL);
-#else
-#  if defined (USG)
-  signal (SIGINT, old_int);
-#  else
-  sigsetmask (oldmask);
-#  endif
-#endif
-}
-
-/* Start the beginning of a region. */
-void
-begin_unwind_frame (tag)
-     char *tag;
-{
-  add_unwind_protect ((Function *)NULL, tag);
-}
-
-/* Discard the unwind protects back to TAG. */
-void
-discard_unwind_frame (tag)
-     char *tag;
-{
-  if (unwind_protect_list)
-    without_interrupts (unwind_frame_discard_internal, tag, (char *)NULL);
-}
-
-/* Run the unwind protects back to TAG. */
-void
-run_unwind_frame (tag)
-     char *tag;
-{
-  if (unwind_protect_list)
-    without_interrupts (unwind_frame_run_internal, tag, (char *)NULL);
-}
-
-/* Add the function CLEANUP with ARG to the list of unwindable things. */
-void
-add_unwind_protect (cleanup, arg)
-     Function *cleanup;
-     char *arg;
-{
-  without_interrupts (add_unwind_protect_internal, (char *)cleanup, arg);
-}
-
-/* Remove the top unwind protect from the list. */
-void
-remove_unwind_protect ()
-{
-  if (unwind_protect_list)
-    without_interrupts
-      (remove_unwind_protect_internal, (char *)NULL, (char *)NULL);
-}
-
-/* Run the list of cleanup functions in unwind_protect_list. */
-void
-run_unwind_protects ()
-{
-  if (unwind_protect_list)
-    without_interrupts
-      (run_unwind_protects_internal, (char *)NULL, (char *)NULL);
-}
-
-/* **************************************************************** */
-/*                                                                 */
-/*                        The Actual Functions                             */
-/*                                                                 */
-/* **************************************************************** */
-
-static void
-add_unwind_protect_internal (cleanup, arg)
-     Function *cleanup;
-     char *arg;
-{
-  UNWIND_ELT *elt;
-
-  elt = (UNWIND_ELT *)xmalloc (sizeof (UNWIND_ELT));
-  elt->cleanup = cleanup;
-  elt->arg = arg;
-  elt->next = unwind_protect_list;
-  unwind_protect_list = elt;
-}
-
-static void
-remove_unwind_protect_internal ()
-{
-  UNWIND_ELT *elt = unwind_protect_list;
-
-  if (elt)
-    {
-      unwind_protect_list = unwind_protect_list->next;
-      free (elt);
-    }
-}
-
-static void
-run_unwind_protects_internal ()
-{
-  UNWIND_ELT *t, *elt = unwind_protect_list;
-
-  while (elt)
-   {
-      /* This function can be run at strange times, like when unwinding
-       the entire world of unwind protects.  Thus, we may come across
-        an element which is simply a label for a catch frame.  Don't call
-        the non-existant function. */
-      if (elt->cleanup)
-       (*(elt->cleanup)) (elt->arg);
-
-      t = elt;
-      elt = elt->next;
-      free (t);
-    }
-  unwind_protect_list = elt;
-}
-
-static void
-unwind_frame_discard_internal (tag)
-     char *tag;
-{
-  UNWIND_ELT *elt;
-
-  while (elt = unwind_protect_list)
-    {
-      unwind_protect_list = unwind_protect_list->next;
-      if (!elt->cleanup && (STREQ (elt->arg, tag)))
-       {
-         free (elt);
-         break;
-       }
-      else
-       free (elt);
-    }
-}
-
-static void
-unwind_frame_run_internal (tag)
-     char *tag;
-{
-  UNWIND_ELT *elt;
-
-  while (elt = unwind_protect_list)
-    {
-      unwind_protect_list = elt->next;
-
-      /* If tag, then compare. */
-      if (!elt->cleanup)
-       {
-         if (STREQ (elt->arg, tag))
-           {
-             free (elt);
-             break;
-           }
-         free (elt);
-         continue;
-       }
-      else
-       {
-         (*(elt->cleanup)) (elt->arg);
-         free (elt);
-       }
-    }
-}
-
-/* Structure describing a saved variable and the value to restore it to. */
-typedef struct {
-  int *variable;
-  char *desired_setting;
-  int size;
-} SAVED_VAR;
-
-/* Restore the value of a variable, based on the contents of SV.  If
-   sv->size is greater than sizeof (int), sv->desired_setting points to
-   a block of memory SIZE bytes long holding the value, rather than the
-   value itself.  This block of memory is copied back into the variable. */
-static void
-restore_variable (sv)
-     SAVED_VAR *sv;
-{
-  if (sv->size > sizeof (int))
-    {
-      bcopy ((char *)sv->desired_setting, (char *)sv->variable, sv->size);
-      free (sv->desired_setting);
-    }
-  else
-    *(sv->variable) = (int)sv->desired_setting;
-
-  free (sv);
-}
-
-/* Save the value of a variable so it will be restored when unwind-protects
-   are run.  VAR is a pointer to the variable.  VALUE is the value to be
-   saved.  SIZE is the size in bytes of VALUE.  If SIZE is bigger than what
-   can be saved in an int, memory will be allocated and the value saved
-   into that using bcopy (). */
-void
-unwind_protect_var (var, value, size)
-     int *var;
-     char *value;
-     int size;
-{
-  SAVED_VAR *s = (SAVED_VAR *)xmalloc (sizeof (SAVED_VAR));
-
-  s->variable = var;
-  if (size > sizeof (int))
-    {
-      s->desired_setting = (char *)xmalloc (size);
-      bcopy (value, (char *)s->desired_setting, size);
-    }
-  else
-    s->desired_setting = value;
-  s->size = size;
-  add_unwind_protect ((Function *)restore_variable, (char *)s);
-}
diff --git a/CWRU/usleep.c b/CWRU/usleep.c
deleted file mode 100644 (file)
index 5d269a8..0000000
+++ /dev/null
@@ -1,30 +0,0 @@
-#include <unistd.h>
-#include <stdlib.h>
-#include <stdio.h>
-#include <limits.h>
-
-char *progname;
-
-int
-main(int argc, char **argv)
-{
-       unsigned long int length;
-
-       length = 0;
-       progname = argv[0];
-
-       if (argc != 2) {
-               fprintf(stderr, "%s: must be given a duration\n", progname);
-               return 1;
-       }
-
-       length = strtol(argv[1], NULL, 10);
-       if (length == LONG_MAX) {
-               fprintf(stderr, "%s: number is too large: %s\n", progname, argv[1]);
-                       return 1;
-        }
-
-       usleep(length);
-
-       return 0;
-}
diff --git a/MANIFEST.doc b/MANIFEST.doc
deleted file mode 100644 (file)
index ab9507c..0000000
+++ /dev/null
@@ -1,25 +0,0 @@
-#
-# Master Manifest file for documentation-only distribution
-#
-doc    d
-MANIFEST.doc   f
-doc/article.ps f
-doc/rose94.ps  f
-doc/bash.ps            f
-doc/bashbug.ps f
-doc/builtins.ps        f
-doc/rbash.ps   f
-doc/bashref.ps f
-doc/bashref.dvi        f
-doc/bash.0             f
-doc/bashbug.0          f
-doc/builtins.0 f
-doc/rbash.0    f
-doc/article.txt        f
-doc/bash.html          f
-doc/bashref.html       f
-doc/article.pdf        f
-doc/bash.pdf   f
-doc/bashref.pdf        f
-doc/rose94.pdf f
-doc/aosa-bash.pdf      f
diff --git a/autom4te.cache/output.0 b/autom4te.cache/output.0
deleted file mode 100644 (file)
index 435c26c..0000000
+++ /dev/null
@@ -1,17058 +0,0 @@
-@%:@! /bin/sh
-@%:@ From configure.in for Bash 4.2, version 4.046.
-@%:@ Guess values for system-dependent variables and create Makefiles.
-@%:@ Generated by GNU Autoconf 2.68 for bash 4.2-maint.
-@%:@
-@%:@ Report bugs to <bug-bash@gnu.org>.
-@%:@ 
-@%:@ 
-@%:@ Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001,
-@%:@ 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free Software
-@%:@ Foundation, Inc.
-@%:@ 
-@%:@ 
-@%:@ This configure script is free software; the Free Software Foundation
-@%:@ gives unlimited permission to copy, distribute and modify it.
-## -------------------- ##
-## M4sh Initialization. ##
-## -------------------- ##
-
-# Be more Bourne compatible
-DUALCASE=1; export DUALCASE # for MKS sh
-if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then :
-  emulate sh
-  NULLCMD=:
-  # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which
-  # is contrary to our usage.  Disable this feature.
-  alias -g '${1+"$@"}'='"$@"'
-  setopt NO_GLOB_SUBST
-else
-  case `(set -o) 2>/dev/null` in @%:@(
-  *posix*) :
-    set -o posix ;; @%:@(
-  *) :
-     ;;
-esac
-fi
-
-
-as_nl='
-'
-export as_nl
-# Printing a long string crashes Solaris 7 /usr/bin/printf.
-as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
-as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo
-as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo
-# Prefer a ksh shell builtin over an external printf program on Solaris,
-# but without wasting forks for bash or zsh.
-if test -z "$BASH_VERSION$ZSH_VERSION" \
-    && (test "X`print -r -- $as_echo`" = "X$as_echo") 2>/dev/null; then
-  as_echo='print -r --'
-  as_echo_n='print -rn --'
-elif (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then
-  as_echo='printf %s\n'
-  as_echo_n='printf %s'
-else
-  if test "X`(/usr/ucb/echo -n -n $as_echo) 2>/dev/null`" = "X-n $as_echo"; then
-    as_echo_body='eval /usr/ucb/echo -n "$1$as_nl"'
-    as_echo_n='/usr/ucb/echo -n'
-  else
-    as_echo_body='eval expr "X$1" : "X\\(.*\\)"'
-    as_echo_n_body='eval
-      arg=$1;
-      case $arg in @%:@(
-      *"$as_nl"*)
-       expr "X$arg" : "X\\(.*\\)$as_nl";
-       arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;;
-      esac;
-      expr "X$arg" : "X\\(.*\\)" | tr -d "$as_nl"
-    '
-    export as_echo_n_body
-    as_echo_n='sh -c $as_echo_n_body as_echo'
-  fi
-  export as_echo_body
-  as_echo='sh -c $as_echo_body as_echo'
-fi
-
-# The user is always right.
-if test "${PATH_SEPARATOR+set}" != set; then
-  PATH_SEPARATOR=:
-  (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && {
-    (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 ||
-      PATH_SEPARATOR=';'
-  }
-fi
-
-
-# IFS
-# We need space, tab and new line, in precisely that order.  Quoting is
-# there to prevent editors from complaining about space-tab.
-# (If _AS_PATH_WALK were called with IFS unset, it would disable word
-# splitting by setting IFS to empty value.)
-IFS=" ""       $as_nl"
-
-# Find who we are.  Look in the path if we contain no directory separator.
-as_myself=
-case $0 in @%:@((
-  *[\\/]* ) as_myself=$0 ;;
-  *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break
-  done
-IFS=$as_save_IFS
-
-     ;;
-esac
-# We did not find ourselves, most probably we were run as `sh COMMAND'
-# in which case we are not to be found in the path.
-if test "x$as_myself" = x; then
-  as_myself=$0
-fi
-if test ! -f "$as_myself"; then
-  $as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2
-  exit 1
-fi
-
-# Unset variables that we do not need and which cause bugs (e.g. in
-# pre-3.0 UWIN ksh).  But do not cause bugs in bash 2.01; the "|| exit 1"
-# suppresses any "Segmentation fault" message there.  '((' could
-# trigger a bug in pdksh 5.2.14.
-for as_var in BASH_ENV ENV MAIL MAILPATH
-do eval test x\${$as_var+set} = xset \
-  && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || :
-done
-PS1='$ '
-PS2='> '
-PS4='+ '
-
-# NLS nuisances.
-LC_ALL=C
-export LC_ALL
-LANGUAGE=C
-export LANGUAGE
-
-# CDPATH.
-(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
-
-if test "x$CONFIG_SHELL" = x; then
-  as_bourne_compatible="if test -n \"\${ZSH_VERSION+set}\" && (emulate sh) >/dev/null 2>&1; then :
-  emulate sh
-  NULLCMD=:
-  # Pre-4.2 versions of Zsh do word splitting on \${1+\"\$@\"}, which
-  # is contrary to our usage.  Disable this feature.
-  alias -g '\${1+\"\$@\"}'='\"\$@\"'
-  setopt NO_GLOB_SUBST
-else
-  case \`(set -o) 2>/dev/null\` in @%:@(
-  *posix*) :
-    set -o posix ;; @%:@(
-  *) :
-     ;;
-esac
-fi
-"
-  as_required="as_fn_return () { (exit \$1); }
-as_fn_success () { as_fn_return 0; }
-as_fn_failure () { as_fn_return 1; }
-as_fn_ret_success () { return 0; }
-as_fn_ret_failure () { return 1; }
-
-exitcode=0
-as_fn_success || { exitcode=1; echo as_fn_success failed.; }
-as_fn_failure && { exitcode=1; echo as_fn_failure succeeded.; }
-as_fn_ret_success || { exitcode=1; echo as_fn_ret_success failed.; }
-as_fn_ret_failure && { exitcode=1; echo as_fn_ret_failure succeeded.; }
-if ( set x; as_fn_ret_success y && test x = \"\$1\" ); then :
-  
-else
-  exitcode=1; echo positional parameters were not saved.
-fi
-test x\$exitcode = x0 || exit 1"
-  as_suggested="  as_lineno_1=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_1a=\$LINENO
-  as_lineno_2=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_2a=\$LINENO
-  eval 'test \"x\$as_lineno_1'\$as_run'\" != \"x\$as_lineno_2'\$as_run'\" &&
-  test \"x\`expr \$as_lineno_1'\$as_run' + 1\`\" = \"x\$as_lineno_2'\$as_run'\"' || exit 1
-test \$(( 1 + 1 )) = 2 || exit 1"
-  if (eval "$as_required") 2>/dev/null; then :
-  as_have_required=yes
-else
-  as_have_required=no
-fi
-  if test x$as_have_required = xyes && (eval "$as_suggested") 2>/dev/null; then :
-  
-else
-  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-as_found=false
-for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-  as_found=:
-  case $as_dir in @%:@(
-        /*)
-          for as_base in sh bash ksh sh5; do
-            # Try only shells that exist, to save several forks.
-            as_shell=$as_dir/$as_base
-            if { test -f "$as_shell" || test -f "$as_shell.exe"; } &&
-                   { $as_echo "$as_bourne_compatible""$as_required" | as_run=a "$as_shell"; } 2>/dev/null; then :
-  CONFIG_SHELL=$as_shell as_have_required=yes
-                  if { $as_echo "$as_bourne_compatible""$as_suggested" | as_run=a "$as_shell"; } 2>/dev/null; then :
-  break 2
-fi
-fi
-          done;;
-       esac
-  as_found=false
-done
-$as_found || { if { test -f "$SHELL" || test -f "$SHELL.exe"; } &&
-             { $as_echo "$as_bourne_compatible""$as_required" | as_run=a "$SHELL"; } 2>/dev/null; then :
-  CONFIG_SHELL=$SHELL as_have_required=yes
-fi; }
-IFS=$as_save_IFS
-
-
-      if test "x$CONFIG_SHELL" != x; then :
-  # We cannot yet assume a decent shell, so we have to provide a
-       # neutralization value for shells without unset; and this also
-       # works around shells that cannot unset nonexistent variables.
-       # Preserve -v and -x to the replacement shell.
-       BASH_ENV=/dev/null
-       ENV=/dev/null
-       (unset BASH_ENV) >/dev/null 2>&1 && unset BASH_ENV ENV
-       export CONFIG_SHELL
-       case $- in @%:@ ((((
-         *v*x* | *x*v* ) as_opts=-vx ;;
-         *v* ) as_opts=-v ;;
-         *x* ) as_opts=-x ;;
-         * ) as_opts= ;;
-       esac
-       exec "$CONFIG_SHELL" $as_opts "$as_myself" ${1+"$@"}
-fi
-
-    if test x$as_have_required = xno; then :
-  $as_echo "$0: This script requires a shell more modern than all"
-  $as_echo "$0: the shells that I found on your system."
-  if test x${ZSH_VERSION+set} = xset ; then
-    $as_echo "$0: In particular, zsh $ZSH_VERSION has bugs and should"
-    $as_echo "$0: be upgraded to zsh 4.3.4 or later."
-  else
-    $as_echo "$0: Please tell bug-autoconf@gnu.org and bug-bash@gnu.org
-$0: about your system, including any error possibly output
-$0: before this message. Then install a modern shell, or
-$0: manually run the script under such a shell if you do
-$0: have one."
-  fi
-  exit 1
-fi
-fi
-fi
-SHELL=${CONFIG_SHELL-/bin/sh}
-export SHELL
-# Unset more variables known to interfere with behavior of common tools.
-CLICOLOR_FORCE= GREP_OPTIONS=
-unset CLICOLOR_FORCE GREP_OPTIONS
-
-## --------------------- ##
-## M4sh Shell Functions. ##
-## --------------------- ##
-@%:@ as_fn_unset VAR
-@%:@ ---------------
-@%:@ Portably unset VAR.
-as_fn_unset ()
-{
-  { eval $1=; unset $1;}
-}
-as_unset=as_fn_unset
-
-@%:@ as_fn_set_status STATUS
-@%:@ -----------------------
-@%:@ Set @S|@? to STATUS, without forking.
-as_fn_set_status ()
-{
-  return $1
-} @%:@ as_fn_set_status
-
-@%:@ as_fn_exit STATUS
-@%:@ -----------------
-@%:@ Exit the shell with STATUS, even in a "trap 0" or "set -e" context.
-as_fn_exit ()
-{
-  set +e
-  as_fn_set_status $1
-  exit $1
-} @%:@ as_fn_exit
-
-@%:@ as_fn_mkdir_p
-@%:@ -------------
-@%:@ Create "@S|@as_dir" as a directory, including parents if necessary.
-as_fn_mkdir_p ()
-{
-
-  case $as_dir in #(
-  -*) as_dir=./$as_dir;;
-  esac
-  test -d "$as_dir" || eval $as_mkdir_p || {
-    as_dirs=
-    while :; do
-      case $as_dir in #(
-      *\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'(
-      *) as_qdir=$as_dir;;
-      esac
-      as_dirs="'$as_qdir' $as_dirs"
-      as_dir=`$as_dirname -- "$as_dir" ||
-$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
-        X"$as_dir" : 'X\(//\)[^/]' \| \
-        X"$as_dir" : 'X\(//\)$' \| \
-        X"$as_dir" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X"$as_dir" |
-    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
-           s//\1/
-           q
-         }
-         /^X\(\/\/\)[^/].*/{
-           s//\1/
-           q
-         }
-         /^X\(\/\/\)$/{
-           s//\1/
-           q
-         }
-         /^X\(\/\).*/{
-           s//\1/
-           q
-         }
-         s/.*/./; q'`
-      test -d "$as_dir" && break
-    done
-    test -z "$as_dirs" || eval "mkdir $as_dirs"
-  } || test -d "$as_dir" || as_fn_error $? "cannot create directory $as_dir"
-
-
-} @%:@ as_fn_mkdir_p
-@%:@ as_fn_append VAR VALUE
-@%:@ ----------------------
-@%:@ Append the text in VALUE to the end of the definition contained in VAR. Take
-@%:@ advantage of any shell optimizations that allow amortized linear growth over
-@%:@ repeated appends, instead of the typical quadratic growth present in naive
-@%:@ implementations.
-if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null; then :
-  eval 'as_fn_append ()
-  {
-    eval $1+=\$2
-  }'
-else
-  as_fn_append ()
-  {
-    eval $1=\$$1\$2
-  }
-fi # as_fn_append
-
-@%:@ as_fn_arith ARG...
-@%:@ ------------------
-@%:@ Perform arithmetic evaluation on the ARGs, and store the result in the
-@%:@ global @S|@as_val. Take advantage of shells that can avoid forks. The arguments
-@%:@ must be portable across @S|@(()) and expr.
-if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null; then :
-  eval 'as_fn_arith ()
-  {
-    as_val=$(( $* ))
-  }'
-else
-  as_fn_arith ()
-  {
-    as_val=`expr "$@" || test $? -eq 1`
-  }
-fi # as_fn_arith
-
-
-@%:@ as_fn_error STATUS ERROR [LINENO LOG_FD]
-@%:@ ----------------------------------------
-@%:@ Output "`basename @S|@0`: error: ERROR" to stderr. If LINENO and LOG_FD are
-@%:@ provided, also output the error to LOG_FD, referencing LINENO. Then exit the
-@%:@ script with STATUS, using 1 if that was 0.
-as_fn_error ()
-{
-  as_status=$1; test $as_status -eq 0 && as_status=1
-  if test "$4"; then
-    as_lineno=${as_lineno-"$3"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
-    $as_echo "$as_me:${as_lineno-$LINENO}: error: $2" >&$4
-  fi
-  $as_echo "$as_me: error: $2" >&2
-  as_fn_exit $as_status
-} @%:@ as_fn_error
-
-if expr a : '\(a\)' >/dev/null 2>&1 &&
-   test "X`expr 00001 : '.*\(...\)'`" = X001; then
-  as_expr=expr
-else
-  as_expr=false
-fi
-
-if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then
-  as_basename=basename
-else
-  as_basename=false
-fi
-
-if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then
-  as_dirname=dirname
-else
-  as_dirname=false
-fi
-
-as_me=`$as_basename -- "$0" ||
-$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \
-        X"$0" : 'X\(//\)$' \| \
-        X"$0" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X/"$0" |
-    sed '/^.*\/\([^/][^/]*\)\/*$/{
-           s//\1/
-           q
-         }
-         /^X\/\(\/\/\)$/{
-           s//\1/
-           q
-         }
-         /^X\/\(\/\).*/{
-           s//\1/
-           q
-         }
-         s/.*/./; q'`
-
-# Avoid depending upon Character Ranges.
-as_cr_letters='abcdefghijklmnopqrstuvwxyz'
-as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ'
-as_cr_Letters=$as_cr_letters$as_cr_LETTERS
-as_cr_digits='0123456789'
-as_cr_alnum=$as_cr_Letters$as_cr_digits
-
-
-  as_lineno_1=$LINENO as_lineno_1a=$LINENO
-  as_lineno_2=$LINENO as_lineno_2a=$LINENO
-  eval 'test "x$as_lineno_1'$as_run'" != "x$as_lineno_2'$as_run'" &&
-  test "x`expr $as_lineno_1'$as_run' + 1`" = "x$as_lineno_2'$as_run'"' || {
-  # Blame Lee E. McMahon (1931-1989) for sed's syntax.  :-)
-  sed -n '
-    p
-    /[$]LINENO/=
-  ' <$as_myself |
-    sed '
-      s/[$]LINENO.*/&-/
-      t lineno
-      b
-      :lineno
-      N
-      :loop
-      s/[$]LINENO\([^'$as_cr_alnum'_].*\n\)\(.*\)/\2\1\2/
-      t loop
-      s/-\n.*//
-    ' >$as_me.lineno &&
-  chmod +x "$as_me.lineno" ||
-    { $as_echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2; as_fn_exit 1; }
-
-  # Don't try to exec as it changes $[0], causing all sort of problems
-  # (the dirname of $[0] is not the place where we might find the
-  # original and so on.  Autoconf is especially sensitive to this).
-  . "./$as_me.lineno"
-  # Exit status is that of the last command.
-  exit
-}
-
-ECHO_C= ECHO_N= ECHO_T=
-case `echo -n x` in @%:@(((((
--n*)
-  case `echo 'xy\c'` in
-  *c*) ECHO_T='        ';;     # ECHO_T is single tab character.
-  xy)  ECHO_C='\c';;
-  *)   echo `echo ksh88 bug on AIX 6.1` > /dev/null
-       ECHO_T='        ';;
-  esac;;
-*)
-  ECHO_N='-n';;
-esac
-
-rm -f conf$$ conf$$.exe conf$$.file
-if test -d conf$$.dir; then
-  rm -f conf$$.dir/conf$$.file
-else
-  rm -f conf$$.dir
-  mkdir conf$$.dir 2>/dev/null
-fi
-if (echo >conf$$.file) 2>/dev/null; then
-  if ln -s conf$$.file conf$$ 2>/dev/null; then
-    as_ln_s='ln -s'
-    # ... but there are two gotchas:
-    # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail.
-    # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable.
-    # In both cases, we have to default to `cp -p'.
-    ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe ||
-      as_ln_s='cp -p'
-  elif ln conf$$.file conf$$ 2>/dev/null; then
-    as_ln_s=ln
-  else
-    as_ln_s='cp -p'
-  fi
-else
-  as_ln_s='cp -p'
-fi
-rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file
-rmdir conf$$.dir 2>/dev/null
-
-if mkdir -p . 2>/dev/null; then
-  as_mkdir_p='mkdir -p "$as_dir"'
-else
-  test -d ./-p && rmdir ./-p
-  as_mkdir_p=false
-fi
-
-if test -x / >/dev/null 2>&1; then
-  as_test_x='test -x'
-else
-  if ls -dL / >/dev/null 2>&1; then
-    as_ls_L_option=L
-  else
-    as_ls_L_option=
-  fi
-  as_test_x='
-    eval sh -c '\''
-      if test -d "$1"; then
-       test -d "$1/.";
-      else
-       case $1 in @%:@(
-       -*)set "./$1";;
-       esac;
-       case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in @%:@((
-       ???[sx]*):;;*)false;;esac;fi
-    '\'' sh
-  '
-fi
-as_executable_p=$as_test_x
-
-# Sed expression to map a string onto a valid CPP name.
-as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'"
-
-# Sed expression to map a string onto a valid variable name.
-as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'"
-
-
-test -n "$DJDIR" || exec 7<&0 </dev/null
-exec 6>&1
-
-# Name of the host.
-# hostname on some systems (SVR3.2, old GNU/Linux) returns a bogus exit status,
-# so uname gets run too.
-ac_hostname=`(hostname || uname -n) 2>/dev/null | sed 1q`
-
-#
-# Initializations.
-#
-ac_default_prefix=/usr/local
-ac_clean_files=
-ac_config_libobj_dir=.
-LIB@&t@OBJS=
-cross_compiling=no
-subdirs=
-MFLAGS=
-MAKEFLAGS=
-
-# Identity of this package.
-PACKAGE_NAME='bash'
-PACKAGE_TARNAME='bash'
-PACKAGE_VERSION='4.2-maint'
-PACKAGE_STRING='bash 4.2-maint'
-PACKAGE_BUGREPORT='bug-bash@gnu.org'
-PACKAGE_URL=''
-
-ac_unique_file="shell.h"
-# Factoring default headers for most tests.
-ac_includes_default="\
-#include <stdio.h>
-#ifdef HAVE_SYS_TYPES_H
-# include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_STAT_H
-# include <sys/stat.h>
-#endif
-#ifdef STDC_HEADERS
-# include <stdlib.h>
-# include <stddef.h>
-#else
-# ifdef HAVE_STDLIB_H
-#  include <stdlib.h>
-# endif
-#endif
-#ifdef HAVE_STRING_H
-# if !defined STDC_HEADERS && defined HAVE_MEMORY_H
-#  include <memory.h>
-# endif
-# include <string.h>
-#endif
-#ifdef HAVE_STRINGS_H
-# include <strings.h>
-#endif
-#ifdef HAVE_INTTYPES_H
-# include <inttypes.h>
-#endif
-#ifdef HAVE_STDINT_H
-# include <stdint.h>
-#endif
-#ifdef HAVE_UNISTD_H
-# include <unistd.h>
-#endif"
-
-ac_header_list=
-ac_func_list=
-ac_subst_vars='LTLIBOBJS
-LOCAL_DEFS
-LOCAL_LDFLAGS
-LOCAL_CFLAGS
-LOCAL_LIBS
-MALLOC_DEBUG
-DEBUG
-RELSTATUS
-BASHVERS
-ARFLAGS
-BUILD_DIR
-incdir
-PROFILE_FLAGS
-SHOBJ_STATUS
-SHOBJ_LIBS
-SHOBJ_XLDFLAGS
-SHOBJ_LDFLAGS
-SHOBJ_LD
-SHOBJ_CFLAGS
-SHOBJ_CC
-JOBS_O
-TERMCAP_DEP
-TERMCAP_LIB
-SIGLIST_O
-LIBINTL_H
-INTL_INC
-INTL_DEP
-LIB@&t@OBJS
-POSUB
-LTLIBINTL
-LIBINTL
-INTLLIBS
-INTL_LIBTOOL_SUFFIX_PREFIX
-INTLOBJS
-GENCAT
-INSTOBJEXT
-DATADIRNAME
-CATOBJEXT
-USE_INCLUDED_LIBINTL
-BUILD_INCLUDED_LIBINTL
-INTLBISON
-LTLIBICONV
-LIBICONV
-GLIBC21
-ALLOCA
-MSGMERGE
-XGETTEXT
-GMSGFMT
-MSGFMT
-USE_NLS
-MKINSTALLDIRS
-SIZE
-MAKE_SHELL
-SET_MAKE
-YFLAGS
-YACC
-RANLIB
-AR
-INSTALL_DATA
-INSTALL_SCRIPT
-INSTALL_PROGRAM
-TILDE_LIB
-HIST_LIBDIR
-HISTORY_DEP
-HISTORY_LIB
-RL_INCLUDE
-RL_INCLUDEDIR
-RL_LIBDIR
-READLINE_DEP
-READLINE_LIB
-RL_MINOR
-RL_MAJOR
-RL_VERSION
-LIBS_FOR_BUILD
-STATIC_LD
-SIGNAMES_O
-SIGNAMES_H
-CROSS_COMPILE
-EGREP
-GREP
-CPP
-OBJEXT
-EXEEXT
-ac_ct_CC
-CPPFLAGS
-LDFLAGS
-CFLAGS
-CC
-HELPSTRINGS
-HELPFILES_TARGET
-HELPINSTALL
-HELPDIRDEFINE
-HELPDIR
-MALLOC_DEP
-MALLOC_LDFLAGS
-MALLOC_LIBRARY
-MALLOC_LIB
-MALLOC_SRC
-MALLOC_TARGET
-PURIFY
-TESTSCRIPT
-CPPFLAGS_FOR_BUILD
-LDFLAGS_FOR_BUILD
-CFLAGS_FOR_BUILD
-CC_FOR_BUILD
-DEBUGGER_START_FILE
-host_os
-host_vendor
-host_cpu
-host
-build_os
-build_vendor
-build_cpu
-build
-target_alias
-host_alias
-build_alias
-LIBS
-ECHO_T
-ECHO_N
-ECHO_C
-DEFS
-mandir
-localedir
-libdir
-psdir
-pdfdir
-dvidir
-htmldir
-infodir
-docdir
-oldincludedir
-includedir
-localstatedir
-sharedstatedir
-sysconfdir
-datadir
-datarootdir
-libexecdir
-sbindir
-bindir
-program_transform_name
-prefix
-exec_prefix
-PACKAGE_URL
-PACKAGE_BUGREPORT
-PACKAGE_STRING
-PACKAGE_VERSION
-PACKAGE_TARNAME
-PACKAGE_NAME
-PATH_SEPARATOR
-SHELL'
-ac_subst_files=''
-ac_user_opts='
-enable_option_checking
-with_afs
-with_bash_malloc
-with_curses
-with_gnu_malloc
-with_installed_readline
-with_purecov
-with_purify
-enable_minimal_config
-enable_alias
-enable_arith_for_command
-enable_array_variables
-enable_bang_history
-enable_brace_expansion
-enable_casemod_attributes
-enable_casemod_expansions
-enable_command_timing
-enable_cond_command
-enable_cond_regexp
-enable_coprocesses
-enable_debugger
-enable_directory_stack
-enable_disabled_builtins
-enable_dparen_arithmetic
-enable_extended_glob
-enable_extended_glob_default
-enable_help_builtin
-enable_history
-enable_job_control
-enable_multibyte
-enable_net_redirections
-enable_process_substitution
-enable_progcomp
-enable_prompt_string_decoding
-enable_readline
-enable_restricted
-enable_select
-enable_separate_helpfiles
-enable_single_help_strings
-enable_strict_posix_default
-enable_usg_echo_default
-enable_xpg_echo_default
-enable_mem_scramble
-enable_profiling
-enable_static_link
-enable_largefile
-enable_nls
-with_gnu_ld
-enable_rpath
-with_libiconv_prefix
-with_included_gettext
-with_libintl_prefix
-'
-      ac_precious_vars='build_alias
-host_alias
-target_alias
-DEBUGGER_START_FILE
-CC_FOR_BUILD
-CFLAGS_FOR_BUILD
-LDFLAGS_FOR_BUILD
-CPPFLAGS_FOR_BUILD
-CC
-CFLAGS
-LDFLAGS
-LIBS
-CPPFLAGS
-CPP
-YACC
-YFLAGS'
-
-
-# Initialize some variables set by options.
-ac_init_help=
-ac_init_version=false
-ac_unrecognized_opts=
-ac_unrecognized_sep=
-# The variables have the same names as the options, with
-# dashes changed to underlines.
-cache_file=/dev/null
-exec_prefix=NONE
-no_create=
-no_recursion=
-prefix=NONE
-program_prefix=NONE
-program_suffix=NONE
-program_transform_name=s,x,x,
-silent=
-site=
-srcdir=
-verbose=
-x_includes=NONE
-x_libraries=NONE
-
-# Installation directory options.
-# These are left unexpanded so users can "make install exec_prefix=/foo"
-# and all the variables that are supposed to be based on exec_prefix
-# by default will actually change.
-# Use braces instead of parens because sh, perl, etc. also accept them.
-# (The list follows the same order as the GNU Coding Standards.)
-bindir='${exec_prefix}/bin'
-sbindir='${exec_prefix}/sbin'
-libexecdir='${exec_prefix}/libexec'
-datarootdir='${prefix}/share'
-datadir='${datarootdir}'
-sysconfdir='${prefix}/etc'
-sharedstatedir='${prefix}/com'
-localstatedir='${prefix}/var'
-includedir='${prefix}/include'
-oldincludedir='/usr/include'
-docdir='${datarootdir}/doc/${PACKAGE_TARNAME}'
-infodir='${datarootdir}/info'
-htmldir='${docdir}'
-dvidir='${docdir}'
-pdfdir='${docdir}'
-psdir='${docdir}'
-libdir='${exec_prefix}/lib'
-localedir='${datarootdir}/locale'
-mandir='${datarootdir}/man'
-
-ac_prev=
-ac_dashdash=
-for ac_option
-do
-  # If the previous option needs an argument, assign it.
-  if test -n "$ac_prev"; then
-    eval $ac_prev=\$ac_option
-    ac_prev=
-    continue
-  fi
-
-  case $ac_option in
-  *=?*) ac_optarg=`expr "X$ac_option" : '[^=]*=\(.*\)'` ;;
-  *=)   ac_optarg= ;;
-  *)    ac_optarg=yes ;;
-  esac
-
-  # Accept the important Cygnus configure options, so we can diagnose typos.
-
-  case $ac_dashdash$ac_option in
-  --)
-    ac_dashdash=yes ;;
-
-  -bindir | --bindir | --bindi | --bind | --bin | --bi)
-    ac_prev=bindir ;;
-  -bindir=* | --bindir=* | --bindi=* | --bind=* | --bin=* | --bi=*)
-    bindir=$ac_optarg ;;
-
-  -build | --build | --buil | --bui | --bu)
-    ac_prev=build_alias ;;
-  -build=* | --build=* | --buil=* | --bui=* | --bu=*)
-    build_alias=$ac_optarg ;;
-
-  -cache-file | --cache-file | --cache-fil | --cache-fi \
-  | --cache-f | --cache- | --cache | --cach | --cac | --ca | --c)
-    ac_prev=cache_file ;;
-  -cache-file=* | --cache-file=* | --cache-fil=* | --cache-fi=* \
-  | --cache-f=* | --cache-=* | --cache=* | --cach=* | --cac=* | --ca=* | --c=*)
-    cache_file=$ac_optarg ;;
-
-  --config-cache | -C)
-    cache_file=config.cache ;;
-
-  -datadir | --datadir | --datadi | --datad)
-    ac_prev=datadir ;;
-  -datadir=* | --datadir=* | --datadi=* | --datad=*)
-    datadir=$ac_optarg ;;
-
-  -datarootdir | --datarootdir | --datarootdi | --datarootd | --dataroot \
-  | --dataroo | --dataro | --datar)
-    ac_prev=datarootdir ;;
-  -datarootdir=* | --datarootdir=* | --datarootdi=* | --datarootd=* \
-  | --dataroot=* | --dataroo=* | --dataro=* | --datar=*)
-    datarootdir=$ac_optarg ;;
-
-  -disable-* | --disable-*)
-    ac_useropt=`expr "x$ac_option" : 'x-*disable-\(.*\)'`
-    # Reject names that are not valid shell variable names.
-    expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&
-      as_fn_error $? "invalid feature name: $ac_useropt"
-    ac_useropt_orig=$ac_useropt
-    ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'`
-    case $ac_user_opts in
-      *"
-"enable_$ac_useropt"
-"*) ;;
-      *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--disable-$ac_useropt_orig"
-        ac_unrecognized_sep=', ';;
-    esac
-    eval enable_$ac_useropt=no ;;
-
-  -docdir | --docdir | --docdi | --doc | --do)
-    ac_prev=docdir ;;
-  -docdir=* | --docdir=* | --docdi=* | --doc=* | --do=*)
-    docdir=$ac_optarg ;;
-
-  -dvidir | --dvidir | --dvidi | --dvid | --dvi | --dv)
-    ac_prev=dvidir ;;
-  -dvidir=* | --dvidir=* | --dvidi=* | --dvid=* | --dvi=* | --dv=*)
-    dvidir=$ac_optarg ;;
-
-  -enable-* | --enable-*)
-    ac_useropt=`expr "x$ac_option" : 'x-*enable-\([^=]*\)'`
-    # Reject names that are not valid shell variable names.
-    expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&
-      as_fn_error $? "invalid feature name: $ac_useropt"
-    ac_useropt_orig=$ac_useropt
-    ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'`
-    case $ac_user_opts in
-      *"
-"enable_$ac_useropt"
-"*) ;;
-      *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--enable-$ac_useropt_orig"
-        ac_unrecognized_sep=', ';;
-    esac
-    eval enable_$ac_useropt=\$ac_optarg ;;
-
-  -exec-prefix | --exec_prefix | --exec-prefix | --exec-prefi \
-  | --exec-pref | --exec-pre | --exec-pr | --exec-p | --exec- \
-  | --exec | --exe | --ex)
-    ac_prev=exec_prefix ;;
-  -exec-prefix=* | --exec_prefix=* | --exec-prefix=* | --exec-prefi=* \
-  | --exec-pref=* | --exec-pre=* | --exec-pr=* | --exec-p=* | --exec-=* \
-  | --exec=* | --exe=* | --ex=*)
-    exec_prefix=$ac_optarg ;;
-
-  -gas | --gas | --ga | --g)
-    # Obsolete; use --with-gas.
-    with_gas=yes ;;
-
-  -help | --help | --hel | --he | -h)
-    ac_init_help=long ;;
-  -help=r* | --help=r* | --hel=r* | --he=r* | -hr*)
-    ac_init_help=recursive ;;
-  -help=s* | --help=s* | --hel=s* | --he=s* | -hs*)
-    ac_init_help=short ;;
-
-  -host | --host | --hos | --ho)
-    ac_prev=host_alias ;;
-  -host=* | --host=* | --hos=* | --ho=*)
-    host_alias=$ac_optarg ;;
-
-  -htmldir | --htmldir | --htmldi | --htmld | --html | --htm | --ht)
-    ac_prev=htmldir ;;
-  -htmldir=* | --htmldir=* | --htmldi=* | --htmld=* | --html=* | --htm=* \
-  | --ht=*)
-    htmldir=$ac_optarg ;;
-
-  -includedir | --includedir | --includedi | --included | --include \
-  | --includ | --inclu | --incl | --inc)
-    ac_prev=includedir ;;
-  -includedir=* | --includedir=* | --includedi=* | --included=* | --include=* \
-  | --includ=* | --inclu=* | --incl=* | --inc=*)
-    includedir=$ac_optarg ;;
-
-  -infodir | --infodir | --infodi | --infod | --info | --inf)
-    ac_prev=infodir ;;
-  -infodir=* | --infodir=* | --infodi=* | --infod=* | --info=* | --inf=*)
-    infodir=$ac_optarg ;;
-
-  -libdir | --libdir | --libdi | --libd)
-    ac_prev=libdir ;;
-  -libdir=* | --libdir=* | --libdi=* | --libd=*)
-    libdir=$ac_optarg ;;
-
-  -libexecdir | --libexecdir | --libexecdi | --libexecd | --libexec \
-  | --libexe | --libex | --libe)
-    ac_prev=libexecdir ;;
-  -libexecdir=* | --libexecdir=* | --libexecdi=* | --libexecd=* | --libexec=* \
-  | --libexe=* | --libex=* | --libe=*)
-    libexecdir=$ac_optarg ;;
-
-  -localedir | --localedir | --localedi | --localed | --locale)
-    ac_prev=localedir ;;
-  -localedir=* | --localedir=* | --localedi=* | --localed=* | --locale=*)
-    localedir=$ac_optarg ;;
-
-  -localstatedir | --localstatedir | --localstatedi | --localstated \
-  | --localstate | --localstat | --localsta | --localst | --locals)
-    ac_prev=localstatedir ;;
-  -localstatedir=* | --localstatedir=* | --localstatedi=* | --localstated=* \
-  | --localstate=* | --localstat=* | --localsta=* | --localst=* | --locals=*)
-    localstatedir=$ac_optarg ;;
-
-  -mandir | --mandir | --mandi | --mand | --man | --ma | --m)
-    ac_prev=mandir ;;
-  -mandir=* | --mandir=* | --mandi=* | --mand=* | --man=* | --ma=* | --m=*)
-    mandir=$ac_optarg ;;
-
-  -nfp | --nfp | --nf)
-    # Obsolete; use --without-fp.
-    with_fp=no ;;
-
-  -no-create | --no-create | --no-creat | --no-crea | --no-cre \
-  | --no-cr | --no-c | -n)
-    no_create=yes ;;
-
-  -no-recursion | --no-recursion | --no-recursio | --no-recursi \
-  | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r)
-    no_recursion=yes ;;
-
-  -oldincludedir | --oldincludedir | --oldincludedi | --oldincluded \
-  | --oldinclude | --oldinclud | --oldinclu | --oldincl | --oldinc \
-  | --oldin | --oldi | --old | --ol | --o)
-    ac_prev=oldincludedir ;;
-  -oldincludedir=* | --oldincludedir=* | --oldincludedi=* | --oldincluded=* \
-  | --oldinclude=* | --oldinclud=* | --oldinclu=* | --oldincl=* | --oldinc=* \
-  | --oldin=* | --oldi=* | --old=* | --ol=* | --o=*)
-    oldincludedir=$ac_optarg ;;
-
-  -prefix | --prefix | --prefi | --pref | --pre | --pr | --p)
-    ac_prev=prefix ;;
-  -prefix=* | --prefix=* | --prefi=* | --pref=* | --pre=* | --pr=* | --p=*)
-    prefix=$ac_optarg ;;
-
-  -program-prefix | --program-prefix | --program-prefi | --program-pref \
-  | --program-pre | --program-pr | --program-p)
-    ac_prev=program_prefix ;;
-  -program-prefix=* | --program-prefix=* | --program-prefi=* \
-  | --program-pref=* | --program-pre=* | --program-pr=* | --program-p=*)
-    program_prefix=$ac_optarg ;;
-
-  -program-suffix | --program-suffix | --program-suffi | --program-suff \
-  | --program-suf | --program-su | --program-s)
-    ac_prev=program_suffix ;;
-  -program-suffix=* | --program-suffix=* | --program-suffi=* \
-  | --program-suff=* | --program-suf=* | --program-su=* | --program-s=*)
-    program_suffix=$ac_optarg ;;
-
-  -program-transform-name | --program-transform-name \
-  | --program-transform-nam | --program-transform-na \
-  | --program-transform-n | --program-transform- \
-  | --program-transform | --program-transfor \
-  | --program-transfo | --program-transf \
-  | --program-trans | --program-tran \
-  | --progr-tra | --program-tr | --program-t)
-    ac_prev=program_transform_name ;;
-  -program-transform-name=* | --program-transform-name=* \
-  | --program-transform-nam=* | --program-transform-na=* \
-  | --program-transform-n=* | --program-transform-=* \
-  | --program-transform=* | --program-transfor=* \
-  | --program-transfo=* | --program-transf=* \
-  | --program-trans=* | --program-tran=* \
-  | --progr-tra=* | --program-tr=* | --program-t=*)
-    program_transform_name=$ac_optarg ;;
-
-  -pdfdir | --pdfdir | --pdfdi | --pdfd | --pdf | --pd)
-    ac_prev=pdfdir ;;
-  -pdfdir=* | --pdfdir=* | --pdfdi=* | --pdfd=* | --pdf=* | --pd=*)
-    pdfdir=$ac_optarg ;;
-
-  -psdir | --psdir | --psdi | --psd | --ps)
-    ac_prev=psdir ;;
-  -psdir=* | --psdir=* | --psdi=* | --psd=* | --ps=*)
-    psdir=$ac_optarg ;;
-
-  -q | -quiet | --quiet | --quie | --qui | --qu | --q \
-  | -silent | --silent | --silen | --sile | --sil)
-    silent=yes ;;
-
-  -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb)
-    ac_prev=sbindir ;;
-  -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \
-  | --sbi=* | --sb=*)
-    sbindir=$ac_optarg ;;
-
-  -sharedstatedir | --sharedstatedir | --sharedstatedi \
-  | --sharedstated | --sharedstate | --sharedstat | --sharedsta \
-  | --sharedst | --shareds | --shared | --share | --shar \
-  | --sha | --sh)
-    ac_prev=sharedstatedir ;;
-  -sharedstatedir=* | --sharedstatedir=* | --sharedstatedi=* \
-  | --sharedstated=* | --sharedstate=* | --sharedstat=* | --sharedsta=* \
-  | --sharedst=* | --shareds=* | --shared=* | --share=* | --shar=* \
-  | --sha=* | --sh=*)
-    sharedstatedir=$ac_optarg ;;
-
-  -site | --site | --sit)
-    ac_prev=site ;;
-  -site=* | --site=* | --sit=*)
-    site=$ac_optarg ;;
-
-  -srcdir | --srcdir | --srcdi | --srcd | --src | --sr)
-    ac_prev=srcdir ;;
-  -srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=*)
-    srcdir=$ac_optarg ;;
-
-  -sysconfdir | --sysconfdir | --sysconfdi | --sysconfd | --sysconf \
-  | --syscon | --sysco | --sysc | --sys | --sy)
-    ac_prev=sysconfdir ;;
-  -sysconfdir=* | --sysconfdir=* | --sysconfdi=* | --sysconfd=* | --sysconf=* \
-  | --syscon=* | --sysco=* | --sysc=* | --sys=* | --sy=*)
-    sysconfdir=$ac_optarg ;;
-
-  -target | --target | --targe | --targ | --tar | --ta | --t)
-    ac_prev=target_alias ;;
-  -target=* | --target=* | --targe=* | --targ=* | --tar=* | --ta=* | --t=*)
-    target_alias=$ac_optarg ;;
-
-  -v | -verbose | --verbose | --verbos | --verbo | --verb)
-    verbose=yes ;;
-
-  -version | --version | --versio | --versi | --vers | -V)
-    ac_init_version=: ;;
-
-  -with-* | --with-*)
-    ac_useropt=`expr "x$ac_option" : 'x-*with-\([^=]*\)'`
-    # Reject names that are not valid shell variable names.
-    expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&
-      as_fn_error $? "invalid package name: $ac_useropt"
-    ac_useropt_orig=$ac_useropt
-    ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'`
-    case $ac_user_opts in
-      *"
-"with_$ac_useropt"
-"*) ;;
-      *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--with-$ac_useropt_orig"
-        ac_unrecognized_sep=', ';;
-    esac
-    eval with_$ac_useropt=\$ac_optarg ;;
-
-  -without-* | --without-*)
-    ac_useropt=`expr "x$ac_option" : 'x-*without-\(.*\)'`
-    # Reject names that are not valid shell variable names.
-    expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&
-      as_fn_error $? "invalid package name: $ac_useropt"
-    ac_useropt_orig=$ac_useropt
-    ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'`
-    case $ac_user_opts in
-      *"
-"with_$ac_useropt"
-"*) ;;
-      *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--without-$ac_useropt_orig"
-        ac_unrecognized_sep=', ';;
-    esac
-    eval with_$ac_useropt=no ;;
-
-  --x)
-    # Obsolete; use --with-x.
-    with_x=yes ;;
-
-  -x-includes | --x-includes | --x-include | --x-includ | --x-inclu \
-  | --x-incl | --x-inc | --x-in | --x-i)
-    ac_prev=x_includes ;;
-  -x-includes=* | --x-includes=* | --x-include=* | --x-includ=* | --x-inclu=* \
-  | --x-incl=* | --x-inc=* | --x-in=* | --x-i=*)
-    x_includes=$ac_optarg ;;
-
-  -x-libraries | --x-libraries | --x-librarie | --x-librari \
-  | --x-librar | --x-libra | --x-libr | --x-lib | --x-li | --x-l)
-    ac_prev=x_libraries ;;
-  -x-libraries=* | --x-libraries=* | --x-librarie=* | --x-librari=* \
-  | --x-librar=* | --x-libra=* | --x-libr=* | --x-lib=* | --x-li=* | --x-l=*)
-    x_libraries=$ac_optarg ;;
-
-  -*) as_fn_error $? "unrecognized option: \`$ac_option'
-Try \`$0 --help' for more information"
-    ;;
-
-  *=*)
-    ac_envvar=`expr "x$ac_option" : 'x\([^=]*\)='`
-    # Reject names that are not valid shell variable names.
-    case $ac_envvar in #(
-      '' | [0-9]* | *[!_$as_cr_alnum]* )
-      as_fn_error $? "invalid variable name: \`$ac_envvar'" ;;
-    esac
-    eval $ac_envvar=\$ac_optarg
-    export $ac_envvar ;;
-
-  *)
-    # FIXME: should be removed in autoconf 3.0.
-    $as_echo "$as_me: WARNING: you should use --build, --host, --target" >&2
-    expr "x$ac_option" : ".*[^-._$as_cr_alnum]" >/dev/null &&
-      $as_echo "$as_me: WARNING: invalid host type: $ac_option" >&2
-    : "${build_alias=$ac_option} ${host_alias=$ac_option} ${target_alias=$ac_option}"
-    ;;
-
-  esac
-done
-
-if test -n "$ac_prev"; then
-  ac_option=--`echo $ac_prev | sed 's/_/-/g'`
-  as_fn_error $? "missing argument to $ac_option"
-fi
-
-if test -n "$ac_unrecognized_opts"; then
-  case $enable_option_checking in
-    no) ;;
-    fatal) as_fn_error $? "unrecognized options: $ac_unrecognized_opts" ;;
-    *)     $as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2 ;;
-  esac
-fi
-
-# Check all directory arguments for consistency.
-for ac_var in  exec_prefix prefix bindir sbindir libexecdir datarootdir \
-               datadir sysconfdir sharedstatedir localstatedir includedir \
-               oldincludedir docdir infodir htmldir dvidir pdfdir psdir \
-               libdir localedir mandir
-do
-  eval ac_val=\$$ac_var
-  # Remove trailing slashes.
-  case $ac_val in
-    */ )
-      ac_val=`expr "X$ac_val" : 'X\(.*[^/]\)' \| "X$ac_val" : 'X\(.*\)'`
-      eval $ac_var=\$ac_val;;
-  esac
-  # Be sure to have absolute directory names.
-  case $ac_val in
-    [\\/$]* | ?:[\\/]* )  continue;;
-    NONE | '' ) case $ac_var in *prefix ) continue;; esac;;
-  esac
-  as_fn_error $? "expected an absolute directory name for --$ac_var: $ac_val"
-done
-
-# There might be people who depend on the old broken behavior: `$host'
-# used to hold the argument of --host etc.
-# FIXME: To remove some day.
-build=$build_alias
-host=$host_alias
-target=$target_alias
-
-# FIXME: To remove some day.
-if test "x$host_alias" != x; then
-  if test "x$build_alias" = x; then
-    cross_compiling=maybe
-    $as_echo "$as_me: WARNING: if you wanted to set the --build type, don't use --host.
-    If a cross compiler is detected then cross compile mode will be used" >&2
-  elif test "x$build_alias" != "x$host_alias"; then
-    cross_compiling=yes
-  fi
-fi
-
-ac_tool_prefix=
-test -n "$host_alias" && ac_tool_prefix=$host_alias-
-
-test "$silent" = yes && exec 6>/dev/null
-
-
-ac_pwd=`pwd` && test -n "$ac_pwd" &&
-ac_ls_di=`ls -di .` &&
-ac_pwd_ls_di=`cd "$ac_pwd" && ls -di .` ||
-  as_fn_error $? "working directory cannot be determined"
-test "X$ac_ls_di" = "X$ac_pwd_ls_di" ||
-  as_fn_error $? "pwd does not report name of working directory"
-
-
-# Find the source files, if location was not specified.
-if test -z "$srcdir"; then
-  ac_srcdir_defaulted=yes
-  # Try the directory containing this script, then the parent directory.
-  ac_confdir=`$as_dirname -- "$as_myself" ||
-$as_expr X"$as_myself" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
-        X"$as_myself" : 'X\(//\)[^/]' \| \
-        X"$as_myself" : 'X\(//\)$' \| \
-        X"$as_myself" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X"$as_myself" |
-    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
-           s//\1/
-           q
-         }
-         /^X\(\/\/\)[^/].*/{
-           s//\1/
-           q
-         }
-         /^X\(\/\/\)$/{
-           s//\1/
-           q
-         }
-         /^X\(\/\).*/{
-           s//\1/
-           q
-         }
-         s/.*/./; q'`
-  srcdir=$ac_confdir
-  if test ! -r "$srcdir/$ac_unique_file"; then
-    srcdir=..
-  fi
-else
-  ac_srcdir_defaulted=no
-fi
-if test ! -r "$srcdir/$ac_unique_file"; then
-  test "$ac_srcdir_defaulted" = yes && srcdir="$ac_confdir or .."
-  as_fn_error $? "cannot find sources ($ac_unique_file) in $srcdir"
-fi
-ac_msg="sources are in $srcdir, but \`cd $srcdir' does not work"
-ac_abs_confdir=`(
-       cd "$srcdir" && test -r "./$ac_unique_file" || as_fn_error $? "$ac_msg"
-       pwd)`
-# When building in place, set srcdir=.
-if test "$ac_abs_confdir" = "$ac_pwd"; then
-  srcdir=.
-fi
-# Remove unnecessary trailing slashes from srcdir.
-# Double slashes in file names in object file debugging info
-# mess up M-x gdb in Emacs.
-case $srcdir in
-*/) srcdir=`expr "X$srcdir" : 'X\(.*[^/]\)' \| "X$srcdir" : 'X\(.*\)'`;;
-esac
-for ac_var in $ac_precious_vars; do
-  eval ac_env_${ac_var}_set=\${${ac_var}+set}
-  eval ac_env_${ac_var}_value=\$${ac_var}
-  eval ac_cv_env_${ac_var}_set=\${${ac_var}+set}
-  eval ac_cv_env_${ac_var}_value=\$${ac_var}
-done
-
-#
-# Report the --help message.
-#
-if test "$ac_init_help" = "long"; then
-  # Omit some internal or obsolete options to make the list less imposing.
-  # This message is too long to be a string in the A/UX 3.1 sh.
-  cat <<_ACEOF
-\`configure' configures bash 4.2-maint to adapt to many kinds of systems.
-
-Usage: $0 [OPTION]... [VAR=VALUE]...
-
-To assign environment variables (e.g., CC, CFLAGS...), specify them as
-VAR=VALUE.  See below for descriptions of some of the useful variables.
-
-Defaults for the options are specified in brackets.
-
-Configuration:
-  -h, --help              display this help and exit
-      --help=short        display options specific to this package
-      --help=recursive    display the short help of all the included packages
-  -V, --version           display version information and exit
-  -q, --quiet, --silent   do not print \`checking ...' messages
-      --cache-file=FILE   cache test results in FILE [disabled]
-  -C, --config-cache      alias for \`--cache-file=config.cache'
-  -n, --no-create         do not create output files
-      --srcdir=DIR        find the sources in DIR [configure dir or \`..']
-
-Installation directories:
-  --prefix=PREFIX         install architecture-independent files in PREFIX
-                          @<:@@S|@ac_default_prefix@:>@
-  --exec-prefix=EPREFIX   install architecture-dependent files in EPREFIX
-                          @<:@PREFIX@:>@
-
-By default, \`make install' will install all the files in
-\`$ac_default_prefix/bin', \`$ac_default_prefix/lib' etc.  You can specify
-an installation prefix other than \`$ac_default_prefix' using \`--prefix',
-for instance \`--prefix=\$HOME'.
-
-For better control, use the options below.
-
-Fine tuning of the installation directories:
-  --bindir=DIR            user executables [EPREFIX/bin]
-  --sbindir=DIR           system admin executables [EPREFIX/sbin]
-  --libexecdir=DIR        program executables [EPREFIX/libexec]
-  --sysconfdir=DIR        read-only single-machine data [PREFIX/etc]
-  --sharedstatedir=DIR    modifiable architecture-independent data [PREFIX/com]
-  --localstatedir=DIR     modifiable single-machine data [PREFIX/var]
-  --libdir=DIR            object code libraries [EPREFIX/lib]
-  --includedir=DIR        C header files [PREFIX/include]
-  --oldincludedir=DIR     C header files for non-gcc [/usr/include]
-  --datarootdir=DIR       read-only arch.-independent data root [PREFIX/share]
-  --datadir=DIR           read-only architecture-independent data [DATAROOTDIR]
-  --infodir=DIR           info documentation [DATAROOTDIR/info]
-  --localedir=DIR         locale-dependent data [DATAROOTDIR/locale]
-  --mandir=DIR            man documentation [DATAROOTDIR/man]
-  --docdir=DIR            documentation root @<:@DATAROOTDIR/doc/bash@:>@
-  --htmldir=DIR           html documentation [DOCDIR]
-  --dvidir=DIR            dvi documentation [DOCDIR]
-  --pdfdir=DIR            pdf documentation [DOCDIR]
-  --psdir=DIR             ps documentation [DOCDIR]
-_ACEOF
-
-  cat <<\_ACEOF
-
-System types:
-  --build=BUILD     configure for building on BUILD [guessed]
-  --host=HOST       cross-compile to build programs to run on HOST [BUILD]
-_ACEOF
-fi
-
-if test -n "$ac_init_help"; then
-  case $ac_init_help in
-     short | recursive ) echo "Configuration of bash 4.2-maint:";;
-   esac
-  cat <<\_ACEOF
-
-Optional Features:
-  --disable-option-checking  ignore unrecognized --enable/--with options
-  --disable-FEATURE       do not include FEATURE (same as --enable-FEATURE=no)
-  --enable-FEATURE[=ARG]  include FEATURE [ARG=yes]
-  --enable-minimal-config a minimal sh-like configuration
-  --enable-alias          enable shell aliases
-  --enable-arith-for-command 
-                          enable arithmetic for command
-  --enable-array-variables 
-                          include shell array variables
-  --enable-bang-history   turn on csh-style history substitution
-  --enable-brace-expansion 
-                          include brace expansion
-  --enable-casemod-attributes 
-                          include case-modifying variable attributes
-  --enable-casemod-expansions 
-                          include case-modifying word expansions
-  --enable-command-timing enable the time reserved word and command timing
-  --enable-cond-command   enable the conditional command
-  --enable-cond-regexp    enable extended regular expression matching in
-                          conditional commands
-  --enable-coprocesses    enable coprocess support and the coproc reserved
-                          word
-  --enable-debugger       enable support for bash debugger
-  --enable-directory-stack 
-                          enable builtins pushd/popd/dirs
-  --enable-disabled-builtins 
-                          allow disabled builtins to still be invoked
-  --enable-dparen-arithmetic 
-                          include ((...)) command
-  --enable-extended-glob  include ksh-style extended pattern matching
-  --enable-extended-glob-default 
-                          force extended pattern matching to be enabled by
-                          default
-  --enable-help-builtin   include the help builtin
-  --enable-history        turn on command history
-  --enable-job-control    enable job control features
-  --enable-multibyte      enable multibyte characters if OS supports them
-  --enable-net-redirections 
-                          enable /dev/tcp/host/port redirection
-  --enable-process-substitution 
-                          enable process substitution
-  --enable-progcomp       enable programmable completion and the complete
-                          builtin
-  --enable-prompt-string-decoding 
-                          turn on escape character decoding in prompts
-  --enable-readline       turn on command line editing
-  --enable-restricted     enable a restricted shell
-  --enable-select         include select command
-  --enable-separate-helpfiles 
-                          use external files for help builtin documentation
-  --enable-single-help-strings 
-                          store help documentation as a single string to ease
-                          translation
-  --enable-strict-posix-default 
-                          configure bash to be posix-conformant by default
-  --enable-usg-echo-default 
-                          a synonym for --enable-xpg-echo-default
-  --enable-xpg-echo-default 
-                          make the echo builtin expand escape sequences by
-                          default
-  --enable-mem-scramble   scramble memory on calls to malloc and free
-  --enable-profiling      allow profiling with gprof
-  --enable-static-link    link bash statically, for use as a root shell
-  --disable-largefile     omit support for large files
-  --disable-nls           do not use Native Language Support
-  --disable-rpath         do not hardcode runtime library paths
-
-Optional Packages:
-  --with-PACKAGE[=ARG]    use PACKAGE [ARG=yes]
-  --without-PACKAGE       do not use PACKAGE (same as --with-PACKAGE=no)
-  --with-afs              if you are running AFS
-  --with-bash-malloc      use the Bash version of malloc
-  --with-curses           use the curses library instead of the termcap
-                          library
-  --with-gnu-malloc       synonym for --with-bash-malloc
-  --with-installed-readline 
-                          use a version of the readline library that is
-                          already installed
-  --with-purecov          configure to postprocess with pure coverage
-  --with-purify           configure to postprocess with purify
-  --with-gnu-ld           assume the C compiler uses GNU ld default=no
-  --with-libiconv-prefix[=DIR]  search for libiconv in DIR/include and DIR/lib
-  --without-libiconv-prefix     don't search for libiconv in includedir and libdir
-  --with-included-gettext use the GNU gettext library included here
-  --with-libintl-prefix[=DIR]  search for libintl in DIR/include and DIR/lib
-  --without-libintl-prefix     don't search for libintl in includedir and libdir
-
-Some influential environment variables:
-  DEBUGGER_START_FILE 
-              location of bash debugger initialization file
-  CC_FOR_BUILD 
-              C compiler used when compiling binaries used only at build time
-  CFLAGS_FOR_BUILD 
-              Compliation options (CFLAGS) used when compiling binaries used
-              only at build time
-  LDFLAGS_FOR_BUILD 
-              Linker options (LDFLAGS) used when compiling binaries used only
-              at build time
-  CPPFLAGS_FOR_BUILD 
-              C preprocessor options (CPPFLAGS) used when compiling binaries
-              used only at build time
-  CC          C compiler command
-  CFLAGS      C compiler flags
-  LDFLAGS     linker flags, e.g. -L<lib dir> if you have libraries in a
-              nonstandard directory <lib dir>
-  LIBS        libraries to pass to the linker, e.g. -l<library>
-  CPPFLAGS    (Objective) C/C++ preprocessor flags, e.g. -I<include dir> if
-              you have headers in a nonstandard directory <include dir>
-  CPP         C preprocessor
-  YACC        The `Yet Another Compiler Compiler' implementation to use.
-              Defaults to the first program found out of: `bison -y', `byacc',
-              `yacc'.
-  YFLAGS      The list of arguments that will be passed by default to @S|@YACC.
-              This script will default YFLAGS to the empty string to avoid a
-              default value of `-d' given by some make applications.
-
-Use these variables to override the choices made by `configure' or to help
-it to find libraries and programs with nonstandard names/locations.
-
-Report bugs to <bug-bash@gnu.org>.
-_ACEOF
-ac_status=$?
-fi
-
-if test "$ac_init_help" = "recursive"; then
-  # If there are subdirs, report their specific --help.
-  for ac_dir in : $ac_subdirs_all; do test "x$ac_dir" = x: && continue
-    test -d "$ac_dir" ||
-      { cd "$srcdir" && ac_pwd=`pwd` && srcdir=. && test -d "$ac_dir"; } ||
-      continue
-    ac_builddir=.
-
-case "$ac_dir" in
-.) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;;
-*)
-  ac_dir_suffix=/`$as_echo "$ac_dir" | sed 's|^\.[\\/]||'`
-  # A ".." for each directory in $ac_dir_suffix.
-  ac_top_builddir_sub=`$as_echo "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'`
-  case $ac_top_builddir_sub in
-  "") ac_top_builddir_sub=. ac_top_build_prefix= ;;
-  *)  ac_top_build_prefix=$ac_top_builddir_sub/ ;;
-  esac ;;
-esac
-ac_abs_top_builddir=$ac_pwd
-ac_abs_builddir=$ac_pwd$ac_dir_suffix
-# for backward compatibility:
-ac_top_builddir=$ac_top_build_prefix
-
-case $srcdir in
-  .)  # We are building in place.
-    ac_srcdir=.
-    ac_top_srcdir=$ac_top_builddir_sub
-    ac_abs_top_srcdir=$ac_pwd ;;
-  [\\/]* | ?:[\\/]* )  # Absolute name.
-    ac_srcdir=$srcdir$ac_dir_suffix;
-    ac_top_srcdir=$srcdir
-    ac_abs_top_srcdir=$srcdir ;;
-  *) # Relative name.
-    ac_srcdir=$ac_top_build_prefix$srcdir$ac_dir_suffix
-    ac_top_srcdir=$ac_top_build_prefix$srcdir
-    ac_abs_top_srcdir=$ac_pwd/$srcdir ;;
-esac
-ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix
-
-    cd "$ac_dir" || { ac_status=$?; continue; }
-    # Check for guested configure.
-    if test -f "$ac_srcdir/configure.gnu"; then
-      echo &&
-      $SHELL "$ac_srcdir/configure.gnu" --help=recursive
-    elif test -f "$ac_srcdir/configure"; then
-      echo &&
-      $SHELL "$ac_srcdir/configure" --help=recursive
-    else
-      $as_echo "$as_me: WARNING: no configuration information is in $ac_dir" >&2
-    fi || ac_status=$?
-    cd "$ac_pwd" || { ac_status=$?; break; }
-  done
-fi
-
-test -n "$ac_init_help" && exit $ac_status
-if $ac_init_version; then
-  cat <<\_ACEOF
-bash configure 4.2-maint
-generated by GNU Autoconf 2.68
-
-Copyright (C) 2010 Free Software Foundation, Inc.
-This configure script is free software; the Free Software Foundation
-gives unlimited permission to copy, distribute and modify it.
-_ACEOF
-  exit
-fi
-
-## ------------------------ ##
-## Autoconf initialization. ##
-## ------------------------ ##
-
-@%:@ ac_fn_c_try_compile LINENO
-@%:@ --------------------------
-@%:@ Try to compile conftest.@S|@ac_ext, and return whether this succeeded.
-ac_fn_c_try_compile ()
-{
-  as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
-  rm -f conftest.$ac_objext
-  if { { ac_try="$ac_compile"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
-  (eval "$ac_compile") 2>conftest.err
-  ac_status=$?
-  if test -s conftest.err; then
-    grep -v '^ *+' conftest.err >conftest.er1
-    cat conftest.er1 >&5
-    mv -f conftest.er1 conftest.err
-  fi
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-  test $ac_status = 0; } && {
-        test -z "$ac_c_werror_flag" ||
-        test ! -s conftest.err
-       } && test -s conftest.$ac_objext; then :
-  ac_retval=0
-else
-  $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-       ac_retval=1
-fi
-  eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
-  as_fn_set_status $ac_retval
-
-} @%:@ ac_fn_c_try_compile
-
-@%:@ ac_fn_c_try_link LINENO
-@%:@ -----------------------
-@%:@ Try to link conftest.@S|@ac_ext, and return whether this succeeded.
-ac_fn_c_try_link ()
-{
-  as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
-  rm -f conftest.$ac_objext conftest$ac_exeext
-  if { { ac_try="$ac_link"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
-  (eval "$ac_link") 2>conftest.err
-  ac_status=$?
-  if test -s conftest.err; then
-    grep -v '^ *+' conftest.err >conftest.er1
-    cat conftest.er1 >&5
-    mv -f conftest.er1 conftest.err
-  fi
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-  test $ac_status = 0; } && {
-        test -z "$ac_c_werror_flag" ||
-        test ! -s conftest.err
-       } && test -s conftest$ac_exeext && {
-        test "$cross_compiling" = yes ||
-        $as_test_x conftest$ac_exeext
-       }; then :
-  ac_retval=0
-else
-  $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-       ac_retval=1
-fi
-  # Delete the IPA/IPO (Inter Procedural Analysis/Optimization) information
-  # created by the PGI compiler (conftest_ipa8_conftest.oo), as it would
-  # interfere with the next link command; also delete a directory that is
-  # left behind by Apple's compiler.  We do this before executing the actions.
-  rm -rf conftest.dSYM conftest_ipa8_conftest.oo
-  eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
-  as_fn_set_status $ac_retval
-
-} @%:@ ac_fn_c_try_link
-
-@%:@ ac_fn_c_try_cpp LINENO
-@%:@ ----------------------
-@%:@ Try to preprocess conftest.@S|@ac_ext, and return whether this succeeded.
-ac_fn_c_try_cpp ()
-{
-  as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
-  if { { ac_try="$ac_cpp conftest.$ac_ext"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
-  (eval "$ac_cpp conftest.$ac_ext") 2>conftest.err
-  ac_status=$?
-  if test -s conftest.err; then
-    grep -v '^ *+' conftest.err >conftest.er1
-    cat conftest.er1 >&5
-    mv -f conftest.er1 conftest.err
-  fi
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-  test $ac_status = 0; } > conftest.i && {
-        test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
-        test ! -s conftest.err
-       }; then :
-  ac_retval=0
-else
-  $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-    ac_retval=1
-fi
-  eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
-  as_fn_set_status $ac_retval
-
-} @%:@ ac_fn_c_try_cpp
-
-@%:@ ac_fn_c_check_header_mongrel LINENO HEADER VAR INCLUDES
-@%:@ -------------------------------------------------------
-@%:@ Tests whether HEADER exists, giving a warning if it cannot be compiled using
-@%:@ the include files in INCLUDES and setting the cache variable VAR
-@%:@ accordingly.
-ac_fn_c_check_header_mongrel ()
-{
-  as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
-  if eval \${$3+:} false; then :
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
-$as_echo_n "checking for $2... " >&6; }
-if eval \${$3+:} false; then :
-  $as_echo_n "(cached) " >&6
-fi
-eval ac_res=\$$3
-              { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
-else
-  # Is the header compilable?
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking $2 usability" >&5
-$as_echo_n "checking $2 usability... " >&6; }
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-$4
-@%:@include <$2>
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_header_compiler=yes
-else
-  ac_header_compiler=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_header_compiler" >&5
-$as_echo "$ac_header_compiler" >&6; }
-
-# Is the header present?
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking $2 presence" >&5
-$as_echo_n "checking $2 presence... " >&6; }
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-@%:@include <$2>
-_ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
-  ac_header_preproc=yes
-else
-  ac_header_preproc=no
-fi
-rm -f conftest.err conftest.i conftest.$ac_ext
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_header_preproc" >&5
-$as_echo "$ac_header_preproc" >&6; }
-
-# So?  What about this header?
-case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in #((
-  yes:no: )
-    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: accepted by the compiler, rejected by the preprocessor!" >&5
-$as_echo "$as_me: WARNING: $2: accepted by the compiler, rejected by the preprocessor!" >&2;}
-    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: proceeding with the compiler's result" >&5
-$as_echo "$as_me: WARNING: $2: proceeding with the compiler's result" >&2;}
-    ;;
-  no:yes:* )
-    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: present but cannot be compiled" >&5
-$as_echo "$as_me: WARNING: $2: present but cannot be compiled" >&2;}
-    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2:     check for missing prerequisite headers?" >&5
-$as_echo "$as_me: WARNING: $2:     check for missing prerequisite headers?" >&2;}
-    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: see the Autoconf documentation" >&5
-$as_echo "$as_me: WARNING: $2: see the Autoconf documentation" >&2;}
-    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2:     section \"Present But Cannot Be Compiled\"" >&5
-$as_echo "$as_me: WARNING: $2:     section \"Present But Cannot Be Compiled\"" >&2;}
-    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: proceeding with the compiler's result" >&5
-$as_echo "$as_me: WARNING: $2: proceeding with the compiler's result" >&2;}
-( $as_echo "## ------------------------------- ##
-## Report this to bug-bash@gnu.org ##
-## ------------------------------- ##"
-     ) | sed "s/^/$as_me: WARNING:     /" >&2
-    ;;
-esac
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
-$as_echo_n "checking for $2... " >&6; }
-if eval \${$3+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  eval "$3=\$ac_header_compiler"
-fi
-eval ac_res=\$$3
-              { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
-fi
-  eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
-
-} @%:@ ac_fn_c_check_header_mongrel
-
-@%:@ ac_fn_c_try_run LINENO
-@%:@ ----------------------
-@%:@ Try to link conftest.@S|@ac_ext, and return whether this succeeded. Assumes
-@%:@ that executables *can* be run.
-ac_fn_c_try_run ()
-{
-  as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
-  if { { ac_try="$ac_link"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
-  (eval "$ac_link") 2>&5
-  ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-  test $ac_status = 0; } && { ac_try='./conftest$ac_exeext'
-  { { case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
-  (eval "$ac_try") 2>&5
-  ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-  test $ac_status = 0; }; }; then :
-  ac_retval=0
-else
-  $as_echo "$as_me: program exited with status $ac_status" >&5
-       $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-       ac_retval=$ac_status
-fi
-  rm -rf conftest.dSYM conftest_ipa8_conftest.oo
-  eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
-  as_fn_set_status $ac_retval
-
-} @%:@ ac_fn_c_try_run
-
-@%:@ ac_fn_c_check_header_compile LINENO HEADER VAR INCLUDES
-@%:@ -------------------------------------------------------
-@%:@ Tests whether HEADER exists and can be compiled using the include files in
-@%:@ INCLUDES, setting the cache variable VAR accordingly.
-ac_fn_c_check_header_compile ()
-{
-  as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
-$as_echo_n "checking for $2... " >&6; }
-if eval \${$3+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-$4
-@%:@include <$2>
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  eval "$3=yes"
-else
-  eval "$3=no"
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-eval ac_res=\$$3
-              { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
-  eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
-
-} @%:@ ac_fn_c_check_header_compile
-
-@%:@ ac_fn_c_check_func LINENO FUNC VAR
-@%:@ ----------------------------------
-@%:@ Tests whether FUNC exists, setting the cache variable VAR accordingly
-ac_fn_c_check_func ()
-{
-  as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
-$as_echo_n "checking for $2... " >&6; }
-if eval \${$3+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-/* Define $2 to an innocuous variant, in case <limits.h> declares $2.
-   For example, HP-UX 11i <limits.h> declares gettimeofday.  */
-#define $2 innocuous_$2
-
-/* System header to define __stub macros and hopefully few prototypes,
-    which can conflict with char $2 (); below.
-    Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
-    <limits.h> exists even on freestanding compilers.  */
-
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-
-#undef $2
-
-/* Override any GCC internal prototype to avoid an error.
-   Use char because int might match the return type of a GCC
-   builtin and then its argument prototype would still apply.  */
-#ifdef __cplusplus
-extern "C"
-#endif
-char $2 ();
-/* The GNU C library defines this for functions which it implements
-    to always fail with ENOSYS.  Some functions are actually named
-    something starting with __ and the normal name is an alias.  */
-#if defined __stub_$2 || defined __stub___$2
-choke me
-#endif
-
-int
-main ()
-{
-return $2 ();
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  eval "$3=yes"
-else
-  eval "$3=no"
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-fi
-eval ac_res=\$$3
-              { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
-  eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
-
-} @%:@ ac_fn_c_check_func
-
-@%:@ ac_fn_c_check_type LINENO TYPE VAR INCLUDES
-@%:@ -------------------------------------------
-@%:@ Tests whether TYPE exists after having included INCLUDES, setting cache
-@%:@ variable VAR accordingly.
-ac_fn_c_check_type ()
-{
-  as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
-$as_echo_n "checking for $2... " >&6; }
-if eval \${$3+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  eval "$3=no"
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-$4
-int
-main ()
-{
-if (sizeof ($2))
-        return 0;
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-$4
-int
-main ()
-{
-if (sizeof (($2)))
-           return 0;
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  
-else
-  eval "$3=yes"
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-eval ac_res=\$$3
-              { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
-  eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
-
-} @%:@ ac_fn_c_check_type
-
-@%:@ ac_fn_c_check_decl LINENO SYMBOL VAR INCLUDES
-@%:@ ---------------------------------------------
-@%:@ Tests whether SYMBOL is declared in INCLUDES, setting cache variable VAR
-@%:@ accordingly.
-ac_fn_c_check_decl ()
-{
-  as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
-  as_decl_name=`echo $2|sed 's/ *(.*//'`
-  as_decl_use=`echo $2|sed -e 's/(/((/' -e 's/)/) 0&/' -e 's/,/) 0& (/g'`
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $as_decl_name is declared" >&5
-$as_echo_n "checking whether $as_decl_name is declared... " >&6; }
-if eval \${$3+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-$4
-int
-main ()
-{
-@%:@ifndef $as_decl_name
-@%:@ifdef __cplusplus
-  (void) $as_decl_use;
-@%:@else
-  (void) $as_decl_name;
-@%:@endif
-@%:@endif
-
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  eval "$3=yes"
-else
-  eval "$3=no"
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-eval ac_res=\$$3
-              { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
-  eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
-
-} @%:@ ac_fn_c_check_decl
-
-@%:@ ac_fn_c_compute_int LINENO EXPR VAR INCLUDES
-@%:@ --------------------------------------------
-@%:@ Tries to find the compile-time value of EXPR in a program that includes
-@%:@ INCLUDES, setting VAR accordingly. Returns whether the value could be
-@%:@ computed
-ac_fn_c_compute_int ()
-{
-  as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
-  if test "$cross_compiling" = yes; then
-    # Depending upon the size, compute the lo and hi bounds.
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-$4
-int
-main ()
-{
-static int test_array @<:@1 - 2 * !(($2) >= 0)@:>@;
-test_array @<:@0@:>@ = 0
-
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_lo=0 ac_mid=0
-  while :; do
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-$4
-int
-main ()
-{
-static int test_array @<:@1 - 2 * !(($2) <= $ac_mid)@:>@;
-test_array @<:@0@:>@ = 0
-
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_hi=$ac_mid; break
-else
-  as_fn_arith $ac_mid + 1 && ac_lo=$as_val
-                       if test $ac_lo -le $ac_mid; then
-                         ac_lo= ac_hi=
-                         break
-                       fi
-                       as_fn_arith 2 '*' $ac_mid + 1 && ac_mid=$as_val
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  done
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-$4
-int
-main ()
-{
-static int test_array @<:@1 - 2 * !(($2) < 0)@:>@;
-test_array @<:@0@:>@ = 0
-
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_hi=-1 ac_mid=-1
-  while :; do
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-$4
-int
-main ()
-{
-static int test_array @<:@1 - 2 * !(($2) >= $ac_mid)@:>@;
-test_array @<:@0@:>@ = 0
-
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_lo=$ac_mid; break
-else
-  as_fn_arith '(' $ac_mid ')' - 1 && ac_hi=$as_val
-                       if test $ac_mid -le $ac_hi; then
-                         ac_lo= ac_hi=
-                         break
-                       fi
-                       as_fn_arith 2 '*' $ac_mid && ac_mid=$as_val
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  done
-else
-  ac_lo= ac_hi=
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-# Binary search between lo and hi bounds.
-while test "x$ac_lo" != "x$ac_hi"; do
-  as_fn_arith '(' $ac_hi - $ac_lo ')' / 2 + $ac_lo && ac_mid=$as_val
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-$4
-int
-main ()
-{
-static int test_array @<:@1 - 2 * !(($2) <= $ac_mid)@:>@;
-test_array @<:@0@:>@ = 0
-
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_hi=$ac_mid
-else
-  as_fn_arith '(' $ac_mid ')' + 1 && ac_lo=$as_val
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-done
-case $ac_lo in @%:@((
-?*) eval "$3=\$ac_lo"; ac_retval=0 ;;
-'') ac_retval=1 ;;
-esac
-  else
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-$4
-static long int longval () { return $2; }
-static unsigned long int ulongval () { return $2; }
-@%:@include <stdio.h>
-@%:@include <stdlib.h>
-int
-main ()
-{
-
-  FILE *f = fopen ("conftest.val", "w");
-  if (! f)
-    return 1;
-  if (($2) < 0)
-    {
-      long int i = longval ();
-      if (i != ($2))
-       return 1;
-      fprintf (f, "%ld", i);
-    }
-  else
-    {
-      unsigned long int i = ulongval ();
-      if (i != ($2))
-       return 1;
-      fprintf (f, "%lu", i);
-    }
-  /* Do not output a trailing newline, as this causes \r\n confusion
-     on some platforms.  */
-  return ferror (f) || fclose (f) != 0;
-
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-  echo >>conftest.val; read $3 <conftest.val; ac_retval=0
-else
-  ac_retval=1
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-rm -f conftest.val
-
-  fi
-  eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
-  as_fn_set_status $ac_retval
-
-} @%:@ ac_fn_c_compute_int
-
-@%:@ ac_fn_c_check_member LINENO AGGR MEMBER VAR INCLUDES
-@%:@ ----------------------------------------------------
-@%:@ Tries to find if the field MEMBER exists in type AGGR, after including
-@%:@ INCLUDES, setting cache variable VAR accordingly.
-ac_fn_c_check_member ()
-{
-  as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2.$3" >&5
-$as_echo_n "checking for $2.$3... " >&6; }
-if eval \${$4+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-$5
-int
-main ()
-{
-static $2 ac_aggr;
-if (ac_aggr.$3)
-return 0;
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  eval "$4=yes"
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-$5
-int
-main ()
-{
-static $2 ac_aggr;
-if (sizeof ac_aggr.$3)
-return 0;
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  eval "$4=yes"
-else
-  eval "$4=no"
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-eval ac_res=\$$4
-              { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
-  eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
-
-} @%:@ ac_fn_c_check_member
-cat >config.log <<_ACEOF
-This file contains any messages produced by compilers while
-running configure, to aid debugging if configure makes a mistake.
-
-It was created by bash $as_me 4.2-maint, which was
-generated by GNU Autoconf 2.68.  Invocation command line was
-
-  $ $0 $@
-
-_ACEOF
-exec 5>>config.log
-{
-cat <<_ASUNAME
-## --------- ##
-## Platform. ##
-## --------- ##
-
-hostname = `(hostname || uname -n) 2>/dev/null | sed 1q`
-uname -m = `(uname -m) 2>/dev/null || echo unknown`
-uname -r = `(uname -r) 2>/dev/null || echo unknown`
-uname -s = `(uname -s) 2>/dev/null || echo unknown`
-uname -v = `(uname -v) 2>/dev/null || echo unknown`
-
-/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null || echo unknown`
-/bin/uname -X     = `(/bin/uname -X) 2>/dev/null     || echo unknown`
-
-/bin/arch              = `(/bin/arch) 2>/dev/null              || echo unknown`
-/usr/bin/arch -k       = `(/usr/bin/arch -k) 2>/dev/null       || echo unknown`
-/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null || echo unknown`
-/usr/bin/hostinfo      = `(/usr/bin/hostinfo) 2>/dev/null      || echo unknown`
-/bin/machine           = `(/bin/machine) 2>/dev/null           || echo unknown`
-/usr/bin/oslevel       = `(/usr/bin/oslevel) 2>/dev/null       || echo unknown`
-/bin/universe          = `(/bin/universe) 2>/dev/null          || echo unknown`
-
-_ASUNAME
-
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    $as_echo "PATH: $as_dir"
-  done
-IFS=$as_save_IFS
-
-} >&5
-
-cat >&5 <<_ACEOF
-
-
-## ----------- ##
-## Core tests. ##
-## ----------- ##
-
-_ACEOF
-
-
-# Keep a trace of the command line.
-# Strip out --no-create and --no-recursion so they do not pile up.
-# Strip out --silent because we don't want to record it for future runs.
-# Also quote any args containing shell meta-characters.
-# Make two passes to allow for proper duplicate-argument suppression.
-ac_configure_args=
-ac_configure_args0=
-ac_configure_args1=
-ac_must_keep_next=false
-for ac_pass in 1 2
-do
-  for ac_arg
-  do
-    case $ac_arg in
-    -no-create | --no-c* | -n | -no-recursion | --no-r*) continue ;;
-    -q | -quiet | --quiet | --quie | --qui | --qu | --q \
-    | -silent | --silent | --silen | --sile | --sil)
-      continue ;;
-    *\'*)
-      ac_arg=`$as_echo "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;;
-    esac
-    case $ac_pass in
-    1) as_fn_append ac_configure_args0 " '$ac_arg'" ;;
-    2)
-      as_fn_append ac_configure_args1 " '$ac_arg'"
-      if test $ac_must_keep_next = true; then
-       ac_must_keep_next=false # Got value, back to normal.
-      else
-       case $ac_arg in
-         *=* | --config-cache | -C | -disable-* | --disable-* \
-         | -enable-* | --enable-* | -gas | --g* | -nfp | --nf* \
-         | -q | -quiet | --q* | -silent | --sil* | -v | -verb* \
-         | -with-* | --with-* | -without-* | --without-* | --x)
-           case "$ac_configure_args0 " in
-             "$ac_configure_args1"*" '$ac_arg' "* ) continue ;;
-           esac
-           ;;
-         -* ) ac_must_keep_next=true ;;
-       esac
-      fi
-      as_fn_append ac_configure_args " '$ac_arg'"
-      ;;
-    esac
-  done
-done
-{ ac_configure_args0=; unset ac_configure_args0;}
-{ ac_configure_args1=; unset ac_configure_args1;}
-
-# When interrupted or exit'd, cleanup temporary files, and complete
-# config.log.  We remove comments because anyway the quotes in there
-# would cause problems or look ugly.
-# WARNING: Use '\'' to represent an apostrophe within the trap.
-# WARNING: Do not start the trap code with a newline, due to a FreeBSD 4.0 bug.
-trap 'exit_status=$?
-  # Save into config.log some information that might help in debugging.
-  {
-    echo
-
-    $as_echo "## ---------------- ##
-## Cache variables. ##
-## ---------------- ##"
-    echo
-    # The following way of writing the cache mishandles newlines in values,
-(
-  for ac_var in `(set) 2>&1 | sed -n '\''s/^\([a-zA-Z_][a-zA-Z0-9_]*\)=.*/\1/p'\''`; do
-    eval ac_val=\$$ac_var
-    case $ac_val in #(
-    *${as_nl}*)
-      case $ac_var in #(
-      *_cv_*) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cache variable $ac_var contains a newline" >&5
-$as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;;
-      esac
-      case $ac_var in #(
-      _ | IFS | as_nl) ;; #(
-      BASH_ARGV | BASH_SOURCE) eval $ac_var= ;; #(
-      *) { eval $ac_var=; unset $ac_var;} ;;
-      esac ;;
-    esac
-  done
-  (set) 2>&1 |
-    case $as_nl`(ac_space='\'' '\''; set) 2>&1` in #(
-    *${as_nl}ac_space=\ *)
-      sed -n \
-       "s/'\''/'\''\\\\'\'''\''/g;
-         s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\''\\2'\''/p"
-      ;; #(
-    *)
-      sed -n "/^[_$as_cr_alnum]*_cv_[_$as_cr_alnum]*=/p"
-      ;;
-    esac |
-    sort
-)
-    echo
-
-    $as_echo "## ----------------- ##
-## Output variables. ##
-## ----------------- ##"
-    echo
-    for ac_var in $ac_subst_vars
-    do
-      eval ac_val=\$$ac_var
-      case $ac_val in
-      *\'\''*) ac_val=`$as_echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;;
-      esac
-      $as_echo "$ac_var='\''$ac_val'\''"
-    done | sort
-    echo
-
-    if test -n "$ac_subst_files"; then
-      $as_echo "## ------------------- ##
-## File substitutions. ##
-## ------------------- ##"
-      echo
-      for ac_var in $ac_subst_files
-      do
-       eval ac_val=\$$ac_var
-       case $ac_val in
-       *\'\''*) ac_val=`$as_echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;;
-       esac
-       $as_echo "$ac_var='\''$ac_val'\''"
-      done | sort
-      echo
-    fi
-
-    if test -s confdefs.h; then
-      $as_echo "## ----------- ##
-## confdefs.h. ##
-## ----------- ##"
-      echo
-      cat confdefs.h
-      echo
-    fi
-    test "$ac_signal" != 0 &&
-      $as_echo "$as_me: caught signal $ac_signal"
-    $as_echo "$as_me: exit $exit_status"
-  } >&5
-  rm -f core *.core core.conftest.* &&
-    rm -f -r conftest* confdefs* conf$$* $ac_clean_files &&
-    exit $exit_status
-' 0
-for ac_signal in 1 2 13 15; do
-  trap 'ac_signal='$ac_signal'; as_fn_exit 1' $ac_signal
-done
-ac_signal=0
-
-# confdefs.h avoids OS command line length limits that DEFS can exceed.
-rm -f -r conftest* confdefs.h
-
-$as_echo "/* confdefs.h */" > confdefs.h
-
-# Predefined preprocessor variables.
-
-cat >>confdefs.h <<_ACEOF
-@%:@define PACKAGE_NAME "$PACKAGE_NAME"
-_ACEOF
-
-cat >>confdefs.h <<_ACEOF
-@%:@define PACKAGE_TARNAME "$PACKAGE_TARNAME"
-_ACEOF
-
-cat >>confdefs.h <<_ACEOF
-@%:@define PACKAGE_VERSION "$PACKAGE_VERSION"
-_ACEOF
-
-cat >>confdefs.h <<_ACEOF
-@%:@define PACKAGE_STRING "$PACKAGE_STRING"
-_ACEOF
-
-cat >>confdefs.h <<_ACEOF
-@%:@define PACKAGE_BUGREPORT "$PACKAGE_BUGREPORT"
-_ACEOF
-
-cat >>confdefs.h <<_ACEOF
-@%:@define PACKAGE_URL "$PACKAGE_URL"
-_ACEOF
-
-
-# Let the site file select an alternate cache file if it wants to.
-# Prefer an explicitly selected file to automatically selected ones.
-ac_site_file1=NONE
-ac_site_file2=NONE
-if test -n "$CONFIG_SITE"; then
-  # We do not want a PATH search for config.site.
-  case $CONFIG_SITE in @%:@((
-    -*)  ac_site_file1=./$CONFIG_SITE;;
-    */*) ac_site_file1=$CONFIG_SITE;;
-    *)   ac_site_file1=./$CONFIG_SITE;;
-  esac
-elif test "x$prefix" != xNONE; then
-  ac_site_file1=$prefix/share/config.site
-  ac_site_file2=$prefix/etc/config.site
-else
-  ac_site_file1=$ac_default_prefix/share/config.site
-  ac_site_file2=$ac_default_prefix/etc/config.site
-fi
-for ac_site_file in "$ac_site_file1" "$ac_site_file2"
-do
-  test "x$ac_site_file" = xNONE && continue
-  if test /dev/null != "$ac_site_file" && test -r "$ac_site_file"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: loading site script $ac_site_file" >&5
-$as_echo "$as_me: loading site script $ac_site_file" >&6;}
-    sed 's/^/| /' "$ac_site_file" >&5
-    . "$ac_site_file" \
-      || { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error $? "failed to load site script $ac_site_file
-See \`config.log' for more details" "$LINENO" 5; }
-  fi
-done
-
-if test -r "$cache_file"; then
-  # Some versions of bash will fail to source /dev/null (special files
-  # actually), so we avoid doing that.  DJGPP emulates it as a regular file.
-  if test /dev/null != "$cache_file" && test -f "$cache_file"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: loading cache $cache_file" >&5
-$as_echo "$as_me: loading cache $cache_file" >&6;}
-    case $cache_file in
-      [\\/]* | ?:[\\/]* ) . "$cache_file";;
-      *)                      . "./$cache_file";;
-    esac
-  fi
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: creating cache $cache_file" >&5
-$as_echo "$as_me: creating cache $cache_file" >&6;}
-  >$cache_file
-fi
-
-as_fn_append ac_header_list " stdlib.h"
-as_fn_append ac_header_list " unistd.h"
-as_fn_append ac_header_list " sys/param.h"
-as_fn_append ac_header_list " sys/time.h"
-as_fn_append ac_func_list " alarm"
-as_fn_append ac_func_list " fpurge"
-as_fn_append ac_func_list " __fpurge"
-as_fn_append ac_func_list " snprintf"
-as_fn_append ac_func_list " vsnprintf"
-# Check that the precious variables saved in the cache have kept the same
-# value.
-ac_cache_corrupted=false
-for ac_var in $ac_precious_vars; do
-  eval ac_old_set=\$ac_cv_env_${ac_var}_set
-  eval ac_new_set=\$ac_env_${ac_var}_set
-  eval ac_old_val=\$ac_cv_env_${ac_var}_value
-  eval ac_new_val=\$ac_env_${ac_var}_value
-  case $ac_old_set,$ac_new_set in
-    set,)
-      { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5
-$as_echo "$as_me: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&2;}
-      ac_cache_corrupted=: ;;
-    ,set)
-      { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' was not set in the previous run" >&5
-$as_echo "$as_me: error: \`$ac_var' was not set in the previous run" >&2;}
-      ac_cache_corrupted=: ;;
-    ,);;
-    *)
-      if test "x$ac_old_val" != "x$ac_new_val"; then
-       # differences in whitespace do not lead to failure.
-       ac_old_val_w=`echo x $ac_old_val`
-       ac_new_val_w=`echo x $ac_new_val`
-       if test "$ac_old_val_w" != "$ac_new_val_w"; then
-         { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' has changed since the previous run:" >&5
-$as_echo "$as_me: error: \`$ac_var' has changed since the previous run:" >&2;}
-         ac_cache_corrupted=:
-       else
-         { $as_echo "$as_me:${as_lineno-$LINENO}: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&5
-$as_echo "$as_me: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&2;}
-         eval $ac_var=\$ac_old_val
-       fi
-       { $as_echo "$as_me:${as_lineno-$LINENO}:   former value:  \`$ac_old_val'" >&5
-$as_echo "$as_me:   former value:  \`$ac_old_val'" >&2;}
-       { $as_echo "$as_me:${as_lineno-$LINENO}:   current value: \`$ac_new_val'" >&5
-$as_echo "$as_me:   current value: \`$ac_new_val'" >&2;}
-      fi;;
-  esac
-  # Pass precious variables to config.status.
-  if test "$ac_new_set" = set; then
-    case $ac_new_val in
-    *\'*) ac_arg=$ac_var=`$as_echo "$ac_new_val" | sed "s/'/'\\\\\\\\''/g"` ;;
-    *) ac_arg=$ac_var=$ac_new_val ;;
-    esac
-    case " $ac_configure_args " in
-      *" '$ac_arg' "*) ;; # Avoid dups.  Use of quotes ensures accuracy.
-      *) as_fn_append ac_configure_args " '$ac_arg'" ;;
-    esac
-  fi
-done
-if $ac_cache_corrupted; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-  { $as_echo "$as_me:${as_lineno-$LINENO}: error: changes in the environment can compromise the build" >&5
-$as_echo "$as_me: error: changes in the environment can compromise the build" >&2;}
-  as_fn_error $? "run \`make distclean' and/or \`rm $cache_file' and start over" "$LINENO" 5
-fi
-## -------------------- ##
-## Main body of script. ##
-## -------------------- ##
-
-ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-
-
-
-
-
-
-ac_aux_dir=
-for ac_dir in ./support "$srcdir"/./support; do
-  if test -f "$ac_dir/install-sh"; then
-    ac_aux_dir=$ac_dir
-    ac_install_sh="$ac_aux_dir/install-sh -c"
-    break
-  elif test -f "$ac_dir/install.sh"; then
-    ac_aux_dir=$ac_dir
-    ac_install_sh="$ac_aux_dir/install.sh -c"
-    break
-  elif test -f "$ac_dir/shtool"; then
-    ac_aux_dir=$ac_dir
-    ac_install_sh="$ac_aux_dir/shtool install -c"
-    break
-  fi
-done
-if test -z "$ac_aux_dir"; then
-  as_fn_error $? "cannot find install-sh, install.sh, or shtool in ./support \"$srcdir\"/./support" "$LINENO" 5
-fi
-
-# These three variables are undocumented and unsupported,
-# and are intended to be withdrawn in a future Autoconf release.
-# They can cause serious problems if a builder's source tree is in a directory
-# whose full name contains unusual characters.
-ac_config_guess="$SHELL $ac_aux_dir/config.guess"  # Please don't use this var.
-ac_config_sub="$SHELL $ac_aux_dir/config.sub"  # Please don't use this var.
-ac_configure="$SHELL $ac_aux_dir/configure"  # Please don't use this var.
-
-
-ac_config_headers="$ac_config_headers config.h"
-
-
-BASHVERS=4.2
-RELSTATUS=maint
-
-case "$RELSTATUS" in
-alp*|bet*|dev*|rc*|maint*)     DEBUG='-DDEBUG' MALLOC_DEBUG='-DMALLOC_DEBUG' ;;
-*)     DEBUG= MALLOC_DEBUG= ;;
-esac
-
-# Make sure we can run config.sub.
-$SHELL "$ac_aux_dir/config.sub" sun4 >/dev/null 2>&1 ||
-  as_fn_error $? "cannot run $SHELL $ac_aux_dir/config.sub" "$LINENO" 5
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking build system type" >&5
-$as_echo_n "checking build system type... " >&6; }
-if ${ac_cv_build+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_build_alias=$build_alias
-test "x$ac_build_alias" = x &&
-  ac_build_alias=`$SHELL "$ac_aux_dir/config.guess"`
-test "x$ac_build_alias" = x &&
-  as_fn_error $? "cannot guess build type; you must specify one" "$LINENO" 5
-ac_cv_build=`$SHELL "$ac_aux_dir/config.sub" $ac_build_alias` ||
-  as_fn_error $? "$SHELL $ac_aux_dir/config.sub $ac_build_alias failed" "$LINENO" 5
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_build" >&5
-$as_echo "$ac_cv_build" >&6; }
-case $ac_cv_build in
-*-*-*) ;;
-*) as_fn_error $? "invalid value of canonical build" "$LINENO" 5;;
-esac
-build=$ac_cv_build
-ac_save_IFS=$IFS; IFS='-'
-set x $ac_cv_build
-shift
-build_cpu=$1
-build_vendor=$2
-shift; shift
-# Remember, the first character of IFS is used to create $*,
-# except with old shells:
-build_os=$*
-IFS=$ac_save_IFS
-case $build_os in *\ *) build_os=`echo "$build_os" | sed 's/ /-/g'`;; esac
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking host system type" >&5
-$as_echo_n "checking host system type... " >&6; }
-if ${ac_cv_host+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test "x$host_alias" = x; then
-  ac_cv_host=$ac_cv_build
-else
-  ac_cv_host=`$SHELL "$ac_aux_dir/config.sub" $host_alias` ||
-    as_fn_error $? "$SHELL $ac_aux_dir/config.sub $host_alias failed" "$LINENO" 5
-fi
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_host" >&5
-$as_echo "$ac_cv_host" >&6; }
-case $ac_cv_host in
-*-*-*) ;;
-*) as_fn_error $? "invalid value of canonical host" "$LINENO" 5;;
-esac
-host=$ac_cv_host
-ac_save_IFS=$IFS; IFS='-'
-set x $ac_cv_host
-shift
-host_cpu=$1
-host_vendor=$2
-shift; shift
-# Remember, the first character of IFS is used to create $*,
-# except with old shells:
-host_os=$*
-IFS=$ac_save_IFS
-case $host_os in *\ *) host_os=`echo "$host_os" | sed 's/ /-/g'`;; esac
-
-
-
-opt_bash_malloc=yes
-opt_purify=no
-opt_purecov=no
-opt_afs=no
-opt_curses=no
-opt_with_installed_readline=no
-
-#htmldir=
-
-case "${host_cpu}-${host_os}" in
-alpha*-*)      opt_bash_malloc=no ;;   # alpha running osf/1 or linux
-*[Cc]ray*-*)   opt_bash_malloc=no ;;   # Crays
-*-osf1*)       opt_bash_malloc=no ;;   # other osf/1 machines
-sparc-svr4*)   opt_bash_malloc=no ;;   # sparc SVR4, SVR4.2
-sparc-netbsd*) opt_bash_malloc=no ;;   # needs 8-byte alignment
-mips-irix6*)   opt_bash_malloc=no ;;   # needs 8-byte alignment
-m68k-sysv)     opt_bash_malloc=no ;;   # fixes file descriptor leak in closedir
-sparc-linux*)  opt_bash_malloc=no ;;   # sparc running linux; requires ELF
-#*-freebsd*-gnu)       opt_bash_malloc=no ;;   # there's some undetermined problem here
-#*-freebsd*)   opt_bash_malloc=no ;;   # they claim it's better; I disagree
-*-openbsd*)    opt_bash_malloc=no ;;   # they claim it needs eight-bit alignment
-*-aix*)                opt_bash_malloc=no ;;   # AIX machines
-*-nextstep*)   opt_bash_malloc=no ;;   # NeXT machines running NeXTstep
-*-macos*)      opt_bash_malloc=no ;;   # Apple MacOS X
-*-rhapsody*)   opt_bash_malloc=no ;;   # Apple Rhapsody (MacOS X)
-*-darwin*)     opt_bash_malloc=no ;;   # Apple Darwin (MacOS X)
-*-dgux*)       opt_bash_malloc=no ;;   # DG/UX machines
-*-qnx*)                opt_bash_malloc=no ;;   # QNX 4.2, QNX 6.x
-*-machten4)    opt_bash_malloc=no ;;   # MachTen 4.x
-*-bsdi2.1|*-bsdi3.?)   opt_bash_malloc=no ; : ${CC:=shlicc2} ;; # for loadable builtins
-*-beos*)       opt_bash_malloc=no ;;   # they say it's suitable
-*-cygwin*)     opt_bash_malloc=no ;;   # Cygnus's CYGWIN environment
-*-opennt*|*-interix*)  opt_bash_malloc=no ;;   # Interix, now owned by Microsoft
-esac
-
-# memory scrambling on free()
-case "${host_os}" in
-sco3.2v5*|sco3.2v4*)   opt_memscramble=no ;;
-*)                     opt_memscramble=yes ;;
-esac
-
-
-
-
-@%:@ Check whether --with-afs was given.
-if test "${with_afs+set}" = set; then :
-  withval=$with_afs; opt_afs=$withval
-fi
-
-
-@%:@ Check whether --with-bash-malloc was given.
-if test "${with_bash_malloc+set}" = set; then :
-  withval=$with_bash_malloc; opt_bash_malloc=$withval
-fi
-
-
-@%:@ Check whether --with-curses was given.
-if test "${with_curses+set}" = set; then :
-  withval=$with_curses; opt_curses=$withval
-fi
-
-
-@%:@ Check whether --with-gnu-malloc was given.
-if test "${with_gnu_malloc+set}" = set; then :
-  withval=$with_gnu_malloc; opt_bash_malloc=$withval
-fi
-
-
-@%:@ Check whether --with-installed-readline was given.
-if test "${with_installed_readline+set}" = set; then :
-  withval=$with_installed_readline; opt_with_installed_readline=$withval
-fi
-
-
-@%:@ Check whether --with-purecov was given.
-if test "${with_purecov+set}" = set; then :
-  withval=$with_purecov; opt_purecov=$withval
-fi
-
-
-@%:@ Check whether --with-purify was given.
-if test "${with_purify+set}" = set; then :
-  withval=$with_purify; opt_purify=$withval
-fi
-
-
-if test "$opt_bash_malloc" = yes; then
-       MALLOC_TARGET=malloc
-       MALLOC_SRC=malloc.c
-
-       MALLOC_LIB='-lmalloc'
-       MALLOC_LIBRARY='$(ALLOC_LIBDIR)/libmalloc.a'
-       MALLOC_LDFLAGS='-L$(ALLOC_LIBDIR)'
-       MALLOC_DEP='$(MALLOC_LIBRARY)'
-
-       $as_echo "@%:@define USING_BASH_MALLOC 1" >>confdefs.h
-
-else
-       MALLOC_LIB=
-       MALLOC_LIBRARY=
-       MALLOC_LDFLAGS=
-       MALLOC_DEP=     
-fi
-
-if test "$opt_purify" = yes; then
-       PURIFY="purify "
-       $as_echo "@%:@define DISABLE_MALLOC_WRAPPERS 1" >>confdefs.h
-
-else
-       PURIFY=
-fi
-
-if test "$opt_purecov" = yes; then
-       PURIFY="${PURIFY}purecov"
-fi
-
-if test "$opt_afs" = yes; then
-       $as_echo "@%:@define AFS 1" >>confdefs.h
-
-fi
-
-if test "$opt_curses" = yes; then
-       prefer_curses=yes
-fi
-
-if test -z "${DEBUGGER_START_FILE}"; then
-       DEBUGGER_START_FILE='${datadir}/bashdb/bashdb-main.inc'
-fi
-
-opt_minimal_config=no
-
-opt_job_control=yes
-opt_alias=yes
-opt_readline=yes
-opt_history=yes
-opt_bang_history=yes
-opt_dirstack=yes
-opt_restricted=yes
-opt_process_subst=yes
-opt_prompt_decoding=yes
-opt_select=yes
-opt_help=yes
-opt_array_variables=yes
-opt_dparen_arith=yes
-opt_extended_glob=yes
-opt_brace_expansion=yes
-opt_disabled_builtins=no
-opt_command_timing=yes
-opt_xpg_echo=no
-opt_strict_posix=no
-opt_cond_command=yes
-opt_cond_regexp=yes
-opt_coproc=yes
-opt_arith_for_command=yes
-opt_net_redirs=yes
-opt_progcomp=yes
-opt_separate_help=no
-opt_multibyte=yes
-opt_debugger=yes
-opt_single_longdoc_strings=yes
-opt_casemod_attrs=yes
-opt_casemod_expansions=yes
-opt_extglob_default=no
-
-opt_static_link=no
-opt_profiling=no
-
-@%:@ Check whether --enable-minimal-config was given.
-if test "${enable_minimal_config+set}" = set; then :
-  enableval=$enable_minimal_config; opt_minimal_config=$enableval
-fi
-
-
-if test $opt_minimal_config = yes; then
-       opt_job_control=no opt_alias=no opt_readline=no
-       opt_history=no opt_bang_history=no opt_dirstack=no
-       opt_restricted=no opt_process_subst=no opt_prompt_decoding=no
-       opt_select=no opt_help=no opt_array_variables=no opt_dparen_arith=no
-       opt_brace_expansion=no opt_disabled_builtins=no opt_command_timing=no
-       opt_extended_glob=no opt_cond_command=no opt_arith_for_command=no
-       opt_net_redirs=no opt_progcomp=no opt_separate_help=no
-       opt_multibyte=yes opt_cond_regexp=no opt_coproc=no
-       opt_casemod_attrs=no opt_casemod_expansions=no opt_extglob_default=no
-fi
-
-@%:@ Check whether --enable-alias was given.
-if test "${enable_alias+set}" = set; then :
-  enableval=$enable_alias; opt_alias=$enableval
-fi
-
-@%:@ Check whether --enable-arith-for-command was given.
-if test "${enable_arith_for_command+set}" = set; then :
-  enableval=$enable_arith_for_command; opt_arith_for_command=$enableval
-fi
-
-@%:@ Check whether --enable-array-variables was given.
-if test "${enable_array_variables+set}" = set; then :
-  enableval=$enable_array_variables; opt_array_variables=$enableval
-fi
-
-@%:@ Check whether --enable-bang-history was given.
-if test "${enable_bang_history+set}" = set; then :
-  enableval=$enable_bang_history; opt_bang_history=$enableval
-fi
-
-@%:@ Check whether --enable-brace-expansion was given.
-if test "${enable_brace_expansion+set}" = set; then :
-  enableval=$enable_brace_expansion; opt_brace_expansion=$enableval
-fi
-
-@%:@ Check whether --enable-casemod-attributes was given.
-if test "${enable_casemod_attributes+set}" = set; then :
-  enableval=$enable_casemod_attributes; opt_casemod_attrs=$enableval
-fi
-
-@%:@ Check whether --enable-casemod-expansions was given.
-if test "${enable_casemod_expansions+set}" = set; then :
-  enableval=$enable_casemod_expansions; opt_casemod_expansions=$enableval
-fi
-
-@%:@ Check whether --enable-command-timing was given.
-if test "${enable_command_timing+set}" = set; then :
-  enableval=$enable_command_timing; opt_command_timing=$enableval
-fi
-
-@%:@ Check whether --enable-cond-command was given.
-if test "${enable_cond_command+set}" = set; then :
-  enableval=$enable_cond_command; opt_cond_command=$enableval
-fi
-
-@%:@ Check whether --enable-cond-regexp was given.
-if test "${enable_cond_regexp+set}" = set; then :
-  enableval=$enable_cond_regexp; opt_cond_regexp=$enableval
-fi
-
-@%:@ Check whether --enable-coprocesses was given.
-if test "${enable_coprocesses+set}" = set; then :
-  enableval=$enable_coprocesses; opt_coproc=$enableval
-fi
-
-@%:@ Check whether --enable-debugger was given.
-if test "${enable_debugger+set}" = set; then :
-  enableval=$enable_debugger; opt_debugger=$enableval
-fi
-
-@%:@ Check whether --enable-directory-stack was given.
-if test "${enable_directory_stack+set}" = set; then :
-  enableval=$enable_directory_stack; opt_dirstack=$enableval
-fi
-
-@%:@ Check whether --enable-disabled-builtins was given.
-if test "${enable_disabled_builtins+set}" = set; then :
-  enableval=$enable_disabled_builtins; opt_disabled_builtins=$enableval
-fi
-
-@%:@ Check whether --enable-dparen-arithmetic was given.
-if test "${enable_dparen_arithmetic+set}" = set; then :
-  enableval=$enable_dparen_arithmetic; opt_dparen_arith=$enableval
-fi
-
-@%:@ Check whether --enable-extended-glob was given.
-if test "${enable_extended_glob+set}" = set; then :
-  enableval=$enable_extended_glob; opt_extended_glob=$enableval
-fi
-
-@%:@ Check whether --enable-extended-glob-default was given.
-if test "${enable_extended_glob_default+set}" = set; then :
-  enableval=$enable_extended_glob_default; opt_extglob_default=$enableval
-fi
-
-@%:@ Check whether --enable-help-builtin was given.
-if test "${enable_help_builtin+set}" = set; then :
-  enableval=$enable_help_builtin; opt_help=$enableval
-fi
-
-@%:@ Check whether --enable-history was given.
-if test "${enable_history+set}" = set; then :
-  enableval=$enable_history; opt_history=$enableval
-fi
-
-@%:@ Check whether --enable-job-control was given.
-if test "${enable_job_control+set}" = set; then :
-  enableval=$enable_job_control; opt_job_control=$enableval
-fi
-
-@%:@ Check whether --enable-multibyte was given.
-if test "${enable_multibyte+set}" = set; then :
-  enableval=$enable_multibyte; opt_multibyte=$enableval
-fi
-
-@%:@ Check whether --enable-net-redirections was given.
-if test "${enable_net_redirections+set}" = set; then :
-  enableval=$enable_net_redirections; opt_net_redirs=$enableval
-fi
-
-@%:@ Check whether --enable-process-substitution was given.
-if test "${enable_process_substitution+set}" = set; then :
-  enableval=$enable_process_substitution; opt_process_subst=$enableval
-fi
-
-@%:@ Check whether --enable-progcomp was given.
-if test "${enable_progcomp+set}" = set; then :
-  enableval=$enable_progcomp; opt_progcomp=$enableval
-fi
-
-@%:@ Check whether --enable-prompt-string-decoding was given.
-if test "${enable_prompt_string_decoding+set}" = set; then :
-  enableval=$enable_prompt_string_decoding; opt_prompt_decoding=$enableval
-fi
-
-@%:@ Check whether --enable-readline was given.
-if test "${enable_readline+set}" = set; then :
-  enableval=$enable_readline; opt_readline=$enableval
-fi
-
-@%:@ Check whether --enable-restricted was given.
-if test "${enable_restricted+set}" = set; then :
-  enableval=$enable_restricted; opt_restricted=$enableval
-fi
-
-@%:@ Check whether --enable-select was given.
-if test "${enable_select+set}" = set; then :
-  enableval=$enable_select; opt_select=$enableval
-fi
-
-@%:@ Check whether --enable-separate-helpfiles was given.
-if test "${enable_separate_helpfiles+set}" = set; then :
-  enableval=$enable_separate_helpfiles; opt_separate_help=$enableval
-fi
-
-@%:@ Check whether --enable-single-help-strings was given.
-if test "${enable_single_help_strings+set}" = set; then :
-  enableval=$enable_single_help_strings; opt_single_longdoc_strings=$enableval
-fi
-
-@%:@ Check whether --enable-strict-posix-default was given.
-if test "${enable_strict_posix_default+set}" = set; then :
-  enableval=$enable_strict_posix_default; opt_strict_posix=$enableval
-fi
-
-@%:@ Check whether --enable-usg-echo-default was given.
-if test "${enable_usg_echo_default+set}" = set; then :
-  enableval=$enable_usg_echo_default; opt_xpg_echo=$enableval
-fi
-
-@%:@ Check whether --enable-xpg-echo-default was given.
-if test "${enable_xpg_echo_default+set}" = set; then :
-  enableval=$enable_xpg_echo_default; opt_xpg_echo=$enableval
-fi
-
-
-@%:@ Check whether --enable-mem-scramble was given.
-if test "${enable_mem_scramble+set}" = set; then :
-  enableval=$enable_mem_scramble; opt_memscramble=$enableval
-fi
-
-@%:@ Check whether --enable-profiling was given.
-if test "${enable_profiling+set}" = set; then :
-  enableval=$enable_profiling; opt_profiling=$enableval
-fi
-
-@%:@ Check whether --enable-static-link was given.
-if test "${enable_static_link+set}" = set; then :
-  enableval=$enable_static_link; opt_static_link=$enableval
-fi
-
-
-
-
-
-
-
-
-
-if test $opt_alias = yes; then
-$as_echo "@%:@define ALIAS 1" >>confdefs.h
-
-fi
-if test $opt_dirstack = yes; then
-$as_echo "@%:@define PUSHD_AND_POPD 1" >>confdefs.h
-
-fi
-if test $opt_restricted = yes; then
-$as_echo "@%:@define RESTRICTED_SHELL 1" >>confdefs.h
-
-fi
-if test $opt_process_subst = yes; then
-$as_echo "@%:@define PROCESS_SUBSTITUTION 1" >>confdefs.h
-
-fi
-if test $opt_prompt_decoding = yes; then
-$as_echo "@%:@define PROMPT_STRING_DECODE 1" >>confdefs.h
-
-fi
-if test $opt_select = yes; then
-$as_echo "@%:@define SELECT_COMMAND 1" >>confdefs.h
-
-fi
-if test $opt_help = yes; then
-$as_echo "@%:@define HELP_BUILTIN 1" >>confdefs.h
-
-fi
-if test $opt_array_variables = yes; then
-$as_echo "@%:@define ARRAY_VARS 1" >>confdefs.h
-
-fi
-if test $opt_dparen_arith = yes; then
-$as_echo "@%:@define DPAREN_ARITHMETIC 1" >>confdefs.h
-
-fi
-if test $opt_brace_expansion = yes; then
-$as_echo "@%:@define BRACE_EXPANSION 1" >>confdefs.h
-
-fi
-if test $opt_disabled_builtins = yes; then
-$as_echo "@%:@define DISABLED_BUILTINS 1" >>confdefs.h
-
-fi
-if test $opt_command_timing = yes; then
-$as_echo "@%:@define COMMAND_TIMING 1" >>confdefs.h
-
-fi
-if test $opt_xpg_echo = yes ; then
-$as_echo "@%:@define DEFAULT_ECHO_TO_XPG 1" >>confdefs.h
-
-fi
-if test $opt_strict_posix = yes; then
-$as_echo "@%:@define STRICT_POSIX 1" >>confdefs.h
-
-fi
-if test $opt_extended_glob = yes ; then
-$as_echo "@%:@define EXTENDED_GLOB 1" >>confdefs.h
-
-fi
-if test $opt_extglob_default = yes; then
-$as_echo "@%:@define EXTGLOB_DEFAULT 1" >>confdefs.h
-
-else
-$as_echo "@%:@define EXTGLOB_DEFAULT 0" >>confdefs.h
-
-fi
-if test $opt_cond_command = yes ; then
-$as_echo "@%:@define COND_COMMAND 1" >>confdefs.h
-
-fi
-if test $opt_cond_regexp = yes ; then
-$as_echo "@%:@define COND_REGEXP 1" >>confdefs.h
-
-fi
-if test $opt_coproc = yes; then
-$as_echo "@%:@define COPROCESS_SUPPORT 1" >>confdefs.h
-
-fi
-if test $opt_arith_for_command = yes; then
-$as_echo "@%:@define ARITH_FOR_COMMAND 1" >>confdefs.h
-
-fi
-if test $opt_net_redirs = yes; then
-$as_echo "@%:@define NETWORK_REDIRECTIONS 1" >>confdefs.h
-
-fi
-if test $opt_progcomp = yes; then
-$as_echo "@%:@define PROGRAMMABLE_COMPLETION 1" >>confdefs.h
-
-fi
-if test $opt_multibyte = no; then
-$as_echo "@%:@define NO_MULTIBYTE_SUPPORT 1" >>confdefs.h
-
-fi
-if test $opt_debugger = yes; then
-$as_echo "@%:@define DEBUGGER 1" >>confdefs.h
-
-fi
-if test $opt_casemod_attrs = yes; then
-$as_echo "@%:@define CASEMOD_ATTRS 1" >>confdefs.h
-
-fi
-if test $opt_casemod_expansions = yes; then
-$as_echo "@%:@define CASEMOD_EXPANSIONS 1" >>confdefs.h
-
-fi
-
-if test $opt_memscramble = yes; then
-$as_echo "@%:@define MEMSCRAMBLE 1" >>confdefs.h
-
-fi
-
-if test "$opt_minimal_config" = yes; then
-       TESTSCRIPT=run-minimal
-else
-       TESTSCRIPT=run-all
-fi
-
-HELPDIR= HELPDIRDEFINE= HELPINSTALL= HELPFILES_TARGET=
-if test "$opt_separate_help" != no; then
-       if test "$opt_separate_help" = "yes" ; then
-               HELPDIR='${datadir}/bash'
-       else
-               HELPDIR=$opt_separate_help
-       fi
-       HELPDIRDEFINE='-H ${HELPDIR}'
-       HELPINSTALL='install-help'
-       HELPFILES_TARGET='helpdoc'
-fi
-HELPSTRINGS=
-if test "$opt_single_longdoc_strings" != "yes"; then
-       HELPSTRINGS='-S'
-fi
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-echo ""
-echo "Beginning configuration for bash-$BASHVERS-$RELSTATUS for ${host_cpu}-${host_vendor}-${host_os}"
-echo ""
-
-ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-if test -n "$ac_tool_prefix"; then
-  # Extract the first word of "${ac_tool_prefix}gcc", so it can be a program name with args.
-set dummy ${ac_tool_prefix}gcc; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_CC+:} false; then :
-  $as_echo_n "(cached) " >&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 { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_prog_CC="${ac_tool_prefix}gcc"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-fi
-fi
-CC=$ac_cv_prog_CC
-if test -n "$CC"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
-$as_echo "$CC" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-fi
-if test -z "$ac_cv_prog_CC"; then
-  ac_ct_CC=$CC
-  # Extract the first word of "gcc", so it can be a program name with args.
-set dummy gcc; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_CC+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test -n "$ac_ct_CC"; then
-  ac_cv_prog_ac_ct_CC="$ac_ct_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 { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_prog_ac_ct_CC="gcc"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-fi
-fi
-ac_ct_CC=$ac_cv_prog_ac_ct_CC
-if test -n "$ac_ct_CC"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5
-$as_echo "$ac_ct_CC" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-  if test "x$ac_ct_CC" = x; then
-    CC=""
-  else
-    case $cross_compiling:$ac_tool_warned in
-yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
-ac_tool_warned=yes ;;
-esac
-    CC=$ac_ct_CC
-  fi
-else
-  CC="$ac_cv_prog_CC"
-fi
-
-if test -z "$CC"; then
-          if test -n "$ac_tool_prefix"; then
-    # Extract the first word of "${ac_tool_prefix}cc", so it can be a program name with args.
-set dummy ${ac_tool_prefix}cc; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_CC+:} false; then :
-  $as_echo_n "(cached) " >&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 { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_prog_CC="${ac_tool_prefix}cc"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-fi
-fi
-CC=$ac_cv_prog_CC
-if test -n "$CC"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
-$as_echo "$CC" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-  fi
-fi
-if test -z "$CC"; then
-  # Extract the first word of "cc", so it can be a program name with args.
-set dummy cc; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_CC+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test -n "$CC"; then
-  ac_cv_prog_CC="$CC" # Let the user override the test.
-else
-  ac_prog_rejected=no
-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 { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    if test "$as_dir/$ac_word$ac_exec_ext" = "/usr/ucb/cc"; then
-       ac_prog_rejected=yes
-       continue
-     fi
-    ac_cv_prog_CC="cc"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-if test $ac_prog_rejected = yes; then
-  # We found a bogon in the path, so make sure we never use it.
-  set dummy $ac_cv_prog_CC
-  shift
-  if test $@%:@ != 0; then
-    # We chose a different compiler from the bogus one.
-    # However, it has the same basename, so the bogon will be chosen
-    # first if we set CC to just the basename; use the full file name.
-    shift
-    ac_cv_prog_CC="$as_dir/$ac_word${1+' '}$@"
-  fi
-fi
-fi
-fi
-CC=$ac_cv_prog_CC
-if test -n "$CC"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
-$as_echo "$CC" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-fi
-if test -z "$CC"; then
-  if test -n "$ac_tool_prefix"; then
-  for ac_prog in cl.exe
-  do
-    # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.
-set dummy $ac_tool_prefix$ac_prog; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_CC+:} false; then :
-  $as_echo_n "(cached) " >&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 { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_prog_CC="$ac_tool_prefix$ac_prog"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-fi
-fi
-CC=$ac_cv_prog_CC
-if test -n "$CC"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
-$as_echo "$CC" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-    test -n "$CC" && break
-  done
-fi
-if test -z "$CC"; then
-  ac_ct_CC=$CC
-  for ac_prog in cl.exe
-do
-  # Extract the first word of "$ac_prog", so it can be a program name with args.
-set dummy $ac_prog; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_CC+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test -n "$ac_ct_CC"; then
-  ac_cv_prog_ac_ct_CC="$ac_ct_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 { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_prog_ac_ct_CC="$ac_prog"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-fi
-fi
-ac_ct_CC=$ac_cv_prog_ac_ct_CC
-if test -n "$ac_ct_CC"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5
-$as_echo "$ac_ct_CC" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-  test -n "$ac_ct_CC" && break
-done
-
-  if test "x$ac_ct_CC" = x; then
-    CC=""
-  else
-    case $cross_compiling:$ac_tool_warned in
-yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
-ac_tool_warned=yes ;;
-esac
-    CC=$ac_ct_CC
-  fi
-fi
-
-fi
-
-
-test -z "$CC" && { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error $? "no acceptable C compiler found in \$PATH
-See \`config.log' for more details" "$LINENO" 5; }
-
-# Provide some information about the compiler.
-$as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler version" >&5
-set X $ac_compile
-ac_compiler=$2
-for ac_option in --version -v -V -qversion; do
-  { { ac_try="$ac_compiler $ac_option >&5"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
-  (eval "$ac_compiler $ac_option >&5") 2>conftest.err
-  ac_status=$?
-  if test -s conftest.err; then
-    sed '10a\
-... rest of stderr output deleted ...
-         10q' conftest.err >conftest.er1
-    cat conftest.er1 >&5
-  fi
-  rm -f conftest.er1 conftest.err
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-  test $ac_status = 0; }
-done
-
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-int
-main ()
-{
-
-  ;
-  return 0;
-}
-_ACEOF
-ac_clean_files_save=$ac_clean_files
-ac_clean_files="$ac_clean_files a.out a.out.dSYM a.exe b.out"
-# Try to create an executable without -o first, disregard a.out.
-# It will help us diagnose broken compilers, and finding out an intuition
-# of exeext.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the C compiler works" >&5
-$as_echo_n "checking whether the C compiler works... " >&6; }
-ac_link_default=`$as_echo "$ac_link" | sed 's/ -o *conftest[^ ]*//'`
-
-# The possible output files:
-ac_files="a.out conftest.exe conftest a.exe a_out.exe b.out conftest.*"
-
-ac_rmfiles=
-for ac_file in $ac_files
-do
-  case $ac_file in
-    *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj ) ;;
-    * ) ac_rmfiles="$ac_rmfiles $ac_file";;
-  esac
-done
-rm -f $ac_rmfiles
-
-if { { ac_try="$ac_link_default"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
-  (eval "$ac_link_default") 2>&5
-  ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-  test $ac_status = 0; }; then :
-  # Autoconf-2.13 could set the ac_cv_exeext variable to `no'.
-# So ignore a value of `no', otherwise this would lead to `EXEEXT = no'
-# in a Makefile.  We should not override ac_cv_exeext if it was cached,
-# so that the user can short-circuit this test for compilers unknown to
-# Autoconf.
-for ac_file in $ac_files ''
-do
-  test -f "$ac_file" || continue
-  case $ac_file in
-    *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj )
-       ;;
-    [ab].out )
-       # We found the default executable, but exeext='' is most
-       # certainly right.
-       break;;
-    *.* )
-       if test "${ac_cv_exeext+set}" = set && test "$ac_cv_exeext" != no;
-       then :; else
-          ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'`
-       fi
-       # We set ac_cv_exeext here because the later test for it is not
-       # safe: cross compilers may not add the suffix if given an `-o'
-       # argument, so we may need to know it at that point already.
-       # Even if this section looks crufty: it has the advantage of
-       # actually working.
-       break;;
-    * )
-       break;;
-  esac
-done
-test "$ac_cv_exeext" = no && ac_cv_exeext=
-
-else
-  ac_file=''
-fi
-if test -z "$ac_file"; then :
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-$as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error 77 "C compiler cannot create executables
-See \`config.log' for more details" "$LINENO" 5; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler default output file name" >&5
-$as_echo_n "checking for C compiler default output file name... " >&6; }
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_file" >&5
-$as_echo "$ac_file" >&6; }
-ac_exeext=$ac_cv_exeext
-
-rm -f -r a.out a.out.dSYM a.exe conftest$ac_cv_exeext b.out
-ac_clean_files=$ac_clean_files_save
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for suffix of executables" >&5
-$as_echo_n "checking for suffix of executables... " >&6; }
-if { { ac_try="$ac_link"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
-  (eval "$ac_link") 2>&5
-  ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-  test $ac_status = 0; }; then :
-  # If both `conftest.exe' and `conftest' are `present' (well, observable)
-# catch `conftest.exe'.  For instance with Cygwin, `ls conftest' will
-# work properly (i.e., refer to `conftest.exe'), while it won't with
-# `rm'.
-for ac_file in conftest.exe conftest conftest.*; do
-  test -f "$ac_file" || continue
-  case $ac_file in
-    *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj ) ;;
-    *.* ) ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'`
-         break;;
-    * ) break;;
-  esac
-done
-else
-  { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error $? "cannot compute suffix of executables: cannot compile and link
-See \`config.log' for more details" "$LINENO" 5; }
-fi
-rm -f conftest conftest$ac_cv_exeext
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_exeext" >&5
-$as_echo "$ac_cv_exeext" >&6; }
-
-rm -f conftest.$ac_ext
-EXEEXT=$ac_cv_exeext
-ac_exeext=$EXEEXT
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-@%:@include <stdio.h>
-int
-main ()
-{
-FILE *f = fopen ("conftest.out", "w");
- return ferror (f) || fclose (f) != 0;
-
-  ;
-  return 0;
-}
-_ACEOF
-ac_clean_files="$ac_clean_files conftest.out"
-# Check that the compiler produces executables we can run.  If not, either
-# the compiler is broken, or we cross compile.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are cross compiling" >&5
-$as_echo_n "checking whether we are cross compiling... " >&6; }
-if test "$cross_compiling" != yes; then
-  { { ac_try="$ac_link"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
-  (eval "$ac_link") 2>&5
-  ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-  test $ac_status = 0; }
-  if { ac_try='./conftest$ac_cv_exeext'
-  { { case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
-  (eval "$ac_try") 2>&5
-  ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-  test $ac_status = 0; }; }; then
-    cross_compiling=no
-  else
-    if test "$cross_compiling" = maybe; then
-       cross_compiling=yes
-    else
-       { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error $? "cannot run C compiled programs.
-If you meant to cross compile, use \`--host'.
-See \`config.log' for more details" "$LINENO" 5; }
-    fi
-  fi
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $cross_compiling" >&5
-$as_echo "$cross_compiling" >&6; }
-
-rm -f conftest.$ac_ext conftest$ac_cv_exeext conftest.out
-ac_clean_files=$ac_clean_files_save
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for suffix of object files" >&5
-$as_echo_n "checking for suffix of object files... " >&6; }
-if ${ac_cv_objext+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-int
-main ()
-{
-
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.o conftest.obj
-if { { ac_try="$ac_compile"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
-  (eval "$ac_compile") 2>&5
-  ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-  test $ac_status = 0; }; then :
-  for ac_file in conftest.o conftest.obj conftest.*; do
-  test -f "$ac_file" || continue;
-  case $ac_file in
-    *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM ) ;;
-    *) ac_cv_objext=`expr "$ac_file" : '.*\.\(.*\)'`
-       break;;
-  esac
-done
-else
-  $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error $? "cannot compute suffix of object files: cannot compile
-See \`config.log' for more details" "$LINENO" 5; }
-fi
-rm -f conftest.$ac_cv_objext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_objext" >&5
-$as_echo "$ac_cv_objext" >&6; }
-OBJEXT=$ac_cv_objext
-ac_objext=$OBJEXT
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are using the GNU C compiler" >&5
-$as_echo_n "checking whether we are using the GNU C compiler... " >&6; }
-if ${ac_cv_c_compiler_gnu+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-int
-main ()
-{
-#ifndef __GNUC__
-       choke me
-#endif
-
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_compiler_gnu=yes
-else
-  ac_compiler_gnu=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-ac_cv_c_compiler_gnu=$ac_compiler_gnu
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_compiler_gnu" >&5
-$as_echo "$ac_cv_c_compiler_gnu" >&6; }
-if test $ac_compiler_gnu = yes; then
-  GCC=yes
-else
-  GCC=
-fi
-ac_test_CFLAGS=${CFLAGS+set}
-ac_save_CFLAGS=$CFLAGS
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC accepts -g" >&5
-$as_echo_n "checking whether $CC accepts -g... " >&6; }
-if ${ac_cv_prog_cc_g+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_save_c_werror_flag=$ac_c_werror_flag
-   ac_c_werror_flag=yes
-   ac_cv_prog_cc_g=no
-   CFLAGS="-g"
-   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-int
-main ()
-{
-
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_cv_prog_cc_g=yes
-else
-  CFLAGS=""
-      cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-int
-main ()
-{
-
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  
-else
-  ac_c_werror_flag=$ac_save_c_werror_flag
-        CFLAGS="-g"
-        cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-int
-main ()
-{
-
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_cv_prog_cc_g=yes
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-   ac_c_werror_flag=$ac_save_c_werror_flag
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_g" >&5
-$as_echo "$ac_cv_prog_cc_g" >&6; }
-if test "$ac_test_CFLAGS" = set; then
-  CFLAGS=$ac_save_CFLAGS
-elif test $ac_cv_prog_cc_g = yes; then
-  if test "$GCC" = yes; then
-    CFLAGS="-g -O2"
-  else
-    CFLAGS="-g"
-  fi
-else
-  if test "$GCC" = yes; then
-    CFLAGS="-O2"
-  else
-    CFLAGS=
-  fi
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $CC option to accept ISO C89" >&5
-$as_echo_n "checking for $CC option to accept ISO C89... " >&6; }
-if ${ac_cv_prog_cc_c89+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_cv_prog_cc_c89=no
-ac_save_CC=$CC
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <stdarg.h>
-#include <stdio.h>
-#include <sys/types.h>
-#include <sys/stat.h>
-/* Most of the following tests are stolen from RCS 5.7's src/conf.sh.  */
-struct buf { int x; };
-FILE * (*rcsopen) (struct buf *, struct stat *, int);
-static char *e (p, i)
-     char **p;
-     int i;
-{
-  return p[i];
-}
-static char *f (char * (*g) (char **, int), char **p, ...)
-{
-  char *s;
-  va_list v;
-  va_start (v,p);
-  s = g (p, va_arg (v,int));
-  va_end (v);
-  return s;
-}
-
-/* OSF 4.0 Compaq cc is some sort of almost-ANSI by default.  It has
-   function prototypes and stuff, but not '\xHH' hex character constants.
-   These don't provoke an error unfortunately, instead are silently treated
-   as 'x'.  The following induces an error, until -std is added to get
-   proper ANSI mode.  Curiously '\x00'!='x' always comes out true, for an
-   array size at least.  It's necessary to write '\x00'==0 to get something
-   that's true only with -std.  */
-int osf4_cc_array ['\x00' == 0 ? 1 : -1];
-
-/* IBM C 6 for AIX is almost-ANSI by default, but it replaces macro parameters
-   inside strings and character constants.  */
-#define FOO(x) 'x'
-int xlc6_cc_array[FOO(a) == 'x' ? 1 : -1];
-
-int test (int i, double x);
-struct s1 {int (*f) (int a);};
-struct s2 {int (*f) (double a);};
-int pairnames (int, char **, FILE *(*)(struct buf *, struct stat *, int), int, int);
-int argc;
-char **argv;
-int
-main ()
-{
-return f (e, argv, 0) != argv[0]  ||  f (e, argv, 1) != argv[1];
-  ;
-  return 0;
-}
-_ACEOF
-for ac_arg in '' -qlanglvl=extc89 -qlanglvl=ansi -std \
-       -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__"
-do
-  CC="$ac_save_CC $ac_arg"
-  if ac_fn_c_try_compile "$LINENO"; then :
-  ac_cv_prog_cc_c89=$ac_arg
-fi
-rm -f core conftest.err conftest.$ac_objext
-  test "x$ac_cv_prog_cc_c89" != "xno" && break
-done
-rm -f conftest.$ac_ext
-CC=$ac_save_CC
-
-fi
-# AC_CACHE_VAL
-case "x$ac_cv_prog_cc_c89" in
-  x)
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: none needed" >&5
-$as_echo "none needed" >&6; } ;;
-  xno)
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: unsupported" >&5
-$as_echo "unsupported" >&6; } ;;
-  *)
-    CC="$CC $ac_cv_prog_cc_c89"
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_c89" >&5
-$as_echo "$ac_cv_prog_cc_c89" >&6; } ;;
-esac
-if test "x$ac_cv_prog_cc_c89" != xno; then :
-  
-fi
-
-ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-
-
-
-
-        { $as_echo "$as_me:${as_lineno-$LINENO}: checking for strerror in -lcposix" >&5
-$as_echo_n "checking for strerror in -lcposix... " >&6; }
-if ${ac_cv_lib_cposix_strerror+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_check_lib_save_LIBS=$LIBS
-LIBS="-lcposix  $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-/* Override any GCC internal prototype to avoid an error.
-   Use char because int might match the return type of a GCC
-   builtin and then its argument prototype would still apply.  */
-#ifdef __cplusplus
-extern "C"
-#endif
-char strerror ();
-int
-main ()
-{
-return strerror ();
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  ac_cv_lib_cposix_strerror=yes
-else
-  ac_cv_lib_cposix_strerror=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_cposix_strerror" >&5
-$as_echo "$ac_cv_lib_cposix_strerror" >&6; }
-if test "x$ac_cv_lib_cposix_strerror" = xyes; then :
-  LIBS="$LIBS -lcposix"
-fi
-
-  
-
-ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to run the C preprocessor" >&5
-$as_echo_n "checking how to run the C preprocessor... " >&6; }
-# On Suns, sometimes $CPP names a directory.
-if test -n "$CPP" && test -d "$CPP"; then
-  CPP=
-fi
-if test -z "$CPP"; then
-  if ${ac_cv_prog_CPP+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-      # Double quotes because CPP needs to be expanded
-    for CPP in "$CC -E" "$CC -E -traditional-cpp" "/lib/cpp"
-    do
-      ac_preproc_ok=false
-for ac_c_preproc_warn_flag in '' yes
-do
-  # Use a header file that comes with gcc, so configuring glibc
-  # with a fresh cross-compiler works.
-  # Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
-  # <limits.h> exists even on freestanding compilers.
-  # On the NeXT, cc -E runs the code through the compiler's parser,
-  # not just through cpp. "Syntax error" is here to catch this case.
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-@%:@ifdef __STDC__
-@%:@ include <limits.h>
-@%:@else
-@%:@ include <assert.h>
-@%:@endif
-                    Syntax error
-_ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
-  
-else
-  # Broken: fails on valid input.
-continue
-fi
-rm -f conftest.err conftest.i conftest.$ac_ext
-
-  # OK, works on sane cases.  Now check whether nonexistent headers
-  # can be detected and how.
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-@%:@include <ac_nonexistent.h>
-_ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
-  # Broken: success on invalid input.
-continue
-else
-  # Passes both tests.
-ac_preproc_ok=:
-break
-fi
-rm -f conftest.err conftest.i conftest.$ac_ext
-
-done
-# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.
-rm -f conftest.i conftest.err conftest.$ac_ext
-if $ac_preproc_ok; then :
-  break
-fi
-
-    done
-    ac_cv_prog_CPP=$CPP
-  
-fi
-  CPP=$ac_cv_prog_CPP
-else
-  ac_cv_prog_CPP=$CPP
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $CPP" >&5
-$as_echo "$CPP" >&6; }
-ac_preproc_ok=false
-for ac_c_preproc_warn_flag in '' yes
-do
-  # Use a header file that comes with gcc, so configuring glibc
-  # with a fresh cross-compiler works.
-  # Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
-  # <limits.h> exists even on freestanding compilers.
-  # On the NeXT, cc -E runs the code through the compiler's parser,
-  # not just through cpp. "Syntax error" is here to catch this case.
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-@%:@ifdef __STDC__
-@%:@ include <limits.h>
-@%:@else
-@%:@ include <assert.h>
-@%:@endif
-                    Syntax error
-_ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
-  
-else
-  # Broken: fails on valid input.
-continue
-fi
-rm -f conftest.err conftest.i conftest.$ac_ext
-
-  # OK, works on sane cases.  Now check whether nonexistent headers
-  # can be detected and how.
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-@%:@include <ac_nonexistent.h>
-_ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
-  # Broken: success on invalid input.
-continue
-else
-  # Passes both tests.
-ac_preproc_ok=:
-break
-fi
-rm -f conftest.err conftest.i conftest.$ac_ext
-
-done
-# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.
-rm -f conftest.i conftest.err conftest.$ac_ext
-if $ac_preproc_ok; then :
-  
-else
-  { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error $? "C preprocessor \"$CPP\" fails sanity check
-See \`config.log' for more details" "$LINENO" 5; }
-fi
-
-ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for grep that handles long lines and -e" >&5
-$as_echo_n "checking for grep that handles long lines and -e... " >&6; }
-if ${ac_cv_path_GREP+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test -z "$GREP"; then
-  ac_path_GREP_found=false
-  # Loop through the user's path and test for each of PROGNAME-LIST
-  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_prog in grep ggrep; do
-    for ac_exec_ext in '' $ac_executable_extensions; do
-      ac_path_GREP="$as_dir/$ac_prog$ac_exec_ext"
-      { test -f "$ac_path_GREP" && $as_test_x "$ac_path_GREP"; } || continue
-# Check for GNU ac_path_GREP and select it if it is found.
-  # Check for GNU $ac_path_GREP
-case `"$ac_path_GREP" --version 2>&1` in
-*GNU*)
-  ac_cv_path_GREP="$ac_path_GREP" ac_path_GREP_found=:;;
-*)
-  ac_count=0
-  $as_echo_n 0123456789 >"conftest.in"
-  while :
-  do
-    cat "conftest.in" "conftest.in" >"conftest.tmp"
-    mv "conftest.tmp" "conftest.in"
-    cp "conftest.in" "conftest.nl"
-    $as_echo 'GREP' >> "conftest.nl"
-    "$ac_path_GREP" -e 'GREP$' -e '-(cannot match)-' < "conftest.nl" >"conftest.out" 2>/dev/null || break
-    diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break
-    as_fn_arith $ac_count + 1 && ac_count=$as_val
-    if test $ac_count -gt ${ac_path_GREP_max-0}; then
-      # Best one so far, save it but keep looking for a better one
-      ac_cv_path_GREP="$ac_path_GREP"
-      ac_path_GREP_max=$ac_count
-    fi
-    # 10*(2^10) chars as input seems more than enough
-    test $ac_count -gt 10 && break
-  done
-  rm -f conftest.in conftest.tmp conftest.nl conftest.out;;
-esac
-
-      $ac_path_GREP_found && break 3
-    done
-  done
-  done
-IFS=$as_save_IFS
-  if test -z "$ac_cv_path_GREP"; then
-    as_fn_error $? "no acceptable grep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5
-  fi
-else
-  ac_cv_path_GREP=$GREP
-fi
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_GREP" >&5
-$as_echo "$ac_cv_path_GREP" >&6; }
- GREP="$ac_cv_path_GREP"
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for egrep" >&5
-$as_echo_n "checking for egrep... " >&6; }
-if ${ac_cv_path_EGREP+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if echo a | $GREP -E '(a|b)' >/dev/null 2>&1
-   then ac_cv_path_EGREP="$GREP -E"
-   else
-     if test -z "$EGREP"; then
-  ac_path_EGREP_found=false
-  # Loop through the user's path and test for each of PROGNAME-LIST
-  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_prog in egrep; do
-    for ac_exec_ext in '' $ac_executable_extensions; do
-      ac_path_EGREP="$as_dir/$ac_prog$ac_exec_ext"
-      { test -f "$ac_path_EGREP" && $as_test_x "$ac_path_EGREP"; } || continue
-# Check for GNU ac_path_EGREP and select it if it is found.
-  # Check for GNU $ac_path_EGREP
-case `"$ac_path_EGREP" --version 2>&1` in
-*GNU*)
-  ac_cv_path_EGREP="$ac_path_EGREP" ac_path_EGREP_found=:;;
-*)
-  ac_count=0
-  $as_echo_n 0123456789 >"conftest.in"
-  while :
-  do
-    cat "conftest.in" "conftest.in" >"conftest.tmp"
-    mv "conftest.tmp" "conftest.in"
-    cp "conftest.in" "conftest.nl"
-    $as_echo 'EGREP' >> "conftest.nl"
-    "$ac_path_EGREP" 'EGREP$' < "conftest.nl" >"conftest.out" 2>/dev/null || break
-    diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break
-    as_fn_arith $ac_count + 1 && ac_count=$as_val
-    if test $ac_count -gt ${ac_path_EGREP_max-0}; then
-      # Best one so far, save it but keep looking for a better one
-      ac_cv_path_EGREP="$ac_path_EGREP"
-      ac_path_EGREP_max=$ac_count
-    fi
-    # 10*(2^10) chars as input seems more than enough
-    test $ac_count -gt 10 && break
-  done
-  rm -f conftest.in conftest.tmp conftest.nl conftest.out;;
-esac
-
-      $ac_path_EGREP_found && break 3
-    done
-  done
-  done
-IFS=$as_save_IFS
-  if test -z "$ac_cv_path_EGREP"; then
-    as_fn_error $? "no acceptable egrep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5
-  fi
-else
-  ac_cv_path_EGREP=$EGREP
-fi
-
-   fi
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_EGREP" >&5
-$as_echo "$ac_cv_path_EGREP" >&6; }
- EGREP="$ac_cv_path_EGREP"
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for ANSI C header files" >&5
-$as_echo_n "checking for ANSI C header files... " >&6; }
-if ${ac_cv_header_stdc+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <stdlib.h>
-#include <stdarg.h>
-#include <string.h>
-#include <float.h>
-
-int
-main ()
-{
-
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_cv_header_stdc=yes
-else
-  ac_cv_header_stdc=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-
-if test $ac_cv_header_stdc = yes; then
-  # SunOS 4.x string.h does not declare mem*, contrary to ANSI.
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <string.h>
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "memchr" >/dev/null 2>&1; then :
-  
-else
-  ac_cv_header_stdc=no
-fi
-rm -f conftest*
-
-fi
-
-if test $ac_cv_header_stdc = yes; then
-  # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI.
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <stdlib.h>
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "free" >/dev/null 2>&1; then :
-  
-else
-  ac_cv_header_stdc=no
-fi
-rm -f conftest*
-
-fi
-
-if test $ac_cv_header_stdc = yes; then
-  # /bin/cc in Irix-4.0.5 gets non-ANSI ctype macros unless using -ansi.
-  if test "$cross_compiling" = yes; then :
-  :
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <ctype.h>
-#include <stdlib.h>
-#if ((' ' & 0x0FF) == 0x020)
-# define ISLOWER(c) ('a' <= (c) && (c) <= 'z')
-# define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c))
-#else
-# define ISLOWER(c) \
-                  (('a' <= (c) && (c) <= 'i') \
-                    || ('j' <= (c) && (c) <= 'r') \
-                    || ('s' <= (c) && (c) <= 'z'))
-# define TOUPPER(c) (ISLOWER(c) ? ((c) | 0x40) : (c))
-#endif
-
-#define XOR(e, f) (((e) && !(f)) || (!(e) && (f)))
-int
-main ()
-{
-  int i;
-  for (i = 0; i < 256; i++)
-    if (XOR (islower (i), ISLOWER (i))
-       || toupper (i) != TOUPPER (i))
-      return 2;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-  
-else
-  ac_cv_header_stdc=no
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-fi
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_stdc" >&5
-$as_echo "$ac_cv_header_stdc" >&6; }
-if test $ac_cv_header_stdc = yes; then
-  
-$as_echo "@%:@define STDC_HEADERS 1" >>confdefs.h
-
-fi
-
-# On IRIX 5.3, sys/types and inttypes.h are conflicting.
-for ac_header in sys/types.h sys/stat.h stdlib.h string.h memory.h strings.h \
-                 inttypes.h stdint.h unistd.h
-do :
-  as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
-ac_fn_c_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default
-"
-if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-@%:@define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
-fi
-
-done
-
-
-
-  ac_fn_c_check_header_mongrel "$LINENO" "minix/config.h" "ac_cv_header_minix_config_h" "$ac_includes_default"
-if test "x$ac_cv_header_minix_config_h" = xyes; then :
-  MINIX=yes
-else
-  MINIX=
-fi
-
-
-  if test "$MINIX" = yes; then
-    
-$as_echo "@%:@define _POSIX_SOURCE 1" >>confdefs.h
-
-    
-$as_echo "@%:@define _POSIX_1_SOURCE 2" >>confdefs.h
-
-    
-$as_echo "@%:@define _MINIX 1" >>confdefs.h
-
-  fi
-
-  
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether it is safe to define __EXTENSIONS__" >&5
-$as_echo_n "checking whether it is safe to define __EXTENSIONS__... " >&6; }
-if ${ac_cv_safe_to_define___extensions__+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#        define __EXTENSIONS__ 1
-         $ac_includes_default
-int
-main ()
-{
-
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_cv_safe_to_define___extensions__=yes
-else
-  ac_cv_safe_to_define___extensions__=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_safe_to_define___extensions__" >&5
-$as_echo "$ac_cv_safe_to_define___extensions__" >&6; }
-  test $ac_cv_safe_to_define___extensions__ = yes &&
-    $as_echo "@%:@define __EXTENSIONS__ 1" >>confdefs.h
-
-  $as_echo "@%:@define _ALL_SOURCE 1" >>confdefs.h
-
-  $as_echo "@%:@define _GNU_SOURCE 1" >>confdefs.h
-
-  $as_echo "@%:@define _POSIX_PTHREAD_SEMANTICS 1" >>confdefs.h
-
-  $as_echo "@%:@define _TANDEM_SOURCE 1" >>confdefs.h
-
-
-
-
-@%:@ Check whether --enable-largefile was given.
-if test "${enable_largefile+set}" = set; then :
-  enableval=$enable_largefile; 
-fi
-
-if test "$enable_largefile" != no; then
-
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for special C compiler options needed for large files" >&5
-$as_echo_n "checking for special C compiler options needed for large files... " >&6; }
-if ${ac_cv_sys_largefile_CC+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_cv_sys_largefile_CC=no
-     if test "$GCC" != yes; then
-       ac_save_CC=$CC
-       while :; do
-        # IRIX 6.2 and later do not support large files by default,
-        # so use the C compiler's -n32 option if that helps.
-        cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-@%:@include <sys/types.h>
- /* Check that off_t can represent 2**63 - 1 correctly.
-    We can't simply define LARGE_OFF_T to be 9223372036854775807,
-    since some C++ compilers masquerading as C compilers
-    incorrectly reject 9223372036854775807.  */
-@%:@define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62))
-  int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721
-                      && LARGE_OFF_T % 2147483647 == 1)
-                     ? 1 : -1];
-int
-main ()
-{
-
-  ;
-  return 0;
-}
-_ACEOF
-        if ac_fn_c_try_compile "$LINENO"; then :
-  break
-fi
-rm -f core conftest.err conftest.$ac_objext
-        CC="$CC -n32"
-        if ac_fn_c_try_compile "$LINENO"; then :
-  ac_cv_sys_largefile_CC=' -n32'; break
-fi
-rm -f core conftest.err conftest.$ac_objext
-        break
-       done
-       CC=$ac_save_CC
-       rm -f conftest.$ac_ext
-    fi
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sys_largefile_CC" >&5
-$as_echo "$ac_cv_sys_largefile_CC" >&6; }
-  if test "$ac_cv_sys_largefile_CC" != no; then
-    CC=$CC$ac_cv_sys_largefile_CC
-  fi
-
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for _FILE_OFFSET_BITS value needed for large files" >&5
-$as_echo_n "checking for _FILE_OFFSET_BITS value needed for large files... " >&6; }
-if ${ac_cv_sys_file_offset_bits+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  while :; do
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-@%:@include <sys/types.h>
- /* Check that off_t can represent 2**63 - 1 correctly.
-    We can't simply define LARGE_OFF_T to be 9223372036854775807,
-    since some C++ compilers masquerading as C compilers
-    incorrectly reject 9223372036854775807.  */
-@%:@define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62))
-  int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721
-                      && LARGE_OFF_T % 2147483647 == 1)
-                     ? 1 : -1];
-int
-main ()
-{
-
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_cv_sys_file_offset_bits=no; break
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-@%:@define _FILE_OFFSET_BITS 64
-@%:@include <sys/types.h>
- /* Check that off_t can represent 2**63 - 1 correctly.
-    We can't simply define LARGE_OFF_T to be 9223372036854775807,
-    since some C++ compilers masquerading as C compilers
-    incorrectly reject 9223372036854775807.  */
-@%:@define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62))
-  int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721
-                      && LARGE_OFF_T % 2147483647 == 1)
-                     ? 1 : -1];
-int
-main ()
-{
-
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_cv_sys_file_offset_bits=64; break
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  ac_cv_sys_file_offset_bits=unknown
-  break
-done
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sys_file_offset_bits" >&5
-$as_echo "$ac_cv_sys_file_offset_bits" >&6; }
-case $ac_cv_sys_file_offset_bits in #(
-  no | unknown) ;;
-  *) 
-cat >>confdefs.h <<_ACEOF
-@%:@define _FILE_OFFSET_BITS $ac_cv_sys_file_offset_bits
-_ACEOF
-;;
-esac
-rm -rf conftest*
-  if test $ac_cv_sys_file_offset_bits = unknown; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for _LARGE_FILES value needed for large files" >&5
-$as_echo_n "checking for _LARGE_FILES value needed for large files... " >&6; }
-if ${ac_cv_sys_large_files+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  while :; do
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-@%:@include <sys/types.h>
- /* Check that off_t can represent 2**63 - 1 correctly.
-    We can't simply define LARGE_OFF_T to be 9223372036854775807,
-    since some C++ compilers masquerading as C compilers
-    incorrectly reject 9223372036854775807.  */
-@%:@define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62))
-  int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721
-                      && LARGE_OFF_T % 2147483647 == 1)
-                     ? 1 : -1];
-int
-main ()
-{
-
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_cv_sys_large_files=no; break
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-@%:@define _LARGE_FILES 1
-@%:@include <sys/types.h>
- /* Check that off_t can represent 2**63 - 1 correctly.
-    We can't simply define LARGE_OFF_T to be 9223372036854775807,
-    since some C++ compilers masquerading as C compilers
-    incorrectly reject 9223372036854775807.  */
-@%:@define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62))
-  int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721
-                      && LARGE_OFF_T % 2147483647 == 1)
-                     ? 1 : -1];
-int
-main ()
-{
-
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_cv_sys_large_files=1; break
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  ac_cv_sys_large_files=unknown
-  break
-done
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sys_large_files" >&5
-$as_echo "$ac_cv_sys_large_files" >&6; }
-case $ac_cv_sys_large_files in #(
-  no | unknown) ;;
-  *) 
-cat >>confdefs.h <<_ACEOF
-@%:@define _LARGE_FILES $ac_cv_sys_large_files
-_ACEOF
-;;
-esac
-rm -rf conftest*
-  fi
-fi
-
-
-
-SIGNAMES_O=
-SIGNAMES_H=lsignames.h
-
-
-
-CROSS_COMPILE=
-if test "x$cross_compiling" = "xyes"; then
-    case "${host}" in
-    *-cygwin*)
-       cross_cache=${srcdir}/cross-build/cygwin32.cache
-       ;;
-    *-mingw*)
-       cross_cache=${srcdir}/cross-build/cygwin32.cache
-       ;;
-    i[3456]86-*-beos*)
-       cross_cache=${srcdir}/cross-build/x86-beos.cache
-       ;;
-    *) echo "configure: cross-compiling for $host is not supported" >&2
-       ;;
-    esac
-    if test -n "${cross_cache}" && test -r "${cross_cache}"; then
-       echo "loading cross-build cache file ${cross_cache}"
-       . ${cross_cache}
-    fi
-    unset cross_cache
-    SIGNAMES_O='signames.o'
-    CROSS_COMPILE='-DCROSS_COMPILING'
-    
-fi
-
-
-
-
-if test -z "$CFLAGS"; then
-       AUTO_CFLAGS="-g ${GCC+-O2}"
-       AUTO_LDFLAGS="-g ${GCC+-O2}"
-else
-       AUTO_CFLAGS= AUTO_LDFLAGS=
-fi
-
-CFLAGS=${CFLAGS-"$AUTO_CFLAGS"}
-# LDFLAGS=${LDFLAGS="$AUTO_LDFLAGS"}   # XXX
-
-if test "$opt_profiling" = "yes"; then
-       PROFILE_FLAGS=-pg
-       case "$host_os" in
-       solaris2*)      ;;
-       *)              opt_static_link=yes ;;
-       esac
-       DEBUG= MALLOC_DEBUG=
-fi
-
-prefer_shared=yes
-prefer_static=no
-
-if test "$opt_static_link" = yes; then
-       prefer_static=yes
-       prefer_shared=no
-       # if we're using gcc, add `-static' to LDFLAGS, except on Solaris >= 2
-       if test -n "$GCC" || test "$ac_cv_c_compiler_gnu" = "yes"; then
-               STATIC_LD="-static" 
-               case "$host_os" in
-               solaris2*)      ;;
-               *)              LDFLAGS="$LDFLAGS -static" ;;   # XXX experimental
-               esac
-       fi
-fi
-
-# set the appropriate make variables for building the "build tools"
-
-if test "X$cross_compiling" = "Xno"; then
-       CC_FOR_BUILD=${CC_FOR_BUILD-'$(CC)'}
-       CPPFLAGS_FOR_BUILD=${CPPFLAGS_FOR_BUILD-"$CPPFLAGS"}    # XXX - should it be '$(CPPFLAGS)'
-       LDFLAGS_FOR_BUILD=${LDFLAGS_FOR_BUILD-'$(LDFLAGS)'}
-       # CFLAGS set above to default value if not passed in environment
-       CFLAGS_FOR_BUILD=${CFLAGS-'$(CFLAGS)'}
-       LIBS_FOR_BUILD=${LIBS_FOR_BUILD-'$(LIBS)'}
-else
-       CC_FOR_BUILD=${CC_FOR_BUILD-"gcc"}
-       CPPFLAGS_FOR_BUILD=${CPPFLAGS_FOR_BUILD-""}
-       LDFLAGS_FOR_BUILD=${LDFLAGS_FOR_BUILD-""}
-       CFLAGS_FOR_BUILD=${CFLAGS_FOR_BUILD="-g"}
-       LIBS_FOR_BUILD=${LIBS_FOR_BUILD-""}
-fi
-
-
-
-
-
-
-
-
-
-
-
-
-if test $ac_cv_c_compiler_gnu = yes; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC needs -traditional" >&5
-$as_echo_n "checking whether $CC needs -traditional... " >&6; }
-if ${ac_cv_prog_gcc_traditional+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-    ac_pattern="Autoconf.*'x'"
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <sgtty.h>
-Autoconf TIOCGETP
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "$ac_pattern" >/dev/null 2>&1; then :
-  ac_cv_prog_gcc_traditional=yes
-else
-  ac_cv_prog_gcc_traditional=no
-fi
-rm -f conftest*
-
-
-  if test $ac_cv_prog_gcc_traditional = no; then
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <termio.h>
-Autoconf TCGETA
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "$ac_pattern" >/dev/null 2>&1; then :
-  ac_cv_prog_gcc_traditional=yes
-fi
-rm -f conftest*
-
-  fi
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_gcc_traditional" >&5
-$as_echo "$ac_cv_prog_gcc_traditional" >&6; }
-  if test $ac_cv_prog_gcc_traditional = yes; then
-    CC="$CC -traditional"
-  fi
-fi
-
-
-
-if test "$opt_readline" = yes && test "$opt_with_installed_readline" != "no"
-then
-       # If the user specified --with-installed-readline=PREFIX and PREFIX
-       # is not `yes', set ac_cv_rl_prefix to PREFIX
-       test $opt_with_installed_readline != "yes" && ac_cv_rl_prefix=$opt_with_installed_readline
-
-       
-if test "X$bash_cv_termcap_lib" = "X"; then
-_bash_needmsg=yes
-else
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking which library has the termcap functions" >&5
-$as_echo_n "checking which library has the termcap functions... " >&6; }
-_bash_needmsg=
-fi
-if ${bash_cv_termcap_lib+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_fn_c_check_func "$LINENO" "tgetent" "ac_cv_func_tgetent"
-if test "x$ac_cv_func_tgetent" = xyes; then :
-  bash_cv_termcap_lib=libc
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for tgetent in -ltermcap" >&5
-$as_echo_n "checking for tgetent in -ltermcap... " >&6; }
-if ${ac_cv_lib_termcap_tgetent+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_check_lib_save_LIBS=$LIBS
-LIBS="-ltermcap  $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-/* Override any GCC internal prototype to avoid an error.
-   Use char because int might match the return type of a GCC
-   builtin and then its argument prototype would still apply.  */
-#ifdef __cplusplus
-extern "C"
-#endif
-char tgetent ();
-int
-main ()
-{
-return tgetent ();
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  ac_cv_lib_termcap_tgetent=yes
-else
-  ac_cv_lib_termcap_tgetent=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_termcap_tgetent" >&5
-$as_echo "$ac_cv_lib_termcap_tgetent" >&6; }
-if test "x$ac_cv_lib_termcap_tgetent" = xyes; then :
-  bash_cv_termcap_lib=libtermcap
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for tgetent in -ltinfo" >&5
-$as_echo_n "checking for tgetent in -ltinfo... " >&6; }
-if ${ac_cv_lib_tinfo_tgetent+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_check_lib_save_LIBS=$LIBS
-LIBS="-ltinfo  $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-/* Override any GCC internal prototype to avoid an error.
-   Use char because int might match the return type of a GCC
-   builtin and then its argument prototype would still apply.  */
-#ifdef __cplusplus
-extern "C"
-#endif
-char tgetent ();
-int
-main ()
-{
-return tgetent ();
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  ac_cv_lib_tinfo_tgetent=yes
-else
-  ac_cv_lib_tinfo_tgetent=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_tinfo_tgetent" >&5
-$as_echo "$ac_cv_lib_tinfo_tgetent" >&6; }
-if test "x$ac_cv_lib_tinfo_tgetent" = xyes; then :
-  bash_cv_termcap_lib=libtinfo
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for tgetent in -lcurses" >&5
-$as_echo_n "checking for tgetent in -lcurses... " >&6; }
-if ${ac_cv_lib_curses_tgetent+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_check_lib_save_LIBS=$LIBS
-LIBS="-lcurses  $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-/* Override any GCC internal prototype to avoid an error.
-   Use char because int might match the return type of a GCC
-   builtin and then its argument prototype would still apply.  */
-#ifdef __cplusplus
-extern "C"
-#endif
-char tgetent ();
-int
-main ()
-{
-return tgetent ();
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  ac_cv_lib_curses_tgetent=yes
-else
-  ac_cv_lib_curses_tgetent=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_curses_tgetent" >&5
-$as_echo "$ac_cv_lib_curses_tgetent" >&6; }
-if test "x$ac_cv_lib_curses_tgetent" = xyes; then :
-  bash_cv_termcap_lib=libcurses
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for tgetent in -lncurses" >&5
-$as_echo_n "checking for tgetent in -lncurses... " >&6; }
-if ${ac_cv_lib_ncurses_tgetent+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_check_lib_save_LIBS=$LIBS
-LIBS="-lncurses  $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-/* Override any GCC internal prototype to avoid an error.
-   Use char because int might match the return type of a GCC
-   builtin and then its argument prototype would still apply.  */
-#ifdef __cplusplus
-extern "C"
-#endif
-char tgetent ();
-int
-main ()
-{
-return tgetent ();
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  ac_cv_lib_ncurses_tgetent=yes
-else
-  ac_cv_lib_ncurses_tgetent=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_ncurses_tgetent" >&5
-$as_echo "$ac_cv_lib_ncurses_tgetent" >&6; }
-if test "x$ac_cv_lib_ncurses_tgetent" = xyes; then :
-  bash_cv_termcap_lib=libncurses
-else
-  bash_cv_termcap_lib=gnutermcap
-fi
-
-fi
-
-fi
-
-fi
-
-fi
-
-fi
-
-if test "X$_bash_needmsg" = "Xyes"; then
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking which library has the termcap functions" >&5
-$as_echo_n "checking which library has the termcap functions... " >&6; }
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: using $bash_cv_termcap_lib" >&5
-$as_echo "using $bash_cv_termcap_lib" >&6; }
-if test $bash_cv_termcap_lib = gnutermcap && test -z "$prefer_curses"; then
-LDFLAGS="$LDFLAGS -L./lib/termcap"
-TERMCAP_LIB="./lib/termcap/libtermcap.a"
-TERMCAP_DEP="./lib/termcap/libtermcap.a"
-elif test $bash_cv_termcap_lib = libtermcap && test -z "$prefer_curses"; then
-TERMCAP_LIB=-ltermcap
-TERMCAP_DEP=
-elif test $bash_cv_termcap_lib = libtinfo; then
-TERMCAP_LIB=-ltinfo
-TERMCAP_DEP=
-elif test $bash_cv_termcap_lib = libncurses; then
-TERMCAP_LIB=-lncurses
-TERMCAP_DEP=
-elif test $bash_cv_termcap_lib = libc; then
-TERMCAP_LIB=
-TERMCAP_DEP=
-else
-TERMCAP_LIB=-lcurses
-TERMCAP_DEP=
-fi
-
-
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking version of installed readline library" >&5
-$as_echo_n "checking version of installed readline library... " >&6; }
-
-# What a pain in the ass this is.
-
-# save cpp and ld options
-_save_CFLAGS="$CFLAGS"
-_save_LDFLAGS="$LDFLAGS"
-_save_LIBS="$LIBS"
-
-# Don't set ac_cv_rl_prefix if the caller has already assigned a value.  This
-# allows the caller to do something like $_rl_prefix=$withval if the user
-# specifies --with-installed-readline=PREFIX as an argument to configure
-
-if test -z "$ac_cv_rl_prefix"; then
-test "x$prefix" = xNONE && ac_cv_rl_prefix=$ac_default_prefix || ac_cv_rl_prefix=${prefix}
-fi
-
-eval ac_cv_rl_includedir=${ac_cv_rl_prefix}/include
-eval ac_cv_rl_libdir=${ac_cv_rl_prefix}/lib
-
-LIBS="$LIBS -lreadline ${TERMCAP_LIB}"
-CFLAGS="$CFLAGS -I${ac_cv_rl_includedir}"
-LDFLAGS="$LDFLAGS -L${ac_cv_rl_libdir}"
-
-if ${ac_cv_rl_version+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test "$cross_compiling" = yes; then :
-  ac_cv_rl_version='4.2'
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#include <stdio.h>
-#include <readline/readline.h>
-
-extern int rl_gnu_readline_p;
-
-main()
-{
-       FILE *fp;
-       fp = fopen("conftest.rlv", "w");
-       if (fp == 0)
-               exit(1);
-       if (rl_gnu_readline_p != 1)
-               fprintf(fp, "0.0\n");
-       else
-               fprintf(fp, "%s\n", rl_library_version ? rl_library_version : "0.0");
-       fclose(fp);
-       exit(0);
-}
-
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-  ac_cv_rl_version=`cat conftest.rlv`
-else
-  ac_cv_rl_version='0.0'
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-fi
-
-
-CFLAGS="$_save_CFLAGS"
-LDFLAGS="$_save_LDFLAGS"
-LIBS="$_save_LIBS"
-
-RL_MAJOR=0
-RL_MINOR=0
-
-# (
-case "$ac_cv_rl_version" in
-2*|3*|4*|5*|6*|7*|8*|9*)
-       RL_MAJOR=`echo $ac_cv_rl_version | sed 's:\..*$::'`
-       RL_MINOR=`echo $ac_cv_rl_version | sed -e 's:^.*\.::' -e 's:[a-zA-Z]*$::'`
-       ;;
-esac
-
-# (((
-case $RL_MAJOR in
-[0-9][0-9])    _RL_MAJOR=$RL_MAJOR ;;
-[0-9]) _RL_MAJOR=0$RL_MAJOR ;;
-*)             _RL_MAJOR=00 ;;
-esac
-
-# (((
-case $RL_MINOR in
-[0-9][0-9])    _RL_MINOR=$RL_MINOR ;;
-[0-9]) _RL_MINOR=0$RL_MINOR ;;
-*)             _RL_MINOR=00 ;;
-esac
-
-RL_VERSION="0x${_RL_MAJOR}${_RL_MINOR}"
-
-# Readline versions greater than 4.2 have these defines in readline.h
-
-if test $ac_cv_rl_version = '0.0' ; then
-       { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Could not test version of installed readline library." >&5
-$as_echo "$as_me: WARNING: Could not test version of installed readline library." >&2;}
-elif test $RL_MAJOR -gt 4 || { test $RL_MAJOR = 4 && test $RL_MINOR -gt 2 ; } ; then
-       # set these for use by the caller
-       RL_PREFIX=$ac_cv_rl_prefix
-       RL_LIBDIR=$ac_cv_rl_libdir
-       RL_INCLUDEDIR=$ac_cv_rl_includedir
-       { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_rl_version" >&5
-$as_echo "$ac_cv_rl_version" >&6; }
-else
-
-
-cat >>confdefs.h <<_ACEOF
-@%:@define RL_READLINE_VERSION $RL_VERSION
-_ACEOF
-
-
-cat >>confdefs.h <<_ACEOF
-@%:@define RL_VERSION_MAJOR $RL_MAJOR
-_ACEOF
-
-
-cat >>confdefs.h <<_ACEOF
-@%:@define RL_VERSION_MINOR $RL_MINOR
-_ACEOF
-
-
-
-
-
-
-# set these for use by the caller
-RL_PREFIX=$ac_cv_rl_prefix
-RL_LIBDIR=$ac_cv_rl_libdir
-RL_INCLUDEDIR=$ac_cv_rl_includedir
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_rl_version" >&5
-$as_echo "$ac_cv_rl_version" >&6; }
-
-fi
-
-
-       case "$ac_cv_rl_version" in
-       5*|6*|7*|8*|9*) ;;
-       *)      opt_with_installed_readline=no 
-               { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: installed readline library is too old to be linked with bash" >&5
-$as_echo "$as_me: WARNING: installed readline library is too old to be linked with bash" >&2;}
-               { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using private bash version" >&5
-$as_echo "$as_me: WARNING: using private bash version" >&2;}
-               ;;
-       esac
-fi
-
-TILDE_LIB=-ltilde
-if test $opt_readline = yes; then
-       $as_echo "@%:@define READLINE 1" >>confdefs.h
-
-       if test "$opt_with_installed_readline" != "no" ; then
-               case "$opt_with_installed_readline" in
-               yes)    RL_INCLUDE= ;;
-               *)      case "$RL_INCLUDEDIR" in
-                       /usr/include)   ;;
-                       *)              RL_INCLUDE='-I${RL_INCLUDEDIR}' ;;
-                       esac
-                       ;;
-               esac
-               READLINE_DEP=
-               READLINE_LIB=-lreadline
-               # section for OS versions that don't allow unresolved symbols
-               # to be compiled into dynamic libraries.
-               case "$host_os" in
-               cygwin*)        TILDE_LIB= ;;
-               esac
-       else
-               RL_LIBDIR='$(dot)/$(LIBSUBDIR)/readline'
-               READLINE_DEP='$(READLINE_LIBRARY)'
-               # section for OS versions that ship an older/broken version of
-               # readline as a standard dynamic library and don't allow a
-               # static version specified as -llibname to override the
-               # dynamic version
-               case "${host_os}" in
-               darwin[89]*|darwin10*) READLINE_LIB='${READLINE_LIBRARY}' ;;
-               *)              READLINE_LIB=-lreadline ;;
-               esac
-       fi
-else
-       RL_LIBDIR='$(dot)/$(LIBSUBDIR)/readline'
-       READLINE_LIB= READLINE_DEP=
-fi
-if test $opt_history = yes || test $opt_bang_history = yes; then
-       if test $opt_history = yes; then
-               $as_echo "@%:@define HISTORY 1" >>confdefs.h
-
-       fi
-       if test $opt_bang_history = yes; then
-               $as_echo "@%:@define BANG_HISTORY 1" >>confdefs.h
-
-       fi
-       if test "$opt_with_installed_readline" != "no"; then
-               HIST_LIBDIR=$RL_LIBDIR
-               HISTORY_DEP=
-               HISTORY_LIB=-lhistory
-               case "$opt_with_installed_readline" in
-               yes)    RL_INCLUDE= ;;
-               *)      case "$RL_INCLUDEDIR" in
-                       /usr/include)   ;;
-                       *)              RL_INCLUDE='-I${RL_INCLUDEDIR}' ;;
-                       esac
-                       ;;
-               esac
-       else
-               HIST_LIBDIR='$(dot)/$(LIBSUBDIR)/readline'
-               HISTORY_DEP='$(HISTORY_LIBRARY)'
-               # section for OS versions that ship an older version of
-               # readline as a standard dynamic library and don't allow a
-               # static version specified as -llibname to override the
-               # dynamic version
-               case "${host_os}" in
-               darwin[89]*|darwin10*) HISTORY_LIB='${HISTORY_LIBRARY}' ;;
-               *)              HISTORY_LIB=-lhistory ;;
-               esac
-       fi
-else
-       HIST_LIBDIR='$(dot)/$(LIBSUBDIR)/readline'
-       HISTORY_LIB= HISTORY_DEP=
-fi
-
-
-
-
-
-
-
-
-
-
-
-# Find a good install program.  We prefer a C program (faster),
-# so one script is as good as another.  But avoid the broken or
-# incompatible versions:
-# SysV /etc/install, /usr/sbin/install
-# SunOS /usr/etc/install
-# IRIX /sbin/install
-# AIX /bin/install
-# AmigaOS /C/install, which installs bootblocks on floppy discs
-# AIX 4 /usr/bin/installbsd, which doesn't work without a -g flag
-# AFS /usr/afsws/bin/install, which mishandles nonexistent args
-# SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff"
-# OS/2's system install, which has a completely different semantic
-# ./install, which can be erroneously created by make from ./install.sh.
-# Reject install programs that cannot install multiple files.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for a BSD-compatible install" >&5
-$as_echo_n "checking for a BSD-compatible install... " >&6; }
-if test -z "$INSTALL"; then
-if ${ac_cv_path_install+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    # Account for people who put trailing slashes in PATH elements.
-case $as_dir/ in @%:@((
-  ./ | .// | /[cC]/* | \
-  /etc/* | /usr/sbin/* | /usr/etc/* | /sbin/* | /usr/afsws/bin/* | \
-  ?:[\\/]os2[\\/]install[\\/]* | ?:[\\/]OS2[\\/]INSTALL[\\/]* | \
-  /usr/ucb/* ) ;;
-  *)
-    # OSF1 and SCO ODT 3.0 have their own names for install.
-    # Don't use installbsd from OSF since it installs stuff as root
-    # by default.
-    for ac_prog in ginstall scoinst install; do
-      for ac_exec_ext in '' $ac_executable_extensions; do
-       if { test -f "$as_dir/$ac_prog$ac_exec_ext" && $as_test_x "$as_dir/$ac_prog$ac_exec_ext"; }; then
-         if test $ac_prog = install &&
-           grep dspmsg "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then
-           # AIX install.  It has an incompatible calling convention.
-           :
-         elif test $ac_prog = install &&
-           grep pwplus "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then
-           # program-specific install script used by HP pwplus--don't use.
-           :
-         else
-           rm -rf conftest.one conftest.two conftest.dir
-           echo one > conftest.one
-           echo two > conftest.two
-           mkdir conftest.dir
-           if "$as_dir/$ac_prog$ac_exec_ext" -c conftest.one conftest.two "`pwd`/conftest.dir" &&
-             test -s conftest.one && test -s conftest.two &&
-             test -s conftest.dir/conftest.one &&
-             test -s conftest.dir/conftest.two
-           then
-             ac_cv_path_install="$as_dir/$ac_prog$ac_exec_ext -c"
-             break 3
-           fi
-         fi
-       fi
-      done
-    done
-    ;;
-esac
-
-  done
-IFS=$as_save_IFS
-
-rm -rf conftest.one conftest.two conftest.dir
-
-fi
-  if test "${ac_cv_path_install+set}" = set; then
-    INSTALL=$ac_cv_path_install
-  else
-    # As a last resort, use the slow shell script.  Don't cache a
-    # value for INSTALL within a source directory, because that will
-    # break other packages using the cache if that directory is
-    # removed, or if the value is a relative name.
-    INSTALL=$ac_install_sh
-  fi
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $INSTALL" >&5
-$as_echo "$INSTALL" >&6; }
-
-# Use test -z because SunOS4 sh mishandles braces in ${var-val}.
-# It thinks the first close brace ends the variable substitution.
-test -z "$INSTALL_PROGRAM" && INSTALL_PROGRAM='${INSTALL}'
-
-test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL}'
-
-test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
-
-# Extract the first word of "ar", so it can be a program name with args.
-set dummy ar; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_AR+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test -n "$AR"; then
-  ac_cv_prog_AR="$AR" # 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 { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_prog_AR=""
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-  test -z "$ac_cv_prog_AR" && ac_cv_prog_AR="ar"
-fi
-fi
-AR=$ac_cv_prog_AR
-if test -n "$AR"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $AR" >&5
-$as_echo "$AR" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-test -n "$ARFLAGS" || ARFLAGS="cr"
-if test -n "$ac_tool_prefix"; then
-  # Extract the first word of "${ac_tool_prefix}ranlib", so it can be a program name with args.
-set dummy ${ac_tool_prefix}ranlib; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_RANLIB+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test -n "$RANLIB"; then
-  ac_cv_prog_RANLIB="$RANLIB" # 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 { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_prog_RANLIB="${ac_tool_prefix}ranlib"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-fi
-fi
-RANLIB=$ac_cv_prog_RANLIB
-if test -n "$RANLIB"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $RANLIB" >&5
-$as_echo "$RANLIB" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-fi
-if test -z "$ac_cv_prog_RANLIB"; then
-  ac_ct_RANLIB=$RANLIB
-  # Extract the first word of "ranlib", so it can be a program name with args.
-set dummy ranlib; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_RANLIB+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test -n "$ac_ct_RANLIB"; then
-  ac_cv_prog_ac_ct_RANLIB="$ac_ct_RANLIB" # 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 { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_prog_ac_ct_RANLIB="ranlib"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-fi
-fi
-ac_ct_RANLIB=$ac_cv_prog_ac_ct_RANLIB
-if test -n "$ac_ct_RANLIB"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_RANLIB" >&5
-$as_echo "$ac_ct_RANLIB" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-  if test "x$ac_ct_RANLIB" = x; then
-    RANLIB=":"
-  else
-    case $cross_compiling:$ac_tool_warned in
-yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
-ac_tool_warned=yes ;;
-esac
-    RANLIB=$ac_ct_RANLIB
-  fi
-else
-  RANLIB="$ac_cv_prog_RANLIB"
-fi
-
-for ac_prog in 'bison -y' byacc
-do
-  # Extract the first word of "$ac_prog", so it can be a program name with args.
-set dummy $ac_prog; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_YACC+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test -n "$YACC"; then
-  ac_cv_prog_YACC="$YACC" # 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 { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_prog_YACC="$ac_prog"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-fi
-fi
-YACC=$ac_cv_prog_YACC
-if test -n "$YACC"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $YACC" >&5
-$as_echo "$YACC" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-  test -n "$YACC" && break
-done
-test -n "$YACC" || YACC="yacc"
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ${MAKE-make} sets \$(MAKE)" >&5
-$as_echo_n "checking whether ${MAKE-make} sets \$(MAKE)... " >&6; }
-set x ${MAKE-make}
-ac_make=`$as_echo "$2" | sed 's/+/p/g; s/[^a-zA-Z0-9_]/_/g'`
-if eval \${ac_cv_prog_make_${ac_make}_set+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat >conftest.make <<\_ACEOF
-SHELL = /bin/sh
-all:
-       @echo '@@@%%%=$(MAKE)=@@@%%%'
-_ACEOF
-# GNU make sometimes prints "make[1]: Entering ...", which would confuse us.
-case `${MAKE-make} -f conftest.make 2>/dev/null` in
-  *@@@%%%=?*=@@@%%%*)
-    eval ac_cv_prog_make_${ac_make}_set=yes;;
-  *)
-    eval ac_cv_prog_make_${ac_make}_set=no;;
-esac
-rm -f conftest.make
-fi
-if eval test \$ac_cv_prog_make_${ac_make}_set = yes; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-  SET_MAKE=
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-  SET_MAKE="MAKE=${MAKE-make}"
-fi
-
-
-case "$host_os" in
-opennt*|interix*)      MAKE_SHELL="$INTERIX_ROOT/bin/sh" ;;
-*)                     MAKE_SHELL=/bin/sh ;;
-esac
-
-
-if test x$SIZE = x; then
-       if test x$ac_tool_prefix = x; then
-               SIZE=size
-       else
-               SIZE=${ac_tool_prefix}size
-               save_IFS=$IFS ; IFS=:
-               size_found=0
-               for dir in $PATH; do
-                       if test -x $dir/$SIZE ; then
-                               size_found=1
-                               break
-                       fi
-               done
-               if test $size_found -eq 0; then
-                       SIZE=:
-               fi
-               IFS=$save_IFS
-       fi
-fi
-
-
-$as_echo "@%:@define _GNU_SOURCE 1" >>confdefs.h
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for an ANSI C-conforming const" >&5
-$as_echo_n "checking for an ANSI C-conforming const... " >&6; }
-if ${ac_cv_c_const+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-int
-main ()
-{
-/* FIXME: Include the comments suggested by Paul. */
-#ifndef __cplusplus
-  /* Ultrix mips cc rejects this.  */
-  typedef int charset[2];
-  const charset cs;
-  /* SunOS 4.1.1 cc rejects this.  */
-  char const *const *pcpcc;
-  char **ppc;
-  /* NEC SVR4.0.2 mips cc rejects this.  */
-  struct point {int x, y;};
-  static struct point const zero = {0,0};
-  /* AIX XL C 1.02.0.0 rejects this.
-     It does not let you subtract one const X* pointer from another in
-     an arm of an if-expression whose if-part is not a constant
-     expression */
-  const char *g = "string";
-  pcpcc = &g + (g ? g-g : 0);
-  /* HPUX 7.0 cc rejects these. */
-  ++pcpcc;
-  ppc = (char**) pcpcc;
-  pcpcc = (char const *const *) ppc;
-  { /* SCO 3.2v4 cc rejects this.  */
-    char *t;
-    char const *s = 0 ? (char *) 0 : (char const *) 0;
-
-    *t++ = 0;
-    if (s) return 0;
-  }
-  { /* Someone thinks the Sun supposedly-ANSI compiler will reject this.  */
-    int x[] = {25, 17};
-    const int *foo = &x[0];
-    ++foo;
-  }
-  { /* Sun SC1.0 ANSI compiler rejects this -- but not the above. */
-    typedef const int *iptr;
-    iptr p = 0;
-    ++p;
-  }
-  { /* AIX XL C 1.02.0.0 rejects this saying
-       "k.c", line 2.27: 1506-025 (S) Operand must be a modifiable lvalue. */
-    struct s { int j; const int *ap[3]; };
-    struct s *b; b->j = 5;
-  }
-  { /* ULTRIX-32 V3.1 (Rev 9) vcc rejects this */
-    const int foo = 10;
-    if (!foo) return 0;
-  }
-  return !cs[0] && !zero.x;
-#endif
-
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_cv_c_const=yes
-else
-  ac_cv_c_const=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_const" >&5
-$as_echo "$ac_cv_c_const" >&6; }
-if test $ac_cv_c_const = no; then
-  
-$as_echo "@%:@define const /**/" >>confdefs.h
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for inline" >&5
-$as_echo_n "checking for inline... " >&6; }
-if ${ac_cv_c_inline+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_cv_c_inline=no
-for ac_kw in inline __inline__ __inline; do
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#ifndef __cplusplus
-typedef int foo_t;
-static $ac_kw foo_t static_foo () {return 0; }
-$ac_kw foo_t foo () {return 0; }
-#endif
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_cv_c_inline=$ac_kw
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  test "$ac_cv_c_inline" != no && break
-done
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_inline" >&5
-$as_echo "$ac_cv_c_inline" >&6; }
-
-case $ac_cv_c_inline in
-  inline | yes) ;;
-  *)
-    case $ac_cv_c_inline in
-      no) ac_val=;;
-      *) ac_val=$ac_cv_c_inline;;
-    esac
-    cat >>confdefs.h <<_ACEOF
-#ifndef __cplusplus
-#define inline $ac_val
-#endif
-_ACEOF
-    ;;
-esac
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether byte ordering is bigendian" >&5
-$as_echo_n "checking whether byte ordering is bigendian... " >&6; }
-if ${ac_cv_c_bigendian+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_cv_c_bigendian=unknown
-    # See if we're dealing with a universal compiler.
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#ifndef __APPLE_CC__
-              not a universal capable compiler
-            #endif
-            typedef int dummy;
-           
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  
-       # Check for potential -arch flags.  It is not universal unless
-       # there are at least two -arch flags with different values.
-       ac_arch=
-       ac_prev=
-       for ac_word in $CC $CFLAGS $CPPFLAGS $LDFLAGS; do
-        if test -n "$ac_prev"; then
-          case $ac_word in
-            i?86 | x86_64 | ppc | ppc64)
-              if test -z "$ac_arch" || test "$ac_arch" = "$ac_word"; then
-                ac_arch=$ac_word
-              else
-                ac_cv_c_bigendian=universal
-                break
-              fi
-              ;;
-          esac
-          ac_prev=
-        elif test "x$ac_word" = "x-arch"; then
-          ac_prev=arch
-        fi
-       done
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-    if test $ac_cv_c_bigendian = unknown; then
-      # See if sys/param.h defines the BYTE_ORDER macro.
-      cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <sys/types.h>
-            #include <sys/param.h>
-          
-int
-main ()
-{
-#if ! (defined BYTE_ORDER && defined BIG_ENDIAN \
-                    && defined LITTLE_ENDIAN && BYTE_ORDER && BIG_ENDIAN \
-                    && LITTLE_ENDIAN)
-             bogus endian macros
-            #endif
-          
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  # It does; now see whether it defined to BIG_ENDIAN or not.
-        cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <sys/types.h>
-               #include <sys/param.h>
-             
-int
-main ()
-{
-#if BYTE_ORDER != BIG_ENDIAN
-                not big endian
-               #endif
-             
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_cv_c_bigendian=yes
-else
-  ac_cv_c_bigendian=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-    fi
-    if test $ac_cv_c_bigendian = unknown; then
-      # See if <limits.h> defines _LITTLE_ENDIAN or _BIG_ENDIAN (e.g., Solaris).
-      cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <limits.h>
-          
-int
-main ()
-{
-#if ! (defined _LITTLE_ENDIAN || defined _BIG_ENDIAN)
-             bogus endian macros
-            #endif
-          
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  # It does; now see whether it defined to _BIG_ENDIAN or not.
-        cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <limits.h>
-             
-int
-main ()
-{
-#ifndef _BIG_ENDIAN
-                not big endian
-               #endif
-             
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_cv_c_bigendian=yes
-else
-  ac_cv_c_bigendian=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-    fi
-    if test $ac_cv_c_bigendian = unknown; then
-      # Compile a test program.
-      if test "$cross_compiling" = yes; then :
-  # Try to guess by grepping values from an object file.
-        cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-short int ascii_mm[] =
-                 { 0x4249, 0x4765, 0x6E44, 0x6961, 0x6E53, 0x7953, 0 };
-               short int ascii_ii[] =
-                 { 0x694C, 0x5454, 0x656C, 0x6E45, 0x6944, 0x6E61, 0 };
-               int use_ascii (int i) {
-                 return ascii_mm[i] + ascii_ii[i];
-               }
-               short int ebcdic_ii[] =
-                 { 0x89D3, 0xE3E3, 0x8593, 0x95C5, 0x89C4, 0x9581, 0 };
-               short int ebcdic_mm[] =
-                 { 0xC2C9, 0xC785, 0x95C4, 0x8981, 0x95E2, 0xA8E2, 0 };
-               int use_ebcdic (int i) {
-                 return ebcdic_mm[i] + ebcdic_ii[i];
-               }
-               extern int foo;
-             
-int
-main ()
-{
-return use_ascii (foo) == use_ebcdic (foo);
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  if grep BIGenDianSyS conftest.$ac_objext >/dev/null; then
-             ac_cv_c_bigendian=yes
-           fi
-           if grep LiTTleEnDian conftest.$ac_objext >/dev/null ; then
-             if test "$ac_cv_c_bigendian" = unknown; then
-               ac_cv_c_bigendian=no
-             else
-               # finding both strings is unlikely to happen, but who knows?
-               ac_cv_c_bigendian=unknown
-             fi
-           fi
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-$ac_includes_default
-int
-main ()
-{
-
-            /* Are we little or big endian?  From Harbison&Steele.  */
-            union
-            {
-              long int l;
-              char c[sizeof (long int)];
-            } u;
-            u.l = 1;
-            return u.c[sizeof (long int) - 1] == 1;
-          
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-  ac_cv_c_bigendian=no
-else
-  ac_cv_c_bigendian=yes
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-    fi
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_bigendian" >&5
-$as_echo "$ac_cv_c_bigendian" >&6; }
- case $ac_cv_c_bigendian in #(
-   yes)
-     $as_echo "@%:@define WORDS_BIGENDIAN 1" >>confdefs.h
-;; #(
-   no)
-      ;; #(
-   universal)
-       
-$as_echo "@%:@define AC_APPLE_UNIVERSAL_BUILD 1" >>confdefs.h
-
-     ;; #(
-   *)
-     as_fn_error $? "unknown endianness
- presetting ac_cv_c_bigendian=no (or yes) will help" "$LINENO" 5 ;;
- esac
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for preprocessor stringizing operator" >&5
-$as_echo_n "checking for preprocessor stringizing operator... " >&6; }
-if ${ac_cv_c_stringize+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-@%:@define x(y) #y
-
-char *s = x(teststring);
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "@%:@teststring" >/dev/null 2>&1; then :
-  ac_cv_c_stringize=no
-else
-  ac_cv_c_stringize=yes
-fi
-rm -f conftest*
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_stringize" >&5
-$as_echo "$ac_cv_c_stringize" >&6; }
-if test $ac_cv_c_stringize = yes; then
-  
-$as_echo "@%:@define HAVE_STRINGIZE 1" >>confdefs.h
-
-fi
-
-
-    
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for long double with more range or precision than double" >&5
-$as_echo_n "checking for long double with more range or precision than double... " >&6; }
-if ${ac_cv_type_long_double_wider+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <float.h>
-           long double const a[] =
-             {
-                0.0L, DBL_MIN, DBL_MAX, DBL_EPSILON,
-                LDBL_MIN, LDBL_MAX, LDBL_EPSILON
-             };
-           long double
-           f (long double x)
-           {
-              return ((x + (unsigned long int) 10) * (-1 / x) + a[0]
-                       + (x ? f (x) : 'c'));
-           }
-         
-int
-main ()
-{
-static int test_array @<:@1 - 2 * !((0 < ((DBL_MAX_EXP < LDBL_MAX_EXP)
-                  + (DBL_MANT_DIG < LDBL_MANT_DIG)
-                  - (LDBL_MAX_EXP < DBL_MAX_EXP)
-                  - (LDBL_MANT_DIG < DBL_MANT_DIG)))
-           && (int) LDBL_EPSILON == 0
-         )@:>@;
-test_array @<:@0@:>@ = 0
-
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_cv_type_long_double_wider=yes
-else
-  ac_cv_type_long_double_wider=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_type_long_double_wider" >&5
-$as_echo "$ac_cv_type_long_double_wider" >&6; }
-  if test $ac_cv_type_long_double_wider = yes; then
-    
-$as_echo "@%:@define HAVE_LONG_DOUBLE_WIDER 1" >>confdefs.h
-
-  fi
-
-    ac_cv_c_long_double=$ac_cv_type_long_double_wider
-    if test $ac_cv_c_long_double = yes; then
-      
-$as_echo "@%:@define HAVE_LONG_DOUBLE 1" >>confdefs.h
-
-    fi
-  
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for function prototypes" >&5
-$as_echo_n "checking for function prototypes... " >&6; }
-if test "$ac_cv_prog_cc_c89" != no; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-  
-$as_echo "@%:@define PROTOTYPES 1" >>confdefs.h
-
-  
-$as_echo "@%:@define __PROTOTYPES 1" >>confdefs.h
-
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether char is unsigned" >&5
-$as_echo_n "checking whether char is unsigned... " >&6; }
-if ${ac_cv_c_char_unsigned+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-$ac_includes_default
-int
-main ()
-{
-static int test_array @<:@1 - 2 * !(((char) -1) < 0)@:>@;
-test_array @<:@0@:>@ = 0
-
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_cv_c_char_unsigned=no
-else
-  ac_cv_c_char_unsigned=yes
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_char_unsigned" >&5
-$as_echo "$ac_cv_c_char_unsigned" >&6; }
-if test $ac_cv_c_char_unsigned = yes && test "$GCC" != yes; then
-  $as_echo "@%:@define __CHAR_UNSIGNED__ 1" >>confdefs.h
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for working volatile" >&5
-$as_echo_n "checking for working volatile... " >&6; }
-if ${ac_cv_c_volatile+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-int
-main ()
-{
-
-volatile int x;
-int * volatile y = (int *) 0;
-return !x && !y;
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_cv_c_volatile=yes
-else
-  ac_cv_c_volatile=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_volatile" >&5
-$as_echo "$ac_cv_c_volatile" >&6; }
-if test $ac_cv_c_volatile = no; then
-  
-$as_echo "@%:@define volatile /**/" >>confdefs.h
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for C/C++ restrict keyword" >&5
-$as_echo_n "checking for C/C++ restrict keyword... " >&6; }
-if ${ac_cv_c_restrict+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_cv_c_restrict=no
-   # The order here caters to the fact that C++ does not require restrict.
-   for ac_kw in __restrict __restrict__ _Restrict restrict; do
-     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-typedef int * int_ptr;
-       int foo (int_ptr $ac_kw ip) {
-       return ip[0];
-       }
-int
-main ()
-{
-int s[1];
-       int * $ac_kw t = s;
-       t[0] = 0;
-       return foo(t)
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_cv_c_restrict=$ac_kw
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-     test "$ac_cv_c_restrict" != no && break
-   done
-  
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_restrict" >&5
-$as_echo "$ac_cv_c_restrict" >&6; }
- case $ac_cv_c_restrict in
-   restrict) ;;
-   no) $as_echo "@%:@define restrict /**/" >>confdefs.h
- ;;
-   *)  cat >>confdefs.h <<_ACEOF
-@%:@define restrict $ac_cv_c_restrict
-_ACEOF
- ;;
- esac
-
-
-
-        MKINSTALLDIRS=
-  if test -n "$ac_aux_dir"; then
-    case "$ac_aux_dir" in
-      /*) MKINSTALLDIRS="$ac_aux_dir/mkinstalldirs" ;;
-      *) MKINSTALLDIRS="\$(top_builddir)/$ac_aux_dir/mkinstalldirs" ;;
-    esac
-  fi
-  if test -z "$MKINSTALLDIRS"; then
-    MKINSTALLDIRS="\$(top_srcdir)/mkinstalldirs"
-  fi
-  
-
-
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether NLS is requested" >&5
-$as_echo_n "checking whether NLS is requested... " >&6; }
-    @%:@ Check whether --enable-nls was given.
-if test "${enable_nls+set}" = set; then :
-  enableval=$enable_nls; USE_NLS=$enableval
-else
-  USE_NLS=yes
-fi
-
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $USE_NLS" >&5
-$as_echo "$USE_NLS" >&6; }
-  
-
-
-        
-    
-        
-# Prepare PATH_SEPARATOR.
-# The user is always right.
-if test "${PATH_SEPARATOR+set}" != set; then
-  echo "#! /bin/sh" >conf$$.sh
-  echo  "exit 0"   >>conf$$.sh
-  chmod +x conf$$.sh
-  if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then
-    PATH_SEPARATOR=';'
-  else
-    PATH_SEPARATOR=:
-  fi
-  rm -f conf$$.sh
-fi
-
-# Find out how to test for executable files. Don't use a zero-byte file,
-# as systems may use methods other than mode bits to determine executability.
-cat >conf$$.file <<_ASEOF
-#! /bin/sh
-exit 0
-_ASEOF
-chmod +x conf$$.file
-if test -x conf$$.file >/dev/null 2>&1; then
-  ac_executable_p="test -x"
-else
-  ac_executable_p="test -f"
-fi
-rm -f conf$$.file
-
-# Extract the first word of "msgfmt", so it can be a program name with args.
-set dummy msgfmt; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_MSGFMT+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  case "$MSGFMT" in
-  [\\/]* | ?:[\\/]*)
-    ac_cv_path_MSGFMT="$MSGFMT" # Let the user override the test with a path.
-    ;;
-  *)
-    ac_save_IFS="$IFS"; IFS=$PATH_SEPARATOR
-    for ac_dir in $PATH; do
-      IFS="$ac_save_IFS"
-      test -z "$ac_dir" && ac_dir=.
-      for ac_exec_ext in '' $ac_executable_extensions; do
-        if $ac_executable_p "$ac_dir/$ac_word$ac_exec_ext"; then
-          if $ac_dir/$ac_word --statistics /dev/null >/dev/null 2>&1 &&
-     (if $ac_dir/$ac_word --statistics /dev/null 2>&1 >/dev/null | grep usage >/dev/null; then exit 1; else exit 0; fi); then
-            ac_cv_path_MSGFMT="$ac_dir/$ac_word$ac_exec_ext"
-            break 2
-          fi
-        fi
-      done
-    done
-    IFS="$ac_save_IFS"
-  test -z "$ac_cv_path_MSGFMT" && ac_cv_path_MSGFMT=":"
-    ;;
-esac
-fi
-MSGFMT="$ac_cv_path_MSGFMT"
-if test "$MSGFMT" != ":"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MSGFMT" >&5
-$as_echo "$MSGFMT" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-  # Extract the first word of "gmsgfmt", so it can be a program name with args.
-set dummy gmsgfmt; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_GMSGFMT+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  case $GMSGFMT in
-  [\\/]* | ?:[\\/]*)
-  ac_cv_path_GMSGFMT="$GMSGFMT" # 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 { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_path_GMSGFMT="$as_dir/$ac_word$ac_exec_ext"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-  test -z "$ac_cv_path_GMSGFMT" && ac_cv_path_GMSGFMT="$MSGFMT"
-  ;;
-esac
-fi
-GMSGFMT=$ac_cv_path_GMSGFMT
-if test -n "$GMSGFMT"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $GMSGFMT" >&5
-$as_echo "$GMSGFMT" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-
-        
-# Prepare PATH_SEPARATOR.
-# The user is always right.
-if test "${PATH_SEPARATOR+set}" != set; then
-  echo "#! /bin/sh" >conf$$.sh
-  echo  "exit 0"   >>conf$$.sh
-  chmod +x conf$$.sh
-  if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then
-    PATH_SEPARATOR=';'
-  else
-    PATH_SEPARATOR=:
-  fi
-  rm -f conf$$.sh
-fi
-
-# Find out how to test for executable files. Don't use a zero-byte file,
-# as systems may use methods other than mode bits to determine executability.
-cat >conf$$.file <<_ASEOF
-#! /bin/sh
-exit 0
-_ASEOF
-chmod +x conf$$.file
-if test -x conf$$.file >/dev/null 2>&1; then
-  ac_executable_p="test -x"
-else
-  ac_executable_p="test -f"
-fi
-rm -f conf$$.file
-
-# Extract the first word of "xgettext", so it can be a program name with args.
-set dummy xgettext; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_XGETTEXT+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  case "$XGETTEXT" in
-  [\\/]* | ?:[\\/]*)
-    ac_cv_path_XGETTEXT="$XGETTEXT" # Let the user override the test with a path.
-    ;;
-  *)
-    ac_save_IFS="$IFS"; IFS=$PATH_SEPARATOR
-    for ac_dir in $PATH; do
-      IFS="$ac_save_IFS"
-      test -z "$ac_dir" && ac_dir=.
-      for ac_exec_ext in '' $ac_executable_extensions; do
-        if $ac_executable_p "$ac_dir/$ac_word$ac_exec_ext"; then
-          if $ac_dir/$ac_word --omit-header --copyright-holder= --msgid-bugs-address= /dev/null >/dev/null 2>&1 &&
-     (if $ac_dir/$ac_word --omit-header --copyright-holder= --msgid-bugs-address= /dev/null 2>&1 >/dev/null | grep usage >/dev/null; then exit 1; else exit 0; fi); then
-            ac_cv_path_XGETTEXT="$ac_dir/$ac_word$ac_exec_ext"
-            break 2
-          fi
-        fi
-      done
-    done
-    IFS="$ac_save_IFS"
-  test -z "$ac_cv_path_XGETTEXT" && ac_cv_path_XGETTEXT=":"
-    ;;
-esac
-fi
-XGETTEXT="$ac_cv_path_XGETTEXT"
-if test "$XGETTEXT" != ":"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $XGETTEXT" >&5
-$as_echo "$XGETTEXT" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-    rm -f messages.po
-
-    
-# Prepare PATH_SEPARATOR.
-# The user is always right.
-if test "${PATH_SEPARATOR+set}" != set; then
-  echo "#! /bin/sh" >conf$$.sh
-  echo  "exit 0"   >>conf$$.sh
-  chmod +x conf$$.sh
-  if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then
-    PATH_SEPARATOR=';'
-  else
-    PATH_SEPARATOR=:
-  fi
-  rm -f conf$$.sh
-fi
-
-# Find out how to test for executable files. Don't use a zero-byte file,
-# as systems may use methods other than mode bits to determine executability.
-cat >conf$$.file <<_ASEOF
-#! /bin/sh
-exit 0
-_ASEOF
-chmod +x conf$$.file
-if test -x conf$$.file >/dev/null 2>&1; then
-  ac_executable_p="test -x"
-else
-  ac_executable_p="test -f"
-fi
-rm -f conf$$.file
-
-# Extract the first word of "msgmerge", so it can be a program name with args.
-set dummy msgmerge; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_MSGMERGE+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  case "$MSGMERGE" in
-  [\\/]* | ?:[\\/]*)
-    ac_cv_path_MSGMERGE="$MSGMERGE" # Let the user override the test with a path.
-    ;;
-  *)
-    ac_save_IFS="$IFS"; IFS=$PATH_SEPARATOR
-    for ac_dir in $PATH; do
-      IFS="$ac_save_IFS"
-      test -z "$ac_dir" && ac_dir=.
-      for ac_exec_ext in '' $ac_executable_extensions; do
-        if $ac_executable_p "$ac_dir/$ac_word$ac_exec_ext"; then
-          if $ac_dir/$ac_word --update -q /dev/null /dev/null >/dev/null 2>&1; then
-            ac_cv_path_MSGMERGE="$ac_dir/$ac_word$ac_exec_ext"
-            break 2
-          fi
-        fi
-      done
-    done
-    IFS="$ac_save_IFS"
-  test -z "$ac_cv_path_MSGMERGE" && ac_cv_path_MSGMERGE=":"
-    ;;
-esac
-fi
-MSGMERGE="$ac_cv_path_MSGMERGE"
-if test "$MSGMERGE" != ":"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MSGMERGE" >&5
-$as_echo "$MSGMERGE" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-      if test "$GMSGFMT" != ":"; then
-            if $GMSGFMT --statistics /dev/null >/dev/null 2>&1 &&
-       (if $GMSGFMT --statistics /dev/null 2>&1 >/dev/null | grep usage >/dev/null; then exit 1; else exit 0; fi); then
-      : ;
-    else
-      GMSGFMT=`echo "$GMSGFMT" | sed -e 's,^.*/,,'`
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: found $GMSGFMT program is not GNU msgfmt; ignore it" >&5
-$as_echo "found $GMSGFMT program is not GNU msgfmt; ignore it" >&6; }
-      GMSGFMT=":"
-    fi
-  fi
-
-      if test "$XGETTEXT" != ":"; then
-            if $XGETTEXT --omit-header --copyright-holder= --msgid-bugs-address= /dev/null >/dev/null 2>&1 &&
-       (if $XGETTEXT --omit-header --copyright-holder= --msgid-bugs-address= /dev/null 2>&1 >/dev/null | grep usage >/dev/null; then exit 1; else exit 0; fi); then
-      : ;
-    else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: found xgettext program is not GNU xgettext; ignore it" >&5
-$as_echo "found xgettext program is not GNU xgettext; ignore it" >&6; }
-      XGETTEXT=":"
-    fi
-        rm -f messages.po
-  fi
-
-  ac_config_commands="$ac_config_commands default-1"
-
-
-ac_fn_c_check_type "$LINENO" "off_t" "ac_cv_type_off_t" "$ac_includes_default"
-if test "x$ac_cv_type_off_t" = xyes; then :
-  
-else
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define off_t long int
-_ACEOF
-
-fi
-
-ac_fn_c_check_type "$LINENO" "size_t" "ac_cv_type_size_t" "$ac_includes_default"
-if test "x$ac_cv_type_size_t" = xyes; then :
-  
-else
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define size_t unsigned int
-_ACEOF
-
-fi
-
-# The Ultrix 4.2 mips builtin alloca declared by alloca.h only works
-# for constant arguments.  Useless!
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for working alloca.h" >&5
-$as_echo_n "checking for working alloca.h... " >&6; }
-if ${ac_cv_working_alloca_h+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-@%:@include <alloca.h>
-int
-main ()
-{
-char *p = (char *) alloca (2 * sizeof (int));
-                         if (p) return 0;
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  ac_cv_working_alloca_h=yes
-else
-  ac_cv_working_alloca_h=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_working_alloca_h" >&5
-$as_echo "$ac_cv_working_alloca_h" >&6; }
-if test $ac_cv_working_alloca_h = yes; then
-  
-$as_echo "@%:@define HAVE_ALLOCA_H 1" >>confdefs.h
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for alloca" >&5
-$as_echo_n "checking for alloca... " >&6; }
-if ${ac_cv_func_alloca_works+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#ifdef __GNUC__
-# define alloca __builtin_alloca
-#else
-# ifdef _MSC_VER
-#  include <malloc.h>
-#  define alloca _alloca
-# else
-#  ifdef HAVE_ALLOCA_H
-#   include <alloca.h>
-#  else
-#   ifdef _AIX
- #pragma alloca
-#   else
-#    ifndef alloca /* predefined by HP cc +Olibcalls */
-void *alloca (size_t);
-#    endif
-#   endif
-#  endif
-# endif
-#endif
-
-int
-main ()
-{
-char *p = (char *) alloca (1);
-                                   if (p) return 0;
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  ac_cv_func_alloca_works=yes
-else
-  ac_cv_func_alloca_works=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_func_alloca_works" >&5
-$as_echo "$ac_cv_func_alloca_works" >&6; }
-
-if test $ac_cv_func_alloca_works = yes; then
-  
-$as_echo "@%:@define HAVE_ALLOCA 1" >>confdefs.h
-
-else
-  # The SVR3 libPW and SVR4 libucb both contain incompatible functions
-# that cause trouble.  Some versions do not even contain alloca or
-# contain a buggy version.  If you still want to use their alloca,
-# use ar to extract alloca.o from them instead of compiling alloca.c.
-
-ALLOCA=\${LIBOBJDIR}alloca.$ac_objext
-
-$as_echo "@%:@define C_ALLOCA 1" >>confdefs.h
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether \`alloca.c' needs Cray hooks" >&5
-$as_echo_n "checking whether \`alloca.c' needs Cray hooks... " >&6; }
-if ${ac_cv_os_cray+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#if defined CRAY && ! defined CRAY2
-webecray
-#else
-wenotbecray
-#endif
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "webecray" >/dev/null 2>&1; then :
-  ac_cv_os_cray=yes
-else
-  ac_cv_os_cray=no
-fi
-rm -f conftest*
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_os_cray" >&5
-$as_echo "$ac_cv_os_cray" >&6; }
-if test $ac_cv_os_cray = yes; then
-  for ac_func in _getb67 GETB67 getb67; do
-    as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
-ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
-if eval test \"x\$"$as_ac_var"\" = x"yes"; then :
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define CRAY_STACKSEG_END $ac_func
-_ACEOF
-
-    break
-fi
-
-  done
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking stack direction for C alloca" >&5
-$as_echo_n "checking stack direction for C alloca... " >&6; }
-if ${ac_cv_c_stack_direction+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test "$cross_compiling" = yes; then :
-  ac_cv_c_stack_direction=0
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-$ac_includes_default
-int
-find_stack_direction ()
-{
-  static char *addr = 0;
-  auto char dummy;
-  if (addr == 0)
-    {
-      addr = &dummy;
-      return find_stack_direction ();
-    }
-  else
-    return (&dummy > addr) ? 1 : -1;
-}
-
-int
-main ()
-{
-  return find_stack_direction () < 0;
-}
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-  ac_cv_c_stack_direction=1
-else
-  ac_cv_c_stack_direction=-1
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_stack_direction" >&5
-$as_echo "$ac_cv_c_stack_direction" >&6; }
-cat >>confdefs.h <<_ACEOF
-@%:@define STACK_DIRECTION $ac_cv_c_stack_direction
-_ACEOF
-
-
-fi
-
-
-
-  
-  for ac_header in $ac_header_list
-do :
-  as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
-ac_fn_c_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default
-"
-if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-@%:@define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
-fi
-
-done
-
-  
-
-
-
-
-
-
-for ac_func in getpagesize
-do :
-  ac_fn_c_check_func "$LINENO" "getpagesize" "ac_cv_func_getpagesize"
-if test "x$ac_cv_func_getpagesize" = xyes; then :
-  cat >>confdefs.h <<_ACEOF
-@%:@define HAVE_GETPAGESIZE 1
-_ACEOF
-fi
-done
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for working mmap" >&5
-$as_echo_n "checking for working mmap... " >&6; }
-if ${ac_cv_func_mmap_fixed_mapped+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test "$cross_compiling" = yes; then :
-  ac_cv_func_mmap_fixed_mapped=no
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-$ac_includes_default
-/* malloc might have been renamed as rpl_malloc. */
-#undef malloc
-
-/* Thanks to Mike Haertel and Jim Avera for this test.
-   Here is a matrix of mmap possibilities:
-       mmap private not fixed
-       mmap private fixed at somewhere currently unmapped
-       mmap private fixed at somewhere already mapped
-       mmap shared not fixed
-       mmap shared fixed at somewhere currently unmapped
-       mmap shared fixed at somewhere already mapped
-   For private mappings, we should verify that changes cannot be read()
-   back from the file, nor mmap's back from the file at a different
-   address.  (There have been systems where private was not correctly
-   implemented like the infamous i386 svr4.0, and systems where the
-   VM page cache was not coherent with the file system buffer cache
-   like early versions of FreeBSD and possibly contemporary NetBSD.)
-   For shared mappings, we should conversely verify that changes get
-   propagated back to all the places they're supposed to be.
-
-   Grep wants private fixed already mapped.
-   The main things grep needs to know about mmap are:
-   * does it exist and is it safe to write into the mmap'd area
-   * how to use it (BSD variants)  */
-
-#include <fcntl.h>
-#include <sys/mman.h>
-
-#if !defined STDC_HEADERS && !defined HAVE_STDLIB_H
-char *malloc ();
-#endif
-
-/* This mess was copied from the GNU getpagesize.h.  */
-#ifndef HAVE_GETPAGESIZE
-# ifdef _SC_PAGESIZE
-#  define getpagesize() sysconf(_SC_PAGESIZE)
-# else /* no _SC_PAGESIZE */
-#  ifdef HAVE_SYS_PARAM_H
-#   include <sys/param.h>
-#   ifdef EXEC_PAGESIZE
-#    define getpagesize() EXEC_PAGESIZE
-#   else /* no EXEC_PAGESIZE */
-#    ifdef NBPG
-#     define getpagesize() NBPG * CLSIZE
-#     ifndef CLSIZE
-#      define CLSIZE 1
-#     endif /* no CLSIZE */
-#    else /* no NBPG */
-#     ifdef NBPC
-#      define getpagesize() NBPC
-#     else /* no NBPC */
-#      ifdef PAGESIZE
-#       define getpagesize() PAGESIZE
-#      endif /* PAGESIZE */
-#     endif /* no NBPC */
-#    endif /* no NBPG */
-#   endif /* no EXEC_PAGESIZE */
-#  else /* no HAVE_SYS_PARAM_H */
-#   define getpagesize() 8192  /* punt totally */
-#  endif /* no HAVE_SYS_PARAM_H */
-# endif /* no _SC_PAGESIZE */
-
-#endif /* no HAVE_GETPAGESIZE */
-
-int
-main ()
-{
-  char *data, *data2, *data3;
-  const char *cdata2;
-  int i, pagesize;
-  int fd, fd2;
-
-  pagesize = getpagesize ();
-
-  /* First, make a file with some known garbage in it. */
-  data = (char *) malloc (pagesize);
-  if (!data)
-    return 1;
-  for (i = 0; i < pagesize; ++i)
-    *(data + i) = rand ();
-  umask (0);
-  fd = creat ("conftest.mmap", 0600);
-  if (fd < 0)
-    return 2;
-  if (write (fd, data, pagesize) != pagesize)
-    return 3;
-  close (fd);
-
-  /* Next, check that the tail of a page is zero-filled.  File must have
-     non-zero length, otherwise we risk SIGBUS for entire page.  */
-  fd2 = open ("conftest.txt", O_RDWR | O_CREAT | O_TRUNC, 0600);
-  if (fd2 < 0)
-    return 4;
-  cdata2 = "";
-  if (write (fd2, cdata2, 1) != 1)
-    return 5;
-  data2 = (char *) mmap (0, pagesize, PROT_READ | PROT_WRITE, MAP_SHARED, fd2, 0L);
-  if (data2 == MAP_FAILED)
-    return 6;
-  for (i = 0; i < pagesize; ++i)
-    if (*(data2 + i))
-      return 7;
-  close (fd2);
-  if (munmap (data2, pagesize))
-    return 8;
-
-  /* Next, try to mmap the file at a fixed address which already has
-     something else allocated at it.  If we can, also make sure that
-     we see the same garbage.  */
-  fd = open ("conftest.mmap", O_RDWR);
-  if (fd < 0)
-    return 9;
-  if (data2 != mmap (data2, pagesize, PROT_READ | PROT_WRITE,
-                    MAP_PRIVATE | MAP_FIXED, fd, 0L))
-    return 10;
-  for (i = 0; i < pagesize; ++i)
-    if (*(data + i) != *(data2 + i))
-      return 11;
-
-  /* Finally, make sure that changes to the mapped area do not
-     percolate back to the file as seen by read().  (This is a bug on
-     some variants of i386 svr4.0.)  */
-  for (i = 0; i < pagesize; ++i)
-    *(data2 + i) = *(data2 + i) + 1;
-  data3 = (char *) malloc (pagesize);
-  if (!data3)
-    return 12;
-  if (read (fd, data3, pagesize) != pagesize)
-    return 13;
-  for (i = 0; i < pagesize; ++i)
-    if (*(data + i) != *(data3 + i))
-      return 14;
-  close (fd);
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-  ac_cv_func_mmap_fixed_mapped=yes
-else
-  ac_cv_func_mmap_fixed_mapped=no
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_func_mmap_fixed_mapped" >&5
-$as_echo "$ac_cv_func_mmap_fixed_mapped" >&6; }
-if test $ac_cv_func_mmap_fixed_mapped = yes; then
-  
-$as_echo "@%:@define HAVE_MMAP 1" >>confdefs.h
-
-fi
-rm -f conftest.mmap conftest.txt
-
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are using the GNU C Library 2.1 or newer" >&5
-$as_echo_n "checking whether we are using the GNU C Library 2.1 or newer... " >&6; }
-if ${ac_cv_gnu_library_2_1+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#include <features.h>
-#ifdef __GNU_LIBRARY__
- #if (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 1) || (__GLIBC__ > 2)
-  Lucky GNU user
- #endif
-#endif
-       
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "Lucky GNU user" >/dev/null 2>&1; then :
-  ac_cv_gnu_library_2_1=yes
-else
-  ac_cv_gnu_library_2_1=no
-fi
-rm -f conftest*
-
-      
-    
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_gnu_library_2_1" >&5
-$as_echo "$ac_cv_gnu_library_2_1" >&6; }
-    
-    GLIBC21="$ac_cv_gnu_library_2_1"
-  
-
-
-    
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether integer division by zero raises SIGFPE" >&5
-$as_echo_n "checking whether integer division by zero raises SIGFPE... " >&6; }
-if ${gt_cv_int_divbyzero_sigfpe+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  
-      if test "$cross_compiling" = yes; then :
-  
-          # Guess based on the CPU.
-          case "$host_cpu" in
-            alpha* | i3456786 | m68k | s390*)
-              gt_cv_int_divbyzero_sigfpe="guessing yes";;
-            *)
-              gt_cv_int_divbyzero_sigfpe="guessing no";;
-          esac
-        
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#include <stdlib.h>
-#include <signal.h>
-
-static void
-#ifdef __cplusplus
-sigfpe_handler (int sig)
-#else
-sigfpe_handler (sig) int sig;
-#endif
-{
-  /* Exit with code 0 if SIGFPE, with code 1 if any other signal.  */
-  exit (sig != SIGFPE);
-}
-
-int x = 1;
-int y = 0;
-int z;
-int nan;
-
-int main ()
-{
-  signal (SIGFPE, sigfpe_handler);
-/* IRIX and AIX (when "xlc -qcheck" is used) yield signal SIGTRAP.  */
-#if (defined (__sgi) || defined (_AIX)) && defined (SIGTRAP)
-  signal (SIGTRAP, sigfpe_handler);
-#endif
-/* Linux/SPARC yields signal SIGILL.  */
-#if defined (__sparc__) && defined (__linux__)
-  signal (SIGILL, sigfpe_handler);
-#endif
-
-  z = x / y;
-  nan = y / y;
-  exit (1);
-}
-
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-  gt_cv_int_divbyzero_sigfpe=yes
-else
-  gt_cv_int_divbyzero_sigfpe=no
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-    
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gt_cv_int_divbyzero_sigfpe" >&5
-$as_echo "$gt_cv_int_divbyzero_sigfpe" >&6; }
-  case "$gt_cv_int_divbyzero_sigfpe" in
-    *yes) value=1;;
-    *) value=0;;
-  esac
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define INTDIV0_RAISES_SIGFPE $value
-_ACEOF
-
-
-
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for inttypes.h" >&5
-$as_echo_n "checking for inttypes.h... " >&6; }
-if ${jm_ac_cv_header_inttypes_h+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <sys/types.h>
-#include <inttypes.h>
-int
-main ()
-{
-uintmax_t i = (uintmax_t) -1;
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  jm_ac_cv_header_inttypes_h=yes
-else
-  jm_ac_cv_header_inttypes_h=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $jm_ac_cv_header_inttypes_h" >&5
-$as_echo "$jm_ac_cv_header_inttypes_h" >&6; }
-  if test $jm_ac_cv_header_inttypes_h = yes; then
-    
-cat >>confdefs.h <<_ACEOF
-@%:@define HAVE_INTTYPES_H_WITH_UINTMAX 1
-_ACEOF
-
-  fi
-
-
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdint.h" >&5
-$as_echo_n "checking for stdint.h... " >&6; }
-if ${jm_ac_cv_header_stdint_h+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <sys/types.h>
-#include <stdint.h>
-int
-main ()
-{
-uintmax_t i = (uintmax_t) -1;
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  jm_ac_cv_header_stdint_h=yes
-else
-  jm_ac_cv_header_stdint_h=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $jm_ac_cv_header_stdint_h" >&5
-$as_echo "$jm_ac_cv_header_stdint_h" >&6; }
-  if test $jm_ac_cv_header_stdint_h = yes; then
-    
-cat >>confdefs.h <<_ACEOF
-@%:@define HAVE_STDINT_H_WITH_UINTMAX 1
-_ACEOF
-
-  fi
-
-
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for unsigned long long" >&5
-$as_echo_n "checking for unsigned long long... " >&6; }
-if ${ac_cv_type_unsigned_long_long+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-unsigned long long ull = 1; int i = 63;
-int
-main ()
-{
-unsigned long long ullmax = (unsigned long long) -1;
-     return ull << i | ull >> i | ullmax / ull | ullmax % ull;
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  ac_cv_type_unsigned_long_long=yes
-else
-  ac_cv_type_unsigned_long_long=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_type_unsigned_long_long" >&5
-$as_echo "$ac_cv_type_unsigned_long_long" >&6; }
-  if test $ac_cv_type_unsigned_long_long = yes; then
-    
-$as_echo "@%:@define HAVE_UNSIGNED_LONG_LONG 1" >>confdefs.h
-
-  fi
-
-
-  
-  
-  if test $jm_ac_cv_header_inttypes_h = no && test $jm_ac_cv_header_stdint_h = no; then
-    
-    test $ac_cv_type_unsigned_long_long = yes \
-      && ac_type='unsigned long long' \
-      || ac_type='unsigned long'
-    
-cat >>confdefs.h <<_ACEOF
-@%:@define uintmax_t $ac_type
-_ACEOF
-
-  else
-    
-$as_echo "@%:@define HAVE_UINTMAX_T 1" >>confdefs.h
-
-  fi
-
-
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for inttypes.h" >&5
-$as_echo_n "checking for inttypes.h... " >&6; }
-if ${gt_cv_header_inttypes_h+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <sys/types.h>
-#include <inttypes.h>
-int
-main ()
-{
-
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  gt_cv_header_inttypes_h=yes
-else
-  gt_cv_header_inttypes_h=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gt_cv_header_inttypes_h" >&5
-$as_echo "$gt_cv_header_inttypes_h" >&6; }
-  if test $gt_cv_header_inttypes_h = yes; then
-    
-cat >>confdefs.h <<_ACEOF
-@%:@define HAVE_INTTYPES_H 1
-_ACEOF
-
-  fi
-
-
-  
-  if test $gt_cv_header_inttypes_h = yes; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the inttypes.h PRIxNN macros are broken" >&5
-$as_echo_n "checking whether the inttypes.h PRIxNN macros are broken... " >&6; }
-if ${gt_cv_inttypes_pri_broken+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  
-        cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <inttypes.h>
-#ifdef PRId32
-char *p = PRId32;
-#endif
-
-int
-main ()
-{
-
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  gt_cv_inttypes_pri_broken=no
-else
-  gt_cv_inttypes_pri_broken=yes
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-      
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gt_cv_inttypes_pri_broken" >&5
-$as_echo "$gt_cv_inttypes_pri_broken" >&6; }
-  fi
-  if test "$gt_cv_inttypes_pri_broken" = yes; then
-    
-cat >>confdefs.h <<_ACEOF
-@%:@define PRI_MACROS_BROKEN 1
-_ACEOF
-
-  fi
-
-
-      if test "X$prefix" = "XNONE"; then
-    acl_final_prefix="$ac_default_prefix"
-  else
-    acl_final_prefix="$prefix"
-  fi
-  if test "X$exec_prefix" = "XNONE"; then
-    acl_final_exec_prefix='${prefix}'
-  else
-    acl_final_exec_prefix="$exec_prefix"
-  fi
-  acl_save_prefix="$prefix"
-  prefix="$acl_final_prefix"
-  eval acl_final_exec_prefix=\"$acl_final_exec_prefix\"
-  prefix="$acl_save_prefix"
-
-
-@%:@ Check whether --with-gnu-ld was given.
-if test "${with_gnu_ld+set}" = set; then :
-  withval=$with_gnu_ld; test "$withval" = no || with_gnu_ld=yes
-else
-  with_gnu_ld=no
-fi
-
-# Prepare PATH_SEPARATOR.
-# The user is always right.
-if test "${PATH_SEPARATOR+set}" != set; then
-  echo "#! /bin/sh" >conf$$.sh
-  echo  "exit 0"   >>conf$$.sh
-  chmod +x conf$$.sh
-  if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then
-    PATH_SEPARATOR=';'
-  else
-    PATH_SEPARATOR=:
-  fi
-  rm -f conf$$.sh
-fi
-ac_prog=ld
-if test "$GCC" = yes; then
-  # Check if gcc -print-prog-name=ld gives a path.
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ld used by GCC" >&5
-$as_echo_n "checking for ld used by GCC... " >&6; }
-  case $host in
-  *-*-mingw*)
-    # gcc leaves a trailing carriage return which upsets mingw
-    ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;;
-  *)
-    ac_prog=`($CC -print-prog-name=ld) 2>&5` ;;
-  esac
-  case $ac_prog in
-    # Accept absolute paths.
-    [\\/]* | [A-Za-z]:[\\/]*)
-      re_direlt='/[^/][^/]*/\.\./'
-      # Canonicalize the path of ld
-      ac_prog=`echo $ac_prog| sed 's%\\\\%/%g'`
-      while echo $ac_prog | grep "$re_direlt" > /dev/null 2>&1; do
-       ac_prog=`echo $ac_prog| sed "s%$re_direlt%/%"`
-      done
-      test -z "$LD" && LD="$ac_prog"
-      ;;
-  "")
-    # If it fails, then pretend we aren't using GCC.
-    ac_prog=ld
-    ;;
-  *)
-    # If it is relative, then search for the first ld in PATH.
-    with_gnu_ld=unknown
-    ;;
-  esac
-elif test "$with_gnu_ld" = yes; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for GNU ld" >&5
-$as_echo_n "checking for GNU ld... " >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for non-GNU ld" >&5
-$as_echo_n "checking for non-GNU ld... " >&6; }
-fi
-if ${acl_cv_path_LD+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test -z "$LD"; then
-  IFS="${IFS=  }"; ac_save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR-:}"
-  for ac_dir in $PATH; do
-    test -z "$ac_dir" && ac_dir=.
-    if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then
-      acl_cv_path_LD="$ac_dir/$ac_prog"
-      # Check to see if the program is GNU ld.  I'd rather use --version,
-      # but apparently some GNU ld's only accept -v.
-      # Break only if it was the GNU/non-GNU ld that we prefer.
-      if "$acl_cv_path_LD" -v 2>&1 < /dev/null | egrep '(GNU|with BFD)' > /dev/null; then
-       test "$with_gnu_ld" != no && break
-      else
-       test "$with_gnu_ld" != yes && break
-      fi
-    fi
-  done
-  IFS="$ac_save_ifs"
-else
-  acl_cv_path_LD="$LD" # Let the user override the test with a path.
-fi
-fi
-
-LD="$acl_cv_path_LD"
-if test -n "$LD"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LD" >&5
-$as_echo "$LD" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-test -z "$LD" && as_fn_error $? "no acceptable ld found in \$PATH" "$LINENO" 5
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if the linker ($LD) is GNU ld" >&5
-$as_echo_n "checking if the linker ($LD) is GNU ld... " >&6; }
-if ${acl_cv_prog_gnu_ld+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  # I'd rather use --version here, but apparently some GNU ld's only accept -v.
-if $LD -v 2>&1 </dev/null | egrep '(GNU|with BFD)' 1>&5; then
-  acl_cv_prog_gnu_ld=yes
-else
-  acl_cv_prog_gnu_ld=no
-fi
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $acl_cv_prog_gnu_ld" >&5
-$as_echo "$acl_cv_prog_gnu_ld" >&6; }
-with_gnu_ld=$acl_cv_prog_gnu_ld
-
-
-
-                                                { $as_echo "$as_me:${as_lineno-$LINENO}: checking for shared library run path origin" >&5
-$as_echo_n "checking for shared library run path origin... " >&6; }
-if ${acl_cv_rpath+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  
-    CC="$CC" GCC="$GCC" LDFLAGS="$LDFLAGS" LD="$LD" with_gnu_ld="$with_gnu_ld" \
-    ${CONFIG_SHELL-/bin/sh} "$ac_aux_dir/config.rpath" "$host" > conftest.sh
-    . ./conftest.sh
-    rm -f ./conftest.sh
-    acl_cv_rpath=done
-  
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $acl_cv_rpath" >&5
-$as_echo "$acl_cv_rpath" >&6; }
-  wl="$acl_cv_wl"
-  libext="$acl_cv_libext"
-  shlibext="$acl_cv_shlibext"
-  hardcode_libdir_flag_spec="$acl_cv_hardcode_libdir_flag_spec"
-  hardcode_libdir_separator="$acl_cv_hardcode_libdir_separator"
-  hardcode_direct="$acl_cv_hardcode_direct"
-  hardcode_minus_L="$acl_cv_hardcode_minus_L"
-    @%:@ Check whether --enable-rpath was given.
-if test "${enable_rpath+set}" = set; then :
-  enableval=$enable_rpath; :
-else
-  enable_rpath=yes
-fi
-
-
-
-    
-  
-
-      
-  
-    use_additional=yes
-  
-  acl_save_prefix="$prefix"
-  prefix="$acl_final_prefix"
-  acl_save_exec_prefix="$exec_prefix"
-  exec_prefix="$acl_final_exec_prefix"
-  
-    eval additional_includedir=\"$includedir\"
-    eval additional_libdir=\"$libdir\"
-  
-  exec_prefix="$acl_save_exec_prefix"
-  prefix="$acl_save_prefix"
-
-  
-@%:@ Check whether --with-libiconv-prefix was given.
-if test "${with_libiconv_prefix+set}" = set; then :
-  withval=$with_libiconv_prefix; 
-    if test "X$withval" = "Xno"; then
-      use_additional=no
-    else
-      if test "X$withval" = "X"; then
-        
-  acl_save_prefix="$prefix"
-  prefix="$acl_final_prefix"
-  acl_save_exec_prefix="$exec_prefix"
-  exec_prefix="$acl_final_exec_prefix"
-  
-          eval additional_includedir=\"$includedir\"
-          eval additional_libdir=\"$libdir\"
-        
-  exec_prefix="$acl_save_exec_prefix"
-  prefix="$acl_save_prefix"
-
-      else
-        additional_includedir="$withval/include"
-        additional_libdir="$withval/lib"
-      fi
-    fi
-
-fi
-
-      LIBICONV=
-  LTLIBICONV=
-  INCICONV=
-  rpathdirs=
-  ltrpathdirs=
-  names_already_handled=
-  names_next_round='iconv '
-  while test -n "$names_next_round"; do
-    names_this_round="$names_next_round"
-    names_next_round=
-    for name in $names_this_round; do
-      already_handled=
-      for n in $names_already_handled; do
-        if test "$n" = "$name"; then
-          already_handled=yes
-          break
-        fi
-      done
-      if test -z "$already_handled"; then
-        names_already_handled="$names_already_handled $name"
-                        uppername=`echo "$name" | sed -e 'y|abcdefghijklmnopqrstuvwxyz./-|ABCDEFGHIJKLMNOPQRSTUVWXYZ___|'`
-        eval value=\"\$HAVE_LIB$uppername\"
-        if test -n "$value"; then
-          if test "$value" = yes; then
-            eval value=\"\$LIB$uppername\"
-            test -z "$value" || LIBICONV="${LIBICONV}${LIBICONV:+ }$value"
-            eval value=\"\$LTLIB$uppername\"
-            test -z "$value" || LTLIBICONV="${LTLIBICONV}${LTLIBICONV:+ }$value"
-          else
-                                    :
-          fi
-        else
-                              found_dir=
-          found_la=
-          found_so=
-          found_a=
-          if test $use_additional = yes; then
-            if test "X$prefer_shared" = "Xyes" && test -n "$shlibext" && test -f "$additional_libdir/lib$name.$shlibext"; then
-              found_dir="$additional_libdir"
-              found_so="$additional_libdir/lib$name.$shlibext"
-              if test -f "$additional_libdir/lib$name.la"; then
-                found_la="$additional_libdir/lib$name.la"
-              fi
-            else
-              if test -f "$additional_libdir/lib$name.$libext"; then
-                found_dir="$additional_libdir"
-                found_a="$additional_libdir/lib$name.$libext"
-                if test -f "$additional_libdir/lib$name.la"; then
-                  found_la="$additional_libdir/lib$name.la"
-                fi
-              fi
-            fi
-          fi
-          if test "X$found_dir" = "X"; then
-            for x in $LDFLAGS $LTLIBICONV; do
-              
-  acl_save_prefix="$prefix"
-  prefix="$acl_final_prefix"
-  acl_save_exec_prefix="$exec_prefix"
-  exec_prefix="$acl_final_exec_prefix"
-  eval x=\"$x\"
-  exec_prefix="$acl_save_exec_prefix"
-  prefix="$acl_save_prefix"
-
-              case "$x" in
-                -L*)
-                  dir=`echo "X$x" | sed -e 's/^X-L//'`
-                  if test "X$prefer_shared" = "Xyes" && test -n "$shlibext" && test -f "$dir/lib$name.$shlibext"; then
-                    found_dir="$dir"
-                    found_so="$dir/lib$name.$shlibext"
-                    if test -f "$dir/lib$name.la"; then
-                      found_la="$dir/lib$name.la"
-                    fi
-                  else
-                    if test -f "$dir/lib$name.$libext"; then
-                      found_dir="$dir"
-                      found_a="$dir/lib$name.$libext"
-                      if test -f "$dir/lib$name.la"; then
-                        found_la="$dir/lib$name.la"
-                      fi
-                    fi
-                  fi
-                  ;;
-              esac
-              if test "X$found_dir" != "X"; then
-                break
-              fi
-            done
-          fi
-          if test "X$found_dir" != "X"; then
-                        LTLIBICONV="${LTLIBICONV}${LTLIBICONV:+ }-L$found_dir -l$name"
-            if test "X$found_so" != "X"; then
-                                                        if test "$enable_rpath" = no || test "X$found_dir" = "X/usr/lib"; then
-                                LIBICONV="${LIBICONV}${LIBICONV:+ }$found_so"
-              else
-                                                                                haveit=
-                for x in $ltrpathdirs; do
-                  if test "X$x" = "X$found_dir"; then
-                    haveit=yes
-                    break
-                  fi
-                done
-                if test -z "$haveit"; then
-                  ltrpathdirs="$ltrpathdirs $found_dir"
-                fi
-                                if test "$hardcode_direct" = yes; then
-                                                      LIBICONV="${LIBICONV}${LIBICONV:+ }$found_so"
-                else
-                  if test -n "$hardcode_libdir_flag_spec" && test "$hardcode_minus_L" = no; then
-                                                            LIBICONV="${LIBICONV}${LIBICONV:+ }$found_so"
-                                                            haveit=
-                    for x in $rpathdirs; do
-                      if test "X$x" = "X$found_dir"; then
-                        haveit=yes
-                        break
-                      fi
-                    done
-                    if test -z "$haveit"; then
-                      rpathdirs="$rpathdirs $found_dir"
-                    fi
-                  else
-                                                                                haveit=
-                    for x in $LDFLAGS $LIBICONV; do
-                      
-  acl_save_prefix="$prefix"
-  prefix="$acl_final_prefix"
-  acl_save_exec_prefix="$exec_prefix"
-  exec_prefix="$acl_final_exec_prefix"
-  eval x=\"$x\"
-  exec_prefix="$acl_save_exec_prefix"
-  prefix="$acl_save_prefix"
-
-                      if test "X$x" = "X-L$found_dir"; then
-                        haveit=yes
-                        break
-                      fi
-                    done
-                    if test -z "$haveit"; then
-                      LIBICONV="${LIBICONV}${LIBICONV:+ }-L$found_dir"
-                    fi
-                    if test "$hardcode_minus_L" != no; then
-                                                                                        LIBICONV="${LIBICONV}${LIBICONV:+ }$found_so"
-                    else
-                                                                                                                                                                                LIBICONV="${LIBICONV}${LIBICONV:+ }-l$name"
-                    fi
-                  fi
-                fi
-              fi
-            else
-              if test "X$found_a" != "X"; then
-                                LIBICONV="${LIBICONV}${LIBICONV:+ }$found_a"
-              else
-                                                LIBICONV="${LIBICONV}${LIBICONV:+ }-L$found_dir -l$name"
-              fi
-            fi
-                        additional_includedir=
-            case "$found_dir" in
-              */lib | */lib/)
-                basedir=`echo "X$found_dir" | sed -e 's,^X,,' -e 's,/lib/*$,,'`
-                additional_includedir="$basedir/include"
-                ;;
-            esac
-            if test "X$additional_includedir" != "X"; then
-                                                                                                                if test "X$additional_includedir" != "X/usr/include"; then
-                haveit=
-                if test "X$additional_includedir" = "X/usr/local/include"; then
-                  if test -n "$GCC"; then
-                    case $host_os in
-                      linux*) haveit=yes;;
-                    esac
-                  fi
-                fi
-                if test -z "$haveit"; then
-                  for x in $CPPFLAGS $INCICONV; do
-                    
-  acl_save_prefix="$prefix"
-  prefix="$acl_final_prefix"
-  acl_save_exec_prefix="$exec_prefix"
-  exec_prefix="$acl_final_exec_prefix"
-  eval x=\"$x\"
-  exec_prefix="$acl_save_exec_prefix"
-  prefix="$acl_save_prefix"
-
-                    if test "X$x" = "X-I$additional_includedir"; then
-                      haveit=yes
-                      break
-                    fi
-                  done
-                  if test -z "$haveit"; then
-                    if test -d "$additional_includedir"; then
-                                            INCICONV="${INCICONV}${INCICONV:+ }-I$additional_includedir"
-                    fi
-                  fi
-                fi
-              fi
-            fi
-                        if test -n "$found_la"; then
-                                                        save_libdir="$libdir"
-              case "$found_la" in
-                */* | *\\*) . "$found_la" ;;
-                *) . "./$found_la" ;;
-              esac
-              libdir="$save_libdir"
-                            for dep in $dependency_libs; do
-                case "$dep" in
-                  -L*)
-                    additional_libdir=`echo "X$dep" | sed -e 's/^X-L//'`
-                                                                                                                                                                if test "X$additional_libdir" != "X/usr/lib"; then
-                      haveit=
-                      if test "X$additional_libdir" = "X/usr/local/lib"; then
-                        if test -n "$GCC"; then
-                          case $host_os in
-                            linux*) haveit=yes;;
-                          esac
-                        fi
-                      fi
-                      if test -z "$haveit"; then
-                        haveit=
-                        for x in $LDFLAGS $LIBICONV; do
-                          
-  acl_save_prefix="$prefix"
-  prefix="$acl_final_prefix"
-  acl_save_exec_prefix="$exec_prefix"
-  exec_prefix="$acl_final_exec_prefix"
-  eval x=\"$x\"
-  exec_prefix="$acl_save_exec_prefix"
-  prefix="$acl_save_prefix"
-
-                          if test "X$x" = "X-L$additional_libdir"; then
-                            haveit=yes
-                            break
-                          fi
-                        done
-                        if test -z "$haveit"; then
-                          if test -d "$additional_libdir"; then
-                                                        LIBICONV="${LIBICONV}${LIBICONV:+ }-L$additional_libdir"
-                          fi
-                        fi
-                        haveit=
-                        for x in $LDFLAGS $LTLIBICONV; do
-                          
-  acl_save_prefix="$prefix"
-  prefix="$acl_final_prefix"
-  acl_save_exec_prefix="$exec_prefix"
-  exec_prefix="$acl_final_exec_prefix"
-  eval x=\"$x\"
-  exec_prefix="$acl_save_exec_prefix"
-  prefix="$acl_save_prefix"
-
-                          if test "X$x" = "X-L$additional_libdir"; then
-                            haveit=yes
-                            break
-                          fi
-                        done
-                        if test -z "$haveit"; then
-                          if test -d "$additional_libdir"; then
-                                                        LTLIBICONV="${LTLIBICONV}${LTLIBICONV:+ }-L$additional_libdir"
-                          fi
-                        fi
-                      fi
-                    fi
-                    ;;
-                  -R*)
-                    dir=`echo "X$dep" | sed -e 's/^X-R//'`
-                    if test "$enable_rpath" != no; then
-                                                                  haveit=
-                      for x in $rpathdirs; do
-                        if test "X$x" = "X$dir"; then
-                          haveit=yes
-                          break
-                        fi
-                      done
-                      if test -z "$haveit"; then
-                        rpathdirs="$rpathdirs $dir"
-                      fi
-                                                                  haveit=
-                      for x in $ltrpathdirs; do
-                        if test "X$x" = "X$dir"; then
-                          haveit=yes
-                          break
-                        fi
-                      done
-                      if test -z "$haveit"; then
-                        ltrpathdirs="$ltrpathdirs $dir"
-                      fi
-                    fi
-                    ;;
-                  -l*)
-                                        names_next_round="$names_next_round "`echo "X$dep" | sed -e 's/^X-l//'`
-                    ;;
-                  *.la)
-                                                                                names_next_round="$names_next_round "`echo "X$dep" | sed -e 's,^X.*/,,' -e 's,^lib,,' -e 's,\.la$,,'`
-                    ;;
-                  *)
-                                        LIBICONV="${LIBICONV}${LIBICONV:+ }$dep"
-                    LTLIBICONV="${LTLIBICONV}${LTLIBICONV:+ }$dep"
-                    ;;
-                esac
-              done
-            fi
-          else
-                                                            LIBICONV="${LIBICONV}${LIBICONV:+ }-l$name"
-            LTLIBICONV="${LTLIBICONV}${LTLIBICONV:+ }-l$name"
-          fi
-        fi
-      fi
-    done
-  done
-  if test "X$rpathdirs" != "X"; then
-    if test -n "$hardcode_libdir_separator"; then
-                        alldirs=
-      for found_dir in $rpathdirs; do
-        alldirs="${alldirs}${alldirs:+$hardcode_libdir_separator}$found_dir"
-      done
-            acl_save_libdir="$libdir"
-      libdir="$alldirs"
-      eval flag=\"$hardcode_libdir_flag_spec\"
-      libdir="$acl_save_libdir"
-      LIBICONV="${LIBICONV}${LIBICONV:+ }$flag"
-    else
-            for found_dir in $rpathdirs; do
-        acl_save_libdir="$libdir"
-        libdir="$found_dir"
-        eval flag=\"$hardcode_libdir_flag_spec\"
-        libdir="$acl_save_libdir"
-        LIBICONV="${LIBICONV}${LIBICONV:+ }$flag"
-      done
-    fi
-  fi
-  if test "X$ltrpathdirs" != "X"; then
-            for found_dir in $ltrpathdirs; do
-      LTLIBICONV="${LTLIBICONV}${LTLIBICONV:+ }-R$found_dir"
-    done
-  fi
-
-
-
-                                    
-  for ac_header in argz.h limits.h locale.h nl_types.h malloc.h stddef.h \
-stdlib.h string.h unistd.h sys/param.h
-do :
-  as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
-ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default"
-if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-@%:@define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
-fi
-
-done
-
-  for ac_func in feof_unlocked fgets_unlocked getc_unlocked getcwd getegid \
-geteuid getgid getuid mempcpy munmap putenv setenv setlocale localeconv stpcpy \
-strcasecmp strdup strtoul tsearch __argz_count __argz_stringify __argz_next \
-__fsetlocking
-do :
-  as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
-ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
-if eval test \"x\$"$as_ac_var"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-@%:@define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1
-_ACEOF
-fi
-done
-
-
-  
-  
-    
-      
-
-          am_save_CPPFLAGS="$CPPFLAGS"
-  
-  for element in $INCICONV; do
-    haveit=
-    for x in $CPPFLAGS; do
-      
-  acl_save_prefix="$prefix"
-  prefix="$acl_final_prefix"
-  acl_save_exec_prefix="$exec_prefix"
-  exec_prefix="$acl_final_exec_prefix"
-  eval x=\"$x\"
-  exec_prefix="$acl_save_exec_prefix"
-  prefix="$acl_save_prefix"
-
-      if test "X$x" = "X$element"; then
-        haveit=yes
-        break
-      fi
-    done
-    if test -z "$haveit"; then
-      CPPFLAGS="${CPPFLAGS}${CPPFLAGS:+ }$element"
-    fi
-  done
-
-
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for iconv" >&5
-$as_echo_n "checking for iconv... " >&6; }
-if ${am_cv_func_iconv+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  
-    am_cv_func_iconv="no, consider installing GNU libiconv"
-    am_cv_lib_iconv=no
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <stdlib.h>
-#include <iconv.h>
-int
-main ()
-{
-iconv_t cd = iconv_open("","");
-       iconv(cd,NULL,NULL,NULL,NULL);
-       iconv_close(cd);
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  am_cv_func_iconv=yes
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-    if test "$am_cv_func_iconv" != yes; then
-      am_save_LIBS="$LIBS"
-      LIBS="$LIBS $LIBICONV"
-      cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <stdlib.h>
-#include <iconv.h>
-int
-main ()
-{
-iconv_t cd = iconv_open("","");
-         iconv(cd,NULL,NULL,NULL,NULL);
-         iconv_close(cd);
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  am_cv_lib_iconv=yes
-        am_cv_func_iconv=yes
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-      LIBS="$am_save_LIBS"
-    fi
-  
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_func_iconv" >&5
-$as_echo "$am_cv_func_iconv" >&6; }
-  if test "$am_cv_func_iconv" = yes; then
-    
-$as_echo "@%:@define HAVE_ICONV 1" >>confdefs.h
-
-  fi
-  if test "$am_cv_lib_iconv" = yes; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to link with libiconv" >&5
-$as_echo_n "checking how to link with libiconv... " >&6; }
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LIBICONV" >&5
-$as_echo "$LIBICONV" >&6; }
-  else
-            CPPFLAGS="$am_save_CPPFLAGS"
-    LIBICONV=
-    LTLIBICONV=
-  fi
-  
-  
-
-  if test "$am_cv_func_iconv" = yes; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for iconv declaration" >&5
-$as_echo_n "checking for iconv declaration... " >&6; }
-    if ${am_cv_proto_iconv+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  
-      cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#include <stdlib.h>
-#include <iconv.h>
-extern
-#ifdef __cplusplus
-"C"
-#endif
-#if defined(__STDC__) || defined(__cplusplus)
-size_t iconv (iconv_t cd, char * *inbuf, size_t *inbytesleft, char * *outbuf, size_t *outbytesleft);
-#else
-size_t iconv();
-#endif
-
-int
-main ()
-{
-
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  am_cv_proto_iconv_arg1=""
-else
-  am_cv_proto_iconv_arg1="const"
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-      am_cv_proto_iconv="extern size_t iconv (iconv_t cd, $am_cv_proto_iconv_arg1 char * *inbuf, size_t *inbytesleft, char * *outbuf, size_t *outbytesleft);"
-fi
-
-    am_cv_proto_iconv=`echo "$am_cv_proto_iconv" | tr -s ' ' | sed -e 's/( /(/'`
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: ${ac_t:-
-         }$am_cv_proto_iconv" >&5
-$as_echo "${ac_t:-
-         }$am_cv_proto_iconv" >&6; }
-    
-cat >>confdefs.h <<_ACEOF
-@%:@define ICONV_CONST $am_cv_proto_iconv_arg1
-_ACEOF
-
-  fi
-
-  
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for nl_langinfo and CODESET" >&5
-$as_echo_n "checking for nl_langinfo and CODESET... " >&6; }
-if ${am_cv_langinfo_codeset+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <langinfo.h>
-int
-main ()
-{
-char* cs = nl_langinfo(CODESET);
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  am_cv_langinfo_codeset=yes
-else
-  am_cv_langinfo_codeset=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-    
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_langinfo_codeset" >&5
-$as_echo "$am_cv_langinfo_codeset" >&6; }
-  if test $am_cv_langinfo_codeset = yes; then
-    
-$as_echo "@%:@define HAVE_LANGINFO_CODESET 1" >>confdefs.h
-
-  fi
-
-  if test $ac_cv_header_locale_h = yes; then
-    
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for LC_MESSAGES" >&5
-$as_echo_n "checking for LC_MESSAGES... " >&6; }
-if ${am_cv_val_LC_MESSAGES+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <locale.h>
-int
-main ()
-{
-return LC_MESSAGES
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  am_cv_val_LC_MESSAGES=yes
-else
-  am_cv_val_LC_MESSAGES=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_val_LC_MESSAGES" >&5
-$as_echo "$am_cv_val_LC_MESSAGES" >&6; }
-  if test $am_cv_val_LC_MESSAGES = yes; then
-    
-$as_echo "@%:@define HAVE_LC_MESSAGES 1" >>confdefs.h
-
-  fi
-
-  fi
-
-                      for ac_prog in bison
-do
-  # Extract the first word of "$ac_prog", so it can be a program name with args.
-set dummy $ac_prog; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_INTLBISON+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test -n "$INTLBISON"; then
-  ac_cv_prog_INTLBISON="$INTLBISON" # 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 { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_prog_INTLBISON="$ac_prog"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-fi
-fi
-INTLBISON=$ac_cv_prog_INTLBISON
-if test -n "$INTLBISON"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $INTLBISON" >&5
-$as_echo "$INTLBISON" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-  test -n "$INTLBISON" && break
-done
-
-  if test -z "$INTLBISON"; then
-    ac_verc_fail=yes
-  else
-        { $as_echo "$as_me:${as_lineno-$LINENO}: checking version of bison" >&5
-$as_echo_n "checking version of bison... " >&6; }
-    ac_prog_version=`$INTLBISON --version 2>&1 | sed -n 's/^.*GNU Bison.* \([0-9]*\.[0-9.]*\).*$/\1/p'`
-    case $ac_prog_version in
-      '') ac_prog_version="v. ?.??, bad"; ac_verc_fail=yes;;
-      1.2[6-9]* | 1.[3-9][0-9]* | [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
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_prog_version" >&5
-$as_echo "$ac_prog_version" >&6; }
-  fi
-  if test $ac_verc_fail = yes; then
-    INTLBISON=:
-  fi
-
-
-    
-  
-  
-  
-
-    
-      
-
-    
-  
-
-                        
-
-    
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether NLS is requested" >&5
-$as_echo_n "checking whether NLS is requested... " >&6; }
-    @%:@ Check whether --enable-nls was given.
-if test "${enable_nls+set}" = set; then :
-  enableval=$enable_nls; USE_NLS=$enableval
-else
-  USE_NLS=yes
-fi
-
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $USE_NLS" >&5
-$as_echo "$USE_NLS" >&6; }
-  
-
-
-  
-    BUILD_INCLUDED_LIBINTL=no
-    USE_INCLUDED_LIBINTL=no
-  
-  LIBINTL=
-  LTLIBINTL=
-  POSUB=
-
-    if test "$USE_NLS" = "yes"; then
-    gt_use_preinstalled_gnugettext=no
-    
-      { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether included gettext is requested" >&5
-$as_echo_n "checking whether included gettext is requested... " >&6; }
-      
-@%:@ Check whether --with-included-gettext was given.
-if test "${with_included_gettext+set}" = set; then :
-  withval=$with_included_gettext; nls_cv_force_use_gnu_gettext=$withval
-else
-  nls_cv_force_use_gnu_gettext=no
-fi
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: $nls_cv_force_use_gnu_gettext" >&5
-$as_echo "$nls_cv_force_use_gnu_gettext" >&6; }
-
-      nls_cv_use_gnu_gettext="$nls_cv_force_use_gnu_gettext"
-      if test "$nls_cv_force_use_gnu_gettext" != "yes"; then
-    
-                        
-                
-        
-        
-
-        { $as_echo "$as_me:${as_lineno-$LINENO}: checking for GNU gettext in libc" >&5
-$as_echo_n "checking for GNU gettext in libc... " >&6; }
-if ${gt_cv_func_gnugettext2_libc+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <libintl.h>
-extern int _nl_msg_cat_cntr;
-extern int *_nl_domain_bindings;
-int
-main ()
-{
-bindtextdomain ("", "");
-return (int) gettext ("") + (int) ngettext ("", "", 0) + _nl_msg_cat_cntr + *_nl_domain_bindings
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  gt_cv_func_gnugettext2_libc=yes
-else
-  gt_cv_func_gnugettext2_libc=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gt_cv_func_gnugettext2_libc" >&5
-$as_echo "$gt_cv_func_gnugettext2_libc" >&6; }
-
-        if test "$gt_cv_func_gnugettext2_libc" != "yes"; then
-                    
-                                                  
-  
-    use_additional=yes
-  
-  acl_save_prefix="$prefix"
-  prefix="$acl_final_prefix"
-  acl_save_exec_prefix="$exec_prefix"
-  exec_prefix="$acl_final_exec_prefix"
-  
-    eval additional_includedir=\"$includedir\"
-    eval additional_libdir=\"$libdir\"
-  
-  exec_prefix="$acl_save_exec_prefix"
-  prefix="$acl_save_prefix"
-
-  
-@%:@ Check whether --with-libintl-prefix was given.
-if test "${with_libintl_prefix+set}" = set; then :
-  withval=$with_libintl_prefix; 
-    if test "X$withval" = "Xno"; then
-      use_additional=no
-    else
-      if test "X$withval" = "X"; then
-        
-  acl_save_prefix="$prefix"
-  prefix="$acl_final_prefix"
-  acl_save_exec_prefix="$exec_prefix"
-  exec_prefix="$acl_final_exec_prefix"
-  
-          eval additional_includedir=\"$includedir\"
-          eval additional_libdir=\"$libdir\"
-        
-  exec_prefix="$acl_save_exec_prefix"
-  prefix="$acl_save_prefix"
-
-      else
-        additional_includedir="$withval/include"
-        additional_libdir="$withval/lib"
-      fi
-    fi
-
-fi
-
-      LIBINTL=
-  LTLIBINTL=
-  INCINTL=
-  rpathdirs=
-  ltrpathdirs=
-  names_already_handled=
-  names_next_round='intl '
-  while test -n "$names_next_round"; do
-    names_this_round="$names_next_round"
-    names_next_round=
-    for name in $names_this_round; do
-      already_handled=
-      for n in $names_already_handled; do
-        if test "$n" = "$name"; then
-          already_handled=yes
-          break
-        fi
-      done
-      if test -z "$already_handled"; then
-        names_already_handled="$names_already_handled $name"
-                        uppername=`echo "$name" | sed -e 'y|abcdefghijklmnopqrstuvwxyz./-|ABCDEFGHIJKLMNOPQRSTUVWXYZ___|'`
-        eval value=\"\$HAVE_LIB$uppername\"
-        if test -n "$value"; then
-          if test "$value" = yes; then
-            eval value=\"\$LIB$uppername\"
-            test -z "$value" || LIBINTL="${LIBINTL}${LIBINTL:+ }$value"
-            eval value=\"\$LTLIB$uppername\"
-            test -z "$value" || LTLIBINTL="${LTLIBINTL}${LTLIBINTL:+ }$value"
-          else
-                                    :
-          fi
-        else
-                              found_dir=
-          found_la=
-          found_so=
-          found_a=
-          if test $use_additional = yes; then
-            if test "X$prefer_shared" = "Xyes" && test -n "$shlibext" && test -f "$additional_libdir/lib$name.$shlibext"; then
-              found_dir="$additional_libdir"
-              found_so="$additional_libdir/lib$name.$shlibext"
-              if test -f "$additional_libdir/lib$name.la"; then
-                found_la="$additional_libdir/lib$name.la"
-              fi
-            else
-              if test -f "$additional_libdir/lib$name.$libext"; then
-                found_dir="$additional_libdir"
-                found_a="$additional_libdir/lib$name.$libext"
-                if test -f "$additional_libdir/lib$name.la"; then
-                  found_la="$additional_libdir/lib$name.la"
-                fi
-              fi
-            fi
-          fi
-          if test "X$found_dir" = "X"; then
-            for x in $LDFLAGS $LTLIBINTL; do
-              
-  acl_save_prefix="$prefix"
-  prefix="$acl_final_prefix"
-  acl_save_exec_prefix="$exec_prefix"
-  exec_prefix="$acl_final_exec_prefix"
-  eval x=\"$x\"
-  exec_prefix="$acl_save_exec_prefix"
-  prefix="$acl_save_prefix"
-
-              case "$x" in
-                -L*)
-                  dir=`echo "X$x" | sed -e 's/^X-L//'`
-                  if test "X$prefer_shared" = "Xyes" && test -n "$shlibext" && test -f "$dir/lib$name.$shlibext"; then
-                    found_dir="$dir"
-                    found_so="$dir/lib$name.$shlibext"
-                    if test -f "$dir/lib$name.la"; then
-                      found_la="$dir/lib$name.la"
-                    fi
-                  else
-                    if test -f "$dir/lib$name.$libext"; then
-                      found_dir="$dir"
-                      found_a="$dir/lib$name.$libext"
-                      if test -f "$dir/lib$name.la"; then
-                        found_la="$dir/lib$name.la"
-                      fi
-                    fi
-                  fi
-                  ;;
-              esac
-              if test "X$found_dir" != "X"; then
-                break
-              fi
-            done
-          fi
-          if test "X$found_dir" != "X"; then
-                        LTLIBINTL="${LTLIBINTL}${LTLIBINTL:+ }-L$found_dir -l$name"
-            if test "X$found_so" != "X"; then
-                                                        if test "$enable_rpath" = no || test "X$found_dir" = "X/usr/lib"; then
-                                LIBINTL="${LIBINTL}${LIBINTL:+ }$found_so"
-              else
-                                                                                haveit=
-                for x in $ltrpathdirs; do
-                  if test "X$x" = "X$found_dir"; then
-                    haveit=yes
-                    break
-                  fi
-                done
-                if test -z "$haveit"; then
-                  ltrpathdirs="$ltrpathdirs $found_dir"
-                fi
-                                if test "$hardcode_direct" = yes; then
-                                                      LIBINTL="${LIBINTL}${LIBINTL:+ }$found_so"
-                else
-                  if test -n "$hardcode_libdir_flag_spec" && test "$hardcode_minus_L" = no; then
-                                                            LIBINTL="${LIBINTL}${LIBINTL:+ }$found_so"
-                                                            haveit=
-                    for x in $rpathdirs; do
-                      if test "X$x" = "X$found_dir"; then
-                        haveit=yes
-                        break
-                      fi
-                    done
-                    if test -z "$haveit"; then
-                      rpathdirs="$rpathdirs $found_dir"
-                    fi
-                  else
-                                                                                haveit=
-                    for x in $LDFLAGS $LIBINTL; do
-                      
-  acl_save_prefix="$prefix"
-  prefix="$acl_final_prefix"
-  acl_save_exec_prefix="$exec_prefix"
-  exec_prefix="$acl_final_exec_prefix"
-  eval x=\"$x\"
-  exec_prefix="$acl_save_exec_prefix"
-  prefix="$acl_save_prefix"
-
-                      if test "X$x" = "X-L$found_dir"; then
-                        haveit=yes
-                        break
-                      fi
-                    done
-                    if test -z "$haveit"; then
-                      LIBINTL="${LIBINTL}${LIBINTL:+ }-L$found_dir"
-                    fi
-                    if test "$hardcode_minus_L" != no; then
-                                                                                        LIBINTL="${LIBINTL}${LIBINTL:+ }$found_so"
-                    else
-                                                                                                                                                                                LIBINTL="${LIBINTL}${LIBINTL:+ }-l$name"
-                    fi
-                  fi
-                fi
-              fi
-            else
-              if test "X$found_a" != "X"; then
-                                LIBINTL="${LIBINTL}${LIBINTL:+ }$found_a"
-              else
-                                                LIBINTL="${LIBINTL}${LIBINTL:+ }-L$found_dir -l$name"
-              fi
-            fi
-                        additional_includedir=
-            case "$found_dir" in
-              */lib | */lib/)
-                basedir=`echo "X$found_dir" | sed -e 's,^X,,' -e 's,/lib/*$,,'`
-                additional_includedir="$basedir/include"
-                ;;
-            esac
-            if test "X$additional_includedir" != "X"; then
-                                                                                                                if test "X$additional_includedir" != "X/usr/include"; then
-                haveit=
-                if test "X$additional_includedir" = "X/usr/local/include"; then
-                  if test -n "$GCC"; then
-                    case $host_os in
-                      linux*) haveit=yes;;
-                    esac
-                  fi
-                fi
-                if test -z "$haveit"; then
-                  for x in $CPPFLAGS $INCINTL; do
-                    
-  acl_save_prefix="$prefix"
-  prefix="$acl_final_prefix"
-  acl_save_exec_prefix="$exec_prefix"
-  exec_prefix="$acl_final_exec_prefix"
-  eval x=\"$x\"
-  exec_prefix="$acl_save_exec_prefix"
-  prefix="$acl_save_prefix"
-
-                    if test "X$x" = "X-I$additional_includedir"; then
-                      haveit=yes
-                      break
-                    fi
-                  done
-                  if test -z "$haveit"; then
-                    if test -d "$additional_includedir"; then
-                                            INCINTL="${INCINTL}${INCINTL:+ }-I$additional_includedir"
-                    fi
-                  fi
-                fi
-              fi
-            fi
-                        if test -n "$found_la"; then
-                                                        save_libdir="$libdir"
-              case "$found_la" in
-                */* | *\\*) . "$found_la" ;;
-                *) . "./$found_la" ;;
-              esac
-              libdir="$save_libdir"
-                            for dep in $dependency_libs; do
-                case "$dep" in
-                  -L*)
-                    additional_libdir=`echo "X$dep" | sed -e 's/^X-L//'`
-                                                                                                                                                                if test "X$additional_libdir" != "X/usr/lib"; then
-                      haveit=
-                      if test "X$additional_libdir" = "X/usr/local/lib"; then
-                        if test -n "$GCC"; then
-                          case $host_os in
-                            linux*) haveit=yes;;
-                          esac
-                        fi
-                      fi
-                      if test -z "$haveit"; then
-                        haveit=
-                        for x in $LDFLAGS $LIBINTL; do
-                          
-  acl_save_prefix="$prefix"
-  prefix="$acl_final_prefix"
-  acl_save_exec_prefix="$exec_prefix"
-  exec_prefix="$acl_final_exec_prefix"
-  eval x=\"$x\"
-  exec_prefix="$acl_save_exec_prefix"
-  prefix="$acl_save_prefix"
-
-                          if test "X$x" = "X-L$additional_libdir"; then
-                            haveit=yes
-                            break
-                          fi
-                        done
-                        if test -z "$haveit"; then
-                          if test -d "$additional_libdir"; then
-                                                        LIBINTL="${LIBINTL}${LIBINTL:+ }-L$additional_libdir"
-                          fi
-                        fi
-                        haveit=
-                        for x in $LDFLAGS $LTLIBINTL; do
-                          
-  acl_save_prefix="$prefix"
-  prefix="$acl_final_prefix"
-  acl_save_exec_prefix="$exec_prefix"
-  exec_prefix="$acl_final_exec_prefix"
-  eval x=\"$x\"
-  exec_prefix="$acl_save_exec_prefix"
-  prefix="$acl_save_prefix"
-
-                          if test "X$x" = "X-L$additional_libdir"; then
-                            haveit=yes
-                            break
-                          fi
-                        done
-                        if test -z "$haveit"; then
-                          if test -d "$additional_libdir"; then
-                                                        LTLIBINTL="${LTLIBINTL}${LTLIBINTL:+ }-L$additional_libdir"
-                          fi
-                        fi
-                      fi
-                    fi
-                    ;;
-                  -R*)
-                    dir=`echo "X$dep" | sed -e 's/^X-R//'`
-                    if test "$enable_rpath" != no; then
-                                                                  haveit=
-                      for x in $rpathdirs; do
-                        if test "X$x" = "X$dir"; then
-                          haveit=yes
-                          break
-                        fi
-                      done
-                      if test -z "$haveit"; then
-                        rpathdirs="$rpathdirs $dir"
-                      fi
-                                                                  haveit=
-                      for x in $ltrpathdirs; do
-                        if test "X$x" = "X$dir"; then
-                          haveit=yes
-                          break
-                        fi
-                      done
-                      if test -z "$haveit"; then
-                        ltrpathdirs="$ltrpathdirs $dir"
-                      fi
-                    fi
-                    ;;
-                  -l*)
-                                        names_next_round="$names_next_round "`echo "X$dep" | sed -e 's/^X-l//'`
-                    ;;
-                  *.la)
-                                                                                names_next_round="$names_next_round "`echo "X$dep" | sed -e 's,^X.*/,,' -e 's,^lib,,' -e 's,\.la$,,'`
-                    ;;
-                  *)
-                                        LIBINTL="${LIBINTL}${LIBINTL:+ }$dep"
-                    LTLIBINTL="${LTLIBINTL}${LTLIBINTL:+ }$dep"
-                    ;;
-                esac
-              done
-            fi
-          else
-                                                            LIBINTL="${LIBINTL}${LIBINTL:+ }-l$name"
-            LTLIBINTL="${LTLIBINTL}${LTLIBINTL:+ }-l$name"
-          fi
-        fi
-      fi
-    done
-  done
-  if test "X$rpathdirs" != "X"; then
-    if test -n "$hardcode_libdir_separator"; then
-                        alldirs=
-      for found_dir in $rpathdirs; do
-        alldirs="${alldirs}${alldirs:+$hardcode_libdir_separator}$found_dir"
-      done
-            acl_save_libdir="$libdir"
-      libdir="$alldirs"
-      eval flag=\"$hardcode_libdir_flag_spec\"
-      libdir="$acl_save_libdir"
-      LIBINTL="${LIBINTL}${LIBINTL:+ }$flag"
-    else
-            for found_dir in $rpathdirs; do
-        acl_save_libdir="$libdir"
-        libdir="$found_dir"
-        eval flag=\"$hardcode_libdir_flag_spec\"
-        libdir="$acl_save_libdir"
-        LIBINTL="${LIBINTL}${LIBINTL:+ }$flag"
-      done
-    fi
-  fi
-  if test "X$ltrpathdirs" != "X"; then
-            for found_dir in $ltrpathdirs; do
-      LTLIBINTL="${LTLIBINTL}${LTLIBINTL:+ }-R$found_dir"
-    done
-  fi
-
-          { $as_echo "$as_me:${as_lineno-$LINENO}: checking for GNU gettext in libintl" >&5
-$as_echo_n "checking for GNU gettext in libintl... " >&6; }
-if ${gt_cv_func_gnugettext2_libintl+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  gt_save_CPPFLAGS="$CPPFLAGS"
-            CPPFLAGS="$CPPFLAGS $INCINTL"
-            gt_save_LIBS="$LIBS"
-            LIBS="$LIBS $LIBINTL"
-                        cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <libintl.h>
-extern int _nl_msg_cat_cntr;
-extern
-#ifdef __cplusplus
-"C"
-#endif
-const char *_nl_expand_alias ();
-int
-main ()
-{
-bindtextdomain ("", "");
-return (int) gettext ("") + (int) ngettext ("", "", 0) + _nl_msg_cat_cntr + *_nl_expand_alias (0)
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  gt_cv_func_gnugettext2_libintl=yes
-else
-  gt_cv_func_gnugettext2_libintl=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-                        if test "$gt_cv_func_gnugettext2_libintl" != yes && test -n "$LIBICONV"; then
-              LIBS="$LIBS $LIBICONV"
-              cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <libintl.h>
-extern int _nl_msg_cat_cntr;
-extern
-#ifdef __cplusplus
-"C"
-#endif
-const char *_nl_expand_alias ();
-int
-main ()
-{
-bindtextdomain ("", "");
-return (int) gettext ("") + (int) ngettext ("", "", 0) + _nl_msg_cat_cntr + *_nl_expand_alias (0)
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  LIBINTL="$LIBINTL $LIBICONV"
-                LTLIBINTL="$LTLIBINTL $LTLIBICONV"
-                gt_cv_func_gnugettext2_libintl=yes
-               
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-            fi
-            CPPFLAGS="$gt_save_CPPFLAGS"
-            LIBS="$gt_save_LIBS"
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gt_cv_func_gnugettext2_libintl" >&5
-$as_echo "$gt_cv_func_gnugettext2_libintl" >&6; }
-        fi
-
-                                        if test "$gt_cv_func_gnugettext2_libc" = "yes" \
-           || { test "$gt_cv_func_gnugettext2_libintl" = "yes" \
-                && test "$PACKAGE" != gettext-runtime \
-                && test "$PACKAGE" != gettext-tools; }; then
-          gt_use_preinstalled_gnugettext=yes
-        else
-                    LIBINTL=
-          LTLIBINTL=
-          INCINTL=
-        fi
-
-    
-        if test "$gt_use_preinstalled_gnugettext" != "yes"; then
-                              nls_cv_use_gnu_gettext=yes
-        fi
-      fi
-
-      if test "$nls_cv_use_gnu_gettext" = "yes"; then
-                BUILD_INCLUDED_LIBINTL=yes
-        USE_INCLUDED_LIBINTL=yes
-        LIBINTL="lib/intl/libintl.a $LIBICONV"
-        LTLIBINTL="lib/intl/libintl.a $LTLIBICONV"
-        LIBS=`echo " $LIBS " | sed -e 's/ -lintl / /' -e 's/^ //' -e 's/ $//'`
-      fi
-
-      if test "$gt_use_preinstalled_gnugettext" = "yes" \
-         || test "$nls_cv_use_gnu_gettext" = "yes"; then
-                CATOBJEXT=.gmo
-      fi
-    
-
-    if test "$gt_use_preinstalled_gnugettext" = "yes" \
-       || test "$nls_cv_use_gnu_gettext" = "yes"; then
-      
-$as_echo "@%:@define ENABLE_NLS 1" >>confdefs.h
-
-    else
-      USE_NLS=no
-    fi
-  fi
-
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to use NLS" >&5
-$as_echo_n "checking whether to use NLS... " >&6; }
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $USE_NLS" >&5
-$as_echo "$USE_NLS" >&6; }
-  if test "$USE_NLS" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking where the gettext function comes from" >&5
-$as_echo_n "checking where the gettext function comes from... " >&6; }
-    if test "$gt_use_preinstalled_gnugettext" = "yes"; then
-      if test "$gt_cv_func_gnugettext2_libintl" = "yes"; then
-        gt_source="external libintl"
-      else
-        gt_source="libc"
-      fi
-    else
-      gt_source="included intl directory"
-    fi
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: $gt_source" >&5
-$as_echo "$gt_source" >&6; }
-  fi
-
-  if test "$USE_NLS" = "yes"; then
-
-    if test "$gt_use_preinstalled_gnugettext" = "yes"; then
-      if test "$gt_cv_func_gnugettext2_libintl" = "yes"; then
-        { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to link with libintl" >&5
-$as_echo_n "checking how to link with libintl... " >&6; }
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LIBINTL" >&5
-$as_echo "$LIBINTL" >&6; }
-        
-  for element in $INCINTL; do
-    haveit=
-    for x in $CPPFLAGS; do
-      
-  acl_save_prefix="$prefix"
-  prefix="$acl_final_prefix"
-  acl_save_exec_prefix="$exec_prefix"
-  exec_prefix="$acl_final_exec_prefix"
-  eval x=\"$x\"
-  exec_prefix="$acl_save_exec_prefix"
-  prefix="$acl_save_prefix"
-
-      if test "X$x" = "X$element"; then
-        haveit=yes
-        break
-      fi
-    done
-    if test -z "$haveit"; then
-      CPPFLAGS="${CPPFLAGS}${CPPFLAGS:+ }$element"
-    fi
-  done
-
-      fi
-
-            
-$as_echo "@%:@define HAVE_GETTEXT 1" >>confdefs.h
-
-      
-$as_echo "@%:@define HAVE_DCGETTEXT 1" >>confdefs.h
-
-    fi
-
-        POSUB=po
-  fi
-
-  
-            if test "$PACKAGE" = gettext-runtime || test "$PACKAGE" = gettext-tools; then
-      BUILD_INCLUDED_LIBINTL=yes
-    fi
-
-        
-    
-    
-
-        nls_cv_header_intl=
-    nls_cv_header_libgt=
-
-        DATADIRNAME=share
-    
-
-        INSTOBJEXT=.mo
-    
-
-        GENCAT=gencat
-    
-
-        if test "$USE_INCLUDED_LIBINTL" = yes; then
-      INTLOBJS="\$(GETTOBJS)"
-    fi
-    
-
-        INTL_LIBTOOL_SUFFIX_PREFIX=
-    
-  
-
-    INTLLIBS="$LIBINTL"
-  
-
-    
-  
-  
-
-
-ac_header_dirent=no
-for ac_hdr in dirent.h sys/ndir.h sys/dir.h ndir.h; do
-  as_ac_Header=`$as_echo "ac_cv_header_dirent_$ac_hdr" | $as_tr_sh`
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_hdr that defines DIR" >&5
-$as_echo_n "checking for $ac_hdr that defines DIR... " >&6; }
-if eval \${$as_ac_Header+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <sys/types.h>
-#include <$ac_hdr>
-
-int
-main ()
-{
-if ((DIR *) 0)
-return 0;
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  eval "$as_ac_Header=yes"
-else
-  eval "$as_ac_Header=no"
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-eval ac_res=\$$as_ac_Header
-              { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
-if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-@%:@define `$as_echo "HAVE_$ac_hdr" | $as_tr_cpp` 1
-_ACEOF
-
-ac_header_dirent=$ac_hdr; break
-fi
-
-done
-# Two versions of opendir et al. are in -ldir and -lx on SCO Xenix.
-if test $ac_header_dirent = dirent.h; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing opendir" >&5
-$as_echo_n "checking for library containing opendir... " >&6; }
-if ${ac_cv_search_opendir+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_func_search_save_LIBS=$LIBS
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-/* Override any GCC internal prototype to avoid an error.
-   Use char because int might match the return type of a GCC
-   builtin and then its argument prototype would still apply.  */
-#ifdef __cplusplus
-extern "C"
-#endif
-char opendir ();
-int
-main ()
-{
-return opendir ();
-  ;
-  return 0;
-}
-_ACEOF
-for ac_lib in '' dir; do
-  if test -z "$ac_lib"; then
-    ac_res="none required"
-  else
-    ac_res=-l$ac_lib
-    LIBS="-l$ac_lib  $ac_func_search_save_LIBS"
-  fi
-  if ac_fn_c_try_link "$LINENO"; then :
-  ac_cv_search_opendir=$ac_res
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext
-  if ${ac_cv_search_opendir+:} false; then :
-  break
-fi
-done
-if ${ac_cv_search_opendir+:} false; then :
-  
-else
-  ac_cv_search_opendir=no
-fi
-rm conftest.$ac_ext
-LIBS=$ac_func_search_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_opendir" >&5
-$as_echo "$ac_cv_search_opendir" >&6; }
-ac_res=$ac_cv_search_opendir
-if test "$ac_res" != no; then :
-  test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
-  
-fi
-
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing opendir" >&5
-$as_echo_n "checking for library containing opendir... " >&6; }
-if ${ac_cv_search_opendir+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_func_search_save_LIBS=$LIBS
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-/* Override any GCC internal prototype to avoid an error.
-   Use char because int might match the return type of a GCC
-   builtin and then its argument prototype would still apply.  */
-#ifdef __cplusplus
-extern "C"
-#endif
-char opendir ();
-int
-main ()
-{
-return opendir ();
-  ;
-  return 0;
-}
-_ACEOF
-for ac_lib in '' x; do
-  if test -z "$ac_lib"; then
-    ac_res="none required"
-  else
-    ac_res=-l$ac_lib
-    LIBS="-l$ac_lib  $ac_func_search_save_LIBS"
-  fi
-  if ac_fn_c_try_link "$LINENO"; then :
-  ac_cv_search_opendir=$ac_res
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext
-  if ${ac_cv_search_opendir+:} false; then :
-  break
-fi
-done
-if ${ac_cv_search_opendir+:} false; then :
-  
-else
-  ac_cv_search_opendir=no
-fi
-rm conftest.$ac_ext
-LIBS=$ac_func_search_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_opendir" >&5
-$as_echo "$ac_cv_search_opendir" >&6; }
-ac_res=$ac_cv_search_opendir
-if test "$ac_res" != no; then :
-  test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
-  
-fi
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether time.h and sys/time.h may both be included" >&5
-$as_echo_n "checking whether time.h and sys/time.h may both be included... " >&6; }
-if ${ac_cv_header_time+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <sys/types.h>
-#include <sys/time.h>
-#include <time.h>
-
-int
-main ()
-{
-if ((struct tm *) 0)
-return 0;
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_cv_header_time=yes
-else
-  ac_cv_header_time=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_time" >&5
-$as_echo "$ac_cv_header_time" >&6; }
-if test $ac_cv_header_time = yes; then
-  
-$as_echo "@%:@define TIME_WITH_SYS_TIME 1" >>confdefs.h
-
-fi
-
-
-
- for ac_header in inttypes.h
-do :
-  ac_fn_c_check_header_mongrel "$LINENO" "inttypes.h" "ac_cv_header_inttypes_h" "$ac_includes_default"
-if test "x$ac_cv_header_inttypes_h" = xyes; then :
-  cat >>confdefs.h <<_ACEOF
-@%:@define HAVE_INTTYPES_H 1
-_ACEOF
-fi
-
-done
-
-
-
-for ac_header in unistd.h stdlib.h stdarg.h varargs.h limits.h string.h \
-                memory.h locale.h termcap.h termio.h termios.h dlfcn.h \
-                stdbool.h stddef.h stdint.h netdb.h pwd.h grp.h strings.h \
-                regex.h syslog.h ulimit.h
-do :
-  as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
-ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default"
-if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-@%:@define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
-fi
-
-done
-
-for ac_header in sys/pte.h sys/stream.h sys/select.h sys/file.h \
-                sys/resource.h sys/param.h sys/socket.h sys/stat.h \
-                sys/time.h sys/times.h sys/types.h sys/wait.h
-do :
-  as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
-ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default"
-if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-@%:@define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
-fi
-
-done
-
-for ac_header in netinet/in.h arpa/inet.h
-do :
-  as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
-ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default"
-if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-@%:@define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
-fi
-
-done
-
-
-ac_fn_c_check_header_compile "$LINENO" "sys/ptem.h" "ac_cv_header_sys_ptem_h" "
-#if HAVE_SYS_STREAM_H
-#  include <sys/stream.h>
-#endif
-
-"
-if test "x$ac_cv_header_sys_ptem_h" = xyes; then :
-  
-fi
-
-
-
-# The Ultrix 4.2 mips builtin alloca declared by alloca.h only works
-# for constant arguments.  Useless!
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for working alloca.h" >&5
-$as_echo_n "checking for working alloca.h... " >&6; }
-if ${ac_cv_working_alloca_h+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-@%:@include <alloca.h>
-int
-main ()
-{
-char *p = (char *) alloca (2 * sizeof (int));
-                         if (p) return 0;
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  ac_cv_working_alloca_h=yes
-else
-  ac_cv_working_alloca_h=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_working_alloca_h" >&5
-$as_echo "$ac_cv_working_alloca_h" >&6; }
-if test $ac_cv_working_alloca_h = yes; then
-  
-$as_echo "@%:@define HAVE_ALLOCA_H 1" >>confdefs.h
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for alloca" >&5
-$as_echo_n "checking for alloca... " >&6; }
-if ${ac_cv_func_alloca_works+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#ifdef __GNUC__
-# define alloca __builtin_alloca
-#else
-# ifdef _MSC_VER
-#  include <malloc.h>
-#  define alloca _alloca
-# else
-#  ifdef HAVE_ALLOCA_H
-#   include <alloca.h>
-#  else
-#   ifdef _AIX
- #pragma alloca
-#   else
-#    ifndef alloca /* predefined by HP cc +Olibcalls */
-void *alloca (size_t);
-#    endif
-#   endif
-#  endif
-# endif
-#endif
-
-int
-main ()
-{
-char *p = (char *) alloca (1);
-                                   if (p) return 0;
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  ac_cv_func_alloca_works=yes
-else
-  ac_cv_func_alloca_works=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_func_alloca_works" >&5
-$as_echo "$ac_cv_func_alloca_works" >&6; }
-
-if test $ac_cv_func_alloca_works = yes; then
-  
-$as_echo "@%:@define HAVE_ALLOCA 1" >>confdefs.h
-
-else
-  # The SVR3 libPW and SVR4 libucb both contain incompatible functions
-# that cause trouble.  Some versions do not even contain alloca or
-# contain a buggy version.  If you still want to use their alloca,
-# use ar to extract alloca.o from them instead of compiling alloca.c.
-
-ALLOCA=\${LIBOBJDIR}alloca.$ac_objext
-
-$as_echo "@%:@define C_ALLOCA 1" >>confdefs.h
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether \`alloca.c' needs Cray hooks" >&5
-$as_echo_n "checking whether \`alloca.c' needs Cray hooks... " >&6; }
-if ${ac_cv_os_cray+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#if defined CRAY && ! defined CRAY2
-webecray
-#else
-wenotbecray
-#endif
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "webecray" >/dev/null 2>&1; then :
-  ac_cv_os_cray=yes
-else
-  ac_cv_os_cray=no
-fi
-rm -f conftest*
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_os_cray" >&5
-$as_echo "$ac_cv_os_cray" >&6; }
-if test $ac_cv_os_cray = yes; then
-  for ac_func in _getb67 GETB67 getb67; do
-    as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
-ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
-if eval test \"x\$"$as_ac_var"\" = x"yes"; then :
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define CRAY_STACKSEG_END $ac_func
-_ACEOF
-
-    break
-fi
-
-  done
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking stack direction for C alloca" >&5
-$as_echo_n "checking stack direction for C alloca... " >&6; }
-if ${ac_cv_c_stack_direction+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test "$cross_compiling" = yes; then :
-  ac_cv_c_stack_direction=0
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-$ac_includes_default
-int
-find_stack_direction ()
-{
-  static char *addr = 0;
-  auto char dummy;
-  if (addr == 0)
-    {
-      addr = &dummy;
-      return find_stack_direction ();
-    }
-  else
-    return (&dummy > addr) ? 1 : -1;
-}
-
-int
-main ()
-{
-  return find_stack_direction () < 0;
-}
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-  ac_cv_c_stack_direction=1
-else
-  ac_cv_c_stack_direction=-1
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_stack_direction" >&5
-$as_echo "$ac_cv_c_stack_direction" >&6; }
-cat >>confdefs.h <<_ACEOF
-@%:@define STACK_DIRECTION $ac_cv_c_stack_direction
-_ACEOF
-
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether getpgrp requires zero arguments" >&5
-$as_echo_n "checking whether getpgrp requires zero arguments... " >&6; }
-if ${ac_cv_func_getpgrp_void+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  # Use it with a single arg.
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-$ac_includes_default
-int
-main ()
-{
-getpgrp (0);
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_cv_func_getpgrp_void=no
-else
-  ac_cv_func_getpgrp_void=yes
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_func_getpgrp_void" >&5
-$as_echo "$ac_cv_func_getpgrp_void" >&6; }
-if test $ac_cv_func_getpgrp_void = yes; then
-  
-$as_echo "@%:@define GETPGRP_VOID 1" >>confdefs.h
-
-fi
-
-if ${ac_cv_func_setvbuf_reversed+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_cv_func_setvbuf_reversed=no
-fi
-
-
-for ac_func in vprintf
-do :
-  ac_fn_c_check_func "$LINENO" "vprintf" "ac_cv_func_vprintf"
-if test "x$ac_cv_func_vprintf" = xyes; then :
-  cat >>confdefs.h <<_ACEOF
-@%:@define HAVE_VPRINTF 1
-_ACEOF
-ac_fn_c_check_func "$LINENO" "_doprnt" "ac_cv_func__doprnt"
-if test "x$ac_cv_func__doprnt" = xyes; then :
-  
-$as_echo "@%:@define HAVE_DOPRNT 1" >>confdefs.h
-
-fi
-
-fi
-done
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for working strcoll" >&5
-$as_echo_n "checking for working strcoll... " >&6; }
-if ${ac_cv_func_strcoll_works+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test "$cross_compiling" = yes; then :
-  ac_cv_func_strcoll_works=no
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-$ac_includes_default
-int
-main ()
-{
-return (strcoll ("abc", "def") >= 0 ||
-        strcoll ("ABC", "DEF") >= 0 ||
-        strcoll ("123", "456") >= 0)
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-  ac_cv_func_strcoll_works=yes
-else
-  ac_cv_func_strcoll_works=no
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_func_strcoll_works" >&5
-$as_echo "$ac_cv_func_strcoll_works" >&6; }
-if test $ac_cv_func_strcoll_works = yes; then
-  
-$as_echo "@%:@define HAVE_STRCOLL 1" >>confdefs.h
-
-fi
-
-
-
-if test "$ac_cv_func_alloca_works" = "no" && test "$opt_bash_malloc" = "no"; then
-       MALLOC_TARGET=alloca
-       MALLOC_SRC=alloca.c
-
-       MALLOC_LIB='-lmalloc'
-       MALLOC_LIBRARY='$(ALLOC_LIBDIR)/libmalloc.a'
-       MALLOC_LDFLAGS='-L$(ALLOC_LIBDIR)'
-       MALLOC_DEP='$(MALLOC_LIBRARY)'
-fi
-
-if test "$ac_cv_func_vprintf" = no; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for declaration of vprintf in stdio.h" >&5
-$as_echo_n "checking for declaration of vprintf in stdio.h... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <stdio.h>
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "[int[        ]*vprintf[^a-zA-Z0-9]]" >/dev/null 2>&1; then :
-  ac_cv_func_vprintf=yes
-fi
-rm -f conftest*
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_func_vprintf" >&5
-$as_echo "$ac_cv_func_vprintf" >&6; }
-    if test $ac_cv_func_vprintf = yes; then
-       $as_echo "@%:@define HAVE_VPRINTF 1" >>confdefs.h
-
-    fi
-fi
-
-if test "$ac_cv_func_vprintf" = no && test "$ac_cv_func__doprnt" = "yes"; then
-  case " $LIB@&t@OBJS " in
-  *" vprint.$ac_objext "* ) ;;
-  *) LIB@&t@OBJS="$LIB@&t@OBJS vprint.$ac_objext"
- ;;
-esac
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking return type of signal handlers" >&5
-$as_echo_n "checking return type of signal handlers... " >&6; }
-if ${ac_cv_type_signal+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <sys/types.h>
-#include <signal.h>
-
-int
-main ()
-{
-return *(signal (0, 0)) (0) == 1;
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_cv_type_signal=int
-else
-  ac_cv_type_signal=void
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_type_signal" >&5
-$as_echo "$ac_cv_type_signal" >&6; }
-
-cat >>confdefs.h <<_ACEOF
-@%:@define RETSIGTYPE $ac_cv_type_signal
-_ACEOF
-
-
-
-ac_fn_c_check_func "$LINENO" "__setostype" "ac_cv_func___setostype"
-if test "x$ac_cv_func___setostype" = xyes; then :
-  $as_echo "@%:@define HAVE_SETOSTYPE 1" >>confdefs.h
-
-fi
-
-ac_fn_c_check_func "$LINENO" "wait3" "ac_cv_func_wait3"
-if test "x$ac_cv_func_wait3" = xyes; then :
-  $as_echo "@%:@define HAVE_WAIT3 1" >>confdefs.h
-
-fi
-
-
-ac_fn_c_check_func "$LINENO" "mkfifo" "ac_cv_func_mkfifo"
-if test "x$ac_cv_func_mkfifo" = xyes; then :
-  $as_echo "@%:@define HAVE_MKFIFO 1" >>confdefs.h
-
-else
-  $as_echo "@%:@define MKFIFO_MISSING 1" >>confdefs.h
-
-fi
-
-
-for ac_func in dup2 eaccess fcntl getdtablesize getgroups gethostname \
-               getpagesize getpeername getrlimit getrusage gettimeofday \
-               kill killpg lstat readlink sbrk select setdtablesize \
-               setitimer tcgetpgrp uname ulimit waitpid
-do :
-  as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
-ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
-if eval test \"x\$"$as_ac_var"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-@%:@define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1
-_ACEOF
-fi
-done
-
-ac_fn_c_check_func "$LINENO" "rename" "ac_cv_func_rename"
-if test "x$ac_cv_func_rename" = xyes; then :
-  $as_echo "@%:@define HAVE_RENAME 1" >>confdefs.h
-
-else
-  case " $LIB@&t@OBJS " in
-  *" rename.$ac_objext "* ) ;;
-  *) LIB@&t@OBJS="$LIB@&t@OBJS rename.$ac_objext"
- ;;
-esac
-
-fi
-
-
-
-for ac_func in bcopy bzero confstr faccessat fnmatch \
-               getaddrinfo gethostbyname getservbyname getservent inet_aton \
-               imaxdiv memmove pathconf putenv raise regcomp regexec \
-               setenv setlinebuf setlocale setvbuf siginterrupt strchr \
-               sysconf syslog tcgetattr times ttyname tzset unsetenv
-do :
-  as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
-ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
-if eval test \"x\$"$as_ac_var"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-@%:@define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1
-_ACEOF
-fi
-done
-
-
-for ac_func in vasprintf asprintf
-do :
-  as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
-ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
-if eval test \"x\$"$as_ac_var"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-@%:@define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1
-_ACEOF
-fi
-done
-
-for ac_func in isascii isblank isgraph isprint isspace isxdigit
-do :
-  as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
-ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
-if eval test \"x\$"$as_ac_var"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-@%:@define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1
-_ACEOF
-fi
-done
-
-for ac_func in getpwent getpwnam getpwuid
-do :
-  as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
-ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
-if eval test \"x\$"$as_ac_var"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-@%:@define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1
-_ACEOF
-fi
-done
-
-ac_fn_c_check_func "$LINENO" "getcwd" "ac_cv_func_getcwd"
-if test "x$ac_cv_func_getcwd" = xyes; then :
-  $as_echo "@%:@define HAVE_GETCWD 1" >>confdefs.h
-
-else
-  case " $LIB@&t@OBJS " in
-  *" getcwd.$ac_objext "* ) ;;
-  *) LIB@&t@OBJS="$LIB@&t@OBJS getcwd.$ac_objext"
- ;;
-esac
-
-fi
-
-ac_fn_c_check_func "$LINENO" "memset" "ac_cv_func_memset"
-if test "x$ac_cv_func_memset" = xyes; then :
-  $as_echo "@%:@define HAVE_MEMSET 1" >>confdefs.h
-
-else
-  case " $LIB@&t@OBJS " in
-  *" memset.$ac_objext "* ) ;;
-  *) LIB@&t@OBJS="$LIB@&t@OBJS memset.$ac_objext"
- ;;
-esac
-
-fi
-
-
-ac_fn_c_check_func "$LINENO" "strcasecmp" "ac_cv_func_strcasecmp"
-if test "x$ac_cv_func_strcasecmp" = xyes; then :
-  $as_echo "@%:@define HAVE_STRCASECMP 1" >>confdefs.h
-
-else
-  case " $LIB@&t@OBJS " in
-  *" strcasecmp.$ac_objext "* ) ;;
-  *) LIB@&t@OBJS="$LIB@&t@OBJS strcasecmp.$ac_objext"
- ;;
-esac
-
-fi
-
-ac_fn_c_check_func "$LINENO" "strcasestr" "ac_cv_func_strcasestr"
-if test "x$ac_cv_func_strcasestr" = xyes; then :
-  $as_echo "@%:@define HAVE_STRCASESTR 1" >>confdefs.h
-
-else
-  case " $LIB@&t@OBJS " in
-  *" strcasestr.$ac_objext "* ) ;;
-  *) LIB@&t@OBJS="$LIB@&t@OBJS strcasestr.$ac_objext"
- ;;
-esac
-
-fi
-
-ac_fn_c_check_func "$LINENO" "strerror" "ac_cv_func_strerror"
-if test "x$ac_cv_func_strerror" = xyes; then :
-  $as_echo "@%:@define HAVE_STRERROR 1" >>confdefs.h
-
-else
-  case " $LIB@&t@OBJS " in
-  *" strerror.$ac_objext "* ) ;;
-  *) LIB@&t@OBJS="$LIB@&t@OBJS strerror.$ac_objext"
- ;;
-esac
-
-fi
-
-ac_fn_c_check_func "$LINENO" "strftime" "ac_cv_func_strftime"
-if test "x$ac_cv_func_strftime" = xyes; then :
-  $as_echo "@%:@define HAVE_STRFTIME 1" >>confdefs.h
-
-else
-  case " $LIB@&t@OBJS " in
-  *" strftime.$ac_objext "* ) ;;
-  *) LIB@&t@OBJS="$LIB@&t@OBJS strftime.$ac_objext"
- ;;
-esac
-
-fi
-
-ac_fn_c_check_func "$LINENO" "strnlen" "ac_cv_func_strnlen"
-if test "x$ac_cv_func_strnlen" = xyes; then :
-  $as_echo "@%:@define HAVE_STRNLEN 1" >>confdefs.h
-
-else
-  case " $LIB@&t@OBJS " in
-  *" strnlen.$ac_objext "* ) ;;
-  *) LIB@&t@OBJS="$LIB@&t@OBJS strnlen.$ac_objext"
- ;;
-esac
-
-fi
-
-ac_fn_c_check_func "$LINENO" "strpbrk" "ac_cv_func_strpbrk"
-if test "x$ac_cv_func_strpbrk" = xyes; then :
-  $as_echo "@%:@define HAVE_STRPBRK 1" >>confdefs.h
-
-else
-  case " $LIB@&t@OBJS " in
-  *" strpbrk.$ac_objext "* ) ;;
-  *) LIB@&t@OBJS="$LIB@&t@OBJS strpbrk.$ac_objext"
- ;;
-esac
-
-fi
-
-ac_fn_c_check_func "$LINENO" "strstr" "ac_cv_func_strstr"
-if test "x$ac_cv_func_strstr" = xyes; then :
-  $as_echo "@%:@define HAVE_STRSTR 1" >>confdefs.h
-
-else
-  case " $LIB@&t@OBJS " in
-  *" strstr.$ac_objext "* ) ;;
-  *) LIB@&t@OBJS="$LIB@&t@OBJS strstr.$ac_objext"
- ;;
-esac
-
-fi
-
-
-ac_fn_c_check_func "$LINENO" "strtod" "ac_cv_func_strtod"
-if test "x$ac_cv_func_strtod" = xyes; then :
-  $as_echo "@%:@define HAVE_STRTOD 1" >>confdefs.h
-
-else
-  case " $LIB@&t@OBJS " in
-  *" strtod.$ac_objext "* ) ;;
-  *) LIB@&t@OBJS="$LIB@&t@OBJS strtod.$ac_objext"
- ;;
-esac
-
-fi
-
-ac_fn_c_check_func "$LINENO" "strtol" "ac_cv_func_strtol"
-if test "x$ac_cv_func_strtol" = xyes; then :
-  $as_echo "@%:@define HAVE_STRTOL 1" >>confdefs.h
-
-else
-  case " $LIB@&t@OBJS " in
-  *" strtol.$ac_objext "* ) ;;
-  *) LIB@&t@OBJS="$LIB@&t@OBJS strtol.$ac_objext"
- ;;
-esac
-
-fi
-
-ac_fn_c_check_func "$LINENO" "strtoul" "ac_cv_func_strtoul"
-if test "x$ac_cv_func_strtoul" = xyes; then :
-  $as_echo "@%:@define HAVE_STRTOUL 1" >>confdefs.h
-
-else
-  case " $LIB@&t@OBJS " in
-  *" strtoul.$ac_objext "* ) ;;
-  *) LIB@&t@OBJS="$LIB@&t@OBJS strtoul.$ac_objext"
- ;;
-esac
-
-fi
-
-ac_fn_c_check_func "$LINENO" "strtoll" "ac_cv_func_strtoll"
-if test "x$ac_cv_func_strtoll" = xyes; then :
-  $as_echo "@%:@define HAVE_STRTOLL 1" >>confdefs.h
-
-else
-  case " $LIB@&t@OBJS " in
-  *" strtoll.$ac_objext "* ) ;;
-  *) LIB@&t@OBJS="$LIB@&t@OBJS strtoll.$ac_objext"
- ;;
-esac
-
-fi
-
-ac_fn_c_check_func "$LINENO" "strtoull" "ac_cv_func_strtoull"
-if test "x$ac_cv_func_strtoull" = xyes; then :
-  $as_echo "@%:@define HAVE_STRTOULL 1" >>confdefs.h
-
-else
-  case " $LIB@&t@OBJS " in
-  *" strtoull.$ac_objext "* ) ;;
-  *) LIB@&t@OBJS="$LIB@&t@OBJS strtoull.$ac_objext"
- ;;
-esac
-
-fi
-
-ac_fn_c_check_func "$LINENO" "strtoimax" "ac_cv_func_strtoimax"
-if test "x$ac_cv_func_strtoimax" = xyes; then :
-  $as_echo "@%:@define HAVE_STRTOIMAX 1" >>confdefs.h
-
-else
-  case " $LIB@&t@OBJS " in
-  *" strtoimax.$ac_objext "* ) ;;
-  *) LIB@&t@OBJS="$LIB@&t@OBJS strtoimax.$ac_objext"
- ;;
-esac
-
-fi
-
-ac_fn_c_check_func "$LINENO" "strtoumax" "ac_cv_func_strtoumax"
-if test "x$ac_cv_func_strtoumax" = xyes; then :
-  $as_echo "@%:@define HAVE_STRTOUMAX 1" >>confdefs.h
-
-else
-  case " $LIB@&t@OBJS " in
-  *" strtoumax.$ac_objext "* ) ;;
-  *) LIB@&t@OBJS="$LIB@&t@OBJS strtoumax.$ac_objext"
- ;;
-esac
-
-fi
-
-
-ac_fn_c_check_func "$LINENO" "dprintf" "ac_cv_func_dprintf"
-if test "x$ac_cv_func_dprintf" = xyes; then :
-  $as_echo "@%:@define HAVE_DPRINTF 1" >>confdefs.h
-
-else
-  case " $LIB@&t@OBJS " in
-  *" dprintf.$ac_objext "* ) ;;
-  *) LIB@&t@OBJS="$LIB@&t@OBJS dprintf.$ac_objext"
- ;;
-esac
-
-fi
-
-
-ac_fn_c_check_func "$LINENO" "strchrnul" "ac_cv_func_strchrnul"
-if test "x$ac_cv_func_strchrnul" = xyes; then :
-  $as_echo "@%:@define HAVE_STRCHRNUL 1" >>confdefs.h
-
-else
-  case " $LIB@&t@OBJS " in
-  *" strchrnul.$ac_objext "* ) ;;
-  *) LIB@&t@OBJS="$LIB@&t@OBJS strchrnul.$ac_objext"
- ;;
-esac
-
-fi
-
-
-
-ac_fn_c_check_decl "$LINENO" "AUDIT_USER_TTY" "ac_cv_have_decl_AUDIT_USER_TTY" "#include <linux/audit.h>
-"
-if test "x$ac_cv_have_decl_AUDIT_USER_TTY" = xyes; then :
-  ac_have_decl=1
-else
-  ac_have_decl=0
-fi
-
-cat >>confdefs.h <<_ACEOF
-@%:@define HAVE_DECL_AUDIT_USER_TTY $ac_have_decl
-_ACEOF
-
-
-ac_fn_c_check_decl "$LINENO" "confstr" "ac_cv_have_decl_confstr" "$ac_includes_default"
-if test "x$ac_cv_have_decl_confstr" = xyes; then :
-  ac_have_decl=1
-else
-  ac_have_decl=0
-fi
-
-cat >>confdefs.h <<_ACEOF
-@%:@define HAVE_DECL_CONFSTR $ac_have_decl
-_ACEOF
-
-ac_fn_c_check_decl "$LINENO" "printf" "ac_cv_have_decl_printf" "$ac_includes_default"
-if test "x$ac_cv_have_decl_printf" = xyes; then :
-  ac_have_decl=1
-else
-  ac_have_decl=0
-fi
-
-cat >>confdefs.h <<_ACEOF
-@%:@define HAVE_DECL_PRINTF $ac_have_decl
-_ACEOF
-
-ac_fn_c_check_decl "$LINENO" "sbrk" "ac_cv_have_decl_sbrk" "$ac_includes_default"
-if test "x$ac_cv_have_decl_sbrk" = xyes; then :
-  ac_have_decl=1
-else
-  ac_have_decl=0
-fi
-
-cat >>confdefs.h <<_ACEOF
-@%:@define HAVE_DECL_SBRK $ac_have_decl
-_ACEOF
-
-ac_fn_c_check_decl "$LINENO" "setregid" "ac_cv_have_decl_setregid" "$ac_includes_default"
-if test "x$ac_cv_have_decl_setregid" = xyes; then :
-  ac_have_decl=1
-else
-  ac_have_decl=0
-fi
-
-cat >>confdefs.h <<_ACEOF
-@%:@define HAVE_DECL_SETREGID $ac_have_decl
-_ACEOF
-
-ac_fn_c_check_decl "$LINENO" "strcpy" "ac_cv_have_decl_strcpy" "$ac_includes_default"
-if test "x$ac_cv_have_decl_strcpy" = xyes; then :
-  ac_have_decl=1
-else
-  ac_have_decl=0
-fi
-
-cat >>confdefs.h <<_ACEOF
-@%:@define HAVE_DECL_STRCPY $ac_have_decl
-_ACEOF
-
-ac_fn_c_check_decl "$LINENO" "strsignal" "ac_cv_have_decl_strsignal" "$ac_includes_default"
-if test "x$ac_cv_have_decl_strsignal" = xyes; then :
-  ac_have_decl=1
-else
-  ac_have_decl=0
-fi
-
-cat >>confdefs.h <<_ACEOF
-@%:@define HAVE_DECL_STRSIGNAL $ac_have_decl
-_ACEOF
-
-
-ac_fn_c_check_decl "$LINENO" "strtold" "ac_cv_have_decl_strtold" "$ac_includes_default"
-if test "x$ac_cv_have_decl_strtold" = xyes; then :
-  ac_have_decl=1
-else
-  ac_have_decl=0
-fi
-
-cat >>confdefs.h <<_ACEOF
-@%:@define HAVE_DECL_STRTOLD $ac_have_decl
-_ACEOF
-if test $ac_have_decl = 1; then :
-  
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for broken strtold" >&5
-$as_echo_n "checking for broken strtold... " >&6; }
-    if ${bash_cv_strtold_broken+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <stdlib.h>
-int
-main ()
-{
-int main() { long double r; char *foo, bar; r = strtold(foo, &bar);}
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  bash_cv_strtold_broken=no
-else
-  bash_cv_strtold_broken=yes
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-       
-    
-fi
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_strtold_broken" >&5
-$as_echo "$bash_cv_strtold_broken" >&6; }
-    if test "$bash_cv_strtold_broken" = "yes" ; then
-       $as_echo "@%:@define STRTOLD_BROKEN 1" >>confdefs.h
-
-    fi
-
-fi
-
-
-
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for declaration of strtoimax" >&5
-$as_echo_n "checking for declaration of strtoimax... " >&6; }
-if ${bash_cv_decl_strtoimax+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#if STDC_HEADERS
-#  include <stdlib.h>
-#endif
-#if HAVE_INTTYPES_H
-#  include <inttypes.h>
-#endif
-
-int
-main ()
-{
-return !strtoimax;
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  bash_cv_decl_strtoimax=yes
-else
-  bash_cv_decl_strtoimax=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_decl_strtoimax" >&5
-$as_echo "$bash_cv_decl_strtoimax" >&6; }
-bash_tr_func=HAVE_DECL_`echo strtoimax | tr 'abcdefghijklmnopqrstuvwxyz' 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'`
-if test $bash_cv_decl_strtoimax = yes; then
-  cat >>confdefs.h <<_ACEOF
-@%:@define $bash_tr_func 1
-_ACEOF
-
-else
-  cat >>confdefs.h <<_ACEOF
-@%:@define $bash_tr_func 0
-_ACEOF
-
-fi
-
-
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for declaration of strtol" >&5
-$as_echo_n "checking for declaration of strtol... " >&6; }
-if ${bash_cv_decl_strtol+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#if STDC_HEADERS
-#  include <stdlib.h>
-#endif
-#if HAVE_INTTYPES_H
-#  include <inttypes.h>
-#endif
-
-int
-main ()
-{
-return !strtol;
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  bash_cv_decl_strtol=yes
-else
-  bash_cv_decl_strtol=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_decl_strtol" >&5
-$as_echo "$bash_cv_decl_strtol" >&6; }
-bash_tr_func=HAVE_DECL_`echo strtol | tr 'abcdefghijklmnopqrstuvwxyz' 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'`
-if test $bash_cv_decl_strtol = yes; then
-  cat >>confdefs.h <<_ACEOF
-@%:@define $bash_tr_func 1
-_ACEOF
-
-else
-  cat >>confdefs.h <<_ACEOF
-@%:@define $bash_tr_func 0
-_ACEOF
-
-fi
-
-
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for declaration of strtoll" >&5
-$as_echo_n "checking for declaration of strtoll... " >&6; }
-if ${bash_cv_decl_strtoll+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#if STDC_HEADERS
-#  include <stdlib.h>
-#endif
-#if HAVE_INTTYPES_H
-#  include <inttypes.h>
-#endif
-
-int
-main ()
-{
-return !strtoll;
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  bash_cv_decl_strtoll=yes
-else
-  bash_cv_decl_strtoll=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_decl_strtoll" >&5
-$as_echo "$bash_cv_decl_strtoll" >&6; }
-bash_tr_func=HAVE_DECL_`echo strtoll | tr 'abcdefghijklmnopqrstuvwxyz' 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'`
-if test $bash_cv_decl_strtoll = yes; then
-  cat >>confdefs.h <<_ACEOF
-@%:@define $bash_tr_func 1
-_ACEOF
-
-else
-  cat >>confdefs.h <<_ACEOF
-@%:@define $bash_tr_func 0
-_ACEOF
-
-fi
-
-
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for declaration of strtoul" >&5
-$as_echo_n "checking for declaration of strtoul... " >&6; }
-if ${bash_cv_decl_strtoul+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#if STDC_HEADERS
-#  include <stdlib.h>
-#endif
-#if HAVE_INTTYPES_H
-#  include <inttypes.h>
-#endif
-
-int
-main ()
-{
-return !strtoul;
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  bash_cv_decl_strtoul=yes
-else
-  bash_cv_decl_strtoul=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_decl_strtoul" >&5
-$as_echo "$bash_cv_decl_strtoul" >&6; }
-bash_tr_func=HAVE_DECL_`echo strtoul | tr 'abcdefghijklmnopqrstuvwxyz' 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'`
-if test $bash_cv_decl_strtoul = yes; then
-  cat >>confdefs.h <<_ACEOF
-@%:@define $bash_tr_func 1
-_ACEOF
-
-else
-  cat >>confdefs.h <<_ACEOF
-@%:@define $bash_tr_func 0
-_ACEOF
-
-fi
-
-
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for declaration of strtoull" >&5
-$as_echo_n "checking for declaration of strtoull... " >&6; }
-if ${bash_cv_decl_strtoull+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#if STDC_HEADERS
-#  include <stdlib.h>
-#endif
-#if HAVE_INTTYPES_H
-#  include <inttypes.h>
-#endif
-
-int
-main ()
-{
-return !strtoull;
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  bash_cv_decl_strtoull=yes
-else
-  bash_cv_decl_strtoull=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_decl_strtoull" >&5
-$as_echo "$bash_cv_decl_strtoull" >&6; }
-bash_tr_func=HAVE_DECL_`echo strtoull | tr 'abcdefghijklmnopqrstuvwxyz' 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'`
-if test $bash_cv_decl_strtoull = yes; then
-  cat >>confdefs.h <<_ACEOF
-@%:@define $bash_tr_func 1
-_ACEOF
-
-else
-  cat >>confdefs.h <<_ACEOF
-@%:@define $bash_tr_func 0
-_ACEOF
-
-fi
-
-
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for declaration of strtoumax" >&5
-$as_echo_n "checking for declaration of strtoumax... " >&6; }
-if ${bash_cv_decl_strtoumax+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#if STDC_HEADERS
-#  include <stdlib.h>
-#endif
-#if HAVE_INTTYPES_H
-#  include <inttypes.h>
-#endif
-
-int
-main ()
-{
-return !strtoumax;
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  bash_cv_decl_strtoumax=yes
-else
-  bash_cv_decl_strtoumax=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_decl_strtoumax" >&5
-$as_echo "$bash_cv_decl_strtoumax" >&6; }
-bash_tr_func=HAVE_DECL_`echo strtoumax | tr 'abcdefghijklmnopqrstuvwxyz' 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'`
-if test $bash_cv_decl_strtoumax = yes; then
-  cat >>confdefs.h <<_ACEOF
-@%:@define $bash_tr_func 1
-_ACEOF
-
-else
-  cat >>confdefs.h <<_ACEOF
-@%:@define $bash_tr_func 0
-_ACEOF
-
-fi
-
-
-
-
-
-
-  
-  for ac_func in $ac_func_list
-do :
-  as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
-ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
-if eval test \"x\$"$as_ac_var"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-@%:@define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1
-_ACEOF
-fi
-done
-
-  
-
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for working mktime" >&5
-$as_echo_n "checking for working mktime... " >&6; }
-if ${ac_cv_func_working_mktime+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test "$cross_compiling" = yes; then :
-  ac_cv_func_working_mktime=no
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-/* Test program from Paul Eggert and Tony Leneis.  */
-#ifdef TIME_WITH_SYS_TIME
-# include <sys/time.h>
-# include <time.h>
-#else
-# ifdef HAVE_SYS_TIME_H
-#  include <sys/time.h>
-# else
-#  include <time.h>
-# endif
-#endif
-
-#include <limits.h>
-#include <stdlib.h>
-
-#ifdef HAVE_UNISTD_H
-# include <unistd.h>
-#endif
-
-#ifndef HAVE_ALARM
-# define alarm(X) /* empty */
-#endif
-
-/* Work around redefinition to rpl_putenv by other config tests.  */
-#undef putenv
-
-static time_t time_t_max;
-static time_t time_t_min;
-
-/* Values we'll use to set the TZ environment variable.  */
-static const char *tz_strings[] = {
-  (const char *) 0, "TZ=GMT0", "TZ=JST-9",
-  "TZ=EST+3EDT+2,M10.1.0/00:00:00,M2.3.0/00:00:00"
-};
-#define N_STRINGS (sizeof (tz_strings) / sizeof (tz_strings[0]))
-
-/* Return 0 if mktime fails to convert a date in the spring-forward gap.
-   Based on a problem report from Andreas Jaeger.  */
-static int
-spring_forward_gap ()
-{
-  /* glibc (up to about 1998-10-07) failed this test. */
-  struct tm tm;
-
-  /* Use the portable POSIX.1 specification "TZ=PST8PDT,M4.1.0,M10.5.0"
-     instead of "TZ=America/Vancouver" in order to detect the bug even
-     on systems that don't support the Olson extension, or don't have the
-     full zoneinfo tables installed.  */
-  putenv ((char*) "TZ=PST8PDT,M4.1.0,M10.5.0");
-
-  tm.tm_year = 98;
-  tm.tm_mon = 3;
-  tm.tm_mday = 5;
-  tm.tm_hour = 2;
-  tm.tm_min = 0;
-  tm.tm_sec = 0;
-  tm.tm_isdst = -1;
-  return mktime (&tm) != (time_t) -1;
-}
-
-static int
-mktime_test1 (time_t now)
-{
-  struct tm *lt;
-  return ! (lt = localtime (&now)) || mktime (lt) == now;
-}
-
-static int
-mktime_test (time_t now)
-{
-  return (mktime_test1 (now)
-         && mktime_test1 ((time_t) (time_t_max - now))
-         && mktime_test1 ((time_t) (time_t_min + now)));
-}
-
-static int
-irix_6_4_bug ()
-{
-  /* Based on code from Ariel Faigon.  */
-  struct tm tm;
-  tm.tm_year = 96;
-  tm.tm_mon = 3;
-  tm.tm_mday = 0;
-  tm.tm_hour = 0;
-  tm.tm_min = 0;
-  tm.tm_sec = 0;
-  tm.tm_isdst = -1;
-  mktime (&tm);
-  return tm.tm_mon == 2 && tm.tm_mday == 31;
-}
-
-static int
-bigtime_test (int j)
-{
-  struct tm tm;
-  time_t now;
-  tm.tm_year = tm.tm_mon = tm.tm_mday = tm.tm_hour = tm.tm_min = tm.tm_sec = j;
-  now = mktime (&tm);
-  if (now != (time_t) -1)
-    {
-      struct tm *lt = localtime (&now);
-      if (! (lt
-            && lt->tm_year == tm.tm_year
-            && lt->tm_mon == tm.tm_mon
-            && lt->tm_mday == tm.tm_mday
-            && lt->tm_hour == tm.tm_hour
-            && lt->tm_min == tm.tm_min
-            && lt->tm_sec == tm.tm_sec
-            && lt->tm_yday == tm.tm_yday
-            && lt->tm_wday == tm.tm_wday
-            && ((lt->tm_isdst < 0 ? -1 : 0 < lt->tm_isdst)
-                 == (tm.tm_isdst < 0 ? -1 : 0 < tm.tm_isdst))))
-       return 0;
-    }
-  return 1;
-}
-
-static int
-year_2050_test ()
-{
-  /* The correct answer for 2050-02-01 00:00:00 in Pacific time,
-     ignoring leap seconds.  */
-  unsigned long int answer = 2527315200UL;
-
-  struct tm tm;
-  time_t t;
-  tm.tm_year = 2050 - 1900;
-  tm.tm_mon = 2 - 1;
-  tm.tm_mday = 1;
-  tm.tm_hour = tm.tm_min = tm.tm_sec = 0;
-  tm.tm_isdst = -1;
-
-  /* Use the portable POSIX.1 specification "TZ=PST8PDT,M4.1.0,M10.5.0"
-     instead of "TZ=America/Vancouver" in order to detect the bug even
-     on systems that don't support the Olson extension, or don't have the
-     full zoneinfo tables installed.  */
-  putenv ((char*) "TZ=PST8PDT,M4.1.0,M10.5.0");
-
-  t = mktime (&tm);
-
-  /* Check that the result is either a failure, or close enough
-     to the correct answer that we can assume the discrepancy is
-     due to leap seconds.  */
-  return (t == (time_t) -1
-         || (0 < t && answer - 120 <= t && t <= answer + 120));
-}
-
-int
-main ()
-{
-  time_t t, delta;
-  int i, j;
-
-  /* This test makes some buggy mktime implementations loop.
-     Give up after 60 seconds; a mktime slower than that
-     isn't worth using anyway.  */
-  alarm (60);
-
-  for (;;)
-    {
-      t = (time_t_max << 1) + 1;
-      if (t <= time_t_max)
-       break;
-      time_t_max = t;
-    }
-  time_t_min = - ((time_t) ~ (time_t) 0 == (time_t) -1) - time_t_max;
-
-  delta = time_t_max / 997; /* a suitable prime number */
-  for (i = 0; i < N_STRINGS; i++)
-    {
-      if (tz_strings[i])
-       putenv ((char*) tz_strings[i]);
-
-      for (t = 0; t <= time_t_max - delta; t += delta)
-       if (! mktime_test (t))
-         return 1;
-      if (! (mktime_test ((time_t) 1)
-            && mktime_test ((time_t) (60 * 60))
-            && mktime_test ((time_t) (60 * 60 * 24))))
-       return 1;
-
-      for (j = 1; ; j <<= 1)
-       if (! bigtime_test (j))
-         return 1;
-       else if (INT_MAX / 2 < j)
-         break;
-      if (! bigtime_test (INT_MAX))
-       return 1;
-    }
-  return ! (irix_6_4_bug () && spring_forward_gap () && year_2050_test ());
-}
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-  ac_cv_func_working_mktime=yes
-else
-  ac_cv_func_working_mktime=no
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_func_working_mktime" >&5
-$as_echo "$ac_cv_func_working_mktime" >&6; }
-if test $ac_cv_func_working_mktime = no; then
-  case " $LIB@&t@OBJS " in
-  *" mktime.$ac_objext "* ) ;;
-  *) LIB@&t@OBJS="$LIB@&t@OBJS mktime.$ac_objext"
- ;;
-esac
-
-fi
-
-
-
-for ac_header in argz.h errno.h fcntl.h malloc.h stdio_ext.h
-do :
-  as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
-ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default"
-if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-@%:@define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
-fi
-
-done
-
-
-
-for ac_func in getpagesize
-do :
-  ac_fn_c_check_func "$LINENO" "getpagesize" "ac_cv_func_getpagesize"
-if test "x$ac_cv_func_getpagesize" = xyes; then :
-  cat >>confdefs.h <<_ACEOF
-@%:@define HAVE_GETPAGESIZE 1
-_ACEOF
-fi
-done
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for working mmap" >&5
-$as_echo_n "checking for working mmap... " >&6; }
-if ${ac_cv_func_mmap_fixed_mapped+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test "$cross_compiling" = yes; then :
-  ac_cv_func_mmap_fixed_mapped=no
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-$ac_includes_default
-/* malloc might have been renamed as rpl_malloc. */
-#undef malloc
-
-/* Thanks to Mike Haertel and Jim Avera for this test.
-   Here is a matrix of mmap possibilities:
-       mmap private not fixed
-       mmap private fixed at somewhere currently unmapped
-       mmap private fixed at somewhere already mapped
-       mmap shared not fixed
-       mmap shared fixed at somewhere currently unmapped
-       mmap shared fixed at somewhere already mapped
-   For private mappings, we should verify that changes cannot be read()
-   back from the file, nor mmap's back from the file at a different
-   address.  (There have been systems where private was not correctly
-   implemented like the infamous i386 svr4.0, and systems where the
-   VM page cache was not coherent with the file system buffer cache
-   like early versions of FreeBSD and possibly contemporary NetBSD.)
-   For shared mappings, we should conversely verify that changes get
-   propagated back to all the places they're supposed to be.
-
-   Grep wants private fixed already mapped.
-   The main things grep needs to know about mmap are:
-   * does it exist and is it safe to write into the mmap'd area
-   * how to use it (BSD variants)  */
-
-#include <fcntl.h>
-#include <sys/mman.h>
-
-#if !defined STDC_HEADERS && !defined HAVE_STDLIB_H
-char *malloc ();
-#endif
-
-/* This mess was copied from the GNU getpagesize.h.  */
-#ifndef HAVE_GETPAGESIZE
-# ifdef _SC_PAGESIZE
-#  define getpagesize() sysconf(_SC_PAGESIZE)
-# else /* no _SC_PAGESIZE */
-#  ifdef HAVE_SYS_PARAM_H
-#   include <sys/param.h>
-#   ifdef EXEC_PAGESIZE
-#    define getpagesize() EXEC_PAGESIZE
-#   else /* no EXEC_PAGESIZE */
-#    ifdef NBPG
-#     define getpagesize() NBPG * CLSIZE
-#     ifndef CLSIZE
-#      define CLSIZE 1
-#     endif /* no CLSIZE */
-#    else /* no NBPG */
-#     ifdef NBPC
-#      define getpagesize() NBPC
-#     else /* no NBPC */
-#      ifdef PAGESIZE
-#       define getpagesize() PAGESIZE
-#      endif /* PAGESIZE */
-#     endif /* no NBPC */
-#    endif /* no NBPG */
-#   endif /* no EXEC_PAGESIZE */
-#  else /* no HAVE_SYS_PARAM_H */
-#   define getpagesize() 8192  /* punt totally */
-#  endif /* no HAVE_SYS_PARAM_H */
-# endif /* no _SC_PAGESIZE */
-
-#endif /* no HAVE_GETPAGESIZE */
-
-int
-main ()
-{
-  char *data, *data2, *data3;
-  const char *cdata2;
-  int i, pagesize;
-  int fd, fd2;
-
-  pagesize = getpagesize ();
-
-  /* First, make a file with some known garbage in it. */
-  data = (char *) malloc (pagesize);
-  if (!data)
-    return 1;
-  for (i = 0; i < pagesize; ++i)
-    *(data + i) = rand ();
-  umask (0);
-  fd = creat ("conftest.mmap", 0600);
-  if (fd < 0)
-    return 2;
-  if (write (fd, data, pagesize) != pagesize)
-    return 3;
-  close (fd);
-
-  /* Next, check that the tail of a page is zero-filled.  File must have
-     non-zero length, otherwise we risk SIGBUS for entire page.  */
-  fd2 = open ("conftest.txt", O_RDWR | O_CREAT | O_TRUNC, 0600);
-  if (fd2 < 0)
-    return 4;
-  cdata2 = "";
-  if (write (fd2, cdata2, 1) != 1)
-    return 5;
-  data2 = (char *) mmap (0, pagesize, PROT_READ | PROT_WRITE, MAP_SHARED, fd2, 0L);
-  if (data2 == MAP_FAILED)
-    return 6;
-  for (i = 0; i < pagesize; ++i)
-    if (*(data2 + i))
-      return 7;
-  close (fd2);
-  if (munmap (data2, pagesize))
-    return 8;
-
-  /* Next, try to mmap the file at a fixed address which already has
-     something else allocated at it.  If we can, also make sure that
-     we see the same garbage.  */
-  fd = open ("conftest.mmap", O_RDWR);
-  if (fd < 0)
-    return 9;
-  if (data2 != mmap (data2, pagesize, PROT_READ | PROT_WRITE,
-                    MAP_PRIVATE | MAP_FIXED, fd, 0L))
-    return 10;
-  for (i = 0; i < pagesize; ++i)
-    if (*(data + i) != *(data2 + i))
-      return 11;
-
-  /* Finally, make sure that changes to the mapped area do not
-     percolate back to the file as seen by read().  (This is a bug on
-     some variants of i386 svr4.0.)  */
-  for (i = 0; i < pagesize; ++i)
-    *(data2 + i) = *(data2 + i) + 1;
-  data3 = (char *) malloc (pagesize);
-  if (!data3)
-    return 12;
-  if (read (fd, data3, pagesize) != pagesize)
-    return 13;
-  for (i = 0; i < pagesize; ++i)
-    if (*(data + i) != *(data3 + i))
-      return 14;
-  close (fd);
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-  ac_cv_func_mmap_fixed_mapped=yes
-else
-  ac_cv_func_mmap_fixed_mapped=no
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_func_mmap_fixed_mapped" >&5
-$as_echo "$ac_cv_func_mmap_fixed_mapped" >&6; }
-if test $ac_cv_func_mmap_fixed_mapped = yes; then
-  
-$as_echo "@%:@define HAVE_MMAP 1" >>confdefs.h
-
-fi
-rm -f conftest.mmap conftest.txt
-
-for ac_func in __argz_count __argz_next __argz_stringify dcgettext mempcpy \
-               munmap stpcpy strcspn strdup
-do :
-  as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
-ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
-if eval test \"x\$"$as_ac_var"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-@%:@define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1
-_ACEOF
-fi
-done
-
-
-INTL_DEP= INTL_INC= LIBINTL_H=
-if test "x$USE_INCLUDED_LIBINTL" = "xyes"; then
-       INTL_DEP='${INTL_LIBDIR}/libintl.a'
-       INTL_INC='-I${INTL_LIBSRC} -I${INTL_BUILDDIR}'
-       LIBINTL_H='${INTL_BUILDDIR}/libintl.h'
-fi
-
-
-
-
-
-
-for ac_header in wctype.h
-do :
-  ac_fn_c_check_header_mongrel "$LINENO" "wctype.h" "ac_cv_header_wctype_h" "$ac_includes_default"
-if test "x$ac_cv_header_wctype_h" = xyes; then :
-  cat >>confdefs.h <<_ACEOF
-@%:@define HAVE_WCTYPE_H 1
-_ACEOF
-fi
-
-done
-
-for ac_header in wchar.h
-do :
-  ac_fn_c_check_header_mongrel "$LINENO" "wchar.h" "ac_cv_header_wchar_h" "$ac_includes_default"
-if test "x$ac_cv_header_wchar_h" = xyes; then :
-  cat >>confdefs.h <<_ACEOF
-@%:@define HAVE_WCHAR_H 1
-_ACEOF
-fi
-
-done
-
-for ac_header in langinfo.h
-do :
-  ac_fn_c_check_header_mongrel "$LINENO" "langinfo.h" "ac_cv_header_langinfo_h" "$ac_includes_default"
-if test "x$ac_cv_header_langinfo_h" = xyes; then :
-  cat >>confdefs.h <<_ACEOF
-@%:@define HAVE_LANGINFO_H 1
-_ACEOF
-fi
-
-done
-
-
-ac_fn_c_check_func "$LINENO" "mbrlen" "ac_cv_func_mbrlen"
-if test "x$ac_cv_func_mbrlen" = xyes; then :
-  $as_echo "@%:@define HAVE_MBRLEN 1" >>confdefs.h
-
-fi
-
-ac_fn_c_check_func "$LINENO" "mbscasecmp" "ac_cv_func_mbscasecmp"
-if test "x$ac_cv_func_mbscasecmp" = xyes; then :
-  $as_echo "@%:@define HAVE_MBSCMP 1" >>confdefs.h
-
-fi
-
-ac_fn_c_check_func "$LINENO" "mbscmp" "ac_cv_func_mbscmp"
-if test "x$ac_cv_func_mbscmp" = xyes; then :
-  $as_echo "@%:@define HAVE_MBSCMP 1" >>confdefs.h
-
-fi
-
-ac_fn_c_check_func "$LINENO" "mbsnrtowcs" "ac_cv_func_mbsnrtowcs"
-if test "x$ac_cv_func_mbsnrtowcs" = xyes; then :
-  $as_echo "@%:@define HAVE_MBSNRTOWCS 1" >>confdefs.h
-
-fi
-
-ac_fn_c_check_func "$LINENO" "mbsrtowcs" "ac_cv_func_mbsrtowcs"
-if test "x$ac_cv_func_mbsrtowcs" = xyes; then :
-  $as_echo "@%:@define HAVE_MBSRTOWCS 1" >>confdefs.h
-
-fi
-
-
-ac_fn_c_check_func "$LINENO" "mbschr" "ac_cv_func_mbschr"
-if test "x$ac_cv_func_mbschr" = xyes; then :
-  $as_echo "@%:@define HAVE_MBSCHR 1" >>confdefs.h
-
-else
-  case " $LIB@&t@OBJS " in
-  *" mbschr.$ac_objext "* ) ;;
-  *) LIB@&t@OBJS="$LIB@&t@OBJS mbschr.$ac_objext"
- ;;
-esac
-
-fi
-
-
-
-ac_fn_c_check_func "$LINENO" "wcrtomb" "ac_cv_func_wcrtomb"
-if test "x$ac_cv_func_wcrtomb" = xyes; then :
-  $as_echo "@%:@define HAVE_WCRTOMB 1" >>confdefs.h
-
-fi
-
-ac_fn_c_check_func "$LINENO" "wcscoll" "ac_cv_func_wcscoll"
-if test "x$ac_cv_func_wcscoll" = xyes; then :
-  $as_echo "@%:@define HAVE_WCSCOLL 1" >>confdefs.h
-
-fi
-
-ac_fn_c_check_func "$LINENO" "wcsdup" "ac_cv_func_wcsdup"
-if test "x$ac_cv_func_wcsdup" = xyes; then :
-  $as_echo "@%:@define HAVE_WCSDUP 1" >>confdefs.h
-
-fi
-
-ac_fn_c_check_func "$LINENO" "wcwidth" "ac_cv_func_wcwidth"
-if test "x$ac_cv_func_wcwidth" = xyes; then :
-  $as_echo "@%:@define HAVE_WCWIDTH 1" >>confdefs.h
-
-fi
-
-ac_fn_c_check_func "$LINENO" "wctype" "ac_cv_func_wctype"
-if test "x$ac_cv_func_wctype" = xyes; then :
-  $as_echo "@%:@define HAVE_WCTYPE 1" >>confdefs.h
-
-fi
-
-
-ac_fn_c_check_func "$LINENO" "wcswidth" "ac_cv_func_wcswidth"
-if test "x$ac_cv_func_wcswidth" = xyes; then :
-  $as_echo "@%:@define HAVE_WCSWIDTH 1" >>confdefs.h
-
-else
-  case " $LIB@&t@OBJS " in
-  *" wcswidth.$ac_objext "* ) ;;
-  *) LIB@&t@OBJS="$LIB@&t@OBJS wcswidth.$ac_objext"
- ;;
-esac
-
-fi
-
-
-
-
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether mbrtowc and mbstate_t are properly declared" >&5
-$as_echo_n "checking whether mbrtowc and mbstate_t are properly declared... " >&6; }
-if ${ac_cv_func_mbrtowc+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-@%:@include <wchar.h>
-int
-main ()
-{
-wchar_t wc;
-             char const s[] = "";
-             size_t n = 1;
-             mbstate_t state;
-             return ! (sizeof state && (mbrtowc) (&wc, s, n, &state));
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  ac_cv_func_mbrtowc=yes
-else
-  ac_cv_func_mbrtowc=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_func_mbrtowc" >&5
-$as_echo "$ac_cv_func_mbrtowc" >&6; }
-  if test $ac_cv_func_mbrtowc = yes; then
-    
-$as_echo "@%:@define HAVE_MBRTOWC 1" >>confdefs.h
-
-  fi
-
-if test $ac_cv_func_mbrtowc = yes; then
-       $as_echo "@%:@define HAVE_MBSTATE_T 1" >>confdefs.h
-
-fi
-
-for ac_func in iswlower iswupper towlower towupper iswctype
-do :
-  as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
-ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
-if eval test \"x\$"$as_ac_var"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-@%:@define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1
-_ACEOF
-fi
-done
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for nl_langinfo and CODESET" >&5
-$as_echo_n "checking for nl_langinfo and CODESET... " >&6; }
-if ${bash_cv_langinfo_codeset+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <langinfo.h>
-int
-main ()
-{
-char* cs = nl_langinfo(CODESET);
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  bash_cv_langinfo_codeset=yes
-else
-  bash_cv_langinfo_codeset=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_langinfo_codeset" >&5
-$as_echo "$bash_cv_langinfo_codeset" >&6; }
-if test $bash_cv_langinfo_codeset = yes; then
-  $as_echo "@%:@define HAVE_LANGINFO_CODESET 1" >>confdefs.h
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for wchar_t in wchar.h" >&5
-$as_echo_n "checking for wchar_t in wchar.h... " >&6; }
-if ${bash_cv_type_wchar_t+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <wchar.h>
-
-int
-main ()
-{
-
-        wchar_t foo;
-        foo = 0;
-
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  bash_cv_type_wchar_t=yes
-else
-  bash_cv_type_wchar_t=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_type_wchar_t" >&5
-$as_echo "$bash_cv_type_wchar_t" >&6; }
-if test $bash_cv_type_wchar_t = yes; then
-        
-$as_echo "@%:@define HAVE_WCHAR_T 1" >>confdefs.h
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for wctype_t in wctype.h" >&5
-$as_echo_n "checking for wctype_t in wctype.h... " >&6; }
-if ${bash_cv_type_wctype_t+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <wctype.h>
-int
-main ()
-{
-
-        wctype_t foo;
-        foo = 0;
-
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  bash_cv_type_wctype_t=yes
-else
-  bash_cv_type_wctype_t=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_type_wctype_t" >&5
-$as_echo "$bash_cv_type_wctype_t" >&6; }
-if test $bash_cv_type_wctype_t = yes; then
-        
-$as_echo "@%:@define HAVE_WCTYPE_T 1" >>confdefs.h
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for wint_t in wctype.h" >&5
-$as_echo_n "checking for wint_t in wctype.h... " >&6; }
-if ${bash_cv_type_wint_t+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <wctype.h>
-int
-main ()
-{
-
-        wint_t foo;
-        foo = 0;
-
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  bash_cv_type_wint_t=yes
-else
-  bash_cv_type_wint_t=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_type_wint_t" >&5
-$as_echo "$bash_cv_type_wint_t" >&6; }
-if test $bash_cv_type_wint_t = yes; then
-        
-$as_echo "@%:@define HAVE_WINT_T 1" >>confdefs.h
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for wcwidth broken with unicode combining characters" >&5
-$as_echo_n "checking for wcwidth broken with unicode combining characters... " >&6; }
-if ${bash_cv_wcwidth_broken+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test "$cross_compiling" = yes; then :
-  { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error $? "cannot run test program while cross compiling
-See \`config.log' for more details" "$LINENO" 5; }
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#include <unistd.h>
-#include <stdlib.h>
-#include <stdio.h>
-
-#include <locale.h>
-#include <wchar.h>
-
-main(c, v)
-int     c;
-char    **v;
-{
-        int     w;
-
-        setlocale(LC_ALL, "en_US.UTF-8");
-        w = wcwidth (0x0301);
-        exit (w == 0);  /* exit 0 if wcwidth broken */
-}
-
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-  bash_cv_wcwidth_broken=yes
-else
-  bash_cv_wcwdith_broken=no
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_wcwidth_broken" >&5
-$as_echo "$bash_cv_wcwidth_broken" >&6; }
-if test $bash_cv_wcwidth_broken = yes; then
-        
-$as_echo "@%:@define WCWIDTH_BROKEN 1" >>confdefs.h
-
-fi
-
-if test "$am_cv_func_iconv" = yes; then
-       OLDLIBS="$LIBS"
-       LIBS="$LIBS $LIBICONV"
-       for ac_func in locale_charset
-do :
-  ac_fn_c_check_func "$LINENO" "locale_charset" "ac_cv_func_locale_charset"
-if test "x$ac_cv_func_locale_charset" = xyes; then :
-  cat >>confdefs.h <<_ACEOF
-@%:@define HAVE_LOCALE_CHARSET 1
-_ACEOF
-fi
-done
-
-       LIBS="$OLDLIBS"
-fi
-
-
-
-if test "$opt_static_link" != yes; then
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for dlopen in -ldl" >&5
-$as_echo_n "checking for dlopen in -ldl... " >&6; }
-if ${ac_cv_lib_dl_dlopen+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_check_lib_save_LIBS=$LIBS
-LIBS="-ldl  $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-/* Override any GCC internal prototype to avoid an error.
-   Use char because int might match the return type of a GCC
-   builtin and then its argument prototype would still apply.  */
-#ifdef __cplusplus
-extern "C"
-#endif
-char dlopen ();
-int
-main ()
-{
-return dlopen ();
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  ac_cv_lib_dl_dlopen=yes
-else
-  ac_cv_lib_dl_dlopen=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dl_dlopen" >&5
-$as_echo "$ac_cv_lib_dl_dlopen" >&6; }
-if test "x$ac_cv_lib_dl_dlopen" = xyes; then :
-  cat >>confdefs.h <<_ACEOF
-@%:@define HAVE_LIBDL 1
-_ACEOF
-
-  LIBS="-ldl $LIBS"
-
-fi
-
-for ac_func in dlopen dlclose dlsym
-do :
-  as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
-ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
-if eval test \"x\$"$as_ac_var"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-@%:@define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1
-_ACEOF
-fi
-done
-
-fi
-
-ac_fn_c_check_decl "$LINENO" "sys_siglist" "ac_cv_have_decl_sys_siglist" "#include <signal.h>
-/* NetBSD declares sys_siglist in unistd.h.  */
-#ifdef HAVE_UNISTD_H
-# include <unistd.h>
-#endif
-
-"
-if test "x$ac_cv_have_decl_sys_siglist" = xyes; then :
-  ac_have_decl=1
-else
-  ac_have_decl=0
-fi
-
-cat >>confdefs.h <<_ACEOF
-@%:@define HAVE_DECL_SYS_SIGLIST $ac_have_decl
-_ACEOF
-
-
-
-if test "$ac_cv_func_inet_aton" != 'yes'; then
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for inet_aton" >&5
-$as_echo_n "checking for inet_aton... " >&6; }
-if ${bash_cv_func_inet_aton+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#include <sys/types.h>
-#include <netinet/in.h>
-#include <arpa/inet.h>
-struct in_addr ap;
-int
-main ()
-{
- inet_aton("127.0.0.1", &ap); 
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  bash_cv_func_inet_aton=yes
-else
-  bash_cv_func_inet_aton=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_func_inet_aton" >&5
-$as_echo "$bash_cv_func_inet_aton" >&6; }
-if test $bash_cv_func_inet_aton = yes; then
-  $as_echo "@%:@define HAVE_INET_ATON 1" >>confdefs.h
-
-else
-  case " $LIB@&t@OBJS " in
-  *" inet_aton.$ac_objext "* ) ;;
-  *) LIB@&t@OBJS="$LIB@&t@OBJS inet_aton.$ac_objext"
- ;;
-esac
-
-fi
-
-fi
-
-case "$host_os" in
-irix4*)        { $as_echo "$as_me:${as_lineno-$LINENO}: checking for getpwent in -lsun" >&5
-$as_echo_n "checking for getpwent in -lsun... " >&6; }
-if ${ac_cv_lib_sun_getpwent+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_check_lib_save_LIBS=$LIBS
-LIBS="-lsun  $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-/* Override any GCC internal prototype to avoid an error.
-   Use char because int might match the return type of a GCC
-   builtin and then its argument prototype would still apply.  */
-#ifdef __cplusplus
-extern "C"
-#endif
-char getpwent ();
-int
-main ()
-{
-return getpwent ();
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  ac_cv_lib_sun_getpwent=yes
-else
-  ac_cv_lib_sun_getpwent=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_sun_getpwent" >&5
-$as_echo "$ac_cv_lib_sun_getpwent" >&6; }
-if test "x$ac_cv_lib_sun_getpwent" = xyes; then :
-  cat >>confdefs.h <<_ACEOF
-@%:@define HAVE_LIBSUN 1
-_ACEOF
-
-  LIBS="-lsun $LIBS"
-
-fi
- ;;
-esac
-
-if test "$ac_cv_func_getpeername" = no; then
-       
-if test "X$bash_cv_have_socklib" = "X"; then
-_bash_needmsg=
-else
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for socket library" >&5
-$as_echo_n "checking for socket library... " >&6; }
-_bash_needmsg=yes
-fi
-if ${bash_cv_have_socklib+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for getpeername in -lsocket" >&5
-$as_echo_n "checking for getpeername in -lsocket... " >&6; }
-if ${ac_cv_lib_socket_getpeername+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_check_lib_save_LIBS=$LIBS
-LIBS="-lsocket -lnsl $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-/* Override any GCC internal prototype to avoid an error.
-   Use char because int might match the return type of a GCC
-   builtin and then its argument prototype would still apply.  */
-#ifdef __cplusplus
-extern "C"
-#endif
-char getpeername ();
-int
-main ()
-{
-return getpeername ();
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  ac_cv_lib_socket_getpeername=yes
-else
-  ac_cv_lib_socket_getpeername=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_socket_getpeername" >&5
-$as_echo "$ac_cv_lib_socket_getpeername" >&6; }
-if test "x$ac_cv_lib_socket_getpeername" = xyes; then :
-  bash_cv_have_socklib=yes
-else
-  bash_cv_have_socklib=no
-fi
-
-fi
-
-if test "X$_bash_needmsg" = Xyes; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_have_socklib" >&5
-$as_echo "$bash_cv_have_socklib" >&6; }
-  _bash_needmsg=
-fi
-if test $bash_cv_have_socklib = yes; then
-  # check for libnsl, add it to LIBS if present
-  if test "X$bash_cv_have_libnsl" = "X"; then
-    _bash_needmsg=
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for libnsl" >&5
-$as_echo_n "checking for libnsl... " >&6; }
-    _bash_needmsg=yes
-  fi
-  if ${bash_cv_have_libnsl+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for t_open in -lnsl" >&5
-$as_echo_n "checking for t_open in -lnsl... " >&6; }
-if ${ac_cv_lib_nsl_t_open+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_check_lib_save_LIBS=$LIBS
-LIBS="-lnsl  $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-/* Override any GCC internal prototype to avoid an error.
-   Use char because int might match the return type of a GCC
-   builtin and then its argument prototype would still apply.  */
-#ifdef __cplusplus
-extern "C"
-#endif
-char t_open ();
-int
-main ()
-{
-return t_open ();
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  ac_cv_lib_nsl_t_open=yes
-else
-  ac_cv_lib_nsl_t_open=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_nsl_t_open" >&5
-$as_echo "$ac_cv_lib_nsl_t_open" >&6; }
-if test "x$ac_cv_lib_nsl_t_open" = xyes; then :
-  bash_cv_have_libnsl=yes
-else
-  bash_cv_have_libnsl=no
-fi
-
-fi
-
-  if test "X$_bash_needmsg" = Xyes; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_have_libnsl" >&5
-$as_echo "$bash_cv_have_libnsl" >&6; }
-    _bash_needmsg=
-  fi
-  if test $bash_cv_have_libnsl = yes; then
-    LIBS="-lsocket -lnsl $LIBS"
-  else
-    LIBS="-lsocket $LIBS"
-  fi
-  $as_echo "@%:@define HAVE_LIBSOCKET 1" >>confdefs.h
-
-  $as_echo "@%:@define HAVE_GETPEERNAME 1" >>confdefs.h
-
-fi
-
-fi
-if test "$ac_cv_func_gethostbyname" = no; then
-       if test "X$bash_cv_have_gethostbyname" = "X"; then
-_bash_needmsg=yes
-else
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for gethostbyname in socket library" >&5
-$as_echo_n "checking for gethostbyname in socket library... " >&6; }
-_bash_needmsg=
-fi
-if ${bash_cv_have_gethostbyname+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <netdb.h>
-int
-main ()
-{
- struct hostent *hp;
-  hp = gethostbyname("localhost");
-
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  bash_cv_have_gethostbyname=yes
-else
-  bash_cv_have_gethostbyname=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-
-fi
-
-if test "X$_bash_needmsg" = Xyes; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for gethostbyname in socket library" >&5
-$as_echo_n "checking for gethostbyname in socket library... " >&6; }
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_have_gethostbyname" >&5
-$as_echo "$bash_cv_have_gethostbyname" >&6; }
-if test "$bash_cv_have_gethostbyname" = yes; then
-$as_echo "@%:@define HAVE_GETHOSTBYNAME 1" >>confdefs.h
-
-fi
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for uid_t in sys/types.h" >&5
-$as_echo_n "checking for uid_t in sys/types.h... " >&6; }
-if ${ac_cv_type_uid_t+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <sys/types.h>
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "uid_t" >/dev/null 2>&1; then :
-  ac_cv_type_uid_t=yes
-else
-  ac_cv_type_uid_t=no
-fi
-rm -f conftest*
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_type_uid_t" >&5
-$as_echo "$ac_cv_type_uid_t" >&6; }
-if test $ac_cv_type_uid_t = no; then
-  
-$as_echo "@%:@define uid_t int" >>confdefs.h
-
-  
-$as_echo "@%:@define gid_t int" >>confdefs.h
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking type of array argument to getgroups" >&5
-$as_echo_n "checking type of array argument to getgroups... " >&6; }
-if ${ac_cv_type_getgroups+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test "$cross_compiling" = yes; then :
-  ac_cv_type_getgroups=cross
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-/* Thanks to Mike Rendell for this test.  */
-$ac_includes_default
-#define NGID 256
-#undef MAX
-#define MAX(x, y) ((x) > (y) ? (x) : (y))
-
-int
-main ()
-{
-  gid_t gidset[NGID];
-  int i, n;
-  union { gid_t gval; long int lval; }  val;
-
-  val.lval = -1;
-  for (i = 0; i < NGID; i++)
-    gidset[i] = val.gval;
-  n = getgroups (sizeof (gidset) / MAX (sizeof (int), sizeof (gid_t)) - 1,
-                gidset);
-  /* Exit non-zero if getgroups seems to require an array of ints.  This
-     happens when gid_t is short int but getgroups modifies an array
-     of ints.  */
-  return n > 0 && gidset[n] != val.gval;
-}
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-  ac_cv_type_getgroups=gid_t
-else
-  ac_cv_type_getgroups=int
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-if test $ac_cv_type_getgroups = cross; then
-        cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <unistd.h>
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "getgroups.*int.*gid_t" >/dev/null 2>&1; then :
-  ac_cv_type_getgroups=gid_t
-else
-  ac_cv_type_getgroups=int
-fi
-rm -f conftest*
-
-fi
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_type_getgroups" >&5
-$as_echo "$ac_cv_type_getgroups" >&6; }
-
-cat >>confdefs.h <<_ACEOF
-@%:@define GETGROUPS_T $ac_cv_type_getgroups
-_ACEOF
-
-
-ac_fn_c_check_type "$LINENO" "off_t" "ac_cv_type_off_t" "$ac_includes_default"
-if test "x$ac_cv_type_off_t" = xyes; then :
-  
-else
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define off_t long int
-_ACEOF
-
-fi
-
-ac_fn_c_check_type "$LINENO" "mode_t" "ac_cv_type_mode_t" "$ac_includes_default"
-if test "x$ac_cv_type_mode_t" = xyes; then :
-  
-else
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define mode_t int
-_ACEOF
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for uid_t in sys/types.h" >&5
-$as_echo_n "checking for uid_t in sys/types.h... " >&6; }
-if ${ac_cv_type_uid_t+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <sys/types.h>
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "uid_t" >/dev/null 2>&1; then :
-  ac_cv_type_uid_t=yes
-else
-  ac_cv_type_uid_t=no
-fi
-rm -f conftest*
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_type_uid_t" >&5
-$as_echo "$ac_cv_type_uid_t" >&6; }
-if test $ac_cv_type_uid_t = no; then
-  
-$as_echo "@%:@define uid_t int" >>confdefs.h
-
-  
-$as_echo "@%:@define gid_t int" >>confdefs.h
-
-fi
-
-ac_fn_c_check_type "$LINENO" "pid_t" "ac_cv_type_pid_t" "$ac_includes_default"
-if test "x$ac_cv_type_pid_t" = xyes; then :
-  
-else
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define pid_t int
-_ACEOF
-
-fi
-
-ac_fn_c_check_type "$LINENO" "size_t" "ac_cv_type_size_t" "$ac_includes_default"
-if test "x$ac_cv_type_size_t" = xyes; then :
-  
-else
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define size_t unsigned int
-_ACEOF
-
-fi
-
-ac_fn_c_check_type "$LINENO" "ssize_t" "ac_cv_type_ssize_t" "$ac_includes_default"
-if test "x$ac_cv_type_ssize_t" = xyes; then :
-  
-else
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define ssize_t int
-_ACEOF
-
-fi
-
-ac_fn_c_check_type "$LINENO" "time_t" "ac_cv_type_time_t" "$ac_includes_default"
-if test "x$ac_cv_type_time_t" = xyes; then :
-  
-else
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define time_t long
-_ACEOF
-
-fi
-
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for long long" >&5
-$as_echo_n "checking for long long... " >&6; }
-if ${bash_cv_type_long_long+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-long long ll = 1; int i = 63;
-int
-main ()
-{
-
-long long llm = (long long) -1;
-return ll << i | ll >> i | llm / ll | llm % ll;
-
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  bash_cv_type_long_long='long long'
-else
-  bash_cv_type_long_long='long'
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_type_long_long" >&5
-$as_echo "$bash_cv_type_long_long" >&6; }
-if test "$bash_cv_type_long_long" = 'long long'; then
-  $as_echo "@%:@define HAVE_LONG_LONG 1" >>confdefs.h
-
-fi
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for unsigned long long" >&5
-$as_echo_n "checking for unsigned long long... " >&6; }
-if ${bash_cv_type_unsigned_long_long+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-unsigned long long ull = 1; int i = 63;
-int
-main ()
-{
-
-unsigned long long ullmax = (unsigned long long) -1;
-return ull << i | ull >> i | ullmax / ull | ullmax % ull;
-
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  bash_cv_type_unsigned_long_long='unsigned long long'
-else
-  bash_cv_type_unsigned_long_long='unsigned long'
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_type_unsigned_long_long" >&5
-$as_echo "$bash_cv_type_unsigned_long_long" >&6; }
-if test "$bash_cv_type_unsigned_long_long" = 'unsigned long long'; then
-  $as_echo "@%:@define HAVE_UNSIGNED_LONG_LONG 1" >>confdefs.h
-
-fi
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking return type of signal handlers" >&5
-$as_echo_n "checking return type of signal handlers... " >&6; }
-if ${ac_cv_type_signal+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <sys/types.h>
-#include <signal.h>
-
-int
-main ()
-{
-return *(signal (0, 0)) (0) == 1;
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_cv_type_signal=int
-else
-  ac_cv_type_signal=void
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_type_signal" >&5
-$as_echo "$ac_cv_type_signal" >&6; }
-
-cat >>confdefs.h <<_ACEOF
-@%:@define RETSIGTYPE $ac_cv_type_signal
-_ACEOF
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for sig_atomic_t in signal.h" >&5
-$as_echo_n "checking for sig_atomic_t in signal.h... " >&6; }
-if ${ac_cv_have_sig_atomic_t+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#include <signal.h>
-
-int
-main ()
-{
- sig_atomic_t x; 
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  ac_cv_have_sig_atomic_t=yes
-else
-  ac_cv_have_sig_atomic_t=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_have_sig_atomic_t" >&5
-$as_echo "$ac_cv_have_sig_atomic_t" >&6; }
-if test "$ac_cv_have_sig_atomic_t" = "no"
-then
-    ac_fn_c_check_type "$LINENO" "sig_atomic_t" "ac_cv_type_sig_atomic_t" "$ac_includes_default"
-if test "x$ac_cv_type_sig_atomic_t" = xyes; then :
-  
-else
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define sig_atomic_t int
-_ACEOF
-
-fi
-
-fi
-
-
-# The cast to long int works around a bug in the HP C Compiler
-# version HP92453-01 B.11.11.23709.GP, which incorrectly rejects
-# declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'.
-# This bug is HP SR number 8606223364.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking size of char" >&5
-$as_echo_n "checking size of char... " >&6; }
-if ${ac_cv_sizeof_char+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (char))" "ac_cv_sizeof_char"        "$ac_includes_default"; then :
-  
-else
-  if test "$ac_cv_type_char" = yes; then
-     { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error 77 "cannot compute sizeof (char)
-See \`config.log' for more details" "$LINENO" 5; }
-   else
-     ac_cv_sizeof_char=0
-   fi
-fi
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_char" >&5
-$as_echo "$ac_cv_sizeof_char" >&6; }
-
-
-
-cat >>confdefs.h <<_ACEOF
-@%:@define SIZEOF_CHAR $ac_cv_sizeof_char
-_ACEOF
-
-
-# The cast to long int works around a bug in the HP C Compiler
-# version HP92453-01 B.11.11.23709.GP, which incorrectly rejects
-# declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'.
-# This bug is HP SR number 8606223364.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking size of short" >&5
-$as_echo_n "checking size of short... " >&6; }
-if ${ac_cv_sizeof_short+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (short))" "ac_cv_sizeof_short"        "$ac_includes_default"; then :
-  
-else
-  if test "$ac_cv_type_short" = yes; then
-     { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error 77 "cannot compute sizeof (short)
-See \`config.log' for more details" "$LINENO" 5; }
-   else
-     ac_cv_sizeof_short=0
-   fi
-fi
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_short" >&5
-$as_echo "$ac_cv_sizeof_short" >&6; }
-
-
-
-cat >>confdefs.h <<_ACEOF
-@%:@define SIZEOF_SHORT $ac_cv_sizeof_short
-_ACEOF
-
-
-# The cast to long int works around a bug in the HP C Compiler
-# version HP92453-01 B.11.11.23709.GP, which incorrectly rejects
-# declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'.
-# This bug is HP SR number 8606223364.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking size of int" >&5
-$as_echo_n "checking size of int... " >&6; }
-if ${ac_cv_sizeof_int+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (int))" "ac_cv_sizeof_int"        "$ac_includes_default"; then :
-  
-else
-  if test "$ac_cv_type_int" = yes; then
-     { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error 77 "cannot compute sizeof (int)
-See \`config.log' for more details" "$LINENO" 5; }
-   else
-     ac_cv_sizeof_int=0
-   fi
-fi
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_int" >&5
-$as_echo "$ac_cv_sizeof_int" >&6; }
-
-
-
-cat >>confdefs.h <<_ACEOF
-@%:@define SIZEOF_INT $ac_cv_sizeof_int
-_ACEOF
-
-
-# The cast to long int works around a bug in the HP C Compiler
-# version HP92453-01 B.11.11.23709.GP, which incorrectly rejects
-# declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'.
-# This bug is HP SR number 8606223364.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking size of long" >&5
-$as_echo_n "checking size of long... " >&6; }
-if ${ac_cv_sizeof_long+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (long))" "ac_cv_sizeof_long"        "$ac_includes_default"; then :
-  
-else
-  if test "$ac_cv_type_long" = yes; then
-     { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error 77 "cannot compute sizeof (long)
-See \`config.log' for more details" "$LINENO" 5; }
-   else
-     ac_cv_sizeof_long=0
-   fi
-fi
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_long" >&5
-$as_echo "$ac_cv_sizeof_long" >&6; }
-
-
-
-cat >>confdefs.h <<_ACEOF
-@%:@define SIZEOF_LONG $ac_cv_sizeof_long
-_ACEOF
-
-
-# The cast to long int works around a bug in the HP C Compiler
-# version HP92453-01 B.11.11.23709.GP, which incorrectly rejects
-# declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'.
-# This bug is HP SR number 8606223364.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking size of char *" >&5
-$as_echo_n "checking size of char *... " >&6; }
-if ${ac_cv_sizeof_char_p+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (char *))" "ac_cv_sizeof_char_p"        "$ac_includes_default"; then :
-  
-else
-  if test "$ac_cv_type_char_p" = yes; then
-     { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error 77 "cannot compute sizeof (char *)
-See \`config.log' for more details" "$LINENO" 5; }
-   else
-     ac_cv_sizeof_char_p=0
-   fi
-fi
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_char_p" >&5
-$as_echo "$ac_cv_sizeof_char_p" >&6; }
-
-
-
-cat >>confdefs.h <<_ACEOF
-@%:@define SIZEOF_CHAR_P $ac_cv_sizeof_char_p
-_ACEOF
-
-
-# The cast to long int works around a bug in the HP C Compiler
-# version HP92453-01 B.11.11.23709.GP, which incorrectly rejects
-# declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'.
-# This bug is HP SR number 8606223364.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking size of double" >&5
-$as_echo_n "checking size of double... " >&6; }
-if ${ac_cv_sizeof_double+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (double))" "ac_cv_sizeof_double"        "$ac_includes_default"; then :
-  
-else
-  if test "$ac_cv_type_double" = yes; then
-     { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error 77 "cannot compute sizeof (double)
-See \`config.log' for more details" "$LINENO" 5; }
-   else
-     ac_cv_sizeof_double=0
-   fi
-fi
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_double" >&5
-$as_echo "$ac_cv_sizeof_double" >&6; }
-
-
-
-cat >>confdefs.h <<_ACEOF
-@%:@define SIZEOF_DOUBLE $ac_cv_sizeof_double
-_ACEOF
-
-
-# The cast to long int works around a bug in the HP C Compiler
-# version HP92453-01 B.11.11.23709.GP, which incorrectly rejects
-# declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'.
-# This bug is HP SR number 8606223364.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking size of long long" >&5
-$as_echo_n "checking size of long long... " >&6; }
-if ${ac_cv_sizeof_long_long+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (long long))" "ac_cv_sizeof_long_long"        "$ac_includes_default"; then :
-  
-else
-  if test "$ac_cv_type_long_long" = yes; then
-     { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error 77 "cannot compute sizeof (long long)
-See \`config.log' for more details" "$LINENO" 5; }
-   else
-     ac_cv_sizeof_long_long=0
-   fi
-fi
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_long_long" >&5
-$as_echo "$ac_cv_sizeof_long_long" >&6; }
-
-
-
-cat >>confdefs.h <<_ACEOF
-@%:@define SIZEOF_LONG_LONG $ac_cv_sizeof_long_long
-_ACEOF
-
-
-
-ac_fn_c_check_type "$LINENO" "u_int" "ac_cv_type_u_int" "$ac_includes_default"
-if test "x$ac_cv_type_u_int" = xyes; then :
-  
-else
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define u_int unsigned int
-_ACEOF
-
-fi
-
-ac_fn_c_check_type "$LINENO" "u_long" "ac_cv_type_u_long" "$ac_includes_default"
-if test "x$ac_cv_type_u_long" = xyes; then :
-  
-else
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define u_long unsigned long
-_ACEOF
-
-fi
-
-
-
-if test "$ac_cv_sizeof_short" = 2; then
-  ac_fn_c_check_type "$LINENO" "bits16_t" "ac_cv_type_bits16_t" "$ac_includes_default"
-if test "x$ac_cv_type_bits16_t" = xyes; then :
-  
-else
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define bits16_t short
-_ACEOF
-
-fi
-
-elif test "$ac_cv_sizeof_char" = 2; then
-  ac_fn_c_check_type "$LINENO" "bits16_t" "ac_cv_type_bits16_t" "$ac_includes_default"
-if test "x$ac_cv_type_bits16_t" = xyes; then :
-  
-else
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define bits16_t char
-_ACEOF
-
-fi
-
-else
-  ac_fn_c_check_type "$LINENO" "bits16_t" "ac_cv_type_bits16_t" "$ac_includes_default"
-if test "x$ac_cv_type_bits16_t" = xyes; then :
-  
-else
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define bits16_t short
-_ACEOF
-
-fi
-
-fi
-
-
-if test "$ac_cv_sizeof_short" = 2; then
-  ac_fn_c_check_type "$LINENO" "u_bits16_t" "ac_cv_type_u_bits16_t" "$ac_includes_default"
-if test "x$ac_cv_type_u_bits16_t" = xyes; then :
-  
-else
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define u_bits16_t unsigned short
-_ACEOF
-
-fi
-
-elif test "$ac_cv_sizeof_char" = 2; then
-  ac_fn_c_check_type "$LINENO" "u_bits16_t" "ac_cv_type_u_bits16_t" "$ac_includes_default"
-if test "x$ac_cv_type_u_bits16_t" = xyes; then :
-  
-else
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define u_bits16_t unsigned char
-_ACEOF
-
-fi
-
-else
-  ac_fn_c_check_type "$LINENO" "u_bits16_t" "ac_cv_type_u_bits16_t" "$ac_includes_default"
-if test "x$ac_cv_type_u_bits16_t" = xyes; then :
-  
-else
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define u_bits16_t unsigned short
-_ACEOF
-
-fi
-
-fi
-
-
-if test "$ac_cv_sizeof_int" = 4; then
-  ac_fn_c_check_type "$LINENO" "bits32_t" "ac_cv_type_bits32_t" "$ac_includes_default"
-if test "x$ac_cv_type_bits32_t" = xyes; then :
-  
-else
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define bits32_t int
-_ACEOF
-
-fi
-
-elif test "$ac_cv_sizeof_long" = 4; then
-  ac_fn_c_check_type "$LINENO" "bits32_t" "ac_cv_type_bits32_t" "$ac_includes_default"
-if test "x$ac_cv_type_bits32_t" = xyes; then :
-  
-else
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define bits32_t long
-_ACEOF
-
-fi
-
-else
-  ac_fn_c_check_type "$LINENO" "bits32_t" "ac_cv_type_bits32_t" "$ac_includes_default"
-if test "x$ac_cv_type_bits32_t" = xyes; then :
-  
-else
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define bits32_t int
-_ACEOF
-
-fi
-
-fi
-
-
-if test "$ac_cv_sizeof_int" = 4; then
-  ac_fn_c_check_type "$LINENO" "u_bits32_t" "ac_cv_type_u_bits32_t" "$ac_includes_default"
-if test "x$ac_cv_type_u_bits32_t" = xyes; then :
-  
-else
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define u_bits32_t unsigned int
-_ACEOF
-
-fi
-
-elif test "$ac_cv_sizeof_long" = 4; then
-  ac_fn_c_check_type "$LINENO" "u_bits32_t" "ac_cv_type_u_bits32_t" "$ac_includes_default"
-if test "x$ac_cv_type_u_bits32_t" = xyes; then :
-  
-else
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define u_bits32_t unsigned long
-_ACEOF
-
-fi
-
-else
-  ac_fn_c_check_type "$LINENO" "u_bits32_t" "ac_cv_type_u_bits32_t" "$ac_includes_default"
-if test "x$ac_cv_type_u_bits32_t" = xyes; then :
-  
-else
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define u_bits32_t unsigned int
-_ACEOF
-
-fi
-
-fi
-
-
-if test "$ac_cv_sizeof_char_p" = 8; then
-  ac_fn_c_check_type "$LINENO" "bits64_t" "ac_cv_type_bits64_t" "$ac_includes_default"
-if test "x$ac_cv_type_bits64_t" = xyes; then :
-  
-else
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define bits64_t char *
-_ACEOF
-
-fi
-
-elif test "$ac_cv_sizeof_double" = 8; then
-  ac_fn_c_check_type "$LINENO" "bits64_t" "ac_cv_type_bits64_t" "$ac_includes_default"
-if test "x$ac_cv_type_bits64_t" = xyes; then :
-  
-else
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define bits64_t double
-_ACEOF
-
-fi
-
-elif test -n "$ac_cv_type_long_long" && test "$ac_cv_sizeof_long_long" = 8; then
-  ac_fn_c_check_type "$LINENO" "bits64_t" "ac_cv_type_bits64_t" "$ac_includes_default"
-if test "x$ac_cv_type_bits64_t" = xyes; then :
-  
-else
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define bits64_t long long
-_ACEOF
-
-fi
-
-elif test "$ac_cv_sizeof_long" = 8; then
-  ac_fn_c_check_type "$LINENO" "bits64_t" "ac_cv_type_bits64_t" "$ac_includes_default"
-if test "x$ac_cv_type_bits64_t" = xyes; then :
-  
-else
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define bits64_t long
-_ACEOF
-
-fi
-
-else
-  ac_fn_c_check_type "$LINENO" "bits64_t" "ac_cv_type_bits64_t" "$ac_includes_default"
-if test "x$ac_cv_type_bits64_t" = xyes; then :
-  
-else
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define bits64_t double
-_ACEOF
-
-fi
-
-fi
-
-
-
-if test "$ac_cv_sizeof_int" = "$ac_cv_sizeof_char_p"; then
-  ac_fn_c_check_type "$LINENO" "ptrdiff_t" "ac_cv_type_ptrdiff_t" "$ac_includes_default"
-if test "x$ac_cv_type_ptrdiff_t" = xyes; then :
-  
-else
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define ptrdiff_t int
-_ACEOF
-
-fi
-
-elif test "$ac_cv_sizeof_long" = "$ac_cv_sizeof_char_p"; then
-  ac_fn_c_check_type "$LINENO" "ptrdiff_t" "ac_cv_type_ptrdiff_t" "$ac_includes_default"
-if test "x$ac_cv_type_ptrdiff_t" = xyes; then :
-  
-else
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define ptrdiff_t long
-_ACEOF
-
-fi
-
-elif test "$ac_cv_type_long_long" = yes && test "$ac_cv_sizeof_long_long" = "$ac_cv_sizeof_char_p"; then
-  ac_fn_c_check_type "$LINENO" "ptrdiff_t" "ac_cv_type_ptrdiff_t" "$ac_includes_default"
-if test "x$ac_cv_type_ptrdiff_t" = xyes; then :
-  
-else
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define ptrdiff_t long long
-_ACEOF
-
-fi
-
-else
-  ac_fn_c_check_type "$LINENO" "ptrdiff_t" "ac_cv_type_ptrdiff_t" "$ac_includes_default"
-if test "x$ac_cv_type_ptrdiff_t" = xyes; then :
-  
-else
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define ptrdiff_t int
-_ACEOF
-
-fi
-
-fi
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether stat file-mode macros are broken" >&5
-$as_echo_n "checking whether stat file-mode macros are broken... " >&6; }
-if ${ac_cv_header_stat_broken+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <sys/types.h>
-#include <sys/stat.h>
-
-#if defined S_ISBLK && defined S_IFDIR
-extern char c1[S_ISBLK (S_IFDIR) ? -1 : 1];
-#endif
-
-#if defined S_ISBLK && defined S_IFCHR
-extern char c2[S_ISBLK (S_IFCHR) ? -1 : 1];
-#endif
-
-#if defined S_ISLNK && defined S_IFREG
-extern char c3[S_ISLNK (S_IFREG) ? -1 : 1];
-#endif
-
-#if defined S_ISSOCK && defined S_IFREG
-extern char c4[S_ISSOCK (S_IFREG) ? -1 : 1];
-#endif
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_cv_header_stat_broken=no
-else
-  ac_cv_header_stat_broken=yes
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_stat_broken" >&5
-$as_echo "$ac_cv_header_stat_broken" >&6; }
-if test $ac_cv_header_stat_broken = yes; then
-  
-$as_echo "@%:@define STAT_MACROS_BROKEN 1" >>confdefs.h
-
-fi
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether @%:@! works in shell scripts" >&5
-$as_echo_n "checking whether @%:@! works in shell scripts... " >&6; }
-if ${ac_cv_sys_interpreter+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  echo '#! /bin/cat
-exit 69
-' >conftest
-chmod u+x conftest
-(SHELL=/bin/sh; export SHELL; ./conftest >/dev/null 2>&1)
-if test $? -ne 69; then
-   ac_cv_sys_interpreter=yes
-else
-   ac_cv_sys_interpreter=no
-fi
-rm -f conftest
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sys_interpreter" >&5
-$as_echo "$ac_cv_sys_interpreter" >&6; }
-interpval=$ac_cv_sys_interpreter
-
-if test $ac_cv_sys_interpreter = yes; then
-$as_echo "@%:@define HAVE_HASH_BANG_EXEC 1" >>confdefs.h
-
-fi
-
-if test "$ac_cv_func_lstat" = "no"; then
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for lstat" >&5
-$as_echo_n "checking for lstat... " >&6; }
-if ${bash_cv_func_lstat+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#include <sys/types.h>
-#include <sys/stat.h>
-
-int
-main ()
-{
- lstat(".",(struct stat *)0); 
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  bash_cv_func_lstat=yes
-else
-  bash_cv_func_lstat=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_func_lstat" >&5
-$as_echo "$bash_cv_func_lstat" >&6; }
-if test $bash_cv_func_lstat = yes; then
-  $as_echo "@%:@define HAVE_LSTAT 1" >>confdefs.h
-
-fi
-
-fi
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the ctype macros accept non-ascii characters" >&5
-$as_echo_n "checking whether the ctype macros accept non-ascii characters... " >&6; }
-if ${bash_cv_func_ctype_nonascii+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test "$cross_compiling" = yes; then :
-  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cannot check ctype macros if cross compiling -- defaulting to no" >&5
-$as_echo "$as_me: WARNING: cannot check ctype macros if cross compiling -- defaulting to no" >&2;}
-    bash_cv_func_ctype_nonascii=no
-
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#ifdef HAVE_LOCALE_H
-#include <locale.h>
-#endif
-#include <stdio.h>
-#include <ctype.h>
-
-main(c, v)
-int    c;
-char   *v[];
-{
-       char    *deflocale;
-       unsigned char x;
-       int     r1, r2;
-
-#ifdef HAVE_SETLOCALE
-       /* We take a shot here.  If that locale is not known, try the
-          system default.  We try this one because '\342' (226) is
-          known to be a printable character in that locale. */
-       deflocale = setlocale(LC_ALL, "en_US.ISO8859-1");
-       if (deflocale == 0)
-               deflocale = setlocale(LC_ALL, "");
-#endif
-
-       x = '\342';
-       r1 = isprint(x);
-       x -= 128;
-       r2 = isprint(x);
-       exit (r1 == 0 || r2 == 0);
-}
-
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-  bash_cv_func_ctype_nonascii=yes
-else
-  bash_cv_func_ctype_nonascii=no
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_func_ctype_nonascii" >&5
-$as_echo "$bash_cv_func_ctype_nonascii" >&6; }
-if test $bash_cv_func_ctype_nonascii = yes; then
-$as_echo "@%:@define CTYPE_NON_ASCII 1" >>confdefs.h
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if dup2 fails to clear the close-on-exec flag" >&5
-$as_echo_n "checking if dup2 fails to clear the close-on-exec flag... " >&6; }
-if ${bash_cv_dup2_broken+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test "$cross_compiling" = yes; then :
-  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cannot check dup2 if cross compiling -- defaulting to no" >&5
-$as_echo "$as_me: WARNING: cannot check dup2 if cross compiling -- defaulting to no" >&2;}
-     bash_cv_dup2_broken=no
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#include <sys/types.h>
-#include <fcntl.h>
-main()
-{
-  int fd1, fd2, fl;
-  fd1 = open("/dev/null", 2);
-  if (fcntl(fd1, 2, 1) < 0)
-    exit(1);
-  fd2 = dup2(fd1, 1);
-  if (fd2 < 0)
-    exit(2);
-  fl = fcntl(fd2, 1, 0);
-  /* fl will be 1 if dup2 did not reset the close-on-exec flag. */
-  exit(fl != 1);
-}
-
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-  bash_cv_dup2_broken=yes
-else
-  bash_cv_dup2_broken=no
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_dup2_broken" >&5
-$as_echo "$bash_cv_dup2_broken" >&6; }
-if test $bash_cv_dup2_broken = yes; then
-$as_echo "@%:@define DUP2_BROKEN 1" >>confdefs.h
-
-fi
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether pgrps need synchronization" >&5
-$as_echo_n "checking whether pgrps need synchronization... " >&6; }
-if ${bash_cv_pgrp_pipe+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test "$cross_compiling" = yes; then :
-  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cannot check pgrp synchronization if cross compiling -- defaulting to no" >&5
-$as_echo "$as_me: WARNING: cannot check pgrp synchronization if cross compiling -- defaulting to no" >&2;}
-    bash_cv_pgrp_pipe=no
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#ifdef HAVE_UNISTD_H
-#  include <unistd.h>
-#endif
-main()
-{
-# ifdef GETPGRP_VOID
-#  define getpgID()    getpgrp()
-# else
-#  define getpgID()    getpgrp(0)
-#  define setpgid(x,y) setpgrp(x,y)
-# endif
-       int pid1, pid2, fds[2];
-       int status;
-       char ok;
-
-       switch (pid1 = fork()) {
-         case -1:
-           exit(1);
-         case 0:
-           setpgid(0, getpid());
-           exit(0);
-       }
-       setpgid(pid1, pid1);
-
-       sleep(2);       /* let first child die */
-
-       if (pipe(fds) < 0)
-         exit(2);
-
-       switch (pid2 = fork()) {
-         case -1:
-           exit(3);
-         case 0:
-           setpgid(0, pid1);
-           ok = getpgID() == pid1;
-           write(fds[1], &ok, 1);
-           exit(0);
-       }
-       setpgid(pid2, pid1);
-
-       close(fds[1]);
-       if (read(fds[0], &ok, 1) != 1)
-         exit(4);
-       wait(&status);
-       wait(&status);
-       exit(ok ? 0 : 5);
-}
-
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-  bash_cv_pgrp_pipe=no
-else
-  bash_cv_pgrp_pipe=yes
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_pgrp_pipe" >&5
-$as_echo "$bash_cv_pgrp_pipe" >&6; }
-if test $bash_cv_pgrp_pipe = yes; then
-$as_echo "@%:@define PGRP_PIPE 1" >>confdefs.h
-
-fi
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for type of signal functions" >&5
-$as_echo_n "checking for type of signal functions... " >&6; }
-if ${bash_cv_signal_vintage+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <signal.h>
-int
-main ()
-{
-
-    sigset_t ss;
-    struct sigaction sa;
-    sigemptyset(&ss); sigsuspend(&ss);
-    sigaction(SIGINT, &sa, (struct sigaction *) 0);
-    sigprocmask(SIG_BLOCK, &ss, (sigset_t *) 0);
-  
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  bash_cv_signal_vintage=posix
-else
-  
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <signal.h>
-int
-main ()
-{
-
-       int mask = sigmask(SIGINT);
-       sigsetmask(mask); sigblock(mask); sigpause(mask);
-    
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  bash_cv_signal_vintage=4.2bsd
-else
-  
-      cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-       #include <signal.h>
-       RETSIGTYPE foo() { }
-int
-main ()
-{
-
-               int mask = sigmask(SIGINT);
-               sigset(SIGINT, foo); sigrelse(SIGINT);
-               sighold(SIGINT); sigpause(SIGINT);
-        
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  bash_cv_signal_vintage=svr3
-else
-  bash_cv_signal_vintage=v7
-    
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-  
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_signal_vintage" >&5
-$as_echo "$bash_cv_signal_vintage" >&6; }
-if test "$bash_cv_signal_vintage" = posix; then
-$as_echo "@%:@define HAVE_POSIX_SIGNALS 1" >>confdefs.h
-
-elif test "$bash_cv_signal_vintage" = "4.2bsd"; then
-$as_echo "@%:@define HAVE_BSD_SIGNALS 1" >>confdefs.h
-
-elif test "$bash_cv_signal_vintage" = svr3; then
-$as_echo "@%:@define HAVE_USG_SIGHOLD 1" >>confdefs.h
-
-fi
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for sys_errlist and sys_nerr" >&5
-$as_echo_n "checking for sys_errlist and sys_nerr... " >&6; }
-if ${bash_cv_sys_errlist+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <errno.h>
-int
-main ()
-{
-extern char *sys_errlist[];
- extern int sys_nerr;
- char *msg = sys_errlist[sys_nerr - 1];
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  bash_cv_sys_errlist=yes
-else
-  bash_cv_sys_errlist=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_sys_errlist" >&5
-$as_echo "$bash_cv_sys_errlist" >&6; }
-if test $bash_cv_sys_errlist = yes; then
-$as_echo "@%:@define HAVE_SYS_ERRLIST 1" >>confdefs.h
-
-fi
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for sys_siglist in system C library" >&5
-$as_echo_n "checking for sys_siglist in system C library... " >&6; }
-if ${bash_cv_sys_siglist+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test "$cross_compiling" = yes; then :
-  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cannot check for sys_siglist if cross compiling -- defaulting to no" >&5
-$as_echo "$as_me: WARNING: cannot check for sys_siglist if cross compiling -- defaulting to no" >&2;}
-        bash_cv_sys_siglist=no
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#include <sys/types.h>
-#include <signal.h>
-#ifdef HAVE_UNISTD_H
-#include <unistd.h>
-#endif
-#if !HAVE_DECL_SYS_SIGLIST
-extern char *sys_siglist[];
-#endif
-main()
-{
-char *msg = sys_siglist[2];
-exit(msg == 0);
-}
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-  bash_cv_sys_siglist=yes
-else
-  bash_cv_sys_siglist=no
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_sys_siglist" >&5
-$as_echo "$bash_cv_sys_siglist" >&6; }
-if test $bash_cv_sys_siglist = yes; then
-$as_echo "@%:@define HAVE_SYS_SIGLIST 1" >>confdefs.h
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for _sys_siglist in signal.h or unistd.h" >&5
-$as_echo_n "checking for _sys_siglist in signal.h or unistd.h... " >&6; }
-if ${bash_cv_decl_under_sys_siglist+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#include <sys/types.h>
-#include <signal.h>
-#ifdef HAVE_UNISTD_H
-#include <unistd.h>
-#endif
-int
-main ()
-{
- char *msg = _sys_siglist[2]; 
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  bash_cv_decl_under_sys_siglist=yes
-else
-  bash_cv_decl_under_sys_siglist=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_decl_under_sys_siglist" >&5
-$as_echo "$bash_cv_decl_under_sys_siglist" >&6; }
-if test $bash_cv_decl_under_sys_siglist = yes; then
-$as_echo "@%:@define UNDER_SYS_SIGLIST_DECLARED 1" >>confdefs.h
-
-fi
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for _sys_siglist in system C library" >&5
-$as_echo_n "checking for _sys_siglist in system C library... " >&6; }
-if ${bash_cv_under_sys_siglist+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test "$cross_compiling" = yes; then :
-  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cannot check for _sys_siglist if cross compiling -- defaulting to no" >&5
-$as_echo "$as_me: WARNING: cannot check for _sys_siglist if cross compiling -- defaulting to no" >&2;}
-        bash_cv_under_sys_siglist=no
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#include <sys/types.h>
-#include <signal.h>
-#ifdef HAVE_UNISTD_H
-#include <unistd.h>
-#endif
-#ifndef UNDER_SYS_SIGLIST_DECLARED
-extern char *_sys_siglist[];
-#endif
-main()
-{
-char *msg = (char *)_sys_siglist[2];
-exit(msg == 0);
-}
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-  bash_cv_under_sys_siglist=yes
-else
-  bash_cv_under_sys_siglist=no
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_under_sys_siglist" >&5
-$as_echo "$bash_cv_under_sys_siglist" >&6; }
-if test $bash_cv_under_sys_siglist = yes; then
-$as_echo "@%:@define HAVE_UNDER_SYS_SIGLIST 1" >>confdefs.h
-
-fi
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether signal handlers are of type void" >&5
-$as_echo_n "checking whether signal handlers are of type void... " >&6; }
-if ${bash_cv_void_sighandler+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <sys/types.h>
-#include <signal.h>
-#ifdef signal
-#undef signal
-#endif
-#ifdef __cplusplus
-extern "C"
-#endif
-void (*signal ()) ();
-int
-main ()
-{
-int i;
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  bash_cv_void_sighandler=yes
-else
-  bash_cv_void_sighandler=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_void_sighandler" >&5
-$as_echo "$bash_cv_void_sighandler" >&6; }
-if test $bash_cv_void_sighandler = yes; then
-$as_echo "@%:@define VOID_SIGHANDLER 1" >>confdefs.h
-
-fi
-
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for clock_t" >&5
-$as_echo_n "checking for clock_t... " >&6; }
-if ${bash_cv_type_clock_t+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <sys/types.h>
-#if STDC_HEADERS
-#include <stdlib.h>
-#include <stddef.h>
-#endif
-#if HAVE_INTTYPES_H
-#include <inttypes.h>
-#endif
-#if HAVE_STDINT_H
-#include <stdint.h>
-#endif
-#include <sys/times.h>
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "clock_t" >/dev/null 2>&1; then :
-  bash_cv_type_clock_t=yes
-else
-  bash_cv_type_clock_t=no
-fi
-rm -f conftest*
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_type_clock_t" >&5
-$as_echo "$bash_cv_type_clock_t" >&6; }
-
-if test $bash_cv_type_clock_t = no; then
-  cat >>confdefs.h <<_ACEOF
-@%:@define clock_t long
-_ACEOF
-
-fi
-
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for sigset_t" >&5
-$as_echo_n "checking for sigset_t... " >&6; }
-if ${bash_cv_type_sigset_t+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <sys/types.h>
-#if STDC_HEADERS
-#include <stdlib.h>
-#include <stddef.h>
-#endif
-#if HAVE_INTTYPES_H
-#include <inttypes.h>
-#endif
-#if HAVE_STDINT_H
-#include <stdint.h>
-#endif
-#include <signal.h>
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "sigset_t" >/dev/null 2>&1; then :
-  bash_cv_type_sigset_t=yes
-else
-  bash_cv_type_sigset_t=no
-fi
-rm -f conftest*
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_type_sigset_t" >&5
-$as_echo "$bash_cv_type_sigset_t" >&6; }
-
-if test $bash_cv_type_sigset_t = no; then
-  cat >>confdefs.h <<_ACEOF
-@%:@define sigset_t int
-_ACEOF
-
-fi
-
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for quad_t" >&5
-$as_echo_n "checking for quad_t... " >&6; }
-if ${bash_cv_type_quad_t+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <sys/types.h>
-#if STDC_HEADERS
-#include <stdlib.h>
-#include <stddef.h>
-#endif
-#if HAVE_INTTYPES_H
-#include <inttypes.h>
-#endif
-#if HAVE_STDINT_H
-#include <stdint.h>
-#endif
-
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "quad_t" >/dev/null 2>&1; then :
-  bash_cv_type_quad_t=yes
-else
-  bash_cv_type_quad_t=no
-fi
-rm -f conftest*
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_type_quad_t" >&5
-$as_echo "$bash_cv_type_quad_t" >&6; }
-if test $bash_cv_type_quad_t = yes; then
-       $as_echo "@%:@define HAVE_QUAD_T 1" >>confdefs.h
-
-       fi
-if test $bash_cv_type_quad_t = no; then
-  cat >>confdefs.h <<_ACEOF
-@%:@define quad_t long
-_ACEOF
-
-fi
-
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for intmax_t" >&5
-$as_echo_n "checking for intmax_t... " >&6; }
-if ${bash_cv_type_intmax_t+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <sys/types.h>
-#if STDC_HEADERS
-#include <stdlib.h>
-#include <stddef.h>
-#endif
-#if HAVE_INTTYPES_H
-#include <inttypes.h>
-#endif
-#if HAVE_STDINT_H
-#include <stdint.h>
-#endif
-
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "intmax_t" >/dev/null 2>&1; then :
-  bash_cv_type_intmax_t=yes
-else
-  bash_cv_type_intmax_t=no
-fi
-rm -f conftest*
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_type_intmax_t" >&5
-$as_echo "$bash_cv_type_intmax_t" >&6; }
-
-if test $bash_cv_type_intmax_t = no; then
-  cat >>confdefs.h <<_ACEOF
-@%:@define intmax_t $bash_cv_type_long_long
-_ACEOF
-
-fi
-
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for uintmax_t" >&5
-$as_echo_n "checking for uintmax_t... " >&6; }
-if ${bash_cv_type_uintmax_t+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <sys/types.h>
-#if STDC_HEADERS
-#include <stdlib.h>
-#include <stddef.h>
-#endif
-#if HAVE_INTTYPES_H
-#include <inttypes.h>
-#endif
-#if HAVE_STDINT_H
-#include <stdint.h>
-#endif
-
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "uintmax_t" >/dev/null 2>&1; then :
-  bash_cv_type_uintmax_t=yes
-else
-  bash_cv_type_uintmax_t=no
-fi
-rm -f conftest*
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_type_uintmax_t" >&5
-$as_echo "$bash_cv_type_uintmax_t" >&6; }
-
-if test $bash_cv_type_uintmax_t = no; then
-  cat >>confdefs.h <<_ACEOF
-@%:@define uintmax_t $bash_cv_type_unsigned_long_long
-_ACEOF
-
-fi
-
-if test "$ac_cv_header_sys_socket_h" = "yes"; then
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for socklen_t" >&5
-$as_echo_n "checking for socklen_t... " >&6; }
-if ${bash_cv_type_socklen_t+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <sys/types.h>
-#if STDC_HEADERS
-#include <stdlib.h>
-#include <stddef.h>
-#endif
-#if HAVE_INTTYPES_H
-#include <inttypes.h>
-#endif
-#if HAVE_STDINT_H
-#include <stdint.h>
-#endif
-#include <sys/socket.h>
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "socklen_t" >/dev/null 2>&1; then :
-  bash_cv_type_socklen_t=yes
-else
-  bash_cv_type_socklen_t=no
-fi
-rm -f conftest*
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_type_socklen_t" >&5
-$as_echo "$bash_cv_type_socklen_t" >&6; }
-if test $bash_cv_type_socklen_t = yes; then
-       $as_echo "@%:@define HAVE_SOCKLEN_T 1" >>confdefs.h
-
-       fi
-if test $bash_cv_type_socklen_t = no; then
-  cat >>confdefs.h <<_ACEOF
-@%:@define socklen_t int
-_ACEOF
-
-fi
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for size and type of struct rlimit fields" >&5
-$as_echo_n "checking for size and type of struct rlimit fields... " >&6; }
-if ${bash_cv_type_rlimit+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <sys/types.h>
-#include <sys/resource.h>
-int
-main ()
-{
-rlim_t xxx;
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  bash_cv_type_rlimit=rlim_t
-else
-  
-if test "$cross_compiling" = yes; then :
-  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cannot check quad_t if cross compiling -- defaulting to long" >&5
-$as_echo "$as_me: WARNING: cannot check quad_t if cross compiling -- defaulting to long" >&2;}
-         bash_cv_type_rlimit=long
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#include <sys/types.h>
-#include <sys/time.h>
-#include <sys/resource.h>
-main()
-{
-#ifdef HAVE_QUAD_T
-  struct rlimit rl;
-  if (sizeof(rl.rlim_cur) == sizeof(quad_t))
-    exit(0);
-#endif
-  exit(1);
-}
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-  bash_cv_type_rlimit=quad_t
-else
-  bash_cv_type_rlimit=long
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_type_rlimit" >&5
-$as_echo "$bash_cv_type_rlimit" >&6; }
-if test $bash_cv_type_rlimit = quad_t; then
-$as_echo "@%:@define RLIMTYPE quad_t" >>confdefs.h
-
-elif test $bash_cv_type_rlimit = rlim_t; then
-$as_echo "@%:@define RLIMTYPE rlim_t" >>confdefs.h
-
-fi
-
-
-# The cast to long int works around a bug in the HP C Compiler
-# version HP92453-01 B.11.11.23709.GP, which incorrectly rejects
-# declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'.
-# This bug is HP SR number 8606223364.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking size of intmax_t" >&5
-$as_echo_n "checking size of intmax_t... " >&6; }
-if ${ac_cv_sizeof_intmax_t+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (intmax_t))" "ac_cv_sizeof_intmax_t"        "$ac_includes_default"; then :
-  
-else
-  if test "$ac_cv_type_intmax_t" = yes; then
-     { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error 77 "cannot compute sizeof (intmax_t)
-See \`config.log' for more details" "$LINENO" 5; }
-   else
-     ac_cv_sizeof_intmax_t=0
-   fi
-fi
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_intmax_t" >&5
-$as_echo "$ac_cv_sizeof_intmax_t" >&6; }
-
-
-
-cat >>confdefs.h <<_ACEOF
-@%:@define SIZEOF_INTMAX_T $ac_cv_sizeof_intmax_t
-_ACEOF
-
-
-
-
-ac_fn_c_check_member "$LINENO" "struct termios" "c_line" "ac_cv_member_struct_termios_c_line" "
-#include <sys/types.h>
-#include <termios.h>
-
-"
-if test "x$ac_cv_member_struct_termios_c_line" = xyes; then :
-  $as_echo "@%:@define TERMIOS_LDISC 1" >>confdefs.h
-
-fi
-
-
-
-ac_fn_c_check_member "$LINENO" "struct termio" "c_line" "ac_cv_member_struct_termio_c_line" "
-#include <sys/types.h>
-#include <termio.h>
-
-"
-if test "x$ac_cv_member_struct_termio_c_line" = xyes; then :
-  $as_echo "@%:@define TERMIO_LDISC 1" >>confdefs.h
-
-fi
-
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for struct dirent.d_ino" >&5
-$as_echo_n "checking for struct dirent.d_ino... " >&6; }
-if ${bash_cv_dirent_has_dino+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#include <stdio.h>
-#include <sys/types.h>
-#ifdef HAVE_UNISTD_H
-# include <unistd.h>
-#endif /* HAVE_UNISTD_H */
-#if defined(HAVE_DIRENT_H)
-# include <dirent.h>
-#else
-# define dirent direct
-# ifdef HAVE_SYS_NDIR_H
-#  include <sys/ndir.h>
-# endif /* SYSNDIR */
-# ifdef HAVE_SYS_DIR_H
-#  include <sys/dir.h>
-# endif /* SYSDIR */
-# ifdef HAVE_NDIR_H
-#  include <ndir.h>
-# endif
-#endif /* HAVE_DIRENT_H */
-
-int
-main ()
-{
-
-struct dirent d; int z; z = d.d_ino;
-
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  bash_cv_dirent_has_dino=yes
-else
-  bash_cv_dirent_has_dino=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_dirent_has_dino" >&5
-$as_echo "$bash_cv_dirent_has_dino" >&6; }
-if test $bash_cv_dirent_has_dino = yes; then
-$as_echo "@%:@define HAVE_STRUCT_DIRENT_D_INO 1" >>confdefs.h
-
-fi
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for struct dirent.d_fileno" >&5
-$as_echo_n "checking for struct dirent.d_fileno... " >&6; }
-if ${bash_cv_dirent_has_d_fileno+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#include <stdio.h>
-#include <sys/types.h>
-#ifdef HAVE_UNISTD_H
-# include <unistd.h>
-#endif /* HAVE_UNISTD_H */
-#if defined(HAVE_DIRENT_H)
-# include <dirent.h>
-#else
-# define dirent direct
-# ifdef HAVE_SYS_NDIR_H
-#  include <sys/ndir.h>
-# endif /* SYSNDIR */
-# ifdef HAVE_SYS_DIR_H
-#  include <sys/dir.h>
-# endif /* SYSDIR */
-# ifdef HAVE_NDIR_H
-#  include <ndir.h>
-# endif
-#endif /* HAVE_DIRENT_H */
-
-int
-main ()
-{
-
-struct dirent d; int z; z = d.d_fileno;
-
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  bash_cv_dirent_has_d_fileno=yes
-else
-  bash_cv_dirent_has_d_fileno=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_dirent_has_d_fileno" >&5
-$as_echo "$bash_cv_dirent_has_d_fileno" >&6; }
-if test $bash_cv_dirent_has_d_fileno = yes; then
-$as_echo "@%:@define HAVE_STRUCT_DIRENT_D_FILENO 1" >>confdefs.h
-
-fi
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for struct dirent.d_namlen" >&5
-$as_echo_n "checking for struct dirent.d_namlen... " >&6; }
-if ${bash_cv_dirent_has_d_namlen+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#include <stdio.h>
-#include <sys/types.h>
-#ifdef HAVE_UNISTD_H
-# include <unistd.h>
-#endif /* HAVE_UNISTD_H */
-#if defined(HAVE_DIRENT_H)
-# include <dirent.h>
-#else
-# define dirent direct
-# ifdef HAVE_SYS_NDIR_H
-#  include <sys/ndir.h>
-# endif /* SYSNDIR */
-# ifdef HAVE_SYS_DIR_H
-#  include <sys/dir.h>
-# endif /* SYSDIR */
-# ifdef HAVE_NDIR_H
-#  include <ndir.h>
-# endif
-#endif /* HAVE_DIRENT_H */
-
-int
-main ()
-{
-
-struct dirent d; int z; z = d.d_namlen;
-
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  bash_cv_dirent_has_d_namlen=yes
-else
-  bash_cv_dirent_has_d_namlen=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_dirent_has_d_namlen" >&5
-$as_echo "$bash_cv_dirent_has_d_namlen" >&6; }
-if test $bash_cv_dirent_has_d_namlen = yes; then
-$as_echo "@%:@define HAVE_STRUCT_DIRENT_D_NAMLEN 1" >>confdefs.h
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for struct winsize in sys/ioctl.h and termios.h" >&5
-$as_echo_n "checking for struct winsize in sys/ioctl.h and termios.h... " >&6; }
-if ${bash_cv_struct_winsize_header+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <sys/types.h>
-#include <sys/ioctl.h>
-int
-main ()
-{
-struct winsize x;
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  bash_cv_struct_winsize_header=ioctl_h
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <sys/types.h>
-#include <termios.h>
-int
-main ()
-{
-struct winsize x;
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  bash_cv_struct_winsize_header=termios_h
-else
-  bash_cv_struct_winsize_header=other
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-
-if test $bash_cv_struct_winsize_header = ioctl_h; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: sys/ioctl.h" >&5
-$as_echo "sys/ioctl.h" >&6; }
-  $as_echo "@%:@define STRUCT_WINSIZE_IN_SYS_IOCTL 1" >>confdefs.h
-
-elif test $bash_cv_struct_winsize_header = termios_h; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: termios.h" >&5
-$as_echo "termios.h" >&6; }
-  $as_echo "@%:@define STRUCT_WINSIZE_IN_TERMIOS 1" >>confdefs.h
-
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: not found" >&5
-$as_echo "not found" >&6; }
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for struct timeval in sys/time.h and time.h" >&5
-$as_echo_n "checking for struct timeval in sys/time.h and time.h... " >&6; }
-if ${bash_cv_struct_timeval+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <sys/time.h>
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "struct timeval" >/dev/null 2>&1; then :
-  bash_cv_struct_timeval=yes
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <time.h>
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "struct timeval" >/dev/null 2>&1; then :
-  bash_cv_struct_timeval=yes
-else
-  bash_cv_struct_timeval=no
-fi
-rm -f conftest*
-
-fi
-rm -f conftest*
-
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_struct_timeval" >&5
-$as_echo "$bash_cv_struct_timeval" >&6; }
-if test $bash_cv_struct_timeval = yes; then
-  $as_echo "@%:@define HAVE_TIMEVAL 1" >>confdefs.h
-
-fi
-
-ac_fn_c_check_member "$LINENO" "struct stat" "st_blocks" "ac_cv_member_struct_stat_st_blocks" "$ac_includes_default"
-if test "x$ac_cv_member_struct_stat_st_blocks" = xyes; then :
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define HAVE_STRUCT_STAT_ST_BLOCKS 1
-_ACEOF
-
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether struct tm is in sys/time.h or time.h" >&5
-$as_echo_n "checking whether struct tm is in sys/time.h or time.h... " >&6; }
-if ${ac_cv_struct_tm+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <sys/types.h>
-#include <time.h>
-
-int
-main ()
-{
-struct tm tm;
-                                    int *p = &tm.tm_sec;
-                                    return !p;
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_cv_struct_tm=time.h
-else
-  ac_cv_struct_tm=sys/time.h
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_struct_tm" >&5
-$as_echo "$ac_cv_struct_tm" >&6; }
-if test $ac_cv_struct_tm = sys/time.h; then
-  
-$as_echo "@%:@define TM_IN_SYS_TIME 1" >>confdefs.h
-
-fi
-
-ac_fn_c_check_member "$LINENO" "struct tm" "tm_zone" "ac_cv_member_struct_tm_tm_zone" "#include <sys/types.h>
-#include <$ac_cv_struct_tm>
-
-"
-if test "x$ac_cv_member_struct_tm_tm_zone" = xyes; then :
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define HAVE_STRUCT_TM_TM_ZONE 1
-_ACEOF
-
-
-fi
-
-if test "$ac_cv_member_struct_tm_tm_zone" = yes; then
-  
-$as_echo "@%:@define HAVE_TM_ZONE 1" >>confdefs.h
-
-else
-  ac_fn_c_check_decl "$LINENO" "tzname" "ac_cv_have_decl_tzname" "#include <time.h>
-"
-if test "x$ac_cv_have_decl_tzname" = xyes; then :
-  ac_have_decl=1
-else
-  ac_have_decl=0
-fi
-
-cat >>confdefs.h <<_ACEOF
-@%:@define HAVE_DECL_TZNAME $ac_have_decl
-_ACEOF
-
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for tzname" >&5
-$as_echo_n "checking for tzname... " >&6; }
-if ${ac_cv_var_tzname+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <time.h>
-#if !HAVE_DECL_TZNAME
-extern char *tzname[];
-#endif
-
-int
-main ()
-{
-return tzname[0][0];
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  ac_cv_var_tzname=yes
-else
-  ac_cv_var_tzname=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_var_tzname" >&5
-$as_echo "$ac_cv_var_tzname" >&6; }
-  if test $ac_cv_var_tzname = yes; then
-    
-$as_echo "@%:@define HAVE_TZNAME 1" >>confdefs.h
-
-  fi
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for struct timezone in sys/time.h and time.h" >&5
-$as_echo_n "checking for struct timezone in sys/time.h and time.h... " >&6; }
-if ${bash_cv_struct_timezone+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <sys/time.h>
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "struct timezone" >/dev/null 2>&1; then :
-  bash_cv_struct_timezone=yes
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <time.h>
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "struct timezone" >/dev/null 2>&1; then :
-  bash_cv_struct_timezone=yes
-else
-  bash_cv_struct_timezone=no
-fi
-rm -f conftest*
-
-fi
-rm -f conftest*
-
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_struct_timezone" >&5
-$as_echo "$bash_cv_struct_timezone" >&6; }
-if test $bash_cv_struct_timezone = yes; then
-  $as_echo "@%:@define HAVE_STRUCT_TIMEZONE 1" >>confdefs.h
-
-fi
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for offset of exit status in return status from wait" >&5
-$as_echo_n "checking for offset of exit status in return status from wait... " >&6; }
-if ${bash_cv_wexitstatus_offset+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test "$cross_compiling" = yes; then :
-  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cannot check WEXITSTATUS offset if cross compiling -- defaulting to 0" >&5
-$as_echo "$as_me: WARNING: cannot check WEXITSTATUS offset if cross compiling -- defaulting to 0" >&2;}
-    bash_cv_wexitstatus_offset=0
-
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#include <stdlib.h>
-#include <unistd.h>
-
-#include <sys/wait.h>
-
-main(c, v)
-     int c;
-     char **v;
-{
-  pid_t pid, p;
-  int s, i, n;
-
-  s = 0;
-  pid = fork();
-  if (pid == 0)
-    exit (42);
-
-  /* wait for the process */
-  p = wait(&s);
-  if (p != pid)
-    exit (255);
-
-  /* crack s */
-  for (i = 0; i < (sizeof(s) - 8); i++)
-    {
-      n = (s >> i) & 0xff;
-      if (n == 42)
-       exit (i);
-    }
-
-  exit (254);
-}
-
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-  bash_cv_wexitstatus_offset=0
-else
-  bash_cv_wexitstatus_offset=$?
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-fi
-
-if test "$bash_cv_wexitstatus_offset" -gt 32 ; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: bad exit status from test program -- defaulting to 0" >&5
-$as_echo "$as_me: WARNING: bad exit status from test program -- defaulting to 0" >&2;}
-  bash_cv_wexitstatus_offset=0
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_wexitstatus_offset" >&5
-$as_echo "$bash_cv_wexitstatus_offset" >&6; }
-
-cat >>confdefs.h <<_ACEOF
-@%:@define WEXITSTATUS_OFFSET $bash_cv_wexitstatus_offset
-_ACEOF
-
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for the existence of strsignal" >&5
-$as_echo_n "checking for the existence of strsignal... " >&6; }
-if ${bash_cv_have_strsignal+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <sys/types.h>
-#include <signal.h>
-int
-main ()
-{
-char *s = (char *)strsignal(2);
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  bash_cv_have_strsignal=yes
-else
-  bash_cv_have_strsignal=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_have_strsignal" >&5
-$as_echo "$bash_cv_have_strsignal" >&6; }
-if test $bash_cv_have_strsignal = yes; then
-$as_echo "@%:@define HAVE_STRSIGNAL 1" >>confdefs.h
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if opendir() opens non-directories" >&5
-$as_echo_n "checking if opendir() opens non-directories... " >&6; }
-if ${bash_cv_opendir_not_robust+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test "$cross_compiling" = yes; then :
-  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cannot check opendir if cross compiling -- defaulting to no" >&5
-$as_echo "$as_me: WARNING: cannot check opendir if cross compiling -- defaulting to no" >&2;}
-     bash_cv_opendir_not_robust=no
-
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#include <stdio.h>
-#include <sys/types.h>
-#include <fcntl.h>
-#ifdef HAVE_UNISTD_H
-# include <unistd.h>
-#endif /* HAVE_UNISTD_H */
-#if defined(HAVE_DIRENT_H)
-# include <dirent.h>
-#else
-# define dirent direct
-# ifdef HAVE_SYS_NDIR_H
-#  include <sys/ndir.h>
-# endif /* SYSNDIR */
-# ifdef HAVE_SYS_DIR_H
-#  include <sys/dir.h>
-# endif /* SYSDIR */
-# ifdef HAVE_NDIR_H
-#  include <ndir.h>
-# endif
-#endif /* HAVE_DIRENT_H */
-main()
-{
-DIR *dir;
-int fd, err;
-err = mkdir("bash-aclocal", 0700);
-if (err < 0) {
-  perror("mkdir");
-  exit(1);
-}
-unlink("bash-aclocal/not_a_directory");
-fd = open("bash-aclocal/not_a_directory", O_WRONLY|O_CREAT|O_EXCL, 0666);
-write(fd, "\n", 1);
-close(fd);
-dir = opendir("bash-aclocal/not_a_directory");
-unlink("bash-aclocal/not_a_directory");
-rmdir("bash-aclocal");
-exit (dir == 0);
-}
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-  bash_cv_opendir_not_robust=yes
-else
-  bash_cv_opendir_not_robust=no
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_opendir_not_robust" >&5
-$as_echo "$bash_cv_opendir_not_robust" >&6; }
-if test $bash_cv_opendir_not_robust = yes; then
-$as_echo "@%:@define OPENDIR_NOT_ROBUST 1" >>confdefs.h
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ulimit can substitute for getdtablesize" >&5
-$as_echo_n "checking whether ulimit can substitute for getdtablesize... " >&6; }
-if ${bash_cv_ulimit_maxfds+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test "$cross_compiling" = yes; then :
-  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cannot check ulimit if cross compiling -- defaulting to no" >&5
-$as_echo "$as_me: WARNING: cannot check ulimit if cross compiling -- defaulting to no" >&2;}
-    bash_cv_ulimit_maxfds=no
-
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-main()
-{
-long maxfds = ulimit(4, 0L);
-exit (maxfds == -1L);
-}
-
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-  bash_cv_ulimit_maxfds=yes
-else
-  bash_cv_ulimit_maxfds=no
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_ulimit_maxfds" >&5
-$as_echo "$bash_cv_ulimit_maxfds" >&6; }
-if test $bash_cv_ulimit_maxfds = yes; then
-$as_echo "@%:@define ULIMIT_MAXFDS 1" >>confdefs.h
-
-fi
-
-
-
-
-
-
-  
-  
-  ac_fn_c_check_decl "$LINENO" "fpurge" "ac_cv_have_decl_fpurge" "#include <stdio.h>
-"
-if test "x$ac_cv_have_decl_fpurge" = xyes; then :
-  ac_have_decl=1
-else
-  ac_have_decl=0
-fi
-
-cat >>confdefs.h <<_ACEOF
-@%:@define HAVE_DECL_FPURGE $ac_have_decl
-_ACEOF
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking to see if getenv can be redefined" >&5
-$as_echo_n "checking to see if getenv can be redefined... " >&6; }
-if ${bash_cv_getenv_redef+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test "$cross_compiling" = yes; then :
-  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cannot check getenv redefinition if cross compiling -- defaulting to yes" >&5
-$as_echo "$as_me: WARNING: cannot check getenv redefinition if cross compiling -- defaulting to yes" >&2;}
-    bash_cv_getenv_redef=yes
-
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#ifdef HAVE_UNISTD_H
-#  include <unistd.h>
-#endif
-#ifndef __STDC__
-#  ifndef const
-#    define const
-#  endif
-#endif
-char *
-getenv (name)
-#if defined (__linux__) || defined (__bsdi__) || defined (convex)
-     const char *name;
-#else
-     char const *name;
-#endif /* !__linux__ && !__bsdi__ && !convex */
-{
-return "42";
-}
-main()
-{
-char *s;
-/* The next allows this program to run, but does not allow bash to link
-   when it redefines getenv.  I'm not really interested in figuring out
-   why not. */
-#if defined (NeXT)
-exit(1);
-#endif
-s = getenv("ABCDE");
-exit(s == 0);  /* force optimizer to leave getenv in */
-}
-
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-  bash_cv_getenv_redef=yes
-else
-  bash_cv_getenv_redef=no
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_getenv_redef" >&5
-$as_echo "$bash_cv_getenv_redef" >&6; }
-if test $bash_cv_getenv_redef = yes; then
-$as_echo "@%:@define CAN_REDEFINE_GETENV 1" >>confdefs.h
-
-fi
-
-if test "$ac_cv_func_getcwd" = "yes"; then
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if getcwd() will dynamically allocate memory with 0 size" >&5
-$as_echo_n "checking if getcwd() will dynamically allocate memory with 0 size... " >&6; }
-if ${bash_cv_getcwd_malloc+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test "$cross_compiling" = yes; then :
-  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cannot check whether getcwd allocates memory when cross-compiling -- defaulting to no" >&5
-$as_echo "$as_me: WARNING: cannot check whether getcwd allocates memory when cross-compiling -- defaulting to no" >&2;}
-    bash_cv_getcwd_malloc=no
-
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#include <stdio.h>
-#ifdef HAVE_UNISTD_H
-#include <unistd.h>
-#endif
-
-main()
-{
-       char    *xpwd;
-       xpwd = getcwd(0, 0);
-       exit (xpwd == 0);
-}
-
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-  bash_cv_getcwd_malloc=yes
-else
-  bash_cv_getcwd_malloc=no
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_getcwd_malloc" >&5
-$as_echo "$bash_cv_getcwd_malloc" >&6; }
-if test $bash_cv_getcwd_malloc = no; then
-$as_echo "@%:@define GETCWD_BROKEN 1" >>confdefs.h
-
-case " $LIB@&t@OBJS " in
-  *" getcwd.$ac_objext "* ) ;;
-  *) LIB@&t@OBJS="$LIB@&t@OBJS getcwd.$ac_objext"
- ;;
-esac
-
-fi
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for presence of POSIX-style sigsetjmp/siglongjmp" >&5
-$as_echo_n "checking for presence of POSIX-style sigsetjmp/siglongjmp... " >&6; }
-if ${bash_cv_func_sigsetjmp+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test "$cross_compiling" = yes; then :
-  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cannot check for sigsetjmp/siglongjmp if cross-compiling -- defaulting to missing" >&5
-$as_echo "$as_me: WARNING: cannot check for sigsetjmp/siglongjmp if cross-compiling -- defaulting to missing" >&2;}
-     bash_cv_func_sigsetjmp=missing
-
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#ifdef HAVE_UNISTD_H
-#include <unistd.h>
-#endif
-#include <sys/types.h>
-#include <signal.h>
-#include <setjmp.h>
-
-main()
-{
-#if !defined (_POSIX_VERSION) || !defined (HAVE_POSIX_SIGNALS)
-exit (1);
-#else
-
-int code;
-sigset_t set, oset;
-sigjmp_buf xx;
-
-/* get the mask */
-sigemptyset(&set);
-sigemptyset(&oset);
-sigprocmask(SIG_BLOCK, (sigset_t *)NULL, &set);
-sigprocmask(SIG_BLOCK, (sigset_t *)NULL, &oset);
-
-/* save it */
-code = sigsetjmp(xx, 1);
-if (code)
-  exit(0);     /* could get sigmask and compare to oset here. */
-
-/* change it */
-sigaddset(&set, SIGINT);
-sigprocmask(SIG_BLOCK, &set, (sigset_t *)NULL);
-
-/* and siglongjmp */
-siglongjmp(xx, 10);
-exit(1);
-#endif
-}
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-  bash_cv_func_sigsetjmp=present
-else
-  bash_cv_func_sigsetjmp=missing
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_func_sigsetjmp" >&5
-$as_echo "$bash_cv_func_sigsetjmp" >&6; }
-if test $bash_cv_func_sigsetjmp = present; then
-$as_echo "@%:@define HAVE_POSIX_SIGSETJMP 1" >>confdefs.h
-
-fi
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether or not strcoll and strcmp differ" >&5
-$as_echo_n "checking whether or not strcoll and strcmp differ... " >&6; }
-if ${bash_cv_func_strcoll_broken+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test "$cross_compiling" = yes; then :
-  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cannot check strcoll if cross compiling -- defaulting to no" >&5
-$as_echo "$as_me: WARNING: cannot check strcoll if cross compiling -- defaulting to no" >&2;}
-    bash_cv_func_strcoll_broken=no
-
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#include <stdio.h>
-#if defined (HAVE_LOCALE_H)
-#include <locale.h>
-#endif
-
-main(c, v)
-int     c;
-char    *v[];
-{
-        int     r1, r2;
-        char    *deflocale, *defcoll;
-
-#ifdef HAVE_SETLOCALE
-        deflocale = setlocale(LC_ALL, "");
-       defcoll = setlocale(LC_COLLATE, "");
-#endif
-
-#ifdef HAVE_STRCOLL
-       /* These two values are taken from tests/glob-test. */
-        r1 = strcoll("abd", "aXd");
-#else
-       r1 = 0;
-#endif
-        r2 = strcmp("abd", "aXd");
-
-       /* These two should both be greater than 0.  It is permissible for
-          a system to return different values, as long as the sign is the
-          same. */
-
-        /* Exit with 1 (failure) if these two values are both > 0, since
-          this tests whether strcoll(3) is broken with respect to strcmp(3)
-          in the default locale. */
-       exit (r1 > 0 && r2 > 0);
-}
-
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-  bash_cv_func_strcoll_broken=yes
-else
-  bash_cv_func_strcoll_broken=no
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_func_strcoll_broken" >&5
-$as_echo "$bash_cv_func_strcoll_broken" >&6; }
-if test $bash_cv_func_strcoll_broken = yes; then
-$as_echo "@%:@define STRCOLL_BROKEN 1" >>confdefs.h
-
-fi
-
-
-
-
-  
-  if test X$ac_cv_func_snprintf = Xyes; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for standard-conformant snprintf" >&5
-$as_echo_n "checking for standard-conformant snprintf... " >&6; }
-if ${bash_cv_func_snprintf+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test "$cross_compiling" = yes; then :
-  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cannot check standard snprintf if cross-compiling" >&5
-$as_echo "$as_me: WARNING: cannot check standard snprintf if cross-compiling" >&2;}
-    bash_cv_func_snprintf=yes
-
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#include <stdio.h>
-
-main()
-{
-  int n;
-  n = snprintf (0, 0, "%s", "0123456");
-  exit(n != 7);
-}
-
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-  bash_cv_func_snprintf=yes
-else
-  bash_cv_func_snprintf=no
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_func_snprintf" >&5
-$as_echo "$bash_cv_func_snprintf" >&6; }
-    if test $bash_cv_func_snprintf = no; then
-      ac_cv_func_snprintf=no
-    fi
-  fi
-  if test $ac_cv_func_snprintf = no; then
-    
-$as_echo "@%:@define HAVE_SNPRINTF 0" >>confdefs.h
-
-  fi
-
-
-
-
-  
-  if test X$ac_cv_func_vsnprintf = Xyes; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for standard-conformant vsnprintf" >&5
-$as_echo_n "checking for standard-conformant vsnprintf... " >&6; }
-if ${bash_cv_func_vsnprintf+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test "$cross_compiling" = yes; then :
-  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cannot check standard vsnprintf if cross-compiling" >&5
-$as_echo "$as_me: WARNING: cannot check standard vsnprintf if cross-compiling" >&2;}
-    bash_cv_func_vsnprintf=yes
-
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#if HAVE_STDARG_H
-#include <stdarg.h>
-#else
-#include <varargs.h>
-#endif
-#include <stdio.h>
-#include <stdlib.h>
-
-static int
-#if HAVE_STDARG_H
-foo(const char *fmt, ...)
-#else
-foo(format, va_alist)
-     const char *format;
-     va_dcl
-#endif
-{
-  va_list args;
-  int n;
-
-#if HAVE_STDARG_H
-  va_start(args, fmt);
-#else
-  va_start(args);
-#endif
-  n = vsnprintf(0, 0, fmt, args);
-  va_end (args);
-  return n;
-}
-
-main()
-{
-  int n;
-  n = foo("%s", "0123456");
-  exit(n != 7);
-}
-
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-  bash_cv_func_vsnprintf=yes
-else
-  bash_cv_func_vsnprintf=no
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_func_vsnprintf" >&5
-$as_echo "$bash_cv_func_vsnprintf" >&6; }
-    if test $bash_cv_func_vsnprintf = no; then
-      ac_cv_func_vsnprintf=no
-    fi
-  fi
-  if test $ac_cv_func_vsnprintf = no; then
-    
-$as_echo "@%:@define HAVE_VSNPRINTF 0" >>confdefs.h
-
-  fi
-
-
-
-if test "$ac_cv_func_putenv" = "yes"; then
-
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for standard-conformant putenv declaration" >&5
-$as_echo_n "checking for standard-conformant putenv declaration... " >&6; }
-if ${bash_cv_std_putenv+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#if STDC_HEADERS
-#include <stdlib.h>
-#include <stddef.h>
-#endif
-#ifndef __STDC__
-#  ifndef const
-#    define const
-#  endif
-#endif
-#ifdef PROTOTYPES
-extern int putenv (char *);
-#else
-extern int putenv ();
-#endif
-
-int
-main ()
-{
-return (putenv == 0);
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  bash_cv_std_putenv=yes
-else
-  bash_cv_std_putenv=no
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_std_putenv" >&5
-$as_echo "$bash_cv_std_putenv" >&6; }
-if test $bash_cv_std_putenv = yes; then
-$as_echo "@%:@define HAVE_STD_PUTENV 1" >>confdefs.h
-
-fi
-
-else
-$as_echo "@%:@define HAVE_STD_PUTENV 1" >>confdefs.h
-
-fi
-if test "$ac_cv_func_unsetenv" = "yes"; then
-
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for standard-conformant unsetenv declaration" >&5
-$as_echo_n "checking for standard-conformant unsetenv declaration... " >&6; }
-if ${bash_cv_std_unsetenv+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#if STDC_HEADERS
-#include <stdlib.h>
-#include <stddef.h>
-#endif
-#ifndef __STDC__
-#  ifndef const
-#    define const
-#  endif
-#endif
-#ifdef PROTOTYPES
-extern int unsetenv (const char *);
-#else
-extern int unsetenv ();
-#endif
-
-int
-main ()
-{
-return (unsetenv == 0);
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  bash_cv_std_unsetenv=yes
-else
-  bash_cv_std_unsetenv=no
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_std_unsetenv" >&5
-$as_echo "$bash_cv_std_unsetenv" >&6; }
-if test $bash_cv_std_unsetenv = yes; then
-$as_echo "@%:@define HAVE_STD_UNSETENV 1" >>confdefs.h
-
-fi
-
-else
-$as_echo "@%:@define HAVE_STD_UNSETENV 1" >>confdefs.h
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for printf floating point output in hex notation" >&5
-$as_echo_n "checking for printf floating point output in hex notation... " >&6; }
-if ${bash_cv_printf_a_format+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test "$cross_compiling" = yes; then :
-  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cannot check printf if cross compiling -- defaulting to no" >&5
-$as_echo "$as_me: WARNING: cannot check printf if cross compiling -- defaulting to no" >&2;}
-    bash_cv_printf_a_format=no
-
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#include <stdio.h>
-#include <string.h>
-
-int
-main()
-{
-       double y = 0.0;
-       char abuf[1024];
-
-       sprintf(abuf, "%A", y);
-       exit(strchr(abuf, 'P') == (char *)0);
-}
-
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-  bash_cv_printf_a_format=yes
-else
-  bash_cv_printf_a_format=no
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_printf_a_format" >&5
-$as_echo "$bash_cv_printf_a_format" >&6; }
-if test $bash_cv_printf_a_format = yes; then
-$as_echo "@%:@define HAVE_PRINTF_A_FORMAT 1" >>confdefs.h
-
-fi
-
-
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if signal handlers must be reinstalled when invoked" >&5
-$as_echo_n "checking if signal handlers must be reinstalled when invoked... " >&6; }
-if ${bash_cv_must_reinstall_sighandlers+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test "$cross_compiling" = yes; then :
-  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cannot check signal handling if cross compiling -- defaulting to no" >&5
-$as_echo "$as_me: WARNING: cannot check signal handling if cross compiling -- defaulting to no" >&2;}
-    bash_cv_must_reinstall_sighandlers=no
-
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#include <signal.h>
-#ifdef HAVE_UNISTD_H
-#include <unistd.h>
-#endif
-
-typedef RETSIGTYPE sigfunc();
-
-int nsigint;
-
-#ifdef HAVE_POSIX_SIGNALS
-sigfunc *
-set_signal_handler(sig, handler)
-     int sig;
-     sigfunc *handler;
-{
-  struct sigaction act, oact;
-  act.sa_handler = handler;
-  act.sa_flags = 0;
-  sigemptyset (&act.sa_mask);
-  sigemptyset (&oact.sa_mask);
-  sigaction (sig, &act, &oact);
-  return (oact.sa_handler);
-}
-#else
-#define set_signal_handler(s, h) signal(s, h)
-#endif
-
-RETSIGTYPE
-sigint(s)
-int s;
-{
-  nsigint++;
-}
-
-main()
-{
-       nsigint = 0;
-       set_signal_handler(SIGINT, sigint);
-       kill((int)getpid(), SIGINT);
-       kill((int)getpid(), SIGINT);
-       exit(nsigint != 2);
-}
-
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-  bash_cv_must_reinstall_sighandlers=no
-else
-  bash_cv_must_reinstall_sighandlers=yes
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_must_reinstall_sighandlers" >&5
-$as_echo "$bash_cv_must_reinstall_sighandlers" >&6; }
-if test $bash_cv_must_reinstall_sighandlers = yes; then
-$as_echo "@%:@define MUST_REINSTALL_SIGHANDLERS 1" >>confdefs.h
-
-fi
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for presence of necessary job control definitions" >&5
-$as_echo_n "checking for presence of necessary job control definitions... " >&6; }
-if ${bash_cv_job_control_missing+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test "$cross_compiling" = yes; then :
-  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cannot check job control if cross-compiling -- defaulting to missing" >&5
-$as_echo "$as_me: WARNING: cannot check job control if cross-compiling -- defaulting to missing" >&2;}
-     bash_cv_job_control_missing=missing
-
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#include <sys/types.h>
-#ifdef HAVE_SYS_WAIT_H
-#include <sys/wait.h>
-#endif
-#ifdef HAVE_UNISTD_H
-#include <unistd.h>
-#endif
-#include <signal.h>
-
-/* Add more tests in here as appropriate. */
-main()
-{
-/* signal type */
-#if !defined (HAVE_POSIX_SIGNALS) && !defined (HAVE_BSD_SIGNALS)
-exit(1);
-#endif
-
-/* signals and tty control. */
-#if !defined (SIGTSTP) || !defined (SIGSTOP) || !defined (SIGCONT)
-exit (1);
-#endif
-
-/* process control */
-#if !defined (WNOHANG) || !defined (WUNTRACED) 
-exit(1);
-#endif
-
-/* Posix systems have tcgetpgrp and waitpid. */
-#if defined (_POSIX_VERSION) && !defined (HAVE_TCGETPGRP)
-exit(1);
-#endif
-
-#if defined (_POSIX_VERSION) && !defined (HAVE_WAITPID)
-exit(1);
-#endif
-
-/* Other systems have TIOCSPGRP/TIOCGPRGP and wait3. */
-#if !defined (_POSIX_VERSION) && !defined (HAVE_WAIT3)
-exit(1);
-#endif
-
-exit(0);
-}
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-  bash_cv_job_control_missing=present
-else
-  bash_cv_job_control_missing=missing
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_job_control_missing" >&5
-$as_echo "$bash_cv_job_control_missing" >&6; }
-if test $bash_cv_job_control_missing = missing; then
-$as_echo "@%:@define JOB_CONTROL_MISSING 1" >>confdefs.h
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for presence of named pipes" >&5
-$as_echo_n "checking for presence of named pipes... " >&6; }
-if ${bash_cv_sys_named_pipes+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test "$cross_compiling" = yes; then :
-  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cannot check for named pipes if cross-compiling -- defaulting to missing" >&5
-$as_echo "$as_me: WARNING: cannot check for named pipes if cross-compiling -- defaulting to missing" >&2;}
-     bash_cv_sys_named_pipes=missing
-
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#include <sys/types.h>
-#include <sys/stat.h>
-#ifdef HAVE_UNISTD_H
-#include <unistd.h>
-#endif
-
-/* Add more tests in here as appropriate. */
-main()
-{
-int fd, err;
-
-#if defined (HAVE_MKFIFO)
-exit (0);
-#endif
-
-#if !defined (S_IFIFO) && (defined (_POSIX_VERSION) && !defined (S_ISFIFO))
-exit (1);
-#endif
-
-#if defined (NeXT)
-exit (1);
-#endif
-err = mkdir("bash-aclocal", 0700);
-if (err < 0) {
-  perror ("mkdir");
-  exit(1);
-}
-fd = mknod ("bash-aclocal/sh-np-autoconf", 0666 | S_IFIFO, 0);
-if (fd == -1) {
-  rmdir ("bash-aclocal");
-  exit (1);
-}
-close(fd);
-unlink ("bash-aclocal/sh-np-autoconf");
-rmdir ("bash-aclocal");
-exit(0);
-}
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-  bash_cv_sys_named_pipes=present
-else
-  bash_cv_sys_named_pipes=missing
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_sys_named_pipes" >&5
-$as_echo "$bash_cv_sys_named_pipes" >&6; }
-if test $bash_cv_sys_named_pipes = missing; then
-$as_echo "@%:@define NAMED_PIPES_MISSING 1" >>confdefs.h
-
-fi
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether termios.h defines TIOCGWINSZ" >&5
-$as_echo_n "checking whether termios.h defines TIOCGWINSZ... " >&6; }
-if ${ac_cv_sys_tiocgwinsz_in_termios_h+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <sys/types.h>
-#include <termios.h>
-#ifdef TIOCGWINSZ
-  yes
-#endif
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "yes" >/dev/null 2>&1; then :
-  ac_cv_sys_tiocgwinsz_in_termios_h=yes
-else
-  ac_cv_sys_tiocgwinsz_in_termios_h=no
-fi
-rm -f conftest*
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sys_tiocgwinsz_in_termios_h" >&5
-$as_echo "$ac_cv_sys_tiocgwinsz_in_termios_h" >&6; }
-
-if test $ac_cv_sys_tiocgwinsz_in_termios_h != yes; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether sys/ioctl.h defines TIOCGWINSZ" >&5
-$as_echo_n "checking whether sys/ioctl.h defines TIOCGWINSZ... " >&6; }
-if ${ac_cv_sys_tiocgwinsz_in_sys_ioctl_h+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <sys/types.h>
-#include <sys/ioctl.h>
-#ifdef TIOCGWINSZ
-  yes
-#endif
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "yes" >/dev/null 2>&1; then :
-  ac_cv_sys_tiocgwinsz_in_sys_ioctl_h=yes
-else
-  ac_cv_sys_tiocgwinsz_in_sys_ioctl_h=no
-fi
-rm -f conftest*
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sys_tiocgwinsz_in_sys_ioctl_h" >&5
-$as_echo "$ac_cv_sys_tiocgwinsz_in_sys_ioctl_h" >&6; }
-
-  if test $ac_cv_sys_tiocgwinsz_in_sys_ioctl_h = yes; then
-    
-$as_echo "@%:@define GWINSZ_IN_SYS_IOCTL 1" >>confdefs.h
-
-  fi
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for TIOCSTAT in sys/ioctl.h" >&5
-$as_echo_n "checking for TIOCSTAT in sys/ioctl.h... " >&6; }
-if ${bash_cv_tiocstat_in_ioctl+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <sys/types.h>
-#include <sys/ioctl.h>
-int
-main ()
-{
-int x = TIOCSTAT;
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  bash_cv_tiocstat_in_ioctl=yes
-else
-  bash_cv_tiocstat_in_ioctl=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_tiocstat_in_ioctl" >&5
-$as_echo "$bash_cv_tiocstat_in_ioctl" >&6; }
-if test $bash_cv_tiocstat_in_ioctl = yes; then   
-$as_echo "@%:@define TIOCSTAT_IN_SYS_IOCTL 1" >>confdefs.h
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for FIONREAD in sys/ioctl.h" >&5
-$as_echo_n "checking for FIONREAD in sys/ioctl.h... " >&6; }
-if ${bash_cv_fionread_in_ioctl+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <sys/types.h>
-#include <sys/ioctl.h>
-int
-main ()
-{
-int x = FIONREAD;
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  bash_cv_fionread_in_ioctl=yes
-else
-  bash_cv_fionread_in_ioctl=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_fionread_in_ioctl" >&5
-$as_echo "$bash_cv_fionread_in_ioctl" >&6; }
-if test $bash_cv_fionread_in_ioctl = yes; then   
-$as_echo "@%:@define FIONREAD_IN_SYS_IOCTL 1" >>confdefs.h
-
-fi
-
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether WCONTINUED flag to waitpid is unavailable or available but broken" >&5
-$as_echo_n "checking whether WCONTINUED flag to waitpid is unavailable or available but broken... " >&6; }
-if ${bash_cv_wcontinued_broken+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test "$cross_compiling" = yes; then :
-  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cannot check WCONTINUED if cross compiling -- defaulting to no" >&5
-$as_echo "$as_me: WARNING: cannot check WCONTINUED if cross compiling -- defaulting to no" >&2;}
-    bash_cv_wcontinued_broken=no
-
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#include <sys/types.h>
-#include <sys/wait.h>
-#include <unistd.h>
-#include <errno.h>
-
-#ifndef errno
-extern int errno;
-#endif
-main()
-{
-       int     x;
-
-       x = waitpid(-1, (int *)0, WNOHANG|WCONTINUED);
-       if (x == -1 && errno == EINVAL)
-               exit (1);
-       else
-               exit (0);
-}
-
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-  bash_cv_wcontinued_broken=no
-else
-  bash_cv_wcontinued_broken=yes
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_wcontinued_broken" >&5
-$as_echo "$bash_cv_wcontinued_broken" >&6; }
-if test $bash_cv_wcontinued_broken = yes; then
-$as_echo "@%:@define WCONTINUED_BROKEN 1" >>confdefs.h
-
-fi
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for speed_t in sys/types.h" >&5
-$as_echo_n "checking for speed_t in sys/types.h... " >&6; }
-if ${bash_cv_speed_t_in_sys_types+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <sys/types.h>
-int
-main ()
-{
-speed_t x;
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  bash_cv_speed_t_in_sys_types=yes
-else
-  bash_cv_speed_t_in_sys_types=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_speed_t_in_sys_types" >&5
-$as_echo "$bash_cv_speed_t_in_sys_types" >&6; }
-if test $bash_cv_speed_t_in_sys_types = yes; then   
-$as_echo "@%:@define SPEED_T_IN_SYS_TYPES 1" >>confdefs.h
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether getpw functions are declared in pwd.h" >&5
-$as_echo_n "checking whether getpw functions are declared in pwd.h... " >&6; }
-if ${bash_cv_getpw_declared+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#include <sys/types.h>
-#ifdef HAVE_UNISTD_H
-#  include <unistd.h>
-#endif
-#include <pwd.h>
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "getpwuid" >/dev/null 2>&1; then :
-  bash_cv_getpw_declared=yes
-else
-  bash_cv_getpw_declared=no
-fi
-rm -f conftest*
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_getpw_declared" >&5
-$as_echo "$bash_cv_getpw_declared" >&6; }
-if test $bash_cv_getpw_declared = yes; then
-$as_echo "@%:@define HAVE_GETPW_DECLS 1" >>confdefs.h
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for unusable real-time signals due to large values" >&5
-$as_echo_n "checking for unusable real-time signals due to large values... " >&6; }
-if ${bash_cv_unusable_rtsigs+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test "$cross_compiling" = yes; then :
-  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cannot check real-time signals if cross compiling -- defaulting to yes" >&5
-$as_echo "$as_me: WARNING: cannot check real-time signals if cross compiling -- defaulting to yes" >&2;}
-     bash_cv_unusable_rtsigs=yes
-
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#include <sys/types.h>
-#include <signal.h>
-
-#ifndef NSIG
-#  define NSIG 64
-#endif
-
-main ()
-{
-  int n_sigs = 2 * NSIG;
-#ifdef SIGRTMIN
-  int rtmin = SIGRTMIN;
-#else
-  int rtmin = 0;
-#endif
-
-  exit(rtmin < n_sigs);
-}
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-  bash_cv_unusable_rtsigs=yes
-else
-  bash_cv_unusable_rtsigs=no
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_unusable_rtsigs" >&5
-$as_echo "$bash_cv_unusable_rtsigs" >&6; }
-if test $bash_cv_unusable_rtsigs = yes; then
-$as_echo "@%:@define UNUSABLE_RT_SIGNALS 1" >>confdefs.h
-
-fi
-
-
-
-
-
-if test "$bash_cv_sys_siglist" = no && test "$bash_cv_under_sys_siglist" = no && test "$bash_cv_have_strsignal" = no; then
-  SIGLIST_O=siglist.o
-else
-  SIGLIST_O=
-fi
-
-
-
-case "$host_os" in
-hpux*) { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $host_os needs _KERNEL for RLIMIT defines" >&5
-$as_echo_n "checking whether $host_os needs _KERNEL for RLIMIT defines... " >&6; }
-if ${bash_cv_kernel_rlimit+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#include <sys/types.h>
-#include <sys/resource.h>
-
-int
-main ()
-{
-
-  int f;
-  f = RLIMIT_DATA;
-
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  bash_cv_kernel_rlimit=no
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#include <sys/types.h>
-#define _KERNEL
-#include <sys/resource.h>
-#undef _KERNEL
-
-int
-main ()
-{
-
-       int f;
-        f = RLIMIT_DATA;
-
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  bash_cv_kernel_rlimit=yes
-else
-  bash_cv_kernel_rlimit=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_kernel_rlimit" >&5
-$as_echo "$bash_cv_kernel_rlimit" >&6; }
-if test $bash_cv_kernel_rlimit = yes; then
-$as_echo "@%:@define RLIMIT_NEEDS_KERNEL 1" >>confdefs.h
-
-fi
- ;;
-esac
-
-if test "$opt_readline" = yes; then
-case "$host_os" in
-aix*)  prefer_curses=yes ;;
-esac
-
-if test "X$bash_cv_termcap_lib" = "X"; then
-_bash_needmsg=yes
-else
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking which library has the termcap functions" >&5
-$as_echo_n "checking which library has the termcap functions... " >&6; }
-_bash_needmsg=
-fi
-if ${bash_cv_termcap_lib+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_fn_c_check_func "$LINENO" "tgetent" "ac_cv_func_tgetent"
-if test "x$ac_cv_func_tgetent" = xyes; then :
-  bash_cv_termcap_lib=libc
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for tgetent in -ltermcap" >&5
-$as_echo_n "checking for tgetent in -ltermcap... " >&6; }
-if ${ac_cv_lib_termcap_tgetent+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_check_lib_save_LIBS=$LIBS
-LIBS="-ltermcap  $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-/* Override any GCC internal prototype to avoid an error.
-   Use char because int might match the return type of a GCC
-   builtin and then its argument prototype would still apply.  */
-#ifdef __cplusplus
-extern "C"
-#endif
-char tgetent ();
-int
-main ()
-{
-return tgetent ();
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  ac_cv_lib_termcap_tgetent=yes
-else
-  ac_cv_lib_termcap_tgetent=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_termcap_tgetent" >&5
-$as_echo "$ac_cv_lib_termcap_tgetent" >&6; }
-if test "x$ac_cv_lib_termcap_tgetent" = xyes; then :
-  bash_cv_termcap_lib=libtermcap
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for tgetent in -ltinfo" >&5
-$as_echo_n "checking for tgetent in -ltinfo... " >&6; }
-if ${ac_cv_lib_tinfo_tgetent+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_check_lib_save_LIBS=$LIBS
-LIBS="-ltinfo  $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-/* Override any GCC internal prototype to avoid an error.
-   Use char because int might match the return type of a GCC
-   builtin and then its argument prototype would still apply.  */
-#ifdef __cplusplus
-extern "C"
-#endif
-char tgetent ();
-int
-main ()
-{
-return tgetent ();
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  ac_cv_lib_tinfo_tgetent=yes
-else
-  ac_cv_lib_tinfo_tgetent=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_tinfo_tgetent" >&5
-$as_echo "$ac_cv_lib_tinfo_tgetent" >&6; }
-if test "x$ac_cv_lib_tinfo_tgetent" = xyes; then :
-  bash_cv_termcap_lib=libtinfo
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for tgetent in -lcurses" >&5
-$as_echo_n "checking for tgetent in -lcurses... " >&6; }
-if ${ac_cv_lib_curses_tgetent+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_check_lib_save_LIBS=$LIBS
-LIBS="-lcurses  $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-/* Override any GCC internal prototype to avoid an error.
-   Use char because int might match the return type of a GCC
-   builtin and then its argument prototype would still apply.  */
-#ifdef __cplusplus
-extern "C"
-#endif
-char tgetent ();
-int
-main ()
-{
-return tgetent ();
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  ac_cv_lib_curses_tgetent=yes
-else
-  ac_cv_lib_curses_tgetent=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_curses_tgetent" >&5
-$as_echo "$ac_cv_lib_curses_tgetent" >&6; }
-if test "x$ac_cv_lib_curses_tgetent" = xyes; then :
-  bash_cv_termcap_lib=libcurses
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for tgetent in -lncurses" >&5
-$as_echo_n "checking for tgetent in -lncurses... " >&6; }
-if ${ac_cv_lib_ncurses_tgetent+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_check_lib_save_LIBS=$LIBS
-LIBS="-lncurses  $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-/* Override any GCC internal prototype to avoid an error.
-   Use char because int might match the return type of a GCC
-   builtin and then its argument prototype would still apply.  */
-#ifdef __cplusplus
-extern "C"
-#endif
-char tgetent ();
-int
-main ()
-{
-return tgetent ();
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  ac_cv_lib_ncurses_tgetent=yes
-else
-  ac_cv_lib_ncurses_tgetent=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_ncurses_tgetent" >&5
-$as_echo "$ac_cv_lib_ncurses_tgetent" >&6; }
-if test "x$ac_cv_lib_ncurses_tgetent" = xyes; then :
-  bash_cv_termcap_lib=libncurses
-else
-  bash_cv_termcap_lib=gnutermcap
-fi
-
-fi
-
-fi
-
-fi
-
-fi
-
-fi
-
-if test "X$_bash_needmsg" = "Xyes"; then
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking which library has the termcap functions" >&5
-$as_echo_n "checking which library has the termcap functions... " >&6; }
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: using $bash_cv_termcap_lib" >&5
-$as_echo "using $bash_cv_termcap_lib" >&6; }
-if test $bash_cv_termcap_lib = gnutermcap && test -z "$prefer_curses"; then
-LDFLAGS="$LDFLAGS -L./lib/termcap"
-TERMCAP_LIB="./lib/termcap/libtermcap.a"
-TERMCAP_DEP="./lib/termcap/libtermcap.a"
-elif test $bash_cv_termcap_lib = libtermcap && test -z "$prefer_curses"; then
-TERMCAP_LIB=-ltermcap
-TERMCAP_DEP=
-elif test $bash_cv_termcap_lib = libtinfo; then
-TERMCAP_LIB=-ltinfo
-TERMCAP_DEP=
-elif test $bash_cv_termcap_lib = libncurses; then
-TERMCAP_LIB=-lncurses
-TERMCAP_DEP=
-elif test $bash_cv_termcap_lib = libc; then
-TERMCAP_LIB=
-TERMCAP_DEP=
-else
-TERMCAP_LIB=-lcurses
-TERMCAP_DEP=
-fi
-
-fi
-
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether /dev/fd is available" >&5
-$as_echo_n "checking whether /dev/fd is available... " >&6; }
-if ${bash_cv_dev_fd+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  bash_cv_dev_fd=""
-if test -d /dev/fd  && (exec test -r /dev/fd/0 < /dev/null) ; then
-# check for systems like FreeBSD 5 that only provide /dev/fd/[012]
-   if (exec test -r /dev/fd/3 3</dev/null) ; then
-     bash_cv_dev_fd=standard
-   else
-     bash_cv_dev_fd=absent
-   fi
-fi
-if test -z "$bash_cv_dev_fd" ; then 
-  if test -d /proc/self/fd && (exec test -r /proc/self/fd/0 < /dev/null) ; then
-    bash_cv_dev_fd=whacky
-  else
-    bash_cv_dev_fd=absent
-  fi
-fi
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_dev_fd" >&5
-$as_echo "$bash_cv_dev_fd" >&6; }
-if test $bash_cv_dev_fd = "standard"; then
-  $as_echo "@%:@define HAVE_DEV_FD 1" >>confdefs.h
-
-  $as_echo "@%:@define DEV_FD_PREFIX \"/dev/fd/\"" >>confdefs.h
-
-elif test $bash_cv_dev_fd = "whacky"; then
-  $as_echo "@%:@define HAVE_DEV_FD 1" >>confdefs.h
-
-  $as_echo "@%:@define DEV_FD_PREFIX \"/proc/self/fd/\"" >>confdefs.h
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether /dev/stdin stdout stderr are available" >&5
-$as_echo_n "checking whether /dev/stdin stdout stderr are available... " >&6; }
-if ${bash_cv_dev_stdin+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test -d /dev/fd && (exec test -r /dev/stdin < /dev/null) ; then
-   bash_cv_dev_stdin=present
- elif test -d /proc/self/fd && (exec test -r /dev/stdin < /dev/null) ; then
-   bash_cv_dev_stdin=present
- else
-   bash_cv_dev_stdin=absent
- fi
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_dev_stdin" >&5
-$as_echo "$bash_cv_dev_stdin" >&6; }
-if test $bash_cv_dev_stdin = "present"; then
-  $as_echo "@%:@define HAVE_DEV_STDIN 1" >>confdefs.h
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for default mail directory" >&5
-$as_echo_n "checking for default mail directory... " >&6; }
-if ${bash_cv_mail_dir+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test -d /var/mail; then
-   bash_cv_mail_dir=/var/mail
- elif test -d /var/spool/mail; then
-   bash_cv_mail_dir=/var/spool/mail
- elif test -d /usr/mail; then
-   bash_cv_mail_dir=/usr/mail
- elif test -d /usr/spool/mail; then
-   bash_cv_mail_dir=/usr/spool/mail
- else
-   bash_cv_mail_dir=unknown
- fi
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_mail_dir" >&5
-$as_echo "$bash_cv_mail_dir" >&6; }
-cat >>confdefs.h <<_ACEOF
-@%:@define DEFAULT_MAIL_DIRECTORY "$bash_cv_mail_dir"
-_ACEOF
-
-
-
-if test "$bash_cv_job_control_missing" = missing; then
-       opt_job_control=no
-fi
-
-if test "$opt_job_control" = yes; then
-$as_echo "@%:@define JOB_CONTROL 1" >>confdefs.h
-
-JOBS_O=jobs.o
-else
-JOBS_O=nojobs.o
-fi
-
-
-
-
-LOCAL_DEFS=-DSHELL
-
-
-case "${host_os}" in
-sysv4.2*)      $as_echo "@%:@define SVR4_2 1" >>confdefs.h
-
-               $as_echo "@%:@define SVR4 1" >>confdefs.h
- ;;
-sysv4*)                $as_echo "@%:@define SVR4 1" >>confdefs.h
- ;;
-sysv5*)                $as_echo "@%:@define SVR5 1" >>confdefs.h
- ;;
-hpux9*)                LOCAL_CFLAGS="-DHPUX9 -DHPUX" ;;
-hpux*)         LOCAL_CFLAGS=-DHPUX ;;
-dgux*)         LOCAL_CFLAGS=-D_DGUX_SOURCE; LOCAL_LIBS=-ldgc ;;
-isc*)          LOCAL_CFLAGS=-Disc386 ;;
-rhapsody*)     LOCAL_CFLAGS=-DRHAPSODY ;;
-darwin*)       LOCAL_CFLAGS=-DMACOSX ;;
-sco3.2v5*)     LOCAL_CFLAGS="-b elf -DWAITPID_BROKEN -DPATH_MAX=1024" ;;
-sco3.2v4*)     LOCAL_CFLAGS="-DMUST_UNBLOCK_CHLD -DPATH_MAX=1024" ;;
-sco3.2*)       LOCAL_CFLAGS=-DMUST_UNBLOCK_CHLD ;;
-sunos4*)       LOCAL_CFLAGS=-DSunOS4 ;;
-solaris2.5*)   LOCAL_CFLAGS="-DSunOS5 -DSOLARIS" ;;
-solaris2.8*)   LOCAL_CFLAGS=-DSOLARIS  ;;
-solaris2.9*)   LOCAL_CFLAGS=-DSOLARIS  ;;
-solaris2.10*)  LOCAL_CFLAGS=-DSOLARIS  ;;
-solaris2*)     LOCAL_CFLAGS=-DSOLARIS ;;
-lynxos*)       LOCAL_CFLAGS=-DRECYCLES_PIDS ;;
-linux*)                LOCAL_LDFLAGS=-rdynamic          # allow dynamic loading
-               case "`uname -r`" in
-               2.[456789]*|3*) $as_echo "@%:@define PGRP_PIPE 1" >>confdefs.h
- ;;
-               esac ;;
-*qnx6*)                LOCAL_CFLAGS="-Dqnx -Dqnx6" LOCAL_LIBS="-lncurses" ;;
-*qnx*)         LOCAL_CFLAGS="-Dqnx -F -3s" LOCAL_LDFLAGS="-3s" LOCAL_LIBS="-lunix -lncurses" ;;
-powerux*)      LOCAL_LIBS="-lgen" ;;
-cygwin*)       LOCAL_CFLAGS=-DRECYCLES_PIDS ;;
-opennt*|interix*) LOCAL_CFLAGS="-DNO_MAIN_ENV_ARG -DBROKEN_DIRENT_D_INO -D_POSIX_SOURCE -D_ALL_SOURCE" ;;
-esac
-
-case "${host_os}-${CC}" in
-aix4.2*-*gcc*) LOCAL_LDFLAGS="-Xlinker -bexpall -Xlinker -brtl" ;;
-aix4.2*)       LOCAL_LDFLAGS="-bexpall -brtl" ;;
-bsdi4*-*gcc*)  LOCAL_LDFLAGS="-rdynamic" ;;    # allow dynamic loading, like Linux
-esac
-
-case "${host_os}" in
-freebsd[3-9]*)
-               if test -x /usr/bin/objformat && test "`/usr/bin/objformat`" = "elf" ; then
-                       LOCAL_LDFLAGS=-rdynamic # allow dynamic loading
-               fi ;;
-freebsdelf*)   LOCAL_LDFLAGS=-rdynamic ;;      # allow dynamic loading
-dragonfly*)    LOCAL_LDFLAGS=-rdynamic ;;      # allow dynamic loading
-esac
-
-case "$host_cpu" in
-*cray*)                LOCAL_CFLAGS="-DCRAY" ;; # shell var so config.h can use it
-esac
-
-case "$host_cpu-$host_os" in
-ibmrt-*bsd4*)  LOCAL_CFLAGS="-ma -U__STDC__" ;;
-esac
-
-case "$host_cpu-$host_vendor-$host_os" in
-m88k-motorola-sysv3)   LOCAL_CFLAGS=-DWAITPID_BROKEN ;;
-mips-pyramid-sysv4)    LOCAL_CFLAGS=-Xa ;;
-esac
-
-#
-# Shared object configuration section.  These values are generated by
-# ${srcdir}/support/shobj-conf
-#
-if test "$ac_cv_func_dlopen" = "yes" && test -f ${srcdir}/support/shobj-conf
-then
-       { $as_echo "$as_me:${as_lineno-$LINENO}: checking shared object configuration for loadable builtins" >&5
-$as_echo_n "checking shared object configuration for loadable builtins... " >&6; }
-       eval `${CONFIG_SHELL-/bin/sh} ${srcdir}/support/shobj-conf -C "${CC}" -c "${host_cpu}" -o "${host_os}" -v "${host_vendor}"`
-       
-       
-       
-       
-       
-       
-       
-       { $as_echo "$as_me:${as_lineno-$LINENO}: result: $SHOBJ_STATUS" >&5
-$as_echo "$SHOBJ_STATUS" >&6; }
-fi
-
-# try to create a directory tree if the source is elsewhere
-# this should be packaged into a script accessible via ${srcdir}/support
-case "$srcdir" in
-.)     ;;
-*)     for d in doc tests support lib examples; do     # dirs
-               test -d $d || mkdir $d
-       done
-       for ld in readline glob tilde malloc sh termcap; do     # libdirs
-               test -d lib/$ld || mkdir lib/$ld
-       done
-       test -d examples/loadables || mkdir examples/loadables  # loadable builtins
-       test -d examples/loadables/perl || mkdir examples/loadables/perl
-       ;;
-esac
-
-BUILD_DIR=`pwd`
-case "$BUILD_DIR" in
-*\ *)  BUILD_DIR=`echo "$BUILD_DIR" | sed 's: :\\\\ :g'` ;;
-*)     ;;
-esac
-
-if test -z "$localedir"; then
-       localedir='${datarootdir}/locale'
-fi
-if test -z "$datarootdir"; then
-       datarootdir='${prefix}/share'
-fi
-
-
-
-
-
-
-# Some versions of autoconf don't substitute these automatically
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-#AC_SUBST(ALLOCA_SOURCE)
-#AC_SUBST(ALLOCA_OBJECT)
-
-ac_config_files="$ac_config_files Makefile builtins/Makefile lib/readline/Makefile lib/glob/Makefile lib/intl/Makefile lib/malloc/Makefile lib/sh/Makefile lib/termcap/Makefile lib/tilde/Makefile doc/Makefile support/Makefile po/Makefile.in examples/loadables/Makefile examples/loadables/perl/Makefile"
-
-ac_config_commands="$ac_config_commands default"
-
-cat >confcache <<\_ACEOF
-# This file is a shell script that caches the results of configure
-# tests run on this system so they can be shared between configure
-# scripts and configure runs, see configure's option --config-cache.
-# It is not useful on other systems.  If it contains results you don't
-# want to keep, you may remove or edit it.
-#
-# config.status only pays attention to the cache file if you give it
-# the --recheck option to rerun configure.
-#
-# `ac_cv_env_foo' variables (set or unset) will be overridden when
-# loading this file, other *unset* `ac_cv_foo' will be assigned the
-# following values.
-
-_ACEOF
-
-# The following way of writing the cache mishandles newlines in values,
-# but we know of no workaround that is simple, portable, and efficient.
-# So, we kill variables containing newlines.
-# Ultrix sh set writes to stderr and can't be redirected directly,
-# and sets the high bit in the cache file unless we assign to the vars.
-(
-  for ac_var in `(set) 2>&1 | sed -n 's/^\([a-zA-Z_][a-zA-Z0-9_]*\)=.*/\1/p'`; do
-    eval ac_val=\$$ac_var
-    case $ac_val in #(
-    *${as_nl}*)
-      case $ac_var in #(
-      *_cv_*) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cache variable $ac_var contains a newline" >&5
-$as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;;
-      esac
-      case $ac_var in #(
-      _ | IFS | as_nl) ;; #(
-      BASH_ARGV | BASH_SOURCE) eval $ac_var= ;; #(
-      *) { eval $ac_var=; unset $ac_var;} ;;
-      esac ;;
-    esac
-  done
-
-  (set) 2>&1 |
-    case $as_nl`(ac_space=' '; set) 2>&1` in #(
-    *${as_nl}ac_space=\ *)
-      # `set' does not quote correctly, so add quotes: double-quote
-      # substitution turns \\\\ into \\, and sed turns \\ into \.
-      sed -n \
-       "s/'/'\\\\''/g;
-         s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\\2'/p"
-      ;; #(
-    *)
-      # `set' quotes correctly as required by POSIX, so do not add quotes.
-      sed -n "/^[_$as_cr_alnum]*_cv_[_$as_cr_alnum]*=/p"
-      ;;
-    esac |
-    sort
-) |
-  sed '
-     /^ac_cv_env_/b end
-     t clear
-     :clear
-     s/^\([^=]*\)=\(.*[{}].*\)$/test "${\1+set}" = set || &/
-     t end
-     s/^\([^=]*\)=\(.*\)$/\1=${\1=\2}/
-     :end' >>confcache
-if diff "$cache_file" confcache >/dev/null 2>&1; then :; else
-  if test -w "$cache_file"; then
-    if test "x$cache_file" != "x/dev/null"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: updating cache $cache_file" >&5
-$as_echo "$as_me: updating cache $cache_file" >&6;}
-      if test ! -f "$cache_file" || test -h "$cache_file"; then
-       cat confcache >"$cache_file"
-      else
-        case $cache_file in #(
-        */* | ?:*)
-         mv -f confcache "$cache_file"$$ &&
-         mv -f "$cache_file"$$ "$cache_file" ;; #(
-        *)
-         mv -f confcache "$cache_file" ;;
-       esac
-      fi
-    fi
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: not updating unwritable cache $cache_file" >&5
-$as_echo "$as_me: not updating unwritable cache $cache_file" >&6;}
-  fi
-fi
-rm -f confcache
-
-test "x$prefix" = xNONE && prefix=$ac_default_prefix
-# Let make expand exec_prefix.
-test "x$exec_prefix" = xNONE && exec_prefix='${prefix}'
-
-DEFS=-DHAVE_CONFIG_H
-
-ac_libobjs=
-ac_ltlibobjs=
-U=
-for ac_i in : $LIB@&t@OBJS; do test "x$ac_i" = x: && continue
-  # 1. Remove the extension, and $U if already installed.
-  ac_script='s/\$U\././;s/\.o$//;s/\.obj$//'
-  ac_i=`$as_echo "$ac_i" | sed "$ac_script"`
-  # 2. Prepend LIBOBJDIR.  When used with automake>=1.10 LIBOBJDIR
-  #    will be set to the directory where LIBOBJS objects are built.
-  as_fn_append ac_libobjs " \${LIBOBJDIR}$ac_i\$U.$ac_objext"
-  as_fn_append ac_ltlibobjs " \${LIBOBJDIR}$ac_i"'$U.lo'
-done
-LIB@&t@OBJS=$ac_libobjs
-
-LTLIBOBJS=$ac_ltlibobjs
-
-
-
-
-: "${CONFIG_STATUS=./config.status}"
-ac_write_fail=0
-ac_clean_files_save=$ac_clean_files
-ac_clean_files="$ac_clean_files $CONFIG_STATUS"
-{ $as_echo "$as_me:${as_lineno-$LINENO}: creating $CONFIG_STATUS" >&5
-$as_echo "$as_me: creating $CONFIG_STATUS" >&6;}
-as_write_fail=0
-cat >$CONFIG_STATUS <<_ASEOF || as_write_fail=1
-#! $SHELL
-# Generated by $as_me.
-# Run this file to recreate the current configuration.
-# Compiler output produced by configure, useful for debugging
-# configure, is in config.log if it exists.
-
-debug=false
-ac_cs_recheck=false
-ac_cs_silent=false
-
-SHELL=\${CONFIG_SHELL-$SHELL}
-export SHELL
-_ASEOF
-cat >>$CONFIG_STATUS <<\_ASEOF || as_write_fail=1
-## -------------------- ##
-## M4sh Initialization. ##
-## -------------------- ##
-
-# Be more Bourne compatible
-DUALCASE=1; export DUALCASE # for MKS sh
-if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then :
-  emulate sh
-  NULLCMD=:
-  # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which
-  # is contrary to our usage.  Disable this feature.
-  alias -g '${1+"$@"}'='"$@"'
-  setopt NO_GLOB_SUBST
-else
-  case `(set -o) 2>/dev/null` in @%:@(
-  *posix*) :
-    set -o posix ;; @%:@(
-  *) :
-     ;;
-esac
-fi
-
-
-as_nl='
-'
-export as_nl
-# Printing a long string crashes Solaris 7 /usr/bin/printf.
-as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
-as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo
-as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo
-# Prefer a ksh shell builtin over an external printf program on Solaris,
-# but without wasting forks for bash or zsh.
-if test -z "$BASH_VERSION$ZSH_VERSION" \
-    && (test "X`print -r -- $as_echo`" = "X$as_echo") 2>/dev/null; then
-  as_echo='print -r --'
-  as_echo_n='print -rn --'
-elif (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then
-  as_echo='printf %s\n'
-  as_echo_n='printf %s'
-else
-  if test "X`(/usr/ucb/echo -n -n $as_echo) 2>/dev/null`" = "X-n $as_echo"; then
-    as_echo_body='eval /usr/ucb/echo -n "$1$as_nl"'
-    as_echo_n='/usr/ucb/echo -n'
-  else
-    as_echo_body='eval expr "X$1" : "X\\(.*\\)"'
-    as_echo_n_body='eval
-      arg=$1;
-      case $arg in @%:@(
-      *"$as_nl"*)
-       expr "X$arg" : "X\\(.*\\)$as_nl";
-       arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;;
-      esac;
-      expr "X$arg" : "X\\(.*\\)" | tr -d "$as_nl"
-    '
-    export as_echo_n_body
-    as_echo_n='sh -c $as_echo_n_body as_echo'
-  fi
-  export as_echo_body
-  as_echo='sh -c $as_echo_body as_echo'
-fi
-
-# The user is always right.
-if test "${PATH_SEPARATOR+set}" != set; then
-  PATH_SEPARATOR=:
-  (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && {
-    (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 ||
-      PATH_SEPARATOR=';'
-  }
-fi
-
-
-# IFS
-# We need space, tab and new line, in precisely that order.  Quoting is
-# there to prevent editors from complaining about space-tab.
-# (If _AS_PATH_WALK were called with IFS unset, it would disable word
-# splitting by setting IFS to empty value.)
-IFS=" ""       $as_nl"
-
-# Find who we are.  Look in the path if we contain no directory separator.
-as_myself=
-case $0 in @%:@((
-  *[\\/]* ) as_myself=$0 ;;
-  *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break
-  done
-IFS=$as_save_IFS
-
-     ;;
-esac
-# We did not find ourselves, most probably we were run as `sh COMMAND'
-# in which case we are not to be found in the path.
-if test "x$as_myself" = x; then
-  as_myself=$0
-fi
-if test ! -f "$as_myself"; then
-  $as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2
-  exit 1
-fi
-
-# Unset variables that we do not need and which cause bugs (e.g. in
-# pre-3.0 UWIN ksh).  But do not cause bugs in bash 2.01; the "|| exit 1"
-# suppresses any "Segmentation fault" message there.  '((' could
-# trigger a bug in pdksh 5.2.14.
-for as_var in BASH_ENV ENV MAIL MAILPATH
-do eval test x\${$as_var+set} = xset \
-  && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || :
-done
-PS1='$ '
-PS2='> '
-PS4='+ '
-
-# NLS nuisances.
-LC_ALL=C
-export LC_ALL
-LANGUAGE=C
-export LANGUAGE
-
-# CDPATH.
-(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
-
-
-@%:@ as_fn_error STATUS ERROR [LINENO LOG_FD]
-@%:@ ----------------------------------------
-@%:@ Output "`basename @S|@0`: error: ERROR" to stderr. If LINENO and LOG_FD are
-@%:@ provided, also output the error to LOG_FD, referencing LINENO. Then exit the
-@%:@ script with STATUS, using 1 if that was 0.
-as_fn_error ()
-{
-  as_status=$1; test $as_status -eq 0 && as_status=1
-  if test "$4"; then
-    as_lineno=${as_lineno-"$3"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
-    $as_echo "$as_me:${as_lineno-$LINENO}: error: $2" >&$4
-  fi
-  $as_echo "$as_me: error: $2" >&2
-  as_fn_exit $as_status
-} @%:@ as_fn_error
-
-
-@%:@ as_fn_set_status STATUS
-@%:@ -----------------------
-@%:@ Set @S|@? to STATUS, without forking.
-as_fn_set_status ()
-{
-  return $1
-} @%:@ as_fn_set_status
-
-@%:@ as_fn_exit STATUS
-@%:@ -----------------
-@%:@ Exit the shell with STATUS, even in a "trap 0" or "set -e" context.
-as_fn_exit ()
-{
-  set +e
-  as_fn_set_status $1
-  exit $1
-} @%:@ as_fn_exit
-
-@%:@ as_fn_unset VAR
-@%:@ ---------------
-@%:@ Portably unset VAR.
-as_fn_unset ()
-{
-  { eval $1=; unset $1;}
-}
-as_unset=as_fn_unset
-@%:@ as_fn_append VAR VALUE
-@%:@ ----------------------
-@%:@ Append the text in VALUE to the end of the definition contained in VAR. Take
-@%:@ advantage of any shell optimizations that allow amortized linear growth over
-@%:@ repeated appends, instead of the typical quadratic growth present in naive
-@%:@ implementations.
-if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null; then :
-  eval 'as_fn_append ()
-  {
-    eval $1+=\$2
-  }'
-else
-  as_fn_append ()
-  {
-    eval $1=\$$1\$2
-  }
-fi # as_fn_append
-
-@%:@ as_fn_arith ARG...
-@%:@ ------------------
-@%:@ Perform arithmetic evaluation on the ARGs, and store the result in the
-@%:@ global @S|@as_val. Take advantage of shells that can avoid forks. The arguments
-@%:@ must be portable across @S|@(()) and expr.
-if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null; then :
-  eval 'as_fn_arith ()
-  {
-    as_val=$(( $* ))
-  }'
-else
-  as_fn_arith ()
-  {
-    as_val=`expr "$@" || test $? -eq 1`
-  }
-fi # as_fn_arith
-
-
-if expr a : '\(a\)' >/dev/null 2>&1 &&
-   test "X`expr 00001 : '.*\(...\)'`" = X001; then
-  as_expr=expr
-else
-  as_expr=false
-fi
-
-if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then
-  as_basename=basename
-else
-  as_basename=false
-fi
-
-if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then
-  as_dirname=dirname
-else
-  as_dirname=false
-fi
-
-as_me=`$as_basename -- "$0" ||
-$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \
-        X"$0" : 'X\(//\)$' \| \
-        X"$0" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X/"$0" |
-    sed '/^.*\/\([^/][^/]*\)\/*$/{
-           s//\1/
-           q
-         }
-         /^X\/\(\/\/\)$/{
-           s//\1/
-           q
-         }
-         /^X\/\(\/\).*/{
-           s//\1/
-           q
-         }
-         s/.*/./; q'`
-
-# Avoid depending upon Character Ranges.
-as_cr_letters='abcdefghijklmnopqrstuvwxyz'
-as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ'
-as_cr_Letters=$as_cr_letters$as_cr_LETTERS
-as_cr_digits='0123456789'
-as_cr_alnum=$as_cr_Letters$as_cr_digits
-
-ECHO_C= ECHO_N= ECHO_T=
-case `echo -n x` in @%:@(((((
--n*)
-  case `echo 'xy\c'` in
-  *c*) ECHO_T='        ';;     # ECHO_T is single tab character.
-  xy)  ECHO_C='\c';;
-  *)   echo `echo ksh88 bug on AIX 6.1` > /dev/null
-       ECHO_T='        ';;
-  esac;;
-*)
-  ECHO_N='-n';;
-esac
-
-rm -f conf$$ conf$$.exe conf$$.file
-if test -d conf$$.dir; then
-  rm -f conf$$.dir/conf$$.file
-else
-  rm -f conf$$.dir
-  mkdir conf$$.dir 2>/dev/null
-fi
-if (echo >conf$$.file) 2>/dev/null; then
-  if ln -s conf$$.file conf$$ 2>/dev/null; then
-    as_ln_s='ln -s'
-    # ... but there are two gotchas:
-    # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail.
-    # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable.
-    # In both cases, we have to default to `cp -p'.
-    ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe ||
-      as_ln_s='cp -p'
-  elif ln conf$$.file conf$$ 2>/dev/null; then
-    as_ln_s=ln
-  else
-    as_ln_s='cp -p'
-  fi
-else
-  as_ln_s='cp -p'
-fi
-rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file
-rmdir conf$$.dir 2>/dev/null
-
-
-@%:@ as_fn_mkdir_p
-@%:@ -------------
-@%:@ Create "@S|@as_dir" as a directory, including parents if necessary.
-as_fn_mkdir_p ()
-{
-
-  case $as_dir in #(
-  -*) as_dir=./$as_dir;;
-  esac
-  test -d "$as_dir" || eval $as_mkdir_p || {
-    as_dirs=
-    while :; do
-      case $as_dir in #(
-      *\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'(
-      *) as_qdir=$as_dir;;
-      esac
-      as_dirs="'$as_qdir' $as_dirs"
-      as_dir=`$as_dirname -- "$as_dir" ||
-$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
-        X"$as_dir" : 'X\(//\)[^/]' \| \
-        X"$as_dir" : 'X\(//\)$' \| \
-        X"$as_dir" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X"$as_dir" |
-    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
-           s//\1/
-           q
-         }
-         /^X\(\/\/\)[^/].*/{
-           s//\1/
-           q
-         }
-         /^X\(\/\/\)$/{
-           s//\1/
-           q
-         }
-         /^X\(\/\).*/{
-           s//\1/
-           q
-         }
-         s/.*/./; q'`
-      test -d "$as_dir" && break
-    done
-    test -z "$as_dirs" || eval "mkdir $as_dirs"
-  } || test -d "$as_dir" || as_fn_error $? "cannot create directory $as_dir"
-
-
-} @%:@ as_fn_mkdir_p
-if mkdir -p . 2>/dev/null; then
-  as_mkdir_p='mkdir -p "$as_dir"'
-else
-  test -d ./-p && rmdir ./-p
-  as_mkdir_p=false
-fi
-
-if test -x / >/dev/null 2>&1; then
-  as_test_x='test -x'
-else
-  if ls -dL / >/dev/null 2>&1; then
-    as_ls_L_option=L
-  else
-    as_ls_L_option=
-  fi
-  as_test_x='
-    eval sh -c '\''
-      if test -d "$1"; then
-       test -d "$1/.";
-      else
-       case $1 in @%:@(
-       -*)set "./$1";;
-       esac;
-       case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in @%:@((
-       ???[sx]*):;;*)false;;esac;fi
-    '\'' sh
-  '
-fi
-as_executable_p=$as_test_x
-
-# Sed expression to map a string onto a valid CPP name.
-as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'"
-
-# Sed expression to map a string onto a valid variable name.
-as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'"
-
-
-exec 6>&1
-## ----------------------------------- ##
-## Main body of $CONFIG_STATUS script. ##
-## ----------------------------------- ##
-_ASEOF
-test $as_write_fail = 0 && chmod +x $CONFIG_STATUS || ac_write_fail=1
-
-cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
-# Save the log message, to keep $0 and so on meaningful, and to
-# report actual input values of CONFIG_FILES etc. instead of their
-# values after options handling.
-ac_log="
-This file was extended by bash $as_me 4.2-maint, which was
-generated by GNU Autoconf 2.68.  Invocation command line was
-
-  CONFIG_FILES    = $CONFIG_FILES
-  CONFIG_HEADERS  = $CONFIG_HEADERS
-  CONFIG_LINKS    = $CONFIG_LINKS
-  CONFIG_COMMANDS = $CONFIG_COMMANDS
-  $ $0 $@
-
-on `(hostname || uname -n) 2>/dev/null | sed 1q`
-"
-
-_ACEOF
-
-case $ac_config_files in *"
-"*) set x $ac_config_files; shift; ac_config_files=$*;;
-esac
-
-case $ac_config_headers in *"
-"*) set x $ac_config_headers; shift; ac_config_headers=$*;;
-esac
-
-
-cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
-# Files that config.status was made for.
-config_files="$ac_config_files"
-config_headers="$ac_config_headers"
-config_commands="$ac_config_commands"
-
-_ACEOF
-
-cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
-ac_cs_usage="\
-\`$as_me' instantiates files and other configuration actions
-from templates according to the current configuration.  Unless the files
-and actions are specified as TAGs, all are instantiated by default.
-
-Usage: $0 [OPTION]... [TAG]...
-
-  -h, --help       print this help, then exit
-  -V, --version    print version number and configuration settings, then exit
-      --config     print configuration, then exit
-  -q, --quiet, --silent
-                   do not print progress messages
-  -d, --debug      don't remove temporary files
-      --recheck    update $as_me by reconfiguring in the same conditions
-      --file=FILE[:TEMPLATE] 
-                   instantiate the configuration file FILE
-      --header=FILE[:TEMPLATE] 
-                   instantiate the configuration header FILE
-
-Configuration files:
-$config_files
-
-Configuration headers:
-$config_headers
-
-Configuration commands:
-$config_commands
-
-Report bugs to <bug-bash@gnu.org>."
-
-_ACEOF
-cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
-ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
-ac_cs_version="\\
-bash config.status 4.2-maint
-configured by $0, generated by GNU Autoconf 2.68,
-  with options \\"\$ac_cs_config\\"
-
-Copyright (C) 2010 Free Software Foundation, Inc.
-This config.status script is free software; the Free Software Foundation
-gives unlimited permission to copy, distribute and modify it."
-
-ac_pwd='$ac_pwd'
-srcdir='$srcdir'
-INSTALL='$INSTALL'
-test -n "\$AWK" || AWK=awk
-_ACEOF
-
-cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
-# The default lists apply if the user does not specify any file.
-ac_need_defaults=:
-while test $# != 0
-do
-  case $1 in
-  --*=?*)
-    ac_option=`expr "X$1" : 'X\([^=]*\)='`
-    ac_optarg=`expr "X$1" : 'X[^=]*=\(.*\)'`
-    ac_shift=:
-    ;;
-  --*=)
-    ac_option=`expr "X$1" : 'X\([^=]*\)='`
-    ac_optarg=
-    ac_shift=:
-    ;;
-  *)
-    ac_option=$1
-    ac_optarg=$2
-    ac_shift=shift
-    ;;
-  esac
-
-  case $ac_option in
-  # Handling of the options.
-  -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r)
-    ac_cs_recheck=: ;;
-  --version | --versio | --versi | --vers | --ver | --ve | --v | -V )
-    $as_echo "$ac_cs_version"; exit ;;
-  --config | --confi | --conf | --con | --co | --c )
-    $as_echo "$ac_cs_config"; exit ;;
-  --debug | --debu | --deb | --de | --d | -d )
-    debug=: ;;
-  --file | --fil | --fi | --f )
-    $ac_shift
-    case $ac_optarg in
-    *\'*) ac_optarg=`$as_echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;;
-    '') as_fn_error $? "missing file argument" ;;
-    esac
-    as_fn_append CONFIG_FILES " '$ac_optarg'"
-    ac_need_defaults=false;;
-  --header | --heade | --head | --hea )
-    $ac_shift
-    case $ac_optarg in
-    *\'*) ac_optarg=`$as_echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;;
-    esac
-    as_fn_append CONFIG_HEADERS " '$ac_optarg'"
-    ac_need_defaults=false;;
-  --he | --h)
-    # Conflict between --help and --header
-    as_fn_error $? "ambiguous option: \`$1'
-Try \`$0 --help' for more information.";;
-  --help | --hel | -h )
-    $as_echo "$ac_cs_usage"; exit ;;
-  -q | -quiet | --quiet | --quie | --qui | --qu | --q \
-  | -silent | --silent | --silen | --sile | --sil | --si | --s)
-    ac_cs_silent=: ;;
-
-  # This is an error.
-  -*) as_fn_error $? "unrecognized option: \`$1'
-Try \`$0 --help' for more information." ;;
-
-  *) as_fn_append ac_config_targets " $1"
-     ac_need_defaults=false ;;
-
-  esac
-  shift
-done
-
-ac_configure_extra_args=
-
-if $ac_cs_silent; then
-  exec 6>/dev/null
-  ac_configure_extra_args="$ac_configure_extra_args --silent"
-fi
-
-_ACEOF
-cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
-if \$ac_cs_recheck; then
-  set X '$SHELL' '$0' $ac_configure_args \$ac_configure_extra_args --no-create --no-recursion
-  shift
-  \$as_echo "running CONFIG_SHELL=$SHELL \$*" >&6
-  CONFIG_SHELL='$SHELL'
-  export CONFIG_SHELL
-  exec "\$@"
-fi
-
-_ACEOF
-cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
-exec 5>>config.log
-{
-  echo
-  sed 'h;s/./-/g;s/^.../@%:@@%:@ /;s/...$/ @%:@@%:@/;p;x;p;x' <<_ASBOX
-@%:@@%:@ Running $as_me. @%:@@%:@
-_ASBOX
-  $as_echo "$ac_log"
-} >&5
-
-_ACEOF
-cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
-#
-# INIT-COMMANDS
-#
-# Capture the value of obsolete ALL_LINGUAS because we need it to compute
-    # POFILES, GMOFILES, UPDATEPOFILES, DUMMYPOFILES, CATALOGS. But hide it
-    # from automake.
-    eval 'OBSOLETE_ALL_LINGUAS''="$ALL_LINGUAS"'
-    # Capture the value of LINGUAS because we need it to compute CATALOGS.
-    LINGUAS="${LINGUAS-%UNSET%}"
-   
-
-_ACEOF
-
-cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
-
-# Handling of arguments.
-for ac_config_target in $ac_config_targets
-do
-  case $ac_config_target in
-    "config.h") CONFIG_HEADERS="$CONFIG_HEADERS config.h" ;;
-    "default-1") CONFIG_COMMANDS="$CONFIG_COMMANDS default-1" ;;
-    "Makefile") CONFIG_FILES="$CONFIG_FILES Makefile" ;;
-    "builtins/Makefile") CONFIG_FILES="$CONFIG_FILES builtins/Makefile" ;;
-    "lib/readline/Makefile") CONFIG_FILES="$CONFIG_FILES lib/readline/Makefile" ;;
-    "lib/glob/Makefile") CONFIG_FILES="$CONFIG_FILES lib/glob/Makefile" ;;
-    "lib/intl/Makefile") CONFIG_FILES="$CONFIG_FILES lib/intl/Makefile" ;;
-    "lib/malloc/Makefile") CONFIG_FILES="$CONFIG_FILES lib/malloc/Makefile" ;;
-    "lib/sh/Makefile") CONFIG_FILES="$CONFIG_FILES lib/sh/Makefile" ;;
-    "lib/termcap/Makefile") CONFIG_FILES="$CONFIG_FILES lib/termcap/Makefile" ;;
-    "lib/tilde/Makefile") CONFIG_FILES="$CONFIG_FILES lib/tilde/Makefile" ;;
-    "doc/Makefile") CONFIG_FILES="$CONFIG_FILES doc/Makefile" ;;
-    "support/Makefile") CONFIG_FILES="$CONFIG_FILES support/Makefile" ;;
-    "po/Makefile.in") CONFIG_FILES="$CONFIG_FILES po/Makefile.in" ;;
-    "examples/loadables/Makefile") CONFIG_FILES="$CONFIG_FILES examples/loadables/Makefile" ;;
-    "examples/loadables/perl/Makefile") CONFIG_FILES="$CONFIG_FILES examples/loadables/perl/Makefile" ;;
-    "default") CONFIG_COMMANDS="$CONFIG_COMMANDS default" ;;
-
-  *) as_fn_error $? "invalid argument: \`$ac_config_target'" "$LINENO" 5;;
-  esac
-done
-
-
-# If the user did not use the arguments to specify the items to instantiate,
-# then the envvar interface is used.  Set only those that are not.
-# We use the long form for the default assignment because of an extremely
-# bizarre bug on SunOS 4.1.3.
-if $ac_need_defaults; then
-  test "${CONFIG_FILES+set}" = set || CONFIG_FILES=$config_files
-  test "${CONFIG_HEADERS+set}" = set || CONFIG_HEADERS=$config_headers
-  test "${CONFIG_COMMANDS+set}" = set || CONFIG_COMMANDS=$config_commands
-fi
-
-# Have a temporary directory for convenience.  Make it in the build tree
-# simply because there is no reason against having it here, and in addition,
-# creating and moving files from /tmp can sometimes cause problems.
-# Hook for its removal unless debugging.
-# Note that there is a small window in which the directory will not be cleaned:
-# after its creation but before its name has been assigned to `$tmp'.
-$debug ||
-{
-  tmp= ac_tmp=
-  trap 'exit_status=$?
-  : "${ac_tmp:=$tmp}"
-  { test ! -d "$ac_tmp" || rm -fr "$ac_tmp"; } && exit $exit_status
-' 0
-  trap 'as_fn_exit 1' 1 2 13 15
-}
-# Create a (secure) tmp directory for tmp files.
-
-{
-  tmp=`(umask 077 && mktemp -d "./confXXXXXX") 2>/dev/null` &&
-  test -d "$tmp"
-}  ||
-{
-  tmp=./conf$$-$RANDOM
-  (umask 077 && mkdir "$tmp")
-} || as_fn_error $? "cannot create a temporary directory in ." "$LINENO" 5
-ac_tmp=$tmp
-
-# Set up the scripts for CONFIG_FILES section.
-# No need to generate them if there are no CONFIG_FILES.
-# This happens for instance with `./config.status config.h'.
-if test -n "$CONFIG_FILES"; then
-
-
-ac_cr=`echo X | tr X '\015'`
-# On cygwin, bash can eat \r inside `` if the user requested igncr.
-# But we know of no other shell where ac_cr would be empty at this
-# point, so we can use a bashism as a fallback.
-if test "x$ac_cr" = x; then
-  eval ac_cr=\$\'\\r\'
-fi
-ac_cs_awk_cr=`$AWK 'BEGIN { print "a\rb" }' </dev/null 2>/dev/null`
-if test "$ac_cs_awk_cr" = "a${ac_cr}b"; then
-  ac_cs_awk_cr='\\r'
-else
-  ac_cs_awk_cr=$ac_cr
-fi
-
-echo 'BEGIN {' >"$ac_tmp/subs1.awk" &&
-_ACEOF
-
-
-{
-  echo "cat >conf$$subs.awk <<_ACEOF" &&
-  echo "$ac_subst_vars" | sed 's/.*/&!$&$ac_delim/' &&
-  echo "_ACEOF"
-} >conf$$subs.sh ||
-  as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5
-ac_delim_num=`echo "$ac_subst_vars" | grep -c '^'`
-ac_delim='%!_!# '
-for ac_last_try in false false false false false :; do
-  . ./conf$$subs.sh ||
-    as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5
-
-  ac_delim_n=`sed -n "s/.*$ac_delim\$/X/p" conf$$subs.awk | grep -c X`
-  if test $ac_delim_n = $ac_delim_num; then
-    break
-  elif $ac_last_try; then
-    as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5
-  else
-    ac_delim="$ac_delim!$ac_delim _$ac_delim!! "
-  fi
-done
-rm -f conf$$subs.sh
-
-cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
-cat >>"\$ac_tmp/subs1.awk" <<\\_ACAWK &&
-_ACEOF
-sed -n '
-h
-s/^/S["/; s/!.*/"]=/
-p
-g
-s/^[^!]*!//
-:repl
-t repl
-s/'"$ac_delim"'$//
-t delim
-:nl
-h
-s/\(.\{148\}\)..*/\1/
-t more1
-s/["\\]/\\&/g; s/^/"/; s/$/\\n"\\/
-p
-n
-b repl
-:more1
-s/["\\]/\\&/g; s/^/"/; s/$/"\\/
-p
-g
-s/.\{148\}//
-t nl
-:delim
-h
-s/\(.\{148\}\)..*/\1/
-t more2
-s/["\\]/\\&/g; s/^/"/; s/$/"/
-p
-b
-:more2
-s/["\\]/\\&/g; s/^/"/; s/$/"\\/
-p
-g
-s/.\{148\}//
-t delim
-' <conf$$subs.awk | sed '
-/^[^""]/{
-  N
-  s/\n//
-}
-' >>$CONFIG_STATUS || ac_write_fail=1
-rm -f conf$$subs.awk
-cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
-_ACAWK
-cat >>"\$ac_tmp/subs1.awk" <<_ACAWK &&
-  for (key in S) S_is_set[key] = 1
-  FS = "\a"
-
-}
-{
-  line = $ 0
-  nfields = split(line, field, "@")
-  substed = 0
-  len = length(field[1])
-  for (i = 2; i < nfields; i++) {
-    key = field[i]
-    keylen = length(key)
-    if (S_is_set[key]) {
-      value = S[key]
-      line = substr(line, 1, len) "" value "" substr(line, len + keylen + 3)
-      len += length(value) + length(field[++i])
-      substed = 1
-    } else
-      len += 1 + keylen
-  }
-
-  print line
-}
-
-_ACAWK
-_ACEOF
-cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
-if sed "s/$ac_cr//" < /dev/null > /dev/null 2>&1; then
-  sed "s/$ac_cr\$//; s/$ac_cr/$ac_cs_awk_cr/g"
-else
-  cat
-fi < "$ac_tmp/subs1.awk" > "$ac_tmp/subs.awk" \
-  || as_fn_error $? "could not setup config files machinery" "$LINENO" 5
-_ACEOF
-
-# VPATH may cause trouble with some makes, so we remove sole $(srcdir),
-# ${srcdir} and @srcdir@ entries from VPATH if srcdir is ".", strip leading and
-# trailing colons and then remove the whole line if VPATH becomes empty
-# (actually we leave an empty line to preserve line numbers).
-if test "x$srcdir" = x.; then
-  ac_vpsub='/^[         ]*VPATH[        ]*=[    ]*/{
-h
-s///
-s/^/:/
-s/[     ]*$/:/
-s/:\$(srcdir):/:/g
-s/:\${srcdir}:/:/g
-s/:@srcdir@:/:/g
-s/^:*//
-s/:*$//
-x
-s/\(=[  ]*\).*/\1/
-G
-s/\n//
-s/^[^=]*=[      ]*$//
-}'
-fi
-
-cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
-fi # test -n "$CONFIG_FILES"
-
-# Set up the scripts for CONFIG_HEADERS section.
-# No need to generate them if there are no CONFIG_HEADERS.
-# This happens for instance with `./config.status Makefile'.
-if test -n "$CONFIG_HEADERS"; then
-cat >"$ac_tmp/defines.awk" <<\_ACAWK ||
-BEGIN {
-_ACEOF
-
-# Transform confdefs.h into an awk script `defines.awk', embedded as
-# here-document in config.status, that substitutes the proper values into
-# config.h.in to produce config.h.
-
-# Create a delimiter string that does not exist in confdefs.h, to ease
-# handling of long lines.
-ac_delim='%!_!# '
-for ac_last_try in false false :; do
-  ac_tt=`sed -n "/$ac_delim/p" confdefs.h`
-  if test -z "$ac_tt"; then
-    break
-  elif $ac_last_try; then
-    as_fn_error $? "could not make $CONFIG_HEADERS" "$LINENO" 5
-  else
-    ac_delim="$ac_delim!$ac_delim _$ac_delim!! "
-  fi
-done
-
-# For the awk script, D is an array of macro values keyed by name,
-# likewise P contains macro parameters if any.  Preserve backslash
-# newline sequences.
-
-ac_word_re=[_$as_cr_Letters][_$as_cr_alnum]*
-sed -n '
-s/.\{148\}/&'"$ac_delim"'/g
-t rset
-:rset
-s/^[    ]*#[    ]*define[       ][      ]*/ /
-t def
-d
-:def
-s/\\$//
-t bsnl
-s/["\\]/\\&/g
-s/^ \('"$ac_word_re"'\)\(([^()]*)\)[    ]*\(.*\)/P["\1"]="\2"\
-D["\1"]=" \3"/p
-s/^ \('"$ac_word_re"'\)[        ]*\(.*\)/D["\1"]=" \2"/p
-d
-:bsnl
-s/["\\]/\\&/g
-s/^ \('"$ac_word_re"'\)\(([^()]*)\)[    ]*\(.*\)/P["\1"]="\2"\
-D["\1"]=" \3\\\\\\n"\\/p
-t cont
-s/^ \('"$ac_word_re"'\)[        ]*\(.*\)/D["\1"]=" \2\\\\\\n"\\/p
-t cont
-d
-:cont
-n
-s/.\{148\}/&'"$ac_delim"'/g
-t clear
-:clear
-s/\\$//
-t bsnlc
-s/["\\]/\\&/g; s/^/"/; s/$/"/p
-d
-:bsnlc
-s/["\\]/\\&/g; s/^/"/; s/$/\\\\\\n"\\/p
-b cont
-' <confdefs.h | sed '
-s/'"$ac_delim"'/"\\\
-"/g' >>$CONFIG_STATUS || ac_write_fail=1
-
-cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
-  for (key in D) D_is_set[key] = 1
-  FS = "\a"
-}
-/^[\t ]*#[\t ]*(define|undef)[\t ]+$ac_word_re([\t (]|\$)/ {
-  line = \$ 0
-  split(line, arg, " ")
-  if (arg[1] == "#") {
-    defundef = arg[2]
-    mac1 = arg[3]
-  } else {
-    defundef = substr(arg[1], 2)
-    mac1 = arg[2]
-  }
-  split(mac1, mac2, "(") #)
-  macro = mac2[1]
-  prefix = substr(line, 1, index(line, defundef) - 1)
-  if (D_is_set[macro]) {
-    # Preserve the white space surrounding the "#".
-    print prefix "define", macro P[macro] D[macro]
-    next
-  } else {
-    # Replace #undef with comments.  This is necessary, for example,
-    # in the case of _POSIX_SOURCE, which is predefined and required
-    # on some systems where configure will not decide to define it.
-    if (defundef == "undef") {
-      print "/*", prefix defundef, macro, "*/"
-      next
-    }
-  }
-}
-{ print }
-_ACAWK
-_ACEOF
-cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
-  as_fn_error $? "could not setup config headers machinery" "$LINENO" 5
-fi # test -n "$CONFIG_HEADERS"
-
-
-eval set X "  :F $CONFIG_FILES  :H $CONFIG_HEADERS    :C $CONFIG_COMMANDS"
-shift
-for ac_tag
-do
-  case $ac_tag in
-  :[FHLC]) ac_mode=$ac_tag; continue;;
-  esac
-  case $ac_mode$ac_tag in
-  :[FHL]*:*);;
-  :L* | :C*:*) as_fn_error $? "invalid tag \`$ac_tag'" "$LINENO" 5;;
-  :[FH]-) ac_tag=-:-;;
-  :[FH]*) ac_tag=$ac_tag:$ac_tag.in;;
-  esac
-  ac_save_IFS=$IFS
-  IFS=:
-  set x $ac_tag
-  IFS=$ac_save_IFS
-  shift
-  ac_file=$1
-  shift
-
-  case $ac_mode in
-  :L) ac_source=$1;;
-  :[FH])
-    ac_file_inputs=
-    for ac_f
-    do
-      case $ac_f in
-      -) ac_f="$ac_tmp/stdin";;
-      *) # Look for the file first in the build tree, then in the source tree
-        # (if the path is not absolute).  The absolute path cannot be DOS-style,
-        # because $ac_f cannot contain `:'.
-        test -f "$ac_f" ||
-          case $ac_f in
-          [\\/$]*) false;;
-          *) test -f "$srcdir/$ac_f" && ac_f="$srcdir/$ac_f";;
-          esac ||
-          as_fn_error 1 "cannot find input file: \`$ac_f'" "$LINENO" 5;;
-      esac
-      case $ac_f in *\'*) ac_f=`$as_echo "$ac_f" | sed "s/'/'\\\\\\\\''/g"`;; esac
-      as_fn_append ac_file_inputs " '$ac_f'"
-    done
-
-    # Let's still pretend it is `configure' which instantiates (i.e., don't
-    # use $as_me), people would be surprised to read:
-    #    /* config.h.  Generated by config.status.  */
-    configure_input='Generated from '`
-         $as_echo "$*" | sed 's|^[^:]*/||;s|:[^:]*/|, |g'
-       `' by configure.'
-    if test x"$ac_file" != x-; then
-      configure_input="$ac_file.  $configure_input"
-      { $as_echo "$as_me:${as_lineno-$LINENO}: creating $ac_file" >&5
-$as_echo "$as_me: creating $ac_file" >&6;}
-    fi
-    # Neutralize special characters interpreted by sed in replacement strings.
-    case $configure_input in #(
-    *\&* | *\|* | *\\* )
-       ac_sed_conf_input=`$as_echo "$configure_input" |
-       sed 's/[\\\\&|]/\\\\&/g'`;; #(
-    *) ac_sed_conf_input=$configure_input;;
-    esac
-
-    case $ac_tag in
-    *:-:* | *:-) cat >"$ac_tmp/stdin" \
-      || as_fn_error $? "could not create $ac_file" "$LINENO" 5 ;;
-    esac
-    ;;
-  esac
-
-  ac_dir=`$as_dirname -- "$ac_file" ||
-$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
-        X"$ac_file" : 'X\(//\)[^/]' \| \
-        X"$ac_file" : 'X\(//\)$' \| \
-        X"$ac_file" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X"$ac_file" |
-    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
-           s//\1/
-           q
-         }
-         /^X\(\/\/\)[^/].*/{
-           s//\1/
-           q
-         }
-         /^X\(\/\/\)$/{
-           s//\1/
-           q
-         }
-         /^X\(\/\).*/{
-           s//\1/
-           q
-         }
-         s/.*/./; q'`
-  as_dir="$ac_dir"; as_fn_mkdir_p
-  ac_builddir=.
-
-case "$ac_dir" in
-.) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;;
-*)
-  ac_dir_suffix=/`$as_echo "$ac_dir" | sed 's|^\.[\\/]||'`
-  # A ".." for each directory in $ac_dir_suffix.
-  ac_top_builddir_sub=`$as_echo "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'`
-  case $ac_top_builddir_sub in
-  "") ac_top_builddir_sub=. ac_top_build_prefix= ;;
-  *)  ac_top_build_prefix=$ac_top_builddir_sub/ ;;
-  esac ;;
-esac
-ac_abs_top_builddir=$ac_pwd
-ac_abs_builddir=$ac_pwd$ac_dir_suffix
-# for backward compatibility:
-ac_top_builddir=$ac_top_build_prefix
-
-case $srcdir in
-  .)  # We are building in place.
-    ac_srcdir=.
-    ac_top_srcdir=$ac_top_builddir_sub
-    ac_abs_top_srcdir=$ac_pwd ;;
-  [\\/]* | ?:[\\/]* )  # Absolute name.
-    ac_srcdir=$srcdir$ac_dir_suffix;
-    ac_top_srcdir=$srcdir
-    ac_abs_top_srcdir=$srcdir ;;
-  *) # Relative name.
-    ac_srcdir=$ac_top_build_prefix$srcdir$ac_dir_suffix
-    ac_top_srcdir=$ac_top_build_prefix$srcdir
-    ac_abs_top_srcdir=$ac_pwd/$srcdir ;;
-esac
-ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix
-
-
-  case $ac_mode in
-  :F)
-  #
-  # CONFIG_FILE
-  #
-
-  case $INSTALL in
-  [\\/$]* | ?:[\\/]* ) ac_INSTALL=$INSTALL ;;
-  *) ac_INSTALL=$ac_top_build_prefix$INSTALL ;;
-  esac
-_ACEOF
-
-cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
-# If the template does not know about datarootdir, expand it.
-# FIXME: This hack should be removed a few years after 2.60.
-ac_datarootdir_hack=; ac_datarootdir_seen=
-ac_sed_dataroot='
-/datarootdir/ {
-  p
-  q
-}
-/@datadir@/p
-/@docdir@/p
-/@infodir@/p
-/@localedir@/p
-/@mandir@/p'
-case `eval "sed -n \"\$ac_sed_dataroot\" $ac_file_inputs"` in
-*datarootdir*) ac_datarootdir_seen=yes;;
-*@datadir@*|*@docdir@*|*@infodir@*|*@localedir@*|*@mandir@*)
-  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&5
-$as_echo "$as_me: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&2;}
-_ACEOF
-cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
-  ac_datarootdir_hack='
-  s&@datadir@&$datadir&g
-  s&@docdir@&$docdir&g
-  s&@infodir@&$infodir&g
-  s&@localedir@&$localedir&g
-  s&@mandir@&$mandir&g
-  s&\\\${datarootdir}&$datarootdir&g' ;;
-esac
-_ACEOF
-
-# Neutralize VPATH when `$srcdir' = `.'.
-# Shell code in configure.ac might set extrasub.
-# FIXME: do we really want to maintain this feature?
-cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
-ac_sed_extra="$ac_vpsub
-$extrasub
-_ACEOF
-cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
-:t
-/@[a-zA-Z_][a-zA-Z_0-9]*@/!b
-s|@configure_input@|$ac_sed_conf_input|;t t
-s&@top_builddir@&$ac_top_builddir_sub&;t t
-s&@top_build_prefix@&$ac_top_build_prefix&;t t
-s&@srcdir@&$ac_srcdir&;t t
-s&@abs_srcdir@&$ac_abs_srcdir&;t t
-s&@top_srcdir@&$ac_top_srcdir&;t t
-s&@abs_top_srcdir@&$ac_abs_top_srcdir&;t t
-s&@builddir@&$ac_builddir&;t t
-s&@abs_builddir@&$ac_abs_builddir&;t t
-s&@abs_top_builddir@&$ac_abs_top_builddir&;t t
-s&@INSTALL@&$ac_INSTALL&;t t
-$ac_datarootdir_hack
-"
-eval sed \"\$ac_sed_extra\" "$ac_file_inputs" | $AWK -f "$ac_tmp/subs.awk" \
-  >$ac_tmp/out || as_fn_error $? "could not create $ac_file" "$LINENO" 5
-
-test -z "$ac_datarootdir_hack$ac_datarootdir_seen" &&
-  { ac_out=`sed -n '/\${datarootdir}/p' "$ac_tmp/out"`; test -n "$ac_out"; } &&
-  { ac_out=`sed -n '/^[         ]*datarootdir[  ]*:*=/p' \
-      "$ac_tmp/out"`; test -z "$ac_out"; } &&
-  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file contains a reference to the variable \`datarootdir'
-which seems to be undefined.  Please make sure it is defined" >&5
-$as_echo "$as_me: WARNING: $ac_file contains a reference to the variable \`datarootdir'
-which seems to be undefined.  Please make sure it is defined" >&2;}
-
-  rm -f "$ac_tmp/stdin"
-  case $ac_file in
-  -) cat "$ac_tmp/out" && rm -f "$ac_tmp/out";;
-  *) rm -f "$ac_file" && mv "$ac_tmp/out" "$ac_file";;
-  esac \
-  || as_fn_error $? "could not create $ac_file" "$LINENO" 5
- ;;
-  :H)
-  #
-  # CONFIG_HEADER
-  #
-  if test x"$ac_file" != x-; then
-    {
-      $as_echo "/* $configure_input  */" \
-      && eval '$AWK -f "$ac_tmp/defines.awk"' "$ac_file_inputs"
-    } >"$ac_tmp/config.h" \
-      || as_fn_error $? "could not create $ac_file" "$LINENO" 5
-    if diff "$ac_file" "$ac_tmp/config.h" >/dev/null 2>&1; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: $ac_file is unchanged" >&5
-$as_echo "$as_me: $ac_file is unchanged" >&6;}
-    else
-      rm -f "$ac_file"
-      mv "$ac_tmp/config.h" "$ac_file" \
-       || as_fn_error $? "could not create $ac_file" "$LINENO" 5
-    fi
-  else
-    $as_echo "/* $configure_input  */" \
-      && eval '$AWK -f "$ac_tmp/defines.awk"' "$ac_file_inputs" \
-      || as_fn_error $? "could not create -" "$LINENO" 5
-  fi
- ;;
-  
-  :C)  { $as_echo "$as_me:${as_lineno-$LINENO}: executing $ac_file commands" >&5
-$as_echo "$as_me: executing $ac_file commands" >&6;}
- ;;
-  esac
-
-
-  case $ac_file$ac_mode in
-    "default-1":C) 
-    for ac_file in $CONFIG_FILES; do
-      # Support "outfile[:infile[:infile...]]"
-      case "$ac_file" in
-        *:*) ac_file=`echo "$ac_file"|sed 's%:.*%%'` ;;
-      esac
-      # PO directories have a Makefile.in generated from Makefile.in.in.
-      case "$ac_file" in */Makefile.in)
-        # Adjust a relative srcdir.
-        ac_dir=`echo "$ac_file"|sed 's%/[^/][^/]*$%%'`
-        ac_dir_suffix="/`echo "$ac_dir"|sed 's%^\./%%'`"
-        ac_dots=`echo "$ac_dir_suffix"|sed 's%/[^/]*%../%g'`
-        # In autoconf-2.13 it is called $ac_given_srcdir.
-        # In autoconf-2.50 it is called $srcdir.
-        test -n "$ac_given_srcdir" || ac_given_srcdir="$srcdir"
-        case "$ac_given_srcdir" in
-          .)  top_srcdir=`echo $ac_dots|sed 's%/$%%'` ;;
-          /*) top_srcdir="$ac_given_srcdir" ;;
-          *)  top_srcdir="$ac_dots$ac_given_srcdir" ;;
-        esac
-        if test -f "$ac_given_srcdir/$ac_dir/POTFILES.in"; then
-          rm -f "$ac_dir/POTFILES"
-          test -n "$as_me" && echo "$as_me: creating $ac_dir/POTFILES" || echo "creating $ac_dir/POTFILES"
-          cat "$ac_given_srcdir/$ac_dir/POTFILES.in" | sed -e "/^#/d" -e "/^[  ]*\$/d" -e "s,.*,     $top_srcdir/& \\\\," | sed -e "\$s/\(.*\) \\\\/\1/" > "$ac_dir/POTFILES"
-          POMAKEFILEDEPS="POTFILES.in"
-          # ALL_LINGUAS, POFILES, GMOFILES, UPDATEPOFILES, DUMMYPOFILES depend
-          # on $ac_dir but don't depend on user-specified configuration
-          # parameters.
-          if test -f "$ac_given_srcdir/$ac_dir/LINGUAS"; then
-            # The LINGUAS file contains the set of available languages.
-            if test -n "$OBSOLETE_ALL_LINGUAS"; then
-              test -n "$as_me" && echo "$as_me: setting ALL_LINGUAS in configure.in is obsolete" || echo "setting ALL_LINGUAS in configure.in is obsolete"
-            fi
-            ALL_LINGUAS_=`sed -e "/^#/d" "$ac_given_srcdir/$ac_dir/LINGUAS"`
-            # Hide the ALL_LINGUAS assigment from automake.
-            eval 'ALL_LINGUAS''=$ALL_LINGUAS_'
-            POMAKEFILEDEPS="$POMAKEFILEDEPS LINGUAS"
-          else
-            # The set of available languages was given in configure.in.
-            eval 'ALL_LINGUAS''=$OBSOLETE_ALL_LINGUAS'
-          fi
-          case "$ac_given_srcdir" in
-            .) srcdirpre= ;;
-            *) srcdirpre='$(srcdir)/' ;;
-          esac
-          POFILES=
-          GMOFILES=
-          UPDATEPOFILES=
-          DUMMYPOFILES=
-          for lang in $ALL_LINGUAS; do
-            POFILES="$POFILES $srcdirpre$lang.po"
-            GMOFILES="$GMOFILES $srcdirpre$lang.gmo"
-            UPDATEPOFILES="$UPDATEPOFILES $lang.po-update"
-            DUMMYPOFILES="$DUMMYPOFILES $lang.nop"
-          done
-          # CATALOGS depends on both $ac_dir and the user's LINGUAS
-          # environment variable.
-          INST_LINGUAS=
-          if test -n "$ALL_LINGUAS"; then
-            for presentlang in $ALL_LINGUAS; do
-              useit=no
-              if test "%UNSET%" != "$LINGUAS"; then
-                desiredlanguages="$LINGUAS"
-              else
-                desiredlanguages="$ALL_LINGUAS"
-              fi
-              for desiredlang in $desiredlanguages; do
-                # Use the presentlang catalog if desiredlang is
-                #   a. equal to presentlang, or
-                #   b. a variant of presentlang (because in this case,
-                #      presentlang can be used as a fallback for messages
-                #      which are not translated in the desiredlang catalog).
-                case "$desiredlang" in
-                  "$presentlang"*) useit=yes;;
-                esac
-              done
-              if test $useit = yes; then
-                INST_LINGUAS="$INST_LINGUAS $presentlang"
-              fi
-            done
-          fi
-          CATALOGS=
-          if test -n "$INST_LINGUAS"; then
-            for lang in $INST_LINGUAS; do
-              CATALOGS="$CATALOGS $lang.gmo"
-            done
-          fi
-          test -n "$as_me" && echo "$as_me: creating $ac_dir/Makefile" || echo "creating $ac_dir/Makefile"
-          sed -e "/^POTFILES =/r $ac_dir/POTFILES" -e "/^# Makevars/r $ac_given_srcdir/$ac_dir/Makevars" -e "s|@POFILES@|$POFILES|g" -e "s|@GMOFILES@|$GMOFILES|g" -e "s|@UPDATEPOFILES@|$UPDATEPOFILES|g" -e "s|@DUMMYPOFILES@|$DUMMYPOFILES|g" -e "s|@CATALOGS@|$CATALOGS|g" -e "s|@POMAKEFILEDEPS@|$POMAKEFILEDEPS|g" "$ac_dir/Makefile.in" > "$ac_dir/Makefile"
-          for f in "$ac_given_srcdir/$ac_dir"/Rules-*; do
-            if test -f "$f"; then
-              case "$f" in
-                *.orig | *.bak | *~) ;;
-                *) cat "$f" >> "$ac_dir/Makefile" ;;
-              esac
-            fi
-          done
-        fi
-        ;;
-      esac
-    done ;;
-    "default":C) 
-# Makefile uses this timestamp file to record whether config.h is up to date.
-echo timestamp > stamp-h
- ;;
-
-  esac
-done # for ac_tag
-
-
-as_fn_exit 0
-_ACEOF
-ac_clean_files=$ac_clean_files_save
-
-test $ac_write_fail = 0 ||
-  as_fn_error $? "write failure creating $CONFIG_STATUS" "$LINENO" 5
-
-
-# configure is writing to config.log, and then calls config.status.
-# config.status does its own redirection, appending to config.log.
-# Unfortunately, on DOS this fails, as config.log is still kept open
-# by configure, so config.status won't be able to write to it; its
-# output is simply discarded.  So we exec the FD to /dev/null,
-# effectively closing config.log, so it can be properly (re)opened and
-# appended to by config.status.  When coming back to configure, we
-# need to make the FD available again.
-if test "$no_create" != yes; then
-  ac_cs_success=:
-  ac_config_status_args=
-  test "$silent" = yes &&
-    ac_config_status_args="$ac_config_status_args --quiet"
-  exec 5>/dev/null
-  $SHELL $CONFIG_STATUS $ac_config_status_args || ac_cs_success=false
-  exec 5>>config.log
-  # Use ||, not &&, to avoid exiting from the if with $? = 1, which
-  # would make configure fail if this is the last instruction.
-  $ac_cs_success || as_fn_exit 1
-fi
-if test -n "$ac_unrecognized_opts" && test "$enable_option_checking" != no; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: unrecognized options: $ac_unrecognized_opts" >&5
-$as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2;}
-fi
-
diff --git a/autom4te.cache/output.1 b/autom4te.cache/output.1
deleted file mode 100644 (file)
index 41b9b5a..0000000
+++ /dev/null
@@ -1,17309 +0,0 @@
-@%:@! /bin/sh
-@%:@ From configure.in for Bash 4.2, version 4.049.
-@%:@ Guess values for system-dependent variables and create Makefiles.
-@%:@ Generated by GNU Autoconf 2.68 for bash 4.2-maint.
-@%:@
-@%:@ Report bugs to <bug-bash@gnu.org>.
-@%:@ 
-@%:@ 
-@%:@ Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001,
-@%:@ 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free Software
-@%:@ Foundation, Inc.
-@%:@ 
-@%:@ 
-@%:@ This configure script is free software; the Free Software Foundation
-@%:@ gives unlimited permission to copy, distribute and modify it.
-## -------------------- ##
-## M4sh Initialization. ##
-## -------------------- ##
-
-# Be more Bourne compatible
-DUALCASE=1; export DUALCASE # for MKS sh
-if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then :
-  emulate sh
-  NULLCMD=:
-  # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which
-  # is contrary to our usage.  Disable this feature.
-  alias -g '${1+"$@"}'='"$@"'
-  setopt NO_GLOB_SUBST
-else
-  case `(set -o) 2>/dev/null` in @%:@(
-  *posix*) :
-    set -o posix ;; @%:@(
-  *) :
-     ;;
-esac
-fi
-
-
-as_nl='
-'
-export as_nl
-# Printing a long string crashes Solaris 7 /usr/bin/printf.
-as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
-as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo
-as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo
-# Prefer a ksh shell builtin over an external printf program on Solaris,
-# but without wasting forks for bash or zsh.
-if test -z "$BASH_VERSION$ZSH_VERSION" \
-    && (test "X`print -r -- $as_echo`" = "X$as_echo") 2>/dev/null; then
-  as_echo='print -r --'
-  as_echo_n='print -rn --'
-elif (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then
-  as_echo='printf %s\n'
-  as_echo_n='printf %s'
-else
-  if test "X`(/usr/ucb/echo -n -n $as_echo) 2>/dev/null`" = "X-n $as_echo"; then
-    as_echo_body='eval /usr/ucb/echo -n "$1$as_nl"'
-    as_echo_n='/usr/ucb/echo -n'
-  else
-    as_echo_body='eval expr "X$1" : "X\\(.*\\)"'
-    as_echo_n_body='eval
-      arg=$1;
-      case $arg in @%:@(
-      *"$as_nl"*)
-       expr "X$arg" : "X\\(.*\\)$as_nl";
-       arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;;
-      esac;
-      expr "X$arg" : "X\\(.*\\)" | tr -d "$as_nl"
-    '
-    export as_echo_n_body
-    as_echo_n='sh -c $as_echo_n_body as_echo'
-  fi
-  export as_echo_body
-  as_echo='sh -c $as_echo_body as_echo'
-fi
-
-# The user is always right.
-if test "${PATH_SEPARATOR+set}" != set; then
-  PATH_SEPARATOR=:
-  (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && {
-    (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 ||
-      PATH_SEPARATOR=';'
-  }
-fi
-
-
-# IFS
-# We need space, tab and new line, in precisely that order.  Quoting is
-# there to prevent editors from complaining about space-tab.
-# (If _AS_PATH_WALK were called with IFS unset, it would disable word
-# splitting by setting IFS to empty value.)
-IFS=" ""       $as_nl"
-
-# Find who we are.  Look in the path if we contain no directory separator.
-as_myself=
-case $0 in @%:@((
-  *[\\/]* ) as_myself=$0 ;;
-  *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break
-  done
-IFS=$as_save_IFS
-
-     ;;
-esac
-# We did not find ourselves, most probably we were run as `sh COMMAND'
-# in which case we are not to be found in the path.
-if test "x$as_myself" = x; then
-  as_myself=$0
-fi
-if test ! -f "$as_myself"; then
-  $as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2
-  exit 1
-fi
-
-# Unset variables that we do not need and which cause bugs (e.g. in
-# pre-3.0 UWIN ksh).  But do not cause bugs in bash 2.01; the "|| exit 1"
-# suppresses any "Segmentation fault" message there.  '((' could
-# trigger a bug in pdksh 5.2.14.
-for as_var in BASH_ENV ENV MAIL MAILPATH
-do eval test x\${$as_var+set} = xset \
-  && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || :
-done
-PS1='$ '
-PS2='> '
-PS4='+ '
-
-# NLS nuisances.
-LC_ALL=C
-export LC_ALL
-LANGUAGE=C
-export LANGUAGE
-
-# CDPATH.
-(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
-
-if test "x$CONFIG_SHELL" = x; then
-  as_bourne_compatible="if test -n \"\${ZSH_VERSION+set}\" && (emulate sh) >/dev/null 2>&1; then :
-  emulate sh
-  NULLCMD=:
-  # Pre-4.2 versions of Zsh do word splitting on \${1+\"\$@\"}, which
-  # is contrary to our usage.  Disable this feature.
-  alias -g '\${1+\"\$@\"}'='\"\$@\"'
-  setopt NO_GLOB_SUBST
-else
-  case \`(set -o) 2>/dev/null\` in @%:@(
-  *posix*) :
-    set -o posix ;; @%:@(
-  *) :
-     ;;
-esac
-fi
-"
-  as_required="as_fn_return () { (exit \$1); }
-as_fn_success () { as_fn_return 0; }
-as_fn_failure () { as_fn_return 1; }
-as_fn_ret_success () { return 0; }
-as_fn_ret_failure () { return 1; }
-
-exitcode=0
-as_fn_success || { exitcode=1; echo as_fn_success failed.; }
-as_fn_failure && { exitcode=1; echo as_fn_failure succeeded.; }
-as_fn_ret_success || { exitcode=1; echo as_fn_ret_success failed.; }
-as_fn_ret_failure && { exitcode=1; echo as_fn_ret_failure succeeded.; }
-if ( set x; as_fn_ret_success y && test x = \"\$1\" ); then :
-  
-else
-  exitcode=1; echo positional parameters were not saved.
-fi
-test x\$exitcode = x0 || exit 1"
-  as_suggested="  as_lineno_1=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_1a=\$LINENO
-  as_lineno_2=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_2a=\$LINENO
-  eval 'test \"x\$as_lineno_1'\$as_run'\" != \"x\$as_lineno_2'\$as_run'\" &&
-  test \"x\`expr \$as_lineno_1'\$as_run' + 1\`\" = \"x\$as_lineno_2'\$as_run'\"' || exit 1
-test \$(( 1 + 1 )) = 2 || exit 1"
-  if (eval "$as_required") 2>/dev/null; then :
-  as_have_required=yes
-else
-  as_have_required=no
-fi
-  if test x$as_have_required = xyes && (eval "$as_suggested") 2>/dev/null; then :
-  
-else
-  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-as_found=false
-for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-  as_found=:
-  case $as_dir in @%:@(
-        /*)
-          for as_base in sh bash ksh sh5; do
-            # Try only shells that exist, to save several forks.
-            as_shell=$as_dir/$as_base
-            if { test -f "$as_shell" || test -f "$as_shell.exe"; } &&
-                   { $as_echo "$as_bourne_compatible""$as_required" | as_run=a "$as_shell"; } 2>/dev/null; then :
-  CONFIG_SHELL=$as_shell as_have_required=yes
-                  if { $as_echo "$as_bourne_compatible""$as_suggested" | as_run=a "$as_shell"; } 2>/dev/null; then :
-  break 2
-fi
-fi
-          done;;
-       esac
-  as_found=false
-done
-$as_found || { if { test -f "$SHELL" || test -f "$SHELL.exe"; } &&
-             { $as_echo "$as_bourne_compatible""$as_required" | as_run=a "$SHELL"; } 2>/dev/null; then :
-  CONFIG_SHELL=$SHELL as_have_required=yes
-fi; }
-IFS=$as_save_IFS
-
-
-      if test "x$CONFIG_SHELL" != x; then :
-  # We cannot yet assume a decent shell, so we have to provide a
-       # neutralization value for shells without unset; and this also
-       # works around shells that cannot unset nonexistent variables.
-       # Preserve -v and -x to the replacement shell.
-       BASH_ENV=/dev/null
-       ENV=/dev/null
-       (unset BASH_ENV) >/dev/null 2>&1 && unset BASH_ENV ENV
-       export CONFIG_SHELL
-       case $- in @%:@ ((((
-         *v*x* | *x*v* ) as_opts=-vx ;;
-         *v* ) as_opts=-v ;;
-         *x* ) as_opts=-x ;;
-         * ) as_opts= ;;
-       esac
-       exec "$CONFIG_SHELL" $as_opts "$as_myself" ${1+"$@"}
-fi
-
-    if test x$as_have_required = xno; then :
-  $as_echo "$0: This script requires a shell more modern than all"
-  $as_echo "$0: the shells that I found on your system."
-  if test x${ZSH_VERSION+set} = xset ; then
-    $as_echo "$0: In particular, zsh $ZSH_VERSION has bugs and should"
-    $as_echo "$0: be upgraded to zsh 4.3.4 or later."
-  else
-    $as_echo "$0: Please tell bug-autoconf@gnu.org and bug-bash@gnu.org
-$0: about your system, including any error possibly output
-$0: before this message. Then install a modern shell, or
-$0: manually run the script under such a shell if you do
-$0: have one."
-  fi
-  exit 1
-fi
-fi
-fi
-SHELL=${CONFIG_SHELL-/bin/sh}
-export SHELL
-# Unset more variables known to interfere with behavior of common tools.
-CLICOLOR_FORCE= GREP_OPTIONS=
-unset CLICOLOR_FORCE GREP_OPTIONS
-
-## --------------------- ##
-## M4sh Shell Functions. ##
-## --------------------- ##
-@%:@ as_fn_unset VAR
-@%:@ ---------------
-@%:@ Portably unset VAR.
-as_fn_unset ()
-{
-  { eval $1=; unset $1;}
-}
-as_unset=as_fn_unset
-
-@%:@ as_fn_set_status STATUS
-@%:@ -----------------------
-@%:@ Set @S|@? to STATUS, without forking.
-as_fn_set_status ()
-{
-  return $1
-} @%:@ as_fn_set_status
-
-@%:@ as_fn_exit STATUS
-@%:@ -----------------
-@%:@ Exit the shell with STATUS, even in a "trap 0" or "set -e" context.
-as_fn_exit ()
-{
-  set +e
-  as_fn_set_status $1
-  exit $1
-} @%:@ as_fn_exit
-
-@%:@ as_fn_mkdir_p
-@%:@ -------------
-@%:@ Create "@S|@as_dir" as a directory, including parents if necessary.
-as_fn_mkdir_p ()
-{
-
-  case $as_dir in #(
-  -*) as_dir=./$as_dir;;
-  esac
-  test -d "$as_dir" || eval $as_mkdir_p || {
-    as_dirs=
-    while :; do
-      case $as_dir in #(
-      *\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'(
-      *) as_qdir=$as_dir;;
-      esac
-      as_dirs="'$as_qdir' $as_dirs"
-      as_dir=`$as_dirname -- "$as_dir" ||
-$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
-        X"$as_dir" : 'X\(//\)[^/]' \| \
-        X"$as_dir" : 'X\(//\)$' \| \
-        X"$as_dir" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X"$as_dir" |
-    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
-           s//\1/
-           q
-         }
-         /^X\(\/\/\)[^/].*/{
-           s//\1/
-           q
-         }
-         /^X\(\/\/\)$/{
-           s//\1/
-           q
-         }
-         /^X\(\/\).*/{
-           s//\1/
-           q
-         }
-         s/.*/./; q'`
-      test -d "$as_dir" && break
-    done
-    test -z "$as_dirs" || eval "mkdir $as_dirs"
-  } || test -d "$as_dir" || as_fn_error $? "cannot create directory $as_dir"
-
-
-} @%:@ as_fn_mkdir_p
-@%:@ as_fn_append VAR VALUE
-@%:@ ----------------------
-@%:@ Append the text in VALUE to the end of the definition contained in VAR. Take
-@%:@ advantage of any shell optimizations that allow amortized linear growth over
-@%:@ repeated appends, instead of the typical quadratic growth present in naive
-@%:@ implementations.
-if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null; then :
-  eval 'as_fn_append ()
-  {
-    eval $1+=\$2
-  }'
-else
-  as_fn_append ()
-  {
-    eval $1=\$$1\$2
-  }
-fi # as_fn_append
-
-@%:@ as_fn_arith ARG...
-@%:@ ------------------
-@%:@ Perform arithmetic evaluation on the ARGs, and store the result in the
-@%:@ global @S|@as_val. Take advantage of shells that can avoid forks. The arguments
-@%:@ must be portable across @S|@(()) and expr.
-if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null; then :
-  eval 'as_fn_arith ()
-  {
-    as_val=$(( $* ))
-  }'
-else
-  as_fn_arith ()
-  {
-    as_val=`expr "$@" || test $? -eq 1`
-  }
-fi # as_fn_arith
-
-
-@%:@ as_fn_error STATUS ERROR [LINENO LOG_FD]
-@%:@ ----------------------------------------
-@%:@ Output "`basename @S|@0`: error: ERROR" to stderr. If LINENO and LOG_FD are
-@%:@ provided, also output the error to LOG_FD, referencing LINENO. Then exit the
-@%:@ script with STATUS, using 1 if that was 0.
-as_fn_error ()
-{
-  as_status=$1; test $as_status -eq 0 && as_status=1
-  if test "$4"; then
-    as_lineno=${as_lineno-"$3"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
-    $as_echo "$as_me:${as_lineno-$LINENO}: error: $2" >&$4
-  fi
-  $as_echo "$as_me: error: $2" >&2
-  as_fn_exit $as_status
-} @%:@ as_fn_error
-
-if expr a : '\(a\)' >/dev/null 2>&1 &&
-   test "X`expr 00001 : '.*\(...\)'`" = X001; then
-  as_expr=expr
-else
-  as_expr=false
-fi
-
-if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then
-  as_basename=basename
-else
-  as_basename=false
-fi
-
-if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then
-  as_dirname=dirname
-else
-  as_dirname=false
-fi
-
-as_me=`$as_basename -- "$0" ||
-$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \
-        X"$0" : 'X\(//\)$' \| \
-        X"$0" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X/"$0" |
-    sed '/^.*\/\([^/][^/]*\)\/*$/{
-           s//\1/
-           q
-         }
-         /^X\/\(\/\/\)$/{
-           s//\1/
-           q
-         }
-         /^X\/\(\/\).*/{
-           s//\1/
-           q
-         }
-         s/.*/./; q'`
-
-# Avoid depending upon Character Ranges.
-as_cr_letters='abcdefghijklmnopqrstuvwxyz'
-as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ'
-as_cr_Letters=$as_cr_letters$as_cr_LETTERS
-as_cr_digits='0123456789'
-as_cr_alnum=$as_cr_Letters$as_cr_digits
-
-
-  as_lineno_1=$LINENO as_lineno_1a=$LINENO
-  as_lineno_2=$LINENO as_lineno_2a=$LINENO
-  eval 'test "x$as_lineno_1'$as_run'" != "x$as_lineno_2'$as_run'" &&
-  test "x`expr $as_lineno_1'$as_run' + 1`" = "x$as_lineno_2'$as_run'"' || {
-  # Blame Lee E. McMahon (1931-1989) for sed's syntax.  :-)
-  sed -n '
-    p
-    /[$]LINENO/=
-  ' <$as_myself |
-    sed '
-      s/[$]LINENO.*/&-/
-      t lineno
-      b
-      :lineno
-      N
-      :loop
-      s/[$]LINENO\([^'$as_cr_alnum'_].*\n\)\(.*\)/\2\1\2/
-      t loop
-      s/-\n.*//
-    ' >$as_me.lineno &&
-  chmod +x "$as_me.lineno" ||
-    { $as_echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2; as_fn_exit 1; }
-
-  # Don't try to exec as it changes $[0], causing all sort of problems
-  # (the dirname of $[0] is not the place where we might find the
-  # original and so on.  Autoconf is especially sensitive to this).
-  . "./$as_me.lineno"
-  # Exit status is that of the last command.
-  exit
-}
-
-ECHO_C= ECHO_N= ECHO_T=
-case `echo -n x` in @%:@(((((
--n*)
-  case `echo 'xy\c'` in
-  *c*) ECHO_T='        ';;     # ECHO_T is single tab character.
-  xy)  ECHO_C='\c';;
-  *)   echo `echo ksh88 bug on AIX 6.1` > /dev/null
-       ECHO_T='        ';;
-  esac;;
-*)
-  ECHO_N='-n';;
-esac
-
-rm -f conf$$ conf$$.exe conf$$.file
-if test -d conf$$.dir; then
-  rm -f conf$$.dir/conf$$.file
-else
-  rm -f conf$$.dir
-  mkdir conf$$.dir 2>/dev/null
-fi
-if (echo >conf$$.file) 2>/dev/null; then
-  if ln -s conf$$.file conf$$ 2>/dev/null; then
-    as_ln_s='ln -s'
-    # ... but there are two gotchas:
-    # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail.
-    # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable.
-    # In both cases, we have to default to `cp -p'.
-    ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe ||
-      as_ln_s='cp -p'
-  elif ln conf$$.file conf$$ 2>/dev/null; then
-    as_ln_s=ln
-  else
-    as_ln_s='cp -p'
-  fi
-else
-  as_ln_s='cp -p'
-fi
-rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file
-rmdir conf$$.dir 2>/dev/null
-
-if mkdir -p . 2>/dev/null; then
-  as_mkdir_p='mkdir -p "$as_dir"'
-else
-  test -d ./-p && rmdir ./-p
-  as_mkdir_p=false
-fi
-
-if test -x / >/dev/null 2>&1; then
-  as_test_x='test -x'
-else
-  if ls -dL / >/dev/null 2>&1; then
-    as_ls_L_option=L
-  else
-    as_ls_L_option=
-  fi
-  as_test_x='
-    eval sh -c '\''
-      if test -d "$1"; then
-       test -d "$1/.";
-      else
-       case $1 in @%:@(
-       -*)set "./$1";;
-       esac;
-       case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in @%:@((
-       ???[sx]*):;;*)false;;esac;fi
-    '\'' sh
-  '
-fi
-as_executable_p=$as_test_x
-
-# Sed expression to map a string onto a valid CPP name.
-as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'"
-
-# Sed expression to map a string onto a valid variable name.
-as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'"
-
-
-test -n "$DJDIR" || exec 7<&0 </dev/null
-exec 6>&1
-
-# Name of the host.
-# hostname on some systems (SVR3.2, old GNU/Linux) returns a bogus exit status,
-# so uname gets run too.
-ac_hostname=`(hostname || uname -n) 2>/dev/null | sed 1q`
-
-#
-# Initializations.
-#
-ac_default_prefix=/usr/local
-ac_clean_files=
-ac_config_libobj_dir=.
-LIB@&t@OBJS=
-cross_compiling=no
-subdirs=
-MFLAGS=
-MAKEFLAGS=
-
-# Identity of this package.
-PACKAGE_NAME='bash'
-PACKAGE_TARNAME='bash'
-PACKAGE_VERSION='4.2-maint'
-PACKAGE_STRING='bash 4.2-maint'
-PACKAGE_BUGREPORT='bug-bash@gnu.org'
-PACKAGE_URL=''
-
-ac_unique_file="shell.h"
-# Factoring default headers for most tests.
-ac_includes_default="\
-#include <stdio.h>
-#ifdef HAVE_SYS_TYPES_H
-# include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_STAT_H
-# include <sys/stat.h>
-#endif
-#ifdef STDC_HEADERS
-# include <stdlib.h>
-# include <stddef.h>
-#else
-# ifdef HAVE_STDLIB_H
-#  include <stdlib.h>
-# endif
-#endif
-#ifdef HAVE_STRING_H
-# if !defined STDC_HEADERS && defined HAVE_MEMORY_H
-#  include <memory.h>
-# endif
-# include <string.h>
-#endif
-#ifdef HAVE_STRINGS_H
-# include <strings.h>
-#endif
-#ifdef HAVE_INTTYPES_H
-# include <inttypes.h>
-#endif
-#ifdef HAVE_STDINT_H
-# include <stdint.h>
-#endif
-#ifdef HAVE_UNISTD_H
-# include <unistd.h>
-#endif"
-
-ac_header_list=
-ac_func_list=
-ac_subst_vars='LTLIBOBJS
-LOCAL_DEFS
-LOCAL_LDFLAGS
-LOCAL_CFLAGS
-LOCAL_LIBS
-MALLOC_DEBUG
-DEBUG
-RELSTATUS
-BASHVERS
-ARFLAGS
-BUILD_DIR
-incdir
-PROFILE_FLAGS
-SHOBJ_STATUS
-SHOBJ_LIBS
-SHOBJ_XLDFLAGS
-SHOBJ_LDFLAGS
-SHOBJ_LD
-SHOBJ_CFLAGS
-SHOBJ_CC
-JOBS_O
-TERMCAP_DEP
-TERMCAP_LIB
-SIGLIST_O
-PTHREAD_H_DEFINES_STRUCT_TIMESPEC
-SYS_TIME_H_DEFINES_STRUCT_TIMESPEC
-TIME_H_DEFINES_STRUCT_TIMESPEC
-LIBINTL_H
-INTL_INC
-INTL_DEP
-LIB@&t@OBJS
-POSUB
-LTLIBINTL
-LIBINTL
-INTLLIBS
-INTL_LIBTOOL_SUFFIX_PREFIX
-INTLOBJS
-GENCAT
-INSTOBJEXT
-DATADIRNAME
-CATOBJEXT
-USE_INCLUDED_LIBINTL
-BUILD_INCLUDED_LIBINTL
-INTLBISON
-LTLIBICONV
-LIBICONV
-GLIBC21
-ALLOCA
-MSGMERGE
-XGETTEXT
-GMSGFMT
-MSGFMT
-USE_NLS
-MKINSTALLDIRS
-SIZE
-MAKE_SHELL
-SET_MAKE
-YFLAGS
-YACC
-RANLIB
-AR
-INSTALL_DATA
-INSTALL_SCRIPT
-INSTALL_PROGRAM
-TILDE_LIB
-HIST_LIBDIR
-HISTORY_DEP
-HISTORY_LIB
-RL_INCLUDE
-RL_INCLUDEDIR
-RL_LIBDIR
-READLINE_DEP
-READLINE_LIB
-RL_MINOR
-RL_MAJOR
-RL_VERSION
-LIBS_FOR_BUILD
-STATIC_LD
-SIGNAMES_O
-SIGNAMES_H
-CROSS_COMPILE
-EGREP
-GREP
-CPP
-OBJEXT
-EXEEXT
-ac_ct_CC
-CPPFLAGS
-LDFLAGS
-CFLAGS
-CC
-HELPSTRINGS
-HELPFILES_TARGET
-HELPINSTALL
-HELPDIRDEFINE
-HELPDIR
-MALLOC_DEP
-MALLOC_LDFLAGS
-MALLOC_LIBRARY
-MALLOC_LIB
-MALLOC_SRC
-MALLOC_TARGET
-PURIFY
-TESTSCRIPT
-CPPFLAGS_FOR_BUILD
-LDFLAGS_FOR_BUILD
-CFLAGS_FOR_BUILD
-CC_FOR_BUILD
-DEBUGGER_START_FILE
-host_os
-host_vendor
-host_cpu
-host
-build_os
-build_vendor
-build_cpu
-build
-target_alias
-host_alias
-build_alias
-LIBS
-ECHO_T
-ECHO_N
-ECHO_C
-DEFS
-mandir
-localedir
-libdir
-psdir
-pdfdir
-dvidir
-htmldir
-infodir
-docdir
-oldincludedir
-includedir
-localstatedir
-sharedstatedir
-sysconfdir
-datadir
-datarootdir
-libexecdir
-sbindir
-bindir
-program_transform_name
-prefix
-exec_prefix
-PACKAGE_URL
-PACKAGE_BUGREPORT
-PACKAGE_STRING
-PACKAGE_VERSION
-PACKAGE_TARNAME
-PACKAGE_NAME
-PATH_SEPARATOR
-SHELL'
-ac_subst_files=''
-ac_user_opts='
-enable_option_checking
-with_afs
-with_bash_malloc
-with_curses
-with_gnu_malloc
-with_installed_readline
-with_purecov
-with_purify
-enable_minimal_config
-enable_alias
-enable_arith_for_command
-enable_array_variables
-enable_bang_history
-enable_brace_expansion
-enable_casemod_attributes
-enable_casemod_expansions
-enable_command_timing
-enable_cond_command
-enable_cond_regexp
-enable_coprocesses
-enable_debugger
-enable_directory_stack
-enable_disabled_builtins
-enable_dparen_arithmetic
-enable_extended_glob
-enable_extended_glob_default
-enable_help_builtin
-enable_history
-enable_job_control
-enable_multibyte
-enable_net_redirections
-enable_process_substitution
-enable_progcomp
-enable_prompt_string_decoding
-enable_readline
-enable_restricted
-enable_select
-enable_separate_helpfiles
-enable_single_help_strings
-enable_strict_posix_default
-enable_usg_echo_default
-enable_xpg_echo_default
-enable_mem_scramble
-enable_profiling
-enable_static_link
-enable_largefile
-enable_nls
-with_gnu_ld
-enable_rpath
-with_libiconv_prefix
-with_included_gettext
-with_libintl_prefix
-'
-      ac_precious_vars='build_alias
-host_alias
-target_alias
-DEBUGGER_START_FILE
-CC_FOR_BUILD
-CFLAGS_FOR_BUILD
-LDFLAGS_FOR_BUILD
-CPPFLAGS_FOR_BUILD
-CC
-CFLAGS
-LDFLAGS
-LIBS
-CPPFLAGS
-CPP
-YACC
-YFLAGS'
-
-
-# Initialize some variables set by options.
-ac_init_help=
-ac_init_version=false
-ac_unrecognized_opts=
-ac_unrecognized_sep=
-# The variables have the same names as the options, with
-# dashes changed to underlines.
-cache_file=/dev/null
-exec_prefix=NONE
-no_create=
-no_recursion=
-prefix=NONE
-program_prefix=NONE
-program_suffix=NONE
-program_transform_name=s,x,x,
-silent=
-site=
-srcdir=
-verbose=
-x_includes=NONE
-x_libraries=NONE
-
-# Installation directory options.
-# These are left unexpanded so users can "make install exec_prefix=/foo"
-# and all the variables that are supposed to be based on exec_prefix
-# by default will actually change.
-# Use braces instead of parens because sh, perl, etc. also accept them.
-# (The list follows the same order as the GNU Coding Standards.)
-bindir='${exec_prefix}/bin'
-sbindir='${exec_prefix}/sbin'
-libexecdir='${exec_prefix}/libexec'
-datarootdir='${prefix}/share'
-datadir='${datarootdir}'
-sysconfdir='${prefix}/etc'
-sharedstatedir='${prefix}/com'
-localstatedir='${prefix}/var'
-includedir='${prefix}/include'
-oldincludedir='/usr/include'
-docdir='${datarootdir}/doc/${PACKAGE_TARNAME}'
-infodir='${datarootdir}/info'
-htmldir='${docdir}'
-dvidir='${docdir}'
-pdfdir='${docdir}'
-psdir='${docdir}'
-libdir='${exec_prefix}/lib'
-localedir='${datarootdir}/locale'
-mandir='${datarootdir}/man'
-
-ac_prev=
-ac_dashdash=
-for ac_option
-do
-  # If the previous option needs an argument, assign it.
-  if test -n "$ac_prev"; then
-    eval $ac_prev=\$ac_option
-    ac_prev=
-    continue
-  fi
-
-  case $ac_option in
-  *=?*) ac_optarg=`expr "X$ac_option" : '[^=]*=\(.*\)'` ;;
-  *=)   ac_optarg= ;;
-  *)    ac_optarg=yes ;;
-  esac
-
-  # Accept the important Cygnus configure options, so we can diagnose typos.
-
-  case $ac_dashdash$ac_option in
-  --)
-    ac_dashdash=yes ;;
-
-  -bindir | --bindir | --bindi | --bind | --bin | --bi)
-    ac_prev=bindir ;;
-  -bindir=* | --bindir=* | --bindi=* | --bind=* | --bin=* | --bi=*)
-    bindir=$ac_optarg ;;
-
-  -build | --build | --buil | --bui | --bu)
-    ac_prev=build_alias ;;
-  -build=* | --build=* | --buil=* | --bui=* | --bu=*)
-    build_alias=$ac_optarg ;;
-
-  -cache-file | --cache-file | --cache-fil | --cache-fi \
-  | --cache-f | --cache- | --cache | --cach | --cac | --ca | --c)
-    ac_prev=cache_file ;;
-  -cache-file=* | --cache-file=* | --cache-fil=* | --cache-fi=* \
-  | --cache-f=* | --cache-=* | --cache=* | --cach=* | --cac=* | --ca=* | --c=*)
-    cache_file=$ac_optarg ;;
-
-  --config-cache | -C)
-    cache_file=config.cache ;;
-
-  -datadir | --datadir | --datadi | --datad)
-    ac_prev=datadir ;;
-  -datadir=* | --datadir=* | --datadi=* | --datad=*)
-    datadir=$ac_optarg ;;
-
-  -datarootdir | --datarootdir | --datarootdi | --datarootd | --dataroot \
-  | --dataroo | --dataro | --datar)
-    ac_prev=datarootdir ;;
-  -datarootdir=* | --datarootdir=* | --datarootdi=* | --datarootd=* \
-  | --dataroot=* | --dataroo=* | --dataro=* | --datar=*)
-    datarootdir=$ac_optarg ;;
-
-  -disable-* | --disable-*)
-    ac_useropt=`expr "x$ac_option" : 'x-*disable-\(.*\)'`
-    # Reject names that are not valid shell variable names.
-    expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&
-      as_fn_error $? "invalid feature name: $ac_useropt"
-    ac_useropt_orig=$ac_useropt
-    ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'`
-    case $ac_user_opts in
-      *"
-"enable_$ac_useropt"
-"*) ;;
-      *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--disable-$ac_useropt_orig"
-        ac_unrecognized_sep=', ';;
-    esac
-    eval enable_$ac_useropt=no ;;
-
-  -docdir | --docdir | --docdi | --doc | --do)
-    ac_prev=docdir ;;
-  -docdir=* | --docdir=* | --docdi=* | --doc=* | --do=*)
-    docdir=$ac_optarg ;;
-
-  -dvidir | --dvidir | --dvidi | --dvid | --dvi | --dv)
-    ac_prev=dvidir ;;
-  -dvidir=* | --dvidir=* | --dvidi=* | --dvid=* | --dvi=* | --dv=*)
-    dvidir=$ac_optarg ;;
-
-  -enable-* | --enable-*)
-    ac_useropt=`expr "x$ac_option" : 'x-*enable-\([^=]*\)'`
-    # Reject names that are not valid shell variable names.
-    expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&
-      as_fn_error $? "invalid feature name: $ac_useropt"
-    ac_useropt_orig=$ac_useropt
-    ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'`
-    case $ac_user_opts in
-      *"
-"enable_$ac_useropt"
-"*) ;;
-      *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--enable-$ac_useropt_orig"
-        ac_unrecognized_sep=', ';;
-    esac
-    eval enable_$ac_useropt=\$ac_optarg ;;
-
-  -exec-prefix | --exec_prefix | --exec-prefix | --exec-prefi \
-  | --exec-pref | --exec-pre | --exec-pr | --exec-p | --exec- \
-  | --exec | --exe | --ex)
-    ac_prev=exec_prefix ;;
-  -exec-prefix=* | --exec_prefix=* | --exec-prefix=* | --exec-prefi=* \
-  | --exec-pref=* | --exec-pre=* | --exec-pr=* | --exec-p=* | --exec-=* \
-  | --exec=* | --exe=* | --ex=*)
-    exec_prefix=$ac_optarg ;;
-
-  -gas | --gas | --ga | --g)
-    # Obsolete; use --with-gas.
-    with_gas=yes ;;
-
-  -help | --help | --hel | --he | -h)
-    ac_init_help=long ;;
-  -help=r* | --help=r* | --hel=r* | --he=r* | -hr*)
-    ac_init_help=recursive ;;
-  -help=s* | --help=s* | --hel=s* | --he=s* | -hs*)
-    ac_init_help=short ;;
-
-  -host | --host | --hos | --ho)
-    ac_prev=host_alias ;;
-  -host=* | --host=* | --hos=* | --ho=*)
-    host_alias=$ac_optarg ;;
-
-  -htmldir | --htmldir | --htmldi | --htmld | --html | --htm | --ht)
-    ac_prev=htmldir ;;
-  -htmldir=* | --htmldir=* | --htmldi=* | --htmld=* | --html=* | --htm=* \
-  | --ht=*)
-    htmldir=$ac_optarg ;;
-
-  -includedir | --includedir | --includedi | --included | --include \
-  | --includ | --inclu | --incl | --inc)
-    ac_prev=includedir ;;
-  -includedir=* | --includedir=* | --includedi=* | --included=* | --include=* \
-  | --includ=* | --inclu=* | --incl=* | --inc=*)
-    includedir=$ac_optarg ;;
-
-  -infodir | --infodir | --infodi | --infod | --info | --inf)
-    ac_prev=infodir ;;
-  -infodir=* | --infodir=* | --infodi=* | --infod=* | --info=* | --inf=*)
-    infodir=$ac_optarg ;;
-
-  -libdir | --libdir | --libdi | --libd)
-    ac_prev=libdir ;;
-  -libdir=* | --libdir=* | --libdi=* | --libd=*)
-    libdir=$ac_optarg ;;
-
-  -libexecdir | --libexecdir | --libexecdi | --libexecd | --libexec \
-  | --libexe | --libex | --libe)
-    ac_prev=libexecdir ;;
-  -libexecdir=* | --libexecdir=* | --libexecdi=* | --libexecd=* | --libexec=* \
-  | --libexe=* | --libex=* | --libe=*)
-    libexecdir=$ac_optarg ;;
-
-  -localedir | --localedir | --localedi | --localed | --locale)
-    ac_prev=localedir ;;
-  -localedir=* | --localedir=* | --localedi=* | --localed=* | --locale=*)
-    localedir=$ac_optarg ;;
-
-  -localstatedir | --localstatedir | --localstatedi | --localstated \
-  | --localstate | --localstat | --localsta | --localst | --locals)
-    ac_prev=localstatedir ;;
-  -localstatedir=* | --localstatedir=* | --localstatedi=* | --localstated=* \
-  | --localstate=* | --localstat=* | --localsta=* | --localst=* | --locals=*)
-    localstatedir=$ac_optarg ;;
-
-  -mandir | --mandir | --mandi | --mand | --man | --ma | --m)
-    ac_prev=mandir ;;
-  -mandir=* | --mandir=* | --mandi=* | --mand=* | --man=* | --ma=* | --m=*)
-    mandir=$ac_optarg ;;
-
-  -nfp | --nfp | --nf)
-    # Obsolete; use --without-fp.
-    with_fp=no ;;
-
-  -no-create | --no-create | --no-creat | --no-crea | --no-cre \
-  | --no-cr | --no-c | -n)
-    no_create=yes ;;
-
-  -no-recursion | --no-recursion | --no-recursio | --no-recursi \
-  | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r)
-    no_recursion=yes ;;
-
-  -oldincludedir | --oldincludedir | --oldincludedi | --oldincluded \
-  | --oldinclude | --oldinclud | --oldinclu | --oldincl | --oldinc \
-  | --oldin | --oldi | --old | --ol | --o)
-    ac_prev=oldincludedir ;;
-  -oldincludedir=* | --oldincludedir=* | --oldincludedi=* | --oldincluded=* \
-  | --oldinclude=* | --oldinclud=* | --oldinclu=* | --oldincl=* | --oldinc=* \
-  | --oldin=* | --oldi=* | --old=* | --ol=* | --o=*)
-    oldincludedir=$ac_optarg ;;
-
-  -prefix | --prefix | --prefi | --pref | --pre | --pr | --p)
-    ac_prev=prefix ;;
-  -prefix=* | --prefix=* | --prefi=* | --pref=* | --pre=* | --pr=* | --p=*)
-    prefix=$ac_optarg ;;
-
-  -program-prefix | --program-prefix | --program-prefi | --program-pref \
-  | --program-pre | --program-pr | --program-p)
-    ac_prev=program_prefix ;;
-  -program-prefix=* | --program-prefix=* | --program-prefi=* \
-  | --program-pref=* | --program-pre=* | --program-pr=* | --program-p=*)
-    program_prefix=$ac_optarg ;;
-
-  -program-suffix | --program-suffix | --program-suffi | --program-suff \
-  | --program-suf | --program-su | --program-s)
-    ac_prev=program_suffix ;;
-  -program-suffix=* | --program-suffix=* | --program-suffi=* \
-  | --program-suff=* | --program-suf=* | --program-su=* | --program-s=*)
-    program_suffix=$ac_optarg ;;
-
-  -program-transform-name | --program-transform-name \
-  | --program-transform-nam | --program-transform-na \
-  | --program-transform-n | --program-transform- \
-  | --program-transform | --program-transfor \
-  | --program-transfo | --program-transf \
-  | --program-trans | --program-tran \
-  | --progr-tra | --program-tr | --program-t)
-    ac_prev=program_transform_name ;;
-  -program-transform-name=* | --program-transform-name=* \
-  | --program-transform-nam=* | --program-transform-na=* \
-  | --program-transform-n=* | --program-transform-=* \
-  | --program-transform=* | --program-transfor=* \
-  | --program-transfo=* | --program-transf=* \
-  | --program-trans=* | --program-tran=* \
-  | --progr-tra=* | --program-tr=* | --program-t=*)
-    program_transform_name=$ac_optarg ;;
-
-  -pdfdir | --pdfdir | --pdfdi | --pdfd | --pdf | --pd)
-    ac_prev=pdfdir ;;
-  -pdfdir=* | --pdfdir=* | --pdfdi=* | --pdfd=* | --pdf=* | --pd=*)
-    pdfdir=$ac_optarg ;;
-
-  -psdir | --psdir | --psdi | --psd | --ps)
-    ac_prev=psdir ;;
-  -psdir=* | --psdir=* | --psdi=* | --psd=* | --ps=*)
-    psdir=$ac_optarg ;;
-
-  -q | -quiet | --quiet | --quie | --qui | --qu | --q \
-  | -silent | --silent | --silen | --sile | --sil)
-    silent=yes ;;
-
-  -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb)
-    ac_prev=sbindir ;;
-  -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \
-  | --sbi=* | --sb=*)
-    sbindir=$ac_optarg ;;
-
-  -sharedstatedir | --sharedstatedir | --sharedstatedi \
-  | --sharedstated | --sharedstate | --sharedstat | --sharedsta \
-  | --sharedst | --shareds | --shared | --share | --shar \
-  | --sha | --sh)
-    ac_prev=sharedstatedir ;;
-  -sharedstatedir=* | --sharedstatedir=* | --sharedstatedi=* \
-  | --sharedstated=* | --sharedstate=* | --sharedstat=* | --sharedsta=* \
-  | --sharedst=* | --shareds=* | --shared=* | --share=* | --shar=* \
-  | --sha=* | --sh=*)
-    sharedstatedir=$ac_optarg ;;
-
-  -site | --site | --sit)
-    ac_prev=site ;;
-  -site=* | --site=* | --sit=*)
-    site=$ac_optarg ;;
-
-  -srcdir | --srcdir | --srcdi | --srcd | --src | --sr)
-    ac_prev=srcdir ;;
-  -srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=*)
-    srcdir=$ac_optarg ;;
-
-  -sysconfdir | --sysconfdir | --sysconfdi | --sysconfd | --sysconf \
-  | --syscon | --sysco | --sysc | --sys | --sy)
-    ac_prev=sysconfdir ;;
-  -sysconfdir=* | --sysconfdir=* | --sysconfdi=* | --sysconfd=* | --sysconf=* \
-  | --syscon=* | --sysco=* | --sysc=* | --sys=* | --sy=*)
-    sysconfdir=$ac_optarg ;;
-
-  -target | --target | --targe | --targ | --tar | --ta | --t)
-    ac_prev=target_alias ;;
-  -target=* | --target=* | --targe=* | --targ=* | --tar=* | --ta=* | --t=*)
-    target_alias=$ac_optarg ;;
-
-  -v | -verbose | --verbose | --verbos | --verbo | --verb)
-    verbose=yes ;;
-
-  -version | --version | --versio | --versi | --vers | -V)
-    ac_init_version=: ;;
-
-  -with-* | --with-*)
-    ac_useropt=`expr "x$ac_option" : 'x-*with-\([^=]*\)'`
-    # Reject names that are not valid shell variable names.
-    expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&
-      as_fn_error $? "invalid package name: $ac_useropt"
-    ac_useropt_orig=$ac_useropt
-    ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'`
-    case $ac_user_opts in
-      *"
-"with_$ac_useropt"
-"*) ;;
-      *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--with-$ac_useropt_orig"
-        ac_unrecognized_sep=', ';;
-    esac
-    eval with_$ac_useropt=\$ac_optarg ;;
-
-  -without-* | --without-*)
-    ac_useropt=`expr "x$ac_option" : 'x-*without-\(.*\)'`
-    # Reject names that are not valid shell variable names.
-    expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&
-      as_fn_error $? "invalid package name: $ac_useropt"
-    ac_useropt_orig=$ac_useropt
-    ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'`
-    case $ac_user_opts in
-      *"
-"with_$ac_useropt"
-"*) ;;
-      *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--without-$ac_useropt_orig"
-        ac_unrecognized_sep=', ';;
-    esac
-    eval with_$ac_useropt=no ;;
-
-  --x)
-    # Obsolete; use --with-x.
-    with_x=yes ;;
-
-  -x-includes | --x-includes | --x-include | --x-includ | --x-inclu \
-  | --x-incl | --x-inc | --x-in | --x-i)
-    ac_prev=x_includes ;;
-  -x-includes=* | --x-includes=* | --x-include=* | --x-includ=* | --x-inclu=* \
-  | --x-incl=* | --x-inc=* | --x-in=* | --x-i=*)
-    x_includes=$ac_optarg ;;
-
-  -x-libraries | --x-libraries | --x-librarie | --x-librari \
-  | --x-librar | --x-libra | --x-libr | --x-lib | --x-li | --x-l)
-    ac_prev=x_libraries ;;
-  -x-libraries=* | --x-libraries=* | --x-librarie=* | --x-librari=* \
-  | --x-librar=* | --x-libra=* | --x-libr=* | --x-lib=* | --x-li=* | --x-l=*)
-    x_libraries=$ac_optarg ;;
-
-  -*) as_fn_error $? "unrecognized option: \`$ac_option'
-Try \`$0 --help' for more information"
-    ;;
-
-  *=*)
-    ac_envvar=`expr "x$ac_option" : 'x\([^=]*\)='`
-    # Reject names that are not valid shell variable names.
-    case $ac_envvar in #(
-      '' | [0-9]* | *[!_$as_cr_alnum]* )
-      as_fn_error $? "invalid variable name: \`$ac_envvar'" ;;
-    esac
-    eval $ac_envvar=\$ac_optarg
-    export $ac_envvar ;;
-
-  *)
-    # FIXME: should be removed in autoconf 3.0.
-    $as_echo "$as_me: WARNING: you should use --build, --host, --target" >&2
-    expr "x$ac_option" : ".*[^-._$as_cr_alnum]" >/dev/null &&
-      $as_echo "$as_me: WARNING: invalid host type: $ac_option" >&2
-    : "${build_alias=$ac_option} ${host_alias=$ac_option} ${target_alias=$ac_option}"
-    ;;
-
-  esac
-done
-
-if test -n "$ac_prev"; then
-  ac_option=--`echo $ac_prev | sed 's/_/-/g'`
-  as_fn_error $? "missing argument to $ac_option"
-fi
-
-if test -n "$ac_unrecognized_opts"; then
-  case $enable_option_checking in
-    no) ;;
-    fatal) as_fn_error $? "unrecognized options: $ac_unrecognized_opts" ;;
-    *)     $as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2 ;;
-  esac
-fi
-
-# Check all directory arguments for consistency.
-for ac_var in  exec_prefix prefix bindir sbindir libexecdir datarootdir \
-               datadir sysconfdir sharedstatedir localstatedir includedir \
-               oldincludedir docdir infodir htmldir dvidir pdfdir psdir \
-               libdir localedir mandir
-do
-  eval ac_val=\$$ac_var
-  # Remove trailing slashes.
-  case $ac_val in
-    */ )
-      ac_val=`expr "X$ac_val" : 'X\(.*[^/]\)' \| "X$ac_val" : 'X\(.*\)'`
-      eval $ac_var=\$ac_val;;
-  esac
-  # Be sure to have absolute directory names.
-  case $ac_val in
-    [\\/$]* | ?:[\\/]* )  continue;;
-    NONE | '' ) case $ac_var in *prefix ) continue;; esac;;
-  esac
-  as_fn_error $? "expected an absolute directory name for --$ac_var: $ac_val"
-done
-
-# There might be people who depend on the old broken behavior: `$host'
-# used to hold the argument of --host etc.
-# FIXME: To remove some day.
-build=$build_alias
-host=$host_alias
-target=$target_alias
-
-# FIXME: To remove some day.
-if test "x$host_alias" != x; then
-  if test "x$build_alias" = x; then
-    cross_compiling=maybe
-    $as_echo "$as_me: WARNING: if you wanted to set the --build type, don't use --host.
-    If a cross compiler is detected then cross compile mode will be used" >&2
-  elif test "x$build_alias" != "x$host_alias"; then
-    cross_compiling=yes
-  fi
-fi
-
-ac_tool_prefix=
-test -n "$host_alias" && ac_tool_prefix=$host_alias-
-
-test "$silent" = yes && exec 6>/dev/null
-
-
-ac_pwd=`pwd` && test -n "$ac_pwd" &&
-ac_ls_di=`ls -di .` &&
-ac_pwd_ls_di=`cd "$ac_pwd" && ls -di .` ||
-  as_fn_error $? "working directory cannot be determined"
-test "X$ac_ls_di" = "X$ac_pwd_ls_di" ||
-  as_fn_error $? "pwd does not report name of working directory"
-
-
-# Find the source files, if location was not specified.
-if test -z "$srcdir"; then
-  ac_srcdir_defaulted=yes
-  # Try the directory containing this script, then the parent directory.
-  ac_confdir=`$as_dirname -- "$as_myself" ||
-$as_expr X"$as_myself" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
-        X"$as_myself" : 'X\(//\)[^/]' \| \
-        X"$as_myself" : 'X\(//\)$' \| \
-        X"$as_myself" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X"$as_myself" |
-    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
-           s//\1/
-           q
-         }
-         /^X\(\/\/\)[^/].*/{
-           s//\1/
-           q
-         }
-         /^X\(\/\/\)$/{
-           s//\1/
-           q
-         }
-         /^X\(\/\).*/{
-           s//\1/
-           q
-         }
-         s/.*/./; q'`
-  srcdir=$ac_confdir
-  if test ! -r "$srcdir/$ac_unique_file"; then
-    srcdir=..
-  fi
-else
-  ac_srcdir_defaulted=no
-fi
-if test ! -r "$srcdir/$ac_unique_file"; then
-  test "$ac_srcdir_defaulted" = yes && srcdir="$ac_confdir or .."
-  as_fn_error $? "cannot find sources ($ac_unique_file) in $srcdir"
-fi
-ac_msg="sources are in $srcdir, but \`cd $srcdir' does not work"
-ac_abs_confdir=`(
-       cd "$srcdir" && test -r "./$ac_unique_file" || as_fn_error $? "$ac_msg"
-       pwd)`
-# When building in place, set srcdir=.
-if test "$ac_abs_confdir" = "$ac_pwd"; then
-  srcdir=.
-fi
-# Remove unnecessary trailing slashes from srcdir.
-# Double slashes in file names in object file debugging info
-# mess up M-x gdb in Emacs.
-case $srcdir in
-*/) srcdir=`expr "X$srcdir" : 'X\(.*[^/]\)' \| "X$srcdir" : 'X\(.*\)'`;;
-esac
-for ac_var in $ac_precious_vars; do
-  eval ac_env_${ac_var}_set=\${${ac_var}+set}
-  eval ac_env_${ac_var}_value=\$${ac_var}
-  eval ac_cv_env_${ac_var}_set=\${${ac_var}+set}
-  eval ac_cv_env_${ac_var}_value=\$${ac_var}
-done
-
-#
-# Report the --help message.
-#
-if test "$ac_init_help" = "long"; then
-  # Omit some internal or obsolete options to make the list less imposing.
-  # This message is too long to be a string in the A/UX 3.1 sh.
-  cat <<_ACEOF
-\`configure' configures bash 4.2-maint to adapt to many kinds of systems.
-
-Usage: $0 [OPTION]... [VAR=VALUE]...
-
-To assign environment variables (e.g., CC, CFLAGS...), specify them as
-VAR=VALUE.  See below for descriptions of some of the useful variables.
-
-Defaults for the options are specified in brackets.
-
-Configuration:
-  -h, --help              display this help and exit
-      --help=short        display options specific to this package
-      --help=recursive    display the short help of all the included packages
-  -V, --version           display version information and exit
-  -q, --quiet, --silent   do not print \`checking ...' messages
-      --cache-file=FILE   cache test results in FILE [disabled]
-  -C, --config-cache      alias for \`--cache-file=config.cache'
-  -n, --no-create         do not create output files
-      --srcdir=DIR        find the sources in DIR [configure dir or \`..']
-
-Installation directories:
-  --prefix=PREFIX         install architecture-independent files in PREFIX
-                          @<:@@S|@ac_default_prefix@:>@
-  --exec-prefix=EPREFIX   install architecture-dependent files in EPREFIX
-                          @<:@PREFIX@:>@
-
-By default, \`make install' will install all the files in
-\`$ac_default_prefix/bin', \`$ac_default_prefix/lib' etc.  You can specify
-an installation prefix other than \`$ac_default_prefix' using \`--prefix',
-for instance \`--prefix=\$HOME'.
-
-For better control, use the options below.
-
-Fine tuning of the installation directories:
-  --bindir=DIR            user executables [EPREFIX/bin]
-  --sbindir=DIR           system admin executables [EPREFIX/sbin]
-  --libexecdir=DIR        program executables [EPREFIX/libexec]
-  --sysconfdir=DIR        read-only single-machine data [PREFIX/etc]
-  --sharedstatedir=DIR    modifiable architecture-independent data [PREFIX/com]
-  --localstatedir=DIR     modifiable single-machine data [PREFIX/var]
-  --libdir=DIR            object code libraries [EPREFIX/lib]
-  --includedir=DIR        C header files [PREFIX/include]
-  --oldincludedir=DIR     C header files for non-gcc [/usr/include]
-  --datarootdir=DIR       read-only arch.-independent data root [PREFIX/share]
-  --datadir=DIR           read-only architecture-independent data [DATAROOTDIR]
-  --infodir=DIR           info documentation [DATAROOTDIR/info]
-  --localedir=DIR         locale-dependent data [DATAROOTDIR/locale]
-  --mandir=DIR            man documentation [DATAROOTDIR/man]
-  --docdir=DIR            documentation root @<:@DATAROOTDIR/doc/bash@:>@
-  --htmldir=DIR           html documentation [DOCDIR]
-  --dvidir=DIR            dvi documentation [DOCDIR]
-  --pdfdir=DIR            pdf documentation [DOCDIR]
-  --psdir=DIR             ps documentation [DOCDIR]
-_ACEOF
-
-  cat <<\_ACEOF
-
-System types:
-  --build=BUILD     configure for building on BUILD [guessed]
-  --host=HOST       cross-compile to build programs to run on HOST [BUILD]
-_ACEOF
-fi
-
-if test -n "$ac_init_help"; then
-  case $ac_init_help in
-     short | recursive ) echo "Configuration of bash 4.2-maint:";;
-   esac
-  cat <<\_ACEOF
-
-Optional Features:
-  --disable-option-checking  ignore unrecognized --enable/--with options
-  --disable-FEATURE       do not include FEATURE (same as --enable-FEATURE=no)
-  --enable-FEATURE[=ARG]  include FEATURE [ARG=yes]
-  --enable-minimal-config a minimal sh-like configuration
-  --enable-alias          enable shell aliases
-  --enable-arith-for-command 
-                          enable arithmetic for command
-  --enable-array-variables 
-                          include shell array variables
-  --enable-bang-history   turn on csh-style history substitution
-  --enable-brace-expansion 
-                          include brace expansion
-  --enable-casemod-attributes 
-                          include case-modifying variable attributes
-  --enable-casemod-expansions 
-                          include case-modifying word expansions
-  --enable-command-timing enable the time reserved word and command timing
-  --enable-cond-command   enable the conditional command
-  --enable-cond-regexp    enable extended regular expression matching in
-                          conditional commands
-  --enable-coprocesses    enable coprocess support and the coproc reserved
-                          word
-  --enable-debugger       enable support for bash debugger
-  --enable-directory-stack 
-                          enable builtins pushd/popd/dirs
-  --enable-disabled-builtins 
-                          allow disabled builtins to still be invoked
-  --enable-dparen-arithmetic 
-                          include ((...)) command
-  --enable-extended-glob  include ksh-style extended pattern matching
-  --enable-extended-glob-default 
-                          force extended pattern matching to be enabled by
-                          default
-  --enable-help-builtin   include the help builtin
-  --enable-history        turn on command history
-  --enable-job-control    enable job control features
-  --enable-multibyte      enable multibyte characters if OS supports them
-  --enable-net-redirections 
-                          enable /dev/tcp/host/port redirection
-  --enable-process-substitution 
-                          enable process substitution
-  --enable-progcomp       enable programmable completion and the complete
-                          builtin
-  --enable-prompt-string-decoding 
-                          turn on escape character decoding in prompts
-  --enable-readline       turn on command line editing
-  --enable-restricted     enable a restricted shell
-  --enable-select         include select command
-  --enable-separate-helpfiles 
-                          use external files for help builtin documentation
-  --enable-single-help-strings 
-                          store help documentation as a single string to ease
-                          translation
-  --enable-strict-posix-default 
-                          configure bash to be posix-conformant by default
-  --enable-usg-echo-default 
-                          a synonym for --enable-xpg-echo-default
-  --enable-xpg-echo-default 
-                          make the echo builtin expand escape sequences by
-                          default
-  --enable-mem-scramble   scramble memory on calls to malloc and free
-  --enable-profiling      allow profiling with gprof
-  --enable-static-link    link bash statically, for use as a root shell
-  --disable-largefile     omit support for large files
-  --disable-nls           do not use Native Language Support
-  --disable-rpath         do not hardcode runtime library paths
-
-Optional Packages:
-  --with-PACKAGE[=ARG]    use PACKAGE [ARG=yes]
-  --without-PACKAGE       do not use PACKAGE (same as --with-PACKAGE=no)
-  --with-afs              if you are running AFS
-  --with-bash-malloc      use the Bash version of malloc
-  --with-curses           use the curses library instead of the termcap
-                          library
-  --with-gnu-malloc       synonym for --with-bash-malloc
-  --with-installed-readline 
-                          use a version of the readline library that is
-                          already installed
-  --with-purecov          configure to postprocess with pure coverage
-  --with-purify           configure to postprocess with purify
-  --with-gnu-ld           assume the C compiler uses GNU ld default=no
-  --with-libiconv-prefix[=DIR]  search for libiconv in DIR/include and DIR/lib
-  --without-libiconv-prefix     don't search for libiconv in includedir and libdir
-  --with-included-gettext use the GNU gettext library included here
-  --with-libintl-prefix[=DIR]  search for libintl in DIR/include and DIR/lib
-  --without-libintl-prefix     don't search for libintl in includedir and libdir
-
-Some influential environment variables:
-  DEBUGGER_START_FILE 
-              location of bash debugger initialization file
-  CC_FOR_BUILD 
-              C compiler used when compiling binaries used only at build time
-  CFLAGS_FOR_BUILD 
-              Compliation options (CFLAGS) used when compiling binaries used
-              only at build time
-  LDFLAGS_FOR_BUILD 
-              Linker options (LDFLAGS) used when compiling binaries used only
-              at build time
-  CPPFLAGS_FOR_BUILD 
-              C preprocessor options (CPPFLAGS) used when compiling binaries
-              used only at build time
-  CC          C compiler command
-  CFLAGS      C compiler flags
-  LDFLAGS     linker flags, e.g. -L<lib dir> if you have libraries in a
-              nonstandard directory <lib dir>
-  LIBS        libraries to pass to the linker, e.g. -l<library>
-  CPPFLAGS    (Objective) C/C++ preprocessor flags, e.g. -I<include dir> if
-              you have headers in a nonstandard directory <include dir>
-  CPP         C preprocessor
-  YACC        The `Yet Another Compiler Compiler' implementation to use.
-              Defaults to the first program found out of: `bison -y', `byacc',
-              `yacc'.
-  YFLAGS      The list of arguments that will be passed by default to @S|@YACC.
-              This script will default YFLAGS to the empty string to avoid a
-              default value of `-d' given by some make applications.
-
-Use these variables to override the choices made by `configure' or to help
-it to find libraries and programs with nonstandard names/locations.
-
-Report bugs to <bug-bash@gnu.org>.
-_ACEOF
-ac_status=$?
-fi
-
-if test "$ac_init_help" = "recursive"; then
-  # If there are subdirs, report their specific --help.
-  for ac_dir in : $ac_subdirs_all; do test "x$ac_dir" = x: && continue
-    test -d "$ac_dir" ||
-      { cd "$srcdir" && ac_pwd=`pwd` && srcdir=. && test -d "$ac_dir"; } ||
-      continue
-    ac_builddir=.
-
-case "$ac_dir" in
-.) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;;
-*)
-  ac_dir_suffix=/`$as_echo "$ac_dir" | sed 's|^\.[\\/]||'`
-  # A ".." for each directory in $ac_dir_suffix.
-  ac_top_builddir_sub=`$as_echo "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'`
-  case $ac_top_builddir_sub in
-  "") ac_top_builddir_sub=. ac_top_build_prefix= ;;
-  *)  ac_top_build_prefix=$ac_top_builddir_sub/ ;;
-  esac ;;
-esac
-ac_abs_top_builddir=$ac_pwd
-ac_abs_builddir=$ac_pwd$ac_dir_suffix
-# for backward compatibility:
-ac_top_builddir=$ac_top_build_prefix
-
-case $srcdir in
-  .)  # We are building in place.
-    ac_srcdir=.
-    ac_top_srcdir=$ac_top_builddir_sub
-    ac_abs_top_srcdir=$ac_pwd ;;
-  [\\/]* | ?:[\\/]* )  # Absolute name.
-    ac_srcdir=$srcdir$ac_dir_suffix;
-    ac_top_srcdir=$srcdir
-    ac_abs_top_srcdir=$srcdir ;;
-  *) # Relative name.
-    ac_srcdir=$ac_top_build_prefix$srcdir$ac_dir_suffix
-    ac_top_srcdir=$ac_top_build_prefix$srcdir
-    ac_abs_top_srcdir=$ac_pwd/$srcdir ;;
-esac
-ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix
-
-    cd "$ac_dir" || { ac_status=$?; continue; }
-    # Check for guested configure.
-    if test -f "$ac_srcdir/configure.gnu"; then
-      echo &&
-      $SHELL "$ac_srcdir/configure.gnu" --help=recursive
-    elif test -f "$ac_srcdir/configure"; then
-      echo &&
-      $SHELL "$ac_srcdir/configure" --help=recursive
-    else
-      $as_echo "$as_me: WARNING: no configuration information is in $ac_dir" >&2
-    fi || ac_status=$?
-    cd "$ac_pwd" || { ac_status=$?; break; }
-  done
-fi
-
-test -n "$ac_init_help" && exit $ac_status
-if $ac_init_version; then
-  cat <<\_ACEOF
-bash configure 4.2-maint
-generated by GNU Autoconf 2.68
-
-Copyright (C) 2010 Free Software Foundation, Inc.
-This configure script is free software; the Free Software Foundation
-gives unlimited permission to copy, distribute and modify it.
-_ACEOF
-  exit
-fi
-
-## ------------------------ ##
-## Autoconf initialization. ##
-## ------------------------ ##
-
-@%:@ ac_fn_c_try_compile LINENO
-@%:@ --------------------------
-@%:@ Try to compile conftest.@S|@ac_ext, and return whether this succeeded.
-ac_fn_c_try_compile ()
-{
-  as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
-  rm -f conftest.$ac_objext
-  if { { ac_try="$ac_compile"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
-  (eval "$ac_compile") 2>conftest.err
-  ac_status=$?
-  if test -s conftest.err; then
-    grep -v '^ *+' conftest.err >conftest.er1
-    cat conftest.er1 >&5
-    mv -f conftest.er1 conftest.err
-  fi
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-  test $ac_status = 0; } && {
-        test -z "$ac_c_werror_flag" ||
-        test ! -s conftest.err
-       } && test -s conftest.$ac_objext; then :
-  ac_retval=0
-else
-  $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-       ac_retval=1
-fi
-  eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
-  as_fn_set_status $ac_retval
-
-} @%:@ ac_fn_c_try_compile
-
-@%:@ ac_fn_c_try_link LINENO
-@%:@ -----------------------
-@%:@ Try to link conftest.@S|@ac_ext, and return whether this succeeded.
-ac_fn_c_try_link ()
-{
-  as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
-  rm -f conftest.$ac_objext conftest$ac_exeext
-  if { { ac_try="$ac_link"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
-  (eval "$ac_link") 2>conftest.err
-  ac_status=$?
-  if test -s conftest.err; then
-    grep -v '^ *+' conftest.err >conftest.er1
-    cat conftest.er1 >&5
-    mv -f conftest.er1 conftest.err
-  fi
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-  test $ac_status = 0; } && {
-        test -z "$ac_c_werror_flag" ||
-        test ! -s conftest.err
-       } && test -s conftest$ac_exeext && {
-        test "$cross_compiling" = yes ||
-        $as_test_x conftest$ac_exeext
-       }; then :
-  ac_retval=0
-else
-  $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-       ac_retval=1
-fi
-  # Delete the IPA/IPO (Inter Procedural Analysis/Optimization) information
-  # created by the PGI compiler (conftest_ipa8_conftest.oo), as it would
-  # interfere with the next link command; also delete a directory that is
-  # left behind by Apple's compiler.  We do this before executing the actions.
-  rm -rf conftest.dSYM conftest_ipa8_conftest.oo
-  eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
-  as_fn_set_status $ac_retval
-
-} @%:@ ac_fn_c_try_link
-
-@%:@ ac_fn_c_try_cpp LINENO
-@%:@ ----------------------
-@%:@ Try to preprocess conftest.@S|@ac_ext, and return whether this succeeded.
-ac_fn_c_try_cpp ()
-{
-  as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
-  if { { ac_try="$ac_cpp conftest.$ac_ext"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
-  (eval "$ac_cpp conftest.$ac_ext") 2>conftest.err
-  ac_status=$?
-  if test -s conftest.err; then
-    grep -v '^ *+' conftest.err >conftest.er1
-    cat conftest.er1 >&5
-    mv -f conftest.er1 conftest.err
-  fi
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-  test $ac_status = 0; } > conftest.i && {
-        test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
-        test ! -s conftest.err
-       }; then :
-  ac_retval=0
-else
-  $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-    ac_retval=1
-fi
-  eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
-  as_fn_set_status $ac_retval
-
-} @%:@ ac_fn_c_try_cpp
-
-@%:@ ac_fn_c_check_header_mongrel LINENO HEADER VAR INCLUDES
-@%:@ -------------------------------------------------------
-@%:@ Tests whether HEADER exists, giving a warning if it cannot be compiled using
-@%:@ the include files in INCLUDES and setting the cache variable VAR
-@%:@ accordingly.
-ac_fn_c_check_header_mongrel ()
-{
-  as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
-  if eval \${$3+:} false; then :
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
-$as_echo_n "checking for $2... " >&6; }
-if eval \${$3+:} false; then :
-  $as_echo_n "(cached) " >&6
-fi
-eval ac_res=\$$3
-              { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
-else
-  # Is the header compilable?
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking $2 usability" >&5
-$as_echo_n "checking $2 usability... " >&6; }
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-$4
-@%:@include <$2>
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_header_compiler=yes
-else
-  ac_header_compiler=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_header_compiler" >&5
-$as_echo "$ac_header_compiler" >&6; }
-
-# Is the header present?
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking $2 presence" >&5
-$as_echo_n "checking $2 presence... " >&6; }
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-@%:@include <$2>
-_ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
-  ac_header_preproc=yes
-else
-  ac_header_preproc=no
-fi
-rm -f conftest.err conftest.i conftest.$ac_ext
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_header_preproc" >&5
-$as_echo "$ac_header_preproc" >&6; }
-
-# So?  What about this header?
-case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in #((
-  yes:no: )
-    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: accepted by the compiler, rejected by the preprocessor!" >&5
-$as_echo "$as_me: WARNING: $2: accepted by the compiler, rejected by the preprocessor!" >&2;}
-    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: proceeding with the compiler's result" >&5
-$as_echo "$as_me: WARNING: $2: proceeding with the compiler's result" >&2;}
-    ;;
-  no:yes:* )
-    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: present but cannot be compiled" >&5
-$as_echo "$as_me: WARNING: $2: present but cannot be compiled" >&2;}
-    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2:     check for missing prerequisite headers?" >&5
-$as_echo "$as_me: WARNING: $2:     check for missing prerequisite headers?" >&2;}
-    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: see the Autoconf documentation" >&5
-$as_echo "$as_me: WARNING: $2: see the Autoconf documentation" >&2;}
-    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2:     section \"Present But Cannot Be Compiled\"" >&5
-$as_echo "$as_me: WARNING: $2:     section \"Present But Cannot Be Compiled\"" >&2;}
-    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: proceeding with the compiler's result" >&5
-$as_echo "$as_me: WARNING: $2: proceeding with the compiler's result" >&2;}
-( $as_echo "## ------------------------------- ##
-## Report this to bug-bash@gnu.org ##
-## ------------------------------- ##"
-     ) | sed "s/^/$as_me: WARNING:     /" >&2
-    ;;
-esac
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
-$as_echo_n "checking for $2... " >&6; }
-if eval \${$3+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  eval "$3=\$ac_header_compiler"
-fi
-eval ac_res=\$$3
-              { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
-fi
-  eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
-
-} @%:@ ac_fn_c_check_header_mongrel
-
-@%:@ ac_fn_c_try_run LINENO
-@%:@ ----------------------
-@%:@ Try to link conftest.@S|@ac_ext, and return whether this succeeded. Assumes
-@%:@ that executables *can* be run.
-ac_fn_c_try_run ()
-{
-  as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
-  if { { ac_try="$ac_link"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
-  (eval "$ac_link") 2>&5
-  ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-  test $ac_status = 0; } && { ac_try='./conftest$ac_exeext'
-  { { case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
-  (eval "$ac_try") 2>&5
-  ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-  test $ac_status = 0; }; }; then :
-  ac_retval=0
-else
-  $as_echo "$as_me: program exited with status $ac_status" >&5
-       $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-       ac_retval=$ac_status
-fi
-  rm -rf conftest.dSYM conftest_ipa8_conftest.oo
-  eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
-  as_fn_set_status $ac_retval
-
-} @%:@ ac_fn_c_try_run
-
-@%:@ ac_fn_c_check_header_compile LINENO HEADER VAR INCLUDES
-@%:@ -------------------------------------------------------
-@%:@ Tests whether HEADER exists and can be compiled using the include files in
-@%:@ INCLUDES, setting the cache variable VAR accordingly.
-ac_fn_c_check_header_compile ()
-{
-  as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
-$as_echo_n "checking for $2... " >&6; }
-if eval \${$3+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-$4
-@%:@include <$2>
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  eval "$3=yes"
-else
-  eval "$3=no"
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-eval ac_res=\$$3
-              { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
-  eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
-
-} @%:@ ac_fn_c_check_header_compile
-
-@%:@ ac_fn_c_check_func LINENO FUNC VAR
-@%:@ ----------------------------------
-@%:@ Tests whether FUNC exists, setting the cache variable VAR accordingly
-ac_fn_c_check_func ()
-{
-  as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
-$as_echo_n "checking for $2... " >&6; }
-if eval \${$3+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-/* Define $2 to an innocuous variant, in case <limits.h> declares $2.
-   For example, HP-UX 11i <limits.h> declares gettimeofday.  */
-#define $2 innocuous_$2
-
-/* System header to define __stub macros and hopefully few prototypes,
-    which can conflict with char $2 (); below.
-    Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
-    <limits.h> exists even on freestanding compilers.  */
-
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-
-#undef $2
-
-/* Override any GCC internal prototype to avoid an error.
-   Use char because int might match the return type of a GCC
-   builtin and then its argument prototype would still apply.  */
-#ifdef __cplusplus
-extern "C"
-#endif
-char $2 ();
-/* The GNU C library defines this for functions which it implements
-    to always fail with ENOSYS.  Some functions are actually named
-    something starting with __ and the normal name is an alias.  */
-#if defined __stub_$2 || defined __stub___$2
-choke me
-#endif
-
-int
-main ()
-{
-return $2 ();
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  eval "$3=yes"
-else
-  eval "$3=no"
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-fi
-eval ac_res=\$$3
-              { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
-  eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
-
-} @%:@ ac_fn_c_check_func
-
-@%:@ ac_fn_c_check_type LINENO TYPE VAR INCLUDES
-@%:@ -------------------------------------------
-@%:@ Tests whether TYPE exists after having included INCLUDES, setting cache
-@%:@ variable VAR accordingly.
-ac_fn_c_check_type ()
-{
-  as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
-$as_echo_n "checking for $2... " >&6; }
-if eval \${$3+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  eval "$3=no"
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-$4
-int
-main ()
-{
-if (sizeof ($2))
-        return 0;
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-$4
-int
-main ()
-{
-if (sizeof (($2)))
-           return 0;
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  
-else
-  eval "$3=yes"
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-eval ac_res=\$$3
-              { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
-  eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
-
-} @%:@ ac_fn_c_check_type
-
-@%:@ ac_fn_c_check_decl LINENO SYMBOL VAR INCLUDES
-@%:@ ---------------------------------------------
-@%:@ Tests whether SYMBOL is declared in INCLUDES, setting cache variable VAR
-@%:@ accordingly.
-ac_fn_c_check_decl ()
-{
-  as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
-  as_decl_name=`echo $2|sed 's/ *(.*//'`
-  as_decl_use=`echo $2|sed -e 's/(/((/' -e 's/)/) 0&/' -e 's/,/) 0& (/g'`
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $as_decl_name is declared" >&5
-$as_echo_n "checking whether $as_decl_name is declared... " >&6; }
-if eval \${$3+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-$4
-int
-main ()
-{
-@%:@ifndef $as_decl_name
-@%:@ifdef __cplusplus
-  (void) $as_decl_use;
-@%:@else
-  (void) $as_decl_name;
-@%:@endif
-@%:@endif
-
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  eval "$3=yes"
-else
-  eval "$3=no"
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-eval ac_res=\$$3
-              { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
-  eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
-
-} @%:@ ac_fn_c_check_decl
-
-@%:@ ac_fn_c_compute_int LINENO EXPR VAR INCLUDES
-@%:@ --------------------------------------------
-@%:@ Tries to find the compile-time value of EXPR in a program that includes
-@%:@ INCLUDES, setting VAR accordingly. Returns whether the value could be
-@%:@ computed
-ac_fn_c_compute_int ()
-{
-  as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
-  if test "$cross_compiling" = yes; then
-    # Depending upon the size, compute the lo and hi bounds.
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-$4
-int
-main ()
-{
-static int test_array @<:@1 - 2 * !(($2) >= 0)@:>@;
-test_array @<:@0@:>@ = 0
-
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_lo=0 ac_mid=0
-  while :; do
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-$4
-int
-main ()
-{
-static int test_array @<:@1 - 2 * !(($2) <= $ac_mid)@:>@;
-test_array @<:@0@:>@ = 0
-
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_hi=$ac_mid; break
-else
-  as_fn_arith $ac_mid + 1 && ac_lo=$as_val
-                       if test $ac_lo -le $ac_mid; then
-                         ac_lo= ac_hi=
-                         break
-                       fi
-                       as_fn_arith 2 '*' $ac_mid + 1 && ac_mid=$as_val
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  done
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-$4
-int
-main ()
-{
-static int test_array @<:@1 - 2 * !(($2) < 0)@:>@;
-test_array @<:@0@:>@ = 0
-
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_hi=-1 ac_mid=-1
-  while :; do
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-$4
-int
-main ()
-{
-static int test_array @<:@1 - 2 * !(($2) >= $ac_mid)@:>@;
-test_array @<:@0@:>@ = 0
-
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_lo=$ac_mid; break
-else
-  as_fn_arith '(' $ac_mid ')' - 1 && ac_hi=$as_val
-                       if test $ac_mid -le $ac_hi; then
-                         ac_lo= ac_hi=
-                         break
-                       fi
-                       as_fn_arith 2 '*' $ac_mid && ac_mid=$as_val
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  done
-else
-  ac_lo= ac_hi=
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-# Binary search between lo and hi bounds.
-while test "x$ac_lo" != "x$ac_hi"; do
-  as_fn_arith '(' $ac_hi - $ac_lo ')' / 2 + $ac_lo && ac_mid=$as_val
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-$4
-int
-main ()
-{
-static int test_array @<:@1 - 2 * !(($2) <= $ac_mid)@:>@;
-test_array @<:@0@:>@ = 0
-
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_hi=$ac_mid
-else
-  as_fn_arith '(' $ac_mid ')' + 1 && ac_lo=$as_val
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-done
-case $ac_lo in @%:@((
-?*) eval "$3=\$ac_lo"; ac_retval=0 ;;
-'') ac_retval=1 ;;
-esac
-  else
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-$4
-static long int longval () { return $2; }
-static unsigned long int ulongval () { return $2; }
-@%:@include <stdio.h>
-@%:@include <stdlib.h>
-int
-main ()
-{
-
-  FILE *f = fopen ("conftest.val", "w");
-  if (! f)
-    return 1;
-  if (($2) < 0)
-    {
-      long int i = longval ();
-      if (i != ($2))
-       return 1;
-      fprintf (f, "%ld", i);
-    }
-  else
-    {
-      unsigned long int i = ulongval ();
-      if (i != ($2))
-       return 1;
-      fprintf (f, "%lu", i);
-    }
-  /* Do not output a trailing newline, as this causes \r\n confusion
-     on some platforms.  */
-  return ferror (f) || fclose (f) != 0;
-
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-  echo >>conftest.val; read $3 <conftest.val; ac_retval=0
-else
-  ac_retval=1
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-rm -f conftest.val
-
-  fi
-  eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
-  as_fn_set_status $ac_retval
-
-} @%:@ ac_fn_c_compute_int
-
-@%:@ ac_fn_c_check_member LINENO AGGR MEMBER VAR INCLUDES
-@%:@ ----------------------------------------------------
-@%:@ Tries to find if the field MEMBER exists in type AGGR, after including
-@%:@ INCLUDES, setting cache variable VAR accordingly.
-ac_fn_c_check_member ()
-{
-  as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2.$3" >&5
-$as_echo_n "checking for $2.$3... " >&6; }
-if eval \${$4+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-$5
-int
-main ()
-{
-static $2 ac_aggr;
-if (ac_aggr.$3)
-return 0;
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  eval "$4=yes"
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-$5
-int
-main ()
-{
-static $2 ac_aggr;
-if (sizeof ac_aggr.$3)
-return 0;
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  eval "$4=yes"
-else
-  eval "$4=no"
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-eval ac_res=\$$4
-              { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
-  eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
-
-} @%:@ ac_fn_c_check_member
-cat >config.log <<_ACEOF
-This file contains any messages produced by compilers while
-running configure, to aid debugging if configure makes a mistake.
-
-It was created by bash $as_me 4.2-maint, which was
-generated by GNU Autoconf 2.68.  Invocation command line was
-
-  $ $0 $@
-
-_ACEOF
-exec 5>>config.log
-{
-cat <<_ASUNAME
-## --------- ##
-## Platform. ##
-## --------- ##
-
-hostname = `(hostname || uname -n) 2>/dev/null | sed 1q`
-uname -m = `(uname -m) 2>/dev/null || echo unknown`
-uname -r = `(uname -r) 2>/dev/null || echo unknown`
-uname -s = `(uname -s) 2>/dev/null || echo unknown`
-uname -v = `(uname -v) 2>/dev/null || echo unknown`
-
-/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null || echo unknown`
-/bin/uname -X     = `(/bin/uname -X) 2>/dev/null     || echo unknown`
-
-/bin/arch              = `(/bin/arch) 2>/dev/null              || echo unknown`
-/usr/bin/arch -k       = `(/usr/bin/arch -k) 2>/dev/null       || echo unknown`
-/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null || echo unknown`
-/usr/bin/hostinfo      = `(/usr/bin/hostinfo) 2>/dev/null      || echo unknown`
-/bin/machine           = `(/bin/machine) 2>/dev/null           || echo unknown`
-/usr/bin/oslevel       = `(/usr/bin/oslevel) 2>/dev/null       || echo unknown`
-/bin/universe          = `(/bin/universe) 2>/dev/null          || echo unknown`
-
-_ASUNAME
-
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    $as_echo "PATH: $as_dir"
-  done
-IFS=$as_save_IFS
-
-} >&5
-
-cat >&5 <<_ACEOF
-
-
-## ----------- ##
-## Core tests. ##
-## ----------- ##
-
-_ACEOF
-
-
-# Keep a trace of the command line.
-# Strip out --no-create and --no-recursion so they do not pile up.
-# Strip out --silent because we don't want to record it for future runs.
-# Also quote any args containing shell meta-characters.
-# Make two passes to allow for proper duplicate-argument suppression.
-ac_configure_args=
-ac_configure_args0=
-ac_configure_args1=
-ac_must_keep_next=false
-for ac_pass in 1 2
-do
-  for ac_arg
-  do
-    case $ac_arg in
-    -no-create | --no-c* | -n | -no-recursion | --no-r*) continue ;;
-    -q | -quiet | --quiet | --quie | --qui | --qu | --q \
-    | -silent | --silent | --silen | --sile | --sil)
-      continue ;;
-    *\'*)
-      ac_arg=`$as_echo "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;;
-    esac
-    case $ac_pass in
-    1) as_fn_append ac_configure_args0 " '$ac_arg'" ;;
-    2)
-      as_fn_append ac_configure_args1 " '$ac_arg'"
-      if test $ac_must_keep_next = true; then
-       ac_must_keep_next=false # Got value, back to normal.
-      else
-       case $ac_arg in
-         *=* | --config-cache | -C | -disable-* | --disable-* \
-         | -enable-* | --enable-* | -gas | --g* | -nfp | --nf* \
-         | -q | -quiet | --q* | -silent | --sil* | -v | -verb* \
-         | -with-* | --with-* | -without-* | --without-* | --x)
-           case "$ac_configure_args0 " in
-             "$ac_configure_args1"*" '$ac_arg' "* ) continue ;;
-           esac
-           ;;
-         -* ) ac_must_keep_next=true ;;
-       esac
-      fi
-      as_fn_append ac_configure_args " '$ac_arg'"
-      ;;
-    esac
-  done
-done
-{ ac_configure_args0=; unset ac_configure_args0;}
-{ ac_configure_args1=; unset ac_configure_args1;}
-
-# When interrupted or exit'd, cleanup temporary files, and complete
-# config.log.  We remove comments because anyway the quotes in there
-# would cause problems or look ugly.
-# WARNING: Use '\'' to represent an apostrophe within the trap.
-# WARNING: Do not start the trap code with a newline, due to a FreeBSD 4.0 bug.
-trap 'exit_status=$?
-  # Save into config.log some information that might help in debugging.
-  {
-    echo
-
-    $as_echo "## ---------------- ##
-## Cache variables. ##
-## ---------------- ##"
-    echo
-    # The following way of writing the cache mishandles newlines in values,
-(
-  for ac_var in `(set) 2>&1 | sed -n '\''s/^\([a-zA-Z_][a-zA-Z0-9_]*\)=.*/\1/p'\''`; do
-    eval ac_val=\$$ac_var
-    case $ac_val in #(
-    *${as_nl}*)
-      case $ac_var in #(
-      *_cv_*) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cache variable $ac_var contains a newline" >&5
-$as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;;
-      esac
-      case $ac_var in #(
-      _ | IFS | as_nl) ;; #(
-      BASH_ARGV | BASH_SOURCE) eval $ac_var= ;; #(
-      *) { eval $ac_var=; unset $ac_var;} ;;
-      esac ;;
-    esac
-  done
-  (set) 2>&1 |
-    case $as_nl`(ac_space='\'' '\''; set) 2>&1` in #(
-    *${as_nl}ac_space=\ *)
-      sed -n \
-       "s/'\''/'\''\\\\'\'''\''/g;
-         s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\''\\2'\''/p"
-      ;; #(
-    *)
-      sed -n "/^[_$as_cr_alnum]*_cv_[_$as_cr_alnum]*=/p"
-      ;;
-    esac |
-    sort
-)
-    echo
-
-    $as_echo "## ----------------- ##
-## Output variables. ##
-## ----------------- ##"
-    echo
-    for ac_var in $ac_subst_vars
-    do
-      eval ac_val=\$$ac_var
-      case $ac_val in
-      *\'\''*) ac_val=`$as_echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;;
-      esac
-      $as_echo "$ac_var='\''$ac_val'\''"
-    done | sort
-    echo
-
-    if test -n "$ac_subst_files"; then
-      $as_echo "## ------------------- ##
-## File substitutions. ##
-## ------------------- ##"
-      echo
-      for ac_var in $ac_subst_files
-      do
-       eval ac_val=\$$ac_var
-       case $ac_val in
-       *\'\''*) ac_val=`$as_echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;;
-       esac
-       $as_echo "$ac_var='\''$ac_val'\''"
-      done | sort
-      echo
-    fi
-
-    if test -s confdefs.h; then
-      $as_echo "## ----------- ##
-## confdefs.h. ##
-## ----------- ##"
-      echo
-      cat confdefs.h
-      echo
-    fi
-    test "$ac_signal" != 0 &&
-      $as_echo "$as_me: caught signal $ac_signal"
-    $as_echo "$as_me: exit $exit_status"
-  } >&5
-  rm -f core *.core core.conftest.* &&
-    rm -f -r conftest* confdefs* conf$$* $ac_clean_files &&
-    exit $exit_status
-' 0
-for ac_signal in 1 2 13 15; do
-  trap 'ac_signal='$ac_signal'; as_fn_exit 1' $ac_signal
-done
-ac_signal=0
-
-# confdefs.h avoids OS command line length limits that DEFS can exceed.
-rm -f -r conftest* confdefs.h
-
-$as_echo "/* confdefs.h */" > confdefs.h
-
-# Predefined preprocessor variables.
-
-cat >>confdefs.h <<_ACEOF
-@%:@define PACKAGE_NAME "$PACKAGE_NAME"
-_ACEOF
-
-cat >>confdefs.h <<_ACEOF
-@%:@define PACKAGE_TARNAME "$PACKAGE_TARNAME"
-_ACEOF
-
-cat >>confdefs.h <<_ACEOF
-@%:@define PACKAGE_VERSION "$PACKAGE_VERSION"
-_ACEOF
-
-cat >>confdefs.h <<_ACEOF
-@%:@define PACKAGE_STRING "$PACKAGE_STRING"
-_ACEOF
-
-cat >>confdefs.h <<_ACEOF
-@%:@define PACKAGE_BUGREPORT "$PACKAGE_BUGREPORT"
-_ACEOF
-
-cat >>confdefs.h <<_ACEOF
-@%:@define PACKAGE_URL "$PACKAGE_URL"
-_ACEOF
-
-
-# Let the site file select an alternate cache file if it wants to.
-# Prefer an explicitly selected file to automatically selected ones.
-ac_site_file1=NONE
-ac_site_file2=NONE
-if test -n "$CONFIG_SITE"; then
-  # We do not want a PATH search for config.site.
-  case $CONFIG_SITE in @%:@((
-    -*)  ac_site_file1=./$CONFIG_SITE;;
-    */*) ac_site_file1=$CONFIG_SITE;;
-    *)   ac_site_file1=./$CONFIG_SITE;;
-  esac
-elif test "x$prefix" != xNONE; then
-  ac_site_file1=$prefix/share/config.site
-  ac_site_file2=$prefix/etc/config.site
-else
-  ac_site_file1=$ac_default_prefix/share/config.site
-  ac_site_file2=$ac_default_prefix/etc/config.site
-fi
-for ac_site_file in "$ac_site_file1" "$ac_site_file2"
-do
-  test "x$ac_site_file" = xNONE && continue
-  if test /dev/null != "$ac_site_file" && test -r "$ac_site_file"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: loading site script $ac_site_file" >&5
-$as_echo "$as_me: loading site script $ac_site_file" >&6;}
-    sed 's/^/| /' "$ac_site_file" >&5
-    . "$ac_site_file" \
-      || { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error $? "failed to load site script $ac_site_file
-See \`config.log' for more details" "$LINENO" 5; }
-  fi
-done
-
-if test -r "$cache_file"; then
-  # Some versions of bash will fail to source /dev/null (special files
-  # actually), so we avoid doing that.  DJGPP emulates it as a regular file.
-  if test /dev/null != "$cache_file" && test -f "$cache_file"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: loading cache $cache_file" >&5
-$as_echo "$as_me: loading cache $cache_file" >&6;}
-    case $cache_file in
-      [\\/]* | ?:[\\/]* ) . "$cache_file";;
-      *)                      . "./$cache_file";;
-    esac
-  fi
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: creating cache $cache_file" >&5
-$as_echo "$as_me: creating cache $cache_file" >&6;}
-  >$cache_file
-fi
-
-as_fn_append ac_header_list " stdlib.h"
-as_fn_append ac_header_list " unistd.h"
-as_fn_append ac_header_list " sys/param.h"
-as_fn_append ac_header_list " sys/time.h"
-as_fn_append ac_func_list " alarm"
-as_fn_append ac_func_list " fpurge"
-as_fn_append ac_func_list " __fpurge"
-as_fn_append ac_func_list " snprintf"
-as_fn_append ac_func_list " vsnprintf"
-# Check that the precious variables saved in the cache have kept the same
-# value.
-ac_cache_corrupted=false
-for ac_var in $ac_precious_vars; do
-  eval ac_old_set=\$ac_cv_env_${ac_var}_set
-  eval ac_new_set=\$ac_env_${ac_var}_set
-  eval ac_old_val=\$ac_cv_env_${ac_var}_value
-  eval ac_new_val=\$ac_env_${ac_var}_value
-  case $ac_old_set,$ac_new_set in
-    set,)
-      { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5
-$as_echo "$as_me: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&2;}
-      ac_cache_corrupted=: ;;
-    ,set)
-      { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' was not set in the previous run" >&5
-$as_echo "$as_me: error: \`$ac_var' was not set in the previous run" >&2;}
-      ac_cache_corrupted=: ;;
-    ,);;
-    *)
-      if test "x$ac_old_val" != "x$ac_new_val"; then
-       # differences in whitespace do not lead to failure.
-       ac_old_val_w=`echo x $ac_old_val`
-       ac_new_val_w=`echo x $ac_new_val`
-       if test "$ac_old_val_w" != "$ac_new_val_w"; then
-         { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' has changed since the previous run:" >&5
-$as_echo "$as_me: error: \`$ac_var' has changed since the previous run:" >&2;}
-         ac_cache_corrupted=:
-       else
-         { $as_echo "$as_me:${as_lineno-$LINENO}: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&5
-$as_echo "$as_me: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&2;}
-         eval $ac_var=\$ac_old_val
-       fi
-       { $as_echo "$as_me:${as_lineno-$LINENO}:   former value:  \`$ac_old_val'" >&5
-$as_echo "$as_me:   former value:  \`$ac_old_val'" >&2;}
-       { $as_echo "$as_me:${as_lineno-$LINENO}:   current value: \`$ac_new_val'" >&5
-$as_echo "$as_me:   current value: \`$ac_new_val'" >&2;}
-      fi;;
-  esac
-  # Pass precious variables to config.status.
-  if test "$ac_new_set" = set; then
-    case $ac_new_val in
-    *\'*) ac_arg=$ac_var=`$as_echo "$ac_new_val" | sed "s/'/'\\\\\\\\''/g"` ;;
-    *) ac_arg=$ac_var=$ac_new_val ;;
-    esac
-    case " $ac_configure_args " in
-      *" '$ac_arg' "*) ;; # Avoid dups.  Use of quotes ensures accuracy.
-      *) as_fn_append ac_configure_args " '$ac_arg'" ;;
-    esac
-  fi
-done
-if $ac_cache_corrupted; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-  { $as_echo "$as_me:${as_lineno-$LINENO}: error: changes in the environment can compromise the build" >&5
-$as_echo "$as_me: error: changes in the environment can compromise the build" >&2;}
-  as_fn_error $? "run \`make distclean' and/or \`rm $cache_file' and start over" "$LINENO" 5
-fi
-## -------------------- ##
-## Main body of script. ##
-## -------------------- ##
-
-ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-
-
-
-
-
-
-ac_aux_dir=
-for ac_dir in ./support "$srcdir"/./support; do
-  if test -f "$ac_dir/install-sh"; then
-    ac_aux_dir=$ac_dir
-    ac_install_sh="$ac_aux_dir/install-sh -c"
-    break
-  elif test -f "$ac_dir/install.sh"; then
-    ac_aux_dir=$ac_dir
-    ac_install_sh="$ac_aux_dir/install.sh -c"
-    break
-  elif test -f "$ac_dir/shtool"; then
-    ac_aux_dir=$ac_dir
-    ac_install_sh="$ac_aux_dir/shtool install -c"
-    break
-  fi
-done
-if test -z "$ac_aux_dir"; then
-  as_fn_error $? "cannot find install-sh, install.sh, or shtool in ./support \"$srcdir\"/./support" "$LINENO" 5
-fi
-
-# These three variables are undocumented and unsupported,
-# and are intended to be withdrawn in a future Autoconf release.
-# They can cause serious problems if a builder's source tree is in a directory
-# whose full name contains unusual characters.
-ac_config_guess="$SHELL $ac_aux_dir/config.guess"  # Please don't use this var.
-ac_config_sub="$SHELL $ac_aux_dir/config.sub"  # Please don't use this var.
-ac_configure="$SHELL $ac_aux_dir/configure"  # Please don't use this var.
-
-
-ac_config_headers="$ac_config_headers config.h"
-
-
-BASHVERS=4.2
-RELSTATUS=maint
-
-case "$RELSTATUS" in
-alp*|bet*|dev*|rc*|maint*)     DEBUG='-DDEBUG' MALLOC_DEBUG='-DMALLOC_DEBUG' ;;
-*)     DEBUG= MALLOC_DEBUG= ;;
-esac
-
-# Make sure we can run config.sub.
-$SHELL "$ac_aux_dir/config.sub" sun4 >/dev/null 2>&1 ||
-  as_fn_error $? "cannot run $SHELL $ac_aux_dir/config.sub" "$LINENO" 5
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking build system type" >&5
-$as_echo_n "checking build system type... " >&6; }
-if ${ac_cv_build+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_build_alias=$build_alias
-test "x$ac_build_alias" = x &&
-  ac_build_alias=`$SHELL "$ac_aux_dir/config.guess"`
-test "x$ac_build_alias" = x &&
-  as_fn_error $? "cannot guess build type; you must specify one" "$LINENO" 5
-ac_cv_build=`$SHELL "$ac_aux_dir/config.sub" $ac_build_alias` ||
-  as_fn_error $? "$SHELL $ac_aux_dir/config.sub $ac_build_alias failed" "$LINENO" 5
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_build" >&5
-$as_echo "$ac_cv_build" >&6; }
-case $ac_cv_build in
-*-*-*) ;;
-*) as_fn_error $? "invalid value of canonical build" "$LINENO" 5;;
-esac
-build=$ac_cv_build
-ac_save_IFS=$IFS; IFS='-'
-set x $ac_cv_build
-shift
-build_cpu=$1
-build_vendor=$2
-shift; shift
-# Remember, the first character of IFS is used to create $*,
-# except with old shells:
-build_os=$*
-IFS=$ac_save_IFS
-case $build_os in *\ *) build_os=`echo "$build_os" | sed 's/ /-/g'`;; esac
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking host system type" >&5
-$as_echo_n "checking host system type... " >&6; }
-if ${ac_cv_host+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test "x$host_alias" = x; then
-  ac_cv_host=$ac_cv_build
-else
-  ac_cv_host=`$SHELL "$ac_aux_dir/config.sub" $host_alias` ||
-    as_fn_error $? "$SHELL $ac_aux_dir/config.sub $host_alias failed" "$LINENO" 5
-fi
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_host" >&5
-$as_echo "$ac_cv_host" >&6; }
-case $ac_cv_host in
-*-*-*) ;;
-*) as_fn_error $? "invalid value of canonical host" "$LINENO" 5;;
-esac
-host=$ac_cv_host
-ac_save_IFS=$IFS; IFS='-'
-set x $ac_cv_host
-shift
-host_cpu=$1
-host_vendor=$2
-shift; shift
-# Remember, the first character of IFS is used to create $*,
-# except with old shells:
-host_os=$*
-IFS=$ac_save_IFS
-case $host_os in *\ *) host_os=`echo "$host_os" | sed 's/ /-/g'`;; esac
-
-
-
-
-opt_bash_malloc=yes
-opt_purify=no
-opt_purecov=no
-opt_afs=no
-opt_curses=no
-opt_with_installed_readline=no
-
-#htmldir=
-
-case "${host_cpu}-${host_os}" in
-alpha*-*)      opt_bash_malloc=no ;;   # alpha running osf/1 or linux
-*[Cc]ray*-*)   opt_bash_malloc=no ;;   # Crays
-*-osf1*)       opt_bash_malloc=no ;;   # other osf/1 machines
-sparc-svr4*)   opt_bash_malloc=no ;;   # sparc SVR4, SVR4.2
-sparc-netbsd*) opt_bash_malloc=no ;;   # needs 8-byte alignment
-mips-irix6*)   opt_bash_malloc=no ;;   # needs 8-byte alignment
-m68k-sysv)     opt_bash_malloc=no ;;   # fixes file descriptor leak in closedir
-sparc-linux*)  opt_bash_malloc=no ;;   # sparc running linux; requires ELF
-#*-freebsd*-gnu)       opt_bash_malloc=no ;;   # there's some undetermined problem here
-#*-freebsd*)   opt_bash_malloc=no ;;   # they claim it's better; I disagree
-*-openbsd*)    opt_bash_malloc=no ;;   # they claim it needs eight-bit alignment
-*-mirbsd*)     opt_bash_malloc=no ;;   # they claim it needs eight-bit alignment
-*-aix*)                opt_bash_malloc=no ;;   # AIX machines
-*-nextstep*)   opt_bash_malloc=no ;;   # NeXT machines running NeXTstep
-*-macos*)      opt_bash_malloc=no ;;   # Apple MacOS X
-*-rhapsody*)   opt_bash_malloc=no ;;   # Apple Rhapsody (MacOS X)
-*-darwin*)     opt_bash_malloc=no ;;   # Apple Darwin (MacOS X)
-*-dgux*)       opt_bash_malloc=no ;;   # DG/UX machines
-*-qnx*)                opt_bash_malloc=no ;;   # QNX 4.2, QNX 6.x
-*-machten4)    opt_bash_malloc=no ;;   # MachTen 4.x
-*-bsdi2.1|*-bsdi3.?)   opt_bash_malloc=no ; : ${CC:=shlicc2} ;; # for loadable builtins
-*-beos*)       opt_bash_malloc=no ;;   # they say it's suitable
-*-cygwin*)     opt_bash_malloc=no ;;   # Cygnus's CYGWIN environment
-*-opennt*|*-interix*)  opt_bash_malloc=no ;;   # Interix, now owned by Microsoft
-esac
-
-# memory scrambling on free()
-case "${host_os}" in
-sco3.2v5*|sco3.2v4*)   opt_memscramble=no ;;
-*)                     opt_memscramble=yes ;;
-esac
-
-
-
-
-@%:@ Check whether --with-afs was given.
-if test "${with_afs+set}" = set; then :
-  withval=$with_afs; opt_afs=$withval
-fi
-
-
-@%:@ Check whether --with-bash-malloc was given.
-if test "${with_bash_malloc+set}" = set; then :
-  withval=$with_bash_malloc; opt_bash_malloc=$withval
-fi
-
-
-@%:@ Check whether --with-curses was given.
-if test "${with_curses+set}" = set; then :
-  withval=$with_curses; opt_curses=$withval
-fi
-
-
-@%:@ Check whether --with-gnu-malloc was given.
-if test "${with_gnu_malloc+set}" = set; then :
-  withval=$with_gnu_malloc; opt_bash_malloc=$withval
-fi
-
-
-@%:@ Check whether --with-installed-readline was given.
-if test "${with_installed_readline+set}" = set; then :
-  withval=$with_installed_readline; opt_with_installed_readline=$withval
-fi
-
-
-@%:@ Check whether --with-purecov was given.
-if test "${with_purecov+set}" = set; then :
-  withval=$with_purecov; opt_purecov=$withval
-fi
-
-
-@%:@ Check whether --with-purify was given.
-if test "${with_purify+set}" = set; then :
-  withval=$with_purify; opt_purify=$withval
-fi
-
-
-if test "$opt_bash_malloc" = yes; then
-       MALLOC_TARGET=malloc
-       MALLOC_SRC=malloc.c
-
-       MALLOC_LIB='-lmalloc'
-       MALLOC_LIBRARY='$(ALLOC_LIBDIR)/libmalloc.a'
-       MALLOC_LDFLAGS='-L$(ALLOC_LIBDIR)'
-       MALLOC_DEP='$(MALLOC_LIBRARY)'
-
-       $as_echo "@%:@define USING_BASH_MALLOC 1" >>confdefs.h
-
-else
-       MALLOC_LIB=
-       MALLOC_LIBRARY=
-       MALLOC_LDFLAGS=
-       MALLOC_DEP=     
-fi
-
-if test "$opt_purify" = yes; then
-       PURIFY="purify "
-       $as_echo "@%:@define DISABLE_MALLOC_WRAPPERS 1" >>confdefs.h
-
-else
-       PURIFY=
-fi
-
-if test "$opt_purecov" = yes; then
-       PURIFY="${PURIFY}purecov"
-fi
-
-if test "$opt_afs" = yes; then
-       $as_echo "@%:@define AFS 1" >>confdefs.h
-
-fi
-
-if test "$opt_curses" = yes; then
-       prefer_curses=yes
-fi
-
-if test -z "${DEBUGGER_START_FILE}"; then
-       DEBUGGER_START_FILE='${datadir}/bashdb/bashdb-main.inc'
-fi
-
-opt_minimal_config=no
-
-opt_job_control=yes
-opt_alias=yes
-opt_readline=yes
-opt_history=yes
-opt_bang_history=yes
-opt_dirstack=yes
-opt_restricted=yes
-opt_process_subst=yes
-opt_prompt_decoding=yes
-opt_select=yes
-opt_help=yes
-opt_array_variables=yes
-opt_dparen_arith=yes
-opt_extended_glob=yes
-opt_brace_expansion=yes
-opt_disabled_builtins=no
-opt_command_timing=yes
-opt_xpg_echo=no
-opt_strict_posix=no
-opt_cond_command=yes
-opt_cond_regexp=yes
-opt_coproc=yes
-opt_arith_for_command=yes
-opt_net_redirs=yes
-opt_progcomp=yes
-opt_separate_help=no
-opt_multibyte=yes
-opt_debugger=yes
-opt_single_longdoc_strings=yes
-opt_casemod_attrs=yes
-opt_casemod_expansions=yes
-opt_extglob_default=no
-
-opt_static_link=no
-opt_profiling=no
-
-@%:@ Check whether --enable-minimal-config was given.
-if test "${enable_minimal_config+set}" = set; then :
-  enableval=$enable_minimal_config; opt_minimal_config=$enableval
-fi
-
-
-if test $opt_minimal_config = yes; then
-       opt_job_control=no opt_alias=no opt_readline=no
-       opt_history=no opt_bang_history=no opt_dirstack=no
-       opt_restricted=no opt_process_subst=no opt_prompt_decoding=no
-       opt_select=no opt_help=no opt_array_variables=no opt_dparen_arith=no
-       opt_brace_expansion=no opt_disabled_builtins=no opt_command_timing=no
-       opt_extended_glob=no opt_cond_command=no opt_arith_for_command=no
-       opt_net_redirs=no opt_progcomp=no opt_separate_help=no
-       opt_multibyte=yes opt_cond_regexp=no opt_coproc=no
-       opt_casemod_attrs=no opt_casemod_expansions=no opt_extglob_default=no
-fi
-
-@%:@ Check whether --enable-alias was given.
-if test "${enable_alias+set}" = set; then :
-  enableval=$enable_alias; opt_alias=$enableval
-fi
-
-@%:@ Check whether --enable-arith-for-command was given.
-if test "${enable_arith_for_command+set}" = set; then :
-  enableval=$enable_arith_for_command; opt_arith_for_command=$enableval
-fi
-
-@%:@ Check whether --enable-array-variables was given.
-if test "${enable_array_variables+set}" = set; then :
-  enableval=$enable_array_variables; opt_array_variables=$enableval
-fi
-
-@%:@ Check whether --enable-bang-history was given.
-if test "${enable_bang_history+set}" = set; then :
-  enableval=$enable_bang_history; opt_bang_history=$enableval
-fi
-
-@%:@ Check whether --enable-brace-expansion was given.
-if test "${enable_brace_expansion+set}" = set; then :
-  enableval=$enable_brace_expansion; opt_brace_expansion=$enableval
-fi
-
-@%:@ Check whether --enable-casemod-attributes was given.
-if test "${enable_casemod_attributes+set}" = set; then :
-  enableval=$enable_casemod_attributes; opt_casemod_attrs=$enableval
-fi
-
-@%:@ Check whether --enable-casemod-expansions was given.
-if test "${enable_casemod_expansions+set}" = set; then :
-  enableval=$enable_casemod_expansions; opt_casemod_expansions=$enableval
-fi
-
-@%:@ Check whether --enable-command-timing was given.
-if test "${enable_command_timing+set}" = set; then :
-  enableval=$enable_command_timing; opt_command_timing=$enableval
-fi
-
-@%:@ Check whether --enable-cond-command was given.
-if test "${enable_cond_command+set}" = set; then :
-  enableval=$enable_cond_command; opt_cond_command=$enableval
-fi
-
-@%:@ Check whether --enable-cond-regexp was given.
-if test "${enable_cond_regexp+set}" = set; then :
-  enableval=$enable_cond_regexp; opt_cond_regexp=$enableval
-fi
-
-@%:@ Check whether --enable-coprocesses was given.
-if test "${enable_coprocesses+set}" = set; then :
-  enableval=$enable_coprocesses; opt_coproc=$enableval
-fi
-
-@%:@ Check whether --enable-debugger was given.
-if test "${enable_debugger+set}" = set; then :
-  enableval=$enable_debugger; opt_debugger=$enableval
-fi
-
-@%:@ Check whether --enable-directory-stack was given.
-if test "${enable_directory_stack+set}" = set; then :
-  enableval=$enable_directory_stack; opt_dirstack=$enableval
-fi
-
-@%:@ Check whether --enable-disabled-builtins was given.
-if test "${enable_disabled_builtins+set}" = set; then :
-  enableval=$enable_disabled_builtins; opt_disabled_builtins=$enableval
-fi
-
-@%:@ Check whether --enable-dparen-arithmetic was given.
-if test "${enable_dparen_arithmetic+set}" = set; then :
-  enableval=$enable_dparen_arithmetic; opt_dparen_arith=$enableval
-fi
-
-@%:@ Check whether --enable-extended-glob was given.
-if test "${enable_extended_glob+set}" = set; then :
-  enableval=$enable_extended_glob; opt_extended_glob=$enableval
-fi
-
-@%:@ Check whether --enable-extended-glob-default was given.
-if test "${enable_extended_glob_default+set}" = set; then :
-  enableval=$enable_extended_glob_default; opt_extglob_default=$enableval
-fi
-
-@%:@ Check whether --enable-help-builtin was given.
-if test "${enable_help_builtin+set}" = set; then :
-  enableval=$enable_help_builtin; opt_help=$enableval
-fi
-
-@%:@ Check whether --enable-history was given.
-if test "${enable_history+set}" = set; then :
-  enableval=$enable_history; opt_history=$enableval
-fi
-
-@%:@ Check whether --enable-job-control was given.
-if test "${enable_job_control+set}" = set; then :
-  enableval=$enable_job_control; opt_job_control=$enableval
-fi
-
-@%:@ Check whether --enable-multibyte was given.
-if test "${enable_multibyte+set}" = set; then :
-  enableval=$enable_multibyte; opt_multibyte=$enableval
-fi
-
-@%:@ Check whether --enable-net-redirections was given.
-if test "${enable_net_redirections+set}" = set; then :
-  enableval=$enable_net_redirections; opt_net_redirs=$enableval
-fi
-
-@%:@ Check whether --enable-process-substitution was given.
-if test "${enable_process_substitution+set}" = set; then :
-  enableval=$enable_process_substitution; opt_process_subst=$enableval
-fi
-
-@%:@ Check whether --enable-progcomp was given.
-if test "${enable_progcomp+set}" = set; then :
-  enableval=$enable_progcomp; opt_progcomp=$enableval
-fi
-
-@%:@ Check whether --enable-prompt-string-decoding was given.
-if test "${enable_prompt_string_decoding+set}" = set; then :
-  enableval=$enable_prompt_string_decoding; opt_prompt_decoding=$enableval
-fi
-
-@%:@ Check whether --enable-readline was given.
-if test "${enable_readline+set}" = set; then :
-  enableval=$enable_readline; opt_readline=$enableval
-fi
-
-@%:@ Check whether --enable-restricted was given.
-if test "${enable_restricted+set}" = set; then :
-  enableval=$enable_restricted; opt_restricted=$enableval
-fi
-
-@%:@ Check whether --enable-select was given.
-if test "${enable_select+set}" = set; then :
-  enableval=$enable_select; opt_select=$enableval
-fi
-
-@%:@ Check whether --enable-separate-helpfiles was given.
-if test "${enable_separate_helpfiles+set}" = set; then :
-  enableval=$enable_separate_helpfiles; opt_separate_help=$enableval
-fi
-
-@%:@ Check whether --enable-single-help-strings was given.
-if test "${enable_single_help_strings+set}" = set; then :
-  enableval=$enable_single_help_strings; opt_single_longdoc_strings=$enableval
-fi
-
-@%:@ Check whether --enable-strict-posix-default was given.
-if test "${enable_strict_posix_default+set}" = set; then :
-  enableval=$enable_strict_posix_default; opt_strict_posix=$enableval
-fi
-
-@%:@ Check whether --enable-usg-echo-default was given.
-if test "${enable_usg_echo_default+set}" = set; then :
-  enableval=$enable_usg_echo_default; opt_xpg_echo=$enableval
-fi
-
-@%:@ Check whether --enable-xpg-echo-default was given.
-if test "${enable_xpg_echo_default+set}" = set; then :
-  enableval=$enable_xpg_echo_default; opt_xpg_echo=$enableval
-fi
-
-
-@%:@ Check whether --enable-mem-scramble was given.
-if test "${enable_mem_scramble+set}" = set; then :
-  enableval=$enable_mem_scramble; opt_memscramble=$enableval
-fi
-
-@%:@ Check whether --enable-profiling was given.
-if test "${enable_profiling+set}" = set; then :
-  enableval=$enable_profiling; opt_profiling=$enableval
-fi
-
-@%:@ Check whether --enable-static-link was given.
-if test "${enable_static_link+set}" = set; then :
-  enableval=$enable_static_link; opt_static_link=$enableval
-fi
-
-
-
-
-
-
-
-
-
-if test $opt_alias = yes; then
-$as_echo "@%:@define ALIAS 1" >>confdefs.h
-
-fi
-if test $opt_dirstack = yes; then
-$as_echo "@%:@define PUSHD_AND_POPD 1" >>confdefs.h
-
-fi
-if test $opt_restricted = yes; then
-$as_echo "@%:@define RESTRICTED_SHELL 1" >>confdefs.h
-
-fi
-if test $opt_process_subst = yes; then
-$as_echo "@%:@define PROCESS_SUBSTITUTION 1" >>confdefs.h
-
-fi
-if test $opt_prompt_decoding = yes; then
-$as_echo "@%:@define PROMPT_STRING_DECODE 1" >>confdefs.h
-
-fi
-if test $opt_select = yes; then
-$as_echo "@%:@define SELECT_COMMAND 1" >>confdefs.h
-
-fi
-if test $opt_help = yes; then
-$as_echo "@%:@define HELP_BUILTIN 1" >>confdefs.h
-
-fi
-if test $opt_array_variables = yes; then
-$as_echo "@%:@define ARRAY_VARS 1" >>confdefs.h
-
-fi
-if test $opt_dparen_arith = yes; then
-$as_echo "@%:@define DPAREN_ARITHMETIC 1" >>confdefs.h
-
-fi
-if test $opt_brace_expansion = yes; then
-$as_echo "@%:@define BRACE_EXPANSION 1" >>confdefs.h
-
-fi
-if test $opt_disabled_builtins = yes; then
-$as_echo "@%:@define DISABLED_BUILTINS 1" >>confdefs.h
-
-fi
-if test $opt_command_timing = yes; then
-$as_echo "@%:@define COMMAND_TIMING 1" >>confdefs.h
-
-fi
-if test $opt_xpg_echo = yes ; then
-$as_echo "@%:@define DEFAULT_ECHO_TO_XPG 1" >>confdefs.h
-
-fi
-if test $opt_strict_posix = yes; then
-$as_echo "@%:@define STRICT_POSIX 1" >>confdefs.h
-
-fi
-if test $opt_extended_glob = yes ; then
-$as_echo "@%:@define EXTENDED_GLOB 1" >>confdefs.h
-
-fi
-if test $opt_extglob_default = yes; then
-$as_echo "@%:@define EXTGLOB_DEFAULT 1" >>confdefs.h
-
-else
-$as_echo "@%:@define EXTGLOB_DEFAULT 0" >>confdefs.h
-
-fi
-if test $opt_cond_command = yes ; then
-$as_echo "@%:@define COND_COMMAND 1" >>confdefs.h
-
-fi
-if test $opt_cond_regexp = yes ; then
-$as_echo "@%:@define COND_REGEXP 1" >>confdefs.h
-
-fi
-if test $opt_coproc = yes; then
-$as_echo "@%:@define COPROCESS_SUPPORT 1" >>confdefs.h
-
-fi
-if test $opt_arith_for_command = yes; then
-$as_echo "@%:@define ARITH_FOR_COMMAND 1" >>confdefs.h
-
-fi
-if test $opt_net_redirs = yes; then
-$as_echo "@%:@define NETWORK_REDIRECTIONS 1" >>confdefs.h
-
-fi
-if test $opt_progcomp = yes; then
-$as_echo "@%:@define PROGRAMMABLE_COMPLETION 1" >>confdefs.h
-
-fi
-if test $opt_multibyte = no; then
-$as_echo "@%:@define NO_MULTIBYTE_SUPPORT 1" >>confdefs.h
-
-fi
-if test $opt_debugger = yes; then
-$as_echo "@%:@define DEBUGGER 1" >>confdefs.h
-
-fi
-if test $opt_casemod_attrs = yes; then
-$as_echo "@%:@define CASEMOD_ATTRS 1" >>confdefs.h
-
-fi
-if test $opt_casemod_expansions = yes; then
-$as_echo "@%:@define CASEMOD_EXPANSIONS 1" >>confdefs.h
-
-fi
-
-if test $opt_memscramble = yes; then
-$as_echo "@%:@define MEMSCRAMBLE 1" >>confdefs.h
-
-fi
-
-if test "$opt_minimal_config" = yes; then
-       TESTSCRIPT=run-minimal
-else
-       TESTSCRIPT=run-all
-fi
-
-HELPDIR= HELPDIRDEFINE= HELPINSTALL= HELPFILES_TARGET=
-if test "$opt_separate_help" != no; then
-       if test "$opt_separate_help" = "yes" ; then
-               HELPDIR='${datadir}/bash'
-       else
-               HELPDIR=$opt_separate_help
-       fi
-       HELPDIRDEFINE='-H ${HELPDIR}'
-       HELPINSTALL='install-help'
-       HELPFILES_TARGET='helpdoc'
-fi
-HELPSTRINGS=
-if test "$opt_single_longdoc_strings" != "yes"; then
-       HELPSTRINGS='-S'
-fi
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-echo ""
-echo "Beginning configuration for bash-$BASHVERS-$RELSTATUS for ${host_cpu}-${host_vendor}-${host_os}"
-echo ""
-
-ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-if test -n "$ac_tool_prefix"; then
-  # Extract the first word of "${ac_tool_prefix}gcc", so it can be a program name with args.
-set dummy ${ac_tool_prefix}gcc; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_CC+:} false; then :
-  $as_echo_n "(cached) " >&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 { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_prog_CC="${ac_tool_prefix}gcc"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-fi
-fi
-CC=$ac_cv_prog_CC
-if test -n "$CC"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
-$as_echo "$CC" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-fi
-if test -z "$ac_cv_prog_CC"; then
-  ac_ct_CC=$CC
-  # Extract the first word of "gcc", so it can be a program name with args.
-set dummy gcc; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_CC+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test -n "$ac_ct_CC"; then
-  ac_cv_prog_ac_ct_CC="$ac_ct_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 { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_prog_ac_ct_CC="gcc"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-fi
-fi
-ac_ct_CC=$ac_cv_prog_ac_ct_CC
-if test -n "$ac_ct_CC"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5
-$as_echo "$ac_ct_CC" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-  if test "x$ac_ct_CC" = x; then
-    CC=""
-  else
-    case $cross_compiling:$ac_tool_warned in
-yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
-ac_tool_warned=yes ;;
-esac
-    CC=$ac_ct_CC
-  fi
-else
-  CC="$ac_cv_prog_CC"
-fi
-
-if test -z "$CC"; then
-          if test -n "$ac_tool_prefix"; then
-    # Extract the first word of "${ac_tool_prefix}cc", so it can be a program name with args.
-set dummy ${ac_tool_prefix}cc; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_CC+:} false; then :
-  $as_echo_n "(cached) " >&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 { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_prog_CC="${ac_tool_prefix}cc"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-fi
-fi
-CC=$ac_cv_prog_CC
-if test -n "$CC"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
-$as_echo "$CC" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-  fi
-fi
-if test -z "$CC"; then
-  # Extract the first word of "cc", so it can be a program name with args.
-set dummy cc; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_CC+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test -n "$CC"; then
-  ac_cv_prog_CC="$CC" # Let the user override the test.
-else
-  ac_prog_rejected=no
-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 { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    if test "$as_dir/$ac_word$ac_exec_ext" = "/usr/ucb/cc"; then
-       ac_prog_rejected=yes
-       continue
-     fi
-    ac_cv_prog_CC="cc"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-if test $ac_prog_rejected = yes; then
-  # We found a bogon in the path, so make sure we never use it.
-  set dummy $ac_cv_prog_CC
-  shift
-  if test $@%:@ != 0; then
-    # We chose a different compiler from the bogus one.
-    # However, it has the same basename, so the bogon will be chosen
-    # first if we set CC to just the basename; use the full file name.
-    shift
-    ac_cv_prog_CC="$as_dir/$ac_word${1+' '}$@"
-  fi
-fi
-fi
-fi
-CC=$ac_cv_prog_CC
-if test -n "$CC"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
-$as_echo "$CC" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-fi
-if test -z "$CC"; then
-  if test -n "$ac_tool_prefix"; then
-  for ac_prog in cl.exe
-  do
-    # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.
-set dummy $ac_tool_prefix$ac_prog; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_CC+:} false; then :
-  $as_echo_n "(cached) " >&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 { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_prog_CC="$ac_tool_prefix$ac_prog"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-fi
-fi
-CC=$ac_cv_prog_CC
-if test -n "$CC"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
-$as_echo "$CC" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-    test -n "$CC" && break
-  done
-fi
-if test -z "$CC"; then
-  ac_ct_CC=$CC
-  for ac_prog in cl.exe
-do
-  # Extract the first word of "$ac_prog", so it can be a program name with args.
-set dummy $ac_prog; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_CC+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test -n "$ac_ct_CC"; then
-  ac_cv_prog_ac_ct_CC="$ac_ct_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 { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_prog_ac_ct_CC="$ac_prog"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-fi
-fi
-ac_ct_CC=$ac_cv_prog_ac_ct_CC
-if test -n "$ac_ct_CC"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5
-$as_echo "$ac_ct_CC" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-  test -n "$ac_ct_CC" && break
-done
-
-  if test "x$ac_ct_CC" = x; then
-    CC=""
-  else
-    case $cross_compiling:$ac_tool_warned in
-yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
-ac_tool_warned=yes ;;
-esac
-    CC=$ac_ct_CC
-  fi
-fi
-
-fi
-
-
-test -z "$CC" && { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error $? "no acceptable C compiler found in \$PATH
-See \`config.log' for more details" "$LINENO" 5; }
-
-# Provide some information about the compiler.
-$as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler version" >&5
-set X $ac_compile
-ac_compiler=$2
-for ac_option in --version -v -V -qversion; do
-  { { ac_try="$ac_compiler $ac_option >&5"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
-  (eval "$ac_compiler $ac_option >&5") 2>conftest.err
-  ac_status=$?
-  if test -s conftest.err; then
-    sed '10a\
-... rest of stderr output deleted ...
-         10q' conftest.err >conftest.er1
-    cat conftest.er1 >&5
-  fi
-  rm -f conftest.er1 conftest.err
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-  test $ac_status = 0; }
-done
-
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-int
-main ()
-{
-
-  ;
-  return 0;
-}
-_ACEOF
-ac_clean_files_save=$ac_clean_files
-ac_clean_files="$ac_clean_files a.out a.out.dSYM a.exe b.out"
-# Try to create an executable without -o first, disregard a.out.
-# It will help us diagnose broken compilers, and finding out an intuition
-# of exeext.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the C compiler works" >&5
-$as_echo_n "checking whether the C compiler works... " >&6; }
-ac_link_default=`$as_echo "$ac_link" | sed 's/ -o *conftest[^ ]*//'`
-
-# The possible output files:
-ac_files="a.out conftest.exe conftest a.exe a_out.exe b.out conftest.*"
-
-ac_rmfiles=
-for ac_file in $ac_files
-do
-  case $ac_file in
-    *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj ) ;;
-    * ) ac_rmfiles="$ac_rmfiles $ac_file";;
-  esac
-done
-rm -f $ac_rmfiles
-
-if { { ac_try="$ac_link_default"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
-  (eval "$ac_link_default") 2>&5
-  ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-  test $ac_status = 0; }; then :
-  # Autoconf-2.13 could set the ac_cv_exeext variable to `no'.
-# So ignore a value of `no', otherwise this would lead to `EXEEXT = no'
-# in a Makefile.  We should not override ac_cv_exeext if it was cached,
-# so that the user can short-circuit this test for compilers unknown to
-# Autoconf.
-for ac_file in $ac_files ''
-do
-  test -f "$ac_file" || continue
-  case $ac_file in
-    *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj )
-       ;;
-    [ab].out )
-       # We found the default executable, but exeext='' is most
-       # certainly right.
-       break;;
-    *.* )
-       if test "${ac_cv_exeext+set}" = set && test "$ac_cv_exeext" != no;
-       then :; else
-          ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'`
-       fi
-       # We set ac_cv_exeext here because the later test for it is not
-       # safe: cross compilers may not add the suffix if given an `-o'
-       # argument, so we may need to know it at that point already.
-       # Even if this section looks crufty: it has the advantage of
-       # actually working.
-       break;;
-    * )
-       break;;
-  esac
-done
-test "$ac_cv_exeext" = no && ac_cv_exeext=
-
-else
-  ac_file=''
-fi
-if test -z "$ac_file"; then :
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-$as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error 77 "C compiler cannot create executables
-See \`config.log' for more details" "$LINENO" 5; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler default output file name" >&5
-$as_echo_n "checking for C compiler default output file name... " >&6; }
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_file" >&5
-$as_echo "$ac_file" >&6; }
-ac_exeext=$ac_cv_exeext
-
-rm -f -r a.out a.out.dSYM a.exe conftest$ac_cv_exeext b.out
-ac_clean_files=$ac_clean_files_save
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for suffix of executables" >&5
-$as_echo_n "checking for suffix of executables... " >&6; }
-if { { ac_try="$ac_link"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
-  (eval "$ac_link") 2>&5
-  ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-  test $ac_status = 0; }; then :
-  # If both `conftest.exe' and `conftest' are `present' (well, observable)
-# catch `conftest.exe'.  For instance with Cygwin, `ls conftest' will
-# work properly (i.e., refer to `conftest.exe'), while it won't with
-# `rm'.
-for ac_file in conftest.exe conftest conftest.*; do
-  test -f "$ac_file" || continue
-  case $ac_file in
-    *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj ) ;;
-    *.* ) ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'`
-         break;;
-    * ) break;;
-  esac
-done
-else
-  { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error $? "cannot compute suffix of executables: cannot compile and link
-See \`config.log' for more details" "$LINENO" 5; }
-fi
-rm -f conftest conftest$ac_cv_exeext
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_exeext" >&5
-$as_echo "$ac_cv_exeext" >&6; }
-
-rm -f conftest.$ac_ext
-EXEEXT=$ac_cv_exeext
-ac_exeext=$EXEEXT
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-@%:@include <stdio.h>
-int
-main ()
-{
-FILE *f = fopen ("conftest.out", "w");
- return ferror (f) || fclose (f) != 0;
-
-  ;
-  return 0;
-}
-_ACEOF
-ac_clean_files="$ac_clean_files conftest.out"
-# Check that the compiler produces executables we can run.  If not, either
-# the compiler is broken, or we cross compile.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are cross compiling" >&5
-$as_echo_n "checking whether we are cross compiling... " >&6; }
-if test "$cross_compiling" != yes; then
-  { { ac_try="$ac_link"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
-  (eval "$ac_link") 2>&5
-  ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-  test $ac_status = 0; }
-  if { ac_try='./conftest$ac_cv_exeext'
-  { { case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
-  (eval "$ac_try") 2>&5
-  ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-  test $ac_status = 0; }; }; then
-    cross_compiling=no
-  else
-    if test "$cross_compiling" = maybe; then
-       cross_compiling=yes
-    else
-       { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error $? "cannot run C compiled programs.
-If you meant to cross compile, use \`--host'.
-See \`config.log' for more details" "$LINENO" 5; }
-    fi
-  fi
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $cross_compiling" >&5
-$as_echo "$cross_compiling" >&6; }
-
-rm -f conftest.$ac_ext conftest$ac_cv_exeext conftest.out
-ac_clean_files=$ac_clean_files_save
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for suffix of object files" >&5
-$as_echo_n "checking for suffix of object files... " >&6; }
-if ${ac_cv_objext+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-int
-main ()
-{
-
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.o conftest.obj
-if { { ac_try="$ac_compile"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
-  (eval "$ac_compile") 2>&5
-  ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-  test $ac_status = 0; }; then :
-  for ac_file in conftest.o conftest.obj conftest.*; do
-  test -f "$ac_file" || continue;
-  case $ac_file in
-    *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM ) ;;
-    *) ac_cv_objext=`expr "$ac_file" : '.*\.\(.*\)'`
-       break;;
-  esac
-done
-else
-  $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error $? "cannot compute suffix of object files: cannot compile
-See \`config.log' for more details" "$LINENO" 5; }
-fi
-rm -f conftest.$ac_cv_objext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_objext" >&5
-$as_echo "$ac_cv_objext" >&6; }
-OBJEXT=$ac_cv_objext
-ac_objext=$OBJEXT
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are using the GNU C compiler" >&5
-$as_echo_n "checking whether we are using the GNU C compiler... " >&6; }
-if ${ac_cv_c_compiler_gnu+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-int
-main ()
-{
-#ifndef __GNUC__
-       choke me
-#endif
-
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_compiler_gnu=yes
-else
-  ac_compiler_gnu=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-ac_cv_c_compiler_gnu=$ac_compiler_gnu
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_compiler_gnu" >&5
-$as_echo "$ac_cv_c_compiler_gnu" >&6; }
-if test $ac_compiler_gnu = yes; then
-  GCC=yes
-else
-  GCC=
-fi
-ac_test_CFLAGS=${CFLAGS+set}
-ac_save_CFLAGS=$CFLAGS
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC accepts -g" >&5
-$as_echo_n "checking whether $CC accepts -g... " >&6; }
-if ${ac_cv_prog_cc_g+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_save_c_werror_flag=$ac_c_werror_flag
-   ac_c_werror_flag=yes
-   ac_cv_prog_cc_g=no
-   CFLAGS="-g"
-   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-int
-main ()
-{
-
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_cv_prog_cc_g=yes
-else
-  CFLAGS=""
-      cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-int
-main ()
-{
-
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  
-else
-  ac_c_werror_flag=$ac_save_c_werror_flag
-        CFLAGS="-g"
-        cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-int
-main ()
-{
-
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_cv_prog_cc_g=yes
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-   ac_c_werror_flag=$ac_save_c_werror_flag
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_g" >&5
-$as_echo "$ac_cv_prog_cc_g" >&6; }
-if test "$ac_test_CFLAGS" = set; then
-  CFLAGS=$ac_save_CFLAGS
-elif test $ac_cv_prog_cc_g = yes; then
-  if test "$GCC" = yes; then
-    CFLAGS="-g -O2"
-  else
-    CFLAGS="-g"
-  fi
-else
-  if test "$GCC" = yes; then
-    CFLAGS="-O2"
-  else
-    CFLAGS=
-  fi
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $CC option to accept ISO C89" >&5
-$as_echo_n "checking for $CC option to accept ISO C89... " >&6; }
-if ${ac_cv_prog_cc_c89+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_cv_prog_cc_c89=no
-ac_save_CC=$CC
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <stdarg.h>
-#include <stdio.h>
-#include <sys/types.h>
-#include <sys/stat.h>
-/* Most of the following tests are stolen from RCS 5.7's src/conf.sh.  */
-struct buf { int x; };
-FILE * (*rcsopen) (struct buf *, struct stat *, int);
-static char *e (p, i)
-     char **p;
-     int i;
-{
-  return p[i];
-}
-static char *f (char * (*g) (char **, int), char **p, ...)
-{
-  char *s;
-  va_list v;
-  va_start (v,p);
-  s = g (p, va_arg (v,int));
-  va_end (v);
-  return s;
-}
-
-/* OSF 4.0 Compaq cc is some sort of almost-ANSI by default.  It has
-   function prototypes and stuff, but not '\xHH' hex character constants.
-   These don't provoke an error unfortunately, instead are silently treated
-   as 'x'.  The following induces an error, until -std is added to get
-   proper ANSI mode.  Curiously '\x00'!='x' always comes out true, for an
-   array size at least.  It's necessary to write '\x00'==0 to get something
-   that's true only with -std.  */
-int osf4_cc_array ['\x00' == 0 ? 1 : -1];
-
-/* IBM C 6 for AIX is almost-ANSI by default, but it replaces macro parameters
-   inside strings and character constants.  */
-#define FOO(x) 'x'
-int xlc6_cc_array[FOO(a) == 'x' ? 1 : -1];
-
-int test (int i, double x);
-struct s1 {int (*f) (int a);};
-struct s2 {int (*f) (double a);};
-int pairnames (int, char **, FILE *(*)(struct buf *, struct stat *, int), int, int);
-int argc;
-char **argv;
-int
-main ()
-{
-return f (e, argv, 0) != argv[0]  ||  f (e, argv, 1) != argv[1];
-  ;
-  return 0;
-}
-_ACEOF
-for ac_arg in '' -qlanglvl=extc89 -qlanglvl=ansi -std \
-       -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__"
-do
-  CC="$ac_save_CC $ac_arg"
-  if ac_fn_c_try_compile "$LINENO"; then :
-  ac_cv_prog_cc_c89=$ac_arg
-fi
-rm -f core conftest.err conftest.$ac_objext
-  test "x$ac_cv_prog_cc_c89" != "xno" && break
-done
-rm -f conftest.$ac_ext
-CC=$ac_save_CC
-
-fi
-# AC_CACHE_VAL
-case "x$ac_cv_prog_cc_c89" in
-  x)
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: none needed" >&5
-$as_echo "none needed" >&6; } ;;
-  xno)
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: unsupported" >&5
-$as_echo "unsupported" >&6; } ;;
-  *)
-    CC="$CC $ac_cv_prog_cc_c89"
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_c89" >&5
-$as_echo "$ac_cv_prog_cc_c89" >&6; } ;;
-esac
-if test "x$ac_cv_prog_cc_c89" != xno; then :
-  
-fi
-
-ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-
-
-
-
-        { $as_echo "$as_me:${as_lineno-$LINENO}: checking for strerror in -lcposix" >&5
-$as_echo_n "checking for strerror in -lcposix... " >&6; }
-if ${ac_cv_lib_cposix_strerror+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_check_lib_save_LIBS=$LIBS
-LIBS="-lcposix  $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-/* Override any GCC internal prototype to avoid an error.
-   Use char because int might match the return type of a GCC
-   builtin and then its argument prototype would still apply.  */
-#ifdef __cplusplus
-extern "C"
-#endif
-char strerror ();
-int
-main ()
-{
-return strerror ();
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  ac_cv_lib_cposix_strerror=yes
-else
-  ac_cv_lib_cposix_strerror=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_cposix_strerror" >&5
-$as_echo "$ac_cv_lib_cposix_strerror" >&6; }
-if test "x$ac_cv_lib_cposix_strerror" = xyes; then :
-  LIBS="$LIBS -lcposix"
-fi
-
-  
-
-ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to run the C preprocessor" >&5
-$as_echo_n "checking how to run the C preprocessor... " >&6; }
-# On Suns, sometimes $CPP names a directory.
-if test -n "$CPP" && test -d "$CPP"; then
-  CPP=
-fi
-if test -z "$CPP"; then
-  if ${ac_cv_prog_CPP+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-      # Double quotes because CPP needs to be expanded
-    for CPP in "$CC -E" "$CC -E -traditional-cpp" "/lib/cpp"
-    do
-      ac_preproc_ok=false
-for ac_c_preproc_warn_flag in '' yes
-do
-  # Use a header file that comes with gcc, so configuring glibc
-  # with a fresh cross-compiler works.
-  # Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
-  # <limits.h> exists even on freestanding compilers.
-  # On the NeXT, cc -E runs the code through the compiler's parser,
-  # not just through cpp. "Syntax error" is here to catch this case.
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-@%:@ifdef __STDC__
-@%:@ include <limits.h>
-@%:@else
-@%:@ include <assert.h>
-@%:@endif
-                    Syntax error
-_ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
-  
-else
-  # Broken: fails on valid input.
-continue
-fi
-rm -f conftest.err conftest.i conftest.$ac_ext
-
-  # OK, works on sane cases.  Now check whether nonexistent headers
-  # can be detected and how.
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-@%:@include <ac_nonexistent.h>
-_ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
-  # Broken: success on invalid input.
-continue
-else
-  # Passes both tests.
-ac_preproc_ok=:
-break
-fi
-rm -f conftest.err conftest.i conftest.$ac_ext
-
-done
-# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.
-rm -f conftest.i conftest.err conftest.$ac_ext
-if $ac_preproc_ok; then :
-  break
-fi
-
-    done
-    ac_cv_prog_CPP=$CPP
-  
-fi
-  CPP=$ac_cv_prog_CPP
-else
-  ac_cv_prog_CPP=$CPP
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $CPP" >&5
-$as_echo "$CPP" >&6; }
-ac_preproc_ok=false
-for ac_c_preproc_warn_flag in '' yes
-do
-  # Use a header file that comes with gcc, so configuring glibc
-  # with a fresh cross-compiler works.
-  # Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
-  # <limits.h> exists even on freestanding compilers.
-  # On the NeXT, cc -E runs the code through the compiler's parser,
-  # not just through cpp. "Syntax error" is here to catch this case.
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-@%:@ifdef __STDC__
-@%:@ include <limits.h>
-@%:@else
-@%:@ include <assert.h>
-@%:@endif
-                    Syntax error
-_ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
-  
-else
-  # Broken: fails on valid input.
-continue
-fi
-rm -f conftest.err conftest.i conftest.$ac_ext
-
-  # OK, works on sane cases.  Now check whether nonexistent headers
-  # can be detected and how.
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-@%:@include <ac_nonexistent.h>
-_ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
-  # Broken: success on invalid input.
-continue
-else
-  # Passes both tests.
-ac_preproc_ok=:
-break
-fi
-rm -f conftest.err conftest.i conftest.$ac_ext
-
-done
-# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.
-rm -f conftest.i conftest.err conftest.$ac_ext
-if $ac_preproc_ok; then :
-  
-else
-  { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error $? "C preprocessor \"$CPP\" fails sanity check
-See \`config.log' for more details" "$LINENO" 5; }
-fi
-
-ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for grep that handles long lines and -e" >&5
-$as_echo_n "checking for grep that handles long lines and -e... " >&6; }
-if ${ac_cv_path_GREP+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test -z "$GREP"; then
-  ac_path_GREP_found=false
-  # Loop through the user's path and test for each of PROGNAME-LIST
-  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_prog in grep ggrep; do
-    for ac_exec_ext in '' $ac_executable_extensions; do
-      ac_path_GREP="$as_dir/$ac_prog$ac_exec_ext"
-      { test -f "$ac_path_GREP" && $as_test_x "$ac_path_GREP"; } || continue
-# Check for GNU ac_path_GREP and select it if it is found.
-  # Check for GNU $ac_path_GREP
-case `"$ac_path_GREP" --version 2>&1` in
-*GNU*)
-  ac_cv_path_GREP="$ac_path_GREP" ac_path_GREP_found=:;;
-*)
-  ac_count=0
-  $as_echo_n 0123456789 >"conftest.in"
-  while :
-  do
-    cat "conftest.in" "conftest.in" >"conftest.tmp"
-    mv "conftest.tmp" "conftest.in"
-    cp "conftest.in" "conftest.nl"
-    $as_echo 'GREP' >> "conftest.nl"
-    "$ac_path_GREP" -e 'GREP$' -e '-(cannot match)-' < "conftest.nl" >"conftest.out" 2>/dev/null || break
-    diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break
-    as_fn_arith $ac_count + 1 && ac_count=$as_val
-    if test $ac_count -gt ${ac_path_GREP_max-0}; then
-      # Best one so far, save it but keep looking for a better one
-      ac_cv_path_GREP="$ac_path_GREP"
-      ac_path_GREP_max=$ac_count
-    fi
-    # 10*(2^10) chars as input seems more than enough
-    test $ac_count -gt 10 && break
-  done
-  rm -f conftest.in conftest.tmp conftest.nl conftest.out;;
-esac
-
-      $ac_path_GREP_found && break 3
-    done
-  done
-  done
-IFS=$as_save_IFS
-  if test -z "$ac_cv_path_GREP"; then
-    as_fn_error $? "no acceptable grep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5
-  fi
-else
-  ac_cv_path_GREP=$GREP
-fi
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_GREP" >&5
-$as_echo "$ac_cv_path_GREP" >&6; }
- GREP="$ac_cv_path_GREP"
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for egrep" >&5
-$as_echo_n "checking for egrep... " >&6; }
-if ${ac_cv_path_EGREP+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if echo a | $GREP -E '(a|b)' >/dev/null 2>&1
-   then ac_cv_path_EGREP="$GREP -E"
-   else
-     if test -z "$EGREP"; then
-  ac_path_EGREP_found=false
-  # Loop through the user's path and test for each of PROGNAME-LIST
-  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_prog in egrep; do
-    for ac_exec_ext in '' $ac_executable_extensions; do
-      ac_path_EGREP="$as_dir/$ac_prog$ac_exec_ext"
-      { test -f "$ac_path_EGREP" && $as_test_x "$ac_path_EGREP"; } || continue
-# Check for GNU ac_path_EGREP and select it if it is found.
-  # Check for GNU $ac_path_EGREP
-case `"$ac_path_EGREP" --version 2>&1` in
-*GNU*)
-  ac_cv_path_EGREP="$ac_path_EGREP" ac_path_EGREP_found=:;;
-*)
-  ac_count=0
-  $as_echo_n 0123456789 >"conftest.in"
-  while :
-  do
-    cat "conftest.in" "conftest.in" >"conftest.tmp"
-    mv "conftest.tmp" "conftest.in"
-    cp "conftest.in" "conftest.nl"
-    $as_echo 'EGREP' >> "conftest.nl"
-    "$ac_path_EGREP" 'EGREP$' < "conftest.nl" >"conftest.out" 2>/dev/null || break
-    diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break
-    as_fn_arith $ac_count + 1 && ac_count=$as_val
-    if test $ac_count -gt ${ac_path_EGREP_max-0}; then
-      # Best one so far, save it but keep looking for a better one
-      ac_cv_path_EGREP="$ac_path_EGREP"
-      ac_path_EGREP_max=$ac_count
-    fi
-    # 10*(2^10) chars as input seems more than enough
-    test $ac_count -gt 10 && break
-  done
-  rm -f conftest.in conftest.tmp conftest.nl conftest.out;;
-esac
-
-      $ac_path_EGREP_found && break 3
-    done
-  done
-  done
-IFS=$as_save_IFS
-  if test -z "$ac_cv_path_EGREP"; then
-    as_fn_error $? "no acceptable egrep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5
-  fi
-else
-  ac_cv_path_EGREP=$EGREP
-fi
-
-   fi
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_EGREP" >&5
-$as_echo "$ac_cv_path_EGREP" >&6; }
- EGREP="$ac_cv_path_EGREP"
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for ANSI C header files" >&5
-$as_echo_n "checking for ANSI C header files... " >&6; }
-if ${ac_cv_header_stdc+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <stdlib.h>
-#include <stdarg.h>
-#include <string.h>
-#include <float.h>
-
-int
-main ()
-{
-
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_cv_header_stdc=yes
-else
-  ac_cv_header_stdc=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-
-if test $ac_cv_header_stdc = yes; then
-  # SunOS 4.x string.h does not declare mem*, contrary to ANSI.
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <string.h>
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "memchr" >/dev/null 2>&1; then :
-  
-else
-  ac_cv_header_stdc=no
-fi
-rm -f conftest*
-
-fi
-
-if test $ac_cv_header_stdc = yes; then
-  # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI.
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <stdlib.h>
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "free" >/dev/null 2>&1; then :
-  
-else
-  ac_cv_header_stdc=no
-fi
-rm -f conftest*
-
-fi
-
-if test $ac_cv_header_stdc = yes; then
-  # /bin/cc in Irix-4.0.5 gets non-ANSI ctype macros unless using -ansi.
-  if test "$cross_compiling" = yes; then :
-  :
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <ctype.h>
-#include <stdlib.h>
-#if ((' ' & 0x0FF) == 0x020)
-# define ISLOWER(c) ('a' <= (c) && (c) <= 'z')
-# define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c))
-#else
-# define ISLOWER(c) \
-                  (('a' <= (c) && (c) <= 'i') \
-                    || ('j' <= (c) && (c) <= 'r') \
-                    || ('s' <= (c) && (c) <= 'z'))
-# define TOUPPER(c) (ISLOWER(c) ? ((c) | 0x40) : (c))
-#endif
-
-#define XOR(e, f) (((e) && !(f)) || (!(e) && (f)))
-int
-main ()
-{
-  int i;
-  for (i = 0; i < 256; i++)
-    if (XOR (islower (i), ISLOWER (i))
-       || toupper (i) != TOUPPER (i))
-      return 2;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-  
-else
-  ac_cv_header_stdc=no
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-fi
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_stdc" >&5
-$as_echo "$ac_cv_header_stdc" >&6; }
-if test $ac_cv_header_stdc = yes; then
-  
-$as_echo "@%:@define STDC_HEADERS 1" >>confdefs.h
-
-fi
-
-# On IRIX 5.3, sys/types and inttypes.h are conflicting.
-for ac_header in sys/types.h sys/stat.h stdlib.h string.h memory.h strings.h \
-                 inttypes.h stdint.h unistd.h
-do :
-  as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
-ac_fn_c_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default
-"
-if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-@%:@define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
-fi
-
-done
-
-
-
-  ac_fn_c_check_header_mongrel "$LINENO" "minix/config.h" "ac_cv_header_minix_config_h" "$ac_includes_default"
-if test "x$ac_cv_header_minix_config_h" = xyes; then :
-  MINIX=yes
-else
-  MINIX=
-fi
-
-
-  if test "$MINIX" = yes; then
-    
-$as_echo "@%:@define _POSIX_SOURCE 1" >>confdefs.h
-
-    
-$as_echo "@%:@define _POSIX_1_SOURCE 2" >>confdefs.h
-
-    
-$as_echo "@%:@define _MINIX 1" >>confdefs.h
-
-  fi
-
-  
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether it is safe to define __EXTENSIONS__" >&5
-$as_echo_n "checking whether it is safe to define __EXTENSIONS__... " >&6; }
-if ${ac_cv_safe_to_define___extensions__+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#        define __EXTENSIONS__ 1
-         $ac_includes_default
-int
-main ()
-{
-
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_cv_safe_to_define___extensions__=yes
-else
-  ac_cv_safe_to_define___extensions__=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_safe_to_define___extensions__" >&5
-$as_echo "$ac_cv_safe_to_define___extensions__" >&6; }
-  test $ac_cv_safe_to_define___extensions__ = yes &&
-    $as_echo "@%:@define __EXTENSIONS__ 1" >>confdefs.h
-
-  $as_echo "@%:@define _ALL_SOURCE 1" >>confdefs.h
-
-  $as_echo "@%:@define _GNU_SOURCE 1" >>confdefs.h
-
-  $as_echo "@%:@define _POSIX_PTHREAD_SEMANTICS 1" >>confdefs.h
-
-  $as_echo "@%:@define _TANDEM_SOURCE 1" >>confdefs.h
-
-
-
-
-@%:@ Check whether --enable-largefile was given.
-if test "${enable_largefile+set}" = set; then :
-  enableval=$enable_largefile; 
-fi
-
-if test "$enable_largefile" != no; then
-
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for special C compiler options needed for large files" >&5
-$as_echo_n "checking for special C compiler options needed for large files... " >&6; }
-if ${ac_cv_sys_largefile_CC+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_cv_sys_largefile_CC=no
-     if test "$GCC" != yes; then
-       ac_save_CC=$CC
-       while :; do
-        # IRIX 6.2 and later do not support large files by default,
-        # so use the C compiler's -n32 option if that helps.
-        cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-@%:@include <sys/types.h>
- /* Check that off_t can represent 2**63 - 1 correctly.
-    We can't simply define LARGE_OFF_T to be 9223372036854775807,
-    since some C++ compilers masquerading as C compilers
-    incorrectly reject 9223372036854775807.  */
-@%:@define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62))
-  int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721
-                      && LARGE_OFF_T % 2147483647 == 1)
-                     ? 1 : -1];
-int
-main ()
-{
-
-  ;
-  return 0;
-}
-_ACEOF
-        if ac_fn_c_try_compile "$LINENO"; then :
-  break
-fi
-rm -f core conftest.err conftest.$ac_objext
-        CC="$CC -n32"
-        if ac_fn_c_try_compile "$LINENO"; then :
-  ac_cv_sys_largefile_CC=' -n32'; break
-fi
-rm -f core conftest.err conftest.$ac_objext
-        break
-       done
-       CC=$ac_save_CC
-       rm -f conftest.$ac_ext
-    fi
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sys_largefile_CC" >&5
-$as_echo "$ac_cv_sys_largefile_CC" >&6; }
-  if test "$ac_cv_sys_largefile_CC" != no; then
-    CC=$CC$ac_cv_sys_largefile_CC
-  fi
-
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for _FILE_OFFSET_BITS value needed for large files" >&5
-$as_echo_n "checking for _FILE_OFFSET_BITS value needed for large files... " >&6; }
-if ${ac_cv_sys_file_offset_bits+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  while :; do
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-@%:@include <sys/types.h>
- /* Check that off_t can represent 2**63 - 1 correctly.
-    We can't simply define LARGE_OFF_T to be 9223372036854775807,
-    since some C++ compilers masquerading as C compilers
-    incorrectly reject 9223372036854775807.  */
-@%:@define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62))
-  int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721
-                      && LARGE_OFF_T % 2147483647 == 1)
-                     ? 1 : -1];
-int
-main ()
-{
-
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_cv_sys_file_offset_bits=no; break
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-@%:@define _FILE_OFFSET_BITS 64
-@%:@include <sys/types.h>
- /* Check that off_t can represent 2**63 - 1 correctly.
-    We can't simply define LARGE_OFF_T to be 9223372036854775807,
-    since some C++ compilers masquerading as C compilers
-    incorrectly reject 9223372036854775807.  */
-@%:@define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62))
-  int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721
-                      && LARGE_OFF_T % 2147483647 == 1)
-                     ? 1 : -1];
-int
-main ()
-{
-
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_cv_sys_file_offset_bits=64; break
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  ac_cv_sys_file_offset_bits=unknown
-  break
-done
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sys_file_offset_bits" >&5
-$as_echo "$ac_cv_sys_file_offset_bits" >&6; }
-case $ac_cv_sys_file_offset_bits in #(
-  no | unknown) ;;
-  *) 
-cat >>confdefs.h <<_ACEOF
-@%:@define _FILE_OFFSET_BITS $ac_cv_sys_file_offset_bits
-_ACEOF
-;;
-esac
-rm -rf conftest*
-  if test $ac_cv_sys_file_offset_bits = unknown; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for _LARGE_FILES value needed for large files" >&5
-$as_echo_n "checking for _LARGE_FILES value needed for large files... " >&6; }
-if ${ac_cv_sys_large_files+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  while :; do
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-@%:@include <sys/types.h>
- /* Check that off_t can represent 2**63 - 1 correctly.
-    We can't simply define LARGE_OFF_T to be 9223372036854775807,
-    since some C++ compilers masquerading as C compilers
-    incorrectly reject 9223372036854775807.  */
-@%:@define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62))
-  int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721
-                      && LARGE_OFF_T % 2147483647 == 1)
-                     ? 1 : -1];
-int
-main ()
-{
-
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_cv_sys_large_files=no; break
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-@%:@define _LARGE_FILES 1
-@%:@include <sys/types.h>
- /* Check that off_t can represent 2**63 - 1 correctly.
-    We can't simply define LARGE_OFF_T to be 9223372036854775807,
-    since some C++ compilers masquerading as C compilers
-    incorrectly reject 9223372036854775807.  */
-@%:@define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62))
-  int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721
-                      && LARGE_OFF_T % 2147483647 == 1)
-                     ? 1 : -1];
-int
-main ()
-{
-
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_cv_sys_large_files=1; break
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  ac_cv_sys_large_files=unknown
-  break
-done
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sys_large_files" >&5
-$as_echo "$ac_cv_sys_large_files" >&6; }
-case $ac_cv_sys_large_files in #(
-  no | unknown) ;;
-  *) 
-cat >>confdefs.h <<_ACEOF
-@%:@define _LARGE_FILES $ac_cv_sys_large_files
-_ACEOF
-;;
-esac
-rm -rf conftest*
-  fi
-fi
-
-
-
-SIGNAMES_O=
-SIGNAMES_H=lsignames.h
-
-
-
-CROSS_COMPILE=
-if test "x$cross_compiling" = "xyes"; then
-    case "${host}" in
-    *-cygwin*)
-       cross_cache=${srcdir}/cross-build/cygwin32.cache
-       ;;
-    *-mingw*)
-       cross_cache=${srcdir}/cross-build/cygwin32.cache
-       ;;
-    i[3456]86-*-beos*)
-       cross_cache=${srcdir}/cross-build/x86-beos.cache
-       ;;
-    *) echo "configure: cross-compiling for $host is not supported" >&2
-       ;;
-    esac
-    if test -n "${cross_cache}" && test -r "${cross_cache}"; then
-       echo "loading cross-build cache file ${cross_cache}"
-       . ${cross_cache}
-    fi
-    unset cross_cache
-    SIGNAMES_O='signames.o'
-    CROSS_COMPILE='-DCROSS_COMPILING'
-    
-fi
-
-
-
-
-if test -z "$CFLAGS"; then
-       AUTO_CFLAGS="-g ${GCC+-O2}"
-       AUTO_LDFLAGS="-g ${GCC+-O2}"
-else
-       AUTO_CFLAGS= AUTO_LDFLAGS=
-fi
-
-CFLAGS=${CFLAGS-"$AUTO_CFLAGS"}
-# LDFLAGS=${LDFLAGS="$AUTO_LDFLAGS"}   # XXX
-
-if test "$opt_profiling" = "yes"; then
-       PROFILE_FLAGS=-pg
-       case "$host_os" in
-       solaris2*)      ;;
-       *)              opt_static_link=yes ;;
-       esac
-       DEBUG= MALLOC_DEBUG=
-fi
-
-prefer_shared=yes
-prefer_static=no
-
-if test "$opt_static_link" = yes; then
-       prefer_static=yes
-       prefer_shared=no
-       # if we're using gcc, add `-static' to LDFLAGS, except on Solaris >= 2
-       if test -n "$GCC" || test "$ac_cv_c_compiler_gnu" = "yes"; then
-               STATIC_LD="-static" 
-               case "$host_os" in
-               solaris2*)      ;;
-               *)              LDFLAGS="$LDFLAGS -static" ;;   # XXX experimental
-               esac
-       fi
-fi
-
-# set the appropriate make variables for building the "build tools"
-# modify defaults based on whether or not we are cross compiling, since the
-# options for the target host may not be appropriate for the build host
-if test "X$cross_compiling" = "Xno"; then
-       CC_FOR_BUILD=${CC_FOR_BUILD-'$(CC)'}
-       CPPFLAGS_FOR_BUILD=${CPPFLAGS_FOR_BUILD-"$CPPFLAGS"}    # XXX - should it be '$(CPPFLAGS)'
-       LDFLAGS_FOR_BUILD=${LDFLAGS_FOR_BUILD-'$(LDFLAGS)'}
-       # CFLAGS set above to default value if not passed in environment
-       CFLAGS_FOR_BUILD=${CFLAGS-'$(CFLAGS)'}
-       LIBS_FOR_BUILD=${LIBS_FOR_BUILD-'$(LIBS)'}
-else
-       CC_FOR_BUILD=${CC_FOR_BUILD-"gcc"}
-       CPPFLAGS_FOR_BUILD=${CPPFLAGS_FOR_BUILD-""}
-       LDFLAGS_FOR_BUILD=${LDFLAGS_FOR_BUILD-""}
-       CFLAGS_FOR_BUILD=${CFLAGS_FOR_BUILD="-g"}
-       LIBS_FOR_BUILD=${LIBS_FOR_BUILD-""}
-fi
-
-
-
-
-
-
-
-
-
-
-
-
-if test $ac_cv_c_compiler_gnu = yes; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC needs -traditional" >&5
-$as_echo_n "checking whether $CC needs -traditional... " >&6; }
-if ${ac_cv_prog_gcc_traditional+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-    ac_pattern="Autoconf.*'x'"
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <sgtty.h>
-Autoconf TIOCGETP
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "$ac_pattern" >/dev/null 2>&1; then :
-  ac_cv_prog_gcc_traditional=yes
-else
-  ac_cv_prog_gcc_traditional=no
-fi
-rm -f conftest*
-
-
-  if test $ac_cv_prog_gcc_traditional = no; then
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <termio.h>
-Autoconf TCGETA
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "$ac_pattern" >/dev/null 2>&1; then :
-  ac_cv_prog_gcc_traditional=yes
-fi
-rm -f conftest*
-
-  fi
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_gcc_traditional" >&5
-$as_echo "$ac_cv_prog_gcc_traditional" >&6; }
-  if test $ac_cv_prog_gcc_traditional = yes; then
-    CC="$CC -traditional"
-  fi
-fi
-
-
-
-if test "$opt_readline" = yes && test "$opt_with_installed_readline" != "no"
-then
-       # If the user specified --with-installed-readline=PREFIX and PREFIX
-       # is not `yes', set ac_cv_rl_prefix to PREFIX
-       test $opt_with_installed_readline != "yes" && ac_cv_rl_prefix=$opt_with_installed_readline
-
-       
-if test "X$bash_cv_termcap_lib" = "X"; then
-_bash_needmsg=yes
-else
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking which library has the termcap functions" >&5
-$as_echo_n "checking which library has the termcap functions... " >&6; }
-_bash_needmsg=
-fi
-if ${bash_cv_termcap_lib+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_fn_c_check_func "$LINENO" "tgetent" "ac_cv_func_tgetent"
-if test "x$ac_cv_func_tgetent" = xyes; then :
-  bash_cv_termcap_lib=libc
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for tgetent in -ltermcap" >&5
-$as_echo_n "checking for tgetent in -ltermcap... " >&6; }
-if ${ac_cv_lib_termcap_tgetent+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_check_lib_save_LIBS=$LIBS
-LIBS="-ltermcap  $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-/* Override any GCC internal prototype to avoid an error.
-   Use char because int might match the return type of a GCC
-   builtin and then its argument prototype would still apply.  */
-#ifdef __cplusplus
-extern "C"
-#endif
-char tgetent ();
-int
-main ()
-{
-return tgetent ();
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  ac_cv_lib_termcap_tgetent=yes
-else
-  ac_cv_lib_termcap_tgetent=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_termcap_tgetent" >&5
-$as_echo "$ac_cv_lib_termcap_tgetent" >&6; }
-if test "x$ac_cv_lib_termcap_tgetent" = xyes; then :
-  bash_cv_termcap_lib=libtermcap
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for tgetent in -ltinfo" >&5
-$as_echo_n "checking for tgetent in -ltinfo... " >&6; }
-if ${ac_cv_lib_tinfo_tgetent+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_check_lib_save_LIBS=$LIBS
-LIBS="-ltinfo  $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-/* Override any GCC internal prototype to avoid an error.
-   Use char because int might match the return type of a GCC
-   builtin and then its argument prototype would still apply.  */
-#ifdef __cplusplus
-extern "C"
-#endif
-char tgetent ();
-int
-main ()
-{
-return tgetent ();
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  ac_cv_lib_tinfo_tgetent=yes
-else
-  ac_cv_lib_tinfo_tgetent=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_tinfo_tgetent" >&5
-$as_echo "$ac_cv_lib_tinfo_tgetent" >&6; }
-if test "x$ac_cv_lib_tinfo_tgetent" = xyes; then :
-  bash_cv_termcap_lib=libtinfo
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for tgetent in -lcurses" >&5
-$as_echo_n "checking for tgetent in -lcurses... " >&6; }
-if ${ac_cv_lib_curses_tgetent+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_check_lib_save_LIBS=$LIBS
-LIBS="-lcurses  $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-/* Override any GCC internal prototype to avoid an error.
-   Use char because int might match the return type of a GCC
-   builtin and then its argument prototype would still apply.  */
-#ifdef __cplusplus
-extern "C"
-#endif
-char tgetent ();
-int
-main ()
-{
-return tgetent ();
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  ac_cv_lib_curses_tgetent=yes
-else
-  ac_cv_lib_curses_tgetent=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_curses_tgetent" >&5
-$as_echo "$ac_cv_lib_curses_tgetent" >&6; }
-if test "x$ac_cv_lib_curses_tgetent" = xyes; then :
-  bash_cv_termcap_lib=libcurses
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for tgetent in -lncurses" >&5
-$as_echo_n "checking for tgetent in -lncurses... " >&6; }
-if ${ac_cv_lib_ncurses_tgetent+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_check_lib_save_LIBS=$LIBS
-LIBS="-lncurses  $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-/* Override any GCC internal prototype to avoid an error.
-   Use char because int might match the return type of a GCC
-   builtin and then its argument prototype would still apply.  */
-#ifdef __cplusplus
-extern "C"
-#endif
-char tgetent ();
-int
-main ()
-{
-return tgetent ();
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  ac_cv_lib_ncurses_tgetent=yes
-else
-  ac_cv_lib_ncurses_tgetent=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_ncurses_tgetent" >&5
-$as_echo "$ac_cv_lib_ncurses_tgetent" >&6; }
-if test "x$ac_cv_lib_ncurses_tgetent" = xyes; then :
-  bash_cv_termcap_lib=libncurses
-else
-  bash_cv_termcap_lib=gnutermcap
-fi
-
-fi
-
-fi
-
-fi
-
-fi
-
-fi
-
-if test "X$_bash_needmsg" = "Xyes"; then
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking which library has the termcap functions" >&5
-$as_echo_n "checking which library has the termcap functions... " >&6; }
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: using $bash_cv_termcap_lib" >&5
-$as_echo "using $bash_cv_termcap_lib" >&6; }
-if test $bash_cv_termcap_lib = gnutermcap && test -z "$prefer_curses"; then
-LDFLAGS="$LDFLAGS -L./lib/termcap"
-TERMCAP_LIB="./lib/termcap/libtermcap.a"
-TERMCAP_DEP="./lib/termcap/libtermcap.a"
-elif test $bash_cv_termcap_lib = libtermcap && test -z "$prefer_curses"; then
-TERMCAP_LIB=-ltermcap
-TERMCAP_DEP=
-elif test $bash_cv_termcap_lib = libtinfo; then
-TERMCAP_LIB=-ltinfo
-TERMCAP_DEP=
-elif test $bash_cv_termcap_lib = libncurses; then
-TERMCAP_LIB=-lncurses
-TERMCAP_DEP=
-elif test $bash_cv_termcap_lib = libc; then
-TERMCAP_LIB=
-TERMCAP_DEP=
-else
-TERMCAP_LIB=-lcurses
-TERMCAP_DEP=
-fi
-
-
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking version of installed readline library" >&5
-$as_echo_n "checking version of installed readline library... " >&6; }
-
-# What a pain in the ass this is.
-
-# save cpp and ld options
-_save_CFLAGS="$CFLAGS"
-_save_LDFLAGS="$LDFLAGS"
-_save_LIBS="$LIBS"
-
-# Don't set ac_cv_rl_prefix if the caller has already assigned a value.  This
-# allows the caller to do something like $_rl_prefix=$withval if the user
-# specifies --with-installed-readline=PREFIX as an argument to configure
-
-if test -z "$ac_cv_rl_prefix"; then
-test "x$prefix" = xNONE && ac_cv_rl_prefix=$ac_default_prefix || ac_cv_rl_prefix=${prefix}
-fi
-
-eval ac_cv_rl_includedir=${ac_cv_rl_prefix}/include
-eval ac_cv_rl_libdir=${ac_cv_rl_prefix}/lib
-
-LIBS="$LIBS -lreadline ${TERMCAP_LIB}"
-CFLAGS="$CFLAGS -I${ac_cv_rl_includedir}"
-LDFLAGS="$LDFLAGS -L${ac_cv_rl_libdir}"
-
-if ${ac_cv_rl_version+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test "$cross_compiling" = yes; then :
-  ac_cv_rl_version='4.2'
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#include <stdio.h>
-#include <readline/readline.h>
-
-extern int rl_gnu_readline_p;
-
-main()
-{
-       FILE *fp;
-       fp = fopen("conftest.rlv", "w");
-       if (fp == 0)
-               exit(1);
-       if (rl_gnu_readline_p != 1)
-               fprintf(fp, "0.0\n");
-       else
-               fprintf(fp, "%s\n", rl_library_version ? rl_library_version : "0.0");
-       fclose(fp);
-       exit(0);
-}
-
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-  ac_cv_rl_version=`cat conftest.rlv`
-else
-  ac_cv_rl_version='0.0'
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-fi
-
-
-CFLAGS="$_save_CFLAGS"
-LDFLAGS="$_save_LDFLAGS"
-LIBS="$_save_LIBS"
-
-RL_MAJOR=0
-RL_MINOR=0
-
-# (
-case "$ac_cv_rl_version" in
-2*|3*|4*|5*|6*|7*|8*|9*)
-       RL_MAJOR=`echo $ac_cv_rl_version | sed 's:\..*$::'`
-       RL_MINOR=`echo $ac_cv_rl_version | sed -e 's:^.*\.::' -e 's:[a-zA-Z]*$::'`
-       ;;
-esac
-
-# (((
-case $RL_MAJOR in
-[0-9][0-9])    _RL_MAJOR=$RL_MAJOR ;;
-[0-9]) _RL_MAJOR=0$RL_MAJOR ;;
-*)             _RL_MAJOR=00 ;;
-esac
-
-# (((
-case $RL_MINOR in
-[0-9][0-9])    _RL_MINOR=$RL_MINOR ;;
-[0-9]) _RL_MINOR=0$RL_MINOR ;;
-*)             _RL_MINOR=00 ;;
-esac
-
-RL_VERSION="0x${_RL_MAJOR}${_RL_MINOR}"
-
-# Readline versions greater than 4.2 have these defines in readline.h
-
-if test $ac_cv_rl_version = '0.0' ; then
-       { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Could not test version of installed readline library." >&5
-$as_echo "$as_me: WARNING: Could not test version of installed readline library." >&2;}
-elif test $RL_MAJOR -gt 4 || { test $RL_MAJOR = 4 && test $RL_MINOR -gt 2 ; } ; then
-       # set these for use by the caller
-       RL_PREFIX=$ac_cv_rl_prefix
-       RL_LIBDIR=$ac_cv_rl_libdir
-       RL_INCLUDEDIR=$ac_cv_rl_includedir
-       { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_rl_version" >&5
-$as_echo "$ac_cv_rl_version" >&6; }
-else
-
-
-cat >>confdefs.h <<_ACEOF
-@%:@define RL_READLINE_VERSION $RL_VERSION
-_ACEOF
-
-
-cat >>confdefs.h <<_ACEOF
-@%:@define RL_VERSION_MAJOR $RL_MAJOR
-_ACEOF
-
-
-cat >>confdefs.h <<_ACEOF
-@%:@define RL_VERSION_MINOR $RL_MINOR
-_ACEOF
-
-
-
-
-
-
-# set these for use by the caller
-RL_PREFIX=$ac_cv_rl_prefix
-RL_LIBDIR=$ac_cv_rl_libdir
-RL_INCLUDEDIR=$ac_cv_rl_includedir
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_rl_version" >&5
-$as_echo "$ac_cv_rl_version" >&6; }
-
-fi
-
-
-       case "$ac_cv_rl_version" in
-       5*|6*|7*|8*|9*) ;;
-       *)      opt_with_installed_readline=no 
-               { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: installed readline library is too old to be linked with bash" >&5
-$as_echo "$as_me: WARNING: installed readline library is too old to be linked with bash" >&2;}
-               { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using private bash version" >&5
-$as_echo "$as_me: WARNING: using private bash version" >&2;}
-               ;;
-       esac
-fi
-
-TILDE_LIB=-ltilde
-if test $opt_readline = yes; then
-       $as_echo "@%:@define READLINE 1" >>confdefs.h
-
-       if test "$opt_with_installed_readline" != "no" ; then
-               case "$opt_with_installed_readline" in
-               yes)    RL_INCLUDE= ;;
-               *)      case "$RL_INCLUDEDIR" in
-                       /usr/include)   ;;
-                       *)              RL_INCLUDE='-I${RL_INCLUDEDIR}' ;;
-                       esac
-                       ;;
-               esac
-               READLINE_DEP=
-               READLINE_LIB=-lreadline
-               # section for OS versions that don't allow unresolved symbols
-               # to be compiled into dynamic libraries.
-               case "$host_os" in
-               cygwin*)        TILDE_LIB= ;;
-               esac
-       else
-               RL_LIBDIR='$(dot)/$(LIBSUBDIR)/readline'
-               READLINE_DEP='$(READLINE_LIBRARY)'
-               # section for OS versions that ship an older/broken version of
-               # readline as a standard dynamic library and don't allow a
-               # static version specified as -llibname to override the
-               # dynamic version
-               case "${host_os}" in
-               darwin[89]*|darwin10*) READLINE_LIB='${READLINE_LIBRARY}' ;;
-               *)              READLINE_LIB=-lreadline ;;
-               esac
-       fi
-else
-       RL_LIBDIR='$(dot)/$(LIBSUBDIR)/readline'
-       READLINE_LIB= READLINE_DEP=
-fi
-if test $opt_history = yes || test $opt_bang_history = yes; then
-       if test $opt_history = yes; then
-               $as_echo "@%:@define HISTORY 1" >>confdefs.h
-
-       fi
-       if test $opt_bang_history = yes; then
-               $as_echo "@%:@define BANG_HISTORY 1" >>confdefs.h
-
-       fi
-       if test "$opt_with_installed_readline" != "no"; then
-               HIST_LIBDIR=$RL_LIBDIR
-               HISTORY_DEP=
-               HISTORY_LIB=-lhistory
-               case "$opt_with_installed_readline" in
-               yes)    RL_INCLUDE= ;;
-               *)      case "$RL_INCLUDEDIR" in
-                       /usr/include)   ;;
-                       *)              RL_INCLUDE='-I${RL_INCLUDEDIR}' ;;
-                       esac
-                       ;;
-               esac
-       else
-               HIST_LIBDIR='$(dot)/$(LIBSUBDIR)/readline'
-               HISTORY_DEP='$(HISTORY_LIBRARY)'
-               # section for OS versions that ship an older version of
-               # readline as a standard dynamic library and don't allow a
-               # static version specified as -llibname to override the
-               # dynamic version
-               case "${host_os}" in
-               darwin[89]*|darwin10*) HISTORY_LIB='${HISTORY_LIBRARY}' ;;
-               *)              HISTORY_LIB=-lhistory ;;
-               esac
-       fi
-else
-       HIST_LIBDIR='$(dot)/$(LIBSUBDIR)/readline'
-       HISTORY_LIB= HISTORY_DEP=
-fi
-
-
-
-
-
-
-
-
-
-
-
-# Find a good install program.  We prefer a C program (faster),
-# so one script is as good as another.  But avoid the broken or
-# incompatible versions:
-# SysV /etc/install, /usr/sbin/install
-# SunOS /usr/etc/install
-# IRIX /sbin/install
-# AIX /bin/install
-# AmigaOS /C/install, which installs bootblocks on floppy discs
-# AIX 4 /usr/bin/installbsd, which doesn't work without a -g flag
-# AFS /usr/afsws/bin/install, which mishandles nonexistent args
-# SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff"
-# OS/2's system install, which has a completely different semantic
-# ./install, which can be erroneously created by make from ./install.sh.
-# Reject install programs that cannot install multiple files.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for a BSD-compatible install" >&5
-$as_echo_n "checking for a BSD-compatible install... " >&6; }
-if test -z "$INSTALL"; then
-if ${ac_cv_path_install+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    # Account for people who put trailing slashes in PATH elements.
-case $as_dir/ in @%:@((
-  ./ | .// | /[cC]/* | \
-  /etc/* | /usr/sbin/* | /usr/etc/* | /sbin/* | /usr/afsws/bin/* | \
-  ?:[\\/]os2[\\/]install[\\/]* | ?:[\\/]OS2[\\/]INSTALL[\\/]* | \
-  /usr/ucb/* ) ;;
-  *)
-    # OSF1 and SCO ODT 3.0 have their own names for install.
-    # Don't use installbsd from OSF since it installs stuff as root
-    # by default.
-    for ac_prog in ginstall scoinst install; do
-      for ac_exec_ext in '' $ac_executable_extensions; do
-       if { test -f "$as_dir/$ac_prog$ac_exec_ext" && $as_test_x "$as_dir/$ac_prog$ac_exec_ext"; }; then
-         if test $ac_prog = install &&
-           grep dspmsg "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then
-           # AIX install.  It has an incompatible calling convention.
-           :
-         elif test $ac_prog = install &&
-           grep pwplus "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then
-           # program-specific install script used by HP pwplus--don't use.
-           :
-         else
-           rm -rf conftest.one conftest.two conftest.dir
-           echo one > conftest.one
-           echo two > conftest.two
-           mkdir conftest.dir
-           if "$as_dir/$ac_prog$ac_exec_ext" -c conftest.one conftest.two "`pwd`/conftest.dir" &&
-             test -s conftest.one && test -s conftest.two &&
-             test -s conftest.dir/conftest.one &&
-             test -s conftest.dir/conftest.two
-           then
-             ac_cv_path_install="$as_dir/$ac_prog$ac_exec_ext -c"
-             break 3
-           fi
-         fi
-       fi
-      done
-    done
-    ;;
-esac
-
-  done
-IFS=$as_save_IFS
-
-rm -rf conftest.one conftest.two conftest.dir
-
-fi
-  if test "${ac_cv_path_install+set}" = set; then
-    INSTALL=$ac_cv_path_install
-  else
-    # As a last resort, use the slow shell script.  Don't cache a
-    # value for INSTALL within a source directory, because that will
-    # break other packages using the cache if that directory is
-    # removed, or if the value is a relative name.
-    INSTALL=$ac_install_sh
-  fi
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $INSTALL" >&5
-$as_echo "$INSTALL" >&6; }
-
-# Use test -z because SunOS4 sh mishandles braces in ${var-val}.
-# It thinks the first close brace ends the variable substitution.
-test -z "$INSTALL_PROGRAM" && INSTALL_PROGRAM='${INSTALL}'
-
-test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL}'
-
-test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
-
-# Extract the first word of "ar", so it can be a program name with args.
-set dummy ar; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_AR+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test -n "$AR"; then
-  ac_cv_prog_AR="$AR" # 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 { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_prog_AR=""
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-  test -z "$ac_cv_prog_AR" && ac_cv_prog_AR="ar"
-fi
-fi
-AR=$ac_cv_prog_AR
-if test -n "$AR"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $AR" >&5
-$as_echo "$AR" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-test -n "$ARFLAGS" || ARFLAGS="cr"
-if test -n "$ac_tool_prefix"; then
-  # Extract the first word of "${ac_tool_prefix}ranlib", so it can be a program name with args.
-set dummy ${ac_tool_prefix}ranlib; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_RANLIB+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test -n "$RANLIB"; then
-  ac_cv_prog_RANLIB="$RANLIB" # 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 { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_prog_RANLIB="${ac_tool_prefix}ranlib"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-fi
-fi
-RANLIB=$ac_cv_prog_RANLIB
-if test -n "$RANLIB"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $RANLIB" >&5
-$as_echo "$RANLIB" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-fi
-if test -z "$ac_cv_prog_RANLIB"; then
-  ac_ct_RANLIB=$RANLIB
-  # Extract the first word of "ranlib", so it can be a program name with args.
-set dummy ranlib; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_RANLIB+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test -n "$ac_ct_RANLIB"; then
-  ac_cv_prog_ac_ct_RANLIB="$ac_ct_RANLIB" # 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 { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_prog_ac_ct_RANLIB="ranlib"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-fi
-fi
-ac_ct_RANLIB=$ac_cv_prog_ac_ct_RANLIB
-if test -n "$ac_ct_RANLIB"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_RANLIB" >&5
-$as_echo "$ac_ct_RANLIB" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-  if test "x$ac_ct_RANLIB" = x; then
-    RANLIB=":"
-  else
-    case $cross_compiling:$ac_tool_warned in
-yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
-ac_tool_warned=yes ;;
-esac
-    RANLIB=$ac_ct_RANLIB
-  fi
-else
-  RANLIB="$ac_cv_prog_RANLIB"
-fi
-
-for ac_prog in 'bison -y' byacc
-do
-  # Extract the first word of "$ac_prog", so it can be a program name with args.
-set dummy $ac_prog; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_YACC+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test -n "$YACC"; then
-  ac_cv_prog_YACC="$YACC" # 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 { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_prog_YACC="$ac_prog"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-fi
-fi
-YACC=$ac_cv_prog_YACC
-if test -n "$YACC"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $YACC" >&5
-$as_echo "$YACC" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-  test -n "$YACC" && break
-done
-test -n "$YACC" || YACC="yacc"
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ${MAKE-make} sets \$(MAKE)" >&5
-$as_echo_n "checking whether ${MAKE-make} sets \$(MAKE)... " >&6; }
-set x ${MAKE-make}
-ac_make=`$as_echo "$2" | sed 's/+/p/g; s/[^a-zA-Z0-9_]/_/g'`
-if eval \${ac_cv_prog_make_${ac_make}_set+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat >conftest.make <<\_ACEOF
-SHELL = /bin/sh
-all:
-       @echo '@@@%%%=$(MAKE)=@@@%%%'
-_ACEOF
-# GNU make sometimes prints "make[1]: Entering ...", which would confuse us.
-case `${MAKE-make} -f conftest.make 2>/dev/null` in
-  *@@@%%%=?*=@@@%%%*)
-    eval ac_cv_prog_make_${ac_make}_set=yes;;
-  *)
-    eval ac_cv_prog_make_${ac_make}_set=no;;
-esac
-rm -f conftest.make
-fi
-if eval test \$ac_cv_prog_make_${ac_make}_set = yes; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-  SET_MAKE=
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-  SET_MAKE="MAKE=${MAKE-make}"
-fi
-
-
-case "$host_os" in
-opennt*|interix*)      MAKE_SHELL="$INTERIX_ROOT/bin/sh" ;;
-*)                     MAKE_SHELL=/bin/sh ;;
-esac
-
-
-if test x$SIZE = x; then
-       if test x$ac_tool_prefix = x; then
-               SIZE=size
-       else
-               SIZE=${ac_tool_prefix}size
-               save_IFS=$IFS ; IFS=:
-               size_found=0
-               for dir in $PATH; do
-                       if test -x $dir/$SIZE ; then
-                               size_found=1
-                               break
-                       fi
-               done
-               if test $size_found -eq 0; then
-                       SIZE=:
-               fi
-               IFS=$save_IFS
-       fi
-fi
-
-
-# Checks for stat-related time functions.
-
-# Copyright (C) 1998-1999, 2001, 2003, 2005-2007, 2009-2012 Free Software
-# Foundation, Inc.
-
-# This file is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-
-# st_atim.tv_nsec - Linux, Solaris, Cygwin
-# st_atimespec.tv_nsec - FreeBSD, NetBSD, if ! defined _POSIX_SOURCE
-# st_atimensec - FreeBSD, NetBSD, if defined _POSIX_SOURCE
-# st_atim.st__tim.tv_nsec - UnixWare (at least 2.1.2 through 7.1)
-
-# st_birthtimespec - FreeBSD, NetBSD (hidden on OpenBSD 3.9, anyway)
-# st_birthtim - Cygwin 1.7.0+
-
-
-
-# Configure checks for struct timespec
-
-# Copyright (C) 2000-2001, 2003-2007, 2009-2011, 2012 Free Software Foundation, Inc.
-
-# This file is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# Original written by Paul Eggert and Jim Meyering.
-# Modified by Chet Ramey for bash
-
-
-
-
-
-$as_echo "@%:@define _GNU_SOURCE 1" >>confdefs.h
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for an ANSI C-conforming const" >&5
-$as_echo_n "checking for an ANSI C-conforming const... " >&6; }
-if ${ac_cv_c_const+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-int
-main ()
-{
-/* FIXME: Include the comments suggested by Paul. */
-#ifndef __cplusplus
-  /* Ultrix mips cc rejects this.  */
-  typedef int charset[2];
-  const charset cs;
-  /* SunOS 4.1.1 cc rejects this.  */
-  char const *const *pcpcc;
-  char **ppc;
-  /* NEC SVR4.0.2 mips cc rejects this.  */
-  struct point {int x, y;};
-  static struct point const zero = {0,0};
-  /* AIX XL C 1.02.0.0 rejects this.
-     It does not let you subtract one const X* pointer from another in
-     an arm of an if-expression whose if-part is not a constant
-     expression */
-  const char *g = "string";
-  pcpcc = &g + (g ? g-g : 0);
-  /* HPUX 7.0 cc rejects these. */
-  ++pcpcc;
-  ppc = (char**) pcpcc;
-  pcpcc = (char const *const *) ppc;
-  { /* SCO 3.2v4 cc rejects this.  */
-    char *t;
-    char const *s = 0 ? (char *) 0 : (char const *) 0;
-
-    *t++ = 0;
-    if (s) return 0;
-  }
-  { /* Someone thinks the Sun supposedly-ANSI compiler will reject this.  */
-    int x[] = {25, 17};
-    const int *foo = &x[0];
-    ++foo;
-  }
-  { /* Sun SC1.0 ANSI compiler rejects this -- but not the above. */
-    typedef const int *iptr;
-    iptr p = 0;
-    ++p;
-  }
-  { /* AIX XL C 1.02.0.0 rejects this saying
-       "k.c", line 2.27: 1506-025 (S) Operand must be a modifiable lvalue. */
-    struct s { int j; const int *ap[3]; };
-    struct s *b; b->j = 5;
-  }
-  { /* ULTRIX-32 V3.1 (Rev 9) vcc rejects this */
-    const int foo = 10;
-    if (!foo) return 0;
-  }
-  return !cs[0] && !zero.x;
-#endif
-
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_cv_c_const=yes
-else
-  ac_cv_c_const=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_const" >&5
-$as_echo "$ac_cv_c_const" >&6; }
-if test $ac_cv_c_const = no; then
-  
-$as_echo "@%:@define const /**/" >>confdefs.h
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for inline" >&5
-$as_echo_n "checking for inline... " >&6; }
-if ${ac_cv_c_inline+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_cv_c_inline=no
-for ac_kw in inline __inline__ __inline; do
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#ifndef __cplusplus
-typedef int foo_t;
-static $ac_kw foo_t static_foo () {return 0; }
-$ac_kw foo_t foo () {return 0; }
-#endif
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_cv_c_inline=$ac_kw
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  test "$ac_cv_c_inline" != no && break
-done
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_inline" >&5
-$as_echo "$ac_cv_c_inline" >&6; }
-
-case $ac_cv_c_inline in
-  inline | yes) ;;
-  *)
-    case $ac_cv_c_inline in
-      no) ac_val=;;
-      *) ac_val=$ac_cv_c_inline;;
-    esac
-    cat >>confdefs.h <<_ACEOF
-#ifndef __cplusplus
-#define inline $ac_val
-#endif
-_ACEOF
-    ;;
-esac
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether byte ordering is bigendian" >&5
-$as_echo_n "checking whether byte ordering is bigendian... " >&6; }
-if ${ac_cv_c_bigendian+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_cv_c_bigendian=unknown
-    # See if we're dealing with a universal compiler.
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#ifndef __APPLE_CC__
-              not a universal capable compiler
-            #endif
-            typedef int dummy;
-           
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  
-       # Check for potential -arch flags.  It is not universal unless
-       # there are at least two -arch flags with different values.
-       ac_arch=
-       ac_prev=
-       for ac_word in $CC $CFLAGS $CPPFLAGS $LDFLAGS; do
-        if test -n "$ac_prev"; then
-          case $ac_word in
-            i?86 | x86_64 | ppc | ppc64)
-              if test -z "$ac_arch" || test "$ac_arch" = "$ac_word"; then
-                ac_arch=$ac_word
-              else
-                ac_cv_c_bigendian=universal
-                break
-              fi
-              ;;
-          esac
-          ac_prev=
-        elif test "x$ac_word" = "x-arch"; then
-          ac_prev=arch
-        fi
-       done
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-    if test $ac_cv_c_bigendian = unknown; then
-      # See if sys/param.h defines the BYTE_ORDER macro.
-      cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <sys/types.h>
-            #include <sys/param.h>
-          
-int
-main ()
-{
-#if ! (defined BYTE_ORDER && defined BIG_ENDIAN \
-                    && defined LITTLE_ENDIAN && BYTE_ORDER && BIG_ENDIAN \
-                    && LITTLE_ENDIAN)
-             bogus endian macros
-            #endif
-          
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  # It does; now see whether it defined to BIG_ENDIAN or not.
-        cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <sys/types.h>
-               #include <sys/param.h>
-             
-int
-main ()
-{
-#if BYTE_ORDER != BIG_ENDIAN
-                not big endian
-               #endif
-             
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_cv_c_bigendian=yes
-else
-  ac_cv_c_bigendian=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-    fi
-    if test $ac_cv_c_bigendian = unknown; then
-      # See if <limits.h> defines _LITTLE_ENDIAN or _BIG_ENDIAN (e.g., Solaris).
-      cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <limits.h>
-          
-int
-main ()
-{
-#if ! (defined _LITTLE_ENDIAN || defined _BIG_ENDIAN)
-             bogus endian macros
-            #endif
-          
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  # It does; now see whether it defined to _BIG_ENDIAN or not.
-        cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <limits.h>
-             
-int
-main ()
-{
-#ifndef _BIG_ENDIAN
-                not big endian
-               #endif
-             
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_cv_c_bigendian=yes
-else
-  ac_cv_c_bigendian=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-    fi
-    if test $ac_cv_c_bigendian = unknown; then
-      # Compile a test program.
-      if test "$cross_compiling" = yes; then :
-  # Try to guess by grepping values from an object file.
-        cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-short int ascii_mm[] =
-                 { 0x4249, 0x4765, 0x6E44, 0x6961, 0x6E53, 0x7953, 0 };
-               short int ascii_ii[] =
-                 { 0x694C, 0x5454, 0x656C, 0x6E45, 0x6944, 0x6E61, 0 };
-               int use_ascii (int i) {
-                 return ascii_mm[i] + ascii_ii[i];
-               }
-               short int ebcdic_ii[] =
-                 { 0x89D3, 0xE3E3, 0x8593, 0x95C5, 0x89C4, 0x9581, 0 };
-               short int ebcdic_mm[] =
-                 { 0xC2C9, 0xC785, 0x95C4, 0x8981, 0x95E2, 0xA8E2, 0 };
-               int use_ebcdic (int i) {
-                 return ebcdic_mm[i] + ebcdic_ii[i];
-               }
-               extern int foo;
-             
-int
-main ()
-{
-return use_ascii (foo) == use_ebcdic (foo);
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  if grep BIGenDianSyS conftest.$ac_objext >/dev/null; then
-             ac_cv_c_bigendian=yes
-           fi
-           if grep LiTTleEnDian conftest.$ac_objext >/dev/null ; then
-             if test "$ac_cv_c_bigendian" = unknown; then
-               ac_cv_c_bigendian=no
-             else
-               # finding both strings is unlikely to happen, but who knows?
-               ac_cv_c_bigendian=unknown
-             fi
-           fi
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-$ac_includes_default
-int
-main ()
-{
-
-            /* Are we little or big endian?  From Harbison&Steele.  */
-            union
-            {
-              long int l;
-              char c[sizeof (long int)];
-            } u;
-            u.l = 1;
-            return u.c[sizeof (long int) - 1] == 1;
-          
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-  ac_cv_c_bigendian=no
-else
-  ac_cv_c_bigendian=yes
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-    fi
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_bigendian" >&5
-$as_echo "$ac_cv_c_bigendian" >&6; }
- case $ac_cv_c_bigendian in #(
-   yes)
-     $as_echo "@%:@define WORDS_BIGENDIAN 1" >>confdefs.h
-;; #(
-   no)
-      ;; #(
-   universal)
-       
-$as_echo "@%:@define AC_APPLE_UNIVERSAL_BUILD 1" >>confdefs.h
-
-     ;; #(
-   *)
-     as_fn_error $? "unknown endianness
- presetting ac_cv_c_bigendian=no (or yes) will help" "$LINENO" 5 ;;
- esac
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for preprocessor stringizing operator" >&5
-$as_echo_n "checking for preprocessor stringizing operator... " >&6; }
-if ${ac_cv_c_stringize+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-@%:@define x(y) #y
-
-char *s = x(teststring);
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "@%:@teststring" >/dev/null 2>&1; then :
-  ac_cv_c_stringize=no
-else
-  ac_cv_c_stringize=yes
-fi
-rm -f conftest*
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_stringize" >&5
-$as_echo "$ac_cv_c_stringize" >&6; }
-if test $ac_cv_c_stringize = yes; then
-  
-$as_echo "@%:@define HAVE_STRINGIZE 1" >>confdefs.h
-
-fi
-
-
-    
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for long double with more range or precision than double" >&5
-$as_echo_n "checking for long double with more range or precision than double... " >&6; }
-if ${ac_cv_type_long_double_wider+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <float.h>
-           long double const a[] =
-             {
-                0.0L, DBL_MIN, DBL_MAX, DBL_EPSILON,
-                LDBL_MIN, LDBL_MAX, LDBL_EPSILON
-             };
-           long double
-           f (long double x)
-           {
-              return ((x + (unsigned long int) 10) * (-1 / x) + a[0]
-                       + (x ? f (x) : 'c'));
-           }
-         
-int
-main ()
-{
-static int test_array @<:@1 - 2 * !((0 < ((DBL_MAX_EXP < LDBL_MAX_EXP)
-                  + (DBL_MANT_DIG < LDBL_MANT_DIG)
-                  - (LDBL_MAX_EXP < DBL_MAX_EXP)
-                  - (LDBL_MANT_DIG < DBL_MANT_DIG)))
-           && (int) LDBL_EPSILON == 0
-         )@:>@;
-test_array @<:@0@:>@ = 0
-
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_cv_type_long_double_wider=yes
-else
-  ac_cv_type_long_double_wider=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_type_long_double_wider" >&5
-$as_echo "$ac_cv_type_long_double_wider" >&6; }
-  if test $ac_cv_type_long_double_wider = yes; then
-    
-$as_echo "@%:@define HAVE_LONG_DOUBLE_WIDER 1" >>confdefs.h
-
-  fi
-
-    ac_cv_c_long_double=$ac_cv_type_long_double_wider
-    if test $ac_cv_c_long_double = yes; then
-      
-$as_echo "@%:@define HAVE_LONG_DOUBLE 1" >>confdefs.h
-
-    fi
-  
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for function prototypes" >&5
-$as_echo_n "checking for function prototypes... " >&6; }
-if test "$ac_cv_prog_cc_c89" != no; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-  
-$as_echo "@%:@define PROTOTYPES 1" >>confdefs.h
-
-  
-$as_echo "@%:@define __PROTOTYPES 1" >>confdefs.h
-
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether char is unsigned" >&5
-$as_echo_n "checking whether char is unsigned... " >&6; }
-if ${ac_cv_c_char_unsigned+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-$ac_includes_default
-int
-main ()
-{
-static int test_array @<:@1 - 2 * !(((char) -1) < 0)@:>@;
-test_array @<:@0@:>@ = 0
-
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_cv_c_char_unsigned=no
-else
-  ac_cv_c_char_unsigned=yes
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_char_unsigned" >&5
-$as_echo "$ac_cv_c_char_unsigned" >&6; }
-if test $ac_cv_c_char_unsigned = yes && test "$GCC" != yes; then
-  $as_echo "@%:@define __CHAR_UNSIGNED__ 1" >>confdefs.h
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for working volatile" >&5
-$as_echo_n "checking for working volatile... " >&6; }
-if ${ac_cv_c_volatile+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-int
-main ()
-{
-
-volatile int x;
-int * volatile y = (int *) 0;
-return !x && !y;
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_cv_c_volatile=yes
-else
-  ac_cv_c_volatile=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_volatile" >&5
-$as_echo "$ac_cv_c_volatile" >&6; }
-if test $ac_cv_c_volatile = no; then
-  
-$as_echo "@%:@define volatile /**/" >>confdefs.h
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for C/C++ restrict keyword" >&5
-$as_echo_n "checking for C/C++ restrict keyword... " >&6; }
-if ${ac_cv_c_restrict+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_cv_c_restrict=no
-   # The order here caters to the fact that C++ does not require restrict.
-   for ac_kw in __restrict __restrict__ _Restrict restrict; do
-     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-typedef int * int_ptr;
-       int foo (int_ptr $ac_kw ip) {
-       return ip[0];
-       }
-int
-main ()
-{
-int s[1];
-       int * $ac_kw t = s;
-       t[0] = 0;
-       return foo(t)
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_cv_c_restrict=$ac_kw
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-     test "$ac_cv_c_restrict" != no && break
-   done
-  
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_restrict" >&5
-$as_echo "$ac_cv_c_restrict" >&6; }
- case $ac_cv_c_restrict in
-   restrict) ;;
-   no) $as_echo "@%:@define restrict /**/" >>confdefs.h
- ;;
-   *)  cat >>confdefs.h <<_ACEOF
-@%:@define restrict $ac_cv_c_restrict
-_ACEOF
- ;;
- esac
-
-
-
-        MKINSTALLDIRS=
-  if test -n "$ac_aux_dir"; then
-    case "$ac_aux_dir" in
-      /*) MKINSTALLDIRS="$ac_aux_dir/mkinstalldirs" ;;
-      *) MKINSTALLDIRS="\$(top_builddir)/$ac_aux_dir/mkinstalldirs" ;;
-    esac
-  fi
-  if test -z "$MKINSTALLDIRS"; then
-    MKINSTALLDIRS="\$(top_srcdir)/mkinstalldirs"
-  fi
-  
-
-
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether NLS is requested" >&5
-$as_echo_n "checking whether NLS is requested... " >&6; }
-    @%:@ Check whether --enable-nls was given.
-if test "${enable_nls+set}" = set; then :
-  enableval=$enable_nls; USE_NLS=$enableval
-else
-  USE_NLS=yes
-fi
-
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $USE_NLS" >&5
-$as_echo "$USE_NLS" >&6; }
-  
-
-
-        
-    
-        
-# Prepare PATH_SEPARATOR.
-# The user is always right.
-if test "${PATH_SEPARATOR+set}" != set; then
-  echo "#! /bin/sh" >conf$$.sh
-  echo  "exit 0"   >>conf$$.sh
-  chmod +x conf$$.sh
-  if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then
-    PATH_SEPARATOR=';'
-  else
-    PATH_SEPARATOR=:
-  fi
-  rm -f conf$$.sh
-fi
-
-# Find out how to test for executable files. Don't use a zero-byte file,
-# as systems may use methods other than mode bits to determine executability.
-cat >conf$$.file <<_ASEOF
-#! /bin/sh
-exit 0
-_ASEOF
-chmod +x conf$$.file
-if test -x conf$$.file >/dev/null 2>&1; then
-  ac_executable_p="test -x"
-else
-  ac_executable_p="test -f"
-fi
-rm -f conf$$.file
-
-# Extract the first word of "msgfmt", so it can be a program name with args.
-set dummy msgfmt; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_MSGFMT+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  case "$MSGFMT" in
-  [\\/]* | ?:[\\/]*)
-    ac_cv_path_MSGFMT="$MSGFMT" # Let the user override the test with a path.
-    ;;
-  *)
-    ac_save_IFS="$IFS"; IFS=$PATH_SEPARATOR
-    for ac_dir in $PATH; do
-      IFS="$ac_save_IFS"
-      test -z "$ac_dir" && ac_dir=.
-      for ac_exec_ext in '' $ac_executable_extensions; do
-        if $ac_executable_p "$ac_dir/$ac_word$ac_exec_ext"; then
-          if $ac_dir/$ac_word --statistics /dev/null >/dev/null 2>&1 &&
-     (if $ac_dir/$ac_word --statistics /dev/null 2>&1 >/dev/null | grep usage >/dev/null; then exit 1; else exit 0; fi); then
-            ac_cv_path_MSGFMT="$ac_dir/$ac_word$ac_exec_ext"
-            break 2
-          fi
-        fi
-      done
-    done
-    IFS="$ac_save_IFS"
-  test -z "$ac_cv_path_MSGFMT" && ac_cv_path_MSGFMT=":"
-    ;;
-esac
-fi
-MSGFMT="$ac_cv_path_MSGFMT"
-if test "$MSGFMT" != ":"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MSGFMT" >&5
-$as_echo "$MSGFMT" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-  # Extract the first word of "gmsgfmt", so it can be a program name with args.
-set dummy gmsgfmt; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_GMSGFMT+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  case $GMSGFMT in
-  [\\/]* | ?:[\\/]*)
-  ac_cv_path_GMSGFMT="$GMSGFMT" # 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 { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_path_GMSGFMT="$as_dir/$ac_word$ac_exec_ext"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-  test -z "$ac_cv_path_GMSGFMT" && ac_cv_path_GMSGFMT="$MSGFMT"
-  ;;
-esac
-fi
-GMSGFMT=$ac_cv_path_GMSGFMT
-if test -n "$GMSGFMT"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $GMSGFMT" >&5
-$as_echo "$GMSGFMT" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-
-        
-# Prepare PATH_SEPARATOR.
-# The user is always right.
-if test "${PATH_SEPARATOR+set}" != set; then
-  echo "#! /bin/sh" >conf$$.sh
-  echo  "exit 0"   >>conf$$.sh
-  chmod +x conf$$.sh
-  if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then
-    PATH_SEPARATOR=';'
-  else
-    PATH_SEPARATOR=:
-  fi
-  rm -f conf$$.sh
-fi
-
-# Find out how to test for executable files. Don't use a zero-byte file,
-# as systems may use methods other than mode bits to determine executability.
-cat >conf$$.file <<_ASEOF
-#! /bin/sh
-exit 0
-_ASEOF
-chmod +x conf$$.file
-if test -x conf$$.file >/dev/null 2>&1; then
-  ac_executable_p="test -x"
-else
-  ac_executable_p="test -f"
-fi
-rm -f conf$$.file
-
-# Extract the first word of "xgettext", so it can be a program name with args.
-set dummy xgettext; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_XGETTEXT+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  case "$XGETTEXT" in
-  [\\/]* | ?:[\\/]*)
-    ac_cv_path_XGETTEXT="$XGETTEXT" # Let the user override the test with a path.
-    ;;
-  *)
-    ac_save_IFS="$IFS"; IFS=$PATH_SEPARATOR
-    for ac_dir in $PATH; do
-      IFS="$ac_save_IFS"
-      test -z "$ac_dir" && ac_dir=.
-      for ac_exec_ext in '' $ac_executable_extensions; do
-        if $ac_executable_p "$ac_dir/$ac_word$ac_exec_ext"; then
-          if $ac_dir/$ac_word --omit-header --copyright-holder= --msgid-bugs-address= /dev/null >/dev/null 2>&1 &&
-     (if $ac_dir/$ac_word --omit-header --copyright-holder= --msgid-bugs-address= /dev/null 2>&1 >/dev/null | grep usage >/dev/null; then exit 1; else exit 0; fi); then
-            ac_cv_path_XGETTEXT="$ac_dir/$ac_word$ac_exec_ext"
-            break 2
-          fi
-        fi
-      done
-    done
-    IFS="$ac_save_IFS"
-  test -z "$ac_cv_path_XGETTEXT" && ac_cv_path_XGETTEXT=":"
-    ;;
-esac
-fi
-XGETTEXT="$ac_cv_path_XGETTEXT"
-if test "$XGETTEXT" != ":"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $XGETTEXT" >&5
-$as_echo "$XGETTEXT" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-    rm -f messages.po
-
-    
-# Prepare PATH_SEPARATOR.
-# The user is always right.
-if test "${PATH_SEPARATOR+set}" != set; then
-  echo "#! /bin/sh" >conf$$.sh
-  echo  "exit 0"   >>conf$$.sh
-  chmod +x conf$$.sh
-  if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then
-    PATH_SEPARATOR=';'
-  else
-    PATH_SEPARATOR=:
-  fi
-  rm -f conf$$.sh
-fi
-
-# Find out how to test for executable files. Don't use a zero-byte file,
-# as systems may use methods other than mode bits to determine executability.
-cat >conf$$.file <<_ASEOF
-#! /bin/sh
-exit 0
-_ASEOF
-chmod +x conf$$.file
-if test -x conf$$.file >/dev/null 2>&1; then
-  ac_executable_p="test -x"
-else
-  ac_executable_p="test -f"
-fi
-rm -f conf$$.file
-
-# Extract the first word of "msgmerge", so it can be a program name with args.
-set dummy msgmerge; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_MSGMERGE+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  case "$MSGMERGE" in
-  [\\/]* | ?:[\\/]*)
-    ac_cv_path_MSGMERGE="$MSGMERGE" # Let the user override the test with a path.
-    ;;
-  *)
-    ac_save_IFS="$IFS"; IFS=$PATH_SEPARATOR
-    for ac_dir in $PATH; do
-      IFS="$ac_save_IFS"
-      test -z "$ac_dir" && ac_dir=.
-      for ac_exec_ext in '' $ac_executable_extensions; do
-        if $ac_executable_p "$ac_dir/$ac_word$ac_exec_ext"; then
-          if $ac_dir/$ac_word --update -q /dev/null /dev/null >/dev/null 2>&1; then
-            ac_cv_path_MSGMERGE="$ac_dir/$ac_word$ac_exec_ext"
-            break 2
-          fi
-        fi
-      done
-    done
-    IFS="$ac_save_IFS"
-  test -z "$ac_cv_path_MSGMERGE" && ac_cv_path_MSGMERGE=":"
-    ;;
-esac
-fi
-MSGMERGE="$ac_cv_path_MSGMERGE"
-if test "$MSGMERGE" != ":"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MSGMERGE" >&5
-$as_echo "$MSGMERGE" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-      if test "$GMSGFMT" != ":"; then
-            if $GMSGFMT --statistics /dev/null >/dev/null 2>&1 &&
-       (if $GMSGFMT --statistics /dev/null 2>&1 >/dev/null | grep usage >/dev/null; then exit 1; else exit 0; fi); then
-      : ;
-    else
-      GMSGFMT=`echo "$GMSGFMT" | sed -e 's,^.*/,,'`
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: found $GMSGFMT program is not GNU msgfmt; ignore it" >&5
-$as_echo "found $GMSGFMT program is not GNU msgfmt; ignore it" >&6; }
-      GMSGFMT=":"
-    fi
-  fi
-
-      if test "$XGETTEXT" != ":"; then
-            if $XGETTEXT --omit-header --copyright-holder= --msgid-bugs-address= /dev/null >/dev/null 2>&1 &&
-       (if $XGETTEXT --omit-header --copyright-holder= --msgid-bugs-address= /dev/null 2>&1 >/dev/null | grep usage >/dev/null; then exit 1; else exit 0; fi); then
-      : ;
-    else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: found xgettext program is not GNU xgettext; ignore it" >&5
-$as_echo "found xgettext program is not GNU xgettext; ignore it" >&6; }
-      XGETTEXT=":"
-    fi
-        rm -f messages.po
-  fi
-
-  ac_config_commands="$ac_config_commands default-1"
-
-
-ac_fn_c_check_type "$LINENO" "off_t" "ac_cv_type_off_t" "$ac_includes_default"
-if test "x$ac_cv_type_off_t" = xyes; then :
-  
-else
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define off_t long int
-_ACEOF
-
-fi
-
-ac_fn_c_check_type "$LINENO" "size_t" "ac_cv_type_size_t" "$ac_includes_default"
-if test "x$ac_cv_type_size_t" = xyes; then :
-  
-else
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define size_t unsigned int
-_ACEOF
-
-fi
-
-# The Ultrix 4.2 mips builtin alloca declared by alloca.h only works
-# for constant arguments.  Useless!
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for working alloca.h" >&5
-$as_echo_n "checking for working alloca.h... " >&6; }
-if ${ac_cv_working_alloca_h+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-@%:@include <alloca.h>
-int
-main ()
-{
-char *p = (char *) alloca (2 * sizeof (int));
-                         if (p) return 0;
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  ac_cv_working_alloca_h=yes
-else
-  ac_cv_working_alloca_h=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_working_alloca_h" >&5
-$as_echo "$ac_cv_working_alloca_h" >&6; }
-if test $ac_cv_working_alloca_h = yes; then
-  
-$as_echo "@%:@define HAVE_ALLOCA_H 1" >>confdefs.h
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for alloca" >&5
-$as_echo_n "checking for alloca... " >&6; }
-if ${ac_cv_func_alloca_works+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#ifdef __GNUC__
-# define alloca __builtin_alloca
-#else
-# ifdef _MSC_VER
-#  include <malloc.h>
-#  define alloca _alloca
-# else
-#  ifdef HAVE_ALLOCA_H
-#   include <alloca.h>
-#  else
-#   ifdef _AIX
- #pragma alloca
-#   else
-#    ifndef alloca /* predefined by HP cc +Olibcalls */
-void *alloca (size_t);
-#    endif
-#   endif
-#  endif
-# endif
-#endif
-
-int
-main ()
-{
-char *p = (char *) alloca (1);
-                                   if (p) return 0;
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  ac_cv_func_alloca_works=yes
-else
-  ac_cv_func_alloca_works=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_func_alloca_works" >&5
-$as_echo "$ac_cv_func_alloca_works" >&6; }
-
-if test $ac_cv_func_alloca_works = yes; then
-  
-$as_echo "@%:@define HAVE_ALLOCA 1" >>confdefs.h
-
-else
-  # The SVR3 libPW and SVR4 libucb both contain incompatible functions
-# that cause trouble.  Some versions do not even contain alloca or
-# contain a buggy version.  If you still want to use their alloca,
-# use ar to extract alloca.o from them instead of compiling alloca.c.
-
-ALLOCA=\${LIBOBJDIR}alloca.$ac_objext
-
-$as_echo "@%:@define C_ALLOCA 1" >>confdefs.h
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether \`alloca.c' needs Cray hooks" >&5
-$as_echo_n "checking whether \`alloca.c' needs Cray hooks... " >&6; }
-if ${ac_cv_os_cray+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#if defined CRAY && ! defined CRAY2
-webecray
-#else
-wenotbecray
-#endif
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "webecray" >/dev/null 2>&1; then :
-  ac_cv_os_cray=yes
-else
-  ac_cv_os_cray=no
-fi
-rm -f conftest*
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_os_cray" >&5
-$as_echo "$ac_cv_os_cray" >&6; }
-if test $ac_cv_os_cray = yes; then
-  for ac_func in _getb67 GETB67 getb67; do
-    as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
-ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
-if eval test \"x\$"$as_ac_var"\" = x"yes"; then :
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define CRAY_STACKSEG_END $ac_func
-_ACEOF
-
-    break
-fi
-
-  done
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking stack direction for C alloca" >&5
-$as_echo_n "checking stack direction for C alloca... " >&6; }
-if ${ac_cv_c_stack_direction+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test "$cross_compiling" = yes; then :
-  ac_cv_c_stack_direction=0
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-$ac_includes_default
-int
-find_stack_direction ()
-{
-  static char *addr = 0;
-  auto char dummy;
-  if (addr == 0)
-    {
-      addr = &dummy;
-      return find_stack_direction ();
-    }
-  else
-    return (&dummy > addr) ? 1 : -1;
-}
-
-int
-main ()
-{
-  return find_stack_direction () < 0;
-}
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-  ac_cv_c_stack_direction=1
-else
-  ac_cv_c_stack_direction=-1
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_stack_direction" >&5
-$as_echo "$ac_cv_c_stack_direction" >&6; }
-cat >>confdefs.h <<_ACEOF
-@%:@define STACK_DIRECTION $ac_cv_c_stack_direction
-_ACEOF
-
-
-fi
-
-
-
-  
-  for ac_header in $ac_header_list
-do :
-  as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
-ac_fn_c_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default
-"
-if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-@%:@define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
-fi
-
-done
-
-  
-
-
-
-
-
-
-for ac_func in getpagesize
-do :
-  ac_fn_c_check_func "$LINENO" "getpagesize" "ac_cv_func_getpagesize"
-if test "x$ac_cv_func_getpagesize" = xyes; then :
-  cat >>confdefs.h <<_ACEOF
-@%:@define HAVE_GETPAGESIZE 1
-_ACEOF
-fi
-done
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for working mmap" >&5
-$as_echo_n "checking for working mmap... " >&6; }
-if ${ac_cv_func_mmap_fixed_mapped+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test "$cross_compiling" = yes; then :
-  ac_cv_func_mmap_fixed_mapped=no
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-$ac_includes_default
-/* malloc might have been renamed as rpl_malloc. */
-#undef malloc
-
-/* Thanks to Mike Haertel and Jim Avera for this test.
-   Here is a matrix of mmap possibilities:
-       mmap private not fixed
-       mmap private fixed at somewhere currently unmapped
-       mmap private fixed at somewhere already mapped
-       mmap shared not fixed
-       mmap shared fixed at somewhere currently unmapped
-       mmap shared fixed at somewhere already mapped
-   For private mappings, we should verify that changes cannot be read()
-   back from the file, nor mmap's back from the file at a different
-   address.  (There have been systems where private was not correctly
-   implemented like the infamous i386 svr4.0, and systems where the
-   VM page cache was not coherent with the file system buffer cache
-   like early versions of FreeBSD and possibly contemporary NetBSD.)
-   For shared mappings, we should conversely verify that changes get
-   propagated back to all the places they're supposed to be.
-
-   Grep wants private fixed already mapped.
-   The main things grep needs to know about mmap are:
-   * does it exist and is it safe to write into the mmap'd area
-   * how to use it (BSD variants)  */
-
-#include <fcntl.h>
-#include <sys/mman.h>
-
-#if !defined STDC_HEADERS && !defined HAVE_STDLIB_H
-char *malloc ();
-#endif
-
-/* This mess was copied from the GNU getpagesize.h.  */
-#ifndef HAVE_GETPAGESIZE
-# ifdef _SC_PAGESIZE
-#  define getpagesize() sysconf(_SC_PAGESIZE)
-# else /* no _SC_PAGESIZE */
-#  ifdef HAVE_SYS_PARAM_H
-#   include <sys/param.h>
-#   ifdef EXEC_PAGESIZE
-#    define getpagesize() EXEC_PAGESIZE
-#   else /* no EXEC_PAGESIZE */
-#    ifdef NBPG
-#     define getpagesize() NBPG * CLSIZE
-#     ifndef CLSIZE
-#      define CLSIZE 1
-#     endif /* no CLSIZE */
-#    else /* no NBPG */
-#     ifdef NBPC
-#      define getpagesize() NBPC
-#     else /* no NBPC */
-#      ifdef PAGESIZE
-#       define getpagesize() PAGESIZE
-#      endif /* PAGESIZE */
-#     endif /* no NBPC */
-#    endif /* no NBPG */
-#   endif /* no EXEC_PAGESIZE */
-#  else /* no HAVE_SYS_PARAM_H */
-#   define getpagesize() 8192  /* punt totally */
-#  endif /* no HAVE_SYS_PARAM_H */
-# endif /* no _SC_PAGESIZE */
-
-#endif /* no HAVE_GETPAGESIZE */
-
-int
-main ()
-{
-  char *data, *data2, *data3;
-  const char *cdata2;
-  int i, pagesize;
-  int fd, fd2;
-
-  pagesize = getpagesize ();
-
-  /* First, make a file with some known garbage in it. */
-  data = (char *) malloc (pagesize);
-  if (!data)
-    return 1;
-  for (i = 0; i < pagesize; ++i)
-    *(data + i) = rand ();
-  umask (0);
-  fd = creat ("conftest.mmap", 0600);
-  if (fd < 0)
-    return 2;
-  if (write (fd, data, pagesize) != pagesize)
-    return 3;
-  close (fd);
-
-  /* Next, check that the tail of a page is zero-filled.  File must have
-     non-zero length, otherwise we risk SIGBUS for entire page.  */
-  fd2 = open ("conftest.txt", O_RDWR | O_CREAT | O_TRUNC, 0600);
-  if (fd2 < 0)
-    return 4;
-  cdata2 = "";
-  if (write (fd2, cdata2, 1) != 1)
-    return 5;
-  data2 = (char *) mmap (0, pagesize, PROT_READ | PROT_WRITE, MAP_SHARED, fd2, 0L);
-  if (data2 == MAP_FAILED)
-    return 6;
-  for (i = 0; i < pagesize; ++i)
-    if (*(data2 + i))
-      return 7;
-  close (fd2);
-  if (munmap (data2, pagesize))
-    return 8;
-
-  /* Next, try to mmap the file at a fixed address which already has
-     something else allocated at it.  If we can, also make sure that
-     we see the same garbage.  */
-  fd = open ("conftest.mmap", O_RDWR);
-  if (fd < 0)
-    return 9;
-  if (data2 != mmap (data2, pagesize, PROT_READ | PROT_WRITE,
-                    MAP_PRIVATE | MAP_FIXED, fd, 0L))
-    return 10;
-  for (i = 0; i < pagesize; ++i)
-    if (*(data + i) != *(data2 + i))
-      return 11;
-
-  /* Finally, make sure that changes to the mapped area do not
-     percolate back to the file as seen by read().  (This is a bug on
-     some variants of i386 svr4.0.)  */
-  for (i = 0; i < pagesize; ++i)
-    *(data2 + i) = *(data2 + i) + 1;
-  data3 = (char *) malloc (pagesize);
-  if (!data3)
-    return 12;
-  if (read (fd, data3, pagesize) != pagesize)
-    return 13;
-  for (i = 0; i < pagesize; ++i)
-    if (*(data + i) != *(data3 + i))
-      return 14;
-  close (fd);
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-  ac_cv_func_mmap_fixed_mapped=yes
-else
-  ac_cv_func_mmap_fixed_mapped=no
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_func_mmap_fixed_mapped" >&5
-$as_echo "$ac_cv_func_mmap_fixed_mapped" >&6; }
-if test $ac_cv_func_mmap_fixed_mapped = yes; then
-  
-$as_echo "@%:@define HAVE_MMAP 1" >>confdefs.h
-
-fi
-rm -f conftest.mmap conftest.txt
-
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are using the GNU C Library 2.1 or newer" >&5
-$as_echo_n "checking whether we are using the GNU C Library 2.1 or newer... " >&6; }
-if ${ac_cv_gnu_library_2_1+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#include <features.h>
-#ifdef __GNU_LIBRARY__
- #if (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 1) || (__GLIBC__ > 2)
-  Lucky GNU user
- #endif
-#endif
-       
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "Lucky GNU user" >/dev/null 2>&1; then :
-  ac_cv_gnu_library_2_1=yes
-else
-  ac_cv_gnu_library_2_1=no
-fi
-rm -f conftest*
-
-      
-    
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_gnu_library_2_1" >&5
-$as_echo "$ac_cv_gnu_library_2_1" >&6; }
-    
-    GLIBC21="$ac_cv_gnu_library_2_1"
-  
-
-
-    
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether integer division by zero raises SIGFPE" >&5
-$as_echo_n "checking whether integer division by zero raises SIGFPE... " >&6; }
-if ${gt_cv_int_divbyzero_sigfpe+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  
-      if test "$cross_compiling" = yes; then :
-  
-          # Guess based on the CPU.
-          case "$host_cpu" in
-            alpha* | i3456786 | m68k | s390*)
-              gt_cv_int_divbyzero_sigfpe="guessing yes";;
-            *)
-              gt_cv_int_divbyzero_sigfpe="guessing no";;
-          esac
-        
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#include <stdlib.h>
-#include <signal.h>
-
-static void
-#ifdef __cplusplus
-sigfpe_handler (int sig)
-#else
-sigfpe_handler (sig) int sig;
-#endif
-{
-  /* Exit with code 0 if SIGFPE, with code 1 if any other signal.  */
-  exit (sig != SIGFPE);
-}
-
-int x = 1;
-int y = 0;
-int z;
-int nan;
-
-int main ()
-{
-  signal (SIGFPE, sigfpe_handler);
-/* IRIX and AIX (when "xlc -qcheck" is used) yield signal SIGTRAP.  */
-#if (defined (__sgi) || defined (_AIX)) && defined (SIGTRAP)
-  signal (SIGTRAP, sigfpe_handler);
-#endif
-/* Linux/SPARC yields signal SIGILL.  */
-#if defined (__sparc__) && defined (__linux__)
-  signal (SIGILL, sigfpe_handler);
-#endif
-
-  z = x / y;
-  nan = y / y;
-  exit (1);
-}
-
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-  gt_cv_int_divbyzero_sigfpe=yes
-else
-  gt_cv_int_divbyzero_sigfpe=no
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-    
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gt_cv_int_divbyzero_sigfpe" >&5
-$as_echo "$gt_cv_int_divbyzero_sigfpe" >&6; }
-  case "$gt_cv_int_divbyzero_sigfpe" in
-    *yes) value=1;;
-    *) value=0;;
-  esac
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define INTDIV0_RAISES_SIGFPE $value
-_ACEOF
-
-
-
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for inttypes.h" >&5
-$as_echo_n "checking for inttypes.h... " >&6; }
-if ${jm_ac_cv_header_inttypes_h+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <sys/types.h>
-#include <inttypes.h>
-int
-main ()
-{
-uintmax_t i = (uintmax_t) -1;
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  jm_ac_cv_header_inttypes_h=yes
-else
-  jm_ac_cv_header_inttypes_h=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $jm_ac_cv_header_inttypes_h" >&5
-$as_echo "$jm_ac_cv_header_inttypes_h" >&6; }
-  if test $jm_ac_cv_header_inttypes_h = yes; then
-    
-cat >>confdefs.h <<_ACEOF
-@%:@define HAVE_INTTYPES_H_WITH_UINTMAX 1
-_ACEOF
-
-  fi
-
-
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdint.h" >&5
-$as_echo_n "checking for stdint.h... " >&6; }
-if ${jm_ac_cv_header_stdint_h+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <sys/types.h>
-#include <stdint.h>
-int
-main ()
-{
-uintmax_t i = (uintmax_t) -1;
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  jm_ac_cv_header_stdint_h=yes
-else
-  jm_ac_cv_header_stdint_h=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $jm_ac_cv_header_stdint_h" >&5
-$as_echo "$jm_ac_cv_header_stdint_h" >&6; }
-  if test $jm_ac_cv_header_stdint_h = yes; then
-    
-cat >>confdefs.h <<_ACEOF
-@%:@define HAVE_STDINT_H_WITH_UINTMAX 1
-_ACEOF
-
-  fi
-
-
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for unsigned long long" >&5
-$as_echo_n "checking for unsigned long long... " >&6; }
-if ${ac_cv_type_unsigned_long_long+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-unsigned long long ull = 1; int i = 63;
-int
-main ()
-{
-unsigned long long ullmax = (unsigned long long) -1;
-     return ull << i | ull >> i | ullmax / ull | ullmax % ull;
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  ac_cv_type_unsigned_long_long=yes
-else
-  ac_cv_type_unsigned_long_long=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_type_unsigned_long_long" >&5
-$as_echo "$ac_cv_type_unsigned_long_long" >&6; }
-  if test $ac_cv_type_unsigned_long_long = yes; then
-    
-$as_echo "@%:@define HAVE_UNSIGNED_LONG_LONG 1" >>confdefs.h
-
-  fi
-
-
-  
-  
-  if test $jm_ac_cv_header_inttypes_h = no && test $jm_ac_cv_header_stdint_h = no; then
-    
-    test $ac_cv_type_unsigned_long_long = yes \
-      && ac_type='unsigned long long' \
-      || ac_type='unsigned long'
-    
-cat >>confdefs.h <<_ACEOF
-@%:@define uintmax_t $ac_type
-_ACEOF
-
-  else
-    
-$as_echo "@%:@define HAVE_UINTMAX_T 1" >>confdefs.h
-
-  fi
-
-
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for inttypes.h" >&5
-$as_echo_n "checking for inttypes.h... " >&6; }
-if ${gt_cv_header_inttypes_h+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <sys/types.h>
-#include <inttypes.h>
-int
-main ()
-{
-
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  gt_cv_header_inttypes_h=yes
-else
-  gt_cv_header_inttypes_h=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gt_cv_header_inttypes_h" >&5
-$as_echo "$gt_cv_header_inttypes_h" >&6; }
-  if test $gt_cv_header_inttypes_h = yes; then
-    
-cat >>confdefs.h <<_ACEOF
-@%:@define HAVE_INTTYPES_H 1
-_ACEOF
-
-  fi
-
-
-  
-  if test $gt_cv_header_inttypes_h = yes; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the inttypes.h PRIxNN macros are broken" >&5
-$as_echo_n "checking whether the inttypes.h PRIxNN macros are broken... " >&6; }
-if ${gt_cv_inttypes_pri_broken+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  
-        cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <inttypes.h>
-#ifdef PRId32
-char *p = PRId32;
-#endif
-
-int
-main ()
-{
-
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  gt_cv_inttypes_pri_broken=no
-else
-  gt_cv_inttypes_pri_broken=yes
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-      
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gt_cv_inttypes_pri_broken" >&5
-$as_echo "$gt_cv_inttypes_pri_broken" >&6; }
-  fi
-  if test "$gt_cv_inttypes_pri_broken" = yes; then
-    
-cat >>confdefs.h <<_ACEOF
-@%:@define PRI_MACROS_BROKEN 1
-_ACEOF
-
-  fi
-
-
-      if test "X$prefix" = "XNONE"; then
-    acl_final_prefix="$ac_default_prefix"
-  else
-    acl_final_prefix="$prefix"
-  fi
-  if test "X$exec_prefix" = "XNONE"; then
-    acl_final_exec_prefix='${prefix}'
-  else
-    acl_final_exec_prefix="$exec_prefix"
-  fi
-  acl_save_prefix="$prefix"
-  prefix="$acl_final_prefix"
-  eval acl_final_exec_prefix=\"$acl_final_exec_prefix\"
-  prefix="$acl_save_prefix"
-
-
-@%:@ Check whether --with-gnu-ld was given.
-if test "${with_gnu_ld+set}" = set; then :
-  withval=$with_gnu_ld; test "$withval" = no || with_gnu_ld=yes
-else
-  with_gnu_ld=no
-fi
-
-# Prepare PATH_SEPARATOR.
-# The user is always right.
-if test "${PATH_SEPARATOR+set}" != set; then
-  echo "#! /bin/sh" >conf$$.sh
-  echo  "exit 0"   >>conf$$.sh
-  chmod +x conf$$.sh
-  if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then
-    PATH_SEPARATOR=';'
-  else
-    PATH_SEPARATOR=:
-  fi
-  rm -f conf$$.sh
-fi
-ac_prog=ld
-if test "$GCC" = yes; then
-  # Check if gcc -print-prog-name=ld gives a path.
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ld used by GCC" >&5
-$as_echo_n "checking for ld used by GCC... " >&6; }
-  case $host in
-  *-*-mingw*)
-    # gcc leaves a trailing carriage return which upsets mingw
-    ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;;
-  *)
-    ac_prog=`($CC -print-prog-name=ld) 2>&5` ;;
-  esac
-  case $ac_prog in
-    # Accept absolute paths.
-    [\\/]* | [A-Za-z]:[\\/]*)
-      re_direlt='/[^/][^/]*/\.\./'
-      # Canonicalize the path of ld
-      ac_prog=`echo $ac_prog| sed 's%\\\\%/%g'`
-      while echo $ac_prog | grep "$re_direlt" > /dev/null 2>&1; do
-       ac_prog=`echo $ac_prog| sed "s%$re_direlt%/%"`
-      done
-      test -z "$LD" && LD="$ac_prog"
-      ;;
-  "")
-    # If it fails, then pretend we aren't using GCC.
-    ac_prog=ld
-    ;;
-  *)
-    # If it is relative, then search for the first ld in PATH.
-    with_gnu_ld=unknown
-    ;;
-  esac
-elif test "$with_gnu_ld" = yes; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for GNU ld" >&5
-$as_echo_n "checking for GNU ld... " >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for non-GNU ld" >&5
-$as_echo_n "checking for non-GNU ld... " >&6; }
-fi
-if ${acl_cv_path_LD+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test -z "$LD"; then
-  IFS="${IFS=  }"; ac_save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR-:}"
-  for ac_dir in $PATH; do
-    test -z "$ac_dir" && ac_dir=.
-    if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then
-      acl_cv_path_LD="$ac_dir/$ac_prog"
-      # Check to see if the program is GNU ld.  I'd rather use --version,
-      # but apparently some GNU ld's only accept -v.
-      # Break only if it was the GNU/non-GNU ld that we prefer.
-      if "$acl_cv_path_LD" -v 2>&1 < /dev/null | egrep '(GNU|with BFD)' > /dev/null; then
-       test "$with_gnu_ld" != no && break
-      else
-       test "$with_gnu_ld" != yes && break
-      fi
-    fi
-  done
-  IFS="$ac_save_ifs"
-else
-  acl_cv_path_LD="$LD" # Let the user override the test with a path.
-fi
-fi
-
-LD="$acl_cv_path_LD"
-if test -n "$LD"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LD" >&5
-$as_echo "$LD" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-test -z "$LD" && as_fn_error $? "no acceptable ld found in \$PATH" "$LINENO" 5
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if the linker ($LD) is GNU ld" >&5
-$as_echo_n "checking if the linker ($LD) is GNU ld... " >&6; }
-if ${acl_cv_prog_gnu_ld+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  # I'd rather use --version here, but apparently some GNU ld's only accept -v.
-if $LD -v 2>&1 </dev/null | egrep '(GNU|with BFD)' 1>&5; then
-  acl_cv_prog_gnu_ld=yes
-else
-  acl_cv_prog_gnu_ld=no
-fi
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $acl_cv_prog_gnu_ld" >&5
-$as_echo "$acl_cv_prog_gnu_ld" >&6; }
-with_gnu_ld=$acl_cv_prog_gnu_ld
-
-
-
-                                                { $as_echo "$as_me:${as_lineno-$LINENO}: checking for shared library run path origin" >&5
-$as_echo_n "checking for shared library run path origin... " >&6; }
-if ${acl_cv_rpath+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  
-    CC="$CC" GCC="$GCC" LDFLAGS="$LDFLAGS" LD="$LD" with_gnu_ld="$with_gnu_ld" \
-    ${CONFIG_SHELL-/bin/sh} "$ac_aux_dir/config.rpath" "$host" > conftest.sh
-    . ./conftest.sh
-    rm -f ./conftest.sh
-    acl_cv_rpath=done
-  
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $acl_cv_rpath" >&5
-$as_echo "$acl_cv_rpath" >&6; }
-  wl="$acl_cv_wl"
-  libext="$acl_cv_libext"
-  shlibext="$acl_cv_shlibext"
-  hardcode_libdir_flag_spec="$acl_cv_hardcode_libdir_flag_spec"
-  hardcode_libdir_separator="$acl_cv_hardcode_libdir_separator"
-  hardcode_direct="$acl_cv_hardcode_direct"
-  hardcode_minus_L="$acl_cv_hardcode_minus_L"
-    @%:@ Check whether --enable-rpath was given.
-if test "${enable_rpath+set}" = set; then :
-  enableval=$enable_rpath; :
-else
-  enable_rpath=yes
-fi
-
-
-
-    
-  
-
-      
-  
-    use_additional=yes
-  
-  acl_save_prefix="$prefix"
-  prefix="$acl_final_prefix"
-  acl_save_exec_prefix="$exec_prefix"
-  exec_prefix="$acl_final_exec_prefix"
-  
-    eval additional_includedir=\"$includedir\"
-    eval additional_libdir=\"$libdir\"
-  
-  exec_prefix="$acl_save_exec_prefix"
-  prefix="$acl_save_prefix"
-
-  
-@%:@ Check whether --with-libiconv-prefix was given.
-if test "${with_libiconv_prefix+set}" = set; then :
-  withval=$with_libiconv_prefix; 
-    if test "X$withval" = "Xno"; then
-      use_additional=no
-    else
-      if test "X$withval" = "X"; then
-        
-  acl_save_prefix="$prefix"
-  prefix="$acl_final_prefix"
-  acl_save_exec_prefix="$exec_prefix"
-  exec_prefix="$acl_final_exec_prefix"
-  
-          eval additional_includedir=\"$includedir\"
-          eval additional_libdir=\"$libdir\"
-        
-  exec_prefix="$acl_save_exec_prefix"
-  prefix="$acl_save_prefix"
-
-      else
-        additional_includedir="$withval/include"
-        additional_libdir="$withval/lib"
-      fi
-    fi
-
-fi
-
-      LIBICONV=
-  LTLIBICONV=
-  INCICONV=
-  rpathdirs=
-  ltrpathdirs=
-  names_already_handled=
-  names_next_round='iconv '
-  while test -n "$names_next_round"; do
-    names_this_round="$names_next_round"
-    names_next_round=
-    for name in $names_this_round; do
-      already_handled=
-      for n in $names_already_handled; do
-        if test "$n" = "$name"; then
-          already_handled=yes
-          break
-        fi
-      done
-      if test -z "$already_handled"; then
-        names_already_handled="$names_already_handled $name"
-                        uppername=`echo "$name" | sed -e 'y|abcdefghijklmnopqrstuvwxyz./-|ABCDEFGHIJKLMNOPQRSTUVWXYZ___|'`
-        eval value=\"\$HAVE_LIB$uppername\"
-        if test -n "$value"; then
-          if test "$value" = yes; then
-            eval value=\"\$LIB$uppername\"
-            test -z "$value" || LIBICONV="${LIBICONV}${LIBICONV:+ }$value"
-            eval value=\"\$LTLIB$uppername\"
-            test -z "$value" || LTLIBICONV="${LTLIBICONV}${LTLIBICONV:+ }$value"
-          else
-                                    :
-          fi
-        else
-                              found_dir=
-          found_la=
-          found_so=
-          found_a=
-          if test $use_additional = yes; then
-            if test "X$prefer_shared" = "Xyes" && test -n "$shlibext" && test -f "$additional_libdir/lib$name.$shlibext"; then
-              found_dir="$additional_libdir"
-              found_so="$additional_libdir/lib$name.$shlibext"
-              if test -f "$additional_libdir/lib$name.la"; then
-                found_la="$additional_libdir/lib$name.la"
-              fi
-            else
-              if test -f "$additional_libdir/lib$name.$libext"; then
-                found_dir="$additional_libdir"
-                found_a="$additional_libdir/lib$name.$libext"
-                if test -f "$additional_libdir/lib$name.la"; then
-                  found_la="$additional_libdir/lib$name.la"
-                fi
-              fi
-            fi
-          fi
-          if test "X$found_dir" = "X"; then
-            for x in $LDFLAGS $LTLIBICONV; do
-              
-  acl_save_prefix="$prefix"
-  prefix="$acl_final_prefix"
-  acl_save_exec_prefix="$exec_prefix"
-  exec_prefix="$acl_final_exec_prefix"
-  eval x=\"$x\"
-  exec_prefix="$acl_save_exec_prefix"
-  prefix="$acl_save_prefix"
-
-              case "$x" in
-                -L*)
-                  dir=`echo "X$x" | sed -e 's/^X-L//'`
-                  if test "X$prefer_shared" = "Xyes" && test -n "$shlibext" && test -f "$dir/lib$name.$shlibext"; then
-                    found_dir="$dir"
-                    found_so="$dir/lib$name.$shlibext"
-                    if test -f "$dir/lib$name.la"; then
-                      found_la="$dir/lib$name.la"
-                    fi
-                  else
-                    if test -f "$dir/lib$name.$libext"; then
-                      found_dir="$dir"
-                      found_a="$dir/lib$name.$libext"
-                      if test -f "$dir/lib$name.la"; then
-                        found_la="$dir/lib$name.la"
-                      fi
-                    fi
-                  fi
-                  ;;
-              esac
-              if test "X$found_dir" != "X"; then
-                break
-              fi
-            done
-          fi
-          if test "X$found_dir" != "X"; then
-                        LTLIBICONV="${LTLIBICONV}${LTLIBICONV:+ }-L$found_dir -l$name"
-            if test "X$found_so" != "X"; then
-                                                        if test "$enable_rpath" = no || test "X$found_dir" = "X/usr/lib"; then
-                                LIBICONV="${LIBICONV}${LIBICONV:+ }$found_so"
-              else
-                                                                                haveit=
-                for x in $ltrpathdirs; do
-                  if test "X$x" = "X$found_dir"; then
-                    haveit=yes
-                    break
-                  fi
-                done
-                if test -z "$haveit"; then
-                  ltrpathdirs="$ltrpathdirs $found_dir"
-                fi
-                                if test "$hardcode_direct" = yes; then
-                                                      LIBICONV="${LIBICONV}${LIBICONV:+ }$found_so"
-                else
-                  if test -n "$hardcode_libdir_flag_spec" && test "$hardcode_minus_L" = no; then
-                                                            LIBICONV="${LIBICONV}${LIBICONV:+ }$found_so"
-                                                            haveit=
-                    for x in $rpathdirs; do
-                      if test "X$x" = "X$found_dir"; then
-                        haveit=yes
-                        break
-                      fi
-                    done
-                    if test -z "$haveit"; then
-                      rpathdirs="$rpathdirs $found_dir"
-                    fi
-                  else
-                                                                                haveit=
-                    for x in $LDFLAGS $LIBICONV; do
-                      
-  acl_save_prefix="$prefix"
-  prefix="$acl_final_prefix"
-  acl_save_exec_prefix="$exec_prefix"
-  exec_prefix="$acl_final_exec_prefix"
-  eval x=\"$x\"
-  exec_prefix="$acl_save_exec_prefix"
-  prefix="$acl_save_prefix"
-
-                      if test "X$x" = "X-L$found_dir"; then
-                        haveit=yes
-                        break
-                      fi
-                    done
-                    if test -z "$haveit"; then
-                      LIBICONV="${LIBICONV}${LIBICONV:+ }-L$found_dir"
-                    fi
-                    if test "$hardcode_minus_L" != no; then
-                                                                                        LIBICONV="${LIBICONV}${LIBICONV:+ }$found_so"
-                    else
-                                                                                                                                                                                LIBICONV="${LIBICONV}${LIBICONV:+ }-l$name"
-                    fi
-                  fi
-                fi
-              fi
-            else
-              if test "X$found_a" != "X"; then
-                                LIBICONV="${LIBICONV}${LIBICONV:+ }$found_a"
-              else
-                                                LIBICONV="${LIBICONV}${LIBICONV:+ }-L$found_dir -l$name"
-              fi
-            fi
-                        additional_includedir=
-            case "$found_dir" in
-              */lib | */lib/)
-                basedir=`echo "X$found_dir" | sed -e 's,^X,,' -e 's,/lib/*$,,'`
-                additional_includedir="$basedir/include"
-                ;;
-            esac
-            if test "X$additional_includedir" != "X"; then
-                                                                                                                if test "X$additional_includedir" != "X/usr/include"; then
-                haveit=
-                if test "X$additional_includedir" = "X/usr/local/include"; then
-                  if test -n "$GCC"; then
-                    case $host_os in
-                      linux*) haveit=yes;;
-                    esac
-                  fi
-                fi
-                if test -z "$haveit"; then
-                  for x in $CPPFLAGS $INCICONV; do
-                    
-  acl_save_prefix="$prefix"
-  prefix="$acl_final_prefix"
-  acl_save_exec_prefix="$exec_prefix"
-  exec_prefix="$acl_final_exec_prefix"
-  eval x=\"$x\"
-  exec_prefix="$acl_save_exec_prefix"
-  prefix="$acl_save_prefix"
-
-                    if test "X$x" = "X-I$additional_includedir"; then
-                      haveit=yes
-                      break
-                    fi
-                  done
-                  if test -z "$haveit"; then
-                    if test -d "$additional_includedir"; then
-                                            INCICONV="${INCICONV}${INCICONV:+ }-I$additional_includedir"
-                    fi
-                  fi
-                fi
-              fi
-            fi
-                        if test -n "$found_la"; then
-                                                        save_libdir="$libdir"
-              case "$found_la" in
-                */* | *\\*) . "$found_la" ;;
-                *) . "./$found_la" ;;
-              esac
-              libdir="$save_libdir"
-                            for dep in $dependency_libs; do
-                case "$dep" in
-                  -L*)
-                    additional_libdir=`echo "X$dep" | sed -e 's/^X-L//'`
-                                                                                                                                                                if test "X$additional_libdir" != "X/usr/lib"; then
-                      haveit=
-                      if test "X$additional_libdir" = "X/usr/local/lib"; then
-                        if test -n "$GCC"; then
-                          case $host_os in
-                            linux*) haveit=yes;;
-                          esac
-                        fi
-                      fi
-                      if test -z "$haveit"; then
-                        haveit=
-                        for x in $LDFLAGS $LIBICONV; do
-                          
-  acl_save_prefix="$prefix"
-  prefix="$acl_final_prefix"
-  acl_save_exec_prefix="$exec_prefix"
-  exec_prefix="$acl_final_exec_prefix"
-  eval x=\"$x\"
-  exec_prefix="$acl_save_exec_prefix"
-  prefix="$acl_save_prefix"
-
-                          if test "X$x" = "X-L$additional_libdir"; then
-                            haveit=yes
-                            break
-                          fi
-                        done
-                        if test -z "$haveit"; then
-                          if test -d "$additional_libdir"; then
-                                                        LIBICONV="${LIBICONV}${LIBICONV:+ }-L$additional_libdir"
-                          fi
-                        fi
-                        haveit=
-                        for x in $LDFLAGS $LTLIBICONV; do
-                          
-  acl_save_prefix="$prefix"
-  prefix="$acl_final_prefix"
-  acl_save_exec_prefix="$exec_prefix"
-  exec_prefix="$acl_final_exec_prefix"
-  eval x=\"$x\"
-  exec_prefix="$acl_save_exec_prefix"
-  prefix="$acl_save_prefix"
-
-                          if test "X$x" = "X-L$additional_libdir"; then
-                            haveit=yes
-                            break
-                          fi
-                        done
-                        if test -z "$haveit"; then
-                          if test -d "$additional_libdir"; then
-                                                        LTLIBICONV="${LTLIBICONV}${LTLIBICONV:+ }-L$additional_libdir"
-                          fi
-                        fi
-                      fi
-                    fi
-                    ;;
-                  -R*)
-                    dir=`echo "X$dep" | sed -e 's/^X-R//'`
-                    if test "$enable_rpath" != no; then
-                                                                  haveit=
-                      for x in $rpathdirs; do
-                        if test "X$x" = "X$dir"; then
-                          haveit=yes
-                          break
-                        fi
-                      done
-                      if test -z "$haveit"; then
-                        rpathdirs="$rpathdirs $dir"
-                      fi
-                                                                  haveit=
-                      for x in $ltrpathdirs; do
-                        if test "X$x" = "X$dir"; then
-                          haveit=yes
-                          break
-                        fi
-                      done
-                      if test -z "$haveit"; then
-                        ltrpathdirs="$ltrpathdirs $dir"
-                      fi
-                    fi
-                    ;;
-                  -l*)
-                                        names_next_round="$names_next_round "`echo "X$dep" | sed -e 's/^X-l//'`
-                    ;;
-                  *.la)
-                                                                                names_next_round="$names_next_round "`echo "X$dep" | sed -e 's,^X.*/,,' -e 's,^lib,,' -e 's,\.la$,,'`
-                    ;;
-                  *)
-                                        LIBICONV="${LIBICONV}${LIBICONV:+ }$dep"
-                    LTLIBICONV="${LTLIBICONV}${LTLIBICONV:+ }$dep"
-                    ;;
-                esac
-              done
-            fi
-          else
-                                                            LIBICONV="${LIBICONV}${LIBICONV:+ }-l$name"
-            LTLIBICONV="${LTLIBICONV}${LTLIBICONV:+ }-l$name"
-          fi
-        fi
-      fi
-    done
-  done
-  if test "X$rpathdirs" != "X"; then
-    if test -n "$hardcode_libdir_separator"; then
-                        alldirs=
-      for found_dir in $rpathdirs; do
-        alldirs="${alldirs}${alldirs:+$hardcode_libdir_separator}$found_dir"
-      done
-            acl_save_libdir="$libdir"
-      libdir="$alldirs"
-      eval flag=\"$hardcode_libdir_flag_spec\"
-      libdir="$acl_save_libdir"
-      LIBICONV="${LIBICONV}${LIBICONV:+ }$flag"
-    else
-            for found_dir in $rpathdirs; do
-        acl_save_libdir="$libdir"
-        libdir="$found_dir"
-        eval flag=\"$hardcode_libdir_flag_spec\"
-        libdir="$acl_save_libdir"
-        LIBICONV="${LIBICONV}${LIBICONV:+ }$flag"
-      done
-    fi
-  fi
-  if test "X$ltrpathdirs" != "X"; then
-            for found_dir in $ltrpathdirs; do
-      LTLIBICONV="${LTLIBICONV}${LTLIBICONV:+ }-R$found_dir"
-    done
-  fi
-
-
-
-                                    
-  for ac_header in argz.h limits.h locale.h nl_types.h malloc.h stddef.h \
-stdlib.h string.h unistd.h sys/param.h
-do :
-  as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
-ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default"
-if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-@%:@define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
-fi
-
-done
-
-  for ac_func in feof_unlocked fgets_unlocked getc_unlocked getcwd getegid \
-geteuid getgid getuid mempcpy munmap putenv setenv setlocale localeconv stpcpy \
-strcasecmp strdup strtoul tsearch __argz_count __argz_stringify __argz_next \
-__fsetlocking
-do :
-  as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
-ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
-if eval test \"x\$"$as_ac_var"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-@%:@define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1
-_ACEOF
-fi
-done
-
-
-  
-  
-    
-      
-
-          am_save_CPPFLAGS="$CPPFLAGS"
-  
-  for element in $INCICONV; do
-    haveit=
-    for x in $CPPFLAGS; do
-      
-  acl_save_prefix="$prefix"
-  prefix="$acl_final_prefix"
-  acl_save_exec_prefix="$exec_prefix"
-  exec_prefix="$acl_final_exec_prefix"
-  eval x=\"$x\"
-  exec_prefix="$acl_save_exec_prefix"
-  prefix="$acl_save_prefix"
-
-      if test "X$x" = "X$element"; then
-        haveit=yes
-        break
-      fi
-    done
-    if test -z "$haveit"; then
-      CPPFLAGS="${CPPFLAGS}${CPPFLAGS:+ }$element"
-    fi
-  done
-
-
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for iconv" >&5
-$as_echo_n "checking for iconv... " >&6; }
-if ${am_cv_func_iconv+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  
-    am_cv_func_iconv="no, consider installing GNU libiconv"
-    am_cv_lib_iconv=no
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <stdlib.h>
-#include <iconv.h>
-int
-main ()
-{
-iconv_t cd = iconv_open("","");
-       iconv(cd,NULL,NULL,NULL,NULL);
-       iconv_close(cd);
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  am_cv_func_iconv=yes
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-    if test "$am_cv_func_iconv" != yes; then
-      am_save_LIBS="$LIBS"
-      LIBS="$LIBS $LIBICONV"
-      cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <stdlib.h>
-#include <iconv.h>
-int
-main ()
-{
-iconv_t cd = iconv_open("","");
-         iconv(cd,NULL,NULL,NULL,NULL);
-         iconv_close(cd);
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  am_cv_lib_iconv=yes
-        am_cv_func_iconv=yes
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-      LIBS="$am_save_LIBS"
-    fi
-  
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_func_iconv" >&5
-$as_echo "$am_cv_func_iconv" >&6; }
-  if test "$am_cv_func_iconv" = yes; then
-    
-$as_echo "@%:@define HAVE_ICONV 1" >>confdefs.h
-
-  fi
-  if test "$am_cv_lib_iconv" = yes; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to link with libiconv" >&5
-$as_echo_n "checking how to link with libiconv... " >&6; }
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LIBICONV" >&5
-$as_echo "$LIBICONV" >&6; }
-  else
-            CPPFLAGS="$am_save_CPPFLAGS"
-    LIBICONV=
-    LTLIBICONV=
-  fi
-  
-  
-
-  if test "$am_cv_func_iconv" = yes; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for iconv declaration" >&5
-$as_echo_n "checking for iconv declaration... " >&6; }
-    if ${am_cv_proto_iconv+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  
-      cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#include <stdlib.h>
-#include <iconv.h>
-extern
-#ifdef __cplusplus
-"C"
-#endif
-#if defined(__STDC__) || defined(__cplusplus)
-size_t iconv (iconv_t cd, char * *inbuf, size_t *inbytesleft, char * *outbuf, size_t *outbytesleft);
-#else
-size_t iconv();
-#endif
-
-int
-main ()
-{
-
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  am_cv_proto_iconv_arg1=""
-else
-  am_cv_proto_iconv_arg1="const"
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-      am_cv_proto_iconv="extern size_t iconv (iconv_t cd, $am_cv_proto_iconv_arg1 char * *inbuf, size_t *inbytesleft, char * *outbuf, size_t *outbytesleft);"
-fi
-
-    am_cv_proto_iconv=`echo "$am_cv_proto_iconv" | tr -s ' ' | sed -e 's/( /(/'`
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: ${ac_t:-
-         }$am_cv_proto_iconv" >&5
-$as_echo "${ac_t:-
-         }$am_cv_proto_iconv" >&6; }
-    
-cat >>confdefs.h <<_ACEOF
-@%:@define ICONV_CONST $am_cv_proto_iconv_arg1
-_ACEOF
-
-  fi
-
-  
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for nl_langinfo and CODESET" >&5
-$as_echo_n "checking for nl_langinfo and CODESET... " >&6; }
-if ${am_cv_langinfo_codeset+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <langinfo.h>
-int
-main ()
-{
-char* cs = nl_langinfo(CODESET);
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  am_cv_langinfo_codeset=yes
-else
-  am_cv_langinfo_codeset=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-    
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_langinfo_codeset" >&5
-$as_echo "$am_cv_langinfo_codeset" >&6; }
-  if test $am_cv_langinfo_codeset = yes; then
-    
-$as_echo "@%:@define HAVE_LANGINFO_CODESET 1" >>confdefs.h
-
-  fi
-
-  if test $ac_cv_header_locale_h = yes; then
-    
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for LC_MESSAGES" >&5
-$as_echo_n "checking for LC_MESSAGES... " >&6; }
-if ${am_cv_val_LC_MESSAGES+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <locale.h>
-int
-main ()
-{
-return LC_MESSAGES
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  am_cv_val_LC_MESSAGES=yes
-else
-  am_cv_val_LC_MESSAGES=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_val_LC_MESSAGES" >&5
-$as_echo "$am_cv_val_LC_MESSAGES" >&6; }
-  if test $am_cv_val_LC_MESSAGES = yes; then
-    
-$as_echo "@%:@define HAVE_LC_MESSAGES 1" >>confdefs.h
-
-  fi
-
-  fi
-
-                      for ac_prog in bison
-do
-  # Extract the first word of "$ac_prog", so it can be a program name with args.
-set dummy $ac_prog; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_INTLBISON+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test -n "$INTLBISON"; then
-  ac_cv_prog_INTLBISON="$INTLBISON" # 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 { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_prog_INTLBISON="$ac_prog"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-fi
-fi
-INTLBISON=$ac_cv_prog_INTLBISON
-if test -n "$INTLBISON"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $INTLBISON" >&5
-$as_echo "$INTLBISON" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-  test -n "$INTLBISON" && break
-done
-
-  if test -z "$INTLBISON"; then
-    ac_verc_fail=yes
-  else
-        { $as_echo "$as_me:${as_lineno-$LINENO}: checking version of bison" >&5
-$as_echo_n "checking version of bison... " >&6; }
-    ac_prog_version=`$INTLBISON --version 2>&1 | sed -n 's/^.*GNU Bison.* \([0-9]*\.[0-9.]*\).*$/\1/p'`
-    case $ac_prog_version in
-      '') ac_prog_version="v. ?.??, bad"; ac_verc_fail=yes;;
-      1.2[6-9]* | 1.[3-9][0-9]* | [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
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_prog_version" >&5
-$as_echo "$ac_prog_version" >&6; }
-  fi
-  if test $ac_verc_fail = yes; then
-    INTLBISON=:
-  fi
-
-
-    
-  
-  
-  
-
-    
-      
-
-    
-  
-
-                        
-
-    
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether NLS is requested" >&5
-$as_echo_n "checking whether NLS is requested... " >&6; }
-    @%:@ Check whether --enable-nls was given.
-if test "${enable_nls+set}" = set; then :
-  enableval=$enable_nls; USE_NLS=$enableval
-else
-  USE_NLS=yes
-fi
-
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $USE_NLS" >&5
-$as_echo "$USE_NLS" >&6; }
-  
-
-
-  
-    BUILD_INCLUDED_LIBINTL=no
-    USE_INCLUDED_LIBINTL=no
-  
-  LIBINTL=
-  LTLIBINTL=
-  POSUB=
-
-    if test "$USE_NLS" = "yes"; then
-    gt_use_preinstalled_gnugettext=no
-    
-      { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether included gettext is requested" >&5
-$as_echo_n "checking whether included gettext is requested... " >&6; }
-      
-@%:@ Check whether --with-included-gettext was given.
-if test "${with_included_gettext+set}" = set; then :
-  withval=$with_included_gettext; nls_cv_force_use_gnu_gettext=$withval
-else
-  nls_cv_force_use_gnu_gettext=no
-fi
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: $nls_cv_force_use_gnu_gettext" >&5
-$as_echo "$nls_cv_force_use_gnu_gettext" >&6; }
-
-      nls_cv_use_gnu_gettext="$nls_cv_force_use_gnu_gettext"
-      if test "$nls_cv_force_use_gnu_gettext" != "yes"; then
-    
-                        
-                
-        
-        
-
-        { $as_echo "$as_me:${as_lineno-$LINENO}: checking for GNU gettext in libc" >&5
-$as_echo_n "checking for GNU gettext in libc... " >&6; }
-if ${gt_cv_func_gnugettext2_libc+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <libintl.h>
-extern int _nl_msg_cat_cntr;
-extern int *_nl_domain_bindings;
-int
-main ()
-{
-bindtextdomain ("", "");
-return (int) gettext ("") + (int) ngettext ("", "", 0) + _nl_msg_cat_cntr + *_nl_domain_bindings
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  gt_cv_func_gnugettext2_libc=yes
-else
-  gt_cv_func_gnugettext2_libc=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gt_cv_func_gnugettext2_libc" >&5
-$as_echo "$gt_cv_func_gnugettext2_libc" >&6; }
-
-        if test "$gt_cv_func_gnugettext2_libc" != "yes"; then
-                    
-                                                  
-  
-    use_additional=yes
-  
-  acl_save_prefix="$prefix"
-  prefix="$acl_final_prefix"
-  acl_save_exec_prefix="$exec_prefix"
-  exec_prefix="$acl_final_exec_prefix"
-  
-    eval additional_includedir=\"$includedir\"
-    eval additional_libdir=\"$libdir\"
-  
-  exec_prefix="$acl_save_exec_prefix"
-  prefix="$acl_save_prefix"
-
-  
-@%:@ Check whether --with-libintl-prefix was given.
-if test "${with_libintl_prefix+set}" = set; then :
-  withval=$with_libintl_prefix; 
-    if test "X$withval" = "Xno"; then
-      use_additional=no
-    else
-      if test "X$withval" = "X"; then
-        
-  acl_save_prefix="$prefix"
-  prefix="$acl_final_prefix"
-  acl_save_exec_prefix="$exec_prefix"
-  exec_prefix="$acl_final_exec_prefix"
-  
-          eval additional_includedir=\"$includedir\"
-          eval additional_libdir=\"$libdir\"
-        
-  exec_prefix="$acl_save_exec_prefix"
-  prefix="$acl_save_prefix"
-
-      else
-        additional_includedir="$withval/include"
-        additional_libdir="$withval/lib"
-      fi
-    fi
-
-fi
-
-      LIBINTL=
-  LTLIBINTL=
-  INCINTL=
-  rpathdirs=
-  ltrpathdirs=
-  names_already_handled=
-  names_next_round='intl '
-  while test -n "$names_next_round"; do
-    names_this_round="$names_next_round"
-    names_next_round=
-    for name in $names_this_round; do
-      already_handled=
-      for n in $names_already_handled; do
-        if test "$n" = "$name"; then
-          already_handled=yes
-          break
-        fi
-      done
-      if test -z "$already_handled"; then
-        names_already_handled="$names_already_handled $name"
-                        uppername=`echo "$name" | sed -e 'y|abcdefghijklmnopqrstuvwxyz./-|ABCDEFGHIJKLMNOPQRSTUVWXYZ___|'`
-        eval value=\"\$HAVE_LIB$uppername\"
-        if test -n "$value"; then
-          if test "$value" = yes; then
-            eval value=\"\$LIB$uppername\"
-            test -z "$value" || LIBINTL="${LIBINTL}${LIBINTL:+ }$value"
-            eval value=\"\$LTLIB$uppername\"
-            test -z "$value" || LTLIBINTL="${LTLIBINTL}${LTLIBINTL:+ }$value"
-          else
-                                    :
-          fi
-        else
-                              found_dir=
-          found_la=
-          found_so=
-          found_a=
-          if test $use_additional = yes; then
-            if test "X$prefer_shared" = "Xyes" && test -n "$shlibext" && test -f "$additional_libdir/lib$name.$shlibext"; then
-              found_dir="$additional_libdir"
-              found_so="$additional_libdir/lib$name.$shlibext"
-              if test -f "$additional_libdir/lib$name.la"; then
-                found_la="$additional_libdir/lib$name.la"
-              fi
-            else
-              if test -f "$additional_libdir/lib$name.$libext"; then
-                found_dir="$additional_libdir"
-                found_a="$additional_libdir/lib$name.$libext"
-                if test -f "$additional_libdir/lib$name.la"; then
-                  found_la="$additional_libdir/lib$name.la"
-                fi
-              fi
-            fi
-          fi
-          if test "X$found_dir" = "X"; then
-            for x in $LDFLAGS $LTLIBINTL; do
-              
-  acl_save_prefix="$prefix"
-  prefix="$acl_final_prefix"
-  acl_save_exec_prefix="$exec_prefix"
-  exec_prefix="$acl_final_exec_prefix"
-  eval x=\"$x\"
-  exec_prefix="$acl_save_exec_prefix"
-  prefix="$acl_save_prefix"
-
-              case "$x" in
-                -L*)
-                  dir=`echo "X$x" | sed -e 's/^X-L//'`
-                  if test "X$prefer_shared" = "Xyes" && test -n "$shlibext" && test -f "$dir/lib$name.$shlibext"; then
-                    found_dir="$dir"
-                    found_so="$dir/lib$name.$shlibext"
-                    if test -f "$dir/lib$name.la"; then
-                      found_la="$dir/lib$name.la"
-                    fi
-                  else
-                    if test -f "$dir/lib$name.$libext"; then
-                      found_dir="$dir"
-                      found_a="$dir/lib$name.$libext"
-                      if test -f "$dir/lib$name.la"; then
-                        found_la="$dir/lib$name.la"
-                      fi
-                    fi
-                  fi
-                  ;;
-              esac
-              if test "X$found_dir" != "X"; then
-                break
-              fi
-            done
-          fi
-          if test "X$found_dir" != "X"; then
-                        LTLIBINTL="${LTLIBINTL}${LTLIBINTL:+ }-L$found_dir -l$name"
-            if test "X$found_so" != "X"; then
-                                                        if test "$enable_rpath" = no || test "X$found_dir" = "X/usr/lib"; then
-                                LIBINTL="${LIBINTL}${LIBINTL:+ }$found_so"
-              else
-                                                                                haveit=
-                for x in $ltrpathdirs; do
-                  if test "X$x" = "X$found_dir"; then
-                    haveit=yes
-                    break
-                  fi
-                done
-                if test -z "$haveit"; then
-                  ltrpathdirs="$ltrpathdirs $found_dir"
-                fi
-                                if test "$hardcode_direct" = yes; then
-                                                      LIBINTL="${LIBINTL}${LIBINTL:+ }$found_so"
-                else
-                  if test -n "$hardcode_libdir_flag_spec" && test "$hardcode_minus_L" = no; then
-                                                            LIBINTL="${LIBINTL}${LIBINTL:+ }$found_so"
-                                                            haveit=
-                    for x in $rpathdirs; do
-                      if test "X$x" = "X$found_dir"; then
-                        haveit=yes
-                        break
-                      fi
-                    done
-                    if test -z "$haveit"; then
-                      rpathdirs="$rpathdirs $found_dir"
-                    fi
-                  else
-                                                                                haveit=
-                    for x in $LDFLAGS $LIBINTL; do
-                      
-  acl_save_prefix="$prefix"
-  prefix="$acl_final_prefix"
-  acl_save_exec_prefix="$exec_prefix"
-  exec_prefix="$acl_final_exec_prefix"
-  eval x=\"$x\"
-  exec_prefix="$acl_save_exec_prefix"
-  prefix="$acl_save_prefix"
-
-                      if test "X$x" = "X-L$found_dir"; then
-                        haveit=yes
-                        break
-                      fi
-                    done
-                    if test -z "$haveit"; then
-                      LIBINTL="${LIBINTL}${LIBINTL:+ }-L$found_dir"
-                    fi
-                    if test "$hardcode_minus_L" != no; then
-                                                                                        LIBINTL="${LIBINTL}${LIBINTL:+ }$found_so"
-                    else
-                                                                                                                                                                                LIBINTL="${LIBINTL}${LIBINTL:+ }-l$name"
-                    fi
-                  fi
-                fi
-              fi
-            else
-              if test "X$found_a" != "X"; then
-                                LIBINTL="${LIBINTL}${LIBINTL:+ }$found_a"
-              else
-                                                LIBINTL="${LIBINTL}${LIBINTL:+ }-L$found_dir -l$name"
-              fi
-            fi
-                        additional_includedir=
-            case "$found_dir" in
-              */lib | */lib/)
-                basedir=`echo "X$found_dir" | sed -e 's,^X,,' -e 's,/lib/*$,,'`
-                additional_includedir="$basedir/include"
-                ;;
-            esac
-            if test "X$additional_includedir" != "X"; then
-                                                                                                                if test "X$additional_includedir" != "X/usr/include"; then
-                haveit=
-                if test "X$additional_includedir" = "X/usr/local/include"; then
-                  if test -n "$GCC"; then
-                    case $host_os in
-                      linux*) haveit=yes;;
-                    esac
-                  fi
-                fi
-                if test -z "$haveit"; then
-                  for x in $CPPFLAGS $INCINTL; do
-                    
-  acl_save_prefix="$prefix"
-  prefix="$acl_final_prefix"
-  acl_save_exec_prefix="$exec_prefix"
-  exec_prefix="$acl_final_exec_prefix"
-  eval x=\"$x\"
-  exec_prefix="$acl_save_exec_prefix"
-  prefix="$acl_save_prefix"
-
-                    if test "X$x" = "X-I$additional_includedir"; then
-                      haveit=yes
-                      break
-                    fi
-                  done
-                  if test -z "$haveit"; then
-                    if test -d "$additional_includedir"; then
-                                            INCINTL="${INCINTL}${INCINTL:+ }-I$additional_includedir"
-                    fi
-                  fi
-                fi
-              fi
-            fi
-                        if test -n "$found_la"; then
-                                                        save_libdir="$libdir"
-              case "$found_la" in
-                */* | *\\*) . "$found_la" ;;
-                *) . "./$found_la" ;;
-              esac
-              libdir="$save_libdir"
-                            for dep in $dependency_libs; do
-                case "$dep" in
-                  -L*)
-                    additional_libdir=`echo "X$dep" | sed -e 's/^X-L//'`
-                                                                                                                                                                if test "X$additional_libdir" != "X/usr/lib"; then
-                      haveit=
-                      if test "X$additional_libdir" = "X/usr/local/lib"; then
-                        if test -n "$GCC"; then
-                          case $host_os in
-                            linux*) haveit=yes;;
-                          esac
-                        fi
-                      fi
-                      if test -z "$haveit"; then
-                        haveit=
-                        for x in $LDFLAGS $LIBINTL; do
-                          
-  acl_save_prefix="$prefix"
-  prefix="$acl_final_prefix"
-  acl_save_exec_prefix="$exec_prefix"
-  exec_prefix="$acl_final_exec_prefix"
-  eval x=\"$x\"
-  exec_prefix="$acl_save_exec_prefix"
-  prefix="$acl_save_prefix"
-
-                          if test "X$x" = "X-L$additional_libdir"; then
-                            haveit=yes
-                            break
-                          fi
-                        done
-                        if test -z "$haveit"; then
-                          if test -d "$additional_libdir"; then
-                                                        LIBINTL="${LIBINTL}${LIBINTL:+ }-L$additional_libdir"
-                          fi
-                        fi
-                        haveit=
-                        for x in $LDFLAGS $LTLIBINTL; do
-                          
-  acl_save_prefix="$prefix"
-  prefix="$acl_final_prefix"
-  acl_save_exec_prefix="$exec_prefix"
-  exec_prefix="$acl_final_exec_prefix"
-  eval x=\"$x\"
-  exec_prefix="$acl_save_exec_prefix"
-  prefix="$acl_save_prefix"
-
-                          if test "X$x" = "X-L$additional_libdir"; then
-                            haveit=yes
-                            break
-                          fi
-                        done
-                        if test -z "$haveit"; then
-                          if test -d "$additional_libdir"; then
-                                                        LTLIBINTL="${LTLIBINTL}${LTLIBINTL:+ }-L$additional_libdir"
-                          fi
-                        fi
-                      fi
-                    fi
-                    ;;
-                  -R*)
-                    dir=`echo "X$dep" | sed -e 's/^X-R//'`
-                    if test "$enable_rpath" != no; then
-                                                                  haveit=
-                      for x in $rpathdirs; do
-                        if test "X$x" = "X$dir"; then
-                          haveit=yes
-                          break
-                        fi
-                      done
-                      if test -z "$haveit"; then
-                        rpathdirs="$rpathdirs $dir"
-                      fi
-                                                                  haveit=
-                      for x in $ltrpathdirs; do
-                        if test "X$x" = "X$dir"; then
-                          haveit=yes
-                          break
-                        fi
-                      done
-                      if test -z "$haveit"; then
-                        ltrpathdirs="$ltrpathdirs $dir"
-                      fi
-                    fi
-                    ;;
-                  -l*)
-                                        names_next_round="$names_next_round "`echo "X$dep" | sed -e 's/^X-l//'`
-                    ;;
-                  *.la)
-                                                                                names_next_round="$names_next_round "`echo "X$dep" | sed -e 's,^X.*/,,' -e 's,^lib,,' -e 's,\.la$,,'`
-                    ;;
-                  *)
-                                        LIBINTL="${LIBINTL}${LIBINTL:+ }$dep"
-                    LTLIBINTL="${LTLIBINTL}${LTLIBINTL:+ }$dep"
-                    ;;
-                esac
-              done
-            fi
-          else
-                                                            LIBINTL="${LIBINTL}${LIBINTL:+ }-l$name"
-            LTLIBINTL="${LTLIBINTL}${LTLIBINTL:+ }-l$name"
-          fi
-        fi
-      fi
-    done
-  done
-  if test "X$rpathdirs" != "X"; then
-    if test -n "$hardcode_libdir_separator"; then
-                        alldirs=
-      for found_dir in $rpathdirs; do
-        alldirs="${alldirs}${alldirs:+$hardcode_libdir_separator}$found_dir"
-      done
-            acl_save_libdir="$libdir"
-      libdir="$alldirs"
-      eval flag=\"$hardcode_libdir_flag_spec\"
-      libdir="$acl_save_libdir"
-      LIBINTL="${LIBINTL}${LIBINTL:+ }$flag"
-    else
-            for found_dir in $rpathdirs; do
-        acl_save_libdir="$libdir"
-        libdir="$found_dir"
-        eval flag=\"$hardcode_libdir_flag_spec\"
-        libdir="$acl_save_libdir"
-        LIBINTL="${LIBINTL}${LIBINTL:+ }$flag"
-      done
-    fi
-  fi
-  if test "X$ltrpathdirs" != "X"; then
-            for found_dir in $ltrpathdirs; do
-      LTLIBINTL="${LTLIBINTL}${LTLIBINTL:+ }-R$found_dir"
-    done
-  fi
-
-          { $as_echo "$as_me:${as_lineno-$LINENO}: checking for GNU gettext in libintl" >&5
-$as_echo_n "checking for GNU gettext in libintl... " >&6; }
-if ${gt_cv_func_gnugettext2_libintl+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  gt_save_CPPFLAGS="$CPPFLAGS"
-            CPPFLAGS="$CPPFLAGS $INCINTL"
-            gt_save_LIBS="$LIBS"
-            LIBS="$LIBS $LIBINTL"
-                        cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <libintl.h>
-extern int _nl_msg_cat_cntr;
-extern
-#ifdef __cplusplus
-"C"
-#endif
-const char *_nl_expand_alias ();
-int
-main ()
-{
-bindtextdomain ("", "");
-return (int) gettext ("") + (int) ngettext ("", "", 0) + _nl_msg_cat_cntr + *_nl_expand_alias (0)
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  gt_cv_func_gnugettext2_libintl=yes
-else
-  gt_cv_func_gnugettext2_libintl=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-                        if test "$gt_cv_func_gnugettext2_libintl" != yes && test -n "$LIBICONV"; then
-              LIBS="$LIBS $LIBICONV"
-              cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <libintl.h>
-extern int _nl_msg_cat_cntr;
-extern
-#ifdef __cplusplus
-"C"
-#endif
-const char *_nl_expand_alias ();
-int
-main ()
-{
-bindtextdomain ("", "");
-return (int) gettext ("") + (int) ngettext ("", "", 0) + _nl_msg_cat_cntr + *_nl_expand_alias (0)
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  LIBINTL="$LIBINTL $LIBICONV"
-                LTLIBINTL="$LTLIBINTL $LTLIBICONV"
-                gt_cv_func_gnugettext2_libintl=yes
-               
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-            fi
-            CPPFLAGS="$gt_save_CPPFLAGS"
-            LIBS="$gt_save_LIBS"
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gt_cv_func_gnugettext2_libintl" >&5
-$as_echo "$gt_cv_func_gnugettext2_libintl" >&6; }
-        fi
-
-                                        if test "$gt_cv_func_gnugettext2_libc" = "yes" \
-           || { test "$gt_cv_func_gnugettext2_libintl" = "yes" \
-                && test "$PACKAGE" != gettext-runtime \
-                && test "$PACKAGE" != gettext-tools; }; then
-          gt_use_preinstalled_gnugettext=yes
-        else
-                    LIBINTL=
-          LTLIBINTL=
-          INCINTL=
-        fi
-
-    
-        if test "$gt_use_preinstalled_gnugettext" != "yes"; then
-                              nls_cv_use_gnu_gettext=yes
-        fi
-      fi
-
-      if test "$nls_cv_use_gnu_gettext" = "yes"; then
-                BUILD_INCLUDED_LIBINTL=yes
-        USE_INCLUDED_LIBINTL=yes
-        LIBINTL="lib/intl/libintl.a $LIBICONV"
-        LTLIBINTL="lib/intl/libintl.a $LTLIBICONV"
-        LIBS=`echo " $LIBS " | sed -e 's/ -lintl / /' -e 's/^ //' -e 's/ $//'`
-      fi
-
-      if test "$gt_use_preinstalled_gnugettext" = "yes" \
-         || test "$nls_cv_use_gnu_gettext" = "yes"; then
-                CATOBJEXT=.gmo
-      fi
-    
-
-    if test "$gt_use_preinstalled_gnugettext" = "yes" \
-       || test "$nls_cv_use_gnu_gettext" = "yes"; then
-      
-$as_echo "@%:@define ENABLE_NLS 1" >>confdefs.h
-
-    else
-      USE_NLS=no
-    fi
-  fi
-
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to use NLS" >&5
-$as_echo_n "checking whether to use NLS... " >&6; }
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $USE_NLS" >&5
-$as_echo "$USE_NLS" >&6; }
-  if test "$USE_NLS" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking where the gettext function comes from" >&5
-$as_echo_n "checking where the gettext function comes from... " >&6; }
-    if test "$gt_use_preinstalled_gnugettext" = "yes"; then
-      if test "$gt_cv_func_gnugettext2_libintl" = "yes"; then
-        gt_source="external libintl"
-      else
-        gt_source="libc"
-      fi
-    else
-      gt_source="included intl directory"
-    fi
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: $gt_source" >&5
-$as_echo "$gt_source" >&6; }
-  fi
-
-  if test "$USE_NLS" = "yes"; then
-
-    if test "$gt_use_preinstalled_gnugettext" = "yes"; then
-      if test "$gt_cv_func_gnugettext2_libintl" = "yes"; then
-        { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to link with libintl" >&5
-$as_echo_n "checking how to link with libintl... " >&6; }
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LIBINTL" >&5
-$as_echo "$LIBINTL" >&6; }
-        
-  for element in $INCINTL; do
-    haveit=
-    for x in $CPPFLAGS; do
-      
-  acl_save_prefix="$prefix"
-  prefix="$acl_final_prefix"
-  acl_save_exec_prefix="$exec_prefix"
-  exec_prefix="$acl_final_exec_prefix"
-  eval x=\"$x\"
-  exec_prefix="$acl_save_exec_prefix"
-  prefix="$acl_save_prefix"
-
-      if test "X$x" = "X$element"; then
-        haveit=yes
-        break
-      fi
-    done
-    if test -z "$haveit"; then
-      CPPFLAGS="${CPPFLAGS}${CPPFLAGS:+ }$element"
-    fi
-  done
-
-      fi
-
-            
-$as_echo "@%:@define HAVE_GETTEXT 1" >>confdefs.h
-
-      
-$as_echo "@%:@define HAVE_DCGETTEXT 1" >>confdefs.h
-
-    fi
-
-        POSUB=po
-  fi
-
-  
-            if test "$PACKAGE" = gettext-runtime || test "$PACKAGE" = gettext-tools; then
-      BUILD_INCLUDED_LIBINTL=yes
-    fi
-
-        
-    
-    
-
-        nls_cv_header_intl=
-    nls_cv_header_libgt=
-
-        DATADIRNAME=share
-    
-
-        INSTOBJEXT=.mo
-    
-
-        GENCAT=gencat
-    
-
-        if test "$USE_INCLUDED_LIBINTL" = yes; then
-      INTLOBJS="\$(GETTOBJS)"
-    fi
-    
-
-        INTL_LIBTOOL_SUFFIX_PREFIX=
-    
-  
-
-    INTLLIBS="$LIBINTL"
-  
-
-    
-  
-  
-
-
-ac_header_dirent=no
-for ac_hdr in dirent.h sys/ndir.h sys/dir.h ndir.h; do
-  as_ac_Header=`$as_echo "ac_cv_header_dirent_$ac_hdr" | $as_tr_sh`
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_hdr that defines DIR" >&5
-$as_echo_n "checking for $ac_hdr that defines DIR... " >&6; }
-if eval \${$as_ac_Header+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <sys/types.h>
-#include <$ac_hdr>
-
-int
-main ()
-{
-if ((DIR *) 0)
-return 0;
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  eval "$as_ac_Header=yes"
-else
-  eval "$as_ac_Header=no"
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-eval ac_res=\$$as_ac_Header
-              { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
-if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-@%:@define `$as_echo "HAVE_$ac_hdr" | $as_tr_cpp` 1
-_ACEOF
-
-ac_header_dirent=$ac_hdr; break
-fi
-
-done
-# Two versions of opendir et al. are in -ldir and -lx on SCO Xenix.
-if test $ac_header_dirent = dirent.h; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing opendir" >&5
-$as_echo_n "checking for library containing opendir... " >&6; }
-if ${ac_cv_search_opendir+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_func_search_save_LIBS=$LIBS
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-/* Override any GCC internal prototype to avoid an error.
-   Use char because int might match the return type of a GCC
-   builtin and then its argument prototype would still apply.  */
-#ifdef __cplusplus
-extern "C"
-#endif
-char opendir ();
-int
-main ()
-{
-return opendir ();
-  ;
-  return 0;
-}
-_ACEOF
-for ac_lib in '' dir; do
-  if test -z "$ac_lib"; then
-    ac_res="none required"
-  else
-    ac_res=-l$ac_lib
-    LIBS="-l$ac_lib  $ac_func_search_save_LIBS"
-  fi
-  if ac_fn_c_try_link "$LINENO"; then :
-  ac_cv_search_opendir=$ac_res
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext
-  if ${ac_cv_search_opendir+:} false; then :
-  break
-fi
-done
-if ${ac_cv_search_opendir+:} false; then :
-  
-else
-  ac_cv_search_opendir=no
-fi
-rm conftest.$ac_ext
-LIBS=$ac_func_search_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_opendir" >&5
-$as_echo "$ac_cv_search_opendir" >&6; }
-ac_res=$ac_cv_search_opendir
-if test "$ac_res" != no; then :
-  test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
-  
-fi
-
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing opendir" >&5
-$as_echo_n "checking for library containing opendir... " >&6; }
-if ${ac_cv_search_opendir+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_func_search_save_LIBS=$LIBS
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-/* Override any GCC internal prototype to avoid an error.
-   Use char because int might match the return type of a GCC
-   builtin and then its argument prototype would still apply.  */
-#ifdef __cplusplus
-extern "C"
-#endif
-char opendir ();
-int
-main ()
-{
-return opendir ();
-  ;
-  return 0;
-}
-_ACEOF
-for ac_lib in '' x; do
-  if test -z "$ac_lib"; then
-    ac_res="none required"
-  else
-    ac_res=-l$ac_lib
-    LIBS="-l$ac_lib  $ac_func_search_save_LIBS"
-  fi
-  if ac_fn_c_try_link "$LINENO"; then :
-  ac_cv_search_opendir=$ac_res
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext
-  if ${ac_cv_search_opendir+:} false; then :
-  break
-fi
-done
-if ${ac_cv_search_opendir+:} false; then :
-  
-else
-  ac_cv_search_opendir=no
-fi
-rm conftest.$ac_ext
-LIBS=$ac_func_search_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_opendir" >&5
-$as_echo "$ac_cv_search_opendir" >&6; }
-ac_res=$ac_cv_search_opendir
-if test "$ac_res" != no; then :
-  test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
-  
-fi
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether time.h and sys/time.h may both be included" >&5
-$as_echo_n "checking whether time.h and sys/time.h may both be included... " >&6; }
-if ${ac_cv_header_time+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <sys/types.h>
-#include <sys/time.h>
-#include <time.h>
-
-int
-main ()
-{
-if ((struct tm *) 0)
-return 0;
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_cv_header_time=yes
-else
-  ac_cv_header_time=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_time" >&5
-$as_echo "$ac_cv_header_time" >&6; }
-if test $ac_cv_header_time = yes; then
-  
-$as_echo "@%:@define TIME_WITH_SYS_TIME 1" >>confdefs.h
-
-fi
-
-
-
- for ac_header in inttypes.h
-do :
-  ac_fn_c_check_header_mongrel "$LINENO" "inttypes.h" "ac_cv_header_inttypes_h" "$ac_includes_default"
-if test "x$ac_cv_header_inttypes_h" = xyes; then :
-  cat >>confdefs.h <<_ACEOF
-@%:@define HAVE_INTTYPES_H 1
-_ACEOF
-fi
-
-done
-
-
-
-for ac_header in unistd.h stdlib.h stdarg.h varargs.h limits.h string.h \
-                memory.h locale.h termcap.h termio.h termios.h dlfcn.h \
-                stdbool.h stddef.h stdint.h netdb.h pwd.h grp.h strings.h \
-                regex.h syslog.h ulimit.h
-do :
-  as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
-ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default"
-if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-@%:@define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
-fi
-
-done
-
-for ac_header in sys/pte.h sys/stream.h sys/select.h sys/file.h \
-                sys/resource.h sys/param.h sys/socket.h sys/stat.h \
-                sys/time.h sys/times.h sys/types.h sys/wait.h
-do :
-  as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
-ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default"
-if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-@%:@define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
-fi
-
-done
-
-for ac_header in netinet/in.h arpa/inet.h
-do :
-  as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
-ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default"
-if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-@%:@define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
-fi
-
-done
-
-
-ac_fn_c_check_header_compile "$LINENO" "sys/ptem.h" "ac_cv_header_sys_ptem_h" "
-#if HAVE_SYS_STREAM_H
-#  include <sys/stream.h>
-#endif
-
-"
-if test "x$ac_cv_header_sys_ptem_h" = xyes; then :
-  
-fi
-
-
-
-# The Ultrix 4.2 mips builtin alloca declared by alloca.h only works
-# for constant arguments.  Useless!
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for working alloca.h" >&5
-$as_echo_n "checking for working alloca.h... " >&6; }
-if ${ac_cv_working_alloca_h+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-@%:@include <alloca.h>
-int
-main ()
-{
-char *p = (char *) alloca (2 * sizeof (int));
-                         if (p) return 0;
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  ac_cv_working_alloca_h=yes
-else
-  ac_cv_working_alloca_h=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_working_alloca_h" >&5
-$as_echo "$ac_cv_working_alloca_h" >&6; }
-if test $ac_cv_working_alloca_h = yes; then
-  
-$as_echo "@%:@define HAVE_ALLOCA_H 1" >>confdefs.h
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for alloca" >&5
-$as_echo_n "checking for alloca... " >&6; }
-if ${ac_cv_func_alloca_works+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#ifdef __GNUC__
-# define alloca __builtin_alloca
-#else
-# ifdef _MSC_VER
-#  include <malloc.h>
-#  define alloca _alloca
-# else
-#  ifdef HAVE_ALLOCA_H
-#   include <alloca.h>
-#  else
-#   ifdef _AIX
- #pragma alloca
-#   else
-#    ifndef alloca /* predefined by HP cc +Olibcalls */
-void *alloca (size_t);
-#    endif
-#   endif
-#  endif
-# endif
-#endif
-
-int
-main ()
-{
-char *p = (char *) alloca (1);
-                                   if (p) return 0;
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  ac_cv_func_alloca_works=yes
-else
-  ac_cv_func_alloca_works=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_func_alloca_works" >&5
-$as_echo "$ac_cv_func_alloca_works" >&6; }
-
-if test $ac_cv_func_alloca_works = yes; then
-  
-$as_echo "@%:@define HAVE_ALLOCA 1" >>confdefs.h
-
-else
-  # The SVR3 libPW and SVR4 libucb both contain incompatible functions
-# that cause trouble.  Some versions do not even contain alloca or
-# contain a buggy version.  If you still want to use their alloca,
-# use ar to extract alloca.o from them instead of compiling alloca.c.
-
-ALLOCA=\${LIBOBJDIR}alloca.$ac_objext
-
-$as_echo "@%:@define C_ALLOCA 1" >>confdefs.h
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether \`alloca.c' needs Cray hooks" >&5
-$as_echo_n "checking whether \`alloca.c' needs Cray hooks... " >&6; }
-if ${ac_cv_os_cray+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#if defined CRAY && ! defined CRAY2
-webecray
-#else
-wenotbecray
-#endif
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "webecray" >/dev/null 2>&1; then :
-  ac_cv_os_cray=yes
-else
-  ac_cv_os_cray=no
-fi
-rm -f conftest*
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_os_cray" >&5
-$as_echo "$ac_cv_os_cray" >&6; }
-if test $ac_cv_os_cray = yes; then
-  for ac_func in _getb67 GETB67 getb67; do
-    as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
-ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
-if eval test \"x\$"$as_ac_var"\" = x"yes"; then :
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define CRAY_STACKSEG_END $ac_func
-_ACEOF
-
-    break
-fi
-
-  done
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking stack direction for C alloca" >&5
-$as_echo_n "checking stack direction for C alloca... " >&6; }
-if ${ac_cv_c_stack_direction+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test "$cross_compiling" = yes; then :
-  ac_cv_c_stack_direction=0
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-$ac_includes_default
-int
-find_stack_direction ()
-{
-  static char *addr = 0;
-  auto char dummy;
-  if (addr == 0)
-    {
-      addr = &dummy;
-      return find_stack_direction ();
-    }
-  else
-    return (&dummy > addr) ? 1 : -1;
-}
-
-int
-main ()
-{
-  return find_stack_direction () < 0;
-}
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-  ac_cv_c_stack_direction=1
-else
-  ac_cv_c_stack_direction=-1
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_stack_direction" >&5
-$as_echo "$ac_cv_c_stack_direction" >&6; }
-cat >>confdefs.h <<_ACEOF
-@%:@define STACK_DIRECTION $ac_cv_c_stack_direction
-_ACEOF
-
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether getpgrp requires zero arguments" >&5
-$as_echo_n "checking whether getpgrp requires zero arguments... " >&6; }
-if ${ac_cv_func_getpgrp_void+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  # Use it with a single arg.
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-$ac_includes_default
-int
-main ()
-{
-getpgrp (0);
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_cv_func_getpgrp_void=no
-else
-  ac_cv_func_getpgrp_void=yes
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_func_getpgrp_void" >&5
-$as_echo "$ac_cv_func_getpgrp_void" >&6; }
-if test $ac_cv_func_getpgrp_void = yes; then
-  
-$as_echo "@%:@define GETPGRP_VOID 1" >>confdefs.h
-
-fi
-
-if ${ac_cv_func_setvbuf_reversed+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_cv_func_setvbuf_reversed=no
-fi
-
-
-for ac_func in vprintf
-do :
-  ac_fn_c_check_func "$LINENO" "vprintf" "ac_cv_func_vprintf"
-if test "x$ac_cv_func_vprintf" = xyes; then :
-  cat >>confdefs.h <<_ACEOF
-@%:@define HAVE_VPRINTF 1
-_ACEOF
-ac_fn_c_check_func "$LINENO" "_doprnt" "ac_cv_func__doprnt"
-if test "x$ac_cv_func__doprnt" = xyes; then :
-  
-$as_echo "@%:@define HAVE_DOPRNT 1" >>confdefs.h
-
-fi
-
-fi
-done
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for working strcoll" >&5
-$as_echo_n "checking for working strcoll... " >&6; }
-if ${ac_cv_func_strcoll_works+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test "$cross_compiling" = yes; then :
-  ac_cv_func_strcoll_works=no
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-$ac_includes_default
-int
-main ()
-{
-return (strcoll ("abc", "def") >= 0 ||
-        strcoll ("ABC", "DEF") >= 0 ||
-        strcoll ("123", "456") >= 0)
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-  ac_cv_func_strcoll_works=yes
-else
-  ac_cv_func_strcoll_works=no
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_func_strcoll_works" >&5
-$as_echo "$ac_cv_func_strcoll_works" >&6; }
-if test $ac_cv_func_strcoll_works = yes; then
-  
-$as_echo "@%:@define HAVE_STRCOLL 1" >>confdefs.h
-
-fi
-
-
-
-if test "$ac_cv_func_alloca_works" = "no" && test "$opt_bash_malloc" = "no"; then
-       MALLOC_TARGET=alloca
-       MALLOC_SRC=alloca.c
-
-       MALLOC_LIB='-lmalloc'
-       MALLOC_LIBRARY='$(ALLOC_LIBDIR)/libmalloc.a'
-       MALLOC_LDFLAGS='-L$(ALLOC_LIBDIR)'
-       MALLOC_DEP='$(MALLOC_LIBRARY)'
-fi
-
-if test "$ac_cv_func_vprintf" = no; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for declaration of vprintf in stdio.h" >&5
-$as_echo_n "checking for declaration of vprintf in stdio.h... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <stdio.h>
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "[int[        ]*vprintf[^a-zA-Z0-9]]" >/dev/null 2>&1; then :
-  ac_cv_func_vprintf=yes
-fi
-rm -f conftest*
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_func_vprintf" >&5
-$as_echo "$ac_cv_func_vprintf" >&6; }
-    if test $ac_cv_func_vprintf = yes; then
-       $as_echo "@%:@define HAVE_VPRINTF 1" >>confdefs.h
-
-    fi
-fi
-
-if test "$ac_cv_func_vprintf" = no && test "$ac_cv_func__doprnt" = "yes"; then
-  case " $LIB@&t@OBJS " in
-  *" vprint.$ac_objext "* ) ;;
-  *) LIB@&t@OBJS="$LIB@&t@OBJS vprint.$ac_objext"
- ;;
-esac
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking return type of signal handlers" >&5
-$as_echo_n "checking return type of signal handlers... " >&6; }
-if ${ac_cv_type_signal+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <sys/types.h>
-#include <signal.h>
-
-int
-main ()
-{
-return *(signal (0, 0)) (0) == 1;
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_cv_type_signal=int
-else
-  ac_cv_type_signal=void
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_type_signal" >&5
-$as_echo "$ac_cv_type_signal" >&6; }
-
-cat >>confdefs.h <<_ACEOF
-@%:@define RETSIGTYPE $ac_cv_type_signal
-_ACEOF
-
-
-
-ac_fn_c_check_func "$LINENO" "__setostype" "ac_cv_func___setostype"
-if test "x$ac_cv_func___setostype" = xyes; then :
-  $as_echo "@%:@define HAVE_SETOSTYPE 1" >>confdefs.h
-
-fi
-
-ac_fn_c_check_func "$LINENO" "wait3" "ac_cv_func_wait3"
-if test "x$ac_cv_func_wait3" = xyes; then :
-  $as_echo "@%:@define HAVE_WAIT3 1" >>confdefs.h
-
-fi
-
-
-ac_fn_c_check_func "$LINENO" "mkfifo" "ac_cv_func_mkfifo"
-if test "x$ac_cv_func_mkfifo" = xyes; then :
-  $as_echo "@%:@define HAVE_MKFIFO 1" >>confdefs.h
-
-else
-  $as_echo "@%:@define MKFIFO_MISSING 1" >>confdefs.h
-
-fi
-
-
-for ac_func in dup2 eaccess fcntl getdtablesize getgroups gethostname \
-               getpagesize getpeername getrlimit getrusage gettimeofday \
-               kill killpg lstat readlink sbrk select setdtablesize \
-               setitimer tcgetpgrp uname ulimit waitpid
-do :
-  as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
-ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
-if eval test \"x\$"$as_ac_var"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-@%:@define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1
-_ACEOF
-fi
-done
-
-ac_fn_c_check_func "$LINENO" "rename" "ac_cv_func_rename"
-if test "x$ac_cv_func_rename" = xyes; then :
-  $as_echo "@%:@define HAVE_RENAME 1" >>confdefs.h
-
-else
-  case " $LIB@&t@OBJS " in
-  *" rename.$ac_objext "* ) ;;
-  *) LIB@&t@OBJS="$LIB@&t@OBJS rename.$ac_objext"
- ;;
-esac
-
-fi
-
-
-
-for ac_func in bcopy bzero confstr faccessat fnmatch \
-               getaddrinfo gethostbyname getservbyname getservent inet_aton \
-               imaxdiv memmove pathconf putenv raise regcomp regexec \
-               setenv setlinebuf setlocale setvbuf siginterrupt strchr \
-               sysconf syslog tcgetattr times ttyname tzset unsetenv
-do :
-  as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
-ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
-if eval test \"x\$"$as_ac_var"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-@%:@define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1
-_ACEOF
-fi
-done
-
-
-for ac_func in vasprintf asprintf
-do :
-  as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
-ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
-if eval test \"x\$"$as_ac_var"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-@%:@define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1
-_ACEOF
-fi
-done
-
-for ac_func in isascii isblank isgraph isprint isspace isxdigit
-do :
-  as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
-ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
-if eval test \"x\$"$as_ac_var"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-@%:@define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1
-_ACEOF
-fi
-done
-
-for ac_func in getpwent getpwnam getpwuid
-do :
-  as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
-ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
-if eval test \"x\$"$as_ac_var"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-@%:@define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1
-_ACEOF
-fi
-done
-
-ac_fn_c_check_func "$LINENO" "getcwd" "ac_cv_func_getcwd"
-if test "x$ac_cv_func_getcwd" = xyes; then :
-  $as_echo "@%:@define HAVE_GETCWD 1" >>confdefs.h
-
-else
-  case " $LIB@&t@OBJS " in
-  *" getcwd.$ac_objext "* ) ;;
-  *) LIB@&t@OBJS="$LIB@&t@OBJS getcwd.$ac_objext"
- ;;
-esac
-
-fi
-
-ac_fn_c_check_func "$LINENO" "memset" "ac_cv_func_memset"
-if test "x$ac_cv_func_memset" = xyes; then :
-  $as_echo "@%:@define HAVE_MEMSET 1" >>confdefs.h
-
-else
-  case " $LIB@&t@OBJS " in
-  *" memset.$ac_objext "* ) ;;
-  *) LIB@&t@OBJS="$LIB@&t@OBJS memset.$ac_objext"
- ;;
-esac
-
-fi
-
-
-ac_fn_c_check_func "$LINENO" "strcasecmp" "ac_cv_func_strcasecmp"
-if test "x$ac_cv_func_strcasecmp" = xyes; then :
-  $as_echo "@%:@define HAVE_STRCASECMP 1" >>confdefs.h
-
-else
-  case " $LIB@&t@OBJS " in
-  *" strcasecmp.$ac_objext "* ) ;;
-  *) LIB@&t@OBJS="$LIB@&t@OBJS strcasecmp.$ac_objext"
- ;;
-esac
-
-fi
-
-ac_fn_c_check_func "$LINENO" "strcasestr" "ac_cv_func_strcasestr"
-if test "x$ac_cv_func_strcasestr" = xyes; then :
-  $as_echo "@%:@define HAVE_STRCASESTR 1" >>confdefs.h
-
-else
-  case " $LIB@&t@OBJS " in
-  *" strcasestr.$ac_objext "* ) ;;
-  *) LIB@&t@OBJS="$LIB@&t@OBJS strcasestr.$ac_objext"
- ;;
-esac
-
-fi
-
-ac_fn_c_check_func "$LINENO" "strerror" "ac_cv_func_strerror"
-if test "x$ac_cv_func_strerror" = xyes; then :
-  $as_echo "@%:@define HAVE_STRERROR 1" >>confdefs.h
-
-else
-  case " $LIB@&t@OBJS " in
-  *" strerror.$ac_objext "* ) ;;
-  *) LIB@&t@OBJS="$LIB@&t@OBJS strerror.$ac_objext"
- ;;
-esac
-
-fi
-
-ac_fn_c_check_func "$LINENO" "strftime" "ac_cv_func_strftime"
-if test "x$ac_cv_func_strftime" = xyes; then :
-  $as_echo "@%:@define HAVE_STRFTIME 1" >>confdefs.h
-
-else
-  case " $LIB@&t@OBJS " in
-  *" strftime.$ac_objext "* ) ;;
-  *) LIB@&t@OBJS="$LIB@&t@OBJS strftime.$ac_objext"
- ;;
-esac
-
-fi
-
-ac_fn_c_check_func "$LINENO" "strnlen" "ac_cv_func_strnlen"
-if test "x$ac_cv_func_strnlen" = xyes; then :
-  $as_echo "@%:@define HAVE_STRNLEN 1" >>confdefs.h
-
-else
-  case " $LIB@&t@OBJS " in
-  *" strnlen.$ac_objext "* ) ;;
-  *) LIB@&t@OBJS="$LIB@&t@OBJS strnlen.$ac_objext"
- ;;
-esac
-
-fi
-
-ac_fn_c_check_func "$LINENO" "strpbrk" "ac_cv_func_strpbrk"
-if test "x$ac_cv_func_strpbrk" = xyes; then :
-  $as_echo "@%:@define HAVE_STRPBRK 1" >>confdefs.h
-
-else
-  case " $LIB@&t@OBJS " in
-  *" strpbrk.$ac_objext "* ) ;;
-  *) LIB@&t@OBJS="$LIB@&t@OBJS strpbrk.$ac_objext"
- ;;
-esac
-
-fi
-
-ac_fn_c_check_func "$LINENO" "strstr" "ac_cv_func_strstr"
-if test "x$ac_cv_func_strstr" = xyes; then :
-  $as_echo "@%:@define HAVE_STRSTR 1" >>confdefs.h
-
-else
-  case " $LIB@&t@OBJS " in
-  *" strstr.$ac_objext "* ) ;;
-  *) LIB@&t@OBJS="$LIB@&t@OBJS strstr.$ac_objext"
- ;;
-esac
-
-fi
-
-
-ac_fn_c_check_func "$LINENO" "strtod" "ac_cv_func_strtod"
-if test "x$ac_cv_func_strtod" = xyes; then :
-  $as_echo "@%:@define HAVE_STRTOD 1" >>confdefs.h
-
-else
-  case " $LIB@&t@OBJS " in
-  *" strtod.$ac_objext "* ) ;;
-  *) LIB@&t@OBJS="$LIB@&t@OBJS strtod.$ac_objext"
- ;;
-esac
-
-fi
-
-ac_fn_c_check_func "$LINENO" "strtol" "ac_cv_func_strtol"
-if test "x$ac_cv_func_strtol" = xyes; then :
-  $as_echo "@%:@define HAVE_STRTOL 1" >>confdefs.h
-
-else
-  case " $LIB@&t@OBJS " in
-  *" strtol.$ac_objext "* ) ;;
-  *) LIB@&t@OBJS="$LIB@&t@OBJS strtol.$ac_objext"
- ;;
-esac
-
-fi
-
-ac_fn_c_check_func "$LINENO" "strtoul" "ac_cv_func_strtoul"
-if test "x$ac_cv_func_strtoul" = xyes; then :
-  $as_echo "@%:@define HAVE_STRTOUL 1" >>confdefs.h
-
-else
-  case " $LIB@&t@OBJS " in
-  *" strtoul.$ac_objext "* ) ;;
-  *) LIB@&t@OBJS="$LIB@&t@OBJS strtoul.$ac_objext"
- ;;
-esac
-
-fi
-
-ac_fn_c_check_func "$LINENO" "strtoll" "ac_cv_func_strtoll"
-if test "x$ac_cv_func_strtoll" = xyes; then :
-  $as_echo "@%:@define HAVE_STRTOLL 1" >>confdefs.h
-
-else
-  case " $LIB@&t@OBJS " in
-  *" strtoll.$ac_objext "* ) ;;
-  *) LIB@&t@OBJS="$LIB@&t@OBJS strtoll.$ac_objext"
- ;;
-esac
-
-fi
-
-ac_fn_c_check_func "$LINENO" "strtoull" "ac_cv_func_strtoull"
-if test "x$ac_cv_func_strtoull" = xyes; then :
-  $as_echo "@%:@define HAVE_STRTOULL 1" >>confdefs.h
-
-else
-  case " $LIB@&t@OBJS " in
-  *" strtoull.$ac_objext "* ) ;;
-  *) LIB@&t@OBJS="$LIB@&t@OBJS strtoull.$ac_objext"
- ;;
-esac
-
-fi
-
-ac_fn_c_check_func "$LINENO" "strtoimax" "ac_cv_func_strtoimax"
-if test "x$ac_cv_func_strtoimax" = xyes; then :
-  $as_echo "@%:@define HAVE_STRTOIMAX 1" >>confdefs.h
-
-else
-  case " $LIB@&t@OBJS " in
-  *" strtoimax.$ac_objext "* ) ;;
-  *) LIB@&t@OBJS="$LIB@&t@OBJS strtoimax.$ac_objext"
- ;;
-esac
-
-fi
-
-ac_fn_c_check_func "$LINENO" "strtoumax" "ac_cv_func_strtoumax"
-if test "x$ac_cv_func_strtoumax" = xyes; then :
-  $as_echo "@%:@define HAVE_STRTOUMAX 1" >>confdefs.h
-
-else
-  case " $LIB@&t@OBJS " in
-  *" strtoumax.$ac_objext "* ) ;;
-  *) LIB@&t@OBJS="$LIB@&t@OBJS strtoumax.$ac_objext"
- ;;
-esac
-
-fi
-
-
-ac_fn_c_check_func "$LINENO" "dprintf" "ac_cv_func_dprintf"
-if test "x$ac_cv_func_dprintf" = xyes; then :
-  $as_echo "@%:@define HAVE_DPRINTF 1" >>confdefs.h
-
-else
-  case " $LIB@&t@OBJS " in
-  *" dprintf.$ac_objext "* ) ;;
-  *) LIB@&t@OBJS="$LIB@&t@OBJS dprintf.$ac_objext"
- ;;
-esac
-
-fi
-
-
-ac_fn_c_check_func "$LINENO" "strchrnul" "ac_cv_func_strchrnul"
-if test "x$ac_cv_func_strchrnul" = xyes; then :
-  $as_echo "@%:@define HAVE_STRCHRNUL 1" >>confdefs.h
-
-else
-  case " $LIB@&t@OBJS " in
-  *" strchrnul.$ac_objext "* ) ;;
-  *) LIB@&t@OBJS="$LIB@&t@OBJS strchrnul.$ac_objext"
- ;;
-esac
-
-fi
-
-
-
-ac_fn_c_check_decl "$LINENO" "AUDIT_USER_TTY" "ac_cv_have_decl_AUDIT_USER_TTY" "#include <linux/audit.h>
-"
-if test "x$ac_cv_have_decl_AUDIT_USER_TTY" = xyes; then :
-  ac_have_decl=1
-else
-  ac_have_decl=0
-fi
-
-cat >>confdefs.h <<_ACEOF
-@%:@define HAVE_DECL_AUDIT_USER_TTY $ac_have_decl
-_ACEOF
-
-
-ac_fn_c_check_decl "$LINENO" "confstr" "ac_cv_have_decl_confstr" "$ac_includes_default"
-if test "x$ac_cv_have_decl_confstr" = xyes; then :
-  ac_have_decl=1
-else
-  ac_have_decl=0
-fi
-
-cat >>confdefs.h <<_ACEOF
-@%:@define HAVE_DECL_CONFSTR $ac_have_decl
-_ACEOF
-
-ac_fn_c_check_decl "$LINENO" "printf" "ac_cv_have_decl_printf" "$ac_includes_default"
-if test "x$ac_cv_have_decl_printf" = xyes; then :
-  ac_have_decl=1
-else
-  ac_have_decl=0
-fi
-
-cat >>confdefs.h <<_ACEOF
-@%:@define HAVE_DECL_PRINTF $ac_have_decl
-_ACEOF
-
-ac_fn_c_check_decl "$LINENO" "sbrk" "ac_cv_have_decl_sbrk" "$ac_includes_default"
-if test "x$ac_cv_have_decl_sbrk" = xyes; then :
-  ac_have_decl=1
-else
-  ac_have_decl=0
-fi
-
-cat >>confdefs.h <<_ACEOF
-@%:@define HAVE_DECL_SBRK $ac_have_decl
-_ACEOF
-
-ac_fn_c_check_decl "$LINENO" "setregid" "ac_cv_have_decl_setregid" "$ac_includes_default"
-if test "x$ac_cv_have_decl_setregid" = xyes; then :
-  ac_have_decl=1
-else
-  ac_have_decl=0
-fi
-
-cat >>confdefs.h <<_ACEOF
-@%:@define HAVE_DECL_SETREGID $ac_have_decl
-_ACEOF
-
-ac_fn_c_check_decl "$LINENO" "strcpy" "ac_cv_have_decl_strcpy" "$ac_includes_default"
-if test "x$ac_cv_have_decl_strcpy" = xyes; then :
-  ac_have_decl=1
-else
-  ac_have_decl=0
-fi
-
-cat >>confdefs.h <<_ACEOF
-@%:@define HAVE_DECL_STRCPY $ac_have_decl
-_ACEOF
-
-ac_fn_c_check_decl "$LINENO" "strsignal" "ac_cv_have_decl_strsignal" "$ac_includes_default"
-if test "x$ac_cv_have_decl_strsignal" = xyes; then :
-  ac_have_decl=1
-else
-  ac_have_decl=0
-fi
-
-cat >>confdefs.h <<_ACEOF
-@%:@define HAVE_DECL_STRSIGNAL $ac_have_decl
-_ACEOF
-
-
-ac_fn_c_check_decl "$LINENO" "strtold" "ac_cv_have_decl_strtold" "$ac_includes_default"
-if test "x$ac_cv_have_decl_strtold" = xyes; then :
-  ac_have_decl=1
-else
-  ac_have_decl=0
-fi
-
-cat >>confdefs.h <<_ACEOF
-@%:@define HAVE_DECL_STRTOLD $ac_have_decl
-_ACEOF
-if test $ac_have_decl = 1; then :
-  
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for broken strtold" >&5
-$as_echo_n "checking for broken strtold... " >&6; }
-    if ${bash_cv_strtold_broken+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <stdlib.h>
-int
-main ()
-{
-int main() { long double r; char *foo, bar; r = strtold(foo, &bar);}
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  bash_cv_strtold_broken=no
-else
-  bash_cv_strtold_broken=yes
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-       
-    
-fi
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_strtold_broken" >&5
-$as_echo "$bash_cv_strtold_broken" >&6; }
-    if test "$bash_cv_strtold_broken" = "yes" ; then
-       $as_echo "@%:@define STRTOLD_BROKEN 1" >>confdefs.h
-
-    fi
-
-fi
-
-
-
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for declaration of strtoimax" >&5
-$as_echo_n "checking for declaration of strtoimax... " >&6; }
-if ${bash_cv_decl_strtoimax+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#if STDC_HEADERS
-#  include <stdlib.h>
-#endif
-#if HAVE_INTTYPES_H
-#  include <inttypes.h>
-#endif
-
-int
-main ()
-{
-return !strtoimax;
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  bash_cv_decl_strtoimax=yes
-else
-  bash_cv_decl_strtoimax=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_decl_strtoimax" >&5
-$as_echo "$bash_cv_decl_strtoimax" >&6; }
-bash_tr_func=HAVE_DECL_`echo strtoimax | tr 'abcdefghijklmnopqrstuvwxyz' 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'`
-if test $bash_cv_decl_strtoimax = yes; then
-  cat >>confdefs.h <<_ACEOF
-@%:@define $bash_tr_func 1
-_ACEOF
-
-else
-  cat >>confdefs.h <<_ACEOF
-@%:@define $bash_tr_func 0
-_ACEOF
-
-fi
-
-
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for declaration of strtol" >&5
-$as_echo_n "checking for declaration of strtol... " >&6; }
-if ${bash_cv_decl_strtol+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#if STDC_HEADERS
-#  include <stdlib.h>
-#endif
-#if HAVE_INTTYPES_H
-#  include <inttypes.h>
-#endif
-
-int
-main ()
-{
-return !strtol;
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  bash_cv_decl_strtol=yes
-else
-  bash_cv_decl_strtol=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_decl_strtol" >&5
-$as_echo "$bash_cv_decl_strtol" >&6; }
-bash_tr_func=HAVE_DECL_`echo strtol | tr 'abcdefghijklmnopqrstuvwxyz' 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'`
-if test $bash_cv_decl_strtol = yes; then
-  cat >>confdefs.h <<_ACEOF
-@%:@define $bash_tr_func 1
-_ACEOF
-
-else
-  cat >>confdefs.h <<_ACEOF
-@%:@define $bash_tr_func 0
-_ACEOF
-
-fi
-
-
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for declaration of strtoll" >&5
-$as_echo_n "checking for declaration of strtoll... " >&6; }
-if ${bash_cv_decl_strtoll+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#if STDC_HEADERS
-#  include <stdlib.h>
-#endif
-#if HAVE_INTTYPES_H
-#  include <inttypes.h>
-#endif
-
-int
-main ()
-{
-return !strtoll;
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  bash_cv_decl_strtoll=yes
-else
-  bash_cv_decl_strtoll=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_decl_strtoll" >&5
-$as_echo "$bash_cv_decl_strtoll" >&6; }
-bash_tr_func=HAVE_DECL_`echo strtoll | tr 'abcdefghijklmnopqrstuvwxyz' 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'`
-if test $bash_cv_decl_strtoll = yes; then
-  cat >>confdefs.h <<_ACEOF
-@%:@define $bash_tr_func 1
-_ACEOF
-
-else
-  cat >>confdefs.h <<_ACEOF
-@%:@define $bash_tr_func 0
-_ACEOF
-
-fi
-
-
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for declaration of strtoul" >&5
-$as_echo_n "checking for declaration of strtoul... " >&6; }
-if ${bash_cv_decl_strtoul+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#if STDC_HEADERS
-#  include <stdlib.h>
-#endif
-#if HAVE_INTTYPES_H
-#  include <inttypes.h>
-#endif
-
-int
-main ()
-{
-return !strtoul;
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  bash_cv_decl_strtoul=yes
-else
-  bash_cv_decl_strtoul=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_decl_strtoul" >&5
-$as_echo "$bash_cv_decl_strtoul" >&6; }
-bash_tr_func=HAVE_DECL_`echo strtoul | tr 'abcdefghijklmnopqrstuvwxyz' 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'`
-if test $bash_cv_decl_strtoul = yes; then
-  cat >>confdefs.h <<_ACEOF
-@%:@define $bash_tr_func 1
-_ACEOF
-
-else
-  cat >>confdefs.h <<_ACEOF
-@%:@define $bash_tr_func 0
-_ACEOF
-
-fi
-
-
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for declaration of strtoull" >&5
-$as_echo_n "checking for declaration of strtoull... " >&6; }
-if ${bash_cv_decl_strtoull+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#if STDC_HEADERS
-#  include <stdlib.h>
-#endif
-#if HAVE_INTTYPES_H
-#  include <inttypes.h>
-#endif
-
-int
-main ()
-{
-return !strtoull;
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  bash_cv_decl_strtoull=yes
-else
-  bash_cv_decl_strtoull=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_decl_strtoull" >&5
-$as_echo "$bash_cv_decl_strtoull" >&6; }
-bash_tr_func=HAVE_DECL_`echo strtoull | tr 'abcdefghijklmnopqrstuvwxyz' 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'`
-if test $bash_cv_decl_strtoull = yes; then
-  cat >>confdefs.h <<_ACEOF
-@%:@define $bash_tr_func 1
-_ACEOF
-
-else
-  cat >>confdefs.h <<_ACEOF
-@%:@define $bash_tr_func 0
-_ACEOF
-
-fi
-
-
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for declaration of strtoumax" >&5
-$as_echo_n "checking for declaration of strtoumax... " >&6; }
-if ${bash_cv_decl_strtoumax+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#if STDC_HEADERS
-#  include <stdlib.h>
-#endif
-#if HAVE_INTTYPES_H
-#  include <inttypes.h>
-#endif
-
-int
-main ()
-{
-return !strtoumax;
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  bash_cv_decl_strtoumax=yes
-else
-  bash_cv_decl_strtoumax=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_decl_strtoumax" >&5
-$as_echo "$bash_cv_decl_strtoumax" >&6; }
-bash_tr_func=HAVE_DECL_`echo strtoumax | tr 'abcdefghijklmnopqrstuvwxyz' 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'`
-if test $bash_cv_decl_strtoumax = yes; then
-  cat >>confdefs.h <<_ACEOF
-@%:@define $bash_tr_func 1
-_ACEOF
-
-else
-  cat >>confdefs.h <<_ACEOF
-@%:@define $bash_tr_func 0
-_ACEOF
-
-fi
-
-
-
-
-
-
-  
-  for ac_func in $ac_func_list
-do :
-  as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
-ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
-if eval test \"x\$"$as_ac_var"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-@%:@define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1
-_ACEOF
-fi
-done
-
-  
-
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for working mktime" >&5
-$as_echo_n "checking for working mktime... " >&6; }
-if ${ac_cv_func_working_mktime+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test "$cross_compiling" = yes; then :
-  ac_cv_func_working_mktime=no
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-/* Test program from Paul Eggert and Tony Leneis.  */
-#ifdef TIME_WITH_SYS_TIME
-# include <sys/time.h>
-# include <time.h>
-#else
-# ifdef HAVE_SYS_TIME_H
-#  include <sys/time.h>
-# else
-#  include <time.h>
-# endif
-#endif
-
-#include <limits.h>
-#include <stdlib.h>
-
-#ifdef HAVE_UNISTD_H
-# include <unistd.h>
-#endif
-
-#ifndef HAVE_ALARM
-# define alarm(X) /* empty */
-#endif
-
-/* Work around redefinition to rpl_putenv by other config tests.  */
-#undef putenv
-
-static time_t time_t_max;
-static time_t time_t_min;
-
-/* Values we'll use to set the TZ environment variable.  */
-static const char *tz_strings[] = {
-  (const char *) 0, "TZ=GMT0", "TZ=JST-9",
-  "TZ=EST+3EDT+2,M10.1.0/00:00:00,M2.3.0/00:00:00"
-};
-#define N_STRINGS (sizeof (tz_strings) / sizeof (tz_strings[0]))
-
-/* Return 0 if mktime fails to convert a date in the spring-forward gap.
-   Based on a problem report from Andreas Jaeger.  */
-static int
-spring_forward_gap ()
-{
-  /* glibc (up to about 1998-10-07) failed this test. */
-  struct tm tm;
-
-  /* Use the portable POSIX.1 specification "TZ=PST8PDT,M4.1.0,M10.5.0"
-     instead of "TZ=America/Vancouver" in order to detect the bug even
-     on systems that don't support the Olson extension, or don't have the
-     full zoneinfo tables installed.  */
-  putenv ((char*) "TZ=PST8PDT,M4.1.0,M10.5.0");
-
-  tm.tm_year = 98;
-  tm.tm_mon = 3;
-  tm.tm_mday = 5;
-  tm.tm_hour = 2;
-  tm.tm_min = 0;
-  tm.tm_sec = 0;
-  tm.tm_isdst = -1;
-  return mktime (&tm) != (time_t) -1;
-}
-
-static int
-mktime_test1 (time_t now)
-{
-  struct tm *lt;
-  return ! (lt = localtime (&now)) || mktime (lt) == now;
-}
-
-static int
-mktime_test (time_t now)
-{
-  return (mktime_test1 (now)
-         && mktime_test1 ((time_t) (time_t_max - now))
-         && mktime_test1 ((time_t) (time_t_min + now)));
-}
-
-static int
-irix_6_4_bug ()
-{
-  /* Based on code from Ariel Faigon.  */
-  struct tm tm;
-  tm.tm_year = 96;
-  tm.tm_mon = 3;
-  tm.tm_mday = 0;
-  tm.tm_hour = 0;
-  tm.tm_min = 0;
-  tm.tm_sec = 0;
-  tm.tm_isdst = -1;
-  mktime (&tm);
-  return tm.tm_mon == 2 && tm.tm_mday == 31;
-}
-
-static int
-bigtime_test (int j)
-{
-  struct tm tm;
-  time_t now;
-  tm.tm_year = tm.tm_mon = tm.tm_mday = tm.tm_hour = tm.tm_min = tm.tm_sec = j;
-  now = mktime (&tm);
-  if (now != (time_t) -1)
-    {
-      struct tm *lt = localtime (&now);
-      if (! (lt
-            && lt->tm_year == tm.tm_year
-            && lt->tm_mon == tm.tm_mon
-            && lt->tm_mday == tm.tm_mday
-            && lt->tm_hour == tm.tm_hour
-            && lt->tm_min == tm.tm_min
-            && lt->tm_sec == tm.tm_sec
-            && lt->tm_yday == tm.tm_yday
-            && lt->tm_wday == tm.tm_wday
-            && ((lt->tm_isdst < 0 ? -1 : 0 < lt->tm_isdst)
-                 == (tm.tm_isdst < 0 ? -1 : 0 < tm.tm_isdst))))
-       return 0;
-    }
-  return 1;
-}
-
-static int
-year_2050_test ()
-{
-  /* The correct answer for 2050-02-01 00:00:00 in Pacific time,
-     ignoring leap seconds.  */
-  unsigned long int answer = 2527315200UL;
-
-  struct tm tm;
-  time_t t;
-  tm.tm_year = 2050 - 1900;
-  tm.tm_mon = 2 - 1;
-  tm.tm_mday = 1;
-  tm.tm_hour = tm.tm_min = tm.tm_sec = 0;
-  tm.tm_isdst = -1;
-
-  /* Use the portable POSIX.1 specification "TZ=PST8PDT,M4.1.0,M10.5.0"
-     instead of "TZ=America/Vancouver" in order to detect the bug even
-     on systems that don't support the Olson extension, or don't have the
-     full zoneinfo tables installed.  */
-  putenv ((char*) "TZ=PST8PDT,M4.1.0,M10.5.0");
-
-  t = mktime (&tm);
-
-  /* Check that the result is either a failure, or close enough
-     to the correct answer that we can assume the discrepancy is
-     due to leap seconds.  */
-  return (t == (time_t) -1
-         || (0 < t && answer - 120 <= t && t <= answer + 120));
-}
-
-int
-main ()
-{
-  time_t t, delta;
-  int i, j;
-
-  /* This test makes some buggy mktime implementations loop.
-     Give up after 60 seconds; a mktime slower than that
-     isn't worth using anyway.  */
-  alarm (60);
-
-  for (;;)
-    {
-      t = (time_t_max << 1) + 1;
-      if (t <= time_t_max)
-       break;
-      time_t_max = t;
-    }
-  time_t_min = - ((time_t) ~ (time_t) 0 == (time_t) -1) - time_t_max;
-
-  delta = time_t_max / 997; /* a suitable prime number */
-  for (i = 0; i < N_STRINGS; i++)
-    {
-      if (tz_strings[i])
-       putenv ((char*) tz_strings[i]);
-
-      for (t = 0; t <= time_t_max - delta; t += delta)
-       if (! mktime_test (t))
-         return 1;
-      if (! (mktime_test ((time_t) 1)
-            && mktime_test ((time_t) (60 * 60))
-            && mktime_test ((time_t) (60 * 60 * 24))))
-       return 1;
-
-      for (j = 1; ; j <<= 1)
-       if (! bigtime_test (j))
-         return 1;
-       else if (INT_MAX / 2 < j)
-         break;
-      if (! bigtime_test (INT_MAX))
-       return 1;
-    }
-  return ! (irix_6_4_bug () && spring_forward_gap () && year_2050_test ());
-}
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-  ac_cv_func_working_mktime=yes
-else
-  ac_cv_func_working_mktime=no
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_func_working_mktime" >&5
-$as_echo "$ac_cv_func_working_mktime" >&6; }
-if test $ac_cv_func_working_mktime = no; then
-  case " $LIB@&t@OBJS " in
-  *" mktime.$ac_objext "* ) ;;
-  *) LIB@&t@OBJS="$LIB@&t@OBJS mktime.$ac_objext"
- ;;
-esac
-
-fi
-
-
-
-for ac_header in argz.h errno.h fcntl.h malloc.h stdio_ext.h
-do :
-  as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
-ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default"
-if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-@%:@define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
-fi
-
-done
-
-
-
-for ac_func in getpagesize
-do :
-  ac_fn_c_check_func "$LINENO" "getpagesize" "ac_cv_func_getpagesize"
-if test "x$ac_cv_func_getpagesize" = xyes; then :
-  cat >>confdefs.h <<_ACEOF
-@%:@define HAVE_GETPAGESIZE 1
-_ACEOF
-fi
-done
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for working mmap" >&5
-$as_echo_n "checking for working mmap... " >&6; }
-if ${ac_cv_func_mmap_fixed_mapped+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test "$cross_compiling" = yes; then :
-  ac_cv_func_mmap_fixed_mapped=no
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-$ac_includes_default
-/* malloc might have been renamed as rpl_malloc. */
-#undef malloc
-
-/* Thanks to Mike Haertel and Jim Avera for this test.
-   Here is a matrix of mmap possibilities:
-       mmap private not fixed
-       mmap private fixed at somewhere currently unmapped
-       mmap private fixed at somewhere already mapped
-       mmap shared not fixed
-       mmap shared fixed at somewhere currently unmapped
-       mmap shared fixed at somewhere already mapped
-   For private mappings, we should verify that changes cannot be read()
-   back from the file, nor mmap's back from the file at a different
-   address.  (There have been systems where private was not correctly
-   implemented like the infamous i386 svr4.0, and systems where the
-   VM page cache was not coherent with the file system buffer cache
-   like early versions of FreeBSD and possibly contemporary NetBSD.)
-   For shared mappings, we should conversely verify that changes get
-   propagated back to all the places they're supposed to be.
-
-   Grep wants private fixed already mapped.
-   The main things grep needs to know about mmap are:
-   * does it exist and is it safe to write into the mmap'd area
-   * how to use it (BSD variants)  */
-
-#include <fcntl.h>
-#include <sys/mman.h>
-
-#if !defined STDC_HEADERS && !defined HAVE_STDLIB_H
-char *malloc ();
-#endif
-
-/* This mess was copied from the GNU getpagesize.h.  */
-#ifndef HAVE_GETPAGESIZE
-# ifdef _SC_PAGESIZE
-#  define getpagesize() sysconf(_SC_PAGESIZE)
-# else /* no _SC_PAGESIZE */
-#  ifdef HAVE_SYS_PARAM_H
-#   include <sys/param.h>
-#   ifdef EXEC_PAGESIZE
-#    define getpagesize() EXEC_PAGESIZE
-#   else /* no EXEC_PAGESIZE */
-#    ifdef NBPG
-#     define getpagesize() NBPG * CLSIZE
-#     ifndef CLSIZE
-#      define CLSIZE 1
-#     endif /* no CLSIZE */
-#    else /* no NBPG */
-#     ifdef NBPC
-#      define getpagesize() NBPC
-#     else /* no NBPC */
-#      ifdef PAGESIZE
-#       define getpagesize() PAGESIZE
-#      endif /* PAGESIZE */
-#     endif /* no NBPC */
-#    endif /* no NBPG */
-#   endif /* no EXEC_PAGESIZE */
-#  else /* no HAVE_SYS_PARAM_H */
-#   define getpagesize() 8192  /* punt totally */
-#  endif /* no HAVE_SYS_PARAM_H */
-# endif /* no _SC_PAGESIZE */
-
-#endif /* no HAVE_GETPAGESIZE */
-
-int
-main ()
-{
-  char *data, *data2, *data3;
-  const char *cdata2;
-  int i, pagesize;
-  int fd, fd2;
-
-  pagesize = getpagesize ();
-
-  /* First, make a file with some known garbage in it. */
-  data = (char *) malloc (pagesize);
-  if (!data)
-    return 1;
-  for (i = 0; i < pagesize; ++i)
-    *(data + i) = rand ();
-  umask (0);
-  fd = creat ("conftest.mmap", 0600);
-  if (fd < 0)
-    return 2;
-  if (write (fd, data, pagesize) != pagesize)
-    return 3;
-  close (fd);
-
-  /* Next, check that the tail of a page is zero-filled.  File must have
-     non-zero length, otherwise we risk SIGBUS for entire page.  */
-  fd2 = open ("conftest.txt", O_RDWR | O_CREAT | O_TRUNC, 0600);
-  if (fd2 < 0)
-    return 4;
-  cdata2 = "";
-  if (write (fd2, cdata2, 1) != 1)
-    return 5;
-  data2 = (char *) mmap (0, pagesize, PROT_READ | PROT_WRITE, MAP_SHARED, fd2, 0L);
-  if (data2 == MAP_FAILED)
-    return 6;
-  for (i = 0; i < pagesize; ++i)
-    if (*(data2 + i))
-      return 7;
-  close (fd2);
-  if (munmap (data2, pagesize))
-    return 8;
-
-  /* Next, try to mmap the file at a fixed address which already has
-     something else allocated at it.  If we can, also make sure that
-     we see the same garbage.  */
-  fd = open ("conftest.mmap", O_RDWR);
-  if (fd < 0)
-    return 9;
-  if (data2 != mmap (data2, pagesize, PROT_READ | PROT_WRITE,
-                    MAP_PRIVATE | MAP_FIXED, fd, 0L))
-    return 10;
-  for (i = 0; i < pagesize; ++i)
-    if (*(data + i) != *(data2 + i))
-      return 11;
-
-  /* Finally, make sure that changes to the mapped area do not
-     percolate back to the file as seen by read().  (This is a bug on
-     some variants of i386 svr4.0.)  */
-  for (i = 0; i < pagesize; ++i)
-    *(data2 + i) = *(data2 + i) + 1;
-  data3 = (char *) malloc (pagesize);
-  if (!data3)
-    return 12;
-  if (read (fd, data3, pagesize) != pagesize)
-    return 13;
-  for (i = 0; i < pagesize; ++i)
-    if (*(data + i) != *(data3 + i))
-      return 14;
-  close (fd);
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-  ac_cv_func_mmap_fixed_mapped=yes
-else
-  ac_cv_func_mmap_fixed_mapped=no
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_func_mmap_fixed_mapped" >&5
-$as_echo "$ac_cv_func_mmap_fixed_mapped" >&6; }
-if test $ac_cv_func_mmap_fixed_mapped = yes; then
-  
-$as_echo "@%:@define HAVE_MMAP 1" >>confdefs.h
-
-fi
-rm -f conftest.mmap conftest.txt
-
-for ac_func in __argz_count __argz_next __argz_stringify dcgettext mempcpy \
-               munmap stpcpy strcspn strdup
-do :
-  as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
-ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
-if eval test \"x\$"$as_ac_var"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-@%:@define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1
-_ACEOF
-fi
-done
-
-
-INTL_DEP= INTL_INC= LIBINTL_H=
-if test "x$USE_INCLUDED_LIBINTL" = "xyes"; then
-       INTL_DEP='${INTL_LIBDIR}/libintl.a'
-       INTL_INC='-I${INTL_LIBSRC} -I${INTL_BUILDDIR}'
-       LIBINTL_H='${INTL_BUILDDIR}/libintl.h'
-fi
-
-
-
-
-
-
-for ac_header in wctype.h
-do :
-  ac_fn_c_check_header_mongrel "$LINENO" "wctype.h" "ac_cv_header_wctype_h" "$ac_includes_default"
-if test "x$ac_cv_header_wctype_h" = xyes; then :
-  cat >>confdefs.h <<_ACEOF
-@%:@define HAVE_WCTYPE_H 1
-_ACEOF
-fi
-
-done
-
-for ac_header in wchar.h
-do :
-  ac_fn_c_check_header_mongrel "$LINENO" "wchar.h" "ac_cv_header_wchar_h" "$ac_includes_default"
-if test "x$ac_cv_header_wchar_h" = xyes; then :
-  cat >>confdefs.h <<_ACEOF
-@%:@define HAVE_WCHAR_H 1
-_ACEOF
-fi
-
-done
-
-for ac_header in langinfo.h
-do :
-  ac_fn_c_check_header_mongrel "$LINENO" "langinfo.h" "ac_cv_header_langinfo_h" "$ac_includes_default"
-if test "x$ac_cv_header_langinfo_h" = xyes; then :
-  cat >>confdefs.h <<_ACEOF
-@%:@define HAVE_LANGINFO_H 1
-_ACEOF
-fi
-
-done
-
-
-ac_fn_c_check_func "$LINENO" "mbrlen" "ac_cv_func_mbrlen"
-if test "x$ac_cv_func_mbrlen" = xyes; then :
-  $as_echo "@%:@define HAVE_MBRLEN 1" >>confdefs.h
-
-fi
-
-ac_fn_c_check_func "$LINENO" "mbscasecmp" "ac_cv_func_mbscasecmp"
-if test "x$ac_cv_func_mbscasecmp" = xyes; then :
-  $as_echo "@%:@define HAVE_MBSCMP 1" >>confdefs.h
-
-fi
-
-ac_fn_c_check_func "$LINENO" "mbscmp" "ac_cv_func_mbscmp"
-if test "x$ac_cv_func_mbscmp" = xyes; then :
-  $as_echo "@%:@define HAVE_MBSCMP 1" >>confdefs.h
-
-fi
-
-ac_fn_c_check_func "$LINENO" "mbsnrtowcs" "ac_cv_func_mbsnrtowcs"
-if test "x$ac_cv_func_mbsnrtowcs" = xyes; then :
-  $as_echo "@%:@define HAVE_MBSNRTOWCS 1" >>confdefs.h
-
-fi
-
-ac_fn_c_check_func "$LINENO" "mbsrtowcs" "ac_cv_func_mbsrtowcs"
-if test "x$ac_cv_func_mbsrtowcs" = xyes; then :
-  $as_echo "@%:@define HAVE_MBSRTOWCS 1" >>confdefs.h
-
-fi
-
-
-ac_fn_c_check_func "$LINENO" "mbschr" "ac_cv_func_mbschr"
-if test "x$ac_cv_func_mbschr" = xyes; then :
-  $as_echo "@%:@define HAVE_MBSCHR 1" >>confdefs.h
-
-else
-  case " $LIB@&t@OBJS " in
-  *" mbschr.$ac_objext "* ) ;;
-  *) LIB@&t@OBJS="$LIB@&t@OBJS mbschr.$ac_objext"
- ;;
-esac
-
-fi
-
-
-
-ac_fn_c_check_func "$LINENO" "wcrtomb" "ac_cv_func_wcrtomb"
-if test "x$ac_cv_func_wcrtomb" = xyes; then :
-  $as_echo "@%:@define HAVE_WCRTOMB 1" >>confdefs.h
-
-fi
-
-ac_fn_c_check_func "$LINENO" "wcscoll" "ac_cv_func_wcscoll"
-if test "x$ac_cv_func_wcscoll" = xyes; then :
-  $as_echo "@%:@define HAVE_WCSCOLL 1" >>confdefs.h
-
-fi
-
-ac_fn_c_check_func "$LINENO" "wcsdup" "ac_cv_func_wcsdup"
-if test "x$ac_cv_func_wcsdup" = xyes; then :
-  $as_echo "@%:@define HAVE_WCSDUP 1" >>confdefs.h
-
-fi
-
-ac_fn_c_check_func "$LINENO" "wcwidth" "ac_cv_func_wcwidth"
-if test "x$ac_cv_func_wcwidth" = xyes; then :
-  $as_echo "@%:@define HAVE_WCWIDTH 1" >>confdefs.h
-
-fi
-
-ac_fn_c_check_func "$LINENO" "wctype" "ac_cv_func_wctype"
-if test "x$ac_cv_func_wctype" = xyes; then :
-  $as_echo "@%:@define HAVE_WCTYPE 1" >>confdefs.h
-
-fi
-
-
-ac_fn_c_check_func "$LINENO" "wcswidth" "ac_cv_func_wcswidth"
-if test "x$ac_cv_func_wcswidth" = xyes; then :
-  $as_echo "@%:@define HAVE_WCSWIDTH 1" >>confdefs.h
-
-else
-  case " $LIB@&t@OBJS " in
-  *" wcswidth.$ac_objext "* ) ;;
-  *) LIB@&t@OBJS="$LIB@&t@OBJS wcswidth.$ac_objext"
- ;;
-esac
-
-fi
-
-
-
-
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether mbrtowc and mbstate_t are properly declared" >&5
-$as_echo_n "checking whether mbrtowc and mbstate_t are properly declared... " >&6; }
-if ${ac_cv_func_mbrtowc+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-@%:@include <wchar.h>
-int
-main ()
-{
-wchar_t wc;
-             char const s[] = "";
-             size_t n = 1;
-             mbstate_t state;
-             return ! (sizeof state && (mbrtowc) (&wc, s, n, &state));
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  ac_cv_func_mbrtowc=yes
-else
-  ac_cv_func_mbrtowc=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_func_mbrtowc" >&5
-$as_echo "$ac_cv_func_mbrtowc" >&6; }
-  if test $ac_cv_func_mbrtowc = yes; then
-    
-$as_echo "@%:@define HAVE_MBRTOWC 1" >>confdefs.h
-
-  fi
-
-if test $ac_cv_func_mbrtowc = yes; then
-       $as_echo "@%:@define HAVE_MBSTATE_T 1" >>confdefs.h
-
-fi
-
-for ac_func in iswlower iswupper towlower towupper iswctype
-do :
-  as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
-ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
-if eval test \"x\$"$as_ac_var"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-@%:@define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1
-_ACEOF
-fi
-done
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for nl_langinfo and CODESET" >&5
-$as_echo_n "checking for nl_langinfo and CODESET... " >&6; }
-if ${bash_cv_langinfo_codeset+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <langinfo.h>
-int
-main ()
-{
-char* cs = nl_langinfo(CODESET);
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  bash_cv_langinfo_codeset=yes
-else
-  bash_cv_langinfo_codeset=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_langinfo_codeset" >&5
-$as_echo "$bash_cv_langinfo_codeset" >&6; }
-if test $bash_cv_langinfo_codeset = yes; then
-  $as_echo "@%:@define HAVE_LANGINFO_CODESET 1" >>confdefs.h
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for wchar_t in wchar.h" >&5
-$as_echo_n "checking for wchar_t in wchar.h... " >&6; }
-if ${bash_cv_type_wchar_t+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <wchar.h>
-
-int
-main ()
-{
-
-        wchar_t foo;
-        foo = 0;
-
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  bash_cv_type_wchar_t=yes
-else
-  bash_cv_type_wchar_t=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_type_wchar_t" >&5
-$as_echo "$bash_cv_type_wchar_t" >&6; }
-if test $bash_cv_type_wchar_t = yes; then
-        
-$as_echo "@%:@define HAVE_WCHAR_T 1" >>confdefs.h
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for wctype_t in wctype.h" >&5
-$as_echo_n "checking for wctype_t in wctype.h... " >&6; }
-if ${bash_cv_type_wctype_t+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <wctype.h>
-int
-main ()
-{
-
-        wctype_t foo;
-        foo = 0;
-
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  bash_cv_type_wctype_t=yes
-else
-  bash_cv_type_wctype_t=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_type_wctype_t" >&5
-$as_echo "$bash_cv_type_wctype_t" >&6; }
-if test $bash_cv_type_wctype_t = yes; then
-        
-$as_echo "@%:@define HAVE_WCTYPE_T 1" >>confdefs.h
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for wint_t in wctype.h" >&5
-$as_echo_n "checking for wint_t in wctype.h... " >&6; }
-if ${bash_cv_type_wint_t+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <wctype.h>
-int
-main ()
-{
-
-        wint_t foo;
-        foo = 0;
-
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  bash_cv_type_wint_t=yes
-else
-  bash_cv_type_wint_t=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_type_wint_t" >&5
-$as_echo "$bash_cv_type_wint_t" >&6; }
-if test $bash_cv_type_wint_t = yes; then
-        
-$as_echo "@%:@define HAVE_WINT_T 1" >>confdefs.h
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for wcwidth broken with unicode combining characters" >&5
-$as_echo_n "checking for wcwidth broken with unicode combining characters... " >&6; }
-if ${bash_cv_wcwidth_broken+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test "$cross_compiling" = yes; then :
-  { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error $? "cannot run test program while cross compiling
-See \`config.log' for more details" "$LINENO" 5; }
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#include <unistd.h>
-#include <stdlib.h>
-#include <stdio.h>
-
-#include <locale.h>
-#include <wchar.h>
-
-main(c, v)
-int     c;
-char    **v;
-{
-        int     w;
-
-        setlocale(LC_ALL, "en_US.UTF-8");
-        w = wcwidth (0x0301);
-        exit (w == 0);  /* exit 0 if wcwidth broken */
-}
-
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-  bash_cv_wcwidth_broken=yes
-else
-  bash_cv_wcwdith_broken=no
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_wcwidth_broken" >&5
-$as_echo "$bash_cv_wcwidth_broken" >&6; }
-if test $bash_cv_wcwidth_broken = yes; then
-        
-$as_echo "@%:@define WCWIDTH_BROKEN 1" >>confdefs.h
-
-fi
-
-if test "$am_cv_func_iconv" = yes; then
-       OLDLIBS="$LIBS"
-       LIBS="$LIBS $LIBICONV"
-       for ac_func in locale_charset
-do :
-  ac_fn_c_check_func "$LINENO" "locale_charset" "ac_cv_func_locale_charset"
-if test "x$ac_cv_func_locale_charset" = xyes; then :
-  cat >>confdefs.h <<_ACEOF
-@%:@define HAVE_LOCALE_CHARSET 1
-_ACEOF
-fi
-done
-
-       LIBS="$OLDLIBS"
-fi
-
-
-
-if test "$opt_static_link" != yes; then
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for dlopen in -ldl" >&5
-$as_echo_n "checking for dlopen in -ldl... " >&6; }
-if ${ac_cv_lib_dl_dlopen+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_check_lib_save_LIBS=$LIBS
-LIBS="-ldl  $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-/* Override any GCC internal prototype to avoid an error.
-   Use char because int might match the return type of a GCC
-   builtin and then its argument prototype would still apply.  */
-#ifdef __cplusplus
-extern "C"
-#endif
-char dlopen ();
-int
-main ()
-{
-return dlopen ();
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  ac_cv_lib_dl_dlopen=yes
-else
-  ac_cv_lib_dl_dlopen=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dl_dlopen" >&5
-$as_echo "$ac_cv_lib_dl_dlopen" >&6; }
-if test "x$ac_cv_lib_dl_dlopen" = xyes; then :
-  cat >>confdefs.h <<_ACEOF
-@%:@define HAVE_LIBDL 1
-_ACEOF
-
-  LIBS="-ldl $LIBS"
-
-fi
-
-for ac_func in dlopen dlclose dlsym
-do :
-  as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
-ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
-if eval test \"x\$"$as_ac_var"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-@%:@define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1
-_ACEOF
-fi
-done
-
-fi
-
-ac_fn_c_check_decl "$LINENO" "sys_siglist" "ac_cv_have_decl_sys_siglist" "#include <signal.h>
-/* NetBSD declares sys_siglist in unistd.h.  */
-#ifdef HAVE_UNISTD_H
-# include <unistd.h>
-#endif
-
-"
-if test "x$ac_cv_have_decl_sys_siglist" = xyes; then :
-  ac_have_decl=1
-else
-  ac_have_decl=0
-fi
-
-cat >>confdefs.h <<_ACEOF
-@%:@define HAVE_DECL_SYS_SIGLIST $ac_have_decl
-_ACEOF
-
-
-
-if test "$ac_cv_func_inet_aton" != 'yes'; then
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for inet_aton" >&5
-$as_echo_n "checking for inet_aton... " >&6; }
-if ${bash_cv_func_inet_aton+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#include <sys/types.h>
-#include <netinet/in.h>
-#include <arpa/inet.h>
-struct in_addr ap;
-int
-main ()
-{
- inet_aton("127.0.0.1", &ap); 
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  bash_cv_func_inet_aton=yes
-else
-  bash_cv_func_inet_aton=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_func_inet_aton" >&5
-$as_echo "$bash_cv_func_inet_aton" >&6; }
-if test $bash_cv_func_inet_aton = yes; then
-  $as_echo "@%:@define HAVE_INET_ATON 1" >>confdefs.h
-
-else
-  case " $LIB@&t@OBJS " in
-  *" inet_aton.$ac_objext "* ) ;;
-  *) LIB@&t@OBJS="$LIB@&t@OBJS inet_aton.$ac_objext"
- ;;
-esac
-
-fi
-
-fi
-
-case "$host_os" in
-irix4*)        { $as_echo "$as_me:${as_lineno-$LINENO}: checking for getpwent in -lsun" >&5
-$as_echo_n "checking for getpwent in -lsun... " >&6; }
-if ${ac_cv_lib_sun_getpwent+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_check_lib_save_LIBS=$LIBS
-LIBS="-lsun  $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-/* Override any GCC internal prototype to avoid an error.
-   Use char because int might match the return type of a GCC
-   builtin and then its argument prototype would still apply.  */
-#ifdef __cplusplus
-extern "C"
-#endif
-char getpwent ();
-int
-main ()
-{
-return getpwent ();
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  ac_cv_lib_sun_getpwent=yes
-else
-  ac_cv_lib_sun_getpwent=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_sun_getpwent" >&5
-$as_echo "$ac_cv_lib_sun_getpwent" >&6; }
-if test "x$ac_cv_lib_sun_getpwent" = xyes; then :
-  cat >>confdefs.h <<_ACEOF
-@%:@define HAVE_LIBSUN 1
-_ACEOF
-
-  LIBS="-lsun $LIBS"
-
-fi
- ;;
-esac
-
-if test "$ac_cv_func_getpeername" = no; then
-       
-if test "X$bash_cv_have_socklib" = "X"; then
-_bash_needmsg=
-else
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for socket library" >&5
-$as_echo_n "checking for socket library... " >&6; }
-_bash_needmsg=yes
-fi
-if ${bash_cv_have_socklib+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for getpeername in -lsocket" >&5
-$as_echo_n "checking for getpeername in -lsocket... " >&6; }
-if ${ac_cv_lib_socket_getpeername+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_check_lib_save_LIBS=$LIBS
-LIBS="-lsocket -lnsl $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-/* Override any GCC internal prototype to avoid an error.
-   Use char because int might match the return type of a GCC
-   builtin and then its argument prototype would still apply.  */
-#ifdef __cplusplus
-extern "C"
-#endif
-char getpeername ();
-int
-main ()
-{
-return getpeername ();
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  ac_cv_lib_socket_getpeername=yes
-else
-  ac_cv_lib_socket_getpeername=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_socket_getpeername" >&5
-$as_echo "$ac_cv_lib_socket_getpeername" >&6; }
-if test "x$ac_cv_lib_socket_getpeername" = xyes; then :
-  bash_cv_have_socklib=yes
-else
-  bash_cv_have_socklib=no
-fi
-
-fi
-
-if test "X$_bash_needmsg" = Xyes; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_have_socklib" >&5
-$as_echo "$bash_cv_have_socklib" >&6; }
-  _bash_needmsg=
-fi
-if test $bash_cv_have_socklib = yes; then
-  # check for libnsl, add it to LIBS if present
-  if test "X$bash_cv_have_libnsl" = "X"; then
-    _bash_needmsg=
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for libnsl" >&5
-$as_echo_n "checking for libnsl... " >&6; }
-    _bash_needmsg=yes
-  fi
-  if ${bash_cv_have_libnsl+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for t_open in -lnsl" >&5
-$as_echo_n "checking for t_open in -lnsl... " >&6; }
-if ${ac_cv_lib_nsl_t_open+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_check_lib_save_LIBS=$LIBS
-LIBS="-lnsl  $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-/* Override any GCC internal prototype to avoid an error.
-   Use char because int might match the return type of a GCC
-   builtin and then its argument prototype would still apply.  */
-#ifdef __cplusplus
-extern "C"
-#endif
-char t_open ();
-int
-main ()
-{
-return t_open ();
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  ac_cv_lib_nsl_t_open=yes
-else
-  ac_cv_lib_nsl_t_open=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_nsl_t_open" >&5
-$as_echo "$ac_cv_lib_nsl_t_open" >&6; }
-if test "x$ac_cv_lib_nsl_t_open" = xyes; then :
-  bash_cv_have_libnsl=yes
-else
-  bash_cv_have_libnsl=no
-fi
-
-fi
-
-  if test "X$_bash_needmsg" = Xyes; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_have_libnsl" >&5
-$as_echo "$bash_cv_have_libnsl" >&6; }
-    _bash_needmsg=
-  fi
-  if test $bash_cv_have_libnsl = yes; then
-    LIBS="-lsocket -lnsl $LIBS"
-  else
-    LIBS="-lsocket $LIBS"
-  fi
-  $as_echo "@%:@define HAVE_LIBSOCKET 1" >>confdefs.h
-
-  $as_echo "@%:@define HAVE_GETPEERNAME 1" >>confdefs.h
-
-fi
-
-fi
-if test "$ac_cv_func_gethostbyname" = no; then
-       if test "X$bash_cv_have_gethostbyname" = "X"; then
-_bash_needmsg=yes
-else
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for gethostbyname in socket library" >&5
-$as_echo_n "checking for gethostbyname in socket library... " >&6; }
-_bash_needmsg=
-fi
-if ${bash_cv_have_gethostbyname+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <netdb.h>
-int
-main ()
-{
- struct hostent *hp;
-  hp = gethostbyname("localhost");
-
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  bash_cv_have_gethostbyname=yes
-else
-  bash_cv_have_gethostbyname=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-
-fi
-
-if test "X$_bash_needmsg" = Xyes; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for gethostbyname in socket library" >&5
-$as_echo_n "checking for gethostbyname in socket library... " >&6; }
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_have_gethostbyname" >&5
-$as_echo "$bash_cv_have_gethostbyname" >&6; }
-if test "$bash_cv_have_gethostbyname" = yes; then
-$as_echo "@%:@define HAVE_GETHOSTBYNAME 1" >>confdefs.h
-
-fi
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for uid_t in sys/types.h" >&5
-$as_echo_n "checking for uid_t in sys/types.h... " >&6; }
-if ${ac_cv_type_uid_t+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <sys/types.h>
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "uid_t" >/dev/null 2>&1; then :
-  ac_cv_type_uid_t=yes
-else
-  ac_cv_type_uid_t=no
-fi
-rm -f conftest*
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_type_uid_t" >&5
-$as_echo "$ac_cv_type_uid_t" >&6; }
-if test $ac_cv_type_uid_t = no; then
-  
-$as_echo "@%:@define uid_t int" >>confdefs.h
-
-  
-$as_echo "@%:@define gid_t int" >>confdefs.h
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking type of array argument to getgroups" >&5
-$as_echo_n "checking type of array argument to getgroups... " >&6; }
-if ${ac_cv_type_getgroups+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test "$cross_compiling" = yes; then :
-  ac_cv_type_getgroups=cross
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-/* Thanks to Mike Rendell for this test.  */
-$ac_includes_default
-#define NGID 256
-#undef MAX
-#define MAX(x, y) ((x) > (y) ? (x) : (y))
-
-int
-main ()
-{
-  gid_t gidset[NGID];
-  int i, n;
-  union { gid_t gval; long int lval; }  val;
-
-  val.lval = -1;
-  for (i = 0; i < NGID; i++)
-    gidset[i] = val.gval;
-  n = getgroups (sizeof (gidset) / MAX (sizeof (int), sizeof (gid_t)) - 1,
-                gidset);
-  /* Exit non-zero if getgroups seems to require an array of ints.  This
-     happens when gid_t is short int but getgroups modifies an array
-     of ints.  */
-  return n > 0 && gidset[n] != val.gval;
-}
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-  ac_cv_type_getgroups=gid_t
-else
-  ac_cv_type_getgroups=int
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-if test $ac_cv_type_getgroups = cross; then
-        cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <unistd.h>
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "getgroups.*int.*gid_t" >/dev/null 2>&1; then :
-  ac_cv_type_getgroups=gid_t
-else
-  ac_cv_type_getgroups=int
-fi
-rm -f conftest*
-
-fi
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_type_getgroups" >&5
-$as_echo "$ac_cv_type_getgroups" >&6; }
-
-cat >>confdefs.h <<_ACEOF
-@%:@define GETGROUPS_T $ac_cv_type_getgroups
-_ACEOF
-
-
-ac_fn_c_check_type "$LINENO" "off_t" "ac_cv_type_off_t" "$ac_includes_default"
-if test "x$ac_cv_type_off_t" = xyes; then :
-  
-else
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define off_t long int
-_ACEOF
-
-fi
-
-ac_fn_c_check_type "$LINENO" "mode_t" "ac_cv_type_mode_t" "$ac_includes_default"
-if test "x$ac_cv_type_mode_t" = xyes; then :
-  
-else
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define mode_t int
-_ACEOF
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for uid_t in sys/types.h" >&5
-$as_echo_n "checking for uid_t in sys/types.h... " >&6; }
-if ${ac_cv_type_uid_t+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <sys/types.h>
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "uid_t" >/dev/null 2>&1; then :
-  ac_cv_type_uid_t=yes
-else
-  ac_cv_type_uid_t=no
-fi
-rm -f conftest*
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_type_uid_t" >&5
-$as_echo "$ac_cv_type_uid_t" >&6; }
-if test $ac_cv_type_uid_t = no; then
-  
-$as_echo "@%:@define uid_t int" >>confdefs.h
-
-  
-$as_echo "@%:@define gid_t int" >>confdefs.h
-
-fi
-
-ac_fn_c_check_type "$LINENO" "pid_t" "ac_cv_type_pid_t" "$ac_includes_default"
-if test "x$ac_cv_type_pid_t" = xyes; then :
-  
-else
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define pid_t int
-_ACEOF
-
-fi
-
-ac_fn_c_check_type "$LINENO" "size_t" "ac_cv_type_size_t" "$ac_includes_default"
-if test "x$ac_cv_type_size_t" = xyes; then :
-  
-else
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define size_t unsigned int
-_ACEOF
-
-fi
-
-ac_fn_c_check_type "$LINENO" "ssize_t" "ac_cv_type_ssize_t" "$ac_includes_default"
-if test "x$ac_cv_type_ssize_t" = xyes; then :
-  
-else
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define ssize_t int
-_ACEOF
-
-fi
-
-ac_fn_c_check_type "$LINENO" "time_t" "ac_cv_type_time_t" "$ac_includes_default"
-if test "x$ac_cv_type_time_t" = xyes; then :
-  
-else
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define time_t long
-_ACEOF
-
-fi
-
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for long long" >&5
-$as_echo_n "checking for long long... " >&6; }
-if ${bash_cv_type_long_long+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-long long ll = 1; int i = 63;
-int
-main ()
-{
-
-long long llm = (long long) -1;
-return ll << i | ll >> i | llm / ll | llm % ll;
-
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  bash_cv_type_long_long='long long'
-else
-  bash_cv_type_long_long='long'
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_type_long_long" >&5
-$as_echo "$bash_cv_type_long_long" >&6; }
-if test "$bash_cv_type_long_long" = 'long long'; then
-  $as_echo "@%:@define HAVE_LONG_LONG 1" >>confdefs.h
-
-fi
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for unsigned long long" >&5
-$as_echo_n "checking for unsigned long long... " >&6; }
-if ${bash_cv_type_unsigned_long_long+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-unsigned long long ull = 1; int i = 63;
-int
-main ()
-{
-
-unsigned long long ullmax = (unsigned long long) -1;
-return ull << i | ull >> i | ullmax / ull | ullmax % ull;
-
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  bash_cv_type_unsigned_long_long='unsigned long long'
-else
-  bash_cv_type_unsigned_long_long='unsigned long'
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_type_unsigned_long_long" >&5
-$as_echo "$bash_cv_type_unsigned_long_long" >&6; }
-if test "$bash_cv_type_unsigned_long_long" = 'unsigned long long'; then
-  $as_echo "@%:@define HAVE_UNSIGNED_LONG_LONG 1" >>confdefs.h
-
-fi
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking return type of signal handlers" >&5
-$as_echo_n "checking return type of signal handlers... " >&6; }
-if ${ac_cv_type_signal+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <sys/types.h>
-#include <signal.h>
-
-int
-main ()
-{
-return *(signal (0, 0)) (0) == 1;
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_cv_type_signal=int
-else
-  ac_cv_type_signal=void
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_type_signal" >&5
-$as_echo "$ac_cv_type_signal" >&6; }
-
-cat >>confdefs.h <<_ACEOF
-@%:@define RETSIGTYPE $ac_cv_type_signal
-_ACEOF
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for sig_atomic_t in signal.h" >&5
-$as_echo_n "checking for sig_atomic_t in signal.h... " >&6; }
-if ${ac_cv_have_sig_atomic_t+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#include <signal.h>
-
-int
-main ()
-{
- sig_atomic_t x; 
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  ac_cv_have_sig_atomic_t=yes
-else
-  ac_cv_have_sig_atomic_t=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_have_sig_atomic_t" >&5
-$as_echo "$ac_cv_have_sig_atomic_t" >&6; }
-if test "$ac_cv_have_sig_atomic_t" = "no"
-then
-    ac_fn_c_check_type "$LINENO" "sig_atomic_t" "ac_cv_type_sig_atomic_t" "$ac_includes_default"
-if test "x$ac_cv_type_sig_atomic_t" = xyes; then :
-  
-else
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define sig_atomic_t int
-_ACEOF
-
-fi
-
-fi
-
-
-# The cast to long int works around a bug in the HP C Compiler
-# version HP92453-01 B.11.11.23709.GP, which incorrectly rejects
-# declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'.
-# This bug is HP SR number 8606223364.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking size of char" >&5
-$as_echo_n "checking size of char... " >&6; }
-if ${ac_cv_sizeof_char+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (char))" "ac_cv_sizeof_char"        "$ac_includes_default"; then :
-  
-else
-  if test "$ac_cv_type_char" = yes; then
-     { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error 77 "cannot compute sizeof (char)
-See \`config.log' for more details" "$LINENO" 5; }
-   else
-     ac_cv_sizeof_char=0
-   fi
-fi
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_char" >&5
-$as_echo "$ac_cv_sizeof_char" >&6; }
-
-
-
-cat >>confdefs.h <<_ACEOF
-@%:@define SIZEOF_CHAR $ac_cv_sizeof_char
-_ACEOF
-
-
-# The cast to long int works around a bug in the HP C Compiler
-# version HP92453-01 B.11.11.23709.GP, which incorrectly rejects
-# declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'.
-# This bug is HP SR number 8606223364.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking size of short" >&5
-$as_echo_n "checking size of short... " >&6; }
-if ${ac_cv_sizeof_short+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (short))" "ac_cv_sizeof_short"        "$ac_includes_default"; then :
-  
-else
-  if test "$ac_cv_type_short" = yes; then
-     { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error 77 "cannot compute sizeof (short)
-See \`config.log' for more details" "$LINENO" 5; }
-   else
-     ac_cv_sizeof_short=0
-   fi
-fi
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_short" >&5
-$as_echo "$ac_cv_sizeof_short" >&6; }
-
-
-
-cat >>confdefs.h <<_ACEOF
-@%:@define SIZEOF_SHORT $ac_cv_sizeof_short
-_ACEOF
-
-
-# The cast to long int works around a bug in the HP C Compiler
-# version HP92453-01 B.11.11.23709.GP, which incorrectly rejects
-# declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'.
-# This bug is HP SR number 8606223364.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking size of int" >&5
-$as_echo_n "checking size of int... " >&6; }
-if ${ac_cv_sizeof_int+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (int))" "ac_cv_sizeof_int"        "$ac_includes_default"; then :
-  
-else
-  if test "$ac_cv_type_int" = yes; then
-     { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error 77 "cannot compute sizeof (int)
-See \`config.log' for more details" "$LINENO" 5; }
-   else
-     ac_cv_sizeof_int=0
-   fi
-fi
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_int" >&5
-$as_echo "$ac_cv_sizeof_int" >&6; }
-
-
-
-cat >>confdefs.h <<_ACEOF
-@%:@define SIZEOF_INT $ac_cv_sizeof_int
-_ACEOF
-
-
-# The cast to long int works around a bug in the HP C Compiler
-# version HP92453-01 B.11.11.23709.GP, which incorrectly rejects
-# declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'.
-# This bug is HP SR number 8606223364.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking size of long" >&5
-$as_echo_n "checking size of long... " >&6; }
-if ${ac_cv_sizeof_long+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (long))" "ac_cv_sizeof_long"        "$ac_includes_default"; then :
-  
-else
-  if test "$ac_cv_type_long" = yes; then
-     { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error 77 "cannot compute sizeof (long)
-See \`config.log' for more details" "$LINENO" 5; }
-   else
-     ac_cv_sizeof_long=0
-   fi
-fi
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_long" >&5
-$as_echo "$ac_cv_sizeof_long" >&6; }
-
-
-
-cat >>confdefs.h <<_ACEOF
-@%:@define SIZEOF_LONG $ac_cv_sizeof_long
-_ACEOF
-
-
-# The cast to long int works around a bug in the HP C Compiler
-# version HP92453-01 B.11.11.23709.GP, which incorrectly rejects
-# declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'.
-# This bug is HP SR number 8606223364.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking size of char *" >&5
-$as_echo_n "checking size of char *... " >&6; }
-if ${ac_cv_sizeof_char_p+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (char *))" "ac_cv_sizeof_char_p"        "$ac_includes_default"; then :
-  
-else
-  if test "$ac_cv_type_char_p" = yes; then
-     { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error 77 "cannot compute sizeof (char *)
-See \`config.log' for more details" "$LINENO" 5; }
-   else
-     ac_cv_sizeof_char_p=0
-   fi
-fi
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_char_p" >&5
-$as_echo "$ac_cv_sizeof_char_p" >&6; }
-
-
-
-cat >>confdefs.h <<_ACEOF
-@%:@define SIZEOF_CHAR_P $ac_cv_sizeof_char_p
-_ACEOF
-
-
-# The cast to long int works around a bug in the HP C Compiler
-# version HP92453-01 B.11.11.23709.GP, which incorrectly rejects
-# declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'.
-# This bug is HP SR number 8606223364.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking size of double" >&5
-$as_echo_n "checking size of double... " >&6; }
-if ${ac_cv_sizeof_double+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (double))" "ac_cv_sizeof_double"        "$ac_includes_default"; then :
-  
-else
-  if test "$ac_cv_type_double" = yes; then
-     { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error 77 "cannot compute sizeof (double)
-See \`config.log' for more details" "$LINENO" 5; }
-   else
-     ac_cv_sizeof_double=0
-   fi
-fi
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_double" >&5
-$as_echo "$ac_cv_sizeof_double" >&6; }
-
-
-
-cat >>confdefs.h <<_ACEOF
-@%:@define SIZEOF_DOUBLE $ac_cv_sizeof_double
-_ACEOF
-
-
-# The cast to long int works around a bug in the HP C Compiler
-# version HP92453-01 B.11.11.23709.GP, which incorrectly rejects
-# declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'.
-# This bug is HP SR number 8606223364.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking size of long long" >&5
-$as_echo_n "checking size of long long... " >&6; }
-if ${ac_cv_sizeof_long_long+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (long long))" "ac_cv_sizeof_long_long"        "$ac_includes_default"; then :
-  
-else
-  if test "$ac_cv_type_long_long" = yes; then
-     { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error 77 "cannot compute sizeof (long long)
-See \`config.log' for more details" "$LINENO" 5; }
-   else
-     ac_cv_sizeof_long_long=0
-   fi
-fi
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_long_long" >&5
-$as_echo "$ac_cv_sizeof_long_long" >&6; }
-
-
-
-cat >>confdefs.h <<_ACEOF
-@%:@define SIZEOF_LONG_LONG $ac_cv_sizeof_long_long
-_ACEOF
-
-
-
-ac_fn_c_check_type "$LINENO" "u_int" "ac_cv_type_u_int" "$ac_includes_default"
-if test "x$ac_cv_type_u_int" = xyes; then :
-  
-else
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define u_int unsigned int
-_ACEOF
-
-fi
-
-ac_fn_c_check_type "$LINENO" "u_long" "ac_cv_type_u_long" "$ac_includes_default"
-if test "x$ac_cv_type_u_long" = xyes; then :
-  
-else
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define u_long unsigned long
-_ACEOF
-
-fi
-
-
-
-if test "$ac_cv_sizeof_short" = 2; then
-  ac_fn_c_check_type "$LINENO" "bits16_t" "ac_cv_type_bits16_t" "$ac_includes_default"
-if test "x$ac_cv_type_bits16_t" = xyes; then :
-  
-else
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define bits16_t short
-_ACEOF
-
-fi
-
-elif test "$ac_cv_sizeof_char" = 2; then
-  ac_fn_c_check_type "$LINENO" "bits16_t" "ac_cv_type_bits16_t" "$ac_includes_default"
-if test "x$ac_cv_type_bits16_t" = xyes; then :
-  
-else
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define bits16_t char
-_ACEOF
-
-fi
-
-else
-  ac_fn_c_check_type "$LINENO" "bits16_t" "ac_cv_type_bits16_t" "$ac_includes_default"
-if test "x$ac_cv_type_bits16_t" = xyes; then :
-  
-else
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define bits16_t short
-_ACEOF
-
-fi
-
-fi
-
-
-if test "$ac_cv_sizeof_short" = 2; then
-  ac_fn_c_check_type "$LINENO" "u_bits16_t" "ac_cv_type_u_bits16_t" "$ac_includes_default"
-if test "x$ac_cv_type_u_bits16_t" = xyes; then :
-  
-else
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define u_bits16_t unsigned short
-_ACEOF
-
-fi
-
-elif test "$ac_cv_sizeof_char" = 2; then
-  ac_fn_c_check_type "$LINENO" "u_bits16_t" "ac_cv_type_u_bits16_t" "$ac_includes_default"
-if test "x$ac_cv_type_u_bits16_t" = xyes; then :
-  
-else
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define u_bits16_t unsigned char
-_ACEOF
-
-fi
-
-else
-  ac_fn_c_check_type "$LINENO" "u_bits16_t" "ac_cv_type_u_bits16_t" "$ac_includes_default"
-if test "x$ac_cv_type_u_bits16_t" = xyes; then :
-  
-else
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define u_bits16_t unsigned short
-_ACEOF
-
-fi
-
-fi
-
-
-if test "$ac_cv_sizeof_int" = 4; then
-  ac_fn_c_check_type "$LINENO" "bits32_t" "ac_cv_type_bits32_t" "$ac_includes_default"
-if test "x$ac_cv_type_bits32_t" = xyes; then :
-  
-else
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define bits32_t int
-_ACEOF
-
-fi
-
-elif test "$ac_cv_sizeof_long" = 4; then
-  ac_fn_c_check_type "$LINENO" "bits32_t" "ac_cv_type_bits32_t" "$ac_includes_default"
-if test "x$ac_cv_type_bits32_t" = xyes; then :
-  
-else
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define bits32_t long
-_ACEOF
-
-fi
-
-else
-  ac_fn_c_check_type "$LINENO" "bits32_t" "ac_cv_type_bits32_t" "$ac_includes_default"
-if test "x$ac_cv_type_bits32_t" = xyes; then :
-  
-else
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define bits32_t int
-_ACEOF
-
-fi
-
-fi
-
-
-if test "$ac_cv_sizeof_int" = 4; then
-  ac_fn_c_check_type "$LINENO" "u_bits32_t" "ac_cv_type_u_bits32_t" "$ac_includes_default"
-if test "x$ac_cv_type_u_bits32_t" = xyes; then :
-  
-else
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define u_bits32_t unsigned int
-_ACEOF
-
-fi
-
-elif test "$ac_cv_sizeof_long" = 4; then
-  ac_fn_c_check_type "$LINENO" "u_bits32_t" "ac_cv_type_u_bits32_t" "$ac_includes_default"
-if test "x$ac_cv_type_u_bits32_t" = xyes; then :
-  
-else
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define u_bits32_t unsigned long
-_ACEOF
-
-fi
-
-else
-  ac_fn_c_check_type "$LINENO" "u_bits32_t" "ac_cv_type_u_bits32_t" "$ac_includes_default"
-if test "x$ac_cv_type_u_bits32_t" = xyes; then :
-  
-else
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define u_bits32_t unsigned int
-_ACEOF
-
-fi
-
-fi
-
-
-if test "$ac_cv_sizeof_char_p" = 8; then
-  ac_fn_c_check_type "$LINENO" "bits64_t" "ac_cv_type_bits64_t" "$ac_includes_default"
-if test "x$ac_cv_type_bits64_t" = xyes; then :
-  
-else
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define bits64_t char *
-_ACEOF
-
-fi
-
-elif test "$ac_cv_sizeof_double" = 8; then
-  ac_fn_c_check_type "$LINENO" "bits64_t" "ac_cv_type_bits64_t" "$ac_includes_default"
-if test "x$ac_cv_type_bits64_t" = xyes; then :
-  
-else
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define bits64_t double
-_ACEOF
-
-fi
-
-elif test -n "$ac_cv_type_long_long" && test "$ac_cv_sizeof_long_long" = 8; then
-  ac_fn_c_check_type "$LINENO" "bits64_t" "ac_cv_type_bits64_t" "$ac_includes_default"
-if test "x$ac_cv_type_bits64_t" = xyes; then :
-  
-else
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define bits64_t long long
-_ACEOF
-
-fi
-
-elif test "$ac_cv_sizeof_long" = 8; then
-  ac_fn_c_check_type "$LINENO" "bits64_t" "ac_cv_type_bits64_t" "$ac_includes_default"
-if test "x$ac_cv_type_bits64_t" = xyes; then :
-  
-else
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define bits64_t long
-_ACEOF
-
-fi
-
-else
-  ac_fn_c_check_type "$LINENO" "bits64_t" "ac_cv_type_bits64_t" "$ac_includes_default"
-if test "x$ac_cv_type_bits64_t" = xyes; then :
-  
-else
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define bits64_t double
-_ACEOF
-
-fi
-
-fi
-
-
-
-if test "$ac_cv_sizeof_int" = "$ac_cv_sizeof_char_p"; then
-  ac_fn_c_check_type "$LINENO" "ptrdiff_t" "ac_cv_type_ptrdiff_t" "$ac_includes_default"
-if test "x$ac_cv_type_ptrdiff_t" = xyes; then :
-  
-else
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define ptrdiff_t int
-_ACEOF
-
-fi
-
-elif test "$ac_cv_sizeof_long" = "$ac_cv_sizeof_char_p"; then
-  ac_fn_c_check_type "$LINENO" "ptrdiff_t" "ac_cv_type_ptrdiff_t" "$ac_includes_default"
-if test "x$ac_cv_type_ptrdiff_t" = xyes; then :
-  
-else
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define ptrdiff_t long
-_ACEOF
-
-fi
-
-elif test "$ac_cv_type_long_long" = yes && test "$ac_cv_sizeof_long_long" = "$ac_cv_sizeof_char_p"; then
-  ac_fn_c_check_type "$LINENO" "ptrdiff_t" "ac_cv_type_ptrdiff_t" "$ac_includes_default"
-if test "x$ac_cv_type_ptrdiff_t" = xyes; then :
-  
-else
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define ptrdiff_t long long
-_ACEOF
-
-fi
-
-else
-  ac_fn_c_check_type "$LINENO" "ptrdiff_t" "ac_cv_type_ptrdiff_t" "$ac_includes_default"
-if test "x$ac_cv_type_ptrdiff_t" = xyes; then :
-  
-else
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define ptrdiff_t int
-_ACEOF
-
-fi
-
-fi
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether stat file-mode macros are broken" >&5
-$as_echo_n "checking whether stat file-mode macros are broken... " >&6; }
-if ${ac_cv_header_stat_broken+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <sys/types.h>
-#include <sys/stat.h>
-
-#if defined S_ISBLK && defined S_IFDIR
-extern char c1[S_ISBLK (S_IFDIR) ? -1 : 1];
-#endif
-
-#if defined S_ISBLK && defined S_IFCHR
-extern char c2[S_ISBLK (S_IFCHR) ? -1 : 1];
-#endif
-
-#if defined S_ISLNK && defined S_IFREG
-extern char c3[S_ISLNK (S_IFREG) ? -1 : 1];
-#endif
-
-#if defined S_ISSOCK && defined S_IFREG
-extern char c4[S_ISSOCK (S_IFREG) ? -1 : 1];
-#endif
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_cv_header_stat_broken=no
-else
-  ac_cv_header_stat_broken=yes
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_stat_broken" >&5
-$as_echo "$ac_cv_header_stat_broken" >&6; }
-if test $ac_cv_header_stat_broken = yes; then
-  
-$as_echo "@%:@define STAT_MACROS_BROKEN 1" >>confdefs.h
-
-fi
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether @%:@! works in shell scripts" >&5
-$as_echo_n "checking whether @%:@! works in shell scripts... " >&6; }
-if ${ac_cv_sys_interpreter+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  echo '#! /bin/cat
-exit 69
-' >conftest
-chmod u+x conftest
-(SHELL=/bin/sh; export SHELL; ./conftest >/dev/null 2>&1)
-if test $? -ne 69; then
-   ac_cv_sys_interpreter=yes
-else
-   ac_cv_sys_interpreter=no
-fi
-rm -f conftest
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sys_interpreter" >&5
-$as_echo "$ac_cv_sys_interpreter" >&6; }
-interpval=$ac_cv_sys_interpreter
-
-if test $ac_cv_sys_interpreter = yes; then
-$as_echo "@%:@define HAVE_HASH_BANG_EXEC 1" >>confdefs.h
-
-fi
-
-if test "$ac_cv_func_lstat" = "no"; then
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for lstat" >&5
-$as_echo_n "checking for lstat... " >&6; }
-if ${bash_cv_func_lstat+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#include <sys/types.h>
-#include <sys/stat.h>
-
-int
-main ()
-{
- lstat(".",(struct stat *)0); 
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  bash_cv_func_lstat=yes
-else
-  bash_cv_func_lstat=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_func_lstat" >&5
-$as_echo "$bash_cv_func_lstat" >&6; }
-if test $bash_cv_func_lstat = yes; then
-  $as_echo "@%:@define HAVE_LSTAT 1" >>confdefs.h
-
-fi
-
-fi
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the ctype macros accept non-ascii characters" >&5
-$as_echo_n "checking whether the ctype macros accept non-ascii characters... " >&6; }
-if ${bash_cv_func_ctype_nonascii+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test "$cross_compiling" = yes; then :
-  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cannot check ctype macros if cross compiling -- defaulting to no" >&5
-$as_echo "$as_me: WARNING: cannot check ctype macros if cross compiling -- defaulting to no" >&2;}
-    bash_cv_func_ctype_nonascii=no
-
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#ifdef HAVE_LOCALE_H
-#include <locale.h>
-#endif
-#include <stdio.h>
-#include <ctype.h>
-
-main(c, v)
-int    c;
-char   *v[];
-{
-       char    *deflocale;
-       unsigned char x;
-       int     r1, r2;
-
-#ifdef HAVE_SETLOCALE
-       /* We take a shot here.  If that locale is not known, try the
-          system default.  We try this one because '\342' (226) is
-          known to be a printable character in that locale. */
-       deflocale = setlocale(LC_ALL, "en_US.ISO8859-1");
-       if (deflocale == 0)
-               deflocale = setlocale(LC_ALL, "");
-#endif
-
-       x = '\342';
-       r1 = isprint(x);
-       x -= 128;
-       r2 = isprint(x);
-       exit (r1 == 0 || r2 == 0);
-}
-
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-  bash_cv_func_ctype_nonascii=yes
-else
-  bash_cv_func_ctype_nonascii=no
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_func_ctype_nonascii" >&5
-$as_echo "$bash_cv_func_ctype_nonascii" >&6; }
-if test $bash_cv_func_ctype_nonascii = yes; then
-$as_echo "@%:@define CTYPE_NON_ASCII 1" >>confdefs.h
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if dup2 fails to clear the close-on-exec flag" >&5
-$as_echo_n "checking if dup2 fails to clear the close-on-exec flag... " >&6; }
-if ${bash_cv_dup2_broken+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test "$cross_compiling" = yes; then :
-  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cannot check dup2 if cross compiling -- defaulting to no" >&5
-$as_echo "$as_me: WARNING: cannot check dup2 if cross compiling -- defaulting to no" >&2;}
-     bash_cv_dup2_broken=no
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#include <sys/types.h>
-#include <fcntl.h>
-main()
-{
-  int fd1, fd2, fl;
-  fd1 = open("/dev/null", 2);
-  if (fcntl(fd1, 2, 1) < 0)
-    exit(1);
-  fd2 = dup2(fd1, 1);
-  if (fd2 < 0)
-    exit(2);
-  fl = fcntl(fd2, 1, 0);
-  /* fl will be 1 if dup2 did not reset the close-on-exec flag. */
-  exit(fl != 1);
-}
-
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-  bash_cv_dup2_broken=yes
-else
-  bash_cv_dup2_broken=no
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_dup2_broken" >&5
-$as_echo "$bash_cv_dup2_broken" >&6; }
-if test $bash_cv_dup2_broken = yes; then
-$as_echo "@%:@define DUP2_BROKEN 1" >>confdefs.h
-
-fi
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether pgrps need synchronization" >&5
-$as_echo_n "checking whether pgrps need synchronization... " >&6; }
-if ${bash_cv_pgrp_pipe+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test "$cross_compiling" = yes; then :
-  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cannot check pgrp synchronization if cross compiling -- defaulting to no" >&5
-$as_echo "$as_me: WARNING: cannot check pgrp synchronization if cross compiling -- defaulting to no" >&2;}
-    bash_cv_pgrp_pipe=no
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#ifdef HAVE_UNISTD_H
-#  include <unistd.h>
-#endif
-main()
-{
-# ifdef GETPGRP_VOID
-#  define getpgID()    getpgrp()
-# else
-#  define getpgID()    getpgrp(0)
-#  define setpgid(x,y) setpgrp(x,y)
-# endif
-       int pid1, pid2, fds[2];
-       int status;
-       char ok;
-
-       switch (pid1 = fork()) {
-         case -1:
-           exit(1);
-         case 0:
-           setpgid(0, getpid());
-           exit(0);
-       }
-       setpgid(pid1, pid1);
-
-       sleep(2);       /* let first child die */
-
-       if (pipe(fds) < 0)
-         exit(2);
-
-       switch (pid2 = fork()) {
-         case -1:
-           exit(3);
-         case 0:
-           setpgid(0, pid1);
-           ok = getpgID() == pid1;
-           write(fds[1], &ok, 1);
-           exit(0);
-       }
-       setpgid(pid2, pid1);
-
-       close(fds[1]);
-       if (read(fds[0], &ok, 1) != 1)
-         exit(4);
-       wait(&status);
-       wait(&status);
-       exit(ok ? 0 : 5);
-}
-
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-  bash_cv_pgrp_pipe=no
-else
-  bash_cv_pgrp_pipe=yes
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_pgrp_pipe" >&5
-$as_echo "$bash_cv_pgrp_pipe" >&6; }
-if test $bash_cv_pgrp_pipe = yes; then
-$as_echo "@%:@define PGRP_PIPE 1" >>confdefs.h
-
-fi
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for type of signal functions" >&5
-$as_echo_n "checking for type of signal functions... " >&6; }
-if ${bash_cv_signal_vintage+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <signal.h>
-int
-main ()
-{
-
-    sigset_t ss;
-    struct sigaction sa;
-    sigemptyset(&ss); sigsuspend(&ss);
-    sigaction(SIGINT, &sa, (struct sigaction *) 0);
-    sigprocmask(SIG_BLOCK, &ss, (sigset_t *) 0);
-  
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  bash_cv_signal_vintage=posix
-else
-  
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <signal.h>
-int
-main ()
-{
-
-       int mask = sigmask(SIGINT);
-       sigsetmask(mask); sigblock(mask); sigpause(mask);
-    
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  bash_cv_signal_vintage=4.2bsd
-else
-  
-      cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-       #include <signal.h>
-       RETSIGTYPE foo() { }
-int
-main ()
-{
-
-               int mask = sigmask(SIGINT);
-               sigset(SIGINT, foo); sigrelse(SIGINT);
-               sighold(SIGINT); sigpause(SIGINT);
-        
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  bash_cv_signal_vintage=svr3
-else
-  bash_cv_signal_vintage=v7
-    
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-  
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_signal_vintage" >&5
-$as_echo "$bash_cv_signal_vintage" >&6; }
-if test "$bash_cv_signal_vintage" = posix; then
-$as_echo "@%:@define HAVE_POSIX_SIGNALS 1" >>confdefs.h
-
-elif test "$bash_cv_signal_vintage" = "4.2bsd"; then
-$as_echo "@%:@define HAVE_BSD_SIGNALS 1" >>confdefs.h
-
-elif test "$bash_cv_signal_vintage" = svr3; then
-$as_echo "@%:@define HAVE_USG_SIGHOLD 1" >>confdefs.h
-
-fi
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for sys_errlist and sys_nerr" >&5
-$as_echo_n "checking for sys_errlist and sys_nerr... " >&6; }
-if ${bash_cv_sys_errlist+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <errno.h>
-int
-main ()
-{
-extern char *sys_errlist[];
- extern int sys_nerr;
- char *msg = sys_errlist[sys_nerr - 1];
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  bash_cv_sys_errlist=yes
-else
-  bash_cv_sys_errlist=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_sys_errlist" >&5
-$as_echo "$bash_cv_sys_errlist" >&6; }
-if test $bash_cv_sys_errlist = yes; then
-$as_echo "@%:@define HAVE_SYS_ERRLIST 1" >>confdefs.h
-
-fi
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for sys_siglist in system C library" >&5
-$as_echo_n "checking for sys_siglist in system C library... " >&6; }
-if ${bash_cv_sys_siglist+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test "$cross_compiling" = yes; then :
-  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cannot check for sys_siglist if cross compiling -- defaulting to no" >&5
-$as_echo "$as_me: WARNING: cannot check for sys_siglist if cross compiling -- defaulting to no" >&2;}
-        bash_cv_sys_siglist=no
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#include <sys/types.h>
-#include <signal.h>
-#ifdef HAVE_UNISTD_H
-#include <unistd.h>
-#endif
-#if !HAVE_DECL_SYS_SIGLIST
-extern char *sys_siglist[];
-#endif
-main()
-{
-char *msg = sys_siglist[2];
-exit(msg == 0);
-}
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-  bash_cv_sys_siglist=yes
-else
-  bash_cv_sys_siglist=no
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_sys_siglist" >&5
-$as_echo "$bash_cv_sys_siglist" >&6; }
-if test $bash_cv_sys_siglist = yes; then
-$as_echo "@%:@define HAVE_SYS_SIGLIST 1" >>confdefs.h
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for _sys_siglist in signal.h or unistd.h" >&5
-$as_echo_n "checking for _sys_siglist in signal.h or unistd.h... " >&6; }
-if ${bash_cv_decl_under_sys_siglist+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#include <sys/types.h>
-#include <signal.h>
-#ifdef HAVE_UNISTD_H
-#include <unistd.h>
-#endif
-int
-main ()
-{
- char *msg = _sys_siglist[2]; 
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  bash_cv_decl_under_sys_siglist=yes
-else
-  bash_cv_decl_under_sys_siglist=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_decl_under_sys_siglist" >&5
-$as_echo "$bash_cv_decl_under_sys_siglist" >&6; }
-if test $bash_cv_decl_under_sys_siglist = yes; then
-$as_echo "@%:@define UNDER_SYS_SIGLIST_DECLARED 1" >>confdefs.h
-
-fi
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for _sys_siglist in system C library" >&5
-$as_echo_n "checking for _sys_siglist in system C library... " >&6; }
-if ${bash_cv_under_sys_siglist+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test "$cross_compiling" = yes; then :
-  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cannot check for _sys_siglist if cross compiling -- defaulting to no" >&5
-$as_echo "$as_me: WARNING: cannot check for _sys_siglist if cross compiling -- defaulting to no" >&2;}
-        bash_cv_under_sys_siglist=no
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#include <sys/types.h>
-#include <signal.h>
-#ifdef HAVE_UNISTD_H
-#include <unistd.h>
-#endif
-#ifndef UNDER_SYS_SIGLIST_DECLARED
-extern char *_sys_siglist[];
-#endif
-main()
-{
-char *msg = (char *)_sys_siglist[2];
-exit(msg == 0);
-}
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-  bash_cv_under_sys_siglist=yes
-else
-  bash_cv_under_sys_siglist=no
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_under_sys_siglist" >&5
-$as_echo "$bash_cv_under_sys_siglist" >&6; }
-if test $bash_cv_under_sys_siglist = yes; then
-$as_echo "@%:@define HAVE_UNDER_SYS_SIGLIST 1" >>confdefs.h
-
-fi
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether signal handlers are of type void" >&5
-$as_echo_n "checking whether signal handlers are of type void... " >&6; }
-if ${bash_cv_void_sighandler+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <sys/types.h>
-#include <signal.h>
-#ifdef signal
-#undef signal
-#endif
-#ifdef __cplusplus
-extern "C"
-#endif
-void (*signal ()) ();
-int
-main ()
-{
-int i;
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  bash_cv_void_sighandler=yes
-else
-  bash_cv_void_sighandler=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_void_sighandler" >&5
-$as_echo "$bash_cv_void_sighandler" >&6; }
-if test $bash_cv_void_sighandler = yes; then
-$as_echo "@%:@define VOID_SIGHANDLER 1" >>confdefs.h
-
-fi
-
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for clock_t" >&5
-$as_echo_n "checking for clock_t... " >&6; }
-if ${bash_cv_type_clock_t+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <sys/types.h>
-#if STDC_HEADERS
-#include <stdlib.h>
-#include <stddef.h>
-#endif
-#if HAVE_INTTYPES_H
-#include <inttypes.h>
-#endif
-#if HAVE_STDINT_H
-#include <stdint.h>
-#endif
-#include <sys/times.h>
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "clock_t" >/dev/null 2>&1; then :
-  bash_cv_type_clock_t=yes
-else
-  bash_cv_type_clock_t=no
-fi
-rm -f conftest*
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_type_clock_t" >&5
-$as_echo "$bash_cv_type_clock_t" >&6; }
-
-if test $bash_cv_type_clock_t = no; then
-  cat >>confdefs.h <<_ACEOF
-@%:@define clock_t long
-_ACEOF
-
-fi
-
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for sigset_t" >&5
-$as_echo_n "checking for sigset_t... " >&6; }
-if ${bash_cv_type_sigset_t+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <sys/types.h>
-#if STDC_HEADERS
-#include <stdlib.h>
-#include <stddef.h>
-#endif
-#if HAVE_INTTYPES_H
-#include <inttypes.h>
-#endif
-#if HAVE_STDINT_H
-#include <stdint.h>
-#endif
-#include <signal.h>
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "sigset_t" >/dev/null 2>&1; then :
-  bash_cv_type_sigset_t=yes
-else
-  bash_cv_type_sigset_t=no
-fi
-rm -f conftest*
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_type_sigset_t" >&5
-$as_echo "$bash_cv_type_sigset_t" >&6; }
-
-if test $bash_cv_type_sigset_t = no; then
-  cat >>confdefs.h <<_ACEOF
-@%:@define sigset_t int
-_ACEOF
-
-fi
-
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for quad_t" >&5
-$as_echo_n "checking for quad_t... " >&6; }
-if ${bash_cv_type_quad_t+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <sys/types.h>
-#if STDC_HEADERS
-#include <stdlib.h>
-#include <stddef.h>
-#endif
-#if HAVE_INTTYPES_H
-#include <inttypes.h>
-#endif
-#if HAVE_STDINT_H
-#include <stdint.h>
-#endif
-
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "quad_t" >/dev/null 2>&1; then :
-  bash_cv_type_quad_t=yes
-else
-  bash_cv_type_quad_t=no
-fi
-rm -f conftest*
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_type_quad_t" >&5
-$as_echo "$bash_cv_type_quad_t" >&6; }
-if test $bash_cv_type_quad_t = yes; then
-       $as_echo "@%:@define HAVE_QUAD_T 1" >>confdefs.h
-
-       fi
-if test $bash_cv_type_quad_t = no; then
-  cat >>confdefs.h <<_ACEOF
-@%:@define quad_t long
-_ACEOF
-
-fi
-
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for intmax_t" >&5
-$as_echo_n "checking for intmax_t... " >&6; }
-if ${bash_cv_type_intmax_t+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <sys/types.h>
-#if STDC_HEADERS
-#include <stdlib.h>
-#include <stddef.h>
-#endif
-#if HAVE_INTTYPES_H
-#include <inttypes.h>
-#endif
-#if HAVE_STDINT_H
-#include <stdint.h>
-#endif
-
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "intmax_t" >/dev/null 2>&1; then :
-  bash_cv_type_intmax_t=yes
-else
-  bash_cv_type_intmax_t=no
-fi
-rm -f conftest*
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_type_intmax_t" >&5
-$as_echo "$bash_cv_type_intmax_t" >&6; }
-
-if test $bash_cv_type_intmax_t = no; then
-  cat >>confdefs.h <<_ACEOF
-@%:@define intmax_t $bash_cv_type_long_long
-_ACEOF
-
-fi
-
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for uintmax_t" >&5
-$as_echo_n "checking for uintmax_t... " >&6; }
-if ${bash_cv_type_uintmax_t+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <sys/types.h>
-#if STDC_HEADERS
-#include <stdlib.h>
-#include <stddef.h>
-#endif
-#if HAVE_INTTYPES_H
-#include <inttypes.h>
-#endif
-#if HAVE_STDINT_H
-#include <stdint.h>
-#endif
-
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "uintmax_t" >/dev/null 2>&1; then :
-  bash_cv_type_uintmax_t=yes
-else
-  bash_cv_type_uintmax_t=no
-fi
-rm -f conftest*
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_type_uintmax_t" >&5
-$as_echo "$bash_cv_type_uintmax_t" >&6; }
-
-if test $bash_cv_type_uintmax_t = no; then
-  cat >>confdefs.h <<_ACEOF
-@%:@define uintmax_t $bash_cv_type_unsigned_long_long
-_ACEOF
-
-fi
-
-if test "$ac_cv_header_sys_socket_h" = "yes"; then
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for socklen_t" >&5
-$as_echo_n "checking for socklen_t... " >&6; }
-if ${bash_cv_type_socklen_t+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <sys/types.h>
-#if STDC_HEADERS
-#include <stdlib.h>
-#include <stddef.h>
-#endif
-#if HAVE_INTTYPES_H
-#include <inttypes.h>
-#endif
-#if HAVE_STDINT_H
-#include <stdint.h>
-#endif
-#include <sys/socket.h>
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "socklen_t" >/dev/null 2>&1; then :
-  bash_cv_type_socklen_t=yes
-else
-  bash_cv_type_socklen_t=no
-fi
-rm -f conftest*
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_type_socklen_t" >&5
-$as_echo "$bash_cv_type_socklen_t" >&6; }
-if test $bash_cv_type_socklen_t = yes; then
-       $as_echo "@%:@define HAVE_SOCKLEN_T 1" >>confdefs.h
-
-       fi
-if test $bash_cv_type_socklen_t = no; then
-  cat >>confdefs.h <<_ACEOF
-@%:@define socklen_t int
-_ACEOF
-
-fi
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for size and type of struct rlimit fields" >&5
-$as_echo_n "checking for size and type of struct rlimit fields... " >&6; }
-if ${bash_cv_type_rlimit+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <sys/types.h>
-#include <sys/resource.h>
-int
-main ()
-{
-rlim_t xxx;
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  bash_cv_type_rlimit=rlim_t
-else
-  
-if test "$cross_compiling" = yes; then :
-  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cannot check quad_t if cross compiling -- defaulting to long" >&5
-$as_echo "$as_me: WARNING: cannot check quad_t if cross compiling -- defaulting to long" >&2;}
-         bash_cv_type_rlimit=long
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#include <sys/types.h>
-#include <sys/time.h>
-#include <sys/resource.h>
-main()
-{
-#ifdef HAVE_QUAD_T
-  struct rlimit rl;
-  if (sizeof(rl.rlim_cur) == sizeof(quad_t))
-    exit(0);
-#endif
-  exit(1);
-}
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-  bash_cv_type_rlimit=quad_t
-else
-  bash_cv_type_rlimit=long
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_type_rlimit" >&5
-$as_echo "$bash_cv_type_rlimit" >&6; }
-if test $bash_cv_type_rlimit = quad_t; then
-$as_echo "@%:@define RLIMTYPE quad_t" >>confdefs.h
-
-elif test $bash_cv_type_rlimit = rlim_t; then
-$as_echo "@%:@define RLIMTYPE rlim_t" >>confdefs.h
-
-fi
-
-
-# The cast to long int works around a bug in the HP C Compiler
-# version HP92453-01 B.11.11.23709.GP, which incorrectly rejects
-# declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'.
-# This bug is HP SR number 8606223364.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking size of intmax_t" >&5
-$as_echo_n "checking size of intmax_t... " >&6; }
-if ${ac_cv_sizeof_intmax_t+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (intmax_t))" "ac_cv_sizeof_intmax_t"        "$ac_includes_default"; then :
-  
-else
-  if test "$ac_cv_type_intmax_t" = yes; then
-     { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error 77 "cannot compute sizeof (intmax_t)
-See \`config.log' for more details" "$LINENO" 5; }
-   else
-     ac_cv_sizeof_intmax_t=0
-   fi
-fi
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_intmax_t" >&5
-$as_echo "$ac_cv_sizeof_intmax_t" >&6; }
-
-
-
-cat >>confdefs.h <<_ACEOF
-@%:@define SIZEOF_INTMAX_T $ac_cv_sizeof_intmax_t
-_ACEOF
-
-
-
-
-ac_fn_c_check_member "$LINENO" "struct termios" "c_line" "ac_cv_member_struct_termios_c_line" "
-#include <sys/types.h>
-#include <termios.h>
-
-"
-if test "x$ac_cv_member_struct_termios_c_line" = xyes; then :
-  $as_echo "@%:@define TERMIOS_LDISC 1" >>confdefs.h
-
-fi
-
-
-
-ac_fn_c_check_member "$LINENO" "struct termio" "c_line" "ac_cv_member_struct_termio_c_line" "
-#include <sys/types.h>
-#include <termio.h>
-
-"
-if test "x$ac_cv_member_struct_termio_c_line" = xyes; then :
-  $as_echo "@%:@define TERMIO_LDISC 1" >>confdefs.h
-
-fi
-
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for struct dirent.d_ino" >&5
-$as_echo_n "checking for struct dirent.d_ino... " >&6; }
-if ${bash_cv_dirent_has_dino+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#include <stdio.h>
-#include <sys/types.h>
-#ifdef HAVE_UNISTD_H
-# include <unistd.h>
-#endif /* HAVE_UNISTD_H */
-#if defined(HAVE_DIRENT_H)
-# include <dirent.h>
-#else
-# define dirent direct
-# ifdef HAVE_SYS_NDIR_H
-#  include <sys/ndir.h>
-# endif /* SYSNDIR */
-# ifdef HAVE_SYS_DIR_H
-#  include <sys/dir.h>
-# endif /* SYSDIR */
-# ifdef HAVE_NDIR_H
-#  include <ndir.h>
-# endif
-#endif /* HAVE_DIRENT_H */
-
-int
-main ()
-{
-
-struct dirent d; int z; z = d.d_ino;
-
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  bash_cv_dirent_has_dino=yes
-else
-  bash_cv_dirent_has_dino=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_dirent_has_dino" >&5
-$as_echo "$bash_cv_dirent_has_dino" >&6; }
-if test $bash_cv_dirent_has_dino = yes; then
-$as_echo "@%:@define HAVE_STRUCT_DIRENT_D_INO 1" >>confdefs.h
-
-fi
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for struct dirent.d_fileno" >&5
-$as_echo_n "checking for struct dirent.d_fileno... " >&6; }
-if ${bash_cv_dirent_has_d_fileno+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#include <stdio.h>
-#include <sys/types.h>
-#ifdef HAVE_UNISTD_H
-# include <unistd.h>
-#endif /* HAVE_UNISTD_H */
-#if defined(HAVE_DIRENT_H)
-# include <dirent.h>
-#else
-# define dirent direct
-# ifdef HAVE_SYS_NDIR_H
-#  include <sys/ndir.h>
-# endif /* SYSNDIR */
-# ifdef HAVE_SYS_DIR_H
-#  include <sys/dir.h>
-# endif /* SYSDIR */
-# ifdef HAVE_NDIR_H
-#  include <ndir.h>
-# endif
-#endif /* HAVE_DIRENT_H */
-
-int
-main ()
-{
-
-struct dirent d; int z; z = d.d_fileno;
-
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  bash_cv_dirent_has_d_fileno=yes
-else
-  bash_cv_dirent_has_d_fileno=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_dirent_has_d_fileno" >&5
-$as_echo "$bash_cv_dirent_has_d_fileno" >&6; }
-if test $bash_cv_dirent_has_d_fileno = yes; then
-$as_echo "@%:@define HAVE_STRUCT_DIRENT_D_FILENO 1" >>confdefs.h
-
-fi
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for struct dirent.d_namlen" >&5
-$as_echo_n "checking for struct dirent.d_namlen... " >&6; }
-if ${bash_cv_dirent_has_d_namlen+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#include <stdio.h>
-#include <sys/types.h>
-#ifdef HAVE_UNISTD_H
-# include <unistd.h>
-#endif /* HAVE_UNISTD_H */
-#if defined(HAVE_DIRENT_H)
-# include <dirent.h>
-#else
-# define dirent direct
-# ifdef HAVE_SYS_NDIR_H
-#  include <sys/ndir.h>
-# endif /* SYSNDIR */
-# ifdef HAVE_SYS_DIR_H
-#  include <sys/dir.h>
-# endif /* SYSDIR */
-# ifdef HAVE_NDIR_H
-#  include <ndir.h>
-# endif
-#endif /* HAVE_DIRENT_H */
-
-int
-main ()
-{
-
-struct dirent d; int z; z = d.d_namlen;
-
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  bash_cv_dirent_has_d_namlen=yes
-else
-  bash_cv_dirent_has_d_namlen=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_dirent_has_d_namlen" >&5
-$as_echo "$bash_cv_dirent_has_d_namlen" >&6; }
-if test $bash_cv_dirent_has_d_namlen = yes; then
-$as_echo "@%:@define HAVE_STRUCT_DIRENT_D_NAMLEN 1" >>confdefs.h
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for struct winsize in sys/ioctl.h and termios.h" >&5
-$as_echo_n "checking for struct winsize in sys/ioctl.h and termios.h... " >&6; }
-if ${bash_cv_struct_winsize_header+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <sys/types.h>
-#include <sys/ioctl.h>
-int
-main ()
-{
-struct winsize x;
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  bash_cv_struct_winsize_header=ioctl_h
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <sys/types.h>
-#include <termios.h>
-int
-main ()
-{
-struct winsize x;
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  bash_cv_struct_winsize_header=termios_h
-else
-  bash_cv_struct_winsize_header=other
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-
-if test $bash_cv_struct_winsize_header = ioctl_h; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: sys/ioctl.h" >&5
-$as_echo "sys/ioctl.h" >&6; }
-  $as_echo "@%:@define STRUCT_WINSIZE_IN_SYS_IOCTL 1" >>confdefs.h
-
-elif test $bash_cv_struct_winsize_header = termios_h; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: termios.h" >&5
-$as_echo "termios.h" >&6; }
-  $as_echo "@%:@define STRUCT_WINSIZE_IN_TERMIOS 1" >>confdefs.h
-
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: not found" >&5
-$as_echo "not found" >&6; }
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for struct timeval in sys/time.h and time.h" >&5
-$as_echo_n "checking for struct timeval in sys/time.h and time.h... " >&6; }
-if ${bash_cv_struct_timeval+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <sys/time.h>
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "struct timeval" >/dev/null 2>&1; then :
-  bash_cv_struct_timeval=yes
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <time.h>
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "struct timeval" >/dev/null 2>&1; then :
-  bash_cv_struct_timeval=yes
-else
-  bash_cv_struct_timeval=no
-fi
-rm -f conftest*
-
-fi
-rm -f conftest*
-
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_struct_timeval" >&5
-$as_echo "$bash_cv_struct_timeval" >&6; }
-if test $bash_cv_struct_timeval = yes; then
-  $as_echo "@%:@define HAVE_TIMEVAL 1" >>confdefs.h
-
-fi
-
-ac_fn_c_check_member "$LINENO" "struct stat" "st_blocks" "ac_cv_member_struct_stat_st_blocks" "$ac_includes_default"
-if test "x$ac_cv_member_struct_stat_st_blocks" = xyes; then :
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define HAVE_STRUCT_STAT_ST_BLOCKS 1
-_ACEOF
-
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether struct tm is in sys/time.h or time.h" >&5
-$as_echo_n "checking whether struct tm is in sys/time.h or time.h... " >&6; }
-if ${ac_cv_struct_tm+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <sys/types.h>
-#include <time.h>
-
-int
-main ()
-{
-struct tm tm;
-                                    int *p = &tm.tm_sec;
-                                    return !p;
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_cv_struct_tm=time.h
-else
-  ac_cv_struct_tm=sys/time.h
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_struct_tm" >&5
-$as_echo "$ac_cv_struct_tm" >&6; }
-if test $ac_cv_struct_tm = sys/time.h; then
-  
-$as_echo "@%:@define TM_IN_SYS_TIME 1" >>confdefs.h
-
-fi
-
-ac_fn_c_check_member "$LINENO" "struct tm" "tm_zone" "ac_cv_member_struct_tm_tm_zone" "#include <sys/types.h>
-#include <$ac_cv_struct_tm>
-
-"
-if test "x$ac_cv_member_struct_tm_tm_zone" = xyes; then :
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define HAVE_STRUCT_TM_TM_ZONE 1
-_ACEOF
-
-
-fi
-
-if test "$ac_cv_member_struct_tm_tm_zone" = yes; then
-  
-$as_echo "@%:@define HAVE_TM_ZONE 1" >>confdefs.h
-
-else
-  ac_fn_c_check_decl "$LINENO" "tzname" "ac_cv_have_decl_tzname" "#include <time.h>
-"
-if test "x$ac_cv_have_decl_tzname" = xyes; then :
-  ac_have_decl=1
-else
-  ac_have_decl=0
-fi
-
-cat >>confdefs.h <<_ACEOF
-@%:@define HAVE_DECL_TZNAME $ac_have_decl
-_ACEOF
-
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for tzname" >&5
-$as_echo_n "checking for tzname... " >&6; }
-if ${ac_cv_var_tzname+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <time.h>
-#if !HAVE_DECL_TZNAME
-extern char *tzname[];
-#endif
-
-int
-main ()
-{
-return tzname[0][0];
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  ac_cv_var_tzname=yes
-else
-  ac_cv_var_tzname=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_var_tzname" >&5
-$as_echo "$ac_cv_var_tzname" >&6; }
-  if test $ac_cv_var_tzname = yes; then
-    
-$as_echo "@%:@define HAVE_TZNAME 1" >>confdefs.h
-
-  fi
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for struct timezone in sys/time.h and time.h" >&5
-$as_echo_n "checking for struct timezone in sys/time.h and time.h... " >&6; }
-if ${bash_cv_struct_timezone+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <sys/time.h>
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "struct timezone" >/dev/null 2>&1; then :
-  bash_cv_struct_timezone=yes
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <time.h>
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "struct timezone" >/dev/null 2>&1; then :
-  bash_cv_struct_timezone=yes
-else
-  bash_cv_struct_timezone=no
-fi
-rm -f conftest*
-
-fi
-rm -f conftest*
-
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_struct_timezone" >&5
-$as_echo "$bash_cv_struct_timezone" >&6; }
-if test $bash_cv_struct_timezone = yes; then
-  $as_echo "@%:@define HAVE_STRUCT_TIMEZONE 1" >>confdefs.h
-
-fi
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for offset of exit status in return status from wait" >&5
-$as_echo_n "checking for offset of exit status in return status from wait... " >&6; }
-if ${bash_cv_wexitstatus_offset+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test "$cross_compiling" = yes; then :
-  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cannot check WEXITSTATUS offset if cross compiling -- defaulting to 0" >&5
-$as_echo "$as_me: WARNING: cannot check WEXITSTATUS offset if cross compiling -- defaulting to 0" >&2;}
-    bash_cv_wexitstatus_offset=0
-
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#include <stdlib.h>
-#include <unistd.h>
-
-#include <sys/wait.h>
-
-main(c, v)
-     int c;
-     char **v;
-{
-  pid_t pid, p;
-  int s, i, n;
-
-  s = 0;
-  pid = fork();
-  if (pid == 0)
-    exit (42);
-
-  /* wait for the process */
-  p = wait(&s);
-  if (p != pid)
-    exit (255);
-
-  /* crack s */
-  for (i = 0; i < (sizeof(s) - 8); i++)
-    {
-      n = (s >> i) & 0xff;
-      if (n == 42)
-       exit (i);
-    }
-
-  exit (254);
-}
-
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-  bash_cv_wexitstatus_offset=0
-else
-  bash_cv_wexitstatus_offset=$?
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-fi
-
-if test "$bash_cv_wexitstatus_offset" -gt 32 ; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: bad exit status from test program -- defaulting to 0" >&5
-$as_echo "$as_me: WARNING: bad exit status from test program -- defaulting to 0" >&2;}
-  bash_cv_wexitstatus_offset=0
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_wexitstatus_offset" >&5
-$as_echo "$bash_cv_wexitstatus_offset" >&6; }
-
-cat >>confdefs.h <<_ACEOF
-@%:@define WEXITSTATUS_OFFSET $bash_cv_wexitstatus_offset
-_ACEOF
-
-
-
-
-  
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for struct timespec in <time.h>" >&5
-$as_echo_n "checking for struct timespec in <time.h>... " >&6; }
-if ${bash_cv_sys_struct_timespec_in_time_h+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <time.h>
-          
-int
-main ()
-{
-static struct timespec x; x.tv_sec = x.tv_nsec;
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  bash_cv_sys_struct_timespec_in_time_h=yes
-else
-  bash_cv_sys_struct_timespec_in_time_h=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_sys_struct_timespec_in_time_h" >&5
-$as_echo "$bash_cv_sys_struct_timespec_in_time_h" >&6; }
-
-  HAVE_STRUCT_TIMESPEC=0
-  TIME_H_DEFINES_STRUCT_TIMESPEC=0
-  SYS_TIME_H_DEFINES_STRUCT_TIMESPEC=0
-  PTHREAD_H_DEFINES_STRUCT_TIMESPEC=0
-  if test $bash_cv_sys_struct_timespec_in_time_h = yes; then
-    $as_echo "@%:@define HAVE_STRUCT_TIMESPEC 1" >>confdefs.h
-
-    $as_echo "@%:@define TIME_H_DEFINES_STRUCT_TIMESPEC 1" >>confdefs.h
-
-    TIME_H_DEFINES_STRUCT_TIMESPEC=1
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for struct timespec in <sys/time.h>" >&5
-$as_echo_n "checking for struct timespec in <sys/time.h>... " >&6; }
-if ${bash_cv_sys_struct_timespec_in_sys_time_h+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <sys/time.h>
-            
-int
-main ()
-{
-static struct timespec x; x.tv_sec = x.tv_nsec;
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  bash_cv_sys_struct_timespec_in_sys_time_h=yes
-else
-  bash_cv_sys_struct_timespec_in_sys_time_h=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_sys_struct_timespec_in_sys_time_h" >&5
-$as_echo "$bash_cv_sys_struct_timespec_in_sys_time_h" >&6; }
-    if test $bash_cv_sys_struct_timespec_in_sys_time_h = yes; then
-      SYS_TIME_H_DEFINES_STRUCT_TIMESPEC=1
-      $as_echo "@%:@define HAVE_STRUCT_TIMESPEC 1" >>confdefs.h
-
-      $as_echo "@%:@define SYS_TIME_H_DEFINES_STRUCT_TIMESPEC 1" >>confdefs.h
-
-    else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: checking for struct timespec in <pthread.h>" >&5
-$as_echo_n "checking for struct timespec in <pthread.h>... " >&6; }
-if ${bash_cv_sys_struct_timespec_in_pthread_h+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <pthread.h>
-              
-int
-main ()
-{
-static struct timespec x; x.tv_sec = x.tv_nsec;
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  bash_cv_sys_struct_timespec_in_pthread_h=yes
-else
-  bash_cv_sys_struct_timespec_in_pthread_h=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_sys_struct_timespec_in_pthread_h" >&5
-$as_echo "$bash_cv_sys_struct_timespec_in_pthread_h" >&6; }
-      if test $bash_cv_sys_struct_timespec_in_pthread_h = yes; then
-        PTHREAD_H_DEFINES_STRUCT_TIMESPEC=1
-       $as_echo "@%:@define HAVE_STRUCT_TIMESPEC 1" >>confdefs.h
-
-       $as_echo "@%:@define PTHREAD_H_DEFINES_STRUCT_TIMESPEC 1" >>confdefs.h
-
-      fi
-    fi
-  fi
-  
-  
-  
-
-
-
-  
-  
-
-  ac_fn_c_check_member "$LINENO" "struct stat" "st_atim.tv_nsec" "ac_cv_member_struct_stat_st_atim_tv_nsec" "#include <sys/types.h>
-     #include <sys/stat.h>
-"
-if test "x$ac_cv_member_struct_stat_st_atim_tv_nsec" = xyes; then :
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define HAVE_STRUCT_STAT_ST_ATIM_TV_NSEC 1
-_ACEOF
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether struct stat.st_atim is of type struct timespec" >&5
-$as_echo_n "checking whether struct stat.st_atim is of type struct timespec... " >&6; }
-if ${ac_cv_typeof_struct_stat_st_atim_is_struct_timespec+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-            #include <sys/types.h>
-            #include <sys/stat.h>
-            #if HAVE_SYS_TIME_H
-            # include <sys/time.h>
-            #endif
-            #include <time.h>
-            struct timespec ts;
-            struct stat st;
-          
-int
-main ()
-{
-
-            st.st_atim = ts;
-          
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_cv_typeof_struct_stat_st_atim_is_struct_timespec=yes
-else
-  ac_cv_typeof_struct_stat_st_atim_is_struct_timespec=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_typeof_struct_stat_st_atim_is_struct_timespec" >&5
-$as_echo "$ac_cv_typeof_struct_stat_st_atim_is_struct_timespec" >&6; }
-     if test $ac_cv_typeof_struct_stat_st_atim_is_struct_timespec = yes; then
-       
-$as_echo "@%:@define TYPEOF_STRUCT_STAT_ST_ATIM_IS_STRUCT_TIMESPEC 1" >>confdefs.h
-
-     fi
-else
-  ac_fn_c_check_member "$LINENO" "struct stat" "st_atimespec.tv_nsec" "ac_cv_member_struct_stat_st_atimespec_tv_nsec" "#include <sys/types.h>
-        #include <sys/stat.h>
-"
-if test "x$ac_cv_member_struct_stat_st_atimespec_tv_nsec" = xyes; then :
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define HAVE_STRUCT_STAT_ST_ATIMESPEC_TV_NSEC 1
-_ACEOF
-
-
-else
-  ac_fn_c_check_member "$LINENO" "struct stat" "st_atimensec" "ac_cv_member_struct_stat_st_atimensec" "#include <sys/types.h>
-           #include <sys/stat.h>
-"
-if test "x$ac_cv_member_struct_stat_st_atimensec" = xyes; then :
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define HAVE_STRUCT_STAT_ST_ATIMENSEC 1
-_ACEOF
-
-
-else
-  ac_fn_c_check_member "$LINENO" "struct stat" "st_atim.st__tim.tv_nsec" "ac_cv_member_struct_stat_st_atim_st__tim_tv_nsec" "#include <sys/types.h>
-              #include <sys/stat.h>
-"
-if test "x$ac_cv_member_struct_stat_st_atim_st__tim_tv_nsec" = xyes; then :
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define HAVE_STRUCT_STAT_ST_ATIM_ST__TIM_TV_NSEC 1
-_ACEOF
-
-
-fi
-
-fi
-
-fi
-
-fi
-
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for the existence of strsignal" >&5
-$as_echo_n "checking for the existence of strsignal... " >&6; }
-if ${bash_cv_have_strsignal+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <sys/types.h>
-#include <signal.h>
-int
-main ()
-{
-char *s = (char *)strsignal(2);
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  bash_cv_have_strsignal=yes
-else
-  bash_cv_have_strsignal=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_have_strsignal" >&5
-$as_echo "$bash_cv_have_strsignal" >&6; }
-if test $bash_cv_have_strsignal = yes; then
-$as_echo "@%:@define HAVE_STRSIGNAL 1" >>confdefs.h
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if opendir() opens non-directories" >&5
-$as_echo_n "checking if opendir() opens non-directories... " >&6; }
-if ${bash_cv_opendir_not_robust+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test "$cross_compiling" = yes; then :
-  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cannot check opendir if cross compiling -- defaulting to no" >&5
-$as_echo "$as_me: WARNING: cannot check opendir if cross compiling -- defaulting to no" >&2;}
-     bash_cv_opendir_not_robust=no
-
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#include <stdio.h>
-#include <sys/types.h>
-#include <fcntl.h>
-#ifdef HAVE_UNISTD_H
-# include <unistd.h>
-#endif /* HAVE_UNISTD_H */
-#if defined(HAVE_DIRENT_H)
-# include <dirent.h>
-#else
-# define dirent direct
-# ifdef HAVE_SYS_NDIR_H
-#  include <sys/ndir.h>
-# endif /* SYSNDIR */
-# ifdef HAVE_SYS_DIR_H
-#  include <sys/dir.h>
-# endif /* SYSDIR */
-# ifdef HAVE_NDIR_H
-#  include <ndir.h>
-# endif
-#endif /* HAVE_DIRENT_H */
-main()
-{
-DIR *dir;
-int fd, err;
-err = mkdir("bash-aclocal", 0700);
-if (err < 0) {
-  perror("mkdir");
-  exit(1);
-}
-unlink("bash-aclocal/not_a_directory");
-fd = open("bash-aclocal/not_a_directory", O_WRONLY|O_CREAT|O_EXCL, 0666);
-write(fd, "\n", 1);
-close(fd);
-dir = opendir("bash-aclocal/not_a_directory");
-unlink("bash-aclocal/not_a_directory");
-rmdir("bash-aclocal");
-exit (dir == 0);
-}
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-  bash_cv_opendir_not_robust=yes
-else
-  bash_cv_opendir_not_robust=no
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_opendir_not_robust" >&5
-$as_echo "$bash_cv_opendir_not_robust" >&6; }
-if test $bash_cv_opendir_not_robust = yes; then
-$as_echo "@%:@define OPENDIR_NOT_ROBUST 1" >>confdefs.h
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ulimit can substitute for getdtablesize" >&5
-$as_echo_n "checking whether ulimit can substitute for getdtablesize... " >&6; }
-if ${bash_cv_ulimit_maxfds+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test "$cross_compiling" = yes; then :
-  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cannot check ulimit if cross compiling -- defaulting to no" >&5
-$as_echo "$as_me: WARNING: cannot check ulimit if cross compiling -- defaulting to no" >&2;}
-    bash_cv_ulimit_maxfds=no
-
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-main()
-{
-long maxfds = ulimit(4, 0L);
-exit (maxfds == -1L);
-}
-
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-  bash_cv_ulimit_maxfds=yes
-else
-  bash_cv_ulimit_maxfds=no
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_ulimit_maxfds" >&5
-$as_echo "$bash_cv_ulimit_maxfds" >&6; }
-if test $bash_cv_ulimit_maxfds = yes; then
-$as_echo "@%:@define ULIMIT_MAXFDS 1" >>confdefs.h
-
-fi
-
-
-
-
-
-
-  
-  
-  ac_fn_c_check_decl "$LINENO" "fpurge" "ac_cv_have_decl_fpurge" "#include <stdio.h>
-"
-if test "x$ac_cv_have_decl_fpurge" = xyes; then :
-  ac_have_decl=1
-else
-  ac_have_decl=0
-fi
-
-cat >>confdefs.h <<_ACEOF
-@%:@define HAVE_DECL_FPURGE $ac_have_decl
-_ACEOF
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking to see if getenv can be redefined" >&5
-$as_echo_n "checking to see if getenv can be redefined... " >&6; }
-if ${bash_cv_getenv_redef+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test "$cross_compiling" = yes; then :
-  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cannot check getenv redefinition if cross compiling -- defaulting to yes" >&5
-$as_echo "$as_me: WARNING: cannot check getenv redefinition if cross compiling -- defaulting to yes" >&2;}
-    bash_cv_getenv_redef=yes
-
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#ifdef HAVE_UNISTD_H
-#  include <unistd.h>
-#endif
-#ifndef __STDC__
-#  ifndef const
-#    define const
-#  endif
-#endif
-char *
-getenv (name)
-#if defined (__linux__) || defined (__bsdi__) || defined (convex)
-     const char *name;
-#else
-     char const *name;
-#endif /* !__linux__ && !__bsdi__ && !convex */
-{
-return "42";
-}
-main()
-{
-char *s;
-/* The next allows this program to run, but does not allow bash to link
-   when it redefines getenv.  I'm not really interested in figuring out
-   why not. */
-#if defined (NeXT)
-exit(1);
-#endif
-s = getenv("ABCDE");
-exit(s == 0);  /* force optimizer to leave getenv in */
-}
-
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-  bash_cv_getenv_redef=yes
-else
-  bash_cv_getenv_redef=no
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_getenv_redef" >&5
-$as_echo "$bash_cv_getenv_redef" >&6; }
-if test $bash_cv_getenv_redef = yes; then
-$as_echo "@%:@define CAN_REDEFINE_GETENV 1" >>confdefs.h
-
-fi
-
-if test "$ac_cv_func_getcwd" = "yes"; then
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if getcwd() will dynamically allocate memory with 0 size" >&5
-$as_echo_n "checking if getcwd() will dynamically allocate memory with 0 size... " >&6; }
-if ${bash_cv_getcwd_malloc+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test "$cross_compiling" = yes; then :
-  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cannot check whether getcwd allocates memory when cross-compiling -- defaulting to no" >&5
-$as_echo "$as_me: WARNING: cannot check whether getcwd allocates memory when cross-compiling -- defaulting to no" >&2;}
-    bash_cv_getcwd_malloc=no
-
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#include <stdio.h>
-#ifdef HAVE_UNISTD_H
-#include <unistd.h>
-#endif
-
-main()
-{
-       char    *xpwd;
-       xpwd = getcwd(0, 0);
-       exit (xpwd == 0);
-}
-
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-  bash_cv_getcwd_malloc=yes
-else
-  bash_cv_getcwd_malloc=no
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_getcwd_malloc" >&5
-$as_echo "$bash_cv_getcwd_malloc" >&6; }
-if test $bash_cv_getcwd_malloc = no; then
-$as_echo "@%:@define GETCWD_BROKEN 1" >>confdefs.h
-
-case " $LIB@&t@OBJS " in
-  *" getcwd.$ac_objext "* ) ;;
-  *) LIB@&t@OBJS="$LIB@&t@OBJS getcwd.$ac_objext"
- ;;
-esac
-
-fi
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for presence of POSIX-style sigsetjmp/siglongjmp" >&5
-$as_echo_n "checking for presence of POSIX-style sigsetjmp/siglongjmp... " >&6; }
-if ${bash_cv_func_sigsetjmp+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test "$cross_compiling" = yes; then :
-  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cannot check for sigsetjmp/siglongjmp if cross-compiling -- defaulting to missing" >&5
-$as_echo "$as_me: WARNING: cannot check for sigsetjmp/siglongjmp if cross-compiling -- defaulting to missing" >&2;}
-     bash_cv_func_sigsetjmp=missing
-
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#ifdef HAVE_UNISTD_H
-#include <unistd.h>
-#endif
-#include <sys/types.h>
-#include <signal.h>
-#include <setjmp.h>
-
-main()
-{
-#if !defined (_POSIX_VERSION) || !defined (HAVE_POSIX_SIGNALS)
-exit (1);
-#else
-
-int code;
-sigset_t set, oset;
-sigjmp_buf xx;
-
-/* get the mask */
-sigemptyset(&set);
-sigemptyset(&oset);
-sigprocmask(SIG_BLOCK, (sigset_t *)NULL, &set);
-sigprocmask(SIG_BLOCK, (sigset_t *)NULL, &oset);
-
-/* save it */
-code = sigsetjmp(xx, 1);
-if (code)
-  exit(0);     /* could get sigmask and compare to oset here. */
-
-/* change it */
-sigaddset(&set, SIGINT);
-sigprocmask(SIG_BLOCK, &set, (sigset_t *)NULL);
-
-/* and siglongjmp */
-siglongjmp(xx, 10);
-exit(1);
-#endif
-}
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-  bash_cv_func_sigsetjmp=present
-else
-  bash_cv_func_sigsetjmp=missing
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_func_sigsetjmp" >&5
-$as_echo "$bash_cv_func_sigsetjmp" >&6; }
-if test $bash_cv_func_sigsetjmp = present; then
-$as_echo "@%:@define HAVE_POSIX_SIGSETJMP 1" >>confdefs.h
-
-fi
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether or not strcoll and strcmp differ" >&5
-$as_echo_n "checking whether or not strcoll and strcmp differ... " >&6; }
-if ${bash_cv_func_strcoll_broken+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test "$cross_compiling" = yes; then :
-  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cannot check strcoll if cross compiling -- defaulting to no" >&5
-$as_echo "$as_me: WARNING: cannot check strcoll if cross compiling -- defaulting to no" >&2;}
-    bash_cv_func_strcoll_broken=no
-
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#include <stdio.h>
-#if defined (HAVE_LOCALE_H)
-#include <locale.h>
-#endif
-
-main(c, v)
-int     c;
-char    *v[];
-{
-        int     r1, r2;
-        char    *deflocale, *defcoll;
-
-#ifdef HAVE_SETLOCALE
-        deflocale = setlocale(LC_ALL, "");
-       defcoll = setlocale(LC_COLLATE, "");
-#endif
-
-#ifdef HAVE_STRCOLL
-       /* These two values are taken from tests/glob-test. */
-        r1 = strcoll("abd", "aXd");
-#else
-       r1 = 0;
-#endif
-        r2 = strcmp("abd", "aXd");
-
-       /* These two should both be greater than 0.  It is permissible for
-          a system to return different values, as long as the sign is the
-          same. */
-
-        /* Exit with 1 (failure) if these two values are both > 0, since
-          this tests whether strcoll(3) is broken with respect to strcmp(3)
-          in the default locale. */
-       exit (r1 > 0 && r2 > 0);
-}
-
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-  bash_cv_func_strcoll_broken=yes
-else
-  bash_cv_func_strcoll_broken=no
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_func_strcoll_broken" >&5
-$as_echo "$bash_cv_func_strcoll_broken" >&6; }
-if test $bash_cv_func_strcoll_broken = yes; then
-$as_echo "@%:@define STRCOLL_BROKEN 1" >>confdefs.h
-
-fi
-
-
-
-
-  
-  if test X$ac_cv_func_snprintf = Xyes; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for standard-conformant snprintf" >&5
-$as_echo_n "checking for standard-conformant snprintf... " >&6; }
-if ${bash_cv_func_snprintf+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test "$cross_compiling" = yes; then :
-  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cannot check standard snprintf if cross-compiling" >&5
-$as_echo "$as_me: WARNING: cannot check standard snprintf if cross-compiling" >&2;}
-    bash_cv_func_snprintf=yes
-
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#include <stdio.h>
-
-main()
-{
-  int n;
-  n = snprintf (0, 0, "%s", "0123456");
-  exit(n != 7);
-}
-
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-  bash_cv_func_snprintf=yes
-else
-  bash_cv_func_snprintf=no
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_func_snprintf" >&5
-$as_echo "$bash_cv_func_snprintf" >&6; }
-    if test $bash_cv_func_snprintf = no; then
-      ac_cv_func_snprintf=no
-    fi
-  fi
-  if test $ac_cv_func_snprintf = no; then
-    
-$as_echo "@%:@define HAVE_SNPRINTF 0" >>confdefs.h
-
-  fi
-
-
-
-
-  
-  if test X$ac_cv_func_vsnprintf = Xyes; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for standard-conformant vsnprintf" >&5
-$as_echo_n "checking for standard-conformant vsnprintf... " >&6; }
-if ${bash_cv_func_vsnprintf+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test "$cross_compiling" = yes; then :
-  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cannot check standard vsnprintf if cross-compiling" >&5
-$as_echo "$as_me: WARNING: cannot check standard vsnprintf if cross-compiling" >&2;}
-    bash_cv_func_vsnprintf=yes
-
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#if HAVE_STDARG_H
-#include <stdarg.h>
-#else
-#include <varargs.h>
-#endif
-#include <stdio.h>
-#include <stdlib.h>
-
-static int
-#if HAVE_STDARG_H
-foo(const char *fmt, ...)
-#else
-foo(format, va_alist)
-     const char *format;
-     va_dcl
-#endif
-{
-  va_list args;
-  int n;
-
-#if HAVE_STDARG_H
-  va_start(args, fmt);
-#else
-  va_start(args);
-#endif
-  n = vsnprintf(0, 0, fmt, args);
-  va_end (args);
-  return n;
-}
-
-main()
-{
-  int n;
-  n = foo("%s", "0123456");
-  exit(n != 7);
-}
-
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-  bash_cv_func_vsnprintf=yes
-else
-  bash_cv_func_vsnprintf=no
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_func_vsnprintf" >&5
-$as_echo "$bash_cv_func_vsnprintf" >&6; }
-    if test $bash_cv_func_vsnprintf = no; then
-      ac_cv_func_vsnprintf=no
-    fi
-  fi
-  if test $ac_cv_func_vsnprintf = no; then
-    
-$as_echo "@%:@define HAVE_VSNPRINTF 0" >>confdefs.h
-
-  fi
-
-
-
-if test "$ac_cv_func_putenv" = "yes"; then
-
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for standard-conformant putenv declaration" >&5
-$as_echo_n "checking for standard-conformant putenv declaration... " >&6; }
-if ${bash_cv_std_putenv+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#if STDC_HEADERS
-#include <stdlib.h>
-#include <stddef.h>
-#endif
-#ifndef __STDC__
-#  ifndef const
-#    define const
-#  endif
-#endif
-#ifdef PROTOTYPES
-extern int putenv (char *);
-#else
-extern int putenv ();
-#endif
-
-int
-main ()
-{
-return (putenv == 0);
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  bash_cv_std_putenv=yes
-else
-  bash_cv_std_putenv=no
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_std_putenv" >&5
-$as_echo "$bash_cv_std_putenv" >&6; }
-if test $bash_cv_std_putenv = yes; then
-$as_echo "@%:@define HAVE_STD_PUTENV 1" >>confdefs.h
-
-fi
-
-else
-$as_echo "@%:@define HAVE_STD_PUTENV 1" >>confdefs.h
-
-fi
-if test "$ac_cv_func_unsetenv" = "yes"; then
-
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for standard-conformant unsetenv declaration" >&5
-$as_echo_n "checking for standard-conformant unsetenv declaration... " >&6; }
-if ${bash_cv_std_unsetenv+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#if STDC_HEADERS
-#include <stdlib.h>
-#include <stddef.h>
-#endif
-#ifndef __STDC__
-#  ifndef const
-#    define const
-#  endif
-#endif
-#ifdef PROTOTYPES
-extern int unsetenv (const char *);
-#else
-extern int unsetenv ();
-#endif
-
-int
-main ()
-{
-return (unsetenv == 0);
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  bash_cv_std_unsetenv=yes
-else
-  bash_cv_std_unsetenv=no
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_std_unsetenv" >&5
-$as_echo "$bash_cv_std_unsetenv" >&6; }
-if test $bash_cv_std_unsetenv = yes; then
-$as_echo "@%:@define HAVE_STD_UNSETENV 1" >>confdefs.h
-
-fi
-
-else
-$as_echo "@%:@define HAVE_STD_UNSETENV 1" >>confdefs.h
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for printf floating point output in hex notation" >&5
-$as_echo_n "checking for printf floating point output in hex notation... " >&6; }
-if ${bash_cv_printf_a_format+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test "$cross_compiling" = yes; then :
-  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cannot check printf if cross compiling -- defaulting to no" >&5
-$as_echo "$as_me: WARNING: cannot check printf if cross compiling -- defaulting to no" >&2;}
-    bash_cv_printf_a_format=no
-
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#include <stdio.h>
-#include <string.h>
-
-int
-main()
-{
-       double y = 0.0;
-       char abuf[1024];
-
-       sprintf(abuf, "%A", y);
-       exit(strchr(abuf, 'P') == (char *)0);
-}
-
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-  bash_cv_printf_a_format=yes
-else
-  bash_cv_printf_a_format=no
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_printf_a_format" >&5
-$as_echo "$bash_cv_printf_a_format" >&6; }
-if test $bash_cv_printf_a_format = yes; then
-$as_echo "@%:@define HAVE_PRINTF_A_FORMAT 1" >>confdefs.h
-
-fi
-
-
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if signal handlers must be reinstalled when invoked" >&5
-$as_echo_n "checking if signal handlers must be reinstalled when invoked... " >&6; }
-if ${bash_cv_must_reinstall_sighandlers+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test "$cross_compiling" = yes; then :
-  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cannot check signal handling if cross compiling -- defaulting to no" >&5
-$as_echo "$as_me: WARNING: cannot check signal handling if cross compiling -- defaulting to no" >&2;}
-    bash_cv_must_reinstall_sighandlers=no
-
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#include <signal.h>
-#ifdef HAVE_UNISTD_H
-#include <unistd.h>
-#endif
-
-typedef RETSIGTYPE sigfunc();
-
-int nsigint;
-
-#ifdef HAVE_POSIX_SIGNALS
-sigfunc *
-set_signal_handler(sig, handler)
-     int sig;
-     sigfunc *handler;
-{
-  struct sigaction act, oact;
-  act.sa_handler = handler;
-  act.sa_flags = 0;
-  sigemptyset (&act.sa_mask);
-  sigemptyset (&oact.sa_mask);
-  sigaction (sig, &act, &oact);
-  return (oact.sa_handler);
-}
-#else
-#define set_signal_handler(s, h) signal(s, h)
-#endif
-
-RETSIGTYPE
-sigint(s)
-int s;
-{
-  nsigint++;
-}
-
-main()
-{
-       nsigint = 0;
-       set_signal_handler(SIGINT, sigint);
-       kill((int)getpid(), SIGINT);
-       kill((int)getpid(), SIGINT);
-       exit(nsigint != 2);
-}
-
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-  bash_cv_must_reinstall_sighandlers=no
-else
-  bash_cv_must_reinstall_sighandlers=yes
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_must_reinstall_sighandlers" >&5
-$as_echo "$bash_cv_must_reinstall_sighandlers" >&6; }
-if test $bash_cv_must_reinstall_sighandlers = yes; then
-$as_echo "@%:@define MUST_REINSTALL_SIGHANDLERS 1" >>confdefs.h
-
-fi
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for presence of necessary job control definitions" >&5
-$as_echo_n "checking for presence of necessary job control definitions... " >&6; }
-if ${bash_cv_job_control_missing+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test "$cross_compiling" = yes; then :
-  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cannot check job control if cross-compiling -- defaulting to missing" >&5
-$as_echo "$as_me: WARNING: cannot check job control if cross-compiling -- defaulting to missing" >&2;}
-     bash_cv_job_control_missing=missing
-
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#include <sys/types.h>
-#ifdef HAVE_SYS_WAIT_H
-#include <sys/wait.h>
-#endif
-#ifdef HAVE_UNISTD_H
-#include <unistd.h>
-#endif
-#include <signal.h>
-
-/* Add more tests in here as appropriate. */
-main()
-{
-/* signal type */
-#if !defined (HAVE_POSIX_SIGNALS) && !defined (HAVE_BSD_SIGNALS)
-exit(1);
-#endif
-
-/* signals and tty control. */
-#if !defined (SIGTSTP) || !defined (SIGSTOP) || !defined (SIGCONT)
-exit (1);
-#endif
-
-/* process control */
-#if !defined (WNOHANG) || !defined (WUNTRACED) 
-exit(1);
-#endif
-
-/* Posix systems have tcgetpgrp and waitpid. */
-#if defined (_POSIX_VERSION) && !defined (HAVE_TCGETPGRP)
-exit(1);
-#endif
-
-#if defined (_POSIX_VERSION) && !defined (HAVE_WAITPID)
-exit(1);
-#endif
-
-/* Other systems have TIOCSPGRP/TIOCGPRGP and wait3. */
-#if !defined (_POSIX_VERSION) && !defined (HAVE_WAIT3)
-exit(1);
-#endif
-
-exit(0);
-}
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-  bash_cv_job_control_missing=present
-else
-  bash_cv_job_control_missing=missing
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_job_control_missing" >&5
-$as_echo "$bash_cv_job_control_missing" >&6; }
-if test $bash_cv_job_control_missing = missing; then
-$as_echo "@%:@define JOB_CONTROL_MISSING 1" >>confdefs.h
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for presence of named pipes" >&5
-$as_echo_n "checking for presence of named pipes... " >&6; }
-if ${bash_cv_sys_named_pipes+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test "$cross_compiling" = yes; then :
-  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cannot check for named pipes if cross-compiling -- defaulting to missing" >&5
-$as_echo "$as_me: WARNING: cannot check for named pipes if cross-compiling -- defaulting to missing" >&2;}
-     bash_cv_sys_named_pipes=missing
-
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#include <sys/types.h>
-#include <sys/stat.h>
-#ifdef HAVE_UNISTD_H
-#include <unistd.h>
-#endif
-
-/* Add more tests in here as appropriate. */
-main()
-{
-int fd, err;
-
-#if defined (HAVE_MKFIFO)
-exit (0);
-#endif
-
-#if !defined (S_IFIFO) && (defined (_POSIX_VERSION) && !defined (S_ISFIFO))
-exit (1);
-#endif
-
-#if defined (NeXT)
-exit (1);
-#endif
-err = mkdir("bash-aclocal", 0700);
-if (err < 0) {
-  perror ("mkdir");
-  exit(1);
-}
-fd = mknod ("bash-aclocal/sh-np-autoconf", 0666 | S_IFIFO, 0);
-if (fd == -1) {
-  rmdir ("bash-aclocal");
-  exit (1);
-}
-close(fd);
-unlink ("bash-aclocal/sh-np-autoconf");
-rmdir ("bash-aclocal");
-exit(0);
-}
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-  bash_cv_sys_named_pipes=present
-else
-  bash_cv_sys_named_pipes=missing
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_sys_named_pipes" >&5
-$as_echo "$bash_cv_sys_named_pipes" >&6; }
-if test $bash_cv_sys_named_pipes = missing; then
-$as_echo "@%:@define NAMED_PIPES_MISSING 1" >>confdefs.h
-
-fi
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether termios.h defines TIOCGWINSZ" >&5
-$as_echo_n "checking whether termios.h defines TIOCGWINSZ... " >&6; }
-if ${ac_cv_sys_tiocgwinsz_in_termios_h+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <sys/types.h>
-#include <termios.h>
-#ifdef TIOCGWINSZ
-  yes
-#endif
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "yes" >/dev/null 2>&1; then :
-  ac_cv_sys_tiocgwinsz_in_termios_h=yes
-else
-  ac_cv_sys_tiocgwinsz_in_termios_h=no
-fi
-rm -f conftest*
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sys_tiocgwinsz_in_termios_h" >&5
-$as_echo "$ac_cv_sys_tiocgwinsz_in_termios_h" >&6; }
-
-if test $ac_cv_sys_tiocgwinsz_in_termios_h != yes; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether sys/ioctl.h defines TIOCGWINSZ" >&5
-$as_echo_n "checking whether sys/ioctl.h defines TIOCGWINSZ... " >&6; }
-if ${ac_cv_sys_tiocgwinsz_in_sys_ioctl_h+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <sys/types.h>
-#include <sys/ioctl.h>
-#ifdef TIOCGWINSZ
-  yes
-#endif
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "yes" >/dev/null 2>&1; then :
-  ac_cv_sys_tiocgwinsz_in_sys_ioctl_h=yes
-else
-  ac_cv_sys_tiocgwinsz_in_sys_ioctl_h=no
-fi
-rm -f conftest*
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sys_tiocgwinsz_in_sys_ioctl_h" >&5
-$as_echo "$ac_cv_sys_tiocgwinsz_in_sys_ioctl_h" >&6; }
-
-  if test $ac_cv_sys_tiocgwinsz_in_sys_ioctl_h = yes; then
-    
-$as_echo "@%:@define GWINSZ_IN_SYS_IOCTL 1" >>confdefs.h
-
-  fi
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for TIOCSTAT in sys/ioctl.h" >&5
-$as_echo_n "checking for TIOCSTAT in sys/ioctl.h... " >&6; }
-if ${bash_cv_tiocstat_in_ioctl+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <sys/types.h>
-#include <sys/ioctl.h>
-int
-main ()
-{
-int x = TIOCSTAT;
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  bash_cv_tiocstat_in_ioctl=yes
-else
-  bash_cv_tiocstat_in_ioctl=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_tiocstat_in_ioctl" >&5
-$as_echo "$bash_cv_tiocstat_in_ioctl" >&6; }
-if test $bash_cv_tiocstat_in_ioctl = yes; then   
-$as_echo "@%:@define TIOCSTAT_IN_SYS_IOCTL 1" >>confdefs.h
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for FIONREAD in sys/ioctl.h" >&5
-$as_echo_n "checking for FIONREAD in sys/ioctl.h... " >&6; }
-if ${bash_cv_fionread_in_ioctl+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <sys/types.h>
-#include <sys/ioctl.h>
-int
-main ()
-{
-int x = FIONREAD;
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  bash_cv_fionread_in_ioctl=yes
-else
-  bash_cv_fionread_in_ioctl=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_fionread_in_ioctl" >&5
-$as_echo "$bash_cv_fionread_in_ioctl" >&6; }
-if test $bash_cv_fionread_in_ioctl = yes; then   
-$as_echo "@%:@define FIONREAD_IN_SYS_IOCTL 1" >>confdefs.h
-
-fi
-
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether WCONTINUED flag to waitpid is unavailable or available but broken" >&5
-$as_echo_n "checking whether WCONTINUED flag to waitpid is unavailable or available but broken... " >&6; }
-if ${bash_cv_wcontinued_broken+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test "$cross_compiling" = yes; then :
-  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cannot check WCONTINUED if cross compiling -- defaulting to no" >&5
-$as_echo "$as_me: WARNING: cannot check WCONTINUED if cross compiling -- defaulting to no" >&2;}
-    bash_cv_wcontinued_broken=no
-
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#include <sys/types.h>
-#include <sys/wait.h>
-#include <unistd.h>
-#include <errno.h>
-
-#ifndef errno
-extern int errno;
-#endif
-main()
-{
-       int     x;
-
-       x = waitpid(-1, (int *)0, WNOHANG|WCONTINUED);
-       if (x == -1 && errno == EINVAL)
-               exit (1);
-       else
-               exit (0);
-}
-
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-  bash_cv_wcontinued_broken=no
-else
-  bash_cv_wcontinued_broken=yes
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_wcontinued_broken" >&5
-$as_echo "$bash_cv_wcontinued_broken" >&6; }
-if test $bash_cv_wcontinued_broken = yes; then
-$as_echo "@%:@define WCONTINUED_BROKEN 1" >>confdefs.h
-
-fi
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for speed_t in sys/types.h" >&5
-$as_echo_n "checking for speed_t in sys/types.h... " >&6; }
-if ${bash_cv_speed_t_in_sys_types+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <sys/types.h>
-int
-main ()
-{
-speed_t x;
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  bash_cv_speed_t_in_sys_types=yes
-else
-  bash_cv_speed_t_in_sys_types=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_speed_t_in_sys_types" >&5
-$as_echo "$bash_cv_speed_t_in_sys_types" >&6; }
-if test $bash_cv_speed_t_in_sys_types = yes; then   
-$as_echo "@%:@define SPEED_T_IN_SYS_TYPES 1" >>confdefs.h
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether getpw functions are declared in pwd.h" >&5
-$as_echo_n "checking whether getpw functions are declared in pwd.h... " >&6; }
-if ${bash_cv_getpw_declared+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#include <sys/types.h>
-#ifdef HAVE_UNISTD_H
-#  include <unistd.h>
-#endif
-#include <pwd.h>
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "getpwuid" >/dev/null 2>&1; then :
-  bash_cv_getpw_declared=yes
-else
-  bash_cv_getpw_declared=no
-fi
-rm -f conftest*
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_getpw_declared" >&5
-$as_echo "$bash_cv_getpw_declared" >&6; }
-if test $bash_cv_getpw_declared = yes; then
-$as_echo "@%:@define HAVE_GETPW_DECLS 1" >>confdefs.h
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for unusable real-time signals due to large values" >&5
-$as_echo_n "checking for unusable real-time signals due to large values... " >&6; }
-if ${bash_cv_unusable_rtsigs+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test "$cross_compiling" = yes; then :
-  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cannot check real-time signals if cross compiling -- defaulting to yes" >&5
-$as_echo "$as_me: WARNING: cannot check real-time signals if cross compiling -- defaulting to yes" >&2;}
-     bash_cv_unusable_rtsigs=yes
-
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#include <sys/types.h>
-#include <signal.h>
-
-#ifndef NSIG
-#  define NSIG 64
-#endif
-
-main ()
-{
-  int n_sigs = 2 * NSIG;
-#ifdef SIGRTMIN
-  int rtmin = SIGRTMIN;
-#else
-  int rtmin = 0;
-#endif
-
-  exit(rtmin < n_sigs);
-}
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-  bash_cv_unusable_rtsigs=yes
-else
-  bash_cv_unusable_rtsigs=no
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_unusable_rtsigs" >&5
-$as_echo "$bash_cv_unusable_rtsigs" >&6; }
-if test $bash_cv_unusable_rtsigs = yes; then
-$as_echo "@%:@define UNUSABLE_RT_SIGNALS 1" >>confdefs.h
-
-fi
-
-
-
-
-
-if test "$bash_cv_sys_siglist" = no && test "$bash_cv_under_sys_siglist" = no && test "$bash_cv_have_strsignal" = no; then
-  SIGLIST_O=siglist.o
-else
-  SIGLIST_O=
-fi
-
-
-
-case "$host_os" in
-hpux*) { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $host_os needs _KERNEL for RLIMIT defines" >&5
-$as_echo_n "checking whether $host_os needs _KERNEL for RLIMIT defines... " >&6; }
-if ${bash_cv_kernel_rlimit+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#include <sys/types.h>
-#include <sys/resource.h>
-
-int
-main ()
-{
-
-  int f;
-  f = RLIMIT_DATA;
-
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  bash_cv_kernel_rlimit=no
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#include <sys/types.h>
-#define _KERNEL
-#include <sys/resource.h>
-#undef _KERNEL
-
-int
-main ()
-{
-
-       int f;
-        f = RLIMIT_DATA;
-
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  bash_cv_kernel_rlimit=yes
-else
-  bash_cv_kernel_rlimit=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_kernel_rlimit" >&5
-$as_echo "$bash_cv_kernel_rlimit" >&6; }
-if test $bash_cv_kernel_rlimit = yes; then
-$as_echo "@%:@define RLIMIT_NEEDS_KERNEL 1" >>confdefs.h
-
-fi
- ;;
-esac
-
-if test "$opt_readline" = yes; then
-case "$host_os" in
-aix*)  prefer_curses=yes ;;
-esac
-
-if test "X$bash_cv_termcap_lib" = "X"; then
-_bash_needmsg=yes
-else
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking which library has the termcap functions" >&5
-$as_echo_n "checking which library has the termcap functions... " >&6; }
-_bash_needmsg=
-fi
-if ${bash_cv_termcap_lib+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_fn_c_check_func "$LINENO" "tgetent" "ac_cv_func_tgetent"
-if test "x$ac_cv_func_tgetent" = xyes; then :
-  bash_cv_termcap_lib=libc
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for tgetent in -ltermcap" >&5
-$as_echo_n "checking for tgetent in -ltermcap... " >&6; }
-if ${ac_cv_lib_termcap_tgetent+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_check_lib_save_LIBS=$LIBS
-LIBS="-ltermcap  $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-/* Override any GCC internal prototype to avoid an error.
-   Use char because int might match the return type of a GCC
-   builtin and then its argument prototype would still apply.  */
-#ifdef __cplusplus
-extern "C"
-#endif
-char tgetent ();
-int
-main ()
-{
-return tgetent ();
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  ac_cv_lib_termcap_tgetent=yes
-else
-  ac_cv_lib_termcap_tgetent=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_termcap_tgetent" >&5
-$as_echo "$ac_cv_lib_termcap_tgetent" >&6; }
-if test "x$ac_cv_lib_termcap_tgetent" = xyes; then :
-  bash_cv_termcap_lib=libtermcap
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for tgetent in -ltinfo" >&5
-$as_echo_n "checking for tgetent in -ltinfo... " >&6; }
-if ${ac_cv_lib_tinfo_tgetent+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_check_lib_save_LIBS=$LIBS
-LIBS="-ltinfo  $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-/* Override any GCC internal prototype to avoid an error.
-   Use char because int might match the return type of a GCC
-   builtin and then its argument prototype would still apply.  */
-#ifdef __cplusplus
-extern "C"
-#endif
-char tgetent ();
-int
-main ()
-{
-return tgetent ();
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  ac_cv_lib_tinfo_tgetent=yes
-else
-  ac_cv_lib_tinfo_tgetent=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_tinfo_tgetent" >&5
-$as_echo "$ac_cv_lib_tinfo_tgetent" >&6; }
-if test "x$ac_cv_lib_tinfo_tgetent" = xyes; then :
-  bash_cv_termcap_lib=libtinfo
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for tgetent in -lcurses" >&5
-$as_echo_n "checking for tgetent in -lcurses... " >&6; }
-if ${ac_cv_lib_curses_tgetent+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_check_lib_save_LIBS=$LIBS
-LIBS="-lcurses  $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-/* Override any GCC internal prototype to avoid an error.
-   Use char because int might match the return type of a GCC
-   builtin and then its argument prototype would still apply.  */
-#ifdef __cplusplus
-extern "C"
-#endif
-char tgetent ();
-int
-main ()
-{
-return tgetent ();
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  ac_cv_lib_curses_tgetent=yes
-else
-  ac_cv_lib_curses_tgetent=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_curses_tgetent" >&5
-$as_echo "$ac_cv_lib_curses_tgetent" >&6; }
-if test "x$ac_cv_lib_curses_tgetent" = xyes; then :
-  bash_cv_termcap_lib=libcurses
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for tgetent in -lncurses" >&5
-$as_echo_n "checking for tgetent in -lncurses... " >&6; }
-if ${ac_cv_lib_ncurses_tgetent+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_check_lib_save_LIBS=$LIBS
-LIBS="-lncurses  $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-/* Override any GCC internal prototype to avoid an error.
-   Use char because int might match the return type of a GCC
-   builtin and then its argument prototype would still apply.  */
-#ifdef __cplusplus
-extern "C"
-#endif
-char tgetent ();
-int
-main ()
-{
-return tgetent ();
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  ac_cv_lib_ncurses_tgetent=yes
-else
-  ac_cv_lib_ncurses_tgetent=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_ncurses_tgetent" >&5
-$as_echo "$ac_cv_lib_ncurses_tgetent" >&6; }
-if test "x$ac_cv_lib_ncurses_tgetent" = xyes; then :
-  bash_cv_termcap_lib=libncurses
-else
-  bash_cv_termcap_lib=gnutermcap
-fi
-
-fi
-
-fi
-
-fi
-
-fi
-
-fi
-
-if test "X$_bash_needmsg" = "Xyes"; then
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking which library has the termcap functions" >&5
-$as_echo_n "checking which library has the termcap functions... " >&6; }
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: using $bash_cv_termcap_lib" >&5
-$as_echo "using $bash_cv_termcap_lib" >&6; }
-if test $bash_cv_termcap_lib = gnutermcap && test -z "$prefer_curses"; then
-LDFLAGS="$LDFLAGS -L./lib/termcap"
-TERMCAP_LIB="./lib/termcap/libtermcap.a"
-TERMCAP_DEP="./lib/termcap/libtermcap.a"
-elif test $bash_cv_termcap_lib = libtermcap && test -z "$prefer_curses"; then
-TERMCAP_LIB=-ltermcap
-TERMCAP_DEP=
-elif test $bash_cv_termcap_lib = libtinfo; then
-TERMCAP_LIB=-ltinfo
-TERMCAP_DEP=
-elif test $bash_cv_termcap_lib = libncurses; then
-TERMCAP_LIB=-lncurses
-TERMCAP_DEP=
-elif test $bash_cv_termcap_lib = libc; then
-TERMCAP_LIB=
-TERMCAP_DEP=
-else
-TERMCAP_LIB=-lcurses
-TERMCAP_DEP=
-fi
-
-fi
-
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether /dev/fd is available" >&5
-$as_echo_n "checking whether /dev/fd is available... " >&6; }
-if ${bash_cv_dev_fd+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  bash_cv_dev_fd=""
-if test -d /dev/fd  && (exec test -r /dev/fd/0 < /dev/null) ; then
-# check for systems like FreeBSD 5 that only provide /dev/fd/[012]
-   if (exec test -r /dev/fd/3 3</dev/null) ; then
-     bash_cv_dev_fd=standard
-   else
-     bash_cv_dev_fd=absent
-   fi
-fi
-if test -z "$bash_cv_dev_fd" ; then 
-  if test -d /proc/self/fd && (exec test -r /proc/self/fd/0 < /dev/null) ; then
-    bash_cv_dev_fd=whacky
-  else
-    bash_cv_dev_fd=absent
-  fi
-fi
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_dev_fd" >&5
-$as_echo "$bash_cv_dev_fd" >&6; }
-if test $bash_cv_dev_fd = "standard"; then
-  $as_echo "@%:@define HAVE_DEV_FD 1" >>confdefs.h
-
-  $as_echo "@%:@define DEV_FD_PREFIX \"/dev/fd/\"" >>confdefs.h
-
-elif test $bash_cv_dev_fd = "whacky"; then
-  $as_echo "@%:@define HAVE_DEV_FD 1" >>confdefs.h
-
-  $as_echo "@%:@define DEV_FD_PREFIX \"/proc/self/fd/\"" >>confdefs.h
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether /dev/stdin stdout stderr are available" >&5
-$as_echo_n "checking whether /dev/stdin stdout stderr are available... " >&6; }
-if ${bash_cv_dev_stdin+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test -d /dev/fd && (exec test -r /dev/stdin < /dev/null) ; then
-   bash_cv_dev_stdin=present
- elif test -d /proc/self/fd && (exec test -r /dev/stdin < /dev/null) ; then
-   bash_cv_dev_stdin=present
- else
-   bash_cv_dev_stdin=absent
- fi
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_dev_stdin" >&5
-$as_echo "$bash_cv_dev_stdin" >&6; }
-if test $bash_cv_dev_stdin = "present"; then
-  $as_echo "@%:@define HAVE_DEV_STDIN 1" >>confdefs.h
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for default mail directory" >&5
-$as_echo_n "checking for default mail directory... " >&6; }
-if ${bash_cv_mail_dir+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test -d /var/mail; then
-   bash_cv_mail_dir=/var/mail
- elif test -d /var/spool/mail; then
-   bash_cv_mail_dir=/var/spool/mail
- elif test -d /usr/mail; then
-   bash_cv_mail_dir=/usr/mail
- elif test -d /usr/spool/mail; then
-   bash_cv_mail_dir=/usr/spool/mail
- else
-   bash_cv_mail_dir=unknown
- fi
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_mail_dir" >&5
-$as_echo "$bash_cv_mail_dir" >&6; }
-cat >>confdefs.h <<_ACEOF
-@%:@define DEFAULT_MAIL_DIRECTORY "$bash_cv_mail_dir"
-_ACEOF
-
-
-
-if test "$bash_cv_job_control_missing" = missing; then
-       opt_job_control=no
-fi
-
-if test "$opt_job_control" = yes; then
-$as_echo "@%:@define JOB_CONTROL 1" >>confdefs.h
-
-JOBS_O=jobs.o
-else
-JOBS_O=nojobs.o
-fi
-
-
-
-
-LOCAL_DEFS=-DSHELL
-
-
-case "${host_os}" in
-sysv4.2*)      $as_echo "@%:@define SVR4_2 1" >>confdefs.h
-
-               $as_echo "@%:@define SVR4 1" >>confdefs.h
- ;;
-sysv4*)                $as_echo "@%:@define SVR4 1" >>confdefs.h
- ;;
-sysv5*)                $as_echo "@%:@define SVR5 1" >>confdefs.h
- ;;
-hpux9*)                LOCAL_CFLAGS="-DHPUX9 -DHPUX" ;;
-hpux*)         LOCAL_CFLAGS=-DHPUX ;;
-dgux*)         LOCAL_CFLAGS=-D_DGUX_SOURCE; LOCAL_LIBS=-ldgc ;;
-isc*)          LOCAL_CFLAGS=-Disc386 ;;
-rhapsody*)     LOCAL_CFLAGS=-DRHAPSODY ;;
-darwin*)       LOCAL_CFLAGS=-DMACOSX ;;
-sco3.2v5*)     LOCAL_CFLAGS="-b elf -DWAITPID_BROKEN -DPATH_MAX=1024" ;;
-sco3.2v4*)     LOCAL_CFLAGS="-DMUST_UNBLOCK_CHLD -DPATH_MAX=1024" ;;
-sco3.2*)       LOCAL_CFLAGS=-DMUST_UNBLOCK_CHLD ;;
-sunos4*)       LOCAL_CFLAGS=-DSunOS4 ;;
-solaris2.5*)   LOCAL_CFLAGS="-DSunOS5 -DSOLARIS" ;;
-solaris2.8*)   LOCAL_CFLAGS=-DSOLARIS  ;;
-solaris2.9*)   LOCAL_CFLAGS=-DSOLARIS  ;;
-solaris2.10*)  LOCAL_CFLAGS=-DSOLARIS  ;;
-solaris2*)     LOCAL_CFLAGS=-DSOLARIS ;;
-lynxos*)       LOCAL_CFLAGS=-DRECYCLES_PIDS ;;
-linux*)                LOCAL_LDFLAGS=-rdynamic          # allow dynamic loading
-               case "`uname -r`" in
-               2.[456789]*|3*) $as_echo "@%:@define PGRP_PIPE 1" >>confdefs.h
- ;;
-               esac ;;
-*qnx6*)                LOCAL_CFLAGS="-Dqnx -Dqnx6" LOCAL_LIBS="-lncurses" ;;
-*qnx*)         LOCAL_CFLAGS="-Dqnx -F -3s" LOCAL_LDFLAGS="-3s" LOCAL_LIBS="-lunix -lncurses" ;;
-powerux*)      LOCAL_LIBS="-lgen" ;;
-cygwin*)       LOCAL_CFLAGS=-DRECYCLES_PIDS ;;
-opennt*|interix*) LOCAL_CFLAGS="-DNO_MAIN_ENV_ARG -DBROKEN_DIRENT_D_INO -D_POSIX_SOURCE -D_ALL_SOURCE -DRECYCLES_PIDS" ;;
-esac
-
-case "${host_os}-${CC}" in
-aix4.2*-*gcc*) LOCAL_LDFLAGS="-Xlinker -bexpall -Xlinker -brtl" ;;
-aix4.2*)       LOCAL_LDFLAGS="-bexpall -brtl" ;;
-bsdi4*-*gcc*)  LOCAL_LDFLAGS="-rdynamic" ;;    # allow dynamic loading, like Linux
-esac
-
-case "${host_os}" in
-freebsd[3-9]*)
-               if test -x /usr/bin/objformat && test "`/usr/bin/objformat`" = "elf" ; then
-                       LOCAL_LDFLAGS=-rdynamic # allow dynamic loading
-               fi ;;
-freebsdelf*)   LOCAL_LDFLAGS=-rdynamic ;;      # allow dynamic loading
-dragonfly*)    LOCAL_LDFLAGS=-rdynamic ;;      # allow dynamic loading
-esac
-
-case "$host_cpu" in
-*cray*)                LOCAL_CFLAGS="-DCRAY" ;; # shell var so config.h can use it
-esac
-
-case "$host_cpu-$host_os" in
-ibmrt-*bsd4*)  LOCAL_CFLAGS="-ma -U__STDC__" ;;
-esac
-
-case "$host_cpu-$host_vendor-$host_os" in
-m88k-motorola-sysv3)   LOCAL_CFLAGS=-DWAITPID_BROKEN ;;
-mips-pyramid-sysv4)    LOCAL_CFLAGS=-Xa ;;
-esac
-
-#
-# Shared object configuration section.  These values are generated by
-# ${srcdir}/support/shobj-conf
-#
-if test "$ac_cv_func_dlopen" = "yes" && test -f ${srcdir}/support/shobj-conf
-then
-       { $as_echo "$as_me:${as_lineno-$LINENO}: checking shared object configuration for loadable builtins" >&5
-$as_echo_n "checking shared object configuration for loadable builtins... " >&6; }
-       eval `${CONFIG_SHELL-/bin/sh} ${srcdir}/support/shobj-conf -C "${CC}" -c "${host_cpu}" -o "${host_os}" -v "${host_vendor}"`
-       
-       
-       
-       
-       
-       
-       
-       { $as_echo "$as_me:${as_lineno-$LINENO}: result: $SHOBJ_STATUS" >&5
-$as_echo "$SHOBJ_STATUS" >&6; }
-fi
-
-# try to create a directory tree if the source is elsewhere
-# this should be packaged into a script accessible via ${srcdir}/support
-case "$srcdir" in
-.)     ;;
-*)     for d in doc tests support lib examples; do     # dirs
-               test -d $d || mkdir $d
-       done
-       for ld in readline glob tilde malloc sh termcap; do     # libdirs
-               test -d lib/$ld || mkdir lib/$ld
-       done
-       test -d examples/loadables || mkdir examples/loadables  # loadable builtins
-       test -d examples/loadables/perl || mkdir examples/loadables/perl
-       ;;
-esac
-
-BUILD_DIR=`pwd`
-case "$BUILD_DIR" in
-*\ *)  BUILD_DIR=`echo "$BUILD_DIR" | sed 's: :\\\\ :g'` ;;
-*)     ;;
-esac
-
-if test -z "$localedir"; then
-       localedir='${datarootdir}/locale'
-fi
-if test -z "$datarootdir"; then
-       datarootdir='${prefix}/share'
-fi
-
-
-
-
-
-
-# Some versions of autoconf don't substitute these automatically
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-#AC_SUBST(ALLOCA_SOURCE)
-#AC_SUBST(ALLOCA_OBJECT)
-
-ac_config_files="$ac_config_files Makefile builtins/Makefile lib/readline/Makefile lib/glob/Makefile lib/intl/Makefile lib/malloc/Makefile lib/sh/Makefile lib/termcap/Makefile lib/tilde/Makefile doc/Makefile support/Makefile po/Makefile.in examples/loadables/Makefile examples/loadables/perl/Makefile"
-
-ac_config_commands="$ac_config_commands default"
-
-cat >confcache <<\_ACEOF
-# This file is a shell script that caches the results of configure
-# tests run on this system so they can be shared between configure
-# scripts and configure runs, see configure's option --config-cache.
-# It is not useful on other systems.  If it contains results you don't
-# want to keep, you may remove or edit it.
-#
-# config.status only pays attention to the cache file if you give it
-# the --recheck option to rerun configure.
-#
-# `ac_cv_env_foo' variables (set or unset) will be overridden when
-# loading this file, other *unset* `ac_cv_foo' will be assigned the
-# following values.
-
-_ACEOF
-
-# The following way of writing the cache mishandles newlines in values,
-# but we know of no workaround that is simple, portable, and efficient.
-# So, we kill variables containing newlines.
-# Ultrix sh set writes to stderr and can't be redirected directly,
-# and sets the high bit in the cache file unless we assign to the vars.
-(
-  for ac_var in `(set) 2>&1 | sed -n 's/^\([a-zA-Z_][a-zA-Z0-9_]*\)=.*/\1/p'`; do
-    eval ac_val=\$$ac_var
-    case $ac_val in #(
-    *${as_nl}*)
-      case $ac_var in #(
-      *_cv_*) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cache variable $ac_var contains a newline" >&5
-$as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;;
-      esac
-      case $ac_var in #(
-      _ | IFS | as_nl) ;; #(
-      BASH_ARGV | BASH_SOURCE) eval $ac_var= ;; #(
-      *) { eval $ac_var=; unset $ac_var;} ;;
-      esac ;;
-    esac
-  done
-
-  (set) 2>&1 |
-    case $as_nl`(ac_space=' '; set) 2>&1` in #(
-    *${as_nl}ac_space=\ *)
-      # `set' does not quote correctly, so add quotes: double-quote
-      # substitution turns \\\\ into \\, and sed turns \\ into \.
-      sed -n \
-       "s/'/'\\\\''/g;
-         s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\\2'/p"
-      ;; #(
-    *)
-      # `set' quotes correctly as required by POSIX, so do not add quotes.
-      sed -n "/^[_$as_cr_alnum]*_cv_[_$as_cr_alnum]*=/p"
-      ;;
-    esac |
-    sort
-) |
-  sed '
-     /^ac_cv_env_/b end
-     t clear
-     :clear
-     s/^\([^=]*\)=\(.*[{}].*\)$/test "${\1+set}" = set || &/
-     t end
-     s/^\([^=]*\)=\(.*\)$/\1=${\1=\2}/
-     :end' >>confcache
-if diff "$cache_file" confcache >/dev/null 2>&1; then :; else
-  if test -w "$cache_file"; then
-    if test "x$cache_file" != "x/dev/null"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: updating cache $cache_file" >&5
-$as_echo "$as_me: updating cache $cache_file" >&6;}
-      if test ! -f "$cache_file" || test -h "$cache_file"; then
-       cat confcache >"$cache_file"
-      else
-        case $cache_file in #(
-        */* | ?:*)
-         mv -f confcache "$cache_file"$$ &&
-         mv -f "$cache_file"$$ "$cache_file" ;; #(
-        *)
-         mv -f confcache "$cache_file" ;;
-       esac
-      fi
-    fi
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: not updating unwritable cache $cache_file" >&5
-$as_echo "$as_me: not updating unwritable cache $cache_file" >&6;}
-  fi
-fi
-rm -f confcache
-
-test "x$prefix" = xNONE && prefix=$ac_default_prefix
-# Let make expand exec_prefix.
-test "x$exec_prefix" = xNONE && exec_prefix='${prefix}'
-
-DEFS=-DHAVE_CONFIG_H
-
-ac_libobjs=
-ac_ltlibobjs=
-U=
-for ac_i in : $LIB@&t@OBJS; do test "x$ac_i" = x: && continue
-  # 1. Remove the extension, and $U if already installed.
-  ac_script='s/\$U\././;s/\.o$//;s/\.obj$//'
-  ac_i=`$as_echo "$ac_i" | sed "$ac_script"`
-  # 2. Prepend LIBOBJDIR.  When used with automake>=1.10 LIBOBJDIR
-  #    will be set to the directory where LIBOBJS objects are built.
-  as_fn_append ac_libobjs " \${LIBOBJDIR}$ac_i\$U.$ac_objext"
-  as_fn_append ac_ltlibobjs " \${LIBOBJDIR}$ac_i"'$U.lo'
-done
-LIB@&t@OBJS=$ac_libobjs
-
-LTLIBOBJS=$ac_ltlibobjs
-
-
-
-
-: "${CONFIG_STATUS=./config.status}"
-ac_write_fail=0
-ac_clean_files_save=$ac_clean_files
-ac_clean_files="$ac_clean_files $CONFIG_STATUS"
-{ $as_echo "$as_me:${as_lineno-$LINENO}: creating $CONFIG_STATUS" >&5
-$as_echo "$as_me: creating $CONFIG_STATUS" >&6;}
-as_write_fail=0
-cat >$CONFIG_STATUS <<_ASEOF || as_write_fail=1
-#! $SHELL
-# Generated by $as_me.
-# Run this file to recreate the current configuration.
-# Compiler output produced by configure, useful for debugging
-# configure, is in config.log if it exists.
-
-debug=false
-ac_cs_recheck=false
-ac_cs_silent=false
-
-SHELL=\${CONFIG_SHELL-$SHELL}
-export SHELL
-_ASEOF
-cat >>$CONFIG_STATUS <<\_ASEOF || as_write_fail=1
-## -------------------- ##
-## M4sh Initialization. ##
-## -------------------- ##
-
-# Be more Bourne compatible
-DUALCASE=1; export DUALCASE # for MKS sh
-if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then :
-  emulate sh
-  NULLCMD=:
-  # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which
-  # is contrary to our usage.  Disable this feature.
-  alias -g '${1+"$@"}'='"$@"'
-  setopt NO_GLOB_SUBST
-else
-  case `(set -o) 2>/dev/null` in @%:@(
-  *posix*) :
-    set -o posix ;; @%:@(
-  *) :
-     ;;
-esac
-fi
-
-
-as_nl='
-'
-export as_nl
-# Printing a long string crashes Solaris 7 /usr/bin/printf.
-as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
-as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo
-as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo
-# Prefer a ksh shell builtin over an external printf program on Solaris,
-# but without wasting forks for bash or zsh.
-if test -z "$BASH_VERSION$ZSH_VERSION" \
-    && (test "X`print -r -- $as_echo`" = "X$as_echo") 2>/dev/null; then
-  as_echo='print -r --'
-  as_echo_n='print -rn --'
-elif (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then
-  as_echo='printf %s\n'
-  as_echo_n='printf %s'
-else
-  if test "X`(/usr/ucb/echo -n -n $as_echo) 2>/dev/null`" = "X-n $as_echo"; then
-    as_echo_body='eval /usr/ucb/echo -n "$1$as_nl"'
-    as_echo_n='/usr/ucb/echo -n'
-  else
-    as_echo_body='eval expr "X$1" : "X\\(.*\\)"'
-    as_echo_n_body='eval
-      arg=$1;
-      case $arg in @%:@(
-      *"$as_nl"*)
-       expr "X$arg" : "X\\(.*\\)$as_nl";
-       arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;;
-      esac;
-      expr "X$arg" : "X\\(.*\\)" | tr -d "$as_nl"
-    '
-    export as_echo_n_body
-    as_echo_n='sh -c $as_echo_n_body as_echo'
-  fi
-  export as_echo_body
-  as_echo='sh -c $as_echo_body as_echo'
-fi
-
-# The user is always right.
-if test "${PATH_SEPARATOR+set}" != set; then
-  PATH_SEPARATOR=:
-  (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && {
-    (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 ||
-      PATH_SEPARATOR=';'
-  }
-fi
-
-
-# IFS
-# We need space, tab and new line, in precisely that order.  Quoting is
-# there to prevent editors from complaining about space-tab.
-# (If _AS_PATH_WALK were called with IFS unset, it would disable word
-# splitting by setting IFS to empty value.)
-IFS=" ""       $as_nl"
-
-# Find who we are.  Look in the path if we contain no directory separator.
-as_myself=
-case $0 in @%:@((
-  *[\\/]* ) as_myself=$0 ;;
-  *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break
-  done
-IFS=$as_save_IFS
-
-     ;;
-esac
-# We did not find ourselves, most probably we were run as `sh COMMAND'
-# in which case we are not to be found in the path.
-if test "x$as_myself" = x; then
-  as_myself=$0
-fi
-if test ! -f "$as_myself"; then
-  $as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2
-  exit 1
-fi
-
-# Unset variables that we do not need and which cause bugs (e.g. in
-# pre-3.0 UWIN ksh).  But do not cause bugs in bash 2.01; the "|| exit 1"
-# suppresses any "Segmentation fault" message there.  '((' could
-# trigger a bug in pdksh 5.2.14.
-for as_var in BASH_ENV ENV MAIL MAILPATH
-do eval test x\${$as_var+set} = xset \
-  && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || :
-done
-PS1='$ '
-PS2='> '
-PS4='+ '
-
-# NLS nuisances.
-LC_ALL=C
-export LC_ALL
-LANGUAGE=C
-export LANGUAGE
-
-# CDPATH.
-(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
-
-
-@%:@ as_fn_error STATUS ERROR [LINENO LOG_FD]
-@%:@ ----------------------------------------
-@%:@ Output "`basename @S|@0`: error: ERROR" to stderr. If LINENO and LOG_FD are
-@%:@ provided, also output the error to LOG_FD, referencing LINENO. Then exit the
-@%:@ script with STATUS, using 1 if that was 0.
-as_fn_error ()
-{
-  as_status=$1; test $as_status -eq 0 && as_status=1
-  if test "$4"; then
-    as_lineno=${as_lineno-"$3"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
-    $as_echo "$as_me:${as_lineno-$LINENO}: error: $2" >&$4
-  fi
-  $as_echo "$as_me: error: $2" >&2
-  as_fn_exit $as_status
-} @%:@ as_fn_error
-
-
-@%:@ as_fn_set_status STATUS
-@%:@ -----------------------
-@%:@ Set @S|@? to STATUS, without forking.
-as_fn_set_status ()
-{
-  return $1
-} @%:@ as_fn_set_status
-
-@%:@ as_fn_exit STATUS
-@%:@ -----------------
-@%:@ Exit the shell with STATUS, even in a "trap 0" or "set -e" context.
-as_fn_exit ()
-{
-  set +e
-  as_fn_set_status $1
-  exit $1
-} @%:@ as_fn_exit
-
-@%:@ as_fn_unset VAR
-@%:@ ---------------
-@%:@ Portably unset VAR.
-as_fn_unset ()
-{
-  { eval $1=; unset $1;}
-}
-as_unset=as_fn_unset
-@%:@ as_fn_append VAR VALUE
-@%:@ ----------------------
-@%:@ Append the text in VALUE to the end of the definition contained in VAR. Take
-@%:@ advantage of any shell optimizations that allow amortized linear growth over
-@%:@ repeated appends, instead of the typical quadratic growth present in naive
-@%:@ implementations.
-if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null; then :
-  eval 'as_fn_append ()
-  {
-    eval $1+=\$2
-  }'
-else
-  as_fn_append ()
-  {
-    eval $1=\$$1\$2
-  }
-fi # as_fn_append
-
-@%:@ as_fn_arith ARG...
-@%:@ ------------------
-@%:@ Perform arithmetic evaluation on the ARGs, and store the result in the
-@%:@ global @S|@as_val. Take advantage of shells that can avoid forks. The arguments
-@%:@ must be portable across @S|@(()) and expr.
-if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null; then :
-  eval 'as_fn_arith ()
-  {
-    as_val=$(( $* ))
-  }'
-else
-  as_fn_arith ()
-  {
-    as_val=`expr "$@" || test $? -eq 1`
-  }
-fi # as_fn_arith
-
-
-if expr a : '\(a\)' >/dev/null 2>&1 &&
-   test "X`expr 00001 : '.*\(...\)'`" = X001; then
-  as_expr=expr
-else
-  as_expr=false
-fi
-
-if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then
-  as_basename=basename
-else
-  as_basename=false
-fi
-
-if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then
-  as_dirname=dirname
-else
-  as_dirname=false
-fi
-
-as_me=`$as_basename -- "$0" ||
-$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \
-        X"$0" : 'X\(//\)$' \| \
-        X"$0" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X/"$0" |
-    sed '/^.*\/\([^/][^/]*\)\/*$/{
-           s//\1/
-           q
-         }
-         /^X\/\(\/\/\)$/{
-           s//\1/
-           q
-         }
-         /^X\/\(\/\).*/{
-           s//\1/
-           q
-         }
-         s/.*/./; q'`
-
-# Avoid depending upon Character Ranges.
-as_cr_letters='abcdefghijklmnopqrstuvwxyz'
-as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ'
-as_cr_Letters=$as_cr_letters$as_cr_LETTERS
-as_cr_digits='0123456789'
-as_cr_alnum=$as_cr_Letters$as_cr_digits
-
-ECHO_C= ECHO_N= ECHO_T=
-case `echo -n x` in @%:@(((((
--n*)
-  case `echo 'xy\c'` in
-  *c*) ECHO_T='        ';;     # ECHO_T is single tab character.
-  xy)  ECHO_C='\c';;
-  *)   echo `echo ksh88 bug on AIX 6.1` > /dev/null
-       ECHO_T='        ';;
-  esac;;
-*)
-  ECHO_N='-n';;
-esac
-
-rm -f conf$$ conf$$.exe conf$$.file
-if test -d conf$$.dir; then
-  rm -f conf$$.dir/conf$$.file
-else
-  rm -f conf$$.dir
-  mkdir conf$$.dir 2>/dev/null
-fi
-if (echo >conf$$.file) 2>/dev/null; then
-  if ln -s conf$$.file conf$$ 2>/dev/null; then
-    as_ln_s='ln -s'
-    # ... but there are two gotchas:
-    # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail.
-    # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable.
-    # In both cases, we have to default to `cp -p'.
-    ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe ||
-      as_ln_s='cp -p'
-  elif ln conf$$.file conf$$ 2>/dev/null; then
-    as_ln_s=ln
-  else
-    as_ln_s='cp -p'
-  fi
-else
-  as_ln_s='cp -p'
-fi
-rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file
-rmdir conf$$.dir 2>/dev/null
-
-
-@%:@ as_fn_mkdir_p
-@%:@ -------------
-@%:@ Create "@S|@as_dir" as a directory, including parents if necessary.
-as_fn_mkdir_p ()
-{
-
-  case $as_dir in #(
-  -*) as_dir=./$as_dir;;
-  esac
-  test -d "$as_dir" || eval $as_mkdir_p || {
-    as_dirs=
-    while :; do
-      case $as_dir in #(
-      *\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'(
-      *) as_qdir=$as_dir;;
-      esac
-      as_dirs="'$as_qdir' $as_dirs"
-      as_dir=`$as_dirname -- "$as_dir" ||
-$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
-        X"$as_dir" : 'X\(//\)[^/]' \| \
-        X"$as_dir" : 'X\(//\)$' \| \
-        X"$as_dir" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X"$as_dir" |
-    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
-           s//\1/
-           q
-         }
-         /^X\(\/\/\)[^/].*/{
-           s//\1/
-           q
-         }
-         /^X\(\/\/\)$/{
-           s//\1/
-           q
-         }
-         /^X\(\/\).*/{
-           s//\1/
-           q
-         }
-         s/.*/./; q'`
-      test -d "$as_dir" && break
-    done
-    test -z "$as_dirs" || eval "mkdir $as_dirs"
-  } || test -d "$as_dir" || as_fn_error $? "cannot create directory $as_dir"
-
-
-} @%:@ as_fn_mkdir_p
-if mkdir -p . 2>/dev/null; then
-  as_mkdir_p='mkdir -p "$as_dir"'
-else
-  test -d ./-p && rmdir ./-p
-  as_mkdir_p=false
-fi
-
-if test -x / >/dev/null 2>&1; then
-  as_test_x='test -x'
-else
-  if ls -dL / >/dev/null 2>&1; then
-    as_ls_L_option=L
-  else
-    as_ls_L_option=
-  fi
-  as_test_x='
-    eval sh -c '\''
-      if test -d "$1"; then
-       test -d "$1/.";
-      else
-       case $1 in @%:@(
-       -*)set "./$1";;
-       esac;
-       case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in @%:@((
-       ???[sx]*):;;*)false;;esac;fi
-    '\'' sh
-  '
-fi
-as_executable_p=$as_test_x
-
-# Sed expression to map a string onto a valid CPP name.
-as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'"
-
-# Sed expression to map a string onto a valid variable name.
-as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'"
-
-
-exec 6>&1
-## ----------------------------------- ##
-## Main body of $CONFIG_STATUS script. ##
-## ----------------------------------- ##
-_ASEOF
-test $as_write_fail = 0 && chmod +x $CONFIG_STATUS || ac_write_fail=1
-
-cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
-# Save the log message, to keep $0 and so on meaningful, and to
-# report actual input values of CONFIG_FILES etc. instead of their
-# values after options handling.
-ac_log="
-This file was extended by bash $as_me 4.2-maint, which was
-generated by GNU Autoconf 2.68.  Invocation command line was
-
-  CONFIG_FILES    = $CONFIG_FILES
-  CONFIG_HEADERS  = $CONFIG_HEADERS
-  CONFIG_LINKS    = $CONFIG_LINKS
-  CONFIG_COMMANDS = $CONFIG_COMMANDS
-  $ $0 $@
-
-on `(hostname || uname -n) 2>/dev/null | sed 1q`
-"
-
-_ACEOF
-
-case $ac_config_files in *"
-"*) set x $ac_config_files; shift; ac_config_files=$*;;
-esac
-
-case $ac_config_headers in *"
-"*) set x $ac_config_headers; shift; ac_config_headers=$*;;
-esac
-
-
-cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
-# Files that config.status was made for.
-config_files="$ac_config_files"
-config_headers="$ac_config_headers"
-config_commands="$ac_config_commands"
-
-_ACEOF
-
-cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
-ac_cs_usage="\
-\`$as_me' instantiates files and other configuration actions
-from templates according to the current configuration.  Unless the files
-and actions are specified as TAGs, all are instantiated by default.
-
-Usage: $0 [OPTION]... [TAG]...
-
-  -h, --help       print this help, then exit
-  -V, --version    print version number and configuration settings, then exit
-      --config     print configuration, then exit
-  -q, --quiet, --silent
-                   do not print progress messages
-  -d, --debug      don't remove temporary files
-      --recheck    update $as_me by reconfiguring in the same conditions
-      --file=FILE[:TEMPLATE] 
-                   instantiate the configuration file FILE
-      --header=FILE[:TEMPLATE] 
-                   instantiate the configuration header FILE
-
-Configuration files:
-$config_files
-
-Configuration headers:
-$config_headers
-
-Configuration commands:
-$config_commands
-
-Report bugs to <bug-bash@gnu.org>."
-
-_ACEOF
-cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
-ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
-ac_cs_version="\\
-bash config.status 4.2-maint
-configured by $0, generated by GNU Autoconf 2.68,
-  with options \\"\$ac_cs_config\\"
-
-Copyright (C) 2010 Free Software Foundation, Inc.
-This config.status script is free software; the Free Software Foundation
-gives unlimited permission to copy, distribute and modify it."
-
-ac_pwd='$ac_pwd'
-srcdir='$srcdir'
-INSTALL='$INSTALL'
-test -n "\$AWK" || AWK=awk
-_ACEOF
-
-cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
-# The default lists apply if the user does not specify any file.
-ac_need_defaults=:
-while test $# != 0
-do
-  case $1 in
-  --*=?*)
-    ac_option=`expr "X$1" : 'X\([^=]*\)='`
-    ac_optarg=`expr "X$1" : 'X[^=]*=\(.*\)'`
-    ac_shift=:
-    ;;
-  --*=)
-    ac_option=`expr "X$1" : 'X\([^=]*\)='`
-    ac_optarg=
-    ac_shift=:
-    ;;
-  *)
-    ac_option=$1
-    ac_optarg=$2
-    ac_shift=shift
-    ;;
-  esac
-
-  case $ac_option in
-  # Handling of the options.
-  -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r)
-    ac_cs_recheck=: ;;
-  --version | --versio | --versi | --vers | --ver | --ve | --v | -V )
-    $as_echo "$ac_cs_version"; exit ;;
-  --config | --confi | --conf | --con | --co | --c )
-    $as_echo "$ac_cs_config"; exit ;;
-  --debug | --debu | --deb | --de | --d | -d )
-    debug=: ;;
-  --file | --fil | --fi | --f )
-    $ac_shift
-    case $ac_optarg in
-    *\'*) ac_optarg=`$as_echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;;
-    '') as_fn_error $? "missing file argument" ;;
-    esac
-    as_fn_append CONFIG_FILES " '$ac_optarg'"
-    ac_need_defaults=false;;
-  --header | --heade | --head | --hea )
-    $ac_shift
-    case $ac_optarg in
-    *\'*) ac_optarg=`$as_echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;;
-    esac
-    as_fn_append CONFIG_HEADERS " '$ac_optarg'"
-    ac_need_defaults=false;;
-  --he | --h)
-    # Conflict between --help and --header
-    as_fn_error $? "ambiguous option: \`$1'
-Try \`$0 --help' for more information.";;
-  --help | --hel | -h )
-    $as_echo "$ac_cs_usage"; exit ;;
-  -q | -quiet | --quiet | --quie | --qui | --qu | --q \
-  | -silent | --silent | --silen | --sile | --sil | --si | --s)
-    ac_cs_silent=: ;;
-
-  # This is an error.
-  -*) as_fn_error $? "unrecognized option: \`$1'
-Try \`$0 --help' for more information." ;;
-
-  *) as_fn_append ac_config_targets " $1"
-     ac_need_defaults=false ;;
-
-  esac
-  shift
-done
-
-ac_configure_extra_args=
-
-if $ac_cs_silent; then
-  exec 6>/dev/null
-  ac_configure_extra_args="$ac_configure_extra_args --silent"
-fi
-
-_ACEOF
-cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
-if \$ac_cs_recheck; then
-  set X '$SHELL' '$0' $ac_configure_args \$ac_configure_extra_args --no-create --no-recursion
-  shift
-  \$as_echo "running CONFIG_SHELL=$SHELL \$*" >&6
-  CONFIG_SHELL='$SHELL'
-  export CONFIG_SHELL
-  exec "\$@"
-fi
-
-_ACEOF
-cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
-exec 5>>config.log
-{
-  echo
-  sed 'h;s/./-/g;s/^.../@%:@@%:@ /;s/...$/ @%:@@%:@/;p;x;p;x' <<_ASBOX
-@%:@@%:@ Running $as_me. @%:@@%:@
-_ASBOX
-  $as_echo "$ac_log"
-} >&5
-
-_ACEOF
-cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
-#
-# INIT-COMMANDS
-#
-# Capture the value of obsolete ALL_LINGUAS because we need it to compute
-    # POFILES, GMOFILES, UPDATEPOFILES, DUMMYPOFILES, CATALOGS. But hide it
-    # from automake.
-    eval 'OBSOLETE_ALL_LINGUAS''="$ALL_LINGUAS"'
-    # Capture the value of LINGUAS because we need it to compute CATALOGS.
-    LINGUAS="${LINGUAS-%UNSET%}"
-   
-
-_ACEOF
-
-cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
-
-# Handling of arguments.
-for ac_config_target in $ac_config_targets
-do
-  case $ac_config_target in
-    "config.h") CONFIG_HEADERS="$CONFIG_HEADERS config.h" ;;
-    "default-1") CONFIG_COMMANDS="$CONFIG_COMMANDS default-1" ;;
-    "Makefile") CONFIG_FILES="$CONFIG_FILES Makefile" ;;
-    "builtins/Makefile") CONFIG_FILES="$CONFIG_FILES builtins/Makefile" ;;
-    "lib/readline/Makefile") CONFIG_FILES="$CONFIG_FILES lib/readline/Makefile" ;;
-    "lib/glob/Makefile") CONFIG_FILES="$CONFIG_FILES lib/glob/Makefile" ;;
-    "lib/intl/Makefile") CONFIG_FILES="$CONFIG_FILES lib/intl/Makefile" ;;
-    "lib/malloc/Makefile") CONFIG_FILES="$CONFIG_FILES lib/malloc/Makefile" ;;
-    "lib/sh/Makefile") CONFIG_FILES="$CONFIG_FILES lib/sh/Makefile" ;;
-    "lib/termcap/Makefile") CONFIG_FILES="$CONFIG_FILES lib/termcap/Makefile" ;;
-    "lib/tilde/Makefile") CONFIG_FILES="$CONFIG_FILES lib/tilde/Makefile" ;;
-    "doc/Makefile") CONFIG_FILES="$CONFIG_FILES doc/Makefile" ;;
-    "support/Makefile") CONFIG_FILES="$CONFIG_FILES support/Makefile" ;;
-    "po/Makefile.in") CONFIG_FILES="$CONFIG_FILES po/Makefile.in" ;;
-    "examples/loadables/Makefile") CONFIG_FILES="$CONFIG_FILES examples/loadables/Makefile" ;;
-    "examples/loadables/perl/Makefile") CONFIG_FILES="$CONFIG_FILES examples/loadables/perl/Makefile" ;;
-    "default") CONFIG_COMMANDS="$CONFIG_COMMANDS default" ;;
-
-  *) as_fn_error $? "invalid argument: \`$ac_config_target'" "$LINENO" 5;;
-  esac
-done
-
-
-# If the user did not use the arguments to specify the items to instantiate,
-# then the envvar interface is used.  Set only those that are not.
-# We use the long form for the default assignment because of an extremely
-# bizarre bug on SunOS 4.1.3.
-if $ac_need_defaults; then
-  test "${CONFIG_FILES+set}" = set || CONFIG_FILES=$config_files
-  test "${CONFIG_HEADERS+set}" = set || CONFIG_HEADERS=$config_headers
-  test "${CONFIG_COMMANDS+set}" = set || CONFIG_COMMANDS=$config_commands
-fi
-
-# Have a temporary directory for convenience.  Make it in the build tree
-# simply because there is no reason against having it here, and in addition,
-# creating and moving files from /tmp can sometimes cause problems.
-# Hook for its removal unless debugging.
-# Note that there is a small window in which the directory will not be cleaned:
-# after its creation but before its name has been assigned to `$tmp'.
-$debug ||
-{
-  tmp= ac_tmp=
-  trap 'exit_status=$?
-  : "${ac_tmp:=$tmp}"
-  { test ! -d "$ac_tmp" || rm -fr "$ac_tmp"; } && exit $exit_status
-' 0
-  trap 'as_fn_exit 1' 1 2 13 15
-}
-# Create a (secure) tmp directory for tmp files.
-
-{
-  tmp=`(umask 077 && mktemp -d "./confXXXXXX") 2>/dev/null` &&
-  test -d "$tmp"
-}  ||
-{
-  tmp=./conf$$-$RANDOM
-  (umask 077 && mkdir "$tmp")
-} || as_fn_error $? "cannot create a temporary directory in ." "$LINENO" 5
-ac_tmp=$tmp
-
-# Set up the scripts for CONFIG_FILES section.
-# No need to generate them if there are no CONFIG_FILES.
-# This happens for instance with `./config.status config.h'.
-if test -n "$CONFIG_FILES"; then
-
-
-ac_cr=`echo X | tr X '\015'`
-# On cygwin, bash can eat \r inside `` if the user requested igncr.
-# But we know of no other shell where ac_cr would be empty at this
-# point, so we can use a bashism as a fallback.
-if test "x$ac_cr" = x; then
-  eval ac_cr=\$\'\\r\'
-fi
-ac_cs_awk_cr=`$AWK 'BEGIN { print "a\rb" }' </dev/null 2>/dev/null`
-if test "$ac_cs_awk_cr" = "a${ac_cr}b"; then
-  ac_cs_awk_cr='\\r'
-else
-  ac_cs_awk_cr=$ac_cr
-fi
-
-echo 'BEGIN {' >"$ac_tmp/subs1.awk" &&
-_ACEOF
-
-
-{
-  echo "cat >conf$$subs.awk <<_ACEOF" &&
-  echo "$ac_subst_vars" | sed 's/.*/&!$&$ac_delim/' &&
-  echo "_ACEOF"
-} >conf$$subs.sh ||
-  as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5
-ac_delim_num=`echo "$ac_subst_vars" | grep -c '^'`
-ac_delim='%!_!# '
-for ac_last_try in false false false false false :; do
-  . ./conf$$subs.sh ||
-    as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5
-
-  ac_delim_n=`sed -n "s/.*$ac_delim\$/X/p" conf$$subs.awk | grep -c X`
-  if test $ac_delim_n = $ac_delim_num; then
-    break
-  elif $ac_last_try; then
-    as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5
-  else
-    ac_delim="$ac_delim!$ac_delim _$ac_delim!! "
-  fi
-done
-rm -f conf$$subs.sh
-
-cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
-cat >>"\$ac_tmp/subs1.awk" <<\\_ACAWK &&
-_ACEOF
-sed -n '
-h
-s/^/S["/; s/!.*/"]=/
-p
-g
-s/^[^!]*!//
-:repl
-t repl
-s/'"$ac_delim"'$//
-t delim
-:nl
-h
-s/\(.\{148\}\)..*/\1/
-t more1
-s/["\\]/\\&/g; s/^/"/; s/$/\\n"\\/
-p
-n
-b repl
-:more1
-s/["\\]/\\&/g; s/^/"/; s/$/"\\/
-p
-g
-s/.\{148\}//
-t nl
-:delim
-h
-s/\(.\{148\}\)..*/\1/
-t more2
-s/["\\]/\\&/g; s/^/"/; s/$/"/
-p
-b
-:more2
-s/["\\]/\\&/g; s/^/"/; s/$/"\\/
-p
-g
-s/.\{148\}//
-t delim
-' <conf$$subs.awk | sed '
-/^[^""]/{
-  N
-  s/\n//
-}
-' >>$CONFIG_STATUS || ac_write_fail=1
-rm -f conf$$subs.awk
-cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
-_ACAWK
-cat >>"\$ac_tmp/subs1.awk" <<_ACAWK &&
-  for (key in S) S_is_set[key] = 1
-  FS = "\a"
-
-}
-{
-  line = $ 0
-  nfields = split(line, field, "@")
-  substed = 0
-  len = length(field[1])
-  for (i = 2; i < nfields; i++) {
-    key = field[i]
-    keylen = length(key)
-    if (S_is_set[key]) {
-      value = S[key]
-      line = substr(line, 1, len) "" value "" substr(line, len + keylen + 3)
-      len += length(value) + length(field[++i])
-      substed = 1
-    } else
-      len += 1 + keylen
-  }
-
-  print line
-}
-
-_ACAWK
-_ACEOF
-cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
-if sed "s/$ac_cr//" < /dev/null > /dev/null 2>&1; then
-  sed "s/$ac_cr\$//; s/$ac_cr/$ac_cs_awk_cr/g"
-else
-  cat
-fi < "$ac_tmp/subs1.awk" > "$ac_tmp/subs.awk" \
-  || as_fn_error $? "could not setup config files machinery" "$LINENO" 5
-_ACEOF
-
-# VPATH may cause trouble with some makes, so we remove sole $(srcdir),
-# ${srcdir} and @srcdir@ entries from VPATH if srcdir is ".", strip leading and
-# trailing colons and then remove the whole line if VPATH becomes empty
-# (actually we leave an empty line to preserve line numbers).
-if test "x$srcdir" = x.; then
-  ac_vpsub='/^[         ]*VPATH[        ]*=[    ]*/{
-h
-s///
-s/^/:/
-s/[     ]*$/:/
-s/:\$(srcdir):/:/g
-s/:\${srcdir}:/:/g
-s/:@srcdir@:/:/g
-s/^:*//
-s/:*$//
-x
-s/\(=[  ]*\).*/\1/
-G
-s/\n//
-s/^[^=]*=[      ]*$//
-}'
-fi
-
-cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
-fi # test -n "$CONFIG_FILES"
-
-# Set up the scripts for CONFIG_HEADERS section.
-# No need to generate them if there are no CONFIG_HEADERS.
-# This happens for instance with `./config.status Makefile'.
-if test -n "$CONFIG_HEADERS"; then
-cat >"$ac_tmp/defines.awk" <<\_ACAWK ||
-BEGIN {
-_ACEOF
-
-# Transform confdefs.h into an awk script `defines.awk', embedded as
-# here-document in config.status, that substitutes the proper values into
-# config.h.in to produce config.h.
-
-# Create a delimiter string that does not exist in confdefs.h, to ease
-# handling of long lines.
-ac_delim='%!_!# '
-for ac_last_try in false false :; do
-  ac_tt=`sed -n "/$ac_delim/p" confdefs.h`
-  if test -z "$ac_tt"; then
-    break
-  elif $ac_last_try; then
-    as_fn_error $? "could not make $CONFIG_HEADERS" "$LINENO" 5
-  else
-    ac_delim="$ac_delim!$ac_delim _$ac_delim!! "
-  fi
-done
-
-# For the awk script, D is an array of macro values keyed by name,
-# likewise P contains macro parameters if any.  Preserve backslash
-# newline sequences.
-
-ac_word_re=[_$as_cr_Letters][_$as_cr_alnum]*
-sed -n '
-s/.\{148\}/&'"$ac_delim"'/g
-t rset
-:rset
-s/^[    ]*#[    ]*define[       ][      ]*/ /
-t def
-d
-:def
-s/\\$//
-t bsnl
-s/["\\]/\\&/g
-s/^ \('"$ac_word_re"'\)\(([^()]*)\)[    ]*\(.*\)/P["\1"]="\2"\
-D["\1"]=" \3"/p
-s/^ \('"$ac_word_re"'\)[        ]*\(.*\)/D["\1"]=" \2"/p
-d
-:bsnl
-s/["\\]/\\&/g
-s/^ \('"$ac_word_re"'\)\(([^()]*)\)[    ]*\(.*\)/P["\1"]="\2"\
-D["\1"]=" \3\\\\\\n"\\/p
-t cont
-s/^ \('"$ac_word_re"'\)[        ]*\(.*\)/D["\1"]=" \2\\\\\\n"\\/p
-t cont
-d
-:cont
-n
-s/.\{148\}/&'"$ac_delim"'/g
-t clear
-:clear
-s/\\$//
-t bsnlc
-s/["\\]/\\&/g; s/^/"/; s/$/"/p
-d
-:bsnlc
-s/["\\]/\\&/g; s/^/"/; s/$/\\\\\\n"\\/p
-b cont
-' <confdefs.h | sed '
-s/'"$ac_delim"'/"\\\
-"/g' >>$CONFIG_STATUS || ac_write_fail=1
-
-cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
-  for (key in D) D_is_set[key] = 1
-  FS = "\a"
-}
-/^[\t ]*#[\t ]*(define|undef)[\t ]+$ac_word_re([\t (]|\$)/ {
-  line = \$ 0
-  split(line, arg, " ")
-  if (arg[1] == "#") {
-    defundef = arg[2]
-    mac1 = arg[3]
-  } else {
-    defundef = substr(arg[1], 2)
-    mac1 = arg[2]
-  }
-  split(mac1, mac2, "(") #)
-  macro = mac2[1]
-  prefix = substr(line, 1, index(line, defundef) - 1)
-  if (D_is_set[macro]) {
-    # Preserve the white space surrounding the "#".
-    print prefix "define", macro P[macro] D[macro]
-    next
-  } else {
-    # Replace #undef with comments.  This is necessary, for example,
-    # in the case of _POSIX_SOURCE, which is predefined and required
-    # on some systems where configure will not decide to define it.
-    if (defundef == "undef") {
-      print "/*", prefix defundef, macro, "*/"
-      next
-    }
-  }
-}
-{ print }
-_ACAWK
-_ACEOF
-cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
-  as_fn_error $? "could not setup config headers machinery" "$LINENO" 5
-fi # test -n "$CONFIG_HEADERS"
-
-
-eval set X "  :F $CONFIG_FILES  :H $CONFIG_HEADERS    :C $CONFIG_COMMANDS"
-shift
-for ac_tag
-do
-  case $ac_tag in
-  :[FHLC]) ac_mode=$ac_tag; continue;;
-  esac
-  case $ac_mode$ac_tag in
-  :[FHL]*:*);;
-  :L* | :C*:*) as_fn_error $? "invalid tag \`$ac_tag'" "$LINENO" 5;;
-  :[FH]-) ac_tag=-:-;;
-  :[FH]*) ac_tag=$ac_tag:$ac_tag.in;;
-  esac
-  ac_save_IFS=$IFS
-  IFS=:
-  set x $ac_tag
-  IFS=$ac_save_IFS
-  shift
-  ac_file=$1
-  shift
-
-  case $ac_mode in
-  :L) ac_source=$1;;
-  :[FH])
-    ac_file_inputs=
-    for ac_f
-    do
-      case $ac_f in
-      -) ac_f="$ac_tmp/stdin";;
-      *) # Look for the file first in the build tree, then in the source tree
-        # (if the path is not absolute).  The absolute path cannot be DOS-style,
-        # because $ac_f cannot contain `:'.
-        test -f "$ac_f" ||
-          case $ac_f in
-          [\\/$]*) false;;
-          *) test -f "$srcdir/$ac_f" && ac_f="$srcdir/$ac_f";;
-          esac ||
-          as_fn_error 1 "cannot find input file: \`$ac_f'" "$LINENO" 5;;
-      esac
-      case $ac_f in *\'*) ac_f=`$as_echo "$ac_f" | sed "s/'/'\\\\\\\\''/g"`;; esac
-      as_fn_append ac_file_inputs " '$ac_f'"
-    done
-
-    # Let's still pretend it is `configure' which instantiates (i.e., don't
-    # use $as_me), people would be surprised to read:
-    #    /* config.h.  Generated by config.status.  */
-    configure_input='Generated from '`
-         $as_echo "$*" | sed 's|^[^:]*/||;s|:[^:]*/|, |g'
-       `' by configure.'
-    if test x"$ac_file" != x-; then
-      configure_input="$ac_file.  $configure_input"
-      { $as_echo "$as_me:${as_lineno-$LINENO}: creating $ac_file" >&5
-$as_echo "$as_me: creating $ac_file" >&6;}
-    fi
-    # Neutralize special characters interpreted by sed in replacement strings.
-    case $configure_input in #(
-    *\&* | *\|* | *\\* )
-       ac_sed_conf_input=`$as_echo "$configure_input" |
-       sed 's/[\\\\&|]/\\\\&/g'`;; #(
-    *) ac_sed_conf_input=$configure_input;;
-    esac
-
-    case $ac_tag in
-    *:-:* | *:-) cat >"$ac_tmp/stdin" \
-      || as_fn_error $? "could not create $ac_file" "$LINENO" 5 ;;
-    esac
-    ;;
-  esac
-
-  ac_dir=`$as_dirname -- "$ac_file" ||
-$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
-        X"$ac_file" : 'X\(//\)[^/]' \| \
-        X"$ac_file" : 'X\(//\)$' \| \
-        X"$ac_file" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X"$ac_file" |
-    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
-           s//\1/
-           q
-         }
-         /^X\(\/\/\)[^/].*/{
-           s//\1/
-           q
-         }
-         /^X\(\/\/\)$/{
-           s//\1/
-           q
-         }
-         /^X\(\/\).*/{
-           s//\1/
-           q
-         }
-         s/.*/./; q'`
-  as_dir="$ac_dir"; as_fn_mkdir_p
-  ac_builddir=.
-
-case "$ac_dir" in
-.) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;;
-*)
-  ac_dir_suffix=/`$as_echo "$ac_dir" | sed 's|^\.[\\/]||'`
-  # A ".." for each directory in $ac_dir_suffix.
-  ac_top_builddir_sub=`$as_echo "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'`
-  case $ac_top_builddir_sub in
-  "") ac_top_builddir_sub=. ac_top_build_prefix= ;;
-  *)  ac_top_build_prefix=$ac_top_builddir_sub/ ;;
-  esac ;;
-esac
-ac_abs_top_builddir=$ac_pwd
-ac_abs_builddir=$ac_pwd$ac_dir_suffix
-# for backward compatibility:
-ac_top_builddir=$ac_top_build_prefix
-
-case $srcdir in
-  .)  # We are building in place.
-    ac_srcdir=.
-    ac_top_srcdir=$ac_top_builddir_sub
-    ac_abs_top_srcdir=$ac_pwd ;;
-  [\\/]* | ?:[\\/]* )  # Absolute name.
-    ac_srcdir=$srcdir$ac_dir_suffix;
-    ac_top_srcdir=$srcdir
-    ac_abs_top_srcdir=$srcdir ;;
-  *) # Relative name.
-    ac_srcdir=$ac_top_build_prefix$srcdir$ac_dir_suffix
-    ac_top_srcdir=$ac_top_build_prefix$srcdir
-    ac_abs_top_srcdir=$ac_pwd/$srcdir ;;
-esac
-ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix
-
-
-  case $ac_mode in
-  :F)
-  #
-  # CONFIG_FILE
-  #
-
-  case $INSTALL in
-  [\\/$]* | ?:[\\/]* ) ac_INSTALL=$INSTALL ;;
-  *) ac_INSTALL=$ac_top_build_prefix$INSTALL ;;
-  esac
-_ACEOF
-
-cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
-# If the template does not know about datarootdir, expand it.
-# FIXME: This hack should be removed a few years after 2.60.
-ac_datarootdir_hack=; ac_datarootdir_seen=
-ac_sed_dataroot='
-/datarootdir/ {
-  p
-  q
-}
-/@datadir@/p
-/@docdir@/p
-/@infodir@/p
-/@localedir@/p
-/@mandir@/p'
-case `eval "sed -n \"\$ac_sed_dataroot\" $ac_file_inputs"` in
-*datarootdir*) ac_datarootdir_seen=yes;;
-*@datadir@*|*@docdir@*|*@infodir@*|*@localedir@*|*@mandir@*)
-  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&5
-$as_echo "$as_me: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&2;}
-_ACEOF
-cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
-  ac_datarootdir_hack='
-  s&@datadir@&$datadir&g
-  s&@docdir@&$docdir&g
-  s&@infodir@&$infodir&g
-  s&@localedir@&$localedir&g
-  s&@mandir@&$mandir&g
-  s&\\\${datarootdir}&$datarootdir&g' ;;
-esac
-_ACEOF
-
-# Neutralize VPATH when `$srcdir' = `.'.
-# Shell code in configure.ac might set extrasub.
-# FIXME: do we really want to maintain this feature?
-cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
-ac_sed_extra="$ac_vpsub
-$extrasub
-_ACEOF
-cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
-:t
-/@[a-zA-Z_][a-zA-Z_0-9]*@/!b
-s|@configure_input@|$ac_sed_conf_input|;t t
-s&@top_builddir@&$ac_top_builddir_sub&;t t
-s&@top_build_prefix@&$ac_top_build_prefix&;t t
-s&@srcdir@&$ac_srcdir&;t t
-s&@abs_srcdir@&$ac_abs_srcdir&;t t
-s&@top_srcdir@&$ac_top_srcdir&;t t
-s&@abs_top_srcdir@&$ac_abs_top_srcdir&;t t
-s&@builddir@&$ac_builddir&;t t
-s&@abs_builddir@&$ac_abs_builddir&;t t
-s&@abs_top_builddir@&$ac_abs_top_builddir&;t t
-s&@INSTALL@&$ac_INSTALL&;t t
-$ac_datarootdir_hack
-"
-eval sed \"\$ac_sed_extra\" "$ac_file_inputs" | $AWK -f "$ac_tmp/subs.awk" \
-  >$ac_tmp/out || as_fn_error $? "could not create $ac_file" "$LINENO" 5
-
-test -z "$ac_datarootdir_hack$ac_datarootdir_seen" &&
-  { ac_out=`sed -n '/\${datarootdir}/p' "$ac_tmp/out"`; test -n "$ac_out"; } &&
-  { ac_out=`sed -n '/^[         ]*datarootdir[  ]*:*=/p' \
-      "$ac_tmp/out"`; test -z "$ac_out"; } &&
-  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file contains a reference to the variable \`datarootdir'
-which seems to be undefined.  Please make sure it is defined" >&5
-$as_echo "$as_me: WARNING: $ac_file contains a reference to the variable \`datarootdir'
-which seems to be undefined.  Please make sure it is defined" >&2;}
-
-  rm -f "$ac_tmp/stdin"
-  case $ac_file in
-  -) cat "$ac_tmp/out" && rm -f "$ac_tmp/out";;
-  *) rm -f "$ac_file" && mv "$ac_tmp/out" "$ac_file";;
-  esac \
-  || as_fn_error $? "could not create $ac_file" "$LINENO" 5
- ;;
-  :H)
-  #
-  # CONFIG_HEADER
-  #
-  if test x"$ac_file" != x-; then
-    {
-      $as_echo "/* $configure_input  */" \
-      && eval '$AWK -f "$ac_tmp/defines.awk"' "$ac_file_inputs"
-    } >"$ac_tmp/config.h" \
-      || as_fn_error $? "could not create $ac_file" "$LINENO" 5
-    if diff "$ac_file" "$ac_tmp/config.h" >/dev/null 2>&1; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: $ac_file is unchanged" >&5
-$as_echo "$as_me: $ac_file is unchanged" >&6;}
-    else
-      rm -f "$ac_file"
-      mv "$ac_tmp/config.h" "$ac_file" \
-       || as_fn_error $? "could not create $ac_file" "$LINENO" 5
-    fi
-  else
-    $as_echo "/* $configure_input  */" \
-      && eval '$AWK -f "$ac_tmp/defines.awk"' "$ac_file_inputs" \
-      || as_fn_error $? "could not create -" "$LINENO" 5
-  fi
- ;;
-  
-  :C)  { $as_echo "$as_me:${as_lineno-$LINENO}: executing $ac_file commands" >&5
-$as_echo "$as_me: executing $ac_file commands" >&6;}
- ;;
-  esac
-
-
-  case $ac_file$ac_mode in
-    "default-1":C) 
-    for ac_file in $CONFIG_FILES; do
-      # Support "outfile[:infile[:infile...]]"
-      case "$ac_file" in
-        *:*) ac_file=`echo "$ac_file"|sed 's%:.*%%'` ;;
-      esac
-      # PO directories have a Makefile.in generated from Makefile.in.in.
-      case "$ac_file" in */Makefile.in)
-        # Adjust a relative srcdir.
-        ac_dir=`echo "$ac_file"|sed 's%/[^/][^/]*$%%'`
-        ac_dir_suffix="/`echo "$ac_dir"|sed 's%^\./%%'`"
-        ac_dots=`echo "$ac_dir_suffix"|sed 's%/[^/]*%../%g'`
-        # In autoconf-2.13 it is called $ac_given_srcdir.
-        # In autoconf-2.50 it is called $srcdir.
-        test -n "$ac_given_srcdir" || ac_given_srcdir="$srcdir"
-        case "$ac_given_srcdir" in
-          .)  top_srcdir=`echo $ac_dots|sed 's%/$%%'` ;;
-          /*) top_srcdir="$ac_given_srcdir" ;;
-          *)  top_srcdir="$ac_dots$ac_given_srcdir" ;;
-        esac
-        if test -f "$ac_given_srcdir/$ac_dir/POTFILES.in"; then
-          rm -f "$ac_dir/POTFILES"
-          test -n "$as_me" && echo "$as_me: creating $ac_dir/POTFILES" || echo "creating $ac_dir/POTFILES"
-          cat "$ac_given_srcdir/$ac_dir/POTFILES.in" | sed -e "/^#/d" -e "/^[  ]*\$/d" -e "s,.*,     $top_srcdir/& \\\\," | sed -e "\$s/\(.*\) \\\\/\1/" > "$ac_dir/POTFILES"
-          POMAKEFILEDEPS="POTFILES.in"
-          # ALL_LINGUAS, POFILES, GMOFILES, UPDATEPOFILES, DUMMYPOFILES depend
-          # on $ac_dir but don't depend on user-specified configuration
-          # parameters.
-          if test -f "$ac_given_srcdir/$ac_dir/LINGUAS"; then
-            # The LINGUAS file contains the set of available languages.
-            if test -n "$OBSOLETE_ALL_LINGUAS"; then
-              test -n "$as_me" && echo "$as_me: setting ALL_LINGUAS in configure.in is obsolete" || echo "setting ALL_LINGUAS in configure.in is obsolete"
-            fi
-            ALL_LINGUAS_=`sed -e "/^#/d" "$ac_given_srcdir/$ac_dir/LINGUAS"`
-            # Hide the ALL_LINGUAS assigment from automake.
-            eval 'ALL_LINGUAS''=$ALL_LINGUAS_'
-            POMAKEFILEDEPS="$POMAKEFILEDEPS LINGUAS"
-          else
-            # The set of available languages was given in configure.in.
-            eval 'ALL_LINGUAS''=$OBSOLETE_ALL_LINGUAS'
-          fi
-          case "$ac_given_srcdir" in
-            .) srcdirpre= ;;
-            *) srcdirpre='$(srcdir)/' ;;
-          esac
-          POFILES=
-          GMOFILES=
-          UPDATEPOFILES=
-          DUMMYPOFILES=
-          for lang in $ALL_LINGUAS; do
-            POFILES="$POFILES $srcdirpre$lang.po"
-            GMOFILES="$GMOFILES $srcdirpre$lang.gmo"
-            UPDATEPOFILES="$UPDATEPOFILES $lang.po-update"
-            DUMMYPOFILES="$DUMMYPOFILES $lang.nop"
-          done
-          # CATALOGS depends on both $ac_dir and the user's LINGUAS
-          # environment variable.
-          INST_LINGUAS=
-          if test -n "$ALL_LINGUAS"; then
-            for presentlang in $ALL_LINGUAS; do
-              useit=no
-              if test "%UNSET%" != "$LINGUAS"; then
-                desiredlanguages="$LINGUAS"
-              else
-                desiredlanguages="$ALL_LINGUAS"
-              fi
-              for desiredlang in $desiredlanguages; do
-                # Use the presentlang catalog if desiredlang is
-                #   a. equal to presentlang, or
-                #   b. a variant of presentlang (because in this case,
-                #      presentlang can be used as a fallback for messages
-                #      which are not translated in the desiredlang catalog).
-                case "$desiredlang" in
-                  "$presentlang"*) useit=yes;;
-                esac
-              done
-              if test $useit = yes; then
-                INST_LINGUAS="$INST_LINGUAS $presentlang"
-              fi
-            done
-          fi
-          CATALOGS=
-          if test -n "$INST_LINGUAS"; then
-            for lang in $INST_LINGUAS; do
-              CATALOGS="$CATALOGS $lang.gmo"
-            done
-          fi
-          test -n "$as_me" && echo "$as_me: creating $ac_dir/Makefile" || echo "creating $ac_dir/Makefile"
-          sed -e "/^POTFILES =/r $ac_dir/POTFILES" -e "/^# Makevars/r $ac_given_srcdir/$ac_dir/Makevars" -e "s|@POFILES@|$POFILES|g" -e "s|@GMOFILES@|$GMOFILES|g" -e "s|@UPDATEPOFILES@|$UPDATEPOFILES|g" -e "s|@DUMMYPOFILES@|$DUMMYPOFILES|g" -e "s|@CATALOGS@|$CATALOGS|g" -e "s|@POMAKEFILEDEPS@|$POMAKEFILEDEPS|g" "$ac_dir/Makefile.in" > "$ac_dir/Makefile"
-          for f in "$ac_given_srcdir/$ac_dir"/Rules-*; do
-            if test -f "$f"; then
-              case "$f" in
-                *.orig | *.bak | *~) ;;
-                *) cat "$f" >> "$ac_dir/Makefile" ;;
-              esac
-            fi
-          done
-        fi
-        ;;
-      esac
-    done ;;
-    "default":C) 
-# Makefile uses this timestamp file to record whether config.h is up to date.
-echo timestamp > stamp-h
- ;;
-
-  esac
-done # for ac_tag
-
-
-as_fn_exit 0
-_ACEOF
-ac_clean_files=$ac_clean_files_save
-
-test $ac_write_fail = 0 ||
-  as_fn_error $? "write failure creating $CONFIG_STATUS" "$LINENO" 5
-
-
-# configure is writing to config.log, and then calls config.status.
-# config.status does its own redirection, appending to config.log.
-# Unfortunately, on DOS this fails, as config.log is still kept open
-# by configure, so config.status won't be able to write to it; its
-# output is simply discarded.  So we exec the FD to /dev/null,
-# effectively closing config.log, so it can be properly (re)opened and
-# appended to by config.status.  When coming back to configure, we
-# need to make the FD available again.
-if test "$no_create" != yes; then
-  ac_cs_success=:
-  ac_config_status_args=
-  test "$silent" = yes &&
-    ac_config_status_args="$ac_config_status_args --quiet"
-  exec 5>/dev/null
-  $SHELL $CONFIG_STATUS $ac_config_status_args || ac_cs_success=false
-  exec 5>>config.log
-  # Use ||, not &&, to avoid exiting from the if with $? = 1, which
-  # would make configure fail if this is the last instruction.
-  $ac_cs_success || as_fn_exit 1
-fi
-if test -n "$ac_unrecognized_opts" && test "$enable_option_checking" != no; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: unrecognized options: $ac_unrecognized_opts" >&5
-$as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2;}
-fi
-
diff --git a/autom4te.cache/output.2 b/autom4te.cache/output.2
deleted file mode 100644 (file)
index 5a2d647..0000000
+++ /dev/null
@@ -1,31665 +0,0 @@
-@%:@! /bin/sh
-@%:@ From configure.in for Bash 4.2, version 4.048.
-@%:@ Guess values for system-dependent variables and create Makefiles.
-@%:@ Generated by GNU Autoconf 2.59 for bash 4.2-maint.
-@%:@
-@%:@ Report bugs to <bug-bash@gnu.org>.
-@%:@ 
-@%:@ Copyright (C) 2003 Free Software Foundation, Inc.
-@%:@ This configure script is free software; the Free Software Foundation
-@%:@ gives unlimited permission to copy, distribute and modify it.
-## --------------------- ##
-## M4sh Initialization.  ##
-## --------------------- ##
-
-# Be Bourne compatible
-if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then
-  emulate sh
-  NULLCMD=:
-  # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which
-  # is contrary to our usage.  Disable this feature.
-  alias -g '${1+"$@"}'='"$@"'
-elif test -n "${BASH_VERSION+set}" && (set -o posix) >/dev/null 2>&1; then
-  set -o posix
-fi
-DUALCASE=1; export DUALCASE # for MKS sh
-
-# Support unset when possible.
-if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then
-  as_unset=unset
-else
-  as_unset=false
-fi
-
-
-# Work around bugs in pre-3.0 UWIN ksh.
-$as_unset ENV MAIL MAILPATH
-PS1='$ '
-PS2='> '
-PS4='+ '
-
-# NLS nuisances.
-for as_var in \
-  LANG LANGUAGE LC_ADDRESS LC_ALL LC_COLLATE LC_CTYPE LC_IDENTIFICATION \
-  LC_MEASUREMENT LC_MESSAGES LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER \
-  LC_TELEPHONE LC_TIME
-do
-  if (set +x; test -z "`(eval $as_var=C; export $as_var) 2>&1`"); then
-    eval $as_var=C; export $as_var
-  else
-    $as_unset $as_var
-  fi
-done
-
-# Required to use basename.
-if expr a : '\(a\)' >/dev/null 2>&1; then
-  as_expr=expr
-else
-  as_expr=false
-fi
-
-if (basename /) >/dev/null 2>&1 && test "X`basename / 2>&1`" = "X/"; then
-  as_basename=basename
-else
-  as_basename=false
-fi
-
-
-# Name of the executable.
-as_me=`$as_basename "$0" ||
-$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \
-        X"$0" : 'X\(//\)$' \| \
-        X"$0" : 'X\(/\)$' \| \
-        .     : '\(.\)' 2>/dev/null ||
-echo X/"$0" |
-    sed '/^.*\/\([^/][^/]*\)\/*$/{ s//\1/; q; }
-         /^X\/\(\/\/\)$/{ s//\1/; q; }
-         /^X\/\(\/\).*/{ s//\1/; q; }
-         s/.*/./; q'`
-
-
-# PATH needs CR, and LINENO needs CR and PATH.
-# Avoid depending upon Character Ranges.
-as_cr_letters='abcdefghijklmnopqrstuvwxyz'
-as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ'
-as_cr_Letters=$as_cr_letters$as_cr_LETTERS
-as_cr_digits='0123456789'
-as_cr_alnum=$as_cr_Letters$as_cr_digits
-
-# The user is always right.
-if test "${PATH_SEPARATOR+set}" != set; then
-  echo "#! /bin/sh" >conf$$.sh
-  echo  "exit 0"   >>conf$$.sh
-  chmod +x conf$$.sh
-  if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then
-    PATH_SEPARATOR=';'
-  else
-    PATH_SEPARATOR=:
-  fi
-  rm -f conf$$.sh
-fi
-
-
-  as_lineno_1=$LINENO
-  as_lineno_2=$LINENO
-  as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null`
-  test "x$as_lineno_1" != "x$as_lineno_2" &&
-  test "x$as_lineno_3"  = "x$as_lineno_2"  || {
-  # Find who we are.  Look in the path if we contain no path at all
-  # relative or not.
-  case $0 in
-    *[\\/]* ) as_myself=$0 ;;
-    *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-  test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break
-done
-
-       ;;
-  esac
-  # We did not find ourselves, most probably we were run as `sh COMMAND'
-  # in which case we are not to be found in the path.
-  if test "x$as_myself" = x; then
-    as_myself=$0
-  fi
-  if test ! -f "$as_myself"; then
-    { echo "$as_me: error: cannot find myself; rerun with an absolute path" >&2
-   { (exit 1); exit 1; }; }
-  fi
-  case $CONFIG_SHELL in
-  '')
-    as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-  for as_base in sh bash ksh sh5; do
-        case $as_dir in
-        /*)
-          if ("$as_dir/$as_base" -c '
-  as_lineno_1=$LINENO
-  as_lineno_2=$LINENO
-  as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null`
-  test "x$as_lineno_1" != "x$as_lineno_2" &&
-  test "x$as_lineno_3"  = "x$as_lineno_2" ') 2>/dev/null; then
-            $as_unset BASH_ENV || test "${BASH_ENV+set}" != set || { BASH_ENV=; export BASH_ENV; }
-            $as_unset ENV || test "${ENV+set}" != set || { ENV=; export ENV; }
-            CONFIG_SHELL=$as_dir/$as_base
-            export CONFIG_SHELL
-            exec "$CONFIG_SHELL" "$0" ${1+"$@"}
-          fi;;
-        esac
-       done
-done
-;;
-  esac
-
-  # Create $as_me.lineno as a copy of $as_myself, but with $LINENO
-  # uniformly replaced by the line number.  The first 'sed' inserts a
-  # line-number line before each line; the second 'sed' does the real
-  # work.  The second script uses 'N' to pair each line-number line
-  # with the numbered line, and appends trailing '-' during
-  # substitution so that $LINENO is not a special case at line end.
-  # (Raja R Harinath suggested sed '=', and Paul Eggert wrote the
-  # second 'sed' script.  Blame Lee E. McMahon for sed's syntax.  :-)
-  sed '=' <$as_myself |
-    sed '
-      N
-      s,$,-,
-      : loop
-      s,^\(['$as_cr_digits']*\)\(.*\)[$]LINENO\([^'$as_cr_alnum'_]\),\1\2\1\3,
-      t loop
-      s,-$,,
-      s,^['$as_cr_digits']*\n,,
-    ' >$as_me.lineno &&
-  chmod +x $as_me.lineno ||
-    { echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2
-   { (exit 1); exit 1; }; }
-
-  # Don't try to exec as it changes $[0], causing all sort of problems
-  # (the dirname of $[0] is not the place where we might find the
-  # original and so on.  Autoconf is especially sensible to this).
-  . ./$as_me.lineno
-  # Exit status is that of the last command.
-  exit
-}
-
-
-case `echo "testing\c"; echo 1,2,3`,`echo -n testing; echo 1,2,3` in
-  *c*,-n*) ECHO_N= ECHO_C='
-' ECHO_T='     ' ;;
-  *c*,*  ) ECHO_N=-n ECHO_C= ECHO_T= ;;
-  *)       ECHO_N= ECHO_C='\c' ECHO_T= ;;
-esac
-
-if expr a : '\(a\)' >/dev/null 2>&1; then
-  as_expr=expr
-else
-  as_expr=false
-fi
-
-rm -f conf$$ conf$$.exe conf$$.file
-echo >conf$$.file
-if ln -s conf$$.file conf$$ 2>/dev/null; then
-  # We could just check for DJGPP; but this test a) works b) is more generic
-  # and c) will remain valid once DJGPP supports symlinks (DJGPP 2.04).
-  if test -f conf$$.exe; then
-    # Don't use ln at all; we don't have any links
-    as_ln_s='cp -p'
-  else
-    as_ln_s='ln -s'
-  fi
-elif ln conf$$.file conf$$ 2>/dev/null; then
-  as_ln_s=ln
-else
-  as_ln_s='cp -p'
-fi
-rm -f conf$$ conf$$.exe conf$$.file
-
-if mkdir -p . 2>/dev/null; then
-  as_mkdir_p=:
-else
-  test -d ./-p && rmdir ./-p
-  as_mkdir_p=false
-fi
-
-as_executable_p="test -f"
-
-# Sed expression to map a string onto a valid CPP name.
-as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'"
-
-# Sed expression to map a string onto a valid variable name.
-as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'"
-
-
-# IFS
-# We need space, tab and new line, in precisely that order.
-as_nl='
-'
-IFS="  $as_nl"
-
-# CDPATH.
-$as_unset CDPATH
-
-
-# Name of the host.
-# hostname on some systems (SVR3.2, Linux) returns a bogus exit status,
-# so uname gets run too.
-ac_hostname=`(hostname || uname -n) 2>/dev/null | sed 1q`
-
-exec 6>&1
-
-#
-# Initializations.
-#
-ac_default_prefix=/usr/local
-ac_config_libobj_dir=.
-cross_compiling=no
-subdirs=
-MFLAGS=
-MAKEFLAGS=
-SHELL=${CONFIG_SHELL-/bin/sh}
-
-# Maximum number of lines to put in a shell here document.
-# This variable seems obsolete.  It should probably be removed, and
-# only ac_max_sed_lines should be used.
-: ${ac_max_here_lines=38}
-
-# Identity of this package.
-PACKAGE_NAME='bash'
-PACKAGE_TARNAME='bash'
-PACKAGE_VERSION='4.2-maint'
-PACKAGE_STRING='bash 4.2-maint'
-PACKAGE_BUGREPORT='bug-bash@gnu.org'
-
-ac_unique_file="shell.h"
-# Factoring default headers for most tests.
-ac_includes_default="\
-#include <stdio.h>
-#if HAVE_SYS_TYPES_H
-# include <sys/types.h>
-#endif
-#if HAVE_SYS_STAT_H
-# include <sys/stat.h>
-#endif
-#if STDC_HEADERS
-# include <stdlib.h>
-# include <stddef.h>
-#else
-# if HAVE_STDLIB_H
-#  include <stdlib.h>
-# endif
-#endif
-#if HAVE_STRING_H
-# if !STDC_HEADERS && HAVE_MEMORY_H
-#  include <memory.h>
-# endif
-# include <string.h>
-#endif
-#if HAVE_STRINGS_H
-# include <strings.h>
-#endif
-#if HAVE_INTTYPES_H
-# include <inttypes.h>
-#else
-# if HAVE_STDINT_H
-#  include <stdint.h>
-# endif
-#endif
-#if HAVE_UNISTD_H
-# 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 build build_cpu build_vendor build_os host host_cpu host_vendor host_os DEBUGGER_START_FILE CC_FOR_BUILD CFLAGS_FOR_BUILD LDFLAGS_FOR_BUILD CPPFLAGS_FOR_BUILD TESTSCRIPT PURIFY MALLOC_TARGET MALLOC_SRC MALLOC_LIB MALLOC_LIBRARY MALLOC_LDFLAGS MALLOC_DEP htmldir HELPDIR HELPDIRDEFINE HELPINSTALL HELPFILES_TARGET HELPSTRINGS CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT CPP EGREP CROSS_COMPILE SIGNAMES_H SIGNAMES_O STATIC_LD LIBS_FOR_BUILD RL_VERSION RL_MAJOR RL_MINOR READLINE_LIB READLINE_DEP RL_LIBDIR RL_INCLUDEDIR RL_INCLUDE HISTORY_LIB HISTORY_DEP HIST_LIBDIR TILDE_LIB INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA AR RANLIB ac_ct_RANLIB YACC SET_MAKE MAKE_SHELL SIZE MKINSTALLDIRS USE_NLS MSGFMT GMSGFMT XGETTEXT MSGMERGE ALLOCA GLIBC21 LIBICONV LTLIBICONV INTLBISON BUILD_INCLUDED_LIBINTL USE_INCLUDED_LIBINTL CATOBJEXT DATADIRNAME INSTOBJEXT GENCAT INTLOBJS INTL_LIBTOOL_SUFFIX_PREFIX INTLLIBS LIBINTL LTLIBINTL POSUB LIB@&t@OBJS INTL_DEP INTL_INC LIBINTL_H TIME_H_DEFINES_STRUCT_TIMESPEC SYS_TIME_H_DEFINES_STRUCT_TIMESPEC PTHREAD_H_DEFINES_STRUCT_TIMESPEC SIGLIST_O TERMCAP_LIB TERMCAP_DEP JOBS_O SHOBJ_CC SHOBJ_CFLAGS SHOBJ_LD SHOBJ_LDFLAGS SHOBJ_XLDFLAGS SHOBJ_LIBS SHOBJ_STATUS PROFILE_FLAGS incdir BUILD_DIR datarootdir localedir ARFLAGS BASHVERS RELSTATUS DEBUG MALLOC_DEBUG LOCAL_LIBS LOCAL_CFLAGS LOCAL_LDFLAGS LOCAL_DEFS LTLIBOBJS'
-ac_subst_files=''
-
-# Initialize some variables set by options.
-ac_init_help=
-ac_init_version=false
-# The variables have the same names as the options, with
-# dashes changed to underlines.
-cache_file=/dev/null
-exec_prefix=NONE
-no_create=
-no_recursion=
-prefix=NONE
-program_prefix=NONE
-program_suffix=NONE
-program_transform_name=s,x,x,
-silent=
-site=
-srcdir=
-verbose=
-x_includes=NONE
-x_libraries=NONE
-
-# Installation directory options.
-# These are left unexpanded so users can "make install exec_prefix=/foo"
-# and all the variables that are supposed to be based on exec_prefix
-# by default will actually change.
-# Use braces instead of parens because sh, perl, etc. also accept them.
-bindir='${exec_prefix}/bin'
-sbindir='${exec_prefix}/sbin'
-libexecdir='${exec_prefix}/libexec'
-datadir='${prefix}/share'
-sysconfdir='${prefix}/etc'
-sharedstatedir='${prefix}/com'
-localstatedir='${prefix}/var'
-libdir='${exec_prefix}/lib'
-includedir='${prefix}/include'
-oldincludedir='/usr/include'
-infodir='${prefix}/info'
-mandir='${prefix}/man'
-
-ac_prev=
-for ac_option
-do
-  # If the previous option needs an argument, assign it.
-  if test -n "$ac_prev"; then
-    eval "$ac_prev=\$ac_option"
-    ac_prev=
-    continue
-  fi
-
-  ac_optarg=`expr "x$ac_option" : 'x[^=]*=\(.*\)'`
-
-  # Accept the important Cygnus configure options, so we can diagnose typos.
-
-  case $ac_option in
-
-  -bindir | --bindir | --bindi | --bind | --bin | --bi)
-    ac_prev=bindir ;;
-  -bindir=* | --bindir=* | --bindi=* | --bind=* | --bin=* | --bi=*)
-    bindir=$ac_optarg ;;
-
-  -build | --build | --buil | --bui | --bu)
-    ac_prev=build_alias ;;
-  -build=* | --build=* | --buil=* | --bui=* | --bu=*)
-    build_alias=$ac_optarg ;;
-
-  -cache-file | --cache-file | --cache-fil | --cache-fi \
-  | --cache-f | --cache- | --cache | --cach | --cac | --ca | --c)
-    ac_prev=cache_file ;;
-  -cache-file=* | --cache-file=* | --cache-fil=* | --cache-fi=* \
-  | --cache-f=* | --cache-=* | --cache=* | --cach=* | --cac=* | --ca=* | --c=*)
-    cache_file=$ac_optarg ;;
-
-  --config-cache | -C)
-    cache_file=config.cache ;;
-
-  -datadir | --datadir | --datadi | --datad | --data | --dat | --da)
-    ac_prev=datadir ;;
-  -datadir=* | --datadir=* | --datadi=* | --datad=* | --data=* | --dat=* \
-  | --da=*)
-    datadir=$ac_optarg ;;
-
-  -disable-* | --disable-*)
-    ac_feature=`expr "x$ac_option" : 'x-*disable-\(.*\)'`
-    # Reject names that are not valid shell variable names.
-    expr "x$ac_feature" : ".*[^-_$as_cr_alnum]" >/dev/null &&
-      { echo "$as_me: error: invalid feature name: $ac_feature" >&2
-   { (exit 1); exit 1; }; }
-    ac_feature=`echo $ac_feature | sed 's/-/_/g'`
-    eval "enable_$ac_feature=no" ;;
-
-  -enable-* | --enable-*)
-    ac_feature=`expr "x$ac_option" : 'x-*enable-\([^=]*\)'`
-    # Reject names that are not valid shell variable names.
-    expr "x$ac_feature" : ".*[^-_$as_cr_alnum]" >/dev/null &&
-      { echo "$as_me: error: invalid feature name: $ac_feature" >&2
-   { (exit 1); exit 1; }; }
-    ac_feature=`echo $ac_feature | sed 's/-/_/g'`
-    case $ac_option in
-      *=*) ac_optarg=`echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"`;;
-      *) ac_optarg=yes ;;
-    esac
-    eval "enable_$ac_feature='$ac_optarg'" ;;
-
-  -exec-prefix | --exec_prefix | --exec-prefix | --exec-prefi \
-  | --exec-pref | --exec-pre | --exec-pr | --exec-p | --exec- \
-  | --exec | --exe | --ex)
-    ac_prev=exec_prefix ;;
-  -exec-prefix=* | --exec_prefix=* | --exec-prefix=* | --exec-prefi=* \
-  | --exec-pref=* | --exec-pre=* | --exec-pr=* | --exec-p=* | --exec-=* \
-  | --exec=* | --exe=* | --ex=*)
-    exec_prefix=$ac_optarg ;;
-
-  -gas | --gas | --ga | --g)
-    # Obsolete; use --with-gas.
-    with_gas=yes ;;
-
-  -help | --help | --hel | --he | -h)
-    ac_init_help=long ;;
-  -help=r* | --help=r* | --hel=r* | --he=r* | -hr*)
-    ac_init_help=recursive ;;
-  -help=s* | --help=s* | --hel=s* | --he=s* | -hs*)
-    ac_init_help=short ;;
-
-  -host | --host | --hos | --ho)
-    ac_prev=host_alias ;;
-  -host=* | --host=* | --hos=* | --ho=*)
-    host_alias=$ac_optarg ;;
-
-  -includedir | --includedir | --includedi | --included | --include \
-  | --includ | --inclu | --incl | --inc)
-    ac_prev=includedir ;;
-  -includedir=* | --includedir=* | --includedi=* | --included=* | --include=* \
-  | --includ=* | --inclu=* | --incl=* | --inc=*)
-    includedir=$ac_optarg ;;
-
-  -infodir | --infodir | --infodi | --infod | --info | --inf)
-    ac_prev=infodir ;;
-  -infodir=* | --infodir=* | --infodi=* | --infod=* | --info=* | --inf=*)
-    infodir=$ac_optarg ;;
-
-  -libdir | --libdir | --libdi | --libd)
-    ac_prev=libdir ;;
-  -libdir=* | --libdir=* | --libdi=* | --libd=*)
-    libdir=$ac_optarg ;;
-
-  -libexecdir | --libexecdir | --libexecdi | --libexecd | --libexec \
-  | --libexe | --libex | --libe)
-    ac_prev=libexecdir ;;
-  -libexecdir=* | --libexecdir=* | --libexecdi=* | --libexecd=* | --libexec=* \
-  | --libexe=* | --libex=* | --libe=*)
-    libexecdir=$ac_optarg ;;
-
-  -localstatedir | --localstatedir | --localstatedi | --localstated \
-  | --localstate | --localstat | --localsta | --localst \
-  | --locals | --local | --loca | --loc | --lo)
-    ac_prev=localstatedir ;;
-  -localstatedir=* | --localstatedir=* | --localstatedi=* | --localstated=* \
-  | --localstate=* | --localstat=* | --localsta=* | --localst=* \
-  | --locals=* | --local=* | --loca=* | --loc=* | --lo=*)
-    localstatedir=$ac_optarg ;;
-
-  -mandir | --mandir | --mandi | --mand | --man | --ma | --m)
-    ac_prev=mandir ;;
-  -mandir=* | --mandir=* | --mandi=* | --mand=* | --man=* | --ma=* | --m=*)
-    mandir=$ac_optarg ;;
-
-  -nfp | --nfp | --nf)
-    # Obsolete; use --without-fp.
-    with_fp=no ;;
-
-  -no-create | --no-create | --no-creat | --no-crea | --no-cre \
-  | --no-cr | --no-c | -n)
-    no_create=yes ;;
-
-  -no-recursion | --no-recursion | --no-recursio | --no-recursi \
-  | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r)
-    no_recursion=yes ;;
-
-  -oldincludedir | --oldincludedir | --oldincludedi | --oldincluded \
-  | --oldinclude | --oldinclud | --oldinclu | --oldincl | --oldinc \
-  | --oldin | --oldi | --old | --ol | --o)
-    ac_prev=oldincludedir ;;
-  -oldincludedir=* | --oldincludedir=* | --oldincludedi=* | --oldincluded=* \
-  | --oldinclude=* | --oldinclud=* | --oldinclu=* | --oldincl=* | --oldinc=* \
-  | --oldin=* | --oldi=* | --old=* | --ol=* | --o=*)
-    oldincludedir=$ac_optarg ;;
-
-  -prefix | --prefix | --prefi | --pref | --pre | --pr | --p)
-    ac_prev=prefix ;;
-  -prefix=* | --prefix=* | --prefi=* | --pref=* | --pre=* | --pr=* | --p=*)
-    prefix=$ac_optarg ;;
-
-  -program-prefix | --program-prefix | --program-prefi | --program-pref \
-  | --program-pre | --program-pr | --program-p)
-    ac_prev=program_prefix ;;
-  -program-prefix=* | --program-prefix=* | --program-prefi=* \
-  | --program-pref=* | --program-pre=* | --program-pr=* | --program-p=*)
-    program_prefix=$ac_optarg ;;
-
-  -program-suffix | --program-suffix | --program-suffi | --program-suff \
-  | --program-suf | --program-su | --program-s)
-    ac_prev=program_suffix ;;
-  -program-suffix=* | --program-suffix=* | --program-suffi=* \
-  | --program-suff=* | --program-suf=* | --program-su=* | --program-s=*)
-    program_suffix=$ac_optarg ;;
-
-  -program-transform-name | --program-transform-name \
-  | --program-transform-nam | --program-transform-na \
-  | --program-transform-n | --program-transform- \
-  | --program-transform | --program-transfor \
-  | --program-transfo | --program-transf \
-  | --program-trans | --program-tran \
-  | --progr-tra | --program-tr | --program-t)
-    ac_prev=program_transform_name ;;
-  -program-transform-name=* | --program-transform-name=* \
-  | --program-transform-nam=* | --program-transform-na=* \
-  | --program-transform-n=* | --program-transform-=* \
-  | --program-transform=* | --program-transfor=* \
-  | --program-transfo=* | --program-transf=* \
-  | --program-trans=* | --program-tran=* \
-  | --progr-tra=* | --program-tr=* | --program-t=*)
-    program_transform_name=$ac_optarg ;;
-
-  -q | -quiet | --quiet | --quie | --qui | --qu | --q \
-  | -silent | --silent | --silen | --sile | --sil)
-    silent=yes ;;
-
-  -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb)
-    ac_prev=sbindir ;;
-  -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \
-  | --sbi=* | --sb=*)
-    sbindir=$ac_optarg ;;
-
-  -sharedstatedir | --sharedstatedir | --sharedstatedi \
-  | --sharedstated | --sharedstate | --sharedstat | --sharedsta \
-  | --sharedst | --shareds | --shared | --share | --shar \
-  | --sha | --sh)
-    ac_prev=sharedstatedir ;;
-  -sharedstatedir=* | --sharedstatedir=* | --sharedstatedi=* \
-  | --sharedstated=* | --sharedstate=* | --sharedstat=* | --sharedsta=* \
-  | --sharedst=* | --shareds=* | --shared=* | --share=* | --shar=* \
-  | --sha=* | --sh=*)
-    sharedstatedir=$ac_optarg ;;
-
-  -site | --site | --sit)
-    ac_prev=site ;;
-  -site=* | --site=* | --sit=*)
-    site=$ac_optarg ;;
-
-  -srcdir | --srcdir | --srcdi | --srcd | --src | --sr)
-    ac_prev=srcdir ;;
-  -srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=*)
-    srcdir=$ac_optarg ;;
-
-  -sysconfdir | --sysconfdir | --sysconfdi | --sysconfd | --sysconf \
-  | --syscon | --sysco | --sysc | --sys | --sy)
-    ac_prev=sysconfdir ;;
-  -sysconfdir=* | --sysconfdir=* | --sysconfdi=* | --sysconfd=* | --sysconf=* \
-  | --syscon=* | --sysco=* | --sysc=* | --sys=* | --sy=*)
-    sysconfdir=$ac_optarg ;;
-
-  -target | --target | --targe | --targ | --tar | --ta | --t)
-    ac_prev=target_alias ;;
-  -target=* | --target=* | --targe=* | --targ=* | --tar=* | --ta=* | --t=*)
-    target_alias=$ac_optarg ;;
-
-  -v | -verbose | --verbose | --verbos | --verbo | --verb)
-    verbose=yes ;;
-
-  -version | --version | --versio | --versi | --vers | -V)
-    ac_init_version=: ;;
-
-  -with-* | --with-*)
-    ac_package=`expr "x$ac_option" : 'x-*with-\([^=]*\)'`
-    # Reject names that are not valid shell variable names.
-    expr "x$ac_package" : ".*[^-_$as_cr_alnum]" >/dev/null &&
-      { echo "$as_me: error: invalid package name: $ac_package" >&2
-   { (exit 1); exit 1; }; }
-    ac_package=`echo $ac_package| sed 's/-/_/g'`
-    case $ac_option in
-      *=*) ac_optarg=`echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"`;;
-      *) ac_optarg=yes ;;
-    esac
-    eval "with_$ac_package='$ac_optarg'" ;;
-
-  -without-* | --without-*)
-    ac_package=`expr "x$ac_option" : 'x-*without-\(.*\)'`
-    # Reject names that are not valid shell variable names.
-    expr "x$ac_package" : ".*[^-_$as_cr_alnum]" >/dev/null &&
-      { echo "$as_me: error: invalid package name: $ac_package" >&2
-   { (exit 1); exit 1; }; }
-    ac_package=`echo $ac_package | sed 's/-/_/g'`
-    eval "with_$ac_package=no" ;;
-
-  --x)
-    # Obsolete; use --with-x.
-    with_x=yes ;;
-
-  -x-includes | --x-includes | --x-include | --x-includ | --x-inclu \
-  | --x-incl | --x-inc | --x-in | --x-i)
-    ac_prev=x_includes ;;
-  -x-includes=* | --x-includes=* | --x-include=* | --x-includ=* | --x-inclu=* \
-  | --x-incl=* | --x-inc=* | --x-in=* | --x-i=*)
-    x_includes=$ac_optarg ;;
-
-  -x-libraries | --x-libraries | --x-librarie | --x-librari \
-  | --x-librar | --x-libra | --x-libr | --x-lib | --x-li | --x-l)
-    ac_prev=x_libraries ;;
-  -x-libraries=* | --x-libraries=* | --x-librarie=* | --x-librari=* \
-  | --x-librar=* | --x-libra=* | --x-libr=* | --x-lib=* | --x-li=* | --x-l=*)
-    x_libraries=$ac_optarg ;;
-
-  -*) { echo "$as_me: error: unrecognized option: $ac_option
-Try \`$0 --help' for more information." >&2
-   { (exit 1); exit 1; }; }
-    ;;
-
-  *=*)
-    ac_envvar=`expr "x$ac_option" : 'x\([^=]*\)='`
-    # Reject names that are not valid shell variable names.
-    expr "x$ac_envvar" : ".*[^_$as_cr_alnum]" >/dev/null &&
-      { echo "$as_me: error: invalid variable name: $ac_envvar" >&2
-   { (exit 1); exit 1; }; }
-    ac_optarg=`echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"`
-    eval "$ac_envvar='$ac_optarg'"
-    export $ac_envvar ;;
-
-  *)
-    # FIXME: should be removed in autoconf 3.0.
-    echo "$as_me: WARNING: you should use --build, --host, --target" >&2
-    expr "x$ac_option" : ".*[^-._$as_cr_alnum]" >/dev/null &&
-      echo "$as_me: WARNING: invalid host type: $ac_option" >&2
-    : ${build_alias=$ac_option} ${host_alias=$ac_option} ${target_alias=$ac_option}
-    ;;
-
-  esac
-done
-
-if test -n "$ac_prev"; then
-  ac_option=--`echo $ac_prev | sed 's/_/-/g'`
-  { echo "$as_me: error: missing argument to $ac_option" >&2
-   { (exit 1); exit 1; }; }
-fi
-
-# Be sure to have absolute paths.
-for ac_var in exec_prefix prefix
-do
-  eval ac_val=$`echo $ac_var`
-  case $ac_val in
-    [\\/$]* | ?:[\\/]* | NONE | '' ) ;;
-    *)  { echo "$as_me: error: expected an absolute directory name for --$ac_var: $ac_val" >&2
-   { (exit 1); exit 1; }; };;
-  esac
-done
-
-# Be sure to have absolute paths.
-for ac_var in bindir sbindir libexecdir datadir sysconfdir sharedstatedir \
-             localstatedir libdir includedir oldincludedir infodir mandir
-do
-  eval ac_val=$`echo $ac_var`
-  case $ac_val in
-    [\\/$]* | ?:[\\/]* ) ;;
-    *)  { echo "$as_me: error: expected an absolute directory name for --$ac_var: $ac_val" >&2
-   { (exit 1); exit 1; }; };;
-  esac
-done
-
-# There might be people who depend on the old broken behavior: `$host'
-# used to hold the argument of --host etc.
-# FIXME: To remove some day.
-build=$build_alias
-host=$host_alias
-target=$target_alias
-
-# FIXME: To remove some day.
-if test "x$host_alias" != x; then
-  if test "x$build_alias" = x; then
-    cross_compiling=maybe
-    echo "$as_me: WARNING: If you wanted to set the --build type, don't use --host.
-    If a cross compiler is detected then cross compile mode will be used." >&2
-  elif test "x$build_alias" != "x$host_alias"; then
-    cross_compiling=yes
-  fi
-fi
-
-ac_tool_prefix=
-test -n "$host_alias" && ac_tool_prefix=$host_alias-
-
-test "$silent" = yes && exec 6>/dev/null
-
-
-# Find the source files, if location was not specified.
-if test -z "$srcdir"; then
-  ac_srcdir_defaulted=yes
-  # Try the directory containing this script, then its parent.
-  ac_confdir=`(dirname "$0") 2>/dev/null ||
-$as_expr X"$0" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
-        X"$0" : 'X\(//\)[^/]' \| \
-        X"$0" : 'X\(//\)$' \| \
-        X"$0" : 'X\(/\)' \| \
-        .     : '\(.\)' 2>/dev/null ||
-echo X"$0" |
-    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
-         /^X\(\/\/\)[^/].*/{ s//\1/; q; }
-         /^X\(\/\/\)$/{ s//\1/; q; }
-         /^X\(\/\).*/{ s//\1/; q; }
-         s/.*/./; q'`
-  srcdir=$ac_confdir
-  if test ! -r $srcdir/$ac_unique_file; then
-    srcdir=..
-  fi
-else
-  ac_srcdir_defaulted=no
-fi
-if test ! -r $srcdir/$ac_unique_file; then
-  if test "$ac_srcdir_defaulted" = yes; then
-    { echo "$as_me: error: cannot find sources ($ac_unique_file) in $ac_confdir or .." >&2
-   { (exit 1); exit 1; }; }
-  else
-    { echo "$as_me: error: cannot find sources ($ac_unique_file) in $srcdir" >&2
-   { (exit 1); exit 1; }; }
-  fi
-fi
-(cd $srcdir && test -r ./$ac_unique_file) 2>/dev/null ||
-  { echo "$as_me: error: sources are in $srcdir, but \`cd $srcdir' does not work" >&2
-   { (exit 1); exit 1; }; }
-srcdir=`echo "$srcdir" | sed 's%\([^\\/]\)[\\/]*$%\1%'`
-ac_env_build_alias_set=${build_alias+set}
-ac_env_build_alias_value=$build_alias
-ac_cv_env_build_alias_set=${build_alias+set}
-ac_cv_env_build_alias_value=$build_alias
-ac_env_host_alias_set=${host_alias+set}
-ac_env_host_alias_value=$host_alias
-ac_cv_env_host_alias_set=${host_alias+set}
-ac_cv_env_host_alias_value=$host_alias
-ac_env_target_alias_set=${target_alias+set}
-ac_env_target_alias_value=$target_alias
-ac_cv_env_target_alias_set=${target_alias+set}
-ac_cv_env_target_alias_value=$target_alias
-ac_env_DEBUGGER_START_FILE_set=${DEBUGGER_START_FILE+set}
-ac_env_DEBUGGER_START_FILE_value=$DEBUGGER_START_FILE
-ac_cv_env_DEBUGGER_START_FILE_set=${DEBUGGER_START_FILE+set}
-ac_cv_env_DEBUGGER_START_FILE_value=$DEBUGGER_START_FILE
-ac_env_CC_FOR_BUILD_set=${CC_FOR_BUILD+set}
-ac_env_CC_FOR_BUILD_value=$CC_FOR_BUILD
-ac_cv_env_CC_FOR_BUILD_set=${CC_FOR_BUILD+set}
-ac_cv_env_CC_FOR_BUILD_value=$CC_FOR_BUILD
-ac_env_CFLAGS_FOR_BUILD_set=${CFLAGS_FOR_BUILD+set}
-ac_env_CFLAGS_FOR_BUILD_value=$CFLAGS_FOR_BUILD
-ac_cv_env_CFLAGS_FOR_BUILD_set=${CFLAGS_FOR_BUILD+set}
-ac_cv_env_CFLAGS_FOR_BUILD_value=$CFLAGS_FOR_BUILD
-ac_env_LDFLAGS_FOR_BUILD_set=${LDFLAGS_FOR_BUILD+set}
-ac_env_LDFLAGS_FOR_BUILD_value=$LDFLAGS_FOR_BUILD
-ac_cv_env_LDFLAGS_FOR_BUILD_set=${LDFLAGS_FOR_BUILD+set}
-ac_cv_env_LDFLAGS_FOR_BUILD_value=$LDFLAGS_FOR_BUILD
-ac_env_CPPFLAGS_FOR_BUILD_set=${CPPFLAGS_FOR_BUILD+set}
-ac_env_CPPFLAGS_FOR_BUILD_value=$CPPFLAGS_FOR_BUILD
-ac_cv_env_CPPFLAGS_FOR_BUILD_set=${CPPFLAGS_FOR_BUILD+set}
-ac_cv_env_CPPFLAGS_FOR_BUILD_value=$CPPFLAGS_FOR_BUILD
-ac_env_CC_set=${CC+set}
-ac_env_CC_value=$CC
-ac_cv_env_CC_set=${CC+set}
-ac_cv_env_CC_value=$CC
-ac_env_CFLAGS_set=${CFLAGS+set}
-ac_env_CFLAGS_value=$CFLAGS
-ac_cv_env_CFLAGS_set=${CFLAGS+set}
-ac_cv_env_CFLAGS_value=$CFLAGS
-ac_env_LDFLAGS_set=${LDFLAGS+set}
-ac_env_LDFLAGS_value=$LDFLAGS
-ac_cv_env_LDFLAGS_set=${LDFLAGS+set}
-ac_cv_env_LDFLAGS_value=$LDFLAGS
-ac_env_CPPFLAGS_set=${CPPFLAGS+set}
-ac_env_CPPFLAGS_value=$CPPFLAGS
-ac_cv_env_CPPFLAGS_set=${CPPFLAGS+set}
-ac_cv_env_CPPFLAGS_value=$CPPFLAGS
-ac_env_CPP_set=${CPP+set}
-ac_env_CPP_value=$CPP
-ac_cv_env_CPP_set=${CPP+set}
-ac_cv_env_CPP_value=$CPP
-
-#
-# Report the --help message.
-#
-if test "$ac_init_help" = "long"; then
-  # Omit some internal or obsolete options to make the list less imposing.
-  # This message is too long to be a string in the A/UX 3.1 sh.
-  cat <<_ACEOF
-\`configure' configures bash 4.2-maint to adapt to many kinds of systems.
-
-Usage: $0 [OPTION]... [VAR=VALUE]...
-
-To assign environment variables (e.g., CC, CFLAGS...), specify them as
-VAR=VALUE.  See below for descriptions of some of the useful variables.
-
-Defaults for the options are specified in brackets.
-
-Configuration:
-  -h, --help              display this help and exit
-      --help=short        display options specific to this package
-      --help=recursive    display the short help of all the included packages
-  -V, --version           display version information and exit
-  -q, --quiet, --silent   do not print \`checking...' messages
-      --cache-file=FILE   cache test results in FILE [disabled]
-  -C, --config-cache      alias for \`--cache-file=config.cache'
-  -n, --no-create         do not create output files
-      --srcdir=DIR        find the sources in DIR [configure dir or \`..']
-
-_ACEOF
-
-  cat <<_ACEOF
-Installation directories:
-  --prefix=PREFIX         install architecture-independent files in PREFIX
-                         [$ac_default_prefix]
-  --exec-prefix=EPREFIX   install architecture-dependent files in EPREFIX
-                         [PREFIX]
-
-By default, \`make install' will install all the files in
-\`$ac_default_prefix/bin', \`$ac_default_prefix/lib' etc.  You can specify
-an installation prefix other than \`$ac_default_prefix' using \`--prefix',
-for instance \`--prefix=\$HOME'.
-
-For better control, use the options below.
-
-Fine tuning of the installation directories:
-  --bindir=DIR           user executables [EPREFIX/bin]
-  --sbindir=DIR          system admin executables [EPREFIX/sbin]
-  --libexecdir=DIR       program executables [EPREFIX/libexec]
-  --datadir=DIR          read-only architecture-independent data [PREFIX/share]
-  --sysconfdir=DIR       read-only single-machine data [PREFIX/etc]
-  --sharedstatedir=DIR   modifiable architecture-independent data [PREFIX/com]
-  --localstatedir=DIR    modifiable single-machine data [PREFIX/var]
-  --libdir=DIR           object code libraries [EPREFIX/lib]
-  --includedir=DIR       C header files [PREFIX/include]
-  --oldincludedir=DIR    C header files for non-gcc [/usr/include]
-  --infodir=DIR          info documentation [PREFIX/info]
-  --mandir=DIR           man documentation [PREFIX/man]
-_ACEOF
-
-  cat <<\_ACEOF
-
-System types:
-  --build=BUILD     configure for building on BUILD [guessed]
-  --host=HOST       cross-compile to build programs to run on HOST [BUILD]
-_ACEOF
-fi
-
-if test -n "$ac_init_help"; then
-  case $ac_init_help in
-     short | recursive ) echo "Configuration of bash 4.2-maint:";;
-   esac
-  cat <<\_ACEOF
-
-Optional Features:
-  --disable-FEATURE       do not include FEATURE (same as --enable-FEATURE=no)
-  --enable-FEATURE[=ARG]  include FEATURE [ARG=yes]
-  --enable-minimal-config a minimal sh-like configuration
-  --enable-alias          enable shell aliases
-  --enable-arith-for-command 
-                          enable arithmetic for command
-  --enable-array-variables 
-                          include shell array variables
-  --enable-bang-history   turn on csh-style history substitution
-  --enable-brace-expansion 
-                          include brace expansion
-  --enable-casemod-attributes 
-                          include case-modifying variable attributes
-  --enable-casemod-expansions 
-                          include case-modifying word expansions
-  --enable-command-timing enable the time reserved word and command timing
-  --enable-cond-command   enable the conditional command
-  --enable-cond-regexp    enable extended regular expression matching in
-                          conditional commands
-  --enable-coprocesses    enable coprocess support and the coproc reserved
-                          word
-  --enable-debugger       enable support for bash debugger
-  --enable-directory-stack 
-                          enable builtins pushd/popd/dirs
-  --enable-disabled-builtins 
-                          allow disabled builtins to still be invoked
-  --enable-dparen-arithmetic 
-                          include ((...)) command
-  --enable-extended-glob  include ksh-style extended pattern matching
-  --enable-extended-glob-default 
-                          force extended pattern matching to be enabled by
-                          default
-  --enable-help-builtin   include the help builtin
-  --enable-history        turn on command history
-  --enable-job-control    enable job control features
-  --enable-multibyte      enable multibyte characters if OS supports them
-  --enable-net-redirections 
-                          enable /dev/tcp/host/port redirection
-  --enable-process-substitution 
-                          enable process substitution
-  --enable-progcomp       enable programmable completion and the complete
-                          builtin
-  --enable-prompt-string-decoding 
-                          turn on escape character decoding in prompts
-  --enable-readline       turn on command line editing
-  --enable-restricted     enable a restricted shell
-  --enable-select         include select command
-  --enable-separate-helpfiles 
-                          use external files for help builtin documentation
-  --enable-single-help-strings 
-                          store help documentation as a single string to ease
-                          translation
-  --enable-strict-posix-default 
-                          configure bash to be posix-conformant by default
-  --enable-usg-echo-default 
-                          a synonym for --enable-xpg-echo-default
-  --enable-xpg-echo-default 
-                          make the echo builtin expand escape sequences by
-                          default
-  --enable-mem-scramble   scramble memory on calls to malloc and free
-  --enable-profiling      allow profiling with gprof
-  --enable-static-link    link bash statically, for use as a root shell
-  --disable-largefile     omit support for large files
-  --disable-nls           do not use Native Language Support
-  --disable-rpath         do not hardcode runtime library paths
-
-Optional Packages:
-  --with-PACKAGE[=ARG]    use PACKAGE [ARG=yes]
-  --without-PACKAGE       do not use PACKAGE (same as --with-PACKAGE=no)
-  --with-afs              if you are running AFS
-  --with-bash-malloc      use the Bash version of malloc
-  --with-curses           use the curses library instead of the termcap
-                          library
-  --with-gnu-malloc       synonym for --with-bash-malloc
-  --with-installed-readline 
-                          use a version of the readline library that is
-                          already installed
-  --with-purecov          configure to postprocess with pure coverage
-  --with-purify           configure to postprocess with purify
-  --with-gnu-ld           assume the C compiler uses GNU ld default=no
-  --with-libiconv-prefix[=DIR]  search for libiconv in DIR/include and DIR/lib
-  --without-libiconv-prefix     don't search for libiconv in includedir and libdir
-  --with-included-gettext use the GNU gettext library included here
-  --with-libintl-prefix[=DIR]  search for libintl in DIR/include and DIR/lib
-  --without-libintl-prefix     don't search for libintl in includedir and libdir
-
-Some influential environment variables:
-  DEBUGGER_START_FILE 
-              location of bash debugger initialization file
-  CC_FOR_BUILD 
-              C compiler used when compiling binaries used only at build time
-  CFLAGS_FOR_BUILD 
-              Compliation options (CFLAGS) used when compiling binaries used
-              only at build time
-  LDFLAGS_FOR_BUILD 
-              Linker options (LDFLAGS) used when compiling binaries used only
-              at build time
-  CPPFLAGS_FOR_BUILD 
-              C preprocessor options (CPPFLAGS) used when compiling binaries
-              used only at build time
-  CC          C compiler command
-  CFLAGS      C compiler flags
-  LDFLAGS     linker flags, e.g. -L<lib dir> if you have libraries in a
-              nonstandard directory <lib dir>
-  CPPFLAGS    C/C++ preprocessor flags, e.g. -I<include dir> if you have
-              headers in a nonstandard directory <include dir>
-  CPP         C preprocessor
-
-Use these variables to override the choices made by `configure' or to help
-it to find libraries and programs with nonstandard names/locations.
-
-Report bugs to <bug-bash@gnu.org>.
-_ACEOF
-fi
-
-if test "$ac_init_help" = "recursive"; then
-  # If there are subdirs, report their specific --help.
-  ac_popdir=`pwd`
-  for ac_dir in : $ac_subdirs_all; do test "x$ac_dir" = x: && continue
-    test -d $ac_dir || continue
-    ac_builddir=.
-
-if test "$ac_dir" != .; then
-  ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'`
-  # A "../" for each directory in $ac_dir_suffix.
-  ac_top_builddir=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,../,g'`
-else
-  ac_dir_suffix= ac_top_builddir=
-fi
-
-case $srcdir in
-  .)  # No --srcdir option.  We are building in place.
-    ac_srcdir=.
-    if test -z "$ac_top_builddir"; then
-       ac_top_srcdir=.
-    else
-       ac_top_srcdir=`echo $ac_top_builddir | sed 's,/$,,'`
-    fi ;;
-  [\\/]* | ?:[\\/]* )  # Absolute path.
-    ac_srcdir=$srcdir$ac_dir_suffix;
-    ac_top_srcdir=$srcdir ;;
-  *) # Relative path.
-    ac_srcdir=$ac_top_builddir$srcdir$ac_dir_suffix
-    ac_top_srcdir=$ac_top_builddir$srcdir ;;
-esac
-
-# Do not use `cd foo && pwd` to compute absolute paths, because
-# the directories may not exist.
-case `pwd` in
-.) ac_abs_builddir="$ac_dir";;
-*)
-  case "$ac_dir" in
-  .) ac_abs_builddir=`pwd`;;
-  [\\/]* | ?:[\\/]* ) ac_abs_builddir="$ac_dir";;
-  *) ac_abs_builddir=`pwd`/"$ac_dir";;
-  esac;;
-esac
-case $ac_abs_builddir in
-.) ac_abs_top_builddir=${ac_top_builddir}.;;
-*)
-  case ${ac_top_builddir}. in
-  .) ac_abs_top_builddir=$ac_abs_builddir;;
-  [\\/]* | ?:[\\/]* ) ac_abs_top_builddir=${ac_top_builddir}.;;
-  *) ac_abs_top_builddir=$ac_abs_builddir/${ac_top_builddir}.;;
-  esac;;
-esac
-case $ac_abs_builddir in
-.) ac_abs_srcdir=$ac_srcdir;;
-*)
-  case $ac_srcdir in
-  .) ac_abs_srcdir=$ac_abs_builddir;;
-  [\\/]* | ?:[\\/]* ) ac_abs_srcdir=$ac_srcdir;;
-  *) ac_abs_srcdir=$ac_abs_builddir/$ac_srcdir;;
-  esac;;
-esac
-case $ac_abs_builddir in
-.) ac_abs_top_srcdir=$ac_top_srcdir;;
-*)
-  case $ac_top_srcdir in
-  .) ac_abs_top_srcdir=$ac_abs_builddir;;
-  [\\/]* | ?:[\\/]* ) ac_abs_top_srcdir=$ac_top_srcdir;;
-  *) ac_abs_top_srcdir=$ac_abs_builddir/$ac_top_srcdir;;
-  esac;;
-esac
-
-    cd $ac_dir
-    # Check for guested configure; otherwise get Cygnus style configure.
-    if test -f $ac_srcdir/configure.gnu; then
-      echo
-      $SHELL $ac_srcdir/configure.gnu  --help=recursive
-    elif test -f $ac_srcdir/configure; then
-      echo
-      $SHELL $ac_srcdir/configure  --help=recursive
-    elif test -f $ac_srcdir/configure.ac ||
-          test -f $ac_srcdir/configure.in; then
-      echo
-      $ac_configure --help
-    else
-      echo "$as_me: WARNING: no configuration information is in $ac_dir" >&2
-    fi
-    cd $ac_popdir
-  done
-fi
-
-test -n "$ac_init_help" && exit 0
-if $ac_init_version; then
-  cat <<\_ACEOF
-bash configure 4.2-maint
-generated by GNU Autoconf 2.59
-
-Copyright (C) 2003 Free Software Foundation, Inc.
-This configure script is free software; the Free Software Foundation
-gives unlimited permission to copy, distribute and modify it.
-_ACEOF
-  exit 0
-fi
-exec 5>config.log
-cat >&5 <<_ACEOF
-This file contains any messages produced by compilers while
-running configure, to aid debugging if configure makes a mistake.
-
-It was created by bash $as_me 4.2-maint, which was
-generated by GNU Autoconf 2.59.  Invocation command line was
-
-  $ $0 $@
-
-_ACEOF
-{
-cat <<_ASUNAME
-@%:@@%:@ --------- @%:@@%:@
-@%:@@%:@ Platform. @%:@@%:@
-@%:@@%:@ --------- @%:@@%:@
-
-hostname = `(hostname || uname -n) 2>/dev/null | sed 1q`
-uname -m = `(uname -m) 2>/dev/null || echo unknown`
-uname -r = `(uname -r) 2>/dev/null || echo unknown`
-uname -s = `(uname -s) 2>/dev/null || echo unknown`
-uname -v = `(uname -v) 2>/dev/null || echo unknown`
-
-/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null || echo unknown`
-/bin/uname -X     = `(/bin/uname -X) 2>/dev/null     || echo unknown`
-
-/bin/arch              = `(/bin/arch) 2>/dev/null              || echo unknown`
-/usr/bin/arch -k       = `(/usr/bin/arch -k) 2>/dev/null       || echo unknown`
-/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null || echo unknown`
-hostinfo               = `(hostinfo) 2>/dev/null               || echo unknown`
-/bin/machine           = `(/bin/machine) 2>/dev/null           || echo unknown`
-/usr/bin/oslevel       = `(/usr/bin/oslevel) 2>/dev/null       || echo unknown`
-/bin/universe          = `(/bin/universe) 2>/dev/null          || echo unknown`
-
-_ASUNAME
-
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-  echo "PATH: $as_dir"
-done
-
-} >&5
-
-cat >&5 <<_ACEOF
-
-
-@%:@@%:@ ----------- @%:@@%:@
-@%:@@%:@ Core tests. @%:@@%:@
-@%:@@%:@ ----------- @%:@@%:@
-
-_ACEOF
-
-
-# Keep a trace of the command line.
-# Strip out --no-create and --no-recursion so they do not pile up.
-# Strip out --silent because we don't want to record it for future runs.
-# Also quote any args containing shell meta-characters.
-# Make two passes to allow for proper duplicate-argument suppression.
-ac_configure_args=
-ac_configure_args0=
-ac_configure_args1=
-ac_sep=
-ac_must_keep_next=false
-for ac_pass in 1 2
-do
-  for ac_arg
-  do
-    case $ac_arg in
-    -no-create | --no-c* | -n | -no-recursion | --no-r*) continue ;;
-    -q | -quiet | --quiet | --quie | --qui | --qu | --q \
-    | -silent | --silent | --silen | --sile | --sil)
-      continue ;;
-    *" "*|*"   "*|*[\[\]\~\#\$\^\&\*\(\)\{\}\\\|\;\<\>\?\"\']*)
-      ac_arg=`echo "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;;
-    esac
-    case $ac_pass in
-    1) ac_configure_args0="$ac_configure_args0 '$ac_arg'" ;;
-    2)
-      ac_configure_args1="$ac_configure_args1 '$ac_arg'"
-      if test $ac_must_keep_next = true; then
-       ac_must_keep_next=false # Got value, back to normal.
-      else
-       case $ac_arg in
-         *=* | --config-cache | -C | -disable-* | --disable-* \
-         | -enable-* | --enable-* | -gas | --g* | -nfp | --nf* \
-         | -q | -quiet | --q* | -silent | --sil* | -v | -verb* \
-         | -with-* | --with-* | -without-* | --without-* | --x)
-           case "$ac_configure_args0 " in
-             "$ac_configure_args1"*" '$ac_arg' "* ) continue ;;
-           esac
-           ;;
-         -* ) ac_must_keep_next=true ;;
-       esac
-      fi
-      ac_configure_args="$ac_configure_args$ac_sep'$ac_arg'"
-      # Get rid of the leading space.
-      ac_sep=" "
-      ;;
-    esac
-  done
-done
-$as_unset ac_configure_args0 || test "${ac_configure_args0+set}" != set || { ac_configure_args0=; export ac_configure_args0; }
-$as_unset ac_configure_args1 || test "${ac_configure_args1+set}" != set || { ac_configure_args1=; export ac_configure_args1; }
-
-# When interrupted or exit'd, cleanup temporary files, and complete
-# config.log.  We remove comments because anyway the quotes in there
-# would cause problems or look ugly.
-# WARNING: Be sure not to use single quotes in there, as some shells,
-# such as our DU 5.0 friend, will then `close' the trap.
-trap 'exit_status=$?
-  # Save into config.log some information that might help in debugging.
-  {
-    echo
-
-    cat <<\_ASBOX
-@%:@@%:@ ---------------- @%:@@%:@
-@%:@@%:@ Cache variables. @%:@@%:@
-@%:@@%:@ ---------------- @%:@@%:@
-_ASBOX
-    echo
-    # The following way of writing the cache mishandles newlines in values,
-{
-  (set) 2>&1 |
-    case `(ac_space='"'"' '"'"'; set | grep ac_space) 2>&1` in
-    *ac_space=\ *)
-      sed -n \
-       "s/'"'"'/'"'"'\\\\'"'"''"'"'/g;
-         s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='"'"'\\2'"'"'/p"
-      ;;
-    *)
-      sed -n \
-       "s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1=\\2/p"
-      ;;
-    esac;
-}
-    echo
-
-    cat <<\_ASBOX
-@%:@@%:@ ----------------- @%:@@%:@
-@%:@@%:@ Output variables. @%:@@%:@
-@%:@@%:@ ----------------- @%:@@%:@
-_ASBOX
-    echo
-    for ac_var in $ac_subst_vars
-    do
-      eval ac_val=$`echo $ac_var`
-      echo "$ac_var='"'"'$ac_val'"'"'"
-    done | sort
-    echo
-
-    if test -n "$ac_subst_files"; then
-      cat <<\_ASBOX
-@%:@@%:@ ------------- @%:@@%:@
-@%:@@%:@ Output files. @%:@@%:@
-@%:@@%:@ ------------- @%:@@%:@
-_ASBOX
-      echo
-      for ac_var in $ac_subst_files
-      do
-       eval ac_val=$`echo $ac_var`
-       echo "$ac_var='"'"'$ac_val'"'"'"
-      done | sort
-      echo
-    fi
-
-    if test -s confdefs.h; then
-      cat <<\_ASBOX
-@%:@@%:@ ----------- @%:@@%:@
-@%:@@%:@ confdefs.h. @%:@@%:@
-@%:@@%:@ ----------- @%:@@%:@
-_ASBOX
-      echo
-      sed "/^$/d" confdefs.h | sort
-      echo
-    fi
-    test "$ac_signal" != 0 &&
-      echo "$as_me: caught signal $ac_signal"
-    echo "$as_me: exit $exit_status"
-  } >&5
-  rm -f core *.core &&
-  rm -rf conftest* confdefs* conf$$* $ac_clean_files &&
-    exit $exit_status
-     ' 0
-for ac_signal in 1 2 13 15; do
-  trap 'ac_signal='$ac_signal'; { (exit 1); exit 1; }' $ac_signal
-done
-ac_signal=0
-
-# confdefs.h avoids OS command line length limits that DEFS can exceed.
-rm -rf conftest* confdefs.h
-# AIX cpp loses on an empty file, so make sure it contains at least a newline.
-echo >confdefs.h
-
-# Predefined preprocessor variables.
-
-cat >>confdefs.h <<_ACEOF
-@%:@define PACKAGE_NAME "$PACKAGE_NAME"
-_ACEOF
-
-
-cat >>confdefs.h <<_ACEOF
-@%:@define PACKAGE_TARNAME "$PACKAGE_TARNAME"
-_ACEOF
-
-
-cat >>confdefs.h <<_ACEOF
-@%:@define PACKAGE_VERSION "$PACKAGE_VERSION"
-_ACEOF
-
-
-cat >>confdefs.h <<_ACEOF
-@%:@define PACKAGE_STRING "$PACKAGE_STRING"
-_ACEOF
-
-
-cat >>confdefs.h <<_ACEOF
-@%:@define PACKAGE_BUGREPORT "$PACKAGE_BUGREPORT"
-_ACEOF
-
-
-# Let the site file select an alternate cache file if it wants to.
-# Prefer explicitly selected file to automatically selected ones.
-if test -z "$CONFIG_SITE"; then
-  if test "x$prefix" != xNONE; then
-    CONFIG_SITE="$prefix/share/config.site $prefix/etc/config.site"
-  else
-    CONFIG_SITE="$ac_default_prefix/share/config.site $ac_default_prefix/etc/config.site"
-  fi
-fi
-for ac_site_file in $CONFIG_SITE; do
-  if test -r "$ac_site_file"; then
-    { echo "$as_me:$LINENO: loading site script $ac_site_file" >&5
-echo "$as_me: loading site script $ac_site_file" >&6;}
-    sed 's/^/| /' "$ac_site_file" >&5
-    . "$ac_site_file"
-  fi
-done
-
-if test -r "$cache_file"; then
-  # Some versions of bash will fail to source /dev/null (special
-  # files actually), so we avoid doing that.
-  if test -f "$cache_file"; then
-    { echo "$as_me:$LINENO: loading cache $cache_file" >&5
-echo "$as_me: loading cache $cache_file" >&6;}
-    case $cache_file in
-      [\\/]* | ?:[\\/]* ) . $cache_file;;
-      *)                      . ./$cache_file;;
-    esac
-  fi
-else
-  { echo "$as_me:$LINENO: creating cache $cache_file" >&5
-echo "$as_me: creating cache $cache_file" >&6;}
-  >$cache_file
-fi
-
-# Check that the precious variables saved in the cache have kept the same
-# value.
-ac_cache_corrupted=false
-for ac_var in `(set) 2>&1 |
-              sed -n 's/^ac_env_\([a-zA-Z_0-9]*\)_set=.*/\1/p'`; do
-  eval ac_old_set=\$ac_cv_env_${ac_var}_set
-  eval ac_new_set=\$ac_env_${ac_var}_set
-  eval ac_old_val="\$ac_cv_env_${ac_var}_value"
-  eval ac_new_val="\$ac_env_${ac_var}_value"
-  case $ac_old_set,$ac_new_set in
-    set,)
-      { echo "$as_me:$LINENO: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5
-echo "$as_me: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&2;}
-      ac_cache_corrupted=: ;;
-    ,set)
-      { echo "$as_me:$LINENO: error: \`$ac_var' was not set in the previous run" >&5
-echo "$as_me: error: \`$ac_var' was not set in the previous run" >&2;}
-      ac_cache_corrupted=: ;;
-    ,);;
-    *)
-      if test "x$ac_old_val" != "x$ac_new_val"; then
-       { echo "$as_me:$LINENO: error: \`$ac_var' has changed since the previous run:" >&5
-echo "$as_me: error: \`$ac_var' has changed since the previous run:" >&2;}
-       { echo "$as_me:$LINENO:   former value:  $ac_old_val" >&5
-echo "$as_me:   former value:  $ac_old_val" >&2;}
-       { echo "$as_me:$LINENO:   current value: $ac_new_val" >&5
-echo "$as_me:   current value: $ac_new_val" >&2;}
-       ac_cache_corrupted=:
-      fi;;
-  esac
-  # Pass precious variables to config.status.
-  if test "$ac_new_set" = set; then
-    case $ac_new_val in
-    *" "*|*"   "*|*[\[\]\~\#\$\^\&\*\(\)\{\}\\\|\;\<\>\?\"\']*)
-      ac_arg=$ac_var=`echo "$ac_new_val" | sed "s/'/'\\\\\\\\''/g"` ;;
-    *) ac_arg=$ac_var=$ac_new_val ;;
-    esac
-    case " $ac_configure_args " in
-      *" '$ac_arg' "*) ;; # Avoid dups.  Use of quotes ensures accuracy.
-      *) ac_configure_args="$ac_configure_args '$ac_arg'" ;;
-    esac
-  fi
-done
-if $ac_cache_corrupted; then
-  { echo "$as_me:$LINENO: error: changes in the environment can compromise the build" >&5
-echo "$as_me: error: changes in the environment can compromise the build" >&2;}
-  { { echo "$as_me:$LINENO: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&5
-echo "$as_me: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&2;}
-   { (exit 1); exit 1; }; }
-fi
-
-ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-ac_aux_dir=
-for ac_dir in ./support $srcdir/./support; do
-  if test -f $ac_dir/install-sh; then
-    ac_aux_dir=$ac_dir
-    ac_install_sh="$ac_aux_dir/install-sh -c"
-    break
-  elif test -f $ac_dir/install.sh; then
-    ac_aux_dir=$ac_dir
-    ac_install_sh="$ac_aux_dir/install.sh -c"
-    break
-  elif test -f $ac_dir/shtool; then
-    ac_aux_dir=$ac_dir
-    ac_install_sh="$ac_aux_dir/shtool install -c"
-    break
-  fi
-done
-if test -z "$ac_aux_dir"; then
-  { { echo "$as_me:$LINENO: error: cannot find install-sh or install.sh in ./support $srcdir/./support" >&5
-echo "$as_me: error: cannot find install-sh or install.sh in ./support $srcdir/./support" >&2;}
-   { (exit 1); exit 1; }; }
-fi
-ac_config_guess="$SHELL $ac_aux_dir/config.guess"
-ac_config_sub="$SHELL $ac_aux_dir/config.sub"
-ac_configure="$SHELL $ac_aux_dir/configure" # This should be Cygnus configure.
-
-          ac_config_headers="$ac_config_headers config.h"
-
-
-BASHVERS=4.2
-RELSTATUS=maint
-
-case "$RELSTATUS" in
-alp*|bet*|dev*|rc*|maint*)     DEBUG='-DDEBUG' MALLOC_DEBUG='-DMALLOC_DEBUG' ;;
-*)     DEBUG= MALLOC_DEBUG= ;;
-esac
-
-# Make sure we can run config.sub.
-$ac_config_sub sun4 >/dev/null 2>&1 ||
-  { { echo "$as_me:$LINENO: error: cannot run $ac_config_sub" >&5
-echo "$as_me: error: cannot run $ac_config_sub" >&2;}
-   { (exit 1); exit 1; }; }
-
-echo "$as_me:$LINENO: checking build system type" >&5
-echo $ECHO_N "checking build system type... $ECHO_C" >&6
-if test "${ac_cv_build+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  ac_cv_build_alias=$build_alias
-test -z "$ac_cv_build_alias" &&
-  ac_cv_build_alias=`$ac_config_guess`
-test -z "$ac_cv_build_alias" &&
-  { { echo "$as_me:$LINENO: error: cannot guess build type; you must specify one" >&5
-echo "$as_me: error: cannot guess build type; you must specify one" >&2;}
-   { (exit 1); exit 1; }; }
-ac_cv_build=`$ac_config_sub $ac_cv_build_alias` ||
-  { { echo "$as_me:$LINENO: error: $ac_config_sub $ac_cv_build_alias failed" >&5
-echo "$as_me: error: $ac_config_sub $ac_cv_build_alias failed" >&2;}
-   { (exit 1); exit 1; }; }
-
-fi
-echo "$as_me:$LINENO: result: $ac_cv_build" >&5
-echo "${ECHO_T}$ac_cv_build" >&6
-build=$ac_cv_build
-build_cpu=`echo $ac_cv_build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'`
-build_vendor=`echo $ac_cv_build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'`
-build_os=`echo $ac_cv_build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
-
-
-echo "$as_me:$LINENO: checking host system type" >&5
-echo $ECHO_N "checking host system type... $ECHO_C" >&6
-if test "${ac_cv_host+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  ac_cv_host_alias=$host_alias
-test -z "$ac_cv_host_alias" &&
-  ac_cv_host_alias=$ac_cv_build_alias
-ac_cv_host=`$ac_config_sub $ac_cv_host_alias` ||
-  { { echo "$as_me:$LINENO: error: $ac_config_sub $ac_cv_host_alias failed" >&5
-echo "$as_me: error: $ac_config_sub $ac_cv_host_alias failed" >&2;}
-   { (exit 1); exit 1; }; }
-
-fi
-echo "$as_me:$LINENO: result: $ac_cv_host" >&5
-echo "${ECHO_T}$ac_cv_host" >&6
-host=$ac_cv_host
-host_cpu=`echo $ac_cv_host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'`
-host_vendor=`echo $ac_cv_host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'`
-host_os=`echo $ac_cv_host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
-
-
-
-opt_bash_malloc=yes
-opt_purify=no
-opt_purecov=no
-opt_afs=no
-opt_curses=no
-opt_with_installed_readline=no
-
-#htmldir=
-
-case "${host_cpu}-${host_os}" in
-alpha*-*)      opt_bash_malloc=no ;;   # alpha running osf/1 or linux
-*[Cc]ray*-*)   opt_bash_malloc=no ;;   # Crays
-*-osf1*)       opt_bash_malloc=no ;;   # other osf/1 machines
-sparc-svr4*)   opt_bash_malloc=no ;;   # sparc SVR4, SVR4.2
-sparc-netbsd*) opt_bash_malloc=no ;;   # needs 8-byte alignment
-mips-irix6*)   opt_bash_malloc=no ;;   # needs 8-byte alignment
-m68k-sysv)     opt_bash_malloc=no ;;   # fixes file descriptor leak in closedir
-sparc-linux*)  opt_bash_malloc=no ;;   # sparc running linux; requires ELF
-#*-freebsd*-gnu)       opt_bash_malloc=no ;;   # there's some undetermined problem here
-#*-freebsd*)   opt_bash_malloc=no ;;   # they claim it's better; I disagree
-*-openbsd*)    opt_bash_malloc=no ;;   # they claim it needs eight-bit alignment
-*-mirbsd*)     opt_bash_malloc=no ;;   # they claim it needs eight-bit alignment
-*-aix*)                opt_bash_malloc=no ;;   # AIX machines
-*-nextstep*)   opt_bash_malloc=no ;;   # NeXT machines running NeXTstep
-*-macos*)      opt_bash_malloc=no ;;   # Apple MacOS X
-*-rhapsody*)   opt_bash_malloc=no ;;   # Apple Rhapsody (MacOS X)
-*-darwin*)     opt_bash_malloc=no ;;   # Apple Darwin (MacOS X)
-*-dgux*)       opt_bash_malloc=no ;;   # DG/UX machines
-*-qnx*)                opt_bash_malloc=no ;;   # QNX 4.2, QNX 6.x
-*-machten4)    opt_bash_malloc=no ;;   # MachTen 4.x
-*-bsdi2.1|*-bsdi3.?)   opt_bash_malloc=no ; : ${CC:=shlicc2} ;; # for loadable builtins
-*-beos*)       opt_bash_malloc=no ;;   # they say it's suitable
-*-cygwin*)     opt_bash_malloc=no ;;   # Cygnus's CYGWIN environment
-*-opennt*|*-interix*)  opt_bash_malloc=no ;;   # Interix, now owned by Microsoft
-esac
-
-# memory scrambling on free()
-case "${host_os}" in
-sco3.2v5*|sco3.2v4*)   opt_memscramble=no ;;
-*)                     opt_memscramble=yes ;;
-esac
-
-
-
-
-# Check whether --with-afs or --without-afs was given.
-if test "${with_afs+set}" = set; then
-  withval="$with_afs"
-  opt_afs=$withval
-fi; 
-
-# Check whether --with-bash-malloc or --without-bash-malloc was given.
-if test "${with_bash_malloc+set}" = set; then
-  withval="$with_bash_malloc"
-  opt_bash_malloc=$withval
-fi; 
-
-# Check whether --with-curses or --without-curses was given.
-if test "${with_curses+set}" = set; then
-  withval="$with_curses"
-  opt_curses=$withval
-fi; 
-
-# Check whether --with-gnu-malloc or --without-gnu-malloc was given.
-if test "${with_gnu_malloc+set}" = set; then
-  withval="$with_gnu_malloc"
-  opt_bash_malloc=$withval
-fi; 
-
-# Check whether --with-installed-readline or --without-installed-readline was given.
-if test "${with_installed_readline+set}" = set; then
-  withval="$with_installed_readline"
-  opt_with_installed_readline=$withval
-fi; 
-
-# Check whether --with-purecov or --without-purecov was given.
-if test "${with_purecov+set}" = set; then
-  withval="$with_purecov"
-  opt_purecov=$withval
-fi; 
-
-# Check whether --with-purify or --without-purify was given.
-if test "${with_purify+set}" = set; then
-  withval="$with_purify"
-  opt_purify=$withval
-fi; 
-
-if test "$opt_bash_malloc" = yes; then
-       MALLOC_TARGET=malloc
-       MALLOC_SRC=malloc.c
-
-       MALLOC_LIB='-lmalloc'
-       MALLOC_LIBRARY='$(ALLOC_LIBDIR)/libmalloc.a'
-       MALLOC_LDFLAGS='-L$(ALLOC_LIBDIR)'
-       MALLOC_DEP='$(MALLOC_LIBRARY)'
-
-       cat >>confdefs.h <<\_ACEOF
-@%:@define USING_BASH_MALLOC 1
-_ACEOF
-
-else
-       MALLOC_LIB=
-       MALLOC_LIBRARY=
-       MALLOC_LDFLAGS=
-       MALLOC_DEP=     
-fi
-
-if test "$opt_purify" = yes; then
-       PURIFY="purify "
-       cat >>confdefs.h <<\_ACEOF
-@%:@define DISABLE_MALLOC_WRAPPERS 1
-_ACEOF
-
-else
-       PURIFY=
-fi
-
-if test "$opt_purecov" = yes; then
-       PURIFY="${PURIFY}purecov"
-fi
-
-if test "$opt_afs" = yes; then
-       cat >>confdefs.h <<\_ACEOF
-@%:@define AFS 1
-_ACEOF
-
-fi
-
-if test "$opt_curses" = yes; then
-       prefer_curses=yes
-fi
-
-if test -z "${DEBUGGER_START_FILE}"; then
-       DEBUGGER_START_FILE='${datadir}/bashdb/bashdb-main.inc'
-fi
-
-opt_minimal_config=no
-
-opt_job_control=yes
-opt_alias=yes
-opt_readline=yes
-opt_history=yes
-opt_bang_history=yes
-opt_dirstack=yes
-opt_restricted=yes
-opt_process_subst=yes
-opt_prompt_decoding=yes
-opt_select=yes
-opt_help=yes
-opt_array_variables=yes
-opt_dparen_arith=yes
-opt_extended_glob=yes
-opt_brace_expansion=yes
-opt_disabled_builtins=no
-opt_command_timing=yes
-opt_xpg_echo=no
-opt_strict_posix=no
-opt_cond_command=yes
-opt_cond_regexp=yes
-opt_coproc=yes
-opt_arith_for_command=yes
-opt_net_redirs=yes
-opt_progcomp=yes
-opt_separate_help=no
-opt_multibyte=yes
-opt_debugger=yes
-opt_single_longdoc_strings=yes
-opt_casemod_attrs=yes
-opt_casemod_expansions=yes
-opt_extglob_default=no
-
-opt_static_link=no
-opt_profiling=no
-
-# Check whether --enable-minimal-config or --disable-minimal-config was given.
-if test "${enable_minimal_config+set}" = set; then
-  enableval="$enable_minimal_config"
-  opt_minimal_config=$enableval
-fi; 
-
-if test $opt_minimal_config = yes; then
-       opt_job_control=no opt_alias=no opt_readline=no
-       opt_history=no opt_bang_history=no opt_dirstack=no
-       opt_restricted=no opt_process_subst=no opt_prompt_decoding=no
-       opt_select=no opt_help=no opt_array_variables=no opt_dparen_arith=no
-       opt_brace_expansion=no opt_disabled_builtins=no opt_command_timing=no
-       opt_extended_glob=no opt_cond_command=no opt_arith_for_command=no
-       opt_net_redirs=no opt_progcomp=no opt_separate_help=no
-       opt_multibyte=yes opt_cond_regexp=no opt_coproc=no
-       opt_casemod_attrs=no opt_casemod_expansions=no opt_extglob_default=no
-fi
-
-# Check whether --enable-alias or --disable-alias was given.
-if test "${enable_alias+set}" = set; then
-  enableval="$enable_alias"
-  opt_alias=$enableval
-fi; 
-# Check whether --enable-arith-for-command or --disable-arith-for-command was given.
-if test "${enable_arith_for_command+set}" = set; then
-  enableval="$enable_arith_for_command"
-  opt_arith_for_command=$enableval
-fi; 
-# Check whether --enable-array-variables or --disable-array-variables was given.
-if test "${enable_array_variables+set}" = set; then
-  enableval="$enable_array_variables"
-  opt_array_variables=$enableval
-fi; 
-# Check whether --enable-bang-history or --disable-bang-history was given.
-if test "${enable_bang_history+set}" = set; then
-  enableval="$enable_bang_history"
-  opt_bang_history=$enableval
-fi; 
-# Check whether --enable-brace-expansion or --disable-brace-expansion was given.
-if test "${enable_brace_expansion+set}" = set; then
-  enableval="$enable_brace_expansion"
-  opt_brace_expansion=$enableval
-fi; 
-# Check whether --enable-casemod-attributes or --disable-casemod-attributes was given.
-if test "${enable_casemod_attributes+set}" = set; then
-  enableval="$enable_casemod_attributes"
-  opt_casemod_attrs=$enableval
-fi; 
-# Check whether --enable-casemod-expansions or --disable-casemod-expansions was given.
-if test "${enable_casemod_expansions+set}" = set; then
-  enableval="$enable_casemod_expansions"
-  opt_casemod_expansions=$enableval
-fi; 
-# Check whether --enable-command-timing or --disable-command-timing was given.
-if test "${enable_command_timing+set}" = set; then
-  enableval="$enable_command_timing"
-  opt_command_timing=$enableval
-fi; 
-# Check whether --enable-cond-command or --disable-cond-command was given.
-if test "${enable_cond_command+set}" = set; then
-  enableval="$enable_cond_command"
-  opt_cond_command=$enableval
-fi; 
-# Check whether --enable-cond-regexp or --disable-cond-regexp was given.
-if test "${enable_cond_regexp+set}" = set; then
-  enableval="$enable_cond_regexp"
-  opt_cond_regexp=$enableval
-fi; 
-# Check whether --enable-coprocesses or --disable-coprocesses was given.
-if test "${enable_coprocesses+set}" = set; then
-  enableval="$enable_coprocesses"
-  opt_coproc=$enableval
-fi; 
-# Check whether --enable-debugger or --disable-debugger was given.
-if test "${enable_debugger+set}" = set; then
-  enableval="$enable_debugger"
-  opt_debugger=$enableval
-fi; 
-# Check whether --enable-directory-stack or --disable-directory-stack was given.
-if test "${enable_directory_stack+set}" = set; then
-  enableval="$enable_directory_stack"
-  opt_dirstack=$enableval
-fi; 
-# Check whether --enable-disabled-builtins or --disable-disabled-builtins was given.
-if test "${enable_disabled_builtins+set}" = set; then
-  enableval="$enable_disabled_builtins"
-  opt_disabled_builtins=$enableval
-fi; 
-# Check whether --enable-dparen-arithmetic or --disable-dparen-arithmetic was given.
-if test "${enable_dparen_arithmetic+set}" = set; then
-  enableval="$enable_dparen_arithmetic"
-  opt_dparen_arith=$enableval
-fi; 
-# Check whether --enable-extended-glob or --disable-extended-glob was given.
-if test "${enable_extended_glob+set}" = set; then
-  enableval="$enable_extended_glob"
-  opt_extended_glob=$enableval
-fi; 
-# Check whether --enable-extended-glob-default or --disable-extended-glob-default was given.
-if test "${enable_extended_glob_default+set}" = set; then
-  enableval="$enable_extended_glob_default"
-  opt_extglob_default=$enableval
-fi; 
-# Check whether --enable-help-builtin or --disable-help-builtin was given.
-if test "${enable_help_builtin+set}" = set; then
-  enableval="$enable_help_builtin"
-  opt_help=$enableval
-fi; 
-# Check whether --enable-history or --disable-history was given.
-if test "${enable_history+set}" = set; then
-  enableval="$enable_history"
-  opt_history=$enableval
-fi; 
-# Check whether --enable-job-control or --disable-job-control was given.
-if test "${enable_job_control+set}" = set; then
-  enableval="$enable_job_control"
-  opt_job_control=$enableval
-fi; 
-# Check whether --enable-multibyte or --disable-multibyte was given.
-if test "${enable_multibyte+set}" = set; then
-  enableval="$enable_multibyte"
-  opt_multibyte=$enableval
-fi; 
-# Check whether --enable-net-redirections or --disable-net-redirections was given.
-if test "${enable_net_redirections+set}" = set; then
-  enableval="$enable_net_redirections"
-  opt_net_redirs=$enableval
-fi; 
-# Check whether --enable-process-substitution or --disable-process-substitution was given.
-if test "${enable_process_substitution+set}" = set; then
-  enableval="$enable_process_substitution"
-  opt_process_subst=$enableval
-fi; 
-# Check whether --enable-progcomp or --disable-progcomp was given.
-if test "${enable_progcomp+set}" = set; then
-  enableval="$enable_progcomp"
-  opt_progcomp=$enableval
-fi; 
-# Check whether --enable-prompt-string-decoding or --disable-prompt-string-decoding was given.
-if test "${enable_prompt_string_decoding+set}" = set; then
-  enableval="$enable_prompt_string_decoding"
-  opt_prompt_decoding=$enableval
-fi; 
-# Check whether --enable-readline or --disable-readline was given.
-if test "${enable_readline+set}" = set; then
-  enableval="$enable_readline"
-  opt_readline=$enableval
-fi; 
-# Check whether --enable-restricted or --disable-restricted was given.
-if test "${enable_restricted+set}" = set; then
-  enableval="$enable_restricted"
-  opt_restricted=$enableval
-fi; 
-# Check whether --enable-select or --disable-select was given.
-if test "${enable_select+set}" = set; then
-  enableval="$enable_select"
-  opt_select=$enableval
-fi; 
-# Check whether --enable-separate-helpfiles or --disable-separate-helpfiles was given.
-if test "${enable_separate_helpfiles+set}" = set; then
-  enableval="$enable_separate_helpfiles"
-  opt_separate_help=$enableval
-fi; 
-# Check whether --enable-single-help-strings or --disable-single-help-strings was given.
-if test "${enable_single_help_strings+set}" = set; then
-  enableval="$enable_single_help_strings"
-  opt_single_longdoc_strings=$enableval
-fi; 
-# Check whether --enable-strict-posix-default or --disable-strict-posix-default was given.
-if test "${enable_strict_posix_default+set}" = set; then
-  enableval="$enable_strict_posix_default"
-  opt_strict_posix=$enableval
-fi; 
-# Check whether --enable-usg-echo-default or --disable-usg-echo-default was given.
-if test "${enable_usg_echo_default+set}" = set; then
-  enableval="$enable_usg_echo_default"
-  opt_xpg_echo=$enableval
-fi; 
-# Check whether --enable-xpg-echo-default or --disable-xpg-echo-default was given.
-if test "${enable_xpg_echo_default+set}" = set; then
-  enableval="$enable_xpg_echo_default"
-  opt_xpg_echo=$enableval
-fi; 
-
-# Check whether --enable-mem-scramble or --disable-mem-scramble was given.
-if test "${enable_mem_scramble+set}" = set; then
-  enableval="$enable_mem_scramble"
-  opt_memscramble=$enableval
-fi; 
-# Check whether --enable-profiling or --disable-profiling was given.
-if test "${enable_profiling+set}" = set; then
-  enableval="$enable_profiling"
-  opt_profiling=$enableval
-fi; 
-# Check whether --enable-static-link or --disable-static-link was given.
-if test "${enable_static_link+set}" = set; then
-  enableval="$enable_static_link"
-  opt_static_link=$enableval
-fi; 
-
-
-
-
-
-
-
-
-if test $opt_alias = yes; then
-cat >>confdefs.h <<\_ACEOF
-@%:@define ALIAS 1
-_ACEOF
-
-fi
-if test $opt_dirstack = yes; then
-cat >>confdefs.h <<\_ACEOF
-@%:@define PUSHD_AND_POPD 1
-_ACEOF
-
-fi
-if test $opt_restricted = yes; then
-cat >>confdefs.h <<\_ACEOF
-@%:@define RESTRICTED_SHELL 1
-_ACEOF
-
-fi
-if test $opt_process_subst = yes; then
-cat >>confdefs.h <<\_ACEOF
-@%:@define PROCESS_SUBSTITUTION 1
-_ACEOF
-
-fi
-if test $opt_prompt_decoding = yes; then
-cat >>confdefs.h <<\_ACEOF
-@%:@define PROMPT_STRING_DECODE 1
-_ACEOF
-
-fi
-if test $opt_select = yes; then
-cat >>confdefs.h <<\_ACEOF
-@%:@define SELECT_COMMAND 1
-_ACEOF
-
-fi
-if test $opt_help = yes; then
-cat >>confdefs.h <<\_ACEOF
-@%:@define HELP_BUILTIN 1
-_ACEOF
-
-fi
-if test $opt_array_variables = yes; then
-cat >>confdefs.h <<\_ACEOF
-@%:@define ARRAY_VARS 1
-_ACEOF
-
-fi
-if test $opt_dparen_arith = yes; then
-cat >>confdefs.h <<\_ACEOF
-@%:@define DPAREN_ARITHMETIC 1
-_ACEOF
-
-fi
-if test $opt_brace_expansion = yes; then
-cat >>confdefs.h <<\_ACEOF
-@%:@define BRACE_EXPANSION 1
-_ACEOF
-
-fi
-if test $opt_disabled_builtins = yes; then
-cat >>confdefs.h <<\_ACEOF
-@%:@define DISABLED_BUILTINS 1
-_ACEOF
-
-fi
-if test $opt_command_timing = yes; then
-cat >>confdefs.h <<\_ACEOF
-@%:@define COMMAND_TIMING 1
-_ACEOF
-
-fi
-if test $opt_xpg_echo = yes ; then
-cat >>confdefs.h <<\_ACEOF
-@%:@define DEFAULT_ECHO_TO_XPG 1
-_ACEOF
-
-fi
-if test $opt_strict_posix = yes; then
-cat >>confdefs.h <<\_ACEOF
-@%:@define STRICT_POSIX 1
-_ACEOF
-
-fi
-if test $opt_extended_glob = yes ; then
-cat >>confdefs.h <<\_ACEOF
-@%:@define EXTENDED_GLOB 1
-_ACEOF
-
-fi
-if test $opt_extglob_default = yes; then
-cat >>confdefs.h <<\_ACEOF
-@%:@define EXTGLOB_DEFAULT 1
-_ACEOF
-
-else
-cat >>confdefs.h <<\_ACEOF
-@%:@define EXTGLOB_DEFAULT 0
-_ACEOF
-
-fi
-if test $opt_cond_command = yes ; then
-cat >>confdefs.h <<\_ACEOF
-@%:@define COND_COMMAND 1
-_ACEOF
-
-fi
-if test $opt_cond_regexp = yes ; then
-cat >>confdefs.h <<\_ACEOF
-@%:@define COND_REGEXP 1
-_ACEOF
-
-fi
-if test $opt_coproc = yes; then
-cat >>confdefs.h <<\_ACEOF
-@%:@define COPROCESS_SUPPORT 1
-_ACEOF
-
-fi
-if test $opt_arith_for_command = yes; then
-cat >>confdefs.h <<\_ACEOF
-@%:@define ARITH_FOR_COMMAND 1
-_ACEOF
-
-fi
-if test $opt_net_redirs = yes; then
-cat >>confdefs.h <<\_ACEOF
-@%:@define NETWORK_REDIRECTIONS 1
-_ACEOF
-
-fi
-if test $opt_progcomp = yes; then
-cat >>confdefs.h <<\_ACEOF
-@%:@define PROGRAMMABLE_COMPLETION 1
-_ACEOF
-
-fi
-if test $opt_multibyte = no; then
-cat >>confdefs.h <<\_ACEOF
-@%:@define NO_MULTIBYTE_SUPPORT 1
-_ACEOF
-
-fi
-if test $opt_debugger = yes; then
-cat >>confdefs.h <<\_ACEOF
-@%:@define DEBUGGER 1
-_ACEOF
-
-fi
-if test $opt_casemod_attrs = yes; then
-cat >>confdefs.h <<\_ACEOF
-@%:@define CASEMOD_ATTRS 1
-_ACEOF
-
-fi
-if test $opt_casemod_expansions = yes; then
-cat >>confdefs.h <<\_ACEOF
-@%:@define CASEMOD_EXPANSIONS 1
-_ACEOF
-
-fi
-
-if test $opt_memscramble = yes; then
-cat >>confdefs.h <<\_ACEOF
-@%:@define MEMSCRAMBLE 1
-_ACEOF
-
-fi
-
-if test "$opt_minimal_config" = yes; then
-       TESTSCRIPT=run-minimal
-else
-       TESTSCRIPT=run-all
-fi
-
-HELPDIR= HELPDIRDEFINE= HELPINSTALL= HELPFILES_TARGET=
-if test "$opt_separate_help" != no; then
-       if test "$opt_separate_help" = "yes" ; then
-               HELPDIR='${datadir}/bash'
-       else
-               HELPDIR=$opt_separate_help
-       fi
-       HELPDIRDEFINE='-H ${HELPDIR}'
-       HELPINSTALL='install-help'
-       HELPFILES_TARGET='helpdoc'
-fi
-HELPSTRINGS=
-if test "$opt_single_longdoc_strings" != "yes"; then
-       HELPSTRINGS='-S'
-fi
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-echo ""
-echo "Beginning configuration for bash-$BASHVERS-$RELSTATUS for ${host_cpu}-${host_vendor}-${host_os}"
-echo ""
-
-ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-if test -n "$ac_tool_prefix"; then
-  # Extract the first word of "${ac_tool_prefix}gcc", so it can be a program name with args.
-set dummy ${ac_tool_prefix}gcc; 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_tool_prefix}gcc"
-    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
-
-fi
-if test -z "$ac_cv_prog_CC"; then
-  ac_ct_CC=$CC
-  # Extract the first word of "gcc", so it can be a program name with args.
-set dummy gcc; 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_ac_ct_CC+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  if test -n "$ac_ct_CC"; then
-  ac_cv_prog_ac_ct_CC="$ac_ct_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_ac_ct_CC="gcc"
-    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-done
-
-fi
-fi
-ac_ct_CC=$ac_cv_prog_ac_ct_CC
-if test -n "$ac_ct_CC"; then
-  echo "$as_me:$LINENO: result: $ac_ct_CC" >&5
-echo "${ECHO_T}$ac_ct_CC" >&6
-else
-  echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6
-fi
-
-  CC=$ac_ct_CC
-else
-  CC="$ac_cv_prog_CC"
-fi
-
-if test -z "$CC"; then
-  if test -n "$ac_tool_prefix"; then
-  # Extract the first word of "${ac_tool_prefix}cc", so it can be a program name with args.
-set dummy ${ac_tool_prefix}cc; 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_tool_prefix}cc"
-    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
-
-fi
-if test -z "$ac_cv_prog_CC"; then
-  ac_ct_CC=$CC
-  # Extract the first word of "cc", so it can be a program name with args.
-set dummy cc; 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_ac_ct_CC+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  if test -n "$ac_ct_CC"; then
-  ac_cv_prog_ac_ct_CC="$ac_ct_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_ac_ct_CC="cc"
-    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-done
-
-fi
-fi
-ac_ct_CC=$ac_cv_prog_ac_ct_CC
-if test -n "$ac_ct_CC"; then
-  echo "$as_me:$LINENO: result: $ac_ct_CC" >&5
-echo "${ECHO_T}$ac_ct_CC" >&6
-else
-  echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6
-fi
-
-  CC=$ac_ct_CC
-else
-  CC="$ac_cv_prog_CC"
-fi
-
-fi
-if test -z "$CC"; then
-  # Extract the first word of "cc", so it can be a program name with args.
-set dummy cc; 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
-  ac_prog_rejected=no
-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
-    if test "$as_dir/$ac_word$ac_exec_ext" = "/usr/ucb/cc"; then
-       ac_prog_rejected=yes
-       continue
-     fi
-    ac_cv_prog_CC="cc"
-    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-done
-
-if test $ac_prog_rejected = yes; then
-  # We found a bogon in the path, so make sure we never use it.
-  set dummy $ac_cv_prog_CC
-  shift
-  if test $@%:@ != 0; then
-    # We chose a different compiler from the bogus one.
-    # However, it has the same basename, so the bogon will be chosen
-    # first if we set CC to just the basename; use the full file name.
-    shift
-    ac_cv_prog_CC="$as_dir/$ac_word${1+' '}$@"
-  fi
-fi
-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
-
-fi
-if test -z "$CC"; then
-  if test -n "$ac_tool_prefix"; then
-  for ac_prog in cl
-  do
-    # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.
-set dummy $ac_tool_prefix$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_tool_prefix$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
-fi
-if test -z "$CC"; then
-  ac_ct_CC=$CC
-  for ac_prog in cl
-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_ac_ct_CC+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  if test -n "$ac_ct_CC"; then
-  ac_cv_prog_ac_ct_CC="$ac_ct_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_ac_ct_CC="$ac_prog"
-    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-done
-
-fi
-fi
-ac_ct_CC=$ac_cv_prog_ac_ct_CC
-if test -n "$ac_ct_CC"; then
-  echo "$as_me:$LINENO: result: $ac_ct_CC" >&5
-echo "${ECHO_T}$ac_ct_CC" >&6
-else
-  echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6
-fi
-
-  test -n "$ac_ct_CC" && break
-done
-
-  CC=$ac_ct_CC
-fi
-
-fi
-
-
-test -z "$CC" && { { echo "$as_me:$LINENO: error: no acceptable C compiler found in \$PATH
-See \`config.log' for more details." >&5
-echo "$as_me: error: no acceptable C compiler found in \$PATH
-See \`config.log' for more details." >&2;}
-   { (exit 1); exit 1; }; }
-
-# Provide some information about the compiler.
-echo "$as_me:$LINENO:" \
-     "checking for C compiler version" >&5
-ac_compiler=`set X $ac_compile; echo $2`
-{ (eval echo "$as_me:$LINENO: \"$ac_compiler --version </dev/null >&5\"") >&5
-  (eval $ac_compiler --version </dev/null >&5) 2>&5
-  ac_status=$?
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }
-{ (eval echo "$as_me:$LINENO: \"$ac_compiler -v </dev/null >&5\"") >&5
-  (eval $ac_compiler -v </dev/null >&5) 2>&5
-  ac_status=$?
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }
-{ (eval echo "$as_me:$LINENO: \"$ac_compiler -V </dev/null >&5\"") >&5
-  (eval $ac_compiler -V </dev/null >&5) 2>&5
-  ac_status=$?
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }
-
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-
-int
-main ()
-{
-
-  ;
-  return 0;
-}
-_ACEOF
-ac_clean_files_save=$ac_clean_files
-ac_clean_files="$ac_clean_files a.out a.exe b.out"
-# Try to create an executable without -o first, disregard a.out.
-# It will help us diagnose broken compilers, and finding out an intuition
-# of exeext.
-echo "$as_me:$LINENO: checking for C compiler default output file name" >&5
-echo $ECHO_N "checking for C compiler default output file name... $ECHO_C" >&6
-ac_link_default=`echo "$ac_link" | sed 's/ -o *conftest[^ ]*//'`
-if { (eval echo "$as_me:$LINENO: \"$ac_link_default\"") >&5
-  (eval $ac_link_default) 2>&5
-  ac_status=$?
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; then
-  # Find the output, starting from the most likely.  This scheme is
-# not robust to junk in `.', hence go to wildcards (a.*) only as a last
-# resort.
-
-# Be careful to initialize this variable, since it used to be cached.
-# Otherwise an old cache value of `no' led to `EXEEXT = no' in a Makefile.
-ac_cv_exeext=
-# b.out is created by i960 compilers.
-for ac_file in a_out.exe a.exe conftest.exe a.out conftest a.* conftest.* b.out
-do
-  test -f "$ac_file" || continue
-  case $ac_file in
-    *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.o | *.obj )
-       ;;
-    conftest.$ac_ext )
-       # This is the source file.
-       ;;
-    [ab].out )
-       # We found the default executable, but exeext='' is most
-       # certainly right.
-       break;;
-    *.* )
-       ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'`
-       # FIXME: I believe we export ac_cv_exeext for Libtool,
-       # but it would be cool to find out if it's true.  Does anybody
-       # maintain Libtool? --akim.
-       export ac_cv_exeext
-       break;;
-    * )
-       break;;
-  esac
-done
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-{ { echo "$as_me:$LINENO: error: C compiler cannot create executables
-See \`config.log' for more details." >&5
-echo "$as_me: error: C compiler cannot create executables
-See \`config.log' for more details." >&2;}
-   { (exit 77); exit 77; }; }
-fi
-
-ac_exeext=$ac_cv_exeext
-echo "$as_me:$LINENO: result: $ac_file" >&5
-echo "${ECHO_T}$ac_file" >&6
-
-# Check the compiler produces executables we can run.  If not, either
-# the compiler is broken, or we cross compile.
-echo "$as_me:$LINENO: checking whether the C compiler works" >&5
-echo $ECHO_N "checking whether the C compiler works... $ECHO_C" >&6
-# FIXME: These cross compiler hacks should be removed for Autoconf 3.0
-# If not cross compiling, check that we can run a simple program.
-if test "$cross_compiling" != yes; then
-  if { ac_try='./$ac_file'
-  { (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
-    cross_compiling=no
-  else
-    if test "$cross_compiling" = maybe; then
-       cross_compiling=yes
-    else
-       { { echo "$as_me:$LINENO: error: cannot run C compiled programs.
-If you meant to cross compile, use \`--host'.
-See \`config.log' for more details." >&5
-echo "$as_me: error: cannot run C compiled programs.
-If you meant to cross compile, use \`--host'.
-See \`config.log' for more details." >&2;}
-   { (exit 1); exit 1; }; }
-    fi
-  fi
-fi
-echo "$as_me:$LINENO: result: yes" >&5
-echo "${ECHO_T}yes" >&6
-
-rm -f a.out a.exe conftest$ac_cv_exeext b.out
-ac_clean_files=$ac_clean_files_save
-# Check the compiler produces executables we can run.  If not, either
-# the compiler is broken, or we cross compile.
-echo "$as_me:$LINENO: checking whether we are cross compiling" >&5
-echo $ECHO_N "checking whether we are cross compiling... $ECHO_C" >&6
-echo "$as_me:$LINENO: result: $cross_compiling" >&5
-echo "${ECHO_T}$cross_compiling" >&6
-
-echo "$as_me:$LINENO: checking for suffix of executables" >&5
-echo $ECHO_N "checking for suffix of executables... $ECHO_C" >&6
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>&5
-  ac_status=$?
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; then
-  # If both `conftest.exe' and `conftest' are `present' (well, observable)
-# catch `conftest.exe'.  For instance with Cygwin, `ls conftest' will
-# work properly (i.e., refer to `conftest.exe'), while it won't with
-# `rm'.
-for ac_file in conftest.exe conftest conftest.*; do
-  test -f "$ac_file" || continue
-  case $ac_file in
-    *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.o | *.obj ) ;;
-    *.* ) ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'`
-         export ac_cv_exeext
-         break;;
-    * ) break;;
-  esac
-done
-else
-  { { echo "$as_me:$LINENO: error: cannot compute suffix of executables: cannot compile and link
-See \`config.log' for more details." >&5
-echo "$as_me: error: cannot compute suffix of executables: cannot compile and link
-See \`config.log' for more details." >&2;}
-   { (exit 1); exit 1; }; }
-fi
-
-rm -f conftest$ac_cv_exeext
-echo "$as_me:$LINENO: result: $ac_cv_exeext" >&5
-echo "${ECHO_T}$ac_cv_exeext" >&6
-
-rm -f conftest.$ac_ext
-EXEEXT=$ac_cv_exeext
-ac_exeext=$EXEEXT
-echo "$as_me:$LINENO: checking for suffix of object files" >&5
-echo $ECHO_N "checking for suffix of object files... $ECHO_C" >&6
-if test "${ac_cv_objext+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-
-int
-main ()
-{
-
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.o conftest.obj
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>&5
-  ac_status=$?
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; then
-  for ac_file in `(ls conftest.o conftest.obj; ls conftest.*) 2>/dev/null`; do
-  case $ac_file in
-    *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg ) ;;
-    *) ac_cv_objext=`expr "$ac_file" : '.*\.\(.*\)'`
-       break;;
-  esac
-done
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-{ { echo "$as_me:$LINENO: error: cannot compute suffix of object files: cannot compile
-See \`config.log' for more details." >&5
-echo "$as_me: error: cannot compute suffix of object files: cannot compile
-See \`config.log' for more details." >&2;}
-   { (exit 1); exit 1; }; }
-fi
-
-rm -f conftest.$ac_cv_objext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: $ac_cv_objext" >&5
-echo "${ECHO_T}$ac_cv_objext" >&6
-OBJEXT=$ac_cv_objext
-ac_objext=$OBJEXT
-echo "$as_me:$LINENO: checking whether we are using the GNU C compiler" >&5
-echo $ECHO_N "checking whether we are using the GNU C compiler... $ECHO_C" >&6
-if test "${ac_cv_c_compiler_gnu+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-
-int
-main ()
-{
-#ifndef __GNUC__
-       choke me
-#endif
-
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_compiler_gnu=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_compiler_gnu=no
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-ac_cv_c_compiler_gnu=$ac_compiler_gnu
-
-fi
-echo "$as_me:$LINENO: result: $ac_cv_c_compiler_gnu" >&5
-echo "${ECHO_T}$ac_cv_c_compiler_gnu" >&6
-GCC=`test $ac_compiler_gnu = yes && echo yes`
-ac_test_CFLAGS=${CFLAGS+set}
-ac_save_CFLAGS=$CFLAGS
-CFLAGS="-g"
-echo "$as_me:$LINENO: checking whether $CC accepts -g" >&5
-echo $ECHO_N "checking whether $CC accepts -g... $ECHO_C" >&6
-if test "${ac_cv_prog_cc_g+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-
-int
-main ()
-{
-
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_cv_prog_cc_g=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_cv_prog_cc_g=no
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: $ac_cv_prog_cc_g" >&5
-echo "${ECHO_T}$ac_cv_prog_cc_g" >&6
-if test "$ac_test_CFLAGS" = set; then
-  CFLAGS=$ac_save_CFLAGS
-elif test $ac_cv_prog_cc_g = yes; then
-  if test "$GCC" = yes; then
-    CFLAGS="-g -O2"
-  else
-    CFLAGS="-g"
-  fi
-else
-  if test "$GCC" = yes; then
-    CFLAGS="-O2"
-  else
-    CFLAGS=
-  fi
-fi
-echo "$as_me:$LINENO: checking for $CC option to accept ANSI C" >&5
-echo $ECHO_N "checking for $CC option to accept ANSI C... $ECHO_C" >&6
-if test "${ac_cv_prog_cc_stdc+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  ac_cv_prog_cc_stdc=no
-ac_save_CC=$CC
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <stdarg.h>
-#include <stdio.h>
-#include <sys/types.h>
-#include <sys/stat.h>
-/* Most of the following tests are stolen from RCS 5.7's src/conf.sh.  */
-struct buf { int x; };
-FILE * (*rcsopen) (struct buf *, struct stat *, int);
-static char *e (p, i)
-     char **p;
-     int i;
-{
-  return p[i];
-}
-static char *f (char * (*g) (char **, int), char **p, ...)
-{
-  char *s;
-  va_list v;
-  va_start (v,p);
-  s = g (p, va_arg (v,int));
-  va_end (v);
-  return s;
-}
-
-/* OSF 4.0 Compaq cc is some sort of almost-ANSI by default.  It has
-   function prototypes and stuff, but not '\xHH' hex character constants.
-   These don't provoke an error unfortunately, instead are silently treated
-   as 'x'.  The following induces an error, until -std1 is added to get
-   proper ANSI mode.  Curiously '\x00'!='x' always comes out true, for an
-   array size at least.  It's necessary to write '\x00'==0 to get something
-   that's true only with -std1.  */
-int osf4_cc_array ['\x00' == 0 ? 1 : -1];
-
-int test (int i, double x);
-struct s1 {int (*f) (int a);};
-struct s2 {int (*f) (double a);};
-int pairnames (int, char **, FILE *(*)(struct buf *, struct stat *, int), int, int);
-int argc;
-char **argv;
-int
-main ()
-{
-return f (e, argv, 0) != argv[0]  ||  f (e, argv, 1) != argv[1];
-  ;
-  return 0;
-}
-_ACEOF
-# Don't try gcc -ansi; that turns off useful extensions and
-# breaks some systems' header files.
-# AIX                  -qlanglvl=ansi
-# Ultrix and OSF/1     -std1
-# HP-UX 10.20 and later        -Ae
-# HP-UX older versions -Aa -D_HPUX_SOURCE
-# SVR4                 -Xc -D__EXTENSIONS__
-for ac_arg in "" -qlanglvl=ansi -std1 -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__"
-do
-  CC="$ac_save_CC $ac_arg"
-  rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_cv_prog_cc_stdc=$ac_arg
-break
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-fi
-rm -f conftest.err conftest.$ac_objext 
-done
-rm -f conftest.$ac_ext conftest.$ac_objext
-CC=$ac_save_CC
-
-fi
-
-case "x$ac_cv_prog_cc_stdc" in
-  x|xno)
-    echo "$as_me:$LINENO: result: none needed" >&5
-echo "${ECHO_T}none needed" >&6 ;;
-  *)
-    echo "$as_me:$LINENO: result: $ac_cv_prog_cc_stdc" >&5
-echo "${ECHO_T}$ac_cv_prog_cc_stdc" >&6
-    CC="$CC $ac_cv_prog_cc_stdc" ;;
-esac
-
-# Some people use a C++ compiler to compile C.  Since we use `exit',
-# in C++ we need to declare it.  In case someone uses the same compiler
-# for both compiling C and C++ we need to have the C++ compiler decide
-# the declaration of exit, since it's the most demanding environment.
-cat >conftest.$ac_ext <<_ACEOF
-@%:@ifndef __cplusplus
-  choke me
-@%:@endif
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  for ac_declaration in \
-   '' \
-   'extern "C" void std::exit (int) throw (); using std::exit;' \
-   'extern "C" void std::exit (int); using std::exit;' \
-   'extern "C" void exit (int) throw ();' \
-   'extern "C" void exit (int);' \
-   'void exit (int);'
-do
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_declaration
-@%:@include <stdlib.h>
-int
-main ()
-{
-exit (42);
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  :
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-continue
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_declaration
-int
-main ()
-{
-exit (42);
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  break
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-done
-rm -f conftest*
-if test -n "$ac_declaration"; then
-  echo '#ifdef __cplusplus' >>confdefs.h
-  echo $ac_declaration      >>confdefs.h
-  echo '#endif'             >>confdefs.h
-fi
-
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-
-
-
-
-        echo "$as_me:$LINENO: checking for strerror in -lcposix" >&5
-echo $ECHO_N "checking for strerror in -lcposix... $ECHO_C" >&6
-if test "${ac_cv_lib_cposix_strerror+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  ac_check_lib_save_LIBS=$LIBS
-LIBS="-lcposix  $LIBS"
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-
-/* Override any gcc2 internal prototype to avoid an error.  */
-#ifdef __cplusplus
-extern "C"
-#endif
-/* We use char because int might match the return type of a gcc2
-   builtin and then its argument prototype would still apply.  */
-char strerror ();
-int
-main ()
-{
-strerror ();
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest$ac_exeext'
-  { (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
-  ac_cv_lib_cposix_strerror=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_cv_lib_cposix_strerror=no
-fi
-rm -f conftest.err conftest.$ac_objext \
-      conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-echo "$as_me:$LINENO: result: $ac_cv_lib_cposix_strerror" >&5
-echo "${ECHO_T}$ac_cv_lib_cposix_strerror" >&6
-if test $ac_cv_lib_cposix_strerror = yes; then
-  LIBS="$LIBS -lcposix"
-fi
-
-  
-
-ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-echo "$as_me:$LINENO: checking how to run the C preprocessor" >&5
-echo $ECHO_N "checking how to run the C preprocessor... $ECHO_C" >&6
-# On Suns, sometimes $CPP names a directory.
-if test -n "$CPP" && test -d "$CPP"; then
-  CPP=
-fi
-if test -z "$CPP"; then
-  if test "${ac_cv_prog_CPP+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-      # Double quotes because CPP needs to be expanded
-    for CPP in "$CC -E" "$CC -E -traditional-cpp" "/lib/cpp"
-    do
-      ac_preproc_ok=false
-for ac_c_preproc_warn_flag in '' yes
-do
-  # Use a header file that comes with gcc, so configuring glibc
-  # with a fresh cross-compiler works.
-  # Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
-  # <limits.h> exists even on freestanding compilers.
-  # On the NeXT, cc -E runs the code through the compiler's parser,
-  # not just through cpp. "Syntax error" is here to catch this case.
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-@%:@ifdef __STDC__
-@%:@ include <limits.h>
-@%:@else
-@%:@ include <assert.h>
-@%:@endif
-                    Syntax error
-_ACEOF
-if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5
-  (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } >/dev/null; then
-  if test -s conftest.err; then
-    ac_cpp_err=$ac_c_preproc_warn_flag
-    ac_cpp_err=$ac_cpp_err$ac_c_werror_flag
-  else
-    ac_cpp_err=
-  fi
-else
-  ac_cpp_err=yes
-fi
-if test -z "$ac_cpp_err"; then
-  :
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-  # Broken: fails on valid input.
-continue
-fi
-rm -f conftest.err conftest.$ac_ext
-
-  # OK, works on sane cases.  Now check whether non-existent headers
-  # can be detected and how.
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-@%:@include <ac_nonexistent.h>
-_ACEOF
-if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5
-  (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } >/dev/null; then
-  if test -s conftest.err; then
-    ac_cpp_err=$ac_c_preproc_warn_flag
-    ac_cpp_err=$ac_cpp_err$ac_c_werror_flag
-  else
-    ac_cpp_err=
-  fi
-else
-  ac_cpp_err=yes
-fi
-if test -z "$ac_cpp_err"; then
-  # Broken: success on invalid input.
-continue
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-  # Passes both tests.
-ac_preproc_ok=:
-break
-fi
-rm -f conftest.err conftest.$ac_ext
-
-done
-# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.
-rm -f conftest.err conftest.$ac_ext
-if $ac_preproc_ok; then
-  break
-fi
-
-    done
-    ac_cv_prog_CPP=$CPP
-  
-fi
-  CPP=$ac_cv_prog_CPP
-else
-  ac_cv_prog_CPP=$CPP
-fi
-echo "$as_me:$LINENO: result: $CPP" >&5
-echo "${ECHO_T}$CPP" >&6
-ac_preproc_ok=false
-for ac_c_preproc_warn_flag in '' yes
-do
-  # Use a header file that comes with gcc, so configuring glibc
-  # with a fresh cross-compiler works.
-  # Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
-  # <limits.h> exists even on freestanding compilers.
-  # On the NeXT, cc -E runs the code through the compiler's parser,
-  # not just through cpp. "Syntax error" is here to catch this case.
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-@%:@ifdef __STDC__
-@%:@ include <limits.h>
-@%:@else
-@%:@ include <assert.h>
-@%:@endif
-                    Syntax error
-_ACEOF
-if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5
-  (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } >/dev/null; then
-  if test -s conftest.err; then
-    ac_cpp_err=$ac_c_preproc_warn_flag
-    ac_cpp_err=$ac_cpp_err$ac_c_werror_flag
-  else
-    ac_cpp_err=
-  fi
-else
-  ac_cpp_err=yes
-fi
-if test -z "$ac_cpp_err"; then
-  :
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-  # Broken: fails on valid input.
-continue
-fi
-rm -f conftest.err conftest.$ac_ext
-
-  # OK, works on sane cases.  Now check whether non-existent headers
-  # can be detected and how.
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-@%:@include <ac_nonexistent.h>
-_ACEOF
-if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5
-  (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } >/dev/null; then
-  if test -s conftest.err; then
-    ac_cpp_err=$ac_c_preproc_warn_flag
-    ac_cpp_err=$ac_cpp_err$ac_c_werror_flag
-  else
-    ac_cpp_err=
-  fi
-else
-  ac_cpp_err=yes
-fi
-if test -z "$ac_cpp_err"; then
-  # Broken: success on invalid input.
-continue
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-  # Passes both tests.
-ac_preproc_ok=:
-break
-fi
-rm -f conftest.err conftest.$ac_ext
-
-done
-# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.
-rm -f conftest.err conftest.$ac_ext
-if $ac_preproc_ok; then
-  :
-else
-  { { echo "$as_me:$LINENO: error: C preprocessor \"$CPP\" fails sanity check
-See \`config.log' for more details." >&5
-echo "$as_me: error: C preprocessor \"$CPP\" fails sanity check
-See \`config.log' for more details." >&2;}
-   { (exit 1); exit 1; }; }
-fi
-
-ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-
-
-echo "$as_me:$LINENO: checking for egrep" >&5
-echo $ECHO_N "checking for egrep... $ECHO_C" >&6
-if test "${ac_cv_prog_egrep+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  if echo a | (grep -E '(a|b)') >/dev/null 2>&1
-    then ac_cv_prog_egrep='grep -E'
-    else ac_cv_prog_egrep='egrep'
-    fi
-fi
-echo "$as_me:$LINENO: result: $ac_cv_prog_egrep" >&5
-echo "${ECHO_T}$ac_cv_prog_egrep" >&6
- EGREP=$ac_cv_prog_egrep
-
-echo "$as_me:$LINENO: checking for ANSI C header files" >&5
-echo $ECHO_N "checking for ANSI C header files... $ECHO_C" >&6
-if test "${ac_cv_header_stdc+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <stdlib.h>
-#include <stdarg.h>
-#include <string.h>
-#include <float.h>
-
-int
-main ()
-{
-
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_cv_header_stdc=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_cv_header_stdc=no
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-
-if test $ac_cv_header_stdc = yes; then
-  # SunOS 4.x string.h does not declare mem*, contrary to ANSI.
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <string.h>
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "memchr" >/dev/null 2>&1; then
-  :
-else
-  ac_cv_header_stdc=no
-fi
-rm -f conftest*
-
-fi
-
-if test $ac_cv_header_stdc = yes; then
-  # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI.
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <stdlib.h>
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "free" >/dev/null 2>&1; then
-  :
-else
-  ac_cv_header_stdc=no
-fi
-rm -f conftest*
-
-fi
-
-if test $ac_cv_header_stdc = yes; then
-  # /bin/cc in Irix-4.0.5 gets non-ANSI ctype macros unless using -ansi.
-  if test "$cross_compiling" = yes; then
-  :
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <ctype.h>
-#if ((' ' & 0x0FF) == 0x020)
-# define ISLOWER(c) ('a' <= (c) && (c) <= 'z')
-# define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c))
-#else
-# define ISLOWER(c) \
-                  (('a' <= (c) && (c) <= 'i') \
-                    || ('j' <= (c) && (c) <= 'r') \
-                    || ('s' <= (c) && (c) <= 'z'))
-# define TOUPPER(c) (ISLOWER(c) ? ((c) | 0x40) : (c))
-#endif
-
-#define XOR(e, f) (((e) && !(f)) || (!(e) && (f)))
-int
-main ()
-{
-  int i;
-  for (i = 0; i < 256; i++)
-    if (XOR (islower (i), ISLOWER (i))
-       || toupper (i) != TOUPPER (i))
-      exit(2);
-  exit (0);
-}
-_ACEOF
-rm -f conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>&5
-  ac_status=$?
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
-  { (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
-  :
-else
-  echo "$as_me: program exited with status $ac_status" >&5
-echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-( exit $ac_status )
-ac_cv_header_stdc=no
-fi
-rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
-fi
-fi
-fi
-echo "$as_me:$LINENO: result: $ac_cv_header_stdc" >&5
-echo "${ECHO_T}$ac_cv_header_stdc" >&6
-if test $ac_cv_header_stdc = yes; then
-  
-cat >>confdefs.h <<\_ACEOF
-@%:@define STDC_HEADERS 1
-_ACEOF
-
-fi
-
-# On IRIX 5.3, sys/types and inttypes.h are conflicting.
-
-
-
-
-
-
-
-
-
-for ac_header in sys/types.h sys/stat.h stdlib.h string.h memory.h strings.h \
-                 inttypes.h stdint.h unistd.h
-do
-as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
-echo "$as_me:$LINENO: checking for $ac_header" >&5
-echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6
-if eval "test \"\${$as_ac_Header+set}\" = set"; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-
-@%:@include <$ac_header>
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  eval "$as_ac_Header=yes"
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-eval "$as_ac_Header=no"
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5
-echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
-if test `eval echo '${'$as_ac_Header'}'` = yes; then
-  cat >>confdefs.h <<_ACEOF
-@%:@define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
-fi
-
-done
-
-
-if test "${ac_cv_header_minix_config_h+set}" = set; then
-  echo "$as_me:$LINENO: checking for minix/config.h" >&5
-echo $ECHO_N "checking for minix/config.h... $ECHO_C" >&6
-if test "${ac_cv_header_minix_config_h+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-fi
-echo "$as_me:$LINENO: result: $ac_cv_header_minix_config_h" >&5
-echo "${ECHO_T}$ac_cv_header_minix_config_h" >&6
-else
-  # Is the header compilable?
-echo "$as_me:$LINENO: checking minix/config.h usability" >&5
-echo $ECHO_N "checking minix/config.h usability... $ECHO_C" >&6
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-@%:@include <minix/config.h>
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_header_compiler=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_header_compiler=no
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-echo "$as_me:$LINENO: result: $ac_header_compiler" >&5
-echo "${ECHO_T}$ac_header_compiler" >&6
-
-# Is the header present?
-echo "$as_me:$LINENO: checking minix/config.h presence" >&5
-echo $ECHO_N "checking minix/config.h presence... $ECHO_C" >&6
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-@%:@include <minix/config.h>
-_ACEOF
-if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5
-  (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } >/dev/null; then
-  if test -s conftest.err; then
-    ac_cpp_err=$ac_c_preproc_warn_flag
-    ac_cpp_err=$ac_cpp_err$ac_c_werror_flag
-  else
-    ac_cpp_err=
-  fi
-else
-  ac_cpp_err=yes
-fi
-if test -z "$ac_cpp_err"; then
-  ac_header_preproc=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-  ac_header_preproc=no
-fi
-rm -f conftest.err conftest.$ac_ext
-echo "$as_me:$LINENO: result: $ac_header_preproc" >&5
-echo "${ECHO_T}$ac_header_preproc" >&6
-
-# So?  What about this header?
-case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in
-  yes:no: )
-    { echo "$as_me:$LINENO: WARNING: minix/config.h: accepted by the compiler, rejected by the preprocessor!" >&5
-echo "$as_me: WARNING: minix/config.h: accepted by the compiler, rejected by the preprocessor!" >&2;}
-    { echo "$as_me:$LINENO: WARNING: minix/config.h: proceeding with the compiler's result" >&5
-echo "$as_me: WARNING: minix/config.h: proceeding with the compiler's result" >&2;}
-    ac_header_preproc=yes
-    ;;
-  no:yes:* )
-    { echo "$as_me:$LINENO: WARNING: minix/config.h: present but cannot be compiled" >&5
-echo "$as_me: WARNING: minix/config.h: present but cannot be compiled" >&2;}
-    { echo "$as_me:$LINENO: WARNING: minix/config.h:     check for missing prerequisite headers?" >&5
-echo "$as_me: WARNING: minix/config.h:     check for missing prerequisite headers?" >&2;}
-    { echo "$as_me:$LINENO: WARNING: minix/config.h: see the Autoconf documentation" >&5
-echo "$as_me: WARNING: minix/config.h: see the Autoconf documentation" >&2;}
-    { echo "$as_me:$LINENO: WARNING: minix/config.h:     section \"Present But Cannot Be Compiled\"" >&5
-echo "$as_me: WARNING: minix/config.h:     section \"Present But Cannot Be Compiled\"" >&2;}
-    { echo "$as_me:$LINENO: WARNING: minix/config.h: proceeding with the preprocessor's result" >&5
-echo "$as_me: WARNING: minix/config.h: proceeding with the preprocessor's result" >&2;}
-    { echo "$as_me:$LINENO: WARNING: minix/config.h: in the future, the compiler will take precedence" >&5
-echo "$as_me: WARNING: minix/config.h: in the future, the compiler will take precedence" >&2;}
-    (
-      cat <<\_ASBOX
-@%:@@%:@ ------------------------------- @%:@@%:@
-@%:@@%:@ Report this to bug-bash@gnu.org @%:@@%:@
-@%:@@%:@ ------------------------------- @%:@@%:@
-_ASBOX
-    ) |
-      sed "s/^/$as_me: WARNING:     /" >&2
-    ;;
-esac
-echo "$as_me:$LINENO: checking for minix/config.h" >&5
-echo $ECHO_N "checking for minix/config.h... $ECHO_C" >&6
-if test "${ac_cv_header_minix_config_h+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  ac_cv_header_minix_config_h=$ac_header_preproc
-fi
-echo "$as_me:$LINENO: result: $ac_cv_header_minix_config_h" >&5
-echo "${ECHO_T}$ac_cv_header_minix_config_h" >&6
-
-fi
-if test $ac_cv_header_minix_config_h = yes; then
-  MINIX=yes
-else
-  MINIX=
-fi
-
-
-if test "$MINIX" = yes; then
-  
-cat >>confdefs.h <<\_ACEOF
-@%:@define _POSIX_SOURCE 1
-_ACEOF
-
-  
-cat >>confdefs.h <<\_ACEOF
-@%:@define _POSIX_1_SOURCE 2
-_ACEOF
-
-  
-cat >>confdefs.h <<\_ACEOF
-@%:@define _MINIX 1
-_ACEOF
-
-fi
-
-
-# Check whether --enable-largefile or --disable-largefile was given.
-if test "${enable_largefile+set}" = set; then
-  enableval="$enable_largefile"
-  
-fi; 
-if test "$enable_largefile" != no; then
-
-  echo "$as_me:$LINENO: checking for special C compiler options needed for large files" >&5
-echo $ECHO_N "checking for special C compiler options needed for large files... $ECHO_C" >&6
-if test "${ac_cv_sys_largefile_CC+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  ac_cv_sys_largefile_CC=no
-     if test "$GCC" != yes; then
-       ac_save_CC=$CC
-       while :; do
-        # IRIX 6.2 and later do not support large files by default,
-        # so use the C compiler's -n32 option if that helps.
-        cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-@%:@include <sys/types.h>
- /* Check that off_t can represent 2**63 - 1 correctly.
-    We can't simply define LARGE_OFF_T to be 9223372036854775807,
-    since some C++ compilers masquerading as C compilers
-    incorrectly reject 9223372036854775807.  */
-@%:@define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62))
-  int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721
-                      && LARGE_OFF_T % 2147483647 == 1)
-                     ? 1 : -1];
-int
-main ()
-{
-
-  ;
-  return 0;
-}
-_ACEOF
-        rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  break
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-fi
-rm -f conftest.err conftest.$ac_objext 
-        CC="$CC -n32"
-        rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_cv_sys_largefile_CC=' -n32'; break
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-fi
-rm -f conftest.err conftest.$ac_objext 
-        break
-       done
-       CC=$ac_save_CC
-       rm -f conftest.$ac_ext
-    fi
-fi
-echo "$as_me:$LINENO: result: $ac_cv_sys_largefile_CC" >&5
-echo "${ECHO_T}$ac_cv_sys_largefile_CC" >&6
-  if test "$ac_cv_sys_largefile_CC" != no; then
-    CC=$CC$ac_cv_sys_largefile_CC
-  fi
-
-  echo "$as_me:$LINENO: checking for _FILE_OFFSET_BITS value needed for large files" >&5
-echo $ECHO_N "checking for _FILE_OFFSET_BITS value needed for large files... $ECHO_C" >&6
-if test "${ac_cv_sys_file_offset_bits+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  while :; do
-  ac_cv_sys_file_offset_bits=no
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-@%:@include <sys/types.h>
- /* Check that off_t can represent 2**63 - 1 correctly.
-    We can't simply define LARGE_OFF_T to be 9223372036854775807,
-    since some C++ compilers masquerading as C compilers
-    incorrectly reject 9223372036854775807.  */
-@%:@define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62))
-  int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721
-                      && LARGE_OFF_T % 2147483647 == 1)
-                     ? 1 : -1];
-int
-main ()
-{
-
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  break
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-@%:@define _FILE_OFFSET_BITS 64
-@%:@include <sys/types.h>
- /* Check that off_t can represent 2**63 - 1 correctly.
-    We can't simply define LARGE_OFF_T to be 9223372036854775807,
-    since some C++ compilers masquerading as C compilers
-    incorrectly reject 9223372036854775807.  */
-@%:@define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62))
-  int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721
-                      && LARGE_OFF_T % 2147483647 == 1)
-                     ? 1 : -1];
-int
-main ()
-{
-
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_cv_sys_file_offset_bits=64; break
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-  break
-done
-fi
-echo "$as_me:$LINENO: result: $ac_cv_sys_file_offset_bits" >&5
-echo "${ECHO_T}$ac_cv_sys_file_offset_bits" >&6
-if test "$ac_cv_sys_file_offset_bits" != no; then
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define _FILE_OFFSET_BITS $ac_cv_sys_file_offset_bits
-_ACEOF
-
-fi
-rm -f conftest*
-  echo "$as_me:$LINENO: checking for _LARGE_FILES value needed for large files" >&5
-echo $ECHO_N "checking for _LARGE_FILES value needed for large files... $ECHO_C" >&6
-if test "${ac_cv_sys_large_files+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  while :; do
-  ac_cv_sys_large_files=no
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-@%:@include <sys/types.h>
- /* Check that off_t can represent 2**63 - 1 correctly.
-    We can't simply define LARGE_OFF_T to be 9223372036854775807,
-    since some C++ compilers masquerading as C compilers
-    incorrectly reject 9223372036854775807.  */
-@%:@define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62))
-  int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721
-                      && LARGE_OFF_T % 2147483647 == 1)
-                     ? 1 : -1];
-int
-main ()
-{
-
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  break
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-@%:@define _LARGE_FILES 1
-@%:@include <sys/types.h>
- /* Check that off_t can represent 2**63 - 1 correctly.
-    We can't simply define LARGE_OFF_T to be 9223372036854775807,
-    since some C++ compilers masquerading as C compilers
-    incorrectly reject 9223372036854775807.  */
-@%:@define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62))
-  int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721
-                      && LARGE_OFF_T % 2147483647 == 1)
-                     ? 1 : -1];
-int
-main ()
-{
-
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_cv_sys_large_files=1; break
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-  break
-done
-fi
-echo "$as_me:$LINENO: result: $ac_cv_sys_large_files" >&5
-echo "${ECHO_T}$ac_cv_sys_large_files" >&6
-if test "$ac_cv_sys_large_files" != no; then
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define _LARGE_FILES $ac_cv_sys_large_files
-_ACEOF
-
-fi
-rm -f conftest*
-fi
-
-
-
-SIGNAMES_O=
-SIGNAMES_H=lsignames.h
-
-
-
-CROSS_COMPILE=
-if test "x$cross_compiling" = "xyes"; then
-    case "${host}" in
-    *-cygwin*)
-       cross_cache=${srcdir}/cross-build/cygwin32.cache
-       ;;
-    *-mingw*)
-       cross_cache=${srcdir}/cross-build/cygwin32.cache
-       ;;
-    i[3456]86-*-beos*)
-       cross_cache=${srcdir}/cross-build/x86-beos.cache
-       ;;
-    *) echo "configure: cross-compiling for $host is not supported" >&2
-       ;;
-    esac
-    if test -n "${cross_cache}" && test -r "${cross_cache}"; then
-       echo "loading cross-build cache file ${cross_cache}"
-       . ${cross_cache}
-    fi
-    unset cross_cache
-    SIGNAMES_O='signames.o'
-    CROSS_COMPILE='-DCROSS_COMPILING'
-    
-fi
-
-
-
-
-if test -z "$CFLAGS"; then
-       AUTO_CFLAGS="-g ${GCC+-O2}"
-       AUTO_LDFLAGS="-g ${GCC+-O2}"
-else
-       AUTO_CFLAGS= AUTO_LDFLAGS=
-fi
-
-CFLAGS=${CFLAGS-"$AUTO_CFLAGS"}
-# LDFLAGS=${LDFLAGS="$AUTO_LDFLAGS"}   # XXX
-
-if test "$opt_profiling" = "yes"; then
-       PROFILE_FLAGS=-pg
-       case "$host_os" in
-       solaris2*)      ;;
-       *)              opt_static_link=yes ;;
-       esac
-       DEBUG= MALLOC_DEBUG=
-fi
-
-prefer_shared=yes
-prefer_static=no
-
-if test "$opt_static_link" = yes; then
-       prefer_static=yes
-       prefer_shared=no
-       # if we're using gcc, add `-static' to LDFLAGS, except on Solaris >= 2
-       if test -n "$GCC" || test "$ac_cv_c_compiler_gnu" = "yes"; then
-               STATIC_LD="-static" 
-               case "$host_os" in
-               solaris2*)      ;;
-               *)              LDFLAGS="$LDFLAGS -static" ;;   # XXX experimental
-               esac
-       fi
-fi
-
-# set the appropriate make variables for building the "build tools"
-# modify defaults based on whether or not we are cross compiling, since the
-# options for the target host may not be appropriate for the build host
-if test "X$cross_compiling" = "Xno"; then
-       CC_FOR_BUILD=${CC_FOR_BUILD-'$(CC)'}
-       CPPFLAGS_FOR_BUILD=${CPPFLAGS_FOR_BUILD-"$CPPFLAGS"}    # XXX - should it be '$(CPPFLAGS)'
-       LDFLAGS_FOR_BUILD=${LDFLAGS_FOR_BUILD-'$(LDFLAGS)'}
-       # CFLAGS set above to default value if not passed in environment
-       CFLAGS_FOR_BUILD=${CFLAGS-'$(CFLAGS)'}
-       LIBS_FOR_BUILD=${LIBS_FOR_BUILD-'$(LIBS)'}
-else
-       CC_FOR_BUILD=${CC_FOR_BUILD-"gcc"}
-       CPPFLAGS_FOR_BUILD=${CPPFLAGS_FOR_BUILD-""}
-       LDFLAGS_FOR_BUILD=${LDFLAGS_FOR_BUILD-""}
-       CFLAGS_FOR_BUILD=${CFLAGS_FOR_BUILD="-g"}
-       LIBS_FOR_BUILD=${LIBS_FOR_BUILD-""}
-fi
-
-
-
-
-
-
-
-
-
-
-
-
-if test $ac_cv_c_compiler_gnu = yes; then
-    echo "$as_me:$LINENO: checking whether $CC needs -traditional" >&5
-echo $ECHO_N "checking whether $CC needs -traditional... $ECHO_C" >&6
-if test "${ac_cv_prog_gcc_traditional+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-    ac_pattern="Autoconf.*'x'"
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <sgtty.h>
-Autoconf TIOCGETP
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "$ac_pattern" >/dev/null 2>&1; then
-  ac_cv_prog_gcc_traditional=yes
-else
-  ac_cv_prog_gcc_traditional=no
-fi
-rm -f conftest*
-
-
-  if test $ac_cv_prog_gcc_traditional = no; then
-    cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <termio.h>
-Autoconf TCGETA
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "$ac_pattern" >/dev/null 2>&1; then
-  ac_cv_prog_gcc_traditional=yes
-fi
-rm -f conftest*
-
-  fi
-fi
-echo "$as_me:$LINENO: result: $ac_cv_prog_gcc_traditional" >&5
-echo "${ECHO_T}$ac_cv_prog_gcc_traditional" >&6
-  if test $ac_cv_prog_gcc_traditional = yes; then
-    CC="$CC -traditional"
-  fi
-fi
-
-
-
-if test "$opt_readline" = yes && test "$opt_with_installed_readline" != "no"
-then
-       # If the user specified --with-installed-readline=PREFIX and PREFIX
-       # is not `yes', set ac_cv_rl_prefix to PREFIX
-       test $opt_with_installed_readline != "yes" && ac_cv_rl_prefix=$opt_with_installed_readline
-
-       
-if test "X$bash_cv_termcap_lib" = "X"; then
-_bash_needmsg=yes
-else
-echo "$as_me:$LINENO: checking which library has the termcap functions" >&5
-echo $ECHO_N "checking which library has the termcap functions... $ECHO_C" >&6
-_bash_needmsg=
-fi
-if test "${bash_cv_termcap_lib+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  echo "$as_me:$LINENO: checking for tgetent" >&5
-echo $ECHO_N "checking for tgetent... $ECHO_C" >&6
-if test "${ac_cv_func_tgetent+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-/* Define tgetent to an innocuous variant, in case <limits.h> declares tgetent.
-   For example, HP-UX 11i <limits.h> declares gettimeofday.  */
-#define tgetent innocuous_tgetent
-
-/* System header to define __stub macros and hopefully few prototypes,
-    which can conflict with char tgetent (); below.
-    Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
-    <limits.h> exists even on freestanding compilers.  */
-
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-
-#undef tgetent
-
-/* Override any gcc2 internal prototype to avoid an error.  */
-#ifdef __cplusplus
-extern "C"
-{
-#endif
-/* We use char because int might match the return type of a gcc2
-   builtin and then its argument prototype would still apply.  */
-char tgetent ();
-/* The GNU C library defines this for functions which it implements
-    to always fail with ENOSYS.  Some functions are actually named
-    something starting with __ and the normal name is an alias.  */
-#if defined (__stub_tgetent) || defined (__stub___tgetent)
-choke me
-#else
-char (*f) () = tgetent;
-#endif
-#ifdef __cplusplus
-}
-#endif
-
-int
-main ()
-{
-return f != tgetent;
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest$ac_exeext'
-  { (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
-  ac_cv_func_tgetent=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_cv_func_tgetent=no
-fi
-rm -f conftest.err conftest.$ac_objext \
-      conftest$ac_exeext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: $ac_cv_func_tgetent" >&5
-echo "${ECHO_T}$ac_cv_func_tgetent" >&6
-if test $ac_cv_func_tgetent = yes; then
-  bash_cv_termcap_lib=libc
-else
-  echo "$as_me:$LINENO: checking for tgetent in -ltermcap" >&5
-echo $ECHO_N "checking for tgetent in -ltermcap... $ECHO_C" >&6
-if test "${ac_cv_lib_termcap_tgetent+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  ac_check_lib_save_LIBS=$LIBS
-LIBS="-ltermcap  $LIBS"
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-
-/* Override any gcc2 internal prototype to avoid an error.  */
-#ifdef __cplusplus
-extern "C"
-#endif
-/* We use char because int might match the return type of a gcc2
-   builtin and then its argument prototype would still apply.  */
-char tgetent ();
-int
-main ()
-{
-tgetent ();
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest$ac_exeext'
-  { (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
-  ac_cv_lib_termcap_tgetent=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_cv_lib_termcap_tgetent=no
-fi
-rm -f conftest.err conftest.$ac_objext \
-      conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-echo "$as_me:$LINENO: result: $ac_cv_lib_termcap_tgetent" >&5
-echo "${ECHO_T}$ac_cv_lib_termcap_tgetent" >&6
-if test $ac_cv_lib_termcap_tgetent = yes; then
-  bash_cv_termcap_lib=libtermcap
-else
-  echo "$as_me:$LINENO: checking for tgetent in -ltinfo" >&5
-echo $ECHO_N "checking for tgetent in -ltinfo... $ECHO_C" >&6
-if test "${ac_cv_lib_tinfo_tgetent+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  ac_check_lib_save_LIBS=$LIBS
-LIBS="-ltinfo  $LIBS"
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-
-/* Override any gcc2 internal prototype to avoid an error.  */
-#ifdef __cplusplus
-extern "C"
-#endif
-/* We use char because int might match the return type of a gcc2
-   builtin and then its argument prototype would still apply.  */
-char tgetent ();
-int
-main ()
-{
-tgetent ();
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest$ac_exeext'
-  { (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
-  ac_cv_lib_tinfo_tgetent=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_cv_lib_tinfo_tgetent=no
-fi
-rm -f conftest.err conftest.$ac_objext \
-      conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-echo "$as_me:$LINENO: result: $ac_cv_lib_tinfo_tgetent" >&5
-echo "${ECHO_T}$ac_cv_lib_tinfo_tgetent" >&6
-if test $ac_cv_lib_tinfo_tgetent = yes; then
-  bash_cv_termcap_lib=libtinfo
-else
-  echo "$as_me:$LINENO: checking for tgetent in -lcurses" >&5
-echo $ECHO_N "checking for tgetent in -lcurses... $ECHO_C" >&6
-if test "${ac_cv_lib_curses_tgetent+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  ac_check_lib_save_LIBS=$LIBS
-LIBS="-lcurses  $LIBS"
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-
-/* Override any gcc2 internal prototype to avoid an error.  */
-#ifdef __cplusplus
-extern "C"
-#endif
-/* We use char because int might match the return type of a gcc2
-   builtin and then its argument prototype would still apply.  */
-char tgetent ();
-int
-main ()
-{
-tgetent ();
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest$ac_exeext'
-  { (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
-  ac_cv_lib_curses_tgetent=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_cv_lib_curses_tgetent=no
-fi
-rm -f conftest.err conftest.$ac_objext \
-      conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-echo "$as_me:$LINENO: result: $ac_cv_lib_curses_tgetent" >&5
-echo "${ECHO_T}$ac_cv_lib_curses_tgetent" >&6
-if test $ac_cv_lib_curses_tgetent = yes; then
-  bash_cv_termcap_lib=libcurses
-else
-  echo "$as_me:$LINENO: checking for tgetent in -lncurses" >&5
-echo $ECHO_N "checking for tgetent in -lncurses... $ECHO_C" >&6
-if test "${ac_cv_lib_ncurses_tgetent+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  ac_check_lib_save_LIBS=$LIBS
-LIBS="-lncurses  $LIBS"
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-
-/* Override any gcc2 internal prototype to avoid an error.  */
-#ifdef __cplusplus
-extern "C"
-#endif
-/* We use char because int might match the return type of a gcc2
-   builtin and then its argument prototype would still apply.  */
-char tgetent ();
-int
-main ()
-{
-tgetent ();
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest$ac_exeext'
-  { (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
-  ac_cv_lib_ncurses_tgetent=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_cv_lib_ncurses_tgetent=no
-fi
-rm -f conftest.err conftest.$ac_objext \
-      conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-echo "$as_me:$LINENO: result: $ac_cv_lib_ncurses_tgetent" >&5
-echo "${ECHO_T}$ac_cv_lib_ncurses_tgetent" >&6
-if test $ac_cv_lib_ncurses_tgetent = yes; then
-  bash_cv_termcap_lib=libncurses
-else
-  bash_cv_termcap_lib=gnutermcap
-fi
-
-fi
-
-fi
-
-fi
-
-fi
-
-fi
-
-if test "X$_bash_needmsg" = "Xyes"; then
-echo "$as_me:$LINENO: checking which library has the termcap functions" >&5
-echo $ECHO_N "checking which library has the termcap functions... $ECHO_C" >&6
-fi
-echo "$as_me:$LINENO: result: using $bash_cv_termcap_lib" >&5
-echo "${ECHO_T}using $bash_cv_termcap_lib" >&6
-if test $bash_cv_termcap_lib = gnutermcap && test -z "$prefer_curses"; then
-LDFLAGS="$LDFLAGS -L./lib/termcap"
-TERMCAP_LIB="./lib/termcap/libtermcap.a"
-TERMCAP_DEP="./lib/termcap/libtermcap.a"
-elif test $bash_cv_termcap_lib = libtermcap && test -z "$prefer_curses"; then
-TERMCAP_LIB=-ltermcap
-TERMCAP_DEP=
-elif test $bash_cv_termcap_lib = libtinfo; then
-TERMCAP_LIB=-ltinfo
-TERMCAP_DEP=
-elif test $bash_cv_termcap_lib = libncurses; then
-TERMCAP_LIB=-lncurses
-TERMCAP_DEP=
-elif test $bash_cv_termcap_lib = libc; then
-TERMCAP_LIB=
-TERMCAP_DEP=
-else
-TERMCAP_LIB=-lcurses
-TERMCAP_DEP=
-fi
-
-
-
-
-echo "$as_me:$LINENO: checking version of installed readline library" >&5
-echo $ECHO_N "checking version of installed readline library... $ECHO_C" >&6
-
-# What a pain in the ass this is.
-
-# save cpp and ld options
-_save_CFLAGS="$CFLAGS"
-_save_LDFLAGS="$LDFLAGS"
-_save_LIBS="$LIBS"
-
-# Don't set ac_cv_rl_prefix if the caller has already assigned a value.  This
-# allows the caller to do something like $_rl_prefix=$withval if the user
-# specifies --with-installed-readline=PREFIX as an argument to configure
-
-if test -z "$ac_cv_rl_prefix"; then
-test "x$prefix" = xNONE && ac_cv_rl_prefix=$ac_default_prefix || ac_cv_rl_prefix=${prefix}
-fi
-
-eval ac_cv_rl_includedir=${ac_cv_rl_prefix}/include
-eval ac_cv_rl_libdir=${ac_cv_rl_prefix}/lib
-
-LIBS="$LIBS -lreadline ${TERMCAP_LIB}"
-CFLAGS="$CFLAGS -I${ac_cv_rl_includedir}"
-LDFLAGS="$LDFLAGS -L${ac_cv_rl_libdir}"
-
-if test "${ac_cv_rl_version+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  if test "$cross_compiling" = yes; then
-  ac_cv_rl_version='4.2'
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-
-#include <stdio.h>
-#include <readline/readline.h>
-
-extern int rl_gnu_readline_p;
-
-main()
-{
-       FILE *fp;
-       fp = fopen("conftest.rlv", "w");
-       if (fp == 0)
-               exit(1);
-       if (rl_gnu_readline_p != 1)
-               fprintf(fp, "0.0\n");
-       else
-               fprintf(fp, "%s\n", rl_library_version ? rl_library_version : "0.0");
-       fclose(fp);
-       exit(0);
-}
-
-_ACEOF
-rm -f conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>&5
-  ac_status=$?
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
-  { (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
-  ac_cv_rl_version=`cat conftest.rlv`
-else
-  echo "$as_me: program exited with status $ac_status" >&5
-echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-( exit $ac_status )
-ac_cv_rl_version='0.0'
-fi
-rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
-fi
-fi
-
-
-CFLAGS="$_save_CFLAGS"
-LDFLAGS="$_save_LDFLAGS"
-LIBS="$_save_LIBS"
-
-RL_MAJOR=0
-RL_MINOR=0
-
-# (
-case "$ac_cv_rl_version" in
-2*|3*|4*|5*|6*|7*|8*|9*)
-       RL_MAJOR=`echo $ac_cv_rl_version | sed 's:\..*$::'`
-       RL_MINOR=`echo $ac_cv_rl_version | sed -e 's:^.*\.::' -e 's:[a-zA-Z]*$::'`
-       ;;
-esac
-
-# (((
-case $RL_MAJOR in
-[0-9][0-9])    _RL_MAJOR=$RL_MAJOR ;;
-[0-9]) _RL_MAJOR=0$RL_MAJOR ;;
-*)             _RL_MAJOR=00 ;;
-esac
-
-# (((
-case $RL_MINOR in
-[0-9][0-9])    _RL_MINOR=$RL_MINOR ;;
-[0-9]) _RL_MINOR=0$RL_MINOR ;;
-*)             _RL_MINOR=00 ;;
-esac
-
-RL_VERSION="0x${_RL_MAJOR}${_RL_MINOR}"
-
-# Readline versions greater than 4.2 have these defines in readline.h
-
-if test $ac_cv_rl_version = '0.0' ; then
-       { echo "$as_me:$LINENO: WARNING: Could not test version of installed readline library." >&5
-echo "$as_me: WARNING: Could not test version of installed readline library." >&2;}
-elif test $RL_MAJOR -gt 4 || { test $RL_MAJOR = 4 && test $RL_MINOR -gt 2 ; } ; then
-       # set these for use by the caller
-       RL_PREFIX=$ac_cv_rl_prefix
-       RL_LIBDIR=$ac_cv_rl_libdir
-       RL_INCLUDEDIR=$ac_cv_rl_includedir
-       echo "$as_me:$LINENO: result: $ac_cv_rl_version" >&5
-echo "${ECHO_T}$ac_cv_rl_version" >&6
-else
-
-
-cat >>confdefs.h <<_ACEOF
-@%:@define RL_READLINE_VERSION $RL_VERSION
-_ACEOF
-
-
-cat >>confdefs.h <<_ACEOF
-@%:@define RL_VERSION_MAJOR $RL_MAJOR
-_ACEOF
-
-
-cat >>confdefs.h <<_ACEOF
-@%:@define RL_VERSION_MINOR $RL_MINOR
-_ACEOF
-
-
-
-
-
-
-# set these for use by the caller
-RL_PREFIX=$ac_cv_rl_prefix
-RL_LIBDIR=$ac_cv_rl_libdir
-RL_INCLUDEDIR=$ac_cv_rl_includedir
-
-echo "$as_me:$LINENO: result: $ac_cv_rl_version" >&5
-echo "${ECHO_T}$ac_cv_rl_version" >&6
-
-fi
-
-
-       case "$ac_cv_rl_version" in
-       5*|6*|7*|8*|9*) ;;
-       *)      opt_with_installed_readline=no 
-               { echo "$as_me:$LINENO: WARNING: installed readline library is too old to be linked with bash" >&5
-echo "$as_me: WARNING: installed readline library is too old to be linked with bash" >&2;}
-               { echo "$as_me:$LINENO: WARNING: using private bash version" >&5
-echo "$as_me: WARNING: using private bash version" >&2;}
-               ;;
-       esac
-fi
-
-TILDE_LIB=-ltilde
-if test $opt_readline = yes; then
-       cat >>confdefs.h <<\_ACEOF
-@%:@define READLINE 1
-_ACEOF
-
-       if test "$opt_with_installed_readline" != "no" ; then
-               case "$opt_with_installed_readline" in
-               yes)    RL_INCLUDE= ;;
-               *)      case "$RL_INCLUDEDIR" in
-                       /usr/include)   ;;
-                       *)              RL_INCLUDE='-I${RL_INCLUDEDIR}' ;;
-                       esac
-                       ;;
-               esac
-               READLINE_DEP=
-               READLINE_LIB=-lreadline
-               # section for OS versions that don't allow unresolved symbols
-               # to be compiled into dynamic libraries.
-               case "$host_os" in
-               cygwin*)        TILDE_LIB= ;;
-               esac
-       else
-               RL_LIBDIR='$(dot)/$(LIBSUBDIR)/readline'
-               READLINE_DEP='$(READLINE_LIBRARY)'
-               # section for OS versions that ship an older/broken version of
-               # readline as a standard dynamic library and don't allow a
-               # static version specified as -llibname to override the
-               # dynamic version
-               case "${host_os}" in
-               darwin[89]*|darwin10*) READLINE_LIB='${READLINE_LIBRARY}' ;;
-               *)              READLINE_LIB=-lreadline ;;
-               esac
-       fi
-else
-       RL_LIBDIR='$(dot)/$(LIBSUBDIR)/readline'
-       READLINE_LIB= READLINE_DEP=
-fi
-if test $opt_history = yes || test $opt_bang_history = yes; then
-       if test $opt_history = yes; then
-               cat >>confdefs.h <<\_ACEOF
-@%:@define HISTORY 1
-_ACEOF
-
-       fi
-       if test $opt_bang_history = yes; then
-               cat >>confdefs.h <<\_ACEOF
-@%:@define BANG_HISTORY 1
-_ACEOF
-
-       fi
-       if test "$opt_with_installed_readline" != "no"; then
-               HIST_LIBDIR=$RL_LIBDIR
-               HISTORY_DEP=
-               HISTORY_LIB=-lhistory
-               case "$opt_with_installed_readline" in
-               yes)    RL_INCLUDE= ;;
-               *)      case "$RL_INCLUDEDIR" in
-                       /usr/include)   ;;
-                       *)              RL_INCLUDE='-I${RL_INCLUDEDIR}' ;;
-                       esac
-                       ;;
-               esac
-       else
-               HIST_LIBDIR='$(dot)/$(LIBSUBDIR)/readline'
-               HISTORY_DEP='$(HISTORY_LIBRARY)'
-               # section for OS versions that ship an older version of
-               # readline as a standard dynamic library and don't allow a
-               # static version specified as -llibname to override the
-               # dynamic version
-               case "${host_os}" in
-               darwin[89]*|darwin10*) HISTORY_LIB='${HISTORY_LIBRARY}' ;;
-               *)              HISTORY_LIB=-lhistory ;;
-               esac
-       fi
-else
-       HIST_LIBDIR='$(dot)/$(LIBSUBDIR)/readline'
-       HISTORY_LIB= HISTORY_DEP=
-fi
-
-
-
-
-
-
-
-
-
-
-
-# Find a good install program.  We prefer a C program (faster),
-# so one script is as good as another.  But avoid the broken or
-# incompatible versions:
-# SysV /etc/install, /usr/sbin/install
-# SunOS /usr/etc/install
-# IRIX /sbin/install
-# AIX /bin/install
-# AmigaOS /C/install, which installs bootblocks on floppy discs
-# AIX 4 /usr/bin/installbsd, which doesn't work without a -g flag
-# AFS /usr/afsws/bin/install, which mishandles nonexistent args
-# SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff"
-# OS/2's system install, which has a completely different semantic
-# ./install, which can be erroneously created by make from ./install.sh.
-echo "$as_me:$LINENO: checking for a BSD-compatible install" >&5
-echo $ECHO_N "checking for a BSD-compatible install... $ECHO_C" >&6
-if test -z "$INSTALL"; then
-if test "${ac_cv_path_install+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-  # Account for people who put trailing slashes in PATH elements.
-case $as_dir/ in
-  ./ | .// | /cC/* | \
-  /etc/* | /usr/sbin/* | /usr/etc/* | /sbin/* | /usr/afsws/bin/* | \
-  ?:\\/os2\\/install\\/* | ?:\\/OS2\\/INSTALL\\/* | \
-  /usr/ucb/* ) ;;
-  *)
-    # OSF1 and SCO ODT 3.0 have their own names for install.
-    # Don't use installbsd from OSF since it installs stuff as root
-    # by default.
-    for ac_prog in ginstall scoinst install; do
-      for ac_exec_ext in '' $ac_executable_extensions; do
-       if $as_executable_p "$as_dir/$ac_prog$ac_exec_ext"; then
-         if test $ac_prog = install &&
-           grep dspmsg "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then
-           # AIX install.  It has an incompatible calling convention.
-           :
-         elif test $ac_prog = install &&
-           grep pwplus "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then
-           # program-specific install script used by HP pwplus--don't use.
-           :
-         else
-           ac_cv_path_install="$as_dir/$ac_prog$ac_exec_ext -c"
-           break 3
-         fi
-       fi
-      done
-    done
-    ;;
-esac
-done
-
-
-fi
-  if test "${ac_cv_path_install+set}" = set; then
-    INSTALL=$ac_cv_path_install
-  else
-    # As a last resort, use the slow shell script.  We don't cache a
-    # path for INSTALL within a source directory, because that will
-    # break other packages using the cache if that directory is
-    # removed, or if the path is relative.
-    INSTALL=$ac_install_sh
-  fi
-fi
-echo "$as_me:$LINENO: result: $INSTALL" >&5
-echo "${ECHO_T}$INSTALL" >&6
-
-# Use test -z because SunOS4 sh mishandles braces in ${var-val}.
-# It thinks the first close brace ends the variable substitution.
-test -z "$INSTALL_PROGRAM" && INSTALL_PROGRAM='${INSTALL}'
-
-test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL}'
-
-test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
-
-# Extract the first word of "ar", so it can be a program name with args.
-set dummy ar; 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_AR+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  if test -n "$AR"; then
-  ac_cv_prog_AR="$AR" # 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_AR=""
-    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-done
-
-  test -z "$ac_cv_prog_AR" && ac_cv_prog_AR="ar"
-fi
-fi
-AR=$ac_cv_prog_AR
-if test -n "$AR"; then
-  echo "$as_me:$LINENO: result: $AR" >&5
-echo "${ECHO_T}$AR" >&6
-else
-  echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6
-fi
-
-test -n "$ARFLAGS" || ARFLAGS="cr"
-if test -n "$ac_tool_prefix"; then
-  # Extract the first word of "${ac_tool_prefix}ranlib", so it can be a program name with args.
-set dummy ${ac_tool_prefix}ranlib; 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_RANLIB+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  if test -n "$RANLIB"; then
-  ac_cv_prog_RANLIB="$RANLIB" # 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_RANLIB="${ac_tool_prefix}ranlib"
-    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-done
-
-fi
-fi
-RANLIB=$ac_cv_prog_RANLIB
-if test -n "$RANLIB"; then
-  echo "$as_me:$LINENO: result: $RANLIB" >&5
-echo "${ECHO_T}$RANLIB" >&6
-else
-  echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6
-fi
-
-fi
-if test -z "$ac_cv_prog_RANLIB"; then
-  ac_ct_RANLIB=$RANLIB
-  # Extract the first word of "ranlib", so it can be a program name with args.
-set dummy ranlib; 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_ac_ct_RANLIB+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  if test -n "$ac_ct_RANLIB"; then
-  ac_cv_prog_ac_ct_RANLIB="$ac_ct_RANLIB" # 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_ac_ct_RANLIB="ranlib"
-    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-done
-
-  test -z "$ac_cv_prog_ac_ct_RANLIB" && ac_cv_prog_ac_ct_RANLIB=":"
-fi
-fi
-ac_ct_RANLIB=$ac_cv_prog_ac_ct_RANLIB
-if test -n "$ac_ct_RANLIB"; then
-  echo "$as_me:$LINENO: result: $ac_ct_RANLIB" >&5
-echo "${ECHO_T}$ac_ct_RANLIB" >&6
-else
-  echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6
-fi
-
-  RANLIB=$ac_ct_RANLIB
-else
-  RANLIB="$ac_cv_prog_RANLIB"
-fi
-
-for ac_prog in 'bison -y' byacc
-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_YACC+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  if test -n "$YACC"; then
-  ac_cv_prog_YACC="$YACC" # 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_YACC="$ac_prog"
-    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-done
-
-fi
-fi
-YACC=$ac_cv_prog_YACC
-if test -n "$YACC"; then
-  echo "$as_me:$LINENO: result: $YACC" >&5
-echo "${ECHO_T}$YACC" >&6
-else
-  echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6
-fi
-
-  test -n "$YACC" && break
-done
-test -n "$YACC" || YACC="yacc"
-
-echo "$as_me:$LINENO: checking whether ${MAKE-make} sets \$(MAKE)" >&5
-echo $ECHO_N "checking whether ${MAKE-make} sets \$(MAKE)... $ECHO_C" >&6
-set dummy ${MAKE-make}; ac_make=`echo "$2" | sed 'y,:./+-,___p_,'`
-if eval "test \"\${ac_cv_prog_make_${ac_make}_set+set}\" = set"; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.make <<\_ACEOF
-all:
-       @echo 'ac_maketemp="$(MAKE)"'
-_ACEOF
-# GNU make sometimes prints "make[1]: Entering...", which would confuse us.
-eval `${MAKE-make} -f conftest.make 2>/dev/null | grep temp=`
-if test -n "$ac_maketemp"; then
-  eval ac_cv_prog_make_${ac_make}_set=yes
-else
-  eval ac_cv_prog_make_${ac_make}_set=no
-fi
-rm -f conftest.make
-fi
-if eval "test \"`echo '$ac_cv_prog_make_'${ac_make}_set`\" = yes"; then
-  echo "$as_me:$LINENO: result: yes" >&5
-echo "${ECHO_T}yes" >&6
-  SET_MAKE=
-else
-  echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6
-  SET_MAKE="MAKE=${MAKE-make}"
-fi
-
-
-case "$host_os" in
-opennt*|interix*)      MAKE_SHELL="$INTERIX_ROOT/bin/sh" ;;
-*)                     MAKE_SHELL=/bin/sh ;;
-esac
-
-
-if test x$SIZE = x; then
-       if test x$ac_tool_prefix = x; then
-               SIZE=size
-       else
-               SIZE=${ac_tool_prefix}size
-               save_IFS=$IFS ; IFS=:
-               size_found=0
-               for dir in $PATH; do
-                       if test -x $dir/$SIZE ; then
-                               size_found=1
-                               break
-                       fi
-               done
-               if test $size_found -eq 0; then
-                       SIZE=:
-               fi
-               IFS=$save_IFS
-       fi
-fi
-
-
-# Checks for stat-related time functions.
-
-# Copyright (C) 1998-1999, 2001, 2003, 2005-2007, 2009-2012 Free Software
-# Foundation, Inc.
-
-# This file is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-
-# st_atim.tv_nsec - Linux, Solaris, Cygwin
-# st_atimespec.tv_nsec - FreeBSD, NetBSD, if ! defined _POSIX_SOURCE
-# st_atimensec - FreeBSD, NetBSD, if defined _POSIX_SOURCE
-# st_atim.st__tim.tv_nsec - UnixWare (at least 2.1.2 through 7.1)
-
-# st_birthtimespec - FreeBSD, NetBSD (hidden on OpenBSD 3.9, anyway)
-# st_birthtim - Cygwin 1.7.0+
-
-
-
-# Configure checks for struct timespec
-
-# Copyright (C) 2000-2001, 2003-2007, 2009-2011, 2012 Free Software Foundation, Inc.
-
-# This file is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# Original written by Paul Eggert and Jim Meyering.
-# Modified by Chet Ramey for bash
-
-
-
-
-
-cat >>confdefs.h <<\_ACEOF
-@%:@define _GNU_SOURCE 1
-_ACEOF
-
-
-echo "$as_me:$LINENO: checking for an ANSI C-conforming const" >&5
-echo $ECHO_N "checking for an ANSI C-conforming const... $ECHO_C" >&6
-if test "${ac_cv_c_const+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-
-int
-main ()
-{
-/* FIXME: Include the comments suggested by Paul. */
-#ifndef __cplusplus
-  /* Ultrix mips cc rejects this.  */
-  typedef int charset[2];
-  const charset x;
-  /* SunOS 4.1.1 cc rejects this.  */
-  char const *const *ccp;
-  char **p;
-  /* NEC SVR4.0.2 mips cc rejects this.  */
-  struct point {int x, y;};
-  static struct point const zero = {0,0};
-  /* AIX XL C 1.02.0.0 rejects this.
-     It does not let you subtract one const X* pointer from another in
-     an arm of an if-expression whose if-part is not a constant
-     expression */
-  const char *g = "string";
-  ccp = &g + (g ? g-g : 0);
-  /* HPUX 7.0 cc rejects these. */
-  ++ccp;
-  p = (char**) ccp;
-  ccp = (char const *const *) p;
-  { /* SCO 3.2v4 cc rejects this.  */
-    char *t;
-    char const *s = 0 ? (char *) 0 : (char const *) 0;
-
-    *t++ = 0;
-  }
-  { /* Someone thinks the Sun supposedly-ANSI compiler will reject this.  */
-    int x[] = {25, 17};
-    const int *foo = &x[0];
-    ++foo;
-  }
-  { /* Sun SC1.0 ANSI compiler rejects this -- but not the above. */
-    typedef const int *iptr;
-    iptr p = 0;
-    ++p;
-  }
-  { /* AIX XL C 1.02.0.0 rejects this saying
-       "k.c", line 2.27: 1506-025 (S) Operand must be a modifiable lvalue. */
-    struct s { int j; const int *ap[3]; };
-    struct s *b; b->j = 5;
-  }
-  { /* ULTRIX-32 V3.1 (Rev 9) vcc rejects this */
-    const int foo = 10;
-  }
-#endif
-
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_cv_c_const=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_cv_c_const=no
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: $ac_cv_c_const" >&5
-echo "${ECHO_T}$ac_cv_c_const" >&6
-if test $ac_cv_c_const = no; then
-  
-cat >>confdefs.h <<\_ACEOF
-@%:@define const 
-_ACEOF
-
-fi
-
-echo "$as_me:$LINENO: checking for inline" >&5
-echo $ECHO_N "checking for inline... $ECHO_C" >&6
-if test "${ac_cv_c_inline+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  ac_cv_c_inline=no
-for ac_kw in inline __inline__ __inline; do
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#ifndef __cplusplus
-typedef int foo_t;
-static $ac_kw foo_t static_foo () {return 0; }
-$ac_kw foo_t foo () {return 0; }
-#endif
-
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_cv_c_inline=$ac_kw; break
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-done
-
-fi
-echo "$as_me:$LINENO: result: $ac_cv_c_inline" >&5
-echo "${ECHO_T}$ac_cv_c_inline" >&6
-
-
-case $ac_cv_c_inline in
-  inline | yes) ;;
-  *)
-    case $ac_cv_c_inline in
-      no) ac_val=;;
-      *) ac_val=$ac_cv_c_inline;;
-    esac
-    cat >>confdefs.h <<_ACEOF
-#ifndef __cplusplus
-#define inline $ac_val
-#endif
-_ACEOF
-    ;;
-esac
-
-echo "$as_me:$LINENO: checking whether byte ordering is bigendian" >&5
-echo $ECHO_N "checking whether byte ordering is bigendian... $ECHO_C" >&6
-if test "${ac_cv_c_bigendian+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  # See if sys/param.h defines the BYTE_ORDER macro.
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <sys/types.h>
-#include <sys/param.h>
-
-int
-main ()
-{
-#if !BYTE_ORDER || !BIG_ENDIAN || !LITTLE_ENDIAN
- bogus endian macros
-#endif
-
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  # It does; now see whether it defined to BIG_ENDIAN or not.
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <sys/types.h>
-#include <sys/param.h>
-
-int
-main ()
-{
-#if BYTE_ORDER != BIG_ENDIAN
- not big endian
-#endif
-
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_cv_c_bigendian=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_cv_c_bigendian=no
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-# It does not; compile a test program.
-if test "$cross_compiling" = yes; then
-  # try to guess the endianness by grepping values into an object file
-  ac_cv_c_bigendian=unknown
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-short ascii_mm[] = { 0x4249, 0x4765, 0x6E44, 0x6961, 0x6E53, 0x7953, 0 };
-short ascii_ii[] = { 0x694C, 0x5454, 0x656C, 0x6E45, 0x6944, 0x6E61, 0 };
-void _ascii () { char *s = (char *) ascii_mm; s = (char *) ascii_ii; }
-short ebcdic_ii[] = { 0x89D3, 0xE3E3, 0x8593, 0x95C5, 0x89C4, 0x9581, 0 };
-short ebcdic_mm[] = { 0xC2C9, 0xC785, 0x95C4, 0x8981, 0x95E2, 0xA8E2, 0 };
-void _ebcdic () { char *s = (char *) ebcdic_mm; s = (char *) ebcdic_ii; }
-int
-main ()
-{
- _ascii (); _ebcdic (); 
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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 BIGenDianSyS conftest.$ac_objext >/dev/null ; then
-  ac_cv_c_bigendian=yes
-fi
-if grep LiTTleEnDian conftest.$ac_objext >/dev/null ; then
-  if test "$ac_cv_c_bigendian" = unknown; then
-    ac_cv_c_bigendian=no
-  else
-    # finding both strings is unlikely to happen, but who knows?
-    ac_cv_c_bigendian=unknown
-  fi
-fi
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-int
-main ()
-{
-  /* Are we little or big endian?  From Harbison&Steele.  */
-  union
-  {
-    long l;
-    char c[sizeof (long)];
-  } u;
-  u.l = 1;
-  exit (u.c[sizeof (long) - 1] == 1);
-}
-_ACEOF
-rm -f conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>&5
-  ac_status=$?
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
-  { (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
-  ac_cv_c_bigendian=no
-else
-  echo "$as_me: program exited with status $ac_status" >&5
-echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-( exit $ac_status )
-ac_cv_c_bigendian=yes
-fi
-rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
-fi
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: $ac_cv_c_bigendian" >&5
-echo "${ECHO_T}$ac_cv_c_bigendian" >&6
-case $ac_cv_c_bigendian in
-  yes)
-    
-cat >>confdefs.h <<\_ACEOF
-@%:@define WORDS_BIGENDIAN 1
-_ACEOF
- ;;
-  no)
-     ;;
-  *)
-    { { echo "$as_me:$LINENO: error: unknown endianness
-presetting ac_cv_c_bigendian=no (or yes) will help" >&5
-echo "$as_me: error: unknown endianness
-presetting ac_cv_c_bigendian=no (or yes) will help" >&2;}
-   { (exit 1); exit 1; }; } ;;
-esac
-
-echo "$as_me:$LINENO: checking for preprocessor stringizing operator" >&5
-echo $ECHO_N "checking for preprocessor stringizing operator... $ECHO_C" >&6
-if test "${ac_cv_c_stringize+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-@%:@define x(y) #y
-
-char *s = x(teststring);
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "@%:@teststring" >/dev/null 2>&1; then
-  ac_cv_c_stringize=no
-else
-  ac_cv_c_stringize=yes
-fi
-rm -f conftest*
-
-fi
-echo "$as_me:$LINENO: result: $ac_cv_c_stringize" >&5
-echo "${ECHO_T}$ac_cv_c_stringize" >&6
-if test $ac_cv_c_stringize = yes; then
-  
-cat >>confdefs.h <<\_ACEOF
-@%:@define HAVE_STRINGIZE 1
-_ACEOF
-
-fi
-
-echo "$as_me:$LINENO: checking for working long double with more range or precision than double" >&5
-echo $ECHO_N "checking for working long double with more range or precision than double... $ECHO_C" >&6
-if test "${ac_cv_c_long_double+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <float.h>
-         long double foo = 0.0;
-int
-main ()
-{
-static int test_array @<:@1 - 2 * !(/* Using '|' rather than '||' catches a GCC 2.95.2 x86 bug.  */
-         (DBL_MAX < LDBL_MAX) | (LDBL_EPSILON < DBL_EPSILON)
-         | (DBL_MAX_EXP < LDBL_MAX_EXP) | (DBL_MANT_DIG < LDBL_MANT_DIG))@:>@;
-test_array @<:@0@:>@ = 0
-
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_cv_c_long_double=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_cv_c_long_double=no
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: $ac_cv_c_long_double" >&5
-echo "${ECHO_T}$ac_cv_c_long_double" >&6
-if test $ac_cv_c_long_double = yes; then
-  
-cat >>confdefs.h <<\_ACEOF
-@%:@define HAVE_LONG_DOUBLE 1
-_ACEOF
-
-fi
-
-echo "$as_me:$LINENO: checking for function prototypes" >&5
-echo $ECHO_N "checking for function prototypes... $ECHO_C" >&6
-if test "$ac_cv_prog_cc_stdc" != no; then
-  echo "$as_me:$LINENO: result: yes" >&5
-echo "${ECHO_T}yes" >&6
-  
-cat >>confdefs.h <<\_ACEOF
-@%:@define PROTOTYPES 1
-_ACEOF
-
-  
-cat >>confdefs.h <<\_ACEOF
-@%:@define __PROTOTYPES 1
-_ACEOF
-
-else
-  echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6
-fi
-
-
-echo "$as_me:$LINENO: checking whether char is unsigned" >&5
-echo $ECHO_N "checking whether char is unsigned... $ECHO_C" >&6
-if test "${ac_cv_c_char_unsigned+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-int
-main ()
-{
-static int test_array @<:@1 - 2 * !(((char) -1) < 0)@:>@;
-test_array @<:@0@:>@ = 0
-
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_cv_c_char_unsigned=no
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_cv_c_char_unsigned=yes
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: $ac_cv_c_char_unsigned" >&5
-echo "${ECHO_T}$ac_cv_c_char_unsigned" >&6
-if test $ac_cv_c_char_unsigned = yes && test "$GCC" != yes; then
-  cat >>confdefs.h <<\_ACEOF
-@%:@define __CHAR_UNSIGNED__ 1
-_ACEOF
-
-fi
-
-echo "$as_me:$LINENO: checking for working volatile" >&5
-echo $ECHO_N "checking for working volatile... $ECHO_C" >&6
-if test "${ac_cv_c_volatile+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-
-int
-main ()
-{
-
-volatile int x;
-int * volatile y;
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_cv_c_volatile=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_cv_c_volatile=no
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: $ac_cv_c_volatile" >&5
-echo "${ECHO_T}$ac_cv_c_volatile" >&6
-if test $ac_cv_c_volatile = no; then
-  
-cat >>confdefs.h <<\_ACEOF
-@%:@define volatile 
-_ACEOF
-
-fi
-
-echo "$as_me:$LINENO: checking for C/C++ restrict keyword" >&5
-echo $ECHO_N "checking for C/C++ restrict keyword... $ECHO_C" >&6
-if test "${ac_cv_c_restrict+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  ac_cv_c_restrict=no
-   # Try the official restrict keyword, then gcc's __restrict, and
-   # the less common variants.
-   for ac_kw in restrict __restrict __restrict__ _Restrict; do
-     cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-float * $ac_kw x;
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_cv_c_restrict=$ac_kw; break
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-   done
-  
-fi
-echo "$as_me:$LINENO: result: $ac_cv_c_restrict" >&5
-echo "${ECHO_T}$ac_cv_c_restrict" >&6
- case $ac_cv_c_restrict in
-   restrict) ;;
-   no) 
-cat >>confdefs.h <<\_ACEOF
-@%:@define restrict 
-_ACEOF
- ;;
-   *)  cat >>confdefs.h <<_ACEOF
-@%:@define restrict $ac_cv_c_restrict
-_ACEOF
- ;;
- esac
-
-
-
-        MKINSTALLDIRS=
-  if test -n "$ac_aux_dir"; then
-    case "$ac_aux_dir" in
-      /*) MKINSTALLDIRS="$ac_aux_dir/mkinstalldirs" ;;
-      *) MKINSTALLDIRS="\$(top_builddir)/$ac_aux_dir/mkinstalldirs" ;;
-    esac
-  fi
-  if test -z "$MKINSTALLDIRS"; then
-    MKINSTALLDIRS="\$(top_srcdir)/mkinstalldirs"
-  fi
-  
-
-
-  echo "$as_me:$LINENO: checking whether NLS is requested" >&5
-echo $ECHO_N "checking whether NLS is requested... $ECHO_C" >&6
-    # Check whether --enable-nls or --disable-nls was given.
-if test "${enable_nls+set}" = set; then
-  enableval="$enable_nls"
-  USE_NLS=$enableval
-else
-  USE_NLS=yes
-fi; 
-  echo "$as_me:$LINENO: result: $USE_NLS" >&5
-echo "${ECHO_T}$USE_NLS" >&6
-  
-
-
-        
-    
-        
-# Prepare PATH_SEPARATOR.
-# The user is always right.
-if test "${PATH_SEPARATOR+set}" != set; then
-  echo "#! /bin/sh" >conf$$.sh
-  echo  "exit 0"   >>conf$$.sh
-  chmod +x conf$$.sh
-  if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then
-    PATH_SEPARATOR=';'
-  else
-    PATH_SEPARATOR=:
-  fi
-  rm -f conf$$.sh
-fi
-
-# Find out how to test for executable files. Don't use a zero-byte file,
-# as systems may use methods other than mode bits to determine executability.
-cat >conf$$.file <<_ASEOF
-#! /bin/sh
-exit 0
-_ASEOF
-chmod +x conf$$.file
-if test -x conf$$.file >/dev/null 2>&1; then
-  ac_executable_p="test -x"
-else
-  ac_executable_p="test -f"
-fi
-rm -f conf$$.file
-
-# Extract the first word of "msgfmt", so it can be a program name with args.
-set dummy msgfmt; 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_MSGFMT+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  case "$MSGFMT" in
-  [\\/]* | ?:[\\/]*)
-    ac_cv_path_MSGFMT="$MSGFMT" # Let the user override the test with a path.
-    ;;
-  *)
-    ac_save_IFS="$IFS"; IFS=$PATH_SEPARATOR
-    for ac_dir in $PATH; do
-      IFS="$ac_save_IFS"
-      test -z "$ac_dir" && ac_dir=.
-      for ac_exec_ext in '' $ac_executable_extensions; do
-        if $ac_executable_p "$ac_dir/$ac_word$ac_exec_ext"; then
-          if $ac_dir/$ac_word --statistics /dev/null >/dev/null 2>&1 &&
-     (if $ac_dir/$ac_word --statistics /dev/null 2>&1 >/dev/null | grep usage >/dev/null; then exit 1; else exit 0; fi); then
-            ac_cv_path_MSGFMT="$ac_dir/$ac_word$ac_exec_ext"
-            break 2
-          fi
-        fi
-      done
-    done
-    IFS="$ac_save_IFS"
-  test -z "$ac_cv_path_MSGFMT" && ac_cv_path_MSGFMT=":"
-    ;;
-esac
-fi
-MSGFMT="$ac_cv_path_MSGFMT"
-if test "$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
-
-  # Extract the first word of "gmsgfmt", so it can be a program name with args.
-set dummy gmsgfmt; 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_GMSGFMT+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  case $GMSGFMT in
-  [\\/]* | ?:[\\/]*)
-  ac_cv_path_GMSGFMT="$GMSGFMT" # 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_GMSGFMT="$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_GMSGFMT" && ac_cv_path_GMSGFMT="$MSGFMT"
-  ;;
-esac
-fi
-GMSGFMT=$ac_cv_path_GMSGFMT
-
-if test -n "$GMSGFMT"; then
-  echo "$as_me:$LINENO: result: $GMSGFMT" >&5
-echo "${ECHO_T}$GMSGFMT" >&6
-else
-  echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6
-fi
-
-
-        
-# Prepare PATH_SEPARATOR.
-# The user is always right.
-if test "${PATH_SEPARATOR+set}" != set; then
-  echo "#! /bin/sh" >conf$$.sh
-  echo  "exit 0"   >>conf$$.sh
-  chmod +x conf$$.sh
-  if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then
-    PATH_SEPARATOR=';'
-  else
-    PATH_SEPARATOR=:
-  fi
-  rm -f conf$$.sh
-fi
-
-# Find out how to test for executable files. Don't use a zero-byte file,
-# as systems may use methods other than mode bits to determine executability.
-cat >conf$$.file <<_ASEOF
-#! /bin/sh
-exit 0
-_ASEOF
-chmod +x conf$$.file
-if test -x conf$$.file >/dev/null 2>&1; then
-  ac_executable_p="test -x"
-else
-  ac_executable_p="test -f"
-fi
-rm -f conf$$.file
-
-# Extract the first word of "xgettext", so it can be a program name with args.
-set dummy xgettext; 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_XGETTEXT+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  case "$XGETTEXT" in
-  [\\/]* | ?:[\\/]*)
-    ac_cv_path_XGETTEXT="$XGETTEXT" # Let the user override the test with a path.
-    ;;
-  *)
-    ac_save_IFS="$IFS"; IFS=$PATH_SEPARATOR
-    for ac_dir in $PATH; do
-      IFS="$ac_save_IFS"
-      test -z "$ac_dir" && ac_dir=.
-      for ac_exec_ext in '' $ac_executable_extensions; do
-        if $ac_executable_p "$ac_dir/$ac_word$ac_exec_ext"; then
-          if $ac_dir/$ac_word --omit-header --copyright-holder= --msgid-bugs-address= /dev/null >/dev/null 2>&1 &&
-     (if $ac_dir/$ac_word --omit-header --copyright-holder= --msgid-bugs-address= /dev/null 2>&1 >/dev/null | grep usage >/dev/null; then exit 1; else exit 0; fi); then
-            ac_cv_path_XGETTEXT="$ac_dir/$ac_word$ac_exec_ext"
-            break 2
-          fi
-        fi
-      done
-    done
-    IFS="$ac_save_IFS"
-  test -z "$ac_cv_path_XGETTEXT" && ac_cv_path_XGETTEXT=":"
-    ;;
-esac
-fi
-XGETTEXT="$ac_cv_path_XGETTEXT"
-if test "$XGETTEXT" != ":"; then
-  echo "$as_me:$LINENO: result: $XGETTEXT" >&5
-echo "${ECHO_T}$XGETTEXT" >&6
-else
-  echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6
-fi
-
-    rm -f messages.po
-
-    
-# Prepare PATH_SEPARATOR.
-# The user is always right.
-if test "${PATH_SEPARATOR+set}" != set; then
-  echo "#! /bin/sh" >conf$$.sh
-  echo  "exit 0"   >>conf$$.sh
-  chmod +x conf$$.sh
-  if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then
-    PATH_SEPARATOR=';'
-  else
-    PATH_SEPARATOR=:
-  fi
-  rm -f conf$$.sh
-fi
-
-# Find out how to test for executable files. Don't use a zero-byte file,
-# as systems may use methods other than mode bits to determine executability.
-cat >conf$$.file <<_ASEOF
-#! /bin/sh
-exit 0
-_ASEOF
-chmod +x conf$$.file
-if test -x conf$$.file >/dev/null 2>&1; then
-  ac_executable_p="test -x"
-else
-  ac_executable_p="test -f"
-fi
-rm -f conf$$.file
-
-# Extract the first word of "msgmerge", so it can be a program name with args.
-set dummy msgmerge; 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_MSGMERGE+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  case "$MSGMERGE" in
-  [\\/]* | ?:[\\/]*)
-    ac_cv_path_MSGMERGE="$MSGMERGE" # Let the user override the test with a path.
-    ;;
-  *)
-    ac_save_IFS="$IFS"; IFS=$PATH_SEPARATOR
-    for ac_dir in $PATH; do
-      IFS="$ac_save_IFS"
-      test -z "$ac_dir" && ac_dir=.
-      for ac_exec_ext in '' $ac_executable_extensions; do
-        if $ac_executable_p "$ac_dir/$ac_word$ac_exec_ext"; then
-          if $ac_dir/$ac_word --update -q /dev/null /dev/null >/dev/null 2>&1; then
-            ac_cv_path_MSGMERGE="$ac_dir/$ac_word$ac_exec_ext"
-            break 2
-          fi
-        fi
-      done
-    done
-    IFS="$ac_save_IFS"
-  test -z "$ac_cv_path_MSGMERGE" && ac_cv_path_MSGMERGE=":"
-    ;;
-esac
-fi
-MSGMERGE="$ac_cv_path_MSGMERGE"
-if test "$MSGMERGE" != ":"; then
-  echo "$as_me:$LINENO: result: $MSGMERGE" >&5
-echo "${ECHO_T}$MSGMERGE" >&6
-else
-  echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6
-fi
-
-
-      if test "$GMSGFMT" != ":"; then
-            if $GMSGFMT --statistics /dev/null >/dev/null 2>&1 &&
-       (if $GMSGFMT --statistics /dev/null 2>&1 >/dev/null | grep usage >/dev/null; then exit 1; else exit 0; fi); then
-      : ;
-    else
-      GMSGFMT=`echo "$GMSGFMT" | sed -e 's,^.*/,,'`
-      echo "$as_me:$LINENO: result: found $GMSGFMT program is not GNU msgfmt; ignore it" >&5
-echo "${ECHO_T}found $GMSGFMT program is not GNU msgfmt; ignore it" >&6
-      GMSGFMT=":"
-    fi
-  fi
-
-      if test "$XGETTEXT" != ":"; then
-            if $XGETTEXT --omit-header --copyright-holder= --msgid-bugs-address= /dev/null >/dev/null 2>&1 &&
-       (if $XGETTEXT --omit-header --copyright-holder= --msgid-bugs-address= /dev/null 2>&1 >/dev/null | grep usage >/dev/null; then exit 1; else exit 0; fi); then
-      : ;
-    else
-      echo "$as_me:$LINENO: result: found xgettext program is not GNU xgettext; ignore it" >&5
-echo "${ECHO_T}found xgettext program is not GNU xgettext; ignore it" >&6
-      XGETTEXT=":"
-    fi
-        rm -f messages.po
-  fi
-
-            ac_config_commands="$ac_config_commands default-1"
-
-
-echo "$as_me:$LINENO: checking for off_t" >&5
-echo $ECHO_N "checking for off_t... $ECHO_C" >&6
-if test "${ac_cv_type_off_t+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-int
-main ()
-{
-if ((off_t *) 0)
-  return 0;
-if (sizeof (off_t))
-  return 0;
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_cv_type_off_t=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_cv_type_off_t=no
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: $ac_cv_type_off_t" >&5
-echo "${ECHO_T}$ac_cv_type_off_t" >&6
-if test $ac_cv_type_off_t = yes; then
-  :
-else
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define off_t long
-_ACEOF
-
-fi
-
-echo "$as_me:$LINENO: checking for size_t" >&5
-echo $ECHO_N "checking for size_t... $ECHO_C" >&6
-if test "${ac_cv_type_size_t+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-int
-main ()
-{
-if ((size_t *) 0)
-  return 0;
-if (sizeof (size_t))
-  return 0;
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_cv_type_size_t=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_cv_type_size_t=no
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: $ac_cv_type_size_t" >&5
-echo "${ECHO_T}$ac_cv_type_size_t" >&6
-if test $ac_cv_type_size_t = yes; then
-  :
-else
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define size_t unsigned
-_ACEOF
-
-fi
-
-# The Ultrix 4.2 mips builtin alloca declared by alloca.h only works
-# for constant arguments.  Useless!
-echo "$as_me:$LINENO: checking for working alloca.h" >&5
-echo $ECHO_N "checking for working alloca.h... $ECHO_C" >&6
-if test "${ac_cv_working_alloca_h+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-@%:@include <alloca.h>
-int
-main ()
-{
-char *p = (char *) alloca (2 * sizeof (int));
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest$ac_exeext'
-  { (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
-  ac_cv_working_alloca_h=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_cv_working_alloca_h=no
-fi
-rm -f conftest.err conftest.$ac_objext \
-      conftest$ac_exeext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: $ac_cv_working_alloca_h" >&5
-echo "${ECHO_T}$ac_cv_working_alloca_h" >&6
-if test $ac_cv_working_alloca_h = yes; then
-  
-cat >>confdefs.h <<\_ACEOF
-@%:@define HAVE_ALLOCA_H 1
-_ACEOF
-
-fi
-
-echo "$as_me:$LINENO: checking for alloca" >&5
-echo $ECHO_N "checking for alloca... $ECHO_C" >&6
-if test "${ac_cv_func_alloca_works+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#ifdef __GNUC__
-# define alloca __builtin_alloca
-#else
-# ifdef _MSC_VER
-#  include <malloc.h>
-#  define alloca _alloca
-# else
-#  if HAVE_ALLOCA_H
-#   include <alloca.h>
-#  else
-#   ifdef _AIX
- #pragma alloca
-#   else
-#    ifndef alloca /* predefined by HP cc +Olibcalls */
-char *alloca ();
-#    endif
-#   endif
-#  endif
-# endif
-#endif
-
-int
-main ()
-{
-char *p = (char *) alloca (1);
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest$ac_exeext'
-  { (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
-  ac_cv_func_alloca_works=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_cv_func_alloca_works=no
-fi
-rm -f conftest.err conftest.$ac_objext \
-      conftest$ac_exeext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: $ac_cv_func_alloca_works" >&5
-echo "${ECHO_T}$ac_cv_func_alloca_works" >&6
-
-if test $ac_cv_func_alloca_works = yes; then
-  
-cat >>confdefs.h <<\_ACEOF
-@%:@define HAVE_ALLOCA 1
-_ACEOF
-
-else
-  # The SVR3 libPW and SVR4 libucb both contain incompatible functions
-# that cause trouble.  Some versions do not even contain alloca or
-# contain a buggy version.  If you still want to use their alloca,
-# use ar to extract alloca.o from them instead of compiling alloca.c.
-
-ALLOCA=alloca.$ac_objext
-
-cat >>confdefs.h <<\_ACEOF
-@%:@define C_ALLOCA 1
-_ACEOF
-
-
-echo "$as_me:$LINENO: checking whether \`alloca.c' needs Cray hooks" >&5
-echo $ECHO_N "checking whether \`alloca.c' needs Cray hooks... $ECHO_C" >&6
-if test "${ac_cv_os_cray+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#if defined(CRAY) && ! defined(CRAY2)
-webecray
-#else
-wenotbecray
-#endif
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "webecray" >/dev/null 2>&1; then
-  ac_cv_os_cray=yes
-else
-  ac_cv_os_cray=no
-fi
-rm -f conftest*
-
-fi
-echo "$as_me:$LINENO: result: $ac_cv_os_cray" >&5
-echo "${ECHO_T}$ac_cv_os_cray" >&6
-if test $ac_cv_os_cray = yes; then
-  for ac_func in _getb67 GETB67 getb67; do
-    as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`
-echo "$as_me:$LINENO: checking for $ac_func" >&5
-echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6
-if eval "test \"\${$as_ac_var+set}\" = set"; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-/* Define $ac_func to an innocuous variant, in case <limits.h> declares $ac_func.
-   For example, HP-UX 11i <limits.h> declares gettimeofday.  */
-#define $ac_func innocuous_$ac_func
-
-/* System header to define __stub macros and hopefully few prototypes,
-    which can conflict with char $ac_func (); below.
-    Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
-    <limits.h> exists even on freestanding compilers.  */
-
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-
-#undef $ac_func
-
-/* Override any gcc2 internal prototype to avoid an error.  */
-#ifdef __cplusplus
-extern "C"
-{
-#endif
-/* We use char because int might match the return type of a gcc2
-   builtin and then its argument prototype would still apply.  */
-char $ac_func ();
-/* The GNU C library defines this for functions which it implements
-    to always fail with ENOSYS.  Some functions are actually named
-    something starting with __ and the normal name is an alias.  */
-#if defined (__stub_$ac_func) || defined (__stub___$ac_func)
-choke me
-#else
-char (*f) () = $ac_func;
-#endif
-#ifdef __cplusplus
-}
-#endif
-
-int
-main ()
-{
-return f != $ac_func;
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest$ac_exeext'
-  { (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
-  eval "$as_ac_var=yes"
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-eval "$as_ac_var=no"
-fi
-rm -f conftest.err conftest.$ac_objext \
-      conftest$ac_exeext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_var'}'`" >&5
-echo "${ECHO_T}`eval echo '${'$as_ac_var'}'`" >&6
-if test `eval echo '${'$as_ac_var'}'` = yes; then
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define CRAY_STACKSEG_END $ac_func
-_ACEOF
-
-    break
-fi
-
-  done
-fi
-
-echo "$as_me:$LINENO: checking stack direction for C alloca" >&5
-echo $ECHO_N "checking stack direction for C alloca... $ECHO_C" >&6
-if test "${ac_cv_c_stack_direction+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  if test "$cross_compiling" = yes; then
-  ac_cv_c_stack_direction=0
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-int
-find_stack_direction ()
-{
-  static char *addr = 0;
-  auto char dummy;
-  if (addr == 0)
-    {
-      addr = &dummy;
-      return find_stack_direction ();
-    }
-  else
-    return (&dummy > addr) ? 1 : -1;
-}
-
-int
-main ()
-{
-  exit (find_stack_direction () < 0);
-}
-_ACEOF
-rm -f conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>&5
-  ac_status=$?
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
-  { (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
-  ac_cv_c_stack_direction=1
-else
-  echo "$as_me: program exited with status $ac_status" >&5
-echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-( exit $ac_status )
-ac_cv_c_stack_direction=-1
-fi
-rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
-fi
-fi
-echo "$as_me:$LINENO: result: $ac_cv_c_stack_direction" >&5
-echo "${ECHO_T}$ac_cv_c_stack_direction" >&6
-
-cat >>confdefs.h <<_ACEOF
-@%:@define STACK_DIRECTION $ac_cv_c_stack_direction
-_ACEOF
-
-
-fi
-
-
-
-for ac_header in stdlib.h unistd.h
-do
-as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
-if eval "test \"\${$as_ac_Header+set}\" = set"; then
-  echo "$as_me:$LINENO: checking for $ac_header" >&5
-echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6
-if eval "test \"\${$as_ac_Header+set}\" = set"; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-fi
-echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5
-echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
-else
-  # Is the header compilable?
-echo "$as_me:$LINENO: checking $ac_header usability" >&5
-echo $ECHO_N "checking $ac_header usability... $ECHO_C" >&6
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-@%:@include <$ac_header>
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_header_compiler=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_header_compiler=no
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-echo "$as_me:$LINENO: result: $ac_header_compiler" >&5
-echo "${ECHO_T}$ac_header_compiler" >&6
-
-# Is the header present?
-echo "$as_me:$LINENO: checking $ac_header presence" >&5
-echo $ECHO_N "checking $ac_header presence... $ECHO_C" >&6
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-@%:@include <$ac_header>
-_ACEOF
-if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5
-  (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } >/dev/null; then
-  if test -s conftest.err; then
-    ac_cpp_err=$ac_c_preproc_warn_flag
-    ac_cpp_err=$ac_cpp_err$ac_c_werror_flag
-  else
-    ac_cpp_err=
-  fi
-else
-  ac_cpp_err=yes
-fi
-if test -z "$ac_cpp_err"; then
-  ac_header_preproc=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-  ac_header_preproc=no
-fi
-rm -f conftest.err conftest.$ac_ext
-echo "$as_me:$LINENO: result: $ac_header_preproc" >&5
-echo "${ECHO_T}$ac_header_preproc" >&6
-
-# So?  What about this header?
-case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in
-  yes:no: )
-    { echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5
-echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;}
-    { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5
-echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;}
-    ac_header_preproc=yes
-    ;;
-  no:yes:* )
-    { echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5
-echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;}
-    { echo "$as_me:$LINENO: WARNING: $ac_header:     check for missing prerequisite headers?" >&5
-echo "$as_me: WARNING: $ac_header:     check for missing prerequisite headers?" >&2;}
-    { echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5
-echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;}
-    { echo "$as_me:$LINENO: WARNING: $ac_header:     section \"Present But Cannot Be Compiled\"" >&5
-echo "$as_me: WARNING: $ac_header:     section \"Present But Cannot Be Compiled\"" >&2;}
-    { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5
-echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;}
-    { echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5
-echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;}
-    (
-      cat <<\_ASBOX
-@%:@@%:@ ------------------------------- @%:@@%:@
-@%:@@%:@ Report this to bug-bash@gnu.org @%:@@%:@
-@%:@@%:@ ------------------------------- @%:@@%:@
-_ASBOX
-    ) |
-      sed "s/^/$as_me: WARNING:     /" >&2
-    ;;
-esac
-echo "$as_me:$LINENO: checking for $ac_header" >&5
-echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6
-if eval "test \"\${$as_ac_Header+set}\" = set"; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  eval "$as_ac_Header=\$ac_header_preproc"
-fi
-echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5
-echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
-
-fi
-if test `eval echo '${'$as_ac_Header'}'` = yes; then
-  cat >>confdefs.h <<_ACEOF
-@%:@define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
-fi
-
-done
-
-
-for ac_func in getpagesize
-do
-as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`
-echo "$as_me:$LINENO: checking for $ac_func" >&5
-echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6
-if eval "test \"\${$as_ac_var+set}\" = set"; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-/* Define $ac_func to an innocuous variant, in case <limits.h> declares $ac_func.
-   For example, HP-UX 11i <limits.h> declares gettimeofday.  */
-#define $ac_func innocuous_$ac_func
-
-/* System header to define __stub macros and hopefully few prototypes,
-    which can conflict with char $ac_func (); below.
-    Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
-    <limits.h> exists even on freestanding compilers.  */
-
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-
-#undef $ac_func
-
-/* Override any gcc2 internal prototype to avoid an error.  */
-#ifdef __cplusplus
-extern "C"
-{
-#endif
-/* We use char because int might match the return type of a gcc2
-   builtin and then its argument prototype would still apply.  */
-char $ac_func ();
-/* The GNU C library defines this for functions which it implements
-    to always fail with ENOSYS.  Some functions are actually named
-    something starting with __ and the normal name is an alias.  */
-#if defined (__stub_$ac_func) || defined (__stub___$ac_func)
-choke me
-#else
-char (*f) () = $ac_func;
-#endif
-#ifdef __cplusplus
-}
-#endif
-
-int
-main ()
-{
-return f != $ac_func;
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest$ac_exeext'
-  { (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
-  eval "$as_ac_var=yes"
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-eval "$as_ac_var=no"
-fi
-rm -f conftest.err conftest.$ac_objext \
-      conftest$ac_exeext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_var'}'`" >&5
-echo "${ECHO_T}`eval echo '${'$as_ac_var'}'`" >&6
-if test `eval echo '${'$as_ac_var'}'` = yes; then
-  cat >>confdefs.h <<_ACEOF
-@%:@define `echo "HAVE_$ac_func" | $as_tr_cpp` 1
-_ACEOF
-fi
-done
-
-echo "$as_me:$LINENO: checking for working mmap" >&5
-echo $ECHO_N "checking for working mmap... $ECHO_C" >&6
-if test "${ac_cv_func_mmap_fixed_mapped+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  if test "$cross_compiling" = yes; then
-  ac_cv_func_mmap_fixed_mapped=no
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-/* malloc might have been renamed as rpl_malloc. */
-#undef malloc
-
-/* Thanks to Mike Haertel and Jim Avera for this test.
-   Here is a matrix of mmap possibilities:
-       mmap private not fixed
-       mmap private fixed at somewhere currently unmapped
-       mmap private fixed at somewhere already mapped
-       mmap shared not fixed
-       mmap shared fixed at somewhere currently unmapped
-       mmap shared fixed at somewhere already mapped
-   For private mappings, we should verify that changes cannot be read()
-   back from the file, nor mmap's back from the file at a different
-   address.  (There have been systems where private was not correctly
-   implemented like the infamous i386 svr4.0, and systems where the
-   VM page cache was not coherent with the file system buffer cache
-   like early versions of FreeBSD and possibly contemporary NetBSD.)
-   For shared mappings, we should conversely verify that changes get
-   propagated back to all the places they're supposed to be.
-
-   Grep wants private fixed already mapped.
-   The main things grep needs to know about mmap are:
-   * does it exist and is it safe to write into the mmap'd area
-   * how to use it (BSD variants)  */
-
-#include <fcntl.h>
-#include <sys/mman.h>
-
-#if !STDC_HEADERS && !HAVE_STDLIB_H
-char *malloc ();
-#endif
-
-/* This mess was copied from the GNU getpagesize.h.  */
-#if !HAVE_GETPAGESIZE
-/* Assume that all systems that can run configure have sys/param.h.  */
-# if !HAVE_SYS_PARAM_H
-#  define HAVE_SYS_PARAM_H 1
-# endif
-
-# ifdef _SC_PAGESIZE
-#  define getpagesize() sysconf(_SC_PAGESIZE)
-# else /* no _SC_PAGESIZE */
-#  if HAVE_SYS_PARAM_H
-#   include <sys/param.h>
-#   ifdef EXEC_PAGESIZE
-#    define getpagesize() EXEC_PAGESIZE
-#   else /* no EXEC_PAGESIZE */
-#    ifdef NBPG
-#     define getpagesize() NBPG * CLSIZE
-#     ifndef CLSIZE
-#      define CLSIZE 1
-#     endif /* no CLSIZE */
-#    else /* no NBPG */
-#     ifdef NBPC
-#      define getpagesize() NBPC
-#     else /* no NBPC */
-#      ifdef PAGESIZE
-#       define getpagesize() PAGESIZE
-#      endif /* PAGESIZE */
-#     endif /* no NBPC */
-#    endif /* no NBPG */
-#   endif /* no EXEC_PAGESIZE */
-#  else /* no HAVE_SYS_PARAM_H */
-#   define getpagesize() 8192  /* punt totally */
-#  endif /* no HAVE_SYS_PARAM_H */
-# endif /* no _SC_PAGESIZE */
-
-#endif /* no HAVE_GETPAGESIZE */
-
-int
-main ()
-{
-  char *data, *data2, *data3;
-  int i, pagesize;
-  int fd;
-
-  pagesize = getpagesize ();
-
-  /* First, make a file with some known garbage in it. */
-  data = (char *) malloc (pagesize);
-  if (!data)
-    exit (1);
-  for (i = 0; i < pagesize; ++i)
-    *(data + i) = rand ();
-  umask (0);
-  fd = creat ("conftest.mmap", 0600);
-  if (fd < 0)
-    exit (1);
-  if (write (fd, data, pagesize) != pagesize)
-    exit (1);
-  close (fd);
-
-  /* Next, try to mmap the file at a fixed address which already has
-     something else allocated at it.  If we can, also make sure that
-     we see the same garbage.  */
-  fd = open ("conftest.mmap", O_RDWR);
-  if (fd < 0)
-    exit (1);
-  data2 = (char *) malloc (2 * pagesize);
-  if (!data2)
-    exit (1);
-  data2 += (pagesize - ((long) data2 & (pagesize - 1))) & (pagesize - 1);
-  if (data2 != mmap (data2, pagesize, PROT_READ | PROT_WRITE,
-                    MAP_PRIVATE | MAP_FIXED, fd, 0L))
-    exit (1);
-  for (i = 0; i < pagesize; ++i)
-    if (*(data + i) != *(data2 + i))
-      exit (1);
-
-  /* Finally, make sure that changes to the mapped area do not
-     percolate back to the file as seen by read().  (This is a bug on
-     some variants of i386 svr4.0.)  */
-  for (i = 0; i < pagesize; ++i)
-    *(data2 + i) = *(data2 + i) + 1;
-  data3 = (char *) malloc (pagesize);
-  if (!data3)
-    exit (1);
-  if (read (fd, data3, pagesize) != pagesize)
-    exit (1);
-  for (i = 0; i < pagesize; ++i)
-    if (*(data + i) != *(data3 + i))
-      exit (1);
-  close (fd);
-  exit (0);
-}
-_ACEOF
-rm -f conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>&5
-  ac_status=$?
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
-  { (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
-  ac_cv_func_mmap_fixed_mapped=yes
-else
-  echo "$as_me: program exited with status $ac_status" >&5
-echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-( exit $ac_status )
-ac_cv_func_mmap_fixed_mapped=no
-fi
-rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
-fi
-fi
-echo "$as_me:$LINENO: result: $ac_cv_func_mmap_fixed_mapped" >&5
-echo "${ECHO_T}$ac_cv_func_mmap_fixed_mapped" >&6
-if test $ac_cv_func_mmap_fixed_mapped = yes; then
-  
-cat >>confdefs.h <<\_ACEOF
-@%:@define HAVE_MMAP 1
-_ACEOF
-
-fi
-rm -f conftest.mmap
-
-
-    echo "$as_me:$LINENO: checking whether we are using the GNU C Library 2.1 or newer" >&5
-echo $ECHO_N "checking whether we are using the GNU C Library 2.1 or newer... $ECHO_C" >&6
-if test "${ac_cv_gnu_library_2_1+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-
-#include <features.h>
-#ifdef __GNU_LIBRARY__
- #if (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 1) || (__GLIBC__ > 2)
-  Lucky GNU user
- #endif
-#endif
-       
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "Lucky GNU user" >/dev/null 2>&1; then
-  ac_cv_gnu_library_2_1=yes
-else
-  ac_cv_gnu_library_2_1=no
-fi
-rm -f conftest*
-
-      
-    
-fi
-echo "$as_me:$LINENO: result: $ac_cv_gnu_library_2_1" >&5
-echo "${ECHO_T}$ac_cv_gnu_library_2_1" >&6
-    
-    GLIBC21="$ac_cv_gnu_library_2_1"
-  
-
-
-    
-  echo "$as_me:$LINENO: checking whether integer division by zero raises SIGFPE" >&5
-echo $ECHO_N "checking whether integer division by zero raises SIGFPE... $ECHO_C" >&6
-if test "${gt_cv_int_divbyzero_sigfpe+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  
-      if test "$cross_compiling" = yes; then
-  
-          # Guess based on the CPU.
-          case "$host_cpu" in
-            alpha* | i3456786 | m68k | s390*)
-              gt_cv_int_divbyzero_sigfpe="guessing yes";;
-            *)
-              gt_cv_int_divbyzero_sigfpe="guessing no";;
-          esac
-        
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-
-#include <stdlib.h>
-#include <signal.h>
-
-static void
-#ifdef __cplusplus
-sigfpe_handler (int sig)
-#else
-sigfpe_handler (sig) int sig;
-#endif
-{
-  /* Exit with code 0 if SIGFPE, with code 1 if any other signal.  */
-  exit (sig != SIGFPE);
-}
-
-int x = 1;
-int y = 0;
-int z;
-int nan;
-
-int main ()
-{
-  signal (SIGFPE, sigfpe_handler);
-/* IRIX and AIX (when "xlc -qcheck" is used) yield signal SIGTRAP.  */
-#if (defined (__sgi) || defined (_AIX)) && defined (SIGTRAP)
-  signal (SIGTRAP, sigfpe_handler);
-#endif
-/* Linux/SPARC yields signal SIGILL.  */
-#if defined (__sparc__) && defined (__linux__)
-  signal (SIGILL, sigfpe_handler);
-#endif
-
-  z = x / y;
-  nan = y / y;
-  exit (1);
-}
-
-_ACEOF
-rm -f conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>&5
-  ac_status=$?
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
-  { (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
-  gt_cv_int_divbyzero_sigfpe=yes
-else
-  echo "$as_me: program exited with status $ac_status" >&5
-echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-( exit $ac_status )
-gt_cv_int_divbyzero_sigfpe=no
-fi
-rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
-fi
-    
-fi
-echo "$as_me:$LINENO: result: $gt_cv_int_divbyzero_sigfpe" >&5
-echo "${ECHO_T}$gt_cv_int_divbyzero_sigfpe" >&6
-  case "$gt_cv_int_divbyzero_sigfpe" in
-    *yes) value=1;;
-    *) value=0;;
-  esac
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define INTDIV0_RAISES_SIGFPE $value
-_ACEOF
-
-
-
-  echo "$as_me:$LINENO: checking for inttypes.h" >&5
-echo $ECHO_N "checking for inttypes.h... $ECHO_C" >&6
-if test "${jm_ac_cv_header_inttypes_h+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <sys/types.h>
-#include <inttypes.h>
-int
-main ()
-{
-uintmax_t i = (uintmax_t) -1;
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  jm_ac_cv_header_inttypes_h=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-jm_ac_cv_header_inttypes_h=no
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: $jm_ac_cv_header_inttypes_h" >&5
-echo "${ECHO_T}$jm_ac_cv_header_inttypes_h" >&6
-  if test $jm_ac_cv_header_inttypes_h = yes; then
-    
-cat >>confdefs.h <<_ACEOF
-@%:@define HAVE_INTTYPES_H_WITH_UINTMAX 1
-_ACEOF
-
-  fi
-
-
-  echo "$as_me:$LINENO: checking for stdint.h" >&5
-echo $ECHO_N "checking for stdint.h... $ECHO_C" >&6
-if test "${jm_ac_cv_header_stdint_h+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <sys/types.h>
-#include <stdint.h>
-int
-main ()
-{
-uintmax_t i = (uintmax_t) -1;
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  jm_ac_cv_header_stdint_h=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-jm_ac_cv_header_stdint_h=no
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: $jm_ac_cv_header_stdint_h" >&5
-echo "${ECHO_T}$jm_ac_cv_header_stdint_h" >&6
-  if test $jm_ac_cv_header_stdint_h = yes; then
-    
-cat >>confdefs.h <<_ACEOF
-@%:@define HAVE_STDINT_H_WITH_UINTMAX 1
-_ACEOF
-
-  fi
-
-
-  echo "$as_me:$LINENO: checking for unsigned long long" >&5
-echo $ECHO_N "checking for unsigned long long... $ECHO_C" >&6
-if test "${ac_cv_type_unsigned_long_long+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-unsigned long long ull = 1; int i = 63;
-int
-main ()
-{
-unsigned long long ullmax = (unsigned long long) -1;
-     return ull << i | ull >> i | ullmax / ull | ullmax % ull;
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest$ac_exeext'
-  { (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
-  ac_cv_type_unsigned_long_long=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_cv_type_unsigned_long_long=no
-fi
-rm -f conftest.err conftest.$ac_objext \
-      conftest$ac_exeext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: $ac_cv_type_unsigned_long_long" >&5
-echo "${ECHO_T}$ac_cv_type_unsigned_long_long" >&6
-  if test $ac_cv_type_unsigned_long_long = yes; then
-    
-cat >>confdefs.h <<\_ACEOF
-@%:@define HAVE_UNSIGNED_LONG_LONG 1
-_ACEOF
-
-  fi
-
-
-  
-  
-  if test $jm_ac_cv_header_inttypes_h = no && test $jm_ac_cv_header_stdint_h = no; then
-    
-    test $ac_cv_type_unsigned_long_long = yes \
-      && ac_type='unsigned long long' \
-      || ac_type='unsigned long'
-    
-cat >>confdefs.h <<_ACEOF
-@%:@define uintmax_t $ac_type
-_ACEOF
-
-  else
-    
-cat >>confdefs.h <<\_ACEOF
-@%:@define HAVE_UINTMAX_T 1
-_ACEOF
-
-  fi
-
-
-  echo "$as_me:$LINENO: checking for inttypes.h" >&5
-echo $ECHO_N "checking for inttypes.h... $ECHO_C" >&6
-if test "${gt_cv_header_inttypes_h+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  
-    cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <sys/types.h>
-#include <inttypes.h>
-int
-main ()
-{
-
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  gt_cv_header_inttypes_h=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-gt_cv_header_inttypes_h=no
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-  
-fi
-echo "$as_me:$LINENO: result: $gt_cv_header_inttypes_h" >&5
-echo "${ECHO_T}$gt_cv_header_inttypes_h" >&6
-  if test $gt_cv_header_inttypes_h = yes; then
-    
-cat >>confdefs.h <<_ACEOF
-@%:@define HAVE_INTTYPES_H 1
-_ACEOF
-
-  fi
-
-
-  
-  if test $gt_cv_header_inttypes_h = yes; then
-    echo "$as_me:$LINENO: checking whether the inttypes.h PRIxNN macros are broken" >&5
-echo $ECHO_N "checking whether the inttypes.h PRIxNN macros are broken... $ECHO_C" >&6
-if test "${gt_cv_inttypes_pri_broken+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  
-        cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <inttypes.h>
-#ifdef PRId32
-char *p = PRId32;
-#endif
-
-int
-main ()
-{
-
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  gt_cv_inttypes_pri_broken=no
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-gt_cv_inttypes_pri_broken=yes
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-      
-fi
-echo "$as_me:$LINENO: result: $gt_cv_inttypes_pri_broken" >&5
-echo "${ECHO_T}$gt_cv_inttypes_pri_broken" >&6
-  fi
-  if test "$gt_cv_inttypes_pri_broken" = yes; then
-    
-cat >>confdefs.h <<_ACEOF
-@%:@define PRI_MACROS_BROKEN 1
-_ACEOF
-
-  fi
-
-
-      if test "X$prefix" = "XNONE"; then
-    acl_final_prefix="$ac_default_prefix"
-  else
-    acl_final_prefix="$prefix"
-  fi
-  if test "X$exec_prefix" = "XNONE"; then
-    acl_final_exec_prefix='${prefix}'
-  else
-    acl_final_exec_prefix="$exec_prefix"
-  fi
-  acl_save_prefix="$prefix"
-  prefix="$acl_final_prefix"
-  eval acl_final_exec_prefix=\"$acl_final_exec_prefix\"
-  prefix="$acl_save_prefix"
-
-
-# Check whether --with-gnu-ld or --without-gnu-ld was given.
-if test "${with_gnu_ld+set}" = set; then
-  withval="$with_gnu_ld"
-  test "$withval" = no || with_gnu_ld=yes
-else
-  with_gnu_ld=no
-fi; 
-# Prepare PATH_SEPARATOR.
-# The user is always right.
-if test "${PATH_SEPARATOR+set}" != set; then
-  echo "#! /bin/sh" >conf$$.sh
-  echo  "exit 0"   >>conf$$.sh
-  chmod +x conf$$.sh
-  if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then
-    PATH_SEPARATOR=';'
-  else
-    PATH_SEPARATOR=:
-  fi
-  rm -f conf$$.sh
-fi
-ac_prog=ld
-if test "$GCC" = yes; then
-  # Check if gcc -print-prog-name=ld gives a path.
-  echo "$as_me:$LINENO: checking for ld used by GCC" >&5
-echo $ECHO_N "checking for ld used by GCC... $ECHO_C" >&6
-  case $host in
-  *-*-mingw*)
-    # gcc leaves a trailing carriage return which upsets mingw
-    ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;;
-  *)
-    ac_prog=`($CC -print-prog-name=ld) 2>&5` ;;
-  esac
-  case $ac_prog in
-    # Accept absolute paths.
-    [\\/]* | [A-Za-z]:[\\/]*)
-      re_direlt='/[^/][^/]*/\.\./'
-      # Canonicalize the path of ld
-      ac_prog=`echo $ac_prog| sed 's%\\\\%/%g'`
-      while echo $ac_prog | grep "$re_direlt" > /dev/null 2>&1; do
-       ac_prog=`echo $ac_prog| sed "s%$re_direlt%/%"`
-      done
-      test -z "$LD" && LD="$ac_prog"
-      ;;
-  "")
-    # If it fails, then pretend we aren't using GCC.
-    ac_prog=ld
-    ;;
-  *)
-    # If it is relative, then search for the first ld in PATH.
-    with_gnu_ld=unknown
-    ;;
-  esac
-elif test "$with_gnu_ld" = yes; then
-  echo "$as_me:$LINENO: checking for GNU ld" >&5
-echo $ECHO_N "checking for GNU ld... $ECHO_C" >&6
-else
-  echo "$as_me:$LINENO: checking for non-GNU ld" >&5
-echo $ECHO_N "checking for non-GNU ld... $ECHO_C" >&6
-fi
-if test "${acl_cv_path_LD+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  if test -z "$LD"; then
-  IFS="${IFS=  }"; ac_save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR-:}"
-  for ac_dir in $PATH; do
-    test -z "$ac_dir" && ac_dir=.
-    if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then
-      acl_cv_path_LD="$ac_dir/$ac_prog"
-      # Check to see if the program is GNU ld.  I'd rather use --version,
-      # but apparently some GNU ld's only accept -v.
-      # Break only if it was the GNU/non-GNU ld that we prefer.
-      if "$acl_cv_path_LD" -v 2>&1 < /dev/null | egrep '(GNU|with BFD)' > /dev/null; then
-       test "$with_gnu_ld" != no && break
-      else
-       test "$with_gnu_ld" != yes && break
-      fi
-    fi
-  done
-  IFS="$ac_save_ifs"
-else
-  acl_cv_path_LD="$LD" # Let the user override the test with a path.
-fi
-fi
-
-LD="$acl_cv_path_LD"
-if test -n "$LD"; then
-  echo "$as_me:$LINENO: result: $LD" >&5
-echo "${ECHO_T}$LD" >&6
-else
-  echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6
-fi
-test -z "$LD" && { { echo "$as_me:$LINENO: error: no acceptable ld found in \$PATH" >&5
-echo "$as_me: error: no acceptable ld found in \$PATH" >&2;}
-   { (exit 1); exit 1; }; }
-echo "$as_me:$LINENO: checking if the linker ($LD) is GNU ld" >&5
-echo $ECHO_N "checking if the linker ($LD) is GNU ld... $ECHO_C" >&6
-if test "${acl_cv_prog_gnu_ld+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  # I'd rather use --version here, but apparently some GNU ld's only accept -v.
-if $LD -v 2>&1 </dev/null | egrep '(GNU|with BFD)' 1>&5; then
-  acl_cv_prog_gnu_ld=yes
-else
-  acl_cv_prog_gnu_ld=no
-fi
-fi
-echo "$as_me:$LINENO: result: $acl_cv_prog_gnu_ld" >&5
-echo "${ECHO_T}$acl_cv_prog_gnu_ld" >&6
-with_gnu_ld=$acl_cv_prog_gnu_ld
-
-
-
-                                                echo "$as_me:$LINENO: checking for shared library run path origin" >&5
-echo $ECHO_N "checking for shared library run path origin... $ECHO_C" >&6
-if test "${acl_cv_rpath+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  
-    CC="$CC" GCC="$GCC" LDFLAGS="$LDFLAGS" LD="$LD" with_gnu_ld="$with_gnu_ld" \
-    ${CONFIG_SHELL-/bin/sh} "$ac_aux_dir/config.rpath" "$host" > conftest.sh
-    . ./conftest.sh
-    rm -f ./conftest.sh
-    acl_cv_rpath=done
-  
-fi
-echo "$as_me:$LINENO: result: $acl_cv_rpath" >&5
-echo "${ECHO_T}$acl_cv_rpath" >&6
-  wl="$acl_cv_wl"
-  libext="$acl_cv_libext"
-  shlibext="$acl_cv_shlibext"
-  hardcode_libdir_flag_spec="$acl_cv_hardcode_libdir_flag_spec"
-  hardcode_libdir_separator="$acl_cv_hardcode_libdir_separator"
-  hardcode_direct="$acl_cv_hardcode_direct"
-  hardcode_minus_L="$acl_cv_hardcode_minus_L"
-    # Check whether --enable-rpath or --disable-rpath was given.
-if test "${enable_rpath+set}" = set; then
-  enableval="$enable_rpath"
-  :
-else
-  enable_rpath=yes
-fi; 
-
-
-    
-  
-
-      
-  
-    use_additional=yes
-  
-  acl_save_prefix="$prefix"
-  prefix="$acl_final_prefix"
-  acl_save_exec_prefix="$exec_prefix"
-  exec_prefix="$acl_final_exec_prefix"
-  
-    eval additional_includedir=\"$includedir\"
-    eval additional_libdir=\"$libdir\"
-  
-  exec_prefix="$acl_save_exec_prefix"
-  prefix="$acl_save_prefix"
-
-  
-# Check whether --with-libiconv-prefix or --without-libiconv-prefix was given.
-if test "${with_libiconv_prefix+set}" = set; then
-  withval="$with_libiconv_prefix"
-  
-    if test "X$withval" = "Xno"; then
-      use_additional=no
-    else
-      if test "X$withval" = "X"; then
-        
-  acl_save_prefix="$prefix"
-  prefix="$acl_final_prefix"
-  acl_save_exec_prefix="$exec_prefix"
-  exec_prefix="$acl_final_exec_prefix"
-  
-          eval additional_includedir=\"$includedir\"
-          eval additional_libdir=\"$libdir\"
-        
-  exec_prefix="$acl_save_exec_prefix"
-  prefix="$acl_save_prefix"
-
-      else
-        additional_includedir="$withval/include"
-        additional_libdir="$withval/lib"
-      fi
-    fi
-
-fi; 
-      LIBICONV=
-  LTLIBICONV=
-  INCICONV=
-  rpathdirs=
-  ltrpathdirs=
-  names_already_handled=
-  names_next_round='iconv '
-  while test -n "$names_next_round"; do
-    names_this_round="$names_next_round"
-    names_next_round=
-    for name in $names_this_round; do
-      already_handled=
-      for n in $names_already_handled; do
-        if test "$n" = "$name"; then
-          already_handled=yes
-          break
-        fi
-      done
-      if test -z "$already_handled"; then
-        names_already_handled="$names_already_handled $name"
-                        uppername=`echo "$name" | sed -e 'y|abcdefghijklmnopqrstuvwxyz./-|ABCDEFGHIJKLMNOPQRSTUVWXYZ___|'`
-        eval value=\"\$HAVE_LIB$uppername\"
-        if test -n "$value"; then
-          if test "$value" = yes; then
-            eval value=\"\$LIB$uppername\"
-            test -z "$value" || LIBICONV="${LIBICONV}${LIBICONV:+ }$value"
-            eval value=\"\$LTLIB$uppername\"
-            test -z "$value" || LTLIBICONV="${LTLIBICONV}${LTLIBICONV:+ }$value"
-          else
-                                    :
-          fi
-        else
-                              found_dir=
-          found_la=
-          found_so=
-          found_a=
-          if test $use_additional = yes; then
-            if test "X$prefer_shared" = "Xyes" && test -n "$shlibext" && test -f "$additional_libdir/lib$name.$shlibext"; then
-              found_dir="$additional_libdir"
-              found_so="$additional_libdir/lib$name.$shlibext"
-              if test -f "$additional_libdir/lib$name.la"; then
-                found_la="$additional_libdir/lib$name.la"
-              fi
-            else
-              if test -f "$additional_libdir/lib$name.$libext"; then
-                found_dir="$additional_libdir"
-                found_a="$additional_libdir/lib$name.$libext"
-                if test -f "$additional_libdir/lib$name.la"; then
-                  found_la="$additional_libdir/lib$name.la"
-                fi
-              fi
-            fi
-          fi
-          if test "X$found_dir" = "X"; then
-            for x in $LDFLAGS $LTLIBICONV; do
-              
-  acl_save_prefix="$prefix"
-  prefix="$acl_final_prefix"
-  acl_save_exec_prefix="$exec_prefix"
-  exec_prefix="$acl_final_exec_prefix"
-  eval x=\"$x\"
-  exec_prefix="$acl_save_exec_prefix"
-  prefix="$acl_save_prefix"
-
-              case "$x" in
-                -L*)
-                  dir=`echo "X$x" | sed -e 's/^X-L//'`
-                  if test "X$prefer_shared" = "Xyes" && test -n "$shlibext" && test -f "$dir/lib$name.$shlibext"; then
-                    found_dir="$dir"
-                    found_so="$dir/lib$name.$shlibext"
-                    if test -f "$dir/lib$name.la"; then
-                      found_la="$dir/lib$name.la"
-                    fi
-                  else
-                    if test -f "$dir/lib$name.$libext"; then
-                      found_dir="$dir"
-                      found_a="$dir/lib$name.$libext"
-                      if test -f "$dir/lib$name.la"; then
-                        found_la="$dir/lib$name.la"
-                      fi
-                    fi
-                  fi
-                  ;;
-              esac
-              if test "X$found_dir" != "X"; then
-                break
-              fi
-            done
-          fi
-          if test "X$found_dir" != "X"; then
-                        LTLIBICONV="${LTLIBICONV}${LTLIBICONV:+ }-L$found_dir -l$name"
-            if test "X$found_so" != "X"; then
-                                                        if test "$enable_rpath" = no || test "X$found_dir" = "X/usr/lib"; then
-                                LIBICONV="${LIBICONV}${LIBICONV:+ }$found_so"
-              else
-                                                                                haveit=
-                for x in $ltrpathdirs; do
-                  if test "X$x" = "X$found_dir"; then
-                    haveit=yes
-                    break
-                  fi
-                done
-                if test -z "$haveit"; then
-                  ltrpathdirs="$ltrpathdirs $found_dir"
-                fi
-                                if test "$hardcode_direct" = yes; then
-                                                      LIBICONV="${LIBICONV}${LIBICONV:+ }$found_so"
-                else
-                  if test -n "$hardcode_libdir_flag_spec" && test "$hardcode_minus_L" = no; then
-                                                            LIBICONV="${LIBICONV}${LIBICONV:+ }$found_so"
-                                                            haveit=
-                    for x in $rpathdirs; do
-                      if test "X$x" = "X$found_dir"; then
-                        haveit=yes
-                        break
-                      fi
-                    done
-                    if test -z "$haveit"; then
-                      rpathdirs="$rpathdirs $found_dir"
-                    fi
-                  else
-                                                                                haveit=
-                    for x in $LDFLAGS $LIBICONV; do
-                      
-  acl_save_prefix="$prefix"
-  prefix="$acl_final_prefix"
-  acl_save_exec_prefix="$exec_prefix"
-  exec_prefix="$acl_final_exec_prefix"
-  eval x=\"$x\"
-  exec_prefix="$acl_save_exec_prefix"
-  prefix="$acl_save_prefix"
-
-                      if test "X$x" = "X-L$found_dir"; then
-                        haveit=yes
-                        break
-                      fi
-                    done
-                    if test -z "$haveit"; then
-                      LIBICONV="${LIBICONV}${LIBICONV:+ }-L$found_dir"
-                    fi
-                    if test "$hardcode_minus_L" != no; then
-                                                                                        LIBICONV="${LIBICONV}${LIBICONV:+ }$found_so"
-                    else
-                                                                                                                                                                                LIBICONV="${LIBICONV}${LIBICONV:+ }-l$name"
-                    fi
-                  fi
-                fi
-              fi
-            else
-              if test "X$found_a" != "X"; then
-                                LIBICONV="${LIBICONV}${LIBICONV:+ }$found_a"
-              else
-                                                LIBICONV="${LIBICONV}${LIBICONV:+ }-L$found_dir -l$name"
-              fi
-            fi
-                        additional_includedir=
-            case "$found_dir" in
-              */lib | */lib/)
-                basedir=`echo "X$found_dir" | sed -e 's,^X,,' -e 's,/lib/*$,,'`
-                additional_includedir="$basedir/include"
-                ;;
-            esac
-            if test "X$additional_includedir" != "X"; then
-                                                                                                                if test "X$additional_includedir" != "X/usr/include"; then
-                haveit=
-                if test "X$additional_includedir" = "X/usr/local/include"; then
-                  if test -n "$GCC"; then
-                    case $host_os in
-                      linux*) haveit=yes;;
-                    esac
-                  fi
-                fi
-                if test -z "$haveit"; then
-                  for x in $CPPFLAGS $INCICONV; do
-                    
-  acl_save_prefix="$prefix"
-  prefix="$acl_final_prefix"
-  acl_save_exec_prefix="$exec_prefix"
-  exec_prefix="$acl_final_exec_prefix"
-  eval x=\"$x\"
-  exec_prefix="$acl_save_exec_prefix"
-  prefix="$acl_save_prefix"
-
-                    if test "X$x" = "X-I$additional_includedir"; then
-                      haveit=yes
-                      break
-                    fi
-                  done
-                  if test -z "$haveit"; then
-                    if test -d "$additional_includedir"; then
-                                            INCICONV="${INCICONV}${INCICONV:+ }-I$additional_includedir"
-                    fi
-                  fi
-                fi
-              fi
-            fi
-                        if test -n "$found_la"; then
-                                                        save_libdir="$libdir"
-              case "$found_la" in
-                */* | *\\*) . "$found_la" ;;
-                *) . "./$found_la" ;;
-              esac
-              libdir="$save_libdir"
-                            for dep in $dependency_libs; do
-                case "$dep" in
-                  -L*)
-                    additional_libdir=`echo "X$dep" | sed -e 's/^X-L//'`
-                                                                                                                                                                if test "X$additional_libdir" != "X/usr/lib"; then
-                      haveit=
-                      if test "X$additional_libdir" = "X/usr/local/lib"; then
-                        if test -n "$GCC"; then
-                          case $host_os in
-                            linux*) haveit=yes;;
-                          esac
-                        fi
-                      fi
-                      if test -z "$haveit"; then
-                        haveit=
-                        for x in $LDFLAGS $LIBICONV; do
-                          
-  acl_save_prefix="$prefix"
-  prefix="$acl_final_prefix"
-  acl_save_exec_prefix="$exec_prefix"
-  exec_prefix="$acl_final_exec_prefix"
-  eval x=\"$x\"
-  exec_prefix="$acl_save_exec_prefix"
-  prefix="$acl_save_prefix"
-
-                          if test "X$x" = "X-L$additional_libdir"; then
-                            haveit=yes
-                            break
-                          fi
-                        done
-                        if test -z "$haveit"; then
-                          if test -d "$additional_libdir"; then
-                                                        LIBICONV="${LIBICONV}${LIBICONV:+ }-L$additional_libdir"
-                          fi
-                        fi
-                        haveit=
-                        for x in $LDFLAGS $LTLIBICONV; do
-                          
-  acl_save_prefix="$prefix"
-  prefix="$acl_final_prefix"
-  acl_save_exec_prefix="$exec_prefix"
-  exec_prefix="$acl_final_exec_prefix"
-  eval x=\"$x\"
-  exec_prefix="$acl_save_exec_prefix"
-  prefix="$acl_save_prefix"
-
-                          if test "X$x" = "X-L$additional_libdir"; then
-                            haveit=yes
-                            break
-                          fi
-                        done
-                        if test -z "$haveit"; then
-                          if test -d "$additional_libdir"; then
-                                                        LTLIBICONV="${LTLIBICONV}${LTLIBICONV:+ }-L$additional_libdir"
-                          fi
-                        fi
-                      fi
-                    fi
-                    ;;
-                  -R*)
-                    dir=`echo "X$dep" | sed -e 's/^X-R//'`
-                    if test "$enable_rpath" != no; then
-                                                                  haveit=
-                      for x in $rpathdirs; do
-                        if test "X$x" = "X$dir"; then
-                          haveit=yes
-                          break
-                        fi
-                      done
-                      if test -z "$haveit"; then
-                        rpathdirs="$rpathdirs $dir"
-                      fi
-                                                                  haveit=
-                      for x in $ltrpathdirs; do
-                        if test "X$x" = "X$dir"; then
-                          haveit=yes
-                          break
-                        fi
-                      done
-                      if test -z "$haveit"; then
-                        ltrpathdirs="$ltrpathdirs $dir"
-                      fi
-                    fi
-                    ;;
-                  -l*)
-                                        names_next_round="$names_next_round "`echo "X$dep" | sed -e 's/^X-l//'`
-                    ;;
-                  *.la)
-                                                                                names_next_round="$names_next_round "`echo "X$dep" | sed -e 's,^X.*/,,' -e 's,^lib,,' -e 's,\.la$,,'`
-                    ;;
-                  *)
-                                        LIBICONV="${LIBICONV}${LIBICONV:+ }$dep"
-                    LTLIBICONV="${LTLIBICONV}${LTLIBICONV:+ }$dep"
-                    ;;
-                esac
-              done
-            fi
-          else
-                                                            LIBICONV="${LIBICONV}${LIBICONV:+ }-l$name"
-            LTLIBICONV="${LTLIBICONV}${LTLIBICONV:+ }-l$name"
-          fi
-        fi
-      fi
-    done
-  done
-  if test "X$rpathdirs" != "X"; then
-    if test -n "$hardcode_libdir_separator"; then
-                        alldirs=
-      for found_dir in $rpathdirs; do
-        alldirs="${alldirs}${alldirs:+$hardcode_libdir_separator}$found_dir"
-      done
-            acl_save_libdir="$libdir"
-      libdir="$alldirs"
-      eval flag=\"$hardcode_libdir_flag_spec\"
-      libdir="$acl_save_libdir"
-      LIBICONV="${LIBICONV}${LIBICONV:+ }$flag"
-    else
-            for found_dir in $rpathdirs; do
-        acl_save_libdir="$libdir"
-        libdir="$found_dir"
-        eval flag=\"$hardcode_libdir_flag_spec\"
-        libdir="$acl_save_libdir"
-        LIBICONV="${LIBICONV}${LIBICONV:+ }$flag"
-      done
-    fi
-  fi
-  if test "X$ltrpathdirs" != "X"; then
-            for found_dir in $ltrpathdirs; do
-      LTLIBICONV="${LTLIBICONV}${LTLIBICONV:+ }-R$found_dir"
-    done
-  fi
-
-
-
-                                    
-  
-
-
-
-
-
-
-
-
-
-for ac_header in argz.h limits.h locale.h nl_types.h malloc.h stddef.h \
-stdlib.h string.h unistd.h sys/param.h
-do
-as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
-if eval "test \"\${$as_ac_Header+set}\" = set"; then
-  echo "$as_me:$LINENO: checking for $ac_header" >&5
-echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6
-if eval "test \"\${$as_ac_Header+set}\" = set"; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-fi
-echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5
-echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
-else
-  # Is the header compilable?
-echo "$as_me:$LINENO: checking $ac_header usability" >&5
-echo $ECHO_N "checking $ac_header usability... $ECHO_C" >&6
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-@%:@include <$ac_header>
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_header_compiler=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_header_compiler=no
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-echo "$as_me:$LINENO: result: $ac_header_compiler" >&5
-echo "${ECHO_T}$ac_header_compiler" >&6
-
-# Is the header present?
-echo "$as_me:$LINENO: checking $ac_header presence" >&5
-echo $ECHO_N "checking $ac_header presence... $ECHO_C" >&6
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-@%:@include <$ac_header>
-_ACEOF
-if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5
-  (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } >/dev/null; then
-  if test -s conftest.err; then
-    ac_cpp_err=$ac_c_preproc_warn_flag
-    ac_cpp_err=$ac_cpp_err$ac_c_werror_flag
-  else
-    ac_cpp_err=
-  fi
-else
-  ac_cpp_err=yes
-fi
-if test -z "$ac_cpp_err"; then
-  ac_header_preproc=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-  ac_header_preproc=no
-fi
-rm -f conftest.err conftest.$ac_ext
-echo "$as_me:$LINENO: result: $ac_header_preproc" >&5
-echo "${ECHO_T}$ac_header_preproc" >&6
-
-# So?  What about this header?
-case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in
-  yes:no: )
-    { echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5
-echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;}
-    { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5
-echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;}
-    ac_header_preproc=yes
-    ;;
-  no:yes:* )
-    { echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5
-echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;}
-    { echo "$as_me:$LINENO: WARNING: $ac_header:     check for missing prerequisite headers?" >&5
-echo "$as_me: WARNING: $ac_header:     check for missing prerequisite headers?" >&2;}
-    { echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5
-echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;}
-    { echo "$as_me:$LINENO: WARNING: $ac_header:     section \"Present But Cannot Be Compiled\"" >&5
-echo "$as_me: WARNING: $ac_header:     section \"Present But Cannot Be Compiled\"" >&2;}
-    { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5
-echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;}
-    { echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5
-echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;}
-    (
-      cat <<\_ASBOX
-@%:@@%:@ ------------------------------- @%:@@%:@
-@%:@@%:@ Report this to bug-bash@gnu.org @%:@@%:@
-@%:@@%:@ ------------------------------- @%:@@%:@
-_ASBOX
-    ) |
-      sed "s/^/$as_me: WARNING:     /" >&2
-    ;;
-esac
-echo "$as_me:$LINENO: checking for $ac_header" >&5
-echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6
-if eval "test \"\${$as_ac_Header+set}\" = set"; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  eval "$as_ac_Header=\$ac_header_preproc"
-fi
-echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5
-echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
-
-fi
-if test `eval echo '${'$as_ac_Header'}'` = yes; then
-  cat >>confdefs.h <<_ACEOF
-@%:@define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
-fi
-
-done
-
-  
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-for ac_func in feof_unlocked fgets_unlocked getc_unlocked getcwd getegid \
-geteuid getgid getuid mempcpy munmap putenv setenv setlocale localeconv stpcpy \
-strcasecmp strdup strtoul tsearch __argz_count __argz_stringify __argz_next \
-__fsetlocking
-do
-as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`
-echo "$as_me:$LINENO: checking for $ac_func" >&5
-echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6
-if eval "test \"\${$as_ac_var+set}\" = set"; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-/* Define $ac_func to an innocuous variant, in case <limits.h> declares $ac_func.
-   For example, HP-UX 11i <limits.h> declares gettimeofday.  */
-#define $ac_func innocuous_$ac_func
-
-/* System header to define __stub macros and hopefully few prototypes,
-    which can conflict with char $ac_func (); below.
-    Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
-    <limits.h> exists even on freestanding compilers.  */
-
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-
-#undef $ac_func
-
-/* Override any gcc2 internal prototype to avoid an error.  */
-#ifdef __cplusplus
-extern "C"
-{
-#endif
-/* We use char because int might match the return type of a gcc2
-   builtin and then its argument prototype would still apply.  */
-char $ac_func ();
-/* The GNU C library defines this for functions which it implements
-    to always fail with ENOSYS.  Some functions are actually named
-    something starting with __ and the normal name is an alias.  */
-#if defined (__stub_$ac_func) || defined (__stub___$ac_func)
-choke me
-#else
-char (*f) () = $ac_func;
-#endif
-#ifdef __cplusplus
-}
-#endif
-
-int
-main ()
-{
-return f != $ac_func;
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest$ac_exeext'
-  { (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
-  eval "$as_ac_var=yes"
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-eval "$as_ac_var=no"
-fi
-rm -f conftest.err conftest.$ac_objext \
-      conftest$ac_exeext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_var'}'`" >&5
-echo "${ECHO_T}`eval echo '${'$as_ac_var'}'`" >&6
-if test `eval echo '${'$as_ac_var'}'` = yes; then
-  cat >>confdefs.h <<_ACEOF
-@%:@define `echo "HAVE_$ac_func" | $as_tr_cpp` 1
-_ACEOF
-fi
-done
-
-
-  
-  
-    
-      
-
-          am_save_CPPFLAGS="$CPPFLAGS"
-  
-  for element in $INCICONV; do
-    haveit=
-    for x in $CPPFLAGS; do
-      
-  acl_save_prefix="$prefix"
-  prefix="$acl_final_prefix"
-  acl_save_exec_prefix="$exec_prefix"
-  exec_prefix="$acl_final_exec_prefix"
-  eval x=\"$x\"
-  exec_prefix="$acl_save_exec_prefix"
-  prefix="$acl_save_prefix"
-
-      if test "X$x" = "X$element"; then
-        haveit=yes
-        break
-      fi
-    done
-    if test -z "$haveit"; then
-      CPPFLAGS="${CPPFLAGS}${CPPFLAGS:+ }$element"
-    fi
-  done
-
-
-  echo "$as_me:$LINENO: checking for iconv" >&5
-echo $ECHO_N "checking for iconv... $ECHO_C" >&6
-if test "${am_cv_func_iconv+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  
-    am_cv_func_iconv="no, consider installing GNU libiconv"
-    am_cv_lib_iconv=no
-    cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <stdlib.h>
-#include <iconv.h>
-int
-main ()
-{
-iconv_t cd = iconv_open("","");
-       iconv(cd,NULL,NULL,NULL,NULL);
-       iconv_close(cd);
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest$ac_exeext'
-  { (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
-  am_cv_func_iconv=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-fi
-rm -f conftest.err conftest.$ac_objext \
-      conftest$ac_exeext conftest.$ac_ext
-    if test "$am_cv_func_iconv" != yes; then
-      am_save_LIBS="$LIBS"
-      LIBS="$LIBS $LIBICONV"
-      cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <stdlib.h>
-#include <iconv.h>
-int
-main ()
-{
-iconv_t cd = iconv_open("","");
-         iconv(cd,NULL,NULL,NULL,NULL);
-         iconv_close(cd);
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest$ac_exeext'
-  { (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
-  am_cv_lib_iconv=yes
-        am_cv_func_iconv=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-fi
-rm -f conftest.err conftest.$ac_objext \
-      conftest$ac_exeext conftest.$ac_ext
-      LIBS="$am_save_LIBS"
-    fi
-  
-fi
-echo "$as_me:$LINENO: result: $am_cv_func_iconv" >&5
-echo "${ECHO_T}$am_cv_func_iconv" >&6
-  if test "$am_cv_func_iconv" = yes; then
-    
-cat >>confdefs.h <<\_ACEOF
-@%:@define HAVE_ICONV 1
-_ACEOF
-
-  fi
-  if test "$am_cv_lib_iconv" = yes; then
-    echo "$as_me:$LINENO: checking how to link with libiconv" >&5
-echo $ECHO_N "checking how to link with libiconv... $ECHO_C" >&6
-    echo "$as_me:$LINENO: result: $LIBICONV" >&5
-echo "${ECHO_T}$LIBICONV" >&6
-  else
-            CPPFLAGS="$am_save_CPPFLAGS"
-    LIBICONV=
-    LTLIBICONV=
-  fi
-  
-  
-
-  if test "$am_cv_func_iconv" = yes; then
-    echo "$as_me:$LINENO: checking for iconv declaration" >&5
-echo $ECHO_N "checking for iconv declaration... $ECHO_C" >&6
-    if test "${am_cv_proto_iconv+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  
-      cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-
-#include <stdlib.h>
-#include <iconv.h>
-extern
-#ifdef __cplusplus
-"C"
-#endif
-#if defined(__STDC__) || defined(__cplusplus)
-size_t iconv (iconv_t cd, char * *inbuf, size_t *inbytesleft, char * *outbuf, size_t *outbytesleft);
-#else
-size_t iconv();
-#endif
-
-int
-main ()
-{
-
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  am_cv_proto_iconv_arg1=""
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-am_cv_proto_iconv_arg1="const"
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-      am_cv_proto_iconv="extern size_t iconv (iconv_t cd, $am_cv_proto_iconv_arg1 char * *inbuf, size_t *inbytesleft, char * *outbuf, size_t *outbytesleft);"
-fi
-
-    am_cv_proto_iconv=`echo "$am_cv_proto_iconv" | tr -s ' ' | sed -e 's/( /(/'`
-    echo "$as_me:$LINENO: result: ${ac_t:-
-         }$am_cv_proto_iconv" >&5
-echo "${ECHO_T}${ac_t:-
-         }$am_cv_proto_iconv" >&6
-    
-cat >>confdefs.h <<_ACEOF
-@%:@define ICONV_CONST $am_cv_proto_iconv_arg1
-_ACEOF
-
-  fi
-
-  
-  echo "$as_me:$LINENO: checking for nl_langinfo and CODESET" >&5
-echo $ECHO_N "checking for nl_langinfo and CODESET... $ECHO_C" >&6
-if test "${am_cv_langinfo_codeset+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <langinfo.h>
-int
-main ()
-{
-char* cs = nl_langinfo(CODESET);
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest$ac_exeext'
-  { (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
-  am_cv_langinfo_codeset=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-am_cv_langinfo_codeset=no
-fi
-rm -f conftest.err conftest.$ac_objext \
-      conftest$ac_exeext conftest.$ac_ext
-    
-fi
-echo "$as_me:$LINENO: result: $am_cv_langinfo_codeset" >&5
-echo "${ECHO_T}$am_cv_langinfo_codeset" >&6
-  if test $am_cv_langinfo_codeset = yes; then
-    
-cat >>confdefs.h <<\_ACEOF
-@%:@define HAVE_LANGINFO_CODESET 1
-_ACEOF
-
-  fi
-
-  if test $ac_cv_header_locale_h = yes; then
-    
-  echo "$as_me:$LINENO: checking for LC_MESSAGES" >&5
-echo $ECHO_N "checking for LC_MESSAGES... $ECHO_C" >&6
-if test "${am_cv_val_LC_MESSAGES+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <locale.h>
-int
-main ()
-{
-return LC_MESSAGES
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest$ac_exeext'
-  { (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
-  am_cv_val_LC_MESSAGES=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-am_cv_val_LC_MESSAGES=no
-fi
-rm -f conftest.err conftest.$ac_objext \
-      conftest$ac_exeext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: $am_cv_val_LC_MESSAGES" >&5
-echo "${ECHO_T}$am_cv_val_LC_MESSAGES" >&6
-  if test $am_cv_val_LC_MESSAGES = yes; then
-    
-cat >>confdefs.h <<\_ACEOF
-@%:@define HAVE_LC_MESSAGES 1
-_ACEOF
-
-  fi
-
-  fi
-
-                      for ac_prog in bison
-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_INTLBISON+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  if test -n "$INTLBISON"; then
-  ac_cv_prog_INTLBISON="$INTLBISON" # 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_INTLBISON="$ac_prog"
-    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-done
-
-fi
-fi
-INTLBISON=$ac_cv_prog_INTLBISON
-if test -n "$INTLBISON"; then
-  echo "$as_me:$LINENO: result: $INTLBISON" >&5
-echo "${ECHO_T}$INTLBISON" >&6
-else
-  echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6
-fi
-
-  test -n "$INTLBISON" && break
-done
-
-  if test -z "$INTLBISON"; then
-    ac_verc_fail=yes
-  else
-        echo "$as_me:$LINENO: checking version of bison" >&5
-echo $ECHO_N "checking version of bison... $ECHO_C" >&6
-    ac_prog_version=`$INTLBISON --version 2>&1 | sed -n 's/^.*GNU Bison.* \([0-9]*\.[0-9.]*\).*$/\1/p'`
-    case $ac_prog_version in
-      '') ac_prog_version="v. ?.??, bad"; ac_verc_fail=yes;;
-      1.2[6-9]* | 1.[3-9][0-9]* | [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
-    INTLBISON=:
-  fi
-
-
-    
-  
-  
-  
-
-    
-      
-
-    
-  
-
-                        
-
-    
-  echo "$as_me:$LINENO: checking whether NLS is requested" >&5
-echo $ECHO_N "checking whether NLS is requested... $ECHO_C" >&6
-    # Check whether --enable-nls or --disable-nls was given.
-if test "${enable_nls+set}" = set; then
-  enableval="$enable_nls"
-  USE_NLS=$enableval
-else
-  USE_NLS=yes
-fi; 
-  echo "$as_me:$LINENO: result: $USE_NLS" >&5
-echo "${ECHO_T}$USE_NLS" >&6
-  
-
-
-  
-    BUILD_INCLUDED_LIBINTL=no
-    USE_INCLUDED_LIBINTL=no
-  
-  LIBINTL=
-  LTLIBINTL=
-  POSUB=
-
-    if test "$USE_NLS" = "yes"; then
-    gt_use_preinstalled_gnugettext=no
-    
-      echo "$as_me:$LINENO: checking whether included gettext is requested" >&5
-echo $ECHO_N "checking whether included gettext is requested... $ECHO_C" >&6
-      
-# Check whether --with-included-gettext or --without-included-gettext was given.
-if test "${with_included_gettext+set}" = set; then
-  withval="$with_included_gettext"
-  nls_cv_force_use_gnu_gettext=$withval
-else
-  nls_cv_force_use_gnu_gettext=no
-fi; 
-      echo "$as_me:$LINENO: result: $nls_cv_force_use_gnu_gettext" >&5
-echo "${ECHO_T}$nls_cv_force_use_gnu_gettext" >&6
-
-      nls_cv_use_gnu_gettext="$nls_cv_force_use_gnu_gettext"
-      if test "$nls_cv_force_use_gnu_gettext" != "yes"; then
-    
-                        
-                
-        
-        
-
-        echo "$as_me:$LINENO: checking for GNU gettext in libc" >&5
-echo $ECHO_N "checking for GNU gettext in libc... $ECHO_C" >&6
-if test "${gt_cv_func_gnugettext2_libc+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <libintl.h>
-extern int _nl_msg_cat_cntr;
-extern int *_nl_domain_bindings;
-int
-main ()
-{
-bindtextdomain ("", "");
-return (int) gettext ("") + (int) ngettext ("", "", 0) + _nl_msg_cat_cntr + *_nl_domain_bindings
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest$ac_exeext'
-  { (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
-  gt_cv_func_gnugettext2_libc=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-gt_cv_func_gnugettext2_libc=no
-fi
-rm -f conftest.err conftest.$ac_objext \
-      conftest$ac_exeext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: $gt_cv_func_gnugettext2_libc" >&5
-echo "${ECHO_T}$gt_cv_func_gnugettext2_libc" >&6
-
-        if test "$gt_cv_func_gnugettext2_libc" != "yes"; then
-                    
-                                                  
-  
-    use_additional=yes
-  
-  acl_save_prefix="$prefix"
-  prefix="$acl_final_prefix"
-  acl_save_exec_prefix="$exec_prefix"
-  exec_prefix="$acl_final_exec_prefix"
-  
-    eval additional_includedir=\"$includedir\"
-    eval additional_libdir=\"$libdir\"
-  
-  exec_prefix="$acl_save_exec_prefix"
-  prefix="$acl_save_prefix"
-
-  
-# Check whether --with-libintl-prefix or --without-libintl-prefix was given.
-if test "${with_libintl_prefix+set}" = set; then
-  withval="$with_libintl_prefix"
-  
-    if test "X$withval" = "Xno"; then
-      use_additional=no
-    else
-      if test "X$withval" = "X"; then
-        
-  acl_save_prefix="$prefix"
-  prefix="$acl_final_prefix"
-  acl_save_exec_prefix="$exec_prefix"
-  exec_prefix="$acl_final_exec_prefix"
-  
-          eval additional_includedir=\"$includedir\"
-          eval additional_libdir=\"$libdir\"
-        
-  exec_prefix="$acl_save_exec_prefix"
-  prefix="$acl_save_prefix"
-
-      else
-        additional_includedir="$withval/include"
-        additional_libdir="$withval/lib"
-      fi
-    fi
-
-fi; 
-      LIBINTL=
-  LTLIBINTL=
-  INCINTL=
-  rpathdirs=
-  ltrpathdirs=
-  names_already_handled=
-  names_next_round='intl '
-  while test -n "$names_next_round"; do
-    names_this_round="$names_next_round"
-    names_next_round=
-    for name in $names_this_round; do
-      already_handled=
-      for n in $names_already_handled; do
-        if test "$n" = "$name"; then
-          already_handled=yes
-          break
-        fi
-      done
-      if test -z "$already_handled"; then
-        names_already_handled="$names_already_handled $name"
-                        uppername=`echo "$name" | sed -e 'y|abcdefghijklmnopqrstuvwxyz./-|ABCDEFGHIJKLMNOPQRSTUVWXYZ___|'`
-        eval value=\"\$HAVE_LIB$uppername\"
-        if test -n "$value"; then
-          if test "$value" = yes; then
-            eval value=\"\$LIB$uppername\"
-            test -z "$value" || LIBINTL="${LIBINTL}${LIBINTL:+ }$value"
-            eval value=\"\$LTLIB$uppername\"
-            test -z "$value" || LTLIBINTL="${LTLIBINTL}${LTLIBINTL:+ }$value"
-          else
-                                    :
-          fi
-        else
-                              found_dir=
-          found_la=
-          found_so=
-          found_a=
-          if test $use_additional = yes; then
-            if test "X$prefer_shared" = "Xyes" && test -n "$shlibext" && test -f "$additional_libdir/lib$name.$shlibext"; then
-              found_dir="$additional_libdir"
-              found_so="$additional_libdir/lib$name.$shlibext"
-              if test -f "$additional_libdir/lib$name.la"; then
-                found_la="$additional_libdir/lib$name.la"
-              fi
-            else
-              if test -f "$additional_libdir/lib$name.$libext"; then
-                found_dir="$additional_libdir"
-                found_a="$additional_libdir/lib$name.$libext"
-                if test -f "$additional_libdir/lib$name.la"; then
-                  found_la="$additional_libdir/lib$name.la"
-                fi
-              fi
-            fi
-          fi
-          if test "X$found_dir" = "X"; then
-            for x in $LDFLAGS $LTLIBINTL; do
-              
-  acl_save_prefix="$prefix"
-  prefix="$acl_final_prefix"
-  acl_save_exec_prefix="$exec_prefix"
-  exec_prefix="$acl_final_exec_prefix"
-  eval x=\"$x\"
-  exec_prefix="$acl_save_exec_prefix"
-  prefix="$acl_save_prefix"
-
-              case "$x" in
-                -L*)
-                  dir=`echo "X$x" | sed -e 's/^X-L//'`
-                  if test "X$prefer_shared" = "Xyes" && test -n "$shlibext" && test -f "$dir/lib$name.$shlibext"; then
-                    found_dir="$dir"
-                    found_so="$dir/lib$name.$shlibext"
-                    if test -f "$dir/lib$name.la"; then
-                      found_la="$dir/lib$name.la"
-                    fi
-                  else
-                    if test -f "$dir/lib$name.$libext"; then
-                      found_dir="$dir"
-                      found_a="$dir/lib$name.$libext"
-                      if test -f "$dir/lib$name.la"; then
-                        found_la="$dir/lib$name.la"
-                      fi
-                    fi
-                  fi
-                  ;;
-              esac
-              if test "X$found_dir" != "X"; then
-                break
-              fi
-            done
-          fi
-          if test "X$found_dir" != "X"; then
-                        LTLIBINTL="${LTLIBINTL}${LTLIBINTL:+ }-L$found_dir -l$name"
-            if test "X$found_so" != "X"; then
-                                                        if test "$enable_rpath" = no || test "X$found_dir" = "X/usr/lib"; then
-                                LIBINTL="${LIBINTL}${LIBINTL:+ }$found_so"
-              else
-                                                                                haveit=
-                for x in $ltrpathdirs; do
-                  if test "X$x" = "X$found_dir"; then
-                    haveit=yes
-                    break
-                  fi
-                done
-                if test -z "$haveit"; then
-                  ltrpathdirs="$ltrpathdirs $found_dir"
-                fi
-                                if test "$hardcode_direct" = yes; then
-                                                      LIBINTL="${LIBINTL}${LIBINTL:+ }$found_so"
-                else
-                  if test -n "$hardcode_libdir_flag_spec" && test "$hardcode_minus_L" = no; then
-                                                            LIBINTL="${LIBINTL}${LIBINTL:+ }$found_so"
-                                                            haveit=
-                    for x in $rpathdirs; do
-                      if test "X$x" = "X$found_dir"; then
-                        haveit=yes
-                        break
-                      fi
-                    done
-                    if test -z "$haveit"; then
-                      rpathdirs="$rpathdirs $found_dir"
-                    fi
-                  else
-                                                                                haveit=
-                    for x in $LDFLAGS $LIBINTL; do
-                      
-  acl_save_prefix="$prefix"
-  prefix="$acl_final_prefix"
-  acl_save_exec_prefix="$exec_prefix"
-  exec_prefix="$acl_final_exec_prefix"
-  eval x=\"$x\"
-  exec_prefix="$acl_save_exec_prefix"
-  prefix="$acl_save_prefix"
-
-                      if test "X$x" = "X-L$found_dir"; then
-                        haveit=yes
-                        break
-                      fi
-                    done
-                    if test -z "$haveit"; then
-                      LIBINTL="${LIBINTL}${LIBINTL:+ }-L$found_dir"
-                    fi
-                    if test "$hardcode_minus_L" != no; then
-                                                                                        LIBINTL="${LIBINTL}${LIBINTL:+ }$found_so"
-                    else
-                                                                                                                                                                                LIBINTL="${LIBINTL}${LIBINTL:+ }-l$name"
-                    fi
-                  fi
-                fi
-              fi
-            else
-              if test "X$found_a" != "X"; then
-                                LIBINTL="${LIBINTL}${LIBINTL:+ }$found_a"
-              else
-                                                LIBINTL="${LIBINTL}${LIBINTL:+ }-L$found_dir -l$name"
-              fi
-            fi
-                        additional_includedir=
-            case "$found_dir" in
-              */lib | */lib/)
-                basedir=`echo "X$found_dir" | sed -e 's,^X,,' -e 's,/lib/*$,,'`
-                additional_includedir="$basedir/include"
-                ;;
-            esac
-            if test "X$additional_includedir" != "X"; then
-                                                                                                                if test "X$additional_includedir" != "X/usr/include"; then
-                haveit=
-                if test "X$additional_includedir" = "X/usr/local/include"; then
-                  if test -n "$GCC"; then
-                    case $host_os in
-                      linux*) haveit=yes;;
-                    esac
-                  fi
-                fi
-                if test -z "$haveit"; then
-                  for x in $CPPFLAGS $INCINTL; do
-                    
-  acl_save_prefix="$prefix"
-  prefix="$acl_final_prefix"
-  acl_save_exec_prefix="$exec_prefix"
-  exec_prefix="$acl_final_exec_prefix"
-  eval x=\"$x\"
-  exec_prefix="$acl_save_exec_prefix"
-  prefix="$acl_save_prefix"
-
-                    if test "X$x" = "X-I$additional_includedir"; then
-                      haveit=yes
-                      break
-                    fi
-                  done
-                  if test -z "$haveit"; then
-                    if test -d "$additional_includedir"; then
-                                            INCINTL="${INCINTL}${INCINTL:+ }-I$additional_includedir"
-                    fi
-                  fi
-                fi
-              fi
-            fi
-                        if test -n "$found_la"; then
-                                                        save_libdir="$libdir"
-              case "$found_la" in
-                */* | *\\*) . "$found_la" ;;
-                *) . "./$found_la" ;;
-              esac
-              libdir="$save_libdir"
-                            for dep in $dependency_libs; do
-                case "$dep" in
-                  -L*)
-                    additional_libdir=`echo "X$dep" | sed -e 's/^X-L//'`
-                                                                                                                                                                if test "X$additional_libdir" != "X/usr/lib"; then
-                      haveit=
-                      if test "X$additional_libdir" = "X/usr/local/lib"; then
-                        if test -n "$GCC"; then
-                          case $host_os in
-                            linux*) haveit=yes;;
-                          esac
-                        fi
-                      fi
-                      if test -z "$haveit"; then
-                        haveit=
-                        for x in $LDFLAGS $LIBINTL; do
-                          
-  acl_save_prefix="$prefix"
-  prefix="$acl_final_prefix"
-  acl_save_exec_prefix="$exec_prefix"
-  exec_prefix="$acl_final_exec_prefix"
-  eval x=\"$x\"
-  exec_prefix="$acl_save_exec_prefix"
-  prefix="$acl_save_prefix"
-
-                          if test "X$x" = "X-L$additional_libdir"; then
-                            haveit=yes
-                            break
-                          fi
-                        done
-                        if test -z "$haveit"; then
-                          if test -d "$additional_libdir"; then
-                                                        LIBINTL="${LIBINTL}${LIBINTL:+ }-L$additional_libdir"
-                          fi
-                        fi
-                        haveit=
-                        for x in $LDFLAGS $LTLIBINTL; do
-                          
-  acl_save_prefix="$prefix"
-  prefix="$acl_final_prefix"
-  acl_save_exec_prefix="$exec_prefix"
-  exec_prefix="$acl_final_exec_prefix"
-  eval x=\"$x\"
-  exec_prefix="$acl_save_exec_prefix"
-  prefix="$acl_save_prefix"
-
-                          if test "X$x" = "X-L$additional_libdir"; then
-                            haveit=yes
-                            break
-                          fi
-                        done
-                        if test -z "$haveit"; then
-                          if test -d "$additional_libdir"; then
-                                                        LTLIBINTL="${LTLIBINTL}${LTLIBINTL:+ }-L$additional_libdir"
-                          fi
-                        fi
-                      fi
-                    fi
-                    ;;
-                  -R*)
-                    dir=`echo "X$dep" | sed -e 's/^X-R//'`
-                    if test "$enable_rpath" != no; then
-                                                                  haveit=
-                      for x in $rpathdirs; do
-                        if test "X$x" = "X$dir"; then
-                          haveit=yes
-                          break
-                        fi
-                      done
-                      if test -z "$haveit"; then
-                        rpathdirs="$rpathdirs $dir"
-                      fi
-                                                                  haveit=
-                      for x in $ltrpathdirs; do
-                        if test "X$x" = "X$dir"; then
-                          haveit=yes
-                          break
-                        fi
-                      done
-                      if test -z "$haveit"; then
-                        ltrpathdirs="$ltrpathdirs $dir"
-                      fi
-                    fi
-                    ;;
-                  -l*)
-                                        names_next_round="$names_next_round "`echo "X$dep" | sed -e 's/^X-l//'`
-                    ;;
-                  *.la)
-                                                                                names_next_round="$names_next_round "`echo "X$dep" | sed -e 's,^X.*/,,' -e 's,^lib,,' -e 's,\.la$,,'`
-                    ;;
-                  *)
-                                        LIBINTL="${LIBINTL}${LIBINTL:+ }$dep"
-                    LTLIBINTL="${LTLIBINTL}${LTLIBINTL:+ }$dep"
-                    ;;
-                esac
-              done
-            fi
-          else
-                                                            LIBINTL="${LIBINTL}${LIBINTL:+ }-l$name"
-            LTLIBINTL="${LTLIBINTL}${LTLIBINTL:+ }-l$name"
-          fi
-        fi
-      fi
-    done
-  done
-  if test "X$rpathdirs" != "X"; then
-    if test -n "$hardcode_libdir_separator"; then
-                        alldirs=
-      for found_dir in $rpathdirs; do
-        alldirs="${alldirs}${alldirs:+$hardcode_libdir_separator}$found_dir"
-      done
-            acl_save_libdir="$libdir"
-      libdir="$alldirs"
-      eval flag=\"$hardcode_libdir_flag_spec\"
-      libdir="$acl_save_libdir"
-      LIBINTL="${LIBINTL}${LIBINTL:+ }$flag"
-    else
-            for found_dir in $rpathdirs; do
-        acl_save_libdir="$libdir"
-        libdir="$found_dir"
-        eval flag=\"$hardcode_libdir_flag_spec\"
-        libdir="$acl_save_libdir"
-        LIBINTL="${LIBINTL}${LIBINTL:+ }$flag"
-      done
-    fi
-  fi
-  if test "X$ltrpathdirs" != "X"; then
-            for found_dir in $ltrpathdirs; do
-      LTLIBINTL="${LTLIBINTL}${LTLIBINTL:+ }-R$found_dir"
-    done
-  fi
-
-          echo "$as_me:$LINENO: checking for GNU gettext in libintl" >&5
-echo $ECHO_N "checking for GNU gettext in libintl... $ECHO_C" >&6
-if test "${gt_cv_func_gnugettext2_libintl+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  gt_save_CPPFLAGS="$CPPFLAGS"
-            CPPFLAGS="$CPPFLAGS $INCINTL"
-            gt_save_LIBS="$LIBS"
-            LIBS="$LIBS $LIBINTL"
-                        cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <libintl.h>
-extern int _nl_msg_cat_cntr;
-extern
-#ifdef __cplusplus
-"C"
-#endif
-const char *_nl_expand_alias ();
-int
-main ()
-{
-bindtextdomain ("", "");
-return (int) gettext ("") + (int) ngettext ("", "", 0) + _nl_msg_cat_cntr + *_nl_expand_alias (0)
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest$ac_exeext'
-  { (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
-  gt_cv_func_gnugettext2_libintl=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-gt_cv_func_gnugettext2_libintl=no
-fi
-rm -f conftest.err conftest.$ac_objext \
-      conftest$ac_exeext conftest.$ac_ext
-                        if test "$gt_cv_func_gnugettext2_libintl" != yes && test -n "$LIBICONV"; then
-              LIBS="$LIBS $LIBICONV"
-              cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <libintl.h>
-extern int _nl_msg_cat_cntr;
-extern
-#ifdef __cplusplus
-"C"
-#endif
-const char *_nl_expand_alias ();
-int
-main ()
-{
-bindtextdomain ("", "");
-return (int) gettext ("") + (int) ngettext ("", "", 0) + _nl_msg_cat_cntr + *_nl_expand_alias (0)
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest$ac_exeext'
-  { (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
-  LIBINTL="$LIBINTL $LIBICONV"
-                LTLIBINTL="$LTLIBINTL $LTLIBICONV"
-                gt_cv_func_gnugettext2_libintl=yes
-               
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-fi
-rm -f conftest.err conftest.$ac_objext \
-      conftest$ac_exeext conftest.$ac_ext
-            fi
-            CPPFLAGS="$gt_save_CPPFLAGS"
-            LIBS="$gt_save_LIBS"
-fi
-echo "$as_me:$LINENO: result: $gt_cv_func_gnugettext2_libintl" >&5
-echo "${ECHO_T}$gt_cv_func_gnugettext2_libintl" >&6
-        fi
-
-                                        if test "$gt_cv_func_gnugettext2_libc" = "yes" \
-           || { test "$gt_cv_func_gnugettext2_libintl" = "yes" \
-                && test "$PACKAGE" != gettext-runtime \
-                && test "$PACKAGE" != gettext-tools; }; then
-          gt_use_preinstalled_gnugettext=yes
-        else
-                    LIBINTL=
-          LTLIBINTL=
-          INCINTL=
-        fi
-
-    
-        if test "$gt_use_preinstalled_gnugettext" != "yes"; then
-                              nls_cv_use_gnu_gettext=yes
-        fi
-      fi
-
-      if test "$nls_cv_use_gnu_gettext" = "yes"; then
-                BUILD_INCLUDED_LIBINTL=yes
-        USE_INCLUDED_LIBINTL=yes
-        LIBINTL="lib/intl/libintl.a $LIBICONV"
-        LTLIBINTL="lib/intl/libintl.a $LTLIBICONV"
-        LIBS=`echo " $LIBS " | sed -e 's/ -lintl / /' -e 's/^ //' -e 's/ $//'`
-      fi
-
-      if test "$gt_use_preinstalled_gnugettext" = "yes" \
-         || test "$nls_cv_use_gnu_gettext" = "yes"; then
-                CATOBJEXT=.gmo
-      fi
-    
-
-    if test "$gt_use_preinstalled_gnugettext" = "yes" \
-       || test "$nls_cv_use_gnu_gettext" = "yes"; then
-      
-cat >>confdefs.h <<\_ACEOF
-@%:@define ENABLE_NLS 1
-_ACEOF
-
-    else
-      USE_NLS=no
-    fi
-  fi
-
-  echo "$as_me:$LINENO: checking whether to use NLS" >&5
-echo $ECHO_N "checking whether to use NLS... $ECHO_C" >&6
-  echo "$as_me:$LINENO: result: $USE_NLS" >&5
-echo "${ECHO_T}$USE_NLS" >&6
-  if test "$USE_NLS" = "yes"; then
-    echo "$as_me:$LINENO: checking where the gettext function comes from" >&5
-echo $ECHO_N "checking where the gettext function comes from... $ECHO_C" >&6
-    if test "$gt_use_preinstalled_gnugettext" = "yes"; then
-      if test "$gt_cv_func_gnugettext2_libintl" = "yes"; then
-        gt_source="external libintl"
-      else
-        gt_source="libc"
-      fi
-    else
-      gt_source="included intl directory"
-    fi
-    echo "$as_me:$LINENO: result: $gt_source" >&5
-echo "${ECHO_T}$gt_source" >&6
-  fi
-
-  if test "$USE_NLS" = "yes"; then
-
-    if test "$gt_use_preinstalled_gnugettext" = "yes"; then
-      if test "$gt_cv_func_gnugettext2_libintl" = "yes"; then
-        echo "$as_me:$LINENO: checking how to link with libintl" >&5
-echo $ECHO_N "checking how to link with libintl... $ECHO_C" >&6
-        echo "$as_me:$LINENO: result: $LIBINTL" >&5
-echo "${ECHO_T}$LIBINTL" >&6
-        
-  for element in $INCINTL; do
-    haveit=
-    for x in $CPPFLAGS; do
-      
-  acl_save_prefix="$prefix"
-  prefix="$acl_final_prefix"
-  acl_save_exec_prefix="$exec_prefix"
-  exec_prefix="$acl_final_exec_prefix"
-  eval x=\"$x\"
-  exec_prefix="$acl_save_exec_prefix"
-  prefix="$acl_save_prefix"
-
-      if test "X$x" = "X$element"; then
-        haveit=yes
-        break
-      fi
-    done
-    if test -z "$haveit"; then
-      CPPFLAGS="${CPPFLAGS}${CPPFLAGS:+ }$element"
-    fi
-  done
-
-      fi
-
-            
-cat >>confdefs.h <<\_ACEOF
-@%:@define HAVE_GETTEXT 1
-_ACEOF
-
-      
-cat >>confdefs.h <<\_ACEOF
-@%:@define HAVE_DCGETTEXT 1
-_ACEOF
-
-    fi
-
-        POSUB=po
-  fi
-
-  
-            if test "$PACKAGE" = gettext-runtime || test "$PACKAGE" = gettext-tools; then
-      BUILD_INCLUDED_LIBINTL=yes
-    fi
-
-        
-    
-    
-
-        nls_cv_header_intl=
-    nls_cv_header_libgt=
-
-        DATADIRNAME=share
-    
-
-        INSTOBJEXT=.mo
-    
-
-        GENCAT=gencat
-    
-
-        if test "$USE_INCLUDED_LIBINTL" = yes; then
-      INTLOBJS="\$(GETTOBJS)"
-    fi
-    
-
-        INTL_LIBTOOL_SUFFIX_PREFIX=
-    
-  
-
-    INTLLIBS="$LIBINTL"
-  
-
-    
-  
-  
-
-
-
-
-
-
-
-ac_header_dirent=no
-for ac_hdr in dirent.h sys/ndir.h sys/dir.h ndir.h; do
-  as_ac_Header=`echo "ac_cv_header_dirent_$ac_hdr" | $as_tr_sh`
-echo "$as_me:$LINENO: checking for $ac_hdr that defines DIR" >&5
-echo $ECHO_N "checking for $ac_hdr that defines DIR... $ECHO_C" >&6
-if eval "test \"\${$as_ac_Header+set}\" = set"; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <sys/types.h>
-#include <$ac_hdr>
-
-int
-main ()
-{
-if ((DIR *) 0)
-return 0;
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  eval "$as_ac_Header=yes"
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-eval "$as_ac_Header=no"
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5
-echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
-if test `eval echo '${'$as_ac_Header'}'` = yes; then
-  cat >>confdefs.h <<_ACEOF
-@%:@define `echo "HAVE_$ac_hdr" | $as_tr_cpp` 1
-_ACEOF
-
-ac_header_dirent=$ac_hdr; break
-fi
-
-done
-# Two versions of opendir et al. are in -ldir and -lx on SCO Xenix.
-if test $ac_header_dirent = dirent.h; then
-  echo "$as_me:$LINENO: checking for library containing opendir" >&5
-echo $ECHO_N "checking for library containing opendir... $ECHO_C" >&6
-if test "${ac_cv_search_opendir+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  ac_func_search_save_LIBS=$LIBS
-ac_cv_search_opendir=no
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-
-/* Override any gcc2 internal prototype to avoid an error.  */
-#ifdef __cplusplus
-extern "C"
-#endif
-/* We use char because int might match the return type of a gcc2
-   builtin and then its argument prototype would still apply.  */
-char opendir ();
-int
-main ()
-{
-opendir ();
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest$ac_exeext'
-  { (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
-  ac_cv_search_opendir="none required"
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-fi
-rm -f conftest.err conftest.$ac_objext \
-      conftest$ac_exeext conftest.$ac_ext
-if test "$ac_cv_search_opendir" = no; then
-  for ac_lib in dir; do
-    LIBS="-l$ac_lib  $ac_func_search_save_LIBS"
-    cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-
-/* Override any gcc2 internal prototype to avoid an error.  */
-#ifdef __cplusplus
-extern "C"
-#endif
-/* We use char because int might match the return type of a gcc2
-   builtin and then its argument prototype would still apply.  */
-char opendir ();
-int
-main ()
-{
-opendir ();
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest$ac_exeext'
-  { (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
-  ac_cv_search_opendir="-l$ac_lib"
-break
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-fi
-rm -f conftest.err conftest.$ac_objext \
-      conftest$ac_exeext conftest.$ac_ext
-  done
-fi
-LIBS=$ac_func_search_save_LIBS
-fi
-echo "$as_me:$LINENO: result: $ac_cv_search_opendir" >&5
-echo "${ECHO_T}$ac_cv_search_opendir" >&6
-if test "$ac_cv_search_opendir" != no; then
-  test "$ac_cv_search_opendir" = "none required" || LIBS="$ac_cv_search_opendir $LIBS"
-  
-fi
-
-else
-  echo "$as_me:$LINENO: checking for library containing opendir" >&5
-echo $ECHO_N "checking for library containing opendir... $ECHO_C" >&6
-if test "${ac_cv_search_opendir+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  ac_func_search_save_LIBS=$LIBS
-ac_cv_search_opendir=no
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-
-/* Override any gcc2 internal prototype to avoid an error.  */
-#ifdef __cplusplus
-extern "C"
-#endif
-/* We use char because int might match the return type of a gcc2
-   builtin and then its argument prototype would still apply.  */
-char opendir ();
-int
-main ()
-{
-opendir ();
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest$ac_exeext'
-  { (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
-  ac_cv_search_opendir="none required"
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-fi
-rm -f conftest.err conftest.$ac_objext \
-      conftest$ac_exeext conftest.$ac_ext
-if test "$ac_cv_search_opendir" = no; then
-  for ac_lib in x; do
-    LIBS="-l$ac_lib  $ac_func_search_save_LIBS"
-    cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-
-/* Override any gcc2 internal prototype to avoid an error.  */
-#ifdef __cplusplus
-extern "C"
-#endif
-/* We use char because int might match the return type of a gcc2
-   builtin and then its argument prototype would still apply.  */
-char opendir ();
-int
-main ()
-{
-opendir ();
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest$ac_exeext'
-  { (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
-  ac_cv_search_opendir="-l$ac_lib"
-break
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-fi
-rm -f conftest.err conftest.$ac_objext \
-      conftest$ac_exeext conftest.$ac_ext
-  done
-fi
-LIBS=$ac_func_search_save_LIBS
-fi
-echo "$as_me:$LINENO: result: $ac_cv_search_opendir" >&5
-echo "${ECHO_T}$ac_cv_search_opendir" >&6
-if test "$ac_cv_search_opendir" != no; then
-  test "$ac_cv_search_opendir" = "none required" || LIBS="$ac_cv_search_opendir $LIBS"
-  
-fi
-
-fi
-
-echo "$as_me:$LINENO: checking whether time.h and sys/time.h may both be included" >&5
-echo $ECHO_N "checking whether time.h and sys/time.h may both be included... $ECHO_C" >&6
-if test "${ac_cv_header_time+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <sys/types.h>
-#include <sys/time.h>
-#include <time.h>
-
-int
-main ()
-{
-if ((struct tm *) 0)
-return 0;
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_cv_header_time=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_cv_header_time=no
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: $ac_cv_header_time" >&5
-echo "${ECHO_T}$ac_cv_header_time" >&6
-if test $ac_cv_header_time = yes; then
-  
-cat >>confdefs.h <<\_ACEOF
-@%:@define TIME_WITH_SYS_TIME 1
-_ACEOF
-
-fi
-
-
-
-for ac_header in inttypes.h
-do
-as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
-if eval "test \"\${$as_ac_Header+set}\" = set"; then
-  echo "$as_me:$LINENO: checking for $ac_header" >&5
-echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6
-if eval "test \"\${$as_ac_Header+set}\" = set"; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-fi
-echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5
-echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
-else
-  # Is the header compilable?
-echo "$as_me:$LINENO: checking $ac_header usability" >&5
-echo $ECHO_N "checking $ac_header usability... $ECHO_C" >&6
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-@%:@include <$ac_header>
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_header_compiler=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_header_compiler=no
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-echo "$as_me:$LINENO: result: $ac_header_compiler" >&5
-echo "${ECHO_T}$ac_header_compiler" >&6
-
-# Is the header present?
-echo "$as_me:$LINENO: checking $ac_header presence" >&5
-echo $ECHO_N "checking $ac_header presence... $ECHO_C" >&6
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-@%:@include <$ac_header>
-_ACEOF
-if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5
-  (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } >/dev/null; then
-  if test -s conftest.err; then
-    ac_cpp_err=$ac_c_preproc_warn_flag
-    ac_cpp_err=$ac_cpp_err$ac_c_werror_flag
-  else
-    ac_cpp_err=
-  fi
-else
-  ac_cpp_err=yes
-fi
-if test -z "$ac_cpp_err"; then
-  ac_header_preproc=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-  ac_header_preproc=no
-fi
-rm -f conftest.err conftest.$ac_ext
-echo "$as_me:$LINENO: result: $ac_header_preproc" >&5
-echo "${ECHO_T}$ac_header_preproc" >&6
-
-# So?  What about this header?
-case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in
-  yes:no: )
-    { echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5
-echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;}
-    { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5
-echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;}
-    ac_header_preproc=yes
-    ;;
-  no:yes:* )
-    { echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5
-echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;}
-    { echo "$as_me:$LINENO: WARNING: $ac_header:     check for missing prerequisite headers?" >&5
-echo "$as_me: WARNING: $ac_header:     check for missing prerequisite headers?" >&2;}
-    { echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5
-echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;}
-    { echo "$as_me:$LINENO: WARNING: $ac_header:     section \"Present But Cannot Be Compiled\"" >&5
-echo "$as_me: WARNING: $ac_header:     section \"Present But Cannot Be Compiled\"" >&2;}
-    { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5
-echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;}
-    { echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5
-echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;}
-    (
-      cat <<\_ASBOX
-@%:@@%:@ ------------------------------- @%:@@%:@
-@%:@@%:@ Report this to bug-bash@gnu.org @%:@@%:@
-@%:@@%:@ ------------------------------- @%:@@%:@
-_ASBOX
-    ) |
-      sed "s/^/$as_me: WARNING:     /" >&2
-    ;;
-esac
-echo "$as_me:$LINENO: checking for $ac_header" >&5
-echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6
-if eval "test \"\${$as_ac_Header+set}\" = set"; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  eval "$as_ac_Header=\$ac_header_preproc"
-fi
-echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5
-echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
-
-fi
-if test `eval echo '${'$as_ac_Header'}'` = yes; then
-  cat >>confdefs.h <<_ACEOF
-@%:@define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
-fi
-
-done
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-for ac_header in unistd.h stdlib.h stdarg.h varargs.h limits.h string.h \
-                memory.h locale.h termcap.h termio.h termios.h dlfcn.h \
-                stdbool.h stddef.h stdint.h netdb.h pwd.h grp.h strings.h \
-                regex.h syslog.h ulimit.h
-do
-as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
-if eval "test \"\${$as_ac_Header+set}\" = set"; then
-  echo "$as_me:$LINENO: checking for $ac_header" >&5
-echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6
-if eval "test \"\${$as_ac_Header+set}\" = set"; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-fi
-echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5
-echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
-else
-  # Is the header compilable?
-echo "$as_me:$LINENO: checking $ac_header usability" >&5
-echo $ECHO_N "checking $ac_header usability... $ECHO_C" >&6
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-@%:@include <$ac_header>
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_header_compiler=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_header_compiler=no
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-echo "$as_me:$LINENO: result: $ac_header_compiler" >&5
-echo "${ECHO_T}$ac_header_compiler" >&6
-
-# Is the header present?
-echo "$as_me:$LINENO: checking $ac_header presence" >&5
-echo $ECHO_N "checking $ac_header presence... $ECHO_C" >&6
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-@%:@include <$ac_header>
-_ACEOF
-if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5
-  (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } >/dev/null; then
-  if test -s conftest.err; then
-    ac_cpp_err=$ac_c_preproc_warn_flag
-    ac_cpp_err=$ac_cpp_err$ac_c_werror_flag
-  else
-    ac_cpp_err=
-  fi
-else
-  ac_cpp_err=yes
-fi
-if test -z "$ac_cpp_err"; then
-  ac_header_preproc=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-  ac_header_preproc=no
-fi
-rm -f conftest.err conftest.$ac_ext
-echo "$as_me:$LINENO: result: $ac_header_preproc" >&5
-echo "${ECHO_T}$ac_header_preproc" >&6
-
-# So?  What about this header?
-case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in
-  yes:no: )
-    { echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5
-echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;}
-    { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5
-echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;}
-    ac_header_preproc=yes
-    ;;
-  no:yes:* )
-    { echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5
-echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;}
-    { echo "$as_me:$LINENO: WARNING: $ac_header:     check for missing prerequisite headers?" >&5
-echo "$as_me: WARNING: $ac_header:     check for missing prerequisite headers?" >&2;}
-    { echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5
-echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;}
-    { echo "$as_me:$LINENO: WARNING: $ac_header:     section \"Present But Cannot Be Compiled\"" >&5
-echo "$as_me: WARNING: $ac_header:     section \"Present But Cannot Be Compiled\"" >&2;}
-    { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5
-echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;}
-    { echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5
-echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;}
-    (
-      cat <<\_ASBOX
-@%:@@%:@ ------------------------------- @%:@@%:@
-@%:@@%:@ Report this to bug-bash@gnu.org @%:@@%:@
-@%:@@%:@ ------------------------------- @%:@@%:@
-_ASBOX
-    ) |
-      sed "s/^/$as_me: WARNING:     /" >&2
-    ;;
-esac
-echo "$as_me:$LINENO: checking for $ac_header" >&5
-echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6
-if eval "test \"\${$as_ac_Header+set}\" = set"; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  eval "$as_ac_Header=\$ac_header_preproc"
-fi
-echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5
-echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
-
-fi
-if test `eval echo '${'$as_ac_Header'}'` = yes; then
-  cat >>confdefs.h <<_ACEOF
-@%:@define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
-fi
-
-done
-
-
-
-
-
-
-
-
-
-
-
-
-
-for ac_header in sys/pte.h sys/stream.h sys/select.h sys/file.h \
-                sys/resource.h sys/param.h sys/socket.h sys/stat.h \
-                sys/time.h sys/times.h sys/types.h sys/wait.h
-do
-as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
-if eval "test \"\${$as_ac_Header+set}\" = set"; then
-  echo "$as_me:$LINENO: checking for $ac_header" >&5
-echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6
-if eval "test \"\${$as_ac_Header+set}\" = set"; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-fi
-echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5
-echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
-else
-  # Is the header compilable?
-echo "$as_me:$LINENO: checking $ac_header usability" >&5
-echo $ECHO_N "checking $ac_header usability... $ECHO_C" >&6
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-@%:@include <$ac_header>
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_header_compiler=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_header_compiler=no
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-echo "$as_me:$LINENO: result: $ac_header_compiler" >&5
-echo "${ECHO_T}$ac_header_compiler" >&6
-
-# Is the header present?
-echo "$as_me:$LINENO: checking $ac_header presence" >&5
-echo $ECHO_N "checking $ac_header presence... $ECHO_C" >&6
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-@%:@include <$ac_header>
-_ACEOF
-if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5
-  (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } >/dev/null; then
-  if test -s conftest.err; then
-    ac_cpp_err=$ac_c_preproc_warn_flag
-    ac_cpp_err=$ac_cpp_err$ac_c_werror_flag
-  else
-    ac_cpp_err=
-  fi
-else
-  ac_cpp_err=yes
-fi
-if test -z "$ac_cpp_err"; then
-  ac_header_preproc=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-  ac_header_preproc=no
-fi
-rm -f conftest.err conftest.$ac_ext
-echo "$as_me:$LINENO: result: $ac_header_preproc" >&5
-echo "${ECHO_T}$ac_header_preproc" >&6
-
-# So?  What about this header?
-case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in
-  yes:no: )
-    { echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5
-echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;}
-    { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5
-echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;}
-    ac_header_preproc=yes
-    ;;
-  no:yes:* )
-    { echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5
-echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;}
-    { echo "$as_me:$LINENO: WARNING: $ac_header:     check for missing prerequisite headers?" >&5
-echo "$as_me: WARNING: $ac_header:     check for missing prerequisite headers?" >&2;}
-    { echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5
-echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;}
-    { echo "$as_me:$LINENO: WARNING: $ac_header:     section \"Present But Cannot Be Compiled\"" >&5
-echo "$as_me: WARNING: $ac_header:     section \"Present But Cannot Be Compiled\"" >&2;}
-    { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5
-echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;}
-    { echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5
-echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;}
-    (
-      cat <<\_ASBOX
-@%:@@%:@ ------------------------------- @%:@@%:@
-@%:@@%:@ Report this to bug-bash@gnu.org @%:@@%:@
-@%:@@%:@ ------------------------------- @%:@@%:@
-_ASBOX
-    ) |
-      sed "s/^/$as_me: WARNING:     /" >&2
-    ;;
-esac
-echo "$as_me:$LINENO: checking for $ac_header" >&5
-echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6
-if eval "test \"\${$as_ac_Header+set}\" = set"; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  eval "$as_ac_Header=\$ac_header_preproc"
-fi
-echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5
-echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
-
-fi
-if test `eval echo '${'$as_ac_Header'}'` = yes; then
-  cat >>confdefs.h <<_ACEOF
-@%:@define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
-fi
-
-done
-
-
-
-for ac_header in netinet/in.h arpa/inet.h
-do
-as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
-if eval "test \"\${$as_ac_Header+set}\" = set"; then
-  echo "$as_me:$LINENO: checking for $ac_header" >&5
-echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6
-if eval "test \"\${$as_ac_Header+set}\" = set"; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-fi
-echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5
-echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
-else
-  # Is the header compilable?
-echo "$as_me:$LINENO: checking $ac_header usability" >&5
-echo $ECHO_N "checking $ac_header usability... $ECHO_C" >&6
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-@%:@include <$ac_header>
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_header_compiler=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_header_compiler=no
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-echo "$as_me:$LINENO: result: $ac_header_compiler" >&5
-echo "${ECHO_T}$ac_header_compiler" >&6
-
-# Is the header present?
-echo "$as_me:$LINENO: checking $ac_header presence" >&5
-echo $ECHO_N "checking $ac_header presence... $ECHO_C" >&6
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-@%:@include <$ac_header>
-_ACEOF
-if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5
-  (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } >/dev/null; then
-  if test -s conftest.err; then
-    ac_cpp_err=$ac_c_preproc_warn_flag
-    ac_cpp_err=$ac_cpp_err$ac_c_werror_flag
-  else
-    ac_cpp_err=
-  fi
-else
-  ac_cpp_err=yes
-fi
-if test -z "$ac_cpp_err"; then
-  ac_header_preproc=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-  ac_header_preproc=no
-fi
-rm -f conftest.err conftest.$ac_ext
-echo "$as_me:$LINENO: result: $ac_header_preproc" >&5
-echo "${ECHO_T}$ac_header_preproc" >&6
-
-# So?  What about this header?
-case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in
-  yes:no: )
-    { echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5
-echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;}
-    { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5
-echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;}
-    ac_header_preproc=yes
-    ;;
-  no:yes:* )
-    { echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5
-echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;}
-    { echo "$as_me:$LINENO: WARNING: $ac_header:     check for missing prerequisite headers?" >&5
-echo "$as_me: WARNING: $ac_header:     check for missing prerequisite headers?" >&2;}
-    { echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5
-echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;}
-    { echo "$as_me:$LINENO: WARNING: $ac_header:     section \"Present But Cannot Be Compiled\"" >&5
-echo "$as_me: WARNING: $ac_header:     section \"Present But Cannot Be Compiled\"" >&2;}
-    { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5
-echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;}
-    { echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5
-echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;}
-    (
-      cat <<\_ASBOX
-@%:@@%:@ ------------------------------- @%:@@%:@
-@%:@@%:@ Report this to bug-bash@gnu.org @%:@@%:@
-@%:@@%:@ ------------------------------- @%:@@%:@
-_ASBOX
-    ) |
-      sed "s/^/$as_me: WARNING:     /" >&2
-    ;;
-esac
-echo "$as_me:$LINENO: checking for $ac_header" >&5
-echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6
-if eval "test \"\${$as_ac_Header+set}\" = set"; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  eval "$as_ac_Header=\$ac_header_preproc"
-fi
-echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5
-echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
-
-fi
-if test `eval echo '${'$as_ac_Header'}'` = yes; then
-  cat >>confdefs.h <<_ACEOF
-@%:@define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
-fi
-
-done
-
-
-echo "$as_me:$LINENO: checking for sys/ptem.h" >&5
-echo $ECHO_N "checking for sys/ptem.h... $ECHO_C" >&6
-if test "${ac_cv_header_sys_ptem_h+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-
-#if HAVE_SYS_STREAM_H
-#  include <sys/stream.h>
-#endif
-
-
-@%:@include <sys/ptem.h>
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_cv_header_sys_ptem_h=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_cv_header_sys_ptem_h=no
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: $ac_cv_header_sys_ptem_h" >&5
-echo "${ECHO_T}$ac_cv_header_sys_ptem_h" >&6
-
-
-
-# The Ultrix 4.2 mips builtin alloca declared by alloca.h only works
-# for constant arguments.  Useless!
-echo "$as_me:$LINENO: checking for working alloca.h" >&5
-echo $ECHO_N "checking for working alloca.h... $ECHO_C" >&6
-if test "${ac_cv_working_alloca_h+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-@%:@include <alloca.h>
-int
-main ()
-{
-char *p = (char *) alloca (2 * sizeof (int));
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest$ac_exeext'
-  { (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
-  ac_cv_working_alloca_h=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_cv_working_alloca_h=no
-fi
-rm -f conftest.err conftest.$ac_objext \
-      conftest$ac_exeext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: $ac_cv_working_alloca_h" >&5
-echo "${ECHO_T}$ac_cv_working_alloca_h" >&6
-if test $ac_cv_working_alloca_h = yes; then
-  
-cat >>confdefs.h <<\_ACEOF
-@%:@define HAVE_ALLOCA_H 1
-_ACEOF
-
-fi
-
-echo "$as_me:$LINENO: checking for alloca" >&5
-echo $ECHO_N "checking for alloca... $ECHO_C" >&6
-if test "${ac_cv_func_alloca_works+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#ifdef __GNUC__
-# define alloca __builtin_alloca
-#else
-# ifdef _MSC_VER
-#  include <malloc.h>
-#  define alloca _alloca
-# else
-#  if HAVE_ALLOCA_H
-#   include <alloca.h>
-#  else
-#   ifdef _AIX
- #pragma alloca
-#   else
-#    ifndef alloca /* predefined by HP cc +Olibcalls */
-char *alloca ();
-#    endif
-#   endif
-#  endif
-# endif
-#endif
-
-int
-main ()
-{
-char *p = (char *) alloca (1);
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest$ac_exeext'
-  { (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
-  ac_cv_func_alloca_works=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_cv_func_alloca_works=no
-fi
-rm -f conftest.err conftest.$ac_objext \
-      conftest$ac_exeext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: $ac_cv_func_alloca_works" >&5
-echo "${ECHO_T}$ac_cv_func_alloca_works" >&6
-
-if test $ac_cv_func_alloca_works = yes; then
-  
-cat >>confdefs.h <<\_ACEOF
-@%:@define HAVE_ALLOCA 1
-_ACEOF
-
-else
-  # The SVR3 libPW and SVR4 libucb both contain incompatible functions
-# that cause trouble.  Some versions do not even contain alloca or
-# contain a buggy version.  If you still want to use their alloca,
-# use ar to extract alloca.o from them instead of compiling alloca.c.
-
-ALLOCA=alloca.$ac_objext
-
-cat >>confdefs.h <<\_ACEOF
-@%:@define C_ALLOCA 1
-_ACEOF
-
-
-echo "$as_me:$LINENO: checking whether \`alloca.c' needs Cray hooks" >&5
-echo $ECHO_N "checking whether \`alloca.c' needs Cray hooks... $ECHO_C" >&6
-if test "${ac_cv_os_cray+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#if defined(CRAY) && ! defined(CRAY2)
-webecray
-#else
-wenotbecray
-#endif
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "webecray" >/dev/null 2>&1; then
-  ac_cv_os_cray=yes
-else
-  ac_cv_os_cray=no
-fi
-rm -f conftest*
-
-fi
-echo "$as_me:$LINENO: result: $ac_cv_os_cray" >&5
-echo "${ECHO_T}$ac_cv_os_cray" >&6
-if test $ac_cv_os_cray = yes; then
-  for ac_func in _getb67 GETB67 getb67; do
-    as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`
-echo "$as_me:$LINENO: checking for $ac_func" >&5
-echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6
-if eval "test \"\${$as_ac_var+set}\" = set"; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-/* Define $ac_func to an innocuous variant, in case <limits.h> declares $ac_func.
-   For example, HP-UX 11i <limits.h> declares gettimeofday.  */
-#define $ac_func innocuous_$ac_func
-
-/* System header to define __stub macros and hopefully few prototypes,
-    which can conflict with char $ac_func (); below.
-    Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
-    <limits.h> exists even on freestanding compilers.  */
-
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-
-#undef $ac_func
-
-/* Override any gcc2 internal prototype to avoid an error.  */
-#ifdef __cplusplus
-extern "C"
-{
-#endif
-/* We use char because int might match the return type of a gcc2
-   builtin and then its argument prototype would still apply.  */
-char $ac_func ();
-/* The GNU C library defines this for functions which it implements
-    to always fail with ENOSYS.  Some functions are actually named
-    something starting with __ and the normal name is an alias.  */
-#if defined (__stub_$ac_func) || defined (__stub___$ac_func)
-choke me
-#else
-char (*f) () = $ac_func;
-#endif
-#ifdef __cplusplus
-}
-#endif
-
-int
-main ()
-{
-return f != $ac_func;
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest$ac_exeext'
-  { (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
-  eval "$as_ac_var=yes"
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-eval "$as_ac_var=no"
-fi
-rm -f conftest.err conftest.$ac_objext \
-      conftest$ac_exeext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_var'}'`" >&5
-echo "${ECHO_T}`eval echo '${'$as_ac_var'}'`" >&6
-if test `eval echo '${'$as_ac_var'}'` = yes; then
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define CRAY_STACKSEG_END $ac_func
-_ACEOF
-
-    break
-fi
-
-  done
-fi
-
-echo "$as_me:$LINENO: checking stack direction for C alloca" >&5
-echo $ECHO_N "checking stack direction for C alloca... $ECHO_C" >&6
-if test "${ac_cv_c_stack_direction+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  if test "$cross_compiling" = yes; then
-  ac_cv_c_stack_direction=0
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-int
-find_stack_direction ()
-{
-  static char *addr = 0;
-  auto char dummy;
-  if (addr == 0)
-    {
-      addr = &dummy;
-      return find_stack_direction ();
-    }
-  else
-    return (&dummy > addr) ? 1 : -1;
-}
-
-int
-main ()
-{
-  exit (find_stack_direction () < 0);
-}
-_ACEOF
-rm -f conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>&5
-  ac_status=$?
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
-  { (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
-  ac_cv_c_stack_direction=1
-else
-  echo "$as_me: program exited with status $ac_status" >&5
-echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-( exit $ac_status )
-ac_cv_c_stack_direction=-1
-fi
-rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
-fi
-fi
-echo "$as_me:$LINENO: result: $ac_cv_c_stack_direction" >&5
-echo "${ECHO_T}$ac_cv_c_stack_direction" >&6
-
-cat >>confdefs.h <<_ACEOF
-@%:@define STACK_DIRECTION $ac_cv_c_stack_direction
-_ACEOF
-
-
-fi
-
-echo "$as_me:$LINENO: checking whether getpgrp requires zero arguments" >&5
-echo $ECHO_N "checking whether getpgrp requires zero arguments... $ECHO_C" >&6
-if test "${ac_cv_func_getpgrp_void+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  # Use it with a single arg.
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-int
-main ()
-{
-getpgrp (0);
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_cv_func_getpgrp_void=no
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_cv_func_getpgrp_void=yes
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-
-fi
-echo "$as_me:$LINENO: result: $ac_cv_func_getpgrp_void" >&5
-echo "${ECHO_T}$ac_cv_func_getpgrp_void" >&6
-if test $ac_cv_func_getpgrp_void = yes; then
-  
-cat >>confdefs.h <<\_ACEOF
-@%:@define GETPGRP_VOID 1
-_ACEOF
-
-fi
-
-echo "$as_me:$LINENO: checking whether setvbuf arguments are reversed" >&5
-echo $ECHO_N "checking whether setvbuf arguments are reversed... $ECHO_C" >&6
-if test "${ac_cv_func_setvbuf_reversed+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  ac_cv_func_setvbuf_reversed=no
-   cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <stdio.h>
-#        if PROTOTYPES
-          int (setvbuf) (FILE *, int, char *, size_t);
-#        endif
-int
-main ()
-{
-char buf; return setvbuf (stdout, _IOLBF, &buf, 1);
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest$ac_exeext'
-  { (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
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <stdio.h>
-#           if PROTOTYPES
-             int (setvbuf) (FILE *, int, char *, size_t);
-#           endif
-int
-main ()
-{
-char buf; return setvbuf (stdout, &buf, _IOLBF, 1);
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest$ac_exeext'
-  { (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
-  # It compiles and links either way, so it must not be declared
-        # with a prototype and most likely this is a K&R C compiler.
-        # Try running it.
-        if test "$cross_compiling" = yes; then
-  : # Assume setvbuf is not reversed when cross-compiling.
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <stdio.h>
-int
-main ()
-{
-/* This call has the arguments reversed.
-                  A reversed system may check and see that the address of buf
-                  is not _IOLBF, _IONBF, or _IOFBF, and return nonzero.  */
-               char buf;
-               if (setvbuf (stdout, _IOLBF, &buf, 1) != 0)
-                 exit (1);
-               putchar ('\r');
-               exit (0); /* Non-reversed systems SEGV here.  */
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>&5
-  ac_status=$?
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
-  { (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
-  ac_cv_func_setvbuf_reversed=yes
-else
-  echo "$as_me: program exited with status $ac_status" >&5
-echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-( exit $ac_status )
-rm -f core *.core
-fi
-rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
-fi
-       ac_cv_func_setvbuf_reversed=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-fi
-rm -f conftest.err conftest.$ac_objext \
-      conftest$ac_exeext conftest.$ac_ext
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-fi
-rm -f conftest.err conftest.$ac_objext \
-      conftest$ac_exeext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: $ac_cv_func_setvbuf_reversed" >&5
-echo "${ECHO_T}$ac_cv_func_setvbuf_reversed" >&6
-if test $ac_cv_func_setvbuf_reversed = yes; then
-  
-cat >>confdefs.h <<\_ACEOF
-@%:@define SETVBUF_REVERSED 1
-_ACEOF
-
-fi
-
-
-for ac_func in vprintf
-do
-as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`
-echo "$as_me:$LINENO: checking for $ac_func" >&5
-echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6
-if eval "test \"\${$as_ac_var+set}\" = set"; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-/* Define $ac_func to an innocuous variant, in case <limits.h> declares $ac_func.
-   For example, HP-UX 11i <limits.h> declares gettimeofday.  */
-#define $ac_func innocuous_$ac_func
-
-/* System header to define __stub macros and hopefully few prototypes,
-    which can conflict with char $ac_func (); below.
-    Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
-    <limits.h> exists even on freestanding compilers.  */
-
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-
-#undef $ac_func
-
-/* Override any gcc2 internal prototype to avoid an error.  */
-#ifdef __cplusplus
-extern "C"
-{
-#endif
-/* We use char because int might match the return type of a gcc2
-   builtin and then its argument prototype would still apply.  */
-char $ac_func ();
-/* The GNU C library defines this for functions which it implements
-    to always fail with ENOSYS.  Some functions are actually named
-    something starting with __ and the normal name is an alias.  */
-#if defined (__stub_$ac_func) || defined (__stub___$ac_func)
-choke me
-#else
-char (*f) () = $ac_func;
-#endif
-#ifdef __cplusplus
-}
-#endif
-
-int
-main ()
-{
-return f != $ac_func;
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest$ac_exeext'
-  { (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
-  eval "$as_ac_var=yes"
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-eval "$as_ac_var=no"
-fi
-rm -f conftest.err conftest.$ac_objext \
-      conftest$ac_exeext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_var'}'`" >&5
-echo "${ECHO_T}`eval echo '${'$as_ac_var'}'`" >&6
-if test `eval echo '${'$as_ac_var'}'` = yes; then
-  cat >>confdefs.h <<_ACEOF
-@%:@define `echo "HAVE_$ac_func" | $as_tr_cpp` 1
-_ACEOF
-echo "$as_me:$LINENO: checking for _doprnt" >&5
-echo $ECHO_N "checking for _doprnt... $ECHO_C" >&6
-if test "${ac_cv_func__doprnt+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-/* Define _doprnt to an innocuous variant, in case <limits.h> declares _doprnt.
-   For example, HP-UX 11i <limits.h> declares gettimeofday.  */
-#define _doprnt innocuous__doprnt
-
-/* System header to define __stub macros and hopefully few prototypes,
-    which can conflict with char _doprnt (); below.
-    Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
-    <limits.h> exists even on freestanding compilers.  */
-
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-
-#undef _doprnt
-
-/* Override any gcc2 internal prototype to avoid an error.  */
-#ifdef __cplusplus
-extern "C"
-{
-#endif
-/* We use char because int might match the return type of a gcc2
-   builtin and then its argument prototype would still apply.  */
-char _doprnt ();
-/* The GNU C library defines this for functions which it implements
-    to always fail with ENOSYS.  Some functions are actually named
-    something starting with __ and the normal name is an alias.  */
-#if defined (__stub__doprnt) || defined (__stub____doprnt)
-choke me
-#else
-char (*f) () = _doprnt;
-#endif
-#ifdef __cplusplus
-}
-#endif
-
-int
-main ()
-{
-return f != _doprnt;
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest$ac_exeext'
-  { (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
-  ac_cv_func__doprnt=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_cv_func__doprnt=no
-fi
-rm -f conftest.err conftest.$ac_objext \
-      conftest$ac_exeext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: $ac_cv_func__doprnt" >&5
-echo "${ECHO_T}$ac_cv_func__doprnt" >&6
-if test $ac_cv_func__doprnt = yes; then
-  
-cat >>confdefs.h <<\_ACEOF
-@%:@define HAVE_DOPRNT 1
-_ACEOF
-
-fi
-
-fi
-done
-
-
-echo "$as_me:$LINENO: checking for working strcoll" >&5
-echo $ECHO_N "checking for working strcoll... $ECHO_C" >&6
-if test "${ac_cv_func_strcoll_works+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  if test "$cross_compiling" = yes; then
-  ac_cv_func_strcoll_works=no
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-int
-main ()
-{
-exit (strcoll ("abc", "def") >= 0 ||
-        strcoll ("ABC", "DEF") >= 0 ||
-        strcoll ("123", "456") >= 0)
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>&5
-  ac_status=$?
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
-  { (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
-  ac_cv_func_strcoll_works=yes
-else
-  echo "$as_me: program exited with status $ac_status" >&5
-echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-( exit $ac_status )
-ac_cv_func_strcoll_works=no
-fi
-rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
-fi
-fi
-echo "$as_me:$LINENO: result: $ac_cv_func_strcoll_works" >&5
-echo "${ECHO_T}$ac_cv_func_strcoll_works" >&6
-if test $ac_cv_func_strcoll_works = yes; then
-  
-cat >>confdefs.h <<\_ACEOF
-@%:@define HAVE_STRCOLL 1
-_ACEOF
-
-fi
-
-
-
-if test "$ac_cv_func_alloca_works" = "no" && test "$opt_bash_malloc" = "no"; then
-       MALLOC_TARGET=alloca
-       MALLOC_SRC=alloca.c
-
-       MALLOC_LIB='-lmalloc'
-       MALLOC_LIBRARY='$(ALLOC_LIBDIR)/libmalloc.a'
-       MALLOC_LDFLAGS='-L$(ALLOC_LIBDIR)'
-       MALLOC_DEP='$(MALLOC_LIBRARY)'
-fi
-
-if test "$ac_cv_func_vprintf" = no; then
-    echo "$as_me:$LINENO: checking for declaration of vprintf in stdio.h" >&5
-echo $ECHO_N "checking for declaration of vprintf in stdio.h... $ECHO_C" >&6
-    cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <stdio.h>
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "[int[        ]*vprintf[^a-zA-Z0-9]]" >/dev/null 2>&1; then
-  ac_cv_func_vprintf=yes
-fi
-rm -f conftest*
-
-    echo "$as_me:$LINENO: result: $ac_cv_func_vprintf" >&5
-echo "${ECHO_T}$ac_cv_func_vprintf" >&6
-    if test $ac_cv_func_vprintf = yes; then
-       cat >>confdefs.h <<\_ACEOF
-@%:@define HAVE_VPRINTF 1
-_ACEOF
-
-    fi
-fi
-
-if test "$ac_cv_func_vprintf" = no && test "$ac_cv_func__doprnt" = "yes"; then
-  case $LIB@&t@OBJS in
-    "vprint.$ac_objext"   | \
-  *" vprint.$ac_objext"   | \
-    "vprint.$ac_objext "* | \
-  *" vprint.$ac_objext "* ) ;;
-  *) LIB@&t@OBJS="$LIB@&t@OBJS vprint.$ac_objext" ;;
-esac
-
-fi
-
-echo "$as_me:$LINENO: checking return type of signal handlers" >&5
-echo $ECHO_N "checking return type of signal handlers... $ECHO_C" >&6
-if test "${ac_cv_type_signal+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <sys/types.h>
-#include <signal.h>
-#ifdef signal
-# undef signal
-#endif
-#ifdef __cplusplus
-extern "C" void (*signal (int, void (*)(int)))(int);
-#else
-void (*signal ()) ();
-#endif
-
-int
-main ()
-{
-int i;
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_cv_type_signal=void
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_cv_type_signal=int
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: $ac_cv_type_signal" >&5
-echo "${ECHO_T}$ac_cv_type_signal" >&6
-
-cat >>confdefs.h <<_ACEOF
-@%:@define RETSIGTYPE $ac_cv_type_signal
-_ACEOF
-
-
-
-echo "$as_me:$LINENO: checking for __setostype" >&5
-echo $ECHO_N "checking for __setostype... $ECHO_C" >&6
-if test "${ac_cv_func___setostype+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-/* Define __setostype to an innocuous variant, in case <limits.h> declares __setostype.
-   For example, HP-UX 11i <limits.h> declares gettimeofday.  */
-#define __setostype innocuous___setostype
-
-/* System header to define __stub macros and hopefully few prototypes,
-    which can conflict with char __setostype (); below.
-    Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
-    <limits.h> exists even on freestanding compilers.  */
-
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-
-#undef __setostype
-
-/* Override any gcc2 internal prototype to avoid an error.  */
-#ifdef __cplusplus
-extern "C"
-{
-#endif
-/* We use char because int might match the return type of a gcc2
-   builtin and then its argument prototype would still apply.  */
-char __setostype ();
-/* The GNU C library defines this for functions which it implements
-    to always fail with ENOSYS.  Some functions are actually named
-    something starting with __ and the normal name is an alias.  */
-#if defined (__stub___setostype) || defined (__stub_____setostype)
-choke me
-#else
-char (*f) () = __setostype;
-#endif
-#ifdef __cplusplus
-}
-#endif
-
-int
-main ()
-{
-return f != __setostype;
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest$ac_exeext'
-  { (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
-  ac_cv_func___setostype=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_cv_func___setostype=no
-fi
-rm -f conftest.err conftest.$ac_objext \
-      conftest$ac_exeext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: $ac_cv_func___setostype" >&5
-echo "${ECHO_T}$ac_cv_func___setostype" >&6
-if test $ac_cv_func___setostype = yes; then
-  cat >>confdefs.h <<\_ACEOF
-@%:@define HAVE_SETOSTYPE 1
-_ACEOF
-
-fi
-
-echo "$as_me:$LINENO: checking for wait3" >&5
-echo $ECHO_N "checking for wait3... $ECHO_C" >&6
-if test "${ac_cv_func_wait3+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-/* Define wait3 to an innocuous variant, in case <limits.h> declares wait3.
-   For example, HP-UX 11i <limits.h> declares gettimeofday.  */
-#define wait3 innocuous_wait3
-
-/* System header to define __stub macros and hopefully few prototypes,
-    which can conflict with char wait3 (); below.
-    Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
-    <limits.h> exists even on freestanding compilers.  */
-
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-
-#undef wait3
-
-/* Override any gcc2 internal prototype to avoid an error.  */
-#ifdef __cplusplus
-extern "C"
-{
-#endif
-/* We use char because int might match the return type of a gcc2
-   builtin and then its argument prototype would still apply.  */
-char wait3 ();
-/* The GNU C library defines this for functions which it implements
-    to always fail with ENOSYS.  Some functions are actually named
-    something starting with __ and the normal name is an alias.  */
-#if defined (__stub_wait3) || defined (__stub___wait3)
-choke me
-#else
-char (*f) () = wait3;
-#endif
-#ifdef __cplusplus
-}
-#endif
-
-int
-main ()
-{
-return f != wait3;
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest$ac_exeext'
-  { (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
-  ac_cv_func_wait3=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_cv_func_wait3=no
-fi
-rm -f conftest.err conftest.$ac_objext \
-      conftest$ac_exeext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: $ac_cv_func_wait3" >&5
-echo "${ECHO_T}$ac_cv_func_wait3" >&6
-if test $ac_cv_func_wait3 = yes; then
-  cat >>confdefs.h <<\_ACEOF
-@%:@define HAVE_WAIT3 1
-_ACEOF
-
-fi
-
-
-echo "$as_me:$LINENO: checking for mkfifo" >&5
-echo $ECHO_N "checking for mkfifo... $ECHO_C" >&6
-if test "${ac_cv_func_mkfifo+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-/* Define mkfifo to an innocuous variant, in case <limits.h> declares mkfifo.
-   For example, HP-UX 11i <limits.h> declares gettimeofday.  */
-#define mkfifo innocuous_mkfifo
-
-/* System header to define __stub macros and hopefully few prototypes,
-    which can conflict with char mkfifo (); below.
-    Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
-    <limits.h> exists even on freestanding compilers.  */
-
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-
-#undef mkfifo
-
-/* Override any gcc2 internal prototype to avoid an error.  */
-#ifdef __cplusplus
-extern "C"
-{
-#endif
-/* We use char because int might match the return type of a gcc2
-   builtin and then its argument prototype would still apply.  */
-char mkfifo ();
-/* The GNU C library defines this for functions which it implements
-    to always fail with ENOSYS.  Some functions are actually named
-    something starting with __ and the normal name is an alias.  */
-#if defined (__stub_mkfifo) || defined (__stub___mkfifo)
-choke me
-#else
-char (*f) () = mkfifo;
-#endif
-#ifdef __cplusplus
-}
-#endif
-
-int
-main ()
-{
-return f != mkfifo;
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest$ac_exeext'
-  { (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
-  ac_cv_func_mkfifo=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_cv_func_mkfifo=no
-fi
-rm -f conftest.err conftest.$ac_objext \
-      conftest$ac_exeext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: $ac_cv_func_mkfifo" >&5
-echo "${ECHO_T}$ac_cv_func_mkfifo" >&6
-if test $ac_cv_func_mkfifo = yes; then
-  cat >>confdefs.h <<\_ACEOF
-@%:@define HAVE_MKFIFO 1
-_ACEOF
-
-else
-  cat >>confdefs.h <<\_ACEOF
-@%:@define MKFIFO_MISSING 1
-_ACEOF
-
-fi
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-for ac_func in dup2 eaccess fcntl getdtablesize getgroups gethostname \
-               getpagesize getpeername getrlimit getrusage gettimeofday \
-               kill killpg lstat readlink sbrk select setdtablesize \
-               setitimer tcgetpgrp uname ulimit waitpid
-do
-as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`
-echo "$as_me:$LINENO: checking for $ac_func" >&5
-echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6
-if eval "test \"\${$as_ac_var+set}\" = set"; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-/* Define $ac_func to an innocuous variant, in case <limits.h> declares $ac_func.
-   For example, HP-UX 11i <limits.h> declares gettimeofday.  */
-#define $ac_func innocuous_$ac_func
-
-/* System header to define __stub macros and hopefully few prototypes,
-    which can conflict with char $ac_func (); below.
-    Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
-    <limits.h> exists even on freestanding compilers.  */
-
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-
-#undef $ac_func
-
-/* Override any gcc2 internal prototype to avoid an error.  */
-#ifdef __cplusplus
-extern "C"
-{
-#endif
-/* We use char because int might match the return type of a gcc2
-   builtin and then its argument prototype would still apply.  */
-char $ac_func ();
-/* The GNU C library defines this for functions which it implements
-    to always fail with ENOSYS.  Some functions are actually named
-    something starting with __ and the normal name is an alias.  */
-#if defined (__stub_$ac_func) || defined (__stub___$ac_func)
-choke me
-#else
-char (*f) () = $ac_func;
-#endif
-#ifdef __cplusplus
-}
-#endif
-
-int
-main ()
-{
-return f != $ac_func;
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest$ac_exeext'
-  { (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
-  eval "$as_ac_var=yes"
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-eval "$as_ac_var=no"
-fi
-rm -f conftest.err conftest.$ac_objext \
-      conftest$ac_exeext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_var'}'`" >&5
-echo "${ECHO_T}`eval echo '${'$as_ac_var'}'`" >&6
-if test `eval echo '${'$as_ac_var'}'` = yes; then
-  cat >>confdefs.h <<_ACEOF
-@%:@define `echo "HAVE_$ac_func" | $as_tr_cpp` 1
-_ACEOF
-fi
-done
-
-
-for ac_func in rename
-do
-as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`
-echo "$as_me:$LINENO: checking for $ac_func" >&5
-echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6
-if eval "test \"\${$as_ac_var+set}\" = set"; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-/* Define $ac_func to an innocuous variant, in case <limits.h> declares $ac_func.
-   For example, HP-UX 11i <limits.h> declares gettimeofday.  */
-#define $ac_func innocuous_$ac_func
-
-/* System header to define __stub macros and hopefully few prototypes,
-    which can conflict with char $ac_func (); below.
-    Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
-    <limits.h> exists even on freestanding compilers.  */
-
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-
-#undef $ac_func
-
-/* Override any gcc2 internal prototype to avoid an error.  */
-#ifdef __cplusplus
-extern "C"
-{
-#endif
-/* We use char because int might match the return type of a gcc2
-   builtin and then its argument prototype would still apply.  */
-char $ac_func ();
-/* The GNU C library defines this for functions which it implements
-    to always fail with ENOSYS.  Some functions are actually named
-    something starting with __ and the normal name is an alias.  */
-#if defined (__stub_$ac_func) || defined (__stub___$ac_func)
-choke me
-#else
-char (*f) () = $ac_func;
-#endif
-#ifdef __cplusplus
-}
-#endif
-
-int
-main ()
-{
-return f != $ac_func;
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest$ac_exeext'
-  { (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
-  eval "$as_ac_var=yes"
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-eval "$as_ac_var=no"
-fi
-rm -f conftest.err conftest.$ac_objext \
-      conftest$ac_exeext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_var'}'`" >&5
-echo "${ECHO_T}`eval echo '${'$as_ac_var'}'`" >&6
-if test `eval echo '${'$as_ac_var'}'` = yes; then
-  cat >>confdefs.h <<_ACEOF
-@%:@define `echo "HAVE_$ac_func" | $as_tr_cpp` 1
-_ACEOF
-else
-  case $LIB@&t@OBJS in
-    "$ac_func.$ac_objext"   | \
-  *" $ac_func.$ac_objext"   | \
-    "$ac_func.$ac_objext "* | \
-  *" $ac_func.$ac_objext "* ) ;;
-  *) LIB@&t@OBJS="$LIB@&t@OBJS $ac_func.$ac_objext" ;;
-esac
-
-fi
-done
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-for ac_func in bcopy bzero confstr faccessat fnmatch \
-               getaddrinfo gethostbyname getservbyname getservent inet_aton \
-               imaxdiv memmove pathconf putenv raise regcomp regexec \
-               setenv setlinebuf setlocale setvbuf siginterrupt strchr \
-               sysconf syslog tcgetattr times ttyname tzset unsetenv
-do
-as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`
-echo "$as_me:$LINENO: checking for $ac_func" >&5
-echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6
-if eval "test \"\${$as_ac_var+set}\" = set"; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-/* Define $ac_func to an innocuous variant, in case <limits.h> declares $ac_func.
-   For example, HP-UX 11i <limits.h> declares gettimeofday.  */
-#define $ac_func innocuous_$ac_func
-
-/* System header to define __stub macros and hopefully few prototypes,
-    which can conflict with char $ac_func (); below.
-    Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
-    <limits.h> exists even on freestanding compilers.  */
-
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-
-#undef $ac_func
-
-/* Override any gcc2 internal prototype to avoid an error.  */
-#ifdef __cplusplus
-extern "C"
-{
-#endif
-/* We use char because int might match the return type of a gcc2
-   builtin and then its argument prototype would still apply.  */
-char $ac_func ();
-/* The GNU C library defines this for functions which it implements
-    to always fail with ENOSYS.  Some functions are actually named
-    something starting with __ and the normal name is an alias.  */
-#if defined (__stub_$ac_func) || defined (__stub___$ac_func)
-choke me
-#else
-char (*f) () = $ac_func;
-#endif
-#ifdef __cplusplus
-}
-#endif
-
-int
-main ()
-{
-return f != $ac_func;
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest$ac_exeext'
-  { (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
-  eval "$as_ac_var=yes"
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-eval "$as_ac_var=no"
-fi
-rm -f conftest.err conftest.$ac_objext \
-      conftest$ac_exeext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_var'}'`" >&5
-echo "${ECHO_T}`eval echo '${'$as_ac_var'}'`" >&6
-if test `eval echo '${'$as_ac_var'}'` = yes; then
-  cat >>confdefs.h <<_ACEOF
-@%:@define `echo "HAVE_$ac_func" | $as_tr_cpp` 1
-_ACEOF
-fi
-done
-
-
-
-
-for ac_func in vasprintf asprintf
-do
-as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`
-echo "$as_me:$LINENO: checking for $ac_func" >&5
-echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6
-if eval "test \"\${$as_ac_var+set}\" = set"; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-/* Define $ac_func to an innocuous variant, in case <limits.h> declares $ac_func.
-   For example, HP-UX 11i <limits.h> declares gettimeofday.  */
-#define $ac_func innocuous_$ac_func
-
-/* System header to define __stub macros and hopefully few prototypes,
-    which can conflict with char $ac_func (); below.
-    Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
-    <limits.h> exists even on freestanding compilers.  */
-
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-
-#undef $ac_func
-
-/* Override any gcc2 internal prototype to avoid an error.  */
-#ifdef __cplusplus
-extern "C"
-{
-#endif
-/* We use char because int might match the return type of a gcc2
-   builtin and then its argument prototype would still apply.  */
-char $ac_func ();
-/* The GNU C library defines this for functions which it implements
-    to always fail with ENOSYS.  Some functions are actually named
-    something starting with __ and the normal name is an alias.  */
-#if defined (__stub_$ac_func) || defined (__stub___$ac_func)
-choke me
-#else
-char (*f) () = $ac_func;
-#endif
-#ifdef __cplusplus
-}
-#endif
-
-int
-main ()
-{
-return f != $ac_func;
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest$ac_exeext'
-  { (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
-  eval "$as_ac_var=yes"
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-eval "$as_ac_var=no"
-fi
-rm -f conftest.err conftest.$ac_objext \
-      conftest$ac_exeext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_var'}'`" >&5
-echo "${ECHO_T}`eval echo '${'$as_ac_var'}'`" >&6
-if test `eval echo '${'$as_ac_var'}'` = yes; then
-  cat >>confdefs.h <<_ACEOF
-@%:@define `echo "HAVE_$ac_func" | $as_tr_cpp` 1
-_ACEOF
-fi
-done
-
-
-
-
-
-
-
-for ac_func in isascii isblank isgraph isprint isspace isxdigit
-do
-as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`
-echo "$as_me:$LINENO: checking for $ac_func" >&5
-echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6
-if eval "test \"\${$as_ac_var+set}\" = set"; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-/* Define $ac_func to an innocuous variant, in case <limits.h> declares $ac_func.
-   For example, HP-UX 11i <limits.h> declares gettimeofday.  */
-#define $ac_func innocuous_$ac_func
-
-/* System header to define __stub macros and hopefully few prototypes,
-    which can conflict with char $ac_func (); below.
-    Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
-    <limits.h> exists even on freestanding compilers.  */
-
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-
-#undef $ac_func
-
-/* Override any gcc2 internal prototype to avoid an error.  */
-#ifdef __cplusplus
-extern "C"
-{
-#endif
-/* We use char because int might match the return type of a gcc2
-   builtin and then its argument prototype would still apply.  */
-char $ac_func ();
-/* The GNU C library defines this for functions which it implements
-    to always fail with ENOSYS.  Some functions are actually named
-    something starting with __ and the normal name is an alias.  */
-#if defined (__stub_$ac_func) || defined (__stub___$ac_func)
-choke me
-#else
-char (*f) () = $ac_func;
-#endif
-#ifdef __cplusplus
-}
-#endif
-
-int
-main ()
-{
-return f != $ac_func;
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest$ac_exeext'
-  { (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
-  eval "$as_ac_var=yes"
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-eval "$as_ac_var=no"
-fi
-rm -f conftest.err conftest.$ac_objext \
-      conftest$ac_exeext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_var'}'`" >&5
-echo "${ECHO_T}`eval echo '${'$as_ac_var'}'`" >&6
-if test `eval echo '${'$as_ac_var'}'` = yes; then
-  cat >>confdefs.h <<_ACEOF
-@%:@define `echo "HAVE_$ac_func" | $as_tr_cpp` 1
-_ACEOF
-fi
-done
-
-
-
-
-for ac_func in getpwent getpwnam getpwuid
-do
-as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`
-echo "$as_me:$LINENO: checking for $ac_func" >&5
-echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6
-if eval "test \"\${$as_ac_var+set}\" = set"; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-/* Define $ac_func to an innocuous variant, in case <limits.h> declares $ac_func.
-   For example, HP-UX 11i <limits.h> declares gettimeofday.  */
-#define $ac_func innocuous_$ac_func
-
-/* System header to define __stub macros and hopefully few prototypes,
-    which can conflict with char $ac_func (); below.
-    Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
-    <limits.h> exists even on freestanding compilers.  */
-
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-
-#undef $ac_func
-
-/* Override any gcc2 internal prototype to avoid an error.  */
-#ifdef __cplusplus
-extern "C"
-{
-#endif
-/* We use char because int might match the return type of a gcc2
-   builtin and then its argument prototype would still apply.  */
-char $ac_func ();
-/* The GNU C library defines this for functions which it implements
-    to always fail with ENOSYS.  Some functions are actually named
-    something starting with __ and the normal name is an alias.  */
-#if defined (__stub_$ac_func) || defined (__stub___$ac_func)
-choke me
-#else
-char (*f) () = $ac_func;
-#endif
-#ifdef __cplusplus
-}
-#endif
-
-int
-main ()
-{
-return f != $ac_func;
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest$ac_exeext'
-  { (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
-  eval "$as_ac_var=yes"
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-eval "$as_ac_var=no"
-fi
-rm -f conftest.err conftest.$ac_objext \
-      conftest$ac_exeext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_var'}'`" >&5
-echo "${ECHO_T}`eval echo '${'$as_ac_var'}'`" >&6
-if test `eval echo '${'$as_ac_var'}'` = yes; then
-  cat >>confdefs.h <<_ACEOF
-@%:@define `echo "HAVE_$ac_func" | $as_tr_cpp` 1
-_ACEOF
-fi
-done
-
-
-
-for ac_func in getcwd memset
-do
-as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`
-echo "$as_me:$LINENO: checking for $ac_func" >&5
-echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6
-if eval "test \"\${$as_ac_var+set}\" = set"; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-/* Define $ac_func to an innocuous variant, in case <limits.h> declares $ac_func.
-   For example, HP-UX 11i <limits.h> declares gettimeofday.  */
-#define $ac_func innocuous_$ac_func
-
-/* System header to define __stub macros and hopefully few prototypes,
-    which can conflict with char $ac_func (); below.
-    Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
-    <limits.h> exists even on freestanding compilers.  */
-
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-
-#undef $ac_func
-
-/* Override any gcc2 internal prototype to avoid an error.  */
-#ifdef __cplusplus
-extern "C"
-{
-#endif
-/* We use char because int might match the return type of a gcc2
-   builtin and then its argument prototype would still apply.  */
-char $ac_func ();
-/* The GNU C library defines this for functions which it implements
-    to always fail with ENOSYS.  Some functions are actually named
-    something starting with __ and the normal name is an alias.  */
-#if defined (__stub_$ac_func) || defined (__stub___$ac_func)
-choke me
-#else
-char (*f) () = $ac_func;
-#endif
-#ifdef __cplusplus
-}
-#endif
-
-int
-main ()
-{
-return f != $ac_func;
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest$ac_exeext'
-  { (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
-  eval "$as_ac_var=yes"
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-eval "$as_ac_var=no"
-fi
-rm -f conftest.err conftest.$ac_objext \
-      conftest$ac_exeext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_var'}'`" >&5
-echo "${ECHO_T}`eval echo '${'$as_ac_var'}'`" >&6
-if test `eval echo '${'$as_ac_var'}'` = yes; then
-  cat >>confdefs.h <<_ACEOF
-@%:@define `echo "HAVE_$ac_func" | $as_tr_cpp` 1
-_ACEOF
-else
-  case $LIB@&t@OBJS in
-    "$ac_func.$ac_objext"   | \
-  *" $ac_func.$ac_objext"   | \
-    "$ac_func.$ac_objext "* | \
-  *" $ac_func.$ac_objext "* ) ;;
-  *) LIB@&t@OBJS="$LIB@&t@OBJS $ac_func.$ac_objext" ;;
-esac
-
-fi
-done
-
-
-
-
-
-
-
-
-
-for ac_func in strcasecmp strcasestr strerror strftime strnlen strpbrk strstr
-do
-as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`
-echo "$as_me:$LINENO: checking for $ac_func" >&5
-echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6
-if eval "test \"\${$as_ac_var+set}\" = set"; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-/* Define $ac_func to an innocuous variant, in case <limits.h> declares $ac_func.
-   For example, HP-UX 11i <limits.h> declares gettimeofday.  */
-#define $ac_func innocuous_$ac_func
-
-/* System header to define __stub macros and hopefully few prototypes,
-    which can conflict with char $ac_func (); below.
-    Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
-    <limits.h> exists even on freestanding compilers.  */
-
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-
-#undef $ac_func
-
-/* Override any gcc2 internal prototype to avoid an error.  */
-#ifdef __cplusplus
-extern "C"
-{
-#endif
-/* We use char because int might match the return type of a gcc2
-   builtin and then its argument prototype would still apply.  */
-char $ac_func ();
-/* The GNU C library defines this for functions which it implements
-    to always fail with ENOSYS.  Some functions are actually named
-    something starting with __ and the normal name is an alias.  */
-#if defined (__stub_$ac_func) || defined (__stub___$ac_func)
-choke me
-#else
-char (*f) () = $ac_func;
-#endif
-#ifdef __cplusplus
-}
-#endif
-
-int
-main ()
-{
-return f != $ac_func;
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest$ac_exeext'
-  { (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
-  eval "$as_ac_var=yes"
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-eval "$as_ac_var=no"
-fi
-rm -f conftest.err conftest.$ac_objext \
-      conftest$ac_exeext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_var'}'`" >&5
-echo "${ECHO_T}`eval echo '${'$as_ac_var'}'`" >&6
-if test `eval echo '${'$as_ac_var'}'` = yes; then
-  cat >>confdefs.h <<_ACEOF
-@%:@define `echo "HAVE_$ac_func" | $as_tr_cpp` 1
-_ACEOF
-else
-  case $LIB@&t@OBJS in
-    "$ac_func.$ac_objext"   | \
-  *" $ac_func.$ac_objext"   | \
-    "$ac_func.$ac_objext "* | \
-  *" $ac_func.$ac_objext "* ) ;;
-  *) LIB@&t@OBJS="$LIB@&t@OBJS $ac_func.$ac_objext" ;;
-esac
-
-fi
-done
-
-
-
-
-
-
-
-
-
-for ac_func in strtod strtol strtoul strtoll strtoull strtoimax strtoumax
-do
-as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`
-echo "$as_me:$LINENO: checking for $ac_func" >&5
-echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6
-if eval "test \"\${$as_ac_var+set}\" = set"; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-/* Define $ac_func to an innocuous variant, in case <limits.h> declares $ac_func.
-   For example, HP-UX 11i <limits.h> declares gettimeofday.  */
-#define $ac_func innocuous_$ac_func
-
-/* System header to define __stub macros and hopefully few prototypes,
-    which can conflict with char $ac_func (); below.
-    Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
-    <limits.h> exists even on freestanding compilers.  */
-
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-
-#undef $ac_func
-
-/* Override any gcc2 internal prototype to avoid an error.  */
-#ifdef __cplusplus
-extern "C"
-{
-#endif
-/* We use char because int might match the return type of a gcc2
-   builtin and then its argument prototype would still apply.  */
-char $ac_func ();
-/* The GNU C library defines this for functions which it implements
-    to always fail with ENOSYS.  Some functions are actually named
-    something starting with __ and the normal name is an alias.  */
-#if defined (__stub_$ac_func) || defined (__stub___$ac_func)
-choke me
-#else
-char (*f) () = $ac_func;
-#endif
-#ifdef __cplusplus
-}
-#endif
-
-int
-main ()
-{
-return f != $ac_func;
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest$ac_exeext'
-  { (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
-  eval "$as_ac_var=yes"
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-eval "$as_ac_var=no"
-fi
-rm -f conftest.err conftest.$ac_objext \
-      conftest$ac_exeext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_var'}'`" >&5
-echo "${ECHO_T}`eval echo '${'$as_ac_var'}'`" >&6
-if test `eval echo '${'$as_ac_var'}'` = yes; then
-  cat >>confdefs.h <<_ACEOF
-@%:@define `echo "HAVE_$ac_func" | $as_tr_cpp` 1
-_ACEOF
-else
-  case $LIB@&t@OBJS in
-    "$ac_func.$ac_objext"   | \
-  *" $ac_func.$ac_objext"   | \
-    "$ac_func.$ac_objext "* | \
-  *" $ac_func.$ac_objext "* ) ;;
-  *) LIB@&t@OBJS="$LIB@&t@OBJS $ac_func.$ac_objext" ;;
-esac
-
-fi
-done
-
-
-
-for ac_func in dprintf
-do
-as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`
-echo "$as_me:$LINENO: checking for $ac_func" >&5
-echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6
-if eval "test \"\${$as_ac_var+set}\" = set"; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-/* Define $ac_func to an innocuous variant, in case <limits.h> declares $ac_func.
-   For example, HP-UX 11i <limits.h> declares gettimeofday.  */
-#define $ac_func innocuous_$ac_func
-
-/* System header to define __stub macros and hopefully few prototypes,
-    which can conflict with char $ac_func (); below.
-    Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
-    <limits.h> exists even on freestanding compilers.  */
-
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-
-#undef $ac_func
-
-/* Override any gcc2 internal prototype to avoid an error.  */
-#ifdef __cplusplus
-extern "C"
-{
-#endif
-/* We use char because int might match the return type of a gcc2
-   builtin and then its argument prototype would still apply.  */
-char $ac_func ();
-/* The GNU C library defines this for functions which it implements
-    to always fail with ENOSYS.  Some functions are actually named
-    something starting with __ and the normal name is an alias.  */
-#if defined (__stub_$ac_func) || defined (__stub___$ac_func)
-choke me
-#else
-char (*f) () = $ac_func;
-#endif
-#ifdef __cplusplus
-}
-#endif
-
-int
-main ()
-{
-return f != $ac_func;
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest$ac_exeext'
-  { (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
-  eval "$as_ac_var=yes"
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-eval "$as_ac_var=no"
-fi
-rm -f conftest.err conftest.$ac_objext \
-      conftest$ac_exeext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_var'}'`" >&5
-echo "${ECHO_T}`eval echo '${'$as_ac_var'}'`" >&6
-if test `eval echo '${'$as_ac_var'}'` = yes; then
-  cat >>confdefs.h <<_ACEOF
-@%:@define `echo "HAVE_$ac_func" | $as_tr_cpp` 1
-_ACEOF
-else
-  case $LIB@&t@OBJS in
-    "$ac_func.$ac_objext"   | \
-  *" $ac_func.$ac_objext"   | \
-    "$ac_func.$ac_objext "* | \
-  *" $ac_func.$ac_objext "* ) ;;
-  *) LIB@&t@OBJS="$LIB@&t@OBJS $ac_func.$ac_objext" ;;
-esac
-
-fi
-done
-
-
-
-for ac_func in strchrnul
-do
-as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`
-echo "$as_me:$LINENO: checking for $ac_func" >&5
-echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6
-if eval "test \"\${$as_ac_var+set}\" = set"; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-/* Define $ac_func to an innocuous variant, in case <limits.h> declares $ac_func.
-   For example, HP-UX 11i <limits.h> declares gettimeofday.  */
-#define $ac_func innocuous_$ac_func
-
-/* System header to define __stub macros and hopefully few prototypes,
-    which can conflict with char $ac_func (); below.
-    Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
-    <limits.h> exists even on freestanding compilers.  */
-
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-
-#undef $ac_func
-
-/* Override any gcc2 internal prototype to avoid an error.  */
-#ifdef __cplusplus
-extern "C"
-{
-#endif
-/* We use char because int might match the return type of a gcc2
-   builtin and then its argument prototype would still apply.  */
-char $ac_func ();
-/* The GNU C library defines this for functions which it implements
-    to always fail with ENOSYS.  Some functions are actually named
-    something starting with __ and the normal name is an alias.  */
-#if defined (__stub_$ac_func) || defined (__stub___$ac_func)
-choke me
-#else
-char (*f) () = $ac_func;
-#endif
-#ifdef __cplusplus
-}
-#endif
-
-int
-main ()
-{
-return f != $ac_func;
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest$ac_exeext'
-  { (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
-  eval "$as_ac_var=yes"
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-eval "$as_ac_var=no"
-fi
-rm -f conftest.err conftest.$ac_objext \
-      conftest$ac_exeext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_var'}'`" >&5
-echo "${ECHO_T}`eval echo '${'$as_ac_var'}'`" >&6
-if test `eval echo '${'$as_ac_var'}'` = yes; then
-  cat >>confdefs.h <<_ACEOF
-@%:@define `echo "HAVE_$ac_func" | $as_tr_cpp` 1
-_ACEOF
-else
-  case $LIB@&t@OBJS in
-    "$ac_func.$ac_objext"   | \
-  *" $ac_func.$ac_objext"   | \
-    "$ac_func.$ac_objext "* | \
-  *" $ac_func.$ac_objext "* ) ;;
-  *) LIB@&t@OBJS="$LIB@&t@OBJS $ac_func.$ac_objext" ;;
-esac
-
-fi
-done
-
-
-
-echo "$as_me:$LINENO: checking whether AUDIT_USER_TTY is declared" >&5
-echo $ECHO_N "checking whether AUDIT_USER_TTY is declared... $ECHO_C" >&6
-if test "${ac_cv_have_decl_AUDIT_USER_TTY+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <linux/audit.h>
-
-int
-main ()
-{
-#ifndef AUDIT_USER_TTY
-  char *p = (char *) AUDIT_USER_TTY;
-#endif
-
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_cv_have_decl_AUDIT_USER_TTY=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_cv_have_decl_AUDIT_USER_TTY=no
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: $ac_cv_have_decl_AUDIT_USER_TTY" >&5
-echo "${ECHO_T}$ac_cv_have_decl_AUDIT_USER_TTY" >&6
-if test $ac_cv_have_decl_AUDIT_USER_TTY = yes; then
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define HAVE_DECL_AUDIT_USER_TTY 1
-_ACEOF
-
-
-else
-  cat >>confdefs.h <<_ACEOF
-@%:@define HAVE_DECL_AUDIT_USER_TTY 0
-_ACEOF
-
-
-fi
-
-
-
-echo "$as_me:$LINENO: checking whether confstr is declared" >&5
-echo $ECHO_N "checking whether confstr is declared... $ECHO_C" >&6
-if test "${ac_cv_have_decl_confstr+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-int
-main ()
-{
-#ifndef confstr
-  char *p = (char *) confstr;
-#endif
-
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_cv_have_decl_confstr=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_cv_have_decl_confstr=no
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: $ac_cv_have_decl_confstr" >&5
-echo "${ECHO_T}$ac_cv_have_decl_confstr" >&6
-if test $ac_cv_have_decl_confstr = yes; then
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define HAVE_DECL_CONFSTR 1
-_ACEOF
-
-
-else
-  cat >>confdefs.h <<_ACEOF
-@%:@define HAVE_DECL_CONFSTR 0
-_ACEOF
-
-
-fi
-
-
-echo "$as_me:$LINENO: checking whether printf is declared" >&5
-echo $ECHO_N "checking whether printf is declared... $ECHO_C" >&6
-if test "${ac_cv_have_decl_printf+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-int
-main ()
-{
-#ifndef printf
-  char *p = (char *) printf;
-#endif
-
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_cv_have_decl_printf=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_cv_have_decl_printf=no
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: $ac_cv_have_decl_printf" >&5
-echo "${ECHO_T}$ac_cv_have_decl_printf" >&6
-if test $ac_cv_have_decl_printf = yes; then
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define HAVE_DECL_PRINTF 1
-_ACEOF
-
-
-else
-  cat >>confdefs.h <<_ACEOF
-@%:@define HAVE_DECL_PRINTF 0
-_ACEOF
-
-
-fi
-
-
-echo "$as_me:$LINENO: checking whether sbrk is declared" >&5
-echo $ECHO_N "checking whether sbrk is declared... $ECHO_C" >&6
-if test "${ac_cv_have_decl_sbrk+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-int
-main ()
-{
-#ifndef sbrk
-  char *p = (char *) sbrk;
-#endif
-
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_cv_have_decl_sbrk=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_cv_have_decl_sbrk=no
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: $ac_cv_have_decl_sbrk" >&5
-echo "${ECHO_T}$ac_cv_have_decl_sbrk" >&6
-if test $ac_cv_have_decl_sbrk = yes; then
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define HAVE_DECL_SBRK 1
-_ACEOF
-
-
-else
-  cat >>confdefs.h <<_ACEOF
-@%:@define HAVE_DECL_SBRK 0
-_ACEOF
-
-
-fi
-
-
-echo "$as_me:$LINENO: checking whether setregid is declared" >&5
-echo $ECHO_N "checking whether setregid is declared... $ECHO_C" >&6
-if test "${ac_cv_have_decl_setregid+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-int
-main ()
-{
-#ifndef setregid
-  char *p = (char *) setregid;
-#endif
-
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_cv_have_decl_setregid=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_cv_have_decl_setregid=no
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: $ac_cv_have_decl_setregid" >&5
-echo "${ECHO_T}$ac_cv_have_decl_setregid" >&6
-if test $ac_cv_have_decl_setregid = yes; then
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define HAVE_DECL_SETREGID 1
-_ACEOF
-
-
-else
-  cat >>confdefs.h <<_ACEOF
-@%:@define HAVE_DECL_SETREGID 0
-_ACEOF
-
-
-fi
-
-
-echo "$as_me:$LINENO: checking whether strcpy is declared" >&5
-echo $ECHO_N "checking whether strcpy is declared... $ECHO_C" >&6
-if test "${ac_cv_have_decl_strcpy+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-int
-main ()
-{
-#ifndef strcpy
-  char *p = (char *) strcpy;
-#endif
-
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_cv_have_decl_strcpy=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_cv_have_decl_strcpy=no
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: $ac_cv_have_decl_strcpy" >&5
-echo "${ECHO_T}$ac_cv_have_decl_strcpy" >&6
-if test $ac_cv_have_decl_strcpy = yes; then
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define HAVE_DECL_STRCPY 1
-_ACEOF
-
-
-else
-  cat >>confdefs.h <<_ACEOF
-@%:@define HAVE_DECL_STRCPY 0
-_ACEOF
-
-
-fi
-
-
-echo "$as_me:$LINENO: checking whether strsignal is declared" >&5
-echo $ECHO_N "checking whether strsignal is declared... $ECHO_C" >&6
-if test "${ac_cv_have_decl_strsignal+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-int
-main ()
-{
-#ifndef strsignal
-  char *p = (char *) strsignal;
-#endif
-
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_cv_have_decl_strsignal=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_cv_have_decl_strsignal=no
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: $ac_cv_have_decl_strsignal" >&5
-echo "${ECHO_T}$ac_cv_have_decl_strsignal" >&6
-if test $ac_cv_have_decl_strsignal = yes; then
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define HAVE_DECL_STRSIGNAL 1
-_ACEOF
-
-
-else
-  cat >>confdefs.h <<_ACEOF
-@%:@define HAVE_DECL_STRSIGNAL 0
-_ACEOF
-
-
-fi
-
-
-
-echo "$as_me:$LINENO: checking whether strtold is declared" >&5
-echo $ECHO_N "checking whether strtold is declared... $ECHO_C" >&6
-if test "${ac_cv_have_decl_strtold+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-int
-main ()
-{
-#ifndef strtold
-  char *p = (char *) strtold;
-#endif
-
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_cv_have_decl_strtold=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_cv_have_decl_strtold=no
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: $ac_cv_have_decl_strtold" >&5
-echo "${ECHO_T}$ac_cv_have_decl_strtold" >&6
-if test $ac_cv_have_decl_strtold = yes; then
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define HAVE_DECL_STRTOLD 1
-_ACEOF
-
-
-    echo "$as_me:$LINENO: checking for broken strtold" >&5
-echo $ECHO_N "checking for broken strtold... $ECHO_C" >&6
-    if test "${bash_cv_strtold_broken+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <stdlib.h>
-int
-main ()
-{
-int main() { long double r; char *foo, bar; r = strtold(foo, &bar);}
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  bash_cv_strtold_broken=no
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-bash_cv_strtold_broken=yes
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-       
-    
-fi
-
-    echo "$as_me:$LINENO: result: $bash_cv_strtold_broken" >&5
-echo "${ECHO_T}$bash_cv_strtold_broken" >&6
-    if test "$bash_cv_strtold_broken" = "yes" ; then
-       cat >>confdefs.h <<\_ACEOF
-@%:@define STRTOLD_BROKEN 1
-_ACEOF
-
-    fi
-
-else
-  cat >>confdefs.h <<_ACEOF
-@%:@define HAVE_DECL_STRTOLD 0
-_ACEOF
-
-
-fi
-
-
-
-
-
-
-echo "$as_me:$LINENO: checking for declaration of strtoimax" >&5
-echo $ECHO_N "checking for declaration of strtoimax... $ECHO_C" >&6
-if test "${bash_cv_decl_strtoimax+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-
-#if STDC_HEADERS
-#  include <stdlib.h>
-#endif
-#if HAVE_INTTYPES_H
-#  include <inttypes.h>
-#endif
-
-int
-main ()
-{
-return !strtoimax;
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest$ac_exeext'
-  { (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
-  bash_cv_decl_strtoimax=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-bash_cv_decl_strtoimax=no
-fi
-rm -f conftest.err conftest.$ac_objext \
-      conftest$ac_exeext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: $bash_cv_decl_strtoimax" >&5
-echo "${ECHO_T}$bash_cv_decl_strtoimax" >&6
-bash_tr_func=HAVE_DECL_`echo strtoimax | tr 'abcdefghijklmnopqrstuvwxyz' 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'`
-if test $bash_cv_decl_strtoimax = yes; then
-  cat >>confdefs.h <<_ACEOF
-@%:@define $bash_tr_func 1
-_ACEOF
-
-else
-  cat >>confdefs.h <<_ACEOF
-@%:@define $bash_tr_func 0
-_ACEOF
-
-fi
-
-
-
-
-echo "$as_me:$LINENO: checking for declaration of strtol" >&5
-echo $ECHO_N "checking for declaration of strtol... $ECHO_C" >&6
-if test "${bash_cv_decl_strtol+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-
-#if STDC_HEADERS
-#  include <stdlib.h>
-#endif
-#if HAVE_INTTYPES_H
-#  include <inttypes.h>
-#endif
-
-int
-main ()
-{
-return !strtol;
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest$ac_exeext'
-  { (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
-  bash_cv_decl_strtol=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-bash_cv_decl_strtol=no
-fi
-rm -f conftest.err conftest.$ac_objext \
-      conftest$ac_exeext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: $bash_cv_decl_strtol" >&5
-echo "${ECHO_T}$bash_cv_decl_strtol" >&6
-bash_tr_func=HAVE_DECL_`echo strtol | tr 'abcdefghijklmnopqrstuvwxyz' 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'`
-if test $bash_cv_decl_strtol = yes; then
-  cat >>confdefs.h <<_ACEOF
-@%:@define $bash_tr_func 1
-_ACEOF
-
-else
-  cat >>confdefs.h <<_ACEOF
-@%:@define $bash_tr_func 0
-_ACEOF
-
-fi
-
-
-
-
-echo "$as_me:$LINENO: checking for declaration of strtoll" >&5
-echo $ECHO_N "checking for declaration of strtoll... $ECHO_C" >&6
-if test "${bash_cv_decl_strtoll+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-
-#if STDC_HEADERS
-#  include <stdlib.h>
-#endif
-#if HAVE_INTTYPES_H
-#  include <inttypes.h>
-#endif
-
-int
-main ()
-{
-return !strtoll;
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest$ac_exeext'
-  { (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
-  bash_cv_decl_strtoll=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-bash_cv_decl_strtoll=no
-fi
-rm -f conftest.err conftest.$ac_objext \
-      conftest$ac_exeext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: $bash_cv_decl_strtoll" >&5
-echo "${ECHO_T}$bash_cv_decl_strtoll" >&6
-bash_tr_func=HAVE_DECL_`echo strtoll | tr 'abcdefghijklmnopqrstuvwxyz' 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'`
-if test $bash_cv_decl_strtoll = yes; then
-  cat >>confdefs.h <<_ACEOF
-@%:@define $bash_tr_func 1
-_ACEOF
-
-else
-  cat >>confdefs.h <<_ACEOF
-@%:@define $bash_tr_func 0
-_ACEOF
-
-fi
-
-
-
-
-echo "$as_me:$LINENO: checking for declaration of strtoul" >&5
-echo $ECHO_N "checking for declaration of strtoul... $ECHO_C" >&6
-if test "${bash_cv_decl_strtoul+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-
-#if STDC_HEADERS
-#  include <stdlib.h>
-#endif
-#if HAVE_INTTYPES_H
-#  include <inttypes.h>
-#endif
-
-int
-main ()
-{
-return !strtoul;
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest$ac_exeext'
-  { (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
-  bash_cv_decl_strtoul=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-bash_cv_decl_strtoul=no
-fi
-rm -f conftest.err conftest.$ac_objext \
-      conftest$ac_exeext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: $bash_cv_decl_strtoul" >&5
-echo "${ECHO_T}$bash_cv_decl_strtoul" >&6
-bash_tr_func=HAVE_DECL_`echo strtoul | tr 'abcdefghijklmnopqrstuvwxyz' 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'`
-if test $bash_cv_decl_strtoul = yes; then
-  cat >>confdefs.h <<_ACEOF
-@%:@define $bash_tr_func 1
-_ACEOF
-
-else
-  cat >>confdefs.h <<_ACEOF
-@%:@define $bash_tr_func 0
-_ACEOF
-
-fi
-
-
-
-
-echo "$as_me:$LINENO: checking for declaration of strtoull" >&5
-echo $ECHO_N "checking for declaration of strtoull... $ECHO_C" >&6
-if test "${bash_cv_decl_strtoull+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-
-#if STDC_HEADERS
-#  include <stdlib.h>
-#endif
-#if HAVE_INTTYPES_H
-#  include <inttypes.h>
-#endif
-
-int
-main ()
-{
-return !strtoull;
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest$ac_exeext'
-  { (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
-  bash_cv_decl_strtoull=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-bash_cv_decl_strtoull=no
-fi
-rm -f conftest.err conftest.$ac_objext \
-      conftest$ac_exeext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: $bash_cv_decl_strtoull" >&5
-echo "${ECHO_T}$bash_cv_decl_strtoull" >&6
-bash_tr_func=HAVE_DECL_`echo strtoull | tr 'abcdefghijklmnopqrstuvwxyz' 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'`
-if test $bash_cv_decl_strtoull = yes; then
-  cat >>confdefs.h <<_ACEOF
-@%:@define $bash_tr_func 1
-_ACEOF
-
-else
-  cat >>confdefs.h <<_ACEOF
-@%:@define $bash_tr_func 0
-_ACEOF
-
-fi
-
-
-
-
-echo "$as_me:$LINENO: checking for declaration of strtoumax" >&5
-echo $ECHO_N "checking for declaration of strtoumax... $ECHO_C" >&6
-if test "${bash_cv_decl_strtoumax+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-
-#if STDC_HEADERS
-#  include <stdlib.h>
-#endif
-#if HAVE_INTTYPES_H
-#  include <inttypes.h>
-#endif
-
-int
-main ()
-{
-return !strtoumax;
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest$ac_exeext'
-  { (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
-  bash_cv_decl_strtoumax=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-bash_cv_decl_strtoumax=no
-fi
-rm -f conftest.err conftest.$ac_objext \
-      conftest$ac_exeext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: $bash_cv_decl_strtoumax" >&5
-echo "${ECHO_T}$bash_cv_decl_strtoumax" >&6
-bash_tr_func=HAVE_DECL_`echo strtoumax | tr 'abcdefghijklmnopqrstuvwxyz' 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'`
-if test $bash_cv_decl_strtoumax = yes; then
-  cat >>confdefs.h <<_ACEOF
-@%:@define $bash_tr_func 1
-_ACEOF
-
-else
-  cat >>confdefs.h <<_ACEOF
-@%:@define $bash_tr_func 0
-_ACEOF
-
-fi
-
-
-
-
-
-for ac_header in stdlib.h sys/time.h unistd.h
-do
-as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
-if eval "test \"\${$as_ac_Header+set}\" = set"; then
-  echo "$as_me:$LINENO: checking for $ac_header" >&5
-echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6
-if eval "test \"\${$as_ac_Header+set}\" = set"; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-fi
-echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5
-echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
-else
-  # Is the header compilable?
-echo "$as_me:$LINENO: checking $ac_header usability" >&5
-echo $ECHO_N "checking $ac_header usability... $ECHO_C" >&6
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-@%:@include <$ac_header>
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_header_compiler=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_header_compiler=no
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-echo "$as_me:$LINENO: result: $ac_header_compiler" >&5
-echo "${ECHO_T}$ac_header_compiler" >&6
-
-# Is the header present?
-echo "$as_me:$LINENO: checking $ac_header presence" >&5
-echo $ECHO_N "checking $ac_header presence... $ECHO_C" >&6
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-@%:@include <$ac_header>
-_ACEOF
-if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5
-  (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } >/dev/null; then
-  if test -s conftest.err; then
-    ac_cpp_err=$ac_c_preproc_warn_flag
-    ac_cpp_err=$ac_cpp_err$ac_c_werror_flag
-  else
-    ac_cpp_err=
-  fi
-else
-  ac_cpp_err=yes
-fi
-if test -z "$ac_cpp_err"; then
-  ac_header_preproc=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-  ac_header_preproc=no
-fi
-rm -f conftest.err conftest.$ac_ext
-echo "$as_me:$LINENO: result: $ac_header_preproc" >&5
-echo "${ECHO_T}$ac_header_preproc" >&6
-
-# So?  What about this header?
-case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in
-  yes:no: )
-    { echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5
-echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;}
-    { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5
-echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;}
-    ac_header_preproc=yes
-    ;;
-  no:yes:* )
-    { echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5
-echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;}
-    { echo "$as_me:$LINENO: WARNING: $ac_header:     check for missing prerequisite headers?" >&5
-echo "$as_me: WARNING: $ac_header:     check for missing prerequisite headers?" >&2;}
-    { echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5
-echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;}
-    { echo "$as_me:$LINENO: WARNING: $ac_header:     section \"Present But Cannot Be Compiled\"" >&5
-echo "$as_me: WARNING: $ac_header:     section \"Present But Cannot Be Compiled\"" >&2;}
-    { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5
-echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;}
-    { echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5
-echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;}
-    (
-      cat <<\_ASBOX
-@%:@@%:@ ------------------------------- @%:@@%:@
-@%:@@%:@ Report this to bug-bash@gnu.org @%:@@%:@
-@%:@@%:@ ------------------------------- @%:@@%:@
-_ASBOX
-    ) |
-      sed "s/^/$as_me: WARNING:     /" >&2
-    ;;
-esac
-echo "$as_me:$LINENO: checking for $ac_header" >&5
-echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6
-if eval "test \"\${$as_ac_Header+set}\" = set"; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  eval "$as_ac_Header=\$ac_header_preproc"
-fi
-echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5
-echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
-
-fi
-if test `eval echo '${'$as_ac_Header'}'` = yes; then
-  cat >>confdefs.h <<_ACEOF
-@%:@define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
-fi
-
-done
-
-
-for ac_func in alarm
-do
-as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`
-echo "$as_me:$LINENO: checking for $ac_func" >&5
-echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6
-if eval "test \"\${$as_ac_var+set}\" = set"; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-/* Define $ac_func to an innocuous variant, in case <limits.h> declares $ac_func.
-   For example, HP-UX 11i <limits.h> declares gettimeofday.  */
-#define $ac_func innocuous_$ac_func
-
-/* System header to define __stub macros and hopefully few prototypes,
-    which can conflict with char $ac_func (); below.
-    Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
-    <limits.h> exists even on freestanding compilers.  */
-
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-
-#undef $ac_func
-
-/* Override any gcc2 internal prototype to avoid an error.  */
-#ifdef __cplusplus
-extern "C"
-{
-#endif
-/* We use char because int might match the return type of a gcc2
-   builtin and then its argument prototype would still apply.  */
-char $ac_func ();
-/* The GNU C library defines this for functions which it implements
-    to always fail with ENOSYS.  Some functions are actually named
-    something starting with __ and the normal name is an alias.  */
-#if defined (__stub_$ac_func) || defined (__stub___$ac_func)
-choke me
-#else
-char (*f) () = $ac_func;
-#endif
-#ifdef __cplusplus
-}
-#endif
-
-int
-main ()
-{
-return f != $ac_func;
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest$ac_exeext'
-  { (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
-  eval "$as_ac_var=yes"
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-eval "$as_ac_var=no"
-fi
-rm -f conftest.err conftest.$ac_objext \
-      conftest$ac_exeext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_var'}'`" >&5
-echo "${ECHO_T}`eval echo '${'$as_ac_var'}'`" >&6
-if test `eval echo '${'$as_ac_var'}'` = yes; then
-  cat >>confdefs.h <<_ACEOF
-@%:@define `echo "HAVE_$ac_func" | $as_tr_cpp` 1
-_ACEOF
-fi
-done
-
-echo "$as_me:$LINENO: checking for working mktime" >&5
-echo $ECHO_N "checking for working mktime... $ECHO_C" >&6
-if test "${ac_cv_func_working_mktime+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  if test "$cross_compiling" = yes; then
-  ac_cv_func_working_mktime=no
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-/* Test program from Paul Eggert and Tony Leneis.  */
-#if TIME_WITH_SYS_TIME
-# include <sys/time.h>
-# include <time.h>
-#else
-# if HAVE_SYS_TIME_H
-#  include <sys/time.h>
-# else
-#  include <time.h>
-# endif
-#endif
-
-#if HAVE_STDLIB_H
-# include <stdlib.h>
-#endif
-
-#if HAVE_UNISTD_H
-# include <unistd.h>
-#endif
-
-#if !HAVE_ALARM
-# define alarm(X) /* empty */
-#endif
-
-/* Work around redefinition to rpl_putenv by other config tests.  */
-#undef putenv
-
-static time_t time_t_max;
-static time_t time_t_min;
-
-/* Values we'll use to set the TZ environment variable.  */
-static char *tz_strings[] = {
-  (char *) 0, "TZ=GMT0", "TZ=JST-9",
-  "TZ=EST+3EDT+2,M10.1.0/00:00:00,M2.3.0/00:00:00"
-};
-#define N_STRINGS (sizeof (tz_strings) / sizeof (tz_strings[0]))
-
-/* Fail if mktime fails to convert a date in the spring-forward gap.
-   Based on a problem report from Andreas Jaeger.  */
-static void
-spring_forward_gap ()
-{
-  /* glibc (up to about 1998-10-07) failed this test. */
-  struct tm tm;
-
-  /* Use the portable POSIX.1 specification "TZ=PST8PDT,M4.1.0,M10.5.0"
-     instead of "TZ=America/Vancouver" in order to detect the bug even
-     on systems that don't support the Olson extension, or don't have the
-     full zoneinfo tables installed.  */
-  putenv ("TZ=PST8PDT,M4.1.0,M10.5.0");
-
-  tm.tm_year = 98;
-  tm.tm_mon = 3;
-  tm.tm_mday = 5;
-  tm.tm_hour = 2;
-  tm.tm_min = 0;
-  tm.tm_sec = 0;
-  tm.tm_isdst = -1;
-  if (mktime (&tm) == (time_t)-1)
-    exit (1);
-}
-
-static void
-mktime_test1 (now)
-     time_t now;
-{
-  struct tm *lt;
-  if ((lt = localtime (&now)) && mktime (lt) != now)
-    exit (1);
-}
-
-static void
-mktime_test (now)
-     time_t now;
-{
-  mktime_test1 (now);
-  mktime_test1 ((time_t) (time_t_max - now));
-  mktime_test1 ((time_t) (time_t_min + now));
-}
-
-static void
-irix_6_4_bug ()
-{
-  /* Based on code from Ariel Faigon.  */
-  struct tm tm;
-  tm.tm_year = 96;
-  tm.tm_mon = 3;
-  tm.tm_mday = 0;
-  tm.tm_hour = 0;
-  tm.tm_min = 0;
-  tm.tm_sec = 0;
-  tm.tm_isdst = -1;
-  mktime (&tm);
-  if (tm.tm_mon != 2 || tm.tm_mday != 31)
-    exit (1);
-}
-
-static void
-bigtime_test (j)
-     int j;
-{
-  struct tm tm;
-  time_t now;
-  tm.tm_year = tm.tm_mon = tm.tm_mday = tm.tm_hour = tm.tm_min = tm.tm_sec = j;
-  now = mktime (&tm);
-  if (now != (time_t) -1)
-    {
-      struct tm *lt = localtime (&now);
-      if (! (lt
-            && lt->tm_year == tm.tm_year
-            && lt->tm_mon == tm.tm_mon
-            && lt->tm_mday == tm.tm_mday
-            && lt->tm_hour == tm.tm_hour
-            && lt->tm_min == tm.tm_min
-            && lt->tm_sec == tm.tm_sec
-            && lt->tm_yday == tm.tm_yday
-            && lt->tm_wday == tm.tm_wday
-            && ((lt->tm_isdst < 0 ? -1 : 0 < lt->tm_isdst)
-                 == (tm.tm_isdst < 0 ? -1 : 0 < tm.tm_isdst))))
-       exit (1);
-    }
-}
-
-int
-main ()
-{
-  time_t t, delta;
-  int i, j;
-
-  /* This test makes some buggy mktime implementations loop.
-     Give up after 60 seconds; a mktime slower than that
-     isn't worth using anyway.  */
-  alarm (60);
-
-  for (time_t_max = 1; 0 < time_t_max; time_t_max *= 2)
-    continue;
-  time_t_max--;
-  if ((time_t) -1 < 0)
-    for (time_t_min = -1; (time_t) (time_t_min * 2) < 0; time_t_min *= 2)
-      continue;
-  delta = time_t_max / 997; /* a suitable prime number */
-  for (i = 0; i < N_STRINGS; i++)
-    {
-      if (tz_strings[i])
-       putenv (tz_strings[i]);
-
-      for (t = 0; t <= time_t_max - delta; t += delta)
-       mktime_test (t);
-      mktime_test ((time_t) 1);
-      mktime_test ((time_t) (60 * 60));
-      mktime_test ((time_t) (60 * 60 * 24));
-
-      for (j = 1; 0 < j; j *= 2)
-       bigtime_test (j);
-      bigtime_test (j - 1);
-    }
-  irix_6_4_bug ();
-  spring_forward_gap ();
-  exit (0);
-}
-_ACEOF
-rm -f conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>&5
-  ac_status=$?
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
-  { (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
-  ac_cv_func_working_mktime=yes
-else
-  echo "$as_me: program exited with status $ac_status" >&5
-echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-( exit $ac_status )
-ac_cv_func_working_mktime=no
-fi
-rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
-fi
-fi
-echo "$as_me:$LINENO: result: $ac_cv_func_working_mktime" >&5
-echo "${ECHO_T}$ac_cv_func_working_mktime" >&6
-if test $ac_cv_func_working_mktime = no; then
-  case $LIB@&t@OBJS in
-    "mktime.$ac_objext"   | \
-  *" mktime.$ac_objext"   | \
-    "mktime.$ac_objext "* | \
-  *" mktime.$ac_objext "* ) ;;
-  *) LIB@&t@OBJS="$LIB@&t@OBJS mktime.$ac_objext" ;;
-esac
-
-fi
-
-
-
-
-
-
-
-
-for ac_header in argz.h errno.h fcntl.h malloc.h stdio_ext.h
-do
-as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
-if eval "test \"\${$as_ac_Header+set}\" = set"; then
-  echo "$as_me:$LINENO: checking for $ac_header" >&5
-echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6
-if eval "test \"\${$as_ac_Header+set}\" = set"; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-fi
-echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5
-echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
-else
-  # Is the header compilable?
-echo "$as_me:$LINENO: checking $ac_header usability" >&5
-echo $ECHO_N "checking $ac_header usability... $ECHO_C" >&6
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-@%:@include <$ac_header>
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_header_compiler=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_header_compiler=no
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-echo "$as_me:$LINENO: result: $ac_header_compiler" >&5
-echo "${ECHO_T}$ac_header_compiler" >&6
-
-# Is the header present?
-echo "$as_me:$LINENO: checking $ac_header presence" >&5
-echo $ECHO_N "checking $ac_header presence... $ECHO_C" >&6
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-@%:@include <$ac_header>
-_ACEOF
-if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5
-  (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } >/dev/null; then
-  if test -s conftest.err; then
-    ac_cpp_err=$ac_c_preproc_warn_flag
-    ac_cpp_err=$ac_cpp_err$ac_c_werror_flag
-  else
-    ac_cpp_err=
-  fi
-else
-  ac_cpp_err=yes
-fi
-if test -z "$ac_cpp_err"; then
-  ac_header_preproc=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-  ac_header_preproc=no
-fi
-rm -f conftest.err conftest.$ac_ext
-echo "$as_me:$LINENO: result: $ac_header_preproc" >&5
-echo "${ECHO_T}$ac_header_preproc" >&6
-
-# So?  What about this header?
-case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in
-  yes:no: )
-    { echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5
-echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;}
-    { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5
-echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;}
-    ac_header_preproc=yes
-    ;;
-  no:yes:* )
-    { echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5
-echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;}
-    { echo "$as_me:$LINENO: WARNING: $ac_header:     check for missing prerequisite headers?" >&5
-echo "$as_me: WARNING: $ac_header:     check for missing prerequisite headers?" >&2;}
-    { echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5
-echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;}
-    { echo "$as_me:$LINENO: WARNING: $ac_header:     section \"Present But Cannot Be Compiled\"" >&5
-echo "$as_me: WARNING: $ac_header:     section \"Present But Cannot Be Compiled\"" >&2;}
-    { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5
-echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;}
-    { echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5
-echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;}
-    (
-      cat <<\_ASBOX
-@%:@@%:@ ------------------------------- @%:@@%:@
-@%:@@%:@ Report this to bug-bash@gnu.org @%:@@%:@
-@%:@@%:@ ------------------------------- @%:@@%:@
-_ASBOX
-    ) |
-      sed "s/^/$as_me: WARNING:     /" >&2
-    ;;
-esac
-echo "$as_me:$LINENO: checking for $ac_header" >&5
-echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6
-if eval "test \"\${$as_ac_Header+set}\" = set"; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  eval "$as_ac_Header=\$ac_header_preproc"
-fi
-echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5
-echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
-
-fi
-if test `eval echo '${'$as_ac_Header'}'` = yes; then
-  cat >>confdefs.h <<_ACEOF
-@%:@define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
-fi
-
-done
-
-
-
-
-for ac_header in stdlib.h unistd.h
-do
-as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
-if eval "test \"\${$as_ac_Header+set}\" = set"; then
-  echo "$as_me:$LINENO: checking for $ac_header" >&5
-echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6
-if eval "test \"\${$as_ac_Header+set}\" = set"; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-fi
-echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5
-echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
-else
-  # Is the header compilable?
-echo "$as_me:$LINENO: checking $ac_header usability" >&5
-echo $ECHO_N "checking $ac_header usability... $ECHO_C" >&6
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-@%:@include <$ac_header>
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_header_compiler=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_header_compiler=no
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-echo "$as_me:$LINENO: result: $ac_header_compiler" >&5
-echo "${ECHO_T}$ac_header_compiler" >&6
-
-# Is the header present?
-echo "$as_me:$LINENO: checking $ac_header presence" >&5
-echo $ECHO_N "checking $ac_header presence... $ECHO_C" >&6
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-@%:@include <$ac_header>
-_ACEOF
-if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5
-  (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } >/dev/null; then
-  if test -s conftest.err; then
-    ac_cpp_err=$ac_c_preproc_warn_flag
-    ac_cpp_err=$ac_cpp_err$ac_c_werror_flag
-  else
-    ac_cpp_err=
-  fi
-else
-  ac_cpp_err=yes
-fi
-if test -z "$ac_cpp_err"; then
-  ac_header_preproc=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-  ac_header_preproc=no
-fi
-rm -f conftest.err conftest.$ac_ext
-echo "$as_me:$LINENO: result: $ac_header_preproc" >&5
-echo "${ECHO_T}$ac_header_preproc" >&6
-
-# So?  What about this header?
-case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in
-  yes:no: )
-    { echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5
-echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;}
-    { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5
-echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;}
-    ac_header_preproc=yes
-    ;;
-  no:yes:* )
-    { echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5
-echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;}
-    { echo "$as_me:$LINENO: WARNING: $ac_header:     check for missing prerequisite headers?" >&5
-echo "$as_me: WARNING: $ac_header:     check for missing prerequisite headers?" >&2;}
-    { echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5
-echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;}
-    { echo "$as_me:$LINENO: WARNING: $ac_header:     section \"Present But Cannot Be Compiled\"" >&5
-echo "$as_me: WARNING: $ac_header:     section \"Present But Cannot Be Compiled\"" >&2;}
-    { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5
-echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;}
-    { echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5
-echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;}
-    (
-      cat <<\_ASBOX
-@%:@@%:@ ------------------------------- @%:@@%:@
-@%:@@%:@ Report this to bug-bash@gnu.org @%:@@%:@
-@%:@@%:@ ------------------------------- @%:@@%:@
-_ASBOX
-    ) |
-      sed "s/^/$as_me: WARNING:     /" >&2
-    ;;
-esac
-echo "$as_me:$LINENO: checking for $ac_header" >&5
-echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6
-if eval "test \"\${$as_ac_Header+set}\" = set"; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  eval "$as_ac_Header=\$ac_header_preproc"
-fi
-echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5
-echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
-
-fi
-if test `eval echo '${'$as_ac_Header'}'` = yes; then
-  cat >>confdefs.h <<_ACEOF
-@%:@define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
-fi
-
-done
-
-
-for ac_func in getpagesize
-do
-as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`
-echo "$as_me:$LINENO: checking for $ac_func" >&5
-echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6
-if eval "test \"\${$as_ac_var+set}\" = set"; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-/* Define $ac_func to an innocuous variant, in case <limits.h> declares $ac_func.
-   For example, HP-UX 11i <limits.h> declares gettimeofday.  */
-#define $ac_func innocuous_$ac_func
-
-/* System header to define __stub macros and hopefully few prototypes,
-    which can conflict with char $ac_func (); below.
-    Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
-    <limits.h> exists even on freestanding compilers.  */
-
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-
-#undef $ac_func
-
-/* Override any gcc2 internal prototype to avoid an error.  */
-#ifdef __cplusplus
-extern "C"
-{
-#endif
-/* We use char because int might match the return type of a gcc2
-   builtin and then its argument prototype would still apply.  */
-char $ac_func ();
-/* The GNU C library defines this for functions which it implements
-    to always fail with ENOSYS.  Some functions are actually named
-    something starting with __ and the normal name is an alias.  */
-#if defined (__stub_$ac_func) || defined (__stub___$ac_func)
-choke me
-#else
-char (*f) () = $ac_func;
-#endif
-#ifdef __cplusplus
-}
-#endif
-
-int
-main ()
-{
-return f != $ac_func;
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest$ac_exeext'
-  { (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
-  eval "$as_ac_var=yes"
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-eval "$as_ac_var=no"
-fi
-rm -f conftest.err conftest.$ac_objext \
-      conftest$ac_exeext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_var'}'`" >&5
-echo "${ECHO_T}`eval echo '${'$as_ac_var'}'`" >&6
-if test `eval echo '${'$as_ac_var'}'` = yes; then
-  cat >>confdefs.h <<_ACEOF
-@%:@define `echo "HAVE_$ac_func" | $as_tr_cpp` 1
-_ACEOF
-fi
-done
-
-echo "$as_me:$LINENO: checking for working mmap" >&5
-echo $ECHO_N "checking for working mmap... $ECHO_C" >&6
-if test "${ac_cv_func_mmap_fixed_mapped+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  if test "$cross_compiling" = yes; then
-  ac_cv_func_mmap_fixed_mapped=no
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-/* malloc might have been renamed as rpl_malloc. */
-#undef malloc
-
-/* Thanks to Mike Haertel and Jim Avera for this test.
-   Here is a matrix of mmap possibilities:
-       mmap private not fixed
-       mmap private fixed at somewhere currently unmapped
-       mmap private fixed at somewhere already mapped
-       mmap shared not fixed
-       mmap shared fixed at somewhere currently unmapped
-       mmap shared fixed at somewhere already mapped
-   For private mappings, we should verify that changes cannot be read()
-   back from the file, nor mmap's back from the file at a different
-   address.  (There have been systems where private was not correctly
-   implemented like the infamous i386 svr4.0, and systems where the
-   VM page cache was not coherent with the file system buffer cache
-   like early versions of FreeBSD and possibly contemporary NetBSD.)
-   For shared mappings, we should conversely verify that changes get
-   propagated back to all the places they're supposed to be.
-
-   Grep wants private fixed already mapped.
-   The main things grep needs to know about mmap are:
-   * does it exist and is it safe to write into the mmap'd area
-   * how to use it (BSD variants)  */
-
-#include <fcntl.h>
-#include <sys/mman.h>
-
-#if !STDC_HEADERS && !HAVE_STDLIB_H
-char *malloc ();
-#endif
-
-/* This mess was copied from the GNU getpagesize.h.  */
-#if !HAVE_GETPAGESIZE
-/* Assume that all systems that can run configure have sys/param.h.  */
-# if !HAVE_SYS_PARAM_H
-#  define HAVE_SYS_PARAM_H 1
-# endif
-
-# ifdef _SC_PAGESIZE
-#  define getpagesize() sysconf(_SC_PAGESIZE)
-# else /* no _SC_PAGESIZE */
-#  if HAVE_SYS_PARAM_H
-#   include <sys/param.h>
-#   ifdef EXEC_PAGESIZE
-#    define getpagesize() EXEC_PAGESIZE
-#   else /* no EXEC_PAGESIZE */
-#    ifdef NBPG
-#     define getpagesize() NBPG * CLSIZE
-#     ifndef CLSIZE
-#      define CLSIZE 1
-#     endif /* no CLSIZE */
-#    else /* no NBPG */
-#     ifdef NBPC
-#      define getpagesize() NBPC
-#     else /* no NBPC */
-#      ifdef PAGESIZE
-#       define getpagesize() PAGESIZE
-#      endif /* PAGESIZE */
-#     endif /* no NBPC */
-#    endif /* no NBPG */
-#   endif /* no EXEC_PAGESIZE */
-#  else /* no HAVE_SYS_PARAM_H */
-#   define getpagesize() 8192  /* punt totally */
-#  endif /* no HAVE_SYS_PARAM_H */
-# endif /* no _SC_PAGESIZE */
-
-#endif /* no HAVE_GETPAGESIZE */
-
-int
-main ()
-{
-  char *data, *data2, *data3;
-  int i, pagesize;
-  int fd;
-
-  pagesize = getpagesize ();
-
-  /* First, make a file with some known garbage in it. */
-  data = (char *) malloc (pagesize);
-  if (!data)
-    exit (1);
-  for (i = 0; i < pagesize; ++i)
-    *(data + i) = rand ();
-  umask (0);
-  fd = creat ("conftest.mmap", 0600);
-  if (fd < 0)
-    exit (1);
-  if (write (fd, data, pagesize) != pagesize)
-    exit (1);
-  close (fd);
-
-  /* Next, try to mmap the file at a fixed address which already has
-     something else allocated at it.  If we can, also make sure that
-     we see the same garbage.  */
-  fd = open ("conftest.mmap", O_RDWR);
-  if (fd < 0)
-    exit (1);
-  data2 = (char *) malloc (2 * pagesize);
-  if (!data2)
-    exit (1);
-  data2 += (pagesize - ((long) data2 & (pagesize - 1))) & (pagesize - 1);
-  if (data2 != mmap (data2, pagesize, PROT_READ | PROT_WRITE,
-                    MAP_PRIVATE | MAP_FIXED, fd, 0L))
-    exit (1);
-  for (i = 0; i < pagesize; ++i)
-    if (*(data + i) != *(data2 + i))
-      exit (1);
-
-  /* Finally, make sure that changes to the mapped area do not
-     percolate back to the file as seen by read().  (This is a bug on
-     some variants of i386 svr4.0.)  */
-  for (i = 0; i < pagesize; ++i)
-    *(data2 + i) = *(data2 + i) + 1;
-  data3 = (char *) malloc (pagesize);
-  if (!data3)
-    exit (1);
-  if (read (fd, data3, pagesize) != pagesize)
-    exit (1);
-  for (i = 0; i < pagesize; ++i)
-    if (*(data + i) != *(data3 + i))
-      exit (1);
-  close (fd);
-  exit (0);
-}
-_ACEOF
-rm -f conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>&5
-  ac_status=$?
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
-  { (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
-  ac_cv_func_mmap_fixed_mapped=yes
-else
-  echo "$as_me: program exited with status $ac_status" >&5
-echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-( exit $ac_status )
-ac_cv_func_mmap_fixed_mapped=no
-fi
-rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
-fi
-fi
-echo "$as_me:$LINENO: result: $ac_cv_func_mmap_fixed_mapped" >&5
-echo "${ECHO_T}$ac_cv_func_mmap_fixed_mapped" >&6
-if test $ac_cv_func_mmap_fixed_mapped = yes; then
-  
-cat >>confdefs.h <<\_ACEOF
-@%:@define HAVE_MMAP 1
-_ACEOF
-
-fi
-rm -f conftest.mmap
-
-
-
-
-
-
-
-
-
-
-for ac_func in __argz_count __argz_next __argz_stringify dcgettext mempcpy \
-               munmap stpcpy strcspn strdup
-do
-as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`
-echo "$as_me:$LINENO: checking for $ac_func" >&5
-echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6
-if eval "test \"\${$as_ac_var+set}\" = set"; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-/* Define $ac_func to an innocuous variant, in case <limits.h> declares $ac_func.
-   For example, HP-UX 11i <limits.h> declares gettimeofday.  */
-#define $ac_func innocuous_$ac_func
-
-/* System header to define __stub macros and hopefully few prototypes,
-    which can conflict with char $ac_func (); below.
-    Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
-    <limits.h> exists even on freestanding compilers.  */
-
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-
-#undef $ac_func
-
-/* Override any gcc2 internal prototype to avoid an error.  */
-#ifdef __cplusplus
-extern "C"
-{
-#endif
-/* We use char because int might match the return type of a gcc2
-   builtin and then its argument prototype would still apply.  */
-char $ac_func ();
-/* The GNU C library defines this for functions which it implements
-    to always fail with ENOSYS.  Some functions are actually named
-    something starting with __ and the normal name is an alias.  */
-#if defined (__stub_$ac_func) || defined (__stub___$ac_func)
-choke me
-#else
-char (*f) () = $ac_func;
-#endif
-#ifdef __cplusplus
-}
-#endif
-
-int
-main ()
-{
-return f != $ac_func;
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest$ac_exeext'
-  { (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
-  eval "$as_ac_var=yes"
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-eval "$as_ac_var=no"
-fi
-rm -f conftest.err conftest.$ac_objext \
-      conftest$ac_exeext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_var'}'`" >&5
-echo "${ECHO_T}`eval echo '${'$as_ac_var'}'`" >&6
-if test `eval echo '${'$as_ac_var'}'` = yes; then
-  cat >>confdefs.h <<_ACEOF
-@%:@define `echo "HAVE_$ac_func" | $as_tr_cpp` 1
-_ACEOF
-fi
-done
-
-
-INTL_DEP= INTL_INC= LIBINTL_H=
-if test "x$USE_INCLUDED_LIBINTL" = "xyes"; then
-       INTL_DEP='${INTL_LIBDIR}/libintl.a'
-       INTL_INC='-I${INTL_LIBSRC} -I${INTL_BUILDDIR}'
-       LIBINTL_H='${INTL_BUILDDIR}/libintl.h'
-fi
-
-
-
-
-
-
-
-for ac_header in wctype.h
-do
-as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
-if eval "test \"\${$as_ac_Header+set}\" = set"; then
-  echo "$as_me:$LINENO: checking for $ac_header" >&5
-echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6
-if eval "test \"\${$as_ac_Header+set}\" = set"; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-fi
-echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5
-echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
-else
-  # Is the header compilable?
-echo "$as_me:$LINENO: checking $ac_header usability" >&5
-echo $ECHO_N "checking $ac_header usability... $ECHO_C" >&6
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-@%:@include <$ac_header>
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_header_compiler=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_header_compiler=no
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-echo "$as_me:$LINENO: result: $ac_header_compiler" >&5
-echo "${ECHO_T}$ac_header_compiler" >&6
-
-# Is the header present?
-echo "$as_me:$LINENO: checking $ac_header presence" >&5
-echo $ECHO_N "checking $ac_header presence... $ECHO_C" >&6
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-@%:@include <$ac_header>
-_ACEOF
-if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5
-  (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } >/dev/null; then
-  if test -s conftest.err; then
-    ac_cpp_err=$ac_c_preproc_warn_flag
-    ac_cpp_err=$ac_cpp_err$ac_c_werror_flag
-  else
-    ac_cpp_err=
-  fi
-else
-  ac_cpp_err=yes
-fi
-if test -z "$ac_cpp_err"; then
-  ac_header_preproc=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-  ac_header_preproc=no
-fi
-rm -f conftest.err conftest.$ac_ext
-echo "$as_me:$LINENO: result: $ac_header_preproc" >&5
-echo "${ECHO_T}$ac_header_preproc" >&6
-
-# So?  What about this header?
-case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in
-  yes:no: )
-    { echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5
-echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;}
-    { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5
-echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;}
-    ac_header_preproc=yes
-    ;;
-  no:yes:* )
-    { echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5
-echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;}
-    { echo "$as_me:$LINENO: WARNING: $ac_header:     check for missing prerequisite headers?" >&5
-echo "$as_me: WARNING: $ac_header:     check for missing prerequisite headers?" >&2;}
-    { echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5
-echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;}
-    { echo "$as_me:$LINENO: WARNING: $ac_header:     section \"Present But Cannot Be Compiled\"" >&5
-echo "$as_me: WARNING: $ac_header:     section \"Present But Cannot Be Compiled\"" >&2;}
-    { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5
-echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;}
-    { echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5
-echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;}
-    (
-      cat <<\_ASBOX
-@%:@@%:@ ------------------------------- @%:@@%:@
-@%:@@%:@ Report this to bug-bash@gnu.org @%:@@%:@
-@%:@@%:@ ------------------------------- @%:@@%:@
-_ASBOX
-    ) |
-      sed "s/^/$as_me: WARNING:     /" >&2
-    ;;
-esac
-echo "$as_me:$LINENO: checking for $ac_header" >&5
-echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6
-if eval "test \"\${$as_ac_Header+set}\" = set"; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  eval "$as_ac_Header=\$ac_header_preproc"
-fi
-echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5
-echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
-
-fi
-if test `eval echo '${'$as_ac_Header'}'` = yes; then
-  cat >>confdefs.h <<_ACEOF
-@%:@define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
-fi
-
-done
-
-
-for ac_header in wchar.h
-do
-as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
-if eval "test \"\${$as_ac_Header+set}\" = set"; then
-  echo "$as_me:$LINENO: checking for $ac_header" >&5
-echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6
-if eval "test \"\${$as_ac_Header+set}\" = set"; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-fi
-echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5
-echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
-else
-  # Is the header compilable?
-echo "$as_me:$LINENO: checking $ac_header usability" >&5
-echo $ECHO_N "checking $ac_header usability... $ECHO_C" >&6
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-@%:@include <$ac_header>
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_header_compiler=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_header_compiler=no
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-echo "$as_me:$LINENO: result: $ac_header_compiler" >&5
-echo "${ECHO_T}$ac_header_compiler" >&6
-
-# Is the header present?
-echo "$as_me:$LINENO: checking $ac_header presence" >&5
-echo $ECHO_N "checking $ac_header presence... $ECHO_C" >&6
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-@%:@include <$ac_header>
-_ACEOF
-if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5
-  (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } >/dev/null; then
-  if test -s conftest.err; then
-    ac_cpp_err=$ac_c_preproc_warn_flag
-    ac_cpp_err=$ac_cpp_err$ac_c_werror_flag
-  else
-    ac_cpp_err=
-  fi
-else
-  ac_cpp_err=yes
-fi
-if test -z "$ac_cpp_err"; then
-  ac_header_preproc=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-  ac_header_preproc=no
-fi
-rm -f conftest.err conftest.$ac_ext
-echo "$as_me:$LINENO: result: $ac_header_preproc" >&5
-echo "${ECHO_T}$ac_header_preproc" >&6
-
-# So?  What about this header?
-case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in
-  yes:no: )
-    { echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5
-echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;}
-    { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5
-echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;}
-    ac_header_preproc=yes
-    ;;
-  no:yes:* )
-    { echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5
-echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;}
-    { echo "$as_me:$LINENO: WARNING: $ac_header:     check for missing prerequisite headers?" >&5
-echo "$as_me: WARNING: $ac_header:     check for missing prerequisite headers?" >&2;}
-    { echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5
-echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;}
-    { echo "$as_me:$LINENO: WARNING: $ac_header:     section \"Present But Cannot Be Compiled\"" >&5
-echo "$as_me: WARNING: $ac_header:     section \"Present But Cannot Be Compiled\"" >&2;}
-    { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5
-echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;}
-    { echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5
-echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;}
-    (
-      cat <<\_ASBOX
-@%:@@%:@ ------------------------------- @%:@@%:@
-@%:@@%:@ Report this to bug-bash@gnu.org @%:@@%:@
-@%:@@%:@ ------------------------------- @%:@@%:@
-_ASBOX
-    ) |
-      sed "s/^/$as_me: WARNING:     /" >&2
-    ;;
-esac
-echo "$as_me:$LINENO: checking for $ac_header" >&5
-echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6
-if eval "test \"\${$as_ac_Header+set}\" = set"; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  eval "$as_ac_Header=\$ac_header_preproc"
-fi
-echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5
-echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
-
-fi
-if test `eval echo '${'$as_ac_Header'}'` = yes; then
-  cat >>confdefs.h <<_ACEOF
-@%:@define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
-fi
-
-done
-
-
-for ac_header in langinfo.h
-do
-as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
-if eval "test \"\${$as_ac_Header+set}\" = set"; then
-  echo "$as_me:$LINENO: checking for $ac_header" >&5
-echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6
-if eval "test \"\${$as_ac_Header+set}\" = set"; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-fi
-echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5
-echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
-else
-  # Is the header compilable?
-echo "$as_me:$LINENO: checking $ac_header usability" >&5
-echo $ECHO_N "checking $ac_header usability... $ECHO_C" >&6
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-@%:@include <$ac_header>
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_header_compiler=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_header_compiler=no
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-echo "$as_me:$LINENO: result: $ac_header_compiler" >&5
-echo "${ECHO_T}$ac_header_compiler" >&6
-
-# Is the header present?
-echo "$as_me:$LINENO: checking $ac_header presence" >&5
-echo $ECHO_N "checking $ac_header presence... $ECHO_C" >&6
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-@%:@include <$ac_header>
-_ACEOF
-if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5
-  (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } >/dev/null; then
-  if test -s conftest.err; then
-    ac_cpp_err=$ac_c_preproc_warn_flag
-    ac_cpp_err=$ac_cpp_err$ac_c_werror_flag
-  else
-    ac_cpp_err=
-  fi
-else
-  ac_cpp_err=yes
-fi
-if test -z "$ac_cpp_err"; then
-  ac_header_preproc=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-  ac_header_preproc=no
-fi
-rm -f conftest.err conftest.$ac_ext
-echo "$as_me:$LINENO: result: $ac_header_preproc" >&5
-echo "${ECHO_T}$ac_header_preproc" >&6
-
-# So?  What about this header?
-case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in
-  yes:no: )
-    { echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5
-echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;}
-    { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5
-echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;}
-    ac_header_preproc=yes
-    ;;
-  no:yes:* )
-    { echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5
-echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;}
-    { echo "$as_me:$LINENO: WARNING: $ac_header:     check for missing prerequisite headers?" >&5
-echo "$as_me: WARNING: $ac_header:     check for missing prerequisite headers?" >&2;}
-    { echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5
-echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;}
-    { echo "$as_me:$LINENO: WARNING: $ac_header:     section \"Present But Cannot Be Compiled\"" >&5
-echo "$as_me: WARNING: $ac_header:     section \"Present But Cannot Be Compiled\"" >&2;}
-    { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5
-echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;}
-    { echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5
-echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;}
-    (
-      cat <<\_ASBOX
-@%:@@%:@ ------------------------------- @%:@@%:@
-@%:@@%:@ Report this to bug-bash@gnu.org @%:@@%:@
-@%:@@%:@ ------------------------------- @%:@@%:@
-_ASBOX
-    ) |
-      sed "s/^/$as_me: WARNING:     /" >&2
-    ;;
-esac
-echo "$as_me:$LINENO: checking for $ac_header" >&5
-echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6
-if eval "test \"\${$as_ac_Header+set}\" = set"; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  eval "$as_ac_Header=\$ac_header_preproc"
-fi
-echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5
-echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
-
-fi
-if test `eval echo '${'$as_ac_Header'}'` = yes; then
-  cat >>confdefs.h <<_ACEOF
-@%:@define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
-fi
-
-done
-
-
-echo "$as_me:$LINENO: checking for mbrlen" >&5
-echo $ECHO_N "checking for mbrlen... $ECHO_C" >&6
-if test "${ac_cv_func_mbrlen+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-/* Define mbrlen to an innocuous variant, in case <limits.h> declares mbrlen.
-   For example, HP-UX 11i <limits.h> declares gettimeofday.  */
-#define mbrlen innocuous_mbrlen
-
-/* System header to define __stub macros and hopefully few prototypes,
-    which can conflict with char mbrlen (); below.
-    Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
-    <limits.h> exists even on freestanding compilers.  */
-
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-
-#undef mbrlen
-
-/* Override any gcc2 internal prototype to avoid an error.  */
-#ifdef __cplusplus
-extern "C"
-{
-#endif
-/* We use char because int might match the return type of a gcc2
-   builtin and then its argument prototype would still apply.  */
-char mbrlen ();
-/* The GNU C library defines this for functions which it implements
-    to always fail with ENOSYS.  Some functions are actually named
-    something starting with __ and the normal name is an alias.  */
-#if defined (__stub_mbrlen) || defined (__stub___mbrlen)
-choke me
-#else
-char (*f) () = mbrlen;
-#endif
-#ifdef __cplusplus
-}
-#endif
-
-int
-main ()
-{
-return f != mbrlen;
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest$ac_exeext'
-  { (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
-  ac_cv_func_mbrlen=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_cv_func_mbrlen=no
-fi
-rm -f conftest.err conftest.$ac_objext \
-      conftest$ac_exeext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: $ac_cv_func_mbrlen" >&5
-echo "${ECHO_T}$ac_cv_func_mbrlen" >&6
-if test $ac_cv_func_mbrlen = yes; then
-  cat >>confdefs.h <<\_ACEOF
-@%:@define HAVE_MBRLEN 1
-_ACEOF
-
-fi
-
-echo "$as_me:$LINENO: checking for mbscasecmp" >&5
-echo $ECHO_N "checking for mbscasecmp... $ECHO_C" >&6
-if test "${ac_cv_func_mbscasecmp+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-/* Define mbscasecmp to an innocuous variant, in case <limits.h> declares mbscasecmp.
-   For example, HP-UX 11i <limits.h> declares gettimeofday.  */
-#define mbscasecmp innocuous_mbscasecmp
-
-/* System header to define __stub macros and hopefully few prototypes,
-    which can conflict with char mbscasecmp (); below.
-    Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
-    <limits.h> exists even on freestanding compilers.  */
-
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-
-#undef mbscasecmp
-
-/* Override any gcc2 internal prototype to avoid an error.  */
-#ifdef __cplusplus
-extern "C"
-{
-#endif
-/* We use char because int might match the return type of a gcc2
-   builtin and then its argument prototype would still apply.  */
-char mbscasecmp ();
-/* The GNU C library defines this for functions which it implements
-    to always fail with ENOSYS.  Some functions are actually named
-    something starting with __ and the normal name is an alias.  */
-#if defined (__stub_mbscasecmp) || defined (__stub___mbscasecmp)
-choke me
-#else
-char (*f) () = mbscasecmp;
-#endif
-#ifdef __cplusplus
-}
-#endif
-
-int
-main ()
-{
-return f != mbscasecmp;
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest$ac_exeext'
-  { (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
-  ac_cv_func_mbscasecmp=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_cv_func_mbscasecmp=no
-fi
-rm -f conftest.err conftest.$ac_objext \
-      conftest$ac_exeext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: $ac_cv_func_mbscasecmp" >&5
-echo "${ECHO_T}$ac_cv_func_mbscasecmp" >&6
-if test $ac_cv_func_mbscasecmp = yes; then
-  cat >>confdefs.h <<\_ACEOF
-@%:@define HAVE_MBSCMP 1
-_ACEOF
-
-fi
-
-echo "$as_me:$LINENO: checking for mbscmp" >&5
-echo $ECHO_N "checking for mbscmp... $ECHO_C" >&6
-if test "${ac_cv_func_mbscmp+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-/* Define mbscmp to an innocuous variant, in case <limits.h> declares mbscmp.
-   For example, HP-UX 11i <limits.h> declares gettimeofday.  */
-#define mbscmp innocuous_mbscmp
-
-/* System header to define __stub macros and hopefully few prototypes,
-    which can conflict with char mbscmp (); below.
-    Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
-    <limits.h> exists even on freestanding compilers.  */
-
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-
-#undef mbscmp
-
-/* Override any gcc2 internal prototype to avoid an error.  */
-#ifdef __cplusplus
-extern "C"
-{
-#endif
-/* We use char because int might match the return type of a gcc2
-   builtin and then its argument prototype would still apply.  */
-char mbscmp ();
-/* The GNU C library defines this for functions which it implements
-    to always fail with ENOSYS.  Some functions are actually named
-    something starting with __ and the normal name is an alias.  */
-#if defined (__stub_mbscmp) || defined (__stub___mbscmp)
-choke me
-#else
-char (*f) () = mbscmp;
-#endif
-#ifdef __cplusplus
-}
-#endif
-
-int
-main ()
-{
-return f != mbscmp;
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest$ac_exeext'
-  { (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
-  ac_cv_func_mbscmp=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_cv_func_mbscmp=no
-fi
-rm -f conftest.err conftest.$ac_objext \
-      conftest$ac_exeext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: $ac_cv_func_mbscmp" >&5
-echo "${ECHO_T}$ac_cv_func_mbscmp" >&6
-if test $ac_cv_func_mbscmp = yes; then
-  cat >>confdefs.h <<\_ACEOF
-@%:@define HAVE_MBSCMP 1
-_ACEOF
-
-fi
-
-echo "$as_me:$LINENO: checking for mbsnrtowcs" >&5
-echo $ECHO_N "checking for mbsnrtowcs... $ECHO_C" >&6
-if test "${ac_cv_func_mbsnrtowcs+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-/* Define mbsnrtowcs to an innocuous variant, in case <limits.h> declares mbsnrtowcs.
-   For example, HP-UX 11i <limits.h> declares gettimeofday.  */
-#define mbsnrtowcs innocuous_mbsnrtowcs
-
-/* System header to define __stub macros and hopefully few prototypes,
-    which can conflict with char mbsnrtowcs (); below.
-    Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
-    <limits.h> exists even on freestanding compilers.  */
-
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-
-#undef mbsnrtowcs
-
-/* Override any gcc2 internal prototype to avoid an error.  */
-#ifdef __cplusplus
-extern "C"
-{
-#endif
-/* We use char because int might match the return type of a gcc2
-   builtin and then its argument prototype would still apply.  */
-char mbsnrtowcs ();
-/* The GNU C library defines this for functions which it implements
-    to always fail with ENOSYS.  Some functions are actually named
-    something starting with __ and the normal name is an alias.  */
-#if defined (__stub_mbsnrtowcs) || defined (__stub___mbsnrtowcs)
-choke me
-#else
-char (*f) () = mbsnrtowcs;
-#endif
-#ifdef __cplusplus
-}
-#endif
-
-int
-main ()
-{
-return f != mbsnrtowcs;
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest$ac_exeext'
-  { (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
-  ac_cv_func_mbsnrtowcs=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_cv_func_mbsnrtowcs=no
-fi
-rm -f conftest.err conftest.$ac_objext \
-      conftest$ac_exeext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: $ac_cv_func_mbsnrtowcs" >&5
-echo "${ECHO_T}$ac_cv_func_mbsnrtowcs" >&6
-if test $ac_cv_func_mbsnrtowcs = yes; then
-  cat >>confdefs.h <<\_ACEOF
-@%:@define HAVE_MBSNRTOWCS 1
-_ACEOF
-
-fi
-
-echo "$as_me:$LINENO: checking for mbsrtowcs" >&5
-echo $ECHO_N "checking for mbsrtowcs... $ECHO_C" >&6
-if test "${ac_cv_func_mbsrtowcs+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-/* Define mbsrtowcs to an innocuous variant, in case <limits.h> declares mbsrtowcs.
-   For example, HP-UX 11i <limits.h> declares gettimeofday.  */
-#define mbsrtowcs innocuous_mbsrtowcs
-
-/* System header to define __stub macros and hopefully few prototypes,
-    which can conflict with char mbsrtowcs (); below.
-    Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
-    <limits.h> exists even on freestanding compilers.  */
-
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-
-#undef mbsrtowcs
-
-/* Override any gcc2 internal prototype to avoid an error.  */
-#ifdef __cplusplus
-extern "C"
-{
-#endif
-/* We use char because int might match the return type of a gcc2
-   builtin and then its argument prototype would still apply.  */
-char mbsrtowcs ();
-/* The GNU C library defines this for functions which it implements
-    to always fail with ENOSYS.  Some functions are actually named
-    something starting with __ and the normal name is an alias.  */
-#if defined (__stub_mbsrtowcs) || defined (__stub___mbsrtowcs)
-choke me
-#else
-char (*f) () = mbsrtowcs;
-#endif
-#ifdef __cplusplus
-}
-#endif
-
-int
-main ()
-{
-return f != mbsrtowcs;
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest$ac_exeext'
-  { (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
-  ac_cv_func_mbsrtowcs=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_cv_func_mbsrtowcs=no
-fi
-rm -f conftest.err conftest.$ac_objext \
-      conftest$ac_exeext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: $ac_cv_func_mbsrtowcs" >&5
-echo "${ECHO_T}$ac_cv_func_mbsrtowcs" >&6
-if test $ac_cv_func_mbsrtowcs = yes; then
-  cat >>confdefs.h <<\_ACEOF
-@%:@define HAVE_MBSRTOWCS 1
-_ACEOF
-
-fi
-
-
-
-for ac_func in mbschr
-do
-as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`
-echo "$as_me:$LINENO: checking for $ac_func" >&5
-echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6
-if eval "test \"\${$as_ac_var+set}\" = set"; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-/* Define $ac_func to an innocuous variant, in case <limits.h> declares $ac_func.
-   For example, HP-UX 11i <limits.h> declares gettimeofday.  */
-#define $ac_func innocuous_$ac_func
-
-/* System header to define __stub macros and hopefully few prototypes,
-    which can conflict with char $ac_func (); below.
-    Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
-    <limits.h> exists even on freestanding compilers.  */
-
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-
-#undef $ac_func
-
-/* Override any gcc2 internal prototype to avoid an error.  */
-#ifdef __cplusplus
-extern "C"
-{
-#endif
-/* We use char because int might match the return type of a gcc2
-   builtin and then its argument prototype would still apply.  */
-char $ac_func ();
-/* The GNU C library defines this for functions which it implements
-    to always fail with ENOSYS.  Some functions are actually named
-    something starting with __ and the normal name is an alias.  */
-#if defined (__stub_$ac_func) || defined (__stub___$ac_func)
-choke me
-#else
-char (*f) () = $ac_func;
-#endif
-#ifdef __cplusplus
-}
-#endif
-
-int
-main ()
-{
-return f != $ac_func;
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest$ac_exeext'
-  { (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
-  eval "$as_ac_var=yes"
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-eval "$as_ac_var=no"
-fi
-rm -f conftest.err conftest.$ac_objext \
-      conftest$ac_exeext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_var'}'`" >&5
-echo "${ECHO_T}`eval echo '${'$as_ac_var'}'`" >&6
-if test `eval echo '${'$as_ac_var'}'` = yes; then
-  cat >>confdefs.h <<_ACEOF
-@%:@define `echo "HAVE_$ac_func" | $as_tr_cpp` 1
-_ACEOF
-else
-  case $LIB@&t@OBJS in
-    "$ac_func.$ac_objext"   | \
-  *" $ac_func.$ac_objext"   | \
-    "$ac_func.$ac_objext "* | \
-  *" $ac_func.$ac_objext "* ) ;;
-  *) LIB@&t@OBJS="$LIB@&t@OBJS $ac_func.$ac_objext" ;;
-esac
-
-fi
-done
-
-
-
-echo "$as_me:$LINENO: checking for wcrtomb" >&5
-echo $ECHO_N "checking for wcrtomb... $ECHO_C" >&6
-if test "${ac_cv_func_wcrtomb+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-/* Define wcrtomb to an innocuous variant, in case <limits.h> declares wcrtomb.
-   For example, HP-UX 11i <limits.h> declares gettimeofday.  */
-#define wcrtomb innocuous_wcrtomb
-
-/* System header to define __stub macros and hopefully few prototypes,
-    which can conflict with char wcrtomb (); below.
-    Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
-    <limits.h> exists even on freestanding compilers.  */
-
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-
-#undef wcrtomb
-
-/* Override any gcc2 internal prototype to avoid an error.  */
-#ifdef __cplusplus
-extern "C"
-{
-#endif
-/* We use char because int might match the return type of a gcc2
-   builtin and then its argument prototype would still apply.  */
-char wcrtomb ();
-/* The GNU C library defines this for functions which it implements
-    to always fail with ENOSYS.  Some functions are actually named
-    something starting with __ and the normal name is an alias.  */
-#if defined (__stub_wcrtomb) || defined (__stub___wcrtomb)
-choke me
-#else
-char (*f) () = wcrtomb;
-#endif
-#ifdef __cplusplus
-}
-#endif
-
-int
-main ()
-{
-return f != wcrtomb;
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest$ac_exeext'
-  { (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
-  ac_cv_func_wcrtomb=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_cv_func_wcrtomb=no
-fi
-rm -f conftest.err conftest.$ac_objext \
-      conftest$ac_exeext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: $ac_cv_func_wcrtomb" >&5
-echo "${ECHO_T}$ac_cv_func_wcrtomb" >&6
-if test $ac_cv_func_wcrtomb = yes; then
-  cat >>confdefs.h <<\_ACEOF
-@%:@define HAVE_WCRTOMB 1
-_ACEOF
-
-fi
-
-echo "$as_me:$LINENO: checking for wcscoll" >&5
-echo $ECHO_N "checking for wcscoll... $ECHO_C" >&6
-if test "${ac_cv_func_wcscoll+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-/* Define wcscoll to an innocuous variant, in case <limits.h> declares wcscoll.
-   For example, HP-UX 11i <limits.h> declares gettimeofday.  */
-#define wcscoll innocuous_wcscoll
-
-/* System header to define __stub macros and hopefully few prototypes,
-    which can conflict with char wcscoll (); below.
-    Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
-    <limits.h> exists even on freestanding compilers.  */
-
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-
-#undef wcscoll
-
-/* Override any gcc2 internal prototype to avoid an error.  */
-#ifdef __cplusplus
-extern "C"
-{
-#endif
-/* We use char because int might match the return type of a gcc2
-   builtin and then its argument prototype would still apply.  */
-char wcscoll ();
-/* The GNU C library defines this for functions which it implements
-    to always fail with ENOSYS.  Some functions are actually named
-    something starting with __ and the normal name is an alias.  */
-#if defined (__stub_wcscoll) || defined (__stub___wcscoll)
-choke me
-#else
-char (*f) () = wcscoll;
-#endif
-#ifdef __cplusplus
-}
-#endif
-
-int
-main ()
-{
-return f != wcscoll;
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest$ac_exeext'
-  { (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
-  ac_cv_func_wcscoll=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_cv_func_wcscoll=no
-fi
-rm -f conftest.err conftest.$ac_objext \
-      conftest$ac_exeext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: $ac_cv_func_wcscoll" >&5
-echo "${ECHO_T}$ac_cv_func_wcscoll" >&6
-if test $ac_cv_func_wcscoll = yes; then
-  cat >>confdefs.h <<\_ACEOF
-@%:@define HAVE_WCSCOLL 1
-_ACEOF
-
-fi
-
-echo "$as_me:$LINENO: checking for wcsdup" >&5
-echo $ECHO_N "checking for wcsdup... $ECHO_C" >&6
-if test "${ac_cv_func_wcsdup+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-/* Define wcsdup to an innocuous variant, in case <limits.h> declares wcsdup.
-   For example, HP-UX 11i <limits.h> declares gettimeofday.  */
-#define wcsdup innocuous_wcsdup
-
-/* System header to define __stub macros and hopefully few prototypes,
-    which can conflict with char wcsdup (); below.
-    Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
-    <limits.h> exists even on freestanding compilers.  */
-
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-
-#undef wcsdup
-
-/* Override any gcc2 internal prototype to avoid an error.  */
-#ifdef __cplusplus
-extern "C"
-{
-#endif
-/* We use char because int might match the return type of a gcc2
-   builtin and then its argument prototype would still apply.  */
-char wcsdup ();
-/* The GNU C library defines this for functions which it implements
-    to always fail with ENOSYS.  Some functions are actually named
-    something starting with __ and the normal name is an alias.  */
-#if defined (__stub_wcsdup) || defined (__stub___wcsdup)
-choke me
-#else
-char (*f) () = wcsdup;
-#endif
-#ifdef __cplusplus
-}
-#endif
-
-int
-main ()
-{
-return f != wcsdup;
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest$ac_exeext'
-  { (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
-  ac_cv_func_wcsdup=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_cv_func_wcsdup=no
-fi
-rm -f conftest.err conftest.$ac_objext \
-      conftest$ac_exeext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: $ac_cv_func_wcsdup" >&5
-echo "${ECHO_T}$ac_cv_func_wcsdup" >&6
-if test $ac_cv_func_wcsdup = yes; then
-  cat >>confdefs.h <<\_ACEOF
-@%:@define HAVE_WCSDUP 1
-_ACEOF
-
-fi
-
-echo "$as_me:$LINENO: checking for wcwidth" >&5
-echo $ECHO_N "checking for wcwidth... $ECHO_C" >&6
-if test "${ac_cv_func_wcwidth+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-/* Define wcwidth to an innocuous variant, in case <limits.h> declares wcwidth.
-   For example, HP-UX 11i <limits.h> declares gettimeofday.  */
-#define wcwidth innocuous_wcwidth
-
-/* System header to define __stub macros and hopefully few prototypes,
-    which can conflict with char wcwidth (); below.
-    Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
-    <limits.h> exists even on freestanding compilers.  */
-
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-
-#undef wcwidth
-
-/* Override any gcc2 internal prototype to avoid an error.  */
-#ifdef __cplusplus
-extern "C"
-{
-#endif
-/* We use char because int might match the return type of a gcc2
-   builtin and then its argument prototype would still apply.  */
-char wcwidth ();
-/* The GNU C library defines this for functions which it implements
-    to always fail with ENOSYS.  Some functions are actually named
-    something starting with __ and the normal name is an alias.  */
-#if defined (__stub_wcwidth) || defined (__stub___wcwidth)
-choke me
-#else
-char (*f) () = wcwidth;
-#endif
-#ifdef __cplusplus
-}
-#endif
-
-int
-main ()
-{
-return f != wcwidth;
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest$ac_exeext'
-  { (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
-  ac_cv_func_wcwidth=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_cv_func_wcwidth=no
-fi
-rm -f conftest.err conftest.$ac_objext \
-      conftest$ac_exeext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: $ac_cv_func_wcwidth" >&5
-echo "${ECHO_T}$ac_cv_func_wcwidth" >&6
-if test $ac_cv_func_wcwidth = yes; then
-  cat >>confdefs.h <<\_ACEOF
-@%:@define HAVE_WCWIDTH 1
-_ACEOF
-
-fi
-
-echo "$as_me:$LINENO: checking for wctype" >&5
-echo $ECHO_N "checking for wctype... $ECHO_C" >&6
-if test "${ac_cv_func_wctype+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-/* Define wctype to an innocuous variant, in case <limits.h> declares wctype.
-   For example, HP-UX 11i <limits.h> declares gettimeofday.  */
-#define wctype innocuous_wctype
-
-/* System header to define __stub macros and hopefully few prototypes,
-    which can conflict with char wctype (); below.
-    Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
-    <limits.h> exists even on freestanding compilers.  */
-
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-
-#undef wctype
-
-/* Override any gcc2 internal prototype to avoid an error.  */
-#ifdef __cplusplus
-extern "C"
-{
-#endif
-/* We use char because int might match the return type of a gcc2
-   builtin and then its argument prototype would still apply.  */
-char wctype ();
-/* The GNU C library defines this for functions which it implements
-    to always fail with ENOSYS.  Some functions are actually named
-    something starting with __ and the normal name is an alias.  */
-#if defined (__stub_wctype) || defined (__stub___wctype)
-choke me
-#else
-char (*f) () = wctype;
-#endif
-#ifdef __cplusplus
-}
-#endif
-
-int
-main ()
-{
-return f != wctype;
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest$ac_exeext'
-  { (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
-  ac_cv_func_wctype=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_cv_func_wctype=no
-fi
-rm -f conftest.err conftest.$ac_objext \
-      conftest$ac_exeext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: $ac_cv_func_wctype" >&5
-echo "${ECHO_T}$ac_cv_func_wctype" >&6
-if test $ac_cv_func_wctype = yes; then
-  cat >>confdefs.h <<\_ACEOF
-@%:@define HAVE_WCTYPE 1
-_ACEOF
-
-fi
-
-
-
-for ac_func in wcswidth
-do
-as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`
-echo "$as_me:$LINENO: checking for $ac_func" >&5
-echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6
-if eval "test \"\${$as_ac_var+set}\" = set"; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-/* Define $ac_func to an innocuous variant, in case <limits.h> declares $ac_func.
-   For example, HP-UX 11i <limits.h> declares gettimeofday.  */
-#define $ac_func innocuous_$ac_func
-
-/* System header to define __stub macros and hopefully few prototypes,
-    which can conflict with char $ac_func (); below.
-    Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
-    <limits.h> exists even on freestanding compilers.  */
-
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-
-#undef $ac_func
-
-/* Override any gcc2 internal prototype to avoid an error.  */
-#ifdef __cplusplus
-extern "C"
-{
-#endif
-/* We use char because int might match the return type of a gcc2
-   builtin and then its argument prototype would still apply.  */
-char $ac_func ();
-/* The GNU C library defines this for functions which it implements
-    to always fail with ENOSYS.  Some functions are actually named
-    something starting with __ and the normal name is an alias.  */
-#if defined (__stub_$ac_func) || defined (__stub___$ac_func)
-choke me
-#else
-char (*f) () = $ac_func;
-#endif
-#ifdef __cplusplus
-}
-#endif
-
-int
-main ()
-{
-return f != $ac_func;
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest$ac_exeext'
-  { (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
-  eval "$as_ac_var=yes"
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-eval "$as_ac_var=no"
-fi
-rm -f conftest.err conftest.$ac_objext \
-      conftest$ac_exeext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_var'}'`" >&5
-echo "${ECHO_T}`eval echo '${'$as_ac_var'}'`" >&6
-if test `eval echo '${'$as_ac_var'}'` = yes; then
-  cat >>confdefs.h <<_ACEOF
-@%:@define `echo "HAVE_$ac_func" | $as_tr_cpp` 1
-_ACEOF
-else
-  case $LIB@&t@OBJS in
-    "$ac_func.$ac_objext"   | \
-  *" $ac_func.$ac_objext"   | \
-    "$ac_func.$ac_objext "* | \
-  *" $ac_func.$ac_objext "* ) ;;
-  *) LIB@&t@OBJS="$LIB@&t@OBJS $ac_func.$ac_objext" ;;
-esac
-
-fi
-done
-
-
-
-
-  echo "$as_me:$LINENO: checking whether mbrtowc and mbstate_t are properly declared" >&5
-echo $ECHO_N "checking whether mbrtowc and mbstate_t are properly declared... $ECHO_C" >&6
-if test "${ac_cv_func_mbrtowc+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-@%:@include <wchar.h>
-int
-main ()
-{
-mbstate_t state; return ! (sizeof state && mbrtowc);
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest$ac_exeext'
-  { (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
-  ac_cv_func_mbrtowc=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_cv_func_mbrtowc=no
-fi
-rm -f conftest.err conftest.$ac_objext \
-      conftest$ac_exeext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: $ac_cv_func_mbrtowc" >&5
-echo "${ECHO_T}$ac_cv_func_mbrtowc" >&6
-  if test $ac_cv_func_mbrtowc = yes; then
-    
-cat >>confdefs.h <<\_ACEOF
-@%:@define HAVE_MBRTOWC 1
-_ACEOF
-
-  fi
-
-if test $ac_cv_func_mbrtowc = yes; then
-       cat >>confdefs.h <<\_ACEOF
-@%:@define HAVE_MBSTATE_T 1
-_ACEOF
-
-fi
-
-
-
-
-
-
-for ac_func in iswlower iswupper towlower towupper iswctype
-do
-as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`
-echo "$as_me:$LINENO: checking for $ac_func" >&5
-echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6
-if eval "test \"\${$as_ac_var+set}\" = set"; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-/* Define $ac_func to an innocuous variant, in case <limits.h> declares $ac_func.
-   For example, HP-UX 11i <limits.h> declares gettimeofday.  */
-#define $ac_func innocuous_$ac_func
-
-/* System header to define __stub macros and hopefully few prototypes,
-    which can conflict with char $ac_func (); below.
-    Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
-    <limits.h> exists even on freestanding compilers.  */
-
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-
-#undef $ac_func
-
-/* Override any gcc2 internal prototype to avoid an error.  */
-#ifdef __cplusplus
-extern "C"
-{
-#endif
-/* We use char because int might match the return type of a gcc2
-   builtin and then its argument prototype would still apply.  */
-char $ac_func ();
-/* The GNU C library defines this for functions which it implements
-    to always fail with ENOSYS.  Some functions are actually named
-    something starting with __ and the normal name is an alias.  */
-#if defined (__stub_$ac_func) || defined (__stub___$ac_func)
-choke me
-#else
-char (*f) () = $ac_func;
-#endif
-#ifdef __cplusplus
-}
-#endif
-
-int
-main ()
-{
-return f != $ac_func;
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest$ac_exeext'
-  { (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
-  eval "$as_ac_var=yes"
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-eval "$as_ac_var=no"
-fi
-rm -f conftest.err conftest.$ac_objext \
-      conftest$ac_exeext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_var'}'`" >&5
-echo "${ECHO_T}`eval echo '${'$as_ac_var'}'`" >&6
-if test `eval echo '${'$as_ac_var'}'` = yes; then
-  cat >>confdefs.h <<_ACEOF
-@%:@define `echo "HAVE_$ac_func" | $as_tr_cpp` 1
-_ACEOF
-fi
-done
-
-
-echo "$as_me:$LINENO: checking for nl_langinfo and CODESET" >&5
-echo $ECHO_N "checking for nl_langinfo and CODESET... $ECHO_C" >&6
-if test "${bash_cv_langinfo_codeset+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <langinfo.h>
-int
-main ()
-{
-char* cs = nl_langinfo(CODESET);
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest$ac_exeext'
-  { (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
-  bash_cv_langinfo_codeset=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-bash_cv_langinfo_codeset=no
-fi
-rm -f conftest.err conftest.$ac_objext \
-      conftest$ac_exeext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: $bash_cv_langinfo_codeset" >&5
-echo "${ECHO_T}$bash_cv_langinfo_codeset" >&6
-if test $bash_cv_langinfo_codeset = yes; then
-  cat >>confdefs.h <<\_ACEOF
-@%:@define HAVE_LANGINFO_CODESET 1
-_ACEOF
-
-fi
-
-echo "$as_me:$LINENO: checking for wchar_t in wchar.h" >&5
-echo $ECHO_N "checking for wchar_t in wchar.h... $ECHO_C" >&6
-if test "${bash_cv_type_wchar_t+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <wchar.h>
-
-int
-main ()
-{
-
-        wchar_t foo;
-        foo = 0;
-
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  bash_cv_type_wchar_t=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-bash_cv_type_wchar_t=no
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: $bash_cv_type_wchar_t" >&5
-echo "${ECHO_T}$bash_cv_type_wchar_t" >&6
-if test $bash_cv_type_wchar_t = yes; then
-        
-cat >>confdefs.h <<\_ACEOF
-@%:@define HAVE_WCHAR_T 1
-_ACEOF
-
-fi
-
-echo "$as_me:$LINENO: checking for wctype_t in wctype.h" >&5
-echo $ECHO_N "checking for wctype_t in wctype.h... $ECHO_C" >&6
-if test "${bash_cv_type_wctype_t+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <wctype.h>
-int
-main ()
-{
-
-        wctype_t foo;
-        foo = 0;
-
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  bash_cv_type_wctype_t=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-bash_cv_type_wctype_t=no
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: $bash_cv_type_wctype_t" >&5
-echo "${ECHO_T}$bash_cv_type_wctype_t" >&6
-if test $bash_cv_type_wctype_t = yes; then
-        
-cat >>confdefs.h <<\_ACEOF
-@%:@define HAVE_WCTYPE_T 1
-_ACEOF
-
-fi
-
-echo "$as_me:$LINENO: checking for wint_t in wctype.h" >&5
-echo $ECHO_N "checking for wint_t in wctype.h... $ECHO_C" >&6
-if test "${bash_cv_type_wint_t+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <wctype.h>
-int
-main ()
-{
-
-        wint_t foo;
-        foo = 0;
-
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  bash_cv_type_wint_t=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-bash_cv_type_wint_t=no
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: $bash_cv_type_wint_t" >&5
-echo "${ECHO_T}$bash_cv_type_wint_t" >&6
-if test $bash_cv_type_wint_t = yes; then
-        
-cat >>confdefs.h <<\_ACEOF
-@%:@define HAVE_WINT_T 1
-_ACEOF
-
-fi
-
-echo "$as_me:$LINENO: checking for wcwidth broken with unicode combining characters" >&5
-echo $ECHO_N "checking for wcwidth broken with unicode combining characters... $ECHO_C" >&6
-if test "${bash_cv_wcwidth_broken+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  if test "$cross_compiling" = yes; then
-  { { echo "$as_me:$LINENO: error: cannot run test program while cross compiling
-See \`config.log' for more details." >&5
-echo "$as_me: error: cannot run test program while cross compiling
-See \`config.log' for more details." >&2;}
-   { (exit 1); exit 1; }; }
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-
-#include <unistd.h>
-#include <stdlib.h>
-#include <stdio.h>
-
-#include <locale.h>
-#include <wchar.h>
-
-main(c, v)
-int     c;
-char    **v;
-{
-        int     w;
-
-        setlocale(LC_ALL, "en_US.UTF-8");
-        w = wcwidth (0x0301);
-        exit (w == 0);  /* exit 0 if wcwidth broken */
-}
-
-_ACEOF
-rm -f conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>&5
-  ac_status=$?
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
-  { (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
-  bash_cv_wcwidth_broken=yes
-else
-  echo "$as_me: program exited with status $ac_status" >&5
-echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-( exit $ac_status )
-bash_cv_wcwdith_broken=no
-fi
-rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
-fi
-fi
-echo "$as_me:$LINENO: result: $bash_cv_wcwidth_broken" >&5
-echo "${ECHO_T}$bash_cv_wcwidth_broken" >&6
-if test $bash_cv_wcwidth_broken = yes; then
-        
-cat >>confdefs.h <<\_ACEOF
-@%:@define WCWIDTH_BROKEN 1
-_ACEOF
-
-fi
-
-if test "$am_cv_func_iconv" = yes; then
-       OLDLIBS="$LIBS"
-       LIBS="$LIBS $LIBICONV"
-       
-for ac_func in locale_charset
-do
-as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`
-echo "$as_me:$LINENO: checking for $ac_func" >&5
-echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6
-if eval "test \"\${$as_ac_var+set}\" = set"; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-/* Define $ac_func to an innocuous variant, in case <limits.h> declares $ac_func.
-   For example, HP-UX 11i <limits.h> declares gettimeofday.  */
-#define $ac_func innocuous_$ac_func
-
-/* System header to define __stub macros and hopefully few prototypes,
-    which can conflict with char $ac_func (); below.
-    Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
-    <limits.h> exists even on freestanding compilers.  */
-
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-
-#undef $ac_func
-
-/* Override any gcc2 internal prototype to avoid an error.  */
-#ifdef __cplusplus
-extern "C"
-{
-#endif
-/* We use char because int might match the return type of a gcc2
-   builtin and then its argument prototype would still apply.  */
-char $ac_func ();
-/* The GNU C library defines this for functions which it implements
-    to always fail with ENOSYS.  Some functions are actually named
-    something starting with __ and the normal name is an alias.  */
-#if defined (__stub_$ac_func) || defined (__stub___$ac_func)
-choke me
-#else
-char (*f) () = $ac_func;
-#endif
-#ifdef __cplusplus
-}
-#endif
-
-int
-main ()
-{
-return f != $ac_func;
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest$ac_exeext'
-  { (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
-  eval "$as_ac_var=yes"
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-eval "$as_ac_var=no"
-fi
-rm -f conftest.err conftest.$ac_objext \
-      conftest$ac_exeext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_var'}'`" >&5
-echo "${ECHO_T}`eval echo '${'$as_ac_var'}'`" >&6
-if test `eval echo '${'$as_ac_var'}'` = yes; then
-  cat >>confdefs.h <<_ACEOF
-@%:@define `echo "HAVE_$ac_func" | $as_tr_cpp` 1
-_ACEOF
-fi
-done
-
-       LIBS="$OLDLIBS"
-fi
-
-
-
-if test "$opt_static_link" != yes; then
-
-echo "$as_me:$LINENO: checking for dlopen in -ldl" >&5
-echo $ECHO_N "checking for dlopen in -ldl... $ECHO_C" >&6
-if test "${ac_cv_lib_dl_dlopen+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  ac_check_lib_save_LIBS=$LIBS
-LIBS="-ldl  $LIBS"
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-
-/* Override any gcc2 internal prototype to avoid an error.  */
-#ifdef __cplusplus
-extern "C"
-#endif
-/* We use char because int might match the return type of a gcc2
-   builtin and then its argument prototype would still apply.  */
-char dlopen ();
-int
-main ()
-{
-dlopen ();
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest$ac_exeext'
-  { (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
-  ac_cv_lib_dl_dlopen=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_cv_lib_dl_dlopen=no
-fi
-rm -f conftest.err conftest.$ac_objext \
-      conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-echo "$as_me:$LINENO: result: $ac_cv_lib_dl_dlopen" >&5
-echo "${ECHO_T}$ac_cv_lib_dl_dlopen" >&6
-if test $ac_cv_lib_dl_dlopen = yes; then
-  cat >>confdefs.h <<_ACEOF
-@%:@define HAVE_LIBDL 1
-_ACEOF
-
-  LIBS="-ldl $LIBS"
-
-fi
-
-
-
-
-for ac_func in dlopen dlclose dlsym
-do
-as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`
-echo "$as_me:$LINENO: checking for $ac_func" >&5
-echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6
-if eval "test \"\${$as_ac_var+set}\" = set"; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-/* Define $ac_func to an innocuous variant, in case <limits.h> declares $ac_func.
-   For example, HP-UX 11i <limits.h> declares gettimeofday.  */
-#define $ac_func innocuous_$ac_func
-
-/* System header to define __stub macros and hopefully few prototypes,
-    which can conflict with char $ac_func (); below.
-    Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
-    <limits.h> exists even on freestanding compilers.  */
-
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-
-#undef $ac_func
-
-/* Override any gcc2 internal prototype to avoid an error.  */
-#ifdef __cplusplus
-extern "C"
-{
-#endif
-/* We use char because int might match the return type of a gcc2
-   builtin and then its argument prototype would still apply.  */
-char $ac_func ();
-/* The GNU C library defines this for functions which it implements
-    to always fail with ENOSYS.  Some functions are actually named
-    something starting with __ and the normal name is an alias.  */
-#if defined (__stub_$ac_func) || defined (__stub___$ac_func)
-choke me
-#else
-char (*f) () = $ac_func;
-#endif
-#ifdef __cplusplus
-}
-#endif
-
-int
-main ()
-{
-return f != $ac_func;
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest$ac_exeext'
-  { (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
-  eval "$as_ac_var=yes"
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-eval "$as_ac_var=no"
-fi
-rm -f conftest.err conftest.$ac_objext \
-      conftest$ac_exeext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_var'}'`" >&5
-echo "${ECHO_T}`eval echo '${'$as_ac_var'}'`" >&6
-if test `eval echo '${'$as_ac_var'}'` = yes; then
-  cat >>confdefs.h <<_ACEOF
-@%:@define `echo "HAVE_$ac_func" | $as_tr_cpp` 1
-_ACEOF
-fi
-done
-
-fi
-
-echo "$as_me:$LINENO: checking whether sys_siglist is declared" >&5
-echo $ECHO_N "checking whether sys_siglist is declared... $ECHO_C" >&6
-if test "${ac_cv_have_decl_sys_siglist+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <signal.h>
-/* NetBSD declares sys_siglist in unistd.h.  */
-#if HAVE_UNISTD_H
-# include <unistd.h>
-#endif
-
-
-int
-main ()
-{
-#ifndef sys_siglist
-  char *p = (char *) sys_siglist;
-#endif
-
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_cv_have_decl_sys_siglist=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_cv_have_decl_sys_siglist=no
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: $ac_cv_have_decl_sys_siglist" >&5
-echo "${ECHO_T}$ac_cv_have_decl_sys_siglist" >&6
-if test $ac_cv_have_decl_sys_siglist = yes; then
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define HAVE_DECL_SYS_SIGLIST 1
-_ACEOF
-
-
-else
-  cat >>confdefs.h <<_ACEOF
-@%:@define HAVE_DECL_SYS_SIGLIST 0
-_ACEOF
-
-
-fi
-
-
-
-
-if test "$ac_cv_func_inet_aton" != 'yes'; then
-
-echo "$as_me:$LINENO: checking for inet_aton" >&5
-echo $ECHO_N "checking for inet_aton... $ECHO_C" >&6
-if test "${bash_cv_func_inet_aton+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-
-#include <sys/types.h>
-#include <netinet/in.h>
-#include <arpa/inet.h>
-struct in_addr ap;
-int
-main ()
-{
- inet_aton("127.0.0.1", &ap); 
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest$ac_exeext'
-  { (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
-  bash_cv_func_inet_aton=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-bash_cv_func_inet_aton=no
-fi
-rm -f conftest.err conftest.$ac_objext \
-      conftest$ac_exeext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: $bash_cv_func_inet_aton" >&5
-echo "${ECHO_T}$bash_cv_func_inet_aton" >&6
-if test $bash_cv_func_inet_aton = yes; then
-  cat >>confdefs.h <<\_ACEOF
-@%:@define HAVE_INET_ATON 1
-_ACEOF
-
-else
-  case $LIB@&t@OBJS in
-    "inet_aton.$ac_objext"   | \
-  *" inet_aton.$ac_objext"   | \
-    "inet_aton.$ac_objext "* | \
-  *" inet_aton.$ac_objext "* ) ;;
-  *) LIB@&t@OBJS="$LIB@&t@OBJS inet_aton.$ac_objext" ;;
-esac
-
-fi
-
-fi
-
-case "$host_os" in
-irix4*)        
-echo "$as_me:$LINENO: checking for getpwent in -lsun" >&5
-echo $ECHO_N "checking for getpwent in -lsun... $ECHO_C" >&6
-if test "${ac_cv_lib_sun_getpwent+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  ac_check_lib_save_LIBS=$LIBS
-LIBS="-lsun  $LIBS"
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-
-/* Override any gcc2 internal prototype to avoid an error.  */
-#ifdef __cplusplus
-extern "C"
-#endif
-/* We use char because int might match the return type of a gcc2
-   builtin and then its argument prototype would still apply.  */
-char getpwent ();
-int
-main ()
-{
-getpwent ();
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest$ac_exeext'
-  { (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
-  ac_cv_lib_sun_getpwent=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_cv_lib_sun_getpwent=no
-fi
-rm -f conftest.err conftest.$ac_objext \
-      conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-echo "$as_me:$LINENO: result: $ac_cv_lib_sun_getpwent" >&5
-echo "${ECHO_T}$ac_cv_lib_sun_getpwent" >&6
-if test $ac_cv_lib_sun_getpwent = yes; then
-  cat >>confdefs.h <<_ACEOF
-@%:@define HAVE_LIBSUN 1
-_ACEOF
-
-  LIBS="-lsun $LIBS"
-
-fi
- ;;
-esac
-
-if test "$ac_cv_func_getpeername" = no; then
-       
-if test "X$bash_cv_have_socklib" = "X"; then
-_bash_needmsg=
-else
-echo "$as_me:$LINENO: checking for socket library" >&5
-echo $ECHO_N "checking for socket library... $ECHO_C" >&6
-_bash_needmsg=yes
-fi
-if test "${bash_cv_have_socklib+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  echo "$as_me:$LINENO: checking for getpeername in -lsocket" >&5
-echo $ECHO_N "checking for getpeername in -lsocket... $ECHO_C" >&6
-if test "${ac_cv_lib_socket_getpeername+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  ac_check_lib_save_LIBS=$LIBS
-LIBS="-lsocket -lnsl $LIBS"
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-
-/* Override any gcc2 internal prototype to avoid an error.  */
-#ifdef __cplusplus
-extern "C"
-#endif
-/* We use char because int might match the return type of a gcc2
-   builtin and then its argument prototype would still apply.  */
-char getpeername ();
-int
-main ()
-{
-getpeername ();
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest$ac_exeext'
-  { (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
-  ac_cv_lib_socket_getpeername=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_cv_lib_socket_getpeername=no
-fi
-rm -f conftest.err conftest.$ac_objext \
-      conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-echo "$as_me:$LINENO: result: $ac_cv_lib_socket_getpeername" >&5
-echo "${ECHO_T}$ac_cv_lib_socket_getpeername" >&6
-if test $ac_cv_lib_socket_getpeername = yes; then
-  bash_cv_have_socklib=yes
-else
-  bash_cv_have_socklib=no
-fi
-
-fi
-
-if test "X$_bash_needmsg" = Xyes; then
-  echo "$as_me:$LINENO: result: $bash_cv_have_socklib" >&5
-echo "${ECHO_T}$bash_cv_have_socklib" >&6
-  _bash_needmsg=
-fi
-if test $bash_cv_have_socklib = yes; then
-  # check for libnsl, add it to LIBS if present
-  if test "X$bash_cv_have_libnsl" = "X"; then
-    _bash_needmsg=
-  else
-    echo "$as_me:$LINENO: checking for libnsl" >&5
-echo $ECHO_N "checking for libnsl... $ECHO_C" >&6
-    _bash_needmsg=yes
-  fi
-  if test "${bash_cv_have_libnsl+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  echo "$as_me:$LINENO: checking for t_open in -lnsl" >&5
-echo $ECHO_N "checking for t_open in -lnsl... $ECHO_C" >&6
-if test "${ac_cv_lib_nsl_t_open+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  ac_check_lib_save_LIBS=$LIBS
-LIBS="-lnsl  $LIBS"
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-
-/* Override any gcc2 internal prototype to avoid an error.  */
-#ifdef __cplusplus
-extern "C"
-#endif
-/* We use char because int might match the return type of a gcc2
-   builtin and then its argument prototype would still apply.  */
-char t_open ();
-int
-main ()
-{
-t_open ();
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest$ac_exeext'
-  { (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
-  ac_cv_lib_nsl_t_open=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_cv_lib_nsl_t_open=no
-fi
-rm -f conftest.err conftest.$ac_objext \
-      conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-echo "$as_me:$LINENO: result: $ac_cv_lib_nsl_t_open" >&5
-echo "${ECHO_T}$ac_cv_lib_nsl_t_open" >&6
-if test $ac_cv_lib_nsl_t_open = yes; then
-  bash_cv_have_libnsl=yes
-else
-  bash_cv_have_libnsl=no
-fi
-
-fi
-
-  if test "X$_bash_needmsg" = Xyes; then
-    echo "$as_me:$LINENO: result: $bash_cv_have_libnsl" >&5
-echo "${ECHO_T}$bash_cv_have_libnsl" >&6
-    _bash_needmsg=
-  fi
-  if test $bash_cv_have_libnsl = yes; then
-    LIBS="-lsocket -lnsl $LIBS"
-  else
-    LIBS="-lsocket $LIBS"
-  fi
-  cat >>confdefs.h <<\_ACEOF
-@%:@define HAVE_LIBSOCKET 1
-_ACEOF
-
-  cat >>confdefs.h <<\_ACEOF
-@%:@define HAVE_GETPEERNAME 1
-_ACEOF
-
-fi
-
-fi
-if test "$ac_cv_func_gethostbyname" = no; then
-       if test "X$bash_cv_have_gethostbyname" = "X"; then
-_bash_needmsg=yes
-else
-echo "$as_me:$LINENO: checking for gethostbyname in socket library" >&5
-echo $ECHO_N "checking for gethostbyname in socket library... $ECHO_C" >&6
-_bash_needmsg=
-fi
-if test "${bash_cv_have_gethostbyname+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <netdb.h>
-int
-main ()
-{
- struct hostent *hp;
-  hp = gethostbyname("localhost");
-
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest$ac_exeext'
-  { (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
-  bash_cv_have_gethostbyname=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-bash_cv_have_gethostbyname=no
-fi
-rm -f conftest.err conftest.$ac_objext \
-      conftest$ac_exeext conftest.$ac_ext
-
-fi
-
-if test "X$_bash_needmsg" = Xyes; then
-    echo "$as_me:$LINENO: checking for gethostbyname in socket library" >&5
-echo $ECHO_N "checking for gethostbyname in socket library... $ECHO_C" >&6
-fi
-echo "$as_me:$LINENO: result: $bash_cv_have_gethostbyname" >&5
-echo "${ECHO_T}$bash_cv_have_gethostbyname" >&6
-if test "$bash_cv_have_gethostbyname" = yes; then
-cat >>confdefs.h <<\_ACEOF
-@%:@define HAVE_GETHOSTBYNAME 1
-_ACEOF
-
-fi
-
-fi
-
-echo "$as_me:$LINENO: checking for uid_t in sys/types.h" >&5
-echo $ECHO_N "checking for uid_t in sys/types.h... $ECHO_C" >&6
-if test "${ac_cv_type_uid_t+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <sys/types.h>
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "uid_t" >/dev/null 2>&1; then
-  ac_cv_type_uid_t=yes
-else
-  ac_cv_type_uid_t=no
-fi
-rm -f conftest*
-
-fi
-echo "$as_me:$LINENO: result: $ac_cv_type_uid_t" >&5
-echo "${ECHO_T}$ac_cv_type_uid_t" >&6
-if test $ac_cv_type_uid_t = no; then
-  
-cat >>confdefs.h <<\_ACEOF
-@%:@define uid_t int
-_ACEOF
-
-  
-cat >>confdefs.h <<\_ACEOF
-@%:@define gid_t int
-_ACEOF
-
-fi
-
-echo "$as_me:$LINENO: checking type of array argument to getgroups" >&5
-echo $ECHO_N "checking type of array argument to getgroups... $ECHO_C" >&6
-if test "${ac_cv_type_getgroups+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  if test "$cross_compiling" = yes; then
-  ac_cv_type_getgroups=cross
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-/* Thanks to Mike Rendell for this test.  */
-#include <sys/types.h>
-#define NGID 256
-#undef MAX
-#define MAX(x, y) ((x) > (y) ? (x) : (y))
-
-int
-main ()
-{
-  gid_t gidset[NGID];
-  int i, n;
-  union { gid_t gval; long lval; }  val;
-
-  val.lval = -1;
-  for (i = 0; i < NGID; i++)
-    gidset[i] = val.gval;
-  n = getgroups (sizeof (gidset) / MAX (sizeof (int), sizeof (gid_t)) - 1,
-                gidset);
-  /* Exit non-zero if getgroups seems to require an array of ints.  This
-     happens when gid_t is short but getgroups modifies an array of ints.  */
-  exit ((n > 0 && gidset[n] != val.gval) ? 1 : 0);
-}
-_ACEOF
-rm -f conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>&5
-  ac_status=$?
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
-  { (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
-  ac_cv_type_getgroups=gid_t
-else
-  echo "$as_me: program exited with status $ac_status" >&5
-echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-( exit $ac_status )
-ac_cv_type_getgroups=int
-fi
-rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
-fi
-if test $ac_cv_type_getgroups = cross; then
-        cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <unistd.h>
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "getgroups.*int.*gid_t" >/dev/null 2>&1; then
-  ac_cv_type_getgroups=gid_t
-else
-  ac_cv_type_getgroups=int
-fi
-rm -f conftest*
-
-fi
-fi
-echo "$as_me:$LINENO: result: $ac_cv_type_getgroups" >&5
-echo "${ECHO_T}$ac_cv_type_getgroups" >&6
-
-cat >>confdefs.h <<_ACEOF
-@%:@define GETGROUPS_T $ac_cv_type_getgroups
-_ACEOF
-
-
-echo "$as_me:$LINENO: checking for off_t" >&5
-echo $ECHO_N "checking for off_t... $ECHO_C" >&6
-if test "${ac_cv_type_off_t+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-int
-main ()
-{
-if ((off_t *) 0)
-  return 0;
-if (sizeof (off_t))
-  return 0;
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_cv_type_off_t=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_cv_type_off_t=no
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: $ac_cv_type_off_t" >&5
-echo "${ECHO_T}$ac_cv_type_off_t" >&6
-if test $ac_cv_type_off_t = yes; then
-  :
-else
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define off_t long
-_ACEOF
-
-fi
-
-echo "$as_me:$LINENO: checking for mode_t" >&5
-echo $ECHO_N "checking for mode_t... $ECHO_C" >&6
-if test "${ac_cv_type_mode_t+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-int
-main ()
-{
-if ((mode_t *) 0)
-  return 0;
-if (sizeof (mode_t))
-  return 0;
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_cv_type_mode_t=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_cv_type_mode_t=no
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: $ac_cv_type_mode_t" >&5
-echo "${ECHO_T}$ac_cv_type_mode_t" >&6
-if test $ac_cv_type_mode_t = yes; then
-  :
-else
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define mode_t int
-_ACEOF
-
-fi
-
-echo "$as_me:$LINENO: checking for uid_t in sys/types.h" >&5
-echo $ECHO_N "checking for uid_t in sys/types.h... $ECHO_C" >&6
-if test "${ac_cv_type_uid_t+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <sys/types.h>
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "uid_t" >/dev/null 2>&1; then
-  ac_cv_type_uid_t=yes
-else
-  ac_cv_type_uid_t=no
-fi
-rm -f conftest*
-
-fi
-echo "$as_me:$LINENO: result: $ac_cv_type_uid_t" >&5
-echo "${ECHO_T}$ac_cv_type_uid_t" >&6
-if test $ac_cv_type_uid_t = no; then
-  
-cat >>confdefs.h <<\_ACEOF
-@%:@define uid_t int
-_ACEOF
-
-  
-cat >>confdefs.h <<\_ACEOF
-@%:@define gid_t int
-_ACEOF
-
-fi
-
-echo "$as_me:$LINENO: checking for pid_t" >&5
-echo $ECHO_N "checking for pid_t... $ECHO_C" >&6
-if test "${ac_cv_type_pid_t+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-int
-main ()
-{
-if ((pid_t *) 0)
-  return 0;
-if (sizeof (pid_t))
-  return 0;
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_cv_type_pid_t=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_cv_type_pid_t=no
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: $ac_cv_type_pid_t" >&5
-echo "${ECHO_T}$ac_cv_type_pid_t" >&6
-if test $ac_cv_type_pid_t = yes; then
-  :
-else
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define pid_t int
-_ACEOF
-
-fi
-
-echo "$as_me:$LINENO: checking for size_t" >&5
-echo $ECHO_N "checking for size_t... $ECHO_C" >&6
-if test "${ac_cv_type_size_t+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-int
-main ()
-{
-if ((size_t *) 0)
-  return 0;
-if (sizeof (size_t))
-  return 0;
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_cv_type_size_t=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_cv_type_size_t=no
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: $ac_cv_type_size_t" >&5
-echo "${ECHO_T}$ac_cv_type_size_t" >&6
-if test $ac_cv_type_size_t = yes; then
-  :
-else
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define size_t unsigned
-_ACEOF
-
-fi
-
-echo "$as_me:$LINENO: checking for ssize_t" >&5
-echo $ECHO_N "checking for ssize_t... $ECHO_C" >&6
-if test "${ac_cv_type_ssize_t+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-int
-main ()
-{
-if ((ssize_t *) 0)
-  return 0;
-if (sizeof (ssize_t))
-  return 0;
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_cv_type_ssize_t=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_cv_type_ssize_t=no
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: $ac_cv_type_ssize_t" >&5
-echo "${ECHO_T}$ac_cv_type_ssize_t" >&6
-if test $ac_cv_type_ssize_t = yes; then
-  :
-else
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define ssize_t int
-_ACEOF
-
-fi
-
-echo "$as_me:$LINENO: checking for time_t" >&5
-echo $ECHO_N "checking for time_t... $ECHO_C" >&6
-if test "${ac_cv_type_time_t+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-int
-main ()
-{
-if ((time_t *) 0)
-  return 0;
-if (sizeof (time_t))
-  return 0;
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_cv_type_time_t=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_cv_type_time_t=no
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: $ac_cv_type_time_t" >&5
-echo "${ECHO_T}$ac_cv_type_time_t" >&6
-if test $ac_cv_type_time_t = yes; then
-  :
-else
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define time_t long
-_ACEOF
-
-fi
-
-
-
-echo "$as_me:$LINENO: checking for long long" >&5
-echo $ECHO_N "checking for long long... $ECHO_C" >&6
-if test "${bash_cv_type_long_long+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-
-long long ll = 1; int i = 63;
-int
-main ()
-{
-
-long long llm = (long long) -1;
-return ll << i | ll >> i | llm / ll | llm % ll;
-
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest$ac_exeext'
-  { (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
-  bash_cv_type_long_long='long long'
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-bash_cv_type_long_long='long'
-fi
-rm -f conftest.err conftest.$ac_objext \
-      conftest$ac_exeext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: $bash_cv_type_long_long" >&5
-echo "${ECHO_T}$bash_cv_type_long_long" >&6
-if test "$bash_cv_type_long_long" = 'long long'; then
-  cat >>confdefs.h <<\_ACEOF
-@%:@define HAVE_LONG_LONG 1
-_ACEOF
-
-fi
-
-
-echo "$as_me:$LINENO: checking for unsigned long long" >&5
-echo $ECHO_N "checking for unsigned long long... $ECHO_C" >&6
-if test "${bash_cv_type_unsigned_long_long+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-
-unsigned long long ull = 1; int i = 63;
-int
-main ()
-{
-
-unsigned long long ullmax = (unsigned long long) -1;
-return ull << i | ull >> i | ullmax / ull | ullmax % ull;
-
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest$ac_exeext'
-  { (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
-  bash_cv_type_unsigned_long_long='unsigned long long'
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-bash_cv_type_unsigned_long_long='unsigned long'
-fi
-rm -f conftest.err conftest.$ac_objext \
-      conftest$ac_exeext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: $bash_cv_type_unsigned_long_long" >&5
-echo "${ECHO_T}$bash_cv_type_unsigned_long_long" >&6
-if test "$bash_cv_type_unsigned_long_long" = 'unsigned long long'; then
-  cat >>confdefs.h <<\_ACEOF
-@%:@define HAVE_UNSIGNED_LONG_LONG 1
-_ACEOF
-
-fi
-
-
-echo "$as_me:$LINENO: checking return type of signal handlers" >&5
-echo $ECHO_N "checking return type of signal handlers... $ECHO_C" >&6
-if test "${ac_cv_type_signal+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <sys/types.h>
-#include <signal.h>
-#ifdef signal
-# undef signal
-#endif
-#ifdef __cplusplus
-extern "C" void (*signal (int, void (*)(int)))(int);
-#else
-void (*signal ()) ();
-#endif
-
-int
-main ()
-{
-int i;
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_cv_type_signal=void
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_cv_type_signal=int
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: $ac_cv_type_signal" >&5
-echo "${ECHO_T}$ac_cv_type_signal" >&6
-
-cat >>confdefs.h <<_ACEOF
-@%:@define RETSIGTYPE $ac_cv_type_signal
-_ACEOF
-
-
-echo "$as_me:$LINENO: checking for sig_atomic_t in signal.h" >&5
-echo $ECHO_N "checking for sig_atomic_t in signal.h... $ECHO_C" >&6
-if test "${ac_cv_have_sig_atomic_t+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-
-#include <signal.h>
-
-int
-main ()
-{
- sig_atomic_t x; 
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest$ac_exeext'
-  { (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
-  ac_cv_have_sig_atomic_t=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_cv_have_sig_atomic_t=no
-fi
-rm -f conftest.err conftest.$ac_objext \
-      conftest$ac_exeext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: $ac_cv_have_sig_atomic_t" >&5
-echo "${ECHO_T}$ac_cv_have_sig_atomic_t" >&6
-if test "$ac_cv_have_sig_atomic_t" = "no"
-then
-    echo "$as_me:$LINENO: checking for sig_atomic_t" >&5
-echo $ECHO_N "checking for sig_atomic_t... $ECHO_C" >&6
-if test "${ac_cv_type_sig_atomic_t+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-int
-main ()
-{
-if ((sig_atomic_t *) 0)
-  return 0;
-if (sizeof (sig_atomic_t))
-  return 0;
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_cv_type_sig_atomic_t=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_cv_type_sig_atomic_t=no
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: $ac_cv_type_sig_atomic_t" >&5
-echo "${ECHO_T}$ac_cv_type_sig_atomic_t" >&6
-if test $ac_cv_type_sig_atomic_t = yes; then
-  :
-else
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define sig_atomic_t int
-_ACEOF
-
-fi
-
-fi
-
-
-echo "$as_me:$LINENO: checking for char" >&5
-echo $ECHO_N "checking for char... $ECHO_C" >&6
-if test "${ac_cv_type_char+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-int
-main ()
-{
-if ((char *) 0)
-  return 0;
-if (sizeof (char))
-  return 0;
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_cv_type_char=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_cv_type_char=no
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: $ac_cv_type_char" >&5
-echo "${ECHO_T}$ac_cv_type_char" >&6
-
-echo "$as_me:$LINENO: checking size of char" >&5
-echo $ECHO_N "checking size of char... $ECHO_C" >&6
-if test "${ac_cv_sizeof_char+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  if test "$ac_cv_type_char" = yes; then
-  # The cast to unsigned long works around a bug in the HP C Compiler
-  # version HP92453-01 B.11.11.23709.GP, which incorrectly rejects
-  # declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'.
-  # This bug is HP SR number 8606223364.
-  if test "$cross_compiling" = yes; then
-  # Depending upon the size, compute the lo and hi bounds.
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-int
-main ()
-{
-static int test_array @<:@1 - 2 * !(((long) (sizeof (char))) >= 0)@:>@;
-test_array @<:@0@:>@ = 0
-
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_lo=0 ac_mid=0
-  while :; do
-    cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-int
-main ()
-{
-static int test_array @<:@1 - 2 * !(((long) (sizeof (char))) <= $ac_mid)@:>@;
-test_array @<:@0@:>@ = 0
-
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_hi=$ac_mid; break
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_lo=`expr $ac_mid + 1`
-                   if test $ac_lo -le $ac_mid; then
-                     ac_lo= ac_hi=
-                     break
-                   fi
-                   ac_mid=`expr 2 '*' $ac_mid + 1`
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-  done
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-int
-main ()
-{
-static int test_array @<:@1 - 2 * !(((long) (sizeof (char))) < 0)@:>@;
-test_array @<:@0@:>@ = 0
-
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_hi=-1 ac_mid=-1
-  while :; do
-    cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-int
-main ()
-{
-static int test_array @<:@1 - 2 * !(((long) (sizeof (char))) >= $ac_mid)@:>@;
-test_array @<:@0@:>@ = 0
-
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_lo=$ac_mid; break
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_hi=`expr '(' $ac_mid ')' - 1`
-                      if test $ac_mid -le $ac_hi; then
-                        ac_lo= ac_hi=
-                        break
-                      fi
-                      ac_mid=`expr 2 '*' $ac_mid`
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-  done
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_lo= ac_hi=
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-# Binary search between lo and hi bounds.
-while test "x$ac_lo" != "x$ac_hi"; do
-  ac_mid=`expr '(' $ac_hi - $ac_lo ')' / 2 + $ac_lo`
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-int
-main ()
-{
-static int test_array @<:@1 - 2 * !(((long) (sizeof (char))) <= $ac_mid)@:>@;
-test_array @<:@0@:>@ = 0
-
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_hi=$ac_mid
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_lo=`expr '(' $ac_mid ')' + 1`
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-done
-case $ac_lo in
-?*) ac_cv_sizeof_char=$ac_lo;;
-'') { { echo "$as_me:$LINENO: error: cannot compute sizeof (char), 77
-See \`config.log' for more details." >&5
-echo "$as_me: error: cannot compute sizeof (char), 77
-See \`config.log' for more details." >&2;}
-   { (exit 1); exit 1; }; } ;;
-esac
-else
-  if test "$cross_compiling" = yes; then
-  { { echo "$as_me:$LINENO: error: cannot run test program while cross compiling
-See \`config.log' for more details." >&5
-echo "$as_me: error: cannot run test program while cross compiling
-See \`config.log' for more details." >&2;}
-   { (exit 1); exit 1; }; }
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-long longval () { return (long) (sizeof (char)); }
-unsigned long ulongval () { return (long) (sizeof (char)); }
-@%:@include <stdio.h>
-@%:@include <stdlib.h>
-int
-main ()
-{
-
-  FILE *f = fopen ("conftest.val", "w");
-  if (! f)
-    exit (1);
-  if (((long) (sizeof (char))) < 0)
-    {
-      long i = longval ();
-      if (i != ((long) (sizeof (char))))
-       exit (1);
-      fprintf (f, "%ld\n", i);
-    }
-  else
-    {
-      unsigned long i = ulongval ();
-      if (i != ((long) (sizeof (char))))
-       exit (1);
-      fprintf (f, "%lu\n", i);
-    }
-  exit (ferror (f) || fclose (f) != 0);
-
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>&5
-  ac_status=$?
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
-  { (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
-  ac_cv_sizeof_char=`cat conftest.val`
-else
-  echo "$as_me: program exited with status $ac_status" >&5
-echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-( exit $ac_status )
-{ { echo "$as_me:$LINENO: error: cannot compute sizeof (char), 77
-See \`config.log' for more details." >&5
-echo "$as_me: error: cannot compute sizeof (char), 77
-See \`config.log' for more details." >&2;}
-   { (exit 1); exit 1; }; }
-fi
-rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
-fi
-fi
-rm -f conftest.val
-else
-  ac_cv_sizeof_char=0
-fi
-fi
-echo "$as_me:$LINENO: result: $ac_cv_sizeof_char" >&5
-echo "${ECHO_T}$ac_cv_sizeof_char" >&6
-cat >>confdefs.h <<_ACEOF
-@%:@define SIZEOF_CHAR $ac_cv_sizeof_char
-_ACEOF
-
-
-echo "$as_me:$LINENO: checking for short" >&5
-echo $ECHO_N "checking for short... $ECHO_C" >&6
-if test "${ac_cv_type_short+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-int
-main ()
-{
-if ((short *) 0)
-  return 0;
-if (sizeof (short))
-  return 0;
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_cv_type_short=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_cv_type_short=no
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: $ac_cv_type_short" >&5
-echo "${ECHO_T}$ac_cv_type_short" >&6
-
-echo "$as_me:$LINENO: checking size of short" >&5
-echo $ECHO_N "checking size of short... $ECHO_C" >&6
-if test "${ac_cv_sizeof_short+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  if test "$ac_cv_type_short" = yes; then
-  # The cast to unsigned long works around a bug in the HP C Compiler
-  # version HP92453-01 B.11.11.23709.GP, which incorrectly rejects
-  # declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'.
-  # This bug is HP SR number 8606223364.
-  if test "$cross_compiling" = yes; then
-  # Depending upon the size, compute the lo and hi bounds.
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-int
-main ()
-{
-static int test_array @<:@1 - 2 * !(((long) (sizeof (short))) >= 0)@:>@;
-test_array @<:@0@:>@ = 0
-
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_lo=0 ac_mid=0
-  while :; do
-    cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-int
-main ()
-{
-static int test_array @<:@1 - 2 * !(((long) (sizeof (short))) <= $ac_mid)@:>@;
-test_array @<:@0@:>@ = 0
-
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_hi=$ac_mid; break
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_lo=`expr $ac_mid + 1`
-                   if test $ac_lo -le $ac_mid; then
-                     ac_lo= ac_hi=
-                     break
-                   fi
-                   ac_mid=`expr 2 '*' $ac_mid + 1`
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-  done
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-int
-main ()
-{
-static int test_array @<:@1 - 2 * !(((long) (sizeof (short))) < 0)@:>@;
-test_array @<:@0@:>@ = 0
-
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_hi=-1 ac_mid=-1
-  while :; do
-    cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-int
-main ()
-{
-static int test_array @<:@1 - 2 * !(((long) (sizeof (short))) >= $ac_mid)@:>@;
-test_array @<:@0@:>@ = 0
-
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_lo=$ac_mid; break
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_hi=`expr '(' $ac_mid ')' - 1`
-                      if test $ac_mid -le $ac_hi; then
-                        ac_lo= ac_hi=
-                        break
-                      fi
-                      ac_mid=`expr 2 '*' $ac_mid`
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-  done
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_lo= ac_hi=
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-# Binary search between lo and hi bounds.
-while test "x$ac_lo" != "x$ac_hi"; do
-  ac_mid=`expr '(' $ac_hi - $ac_lo ')' / 2 + $ac_lo`
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-int
-main ()
-{
-static int test_array @<:@1 - 2 * !(((long) (sizeof (short))) <= $ac_mid)@:>@;
-test_array @<:@0@:>@ = 0
-
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_hi=$ac_mid
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_lo=`expr '(' $ac_mid ')' + 1`
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-done
-case $ac_lo in
-?*) ac_cv_sizeof_short=$ac_lo;;
-'') { { echo "$as_me:$LINENO: error: cannot compute sizeof (short), 77
-See \`config.log' for more details." >&5
-echo "$as_me: error: cannot compute sizeof (short), 77
-See \`config.log' for more details." >&2;}
-   { (exit 1); exit 1; }; } ;;
-esac
-else
-  if test "$cross_compiling" = yes; then
-  { { echo "$as_me:$LINENO: error: cannot run test program while cross compiling
-See \`config.log' for more details." >&5
-echo "$as_me: error: cannot run test program while cross compiling
-See \`config.log' for more details." >&2;}
-   { (exit 1); exit 1; }; }
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-long longval () { return (long) (sizeof (short)); }
-unsigned long ulongval () { return (long) (sizeof (short)); }
-@%:@include <stdio.h>
-@%:@include <stdlib.h>
-int
-main ()
-{
-
-  FILE *f = fopen ("conftest.val", "w");
-  if (! f)
-    exit (1);
-  if (((long) (sizeof (short))) < 0)
-    {
-      long i = longval ();
-      if (i != ((long) (sizeof (short))))
-       exit (1);
-      fprintf (f, "%ld\n", i);
-    }
-  else
-    {
-      unsigned long i = ulongval ();
-      if (i != ((long) (sizeof (short))))
-       exit (1);
-      fprintf (f, "%lu\n", i);
-    }
-  exit (ferror (f) || fclose (f) != 0);
-
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>&5
-  ac_status=$?
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
-  { (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
-  ac_cv_sizeof_short=`cat conftest.val`
-else
-  echo "$as_me: program exited with status $ac_status" >&5
-echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-( exit $ac_status )
-{ { echo "$as_me:$LINENO: error: cannot compute sizeof (short), 77
-See \`config.log' for more details." >&5
-echo "$as_me: error: cannot compute sizeof (short), 77
-See \`config.log' for more details." >&2;}
-   { (exit 1); exit 1; }; }
-fi
-rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
-fi
-fi
-rm -f conftest.val
-else
-  ac_cv_sizeof_short=0
-fi
-fi
-echo "$as_me:$LINENO: result: $ac_cv_sizeof_short" >&5
-echo "${ECHO_T}$ac_cv_sizeof_short" >&6
-cat >>confdefs.h <<_ACEOF
-@%:@define SIZEOF_SHORT $ac_cv_sizeof_short
-_ACEOF
-
-
-echo "$as_me:$LINENO: checking for int" >&5
-echo $ECHO_N "checking for int... $ECHO_C" >&6
-if test "${ac_cv_type_int+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-int
-main ()
-{
-if ((int *) 0)
-  return 0;
-if (sizeof (int))
-  return 0;
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_cv_type_int=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_cv_type_int=no
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: $ac_cv_type_int" >&5
-echo "${ECHO_T}$ac_cv_type_int" >&6
-
-echo "$as_me:$LINENO: checking size of int" >&5
-echo $ECHO_N "checking size of int... $ECHO_C" >&6
-if test "${ac_cv_sizeof_int+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  if test "$ac_cv_type_int" = yes; then
-  # The cast to unsigned long works around a bug in the HP C Compiler
-  # version HP92453-01 B.11.11.23709.GP, which incorrectly rejects
-  # declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'.
-  # This bug is HP SR number 8606223364.
-  if test "$cross_compiling" = yes; then
-  # Depending upon the size, compute the lo and hi bounds.
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-int
-main ()
-{
-static int test_array @<:@1 - 2 * !(((long) (sizeof (int))) >= 0)@:>@;
-test_array @<:@0@:>@ = 0
-
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_lo=0 ac_mid=0
-  while :; do
-    cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-int
-main ()
-{
-static int test_array @<:@1 - 2 * !(((long) (sizeof (int))) <= $ac_mid)@:>@;
-test_array @<:@0@:>@ = 0
-
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_hi=$ac_mid; break
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_lo=`expr $ac_mid + 1`
-                   if test $ac_lo -le $ac_mid; then
-                     ac_lo= ac_hi=
-                     break
-                   fi
-                   ac_mid=`expr 2 '*' $ac_mid + 1`
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-  done
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-int
-main ()
-{
-static int test_array @<:@1 - 2 * !(((long) (sizeof (int))) < 0)@:>@;
-test_array @<:@0@:>@ = 0
-
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_hi=-1 ac_mid=-1
-  while :; do
-    cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-int
-main ()
-{
-static int test_array @<:@1 - 2 * !(((long) (sizeof (int))) >= $ac_mid)@:>@;
-test_array @<:@0@:>@ = 0
-
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_lo=$ac_mid; break
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_hi=`expr '(' $ac_mid ')' - 1`
-                      if test $ac_mid -le $ac_hi; then
-                        ac_lo= ac_hi=
-                        break
-                      fi
-                      ac_mid=`expr 2 '*' $ac_mid`
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-  done
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_lo= ac_hi=
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-# Binary search between lo and hi bounds.
-while test "x$ac_lo" != "x$ac_hi"; do
-  ac_mid=`expr '(' $ac_hi - $ac_lo ')' / 2 + $ac_lo`
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-int
-main ()
-{
-static int test_array @<:@1 - 2 * !(((long) (sizeof (int))) <= $ac_mid)@:>@;
-test_array @<:@0@:>@ = 0
-
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_hi=$ac_mid
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_lo=`expr '(' $ac_mid ')' + 1`
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-done
-case $ac_lo in
-?*) ac_cv_sizeof_int=$ac_lo;;
-'') { { echo "$as_me:$LINENO: error: cannot compute sizeof (int), 77
-See \`config.log' for more details." >&5
-echo "$as_me: error: cannot compute sizeof (int), 77
-See \`config.log' for more details." >&2;}
-   { (exit 1); exit 1; }; } ;;
-esac
-else
-  if test "$cross_compiling" = yes; then
-  { { echo "$as_me:$LINENO: error: cannot run test program while cross compiling
-See \`config.log' for more details." >&5
-echo "$as_me: error: cannot run test program while cross compiling
-See \`config.log' for more details." >&2;}
-   { (exit 1); exit 1; }; }
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-long longval () { return (long) (sizeof (int)); }
-unsigned long ulongval () { return (long) (sizeof (int)); }
-@%:@include <stdio.h>
-@%:@include <stdlib.h>
-int
-main ()
-{
-
-  FILE *f = fopen ("conftest.val", "w");
-  if (! f)
-    exit (1);
-  if (((long) (sizeof (int))) < 0)
-    {
-      long i = longval ();
-      if (i != ((long) (sizeof (int))))
-       exit (1);
-      fprintf (f, "%ld\n", i);
-    }
-  else
-    {
-      unsigned long i = ulongval ();
-      if (i != ((long) (sizeof (int))))
-       exit (1);
-      fprintf (f, "%lu\n", i);
-    }
-  exit (ferror (f) || fclose (f) != 0);
-
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>&5
-  ac_status=$?
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
-  { (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
-  ac_cv_sizeof_int=`cat conftest.val`
-else
-  echo "$as_me: program exited with status $ac_status" >&5
-echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-( exit $ac_status )
-{ { echo "$as_me:$LINENO: error: cannot compute sizeof (int), 77
-See \`config.log' for more details." >&5
-echo "$as_me: error: cannot compute sizeof (int), 77
-See \`config.log' for more details." >&2;}
-   { (exit 1); exit 1; }; }
-fi
-rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
-fi
-fi
-rm -f conftest.val
-else
-  ac_cv_sizeof_int=0
-fi
-fi
-echo "$as_me:$LINENO: result: $ac_cv_sizeof_int" >&5
-echo "${ECHO_T}$ac_cv_sizeof_int" >&6
-cat >>confdefs.h <<_ACEOF
-@%:@define SIZEOF_INT $ac_cv_sizeof_int
-_ACEOF
-
-
-echo "$as_me:$LINENO: checking for long" >&5
-echo $ECHO_N "checking for long... $ECHO_C" >&6
-if test "${ac_cv_type_long+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-int
-main ()
-{
-if ((long *) 0)
-  return 0;
-if (sizeof (long))
-  return 0;
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_cv_type_long=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_cv_type_long=no
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: $ac_cv_type_long" >&5
-echo "${ECHO_T}$ac_cv_type_long" >&6
-
-echo "$as_me:$LINENO: checking size of long" >&5
-echo $ECHO_N "checking size of long... $ECHO_C" >&6
-if test "${ac_cv_sizeof_long+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  if test "$ac_cv_type_long" = yes; then
-  # The cast to unsigned long works around a bug in the HP C Compiler
-  # version HP92453-01 B.11.11.23709.GP, which incorrectly rejects
-  # declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'.
-  # This bug is HP SR number 8606223364.
-  if test "$cross_compiling" = yes; then
-  # Depending upon the size, compute the lo and hi bounds.
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-int
-main ()
-{
-static int test_array @<:@1 - 2 * !(((long) (sizeof (long))) >= 0)@:>@;
-test_array @<:@0@:>@ = 0
-
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_lo=0 ac_mid=0
-  while :; do
-    cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-int
-main ()
-{
-static int test_array @<:@1 - 2 * !(((long) (sizeof (long))) <= $ac_mid)@:>@;
-test_array @<:@0@:>@ = 0
-
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_hi=$ac_mid; break
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_lo=`expr $ac_mid + 1`
-                   if test $ac_lo -le $ac_mid; then
-                     ac_lo= ac_hi=
-                     break
-                   fi
-                   ac_mid=`expr 2 '*' $ac_mid + 1`
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-  done
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-int
-main ()
-{
-static int test_array @<:@1 - 2 * !(((long) (sizeof (long))) < 0)@:>@;
-test_array @<:@0@:>@ = 0
-
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_hi=-1 ac_mid=-1
-  while :; do
-    cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-int
-main ()
-{
-static int test_array @<:@1 - 2 * !(((long) (sizeof (long))) >= $ac_mid)@:>@;
-test_array @<:@0@:>@ = 0
-
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_lo=$ac_mid; break
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_hi=`expr '(' $ac_mid ')' - 1`
-                      if test $ac_mid -le $ac_hi; then
-                        ac_lo= ac_hi=
-                        break
-                      fi
-                      ac_mid=`expr 2 '*' $ac_mid`
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-  done
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_lo= ac_hi=
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-# Binary search between lo and hi bounds.
-while test "x$ac_lo" != "x$ac_hi"; do
-  ac_mid=`expr '(' $ac_hi - $ac_lo ')' / 2 + $ac_lo`
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-int
-main ()
-{
-static int test_array @<:@1 - 2 * !(((long) (sizeof (long))) <= $ac_mid)@:>@;
-test_array @<:@0@:>@ = 0
-
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_hi=$ac_mid
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_lo=`expr '(' $ac_mid ')' + 1`
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-done
-case $ac_lo in
-?*) ac_cv_sizeof_long=$ac_lo;;
-'') { { echo "$as_me:$LINENO: error: cannot compute sizeof (long), 77
-See \`config.log' for more details." >&5
-echo "$as_me: error: cannot compute sizeof (long), 77
-See \`config.log' for more details." >&2;}
-   { (exit 1); exit 1; }; } ;;
-esac
-else
-  if test "$cross_compiling" = yes; then
-  { { echo "$as_me:$LINENO: error: cannot run test program while cross compiling
-See \`config.log' for more details." >&5
-echo "$as_me: error: cannot run test program while cross compiling
-See \`config.log' for more details." >&2;}
-   { (exit 1); exit 1; }; }
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-long longval () { return (long) (sizeof (long)); }
-unsigned long ulongval () { return (long) (sizeof (long)); }
-@%:@include <stdio.h>
-@%:@include <stdlib.h>
-int
-main ()
-{
-
-  FILE *f = fopen ("conftest.val", "w");
-  if (! f)
-    exit (1);
-  if (((long) (sizeof (long))) < 0)
-    {
-      long i = longval ();
-      if (i != ((long) (sizeof (long))))
-       exit (1);
-      fprintf (f, "%ld\n", i);
-    }
-  else
-    {
-      unsigned long i = ulongval ();
-      if (i != ((long) (sizeof (long))))
-       exit (1);
-      fprintf (f, "%lu\n", i);
-    }
-  exit (ferror (f) || fclose (f) != 0);
-
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>&5
-  ac_status=$?
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
-  { (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
-  ac_cv_sizeof_long=`cat conftest.val`
-else
-  echo "$as_me: program exited with status $ac_status" >&5
-echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-( exit $ac_status )
-{ { echo "$as_me:$LINENO: error: cannot compute sizeof (long), 77
-See \`config.log' for more details." >&5
-echo "$as_me: error: cannot compute sizeof (long), 77
-See \`config.log' for more details." >&2;}
-   { (exit 1); exit 1; }; }
-fi
-rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
-fi
-fi
-rm -f conftest.val
-else
-  ac_cv_sizeof_long=0
-fi
-fi
-echo "$as_me:$LINENO: result: $ac_cv_sizeof_long" >&5
-echo "${ECHO_T}$ac_cv_sizeof_long" >&6
-cat >>confdefs.h <<_ACEOF
-@%:@define SIZEOF_LONG $ac_cv_sizeof_long
-_ACEOF
-
-
-echo "$as_me:$LINENO: checking for char *" >&5
-echo $ECHO_N "checking for char *... $ECHO_C" >&6
-if test "${ac_cv_type_char_p+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-int
-main ()
-{
-if ((char * *) 0)
-  return 0;
-if (sizeof (char *))
-  return 0;
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_cv_type_char_p=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_cv_type_char_p=no
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: $ac_cv_type_char_p" >&5
-echo "${ECHO_T}$ac_cv_type_char_p" >&6
-
-echo "$as_me:$LINENO: checking size of char *" >&5
-echo $ECHO_N "checking size of char *... $ECHO_C" >&6
-if test "${ac_cv_sizeof_char_p+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  if test "$ac_cv_type_char_p" = yes; then
-  # The cast to unsigned long works around a bug in the HP C Compiler
-  # version HP92453-01 B.11.11.23709.GP, which incorrectly rejects
-  # declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'.
-  # This bug is HP SR number 8606223364.
-  if test "$cross_compiling" = yes; then
-  # Depending upon the size, compute the lo and hi bounds.
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-int
-main ()
-{
-static int test_array @<:@1 - 2 * !(((long) (sizeof (char *))) >= 0)@:>@;
-test_array @<:@0@:>@ = 0
-
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_lo=0 ac_mid=0
-  while :; do
-    cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-int
-main ()
-{
-static int test_array @<:@1 - 2 * !(((long) (sizeof (char *))) <= $ac_mid)@:>@;
-test_array @<:@0@:>@ = 0
-
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_hi=$ac_mid; break
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_lo=`expr $ac_mid + 1`
-                   if test $ac_lo -le $ac_mid; then
-                     ac_lo= ac_hi=
-                     break
-                   fi
-                   ac_mid=`expr 2 '*' $ac_mid + 1`
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-  done
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-int
-main ()
-{
-static int test_array @<:@1 - 2 * !(((long) (sizeof (char *))) < 0)@:>@;
-test_array @<:@0@:>@ = 0
-
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_hi=-1 ac_mid=-1
-  while :; do
-    cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-int
-main ()
-{
-static int test_array @<:@1 - 2 * !(((long) (sizeof (char *))) >= $ac_mid)@:>@;
-test_array @<:@0@:>@ = 0
-
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_lo=$ac_mid; break
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_hi=`expr '(' $ac_mid ')' - 1`
-                      if test $ac_mid -le $ac_hi; then
-                        ac_lo= ac_hi=
-                        break
-                      fi
-                      ac_mid=`expr 2 '*' $ac_mid`
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-  done
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_lo= ac_hi=
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-# Binary search between lo and hi bounds.
-while test "x$ac_lo" != "x$ac_hi"; do
-  ac_mid=`expr '(' $ac_hi - $ac_lo ')' / 2 + $ac_lo`
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-int
-main ()
-{
-static int test_array @<:@1 - 2 * !(((long) (sizeof (char *))) <= $ac_mid)@:>@;
-test_array @<:@0@:>@ = 0
-
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_hi=$ac_mid
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_lo=`expr '(' $ac_mid ')' + 1`
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-done
-case $ac_lo in
-?*) ac_cv_sizeof_char_p=$ac_lo;;
-'') { { echo "$as_me:$LINENO: error: cannot compute sizeof (char *), 77
-See \`config.log' for more details." >&5
-echo "$as_me: error: cannot compute sizeof (char *), 77
-See \`config.log' for more details." >&2;}
-   { (exit 1); exit 1; }; } ;;
-esac
-else
-  if test "$cross_compiling" = yes; then
-  { { echo "$as_me:$LINENO: error: cannot run test program while cross compiling
-See \`config.log' for more details." >&5
-echo "$as_me: error: cannot run test program while cross compiling
-See \`config.log' for more details." >&2;}
-   { (exit 1); exit 1; }; }
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-long longval () { return (long) (sizeof (char *)); }
-unsigned long ulongval () { return (long) (sizeof (char *)); }
-@%:@include <stdio.h>
-@%:@include <stdlib.h>
-int
-main ()
-{
-
-  FILE *f = fopen ("conftest.val", "w");
-  if (! f)
-    exit (1);
-  if (((long) (sizeof (char *))) < 0)
-    {
-      long i = longval ();
-      if (i != ((long) (sizeof (char *))))
-       exit (1);
-      fprintf (f, "%ld\n", i);
-    }
-  else
-    {
-      unsigned long i = ulongval ();
-      if (i != ((long) (sizeof (char *))))
-       exit (1);
-      fprintf (f, "%lu\n", i);
-    }
-  exit (ferror (f) || fclose (f) != 0);
-
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>&5
-  ac_status=$?
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
-  { (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
-  ac_cv_sizeof_char_p=`cat conftest.val`
-else
-  echo "$as_me: program exited with status $ac_status" >&5
-echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-( exit $ac_status )
-{ { echo "$as_me:$LINENO: error: cannot compute sizeof (char *), 77
-See \`config.log' for more details." >&5
-echo "$as_me: error: cannot compute sizeof (char *), 77
-See \`config.log' for more details." >&2;}
-   { (exit 1); exit 1; }; }
-fi
-rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
-fi
-fi
-rm -f conftest.val
-else
-  ac_cv_sizeof_char_p=0
-fi
-fi
-echo "$as_me:$LINENO: result: $ac_cv_sizeof_char_p" >&5
-echo "${ECHO_T}$ac_cv_sizeof_char_p" >&6
-cat >>confdefs.h <<_ACEOF
-@%:@define SIZEOF_CHAR_P $ac_cv_sizeof_char_p
-_ACEOF
-
-
-echo "$as_me:$LINENO: checking for double" >&5
-echo $ECHO_N "checking for double... $ECHO_C" >&6
-if test "${ac_cv_type_double+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-int
-main ()
-{
-if ((double *) 0)
-  return 0;
-if (sizeof (double))
-  return 0;
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_cv_type_double=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_cv_type_double=no
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: $ac_cv_type_double" >&5
-echo "${ECHO_T}$ac_cv_type_double" >&6
-
-echo "$as_me:$LINENO: checking size of double" >&5
-echo $ECHO_N "checking size of double... $ECHO_C" >&6
-if test "${ac_cv_sizeof_double+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  if test "$ac_cv_type_double" = yes; then
-  # The cast to unsigned long works around a bug in the HP C Compiler
-  # version HP92453-01 B.11.11.23709.GP, which incorrectly rejects
-  # declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'.
-  # This bug is HP SR number 8606223364.
-  if test "$cross_compiling" = yes; then
-  # Depending upon the size, compute the lo and hi bounds.
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-int
-main ()
-{
-static int test_array @<:@1 - 2 * !(((long) (sizeof (double))) >= 0)@:>@;
-test_array @<:@0@:>@ = 0
-
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_lo=0 ac_mid=0
-  while :; do
-    cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-int
-main ()
-{
-static int test_array @<:@1 - 2 * !(((long) (sizeof (double))) <= $ac_mid)@:>@;
-test_array @<:@0@:>@ = 0
-
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_hi=$ac_mid; break
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_lo=`expr $ac_mid + 1`
-                   if test $ac_lo -le $ac_mid; then
-                     ac_lo= ac_hi=
-                     break
-                   fi
-                   ac_mid=`expr 2 '*' $ac_mid + 1`
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-  done
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-int
-main ()
-{
-static int test_array @<:@1 - 2 * !(((long) (sizeof (double))) < 0)@:>@;
-test_array @<:@0@:>@ = 0
-
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_hi=-1 ac_mid=-1
-  while :; do
-    cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-int
-main ()
-{
-static int test_array @<:@1 - 2 * !(((long) (sizeof (double))) >= $ac_mid)@:>@;
-test_array @<:@0@:>@ = 0
-
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_lo=$ac_mid; break
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_hi=`expr '(' $ac_mid ')' - 1`
-                      if test $ac_mid -le $ac_hi; then
-                        ac_lo= ac_hi=
-                        break
-                      fi
-                      ac_mid=`expr 2 '*' $ac_mid`
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-  done
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_lo= ac_hi=
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-# Binary search between lo and hi bounds.
-while test "x$ac_lo" != "x$ac_hi"; do
-  ac_mid=`expr '(' $ac_hi - $ac_lo ')' / 2 + $ac_lo`
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-int
-main ()
-{
-static int test_array @<:@1 - 2 * !(((long) (sizeof (double))) <= $ac_mid)@:>@;
-test_array @<:@0@:>@ = 0
-
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_hi=$ac_mid
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_lo=`expr '(' $ac_mid ')' + 1`
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-done
-case $ac_lo in
-?*) ac_cv_sizeof_double=$ac_lo;;
-'') { { echo "$as_me:$LINENO: error: cannot compute sizeof (double), 77
-See \`config.log' for more details." >&5
-echo "$as_me: error: cannot compute sizeof (double), 77
-See \`config.log' for more details." >&2;}
-   { (exit 1); exit 1; }; } ;;
-esac
-else
-  if test "$cross_compiling" = yes; then
-  { { echo "$as_me:$LINENO: error: cannot run test program while cross compiling
-See \`config.log' for more details." >&5
-echo "$as_me: error: cannot run test program while cross compiling
-See \`config.log' for more details." >&2;}
-   { (exit 1); exit 1; }; }
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-long longval () { return (long) (sizeof (double)); }
-unsigned long ulongval () { return (long) (sizeof (double)); }
-@%:@include <stdio.h>
-@%:@include <stdlib.h>
-int
-main ()
-{
-
-  FILE *f = fopen ("conftest.val", "w");
-  if (! f)
-    exit (1);
-  if (((long) (sizeof (double))) < 0)
-    {
-      long i = longval ();
-      if (i != ((long) (sizeof (double))))
-       exit (1);
-      fprintf (f, "%ld\n", i);
-    }
-  else
-    {
-      unsigned long i = ulongval ();
-      if (i != ((long) (sizeof (double))))
-       exit (1);
-      fprintf (f, "%lu\n", i);
-    }
-  exit (ferror (f) || fclose (f) != 0);
-
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>&5
-  ac_status=$?
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
-  { (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
-  ac_cv_sizeof_double=`cat conftest.val`
-else
-  echo "$as_me: program exited with status $ac_status" >&5
-echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-( exit $ac_status )
-{ { echo "$as_me:$LINENO: error: cannot compute sizeof (double), 77
-See \`config.log' for more details." >&5
-echo "$as_me: error: cannot compute sizeof (double), 77
-See \`config.log' for more details." >&2;}
-   { (exit 1); exit 1; }; }
-fi
-rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
-fi
-fi
-rm -f conftest.val
-else
-  ac_cv_sizeof_double=0
-fi
-fi
-echo "$as_me:$LINENO: result: $ac_cv_sizeof_double" >&5
-echo "${ECHO_T}$ac_cv_sizeof_double" >&6
-cat >>confdefs.h <<_ACEOF
-@%:@define SIZEOF_DOUBLE $ac_cv_sizeof_double
-_ACEOF
-
-
-echo "$as_me:$LINENO: checking for long long" >&5
-echo $ECHO_N "checking for long long... $ECHO_C" >&6
-if test "${ac_cv_type_long_long+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-int
-main ()
-{
-if ((long long *) 0)
-  return 0;
-if (sizeof (long long))
-  return 0;
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_cv_type_long_long=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_cv_type_long_long=no
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: $ac_cv_type_long_long" >&5
-echo "${ECHO_T}$ac_cv_type_long_long" >&6
-
-echo "$as_me:$LINENO: checking size of long long" >&5
-echo $ECHO_N "checking size of long long... $ECHO_C" >&6
-if test "${ac_cv_sizeof_long_long+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  if test "$ac_cv_type_long_long" = yes; then
-  # The cast to unsigned long works around a bug in the HP C Compiler
-  # version HP92453-01 B.11.11.23709.GP, which incorrectly rejects
-  # declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'.
-  # This bug is HP SR number 8606223364.
-  if test "$cross_compiling" = yes; then
-  # Depending upon the size, compute the lo and hi bounds.
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-int
-main ()
-{
-static int test_array @<:@1 - 2 * !(((long) (sizeof (long long))) >= 0)@:>@;
-test_array @<:@0@:>@ = 0
-
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_lo=0 ac_mid=0
-  while :; do
-    cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-int
-main ()
-{
-static int test_array @<:@1 - 2 * !(((long) (sizeof (long long))) <= $ac_mid)@:>@;
-test_array @<:@0@:>@ = 0
-
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_hi=$ac_mid; break
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_lo=`expr $ac_mid + 1`
-                   if test $ac_lo -le $ac_mid; then
-                     ac_lo= ac_hi=
-                     break
-                   fi
-                   ac_mid=`expr 2 '*' $ac_mid + 1`
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-  done
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-int
-main ()
-{
-static int test_array @<:@1 - 2 * !(((long) (sizeof (long long))) < 0)@:>@;
-test_array @<:@0@:>@ = 0
-
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_hi=-1 ac_mid=-1
-  while :; do
-    cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-int
-main ()
-{
-static int test_array @<:@1 - 2 * !(((long) (sizeof (long long))) >= $ac_mid)@:>@;
-test_array @<:@0@:>@ = 0
-
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_lo=$ac_mid; break
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_hi=`expr '(' $ac_mid ')' - 1`
-                      if test $ac_mid -le $ac_hi; then
-                        ac_lo= ac_hi=
-                        break
-                      fi
-                      ac_mid=`expr 2 '*' $ac_mid`
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-  done
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_lo= ac_hi=
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-# Binary search between lo and hi bounds.
-while test "x$ac_lo" != "x$ac_hi"; do
-  ac_mid=`expr '(' $ac_hi - $ac_lo ')' / 2 + $ac_lo`
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-int
-main ()
-{
-static int test_array @<:@1 - 2 * !(((long) (sizeof (long long))) <= $ac_mid)@:>@;
-test_array @<:@0@:>@ = 0
-
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_hi=$ac_mid
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_lo=`expr '(' $ac_mid ')' + 1`
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-done
-case $ac_lo in
-?*) ac_cv_sizeof_long_long=$ac_lo;;
-'') { { echo "$as_me:$LINENO: error: cannot compute sizeof (long long), 77
-See \`config.log' for more details." >&5
-echo "$as_me: error: cannot compute sizeof (long long), 77
-See \`config.log' for more details." >&2;}
-   { (exit 1); exit 1; }; } ;;
-esac
-else
-  if test "$cross_compiling" = yes; then
-  { { echo "$as_me:$LINENO: error: cannot run test program while cross compiling
-See \`config.log' for more details." >&5
-echo "$as_me: error: cannot run test program while cross compiling
-See \`config.log' for more details." >&2;}
-   { (exit 1); exit 1; }; }
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-long longval () { return (long) (sizeof (long long)); }
-unsigned long ulongval () { return (long) (sizeof (long long)); }
-@%:@include <stdio.h>
-@%:@include <stdlib.h>
-int
-main ()
-{
-
-  FILE *f = fopen ("conftest.val", "w");
-  if (! f)
-    exit (1);
-  if (((long) (sizeof (long long))) < 0)
-    {
-      long i = longval ();
-      if (i != ((long) (sizeof (long long))))
-       exit (1);
-      fprintf (f, "%ld\n", i);
-    }
-  else
-    {
-      unsigned long i = ulongval ();
-      if (i != ((long) (sizeof (long long))))
-       exit (1);
-      fprintf (f, "%lu\n", i);
-    }
-  exit (ferror (f) || fclose (f) != 0);
-
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>&5
-  ac_status=$?
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
-  { (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
-  ac_cv_sizeof_long_long=`cat conftest.val`
-else
-  echo "$as_me: program exited with status $ac_status" >&5
-echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-( exit $ac_status )
-{ { echo "$as_me:$LINENO: error: cannot compute sizeof (long long), 77
-See \`config.log' for more details." >&5
-echo "$as_me: error: cannot compute sizeof (long long), 77
-See \`config.log' for more details." >&2;}
-   { (exit 1); exit 1; }; }
-fi
-rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
-fi
-fi
-rm -f conftest.val
-else
-  ac_cv_sizeof_long_long=0
-fi
-fi
-echo "$as_me:$LINENO: result: $ac_cv_sizeof_long_long" >&5
-echo "${ECHO_T}$ac_cv_sizeof_long_long" >&6
-cat >>confdefs.h <<_ACEOF
-@%:@define SIZEOF_LONG_LONG $ac_cv_sizeof_long_long
-_ACEOF
-
-
-
-echo "$as_me:$LINENO: checking for u_int" >&5
-echo $ECHO_N "checking for u_int... $ECHO_C" >&6
-if test "${ac_cv_type_u_int+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-int
-main ()
-{
-if ((u_int *) 0)
-  return 0;
-if (sizeof (u_int))
-  return 0;
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_cv_type_u_int=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_cv_type_u_int=no
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: $ac_cv_type_u_int" >&5
-echo "${ECHO_T}$ac_cv_type_u_int" >&6
-if test $ac_cv_type_u_int = yes; then
-  :
-else
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define u_int unsigned int
-_ACEOF
-
-fi
-
-echo "$as_me:$LINENO: checking for u_long" >&5
-echo $ECHO_N "checking for u_long... $ECHO_C" >&6
-if test "${ac_cv_type_u_long+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-int
-main ()
-{
-if ((u_long *) 0)
-  return 0;
-if (sizeof (u_long))
-  return 0;
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_cv_type_u_long=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_cv_type_u_long=no
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: $ac_cv_type_u_long" >&5
-echo "${ECHO_T}$ac_cv_type_u_long" >&6
-if test $ac_cv_type_u_long = yes; then
-  :
-else
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define u_long unsigned long
-_ACEOF
-
-fi
-
-
-
-if test "$ac_cv_sizeof_short" = 2; then
-  echo "$as_me:$LINENO: checking for bits16_t" >&5
-echo $ECHO_N "checking for bits16_t... $ECHO_C" >&6
-if test "${ac_cv_type_bits16_t+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-int
-main ()
-{
-if ((bits16_t *) 0)
-  return 0;
-if (sizeof (bits16_t))
-  return 0;
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_cv_type_bits16_t=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_cv_type_bits16_t=no
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: $ac_cv_type_bits16_t" >&5
-echo "${ECHO_T}$ac_cv_type_bits16_t" >&6
-if test $ac_cv_type_bits16_t = yes; then
-  :
-else
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define bits16_t short
-_ACEOF
-
-fi
-
-elif test "$ac_cv_sizeof_char" = 2; then
-  echo "$as_me:$LINENO: checking for bits16_t" >&5
-echo $ECHO_N "checking for bits16_t... $ECHO_C" >&6
-if test "${ac_cv_type_bits16_t+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-int
-main ()
-{
-if ((bits16_t *) 0)
-  return 0;
-if (sizeof (bits16_t))
-  return 0;
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_cv_type_bits16_t=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_cv_type_bits16_t=no
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: $ac_cv_type_bits16_t" >&5
-echo "${ECHO_T}$ac_cv_type_bits16_t" >&6
-if test $ac_cv_type_bits16_t = yes; then
-  :
-else
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define bits16_t char
-_ACEOF
-
-fi
-
-else
-  echo "$as_me:$LINENO: checking for bits16_t" >&5
-echo $ECHO_N "checking for bits16_t... $ECHO_C" >&6
-if test "${ac_cv_type_bits16_t+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-int
-main ()
-{
-if ((bits16_t *) 0)
-  return 0;
-if (sizeof (bits16_t))
-  return 0;
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_cv_type_bits16_t=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_cv_type_bits16_t=no
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: $ac_cv_type_bits16_t" >&5
-echo "${ECHO_T}$ac_cv_type_bits16_t" >&6
-if test $ac_cv_type_bits16_t = yes; then
-  :
-else
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define bits16_t short
-_ACEOF
-
-fi
-
-fi
-
-
-if test "$ac_cv_sizeof_short" = 2; then
-  echo "$as_me:$LINENO: checking for u_bits16_t" >&5
-echo $ECHO_N "checking for u_bits16_t... $ECHO_C" >&6
-if test "${ac_cv_type_u_bits16_t+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-int
-main ()
-{
-if ((u_bits16_t *) 0)
-  return 0;
-if (sizeof (u_bits16_t))
-  return 0;
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_cv_type_u_bits16_t=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_cv_type_u_bits16_t=no
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: $ac_cv_type_u_bits16_t" >&5
-echo "${ECHO_T}$ac_cv_type_u_bits16_t" >&6
-if test $ac_cv_type_u_bits16_t = yes; then
-  :
-else
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define u_bits16_t unsigned short
-_ACEOF
-
-fi
-
-elif test "$ac_cv_sizeof_char" = 2; then
-  echo "$as_me:$LINENO: checking for u_bits16_t" >&5
-echo $ECHO_N "checking for u_bits16_t... $ECHO_C" >&6
-if test "${ac_cv_type_u_bits16_t+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-int
-main ()
-{
-if ((u_bits16_t *) 0)
-  return 0;
-if (sizeof (u_bits16_t))
-  return 0;
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_cv_type_u_bits16_t=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_cv_type_u_bits16_t=no
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: $ac_cv_type_u_bits16_t" >&5
-echo "${ECHO_T}$ac_cv_type_u_bits16_t" >&6
-if test $ac_cv_type_u_bits16_t = yes; then
-  :
-else
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define u_bits16_t unsigned char
-_ACEOF
-
-fi
-
-else
-  echo "$as_me:$LINENO: checking for u_bits16_t" >&5
-echo $ECHO_N "checking for u_bits16_t... $ECHO_C" >&6
-if test "${ac_cv_type_u_bits16_t+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-int
-main ()
-{
-if ((u_bits16_t *) 0)
-  return 0;
-if (sizeof (u_bits16_t))
-  return 0;
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_cv_type_u_bits16_t=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_cv_type_u_bits16_t=no
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: $ac_cv_type_u_bits16_t" >&5
-echo "${ECHO_T}$ac_cv_type_u_bits16_t" >&6
-if test $ac_cv_type_u_bits16_t = yes; then
-  :
-else
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define u_bits16_t unsigned short
-_ACEOF
-
-fi
-
-fi
-
-
-if test "$ac_cv_sizeof_int" = 4; then
-  echo "$as_me:$LINENO: checking for bits32_t" >&5
-echo $ECHO_N "checking for bits32_t... $ECHO_C" >&6
-if test "${ac_cv_type_bits32_t+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-int
-main ()
-{
-if ((bits32_t *) 0)
-  return 0;
-if (sizeof (bits32_t))
-  return 0;
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_cv_type_bits32_t=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_cv_type_bits32_t=no
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: $ac_cv_type_bits32_t" >&5
-echo "${ECHO_T}$ac_cv_type_bits32_t" >&6
-if test $ac_cv_type_bits32_t = yes; then
-  :
-else
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define bits32_t int
-_ACEOF
-
-fi
-
-elif test "$ac_cv_sizeof_long" = 4; then
-  echo "$as_me:$LINENO: checking for bits32_t" >&5
-echo $ECHO_N "checking for bits32_t... $ECHO_C" >&6
-if test "${ac_cv_type_bits32_t+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-int
-main ()
-{
-if ((bits32_t *) 0)
-  return 0;
-if (sizeof (bits32_t))
-  return 0;
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_cv_type_bits32_t=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_cv_type_bits32_t=no
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: $ac_cv_type_bits32_t" >&5
-echo "${ECHO_T}$ac_cv_type_bits32_t" >&6
-if test $ac_cv_type_bits32_t = yes; then
-  :
-else
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define bits32_t long
-_ACEOF
-
-fi
-
-else
-  echo "$as_me:$LINENO: checking for bits32_t" >&5
-echo $ECHO_N "checking for bits32_t... $ECHO_C" >&6
-if test "${ac_cv_type_bits32_t+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-int
-main ()
-{
-if ((bits32_t *) 0)
-  return 0;
-if (sizeof (bits32_t))
-  return 0;
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_cv_type_bits32_t=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_cv_type_bits32_t=no
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: $ac_cv_type_bits32_t" >&5
-echo "${ECHO_T}$ac_cv_type_bits32_t" >&6
-if test $ac_cv_type_bits32_t = yes; then
-  :
-else
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define bits32_t int
-_ACEOF
-
-fi
-
-fi
-
-
-if test "$ac_cv_sizeof_int" = 4; then
-  echo "$as_me:$LINENO: checking for u_bits32_t" >&5
-echo $ECHO_N "checking for u_bits32_t... $ECHO_C" >&6
-if test "${ac_cv_type_u_bits32_t+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-int
-main ()
-{
-if ((u_bits32_t *) 0)
-  return 0;
-if (sizeof (u_bits32_t))
-  return 0;
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_cv_type_u_bits32_t=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_cv_type_u_bits32_t=no
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: $ac_cv_type_u_bits32_t" >&5
-echo "${ECHO_T}$ac_cv_type_u_bits32_t" >&6
-if test $ac_cv_type_u_bits32_t = yes; then
-  :
-else
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define u_bits32_t unsigned int
-_ACEOF
-
-fi
-
-elif test "$ac_cv_sizeof_long" = 4; then
-  echo "$as_me:$LINENO: checking for u_bits32_t" >&5
-echo $ECHO_N "checking for u_bits32_t... $ECHO_C" >&6
-if test "${ac_cv_type_u_bits32_t+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-int
-main ()
-{
-if ((u_bits32_t *) 0)
-  return 0;
-if (sizeof (u_bits32_t))
-  return 0;
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_cv_type_u_bits32_t=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_cv_type_u_bits32_t=no
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: $ac_cv_type_u_bits32_t" >&5
-echo "${ECHO_T}$ac_cv_type_u_bits32_t" >&6
-if test $ac_cv_type_u_bits32_t = yes; then
-  :
-else
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define u_bits32_t unsigned long
-_ACEOF
-
-fi
-
-else
-  echo "$as_me:$LINENO: checking for u_bits32_t" >&5
-echo $ECHO_N "checking for u_bits32_t... $ECHO_C" >&6
-if test "${ac_cv_type_u_bits32_t+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-int
-main ()
-{
-if ((u_bits32_t *) 0)
-  return 0;
-if (sizeof (u_bits32_t))
-  return 0;
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_cv_type_u_bits32_t=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_cv_type_u_bits32_t=no
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: $ac_cv_type_u_bits32_t" >&5
-echo "${ECHO_T}$ac_cv_type_u_bits32_t" >&6
-if test $ac_cv_type_u_bits32_t = yes; then
-  :
-else
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define u_bits32_t unsigned int
-_ACEOF
-
-fi
-
-fi
-
-
-if test "$ac_cv_sizeof_char_p" = 8; then
-  echo "$as_me:$LINENO: checking for bits64_t" >&5
-echo $ECHO_N "checking for bits64_t... $ECHO_C" >&6
-if test "${ac_cv_type_bits64_t+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-int
-main ()
-{
-if ((bits64_t *) 0)
-  return 0;
-if (sizeof (bits64_t))
-  return 0;
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_cv_type_bits64_t=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_cv_type_bits64_t=no
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: $ac_cv_type_bits64_t" >&5
-echo "${ECHO_T}$ac_cv_type_bits64_t" >&6
-if test $ac_cv_type_bits64_t = yes; then
-  :
-else
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define bits64_t char *
-_ACEOF
-
-fi
-
-elif test "$ac_cv_sizeof_double" = 8; then
-  echo "$as_me:$LINENO: checking for bits64_t" >&5
-echo $ECHO_N "checking for bits64_t... $ECHO_C" >&6
-if test "${ac_cv_type_bits64_t+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-int
-main ()
-{
-if ((bits64_t *) 0)
-  return 0;
-if (sizeof (bits64_t))
-  return 0;
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_cv_type_bits64_t=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_cv_type_bits64_t=no
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: $ac_cv_type_bits64_t" >&5
-echo "${ECHO_T}$ac_cv_type_bits64_t" >&6
-if test $ac_cv_type_bits64_t = yes; then
-  :
-else
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define bits64_t double
-_ACEOF
-
-fi
-
-elif test -n "$ac_cv_type_long_long" && test "$ac_cv_sizeof_long_long" = 8; then
-  echo "$as_me:$LINENO: checking for bits64_t" >&5
-echo $ECHO_N "checking for bits64_t... $ECHO_C" >&6
-if test "${ac_cv_type_bits64_t+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-int
-main ()
-{
-if ((bits64_t *) 0)
-  return 0;
-if (sizeof (bits64_t))
-  return 0;
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_cv_type_bits64_t=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_cv_type_bits64_t=no
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: $ac_cv_type_bits64_t" >&5
-echo "${ECHO_T}$ac_cv_type_bits64_t" >&6
-if test $ac_cv_type_bits64_t = yes; then
-  :
-else
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define bits64_t long long
-_ACEOF
-
-fi
-
-elif test "$ac_cv_sizeof_long" = 8; then
-  echo "$as_me:$LINENO: checking for bits64_t" >&5
-echo $ECHO_N "checking for bits64_t... $ECHO_C" >&6
-if test "${ac_cv_type_bits64_t+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-int
-main ()
-{
-if ((bits64_t *) 0)
-  return 0;
-if (sizeof (bits64_t))
-  return 0;
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_cv_type_bits64_t=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_cv_type_bits64_t=no
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: $ac_cv_type_bits64_t" >&5
-echo "${ECHO_T}$ac_cv_type_bits64_t" >&6
-if test $ac_cv_type_bits64_t = yes; then
-  :
-else
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define bits64_t long
-_ACEOF
-
-fi
-
-else
-  echo "$as_me:$LINENO: checking for bits64_t" >&5
-echo $ECHO_N "checking for bits64_t... $ECHO_C" >&6
-if test "${ac_cv_type_bits64_t+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-int
-main ()
-{
-if ((bits64_t *) 0)
-  return 0;
-if (sizeof (bits64_t))
-  return 0;
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_cv_type_bits64_t=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_cv_type_bits64_t=no
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: $ac_cv_type_bits64_t" >&5
-echo "${ECHO_T}$ac_cv_type_bits64_t" >&6
-if test $ac_cv_type_bits64_t = yes; then
-  :
-else
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define bits64_t double
-_ACEOF
-
-fi
-
-fi
-
-
-
-if test "$ac_cv_sizeof_int" = "$ac_cv_sizeof_char_p"; then
-  echo "$as_me:$LINENO: checking for ptrdiff_t" >&5
-echo $ECHO_N "checking for ptrdiff_t... $ECHO_C" >&6
-if test "${ac_cv_type_ptrdiff_t+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-int
-main ()
-{
-if ((ptrdiff_t *) 0)
-  return 0;
-if (sizeof (ptrdiff_t))
-  return 0;
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_cv_type_ptrdiff_t=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_cv_type_ptrdiff_t=no
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: $ac_cv_type_ptrdiff_t" >&5
-echo "${ECHO_T}$ac_cv_type_ptrdiff_t" >&6
-if test $ac_cv_type_ptrdiff_t = yes; then
-  :
-else
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define ptrdiff_t int
-_ACEOF
-
-fi
-
-elif test "$ac_cv_sizeof_long" = "$ac_cv_sizeof_char_p"; then
-  echo "$as_me:$LINENO: checking for ptrdiff_t" >&5
-echo $ECHO_N "checking for ptrdiff_t... $ECHO_C" >&6
-if test "${ac_cv_type_ptrdiff_t+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-int
-main ()
-{
-if ((ptrdiff_t *) 0)
-  return 0;
-if (sizeof (ptrdiff_t))
-  return 0;
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_cv_type_ptrdiff_t=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_cv_type_ptrdiff_t=no
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: $ac_cv_type_ptrdiff_t" >&5
-echo "${ECHO_T}$ac_cv_type_ptrdiff_t" >&6
-if test $ac_cv_type_ptrdiff_t = yes; then
-  :
-else
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define ptrdiff_t long
-_ACEOF
-
-fi
-
-elif test "$ac_cv_type_long_long" = yes && test "$ac_cv_sizeof_long_long" = "$ac_cv_sizeof_char_p"; then
-  echo "$as_me:$LINENO: checking for ptrdiff_t" >&5
-echo $ECHO_N "checking for ptrdiff_t... $ECHO_C" >&6
-if test "${ac_cv_type_ptrdiff_t+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-int
-main ()
-{
-if ((ptrdiff_t *) 0)
-  return 0;
-if (sizeof (ptrdiff_t))
-  return 0;
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_cv_type_ptrdiff_t=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_cv_type_ptrdiff_t=no
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: $ac_cv_type_ptrdiff_t" >&5
-echo "${ECHO_T}$ac_cv_type_ptrdiff_t" >&6
-if test $ac_cv_type_ptrdiff_t = yes; then
-  :
-else
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define ptrdiff_t long long
-_ACEOF
-
-fi
-
-else
-  echo "$as_me:$LINENO: checking for ptrdiff_t" >&5
-echo $ECHO_N "checking for ptrdiff_t... $ECHO_C" >&6
-if test "${ac_cv_type_ptrdiff_t+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-int
-main ()
-{
-if ((ptrdiff_t *) 0)
-  return 0;
-if (sizeof (ptrdiff_t))
-  return 0;
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_cv_type_ptrdiff_t=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_cv_type_ptrdiff_t=no
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: $ac_cv_type_ptrdiff_t" >&5
-echo "${ECHO_T}$ac_cv_type_ptrdiff_t" >&6
-if test $ac_cv_type_ptrdiff_t = yes; then
-  :
-else
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define ptrdiff_t int
-_ACEOF
-
-fi
-
-fi
-
-
-echo "$as_me:$LINENO: checking whether stat file-mode macros are broken" >&5
-echo $ECHO_N "checking whether stat file-mode macros are broken... $ECHO_C" >&6
-if test "${ac_cv_header_stat_broken+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <sys/types.h>
-#include <sys/stat.h>
-
-#if defined(S_ISBLK) && defined(S_IFDIR)
-# if S_ISBLK (S_IFDIR)
-You lose.
-# endif
-#endif
-
-#if defined(S_ISBLK) && defined(S_IFCHR)
-# if S_ISBLK (S_IFCHR)
-You lose.
-# endif
-#endif
-
-#if defined(S_ISLNK) && defined(S_IFREG)
-# if S_ISLNK (S_IFREG)
-You lose.
-# endif
-#endif
-
-#if defined(S_ISSOCK) && defined(S_IFREG)
-# if S_ISSOCK (S_IFREG)
-You lose.
-# endif
-#endif
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "You lose" >/dev/null 2>&1; then
-  ac_cv_header_stat_broken=yes
-else
-  ac_cv_header_stat_broken=no
-fi
-rm -f conftest*
-
-fi
-echo "$as_me:$LINENO: result: $ac_cv_header_stat_broken" >&5
-echo "${ECHO_T}$ac_cv_header_stat_broken" >&6
-if test $ac_cv_header_stat_broken = yes; then
-  
-cat >>confdefs.h <<\_ACEOF
-@%:@define STAT_MACROS_BROKEN 1
-_ACEOF
-
-fi
-
-
-echo "$as_me:$LINENO: checking whether @%:@! works in shell scripts" >&5
-echo $ECHO_N "checking whether @%:@! works in shell scripts... $ECHO_C" >&6
-if test "${ac_cv_sys_interpreter+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  echo '#! /bin/cat
-exit 69
-' >conftest
-chmod u+x conftest
-(SHELL=/bin/sh; export SHELL; ./conftest >/dev/null)
-if test $? -ne 69; then
-   ac_cv_sys_interpreter=yes
-else
-   ac_cv_sys_interpreter=no
-fi
-rm -f conftest
-fi
-echo "$as_me:$LINENO: result: $ac_cv_sys_interpreter" >&5
-echo "${ECHO_T}$ac_cv_sys_interpreter" >&6
-interpval=$ac_cv_sys_interpreter
-
-if test $ac_cv_sys_interpreter = yes; then
-cat >>confdefs.h <<\_ACEOF
-@%:@define HAVE_HASH_BANG_EXEC 1
-_ACEOF
-
-fi
-
-if test "$ac_cv_func_lstat" = "no"; then
-echo "$as_me:$LINENO: checking for lstat" >&5
-echo $ECHO_N "checking for lstat... $ECHO_C" >&6
-if test "${bash_cv_func_lstat+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-
-#include <sys/types.h>
-#include <sys/stat.h>
-
-int
-main ()
-{
- lstat(".",(struct stat *)0); 
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest$ac_exeext'
-  { (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
-  bash_cv_func_lstat=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-bash_cv_func_lstat=no
-fi
-rm -f conftest.err conftest.$ac_objext \
-      conftest$ac_exeext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: $bash_cv_func_lstat" >&5
-echo "${ECHO_T}$bash_cv_func_lstat" >&6
-if test $bash_cv_func_lstat = yes; then
-  cat >>confdefs.h <<\_ACEOF
-@%:@define HAVE_LSTAT 1
-_ACEOF
-
-fi
-
-fi
-
-
-echo "$as_me:$LINENO: checking whether the ctype macros accept non-ascii characters" >&5
-echo $ECHO_N "checking whether the ctype macros accept non-ascii characters... $ECHO_C" >&6
-if test "${bash_cv_func_ctype_nonascii+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  if test "$cross_compiling" = yes; then
-  { echo "$as_me:$LINENO: WARNING: cannot check ctype macros if cross compiling -- defaulting to no" >&5
-echo "$as_me: WARNING: cannot check ctype macros if cross compiling -- defaulting to no" >&2;}
-    bash_cv_func_ctype_nonascii=no
-
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-
-#ifdef HAVE_LOCALE_H
-#include <locale.h>
-#endif
-#include <stdio.h>
-#include <ctype.h>
-
-main(c, v)
-int    c;
-char   *v[];
-{
-       char    *deflocale;
-       unsigned char x;
-       int     r1, r2;
-
-#ifdef HAVE_SETLOCALE
-       /* We take a shot here.  If that locale is not known, try the
-          system default.  We try this one because '\342' (226) is
-          known to be a printable character in that locale. */
-       deflocale = setlocale(LC_ALL, "en_US.ISO8859-1");
-       if (deflocale == 0)
-               deflocale = setlocale(LC_ALL, "");
-#endif
-
-       x = '\342';
-       r1 = isprint(x);
-       x -= 128;
-       r2 = isprint(x);
-       exit (r1 == 0 || r2 == 0);
-}
-
-_ACEOF
-rm -f conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>&5
-  ac_status=$?
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
-  { (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
-  bash_cv_func_ctype_nonascii=yes
-else
-  echo "$as_me: program exited with status $ac_status" >&5
-echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-( exit $ac_status )
-bash_cv_func_ctype_nonascii=no
-fi
-rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
-fi
-fi
-
-echo "$as_me:$LINENO: result: $bash_cv_func_ctype_nonascii" >&5
-echo "${ECHO_T}$bash_cv_func_ctype_nonascii" >&6
-if test $bash_cv_func_ctype_nonascii = yes; then
-cat >>confdefs.h <<\_ACEOF
-@%:@define CTYPE_NON_ASCII 1
-_ACEOF
-
-fi
-
-echo "$as_me:$LINENO: checking if dup2 fails to clear the close-on-exec flag" >&5
-echo $ECHO_N "checking if dup2 fails to clear the close-on-exec flag... $ECHO_C" >&6
-if test "${bash_cv_dup2_broken+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  if test "$cross_compiling" = yes; then
-  { echo "$as_me:$LINENO: WARNING: cannot check dup2 if cross compiling -- defaulting to no" >&5
-echo "$as_me: WARNING: cannot check dup2 if cross compiling -- defaulting to no" >&2;}
-     bash_cv_dup2_broken=no
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-
-#include <sys/types.h>
-#include <fcntl.h>
-main()
-{
-  int fd1, fd2, fl;
-  fd1 = open("/dev/null", 2);
-  if (fcntl(fd1, 2, 1) < 0)
-    exit(1);
-  fd2 = dup2(fd1, 1);
-  if (fd2 < 0)
-    exit(2);
-  fl = fcntl(fd2, 1, 0);
-  /* fl will be 1 if dup2 did not reset the close-on-exec flag. */
-  exit(fl != 1);
-}
-
-_ACEOF
-rm -f conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>&5
-  ac_status=$?
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
-  { (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
-  bash_cv_dup2_broken=yes
-else
-  echo "$as_me: program exited with status $ac_status" >&5
-echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-( exit $ac_status )
-bash_cv_dup2_broken=no
-fi
-rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
-fi
-
-fi
-
-echo "$as_me:$LINENO: result: $bash_cv_dup2_broken" >&5
-echo "${ECHO_T}$bash_cv_dup2_broken" >&6
-if test $bash_cv_dup2_broken = yes; then
-cat >>confdefs.h <<\_ACEOF
-@%:@define DUP2_BROKEN 1
-_ACEOF
-
-fi
-
-
-echo "$as_me:$LINENO: checking whether pgrps need synchronization" >&5
-echo $ECHO_N "checking whether pgrps need synchronization... $ECHO_C" >&6
-if test "${bash_cv_pgrp_pipe+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  if test "$cross_compiling" = yes; then
-  { echo "$as_me:$LINENO: WARNING: cannot check pgrp synchronization if cross compiling -- defaulting to no" >&5
-echo "$as_me: WARNING: cannot check pgrp synchronization if cross compiling -- defaulting to no" >&2;}
-    bash_cv_pgrp_pipe=no
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-
-#ifdef HAVE_UNISTD_H
-#  include <unistd.h>
-#endif
-main()
-{
-# ifdef GETPGRP_VOID
-#  define getpgID()    getpgrp()
-# else
-#  define getpgID()    getpgrp(0)
-#  define setpgid(x,y) setpgrp(x,y)
-# endif
-       int pid1, pid2, fds[2];
-       int status;
-       char ok;
-
-       switch (pid1 = fork()) {
-         case -1:
-           exit(1);
-         case 0:
-           setpgid(0, getpid());
-           exit(0);
-       }
-       setpgid(pid1, pid1);
-
-       sleep(2);       /* let first child die */
-
-       if (pipe(fds) < 0)
-         exit(2);
-
-       switch (pid2 = fork()) {
-         case -1:
-           exit(3);
-         case 0:
-           setpgid(0, pid1);
-           ok = getpgID() == pid1;
-           write(fds[1], &ok, 1);
-           exit(0);
-       }
-       setpgid(pid2, pid1);
-
-       close(fds[1]);
-       if (read(fds[0], &ok, 1) != 1)
-         exit(4);
-       wait(&status);
-       wait(&status);
-       exit(ok ? 0 : 5);
-}
-
-_ACEOF
-rm -f conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>&5
-  ac_status=$?
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
-  { (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
-  bash_cv_pgrp_pipe=no
-else
-  echo "$as_me: program exited with status $ac_status" >&5
-echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-( exit $ac_status )
-bash_cv_pgrp_pipe=yes
-fi
-rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
-fi
-
-fi
-
-echo "$as_me:$LINENO: result: $bash_cv_pgrp_pipe" >&5
-echo "${ECHO_T}$bash_cv_pgrp_pipe" >&6
-if test $bash_cv_pgrp_pipe = yes; then
-cat >>confdefs.h <<\_ACEOF
-@%:@define PGRP_PIPE 1
-_ACEOF
-
-fi
-
-
-echo "$as_me:$LINENO: checking for type of signal functions" >&5
-echo $ECHO_N "checking for type of signal functions... $ECHO_C" >&6
-if test "${bash_cv_signal_vintage+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <signal.h>
-int
-main ()
-{
-
-    sigset_t ss;
-    struct sigaction sa;
-    sigemptyset(&ss); sigsuspend(&ss);
-    sigaction(SIGINT, &sa, (struct sigaction *) 0);
-    sigprocmask(SIG_BLOCK, &ss, (sigset_t *) 0);
-  
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest$ac_exeext'
-  { (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
-  bash_cv_signal_vintage=posix
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-
-    cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <signal.h>
-int
-main ()
-{
-
-       int mask = sigmask(SIGINT);
-       sigsetmask(mask); sigblock(mask); sigpause(mask);
-    
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest$ac_exeext'
-  { (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
-  bash_cv_signal_vintage=4.2bsd
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-
-      cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-
-       #include <signal.h>
-       RETSIGTYPE foo() { }
-int
-main ()
-{
-
-               int mask = sigmask(SIGINT);
-               sigset(SIGINT, foo); sigrelse(SIGINT);
-               sighold(SIGINT); sigpause(SIGINT);
-        
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest$ac_exeext'
-  { (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
-  bash_cv_signal_vintage=svr3
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-bash_cv_signal_vintage=v7
-    
-fi
-rm -f conftest.err conftest.$ac_objext \
-      conftest$ac_exeext conftest.$ac_ext
-  
-fi
-rm -f conftest.err conftest.$ac_objext \
-      conftest$ac_exeext conftest.$ac_ext
-
-fi
-rm -f conftest.err conftest.$ac_objext \
-      conftest$ac_exeext conftest.$ac_ext
-
-fi
-
-echo "$as_me:$LINENO: result: $bash_cv_signal_vintage" >&5
-echo "${ECHO_T}$bash_cv_signal_vintage" >&6
-if test "$bash_cv_signal_vintage" = posix; then
-cat >>confdefs.h <<\_ACEOF
-@%:@define HAVE_POSIX_SIGNALS 1
-_ACEOF
-
-elif test "$bash_cv_signal_vintage" = "4.2bsd"; then
-cat >>confdefs.h <<\_ACEOF
-@%:@define HAVE_BSD_SIGNALS 1
-_ACEOF
-
-elif test "$bash_cv_signal_vintage" = svr3; then
-cat >>confdefs.h <<\_ACEOF
-@%:@define HAVE_USG_SIGHOLD 1
-_ACEOF
-
-fi
-
-
-echo "$as_me:$LINENO: checking for sys_errlist and sys_nerr" >&5
-echo $ECHO_N "checking for sys_errlist and sys_nerr... $ECHO_C" >&6
-if test "${bash_cv_sys_errlist+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <errno.h>
-int
-main ()
-{
-extern char *sys_errlist[];
- extern int sys_nerr;
- char *msg = sys_errlist[sys_nerr - 1];
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest$ac_exeext'
-  { (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
-  bash_cv_sys_errlist=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-bash_cv_sys_errlist=no
-fi
-rm -f conftest.err conftest.$ac_objext \
-      conftest$ac_exeext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: $bash_cv_sys_errlist" >&5
-echo "${ECHO_T}$bash_cv_sys_errlist" >&6
-if test $bash_cv_sys_errlist = yes; then
-cat >>confdefs.h <<\_ACEOF
-@%:@define HAVE_SYS_ERRLIST 1
-_ACEOF
-
-fi
-
-
-echo "$as_me:$LINENO: checking for sys_siglist in system C library" >&5
-echo $ECHO_N "checking for sys_siglist in system C library... $ECHO_C" >&6
-if test "${bash_cv_sys_siglist+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  if test "$cross_compiling" = yes; then
-  { echo "$as_me:$LINENO: WARNING: cannot check for sys_siglist if cross compiling -- defaulting to no" >&5
-echo "$as_me: WARNING: cannot check for sys_siglist if cross compiling -- defaulting to no" >&2;}
-        bash_cv_sys_siglist=no
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-
-#include <sys/types.h>
-#include <signal.h>
-#ifdef HAVE_UNISTD_H
-#include <unistd.h>
-#endif
-#if !HAVE_DECL_SYS_SIGLIST
-extern char *sys_siglist[];
-#endif
-main()
-{
-char *msg = sys_siglist[2];
-exit(msg == 0);
-}
-_ACEOF
-rm -f conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>&5
-  ac_status=$?
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
-  { (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
-  bash_cv_sys_siglist=yes
-else
-  echo "$as_me: program exited with status $ac_status" >&5
-echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-( exit $ac_status )
-bash_cv_sys_siglist=no
-fi
-rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
-fi
-fi
-
-echo "$as_me:$LINENO: result: $bash_cv_sys_siglist" >&5
-echo "${ECHO_T}$bash_cv_sys_siglist" >&6
-if test $bash_cv_sys_siglist = yes; then
-cat >>confdefs.h <<\_ACEOF
-@%:@define HAVE_SYS_SIGLIST 1
-_ACEOF
-
-fi
-
-echo "$as_me:$LINENO: checking for _sys_siglist in signal.h or unistd.h" >&5
-echo $ECHO_N "checking for _sys_siglist in signal.h or unistd.h... $ECHO_C" >&6
-if test "${bash_cv_decl_under_sys_siglist+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-
-#include <sys/types.h>
-#include <signal.h>
-#ifdef HAVE_UNISTD_H
-#include <unistd.h>
-#endif
-int
-main ()
-{
- char *msg = _sys_siglist[2]; 
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  bash_cv_decl_under_sys_siglist=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-bash_cv_decl_under_sys_siglist=no
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: $bash_cv_decl_under_sys_siglist" >&5
-echo "${ECHO_T}$bash_cv_decl_under_sys_siglist" >&6
-if test $bash_cv_decl_under_sys_siglist = yes; then
-cat >>confdefs.h <<\_ACEOF
-@%:@define UNDER_SYS_SIGLIST_DECLARED 1
-_ACEOF
-
-fi
-
-
-echo "$as_me:$LINENO: checking for _sys_siglist in system C library" >&5
-echo $ECHO_N "checking for _sys_siglist in system C library... $ECHO_C" >&6
-if test "${bash_cv_under_sys_siglist+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  if test "$cross_compiling" = yes; then
-  { echo "$as_me:$LINENO: WARNING: cannot check for _sys_siglist if cross compiling -- defaulting to no" >&5
-echo "$as_me: WARNING: cannot check for _sys_siglist if cross compiling -- defaulting to no" >&2;}
-        bash_cv_under_sys_siglist=no
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-
-#include <sys/types.h>
-#include <signal.h>
-#ifdef HAVE_UNISTD_H
-#include <unistd.h>
-#endif
-#ifndef UNDER_SYS_SIGLIST_DECLARED
-extern char *_sys_siglist[];
-#endif
-main()
-{
-char *msg = (char *)_sys_siglist[2];
-exit(msg == 0);
-}
-_ACEOF
-rm -f conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>&5
-  ac_status=$?
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
-  { (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
-  bash_cv_under_sys_siglist=yes
-else
-  echo "$as_me: program exited with status $ac_status" >&5
-echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-( exit $ac_status )
-bash_cv_under_sys_siglist=no
-fi
-rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
-fi
-fi
-
-echo "$as_me:$LINENO: result: $bash_cv_under_sys_siglist" >&5
-echo "${ECHO_T}$bash_cv_under_sys_siglist" >&6
-if test $bash_cv_under_sys_siglist = yes; then
-cat >>confdefs.h <<\_ACEOF
-@%:@define HAVE_UNDER_SYS_SIGLIST 1
-_ACEOF
-
-fi
-
-
-echo "$as_me:$LINENO: checking whether signal handlers are of type void" >&5
-echo $ECHO_N "checking whether signal handlers are of type void... $ECHO_C" >&6
-if test "${bash_cv_void_sighandler+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <sys/types.h>
-#include <signal.h>
-#ifdef signal
-#undef signal
-#endif
-#ifdef __cplusplus
-extern "C"
-#endif
-void (*signal ()) ();
-int
-main ()
-{
-int i;
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  bash_cv_void_sighandler=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-bash_cv_void_sighandler=no
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: $bash_cv_void_sighandler" >&5
-echo "${ECHO_T}$bash_cv_void_sighandler" >&6
-if test $bash_cv_void_sighandler = yes; then
-cat >>confdefs.h <<\_ACEOF
-@%:@define VOID_SIGHANDLER 1
-_ACEOF
-
-fi
-
-
-
-echo "$as_me:$LINENO: checking for clock_t" >&5
-echo $ECHO_N "checking for clock_t... $ECHO_C" >&6
-if test "${bash_cv_type_clock_t+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <sys/types.h>
-#if STDC_HEADERS
-#include <stdlib.h>
-#include <stddef.h>
-#endif
-#if HAVE_INTTYPES_H
-#include <inttypes.h>
-#endif
-#if HAVE_STDINT_H
-#include <stdint.h>
-#endif
-#include <sys/times.h>
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "clock_t" >/dev/null 2>&1; then
-  bash_cv_type_clock_t=yes
-else
-  bash_cv_type_clock_t=no
-fi
-rm -f conftest*
-
-fi
-
-echo "$as_me:$LINENO: result: $bash_cv_type_clock_t" >&5
-echo "${ECHO_T}$bash_cv_type_clock_t" >&6
-
-if test $bash_cv_type_clock_t = no; then
-  cat >>confdefs.h <<_ACEOF
-@%:@define clock_t long
-_ACEOF
-
-fi
-
-
-
-echo "$as_me:$LINENO: checking for sigset_t" >&5
-echo $ECHO_N "checking for sigset_t... $ECHO_C" >&6
-if test "${bash_cv_type_sigset_t+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <sys/types.h>
-#if STDC_HEADERS
-#include <stdlib.h>
-#include <stddef.h>
-#endif
-#if HAVE_INTTYPES_H
-#include <inttypes.h>
-#endif
-#if HAVE_STDINT_H
-#include <stdint.h>
-#endif
-#include <signal.h>
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "sigset_t" >/dev/null 2>&1; then
-  bash_cv_type_sigset_t=yes
-else
-  bash_cv_type_sigset_t=no
-fi
-rm -f conftest*
-
-fi
-
-echo "$as_me:$LINENO: result: $bash_cv_type_sigset_t" >&5
-echo "${ECHO_T}$bash_cv_type_sigset_t" >&6
-
-if test $bash_cv_type_sigset_t = no; then
-  cat >>confdefs.h <<_ACEOF
-@%:@define sigset_t int
-_ACEOF
-
-fi
-
-
-
-echo "$as_me:$LINENO: checking for quad_t" >&5
-echo $ECHO_N "checking for quad_t... $ECHO_C" >&6
-if test "${bash_cv_type_quad_t+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <sys/types.h>
-#if STDC_HEADERS
-#include <stdlib.h>
-#include <stddef.h>
-#endif
-#if HAVE_INTTYPES_H
-#include <inttypes.h>
-#endif
-#if HAVE_STDINT_H
-#include <stdint.h>
-#endif
-
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "quad_t" >/dev/null 2>&1; then
-  bash_cv_type_quad_t=yes
-else
-  bash_cv_type_quad_t=no
-fi
-rm -f conftest*
-
-fi
-
-echo "$as_me:$LINENO: result: $bash_cv_type_quad_t" >&5
-echo "${ECHO_T}$bash_cv_type_quad_t" >&6
-if test $bash_cv_type_quad_t = yes; then
-       cat >>confdefs.h <<\_ACEOF
-@%:@define HAVE_QUAD_T 1
-_ACEOF
-
-       fi
-if test $bash_cv_type_quad_t = no; then
-  cat >>confdefs.h <<_ACEOF
-@%:@define quad_t long
-_ACEOF
-
-fi
-
-
-
-echo "$as_me:$LINENO: checking for intmax_t" >&5
-echo $ECHO_N "checking for intmax_t... $ECHO_C" >&6
-if test "${bash_cv_type_intmax_t+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <sys/types.h>
-#if STDC_HEADERS
-#include <stdlib.h>
-#include <stddef.h>
-#endif
-#if HAVE_INTTYPES_H
-#include <inttypes.h>
-#endif
-#if HAVE_STDINT_H
-#include <stdint.h>
-#endif
-
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "intmax_t" >/dev/null 2>&1; then
-  bash_cv_type_intmax_t=yes
-else
-  bash_cv_type_intmax_t=no
-fi
-rm -f conftest*
-
-fi
-
-echo "$as_me:$LINENO: result: $bash_cv_type_intmax_t" >&5
-echo "${ECHO_T}$bash_cv_type_intmax_t" >&6
-
-if test $bash_cv_type_intmax_t = no; then
-  cat >>confdefs.h <<_ACEOF
-@%:@define intmax_t $bash_cv_type_long_long
-_ACEOF
-
-fi
-
-
-
-echo "$as_me:$LINENO: checking for uintmax_t" >&5
-echo $ECHO_N "checking for uintmax_t... $ECHO_C" >&6
-if test "${bash_cv_type_uintmax_t+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <sys/types.h>
-#if STDC_HEADERS
-#include <stdlib.h>
-#include <stddef.h>
-#endif
-#if HAVE_INTTYPES_H
-#include <inttypes.h>
-#endif
-#if HAVE_STDINT_H
-#include <stdint.h>
-#endif
-
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "uintmax_t" >/dev/null 2>&1; then
-  bash_cv_type_uintmax_t=yes
-else
-  bash_cv_type_uintmax_t=no
-fi
-rm -f conftest*
-
-fi
-
-echo "$as_me:$LINENO: result: $bash_cv_type_uintmax_t" >&5
-echo "${ECHO_T}$bash_cv_type_uintmax_t" >&6
-
-if test $bash_cv_type_uintmax_t = no; then
-  cat >>confdefs.h <<_ACEOF
-@%:@define uintmax_t $bash_cv_type_unsigned_long_long
-_ACEOF
-
-fi
-
-if test "$ac_cv_header_sys_socket_h" = "yes"; then
-
-
-echo "$as_me:$LINENO: checking for socklen_t" >&5
-echo $ECHO_N "checking for socklen_t... $ECHO_C" >&6
-if test "${bash_cv_type_socklen_t+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <sys/types.h>
-#if STDC_HEADERS
-#include <stdlib.h>
-#include <stddef.h>
-#endif
-#if HAVE_INTTYPES_H
-#include <inttypes.h>
-#endif
-#if HAVE_STDINT_H
-#include <stdint.h>
-#endif
-#include <sys/socket.h>
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "socklen_t" >/dev/null 2>&1; then
-  bash_cv_type_socklen_t=yes
-else
-  bash_cv_type_socklen_t=no
-fi
-rm -f conftest*
-
-fi
-
-echo "$as_me:$LINENO: result: $bash_cv_type_socklen_t" >&5
-echo "${ECHO_T}$bash_cv_type_socklen_t" >&6
-if test $bash_cv_type_socklen_t = yes; then
-       cat >>confdefs.h <<\_ACEOF
-@%:@define HAVE_SOCKLEN_T 1
-_ACEOF
-
-       fi
-if test $bash_cv_type_socklen_t = no; then
-  cat >>confdefs.h <<_ACEOF
-@%:@define socklen_t int
-_ACEOF
-
-fi
-
-fi
-echo "$as_me:$LINENO: checking for size and type of struct rlimit fields" >&5
-echo $ECHO_N "checking for size and type of struct rlimit fields... $ECHO_C" >&6
-if test "${bash_cv_type_rlimit+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <sys/types.h>
-#include <sys/resource.h>
-int
-main ()
-{
-rlim_t xxx;
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  bash_cv_type_rlimit=rlim_t
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-
-if test "$cross_compiling" = yes; then
-  { echo "$as_me:$LINENO: WARNING: cannot check quad_t if cross compiling -- defaulting to long" >&5
-echo "$as_me: WARNING: cannot check quad_t if cross compiling -- defaulting to long" >&2;}
-         bash_cv_type_rlimit=long
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-
-#include <sys/types.h>
-#include <sys/time.h>
-#include <sys/resource.h>
-main()
-{
-#ifdef HAVE_QUAD_T
-  struct rlimit rl;
-  if (sizeof(rl.rlim_cur) == sizeof(quad_t))
-    exit(0);
-#endif
-  exit(1);
-}
-_ACEOF
-rm -f conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>&5
-  ac_status=$?
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
-  { (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
-  bash_cv_type_rlimit=quad_t
-else
-  echo "$as_me: program exited with status $ac_status" >&5
-echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-( exit $ac_status )
-bash_cv_type_rlimit=long
-fi
-rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
-fi
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-
-fi
-
-echo "$as_me:$LINENO: result: $bash_cv_type_rlimit" >&5
-echo "${ECHO_T}$bash_cv_type_rlimit" >&6
-if test $bash_cv_type_rlimit = quad_t; then
-cat >>confdefs.h <<\_ACEOF
-@%:@define RLIMTYPE quad_t
-_ACEOF
-
-elif test $bash_cv_type_rlimit = rlim_t; then
-cat >>confdefs.h <<\_ACEOF
-@%:@define RLIMTYPE rlim_t
-_ACEOF
-
-fi
-
-
-echo "$as_me:$LINENO: checking for intmax_t" >&5
-echo $ECHO_N "checking for intmax_t... $ECHO_C" >&6
-if test "${ac_cv_type_intmax_t+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-int
-main ()
-{
-if ((intmax_t *) 0)
-  return 0;
-if (sizeof (intmax_t))
-  return 0;
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_cv_type_intmax_t=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_cv_type_intmax_t=no
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: $ac_cv_type_intmax_t" >&5
-echo "${ECHO_T}$ac_cv_type_intmax_t" >&6
-
-echo "$as_me:$LINENO: checking size of intmax_t" >&5
-echo $ECHO_N "checking size of intmax_t... $ECHO_C" >&6
-if test "${ac_cv_sizeof_intmax_t+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  if test "$ac_cv_type_intmax_t" = yes; then
-  # The cast to unsigned long works around a bug in the HP C Compiler
-  # version HP92453-01 B.11.11.23709.GP, which incorrectly rejects
-  # declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'.
-  # This bug is HP SR number 8606223364.
-  if test "$cross_compiling" = yes; then
-  # Depending upon the size, compute the lo and hi bounds.
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-int
-main ()
-{
-static int test_array @<:@1 - 2 * !(((long) (sizeof (intmax_t))) >= 0)@:>@;
-test_array @<:@0@:>@ = 0
-
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_lo=0 ac_mid=0
-  while :; do
-    cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-int
-main ()
-{
-static int test_array @<:@1 - 2 * !(((long) (sizeof (intmax_t))) <= $ac_mid)@:>@;
-test_array @<:@0@:>@ = 0
-
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_hi=$ac_mid; break
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_lo=`expr $ac_mid + 1`
-                   if test $ac_lo -le $ac_mid; then
-                     ac_lo= ac_hi=
-                     break
-                   fi
-                   ac_mid=`expr 2 '*' $ac_mid + 1`
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-  done
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-int
-main ()
-{
-static int test_array @<:@1 - 2 * !(((long) (sizeof (intmax_t))) < 0)@:>@;
-test_array @<:@0@:>@ = 0
-
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_hi=-1 ac_mid=-1
-  while :; do
-    cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-int
-main ()
-{
-static int test_array @<:@1 - 2 * !(((long) (sizeof (intmax_t))) >= $ac_mid)@:>@;
-test_array @<:@0@:>@ = 0
-
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_lo=$ac_mid; break
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_hi=`expr '(' $ac_mid ')' - 1`
-                      if test $ac_mid -le $ac_hi; then
-                        ac_lo= ac_hi=
-                        break
-                      fi
-                      ac_mid=`expr 2 '*' $ac_mid`
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-  done
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_lo= ac_hi=
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-# Binary search between lo and hi bounds.
-while test "x$ac_lo" != "x$ac_hi"; do
-  ac_mid=`expr '(' $ac_hi - $ac_lo ')' / 2 + $ac_lo`
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-int
-main ()
-{
-static int test_array @<:@1 - 2 * !(((long) (sizeof (intmax_t))) <= $ac_mid)@:>@;
-test_array @<:@0@:>@ = 0
-
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_hi=$ac_mid
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_lo=`expr '(' $ac_mid ')' + 1`
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-done
-case $ac_lo in
-?*) ac_cv_sizeof_intmax_t=$ac_lo;;
-'') { { echo "$as_me:$LINENO: error: cannot compute sizeof (intmax_t), 77
-See \`config.log' for more details." >&5
-echo "$as_me: error: cannot compute sizeof (intmax_t), 77
-See \`config.log' for more details." >&2;}
-   { (exit 1); exit 1; }; } ;;
-esac
-else
-  if test "$cross_compiling" = yes; then
-  { { echo "$as_me:$LINENO: error: cannot run test program while cross compiling
-See \`config.log' for more details." >&5
-echo "$as_me: error: cannot run test program while cross compiling
-See \`config.log' for more details." >&2;}
-   { (exit 1); exit 1; }; }
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-long longval () { return (long) (sizeof (intmax_t)); }
-unsigned long ulongval () { return (long) (sizeof (intmax_t)); }
-@%:@include <stdio.h>
-@%:@include <stdlib.h>
-int
-main ()
-{
-
-  FILE *f = fopen ("conftest.val", "w");
-  if (! f)
-    exit (1);
-  if (((long) (sizeof (intmax_t))) < 0)
-    {
-      long i = longval ();
-      if (i != ((long) (sizeof (intmax_t))))
-       exit (1);
-      fprintf (f, "%ld\n", i);
-    }
-  else
-    {
-      unsigned long i = ulongval ();
-      if (i != ((long) (sizeof (intmax_t))))
-       exit (1);
-      fprintf (f, "%lu\n", i);
-    }
-  exit (ferror (f) || fclose (f) != 0);
-
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>&5
-  ac_status=$?
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
-  { (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
-  ac_cv_sizeof_intmax_t=`cat conftest.val`
-else
-  echo "$as_me: program exited with status $ac_status" >&5
-echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-( exit $ac_status )
-{ { echo "$as_me:$LINENO: error: cannot compute sizeof (intmax_t), 77
-See \`config.log' for more details." >&5
-echo "$as_me: error: cannot compute sizeof (intmax_t), 77
-See \`config.log' for more details." >&2;}
-   { (exit 1); exit 1; }; }
-fi
-rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
-fi
-fi
-rm -f conftest.val
-else
-  ac_cv_sizeof_intmax_t=0
-fi
-fi
-echo "$as_me:$LINENO: result: $ac_cv_sizeof_intmax_t" >&5
-echo "${ECHO_T}$ac_cv_sizeof_intmax_t" >&6
-cat >>confdefs.h <<_ACEOF
-@%:@define SIZEOF_INTMAX_T $ac_cv_sizeof_intmax_t
-_ACEOF
-
-
-
-
-echo "$as_me:$LINENO: checking for struct termios.c_line" >&5
-echo $ECHO_N "checking for struct termios.c_line... $ECHO_C" >&6
-if test "${ac_cv_member_struct_termios_c_line+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-
-#include <sys/types.h>
-#include <termios.h>
-
-
-int
-main ()
-{
-static struct termios ac_aggr;
-if (ac_aggr.c_line)
-return 0;
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_cv_member_struct_termios_c_line=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-
-#include <sys/types.h>
-#include <termios.h>
-
-
-int
-main ()
-{
-static struct termios ac_aggr;
-if (sizeof ac_aggr.c_line)
-return 0;
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_cv_member_struct_termios_c_line=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_cv_member_struct_termios_c_line=no
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: $ac_cv_member_struct_termios_c_line" >&5
-echo "${ECHO_T}$ac_cv_member_struct_termios_c_line" >&6
-if test $ac_cv_member_struct_termios_c_line = yes; then
-  cat >>confdefs.h <<\_ACEOF
-@%:@define TERMIOS_LDISC 1
-_ACEOF
-
-fi
-
-
-
-echo "$as_me:$LINENO: checking for struct termio.c_line" >&5
-echo $ECHO_N "checking for struct termio.c_line... $ECHO_C" >&6
-if test "${ac_cv_member_struct_termio_c_line+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-
-#include <sys/types.h>
-#include <termio.h>
-
-
-int
-main ()
-{
-static struct termio ac_aggr;
-if (ac_aggr.c_line)
-return 0;
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_cv_member_struct_termio_c_line=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-
-#include <sys/types.h>
-#include <termio.h>
-
-
-int
-main ()
-{
-static struct termio ac_aggr;
-if (sizeof ac_aggr.c_line)
-return 0;
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_cv_member_struct_termio_c_line=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_cv_member_struct_termio_c_line=no
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: $ac_cv_member_struct_termio_c_line" >&5
-echo "${ECHO_T}$ac_cv_member_struct_termio_c_line" >&6
-if test $ac_cv_member_struct_termio_c_line = yes; then
-  cat >>confdefs.h <<\_ACEOF
-@%:@define TERMIO_LDISC 1
-_ACEOF
-
-fi
-
-
-
-echo "$as_me:$LINENO: checking for struct dirent.d_ino" >&5
-echo $ECHO_N "checking for struct dirent.d_ino... $ECHO_C" >&6
-if test "${bash_cv_dirent_has_dino+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-
-#include <stdio.h>
-#include <sys/types.h>
-#ifdef HAVE_UNISTD_H
-# include <unistd.h>
-#endif /* HAVE_UNISTD_H */
-#if defined(HAVE_DIRENT_H)
-# include <dirent.h>
-#else
-# define dirent direct
-# ifdef HAVE_SYS_NDIR_H
-#  include <sys/ndir.h>
-# endif /* SYSNDIR */
-# ifdef HAVE_SYS_DIR_H
-#  include <sys/dir.h>
-# endif /* SYSDIR */
-# ifdef HAVE_NDIR_H
-#  include <ndir.h>
-# endif
-#endif /* HAVE_DIRENT_H */
-
-int
-main ()
-{
-
-struct dirent d; int z; z = d.d_ino;
-
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  bash_cv_dirent_has_dino=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-bash_cv_dirent_has_dino=no
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-
-echo "$as_me:$LINENO: result: $bash_cv_dirent_has_dino" >&5
-echo "${ECHO_T}$bash_cv_dirent_has_dino" >&6
-if test $bash_cv_dirent_has_dino = yes; then
-cat >>confdefs.h <<\_ACEOF
-@%:@define HAVE_STRUCT_DIRENT_D_INO 1
-_ACEOF
-
-fi
-
-
-echo "$as_me:$LINENO: checking for struct dirent.d_fileno" >&5
-echo $ECHO_N "checking for struct dirent.d_fileno... $ECHO_C" >&6
-if test "${bash_cv_dirent_has_d_fileno+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-
-#include <stdio.h>
-#include <sys/types.h>
-#ifdef HAVE_UNISTD_H
-# include <unistd.h>
-#endif /* HAVE_UNISTD_H */
-#if defined(HAVE_DIRENT_H)
-# include <dirent.h>
-#else
-# define dirent direct
-# ifdef HAVE_SYS_NDIR_H
-#  include <sys/ndir.h>
-# endif /* SYSNDIR */
-# ifdef HAVE_SYS_DIR_H
-#  include <sys/dir.h>
-# endif /* SYSDIR */
-# ifdef HAVE_NDIR_H
-#  include <ndir.h>
-# endif
-#endif /* HAVE_DIRENT_H */
-
-int
-main ()
-{
-
-struct dirent d; int z; z = d.d_fileno;
-
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  bash_cv_dirent_has_d_fileno=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-bash_cv_dirent_has_d_fileno=no
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-
-echo "$as_me:$LINENO: result: $bash_cv_dirent_has_d_fileno" >&5
-echo "${ECHO_T}$bash_cv_dirent_has_d_fileno" >&6
-if test $bash_cv_dirent_has_d_fileno = yes; then
-cat >>confdefs.h <<\_ACEOF
-@%:@define HAVE_STRUCT_DIRENT_D_FILENO 1
-_ACEOF
-
-fi
-
-
-echo "$as_me:$LINENO: checking for struct dirent.d_namlen" >&5
-echo $ECHO_N "checking for struct dirent.d_namlen... $ECHO_C" >&6
-if test "${bash_cv_dirent_has_d_namlen+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-
-#include <stdio.h>
-#include <sys/types.h>
-#ifdef HAVE_UNISTD_H
-# include <unistd.h>
-#endif /* HAVE_UNISTD_H */
-#if defined(HAVE_DIRENT_H)
-# include <dirent.h>
-#else
-# define dirent direct
-# ifdef HAVE_SYS_NDIR_H
-#  include <sys/ndir.h>
-# endif /* SYSNDIR */
-# ifdef HAVE_SYS_DIR_H
-#  include <sys/dir.h>
-# endif /* SYSDIR */
-# ifdef HAVE_NDIR_H
-#  include <ndir.h>
-# endif
-#endif /* HAVE_DIRENT_H */
-
-int
-main ()
-{
-
-struct dirent d; int z; z = d.d_namlen;
-
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  bash_cv_dirent_has_d_namlen=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-bash_cv_dirent_has_d_namlen=no
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-
-echo "$as_me:$LINENO: result: $bash_cv_dirent_has_d_namlen" >&5
-echo "${ECHO_T}$bash_cv_dirent_has_d_namlen" >&6
-if test $bash_cv_dirent_has_d_namlen = yes; then
-cat >>confdefs.h <<\_ACEOF
-@%:@define HAVE_STRUCT_DIRENT_D_NAMLEN 1
-_ACEOF
-
-fi
-
-echo "$as_me:$LINENO: checking for struct winsize in sys/ioctl.h and termios.h" >&5
-echo $ECHO_N "checking for struct winsize in sys/ioctl.h and termios.h... $ECHO_C" >&6
-if test "${bash_cv_struct_winsize_header+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <sys/types.h>
-#include <sys/ioctl.h>
-int
-main ()
-{
-struct winsize x;
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  bash_cv_struct_winsize_header=ioctl_h
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <sys/types.h>
-#include <termios.h>
-int
-main ()
-{
-struct winsize x;
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  bash_cv_struct_winsize_header=termios_h
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-bash_cv_struct_winsize_header=other
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-
-if test $bash_cv_struct_winsize_header = ioctl_h; then
-  echo "$as_me:$LINENO: result: sys/ioctl.h" >&5
-echo "${ECHO_T}sys/ioctl.h" >&6
-  cat >>confdefs.h <<\_ACEOF
-@%:@define STRUCT_WINSIZE_IN_SYS_IOCTL 1
-_ACEOF
-
-elif test $bash_cv_struct_winsize_header = termios_h; then
-  echo "$as_me:$LINENO: result: termios.h" >&5
-echo "${ECHO_T}termios.h" >&6
-  cat >>confdefs.h <<\_ACEOF
-@%:@define STRUCT_WINSIZE_IN_TERMIOS 1
-_ACEOF
-
-else
-  echo "$as_me:$LINENO: result: not found" >&5
-echo "${ECHO_T}not found" >&6
-fi
-
-echo "$as_me:$LINENO: checking for struct timeval in sys/time.h and time.h" >&5
-echo $ECHO_N "checking for struct timeval in sys/time.h and time.h... $ECHO_C" >&6
-if test "${bash_cv_struct_timeval+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <sys/time.h>
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "struct timeval" >/dev/null 2>&1; then
-  bash_cv_struct_timeval=yes
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <time.h>
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "struct timeval" >/dev/null 2>&1; then
-  bash_cv_struct_timeval=yes
-else
-  bash_cv_struct_timeval=no
-fi
-rm -f conftest*
-
-fi
-rm -f conftest*
-
-
-fi
-
-echo "$as_me:$LINENO: result: $bash_cv_struct_timeval" >&5
-echo "${ECHO_T}$bash_cv_struct_timeval" >&6
-if test $bash_cv_struct_timeval = yes; then
-  cat >>confdefs.h <<\_ACEOF
-@%:@define HAVE_TIMEVAL 1
-_ACEOF
-
-fi
-
-echo "$as_me:$LINENO: checking for struct stat.st_blocks" >&5
-echo $ECHO_N "checking for struct stat.st_blocks... $ECHO_C" >&6
-if test "${ac_cv_member_struct_stat_st_blocks+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-int
-main ()
-{
-static struct stat ac_aggr;
-if (ac_aggr.st_blocks)
-return 0;
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_cv_member_struct_stat_st_blocks=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-int
-main ()
-{
-static struct stat ac_aggr;
-if (sizeof ac_aggr.st_blocks)
-return 0;
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_cv_member_struct_stat_st_blocks=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_cv_member_struct_stat_st_blocks=no
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: $ac_cv_member_struct_stat_st_blocks" >&5
-echo "${ECHO_T}$ac_cv_member_struct_stat_st_blocks" >&6
-if test $ac_cv_member_struct_stat_st_blocks = yes; then
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define HAVE_STRUCT_STAT_ST_BLOCKS 1
-_ACEOF
-
-
-fi
-
-echo "$as_me:$LINENO: checking whether struct tm is in sys/time.h or time.h" >&5
-echo $ECHO_N "checking whether struct tm is in sys/time.h or time.h... $ECHO_C" >&6
-if test "${ac_cv_struct_tm+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <sys/types.h>
-#include <time.h>
-
-int
-main ()
-{
-struct tm *tp; tp->tm_sec;
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_cv_struct_tm=time.h
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_cv_struct_tm=sys/time.h
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: $ac_cv_struct_tm" >&5
-echo "${ECHO_T}$ac_cv_struct_tm" >&6
-if test $ac_cv_struct_tm = sys/time.h; then
-  
-cat >>confdefs.h <<\_ACEOF
-@%:@define TM_IN_SYS_TIME 1
-_ACEOF
-
-fi
-
-echo "$as_me:$LINENO: checking for struct tm.tm_zone" >&5
-echo $ECHO_N "checking for struct tm.tm_zone... $ECHO_C" >&6
-if test "${ac_cv_member_struct_tm_tm_zone+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <sys/types.h>
-#include <$ac_cv_struct_tm>
-
-
-int
-main ()
-{
-static struct tm ac_aggr;
-if (ac_aggr.tm_zone)
-return 0;
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_cv_member_struct_tm_tm_zone=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <sys/types.h>
-#include <$ac_cv_struct_tm>
-
-
-int
-main ()
-{
-static struct tm ac_aggr;
-if (sizeof ac_aggr.tm_zone)
-return 0;
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_cv_member_struct_tm_tm_zone=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_cv_member_struct_tm_tm_zone=no
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: $ac_cv_member_struct_tm_tm_zone" >&5
-echo "${ECHO_T}$ac_cv_member_struct_tm_tm_zone" >&6
-if test $ac_cv_member_struct_tm_tm_zone = yes; then
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define HAVE_STRUCT_TM_TM_ZONE 1
-_ACEOF
-
-
-fi
-
-if test "$ac_cv_member_struct_tm_tm_zone" = yes; then
-  
-cat >>confdefs.h <<\_ACEOF
-@%:@define HAVE_TM_ZONE 1
-_ACEOF
-
-else
-  echo "$as_me:$LINENO: checking for tzname" >&5
-echo $ECHO_N "checking for tzname... $ECHO_C" >&6
-if test "${ac_cv_var_tzname+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <time.h>
-#ifndef tzname /* For SGI.  */
-extern char *tzname[]; /* RS6000 and others reject char **tzname.  */
-#endif
-
-int
-main ()
-{
-atoi(*tzname);
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest$ac_exeext'
-  { (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
-  ac_cv_var_tzname=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_cv_var_tzname=no
-fi
-rm -f conftest.err conftest.$ac_objext \
-      conftest$ac_exeext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: $ac_cv_var_tzname" >&5
-echo "${ECHO_T}$ac_cv_var_tzname" >&6
-  if test $ac_cv_var_tzname = yes; then
-    
-cat >>confdefs.h <<\_ACEOF
-@%:@define HAVE_TZNAME 1
-_ACEOF
-
-  fi
-fi
-
-echo "$as_me:$LINENO: checking for struct timezone in sys/time.h and time.h" >&5
-echo $ECHO_N "checking for struct timezone in sys/time.h and time.h... $ECHO_C" >&6
-if test "${bash_cv_struct_timezone+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <sys/time.h>
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "struct timezone" >/dev/null 2>&1; then
-  bash_cv_struct_timezone=yes
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <time.h>
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "struct timezone" >/dev/null 2>&1; then
-  bash_cv_struct_timezone=yes
-else
-  bash_cv_struct_timezone=no
-fi
-rm -f conftest*
-
-fi
-rm -f conftest*
-
-
-fi
-
-echo "$as_me:$LINENO: result: $bash_cv_struct_timezone" >&5
-echo "${ECHO_T}$bash_cv_struct_timezone" >&6
-if test $bash_cv_struct_timezone = yes; then
-  cat >>confdefs.h <<\_ACEOF
-@%:@define HAVE_STRUCT_TIMEZONE 1
-_ACEOF
-
-fi
-
-
-echo "$as_me:$LINENO: checking for offset of exit status in return status from wait" >&5
-echo $ECHO_N "checking for offset of exit status in return status from wait... $ECHO_C" >&6
-if test "${bash_cv_wexitstatus_offset+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  if test "$cross_compiling" = yes; then
-  { echo "$as_me:$LINENO: WARNING: cannot check WEXITSTATUS offset if cross compiling -- defaulting to 0" >&5
-echo "$as_me: WARNING: cannot check WEXITSTATUS offset if cross compiling -- defaulting to 0" >&2;}
-    bash_cv_wexitstatus_offset=0
-
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-
-#include <stdlib.h>
-#include <unistd.h>
-
-#include <sys/wait.h>
-
-main(c, v)
-     int c;
-     char **v;
-{
-  pid_t pid, p;
-  int s, i, n;
-
-  s = 0;
-  pid = fork();
-  if (pid == 0)
-    exit (42);
-
-  /* wait for the process */
-  p = wait(&s);
-  if (p != pid)
-    exit (255);
-
-  /* crack s */
-  for (i = 0; i < (sizeof(s) - 8); i++)
-    {
-      n = (s >> i) & 0xff;
-      if (n == 42)
-       exit (i);
-    }
-
-  exit (254);
-}
-
-_ACEOF
-rm -f conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>&5
-  ac_status=$?
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
-  { (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
-  bash_cv_wexitstatus_offset=0
-else
-  echo "$as_me: program exited with status $ac_status" >&5
-echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-( exit $ac_status )
-bash_cv_wexitstatus_offset=$?
-fi
-rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
-fi
-fi
-
-if test "$bash_cv_wexitstatus_offset" -gt 32 ; then
-  { echo "$as_me:$LINENO: WARNING: bad exit status from test program -- defaulting to 0" >&5
-echo "$as_me: WARNING: bad exit status from test program -- defaulting to 0" >&2;}
-  bash_cv_wexitstatus_offset=0
-fi
-echo "$as_me:$LINENO: result: $bash_cv_wexitstatus_offset" >&5
-echo "${ECHO_T}$bash_cv_wexitstatus_offset" >&6
-
-cat >>confdefs.h <<_ACEOF
-@%:@define WEXITSTATUS_OFFSET $bash_cv_wexitstatus_offset
-_ACEOF
-
-
-
-
-  AC_CHECK_HEADERS_ONCE(sys/time.h)
-  echo "$as_me:$LINENO: checking for struct timespec in <time.h>" >&5
-echo $ECHO_N "checking for struct timespec in <time.h>... $ECHO_C" >&6
-if test "${bash_cv_sys_struct_timespec_in_time_h+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <time.h>
-          
-int
-main ()
-{
-static struct timespec x; x.tv_sec = x.tv_nsec;
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  bash_cv_sys_struct_timespec_in_time_h=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-bash_cv_sys_struct_timespec_in_time_h=no
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: $bash_cv_sys_struct_timespec_in_time_h" >&5
-echo "${ECHO_T}$bash_cv_sys_struct_timespec_in_time_h" >&6
-
-  HAVE_STRUCT_TIMESPEC=0
-  TIME_H_DEFINES_STRUCT_TIMESPEC=0
-  SYS_TIME_H_DEFINES_STRUCT_TIMESPEC=0
-  PTHREAD_H_DEFINES_STRUCT_TIMESPEC=0
-  if test $bash_cv_sys_struct_timespec_in_time_h = yes; then
-    cat >>confdefs.h <<\_ACEOF
-@%:@define HAVE_STRUCT_TIMESPEC 1
-_ACEOF
-
-    cat >>confdefs.h <<\_ACEOF
-@%:@define TIME_H_DEFINES_STRUCT_TIMESPEC 1
-_ACEOF
-
-    TIME_H_DEFINES_STRUCT_TIMESPEC=1
-  else
-    echo "$as_me:$LINENO: checking for struct timespec in <sys/time.h>" >&5
-echo $ECHO_N "checking for struct timespec in <sys/time.h>... $ECHO_C" >&6
-if test "${bash_cv_sys_struct_timespec_in_sys_time_h+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <sys/time.h>
-            
-int
-main ()
-{
-static struct timespec x; x.tv_sec = x.tv_nsec;
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  bash_cv_sys_struct_timespec_in_sys_time_h=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-bash_cv_sys_struct_timespec_in_sys_time_h=no
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: $bash_cv_sys_struct_timespec_in_sys_time_h" >&5
-echo "${ECHO_T}$bash_cv_sys_struct_timespec_in_sys_time_h" >&6
-    if test $bash_cv_sys_struct_timespec_in_sys_time_h = yes; then
-      SYS_TIME_H_DEFINES_STRUCT_TIMESPEC=1
-      cat >>confdefs.h <<\_ACEOF
-@%:@define HAVE_STRUCT_TIMESPEC 1
-_ACEOF
-
-      cat >>confdefs.h <<\_ACEOF
-@%:@define SYS_TIME_H_DEFINES_STRUCT_TIMESPEC 1
-_ACEOF
-
-    else
-      echo "$as_me:$LINENO: checking for struct timespec in <pthread.h>" >&5
-echo $ECHO_N "checking for struct timespec in <pthread.h>... $ECHO_C" >&6
-if test "${bash_cv_sys_struct_timespec_in_pthread_h+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <pthread.h>
-              
-int
-main ()
-{
-static struct timespec x; x.tv_sec = x.tv_nsec;
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  bash_cv_sys_struct_timespec_in_pthread_h=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-bash_cv_sys_struct_timespec_in_pthread_h=no
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: $bash_cv_sys_struct_timespec_in_pthread_h" >&5
-echo "${ECHO_T}$bash_cv_sys_struct_timespec_in_pthread_h" >&6
-      if test $bash_cv_sys_struct_timespec_in_pthread_h = yes; then
-        PTHREAD_H_DEFINES_STRUCT_TIMESPEC=1
-       cat >>confdefs.h <<\_ACEOF
-@%:@define HAVE_STRUCT_TIMESPEC 1
-_ACEOF
-
-       cat >>confdefs.h <<\_ACEOF
-@%:@define PTHREAD_H_DEFINES_STRUCT_TIMESPEC 1
-_ACEOF
-
-      fi
-    fi
-  fi
-  
-  
-  
-
-
-
-  
-  AC_CHECK_HEADERS_ONCE(sys/time.h)
-
-  echo "$as_me:$LINENO: checking for struct stat.st_atim.tv_nsec" >&5
-echo $ECHO_N "checking for struct stat.st_atim.tv_nsec... $ECHO_C" >&6
-if test "${ac_cv_member_struct_stat_st_atim_tv_nsec+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <sys/types.h>
-     #include <sys/stat.h>
-
-int
-main ()
-{
-static struct stat ac_aggr;
-if (ac_aggr.st_atim.tv_nsec)
-return 0;
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_cv_member_struct_stat_st_atim_tv_nsec=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <sys/types.h>
-     #include <sys/stat.h>
-
-int
-main ()
-{
-static struct stat ac_aggr;
-if (sizeof ac_aggr.st_atim.tv_nsec)
-return 0;
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_cv_member_struct_stat_st_atim_tv_nsec=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_cv_member_struct_stat_st_atim_tv_nsec=no
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: $ac_cv_member_struct_stat_st_atim_tv_nsec" >&5
-echo "${ECHO_T}$ac_cv_member_struct_stat_st_atim_tv_nsec" >&6
-if test $ac_cv_member_struct_stat_st_atim_tv_nsec = yes; then
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define HAVE_STRUCT_STAT_ST_ATIM_TV_NSEC 1
-_ACEOF
-
-echo "$as_me:$LINENO: checking whether struct stat.st_atim is of type struct timespec" >&5
-echo $ECHO_N "checking whether struct stat.st_atim is of type struct timespec... $ECHO_C" >&6
-if test "${ac_cv_typeof_struct_stat_st_atim_is_struct_timespec+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-
-            #include <sys/types.h>
-            #include <sys/stat.h>
-            #if HAVE_SYS_TIME_H
-            # include <sys/time.h>
-            #endif
-            #include <time.h>
-            struct timespec ts;
-            struct stat st;
-          
-int
-main ()
-{
-
-            st.st_atim = ts;
-          
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_cv_typeof_struct_stat_st_atim_is_struct_timespec=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_cv_typeof_struct_stat_st_atim_is_struct_timespec=no
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: $ac_cv_typeof_struct_stat_st_atim_is_struct_timespec" >&5
-echo "${ECHO_T}$ac_cv_typeof_struct_stat_st_atim_is_struct_timespec" >&6
-     if test $ac_cv_typeof_struct_stat_st_atim_is_struct_timespec = yes; then
-       
-cat >>confdefs.h <<\_ACEOF
-@%:@define TYPEOF_STRUCT_STAT_ST_ATIM_IS_STRUCT_TIMESPEC 1
-_ACEOF
-
-     fi
-else
-  echo "$as_me:$LINENO: checking for struct stat.st_atimespec.tv_nsec" >&5
-echo $ECHO_N "checking for struct stat.st_atimespec.tv_nsec... $ECHO_C" >&6
-if test "${ac_cv_member_struct_stat_st_atimespec_tv_nsec+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <sys/types.h>
-        #include <sys/stat.h>
-
-int
-main ()
-{
-static struct stat ac_aggr;
-if (ac_aggr.st_atimespec.tv_nsec)
-return 0;
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_cv_member_struct_stat_st_atimespec_tv_nsec=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <sys/types.h>
-        #include <sys/stat.h>
-
-int
-main ()
-{
-static struct stat ac_aggr;
-if (sizeof ac_aggr.st_atimespec.tv_nsec)
-return 0;
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_cv_member_struct_stat_st_atimespec_tv_nsec=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_cv_member_struct_stat_st_atimespec_tv_nsec=no
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: $ac_cv_member_struct_stat_st_atimespec_tv_nsec" >&5
-echo "${ECHO_T}$ac_cv_member_struct_stat_st_atimespec_tv_nsec" >&6
-if test $ac_cv_member_struct_stat_st_atimespec_tv_nsec = yes; then
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define HAVE_STRUCT_STAT_ST_ATIMESPEC_TV_NSEC 1
-_ACEOF
-
-
-else
-  echo "$as_me:$LINENO: checking for struct stat.st_atimensec" >&5
-echo $ECHO_N "checking for struct stat.st_atimensec... $ECHO_C" >&6
-if test "${ac_cv_member_struct_stat_st_atimensec+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <sys/types.h>
-           #include <sys/stat.h>
-
-int
-main ()
-{
-static struct stat ac_aggr;
-if (ac_aggr.st_atimensec)
-return 0;
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_cv_member_struct_stat_st_atimensec=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <sys/types.h>
-           #include <sys/stat.h>
-
-int
-main ()
-{
-static struct stat ac_aggr;
-if (sizeof ac_aggr.st_atimensec)
-return 0;
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_cv_member_struct_stat_st_atimensec=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_cv_member_struct_stat_st_atimensec=no
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: $ac_cv_member_struct_stat_st_atimensec" >&5
-echo "${ECHO_T}$ac_cv_member_struct_stat_st_atimensec" >&6
-if test $ac_cv_member_struct_stat_st_atimensec = yes; then
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define HAVE_STRUCT_STAT_ST_ATIMENSEC 1
-_ACEOF
-
-
-else
-  echo "$as_me:$LINENO: checking for struct stat.st_atim.st__tim.tv_nsec" >&5
-echo $ECHO_N "checking for struct stat.st_atim.st__tim.tv_nsec... $ECHO_C" >&6
-if test "${ac_cv_member_struct_stat_st_atim_st__tim_tv_nsec+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <sys/types.h>
-              #include <sys/stat.h>
-
-int
-main ()
-{
-static struct stat ac_aggr;
-if (ac_aggr.st_atim.st__tim.tv_nsec)
-return 0;
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_cv_member_struct_stat_st_atim_st__tim_tv_nsec=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <sys/types.h>
-              #include <sys/stat.h>
-
-int
-main ()
-{
-static struct stat ac_aggr;
-if (sizeof ac_aggr.st_atim.st__tim.tv_nsec)
-return 0;
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_cv_member_struct_stat_st_atim_st__tim_tv_nsec=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_cv_member_struct_stat_st_atim_st__tim_tv_nsec=no
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: $ac_cv_member_struct_stat_st_atim_st__tim_tv_nsec" >&5
-echo "${ECHO_T}$ac_cv_member_struct_stat_st_atim_st__tim_tv_nsec" >&6
-if test $ac_cv_member_struct_stat_st_atim_st__tim_tv_nsec = yes; then
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define HAVE_STRUCT_STAT_ST_ATIM_ST__TIM_TV_NSEC 1
-_ACEOF
-
-
-fi
-
-fi
-
-fi
-
-fi
-
-
-
-echo "$as_me:$LINENO: checking for the existence of strsignal" >&5
-echo $ECHO_N "checking for the existence of strsignal... $ECHO_C" >&6
-if test "${bash_cv_have_strsignal+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <sys/types.h>
-#include <signal.h>
-int
-main ()
-{
-char *s = (char *)strsignal(2);
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest$ac_exeext'
-  { (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
-  bash_cv_have_strsignal=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-bash_cv_have_strsignal=no
-fi
-rm -f conftest.err conftest.$ac_objext \
-      conftest$ac_exeext conftest.$ac_ext
-fi
-
-echo "$as_me:$LINENO: result: $bash_cv_have_strsignal" >&5
-echo "${ECHO_T}$bash_cv_have_strsignal" >&6
-if test $bash_cv_have_strsignal = yes; then
-cat >>confdefs.h <<\_ACEOF
-@%:@define HAVE_STRSIGNAL 1
-_ACEOF
-
-fi
-
-echo "$as_me:$LINENO: checking if opendir() opens non-directories" >&5
-echo $ECHO_N "checking if opendir() opens non-directories... $ECHO_C" >&6
-if test "${bash_cv_opendir_not_robust+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  if test "$cross_compiling" = yes; then
-  { echo "$as_me:$LINENO: WARNING: cannot check opendir if cross compiling -- defaulting to no" >&5
-echo "$as_me: WARNING: cannot check opendir if cross compiling -- defaulting to no" >&2;}
-     bash_cv_opendir_not_robust=no
-
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-
-#include <stdio.h>
-#include <sys/types.h>
-#include <fcntl.h>
-#ifdef HAVE_UNISTD_H
-# include <unistd.h>
-#endif /* HAVE_UNISTD_H */
-#if defined(HAVE_DIRENT_H)
-# include <dirent.h>
-#else
-# define dirent direct
-# ifdef HAVE_SYS_NDIR_H
-#  include <sys/ndir.h>
-# endif /* SYSNDIR */
-# ifdef HAVE_SYS_DIR_H
-#  include <sys/dir.h>
-# endif /* SYSDIR */
-# ifdef HAVE_NDIR_H
-#  include <ndir.h>
-# endif
-#endif /* HAVE_DIRENT_H */
-main()
-{
-DIR *dir;
-int fd, err;
-err = mkdir("bash-aclocal", 0700);
-if (err < 0) {
-  perror("mkdir");
-  exit(1);
-}
-unlink("bash-aclocal/not_a_directory");
-fd = open("bash-aclocal/not_a_directory", O_WRONLY|O_CREAT|O_EXCL, 0666);
-write(fd, "\n", 1);
-close(fd);
-dir = opendir("bash-aclocal/not_a_directory");
-unlink("bash-aclocal/not_a_directory");
-rmdir("bash-aclocal");
-exit (dir == 0);
-}
-_ACEOF
-rm -f conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>&5
-  ac_status=$?
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
-  { (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
-  bash_cv_opendir_not_robust=yes
-else
-  echo "$as_me: program exited with status $ac_status" >&5
-echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-( exit $ac_status )
-bash_cv_opendir_not_robust=no
-fi
-rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
-fi
-fi
-
-echo "$as_me:$LINENO: result: $bash_cv_opendir_not_robust" >&5
-echo "${ECHO_T}$bash_cv_opendir_not_robust" >&6
-if test $bash_cv_opendir_not_robust = yes; then
-cat >>confdefs.h <<\_ACEOF
-@%:@define OPENDIR_NOT_ROBUST 1
-_ACEOF
-
-fi
-
-echo "$as_me:$LINENO: checking whether ulimit can substitute for getdtablesize" >&5
-echo $ECHO_N "checking whether ulimit can substitute for getdtablesize... $ECHO_C" >&6
-if test "${bash_cv_ulimit_maxfds+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  if test "$cross_compiling" = yes; then
-  { echo "$as_me:$LINENO: WARNING: cannot check ulimit if cross compiling -- defaulting to no" >&5
-echo "$as_me: WARNING: cannot check ulimit if cross compiling -- defaulting to no" >&2;}
-    bash_cv_ulimit_maxfds=no
-
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-
-main()
-{
-long maxfds = ulimit(4, 0L);
-exit (maxfds == -1L);
-}
-
-_ACEOF
-rm -f conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>&5
-  ac_status=$?
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
-  { (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
-  bash_cv_ulimit_maxfds=yes
-else
-  echo "$as_me: program exited with status $ac_status" >&5
-echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-( exit $ac_status )
-bash_cv_ulimit_maxfds=no
-fi
-rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
-fi
-fi
-
-echo "$as_me:$LINENO: result: $bash_cv_ulimit_maxfds" >&5
-echo "${ECHO_T}$bash_cv_ulimit_maxfds" >&6
-if test $bash_cv_ulimit_maxfds = yes; then
-cat >>confdefs.h <<\_ACEOF
-@%:@define ULIMIT_MAXFDS 1
-_ACEOF
-
-fi
-
-
-  AC_CHECK_FUNCS_ONCE(fpurge)
-  AC_CHECK_FUNCS_ONCE(__fpurge)
-  echo "$as_me:$LINENO: checking whether fpurge is declared" >&5
-echo $ECHO_N "checking whether fpurge is declared... $ECHO_C" >&6
-if test "${ac_cv_have_decl_fpurge+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <stdio.h>
-
-int
-main ()
-{
-#ifndef fpurge
-  char *p = (char *) fpurge;
-#endif
-
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  ac_cv_have_decl_fpurge=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_cv_have_decl_fpurge=no
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: $ac_cv_have_decl_fpurge" >&5
-echo "${ECHO_T}$ac_cv_have_decl_fpurge" >&6
-if test $ac_cv_have_decl_fpurge = yes; then
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define HAVE_DECL_FPURGE 1
-_ACEOF
-
-
-else
-  cat >>confdefs.h <<_ACEOF
-@%:@define HAVE_DECL_FPURGE 0
-_ACEOF
-
-
-fi
-
-
-
-echo "$as_me:$LINENO: checking to see if getenv can be redefined" >&5
-echo $ECHO_N "checking to see if getenv can be redefined... $ECHO_C" >&6
-if test "${bash_cv_getenv_redef+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  if test "$cross_compiling" = yes; then
-  { echo "$as_me:$LINENO: WARNING: cannot check getenv redefinition if cross compiling -- defaulting to yes" >&5
-echo "$as_me: WARNING: cannot check getenv redefinition if cross compiling -- defaulting to yes" >&2;}
-    bash_cv_getenv_redef=yes
-
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-
-#ifdef HAVE_UNISTD_H
-#  include <unistd.h>
-#endif
-#ifndef __STDC__
-#  ifndef const
-#    define const
-#  endif
-#endif
-char *
-getenv (name)
-#if defined (__linux__) || defined (__bsdi__) || defined (convex)
-     const char *name;
-#else
-     char const *name;
-#endif /* !__linux__ && !__bsdi__ && !convex */
-{
-return "42";
-}
-main()
-{
-char *s;
-/* The next allows this program to run, but does not allow bash to link
-   when it redefines getenv.  I'm not really interested in figuring out
-   why not. */
-#if defined (NeXT)
-exit(1);
-#endif
-s = getenv("ABCDE");
-exit(s == 0);  /* force optimizer to leave getenv in */
-}
-
-_ACEOF
-rm -f conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>&5
-  ac_status=$?
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
-  { (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
-  bash_cv_getenv_redef=yes
-else
-  echo "$as_me: program exited with status $ac_status" >&5
-echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-( exit $ac_status )
-bash_cv_getenv_redef=no
-fi
-rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
-fi
-fi
-
-echo "$as_me:$LINENO: result: $bash_cv_getenv_redef" >&5
-echo "${ECHO_T}$bash_cv_getenv_redef" >&6
-if test $bash_cv_getenv_redef = yes; then
-cat >>confdefs.h <<\_ACEOF
-@%:@define CAN_REDEFINE_GETENV 1
-_ACEOF
-
-fi
-
-if test "$ac_cv_func_getcwd" = "yes"; then
-echo "$as_me:$LINENO: checking if getcwd() will dynamically allocate memory with 0 size" >&5
-echo $ECHO_N "checking if getcwd() will dynamically allocate memory with 0 size... $ECHO_C" >&6
-if test "${bash_cv_getcwd_malloc+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  if test "$cross_compiling" = yes; then
-  { echo "$as_me:$LINENO: WARNING: cannot check whether getcwd allocates memory when cross-compiling -- defaulting to no" >&5
-echo "$as_me: WARNING: cannot check whether getcwd allocates memory when cross-compiling -- defaulting to no" >&2;}
-    bash_cv_getcwd_malloc=no
-
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-
-#include <stdio.h>
-#ifdef HAVE_UNISTD_H
-#include <unistd.h>
-#endif
-
-main()
-{
-       char    *xpwd;
-       xpwd = getcwd(0, 0);
-       exit (xpwd == 0);
-}
-
-_ACEOF
-rm -f conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>&5
-  ac_status=$?
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
-  { (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
-  bash_cv_getcwd_malloc=yes
-else
-  echo "$as_me: program exited with status $ac_status" >&5
-echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-( exit $ac_status )
-bash_cv_getcwd_malloc=no
-fi
-rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
-fi
-fi
-
-echo "$as_me:$LINENO: result: $bash_cv_getcwd_malloc" >&5
-echo "${ECHO_T}$bash_cv_getcwd_malloc" >&6
-if test $bash_cv_getcwd_malloc = no; then
-cat >>confdefs.h <<\_ACEOF
-@%:@define GETCWD_BROKEN 1
-_ACEOF
-
-case $LIB@&t@OBJS in
-    "getcwd.$ac_objext"   | \
-  *" getcwd.$ac_objext"   | \
-    "getcwd.$ac_objext "* | \
-  *" getcwd.$ac_objext "* ) ;;
-  *) LIB@&t@OBJS="$LIB@&t@OBJS getcwd.$ac_objext" ;;
-esac
-
-fi
-
-fi
-
-echo "$as_me:$LINENO: checking for presence of POSIX-style sigsetjmp/siglongjmp" >&5
-echo $ECHO_N "checking for presence of POSIX-style sigsetjmp/siglongjmp... $ECHO_C" >&6
-if test "${bash_cv_func_sigsetjmp+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  if test "$cross_compiling" = yes; then
-  { echo "$as_me:$LINENO: WARNING: cannot check for sigsetjmp/siglongjmp if cross-compiling -- defaulting to missing" >&5
-echo "$as_me: WARNING: cannot check for sigsetjmp/siglongjmp if cross-compiling -- defaulting to missing" >&2;}
-     bash_cv_func_sigsetjmp=missing
-
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-
-#ifdef HAVE_UNISTD_H
-#include <unistd.h>
-#endif
-#include <sys/types.h>
-#include <signal.h>
-#include <setjmp.h>
-
-main()
-{
-#if !defined (_POSIX_VERSION) || !defined (HAVE_POSIX_SIGNALS)
-exit (1);
-#else
-
-int code;
-sigset_t set, oset;
-sigjmp_buf xx;
-
-/* get the mask */
-sigemptyset(&set);
-sigemptyset(&oset);
-sigprocmask(SIG_BLOCK, (sigset_t *)NULL, &set);
-sigprocmask(SIG_BLOCK, (sigset_t *)NULL, &oset);
-
-/* save it */
-code = sigsetjmp(xx, 1);
-if (code)
-  exit(0);     /* could get sigmask and compare to oset here. */
-
-/* change it */
-sigaddset(&set, SIGINT);
-sigprocmask(SIG_BLOCK, &set, (sigset_t *)NULL);
-
-/* and siglongjmp */
-siglongjmp(xx, 10);
-exit(1);
-#endif
-}
-_ACEOF
-rm -f conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>&5
-  ac_status=$?
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
-  { (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
-  bash_cv_func_sigsetjmp=present
-else
-  echo "$as_me: program exited with status $ac_status" >&5
-echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-( exit $ac_status )
-bash_cv_func_sigsetjmp=missing
-fi
-rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
-fi
-fi
-
-echo "$as_me:$LINENO: result: $bash_cv_func_sigsetjmp" >&5
-echo "${ECHO_T}$bash_cv_func_sigsetjmp" >&6
-if test $bash_cv_func_sigsetjmp = present; then
-cat >>confdefs.h <<\_ACEOF
-@%:@define HAVE_POSIX_SIGSETJMP 1
-_ACEOF
-
-fi
-
-
-echo "$as_me:$LINENO: checking whether or not strcoll and strcmp differ" >&5
-echo $ECHO_N "checking whether or not strcoll and strcmp differ... $ECHO_C" >&6
-if test "${bash_cv_func_strcoll_broken+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  if test "$cross_compiling" = yes; then
-  { echo "$as_me:$LINENO: WARNING: cannot check strcoll if cross compiling -- defaulting to no" >&5
-echo "$as_me: WARNING: cannot check strcoll if cross compiling -- defaulting to no" >&2;}
-    bash_cv_func_strcoll_broken=no
-
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-
-#include <stdio.h>
-#if defined (HAVE_LOCALE_H)
-#include <locale.h>
-#endif
-
-main(c, v)
-int     c;
-char    *v[];
-{
-        int     r1, r2;
-        char    *deflocale, *defcoll;
-
-#ifdef HAVE_SETLOCALE
-        deflocale = setlocale(LC_ALL, "");
-       defcoll = setlocale(LC_COLLATE, "");
-#endif
-
-#ifdef HAVE_STRCOLL
-       /* These two values are taken from tests/glob-test. */
-        r1 = strcoll("abd", "aXd");
-#else
-       r1 = 0;
-#endif
-        r2 = strcmp("abd", "aXd");
-
-       /* These two should both be greater than 0.  It is permissible for
-          a system to return different values, as long as the sign is the
-          same. */
-
-        /* Exit with 1 (failure) if these two values are both > 0, since
-          this tests whether strcoll(3) is broken with respect to strcmp(3)
-          in the default locale. */
-       exit (r1 > 0 && r2 > 0);
-}
-
-_ACEOF
-rm -f conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>&5
-  ac_status=$?
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
-  { (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
-  bash_cv_func_strcoll_broken=yes
-else
-  echo "$as_me: program exited with status $ac_status" >&5
-echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-( exit $ac_status )
-bash_cv_func_strcoll_broken=no
-fi
-rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
-fi
-fi
-
-echo "$as_me:$LINENO: result: $bash_cv_func_strcoll_broken" >&5
-echo "${ECHO_T}$bash_cv_func_strcoll_broken" >&6
-if test $bash_cv_func_strcoll_broken = yes; then
-cat >>confdefs.h <<\_ACEOF
-@%:@define STRCOLL_BROKEN 1
-_ACEOF
-
-fi
-
-
-  AC_CHECK_FUNCS_ONCE(snprintf)
-  if test X$ac_cv_func_snprintf = Xyes; then
-    echo "$as_me:$LINENO: checking for standard-conformant snprintf" >&5
-echo $ECHO_N "checking for standard-conformant snprintf... $ECHO_C" >&6
-if test "${bash_cv_func_snprintf+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  if test "$cross_compiling" = yes; then
-  { echo "$as_me:$LINENO: WARNING: cannot check standard snprintf if cross-compiling" >&5
-echo "$as_me: WARNING: cannot check standard snprintf if cross-compiling" >&2;}
-    bash_cv_func_snprintf=yes
-
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-
-#include <stdio.h>
-
-main()
-{
-  int n;
-  n = snprintf (0, 0, "%s", "0123456");
-  exit(n != 7);
-}
-
-_ACEOF
-rm -f conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>&5
-  ac_status=$?
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
-  { (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
-  bash_cv_func_snprintf=yes
-else
-  echo "$as_me: program exited with status $ac_status" >&5
-echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-( exit $ac_status )
-bash_cv_func_snprintf=no
-fi
-rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
-fi
-fi
-echo "$as_me:$LINENO: result: $bash_cv_func_snprintf" >&5
-echo "${ECHO_T}$bash_cv_func_snprintf" >&6
-    if test $bash_cv_func_snprintf = no; then
-      ac_cv_func_snprintf=no
-    fi
-  fi
-  if test $ac_cv_func_snprintf = no; then
-    
-cat >>confdefs.h <<\_ACEOF
-@%:@define HAVE_SNPRINTF 0
-_ACEOF
-
-  fi
-
-
-  AC_CHECK_FUNCS_ONCE(vsnprintf)
-  if test X$ac_cv_func_vsnprintf = Xyes; then
-    echo "$as_me:$LINENO: checking for standard-conformant vsnprintf" >&5
-echo $ECHO_N "checking for standard-conformant vsnprintf... $ECHO_C" >&6
-if test "${bash_cv_func_vsnprintf+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  if test "$cross_compiling" = yes; then
-  { echo "$as_me:$LINENO: WARNING: cannot check standard vsnprintf if cross-compiling" >&5
-echo "$as_me: WARNING: cannot check standard vsnprintf if cross-compiling" >&2;}
-    bash_cv_func_vsnprintf=yes
-
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-
-#if HAVE_STDARG_H
-#include <stdarg.h>
-#else
-#include <varargs.h>
-#endif
-#include <stdio.h>
-#include <stdlib.h>
-
-static int
-#if HAVE_STDARG_H
-foo(const char *fmt, ...)
-#else
-foo(format, va_alist)
-     const char *format;
-     va_dcl
-#endif
-{
-  va_list args;
-  int n;
-
-#if HAVE_STDARG_H
-  va_start(args, fmt);
-#else
-  va_start(args);
-#endif
-  n = vsnprintf(0, 0, fmt, args);
-  va_end (args);
-  return n;
-}
-
-main()
-{
-  int n;
-  n = foo("%s", "0123456");
-  exit(n != 7);
-}
-
-_ACEOF
-rm -f conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>&5
-  ac_status=$?
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
-  { (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
-  bash_cv_func_vsnprintf=yes
-else
-  echo "$as_me: program exited with status $ac_status" >&5
-echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-( exit $ac_status )
-bash_cv_func_vsnprintf=no
-fi
-rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
-fi
-fi
-echo "$as_me:$LINENO: result: $bash_cv_func_vsnprintf" >&5
-echo "${ECHO_T}$bash_cv_func_vsnprintf" >&6
-    if test $bash_cv_func_vsnprintf = no; then
-      ac_cv_func_vsnprintf=no
-    fi
-  fi
-  if test $ac_cv_func_vsnprintf = no; then
-    
-cat >>confdefs.h <<\_ACEOF
-@%:@define HAVE_VSNPRINTF 0
-_ACEOF
-
-  fi
-
-
-
-if test "$ac_cv_func_putenv" = "yes"; then
-
-
-
-echo "$as_me:$LINENO: checking for standard-conformant putenv declaration" >&5
-echo $ECHO_N "checking for standard-conformant putenv declaration... $ECHO_C" >&6
-if test "${bash_cv_std_putenv+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-
-#if STDC_HEADERS
-#include <stdlib.h>
-#include <stddef.h>
-#endif
-#ifndef __STDC__
-#  ifndef const
-#    define const
-#  endif
-#endif
-#ifdef PROTOTYPES
-extern int putenv (char *);
-#else
-extern int putenv ();
-#endif
-
-int
-main ()
-{
-return (putenv == 0);
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest$ac_exeext'
-  { (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
-  bash_cv_std_putenv=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-bash_cv_std_putenv=no
-
-fi
-rm -f conftest.err conftest.$ac_objext \
-      conftest$ac_exeext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: $bash_cv_std_putenv" >&5
-echo "${ECHO_T}$bash_cv_std_putenv" >&6
-if test $bash_cv_std_putenv = yes; then
-cat >>confdefs.h <<\_ACEOF
-@%:@define HAVE_STD_PUTENV 1
-_ACEOF
-
-fi
-
-else
-cat >>confdefs.h <<\_ACEOF
-@%:@define HAVE_STD_PUTENV 1
-_ACEOF
-
-fi
-if test "$ac_cv_func_unsetenv" = "yes"; then
-
-
-
-echo "$as_me:$LINENO: checking for standard-conformant unsetenv declaration" >&5
-echo $ECHO_N "checking for standard-conformant unsetenv declaration... $ECHO_C" >&6
-if test "${bash_cv_std_unsetenv+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-
-#if STDC_HEADERS
-#include <stdlib.h>
-#include <stddef.h>
-#endif
-#ifndef __STDC__
-#  ifndef const
-#    define const
-#  endif
-#endif
-#ifdef PROTOTYPES
-extern int unsetenv (const char *);
-#else
-extern int unsetenv ();
-#endif
-
-int
-main ()
-{
-return (unsetenv == 0);
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest$ac_exeext'
-  { (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
-  bash_cv_std_unsetenv=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-bash_cv_std_unsetenv=no
-
-fi
-rm -f conftest.err conftest.$ac_objext \
-      conftest$ac_exeext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: $bash_cv_std_unsetenv" >&5
-echo "${ECHO_T}$bash_cv_std_unsetenv" >&6
-if test $bash_cv_std_unsetenv = yes; then
-cat >>confdefs.h <<\_ACEOF
-@%:@define HAVE_STD_UNSETENV 1
-_ACEOF
-
-fi
-
-else
-cat >>confdefs.h <<\_ACEOF
-@%:@define HAVE_STD_UNSETENV 1
-_ACEOF
-
-fi
-
-echo "$as_me:$LINENO: checking for printf floating point output in hex notation" >&5
-echo $ECHO_N "checking for printf floating point output in hex notation... $ECHO_C" >&6
-if test "${bash_cv_printf_a_format+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  if test "$cross_compiling" = yes; then
-  { echo "$as_me:$LINENO: WARNING: cannot check printf if cross compiling -- defaulting to no" >&5
-echo "$as_me: WARNING: cannot check printf if cross compiling -- defaulting to no" >&2;}
-    bash_cv_printf_a_format=no
-
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-
-#include <stdio.h>
-#include <string.h>
-
-int
-main()
-{
-       double y = 0.0;
-       char abuf[1024];
-
-       sprintf(abuf, "%A", y);
-       exit(strchr(abuf, 'P') == (char *)0);
-}
-
-_ACEOF
-rm -f conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>&5
-  ac_status=$?
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
-  { (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
-  bash_cv_printf_a_format=yes
-else
-  echo "$as_me: program exited with status $ac_status" >&5
-echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-( exit $ac_status )
-bash_cv_printf_a_format=no
-fi
-rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
-fi
-fi
-
-echo "$as_me:$LINENO: result: $bash_cv_printf_a_format" >&5
-echo "${ECHO_T}$bash_cv_printf_a_format" >&6
-if test $bash_cv_printf_a_format = yes; then
-cat >>confdefs.h <<\_ACEOF
-@%:@define HAVE_PRINTF_A_FORMAT 1
-_ACEOF
-
-fi
-
-
-
-
-echo "$as_me:$LINENO: checking if signal handlers must be reinstalled when invoked" >&5
-echo $ECHO_N "checking if signal handlers must be reinstalled when invoked... $ECHO_C" >&6
-if test "${bash_cv_must_reinstall_sighandlers+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  if test "$cross_compiling" = yes; then
-  { echo "$as_me:$LINENO: WARNING: cannot check signal handling if cross compiling -- defaulting to no" >&5
-echo "$as_me: WARNING: cannot check signal handling if cross compiling -- defaulting to no" >&2;}
-    bash_cv_must_reinstall_sighandlers=no
-
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-
-#include <signal.h>
-#ifdef HAVE_UNISTD_H
-#include <unistd.h>
-#endif
-
-typedef RETSIGTYPE sigfunc();
-
-int nsigint;
-
-#ifdef HAVE_POSIX_SIGNALS
-sigfunc *
-set_signal_handler(sig, handler)
-     int sig;
-     sigfunc *handler;
-{
-  struct sigaction act, oact;
-  act.sa_handler = handler;
-  act.sa_flags = 0;
-  sigemptyset (&act.sa_mask);
-  sigemptyset (&oact.sa_mask);
-  sigaction (sig, &act, &oact);
-  return (oact.sa_handler);
-}
-#else
-#define set_signal_handler(s, h) signal(s, h)
-#endif
-
-RETSIGTYPE
-sigint(s)
-int s;
-{
-  nsigint++;
-}
-
-main()
-{
-       nsigint = 0;
-       set_signal_handler(SIGINT, sigint);
-       kill((int)getpid(), SIGINT);
-       kill((int)getpid(), SIGINT);
-       exit(nsigint != 2);
-}
-
-_ACEOF
-rm -f conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>&5
-  ac_status=$?
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
-  { (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
-  bash_cv_must_reinstall_sighandlers=no
-else
-  echo "$as_me: program exited with status $ac_status" >&5
-echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-( exit $ac_status )
-bash_cv_must_reinstall_sighandlers=yes
-fi
-rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
-fi
-fi
-
-echo "$as_me:$LINENO: result: $bash_cv_must_reinstall_sighandlers" >&5
-echo "${ECHO_T}$bash_cv_must_reinstall_sighandlers" >&6
-if test $bash_cv_must_reinstall_sighandlers = yes; then
-cat >>confdefs.h <<\_ACEOF
-@%:@define MUST_REINSTALL_SIGHANDLERS 1
-_ACEOF
-
-fi
-
-
-echo "$as_me:$LINENO: checking for presence of necessary job control definitions" >&5
-echo $ECHO_N "checking for presence of necessary job control definitions... $ECHO_C" >&6
-if test "${bash_cv_job_control_missing+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  if test "$cross_compiling" = yes; then
-  { echo "$as_me:$LINENO: WARNING: cannot check job control if cross-compiling -- defaulting to missing" >&5
-echo "$as_me: WARNING: cannot check job control if cross-compiling -- defaulting to missing" >&2;}
-     bash_cv_job_control_missing=missing
-
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-
-#include <sys/types.h>
-#ifdef HAVE_SYS_WAIT_H
-#include <sys/wait.h>
-#endif
-#ifdef HAVE_UNISTD_H
-#include <unistd.h>
-#endif
-#include <signal.h>
-
-/* Add more tests in here as appropriate. */
-main()
-{
-/* signal type */
-#if !defined (HAVE_POSIX_SIGNALS) && !defined (HAVE_BSD_SIGNALS)
-exit(1);
-#endif
-
-/* signals and tty control. */
-#if !defined (SIGTSTP) || !defined (SIGSTOP) || !defined (SIGCONT)
-exit (1);
-#endif
-
-/* process control */
-#if !defined (WNOHANG) || !defined (WUNTRACED) 
-exit(1);
-#endif
-
-/* Posix systems have tcgetpgrp and waitpid. */
-#if defined (_POSIX_VERSION) && !defined (HAVE_TCGETPGRP)
-exit(1);
-#endif
-
-#if defined (_POSIX_VERSION) && !defined (HAVE_WAITPID)
-exit(1);
-#endif
-
-/* Other systems have TIOCSPGRP/TIOCGPRGP and wait3. */
-#if !defined (_POSIX_VERSION) && !defined (HAVE_WAIT3)
-exit(1);
-#endif
-
-exit(0);
-}
-_ACEOF
-rm -f conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>&5
-  ac_status=$?
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
-  { (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
-  bash_cv_job_control_missing=present
-else
-  echo "$as_me: program exited with status $ac_status" >&5
-echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-( exit $ac_status )
-bash_cv_job_control_missing=missing
-fi
-rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
-fi
-fi
-
-echo "$as_me:$LINENO: result: $bash_cv_job_control_missing" >&5
-echo "${ECHO_T}$bash_cv_job_control_missing" >&6
-if test $bash_cv_job_control_missing = missing; then
-cat >>confdefs.h <<\_ACEOF
-@%:@define JOB_CONTROL_MISSING 1
-_ACEOF
-
-fi
-
-echo "$as_me:$LINENO: checking for presence of named pipes" >&5
-echo $ECHO_N "checking for presence of named pipes... $ECHO_C" >&6
-if test "${bash_cv_sys_named_pipes+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  if test "$cross_compiling" = yes; then
-  { echo "$as_me:$LINENO: WARNING: cannot check for named pipes if cross-compiling -- defaulting to missing" >&5
-echo "$as_me: WARNING: cannot check for named pipes if cross-compiling -- defaulting to missing" >&2;}
-     bash_cv_sys_named_pipes=missing
-
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-
-#include <sys/types.h>
-#include <sys/stat.h>
-#ifdef HAVE_UNISTD_H
-#include <unistd.h>
-#endif
-
-/* Add more tests in here as appropriate. */
-main()
-{
-int fd, err;
-
-#if defined (HAVE_MKFIFO)
-exit (0);
-#endif
-
-#if !defined (S_IFIFO) && (defined (_POSIX_VERSION) && !defined (S_ISFIFO))
-exit (1);
-#endif
-
-#if defined (NeXT)
-exit (1);
-#endif
-err = mkdir("bash-aclocal", 0700);
-if (err < 0) {
-  perror ("mkdir");
-  exit(1);
-}
-fd = mknod ("bash-aclocal/sh-np-autoconf", 0666 | S_IFIFO, 0);
-if (fd == -1) {
-  rmdir ("bash-aclocal");
-  exit (1);
-}
-close(fd);
-unlink ("bash-aclocal/sh-np-autoconf");
-rmdir ("bash-aclocal");
-exit(0);
-}
-_ACEOF
-rm -f conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>&5
-  ac_status=$?
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
-  { (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
-  bash_cv_sys_named_pipes=present
-else
-  echo "$as_me: program exited with status $ac_status" >&5
-echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-( exit $ac_status )
-bash_cv_sys_named_pipes=missing
-fi
-rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
-fi
-fi
-
-echo "$as_me:$LINENO: result: $bash_cv_sys_named_pipes" >&5
-echo "${ECHO_T}$bash_cv_sys_named_pipes" >&6
-if test $bash_cv_sys_named_pipes = missing; then
-cat >>confdefs.h <<\_ACEOF
-@%:@define NAMED_PIPES_MISSING 1
-_ACEOF
-
-fi
-
-
-echo "$as_me:$LINENO: checking whether termios.h defines TIOCGWINSZ" >&5
-echo $ECHO_N "checking whether termios.h defines TIOCGWINSZ... $ECHO_C" >&6
-if test "${ac_cv_sys_tiocgwinsz_in_termios_h+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <sys/types.h>
-#include <termios.h>
-#ifdef TIOCGWINSZ
-  yes
-#endif
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "yes" >/dev/null 2>&1; then
-  ac_cv_sys_tiocgwinsz_in_termios_h=yes
-else
-  ac_cv_sys_tiocgwinsz_in_termios_h=no
-fi
-rm -f conftest*
-
-fi
-echo "$as_me:$LINENO: result: $ac_cv_sys_tiocgwinsz_in_termios_h" >&5
-echo "${ECHO_T}$ac_cv_sys_tiocgwinsz_in_termios_h" >&6
-
-if test $ac_cv_sys_tiocgwinsz_in_termios_h != yes; then
-  echo "$as_me:$LINENO: checking whether sys/ioctl.h defines TIOCGWINSZ" >&5
-echo $ECHO_N "checking whether sys/ioctl.h defines TIOCGWINSZ... $ECHO_C" >&6
-if test "${ac_cv_sys_tiocgwinsz_in_sys_ioctl_h+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <sys/types.h>
-#include <sys/ioctl.h>
-#ifdef TIOCGWINSZ
-  yes
-#endif
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "yes" >/dev/null 2>&1; then
-  ac_cv_sys_tiocgwinsz_in_sys_ioctl_h=yes
-else
-  ac_cv_sys_tiocgwinsz_in_sys_ioctl_h=no
-fi
-rm -f conftest*
-
-fi
-echo "$as_me:$LINENO: result: $ac_cv_sys_tiocgwinsz_in_sys_ioctl_h" >&5
-echo "${ECHO_T}$ac_cv_sys_tiocgwinsz_in_sys_ioctl_h" >&6
-
-  if test $ac_cv_sys_tiocgwinsz_in_sys_ioctl_h = yes; then
-    
-cat >>confdefs.h <<\_ACEOF
-@%:@define GWINSZ_IN_SYS_IOCTL 1
-_ACEOF
-
-  fi
-fi
-
-echo "$as_me:$LINENO: checking for TIOCSTAT in sys/ioctl.h" >&5
-echo $ECHO_N "checking for TIOCSTAT in sys/ioctl.h... $ECHO_C" >&6
-if test "${bash_cv_tiocstat_in_ioctl+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <sys/types.h>
-#include <sys/ioctl.h>
-int
-main ()
-{
-int x = TIOCSTAT;
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  bash_cv_tiocstat_in_ioctl=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-bash_cv_tiocstat_in_ioctl=no
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-
-echo "$as_me:$LINENO: result: $bash_cv_tiocstat_in_ioctl" >&5
-echo "${ECHO_T}$bash_cv_tiocstat_in_ioctl" >&6
-if test $bash_cv_tiocstat_in_ioctl = yes; then   
-cat >>confdefs.h <<\_ACEOF
-@%:@define TIOCSTAT_IN_SYS_IOCTL 1
-_ACEOF
-
-fi
-
-echo "$as_me:$LINENO: checking for FIONREAD in sys/ioctl.h" >&5
-echo $ECHO_N "checking for FIONREAD in sys/ioctl.h... $ECHO_C" >&6
-if test "${bash_cv_fionread_in_ioctl+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <sys/types.h>
-#include <sys/ioctl.h>
-int
-main ()
-{
-int x = FIONREAD;
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  bash_cv_fionread_in_ioctl=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-bash_cv_fionread_in_ioctl=no
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-
-echo "$as_me:$LINENO: result: $bash_cv_fionread_in_ioctl" >&5
-echo "${ECHO_T}$bash_cv_fionread_in_ioctl" >&6
-if test $bash_cv_fionread_in_ioctl = yes; then   
-cat >>confdefs.h <<\_ACEOF
-@%:@define FIONREAD_IN_SYS_IOCTL 1
-_ACEOF
-
-fi
-
-
-
-echo "$as_me:$LINENO: checking whether WCONTINUED flag to waitpid is unavailable or available but broken" >&5
-echo $ECHO_N "checking whether WCONTINUED flag to waitpid is unavailable or available but broken... $ECHO_C" >&6
-if test "${bash_cv_wcontinued_broken+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  if test "$cross_compiling" = yes; then
-  { echo "$as_me:$LINENO: WARNING: cannot check WCONTINUED if cross compiling -- defaulting to no" >&5
-echo "$as_me: WARNING: cannot check WCONTINUED if cross compiling -- defaulting to no" >&2;}
-    bash_cv_wcontinued_broken=no
-
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-
-#include <sys/types.h>
-#include <sys/wait.h>
-#include <unistd.h>
-#include <errno.h>
-
-#ifndef errno
-extern int errno;
-#endif
-main()
-{
-       int     x;
-
-       x = waitpid(-1, (int *)0, WNOHANG|WCONTINUED);
-       if (x == -1 && errno == EINVAL)
-               exit (1);
-       else
-               exit (0);
-}
-
-_ACEOF
-rm -f conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>&5
-  ac_status=$?
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
-  { (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
-  bash_cv_wcontinued_broken=no
-else
-  echo "$as_me: program exited with status $ac_status" >&5
-echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-( exit $ac_status )
-bash_cv_wcontinued_broken=yes
-fi
-rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
-fi
-fi
-
-echo "$as_me:$LINENO: result: $bash_cv_wcontinued_broken" >&5
-echo "${ECHO_T}$bash_cv_wcontinued_broken" >&6
-if test $bash_cv_wcontinued_broken = yes; then
-cat >>confdefs.h <<\_ACEOF
-@%:@define WCONTINUED_BROKEN 1
-_ACEOF
-
-fi
-
-
-echo "$as_me:$LINENO: checking for speed_t in sys/types.h" >&5
-echo $ECHO_N "checking for speed_t in sys/types.h... $ECHO_C" >&6
-if test "${bash_cv_speed_t_in_sys_types+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <sys/types.h>
-int
-main ()
-{
-speed_t x;
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  bash_cv_speed_t_in_sys_types=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-bash_cv_speed_t_in_sys_types=no
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-
-echo "$as_me:$LINENO: result: $bash_cv_speed_t_in_sys_types" >&5
-echo "${ECHO_T}$bash_cv_speed_t_in_sys_types" >&6
-if test $bash_cv_speed_t_in_sys_types = yes; then   
-cat >>confdefs.h <<\_ACEOF
-@%:@define SPEED_T_IN_SYS_TYPES 1
-_ACEOF
-
-fi
-
-echo "$as_me:$LINENO: checking whether getpw functions are declared in pwd.h" >&5
-echo $ECHO_N "checking whether getpw functions are declared in pwd.h... $ECHO_C" >&6
-if test "${bash_cv_getpw_declared+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-
-#include <sys/types.h>
-#ifdef HAVE_UNISTD_H
-#  include <unistd.h>
-#endif
-#include <pwd.h>
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "getpwuid" >/dev/null 2>&1; then
-  bash_cv_getpw_declared=yes
-else
-  bash_cv_getpw_declared=no
-fi
-rm -f conftest*
-
-fi
-
-echo "$as_me:$LINENO: result: $bash_cv_getpw_declared" >&5
-echo "${ECHO_T}$bash_cv_getpw_declared" >&6
-if test $bash_cv_getpw_declared = yes; then
-cat >>confdefs.h <<\_ACEOF
-@%:@define HAVE_GETPW_DECLS 1
-_ACEOF
-
-fi
-
-echo "$as_me:$LINENO: checking for unusable real-time signals due to large values" >&5
-echo $ECHO_N "checking for unusable real-time signals due to large values... $ECHO_C" >&6
-if test "${bash_cv_unusable_rtsigs+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  if test "$cross_compiling" = yes; then
-  { echo "$as_me:$LINENO: WARNING: cannot check real-time signals if cross compiling -- defaulting to yes" >&5
-echo "$as_me: WARNING: cannot check real-time signals if cross compiling -- defaulting to yes" >&2;}
-     bash_cv_unusable_rtsigs=yes
-
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-
-#include <sys/types.h>
-#include <signal.h>
-
-#ifndef NSIG
-#  define NSIG 64
-#endif
-
-main ()
-{
-  int n_sigs = 2 * NSIG;
-#ifdef SIGRTMIN
-  int rtmin = SIGRTMIN;
-#else
-  int rtmin = 0;
-#endif
-
-  exit(rtmin < n_sigs);
-}
-_ACEOF
-rm -f conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>&5
-  ac_status=$?
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
-  { (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
-  bash_cv_unusable_rtsigs=yes
-else
-  echo "$as_me: program exited with status $ac_status" >&5
-echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-( exit $ac_status )
-bash_cv_unusable_rtsigs=no
-fi
-rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
-fi
-fi
-
-echo "$as_me:$LINENO: result: $bash_cv_unusable_rtsigs" >&5
-echo "${ECHO_T}$bash_cv_unusable_rtsigs" >&6
-if test $bash_cv_unusable_rtsigs = yes; then
-cat >>confdefs.h <<\_ACEOF
-@%:@define UNUSABLE_RT_SIGNALS 1
-_ACEOF
-
-fi
-
-
-
-
-
-if test "$bash_cv_sys_siglist" = no && test "$bash_cv_under_sys_siglist" = no && test "$bash_cv_have_strsignal" = no; then
-  SIGLIST_O=siglist.o
-else
-  SIGLIST_O=
-fi
-
-
-
-case "$host_os" in
-hpux*) echo "$as_me:$LINENO: checking whether $host_os needs _KERNEL for RLIMIT defines" >&5
-echo $ECHO_N "checking whether $host_os needs _KERNEL for RLIMIT defines... $ECHO_C" >&6
-if test "${bash_cv_kernel_rlimit+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-
-#include <sys/types.h>
-#include <sys/resource.h>
-
-int
-main ()
-{
-
-  int f;
-  f = RLIMIT_DATA;
-
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  bash_cv_kernel_rlimit=no
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-
-#include <sys/types.h>
-#define _KERNEL
-#include <sys/resource.h>
-#undef _KERNEL
-
-int
-main ()
-{
-
-       int f;
-        f = RLIMIT_DATA;
-
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest.$ac_objext'
-  { (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
-  bash_cv_kernel_rlimit=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-bash_cv_kernel_rlimit=no
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-
-echo "$as_me:$LINENO: result: $bash_cv_kernel_rlimit" >&5
-echo "${ECHO_T}$bash_cv_kernel_rlimit" >&6
-if test $bash_cv_kernel_rlimit = yes; then
-cat >>confdefs.h <<\_ACEOF
-@%:@define RLIMIT_NEEDS_KERNEL 1
-_ACEOF
-
-fi
- ;;
-esac
-
-if test "$opt_readline" = yes; then
-case "$host_os" in
-aix*)  prefer_curses=yes ;;
-esac
-
-if test "X$bash_cv_termcap_lib" = "X"; then
-_bash_needmsg=yes
-else
-echo "$as_me:$LINENO: checking which library has the termcap functions" >&5
-echo $ECHO_N "checking which library has the termcap functions... $ECHO_C" >&6
-_bash_needmsg=
-fi
-if test "${bash_cv_termcap_lib+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  echo "$as_me:$LINENO: checking for tgetent" >&5
-echo $ECHO_N "checking for tgetent... $ECHO_C" >&6
-if test "${ac_cv_func_tgetent+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-/* Define tgetent to an innocuous variant, in case <limits.h> declares tgetent.
-   For example, HP-UX 11i <limits.h> declares gettimeofday.  */
-#define tgetent innocuous_tgetent
-
-/* System header to define __stub macros and hopefully few prototypes,
-    which can conflict with char tgetent (); below.
-    Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
-    <limits.h> exists even on freestanding compilers.  */
-
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-
-#undef tgetent
-
-/* Override any gcc2 internal prototype to avoid an error.  */
-#ifdef __cplusplus
-extern "C"
-{
-#endif
-/* We use char because int might match the return type of a gcc2
-   builtin and then its argument prototype would still apply.  */
-char tgetent ();
-/* The GNU C library defines this for functions which it implements
-    to always fail with ENOSYS.  Some functions are actually named
-    something starting with __ and the normal name is an alias.  */
-#if defined (__stub_tgetent) || defined (__stub___tgetent)
-choke me
-#else
-char (*f) () = tgetent;
-#endif
-#ifdef __cplusplus
-}
-#endif
-
-int
-main ()
-{
-return f != tgetent;
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest$ac_exeext'
-  { (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
-  ac_cv_func_tgetent=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_cv_func_tgetent=no
-fi
-rm -f conftest.err conftest.$ac_objext \
-      conftest$ac_exeext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: $ac_cv_func_tgetent" >&5
-echo "${ECHO_T}$ac_cv_func_tgetent" >&6
-if test $ac_cv_func_tgetent = yes; then
-  bash_cv_termcap_lib=libc
-else
-  echo "$as_me:$LINENO: checking for tgetent in -ltermcap" >&5
-echo $ECHO_N "checking for tgetent in -ltermcap... $ECHO_C" >&6
-if test "${ac_cv_lib_termcap_tgetent+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  ac_check_lib_save_LIBS=$LIBS
-LIBS="-ltermcap  $LIBS"
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-
-/* Override any gcc2 internal prototype to avoid an error.  */
-#ifdef __cplusplus
-extern "C"
-#endif
-/* We use char because int might match the return type of a gcc2
-   builtin and then its argument prototype would still apply.  */
-char tgetent ();
-int
-main ()
-{
-tgetent ();
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest$ac_exeext'
-  { (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
-  ac_cv_lib_termcap_tgetent=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_cv_lib_termcap_tgetent=no
-fi
-rm -f conftest.err conftest.$ac_objext \
-      conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-echo "$as_me:$LINENO: result: $ac_cv_lib_termcap_tgetent" >&5
-echo "${ECHO_T}$ac_cv_lib_termcap_tgetent" >&6
-if test $ac_cv_lib_termcap_tgetent = yes; then
-  bash_cv_termcap_lib=libtermcap
-else
-  echo "$as_me:$LINENO: checking for tgetent in -ltinfo" >&5
-echo $ECHO_N "checking for tgetent in -ltinfo... $ECHO_C" >&6
-if test "${ac_cv_lib_tinfo_tgetent+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  ac_check_lib_save_LIBS=$LIBS
-LIBS="-ltinfo  $LIBS"
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-
-/* Override any gcc2 internal prototype to avoid an error.  */
-#ifdef __cplusplus
-extern "C"
-#endif
-/* We use char because int might match the return type of a gcc2
-   builtin and then its argument prototype would still apply.  */
-char tgetent ();
-int
-main ()
-{
-tgetent ();
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest$ac_exeext'
-  { (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
-  ac_cv_lib_tinfo_tgetent=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_cv_lib_tinfo_tgetent=no
-fi
-rm -f conftest.err conftest.$ac_objext \
-      conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-echo "$as_me:$LINENO: result: $ac_cv_lib_tinfo_tgetent" >&5
-echo "${ECHO_T}$ac_cv_lib_tinfo_tgetent" >&6
-if test $ac_cv_lib_tinfo_tgetent = yes; then
-  bash_cv_termcap_lib=libtinfo
-else
-  echo "$as_me:$LINENO: checking for tgetent in -lcurses" >&5
-echo $ECHO_N "checking for tgetent in -lcurses... $ECHO_C" >&6
-if test "${ac_cv_lib_curses_tgetent+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  ac_check_lib_save_LIBS=$LIBS
-LIBS="-lcurses  $LIBS"
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-
-/* Override any gcc2 internal prototype to avoid an error.  */
-#ifdef __cplusplus
-extern "C"
-#endif
-/* We use char because int might match the return type of a gcc2
-   builtin and then its argument prototype would still apply.  */
-char tgetent ();
-int
-main ()
-{
-tgetent ();
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest$ac_exeext'
-  { (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
-  ac_cv_lib_curses_tgetent=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_cv_lib_curses_tgetent=no
-fi
-rm -f conftest.err conftest.$ac_objext \
-      conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-echo "$as_me:$LINENO: result: $ac_cv_lib_curses_tgetent" >&5
-echo "${ECHO_T}$ac_cv_lib_curses_tgetent" >&6
-if test $ac_cv_lib_curses_tgetent = yes; then
-  bash_cv_termcap_lib=libcurses
-else
-  echo "$as_me:$LINENO: checking for tgetent in -lncurses" >&5
-echo $ECHO_N "checking for tgetent in -lncurses... $ECHO_C" >&6
-if test "${ac_cv_lib_ncurses_tgetent+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  ac_check_lib_save_LIBS=$LIBS
-LIBS="-lncurses  $LIBS"
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-
-/* Override any gcc2 internal prototype to avoid an error.  */
-#ifdef __cplusplus
-extern "C"
-#endif
-/* We use char because int might match the return type of a gcc2
-   builtin and then its argument prototype would still apply.  */
-char tgetent ();
-int
-main ()
-{
-tgetent ();
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-  (eval $ac_link) 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-        { ac_try='test -z "$ac_c_werror_flag"
-                        || test ! -s conftest.err'
-  { (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_try='test -s conftest$ac_exeext'
-  { (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
-  ac_cv_lib_ncurses_tgetent=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_cv_lib_ncurses_tgetent=no
-fi
-rm -f conftest.err conftest.$ac_objext \
-      conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-echo "$as_me:$LINENO: result: $ac_cv_lib_ncurses_tgetent" >&5
-echo "${ECHO_T}$ac_cv_lib_ncurses_tgetent" >&6
-if test $ac_cv_lib_ncurses_tgetent = yes; then
-  bash_cv_termcap_lib=libncurses
-else
-  bash_cv_termcap_lib=gnutermcap
-fi
-
-fi
-
-fi
-
-fi
-
-fi
-
-fi
-
-if test "X$_bash_needmsg" = "Xyes"; then
-echo "$as_me:$LINENO: checking which library has the termcap functions" >&5
-echo $ECHO_N "checking which library has the termcap functions... $ECHO_C" >&6
-fi
-echo "$as_me:$LINENO: result: using $bash_cv_termcap_lib" >&5
-echo "${ECHO_T}using $bash_cv_termcap_lib" >&6
-if test $bash_cv_termcap_lib = gnutermcap && test -z "$prefer_curses"; then
-LDFLAGS="$LDFLAGS -L./lib/termcap"
-TERMCAP_LIB="./lib/termcap/libtermcap.a"
-TERMCAP_DEP="./lib/termcap/libtermcap.a"
-elif test $bash_cv_termcap_lib = libtermcap && test -z "$prefer_curses"; then
-TERMCAP_LIB=-ltermcap
-TERMCAP_DEP=
-elif test $bash_cv_termcap_lib = libtinfo; then
-TERMCAP_LIB=-ltinfo
-TERMCAP_DEP=
-elif test $bash_cv_termcap_lib = libncurses; then
-TERMCAP_LIB=-lncurses
-TERMCAP_DEP=
-elif test $bash_cv_termcap_lib = libc; then
-TERMCAP_LIB=
-TERMCAP_DEP=
-else
-TERMCAP_LIB=-lcurses
-TERMCAP_DEP=
-fi
-
-fi
-
-
-
-echo "$as_me:$LINENO: checking whether /dev/fd is available" >&5
-echo $ECHO_N "checking whether /dev/fd is available... $ECHO_C" >&6
-if test "${bash_cv_dev_fd+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  bash_cv_dev_fd=""
-if test -d /dev/fd  && (exec test -r /dev/fd/0 < /dev/null) ; then
-# check for systems like FreeBSD 5 that only provide /dev/fd/[012]
-   if (exec test -r /dev/fd/3 3</dev/null) ; then
-     bash_cv_dev_fd=standard
-   else
-     bash_cv_dev_fd=absent
-   fi
-fi
-if test -z "$bash_cv_dev_fd" ; then 
-  if test -d /proc/self/fd && (exec test -r /proc/self/fd/0 < /dev/null) ; then
-    bash_cv_dev_fd=whacky
-  else
-    bash_cv_dev_fd=absent
-  fi
-fi
-
-fi
-
-echo "$as_me:$LINENO: result: $bash_cv_dev_fd" >&5
-echo "${ECHO_T}$bash_cv_dev_fd" >&6
-if test $bash_cv_dev_fd = "standard"; then
-  cat >>confdefs.h <<\_ACEOF
-@%:@define HAVE_DEV_FD 1
-_ACEOF
-
-  cat >>confdefs.h <<\_ACEOF
-@%:@define DEV_FD_PREFIX "/dev/fd/"
-_ACEOF
-
-elif test $bash_cv_dev_fd = "whacky"; then
-  cat >>confdefs.h <<\_ACEOF
-@%:@define HAVE_DEV_FD 1
-_ACEOF
-
-  cat >>confdefs.h <<\_ACEOF
-@%:@define DEV_FD_PREFIX "/proc/self/fd/"
-_ACEOF
-
-fi
-
-echo "$as_me:$LINENO: checking whether /dev/stdin stdout stderr are available" >&5
-echo $ECHO_N "checking whether /dev/stdin stdout stderr are available... $ECHO_C" >&6
-if test "${bash_cv_dev_stdin+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  if test -d /dev/fd && (exec test -r /dev/stdin < /dev/null) ; then
-   bash_cv_dev_stdin=present
- elif test -d /proc/self/fd && (exec test -r /dev/stdin < /dev/null) ; then
-   bash_cv_dev_stdin=present
- else
-   bash_cv_dev_stdin=absent
- fi
-
-fi
-
-echo "$as_me:$LINENO: result: $bash_cv_dev_stdin" >&5
-echo "${ECHO_T}$bash_cv_dev_stdin" >&6
-if test $bash_cv_dev_stdin = "present"; then
-  cat >>confdefs.h <<\_ACEOF
-@%:@define HAVE_DEV_STDIN 1
-_ACEOF
-
-fi
-
-echo "$as_me:$LINENO: checking for default mail directory" >&5
-echo $ECHO_N "checking for default mail directory... $ECHO_C" >&6
-if test "${bash_cv_mail_dir+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  if test -d /var/mail; then
-   bash_cv_mail_dir=/var/mail
- elif test -d /var/spool/mail; then
-   bash_cv_mail_dir=/var/spool/mail
- elif test -d /usr/mail; then
-   bash_cv_mail_dir=/usr/mail
- elif test -d /usr/spool/mail; then
-   bash_cv_mail_dir=/usr/spool/mail
- else
-   bash_cv_mail_dir=unknown
- fi
-
-fi
-
-echo "$as_me:$LINENO: result: $bash_cv_mail_dir" >&5
-echo "${ECHO_T}$bash_cv_mail_dir" >&6
-cat >>confdefs.h <<_ACEOF
-@%:@define DEFAULT_MAIL_DIRECTORY "$bash_cv_mail_dir"
-_ACEOF
-
-
-
-if test "$bash_cv_job_control_missing" = missing; then
-       opt_job_control=no
-fi
-
-if test "$opt_job_control" = yes; then
-cat >>confdefs.h <<\_ACEOF
-@%:@define JOB_CONTROL 1
-_ACEOF
-
-JOBS_O=jobs.o
-else
-JOBS_O=nojobs.o
-fi
-
-
-
-
-LOCAL_DEFS=-DSHELL
-
-
-case "${host_os}" in
-sysv4.2*)      cat >>confdefs.h <<\_ACEOF
-@%:@define SVR4_2 1
-_ACEOF
-
-               cat >>confdefs.h <<\_ACEOF
-@%:@define SVR4 1
-_ACEOF
- ;;
-sysv4*)                cat >>confdefs.h <<\_ACEOF
-@%:@define SVR4 1
-_ACEOF
- ;;
-sysv5*)                cat >>confdefs.h <<\_ACEOF
-@%:@define SVR5 1
-_ACEOF
- ;;
-hpux9*)                LOCAL_CFLAGS="-DHPUX9 -DHPUX" ;;
-hpux*)         LOCAL_CFLAGS=-DHPUX ;;
-dgux*)         LOCAL_CFLAGS=-D_DGUX_SOURCE; LOCAL_LIBS=-ldgc ;;
-isc*)          LOCAL_CFLAGS=-Disc386 ;;
-rhapsody*)     LOCAL_CFLAGS=-DRHAPSODY ;;
-darwin*)       LOCAL_CFLAGS=-DMACOSX ;;
-sco3.2v5*)     LOCAL_CFLAGS="-b elf -DWAITPID_BROKEN -DPATH_MAX=1024" ;;
-sco3.2v4*)     LOCAL_CFLAGS="-DMUST_UNBLOCK_CHLD -DPATH_MAX=1024" ;;
-sco3.2*)       LOCAL_CFLAGS=-DMUST_UNBLOCK_CHLD ;;
-sunos4*)       LOCAL_CFLAGS=-DSunOS4 ;;
-solaris2.5*)   LOCAL_CFLAGS="-DSunOS5 -DSOLARIS" ;;
-solaris2.8*)   LOCAL_CFLAGS=-DSOLARIS  ;;
-solaris2.9*)   LOCAL_CFLAGS=-DSOLARIS  ;;
-solaris2.10*)  LOCAL_CFLAGS=-DSOLARIS  ;;
-solaris2*)     LOCAL_CFLAGS=-DSOLARIS ;;
-lynxos*)       LOCAL_CFLAGS=-DRECYCLES_PIDS ;;
-linux*)                LOCAL_LDFLAGS=-rdynamic          # allow dynamic loading
-               case "`uname -r`" in
-               2.[456789]*|3*) cat >>confdefs.h <<\_ACEOF
-@%:@define PGRP_PIPE 1
-_ACEOF
- ;;
-               esac ;;
-*qnx6*)                LOCAL_CFLAGS="-Dqnx -Dqnx6" LOCAL_LIBS="-lncurses" ;;
-*qnx*)         LOCAL_CFLAGS="-Dqnx -F -3s" LOCAL_LDFLAGS="-3s" LOCAL_LIBS="-lunix -lncurses" ;;
-powerux*)      LOCAL_LIBS="-lgen" ;;
-cygwin*)       LOCAL_CFLAGS=-DRECYCLES_PIDS ;;
-opennt*|interix*) LOCAL_CFLAGS="-DNO_MAIN_ENV_ARG -DBROKEN_DIRENT_D_INO -D_POSIX_SOURCE -D_ALL_SOURCE" ;;
-esac
-
-case "${host_os}-${CC}" in
-aix4.2*-*gcc*) LOCAL_LDFLAGS="-Xlinker -bexpall -Xlinker -brtl" ;;
-aix4.2*)       LOCAL_LDFLAGS="-bexpall -brtl" ;;
-bsdi4*-*gcc*)  LOCAL_LDFLAGS="-rdynamic" ;;    # allow dynamic loading, like Linux
-esac
-
-case "${host_os}" in
-freebsd[3-9]*)
-               if test -x /usr/bin/objformat && test "`/usr/bin/objformat`" = "elf" ; then
-                       LOCAL_LDFLAGS=-rdynamic # allow dynamic loading
-               fi ;;
-freebsdelf*)   LOCAL_LDFLAGS=-rdynamic ;;      # allow dynamic loading
-dragonfly*)    LOCAL_LDFLAGS=-rdynamic ;;      # allow dynamic loading
-esac
-
-case "$host_cpu" in
-*cray*)                LOCAL_CFLAGS="-DCRAY" ;; # shell var so config.h can use it
-esac
-
-case "$host_cpu-$host_os" in
-ibmrt-*bsd4*)  LOCAL_CFLAGS="-ma -U__STDC__" ;;
-esac
-
-case "$host_cpu-$host_vendor-$host_os" in
-m88k-motorola-sysv3)   LOCAL_CFLAGS=-DWAITPID_BROKEN ;;
-mips-pyramid-sysv4)    LOCAL_CFLAGS=-Xa ;;
-esac
-
-#
-# Shared object configuration section.  These values are generated by
-# ${srcdir}/support/shobj-conf
-#
-if test "$ac_cv_func_dlopen" = "yes" && test -f ${srcdir}/support/shobj-conf
-then
-       echo "$as_me:$LINENO: checking shared object configuration for loadable builtins" >&5
-echo $ECHO_N "checking shared object configuration for loadable builtins... $ECHO_C" >&6
-       eval `${CONFIG_SHELL-/bin/sh} ${srcdir}/support/shobj-conf -C "${CC}" -c "${host_cpu}" -o "${host_os}" -v "${host_vendor}"`
-       
-       
-       
-       
-       
-       
-       
-       echo "$as_me:$LINENO: result: $SHOBJ_STATUS" >&5
-echo "${ECHO_T}$SHOBJ_STATUS" >&6
-fi
-
-# try to create a directory tree if the source is elsewhere
-# this should be packaged into a script accessible via ${srcdir}/support
-case "$srcdir" in
-.)     ;;
-*)     for d in doc tests support lib examples; do     # dirs
-               test -d $d || mkdir $d
-       done
-       for ld in readline glob tilde malloc sh termcap; do     # libdirs
-               test -d lib/$ld || mkdir lib/$ld
-       done
-       test -d examples/loadables || mkdir examples/loadables  # loadable builtins
-       test -d examples/loadables/perl || mkdir examples/loadables/perl
-       ;;
-esac
-
-BUILD_DIR=`pwd`
-case "$BUILD_DIR" in
-*\ *)  BUILD_DIR=`echo "$BUILD_DIR" | sed 's: :\\\\ :g'` ;;
-*)     ;;
-esac
-
-if test -z "$localedir"; then
-       localedir='${datarootdir}/locale'
-fi
-if test -z "$datarootdir"; then
-       datarootdir='${prefix}/share'
-fi
-
-
-
-
-
-
-# Some versions of autoconf don't substitute these automatically
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-#AC_SUBST(ALLOCA_SOURCE)
-#AC_SUBST(ALLOCA_OBJECT)
-
-                                                                                                                                            ac_config_files="$ac_config_files Makefile builtins/Makefile lib/readline/Makefile lib/glob/Makefile lib/intl/Makefile lib/malloc/Makefile lib/sh/Makefile lib/termcap/Makefile lib/tilde/Makefile doc/Makefile support/Makefile po/Makefile.in examples/loadables/Makefile examples/loadables/perl/Makefile"
-          ac_config_commands="$ac_config_commands default"
-cat >confcache <<\_ACEOF
-# This file is a shell script that caches the results of configure
-# tests run on this system so they can be shared between configure
-# scripts and configure runs, see configure's option --config-cache.
-# It is not useful on other systems.  If it contains results you don't
-# want to keep, you may remove or edit it.
-#
-# config.status only pays attention to the cache file if you give it
-# the --recheck option to rerun configure.
-#
-# `ac_cv_env_foo' variables (set or unset) will be overridden when
-# loading this file, other *unset* `ac_cv_foo' will be assigned the
-# following values.
-
-_ACEOF
-
-# The following way of writing the cache mishandles newlines in values,
-# but we know of no workaround that is simple, portable, and efficient.
-# So, don't put newlines in cache variables' values.
-# Ultrix sh set writes to stderr and can't be redirected directly,
-# and sets the high bit in the cache file unless we assign to the vars.
-{
-  (set) 2>&1 |
-    case `(ac_space=' '; set | grep ac_space) 2>&1` in
-    *ac_space=\ *)
-      # `set' does not quote correctly, so add quotes (double-quote
-      # substitution turns \\\\ into \\, and sed turns \\ into \).
-      sed -n \
-       "s/'/'\\\\''/g;
-         s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\\2'/p"
-      ;;
-    *)
-      # `set' quotes correctly as required by POSIX, so do not add quotes.
-      sed -n \
-       "s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1=\\2/p"
-      ;;
-    esac;
-} |
-  sed '
-     t clear
-     : clear
-     s/^\([^=]*\)=\(.*[{}].*\)$/test "${\1+set}" = set || &/
-     t end
-     /^ac_cv_env/!s/^\([^=]*\)=\(.*\)$/\1=${\1=\2}/
-     : end' >>confcache
-if diff $cache_file confcache >/dev/null 2>&1; then :; else
-  if test -w $cache_file; then
-    test "x$cache_file" != "x/dev/null" && echo "updating cache $cache_file"
-    cat confcache >$cache_file
-  else
-    echo "not updating unwritable cache $cache_file"
-  fi
-fi
-rm -f confcache
-
-test "x$prefix" = xNONE && prefix=$ac_default_prefix
-# Let make expand exec_prefix.
-test "x$exec_prefix" = xNONE && exec_prefix='${prefix}'
-
-# VPATH may cause trouble with some makes, so we remove $(srcdir),
-# ${srcdir} and @srcdir@ from VPATH if srcdir is ".", strip leading and
-# trailing colons and then remove the whole line if VPATH becomes empty
-# (actually we leave an empty line to preserve line numbers).
-if test "x$srcdir" = x.; then
-  ac_vpsub='/^[         ]*VPATH[        ]*=/{
-s/:*\$(srcdir):*/:/;
-s/:*\${srcdir}:*/:/;
-s/:*@srcdir@:*/:/;
-s/^\([^=]*=[    ]*\):*/\1/;
-s/:*$//;
-s/^[^=]*=[      ]*$//;
-}'
-fi
-
-DEFS=-DHAVE_CONFIG_H
-
-ac_libobjs=
-ac_ltlibobjs=
-for ac_i in : $LIB@&t@OBJS; do test "x$ac_i" = x: && continue
-  # 1. Remove the extension, and $U if already installed.
-  ac_i=`echo "$ac_i" |
-        sed 's/\$U\././;s/\.o$//;s/\.obj$//'`
-  # 2. Add them.
-  ac_libobjs="$ac_libobjs $ac_i\$U.$ac_objext"
-  ac_ltlibobjs="$ac_ltlibobjs $ac_i"'$U.lo'
-done
-LIB@&t@OBJS=$ac_libobjs
-
-LTLIBOBJS=$ac_ltlibobjs
-
-
-
-: ${CONFIG_STATUS=./config.status}
-ac_clean_files_save=$ac_clean_files
-ac_clean_files="$ac_clean_files $CONFIG_STATUS"
-{ echo "$as_me:$LINENO: creating $CONFIG_STATUS" >&5
-echo "$as_me: creating $CONFIG_STATUS" >&6;}
-cat >$CONFIG_STATUS <<_ACEOF
-#! $SHELL
-# Generated by $as_me.
-# Run this file to recreate the current configuration.
-# Compiler output produced by configure, useful for debugging
-# configure, is in config.log if it exists.
-
-debug=false
-ac_cs_recheck=false
-ac_cs_silent=false
-SHELL=\${CONFIG_SHELL-$SHELL}
-_ACEOF
-
-cat >>$CONFIG_STATUS <<\_ACEOF
-## --------------------- ##
-## M4sh Initialization.  ##
-## --------------------- ##
-
-# Be Bourne compatible
-if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then
-  emulate sh
-  NULLCMD=:
-  # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which
-  # is contrary to our usage.  Disable this feature.
-  alias -g '${1+"$@"}'='"$@"'
-elif test -n "${BASH_VERSION+set}" && (set -o posix) >/dev/null 2>&1; then
-  set -o posix
-fi
-DUALCASE=1; export DUALCASE # for MKS sh
-
-# Support unset when possible.
-if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then
-  as_unset=unset
-else
-  as_unset=false
-fi
-
-
-# Work around bugs in pre-3.0 UWIN ksh.
-$as_unset ENV MAIL MAILPATH
-PS1='$ '
-PS2='> '
-PS4='+ '
-
-# NLS nuisances.
-for as_var in \
-  LANG LANGUAGE LC_ADDRESS LC_ALL LC_COLLATE LC_CTYPE LC_IDENTIFICATION \
-  LC_MEASUREMENT LC_MESSAGES LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER \
-  LC_TELEPHONE LC_TIME
-do
-  if (set +x; test -z "`(eval $as_var=C; export $as_var) 2>&1`"); then
-    eval $as_var=C; export $as_var
-  else
-    $as_unset $as_var
-  fi
-done
-
-# Required to use basename.
-if expr a : '\(a\)' >/dev/null 2>&1; then
-  as_expr=expr
-else
-  as_expr=false
-fi
-
-if (basename /) >/dev/null 2>&1 && test "X`basename / 2>&1`" = "X/"; then
-  as_basename=basename
-else
-  as_basename=false
-fi
-
-
-# Name of the executable.
-as_me=`$as_basename "$0" ||
-$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \
-        X"$0" : 'X\(//\)$' \| \
-        X"$0" : 'X\(/\)$' \| \
-        .     : '\(.\)' 2>/dev/null ||
-echo X/"$0" |
-    sed '/^.*\/\([^/][^/]*\)\/*$/{ s//\1/; q; }
-         /^X\/\(\/\/\)$/{ s//\1/; q; }
-         /^X\/\(\/\).*/{ s//\1/; q; }
-         s/.*/./; q'`
-
-
-# PATH needs CR, and LINENO needs CR and PATH.
-# Avoid depending upon Character Ranges.
-as_cr_letters='abcdefghijklmnopqrstuvwxyz'
-as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ'
-as_cr_Letters=$as_cr_letters$as_cr_LETTERS
-as_cr_digits='0123456789'
-as_cr_alnum=$as_cr_Letters$as_cr_digits
-
-# The user is always right.
-if test "${PATH_SEPARATOR+set}" != set; then
-  echo "#! /bin/sh" >conf$$.sh
-  echo  "exit 0"   >>conf$$.sh
-  chmod +x conf$$.sh
-  if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then
-    PATH_SEPARATOR=';'
-  else
-    PATH_SEPARATOR=:
-  fi
-  rm -f conf$$.sh
-fi
-
-
-  as_lineno_1=$LINENO
-  as_lineno_2=$LINENO
-  as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null`
-  test "x$as_lineno_1" != "x$as_lineno_2" &&
-  test "x$as_lineno_3"  = "x$as_lineno_2"  || {
-  # Find who we are.  Look in the path if we contain no path at all
-  # relative or not.
-  case $0 in
-    *[\\/]* ) as_myself=$0 ;;
-    *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-  test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break
-done
-
-       ;;
-  esac
-  # We did not find ourselves, most probably we were run as `sh COMMAND'
-  # in which case we are not to be found in the path.
-  if test "x$as_myself" = x; then
-    as_myself=$0
-  fi
-  if test ! -f "$as_myself"; then
-    { { echo "$as_me:$LINENO: error: cannot find myself; rerun with an absolute path" >&5
-echo "$as_me: error: cannot find myself; rerun with an absolute path" >&2;}
-   { (exit 1); exit 1; }; }
-  fi
-  case $CONFIG_SHELL in
-  '')
-    as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-  for as_base in sh bash ksh sh5; do
-        case $as_dir in
-        /*)
-          if ("$as_dir/$as_base" -c '
-  as_lineno_1=$LINENO
-  as_lineno_2=$LINENO
-  as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null`
-  test "x$as_lineno_1" != "x$as_lineno_2" &&
-  test "x$as_lineno_3"  = "x$as_lineno_2" ') 2>/dev/null; then
-            $as_unset BASH_ENV || test "${BASH_ENV+set}" != set || { BASH_ENV=; export BASH_ENV; }
-            $as_unset ENV || test "${ENV+set}" != set || { ENV=; export ENV; }
-            CONFIG_SHELL=$as_dir/$as_base
-            export CONFIG_SHELL
-            exec "$CONFIG_SHELL" "$0" ${1+"$@"}
-          fi;;
-        esac
-       done
-done
-;;
-  esac
-
-  # Create $as_me.lineno as a copy of $as_myself, but with $LINENO
-  # uniformly replaced by the line number.  The first 'sed' inserts a
-  # line-number line before each line; the second 'sed' does the real
-  # work.  The second script uses 'N' to pair each line-number line
-  # with the numbered line, and appends trailing '-' during
-  # substitution so that $LINENO is not a special case at line end.
-  # (Raja R Harinath suggested sed '=', and Paul Eggert wrote the
-  # second 'sed' script.  Blame Lee E. McMahon for sed's syntax.  :-)
-  sed '=' <$as_myself |
-    sed '
-      N
-      s,$,-,
-      : loop
-      s,^\(['$as_cr_digits']*\)\(.*\)[$]LINENO\([^'$as_cr_alnum'_]\),\1\2\1\3,
-      t loop
-      s,-$,,
-      s,^['$as_cr_digits']*\n,,
-    ' >$as_me.lineno &&
-  chmod +x $as_me.lineno ||
-    { { echo "$as_me:$LINENO: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&5
-echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2;}
-   { (exit 1); exit 1; }; }
-
-  # Don't try to exec as it changes $[0], causing all sort of problems
-  # (the dirname of $[0] is not the place where we might find the
-  # original and so on.  Autoconf is especially sensible to this).
-  . ./$as_me.lineno
-  # Exit status is that of the last command.
-  exit
-}
-
-
-case `echo "testing\c"; echo 1,2,3`,`echo -n testing; echo 1,2,3` in
-  *c*,-n*) ECHO_N= ECHO_C='
-' ECHO_T='     ' ;;
-  *c*,*  ) ECHO_N=-n ECHO_C= ECHO_T= ;;
-  *)       ECHO_N= ECHO_C='\c' ECHO_T= ;;
-esac
-
-if expr a : '\(a\)' >/dev/null 2>&1; then
-  as_expr=expr
-else
-  as_expr=false
-fi
-
-rm -f conf$$ conf$$.exe conf$$.file
-echo >conf$$.file
-if ln -s conf$$.file conf$$ 2>/dev/null; then
-  # We could just check for DJGPP; but this test a) works b) is more generic
-  # and c) will remain valid once DJGPP supports symlinks (DJGPP 2.04).
-  if test -f conf$$.exe; then
-    # Don't use ln at all; we don't have any links
-    as_ln_s='cp -p'
-  else
-    as_ln_s='ln -s'
-  fi
-elif ln conf$$.file conf$$ 2>/dev/null; then
-  as_ln_s=ln
-else
-  as_ln_s='cp -p'
-fi
-rm -f conf$$ conf$$.exe conf$$.file
-
-if mkdir -p . 2>/dev/null; then
-  as_mkdir_p=:
-else
-  test -d ./-p && rmdir ./-p
-  as_mkdir_p=false
-fi
-
-as_executable_p="test -f"
-
-# Sed expression to map a string onto a valid CPP name.
-as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'"
-
-# Sed expression to map a string onto a valid variable name.
-as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'"
-
-
-# IFS
-# We need space, tab and new line, in precisely that order.
-as_nl='
-'
-IFS="  $as_nl"
-
-# CDPATH.
-$as_unset CDPATH
-
-exec 6>&1
-
-# Open the log real soon, to keep \$[0] and so on meaningful, and to
-# report actual input values of CONFIG_FILES etc. instead of their
-# values after options handling.  Logging --version etc. is OK.
-exec 5>>config.log
-{
-  echo
-  sed 'h;s/./-/g;s/^.../@%:@@%:@ /;s/...$/ @%:@@%:@/;p;x;p;x' <<_ASBOX
-@%:@@%:@ Running $as_me. @%:@@%:@
-_ASBOX
-} >&5
-cat >&5 <<_CSEOF
-
-This file was extended by bash $as_me 4.2-maint, which was
-generated by GNU Autoconf 2.59.  Invocation command line was
-
-  CONFIG_FILES    = $CONFIG_FILES
-  CONFIG_HEADERS  = $CONFIG_HEADERS
-  CONFIG_LINKS    = $CONFIG_LINKS
-  CONFIG_COMMANDS = $CONFIG_COMMANDS
-  $ $0 $@
-
-_CSEOF
-echo "on `(hostname || uname -n) 2>/dev/null | sed 1q`" >&5
-echo >&5
-_ACEOF
-
-# Files that config.status was made for.
-if test -n "$ac_config_files"; then
-  echo "config_files=\"$ac_config_files\"" >>$CONFIG_STATUS
-fi
-
-if test -n "$ac_config_headers"; then
-  echo "config_headers=\"$ac_config_headers\"" >>$CONFIG_STATUS
-fi
-
-if test -n "$ac_config_links"; then
-  echo "config_links=\"$ac_config_links\"" >>$CONFIG_STATUS
-fi
-
-if test -n "$ac_config_commands"; then
-  echo "config_commands=\"$ac_config_commands\"" >>$CONFIG_STATUS
-fi
-
-cat >>$CONFIG_STATUS <<\_ACEOF
-
-ac_cs_usage="\
-\`$as_me' instantiates files from templates according to the
-current configuration.
-
-Usage: $0 [OPTIONS] [FILE]...
-
-  -h, --help       print this help, then exit
-  -V, --version    print version number, then exit
-  -q, --quiet      do not print progress messages
-  -d, --debug      don't remove temporary files
-      --recheck    update $as_me by reconfiguring in the same conditions
-  --file=FILE[:TEMPLATE]
-                  instantiate the configuration file FILE
-  --header=FILE[:TEMPLATE]
-                  instantiate the configuration header FILE
-
-Configuration files:
-$config_files
-
-Configuration headers:
-$config_headers
-
-Configuration commands:
-$config_commands
-
-Report bugs to <bug-autoconf@gnu.org>."
-_ACEOF
-
-cat >>$CONFIG_STATUS <<_ACEOF
-ac_cs_version="\\
-bash config.status 4.2-maint
-configured by $0, generated by GNU Autoconf 2.59,
-  with options \\"`echo "$ac_configure_args" | sed 's/[\\""\`\$]/\\\\&/g'`\\"
-
-Copyright (C) 2003 Free Software Foundation, Inc.
-This config.status script is free software; the Free Software Foundation
-gives unlimited permission to copy, distribute and modify it."
-srcdir=$srcdir
-INSTALL="$INSTALL"
-_ACEOF
-
-cat >>$CONFIG_STATUS <<\_ACEOF
-# If no file are specified by the user, then we need to provide default
-# value.  By we need to know if files were specified by the user.
-ac_need_defaults=:
-while test $# != 0
-do
-  case $1 in
-  --*=*)
-    ac_option=`expr "x$1" : 'x\([^=]*\)='`
-    ac_optarg=`expr "x$1" : 'x[^=]*=\(.*\)'`
-    ac_shift=:
-    ;;
-  -*)
-    ac_option=$1
-    ac_optarg=$2
-    ac_shift=shift
-    ;;
-  *) # This is not an option, so the user has probably given explicit
-     # arguments.
-     ac_option=$1
-     ac_need_defaults=false;;
-  esac
-
-  case $ac_option in
-  # Handling of the options.
-_ACEOF
-cat >>$CONFIG_STATUS <<\_ACEOF
-  -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r)
-    ac_cs_recheck=: ;;
-  --version | --vers* | -V )
-    echo "$ac_cs_version"; exit 0 ;;
-  --he | --h)
-    # Conflict between --help and --header
-    { { echo "$as_me:$LINENO: error: ambiguous option: $1
-Try \`$0 --help' for more information." >&5
-echo "$as_me: error: ambiguous option: $1
-Try \`$0 --help' for more information." >&2;}
-   { (exit 1); exit 1; }; };;
-  --help | --hel | -h )
-    echo "$ac_cs_usage"; exit 0 ;;
-  --debug | --d* | -d )
-    debug=: ;;
-  --file | --fil | --fi | --f )
-    $ac_shift
-    CONFIG_FILES="$CONFIG_FILES $ac_optarg"
-    ac_need_defaults=false;;
-  --header | --heade | --head | --hea )
-    $ac_shift
-    CONFIG_HEADERS="$CONFIG_HEADERS $ac_optarg"
-    ac_need_defaults=false;;
-  -q | -quiet | --quiet | --quie | --qui | --qu | --q \
-  | -silent | --silent | --silen | --sile | --sil | --si | --s)
-    ac_cs_silent=: ;;
-
-  # This is an error.
-  -*) { { echo "$as_me:$LINENO: error: unrecognized option: $1
-Try \`$0 --help' for more information." >&5
-echo "$as_me: error: unrecognized option: $1
-Try \`$0 --help' for more information." >&2;}
-   { (exit 1); exit 1; }; } ;;
-
-  *) ac_config_targets="$ac_config_targets $1" ;;
-
-  esac
-  shift
-done
-
-ac_configure_extra_args=
-
-if $ac_cs_silent; then
-  exec 6>/dev/null
-  ac_configure_extra_args="$ac_configure_extra_args --silent"
-fi
-
-_ACEOF
-cat >>$CONFIG_STATUS <<_ACEOF
-if \$ac_cs_recheck; then
-  echo "running $SHELL $0 " $ac_configure_args \$ac_configure_extra_args " --no-create --no-recursion" >&6
-  exec $SHELL $0 $ac_configure_args \$ac_configure_extra_args --no-create --no-recursion
-fi
-
-_ACEOF
-
-cat >>$CONFIG_STATUS <<_ACEOF
-#
-# INIT-COMMANDS section.
-#
-
-# Capture the value of obsolete ALL_LINGUAS because we need it to compute
-    # POFILES, GMOFILES, UPDATEPOFILES, DUMMYPOFILES, CATALOGS. But hide it
-    # from automake.
-    eval 'OBSOLETE_ALL_LINGUAS''="$ALL_LINGUAS"'
-    # Capture the value of LINGUAS because we need it to compute CATALOGS.
-    LINGUAS="${LINGUAS-%UNSET%}"
-   
-
-_ACEOF
-
-
-
-cat >>$CONFIG_STATUS <<\_ACEOF
-for ac_config_target in $ac_config_targets
-do
-  case "$ac_config_target" in
-  # Handling of arguments.
-  "Makefile" ) CONFIG_FILES="$CONFIG_FILES Makefile" ;;
-  "builtins/Makefile" ) CONFIG_FILES="$CONFIG_FILES builtins/Makefile" ;;
-  "lib/readline/Makefile" ) CONFIG_FILES="$CONFIG_FILES lib/readline/Makefile" ;;
-  "lib/glob/Makefile" ) CONFIG_FILES="$CONFIG_FILES lib/glob/Makefile" ;;
-  "lib/intl/Makefile" ) CONFIG_FILES="$CONFIG_FILES lib/intl/Makefile" ;;
-  "lib/malloc/Makefile" ) CONFIG_FILES="$CONFIG_FILES lib/malloc/Makefile" ;;
-  "lib/sh/Makefile" ) CONFIG_FILES="$CONFIG_FILES lib/sh/Makefile" ;;
-  "lib/termcap/Makefile" ) CONFIG_FILES="$CONFIG_FILES lib/termcap/Makefile" ;;
-  "lib/tilde/Makefile" ) CONFIG_FILES="$CONFIG_FILES lib/tilde/Makefile" ;;
-  "doc/Makefile" ) CONFIG_FILES="$CONFIG_FILES doc/Makefile" ;;
-  "support/Makefile" ) CONFIG_FILES="$CONFIG_FILES support/Makefile" ;;
-  "po/Makefile.in" ) CONFIG_FILES="$CONFIG_FILES po/Makefile.in" ;;
-  "examples/loadables/Makefile" ) CONFIG_FILES="$CONFIG_FILES examples/loadables/Makefile" ;;
-  "examples/loadables/perl/Makefile" ) CONFIG_FILES="$CONFIG_FILES examples/loadables/perl/Makefile" ;;
-  "default-1" ) CONFIG_COMMANDS="$CONFIG_COMMANDS default-1" ;;
-  "default" ) CONFIG_COMMANDS="$CONFIG_COMMANDS default" ;;
-  "config.h" ) CONFIG_HEADERS="$CONFIG_HEADERS config.h" ;;
-  *) { { echo "$as_me:$LINENO: error: invalid argument: $ac_config_target" >&5
-echo "$as_me: error: invalid argument: $ac_config_target" >&2;}
-   { (exit 1); exit 1; }; };;
-  esac
-done
-
-# If the user did not use the arguments to specify the items to instantiate,
-# then the envvar interface is used.  Set only those that are not.
-# We use the long form for the default assignment because of an extremely
-# bizarre bug on SunOS 4.1.3.
-if $ac_need_defaults; then
-  test "${CONFIG_FILES+set}" = set || CONFIG_FILES=$config_files
-  test "${CONFIG_HEADERS+set}" = set || CONFIG_HEADERS=$config_headers
-  test "${CONFIG_COMMANDS+set}" = set || CONFIG_COMMANDS=$config_commands
-fi
-
-# Have a temporary directory for convenience.  Make it in the build tree
-# simply because there is no reason to put it here, and in addition,
-# creating and moving files from /tmp can sometimes cause problems.
-# Create a temporary directory, and hook for its removal unless debugging.
-$debug ||
-{
-  trap 'exit_status=$?; rm -rf $tmp && exit $exit_status' 0
-  trap '{ (exit 1); exit 1; }' 1 2 13 15
-}
-
-# Create a (secure) tmp directory for tmp files.
-
-{
-  tmp=`(umask 077 && mktemp -d -q "./confstatXXXXXX") 2>/dev/null` &&
-  test -n "$tmp" && test -d "$tmp"
-}  ||
-{
-  tmp=./confstat$$-$RANDOM
-  (umask 077 && mkdir $tmp)
-} ||
-{
-   echo "$me: cannot create a temporary directory in ." >&2
-   { (exit 1); exit 1; }
-}
-
-_ACEOF
-
-cat >>$CONFIG_STATUS <<_ACEOF
-
-#
-# CONFIG_FILES section.
-#
-
-# No need to generate the scripts if there are no CONFIG_FILES.
-# This happens for instance when ./config.status config.h
-if test -n "\$CONFIG_FILES"; then
-  # Protect against being on the right side of a sed subst in config.status.
-  sed 's/,@/@@/; s/@,/@@/; s/,;t t\$/@;t t/; /@;t t\$/s/[\\\\&,]/\\\\&/g;
-   s/@@/,@/; s/@@/@,/; s/@;t t\$/,;t t/' >\$tmp/subs.sed <<\\CEOF
-s,@SHELL@,$SHELL,;t t
-s,@PATH_SEPARATOR@,$PATH_SEPARATOR,;t t
-s,@PACKAGE_NAME@,$PACKAGE_NAME,;t t
-s,@PACKAGE_TARNAME@,$PACKAGE_TARNAME,;t t
-s,@PACKAGE_VERSION@,$PACKAGE_VERSION,;t t
-s,@PACKAGE_STRING@,$PACKAGE_STRING,;t t
-s,@PACKAGE_BUGREPORT@,$PACKAGE_BUGREPORT,;t t
-s,@exec_prefix@,$exec_prefix,;t t
-s,@prefix@,$prefix,;t t
-s,@program_transform_name@,$program_transform_name,;t t
-s,@bindir@,$bindir,;t t
-s,@sbindir@,$sbindir,;t t
-s,@libexecdir@,$libexecdir,;t t
-s,@datadir@,$datadir,;t t
-s,@sysconfdir@,$sysconfdir,;t t
-s,@sharedstatedir@,$sharedstatedir,;t t
-s,@localstatedir@,$localstatedir,;t t
-s,@libdir@,$libdir,;t t
-s,@includedir@,$includedir,;t t
-s,@oldincludedir@,$oldincludedir,;t t
-s,@infodir@,$infodir,;t t
-s,@mandir@,$mandir,;t t
-s,@build_alias@,$build_alias,;t t
-s,@host_alias@,$host_alias,;t t
-s,@target_alias@,$target_alias,;t t
-s,@DEFS@,$DEFS,;t t
-s,@ECHO_C@,$ECHO_C,;t t
-s,@ECHO_N@,$ECHO_N,;t t
-s,@ECHO_T@,$ECHO_T,;t t
-s,@LIBS@,$LIBS,;t t
-s,@build@,$build,;t t
-s,@build_cpu@,$build_cpu,;t t
-s,@build_vendor@,$build_vendor,;t t
-s,@build_os@,$build_os,;t t
-s,@host@,$host,;t t
-s,@host_cpu@,$host_cpu,;t t
-s,@host_vendor@,$host_vendor,;t t
-s,@host_os@,$host_os,;t t
-s,@DEBUGGER_START_FILE@,$DEBUGGER_START_FILE,;t t
-s,@CC_FOR_BUILD@,$CC_FOR_BUILD,;t t
-s,@CFLAGS_FOR_BUILD@,$CFLAGS_FOR_BUILD,;t t
-s,@LDFLAGS_FOR_BUILD@,$LDFLAGS_FOR_BUILD,;t t
-s,@CPPFLAGS_FOR_BUILD@,$CPPFLAGS_FOR_BUILD,;t t
-s,@TESTSCRIPT@,$TESTSCRIPT,;t t
-s,@PURIFY@,$PURIFY,;t t
-s,@MALLOC_TARGET@,$MALLOC_TARGET,;t t
-s,@MALLOC_SRC@,$MALLOC_SRC,;t t
-s,@MALLOC_LIB@,$MALLOC_LIB,;t t
-s,@MALLOC_LIBRARY@,$MALLOC_LIBRARY,;t t
-s,@MALLOC_LDFLAGS@,$MALLOC_LDFLAGS,;t t
-s,@MALLOC_DEP@,$MALLOC_DEP,;t t
-s,@htmldir@,$htmldir,;t t
-s,@HELPDIR@,$HELPDIR,;t t
-s,@HELPDIRDEFINE@,$HELPDIRDEFINE,;t t
-s,@HELPINSTALL@,$HELPINSTALL,;t t
-s,@HELPFILES_TARGET@,$HELPFILES_TARGET,;t t
-s,@HELPSTRINGS@,$HELPSTRINGS,;t t
-s,@CC@,$CC,;t t
-s,@CFLAGS@,$CFLAGS,;t t
-s,@LDFLAGS@,$LDFLAGS,;t t
-s,@CPPFLAGS@,$CPPFLAGS,;t t
-s,@ac_ct_CC@,$ac_ct_CC,;t t
-s,@EXEEXT@,$EXEEXT,;t t
-s,@OBJEXT@,$OBJEXT,;t t
-s,@CPP@,$CPP,;t t
-s,@EGREP@,$EGREP,;t t
-s,@CROSS_COMPILE@,$CROSS_COMPILE,;t t
-s,@SIGNAMES_H@,$SIGNAMES_H,;t t
-s,@SIGNAMES_O@,$SIGNAMES_O,;t t
-s,@STATIC_LD@,$STATIC_LD,;t t
-s,@LIBS_FOR_BUILD@,$LIBS_FOR_BUILD,;t t
-s,@RL_VERSION@,$RL_VERSION,;t t
-s,@RL_MAJOR@,$RL_MAJOR,;t t
-s,@RL_MINOR@,$RL_MINOR,;t t
-s,@READLINE_LIB@,$READLINE_LIB,;t t
-s,@READLINE_DEP@,$READLINE_DEP,;t t
-s,@RL_LIBDIR@,$RL_LIBDIR,;t t
-s,@RL_INCLUDEDIR@,$RL_INCLUDEDIR,;t t
-s,@RL_INCLUDE@,$RL_INCLUDE,;t t
-s,@HISTORY_LIB@,$HISTORY_LIB,;t t
-s,@HISTORY_DEP@,$HISTORY_DEP,;t t
-s,@HIST_LIBDIR@,$HIST_LIBDIR,;t t
-s,@TILDE_LIB@,$TILDE_LIB,;t t
-s,@INSTALL_PROGRAM@,$INSTALL_PROGRAM,;t t
-s,@INSTALL_SCRIPT@,$INSTALL_SCRIPT,;t t
-s,@INSTALL_DATA@,$INSTALL_DATA,;t t
-s,@AR@,$AR,;t t
-s,@RANLIB@,$RANLIB,;t t
-s,@ac_ct_RANLIB@,$ac_ct_RANLIB,;t t
-s,@YACC@,$YACC,;t t
-s,@SET_MAKE@,$SET_MAKE,;t t
-s,@MAKE_SHELL@,$MAKE_SHELL,;t t
-s,@SIZE@,$SIZE,;t t
-s,@MKINSTALLDIRS@,$MKINSTALLDIRS,;t t
-s,@USE_NLS@,$USE_NLS,;t t
-s,@MSGFMT@,$MSGFMT,;t t
-s,@GMSGFMT@,$GMSGFMT,;t t
-s,@XGETTEXT@,$XGETTEXT,;t t
-s,@MSGMERGE@,$MSGMERGE,;t t
-s,@ALLOCA@,$ALLOCA,;t t
-s,@GLIBC21@,$GLIBC21,;t t
-s,@LIBICONV@,$LIBICONV,;t t
-s,@LTLIBICONV@,$LTLIBICONV,;t t
-s,@INTLBISON@,$INTLBISON,;t t
-s,@BUILD_INCLUDED_LIBINTL@,$BUILD_INCLUDED_LIBINTL,;t t
-s,@USE_INCLUDED_LIBINTL@,$USE_INCLUDED_LIBINTL,;t t
-s,@CATOBJEXT@,$CATOBJEXT,;t t
-s,@DATADIRNAME@,$DATADIRNAME,;t t
-s,@INSTOBJEXT@,$INSTOBJEXT,;t t
-s,@GENCAT@,$GENCAT,;t t
-s,@INTLOBJS@,$INTLOBJS,;t t
-s,@INTL_LIBTOOL_SUFFIX_PREFIX@,$INTL_LIBTOOL_SUFFIX_PREFIX,;t t
-s,@INTLLIBS@,$INTLLIBS,;t t
-s,@LIBINTL@,$LIBINTL,;t t
-s,@LTLIBINTL@,$LTLIBINTL,;t t
-s,@POSUB@,$POSUB,;t t
-s,@LIB@&t@OBJS@,$LIB@&t@OBJS,;t t
-s,@INTL_DEP@,$INTL_DEP,;t t
-s,@INTL_INC@,$INTL_INC,;t t
-s,@LIBINTL_H@,$LIBINTL_H,;t t
-s,@TIME_H_DEFINES_STRUCT_TIMESPEC@,$TIME_H_DEFINES_STRUCT_TIMESPEC,;t t
-s,@SYS_TIME_H_DEFINES_STRUCT_TIMESPEC@,$SYS_TIME_H_DEFINES_STRUCT_TIMESPEC,;t t
-s,@PTHREAD_H_DEFINES_STRUCT_TIMESPEC@,$PTHREAD_H_DEFINES_STRUCT_TIMESPEC,;t t
-s,@SIGLIST_O@,$SIGLIST_O,;t t
-s,@TERMCAP_LIB@,$TERMCAP_LIB,;t t
-s,@TERMCAP_DEP@,$TERMCAP_DEP,;t t
-s,@JOBS_O@,$JOBS_O,;t t
-s,@SHOBJ_CC@,$SHOBJ_CC,;t t
-s,@SHOBJ_CFLAGS@,$SHOBJ_CFLAGS,;t t
-s,@SHOBJ_LD@,$SHOBJ_LD,;t t
-s,@SHOBJ_LDFLAGS@,$SHOBJ_LDFLAGS,;t t
-s,@SHOBJ_XLDFLAGS@,$SHOBJ_XLDFLAGS,;t t
-s,@SHOBJ_LIBS@,$SHOBJ_LIBS,;t t
-s,@SHOBJ_STATUS@,$SHOBJ_STATUS,;t t
-s,@PROFILE_FLAGS@,$PROFILE_FLAGS,;t t
-s,@incdir@,$incdir,;t t
-s,@BUILD_DIR@,$BUILD_DIR,;t t
-s,@datarootdir@,$datarootdir,;t t
-s,@localedir@,$localedir,;t t
-s,@ARFLAGS@,$ARFLAGS,;t t
-s,@BASHVERS@,$BASHVERS,;t t
-s,@RELSTATUS@,$RELSTATUS,;t t
-s,@DEBUG@,$DEBUG,;t t
-s,@MALLOC_DEBUG@,$MALLOC_DEBUG,;t t
-s,@LOCAL_LIBS@,$LOCAL_LIBS,;t t
-s,@LOCAL_CFLAGS@,$LOCAL_CFLAGS,;t t
-s,@LOCAL_LDFLAGS@,$LOCAL_LDFLAGS,;t t
-s,@LOCAL_DEFS@,$LOCAL_DEFS,;t t
-s,@LTLIBOBJS@,$LTLIBOBJS,;t t
-CEOF
-
-_ACEOF
-
-  cat >>$CONFIG_STATUS <<\_ACEOF
-  # Split the substitutions into bite-sized pieces for seds with
-  # small command number limits, like on Digital OSF/1 and HP-UX.
-  ac_max_sed_lines=48
-  ac_sed_frag=1 # Number of current file.
-  ac_beg=1 # First line for current file.
-  ac_end=$ac_max_sed_lines # Line after last line for current file.
-  ac_more_lines=:
-  ac_sed_cmds=
-  while $ac_more_lines; do
-    if test $ac_beg -gt 1; then
-      sed "1,${ac_beg}d; ${ac_end}q" $tmp/subs.sed >$tmp/subs.frag
-    else
-      sed "${ac_end}q" $tmp/subs.sed >$tmp/subs.frag
-    fi
-    if test ! -s $tmp/subs.frag; then
-      ac_more_lines=false
-    else
-      # The purpose of the label and of the branching condition is to
-      # speed up the sed processing (if there are no `@' at all, there
-      # is no need to browse any of the substitutions).
-      # These are the two extra sed commands mentioned above.
-      (echo ':t
-  /@[a-zA-Z_][a-zA-Z_0-9]*@/!b' && cat $tmp/subs.frag) >$tmp/subs-$ac_sed_frag.sed
-      if test -z "$ac_sed_cmds"; then
-       ac_sed_cmds="sed -f $tmp/subs-$ac_sed_frag.sed"
-      else
-       ac_sed_cmds="$ac_sed_cmds | sed -f $tmp/subs-$ac_sed_frag.sed"
-      fi
-      ac_sed_frag=`expr $ac_sed_frag + 1`
-      ac_beg=$ac_end
-      ac_end=`expr $ac_end + $ac_max_sed_lines`
-    fi
-  done
-  if test -z "$ac_sed_cmds"; then
-    ac_sed_cmds=cat
-  fi
-fi # test -n "$CONFIG_FILES"
-
-_ACEOF
-cat >>$CONFIG_STATUS <<\_ACEOF
-for ac_file in : $CONFIG_FILES; do test "x$ac_file" = x: && continue
-  # Support "outfile[:infile[:infile...]]", defaulting infile="outfile.in".
-  case $ac_file in
-  - | *:- | *:-:* ) # input from stdin
-       cat >$tmp/stdin
-       ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'`
-       ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;;
-  *:* ) ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'`
-       ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;;
-  * )   ac_file_in=$ac_file.in ;;
-  esac
-
-  # Compute @srcdir@, @top_srcdir@, and @INSTALL@ for subdirectories.
-  ac_dir=`(dirname "$ac_file") 2>/dev/null ||
-$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
-        X"$ac_file" : 'X\(//\)[^/]' \| \
-        X"$ac_file" : 'X\(//\)$' \| \
-        X"$ac_file" : 'X\(/\)' \| \
-        .     : '\(.\)' 2>/dev/null ||
-echo X"$ac_file" |
-    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
-         /^X\(\/\/\)[^/].*/{ s//\1/; q; }
-         /^X\(\/\/\)$/{ s//\1/; q; }
-         /^X\(\/\).*/{ s//\1/; q; }
-         s/.*/./; q'`
-  { if $as_mkdir_p; then
-    mkdir -p "$ac_dir"
-  else
-    as_dir="$ac_dir"
-    as_dirs=
-    while test ! -d "$as_dir"; do
-      as_dirs="$as_dir $as_dirs"
-      as_dir=`(dirname "$as_dir") 2>/dev/null ||
-$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
-        X"$as_dir" : 'X\(//\)[^/]' \| \
-        X"$as_dir" : 'X\(//\)$' \| \
-        X"$as_dir" : 'X\(/\)' \| \
-        .     : '\(.\)' 2>/dev/null ||
-echo X"$as_dir" |
-    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
-         /^X\(\/\/\)[^/].*/{ s//\1/; q; }
-         /^X\(\/\/\)$/{ s//\1/; q; }
-         /^X\(\/\).*/{ s//\1/; q; }
-         s/.*/./; q'`
-    done
-    test ! -n "$as_dirs" || mkdir $as_dirs
-  fi || { { echo "$as_me:$LINENO: error: cannot create directory \"$ac_dir\"" >&5
-echo "$as_me: error: cannot create directory \"$ac_dir\"" >&2;}
-   { (exit 1); exit 1; }; }; }
-
-  ac_builddir=.
-
-if test "$ac_dir" != .; then
-  ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'`
-  # A "../" for each directory in $ac_dir_suffix.
-  ac_top_builddir=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,../,g'`
-else
-  ac_dir_suffix= ac_top_builddir=
-fi
-
-case $srcdir in
-  .)  # No --srcdir option.  We are building in place.
-    ac_srcdir=.
-    if test -z "$ac_top_builddir"; then
-       ac_top_srcdir=.
-    else
-       ac_top_srcdir=`echo $ac_top_builddir | sed 's,/$,,'`
-    fi ;;
-  [\\/]* | ?:[\\/]* )  # Absolute path.
-    ac_srcdir=$srcdir$ac_dir_suffix;
-    ac_top_srcdir=$srcdir ;;
-  *) # Relative path.
-    ac_srcdir=$ac_top_builddir$srcdir$ac_dir_suffix
-    ac_top_srcdir=$ac_top_builddir$srcdir ;;
-esac
-
-# Do not use `cd foo && pwd` to compute absolute paths, because
-# the directories may not exist.
-case `pwd` in
-.) ac_abs_builddir="$ac_dir";;
-*)
-  case "$ac_dir" in
-  .) ac_abs_builddir=`pwd`;;
-  [\\/]* | ?:[\\/]* ) ac_abs_builddir="$ac_dir";;
-  *) ac_abs_builddir=`pwd`/"$ac_dir";;
-  esac;;
-esac
-case $ac_abs_builddir in
-.) ac_abs_top_builddir=${ac_top_builddir}.;;
-*)
-  case ${ac_top_builddir}. in
-  .) ac_abs_top_builddir=$ac_abs_builddir;;
-  [\\/]* | ?:[\\/]* ) ac_abs_top_builddir=${ac_top_builddir}.;;
-  *) ac_abs_top_builddir=$ac_abs_builddir/${ac_top_builddir}.;;
-  esac;;
-esac
-case $ac_abs_builddir in
-.) ac_abs_srcdir=$ac_srcdir;;
-*)
-  case $ac_srcdir in
-  .) ac_abs_srcdir=$ac_abs_builddir;;
-  [\\/]* | ?:[\\/]* ) ac_abs_srcdir=$ac_srcdir;;
-  *) ac_abs_srcdir=$ac_abs_builddir/$ac_srcdir;;
-  esac;;
-esac
-case $ac_abs_builddir in
-.) ac_abs_top_srcdir=$ac_top_srcdir;;
-*)
-  case $ac_top_srcdir in
-  .) ac_abs_top_srcdir=$ac_abs_builddir;;
-  [\\/]* | ?:[\\/]* ) ac_abs_top_srcdir=$ac_top_srcdir;;
-  *) ac_abs_top_srcdir=$ac_abs_builddir/$ac_top_srcdir;;
-  esac;;
-esac
-
-
-  case $INSTALL in
-  [\\/$]* | ?:[\\/]* ) ac_INSTALL=$INSTALL ;;
-  *) ac_INSTALL=$ac_top_builddir$INSTALL ;;
-  esac
-
-  if test x"$ac_file" != x-; then
-    { echo "$as_me:$LINENO: creating $ac_file" >&5
-echo "$as_me: creating $ac_file" >&6;}
-    rm -f "$ac_file"
-  fi
-  # Let's still pretend it is `configure' which instantiates (i.e., don't
-  # use $as_me), people would be surprised to read:
-  #    /* config.h.  Generated by config.status.  */
-  if test x"$ac_file" = x-; then
-    configure_input=
-  else
-    configure_input="$ac_file.  "
-  fi
-  configure_input=$configure_input"Generated from `echo $ac_file_in |
-                                    sed 's,.*/,,'` by configure."
-
-  # First look for the input files in the build tree, otherwise in the
-  # src tree.
-  ac_file_inputs=`IFS=:
-    for f in $ac_file_in; do
-      case $f in
-      -) echo $tmp/stdin ;;
-      [\\/$]*)
-        # Absolute (can't be DOS-style, as IFS=:)
-        test -f "$f" || { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5
-echo "$as_me: error: cannot find input file: $f" >&2;}
-   { (exit 1); exit 1; }; }
-        echo "$f";;
-      *) # Relative
-        if test -f "$f"; then
-          # Build tree
-          echo "$f"
-        elif test -f "$srcdir/$f"; then
-          # Source tree
-          echo "$srcdir/$f"
-        else
-          # /dev/null tree
-          { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5
-echo "$as_me: error: cannot find input file: $f" >&2;}
-   { (exit 1); exit 1; }; }
-        fi;;
-      esac
-    done` || { (exit 1); exit 1; }
-_ACEOF
-cat >>$CONFIG_STATUS <<_ACEOF
-  sed "$ac_vpsub
-$extrasub
-_ACEOF
-cat >>$CONFIG_STATUS <<\_ACEOF
-:t
-/@[a-zA-Z_][a-zA-Z_0-9]*@/!b
-s,@configure_input@,$configure_input,;t t
-s,@srcdir@,$ac_srcdir,;t t
-s,@abs_srcdir@,$ac_abs_srcdir,;t t
-s,@top_srcdir@,$ac_top_srcdir,;t t
-s,@abs_top_srcdir@,$ac_abs_top_srcdir,;t t
-s,@builddir@,$ac_builddir,;t t
-s,@abs_builddir@,$ac_abs_builddir,;t t
-s,@top_builddir@,$ac_top_builddir,;t t
-s,@abs_top_builddir@,$ac_abs_top_builddir,;t t
-s,@INSTALL@,$ac_INSTALL,;t t
-" $ac_file_inputs | (eval "$ac_sed_cmds") >$tmp/out
-  rm -f $tmp/stdin
-  if test x"$ac_file" != x-; then
-    mv $tmp/out $ac_file
-  else
-    cat $tmp/out
-    rm -f $tmp/out
-  fi
-
-done
-_ACEOF
-cat >>$CONFIG_STATUS <<\_ACEOF
-
-#
-# CONFIG_HEADER section.
-#
-
-# These sed commands are passed to sed as "A NAME B NAME C VALUE D", where
-# NAME is the cpp macro being defined and VALUE is the value it is being given.
-#
-# ac_d sets the value in "#define NAME VALUE" lines.
-ac_dA='s,^\([   ]*\)#\([        ]*define[       ][      ]*\)'
-ac_dB='[        ].*$,\1#\2'
-ac_dC=' '
-ac_dD=',;t'
-# ac_u turns "#undef NAME" without trailing blanks into "#define NAME VALUE".
-ac_uA='s,^\([   ]*\)#\([        ]*\)undef\([    ][      ]*\)'
-ac_uB='$,\1#\2define\3'
-ac_uC=' '
-ac_uD=',;t'
-
-for ac_file in : $CONFIG_HEADERS; do test "x$ac_file" = x: && continue
-  # Support "outfile[:infile[:infile...]]", defaulting infile="outfile.in".
-  case $ac_file in
-  - | *:- | *:-:* ) # input from stdin
-       cat >$tmp/stdin
-       ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'`
-       ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;;
-  *:* ) ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'`
-       ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;;
-  * )   ac_file_in=$ac_file.in ;;
-  esac
-
-  test x"$ac_file" != x- && { echo "$as_me:$LINENO: creating $ac_file" >&5
-echo "$as_me: creating $ac_file" >&6;}
-
-  # First look for the input files in the build tree, otherwise in the
-  # src tree.
-  ac_file_inputs=`IFS=:
-    for f in $ac_file_in; do
-      case $f in
-      -) echo $tmp/stdin ;;
-      [\\/$]*)
-        # Absolute (can't be DOS-style, as IFS=:)
-        test -f "$f" || { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5
-echo "$as_me: error: cannot find input file: $f" >&2;}
-   { (exit 1); exit 1; }; }
-        # Do quote $f, to prevent DOS paths from being IFS'd.
-        echo "$f";;
-      *) # Relative
-        if test -f "$f"; then
-          # Build tree
-          echo "$f"
-        elif test -f "$srcdir/$f"; then
-          # Source tree
-          echo "$srcdir/$f"
-        else
-          # /dev/null tree
-          { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5
-echo "$as_me: error: cannot find input file: $f" >&2;}
-   { (exit 1); exit 1; }; }
-        fi;;
-      esac
-    done` || { (exit 1); exit 1; }
-  # Remove the trailing spaces.
-  sed 's/[      ]*$//' $ac_file_inputs >$tmp/in
-
-_ACEOF
-
-# Transform confdefs.h into two sed scripts, `conftest.defines' and
-# `conftest.undefs', that substitutes the proper values into
-# config.h.in to produce config.h.  The first handles `#define'
-# templates, and the second `#undef' templates.
-# And first: Protect against being on the right side of a sed subst in
-# config.status.  Protect against being in an unquoted here document
-# in config.status.
-rm -f conftest.defines conftest.undefs
-# Using a here document instead of a string reduces the quoting nightmare.
-# Putting comments in sed scripts is not portable.
-#
-# `end' is used to avoid that the second main sed command (meant for
-# 0-ary CPP macros) applies to n-ary macro definitions.
-# See the Autoconf documentation for `clear'.
-cat >confdef2sed.sed <<\_ACEOF
-s/[\\&,]/\\&/g
-s,[\\$`],\\&,g
-t clear
-: clear
-s,^[    ]*#[    ]*define[       ][      ]*\([^  (][^    (]*\)\(([^)]*)\)[       ]*\(.*\)$,${ac_dA}\1${ac_dB}\1\2${ac_dC}\3${ac_dD},gp
-t end
-s,^[    ]*#[    ]*define[       ][      ]*\([^  ][^     ]*\)[   ]*\(.*\)$,${ac_dA}\1${ac_dB}\1${ac_dC}\2${ac_dD},gp
-: end
-_ACEOF
-# If some macros were called several times there might be several times
-# the same #defines, which is useless.  Nevertheless, we may not want to
-# sort them, since we want the *last* AC-DEFINE to be honored.
-uniq confdefs.h | sed -n -f confdef2sed.sed >conftest.defines
-sed 's/ac_d/ac_u/g' conftest.defines >conftest.undefs
-rm -f confdef2sed.sed
-
-# This sed command replaces #undef with comments.  This is necessary, for
-# example, in the case of _POSIX_SOURCE, which is predefined and required
-# on some systems where configure will not decide to define it.
-cat >>conftest.undefs <<\_ACEOF
-s,^[    ]*#[    ]*undef[        ][      ]*[a-zA-Z_][a-zA-Z_0-9]*,/* & */,
-_ACEOF
-
-# Break up conftest.defines because some shells have a limit on the size
-# of here documents, and old seds have small limits too (100 cmds).
-echo '  # Handle all the #define templates only if necessary.' >>$CONFIG_STATUS
-echo '  if grep "^[     ]*#[    ]*define" $tmp/in >/dev/null; then' >>$CONFIG_STATUS
-echo '  # If there are no defines, we may have an empty if/fi' >>$CONFIG_STATUS
-echo '  :' >>$CONFIG_STATUS
-rm -f conftest.tail
-while grep . conftest.defines >/dev/null
-do
-  # Write a limited-size here document to $tmp/defines.sed.
-  echo '  cat >$tmp/defines.sed <<CEOF' >>$CONFIG_STATUS
-  # Speed up: don't consider the non `#define' lines.
-  echo '/^[     ]*#[    ]*define/!b' >>$CONFIG_STATUS
-  # Work around the forget-to-reset-the-flag bug.
-  echo 't clr' >>$CONFIG_STATUS
-  echo ': clr' >>$CONFIG_STATUS
-  sed ${ac_max_here_lines}q conftest.defines >>$CONFIG_STATUS
-  echo 'CEOF
-  sed -f $tmp/defines.sed $tmp/in >$tmp/out
-  rm -f $tmp/in
-  mv $tmp/out $tmp/in
-' >>$CONFIG_STATUS
-  sed 1,${ac_max_here_lines}d conftest.defines >conftest.tail
-  rm -f conftest.defines
-  mv conftest.tail conftest.defines
-done
-rm -f conftest.defines
-echo '  fi # grep' >>$CONFIG_STATUS
-echo >>$CONFIG_STATUS
-
-# Break up conftest.undefs because some shells have a limit on the size
-# of here documents, and old seds have small limits too (100 cmds).
-echo '  # Handle all the #undef templates' >>$CONFIG_STATUS
-rm -f conftest.tail
-while grep . conftest.undefs >/dev/null
-do
-  # Write a limited-size here document to $tmp/undefs.sed.
-  echo '  cat >$tmp/undefs.sed <<CEOF' >>$CONFIG_STATUS
-  # Speed up: don't consider the non `#undef'
-  echo '/^[     ]*#[    ]*undef/!b' >>$CONFIG_STATUS
-  # Work around the forget-to-reset-the-flag bug.
-  echo 't clr' >>$CONFIG_STATUS
-  echo ': clr' >>$CONFIG_STATUS
-  sed ${ac_max_here_lines}q conftest.undefs >>$CONFIG_STATUS
-  echo 'CEOF
-  sed -f $tmp/undefs.sed $tmp/in >$tmp/out
-  rm -f $tmp/in
-  mv $tmp/out $tmp/in
-' >>$CONFIG_STATUS
-  sed 1,${ac_max_here_lines}d conftest.undefs >conftest.tail
-  rm -f conftest.undefs
-  mv conftest.tail conftest.undefs
-done
-rm -f conftest.undefs
-
-cat >>$CONFIG_STATUS <<\_ACEOF
-  # Let's still pretend it is `configure' which instantiates (i.e., don't
-  # use $as_me), people would be surprised to read:
-  #    /* config.h.  Generated by config.status.  */
-  if test x"$ac_file" = x-; then
-    echo "/* Generated by configure.  */" >$tmp/config.h
-  else
-    echo "/* $ac_file.  Generated by configure.  */" >$tmp/config.h
-  fi
-  cat $tmp/in >>$tmp/config.h
-  rm -f $tmp/in
-  if test x"$ac_file" != x-; then
-    if diff $ac_file $tmp/config.h >/dev/null 2>&1; then
-      { echo "$as_me:$LINENO: $ac_file is unchanged" >&5
-echo "$as_me: $ac_file is unchanged" >&6;}
-    else
-      ac_dir=`(dirname "$ac_file") 2>/dev/null ||
-$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
-        X"$ac_file" : 'X\(//\)[^/]' \| \
-        X"$ac_file" : 'X\(//\)$' \| \
-        X"$ac_file" : 'X\(/\)' \| \
-        .     : '\(.\)' 2>/dev/null ||
-echo X"$ac_file" |
-    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
-         /^X\(\/\/\)[^/].*/{ s//\1/; q; }
-         /^X\(\/\/\)$/{ s//\1/; q; }
-         /^X\(\/\).*/{ s//\1/; q; }
-         s/.*/./; q'`
-      { if $as_mkdir_p; then
-    mkdir -p "$ac_dir"
-  else
-    as_dir="$ac_dir"
-    as_dirs=
-    while test ! -d "$as_dir"; do
-      as_dirs="$as_dir $as_dirs"
-      as_dir=`(dirname "$as_dir") 2>/dev/null ||
-$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
-        X"$as_dir" : 'X\(//\)[^/]' \| \
-        X"$as_dir" : 'X\(//\)$' \| \
-        X"$as_dir" : 'X\(/\)' \| \
-        .     : '\(.\)' 2>/dev/null ||
-echo X"$as_dir" |
-    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
-         /^X\(\/\/\)[^/].*/{ s//\1/; q; }
-         /^X\(\/\/\)$/{ s//\1/; q; }
-         /^X\(\/\).*/{ s//\1/; q; }
-         s/.*/./; q'`
-    done
-    test ! -n "$as_dirs" || mkdir $as_dirs
-  fi || { { echo "$as_me:$LINENO: error: cannot create directory \"$ac_dir\"" >&5
-echo "$as_me: error: cannot create directory \"$ac_dir\"" >&2;}
-   { (exit 1); exit 1; }; }; }
-
-      rm -f $ac_file
-      mv $tmp/config.h $ac_file
-    fi
-  else
-    cat $tmp/config.h
-    rm -f $tmp/config.h
-  fi
-done
-_ACEOF
-cat >>$CONFIG_STATUS <<\_ACEOF
-
-#
-# CONFIG_COMMANDS section.
-#
-for ac_file in : $CONFIG_COMMANDS; do test "x$ac_file" = x: && continue
-  ac_dest=`echo "$ac_file" | sed 's,:.*,,'`
-  ac_source=`echo "$ac_file" | sed 's,[^:]*:,,'`
-  ac_dir=`(dirname "$ac_dest") 2>/dev/null ||
-$as_expr X"$ac_dest" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
-        X"$ac_dest" : 'X\(//\)[^/]' \| \
-        X"$ac_dest" : 'X\(//\)$' \| \
-        X"$ac_dest" : 'X\(/\)' \| \
-        .     : '\(.\)' 2>/dev/null ||
-echo X"$ac_dest" |
-    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
-         /^X\(\/\/\)[^/].*/{ s//\1/; q; }
-         /^X\(\/\/\)$/{ s//\1/; q; }
-         /^X\(\/\).*/{ s//\1/; q; }
-         s/.*/./; q'`
-  { if $as_mkdir_p; then
-    mkdir -p "$ac_dir"
-  else
-    as_dir="$ac_dir"
-    as_dirs=
-    while test ! -d "$as_dir"; do
-      as_dirs="$as_dir $as_dirs"
-      as_dir=`(dirname "$as_dir") 2>/dev/null ||
-$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
-        X"$as_dir" : 'X\(//\)[^/]' \| \
-        X"$as_dir" : 'X\(//\)$' \| \
-        X"$as_dir" : 'X\(/\)' \| \
-        .     : '\(.\)' 2>/dev/null ||
-echo X"$as_dir" |
-    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
-         /^X\(\/\/\)[^/].*/{ s//\1/; q; }
-         /^X\(\/\/\)$/{ s//\1/; q; }
-         /^X\(\/\).*/{ s//\1/; q; }
-         s/.*/./; q'`
-    done
-    test ! -n "$as_dirs" || mkdir $as_dirs
-  fi || { { echo "$as_me:$LINENO: error: cannot create directory \"$ac_dir\"" >&5
-echo "$as_me: error: cannot create directory \"$ac_dir\"" >&2;}
-   { (exit 1); exit 1; }; }; }
-
-  ac_builddir=.
-
-if test "$ac_dir" != .; then
-  ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'`
-  # A "../" for each directory in $ac_dir_suffix.
-  ac_top_builddir=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,../,g'`
-else
-  ac_dir_suffix= ac_top_builddir=
-fi
-
-case $srcdir in
-  .)  # No --srcdir option.  We are building in place.
-    ac_srcdir=.
-    if test -z "$ac_top_builddir"; then
-       ac_top_srcdir=.
-    else
-       ac_top_srcdir=`echo $ac_top_builddir | sed 's,/$,,'`
-    fi ;;
-  [\\/]* | ?:[\\/]* )  # Absolute path.
-    ac_srcdir=$srcdir$ac_dir_suffix;
-    ac_top_srcdir=$srcdir ;;
-  *) # Relative path.
-    ac_srcdir=$ac_top_builddir$srcdir$ac_dir_suffix
-    ac_top_srcdir=$ac_top_builddir$srcdir ;;
-esac
-
-# Do not use `cd foo && pwd` to compute absolute paths, because
-# the directories may not exist.
-case `pwd` in
-.) ac_abs_builddir="$ac_dir";;
-*)
-  case "$ac_dir" in
-  .) ac_abs_builddir=`pwd`;;
-  [\\/]* | ?:[\\/]* ) ac_abs_builddir="$ac_dir";;
-  *) ac_abs_builddir=`pwd`/"$ac_dir";;
-  esac;;
-esac
-case $ac_abs_builddir in
-.) ac_abs_top_builddir=${ac_top_builddir}.;;
-*)
-  case ${ac_top_builddir}. in
-  .) ac_abs_top_builddir=$ac_abs_builddir;;
-  [\\/]* | ?:[\\/]* ) ac_abs_top_builddir=${ac_top_builddir}.;;
-  *) ac_abs_top_builddir=$ac_abs_builddir/${ac_top_builddir}.;;
-  esac;;
-esac
-case $ac_abs_builddir in
-.) ac_abs_srcdir=$ac_srcdir;;
-*)
-  case $ac_srcdir in
-  .) ac_abs_srcdir=$ac_abs_builddir;;
-  [\\/]* | ?:[\\/]* ) ac_abs_srcdir=$ac_srcdir;;
-  *) ac_abs_srcdir=$ac_abs_builddir/$ac_srcdir;;
-  esac;;
-esac
-case $ac_abs_builddir in
-.) ac_abs_top_srcdir=$ac_top_srcdir;;
-*)
-  case $ac_top_srcdir in
-  .) ac_abs_top_srcdir=$ac_abs_builddir;;
-  [\\/]* | ?:[\\/]* ) ac_abs_top_srcdir=$ac_top_srcdir;;
-  *) ac_abs_top_srcdir=$ac_abs_builddir/$ac_top_srcdir;;
-  esac;;
-esac
-
-
-  { echo "$as_me:$LINENO: executing $ac_dest commands" >&5
-echo "$as_me: executing $ac_dest commands" >&6;}
-  case $ac_dest in
-    default-1 ) 
-    for ac_file in $CONFIG_FILES; do
-      # Support "outfile[:infile[:infile...]]"
-      case "$ac_file" in
-        *:*) ac_file=`echo "$ac_file"|sed 's%:.*%%'` ;;
-      esac
-      # PO directories have a Makefile.in generated from Makefile.in.in.
-      case "$ac_file" in */Makefile.in)
-        # Adjust a relative srcdir.
-        ac_dir=`echo "$ac_file"|sed 's%/[^/][^/]*$%%'`
-        ac_dir_suffix="/`echo "$ac_dir"|sed 's%^\./%%'`"
-        ac_dots=`echo "$ac_dir_suffix"|sed 's%/[^/]*%../%g'`
-        # In autoconf-2.13 it is called $ac_given_srcdir.
-        # In autoconf-2.50 it is called $srcdir.
-        test -n "$ac_given_srcdir" || ac_given_srcdir="$srcdir"
-        case "$ac_given_srcdir" in
-          .)  top_srcdir=`echo $ac_dots|sed 's%/$%%'` ;;
-          /*) top_srcdir="$ac_given_srcdir" ;;
-          *)  top_srcdir="$ac_dots$ac_given_srcdir" ;;
-        esac
-        if test -f "$ac_given_srcdir/$ac_dir/POTFILES.in"; then
-          rm -f "$ac_dir/POTFILES"
-          test -n "$as_me" && echo "$as_me: creating $ac_dir/POTFILES" || echo "creating $ac_dir/POTFILES"
-          cat "$ac_given_srcdir/$ac_dir/POTFILES.in" | sed -e "/^#/d" -e "/^[  ]*\$/d" -e "s,.*,     $top_srcdir/& \\\\," | sed -e "\$s/\(.*\) \\\\/\1/" > "$ac_dir/POTFILES"
-          POMAKEFILEDEPS="POTFILES.in"
-          # ALL_LINGUAS, POFILES, GMOFILES, UPDATEPOFILES, DUMMYPOFILES depend
-          # on $ac_dir but don't depend on user-specified configuration
-          # parameters.
-          if test -f "$ac_given_srcdir/$ac_dir/LINGUAS"; then
-            # The LINGUAS file contains the set of available languages.
-            if test -n "$OBSOLETE_ALL_LINGUAS"; then
-              test -n "$as_me" && echo "$as_me: setting ALL_LINGUAS in configure.in is obsolete" || echo "setting ALL_LINGUAS in configure.in is obsolete"
-            fi
-            ALL_LINGUAS_=`sed -e "/^#/d" "$ac_given_srcdir/$ac_dir/LINGUAS"`
-            # Hide the ALL_LINGUAS assigment from automake.
-            eval 'ALL_LINGUAS''=$ALL_LINGUAS_'
-            POMAKEFILEDEPS="$POMAKEFILEDEPS LINGUAS"
-          else
-            # The set of available languages was given in configure.in.
-            eval 'ALL_LINGUAS''=$OBSOLETE_ALL_LINGUAS'
-          fi
-          case "$ac_given_srcdir" in
-            .) srcdirpre= ;;
-            *) srcdirpre='$(srcdir)/' ;;
-          esac
-          POFILES=
-          GMOFILES=
-          UPDATEPOFILES=
-          DUMMYPOFILES=
-          for lang in $ALL_LINGUAS; do
-            POFILES="$POFILES $srcdirpre$lang.po"
-            GMOFILES="$GMOFILES $srcdirpre$lang.gmo"
-            UPDATEPOFILES="$UPDATEPOFILES $lang.po-update"
-            DUMMYPOFILES="$DUMMYPOFILES $lang.nop"
-          done
-          # CATALOGS depends on both $ac_dir and the user's LINGUAS
-          # environment variable.
-          INST_LINGUAS=
-          if test -n "$ALL_LINGUAS"; then
-            for presentlang in $ALL_LINGUAS; do
-              useit=no
-              if test "%UNSET%" != "$LINGUAS"; then
-                desiredlanguages="$LINGUAS"
-              else
-                desiredlanguages="$ALL_LINGUAS"
-              fi
-              for desiredlang in $desiredlanguages; do
-                # Use the presentlang catalog if desiredlang is
-                #   a. equal to presentlang, or
-                #   b. a variant of presentlang (because in this case,
-                #      presentlang can be used as a fallback for messages
-                #      which are not translated in the desiredlang catalog).
-                case "$desiredlang" in
-                  "$presentlang"*) useit=yes;;
-                esac
-              done
-              if test $useit = yes; then
-                INST_LINGUAS="$INST_LINGUAS $presentlang"
-              fi
-            done
-          fi
-          CATALOGS=
-          if test -n "$INST_LINGUAS"; then
-            for lang in $INST_LINGUAS; do
-              CATALOGS="$CATALOGS $lang.gmo"
-            done
-          fi
-          test -n "$as_me" && echo "$as_me: creating $ac_dir/Makefile" || echo "creating $ac_dir/Makefile"
-          sed -e "/^POTFILES =/r $ac_dir/POTFILES" -e "/^# Makevars/r $ac_given_srcdir/$ac_dir/Makevars" -e "s|@POFILES@|$POFILES|g" -e "s|@GMOFILES@|$GMOFILES|g" -e "s|@UPDATEPOFILES@|$UPDATEPOFILES|g" -e "s|@DUMMYPOFILES@|$DUMMYPOFILES|g" -e "s|@CATALOGS@|$CATALOGS|g" -e "s|@POMAKEFILEDEPS@|$POMAKEFILEDEPS|g" "$ac_dir/Makefile.in" > "$ac_dir/Makefile"
-          for f in "$ac_given_srcdir/$ac_dir"/Rules-*; do
-            if test -f "$f"; then
-              case "$f" in
-                *.orig | *.bak | *~) ;;
-                *) cat "$f" >> "$ac_dir/Makefile" ;;
-              esac
-            fi
-          done
-        fi
-        ;;
-      esac
-    done ;;
-    default ) 
-# Makefile uses this timestamp file to record whether config.h is up to date.
-echo timestamp > stamp-h
- ;;
-  esac
-done
-_ACEOF
-
-cat >>$CONFIG_STATUS <<\_ACEOF
-
-{ (exit 0); exit 0; }
-_ACEOF
-chmod +x $CONFIG_STATUS
-ac_clean_files=$ac_clean_files_save
-
-
-# configure is writing to config.log, and then calls config.status.
-# config.status does its own redirection, appending to config.log.
-# Unfortunately, on DOS this fails, as config.log is still kept open
-# by configure, so config.status won't be able to write to it; its
-# output is simply discarded.  So we exec the FD to /dev/null,
-# effectively closing config.log, so it can be properly (re)opened and
-# appended to by config.status.  When coming back to configure, we
-# need to make the FD available again.
-if test "$no_create" != yes; then
-  ac_cs_success=:
-  ac_config_status_args=
-  test "$silent" = yes &&
-    ac_config_status_args="$ac_config_status_args --quiet"
-  exec 5>/dev/null
-  $SHELL $CONFIG_STATUS $ac_config_status_args || ac_cs_success=false
-  exec 5>>config.log
-  # Use ||, not &&, to avoid exiting from the if with $? = 1, which
-  # would make configure fail if this is the last instruction.
-  $ac_cs_success || { (exit 1); exit 1; }
-fi
-
diff --git a/autom4te.cache/output.3 b/autom4te.cache/output.3
deleted file mode 100644 (file)
index eae5c67..0000000
+++ /dev/null
@@ -1,17422 +0,0 @@
-@%:@! /bin/sh
-@%:@ From configure.ac for Bash 4.3, version 4.056.
-@%:@ Guess values for system-dependent variables and create Makefiles.
-@%:@ Generated by GNU Autoconf 2.68 for bash 4.3-alpha.
-@%:@
-@%:@ Report bugs to <bug-bash@gnu.org>.
-@%:@ 
-@%:@ 
-@%:@ Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001,
-@%:@ 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free Software
-@%:@ Foundation, Inc.
-@%:@ 
-@%:@ 
-@%:@ This configure script is free software; the Free Software Foundation
-@%:@ gives unlimited permission to copy, distribute and modify it.
-## -------------------- ##
-## M4sh Initialization. ##
-## -------------------- ##
-
-# Be more Bourne compatible
-DUALCASE=1; export DUALCASE # for MKS sh
-if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then :
-  emulate sh
-  NULLCMD=:
-  # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which
-  # is contrary to our usage.  Disable this feature.
-  alias -g '${1+"$@"}'='"$@"'
-  setopt NO_GLOB_SUBST
-else
-  case `(set -o) 2>/dev/null` in @%:@(
-  *posix*) :
-    set -o posix ;; @%:@(
-  *) :
-     ;;
-esac
-fi
-
-
-as_nl='
-'
-export as_nl
-# Printing a long string crashes Solaris 7 /usr/bin/printf.
-as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
-as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo
-as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo
-# Prefer a ksh shell builtin over an external printf program on Solaris,
-# but without wasting forks for bash or zsh.
-if test -z "$BASH_VERSION$ZSH_VERSION" \
-    && (test "X`print -r -- $as_echo`" = "X$as_echo") 2>/dev/null; then
-  as_echo='print -r --'
-  as_echo_n='print -rn --'
-elif (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then
-  as_echo='printf %s\n'
-  as_echo_n='printf %s'
-else
-  if test "X`(/usr/ucb/echo -n -n $as_echo) 2>/dev/null`" = "X-n $as_echo"; then
-    as_echo_body='eval /usr/ucb/echo -n "$1$as_nl"'
-    as_echo_n='/usr/ucb/echo -n'
-  else
-    as_echo_body='eval expr "X$1" : "X\\(.*\\)"'
-    as_echo_n_body='eval
-      arg=$1;
-      case $arg in @%:@(
-      *"$as_nl"*)
-       expr "X$arg" : "X\\(.*\\)$as_nl";
-       arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;;
-      esac;
-      expr "X$arg" : "X\\(.*\\)" | tr -d "$as_nl"
-    '
-    export as_echo_n_body
-    as_echo_n='sh -c $as_echo_n_body as_echo'
-  fi
-  export as_echo_body
-  as_echo='sh -c $as_echo_body as_echo'
-fi
-
-# The user is always right.
-if test "${PATH_SEPARATOR+set}" != set; then
-  PATH_SEPARATOR=:
-  (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && {
-    (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 ||
-      PATH_SEPARATOR=';'
-  }
-fi
-
-
-# IFS
-# We need space, tab and new line, in precisely that order.  Quoting is
-# there to prevent editors from complaining about space-tab.
-# (If _AS_PATH_WALK were called with IFS unset, it would disable word
-# splitting by setting IFS to empty value.)
-IFS=" ""       $as_nl"
-
-# Find who we are.  Look in the path if we contain no directory separator.
-as_myself=
-case $0 in @%:@((
-  *[\\/]* ) as_myself=$0 ;;
-  *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break
-  done
-IFS=$as_save_IFS
-
-     ;;
-esac
-# We did not find ourselves, most probably we were run as `sh COMMAND'
-# in which case we are not to be found in the path.
-if test "x$as_myself" = x; then
-  as_myself=$0
-fi
-if test ! -f "$as_myself"; then
-  $as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2
-  exit 1
-fi
-
-# Unset variables that we do not need and which cause bugs (e.g. in
-# pre-3.0 UWIN ksh).  But do not cause bugs in bash 2.01; the "|| exit 1"
-# suppresses any "Segmentation fault" message there.  '((' could
-# trigger a bug in pdksh 5.2.14.
-for as_var in BASH_ENV ENV MAIL MAILPATH
-do eval test x\${$as_var+set} = xset \
-  && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || :
-done
-PS1='$ '
-PS2='> '
-PS4='+ '
-
-# NLS nuisances.
-LC_ALL=C
-export LC_ALL
-LANGUAGE=C
-export LANGUAGE
-
-# CDPATH.
-(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
-
-if test "x$CONFIG_SHELL" = x; then
-  as_bourne_compatible="if test -n \"\${ZSH_VERSION+set}\" && (emulate sh) >/dev/null 2>&1; then :
-  emulate sh
-  NULLCMD=:
-  # Pre-4.2 versions of Zsh do word splitting on \${1+\"\$@\"}, which
-  # is contrary to our usage.  Disable this feature.
-  alias -g '\${1+\"\$@\"}'='\"\$@\"'
-  setopt NO_GLOB_SUBST
-else
-  case \`(set -o) 2>/dev/null\` in @%:@(
-  *posix*) :
-    set -o posix ;; @%:@(
-  *) :
-     ;;
-esac
-fi
-"
-  as_required="as_fn_return () { (exit \$1); }
-as_fn_success () { as_fn_return 0; }
-as_fn_failure () { as_fn_return 1; }
-as_fn_ret_success () { return 0; }
-as_fn_ret_failure () { return 1; }
-
-exitcode=0
-as_fn_success || { exitcode=1; echo as_fn_success failed.; }
-as_fn_failure && { exitcode=1; echo as_fn_failure succeeded.; }
-as_fn_ret_success || { exitcode=1; echo as_fn_ret_success failed.; }
-as_fn_ret_failure && { exitcode=1; echo as_fn_ret_failure succeeded.; }
-if ( set x; as_fn_ret_success y && test x = \"\$1\" ); then :
-  
-else
-  exitcode=1; echo positional parameters were not saved.
-fi
-test x\$exitcode = x0 || exit 1"
-  as_suggested="  as_lineno_1=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_1a=\$LINENO
-  as_lineno_2=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_2a=\$LINENO
-  eval 'test \"x\$as_lineno_1'\$as_run'\" != \"x\$as_lineno_2'\$as_run'\" &&
-  test \"x\`expr \$as_lineno_1'\$as_run' + 1\`\" = \"x\$as_lineno_2'\$as_run'\"' || exit 1
-test \$(( 1 + 1 )) = 2 || exit 1"
-  if (eval "$as_required") 2>/dev/null; then :
-  as_have_required=yes
-else
-  as_have_required=no
-fi
-  if test x$as_have_required = xyes && (eval "$as_suggested") 2>/dev/null; then :
-  
-else
-  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-as_found=false
-for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-  as_found=:
-  case $as_dir in @%:@(
-        /*)
-          for as_base in sh bash ksh sh5; do
-            # Try only shells that exist, to save several forks.
-            as_shell=$as_dir/$as_base
-            if { test -f "$as_shell" || test -f "$as_shell.exe"; } &&
-                   { $as_echo "$as_bourne_compatible""$as_required" | as_run=a "$as_shell"; } 2>/dev/null; then :
-  CONFIG_SHELL=$as_shell as_have_required=yes
-                  if { $as_echo "$as_bourne_compatible""$as_suggested" | as_run=a "$as_shell"; } 2>/dev/null; then :
-  break 2
-fi
-fi
-          done;;
-       esac
-  as_found=false
-done
-$as_found || { if { test -f "$SHELL" || test -f "$SHELL.exe"; } &&
-             { $as_echo "$as_bourne_compatible""$as_required" | as_run=a "$SHELL"; } 2>/dev/null; then :
-  CONFIG_SHELL=$SHELL as_have_required=yes
-fi; }
-IFS=$as_save_IFS
-
-
-      if test "x$CONFIG_SHELL" != x; then :
-  # We cannot yet assume a decent shell, so we have to provide a
-       # neutralization value for shells without unset; and this also
-       # works around shells that cannot unset nonexistent variables.
-       # Preserve -v and -x to the replacement shell.
-       BASH_ENV=/dev/null
-       ENV=/dev/null
-       (unset BASH_ENV) >/dev/null 2>&1 && unset BASH_ENV ENV
-       export CONFIG_SHELL
-       case $- in @%:@ ((((
-         *v*x* | *x*v* ) as_opts=-vx ;;
-         *v* ) as_opts=-v ;;
-         *x* ) as_opts=-x ;;
-         * ) as_opts= ;;
-       esac
-       exec "$CONFIG_SHELL" $as_opts "$as_myself" ${1+"$@"}
-fi
-
-    if test x$as_have_required = xno; then :
-  $as_echo "$0: This script requires a shell more modern than all"
-  $as_echo "$0: the shells that I found on your system."
-  if test x${ZSH_VERSION+set} = xset ; then
-    $as_echo "$0: In particular, zsh $ZSH_VERSION has bugs and should"
-    $as_echo "$0: be upgraded to zsh 4.3.4 or later."
-  else
-    $as_echo "$0: Please tell bug-autoconf@gnu.org and bug-bash@gnu.org
-$0: about your system, including any error possibly output
-$0: before this message. Then install a modern shell, or
-$0: manually run the script under such a shell if you do
-$0: have one."
-  fi
-  exit 1
-fi
-fi
-fi
-SHELL=${CONFIG_SHELL-/bin/sh}
-export SHELL
-# Unset more variables known to interfere with behavior of common tools.
-CLICOLOR_FORCE= GREP_OPTIONS=
-unset CLICOLOR_FORCE GREP_OPTIONS
-
-## --------------------- ##
-## M4sh Shell Functions. ##
-## --------------------- ##
-@%:@ as_fn_unset VAR
-@%:@ ---------------
-@%:@ Portably unset VAR.
-as_fn_unset ()
-{
-  { eval $1=; unset $1;}
-}
-as_unset=as_fn_unset
-
-@%:@ as_fn_set_status STATUS
-@%:@ -----------------------
-@%:@ Set @S|@? to STATUS, without forking.
-as_fn_set_status ()
-{
-  return $1
-} @%:@ as_fn_set_status
-
-@%:@ as_fn_exit STATUS
-@%:@ -----------------
-@%:@ Exit the shell with STATUS, even in a "trap 0" or "set -e" context.
-as_fn_exit ()
-{
-  set +e
-  as_fn_set_status $1
-  exit $1
-} @%:@ as_fn_exit
-
-@%:@ as_fn_mkdir_p
-@%:@ -------------
-@%:@ Create "@S|@as_dir" as a directory, including parents if necessary.
-as_fn_mkdir_p ()
-{
-
-  case $as_dir in #(
-  -*) as_dir=./$as_dir;;
-  esac
-  test -d "$as_dir" || eval $as_mkdir_p || {
-    as_dirs=
-    while :; do
-      case $as_dir in #(
-      *\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'(
-      *) as_qdir=$as_dir;;
-      esac
-      as_dirs="'$as_qdir' $as_dirs"
-      as_dir=`$as_dirname -- "$as_dir" ||
-$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
-        X"$as_dir" : 'X\(//\)[^/]' \| \
-        X"$as_dir" : 'X\(//\)$' \| \
-        X"$as_dir" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X"$as_dir" |
-    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
-           s//\1/
-           q
-         }
-         /^X\(\/\/\)[^/].*/{
-           s//\1/
-           q
-         }
-         /^X\(\/\/\)$/{
-           s//\1/
-           q
-         }
-         /^X\(\/\).*/{
-           s//\1/
-           q
-         }
-         s/.*/./; q'`
-      test -d "$as_dir" && break
-    done
-    test -z "$as_dirs" || eval "mkdir $as_dirs"
-  } || test -d "$as_dir" || as_fn_error $? "cannot create directory $as_dir"
-
-
-} @%:@ as_fn_mkdir_p
-@%:@ as_fn_append VAR VALUE
-@%:@ ----------------------
-@%:@ Append the text in VALUE to the end of the definition contained in VAR. Take
-@%:@ advantage of any shell optimizations that allow amortized linear growth over
-@%:@ repeated appends, instead of the typical quadratic growth present in naive
-@%:@ implementations.
-if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null; then :
-  eval 'as_fn_append ()
-  {
-    eval $1+=\$2
-  }'
-else
-  as_fn_append ()
-  {
-    eval $1=\$$1\$2
-  }
-fi # as_fn_append
-
-@%:@ as_fn_arith ARG...
-@%:@ ------------------
-@%:@ Perform arithmetic evaluation on the ARGs, and store the result in the
-@%:@ global @S|@as_val. Take advantage of shells that can avoid forks. The arguments
-@%:@ must be portable across @S|@(()) and expr.
-if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null; then :
-  eval 'as_fn_arith ()
-  {
-    as_val=$(( $* ))
-  }'
-else
-  as_fn_arith ()
-  {
-    as_val=`expr "$@" || test $? -eq 1`
-  }
-fi # as_fn_arith
-
-
-@%:@ as_fn_error STATUS ERROR [LINENO LOG_FD]
-@%:@ ----------------------------------------
-@%:@ Output "`basename @S|@0`: error: ERROR" to stderr. If LINENO and LOG_FD are
-@%:@ provided, also output the error to LOG_FD, referencing LINENO. Then exit the
-@%:@ script with STATUS, using 1 if that was 0.
-as_fn_error ()
-{
-  as_status=$1; test $as_status -eq 0 && as_status=1
-  if test "$4"; then
-    as_lineno=${as_lineno-"$3"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
-    $as_echo "$as_me:${as_lineno-$LINENO}: error: $2" >&$4
-  fi
-  $as_echo "$as_me: error: $2" >&2
-  as_fn_exit $as_status
-} @%:@ as_fn_error
-
-if expr a : '\(a\)' >/dev/null 2>&1 &&
-   test "X`expr 00001 : '.*\(...\)'`" = X001; then
-  as_expr=expr
-else
-  as_expr=false
-fi
-
-if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then
-  as_basename=basename
-else
-  as_basename=false
-fi
-
-if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then
-  as_dirname=dirname
-else
-  as_dirname=false
-fi
-
-as_me=`$as_basename -- "$0" ||
-$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \
-        X"$0" : 'X\(//\)$' \| \
-        X"$0" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X/"$0" |
-    sed '/^.*\/\([^/][^/]*\)\/*$/{
-           s//\1/
-           q
-         }
-         /^X\/\(\/\/\)$/{
-           s//\1/
-           q
-         }
-         /^X\/\(\/\).*/{
-           s//\1/
-           q
-         }
-         s/.*/./; q'`
-
-# Avoid depending upon Character Ranges.
-as_cr_letters='abcdefghijklmnopqrstuvwxyz'
-as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ'
-as_cr_Letters=$as_cr_letters$as_cr_LETTERS
-as_cr_digits='0123456789'
-as_cr_alnum=$as_cr_Letters$as_cr_digits
-
-
-  as_lineno_1=$LINENO as_lineno_1a=$LINENO
-  as_lineno_2=$LINENO as_lineno_2a=$LINENO
-  eval 'test "x$as_lineno_1'$as_run'" != "x$as_lineno_2'$as_run'" &&
-  test "x`expr $as_lineno_1'$as_run' + 1`" = "x$as_lineno_2'$as_run'"' || {
-  # Blame Lee E. McMahon (1931-1989) for sed's syntax.  :-)
-  sed -n '
-    p
-    /[$]LINENO/=
-  ' <$as_myself |
-    sed '
-      s/[$]LINENO.*/&-/
-      t lineno
-      b
-      :lineno
-      N
-      :loop
-      s/[$]LINENO\([^'$as_cr_alnum'_].*\n\)\(.*\)/\2\1\2/
-      t loop
-      s/-\n.*//
-    ' >$as_me.lineno &&
-  chmod +x "$as_me.lineno" ||
-    { $as_echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2; as_fn_exit 1; }
-
-  # Don't try to exec as it changes $[0], causing all sort of problems
-  # (the dirname of $[0] is not the place where we might find the
-  # original and so on.  Autoconf is especially sensitive to this).
-  . "./$as_me.lineno"
-  # Exit status is that of the last command.
-  exit
-}
-
-ECHO_C= ECHO_N= ECHO_T=
-case `echo -n x` in @%:@(((((
--n*)
-  case `echo 'xy\c'` in
-  *c*) ECHO_T='        ';;     # ECHO_T is single tab character.
-  xy)  ECHO_C='\c';;
-  *)   echo `echo ksh88 bug on AIX 6.1` > /dev/null
-       ECHO_T='        ';;
-  esac;;
-*)
-  ECHO_N='-n';;
-esac
-
-rm -f conf$$ conf$$.exe conf$$.file
-if test -d conf$$.dir; then
-  rm -f conf$$.dir/conf$$.file
-else
-  rm -f conf$$.dir
-  mkdir conf$$.dir 2>/dev/null
-fi
-if (echo >conf$$.file) 2>/dev/null; then
-  if ln -s conf$$.file conf$$ 2>/dev/null; then
-    as_ln_s='ln -s'
-    # ... but there are two gotchas:
-    # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail.
-    # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable.
-    # In both cases, we have to default to `cp -p'.
-    ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe ||
-      as_ln_s='cp -p'
-  elif ln conf$$.file conf$$ 2>/dev/null; then
-    as_ln_s=ln
-  else
-    as_ln_s='cp -p'
-  fi
-else
-  as_ln_s='cp -p'
-fi
-rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file
-rmdir conf$$.dir 2>/dev/null
-
-if mkdir -p . 2>/dev/null; then
-  as_mkdir_p='mkdir -p "$as_dir"'
-else
-  test -d ./-p && rmdir ./-p
-  as_mkdir_p=false
-fi
-
-if test -x / >/dev/null 2>&1; then
-  as_test_x='test -x'
-else
-  if ls -dL / >/dev/null 2>&1; then
-    as_ls_L_option=L
-  else
-    as_ls_L_option=
-  fi
-  as_test_x='
-    eval sh -c '\''
-      if test -d "$1"; then
-       test -d "$1/.";
-      else
-       case $1 in @%:@(
-       -*)set "./$1";;
-       esac;
-       case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in @%:@((
-       ???[sx]*):;;*)false;;esac;fi
-    '\'' sh
-  '
-fi
-as_executable_p=$as_test_x
-
-# Sed expression to map a string onto a valid CPP name.
-as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'"
-
-# Sed expression to map a string onto a valid variable name.
-as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'"
-
-
-test -n "$DJDIR" || exec 7<&0 </dev/null
-exec 6>&1
-
-# Name of the host.
-# hostname on some systems (SVR3.2, old GNU/Linux) returns a bogus exit status,
-# so uname gets run too.
-ac_hostname=`(hostname || uname -n) 2>/dev/null | sed 1q`
-
-#
-# Initializations.
-#
-ac_default_prefix=/usr/local
-ac_clean_files=
-ac_config_libobj_dir=.
-LIB@&t@OBJS=
-cross_compiling=no
-subdirs=
-MFLAGS=
-MAKEFLAGS=
-
-# Identity of this package.
-PACKAGE_NAME='bash'
-PACKAGE_TARNAME='bash'
-PACKAGE_VERSION='4.3-alpha'
-PACKAGE_STRING='bash 4.3-alpha'
-PACKAGE_BUGREPORT='bug-bash@gnu.org'
-PACKAGE_URL=''
-
-ac_unique_file="shell.h"
-# Factoring default headers for most tests.
-ac_includes_default="\
-#include <stdio.h>
-#ifdef HAVE_SYS_TYPES_H
-# include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_STAT_H
-# include <sys/stat.h>
-#endif
-#ifdef STDC_HEADERS
-# include <stdlib.h>
-# include <stddef.h>
-#else
-# ifdef HAVE_STDLIB_H
-#  include <stdlib.h>
-# endif
-#endif
-#ifdef HAVE_STRING_H
-# if !defined STDC_HEADERS && defined HAVE_MEMORY_H
-#  include <memory.h>
-# endif
-# include <string.h>
-#endif
-#ifdef HAVE_STRINGS_H
-# include <strings.h>
-#endif
-#ifdef HAVE_INTTYPES_H
-# include <inttypes.h>
-#endif
-#ifdef HAVE_STDINT_H
-# include <stdint.h>
-#endif
-#ifdef HAVE_UNISTD_H
-# include <unistd.h>
-#endif"
-
-ac_header_list=
-ac_func_list=
-ac_subst_vars='LTLIBOBJS
-LOCAL_DEFS
-LOCAL_LDFLAGS
-LOCAL_CFLAGS
-LOCAL_LIBS
-MALLOC_DEBUG
-DEBUG
-RELSTATUS
-BASHVERS
-ARFLAGS
-BUILD_DIR
-incdir
-PROFILE_FLAGS
-SHOBJ_STATUS
-SHOBJ_LIBS
-SHOBJ_XLDFLAGS
-SHOBJ_LDFLAGS
-SHOBJ_LD
-SHOBJ_CFLAGS
-SHOBJ_CC
-JOBS_O
-TERMCAP_DEP
-TERMCAP_LIB
-SIGLIST_O
-PTHREAD_H_DEFINES_STRUCT_TIMESPEC
-SYS_TIME_H_DEFINES_STRUCT_TIMESPEC
-TIME_H_DEFINES_STRUCT_TIMESPEC
-LIBINTL_H
-INTL_INC
-INTL_DEP
-LIB@&t@OBJS
-POSUB
-LTLIBINTL
-LIBINTL
-INTLLIBS
-INTL_LIBTOOL_SUFFIX_PREFIX
-INTLOBJS
-GENCAT
-INSTOBJEXT
-DATADIRNAME
-CATOBJEXT
-USE_INCLUDED_LIBINTL
-BUILD_INCLUDED_LIBINTL
-INTLBISON
-LTLIBICONV
-LIBICONV
-GLIBC21
-ALLOCA
-MSGMERGE
-XGETTEXT
-GMSGFMT
-MSGFMT
-USE_NLS
-MKINSTALLDIRS
-SIZE
-MAKE_SHELL
-SET_MAKE
-YFLAGS
-YACC
-RANLIB
-AR
-INSTALL_DATA
-INSTALL_SCRIPT
-INSTALL_PROGRAM
-TILDE_LIB
-HIST_LIBDIR
-HISTORY_DEP
-HISTORY_LIB
-RL_INCLUDE
-RL_INCLUDEDIR
-RL_LIBDIR
-READLINE_DEP
-READLINE_LIB
-RL_MINOR
-RL_MAJOR
-RL_VERSION
-LIBS_FOR_BUILD
-STATIC_LD
-SIGNAMES_O
-SIGNAMES_H
-CROSS_COMPILE
-EGREP
-GREP
-CPP
-OBJEXT
-EXEEXT
-ac_ct_CC
-CPPFLAGS
-LDFLAGS
-CFLAGS
-CC
-HELPSTRINGS
-HELPFILES_TARGET
-HELPINSTALL
-HELPDIRDEFINE
-HELPDIR
-MALLOC_DEP
-MALLOC_LDFLAGS
-MALLOC_LIBRARY
-MALLOC_LIB
-MALLOC_SRC
-MALLOC_TARGET
-PURIFY
-TESTSCRIPT
-CPPFLAGS_FOR_BUILD
-LDFLAGS_FOR_BUILD
-CFLAGS_FOR_BUILD
-CC_FOR_BUILD
-DEBUGGER_START_FILE
-host_os
-host_vendor
-host_cpu
-host
-build_os
-build_vendor
-build_cpu
-build
-target_alias
-host_alias
-build_alias
-LIBS
-ECHO_T
-ECHO_N
-ECHO_C
-DEFS
-mandir
-localedir
-libdir
-psdir
-pdfdir
-dvidir
-htmldir
-infodir
-docdir
-oldincludedir
-includedir
-localstatedir
-sharedstatedir
-sysconfdir
-datadir
-datarootdir
-libexecdir
-sbindir
-bindir
-program_transform_name
-prefix
-exec_prefix
-PACKAGE_URL
-PACKAGE_BUGREPORT
-PACKAGE_STRING
-PACKAGE_VERSION
-PACKAGE_TARNAME
-PACKAGE_NAME
-PATH_SEPARATOR
-SHELL'
-ac_subst_files=''
-ac_user_opts='
-enable_option_checking
-with_afs
-with_bash_malloc
-with_curses
-with_gnu_malloc
-with_installed_readline
-with_purecov
-with_purify
-enable_minimal_config
-enable_alias
-enable_arith_for_command
-enable_array_variables
-enable_bang_history
-enable_brace_expansion
-enable_casemod_attributes
-enable_casemod_expansions
-enable_command_timing
-enable_cond_command
-enable_cond_regexp
-enable_coprocesses
-enable_debugger
-enable_direxpand_default
-enable_directory_stack
-enable_disabled_builtins
-enable_dparen_arithmetic
-enable_extended_glob
-enable_extended_glob_default
-enable_help_builtin
-enable_history
-enable_job_control
-enable_multibyte
-enable_net_redirections
-enable_process_substitution
-enable_progcomp
-enable_prompt_string_decoding
-enable_readline
-enable_restricted
-enable_select
-enable_separate_helpfiles
-enable_single_help_strings
-enable_strict_posix_default
-enable_usg_echo_default
-enable_xpg_echo_default
-enable_mem_scramble
-enable_profiling
-enable_static_link
-enable_largefile
-enable_nls
-with_gnu_ld
-enable_rpath
-with_libiconv_prefix
-with_included_gettext
-with_libintl_prefix
-'
-      ac_precious_vars='build_alias
-host_alias
-target_alias
-DEBUGGER_START_FILE
-CC_FOR_BUILD
-CFLAGS_FOR_BUILD
-LDFLAGS_FOR_BUILD
-CPPFLAGS_FOR_BUILD
-CC
-CFLAGS
-LDFLAGS
-LIBS
-CPPFLAGS
-CPP
-YACC
-YFLAGS'
-
-
-# Initialize some variables set by options.
-ac_init_help=
-ac_init_version=false
-ac_unrecognized_opts=
-ac_unrecognized_sep=
-# The variables have the same names as the options, with
-# dashes changed to underlines.
-cache_file=/dev/null
-exec_prefix=NONE
-no_create=
-no_recursion=
-prefix=NONE
-program_prefix=NONE
-program_suffix=NONE
-program_transform_name=s,x,x,
-silent=
-site=
-srcdir=
-verbose=
-x_includes=NONE
-x_libraries=NONE
-
-# Installation directory options.
-# These are left unexpanded so users can "make install exec_prefix=/foo"
-# and all the variables that are supposed to be based on exec_prefix
-# by default will actually change.
-# Use braces instead of parens because sh, perl, etc. also accept them.
-# (The list follows the same order as the GNU Coding Standards.)
-bindir='${exec_prefix}/bin'
-sbindir='${exec_prefix}/sbin'
-libexecdir='${exec_prefix}/libexec'
-datarootdir='${prefix}/share'
-datadir='${datarootdir}'
-sysconfdir='${prefix}/etc'
-sharedstatedir='${prefix}/com'
-localstatedir='${prefix}/var'
-includedir='${prefix}/include'
-oldincludedir='/usr/include'
-docdir='${datarootdir}/doc/${PACKAGE_TARNAME}'
-infodir='${datarootdir}/info'
-htmldir='${docdir}'
-dvidir='${docdir}'
-pdfdir='${docdir}'
-psdir='${docdir}'
-libdir='${exec_prefix}/lib'
-localedir='${datarootdir}/locale'
-mandir='${datarootdir}/man'
-
-ac_prev=
-ac_dashdash=
-for ac_option
-do
-  # If the previous option needs an argument, assign it.
-  if test -n "$ac_prev"; then
-    eval $ac_prev=\$ac_option
-    ac_prev=
-    continue
-  fi
-
-  case $ac_option in
-  *=?*) ac_optarg=`expr "X$ac_option" : '[^=]*=\(.*\)'` ;;
-  *=)   ac_optarg= ;;
-  *)    ac_optarg=yes ;;
-  esac
-
-  # Accept the important Cygnus configure options, so we can diagnose typos.
-
-  case $ac_dashdash$ac_option in
-  --)
-    ac_dashdash=yes ;;
-
-  -bindir | --bindir | --bindi | --bind | --bin | --bi)
-    ac_prev=bindir ;;
-  -bindir=* | --bindir=* | --bindi=* | --bind=* | --bin=* | --bi=*)
-    bindir=$ac_optarg ;;
-
-  -build | --build | --buil | --bui | --bu)
-    ac_prev=build_alias ;;
-  -build=* | --build=* | --buil=* | --bui=* | --bu=*)
-    build_alias=$ac_optarg ;;
-
-  -cache-file | --cache-file | --cache-fil | --cache-fi \
-  | --cache-f | --cache- | --cache | --cach | --cac | --ca | --c)
-    ac_prev=cache_file ;;
-  -cache-file=* | --cache-file=* | --cache-fil=* | --cache-fi=* \
-  | --cache-f=* | --cache-=* | --cache=* | --cach=* | --cac=* | --ca=* | --c=*)
-    cache_file=$ac_optarg ;;
-
-  --config-cache | -C)
-    cache_file=config.cache ;;
-
-  -datadir | --datadir | --datadi | --datad)
-    ac_prev=datadir ;;
-  -datadir=* | --datadir=* | --datadi=* | --datad=*)
-    datadir=$ac_optarg ;;
-
-  -datarootdir | --datarootdir | --datarootdi | --datarootd | --dataroot \
-  | --dataroo | --dataro | --datar)
-    ac_prev=datarootdir ;;
-  -datarootdir=* | --datarootdir=* | --datarootdi=* | --datarootd=* \
-  | --dataroot=* | --dataroo=* | --dataro=* | --datar=*)
-    datarootdir=$ac_optarg ;;
-
-  -disable-* | --disable-*)
-    ac_useropt=`expr "x$ac_option" : 'x-*disable-\(.*\)'`
-    # Reject names that are not valid shell variable names.
-    expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&
-      as_fn_error $? "invalid feature name: $ac_useropt"
-    ac_useropt_orig=$ac_useropt
-    ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'`
-    case $ac_user_opts in
-      *"
-"enable_$ac_useropt"
-"*) ;;
-      *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--disable-$ac_useropt_orig"
-        ac_unrecognized_sep=', ';;
-    esac
-    eval enable_$ac_useropt=no ;;
-
-  -docdir | --docdir | --docdi | --doc | --do)
-    ac_prev=docdir ;;
-  -docdir=* | --docdir=* | --docdi=* | --doc=* | --do=*)
-    docdir=$ac_optarg ;;
-
-  -dvidir | --dvidir | --dvidi | --dvid | --dvi | --dv)
-    ac_prev=dvidir ;;
-  -dvidir=* | --dvidir=* | --dvidi=* | --dvid=* | --dvi=* | --dv=*)
-    dvidir=$ac_optarg ;;
-
-  -enable-* | --enable-*)
-    ac_useropt=`expr "x$ac_option" : 'x-*enable-\([^=]*\)'`
-    # Reject names that are not valid shell variable names.
-    expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&
-      as_fn_error $? "invalid feature name: $ac_useropt"
-    ac_useropt_orig=$ac_useropt
-    ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'`
-    case $ac_user_opts in
-      *"
-"enable_$ac_useropt"
-"*) ;;
-      *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--enable-$ac_useropt_orig"
-        ac_unrecognized_sep=', ';;
-    esac
-    eval enable_$ac_useropt=\$ac_optarg ;;
-
-  -exec-prefix | --exec_prefix | --exec-prefix | --exec-prefi \
-  | --exec-pref | --exec-pre | --exec-pr | --exec-p | --exec- \
-  | --exec | --exe | --ex)
-    ac_prev=exec_prefix ;;
-  -exec-prefix=* | --exec_prefix=* | --exec-prefix=* | --exec-prefi=* \
-  | --exec-pref=* | --exec-pre=* | --exec-pr=* | --exec-p=* | --exec-=* \
-  | --exec=* | --exe=* | --ex=*)
-    exec_prefix=$ac_optarg ;;
-
-  -gas | --gas | --ga | --g)
-    # Obsolete; use --with-gas.
-    with_gas=yes ;;
-
-  -help | --help | --hel | --he | -h)
-    ac_init_help=long ;;
-  -help=r* | --help=r* | --hel=r* | --he=r* | -hr*)
-    ac_init_help=recursive ;;
-  -help=s* | --help=s* | --hel=s* | --he=s* | -hs*)
-    ac_init_help=short ;;
-
-  -host | --host | --hos | --ho)
-    ac_prev=host_alias ;;
-  -host=* | --host=* | --hos=* | --ho=*)
-    host_alias=$ac_optarg ;;
-
-  -htmldir | --htmldir | --htmldi | --htmld | --html | --htm | --ht)
-    ac_prev=htmldir ;;
-  -htmldir=* | --htmldir=* | --htmldi=* | --htmld=* | --html=* | --htm=* \
-  | --ht=*)
-    htmldir=$ac_optarg ;;
-
-  -includedir | --includedir | --includedi | --included | --include \
-  | --includ | --inclu | --incl | --inc)
-    ac_prev=includedir ;;
-  -includedir=* | --includedir=* | --includedi=* | --included=* | --include=* \
-  | --includ=* | --inclu=* | --incl=* | --inc=*)
-    includedir=$ac_optarg ;;
-
-  -infodir | --infodir | --infodi | --infod | --info | --inf)
-    ac_prev=infodir ;;
-  -infodir=* | --infodir=* | --infodi=* | --infod=* | --info=* | --inf=*)
-    infodir=$ac_optarg ;;
-
-  -libdir | --libdir | --libdi | --libd)
-    ac_prev=libdir ;;
-  -libdir=* | --libdir=* | --libdi=* | --libd=*)
-    libdir=$ac_optarg ;;
-
-  -libexecdir | --libexecdir | --libexecdi | --libexecd | --libexec \
-  | --libexe | --libex | --libe)
-    ac_prev=libexecdir ;;
-  -libexecdir=* | --libexecdir=* | --libexecdi=* | --libexecd=* | --libexec=* \
-  | --libexe=* | --libex=* | --libe=*)
-    libexecdir=$ac_optarg ;;
-
-  -localedir | --localedir | --localedi | --localed | --locale)
-    ac_prev=localedir ;;
-  -localedir=* | --localedir=* | --localedi=* | --localed=* | --locale=*)
-    localedir=$ac_optarg ;;
-
-  -localstatedir | --localstatedir | --localstatedi | --localstated \
-  | --localstate | --localstat | --localsta | --localst | --locals)
-    ac_prev=localstatedir ;;
-  -localstatedir=* | --localstatedir=* | --localstatedi=* | --localstated=* \
-  | --localstate=* | --localstat=* | --localsta=* | --localst=* | --locals=*)
-    localstatedir=$ac_optarg ;;
-
-  -mandir | --mandir | --mandi | --mand | --man | --ma | --m)
-    ac_prev=mandir ;;
-  -mandir=* | --mandir=* | --mandi=* | --mand=* | --man=* | --ma=* | --m=*)
-    mandir=$ac_optarg ;;
-
-  -nfp | --nfp | --nf)
-    # Obsolete; use --without-fp.
-    with_fp=no ;;
-
-  -no-create | --no-create | --no-creat | --no-crea | --no-cre \
-  | --no-cr | --no-c | -n)
-    no_create=yes ;;
-
-  -no-recursion | --no-recursion | --no-recursio | --no-recursi \
-  | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r)
-    no_recursion=yes ;;
-
-  -oldincludedir | --oldincludedir | --oldincludedi | --oldincluded \
-  | --oldinclude | --oldinclud | --oldinclu | --oldincl | --oldinc \
-  | --oldin | --oldi | --old | --ol | --o)
-    ac_prev=oldincludedir ;;
-  -oldincludedir=* | --oldincludedir=* | --oldincludedi=* | --oldincluded=* \
-  | --oldinclude=* | --oldinclud=* | --oldinclu=* | --oldincl=* | --oldinc=* \
-  | --oldin=* | --oldi=* | --old=* | --ol=* | --o=*)
-    oldincludedir=$ac_optarg ;;
-
-  -prefix | --prefix | --prefi | --pref | --pre | --pr | --p)
-    ac_prev=prefix ;;
-  -prefix=* | --prefix=* | --prefi=* | --pref=* | --pre=* | --pr=* | --p=*)
-    prefix=$ac_optarg ;;
-
-  -program-prefix | --program-prefix | --program-prefi | --program-pref \
-  | --program-pre | --program-pr | --program-p)
-    ac_prev=program_prefix ;;
-  -program-prefix=* | --program-prefix=* | --program-prefi=* \
-  | --program-pref=* | --program-pre=* | --program-pr=* | --program-p=*)
-    program_prefix=$ac_optarg ;;
-
-  -program-suffix | --program-suffix | --program-suffi | --program-suff \
-  | --program-suf | --program-su | --program-s)
-    ac_prev=program_suffix ;;
-  -program-suffix=* | --program-suffix=* | --program-suffi=* \
-  | --program-suff=* | --program-suf=* | --program-su=* | --program-s=*)
-    program_suffix=$ac_optarg ;;
-
-  -program-transform-name | --program-transform-name \
-  | --program-transform-nam | --program-transform-na \
-  | --program-transform-n | --program-transform- \
-  | --program-transform | --program-transfor \
-  | --program-transfo | --program-transf \
-  | --program-trans | --program-tran \
-  | --progr-tra | --program-tr | --program-t)
-    ac_prev=program_transform_name ;;
-  -program-transform-name=* | --program-transform-name=* \
-  | --program-transform-nam=* | --program-transform-na=* \
-  | --program-transform-n=* | --program-transform-=* \
-  | --program-transform=* | --program-transfor=* \
-  | --program-transfo=* | --program-transf=* \
-  | --program-trans=* | --program-tran=* \
-  | --progr-tra=* | --program-tr=* | --program-t=*)
-    program_transform_name=$ac_optarg ;;
-
-  -pdfdir | --pdfdir | --pdfdi | --pdfd | --pdf | --pd)
-    ac_prev=pdfdir ;;
-  -pdfdir=* | --pdfdir=* | --pdfdi=* | --pdfd=* | --pdf=* | --pd=*)
-    pdfdir=$ac_optarg ;;
-
-  -psdir | --psdir | --psdi | --psd | --ps)
-    ac_prev=psdir ;;
-  -psdir=* | --psdir=* | --psdi=* | --psd=* | --ps=*)
-    psdir=$ac_optarg ;;
-
-  -q | -quiet | --quiet | --quie | --qui | --qu | --q \
-  | -silent | --silent | --silen | --sile | --sil)
-    silent=yes ;;
-
-  -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb)
-    ac_prev=sbindir ;;
-  -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \
-  | --sbi=* | --sb=*)
-    sbindir=$ac_optarg ;;
-
-  -sharedstatedir | --sharedstatedir | --sharedstatedi \
-  | --sharedstated | --sharedstate | --sharedstat | --sharedsta \
-  | --sharedst | --shareds | --shared | --share | --shar \
-  | --sha | --sh)
-    ac_prev=sharedstatedir ;;
-  -sharedstatedir=* | --sharedstatedir=* | --sharedstatedi=* \
-  | --sharedstated=* | --sharedstate=* | --sharedstat=* | --sharedsta=* \
-  | --sharedst=* | --shareds=* | --shared=* | --share=* | --shar=* \
-  | --sha=* | --sh=*)
-    sharedstatedir=$ac_optarg ;;
-
-  -site | --site | --sit)
-    ac_prev=site ;;
-  -site=* | --site=* | --sit=*)
-    site=$ac_optarg ;;
-
-  -srcdir | --srcdir | --srcdi | --srcd | --src | --sr)
-    ac_prev=srcdir ;;
-  -srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=*)
-    srcdir=$ac_optarg ;;
-
-  -sysconfdir | --sysconfdir | --sysconfdi | --sysconfd | --sysconf \
-  | --syscon | --sysco | --sysc | --sys | --sy)
-    ac_prev=sysconfdir ;;
-  -sysconfdir=* | --sysconfdir=* | --sysconfdi=* | --sysconfd=* | --sysconf=* \
-  | --syscon=* | --sysco=* | --sysc=* | --sys=* | --sy=*)
-    sysconfdir=$ac_optarg ;;
-
-  -target | --target | --targe | --targ | --tar | --ta | --t)
-    ac_prev=target_alias ;;
-  -target=* | --target=* | --targe=* | --targ=* | --tar=* | --ta=* | --t=*)
-    target_alias=$ac_optarg ;;
-
-  -v | -verbose | --verbose | --verbos | --verbo | --verb)
-    verbose=yes ;;
-
-  -version | --version | --versio | --versi | --vers | -V)
-    ac_init_version=: ;;
-
-  -with-* | --with-*)
-    ac_useropt=`expr "x$ac_option" : 'x-*with-\([^=]*\)'`
-    # Reject names that are not valid shell variable names.
-    expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&
-      as_fn_error $? "invalid package name: $ac_useropt"
-    ac_useropt_orig=$ac_useropt
-    ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'`
-    case $ac_user_opts in
-      *"
-"with_$ac_useropt"
-"*) ;;
-      *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--with-$ac_useropt_orig"
-        ac_unrecognized_sep=', ';;
-    esac
-    eval with_$ac_useropt=\$ac_optarg ;;
-
-  -without-* | --without-*)
-    ac_useropt=`expr "x$ac_option" : 'x-*without-\(.*\)'`
-    # Reject names that are not valid shell variable names.
-    expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&
-      as_fn_error $? "invalid package name: $ac_useropt"
-    ac_useropt_orig=$ac_useropt
-    ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'`
-    case $ac_user_opts in
-      *"
-"with_$ac_useropt"
-"*) ;;
-      *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--without-$ac_useropt_orig"
-        ac_unrecognized_sep=', ';;
-    esac
-    eval with_$ac_useropt=no ;;
-
-  --x)
-    # Obsolete; use --with-x.
-    with_x=yes ;;
-
-  -x-includes | --x-includes | --x-include | --x-includ | --x-inclu \
-  | --x-incl | --x-inc | --x-in | --x-i)
-    ac_prev=x_includes ;;
-  -x-includes=* | --x-includes=* | --x-include=* | --x-includ=* | --x-inclu=* \
-  | --x-incl=* | --x-inc=* | --x-in=* | --x-i=*)
-    x_includes=$ac_optarg ;;
-
-  -x-libraries | --x-libraries | --x-librarie | --x-librari \
-  | --x-librar | --x-libra | --x-libr | --x-lib | --x-li | --x-l)
-    ac_prev=x_libraries ;;
-  -x-libraries=* | --x-libraries=* | --x-librarie=* | --x-librari=* \
-  | --x-librar=* | --x-libra=* | --x-libr=* | --x-lib=* | --x-li=* | --x-l=*)
-    x_libraries=$ac_optarg ;;
-
-  -*) as_fn_error $? "unrecognized option: \`$ac_option'
-Try \`$0 --help' for more information"
-    ;;
-
-  *=*)
-    ac_envvar=`expr "x$ac_option" : 'x\([^=]*\)='`
-    # Reject names that are not valid shell variable names.
-    case $ac_envvar in #(
-      '' | [0-9]* | *[!_$as_cr_alnum]* )
-      as_fn_error $? "invalid variable name: \`$ac_envvar'" ;;
-    esac
-    eval $ac_envvar=\$ac_optarg
-    export $ac_envvar ;;
-
-  *)
-    # FIXME: should be removed in autoconf 3.0.
-    $as_echo "$as_me: WARNING: you should use --build, --host, --target" >&2
-    expr "x$ac_option" : ".*[^-._$as_cr_alnum]" >/dev/null &&
-      $as_echo "$as_me: WARNING: invalid host type: $ac_option" >&2
-    : "${build_alias=$ac_option} ${host_alias=$ac_option} ${target_alias=$ac_option}"
-    ;;
-
-  esac
-done
-
-if test -n "$ac_prev"; then
-  ac_option=--`echo $ac_prev | sed 's/_/-/g'`
-  as_fn_error $? "missing argument to $ac_option"
-fi
-
-if test -n "$ac_unrecognized_opts"; then
-  case $enable_option_checking in
-    no) ;;
-    fatal) as_fn_error $? "unrecognized options: $ac_unrecognized_opts" ;;
-    *)     $as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2 ;;
-  esac
-fi
-
-# Check all directory arguments for consistency.
-for ac_var in  exec_prefix prefix bindir sbindir libexecdir datarootdir \
-               datadir sysconfdir sharedstatedir localstatedir includedir \
-               oldincludedir docdir infodir htmldir dvidir pdfdir psdir \
-               libdir localedir mandir
-do
-  eval ac_val=\$$ac_var
-  # Remove trailing slashes.
-  case $ac_val in
-    */ )
-      ac_val=`expr "X$ac_val" : 'X\(.*[^/]\)' \| "X$ac_val" : 'X\(.*\)'`
-      eval $ac_var=\$ac_val;;
-  esac
-  # Be sure to have absolute directory names.
-  case $ac_val in
-    [\\/$]* | ?:[\\/]* )  continue;;
-    NONE | '' ) case $ac_var in *prefix ) continue;; esac;;
-  esac
-  as_fn_error $? "expected an absolute directory name for --$ac_var: $ac_val"
-done
-
-# There might be people who depend on the old broken behavior: `$host'
-# used to hold the argument of --host etc.
-# FIXME: To remove some day.
-build=$build_alias
-host=$host_alias
-target=$target_alias
-
-# FIXME: To remove some day.
-if test "x$host_alias" != x; then
-  if test "x$build_alias" = x; then
-    cross_compiling=maybe
-    $as_echo "$as_me: WARNING: if you wanted to set the --build type, don't use --host.
-    If a cross compiler is detected then cross compile mode will be used" >&2
-  elif test "x$build_alias" != "x$host_alias"; then
-    cross_compiling=yes
-  fi
-fi
-
-ac_tool_prefix=
-test -n "$host_alias" && ac_tool_prefix=$host_alias-
-
-test "$silent" = yes && exec 6>/dev/null
-
-
-ac_pwd=`pwd` && test -n "$ac_pwd" &&
-ac_ls_di=`ls -di .` &&
-ac_pwd_ls_di=`cd "$ac_pwd" && ls -di .` ||
-  as_fn_error $? "working directory cannot be determined"
-test "X$ac_ls_di" = "X$ac_pwd_ls_di" ||
-  as_fn_error $? "pwd does not report name of working directory"
-
-
-# Find the source files, if location was not specified.
-if test -z "$srcdir"; then
-  ac_srcdir_defaulted=yes
-  # Try the directory containing this script, then the parent directory.
-  ac_confdir=`$as_dirname -- "$as_myself" ||
-$as_expr X"$as_myself" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
-        X"$as_myself" : 'X\(//\)[^/]' \| \
-        X"$as_myself" : 'X\(//\)$' \| \
-        X"$as_myself" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X"$as_myself" |
-    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
-           s//\1/
-           q
-         }
-         /^X\(\/\/\)[^/].*/{
-           s//\1/
-           q
-         }
-         /^X\(\/\/\)$/{
-           s//\1/
-           q
-         }
-         /^X\(\/\).*/{
-           s//\1/
-           q
-         }
-         s/.*/./; q'`
-  srcdir=$ac_confdir
-  if test ! -r "$srcdir/$ac_unique_file"; then
-    srcdir=..
-  fi
-else
-  ac_srcdir_defaulted=no
-fi
-if test ! -r "$srcdir/$ac_unique_file"; then
-  test "$ac_srcdir_defaulted" = yes && srcdir="$ac_confdir or .."
-  as_fn_error $? "cannot find sources ($ac_unique_file) in $srcdir"
-fi
-ac_msg="sources are in $srcdir, but \`cd $srcdir' does not work"
-ac_abs_confdir=`(
-       cd "$srcdir" && test -r "./$ac_unique_file" || as_fn_error $? "$ac_msg"
-       pwd)`
-# When building in place, set srcdir=.
-if test "$ac_abs_confdir" = "$ac_pwd"; then
-  srcdir=.
-fi
-# Remove unnecessary trailing slashes from srcdir.
-# Double slashes in file names in object file debugging info
-# mess up M-x gdb in Emacs.
-case $srcdir in
-*/) srcdir=`expr "X$srcdir" : 'X\(.*[^/]\)' \| "X$srcdir" : 'X\(.*\)'`;;
-esac
-for ac_var in $ac_precious_vars; do
-  eval ac_env_${ac_var}_set=\${${ac_var}+set}
-  eval ac_env_${ac_var}_value=\$${ac_var}
-  eval ac_cv_env_${ac_var}_set=\${${ac_var}+set}
-  eval ac_cv_env_${ac_var}_value=\$${ac_var}
-done
-
-#
-# Report the --help message.
-#
-if test "$ac_init_help" = "long"; then
-  # Omit some internal or obsolete options to make the list less imposing.
-  # This message is too long to be a string in the A/UX 3.1 sh.
-  cat <<_ACEOF
-\`configure' configures bash 4.3-alpha to adapt to many kinds of systems.
-
-Usage: $0 [OPTION]... [VAR=VALUE]...
-
-To assign environment variables (e.g., CC, CFLAGS...), specify them as
-VAR=VALUE.  See below for descriptions of some of the useful variables.
-
-Defaults for the options are specified in brackets.
-
-Configuration:
-  -h, --help              display this help and exit
-      --help=short        display options specific to this package
-      --help=recursive    display the short help of all the included packages
-  -V, --version           display version information and exit
-  -q, --quiet, --silent   do not print \`checking ...' messages
-      --cache-file=FILE   cache test results in FILE [disabled]
-  -C, --config-cache      alias for \`--cache-file=config.cache'
-  -n, --no-create         do not create output files
-      --srcdir=DIR        find the sources in DIR [configure dir or \`..']
-
-Installation directories:
-  --prefix=PREFIX         install architecture-independent files in PREFIX
-                          @<:@@S|@ac_default_prefix@:>@
-  --exec-prefix=EPREFIX   install architecture-dependent files in EPREFIX
-                          @<:@PREFIX@:>@
-
-By default, \`make install' will install all the files in
-\`$ac_default_prefix/bin', \`$ac_default_prefix/lib' etc.  You can specify
-an installation prefix other than \`$ac_default_prefix' using \`--prefix',
-for instance \`--prefix=\$HOME'.
-
-For better control, use the options below.
-
-Fine tuning of the installation directories:
-  --bindir=DIR            user executables [EPREFIX/bin]
-  --sbindir=DIR           system admin executables [EPREFIX/sbin]
-  --libexecdir=DIR        program executables [EPREFIX/libexec]
-  --sysconfdir=DIR        read-only single-machine data [PREFIX/etc]
-  --sharedstatedir=DIR    modifiable architecture-independent data [PREFIX/com]
-  --localstatedir=DIR     modifiable single-machine data [PREFIX/var]
-  --libdir=DIR            object code libraries [EPREFIX/lib]
-  --includedir=DIR        C header files [PREFIX/include]
-  --oldincludedir=DIR     C header files for non-gcc [/usr/include]
-  --datarootdir=DIR       read-only arch.-independent data root [PREFIX/share]
-  --datadir=DIR           read-only architecture-independent data [DATAROOTDIR]
-  --infodir=DIR           info documentation [DATAROOTDIR/info]
-  --localedir=DIR         locale-dependent data [DATAROOTDIR/locale]
-  --mandir=DIR            man documentation [DATAROOTDIR/man]
-  --docdir=DIR            documentation root @<:@DATAROOTDIR/doc/bash@:>@
-  --htmldir=DIR           html documentation [DOCDIR]
-  --dvidir=DIR            dvi documentation [DOCDIR]
-  --pdfdir=DIR            pdf documentation [DOCDIR]
-  --psdir=DIR             ps documentation [DOCDIR]
-_ACEOF
-
-  cat <<\_ACEOF
-
-System types:
-  --build=BUILD     configure for building on BUILD [guessed]
-  --host=HOST       cross-compile to build programs to run on HOST [BUILD]
-_ACEOF
-fi
-
-if test -n "$ac_init_help"; then
-  case $ac_init_help in
-     short | recursive ) echo "Configuration of bash 4.3-alpha:";;
-   esac
-  cat <<\_ACEOF
-
-Optional Features:
-  --disable-option-checking  ignore unrecognized --enable/--with options
-  --disable-FEATURE       do not include FEATURE (same as --enable-FEATURE=no)
-  --enable-FEATURE[=ARG]  include FEATURE [ARG=yes]
-  --enable-minimal-config a minimal sh-like configuration
-  --enable-alias          enable shell aliases
-  --enable-arith-for-command 
-                          enable arithmetic for command
-  --enable-array-variables 
-                          include shell array variables
-  --enable-bang-history   turn on csh-style history substitution
-  --enable-brace-expansion 
-                          include brace expansion
-  --enable-casemod-attributes 
-                          include case-modifying variable attributes
-  --enable-casemod-expansions 
-                          include case-modifying word expansions
-  --enable-command-timing enable the time reserved word and command timing
-  --enable-cond-command   enable the conditional command
-  --enable-cond-regexp    enable extended regular expression matching in
-                          conditional commands
-  --enable-coprocesses    enable coprocess support and the coproc reserved
-                          word
-  --enable-debugger       enable support for bash debugger
-  --enable-direxpand-default 
-                          enable the direxpand shell option by default
-  --enable-directory-stack 
-                          enable builtins pushd/popd/dirs
-  --enable-disabled-builtins 
-                          allow disabled builtins to still be invoked
-  --enable-dparen-arithmetic 
-                          include ((...)) command
-  --enable-extended-glob  include ksh-style extended pattern matching
-  --enable-extended-glob-default 
-                          force extended pattern matching to be enabled by
-                          default
-  --enable-help-builtin   include the help builtin
-  --enable-history        turn on command history
-  --enable-job-control    enable job control features
-  --enable-multibyte      enable multibyte characters if OS supports them
-  --enable-net-redirections 
-                          enable /dev/tcp/host/port redirection
-  --enable-process-substitution 
-                          enable process substitution
-  --enable-progcomp       enable programmable completion and the complete
-                          builtin
-  --enable-prompt-string-decoding 
-                          turn on escape character decoding in prompts
-  --enable-readline       turn on command line editing
-  --enable-restricted     enable a restricted shell
-  --enable-select         include select command
-  --enable-separate-helpfiles 
-                          use external files for help builtin documentation
-  --enable-single-help-strings 
-                          store help documentation as a single string to ease
-                          translation
-  --enable-strict-posix-default 
-                          configure bash to be posix-conformant by default
-  --enable-usg-echo-default 
-                          a synonym for --enable-xpg-echo-default
-  --enable-xpg-echo-default 
-                          make the echo builtin expand escape sequences by
-                          default
-  --enable-mem-scramble   scramble memory on calls to malloc and free
-  --enable-profiling      allow profiling with gprof
-  --enable-static-link    link bash statically, for use as a root shell
-  --disable-largefile     omit support for large files
-  --disable-nls           do not use Native Language Support
-  --disable-rpath         do not hardcode runtime library paths
-
-Optional Packages:
-  --with-PACKAGE[=ARG]    use PACKAGE [ARG=yes]
-  --without-PACKAGE       do not use PACKAGE (same as --with-PACKAGE=no)
-  --with-afs              if you are running AFS
-  --with-bash-malloc      use the Bash version of malloc
-  --with-curses           use the curses library instead of the termcap
-                          library
-  --with-gnu-malloc       synonym for --with-bash-malloc
-  --with-installed-readline 
-                          use a version of the readline library that is
-                          already installed
-  --with-purecov          configure to postprocess with pure coverage
-  --with-purify           configure to postprocess with purify
-  --with-gnu-ld           assume the C compiler uses GNU ld default=no
-  --with-libiconv-prefix[=DIR]  search for libiconv in DIR/include and DIR/lib
-  --without-libiconv-prefix     don't search for libiconv in includedir and libdir
-  --with-included-gettext use the GNU gettext library included here
-  --with-libintl-prefix[=DIR]  search for libintl in DIR/include and DIR/lib
-  --without-libintl-prefix     don't search for libintl in includedir and libdir
-
-Some influential environment variables:
-  DEBUGGER_START_FILE 
-              location of bash debugger initialization file
-  CC_FOR_BUILD 
-              C compiler used when compiling binaries used only at build time
-  CFLAGS_FOR_BUILD 
-              Compliation options (CFLAGS) used when compiling binaries used
-              only at build time
-  LDFLAGS_FOR_BUILD 
-              Linker options (LDFLAGS) used when compiling binaries used only
-              at build time
-  CPPFLAGS_FOR_BUILD 
-              C preprocessor options (CPPFLAGS) used when compiling binaries
-              used only at build time
-  CC          C compiler command
-  CFLAGS      C compiler flags
-  LDFLAGS     linker flags, e.g. -L<lib dir> if you have libraries in a
-              nonstandard directory <lib dir>
-  LIBS        libraries to pass to the linker, e.g. -l<library>
-  CPPFLAGS    (Objective) C/C++ preprocessor flags, e.g. -I<include dir> if
-              you have headers in a nonstandard directory <include dir>
-  CPP         C preprocessor
-  YACC        The `Yet Another Compiler Compiler' implementation to use.
-              Defaults to the first program found out of: `bison -y', `byacc',
-              `yacc'.
-  YFLAGS      The list of arguments that will be passed by default to @S|@YACC.
-              This script will default YFLAGS to the empty string to avoid a
-              default value of `-d' given by some make applications.
-
-Use these variables to override the choices made by `configure' or to help
-it to find libraries and programs with nonstandard names/locations.
-
-Report bugs to <bug-bash@gnu.org>.
-_ACEOF
-ac_status=$?
-fi
-
-if test "$ac_init_help" = "recursive"; then
-  # If there are subdirs, report their specific --help.
-  for ac_dir in : $ac_subdirs_all; do test "x$ac_dir" = x: && continue
-    test -d "$ac_dir" ||
-      { cd "$srcdir" && ac_pwd=`pwd` && srcdir=. && test -d "$ac_dir"; } ||
-      continue
-    ac_builddir=.
-
-case "$ac_dir" in
-.) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;;
-*)
-  ac_dir_suffix=/`$as_echo "$ac_dir" | sed 's|^\.[\\/]||'`
-  # A ".." for each directory in $ac_dir_suffix.
-  ac_top_builddir_sub=`$as_echo "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'`
-  case $ac_top_builddir_sub in
-  "") ac_top_builddir_sub=. ac_top_build_prefix= ;;
-  *)  ac_top_build_prefix=$ac_top_builddir_sub/ ;;
-  esac ;;
-esac
-ac_abs_top_builddir=$ac_pwd
-ac_abs_builddir=$ac_pwd$ac_dir_suffix
-# for backward compatibility:
-ac_top_builddir=$ac_top_build_prefix
-
-case $srcdir in
-  .)  # We are building in place.
-    ac_srcdir=.
-    ac_top_srcdir=$ac_top_builddir_sub
-    ac_abs_top_srcdir=$ac_pwd ;;
-  [\\/]* | ?:[\\/]* )  # Absolute name.
-    ac_srcdir=$srcdir$ac_dir_suffix;
-    ac_top_srcdir=$srcdir
-    ac_abs_top_srcdir=$srcdir ;;
-  *) # Relative name.
-    ac_srcdir=$ac_top_build_prefix$srcdir$ac_dir_suffix
-    ac_top_srcdir=$ac_top_build_prefix$srcdir
-    ac_abs_top_srcdir=$ac_pwd/$srcdir ;;
-esac
-ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix
-
-    cd "$ac_dir" || { ac_status=$?; continue; }
-    # Check for guested configure.
-    if test -f "$ac_srcdir/configure.gnu"; then
-      echo &&
-      $SHELL "$ac_srcdir/configure.gnu" --help=recursive
-    elif test -f "$ac_srcdir/configure"; then
-      echo &&
-      $SHELL "$ac_srcdir/configure" --help=recursive
-    else
-      $as_echo "$as_me: WARNING: no configuration information is in $ac_dir" >&2
-    fi || ac_status=$?
-    cd "$ac_pwd" || { ac_status=$?; break; }
-  done
-fi
-
-test -n "$ac_init_help" && exit $ac_status
-if $ac_init_version; then
-  cat <<\_ACEOF
-bash configure 4.3-alpha
-generated by GNU Autoconf 2.68
-
-Copyright (C) 2010 Free Software Foundation, Inc.
-This configure script is free software; the Free Software Foundation
-gives unlimited permission to copy, distribute and modify it.
-_ACEOF
-  exit
-fi
-
-## ------------------------ ##
-## Autoconf initialization. ##
-## ------------------------ ##
-
-@%:@ ac_fn_c_try_compile LINENO
-@%:@ --------------------------
-@%:@ Try to compile conftest.@S|@ac_ext, and return whether this succeeded.
-ac_fn_c_try_compile ()
-{
-  as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
-  rm -f conftest.$ac_objext
-  if { { ac_try="$ac_compile"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
-  (eval "$ac_compile") 2>conftest.err
-  ac_status=$?
-  if test -s conftest.err; then
-    grep -v '^ *+' conftest.err >conftest.er1
-    cat conftest.er1 >&5
-    mv -f conftest.er1 conftest.err
-  fi
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-  test $ac_status = 0; } && {
-        test -z "$ac_c_werror_flag" ||
-        test ! -s conftest.err
-       } && test -s conftest.$ac_objext; then :
-  ac_retval=0
-else
-  $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-       ac_retval=1
-fi
-  eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
-  as_fn_set_status $ac_retval
-
-} @%:@ ac_fn_c_try_compile
-
-@%:@ ac_fn_c_try_link LINENO
-@%:@ -----------------------
-@%:@ Try to link conftest.@S|@ac_ext, and return whether this succeeded.
-ac_fn_c_try_link ()
-{
-  as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
-  rm -f conftest.$ac_objext conftest$ac_exeext
-  if { { ac_try="$ac_link"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
-  (eval "$ac_link") 2>conftest.err
-  ac_status=$?
-  if test -s conftest.err; then
-    grep -v '^ *+' conftest.err >conftest.er1
-    cat conftest.er1 >&5
-    mv -f conftest.er1 conftest.err
-  fi
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-  test $ac_status = 0; } && {
-        test -z "$ac_c_werror_flag" ||
-        test ! -s conftest.err
-       } && test -s conftest$ac_exeext && {
-        test "$cross_compiling" = yes ||
-        $as_test_x conftest$ac_exeext
-       }; then :
-  ac_retval=0
-else
-  $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-       ac_retval=1
-fi
-  # Delete the IPA/IPO (Inter Procedural Analysis/Optimization) information
-  # created by the PGI compiler (conftest_ipa8_conftest.oo), as it would
-  # interfere with the next link command; also delete a directory that is
-  # left behind by Apple's compiler.  We do this before executing the actions.
-  rm -rf conftest.dSYM conftest_ipa8_conftest.oo
-  eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
-  as_fn_set_status $ac_retval
-
-} @%:@ ac_fn_c_try_link
-
-@%:@ ac_fn_c_try_cpp LINENO
-@%:@ ----------------------
-@%:@ Try to preprocess conftest.@S|@ac_ext, and return whether this succeeded.
-ac_fn_c_try_cpp ()
-{
-  as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
-  if { { ac_try="$ac_cpp conftest.$ac_ext"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
-  (eval "$ac_cpp conftest.$ac_ext") 2>conftest.err
-  ac_status=$?
-  if test -s conftest.err; then
-    grep -v '^ *+' conftest.err >conftest.er1
-    cat conftest.er1 >&5
-    mv -f conftest.er1 conftest.err
-  fi
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-  test $ac_status = 0; } > conftest.i && {
-        test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
-        test ! -s conftest.err
-       }; then :
-  ac_retval=0
-else
-  $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-    ac_retval=1
-fi
-  eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
-  as_fn_set_status $ac_retval
-
-} @%:@ ac_fn_c_try_cpp
-
-@%:@ ac_fn_c_check_header_mongrel LINENO HEADER VAR INCLUDES
-@%:@ -------------------------------------------------------
-@%:@ Tests whether HEADER exists, giving a warning if it cannot be compiled using
-@%:@ the include files in INCLUDES and setting the cache variable VAR
-@%:@ accordingly.
-ac_fn_c_check_header_mongrel ()
-{
-  as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
-  if eval \${$3+:} false; then :
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
-$as_echo_n "checking for $2... " >&6; }
-if eval \${$3+:} false; then :
-  $as_echo_n "(cached) " >&6
-fi
-eval ac_res=\$$3
-              { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
-else
-  # Is the header compilable?
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking $2 usability" >&5
-$as_echo_n "checking $2 usability... " >&6; }
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-$4
-@%:@include <$2>
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_header_compiler=yes
-else
-  ac_header_compiler=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_header_compiler" >&5
-$as_echo "$ac_header_compiler" >&6; }
-
-# Is the header present?
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking $2 presence" >&5
-$as_echo_n "checking $2 presence... " >&6; }
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-@%:@include <$2>
-_ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
-  ac_header_preproc=yes
-else
-  ac_header_preproc=no
-fi
-rm -f conftest.err conftest.i conftest.$ac_ext
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_header_preproc" >&5
-$as_echo "$ac_header_preproc" >&6; }
-
-# So?  What about this header?
-case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in #((
-  yes:no: )
-    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: accepted by the compiler, rejected by the preprocessor!" >&5
-$as_echo "$as_me: WARNING: $2: accepted by the compiler, rejected by the preprocessor!" >&2;}
-    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: proceeding with the compiler's result" >&5
-$as_echo "$as_me: WARNING: $2: proceeding with the compiler's result" >&2;}
-    ;;
-  no:yes:* )
-    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: present but cannot be compiled" >&5
-$as_echo "$as_me: WARNING: $2: present but cannot be compiled" >&2;}
-    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2:     check for missing prerequisite headers?" >&5
-$as_echo "$as_me: WARNING: $2:     check for missing prerequisite headers?" >&2;}
-    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: see the Autoconf documentation" >&5
-$as_echo "$as_me: WARNING: $2: see the Autoconf documentation" >&2;}
-    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2:     section \"Present But Cannot Be Compiled\"" >&5
-$as_echo "$as_me: WARNING: $2:     section \"Present But Cannot Be Compiled\"" >&2;}
-    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: proceeding with the compiler's result" >&5
-$as_echo "$as_me: WARNING: $2: proceeding with the compiler's result" >&2;}
-( $as_echo "## ------------------------------- ##
-## Report this to bug-bash@gnu.org ##
-## ------------------------------- ##"
-     ) | sed "s/^/$as_me: WARNING:     /" >&2
-    ;;
-esac
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
-$as_echo_n "checking for $2... " >&6; }
-if eval \${$3+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  eval "$3=\$ac_header_compiler"
-fi
-eval ac_res=\$$3
-              { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
-fi
-  eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
-
-} @%:@ ac_fn_c_check_header_mongrel
-
-@%:@ ac_fn_c_try_run LINENO
-@%:@ ----------------------
-@%:@ Try to link conftest.@S|@ac_ext, and return whether this succeeded. Assumes
-@%:@ that executables *can* be run.
-ac_fn_c_try_run ()
-{
-  as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
-  if { { ac_try="$ac_link"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
-  (eval "$ac_link") 2>&5
-  ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-  test $ac_status = 0; } && { ac_try='./conftest$ac_exeext'
-  { { case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
-  (eval "$ac_try") 2>&5
-  ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-  test $ac_status = 0; }; }; then :
-  ac_retval=0
-else
-  $as_echo "$as_me: program exited with status $ac_status" >&5
-       $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-       ac_retval=$ac_status
-fi
-  rm -rf conftest.dSYM conftest_ipa8_conftest.oo
-  eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
-  as_fn_set_status $ac_retval
-
-} @%:@ ac_fn_c_try_run
-
-@%:@ ac_fn_c_check_header_compile LINENO HEADER VAR INCLUDES
-@%:@ -------------------------------------------------------
-@%:@ Tests whether HEADER exists and can be compiled using the include files in
-@%:@ INCLUDES, setting the cache variable VAR accordingly.
-ac_fn_c_check_header_compile ()
-{
-  as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
-$as_echo_n "checking for $2... " >&6; }
-if eval \${$3+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-$4
-@%:@include <$2>
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  eval "$3=yes"
-else
-  eval "$3=no"
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-eval ac_res=\$$3
-              { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
-  eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
-
-} @%:@ ac_fn_c_check_header_compile
-
-@%:@ ac_fn_c_check_func LINENO FUNC VAR
-@%:@ ----------------------------------
-@%:@ Tests whether FUNC exists, setting the cache variable VAR accordingly
-ac_fn_c_check_func ()
-{
-  as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
-$as_echo_n "checking for $2... " >&6; }
-if eval \${$3+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-/* Define $2 to an innocuous variant, in case <limits.h> declares $2.
-   For example, HP-UX 11i <limits.h> declares gettimeofday.  */
-#define $2 innocuous_$2
-
-/* System header to define __stub macros and hopefully few prototypes,
-    which can conflict with char $2 (); below.
-    Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
-    <limits.h> exists even on freestanding compilers.  */
-
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-
-#undef $2
-
-/* Override any GCC internal prototype to avoid an error.
-   Use char because int might match the return type of a GCC
-   builtin and then its argument prototype would still apply.  */
-#ifdef __cplusplus
-extern "C"
-#endif
-char $2 ();
-/* The GNU C library defines this for functions which it implements
-    to always fail with ENOSYS.  Some functions are actually named
-    something starting with __ and the normal name is an alias.  */
-#if defined __stub_$2 || defined __stub___$2
-choke me
-#endif
-
-int
-main ()
-{
-return $2 ();
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  eval "$3=yes"
-else
-  eval "$3=no"
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-fi
-eval ac_res=\$$3
-              { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
-  eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
-
-} @%:@ ac_fn_c_check_func
-
-@%:@ ac_fn_c_check_type LINENO TYPE VAR INCLUDES
-@%:@ -------------------------------------------
-@%:@ Tests whether TYPE exists after having included INCLUDES, setting cache
-@%:@ variable VAR accordingly.
-ac_fn_c_check_type ()
-{
-  as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
-$as_echo_n "checking for $2... " >&6; }
-if eval \${$3+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  eval "$3=no"
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-$4
-int
-main ()
-{
-if (sizeof ($2))
-        return 0;
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-$4
-int
-main ()
-{
-if (sizeof (($2)))
-           return 0;
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  
-else
-  eval "$3=yes"
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-eval ac_res=\$$3
-              { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
-  eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
-
-} @%:@ ac_fn_c_check_type
-
-@%:@ ac_fn_c_check_decl LINENO SYMBOL VAR INCLUDES
-@%:@ ---------------------------------------------
-@%:@ Tests whether SYMBOL is declared in INCLUDES, setting cache variable VAR
-@%:@ accordingly.
-ac_fn_c_check_decl ()
-{
-  as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
-  as_decl_name=`echo $2|sed 's/ *(.*//'`
-  as_decl_use=`echo $2|sed -e 's/(/((/' -e 's/)/) 0&/' -e 's/,/) 0& (/g'`
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $as_decl_name is declared" >&5
-$as_echo_n "checking whether $as_decl_name is declared... " >&6; }
-if eval \${$3+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-$4
-int
-main ()
-{
-@%:@ifndef $as_decl_name
-@%:@ifdef __cplusplus
-  (void) $as_decl_use;
-@%:@else
-  (void) $as_decl_name;
-@%:@endif
-@%:@endif
-
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  eval "$3=yes"
-else
-  eval "$3=no"
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-eval ac_res=\$$3
-              { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
-  eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
-
-} @%:@ ac_fn_c_check_decl
-
-@%:@ ac_fn_c_compute_int LINENO EXPR VAR INCLUDES
-@%:@ --------------------------------------------
-@%:@ Tries to find the compile-time value of EXPR in a program that includes
-@%:@ INCLUDES, setting VAR accordingly. Returns whether the value could be
-@%:@ computed
-ac_fn_c_compute_int ()
-{
-  as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
-  if test "$cross_compiling" = yes; then
-    # Depending upon the size, compute the lo and hi bounds.
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-$4
-int
-main ()
-{
-static int test_array @<:@1 - 2 * !(($2) >= 0)@:>@;
-test_array @<:@0@:>@ = 0
-
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_lo=0 ac_mid=0
-  while :; do
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-$4
-int
-main ()
-{
-static int test_array @<:@1 - 2 * !(($2) <= $ac_mid)@:>@;
-test_array @<:@0@:>@ = 0
-
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_hi=$ac_mid; break
-else
-  as_fn_arith $ac_mid + 1 && ac_lo=$as_val
-                       if test $ac_lo -le $ac_mid; then
-                         ac_lo= ac_hi=
-                         break
-                       fi
-                       as_fn_arith 2 '*' $ac_mid + 1 && ac_mid=$as_val
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  done
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-$4
-int
-main ()
-{
-static int test_array @<:@1 - 2 * !(($2) < 0)@:>@;
-test_array @<:@0@:>@ = 0
-
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_hi=-1 ac_mid=-1
-  while :; do
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-$4
-int
-main ()
-{
-static int test_array @<:@1 - 2 * !(($2) >= $ac_mid)@:>@;
-test_array @<:@0@:>@ = 0
-
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_lo=$ac_mid; break
-else
-  as_fn_arith '(' $ac_mid ')' - 1 && ac_hi=$as_val
-                       if test $ac_mid -le $ac_hi; then
-                         ac_lo= ac_hi=
-                         break
-                       fi
-                       as_fn_arith 2 '*' $ac_mid && ac_mid=$as_val
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  done
-else
-  ac_lo= ac_hi=
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-# Binary search between lo and hi bounds.
-while test "x$ac_lo" != "x$ac_hi"; do
-  as_fn_arith '(' $ac_hi - $ac_lo ')' / 2 + $ac_lo && ac_mid=$as_val
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-$4
-int
-main ()
-{
-static int test_array @<:@1 - 2 * !(($2) <= $ac_mid)@:>@;
-test_array @<:@0@:>@ = 0
-
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_hi=$ac_mid
-else
-  as_fn_arith '(' $ac_mid ')' + 1 && ac_lo=$as_val
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-done
-case $ac_lo in @%:@((
-?*) eval "$3=\$ac_lo"; ac_retval=0 ;;
-'') ac_retval=1 ;;
-esac
-  else
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-$4
-static long int longval () { return $2; }
-static unsigned long int ulongval () { return $2; }
-@%:@include <stdio.h>
-@%:@include <stdlib.h>
-int
-main ()
-{
-
-  FILE *f = fopen ("conftest.val", "w");
-  if (! f)
-    return 1;
-  if (($2) < 0)
-    {
-      long int i = longval ();
-      if (i != ($2))
-       return 1;
-      fprintf (f, "%ld", i);
-    }
-  else
-    {
-      unsigned long int i = ulongval ();
-      if (i != ($2))
-       return 1;
-      fprintf (f, "%lu", i);
-    }
-  /* Do not output a trailing newline, as this causes \r\n confusion
-     on some platforms.  */
-  return ferror (f) || fclose (f) != 0;
-
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-  echo >>conftest.val; read $3 <conftest.val; ac_retval=0
-else
-  ac_retval=1
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-rm -f conftest.val
-
-  fi
-  eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
-  as_fn_set_status $ac_retval
-
-} @%:@ ac_fn_c_compute_int
-
-@%:@ ac_fn_c_check_member LINENO AGGR MEMBER VAR INCLUDES
-@%:@ ----------------------------------------------------
-@%:@ Tries to find if the field MEMBER exists in type AGGR, after including
-@%:@ INCLUDES, setting cache variable VAR accordingly.
-ac_fn_c_check_member ()
-{
-  as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2.$3" >&5
-$as_echo_n "checking for $2.$3... " >&6; }
-if eval \${$4+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-$5
-int
-main ()
-{
-static $2 ac_aggr;
-if (ac_aggr.$3)
-return 0;
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  eval "$4=yes"
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-$5
-int
-main ()
-{
-static $2 ac_aggr;
-if (sizeof ac_aggr.$3)
-return 0;
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  eval "$4=yes"
-else
-  eval "$4=no"
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-eval ac_res=\$$4
-              { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
-  eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
-
-} @%:@ ac_fn_c_check_member
-cat >config.log <<_ACEOF
-This file contains any messages produced by compilers while
-running configure, to aid debugging if configure makes a mistake.
-
-It was created by bash $as_me 4.3-alpha, which was
-generated by GNU Autoconf 2.68.  Invocation command line was
-
-  $ $0 $@
-
-_ACEOF
-exec 5>>config.log
-{
-cat <<_ASUNAME
-## --------- ##
-## Platform. ##
-## --------- ##
-
-hostname = `(hostname || uname -n) 2>/dev/null | sed 1q`
-uname -m = `(uname -m) 2>/dev/null || echo unknown`
-uname -r = `(uname -r) 2>/dev/null || echo unknown`
-uname -s = `(uname -s) 2>/dev/null || echo unknown`
-uname -v = `(uname -v) 2>/dev/null || echo unknown`
-
-/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null || echo unknown`
-/bin/uname -X     = `(/bin/uname -X) 2>/dev/null     || echo unknown`
-
-/bin/arch              = `(/bin/arch) 2>/dev/null              || echo unknown`
-/usr/bin/arch -k       = `(/usr/bin/arch -k) 2>/dev/null       || echo unknown`
-/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null || echo unknown`
-/usr/bin/hostinfo      = `(/usr/bin/hostinfo) 2>/dev/null      || echo unknown`
-/bin/machine           = `(/bin/machine) 2>/dev/null           || echo unknown`
-/usr/bin/oslevel       = `(/usr/bin/oslevel) 2>/dev/null       || echo unknown`
-/bin/universe          = `(/bin/universe) 2>/dev/null          || echo unknown`
-
-_ASUNAME
-
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    $as_echo "PATH: $as_dir"
-  done
-IFS=$as_save_IFS
-
-} >&5
-
-cat >&5 <<_ACEOF
-
-
-## ----------- ##
-## Core tests. ##
-## ----------- ##
-
-_ACEOF
-
-
-# Keep a trace of the command line.
-# Strip out --no-create and --no-recursion so they do not pile up.
-# Strip out --silent because we don't want to record it for future runs.
-# Also quote any args containing shell meta-characters.
-# Make two passes to allow for proper duplicate-argument suppression.
-ac_configure_args=
-ac_configure_args0=
-ac_configure_args1=
-ac_must_keep_next=false
-for ac_pass in 1 2
-do
-  for ac_arg
-  do
-    case $ac_arg in
-    -no-create | --no-c* | -n | -no-recursion | --no-r*) continue ;;
-    -q | -quiet | --quiet | --quie | --qui | --qu | --q \
-    | -silent | --silent | --silen | --sile | --sil)
-      continue ;;
-    *\'*)
-      ac_arg=`$as_echo "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;;
-    esac
-    case $ac_pass in
-    1) as_fn_append ac_configure_args0 " '$ac_arg'" ;;
-    2)
-      as_fn_append ac_configure_args1 " '$ac_arg'"
-      if test $ac_must_keep_next = true; then
-       ac_must_keep_next=false # Got value, back to normal.
-      else
-       case $ac_arg in
-         *=* | --config-cache | -C | -disable-* | --disable-* \
-         | -enable-* | --enable-* | -gas | --g* | -nfp | --nf* \
-         | -q | -quiet | --q* | -silent | --sil* | -v | -verb* \
-         | -with-* | --with-* | -without-* | --without-* | --x)
-           case "$ac_configure_args0 " in
-             "$ac_configure_args1"*" '$ac_arg' "* ) continue ;;
-           esac
-           ;;
-         -* ) ac_must_keep_next=true ;;
-       esac
-      fi
-      as_fn_append ac_configure_args " '$ac_arg'"
-      ;;
-    esac
-  done
-done
-{ ac_configure_args0=; unset ac_configure_args0;}
-{ ac_configure_args1=; unset ac_configure_args1;}
-
-# When interrupted or exit'd, cleanup temporary files, and complete
-# config.log.  We remove comments because anyway the quotes in there
-# would cause problems or look ugly.
-# WARNING: Use '\'' to represent an apostrophe within the trap.
-# WARNING: Do not start the trap code with a newline, due to a FreeBSD 4.0 bug.
-trap 'exit_status=$?
-  # Save into config.log some information that might help in debugging.
-  {
-    echo
-
-    $as_echo "## ---------------- ##
-## Cache variables. ##
-## ---------------- ##"
-    echo
-    # The following way of writing the cache mishandles newlines in values,
-(
-  for ac_var in `(set) 2>&1 | sed -n '\''s/^\([a-zA-Z_][a-zA-Z0-9_]*\)=.*/\1/p'\''`; do
-    eval ac_val=\$$ac_var
-    case $ac_val in #(
-    *${as_nl}*)
-      case $ac_var in #(
-      *_cv_*) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cache variable $ac_var contains a newline" >&5
-$as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;;
-      esac
-      case $ac_var in #(
-      _ | IFS | as_nl) ;; #(
-      BASH_ARGV | BASH_SOURCE) eval $ac_var= ;; #(
-      *) { eval $ac_var=; unset $ac_var;} ;;
-      esac ;;
-    esac
-  done
-  (set) 2>&1 |
-    case $as_nl`(ac_space='\'' '\''; set) 2>&1` in #(
-    *${as_nl}ac_space=\ *)
-      sed -n \
-       "s/'\''/'\''\\\\'\'''\''/g;
-         s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\''\\2'\''/p"
-      ;; #(
-    *)
-      sed -n "/^[_$as_cr_alnum]*_cv_[_$as_cr_alnum]*=/p"
-      ;;
-    esac |
-    sort
-)
-    echo
-
-    $as_echo "## ----------------- ##
-## Output variables. ##
-## ----------------- ##"
-    echo
-    for ac_var in $ac_subst_vars
-    do
-      eval ac_val=\$$ac_var
-      case $ac_val in
-      *\'\''*) ac_val=`$as_echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;;
-      esac
-      $as_echo "$ac_var='\''$ac_val'\''"
-    done | sort
-    echo
-
-    if test -n "$ac_subst_files"; then
-      $as_echo "## ------------------- ##
-## File substitutions. ##
-## ------------------- ##"
-      echo
-      for ac_var in $ac_subst_files
-      do
-       eval ac_val=\$$ac_var
-       case $ac_val in
-       *\'\''*) ac_val=`$as_echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;;
-       esac
-       $as_echo "$ac_var='\''$ac_val'\''"
-      done | sort
-      echo
-    fi
-
-    if test -s confdefs.h; then
-      $as_echo "## ----------- ##
-## confdefs.h. ##
-## ----------- ##"
-      echo
-      cat confdefs.h
-      echo
-    fi
-    test "$ac_signal" != 0 &&
-      $as_echo "$as_me: caught signal $ac_signal"
-    $as_echo "$as_me: exit $exit_status"
-  } >&5
-  rm -f core *.core core.conftest.* &&
-    rm -f -r conftest* confdefs* conf$$* $ac_clean_files &&
-    exit $exit_status
-' 0
-for ac_signal in 1 2 13 15; do
-  trap 'ac_signal='$ac_signal'; as_fn_exit 1' $ac_signal
-done
-ac_signal=0
-
-# confdefs.h avoids OS command line length limits that DEFS can exceed.
-rm -f -r conftest* confdefs.h
-
-$as_echo "/* confdefs.h */" > confdefs.h
-
-# Predefined preprocessor variables.
-
-cat >>confdefs.h <<_ACEOF
-@%:@define PACKAGE_NAME "$PACKAGE_NAME"
-_ACEOF
-
-cat >>confdefs.h <<_ACEOF
-@%:@define PACKAGE_TARNAME "$PACKAGE_TARNAME"
-_ACEOF
-
-cat >>confdefs.h <<_ACEOF
-@%:@define PACKAGE_VERSION "$PACKAGE_VERSION"
-_ACEOF
-
-cat >>confdefs.h <<_ACEOF
-@%:@define PACKAGE_STRING "$PACKAGE_STRING"
-_ACEOF
-
-cat >>confdefs.h <<_ACEOF
-@%:@define PACKAGE_BUGREPORT "$PACKAGE_BUGREPORT"
-_ACEOF
-
-cat >>confdefs.h <<_ACEOF
-@%:@define PACKAGE_URL "$PACKAGE_URL"
-_ACEOF
-
-
-# Let the site file select an alternate cache file if it wants to.
-# Prefer an explicitly selected file to automatically selected ones.
-ac_site_file1=NONE
-ac_site_file2=NONE
-if test -n "$CONFIG_SITE"; then
-  # We do not want a PATH search for config.site.
-  case $CONFIG_SITE in @%:@((
-    -*)  ac_site_file1=./$CONFIG_SITE;;
-    */*) ac_site_file1=$CONFIG_SITE;;
-    *)   ac_site_file1=./$CONFIG_SITE;;
-  esac
-elif test "x$prefix" != xNONE; then
-  ac_site_file1=$prefix/share/config.site
-  ac_site_file2=$prefix/etc/config.site
-else
-  ac_site_file1=$ac_default_prefix/share/config.site
-  ac_site_file2=$ac_default_prefix/etc/config.site
-fi
-for ac_site_file in "$ac_site_file1" "$ac_site_file2"
-do
-  test "x$ac_site_file" = xNONE && continue
-  if test /dev/null != "$ac_site_file" && test -r "$ac_site_file"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: loading site script $ac_site_file" >&5
-$as_echo "$as_me: loading site script $ac_site_file" >&6;}
-    sed 's/^/| /' "$ac_site_file" >&5
-    . "$ac_site_file" \
-      || { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error $? "failed to load site script $ac_site_file
-See \`config.log' for more details" "$LINENO" 5; }
-  fi
-done
-
-if test -r "$cache_file"; then
-  # Some versions of bash will fail to source /dev/null (special files
-  # actually), so we avoid doing that.  DJGPP emulates it as a regular file.
-  if test /dev/null != "$cache_file" && test -f "$cache_file"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: loading cache $cache_file" >&5
-$as_echo "$as_me: loading cache $cache_file" >&6;}
-    case $cache_file in
-      [\\/]* | ?:[\\/]* ) . "$cache_file";;
-      *)                      . "./$cache_file";;
-    esac
-  fi
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: creating cache $cache_file" >&5
-$as_echo "$as_me: creating cache $cache_file" >&6;}
-  >$cache_file
-fi
-
-as_fn_append ac_header_list " stdlib.h"
-as_fn_append ac_header_list " unistd.h"
-as_fn_append ac_header_list " sys/param.h"
-as_fn_append ac_header_list " sys/time.h"
-as_fn_append ac_func_list " alarm"
-as_fn_append ac_func_list " fpurge"
-as_fn_append ac_func_list " __fpurge"
-as_fn_append ac_func_list " snprintf"
-as_fn_append ac_func_list " vsnprintf"
-# Check that the precious variables saved in the cache have kept the same
-# value.
-ac_cache_corrupted=false
-for ac_var in $ac_precious_vars; do
-  eval ac_old_set=\$ac_cv_env_${ac_var}_set
-  eval ac_new_set=\$ac_env_${ac_var}_set
-  eval ac_old_val=\$ac_cv_env_${ac_var}_value
-  eval ac_new_val=\$ac_env_${ac_var}_value
-  case $ac_old_set,$ac_new_set in
-    set,)
-      { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5
-$as_echo "$as_me: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&2;}
-      ac_cache_corrupted=: ;;
-    ,set)
-      { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' was not set in the previous run" >&5
-$as_echo "$as_me: error: \`$ac_var' was not set in the previous run" >&2;}
-      ac_cache_corrupted=: ;;
-    ,);;
-    *)
-      if test "x$ac_old_val" != "x$ac_new_val"; then
-       # differences in whitespace do not lead to failure.
-       ac_old_val_w=`echo x $ac_old_val`
-       ac_new_val_w=`echo x $ac_new_val`
-       if test "$ac_old_val_w" != "$ac_new_val_w"; then
-         { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' has changed since the previous run:" >&5
-$as_echo "$as_me: error: \`$ac_var' has changed since the previous run:" >&2;}
-         ac_cache_corrupted=:
-       else
-         { $as_echo "$as_me:${as_lineno-$LINENO}: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&5
-$as_echo "$as_me: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&2;}
-         eval $ac_var=\$ac_old_val
-       fi
-       { $as_echo "$as_me:${as_lineno-$LINENO}:   former value:  \`$ac_old_val'" >&5
-$as_echo "$as_me:   former value:  \`$ac_old_val'" >&2;}
-       { $as_echo "$as_me:${as_lineno-$LINENO}:   current value: \`$ac_new_val'" >&5
-$as_echo "$as_me:   current value: \`$ac_new_val'" >&2;}
-      fi;;
-  esac
-  # Pass precious variables to config.status.
-  if test "$ac_new_set" = set; then
-    case $ac_new_val in
-    *\'*) ac_arg=$ac_var=`$as_echo "$ac_new_val" | sed "s/'/'\\\\\\\\''/g"` ;;
-    *) ac_arg=$ac_var=$ac_new_val ;;
-    esac
-    case " $ac_configure_args " in
-      *" '$ac_arg' "*) ;; # Avoid dups.  Use of quotes ensures accuracy.
-      *) as_fn_append ac_configure_args " '$ac_arg'" ;;
-    esac
-  fi
-done
-if $ac_cache_corrupted; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-  { $as_echo "$as_me:${as_lineno-$LINENO}: error: changes in the environment can compromise the build" >&5
-$as_echo "$as_me: error: changes in the environment can compromise the build" >&2;}
-  as_fn_error $? "run \`make distclean' and/or \`rm $cache_file' and start over" "$LINENO" 5
-fi
-## -------------------- ##
-## Main body of script. ##
-## -------------------- ##
-
-ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-
-
-
-
-
-
-ac_aux_dir=
-for ac_dir in ./support "$srcdir"/./support; do
-  if test -f "$ac_dir/install-sh"; then
-    ac_aux_dir=$ac_dir
-    ac_install_sh="$ac_aux_dir/install-sh -c"
-    break
-  elif test -f "$ac_dir/install.sh"; then
-    ac_aux_dir=$ac_dir
-    ac_install_sh="$ac_aux_dir/install.sh -c"
-    break
-  elif test -f "$ac_dir/shtool"; then
-    ac_aux_dir=$ac_dir
-    ac_install_sh="$ac_aux_dir/shtool install -c"
-    break
-  fi
-done
-if test -z "$ac_aux_dir"; then
-  as_fn_error $? "cannot find install-sh, install.sh, or shtool in ./support \"$srcdir\"/./support" "$LINENO" 5
-fi
-
-# These three variables are undocumented and unsupported,
-# and are intended to be withdrawn in a future Autoconf release.
-# They can cause serious problems if a builder's source tree is in a directory
-# whose full name contains unusual characters.
-ac_config_guess="$SHELL $ac_aux_dir/config.guess"  # Please don't use this var.
-ac_config_sub="$SHELL $ac_aux_dir/config.sub"  # Please don't use this var.
-ac_configure="$SHELL $ac_aux_dir/configure"  # Please don't use this var.
-
-
-ac_config_headers="$ac_config_headers config.h"
-
-
-BASHVERS=4.3
-RELSTATUS=alpha
-
-case "$RELSTATUS" in
-alp*|bet*|dev*|rc*|maint*)     DEBUG='-DDEBUG' MALLOC_DEBUG='-DMALLOC_DEBUG' ;;
-*)     DEBUG= MALLOC_DEBUG= ;;
-esac
-
-# Make sure we can run config.sub.
-$SHELL "$ac_aux_dir/config.sub" sun4 >/dev/null 2>&1 ||
-  as_fn_error $? "cannot run $SHELL $ac_aux_dir/config.sub" "$LINENO" 5
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking build system type" >&5
-$as_echo_n "checking build system type... " >&6; }
-if ${ac_cv_build+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_build_alias=$build_alias
-test "x$ac_build_alias" = x &&
-  ac_build_alias=`$SHELL "$ac_aux_dir/config.guess"`
-test "x$ac_build_alias" = x &&
-  as_fn_error $? "cannot guess build type; you must specify one" "$LINENO" 5
-ac_cv_build=`$SHELL "$ac_aux_dir/config.sub" $ac_build_alias` ||
-  as_fn_error $? "$SHELL $ac_aux_dir/config.sub $ac_build_alias failed" "$LINENO" 5
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_build" >&5
-$as_echo "$ac_cv_build" >&6; }
-case $ac_cv_build in
-*-*-*) ;;
-*) as_fn_error $? "invalid value of canonical build" "$LINENO" 5;;
-esac
-build=$ac_cv_build
-ac_save_IFS=$IFS; IFS='-'
-set x $ac_cv_build
-shift
-build_cpu=$1
-build_vendor=$2
-shift; shift
-# Remember, the first character of IFS is used to create $*,
-# except with old shells:
-build_os=$*
-IFS=$ac_save_IFS
-case $build_os in *\ *) build_os=`echo "$build_os" | sed 's/ /-/g'`;; esac
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking host system type" >&5
-$as_echo_n "checking host system type... " >&6; }
-if ${ac_cv_host+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test "x$host_alias" = x; then
-  ac_cv_host=$ac_cv_build
-else
-  ac_cv_host=`$SHELL "$ac_aux_dir/config.sub" $host_alias` ||
-    as_fn_error $? "$SHELL $ac_aux_dir/config.sub $host_alias failed" "$LINENO" 5
-fi
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_host" >&5
-$as_echo "$ac_cv_host" >&6; }
-case $ac_cv_host in
-*-*-*) ;;
-*) as_fn_error $? "invalid value of canonical host" "$LINENO" 5;;
-esac
-host=$ac_cv_host
-ac_save_IFS=$IFS; IFS='-'
-set x $ac_cv_host
-shift
-host_cpu=$1
-host_vendor=$2
-shift; shift
-# Remember, the first character of IFS is used to create $*,
-# except with old shells:
-host_os=$*
-IFS=$ac_save_IFS
-case $host_os in *\ *) host_os=`echo "$host_os" | sed 's/ /-/g'`;; esac
-
-
-
-
-opt_bash_malloc=yes
-opt_purify=no
-opt_purecov=no
-opt_afs=no
-opt_curses=no
-opt_with_installed_readline=no
-
-#htmldir=
-
-case "${host_cpu}-${host_os}" in
-alpha*-*)      opt_bash_malloc=no ;;   # alpha running osf/1 or linux
-*[Cc]ray*-*)   opt_bash_malloc=no ;;   # Crays
-*-osf1*)       opt_bash_malloc=no ;;   # other osf/1 machines
-sparc-svr4*)   opt_bash_malloc=no ;;   # sparc SVR4, SVR4.2
-sparc-netbsd*) opt_bash_malloc=no ;;   # needs 8-byte alignment
-mips-irix6*)   opt_bash_malloc=no ;;   # needs 8-byte alignment
-m68k-sysv)     opt_bash_malloc=no ;;   # fixes file descriptor leak in closedir
-sparc-linux*)  opt_bash_malloc=no ;;   # sparc running linux; requires ELF
-#*-freebsd*-gnu)       opt_bash_malloc=no ;;   # there's some undetermined problem here
-#*-freebsd*)   opt_bash_malloc=no ;;   # they claim it's better; I disagree
-*-openbsd*)    opt_bash_malloc=no ;;   # they claim it needs eight-bit alignment
-*-mirbsd*)     opt_bash_malloc=no ;;   # they claim it needs eight-bit alignment
-*-aix*)                opt_bash_malloc=no ;;   # AIX machines
-*-nextstep*)   opt_bash_malloc=no ;;   # NeXT machines running NeXTstep
-*-openstep*)   opt_bash_malloc=no ;;   # i386/Sparc/HP machines running Openstep
-*-macos*)      opt_bash_malloc=no ;;   # Apple MacOS X
-*-rhapsody*)   opt_bash_malloc=no ;;   # Apple Rhapsody (MacOS X)
-*-darwin*)     opt_bash_malloc=no ;;   # Apple Darwin (MacOS X)
-*-dgux*)       opt_bash_malloc=no ;;   # DG/UX machines
-*-qnx*)                opt_bash_malloc=no ;;   # QNX 4.2, QNX 6.x
-*-machten4)    opt_bash_malloc=no ;;   # MachTen 4.x
-*-bsdi2.1|*-bsdi3.?)   opt_bash_malloc=no ; : ${CC:=shlicc2} ;; # for loadable builtins
-*-beos*)       opt_bash_malloc=no ;;   # they say it's suitable
-*-cygwin*)     opt_bash_malloc=no ;;   # Cygnus's CYGWIN environment
-*-opennt*|*-interix*)  opt_bash_malloc=no ;;   # Interix, now owned by Microsoft
-*-nsk*)                opt_bash_malloc=no ;;   # HP NonStop
-esac
-
-# memory scrambling on free()
-case "${host_os}" in
-sco3.2v5*|sco3.2v4*)   opt_memscramble=no ;;
-*)                     opt_memscramble=yes ;;
-esac
-
-
-
-
-@%:@ Check whether --with-afs was given.
-if test "${with_afs+set}" = set; then :
-  withval=$with_afs; opt_afs=$withval
-fi
-
-
-@%:@ Check whether --with-bash-malloc was given.
-if test "${with_bash_malloc+set}" = set; then :
-  withval=$with_bash_malloc; opt_bash_malloc=$withval
-fi
-
-
-@%:@ Check whether --with-curses was given.
-if test "${with_curses+set}" = set; then :
-  withval=$with_curses; opt_curses=$withval
-fi
-
-
-@%:@ Check whether --with-gnu-malloc was given.
-if test "${with_gnu_malloc+set}" = set; then :
-  withval=$with_gnu_malloc; opt_bash_malloc=$withval
-fi
-
-
-@%:@ Check whether --with-installed-readline was given.
-if test "${with_installed_readline+set}" = set; then :
-  withval=$with_installed_readline; opt_with_installed_readline=$withval
-fi
-
-
-@%:@ Check whether --with-purecov was given.
-if test "${with_purecov+set}" = set; then :
-  withval=$with_purecov; opt_purecov=$withval
-fi
-
-
-@%:@ Check whether --with-purify was given.
-if test "${with_purify+set}" = set; then :
-  withval=$with_purify; opt_purify=$withval
-fi
-
-
-if test "$opt_bash_malloc" = yes; then
-       MALLOC_TARGET=malloc
-       MALLOC_SRC=malloc.c
-
-       MALLOC_LIB='-lmalloc'
-       MALLOC_LIBRARY='$(ALLOC_LIBDIR)/libmalloc.a'
-       MALLOC_LDFLAGS='-L$(ALLOC_LIBDIR)'
-       MALLOC_DEP='$(MALLOC_LIBRARY)'
-
-       $as_echo "@%:@define USING_BASH_MALLOC 1" >>confdefs.h
-
-else
-       MALLOC_LIB=
-       MALLOC_LIBRARY=
-       MALLOC_LDFLAGS=
-       MALLOC_DEP=     
-fi
-
-if test "$opt_purify" = yes; then
-       PURIFY="purify "
-       $as_echo "@%:@define DISABLE_MALLOC_WRAPPERS 1" >>confdefs.h
-
-else
-       PURIFY=
-fi
-
-if test "$opt_purecov" = yes; then
-       PURIFY="${PURIFY}purecov"
-fi
-
-if test "$opt_afs" = yes; then
-       $as_echo "@%:@define AFS 1" >>confdefs.h
-
-fi
-
-if test "$opt_curses" = yes; then
-       prefer_curses=yes
-fi
-
-if test -z "${DEBUGGER_START_FILE}"; then
-       DEBUGGER_START_FILE='${datadir}/bashdb/bashdb-main.inc'
-fi
-
-opt_minimal_config=no
-
-opt_job_control=yes
-opt_alias=yes
-opt_readline=yes
-opt_history=yes
-opt_bang_history=yes
-opt_dirstack=yes
-opt_restricted=yes
-opt_process_subst=yes
-opt_prompt_decoding=yes
-opt_select=yes
-opt_help=yes
-opt_array_variables=yes
-opt_dparen_arith=yes
-opt_extended_glob=yes
-opt_brace_expansion=yes
-opt_disabled_builtins=no
-opt_command_timing=yes
-opt_xpg_echo=no
-opt_strict_posix=no
-opt_cond_command=yes
-opt_cond_regexp=yes
-opt_coproc=yes
-opt_arith_for_command=yes
-opt_net_redirs=yes
-opt_progcomp=yes
-opt_separate_help=no
-opt_multibyte=yes
-opt_debugger=yes
-opt_single_longdoc_strings=yes
-opt_casemod_attrs=yes
-opt_casemod_expansions=yes
-opt_extglob_default=no
-opt_dircomplete_expand_default=no
-
-opt_static_link=no
-opt_profiling=no
-
-@%:@ Check whether --enable-minimal-config was given.
-if test "${enable_minimal_config+set}" = set; then :
-  enableval=$enable_minimal_config; opt_minimal_config=$enableval
-fi
-
-
-if test $opt_minimal_config = yes; then
-       opt_job_control=no opt_alias=no opt_readline=no
-       opt_history=no opt_bang_history=no opt_dirstack=no
-       opt_restricted=no opt_process_subst=no opt_prompt_decoding=no
-       opt_select=no opt_help=no opt_array_variables=no opt_dparen_arith=no
-       opt_brace_expansion=no opt_disabled_builtins=no opt_command_timing=no
-       opt_extended_glob=no opt_cond_command=no opt_arith_for_command=no
-       opt_net_redirs=no opt_progcomp=no opt_separate_help=no
-       opt_multibyte=yes opt_cond_regexp=no opt_coproc=no
-       opt_casemod_attrs=no opt_casemod_expansions=no opt_extglob_default=no
-fi
-
-@%:@ Check whether --enable-alias was given.
-if test "${enable_alias+set}" = set; then :
-  enableval=$enable_alias; opt_alias=$enableval
-fi
-
-@%:@ Check whether --enable-arith-for-command was given.
-if test "${enable_arith_for_command+set}" = set; then :
-  enableval=$enable_arith_for_command; opt_arith_for_command=$enableval
-fi
-
-@%:@ Check whether --enable-array-variables was given.
-if test "${enable_array_variables+set}" = set; then :
-  enableval=$enable_array_variables; opt_array_variables=$enableval
-fi
-
-@%:@ Check whether --enable-bang-history was given.
-if test "${enable_bang_history+set}" = set; then :
-  enableval=$enable_bang_history; opt_bang_history=$enableval
-fi
-
-@%:@ Check whether --enable-brace-expansion was given.
-if test "${enable_brace_expansion+set}" = set; then :
-  enableval=$enable_brace_expansion; opt_brace_expansion=$enableval
-fi
-
-@%:@ Check whether --enable-casemod-attributes was given.
-if test "${enable_casemod_attributes+set}" = set; then :
-  enableval=$enable_casemod_attributes; opt_casemod_attrs=$enableval
-fi
-
-@%:@ Check whether --enable-casemod-expansions was given.
-if test "${enable_casemod_expansions+set}" = set; then :
-  enableval=$enable_casemod_expansions; opt_casemod_expansions=$enableval
-fi
-
-@%:@ Check whether --enable-command-timing was given.
-if test "${enable_command_timing+set}" = set; then :
-  enableval=$enable_command_timing; opt_command_timing=$enableval
-fi
-
-@%:@ Check whether --enable-cond-command was given.
-if test "${enable_cond_command+set}" = set; then :
-  enableval=$enable_cond_command; opt_cond_command=$enableval
-fi
-
-@%:@ Check whether --enable-cond-regexp was given.
-if test "${enable_cond_regexp+set}" = set; then :
-  enableval=$enable_cond_regexp; opt_cond_regexp=$enableval
-fi
-
-@%:@ Check whether --enable-coprocesses was given.
-if test "${enable_coprocesses+set}" = set; then :
-  enableval=$enable_coprocesses; opt_coproc=$enableval
-fi
-
-@%:@ Check whether --enable-debugger was given.
-if test "${enable_debugger+set}" = set; then :
-  enableval=$enable_debugger; opt_debugger=$enableval
-fi
-
-@%:@ Check whether --enable-direxpand-default was given.
-if test "${enable_direxpand_default+set}" = set; then :
-  enableval=$enable_direxpand_default; opt_dircomplete_expand_default=$enableval
-fi
-
-@%:@ Check whether --enable-directory-stack was given.
-if test "${enable_directory_stack+set}" = set; then :
-  enableval=$enable_directory_stack; opt_dirstack=$enableval
-fi
-
-@%:@ Check whether --enable-disabled-builtins was given.
-if test "${enable_disabled_builtins+set}" = set; then :
-  enableval=$enable_disabled_builtins; opt_disabled_builtins=$enableval
-fi
-
-@%:@ Check whether --enable-dparen-arithmetic was given.
-if test "${enable_dparen_arithmetic+set}" = set; then :
-  enableval=$enable_dparen_arithmetic; opt_dparen_arith=$enableval
-fi
-
-@%:@ Check whether --enable-extended-glob was given.
-if test "${enable_extended_glob+set}" = set; then :
-  enableval=$enable_extended_glob; opt_extended_glob=$enableval
-fi
-
-@%:@ Check whether --enable-extended-glob-default was given.
-if test "${enable_extended_glob_default+set}" = set; then :
-  enableval=$enable_extended_glob_default; opt_extglob_default=$enableval
-fi
-
-@%:@ Check whether --enable-help-builtin was given.
-if test "${enable_help_builtin+set}" = set; then :
-  enableval=$enable_help_builtin; opt_help=$enableval
-fi
-
-@%:@ Check whether --enable-history was given.
-if test "${enable_history+set}" = set; then :
-  enableval=$enable_history; opt_history=$enableval
-fi
-
-@%:@ Check whether --enable-job-control was given.
-if test "${enable_job_control+set}" = set; then :
-  enableval=$enable_job_control; opt_job_control=$enableval
-fi
-
-@%:@ Check whether --enable-multibyte was given.
-if test "${enable_multibyte+set}" = set; then :
-  enableval=$enable_multibyte; opt_multibyte=$enableval
-fi
-
-@%:@ Check whether --enable-net-redirections was given.
-if test "${enable_net_redirections+set}" = set; then :
-  enableval=$enable_net_redirections; opt_net_redirs=$enableval
-fi
-
-@%:@ Check whether --enable-process-substitution was given.
-if test "${enable_process_substitution+set}" = set; then :
-  enableval=$enable_process_substitution; opt_process_subst=$enableval
-fi
-
-@%:@ Check whether --enable-progcomp was given.
-if test "${enable_progcomp+set}" = set; then :
-  enableval=$enable_progcomp; opt_progcomp=$enableval
-fi
-
-@%:@ Check whether --enable-prompt-string-decoding was given.
-if test "${enable_prompt_string_decoding+set}" = set; then :
-  enableval=$enable_prompt_string_decoding; opt_prompt_decoding=$enableval
-fi
-
-@%:@ Check whether --enable-readline was given.
-if test "${enable_readline+set}" = set; then :
-  enableval=$enable_readline; opt_readline=$enableval
-fi
-
-@%:@ Check whether --enable-restricted was given.
-if test "${enable_restricted+set}" = set; then :
-  enableval=$enable_restricted; opt_restricted=$enableval
-fi
-
-@%:@ Check whether --enable-select was given.
-if test "${enable_select+set}" = set; then :
-  enableval=$enable_select; opt_select=$enableval
-fi
-
-@%:@ Check whether --enable-separate-helpfiles was given.
-if test "${enable_separate_helpfiles+set}" = set; then :
-  enableval=$enable_separate_helpfiles; opt_separate_help=$enableval
-fi
-
-@%:@ Check whether --enable-single-help-strings was given.
-if test "${enable_single_help_strings+set}" = set; then :
-  enableval=$enable_single_help_strings; opt_single_longdoc_strings=$enableval
-fi
-
-@%:@ Check whether --enable-strict-posix-default was given.
-if test "${enable_strict_posix_default+set}" = set; then :
-  enableval=$enable_strict_posix_default; opt_strict_posix=$enableval
-fi
-
-@%:@ Check whether --enable-usg-echo-default was given.
-if test "${enable_usg_echo_default+set}" = set; then :
-  enableval=$enable_usg_echo_default; opt_xpg_echo=$enableval
-fi
-
-@%:@ Check whether --enable-xpg-echo-default was given.
-if test "${enable_xpg_echo_default+set}" = set; then :
-  enableval=$enable_xpg_echo_default; opt_xpg_echo=$enableval
-fi
-
-
-@%:@ Check whether --enable-mem-scramble was given.
-if test "${enable_mem_scramble+set}" = set; then :
-  enableval=$enable_mem_scramble; opt_memscramble=$enableval
-fi
-
-@%:@ Check whether --enable-profiling was given.
-if test "${enable_profiling+set}" = set; then :
-  enableval=$enable_profiling; opt_profiling=$enableval
-fi
-
-@%:@ Check whether --enable-static-link was given.
-if test "${enable_static_link+set}" = set; then :
-  enableval=$enable_static_link; opt_static_link=$enableval
-fi
-
-
-
-
-
-
-
-
-
-if test $opt_alias = yes; then
-$as_echo "@%:@define ALIAS 1" >>confdefs.h
-
-fi
-if test $opt_dirstack = yes; then
-$as_echo "@%:@define PUSHD_AND_POPD 1" >>confdefs.h
-
-fi
-if test $opt_restricted = yes; then
-$as_echo "@%:@define RESTRICTED_SHELL 1" >>confdefs.h
-
-fi
-if test $opt_process_subst = yes; then
-$as_echo "@%:@define PROCESS_SUBSTITUTION 1" >>confdefs.h
-
-fi
-if test $opt_prompt_decoding = yes; then
-$as_echo "@%:@define PROMPT_STRING_DECODE 1" >>confdefs.h
-
-fi
-if test $opt_select = yes; then
-$as_echo "@%:@define SELECT_COMMAND 1" >>confdefs.h
-
-fi
-if test $opt_help = yes; then
-$as_echo "@%:@define HELP_BUILTIN 1" >>confdefs.h
-
-fi
-if test $opt_array_variables = yes; then
-$as_echo "@%:@define ARRAY_VARS 1" >>confdefs.h
-
-fi
-if test $opt_dparen_arith = yes; then
-$as_echo "@%:@define DPAREN_ARITHMETIC 1" >>confdefs.h
-
-fi
-if test $opt_brace_expansion = yes; then
-$as_echo "@%:@define BRACE_EXPANSION 1" >>confdefs.h
-
-fi
-if test $opt_disabled_builtins = yes; then
-$as_echo "@%:@define DISABLED_BUILTINS 1" >>confdefs.h
-
-fi
-if test $opt_command_timing = yes; then
-$as_echo "@%:@define COMMAND_TIMING 1" >>confdefs.h
-
-fi
-if test $opt_xpg_echo = yes ; then
-$as_echo "@%:@define DEFAULT_ECHO_TO_XPG 1" >>confdefs.h
-
-fi
-if test $opt_strict_posix = yes; then
-$as_echo "@%:@define STRICT_POSIX 1" >>confdefs.h
-
-fi
-if test $opt_extended_glob = yes ; then
-$as_echo "@%:@define EXTENDED_GLOB 1" >>confdefs.h
-
-fi
-if test $opt_extglob_default = yes; then
-$as_echo "@%:@define EXTGLOB_DEFAULT 1" >>confdefs.h
-
-else
-$as_echo "@%:@define EXTGLOB_DEFAULT 0" >>confdefs.h
-
-fi
-if test $opt_cond_command = yes ; then
-$as_echo "@%:@define COND_COMMAND 1" >>confdefs.h
-
-fi
-if test $opt_cond_regexp = yes ; then
-$as_echo "@%:@define COND_REGEXP 1" >>confdefs.h
-
-fi
-if test $opt_coproc = yes; then
-$as_echo "@%:@define COPROCESS_SUPPORT 1" >>confdefs.h
-
-fi
-if test $opt_arith_for_command = yes; then
-$as_echo "@%:@define ARITH_FOR_COMMAND 1" >>confdefs.h
-
-fi
-if test $opt_net_redirs = yes; then
-$as_echo "@%:@define NETWORK_REDIRECTIONS 1" >>confdefs.h
-
-fi
-if test $opt_progcomp = yes; then
-$as_echo "@%:@define PROGRAMMABLE_COMPLETION 1" >>confdefs.h
-
-fi
-if test $opt_multibyte = no; then
-$as_echo "@%:@define NO_MULTIBYTE_SUPPORT 1" >>confdefs.h
-
-fi
-if test $opt_debugger = yes; then
-$as_echo "@%:@define DEBUGGER 1" >>confdefs.h
-
-fi
-if test $opt_casemod_attrs = yes; then
-$as_echo "@%:@define CASEMOD_ATTRS 1" >>confdefs.h
-
-fi
-if test $opt_casemod_expansions = yes; then
-$as_echo "@%:@define CASEMOD_EXPANSIONS 1" >>confdefs.h
-
-fi
-if test $opt_dircomplete_expand_default = yes; then
-$as_echo "@%:@define DIRCOMPLETE_EXPAND_DEFAULT 1" >>confdefs.h
-
-fi
-
-if test $opt_memscramble = yes; then
-$as_echo "@%:@define MEMSCRAMBLE 1" >>confdefs.h
-
-fi
-
-if test "$opt_minimal_config" = yes; then
-       TESTSCRIPT=run-minimal
-else
-       TESTSCRIPT=run-all
-fi
-
-HELPDIR= HELPDIRDEFINE= HELPINSTALL= HELPFILES_TARGET=
-if test "$opt_separate_help" != no; then
-       if test "$opt_separate_help" = "yes" ; then
-               HELPDIR='${datadir}/bash'
-       else
-               HELPDIR=$opt_separate_help
-       fi
-       HELPDIRDEFINE='-H ${HELPDIR}'
-       HELPINSTALL='install-help'
-       HELPFILES_TARGET='helpdoc'
-fi
-HELPSTRINGS=
-if test "$opt_single_longdoc_strings" != "yes"; then
-       HELPSTRINGS='-S'
-fi
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-echo ""
-echo "Beginning configuration for bash-$BASHVERS-$RELSTATUS for ${host_cpu}-${host_vendor}-${host_os}"
-echo ""
-
-ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-if test -n "$ac_tool_prefix"; then
-  # Extract the first word of "${ac_tool_prefix}gcc", so it can be a program name with args.
-set dummy ${ac_tool_prefix}gcc; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_CC+:} false; then :
-  $as_echo_n "(cached) " >&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 { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_prog_CC="${ac_tool_prefix}gcc"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-fi
-fi
-CC=$ac_cv_prog_CC
-if test -n "$CC"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
-$as_echo "$CC" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-fi
-if test -z "$ac_cv_prog_CC"; then
-  ac_ct_CC=$CC
-  # Extract the first word of "gcc", so it can be a program name with args.
-set dummy gcc; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_CC+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test -n "$ac_ct_CC"; then
-  ac_cv_prog_ac_ct_CC="$ac_ct_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 { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_prog_ac_ct_CC="gcc"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-fi
-fi
-ac_ct_CC=$ac_cv_prog_ac_ct_CC
-if test -n "$ac_ct_CC"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5
-$as_echo "$ac_ct_CC" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-  if test "x$ac_ct_CC" = x; then
-    CC=""
-  else
-    case $cross_compiling:$ac_tool_warned in
-yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
-ac_tool_warned=yes ;;
-esac
-    CC=$ac_ct_CC
-  fi
-else
-  CC="$ac_cv_prog_CC"
-fi
-
-if test -z "$CC"; then
-          if test -n "$ac_tool_prefix"; then
-    # Extract the first word of "${ac_tool_prefix}cc", so it can be a program name with args.
-set dummy ${ac_tool_prefix}cc; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_CC+:} false; then :
-  $as_echo_n "(cached) " >&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 { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_prog_CC="${ac_tool_prefix}cc"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-fi
-fi
-CC=$ac_cv_prog_CC
-if test -n "$CC"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
-$as_echo "$CC" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-  fi
-fi
-if test -z "$CC"; then
-  # Extract the first word of "cc", so it can be a program name with args.
-set dummy cc; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_CC+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test -n "$CC"; then
-  ac_cv_prog_CC="$CC" # Let the user override the test.
-else
-  ac_prog_rejected=no
-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 { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    if test "$as_dir/$ac_word$ac_exec_ext" = "/usr/ucb/cc"; then
-       ac_prog_rejected=yes
-       continue
-     fi
-    ac_cv_prog_CC="cc"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-if test $ac_prog_rejected = yes; then
-  # We found a bogon in the path, so make sure we never use it.
-  set dummy $ac_cv_prog_CC
-  shift
-  if test $@%:@ != 0; then
-    # We chose a different compiler from the bogus one.
-    # However, it has the same basename, so the bogon will be chosen
-    # first if we set CC to just the basename; use the full file name.
-    shift
-    ac_cv_prog_CC="$as_dir/$ac_word${1+' '}$@"
-  fi
-fi
-fi
-fi
-CC=$ac_cv_prog_CC
-if test -n "$CC"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
-$as_echo "$CC" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-fi
-if test -z "$CC"; then
-  if test -n "$ac_tool_prefix"; then
-  for ac_prog in cl.exe
-  do
-    # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.
-set dummy $ac_tool_prefix$ac_prog; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_CC+:} false; then :
-  $as_echo_n "(cached) " >&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 { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_prog_CC="$ac_tool_prefix$ac_prog"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-fi
-fi
-CC=$ac_cv_prog_CC
-if test -n "$CC"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
-$as_echo "$CC" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-    test -n "$CC" && break
-  done
-fi
-if test -z "$CC"; then
-  ac_ct_CC=$CC
-  for ac_prog in cl.exe
-do
-  # Extract the first word of "$ac_prog", so it can be a program name with args.
-set dummy $ac_prog; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_CC+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test -n "$ac_ct_CC"; then
-  ac_cv_prog_ac_ct_CC="$ac_ct_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 { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_prog_ac_ct_CC="$ac_prog"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-fi
-fi
-ac_ct_CC=$ac_cv_prog_ac_ct_CC
-if test -n "$ac_ct_CC"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5
-$as_echo "$ac_ct_CC" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-  test -n "$ac_ct_CC" && break
-done
-
-  if test "x$ac_ct_CC" = x; then
-    CC=""
-  else
-    case $cross_compiling:$ac_tool_warned in
-yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
-ac_tool_warned=yes ;;
-esac
-    CC=$ac_ct_CC
-  fi
-fi
-
-fi
-
-
-test -z "$CC" && { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error $? "no acceptable C compiler found in \$PATH
-See \`config.log' for more details" "$LINENO" 5; }
-
-# Provide some information about the compiler.
-$as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler version" >&5
-set X $ac_compile
-ac_compiler=$2
-for ac_option in --version -v -V -qversion; do
-  { { ac_try="$ac_compiler $ac_option >&5"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
-  (eval "$ac_compiler $ac_option >&5") 2>conftest.err
-  ac_status=$?
-  if test -s conftest.err; then
-    sed '10a\
-... rest of stderr output deleted ...
-         10q' conftest.err >conftest.er1
-    cat conftest.er1 >&5
-  fi
-  rm -f conftest.er1 conftest.err
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-  test $ac_status = 0; }
-done
-
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-int
-main ()
-{
-
-  ;
-  return 0;
-}
-_ACEOF
-ac_clean_files_save=$ac_clean_files
-ac_clean_files="$ac_clean_files a.out a.out.dSYM a.exe b.out"
-# Try to create an executable without -o first, disregard a.out.
-# It will help us diagnose broken compilers, and finding out an intuition
-# of exeext.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the C compiler works" >&5
-$as_echo_n "checking whether the C compiler works... " >&6; }
-ac_link_default=`$as_echo "$ac_link" | sed 's/ -o *conftest[^ ]*//'`
-
-# The possible output files:
-ac_files="a.out conftest.exe conftest a.exe a_out.exe b.out conftest.*"
-
-ac_rmfiles=
-for ac_file in $ac_files
-do
-  case $ac_file in
-    *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj ) ;;
-    * ) ac_rmfiles="$ac_rmfiles $ac_file";;
-  esac
-done
-rm -f $ac_rmfiles
-
-if { { ac_try="$ac_link_default"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
-  (eval "$ac_link_default") 2>&5
-  ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-  test $ac_status = 0; }; then :
-  # Autoconf-2.13 could set the ac_cv_exeext variable to `no'.
-# So ignore a value of `no', otherwise this would lead to `EXEEXT = no'
-# in a Makefile.  We should not override ac_cv_exeext if it was cached,
-# so that the user can short-circuit this test for compilers unknown to
-# Autoconf.
-for ac_file in $ac_files ''
-do
-  test -f "$ac_file" || continue
-  case $ac_file in
-    *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj )
-       ;;
-    [ab].out )
-       # We found the default executable, but exeext='' is most
-       # certainly right.
-       break;;
-    *.* )
-       if test "${ac_cv_exeext+set}" = set && test "$ac_cv_exeext" != no;
-       then :; else
-          ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'`
-       fi
-       # We set ac_cv_exeext here because the later test for it is not
-       # safe: cross compilers may not add the suffix if given an `-o'
-       # argument, so we may need to know it at that point already.
-       # Even if this section looks crufty: it has the advantage of
-       # actually working.
-       break;;
-    * )
-       break;;
-  esac
-done
-test "$ac_cv_exeext" = no && ac_cv_exeext=
-
-else
-  ac_file=''
-fi
-if test -z "$ac_file"; then :
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-$as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error 77 "C compiler cannot create executables
-See \`config.log' for more details" "$LINENO" 5; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler default output file name" >&5
-$as_echo_n "checking for C compiler default output file name... " >&6; }
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_file" >&5
-$as_echo "$ac_file" >&6; }
-ac_exeext=$ac_cv_exeext
-
-rm -f -r a.out a.out.dSYM a.exe conftest$ac_cv_exeext b.out
-ac_clean_files=$ac_clean_files_save
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for suffix of executables" >&5
-$as_echo_n "checking for suffix of executables... " >&6; }
-if { { ac_try="$ac_link"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
-  (eval "$ac_link") 2>&5
-  ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-  test $ac_status = 0; }; then :
-  # If both `conftest.exe' and `conftest' are `present' (well, observable)
-# catch `conftest.exe'.  For instance with Cygwin, `ls conftest' will
-# work properly (i.e., refer to `conftest.exe'), while it won't with
-# `rm'.
-for ac_file in conftest.exe conftest conftest.*; do
-  test -f "$ac_file" || continue
-  case $ac_file in
-    *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj ) ;;
-    *.* ) ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'`
-         break;;
-    * ) break;;
-  esac
-done
-else
-  { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error $? "cannot compute suffix of executables: cannot compile and link
-See \`config.log' for more details" "$LINENO" 5; }
-fi
-rm -f conftest conftest$ac_cv_exeext
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_exeext" >&5
-$as_echo "$ac_cv_exeext" >&6; }
-
-rm -f conftest.$ac_ext
-EXEEXT=$ac_cv_exeext
-ac_exeext=$EXEEXT
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-@%:@include <stdio.h>
-int
-main ()
-{
-FILE *f = fopen ("conftest.out", "w");
- return ferror (f) || fclose (f) != 0;
-
-  ;
-  return 0;
-}
-_ACEOF
-ac_clean_files="$ac_clean_files conftest.out"
-# Check that the compiler produces executables we can run.  If not, either
-# the compiler is broken, or we cross compile.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are cross compiling" >&5
-$as_echo_n "checking whether we are cross compiling... " >&6; }
-if test "$cross_compiling" != yes; then
-  { { ac_try="$ac_link"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
-  (eval "$ac_link") 2>&5
-  ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-  test $ac_status = 0; }
-  if { ac_try='./conftest$ac_cv_exeext'
-  { { case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
-  (eval "$ac_try") 2>&5
-  ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-  test $ac_status = 0; }; }; then
-    cross_compiling=no
-  else
-    if test "$cross_compiling" = maybe; then
-       cross_compiling=yes
-    else
-       { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error $? "cannot run C compiled programs.
-If you meant to cross compile, use \`--host'.
-See \`config.log' for more details" "$LINENO" 5; }
-    fi
-  fi
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $cross_compiling" >&5
-$as_echo "$cross_compiling" >&6; }
-
-rm -f conftest.$ac_ext conftest$ac_cv_exeext conftest.out
-ac_clean_files=$ac_clean_files_save
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for suffix of object files" >&5
-$as_echo_n "checking for suffix of object files... " >&6; }
-if ${ac_cv_objext+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-int
-main ()
-{
-
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.o conftest.obj
-if { { ac_try="$ac_compile"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
-  (eval "$ac_compile") 2>&5
-  ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-  test $ac_status = 0; }; then :
-  for ac_file in conftest.o conftest.obj conftest.*; do
-  test -f "$ac_file" || continue;
-  case $ac_file in
-    *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM ) ;;
-    *) ac_cv_objext=`expr "$ac_file" : '.*\.\(.*\)'`
-       break;;
-  esac
-done
-else
-  $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error $? "cannot compute suffix of object files: cannot compile
-See \`config.log' for more details" "$LINENO" 5; }
-fi
-rm -f conftest.$ac_cv_objext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_objext" >&5
-$as_echo "$ac_cv_objext" >&6; }
-OBJEXT=$ac_cv_objext
-ac_objext=$OBJEXT
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are using the GNU C compiler" >&5
-$as_echo_n "checking whether we are using the GNU C compiler... " >&6; }
-if ${ac_cv_c_compiler_gnu+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-int
-main ()
-{
-#ifndef __GNUC__
-       choke me
-#endif
-
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_compiler_gnu=yes
-else
-  ac_compiler_gnu=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-ac_cv_c_compiler_gnu=$ac_compiler_gnu
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_compiler_gnu" >&5
-$as_echo "$ac_cv_c_compiler_gnu" >&6; }
-if test $ac_compiler_gnu = yes; then
-  GCC=yes
-else
-  GCC=
-fi
-ac_test_CFLAGS=${CFLAGS+set}
-ac_save_CFLAGS=$CFLAGS
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC accepts -g" >&5
-$as_echo_n "checking whether $CC accepts -g... " >&6; }
-if ${ac_cv_prog_cc_g+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_save_c_werror_flag=$ac_c_werror_flag
-   ac_c_werror_flag=yes
-   ac_cv_prog_cc_g=no
-   CFLAGS="-g"
-   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-int
-main ()
-{
-
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_cv_prog_cc_g=yes
-else
-  CFLAGS=""
-      cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-int
-main ()
-{
-
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  
-else
-  ac_c_werror_flag=$ac_save_c_werror_flag
-        CFLAGS="-g"
-        cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-int
-main ()
-{
-
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_cv_prog_cc_g=yes
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-   ac_c_werror_flag=$ac_save_c_werror_flag
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_g" >&5
-$as_echo "$ac_cv_prog_cc_g" >&6; }
-if test "$ac_test_CFLAGS" = set; then
-  CFLAGS=$ac_save_CFLAGS
-elif test $ac_cv_prog_cc_g = yes; then
-  if test "$GCC" = yes; then
-    CFLAGS="-g -O2"
-  else
-    CFLAGS="-g"
-  fi
-else
-  if test "$GCC" = yes; then
-    CFLAGS="-O2"
-  else
-    CFLAGS=
-  fi
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $CC option to accept ISO C89" >&5
-$as_echo_n "checking for $CC option to accept ISO C89... " >&6; }
-if ${ac_cv_prog_cc_c89+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_cv_prog_cc_c89=no
-ac_save_CC=$CC
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <stdarg.h>
-#include <stdio.h>
-#include <sys/types.h>
-#include <sys/stat.h>
-/* Most of the following tests are stolen from RCS 5.7's src/conf.sh.  */
-struct buf { int x; };
-FILE * (*rcsopen) (struct buf *, struct stat *, int);
-static char *e (p, i)
-     char **p;
-     int i;
-{
-  return p[i];
-}
-static char *f (char * (*g) (char **, int), char **p, ...)
-{
-  char *s;
-  va_list v;
-  va_start (v,p);
-  s = g (p, va_arg (v,int));
-  va_end (v);
-  return s;
-}
-
-/* OSF 4.0 Compaq cc is some sort of almost-ANSI by default.  It has
-   function prototypes and stuff, but not '\xHH' hex character constants.
-   These don't provoke an error unfortunately, instead are silently treated
-   as 'x'.  The following induces an error, until -std is added to get
-   proper ANSI mode.  Curiously '\x00'!='x' always comes out true, for an
-   array size at least.  It's necessary to write '\x00'==0 to get something
-   that's true only with -std.  */
-int osf4_cc_array ['\x00' == 0 ? 1 : -1];
-
-/* IBM C 6 for AIX is almost-ANSI by default, but it replaces macro parameters
-   inside strings and character constants.  */
-#define FOO(x) 'x'
-int xlc6_cc_array[FOO(a) == 'x' ? 1 : -1];
-
-int test (int i, double x);
-struct s1 {int (*f) (int a);};
-struct s2 {int (*f) (double a);};
-int pairnames (int, char **, FILE *(*)(struct buf *, struct stat *, int), int, int);
-int argc;
-char **argv;
-int
-main ()
-{
-return f (e, argv, 0) != argv[0]  ||  f (e, argv, 1) != argv[1];
-  ;
-  return 0;
-}
-_ACEOF
-for ac_arg in '' -qlanglvl=extc89 -qlanglvl=ansi -std \
-       -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__"
-do
-  CC="$ac_save_CC $ac_arg"
-  if ac_fn_c_try_compile "$LINENO"; then :
-  ac_cv_prog_cc_c89=$ac_arg
-fi
-rm -f core conftest.err conftest.$ac_objext
-  test "x$ac_cv_prog_cc_c89" != "xno" && break
-done
-rm -f conftest.$ac_ext
-CC=$ac_save_CC
-
-fi
-# AC_CACHE_VAL
-case "x$ac_cv_prog_cc_c89" in
-  x)
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: none needed" >&5
-$as_echo "none needed" >&6; } ;;
-  xno)
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: unsupported" >&5
-$as_echo "unsupported" >&6; } ;;
-  *)
-    CC="$CC $ac_cv_prog_cc_c89"
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_c89" >&5
-$as_echo "$ac_cv_prog_cc_c89" >&6; } ;;
-esac
-if test "x$ac_cv_prog_cc_c89" != xno; then :
-  
-fi
-
-ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-
-
-
-
-        { $as_echo "$as_me:${as_lineno-$LINENO}: checking for strerror in -lcposix" >&5
-$as_echo_n "checking for strerror in -lcposix... " >&6; }
-if ${ac_cv_lib_cposix_strerror+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_check_lib_save_LIBS=$LIBS
-LIBS="-lcposix  $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-/* Override any GCC internal prototype to avoid an error.
-   Use char because int might match the return type of a GCC
-   builtin and then its argument prototype would still apply.  */
-#ifdef __cplusplus
-extern "C"
-#endif
-char strerror ();
-int
-main ()
-{
-return strerror ();
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  ac_cv_lib_cposix_strerror=yes
-else
-  ac_cv_lib_cposix_strerror=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_cposix_strerror" >&5
-$as_echo "$ac_cv_lib_cposix_strerror" >&6; }
-if test "x$ac_cv_lib_cposix_strerror" = xyes; then :
-  LIBS="$LIBS -lcposix"
-fi
-
-  
-
-ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to run the C preprocessor" >&5
-$as_echo_n "checking how to run the C preprocessor... " >&6; }
-# On Suns, sometimes $CPP names a directory.
-if test -n "$CPP" && test -d "$CPP"; then
-  CPP=
-fi
-if test -z "$CPP"; then
-  if ${ac_cv_prog_CPP+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-      # Double quotes because CPP needs to be expanded
-    for CPP in "$CC -E" "$CC -E -traditional-cpp" "/lib/cpp"
-    do
-      ac_preproc_ok=false
-for ac_c_preproc_warn_flag in '' yes
-do
-  # Use a header file that comes with gcc, so configuring glibc
-  # with a fresh cross-compiler works.
-  # Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
-  # <limits.h> exists even on freestanding compilers.
-  # On the NeXT, cc -E runs the code through the compiler's parser,
-  # not just through cpp. "Syntax error" is here to catch this case.
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-@%:@ifdef __STDC__
-@%:@ include <limits.h>
-@%:@else
-@%:@ include <assert.h>
-@%:@endif
-                    Syntax error
-_ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
-  
-else
-  # Broken: fails on valid input.
-continue
-fi
-rm -f conftest.err conftest.i conftest.$ac_ext
-
-  # OK, works on sane cases.  Now check whether nonexistent headers
-  # can be detected and how.
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-@%:@include <ac_nonexistent.h>
-_ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
-  # Broken: success on invalid input.
-continue
-else
-  # Passes both tests.
-ac_preproc_ok=:
-break
-fi
-rm -f conftest.err conftest.i conftest.$ac_ext
-
-done
-# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.
-rm -f conftest.i conftest.err conftest.$ac_ext
-if $ac_preproc_ok; then :
-  break
-fi
-
-    done
-    ac_cv_prog_CPP=$CPP
-  
-fi
-  CPP=$ac_cv_prog_CPP
-else
-  ac_cv_prog_CPP=$CPP
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $CPP" >&5
-$as_echo "$CPP" >&6; }
-ac_preproc_ok=false
-for ac_c_preproc_warn_flag in '' yes
-do
-  # Use a header file that comes with gcc, so configuring glibc
-  # with a fresh cross-compiler works.
-  # Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
-  # <limits.h> exists even on freestanding compilers.
-  # On the NeXT, cc -E runs the code through the compiler's parser,
-  # not just through cpp. "Syntax error" is here to catch this case.
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-@%:@ifdef __STDC__
-@%:@ include <limits.h>
-@%:@else
-@%:@ include <assert.h>
-@%:@endif
-                    Syntax error
-_ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
-  
-else
-  # Broken: fails on valid input.
-continue
-fi
-rm -f conftest.err conftest.i conftest.$ac_ext
-
-  # OK, works on sane cases.  Now check whether nonexistent headers
-  # can be detected and how.
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-@%:@include <ac_nonexistent.h>
-_ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
-  # Broken: success on invalid input.
-continue
-else
-  # Passes both tests.
-ac_preproc_ok=:
-break
-fi
-rm -f conftest.err conftest.i conftest.$ac_ext
-
-done
-# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.
-rm -f conftest.i conftest.err conftest.$ac_ext
-if $ac_preproc_ok; then :
-  
-else
-  { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error $? "C preprocessor \"$CPP\" fails sanity check
-See \`config.log' for more details" "$LINENO" 5; }
-fi
-
-ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for grep that handles long lines and -e" >&5
-$as_echo_n "checking for grep that handles long lines and -e... " >&6; }
-if ${ac_cv_path_GREP+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test -z "$GREP"; then
-  ac_path_GREP_found=false
-  # Loop through the user's path and test for each of PROGNAME-LIST
-  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_prog in grep ggrep; do
-    for ac_exec_ext in '' $ac_executable_extensions; do
-      ac_path_GREP="$as_dir/$ac_prog$ac_exec_ext"
-      { test -f "$ac_path_GREP" && $as_test_x "$ac_path_GREP"; } || continue
-# Check for GNU ac_path_GREP and select it if it is found.
-  # Check for GNU $ac_path_GREP
-case `"$ac_path_GREP" --version 2>&1` in
-*GNU*)
-  ac_cv_path_GREP="$ac_path_GREP" ac_path_GREP_found=:;;
-*)
-  ac_count=0
-  $as_echo_n 0123456789 >"conftest.in"
-  while :
-  do
-    cat "conftest.in" "conftest.in" >"conftest.tmp"
-    mv "conftest.tmp" "conftest.in"
-    cp "conftest.in" "conftest.nl"
-    $as_echo 'GREP' >> "conftest.nl"
-    "$ac_path_GREP" -e 'GREP$' -e '-(cannot match)-' < "conftest.nl" >"conftest.out" 2>/dev/null || break
-    diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break
-    as_fn_arith $ac_count + 1 && ac_count=$as_val
-    if test $ac_count -gt ${ac_path_GREP_max-0}; then
-      # Best one so far, save it but keep looking for a better one
-      ac_cv_path_GREP="$ac_path_GREP"
-      ac_path_GREP_max=$ac_count
-    fi
-    # 10*(2^10) chars as input seems more than enough
-    test $ac_count -gt 10 && break
-  done
-  rm -f conftest.in conftest.tmp conftest.nl conftest.out;;
-esac
-
-      $ac_path_GREP_found && break 3
-    done
-  done
-  done
-IFS=$as_save_IFS
-  if test -z "$ac_cv_path_GREP"; then
-    as_fn_error $? "no acceptable grep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5
-  fi
-else
-  ac_cv_path_GREP=$GREP
-fi
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_GREP" >&5
-$as_echo "$ac_cv_path_GREP" >&6; }
- GREP="$ac_cv_path_GREP"
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for egrep" >&5
-$as_echo_n "checking for egrep... " >&6; }
-if ${ac_cv_path_EGREP+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if echo a | $GREP -E '(a|b)' >/dev/null 2>&1
-   then ac_cv_path_EGREP="$GREP -E"
-   else
-     if test -z "$EGREP"; then
-  ac_path_EGREP_found=false
-  # Loop through the user's path and test for each of PROGNAME-LIST
-  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_prog in egrep; do
-    for ac_exec_ext in '' $ac_executable_extensions; do
-      ac_path_EGREP="$as_dir/$ac_prog$ac_exec_ext"
-      { test -f "$ac_path_EGREP" && $as_test_x "$ac_path_EGREP"; } || continue
-# Check for GNU ac_path_EGREP and select it if it is found.
-  # Check for GNU $ac_path_EGREP
-case `"$ac_path_EGREP" --version 2>&1` in
-*GNU*)
-  ac_cv_path_EGREP="$ac_path_EGREP" ac_path_EGREP_found=:;;
-*)
-  ac_count=0
-  $as_echo_n 0123456789 >"conftest.in"
-  while :
-  do
-    cat "conftest.in" "conftest.in" >"conftest.tmp"
-    mv "conftest.tmp" "conftest.in"
-    cp "conftest.in" "conftest.nl"
-    $as_echo 'EGREP' >> "conftest.nl"
-    "$ac_path_EGREP" 'EGREP$' < "conftest.nl" >"conftest.out" 2>/dev/null || break
-    diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break
-    as_fn_arith $ac_count + 1 && ac_count=$as_val
-    if test $ac_count -gt ${ac_path_EGREP_max-0}; then
-      # Best one so far, save it but keep looking for a better one
-      ac_cv_path_EGREP="$ac_path_EGREP"
-      ac_path_EGREP_max=$ac_count
-    fi
-    # 10*(2^10) chars as input seems more than enough
-    test $ac_count -gt 10 && break
-  done
-  rm -f conftest.in conftest.tmp conftest.nl conftest.out;;
-esac
-
-      $ac_path_EGREP_found && break 3
-    done
-  done
-  done
-IFS=$as_save_IFS
-  if test -z "$ac_cv_path_EGREP"; then
-    as_fn_error $? "no acceptable egrep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5
-  fi
-else
-  ac_cv_path_EGREP=$EGREP
-fi
-
-   fi
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_EGREP" >&5
-$as_echo "$ac_cv_path_EGREP" >&6; }
- EGREP="$ac_cv_path_EGREP"
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for ANSI C header files" >&5
-$as_echo_n "checking for ANSI C header files... " >&6; }
-if ${ac_cv_header_stdc+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <stdlib.h>
-#include <stdarg.h>
-#include <string.h>
-#include <float.h>
-
-int
-main ()
-{
-
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_cv_header_stdc=yes
-else
-  ac_cv_header_stdc=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-
-if test $ac_cv_header_stdc = yes; then
-  # SunOS 4.x string.h does not declare mem*, contrary to ANSI.
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <string.h>
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "memchr" >/dev/null 2>&1; then :
-  
-else
-  ac_cv_header_stdc=no
-fi
-rm -f conftest*
-
-fi
-
-if test $ac_cv_header_stdc = yes; then
-  # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI.
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <stdlib.h>
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "free" >/dev/null 2>&1; then :
-  
-else
-  ac_cv_header_stdc=no
-fi
-rm -f conftest*
-
-fi
-
-if test $ac_cv_header_stdc = yes; then
-  # /bin/cc in Irix-4.0.5 gets non-ANSI ctype macros unless using -ansi.
-  if test "$cross_compiling" = yes; then :
-  :
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <ctype.h>
-#include <stdlib.h>
-#if ((' ' & 0x0FF) == 0x020)
-# define ISLOWER(c) ('a' <= (c) && (c) <= 'z')
-# define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c))
-#else
-# define ISLOWER(c) \
-                  (('a' <= (c) && (c) <= 'i') \
-                    || ('j' <= (c) && (c) <= 'r') \
-                    || ('s' <= (c) && (c) <= 'z'))
-# define TOUPPER(c) (ISLOWER(c) ? ((c) | 0x40) : (c))
-#endif
-
-#define XOR(e, f) (((e) && !(f)) || (!(e) && (f)))
-int
-main ()
-{
-  int i;
-  for (i = 0; i < 256; i++)
-    if (XOR (islower (i), ISLOWER (i))
-       || toupper (i) != TOUPPER (i))
-      return 2;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-  
-else
-  ac_cv_header_stdc=no
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-fi
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_stdc" >&5
-$as_echo "$ac_cv_header_stdc" >&6; }
-if test $ac_cv_header_stdc = yes; then
-  
-$as_echo "@%:@define STDC_HEADERS 1" >>confdefs.h
-
-fi
-
-# On IRIX 5.3, sys/types and inttypes.h are conflicting.
-for ac_header in sys/types.h sys/stat.h stdlib.h string.h memory.h strings.h \
-                 inttypes.h stdint.h unistd.h
-do :
-  as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
-ac_fn_c_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default
-"
-if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-@%:@define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
-fi
-
-done
-
-
-
-  ac_fn_c_check_header_mongrel "$LINENO" "minix/config.h" "ac_cv_header_minix_config_h" "$ac_includes_default"
-if test "x$ac_cv_header_minix_config_h" = xyes; then :
-  MINIX=yes
-else
-  MINIX=
-fi
-
-
-  if test "$MINIX" = yes; then
-    
-$as_echo "@%:@define _POSIX_SOURCE 1" >>confdefs.h
-
-    
-$as_echo "@%:@define _POSIX_1_SOURCE 2" >>confdefs.h
-
-    
-$as_echo "@%:@define _MINIX 1" >>confdefs.h
-
-  fi
-
-  
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether it is safe to define __EXTENSIONS__" >&5
-$as_echo_n "checking whether it is safe to define __EXTENSIONS__... " >&6; }
-if ${ac_cv_safe_to_define___extensions__+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#        define __EXTENSIONS__ 1
-         $ac_includes_default
-int
-main ()
-{
-
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_cv_safe_to_define___extensions__=yes
-else
-  ac_cv_safe_to_define___extensions__=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_safe_to_define___extensions__" >&5
-$as_echo "$ac_cv_safe_to_define___extensions__" >&6; }
-  test $ac_cv_safe_to_define___extensions__ = yes &&
-    $as_echo "@%:@define __EXTENSIONS__ 1" >>confdefs.h
-
-  $as_echo "@%:@define _ALL_SOURCE 1" >>confdefs.h
-
-  $as_echo "@%:@define _GNU_SOURCE 1" >>confdefs.h
-
-  $as_echo "@%:@define _POSIX_PTHREAD_SEMANTICS 1" >>confdefs.h
-
-  $as_echo "@%:@define _TANDEM_SOURCE 1" >>confdefs.h
-
-
-
-
-@%:@ Check whether --enable-largefile was given.
-if test "${enable_largefile+set}" = set; then :
-  enableval=$enable_largefile; 
-fi
-
-if test "$enable_largefile" != no; then
-
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for special C compiler options needed for large files" >&5
-$as_echo_n "checking for special C compiler options needed for large files... " >&6; }
-if ${ac_cv_sys_largefile_CC+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_cv_sys_largefile_CC=no
-     if test "$GCC" != yes; then
-       ac_save_CC=$CC
-       while :; do
-        # IRIX 6.2 and later do not support large files by default,
-        # so use the C compiler's -n32 option if that helps.
-        cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-@%:@include <sys/types.h>
- /* Check that off_t can represent 2**63 - 1 correctly.
-    We can't simply define LARGE_OFF_T to be 9223372036854775807,
-    since some C++ compilers masquerading as C compilers
-    incorrectly reject 9223372036854775807.  */
-@%:@define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62))
-  int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721
-                      && LARGE_OFF_T % 2147483647 == 1)
-                     ? 1 : -1];
-int
-main ()
-{
-
-  ;
-  return 0;
-}
-_ACEOF
-        if ac_fn_c_try_compile "$LINENO"; then :
-  break
-fi
-rm -f core conftest.err conftest.$ac_objext
-        CC="$CC -n32"
-        if ac_fn_c_try_compile "$LINENO"; then :
-  ac_cv_sys_largefile_CC=' -n32'; break
-fi
-rm -f core conftest.err conftest.$ac_objext
-        break
-       done
-       CC=$ac_save_CC
-       rm -f conftest.$ac_ext
-    fi
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sys_largefile_CC" >&5
-$as_echo "$ac_cv_sys_largefile_CC" >&6; }
-  if test "$ac_cv_sys_largefile_CC" != no; then
-    CC=$CC$ac_cv_sys_largefile_CC
-  fi
-
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for _FILE_OFFSET_BITS value needed for large files" >&5
-$as_echo_n "checking for _FILE_OFFSET_BITS value needed for large files... " >&6; }
-if ${ac_cv_sys_file_offset_bits+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  while :; do
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-@%:@include <sys/types.h>
- /* Check that off_t can represent 2**63 - 1 correctly.
-    We can't simply define LARGE_OFF_T to be 9223372036854775807,
-    since some C++ compilers masquerading as C compilers
-    incorrectly reject 9223372036854775807.  */
-@%:@define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62))
-  int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721
-                      && LARGE_OFF_T % 2147483647 == 1)
-                     ? 1 : -1];
-int
-main ()
-{
-
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_cv_sys_file_offset_bits=no; break
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-@%:@define _FILE_OFFSET_BITS 64
-@%:@include <sys/types.h>
- /* Check that off_t can represent 2**63 - 1 correctly.
-    We can't simply define LARGE_OFF_T to be 9223372036854775807,
-    since some C++ compilers masquerading as C compilers
-    incorrectly reject 9223372036854775807.  */
-@%:@define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62))
-  int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721
-                      && LARGE_OFF_T % 2147483647 == 1)
-                     ? 1 : -1];
-int
-main ()
-{
-
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_cv_sys_file_offset_bits=64; break
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  ac_cv_sys_file_offset_bits=unknown
-  break
-done
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sys_file_offset_bits" >&5
-$as_echo "$ac_cv_sys_file_offset_bits" >&6; }
-case $ac_cv_sys_file_offset_bits in #(
-  no | unknown) ;;
-  *) 
-cat >>confdefs.h <<_ACEOF
-@%:@define _FILE_OFFSET_BITS $ac_cv_sys_file_offset_bits
-_ACEOF
-;;
-esac
-rm -rf conftest*
-  if test $ac_cv_sys_file_offset_bits = unknown; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for _LARGE_FILES value needed for large files" >&5
-$as_echo_n "checking for _LARGE_FILES value needed for large files... " >&6; }
-if ${ac_cv_sys_large_files+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  while :; do
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-@%:@include <sys/types.h>
- /* Check that off_t can represent 2**63 - 1 correctly.
-    We can't simply define LARGE_OFF_T to be 9223372036854775807,
-    since some C++ compilers masquerading as C compilers
-    incorrectly reject 9223372036854775807.  */
-@%:@define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62))
-  int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721
-                      && LARGE_OFF_T % 2147483647 == 1)
-                     ? 1 : -1];
-int
-main ()
-{
-
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_cv_sys_large_files=no; break
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-@%:@define _LARGE_FILES 1
-@%:@include <sys/types.h>
- /* Check that off_t can represent 2**63 - 1 correctly.
-    We can't simply define LARGE_OFF_T to be 9223372036854775807,
-    since some C++ compilers masquerading as C compilers
-    incorrectly reject 9223372036854775807.  */
-@%:@define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62))
-  int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721
-                      && LARGE_OFF_T % 2147483647 == 1)
-                     ? 1 : -1];
-int
-main ()
-{
-
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_cv_sys_large_files=1; break
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  ac_cv_sys_large_files=unknown
-  break
-done
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sys_large_files" >&5
-$as_echo "$ac_cv_sys_large_files" >&6; }
-case $ac_cv_sys_large_files in #(
-  no | unknown) ;;
-  *) 
-cat >>confdefs.h <<_ACEOF
-@%:@define _LARGE_FILES $ac_cv_sys_large_files
-_ACEOF
-;;
-esac
-rm -rf conftest*
-  fi
-fi
-
-
-
-SIGNAMES_O=
-SIGNAMES_H=lsignames.h
-
-
-
-CROSS_COMPILE=
-if test "x$cross_compiling" = "xyes"; then
-    case "${host}" in
-    *-cygwin*)
-       cross_cache=${srcdir}/cross-build/cygwin32.cache
-       ;;
-    *-mingw*)
-       cross_cache=${srcdir}/cross-build/cygwin32.cache
-       ;;
-    i[3456]86-*-beos*)
-       cross_cache=${srcdir}/cross-build/x86-beos.cache
-       ;;
-    *) echo "configure: cross-compiling for $host is not supported" >&2
-       ;;
-    esac
-    if test -n "${cross_cache}" && test -r "${cross_cache}"; then
-       echo "loading cross-build cache file ${cross_cache}"
-       . ${cross_cache}
-    fi
-    unset cross_cache
-    SIGNAMES_O='signames.o'
-    CROSS_COMPILE='-DCROSS_COMPILING'
-    
-fi
-
-
-
-
-if test -z "$CFLAGS"; then
-       AUTO_CFLAGS="-g ${GCC+-O2}"
-       AUTO_LDFLAGS="-g ${GCC+-O2}"
-else
-       AUTO_CFLAGS= AUTO_LDFLAGS=
-fi
-
-CFLAGS=${CFLAGS-"$AUTO_CFLAGS"}
-# LDFLAGS=${LDFLAGS="$AUTO_LDFLAGS"}   # XXX
-
-if test "$opt_profiling" = "yes"; then
-       PROFILE_FLAGS=-pg
-       case "$host_os" in
-       solaris2*)      ;;
-       *)              opt_static_link=yes ;;
-       esac
-       DEBUG= MALLOC_DEBUG=
-fi
-
-prefer_shared=yes
-prefer_static=no
-
-if test "$opt_static_link" = yes; then
-       prefer_static=yes
-       prefer_shared=no
-       # if we're using gcc, add `-static' to LDFLAGS, except on Solaris >= 2
-       if test -n "$GCC" || test "$ac_cv_c_compiler_gnu" = "yes"; then
-               STATIC_LD="-static" 
-               case "$host_os" in
-               solaris2*)      ;;
-               *)              LDFLAGS="$LDFLAGS -static" ;;   # XXX experimental
-               esac
-       fi
-fi
-
-# set the appropriate make variables for building the "build tools"
-# modify defaults based on whether or not we are cross compiling, since the
-# options for the target host may not be appropriate for the build host
-if test "X$cross_compiling" = "Xno"; then
-       CC_FOR_BUILD=${CC_FOR_BUILD-'$(CC)'}
-       CPPFLAGS_FOR_BUILD=${CPPFLAGS_FOR_BUILD-"$CPPFLAGS"}    # XXX - should it be '$(CPPFLAGS)'
-       LDFLAGS_FOR_BUILD=${LDFLAGS_FOR_BUILD-'$(LDFLAGS)'}
-       # CFLAGS set above to default value if not passed in environment
-       CFLAGS_FOR_BUILD=${CFLAGS-'$(CFLAGS)'}
-       LIBS_FOR_BUILD=${LIBS_FOR_BUILD-'$(LIBS)'}
-else
-       CC_FOR_BUILD=${CC_FOR_BUILD-"gcc"}
-       CPPFLAGS_FOR_BUILD=${CPPFLAGS_FOR_BUILD-""}
-       LDFLAGS_FOR_BUILD=${LDFLAGS_FOR_BUILD-""}
-       CFLAGS_FOR_BUILD=${CFLAGS_FOR_BUILD="-g"}
-       LIBS_FOR_BUILD=${LIBS_FOR_BUILD-""}
-fi
-
-
-
-
-
-
-
-
-
-
-
-
-if test $ac_cv_c_compiler_gnu = yes; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC needs -traditional" >&5
-$as_echo_n "checking whether $CC needs -traditional... " >&6; }
-if ${ac_cv_prog_gcc_traditional+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-    ac_pattern="Autoconf.*'x'"
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <sgtty.h>
-Autoconf TIOCGETP
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "$ac_pattern" >/dev/null 2>&1; then :
-  ac_cv_prog_gcc_traditional=yes
-else
-  ac_cv_prog_gcc_traditional=no
-fi
-rm -f conftest*
-
-
-  if test $ac_cv_prog_gcc_traditional = no; then
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <termio.h>
-Autoconf TCGETA
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "$ac_pattern" >/dev/null 2>&1; then :
-  ac_cv_prog_gcc_traditional=yes
-fi
-rm -f conftest*
-
-  fi
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_gcc_traditional" >&5
-$as_echo "$ac_cv_prog_gcc_traditional" >&6; }
-  if test $ac_cv_prog_gcc_traditional = yes; then
-    CC="$CC -traditional"
-  fi
-fi
-
-
-
-if test "$opt_readline" = yes && test "$opt_with_installed_readline" != "no"
-then
-       # If the user specified --with-installed-readline=PREFIX and PREFIX
-       # is not `yes', set ac_cv_rl_prefix to PREFIX
-       test $opt_with_installed_readline != "yes" && ac_cv_rl_prefix=$opt_with_installed_readline
-
-       
-if test "X$bash_cv_termcap_lib" = "X"; then
-_bash_needmsg=yes
-else
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking which library has the termcap functions" >&5
-$as_echo_n "checking which library has the termcap functions... " >&6; }
-_bash_needmsg=
-fi
-if ${bash_cv_termcap_lib+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_fn_c_check_func "$LINENO" "tgetent" "ac_cv_func_tgetent"
-if test "x$ac_cv_func_tgetent" = xyes; then :
-  bash_cv_termcap_lib=libc
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for tgetent in -ltermcap" >&5
-$as_echo_n "checking for tgetent in -ltermcap... " >&6; }
-if ${ac_cv_lib_termcap_tgetent+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_check_lib_save_LIBS=$LIBS
-LIBS="-ltermcap  $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-/* Override any GCC internal prototype to avoid an error.
-   Use char because int might match the return type of a GCC
-   builtin and then its argument prototype would still apply.  */
-#ifdef __cplusplus
-extern "C"
-#endif
-char tgetent ();
-int
-main ()
-{
-return tgetent ();
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  ac_cv_lib_termcap_tgetent=yes
-else
-  ac_cv_lib_termcap_tgetent=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_termcap_tgetent" >&5
-$as_echo "$ac_cv_lib_termcap_tgetent" >&6; }
-if test "x$ac_cv_lib_termcap_tgetent" = xyes; then :
-  bash_cv_termcap_lib=libtermcap
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for tgetent in -ltinfo" >&5
-$as_echo_n "checking for tgetent in -ltinfo... " >&6; }
-if ${ac_cv_lib_tinfo_tgetent+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_check_lib_save_LIBS=$LIBS
-LIBS="-ltinfo  $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-/* Override any GCC internal prototype to avoid an error.
-   Use char because int might match the return type of a GCC
-   builtin and then its argument prototype would still apply.  */
-#ifdef __cplusplus
-extern "C"
-#endif
-char tgetent ();
-int
-main ()
-{
-return tgetent ();
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  ac_cv_lib_tinfo_tgetent=yes
-else
-  ac_cv_lib_tinfo_tgetent=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_tinfo_tgetent" >&5
-$as_echo "$ac_cv_lib_tinfo_tgetent" >&6; }
-if test "x$ac_cv_lib_tinfo_tgetent" = xyes; then :
-  bash_cv_termcap_lib=libtinfo
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for tgetent in -lcurses" >&5
-$as_echo_n "checking for tgetent in -lcurses... " >&6; }
-if ${ac_cv_lib_curses_tgetent+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_check_lib_save_LIBS=$LIBS
-LIBS="-lcurses  $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-/* Override any GCC internal prototype to avoid an error.
-   Use char because int might match the return type of a GCC
-   builtin and then its argument prototype would still apply.  */
-#ifdef __cplusplus
-extern "C"
-#endif
-char tgetent ();
-int
-main ()
-{
-return tgetent ();
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  ac_cv_lib_curses_tgetent=yes
-else
-  ac_cv_lib_curses_tgetent=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_curses_tgetent" >&5
-$as_echo "$ac_cv_lib_curses_tgetent" >&6; }
-if test "x$ac_cv_lib_curses_tgetent" = xyes; then :
-  bash_cv_termcap_lib=libcurses
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for tgetent in -lncurses" >&5
-$as_echo_n "checking for tgetent in -lncurses... " >&6; }
-if ${ac_cv_lib_ncurses_tgetent+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_check_lib_save_LIBS=$LIBS
-LIBS="-lncurses  $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-/* Override any GCC internal prototype to avoid an error.
-   Use char because int might match the return type of a GCC
-   builtin and then its argument prototype would still apply.  */
-#ifdef __cplusplus
-extern "C"
-#endif
-char tgetent ();
-int
-main ()
-{
-return tgetent ();
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  ac_cv_lib_ncurses_tgetent=yes
-else
-  ac_cv_lib_ncurses_tgetent=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_ncurses_tgetent" >&5
-$as_echo "$ac_cv_lib_ncurses_tgetent" >&6; }
-if test "x$ac_cv_lib_ncurses_tgetent" = xyes; then :
-  bash_cv_termcap_lib=libncurses
-else
-  bash_cv_termcap_lib=gnutermcap
-fi
-
-fi
-
-fi
-
-fi
-
-fi
-
-fi
-
-if test "X$_bash_needmsg" = "Xyes"; then
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking which library has the termcap functions" >&5
-$as_echo_n "checking which library has the termcap functions... " >&6; }
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: using $bash_cv_termcap_lib" >&5
-$as_echo "using $bash_cv_termcap_lib" >&6; }
-if test $bash_cv_termcap_lib = gnutermcap && test -z "$prefer_curses"; then
-LDFLAGS="$LDFLAGS -L./lib/termcap"
-TERMCAP_LIB="./lib/termcap/libtermcap.a"
-TERMCAP_DEP="./lib/termcap/libtermcap.a"
-elif test $bash_cv_termcap_lib = libtermcap && test -z "$prefer_curses"; then
-TERMCAP_LIB=-ltermcap
-TERMCAP_DEP=
-elif test $bash_cv_termcap_lib = libtinfo; then
-TERMCAP_LIB=-ltinfo
-TERMCAP_DEP=
-elif test $bash_cv_termcap_lib = libncurses; then
-TERMCAP_LIB=-lncurses
-TERMCAP_DEP=
-elif test $bash_cv_termcap_lib = libc; then
-TERMCAP_LIB=
-TERMCAP_DEP=
-else
-TERMCAP_LIB=-lcurses
-TERMCAP_DEP=
-fi
-
-
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking version of installed readline library" >&5
-$as_echo_n "checking version of installed readline library... " >&6; }
-
-# What a pain in the ass this is.
-
-# save cpp and ld options
-_save_CFLAGS="$CFLAGS"
-_save_LDFLAGS="$LDFLAGS"
-_save_LIBS="$LIBS"
-
-# Don't set ac_cv_rl_prefix if the caller has already assigned a value.  This
-# allows the caller to do something like $_rl_prefix=$withval if the user
-# specifies --with-installed-readline=PREFIX as an argument to configure
-
-if test -z "$ac_cv_rl_prefix"; then
-test "x$prefix" = xNONE && ac_cv_rl_prefix=$ac_default_prefix || ac_cv_rl_prefix=${prefix}
-fi
-
-eval ac_cv_rl_includedir=${ac_cv_rl_prefix}/include
-eval ac_cv_rl_libdir=${ac_cv_rl_prefix}/lib
-
-LIBS="$LIBS -lreadline ${TERMCAP_LIB}"
-CFLAGS="$CFLAGS -I${ac_cv_rl_includedir}"
-LDFLAGS="$LDFLAGS -L${ac_cv_rl_libdir}"
-
-if ${ac_cv_rl_version+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test "$cross_compiling" = yes; then :
-  ac_cv_rl_version='4.2'
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#include <stdio.h>
-#include <readline/readline.h>
-
-extern int rl_gnu_readline_p;
-
-main()
-{
-       FILE *fp;
-       fp = fopen("conftest.rlv", "w");
-       if (fp == 0)
-               exit(1);
-       if (rl_gnu_readline_p != 1)
-               fprintf(fp, "0.0\n");
-       else
-               fprintf(fp, "%s\n", rl_library_version ? rl_library_version : "0.0");
-       fclose(fp);
-       exit(0);
-}
-
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-  ac_cv_rl_version=`cat conftest.rlv`
-else
-  ac_cv_rl_version='0.0'
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-fi
-
-
-CFLAGS="$_save_CFLAGS"
-LDFLAGS="$_save_LDFLAGS"
-LIBS="$_save_LIBS"
-
-RL_MAJOR=0
-RL_MINOR=0
-
-# (
-case "$ac_cv_rl_version" in
-2*|3*|4*|5*|6*|7*|8*|9*)
-       RL_MAJOR=`echo $ac_cv_rl_version | sed 's:\..*$::'`
-       RL_MINOR=`echo $ac_cv_rl_version | sed -e 's:^.*\.::' -e 's:[a-zA-Z]*$::'`
-       ;;
-esac
-
-# (((
-case $RL_MAJOR in
-[0-9][0-9])    _RL_MAJOR=$RL_MAJOR ;;
-[0-9]) _RL_MAJOR=0$RL_MAJOR ;;
-*)             _RL_MAJOR=00 ;;
-esac
-
-# (((
-case $RL_MINOR in
-[0-9][0-9])    _RL_MINOR=$RL_MINOR ;;
-[0-9]) _RL_MINOR=0$RL_MINOR ;;
-*)             _RL_MINOR=00 ;;
-esac
-
-RL_VERSION="0x${_RL_MAJOR}${_RL_MINOR}"
-
-# Readline versions greater than 4.2 have these defines in readline.h
-
-if test $ac_cv_rl_version = '0.0' ; then
-       { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Could not test version of installed readline library." >&5
-$as_echo "$as_me: WARNING: Could not test version of installed readline library." >&2;}
-elif test $RL_MAJOR -gt 4 || { test $RL_MAJOR = 4 && test $RL_MINOR -gt 2 ; } ; then
-       # set these for use by the caller
-       RL_PREFIX=$ac_cv_rl_prefix
-       RL_LIBDIR=$ac_cv_rl_libdir
-       RL_INCLUDEDIR=$ac_cv_rl_includedir
-       { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_rl_version" >&5
-$as_echo "$ac_cv_rl_version" >&6; }
-else
-
-
-cat >>confdefs.h <<_ACEOF
-@%:@define RL_READLINE_VERSION $RL_VERSION
-_ACEOF
-
-
-cat >>confdefs.h <<_ACEOF
-@%:@define RL_VERSION_MAJOR $RL_MAJOR
-_ACEOF
-
-
-cat >>confdefs.h <<_ACEOF
-@%:@define RL_VERSION_MINOR $RL_MINOR
-_ACEOF
-
-
-
-
-
-
-# set these for use by the caller
-RL_PREFIX=$ac_cv_rl_prefix
-RL_LIBDIR=$ac_cv_rl_libdir
-RL_INCLUDEDIR=$ac_cv_rl_includedir
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_rl_version" >&5
-$as_echo "$ac_cv_rl_version" >&6; }
-
-fi
-
-
-       case "$ac_cv_rl_version" in
-       5*|6*|7*|8*|9*) ;;
-       *)      opt_with_installed_readline=no 
-               { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: installed readline library is too old to be linked with bash" >&5
-$as_echo "$as_me: WARNING: installed readline library is too old to be linked with bash" >&2;}
-               { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using private bash version" >&5
-$as_echo "$as_me: WARNING: using private bash version" >&2;}
-               ;;
-       esac
-fi
-
-TILDE_LIB=-ltilde
-if test $opt_readline = yes; then
-       $as_echo "@%:@define READLINE 1" >>confdefs.h
-
-       if test "$opt_with_installed_readline" != "no" ; then
-               case "$opt_with_installed_readline" in
-               yes)    RL_INCLUDE= ;;
-               *)      case "$RL_INCLUDEDIR" in
-                       /usr/include)   ;;
-                       *)              RL_INCLUDE='-I${RL_INCLUDEDIR}' ;;
-                       esac
-                       ;;
-               esac
-               READLINE_DEP=
-               READLINE_LIB=-lreadline
-               # section for OS versions that don't allow unresolved symbols
-               # to be compiled into dynamic libraries.
-               case "$host_os" in
-               cygwin*)        TILDE_LIB= ;;
-               esac
-       else
-               RL_LIBDIR='$(dot)/$(LIBSUBDIR)/readline'
-               READLINE_DEP='$(READLINE_LIBRARY)'
-               # section for OS versions that ship an older/broken version of
-               # readline as a standard dynamic library and don't allow a
-               # static version specified as -llibname to override the
-               # dynamic version
-               case "${host_os}" in
-               darwin[89]*|darwin10*) READLINE_LIB='${READLINE_LIBRARY}' ;;
-               *)              READLINE_LIB=-lreadline ;;
-               esac
-       fi
-else
-       RL_LIBDIR='$(dot)/$(LIBSUBDIR)/readline'
-       READLINE_LIB= READLINE_DEP=
-fi
-if test $opt_history = yes || test $opt_bang_history = yes; then
-       if test $opt_history = yes; then
-               $as_echo "@%:@define HISTORY 1" >>confdefs.h
-
-       fi
-       if test $opt_bang_history = yes; then
-               $as_echo "@%:@define BANG_HISTORY 1" >>confdefs.h
-
-       fi
-       if test "$opt_with_installed_readline" != "no"; then
-               HIST_LIBDIR=$RL_LIBDIR
-               HISTORY_DEP=
-               HISTORY_LIB=-lhistory
-               case "$opt_with_installed_readline" in
-               yes)    RL_INCLUDE= ;;
-               *)      case "$RL_INCLUDEDIR" in
-                       /usr/include)   ;;
-                       *)              RL_INCLUDE='-I${RL_INCLUDEDIR}' ;;
-                       esac
-                       ;;
-               esac
-       else
-               HIST_LIBDIR='$(dot)/$(LIBSUBDIR)/readline'
-               HISTORY_DEP='$(HISTORY_LIBRARY)'
-               # section for OS versions that ship an older version of
-               # readline as a standard dynamic library and don't allow a
-               # static version specified as -llibname to override the
-               # dynamic version
-               case "${host_os}" in
-               darwin[89]*|darwin10*) HISTORY_LIB='${HISTORY_LIBRARY}' ;;
-               *)              HISTORY_LIB=-lhistory ;;
-               esac
-       fi
-else
-       HIST_LIBDIR='$(dot)/$(LIBSUBDIR)/readline'
-       HISTORY_LIB= HISTORY_DEP=
-fi
-
-
-
-
-
-
-
-
-
-
-
-# Find a good install program.  We prefer a C program (faster),
-# so one script is as good as another.  But avoid the broken or
-# incompatible versions:
-# SysV /etc/install, /usr/sbin/install
-# SunOS /usr/etc/install
-# IRIX /sbin/install
-# AIX /bin/install
-# AmigaOS /C/install, which installs bootblocks on floppy discs
-# AIX 4 /usr/bin/installbsd, which doesn't work without a -g flag
-# AFS /usr/afsws/bin/install, which mishandles nonexistent args
-# SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff"
-# OS/2's system install, which has a completely different semantic
-# ./install, which can be erroneously created by make from ./install.sh.
-# Reject install programs that cannot install multiple files.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for a BSD-compatible install" >&5
-$as_echo_n "checking for a BSD-compatible install... " >&6; }
-if test -z "$INSTALL"; then
-if ${ac_cv_path_install+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    # Account for people who put trailing slashes in PATH elements.
-case $as_dir/ in @%:@((
-  ./ | .// | /[cC]/* | \
-  /etc/* | /usr/sbin/* | /usr/etc/* | /sbin/* | /usr/afsws/bin/* | \
-  ?:[\\/]os2[\\/]install[\\/]* | ?:[\\/]OS2[\\/]INSTALL[\\/]* | \
-  /usr/ucb/* ) ;;
-  *)
-    # OSF1 and SCO ODT 3.0 have their own names for install.
-    # Don't use installbsd from OSF since it installs stuff as root
-    # by default.
-    for ac_prog in ginstall scoinst install; do
-      for ac_exec_ext in '' $ac_executable_extensions; do
-       if { test -f "$as_dir/$ac_prog$ac_exec_ext" && $as_test_x "$as_dir/$ac_prog$ac_exec_ext"; }; then
-         if test $ac_prog = install &&
-           grep dspmsg "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then
-           # AIX install.  It has an incompatible calling convention.
-           :
-         elif test $ac_prog = install &&
-           grep pwplus "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then
-           # program-specific install script used by HP pwplus--don't use.
-           :
-         else
-           rm -rf conftest.one conftest.two conftest.dir
-           echo one > conftest.one
-           echo two > conftest.two
-           mkdir conftest.dir
-           if "$as_dir/$ac_prog$ac_exec_ext" -c conftest.one conftest.two "`pwd`/conftest.dir" &&
-             test -s conftest.one && test -s conftest.two &&
-             test -s conftest.dir/conftest.one &&
-             test -s conftest.dir/conftest.two
-           then
-             ac_cv_path_install="$as_dir/$ac_prog$ac_exec_ext -c"
-             break 3
-           fi
-         fi
-       fi
-      done
-    done
-    ;;
-esac
-
-  done
-IFS=$as_save_IFS
-
-rm -rf conftest.one conftest.two conftest.dir
-
-fi
-  if test "${ac_cv_path_install+set}" = set; then
-    INSTALL=$ac_cv_path_install
-  else
-    # As a last resort, use the slow shell script.  Don't cache a
-    # value for INSTALL within a source directory, because that will
-    # break other packages using the cache if that directory is
-    # removed, or if the value is a relative name.
-    INSTALL=$ac_install_sh
-  fi
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $INSTALL" >&5
-$as_echo "$INSTALL" >&6; }
-
-# Use test -z because SunOS4 sh mishandles braces in ${var-val}.
-# It thinks the first close brace ends the variable substitution.
-test -z "$INSTALL_PROGRAM" && INSTALL_PROGRAM='${INSTALL}'
-
-test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL}'
-
-test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
-
-if test -n "$ac_tool_prefix"; then
-  # Extract the first word of "${ac_tool_prefix}ar", so it can be a program name with args.
-set dummy ${ac_tool_prefix}ar; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_AR+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test -n "$AR"; then
-  ac_cv_prog_AR="$AR" # 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 { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_prog_AR="${ac_tool_prefix}ar"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-fi
-fi
-AR=$ac_cv_prog_AR
-if test -n "$AR"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $AR" >&5
-$as_echo "$AR" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-fi
-if test -z "$ac_cv_prog_AR"; then
-  ac_ct_AR=$AR
-  # Extract the first word of "ar", so it can be a program name with args.
-set dummy ar; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_AR+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test -n "$ac_ct_AR"; then
-  ac_cv_prog_ac_ct_AR="$ac_ct_AR" # 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 { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_prog_ac_ct_AR="ar"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-fi
-fi
-ac_ct_AR=$ac_cv_prog_ac_ct_AR
-if test -n "$ac_ct_AR"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_AR" >&5
-$as_echo "$ac_ct_AR" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-  if test "x$ac_ct_AR" = x; then
-    AR=""
-  else
-    case $cross_compiling:$ac_tool_warned in
-yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
-ac_tool_warned=yes ;;
-esac
-    AR=$ac_ct_AR
-  fi
-else
-  AR="$ac_cv_prog_AR"
-fi
-
-test -n "$ARFLAGS" || ARFLAGS="cr"
-if test -n "$ac_tool_prefix"; then
-  # Extract the first word of "${ac_tool_prefix}ranlib", so it can be a program name with args.
-set dummy ${ac_tool_prefix}ranlib; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_RANLIB+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test -n "$RANLIB"; then
-  ac_cv_prog_RANLIB="$RANLIB" # 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 { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_prog_RANLIB="${ac_tool_prefix}ranlib"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-fi
-fi
-RANLIB=$ac_cv_prog_RANLIB
-if test -n "$RANLIB"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $RANLIB" >&5
-$as_echo "$RANLIB" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-fi
-if test -z "$ac_cv_prog_RANLIB"; then
-  ac_ct_RANLIB=$RANLIB
-  # Extract the first word of "ranlib", so it can be a program name with args.
-set dummy ranlib; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_RANLIB+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test -n "$ac_ct_RANLIB"; then
-  ac_cv_prog_ac_ct_RANLIB="$ac_ct_RANLIB" # 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 { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_prog_ac_ct_RANLIB="ranlib"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-fi
-fi
-ac_ct_RANLIB=$ac_cv_prog_ac_ct_RANLIB
-if test -n "$ac_ct_RANLIB"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_RANLIB" >&5
-$as_echo "$ac_ct_RANLIB" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-  if test "x$ac_ct_RANLIB" = x; then
-    RANLIB=":"
-  else
-    case $cross_compiling:$ac_tool_warned in
-yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
-ac_tool_warned=yes ;;
-esac
-    RANLIB=$ac_ct_RANLIB
-  fi
-else
-  RANLIB="$ac_cv_prog_RANLIB"
-fi
-
-for ac_prog in 'bison -y' byacc
-do
-  # Extract the first word of "$ac_prog", so it can be a program name with args.
-set dummy $ac_prog; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_YACC+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test -n "$YACC"; then
-  ac_cv_prog_YACC="$YACC" # 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 { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_prog_YACC="$ac_prog"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-fi
-fi
-YACC=$ac_cv_prog_YACC
-if test -n "$YACC"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $YACC" >&5
-$as_echo "$YACC" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-  test -n "$YACC" && break
-done
-test -n "$YACC" || YACC="yacc"
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ${MAKE-make} sets \$(MAKE)" >&5
-$as_echo_n "checking whether ${MAKE-make} sets \$(MAKE)... " >&6; }
-set x ${MAKE-make}
-ac_make=`$as_echo "$2" | sed 's/+/p/g; s/[^a-zA-Z0-9_]/_/g'`
-if eval \${ac_cv_prog_make_${ac_make}_set+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat >conftest.make <<\_ACEOF
-SHELL = /bin/sh
-all:
-       @echo '@@@%%%=$(MAKE)=@@@%%%'
-_ACEOF
-# GNU make sometimes prints "make[1]: Entering ...", which would confuse us.
-case `${MAKE-make} -f conftest.make 2>/dev/null` in
-  *@@@%%%=?*=@@@%%%*)
-    eval ac_cv_prog_make_${ac_make}_set=yes;;
-  *)
-    eval ac_cv_prog_make_${ac_make}_set=no;;
-esac
-rm -f conftest.make
-fi
-if eval test \$ac_cv_prog_make_${ac_make}_set = yes; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-  SET_MAKE=
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-  SET_MAKE="MAKE=${MAKE-make}"
-fi
-
-
-case "$host_os" in
-opennt*|interix*)      MAKE_SHELL="$INTERIX_ROOT/bin/sh" ;;
-*)                     MAKE_SHELL=/bin/sh ;;
-esac
-
-
-if test x$SIZE = x; then
-       if test x$ac_tool_prefix = x; then
-               SIZE=size
-       else
-               SIZE=${ac_tool_prefix}size
-               save_IFS=$IFS ; IFS=:
-               size_found=0
-               for dir in $PATH; do
-                       if test -x $dir/$SIZE ; then
-                               size_found=1
-                               break
-                       fi
-               done
-               if test $size_found -eq 0; then
-                       SIZE=:
-               fi
-               IFS=$save_IFS
-       fi
-fi
-
-
-# Checks for stat-related time functions.
-
-# Copyright (C) 1998-1999, 2001, 2003, 2005-2007, 2009-2012 Free Software
-# Foundation, Inc.
-
-# This file is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-
-# st_atim.tv_nsec - Linux, Solaris, Cygwin
-# st_atimespec.tv_nsec - FreeBSD, NetBSD, if ! defined _POSIX_SOURCE
-# st_atimensec - FreeBSD, NetBSD, if defined _POSIX_SOURCE
-# st_atim.st__tim.tv_nsec - UnixWare (at least 2.1.2 through 7.1)
-
-# st_birthtimespec - FreeBSD, NetBSD (hidden on OpenBSD 3.9, anyway)
-# st_birthtim - Cygwin 1.7.0+
-
-
-
-# Configure checks for struct timespec
-
-# Copyright (C) 2000-2001, 2003-2007, 2009-2011, 2012 Free Software Foundation, Inc.
-
-# This file is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# Original written by Paul Eggert and Jim Meyering.
-# Modified by Chet Ramey for bash
-
-
-
-
-
-$as_echo "@%:@define _GNU_SOURCE 1" >>confdefs.h
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for an ANSI C-conforming const" >&5
-$as_echo_n "checking for an ANSI C-conforming const... " >&6; }
-if ${ac_cv_c_const+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-int
-main ()
-{
-/* FIXME: Include the comments suggested by Paul. */
-#ifndef __cplusplus
-  /* Ultrix mips cc rejects this.  */
-  typedef int charset[2];
-  const charset cs;
-  /* SunOS 4.1.1 cc rejects this.  */
-  char const *const *pcpcc;
-  char **ppc;
-  /* NEC SVR4.0.2 mips cc rejects this.  */
-  struct point {int x, y;};
-  static struct point const zero = {0,0};
-  /* AIX XL C 1.02.0.0 rejects this.
-     It does not let you subtract one const X* pointer from another in
-     an arm of an if-expression whose if-part is not a constant
-     expression */
-  const char *g = "string";
-  pcpcc = &g + (g ? g-g : 0);
-  /* HPUX 7.0 cc rejects these. */
-  ++pcpcc;
-  ppc = (char**) pcpcc;
-  pcpcc = (char const *const *) ppc;
-  { /* SCO 3.2v4 cc rejects this.  */
-    char *t;
-    char const *s = 0 ? (char *) 0 : (char const *) 0;
-
-    *t++ = 0;
-    if (s) return 0;
-  }
-  { /* Someone thinks the Sun supposedly-ANSI compiler will reject this.  */
-    int x[] = {25, 17};
-    const int *foo = &x[0];
-    ++foo;
-  }
-  { /* Sun SC1.0 ANSI compiler rejects this -- but not the above. */
-    typedef const int *iptr;
-    iptr p = 0;
-    ++p;
-  }
-  { /* AIX XL C 1.02.0.0 rejects this saying
-       "k.c", line 2.27: 1506-025 (S) Operand must be a modifiable lvalue. */
-    struct s { int j; const int *ap[3]; };
-    struct s *b; b->j = 5;
-  }
-  { /* ULTRIX-32 V3.1 (Rev 9) vcc rejects this */
-    const int foo = 10;
-    if (!foo) return 0;
-  }
-  return !cs[0] && !zero.x;
-#endif
-
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_cv_c_const=yes
-else
-  ac_cv_c_const=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_const" >&5
-$as_echo "$ac_cv_c_const" >&6; }
-if test $ac_cv_c_const = no; then
-  
-$as_echo "@%:@define const /**/" >>confdefs.h
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for inline" >&5
-$as_echo_n "checking for inline... " >&6; }
-if ${ac_cv_c_inline+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_cv_c_inline=no
-for ac_kw in inline __inline__ __inline; do
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#ifndef __cplusplus
-typedef int foo_t;
-static $ac_kw foo_t static_foo () {return 0; }
-$ac_kw foo_t foo () {return 0; }
-#endif
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_cv_c_inline=$ac_kw
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  test "$ac_cv_c_inline" != no && break
-done
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_inline" >&5
-$as_echo "$ac_cv_c_inline" >&6; }
-
-case $ac_cv_c_inline in
-  inline | yes) ;;
-  *)
-    case $ac_cv_c_inline in
-      no) ac_val=;;
-      *) ac_val=$ac_cv_c_inline;;
-    esac
-    cat >>confdefs.h <<_ACEOF
-#ifndef __cplusplus
-#define inline $ac_val
-#endif
-_ACEOF
-    ;;
-esac
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether byte ordering is bigendian" >&5
-$as_echo_n "checking whether byte ordering is bigendian... " >&6; }
-if ${ac_cv_c_bigendian+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_cv_c_bigendian=unknown
-    # See if we're dealing with a universal compiler.
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#ifndef __APPLE_CC__
-              not a universal capable compiler
-            #endif
-            typedef int dummy;
-           
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  
-       # Check for potential -arch flags.  It is not universal unless
-       # there are at least two -arch flags with different values.
-       ac_arch=
-       ac_prev=
-       for ac_word in $CC $CFLAGS $CPPFLAGS $LDFLAGS; do
-        if test -n "$ac_prev"; then
-          case $ac_word in
-            i?86 | x86_64 | ppc | ppc64)
-              if test -z "$ac_arch" || test "$ac_arch" = "$ac_word"; then
-                ac_arch=$ac_word
-              else
-                ac_cv_c_bigendian=universal
-                break
-              fi
-              ;;
-          esac
-          ac_prev=
-        elif test "x$ac_word" = "x-arch"; then
-          ac_prev=arch
-        fi
-       done
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-    if test $ac_cv_c_bigendian = unknown; then
-      # See if sys/param.h defines the BYTE_ORDER macro.
-      cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <sys/types.h>
-            #include <sys/param.h>
-          
-int
-main ()
-{
-#if ! (defined BYTE_ORDER && defined BIG_ENDIAN \
-                    && defined LITTLE_ENDIAN && BYTE_ORDER && BIG_ENDIAN \
-                    && LITTLE_ENDIAN)
-             bogus endian macros
-            #endif
-          
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  # It does; now see whether it defined to BIG_ENDIAN or not.
-        cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <sys/types.h>
-               #include <sys/param.h>
-             
-int
-main ()
-{
-#if BYTE_ORDER != BIG_ENDIAN
-                not big endian
-               #endif
-             
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_cv_c_bigendian=yes
-else
-  ac_cv_c_bigendian=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-    fi
-    if test $ac_cv_c_bigendian = unknown; then
-      # See if <limits.h> defines _LITTLE_ENDIAN or _BIG_ENDIAN (e.g., Solaris).
-      cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <limits.h>
-          
-int
-main ()
-{
-#if ! (defined _LITTLE_ENDIAN || defined _BIG_ENDIAN)
-             bogus endian macros
-            #endif
-          
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  # It does; now see whether it defined to _BIG_ENDIAN or not.
-        cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <limits.h>
-             
-int
-main ()
-{
-#ifndef _BIG_ENDIAN
-                not big endian
-               #endif
-             
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_cv_c_bigendian=yes
-else
-  ac_cv_c_bigendian=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-    fi
-    if test $ac_cv_c_bigendian = unknown; then
-      # Compile a test program.
-      if test "$cross_compiling" = yes; then :
-  # Try to guess by grepping values from an object file.
-        cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-short int ascii_mm[] =
-                 { 0x4249, 0x4765, 0x6E44, 0x6961, 0x6E53, 0x7953, 0 };
-               short int ascii_ii[] =
-                 { 0x694C, 0x5454, 0x656C, 0x6E45, 0x6944, 0x6E61, 0 };
-               int use_ascii (int i) {
-                 return ascii_mm[i] + ascii_ii[i];
-               }
-               short int ebcdic_ii[] =
-                 { 0x89D3, 0xE3E3, 0x8593, 0x95C5, 0x89C4, 0x9581, 0 };
-               short int ebcdic_mm[] =
-                 { 0xC2C9, 0xC785, 0x95C4, 0x8981, 0x95E2, 0xA8E2, 0 };
-               int use_ebcdic (int i) {
-                 return ebcdic_mm[i] + ebcdic_ii[i];
-               }
-               extern int foo;
-             
-int
-main ()
-{
-return use_ascii (foo) == use_ebcdic (foo);
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  if grep BIGenDianSyS conftest.$ac_objext >/dev/null; then
-             ac_cv_c_bigendian=yes
-           fi
-           if grep LiTTleEnDian conftest.$ac_objext >/dev/null ; then
-             if test "$ac_cv_c_bigendian" = unknown; then
-               ac_cv_c_bigendian=no
-             else
-               # finding both strings is unlikely to happen, but who knows?
-               ac_cv_c_bigendian=unknown
-             fi
-           fi
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-$ac_includes_default
-int
-main ()
-{
-
-            /* Are we little or big endian?  From Harbison&Steele.  */
-            union
-            {
-              long int l;
-              char c[sizeof (long int)];
-            } u;
-            u.l = 1;
-            return u.c[sizeof (long int) - 1] == 1;
-          
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-  ac_cv_c_bigendian=no
-else
-  ac_cv_c_bigendian=yes
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-    fi
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_bigendian" >&5
-$as_echo "$ac_cv_c_bigendian" >&6; }
- case $ac_cv_c_bigendian in #(
-   yes)
-     $as_echo "@%:@define WORDS_BIGENDIAN 1" >>confdefs.h
-;; #(
-   no)
-      ;; #(
-   universal)
-       
-$as_echo "@%:@define AC_APPLE_UNIVERSAL_BUILD 1" >>confdefs.h
-
-     ;; #(
-   *)
-     as_fn_error $? "unknown endianness
- presetting ac_cv_c_bigendian=no (or yes) will help" "$LINENO" 5 ;;
- esac
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for preprocessor stringizing operator" >&5
-$as_echo_n "checking for preprocessor stringizing operator... " >&6; }
-if ${ac_cv_c_stringize+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-@%:@define x(y) #y
-
-char *s = x(teststring);
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "@%:@teststring" >/dev/null 2>&1; then :
-  ac_cv_c_stringize=no
-else
-  ac_cv_c_stringize=yes
-fi
-rm -f conftest*
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_stringize" >&5
-$as_echo "$ac_cv_c_stringize" >&6; }
-if test $ac_cv_c_stringize = yes; then
-  
-$as_echo "@%:@define HAVE_STRINGIZE 1" >>confdefs.h
-
-fi
-
-
-    
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for long double with more range or precision than double" >&5
-$as_echo_n "checking for long double with more range or precision than double... " >&6; }
-if ${ac_cv_type_long_double_wider+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <float.h>
-           long double const a[] =
-             {
-                0.0L, DBL_MIN, DBL_MAX, DBL_EPSILON,
-                LDBL_MIN, LDBL_MAX, LDBL_EPSILON
-             };
-           long double
-           f (long double x)
-           {
-              return ((x + (unsigned long int) 10) * (-1 / x) + a[0]
-                       + (x ? f (x) : 'c'));
-           }
-         
-int
-main ()
-{
-static int test_array @<:@1 - 2 * !((0 < ((DBL_MAX_EXP < LDBL_MAX_EXP)
-                  + (DBL_MANT_DIG < LDBL_MANT_DIG)
-                  - (LDBL_MAX_EXP < DBL_MAX_EXP)
-                  - (LDBL_MANT_DIG < DBL_MANT_DIG)))
-           && (int) LDBL_EPSILON == 0
-         )@:>@;
-test_array @<:@0@:>@ = 0
-
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_cv_type_long_double_wider=yes
-else
-  ac_cv_type_long_double_wider=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_type_long_double_wider" >&5
-$as_echo "$ac_cv_type_long_double_wider" >&6; }
-  if test $ac_cv_type_long_double_wider = yes; then
-    
-$as_echo "@%:@define HAVE_LONG_DOUBLE_WIDER 1" >>confdefs.h
-
-  fi
-
-    ac_cv_c_long_double=$ac_cv_type_long_double_wider
-    if test $ac_cv_c_long_double = yes; then
-      
-$as_echo "@%:@define HAVE_LONG_DOUBLE 1" >>confdefs.h
-
-    fi
-  
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for function prototypes" >&5
-$as_echo_n "checking for function prototypes... " >&6; }
-if test "$ac_cv_prog_cc_c89" != no; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-  
-$as_echo "@%:@define PROTOTYPES 1" >>confdefs.h
-
-  
-$as_echo "@%:@define __PROTOTYPES 1" >>confdefs.h
-
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether char is unsigned" >&5
-$as_echo_n "checking whether char is unsigned... " >&6; }
-if ${ac_cv_c_char_unsigned+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-$ac_includes_default
-int
-main ()
-{
-static int test_array @<:@1 - 2 * !(((char) -1) < 0)@:>@;
-test_array @<:@0@:>@ = 0
-
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_cv_c_char_unsigned=no
-else
-  ac_cv_c_char_unsigned=yes
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_char_unsigned" >&5
-$as_echo "$ac_cv_c_char_unsigned" >&6; }
-if test $ac_cv_c_char_unsigned = yes && test "$GCC" != yes; then
-  $as_echo "@%:@define __CHAR_UNSIGNED__ 1" >>confdefs.h
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for working volatile" >&5
-$as_echo_n "checking for working volatile... " >&6; }
-if ${ac_cv_c_volatile+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-int
-main ()
-{
-
-volatile int x;
-int * volatile y = (int *) 0;
-return !x && !y;
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_cv_c_volatile=yes
-else
-  ac_cv_c_volatile=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_volatile" >&5
-$as_echo "$ac_cv_c_volatile" >&6; }
-if test $ac_cv_c_volatile = no; then
-  
-$as_echo "@%:@define volatile /**/" >>confdefs.h
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for C/C++ restrict keyword" >&5
-$as_echo_n "checking for C/C++ restrict keyword... " >&6; }
-if ${ac_cv_c_restrict+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_cv_c_restrict=no
-   # The order here caters to the fact that C++ does not require restrict.
-   for ac_kw in __restrict __restrict__ _Restrict restrict; do
-     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-typedef int * int_ptr;
-       int foo (int_ptr $ac_kw ip) {
-       return ip[0];
-       }
-int
-main ()
-{
-int s[1];
-       int * $ac_kw t = s;
-       t[0] = 0;
-       return foo(t)
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_cv_c_restrict=$ac_kw
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-     test "$ac_cv_c_restrict" != no && break
-   done
-  
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_restrict" >&5
-$as_echo "$ac_cv_c_restrict" >&6; }
- case $ac_cv_c_restrict in
-   restrict) ;;
-   no) $as_echo "@%:@define restrict /**/" >>confdefs.h
- ;;
-   *)  cat >>confdefs.h <<_ACEOF
-@%:@define restrict $ac_cv_c_restrict
-_ACEOF
- ;;
- esac
-
-
-
-        MKINSTALLDIRS=
-  if test -n "$ac_aux_dir"; then
-    case "$ac_aux_dir" in
-      /*) MKINSTALLDIRS="$ac_aux_dir/mkinstalldirs" ;;
-      *) MKINSTALLDIRS="\$(top_builddir)/$ac_aux_dir/mkinstalldirs" ;;
-    esac
-  fi
-  if test -z "$MKINSTALLDIRS"; then
-    MKINSTALLDIRS="\$(top_srcdir)/mkinstalldirs"
-  fi
-  
-
-
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether NLS is requested" >&5
-$as_echo_n "checking whether NLS is requested... " >&6; }
-    @%:@ Check whether --enable-nls was given.
-if test "${enable_nls+set}" = set; then :
-  enableval=$enable_nls; USE_NLS=$enableval
-else
-  USE_NLS=yes
-fi
-
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $USE_NLS" >&5
-$as_echo "$USE_NLS" >&6; }
-  
-
-
-        
-    
-        
-# Prepare PATH_SEPARATOR.
-# The user is always right.
-if test "${PATH_SEPARATOR+set}" != set; then
-  echo "#! /bin/sh" >conf$$.sh
-  echo  "exit 0"   >>conf$$.sh
-  chmod +x conf$$.sh
-  if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then
-    PATH_SEPARATOR=';'
-  else
-    PATH_SEPARATOR=:
-  fi
-  rm -f conf$$.sh
-fi
-
-# Find out how to test for executable files. Don't use a zero-byte file,
-# as systems may use methods other than mode bits to determine executability.
-cat >conf$$.file <<_ASEOF
-#! /bin/sh
-exit 0
-_ASEOF
-chmod +x conf$$.file
-if test -x conf$$.file >/dev/null 2>&1; then
-  ac_executable_p="test -x"
-else
-  ac_executable_p="test -f"
-fi
-rm -f conf$$.file
-
-# Extract the first word of "msgfmt", so it can be a program name with args.
-set dummy msgfmt; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_MSGFMT+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  case "$MSGFMT" in
-  [\\/]* | ?:[\\/]*)
-    ac_cv_path_MSGFMT="$MSGFMT" # Let the user override the test with a path.
-    ;;
-  *)
-    ac_save_IFS="$IFS"; IFS=$PATH_SEPARATOR
-    for ac_dir in $PATH; do
-      IFS="$ac_save_IFS"
-      test -z "$ac_dir" && ac_dir=.
-      for ac_exec_ext in '' $ac_executable_extensions; do
-        if $ac_executable_p "$ac_dir/$ac_word$ac_exec_ext"; then
-          if $ac_dir/$ac_word --statistics /dev/null >/dev/null 2>&1 &&
-     (if $ac_dir/$ac_word --statistics /dev/null 2>&1 >/dev/null | grep usage >/dev/null; then exit 1; else exit 0; fi); then
-            ac_cv_path_MSGFMT="$ac_dir/$ac_word$ac_exec_ext"
-            break 2
-          fi
-        fi
-      done
-    done
-    IFS="$ac_save_IFS"
-  test -z "$ac_cv_path_MSGFMT" && ac_cv_path_MSGFMT=":"
-    ;;
-esac
-fi
-MSGFMT="$ac_cv_path_MSGFMT"
-if test "$MSGFMT" != ":"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MSGFMT" >&5
-$as_echo "$MSGFMT" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-  # Extract the first word of "gmsgfmt", so it can be a program name with args.
-set dummy gmsgfmt; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_GMSGFMT+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  case $GMSGFMT in
-  [\\/]* | ?:[\\/]*)
-  ac_cv_path_GMSGFMT="$GMSGFMT" # 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 { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_path_GMSGFMT="$as_dir/$ac_word$ac_exec_ext"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-  test -z "$ac_cv_path_GMSGFMT" && ac_cv_path_GMSGFMT="$MSGFMT"
-  ;;
-esac
-fi
-GMSGFMT=$ac_cv_path_GMSGFMT
-if test -n "$GMSGFMT"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $GMSGFMT" >&5
-$as_echo "$GMSGFMT" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-
-        
-# Prepare PATH_SEPARATOR.
-# The user is always right.
-if test "${PATH_SEPARATOR+set}" != set; then
-  echo "#! /bin/sh" >conf$$.sh
-  echo  "exit 0"   >>conf$$.sh
-  chmod +x conf$$.sh
-  if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then
-    PATH_SEPARATOR=';'
-  else
-    PATH_SEPARATOR=:
-  fi
-  rm -f conf$$.sh
-fi
-
-# Find out how to test for executable files. Don't use a zero-byte file,
-# as systems may use methods other than mode bits to determine executability.
-cat >conf$$.file <<_ASEOF
-#! /bin/sh
-exit 0
-_ASEOF
-chmod +x conf$$.file
-if test -x conf$$.file >/dev/null 2>&1; then
-  ac_executable_p="test -x"
-else
-  ac_executable_p="test -f"
-fi
-rm -f conf$$.file
-
-# Extract the first word of "xgettext", so it can be a program name with args.
-set dummy xgettext; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_XGETTEXT+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  case "$XGETTEXT" in
-  [\\/]* | ?:[\\/]*)
-    ac_cv_path_XGETTEXT="$XGETTEXT" # Let the user override the test with a path.
-    ;;
-  *)
-    ac_save_IFS="$IFS"; IFS=$PATH_SEPARATOR
-    for ac_dir in $PATH; do
-      IFS="$ac_save_IFS"
-      test -z "$ac_dir" && ac_dir=.
-      for ac_exec_ext in '' $ac_executable_extensions; do
-        if $ac_executable_p "$ac_dir/$ac_word$ac_exec_ext"; then
-          if $ac_dir/$ac_word --omit-header --copyright-holder= --msgid-bugs-address= /dev/null >/dev/null 2>&1 &&
-     (if $ac_dir/$ac_word --omit-header --copyright-holder= --msgid-bugs-address= /dev/null 2>&1 >/dev/null | grep usage >/dev/null; then exit 1; else exit 0; fi); then
-            ac_cv_path_XGETTEXT="$ac_dir/$ac_word$ac_exec_ext"
-            break 2
-          fi
-        fi
-      done
-    done
-    IFS="$ac_save_IFS"
-  test -z "$ac_cv_path_XGETTEXT" && ac_cv_path_XGETTEXT=":"
-    ;;
-esac
-fi
-XGETTEXT="$ac_cv_path_XGETTEXT"
-if test "$XGETTEXT" != ":"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $XGETTEXT" >&5
-$as_echo "$XGETTEXT" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-    rm -f messages.po
-
-    
-# Prepare PATH_SEPARATOR.
-# The user is always right.
-if test "${PATH_SEPARATOR+set}" != set; then
-  echo "#! /bin/sh" >conf$$.sh
-  echo  "exit 0"   >>conf$$.sh
-  chmod +x conf$$.sh
-  if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then
-    PATH_SEPARATOR=';'
-  else
-    PATH_SEPARATOR=:
-  fi
-  rm -f conf$$.sh
-fi
-
-# Find out how to test for executable files. Don't use a zero-byte file,
-# as systems may use methods other than mode bits to determine executability.
-cat >conf$$.file <<_ASEOF
-#! /bin/sh
-exit 0
-_ASEOF
-chmod +x conf$$.file
-if test -x conf$$.file >/dev/null 2>&1; then
-  ac_executable_p="test -x"
-else
-  ac_executable_p="test -f"
-fi
-rm -f conf$$.file
-
-# Extract the first word of "msgmerge", so it can be a program name with args.
-set dummy msgmerge; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_MSGMERGE+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  case "$MSGMERGE" in
-  [\\/]* | ?:[\\/]*)
-    ac_cv_path_MSGMERGE="$MSGMERGE" # Let the user override the test with a path.
-    ;;
-  *)
-    ac_save_IFS="$IFS"; IFS=$PATH_SEPARATOR
-    for ac_dir in $PATH; do
-      IFS="$ac_save_IFS"
-      test -z "$ac_dir" && ac_dir=.
-      for ac_exec_ext in '' $ac_executable_extensions; do
-        if $ac_executable_p "$ac_dir/$ac_word$ac_exec_ext"; then
-          if $ac_dir/$ac_word --update -q /dev/null /dev/null >/dev/null 2>&1; then
-            ac_cv_path_MSGMERGE="$ac_dir/$ac_word$ac_exec_ext"
-            break 2
-          fi
-        fi
-      done
-    done
-    IFS="$ac_save_IFS"
-  test -z "$ac_cv_path_MSGMERGE" && ac_cv_path_MSGMERGE=":"
-    ;;
-esac
-fi
-MSGMERGE="$ac_cv_path_MSGMERGE"
-if test "$MSGMERGE" != ":"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MSGMERGE" >&5
-$as_echo "$MSGMERGE" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-      if test "$GMSGFMT" != ":"; then
-            if $GMSGFMT --statistics /dev/null >/dev/null 2>&1 &&
-       (if $GMSGFMT --statistics /dev/null 2>&1 >/dev/null | grep usage >/dev/null; then exit 1; else exit 0; fi); then
-      : ;
-    else
-      GMSGFMT=`echo "$GMSGFMT" | sed -e 's,^.*/,,'`
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: found $GMSGFMT program is not GNU msgfmt; ignore it" >&5
-$as_echo "found $GMSGFMT program is not GNU msgfmt; ignore it" >&6; }
-      GMSGFMT=":"
-    fi
-  fi
-
-      if test "$XGETTEXT" != ":"; then
-            if $XGETTEXT --omit-header --copyright-holder= --msgid-bugs-address= /dev/null >/dev/null 2>&1 &&
-       (if $XGETTEXT --omit-header --copyright-holder= --msgid-bugs-address= /dev/null 2>&1 >/dev/null | grep usage >/dev/null; then exit 1; else exit 0; fi); then
-      : ;
-    else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: found xgettext program is not GNU xgettext; ignore it" >&5
-$as_echo "found xgettext program is not GNU xgettext; ignore it" >&6; }
-      XGETTEXT=":"
-    fi
-        rm -f messages.po
-  fi
-
-  ac_config_commands="$ac_config_commands default-1"
-
-
-ac_fn_c_check_type "$LINENO" "off_t" "ac_cv_type_off_t" "$ac_includes_default"
-if test "x$ac_cv_type_off_t" = xyes; then :
-  
-else
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define off_t long int
-_ACEOF
-
-fi
-
-ac_fn_c_check_type "$LINENO" "size_t" "ac_cv_type_size_t" "$ac_includes_default"
-if test "x$ac_cv_type_size_t" = xyes; then :
-  
-else
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define size_t unsigned int
-_ACEOF
-
-fi
-
-# The Ultrix 4.2 mips builtin alloca declared by alloca.h only works
-# for constant arguments.  Useless!
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for working alloca.h" >&5
-$as_echo_n "checking for working alloca.h... " >&6; }
-if ${ac_cv_working_alloca_h+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-@%:@include <alloca.h>
-int
-main ()
-{
-char *p = (char *) alloca (2 * sizeof (int));
-                         if (p) return 0;
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  ac_cv_working_alloca_h=yes
-else
-  ac_cv_working_alloca_h=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_working_alloca_h" >&5
-$as_echo "$ac_cv_working_alloca_h" >&6; }
-if test $ac_cv_working_alloca_h = yes; then
-  
-$as_echo "@%:@define HAVE_ALLOCA_H 1" >>confdefs.h
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for alloca" >&5
-$as_echo_n "checking for alloca... " >&6; }
-if ${ac_cv_func_alloca_works+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#ifdef __GNUC__
-# define alloca __builtin_alloca
-#else
-# ifdef _MSC_VER
-#  include <malloc.h>
-#  define alloca _alloca
-# else
-#  ifdef HAVE_ALLOCA_H
-#   include <alloca.h>
-#  else
-#   ifdef _AIX
- #pragma alloca
-#   else
-#    ifndef alloca /* predefined by HP cc +Olibcalls */
-void *alloca (size_t);
-#    endif
-#   endif
-#  endif
-# endif
-#endif
-
-int
-main ()
-{
-char *p = (char *) alloca (1);
-                                   if (p) return 0;
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  ac_cv_func_alloca_works=yes
-else
-  ac_cv_func_alloca_works=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_func_alloca_works" >&5
-$as_echo "$ac_cv_func_alloca_works" >&6; }
-
-if test $ac_cv_func_alloca_works = yes; then
-  
-$as_echo "@%:@define HAVE_ALLOCA 1" >>confdefs.h
-
-else
-  # The SVR3 libPW and SVR4 libucb both contain incompatible functions
-# that cause trouble.  Some versions do not even contain alloca or
-# contain a buggy version.  If you still want to use their alloca,
-# use ar to extract alloca.o from them instead of compiling alloca.c.
-
-ALLOCA=\${LIBOBJDIR}alloca.$ac_objext
-
-$as_echo "@%:@define C_ALLOCA 1" >>confdefs.h
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether \`alloca.c' needs Cray hooks" >&5
-$as_echo_n "checking whether \`alloca.c' needs Cray hooks... " >&6; }
-if ${ac_cv_os_cray+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#if defined CRAY && ! defined CRAY2
-webecray
-#else
-wenotbecray
-#endif
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "webecray" >/dev/null 2>&1; then :
-  ac_cv_os_cray=yes
-else
-  ac_cv_os_cray=no
-fi
-rm -f conftest*
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_os_cray" >&5
-$as_echo "$ac_cv_os_cray" >&6; }
-if test $ac_cv_os_cray = yes; then
-  for ac_func in _getb67 GETB67 getb67; do
-    as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
-ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
-if eval test \"x\$"$as_ac_var"\" = x"yes"; then :
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define CRAY_STACKSEG_END $ac_func
-_ACEOF
-
-    break
-fi
-
-  done
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking stack direction for C alloca" >&5
-$as_echo_n "checking stack direction for C alloca... " >&6; }
-if ${ac_cv_c_stack_direction+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test "$cross_compiling" = yes; then :
-  ac_cv_c_stack_direction=0
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-$ac_includes_default
-int
-find_stack_direction ()
-{
-  static char *addr = 0;
-  auto char dummy;
-  if (addr == 0)
-    {
-      addr = &dummy;
-      return find_stack_direction ();
-    }
-  else
-    return (&dummy > addr) ? 1 : -1;
-}
-
-int
-main ()
-{
-  return find_stack_direction () < 0;
-}
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-  ac_cv_c_stack_direction=1
-else
-  ac_cv_c_stack_direction=-1
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_stack_direction" >&5
-$as_echo "$ac_cv_c_stack_direction" >&6; }
-cat >>confdefs.h <<_ACEOF
-@%:@define STACK_DIRECTION $ac_cv_c_stack_direction
-_ACEOF
-
-
-fi
-
-
-
-  
-  for ac_header in $ac_header_list
-do :
-  as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
-ac_fn_c_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default
-"
-if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-@%:@define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
-fi
-
-done
-
-  
-
-
-
-
-
-
-for ac_func in getpagesize
-do :
-  ac_fn_c_check_func "$LINENO" "getpagesize" "ac_cv_func_getpagesize"
-if test "x$ac_cv_func_getpagesize" = xyes; then :
-  cat >>confdefs.h <<_ACEOF
-@%:@define HAVE_GETPAGESIZE 1
-_ACEOF
-fi
-done
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for working mmap" >&5
-$as_echo_n "checking for working mmap... " >&6; }
-if ${ac_cv_func_mmap_fixed_mapped+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test "$cross_compiling" = yes; then :
-  ac_cv_func_mmap_fixed_mapped=no
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-$ac_includes_default
-/* malloc might have been renamed as rpl_malloc. */
-#undef malloc
-
-/* Thanks to Mike Haertel and Jim Avera for this test.
-   Here is a matrix of mmap possibilities:
-       mmap private not fixed
-       mmap private fixed at somewhere currently unmapped
-       mmap private fixed at somewhere already mapped
-       mmap shared not fixed
-       mmap shared fixed at somewhere currently unmapped
-       mmap shared fixed at somewhere already mapped
-   For private mappings, we should verify that changes cannot be read()
-   back from the file, nor mmap's back from the file at a different
-   address.  (There have been systems where private was not correctly
-   implemented like the infamous i386 svr4.0, and systems where the
-   VM page cache was not coherent with the file system buffer cache
-   like early versions of FreeBSD and possibly contemporary NetBSD.)
-   For shared mappings, we should conversely verify that changes get
-   propagated back to all the places they're supposed to be.
-
-   Grep wants private fixed already mapped.
-   The main things grep needs to know about mmap are:
-   * does it exist and is it safe to write into the mmap'd area
-   * how to use it (BSD variants)  */
-
-#include <fcntl.h>
-#include <sys/mman.h>
-
-#if !defined STDC_HEADERS && !defined HAVE_STDLIB_H
-char *malloc ();
-#endif
-
-/* This mess was copied from the GNU getpagesize.h.  */
-#ifndef HAVE_GETPAGESIZE
-# ifdef _SC_PAGESIZE
-#  define getpagesize() sysconf(_SC_PAGESIZE)
-# else /* no _SC_PAGESIZE */
-#  ifdef HAVE_SYS_PARAM_H
-#   include <sys/param.h>
-#   ifdef EXEC_PAGESIZE
-#    define getpagesize() EXEC_PAGESIZE
-#   else /* no EXEC_PAGESIZE */
-#    ifdef NBPG
-#     define getpagesize() NBPG * CLSIZE
-#     ifndef CLSIZE
-#      define CLSIZE 1
-#     endif /* no CLSIZE */
-#    else /* no NBPG */
-#     ifdef NBPC
-#      define getpagesize() NBPC
-#     else /* no NBPC */
-#      ifdef PAGESIZE
-#       define getpagesize() PAGESIZE
-#      endif /* PAGESIZE */
-#     endif /* no NBPC */
-#    endif /* no NBPG */
-#   endif /* no EXEC_PAGESIZE */
-#  else /* no HAVE_SYS_PARAM_H */
-#   define getpagesize() 8192  /* punt totally */
-#  endif /* no HAVE_SYS_PARAM_H */
-# endif /* no _SC_PAGESIZE */
-
-#endif /* no HAVE_GETPAGESIZE */
-
-int
-main ()
-{
-  char *data, *data2, *data3;
-  const char *cdata2;
-  int i, pagesize;
-  int fd, fd2;
-
-  pagesize = getpagesize ();
-
-  /* First, make a file with some known garbage in it. */
-  data = (char *) malloc (pagesize);
-  if (!data)
-    return 1;
-  for (i = 0; i < pagesize; ++i)
-    *(data + i) = rand ();
-  umask (0);
-  fd = creat ("conftest.mmap", 0600);
-  if (fd < 0)
-    return 2;
-  if (write (fd, data, pagesize) != pagesize)
-    return 3;
-  close (fd);
-
-  /* Next, check that the tail of a page is zero-filled.  File must have
-     non-zero length, otherwise we risk SIGBUS for entire page.  */
-  fd2 = open ("conftest.txt", O_RDWR | O_CREAT | O_TRUNC, 0600);
-  if (fd2 < 0)
-    return 4;
-  cdata2 = "";
-  if (write (fd2, cdata2, 1) != 1)
-    return 5;
-  data2 = (char *) mmap (0, pagesize, PROT_READ | PROT_WRITE, MAP_SHARED, fd2, 0L);
-  if (data2 == MAP_FAILED)
-    return 6;
-  for (i = 0; i < pagesize; ++i)
-    if (*(data2 + i))
-      return 7;
-  close (fd2);
-  if (munmap (data2, pagesize))
-    return 8;
-
-  /* Next, try to mmap the file at a fixed address which already has
-     something else allocated at it.  If we can, also make sure that
-     we see the same garbage.  */
-  fd = open ("conftest.mmap", O_RDWR);
-  if (fd < 0)
-    return 9;
-  if (data2 != mmap (data2, pagesize, PROT_READ | PROT_WRITE,
-                    MAP_PRIVATE | MAP_FIXED, fd, 0L))
-    return 10;
-  for (i = 0; i < pagesize; ++i)
-    if (*(data + i) != *(data2 + i))
-      return 11;
-
-  /* Finally, make sure that changes to the mapped area do not
-     percolate back to the file as seen by read().  (This is a bug on
-     some variants of i386 svr4.0.)  */
-  for (i = 0; i < pagesize; ++i)
-    *(data2 + i) = *(data2 + i) + 1;
-  data3 = (char *) malloc (pagesize);
-  if (!data3)
-    return 12;
-  if (read (fd, data3, pagesize) != pagesize)
-    return 13;
-  for (i = 0; i < pagesize; ++i)
-    if (*(data + i) != *(data3 + i))
-      return 14;
-  close (fd);
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-  ac_cv_func_mmap_fixed_mapped=yes
-else
-  ac_cv_func_mmap_fixed_mapped=no
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_func_mmap_fixed_mapped" >&5
-$as_echo "$ac_cv_func_mmap_fixed_mapped" >&6; }
-if test $ac_cv_func_mmap_fixed_mapped = yes; then
-  
-$as_echo "@%:@define HAVE_MMAP 1" >>confdefs.h
-
-fi
-rm -f conftest.mmap conftest.txt
-
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are using the GNU C Library 2.1 or newer" >&5
-$as_echo_n "checking whether we are using the GNU C Library 2.1 or newer... " >&6; }
-if ${ac_cv_gnu_library_2_1+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#include <features.h>
-#ifdef __GNU_LIBRARY__
- #if (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 1) || (__GLIBC__ > 2)
-  Lucky GNU user
- #endif
-#endif
-       
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "Lucky GNU user" >/dev/null 2>&1; then :
-  ac_cv_gnu_library_2_1=yes
-else
-  ac_cv_gnu_library_2_1=no
-fi
-rm -f conftest*
-
-      
-    
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_gnu_library_2_1" >&5
-$as_echo "$ac_cv_gnu_library_2_1" >&6; }
-    
-    GLIBC21="$ac_cv_gnu_library_2_1"
-  
-
-
-    
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether integer division by zero raises SIGFPE" >&5
-$as_echo_n "checking whether integer division by zero raises SIGFPE... " >&6; }
-if ${gt_cv_int_divbyzero_sigfpe+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  
-      if test "$cross_compiling" = yes; then :
-  
-          # Guess based on the CPU.
-          case "$host_cpu" in
-            alpha* | i3456786 | m68k | s390*)
-              gt_cv_int_divbyzero_sigfpe="guessing yes";;
-            *)
-              gt_cv_int_divbyzero_sigfpe="guessing no";;
-          esac
-        
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#include <stdlib.h>
-#include <signal.h>
-
-static void
-#ifdef __cplusplus
-sigfpe_handler (int sig)
-#else
-sigfpe_handler (sig) int sig;
-#endif
-{
-  /* Exit with code 0 if SIGFPE, with code 1 if any other signal.  */
-  exit (sig != SIGFPE);
-}
-
-int x = 1;
-int y = 0;
-int z;
-int nan;
-
-int main ()
-{
-  signal (SIGFPE, sigfpe_handler);
-/* IRIX and AIX (when "xlc -qcheck" is used) yield signal SIGTRAP.  */
-#if (defined (__sgi) || defined (_AIX)) && defined (SIGTRAP)
-  signal (SIGTRAP, sigfpe_handler);
-#endif
-/* Linux/SPARC yields signal SIGILL.  */
-#if defined (__sparc__) && defined (__linux__)
-  signal (SIGILL, sigfpe_handler);
-#endif
-
-  z = x / y;
-  nan = y / y;
-  exit (1);
-}
-
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-  gt_cv_int_divbyzero_sigfpe=yes
-else
-  gt_cv_int_divbyzero_sigfpe=no
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-    
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gt_cv_int_divbyzero_sigfpe" >&5
-$as_echo "$gt_cv_int_divbyzero_sigfpe" >&6; }
-  case "$gt_cv_int_divbyzero_sigfpe" in
-    *yes) value=1;;
-    *) value=0;;
-  esac
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define INTDIV0_RAISES_SIGFPE $value
-_ACEOF
-
-
-
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for inttypes.h" >&5
-$as_echo_n "checking for inttypes.h... " >&6; }
-if ${jm_ac_cv_header_inttypes_h+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <sys/types.h>
-#include <inttypes.h>
-int
-main ()
-{
-uintmax_t i = (uintmax_t) -1;
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  jm_ac_cv_header_inttypes_h=yes
-else
-  jm_ac_cv_header_inttypes_h=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $jm_ac_cv_header_inttypes_h" >&5
-$as_echo "$jm_ac_cv_header_inttypes_h" >&6; }
-  if test $jm_ac_cv_header_inttypes_h = yes; then
-    
-cat >>confdefs.h <<_ACEOF
-@%:@define HAVE_INTTYPES_H_WITH_UINTMAX 1
-_ACEOF
-
-  fi
-
-
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdint.h" >&5
-$as_echo_n "checking for stdint.h... " >&6; }
-if ${jm_ac_cv_header_stdint_h+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <sys/types.h>
-#include <stdint.h>
-int
-main ()
-{
-uintmax_t i = (uintmax_t) -1;
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  jm_ac_cv_header_stdint_h=yes
-else
-  jm_ac_cv_header_stdint_h=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $jm_ac_cv_header_stdint_h" >&5
-$as_echo "$jm_ac_cv_header_stdint_h" >&6; }
-  if test $jm_ac_cv_header_stdint_h = yes; then
-    
-cat >>confdefs.h <<_ACEOF
-@%:@define HAVE_STDINT_H_WITH_UINTMAX 1
-_ACEOF
-
-  fi
-
-
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for unsigned long long" >&5
-$as_echo_n "checking for unsigned long long... " >&6; }
-if ${ac_cv_type_unsigned_long_long+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-unsigned long long ull = 1; int i = 63;
-int
-main ()
-{
-unsigned long long ullmax = (unsigned long long) -1;
-     return ull << i | ull >> i | ullmax / ull | ullmax % ull;
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  ac_cv_type_unsigned_long_long=yes
-else
-  ac_cv_type_unsigned_long_long=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_type_unsigned_long_long" >&5
-$as_echo "$ac_cv_type_unsigned_long_long" >&6; }
-  if test $ac_cv_type_unsigned_long_long = yes; then
-    
-$as_echo "@%:@define HAVE_UNSIGNED_LONG_LONG 1" >>confdefs.h
-
-  fi
-
-
-  
-  
-  if test $jm_ac_cv_header_inttypes_h = no && test $jm_ac_cv_header_stdint_h = no; then
-    
-    test $ac_cv_type_unsigned_long_long = yes \
-      && ac_type='unsigned long long' \
-      || ac_type='unsigned long'
-    
-cat >>confdefs.h <<_ACEOF
-@%:@define uintmax_t $ac_type
-_ACEOF
-
-  else
-    
-$as_echo "@%:@define HAVE_UINTMAX_T 1" >>confdefs.h
-
-  fi
-
-
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for inttypes.h" >&5
-$as_echo_n "checking for inttypes.h... " >&6; }
-if ${gt_cv_header_inttypes_h+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <sys/types.h>
-#include <inttypes.h>
-int
-main ()
-{
-
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  gt_cv_header_inttypes_h=yes
-else
-  gt_cv_header_inttypes_h=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gt_cv_header_inttypes_h" >&5
-$as_echo "$gt_cv_header_inttypes_h" >&6; }
-  if test $gt_cv_header_inttypes_h = yes; then
-    
-cat >>confdefs.h <<_ACEOF
-@%:@define HAVE_INTTYPES_H 1
-_ACEOF
-
-  fi
-
-
-  
-  if test $gt_cv_header_inttypes_h = yes; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the inttypes.h PRIxNN macros are broken" >&5
-$as_echo_n "checking whether the inttypes.h PRIxNN macros are broken... " >&6; }
-if ${gt_cv_inttypes_pri_broken+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  
-        cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <inttypes.h>
-#ifdef PRId32
-char *p = PRId32;
-#endif
-
-int
-main ()
-{
-
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  gt_cv_inttypes_pri_broken=no
-else
-  gt_cv_inttypes_pri_broken=yes
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-      
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gt_cv_inttypes_pri_broken" >&5
-$as_echo "$gt_cv_inttypes_pri_broken" >&6; }
-  fi
-  if test "$gt_cv_inttypes_pri_broken" = yes; then
-    
-cat >>confdefs.h <<_ACEOF
-@%:@define PRI_MACROS_BROKEN 1
-_ACEOF
-
-  fi
-
-
-      if test "X$prefix" = "XNONE"; then
-    acl_final_prefix="$ac_default_prefix"
-  else
-    acl_final_prefix="$prefix"
-  fi
-  if test "X$exec_prefix" = "XNONE"; then
-    acl_final_exec_prefix='${prefix}'
-  else
-    acl_final_exec_prefix="$exec_prefix"
-  fi
-  acl_save_prefix="$prefix"
-  prefix="$acl_final_prefix"
-  eval acl_final_exec_prefix=\"$acl_final_exec_prefix\"
-  prefix="$acl_save_prefix"
-
-
-@%:@ Check whether --with-gnu-ld was given.
-if test "${with_gnu_ld+set}" = set; then :
-  withval=$with_gnu_ld; test "$withval" = no || with_gnu_ld=yes
-else
-  with_gnu_ld=no
-fi
-
-# Prepare PATH_SEPARATOR.
-# The user is always right.
-if test "${PATH_SEPARATOR+set}" != set; then
-  echo "#! /bin/sh" >conf$$.sh
-  echo  "exit 0"   >>conf$$.sh
-  chmod +x conf$$.sh
-  if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then
-    PATH_SEPARATOR=';'
-  else
-    PATH_SEPARATOR=:
-  fi
-  rm -f conf$$.sh
-fi
-ac_prog=ld
-if test "$GCC" = yes; then
-  # Check if gcc -print-prog-name=ld gives a path.
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ld used by GCC" >&5
-$as_echo_n "checking for ld used by GCC... " >&6; }
-  case $host in
-  *-*-mingw*)
-    # gcc leaves a trailing carriage return which upsets mingw
-    ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;;
-  *)
-    ac_prog=`($CC -print-prog-name=ld) 2>&5` ;;
-  esac
-  case $ac_prog in
-    # Accept absolute paths.
-    [\\/]* | [A-Za-z]:[\\/]*)
-      re_direlt='/[^/][^/]*/\.\./'
-      # Canonicalize the path of ld
-      ac_prog=`echo $ac_prog| sed 's%\\\\%/%g'`
-      while echo $ac_prog | grep "$re_direlt" > /dev/null 2>&1; do
-       ac_prog=`echo $ac_prog| sed "s%$re_direlt%/%"`
-      done
-      test -z "$LD" && LD="$ac_prog"
-      ;;
-  "")
-    # If it fails, then pretend we aren't using GCC.
-    ac_prog=ld
-    ;;
-  *)
-    # If it is relative, then search for the first ld in PATH.
-    with_gnu_ld=unknown
-    ;;
-  esac
-elif test "$with_gnu_ld" = yes; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for GNU ld" >&5
-$as_echo_n "checking for GNU ld... " >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for non-GNU ld" >&5
-$as_echo_n "checking for non-GNU ld... " >&6; }
-fi
-if ${acl_cv_path_LD+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test -z "$LD"; then
-  IFS="${IFS=  }"; ac_save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR-:}"
-  for ac_dir in $PATH; do
-    test -z "$ac_dir" && ac_dir=.
-    if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then
-      acl_cv_path_LD="$ac_dir/$ac_prog"
-      # Check to see if the program is GNU ld.  I'd rather use --version,
-      # but apparently some GNU ld's only accept -v.
-      # Break only if it was the GNU/non-GNU ld that we prefer.
-      if "$acl_cv_path_LD" -v 2>&1 < /dev/null | egrep '(GNU|with BFD)' > /dev/null; then
-       test "$with_gnu_ld" != no && break
-      else
-       test "$with_gnu_ld" != yes && break
-      fi
-    fi
-  done
-  IFS="$ac_save_ifs"
-else
-  acl_cv_path_LD="$LD" # Let the user override the test with a path.
-fi
-fi
-
-LD="$acl_cv_path_LD"
-if test -n "$LD"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LD" >&5
-$as_echo "$LD" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-test -z "$LD" && as_fn_error $? "no acceptable ld found in \$PATH" "$LINENO" 5
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if the linker ($LD) is GNU ld" >&5
-$as_echo_n "checking if the linker ($LD) is GNU ld... " >&6; }
-if ${acl_cv_prog_gnu_ld+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  # I'd rather use --version here, but apparently some GNU ld's only accept -v.
-if $LD -v 2>&1 </dev/null | egrep '(GNU|with BFD)' 1>&5; then
-  acl_cv_prog_gnu_ld=yes
-else
-  acl_cv_prog_gnu_ld=no
-fi
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $acl_cv_prog_gnu_ld" >&5
-$as_echo "$acl_cv_prog_gnu_ld" >&6; }
-with_gnu_ld=$acl_cv_prog_gnu_ld
-
-
-
-                                                { $as_echo "$as_me:${as_lineno-$LINENO}: checking for shared library run path origin" >&5
-$as_echo_n "checking for shared library run path origin... " >&6; }
-if ${acl_cv_rpath+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  
-    CC="$CC" GCC="$GCC" LDFLAGS="$LDFLAGS" LD="$LD" with_gnu_ld="$with_gnu_ld" \
-    ${CONFIG_SHELL-/bin/sh} "$ac_aux_dir/config.rpath" "$host" > conftest.sh
-    . ./conftest.sh
-    rm -f ./conftest.sh
-    acl_cv_rpath=done
-  
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $acl_cv_rpath" >&5
-$as_echo "$acl_cv_rpath" >&6; }
-  wl="$acl_cv_wl"
-  libext="$acl_cv_libext"
-  shlibext="$acl_cv_shlibext"
-  hardcode_libdir_flag_spec="$acl_cv_hardcode_libdir_flag_spec"
-  hardcode_libdir_separator="$acl_cv_hardcode_libdir_separator"
-  hardcode_direct="$acl_cv_hardcode_direct"
-  hardcode_minus_L="$acl_cv_hardcode_minus_L"
-    @%:@ Check whether --enable-rpath was given.
-if test "${enable_rpath+set}" = set; then :
-  enableval=$enable_rpath; :
-else
-  enable_rpath=yes
-fi
-
-
-
-    
-  
-
-      
-  
-    use_additional=yes
-  
-  acl_save_prefix="$prefix"
-  prefix="$acl_final_prefix"
-  acl_save_exec_prefix="$exec_prefix"
-  exec_prefix="$acl_final_exec_prefix"
-  
-    eval additional_includedir=\"$includedir\"
-    eval additional_libdir=\"$libdir\"
-  
-  exec_prefix="$acl_save_exec_prefix"
-  prefix="$acl_save_prefix"
-
-  
-@%:@ Check whether --with-libiconv-prefix was given.
-if test "${with_libiconv_prefix+set}" = set; then :
-  withval=$with_libiconv_prefix; 
-    if test "X$withval" = "Xno"; then
-      use_additional=no
-    else
-      if test "X$withval" = "X"; then
-        
-  acl_save_prefix="$prefix"
-  prefix="$acl_final_prefix"
-  acl_save_exec_prefix="$exec_prefix"
-  exec_prefix="$acl_final_exec_prefix"
-  
-          eval additional_includedir=\"$includedir\"
-          eval additional_libdir=\"$libdir\"
-        
-  exec_prefix="$acl_save_exec_prefix"
-  prefix="$acl_save_prefix"
-
-      else
-        additional_includedir="$withval/include"
-        additional_libdir="$withval/lib"
-      fi
-    fi
-
-fi
-
-      LIBICONV=
-  LTLIBICONV=
-  INCICONV=
-  rpathdirs=
-  ltrpathdirs=
-  names_already_handled=
-  names_next_round='iconv '
-  while test -n "$names_next_round"; do
-    names_this_round="$names_next_round"
-    names_next_round=
-    for name in $names_this_round; do
-      already_handled=
-      for n in $names_already_handled; do
-        if test "$n" = "$name"; then
-          already_handled=yes
-          break
-        fi
-      done
-      if test -z "$already_handled"; then
-        names_already_handled="$names_already_handled $name"
-                        uppername=`echo "$name" | sed -e 'y|abcdefghijklmnopqrstuvwxyz./-|ABCDEFGHIJKLMNOPQRSTUVWXYZ___|'`
-        eval value=\"\$HAVE_LIB$uppername\"
-        if test -n "$value"; then
-          if test "$value" = yes; then
-            eval value=\"\$LIB$uppername\"
-            test -z "$value" || LIBICONV="${LIBICONV}${LIBICONV:+ }$value"
-            eval value=\"\$LTLIB$uppername\"
-            test -z "$value" || LTLIBICONV="${LTLIBICONV}${LTLIBICONV:+ }$value"
-          else
-                                    :
-          fi
-        else
-                              found_dir=
-          found_la=
-          found_so=
-          found_a=
-          if test $use_additional = yes; then
-            if test "X$prefer_shared" = "Xyes" && test -n "$shlibext" && test -f "$additional_libdir/lib$name.$shlibext"; then
-              found_dir="$additional_libdir"
-              found_so="$additional_libdir/lib$name.$shlibext"
-              if test -f "$additional_libdir/lib$name.la"; then
-                found_la="$additional_libdir/lib$name.la"
-              fi
-            else
-              if test -f "$additional_libdir/lib$name.$libext"; then
-                found_dir="$additional_libdir"
-                found_a="$additional_libdir/lib$name.$libext"
-                if test -f "$additional_libdir/lib$name.la"; then
-                  found_la="$additional_libdir/lib$name.la"
-                fi
-              fi
-            fi
-          fi
-          if test "X$found_dir" = "X"; then
-            for x in $LDFLAGS $LTLIBICONV; do
-              
-  acl_save_prefix="$prefix"
-  prefix="$acl_final_prefix"
-  acl_save_exec_prefix="$exec_prefix"
-  exec_prefix="$acl_final_exec_prefix"
-  eval x=\"$x\"
-  exec_prefix="$acl_save_exec_prefix"
-  prefix="$acl_save_prefix"
-
-              case "$x" in
-                -L*)
-                  dir=`echo "X$x" | sed -e 's/^X-L//'`
-                  if test "X$prefer_shared" = "Xyes" && test -n "$shlibext" && test -f "$dir/lib$name.$shlibext"; then
-                    found_dir="$dir"
-                    found_so="$dir/lib$name.$shlibext"
-                    if test -f "$dir/lib$name.la"; then
-                      found_la="$dir/lib$name.la"
-                    fi
-                  else
-                    if test -f "$dir/lib$name.$libext"; then
-                      found_dir="$dir"
-                      found_a="$dir/lib$name.$libext"
-                      if test -f "$dir/lib$name.la"; then
-                        found_la="$dir/lib$name.la"
-                      fi
-                    fi
-                  fi
-                  ;;
-              esac
-              if test "X$found_dir" != "X"; then
-                break
-              fi
-            done
-          fi
-          if test "X$found_dir" != "X"; then
-                        LTLIBICONV="${LTLIBICONV}${LTLIBICONV:+ }-L$found_dir -l$name"
-            if test "X$found_so" != "X"; then
-                                                        if test "$enable_rpath" = no || test "X$found_dir" = "X/usr/lib"; then
-                                LIBICONV="${LIBICONV}${LIBICONV:+ }$found_so"
-              else
-                                                                                haveit=
-                for x in $ltrpathdirs; do
-                  if test "X$x" = "X$found_dir"; then
-                    haveit=yes
-                    break
-                  fi
-                done
-                if test -z "$haveit"; then
-                  ltrpathdirs="$ltrpathdirs $found_dir"
-                fi
-                                if test "$hardcode_direct" = yes; then
-                                                      LIBICONV="${LIBICONV}${LIBICONV:+ }$found_so"
-                else
-                  if test -n "$hardcode_libdir_flag_spec" && test "$hardcode_minus_L" = no; then
-                                                            LIBICONV="${LIBICONV}${LIBICONV:+ }$found_so"
-                                                            haveit=
-                    for x in $rpathdirs; do
-                      if test "X$x" = "X$found_dir"; then
-                        haveit=yes
-                        break
-                      fi
-                    done
-                    if test -z "$haveit"; then
-                      rpathdirs="$rpathdirs $found_dir"
-                    fi
-                  else
-                                                                                haveit=
-                    for x in $LDFLAGS $LIBICONV; do
-                      
-  acl_save_prefix="$prefix"
-  prefix="$acl_final_prefix"
-  acl_save_exec_prefix="$exec_prefix"
-  exec_prefix="$acl_final_exec_prefix"
-  eval x=\"$x\"
-  exec_prefix="$acl_save_exec_prefix"
-  prefix="$acl_save_prefix"
-
-                      if test "X$x" = "X-L$found_dir"; then
-                        haveit=yes
-                        break
-                      fi
-                    done
-                    if test -z "$haveit"; then
-                      LIBICONV="${LIBICONV}${LIBICONV:+ }-L$found_dir"
-                    fi
-                    if test "$hardcode_minus_L" != no; then
-                                                                                        LIBICONV="${LIBICONV}${LIBICONV:+ }$found_so"
-                    else
-                                                                                                                                                                                LIBICONV="${LIBICONV}${LIBICONV:+ }-l$name"
-                    fi
-                  fi
-                fi
-              fi
-            else
-              if test "X$found_a" != "X"; then
-                                LIBICONV="${LIBICONV}${LIBICONV:+ }$found_a"
-              else
-                                                LIBICONV="${LIBICONV}${LIBICONV:+ }-L$found_dir -l$name"
-              fi
-            fi
-                        additional_includedir=
-            case "$found_dir" in
-              */lib | */lib/)
-                basedir=`echo "X$found_dir" | sed -e 's,^X,,' -e 's,/lib/*$,,'`
-                additional_includedir="$basedir/include"
-                ;;
-            esac
-            if test "X$additional_includedir" != "X"; then
-                                                                                                                if test "X$additional_includedir" != "X/usr/include"; then
-                haveit=
-                if test "X$additional_includedir" = "X/usr/local/include"; then
-                  if test -n "$GCC"; then
-                    case $host_os in
-                      linux*) haveit=yes;;
-                    esac
-                  fi
-                fi
-                if test -z "$haveit"; then
-                  for x in $CPPFLAGS $INCICONV; do
-                    
-  acl_save_prefix="$prefix"
-  prefix="$acl_final_prefix"
-  acl_save_exec_prefix="$exec_prefix"
-  exec_prefix="$acl_final_exec_prefix"
-  eval x=\"$x\"
-  exec_prefix="$acl_save_exec_prefix"
-  prefix="$acl_save_prefix"
-
-                    if test "X$x" = "X-I$additional_includedir"; then
-                      haveit=yes
-                      break
-                    fi
-                  done
-                  if test -z "$haveit"; then
-                    if test -d "$additional_includedir"; then
-                                            INCICONV="${INCICONV}${INCICONV:+ }-I$additional_includedir"
-                    fi
-                  fi
-                fi
-              fi
-            fi
-                        if test -n "$found_la"; then
-                                                        save_libdir="$libdir"
-              case "$found_la" in
-                */* | *\\*) . "$found_la" ;;
-                *) . "./$found_la" ;;
-              esac
-              libdir="$save_libdir"
-                            for dep in $dependency_libs; do
-                case "$dep" in
-                  -L*)
-                    additional_libdir=`echo "X$dep" | sed -e 's/^X-L//'`
-                                                                                                                                                                if test "X$additional_libdir" != "X/usr/lib"; then
-                      haveit=
-                      if test "X$additional_libdir" = "X/usr/local/lib"; then
-                        if test -n "$GCC"; then
-                          case $host_os in
-                            linux*) haveit=yes;;
-                          esac
-                        fi
-                      fi
-                      if test -z "$haveit"; then
-                        haveit=
-                        for x in $LDFLAGS $LIBICONV; do
-                          
-  acl_save_prefix="$prefix"
-  prefix="$acl_final_prefix"
-  acl_save_exec_prefix="$exec_prefix"
-  exec_prefix="$acl_final_exec_prefix"
-  eval x=\"$x\"
-  exec_prefix="$acl_save_exec_prefix"
-  prefix="$acl_save_prefix"
-
-                          if test "X$x" = "X-L$additional_libdir"; then
-                            haveit=yes
-                            break
-                          fi
-                        done
-                        if test -z "$haveit"; then
-                          if test -d "$additional_libdir"; then
-                                                        LIBICONV="${LIBICONV}${LIBICONV:+ }-L$additional_libdir"
-                          fi
-                        fi
-                        haveit=
-                        for x in $LDFLAGS $LTLIBICONV; do
-                          
-  acl_save_prefix="$prefix"
-  prefix="$acl_final_prefix"
-  acl_save_exec_prefix="$exec_prefix"
-  exec_prefix="$acl_final_exec_prefix"
-  eval x=\"$x\"
-  exec_prefix="$acl_save_exec_prefix"
-  prefix="$acl_save_prefix"
-
-                          if test "X$x" = "X-L$additional_libdir"; then
-                            haveit=yes
-                            break
-                          fi
-                        done
-                        if test -z "$haveit"; then
-                          if test -d "$additional_libdir"; then
-                                                        LTLIBICONV="${LTLIBICONV}${LTLIBICONV:+ }-L$additional_libdir"
-                          fi
-                        fi
-                      fi
-                    fi
-                    ;;
-                  -R*)
-                    dir=`echo "X$dep" | sed -e 's/^X-R//'`
-                    if test "$enable_rpath" != no; then
-                                                                  haveit=
-                      for x in $rpathdirs; do
-                        if test "X$x" = "X$dir"; then
-                          haveit=yes
-                          break
-                        fi
-                      done
-                      if test -z "$haveit"; then
-                        rpathdirs="$rpathdirs $dir"
-                      fi
-                                                                  haveit=
-                      for x in $ltrpathdirs; do
-                        if test "X$x" = "X$dir"; then
-                          haveit=yes
-                          break
-                        fi
-                      done
-                      if test -z "$haveit"; then
-                        ltrpathdirs="$ltrpathdirs $dir"
-                      fi
-                    fi
-                    ;;
-                  -l*)
-                                        names_next_round="$names_next_round "`echo "X$dep" | sed -e 's/^X-l//'`
-                    ;;
-                  *.la)
-                                                                                names_next_round="$names_next_round "`echo "X$dep" | sed -e 's,^X.*/,,' -e 's,^lib,,' -e 's,\.la$,,'`
-                    ;;
-                  *)
-                                        LIBICONV="${LIBICONV}${LIBICONV:+ }$dep"
-                    LTLIBICONV="${LTLIBICONV}${LTLIBICONV:+ }$dep"
-                    ;;
-                esac
-              done
-            fi
-          else
-                                                            LIBICONV="${LIBICONV}${LIBICONV:+ }-l$name"
-            LTLIBICONV="${LTLIBICONV}${LTLIBICONV:+ }-l$name"
-          fi
-        fi
-      fi
-    done
-  done
-  if test "X$rpathdirs" != "X"; then
-    if test -n "$hardcode_libdir_separator"; then
-                        alldirs=
-      for found_dir in $rpathdirs; do
-        alldirs="${alldirs}${alldirs:+$hardcode_libdir_separator}$found_dir"
-      done
-            acl_save_libdir="$libdir"
-      libdir="$alldirs"
-      eval flag=\"$hardcode_libdir_flag_spec\"
-      libdir="$acl_save_libdir"
-      LIBICONV="${LIBICONV}${LIBICONV:+ }$flag"
-    else
-            for found_dir in $rpathdirs; do
-        acl_save_libdir="$libdir"
-        libdir="$found_dir"
-        eval flag=\"$hardcode_libdir_flag_spec\"
-        libdir="$acl_save_libdir"
-        LIBICONV="${LIBICONV}${LIBICONV:+ }$flag"
-      done
-    fi
-  fi
-  if test "X$ltrpathdirs" != "X"; then
-            for found_dir in $ltrpathdirs; do
-      LTLIBICONV="${LTLIBICONV}${LTLIBICONV:+ }-R$found_dir"
-    done
-  fi
-
-
-
-                                    
-  for ac_header in argz.h limits.h locale.h nl_types.h malloc.h stddef.h \
-stdlib.h string.h unistd.h sys/param.h
-do :
-  as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
-ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default"
-if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-@%:@define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
-fi
-
-done
-
-  for ac_func in feof_unlocked fgets_unlocked getc_unlocked getcwd getegid \
-geteuid getgid getuid mempcpy munmap putenv setenv setlocale localeconv stpcpy \
-strcasecmp strdup strtoul tsearch __argz_count __argz_stringify __argz_next \
-__fsetlocking
-do :
-  as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
-ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
-if eval test \"x\$"$as_ac_var"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-@%:@define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1
-_ACEOF
-fi
-done
-
-
-  
-  
-    
-      
-
-          am_save_CPPFLAGS="$CPPFLAGS"
-  
-  for element in $INCICONV; do
-    haveit=
-    for x in $CPPFLAGS; do
-      
-  acl_save_prefix="$prefix"
-  prefix="$acl_final_prefix"
-  acl_save_exec_prefix="$exec_prefix"
-  exec_prefix="$acl_final_exec_prefix"
-  eval x=\"$x\"
-  exec_prefix="$acl_save_exec_prefix"
-  prefix="$acl_save_prefix"
-
-      if test "X$x" = "X$element"; then
-        haveit=yes
-        break
-      fi
-    done
-    if test -z "$haveit"; then
-      CPPFLAGS="${CPPFLAGS}${CPPFLAGS:+ }$element"
-    fi
-  done
-
-
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for iconv" >&5
-$as_echo_n "checking for iconv... " >&6; }
-if ${am_cv_func_iconv+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  
-    am_cv_func_iconv="no, consider installing GNU libiconv"
-    am_cv_lib_iconv=no
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <stdlib.h>
-#include <iconv.h>
-int
-main ()
-{
-iconv_t cd = iconv_open("","");
-       iconv(cd,NULL,NULL,NULL,NULL);
-       iconv_close(cd);
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  am_cv_func_iconv=yes
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-    if test "$am_cv_func_iconv" != yes; then
-      am_save_LIBS="$LIBS"
-      LIBS="$LIBS $LIBICONV"
-      cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <stdlib.h>
-#include <iconv.h>
-int
-main ()
-{
-iconv_t cd = iconv_open("","");
-         iconv(cd,NULL,NULL,NULL,NULL);
-         iconv_close(cd);
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  am_cv_lib_iconv=yes
-        am_cv_func_iconv=yes
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-      LIBS="$am_save_LIBS"
-    fi
-  
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_func_iconv" >&5
-$as_echo "$am_cv_func_iconv" >&6; }
-  if test "$am_cv_func_iconv" = yes; then
-    
-$as_echo "@%:@define HAVE_ICONV 1" >>confdefs.h
-
-  fi
-  if test "$am_cv_lib_iconv" = yes; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to link with libiconv" >&5
-$as_echo_n "checking how to link with libiconv... " >&6; }
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LIBICONV" >&5
-$as_echo "$LIBICONV" >&6; }
-  else
-            CPPFLAGS="$am_save_CPPFLAGS"
-    LIBICONV=
-    LTLIBICONV=
-  fi
-  
-  
-
-  if test "$am_cv_func_iconv" = yes; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for iconv declaration" >&5
-$as_echo_n "checking for iconv declaration... " >&6; }
-    if ${am_cv_proto_iconv+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  
-      cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#include <stdlib.h>
-#include <iconv.h>
-extern
-#ifdef __cplusplus
-"C"
-#endif
-#if defined(__STDC__) || defined(__cplusplus)
-size_t iconv (iconv_t cd, char * *inbuf, size_t *inbytesleft, char * *outbuf, size_t *outbytesleft);
-#else
-size_t iconv();
-#endif
-
-int
-main ()
-{
-
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  am_cv_proto_iconv_arg1=""
-else
-  am_cv_proto_iconv_arg1="const"
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-      am_cv_proto_iconv="extern size_t iconv (iconv_t cd, $am_cv_proto_iconv_arg1 char * *inbuf, size_t *inbytesleft, char * *outbuf, size_t *outbytesleft);"
-fi
-
-    am_cv_proto_iconv=`echo "$am_cv_proto_iconv" | tr -s ' ' | sed -e 's/( /(/'`
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: ${ac_t:-
-         }$am_cv_proto_iconv" >&5
-$as_echo "${ac_t:-
-         }$am_cv_proto_iconv" >&6; }
-    
-cat >>confdefs.h <<_ACEOF
-@%:@define ICONV_CONST $am_cv_proto_iconv_arg1
-_ACEOF
-
-  fi
-
-  
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for nl_langinfo and CODESET" >&5
-$as_echo_n "checking for nl_langinfo and CODESET... " >&6; }
-if ${am_cv_langinfo_codeset+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <langinfo.h>
-int
-main ()
-{
-char* cs = nl_langinfo(CODESET);
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  am_cv_langinfo_codeset=yes
-else
-  am_cv_langinfo_codeset=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-    
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_langinfo_codeset" >&5
-$as_echo "$am_cv_langinfo_codeset" >&6; }
-  if test $am_cv_langinfo_codeset = yes; then
-    
-$as_echo "@%:@define HAVE_LANGINFO_CODESET 1" >>confdefs.h
-
-  fi
-
-  if test $ac_cv_header_locale_h = yes; then
-    
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for LC_MESSAGES" >&5
-$as_echo_n "checking for LC_MESSAGES... " >&6; }
-if ${am_cv_val_LC_MESSAGES+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <locale.h>
-int
-main ()
-{
-return LC_MESSAGES
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  am_cv_val_LC_MESSAGES=yes
-else
-  am_cv_val_LC_MESSAGES=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_val_LC_MESSAGES" >&5
-$as_echo "$am_cv_val_LC_MESSAGES" >&6; }
-  if test $am_cv_val_LC_MESSAGES = yes; then
-    
-$as_echo "@%:@define HAVE_LC_MESSAGES 1" >>confdefs.h
-
-  fi
-
-  fi
-
-                      for ac_prog in bison
-do
-  # Extract the first word of "$ac_prog", so it can be a program name with args.
-set dummy $ac_prog; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_INTLBISON+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test -n "$INTLBISON"; then
-  ac_cv_prog_INTLBISON="$INTLBISON" # 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 { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_prog_INTLBISON="$ac_prog"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-fi
-fi
-INTLBISON=$ac_cv_prog_INTLBISON
-if test -n "$INTLBISON"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $INTLBISON" >&5
-$as_echo "$INTLBISON" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-  test -n "$INTLBISON" && break
-done
-
-  if test -z "$INTLBISON"; then
-    ac_verc_fail=yes
-  else
-        { $as_echo "$as_me:${as_lineno-$LINENO}: checking version of bison" >&5
-$as_echo_n "checking version of bison... " >&6; }
-    ac_prog_version=`$INTLBISON --version 2>&1 | sed -n 's/^.*GNU Bison.* \([0-9]*\.[0-9.]*\).*$/\1/p'`
-    case $ac_prog_version in
-      '') ac_prog_version="v. ?.??, bad"; ac_verc_fail=yes;;
-      1.2[6-9]* | 1.[3-9][0-9]* | [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
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_prog_version" >&5
-$as_echo "$ac_prog_version" >&6; }
-  fi
-  if test $ac_verc_fail = yes; then
-    INTLBISON=:
-  fi
-
-
-    
-  
-  
-  
-
-    
-      
-
-    
-  
-
-                        
-
-    
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether NLS is requested" >&5
-$as_echo_n "checking whether NLS is requested... " >&6; }
-    @%:@ Check whether --enable-nls was given.
-if test "${enable_nls+set}" = set; then :
-  enableval=$enable_nls; USE_NLS=$enableval
-else
-  USE_NLS=yes
-fi
-
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $USE_NLS" >&5
-$as_echo "$USE_NLS" >&6; }
-  
-
-
-  
-    BUILD_INCLUDED_LIBINTL=no
-    USE_INCLUDED_LIBINTL=no
-  
-  LIBINTL=
-  LTLIBINTL=
-  POSUB=
-
-    if test "$USE_NLS" = "yes"; then
-    gt_use_preinstalled_gnugettext=no
-    
-      { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether included gettext is requested" >&5
-$as_echo_n "checking whether included gettext is requested... " >&6; }
-      
-@%:@ Check whether --with-included-gettext was given.
-if test "${with_included_gettext+set}" = set; then :
-  withval=$with_included_gettext; nls_cv_force_use_gnu_gettext=$withval
-else
-  nls_cv_force_use_gnu_gettext=no
-fi
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: $nls_cv_force_use_gnu_gettext" >&5
-$as_echo "$nls_cv_force_use_gnu_gettext" >&6; }
-
-      nls_cv_use_gnu_gettext="$nls_cv_force_use_gnu_gettext"
-      if test "$nls_cv_force_use_gnu_gettext" != "yes"; then
-    
-                        
-                
-        
-        
-
-        { $as_echo "$as_me:${as_lineno-$LINENO}: checking for GNU gettext in libc" >&5
-$as_echo_n "checking for GNU gettext in libc... " >&6; }
-if ${gt_cv_func_gnugettext2_libc+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <libintl.h>
-extern int _nl_msg_cat_cntr;
-extern int *_nl_domain_bindings;
-int
-main ()
-{
-bindtextdomain ("", "");
-return (int) gettext ("") + (int) ngettext ("", "", 0) + _nl_msg_cat_cntr + *_nl_domain_bindings
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  gt_cv_func_gnugettext2_libc=yes
-else
-  gt_cv_func_gnugettext2_libc=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gt_cv_func_gnugettext2_libc" >&5
-$as_echo "$gt_cv_func_gnugettext2_libc" >&6; }
-
-        if test "$gt_cv_func_gnugettext2_libc" != "yes"; then
-                    
-                                                  
-  
-    use_additional=yes
-  
-  acl_save_prefix="$prefix"
-  prefix="$acl_final_prefix"
-  acl_save_exec_prefix="$exec_prefix"
-  exec_prefix="$acl_final_exec_prefix"
-  
-    eval additional_includedir=\"$includedir\"
-    eval additional_libdir=\"$libdir\"
-  
-  exec_prefix="$acl_save_exec_prefix"
-  prefix="$acl_save_prefix"
-
-  
-@%:@ Check whether --with-libintl-prefix was given.
-if test "${with_libintl_prefix+set}" = set; then :
-  withval=$with_libintl_prefix; 
-    if test "X$withval" = "Xno"; then
-      use_additional=no
-    else
-      if test "X$withval" = "X"; then
-        
-  acl_save_prefix="$prefix"
-  prefix="$acl_final_prefix"
-  acl_save_exec_prefix="$exec_prefix"
-  exec_prefix="$acl_final_exec_prefix"
-  
-          eval additional_includedir=\"$includedir\"
-          eval additional_libdir=\"$libdir\"
-        
-  exec_prefix="$acl_save_exec_prefix"
-  prefix="$acl_save_prefix"
-
-      else
-        additional_includedir="$withval/include"
-        additional_libdir="$withval/lib"
-      fi
-    fi
-
-fi
-
-      LIBINTL=
-  LTLIBINTL=
-  INCINTL=
-  rpathdirs=
-  ltrpathdirs=
-  names_already_handled=
-  names_next_round='intl '
-  while test -n "$names_next_round"; do
-    names_this_round="$names_next_round"
-    names_next_round=
-    for name in $names_this_round; do
-      already_handled=
-      for n in $names_already_handled; do
-        if test "$n" = "$name"; then
-          already_handled=yes
-          break
-        fi
-      done
-      if test -z "$already_handled"; then
-        names_already_handled="$names_already_handled $name"
-                        uppername=`echo "$name" | sed -e 'y|abcdefghijklmnopqrstuvwxyz./-|ABCDEFGHIJKLMNOPQRSTUVWXYZ___|'`
-        eval value=\"\$HAVE_LIB$uppername\"
-        if test -n "$value"; then
-          if test "$value" = yes; then
-            eval value=\"\$LIB$uppername\"
-            test -z "$value" || LIBINTL="${LIBINTL}${LIBINTL:+ }$value"
-            eval value=\"\$LTLIB$uppername\"
-            test -z "$value" || LTLIBINTL="${LTLIBINTL}${LTLIBINTL:+ }$value"
-          else
-                                    :
-          fi
-        else
-                              found_dir=
-          found_la=
-          found_so=
-          found_a=
-          if test $use_additional = yes; then
-            if test "X$prefer_shared" = "Xyes" && test -n "$shlibext" && test -f "$additional_libdir/lib$name.$shlibext"; then
-              found_dir="$additional_libdir"
-              found_so="$additional_libdir/lib$name.$shlibext"
-              if test -f "$additional_libdir/lib$name.la"; then
-                found_la="$additional_libdir/lib$name.la"
-              fi
-            else
-              if test -f "$additional_libdir/lib$name.$libext"; then
-                found_dir="$additional_libdir"
-                found_a="$additional_libdir/lib$name.$libext"
-                if test -f "$additional_libdir/lib$name.la"; then
-                  found_la="$additional_libdir/lib$name.la"
-                fi
-              fi
-            fi
-          fi
-          if test "X$found_dir" = "X"; then
-            for x in $LDFLAGS $LTLIBINTL; do
-              
-  acl_save_prefix="$prefix"
-  prefix="$acl_final_prefix"
-  acl_save_exec_prefix="$exec_prefix"
-  exec_prefix="$acl_final_exec_prefix"
-  eval x=\"$x\"
-  exec_prefix="$acl_save_exec_prefix"
-  prefix="$acl_save_prefix"
-
-              case "$x" in
-                -L*)
-                  dir=`echo "X$x" | sed -e 's/^X-L//'`
-                  if test "X$prefer_shared" = "Xyes" && test -n "$shlibext" && test -f "$dir/lib$name.$shlibext"; then
-                    found_dir="$dir"
-                    found_so="$dir/lib$name.$shlibext"
-                    if test -f "$dir/lib$name.la"; then
-                      found_la="$dir/lib$name.la"
-                    fi
-                  else
-                    if test -f "$dir/lib$name.$libext"; then
-                      found_dir="$dir"
-                      found_a="$dir/lib$name.$libext"
-                      if test -f "$dir/lib$name.la"; then
-                        found_la="$dir/lib$name.la"
-                      fi
-                    fi
-                  fi
-                  ;;
-              esac
-              if test "X$found_dir" != "X"; then
-                break
-              fi
-            done
-          fi
-          if test "X$found_dir" != "X"; then
-                        LTLIBINTL="${LTLIBINTL}${LTLIBINTL:+ }-L$found_dir -l$name"
-            if test "X$found_so" != "X"; then
-                                                        if test "$enable_rpath" = no || test "X$found_dir" = "X/usr/lib"; then
-                                LIBINTL="${LIBINTL}${LIBINTL:+ }$found_so"
-              else
-                                                                                haveit=
-                for x in $ltrpathdirs; do
-                  if test "X$x" = "X$found_dir"; then
-                    haveit=yes
-                    break
-                  fi
-                done
-                if test -z "$haveit"; then
-                  ltrpathdirs="$ltrpathdirs $found_dir"
-                fi
-                                if test "$hardcode_direct" = yes; then
-                                                      LIBINTL="${LIBINTL}${LIBINTL:+ }$found_so"
-                else
-                  if test -n "$hardcode_libdir_flag_spec" && test "$hardcode_minus_L" = no; then
-                                                            LIBINTL="${LIBINTL}${LIBINTL:+ }$found_so"
-                                                            haveit=
-                    for x in $rpathdirs; do
-                      if test "X$x" = "X$found_dir"; then
-                        haveit=yes
-                        break
-                      fi
-                    done
-                    if test -z "$haveit"; then
-                      rpathdirs="$rpathdirs $found_dir"
-                    fi
-                  else
-                                                                                haveit=
-                    for x in $LDFLAGS $LIBINTL; do
-                      
-  acl_save_prefix="$prefix"
-  prefix="$acl_final_prefix"
-  acl_save_exec_prefix="$exec_prefix"
-  exec_prefix="$acl_final_exec_prefix"
-  eval x=\"$x\"
-  exec_prefix="$acl_save_exec_prefix"
-  prefix="$acl_save_prefix"
-
-                      if test "X$x" = "X-L$found_dir"; then
-                        haveit=yes
-                        break
-                      fi
-                    done
-                    if test -z "$haveit"; then
-                      LIBINTL="${LIBINTL}${LIBINTL:+ }-L$found_dir"
-                    fi
-                    if test "$hardcode_minus_L" != no; then
-                                                                                        LIBINTL="${LIBINTL}${LIBINTL:+ }$found_so"
-                    else
-                                                                                                                                                                                LIBINTL="${LIBINTL}${LIBINTL:+ }-l$name"
-                    fi
-                  fi
-                fi
-              fi
-            else
-              if test "X$found_a" != "X"; then
-                                LIBINTL="${LIBINTL}${LIBINTL:+ }$found_a"
-              else
-                                                LIBINTL="${LIBINTL}${LIBINTL:+ }-L$found_dir -l$name"
-              fi
-            fi
-                        additional_includedir=
-            case "$found_dir" in
-              */lib | */lib/)
-                basedir=`echo "X$found_dir" | sed -e 's,^X,,' -e 's,/lib/*$,,'`
-                additional_includedir="$basedir/include"
-                ;;
-            esac
-            if test "X$additional_includedir" != "X"; then
-                                                                                                                if test "X$additional_includedir" != "X/usr/include"; then
-                haveit=
-                if test "X$additional_includedir" = "X/usr/local/include"; then
-                  if test -n "$GCC"; then
-                    case $host_os in
-                      linux*) haveit=yes;;
-                    esac
-                  fi
-                fi
-                if test -z "$haveit"; then
-                  for x in $CPPFLAGS $INCINTL; do
-                    
-  acl_save_prefix="$prefix"
-  prefix="$acl_final_prefix"
-  acl_save_exec_prefix="$exec_prefix"
-  exec_prefix="$acl_final_exec_prefix"
-  eval x=\"$x\"
-  exec_prefix="$acl_save_exec_prefix"
-  prefix="$acl_save_prefix"
-
-                    if test "X$x" = "X-I$additional_includedir"; then
-                      haveit=yes
-                      break
-                    fi
-                  done
-                  if test -z "$haveit"; then
-                    if test -d "$additional_includedir"; then
-                                            INCINTL="${INCINTL}${INCINTL:+ }-I$additional_includedir"
-                    fi
-                  fi
-                fi
-              fi
-            fi
-                        if test -n "$found_la"; then
-                                                        save_libdir="$libdir"
-              case "$found_la" in
-                */* | *\\*) . "$found_la" ;;
-                *) . "./$found_la" ;;
-              esac
-              libdir="$save_libdir"
-                            for dep in $dependency_libs; do
-                case "$dep" in
-                  -L*)
-                    additional_libdir=`echo "X$dep" | sed -e 's/^X-L//'`
-                                                                                                                                                                if test "X$additional_libdir" != "X/usr/lib"; then
-                      haveit=
-                      if test "X$additional_libdir" = "X/usr/local/lib"; then
-                        if test -n "$GCC"; then
-                          case $host_os in
-                            linux*) haveit=yes;;
-                          esac
-                        fi
-                      fi
-                      if test -z "$haveit"; then
-                        haveit=
-                        for x in $LDFLAGS $LIBINTL; do
-                          
-  acl_save_prefix="$prefix"
-  prefix="$acl_final_prefix"
-  acl_save_exec_prefix="$exec_prefix"
-  exec_prefix="$acl_final_exec_prefix"
-  eval x=\"$x\"
-  exec_prefix="$acl_save_exec_prefix"
-  prefix="$acl_save_prefix"
-
-                          if test "X$x" = "X-L$additional_libdir"; then
-                            haveit=yes
-                            break
-                          fi
-                        done
-                        if test -z "$haveit"; then
-                          if test -d "$additional_libdir"; then
-                                                        LIBINTL="${LIBINTL}${LIBINTL:+ }-L$additional_libdir"
-                          fi
-                        fi
-                        haveit=
-                        for x in $LDFLAGS $LTLIBINTL; do
-                          
-  acl_save_prefix="$prefix"
-  prefix="$acl_final_prefix"
-  acl_save_exec_prefix="$exec_prefix"
-  exec_prefix="$acl_final_exec_prefix"
-  eval x=\"$x\"
-  exec_prefix="$acl_save_exec_prefix"
-  prefix="$acl_save_prefix"
-
-                          if test "X$x" = "X-L$additional_libdir"; then
-                            haveit=yes
-                            break
-                          fi
-                        done
-                        if test -z "$haveit"; then
-                          if test -d "$additional_libdir"; then
-                                                        LTLIBINTL="${LTLIBINTL}${LTLIBINTL:+ }-L$additional_libdir"
-                          fi
-                        fi
-                      fi
-                    fi
-                    ;;
-                  -R*)
-                    dir=`echo "X$dep" | sed -e 's/^X-R//'`
-                    if test "$enable_rpath" != no; then
-                                                                  haveit=
-                      for x in $rpathdirs; do
-                        if test "X$x" = "X$dir"; then
-                          haveit=yes
-                          break
-                        fi
-                      done
-                      if test -z "$haveit"; then
-                        rpathdirs="$rpathdirs $dir"
-                      fi
-                                                                  haveit=
-                      for x in $ltrpathdirs; do
-                        if test "X$x" = "X$dir"; then
-                          haveit=yes
-                          break
-                        fi
-                      done
-                      if test -z "$haveit"; then
-                        ltrpathdirs="$ltrpathdirs $dir"
-                      fi
-                    fi
-                    ;;
-                  -l*)
-                                        names_next_round="$names_next_round "`echo "X$dep" | sed -e 's/^X-l//'`
-                    ;;
-                  *.la)
-                                                                                names_next_round="$names_next_round "`echo "X$dep" | sed -e 's,^X.*/,,' -e 's,^lib,,' -e 's,\.la$,,'`
-                    ;;
-                  *)
-                                        LIBINTL="${LIBINTL}${LIBINTL:+ }$dep"
-                    LTLIBINTL="${LTLIBINTL}${LTLIBINTL:+ }$dep"
-                    ;;
-                esac
-              done
-            fi
-          else
-                                                            LIBINTL="${LIBINTL}${LIBINTL:+ }-l$name"
-            LTLIBINTL="${LTLIBINTL}${LTLIBINTL:+ }-l$name"
-          fi
-        fi
-      fi
-    done
-  done
-  if test "X$rpathdirs" != "X"; then
-    if test -n "$hardcode_libdir_separator"; then
-                        alldirs=
-      for found_dir in $rpathdirs; do
-        alldirs="${alldirs}${alldirs:+$hardcode_libdir_separator}$found_dir"
-      done
-            acl_save_libdir="$libdir"
-      libdir="$alldirs"
-      eval flag=\"$hardcode_libdir_flag_spec\"
-      libdir="$acl_save_libdir"
-      LIBINTL="${LIBINTL}${LIBINTL:+ }$flag"
-    else
-            for found_dir in $rpathdirs; do
-        acl_save_libdir="$libdir"
-        libdir="$found_dir"
-        eval flag=\"$hardcode_libdir_flag_spec\"
-        libdir="$acl_save_libdir"
-        LIBINTL="${LIBINTL}${LIBINTL:+ }$flag"
-      done
-    fi
-  fi
-  if test "X$ltrpathdirs" != "X"; then
-            for found_dir in $ltrpathdirs; do
-      LTLIBINTL="${LTLIBINTL}${LTLIBINTL:+ }-R$found_dir"
-    done
-  fi
-
-          { $as_echo "$as_me:${as_lineno-$LINENO}: checking for GNU gettext in libintl" >&5
-$as_echo_n "checking for GNU gettext in libintl... " >&6; }
-if ${gt_cv_func_gnugettext2_libintl+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  gt_save_CPPFLAGS="$CPPFLAGS"
-            CPPFLAGS="$CPPFLAGS $INCINTL"
-            gt_save_LIBS="$LIBS"
-            LIBS="$LIBS $LIBINTL"
-                        cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <libintl.h>
-extern int _nl_msg_cat_cntr;
-extern
-#ifdef __cplusplus
-"C"
-#endif
-const char *_nl_expand_alias ();
-int
-main ()
-{
-bindtextdomain ("", "");
-return (int) gettext ("") + (int) ngettext ("", "", 0) + _nl_msg_cat_cntr + *_nl_expand_alias (0)
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  gt_cv_func_gnugettext2_libintl=yes
-else
-  gt_cv_func_gnugettext2_libintl=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-                        if test "$gt_cv_func_gnugettext2_libintl" != yes && test -n "$LIBICONV"; then
-              LIBS="$LIBS $LIBICONV"
-              cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <libintl.h>
-extern int _nl_msg_cat_cntr;
-extern
-#ifdef __cplusplus
-"C"
-#endif
-const char *_nl_expand_alias ();
-int
-main ()
-{
-bindtextdomain ("", "");
-return (int) gettext ("") + (int) ngettext ("", "", 0) + _nl_msg_cat_cntr + *_nl_expand_alias (0)
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  LIBINTL="$LIBINTL $LIBICONV"
-                LTLIBINTL="$LTLIBINTL $LTLIBICONV"
-                gt_cv_func_gnugettext2_libintl=yes
-               
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-            fi
-            CPPFLAGS="$gt_save_CPPFLAGS"
-            LIBS="$gt_save_LIBS"
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gt_cv_func_gnugettext2_libintl" >&5
-$as_echo "$gt_cv_func_gnugettext2_libintl" >&6; }
-        fi
-
-                                        if test "$gt_cv_func_gnugettext2_libc" = "yes" \
-           || { test "$gt_cv_func_gnugettext2_libintl" = "yes" \
-                && test "$PACKAGE" != gettext-runtime \
-                && test "$PACKAGE" != gettext-tools; }; then
-          gt_use_preinstalled_gnugettext=yes
-        else
-                    LIBINTL=
-          LTLIBINTL=
-          INCINTL=
-        fi
-
-    
-        if test "$gt_use_preinstalled_gnugettext" != "yes"; then
-                              nls_cv_use_gnu_gettext=yes
-        fi
-      fi
-
-      if test "$nls_cv_use_gnu_gettext" = "yes"; then
-                BUILD_INCLUDED_LIBINTL=yes
-        USE_INCLUDED_LIBINTL=yes
-        LIBINTL="lib/intl/libintl.a $LIBICONV"
-        LTLIBINTL="lib/intl/libintl.a $LTLIBICONV"
-        LIBS=`echo " $LIBS " | sed -e 's/ -lintl / /' -e 's/^ //' -e 's/ $//'`
-      fi
-
-      if test "$gt_use_preinstalled_gnugettext" = "yes" \
-         || test "$nls_cv_use_gnu_gettext" = "yes"; then
-                CATOBJEXT=.gmo
-      fi
-    
-
-    if test "$gt_use_preinstalled_gnugettext" = "yes" \
-       || test "$nls_cv_use_gnu_gettext" = "yes"; then
-      
-$as_echo "@%:@define ENABLE_NLS 1" >>confdefs.h
-
-    else
-      USE_NLS=no
-    fi
-  fi
-
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to use NLS" >&5
-$as_echo_n "checking whether to use NLS... " >&6; }
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $USE_NLS" >&5
-$as_echo "$USE_NLS" >&6; }
-  if test "$USE_NLS" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking where the gettext function comes from" >&5
-$as_echo_n "checking where the gettext function comes from... " >&6; }
-    if test "$gt_use_preinstalled_gnugettext" = "yes"; then
-      if test "$gt_cv_func_gnugettext2_libintl" = "yes"; then
-        gt_source="external libintl"
-      else
-        gt_source="libc"
-      fi
-    else
-      gt_source="included intl directory"
-    fi
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: $gt_source" >&5
-$as_echo "$gt_source" >&6; }
-  fi
-
-  if test "$USE_NLS" = "yes"; then
-
-    if test "$gt_use_preinstalled_gnugettext" = "yes"; then
-      if test "$gt_cv_func_gnugettext2_libintl" = "yes"; then
-        { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to link with libintl" >&5
-$as_echo_n "checking how to link with libintl... " >&6; }
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LIBINTL" >&5
-$as_echo "$LIBINTL" >&6; }
-        
-  for element in $INCINTL; do
-    haveit=
-    for x in $CPPFLAGS; do
-      
-  acl_save_prefix="$prefix"
-  prefix="$acl_final_prefix"
-  acl_save_exec_prefix="$exec_prefix"
-  exec_prefix="$acl_final_exec_prefix"
-  eval x=\"$x\"
-  exec_prefix="$acl_save_exec_prefix"
-  prefix="$acl_save_prefix"
-
-      if test "X$x" = "X$element"; then
-        haveit=yes
-        break
-      fi
-    done
-    if test -z "$haveit"; then
-      CPPFLAGS="${CPPFLAGS}${CPPFLAGS:+ }$element"
-    fi
-  done
-
-      fi
-
-            
-$as_echo "@%:@define HAVE_GETTEXT 1" >>confdefs.h
-
-      
-$as_echo "@%:@define HAVE_DCGETTEXT 1" >>confdefs.h
-
-    fi
-
-        POSUB=po
-  fi
-
-  
-            if test "$PACKAGE" = gettext-runtime || test "$PACKAGE" = gettext-tools; then
-      BUILD_INCLUDED_LIBINTL=yes
-    fi
-
-        
-    
-    
-
-        nls_cv_header_intl=
-    nls_cv_header_libgt=
-
-        DATADIRNAME=share
-    
-
-        INSTOBJEXT=.mo
-    
-
-        GENCAT=gencat
-    
-
-        if test "$USE_INCLUDED_LIBINTL" = yes; then
-      INTLOBJS="\$(GETTOBJS)"
-    fi
-    
-
-        INTL_LIBTOOL_SUFFIX_PREFIX=
-    
-  
-
-    INTLLIBS="$LIBINTL"
-  
-
-    
-  
-  
-
-
-ac_header_dirent=no
-for ac_hdr in dirent.h sys/ndir.h sys/dir.h ndir.h; do
-  as_ac_Header=`$as_echo "ac_cv_header_dirent_$ac_hdr" | $as_tr_sh`
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_hdr that defines DIR" >&5
-$as_echo_n "checking for $ac_hdr that defines DIR... " >&6; }
-if eval \${$as_ac_Header+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <sys/types.h>
-#include <$ac_hdr>
-
-int
-main ()
-{
-if ((DIR *) 0)
-return 0;
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  eval "$as_ac_Header=yes"
-else
-  eval "$as_ac_Header=no"
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-eval ac_res=\$$as_ac_Header
-              { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
-if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-@%:@define `$as_echo "HAVE_$ac_hdr" | $as_tr_cpp` 1
-_ACEOF
-
-ac_header_dirent=$ac_hdr; break
-fi
-
-done
-# Two versions of opendir et al. are in -ldir and -lx on SCO Xenix.
-if test $ac_header_dirent = dirent.h; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing opendir" >&5
-$as_echo_n "checking for library containing opendir... " >&6; }
-if ${ac_cv_search_opendir+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_func_search_save_LIBS=$LIBS
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-/* Override any GCC internal prototype to avoid an error.
-   Use char because int might match the return type of a GCC
-   builtin and then its argument prototype would still apply.  */
-#ifdef __cplusplus
-extern "C"
-#endif
-char opendir ();
-int
-main ()
-{
-return opendir ();
-  ;
-  return 0;
-}
-_ACEOF
-for ac_lib in '' dir; do
-  if test -z "$ac_lib"; then
-    ac_res="none required"
-  else
-    ac_res=-l$ac_lib
-    LIBS="-l$ac_lib  $ac_func_search_save_LIBS"
-  fi
-  if ac_fn_c_try_link "$LINENO"; then :
-  ac_cv_search_opendir=$ac_res
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext
-  if ${ac_cv_search_opendir+:} false; then :
-  break
-fi
-done
-if ${ac_cv_search_opendir+:} false; then :
-  
-else
-  ac_cv_search_opendir=no
-fi
-rm conftest.$ac_ext
-LIBS=$ac_func_search_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_opendir" >&5
-$as_echo "$ac_cv_search_opendir" >&6; }
-ac_res=$ac_cv_search_opendir
-if test "$ac_res" != no; then :
-  test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
-  
-fi
-
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing opendir" >&5
-$as_echo_n "checking for library containing opendir... " >&6; }
-if ${ac_cv_search_opendir+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_func_search_save_LIBS=$LIBS
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-/* Override any GCC internal prototype to avoid an error.
-   Use char because int might match the return type of a GCC
-   builtin and then its argument prototype would still apply.  */
-#ifdef __cplusplus
-extern "C"
-#endif
-char opendir ();
-int
-main ()
-{
-return opendir ();
-  ;
-  return 0;
-}
-_ACEOF
-for ac_lib in '' x; do
-  if test -z "$ac_lib"; then
-    ac_res="none required"
-  else
-    ac_res=-l$ac_lib
-    LIBS="-l$ac_lib  $ac_func_search_save_LIBS"
-  fi
-  if ac_fn_c_try_link "$LINENO"; then :
-  ac_cv_search_opendir=$ac_res
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext
-  if ${ac_cv_search_opendir+:} false; then :
-  break
-fi
-done
-if ${ac_cv_search_opendir+:} false; then :
-  
-else
-  ac_cv_search_opendir=no
-fi
-rm conftest.$ac_ext
-LIBS=$ac_func_search_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_opendir" >&5
-$as_echo "$ac_cv_search_opendir" >&6; }
-ac_res=$ac_cv_search_opendir
-if test "$ac_res" != no; then :
-  test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
-  
-fi
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether time.h and sys/time.h may both be included" >&5
-$as_echo_n "checking whether time.h and sys/time.h may both be included... " >&6; }
-if ${ac_cv_header_time+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <sys/types.h>
-#include <sys/time.h>
-#include <time.h>
-
-int
-main ()
-{
-if ((struct tm *) 0)
-return 0;
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_cv_header_time=yes
-else
-  ac_cv_header_time=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_time" >&5
-$as_echo "$ac_cv_header_time" >&6; }
-if test $ac_cv_header_time = yes; then
-  
-$as_echo "@%:@define TIME_WITH_SYS_TIME 1" >>confdefs.h
-
-fi
-
-
-
- for ac_header in inttypes.h
-do :
-  ac_fn_c_check_header_mongrel "$LINENO" "inttypes.h" "ac_cv_header_inttypes_h" "$ac_includes_default"
-if test "x$ac_cv_header_inttypes_h" = xyes; then :
-  cat >>confdefs.h <<_ACEOF
-@%:@define HAVE_INTTYPES_H 1
-_ACEOF
-fi
-
-done
-
-
-
-for ac_header in unistd.h stdlib.h stdarg.h varargs.h limits.h string.h \
-                memory.h locale.h termcap.h termio.h termios.h dlfcn.h \
-                stdbool.h stddef.h stdint.h netdb.h pwd.h grp.h strings.h \
-                regex.h syslog.h ulimit.h
-do :
-  as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
-ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default"
-if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-@%:@define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
-fi
-
-done
-
-for ac_header in sys/pte.h sys/stream.h sys/select.h sys/file.h \
-                sys/resource.h sys/param.h sys/socket.h sys/stat.h \
-                sys/time.h sys/times.h sys/types.h sys/wait.h
-do :
-  as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
-ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default"
-if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-@%:@define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
-fi
-
-done
-
-for ac_header in netinet/in.h arpa/inet.h
-do :
-  as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
-ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default"
-if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-@%:@define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
-fi
-
-done
-
-
-ac_fn_c_check_header_compile "$LINENO" "sys/ptem.h" "ac_cv_header_sys_ptem_h" "
-#if HAVE_SYS_STREAM_H
-#  include <sys/stream.h>
-#endif
-
-"
-if test "x$ac_cv_header_sys_ptem_h" = xyes; then :
-  
-fi
-
-
-
-# The Ultrix 4.2 mips builtin alloca declared by alloca.h only works
-# for constant arguments.  Useless!
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for working alloca.h" >&5
-$as_echo_n "checking for working alloca.h... " >&6; }
-if ${ac_cv_working_alloca_h+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-@%:@include <alloca.h>
-int
-main ()
-{
-char *p = (char *) alloca (2 * sizeof (int));
-                         if (p) return 0;
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  ac_cv_working_alloca_h=yes
-else
-  ac_cv_working_alloca_h=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_working_alloca_h" >&5
-$as_echo "$ac_cv_working_alloca_h" >&6; }
-if test $ac_cv_working_alloca_h = yes; then
-  
-$as_echo "@%:@define HAVE_ALLOCA_H 1" >>confdefs.h
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for alloca" >&5
-$as_echo_n "checking for alloca... " >&6; }
-if ${ac_cv_func_alloca_works+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#ifdef __GNUC__
-# define alloca __builtin_alloca
-#else
-# ifdef _MSC_VER
-#  include <malloc.h>
-#  define alloca _alloca
-# else
-#  ifdef HAVE_ALLOCA_H
-#   include <alloca.h>
-#  else
-#   ifdef _AIX
- #pragma alloca
-#   else
-#    ifndef alloca /* predefined by HP cc +Olibcalls */
-void *alloca (size_t);
-#    endif
-#   endif
-#  endif
-# endif
-#endif
-
-int
-main ()
-{
-char *p = (char *) alloca (1);
-                                   if (p) return 0;
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  ac_cv_func_alloca_works=yes
-else
-  ac_cv_func_alloca_works=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_func_alloca_works" >&5
-$as_echo "$ac_cv_func_alloca_works" >&6; }
-
-if test $ac_cv_func_alloca_works = yes; then
-  
-$as_echo "@%:@define HAVE_ALLOCA 1" >>confdefs.h
-
-else
-  # The SVR3 libPW and SVR4 libucb both contain incompatible functions
-# that cause trouble.  Some versions do not even contain alloca or
-# contain a buggy version.  If you still want to use their alloca,
-# use ar to extract alloca.o from them instead of compiling alloca.c.
-
-ALLOCA=\${LIBOBJDIR}alloca.$ac_objext
-
-$as_echo "@%:@define C_ALLOCA 1" >>confdefs.h
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether \`alloca.c' needs Cray hooks" >&5
-$as_echo_n "checking whether \`alloca.c' needs Cray hooks... " >&6; }
-if ${ac_cv_os_cray+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#if defined CRAY && ! defined CRAY2
-webecray
-#else
-wenotbecray
-#endif
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "webecray" >/dev/null 2>&1; then :
-  ac_cv_os_cray=yes
-else
-  ac_cv_os_cray=no
-fi
-rm -f conftest*
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_os_cray" >&5
-$as_echo "$ac_cv_os_cray" >&6; }
-if test $ac_cv_os_cray = yes; then
-  for ac_func in _getb67 GETB67 getb67; do
-    as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
-ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
-if eval test \"x\$"$as_ac_var"\" = x"yes"; then :
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define CRAY_STACKSEG_END $ac_func
-_ACEOF
-
-    break
-fi
-
-  done
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking stack direction for C alloca" >&5
-$as_echo_n "checking stack direction for C alloca... " >&6; }
-if ${ac_cv_c_stack_direction+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test "$cross_compiling" = yes; then :
-  ac_cv_c_stack_direction=0
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-$ac_includes_default
-int
-find_stack_direction ()
-{
-  static char *addr = 0;
-  auto char dummy;
-  if (addr == 0)
-    {
-      addr = &dummy;
-      return find_stack_direction ();
-    }
-  else
-    return (&dummy > addr) ? 1 : -1;
-}
-
-int
-main ()
-{
-  return find_stack_direction () < 0;
-}
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-  ac_cv_c_stack_direction=1
-else
-  ac_cv_c_stack_direction=-1
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_stack_direction" >&5
-$as_echo "$ac_cv_c_stack_direction" >&6; }
-cat >>confdefs.h <<_ACEOF
-@%:@define STACK_DIRECTION $ac_cv_c_stack_direction
-_ACEOF
-
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether getpgrp requires zero arguments" >&5
-$as_echo_n "checking whether getpgrp requires zero arguments... " >&6; }
-if ${ac_cv_func_getpgrp_void+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  # Use it with a single arg.
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-$ac_includes_default
-int
-main ()
-{
-getpgrp (0);
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_cv_func_getpgrp_void=no
-else
-  ac_cv_func_getpgrp_void=yes
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_func_getpgrp_void" >&5
-$as_echo "$ac_cv_func_getpgrp_void" >&6; }
-if test $ac_cv_func_getpgrp_void = yes; then
-  
-$as_echo "@%:@define GETPGRP_VOID 1" >>confdefs.h
-
-fi
-
-if ${ac_cv_func_setvbuf_reversed+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_cv_func_setvbuf_reversed=no
-fi
-
-
-for ac_func in vprintf
-do :
-  ac_fn_c_check_func "$LINENO" "vprintf" "ac_cv_func_vprintf"
-if test "x$ac_cv_func_vprintf" = xyes; then :
-  cat >>confdefs.h <<_ACEOF
-@%:@define HAVE_VPRINTF 1
-_ACEOF
-ac_fn_c_check_func "$LINENO" "_doprnt" "ac_cv_func__doprnt"
-if test "x$ac_cv_func__doprnt" = xyes; then :
-  
-$as_echo "@%:@define HAVE_DOPRNT 1" >>confdefs.h
-
-fi
-
-fi
-done
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for working strcoll" >&5
-$as_echo_n "checking for working strcoll... " >&6; }
-if ${ac_cv_func_strcoll_works+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test "$cross_compiling" = yes; then :
-  ac_cv_func_strcoll_works=no
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-$ac_includes_default
-int
-main ()
-{
-return (strcoll ("abc", "def") >= 0 ||
-        strcoll ("ABC", "DEF") >= 0 ||
-        strcoll ("123", "456") >= 0)
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-  ac_cv_func_strcoll_works=yes
-else
-  ac_cv_func_strcoll_works=no
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_func_strcoll_works" >&5
-$as_echo "$ac_cv_func_strcoll_works" >&6; }
-if test $ac_cv_func_strcoll_works = yes; then
-  
-$as_echo "@%:@define HAVE_STRCOLL 1" >>confdefs.h
-
-fi
-
-
-
-if test "$ac_cv_func_alloca_works" = "no" && test "$opt_bash_malloc" = "no"; then
-       MALLOC_TARGET=alloca
-       MALLOC_SRC=alloca.c
-
-       MALLOC_LIB='-lmalloc'
-       MALLOC_LIBRARY='$(ALLOC_LIBDIR)/libmalloc.a'
-       MALLOC_LDFLAGS='-L$(ALLOC_LIBDIR)'
-       MALLOC_DEP='$(MALLOC_LIBRARY)'
-fi
-
-if test "$ac_cv_func_vprintf" = no; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for declaration of vprintf in stdio.h" >&5
-$as_echo_n "checking for declaration of vprintf in stdio.h... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <stdio.h>
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "[int[        ]*vprintf[^a-zA-Z0-9]]" >/dev/null 2>&1; then :
-  ac_cv_func_vprintf=yes
-fi
-rm -f conftest*
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_func_vprintf" >&5
-$as_echo "$ac_cv_func_vprintf" >&6; }
-    if test $ac_cv_func_vprintf = yes; then
-       $as_echo "@%:@define HAVE_VPRINTF 1" >>confdefs.h
-
-    fi
-fi
-
-if test "$ac_cv_func_vprintf" = no && test "$ac_cv_func__doprnt" = "yes"; then
-  case " $LIB@&t@OBJS " in
-  *" vprint.$ac_objext "* ) ;;
-  *) LIB@&t@OBJS="$LIB@&t@OBJS vprint.$ac_objext"
- ;;
-esac
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking return type of signal handlers" >&5
-$as_echo_n "checking return type of signal handlers... " >&6; }
-if ${ac_cv_type_signal+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <sys/types.h>
-#include <signal.h>
-
-int
-main ()
-{
-return *(signal (0, 0)) (0) == 1;
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_cv_type_signal=int
-else
-  ac_cv_type_signal=void
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_type_signal" >&5
-$as_echo "$ac_cv_type_signal" >&6; }
-
-cat >>confdefs.h <<_ACEOF
-@%:@define RETSIGTYPE $ac_cv_type_signal
-_ACEOF
-
-
-
-ac_fn_c_check_func "$LINENO" "__setostype" "ac_cv_func___setostype"
-if test "x$ac_cv_func___setostype" = xyes; then :
-  $as_echo "@%:@define HAVE_SETOSTYPE 1" >>confdefs.h
-
-fi
-
-ac_fn_c_check_func "$LINENO" "wait3" "ac_cv_func_wait3"
-if test "x$ac_cv_func_wait3" = xyes; then :
-  $as_echo "@%:@define HAVE_WAIT3 1" >>confdefs.h
-
-fi
-
-
-ac_fn_c_check_func "$LINENO" "mkfifo" "ac_cv_func_mkfifo"
-if test "x$ac_cv_func_mkfifo" = xyes; then :
-  $as_echo "@%:@define HAVE_MKFIFO 1" >>confdefs.h
-
-else
-  $as_echo "@%:@define MKFIFO_MISSING 1" >>confdefs.h
-
-fi
-
-
-for ac_func in dup2 eaccess fcntl getdtablesize getgroups gethostname \
-               getpagesize getpeername getrlimit getrusage gettimeofday \
-               kill killpg lstat readlink sbrk select setdtablesize \
-               setitimer tcgetpgrp uname ulimit waitpid
-do :
-  as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
-ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
-if eval test \"x\$"$as_ac_var"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-@%:@define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1
-_ACEOF
-fi
-done
-
-ac_fn_c_check_func "$LINENO" "rename" "ac_cv_func_rename"
-if test "x$ac_cv_func_rename" = xyes; then :
-  $as_echo "@%:@define HAVE_RENAME 1" >>confdefs.h
-
-else
-  case " $LIB@&t@OBJS " in
-  *" rename.$ac_objext "* ) ;;
-  *) LIB@&t@OBJS="$LIB@&t@OBJS rename.$ac_objext"
- ;;
-esac
-
-fi
-
-
-
-for ac_func in bcopy bzero confstr faccessat fnmatch \
-               getaddrinfo gethostbyname getservbyname getservent inet_aton \
-               imaxdiv memmove pathconf putenv raise regcomp regexec \
-               setenv setlinebuf setlocale setvbuf siginterrupt strchr \
-               sysconf syslog tcgetattr times ttyname tzset unsetenv
-do :
-  as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
-ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
-if eval test \"x\$"$as_ac_var"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-@%:@define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1
-_ACEOF
-fi
-done
-
-
-for ac_func in vasprintf asprintf
-do :
-  as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
-ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
-if eval test \"x\$"$as_ac_var"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-@%:@define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1
-_ACEOF
-fi
-done
-
-for ac_func in isascii isblank isgraph isprint isspace isxdigit
-do :
-  as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
-ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
-if eval test \"x\$"$as_ac_var"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-@%:@define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1
-_ACEOF
-fi
-done
-
-for ac_func in getpwent getpwnam getpwuid
-do :
-  as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
-ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
-if eval test \"x\$"$as_ac_var"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-@%:@define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1
-_ACEOF
-fi
-done
-
-ac_fn_c_check_func "$LINENO" "getcwd" "ac_cv_func_getcwd"
-if test "x$ac_cv_func_getcwd" = xyes; then :
-  $as_echo "@%:@define HAVE_GETCWD 1" >>confdefs.h
-
-else
-  case " $LIB@&t@OBJS " in
-  *" getcwd.$ac_objext "* ) ;;
-  *) LIB@&t@OBJS="$LIB@&t@OBJS getcwd.$ac_objext"
- ;;
-esac
-
-fi
-
-ac_fn_c_check_func "$LINENO" "memset" "ac_cv_func_memset"
-if test "x$ac_cv_func_memset" = xyes; then :
-  $as_echo "@%:@define HAVE_MEMSET 1" >>confdefs.h
-
-else
-  case " $LIB@&t@OBJS " in
-  *" memset.$ac_objext "* ) ;;
-  *) LIB@&t@OBJS="$LIB@&t@OBJS memset.$ac_objext"
- ;;
-esac
-
-fi
-
-
-ac_fn_c_check_func "$LINENO" "strcasecmp" "ac_cv_func_strcasecmp"
-if test "x$ac_cv_func_strcasecmp" = xyes; then :
-  $as_echo "@%:@define HAVE_STRCASECMP 1" >>confdefs.h
-
-else
-  case " $LIB@&t@OBJS " in
-  *" strcasecmp.$ac_objext "* ) ;;
-  *) LIB@&t@OBJS="$LIB@&t@OBJS strcasecmp.$ac_objext"
- ;;
-esac
-
-fi
-
-ac_fn_c_check_func "$LINENO" "strcasestr" "ac_cv_func_strcasestr"
-if test "x$ac_cv_func_strcasestr" = xyes; then :
-  $as_echo "@%:@define HAVE_STRCASESTR 1" >>confdefs.h
-
-else
-  case " $LIB@&t@OBJS " in
-  *" strcasestr.$ac_objext "* ) ;;
-  *) LIB@&t@OBJS="$LIB@&t@OBJS strcasestr.$ac_objext"
- ;;
-esac
-
-fi
-
-ac_fn_c_check_func "$LINENO" "strerror" "ac_cv_func_strerror"
-if test "x$ac_cv_func_strerror" = xyes; then :
-  $as_echo "@%:@define HAVE_STRERROR 1" >>confdefs.h
-
-else
-  case " $LIB@&t@OBJS " in
-  *" strerror.$ac_objext "* ) ;;
-  *) LIB@&t@OBJS="$LIB@&t@OBJS strerror.$ac_objext"
- ;;
-esac
-
-fi
-
-ac_fn_c_check_func "$LINENO" "strftime" "ac_cv_func_strftime"
-if test "x$ac_cv_func_strftime" = xyes; then :
-  $as_echo "@%:@define HAVE_STRFTIME 1" >>confdefs.h
-
-else
-  case " $LIB@&t@OBJS " in
-  *" strftime.$ac_objext "* ) ;;
-  *) LIB@&t@OBJS="$LIB@&t@OBJS strftime.$ac_objext"
- ;;
-esac
-
-fi
-
-ac_fn_c_check_func "$LINENO" "strnlen" "ac_cv_func_strnlen"
-if test "x$ac_cv_func_strnlen" = xyes; then :
-  $as_echo "@%:@define HAVE_STRNLEN 1" >>confdefs.h
-
-else
-  case " $LIB@&t@OBJS " in
-  *" strnlen.$ac_objext "* ) ;;
-  *) LIB@&t@OBJS="$LIB@&t@OBJS strnlen.$ac_objext"
- ;;
-esac
-
-fi
-
-ac_fn_c_check_func "$LINENO" "strpbrk" "ac_cv_func_strpbrk"
-if test "x$ac_cv_func_strpbrk" = xyes; then :
-  $as_echo "@%:@define HAVE_STRPBRK 1" >>confdefs.h
-
-else
-  case " $LIB@&t@OBJS " in
-  *" strpbrk.$ac_objext "* ) ;;
-  *) LIB@&t@OBJS="$LIB@&t@OBJS strpbrk.$ac_objext"
- ;;
-esac
-
-fi
-
-ac_fn_c_check_func "$LINENO" "strstr" "ac_cv_func_strstr"
-if test "x$ac_cv_func_strstr" = xyes; then :
-  $as_echo "@%:@define HAVE_STRSTR 1" >>confdefs.h
-
-else
-  case " $LIB@&t@OBJS " in
-  *" strstr.$ac_objext "* ) ;;
-  *) LIB@&t@OBJS="$LIB@&t@OBJS strstr.$ac_objext"
- ;;
-esac
-
-fi
-
-
-ac_fn_c_check_func "$LINENO" "strtod" "ac_cv_func_strtod"
-if test "x$ac_cv_func_strtod" = xyes; then :
-  $as_echo "@%:@define HAVE_STRTOD 1" >>confdefs.h
-
-else
-  case " $LIB@&t@OBJS " in
-  *" strtod.$ac_objext "* ) ;;
-  *) LIB@&t@OBJS="$LIB@&t@OBJS strtod.$ac_objext"
- ;;
-esac
-
-fi
-
-ac_fn_c_check_func "$LINENO" "strtol" "ac_cv_func_strtol"
-if test "x$ac_cv_func_strtol" = xyes; then :
-  $as_echo "@%:@define HAVE_STRTOL 1" >>confdefs.h
-
-else
-  case " $LIB@&t@OBJS " in
-  *" strtol.$ac_objext "* ) ;;
-  *) LIB@&t@OBJS="$LIB@&t@OBJS strtol.$ac_objext"
- ;;
-esac
-
-fi
-
-ac_fn_c_check_func "$LINENO" "strtoul" "ac_cv_func_strtoul"
-if test "x$ac_cv_func_strtoul" = xyes; then :
-  $as_echo "@%:@define HAVE_STRTOUL 1" >>confdefs.h
-
-else
-  case " $LIB@&t@OBJS " in
-  *" strtoul.$ac_objext "* ) ;;
-  *) LIB@&t@OBJS="$LIB@&t@OBJS strtoul.$ac_objext"
- ;;
-esac
-
-fi
-
-ac_fn_c_check_func "$LINENO" "strtoll" "ac_cv_func_strtoll"
-if test "x$ac_cv_func_strtoll" = xyes; then :
-  $as_echo "@%:@define HAVE_STRTOLL 1" >>confdefs.h
-
-else
-  case " $LIB@&t@OBJS " in
-  *" strtoll.$ac_objext "* ) ;;
-  *) LIB@&t@OBJS="$LIB@&t@OBJS strtoll.$ac_objext"
- ;;
-esac
-
-fi
-
-ac_fn_c_check_func "$LINENO" "strtoull" "ac_cv_func_strtoull"
-if test "x$ac_cv_func_strtoull" = xyes; then :
-  $as_echo "@%:@define HAVE_STRTOULL 1" >>confdefs.h
-
-else
-  case " $LIB@&t@OBJS " in
-  *" strtoull.$ac_objext "* ) ;;
-  *) LIB@&t@OBJS="$LIB@&t@OBJS strtoull.$ac_objext"
- ;;
-esac
-
-fi
-
-ac_fn_c_check_func "$LINENO" "strtoimax" "ac_cv_func_strtoimax"
-if test "x$ac_cv_func_strtoimax" = xyes; then :
-  $as_echo "@%:@define HAVE_STRTOIMAX 1" >>confdefs.h
-
-else
-  case " $LIB@&t@OBJS " in
-  *" strtoimax.$ac_objext "* ) ;;
-  *) LIB@&t@OBJS="$LIB@&t@OBJS strtoimax.$ac_objext"
- ;;
-esac
-
-fi
-
-ac_fn_c_check_func "$LINENO" "strtoumax" "ac_cv_func_strtoumax"
-if test "x$ac_cv_func_strtoumax" = xyes; then :
-  $as_echo "@%:@define HAVE_STRTOUMAX 1" >>confdefs.h
-
-else
-  case " $LIB@&t@OBJS " in
-  *" strtoumax.$ac_objext "* ) ;;
-  *) LIB@&t@OBJS="$LIB@&t@OBJS strtoumax.$ac_objext"
- ;;
-esac
-
-fi
-
-
-ac_fn_c_check_func "$LINENO" "dprintf" "ac_cv_func_dprintf"
-if test "x$ac_cv_func_dprintf" = xyes; then :
-  $as_echo "@%:@define HAVE_DPRINTF 1" >>confdefs.h
-
-else
-  case " $LIB@&t@OBJS " in
-  *" dprintf.$ac_objext "* ) ;;
-  *) LIB@&t@OBJS="$LIB@&t@OBJS dprintf.$ac_objext"
- ;;
-esac
-
-fi
-
-
-ac_fn_c_check_func "$LINENO" "strchrnul" "ac_cv_func_strchrnul"
-if test "x$ac_cv_func_strchrnul" = xyes; then :
-  $as_echo "@%:@define HAVE_STRCHRNUL 1" >>confdefs.h
-
-else
-  case " $LIB@&t@OBJS " in
-  *" strchrnul.$ac_objext "* ) ;;
-  *) LIB@&t@OBJS="$LIB@&t@OBJS strchrnul.$ac_objext"
- ;;
-esac
-
-fi
-
-
-
-ac_fn_c_check_decl "$LINENO" "AUDIT_USER_TTY" "ac_cv_have_decl_AUDIT_USER_TTY" "#include <linux/audit.h>
-"
-if test "x$ac_cv_have_decl_AUDIT_USER_TTY" = xyes; then :
-  ac_have_decl=1
-else
-  ac_have_decl=0
-fi
-
-cat >>confdefs.h <<_ACEOF
-@%:@define HAVE_DECL_AUDIT_USER_TTY $ac_have_decl
-_ACEOF
-
-
-ac_fn_c_check_decl "$LINENO" "confstr" "ac_cv_have_decl_confstr" "$ac_includes_default"
-if test "x$ac_cv_have_decl_confstr" = xyes; then :
-  ac_have_decl=1
-else
-  ac_have_decl=0
-fi
-
-cat >>confdefs.h <<_ACEOF
-@%:@define HAVE_DECL_CONFSTR $ac_have_decl
-_ACEOF
-
-ac_fn_c_check_decl "$LINENO" "printf" "ac_cv_have_decl_printf" "$ac_includes_default"
-if test "x$ac_cv_have_decl_printf" = xyes; then :
-  ac_have_decl=1
-else
-  ac_have_decl=0
-fi
-
-cat >>confdefs.h <<_ACEOF
-@%:@define HAVE_DECL_PRINTF $ac_have_decl
-_ACEOF
-
-ac_fn_c_check_decl "$LINENO" "sbrk" "ac_cv_have_decl_sbrk" "$ac_includes_default"
-if test "x$ac_cv_have_decl_sbrk" = xyes; then :
-  ac_have_decl=1
-else
-  ac_have_decl=0
-fi
-
-cat >>confdefs.h <<_ACEOF
-@%:@define HAVE_DECL_SBRK $ac_have_decl
-_ACEOF
-
-ac_fn_c_check_decl "$LINENO" "setregid" "ac_cv_have_decl_setregid" "$ac_includes_default"
-if test "x$ac_cv_have_decl_setregid" = xyes; then :
-  ac_have_decl=1
-else
-  ac_have_decl=0
-fi
-
-cat >>confdefs.h <<_ACEOF
-@%:@define HAVE_DECL_SETREGID $ac_have_decl
-_ACEOF
-
-ac_fn_c_check_decl "$LINENO" "strcpy" "ac_cv_have_decl_strcpy" "$ac_includes_default"
-if test "x$ac_cv_have_decl_strcpy" = xyes; then :
-  ac_have_decl=1
-else
-  ac_have_decl=0
-fi
-
-cat >>confdefs.h <<_ACEOF
-@%:@define HAVE_DECL_STRCPY $ac_have_decl
-_ACEOF
-
-ac_fn_c_check_decl "$LINENO" "strsignal" "ac_cv_have_decl_strsignal" "$ac_includes_default"
-if test "x$ac_cv_have_decl_strsignal" = xyes; then :
-  ac_have_decl=1
-else
-  ac_have_decl=0
-fi
-
-cat >>confdefs.h <<_ACEOF
-@%:@define HAVE_DECL_STRSIGNAL $ac_have_decl
-_ACEOF
-
-
-ac_fn_c_check_decl "$LINENO" "strtold" "ac_cv_have_decl_strtold" "$ac_includes_default"
-if test "x$ac_cv_have_decl_strtold" = xyes; then :
-  ac_have_decl=1
-else
-  ac_have_decl=0
-fi
-
-cat >>confdefs.h <<_ACEOF
-@%:@define HAVE_DECL_STRTOLD $ac_have_decl
-_ACEOF
-if test $ac_have_decl = 1; then :
-  
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for broken strtold" >&5
-$as_echo_n "checking for broken strtold... " >&6; }
-    if ${bash_cv_strtold_broken+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <stdlib.h>
-int
-main ()
-{
-int main() { long double r; char *foo, bar; r = strtold(foo, &bar);}
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  bash_cv_strtold_broken=no
-else
-  bash_cv_strtold_broken=yes
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-       
-    
-fi
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_strtold_broken" >&5
-$as_echo "$bash_cv_strtold_broken" >&6; }
-    if test "$bash_cv_strtold_broken" = "yes" ; then
-       $as_echo "@%:@define STRTOLD_BROKEN 1" >>confdefs.h
-
-    fi
-
-fi
-
-
-
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for declaration of strtoimax" >&5
-$as_echo_n "checking for declaration of strtoimax... " >&6; }
-if ${bash_cv_decl_strtoimax+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#if STDC_HEADERS
-#  include <stdlib.h>
-#endif
-#if HAVE_INTTYPES_H
-#  include <inttypes.h>
-#endif
-
-int
-main ()
-{
-return !strtoimax;
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  bash_cv_decl_strtoimax=yes
-else
-  bash_cv_decl_strtoimax=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_decl_strtoimax" >&5
-$as_echo "$bash_cv_decl_strtoimax" >&6; }
-bash_tr_func=HAVE_DECL_`echo strtoimax | tr 'abcdefghijklmnopqrstuvwxyz' 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'`
-if test $bash_cv_decl_strtoimax = yes; then
-  cat >>confdefs.h <<_ACEOF
-@%:@define $bash_tr_func 1
-_ACEOF
-
-else
-  cat >>confdefs.h <<_ACEOF
-@%:@define $bash_tr_func 0
-_ACEOF
-
-fi
-
-
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for declaration of strtol" >&5
-$as_echo_n "checking for declaration of strtol... " >&6; }
-if ${bash_cv_decl_strtol+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#if STDC_HEADERS
-#  include <stdlib.h>
-#endif
-#if HAVE_INTTYPES_H
-#  include <inttypes.h>
-#endif
-
-int
-main ()
-{
-return !strtol;
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  bash_cv_decl_strtol=yes
-else
-  bash_cv_decl_strtol=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_decl_strtol" >&5
-$as_echo "$bash_cv_decl_strtol" >&6; }
-bash_tr_func=HAVE_DECL_`echo strtol | tr 'abcdefghijklmnopqrstuvwxyz' 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'`
-if test $bash_cv_decl_strtol = yes; then
-  cat >>confdefs.h <<_ACEOF
-@%:@define $bash_tr_func 1
-_ACEOF
-
-else
-  cat >>confdefs.h <<_ACEOF
-@%:@define $bash_tr_func 0
-_ACEOF
-
-fi
-
-
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for declaration of strtoll" >&5
-$as_echo_n "checking for declaration of strtoll... " >&6; }
-if ${bash_cv_decl_strtoll+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#if STDC_HEADERS
-#  include <stdlib.h>
-#endif
-#if HAVE_INTTYPES_H
-#  include <inttypes.h>
-#endif
-
-int
-main ()
-{
-return !strtoll;
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  bash_cv_decl_strtoll=yes
-else
-  bash_cv_decl_strtoll=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_decl_strtoll" >&5
-$as_echo "$bash_cv_decl_strtoll" >&6; }
-bash_tr_func=HAVE_DECL_`echo strtoll | tr 'abcdefghijklmnopqrstuvwxyz' 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'`
-if test $bash_cv_decl_strtoll = yes; then
-  cat >>confdefs.h <<_ACEOF
-@%:@define $bash_tr_func 1
-_ACEOF
-
-else
-  cat >>confdefs.h <<_ACEOF
-@%:@define $bash_tr_func 0
-_ACEOF
-
-fi
-
-
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for declaration of strtoul" >&5
-$as_echo_n "checking for declaration of strtoul... " >&6; }
-if ${bash_cv_decl_strtoul+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#if STDC_HEADERS
-#  include <stdlib.h>
-#endif
-#if HAVE_INTTYPES_H
-#  include <inttypes.h>
-#endif
-
-int
-main ()
-{
-return !strtoul;
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  bash_cv_decl_strtoul=yes
-else
-  bash_cv_decl_strtoul=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_decl_strtoul" >&5
-$as_echo "$bash_cv_decl_strtoul" >&6; }
-bash_tr_func=HAVE_DECL_`echo strtoul | tr 'abcdefghijklmnopqrstuvwxyz' 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'`
-if test $bash_cv_decl_strtoul = yes; then
-  cat >>confdefs.h <<_ACEOF
-@%:@define $bash_tr_func 1
-_ACEOF
-
-else
-  cat >>confdefs.h <<_ACEOF
-@%:@define $bash_tr_func 0
-_ACEOF
-
-fi
-
-
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for declaration of strtoull" >&5
-$as_echo_n "checking for declaration of strtoull... " >&6; }
-if ${bash_cv_decl_strtoull+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#if STDC_HEADERS
-#  include <stdlib.h>
-#endif
-#if HAVE_INTTYPES_H
-#  include <inttypes.h>
-#endif
-
-int
-main ()
-{
-return !strtoull;
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  bash_cv_decl_strtoull=yes
-else
-  bash_cv_decl_strtoull=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_decl_strtoull" >&5
-$as_echo "$bash_cv_decl_strtoull" >&6; }
-bash_tr_func=HAVE_DECL_`echo strtoull | tr 'abcdefghijklmnopqrstuvwxyz' 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'`
-if test $bash_cv_decl_strtoull = yes; then
-  cat >>confdefs.h <<_ACEOF
-@%:@define $bash_tr_func 1
-_ACEOF
-
-else
-  cat >>confdefs.h <<_ACEOF
-@%:@define $bash_tr_func 0
-_ACEOF
-
-fi
-
-
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for declaration of strtoumax" >&5
-$as_echo_n "checking for declaration of strtoumax... " >&6; }
-if ${bash_cv_decl_strtoumax+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#if STDC_HEADERS
-#  include <stdlib.h>
-#endif
-#if HAVE_INTTYPES_H
-#  include <inttypes.h>
-#endif
-
-int
-main ()
-{
-return !strtoumax;
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  bash_cv_decl_strtoumax=yes
-else
-  bash_cv_decl_strtoumax=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_decl_strtoumax" >&5
-$as_echo "$bash_cv_decl_strtoumax" >&6; }
-bash_tr_func=HAVE_DECL_`echo strtoumax | tr 'abcdefghijklmnopqrstuvwxyz' 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'`
-if test $bash_cv_decl_strtoumax = yes; then
-  cat >>confdefs.h <<_ACEOF
-@%:@define $bash_tr_func 1
-_ACEOF
-
-else
-  cat >>confdefs.h <<_ACEOF
-@%:@define $bash_tr_func 0
-_ACEOF
-
-fi
-
-
-
-
-
-
-  
-  for ac_func in $ac_func_list
-do :
-  as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
-ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
-if eval test \"x\$"$as_ac_var"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-@%:@define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1
-_ACEOF
-fi
-done
-
-  
-
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for working mktime" >&5
-$as_echo_n "checking for working mktime... " >&6; }
-if ${ac_cv_func_working_mktime+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test "$cross_compiling" = yes; then :
-  ac_cv_func_working_mktime=no
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-/* Test program from Paul Eggert and Tony Leneis.  */
-#ifdef TIME_WITH_SYS_TIME
-# include <sys/time.h>
-# include <time.h>
-#else
-# ifdef HAVE_SYS_TIME_H
-#  include <sys/time.h>
-# else
-#  include <time.h>
-# endif
-#endif
-
-#include <limits.h>
-#include <stdlib.h>
-
-#ifdef HAVE_UNISTD_H
-# include <unistd.h>
-#endif
-
-#ifndef HAVE_ALARM
-# define alarm(X) /* empty */
-#endif
-
-/* Work around redefinition to rpl_putenv by other config tests.  */
-#undef putenv
-
-static time_t time_t_max;
-static time_t time_t_min;
-
-/* Values we'll use to set the TZ environment variable.  */
-static const char *tz_strings[] = {
-  (const char *) 0, "TZ=GMT0", "TZ=JST-9",
-  "TZ=EST+3EDT+2,M10.1.0/00:00:00,M2.3.0/00:00:00"
-};
-#define N_STRINGS (sizeof (tz_strings) / sizeof (tz_strings[0]))
-
-/* Return 0 if mktime fails to convert a date in the spring-forward gap.
-   Based on a problem report from Andreas Jaeger.  */
-static int
-spring_forward_gap ()
-{
-  /* glibc (up to about 1998-10-07) failed this test. */
-  struct tm tm;
-
-  /* Use the portable POSIX.1 specification "TZ=PST8PDT,M4.1.0,M10.5.0"
-     instead of "TZ=America/Vancouver" in order to detect the bug even
-     on systems that don't support the Olson extension, or don't have the
-     full zoneinfo tables installed.  */
-  putenv ((char*) "TZ=PST8PDT,M4.1.0,M10.5.0");
-
-  tm.tm_year = 98;
-  tm.tm_mon = 3;
-  tm.tm_mday = 5;
-  tm.tm_hour = 2;
-  tm.tm_min = 0;
-  tm.tm_sec = 0;
-  tm.tm_isdst = -1;
-  return mktime (&tm) != (time_t) -1;
-}
-
-static int
-mktime_test1 (time_t now)
-{
-  struct tm *lt;
-  return ! (lt = localtime (&now)) || mktime (lt) == now;
-}
-
-static int
-mktime_test (time_t now)
-{
-  return (mktime_test1 (now)
-         && mktime_test1 ((time_t) (time_t_max - now))
-         && mktime_test1 ((time_t) (time_t_min + now)));
-}
-
-static int
-irix_6_4_bug ()
-{
-  /* Based on code from Ariel Faigon.  */
-  struct tm tm;
-  tm.tm_year = 96;
-  tm.tm_mon = 3;
-  tm.tm_mday = 0;
-  tm.tm_hour = 0;
-  tm.tm_min = 0;
-  tm.tm_sec = 0;
-  tm.tm_isdst = -1;
-  mktime (&tm);
-  return tm.tm_mon == 2 && tm.tm_mday == 31;
-}
-
-static int
-bigtime_test (int j)
-{
-  struct tm tm;
-  time_t now;
-  tm.tm_year = tm.tm_mon = tm.tm_mday = tm.tm_hour = tm.tm_min = tm.tm_sec = j;
-  now = mktime (&tm);
-  if (now != (time_t) -1)
-    {
-      struct tm *lt = localtime (&now);
-      if (! (lt
-            && lt->tm_year == tm.tm_year
-            && lt->tm_mon == tm.tm_mon
-            && lt->tm_mday == tm.tm_mday
-            && lt->tm_hour == tm.tm_hour
-            && lt->tm_min == tm.tm_min
-            && lt->tm_sec == tm.tm_sec
-            && lt->tm_yday == tm.tm_yday
-            && lt->tm_wday == tm.tm_wday
-            && ((lt->tm_isdst < 0 ? -1 : 0 < lt->tm_isdst)
-                 == (tm.tm_isdst < 0 ? -1 : 0 < tm.tm_isdst))))
-       return 0;
-    }
-  return 1;
-}
-
-static int
-year_2050_test ()
-{
-  /* The correct answer for 2050-02-01 00:00:00 in Pacific time,
-     ignoring leap seconds.  */
-  unsigned long int answer = 2527315200UL;
-
-  struct tm tm;
-  time_t t;
-  tm.tm_year = 2050 - 1900;
-  tm.tm_mon = 2 - 1;
-  tm.tm_mday = 1;
-  tm.tm_hour = tm.tm_min = tm.tm_sec = 0;
-  tm.tm_isdst = -1;
-
-  /* Use the portable POSIX.1 specification "TZ=PST8PDT,M4.1.0,M10.5.0"
-     instead of "TZ=America/Vancouver" in order to detect the bug even
-     on systems that don't support the Olson extension, or don't have the
-     full zoneinfo tables installed.  */
-  putenv ((char*) "TZ=PST8PDT,M4.1.0,M10.5.0");
-
-  t = mktime (&tm);
-
-  /* Check that the result is either a failure, or close enough
-     to the correct answer that we can assume the discrepancy is
-     due to leap seconds.  */
-  return (t == (time_t) -1
-         || (0 < t && answer - 120 <= t && t <= answer + 120));
-}
-
-int
-main ()
-{
-  time_t t, delta;
-  int i, j;
-
-  /* This test makes some buggy mktime implementations loop.
-     Give up after 60 seconds; a mktime slower than that
-     isn't worth using anyway.  */
-  alarm (60);
-
-  for (;;)
-    {
-      t = (time_t_max << 1) + 1;
-      if (t <= time_t_max)
-       break;
-      time_t_max = t;
-    }
-  time_t_min = - ((time_t) ~ (time_t) 0 == (time_t) -1) - time_t_max;
-
-  delta = time_t_max / 997; /* a suitable prime number */
-  for (i = 0; i < N_STRINGS; i++)
-    {
-      if (tz_strings[i])
-       putenv ((char*) tz_strings[i]);
-
-      for (t = 0; t <= time_t_max - delta; t += delta)
-       if (! mktime_test (t))
-         return 1;
-      if (! (mktime_test ((time_t) 1)
-            && mktime_test ((time_t) (60 * 60))
-            && mktime_test ((time_t) (60 * 60 * 24))))
-       return 1;
-
-      for (j = 1; ; j <<= 1)
-       if (! bigtime_test (j))
-         return 1;
-       else if (INT_MAX / 2 < j)
-         break;
-      if (! bigtime_test (INT_MAX))
-       return 1;
-    }
-  return ! (irix_6_4_bug () && spring_forward_gap () && year_2050_test ());
-}
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-  ac_cv_func_working_mktime=yes
-else
-  ac_cv_func_working_mktime=no
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_func_working_mktime" >&5
-$as_echo "$ac_cv_func_working_mktime" >&6; }
-if test $ac_cv_func_working_mktime = no; then
-  case " $LIB@&t@OBJS " in
-  *" mktime.$ac_objext "* ) ;;
-  *) LIB@&t@OBJS="$LIB@&t@OBJS mktime.$ac_objext"
- ;;
-esac
-
-fi
-
-
-
-for ac_header in argz.h errno.h fcntl.h malloc.h stdio_ext.h
-do :
-  as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
-ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default"
-if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-@%:@define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
-fi
-
-done
-
-
-
-for ac_func in getpagesize
-do :
-  ac_fn_c_check_func "$LINENO" "getpagesize" "ac_cv_func_getpagesize"
-if test "x$ac_cv_func_getpagesize" = xyes; then :
-  cat >>confdefs.h <<_ACEOF
-@%:@define HAVE_GETPAGESIZE 1
-_ACEOF
-fi
-done
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for working mmap" >&5
-$as_echo_n "checking for working mmap... " >&6; }
-if ${ac_cv_func_mmap_fixed_mapped+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test "$cross_compiling" = yes; then :
-  ac_cv_func_mmap_fixed_mapped=no
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-$ac_includes_default
-/* malloc might have been renamed as rpl_malloc. */
-#undef malloc
-
-/* Thanks to Mike Haertel and Jim Avera for this test.
-   Here is a matrix of mmap possibilities:
-       mmap private not fixed
-       mmap private fixed at somewhere currently unmapped
-       mmap private fixed at somewhere already mapped
-       mmap shared not fixed
-       mmap shared fixed at somewhere currently unmapped
-       mmap shared fixed at somewhere already mapped
-   For private mappings, we should verify that changes cannot be read()
-   back from the file, nor mmap's back from the file at a different
-   address.  (There have been systems where private was not correctly
-   implemented like the infamous i386 svr4.0, and systems where the
-   VM page cache was not coherent with the file system buffer cache
-   like early versions of FreeBSD and possibly contemporary NetBSD.)
-   For shared mappings, we should conversely verify that changes get
-   propagated back to all the places they're supposed to be.
-
-   Grep wants private fixed already mapped.
-   The main things grep needs to know about mmap are:
-   * does it exist and is it safe to write into the mmap'd area
-   * how to use it (BSD variants)  */
-
-#include <fcntl.h>
-#include <sys/mman.h>
-
-#if !defined STDC_HEADERS && !defined HAVE_STDLIB_H
-char *malloc ();
-#endif
-
-/* This mess was copied from the GNU getpagesize.h.  */
-#ifndef HAVE_GETPAGESIZE
-# ifdef _SC_PAGESIZE
-#  define getpagesize() sysconf(_SC_PAGESIZE)
-# else /* no _SC_PAGESIZE */
-#  ifdef HAVE_SYS_PARAM_H
-#   include <sys/param.h>
-#   ifdef EXEC_PAGESIZE
-#    define getpagesize() EXEC_PAGESIZE
-#   else /* no EXEC_PAGESIZE */
-#    ifdef NBPG
-#     define getpagesize() NBPG * CLSIZE
-#     ifndef CLSIZE
-#      define CLSIZE 1
-#     endif /* no CLSIZE */
-#    else /* no NBPG */
-#     ifdef NBPC
-#      define getpagesize() NBPC
-#     else /* no NBPC */
-#      ifdef PAGESIZE
-#       define getpagesize() PAGESIZE
-#      endif /* PAGESIZE */
-#     endif /* no NBPC */
-#    endif /* no NBPG */
-#   endif /* no EXEC_PAGESIZE */
-#  else /* no HAVE_SYS_PARAM_H */
-#   define getpagesize() 8192  /* punt totally */
-#  endif /* no HAVE_SYS_PARAM_H */
-# endif /* no _SC_PAGESIZE */
-
-#endif /* no HAVE_GETPAGESIZE */
-
-int
-main ()
-{
-  char *data, *data2, *data3;
-  const char *cdata2;
-  int i, pagesize;
-  int fd, fd2;
-
-  pagesize = getpagesize ();
-
-  /* First, make a file with some known garbage in it. */
-  data = (char *) malloc (pagesize);
-  if (!data)
-    return 1;
-  for (i = 0; i < pagesize; ++i)
-    *(data + i) = rand ();
-  umask (0);
-  fd = creat ("conftest.mmap", 0600);
-  if (fd < 0)
-    return 2;
-  if (write (fd, data, pagesize) != pagesize)
-    return 3;
-  close (fd);
-
-  /* Next, check that the tail of a page is zero-filled.  File must have
-     non-zero length, otherwise we risk SIGBUS for entire page.  */
-  fd2 = open ("conftest.txt", O_RDWR | O_CREAT | O_TRUNC, 0600);
-  if (fd2 < 0)
-    return 4;
-  cdata2 = "";
-  if (write (fd2, cdata2, 1) != 1)
-    return 5;
-  data2 = (char *) mmap (0, pagesize, PROT_READ | PROT_WRITE, MAP_SHARED, fd2, 0L);
-  if (data2 == MAP_FAILED)
-    return 6;
-  for (i = 0; i < pagesize; ++i)
-    if (*(data2 + i))
-      return 7;
-  close (fd2);
-  if (munmap (data2, pagesize))
-    return 8;
-
-  /* Next, try to mmap the file at a fixed address which already has
-     something else allocated at it.  If we can, also make sure that
-     we see the same garbage.  */
-  fd = open ("conftest.mmap", O_RDWR);
-  if (fd < 0)
-    return 9;
-  if (data2 != mmap (data2, pagesize, PROT_READ | PROT_WRITE,
-                    MAP_PRIVATE | MAP_FIXED, fd, 0L))
-    return 10;
-  for (i = 0; i < pagesize; ++i)
-    if (*(data + i) != *(data2 + i))
-      return 11;
-
-  /* Finally, make sure that changes to the mapped area do not
-     percolate back to the file as seen by read().  (This is a bug on
-     some variants of i386 svr4.0.)  */
-  for (i = 0; i < pagesize; ++i)
-    *(data2 + i) = *(data2 + i) + 1;
-  data3 = (char *) malloc (pagesize);
-  if (!data3)
-    return 12;
-  if (read (fd, data3, pagesize) != pagesize)
-    return 13;
-  for (i = 0; i < pagesize; ++i)
-    if (*(data + i) != *(data3 + i))
-      return 14;
-  close (fd);
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-  ac_cv_func_mmap_fixed_mapped=yes
-else
-  ac_cv_func_mmap_fixed_mapped=no
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_func_mmap_fixed_mapped" >&5
-$as_echo "$ac_cv_func_mmap_fixed_mapped" >&6; }
-if test $ac_cv_func_mmap_fixed_mapped = yes; then
-  
-$as_echo "@%:@define HAVE_MMAP 1" >>confdefs.h
-
-fi
-rm -f conftest.mmap conftest.txt
-
-for ac_func in __argz_count __argz_next __argz_stringify dcgettext mempcpy \
-               munmap stpcpy strcspn strdup
-do :
-  as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
-ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
-if eval test \"x\$"$as_ac_var"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-@%:@define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1
-_ACEOF
-fi
-done
-
-
-INTL_DEP= INTL_INC= LIBINTL_H=
-if test "x$USE_INCLUDED_LIBINTL" = "xyes"; then
-       INTL_DEP='${INTL_LIBDIR}/libintl.a'
-       INTL_INC='-I${INTL_LIBSRC} -I${INTL_BUILDDIR}'
-       LIBINTL_H='${INTL_BUILDDIR}/libintl.h'
-fi
-
-
-
-
-
-
-for ac_header in wctype.h
-do :
-  ac_fn_c_check_header_mongrel "$LINENO" "wctype.h" "ac_cv_header_wctype_h" "$ac_includes_default"
-if test "x$ac_cv_header_wctype_h" = xyes; then :
-  cat >>confdefs.h <<_ACEOF
-@%:@define HAVE_WCTYPE_H 1
-_ACEOF
-fi
-
-done
-
-for ac_header in wchar.h
-do :
-  ac_fn_c_check_header_mongrel "$LINENO" "wchar.h" "ac_cv_header_wchar_h" "$ac_includes_default"
-if test "x$ac_cv_header_wchar_h" = xyes; then :
-  cat >>confdefs.h <<_ACEOF
-@%:@define HAVE_WCHAR_H 1
-_ACEOF
-fi
-
-done
-
-for ac_header in langinfo.h
-do :
-  ac_fn_c_check_header_mongrel "$LINENO" "langinfo.h" "ac_cv_header_langinfo_h" "$ac_includes_default"
-if test "x$ac_cv_header_langinfo_h" = xyes; then :
-  cat >>confdefs.h <<_ACEOF
-@%:@define HAVE_LANGINFO_H 1
-_ACEOF
-fi
-
-done
-
-
-ac_fn_c_check_func "$LINENO" "mbrlen" "ac_cv_func_mbrlen"
-if test "x$ac_cv_func_mbrlen" = xyes; then :
-  $as_echo "@%:@define HAVE_MBRLEN 1" >>confdefs.h
-
-fi
-
-ac_fn_c_check_func "$LINENO" "mbscasecmp" "ac_cv_func_mbscasecmp"
-if test "x$ac_cv_func_mbscasecmp" = xyes; then :
-  $as_echo "@%:@define HAVE_MBSCMP 1" >>confdefs.h
-
-fi
-
-ac_fn_c_check_func "$LINENO" "mbscmp" "ac_cv_func_mbscmp"
-if test "x$ac_cv_func_mbscmp" = xyes; then :
-  $as_echo "@%:@define HAVE_MBSCMP 1" >>confdefs.h
-
-fi
-
-ac_fn_c_check_func "$LINENO" "mbsnrtowcs" "ac_cv_func_mbsnrtowcs"
-if test "x$ac_cv_func_mbsnrtowcs" = xyes; then :
-  $as_echo "@%:@define HAVE_MBSNRTOWCS 1" >>confdefs.h
-
-fi
-
-ac_fn_c_check_func "$LINENO" "mbsrtowcs" "ac_cv_func_mbsrtowcs"
-if test "x$ac_cv_func_mbsrtowcs" = xyes; then :
-  $as_echo "@%:@define HAVE_MBSRTOWCS 1" >>confdefs.h
-
-fi
-
-
-ac_fn_c_check_func "$LINENO" "mbschr" "ac_cv_func_mbschr"
-if test "x$ac_cv_func_mbschr" = xyes; then :
-  $as_echo "@%:@define HAVE_MBSCHR 1" >>confdefs.h
-
-else
-  case " $LIB@&t@OBJS " in
-  *" mbschr.$ac_objext "* ) ;;
-  *) LIB@&t@OBJS="$LIB@&t@OBJS mbschr.$ac_objext"
- ;;
-esac
-
-fi
-
-
-
-ac_fn_c_check_func "$LINENO" "wcrtomb" "ac_cv_func_wcrtomb"
-if test "x$ac_cv_func_wcrtomb" = xyes; then :
-  $as_echo "@%:@define HAVE_WCRTOMB 1" >>confdefs.h
-
-fi
-
-ac_fn_c_check_func "$LINENO" "wcscoll" "ac_cv_func_wcscoll"
-if test "x$ac_cv_func_wcscoll" = xyes; then :
-  $as_echo "@%:@define HAVE_WCSCOLL 1" >>confdefs.h
-
-fi
-
-ac_fn_c_check_func "$LINENO" "wcsdup" "ac_cv_func_wcsdup"
-if test "x$ac_cv_func_wcsdup" = xyes; then :
-  $as_echo "@%:@define HAVE_WCSDUP 1" >>confdefs.h
-
-fi
-
-ac_fn_c_check_func "$LINENO" "wcwidth" "ac_cv_func_wcwidth"
-if test "x$ac_cv_func_wcwidth" = xyes; then :
-  $as_echo "@%:@define HAVE_WCWIDTH 1" >>confdefs.h
-
-fi
-
-ac_fn_c_check_func "$LINENO" "wctype" "ac_cv_func_wctype"
-if test "x$ac_cv_func_wctype" = xyes; then :
-  $as_echo "@%:@define HAVE_WCTYPE 1" >>confdefs.h
-
-fi
-
-
-ac_fn_c_check_func "$LINENO" "wcswidth" "ac_cv_func_wcswidth"
-if test "x$ac_cv_func_wcswidth" = xyes; then :
-  $as_echo "@%:@define HAVE_WCSWIDTH 1" >>confdefs.h
-
-else
-  case " $LIB@&t@OBJS " in
-  *" wcswidth.$ac_objext "* ) ;;
-  *) LIB@&t@OBJS="$LIB@&t@OBJS wcswidth.$ac_objext"
- ;;
-esac
-
-fi
-
-
-
-
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether mbrtowc and mbstate_t are properly declared" >&5
-$as_echo_n "checking whether mbrtowc and mbstate_t are properly declared... " >&6; }
-if ${ac_cv_func_mbrtowc+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-@%:@include <wchar.h>
-int
-main ()
-{
-wchar_t wc;
-             char const s[] = "";
-             size_t n = 1;
-             mbstate_t state;
-             return ! (sizeof state && (mbrtowc) (&wc, s, n, &state));
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  ac_cv_func_mbrtowc=yes
-else
-  ac_cv_func_mbrtowc=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_func_mbrtowc" >&5
-$as_echo "$ac_cv_func_mbrtowc" >&6; }
-  if test $ac_cv_func_mbrtowc = yes; then
-    
-$as_echo "@%:@define HAVE_MBRTOWC 1" >>confdefs.h
-
-  fi
-
-if test $ac_cv_func_mbrtowc = yes; then
-       $as_echo "@%:@define HAVE_MBSTATE_T 1" >>confdefs.h
-
-fi
-
-for ac_func in iswlower iswupper towlower towupper iswctype
-do :
-  as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
-ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
-if eval test \"x\$"$as_ac_var"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-@%:@define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1
-_ACEOF
-fi
-done
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for nl_langinfo and CODESET" >&5
-$as_echo_n "checking for nl_langinfo and CODESET... " >&6; }
-if ${bash_cv_langinfo_codeset+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <langinfo.h>
-int
-main ()
-{
-char* cs = nl_langinfo(CODESET);
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  bash_cv_langinfo_codeset=yes
-else
-  bash_cv_langinfo_codeset=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_langinfo_codeset" >&5
-$as_echo "$bash_cv_langinfo_codeset" >&6; }
-if test $bash_cv_langinfo_codeset = yes; then
-  $as_echo "@%:@define HAVE_LANGINFO_CODESET 1" >>confdefs.h
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for wchar_t in wchar.h" >&5
-$as_echo_n "checking for wchar_t in wchar.h... " >&6; }
-if ${bash_cv_type_wchar_t+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <wchar.h>
-
-int
-main ()
-{
-
-        wchar_t foo;
-        foo = 0;
-
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  bash_cv_type_wchar_t=yes
-else
-  bash_cv_type_wchar_t=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_type_wchar_t" >&5
-$as_echo "$bash_cv_type_wchar_t" >&6; }
-if test $bash_cv_type_wchar_t = yes; then
-        
-$as_echo "@%:@define HAVE_WCHAR_T 1" >>confdefs.h
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for wctype_t in wctype.h" >&5
-$as_echo_n "checking for wctype_t in wctype.h... " >&6; }
-if ${bash_cv_type_wctype_t+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <wctype.h>
-int
-main ()
-{
-
-        wctype_t foo;
-        foo = 0;
-
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  bash_cv_type_wctype_t=yes
-else
-  bash_cv_type_wctype_t=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_type_wctype_t" >&5
-$as_echo "$bash_cv_type_wctype_t" >&6; }
-if test $bash_cv_type_wctype_t = yes; then
-        
-$as_echo "@%:@define HAVE_WCTYPE_T 1" >>confdefs.h
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for wint_t in wctype.h" >&5
-$as_echo_n "checking for wint_t in wctype.h... " >&6; }
-if ${bash_cv_type_wint_t+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <wctype.h>
-int
-main ()
-{
-
-        wint_t foo;
-        foo = 0;
-
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  bash_cv_type_wint_t=yes
-else
-  bash_cv_type_wint_t=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_type_wint_t" >&5
-$as_echo "$bash_cv_type_wint_t" >&6; }
-if test $bash_cv_type_wint_t = yes; then
-        
-$as_echo "@%:@define HAVE_WINT_T 1" >>confdefs.h
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for wcwidth broken with unicode combining characters" >&5
-$as_echo_n "checking for wcwidth broken with unicode combining characters... " >&6; }
-if ${bash_cv_wcwidth_broken+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test "$cross_compiling" = yes; then :
-  { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error $? "cannot run test program while cross compiling
-See \`config.log' for more details" "$LINENO" 5; }
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#include <unistd.h>
-#include <stdlib.h>
-#include <stdio.h>
-
-#include <locale.h>
-#include <wchar.h>
-
-main(c, v)
-int     c;
-char    **v;
-{
-        int     w;
-
-        setlocale(LC_ALL, "en_US.UTF-8");
-        w = wcwidth (0x0301);
-        exit (w == 0);  /* exit 0 if wcwidth broken */
-}
-
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-  bash_cv_wcwidth_broken=yes
-else
-  bash_cv_wcwdith_broken=no
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_wcwidth_broken" >&5
-$as_echo "$bash_cv_wcwidth_broken" >&6; }
-if test "$bash_cv_wcwidth_broken" = yes; then
-        
-$as_echo "@%:@define WCWIDTH_BROKEN 1" >>confdefs.h
-
-fi
-
-if test "$am_cv_func_iconv" = yes; then
-       OLDLIBS="$LIBS"
-       LIBS="$LIBS $LIBICONV"
-       for ac_func in locale_charset
-do :
-  ac_fn_c_check_func "$LINENO" "locale_charset" "ac_cv_func_locale_charset"
-if test "x$ac_cv_func_locale_charset" = xyes; then :
-  cat >>confdefs.h <<_ACEOF
-@%:@define HAVE_LOCALE_CHARSET 1
-_ACEOF
-fi
-done
-
-       LIBS="$OLDLIBS"
-fi
-
-
-
-if test "$opt_static_link" != yes; then
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for dlopen in -ldl" >&5
-$as_echo_n "checking for dlopen in -ldl... " >&6; }
-if ${ac_cv_lib_dl_dlopen+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_check_lib_save_LIBS=$LIBS
-LIBS="-ldl  $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-/* Override any GCC internal prototype to avoid an error.
-   Use char because int might match the return type of a GCC
-   builtin and then its argument prototype would still apply.  */
-#ifdef __cplusplus
-extern "C"
-#endif
-char dlopen ();
-int
-main ()
-{
-return dlopen ();
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  ac_cv_lib_dl_dlopen=yes
-else
-  ac_cv_lib_dl_dlopen=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dl_dlopen" >&5
-$as_echo "$ac_cv_lib_dl_dlopen" >&6; }
-if test "x$ac_cv_lib_dl_dlopen" = xyes; then :
-  cat >>confdefs.h <<_ACEOF
-@%:@define HAVE_LIBDL 1
-_ACEOF
-
-  LIBS="-ldl $LIBS"
-
-fi
-
-for ac_func in dlopen dlclose dlsym
-do :
-  as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
-ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
-if eval test \"x\$"$as_ac_var"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-@%:@define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1
-_ACEOF
-fi
-done
-
-fi
-
-ac_fn_c_check_decl "$LINENO" "sys_siglist" "ac_cv_have_decl_sys_siglist" "#include <signal.h>
-/* NetBSD declares sys_siglist in unistd.h.  */
-#ifdef HAVE_UNISTD_H
-# include <unistd.h>
-#endif
-
-"
-if test "x$ac_cv_have_decl_sys_siglist" = xyes; then :
-  ac_have_decl=1
-else
-  ac_have_decl=0
-fi
-
-cat >>confdefs.h <<_ACEOF
-@%:@define HAVE_DECL_SYS_SIGLIST $ac_have_decl
-_ACEOF
-
-
-
-if test "$ac_cv_func_inet_aton" != 'yes'; then
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for inet_aton" >&5
-$as_echo_n "checking for inet_aton... " >&6; }
-if ${bash_cv_func_inet_aton+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#include <sys/types.h>
-#include <netinet/in.h>
-#include <arpa/inet.h>
-struct in_addr ap;
-int
-main ()
-{
- inet_aton("127.0.0.1", &ap); 
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  bash_cv_func_inet_aton=yes
-else
-  bash_cv_func_inet_aton=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_func_inet_aton" >&5
-$as_echo "$bash_cv_func_inet_aton" >&6; }
-if test $bash_cv_func_inet_aton = yes; then
-  $as_echo "@%:@define HAVE_INET_ATON 1" >>confdefs.h
-
-else
-  case " $LIB@&t@OBJS " in
-  *" inet_aton.$ac_objext "* ) ;;
-  *) LIB@&t@OBJS="$LIB@&t@OBJS inet_aton.$ac_objext"
- ;;
-esac
-
-fi
-
-fi
-
-case "$host_os" in
-irix4*)        { $as_echo "$as_me:${as_lineno-$LINENO}: checking for getpwent in -lsun" >&5
-$as_echo_n "checking for getpwent in -lsun... " >&6; }
-if ${ac_cv_lib_sun_getpwent+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_check_lib_save_LIBS=$LIBS
-LIBS="-lsun  $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-/* Override any GCC internal prototype to avoid an error.
-   Use char because int might match the return type of a GCC
-   builtin and then its argument prototype would still apply.  */
-#ifdef __cplusplus
-extern "C"
-#endif
-char getpwent ();
-int
-main ()
-{
-return getpwent ();
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  ac_cv_lib_sun_getpwent=yes
-else
-  ac_cv_lib_sun_getpwent=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_sun_getpwent" >&5
-$as_echo "$ac_cv_lib_sun_getpwent" >&6; }
-if test "x$ac_cv_lib_sun_getpwent" = xyes; then :
-  cat >>confdefs.h <<_ACEOF
-@%:@define HAVE_LIBSUN 1
-_ACEOF
-
-  LIBS="-lsun $LIBS"
-
-fi
- ;;
-esac
-
-if test "$ac_cv_func_getpeername" = no; then
-       
-if test "X$bash_cv_have_socklib" = "X"; then
-_bash_needmsg=
-else
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for socket library" >&5
-$as_echo_n "checking for socket library... " >&6; }
-_bash_needmsg=yes
-fi
-if ${bash_cv_have_socklib+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for getpeername in -lsocket" >&5
-$as_echo_n "checking for getpeername in -lsocket... " >&6; }
-if ${ac_cv_lib_socket_getpeername+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_check_lib_save_LIBS=$LIBS
-LIBS="-lsocket -lnsl $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-/* Override any GCC internal prototype to avoid an error.
-   Use char because int might match the return type of a GCC
-   builtin and then its argument prototype would still apply.  */
-#ifdef __cplusplus
-extern "C"
-#endif
-char getpeername ();
-int
-main ()
-{
-return getpeername ();
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  ac_cv_lib_socket_getpeername=yes
-else
-  ac_cv_lib_socket_getpeername=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_socket_getpeername" >&5
-$as_echo "$ac_cv_lib_socket_getpeername" >&6; }
-if test "x$ac_cv_lib_socket_getpeername" = xyes; then :
-  bash_cv_have_socklib=yes
-else
-  bash_cv_have_socklib=no
-fi
-
-fi
-
-if test "X$_bash_needmsg" = Xyes; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_have_socklib" >&5
-$as_echo "$bash_cv_have_socklib" >&6; }
-  _bash_needmsg=
-fi
-if test $bash_cv_have_socklib = yes; then
-  # check for libnsl, add it to LIBS if present
-  if test "X$bash_cv_have_libnsl" = "X"; then
-    _bash_needmsg=
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for libnsl" >&5
-$as_echo_n "checking for libnsl... " >&6; }
-    _bash_needmsg=yes
-  fi
-  if ${bash_cv_have_libnsl+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for t_open in -lnsl" >&5
-$as_echo_n "checking for t_open in -lnsl... " >&6; }
-if ${ac_cv_lib_nsl_t_open+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_check_lib_save_LIBS=$LIBS
-LIBS="-lnsl  $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-/* Override any GCC internal prototype to avoid an error.
-   Use char because int might match the return type of a GCC
-   builtin and then its argument prototype would still apply.  */
-#ifdef __cplusplus
-extern "C"
-#endif
-char t_open ();
-int
-main ()
-{
-return t_open ();
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  ac_cv_lib_nsl_t_open=yes
-else
-  ac_cv_lib_nsl_t_open=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_nsl_t_open" >&5
-$as_echo "$ac_cv_lib_nsl_t_open" >&6; }
-if test "x$ac_cv_lib_nsl_t_open" = xyes; then :
-  bash_cv_have_libnsl=yes
-else
-  bash_cv_have_libnsl=no
-fi
-
-fi
-
-  if test "X$_bash_needmsg" = Xyes; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_have_libnsl" >&5
-$as_echo "$bash_cv_have_libnsl" >&6; }
-    _bash_needmsg=
-  fi
-  if test $bash_cv_have_libnsl = yes; then
-    LIBS="-lsocket -lnsl $LIBS"
-  else
-    LIBS="-lsocket $LIBS"
-  fi
-  $as_echo "@%:@define HAVE_LIBSOCKET 1" >>confdefs.h
-
-  $as_echo "@%:@define HAVE_GETPEERNAME 1" >>confdefs.h
-
-fi
-
-fi
-if test "$ac_cv_func_gethostbyname" = no; then
-       if test "X$bash_cv_have_gethostbyname" = "X"; then
-_bash_needmsg=yes
-else
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for gethostbyname in socket library" >&5
-$as_echo_n "checking for gethostbyname in socket library... " >&6; }
-_bash_needmsg=
-fi
-if ${bash_cv_have_gethostbyname+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <netdb.h>
-int
-main ()
-{
- struct hostent *hp;
-  hp = gethostbyname("localhost");
-
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  bash_cv_have_gethostbyname=yes
-else
-  bash_cv_have_gethostbyname=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-
-fi
-
-if test "X$_bash_needmsg" = Xyes; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for gethostbyname in socket library" >&5
-$as_echo_n "checking for gethostbyname in socket library... " >&6; }
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_have_gethostbyname" >&5
-$as_echo "$bash_cv_have_gethostbyname" >&6; }
-if test "$bash_cv_have_gethostbyname" = yes; then
-$as_echo "@%:@define HAVE_GETHOSTBYNAME 1" >>confdefs.h
-
-fi
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for uid_t in sys/types.h" >&5
-$as_echo_n "checking for uid_t in sys/types.h... " >&6; }
-if ${ac_cv_type_uid_t+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <sys/types.h>
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "uid_t" >/dev/null 2>&1; then :
-  ac_cv_type_uid_t=yes
-else
-  ac_cv_type_uid_t=no
-fi
-rm -f conftest*
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_type_uid_t" >&5
-$as_echo "$ac_cv_type_uid_t" >&6; }
-if test $ac_cv_type_uid_t = no; then
-  
-$as_echo "@%:@define uid_t int" >>confdefs.h
-
-  
-$as_echo "@%:@define gid_t int" >>confdefs.h
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking type of array argument to getgroups" >&5
-$as_echo_n "checking type of array argument to getgroups... " >&6; }
-if ${ac_cv_type_getgroups+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test "$cross_compiling" = yes; then :
-  ac_cv_type_getgroups=cross
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-/* Thanks to Mike Rendell for this test.  */
-$ac_includes_default
-#define NGID 256
-#undef MAX
-#define MAX(x, y) ((x) > (y) ? (x) : (y))
-
-int
-main ()
-{
-  gid_t gidset[NGID];
-  int i, n;
-  union { gid_t gval; long int lval; }  val;
-
-  val.lval = -1;
-  for (i = 0; i < NGID; i++)
-    gidset[i] = val.gval;
-  n = getgroups (sizeof (gidset) / MAX (sizeof (int), sizeof (gid_t)) - 1,
-                gidset);
-  /* Exit non-zero if getgroups seems to require an array of ints.  This
-     happens when gid_t is short int but getgroups modifies an array
-     of ints.  */
-  return n > 0 && gidset[n] != val.gval;
-}
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-  ac_cv_type_getgroups=gid_t
-else
-  ac_cv_type_getgroups=int
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-if test $ac_cv_type_getgroups = cross; then
-        cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <unistd.h>
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "getgroups.*int.*gid_t" >/dev/null 2>&1; then :
-  ac_cv_type_getgroups=gid_t
-else
-  ac_cv_type_getgroups=int
-fi
-rm -f conftest*
-
-fi
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_type_getgroups" >&5
-$as_echo "$ac_cv_type_getgroups" >&6; }
-
-cat >>confdefs.h <<_ACEOF
-@%:@define GETGROUPS_T $ac_cv_type_getgroups
-_ACEOF
-
-
-ac_fn_c_check_type "$LINENO" "off_t" "ac_cv_type_off_t" "$ac_includes_default"
-if test "x$ac_cv_type_off_t" = xyes; then :
-  
-else
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define off_t long int
-_ACEOF
-
-fi
-
-ac_fn_c_check_type "$LINENO" "mode_t" "ac_cv_type_mode_t" "$ac_includes_default"
-if test "x$ac_cv_type_mode_t" = xyes; then :
-  
-else
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define mode_t int
-_ACEOF
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for uid_t in sys/types.h" >&5
-$as_echo_n "checking for uid_t in sys/types.h... " >&6; }
-if ${ac_cv_type_uid_t+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <sys/types.h>
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "uid_t" >/dev/null 2>&1; then :
-  ac_cv_type_uid_t=yes
-else
-  ac_cv_type_uid_t=no
-fi
-rm -f conftest*
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_type_uid_t" >&5
-$as_echo "$ac_cv_type_uid_t" >&6; }
-if test $ac_cv_type_uid_t = no; then
-  
-$as_echo "@%:@define uid_t int" >>confdefs.h
-
-  
-$as_echo "@%:@define gid_t int" >>confdefs.h
-
-fi
-
-ac_fn_c_check_type "$LINENO" "pid_t" "ac_cv_type_pid_t" "$ac_includes_default"
-if test "x$ac_cv_type_pid_t" = xyes; then :
-  
-else
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define pid_t int
-_ACEOF
-
-fi
-
-ac_fn_c_check_type "$LINENO" "size_t" "ac_cv_type_size_t" "$ac_includes_default"
-if test "x$ac_cv_type_size_t" = xyes; then :
-  
-else
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define size_t unsigned int
-_ACEOF
-
-fi
-
-ac_fn_c_check_type "$LINENO" "ssize_t" "ac_cv_type_ssize_t" "$ac_includes_default"
-if test "x$ac_cv_type_ssize_t" = xyes; then :
-  
-else
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define ssize_t int
-_ACEOF
-
-fi
-
-ac_fn_c_check_type "$LINENO" "time_t" "ac_cv_type_time_t" "$ac_includes_default"
-if test "x$ac_cv_type_time_t" = xyes; then :
-  
-else
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define time_t long
-_ACEOF
-
-fi
-
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for long long" >&5
-$as_echo_n "checking for long long... " >&6; }
-if ${bash_cv_type_long_long+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-long long ll = 1; int i = 63;
-int
-main ()
-{
-
-long long llm = (long long) -1;
-return ll << i | ll >> i | llm / ll | llm % ll;
-
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  bash_cv_type_long_long='long long'
-else
-  bash_cv_type_long_long='long'
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_type_long_long" >&5
-$as_echo "$bash_cv_type_long_long" >&6; }
-if test "$bash_cv_type_long_long" = 'long long'; then
-  $as_echo "@%:@define HAVE_LONG_LONG 1" >>confdefs.h
-
-fi
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for unsigned long long" >&5
-$as_echo_n "checking for unsigned long long... " >&6; }
-if ${bash_cv_type_unsigned_long_long+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-unsigned long long ull = 1; int i = 63;
-int
-main ()
-{
-
-unsigned long long ullmax = (unsigned long long) -1;
-return ull << i | ull >> i | ullmax / ull | ullmax % ull;
-
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  bash_cv_type_unsigned_long_long='unsigned long long'
-else
-  bash_cv_type_unsigned_long_long='unsigned long'
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_type_unsigned_long_long" >&5
-$as_echo "$bash_cv_type_unsigned_long_long" >&6; }
-if test "$bash_cv_type_unsigned_long_long" = 'unsigned long long'; then
-  $as_echo "@%:@define HAVE_UNSIGNED_LONG_LONG 1" >>confdefs.h
-
-fi
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking return type of signal handlers" >&5
-$as_echo_n "checking return type of signal handlers... " >&6; }
-if ${ac_cv_type_signal+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <sys/types.h>
-#include <signal.h>
-
-int
-main ()
-{
-return *(signal (0, 0)) (0) == 1;
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_cv_type_signal=int
-else
-  ac_cv_type_signal=void
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_type_signal" >&5
-$as_echo "$ac_cv_type_signal" >&6; }
-
-cat >>confdefs.h <<_ACEOF
-@%:@define RETSIGTYPE $ac_cv_type_signal
-_ACEOF
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for sig_atomic_t in signal.h" >&5
-$as_echo_n "checking for sig_atomic_t in signal.h... " >&6; }
-if ${ac_cv_have_sig_atomic_t+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#include <signal.h>
-
-int
-main ()
-{
- sig_atomic_t x; 
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  ac_cv_have_sig_atomic_t=yes
-else
-  ac_cv_have_sig_atomic_t=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_have_sig_atomic_t" >&5
-$as_echo "$ac_cv_have_sig_atomic_t" >&6; }
-if test "$ac_cv_have_sig_atomic_t" = "no"
-then
-    ac_fn_c_check_type "$LINENO" "sig_atomic_t" "ac_cv_type_sig_atomic_t" "$ac_includes_default"
-if test "x$ac_cv_type_sig_atomic_t" = xyes; then :
-  
-else
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define sig_atomic_t int
-_ACEOF
-
-fi
-
-fi
-
-
-# The cast to long int works around a bug in the HP C Compiler
-# version HP92453-01 B.11.11.23709.GP, which incorrectly rejects
-# declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'.
-# This bug is HP SR number 8606223364.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking size of char" >&5
-$as_echo_n "checking size of char... " >&6; }
-if ${ac_cv_sizeof_char+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (char))" "ac_cv_sizeof_char"        "$ac_includes_default"; then :
-  
-else
-  if test "$ac_cv_type_char" = yes; then
-     { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error 77 "cannot compute sizeof (char)
-See \`config.log' for more details" "$LINENO" 5; }
-   else
-     ac_cv_sizeof_char=0
-   fi
-fi
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_char" >&5
-$as_echo "$ac_cv_sizeof_char" >&6; }
-
-
-
-cat >>confdefs.h <<_ACEOF
-@%:@define SIZEOF_CHAR $ac_cv_sizeof_char
-_ACEOF
-
-
-# The cast to long int works around a bug in the HP C Compiler
-# version HP92453-01 B.11.11.23709.GP, which incorrectly rejects
-# declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'.
-# This bug is HP SR number 8606223364.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking size of short" >&5
-$as_echo_n "checking size of short... " >&6; }
-if ${ac_cv_sizeof_short+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (short))" "ac_cv_sizeof_short"        "$ac_includes_default"; then :
-  
-else
-  if test "$ac_cv_type_short" = yes; then
-     { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error 77 "cannot compute sizeof (short)
-See \`config.log' for more details" "$LINENO" 5; }
-   else
-     ac_cv_sizeof_short=0
-   fi
-fi
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_short" >&5
-$as_echo "$ac_cv_sizeof_short" >&6; }
-
-
-
-cat >>confdefs.h <<_ACEOF
-@%:@define SIZEOF_SHORT $ac_cv_sizeof_short
-_ACEOF
-
-
-# The cast to long int works around a bug in the HP C Compiler
-# version HP92453-01 B.11.11.23709.GP, which incorrectly rejects
-# declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'.
-# This bug is HP SR number 8606223364.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking size of int" >&5
-$as_echo_n "checking size of int... " >&6; }
-if ${ac_cv_sizeof_int+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (int))" "ac_cv_sizeof_int"        "$ac_includes_default"; then :
-  
-else
-  if test "$ac_cv_type_int" = yes; then
-     { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error 77 "cannot compute sizeof (int)
-See \`config.log' for more details" "$LINENO" 5; }
-   else
-     ac_cv_sizeof_int=0
-   fi
-fi
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_int" >&5
-$as_echo "$ac_cv_sizeof_int" >&6; }
-
-
-
-cat >>confdefs.h <<_ACEOF
-@%:@define SIZEOF_INT $ac_cv_sizeof_int
-_ACEOF
-
-
-# The cast to long int works around a bug in the HP C Compiler
-# version HP92453-01 B.11.11.23709.GP, which incorrectly rejects
-# declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'.
-# This bug is HP SR number 8606223364.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking size of long" >&5
-$as_echo_n "checking size of long... " >&6; }
-if ${ac_cv_sizeof_long+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (long))" "ac_cv_sizeof_long"        "$ac_includes_default"; then :
-  
-else
-  if test "$ac_cv_type_long" = yes; then
-     { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error 77 "cannot compute sizeof (long)
-See \`config.log' for more details" "$LINENO" 5; }
-   else
-     ac_cv_sizeof_long=0
-   fi
-fi
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_long" >&5
-$as_echo "$ac_cv_sizeof_long" >&6; }
-
-
-
-cat >>confdefs.h <<_ACEOF
-@%:@define SIZEOF_LONG $ac_cv_sizeof_long
-_ACEOF
-
-
-# The cast to long int works around a bug in the HP C Compiler
-# version HP92453-01 B.11.11.23709.GP, which incorrectly rejects
-# declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'.
-# This bug is HP SR number 8606223364.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking size of char *" >&5
-$as_echo_n "checking size of char *... " >&6; }
-if ${ac_cv_sizeof_char_p+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (char *))" "ac_cv_sizeof_char_p"        "$ac_includes_default"; then :
-  
-else
-  if test "$ac_cv_type_char_p" = yes; then
-     { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error 77 "cannot compute sizeof (char *)
-See \`config.log' for more details" "$LINENO" 5; }
-   else
-     ac_cv_sizeof_char_p=0
-   fi
-fi
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_char_p" >&5
-$as_echo "$ac_cv_sizeof_char_p" >&6; }
-
-
-
-cat >>confdefs.h <<_ACEOF
-@%:@define SIZEOF_CHAR_P $ac_cv_sizeof_char_p
-_ACEOF
-
-
-# The cast to long int works around a bug in the HP C Compiler
-# version HP92453-01 B.11.11.23709.GP, which incorrectly rejects
-# declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'.
-# This bug is HP SR number 8606223364.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking size of double" >&5
-$as_echo_n "checking size of double... " >&6; }
-if ${ac_cv_sizeof_double+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (double))" "ac_cv_sizeof_double"        "$ac_includes_default"; then :
-  
-else
-  if test "$ac_cv_type_double" = yes; then
-     { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error 77 "cannot compute sizeof (double)
-See \`config.log' for more details" "$LINENO" 5; }
-   else
-     ac_cv_sizeof_double=0
-   fi
-fi
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_double" >&5
-$as_echo "$ac_cv_sizeof_double" >&6; }
-
-
-
-cat >>confdefs.h <<_ACEOF
-@%:@define SIZEOF_DOUBLE $ac_cv_sizeof_double
-_ACEOF
-
-
-# The cast to long int works around a bug in the HP C Compiler
-# version HP92453-01 B.11.11.23709.GP, which incorrectly rejects
-# declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'.
-# This bug is HP SR number 8606223364.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking size of long long" >&5
-$as_echo_n "checking size of long long... " >&6; }
-if ${ac_cv_sizeof_long_long+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (long long))" "ac_cv_sizeof_long_long"        "$ac_includes_default"; then :
-  
-else
-  if test "$ac_cv_type_long_long" = yes; then
-     { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error 77 "cannot compute sizeof (long long)
-See \`config.log' for more details" "$LINENO" 5; }
-   else
-     ac_cv_sizeof_long_long=0
-   fi
-fi
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_long_long" >&5
-$as_echo "$ac_cv_sizeof_long_long" >&6; }
-
-
-
-cat >>confdefs.h <<_ACEOF
-@%:@define SIZEOF_LONG_LONG $ac_cv_sizeof_long_long
-_ACEOF
-
-
-
-ac_fn_c_check_type "$LINENO" "u_int" "ac_cv_type_u_int" "$ac_includes_default"
-if test "x$ac_cv_type_u_int" = xyes; then :
-  
-else
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define u_int unsigned int
-_ACEOF
-
-fi
-
-ac_fn_c_check_type "$LINENO" "u_long" "ac_cv_type_u_long" "$ac_includes_default"
-if test "x$ac_cv_type_u_long" = xyes; then :
-  
-else
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define u_long unsigned long
-_ACEOF
-
-fi
-
-
-
-if test "$ac_cv_sizeof_short" = 2; then
-  ac_fn_c_check_type "$LINENO" "bits16_t" "ac_cv_type_bits16_t" "$ac_includes_default"
-if test "x$ac_cv_type_bits16_t" = xyes; then :
-  
-else
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define bits16_t short
-_ACEOF
-
-fi
-
-elif test "$ac_cv_sizeof_char" = 2; then
-  ac_fn_c_check_type "$LINENO" "bits16_t" "ac_cv_type_bits16_t" "$ac_includes_default"
-if test "x$ac_cv_type_bits16_t" = xyes; then :
-  
-else
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define bits16_t char
-_ACEOF
-
-fi
-
-else
-  ac_fn_c_check_type "$LINENO" "bits16_t" "ac_cv_type_bits16_t" "$ac_includes_default"
-if test "x$ac_cv_type_bits16_t" = xyes; then :
-  
-else
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define bits16_t short
-_ACEOF
-
-fi
-
-fi
-
-
-if test "$ac_cv_sizeof_short" = 2; then
-  ac_fn_c_check_type "$LINENO" "u_bits16_t" "ac_cv_type_u_bits16_t" "$ac_includes_default"
-if test "x$ac_cv_type_u_bits16_t" = xyes; then :
-  
-else
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define u_bits16_t unsigned short
-_ACEOF
-
-fi
-
-elif test "$ac_cv_sizeof_char" = 2; then
-  ac_fn_c_check_type "$LINENO" "u_bits16_t" "ac_cv_type_u_bits16_t" "$ac_includes_default"
-if test "x$ac_cv_type_u_bits16_t" = xyes; then :
-  
-else
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define u_bits16_t unsigned char
-_ACEOF
-
-fi
-
-else
-  ac_fn_c_check_type "$LINENO" "u_bits16_t" "ac_cv_type_u_bits16_t" "$ac_includes_default"
-if test "x$ac_cv_type_u_bits16_t" = xyes; then :
-  
-else
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define u_bits16_t unsigned short
-_ACEOF
-
-fi
-
-fi
-
-
-if test "$ac_cv_sizeof_int" = 4; then
-  ac_fn_c_check_type "$LINENO" "bits32_t" "ac_cv_type_bits32_t" "$ac_includes_default"
-if test "x$ac_cv_type_bits32_t" = xyes; then :
-  
-else
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define bits32_t int
-_ACEOF
-
-fi
-
-elif test "$ac_cv_sizeof_long" = 4; then
-  ac_fn_c_check_type "$LINENO" "bits32_t" "ac_cv_type_bits32_t" "$ac_includes_default"
-if test "x$ac_cv_type_bits32_t" = xyes; then :
-  
-else
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define bits32_t long
-_ACEOF
-
-fi
-
-else
-  ac_fn_c_check_type "$LINENO" "bits32_t" "ac_cv_type_bits32_t" "$ac_includes_default"
-if test "x$ac_cv_type_bits32_t" = xyes; then :
-  
-else
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define bits32_t int
-_ACEOF
-
-fi
-
-fi
-
-
-if test "$ac_cv_sizeof_int" = 4; then
-  ac_fn_c_check_type "$LINENO" "u_bits32_t" "ac_cv_type_u_bits32_t" "$ac_includes_default"
-if test "x$ac_cv_type_u_bits32_t" = xyes; then :
-  
-else
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define u_bits32_t unsigned int
-_ACEOF
-
-fi
-
-elif test "$ac_cv_sizeof_long" = 4; then
-  ac_fn_c_check_type "$LINENO" "u_bits32_t" "ac_cv_type_u_bits32_t" "$ac_includes_default"
-if test "x$ac_cv_type_u_bits32_t" = xyes; then :
-  
-else
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define u_bits32_t unsigned long
-_ACEOF
-
-fi
-
-else
-  ac_fn_c_check_type "$LINENO" "u_bits32_t" "ac_cv_type_u_bits32_t" "$ac_includes_default"
-if test "x$ac_cv_type_u_bits32_t" = xyes; then :
-  
-else
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define u_bits32_t unsigned int
-_ACEOF
-
-fi
-
-fi
-
-
-if test "$ac_cv_sizeof_char_p" = 8; then
-  ac_fn_c_check_type "$LINENO" "bits64_t" "ac_cv_type_bits64_t" "$ac_includes_default"
-if test "x$ac_cv_type_bits64_t" = xyes; then :
-  
-else
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define bits64_t char *
-_ACEOF
-
-fi
-
-elif test "$ac_cv_sizeof_double" = 8; then
-  ac_fn_c_check_type "$LINENO" "bits64_t" "ac_cv_type_bits64_t" "$ac_includes_default"
-if test "x$ac_cv_type_bits64_t" = xyes; then :
-  
-else
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define bits64_t double
-_ACEOF
-
-fi
-
-elif test -n "$ac_cv_type_long_long" && test "$ac_cv_sizeof_long_long" = 8; then
-  ac_fn_c_check_type "$LINENO" "bits64_t" "ac_cv_type_bits64_t" "$ac_includes_default"
-if test "x$ac_cv_type_bits64_t" = xyes; then :
-  
-else
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define bits64_t long long
-_ACEOF
-
-fi
-
-elif test "$ac_cv_sizeof_long" = 8; then
-  ac_fn_c_check_type "$LINENO" "bits64_t" "ac_cv_type_bits64_t" "$ac_includes_default"
-if test "x$ac_cv_type_bits64_t" = xyes; then :
-  
-else
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define bits64_t long
-_ACEOF
-
-fi
-
-else
-  ac_fn_c_check_type "$LINENO" "bits64_t" "ac_cv_type_bits64_t" "$ac_includes_default"
-if test "x$ac_cv_type_bits64_t" = xyes; then :
-  
-else
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define bits64_t double
-_ACEOF
-
-fi
-
-fi
-
-
-
-if test "$ac_cv_sizeof_int" = "$ac_cv_sizeof_char_p"; then
-  ac_fn_c_check_type "$LINENO" "ptrdiff_t" "ac_cv_type_ptrdiff_t" "$ac_includes_default"
-if test "x$ac_cv_type_ptrdiff_t" = xyes; then :
-  
-else
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define ptrdiff_t int
-_ACEOF
-
-fi
-
-elif test "$ac_cv_sizeof_long" = "$ac_cv_sizeof_char_p"; then
-  ac_fn_c_check_type "$LINENO" "ptrdiff_t" "ac_cv_type_ptrdiff_t" "$ac_includes_default"
-if test "x$ac_cv_type_ptrdiff_t" = xyes; then :
-  
-else
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define ptrdiff_t long
-_ACEOF
-
-fi
-
-elif test "$ac_cv_type_long_long" = yes && test "$ac_cv_sizeof_long_long" = "$ac_cv_sizeof_char_p"; then
-  ac_fn_c_check_type "$LINENO" "ptrdiff_t" "ac_cv_type_ptrdiff_t" "$ac_includes_default"
-if test "x$ac_cv_type_ptrdiff_t" = xyes; then :
-  
-else
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define ptrdiff_t long long
-_ACEOF
-
-fi
-
-else
-  ac_fn_c_check_type "$LINENO" "ptrdiff_t" "ac_cv_type_ptrdiff_t" "$ac_includes_default"
-if test "x$ac_cv_type_ptrdiff_t" = xyes; then :
-  
-else
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define ptrdiff_t int
-_ACEOF
-
-fi
-
-fi
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether stat file-mode macros are broken" >&5
-$as_echo_n "checking whether stat file-mode macros are broken... " >&6; }
-if ${ac_cv_header_stat_broken+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <sys/types.h>
-#include <sys/stat.h>
-
-#if defined S_ISBLK && defined S_IFDIR
-extern char c1[S_ISBLK (S_IFDIR) ? -1 : 1];
-#endif
-
-#if defined S_ISBLK && defined S_IFCHR
-extern char c2[S_ISBLK (S_IFCHR) ? -1 : 1];
-#endif
-
-#if defined S_ISLNK && defined S_IFREG
-extern char c3[S_ISLNK (S_IFREG) ? -1 : 1];
-#endif
-
-#if defined S_ISSOCK && defined S_IFREG
-extern char c4[S_ISSOCK (S_IFREG) ? -1 : 1];
-#endif
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_cv_header_stat_broken=no
-else
-  ac_cv_header_stat_broken=yes
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_stat_broken" >&5
-$as_echo "$ac_cv_header_stat_broken" >&6; }
-if test $ac_cv_header_stat_broken = yes; then
-  
-$as_echo "@%:@define STAT_MACROS_BROKEN 1" >>confdefs.h
-
-fi
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether @%:@! works in shell scripts" >&5
-$as_echo_n "checking whether @%:@! works in shell scripts... " >&6; }
-if ${ac_cv_sys_interpreter+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  echo '#! /bin/cat
-exit 69
-' >conftest
-chmod u+x conftest
-(SHELL=/bin/sh; export SHELL; ./conftest >/dev/null 2>&1)
-if test $? -ne 69; then
-   ac_cv_sys_interpreter=yes
-else
-   ac_cv_sys_interpreter=no
-fi
-rm -f conftest
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sys_interpreter" >&5
-$as_echo "$ac_cv_sys_interpreter" >&6; }
-interpval=$ac_cv_sys_interpreter
-
-if test $ac_cv_sys_interpreter = yes; then
-$as_echo "@%:@define HAVE_HASH_BANG_EXEC 1" >>confdefs.h
-
-fi
-
-if test "$ac_cv_func_lstat" = "no"; then
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for lstat" >&5
-$as_echo_n "checking for lstat... " >&6; }
-if ${bash_cv_func_lstat+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#include <sys/types.h>
-#include <sys/stat.h>
-
-int
-main ()
-{
- lstat(".",(struct stat *)0); 
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  bash_cv_func_lstat=yes
-else
-  bash_cv_func_lstat=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_func_lstat" >&5
-$as_echo "$bash_cv_func_lstat" >&6; }
-if test $bash_cv_func_lstat = yes; then
-  $as_echo "@%:@define HAVE_LSTAT 1" >>confdefs.h
-
-fi
-
-fi
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the ctype macros accept non-ascii characters" >&5
-$as_echo_n "checking whether the ctype macros accept non-ascii characters... " >&6; }
-if ${bash_cv_func_ctype_nonascii+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test "$cross_compiling" = yes; then :
-  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cannot check ctype macros if cross compiling -- defaulting to no" >&5
-$as_echo "$as_me: WARNING: cannot check ctype macros if cross compiling -- defaulting to no" >&2;}
-    bash_cv_func_ctype_nonascii=no
-
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#ifdef HAVE_LOCALE_H
-#include <locale.h>
-#endif
-#include <stdio.h>
-#include <ctype.h>
-
-main(c, v)
-int    c;
-char   *v[];
-{
-       char    *deflocale;
-       unsigned char x;
-       int     r1, r2;
-
-#ifdef HAVE_SETLOCALE
-       /* We take a shot here.  If that locale is not known, try the
-          system default.  We try this one because '\342' (226) is
-          known to be a printable character in that locale. */
-       deflocale = setlocale(LC_ALL, "en_US.ISO8859-1");
-       if (deflocale == 0)
-               deflocale = setlocale(LC_ALL, "");
-#endif
-
-       x = '\342';
-       r1 = isprint(x);
-       x -= 128;
-       r2 = isprint(x);
-       exit (r1 == 0 || r2 == 0);
-}
-
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-  bash_cv_func_ctype_nonascii=yes
-else
-  bash_cv_func_ctype_nonascii=no
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_func_ctype_nonascii" >&5
-$as_echo "$bash_cv_func_ctype_nonascii" >&6; }
-if test $bash_cv_func_ctype_nonascii = yes; then
-$as_echo "@%:@define CTYPE_NON_ASCII 1" >>confdefs.h
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if dup2 fails to clear the close-on-exec flag" >&5
-$as_echo_n "checking if dup2 fails to clear the close-on-exec flag... " >&6; }
-if ${bash_cv_dup2_broken+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test "$cross_compiling" = yes; then :
-  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cannot check dup2 if cross compiling -- defaulting to no" >&5
-$as_echo "$as_me: WARNING: cannot check dup2 if cross compiling -- defaulting to no" >&2;}
-     bash_cv_dup2_broken=no
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#include <sys/types.h>
-#include <fcntl.h>
-main()
-{
-  int fd1, fd2, fl;
-  fd1 = open("/dev/null", 2);
-  if (fcntl(fd1, 2, 1) < 0)
-    exit(1);
-  fd2 = dup2(fd1, 1);
-  if (fd2 < 0)
-    exit(2);
-  fl = fcntl(fd2, 1, 0);
-  /* fl will be 1 if dup2 did not reset the close-on-exec flag. */
-  exit(fl != 1);
-}
-
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-  bash_cv_dup2_broken=yes
-else
-  bash_cv_dup2_broken=no
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_dup2_broken" >&5
-$as_echo "$bash_cv_dup2_broken" >&6; }
-if test $bash_cv_dup2_broken = yes; then
-$as_echo "@%:@define DUP2_BROKEN 1" >>confdefs.h
-
-fi
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether pgrps need synchronization" >&5
-$as_echo_n "checking whether pgrps need synchronization... " >&6; }
-if ${bash_cv_pgrp_pipe+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test "$cross_compiling" = yes; then :
-  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cannot check pgrp synchronization if cross compiling -- defaulting to no" >&5
-$as_echo "$as_me: WARNING: cannot check pgrp synchronization if cross compiling -- defaulting to no" >&2;}
-    bash_cv_pgrp_pipe=no
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#ifdef HAVE_UNISTD_H
-#  include <unistd.h>
-#endif
-main()
-{
-# ifdef GETPGRP_VOID
-#  define getpgID()    getpgrp()
-# else
-#  define getpgID()    getpgrp(0)
-#  define setpgid(x,y) setpgrp(x,y)
-# endif
-       int pid1, pid2, fds[2];
-       int status;
-       char ok;
-
-       switch (pid1 = fork()) {
-         case -1:
-           exit(1);
-         case 0:
-           setpgid(0, getpid());
-           exit(0);
-       }
-       setpgid(pid1, pid1);
-
-       sleep(2);       /* let first child die */
-
-       if (pipe(fds) < 0)
-         exit(2);
-
-       switch (pid2 = fork()) {
-         case -1:
-           exit(3);
-         case 0:
-           setpgid(0, pid1);
-           ok = getpgID() == pid1;
-           write(fds[1], &ok, 1);
-           exit(0);
-       }
-       setpgid(pid2, pid1);
-
-       close(fds[1]);
-       if (read(fds[0], &ok, 1) != 1)
-         exit(4);
-       wait(&status);
-       wait(&status);
-       exit(ok ? 0 : 5);
-}
-
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-  bash_cv_pgrp_pipe=no
-else
-  bash_cv_pgrp_pipe=yes
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_pgrp_pipe" >&5
-$as_echo "$bash_cv_pgrp_pipe" >&6; }
-if test $bash_cv_pgrp_pipe = yes; then
-$as_echo "@%:@define PGRP_PIPE 1" >>confdefs.h
-
-fi
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for type of signal functions" >&5
-$as_echo_n "checking for type of signal functions... " >&6; }
-if ${bash_cv_signal_vintage+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <signal.h>
-int
-main ()
-{
-
-    sigset_t ss;
-    struct sigaction sa;
-    sigemptyset(&ss); sigsuspend(&ss);
-    sigaction(SIGINT, &sa, (struct sigaction *) 0);
-    sigprocmask(SIG_BLOCK, &ss, (sigset_t *) 0);
-  
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  bash_cv_signal_vintage=posix
-else
-  
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <signal.h>
-int
-main ()
-{
-
-       int mask = sigmask(SIGINT);
-       sigsetmask(mask); sigblock(mask); sigpause(mask);
-    
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  bash_cv_signal_vintage=4.2bsd
-else
-  
-      cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-       #include <signal.h>
-       RETSIGTYPE foo() { }
-int
-main ()
-{
-
-               int mask = sigmask(SIGINT);
-               sigset(SIGINT, foo); sigrelse(SIGINT);
-               sighold(SIGINT); sigpause(SIGINT);
-        
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  bash_cv_signal_vintage=svr3
-else
-  bash_cv_signal_vintage=v7
-    
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-  
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_signal_vintage" >&5
-$as_echo "$bash_cv_signal_vintage" >&6; }
-if test "$bash_cv_signal_vintage" = posix; then
-$as_echo "@%:@define HAVE_POSIX_SIGNALS 1" >>confdefs.h
-
-elif test "$bash_cv_signal_vintage" = "4.2bsd"; then
-$as_echo "@%:@define HAVE_BSD_SIGNALS 1" >>confdefs.h
-
-elif test "$bash_cv_signal_vintage" = svr3; then
-$as_echo "@%:@define HAVE_USG_SIGHOLD 1" >>confdefs.h
-
-fi
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for sys_errlist and sys_nerr" >&5
-$as_echo_n "checking for sys_errlist and sys_nerr... " >&6; }
-if ${bash_cv_sys_errlist+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <errno.h>
-int
-main ()
-{
-extern char *sys_errlist[];
- extern int sys_nerr;
- char *msg = sys_errlist[sys_nerr - 1];
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  bash_cv_sys_errlist=yes
-else
-  bash_cv_sys_errlist=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_sys_errlist" >&5
-$as_echo "$bash_cv_sys_errlist" >&6; }
-if test $bash_cv_sys_errlist = yes; then
-$as_echo "@%:@define HAVE_SYS_ERRLIST 1" >>confdefs.h
-
-fi
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for sys_siglist in system C library" >&5
-$as_echo_n "checking for sys_siglist in system C library... " >&6; }
-if ${bash_cv_sys_siglist+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test "$cross_compiling" = yes; then :
-  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cannot check for sys_siglist if cross compiling -- defaulting to no" >&5
-$as_echo "$as_me: WARNING: cannot check for sys_siglist if cross compiling -- defaulting to no" >&2;}
-        bash_cv_sys_siglist=no
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#include <sys/types.h>
-#include <signal.h>
-#ifdef HAVE_UNISTD_H
-#include <unistd.h>
-#endif
-#if !HAVE_DECL_SYS_SIGLIST
-extern char *sys_siglist[];
-#endif
-main()
-{
-char *msg = sys_siglist[2];
-exit(msg == 0);
-}
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-  bash_cv_sys_siglist=yes
-else
-  bash_cv_sys_siglist=no
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_sys_siglist" >&5
-$as_echo "$bash_cv_sys_siglist" >&6; }
-if test $bash_cv_sys_siglist = yes; then
-$as_echo "@%:@define HAVE_SYS_SIGLIST 1" >>confdefs.h
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for _sys_siglist in signal.h or unistd.h" >&5
-$as_echo_n "checking for _sys_siglist in signal.h or unistd.h... " >&6; }
-if ${bash_cv_decl_under_sys_siglist+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#include <sys/types.h>
-#include <signal.h>
-#ifdef HAVE_UNISTD_H
-#include <unistd.h>
-#endif
-int
-main ()
-{
- char *msg = _sys_siglist[2]; 
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  bash_cv_decl_under_sys_siglist=yes
-else
-  bash_cv_decl_under_sys_siglist=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_decl_under_sys_siglist" >&5
-$as_echo "$bash_cv_decl_under_sys_siglist" >&6; }
-if test $bash_cv_decl_under_sys_siglist = yes; then
-$as_echo "@%:@define UNDER_SYS_SIGLIST_DECLARED 1" >>confdefs.h
-
-fi
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for _sys_siglist in system C library" >&5
-$as_echo_n "checking for _sys_siglist in system C library... " >&6; }
-if ${bash_cv_under_sys_siglist+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test "$cross_compiling" = yes; then :
-  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cannot check for _sys_siglist if cross compiling -- defaulting to no" >&5
-$as_echo "$as_me: WARNING: cannot check for _sys_siglist if cross compiling -- defaulting to no" >&2;}
-        bash_cv_under_sys_siglist=no
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#include <sys/types.h>
-#include <signal.h>
-#ifdef HAVE_UNISTD_H
-#include <unistd.h>
-#endif
-#ifndef UNDER_SYS_SIGLIST_DECLARED
-extern char *_sys_siglist[];
-#endif
-main()
-{
-char *msg = (char *)_sys_siglist[2];
-exit(msg == 0);
-}
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-  bash_cv_under_sys_siglist=yes
-else
-  bash_cv_under_sys_siglist=no
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_under_sys_siglist" >&5
-$as_echo "$bash_cv_under_sys_siglist" >&6; }
-if test $bash_cv_under_sys_siglist = yes; then
-$as_echo "@%:@define HAVE_UNDER_SYS_SIGLIST 1" >>confdefs.h
-
-fi
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether signal handlers are of type void" >&5
-$as_echo_n "checking whether signal handlers are of type void... " >&6; }
-if ${bash_cv_void_sighandler+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <sys/types.h>
-#include <signal.h>
-#ifdef signal
-#undef signal
-#endif
-#ifdef __cplusplus
-extern "C"
-#endif
-void (*signal ()) ();
-int
-main ()
-{
-int i;
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  bash_cv_void_sighandler=yes
-else
-  bash_cv_void_sighandler=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_void_sighandler" >&5
-$as_echo "$bash_cv_void_sighandler" >&6; }
-if test $bash_cv_void_sighandler = yes; then
-$as_echo "@%:@define VOID_SIGHANDLER 1" >>confdefs.h
-
-fi
-
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for clock_t" >&5
-$as_echo_n "checking for clock_t... " >&6; }
-if ${bash_cv_type_clock_t+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <sys/types.h>
-#if STDC_HEADERS
-#include <stdlib.h>
-#include <stddef.h>
-#endif
-#if HAVE_INTTYPES_H
-#include <inttypes.h>
-#endif
-#if HAVE_STDINT_H
-#include <stdint.h>
-#endif
-#include <sys/times.h>
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "clock_t" >/dev/null 2>&1; then :
-  bash_cv_type_clock_t=yes
-else
-  bash_cv_type_clock_t=no
-fi
-rm -f conftest*
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_type_clock_t" >&5
-$as_echo "$bash_cv_type_clock_t" >&6; }
-
-if test $bash_cv_type_clock_t = no; then
-  cat >>confdefs.h <<_ACEOF
-@%:@define clock_t long
-_ACEOF
-
-fi
-
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for sigset_t" >&5
-$as_echo_n "checking for sigset_t... " >&6; }
-if ${bash_cv_type_sigset_t+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <sys/types.h>
-#if STDC_HEADERS
-#include <stdlib.h>
-#include <stddef.h>
-#endif
-#if HAVE_INTTYPES_H
-#include <inttypes.h>
-#endif
-#if HAVE_STDINT_H
-#include <stdint.h>
-#endif
-#include <signal.h>
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "sigset_t" >/dev/null 2>&1; then :
-  bash_cv_type_sigset_t=yes
-else
-  bash_cv_type_sigset_t=no
-fi
-rm -f conftest*
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_type_sigset_t" >&5
-$as_echo "$bash_cv_type_sigset_t" >&6; }
-
-if test $bash_cv_type_sigset_t = no; then
-  cat >>confdefs.h <<_ACEOF
-@%:@define sigset_t int
-_ACEOF
-
-fi
-
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for sig_atomic_t" >&5
-$as_echo_n "checking for sig_atomic_t... " >&6; }
-if ${bash_cv_type_sig_atomic_t+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <sys/types.h>
-#if STDC_HEADERS
-#include <stdlib.h>
-#include <stddef.h>
-#endif
-#if HAVE_INTTYPES_H
-#include <inttypes.h>
-#endif
-#if HAVE_STDINT_H
-#include <stdint.h>
-#endif
-#include <signal.h>
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "sig_atomic_t" >/dev/null 2>&1; then :
-  bash_cv_type_sig_atomic_t=yes
-else
-  bash_cv_type_sig_atomic_t=no
-fi
-rm -f conftest*
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_type_sig_atomic_t" >&5
-$as_echo "$bash_cv_type_sig_atomic_t" >&6; }
-
-if test $bash_cv_type_sig_atomic_t = no; then
-  cat >>confdefs.h <<_ACEOF
-@%:@define sig_atomic_t int
-_ACEOF
-
-fi
-
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for quad_t" >&5
-$as_echo_n "checking for quad_t... " >&6; }
-if ${bash_cv_type_quad_t+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <sys/types.h>
-#if STDC_HEADERS
-#include <stdlib.h>
-#include <stddef.h>
-#endif
-#if HAVE_INTTYPES_H
-#include <inttypes.h>
-#endif
-#if HAVE_STDINT_H
-#include <stdint.h>
-#endif
-
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "quad_t" >/dev/null 2>&1; then :
-  bash_cv_type_quad_t=yes
-else
-  bash_cv_type_quad_t=no
-fi
-rm -f conftest*
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_type_quad_t" >&5
-$as_echo "$bash_cv_type_quad_t" >&6; }
-if test $bash_cv_type_quad_t = yes; then
-       $as_echo "@%:@define HAVE_QUAD_T 1" >>confdefs.h
-
-       fi
-if test $bash_cv_type_quad_t = no; then
-  cat >>confdefs.h <<_ACEOF
-@%:@define quad_t long
-_ACEOF
-
-fi
-
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for intmax_t" >&5
-$as_echo_n "checking for intmax_t... " >&6; }
-if ${bash_cv_type_intmax_t+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <sys/types.h>
-#if STDC_HEADERS
-#include <stdlib.h>
-#include <stddef.h>
-#endif
-#if HAVE_INTTYPES_H
-#include <inttypes.h>
-#endif
-#if HAVE_STDINT_H
-#include <stdint.h>
-#endif
-
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "intmax_t" >/dev/null 2>&1; then :
-  bash_cv_type_intmax_t=yes
-else
-  bash_cv_type_intmax_t=no
-fi
-rm -f conftest*
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_type_intmax_t" >&5
-$as_echo "$bash_cv_type_intmax_t" >&6; }
-
-if test $bash_cv_type_intmax_t = no; then
-  cat >>confdefs.h <<_ACEOF
-@%:@define intmax_t $bash_cv_type_long_long
-_ACEOF
-
-fi
-
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for uintmax_t" >&5
-$as_echo_n "checking for uintmax_t... " >&6; }
-if ${bash_cv_type_uintmax_t+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <sys/types.h>
-#if STDC_HEADERS
-#include <stdlib.h>
-#include <stddef.h>
-#endif
-#if HAVE_INTTYPES_H
-#include <inttypes.h>
-#endif
-#if HAVE_STDINT_H
-#include <stdint.h>
-#endif
-
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "uintmax_t" >/dev/null 2>&1; then :
-  bash_cv_type_uintmax_t=yes
-else
-  bash_cv_type_uintmax_t=no
-fi
-rm -f conftest*
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_type_uintmax_t" >&5
-$as_echo "$bash_cv_type_uintmax_t" >&6; }
-
-if test $bash_cv_type_uintmax_t = no; then
-  cat >>confdefs.h <<_ACEOF
-@%:@define uintmax_t $bash_cv_type_unsigned_long_long
-_ACEOF
-
-fi
-
-if test "$ac_cv_header_sys_socket_h" = "yes"; then
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for socklen_t" >&5
-$as_echo_n "checking for socklen_t... " >&6; }
-if ${bash_cv_type_socklen_t+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <sys/types.h>
-#if STDC_HEADERS
-#include <stdlib.h>
-#include <stddef.h>
-#endif
-#if HAVE_INTTYPES_H
-#include <inttypes.h>
-#endif
-#if HAVE_STDINT_H
-#include <stdint.h>
-#endif
-#include <sys/socket.h>
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "socklen_t" >/dev/null 2>&1; then :
-  bash_cv_type_socklen_t=yes
-else
-  bash_cv_type_socklen_t=no
-fi
-rm -f conftest*
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_type_socklen_t" >&5
-$as_echo "$bash_cv_type_socklen_t" >&6; }
-if test $bash_cv_type_socklen_t = yes; then
-       $as_echo "@%:@define HAVE_SOCKLEN_T 1" >>confdefs.h
-
-       fi
-if test $bash_cv_type_socklen_t = no; then
-  cat >>confdefs.h <<_ACEOF
-@%:@define socklen_t int
-_ACEOF
-
-fi
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for size and type of struct rlimit fields" >&5
-$as_echo_n "checking for size and type of struct rlimit fields... " >&6; }
-if ${bash_cv_type_rlimit+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <sys/types.h>
-#include <sys/resource.h>
-int
-main ()
-{
-rlim_t xxx;
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  bash_cv_type_rlimit=rlim_t
-else
-  
-if test "$cross_compiling" = yes; then :
-  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cannot check quad_t if cross compiling -- defaulting to long" >&5
-$as_echo "$as_me: WARNING: cannot check quad_t if cross compiling -- defaulting to long" >&2;}
-         bash_cv_type_rlimit=long
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#include <sys/types.h>
-#include <sys/time.h>
-#include <sys/resource.h>
-main()
-{
-#ifdef HAVE_QUAD_T
-  struct rlimit rl;
-  if (sizeof(rl.rlim_cur) == sizeof(quad_t))
-    exit(0);
-#endif
-  exit(1);
-}
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-  bash_cv_type_rlimit=quad_t
-else
-  bash_cv_type_rlimit=long
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_type_rlimit" >&5
-$as_echo "$bash_cv_type_rlimit" >&6; }
-if test $bash_cv_type_rlimit = quad_t; then
-$as_echo "@%:@define RLIMTYPE quad_t" >>confdefs.h
-
-elif test $bash_cv_type_rlimit = rlim_t; then
-$as_echo "@%:@define RLIMTYPE rlim_t" >>confdefs.h
-
-fi
-
-
-# The cast to long int works around a bug in the HP C Compiler
-# version HP92453-01 B.11.11.23709.GP, which incorrectly rejects
-# declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'.
-# This bug is HP SR number 8606223364.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking size of intmax_t" >&5
-$as_echo_n "checking size of intmax_t... " >&6; }
-if ${ac_cv_sizeof_intmax_t+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (intmax_t))" "ac_cv_sizeof_intmax_t"        "$ac_includes_default"; then :
-  
-else
-  if test "$ac_cv_type_intmax_t" = yes; then
-     { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error 77 "cannot compute sizeof (intmax_t)
-See \`config.log' for more details" "$LINENO" 5; }
-   else
-     ac_cv_sizeof_intmax_t=0
-   fi
-fi
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_intmax_t" >&5
-$as_echo "$ac_cv_sizeof_intmax_t" >&6; }
-
-
-
-cat >>confdefs.h <<_ACEOF
-@%:@define SIZEOF_INTMAX_T $ac_cv_sizeof_intmax_t
-_ACEOF
-
-
-
-
-ac_fn_c_check_member "$LINENO" "struct termios" "c_line" "ac_cv_member_struct_termios_c_line" "
-#include <sys/types.h>
-#include <termios.h>
-
-"
-if test "x$ac_cv_member_struct_termios_c_line" = xyes; then :
-  $as_echo "@%:@define TERMIOS_LDISC 1" >>confdefs.h
-
-fi
-
-
-
-ac_fn_c_check_member "$LINENO" "struct termio" "c_line" "ac_cv_member_struct_termio_c_line" "
-#include <sys/types.h>
-#include <termio.h>
-
-"
-if test "x$ac_cv_member_struct_termio_c_line" = xyes; then :
-  $as_echo "@%:@define TERMIO_LDISC 1" >>confdefs.h
-
-fi
-
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for struct dirent.d_ino" >&5
-$as_echo_n "checking for struct dirent.d_ino... " >&6; }
-if ${bash_cv_dirent_has_dino+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#include <stdio.h>
-#include <sys/types.h>
-#ifdef HAVE_UNISTD_H
-# include <unistd.h>
-#endif /* HAVE_UNISTD_H */
-#if defined(HAVE_DIRENT_H)
-# include <dirent.h>
-#else
-# define dirent direct
-# ifdef HAVE_SYS_NDIR_H
-#  include <sys/ndir.h>
-# endif /* SYSNDIR */
-# ifdef HAVE_SYS_DIR_H
-#  include <sys/dir.h>
-# endif /* SYSDIR */
-# ifdef HAVE_NDIR_H
-#  include <ndir.h>
-# endif
-#endif /* HAVE_DIRENT_H */
-
-int
-main ()
-{
-
-struct dirent d; int z; z = d.d_ino;
-
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  bash_cv_dirent_has_dino=yes
-else
-  bash_cv_dirent_has_dino=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_dirent_has_dino" >&5
-$as_echo "$bash_cv_dirent_has_dino" >&6; }
-if test $bash_cv_dirent_has_dino = yes; then
-$as_echo "@%:@define HAVE_STRUCT_DIRENT_D_INO 1" >>confdefs.h
-
-fi
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for struct dirent.d_fileno" >&5
-$as_echo_n "checking for struct dirent.d_fileno... " >&6; }
-if ${bash_cv_dirent_has_d_fileno+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#include <stdio.h>
-#include <sys/types.h>
-#ifdef HAVE_UNISTD_H
-# include <unistd.h>
-#endif /* HAVE_UNISTD_H */
-#if defined(HAVE_DIRENT_H)
-# include <dirent.h>
-#else
-# define dirent direct
-# ifdef HAVE_SYS_NDIR_H
-#  include <sys/ndir.h>
-# endif /* SYSNDIR */
-# ifdef HAVE_SYS_DIR_H
-#  include <sys/dir.h>
-# endif /* SYSDIR */
-# ifdef HAVE_NDIR_H
-#  include <ndir.h>
-# endif
-#endif /* HAVE_DIRENT_H */
-
-int
-main ()
-{
-
-struct dirent d; int z; z = d.d_fileno;
-
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  bash_cv_dirent_has_d_fileno=yes
-else
-  bash_cv_dirent_has_d_fileno=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_dirent_has_d_fileno" >&5
-$as_echo "$bash_cv_dirent_has_d_fileno" >&6; }
-if test $bash_cv_dirent_has_d_fileno = yes; then
-$as_echo "@%:@define HAVE_STRUCT_DIRENT_D_FILENO 1" >>confdefs.h
-
-fi
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for struct dirent.d_namlen" >&5
-$as_echo_n "checking for struct dirent.d_namlen... " >&6; }
-if ${bash_cv_dirent_has_d_namlen+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#include <stdio.h>
-#include <sys/types.h>
-#ifdef HAVE_UNISTD_H
-# include <unistd.h>
-#endif /* HAVE_UNISTD_H */
-#if defined(HAVE_DIRENT_H)
-# include <dirent.h>
-#else
-# define dirent direct
-# ifdef HAVE_SYS_NDIR_H
-#  include <sys/ndir.h>
-# endif /* SYSNDIR */
-# ifdef HAVE_SYS_DIR_H
-#  include <sys/dir.h>
-# endif /* SYSDIR */
-# ifdef HAVE_NDIR_H
-#  include <ndir.h>
-# endif
-#endif /* HAVE_DIRENT_H */
-
-int
-main ()
-{
-
-struct dirent d; int z; z = d.d_namlen;
-
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  bash_cv_dirent_has_d_namlen=yes
-else
-  bash_cv_dirent_has_d_namlen=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_dirent_has_d_namlen" >&5
-$as_echo "$bash_cv_dirent_has_d_namlen" >&6; }
-if test $bash_cv_dirent_has_d_namlen = yes; then
-$as_echo "@%:@define HAVE_STRUCT_DIRENT_D_NAMLEN 1" >>confdefs.h
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for struct winsize in sys/ioctl.h and termios.h" >&5
-$as_echo_n "checking for struct winsize in sys/ioctl.h and termios.h... " >&6; }
-if ${bash_cv_struct_winsize_header+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <sys/types.h>
-#include <sys/ioctl.h>
-int
-main ()
-{
-struct winsize x;
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  bash_cv_struct_winsize_header=ioctl_h
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <sys/types.h>
-#include <termios.h>
-int
-main ()
-{
-struct winsize x;
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  bash_cv_struct_winsize_header=termios_h
-else
-  bash_cv_struct_winsize_header=other
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-
-if test $bash_cv_struct_winsize_header = ioctl_h; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: sys/ioctl.h" >&5
-$as_echo "sys/ioctl.h" >&6; }
-  $as_echo "@%:@define STRUCT_WINSIZE_IN_SYS_IOCTL 1" >>confdefs.h
-
-elif test $bash_cv_struct_winsize_header = termios_h; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: termios.h" >&5
-$as_echo "termios.h" >&6; }
-  $as_echo "@%:@define STRUCT_WINSIZE_IN_TERMIOS 1" >>confdefs.h
-
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: not found" >&5
-$as_echo "not found" >&6; }
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for struct timeval in sys/time.h and time.h" >&5
-$as_echo_n "checking for struct timeval in sys/time.h and time.h... " >&6; }
-if ${bash_cv_struct_timeval+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <sys/time.h>
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "struct timeval" >/dev/null 2>&1; then :
-  bash_cv_struct_timeval=yes
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <time.h>
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "struct timeval" >/dev/null 2>&1; then :
-  bash_cv_struct_timeval=yes
-else
-  bash_cv_struct_timeval=no
-fi
-rm -f conftest*
-
-fi
-rm -f conftest*
-
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_struct_timeval" >&5
-$as_echo "$bash_cv_struct_timeval" >&6; }
-if test $bash_cv_struct_timeval = yes; then
-  $as_echo "@%:@define HAVE_TIMEVAL 1" >>confdefs.h
-
-fi
-
-ac_fn_c_check_member "$LINENO" "struct stat" "st_blocks" "ac_cv_member_struct_stat_st_blocks" "$ac_includes_default"
-if test "x$ac_cv_member_struct_stat_st_blocks" = xyes; then :
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define HAVE_STRUCT_STAT_ST_BLOCKS 1
-_ACEOF
-
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether struct tm is in sys/time.h or time.h" >&5
-$as_echo_n "checking whether struct tm is in sys/time.h or time.h... " >&6; }
-if ${ac_cv_struct_tm+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <sys/types.h>
-#include <time.h>
-
-int
-main ()
-{
-struct tm tm;
-                                    int *p = &tm.tm_sec;
-                                    return !p;
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_cv_struct_tm=time.h
-else
-  ac_cv_struct_tm=sys/time.h
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_struct_tm" >&5
-$as_echo "$ac_cv_struct_tm" >&6; }
-if test $ac_cv_struct_tm = sys/time.h; then
-  
-$as_echo "@%:@define TM_IN_SYS_TIME 1" >>confdefs.h
-
-fi
-
-ac_fn_c_check_member "$LINENO" "struct tm" "tm_zone" "ac_cv_member_struct_tm_tm_zone" "#include <sys/types.h>
-#include <$ac_cv_struct_tm>
-
-"
-if test "x$ac_cv_member_struct_tm_tm_zone" = xyes; then :
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define HAVE_STRUCT_TM_TM_ZONE 1
-_ACEOF
-
-
-fi
-
-if test "$ac_cv_member_struct_tm_tm_zone" = yes; then
-  
-$as_echo "@%:@define HAVE_TM_ZONE 1" >>confdefs.h
-
-else
-  ac_fn_c_check_decl "$LINENO" "tzname" "ac_cv_have_decl_tzname" "#include <time.h>
-"
-if test "x$ac_cv_have_decl_tzname" = xyes; then :
-  ac_have_decl=1
-else
-  ac_have_decl=0
-fi
-
-cat >>confdefs.h <<_ACEOF
-@%:@define HAVE_DECL_TZNAME $ac_have_decl
-_ACEOF
-
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for tzname" >&5
-$as_echo_n "checking for tzname... " >&6; }
-if ${ac_cv_var_tzname+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <time.h>
-#if !HAVE_DECL_TZNAME
-extern char *tzname[];
-#endif
-
-int
-main ()
-{
-return tzname[0][0];
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  ac_cv_var_tzname=yes
-else
-  ac_cv_var_tzname=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_var_tzname" >&5
-$as_echo "$ac_cv_var_tzname" >&6; }
-  if test $ac_cv_var_tzname = yes; then
-    
-$as_echo "@%:@define HAVE_TZNAME 1" >>confdefs.h
-
-  fi
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for struct timezone in sys/time.h and time.h" >&5
-$as_echo_n "checking for struct timezone in sys/time.h and time.h... " >&6; }
-if ${bash_cv_struct_timezone+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <sys/time.h>
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "struct timezone" >/dev/null 2>&1; then :
-  bash_cv_struct_timezone=yes
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <time.h>
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "struct timezone" >/dev/null 2>&1; then :
-  bash_cv_struct_timezone=yes
-else
-  bash_cv_struct_timezone=no
-fi
-rm -f conftest*
-
-fi
-rm -f conftest*
-
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_struct_timezone" >&5
-$as_echo "$bash_cv_struct_timezone" >&6; }
-if test $bash_cv_struct_timezone = yes; then
-  $as_echo "@%:@define HAVE_STRUCT_TIMEZONE 1" >>confdefs.h
-
-fi
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for offset of exit status in return status from wait" >&5
-$as_echo_n "checking for offset of exit status in return status from wait... " >&6; }
-if ${bash_cv_wexitstatus_offset+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test "$cross_compiling" = yes; then :
-  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cannot check WEXITSTATUS offset if cross compiling -- defaulting to 0" >&5
-$as_echo "$as_me: WARNING: cannot check WEXITSTATUS offset if cross compiling -- defaulting to 0" >&2;}
-    bash_cv_wexitstatus_offset=0
-
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#include <stdlib.h>
-#include <unistd.h>
-
-#include <sys/wait.h>
-
-main(c, v)
-     int c;
-     char **v;
-{
-  pid_t pid, p;
-  int s, i, n;
-
-  s = 0;
-  pid = fork();
-  if (pid == 0)
-    exit (42);
-
-  /* wait for the process */
-  p = wait(&s);
-  if (p != pid)
-    exit (255);
-
-  /* crack s */
-  for (i = 0; i < (sizeof(s) - 8); i++)
-    {
-      n = (s >> i) & 0xff;
-      if (n == 42)
-       exit (i);
-    }
-
-  exit (254);
-}
-
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-  bash_cv_wexitstatus_offset=0
-else
-  bash_cv_wexitstatus_offset=$?
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-fi
-
-if test "$bash_cv_wexitstatus_offset" -gt 32 ; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: bad exit status from test program -- defaulting to 0" >&5
-$as_echo "$as_me: WARNING: bad exit status from test program -- defaulting to 0" >&2;}
-  bash_cv_wexitstatus_offset=0
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_wexitstatus_offset" >&5
-$as_echo "$bash_cv_wexitstatus_offset" >&6; }
-
-cat >>confdefs.h <<_ACEOF
-@%:@define WEXITSTATUS_OFFSET $bash_cv_wexitstatus_offset
-_ACEOF
-
-
-
-
-  
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for struct timespec in <time.h>" >&5
-$as_echo_n "checking for struct timespec in <time.h>... " >&6; }
-if ${bash_cv_sys_struct_timespec_in_time_h+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <time.h>
-          
-int
-main ()
-{
-static struct timespec x; x.tv_sec = x.tv_nsec;
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  bash_cv_sys_struct_timespec_in_time_h=yes
-else
-  bash_cv_sys_struct_timespec_in_time_h=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_sys_struct_timespec_in_time_h" >&5
-$as_echo "$bash_cv_sys_struct_timespec_in_time_h" >&6; }
-
-  HAVE_STRUCT_TIMESPEC=0
-  TIME_H_DEFINES_STRUCT_TIMESPEC=0
-  SYS_TIME_H_DEFINES_STRUCT_TIMESPEC=0
-  PTHREAD_H_DEFINES_STRUCT_TIMESPEC=0
-  if test $bash_cv_sys_struct_timespec_in_time_h = yes; then
-    $as_echo "@%:@define HAVE_STRUCT_TIMESPEC 1" >>confdefs.h
-
-    $as_echo "@%:@define TIME_H_DEFINES_STRUCT_TIMESPEC 1" >>confdefs.h
-
-    TIME_H_DEFINES_STRUCT_TIMESPEC=1
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for struct timespec in <sys/time.h>" >&5
-$as_echo_n "checking for struct timespec in <sys/time.h>... " >&6; }
-if ${bash_cv_sys_struct_timespec_in_sys_time_h+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <sys/time.h>
-            
-int
-main ()
-{
-static struct timespec x; x.tv_sec = x.tv_nsec;
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  bash_cv_sys_struct_timespec_in_sys_time_h=yes
-else
-  bash_cv_sys_struct_timespec_in_sys_time_h=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_sys_struct_timespec_in_sys_time_h" >&5
-$as_echo "$bash_cv_sys_struct_timespec_in_sys_time_h" >&6; }
-    if test $bash_cv_sys_struct_timespec_in_sys_time_h = yes; then
-      SYS_TIME_H_DEFINES_STRUCT_TIMESPEC=1
-      $as_echo "@%:@define HAVE_STRUCT_TIMESPEC 1" >>confdefs.h
-
-      $as_echo "@%:@define SYS_TIME_H_DEFINES_STRUCT_TIMESPEC 1" >>confdefs.h
-
-    else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: checking for struct timespec in <pthread.h>" >&5
-$as_echo_n "checking for struct timespec in <pthread.h>... " >&6; }
-if ${bash_cv_sys_struct_timespec_in_pthread_h+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <pthread.h>
-              
-int
-main ()
-{
-static struct timespec x; x.tv_sec = x.tv_nsec;
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  bash_cv_sys_struct_timespec_in_pthread_h=yes
-else
-  bash_cv_sys_struct_timespec_in_pthread_h=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_sys_struct_timespec_in_pthread_h" >&5
-$as_echo "$bash_cv_sys_struct_timespec_in_pthread_h" >&6; }
-      if test $bash_cv_sys_struct_timespec_in_pthread_h = yes; then
-        PTHREAD_H_DEFINES_STRUCT_TIMESPEC=1
-       $as_echo "@%:@define HAVE_STRUCT_TIMESPEC 1" >>confdefs.h
-
-       $as_echo "@%:@define PTHREAD_H_DEFINES_STRUCT_TIMESPEC 1" >>confdefs.h
-
-      fi
-    fi
-  fi
-  
-  
-  
-
-
-
-  
-  
-
-  ac_fn_c_check_member "$LINENO" "struct stat" "st_atim.tv_nsec" "ac_cv_member_struct_stat_st_atim_tv_nsec" "#include <sys/types.h>
-     #include <sys/stat.h>
-"
-if test "x$ac_cv_member_struct_stat_st_atim_tv_nsec" = xyes; then :
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define HAVE_STRUCT_STAT_ST_ATIM_TV_NSEC 1
-_ACEOF
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether struct stat.st_atim is of type struct timespec" >&5
-$as_echo_n "checking whether struct stat.st_atim is of type struct timespec... " >&6; }
-if ${ac_cv_typeof_struct_stat_st_atim_is_struct_timespec+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-            #include <sys/types.h>
-            #include <sys/stat.h>
-            #if HAVE_SYS_TIME_H
-            # include <sys/time.h>
-            #endif
-            #include <time.h>
-            struct timespec ts;
-            struct stat st;
-          
-int
-main ()
-{
-
-            st.st_atim = ts;
-          
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_cv_typeof_struct_stat_st_atim_is_struct_timespec=yes
-else
-  ac_cv_typeof_struct_stat_st_atim_is_struct_timespec=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_typeof_struct_stat_st_atim_is_struct_timespec" >&5
-$as_echo "$ac_cv_typeof_struct_stat_st_atim_is_struct_timespec" >&6; }
-     if test $ac_cv_typeof_struct_stat_st_atim_is_struct_timespec = yes; then
-       
-$as_echo "@%:@define TYPEOF_STRUCT_STAT_ST_ATIM_IS_STRUCT_TIMESPEC 1" >>confdefs.h
-
-     fi
-else
-  ac_fn_c_check_member "$LINENO" "struct stat" "st_atimespec.tv_nsec" "ac_cv_member_struct_stat_st_atimespec_tv_nsec" "#include <sys/types.h>
-        #include <sys/stat.h>
-"
-if test "x$ac_cv_member_struct_stat_st_atimespec_tv_nsec" = xyes; then :
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define HAVE_STRUCT_STAT_ST_ATIMESPEC_TV_NSEC 1
-_ACEOF
-
-
-else
-  ac_fn_c_check_member "$LINENO" "struct stat" "st_atimensec" "ac_cv_member_struct_stat_st_atimensec" "#include <sys/types.h>
-           #include <sys/stat.h>
-"
-if test "x$ac_cv_member_struct_stat_st_atimensec" = xyes; then :
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define HAVE_STRUCT_STAT_ST_ATIMENSEC 1
-_ACEOF
-
-
-else
-  ac_fn_c_check_member "$LINENO" "struct stat" "st_atim.st__tim.tv_nsec" "ac_cv_member_struct_stat_st_atim_st__tim_tv_nsec" "#include <sys/types.h>
-              #include <sys/stat.h>
-"
-if test "x$ac_cv_member_struct_stat_st_atim_st__tim_tv_nsec" = xyes; then :
-  
-cat >>confdefs.h <<_ACEOF
-@%:@define HAVE_STRUCT_STAT_ST_ATIM_ST__TIM_TV_NSEC 1
-_ACEOF
-
-
-fi
-
-fi
-
-fi
-
-fi
-
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for the existence of strsignal" >&5
-$as_echo_n "checking for the existence of strsignal... " >&6; }
-if ${bash_cv_have_strsignal+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <sys/types.h>
-#include <signal.h>
-int
-main ()
-{
-char *s = (char *)strsignal(2);
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  bash_cv_have_strsignal=yes
-else
-  bash_cv_have_strsignal=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_have_strsignal" >&5
-$as_echo "$bash_cv_have_strsignal" >&6; }
-if test $bash_cv_have_strsignal = yes; then
-$as_echo "@%:@define HAVE_STRSIGNAL 1" >>confdefs.h
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if opendir() opens non-directories" >&5
-$as_echo_n "checking if opendir() opens non-directories... " >&6; }
-if ${bash_cv_opendir_not_robust+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test "$cross_compiling" = yes; then :
-  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cannot check opendir if cross compiling -- defaulting to no" >&5
-$as_echo "$as_me: WARNING: cannot check opendir if cross compiling -- defaulting to no" >&2;}
-     bash_cv_opendir_not_robust=no
-
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#include <stdio.h>
-#include <sys/types.h>
-#include <fcntl.h>
-#ifdef HAVE_UNISTD_H
-# include <unistd.h>
-#endif /* HAVE_UNISTD_H */
-#if defined(HAVE_DIRENT_H)
-# include <dirent.h>
-#else
-# define dirent direct
-# ifdef HAVE_SYS_NDIR_H
-#  include <sys/ndir.h>
-# endif /* SYSNDIR */
-# ifdef HAVE_SYS_DIR_H
-#  include <sys/dir.h>
-# endif /* SYSDIR */
-# ifdef HAVE_NDIR_H
-#  include <ndir.h>
-# endif
-#endif /* HAVE_DIRENT_H */
-main()
-{
-DIR *dir;
-int fd, err;
-err = mkdir("bash-aclocal", 0700);
-if (err < 0) {
-  perror("mkdir");
-  exit(1);
-}
-unlink("bash-aclocal/not_a_directory");
-fd = open("bash-aclocal/not_a_directory", O_WRONLY|O_CREAT|O_EXCL, 0666);
-write(fd, "\n", 1);
-close(fd);
-dir = opendir("bash-aclocal/not_a_directory");
-unlink("bash-aclocal/not_a_directory");
-rmdir("bash-aclocal");
-exit (dir == 0);
-}
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-  bash_cv_opendir_not_robust=yes
-else
-  bash_cv_opendir_not_robust=no
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_opendir_not_robust" >&5
-$as_echo "$bash_cv_opendir_not_robust" >&6; }
-if test $bash_cv_opendir_not_robust = yes; then
-$as_echo "@%:@define OPENDIR_NOT_ROBUST 1" >>confdefs.h
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ulimit can substitute for getdtablesize" >&5
-$as_echo_n "checking whether ulimit can substitute for getdtablesize... " >&6; }
-if ${bash_cv_ulimit_maxfds+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test "$cross_compiling" = yes; then :
-  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cannot check ulimit if cross compiling -- defaulting to no" >&5
-$as_echo "$as_me: WARNING: cannot check ulimit if cross compiling -- defaulting to no" >&2;}
-    bash_cv_ulimit_maxfds=no
-
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-main()
-{
-long maxfds = ulimit(4, 0L);
-exit (maxfds == -1L);
-}
-
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-  bash_cv_ulimit_maxfds=yes
-else
-  bash_cv_ulimit_maxfds=no
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_ulimit_maxfds" >&5
-$as_echo "$bash_cv_ulimit_maxfds" >&6; }
-if test $bash_cv_ulimit_maxfds = yes; then
-$as_echo "@%:@define ULIMIT_MAXFDS 1" >>confdefs.h
-
-fi
-
-
-
-
-
-
-  
-  
-  ac_fn_c_check_decl "$LINENO" "fpurge" "ac_cv_have_decl_fpurge" "#include <stdio.h>
-"
-if test "x$ac_cv_have_decl_fpurge" = xyes; then :
-  ac_have_decl=1
-else
-  ac_have_decl=0
-fi
-
-cat >>confdefs.h <<_ACEOF
-@%:@define HAVE_DECL_FPURGE $ac_have_decl
-_ACEOF
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking to see if getenv can be redefined" >&5
-$as_echo_n "checking to see if getenv can be redefined... " >&6; }
-if ${bash_cv_getenv_redef+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test "$cross_compiling" = yes; then :
-  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cannot check getenv redefinition if cross compiling -- defaulting to yes" >&5
-$as_echo "$as_me: WARNING: cannot check getenv redefinition if cross compiling -- defaulting to yes" >&2;}
-    bash_cv_getenv_redef=yes
-
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#ifdef HAVE_UNISTD_H
-#  include <unistd.h>
-#endif
-#ifndef __STDC__
-#  ifndef const
-#    define const
-#  endif
-#endif
-char *
-getenv (name)
-#if defined (__linux__) || defined (__bsdi__) || defined (convex)
-     const char *name;
-#else
-     char const *name;
-#endif /* !__linux__ && !__bsdi__ && !convex */
-{
-return "42";
-}
-main()
-{
-char *s;
-/* The next allows this program to run, but does not allow bash to link
-   when it redefines getenv.  I'm not really interested in figuring out
-   why not. */
-#if defined (NeXT)
-exit(1);
-#endif
-s = getenv("ABCDE");
-exit(s == 0);  /* force optimizer to leave getenv in */
-}
-
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-  bash_cv_getenv_redef=yes
-else
-  bash_cv_getenv_redef=no
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_getenv_redef" >&5
-$as_echo "$bash_cv_getenv_redef" >&6; }
-if test $bash_cv_getenv_redef = yes; then
-$as_echo "@%:@define CAN_REDEFINE_GETENV 1" >>confdefs.h
-
-fi
-
-if test "$ac_cv_func_getcwd" = "yes"; then
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if getcwd() will dynamically allocate memory with 0 size" >&5
-$as_echo_n "checking if getcwd() will dynamically allocate memory with 0 size... " >&6; }
-if ${bash_cv_getcwd_malloc+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test "$cross_compiling" = yes; then :
-  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cannot check whether getcwd allocates memory when cross-compiling -- defaulting to no" >&5
-$as_echo "$as_me: WARNING: cannot check whether getcwd allocates memory when cross-compiling -- defaulting to no" >&2;}
-    bash_cv_getcwd_malloc=no
-
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#include <stdio.h>
-#ifdef HAVE_UNISTD_H
-#include <unistd.h>
-#endif
-
-main()
-{
-       char    *xpwd;
-       xpwd = getcwd(0, 0);
-       exit (xpwd == 0);
-}
-
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-  bash_cv_getcwd_malloc=yes
-else
-  bash_cv_getcwd_malloc=no
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_getcwd_malloc" >&5
-$as_echo "$bash_cv_getcwd_malloc" >&6; }
-if test $bash_cv_getcwd_malloc = no; then
-$as_echo "@%:@define GETCWD_BROKEN 1" >>confdefs.h
-
-case " $LIB@&t@OBJS " in
-  *" getcwd.$ac_objext "* ) ;;
-  *) LIB@&t@OBJS="$LIB@&t@OBJS getcwd.$ac_objext"
- ;;
-esac
-
-fi
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for presence of POSIX-style sigsetjmp/siglongjmp" >&5
-$as_echo_n "checking for presence of POSIX-style sigsetjmp/siglongjmp... " >&6; }
-if ${bash_cv_func_sigsetjmp+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test "$cross_compiling" = yes; then :
-  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cannot check for sigsetjmp/siglongjmp if cross-compiling -- defaulting to missing" >&5
-$as_echo "$as_me: WARNING: cannot check for sigsetjmp/siglongjmp if cross-compiling -- defaulting to missing" >&2;}
-     bash_cv_func_sigsetjmp=missing
-
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#ifdef HAVE_UNISTD_H
-#include <unistd.h>
-#endif
-#include <sys/types.h>
-#include <signal.h>
-#include <setjmp.h>
-
-main()
-{
-#if !defined (_POSIX_VERSION) || !defined (HAVE_POSIX_SIGNALS)
-exit (1);
-#else
-
-int code;
-sigset_t set, oset;
-sigjmp_buf xx;
-
-/* get the mask */
-sigemptyset(&set);
-sigemptyset(&oset);
-sigprocmask(SIG_BLOCK, (sigset_t *)NULL, &set);
-sigprocmask(SIG_BLOCK, (sigset_t *)NULL, &oset);
-
-/* save it */
-code = sigsetjmp(xx, 1);
-if (code)
-  exit(0);     /* could get sigmask and compare to oset here. */
-
-/* change it */
-sigaddset(&set, SIGINT);
-sigprocmask(SIG_BLOCK, &set, (sigset_t *)NULL);
-
-/* and siglongjmp */
-siglongjmp(xx, 10);
-exit(1);
-#endif
-}
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-  bash_cv_func_sigsetjmp=present
-else
-  bash_cv_func_sigsetjmp=missing
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_func_sigsetjmp" >&5
-$as_echo "$bash_cv_func_sigsetjmp" >&6; }
-if test $bash_cv_func_sigsetjmp = present; then
-$as_echo "@%:@define HAVE_POSIX_SIGSETJMP 1" >>confdefs.h
-
-fi
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether or not strcoll and strcmp differ" >&5
-$as_echo_n "checking whether or not strcoll and strcmp differ... " >&6; }
-if ${bash_cv_func_strcoll_broken+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test "$cross_compiling" = yes; then :
-  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cannot check strcoll if cross compiling -- defaulting to no" >&5
-$as_echo "$as_me: WARNING: cannot check strcoll if cross compiling -- defaulting to no" >&2;}
-    bash_cv_func_strcoll_broken=no
-
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#include <stdio.h>
-#if defined (HAVE_LOCALE_H)
-#include <locale.h>
-#endif
-
-main(c, v)
-int     c;
-char    *v[];
-{
-        int     r1, r2;
-        char    *deflocale, *defcoll;
-
-#ifdef HAVE_SETLOCALE
-        deflocale = setlocale(LC_ALL, "");
-       defcoll = setlocale(LC_COLLATE, "");
-#endif
-
-#ifdef HAVE_STRCOLL
-       /* These two values are taken from tests/glob-test. */
-        r1 = strcoll("abd", "aXd");
-#else
-       r1 = 0;
-#endif
-        r2 = strcmp("abd", "aXd");
-
-       /* These two should both be greater than 0.  It is permissible for
-          a system to return different values, as long as the sign is the
-          same. */
-
-        /* Exit with 1 (failure) if these two values are both > 0, since
-          this tests whether strcoll(3) is broken with respect to strcmp(3)
-          in the default locale. */
-       exit (r1 > 0 && r2 > 0);
-}
-
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-  bash_cv_func_strcoll_broken=yes
-else
-  bash_cv_func_strcoll_broken=no
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_func_strcoll_broken" >&5
-$as_echo "$bash_cv_func_strcoll_broken" >&6; }
-if test $bash_cv_func_strcoll_broken = yes; then
-$as_echo "@%:@define STRCOLL_BROKEN 1" >>confdefs.h
-
-fi
-
-
-
-
-  
-  if test X$ac_cv_func_snprintf = Xyes; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for standard-conformant snprintf" >&5
-$as_echo_n "checking for standard-conformant snprintf... " >&6; }
-if ${bash_cv_func_snprintf+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test "$cross_compiling" = yes; then :
-  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cannot check standard snprintf if cross-compiling" >&5
-$as_echo "$as_me: WARNING: cannot check standard snprintf if cross-compiling" >&2;}
-    bash_cv_func_snprintf=yes
-
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#include <stdio.h>
-
-main()
-{
-  int n;
-  n = snprintf (0, 0, "%s", "0123456");
-  exit(n != 7);
-}
-
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-  bash_cv_func_snprintf=yes
-else
-  bash_cv_func_snprintf=no
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_func_snprintf" >&5
-$as_echo "$bash_cv_func_snprintf" >&6; }
-    if test $bash_cv_func_snprintf = no; then
-      ac_cv_func_snprintf=no
-    fi
-  fi
-  if test $ac_cv_func_snprintf = no; then
-    
-$as_echo "@%:@define HAVE_SNPRINTF 0" >>confdefs.h
-
-  fi
-
-
-
-
-  
-  if test X$ac_cv_func_vsnprintf = Xyes; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for standard-conformant vsnprintf" >&5
-$as_echo_n "checking for standard-conformant vsnprintf... " >&6; }
-if ${bash_cv_func_vsnprintf+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test "$cross_compiling" = yes; then :
-  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cannot check standard vsnprintf if cross-compiling" >&5
-$as_echo "$as_me: WARNING: cannot check standard vsnprintf if cross-compiling" >&2;}
-    bash_cv_func_vsnprintf=yes
-
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#if HAVE_STDARG_H
-#include <stdarg.h>
-#else
-#include <varargs.h>
-#endif
-#include <stdio.h>
-#include <stdlib.h>
-
-static int
-#if HAVE_STDARG_H
-foo(const char *fmt, ...)
-#else
-foo(format, va_alist)
-     const char *format;
-     va_dcl
-#endif
-{
-  va_list args;
-  int n;
-
-#if HAVE_STDARG_H
-  va_start(args, fmt);
-#else
-  va_start(args);
-#endif
-  n = vsnprintf(0, 0, fmt, args);
-  va_end (args);
-  return n;
-}
-
-main()
-{
-  int n;
-  n = foo("%s", "0123456");
-  exit(n != 7);
-}
-
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-  bash_cv_func_vsnprintf=yes
-else
-  bash_cv_func_vsnprintf=no
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_func_vsnprintf" >&5
-$as_echo "$bash_cv_func_vsnprintf" >&6; }
-    if test $bash_cv_func_vsnprintf = no; then
-      ac_cv_func_vsnprintf=no
-    fi
-  fi
-  if test $ac_cv_func_vsnprintf = no; then
-    
-$as_echo "@%:@define HAVE_VSNPRINTF 0" >>confdefs.h
-
-  fi
-
-
-
-if test "$ac_cv_func_putenv" = "yes"; then
-
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for standard-conformant putenv declaration" >&5
-$as_echo_n "checking for standard-conformant putenv declaration... " >&6; }
-if ${bash_cv_std_putenv+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#if STDC_HEADERS
-#include <stdlib.h>
-#include <stddef.h>
-#endif
-#ifndef __STDC__
-#  ifndef const
-#    define const
-#  endif
-#endif
-#ifdef PROTOTYPES
-extern int putenv (char *);
-#else
-extern int putenv ();
-#endif
-
-int
-main ()
-{
-return (putenv == 0);
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  bash_cv_std_putenv=yes
-else
-  bash_cv_std_putenv=no
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_std_putenv" >&5
-$as_echo "$bash_cv_std_putenv" >&6; }
-if test $bash_cv_std_putenv = yes; then
-$as_echo "@%:@define HAVE_STD_PUTENV 1" >>confdefs.h
-
-fi
-
-else
-$as_echo "@%:@define HAVE_STD_PUTENV 1" >>confdefs.h
-
-fi
-if test "$ac_cv_func_unsetenv" = "yes"; then
-
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for standard-conformant unsetenv declaration" >&5
-$as_echo_n "checking for standard-conformant unsetenv declaration... " >&6; }
-if ${bash_cv_std_unsetenv+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#if STDC_HEADERS
-#include <stdlib.h>
-#include <stddef.h>
-#endif
-#ifndef __STDC__
-#  ifndef const
-#    define const
-#  endif
-#endif
-#ifdef PROTOTYPES
-extern int unsetenv (const char *);
-#else
-extern int unsetenv ();
-#endif
-
-int
-main ()
-{
-return (unsetenv == 0);
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  bash_cv_std_unsetenv=yes
-else
-  bash_cv_std_unsetenv=no
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_std_unsetenv" >&5
-$as_echo "$bash_cv_std_unsetenv" >&6; }
-if test $bash_cv_std_unsetenv = yes; then
-$as_echo "@%:@define HAVE_STD_UNSETENV 1" >>confdefs.h
-
-fi
-
-else
-$as_echo "@%:@define HAVE_STD_UNSETENV 1" >>confdefs.h
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for printf floating point output in hex notation" >&5
-$as_echo_n "checking for printf floating point output in hex notation... " >&6; }
-if ${bash_cv_printf_a_format+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test "$cross_compiling" = yes; then :
-  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cannot check printf if cross compiling -- defaulting to no" >&5
-$as_echo "$as_me: WARNING: cannot check printf if cross compiling -- defaulting to no" >&2;}
-    bash_cv_printf_a_format=no
-
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#include <stdio.h>
-#include <string.h>
-
-int
-main()
-{
-       double y = 0.0;
-       char abuf[1024];
-
-       sprintf(abuf, "%A", y);
-       exit(strchr(abuf, 'P') == (char *)0);
-}
-
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-  bash_cv_printf_a_format=yes
-else
-  bash_cv_printf_a_format=no
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_printf_a_format" >&5
-$as_echo "$bash_cv_printf_a_format" >&6; }
-if test $bash_cv_printf_a_format = yes; then
-$as_echo "@%:@define HAVE_PRINTF_A_FORMAT 1" >>confdefs.h
-
-fi
-
-
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if signal handlers must be reinstalled when invoked" >&5
-$as_echo_n "checking if signal handlers must be reinstalled when invoked... " >&6; }
-if ${bash_cv_must_reinstall_sighandlers+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test "$cross_compiling" = yes; then :
-  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cannot check signal handling if cross compiling -- defaulting to no" >&5
-$as_echo "$as_me: WARNING: cannot check signal handling if cross compiling -- defaulting to no" >&2;}
-    bash_cv_must_reinstall_sighandlers=no
-
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#include <signal.h>
-#ifdef HAVE_UNISTD_H
-#include <unistd.h>
-#endif
-
-typedef RETSIGTYPE sigfunc();
-
-int nsigint;
-
-#ifdef HAVE_POSIX_SIGNALS
-sigfunc *
-set_signal_handler(sig, handler)
-     int sig;
-     sigfunc *handler;
-{
-  struct sigaction act, oact;
-  act.sa_handler = handler;
-  act.sa_flags = 0;
-  sigemptyset (&act.sa_mask);
-  sigemptyset (&oact.sa_mask);
-  sigaction (sig, &act, &oact);
-  return (oact.sa_handler);
-}
-#else
-#define set_signal_handler(s, h) signal(s, h)
-#endif
-
-RETSIGTYPE
-sigint(s)
-int s;
-{
-  nsigint++;
-}
-
-main()
-{
-       nsigint = 0;
-       set_signal_handler(SIGINT, sigint);
-       kill((int)getpid(), SIGINT);
-       kill((int)getpid(), SIGINT);
-       exit(nsigint != 2);
-}
-
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-  bash_cv_must_reinstall_sighandlers=no
-else
-  bash_cv_must_reinstall_sighandlers=yes
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_must_reinstall_sighandlers" >&5
-$as_echo "$bash_cv_must_reinstall_sighandlers" >&6; }
-if test $bash_cv_must_reinstall_sighandlers = yes; then
-$as_echo "@%:@define MUST_REINSTALL_SIGHANDLERS 1" >>confdefs.h
-
-fi
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for presence of necessary job control definitions" >&5
-$as_echo_n "checking for presence of necessary job control definitions... " >&6; }
-if ${bash_cv_job_control_missing+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test "$cross_compiling" = yes; then :
-  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cannot check job control if cross-compiling -- defaulting to missing" >&5
-$as_echo "$as_me: WARNING: cannot check job control if cross-compiling -- defaulting to missing" >&2;}
-     bash_cv_job_control_missing=missing
-
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#include <sys/types.h>
-#ifdef HAVE_SYS_WAIT_H
-#include <sys/wait.h>
-#endif
-#ifdef HAVE_UNISTD_H
-#include <unistd.h>
-#endif
-#include <signal.h>
-
-/* Add more tests in here as appropriate. */
-main()
-{
-/* signal type */
-#if !defined (HAVE_POSIX_SIGNALS) && !defined (HAVE_BSD_SIGNALS)
-exit(1);
-#endif
-
-/* signals and tty control. */
-#if !defined (SIGTSTP) || !defined (SIGSTOP) || !defined (SIGCONT)
-exit (1);
-#endif
-
-/* process control */
-#if !defined (WNOHANG) || !defined (WUNTRACED) 
-exit(1);
-#endif
-
-/* Posix systems have tcgetpgrp and waitpid. */
-#if defined (_POSIX_VERSION) && !defined (HAVE_TCGETPGRP)
-exit(1);
-#endif
-
-#if defined (_POSIX_VERSION) && !defined (HAVE_WAITPID)
-exit(1);
-#endif
-
-/* Other systems have TIOCSPGRP/TIOCGPRGP and wait3. */
-#if !defined (_POSIX_VERSION) && !defined (HAVE_WAIT3)
-exit(1);
-#endif
-
-exit(0);
-}
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-  bash_cv_job_control_missing=present
-else
-  bash_cv_job_control_missing=missing
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_job_control_missing" >&5
-$as_echo "$bash_cv_job_control_missing" >&6; }
-if test $bash_cv_job_control_missing = missing; then
-$as_echo "@%:@define JOB_CONTROL_MISSING 1" >>confdefs.h
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for presence of named pipes" >&5
-$as_echo_n "checking for presence of named pipes... " >&6; }
-if ${bash_cv_sys_named_pipes+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test "$cross_compiling" = yes; then :
-  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cannot check for named pipes if cross-compiling -- defaulting to missing" >&5
-$as_echo "$as_me: WARNING: cannot check for named pipes if cross-compiling -- defaulting to missing" >&2;}
-     bash_cv_sys_named_pipes=missing
-
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#include <sys/types.h>
-#include <sys/stat.h>
-#ifdef HAVE_UNISTD_H
-#include <unistd.h>
-#endif
-
-/* Add more tests in here as appropriate. */
-main()
-{
-int fd, err;
-
-#if defined (HAVE_MKFIFO)
-exit (0);
-#endif
-
-#if !defined (S_IFIFO) && (defined (_POSIX_VERSION) && !defined (S_ISFIFO))
-exit (1);
-#endif
-
-#if defined (NeXT)
-exit (1);
-#endif
-err = mkdir("bash-aclocal", 0700);
-if (err < 0) {
-  perror ("mkdir");
-  exit(1);
-}
-fd = mknod ("bash-aclocal/sh-np-autoconf", 0666 | S_IFIFO, 0);
-if (fd == -1) {
-  rmdir ("bash-aclocal");
-  exit (1);
-}
-close(fd);
-unlink ("bash-aclocal/sh-np-autoconf");
-rmdir ("bash-aclocal");
-exit(0);
-}
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-  bash_cv_sys_named_pipes=present
-else
-  bash_cv_sys_named_pipes=missing
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_sys_named_pipes" >&5
-$as_echo "$bash_cv_sys_named_pipes" >&6; }
-if test $bash_cv_sys_named_pipes = missing; then
-$as_echo "@%:@define NAMED_PIPES_MISSING 1" >>confdefs.h
-
-fi
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether termios.h defines TIOCGWINSZ" >&5
-$as_echo_n "checking whether termios.h defines TIOCGWINSZ... " >&6; }
-if ${ac_cv_sys_tiocgwinsz_in_termios_h+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <sys/types.h>
-#include <termios.h>
-#ifdef TIOCGWINSZ
-  yes
-#endif
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "yes" >/dev/null 2>&1; then :
-  ac_cv_sys_tiocgwinsz_in_termios_h=yes
-else
-  ac_cv_sys_tiocgwinsz_in_termios_h=no
-fi
-rm -f conftest*
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sys_tiocgwinsz_in_termios_h" >&5
-$as_echo "$ac_cv_sys_tiocgwinsz_in_termios_h" >&6; }
-
-if test $ac_cv_sys_tiocgwinsz_in_termios_h != yes; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether sys/ioctl.h defines TIOCGWINSZ" >&5
-$as_echo_n "checking whether sys/ioctl.h defines TIOCGWINSZ... " >&6; }
-if ${ac_cv_sys_tiocgwinsz_in_sys_ioctl_h+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <sys/types.h>
-#include <sys/ioctl.h>
-#ifdef TIOCGWINSZ
-  yes
-#endif
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "yes" >/dev/null 2>&1; then :
-  ac_cv_sys_tiocgwinsz_in_sys_ioctl_h=yes
-else
-  ac_cv_sys_tiocgwinsz_in_sys_ioctl_h=no
-fi
-rm -f conftest*
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sys_tiocgwinsz_in_sys_ioctl_h" >&5
-$as_echo "$ac_cv_sys_tiocgwinsz_in_sys_ioctl_h" >&6; }
-
-  if test $ac_cv_sys_tiocgwinsz_in_sys_ioctl_h = yes; then
-    
-$as_echo "@%:@define GWINSZ_IN_SYS_IOCTL 1" >>confdefs.h
-
-  fi
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for TIOCSTAT in sys/ioctl.h" >&5
-$as_echo_n "checking for TIOCSTAT in sys/ioctl.h... " >&6; }
-if ${bash_cv_tiocstat_in_ioctl+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <sys/types.h>
-#include <sys/ioctl.h>
-int
-main ()
-{
-int x = TIOCSTAT;
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  bash_cv_tiocstat_in_ioctl=yes
-else
-  bash_cv_tiocstat_in_ioctl=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_tiocstat_in_ioctl" >&5
-$as_echo "$bash_cv_tiocstat_in_ioctl" >&6; }
-if test $bash_cv_tiocstat_in_ioctl = yes; then   
-$as_echo "@%:@define TIOCSTAT_IN_SYS_IOCTL 1" >>confdefs.h
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for FIONREAD in sys/ioctl.h" >&5
-$as_echo_n "checking for FIONREAD in sys/ioctl.h... " >&6; }
-if ${bash_cv_fionread_in_ioctl+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <sys/types.h>
-#include <sys/ioctl.h>
-int
-main ()
-{
-int x = FIONREAD;
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  bash_cv_fionread_in_ioctl=yes
-else
-  bash_cv_fionread_in_ioctl=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_fionread_in_ioctl" >&5
-$as_echo "$bash_cv_fionread_in_ioctl" >&6; }
-if test $bash_cv_fionread_in_ioctl = yes; then   
-$as_echo "@%:@define FIONREAD_IN_SYS_IOCTL 1" >>confdefs.h
-
-fi
-
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether WCONTINUED flag to waitpid is unavailable or available but broken" >&5
-$as_echo_n "checking whether WCONTINUED flag to waitpid is unavailable or available but broken... " >&6; }
-if ${bash_cv_wcontinued_broken+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test "$cross_compiling" = yes; then :
-  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cannot check WCONTINUED if cross compiling -- defaulting to no" >&5
-$as_echo "$as_me: WARNING: cannot check WCONTINUED if cross compiling -- defaulting to no" >&2;}
-    bash_cv_wcontinued_broken=no
-
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#include <sys/types.h>
-#include <sys/wait.h>
-#include <unistd.h>
-#include <errno.h>
-
-#ifndef errno
-extern int errno;
-#endif
-main()
-{
-       int     x;
-
-       x = waitpid(-1, (int *)0, WNOHANG|WCONTINUED);
-       if (x == -1 && errno == EINVAL)
-               exit (1);
-       else
-               exit (0);
-}
-
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-  bash_cv_wcontinued_broken=no
-else
-  bash_cv_wcontinued_broken=yes
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_wcontinued_broken" >&5
-$as_echo "$bash_cv_wcontinued_broken" >&6; }
-if test $bash_cv_wcontinued_broken = yes; then
-$as_echo "@%:@define WCONTINUED_BROKEN 1" >>confdefs.h
-
-fi
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for speed_t in sys/types.h" >&5
-$as_echo_n "checking for speed_t in sys/types.h... " >&6; }
-if ${bash_cv_speed_t_in_sys_types+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <sys/types.h>
-int
-main ()
-{
-speed_t x;
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  bash_cv_speed_t_in_sys_types=yes
-else
-  bash_cv_speed_t_in_sys_types=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_speed_t_in_sys_types" >&5
-$as_echo "$bash_cv_speed_t_in_sys_types" >&6; }
-if test $bash_cv_speed_t_in_sys_types = yes; then   
-$as_echo "@%:@define SPEED_T_IN_SYS_TYPES 1" >>confdefs.h
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether getpw functions are declared in pwd.h" >&5
-$as_echo_n "checking whether getpw functions are declared in pwd.h... " >&6; }
-if ${bash_cv_getpw_declared+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#include <sys/types.h>
-#ifdef HAVE_UNISTD_H
-#  include <unistd.h>
-#endif
-#include <pwd.h>
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "getpwuid" >/dev/null 2>&1; then :
-  bash_cv_getpw_declared=yes
-else
-  bash_cv_getpw_declared=no
-fi
-rm -f conftest*
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_getpw_declared" >&5
-$as_echo "$bash_cv_getpw_declared" >&6; }
-if test $bash_cv_getpw_declared = yes; then
-$as_echo "@%:@define HAVE_GETPW_DECLS 1" >>confdefs.h
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for unusable real-time signals due to large values" >&5
-$as_echo_n "checking for unusable real-time signals due to large values... " >&6; }
-if ${bash_cv_unusable_rtsigs+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test "$cross_compiling" = yes; then :
-  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cannot check real-time signals if cross compiling -- defaulting to yes" >&5
-$as_echo "$as_me: WARNING: cannot check real-time signals if cross compiling -- defaulting to yes" >&2;}
-     bash_cv_unusable_rtsigs=yes
-
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#include <sys/types.h>
-#include <signal.h>
-
-#ifndef NSIG
-#  define NSIG 64
-#endif
-
-main ()
-{
-  int n_sigs = 2 * NSIG;
-#ifdef SIGRTMIN
-  int rtmin = SIGRTMIN;
-#else
-  int rtmin = 0;
-#endif
-
-  exit(rtmin < n_sigs);
-}
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-  bash_cv_unusable_rtsigs=yes
-else
-  bash_cv_unusable_rtsigs=no
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_unusable_rtsigs" >&5
-$as_echo "$bash_cv_unusable_rtsigs" >&6; }
-if test $bash_cv_unusable_rtsigs = yes; then
-$as_echo "@%:@define UNUSABLE_RT_SIGNALS 1" >>confdefs.h
-
-fi
-
-
-
-
-
-if test "$bash_cv_sys_siglist" = no && test "$bash_cv_under_sys_siglist" = no && test "$bash_cv_have_strsignal" = no; then
-  SIGLIST_O=siglist.o
-else
-  SIGLIST_O=
-fi
-
-
-
-case "$host_os" in
-hpux*) { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $host_os needs _KERNEL for RLIMIT defines" >&5
-$as_echo_n "checking whether $host_os needs _KERNEL for RLIMIT defines... " >&6; }
-if ${bash_cv_kernel_rlimit+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#include <sys/types.h>
-#include <sys/resource.h>
-
-int
-main ()
-{
-
-  int f;
-  f = RLIMIT_DATA;
-
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  bash_cv_kernel_rlimit=no
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#include <sys/types.h>
-#define _KERNEL
-#include <sys/resource.h>
-#undef _KERNEL
-
-int
-main ()
-{
-
-       int f;
-        f = RLIMIT_DATA;
-
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  bash_cv_kernel_rlimit=yes
-else
-  bash_cv_kernel_rlimit=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_kernel_rlimit" >&5
-$as_echo "$bash_cv_kernel_rlimit" >&6; }
-if test $bash_cv_kernel_rlimit = yes; then
-$as_echo "@%:@define RLIMIT_NEEDS_KERNEL 1" >>confdefs.h
-
-fi
- ;;
-esac
-
-if test "$opt_readline" = yes; then
-case "$host_os" in
-aix*)  prefer_curses=yes ;;
-esac
-
-if test "X$bash_cv_termcap_lib" = "X"; then
-_bash_needmsg=yes
-else
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking which library has the termcap functions" >&5
-$as_echo_n "checking which library has the termcap functions... " >&6; }
-_bash_needmsg=
-fi
-if ${bash_cv_termcap_lib+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_fn_c_check_func "$LINENO" "tgetent" "ac_cv_func_tgetent"
-if test "x$ac_cv_func_tgetent" = xyes; then :
-  bash_cv_termcap_lib=libc
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for tgetent in -ltermcap" >&5
-$as_echo_n "checking for tgetent in -ltermcap... " >&6; }
-if ${ac_cv_lib_termcap_tgetent+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_check_lib_save_LIBS=$LIBS
-LIBS="-ltermcap  $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-/* Override any GCC internal prototype to avoid an error.
-   Use char because int might match the return type of a GCC
-   builtin and then its argument prototype would still apply.  */
-#ifdef __cplusplus
-extern "C"
-#endif
-char tgetent ();
-int
-main ()
-{
-return tgetent ();
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  ac_cv_lib_termcap_tgetent=yes
-else
-  ac_cv_lib_termcap_tgetent=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_termcap_tgetent" >&5
-$as_echo "$ac_cv_lib_termcap_tgetent" >&6; }
-if test "x$ac_cv_lib_termcap_tgetent" = xyes; then :
-  bash_cv_termcap_lib=libtermcap
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for tgetent in -ltinfo" >&5
-$as_echo_n "checking for tgetent in -ltinfo... " >&6; }
-if ${ac_cv_lib_tinfo_tgetent+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_check_lib_save_LIBS=$LIBS
-LIBS="-ltinfo  $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-/* Override any GCC internal prototype to avoid an error.
-   Use char because int might match the return type of a GCC
-   builtin and then its argument prototype would still apply.  */
-#ifdef __cplusplus
-extern "C"
-#endif
-char tgetent ();
-int
-main ()
-{
-return tgetent ();
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  ac_cv_lib_tinfo_tgetent=yes
-else
-  ac_cv_lib_tinfo_tgetent=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_tinfo_tgetent" >&5
-$as_echo "$ac_cv_lib_tinfo_tgetent" >&6; }
-if test "x$ac_cv_lib_tinfo_tgetent" = xyes; then :
-  bash_cv_termcap_lib=libtinfo
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for tgetent in -lcurses" >&5
-$as_echo_n "checking for tgetent in -lcurses... " >&6; }
-if ${ac_cv_lib_curses_tgetent+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_check_lib_save_LIBS=$LIBS
-LIBS="-lcurses  $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-/* Override any GCC internal prototype to avoid an error.
-   Use char because int might match the return type of a GCC
-   builtin and then its argument prototype would still apply.  */
-#ifdef __cplusplus
-extern "C"
-#endif
-char tgetent ();
-int
-main ()
-{
-return tgetent ();
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  ac_cv_lib_curses_tgetent=yes
-else
-  ac_cv_lib_curses_tgetent=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_curses_tgetent" >&5
-$as_echo "$ac_cv_lib_curses_tgetent" >&6; }
-if test "x$ac_cv_lib_curses_tgetent" = xyes; then :
-  bash_cv_termcap_lib=libcurses
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for tgetent in -lncurses" >&5
-$as_echo_n "checking for tgetent in -lncurses... " >&6; }
-if ${ac_cv_lib_ncurses_tgetent+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_check_lib_save_LIBS=$LIBS
-LIBS="-lncurses  $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-/* Override any GCC internal prototype to avoid an error.
-   Use char because int might match the return type of a GCC
-   builtin and then its argument prototype would still apply.  */
-#ifdef __cplusplus
-extern "C"
-#endif
-char tgetent ();
-int
-main ()
-{
-return tgetent ();
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  ac_cv_lib_ncurses_tgetent=yes
-else
-  ac_cv_lib_ncurses_tgetent=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_ncurses_tgetent" >&5
-$as_echo "$ac_cv_lib_ncurses_tgetent" >&6; }
-if test "x$ac_cv_lib_ncurses_tgetent" = xyes; then :
-  bash_cv_termcap_lib=libncurses
-else
-  bash_cv_termcap_lib=gnutermcap
-fi
-
-fi
-
-fi
-
-fi
-
-fi
-
-fi
-
-if test "X$_bash_needmsg" = "Xyes"; then
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking which library has the termcap functions" >&5
-$as_echo_n "checking which library has the termcap functions... " >&6; }
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: using $bash_cv_termcap_lib" >&5
-$as_echo "using $bash_cv_termcap_lib" >&6; }
-if test $bash_cv_termcap_lib = gnutermcap && test -z "$prefer_curses"; then
-LDFLAGS="$LDFLAGS -L./lib/termcap"
-TERMCAP_LIB="./lib/termcap/libtermcap.a"
-TERMCAP_DEP="./lib/termcap/libtermcap.a"
-elif test $bash_cv_termcap_lib = libtermcap && test -z "$prefer_curses"; then
-TERMCAP_LIB=-ltermcap
-TERMCAP_DEP=
-elif test $bash_cv_termcap_lib = libtinfo; then
-TERMCAP_LIB=-ltinfo
-TERMCAP_DEP=
-elif test $bash_cv_termcap_lib = libncurses; then
-TERMCAP_LIB=-lncurses
-TERMCAP_DEP=
-elif test $bash_cv_termcap_lib = libc; then
-TERMCAP_LIB=
-TERMCAP_DEP=
-else
-TERMCAP_LIB=-lcurses
-TERMCAP_DEP=
-fi
-
-fi
-
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether /dev/fd is available" >&5
-$as_echo_n "checking whether /dev/fd is available... " >&6; }
-if ${bash_cv_dev_fd+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  bash_cv_dev_fd=""
-if test -d /dev/fd  && (exec test -r /dev/fd/0 < /dev/null) ; then
-# check for systems like FreeBSD 5 that only provide /dev/fd/[012]
-   if (exec test -r /dev/fd/3 3</dev/null) ; then
-     bash_cv_dev_fd=standard
-   else
-     bash_cv_dev_fd=absent
-   fi
-fi
-if test -z "$bash_cv_dev_fd" ; then 
-  if test -d /proc/self/fd && (exec test -r /proc/self/fd/0 < /dev/null) ; then
-    bash_cv_dev_fd=whacky
-  else
-    bash_cv_dev_fd=absent
-  fi
-fi
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_dev_fd" >&5
-$as_echo "$bash_cv_dev_fd" >&6; }
-if test $bash_cv_dev_fd = "standard"; then
-  $as_echo "@%:@define HAVE_DEV_FD 1" >>confdefs.h
-
-  $as_echo "@%:@define DEV_FD_PREFIX \"/dev/fd/\"" >>confdefs.h
-
-elif test $bash_cv_dev_fd = "whacky"; then
-  $as_echo "@%:@define HAVE_DEV_FD 1" >>confdefs.h
-
-  $as_echo "@%:@define DEV_FD_PREFIX \"/proc/self/fd/\"" >>confdefs.h
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether /dev/stdin stdout stderr are available" >&5
-$as_echo_n "checking whether /dev/stdin stdout stderr are available... " >&6; }
-if ${bash_cv_dev_stdin+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test -d /dev/fd && (exec test -r /dev/stdin < /dev/null) ; then
-   bash_cv_dev_stdin=present
- elif test -d /proc/self/fd && (exec test -r /dev/stdin < /dev/null) ; then
-   bash_cv_dev_stdin=present
- else
-   bash_cv_dev_stdin=absent
- fi
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_dev_stdin" >&5
-$as_echo "$bash_cv_dev_stdin" >&6; }
-if test $bash_cv_dev_stdin = "present"; then
-  $as_echo "@%:@define HAVE_DEV_STDIN 1" >>confdefs.h
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for default mail directory" >&5
-$as_echo_n "checking for default mail directory... " >&6; }
-if ${bash_cv_mail_dir+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test -d /var/mail; then
-   bash_cv_mail_dir=/var/mail
- elif test -d /var/spool/mail; then
-   bash_cv_mail_dir=/var/spool/mail
- elif test -d /usr/mail; then
-   bash_cv_mail_dir=/usr/mail
- elif test -d /usr/spool/mail; then
-   bash_cv_mail_dir=/usr/spool/mail
- else
-   bash_cv_mail_dir=unknown
- fi
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_mail_dir" >&5
-$as_echo "$bash_cv_mail_dir" >&6; }
-cat >>confdefs.h <<_ACEOF
-@%:@define DEFAULT_MAIL_DIRECTORY "$bash_cv_mail_dir"
-_ACEOF
-
-
-
-if test "$bash_cv_job_control_missing" = missing; then
-       opt_job_control=no
-fi
-
-if test "$opt_job_control" = yes; then
-$as_echo "@%:@define JOB_CONTROL 1" >>confdefs.h
-
-JOBS_O=jobs.o
-else
-JOBS_O=nojobs.o
-fi
-
-
-
-
-LOCAL_DEFS=-DSHELL
-
-
-case "${host_os}" in
-sysv4.2*)      $as_echo "@%:@define SVR4_2 1" >>confdefs.h
-
-               $as_echo "@%:@define SVR4 1" >>confdefs.h
- ;;
-sysv4*)                $as_echo "@%:@define SVR4 1" >>confdefs.h
- ;;
-sysv5*)                $as_echo "@%:@define SVR5 1" >>confdefs.h
- ;;
-hpux9*)                LOCAL_CFLAGS="-DHPUX9 -DHPUX" ;;
-hpux*)         LOCAL_CFLAGS=-DHPUX ;;
-dgux*)         LOCAL_CFLAGS=-D_DGUX_SOURCE; LOCAL_LIBS=-ldgc ;;
-isc*)          LOCAL_CFLAGS=-Disc386 ;;
-rhapsody*)     LOCAL_CFLAGS=-DRHAPSODY ;;
-darwin*)       LOCAL_CFLAGS=-DMACOSX ;;
-sco3.2v5*)     LOCAL_CFLAGS="-b elf -DWAITPID_BROKEN -DPATH_MAX=1024" ;;
-sco3.2v4*)     LOCAL_CFLAGS="-DMUST_UNBLOCK_CHLD -DPATH_MAX=1024" ;;
-sco3.2*)       LOCAL_CFLAGS=-DMUST_UNBLOCK_CHLD ;;
-sunos4*)       LOCAL_CFLAGS=-DSunOS4 ;;
-solaris2.5*)   LOCAL_CFLAGS="-DSunOS5 -DSOLARIS" ;;
-solaris2.8*)   LOCAL_CFLAGS=-DSOLARIS  ;;
-solaris2.9*)   LOCAL_CFLAGS=-DSOLARIS  ;;
-solaris2.10*)  LOCAL_CFLAGS=-DSOLARIS  ;;
-solaris2*)     LOCAL_CFLAGS=-DSOLARIS ;;
-lynxos*)       LOCAL_CFLAGS=-DRECYCLES_PIDS ;;
-linux*)                LOCAL_LDFLAGS=-rdynamic          # allow dynamic loading
-               case "`uname -r`" in
-               2.[456789]*|3*) $as_echo "@%:@define PGRP_PIPE 1" >>confdefs.h
- ;;
-               esac ;;
-*qnx6*)                LOCAL_CFLAGS="-Dqnx -Dqnx6" LOCAL_LIBS="-lncurses" ;;
-*qnx*)         LOCAL_CFLAGS="-Dqnx -F -3s" LOCAL_LDFLAGS="-3s" LOCAL_LIBS="-lunix -lncurses" ;;
-powerux*)      LOCAL_LIBS="-lgen" ;;
-cygwin*)       LOCAL_CFLAGS=-DRECYCLES_PIDS ;;
-opennt*|interix*) LOCAL_CFLAGS="-DNO_MAIN_ENV_ARG -DBROKEN_DIRENT_D_INO -D_POSIX_SOURCE -D_ALL_SOURCE -DRECYCLES_PIDS" ;;
-*openstep*)    LOCAL_CFLAGS="-D__APPLE_CC__" ;;
-esac
-
-case "${host_os}-${CC}" in
-aix4.2*-*gcc*) LOCAL_LDFLAGS="-Xlinker -bexpall -Xlinker -brtl" ;;
-aix4.2*)       LOCAL_LDFLAGS="-bexpall -brtl" ;;
-bsdi4*-*gcc*)  LOCAL_LDFLAGS="-rdynamic" ;;    # allow dynamic loading, like Linux
-esac
-
-case "${host_os}" in
-freebsd[3-9]*)
-               if test -x /usr/bin/objformat && test "`/usr/bin/objformat`" = "elf" ; then
-                       LOCAL_LDFLAGS=-rdynamic # allow dynamic loading
-               fi ;;
-freebsdelf*)   LOCAL_LDFLAGS=-rdynamic ;;      # allow dynamic loading
-dragonfly*)    LOCAL_LDFLAGS=-rdynamic ;;      # allow dynamic loading
-esac
-
-case "$host_cpu" in
-*cray*)                LOCAL_CFLAGS="-DCRAY" ;; # shell var so config.h can use it
-esac
-
-case "$host_cpu-$host_os" in
-ibmrt-*bsd4*)  LOCAL_CFLAGS="-ma -U__STDC__" ;;
-esac
-
-case "$host_cpu-$host_vendor-$host_os" in
-m88k-motorola-sysv3)   LOCAL_CFLAGS=-DWAITPID_BROKEN ;;
-mips-pyramid-sysv4)    LOCAL_CFLAGS=-Xa ;;
-esac
-
-#
-# Shared object configuration section.  These values are generated by
-# ${srcdir}/support/shobj-conf
-#
-if test "$ac_cv_func_dlopen" = "yes" && test -f ${srcdir}/support/shobj-conf
-then
-       { $as_echo "$as_me:${as_lineno-$LINENO}: checking shared object configuration for loadable builtins" >&5
-$as_echo_n "checking shared object configuration for loadable builtins... " >&6; }
-       eval `${CONFIG_SHELL-/bin/sh} ${srcdir}/support/shobj-conf -C "${CC}" -c "${host_cpu}" -o "${host_os}" -v "${host_vendor}"`
-       
-       
-       
-       
-       
-       
-       
-       { $as_echo "$as_me:${as_lineno-$LINENO}: result: $SHOBJ_STATUS" >&5
-$as_echo "$SHOBJ_STATUS" >&6; }
-fi
-
-# try to create a directory tree if the source is elsewhere
-# this should be packaged into a script accessible via ${srcdir}/support
-case "$srcdir" in
-.)     ;;
-*)     for d in doc tests support lib examples; do     # dirs
-               test -d $d || mkdir $d
-       done
-       for ld in readline glob tilde malloc sh termcap; do     # libdirs
-               test -d lib/$ld || mkdir lib/$ld
-       done
-       test -d examples/loadables || mkdir examples/loadables  # loadable builtins
-       test -d examples/loadables/perl || mkdir examples/loadables/perl
-       ;;
-esac
-
-BUILD_DIR=`pwd`
-case "$BUILD_DIR" in
-*\ *)  BUILD_DIR=`echo "$BUILD_DIR" | sed 's: :\\\\ :g'` ;;
-*)     ;;
-esac
-
-if test -z "$localedir"; then
-       localedir='${datarootdir}/locale'
-fi
-if test -z "$datarootdir"; then
-       datarootdir='${prefix}/share'
-fi
-
-
-
-
-
-
-# Some versions of autoconf don't substitute these automatically
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-#AC_SUBST(ALLOCA_SOURCE)
-#AC_SUBST(ALLOCA_OBJECT)
-
-ac_config_files="$ac_config_files Makefile builtins/Makefile lib/readline/Makefile lib/glob/Makefile lib/intl/Makefile lib/malloc/Makefile lib/sh/Makefile lib/termcap/Makefile lib/tilde/Makefile doc/Makefile support/Makefile po/Makefile.in examples/loadables/Makefile examples/loadables/perl/Makefile"
-
-ac_config_commands="$ac_config_commands default"
-
-cat >confcache <<\_ACEOF
-# This file is a shell script that caches the results of configure
-# tests run on this system so they can be shared between configure
-# scripts and configure runs, see configure's option --config-cache.
-# It is not useful on other systems.  If it contains results you don't
-# want to keep, you may remove or edit it.
-#
-# config.status only pays attention to the cache file if you give it
-# the --recheck option to rerun configure.
-#
-# `ac_cv_env_foo' variables (set or unset) will be overridden when
-# loading this file, other *unset* `ac_cv_foo' will be assigned the
-# following values.
-
-_ACEOF
-
-# The following way of writing the cache mishandles newlines in values,
-# but we know of no workaround that is simple, portable, and efficient.
-# So, we kill variables containing newlines.
-# Ultrix sh set writes to stderr and can't be redirected directly,
-# and sets the high bit in the cache file unless we assign to the vars.
-(
-  for ac_var in `(set) 2>&1 | sed -n 's/^\([a-zA-Z_][a-zA-Z0-9_]*\)=.*/\1/p'`; do
-    eval ac_val=\$$ac_var
-    case $ac_val in #(
-    *${as_nl}*)
-      case $ac_var in #(
-      *_cv_*) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cache variable $ac_var contains a newline" >&5
-$as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;;
-      esac
-      case $ac_var in #(
-      _ | IFS | as_nl) ;; #(
-      BASH_ARGV | BASH_SOURCE) eval $ac_var= ;; #(
-      *) { eval $ac_var=; unset $ac_var;} ;;
-      esac ;;
-    esac
-  done
-
-  (set) 2>&1 |
-    case $as_nl`(ac_space=' '; set) 2>&1` in #(
-    *${as_nl}ac_space=\ *)
-      # `set' does not quote correctly, so add quotes: double-quote
-      # substitution turns \\\\ into \\, and sed turns \\ into \.
-      sed -n \
-       "s/'/'\\\\''/g;
-         s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\\2'/p"
-      ;; #(
-    *)
-      # `set' quotes correctly as required by POSIX, so do not add quotes.
-      sed -n "/^[_$as_cr_alnum]*_cv_[_$as_cr_alnum]*=/p"
-      ;;
-    esac |
-    sort
-) |
-  sed '
-     /^ac_cv_env_/b end
-     t clear
-     :clear
-     s/^\([^=]*\)=\(.*[{}].*\)$/test "${\1+set}" = set || &/
-     t end
-     s/^\([^=]*\)=\(.*\)$/\1=${\1=\2}/
-     :end' >>confcache
-if diff "$cache_file" confcache >/dev/null 2>&1; then :; else
-  if test -w "$cache_file"; then
-    if test "x$cache_file" != "x/dev/null"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: updating cache $cache_file" >&5
-$as_echo "$as_me: updating cache $cache_file" >&6;}
-      if test ! -f "$cache_file" || test -h "$cache_file"; then
-       cat confcache >"$cache_file"
-      else
-        case $cache_file in #(
-        */* | ?:*)
-         mv -f confcache "$cache_file"$$ &&
-         mv -f "$cache_file"$$ "$cache_file" ;; #(
-        *)
-         mv -f confcache "$cache_file" ;;
-       esac
-      fi
-    fi
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: not updating unwritable cache $cache_file" >&5
-$as_echo "$as_me: not updating unwritable cache $cache_file" >&6;}
-  fi
-fi
-rm -f confcache
-
-test "x$prefix" = xNONE && prefix=$ac_default_prefix
-# Let make expand exec_prefix.
-test "x$exec_prefix" = xNONE && exec_prefix='${prefix}'
-
-DEFS=-DHAVE_CONFIG_H
-
-ac_libobjs=
-ac_ltlibobjs=
-U=
-for ac_i in : $LIB@&t@OBJS; do test "x$ac_i" = x: && continue
-  # 1. Remove the extension, and $U if already installed.
-  ac_script='s/\$U\././;s/\.o$//;s/\.obj$//'
-  ac_i=`$as_echo "$ac_i" | sed "$ac_script"`
-  # 2. Prepend LIBOBJDIR.  When used with automake>=1.10 LIBOBJDIR
-  #    will be set to the directory where LIBOBJS objects are built.
-  as_fn_append ac_libobjs " \${LIBOBJDIR}$ac_i\$U.$ac_objext"
-  as_fn_append ac_ltlibobjs " \${LIBOBJDIR}$ac_i"'$U.lo'
-done
-LIB@&t@OBJS=$ac_libobjs
-
-LTLIBOBJS=$ac_ltlibobjs
-
-
-
-
-: "${CONFIG_STATUS=./config.status}"
-ac_write_fail=0
-ac_clean_files_save=$ac_clean_files
-ac_clean_files="$ac_clean_files $CONFIG_STATUS"
-{ $as_echo "$as_me:${as_lineno-$LINENO}: creating $CONFIG_STATUS" >&5
-$as_echo "$as_me: creating $CONFIG_STATUS" >&6;}
-as_write_fail=0
-cat >$CONFIG_STATUS <<_ASEOF || as_write_fail=1
-#! $SHELL
-# Generated by $as_me.
-# Run this file to recreate the current configuration.
-# Compiler output produced by configure, useful for debugging
-# configure, is in config.log if it exists.
-
-debug=false
-ac_cs_recheck=false
-ac_cs_silent=false
-
-SHELL=\${CONFIG_SHELL-$SHELL}
-export SHELL
-_ASEOF
-cat >>$CONFIG_STATUS <<\_ASEOF || as_write_fail=1
-## -------------------- ##
-## M4sh Initialization. ##
-## -------------------- ##
-
-# Be more Bourne compatible
-DUALCASE=1; export DUALCASE # for MKS sh
-if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then :
-  emulate sh
-  NULLCMD=:
-  # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which
-  # is contrary to our usage.  Disable this feature.
-  alias -g '${1+"$@"}'='"$@"'
-  setopt NO_GLOB_SUBST
-else
-  case `(set -o) 2>/dev/null` in @%:@(
-  *posix*) :
-    set -o posix ;; @%:@(
-  *) :
-     ;;
-esac
-fi
-
-
-as_nl='
-'
-export as_nl
-# Printing a long string crashes Solaris 7 /usr/bin/printf.
-as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
-as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo
-as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo
-# Prefer a ksh shell builtin over an external printf program on Solaris,
-# but without wasting forks for bash or zsh.
-if test -z "$BASH_VERSION$ZSH_VERSION" \
-    && (test "X`print -r -- $as_echo`" = "X$as_echo") 2>/dev/null; then
-  as_echo='print -r --'
-  as_echo_n='print -rn --'
-elif (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then
-  as_echo='printf %s\n'
-  as_echo_n='printf %s'
-else
-  if test "X`(/usr/ucb/echo -n -n $as_echo) 2>/dev/null`" = "X-n $as_echo"; then
-    as_echo_body='eval /usr/ucb/echo -n "$1$as_nl"'
-    as_echo_n='/usr/ucb/echo -n'
-  else
-    as_echo_body='eval expr "X$1" : "X\\(.*\\)"'
-    as_echo_n_body='eval
-      arg=$1;
-      case $arg in @%:@(
-      *"$as_nl"*)
-       expr "X$arg" : "X\\(.*\\)$as_nl";
-       arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;;
-      esac;
-      expr "X$arg" : "X\\(.*\\)" | tr -d "$as_nl"
-    '
-    export as_echo_n_body
-    as_echo_n='sh -c $as_echo_n_body as_echo'
-  fi
-  export as_echo_body
-  as_echo='sh -c $as_echo_body as_echo'
-fi
-
-# The user is always right.
-if test "${PATH_SEPARATOR+set}" != set; then
-  PATH_SEPARATOR=:
-  (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && {
-    (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 ||
-      PATH_SEPARATOR=';'
-  }
-fi
-
-
-# IFS
-# We need space, tab and new line, in precisely that order.  Quoting is
-# there to prevent editors from complaining about space-tab.
-# (If _AS_PATH_WALK were called with IFS unset, it would disable word
-# splitting by setting IFS to empty value.)
-IFS=" ""       $as_nl"
-
-# Find who we are.  Look in the path if we contain no directory separator.
-as_myself=
-case $0 in @%:@((
-  *[\\/]* ) as_myself=$0 ;;
-  *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break
-  done
-IFS=$as_save_IFS
-
-     ;;
-esac
-# We did not find ourselves, most probably we were run as `sh COMMAND'
-# in which case we are not to be found in the path.
-if test "x$as_myself" = x; then
-  as_myself=$0
-fi
-if test ! -f "$as_myself"; then
-  $as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2
-  exit 1
-fi
-
-# Unset variables that we do not need and which cause bugs (e.g. in
-# pre-3.0 UWIN ksh).  But do not cause bugs in bash 2.01; the "|| exit 1"
-# suppresses any "Segmentation fault" message there.  '((' could
-# trigger a bug in pdksh 5.2.14.
-for as_var in BASH_ENV ENV MAIL MAILPATH
-do eval test x\${$as_var+set} = xset \
-  && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || :
-done
-PS1='$ '
-PS2='> '
-PS4='+ '
-
-# NLS nuisances.
-LC_ALL=C
-export LC_ALL
-LANGUAGE=C
-export LANGUAGE
-
-# CDPATH.
-(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
-
-
-@%:@ as_fn_error STATUS ERROR [LINENO LOG_FD]
-@%:@ ----------------------------------------
-@%:@ Output "`basename @S|@0`: error: ERROR" to stderr. If LINENO and LOG_FD are
-@%:@ provided, also output the error to LOG_FD, referencing LINENO. Then exit the
-@%:@ script with STATUS, using 1 if that was 0.
-as_fn_error ()
-{
-  as_status=$1; test $as_status -eq 0 && as_status=1
-  if test "$4"; then
-    as_lineno=${as_lineno-"$3"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
-    $as_echo "$as_me:${as_lineno-$LINENO}: error: $2" >&$4
-  fi
-  $as_echo "$as_me: error: $2" >&2
-  as_fn_exit $as_status
-} @%:@ as_fn_error
-
-
-@%:@ as_fn_set_status STATUS
-@%:@ -----------------------
-@%:@ Set @S|@? to STATUS, without forking.
-as_fn_set_status ()
-{
-  return $1
-} @%:@ as_fn_set_status
-
-@%:@ as_fn_exit STATUS
-@%:@ -----------------
-@%:@ Exit the shell with STATUS, even in a "trap 0" or "set -e" context.
-as_fn_exit ()
-{
-  set +e
-  as_fn_set_status $1
-  exit $1
-} @%:@ as_fn_exit
-
-@%:@ as_fn_unset VAR
-@%:@ ---------------
-@%:@ Portably unset VAR.
-as_fn_unset ()
-{
-  { eval $1=; unset $1;}
-}
-as_unset=as_fn_unset
-@%:@ as_fn_append VAR VALUE
-@%:@ ----------------------
-@%:@ Append the text in VALUE to the end of the definition contained in VAR. Take
-@%:@ advantage of any shell optimizations that allow amortized linear growth over
-@%:@ repeated appends, instead of the typical quadratic growth present in naive
-@%:@ implementations.
-if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null; then :
-  eval 'as_fn_append ()
-  {
-    eval $1+=\$2
-  }'
-else
-  as_fn_append ()
-  {
-    eval $1=\$$1\$2
-  }
-fi # as_fn_append
-
-@%:@ as_fn_arith ARG...
-@%:@ ------------------
-@%:@ Perform arithmetic evaluation on the ARGs, and store the result in the
-@%:@ global @S|@as_val. Take advantage of shells that can avoid forks. The arguments
-@%:@ must be portable across @S|@(()) and expr.
-if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null; then :
-  eval 'as_fn_arith ()
-  {
-    as_val=$(( $* ))
-  }'
-else
-  as_fn_arith ()
-  {
-    as_val=`expr "$@" || test $? -eq 1`
-  }
-fi # as_fn_arith
-
-
-if expr a : '\(a\)' >/dev/null 2>&1 &&
-   test "X`expr 00001 : '.*\(...\)'`" = X001; then
-  as_expr=expr
-else
-  as_expr=false
-fi
-
-if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then
-  as_basename=basename
-else
-  as_basename=false
-fi
-
-if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then
-  as_dirname=dirname
-else
-  as_dirname=false
-fi
-
-as_me=`$as_basename -- "$0" ||
-$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \
-        X"$0" : 'X\(//\)$' \| \
-        X"$0" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X/"$0" |
-    sed '/^.*\/\([^/][^/]*\)\/*$/{
-           s//\1/
-           q
-         }
-         /^X\/\(\/\/\)$/{
-           s//\1/
-           q
-         }
-         /^X\/\(\/\).*/{
-           s//\1/
-           q
-         }
-         s/.*/./; q'`
-
-# Avoid depending upon Character Ranges.
-as_cr_letters='abcdefghijklmnopqrstuvwxyz'
-as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ'
-as_cr_Letters=$as_cr_letters$as_cr_LETTERS
-as_cr_digits='0123456789'
-as_cr_alnum=$as_cr_Letters$as_cr_digits
-
-ECHO_C= ECHO_N= ECHO_T=
-case `echo -n x` in @%:@(((((
--n*)
-  case `echo 'xy\c'` in
-  *c*) ECHO_T='        ';;     # ECHO_T is single tab character.
-  xy)  ECHO_C='\c';;
-  *)   echo `echo ksh88 bug on AIX 6.1` > /dev/null
-       ECHO_T='        ';;
-  esac;;
-*)
-  ECHO_N='-n';;
-esac
-
-rm -f conf$$ conf$$.exe conf$$.file
-if test -d conf$$.dir; then
-  rm -f conf$$.dir/conf$$.file
-else
-  rm -f conf$$.dir
-  mkdir conf$$.dir 2>/dev/null
-fi
-if (echo >conf$$.file) 2>/dev/null; then
-  if ln -s conf$$.file conf$$ 2>/dev/null; then
-    as_ln_s='ln -s'
-    # ... but there are two gotchas:
-    # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail.
-    # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable.
-    # In both cases, we have to default to `cp -p'.
-    ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe ||
-      as_ln_s='cp -p'
-  elif ln conf$$.file conf$$ 2>/dev/null; then
-    as_ln_s=ln
-  else
-    as_ln_s='cp -p'
-  fi
-else
-  as_ln_s='cp -p'
-fi
-rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file
-rmdir conf$$.dir 2>/dev/null
-
-
-@%:@ as_fn_mkdir_p
-@%:@ -------------
-@%:@ Create "@S|@as_dir" as a directory, including parents if necessary.
-as_fn_mkdir_p ()
-{
-
-  case $as_dir in #(
-  -*) as_dir=./$as_dir;;
-  esac
-  test -d "$as_dir" || eval $as_mkdir_p || {
-    as_dirs=
-    while :; do
-      case $as_dir in #(
-      *\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'(
-      *) as_qdir=$as_dir;;
-      esac
-      as_dirs="'$as_qdir' $as_dirs"
-      as_dir=`$as_dirname -- "$as_dir" ||
-$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
-        X"$as_dir" : 'X\(//\)[^/]' \| \
-        X"$as_dir" : 'X\(//\)$' \| \
-        X"$as_dir" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X"$as_dir" |
-    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
-           s//\1/
-           q
-         }
-         /^X\(\/\/\)[^/].*/{
-           s//\1/
-           q
-         }
-         /^X\(\/\/\)$/{
-           s//\1/
-           q
-         }
-         /^X\(\/\).*/{
-           s//\1/
-           q
-         }
-         s/.*/./; q'`
-      test -d "$as_dir" && break
-    done
-    test -z "$as_dirs" || eval "mkdir $as_dirs"
-  } || test -d "$as_dir" || as_fn_error $? "cannot create directory $as_dir"
-
-
-} @%:@ as_fn_mkdir_p
-if mkdir -p . 2>/dev/null; then
-  as_mkdir_p='mkdir -p "$as_dir"'
-else
-  test -d ./-p && rmdir ./-p
-  as_mkdir_p=false
-fi
-
-if test -x / >/dev/null 2>&1; then
-  as_test_x='test -x'
-else
-  if ls -dL / >/dev/null 2>&1; then
-    as_ls_L_option=L
-  else
-    as_ls_L_option=
-  fi
-  as_test_x='
-    eval sh -c '\''
-      if test -d "$1"; then
-       test -d "$1/.";
-      else
-       case $1 in @%:@(
-       -*)set "./$1";;
-       esac;
-       case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in @%:@((
-       ???[sx]*):;;*)false;;esac;fi
-    '\'' sh
-  '
-fi
-as_executable_p=$as_test_x
-
-# Sed expression to map a string onto a valid CPP name.
-as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'"
-
-# Sed expression to map a string onto a valid variable name.
-as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'"
-
-
-exec 6>&1
-## ----------------------------------- ##
-## Main body of $CONFIG_STATUS script. ##
-## ----------------------------------- ##
-_ASEOF
-test $as_write_fail = 0 && chmod +x $CONFIG_STATUS || ac_write_fail=1
-
-cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
-# Save the log message, to keep $0 and so on meaningful, and to
-# report actual input values of CONFIG_FILES etc. instead of their
-# values after options handling.
-ac_log="
-This file was extended by bash $as_me 4.3-alpha, which was
-generated by GNU Autoconf 2.68.  Invocation command line was
-
-  CONFIG_FILES    = $CONFIG_FILES
-  CONFIG_HEADERS  = $CONFIG_HEADERS
-  CONFIG_LINKS    = $CONFIG_LINKS
-  CONFIG_COMMANDS = $CONFIG_COMMANDS
-  $ $0 $@
-
-on `(hostname || uname -n) 2>/dev/null | sed 1q`
-"
-
-_ACEOF
-
-case $ac_config_files in *"
-"*) set x $ac_config_files; shift; ac_config_files=$*;;
-esac
-
-case $ac_config_headers in *"
-"*) set x $ac_config_headers; shift; ac_config_headers=$*;;
-esac
-
-
-cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
-# Files that config.status was made for.
-config_files="$ac_config_files"
-config_headers="$ac_config_headers"
-config_commands="$ac_config_commands"
-
-_ACEOF
-
-cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
-ac_cs_usage="\
-\`$as_me' instantiates files and other configuration actions
-from templates according to the current configuration.  Unless the files
-and actions are specified as TAGs, all are instantiated by default.
-
-Usage: $0 [OPTION]... [TAG]...
-
-  -h, --help       print this help, then exit
-  -V, --version    print version number and configuration settings, then exit
-      --config     print configuration, then exit
-  -q, --quiet, --silent
-                   do not print progress messages
-  -d, --debug      don't remove temporary files
-      --recheck    update $as_me by reconfiguring in the same conditions
-      --file=FILE[:TEMPLATE] 
-                   instantiate the configuration file FILE
-      --header=FILE[:TEMPLATE] 
-                   instantiate the configuration header FILE
-
-Configuration files:
-$config_files
-
-Configuration headers:
-$config_headers
-
-Configuration commands:
-$config_commands
-
-Report bugs to <bug-bash@gnu.org>."
-
-_ACEOF
-cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
-ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
-ac_cs_version="\\
-bash config.status 4.3-alpha
-configured by $0, generated by GNU Autoconf 2.68,
-  with options \\"\$ac_cs_config\\"
-
-Copyright (C) 2010 Free Software Foundation, Inc.
-This config.status script is free software; the Free Software Foundation
-gives unlimited permission to copy, distribute and modify it."
-
-ac_pwd='$ac_pwd'
-srcdir='$srcdir'
-INSTALL='$INSTALL'
-test -n "\$AWK" || AWK=awk
-_ACEOF
-
-cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
-# The default lists apply if the user does not specify any file.
-ac_need_defaults=:
-while test $# != 0
-do
-  case $1 in
-  --*=?*)
-    ac_option=`expr "X$1" : 'X\([^=]*\)='`
-    ac_optarg=`expr "X$1" : 'X[^=]*=\(.*\)'`
-    ac_shift=:
-    ;;
-  --*=)
-    ac_option=`expr "X$1" : 'X\([^=]*\)='`
-    ac_optarg=
-    ac_shift=:
-    ;;
-  *)
-    ac_option=$1
-    ac_optarg=$2
-    ac_shift=shift
-    ;;
-  esac
-
-  case $ac_option in
-  # Handling of the options.
-  -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r)
-    ac_cs_recheck=: ;;
-  --version | --versio | --versi | --vers | --ver | --ve | --v | -V )
-    $as_echo "$ac_cs_version"; exit ;;
-  --config | --confi | --conf | --con | --co | --c )
-    $as_echo "$ac_cs_config"; exit ;;
-  --debug | --debu | --deb | --de | --d | -d )
-    debug=: ;;
-  --file | --fil | --fi | --f )
-    $ac_shift
-    case $ac_optarg in
-    *\'*) ac_optarg=`$as_echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;;
-    '') as_fn_error $? "missing file argument" ;;
-    esac
-    as_fn_append CONFIG_FILES " '$ac_optarg'"
-    ac_need_defaults=false;;
-  --header | --heade | --head | --hea )
-    $ac_shift
-    case $ac_optarg in
-    *\'*) ac_optarg=`$as_echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;;
-    esac
-    as_fn_append CONFIG_HEADERS " '$ac_optarg'"
-    ac_need_defaults=false;;
-  --he | --h)
-    # Conflict between --help and --header
-    as_fn_error $? "ambiguous option: \`$1'
-Try \`$0 --help' for more information.";;
-  --help | --hel | -h )
-    $as_echo "$ac_cs_usage"; exit ;;
-  -q | -quiet | --quiet | --quie | --qui | --qu | --q \
-  | -silent | --silent | --silen | --sile | --sil | --si | --s)
-    ac_cs_silent=: ;;
-
-  # This is an error.
-  -*) as_fn_error $? "unrecognized option: \`$1'
-Try \`$0 --help' for more information." ;;
-
-  *) as_fn_append ac_config_targets " $1"
-     ac_need_defaults=false ;;
-
-  esac
-  shift
-done
-
-ac_configure_extra_args=
-
-if $ac_cs_silent; then
-  exec 6>/dev/null
-  ac_configure_extra_args="$ac_configure_extra_args --silent"
-fi
-
-_ACEOF
-cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
-if \$ac_cs_recheck; then
-  set X '$SHELL' '$0' $ac_configure_args \$ac_configure_extra_args --no-create --no-recursion
-  shift
-  \$as_echo "running CONFIG_SHELL=$SHELL \$*" >&6
-  CONFIG_SHELL='$SHELL'
-  export CONFIG_SHELL
-  exec "\$@"
-fi
-
-_ACEOF
-cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
-exec 5>>config.log
-{
-  echo
-  sed 'h;s/./-/g;s/^.../@%:@@%:@ /;s/...$/ @%:@@%:@/;p;x;p;x' <<_ASBOX
-@%:@@%:@ Running $as_me. @%:@@%:@
-_ASBOX
-  $as_echo "$ac_log"
-} >&5
-
-_ACEOF
-cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
-#
-# INIT-COMMANDS
-#
-# Capture the value of obsolete ALL_LINGUAS because we need it to compute
-    # POFILES, GMOFILES, UPDATEPOFILES, DUMMYPOFILES, CATALOGS. But hide it
-    # from automake.
-    eval 'OBSOLETE_ALL_LINGUAS''="$ALL_LINGUAS"'
-    # Capture the value of LINGUAS because we need it to compute CATALOGS.
-    LINGUAS="${LINGUAS-%UNSET%}"
-   
-
-_ACEOF
-
-cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
-
-# Handling of arguments.
-for ac_config_target in $ac_config_targets
-do
-  case $ac_config_target in
-    "config.h") CONFIG_HEADERS="$CONFIG_HEADERS config.h" ;;
-    "default-1") CONFIG_COMMANDS="$CONFIG_COMMANDS default-1" ;;
-    "Makefile") CONFIG_FILES="$CONFIG_FILES Makefile" ;;
-    "builtins/Makefile") CONFIG_FILES="$CONFIG_FILES builtins/Makefile" ;;
-    "lib/readline/Makefile") CONFIG_FILES="$CONFIG_FILES lib/readline/Makefile" ;;
-    "lib/glob/Makefile") CONFIG_FILES="$CONFIG_FILES lib/glob/Makefile" ;;
-    "lib/intl/Makefile") CONFIG_FILES="$CONFIG_FILES lib/intl/Makefile" ;;
-    "lib/malloc/Makefile") CONFIG_FILES="$CONFIG_FILES lib/malloc/Makefile" ;;
-    "lib/sh/Makefile") CONFIG_FILES="$CONFIG_FILES lib/sh/Makefile" ;;
-    "lib/termcap/Makefile") CONFIG_FILES="$CONFIG_FILES lib/termcap/Makefile" ;;
-    "lib/tilde/Makefile") CONFIG_FILES="$CONFIG_FILES lib/tilde/Makefile" ;;
-    "doc/Makefile") CONFIG_FILES="$CONFIG_FILES doc/Makefile" ;;
-    "support/Makefile") CONFIG_FILES="$CONFIG_FILES support/Makefile" ;;
-    "po/Makefile.in") CONFIG_FILES="$CONFIG_FILES po/Makefile.in" ;;
-    "examples/loadables/Makefile") CONFIG_FILES="$CONFIG_FILES examples/loadables/Makefile" ;;
-    "examples/loadables/perl/Makefile") CONFIG_FILES="$CONFIG_FILES examples/loadables/perl/Makefile" ;;
-    "default") CONFIG_COMMANDS="$CONFIG_COMMANDS default" ;;
-
-  *) as_fn_error $? "invalid argument: \`$ac_config_target'" "$LINENO" 5;;
-  esac
-done
-
-
-# If the user did not use the arguments to specify the items to instantiate,
-# then the envvar interface is used.  Set only those that are not.
-# We use the long form for the default assignment because of an extremely
-# bizarre bug on SunOS 4.1.3.
-if $ac_need_defaults; then
-  test "${CONFIG_FILES+set}" = set || CONFIG_FILES=$config_files
-  test "${CONFIG_HEADERS+set}" = set || CONFIG_HEADERS=$config_headers
-  test "${CONFIG_COMMANDS+set}" = set || CONFIG_COMMANDS=$config_commands
-fi
-
-# Have a temporary directory for convenience.  Make it in the build tree
-# simply because there is no reason against having it here, and in addition,
-# creating and moving files from /tmp can sometimes cause problems.
-# Hook for its removal unless debugging.
-# Note that there is a small window in which the directory will not be cleaned:
-# after its creation but before its name has been assigned to `$tmp'.
-$debug ||
-{
-  tmp= ac_tmp=
-  trap 'exit_status=$?
-  : "${ac_tmp:=$tmp}"
-  { test ! -d "$ac_tmp" || rm -fr "$ac_tmp"; } && exit $exit_status
-' 0
-  trap 'as_fn_exit 1' 1 2 13 15
-}
-# Create a (secure) tmp directory for tmp files.
-
-{
-  tmp=`(umask 077 && mktemp -d "./confXXXXXX") 2>/dev/null` &&
-  test -d "$tmp"
-}  ||
-{
-  tmp=./conf$$-$RANDOM
-  (umask 077 && mkdir "$tmp")
-} || as_fn_error $? "cannot create a temporary directory in ." "$LINENO" 5
-ac_tmp=$tmp
-
-# Set up the scripts for CONFIG_FILES section.
-# No need to generate them if there are no CONFIG_FILES.
-# This happens for instance with `./config.status config.h'.
-if test -n "$CONFIG_FILES"; then
-
-
-ac_cr=`echo X | tr X '\015'`
-# On cygwin, bash can eat \r inside `` if the user requested igncr.
-# But we know of no other shell where ac_cr would be empty at this
-# point, so we can use a bashism as a fallback.
-if test "x$ac_cr" = x; then
-  eval ac_cr=\$\'\\r\'
-fi
-ac_cs_awk_cr=`$AWK 'BEGIN { print "a\rb" }' </dev/null 2>/dev/null`
-if test "$ac_cs_awk_cr" = "a${ac_cr}b"; then
-  ac_cs_awk_cr='\\r'
-else
-  ac_cs_awk_cr=$ac_cr
-fi
-
-echo 'BEGIN {' >"$ac_tmp/subs1.awk" &&
-_ACEOF
-
-
-{
-  echo "cat >conf$$subs.awk <<_ACEOF" &&
-  echo "$ac_subst_vars" | sed 's/.*/&!$&$ac_delim/' &&
-  echo "_ACEOF"
-} >conf$$subs.sh ||
-  as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5
-ac_delim_num=`echo "$ac_subst_vars" | grep -c '^'`
-ac_delim='%!_!# '
-for ac_last_try in false false false false false :; do
-  . ./conf$$subs.sh ||
-    as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5
-
-  ac_delim_n=`sed -n "s/.*$ac_delim\$/X/p" conf$$subs.awk | grep -c X`
-  if test $ac_delim_n = $ac_delim_num; then
-    break
-  elif $ac_last_try; then
-    as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5
-  else
-    ac_delim="$ac_delim!$ac_delim _$ac_delim!! "
-  fi
-done
-rm -f conf$$subs.sh
-
-cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
-cat >>"\$ac_tmp/subs1.awk" <<\\_ACAWK &&
-_ACEOF
-sed -n '
-h
-s/^/S["/; s/!.*/"]=/
-p
-g
-s/^[^!]*!//
-:repl
-t repl
-s/'"$ac_delim"'$//
-t delim
-:nl
-h
-s/\(.\{148\}\)..*/\1/
-t more1
-s/["\\]/\\&/g; s/^/"/; s/$/\\n"\\/
-p
-n
-b repl
-:more1
-s/["\\]/\\&/g; s/^/"/; s/$/"\\/
-p
-g
-s/.\{148\}//
-t nl
-:delim
-h
-s/\(.\{148\}\)..*/\1/
-t more2
-s/["\\]/\\&/g; s/^/"/; s/$/"/
-p
-b
-:more2
-s/["\\]/\\&/g; s/^/"/; s/$/"\\/
-p
-g
-s/.\{148\}//
-t delim
-' <conf$$subs.awk | sed '
-/^[^""]/{
-  N
-  s/\n//
-}
-' >>$CONFIG_STATUS || ac_write_fail=1
-rm -f conf$$subs.awk
-cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
-_ACAWK
-cat >>"\$ac_tmp/subs1.awk" <<_ACAWK &&
-  for (key in S) S_is_set[key] = 1
-  FS = "\a"
-
-}
-{
-  line = $ 0
-  nfields = split(line, field, "@")
-  substed = 0
-  len = length(field[1])
-  for (i = 2; i < nfields; i++) {
-    key = field[i]
-    keylen = length(key)
-    if (S_is_set[key]) {
-      value = S[key]
-      line = substr(line, 1, len) "" value "" substr(line, len + keylen + 3)
-      len += length(value) + length(field[++i])
-      substed = 1
-    } else
-      len += 1 + keylen
-  }
-
-  print line
-}
-
-_ACAWK
-_ACEOF
-cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
-if sed "s/$ac_cr//" < /dev/null > /dev/null 2>&1; then
-  sed "s/$ac_cr\$//; s/$ac_cr/$ac_cs_awk_cr/g"
-else
-  cat
-fi < "$ac_tmp/subs1.awk" > "$ac_tmp/subs.awk" \
-  || as_fn_error $? "could not setup config files machinery" "$LINENO" 5
-_ACEOF
-
-# VPATH may cause trouble with some makes, so we remove sole $(srcdir),
-# ${srcdir} and @srcdir@ entries from VPATH if srcdir is ".", strip leading and
-# trailing colons and then remove the whole line if VPATH becomes empty
-# (actually we leave an empty line to preserve line numbers).
-if test "x$srcdir" = x.; then
-  ac_vpsub='/^[         ]*VPATH[        ]*=[    ]*/{
-h
-s///
-s/^/:/
-s/[     ]*$/:/
-s/:\$(srcdir):/:/g
-s/:\${srcdir}:/:/g
-s/:@srcdir@:/:/g
-s/^:*//
-s/:*$//
-x
-s/\(=[  ]*\).*/\1/
-G
-s/\n//
-s/^[^=]*=[      ]*$//
-}'
-fi
-
-cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
-fi # test -n "$CONFIG_FILES"
-
-# Set up the scripts for CONFIG_HEADERS section.
-# No need to generate them if there are no CONFIG_HEADERS.
-# This happens for instance with `./config.status Makefile'.
-if test -n "$CONFIG_HEADERS"; then
-cat >"$ac_tmp/defines.awk" <<\_ACAWK ||
-BEGIN {
-_ACEOF
-
-# Transform confdefs.h into an awk script `defines.awk', embedded as
-# here-document in config.status, that substitutes the proper values into
-# config.h.in to produce config.h.
-
-# Create a delimiter string that does not exist in confdefs.h, to ease
-# handling of long lines.
-ac_delim='%!_!# '
-for ac_last_try in false false :; do
-  ac_tt=`sed -n "/$ac_delim/p" confdefs.h`
-  if test -z "$ac_tt"; then
-    break
-  elif $ac_last_try; then
-    as_fn_error $? "could not make $CONFIG_HEADERS" "$LINENO" 5
-  else
-    ac_delim="$ac_delim!$ac_delim _$ac_delim!! "
-  fi
-done
-
-# For the awk script, D is an array of macro values keyed by name,
-# likewise P contains macro parameters if any.  Preserve backslash
-# newline sequences.
-
-ac_word_re=[_$as_cr_Letters][_$as_cr_alnum]*
-sed -n '
-s/.\{148\}/&'"$ac_delim"'/g
-t rset
-:rset
-s/^[    ]*#[    ]*define[       ][      ]*/ /
-t def
-d
-:def
-s/\\$//
-t bsnl
-s/["\\]/\\&/g
-s/^ \('"$ac_word_re"'\)\(([^()]*)\)[    ]*\(.*\)/P["\1"]="\2"\
-D["\1"]=" \3"/p
-s/^ \('"$ac_word_re"'\)[        ]*\(.*\)/D["\1"]=" \2"/p
-d
-:bsnl
-s/["\\]/\\&/g
-s/^ \('"$ac_word_re"'\)\(([^()]*)\)[    ]*\(.*\)/P["\1"]="\2"\
-D["\1"]=" \3\\\\\\n"\\/p
-t cont
-s/^ \('"$ac_word_re"'\)[        ]*\(.*\)/D["\1"]=" \2\\\\\\n"\\/p
-t cont
-d
-:cont
-n
-s/.\{148\}/&'"$ac_delim"'/g
-t clear
-:clear
-s/\\$//
-t bsnlc
-s/["\\]/\\&/g; s/^/"/; s/$/"/p
-d
-:bsnlc
-s/["\\]/\\&/g; s/^/"/; s/$/\\\\\\n"\\/p
-b cont
-' <confdefs.h | sed '
-s/'"$ac_delim"'/"\\\
-"/g' >>$CONFIG_STATUS || ac_write_fail=1
-
-cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
-  for (key in D) D_is_set[key] = 1
-  FS = "\a"
-}
-/^[\t ]*#[\t ]*(define|undef)[\t ]+$ac_word_re([\t (]|\$)/ {
-  line = \$ 0
-  split(line, arg, " ")
-  if (arg[1] == "#") {
-    defundef = arg[2]
-    mac1 = arg[3]
-  } else {
-    defundef = substr(arg[1], 2)
-    mac1 = arg[2]
-  }
-  split(mac1, mac2, "(") #)
-  macro = mac2[1]
-  prefix = substr(line, 1, index(line, defundef) - 1)
-  if (D_is_set[macro]) {
-    # Preserve the white space surrounding the "#".
-    print prefix "define", macro P[macro] D[macro]
-    next
-  } else {
-    # Replace #undef with comments.  This is necessary, for example,
-    # in the case of _POSIX_SOURCE, which is predefined and required
-    # on some systems where configure will not decide to define it.
-    if (defundef == "undef") {
-      print "/*", prefix defundef, macro, "*/"
-      next
-    }
-  }
-}
-{ print }
-_ACAWK
-_ACEOF
-cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
-  as_fn_error $? "could not setup config headers machinery" "$LINENO" 5
-fi # test -n "$CONFIG_HEADERS"
-
-
-eval set X "  :F $CONFIG_FILES  :H $CONFIG_HEADERS    :C $CONFIG_COMMANDS"
-shift
-for ac_tag
-do
-  case $ac_tag in
-  :[FHLC]) ac_mode=$ac_tag; continue;;
-  esac
-  case $ac_mode$ac_tag in
-  :[FHL]*:*);;
-  :L* | :C*:*) as_fn_error $? "invalid tag \`$ac_tag'" "$LINENO" 5;;
-  :[FH]-) ac_tag=-:-;;
-  :[FH]*) ac_tag=$ac_tag:$ac_tag.in;;
-  esac
-  ac_save_IFS=$IFS
-  IFS=:
-  set x $ac_tag
-  IFS=$ac_save_IFS
-  shift
-  ac_file=$1
-  shift
-
-  case $ac_mode in
-  :L) ac_source=$1;;
-  :[FH])
-    ac_file_inputs=
-    for ac_f
-    do
-      case $ac_f in
-      -) ac_f="$ac_tmp/stdin";;
-      *) # Look for the file first in the build tree, then in the source tree
-        # (if the path is not absolute).  The absolute path cannot be DOS-style,
-        # because $ac_f cannot contain `:'.
-        test -f "$ac_f" ||
-          case $ac_f in
-          [\\/$]*) false;;
-          *) test -f "$srcdir/$ac_f" && ac_f="$srcdir/$ac_f";;
-          esac ||
-          as_fn_error 1 "cannot find input file: \`$ac_f'" "$LINENO" 5;;
-      esac
-      case $ac_f in *\'*) ac_f=`$as_echo "$ac_f" | sed "s/'/'\\\\\\\\''/g"`;; esac
-      as_fn_append ac_file_inputs " '$ac_f'"
-    done
-
-    # Let's still pretend it is `configure' which instantiates (i.e., don't
-    # use $as_me), people would be surprised to read:
-    #    /* config.h.  Generated by config.status.  */
-    configure_input='Generated from '`
-         $as_echo "$*" | sed 's|^[^:]*/||;s|:[^:]*/|, |g'
-       `' by configure.'
-    if test x"$ac_file" != x-; then
-      configure_input="$ac_file.  $configure_input"
-      { $as_echo "$as_me:${as_lineno-$LINENO}: creating $ac_file" >&5
-$as_echo "$as_me: creating $ac_file" >&6;}
-    fi
-    # Neutralize special characters interpreted by sed in replacement strings.
-    case $configure_input in #(
-    *\&* | *\|* | *\\* )
-       ac_sed_conf_input=`$as_echo "$configure_input" |
-       sed 's/[\\\\&|]/\\\\&/g'`;; #(
-    *) ac_sed_conf_input=$configure_input;;
-    esac
-
-    case $ac_tag in
-    *:-:* | *:-) cat >"$ac_tmp/stdin" \
-      || as_fn_error $? "could not create $ac_file" "$LINENO" 5 ;;
-    esac
-    ;;
-  esac
-
-  ac_dir=`$as_dirname -- "$ac_file" ||
-$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
-        X"$ac_file" : 'X\(//\)[^/]' \| \
-        X"$ac_file" : 'X\(//\)$' \| \
-        X"$ac_file" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X"$ac_file" |
-    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
-           s//\1/
-           q
-         }
-         /^X\(\/\/\)[^/].*/{
-           s//\1/
-           q
-         }
-         /^X\(\/\/\)$/{
-           s//\1/
-           q
-         }
-         /^X\(\/\).*/{
-           s//\1/
-           q
-         }
-         s/.*/./; q'`
-  as_dir="$ac_dir"; as_fn_mkdir_p
-  ac_builddir=.
-
-case "$ac_dir" in
-.) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;;
-*)
-  ac_dir_suffix=/`$as_echo "$ac_dir" | sed 's|^\.[\\/]||'`
-  # A ".." for each directory in $ac_dir_suffix.
-  ac_top_builddir_sub=`$as_echo "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'`
-  case $ac_top_builddir_sub in
-  "") ac_top_builddir_sub=. ac_top_build_prefix= ;;
-  *)  ac_top_build_prefix=$ac_top_builddir_sub/ ;;
-  esac ;;
-esac
-ac_abs_top_builddir=$ac_pwd
-ac_abs_builddir=$ac_pwd$ac_dir_suffix
-# for backward compatibility:
-ac_top_builddir=$ac_top_build_prefix
-
-case $srcdir in
-  .)  # We are building in place.
-    ac_srcdir=.
-    ac_top_srcdir=$ac_top_builddir_sub
-    ac_abs_top_srcdir=$ac_pwd ;;
-  [\\/]* | ?:[\\/]* )  # Absolute name.
-    ac_srcdir=$srcdir$ac_dir_suffix;
-    ac_top_srcdir=$srcdir
-    ac_abs_top_srcdir=$srcdir ;;
-  *) # Relative name.
-    ac_srcdir=$ac_top_build_prefix$srcdir$ac_dir_suffix
-    ac_top_srcdir=$ac_top_build_prefix$srcdir
-    ac_abs_top_srcdir=$ac_pwd/$srcdir ;;
-esac
-ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix
-
-
-  case $ac_mode in
-  :F)
-  #
-  # CONFIG_FILE
-  #
-
-  case $INSTALL in
-  [\\/$]* | ?:[\\/]* ) ac_INSTALL=$INSTALL ;;
-  *) ac_INSTALL=$ac_top_build_prefix$INSTALL ;;
-  esac
-_ACEOF
-
-cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
-# If the template does not know about datarootdir, expand it.
-# FIXME: This hack should be removed a few years after 2.60.
-ac_datarootdir_hack=; ac_datarootdir_seen=
-ac_sed_dataroot='
-/datarootdir/ {
-  p
-  q
-}
-/@datadir@/p
-/@docdir@/p
-/@infodir@/p
-/@localedir@/p
-/@mandir@/p'
-case `eval "sed -n \"\$ac_sed_dataroot\" $ac_file_inputs"` in
-*datarootdir*) ac_datarootdir_seen=yes;;
-*@datadir@*|*@docdir@*|*@infodir@*|*@localedir@*|*@mandir@*)
-  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&5
-$as_echo "$as_me: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&2;}
-_ACEOF
-cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
-  ac_datarootdir_hack='
-  s&@datadir@&$datadir&g
-  s&@docdir@&$docdir&g
-  s&@infodir@&$infodir&g
-  s&@localedir@&$localedir&g
-  s&@mandir@&$mandir&g
-  s&\\\${datarootdir}&$datarootdir&g' ;;
-esac
-_ACEOF
-
-# Neutralize VPATH when `$srcdir' = `.'.
-# Shell code in configure.ac might set extrasub.
-# FIXME: do we really want to maintain this feature?
-cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
-ac_sed_extra="$ac_vpsub
-$extrasub
-_ACEOF
-cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
-:t
-/@[a-zA-Z_][a-zA-Z_0-9]*@/!b
-s|@configure_input@|$ac_sed_conf_input|;t t
-s&@top_builddir@&$ac_top_builddir_sub&;t t
-s&@top_build_prefix@&$ac_top_build_prefix&;t t
-s&@srcdir@&$ac_srcdir&;t t
-s&@abs_srcdir@&$ac_abs_srcdir&;t t
-s&@top_srcdir@&$ac_top_srcdir&;t t
-s&@abs_top_srcdir@&$ac_abs_top_srcdir&;t t
-s&@builddir@&$ac_builddir&;t t
-s&@abs_builddir@&$ac_abs_builddir&;t t
-s&@abs_top_builddir@&$ac_abs_top_builddir&;t t
-s&@INSTALL@&$ac_INSTALL&;t t
-$ac_datarootdir_hack
-"
-eval sed \"\$ac_sed_extra\" "$ac_file_inputs" | $AWK -f "$ac_tmp/subs.awk" \
-  >$ac_tmp/out || as_fn_error $? "could not create $ac_file" "$LINENO" 5
-
-test -z "$ac_datarootdir_hack$ac_datarootdir_seen" &&
-  { ac_out=`sed -n '/\${datarootdir}/p' "$ac_tmp/out"`; test -n "$ac_out"; } &&
-  { ac_out=`sed -n '/^[         ]*datarootdir[  ]*:*=/p' \
-      "$ac_tmp/out"`; test -z "$ac_out"; } &&
-  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file contains a reference to the variable \`datarootdir'
-which seems to be undefined.  Please make sure it is defined" >&5
-$as_echo "$as_me: WARNING: $ac_file contains a reference to the variable \`datarootdir'
-which seems to be undefined.  Please make sure it is defined" >&2;}
-
-  rm -f "$ac_tmp/stdin"
-  case $ac_file in
-  -) cat "$ac_tmp/out" && rm -f "$ac_tmp/out";;
-  *) rm -f "$ac_file" && mv "$ac_tmp/out" "$ac_file";;
-  esac \
-  || as_fn_error $? "could not create $ac_file" "$LINENO" 5
- ;;
-  :H)
-  #
-  # CONFIG_HEADER
-  #
-  if test x"$ac_file" != x-; then
-    {
-      $as_echo "/* $configure_input  */" \
-      && eval '$AWK -f "$ac_tmp/defines.awk"' "$ac_file_inputs"
-    } >"$ac_tmp/config.h" \
-      || as_fn_error $? "could not create $ac_file" "$LINENO" 5
-    if diff "$ac_file" "$ac_tmp/config.h" >/dev/null 2>&1; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: $ac_file is unchanged" >&5
-$as_echo "$as_me: $ac_file is unchanged" >&6;}
-    else
-      rm -f "$ac_file"
-      mv "$ac_tmp/config.h" "$ac_file" \
-       || as_fn_error $? "could not create $ac_file" "$LINENO" 5
-    fi
-  else
-    $as_echo "/* $configure_input  */" \
-      && eval '$AWK -f "$ac_tmp/defines.awk"' "$ac_file_inputs" \
-      || as_fn_error $? "could not create -" "$LINENO" 5
-  fi
- ;;
-  
-  :C)  { $as_echo "$as_me:${as_lineno-$LINENO}: executing $ac_file commands" >&5
-$as_echo "$as_me: executing $ac_file commands" >&6;}
- ;;
-  esac
-
-
-  case $ac_file$ac_mode in
-    "default-1":C) 
-    for ac_file in $CONFIG_FILES; do
-      # Support "outfile[:infile[:infile...]]"
-      case "$ac_file" in
-        *:*) ac_file=`echo "$ac_file"|sed 's%:.*%%'` ;;
-      esac
-      # PO directories have a Makefile.in generated from Makefile.in.in.
-      case "$ac_file" in */Makefile.in)
-        # Adjust a relative srcdir.
-        ac_dir=`echo "$ac_file"|sed 's%/[^/][^/]*$%%'`
-        ac_dir_suffix="/`echo "$ac_dir"|sed 's%^\./%%'`"
-        ac_dots=`echo "$ac_dir_suffix"|sed 's%/[^/]*%../%g'`
-        # In autoconf-2.13 it is called $ac_given_srcdir.
-        # In autoconf-2.50 it is called $srcdir.
-        test -n "$ac_given_srcdir" || ac_given_srcdir="$srcdir"
-        case "$ac_given_srcdir" in
-          .)  top_srcdir=`echo $ac_dots|sed 's%/$%%'` ;;
-          /*) top_srcdir="$ac_given_srcdir" ;;
-          *)  top_srcdir="$ac_dots$ac_given_srcdir" ;;
-        esac
-        if test -f "$ac_given_srcdir/$ac_dir/POTFILES.in"; then
-          rm -f "$ac_dir/POTFILES"
-          test -n "$as_me" && echo "$as_me: creating $ac_dir/POTFILES" || echo "creating $ac_dir/POTFILES"
-          cat "$ac_given_srcdir/$ac_dir/POTFILES.in" | sed -e "/^#/d" -e "/^[  ]*\$/d" -e "s,.*,     $top_srcdir/& \\\\," | sed -e "\$s/\(.*\) \\\\/\1/" > "$ac_dir/POTFILES"
-          POMAKEFILEDEPS="POTFILES.in"
-          # ALL_LINGUAS, POFILES, GMOFILES, UPDATEPOFILES, DUMMYPOFILES depend
-          # on $ac_dir but don't depend on user-specified configuration
-          # parameters.
-          if test -f "$ac_given_srcdir/$ac_dir/LINGUAS"; then
-            # The LINGUAS file contains the set of available languages.
-            if test -n "$OBSOLETE_ALL_LINGUAS"; then
-              test -n "$as_me" && echo "$as_me: setting ALL_LINGUAS in configure.in is obsolete" || echo "setting ALL_LINGUAS in configure.in is obsolete"
-            fi
-            ALL_LINGUAS_=`sed -e "/^#/d" "$ac_given_srcdir/$ac_dir/LINGUAS"`
-            # Hide the ALL_LINGUAS assigment from automake.
-            eval 'ALL_LINGUAS''=$ALL_LINGUAS_'
-            POMAKEFILEDEPS="$POMAKEFILEDEPS LINGUAS"
-          else
-            # The set of available languages was given in configure.in.
-            eval 'ALL_LINGUAS''=$OBSOLETE_ALL_LINGUAS'
-          fi
-          case "$ac_given_srcdir" in
-            .) srcdirpre= ;;
-            *) srcdirpre='$(srcdir)/' ;;
-          esac
-          POFILES=
-          GMOFILES=
-          UPDATEPOFILES=
-          DUMMYPOFILES=
-          for lang in $ALL_LINGUAS; do
-            POFILES="$POFILES $srcdirpre$lang.po"
-            GMOFILES="$GMOFILES $srcdirpre$lang.gmo"
-            UPDATEPOFILES="$UPDATEPOFILES $lang.po-update"
-            DUMMYPOFILES="$DUMMYPOFILES $lang.nop"
-          done
-          # CATALOGS depends on both $ac_dir and the user's LINGUAS
-          # environment variable.
-          INST_LINGUAS=
-          if test -n "$ALL_LINGUAS"; then
-            for presentlang in $ALL_LINGUAS; do
-              useit=no
-              if test "%UNSET%" != "$LINGUAS"; then
-                desiredlanguages="$LINGUAS"
-              else
-                desiredlanguages="$ALL_LINGUAS"
-              fi
-              for desiredlang in $desiredlanguages; do
-                # Use the presentlang catalog if desiredlang is
-                #   a. equal to presentlang, or
-                #   b. a variant of presentlang (because in this case,
-                #      presentlang can be used as a fallback for messages
-                #      which are not translated in the desiredlang catalog).
-                case "$desiredlang" in
-                  "$presentlang"*) useit=yes;;
-                esac
-              done
-              if test $useit = yes; then
-                INST_LINGUAS="$INST_LINGUAS $presentlang"
-              fi
-            done
-          fi
-          CATALOGS=
-          if test -n "$INST_LINGUAS"; then
-            for lang in $INST_LINGUAS; do
-              CATALOGS="$CATALOGS $lang.gmo"
-            done
-          fi
-          test -n "$as_me" && echo "$as_me: creating $ac_dir/Makefile" || echo "creating $ac_dir/Makefile"
-          sed -e "/^POTFILES =/r $ac_dir/POTFILES" -e "/^# Makevars/r $ac_given_srcdir/$ac_dir/Makevars" -e "s|@POFILES@|$POFILES|g" -e "s|@GMOFILES@|$GMOFILES|g" -e "s|@UPDATEPOFILES@|$UPDATEPOFILES|g" -e "s|@DUMMYPOFILES@|$DUMMYPOFILES|g" -e "s|@CATALOGS@|$CATALOGS|g" -e "s|@POMAKEFILEDEPS@|$POMAKEFILEDEPS|g" "$ac_dir/Makefile.in" > "$ac_dir/Makefile"
-          for f in "$ac_given_srcdir/$ac_dir"/Rules-*; do
-            if test -f "$f"; then
-              case "$f" in
-                *.orig | *.bak | *~) ;;
-                *) cat "$f" >> "$ac_dir/Makefile" ;;
-              esac
-            fi
-          done
-        fi
-        ;;
-      esac
-    done ;;
-    "default":C) 
-# Makefile uses this timestamp file to record whether config.h is up to date.
-echo timestamp > stamp-h
- ;;
-
-  esac
-done # for ac_tag
-
-
-as_fn_exit 0
-_ACEOF
-ac_clean_files=$ac_clean_files_save
-
-test $ac_write_fail = 0 ||
-  as_fn_error $? "write failure creating $CONFIG_STATUS" "$LINENO" 5
-
-
-# configure is writing to config.log, and then calls config.status.
-# config.status does its own redirection, appending to config.log.
-# Unfortunately, on DOS this fails, as config.log is still kept open
-# by configure, so config.status won't be able to write to it; its
-# output is simply discarded.  So we exec the FD to /dev/null,
-# effectively closing config.log, so it can be properly (re)opened and
-# appended to by config.status.  When coming back to configure, we
-# need to make the FD available again.
-if test "$no_create" != yes; then
-  ac_cs_success=:
-  ac_config_status_args=
-  test "$silent" = yes &&
-    ac_config_status_args="$ac_config_status_args --quiet"
-  exec 5>/dev/null
-  $SHELL $CONFIG_STATUS $ac_config_status_args || ac_cs_success=false
-  exec 5>>config.log
-  # Use ||, not &&, to avoid exiting from the if with $? = 1, which
-  # would make configure fail if this is the last instruction.
-  $ac_cs_success || as_fn_exit 1
-fi
-if test -n "$ac_unrecognized_opts" && test "$enable_option_checking" != no; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: unrecognized options: $ac_unrecognized_opts" >&5
-$as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2;}
-fi
-
diff --git a/autom4te.cache/requests b/autom4te.cache/requests
deleted file mode 100644 (file)
index a690d74..0000000
+++ /dev/null
@@ -1,323 +0,0 @@
-# This file was generated.
-# It contains the lists of macros which have been traced.
-# It can be safely removed.
-
-@request = (
-             bless( [
-                      '0',
-                      1,
-                      [
-                        '/opt/local/share/autoconf'
-                      ],
-                      [
-                        '/opt/local/share/autoconf/autoconf/autoconf.m4f',
-                        'aclocal.m4',
-                        'configure.in'
-                      ],
-                      {
-                        'AM_PROG_F77_C_O' => 1,
-                        '_LT_AC_TAGCONFIG' => 1,
-                        'm4_pattern_forbid' => 1,
-                        'AC_INIT' => 1,
-                        'AC_CANONICAL_TARGET' => 1,
-                        '_AM_COND_IF' => 1,
-                        'AC_CONFIG_LIBOBJ_DIR' => 1,
-                        'AC_SUBST' => 1,
-                        'AC_CANONICAL_HOST' => 1,
-                        'AC_FC_SRCEXT' => 1,
-                        'AC_PROG_LIBTOOL' => 1,
-                        'AM_INIT_AUTOMAKE' => 1,
-                        'AC_CONFIG_SUBDIRS' => 1,
-                        'AM_PATH_GUILE' => 1,
-                        'AM_AUTOMAKE_VERSION' => 1,
-                        'LT_CONFIG_LTDL_DIR' => 1,
-                        'AC_CONFIG_LINKS' => 1,
-                        'AC_REQUIRE_AUX_FILE' => 1,
-                        'LT_SUPPORTED_TAG' => 1,
-                        'm4_sinclude' => 1,
-                        'AM_MAINTAINER_MODE' => 1,
-                        'AM_NLS' => 1,
-                        'AM_GNU_GETTEXT_INTL_SUBDIR' => 1,
-                        '_m4_warn' => 1,
-                        'AM_MAKEFILE_INCLUDE' => 1,
-                        'AM_PROG_CXX_C_O' => 1,
-                        '_AM_MAKEFILE_INCLUDE' => 1,
-                        '_AM_COND_ENDIF' => 1,
-                        'AM_ENABLE_MULTILIB' => 1,
-                        'AM_SILENT_RULES' => 1,
-                        'AM_PROG_MOC' => 1,
-                        'AC_CONFIG_FILES' => 1,
-                        'LT_INIT' => 1,
-                        'include' => 1,
-                        'AM_GNU_GETTEXT' => 1,
-                        'AM_PROG_AR' => 1,
-                        'AC_LIBSOURCE' => 1,
-                        'AC_CANONICAL_BUILD' => 1,
-                        'AM_PROG_FC_C_O' => 1,
-                        'AC_FC_FREEFORM' => 1,
-                        'AH_OUTPUT' => 1,
-                        'AC_CONFIG_AUX_DIR' => 1,
-                        '_AM_SUBST_NOTMAKE' => 1,
-                        'm4_pattern_allow' => 1,
-                        'AM_PROG_CC_C_O' => 1,
-                        'sinclude' => 1,
-                        'AM_CONDITIONAL' => 1,
-                        'AC_CANONICAL_SYSTEM' => 1,
-                        'AM_XGETTEXT_OPTION' => 1,
-                        'AC_CONFIG_HEADERS' => 1,
-                        'AC_DEFINE_TRACE_LITERAL' => 1,
-                        'AM_POT_TOOLS' => 1,
-                        'm4_include' => 1,
-                        '_AM_COND_ELSE' => 1,
-                        'AC_SUBST_TRACE' => 1
-                      }
-                    ], 'Autom4te::Request' ),
-             bless( [
-                      '1',
-                      1,
-                      [
-                        '/sw/share/autoconf'
-                      ],
-                      [
-                        '/sw/share/autoconf/autoconf/autoconf.m4f',
-                        'aclocal.m4',
-                        'configure.in'
-                      ],
-                      {
-                        '_LT_AC_TAGCONFIG' => 1,
-                        'AM_PROG_F77_C_O' => 1,
-                        'AC_INIT' => 1,
-                        'm4_pattern_forbid' => 1,
-                        '_AM_COND_IF' => 1,
-                        'AC_CANONICAL_TARGET' => 1,
-                        'AC_SUBST' => 1,
-                        'AC_CONFIG_LIBOBJ_DIR' => 1,
-                        'AC_FC_SRCEXT' => 1,
-                        'AC_CANONICAL_HOST' => 1,
-                        'AC_PROG_LIBTOOL' => 1,
-                        'AM_INIT_AUTOMAKE' => 1,
-                        'AM_PATH_GUILE' => 1,
-                        'AC_CONFIG_SUBDIRS' => 1,
-                        'AM_AUTOMAKE_VERSION' => 1,
-                        'LT_CONFIG_LTDL_DIR' => 1,
-                        'AC_REQUIRE_AUX_FILE' => 1,
-                        'AC_CONFIG_LINKS' => 1,
-                        'm4_sinclude' => 1,
-                        'LT_SUPPORTED_TAG' => 1,
-                        'AM_MAINTAINER_MODE' => 1,
-                        'AM_NLS' => 1,
-                        'AM_GNU_GETTEXT_INTL_SUBDIR' => 1,
-                        'AM_MAKEFILE_INCLUDE' => 1,
-                        '_m4_warn' => 1,
-                        'AM_PROG_CXX_C_O' => 1,
-                        '_AM_COND_ENDIF' => 1,
-                        '_AM_MAKEFILE_INCLUDE' => 1,
-                        'AM_ENABLE_MULTILIB' => 1,
-                        'AM_SILENT_RULES' => 1,
-                        'AM_PROG_MOC' => 1,
-                        'AC_CONFIG_FILES' => 1,
-                        'include' => 1,
-                        'LT_INIT' => 1,
-                        'AM_PROG_AR' => 1,
-                        'AM_GNU_GETTEXT' => 1,
-                        'AC_LIBSOURCE' => 1,
-                        'AM_PROG_FC_C_O' => 1,
-                        'AC_CANONICAL_BUILD' => 1,
-                        'AC_FC_FREEFORM' => 1,
-                        'AH_OUTPUT' => 1,
-                        '_AM_SUBST_NOTMAKE' => 1,
-                        'AC_CONFIG_AUX_DIR' => 1,
-                        'sinclude' => 1,
-                        'AM_PROG_CC_C_O' => 1,
-                        'm4_pattern_allow' => 1,
-                        'AM_XGETTEXT_OPTION' => 1,
-                        'AC_CANONICAL_SYSTEM' => 1,
-                        'AM_CONDITIONAL' => 1,
-                        'AC_CONFIG_HEADERS' => 1,
-                        'AC_DEFINE_TRACE_LITERAL' => 1,
-                        'AM_POT_TOOLS' => 1,
-                        'm4_include' => 1,
-                        '_AM_COND_ELSE' => 1,
-                        'AC_SUBST_TRACE' => 1
-                      }
-                    ], 'Autom4te::Request' ),
-             bless( [
-                      '2',
-                      1,
-                      [
-                        '/usr/share/autoconf'
-                      ],
-                      [
-                        '/usr/share/autoconf/autoconf/autoconf.m4f',
-                        'aclocal.m4',
-                        'configure.in'
-                      ],
-                      {
-                        'm4_pattern_forbid' => 1,
-                        'AC_CONFIG_LIBOBJ_DIR' => 1,
-                        'AC_TYPE_OFF_T' => 1,
-                        'AC_C_VOLATILE' => 1,
-                        'AC_FUNC_CLOSEDIR_VOID' => 1,
-                        'AC_REPLACE_FNMATCH' => 1,
-                        'AC_PROG_LIBTOOL' => 1,
-                        'AC_FUNC_STAT' => 1,
-                        'AC_HEADER_TIME' => 1,
-                        'AC_FUNC_WAIT3' => 1,
-                        'AM_AUTOMAKE_VERSION' => 1,
-                        'AC_STRUCT_TM' => 1,
-                        'AC_FUNC_LSTAT' => 1,
-                        'AC_TYPE_MODE_T' => 1,
-                        'AC_FUNC_GETMNTENT' => 1,
-                        'AC_FUNC_STRTOD' => 1,
-                        'AC_CHECK_HEADERS' => 1,
-                        'AC_FUNC_STRNLEN' => 1,
-                        'm4_sinclude' => 1,
-                        'AC_PROG_CXX' => 1,
-                        'AC_PATH_X' => 1,
-                        'AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK' => 1,
-                        'AC_PROG_AWK' => 1,
-                        '_m4_warn' => 1,
-                        'AC_HEADER_STDC' => 1,
-                        'AC_HEADER_MAJOR' => 1,
-                        'AC_FUNC_ERROR_AT_LINE' => 1,
-                        'AC_PROG_GCC_TRADITIONAL' => 1,
-                        'AC_LIBSOURCE' => 1,
-                        'AC_FUNC_MBRTOWC' => 1,
-                        'AC_STRUCT_ST_BLOCKS' => 1,
-                        'AC_TYPE_SIGNAL' => 1,
-                        'AC_TYPE_UID_T' => 1,
-                        'AC_CONFIG_AUX_DIR' => 1,
-                        'AC_PROG_MAKE_SET' => 1,
-                        'sinclude' => 1,
-                        'm4_pattern_allow' => 1,
-                        'AC_DEFINE_TRACE_LITERAL' => 1,
-                        'AC_FUNC_STRERROR_R' => 1,
-                        'AC_PROG_CC' => 1,
-                        'AC_FUNC_FORK' => 1,
-                        'AC_DECL_SYS_SIGLIST' => 1,
-                        'AC_FUNC_VPRINTF' => 1,
-                        'AC_FUNC_STRCOLL' => 1,
-                        'AC_PROG_YACC' => 1,
-                        'AC_INIT' => 1,
-                        'AC_STRUCT_TIMEZONE' => 1,
-                        'AC_FUNC_CHOWN' => 1,
-                        'AC_SUBST' => 1,
-                        'AC_FUNC_ALLOCA' => 1,
-                        'AC_CANONICAL_HOST' => 1,
-                        'AC_FUNC_GETPGRP' => 1,
-                        'AC_PROG_RANLIB' => 1,
-                        'AM_INIT_AUTOMAKE' => 1,
-                        'AC_FUNC_SETPGRP' => 1,
-                        'AC_CONFIG_SUBDIRS' => 1,
-                        'AC_FUNC_MMAP' => 1,
-                        'AC_FUNC_REALLOC' => 1,
-                        'AC_TYPE_SIZE_T' => 1,
-                        'AC_CONFIG_LINKS' => 1,
-                        'AC_CHECK_TYPES' => 1,
-                        'AC_CHECK_MEMBERS' => 1,
-                        'AM_MAINTAINER_MODE' => 1,
-                        'AC_FUNC_UTIME_NULL' => 1,
-                        'AC_FUNC_SELECT_ARGTYPES' => 1,
-                        'AC_FUNC_STRFTIME' => 1,
-                        'AC_HEADER_STAT' => 1,
-                        'AC_C_INLINE' => 1,
-                        'AC_PROG_CPP' => 1,
-                        'AC_TYPE_PID_T' => 1,
-                        'AC_C_CONST' => 1,
-                        'AC_PROG_LEX' => 1,
-                        'AC_CONFIG_FILES' => 1,
-                        'include' => 1,
-                        'AC_FUNC_SETVBUF_REVERSED' => 1,
-                        'AC_PROG_INSTALL' => 1,
-                        'AM_GNU_GETTEXT' => 1,
-                        'AC_FUNC_OBSTACK' => 1,
-                        'AC_CHECK_LIB' => 1,
-                        'AC_FUNC_MALLOC' => 1,
-                        'AC_FUNC_GETGROUPS' => 1,
-                        'AC_FUNC_GETLOADAVG' => 1,
-                        'AH_OUTPUT' => 1,
-                        'AC_FUNC_FSEEKO' => 1,
-                        'AM_PROG_CC_C_O' => 1,
-                        'AM_CONDITIONAL' => 1,
-                        'AC_CANONICAL_SYSTEM' => 1,
-                        'AC_FUNC_MKTIME' => 1,
-                        'AC_CONFIG_HEADERS' => 1,
-                        'AC_HEADER_SYS_WAIT' => 1,
-                        'AC_FUNC_MEMCMP' => 1,
-                        'AC_PROG_LN_S' => 1,
-                        'm4_include' => 1,
-                        'AC_HEADER_DIRENT' => 1,
-                        'AC_CHECK_FUNCS' => 1
-                      }
-                    ], 'Autom4te::Request' ),
-             bless( [
-                      '3',
-                      1,
-                      [
-                        '/sw/share/autoconf'
-                      ],
-                      [
-                        '/sw/share/autoconf/autoconf/autoconf.m4f',
-                        'aclocal.m4',
-                        'configure.ac'
-                      ],
-                      {
-                        '_LT_AC_TAGCONFIG' => 1,
-                        'AM_PROG_F77_C_O' => 1,
-                        'AC_INIT' => 1,
-                        'm4_pattern_forbid' => 1,
-                        '_AM_COND_IF' => 1,
-                        'AC_CANONICAL_TARGET' => 1,
-                        'AC_SUBST' => 1,
-                        'AC_CONFIG_LIBOBJ_DIR' => 1,
-                        'AC_FC_SRCEXT' => 1,
-                        'AC_CANONICAL_HOST' => 1,
-                        'AC_PROG_LIBTOOL' => 1,
-                        'AM_INIT_AUTOMAKE' => 1,
-                        'AM_PATH_GUILE' => 1,
-                        'AC_CONFIG_SUBDIRS' => 1,
-                        'AM_AUTOMAKE_VERSION' => 1,
-                        'LT_CONFIG_LTDL_DIR' => 1,
-                        'AC_REQUIRE_AUX_FILE' => 1,
-                        'AC_CONFIG_LINKS' => 1,
-                        'm4_sinclude' => 1,
-                        'LT_SUPPORTED_TAG' => 1,
-                        'AM_MAINTAINER_MODE' => 1,
-                        'AM_NLS' => 1,
-                        'AM_GNU_GETTEXT_INTL_SUBDIR' => 1,
-                        'AM_MAKEFILE_INCLUDE' => 1,
-                        '_m4_warn' => 1,
-                        'AM_PROG_CXX_C_O' => 1,
-                        '_AM_COND_ENDIF' => 1,
-                        '_AM_MAKEFILE_INCLUDE' => 1,
-                        'AM_ENABLE_MULTILIB' => 1,
-                        'AM_SILENT_RULES' => 1,
-                        'AM_PROG_MOC' => 1,
-                        'AC_CONFIG_FILES' => 1,
-                        'include' => 1,
-                        'LT_INIT' => 1,
-                        'AM_PROG_AR' => 1,
-                        'AM_GNU_GETTEXT' => 1,
-                        'AC_LIBSOURCE' => 1,
-                        'AM_PROG_FC_C_O' => 1,
-                        'AC_CANONICAL_BUILD' => 1,
-                        'AC_FC_FREEFORM' => 1,
-                        'AH_OUTPUT' => 1,
-                        '_AM_SUBST_NOTMAKE' => 1,
-                        'AC_CONFIG_AUX_DIR' => 1,
-                        'sinclude' => 1,
-                        'AM_PROG_CC_C_O' => 1,
-                        'm4_pattern_allow' => 1,
-                        'AM_XGETTEXT_OPTION' => 1,
-                        'AC_CANONICAL_SYSTEM' => 1,
-                        'AM_CONDITIONAL' => 1,
-                        'AC_CONFIG_HEADERS' => 1,
-                        'AC_DEFINE_TRACE_LITERAL' => 1,
-                        'AM_POT_TOOLS' => 1,
-                        'm4_include' => 1,
-                        '_AM_COND_ELSE' => 1,
-                        'AC_SUBST_TRACE' => 1
-                      }
-                    ], 'Autom4te::Request' )
-           );
-
diff --git a/autom4te.cache/traces.0 b/autom4te.cache/traces.0
deleted file mode 100644 (file)
index 497a8f9..0000000
+++ /dev/null
@@ -1,2723 +0,0 @@
-m4trace:configure.in:29: -1- AC_INIT([bash], [4.2-maint], [bug-bash@gnu.org])
-m4trace:configure.in:29: -1- m4_pattern_forbid([^_?A[CHUM]_])
-m4trace:configure.in:29: -1- m4_pattern_forbid([_AC_])
-m4trace:configure.in:29: -1- m4_pattern_forbid([^LIBOBJS$], [do not use LIBOBJS directly, use AC_LIBOBJ (see section `AC_LIBOBJ vs LIBOBJS'])
-m4trace:configure.in:29: -1- m4_pattern_allow([^AS_FLAGS$])
-m4trace:configure.in:29: -1- m4_pattern_forbid([^_?m4_])
-m4trace:configure.in:29: -1- m4_pattern_forbid([^dnl$])
-m4trace:configure.in:29: -1- m4_pattern_forbid([^_?AS_])
-m4trace:configure.in:29: -1- AC_SUBST([SHELL])
-m4trace:configure.in:29: -1- AC_SUBST_TRACE([SHELL])
-m4trace:configure.in:29: -1- m4_pattern_allow([^SHELL$])
-m4trace:configure.in:29: -1- AC_SUBST([PATH_SEPARATOR])
-m4trace:configure.in:29: -1- AC_SUBST_TRACE([PATH_SEPARATOR])
-m4trace:configure.in:29: -1- m4_pattern_allow([^PATH_SEPARATOR$])
-m4trace:configure.in:29: -1- AC_SUBST([PACKAGE_NAME], [m4_ifdef([AC_PACKAGE_NAME],      ['AC_PACKAGE_NAME'])])
-m4trace:configure.in:29: -1- AC_SUBST_TRACE([PACKAGE_NAME])
-m4trace:configure.in:29: -1- m4_pattern_allow([^PACKAGE_NAME$])
-m4trace:configure.in:29: -1- AC_SUBST([PACKAGE_TARNAME], [m4_ifdef([AC_PACKAGE_TARNAME],   ['AC_PACKAGE_TARNAME'])])
-m4trace:configure.in:29: -1- AC_SUBST_TRACE([PACKAGE_TARNAME])
-m4trace:configure.in:29: -1- m4_pattern_allow([^PACKAGE_TARNAME$])
-m4trace:configure.in:29: -1- AC_SUBST([PACKAGE_VERSION], [m4_ifdef([AC_PACKAGE_VERSION],   ['AC_PACKAGE_VERSION'])])
-m4trace:configure.in:29: -1- AC_SUBST_TRACE([PACKAGE_VERSION])
-m4trace:configure.in:29: -1- m4_pattern_allow([^PACKAGE_VERSION$])
-m4trace:configure.in:29: -1- AC_SUBST([PACKAGE_STRING], [m4_ifdef([AC_PACKAGE_STRING],    ['AC_PACKAGE_STRING'])])
-m4trace:configure.in:29: -1- AC_SUBST_TRACE([PACKAGE_STRING])
-m4trace:configure.in:29: -1- m4_pattern_allow([^PACKAGE_STRING$])
-m4trace:configure.in:29: -1- AC_SUBST([PACKAGE_BUGREPORT], [m4_ifdef([AC_PACKAGE_BUGREPORT], ['AC_PACKAGE_BUGREPORT'])])
-m4trace:configure.in:29: -1- AC_SUBST_TRACE([PACKAGE_BUGREPORT])
-m4trace:configure.in:29: -1- m4_pattern_allow([^PACKAGE_BUGREPORT$])
-m4trace:configure.in:29: -1- AC_SUBST([PACKAGE_URL], [m4_ifdef([AC_PACKAGE_URL],       ['AC_PACKAGE_URL'])])
-m4trace:configure.in:29: -1- AC_SUBST_TRACE([PACKAGE_URL])
-m4trace:configure.in:29: -1- m4_pattern_allow([^PACKAGE_URL$])
-m4trace:configure.in:29: -1- AC_SUBST([exec_prefix], [NONE])
-m4trace:configure.in:29: -1- AC_SUBST_TRACE([exec_prefix])
-m4trace:configure.in:29: -1- m4_pattern_allow([^exec_prefix$])
-m4trace:configure.in:29: -1- AC_SUBST([prefix], [NONE])
-m4trace:configure.in:29: -1- AC_SUBST_TRACE([prefix])
-m4trace:configure.in:29: -1- m4_pattern_allow([^prefix$])
-m4trace:configure.in:29: -1- AC_SUBST([program_transform_name], [s,x,x,])
-m4trace:configure.in:29: -1- AC_SUBST_TRACE([program_transform_name])
-m4trace:configure.in:29: -1- m4_pattern_allow([^program_transform_name$])
-m4trace:configure.in:29: -1- AC_SUBST([bindir], ['${exec_prefix}/bin'])
-m4trace:configure.in:29: -1- AC_SUBST_TRACE([bindir])
-m4trace:configure.in:29: -1- m4_pattern_allow([^bindir$])
-m4trace:configure.in:29: -1- AC_SUBST([sbindir], ['${exec_prefix}/sbin'])
-m4trace:configure.in:29: -1- AC_SUBST_TRACE([sbindir])
-m4trace:configure.in:29: -1- m4_pattern_allow([^sbindir$])
-m4trace:configure.in:29: -1- AC_SUBST([libexecdir], ['${exec_prefix}/libexec'])
-m4trace:configure.in:29: -1- AC_SUBST_TRACE([libexecdir])
-m4trace:configure.in:29: -1- m4_pattern_allow([^libexecdir$])
-m4trace:configure.in:29: -1- AC_SUBST([datarootdir], ['${prefix}/share'])
-m4trace:configure.in:29: -1- AC_SUBST_TRACE([datarootdir])
-m4trace:configure.in:29: -1- m4_pattern_allow([^datarootdir$])
-m4trace:configure.in:29: -1- AC_SUBST([datadir], ['${datarootdir}'])
-m4trace:configure.in:29: -1- AC_SUBST_TRACE([datadir])
-m4trace:configure.in:29: -1- m4_pattern_allow([^datadir$])
-m4trace:configure.in:29: -1- AC_SUBST([sysconfdir], ['${prefix}/etc'])
-m4trace:configure.in:29: -1- AC_SUBST_TRACE([sysconfdir])
-m4trace:configure.in:29: -1- m4_pattern_allow([^sysconfdir$])
-m4trace:configure.in:29: -1- AC_SUBST([sharedstatedir], ['${prefix}/com'])
-m4trace:configure.in:29: -1- AC_SUBST_TRACE([sharedstatedir])
-m4trace:configure.in:29: -1- m4_pattern_allow([^sharedstatedir$])
-m4trace:configure.in:29: -1- AC_SUBST([localstatedir], ['${prefix}/var'])
-m4trace:configure.in:29: -1- AC_SUBST_TRACE([localstatedir])
-m4trace:configure.in:29: -1- m4_pattern_allow([^localstatedir$])
-m4trace:configure.in:29: -1- AC_SUBST([includedir], ['${prefix}/include'])
-m4trace:configure.in:29: -1- AC_SUBST_TRACE([includedir])
-m4trace:configure.in:29: -1- m4_pattern_allow([^includedir$])
-m4trace:configure.in:29: -1- AC_SUBST([oldincludedir], ['/usr/include'])
-m4trace:configure.in:29: -1- AC_SUBST_TRACE([oldincludedir])
-m4trace:configure.in:29: -1- m4_pattern_allow([^oldincludedir$])
-m4trace:configure.in:29: -1- AC_SUBST([docdir], [m4_ifset([AC_PACKAGE_TARNAME],
-                                    ['${datarootdir}/doc/${PACKAGE_TARNAME}'],
-                                    ['${datarootdir}/doc/${PACKAGE}'])])
-m4trace:configure.in:29: -1- AC_SUBST_TRACE([docdir])
-m4trace:configure.in:29: -1- m4_pattern_allow([^docdir$])
-m4trace:configure.in:29: -1- AC_SUBST([infodir], ['${datarootdir}/info'])
-m4trace:configure.in:29: -1- AC_SUBST_TRACE([infodir])
-m4trace:configure.in:29: -1- m4_pattern_allow([^infodir$])
-m4trace:configure.in:29: -1- AC_SUBST([htmldir], ['${docdir}'])
-m4trace:configure.in:29: -1- AC_SUBST_TRACE([htmldir])
-m4trace:configure.in:29: -1- m4_pattern_allow([^htmldir$])
-m4trace:configure.in:29: -1- AC_SUBST([dvidir], ['${docdir}'])
-m4trace:configure.in:29: -1- AC_SUBST_TRACE([dvidir])
-m4trace:configure.in:29: -1- m4_pattern_allow([^dvidir$])
-m4trace:configure.in:29: -1- AC_SUBST([pdfdir], ['${docdir}'])
-m4trace:configure.in:29: -1- AC_SUBST_TRACE([pdfdir])
-m4trace:configure.in:29: -1- m4_pattern_allow([^pdfdir$])
-m4trace:configure.in:29: -1- AC_SUBST([psdir], ['${docdir}'])
-m4trace:configure.in:29: -1- AC_SUBST_TRACE([psdir])
-m4trace:configure.in:29: -1- m4_pattern_allow([^psdir$])
-m4trace:configure.in:29: -1- AC_SUBST([libdir], ['${exec_prefix}/lib'])
-m4trace:configure.in:29: -1- AC_SUBST_TRACE([libdir])
-m4trace:configure.in:29: -1- m4_pattern_allow([^libdir$])
-m4trace:configure.in:29: -1- AC_SUBST([localedir], ['${datarootdir}/locale'])
-m4trace:configure.in:29: -1- AC_SUBST_TRACE([localedir])
-m4trace:configure.in:29: -1- m4_pattern_allow([^localedir$])
-m4trace:configure.in:29: -1- AC_SUBST([mandir], ['${datarootdir}/man'])
-m4trace:configure.in:29: -1- AC_SUBST_TRACE([mandir])
-m4trace:configure.in:29: -1- m4_pattern_allow([^mandir$])
-m4trace:configure.in:29: -1- AC_DEFINE_TRACE_LITERAL([PACKAGE_NAME])
-m4trace:configure.in:29: -1- m4_pattern_allow([^PACKAGE_NAME$])
-m4trace:configure.in:29: -1- AH_OUTPUT([PACKAGE_NAME], [/* Define to the full name of this package. */
-@%:@undef PACKAGE_NAME])
-m4trace:configure.in:29: -1- AC_DEFINE_TRACE_LITERAL([PACKAGE_TARNAME])
-m4trace:configure.in:29: -1- m4_pattern_allow([^PACKAGE_TARNAME$])
-m4trace:configure.in:29: -1- AH_OUTPUT([PACKAGE_TARNAME], [/* Define to the one symbol short name of this package. */
-@%:@undef PACKAGE_TARNAME])
-m4trace:configure.in:29: -1- AC_DEFINE_TRACE_LITERAL([PACKAGE_VERSION])
-m4trace:configure.in:29: -1- m4_pattern_allow([^PACKAGE_VERSION$])
-m4trace:configure.in:29: -1- AH_OUTPUT([PACKAGE_VERSION], [/* Define to the version of this package. */
-@%:@undef PACKAGE_VERSION])
-m4trace:configure.in:29: -1- AC_DEFINE_TRACE_LITERAL([PACKAGE_STRING])
-m4trace:configure.in:29: -1- m4_pattern_allow([^PACKAGE_STRING$])
-m4trace:configure.in:29: -1- AH_OUTPUT([PACKAGE_STRING], [/* Define to the full name and version of this package. */
-@%:@undef PACKAGE_STRING])
-m4trace:configure.in:29: -1- AC_DEFINE_TRACE_LITERAL([PACKAGE_BUGREPORT])
-m4trace:configure.in:29: -1- m4_pattern_allow([^PACKAGE_BUGREPORT$])
-m4trace:configure.in:29: -1- AH_OUTPUT([PACKAGE_BUGREPORT], [/* Define to the address where bug reports for this package should be sent. */
-@%:@undef PACKAGE_BUGREPORT])
-m4trace:configure.in:29: -1- AC_DEFINE_TRACE_LITERAL([PACKAGE_URL])
-m4trace:configure.in:29: -1- m4_pattern_allow([^PACKAGE_URL$])
-m4trace:configure.in:29: -1- AH_OUTPUT([PACKAGE_URL], [/* Define to the home page for this package. */
-@%:@undef PACKAGE_URL])
-m4trace:configure.in:29: -1- AC_SUBST([DEFS])
-m4trace:configure.in:29: -1- AC_SUBST_TRACE([DEFS])
-m4trace:configure.in:29: -1- m4_pattern_allow([^DEFS$])
-m4trace:configure.in:29: -1- AC_SUBST([ECHO_C])
-m4trace:configure.in:29: -1- AC_SUBST_TRACE([ECHO_C])
-m4trace:configure.in:29: -1- m4_pattern_allow([^ECHO_C$])
-m4trace:configure.in:29: -1- AC_SUBST([ECHO_N])
-m4trace:configure.in:29: -1- AC_SUBST_TRACE([ECHO_N])
-m4trace:configure.in:29: -1- m4_pattern_allow([^ECHO_N$])
-m4trace:configure.in:29: -1- AC_SUBST([ECHO_T])
-m4trace:configure.in:29: -1- AC_SUBST_TRACE([ECHO_T])
-m4trace:configure.in:29: -1- m4_pattern_allow([^ECHO_T$])
-m4trace:configure.in:29: -1- AC_SUBST([LIBS])
-m4trace:configure.in:29: -1- AC_SUBST_TRACE([LIBS])
-m4trace:configure.in:29: -1- m4_pattern_allow([^LIBS$])
-m4trace:configure.in:29: -1- AC_SUBST([build_alias])
-m4trace:configure.in:29: -1- AC_SUBST_TRACE([build_alias])
-m4trace:configure.in:29: -1- m4_pattern_allow([^build_alias$])
-m4trace:configure.in:29: -1- AC_SUBST([host_alias])
-m4trace:configure.in:29: -1- AC_SUBST_TRACE([host_alias])
-m4trace:configure.in:29: -1- m4_pattern_allow([^host_alias$])
-m4trace:configure.in:29: -1- AC_SUBST([target_alias])
-m4trace:configure.in:29: -1- AC_SUBST_TRACE([target_alias])
-m4trace:configure.in:29: -1- m4_pattern_allow([^target_alias$])
-m4trace:configure.in:36: -1- AC_CONFIG_AUX_DIR([./support])
-m4trace:configure.in:37: -1- AC_CONFIG_HEADERS([config.h])
-m4trace:configure.in:51: -1- AC_CANONICAL_HOST
-m4trace:configure.in:51: -1- AC_CANONICAL_BUILD
-m4trace:configure.in:51: -1- AC_REQUIRE_AUX_FILE([config.sub])
-m4trace:configure.in:51: -1- AC_REQUIRE_AUX_FILE([config.guess])
-m4trace:configure.in:51: -1- AC_SUBST([build], [$ac_cv_build])
-m4trace:configure.in:51: -1- AC_SUBST_TRACE([build])
-m4trace:configure.in:51: -1- m4_pattern_allow([^build$])
-m4trace:configure.in:51: -1- AC_SUBST([build_cpu], [$[1]])
-m4trace:configure.in:51: -1- AC_SUBST_TRACE([build_cpu])
-m4trace:configure.in:51: -1- m4_pattern_allow([^build_cpu$])
-m4trace:configure.in:51: -1- AC_SUBST([build_vendor], [$[2]])
-m4trace:configure.in:51: -1- AC_SUBST_TRACE([build_vendor])
-m4trace:configure.in:51: -1- m4_pattern_allow([^build_vendor$])
-m4trace:configure.in:51: -1- AC_SUBST([build_os])
-m4trace:configure.in:51: -1- AC_SUBST_TRACE([build_os])
-m4trace:configure.in:51: -1- m4_pattern_allow([^build_os$])
-m4trace:configure.in:51: -1- AC_SUBST([host], [$ac_cv_host])
-m4trace:configure.in:51: -1- AC_SUBST_TRACE([host])
-m4trace:configure.in:51: -1- m4_pattern_allow([^host$])
-m4trace:configure.in:51: -1- AC_SUBST([host_cpu], [$[1]])
-m4trace:configure.in:51: -1- AC_SUBST_TRACE([host_cpu])
-m4trace:configure.in:51: -1- m4_pattern_allow([^host_cpu$])
-m4trace:configure.in:51: -1- AC_SUBST([host_vendor], [$[2]])
-m4trace:configure.in:51: -1- AC_SUBST_TRACE([host_vendor])
-m4trace:configure.in:51: -1- m4_pattern_allow([^host_vendor$])
-m4trace:configure.in:51: -1- AC_SUBST([host_os])
-m4trace:configure.in:51: -1- AC_SUBST_TRACE([host_os])
-m4trace:configure.in:51: -1- m4_pattern_allow([^host_os$])
-m4trace:configure.in:102: -1- AC_SUBST([DEBUGGER_START_FILE])
-m4trace:configure.in:102: -1- AC_SUBST_TRACE([DEBUGGER_START_FILE])
-m4trace:configure.in:102: -1- m4_pattern_allow([^DEBUGGER_START_FILE$])
-m4trace:configure.in:106: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.in:106: the top level])
-m4trace:configure.in:107: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.in:107: the top level])
-m4trace:configure.in:108: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.in:108: the top level])
-m4trace:configure.in:109: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.in:109: the top level])
-m4trace:configure.in:110: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.in:110: the top level])
-m4trace:configure.in:111: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.in:111: the top level])
-m4trace:configure.in:112: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.in:112: the top level])
-m4trace:configure.in:123: -1- AC_DEFINE_TRACE_LITERAL([USING_BASH_MALLOC])
-m4trace:configure.in:123: -1- m4_pattern_allow([^USING_BASH_MALLOC$])
-m4trace:configure.in:133: -1- AC_DEFINE_TRACE_LITERAL([DISABLE_MALLOC_WRAPPERS])
-m4trace:configure.in:133: -1- m4_pattern_allow([^DISABLE_MALLOC_WRAPPERS$])
-m4trace:configure.in:143: -1- AC_DEFINE_TRACE_LITERAL([AFS])
-m4trace:configure.in:143: -1- m4_pattern_allow([^AFS$])
-m4trace:configure.in:195: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.in:195: the top level])
-m4trace:configure.in:211: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.in:211: the top level])
-m4trace:configure.in:212: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.in:212: the top level])
-m4trace:configure.in:213: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.in:213: the top level])
-m4trace:configure.in:214: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.in:214: the top level])
-m4trace:configure.in:215: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.in:215: the top level])
-m4trace:configure.in:216: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.in:216: the top level])
-m4trace:configure.in:217: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.in:217: the top level])
-m4trace:configure.in:218: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.in:218: the top level])
-m4trace:configure.in:219: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.in:219: the top level])
-m4trace:configure.in:220: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.in:220: the top level])
-m4trace:configure.in:221: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.in:221: the top level])
-m4trace:configure.in:222: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.in:222: the top level])
-m4trace:configure.in:223: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.in:223: the top level])
-m4trace:configure.in:224: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.in:224: the top level])
-m4trace:configure.in:225: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.in:225: the top level])
-m4trace:configure.in:226: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.in:226: the top level])
-m4trace:configure.in:227: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.in:227: the top level])
-m4trace:configure.in:228: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.in:228: the top level])
-m4trace:configure.in:229: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.in:229: the top level])
-m4trace:configure.in:230: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.in:230: the top level])
-m4trace:configure.in:231: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.in:231: the top level])
-m4trace:configure.in:232: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.in:232: the top level])
-m4trace:configure.in:233: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.in:233: the top level])
-m4trace:configure.in:234: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.in:234: the top level])
-m4trace:configure.in:235: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.in:235: the top level])
-m4trace:configure.in:236: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.in:236: the top level])
-m4trace:configure.in:237: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.in:237: the top level])
-m4trace:configure.in:238: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.in:238: the top level])
-m4trace:configure.in:239: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.in:239: the top level])
-m4trace:configure.in:240: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.in:240: the top level])
-m4trace:configure.in:241: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.in:241: the top level])
-m4trace:configure.in:242: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.in:242: the top level])
-m4trace:configure.in:243: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.in:243: the top level])
-m4trace:configure.in:246: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.in:246: the top level])
-m4trace:configure.in:247: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.in:247: the top level])
-m4trace:configure.in:248: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.in:248: the top level])
-m4trace:configure.in:251: -1- AC_SUBST([CC_FOR_BUILD])
-m4trace:configure.in:251: -1- AC_SUBST_TRACE([CC_FOR_BUILD])
-m4trace:configure.in:251: -1- m4_pattern_allow([^CC_FOR_BUILD$])
-m4trace:configure.in:252: -1- AC_SUBST([CFLAGS_FOR_BUILD])
-m4trace:configure.in:252: -1- AC_SUBST_TRACE([CFLAGS_FOR_BUILD])
-m4trace:configure.in:252: -1- m4_pattern_allow([^CFLAGS_FOR_BUILD$])
-m4trace:configure.in:253: -1- AC_SUBST([LDFLAGS_FOR_BUILD])
-m4trace:configure.in:253: -1- AC_SUBST_TRACE([LDFLAGS_FOR_BUILD])
-m4trace:configure.in:253: -1- m4_pattern_allow([^LDFLAGS_FOR_BUILD$])
-m4trace:configure.in:254: -1- AC_SUBST([CPPFLAGS_FOR_BUILD])
-m4trace:configure.in:254: -1- AC_SUBST_TRACE([CPPFLAGS_FOR_BUILD])
-m4trace:configure.in:254: -1- m4_pattern_allow([^CPPFLAGS_FOR_BUILD$])
-m4trace:configure.in:263: -1- AC_DEFINE_TRACE_LITERAL([ALIAS])
-m4trace:configure.in:263: -1- m4_pattern_allow([^ALIAS$])
-m4trace:configure.in:266: -1- AC_DEFINE_TRACE_LITERAL([PUSHD_AND_POPD])
-m4trace:configure.in:266: -1- m4_pattern_allow([^PUSHD_AND_POPD$])
-m4trace:configure.in:269: -1- AC_DEFINE_TRACE_LITERAL([RESTRICTED_SHELL])
-m4trace:configure.in:269: -1- m4_pattern_allow([^RESTRICTED_SHELL$])
-m4trace:configure.in:272: -1- AC_DEFINE_TRACE_LITERAL([PROCESS_SUBSTITUTION])
-m4trace:configure.in:272: -1- m4_pattern_allow([^PROCESS_SUBSTITUTION$])
-m4trace:configure.in:275: -1- AC_DEFINE_TRACE_LITERAL([PROMPT_STRING_DECODE])
-m4trace:configure.in:275: -1- m4_pattern_allow([^PROMPT_STRING_DECODE$])
-m4trace:configure.in:278: -1- AC_DEFINE_TRACE_LITERAL([SELECT_COMMAND])
-m4trace:configure.in:278: -1- m4_pattern_allow([^SELECT_COMMAND$])
-m4trace:configure.in:281: -1- AC_DEFINE_TRACE_LITERAL([HELP_BUILTIN])
-m4trace:configure.in:281: -1- m4_pattern_allow([^HELP_BUILTIN$])
-m4trace:configure.in:284: -1- AC_DEFINE_TRACE_LITERAL([ARRAY_VARS])
-m4trace:configure.in:284: -1- m4_pattern_allow([^ARRAY_VARS$])
-m4trace:configure.in:287: -1- AC_DEFINE_TRACE_LITERAL([DPAREN_ARITHMETIC])
-m4trace:configure.in:287: -1- m4_pattern_allow([^DPAREN_ARITHMETIC$])
-m4trace:configure.in:290: -1- AC_DEFINE_TRACE_LITERAL([BRACE_EXPANSION])
-m4trace:configure.in:290: -1- m4_pattern_allow([^BRACE_EXPANSION$])
-m4trace:configure.in:293: -1- AC_DEFINE_TRACE_LITERAL([DISABLED_BUILTINS])
-m4trace:configure.in:293: -1- m4_pattern_allow([^DISABLED_BUILTINS$])
-m4trace:configure.in:296: -1- AC_DEFINE_TRACE_LITERAL([COMMAND_TIMING])
-m4trace:configure.in:296: -1- m4_pattern_allow([^COMMAND_TIMING$])
-m4trace:configure.in:299: -1- AC_DEFINE_TRACE_LITERAL([DEFAULT_ECHO_TO_XPG])
-m4trace:configure.in:299: -1- m4_pattern_allow([^DEFAULT_ECHO_TO_XPG$])
-m4trace:configure.in:302: -1- AC_DEFINE_TRACE_LITERAL([STRICT_POSIX])
-m4trace:configure.in:302: -1- m4_pattern_allow([^STRICT_POSIX$])
-m4trace:configure.in:305: -1- AC_DEFINE_TRACE_LITERAL([EXTENDED_GLOB])
-m4trace:configure.in:305: -1- m4_pattern_allow([^EXTENDED_GLOB$])
-m4trace:configure.in:308: -1- AC_DEFINE_TRACE_LITERAL([EXTGLOB_DEFAULT])
-m4trace:configure.in:308: -1- m4_pattern_allow([^EXTGLOB_DEFAULT$])
-m4trace:configure.in:310: -1- AC_DEFINE_TRACE_LITERAL([EXTGLOB_DEFAULT])
-m4trace:configure.in:310: -1- m4_pattern_allow([^EXTGLOB_DEFAULT$])
-m4trace:configure.in:313: -1- AC_DEFINE_TRACE_LITERAL([COND_COMMAND])
-m4trace:configure.in:313: -1- m4_pattern_allow([^COND_COMMAND$])
-m4trace:configure.in:316: -1- AC_DEFINE_TRACE_LITERAL([COND_REGEXP])
-m4trace:configure.in:316: -1- m4_pattern_allow([^COND_REGEXP$])
-m4trace:configure.in:319: -1- AC_DEFINE_TRACE_LITERAL([COPROCESS_SUPPORT])
-m4trace:configure.in:319: -1- m4_pattern_allow([^COPROCESS_SUPPORT$])
-m4trace:configure.in:322: -1- AC_DEFINE_TRACE_LITERAL([ARITH_FOR_COMMAND])
-m4trace:configure.in:322: -1- m4_pattern_allow([^ARITH_FOR_COMMAND$])
-m4trace:configure.in:325: -1- AC_DEFINE_TRACE_LITERAL([NETWORK_REDIRECTIONS])
-m4trace:configure.in:325: -1- m4_pattern_allow([^NETWORK_REDIRECTIONS$])
-m4trace:configure.in:328: -1- AC_DEFINE_TRACE_LITERAL([PROGRAMMABLE_COMPLETION])
-m4trace:configure.in:328: -1- m4_pattern_allow([^PROGRAMMABLE_COMPLETION$])
-m4trace:configure.in:331: -1- AC_DEFINE_TRACE_LITERAL([NO_MULTIBYTE_SUPPORT])
-m4trace:configure.in:331: -1- m4_pattern_allow([^NO_MULTIBYTE_SUPPORT$])
-m4trace:configure.in:334: -1- AC_DEFINE_TRACE_LITERAL([DEBUGGER])
-m4trace:configure.in:334: -1- m4_pattern_allow([^DEBUGGER$])
-m4trace:configure.in:337: -1- AC_DEFINE_TRACE_LITERAL([CASEMOD_ATTRS])
-m4trace:configure.in:337: -1- m4_pattern_allow([^CASEMOD_ATTRS$])
-m4trace:configure.in:340: -1- AC_DEFINE_TRACE_LITERAL([CASEMOD_EXPANSIONS])
-m4trace:configure.in:340: -1- m4_pattern_allow([^CASEMOD_EXPANSIONS$])
-m4trace:configure.in:344: -1- AC_DEFINE_TRACE_LITERAL([MEMSCRAMBLE])
-m4trace:configure.in:344: -1- m4_pattern_allow([^MEMSCRAMBLE$])
-m4trace:configure.in:370: -1- AC_SUBST([TESTSCRIPT])
-m4trace:configure.in:370: -1- AC_SUBST_TRACE([TESTSCRIPT])
-m4trace:configure.in:370: -1- m4_pattern_allow([^TESTSCRIPT$])
-m4trace:configure.in:371: -1- AC_SUBST([PURIFY])
-m4trace:configure.in:371: -1- AC_SUBST_TRACE([PURIFY])
-m4trace:configure.in:371: -1- m4_pattern_allow([^PURIFY$])
-m4trace:configure.in:372: -1- AC_SUBST([MALLOC_TARGET])
-m4trace:configure.in:372: -1- AC_SUBST_TRACE([MALLOC_TARGET])
-m4trace:configure.in:372: -1- m4_pattern_allow([^MALLOC_TARGET$])
-m4trace:configure.in:373: -1- AC_SUBST([MALLOC_SRC])
-m4trace:configure.in:373: -1- AC_SUBST_TRACE([MALLOC_SRC])
-m4trace:configure.in:373: -1- m4_pattern_allow([^MALLOC_SRC$])
-m4trace:configure.in:375: -1- AC_SUBST([MALLOC_LIB])
-m4trace:configure.in:375: -1- AC_SUBST_TRACE([MALLOC_LIB])
-m4trace:configure.in:375: -1- m4_pattern_allow([^MALLOC_LIB$])
-m4trace:configure.in:376: -1- AC_SUBST([MALLOC_LIBRARY])
-m4trace:configure.in:376: -1- AC_SUBST_TRACE([MALLOC_LIBRARY])
-m4trace:configure.in:376: -1- m4_pattern_allow([^MALLOC_LIBRARY$])
-m4trace:configure.in:377: -1- AC_SUBST([MALLOC_LDFLAGS])
-m4trace:configure.in:377: -1- AC_SUBST_TRACE([MALLOC_LDFLAGS])
-m4trace:configure.in:377: -1- m4_pattern_allow([^MALLOC_LDFLAGS$])
-m4trace:configure.in:378: -1- AC_SUBST([MALLOC_DEP])
-m4trace:configure.in:378: -1- AC_SUBST_TRACE([MALLOC_DEP])
-m4trace:configure.in:378: -1- m4_pattern_allow([^MALLOC_DEP$])
-m4trace:configure.in:380: -1- AC_SUBST([htmldir])
-m4trace:configure.in:380: -1- AC_SUBST_TRACE([htmldir])
-m4trace:configure.in:380: -1- m4_pattern_allow([^htmldir$])
-m4trace:configure.in:382: -1- AC_SUBST([HELPDIR])
-m4trace:configure.in:382: -1- AC_SUBST_TRACE([HELPDIR])
-m4trace:configure.in:382: -1- m4_pattern_allow([^HELPDIR$])
-m4trace:configure.in:383: -1- AC_SUBST([HELPDIRDEFINE])
-m4trace:configure.in:383: -1- AC_SUBST_TRACE([HELPDIRDEFINE])
-m4trace:configure.in:383: -1- m4_pattern_allow([^HELPDIRDEFINE$])
-m4trace:configure.in:384: -1- AC_SUBST([HELPINSTALL])
-m4trace:configure.in:384: -1- AC_SUBST_TRACE([HELPINSTALL])
-m4trace:configure.in:384: -1- m4_pattern_allow([^HELPINSTALL$])
-m4trace:configure.in:385: -1- AC_SUBST([HELPFILES_TARGET])
-m4trace:configure.in:385: -1- AC_SUBST_TRACE([HELPFILES_TARGET])
-m4trace:configure.in:385: -1- m4_pattern_allow([^HELPFILES_TARGET$])
-m4trace:configure.in:386: -1- AC_SUBST([HELPSTRINGS])
-m4trace:configure.in:386: -1- AC_SUBST_TRACE([HELPSTRINGS])
-m4trace:configure.in:386: -1- m4_pattern_allow([^HELPSTRINGS$])
-m4trace:configure.in:395: -1- AC_SUBST([CC])
-m4trace:configure.in:395: -1- AC_SUBST_TRACE([CC])
-m4trace:configure.in:395: -1- m4_pattern_allow([^CC$])
-m4trace:configure.in:395: -1- AC_SUBST([CFLAGS])
-m4trace:configure.in:395: -1- AC_SUBST_TRACE([CFLAGS])
-m4trace:configure.in:395: -1- m4_pattern_allow([^CFLAGS$])
-m4trace:configure.in:395: -1- AC_SUBST([LDFLAGS])
-m4trace:configure.in:395: -1- AC_SUBST_TRACE([LDFLAGS])
-m4trace:configure.in:395: -1- m4_pattern_allow([^LDFLAGS$])
-m4trace:configure.in:395: -1- AC_SUBST([LIBS])
-m4trace:configure.in:395: -1- AC_SUBST_TRACE([LIBS])
-m4trace:configure.in:395: -1- m4_pattern_allow([^LIBS$])
-m4trace:configure.in:395: -1- AC_SUBST([CPPFLAGS])
-m4trace:configure.in:395: -1- AC_SUBST_TRACE([CPPFLAGS])
-m4trace:configure.in:395: -1- m4_pattern_allow([^CPPFLAGS$])
-m4trace:configure.in:395: -1- AC_SUBST([CC])
-m4trace:configure.in:395: -1- AC_SUBST_TRACE([CC])
-m4trace:configure.in:395: -1- m4_pattern_allow([^CC$])
-m4trace:configure.in:395: -1- AC_SUBST([CC])
-m4trace:configure.in:395: -1- AC_SUBST_TRACE([CC])
-m4trace:configure.in:395: -1- m4_pattern_allow([^CC$])
-m4trace:configure.in:395: -1- AC_SUBST([CC])
-m4trace:configure.in:395: -1- AC_SUBST_TRACE([CC])
-m4trace:configure.in:395: -1- m4_pattern_allow([^CC$])
-m4trace:configure.in:395: -1- AC_SUBST([CC])
-m4trace:configure.in:395: -1- AC_SUBST_TRACE([CC])
-m4trace:configure.in:395: -1- m4_pattern_allow([^CC$])
-m4trace:configure.in:395: -1- AC_SUBST([ac_ct_CC])
-m4trace:configure.in:395: -1- AC_SUBST_TRACE([ac_ct_CC])
-m4trace:configure.in:395: -1- m4_pattern_allow([^ac_ct_CC$])
-m4trace:configure.in:395: -1- AC_SUBST([EXEEXT], [$ac_cv_exeext])
-m4trace:configure.in:395: -1- AC_SUBST_TRACE([EXEEXT])
-m4trace:configure.in:395: -1- m4_pattern_allow([^EXEEXT$])
-m4trace:configure.in:395: -1- AC_SUBST([OBJEXT], [$ac_cv_objext])
-m4trace:configure.in:395: -1- AC_SUBST_TRACE([OBJEXT])
-m4trace:configure.in:395: -1- m4_pattern_allow([^OBJEXT$])
-m4trace:configure.in:399: -1- _m4_warn([obsolete], [The macro `AC_MINIX' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/specific.m4:437: AC_MINIX is expanded from...
-configure.in:399: the top level])
-m4trace:configure.in:399: -1- AC_SUBST([CPP])
-m4trace:configure.in:399: -1- AC_SUBST_TRACE([CPP])
-m4trace:configure.in:399: -1- m4_pattern_allow([^CPP$])
-m4trace:configure.in:399: -1- AC_SUBST([CPPFLAGS])
-m4trace:configure.in:399: -1- AC_SUBST_TRACE([CPPFLAGS])
-m4trace:configure.in:399: -1- m4_pattern_allow([^CPPFLAGS$])
-m4trace:configure.in:399: -1- AC_SUBST([CPP])
-m4trace:configure.in:399: -1- AC_SUBST_TRACE([CPP])
-m4trace:configure.in:399: -1- m4_pattern_allow([^CPP$])
-m4trace:configure.in:399: -1- AC_SUBST([GREP])
-m4trace:configure.in:399: -1- AC_SUBST_TRACE([GREP])
-m4trace:configure.in:399: -1- m4_pattern_allow([^GREP$])
-m4trace:configure.in:399: -1- AC_SUBST([EGREP])
-m4trace:configure.in:399: -1- AC_SUBST_TRACE([EGREP])
-m4trace:configure.in:399: -1- m4_pattern_allow([^EGREP$])
-m4trace:configure.in:399: -1- AC_DEFINE_TRACE_LITERAL([STDC_HEADERS])
-m4trace:configure.in:399: -1- m4_pattern_allow([^STDC_HEADERS$])
-m4trace:configure.in:399: -1- AH_OUTPUT([STDC_HEADERS], [/* Define to 1 if you have the ANSI C header files. */
-@%:@undef STDC_HEADERS])
-m4trace:configure.in:399: -1- AH_OUTPUT([HAVE_SYS_TYPES_H], [/* Define to 1 if you have the <sys/types.h> header file. */
-@%:@undef HAVE_SYS_TYPES_H])
-m4trace:configure.in:399: -1- AH_OUTPUT([HAVE_SYS_STAT_H], [/* Define to 1 if you have the <sys/stat.h> header file. */
-@%:@undef HAVE_SYS_STAT_H])
-m4trace:configure.in:399: -1- AH_OUTPUT([HAVE_STDLIB_H], [/* Define to 1 if you have the <stdlib.h> header file. */
-@%:@undef HAVE_STDLIB_H])
-m4trace:configure.in:399: -1- AH_OUTPUT([HAVE_STRING_H], [/* Define to 1 if you have the <string.h> header file. */
-@%:@undef HAVE_STRING_H])
-m4trace:configure.in:399: -1- AH_OUTPUT([HAVE_MEMORY_H], [/* Define to 1 if you have the <memory.h> header file. */
-@%:@undef HAVE_MEMORY_H])
-m4trace:configure.in:399: -1- AH_OUTPUT([HAVE_STRINGS_H], [/* Define to 1 if you have the <strings.h> header file. */
-@%:@undef HAVE_STRINGS_H])
-m4trace:configure.in:399: -1- AH_OUTPUT([HAVE_INTTYPES_H], [/* Define to 1 if you have the <inttypes.h> header file. */
-@%:@undef HAVE_INTTYPES_H])
-m4trace:configure.in:399: -1- AH_OUTPUT([HAVE_STDINT_H], [/* Define to 1 if you have the <stdint.h> header file. */
-@%:@undef HAVE_STDINT_H])
-m4trace:configure.in:399: -1- AH_OUTPUT([HAVE_UNISTD_H], [/* Define to 1 if you have the <unistd.h> header file. */
-@%:@undef HAVE_UNISTD_H])
-m4trace:configure.in:399: -1- AC_DEFINE_TRACE_LITERAL([_POSIX_SOURCE])
-m4trace:configure.in:399: -1- m4_pattern_allow([^_POSIX_SOURCE$])
-m4trace:configure.in:399: -1- AH_OUTPUT([_POSIX_SOURCE], [/* Define to 1 if you need to in order for `stat\' and other things to work. */
-@%:@undef _POSIX_SOURCE])
-m4trace:configure.in:399: -1- AC_DEFINE_TRACE_LITERAL([_POSIX_1_SOURCE])
-m4trace:configure.in:399: -1- m4_pattern_allow([^_POSIX_1_SOURCE$])
-m4trace:configure.in:399: -1- AH_OUTPUT([_POSIX_1_SOURCE], [/* Define to 2 if the system does not provide POSIX.1 features except with
-   this defined. */
-@%:@undef _POSIX_1_SOURCE])
-m4trace:configure.in:399: -1- AC_DEFINE_TRACE_LITERAL([_MINIX])
-m4trace:configure.in:399: -1- m4_pattern_allow([^_MINIX$])
-m4trace:configure.in:399: -1- AH_OUTPUT([_MINIX], [/* Define to 1 if on MINIX. */
-@%:@undef _MINIX])
-m4trace:configure.in:399: -1- AH_OUTPUT([USE_SYSTEM_EXTENSIONS], [/* Enable extensions on AIX 3, Interix.  */
-#ifndef _ALL_SOURCE
-# undef _ALL_SOURCE
-#endif
-/* Enable GNU extensions on systems that have them.  */
-#ifndef _GNU_SOURCE
-# undef _GNU_SOURCE
-#endif
-/* Enable threading extensions on Solaris.  */
-#ifndef _POSIX_PTHREAD_SEMANTICS
-# undef _POSIX_PTHREAD_SEMANTICS
-#endif
-/* Enable extensions on HP NonStop.  */
-#ifndef _TANDEM_SOURCE
-# undef _TANDEM_SOURCE
-#endif
-/* Enable general extensions on Solaris.  */
-#ifndef __EXTENSIONS__
-# undef __EXTENSIONS__
-#endif
-])
-m4trace:configure.in:399: -1- AC_DEFINE_TRACE_LITERAL([__EXTENSIONS__])
-m4trace:configure.in:399: -1- m4_pattern_allow([^__EXTENSIONS__$])
-m4trace:configure.in:399: -1- AC_DEFINE_TRACE_LITERAL([_ALL_SOURCE])
-m4trace:configure.in:399: -1- m4_pattern_allow([^_ALL_SOURCE$])
-m4trace:configure.in:399: -1- AC_DEFINE_TRACE_LITERAL([_GNU_SOURCE])
-m4trace:configure.in:399: -1- m4_pattern_allow([^_GNU_SOURCE$])
-m4trace:configure.in:399: -1- AC_DEFINE_TRACE_LITERAL([_POSIX_PTHREAD_SEMANTICS])
-m4trace:configure.in:399: -1- m4_pattern_allow([^_POSIX_PTHREAD_SEMANTICS$])
-m4trace:configure.in:399: -1- AC_DEFINE_TRACE_LITERAL([_TANDEM_SOURCE])
-m4trace:configure.in:399: -1- m4_pattern_allow([^_TANDEM_SOURCE$])
-m4trace:configure.in:401: -1- AC_DEFINE_TRACE_LITERAL([_FILE_OFFSET_BITS])
-m4trace:configure.in:401: -1- m4_pattern_allow([^_FILE_OFFSET_BITS$])
-m4trace:configure.in:401: -1- AH_OUTPUT([_FILE_OFFSET_BITS], [/* Number of bits in a file offset, on hosts where this is settable. */
-@%:@undef _FILE_OFFSET_BITS])
-m4trace:configure.in:401: -1- AC_DEFINE_TRACE_LITERAL([_LARGE_FILES])
-m4trace:configure.in:401: -1- m4_pattern_allow([^_LARGE_FILES$])
-m4trace:configure.in:401: -1- AH_OUTPUT([_LARGE_FILES], [/* Define for large files, on AIX-style hosts. */
-@%:@undef _LARGE_FILES])
-m4trace:configure.in:438: -1- AC_SUBST([CROSS_COMPILE])
-m4trace:configure.in:438: -1- AC_SUBST_TRACE([CROSS_COMPILE])
-m4trace:configure.in:438: -1- m4_pattern_allow([^CROSS_COMPILE$])
-m4trace:configure.in:440: -1- AC_SUBST([SIGNAMES_H])
-m4trace:configure.in:440: -1- AC_SUBST_TRACE([SIGNAMES_H])
-m4trace:configure.in:440: -1- m4_pattern_allow([^SIGNAMES_H$])
-m4trace:configure.in:441: -1- AC_SUBST([SIGNAMES_O])
-m4trace:configure.in:441: -1- AC_SUBST_TRACE([SIGNAMES_O])
-m4trace:configure.in:441: -1- m4_pattern_allow([^SIGNAMES_O$])
-m4trace:configure.in:475: -1- _m4_warn([obsolete], [The macro `ac_cv_prog_gcc' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/c.m4:436: ac_cv_prog_gcc is expanded from...
-configure.in:475: the top level])
-m4trace:configure.in:501: -1- AC_SUBST([CFLAGS])
-m4trace:configure.in:501: -1- AC_SUBST_TRACE([CFLAGS])
-m4trace:configure.in:501: -1- m4_pattern_allow([^CFLAGS$])
-m4trace:configure.in:502: -1- AC_SUBST([CPPFLAGS])
-m4trace:configure.in:502: -1- AC_SUBST_TRACE([CPPFLAGS])
-m4trace:configure.in:502: -1- m4_pattern_allow([^CPPFLAGS$])
-m4trace:configure.in:503: -1- AC_SUBST([LDFLAGS])
-m4trace:configure.in:503: -1- AC_SUBST_TRACE([LDFLAGS])
-m4trace:configure.in:503: -1- m4_pattern_allow([^LDFLAGS$])
-m4trace:configure.in:504: -1- AC_SUBST([STATIC_LD])
-m4trace:configure.in:504: -1- AC_SUBST_TRACE([STATIC_LD])
-m4trace:configure.in:504: -1- m4_pattern_allow([^STATIC_LD$])
-m4trace:configure.in:506: -1- AC_SUBST([CC_FOR_BUILD])
-m4trace:configure.in:506: -1- AC_SUBST_TRACE([CC_FOR_BUILD])
-m4trace:configure.in:506: -1- m4_pattern_allow([^CC_FOR_BUILD$])
-m4trace:configure.in:507: -1- AC_SUBST([CFLAGS_FOR_BUILD])
-m4trace:configure.in:507: -1- AC_SUBST_TRACE([CFLAGS_FOR_BUILD])
-m4trace:configure.in:507: -1- m4_pattern_allow([^CFLAGS_FOR_BUILD$])
-m4trace:configure.in:508: -1- AC_SUBST([CPPFLAGS_FOR_BUILD])
-m4trace:configure.in:508: -1- AC_SUBST_TRACE([CPPFLAGS_FOR_BUILD])
-m4trace:configure.in:508: -1- m4_pattern_allow([^CPPFLAGS_FOR_BUILD$])
-m4trace:configure.in:509: -1- AC_SUBST([LDFLAGS_FOR_BUILD])
-m4trace:configure.in:509: -1- AC_SUBST_TRACE([LDFLAGS_FOR_BUILD])
-m4trace:configure.in:509: -1- m4_pattern_allow([^LDFLAGS_FOR_BUILD$])
-m4trace:configure.in:510: -1- AC_SUBST([LIBS_FOR_BUILD])
-m4trace:configure.in:510: -1- AC_SUBST_TRACE([LIBS_FOR_BUILD])
-m4trace:configure.in:510: -1- m4_pattern_allow([^LIBS_FOR_BUILD$])
-m4trace:configure.in:524: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2765: AC_TRY_RUN is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-aclocal.m4:1806: RL_LIB_READLINE_VERSION is expanded from...
-configure.in:524: the top level])
-m4trace:configure.in:524: -1- AC_DEFINE_TRACE_LITERAL([RL_READLINE_VERSION])
-m4trace:configure.in:524: -1- m4_pattern_allow([^RL_READLINE_VERSION$])
-m4trace:configure.in:524: -1- AH_OUTPUT([RL_READLINE_VERSION], [/* encoded version of the installed readline library */
-@%:@undef RL_READLINE_VERSION])
-m4trace:configure.in:524: -1- AC_DEFINE_TRACE_LITERAL([RL_VERSION_MAJOR])
-m4trace:configure.in:524: -1- m4_pattern_allow([^RL_VERSION_MAJOR$])
-m4trace:configure.in:524: -1- AH_OUTPUT([RL_VERSION_MAJOR], [/* major version of installed readline library */
-@%:@undef RL_VERSION_MAJOR])
-m4trace:configure.in:524: -1- AC_DEFINE_TRACE_LITERAL([RL_VERSION_MINOR])
-m4trace:configure.in:524: -1- m4_pattern_allow([^RL_VERSION_MINOR$])
-m4trace:configure.in:524: -1- AH_OUTPUT([RL_VERSION_MINOR], [/* minor version of installed readline library */
-@%:@undef RL_VERSION_MINOR])
-m4trace:configure.in:524: -1- AC_SUBST([RL_VERSION])
-m4trace:configure.in:524: -1- AC_SUBST_TRACE([RL_VERSION])
-m4trace:configure.in:524: -1- m4_pattern_allow([^RL_VERSION$])
-m4trace:configure.in:524: -1- AC_SUBST([RL_MAJOR])
-m4trace:configure.in:524: -1- AC_SUBST_TRACE([RL_MAJOR])
-m4trace:configure.in:524: -1- m4_pattern_allow([^RL_MAJOR$])
-m4trace:configure.in:524: -1- AC_SUBST([RL_MINOR])
-m4trace:configure.in:524: -1- AC_SUBST_TRACE([RL_MINOR])
-m4trace:configure.in:524: -1- m4_pattern_allow([^RL_MINOR$])
-m4trace:configure.in:537: -1- AC_DEFINE_TRACE_LITERAL([READLINE])
-m4trace:configure.in:537: -1- m4_pattern_allow([^READLINE$])
-m4trace:configure.in:572: -1- AC_DEFINE_TRACE_LITERAL([HISTORY])
-m4trace:configure.in:572: -1- m4_pattern_allow([^HISTORY$])
-m4trace:configure.in:575: -1- AC_DEFINE_TRACE_LITERAL([BANG_HISTORY])
-m4trace:configure.in:575: -1- m4_pattern_allow([^BANG_HISTORY$])
-m4trace:configure.in:605: -1- AC_SUBST([READLINE_LIB])
-m4trace:configure.in:605: -1- AC_SUBST_TRACE([READLINE_LIB])
-m4trace:configure.in:605: -1- m4_pattern_allow([^READLINE_LIB$])
-m4trace:configure.in:606: -1- AC_SUBST([READLINE_DEP])
-m4trace:configure.in:606: -1- AC_SUBST_TRACE([READLINE_DEP])
-m4trace:configure.in:606: -1- m4_pattern_allow([^READLINE_DEP$])
-m4trace:configure.in:607: -1- AC_SUBST([RL_LIBDIR])
-m4trace:configure.in:607: -1- AC_SUBST_TRACE([RL_LIBDIR])
-m4trace:configure.in:607: -1- m4_pattern_allow([^RL_LIBDIR$])
-m4trace:configure.in:608: -1- AC_SUBST([RL_INCLUDEDIR])
-m4trace:configure.in:608: -1- AC_SUBST_TRACE([RL_INCLUDEDIR])
-m4trace:configure.in:608: -1- m4_pattern_allow([^RL_INCLUDEDIR$])
-m4trace:configure.in:609: -1- AC_SUBST([RL_INCLUDE])
-m4trace:configure.in:609: -1- AC_SUBST_TRACE([RL_INCLUDE])
-m4trace:configure.in:609: -1- m4_pattern_allow([^RL_INCLUDE$])
-m4trace:configure.in:610: -1- AC_SUBST([HISTORY_LIB])
-m4trace:configure.in:610: -1- AC_SUBST_TRACE([HISTORY_LIB])
-m4trace:configure.in:610: -1- m4_pattern_allow([^HISTORY_LIB$])
-m4trace:configure.in:611: -1- AC_SUBST([HISTORY_DEP])
-m4trace:configure.in:611: -1- AC_SUBST_TRACE([HISTORY_DEP])
-m4trace:configure.in:611: -1- m4_pattern_allow([^HISTORY_DEP$])
-m4trace:configure.in:612: -1- AC_SUBST([HIST_LIBDIR])
-m4trace:configure.in:612: -1- AC_SUBST_TRACE([HIST_LIBDIR])
-m4trace:configure.in:612: -1- m4_pattern_allow([^HIST_LIBDIR$])
-m4trace:configure.in:613: -1- AC_SUBST([TILDE_LIB])
-m4trace:configure.in:613: -1- AC_SUBST_TRACE([TILDE_LIB])
-m4trace:configure.in:613: -1- m4_pattern_allow([^TILDE_LIB$])
-m4trace:configure.in:618: -1- AC_REQUIRE_AUX_FILE([install-sh])
-m4trace:configure.in:618: -1- AC_SUBST([INSTALL_PROGRAM])
-m4trace:configure.in:618: -1- AC_SUBST_TRACE([INSTALL_PROGRAM])
-m4trace:configure.in:618: -1- m4_pattern_allow([^INSTALL_PROGRAM$])
-m4trace:configure.in:618: -1- AC_SUBST([INSTALL_SCRIPT])
-m4trace:configure.in:618: -1- AC_SUBST_TRACE([INSTALL_SCRIPT])
-m4trace:configure.in:618: -1- m4_pattern_allow([^INSTALL_SCRIPT$])
-m4trace:configure.in:618: -1- AC_SUBST([INSTALL_DATA])
-m4trace:configure.in:618: -1- AC_SUBST_TRACE([INSTALL_DATA])
-m4trace:configure.in:618: -1- m4_pattern_allow([^INSTALL_DATA$])
-m4trace:configure.in:619: -1- AC_SUBST([AR])
-m4trace:configure.in:619: -1- AC_SUBST_TRACE([AR])
-m4trace:configure.in:619: -1- m4_pattern_allow([^AR$])
-m4trace:configure.in:623: -1- AC_SUBST([RANLIB])
-m4trace:configure.in:623: -1- AC_SUBST_TRACE([RANLIB])
-m4trace:configure.in:623: -1- m4_pattern_allow([^RANLIB$])
-m4trace:configure.in:624: -1- AC_SUBST([YACC])
-m4trace:configure.in:624: -1- AC_SUBST_TRACE([YACC])
-m4trace:configure.in:624: -1- m4_pattern_allow([^YACC$])
-m4trace:configure.in:624: -1- AC_SUBST([YACC])
-m4trace:configure.in:624: -1- AC_SUBST_TRACE([YACC])
-m4trace:configure.in:624: -1- m4_pattern_allow([^YACC$])
-m4trace:configure.in:624: -1- AC_SUBST([YFLAGS])
-m4trace:configure.in:624: -1- AC_SUBST_TRACE([YFLAGS])
-m4trace:configure.in:624: -1- m4_pattern_allow([^YFLAGS$])
-m4trace:configure.in:625: -1- AC_SUBST([SET_MAKE])
-m4trace:configure.in:625: -1- AC_SUBST_TRACE([SET_MAKE])
-m4trace:configure.in:625: -1- m4_pattern_allow([^SET_MAKE$])
-m4trace:configure.in:631: -1- AC_SUBST([MAKE_SHELL])
-m4trace:configure.in:631: -1- AC_SUBST_TRACE([MAKE_SHELL])
-m4trace:configure.in:631: -1- m4_pattern_allow([^MAKE_SHELL$])
-m4trace:configure.in:653: -1- AC_SUBST([SIZE])
-m4trace:configure.in:653: -1- AC_SUBST_TRACE([SIZE])
-m4trace:configure.in:653: -1- m4_pattern_allow([^SIZE$])
-m4trace:configure.in:656: -1- AC_DEFINE_TRACE_LITERAL([_GNU_SOURCE])
-m4trace:configure.in:656: -1- m4_pattern_allow([^_GNU_SOURCE$])
-m4trace:configure.in:659: -1- AC_DEFINE_TRACE_LITERAL([const])
-m4trace:configure.in:659: -1- m4_pattern_allow([^const$])
-m4trace:configure.in:659: -1- AH_OUTPUT([const], [/* Define to empty if `const\' does not conform to ANSI C. */
-@%:@undef const])
-m4trace:configure.in:660: -1- AH_OUTPUT([inline], [/* Define to `__inline__\' or `__inline\' if that\'s what the C compiler
-   calls it, or to nothing if \'inline\' is not supported under any name.  */
-#ifndef __cplusplus
-#undef inline
-#endif])
-m4trace:configure.in:661: -1- AH_OUTPUT([WORDS_BIGENDIAN], [/* Define WORDS_BIGENDIAN to 1 if your processor stores words with the most
-   significant byte first (like Motorola and SPARC, unlike Intel). */
-#if defined AC_APPLE_UNIVERSAL_BUILD
-# if defined __BIG_ENDIAN__
-#  define WORDS_BIGENDIAN 1
-# endif
-#else
-# ifndef WORDS_BIGENDIAN
-#  undef WORDS_BIGENDIAN
-# endif
-#endif])
-m4trace:configure.in:661: -1- AC_DEFINE_TRACE_LITERAL([WORDS_BIGENDIAN])
-m4trace:configure.in:661: -1- m4_pattern_allow([^WORDS_BIGENDIAN$])
-m4trace:configure.in:661: -1- AC_DEFINE_TRACE_LITERAL([AC_APPLE_UNIVERSAL_BUILD])
-m4trace:configure.in:661: -1- m4_pattern_allow([^AC_APPLE_UNIVERSAL_BUILD$])
-m4trace:configure.in:661: -1- AH_OUTPUT([AC_APPLE_UNIVERSAL_BUILD], [/* Define if building universal (internal helper macro) */
-@%:@undef AC_APPLE_UNIVERSAL_BUILD])
-m4trace:configure.in:662: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STRINGIZE])
-m4trace:configure.in:662: -1- m4_pattern_allow([^HAVE_STRINGIZE$])
-m4trace:configure.in:662: -1- AH_OUTPUT([HAVE_STRINGIZE], [/* Define to 1 if cpp supports the ANSI @%:@ stringizing operator. */
-@%:@undef HAVE_STRINGIZE])
-m4trace:configure.in:663: -1- _m4_warn([obsolete], [The macro `AC_C_LONG_DOUBLE' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/types.m4:451: AC_C_LONG_DOUBLE is expanded from...
-configure.in:663: the top level])
-m4trace:configure.in:663: -1- AC_DEFINE_TRACE_LITERAL([HAVE_LONG_DOUBLE_WIDER])
-m4trace:configure.in:663: -1- m4_pattern_allow([^HAVE_LONG_DOUBLE_WIDER$])
-m4trace:configure.in:663: -1- AH_OUTPUT([HAVE_LONG_DOUBLE_WIDER], [/* Define to 1 if the type `long double\' works and has more range or precision
-   than `double\'. */
-@%:@undef HAVE_LONG_DOUBLE_WIDER])
-m4trace:configure.in:663: -1- AC_DEFINE_TRACE_LITERAL([HAVE_LONG_DOUBLE])
-m4trace:configure.in:663: -1- m4_pattern_allow([^HAVE_LONG_DOUBLE$])
-m4trace:configure.in:663: -1- AH_OUTPUT([HAVE_LONG_DOUBLE], [/* Define to 1 if the type `long double\' works and has more range or precision
-   than `double\'. */
-@%:@undef HAVE_LONG_DOUBLE])
-m4trace:configure.in:664: -1- AC_DEFINE_TRACE_LITERAL([PROTOTYPES])
-m4trace:configure.in:664: -1- m4_pattern_allow([^PROTOTYPES$])
-m4trace:configure.in:664: -1- AH_OUTPUT([PROTOTYPES], [/* Define to 1 if the C compiler supports function prototypes. */
-@%:@undef PROTOTYPES])
-m4trace:configure.in:664: -1- AC_DEFINE_TRACE_LITERAL([__PROTOTYPES])
-m4trace:configure.in:664: -1- m4_pattern_allow([^__PROTOTYPES$])
-m4trace:configure.in:664: -1- AH_OUTPUT([__PROTOTYPES], [/* Define like PROTOTYPES; this can be used by system headers. */
-@%:@undef __PROTOTYPES])
-m4trace:configure.in:665: -1- AH_OUTPUT([__CHAR_UNSIGNED__], [/* Define to 1 if type `char\' is unsigned and you are not using gcc.  */
-#ifndef __CHAR_UNSIGNED__
-# undef __CHAR_UNSIGNED__
-#endif])
-m4trace:configure.in:665: -1- AC_DEFINE_TRACE_LITERAL([__CHAR_UNSIGNED__])
-m4trace:configure.in:665: -1- m4_pattern_allow([^__CHAR_UNSIGNED__$])
-m4trace:configure.in:666: -1- AC_DEFINE_TRACE_LITERAL([volatile])
-m4trace:configure.in:666: -1- m4_pattern_allow([^volatile$])
-m4trace:configure.in:666: -1- AH_OUTPUT([volatile], [/* Define to empty if the keyword `volatile\' does not work. Warning: valid
-   code using `volatile\' can become incorrect without. Disable with care. */
-@%:@undef volatile])
-m4trace:configure.in:667: -1- AH_OUTPUT([restrict], [/* Define to the equivalent of the C99 \'restrict\' keyword, or to
-   nothing if this is not supported.  Do not define if restrict is
-   supported directly.  */
-#undef restrict
-/* Work around a bug in Sun C++: it does not support _Restrict or
-   __restrict__, even though the corresponding Sun C compiler ends up with
-   "#define restrict _Restrict" or "#define restrict __restrict__" in the
-   previous line.  Perhaps some future version of Sun C++ will work with
-   restrict; if so, hopefully it defines __RESTRICT like Sun C does.  */
-#if defined __SUNPRO_CC && !defined __RESTRICT
-# define _Restrict
-# define __restrict__
-#endif])
-m4trace:configure.in:667: -1- AC_DEFINE_TRACE_LITERAL([restrict])
-m4trace:configure.in:667: -1- m4_pattern_allow([^restrict$])
-m4trace:configure.in:667: -1- AC_DEFINE_TRACE_LITERAL([restrict])
-m4trace:configure.in:667: -1- m4_pattern_allow([^restrict$])
-m4trace:configure.in:670: -1- AM_GNU_GETTEXT([no-libtool], [need-ngettext], [lib/intl])
-m4trace:configure.in:670: -1- AC_SUBST([MKINSTALLDIRS])
-m4trace:configure.in:670: -1- AC_SUBST_TRACE([MKINSTALLDIRS])
-m4trace:configure.in:670: -1- m4_pattern_allow([^MKINSTALLDIRS$])
-m4trace:configure.in:670: -1- AM_NLS
-m4trace:configure.in:670: -1- AC_SUBST([USE_NLS])
-m4trace:configure.in:670: -1- AC_SUBST_TRACE([USE_NLS])
-m4trace:configure.in:670: -1- m4_pattern_allow([^USE_NLS$])
-m4trace:configure.in:670: -1- AC_SUBST([MSGFMT])
-m4trace:configure.in:670: -1- AC_SUBST_TRACE([MSGFMT])
-m4trace:configure.in:670: -1- m4_pattern_allow([^MSGFMT$])
-m4trace:configure.in:670: -1- AC_SUBST([GMSGFMT])
-m4trace:configure.in:670: -1- AC_SUBST_TRACE([GMSGFMT])
-m4trace:configure.in:670: -1- m4_pattern_allow([^GMSGFMT$])
-m4trace:configure.in:670: -1- AC_SUBST([XGETTEXT])
-m4trace:configure.in:670: -1- AC_SUBST_TRACE([XGETTEXT])
-m4trace:configure.in:670: -1- m4_pattern_allow([^XGETTEXT$])
-m4trace:configure.in:670: -1- AC_SUBST([MSGMERGE])
-m4trace:configure.in:670: -1- AC_SUBST_TRACE([MSGMERGE])
-m4trace:configure.in:670: -1- m4_pattern_allow([^MSGMERGE$])
-m4trace:configure.in:670: -1- _m4_warn([obsolete], [The macro `AC_OUTPUT_COMMANDS' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/status.m4:1028: AC_OUTPUT_COMMANDS is expanded from...
-aclocal.m4:3707: AM_PO_SUBDIRS is expanded from...
-aclocal.m4:2111: AM_GNU_GETTEXT is expanded from...
-configure.in:670: the top level])
-m4trace:configure.in:670: -1- AC_DEFINE_TRACE_LITERAL([off_t])
-m4trace:configure.in:670: -1- m4_pattern_allow([^off_t$])
-m4trace:configure.in:670: -1- AH_OUTPUT([off_t], [/* Define to `long int\' if <sys/types.h> does not define. */
-@%:@undef off_t])
-m4trace:configure.in:670: -1- AC_DEFINE_TRACE_LITERAL([size_t])
-m4trace:configure.in:670: -1- m4_pattern_allow([^size_t$])
-m4trace:configure.in:670: -1- AH_OUTPUT([size_t], [/* Define to `unsigned int\' if <sys/types.h> does not define. */
-@%:@undef size_t])
-m4trace:configure.in:670: -1- AC_DEFINE_TRACE_LITERAL([HAVE_ALLOCA_H])
-m4trace:configure.in:670: -1- m4_pattern_allow([^HAVE_ALLOCA_H$])
-m4trace:configure.in:670: -1- AH_OUTPUT([HAVE_ALLOCA_H], [/* Define to 1 if you have <alloca.h> and it should be used (not on Ultrix).
-   */
-@%:@undef HAVE_ALLOCA_H])
-m4trace:configure.in:670: -1- AC_DEFINE_TRACE_LITERAL([HAVE_ALLOCA])
-m4trace:configure.in:670: -1- m4_pattern_allow([^HAVE_ALLOCA$])
-m4trace:configure.in:670: -1- AH_OUTPUT([HAVE_ALLOCA], [/* Define to 1 if you have `alloca\', as a function or macro. */
-@%:@undef HAVE_ALLOCA])
-m4trace:configure.in:670: -1- AC_LIBSOURCE([alloca.c])
-m4trace:configure.in:670: -1- AC_SUBST([ALLOCA], [\${LIBOBJDIR}alloca.$ac_objext])
-m4trace:configure.in:670: -1- AC_SUBST_TRACE([ALLOCA])
-m4trace:configure.in:670: -1- m4_pattern_allow([^ALLOCA$])
-m4trace:configure.in:670: -1- AC_DEFINE_TRACE_LITERAL([C_ALLOCA])
-m4trace:configure.in:670: -1- m4_pattern_allow([^C_ALLOCA$])
-m4trace:configure.in:670: -1- AH_OUTPUT([C_ALLOCA], [/* Define to 1 if using `alloca.c\'. */
-@%:@undef C_ALLOCA])
-m4trace:configure.in:670: -1- AC_DEFINE_TRACE_LITERAL([CRAY_STACKSEG_END])
-m4trace:configure.in:670: -1- m4_pattern_allow([^CRAY_STACKSEG_END$])
-m4trace:configure.in:670: -1- AH_OUTPUT([CRAY_STACKSEG_END], [/* Define to one of `_getb67\', `GETB67\', `getb67\' for Cray-2 and Cray-YMP
-   systems. This function is required for `alloca.c\' support on those systems.
-   */
-@%:@undef CRAY_STACKSEG_END])
-m4trace:configure.in:670: -1- AH_OUTPUT([STACK_DIRECTION], [/* If using the C implementation of alloca, define if you know the
-   direction of stack growth for your system; otherwise it will be
-   automatically deduced at runtime.
-       STACK_DIRECTION > 0 => grows toward higher addresses
-       STACK_DIRECTION < 0 => grows toward lower addresses
-       STACK_DIRECTION = 0 => direction of growth unknown */
-@%:@undef STACK_DIRECTION])
-m4trace:configure.in:670: -1- AC_DEFINE_TRACE_LITERAL([STACK_DIRECTION])
-m4trace:configure.in:670: -1- m4_pattern_allow([^STACK_DIRECTION$])
-m4trace:configure.in:670: -1- AH_OUTPUT([HAVE_STDLIB_H], [/* Define to 1 if you have the <stdlib.h> header file. */
-@%:@undef HAVE_STDLIB_H])
-m4trace:configure.in:670: -1- AH_OUTPUT([HAVE_UNISTD_H], [/* Define to 1 if you have the <unistd.h> header file. */
-@%:@undef HAVE_UNISTD_H])
-m4trace:configure.in:670: -1- AH_OUTPUT([HAVE_SYS_PARAM_H], [/* Define to 1 if you have the <sys/param.h> header file. */
-@%:@undef HAVE_SYS_PARAM_H])
-m4trace:configure.in:670: -1- AH_OUTPUT([HAVE_GETPAGESIZE], [/* Define to 1 if you have the `getpagesize\' function. */
-@%:@undef HAVE_GETPAGESIZE])
-m4trace:configure.in:670: -1- AC_DEFINE_TRACE_LITERAL([HAVE_GETPAGESIZE])
-m4trace:configure.in:670: -1- m4_pattern_allow([^HAVE_GETPAGESIZE$])
-m4trace:configure.in:670: -1- AC_DEFINE_TRACE_LITERAL([HAVE_MMAP])
-m4trace:configure.in:670: -1- m4_pattern_allow([^HAVE_MMAP$])
-m4trace:configure.in:670: -1- AH_OUTPUT([HAVE_MMAP], [/* Define to 1 if you have a working `mmap\' system call. */
-@%:@undef HAVE_MMAP])
-m4trace:configure.in:670: -1- AC_SUBST([GLIBC21])
-m4trace:configure.in:670: -1- AC_SUBST_TRACE([GLIBC21])
-m4trace:configure.in:670: -1- m4_pattern_allow([^GLIBC21$])
-m4trace:configure.in:670: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2765: AC_TRY_RUN is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-../../lib/autoconf/general.m4:2053: AC_CACHE_CHECK is expanded from...
-aclocal.m4:2613: gt_INTDIV0 is expanded from...
-aclocal.m4:2399: AM_INTL_SUBDIR is expanded from...
-aclocal.m4:2111: AM_GNU_GETTEXT is expanded from...
-configure.in:670: the top level])
-m4trace:configure.in:670: -1- AC_DEFINE_TRACE_LITERAL([INTDIV0_RAISES_SIGFPE])
-m4trace:configure.in:670: -1- m4_pattern_allow([^INTDIV0_RAISES_SIGFPE$])
-m4trace:configure.in:670: -1- AH_OUTPUT([INTDIV0_RAISES_SIGFPE], [/* Define if integer division by zero raises signal SIGFPE. */
-@%:@undef INTDIV0_RAISES_SIGFPE])
-m4trace:configure.in:670: -1- _m4_warn([obsolete], [The macro `AC_TRY_COMPILE' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2615: AC_TRY_COMPILE is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-../../lib/autoconf/general.m4:2053: AC_CACHE_CHECK is expanded from...
-aclocal.m4:2715: jm_AC_HEADER_INTTYPES_H is expanded from...
-aclocal.m4:4016: jm_AC_TYPE_UINTMAX_T is expanded from...
-aclocal.m4:2399: AM_INTL_SUBDIR is expanded from...
-aclocal.m4:2111: AM_GNU_GETTEXT is expanded from...
-configure.in:670: the top level])
-m4trace:configure.in:670: -1- AC_DEFINE_TRACE_LITERAL([HAVE_INTTYPES_H_WITH_UINTMAX])
-m4trace:configure.in:670: -1- m4_pattern_allow([^HAVE_INTTYPES_H_WITH_UINTMAX$])
-m4trace:configure.in:670: -1- AH_OUTPUT([HAVE_INTTYPES_H_WITH_UINTMAX], [/* Define if <inttypes.h> exists, doesn\'t clash with <sys/types.h>, and
-   declares uintmax_t. */
-@%:@undef HAVE_INTTYPES_H_WITH_UINTMAX])
-m4trace:configure.in:670: -1- _m4_warn([obsolete], [The macro `AC_TRY_COMPILE' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2615: AC_TRY_COMPILE is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-../../lib/autoconf/general.m4:2053: AC_CACHE_CHECK is expanded from...
-aclocal.m4:3986: jm_AC_HEADER_STDINT_H is expanded from...
-aclocal.m4:4016: jm_AC_TYPE_UINTMAX_T is expanded from...
-aclocal.m4:2399: AM_INTL_SUBDIR is expanded from...
-aclocal.m4:2111: AM_GNU_GETTEXT is expanded from...
-configure.in:670: the top level])
-m4trace:configure.in:670: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STDINT_H_WITH_UINTMAX])
-m4trace:configure.in:670: -1- m4_pattern_allow([^HAVE_STDINT_H_WITH_UINTMAX$])
-m4trace:configure.in:670: -1- AH_OUTPUT([HAVE_STDINT_H_WITH_UINTMAX], [/* Define if <stdint.h> exists, doesn\'t clash with <sys/types.h>, and declares
-   uintmax_t. */
-@%:@undef HAVE_STDINT_H_WITH_UINTMAX])
-m4trace:configure.in:670: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2688: AC_TRY_LINK is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-../../lib/autoconf/general.m4:2053: AC_CACHE_CHECK is expanded from...
-aclocal.m4:4043: jm_AC_TYPE_UNSIGNED_LONG_LONG is expanded from...
-aclocal.m4:4016: jm_AC_TYPE_UINTMAX_T is expanded from...
-aclocal.m4:2399: AM_INTL_SUBDIR is expanded from...
-aclocal.m4:2111: AM_GNU_GETTEXT is expanded from...
-configure.in:670: the top level])
-m4trace:configure.in:670: -1- AC_DEFINE_TRACE_LITERAL([HAVE_UNSIGNED_LONG_LONG])
-m4trace:configure.in:670: -1- m4_pattern_allow([^HAVE_UNSIGNED_LONG_LONG$])
-m4trace:configure.in:670: -1- AH_OUTPUT([HAVE_UNSIGNED_LONG_LONG], [/* Define if you have the unsigned long long type. */
-@%:@undef HAVE_UNSIGNED_LONG_LONG])
-m4trace:configure.in:670: -1- AC_DEFINE_TRACE_LITERAL([uintmax_t])
-m4trace:configure.in:670: -1- m4_pattern_allow([^uintmax_t$])
-m4trace:configure.in:670: -1- AH_OUTPUT([uintmax_t], [/* Define to unsigned long or unsigned long long if <stdint.h> and
-   <inttypes.h> don\'t define. */
-@%:@undef uintmax_t])
-m4trace:configure.in:670: -1- AC_DEFINE_TRACE_LITERAL([HAVE_UINTMAX_T])
-m4trace:configure.in:670: -1- m4_pattern_allow([^HAVE_UINTMAX_T$])
-m4trace:configure.in:670: -1- AH_OUTPUT([HAVE_UINTMAX_T], [/* Define if you have the \'uintmax_t\' type in <stdint.h> or <inttypes.h>. */
-@%:@undef HAVE_UINTMAX_T])
-m4trace:configure.in:670: -1- _m4_warn([obsolete], [The macro `AC_TRY_COMPILE' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2615: AC_TRY_COMPILE is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-../../lib/autoconf/general.m4:2053: AC_CACHE_CHECK is expanded from...
-aclocal.m4:2688: gt_HEADER_INTTYPES_H is expanded from...
-aclocal.m4:2399: AM_INTL_SUBDIR is expanded from...
-aclocal.m4:2111: AM_GNU_GETTEXT is expanded from...
-configure.in:670: the top level])
-m4trace:configure.in:670: -1- AC_DEFINE_TRACE_LITERAL([HAVE_INTTYPES_H])
-m4trace:configure.in:670: -1- m4_pattern_allow([^HAVE_INTTYPES_H$])
-m4trace:configure.in:670: -1- AH_OUTPUT([HAVE_INTTYPES_H], [/* Define if <inttypes.h> exists and doesn\'t clash with <sys/types.h>. */
-@%:@undef HAVE_INTTYPES_H])
-m4trace:configure.in:670: -1- _m4_warn([obsolete], [The macro `AC_TRY_COMPILE' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2615: AC_TRY_COMPILE is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-../../lib/autoconf/general.m4:2053: AC_CACHE_CHECK is expanded from...
-aclocal.m4:2743: gt_INTTYPES_PRI is expanded from...
-aclocal.m4:2399: AM_INTL_SUBDIR is expanded from...
-aclocal.m4:2111: AM_GNU_GETTEXT is expanded from...
-configure.in:670: the top level])
-m4trace:configure.in:670: -1- AC_DEFINE_TRACE_LITERAL([PRI_MACROS_BROKEN])
-m4trace:configure.in:670: -1- m4_pattern_allow([^PRI_MACROS_BROKEN$])
-m4trace:configure.in:670: -1- AH_OUTPUT([PRI_MACROS_BROKEN], [/* Define if <inttypes.h> exists and defines unusable PRI* macros. */
-@%:@undef PRI_MACROS_BROKEN])
-m4trace:configure.in:670: -1- AH_OUTPUT([HAVE_ARGZ_H], [/* Define to 1 if you have the <argz.h> header file. */
-@%:@undef HAVE_ARGZ_H])
-m4trace:configure.in:670: -1- AH_OUTPUT([HAVE_LIMITS_H], [/* Define to 1 if you have the <limits.h> header file. */
-@%:@undef HAVE_LIMITS_H])
-m4trace:configure.in:670: -1- AH_OUTPUT([HAVE_LOCALE_H], [/* Define to 1 if you have the <locale.h> header file. */
-@%:@undef HAVE_LOCALE_H])
-m4trace:configure.in:670: -1- AH_OUTPUT([HAVE_NL_TYPES_H], [/* Define to 1 if you have the <nl_types.h> header file. */
-@%:@undef HAVE_NL_TYPES_H])
-m4trace:configure.in:670: -1- AH_OUTPUT([HAVE_MALLOC_H], [/* Define to 1 if you have the <malloc.h> header file. */
-@%:@undef HAVE_MALLOC_H])
-m4trace:configure.in:670: -1- AH_OUTPUT([HAVE_STDDEF_H], [/* Define to 1 if you have the <stddef.h> header file. */
-@%:@undef HAVE_STDDEF_H])
-m4trace:configure.in:670: -1- AH_OUTPUT([HAVE_STDLIB_H], [/* Define to 1 if you have the <stdlib.h> header file. */
-@%:@undef HAVE_STDLIB_H])
-m4trace:configure.in:670: -1- AH_OUTPUT([HAVE_STRING_H], [/* Define to 1 if you have the <string.h> header file. */
-@%:@undef HAVE_STRING_H])
-m4trace:configure.in:670: -1- AH_OUTPUT([HAVE_UNISTD_H], [/* Define to 1 if you have the <unistd.h> header file. */
-@%:@undef HAVE_UNISTD_H])
-m4trace:configure.in:670: -1- AH_OUTPUT([HAVE_SYS_PARAM_H], [/* Define to 1 if you have the <sys/param.h> header file. */
-@%:@undef HAVE_SYS_PARAM_H])
-m4trace:configure.in:670: -1- AH_OUTPUT([HAVE_FEOF_UNLOCKED], [/* Define to 1 if you have the `feof_unlocked\' function. */
-@%:@undef HAVE_FEOF_UNLOCKED])
-m4trace:configure.in:670: -1- AH_OUTPUT([HAVE_FGETS_UNLOCKED], [/* Define to 1 if you have the `fgets_unlocked\' function. */
-@%:@undef HAVE_FGETS_UNLOCKED])
-m4trace:configure.in:670: -1- AH_OUTPUT([HAVE_GETC_UNLOCKED], [/* Define to 1 if you have the `getc_unlocked\' function. */
-@%:@undef HAVE_GETC_UNLOCKED])
-m4trace:configure.in:670: -1- AH_OUTPUT([HAVE_GETCWD], [/* Define to 1 if you have the `getcwd\' function. */
-@%:@undef HAVE_GETCWD])
-m4trace:configure.in:670: -1- AH_OUTPUT([HAVE_GETEGID], [/* Define to 1 if you have the `getegid\' function. */
-@%:@undef HAVE_GETEGID])
-m4trace:configure.in:670: -1- AH_OUTPUT([HAVE_GETEUID], [/* Define to 1 if you have the `geteuid\' function. */
-@%:@undef HAVE_GETEUID])
-m4trace:configure.in:670: -1- AH_OUTPUT([HAVE_GETGID], [/* Define to 1 if you have the `getgid\' function. */
-@%:@undef HAVE_GETGID])
-m4trace:configure.in:670: -1- AH_OUTPUT([HAVE_GETUID], [/* Define to 1 if you have the `getuid\' function. */
-@%:@undef HAVE_GETUID])
-m4trace:configure.in:670: -1- AH_OUTPUT([HAVE_MEMPCPY], [/* Define to 1 if you have the `mempcpy\' function. */
-@%:@undef HAVE_MEMPCPY])
-m4trace:configure.in:670: -1- AH_OUTPUT([HAVE_MUNMAP], [/* Define to 1 if you have the `munmap\' function. */
-@%:@undef HAVE_MUNMAP])
-m4trace:configure.in:670: -1- AH_OUTPUT([HAVE_PUTENV], [/* Define to 1 if you have the `putenv\' function. */
-@%:@undef HAVE_PUTENV])
-m4trace:configure.in:670: -1- AH_OUTPUT([HAVE_SETENV], [/* Define to 1 if you have the `setenv\' function. */
-@%:@undef HAVE_SETENV])
-m4trace:configure.in:670: -1- AH_OUTPUT([HAVE_SETLOCALE], [/* Define to 1 if you have the `setlocale\' function. */
-@%:@undef HAVE_SETLOCALE])
-m4trace:configure.in:670: -1- AH_OUTPUT([HAVE_LOCALECONV], [/* Define to 1 if you have the `localeconv\' function. */
-@%:@undef HAVE_LOCALECONV])
-m4trace:configure.in:670: -1- AH_OUTPUT([HAVE_STPCPY], [/* Define to 1 if you have the `stpcpy\' function. */
-@%:@undef HAVE_STPCPY])
-m4trace:configure.in:670: -1- AH_OUTPUT([HAVE_STRCASECMP], [/* Define to 1 if you have the `strcasecmp\' function. */
-@%:@undef HAVE_STRCASECMP])
-m4trace:configure.in:670: -1- AH_OUTPUT([HAVE_STRDUP], [/* Define to 1 if you have the `strdup\' function. */
-@%:@undef HAVE_STRDUP])
-m4trace:configure.in:670: -1- AH_OUTPUT([HAVE_STRTOUL], [/* Define to 1 if you have the `strtoul\' function. */
-@%:@undef HAVE_STRTOUL])
-m4trace:configure.in:670: -1- AH_OUTPUT([HAVE_TSEARCH], [/* Define to 1 if you have the `tsearch\' function. */
-@%:@undef HAVE_TSEARCH])
-m4trace:configure.in:670: -1- AH_OUTPUT([HAVE___ARGZ_COUNT], [/* Define to 1 if you have the `__argz_count\' function. */
-@%:@undef HAVE___ARGZ_COUNT])
-m4trace:configure.in:670: -1- AH_OUTPUT([HAVE___ARGZ_STRINGIFY], [/* Define to 1 if you have the `__argz_stringify\' function. */
-@%:@undef HAVE___ARGZ_STRINGIFY])
-m4trace:configure.in:670: -1- AH_OUTPUT([HAVE___ARGZ_NEXT], [/* Define to 1 if you have the `__argz_next\' function. */
-@%:@undef HAVE___ARGZ_NEXT])
-m4trace:configure.in:670: -1- AH_OUTPUT([HAVE___FSETLOCKING], [/* Define to 1 if you have the `__fsetlocking\' function. */
-@%:@undef HAVE___FSETLOCKING])
-m4trace:configure.in:670: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2688: AC_TRY_LINK is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-../../lib/autoconf/general.m4:2053: AC_CACHE_CHECK is expanded from...
-aclocal.m4:2521: AM_ICONV_LINK is expanded from...
-aclocal.m4:2576: AM_ICONV is expanded from...
-aclocal.m4:2399: AM_INTL_SUBDIR is expanded from...
-aclocal.m4:2111: AM_GNU_GETTEXT is expanded from...
-configure.in:670: the top level])
-m4trace:configure.in:670: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2688: AC_TRY_LINK is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-../../lib/autoconf/general.m4:2053: AC_CACHE_CHECK is expanded from...
-aclocal.m4:2521: AM_ICONV_LINK is expanded from...
-aclocal.m4:2576: AM_ICONV is expanded from...
-aclocal.m4:2399: AM_INTL_SUBDIR is expanded from...
-aclocal.m4:2111: AM_GNU_GETTEXT is expanded from...
-configure.in:670: the top level])
-m4trace:configure.in:670: -1- AC_DEFINE_TRACE_LITERAL([HAVE_ICONV])
-m4trace:configure.in:670: -1- m4_pattern_allow([^HAVE_ICONV$])
-m4trace:configure.in:670: -1- AH_OUTPUT([HAVE_ICONV], [/* Define if you have the iconv() function. */
-@%:@undef HAVE_ICONV])
-m4trace:configure.in:670: -1- AC_SUBST([LIBICONV])
-m4trace:configure.in:670: -1- AC_SUBST_TRACE([LIBICONV])
-m4trace:configure.in:670: -1- m4_pattern_allow([^LIBICONV$])
-m4trace:configure.in:670: -1- AC_SUBST([LTLIBICONV])
-m4trace:configure.in:670: -1- AC_SUBST_TRACE([LTLIBICONV])
-m4trace:configure.in:670: -1- m4_pattern_allow([^LTLIBICONV$])
-m4trace:configure.in:670: -1- _m4_warn([obsolete], [The macro `AC_TRY_COMPILE' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2615: AC_TRY_COMPILE is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-aclocal.m4:2576: AM_ICONV is expanded from...
-aclocal.m4:2399: AM_INTL_SUBDIR is expanded from...
-aclocal.m4:2111: AM_GNU_GETTEXT is expanded from...
-configure.in:670: the top level])
-m4trace:configure.in:670: -1- AC_DEFINE_TRACE_LITERAL([ICONV_CONST])
-m4trace:configure.in:670: -1- m4_pattern_allow([^ICONV_CONST$])
-m4trace:configure.in:670: -1- AH_OUTPUT([ICONV_CONST], [/* Define as const if the declaration of iconv() needs const. */
-@%:@undef ICONV_CONST])
-m4trace:configure.in:670: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2688: AC_TRY_LINK is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-../../lib/autoconf/general.m4:2053: AC_CACHE_CHECK is expanded from...
-aclocal.m4:2040: AM_LANGINFO_CODESET is expanded from...
-aclocal.m4:2399: AM_INTL_SUBDIR is expanded from...
-aclocal.m4:2111: AM_GNU_GETTEXT is expanded from...
-configure.in:670: the top level])
-m4trace:configure.in:670: -1- AC_DEFINE_TRACE_LITERAL([HAVE_LANGINFO_CODESET])
-m4trace:configure.in:670: -1- m4_pattern_allow([^HAVE_LANGINFO_CODESET$])
-m4trace:configure.in:670: -1- AH_OUTPUT([HAVE_LANGINFO_CODESET], [/* Define if you have <langinfo.h> and nl_langinfo(CODESET). */
-@%:@undef HAVE_LANGINFO_CODESET])
-m4trace:configure.in:670: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2688: AC_TRY_LINK is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-../../lib/autoconf/general.m4:2053: AC_CACHE_CHECK is expanded from...
-aclocal.m4:2810: AM_LC_MESSAGES is expanded from...
-aclocal.m4:2399: AM_INTL_SUBDIR is expanded from...
-aclocal.m4:2111: AM_GNU_GETTEXT is expanded from...
-configure.in:670: the top level])
-m4trace:configure.in:670: -1- AC_DEFINE_TRACE_LITERAL([HAVE_LC_MESSAGES])
-m4trace:configure.in:670: -1- m4_pattern_allow([^HAVE_LC_MESSAGES$])
-m4trace:configure.in:670: -1- AH_OUTPUT([HAVE_LC_MESSAGES], [/* Define if your <locale.h> file defines LC_MESSAGES. */
-@%:@undef HAVE_LC_MESSAGES])
-m4trace:configure.in:670: -1- AC_SUBST([INTLBISON])
-m4trace:configure.in:670: -1- AC_SUBST_TRACE([INTLBISON])
-m4trace:configure.in:670: -1- m4_pattern_allow([^INTLBISON$])
-m4trace:configure.in:670: -1- AM_NLS
-m4trace:configure.in:670: -1- AC_SUBST([USE_NLS])
-m4trace:configure.in:670: -1- AC_SUBST_TRACE([USE_NLS])
-m4trace:configure.in:670: -1- m4_pattern_allow([^USE_NLS$])
-m4trace:configure.in:670: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2688: AC_TRY_LINK is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-../../lib/autoconf/general.m4:2053: AC_CACHE_CHECK is expanded from...
-aclocal.m4:2111: AM_GNU_GETTEXT is expanded from...
-configure.in:670: the top level])
-m4trace:configure.in:670: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2688: AC_TRY_LINK is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-../../lib/autoconf/general.m4:2053: AC_CACHE_CHECK is expanded from...
-aclocal.m4:2111: AM_GNU_GETTEXT is expanded from...
-configure.in:670: the top level])
-m4trace:configure.in:670: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2688: AC_TRY_LINK is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-../../lib/autoconf/general.m4:2053: AC_CACHE_CHECK is expanded from...
-aclocal.m4:2111: AM_GNU_GETTEXT is expanded from...
-configure.in:670: the top level])
-m4trace:configure.in:670: -1- AC_DEFINE_TRACE_LITERAL([ENABLE_NLS])
-m4trace:configure.in:670: -1- m4_pattern_allow([^ENABLE_NLS$])
-m4trace:configure.in:670: -1- AH_OUTPUT([ENABLE_NLS], [/* Define to 1 if translation of program messages to the user\'s native
-   language is requested. */
-@%:@undef ENABLE_NLS])
-m4trace:configure.in:670: -1- AC_DEFINE_TRACE_LITERAL([HAVE_GETTEXT])
-m4trace:configure.in:670: -1- m4_pattern_allow([^HAVE_GETTEXT$])
-m4trace:configure.in:670: -1- AH_OUTPUT([HAVE_GETTEXT], [/* Define if the GNU gettext() function is already present or preinstalled. */
-@%:@undef HAVE_GETTEXT])
-m4trace:configure.in:670: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DCGETTEXT])
-m4trace:configure.in:670: -1- m4_pattern_allow([^HAVE_DCGETTEXT$])
-m4trace:configure.in:670: -1- AH_OUTPUT([HAVE_DCGETTEXT], [/* Define if the GNU dcgettext() function is already present or preinstalled.
-   */
-@%:@undef HAVE_DCGETTEXT])
-m4trace:configure.in:670: -1- AC_SUBST([BUILD_INCLUDED_LIBINTL])
-m4trace:configure.in:670: -1- AC_SUBST_TRACE([BUILD_INCLUDED_LIBINTL])
-m4trace:configure.in:670: -1- m4_pattern_allow([^BUILD_INCLUDED_LIBINTL$])
-m4trace:configure.in:670: -1- AC_SUBST([USE_INCLUDED_LIBINTL])
-m4trace:configure.in:670: -1- AC_SUBST_TRACE([USE_INCLUDED_LIBINTL])
-m4trace:configure.in:670: -1- m4_pattern_allow([^USE_INCLUDED_LIBINTL$])
-m4trace:configure.in:670: -1- AC_SUBST([CATOBJEXT])
-m4trace:configure.in:670: -1- AC_SUBST_TRACE([CATOBJEXT])
-m4trace:configure.in:670: -1- m4_pattern_allow([^CATOBJEXT$])
-m4trace:configure.in:670: -1- AC_SUBST([DATADIRNAME])
-m4trace:configure.in:670: -1- AC_SUBST_TRACE([DATADIRNAME])
-m4trace:configure.in:670: -1- m4_pattern_allow([^DATADIRNAME$])
-m4trace:configure.in:670: -1- AC_SUBST([INSTOBJEXT])
-m4trace:configure.in:670: -1- AC_SUBST_TRACE([INSTOBJEXT])
-m4trace:configure.in:670: -1- m4_pattern_allow([^INSTOBJEXT$])
-m4trace:configure.in:670: -1- AC_SUBST([GENCAT])
-m4trace:configure.in:670: -1- AC_SUBST_TRACE([GENCAT])
-m4trace:configure.in:670: -1- m4_pattern_allow([^GENCAT$])
-m4trace:configure.in:670: -1- AC_SUBST([INTLOBJS])
-m4trace:configure.in:670: -1- AC_SUBST_TRACE([INTLOBJS])
-m4trace:configure.in:670: -1- m4_pattern_allow([^INTLOBJS$])
-m4trace:configure.in:670: -1- AC_SUBST([INTL_LIBTOOL_SUFFIX_PREFIX])
-m4trace:configure.in:670: -1- AC_SUBST_TRACE([INTL_LIBTOOL_SUFFIX_PREFIX])
-m4trace:configure.in:670: -1- m4_pattern_allow([^INTL_LIBTOOL_SUFFIX_PREFIX$])
-m4trace:configure.in:670: -1- AC_SUBST([INTLLIBS])
-m4trace:configure.in:670: -1- AC_SUBST_TRACE([INTLLIBS])
-m4trace:configure.in:670: -1- m4_pattern_allow([^INTLLIBS$])
-m4trace:configure.in:670: -1- AC_SUBST([LIBINTL])
-m4trace:configure.in:670: -1- AC_SUBST_TRACE([LIBINTL])
-m4trace:configure.in:670: -1- m4_pattern_allow([^LIBINTL$])
-m4trace:configure.in:670: -1- AC_SUBST([LTLIBINTL])
-m4trace:configure.in:670: -1- AC_SUBST_TRACE([LTLIBINTL])
-m4trace:configure.in:670: -1- m4_pattern_allow([^LTLIBINTL$])
-m4trace:configure.in:670: -1- AC_SUBST([POSUB])
-m4trace:configure.in:670: -1- AC_SUBST_TRACE([POSUB])
-m4trace:configure.in:670: -1- m4_pattern_allow([^POSUB$])
-m4trace:configure.in:673: -1- AH_OUTPUT([HAVE_DIRENT_H], [/* Define to 1 if you have the <dirent.h> header file, and it defines `DIR\'.
-   */
-@%:@undef HAVE_DIRENT_H])
-m4trace:configure.in:673: -1- AH_OUTPUT([HAVE_SYS_NDIR_H], [/* Define to 1 if you have the <sys/ndir.h> header file, and it defines `DIR\'.
-   */
-@%:@undef HAVE_SYS_NDIR_H])
-m4trace:configure.in:673: -1- AH_OUTPUT([HAVE_SYS_DIR_H], [/* Define to 1 if you have the <sys/dir.h> header file, and it defines `DIR\'.
-   */
-@%:@undef HAVE_SYS_DIR_H])
-m4trace:configure.in:673: -1- AH_OUTPUT([HAVE_NDIR_H], [/* Define to 1 if you have the <ndir.h> header file, and it defines `DIR\'. */
-@%:@undef HAVE_NDIR_H])
-m4trace:configure.in:674: -1- AC_DEFINE_TRACE_LITERAL([TIME_WITH_SYS_TIME])
-m4trace:configure.in:674: -1- m4_pattern_allow([^TIME_WITH_SYS_TIME$])
-m4trace:configure.in:674: -1- AH_OUTPUT([TIME_WITH_SYS_TIME], [/* Define to 1 if you can safely include both <sys/time.h> and <time.h>. */
-@%:@undef TIME_WITH_SYS_TIME])
-m4trace:configure.in:676: -1- AH_OUTPUT([HAVE_INTTYPES_H], [/* Define to 1 if you have the <inttypes.h> header file. */
-@%:@undef HAVE_INTTYPES_H])
-m4trace:configure.in:676: -1- AC_DEFINE_TRACE_LITERAL([HAVE_INTTYPES_H])
-m4trace:configure.in:676: -1- m4_pattern_allow([^HAVE_INTTYPES_H$])
-m4trace:configure.in:678: -1- AH_OUTPUT([HAVE_UNISTD_H], [/* Define to 1 if you have the <unistd.h> header file. */
-@%:@undef HAVE_UNISTD_H])
-m4trace:configure.in:678: -1- AH_OUTPUT([HAVE_STDLIB_H], [/* Define to 1 if you have the <stdlib.h> header file. */
-@%:@undef HAVE_STDLIB_H])
-m4trace:configure.in:678: -1- AH_OUTPUT([HAVE_STDARG_H], [/* Define to 1 if you have the <stdarg.h> header file. */
-@%:@undef HAVE_STDARG_H])
-m4trace:configure.in:678: -1- AH_OUTPUT([HAVE_VARARGS_H], [/* Define to 1 if you have the <varargs.h> header file. */
-@%:@undef HAVE_VARARGS_H])
-m4trace:configure.in:678: -1- AH_OUTPUT([HAVE_LIMITS_H], [/* Define to 1 if you have the <limits.h> header file. */
-@%:@undef HAVE_LIMITS_H])
-m4trace:configure.in:678: -1- AH_OUTPUT([HAVE_STRING_H], [/* Define to 1 if you have the <string.h> header file. */
-@%:@undef HAVE_STRING_H])
-m4trace:configure.in:678: -1- AH_OUTPUT([HAVE_MEMORY_H], [/* Define to 1 if you have the <memory.h> header file. */
-@%:@undef HAVE_MEMORY_H])
-m4trace:configure.in:678: -1- AH_OUTPUT([HAVE_LOCALE_H], [/* Define to 1 if you have the <locale.h> header file. */
-@%:@undef HAVE_LOCALE_H])
-m4trace:configure.in:678: -1- AH_OUTPUT([HAVE_TERMCAP_H], [/* Define to 1 if you have the <termcap.h> header file. */
-@%:@undef HAVE_TERMCAP_H])
-m4trace:configure.in:678: -1- AH_OUTPUT([HAVE_TERMIO_H], [/* Define to 1 if you have the <termio.h> header file. */
-@%:@undef HAVE_TERMIO_H])
-m4trace:configure.in:678: -1- AH_OUTPUT([HAVE_TERMIOS_H], [/* Define to 1 if you have the <termios.h> header file. */
-@%:@undef HAVE_TERMIOS_H])
-m4trace:configure.in:678: -1- AH_OUTPUT([HAVE_DLFCN_H], [/* Define to 1 if you have the <dlfcn.h> header file. */
-@%:@undef HAVE_DLFCN_H])
-m4trace:configure.in:678: -1- AH_OUTPUT([HAVE_STDBOOL_H], [/* Define to 1 if you have the <stdbool.h> header file. */
-@%:@undef HAVE_STDBOOL_H])
-m4trace:configure.in:678: -1- AH_OUTPUT([HAVE_STDDEF_H], [/* Define to 1 if you have the <stddef.h> header file. */
-@%:@undef HAVE_STDDEF_H])
-m4trace:configure.in:678: -1- AH_OUTPUT([HAVE_STDINT_H], [/* Define to 1 if you have the <stdint.h> header file. */
-@%:@undef HAVE_STDINT_H])
-m4trace:configure.in:678: -1- AH_OUTPUT([HAVE_NETDB_H], [/* Define to 1 if you have the <netdb.h> header file. */
-@%:@undef HAVE_NETDB_H])
-m4trace:configure.in:678: -1- AH_OUTPUT([HAVE_PWD_H], [/* Define to 1 if you have the <pwd.h> header file. */
-@%:@undef HAVE_PWD_H])
-m4trace:configure.in:678: -1- AH_OUTPUT([HAVE_GRP_H], [/* Define to 1 if you have the <grp.h> header file. */
-@%:@undef HAVE_GRP_H])
-m4trace:configure.in:678: -1- AH_OUTPUT([HAVE_STRINGS_H], [/* Define to 1 if you have the <strings.h> header file. */
-@%:@undef HAVE_STRINGS_H])
-m4trace:configure.in:678: -1- AH_OUTPUT([HAVE_REGEX_H], [/* Define to 1 if you have the <regex.h> header file. */
-@%:@undef HAVE_REGEX_H])
-m4trace:configure.in:678: -1- AH_OUTPUT([HAVE_SYSLOG_H], [/* Define to 1 if you have the <syslog.h> header file. */
-@%:@undef HAVE_SYSLOG_H])
-m4trace:configure.in:678: -1- AH_OUTPUT([HAVE_ULIMIT_H], [/* Define to 1 if you have the <ulimit.h> header file. */
-@%:@undef HAVE_ULIMIT_H])
-m4trace:configure.in:682: -1- AH_OUTPUT([HAVE_SYS_PTE_H], [/* Define to 1 if you have the <sys/pte.h> header file. */
-@%:@undef HAVE_SYS_PTE_H])
-m4trace:configure.in:682: -1- AH_OUTPUT([HAVE_SYS_STREAM_H], [/* Define to 1 if you have the <sys/stream.h> header file. */
-@%:@undef HAVE_SYS_STREAM_H])
-m4trace:configure.in:682: -1- AH_OUTPUT([HAVE_SYS_SELECT_H], [/* Define to 1 if you have the <sys/select.h> header file. */
-@%:@undef HAVE_SYS_SELECT_H])
-m4trace:configure.in:682: -1- AH_OUTPUT([HAVE_SYS_FILE_H], [/* Define to 1 if you have the <sys/file.h> header file. */
-@%:@undef HAVE_SYS_FILE_H])
-m4trace:configure.in:682: -1- AH_OUTPUT([HAVE_SYS_RESOURCE_H], [/* Define to 1 if you have the <sys/resource.h> header file. */
-@%:@undef HAVE_SYS_RESOURCE_H])
-m4trace:configure.in:682: -1- AH_OUTPUT([HAVE_SYS_PARAM_H], [/* Define to 1 if you have the <sys/param.h> header file. */
-@%:@undef HAVE_SYS_PARAM_H])
-m4trace:configure.in:682: -1- AH_OUTPUT([HAVE_SYS_SOCKET_H], [/* Define to 1 if you have the <sys/socket.h> header file. */
-@%:@undef HAVE_SYS_SOCKET_H])
-m4trace:configure.in:682: -1- AH_OUTPUT([HAVE_SYS_STAT_H], [/* Define to 1 if you have the <sys/stat.h> header file. */
-@%:@undef HAVE_SYS_STAT_H])
-m4trace:configure.in:682: -1- AH_OUTPUT([HAVE_SYS_TIME_H], [/* Define to 1 if you have the <sys/time.h> header file. */
-@%:@undef HAVE_SYS_TIME_H])
-m4trace:configure.in:682: -1- AH_OUTPUT([HAVE_SYS_TIMES_H], [/* Define to 1 if you have the <sys/times.h> header file. */
-@%:@undef HAVE_SYS_TIMES_H])
-m4trace:configure.in:682: -1- AH_OUTPUT([HAVE_SYS_TYPES_H], [/* Define to 1 if you have the <sys/types.h> header file. */
-@%:@undef HAVE_SYS_TYPES_H])
-m4trace:configure.in:682: -1- AH_OUTPUT([HAVE_SYS_WAIT_H], [/* Define to 1 if you have the <sys/wait.h> header file. */
-@%:@undef HAVE_SYS_WAIT_H])
-m4trace:configure.in:685: -1- AH_OUTPUT([HAVE_NETINET_IN_H], [/* Define to 1 if you have the <netinet/in.h> header file. */
-@%:@undef HAVE_NETINET_IN_H])
-m4trace:configure.in:685: -1- AH_OUTPUT([HAVE_ARPA_INET_H], [/* Define to 1 if you have the <arpa/inet.h> header file. */
-@%:@undef HAVE_ARPA_INET_H])
-m4trace:configure.in:696: -1- AC_DEFINE_TRACE_LITERAL([HAVE_ALLOCA_H])
-m4trace:configure.in:696: -1- m4_pattern_allow([^HAVE_ALLOCA_H$])
-m4trace:configure.in:696: -1- AH_OUTPUT([HAVE_ALLOCA_H], [/* Define to 1 if you have <alloca.h> and it should be used (not on Ultrix).
-   */
-@%:@undef HAVE_ALLOCA_H])
-m4trace:configure.in:696: -1- AC_DEFINE_TRACE_LITERAL([HAVE_ALLOCA])
-m4trace:configure.in:696: -1- m4_pattern_allow([^HAVE_ALLOCA$])
-m4trace:configure.in:696: -1- AH_OUTPUT([HAVE_ALLOCA], [/* Define to 1 if you have `alloca\', as a function or macro. */
-@%:@undef HAVE_ALLOCA])
-m4trace:configure.in:696: -1- AC_LIBSOURCE([alloca.c])
-m4trace:configure.in:696: -1- AC_SUBST([ALLOCA], [\${LIBOBJDIR}alloca.$ac_objext])
-m4trace:configure.in:696: -1- AC_SUBST_TRACE([ALLOCA])
-m4trace:configure.in:696: -1- m4_pattern_allow([^ALLOCA$])
-m4trace:configure.in:696: -1- AC_DEFINE_TRACE_LITERAL([C_ALLOCA])
-m4trace:configure.in:696: -1- m4_pattern_allow([^C_ALLOCA$])
-m4trace:configure.in:696: -1- AH_OUTPUT([C_ALLOCA], [/* Define to 1 if using `alloca.c\'. */
-@%:@undef C_ALLOCA])
-m4trace:configure.in:696: -1- AC_DEFINE_TRACE_LITERAL([CRAY_STACKSEG_END])
-m4trace:configure.in:696: -1- m4_pattern_allow([^CRAY_STACKSEG_END$])
-m4trace:configure.in:696: -1- AH_OUTPUT([CRAY_STACKSEG_END], [/* Define to one of `_getb67\', `GETB67\', `getb67\' for Cray-2 and Cray-YMP
-   systems. This function is required for `alloca.c\' support on those systems.
-   */
-@%:@undef CRAY_STACKSEG_END])
-m4trace:configure.in:696: -1- AH_OUTPUT([STACK_DIRECTION], [/* If using the C implementation of alloca, define if you know the
-   direction of stack growth for your system; otherwise it will be
-   automatically deduced at runtime.
-       STACK_DIRECTION > 0 => grows toward higher addresses
-       STACK_DIRECTION < 0 => grows toward lower addresses
-       STACK_DIRECTION = 0 => direction of growth unknown */
-@%:@undef STACK_DIRECTION])
-m4trace:configure.in:696: -1- AC_DEFINE_TRACE_LITERAL([STACK_DIRECTION])
-m4trace:configure.in:696: -1- m4_pattern_allow([^STACK_DIRECTION$])
-m4trace:configure.in:697: -1- AC_DEFINE_TRACE_LITERAL([GETPGRP_VOID])
-m4trace:configure.in:697: -1- m4_pattern_allow([^GETPGRP_VOID$])
-m4trace:configure.in:697: -1- AH_OUTPUT([GETPGRP_VOID], [/* Define to 1 if the `getpgrp\' function requires zero arguments. */
-@%:@undef GETPGRP_VOID])
-m4trace:configure.in:698: -1- _m4_warn([obsolete], [The macro `AC_FUNC_SETVBUF_REVERSED' is obsolete.  Remove it and all references to SETVBUF_REVERSED.], [../../lib/autoconf/functions.m4:1714: AC_FUNC_SETVBUF_REVERSED is expanded from...
-configure.in:698: the top level])
-m4trace:configure.in:699: -1- AH_OUTPUT([HAVE_VPRINTF], [/* Define to 1 if you have the `vprintf\' function. */
-@%:@undef HAVE_VPRINTF])
-m4trace:configure.in:699: -1- AC_DEFINE_TRACE_LITERAL([HAVE_VPRINTF])
-m4trace:configure.in:699: -1- m4_pattern_allow([^HAVE_VPRINTF$])
-m4trace:configure.in:699: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DOPRNT])
-m4trace:configure.in:699: -1- m4_pattern_allow([^HAVE_DOPRNT$])
-m4trace:configure.in:699: -1- AH_OUTPUT([HAVE_DOPRNT], [/* Define to 1 if you don\'t have `vprintf\' but do have `_doprnt.\' */
-@%:@undef HAVE_DOPRNT])
-m4trace:configure.in:700: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STRCOLL])
-m4trace:configure.in:700: -1- m4_pattern_allow([^HAVE_STRCOLL$])
-m4trace:configure.in:700: -1- AH_OUTPUT([HAVE_STRCOLL], [/* Define to 1 if you have the `strcoll\' function and it is properly defined.
-   */
-@%:@undef HAVE_STRCOLL])
-m4trace:configure.in:721: -1- AC_DEFINE_TRACE_LITERAL([HAVE_VPRINTF])
-m4trace:configure.in:721: -1- m4_pattern_allow([^HAVE_VPRINTF$])
-m4trace:configure.in:726: -1- AC_SUBST([LIB@&t@OBJS], ["$LIB@&t@OBJS vprint.$ac_objext"])
-m4trace:configure.in:726: -1- AC_SUBST_TRACE([LIB@&t@OBJS])
-m4trace:configure.in:726: -1- m4_pattern_allow([^LIB@&t@OBJS$])
-m4trace:configure.in:726: -1- AC_LIBSOURCE([vprint.c])
-m4trace:configure.in:730: -1- _m4_warn([obsolete], [The macro `AC_TYPE_SIGNAL' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/types.m4:738: AC_TYPE_SIGNAL is expanded from...
-configure.in:730: the top level])
-m4trace:configure.in:730: -1- AC_DEFINE_TRACE_LITERAL([RETSIGTYPE])
-m4trace:configure.in:730: -1- m4_pattern_allow([^RETSIGTYPE$])
-m4trace:configure.in:730: -1- AH_OUTPUT([RETSIGTYPE], [/* Define as the return type of signal handlers (`int\' or `void\'). */
-@%:@undef RETSIGTYPE])
-m4trace:configure.in:733: -2- AC_DEFINE_TRACE_LITERAL([HAVE_SETOSTYPE])
-m4trace:configure.in:733: -2- m4_pattern_allow([^HAVE_SETOSTYPE$])
-m4trace:configure.in:734: -2- AC_DEFINE_TRACE_LITERAL([HAVE_WAIT3])
-m4trace:configure.in:734: -2- m4_pattern_allow([^HAVE_WAIT3$])
-m4trace:configure.in:737: -2- AC_DEFINE_TRACE_LITERAL([HAVE_MKFIFO])
-m4trace:configure.in:737: -2- m4_pattern_allow([^HAVE_MKFIFO$])
-m4trace:configure.in:737: -2- AC_DEFINE_TRACE_LITERAL([MKFIFO_MISSING])
-m4trace:configure.in:737: -2- m4_pattern_allow([^MKFIFO_MISSING$])
-m4trace:configure.in:740: -1- AH_OUTPUT([HAVE_DUP2], [/* Define to 1 if you have the `dup2\' function. */
-@%:@undef HAVE_DUP2])
-m4trace:configure.in:740: -1- AH_OUTPUT([HAVE_EACCESS], [/* Define to 1 if you have the `eaccess\' function. */
-@%:@undef HAVE_EACCESS])
-m4trace:configure.in:740: -1- AH_OUTPUT([HAVE_FCNTL], [/* Define to 1 if you have the `fcntl\' function. */
-@%:@undef HAVE_FCNTL])
-m4trace:configure.in:740: -1- AH_OUTPUT([HAVE_GETDTABLESIZE], [/* Define to 1 if you have the `getdtablesize\' function. */
-@%:@undef HAVE_GETDTABLESIZE])
-m4trace:configure.in:740: -1- AH_OUTPUT([HAVE_GETGROUPS], [/* Define to 1 if you have the `getgroups\' function. */
-@%:@undef HAVE_GETGROUPS])
-m4trace:configure.in:740: -1- AH_OUTPUT([HAVE_GETHOSTNAME], [/* Define to 1 if you have the `gethostname\' function. */
-@%:@undef HAVE_GETHOSTNAME])
-m4trace:configure.in:740: -1- AH_OUTPUT([HAVE_GETPAGESIZE], [/* Define to 1 if you have the `getpagesize\' function. */
-@%:@undef HAVE_GETPAGESIZE])
-m4trace:configure.in:740: -1- AH_OUTPUT([HAVE_GETPEERNAME], [/* Define to 1 if you have the `getpeername\' function. */
-@%:@undef HAVE_GETPEERNAME])
-m4trace:configure.in:740: -1- AH_OUTPUT([HAVE_GETRLIMIT], [/* Define to 1 if you have the `getrlimit\' function. */
-@%:@undef HAVE_GETRLIMIT])
-m4trace:configure.in:740: -1- AH_OUTPUT([HAVE_GETRUSAGE], [/* Define to 1 if you have the `getrusage\' function. */
-@%:@undef HAVE_GETRUSAGE])
-m4trace:configure.in:740: -1- AH_OUTPUT([HAVE_GETTIMEOFDAY], [/* Define to 1 if you have the `gettimeofday\' function. */
-@%:@undef HAVE_GETTIMEOFDAY])
-m4trace:configure.in:740: -1- AH_OUTPUT([HAVE_KILL], [/* Define to 1 if you have the `kill\' function. */
-@%:@undef HAVE_KILL])
-m4trace:configure.in:740: -1- AH_OUTPUT([HAVE_KILLPG], [/* Define to 1 if you have the `killpg\' function. */
-@%:@undef HAVE_KILLPG])
-m4trace:configure.in:740: -1- AH_OUTPUT([HAVE_LSTAT], [/* Define to 1 if you have the `lstat\' function. */
-@%:@undef HAVE_LSTAT])
-m4trace:configure.in:740: -1- AH_OUTPUT([HAVE_READLINK], [/* Define to 1 if you have the `readlink\' function. */
-@%:@undef HAVE_READLINK])
-m4trace:configure.in:740: -1- AH_OUTPUT([HAVE_SBRK], [/* Define to 1 if you have the `sbrk\' function. */
-@%:@undef HAVE_SBRK])
-m4trace:configure.in:740: -1- AH_OUTPUT([HAVE_SELECT], [/* Define to 1 if you have the `select\' function. */
-@%:@undef HAVE_SELECT])
-m4trace:configure.in:740: -1- AH_OUTPUT([HAVE_SETDTABLESIZE], [/* Define to 1 if you have the `setdtablesize\' function. */
-@%:@undef HAVE_SETDTABLESIZE])
-m4trace:configure.in:740: -1- AH_OUTPUT([HAVE_SETITIMER], [/* Define to 1 if you have the `setitimer\' function. */
-@%:@undef HAVE_SETITIMER])
-m4trace:configure.in:740: -1- AH_OUTPUT([HAVE_TCGETPGRP], [/* Define to 1 if you have the `tcgetpgrp\' function. */
-@%:@undef HAVE_TCGETPGRP])
-m4trace:configure.in:740: -1- AH_OUTPUT([HAVE_UNAME], [/* Define to 1 if you have the `uname\' function. */
-@%:@undef HAVE_UNAME])
-m4trace:configure.in:740: -1- AH_OUTPUT([HAVE_ULIMIT], [/* Define to 1 if you have the `ulimit\' function. */
-@%:@undef HAVE_ULIMIT])
-m4trace:configure.in:740: -1- AH_OUTPUT([HAVE_WAITPID], [/* Define to 1 if you have the `waitpid\' function. */
-@%:@undef HAVE_WAITPID])
-m4trace:configure.in:744: -1- AH_OUTPUT([HAVE_RENAME], [/* Define to 1 if you have the `rename\' function. */
-@%:@undef HAVE_RENAME])
-m4trace:configure.in:744: -1- AC_DEFINE_TRACE_LITERAL([HAVE_RENAME])
-m4trace:configure.in:744: -1- m4_pattern_allow([^HAVE_RENAME$])
-m4trace:configure.in:744: -1- AC_SUBST([LIB@&t@OBJS], ["$LIB@&t@OBJS rename.$ac_objext"])
-m4trace:configure.in:744: -1- AC_SUBST_TRACE([LIB@&t@OBJS])
-m4trace:configure.in:744: -1- m4_pattern_allow([^LIB@&t@OBJS$])
-m4trace:configure.in:744: -1- AC_LIBSOURCE([rename.c])
-m4trace:configure.in:747: -1- AH_OUTPUT([HAVE_BCOPY], [/* Define to 1 if you have the `bcopy\' function. */
-@%:@undef HAVE_BCOPY])
-m4trace:configure.in:747: -1- AH_OUTPUT([HAVE_BZERO], [/* Define to 1 if you have the `bzero\' function. */
-@%:@undef HAVE_BZERO])
-m4trace:configure.in:747: -1- AH_OUTPUT([HAVE_CONFSTR], [/* Define to 1 if you have the `confstr\' function. */
-@%:@undef HAVE_CONFSTR])
-m4trace:configure.in:747: -1- AH_OUTPUT([HAVE_FACCESSAT], [/* Define to 1 if you have the `faccessat\' function. */
-@%:@undef HAVE_FACCESSAT])
-m4trace:configure.in:747: -1- AH_OUTPUT([HAVE_FNMATCH], [/* Define to 1 if you have the `fnmatch\' function. */
-@%:@undef HAVE_FNMATCH])
-m4trace:configure.in:747: -1- AH_OUTPUT([HAVE_GETADDRINFO], [/* Define to 1 if you have the `getaddrinfo\' function. */
-@%:@undef HAVE_GETADDRINFO])
-m4trace:configure.in:747: -1- AH_OUTPUT([HAVE_GETHOSTBYNAME], [/* Define to 1 if you have the `gethostbyname\' function. */
-@%:@undef HAVE_GETHOSTBYNAME])
-m4trace:configure.in:747: -1- AH_OUTPUT([HAVE_GETSERVBYNAME], [/* Define to 1 if you have the `getservbyname\' function. */
-@%:@undef HAVE_GETSERVBYNAME])
-m4trace:configure.in:747: -1- AH_OUTPUT([HAVE_GETSERVENT], [/* Define to 1 if you have the `getservent\' function. */
-@%:@undef HAVE_GETSERVENT])
-m4trace:configure.in:747: -1- AH_OUTPUT([HAVE_INET_ATON], [/* Define to 1 if you have the `inet_aton\' function. */
-@%:@undef HAVE_INET_ATON])
-m4trace:configure.in:747: -1- AH_OUTPUT([HAVE_IMAXDIV], [/* Define to 1 if you have the `imaxdiv\' function. */
-@%:@undef HAVE_IMAXDIV])
-m4trace:configure.in:747: -1- AH_OUTPUT([HAVE_MEMMOVE], [/* Define to 1 if you have the `memmove\' function. */
-@%:@undef HAVE_MEMMOVE])
-m4trace:configure.in:747: -1- AH_OUTPUT([HAVE_PATHCONF], [/* Define to 1 if you have the `pathconf\' function. */
-@%:@undef HAVE_PATHCONF])
-m4trace:configure.in:747: -1- AH_OUTPUT([HAVE_PUTENV], [/* Define to 1 if you have the `putenv\' function. */
-@%:@undef HAVE_PUTENV])
-m4trace:configure.in:747: -1- AH_OUTPUT([HAVE_RAISE], [/* Define to 1 if you have the `raise\' function. */
-@%:@undef HAVE_RAISE])
-m4trace:configure.in:747: -1- AH_OUTPUT([HAVE_REGCOMP], [/* Define to 1 if you have the `regcomp\' function. */
-@%:@undef HAVE_REGCOMP])
-m4trace:configure.in:747: -1- AH_OUTPUT([HAVE_REGEXEC], [/* Define to 1 if you have the `regexec\' function. */
-@%:@undef HAVE_REGEXEC])
-m4trace:configure.in:747: -1- AH_OUTPUT([HAVE_SETENV], [/* Define to 1 if you have the `setenv\' function. */
-@%:@undef HAVE_SETENV])
-m4trace:configure.in:747: -1- AH_OUTPUT([HAVE_SETLINEBUF], [/* Define to 1 if you have the `setlinebuf\' function. */
-@%:@undef HAVE_SETLINEBUF])
-m4trace:configure.in:747: -1- AH_OUTPUT([HAVE_SETLOCALE], [/* Define to 1 if you have the `setlocale\' function. */
-@%:@undef HAVE_SETLOCALE])
-m4trace:configure.in:747: -1- AH_OUTPUT([HAVE_SETVBUF], [/* Define to 1 if you have the `setvbuf\' function. */
-@%:@undef HAVE_SETVBUF])
-m4trace:configure.in:747: -1- AH_OUTPUT([HAVE_SIGINTERRUPT], [/* Define to 1 if you have the `siginterrupt\' function. */
-@%:@undef HAVE_SIGINTERRUPT])
-m4trace:configure.in:747: -1- AH_OUTPUT([HAVE_STRCHR], [/* Define to 1 if you have the `strchr\' function. */
-@%:@undef HAVE_STRCHR])
-m4trace:configure.in:747: -1- AH_OUTPUT([HAVE_SYSCONF], [/* Define to 1 if you have the `sysconf\' function. */
-@%:@undef HAVE_SYSCONF])
-m4trace:configure.in:747: -1- AH_OUTPUT([HAVE_SYSLOG], [/* Define to 1 if you have the `syslog\' function. */
-@%:@undef HAVE_SYSLOG])
-m4trace:configure.in:747: -1- AH_OUTPUT([HAVE_TCGETATTR], [/* Define to 1 if you have the `tcgetattr\' function. */
-@%:@undef HAVE_TCGETATTR])
-m4trace:configure.in:747: -1- AH_OUTPUT([HAVE_TIMES], [/* Define to 1 if you have the `times\' function. */
-@%:@undef HAVE_TIMES])
-m4trace:configure.in:747: -1- AH_OUTPUT([HAVE_TTYNAME], [/* Define to 1 if you have the `ttyname\' function. */
-@%:@undef HAVE_TTYNAME])
-m4trace:configure.in:747: -1- AH_OUTPUT([HAVE_TZSET], [/* Define to 1 if you have the `tzset\' function. */
-@%:@undef HAVE_TZSET])
-m4trace:configure.in:747: -1- AH_OUTPUT([HAVE_UNSETENV], [/* Define to 1 if you have the `unsetenv\' function. */
-@%:@undef HAVE_UNSETENV])
-m4trace:configure.in:753: -1- AH_OUTPUT([HAVE_VASPRINTF], [/* Define to 1 if you have the `vasprintf\' function. */
-@%:@undef HAVE_VASPRINTF])
-m4trace:configure.in:753: -1- AH_OUTPUT([HAVE_ASPRINTF], [/* Define to 1 if you have the `asprintf\' function. */
-@%:@undef HAVE_ASPRINTF])
-m4trace:configure.in:754: -1- AH_OUTPUT([HAVE_ISASCII], [/* Define to 1 if you have the `isascii\' function. */
-@%:@undef HAVE_ISASCII])
-m4trace:configure.in:754: -1- AH_OUTPUT([HAVE_ISBLANK], [/* Define to 1 if you have the `isblank\' function. */
-@%:@undef HAVE_ISBLANK])
-m4trace:configure.in:754: -1- AH_OUTPUT([HAVE_ISGRAPH], [/* Define to 1 if you have the `isgraph\' function. */
-@%:@undef HAVE_ISGRAPH])
-m4trace:configure.in:754: -1- AH_OUTPUT([HAVE_ISPRINT], [/* Define to 1 if you have the `isprint\' function. */
-@%:@undef HAVE_ISPRINT])
-m4trace:configure.in:754: -1- AH_OUTPUT([HAVE_ISSPACE], [/* Define to 1 if you have the `isspace\' function. */
-@%:@undef HAVE_ISSPACE])
-m4trace:configure.in:754: -1- AH_OUTPUT([HAVE_ISXDIGIT], [/* Define to 1 if you have the `isxdigit\' function. */
-@%:@undef HAVE_ISXDIGIT])
-m4trace:configure.in:755: -1- AH_OUTPUT([HAVE_GETPWENT], [/* Define to 1 if you have the `getpwent\' function. */
-@%:@undef HAVE_GETPWENT])
-m4trace:configure.in:755: -1- AH_OUTPUT([HAVE_GETPWNAM], [/* Define to 1 if you have the `getpwnam\' function. */
-@%:@undef HAVE_GETPWNAM])
-m4trace:configure.in:755: -1- AH_OUTPUT([HAVE_GETPWUID], [/* Define to 1 if you have the `getpwuid\' function. */
-@%:@undef HAVE_GETPWUID])
-m4trace:configure.in:756: -1- AH_OUTPUT([HAVE_GETCWD], [/* Define to 1 if you have the `getcwd\' function. */
-@%:@undef HAVE_GETCWD])
-m4trace:configure.in:756: -1- AC_DEFINE_TRACE_LITERAL([HAVE_GETCWD])
-m4trace:configure.in:756: -1- m4_pattern_allow([^HAVE_GETCWD$])
-m4trace:configure.in:756: -1- AC_SUBST([LIB@&t@OBJS], ["$LIB@&t@OBJS getcwd.$ac_objext"])
-m4trace:configure.in:756: -1- AC_SUBST_TRACE([LIB@&t@OBJS])
-m4trace:configure.in:756: -1- m4_pattern_allow([^LIB@&t@OBJS$])
-m4trace:configure.in:756: -1- AC_LIBSOURCE([getcwd.c])
-m4trace:configure.in:756: -1- AH_OUTPUT([HAVE_MEMSET], [/* Define to 1 if you have the `memset\' function. */
-@%:@undef HAVE_MEMSET])
-m4trace:configure.in:756: -1- AC_DEFINE_TRACE_LITERAL([HAVE_MEMSET])
-m4trace:configure.in:756: -1- m4_pattern_allow([^HAVE_MEMSET$])
-m4trace:configure.in:756: -1- AC_SUBST([LIB@&t@OBJS], ["$LIB@&t@OBJS memset.$ac_objext"])
-m4trace:configure.in:756: -1- AC_SUBST_TRACE([LIB@&t@OBJS])
-m4trace:configure.in:756: -1- m4_pattern_allow([^LIB@&t@OBJS$])
-m4trace:configure.in:756: -1- AC_LIBSOURCE([memset.c])
-m4trace:configure.in:757: -1- AH_OUTPUT([HAVE_STRCASECMP], [/* Define to 1 if you have the `strcasecmp\' function. */
-@%:@undef HAVE_STRCASECMP])
-m4trace:configure.in:757: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STRCASECMP])
-m4trace:configure.in:757: -1- m4_pattern_allow([^HAVE_STRCASECMP$])
-m4trace:configure.in:757: -1- AC_SUBST([LIB@&t@OBJS], ["$LIB@&t@OBJS strcasecmp.$ac_objext"])
-m4trace:configure.in:757: -1- AC_SUBST_TRACE([LIB@&t@OBJS])
-m4trace:configure.in:757: -1- m4_pattern_allow([^LIB@&t@OBJS$])
-m4trace:configure.in:757: -1- AC_LIBSOURCE([strcasecmp.c])
-m4trace:configure.in:757: -1- AH_OUTPUT([HAVE_STRCASESTR], [/* Define to 1 if you have the `strcasestr\' function. */
-@%:@undef HAVE_STRCASESTR])
-m4trace:configure.in:757: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STRCASESTR])
-m4trace:configure.in:757: -1- m4_pattern_allow([^HAVE_STRCASESTR$])
-m4trace:configure.in:757: -1- AC_SUBST([LIB@&t@OBJS], ["$LIB@&t@OBJS strcasestr.$ac_objext"])
-m4trace:configure.in:757: -1- AC_SUBST_TRACE([LIB@&t@OBJS])
-m4trace:configure.in:757: -1- m4_pattern_allow([^LIB@&t@OBJS$])
-m4trace:configure.in:757: -1- AC_LIBSOURCE([strcasestr.c])
-m4trace:configure.in:757: -1- AH_OUTPUT([HAVE_STRERROR], [/* Define to 1 if you have the `strerror\' function. */
-@%:@undef HAVE_STRERROR])
-m4trace:configure.in:757: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STRERROR])
-m4trace:configure.in:757: -1- m4_pattern_allow([^HAVE_STRERROR$])
-m4trace:configure.in:757: -1- AC_SUBST([LIB@&t@OBJS], ["$LIB@&t@OBJS strerror.$ac_objext"])
-m4trace:configure.in:757: -1- AC_SUBST_TRACE([LIB@&t@OBJS])
-m4trace:configure.in:757: -1- m4_pattern_allow([^LIB@&t@OBJS$])
-m4trace:configure.in:757: -1- AC_LIBSOURCE([strerror.c])
-m4trace:configure.in:757: -1- AH_OUTPUT([HAVE_STRFTIME], [/* Define to 1 if you have the `strftime\' function. */
-@%:@undef HAVE_STRFTIME])
-m4trace:configure.in:757: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STRFTIME])
-m4trace:configure.in:757: -1- m4_pattern_allow([^HAVE_STRFTIME$])
-m4trace:configure.in:757: -1- AC_SUBST([LIB@&t@OBJS], ["$LIB@&t@OBJS strftime.$ac_objext"])
-m4trace:configure.in:757: -1- AC_SUBST_TRACE([LIB@&t@OBJS])
-m4trace:configure.in:757: -1- m4_pattern_allow([^LIB@&t@OBJS$])
-m4trace:configure.in:757: -1- AC_LIBSOURCE([strftime.c])
-m4trace:configure.in:757: -1- AH_OUTPUT([HAVE_STRNLEN], [/* Define to 1 if you have the `strnlen\' function. */
-@%:@undef HAVE_STRNLEN])
-m4trace:configure.in:757: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STRNLEN])
-m4trace:configure.in:757: -1- m4_pattern_allow([^HAVE_STRNLEN$])
-m4trace:configure.in:757: -1- AC_SUBST([LIB@&t@OBJS], ["$LIB@&t@OBJS strnlen.$ac_objext"])
-m4trace:configure.in:757: -1- AC_SUBST_TRACE([LIB@&t@OBJS])
-m4trace:configure.in:757: -1- m4_pattern_allow([^LIB@&t@OBJS$])
-m4trace:configure.in:757: -1- AC_LIBSOURCE([strnlen.c])
-m4trace:configure.in:757: -1- AH_OUTPUT([HAVE_STRPBRK], [/* Define to 1 if you have the `strpbrk\' function. */
-@%:@undef HAVE_STRPBRK])
-m4trace:configure.in:757: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STRPBRK])
-m4trace:configure.in:757: -1- m4_pattern_allow([^HAVE_STRPBRK$])
-m4trace:configure.in:757: -1- AC_SUBST([LIB@&t@OBJS], ["$LIB@&t@OBJS strpbrk.$ac_objext"])
-m4trace:configure.in:757: -1- AC_SUBST_TRACE([LIB@&t@OBJS])
-m4trace:configure.in:757: -1- m4_pattern_allow([^LIB@&t@OBJS$])
-m4trace:configure.in:757: -1- AC_LIBSOURCE([strpbrk.c])
-m4trace:configure.in:757: -1- AH_OUTPUT([HAVE_STRSTR], [/* Define to 1 if you have the `strstr\' function. */
-@%:@undef HAVE_STRSTR])
-m4trace:configure.in:757: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STRSTR])
-m4trace:configure.in:757: -1- m4_pattern_allow([^HAVE_STRSTR$])
-m4trace:configure.in:757: -1- AC_SUBST([LIB@&t@OBJS], ["$LIB@&t@OBJS strstr.$ac_objext"])
-m4trace:configure.in:757: -1- AC_SUBST_TRACE([LIB@&t@OBJS])
-m4trace:configure.in:757: -1- m4_pattern_allow([^LIB@&t@OBJS$])
-m4trace:configure.in:757: -1- AC_LIBSOURCE([strstr.c])
-m4trace:configure.in:758: -1- AH_OUTPUT([HAVE_STRTOD], [/* Define to 1 if you have the `strtod\' function. */
-@%:@undef HAVE_STRTOD])
-m4trace:configure.in:758: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STRTOD])
-m4trace:configure.in:758: -1- m4_pattern_allow([^HAVE_STRTOD$])
-m4trace:configure.in:758: -1- AC_SUBST([LIB@&t@OBJS], ["$LIB@&t@OBJS strtod.$ac_objext"])
-m4trace:configure.in:758: -1- AC_SUBST_TRACE([LIB@&t@OBJS])
-m4trace:configure.in:758: -1- m4_pattern_allow([^LIB@&t@OBJS$])
-m4trace:configure.in:758: -1- AC_LIBSOURCE([strtod.c])
-m4trace:configure.in:758: -1- AH_OUTPUT([HAVE_STRTOL], [/* Define to 1 if you have the `strtol\' function. */
-@%:@undef HAVE_STRTOL])
-m4trace:configure.in:758: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STRTOL])
-m4trace:configure.in:758: -1- m4_pattern_allow([^HAVE_STRTOL$])
-m4trace:configure.in:758: -1- AC_SUBST([LIB@&t@OBJS], ["$LIB@&t@OBJS strtol.$ac_objext"])
-m4trace:configure.in:758: -1- AC_SUBST_TRACE([LIB@&t@OBJS])
-m4trace:configure.in:758: -1- m4_pattern_allow([^LIB@&t@OBJS$])
-m4trace:configure.in:758: -1- AC_LIBSOURCE([strtol.c])
-m4trace:configure.in:758: -1- AH_OUTPUT([HAVE_STRTOUL], [/* Define to 1 if you have the `strtoul\' function. */
-@%:@undef HAVE_STRTOUL])
-m4trace:configure.in:758: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STRTOUL])
-m4trace:configure.in:758: -1- m4_pattern_allow([^HAVE_STRTOUL$])
-m4trace:configure.in:758: -1- AC_SUBST([LIB@&t@OBJS], ["$LIB@&t@OBJS strtoul.$ac_objext"])
-m4trace:configure.in:758: -1- AC_SUBST_TRACE([LIB@&t@OBJS])
-m4trace:configure.in:758: -1- m4_pattern_allow([^LIB@&t@OBJS$])
-m4trace:configure.in:758: -1- AC_LIBSOURCE([strtoul.c])
-m4trace:configure.in:758: -1- AH_OUTPUT([HAVE_STRTOLL], [/* Define to 1 if you have the `strtoll\' function. */
-@%:@undef HAVE_STRTOLL])
-m4trace:configure.in:758: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STRTOLL])
-m4trace:configure.in:758: -1- m4_pattern_allow([^HAVE_STRTOLL$])
-m4trace:configure.in:758: -1- AC_SUBST([LIB@&t@OBJS], ["$LIB@&t@OBJS strtoll.$ac_objext"])
-m4trace:configure.in:758: -1- AC_SUBST_TRACE([LIB@&t@OBJS])
-m4trace:configure.in:758: -1- m4_pattern_allow([^LIB@&t@OBJS$])
-m4trace:configure.in:758: -1- AC_LIBSOURCE([strtoll.c])
-m4trace:configure.in:758: -1- AH_OUTPUT([HAVE_STRTOULL], [/* Define to 1 if you have the `strtoull\' function. */
-@%:@undef HAVE_STRTOULL])
-m4trace:configure.in:758: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STRTOULL])
-m4trace:configure.in:758: -1- m4_pattern_allow([^HAVE_STRTOULL$])
-m4trace:configure.in:758: -1- AC_SUBST([LIB@&t@OBJS], ["$LIB@&t@OBJS strtoull.$ac_objext"])
-m4trace:configure.in:758: -1- AC_SUBST_TRACE([LIB@&t@OBJS])
-m4trace:configure.in:758: -1- m4_pattern_allow([^LIB@&t@OBJS$])
-m4trace:configure.in:758: -1- AC_LIBSOURCE([strtoull.c])
-m4trace:configure.in:758: -1- AH_OUTPUT([HAVE_STRTOIMAX], [/* Define to 1 if you have the `strtoimax\' function. */
-@%:@undef HAVE_STRTOIMAX])
-m4trace:configure.in:758: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STRTOIMAX])
-m4trace:configure.in:758: -1- m4_pattern_allow([^HAVE_STRTOIMAX$])
-m4trace:configure.in:758: -1- AC_SUBST([LIB@&t@OBJS], ["$LIB@&t@OBJS strtoimax.$ac_objext"])
-m4trace:configure.in:758: -1- AC_SUBST_TRACE([LIB@&t@OBJS])
-m4trace:configure.in:758: -1- m4_pattern_allow([^LIB@&t@OBJS$])
-m4trace:configure.in:758: -1- AC_LIBSOURCE([strtoimax.c])
-m4trace:configure.in:758: -1- AH_OUTPUT([HAVE_STRTOUMAX], [/* Define to 1 if you have the `strtoumax\' function. */
-@%:@undef HAVE_STRTOUMAX])
-m4trace:configure.in:758: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STRTOUMAX])
-m4trace:configure.in:758: -1- m4_pattern_allow([^HAVE_STRTOUMAX$])
-m4trace:configure.in:758: -1- AC_SUBST([LIB@&t@OBJS], ["$LIB@&t@OBJS strtoumax.$ac_objext"])
-m4trace:configure.in:758: -1- AC_SUBST_TRACE([LIB@&t@OBJS])
-m4trace:configure.in:758: -1- m4_pattern_allow([^LIB@&t@OBJS$])
-m4trace:configure.in:758: -1- AC_LIBSOURCE([strtoumax.c])
-m4trace:configure.in:759: -1- AH_OUTPUT([HAVE_DPRINTF], [/* Define to 1 if you have the `dprintf\' function. */
-@%:@undef HAVE_DPRINTF])
-m4trace:configure.in:759: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DPRINTF])
-m4trace:configure.in:759: -1- m4_pattern_allow([^HAVE_DPRINTF$])
-m4trace:configure.in:759: -1- AC_SUBST([LIB@&t@OBJS], ["$LIB@&t@OBJS dprintf.$ac_objext"])
-m4trace:configure.in:759: -1- AC_SUBST_TRACE([LIB@&t@OBJS])
-m4trace:configure.in:759: -1- m4_pattern_allow([^LIB@&t@OBJS$])
-m4trace:configure.in:759: -1- AC_LIBSOURCE([dprintf.c])
-m4trace:configure.in:760: -1- AH_OUTPUT([HAVE_STRCHRNUL], [/* Define to 1 if you have the `strchrnul\' function. */
-@%:@undef HAVE_STRCHRNUL])
-m4trace:configure.in:760: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STRCHRNUL])
-m4trace:configure.in:760: -1- m4_pattern_allow([^HAVE_STRCHRNUL$])
-m4trace:configure.in:760: -1- AC_SUBST([LIB@&t@OBJS], ["$LIB@&t@OBJS strchrnul.$ac_objext"])
-m4trace:configure.in:760: -1- AC_SUBST_TRACE([LIB@&t@OBJS])
-m4trace:configure.in:760: -1- m4_pattern_allow([^LIB@&t@OBJS$])
-m4trace:configure.in:760: -1- AC_LIBSOURCE([strchrnul.c])
-m4trace:configure.in:762: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DECL_AUDIT_USER_TTY])
-m4trace:configure.in:762: -1- m4_pattern_allow([^HAVE_DECL_AUDIT_USER_TTY$])
-m4trace:configure.in:762: -1- AH_OUTPUT([HAVE_DECL_AUDIT_USER_TTY], [/* Define to 1 if you have the declaration of `AUDIT_USER_TTY\', and to 0 if
-   you don\'t. */
-@%:@undef HAVE_DECL_AUDIT_USER_TTY])
-m4trace:configure.in:764: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DECL_CONFSTR])
-m4trace:configure.in:764: -1- m4_pattern_allow([^HAVE_DECL_CONFSTR$])
-m4trace:configure.in:764: -1- AH_OUTPUT([HAVE_DECL_CONFSTR], [/* Define to 1 if you have the declaration of `confstr\', and to 0 if you
-   don\'t. */
-@%:@undef HAVE_DECL_CONFSTR])
-m4trace:configure.in:765: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DECL_PRINTF])
-m4trace:configure.in:765: -1- m4_pattern_allow([^HAVE_DECL_PRINTF$])
-m4trace:configure.in:765: -1- AH_OUTPUT([HAVE_DECL_PRINTF], [/* Define to 1 if you have the declaration of `printf\', and to 0 if you don\'t.
-   */
-@%:@undef HAVE_DECL_PRINTF])
-m4trace:configure.in:766: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DECL_SBRK])
-m4trace:configure.in:766: -1- m4_pattern_allow([^HAVE_DECL_SBRK$])
-m4trace:configure.in:766: -1- AH_OUTPUT([HAVE_DECL_SBRK], [/* Define to 1 if you have the declaration of `sbrk\', and to 0 if you don\'t.
-   */
-@%:@undef HAVE_DECL_SBRK])
-m4trace:configure.in:767: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DECL_SETREGID])
-m4trace:configure.in:767: -1- m4_pattern_allow([^HAVE_DECL_SETREGID$])
-m4trace:configure.in:767: -1- AH_OUTPUT([HAVE_DECL_SETREGID], [/* Define to 1 if you have the declaration of `setregid\', and to 0 if you
-   don\'t. */
-@%:@undef HAVE_DECL_SETREGID])
-m4trace:configure.in:768: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DECL_STRCPY])
-m4trace:configure.in:768: -1- m4_pattern_allow([^HAVE_DECL_STRCPY$])
-m4trace:configure.in:768: -1- AH_OUTPUT([HAVE_DECL_STRCPY], [/* Define to 1 if you have the declaration of `strcpy\', and to 0 if you don\'t.
-   */
-@%:@undef HAVE_DECL_STRCPY])
-m4trace:configure.in:769: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DECL_STRSIGNAL])
-m4trace:configure.in:769: -1- m4_pattern_allow([^HAVE_DECL_STRSIGNAL$])
-m4trace:configure.in:769: -1- AH_OUTPUT([HAVE_DECL_STRSIGNAL], [/* Define to 1 if you have the declaration of `strsignal\', and to 0 if you
-   don\'t. */
-@%:@undef HAVE_DECL_STRSIGNAL])
-m4trace:configure.in:772: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DECL_STRTOLD])
-m4trace:configure.in:772: -1- m4_pattern_allow([^HAVE_DECL_STRTOLD$])
-m4trace:configure.in:772: -1- AH_OUTPUT([HAVE_DECL_STRTOLD], [/* Define to 1 if you have the declaration of `strtold\', and to 0 if you
-   don\'t. */
-@%:@undef HAVE_DECL_STRTOLD])
-m4trace:configure.in:772: -1- _m4_warn([obsolete], [The macro `AC_TRY_COMPILE' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2615: AC_TRY_COMPILE is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2881: AC_CHECK_DECLS is expanded from...
-configure.in:772: the top level])
-m4trace:configure.in:772: -1- AC_DEFINE_TRACE_LITERAL([STRTOLD_BROKEN])
-m4trace:configure.in:772: -1- m4_pattern_allow([^STRTOLD_BROKEN$])
-m4trace:configure.in:788: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2688: AC_TRY_LINK is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-../../lib/autoconf/general.m4:2053: AC_CACHE_CHECK is expanded from...
-aclocal.m4:103: BASH_CHECK_DECL is expanded from...
-configure.in:788: the top level])
-m4trace:configure.in:789: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2688: AC_TRY_LINK is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-../../lib/autoconf/general.m4:2053: AC_CACHE_CHECK is expanded from...
-aclocal.m4:103: BASH_CHECK_DECL is expanded from...
-configure.in:789: the top level])
-m4trace:configure.in:790: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2688: AC_TRY_LINK is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-../../lib/autoconf/general.m4:2053: AC_CACHE_CHECK is expanded from...
-aclocal.m4:103: BASH_CHECK_DECL is expanded from...
-configure.in:790: the top level])
-m4trace:configure.in:791: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2688: AC_TRY_LINK is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-../../lib/autoconf/general.m4:2053: AC_CACHE_CHECK is expanded from...
-aclocal.m4:103: BASH_CHECK_DECL is expanded from...
-configure.in:791: the top level])
-m4trace:configure.in:792: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2688: AC_TRY_LINK is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-../../lib/autoconf/general.m4:2053: AC_CACHE_CHECK is expanded from...
-aclocal.m4:103: BASH_CHECK_DECL is expanded from...
-configure.in:792: the top level])
-m4trace:configure.in:793: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2688: AC_TRY_LINK is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-../../lib/autoconf/general.m4:2053: AC_CACHE_CHECK is expanded from...
-aclocal.m4:103: BASH_CHECK_DECL is expanded from...
-configure.in:793: the top level])
-m4trace:configure.in:795: -1- AH_OUTPUT([HAVE_SYS_TIME_H], [/* Define to 1 if you have the <sys/time.h> header file. */
-@%:@undef HAVE_SYS_TIME_H])
-m4trace:configure.in:795: -1- AH_OUTPUT([HAVE_UNISTD_H], [/* Define to 1 if you have the <unistd.h> header file. */
-@%:@undef HAVE_UNISTD_H])
-m4trace:configure.in:795: -1- AH_OUTPUT([HAVE_ALARM], [/* Define to 1 if you have the `alarm\' function. */
-@%:@undef HAVE_ALARM])
-m4trace:configure.in:795: -1- AC_SUBST([LIB@&t@OBJS], ["$LIB@&t@OBJS mktime.$ac_objext"])
-m4trace:configure.in:795: -1- AC_SUBST_TRACE([LIB@&t@OBJS])
-m4trace:configure.in:795: -1- m4_pattern_allow([^LIB@&t@OBJS$])
-m4trace:configure.in:795: -1- AC_LIBSOURCE([mktime.c])
-m4trace:configure.in:802: -1- AH_OUTPUT([HAVE_ARGZ_H], [/* Define to 1 if you have the <argz.h> header file. */
-@%:@undef HAVE_ARGZ_H])
-m4trace:configure.in:802: -1- AH_OUTPUT([HAVE_ERRNO_H], [/* Define to 1 if you have the <errno.h> header file. */
-@%:@undef HAVE_ERRNO_H])
-m4trace:configure.in:802: -1- AH_OUTPUT([HAVE_FCNTL_H], [/* Define to 1 if you have the <fcntl.h> header file. */
-@%:@undef HAVE_FCNTL_H])
-m4trace:configure.in:802: -1- AH_OUTPUT([HAVE_MALLOC_H], [/* Define to 1 if you have the <malloc.h> header file. */
-@%:@undef HAVE_MALLOC_H])
-m4trace:configure.in:802: -1- AH_OUTPUT([HAVE_STDIO_EXT_H], [/* Define to 1 if you have the <stdio_ext.h> header file. */
-@%:@undef HAVE_STDIO_EXT_H])
-m4trace:configure.in:805: -1- AH_OUTPUT([HAVE_STDLIB_H], [/* Define to 1 if you have the <stdlib.h> header file. */
-@%:@undef HAVE_STDLIB_H])
-m4trace:configure.in:805: -1- AH_OUTPUT([HAVE_UNISTD_H], [/* Define to 1 if you have the <unistd.h> header file. */
-@%:@undef HAVE_UNISTD_H])
-m4trace:configure.in:805: -1- AH_OUTPUT([HAVE_SYS_PARAM_H], [/* Define to 1 if you have the <sys/param.h> header file. */
-@%:@undef HAVE_SYS_PARAM_H])
-m4trace:configure.in:805: -1- AH_OUTPUT([HAVE_GETPAGESIZE], [/* Define to 1 if you have the `getpagesize\' function. */
-@%:@undef HAVE_GETPAGESIZE])
-m4trace:configure.in:805: -1- AC_DEFINE_TRACE_LITERAL([HAVE_GETPAGESIZE])
-m4trace:configure.in:805: -1- m4_pattern_allow([^HAVE_GETPAGESIZE$])
-m4trace:configure.in:805: -1- AC_DEFINE_TRACE_LITERAL([HAVE_MMAP])
-m4trace:configure.in:805: -1- m4_pattern_allow([^HAVE_MMAP$])
-m4trace:configure.in:805: -1- AH_OUTPUT([HAVE_MMAP], [/* Define to 1 if you have a working `mmap\' system call. */
-@%:@undef HAVE_MMAP])
-m4trace:configure.in:806: -1- AH_OUTPUT([HAVE___ARGZ_COUNT], [/* Define to 1 if you have the `__argz_count\' function. */
-@%:@undef HAVE___ARGZ_COUNT])
-m4trace:configure.in:806: -1- AH_OUTPUT([HAVE___ARGZ_NEXT], [/* Define to 1 if you have the `__argz_next\' function. */
-@%:@undef HAVE___ARGZ_NEXT])
-m4trace:configure.in:806: -1- AH_OUTPUT([HAVE___ARGZ_STRINGIFY], [/* Define to 1 if you have the `__argz_stringify\' function. */
-@%:@undef HAVE___ARGZ_STRINGIFY])
-m4trace:configure.in:806: -1- AH_OUTPUT([HAVE_DCGETTEXT], [/* Define to 1 if you have the `dcgettext\' function. */
-@%:@undef HAVE_DCGETTEXT])
-m4trace:configure.in:806: -1- AH_OUTPUT([HAVE_MEMPCPY], [/* Define to 1 if you have the `mempcpy\' function. */
-@%:@undef HAVE_MEMPCPY])
-m4trace:configure.in:806: -1- AH_OUTPUT([HAVE_MUNMAP], [/* Define to 1 if you have the `munmap\' function. */
-@%:@undef HAVE_MUNMAP])
-m4trace:configure.in:806: -1- AH_OUTPUT([HAVE_STPCPY], [/* Define to 1 if you have the `stpcpy\' function. */
-@%:@undef HAVE_STPCPY])
-m4trace:configure.in:806: -1- AH_OUTPUT([HAVE_STRCSPN], [/* Define to 1 if you have the `strcspn\' function. */
-@%:@undef HAVE_STRCSPN])
-m4trace:configure.in:806: -1- AH_OUTPUT([HAVE_STRDUP], [/* Define to 1 if you have the `strdup\' function. */
-@%:@undef HAVE_STRDUP])
-m4trace:configure.in:815: -1- AC_SUBST([INTL_DEP])
-m4trace:configure.in:815: -1- AC_SUBST_TRACE([INTL_DEP])
-m4trace:configure.in:815: -1- m4_pattern_allow([^INTL_DEP$])
-m4trace:configure.in:816: -1- AC_SUBST([INTL_INC])
-m4trace:configure.in:816: -1- AC_SUBST_TRACE([INTL_INC])
-m4trace:configure.in:816: -1- m4_pattern_allow([^INTL_INC$])
-m4trace:configure.in:817: -1- AC_SUBST([LIBINTL_H])
-m4trace:configure.in:817: -1- AC_SUBST_TRACE([LIBINTL_H])
-m4trace:configure.in:817: -1- m4_pattern_allow([^LIBINTL_H$])
-m4trace:configure.in:823: -1- AH_OUTPUT([HAVE_WCTYPE_H], [/* Define to 1 if you have the <wctype.h> header file. */
-@%:@undef HAVE_WCTYPE_H])
-m4trace:configure.in:823: -1- AC_DEFINE_TRACE_LITERAL([HAVE_WCTYPE_H])
-m4trace:configure.in:823: -1- m4_pattern_allow([^HAVE_WCTYPE_H$])
-m4trace:configure.in:823: -1- AH_OUTPUT([HAVE_WCHAR_H], [/* Define to 1 if you have the <wchar.h> header file. */
-@%:@undef HAVE_WCHAR_H])
-m4trace:configure.in:823: -1- AC_DEFINE_TRACE_LITERAL([HAVE_WCHAR_H])
-m4trace:configure.in:823: -1- m4_pattern_allow([^HAVE_WCHAR_H$])
-m4trace:configure.in:823: -1- AH_OUTPUT([HAVE_LANGINFO_H], [/* Define to 1 if you have the <langinfo.h> header file. */
-@%:@undef HAVE_LANGINFO_H])
-m4trace:configure.in:823: -1- AC_DEFINE_TRACE_LITERAL([HAVE_LANGINFO_H])
-m4trace:configure.in:823: -1- m4_pattern_allow([^HAVE_LANGINFO_H$])
-m4trace:configure.in:823: -2- AC_DEFINE_TRACE_LITERAL([HAVE_MBRLEN])
-m4trace:configure.in:823: -2- m4_pattern_allow([^HAVE_MBRLEN$])
-m4trace:configure.in:823: -2- AC_DEFINE_TRACE_LITERAL([HAVE_MBSCMP])
-m4trace:configure.in:823: -2- m4_pattern_allow([^HAVE_MBSCMP$])
-m4trace:configure.in:823: -2- AC_DEFINE_TRACE_LITERAL([HAVE_MBSCMP])
-m4trace:configure.in:823: -2- m4_pattern_allow([^HAVE_MBSCMP$])
-m4trace:configure.in:823: -2- AC_DEFINE_TRACE_LITERAL([HAVE_MBSNRTOWCS])
-m4trace:configure.in:823: -2- m4_pattern_allow([^HAVE_MBSNRTOWCS$])
-m4trace:configure.in:823: -2- AC_DEFINE_TRACE_LITERAL([HAVE_MBSRTOWCS])
-m4trace:configure.in:823: -2- m4_pattern_allow([^HAVE_MBSRTOWCS$])
-m4trace:configure.in:823: -1- AH_OUTPUT([HAVE_MBSCHR], [/* Define to 1 if you have the `mbschr\' function. */
-@%:@undef HAVE_MBSCHR])
-m4trace:configure.in:823: -1- AC_DEFINE_TRACE_LITERAL([HAVE_MBSCHR])
-m4trace:configure.in:823: -1- m4_pattern_allow([^HAVE_MBSCHR$])
-m4trace:configure.in:823: -1- AC_SUBST([LIB@&t@OBJS], ["$LIB@&t@OBJS mbschr.$ac_objext"])
-m4trace:configure.in:823: -1- AC_SUBST_TRACE([LIB@&t@OBJS])
-m4trace:configure.in:823: -1- m4_pattern_allow([^LIB@&t@OBJS$])
-m4trace:configure.in:823: -1- AC_LIBSOURCE([mbschr.c])
-m4trace:configure.in:823: -2- AC_DEFINE_TRACE_LITERAL([HAVE_WCRTOMB])
-m4trace:configure.in:823: -2- m4_pattern_allow([^HAVE_WCRTOMB$])
-m4trace:configure.in:823: -2- AC_DEFINE_TRACE_LITERAL([HAVE_WCSCOLL])
-m4trace:configure.in:823: -2- m4_pattern_allow([^HAVE_WCSCOLL$])
-m4trace:configure.in:823: -2- AC_DEFINE_TRACE_LITERAL([HAVE_WCSDUP])
-m4trace:configure.in:823: -2- m4_pattern_allow([^HAVE_WCSDUP$])
-m4trace:configure.in:823: -2- AC_DEFINE_TRACE_LITERAL([HAVE_WCWIDTH])
-m4trace:configure.in:823: -2- m4_pattern_allow([^HAVE_WCWIDTH$])
-m4trace:configure.in:823: -2- AC_DEFINE_TRACE_LITERAL([HAVE_WCTYPE])
-m4trace:configure.in:823: -2- m4_pattern_allow([^HAVE_WCTYPE$])
-m4trace:configure.in:823: -1- AH_OUTPUT([HAVE_WCSWIDTH], [/* Define to 1 if you have the `wcswidth\' function. */
-@%:@undef HAVE_WCSWIDTH])
-m4trace:configure.in:823: -1- AC_DEFINE_TRACE_LITERAL([HAVE_WCSWIDTH])
-m4trace:configure.in:823: -1- m4_pattern_allow([^HAVE_WCSWIDTH$])
-m4trace:configure.in:823: -1- AC_SUBST([LIB@&t@OBJS], ["$LIB@&t@OBJS wcswidth.$ac_objext"])
-m4trace:configure.in:823: -1- AC_SUBST_TRACE([LIB@&t@OBJS])
-m4trace:configure.in:823: -1- m4_pattern_allow([^LIB@&t@OBJS$])
-m4trace:configure.in:823: -1- AC_LIBSOURCE([wcswidth.c])
-m4trace:configure.in:823: -1- AC_DEFINE_TRACE_LITERAL([HAVE_MBRTOWC])
-m4trace:configure.in:823: -1- m4_pattern_allow([^HAVE_MBRTOWC$])
-m4trace:configure.in:823: -1- AH_OUTPUT([HAVE_MBRTOWC], [/* Define to 1 if mbrtowc and mbstate_t are properly declared. */
-@%:@undef HAVE_MBRTOWC])
-m4trace:configure.in:823: -1- AC_DEFINE_TRACE_LITERAL([HAVE_MBSTATE_T])
-m4trace:configure.in:823: -1- m4_pattern_allow([^HAVE_MBSTATE_T$])
-m4trace:configure.in:823: -1- AH_OUTPUT([HAVE_ISWLOWER], [/* Define to 1 if you have the `iswlower\' function. */
-@%:@undef HAVE_ISWLOWER])
-m4trace:configure.in:823: -1- AH_OUTPUT([HAVE_ISWUPPER], [/* Define to 1 if you have the `iswupper\' function. */
-@%:@undef HAVE_ISWUPPER])
-m4trace:configure.in:823: -1- AH_OUTPUT([HAVE_TOWLOWER], [/* Define to 1 if you have the `towlower\' function. */
-@%:@undef HAVE_TOWLOWER])
-m4trace:configure.in:823: -1- AH_OUTPUT([HAVE_TOWUPPER], [/* Define to 1 if you have the `towupper\' function. */
-@%:@undef HAVE_TOWUPPER])
-m4trace:configure.in:823: -1- AH_OUTPUT([HAVE_ISWCTYPE], [/* Define to 1 if you have the `iswctype\' function. */
-@%:@undef HAVE_ISWCTYPE])
-m4trace:configure.in:823: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2688: AC_TRY_LINK is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-../../lib/autoconf/general.m4:2053: AC_CACHE_CHECK is expanded from...
-aclocal.m4:1689: BASH_CHECK_MULTIBYTE is expanded from...
-configure.in:823: the top level])
-m4trace:configure.in:823: -1- AC_DEFINE_TRACE_LITERAL([HAVE_LANGINFO_CODESET])
-m4trace:configure.in:823: -1- m4_pattern_allow([^HAVE_LANGINFO_CODESET$])
-m4trace:configure.in:823: -1- _m4_warn([obsolete], [The macro `AC_TRY_COMPILE' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2615: AC_TRY_COMPILE is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-../../lib/autoconf/general.m4:2053: AC_CACHE_CHECK is expanded from...
-aclocal.m4:1689: BASH_CHECK_MULTIBYTE is expanded from...
-configure.in:823: the top level])
-m4trace:configure.in:823: -1- AC_DEFINE_TRACE_LITERAL([HAVE_WCHAR_T])
-m4trace:configure.in:823: -1- m4_pattern_allow([^HAVE_WCHAR_T$])
-m4trace:configure.in:823: -1- AH_OUTPUT([HAVE_WCHAR_T], [/* systems should define this type here */
-@%:@undef HAVE_WCHAR_T])
-m4trace:configure.in:823: -1- _m4_warn([obsolete], [The macro `AC_TRY_COMPILE' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2615: AC_TRY_COMPILE is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-../../lib/autoconf/general.m4:2053: AC_CACHE_CHECK is expanded from...
-aclocal.m4:1689: BASH_CHECK_MULTIBYTE is expanded from...
-configure.in:823: the top level])
-m4trace:configure.in:823: -1- AC_DEFINE_TRACE_LITERAL([HAVE_WCTYPE_T])
-m4trace:configure.in:823: -1- m4_pattern_allow([^HAVE_WCTYPE_T$])
-m4trace:configure.in:823: -1- AH_OUTPUT([HAVE_WCTYPE_T], [/* systems should define this type here */
-@%:@undef HAVE_WCTYPE_T])
-m4trace:configure.in:823: -1- _m4_warn([obsolete], [The macro `AC_TRY_COMPILE' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2615: AC_TRY_COMPILE is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-../../lib/autoconf/general.m4:2053: AC_CACHE_CHECK is expanded from...
-aclocal.m4:1689: BASH_CHECK_MULTIBYTE is expanded from...
-configure.in:823: the top level])
-m4trace:configure.in:823: -1- AC_DEFINE_TRACE_LITERAL([HAVE_WINT_T])
-m4trace:configure.in:823: -1- m4_pattern_allow([^HAVE_WINT_T$])
-m4trace:configure.in:823: -1- AH_OUTPUT([HAVE_WINT_T], [/* systems should define this type here */
-@%:@undef HAVE_WINT_T])
-m4trace:configure.in:823: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2765: AC_TRY_RUN is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-../../lib/autoconf/general.m4:2053: AC_CACHE_CHECK is expanded from...
-aclocal.m4:1689: BASH_CHECK_MULTIBYTE is expanded from...
-configure.in:823: the top level])
-m4trace:configure.in:823: -1- _m4_warn([cross], [AC_RUN_IFELSE called without default to allow cross compiling], [../../lib/autoconf/general.m4:2749: AC_RUN_IFELSE is expanded from...
-../../lib/autoconf/general.m4:2765: AC_TRY_RUN is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-../../lib/autoconf/general.m4:2053: AC_CACHE_CHECK is expanded from...
-aclocal.m4:1689: BASH_CHECK_MULTIBYTE is expanded from...
-configure.in:823: the top level])
-m4trace:configure.in:823: -1- AC_DEFINE_TRACE_LITERAL([WCWIDTH_BROKEN])
-m4trace:configure.in:823: -1- m4_pattern_allow([^WCWIDTH_BROKEN$])
-m4trace:configure.in:823: -1- AH_OUTPUT([WCWIDTH_BROKEN], [/* wcwidth is usually not broken */
-@%:@undef WCWIDTH_BROKEN])
-m4trace:configure.in:823: -1- AH_OUTPUT([HAVE_LOCALE_CHARSET], [/* Define to 1 if you have the `locale_charset\' function. */
-@%:@undef HAVE_LOCALE_CHARSET])
-m4trace:configure.in:823: -1- AC_DEFINE_TRACE_LITERAL([HAVE_LOCALE_CHARSET])
-m4trace:configure.in:823: -1- m4_pattern_allow([^HAVE_LOCALE_CHARSET$])
-m4trace:configure.in:827: -1- AH_OUTPUT([HAVE_LIBDL], [/* Define to 1 if you have the `dl\' library (-ldl). */
-@%:@undef HAVE_LIBDL])
-m4trace:configure.in:827: -1- AC_DEFINE_TRACE_LITERAL([HAVE_LIBDL])
-m4trace:configure.in:827: -1- m4_pattern_allow([^HAVE_LIBDL$])
-m4trace:configure.in:828: -1- AH_OUTPUT([HAVE_DLOPEN], [/* Define to 1 if you have the `dlopen\' function. */
-@%:@undef HAVE_DLOPEN])
-m4trace:configure.in:828: -1- AH_OUTPUT([HAVE_DLCLOSE], [/* Define to 1 if you have the `dlclose\' function. */
-@%:@undef HAVE_DLCLOSE])
-m4trace:configure.in:828: -1- AH_OUTPUT([HAVE_DLSYM], [/* Define to 1 if you have the `dlsym\' function. */
-@%:@undef HAVE_DLSYM])
-m4trace:configure.in:832: -1- _m4_warn([obsolete], [The macro `AC_DECL_SYS_SIGLIST' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/specific.m4:41: AC_DECL_SYS_SIGLIST is expanded from...
-configure.in:832: the top level])
-m4trace:configure.in:832: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DECL_SYS_SIGLIST])
-m4trace:configure.in:832: -1- m4_pattern_allow([^HAVE_DECL_SYS_SIGLIST$])
-m4trace:configure.in:832: -1- AH_OUTPUT([HAVE_DECL_SYS_SIGLIST], [/* Define to 1 if you have the declaration of `sys_siglist\', and to 0 if you
-   don\'t. */
-@%:@undef HAVE_DECL_SYS_SIGLIST])
-m4trace:configure.in:836: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2688: AC_TRY_LINK is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-../../lib/autoconf/general.m4:2053: AC_CACHE_CHECK is expanded from...
-aclocal.m4:563: BASH_FUNC_INET_ATON is expanded from...
-configure.in:836: the top level])
-m4trace:configure.in:836: -1- AC_DEFINE_TRACE_LITERAL([HAVE_INET_ATON])
-m4trace:configure.in:836: -1- m4_pattern_allow([^HAVE_INET_ATON$])
-m4trace:configure.in:836: -1- AC_SUBST([LIB@&t@OBJS], ["$LIB@&t@OBJS inet_aton.$ac_objext"])
-m4trace:configure.in:836: -1- AC_SUBST_TRACE([LIB@&t@OBJS])
-m4trace:configure.in:836: -1- m4_pattern_allow([^LIB@&t@OBJS$])
-m4trace:configure.in:836: -1- AC_LIBSOURCE([inet_aton.c])
-m4trace:configure.in:842: -1- AH_OUTPUT([HAVE_LIBSUN], [/* Define to 1 if you have the `sun\' library (-lsun). */
-@%:@undef HAVE_LIBSUN])
-m4trace:configure.in:842: -1- AC_DEFINE_TRACE_LITERAL([HAVE_LIBSUN])
-m4trace:configure.in:842: -1- m4_pattern_allow([^HAVE_LIBSUN$])
-m4trace:configure.in:847: -1- AC_DEFINE_TRACE_LITERAL([HAVE_LIBSOCKET])
-m4trace:configure.in:847: -1- m4_pattern_allow([^HAVE_LIBSOCKET$])
-m4trace:configure.in:847: -1- AC_DEFINE_TRACE_LITERAL([HAVE_GETPEERNAME])
-m4trace:configure.in:847: -1- m4_pattern_allow([^HAVE_GETPEERNAME$])
-m4trace:configure.in:851: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2688: AC_TRY_LINK is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-aclocal.m4:732: BASH_FUNC_GETHOSTBYNAME is expanded from...
-configure.in:851: the top level])
-m4trace:configure.in:851: -1- AC_DEFINE_TRACE_LITERAL([HAVE_GETHOSTBYNAME])
-m4trace:configure.in:851: -1- m4_pattern_allow([^HAVE_GETHOSTBYNAME$])
-m4trace:configure.in:855: -1- AC_DEFINE_TRACE_LITERAL([uid_t])
-m4trace:configure.in:855: -1- m4_pattern_allow([^uid_t$])
-m4trace:configure.in:855: -1- AH_OUTPUT([uid_t], [/* Define to `int\' if <sys/types.h> doesn\'t define. */
-@%:@undef uid_t])
-m4trace:configure.in:855: -1- AC_DEFINE_TRACE_LITERAL([gid_t])
-m4trace:configure.in:855: -1- m4_pattern_allow([^gid_t$])
-m4trace:configure.in:855: -1- AH_OUTPUT([gid_t], [/* Define to `int\' if <sys/types.h> doesn\'t define. */
-@%:@undef gid_t])
-m4trace:configure.in:855: -1- AC_DEFINE_TRACE_LITERAL([GETGROUPS_T])
-m4trace:configure.in:855: -1- m4_pattern_allow([^GETGROUPS_T$])
-m4trace:configure.in:855: -1- AH_OUTPUT([GETGROUPS_T], [/* Define to the type of elements in the array set by `getgroups\'. Usually
-   this is either `int\' or `gid_t\'. */
-@%:@undef GETGROUPS_T])
-m4trace:configure.in:856: -1- AC_DEFINE_TRACE_LITERAL([off_t])
-m4trace:configure.in:856: -1- m4_pattern_allow([^off_t$])
-m4trace:configure.in:856: -1- AH_OUTPUT([off_t], [/* Define to `long int\' if <sys/types.h> does not define. */
-@%:@undef off_t])
-m4trace:configure.in:857: -1- AC_DEFINE_TRACE_LITERAL([mode_t])
-m4trace:configure.in:857: -1- m4_pattern_allow([^mode_t$])
-m4trace:configure.in:857: -1- AH_OUTPUT([mode_t], [/* Define to `int\' if <sys/types.h> does not define. */
-@%:@undef mode_t])
-m4trace:configure.in:858: -1- AC_DEFINE_TRACE_LITERAL([uid_t])
-m4trace:configure.in:858: -1- m4_pattern_allow([^uid_t$])
-m4trace:configure.in:858: -1- AH_OUTPUT([uid_t], [/* Define to `int\' if <sys/types.h> doesn\'t define. */
-@%:@undef uid_t])
-m4trace:configure.in:858: -1- AC_DEFINE_TRACE_LITERAL([gid_t])
-m4trace:configure.in:858: -1- m4_pattern_allow([^gid_t$])
-m4trace:configure.in:858: -1- AH_OUTPUT([gid_t], [/* Define to `int\' if <sys/types.h> doesn\'t define. */
-@%:@undef gid_t])
-m4trace:configure.in:859: -1- AC_DEFINE_TRACE_LITERAL([pid_t])
-m4trace:configure.in:859: -1- m4_pattern_allow([^pid_t$])
-m4trace:configure.in:859: -1- AH_OUTPUT([pid_t], [/* Define to `int\' if <sys/types.h> does not define. */
-@%:@undef pid_t])
-m4trace:configure.in:860: -1- AC_DEFINE_TRACE_LITERAL([size_t])
-m4trace:configure.in:860: -1- m4_pattern_allow([^size_t$])
-m4trace:configure.in:860: -1- AH_OUTPUT([size_t], [/* Define to `unsigned int\' if <sys/types.h> does not define. */
-@%:@undef size_t])
-m4trace:configure.in:861: -1- AC_DEFINE_TRACE_LITERAL([ssize_t])
-m4trace:configure.in:861: -1- m4_pattern_allow([^ssize_t$])
-m4trace:configure.in:861: -1- AH_OUTPUT([ssize_t], [/* Define to `int\' if <sys/types.h> does not define. */
-@%:@undef ssize_t])
-m4trace:configure.in:862: -1- AC_DEFINE_TRACE_LITERAL([time_t])
-m4trace:configure.in:862: -1- m4_pattern_allow([^time_t$])
-m4trace:configure.in:862: -1- AH_OUTPUT([time_t], [/* Define to `long\' if <sys/types.h> does not define. */
-@%:@undef time_t])
-m4trace:configure.in:864: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2688: AC_TRY_LINK is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-../../lib/autoconf/general.m4:2053: AC_CACHE_CHECK is expanded from...
-aclocal.m4:472: BASH_TYPE_LONG_LONG is expanded from...
-configure.in:864: the top level])
-m4trace:configure.in:864: -1- AC_DEFINE_TRACE_LITERAL([HAVE_LONG_LONG])
-m4trace:configure.in:864: -1- m4_pattern_allow([^HAVE_LONG_LONG$])
-m4trace:configure.in:865: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2688: AC_TRY_LINK is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-../../lib/autoconf/general.m4:2053: AC_CACHE_CHECK is expanded from...
-aclocal.m4:486: BASH_TYPE_UNSIGNED_LONG_LONG is expanded from...
-configure.in:865: the top level])
-m4trace:configure.in:865: -1- AC_DEFINE_TRACE_LITERAL([HAVE_UNSIGNED_LONG_LONG])
-m4trace:configure.in:865: -1- m4_pattern_allow([^HAVE_UNSIGNED_LONG_LONG$])
-m4trace:configure.in:867: -1- _m4_warn([obsolete], [The macro `AC_TYPE_SIGNAL' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/types.m4:738: AC_TYPE_SIGNAL is expanded from...
-configure.in:867: the top level])
-m4trace:configure.in:867: -1- AC_DEFINE_TRACE_LITERAL([RETSIGTYPE])
-m4trace:configure.in:867: -1- m4_pattern_allow([^RETSIGTYPE$])
-m4trace:configure.in:867: -1- AH_OUTPUT([RETSIGTYPE], [/* Define as the return type of signal handlers (`int\' or `void\'). */
-@%:@undef RETSIGTYPE])
-m4trace:configure.in:868: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2688: AC_TRY_LINK is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-../../lib/autoconf/general.m4:2053: AC_CACHE_CHECK is expanded from...
-aclocal.m4:537: BASH_TYPE_SIG_ATOMIC_T is expanded from...
-configure.in:868: the top level])
-m4trace:configure.in:868: -1- AC_DEFINE_TRACE_LITERAL([sig_atomic_t])
-m4trace:configure.in:868: -1- m4_pattern_allow([^sig_atomic_t$])
-m4trace:configure.in:868: -1- AH_OUTPUT([sig_atomic_t], [/* Define to `int\' if <sys/types.h> does not define. */
-@%:@undef sig_atomic_t])
-m4trace:configure.in:870: -1- AC_DEFINE_TRACE_LITERAL([SIZEOF_CHAR])
-m4trace:configure.in:870: -1- m4_pattern_allow([^SIZEOF_CHAR$])
-m4trace:configure.in:870: -1- AH_OUTPUT([SIZEOF_CHAR], [/* The size of `char\', as computed by sizeof. */
-@%:@undef SIZEOF_CHAR])
-m4trace:configure.in:871: -1- AC_DEFINE_TRACE_LITERAL([SIZEOF_SHORT])
-m4trace:configure.in:871: -1- m4_pattern_allow([^SIZEOF_SHORT$])
-m4trace:configure.in:871: -1- AH_OUTPUT([SIZEOF_SHORT], [/* The size of `short\', as computed by sizeof. */
-@%:@undef SIZEOF_SHORT])
-m4trace:configure.in:872: -1- AC_DEFINE_TRACE_LITERAL([SIZEOF_INT])
-m4trace:configure.in:872: -1- m4_pattern_allow([^SIZEOF_INT$])
-m4trace:configure.in:872: -1- AH_OUTPUT([SIZEOF_INT], [/* The size of `int\', as computed by sizeof. */
-@%:@undef SIZEOF_INT])
-m4trace:configure.in:873: -1- AC_DEFINE_TRACE_LITERAL([SIZEOF_LONG])
-m4trace:configure.in:873: -1- m4_pattern_allow([^SIZEOF_LONG$])
-m4trace:configure.in:873: -1- AH_OUTPUT([SIZEOF_LONG], [/* The size of `long\', as computed by sizeof. */
-@%:@undef SIZEOF_LONG])
-m4trace:configure.in:874: -1- AC_DEFINE_TRACE_LITERAL([SIZEOF_CHAR_P])
-m4trace:configure.in:874: -1- m4_pattern_allow([^SIZEOF_CHAR_P$])
-m4trace:configure.in:874: -1- AH_OUTPUT([SIZEOF_CHAR_P], [/* The size of `char *\', as computed by sizeof. */
-@%:@undef SIZEOF_CHAR_P])
-m4trace:configure.in:875: -1- AC_DEFINE_TRACE_LITERAL([SIZEOF_DOUBLE])
-m4trace:configure.in:875: -1- m4_pattern_allow([^SIZEOF_DOUBLE$])
-m4trace:configure.in:875: -1- AH_OUTPUT([SIZEOF_DOUBLE], [/* The size of `double\', as computed by sizeof. */
-@%:@undef SIZEOF_DOUBLE])
-m4trace:configure.in:876: -1- AC_DEFINE_TRACE_LITERAL([SIZEOF_LONG_LONG])
-m4trace:configure.in:876: -1- m4_pattern_allow([^SIZEOF_LONG_LONG$])
-m4trace:configure.in:876: -1- AH_OUTPUT([SIZEOF_LONG_LONG], [/* The size of `long long\', as computed by sizeof. */
-@%:@undef SIZEOF_LONG_LONG])
-m4trace:configure.in:878: -1- AC_DEFINE_TRACE_LITERAL([u_int])
-m4trace:configure.in:878: -1- m4_pattern_allow([^u_int$])
-m4trace:configure.in:878: -1- AH_OUTPUT([u_int], [/* Define to `unsigned int\' if <sys/types.h> does not define. */
-@%:@undef u_int])
-m4trace:configure.in:879: -1- AC_DEFINE_TRACE_LITERAL([u_long])
-m4trace:configure.in:879: -1- m4_pattern_allow([^u_long$])
-m4trace:configure.in:879: -1- AH_OUTPUT([u_long], [/* Define to `unsigned long\' if <sys/types.h> does not define. */
-@%:@undef u_long])
-m4trace:configure.in:881: -1- AC_DEFINE_TRACE_LITERAL([bits16_t])
-m4trace:configure.in:881: -1- m4_pattern_allow([^bits16_t$])
-m4trace:configure.in:881: -1- AH_OUTPUT([bits16_t], [/* Define to `short\' if <sys/types.h> does not define. */
-@%:@undef bits16_t])
-m4trace:configure.in:881: -1- AC_DEFINE_TRACE_LITERAL([bits16_t])
-m4trace:configure.in:881: -1- m4_pattern_allow([^bits16_t$])
-m4trace:configure.in:881: -1- AH_OUTPUT([bits16_t], [/* Define to `char\' if <sys/types.h> does not define. */
-@%:@undef bits16_t])
-m4trace:configure.in:881: -1- AC_DEFINE_TRACE_LITERAL([bits16_t])
-m4trace:configure.in:881: -1- m4_pattern_allow([^bits16_t$])
-m4trace:configure.in:881: -1- AH_OUTPUT([bits16_t], [/* Define to `short\' if <sys/types.h> does not define. */
-@%:@undef bits16_t])
-m4trace:configure.in:882: -1- AC_DEFINE_TRACE_LITERAL([u_bits16_t])
-m4trace:configure.in:882: -1- m4_pattern_allow([^u_bits16_t$])
-m4trace:configure.in:882: -1- AH_OUTPUT([u_bits16_t], [/* Define to `unsigned short\' if <sys/types.h> does not define. */
-@%:@undef u_bits16_t])
-m4trace:configure.in:882: -1- AC_DEFINE_TRACE_LITERAL([u_bits16_t])
-m4trace:configure.in:882: -1- m4_pattern_allow([^u_bits16_t$])
-m4trace:configure.in:882: -1- AH_OUTPUT([u_bits16_t], [/* Define to `unsigned char\' if <sys/types.h> does not define. */
-@%:@undef u_bits16_t])
-m4trace:configure.in:882: -1- AC_DEFINE_TRACE_LITERAL([u_bits16_t])
-m4trace:configure.in:882: -1- m4_pattern_allow([^u_bits16_t$])
-m4trace:configure.in:882: -1- AH_OUTPUT([u_bits16_t], [/* Define to `unsigned short\' if <sys/types.h> does not define. */
-@%:@undef u_bits16_t])
-m4trace:configure.in:883: -1- AC_DEFINE_TRACE_LITERAL([bits32_t])
-m4trace:configure.in:883: -1- m4_pattern_allow([^bits32_t$])
-m4trace:configure.in:883: -1- AH_OUTPUT([bits32_t], [/* Define to `int\' if <sys/types.h> does not define. */
-@%:@undef bits32_t])
-m4trace:configure.in:883: -1- AC_DEFINE_TRACE_LITERAL([bits32_t])
-m4trace:configure.in:883: -1- m4_pattern_allow([^bits32_t$])
-m4trace:configure.in:883: -1- AH_OUTPUT([bits32_t], [/* Define to `long\' if <sys/types.h> does not define. */
-@%:@undef bits32_t])
-m4trace:configure.in:883: -1- AC_DEFINE_TRACE_LITERAL([bits32_t])
-m4trace:configure.in:883: -1- m4_pattern_allow([^bits32_t$])
-m4trace:configure.in:883: -1- AH_OUTPUT([bits32_t], [/* Define to `int\' if <sys/types.h> does not define. */
-@%:@undef bits32_t])
-m4trace:configure.in:884: -1- AC_DEFINE_TRACE_LITERAL([u_bits32_t])
-m4trace:configure.in:884: -1- m4_pattern_allow([^u_bits32_t$])
-m4trace:configure.in:884: -1- AH_OUTPUT([u_bits32_t], [/* Define to `unsigned int\' if <sys/types.h> does not define. */
-@%:@undef u_bits32_t])
-m4trace:configure.in:884: -1- AC_DEFINE_TRACE_LITERAL([u_bits32_t])
-m4trace:configure.in:884: -1- m4_pattern_allow([^u_bits32_t$])
-m4trace:configure.in:884: -1- AH_OUTPUT([u_bits32_t], [/* Define to `unsigned long\' if <sys/types.h> does not define. */
-@%:@undef u_bits32_t])
-m4trace:configure.in:884: -1- AC_DEFINE_TRACE_LITERAL([u_bits32_t])
-m4trace:configure.in:884: -1- m4_pattern_allow([^u_bits32_t$])
-m4trace:configure.in:884: -1- AH_OUTPUT([u_bits32_t], [/* Define to `unsigned int\' if <sys/types.h> does not define. */
-@%:@undef u_bits32_t])
-m4trace:configure.in:885: -1- AC_DEFINE_TRACE_LITERAL([bits64_t])
-m4trace:configure.in:885: -1- m4_pattern_allow([^bits64_t$])
-m4trace:configure.in:885: -1- AH_OUTPUT([bits64_t], [/* Define to `char *\' if <sys/types.h> does not define. */
-@%:@undef bits64_t])
-m4trace:configure.in:885: -1- AC_DEFINE_TRACE_LITERAL([bits64_t])
-m4trace:configure.in:885: -1- m4_pattern_allow([^bits64_t$])
-m4trace:configure.in:885: -1- AH_OUTPUT([bits64_t], [/* Define to `double\' if <sys/types.h> does not define. */
-@%:@undef bits64_t])
-m4trace:configure.in:885: -1- AC_DEFINE_TRACE_LITERAL([bits64_t])
-m4trace:configure.in:885: -1- m4_pattern_allow([^bits64_t$])
-m4trace:configure.in:885: -1- AH_OUTPUT([bits64_t], [/* Define to `long long\' if <sys/types.h> does not define. */
-@%:@undef bits64_t])
-m4trace:configure.in:885: -1- AC_DEFINE_TRACE_LITERAL([bits64_t])
-m4trace:configure.in:885: -1- m4_pattern_allow([^bits64_t$])
-m4trace:configure.in:885: -1- AH_OUTPUT([bits64_t], [/* Define to `long\' if <sys/types.h> does not define. */
-@%:@undef bits64_t])
-m4trace:configure.in:885: -1- AC_DEFINE_TRACE_LITERAL([bits64_t])
-m4trace:configure.in:885: -1- m4_pattern_allow([^bits64_t$])
-m4trace:configure.in:885: -1- AH_OUTPUT([bits64_t], [/* Define to `double\' if <sys/types.h> does not define. */
-@%:@undef bits64_t])
-m4trace:configure.in:887: -1- AC_DEFINE_TRACE_LITERAL([ptrdiff_t])
-m4trace:configure.in:887: -1- m4_pattern_allow([^ptrdiff_t$])
-m4trace:configure.in:887: -1- AH_OUTPUT([ptrdiff_t], [/* Define to `int\' if <sys/types.h> does not define. */
-@%:@undef ptrdiff_t])
-m4trace:configure.in:887: -1- AC_DEFINE_TRACE_LITERAL([ptrdiff_t])
-m4trace:configure.in:887: -1- m4_pattern_allow([^ptrdiff_t$])
-m4trace:configure.in:887: -1- AH_OUTPUT([ptrdiff_t], [/* Define to `long\' if <sys/types.h> does not define. */
-@%:@undef ptrdiff_t])
-m4trace:configure.in:887: -1- AC_DEFINE_TRACE_LITERAL([ptrdiff_t])
-m4trace:configure.in:887: -1- m4_pattern_allow([^ptrdiff_t$])
-m4trace:configure.in:887: -1- AH_OUTPUT([ptrdiff_t], [/* Define to `long long\' if <sys/types.h> does not define. */
-@%:@undef ptrdiff_t])
-m4trace:configure.in:887: -1- AC_DEFINE_TRACE_LITERAL([ptrdiff_t])
-m4trace:configure.in:887: -1- m4_pattern_allow([^ptrdiff_t$])
-m4trace:configure.in:887: -1- AH_OUTPUT([ptrdiff_t], [/* Define to `int\' if <sys/types.h> does not define. */
-@%:@undef ptrdiff_t])
-m4trace:configure.in:890: -1- AC_DEFINE_TRACE_LITERAL([STAT_MACROS_BROKEN])
-m4trace:configure.in:890: -1- m4_pattern_allow([^STAT_MACROS_BROKEN$])
-m4trace:configure.in:890: -1- AH_OUTPUT([STAT_MACROS_BROKEN], [/* Define to 1 if the `S_IS*\' macros in <sys/stat.h> do not work properly. */
-@%:@undef STAT_MACROS_BROKEN])
-m4trace:configure.in:895: -1- AC_DEFINE_TRACE_LITERAL([HAVE_HASH_BANG_EXEC])
-m4trace:configure.in:895: -1- m4_pattern_allow([^HAVE_HASH_BANG_EXEC$])
-m4trace:configure.in:900: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2688: AC_TRY_LINK is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-../../lib/autoconf/general.m4:2053: AC_CACHE_CHECK is expanded from...
-aclocal.m4:549: BASH_FUNC_LSTAT is expanded from...
-configure.in:900: the top level])
-m4trace:configure.in:900: -1- AC_DEFINE_TRACE_LITERAL([HAVE_LSTAT])
-m4trace:configure.in:900: -1- m4_pattern_allow([^HAVE_LSTAT$])
-m4trace:configure.in:904: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2765: AC_TRY_RUN is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-aclocal.m4:1920: BASH_FUNC_CTYPE_NONASCII is expanded from...
-configure.in:904: the top level])
-m4trace:configure.in:904: -1- AC_DEFINE_TRACE_LITERAL([CTYPE_NON_ASCII])
-m4trace:configure.in:904: -1- m4_pattern_allow([^CTYPE_NON_ASCII$])
-m4trace:configure.in:905: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2765: AC_TRY_RUN is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-aclocal.m4:270: BASH_FUNC_DUP2_CLOEXEC_CHECK is expanded from...
-configure.in:905: the top level])
-m4trace:configure.in:905: -1- AC_DEFINE_TRACE_LITERAL([DUP2_BROKEN])
-m4trace:configure.in:905: -1- m4_pattern_allow([^DUP2_BROKEN$])
-m4trace:configure.in:906: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2765: AC_TRY_RUN is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-aclocal.m4:1235: BASH_SYS_PGRP_SYNC is expanded from...
-configure.in:906: the top level])
-m4trace:configure.in:906: -1- AC_DEFINE_TRACE_LITERAL([PGRP_PIPE])
-m4trace:configure.in:906: -1- m4_pattern_allow([^PGRP_PIPE$])
-m4trace:configure.in:907: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2688: AC_TRY_LINK is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-aclocal.m4:1195: BASH_SYS_SIGNAL_VINTAGE is expanded from...
-configure.in:907: the top level])
-m4trace:configure.in:907: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2688: AC_TRY_LINK is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2662: _AC_LINK_IFELSE is expanded from...
-../../lib/autoconf/general.m4:2679: AC_LINK_IFELSE is expanded from...
-../../lib/autoconf/general.m4:2688: AC_TRY_LINK is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-aclocal.m4:1195: BASH_SYS_SIGNAL_VINTAGE is expanded from...
-configure.in:907: the top level])
-m4trace:configure.in:907: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2688: AC_TRY_LINK is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2662: _AC_LINK_IFELSE is expanded from...
-../../lib/autoconf/general.m4:2679: AC_LINK_IFELSE is expanded from...
-../../lib/autoconf/general.m4:2688: AC_TRY_LINK is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2662: _AC_LINK_IFELSE is expanded from...
-../../lib/autoconf/general.m4:2679: AC_LINK_IFELSE is expanded from...
-../../lib/autoconf/general.m4:2688: AC_TRY_LINK is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-aclocal.m4:1195: BASH_SYS_SIGNAL_VINTAGE is expanded from...
-configure.in:907: the top level])
-m4trace:configure.in:907: -1- AC_DEFINE_TRACE_LITERAL([HAVE_POSIX_SIGNALS])
-m4trace:configure.in:907: -1- m4_pattern_allow([^HAVE_POSIX_SIGNALS$])
-m4trace:configure.in:907: -1- AC_DEFINE_TRACE_LITERAL([HAVE_BSD_SIGNALS])
-m4trace:configure.in:907: -1- m4_pattern_allow([^HAVE_BSD_SIGNALS$])
-m4trace:configure.in:907: -1- AC_DEFINE_TRACE_LITERAL([HAVE_USG_SIGHOLD])
-m4trace:configure.in:907: -1- m4_pattern_allow([^HAVE_USG_SIGHOLD$])
-m4trace:configure.in:910: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2688: AC_TRY_LINK is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-aclocal.m4:253: BASH_SYS_ERRLIST is expanded from...
-configure.in:910: the top level])
-m4trace:configure.in:910: -1- AC_DEFINE_TRACE_LITERAL([HAVE_SYS_ERRLIST])
-m4trace:configure.in:910: -1- m4_pattern_allow([^HAVE_SYS_ERRLIST$])
-m4trace:configure.in:911: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2765: AC_TRY_RUN is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-aclocal.m4:211: BASH_SYS_SIGLIST is expanded from...
-configure.in:911: the top level])
-m4trace:configure.in:911: -1- AC_DEFINE_TRACE_LITERAL([HAVE_SYS_SIGLIST])
-m4trace:configure.in:911: -1- m4_pattern_allow([^HAVE_SYS_SIGLIST$])
-m4trace:configure.in:912: -1- _m4_warn([obsolete], [The macro `AC_TRY_COMPILE' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2615: AC_TRY_COMPILE is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-aclocal.m4:167: BASH_DECL_UNDER_SYS_SIGLIST is expanded from...
-aclocal.m4:184: BASH_UNDER_SYS_SIGLIST is expanded from...
-configure.in:912: the top level])
-m4trace:configure.in:912: -1- AC_DEFINE_TRACE_LITERAL([UNDER_SYS_SIGLIST_DECLARED])
-m4trace:configure.in:912: -1- m4_pattern_allow([^UNDER_SYS_SIGLIST_DECLARED$])
-m4trace:configure.in:912: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2765: AC_TRY_RUN is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-aclocal.m4:184: BASH_UNDER_SYS_SIGLIST is expanded from...
-configure.in:912: the top level])
-m4trace:configure.in:912: -1- AC_DEFINE_TRACE_LITERAL([HAVE_UNDER_SYS_SIGLIST])
-m4trace:configure.in:912: -1- m4_pattern_allow([^HAVE_UNDER_SYS_SIGLIST$])
-m4trace:configure.in:915: -1- _m4_warn([obsolete], [The macro `AC_TRY_COMPILE' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2615: AC_TRY_COMPILE is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-aclocal.m4:366: BASH_TYPE_SIGHANDLER is expanded from...
-configure.in:915: the top level])
-m4trace:configure.in:915: -1- AC_DEFINE_TRACE_LITERAL([VOID_SIGHANDLER])
-m4trace:configure.in:915: -1- m4_pattern_allow([^VOID_SIGHANDLER$])
-m4trace:configure.in:916: -1- AC_DEFINE_TRACE_LITERAL([clock_t])
-m4trace:configure.in:916: -1- m4_pattern_allow([^clock_t$])
-m4trace:configure.in:917: -1- AC_DEFINE_TRACE_LITERAL([sigset_t])
-m4trace:configure.in:917: -1- m4_pattern_allow([^sigset_t$])
-m4trace:configure.in:918: -1- AC_DEFINE_TRACE_LITERAL([HAVE_QUAD_T])
-m4trace:configure.in:918: -1- m4_pattern_allow([^HAVE_QUAD_T$])
-m4trace:configure.in:918: -1- AC_DEFINE_TRACE_LITERAL([quad_t])
-m4trace:configure.in:918: -1- m4_pattern_allow([^quad_t$])
-m4trace:configure.in:919: -1- AC_DEFINE_TRACE_LITERAL([intmax_t])
-m4trace:configure.in:919: -1- m4_pattern_allow([^intmax_t$])
-m4trace:configure.in:920: -1- AC_DEFINE_TRACE_LITERAL([uintmax_t])
-m4trace:configure.in:920: -1- m4_pattern_allow([^uintmax_t$])
-m4trace:configure.in:922: -1- AC_DEFINE_TRACE_LITERAL([HAVE_SOCKLEN_T])
-m4trace:configure.in:922: -1- m4_pattern_allow([^HAVE_SOCKLEN_T$])
-m4trace:configure.in:922: -1- AC_DEFINE_TRACE_LITERAL([socklen_t])
-m4trace:configure.in:922: -1- m4_pattern_allow([^socklen_t$])
-m4trace:configure.in:924: -1- _m4_warn([obsolete], [The macro `AC_TRY_COMPILE' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2615: AC_TRY_COMPILE is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-aclocal.m4:507: BASH_TYPE_RLIMIT is expanded from...
-configure.in:924: the top level])
-m4trace:configure.in:924: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2765: AC_TRY_RUN is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2591: _AC_COMPILE_IFELSE is expanded from...
-../../lib/autoconf/general.m4:2607: AC_COMPILE_IFELSE is expanded from...
-../../lib/autoconf/general.m4:2615: AC_TRY_COMPILE is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-aclocal.m4:507: BASH_TYPE_RLIMIT is expanded from...
-configure.in:924: the top level])
-m4trace:configure.in:924: -1- AC_DEFINE_TRACE_LITERAL([RLIMTYPE])
-m4trace:configure.in:924: -1- m4_pattern_allow([^RLIMTYPE$])
-m4trace:configure.in:924: -1- AC_DEFINE_TRACE_LITERAL([RLIMTYPE])
-m4trace:configure.in:924: -1- m4_pattern_allow([^RLIMTYPE$])
-m4trace:configure.in:926: -1- AC_DEFINE_TRACE_LITERAL([SIZEOF_INTMAX_T])
-m4trace:configure.in:926: -1- m4_pattern_allow([^SIZEOF_INTMAX_T$])
-m4trace:configure.in:926: -1- AH_OUTPUT([SIZEOF_INTMAX_T], [/* The size of `intmax_t\', as computed by sizeof. */
-@%:@undef SIZEOF_INTMAX_T])
-m4trace:configure.in:929: -2- AC_DEFINE_TRACE_LITERAL([TERMIOS_LDISC])
-m4trace:configure.in:929: -2- m4_pattern_allow([^TERMIOS_LDISC$])
-m4trace:configure.in:930: -2- AC_DEFINE_TRACE_LITERAL([TERMIO_LDISC])
-m4trace:configure.in:930: -2- m4_pattern_allow([^TERMIO_LDISC$])
-m4trace:configure.in:931: -1- _m4_warn([obsolete], [The macro `AC_TRY_COMPILE' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2615: AC_TRY_COMPILE is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-aclocal.m4:1042: BASH_STRUCT_DIRENT_D_INO is expanded from...
-configure.in:931: the top level])
-m4trace:configure.in:931: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STRUCT_DIRENT_D_INO])
-m4trace:configure.in:931: -1- m4_pattern_allow([^HAVE_STRUCT_DIRENT_D_INO$])
-m4trace:configure.in:932: -1- _m4_warn([obsolete], [The macro `AC_TRY_COMPILE' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2615: AC_TRY_COMPILE is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-aclocal.m4:1075: BASH_STRUCT_DIRENT_D_FILENO is expanded from...
-configure.in:932: the top level])
-m4trace:configure.in:932: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STRUCT_DIRENT_D_FILENO])
-m4trace:configure.in:932: -1- m4_pattern_allow([^HAVE_STRUCT_DIRENT_D_FILENO$])
-m4trace:configure.in:933: -1- _m4_warn([obsolete], [The macro `AC_TRY_COMPILE' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2615: AC_TRY_COMPILE is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-aclocal.m4:1108: BASH_STRUCT_DIRENT_D_NAMLEN is expanded from...
-configure.in:933: the top level])
-m4trace:configure.in:933: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STRUCT_DIRENT_D_NAMLEN])
-m4trace:configure.in:933: -1- m4_pattern_allow([^HAVE_STRUCT_DIRENT_D_NAMLEN$])
-m4trace:configure.in:934: -1- _m4_warn([obsolete], [The macro `AC_TRY_COMPILE' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2615: AC_TRY_COMPILE is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-aclocal.m4:1173: BASH_STRUCT_WINSIZE is expanded from...
-configure.in:934: the top level])
-m4trace:configure.in:934: -1- _m4_warn([obsolete], [The macro `AC_TRY_COMPILE' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2615: AC_TRY_COMPILE is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2591: _AC_COMPILE_IFELSE is expanded from...
-../../lib/autoconf/general.m4:2607: AC_COMPILE_IFELSE is expanded from...
-../../lib/autoconf/general.m4:2615: AC_TRY_COMPILE is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-aclocal.m4:1173: BASH_STRUCT_WINSIZE is expanded from...
-configure.in:934: the top level])
-m4trace:configure.in:934: -1- AC_DEFINE_TRACE_LITERAL([STRUCT_WINSIZE_IN_SYS_IOCTL])
-m4trace:configure.in:934: -1- m4_pattern_allow([^STRUCT_WINSIZE_IN_SYS_IOCTL$])
-m4trace:configure.in:934: -1- AC_DEFINE_TRACE_LITERAL([STRUCT_WINSIZE_IN_TERMIOS])
-m4trace:configure.in:934: -1- m4_pattern_allow([^STRUCT_WINSIZE_IN_TERMIOS$])
-m4trace:configure.in:935: -1- AC_DEFINE_TRACE_LITERAL([HAVE_TIMEVAL])
-m4trace:configure.in:935: -1- m4_pattern_allow([^HAVE_TIMEVAL$])
-m4trace:configure.in:936: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STRUCT_STAT_ST_BLOCKS])
-m4trace:configure.in:936: -1- m4_pattern_allow([^HAVE_STRUCT_STAT_ST_BLOCKS$])
-m4trace:configure.in:936: -1- AH_OUTPUT([HAVE_STRUCT_STAT_ST_BLOCKS], [/* Define to 1 if `st_blocks\' is a member of `struct stat\'. */
-@%:@undef HAVE_STRUCT_STAT_ST_BLOCKS])
-m4trace:configure.in:937: -1- AC_DEFINE_TRACE_LITERAL([TM_IN_SYS_TIME])
-m4trace:configure.in:937: -1- m4_pattern_allow([^TM_IN_SYS_TIME$])
-m4trace:configure.in:937: -1- AH_OUTPUT([TM_IN_SYS_TIME], [/* Define to 1 if your <sys/time.h> declares `struct tm\'. */
-@%:@undef TM_IN_SYS_TIME])
-m4trace:configure.in:938: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STRUCT_TM_TM_ZONE])
-m4trace:configure.in:938: -1- m4_pattern_allow([^HAVE_STRUCT_TM_TM_ZONE$])
-m4trace:configure.in:938: -1- AH_OUTPUT([HAVE_STRUCT_TM_TM_ZONE], [/* Define to 1 if `tm_zone\' is a member of `struct tm\'. */
-@%:@undef HAVE_STRUCT_TM_TM_ZONE])
-m4trace:configure.in:938: -1- AC_DEFINE_TRACE_LITERAL([HAVE_TM_ZONE])
-m4trace:configure.in:938: -1- m4_pattern_allow([^HAVE_TM_ZONE$])
-m4trace:configure.in:938: -1- AH_OUTPUT([HAVE_TM_ZONE], [/* Define to 1 if your `struct tm\' has `tm_zone\'. Deprecated, use
-   `HAVE_STRUCT_TM_TM_ZONE\' instead. */
-@%:@undef HAVE_TM_ZONE])
-m4trace:configure.in:938: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DECL_TZNAME])
-m4trace:configure.in:938: -1- m4_pattern_allow([^HAVE_DECL_TZNAME$])
-m4trace:configure.in:938: -1- AH_OUTPUT([HAVE_DECL_TZNAME], [/* Define to 1 if you have the declaration of `tzname\', and to 0 if you don\'t.
-   */
-@%:@undef HAVE_DECL_TZNAME])
-m4trace:configure.in:938: -1- AC_DEFINE_TRACE_LITERAL([HAVE_TZNAME])
-m4trace:configure.in:938: -1- m4_pattern_allow([^HAVE_TZNAME$])
-m4trace:configure.in:938: -1- AH_OUTPUT([HAVE_TZNAME], [/* Define to 1 if you don\'t have `tm_zone\' but do have the external array
-   `tzname\'. */
-@%:@undef HAVE_TZNAME])
-m4trace:configure.in:939: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STRUCT_TIMEZONE])
-m4trace:configure.in:939: -1- m4_pattern_allow([^HAVE_STRUCT_TIMEZONE$])
-m4trace:configure.in:941: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2765: AC_TRY_RUN is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-aclocal.m4:4149: BASH_STRUCT_WEXITSTATUS_OFFSET is expanded from...
-configure.in:941: the top level])
-m4trace:configure.in:941: -1- AC_DEFINE_TRACE_LITERAL([WEXITSTATUS_OFFSET])
-m4trace:configure.in:941: -1- m4_pattern_allow([^WEXITSTATUS_OFFSET$])
-m4trace:configure.in:941: -1- AH_OUTPUT([WEXITSTATUS_OFFSET], [/* Offset of exit status in wait status word */
-@%:@undef WEXITSTATUS_OFFSET])
-m4trace:configure.in:944: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2688: AC_TRY_LINK is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-aclocal.m4:299: BASH_FUNC_STRSIGNAL is expanded from...
-configure.in:944: the top level])
-m4trace:configure.in:944: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STRSIGNAL])
-m4trace:configure.in:944: -1- m4_pattern_allow([^HAVE_STRSIGNAL$])
-m4trace:configure.in:945: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2765: AC_TRY_RUN is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-aclocal.m4:313: BASH_FUNC_OPENDIR_CHECK is expanded from...
-configure.in:945: the top level])
-m4trace:configure.in:945: -1- AC_DEFINE_TRACE_LITERAL([OPENDIR_NOT_ROBUST])
-m4trace:configure.in:945: -1- m4_pattern_allow([^OPENDIR_NOT_ROBUST$])
-m4trace:configure.in:946: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2765: AC_TRY_RUN is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-aclocal.m4:683: BASH_FUNC_ULIMIT_MAXFDS is expanded from...
-configure.in:946: the top level])
-m4trace:configure.in:946: -1- AC_DEFINE_TRACE_LITERAL([ULIMIT_MAXFDS])
-m4trace:configure.in:946: -1- m4_pattern_allow([^ULIMIT_MAXFDS$])
-m4trace:configure.in:947: -1- AH_OUTPUT([HAVE_FPURGE], [/* Define to 1 if you have the `fpurge\' function. */
-@%:@undef HAVE_FPURGE])
-m4trace:configure.in:947: -1- AH_OUTPUT([HAVE___FPURGE], [/* Define to 1 if you have the `__fpurge\' function. */
-@%:@undef HAVE___FPURGE])
-m4trace:configure.in:947: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DECL_FPURGE])
-m4trace:configure.in:947: -1- m4_pattern_allow([^HAVE_DECL_FPURGE$])
-m4trace:configure.in:947: -1- AH_OUTPUT([HAVE_DECL_FPURGE], [/* Define to 1 if you have the declaration of `fpurge\', and to 0 if you don\'t.
-   */
-@%:@undef HAVE_DECL_FPURGE])
-m4trace:configure.in:948: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2765: AC_TRY_RUN is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-aclocal.m4:579: BASH_FUNC_GETENV is expanded from...
-configure.in:948: the top level])
-m4trace:configure.in:948: -1- AC_DEFINE_TRACE_LITERAL([CAN_REDEFINE_GETENV])
-m4trace:configure.in:948: -1- m4_pattern_allow([^CAN_REDEFINE_GETENV$])
-m4trace:configure.in:950: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2765: AC_TRY_RUN is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-aclocal.m4:702: BASH_FUNC_GETCWD is expanded from...
-configure.in:950: the top level])
-m4trace:configure.in:950: -1- AC_DEFINE_TRACE_LITERAL([GETCWD_BROKEN])
-m4trace:configure.in:950: -1- m4_pattern_allow([^GETCWD_BROKEN$])
-m4trace:configure.in:950: -1- AC_SUBST([LIB@&t@OBJS], ["$LIB@&t@OBJS getcwd.$ac_objext"])
-m4trace:configure.in:950: -1- AC_SUBST_TRACE([LIB@&t@OBJS])
-m4trace:configure.in:950: -1- m4_pattern_allow([^LIB@&t@OBJS$])
-m4trace:configure.in:950: -1- AC_LIBSOURCE([getcwd.c])
-m4trace:configure.in:952: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2765: AC_TRY_RUN is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-aclocal.m4:778: BASH_FUNC_POSIX_SETJMP is expanded from...
-configure.in:952: the top level])
-m4trace:configure.in:952: -1- AC_DEFINE_TRACE_LITERAL([HAVE_POSIX_SIGSETJMP])
-m4trace:configure.in:952: -1- m4_pattern_allow([^HAVE_POSIX_SIGSETJMP$])
-m4trace:configure.in:953: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2765: AC_TRY_RUN is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-aclocal.m4:829: BASH_FUNC_STRCOLL is expanded from...
-configure.in:953: the top level])
-m4trace:configure.in:953: -1- AC_DEFINE_TRACE_LITERAL([STRCOLL_BROKEN])
-m4trace:configure.in:953: -1- m4_pattern_allow([^STRCOLL_BROKEN$])
-m4trace:configure.in:954: -1- AH_OUTPUT([HAVE_SNPRINTF], [/* Define to 1 if you have the `snprintf\' function. */
-@%:@undef HAVE_SNPRINTF])
-m4trace:configure.in:954: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2765: AC_TRY_RUN is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-../../lib/autoconf/general.m4:2053: AC_CACHE_CHECK is expanded from...
-aclocal.m4:4065: BASH_FUNC_SNPRINTF is expanded from...
-configure.in:954: the top level])
-m4trace:configure.in:954: -1- AC_DEFINE_TRACE_LITERAL([HAVE_SNPRINTF])
-m4trace:configure.in:954: -1- m4_pattern_allow([^HAVE_SNPRINTF$])
-m4trace:configure.in:954: -1- AH_OUTPUT([HAVE_SNPRINTF], [/* Define if you have a standard-conformant snprintf function. */
-@%:@undef HAVE_SNPRINTF])
-m4trace:configure.in:955: -1- AH_OUTPUT([HAVE_VSNPRINTF], [/* Define to 1 if you have the `vsnprintf\' function. */
-@%:@undef HAVE_VSNPRINTF])
-m4trace:configure.in:955: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2765: AC_TRY_RUN is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-../../lib/autoconf/general.m4:2053: AC_CACHE_CHECK is expanded from...
-aclocal.m4:4093: BASH_FUNC_VSNPRINTF is expanded from...
-configure.in:955: the top level])
-m4trace:configure.in:955: -1- AC_DEFINE_TRACE_LITERAL([HAVE_VSNPRINTF])
-m4trace:configure.in:955: -1- m4_pattern_allow([^HAVE_VSNPRINTF$])
-m4trace:configure.in:955: -1- AH_OUTPUT([HAVE_VSNPRINTF], [/* Define if you have a standard-conformant vsnprintf function. */
-@%:@undef HAVE_VSNPRINTF])
-m4trace:configure.in:961: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2688: AC_TRY_LINK is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-../../lib/autoconf/general.m4:2053: AC_CACHE_CHECK is expanded from...
-aclocal.m4:624: BASH_FUNC_STD_PUTENV is expanded from...
-configure.in:961: the top level])
-m4trace:configure.in:961: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STD_PUTENV])
-m4trace:configure.in:961: -1- m4_pattern_allow([^HAVE_STD_PUTENV$])
-m4trace:configure.in:963: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STD_PUTENV])
-m4trace:configure.in:963: -1- m4_pattern_allow([^HAVE_STD_PUTENV$])
-m4trace:configure.in:966: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2688: AC_TRY_LINK is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-../../lib/autoconf/general.m4:2053: AC_CACHE_CHECK is expanded from...
-aclocal.m4:654: BASH_FUNC_STD_UNSETENV is expanded from...
-configure.in:966: the top level])
-m4trace:configure.in:966: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STD_UNSETENV])
-m4trace:configure.in:966: -1- m4_pattern_allow([^HAVE_STD_UNSETENV$])
-m4trace:configure.in:968: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STD_UNSETENV])
-m4trace:configure.in:968: -1- m4_pattern_allow([^HAVE_STD_UNSETENV$])
-m4trace:configure.in:971: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2765: AC_TRY_RUN is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-aclocal.m4:878: BASH_FUNC_PRINTF_A_FORMAT is expanded from...
-configure.in:971: the top level])
-m4trace:configure.in:971: -1- AC_DEFINE_TRACE_LITERAL([HAVE_PRINTF_A_FORMAT])
-m4trace:configure.in:971: -1- m4_pattern_allow([^HAVE_PRINTF_A_FORMAT$])
-m4trace:configure.in:974: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2765: AC_TRY_RUN is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-aclocal.m4:1297: BASH_SYS_REINSTALL_SIGHANDLERS is expanded from...
-configure.in:974: the top level])
-m4trace:configure.in:974: -1- AC_DEFINE_TRACE_LITERAL([MUST_REINSTALL_SIGHANDLERS])
-m4trace:configure.in:974: -1- m4_pattern_allow([^MUST_REINSTALL_SIGHANDLERS$])
-m4trace:configure.in:975: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2765: AC_TRY_RUN is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-aclocal.m4:1356: BASH_SYS_JOB_CONTROL_MISSING is expanded from...
-configure.in:975: the top level])
-m4trace:configure.in:975: -1- AC_DEFINE_TRACE_LITERAL([JOB_CONTROL_MISSING])
-m4trace:configure.in:975: -1- m4_pattern_allow([^JOB_CONTROL_MISSING$])
-m4trace:configure.in:976: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2765: AC_TRY_RUN is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-aclocal.m4:1415: BASH_SYS_NAMED_PIPES is expanded from...
-configure.in:976: the top level])
-m4trace:configure.in:976: -1- AC_DEFINE_TRACE_LITERAL([NAMED_PIPES_MISSING])
-m4trace:configure.in:976: -1- m4_pattern_allow([^NAMED_PIPES_MISSING$])
-m4trace:configure.in:979: -1- AC_DEFINE_TRACE_LITERAL([GWINSZ_IN_SYS_IOCTL])
-m4trace:configure.in:979: -1- m4_pattern_allow([^GWINSZ_IN_SYS_IOCTL$])
-m4trace:configure.in:979: -1- AH_OUTPUT([GWINSZ_IN_SYS_IOCTL], [/* Define to 1 if `TIOCGWINSZ\' requires <sys/ioctl.h>. */
-@%:@undef GWINSZ_IN_SYS_IOCTL])
-m4trace:configure.in:980: -1- _m4_warn([obsolete], [The macro `AC_TRY_COMPILE' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2615: AC_TRY_COMPILE is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-aclocal.m4:1496: BASH_HAVE_TIOCSTAT is expanded from...
-configure.in:980: the top level])
-m4trace:configure.in:980: -1- AC_DEFINE_TRACE_LITERAL([TIOCSTAT_IN_SYS_IOCTL])
-m4trace:configure.in:980: -1- m4_pattern_allow([^TIOCSTAT_IN_SYS_IOCTL$])
-m4trace:configure.in:981: -1- _m4_warn([obsolete], [The macro `AC_TRY_COMPILE' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2615: AC_TRY_COMPILE is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-aclocal.m4:1508: BASH_HAVE_FIONREAD is expanded from...
-configure.in:981: the top level])
-m4trace:configure.in:981: -1- AC_DEFINE_TRACE_LITERAL([FIONREAD_IN_SYS_IOCTL])
-m4trace:configure.in:981: -1- m4_pattern_allow([^FIONREAD_IN_SYS_IOCTL$])
-m4trace:configure.in:983: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2765: AC_TRY_RUN is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-aclocal.m4:1964: BASH_CHECK_WCONTINUED is expanded from...
-configure.in:983: the top level])
-m4trace:configure.in:983: -1- AC_DEFINE_TRACE_LITERAL([WCONTINUED_BROKEN])
-m4trace:configure.in:983: -1- m4_pattern_allow([^WCONTINUED_BROKEN$])
-m4trace:configure.in:986: -1- _m4_warn([obsolete], [The macro `AC_TRY_COMPILE' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2615: AC_TRY_COMPILE is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-aclocal.m4:1526: BASH_CHECK_SPEED_T is expanded from...
-configure.in:986: the top level])
-m4trace:configure.in:986: -1- AC_DEFINE_TRACE_LITERAL([SPEED_T_IN_SYS_TYPES])
-m4trace:configure.in:986: -1- m4_pattern_allow([^SPEED_T_IN_SYS_TYPES$])
-m4trace:configure.in:987: -1- AC_DEFINE_TRACE_LITERAL([HAVE_GETPW_DECLS])
-m4trace:configure.in:987: -1- m4_pattern_allow([^HAVE_GETPW_DECLS$])
-m4trace:configure.in:988: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2765: AC_TRY_RUN is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-aclocal.m4:1653: BASH_CHECK_RTSIGS is expanded from...
-configure.in:988: the top level])
-m4trace:configure.in:988: -1- AC_DEFINE_TRACE_LITERAL([UNUSABLE_RT_SIGNALS])
-m4trace:configure.in:988: -1- m4_pattern_allow([^UNUSABLE_RT_SIGNALS$])
-m4trace:configure.in:989: -1- AC_SUBST([SIGLIST_O])
-m4trace:configure.in:989: -1- AC_SUBST_TRACE([SIGLIST_O])
-m4trace:configure.in:989: -1- m4_pattern_allow([^SIGLIST_O$])
-m4trace:configure.in:993: -1- _m4_warn([obsolete], [The macro `AC_TRY_COMPILE' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2615: AC_TRY_COMPILE is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-aclocal.m4:1605: BASH_CHECK_KERNEL_RLIMIT is expanded from...
-configure.in:993: the top level])
-m4trace:configure.in:993: -1- _m4_warn([obsolete], [The macro `AC_TRY_COMPILE' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2615: AC_TRY_COMPILE is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2591: _AC_COMPILE_IFELSE is expanded from...
-../../lib/autoconf/general.m4:2607: AC_COMPILE_IFELSE is expanded from...
-../../lib/autoconf/general.m4:2615: AC_TRY_COMPILE is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-aclocal.m4:1605: BASH_CHECK_KERNEL_RLIMIT is expanded from...
-configure.in:993: the top level])
-m4trace:configure.in:993: -1- AC_DEFINE_TRACE_LITERAL([RLIMIT_NEEDS_KERNEL])
-m4trace:configure.in:993: -1- m4_pattern_allow([^RLIMIT_NEEDS_KERNEL$])
-m4trace:configure.in:1003: -1- AC_SUBST([TERMCAP_LIB])
-m4trace:configure.in:1003: -1- AC_SUBST_TRACE([TERMCAP_LIB])
-m4trace:configure.in:1003: -1- m4_pattern_allow([^TERMCAP_LIB$])
-m4trace:configure.in:1004: -1- AC_SUBST([TERMCAP_DEP])
-m4trace:configure.in:1004: -1- AC_SUBST_TRACE([TERMCAP_DEP])
-m4trace:configure.in:1004: -1- m4_pattern_allow([^TERMCAP_DEP$])
-m4trace:configure.in:1006: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DEV_FD])
-m4trace:configure.in:1006: -1- m4_pattern_allow([^HAVE_DEV_FD$])
-m4trace:configure.in:1006: -1- AC_DEFINE_TRACE_LITERAL([DEV_FD_PREFIX])
-m4trace:configure.in:1006: -1- m4_pattern_allow([^DEV_FD_PREFIX$])
-m4trace:configure.in:1006: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DEV_FD])
-m4trace:configure.in:1006: -1- m4_pattern_allow([^HAVE_DEV_FD$])
-m4trace:configure.in:1006: -1- AC_DEFINE_TRACE_LITERAL([DEV_FD_PREFIX])
-m4trace:configure.in:1006: -1- m4_pattern_allow([^DEV_FD_PREFIX$])
-m4trace:configure.in:1007: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DEV_STDIN])
-m4trace:configure.in:1007: -1- m4_pattern_allow([^HAVE_DEV_STDIN$])
-m4trace:configure.in:1008: -1- AC_DEFINE_TRACE_LITERAL([DEFAULT_MAIL_DIRECTORY])
-m4trace:configure.in:1008: -1- m4_pattern_allow([^DEFAULT_MAIL_DIRECTORY$])
-m4trace:configure.in:1015: -1- AC_DEFINE_TRACE_LITERAL([JOB_CONTROL])
-m4trace:configure.in:1015: -1- m4_pattern_allow([^JOB_CONTROL$])
-m4trace:configure.in:1021: -1- AC_SUBST([JOBS_O])
-m4trace:configure.in:1021: -1- AC_SUBST_TRACE([JOBS_O])
-m4trace:configure.in:1021: -1- m4_pattern_allow([^JOBS_O$])
-m4trace:configure.in:1034: -1- AC_DEFINE_TRACE_LITERAL([SVR4_2])
-m4trace:configure.in:1034: -1- m4_pattern_allow([^SVR4_2$])
-m4trace:configure.in:1035: -1- AC_DEFINE_TRACE_LITERAL([SVR4])
-m4trace:configure.in:1035: -1- m4_pattern_allow([^SVR4$])
-m4trace:configure.in:1036: -1- AC_DEFINE_TRACE_LITERAL([SVR4])
-m4trace:configure.in:1036: -1- m4_pattern_allow([^SVR4$])
-m4trace:configure.in:1037: -1- AC_DEFINE_TRACE_LITERAL([SVR5])
-m4trace:configure.in:1037: -1- m4_pattern_allow([^SVR5$])
-m4trace:configure.in:1056: -1- AC_DEFINE_TRACE_LITERAL([PGRP_PIPE])
-m4trace:configure.in:1056: -1- m4_pattern_allow([^PGRP_PIPE$])
-m4trace:configure.in:1103: -1- AC_SUBST([SHOBJ_CC])
-m4trace:configure.in:1103: -1- AC_SUBST_TRACE([SHOBJ_CC])
-m4trace:configure.in:1103: -1- m4_pattern_allow([^SHOBJ_CC$])
-m4trace:configure.in:1104: -1- AC_SUBST([SHOBJ_CFLAGS])
-m4trace:configure.in:1104: -1- AC_SUBST_TRACE([SHOBJ_CFLAGS])
-m4trace:configure.in:1104: -1- m4_pattern_allow([^SHOBJ_CFLAGS$])
-m4trace:configure.in:1105: -1- AC_SUBST([SHOBJ_LD])
-m4trace:configure.in:1105: -1- AC_SUBST_TRACE([SHOBJ_LD])
-m4trace:configure.in:1105: -1- m4_pattern_allow([^SHOBJ_LD$])
-m4trace:configure.in:1106: -1- AC_SUBST([SHOBJ_LDFLAGS])
-m4trace:configure.in:1106: -1- AC_SUBST_TRACE([SHOBJ_LDFLAGS])
-m4trace:configure.in:1106: -1- m4_pattern_allow([^SHOBJ_LDFLAGS$])
-m4trace:configure.in:1107: -1- AC_SUBST([SHOBJ_XLDFLAGS])
-m4trace:configure.in:1107: -1- AC_SUBST_TRACE([SHOBJ_XLDFLAGS])
-m4trace:configure.in:1107: -1- m4_pattern_allow([^SHOBJ_XLDFLAGS$])
-m4trace:configure.in:1108: -1- AC_SUBST([SHOBJ_LIBS])
-m4trace:configure.in:1108: -1- AC_SUBST_TRACE([SHOBJ_LIBS])
-m4trace:configure.in:1108: -1- m4_pattern_allow([^SHOBJ_LIBS$])
-m4trace:configure.in:1109: -1- AC_SUBST([SHOBJ_STATUS])
-m4trace:configure.in:1109: -1- AC_SUBST_TRACE([SHOBJ_STATUS])
-m4trace:configure.in:1109: -1- m4_pattern_allow([^SHOBJ_STATUS$])
-m4trace:configure.in:1141: -1- AC_SUBST([PROFILE_FLAGS])
-m4trace:configure.in:1141: -1- AC_SUBST_TRACE([PROFILE_FLAGS])
-m4trace:configure.in:1141: -1- m4_pattern_allow([^PROFILE_FLAGS$])
-m4trace:configure.in:1143: -1- AC_SUBST([incdir])
-m4trace:configure.in:1143: -1- AC_SUBST_TRACE([incdir])
-m4trace:configure.in:1143: -1- m4_pattern_allow([^incdir$])
-m4trace:configure.in:1144: -1- AC_SUBST([BUILD_DIR])
-m4trace:configure.in:1144: -1- AC_SUBST_TRACE([BUILD_DIR])
-m4trace:configure.in:1144: -1- m4_pattern_allow([^BUILD_DIR$])
-m4trace:configure.in:1147: -1- AC_SUBST([datarootdir])
-m4trace:configure.in:1147: -1- AC_SUBST_TRACE([datarootdir])
-m4trace:configure.in:1147: -1- m4_pattern_allow([^datarootdir$])
-m4trace:configure.in:1148: -1- AC_SUBST([localedir])
-m4trace:configure.in:1148: -1- AC_SUBST_TRACE([localedir])
-m4trace:configure.in:1148: -1- m4_pattern_allow([^localedir$])
-m4trace:configure.in:1150: -1- AC_SUBST([YACC])
-m4trace:configure.in:1150: -1- AC_SUBST_TRACE([YACC])
-m4trace:configure.in:1150: -1- m4_pattern_allow([^YACC$])
-m4trace:configure.in:1151: -1- AC_SUBST([AR])
-m4trace:configure.in:1151: -1- AC_SUBST_TRACE([AR])
-m4trace:configure.in:1151: -1- m4_pattern_allow([^AR$])
-m4trace:configure.in:1152: -1- AC_SUBST([ARFLAGS])
-m4trace:configure.in:1152: -1- AC_SUBST_TRACE([ARFLAGS])
-m4trace:configure.in:1152: -1- m4_pattern_allow([^ARFLAGS$])
-m4trace:configure.in:1154: -1- AC_SUBST([BASHVERS])
-m4trace:configure.in:1154: -1- AC_SUBST_TRACE([BASHVERS])
-m4trace:configure.in:1154: -1- m4_pattern_allow([^BASHVERS$])
-m4trace:configure.in:1155: -1- AC_SUBST([RELSTATUS])
-m4trace:configure.in:1155: -1- AC_SUBST_TRACE([RELSTATUS])
-m4trace:configure.in:1155: -1- m4_pattern_allow([^RELSTATUS$])
-m4trace:configure.in:1156: -1- AC_SUBST([DEBUG])
-m4trace:configure.in:1156: -1- AC_SUBST_TRACE([DEBUG])
-m4trace:configure.in:1156: -1- m4_pattern_allow([^DEBUG$])
-m4trace:configure.in:1157: -1- AC_SUBST([MALLOC_DEBUG])
-m4trace:configure.in:1157: -1- AC_SUBST_TRACE([MALLOC_DEBUG])
-m4trace:configure.in:1157: -1- m4_pattern_allow([^MALLOC_DEBUG$])
-m4trace:configure.in:1159: -1- AC_SUBST([host_cpu])
-m4trace:configure.in:1159: -1- AC_SUBST_TRACE([host_cpu])
-m4trace:configure.in:1159: -1- m4_pattern_allow([^host_cpu$])
-m4trace:configure.in:1160: -1- AC_SUBST([host_vendor])
-m4trace:configure.in:1160: -1- AC_SUBST_TRACE([host_vendor])
-m4trace:configure.in:1160: -1- m4_pattern_allow([^host_vendor$])
-m4trace:configure.in:1161: -1- AC_SUBST([host_os])
-m4trace:configure.in:1161: -1- AC_SUBST_TRACE([host_os])
-m4trace:configure.in:1161: -1- m4_pattern_allow([^host_os$])
-m4trace:configure.in:1163: -1- AC_SUBST([LOCAL_LIBS])
-m4trace:configure.in:1163: -1- AC_SUBST_TRACE([LOCAL_LIBS])
-m4trace:configure.in:1163: -1- m4_pattern_allow([^LOCAL_LIBS$])
-m4trace:configure.in:1164: -1- AC_SUBST([LOCAL_CFLAGS])
-m4trace:configure.in:1164: -1- AC_SUBST_TRACE([LOCAL_CFLAGS])
-m4trace:configure.in:1164: -1- m4_pattern_allow([^LOCAL_CFLAGS$])
-m4trace:configure.in:1165: -1- AC_SUBST([LOCAL_LDFLAGS])
-m4trace:configure.in:1165: -1- AC_SUBST_TRACE([LOCAL_LDFLAGS])
-m4trace:configure.in:1165: -1- m4_pattern_allow([^LOCAL_LDFLAGS$])
-m4trace:configure.in:1166: -1- AC_SUBST([LOCAL_DEFS])
-m4trace:configure.in:1166: -1- AC_SUBST_TRACE([LOCAL_DEFS])
-m4trace:configure.in:1166: -1- m4_pattern_allow([^LOCAL_DEFS$])
-m4trace:configure.in:1171: -1- AC_CONFIG_FILES([Makefile builtins/Makefile lib/readline/Makefile lib/glob/Makefile \
-         lib/intl/Makefile \
-         lib/malloc/Makefile lib/sh/Makefile lib/termcap/Makefile \
-         lib/tilde/Makefile doc/Makefile support/Makefile po/Makefile.in \
-         examples/loadables/Makefile examples/loadables/perl/Makefile])
-m4trace:configure.in:1171: -1- _m4_warn([obsolete], [AC_OUTPUT should be used without arguments.
-You should run autoupdate.], [])
-m4trace:configure.in:1171: -1- AC_SUBST([LIB@&t@OBJS], [$ac_libobjs])
-m4trace:configure.in:1171: -1- AC_SUBST_TRACE([LIB@&t@OBJS])
-m4trace:configure.in:1171: -1- m4_pattern_allow([^LIB@&t@OBJS$])
-m4trace:configure.in:1171: -1- AC_SUBST([LTLIBOBJS], [$ac_ltlibobjs])
-m4trace:configure.in:1171: -1- AC_SUBST_TRACE([LTLIBOBJS])
-m4trace:configure.in:1171: -1- m4_pattern_allow([^LTLIBOBJS$])
-m4trace:configure.in:1171: -1- AC_SUBST_TRACE([top_builddir])
-m4trace:configure.in:1171: -1- AC_SUBST_TRACE([top_build_prefix])
-m4trace:configure.in:1171: -1- AC_SUBST_TRACE([srcdir])
-m4trace:configure.in:1171: -1- AC_SUBST_TRACE([abs_srcdir])
-m4trace:configure.in:1171: -1- AC_SUBST_TRACE([top_srcdir])
-m4trace:configure.in:1171: -1- AC_SUBST_TRACE([abs_top_srcdir])
-m4trace:configure.in:1171: -1- AC_SUBST_TRACE([builddir])
-m4trace:configure.in:1171: -1- AC_SUBST_TRACE([abs_builddir])
-m4trace:configure.in:1171: -1- AC_SUBST_TRACE([abs_top_builddir])
-m4trace:configure.in:1171: -1- AC_SUBST_TRACE([INSTALL])
diff --git a/autom4te.cache/traces.1 b/autom4te.cache/traces.1
deleted file mode 100644 (file)
index 9579160..0000000
+++ /dev/null
@@ -1,2772 +0,0 @@
-m4trace:configure.in:29: -1- AC_INIT([bash], [4.2-maint], [bug-bash@gnu.org])
-m4trace:configure.in:29: -1- m4_pattern_forbid([^_?A[CHUM]_])
-m4trace:configure.in:29: -1- m4_pattern_forbid([_AC_])
-m4trace:configure.in:29: -1- m4_pattern_forbid([^LIBOBJS$], [do not use LIBOBJS directly, use AC_LIBOBJ (see section `AC_LIBOBJ vs LIBOBJS'])
-m4trace:configure.in:29: -1- m4_pattern_allow([^AS_FLAGS$])
-m4trace:configure.in:29: -1- m4_pattern_forbid([^_?m4_])
-m4trace:configure.in:29: -1- m4_pattern_forbid([^dnl$])
-m4trace:configure.in:29: -1- m4_pattern_forbid([^_?AS_])
-m4trace:configure.in:29: -1- AC_SUBST([SHELL])
-m4trace:configure.in:29: -1- AC_SUBST_TRACE([SHELL])
-m4trace:configure.in:29: -1- m4_pattern_allow([^SHELL$])
-m4trace:configure.in:29: -1- AC_SUBST([PATH_SEPARATOR])
-m4trace:configure.in:29: -1- AC_SUBST_TRACE([PATH_SEPARATOR])
-m4trace:configure.in:29: -1- m4_pattern_allow([^PATH_SEPARATOR$])
-m4trace:configure.in:29: -1- AC_SUBST([PACKAGE_NAME], [m4_ifdef([AC_PACKAGE_NAME],      ['AC_PACKAGE_NAME'])])
-m4trace:configure.in:29: -1- AC_SUBST_TRACE([PACKAGE_NAME])
-m4trace:configure.in:29: -1- m4_pattern_allow([^PACKAGE_NAME$])
-m4trace:configure.in:29: -1- AC_SUBST([PACKAGE_TARNAME], [m4_ifdef([AC_PACKAGE_TARNAME],   ['AC_PACKAGE_TARNAME'])])
-m4trace:configure.in:29: -1- AC_SUBST_TRACE([PACKAGE_TARNAME])
-m4trace:configure.in:29: -1- m4_pattern_allow([^PACKAGE_TARNAME$])
-m4trace:configure.in:29: -1- AC_SUBST([PACKAGE_VERSION], [m4_ifdef([AC_PACKAGE_VERSION],   ['AC_PACKAGE_VERSION'])])
-m4trace:configure.in:29: -1- AC_SUBST_TRACE([PACKAGE_VERSION])
-m4trace:configure.in:29: -1- m4_pattern_allow([^PACKAGE_VERSION$])
-m4trace:configure.in:29: -1- AC_SUBST([PACKAGE_STRING], [m4_ifdef([AC_PACKAGE_STRING],    ['AC_PACKAGE_STRING'])])
-m4trace:configure.in:29: -1- AC_SUBST_TRACE([PACKAGE_STRING])
-m4trace:configure.in:29: -1- m4_pattern_allow([^PACKAGE_STRING$])
-m4trace:configure.in:29: -1- AC_SUBST([PACKAGE_BUGREPORT], [m4_ifdef([AC_PACKAGE_BUGREPORT], ['AC_PACKAGE_BUGREPORT'])])
-m4trace:configure.in:29: -1- AC_SUBST_TRACE([PACKAGE_BUGREPORT])
-m4trace:configure.in:29: -1- m4_pattern_allow([^PACKAGE_BUGREPORT$])
-m4trace:configure.in:29: -1- AC_SUBST([PACKAGE_URL], [m4_ifdef([AC_PACKAGE_URL],       ['AC_PACKAGE_URL'])])
-m4trace:configure.in:29: -1- AC_SUBST_TRACE([PACKAGE_URL])
-m4trace:configure.in:29: -1- m4_pattern_allow([^PACKAGE_URL$])
-m4trace:configure.in:29: -1- AC_SUBST([exec_prefix], [NONE])
-m4trace:configure.in:29: -1- AC_SUBST_TRACE([exec_prefix])
-m4trace:configure.in:29: -1- m4_pattern_allow([^exec_prefix$])
-m4trace:configure.in:29: -1- AC_SUBST([prefix], [NONE])
-m4trace:configure.in:29: -1- AC_SUBST_TRACE([prefix])
-m4trace:configure.in:29: -1- m4_pattern_allow([^prefix$])
-m4trace:configure.in:29: -1- AC_SUBST([program_transform_name], [s,x,x,])
-m4trace:configure.in:29: -1- AC_SUBST_TRACE([program_transform_name])
-m4trace:configure.in:29: -1- m4_pattern_allow([^program_transform_name$])
-m4trace:configure.in:29: -1- AC_SUBST([bindir], ['${exec_prefix}/bin'])
-m4trace:configure.in:29: -1- AC_SUBST_TRACE([bindir])
-m4trace:configure.in:29: -1- m4_pattern_allow([^bindir$])
-m4trace:configure.in:29: -1- AC_SUBST([sbindir], ['${exec_prefix}/sbin'])
-m4trace:configure.in:29: -1- AC_SUBST_TRACE([sbindir])
-m4trace:configure.in:29: -1- m4_pattern_allow([^sbindir$])
-m4trace:configure.in:29: -1- AC_SUBST([libexecdir], ['${exec_prefix}/libexec'])
-m4trace:configure.in:29: -1- AC_SUBST_TRACE([libexecdir])
-m4trace:configure.in:29: -1- m4_pattern_allow([^libexecdir$])
-m4trace:configure.in:29: -1- AC_SUBST([datarootdir], ['${prefix}/share'])
-m4trace:configure.in:29: -1- AC_SUBST_TRACE([datarootdir])
-m4trace:configure.in:29: -1- m4_pattern_allow([^datarootdir$])
-m4trace:configure.in:29: -1- AC_SUBST([datadir], ['${datarootdir}'])
-m4trace:configure.in:29: -1- AC_SUBST_TRACE([datadir])
-m4trace:configure.in:29: -1- m4_pattern_allow([^datadir$])
-m4trace:configure.in:29: -1- AC_SUBST([sysconfdir], ['${prefix}/etc'])
-m4trace:configure.in:29: -1- AC_SUBST_TRACE([sysconfdir])
-m4trace:configure.in:29: -1- m4_pattern_allow([^sysconfdir$])
-m4trace:configure.in:29: -1- AC_SUBST([sharedstatedir], ['${prefix}/com'])
-m4trace:configure.in:29: -1- AC_SUBST_TRACE([sharedstatedir])
-m4trace:configure.in:29: -1- m4_pattern_allow([^sharedstatedir$])
-m4trace:configure.in:29: -1- AC_SUBST([localstatedir], ['${prefix}/var'])
-m4trace:configure.in:29: -1- AC_SUBST_TRACE([localstatedir])
-m4trace:configure.in:29: -1- m4_pattern_allow([^localstatedir$])
-m4trace:configure.in:29: -1- AC_SUBST([includedir], ['${prefix}/include'])
-m4trace:configure.in:29: -1- AC_SUBST_TRACE([includedir])
-m4trace:configure.in:29: -1- m4_pattern_allow([^includedir$])
-m4trace:configure.in:29: -1- AC_SUBST([oldincludedir], ['/usr/include'])
-m4trace:configure.in:29: -1- AC_SUBST_TRACE([oldincludedir])
-m4trace:configure.in:29: -1- m4_pattern_allow([^oldincludedir$])
-m4trace:configure.in:29: -1- AC_SUBST([docdir], [m4_ifset([AC_PACKAGE_TARNAME],
-                                    ['${datarootdir}/doc/${PACKAGE_TARNAME}'],
-                                    ['${datarootdir}/doc/${PACKAGE}'])])
-m4trace:configure.in:29: -1- AC_SUBST_TRACE([docdir])
-m4trace:configure.in:29: -1- m4_pattern_allow([^docdir$])
-m4trace:configure.in:29: -1- AC_SUBST([infodir], ['${datarootdir}/info'])
-m4trace:configure.in:29: -1- AC_SUBST_TRACE([infodir])
-m4trace:configure.in:29: -1- m4_pattern_allow([^infodir$])
-m4trace:configure.in:29: -1- AC_SUBST([htmldir], ['${docdir}'])
-m4trace:configure.in:29: -1- AC_SUBST_TRACE([htmldir])
-m4trace:configure.in:29: -1- m4_pattern_allow([^htmldir$])
-m4trace:configure.in:29: -1- AC_SUBST([dvidir], ['${docdir}'])
-m4trace:configure.in:29: -1- AC_SUBST_TRACE([dvidir])
-m4trace:configure.in:29: -1- m4_pattern_allow([^dvidir$])
-m4trace:configure.in:29: -1- AC_SUBST([pdfdir], ['${docdir}'])
-m4trace:configure.in:29: -1- AC_SUBST_TRACE([pdfdir])
-m4trace:configure.in:29: -1- m4_pattern_allow([^pdfdir$])
-m4trace:configure.in:29: -1- AC_SUBST([psdir], ['${docdir}'])
-m4trace:configure.in:29: -1- AC_SUBST_TRACE([psdir])
-m4trace:configure.in:29: -1- m4_pattern_allow([^psdir$])
-m4trace:configure.in:29: -1- AC_SUBST([libdir], ['${exec_prefix}/lib'])
-m4trace:configure.in:29: -1- AC_SUBST_TRACE([libdir])
-m4trace:configure.in:29: -1- m4_pattern_allow([^libdir$])
-m4trace:configure.in:29: -1- AC_SUBST([localedir], ['${datarootdir}/locale'])
-m4trace:configure.in:29: -1- AC_SUBST_TRACE([localedir])
-m4trace:configure.in:29: -1- m4_pattern_allow([^localedir$])
-m4trace:configure.in:29: -1- AC_SUBST([mandir], ['${datarootdir}/man'])
-m4trace:configure.in:29: -1- AC_SUBST_TRACE([mandir])
-m4trace:configure.in:29: -1- m4_pattern_allow([^mandir$])
-m4trace:configure.in:29: -1- AC_DEFINE_TRACE_LITERAL([PACKAGE_NAME])
-m4trace:configure.in:29: -1- m4_pattern_allow([^PACKAGE_NAME$])
-m4trace:configure.in:29: -1- AH_OUTPUT([PACKAGE_NAME], [/* Define to the full name of this package. */
-@%:@undef PACKAGE_NAME])
-m4trace:configure.in:29: -1- AC_DEFINE_TRACE_LITERAL([PACKAGE_TARNAME])
-m4trace:configure.in:29: -1- m4_pattern_allow([^PACKAGE_TARNAME$])
-m4trace:configure.in:29: -1- AH_OUTPUT([PACKAGE_TARNAME], [/* Define to the one symbol short name of this package. */
-@%:@undef PACKAGE_TARNAME])
-m4trace:configure.in:29: -1- AC_DEFINE_TRACE_LITERAL([PACKAGE_VERSION])
-m4trace:configure.in:29: -1- m4_pattern_allow([^PACKAGE_VERSION$])
-m4trace:configure.in:29: -1- AH_OUTPUT([PACKAGE_VERSION], [/* Define to the version of this package. */
-@%:@undef PACKAGE_VERSION])
-m4trace:configure.in:29: -1- AC_DEFINE_TRACE_LITERAL([PACKAGE_STRING])
-m4trace:configure.in:29: -1- m4_pattern_allow([^PACKAGE_STRING$])
-m4trace:configure.in:29: -1- AH_OUTPUT([PACKAGE_STRING], [/* Define to the full name and version of this package. */
-@%:@undef PACKAGE_STRING])
-m4trace:configure.in:29: -1- AC_DEFINE_TRACE_LITERAL([PACKAGE_BUGREPORT])
-m4trace:configure.in:29: -1- m4_pattern_allow([^PACKAGE_BUGREPORT$])
-m4trace:configure.in:29: -1- AH_OUTPUT([PACKAGE_BUGREPORT], [/* Define to the address where bug reports for this package should be sent. */
-@%:@undef PACKAGE_BUGREPORT])
-m4trace:configure.in:29: -1- AC_DEFINE_TRACE_LITERAL([PACKAGE_URL])
-m4trace:configure.in:29: -1- m4_pattern_allow([^PACKAGE_URL$])
-m4trace:configure.in:29: -1- AH_OUTPUT([PACKAGE_URL], [/* Define to the home page for this package. */
-@%:@undef PACKAGE_URL])
-m4trace:configure.in:29: -1- AC_SUBST([DEFS])
-m4trace:configure.in:29: -1- AC_SUBST_TRACE([DEFS])
-m4trace:configure.in:29: -1- m4_pattern_allow([^DEFS$])
-m4trace:configure.in:29: -1- AC_SUBST([ECHO_C])
-m4trace:configure.in:29: -1- AC_SUBST_TRACE([ECHO_C])
-m4trace:configure.in:29: -1- m4_pattern_allow([^ECHO_C$])
-m4trace:configure.in:29: -1- AC_SUBST([ECHO_N])
-m4trace:configure.in:29: -1- AC_SUBST_TRACE([ECHO_N])
-m4trace:configure.in:29: -1- m4_pattern_allow([^ECHO_N$])
-m4trace:configure.in:29: -1- AC_SUBST([ECHO_T])
-m4trace:configure.in:29: -1- AC_SUBST_TRACE([ECHO_T])
-m4trace:configure.in:29: -1- m4_pattern_allow([^ECHO_T$])
-m4trace:configure.in:29: -1- AC_SUBST([LIBS])
-m4trace:configure.in:29: -1- AC_SUBST_TRACE([LIBS])
-m4trace:configure.in:29: -1- m4_pattern_allow([^LIBS$])
-m4trace:configure.in:29: -1- AC_SUBST([build_alias])
-m4trace:configure.in:29: -1- AC_SUBST_TRACE([build_alias])
-m4trace:configure.in:29: -1- m4_pattern_allow([^build_alias$])
-m4trace:configure.in:29: -1- AC_SUBST([host_alias])
-m4trace:configure.in:29: -1- AC_SUBST_TRACE([host_alias])
-m4trace:configure.in:29: -1- m4_pattern_allow([^host_alias$])
-m4trace:configure.in:29: -1- AC_SUBST([target_alias])
-m4trace:configure.in:29: -1- AC_SUBST_TRACE([target_alias])
-m4trace:configure.in:29: -1- m4_pattern_allow([^target_alias$])
-m4trace:configure.in:36: -1- AC_CONFIG_AUX_DIR([./support])
-m4trace:configure.in:37: -1- AC_CONFIG_HEADERS([config.h])
-m4trace:configure.in:51: -1- AC_CANONICAL_HOST
-m4trace:configure.in:51: -1- AC_CANONICAL_BUILD
-m4trace:configure.in:51: -1- AC_REQUIRE_AUX_FILE([config.sub])
-m4trace:configure.in:51: -1- AC_REQUIRE_AUX_FILE([config.guess])
-m4trace:configure.in:51: -1- AC_SUBST([build], [$ac_cv_build])
-m4trace:configure.in:51: -1- AC_SUBST_TRACE([build])
-m4trace:configure.in:51: -1- m4_pattern_allow([^build$])
-m4trace:configure.in:51: -1- AC_SUBST([build_cpu], [$[1]])
-m4trace:configure.in:51: -1- AC_SUBST_TRACE([build_cpu])
-m4trace:configure.in:51: -1- m4_pattern_allow([^build_cpu$])
-m4trace:configure.in:51: -1- AC_SUBST([build_vendor], [$[2]])
-m4trace:configure.in:51: -1- AC_SUBST_TRACE([build_vendor])
-m4trace:configure.in:51: -1- m4_pattern_allow([^build_vendor$])
-m4trace:configure.in:51: -1- AC_SUBST([build_os])
-m4trace:configure.in:51: -1- AC_SUBST_TRACE([build_os])
-m4trace:configure.in:51: -1- m4_pattern_allow([^build_os$])
-m4trace:configure.in:51: -1- AC_SUBST([host], [$ac_cv_host])
-m4trace:configure.in:51: -1- AC_SUBST_TRACE([host])
-m4trace:configure.in:51: -1- m4_pattern_allow([^host$])
-m4trace:configure.in:51: -1- AC_SUBST([host_cpu], [$[1]])
-m4trace:configure.in:51: -1- AC_SUBST_TRACE([host_cpu])
-m4trace:configure.in:51: -1- m4_pattern_allow([^host_cpu$])
-m4trace:configure.in:51: -1- AC_SUBST([host_vendor], [$[2]])
-m4trace:configure.in:51: -1- AC_SUBST_TRACE([host_vendor])
-m4trace:configure.in:51: -1- m4_pattern_allow([^host_vendor$])
-m4trace:configure.in:51: -1- AC_SUBST([host_os])
-m4trace:configure.in:51: -1- AC_SUBST_TRACE([host_os])
-m4trace:configure.in:51: -1- m4_pattern_allow([^host_os$])
-m4trace:configure.in:52: -1- AC_CANONICAL_BUILD
-m4trace:configure.in:104: -1- AC_SUBST([DEBUGGER_START_FILE])
-m4trace:configure.in:104: -1- AC_SUBST_TRACE([DEBUGGER_START_FILE])
-m4trace:configure.in:104: -1- m4_pattern_allow([^DEBUGGER_START_FILE$])
-m4trace:configure.in:108: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.in:108: the top level])
-m4trace:configure.in:109: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.in:109: the top level])
-m4trace:configure.in:110: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.in:110: the top level])
-m4trace:configure.in:111: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.in:111: the top level])
-m4trace:configure.in:112: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.in:112: the top level])
-m4trace:configure.in:113: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.in:113: the top level])
-m4trace:configure.in:114: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.in:114: the top level])
-m4trace:configure.in:125: -1- AC_DEFINE_TRACE_LITERAL([USING_BASH_MALLOC])
-m4trace:configure.in:125: -1- m4_pattern_allow([^USING_BASH_MALLOC$])
-m4trace:configure.in:135: -1- AC_DEFINE_TRACE_LITERAL([DISABLE_MALLOC_WRAPPERS])
-m4trace:configure.in:135: -1- m4_pattern_allow([^DISABLE_MALLOC_WRAPPERS$])
-m4trace:configure.in:145: -1- AC_DEFINE_TRACE_LITERAL([AFS])
-m4trace:configure.in:145: -1- m4_pattern_allow([^AFS$])
-m4trace:configure.in:197: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.in:197: the top level])
-m4trace:configure.in:213: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.in:213: the top level])
-m4trace:configure.in:214: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.in:214: the top level])
-m4trace:configure.in:215: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.in:215: the top level])
-m4trace:configure.in:216: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.in:216: the top level])
-m4trace:configure.in:217: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.in:217: the top level])
-m4trace:configure.in:218: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.in:218: the top level])
-m4trace:configure.in:219: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.in:219: the top level])
-m4trace:configure.in:220: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.in:220: the top level])
-m4trace:configure.in:221: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.in:221: the top level])
-m4trace:configure.in:222: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.in:222: the top level])
-m4trace:configure.in:223: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.in:223: the top level])
-m4trace:configure.in:224: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.in:224: the top level])
-m4trace:configure.in:225: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.in:225: the top level])
-m4trace:configure.in:226: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.in:226: the top level])
-m4trace:configure.in:227: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.in:227: the top level])
-m4trace:configure.in:228: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.in:228: the top level])
-m4trace:configure.in:229: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.in:229: the top level])
-m4trace:configure.in:230: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.in:230: the top level])
-m4trace:configure.in:231: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.in:231: the top level])
-m4trace:configure.in:232: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.in:232: the top level])
-m4trace:configure.in:233: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.in:233: the top level])
-m4trace:configure.in:234: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.in:234: the top level])
-m4trace:configure.in:235: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.in:235: the top level])
-m4trace:configure.in:236: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.in:236: the top level])
-m4trace:configure.in:237: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.in:237: the top level])
-m4trace:configure.in:238: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.in:238: the top level])
-m4trace:configure.in:239: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.in:239: the top level])
-m4trace:configure.in:240: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.in:240: the top level])
-m4trace:configure.in:241: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.in:241: the top level])
-m4trace:configure.in:242: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.in:242: the top level])
-m4trace:configure.in:243: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.in:243: the top level])
-m4trace:configure.in:244: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.in:244: the top level])
-m4trace:configure.in:245: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.in:245: the top level])
-m4trace:configure.in:248: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.in:248: the top level])
-m4trace:configure.in:249: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.in:249: the top level])
-m4trace:configure.in:250: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.in:250: the top level])
-m4trace:configure.in:253: -1- AC_SUBST([CC_FOR_BUILD])
-m4trace:configure.in:253: -1- AC_SUBST_TRACE([CC_FOR_BUILD])
-m4trace:configure.in:253: -1- m4_pattern_allow([^CC_FOR_BUILD$])
-m4trace:configure.in:254: -1- AC_SUBST([CFLAGS_FOR_BUILD])
-m4trace:configure.in:254: -1- AC_SUBST_TRACE([CFLAGS_FOR_BUILD])
-m4trace:configure.in:254: -1- m4_pattern_allow([^CFLAGS_FOR_BUILD$])
-m4trace:configure.in:255: -1- AC_SUBST([LDFLAGS_FOR_BUILD])
-m4trace:configure.in:255: -1- AC_SUBST_TRACE([LDFLAGS_FOR_BUILD])
-m4trace:configure.in:255: -1- m4_pattern_allow([^LDFLAGS_FOR_BUILD$])
-m4trace:configure.in:256: -1- AC_SUBST([CPPFLAGS_FOR_BUILD])
-m4trace:configure.in:256: -1- AC_SUBST_TRACE([CPPFLAGS_FOR_BUILD])
-m4trace:configure.in:256: -1- m4_pattern_allow([^CPPFLAGS_FOR_BUILD$])
-m4trace:configure.in:265: -1- AC_DEFINE_TRACE_LITERAL([ALIAS])
-m4trace:configure.in:265: -1- m4_pattern_allow([^ALIAS$])
-m4trace:configure.in:268: -1- AC_DEFINE_TRACE_LITERAL([PUSHD_AND_POPD])
-m4trace:configure.in:268: -1- m4_pattern_allow([^PUSHD_AND_POPD$])
-m4trace:configure.in:271: -1- AC_DEFINE_TRACE_LITERAL([RESTRICTED_SHELL])
-m4trace:configure.in:271: -1- m4_pattern_allow([^RESTRICTED_SHELL$])
-m4trace:configure.in:274: -1- AC_DEFINE_TRACE_LITERAL([PROCESS_SUBSTITUTION])
-m4trace:configure.in:274: -1- m4_pattern_allow([^PROCESS_SUBSTITUTION$])
-m4trace:configure.in:277: -1- AC_DEFINE_TRACE_LITERAL([PROMPT_STRING_DECODE])
-m4trace:configure.in:277: -1- m4_pattern_allow([^PROMPT_STRING_DECODE$])
-m4trace:configure.in:280: -1- AC_DEFINE_TRACE_LITERAL([SELECT_COMMAND])
-m4trace:configure.in:280: -1- m4_pattern_allow([^SELECT_COMMAND$])
-m4trace:configure.in:283: -1- AC_DEFINE_TRACE_LITERAL([HELP_BUILTIN])
-m4trace:configure.in:283: -1- m4_pattern_allow([^HELP_BUILTIN$])
-m4trace:configure.in:286: -1- AC_DEFINE_TRACE_LITERAL([ARRAY_VARS])
-m4trace:configure.in:286: -1- m4_pattern_allow([^ARRAY_VARS$])
-m4trace:configure.in:289: -1- AC_DEFINE_TRACE_LITERAL([DPAREN_ARITHMETIC])
-m4trace:configure.in:289: -1- m4_pattern_allow([^DPAREN_ARITHMETIC$])
-m4trace:configure.in:292: -1- AC_DEFINE_TRACE_LITERAL([BRACE_EXPANSION])
-m4trace:configure.in:292: -1- m4_pattern_allow([^BRACE_EXPANSION$])
-m4trace:configure.in:295: -1- AC_DEFINE_TRACE_LITERAL([DISABLED_BUILTINS])
-m4trace:configure.in:295: -1- m4_pattern_allow([^DISABLED_BUILTINS$])
-m4trace:configure.in:298: -1- AC_DEFINE_TRACE_LITERAL([COMMAND_TIMING])
-m4trace:configure.in:298: -1- m4_pattern_allow([^COMMAND_TIMING$])
-m4trace:configure.in:301: -1- AC_DEFINE_TRACE_LITERAL([DEFAULT_ECHO_TO_XPG])
-m4trace:configure.in:301: -1- m4_pattern_allow([^DEFAULT_ECHO_TO_XPG$])
-m4trace:configure.in:304: -1- AC_DEFINE_TRACE_LITERAL([STRICT_POSIX])
-m4trace:configure.in:304: -1- m4_pattern_allow([^STRICT_POSIX$])
-m4trace:configure.in:307: -1- AC_DEFINE_TRACE_LITERAL([EXTENDED_GLOB])
-m4trace:configure.in:307: -1- m4_pattern_allow([^EXTENDED_GLOB$])
-m4trace:configure.in:310: -1- AC_DEFINE_TRACE_LITERAL([EXTGLOB_DEFAULT])
-m4trace:configure.in:310: -1- m4_pattern_allow([^EXTGLOB_DEFAULT$])
-m4trace:configure.in:312: -1- AC_DEFINE_TRACE_LITERAL([EXTGLOB_DEFAULT])
-m4trace:configure.in:312: -1- m4_pattern_allow([^EXTGLOB_DEFAULT$])
-m4trace:configure.in:315: -1- AC_DEFINE_TRACE_LITERAL([COND_COMMAND])
-m4trace:configure.in:315: -1- m4_pattern_allow([^COND_COMMAND$])
-m4trace:configure.in:318: -1- AC_DEFINE_TRACE_LITERAL([COND_REGEXP])
-m4trace:configure.in:318: -1- m4_pattern_allow([^COND_REGEXP$])
-m4trace:configure.in:321: -1- AC_DEFINE_TRACE_LITERAL([COPROCESS_SUPPORT])
-m4trace:configure.in:321: -1- m4_pattern_allow([^COPROCESS_SUPPORT$])
-m4trace:configure.in:324: -1- AC_DEFINE_TRACE_LITERAL([ARITH_FOR_COMMAND])
-m4trace:configure.in:324: -1- m4_pattern_allow([^ARITH_FOR_COMMAND$])
-m4trace:configure.in:327: -1- AC_DEFINE_TRACE_LITERAL([NETWORK_REDIRECTIONS])
-m4trace:configure.in:327: -1- m4_pattern_allow([^NETWORK_REDIRECTIONS$])
-m4trace:configure.in:330: -1- AC_DEFINE_TRACE_LITERAL([PROGRAMMABLE_COMPLETION])
-m4trace:configure.in:330: -1- m4_pattern_allow([^PROGRAMMABLE_COMPLETION$])
-m4trace:configure.in:333: -1- AC_DEFINE_TRACE_LITERAL([NO_MULTIBYTE_SUPPORT])
-m4trace:configure.in:333: -1- m4_pattern_allow([^NO_MULTIBYTE_SUPPORT$])
-m4trace:configure.in:336: -1- AC_DEFINE_TRACE_LITERAL([DEBUGGER])
-m4trace:configure.in:336: -1- m4_pattern_allow([^DEBUGGER$])
-m4trace:configure.in:339: -1- AC_DEFINE_TRACE_LITERAL([CASEMOD_ATTRS])
-m4trace:configure.in:339: -1- m4_pattern_allow([^CASEMOD_ATTRS$])
-m4trace:configure.in:342: -1- AC_DEFINE_TRACE_LITERAL([CASEMOD_EXPANSIONS])
-m4trace:configure.in:342: -1- m4_pattern_allow([^CASEMOD_EXPANSIONS$])
-m4trace:configure.in:346: -1- AC_DEFINE_TRACE_LITERAL([MEMSCRAMBLE])
-m4trace:configure.in:346: -1- m4_pattern_allow([^MEMSCRAMBLE$])
-m4trace:configure.in:372: -1- AC_SUBST([TESTSCRIPT])
-m4trace:configure.in:372: -1- AC_SUBST_TRACE([TESTSCRIPT])
-m4trace:configure.in:372: -1- m4_pattern_allow([^TESTSCRIPT$])
-m4trace:configure.in:373: -1- AC_SUBST([PURIFY])
-m4trace:configure.in:373: -1- AC_SUBST_TRACE([PURIFY])
-m4trace:configure.in:373: -1- m4_pattern_allow([^PURIFY$])
-m4trace:configure.in:374: -1- AC_SUBST([MALLOC_TARGET])
-m4trace:configure.in:374: -1- AC_SUBST_TRACE([MALLOC_TARGET])
-m4trace:configure.in:374: -1- m4_pattern_allow([^MALLOC_TARGET$])
-m4trace:configure.in:375: -1- AC_SUBST([MALLOC_SRC])
-m4trace:configure.in:375: -1- AC_SUBST_TRACE([MALLOC_SRC])
-m4trace:configure.in:375: -1- m4_pattern_allow([^MALLOC_SRC$])
-m4trace:configure.in:377: -1- AC_SUBST([MALLOC_LIB])
-m4trace:configure.in:377: -1- AC_SUBST_TRACE([MALLOC_LIB])
-m4trace:configure.in:377: -1- m4_pattern_allow([^MALLOC_LIB$])
-m4trace:configure.in:378: -1- AC_SUBST([MALLOC_LIBRARY])
-m4trace:configure.in:378: -1- AC_SUBST_TRACE([MALLOC_LIBRARY])
-m4trace:configure.in:378: -1- m4_pattern_allow([^MALLOC_LIBRARY$])
-m4trace:configure.in:379: -1- AC_SUBST([MALLOC_LDFLAGS])
-m4trace:configure.in:379: -1- AC_SUBST_TRACE([MALLOC_LDFLAGS])
-m4trace:configure.in:379: -1- m4_pattern_allow([^MALLOC_LDFLAGS$])
-m4trace:configure.in:380: -1- AC_SUBST([MALLOC_DEP])
-m4trace:configure.in:380: -1- AC_SUBST_TRACE([MALLOC_DEP])
-m4trace:configure.in:380: -1- m4_pattern_allow([^MALLOC_DEP$])
-m4trace:configure.in:382: -1- AC_SUBST([htmldir])
-m4trace:configure.in:382: -1- AC_SUBST_TRACE([htmldir])
-m4trace:configure.in:382: -1- m4_pattern_allow([^htmldir$])
-m4trace:configure.in:384: -1- AC_SUBST([HELPDIR])
-m4trace:configure.in:384: -1- AC_SUBST_TRACE([HELPDIR])
-m4trace:configure.in:384: -1- m4_pattern_allow([^HELPDIR$])
-m4trace:configure.in:385: -1- AC_SUBST([HELPDIRDEFINE])
-m4trace:configure.in:385: -1- AC_SUBST_TRACE([HELPDIRDEFINE])
-m4trace:configure.in:385: -1- m4_pattern_allow([^HELPDIRDEFINE$])
-m4trace:configure.in:386: -1- AC_SUBST([HELPINSTALL])
-m4trace:configure.in:386: -1- AC_SUBST_TRACE([HELPINSTALL])
-m4trace:configure.in:386: -1- m4_pattern_allow([^HELPINSTALL$])
-m4trace:configure.in:387: -1- AC_SUBST([HELPFILES_TARGET])
-m4trace:configure.in:387: -1- AC_SUBST_TRACE([HELPFILES_TARGET])
-m4trace:configure.in:387: -1- m4_pattern_allow([^HELPFILES_TARGET$])
-m4trace:configure.in:388: -1- AC_SUBST([HELPSTRINGS])
-m4trace:configure.in:388: -1- AC_SUBST_TRACE([HELPSTRINGS])
-m4trace:configure.in:388: -1- m4_pattern_allow([^HELPSTRINGS$])
-m4trace:configure.in:397: -1- AC_SUBST([CC])
-m4trace:configure.in:397: -1- AC_SUBST_TRACE([CC])
-m4trace:configure.in:397: -1- m4_pattern_allow([^CC$])
-m4trace:configure.in:397: -1- AC_SUBST([CFLAGS])
-m4trace:configure.in:397: -1- AC_SUBST_TRACE([CFLAGS])
-m4trace:configure.in:397: -1- m4_pattern_allow([^CFLAGS$])
-m4trace:configure.in:397: -1- AC_SUBST([LDFLAGS])
-m4trace:configure.in:397: -1- AC_SUBST_TRACE([LDFLAGS])
-m4trace:configure.in:397: -1- m4_pattern_allow([^LDFLAGS$])
-m4trace:configure.in:397: -1- AC_SUBST([LIBS])
-m4trace:configure.in:397: -1- AC_SUBST_TRACE([LIBS])
-m4trace:configure.in:397: -1- m4_pattern_allow([^LIBS$])
-m4trace:configure.in:397: -1- AC_SUBST([CPPFLAGS])
-m4trace:configure.in:397: -1- AC_SUBST_TRACE([CPPFLAGS])
-m4trace:configure.in:397: -1- m4_pattern_allow([^CPPFLAGS$])
-m4trace:configure.in:397: -1- AC_SUBST([CC])
-m4trace:configure.in:397: -1- AC_SUBST_TRACE([CC])
-m4trace:configure.in:397: -1- m4_pattern_allow([^CC$])
-m4trace:configure.in:397: -1- AC_SUBST([CC])
-m4trace:configure.in:397: -1- AC_SUBST_TRACE([CC])
-m4trace:configure.in:397: -1- m4_pattern_allow([^CC$])
-m4trace:configure.in:397: -1- AC_SUBST([CC])
-m4trace:configure.in:397: -1- AC_SUBST_TRACE([CC])
-m4trace:configure.in:397: -1- m4_pattern_allow([^CC$])
-m4trace:configure.in:397: -1- AC_SUBST([CC])
-m4trace:configure.in:397: -1- AC_SUBST_TRACE([CC])
-m4trace:configure.in:397: -1- m4_pattern_allow([^CC$])
-m4trace:configure.in:397: -1- AC_SUBST([ac_ct_CC])
-m4trace:configure.in:397: -1- AC_SUBST_TRACE([ac_ct_CC])
-m4trace:configure.in:397: -1- m4_pattern_allow([^ac_ct_CC$])
-m4trace:configure.in:397: -1- AC_SUBST([EXEEXT], [$ac_cv_exeext])
-m4trace:configure.in:397: -1- AC_SUBST_TRACE([EXEEXT])
-m4trace:configure.in:397: -1- m4_pattern_allow([^EXEEXT$])
-m4trace:configure.in:397: -1- AC_SUBST([OBJEXT], [$ac_cv_objext])
-m4trace:configure.in:397: -1- AC_SUBST_TRACE([OBJEXT])
-m4trace:configure.in:397: -1- m4_pattern_allow([^OBJEXT$])
-m4trace:configure.in:401: -1- _m4_warn([obsolete], [The macro `AC_MINIX' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/specific.m4:437: AC_MINIX is expanded from...
-configure.in:401: the top level])
-m4trace:configure.in:401: -1- AC_SUBST([CPP])
-m4trace:configure.in:401: -1- AC_SUBST_TRACE([CPP])
-m4trace:configure.in:401: -1- m4_pattern_allow([^CPP$])
-m4trace:configure.in:401: -1- AC_SUBST([CPPFLAGS])
-m4trace:configure.in:401: -1- AC_SUBST_TRACE([CPPFLAGS])
-m4trace:configure.in:401: -1- m4_pattern_allow([^CPPFLAGS$])
-m4trace:configure.in:401: -1- AC_SUBST([CPP])
-m4trace:configure.in:401: -1- AC_SUBST_TRACE([CPP])
-m4trace:configure.in:401: -1- m4_pattern_allow([^CPP$])
-m4trace:configure.in:401: -1- AC_SUBST([GREP])
-m4trace:configure.in:401: -1- AC_SUBST_TRACE([GREP])
-m4trace:configure.in:401: -1- m4_pattern_allow([^GREP$])
-m4trace:configure.in:401: -1- AC_SUBST([EGREP])
-m4trace:configure.in:401: -1- AC_SUBST_TRACE([EGREP])
-m4trace:configure.in:401: -1- m4_pattern_allow([^EGREP$])
-m4trace:configure.in:401: -1- AC_DEFINE_TRACE_LITERAL([STDC_HEADERS])
-m4trace:configure.in:401: -1- m4_pattern_allow([^STDC_HEADERS$])
-m4trace:configure.in:401: -1- AH_OUTPUT([STDC_HEADERS], [/* Define to 1 if you have the ANSI C header files. */
-@%:@undef STDC_HEADERS])
-m4trace:configure.in:401: -1- AH_OUTPUT([HAVE_SYS_TYPES_H], [/* Define to 1 if you have the <sys/types.h> header file. */
-@%:@undef HAVE_SYS_TYPES_H])
-m4trace:configure.in:401: -1- AH_OUTPUT([HAVE_SYS_STAT_H], [/* Define to 1 if you have the <sys/stat.h> header file. */
-@%:@undef HAVE_SYS_STAT_H])
-m4trace:configure.in:401: -1- AH_OUTPUT([HAVE_STDLIB_H], [/* Define to 1 if you have the <stdlib.h> header file. */
-@%:@undef HAVE_STDLIB_H])
-m4trace:configure.in:401: -1- AH_OUTPUT([HAVE_STRING_H], [/* Define to 1 if you have the <string.h> header file. */
-@%:@undef HAVE_STRING_H])
-m4trace:configure.in:401: -1- AH_OUTPUT([HAVE_MEMORY_H], [/* Define to 1 if you have the <memory.h> header file. */
-@%:@undef HAVE_MEMORY_H])
-m4trace:configure.in:401: -1- AH_OUTPUT([HAVE_STRINGS_H], [/* Define to 1 if you have the <strings.h> header file. */
-@%:@undef HAVE_STRINGS_H])
-m4trace:configure.in:401: -1- AH_OUTPUT([HAVE_INTTYPES_H], [/* Define to 1 if you have the <inttypes.h> header file. */
-@%:@undef HAVE_INTTYPES_H])
-m4trace:configure.in:401: -1- AH_OUTPUT([HAVE_STDINT_H], [/* Define to 1 if you have the <stdint.h> header file. */
-@%:@undef HAVE_STDINT_H])
-m4trace:configure.in:401: -1- AH_OUTPUT([HAVE_UNISTD_H], [/* Define to 1 if you have the <unistd.h> header file. */
-@%:@undef HAVE_UNISTD_H])
-m4trace:configure.in:401: -1- AC_DEFINE_TRACE_LITERAL([_POSIX_SOURCE])
-m4trace:configure.in:401: -1- m4_pattern_allow([^_POSIX_SOURCE$])
-m4trace:configure.in:401: -1- AH_OUTPUT([_POSIX_SOURCE], [/* Define to 1 if you need to in order for `stat\' and other things to work. */
-@%:@undef _POSIX_SOURCE])
-m4trace:configure.in:401: -1- AC_DEFINE_TRACE_LITERAL([_POSIX_1_SOURCE])
-m4trace:configure.in:401: -1- m4_pattern_allow([^_POSIX_1_SOURCE$])
-m4trace:configure.in:401: -1- AH_OUTPUT([_POSIX_1_SOURCE], [/* Define to 2 if the system does not provide POSIX.1 features except with
-   this defined. */
-@%:@undef _POSIX_1_SOURCE])
-m4trace:configure.in:401: -1- AC_DEFINE_TRACE_LITERAL([_MINIX])
-m4trace:configure.in:401: -1- m4_pattern_allow([^_MINIX$])
-m4trace:configure.in:401: -1- AH_OUTPUT([_MINIX], [/* Define to 1 if on MINIX. */
-@%:@undef _MINIX])
-m4trace:configure.in:401: -1- AH_OUTPUT([USE_SYSTEM_EXTENSIONS], [/* Enable extensions on AIX 3, Interix.  */
-#ifndef _ALL_SOURCE
-# undef _ALL_SOURCE
-#endif
-/* Enable GNU extensions on systems that have them.  */
-#ifndef _GNU_SOURCE
-# undef _GNU_SOURCE
-#endif
-/* Enable threading extensions on Solaris.  */
-#ifndef _POSIX_PTHREAD_SEMANTICS
-# undef _POSIX_PTHREAD_SEMANTICS
-#endif
-/* Enable extensions on HP NonStop.  */
-#ifndef _TANDEM_SOURCE
-# undef _TANDEM_SOURCE
-#endif
-/* Enable general extensions on Solaris.  */
-#ifndef __EXTENSIONS__
-# undef __EXTENSIONS__
-#endif
-])
-m4trace:configure.in:401: -1- AC_DEFINE_TRACE_LITERAL([__EXTENSIONS__])
-m4trace:configure.in:401: -1- m4_pattern_allow([^__EXTENSIONS__$])
-m4trace:configure.in:401: -1- AC_DEFINE_TRACE_LITERAL([_ALL_SOURCE])
-m4trace:configure.in:401: -1- m4_pattern_allow([^_ALL_SOURCE$])
-m4trace:configure.in:401: -1- AC_DEFINE_TRACE_LITERAL([_GNU_SOURCE])
-m4trace:configure.in:401: -1- m4_pattern_allow([^_GNU_SOURCE$])
-m4trace:configure.in:401: -1- AC_DEFINE_TRACE_LITERAL([_POSIX_PTHREAD_SEMANTICS])
-m4trace:configure.in:401: -1- m4_pattern_allow([^_POSIX_PTHREAD_SEMANTICS$])
-m4trace:configure.in:401: -1- AC_DEFINE_TRACE_LITERAL([_TANDEM_SOURCE])
-m4trace:configure.in:401: -1- m4_pattern_allow([^_TANDEM_SOURCE$])
-m4trace:configure.in:403: -1- AC_DEFINE_TRACE_LITERAL([_FILE_OFFSET_BITS])
-m4trace:configure.in:403: -1- m4_pattern_allow([^_FILE_OFFSET_BITS$])
-m4trace:configure.in:403: -1- AH_OUTPUT([_FILE_OFFSET_BITS], [/* Number of bits in a file offset, on hosts where this is settable. */
-@%:@undef _FILE_OFFSET_BITS])
-m4trace:configure.in:403: -1- AC_DEFINE_TRACE_LITERAL([_LARGE_FILES])
-m4trace:configure.in:403: -1- m4_pattern_allow([^_LARGE_FILES$])
-m4trace:configure.in:403: -1- AH_OUTPUT([_LARGE_FILES], [/* Define for large files, on AIX-style hosts. */
-@%:@undef _LARGE_FILES])
-m4trace:configure.in:440: -1- AC_SUBST([CROSS_COMPILE])
-m4trace:configure.in:440: -1- AC_SUBST_TRACE([CROSS_COMPILE])
-m4trace:configure.in:440: -1- m4_pattern_allow([^CROSS_COMPILE$])
-m4trace:configure.in:442: -1- AC_SUBST([SIGNAMES_H])
-m4trace:configure.in:442: -1- AC_SUBST_TRACE([SIGNAMES_H])
-m4trace:configure.in:442: -1- m4_pattern_allow([^SIGNAMES_H$])
-m4trace:configure.in:443: -1- AC_SUBST([SIGNAMES_O])
-m4trace:configure.in:443: -1- AC_SUBST_TRACE([SIGNAMES_O])
-m4trace:configure.in:443: -1- m4_pattern_allow([^SIGNAMES_O$])
-m4trace:configure.in:477: -1- _m4_warn([obsolete], [The macro `ac_cv_prog_gcc' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/c.m4:436: ac_cv_prog_gcc is expanded from...
-configure.in:477: the top level])
-m4trace:configure.in:504: -1- AC_SUBST([CFLAGS])
-m4trace:configure.in:504: -1- AC_SUBST_TRACE([CFLAGS])
-m4trace:configure.in:504: -1- m4_pattern_allow([^CFLAGS$])
-m4trace:configure.in:505: -1- AC_SUBST([CPPFLAGS])
-m4trace:configure.in:505: -1- AC_SUBST_TRACE([CPPFLAGS])
-m4trace:configure.in:505: -1- m4_pattern_allow([^CPPFLAGS$])
-m4trace:configure.in:506: -1- AC_SUBST([LDFLAGS])
-m4trace:configure.in:506: -1- AC_SUBST_TRACE([LDFLAGS])
-m4trace:configure.in:506: -1- m4_pattern_allow([^LDFLAGS$])
-m4trace:configure.in:507: -1- AC_SUBST([STATIC_LD])
-m4trace:configure.in:507: -1- AC_SUBST_TRACE([STATIC_LD])
-m4trace:configure.in:507: -1- m4_pattern_allow([^STATIC_LD$])
-m4trace:configure.in:509: -1- AC_SUBST([CC_FOR_BUILD])
-m4trace:configure.in:509: -1- AC_SUBST_TRACE([CC_FOR_BUILD])
-m4trace:configure.in:509: -1- m4_pattern_allow([^CC_FOR_BUILD$])
-m4trace:configure.in:510: -1- AC_SUBST([CFLAGS_FOR_BUILD])
-m4trace:configure.in:510: -1- AC_SUBST_TRACE([CFLAGS_FOR_BUILD])
-m4trace:configure.in:510: -1- m4_pattern_allow([^CFLAGS_FOR_BUILD$])
-m4trace:configure.in:511: -1- AC_SUBST([CPPFLAGS_FOR_BUILD])
-m4trace:configure.in:511: -1- AC_SUBST_TRACE([CPPFLAGS_FOR_BUILD])
-m4trace:configure.in:511: -1- m4_pattern_allow([^CPPFLAGS_FOR_BUILD$])
-m4trace:configure.in:512: -1- AC_SUBST([LDFLAGS_FOR_BUILD])
-m4trace:configure.in:512: -1- AC_SUBST_TRACE([LDFLAGS_FOR_BUILD])
-m4trace:configure.in:512: -1- m4_pattern_allow([^LDFLAGS_FOR_BUILD$])
-m4trace:configure.in:513: -1- AC_SUBST([LIBS_FOR_BUILD])
-m4trace:configure.in:513: -1- AC_SUBST_TRACE([LIBS_FOR_BUILD])
-m4trace:configure.in:513: -1- m4_pattern_allow([^LIBS_FOR_BUILD$])
-m4trace:configure.in:527: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2765: AC_TRY_RUN is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-aclocal.m4:1806: RL_LIB_READLINE_VERSION is expanded from...
-configure.in:527: the top level])
-m4trace:configure.in:527: -1- AC_DEFINE_TRACE_LITERAL([RL_READLINE_VERSION])
-m4trace:configure.in:527: -1- m4_pattern_allow([^RL_READLINE_VERSION$])
-m4trace:configure.in:527: -1- AH_OUTPUT([RL_READLINE_VERSION], [/* encoded version of the installed readline library */
-@%:@undef RL_READLINE_VERSION])
-m4trace:configure.in:527: -1- AC_DEFINE_TRACE_LITERAL([RL_VERSION_MAJOR])
-m4trace:configure.in:527: -1- m4_pattern_allow([^RL_VERSION_MAJOR$])
-m4trace:configure.in:527: -1- AH_OUTPUT([RL_VERSION_MAJOR], [/* major version of installed readline library */
-@%:@undef RL_VERSION_MAJOR])
-m4trace:configure.in:527: -1- AC_DEFINE_TRACE_LITERAL([RL_VERSION_MINOR])
-m4trace:configure.in:527: -1- m4_pattern_allow([^RL_VERSION_MINOR$])
-m4trace:configure.in:527: -1- AH_OUTPUT([RL_VERSION_MINOR], [/* minor version of installed readline library */
-@%:@undef RL_VERSION_MINOR])
-m4trace:configure.in:527: -1- AC_SUBST([RL_VERSION])
-m4trace:configure.in:527: -1- AC_SUBST_TRACE([RL_VERSION])
-m4trace:configure.in:527: -1- m4_pattern_allow([^RL_VERSION$])
-m4trace:configure.in:527: -1- AC_SUBST([RL_MAJOR])
-m4trace:configure.in:527: -1- AC_SUBST_TRACE([RL_MAJOR])
-m4trace:configure.in:527: -1- m4_pattern_allow([^RL_MAJOR$])
-m4trace:configure.in:527: -1- AC_SUBST([RL_MINOR])
-m4trace:configure.in:527: -1- AC_SUBST_TRACE([RL_MINOR])
-m4trace:configure.in:527: -1- m4_pattern_allow([^RL_MINOR$])
-m4trace:configure.in:540: -1- AC_DEFINE_TRACE_LITERAL([READLINE])
-m4trace:configure.in:540: -1- m4_pattern_allow([^READLINE$])
-m4trace:configure.in:575: -1- AC_DEFINE_TRACE_LITERAL([HISTORY])
-m4trace:configure.in:575: -1- m4_pattern_allow([^HISTORY$])
-m4trace:configure.in:578: -1- AC_DEFINE_TRACE_LITERAL([BANG_HISTORY])
-m4trace:configure.in:578: -1- m4_pattern_allow([^BANG_HISTORY$])
-m4trace:configure.in:608: -1- AC_SUBST([READLINE_LIB])
-m4trace:configure.in:608: -1- AC_SUBST_TRACE([READLINE_LIB])
-m4trace:configure.in:608: -1- m4_pattern_allow([^READLINE_LIB$])
-m4trace:configure.in:609: -1- AC_SUBST([READLINE_DEP])
-m4trace:configure.in:609: -1- AC_SUBST_TRACE([READLINE_DEP])
-m4trace:configure.in:609: -1- m4_pattern_allow([^READLINE_DEP$])
-m4trace:configure.in:610: -1- AC_SUBST([RL_LIBDIR])
-m4trace:configure.in:610: -1- AC_SUBST_TRACE([RL_LIBDIR])
-m4trace:configure.in:610: -1- m4_pattern_allow([^RL_LIBDIR$])
-m4trace:configure.in:611: -1- AC_SUBST([RL_INCLUDEDIR])
-m4trace:configure.in:611: -1- AC_SUBST_TRACE([RL_INCLUDEDIR])
-m4trace:configure.in:611: -1- m4_pattern_allow([^RL_INCLUDEDIR$])
-m4trace:configure.in:612: -1- AC_SUBST([RL_INCLUDE])
-m4trace:configure.in:612: -1- AC_SUBST_TRACE([RL_INCLUDE])
-m4trace:configure.in:612: -1- m4_pattern_allow([^RL_INCLUDE$])
-m4trace:configure.in:613: -1- AC_SUBST([HISTORY_LIB])
-m4trace:configure.in:613: -1- AC_SUBST_TRACE([HISTORY_LIB])
-m4trace:configure.in:613: -1- m4_pattern_allow([^HISTORY_LIB$])
-m4trace:configure.in:614: -1- AC_SUBST([HISTORY_DEP])
-m4trace:configure.in:614: -1- AC_SUBST_TRACE([HISTORY_DEP])
-m4trace:configure.in:614: -1- m4_pattern_allow([^HISTORY_DEP$])
-m4trace:configure.in:615: -1- AC_SUBST([HIST_LIBDIR])
-m4trace:configure.in:615: -1- AC_SUBST_TRACE([HIST_LIBDIR])
-m4trace:configure.in:615: -1- m4_pattern_allow([^HIST_LIBDIR$])
-m4trace:configure.in:616: -1- AC_SUBST([TILDE_LIB])
-m4trace:configure.in:616: -1- AC_SUBST_TRACE([TILDE_LIB])
-m4trace:configure.in:616: -1- m4_pattern_allow([^TILDE_LIB$])
-m4trace:configure.in:621: -1- AC_REQUIRE_AUX_FILE([install-sh])
-m4trace:configure.in:621: -1- AC_SUBST([INSTALL_PROGRAM])
-m4trace:configure.in:621: -1- AC_SUBST_TRACE([INSTALL_PROGRAM])
-m4trace:configure.in:621: -1- m4_pattern_allow([^INSTALL_PROGRAM$])
-m4trace:configure.in:621: -1- AC_SUBST([INSTALL_SCRIPT])
-m4trace:configure.in:621: -1- AC_SUBST_TRACE([INSTALL_SCRIPT])
-m4trace:configure.in:621: -1- m4_pattern_allow([^INSTALL_SCRIPT$])
-m4trace:configure.in:621: -1- AC_SUBST([INSTALL_DATA])
-m4trace:configure.in:621: -1- AC_SUBST_TRACE([INSTALL_DATA])
-m4trace:configure.in:621: -1- m4_pattern_allow([^INSTALL_DATA$])
-m4trace:configure.in:622: -1- AC_SUBST([AR])
-m4trace:configure.in:622: -1- AC_SUBST_TRACE([AR])
-m4trace:configure.in:622: -1- m4_pattern_allow([^AR$])
-m4trace:configure.in:626: -1- AC_SUBST([RANLIB])
-m4trace:configure.in:626: -1- AC_SUBST_TRACE([RANLIB])
-m4trace:configure.in:626: -1- m4_pattern_allow([^RANLIB$])
-m4trace:configure.in:627: -1- AC_SUBST([YACC])
-m4trace:configure.in:627: -1- AC_SUBST_TRACE([YACC])
-m4trace:configure.in:627: -1- m4_pattern_allow([^YACC$])
-m4trace:configure.in:627: -1- AC_SUBST([YACC])
-m4trace:configure.in:627: -1- AC_SUBST_TRACE([YACC])
-m4trace:configure.in:627: -1- m4_pattern_allow([^YACC$])
-m4trace:configure.in:627: -1- AC_SUBST([YFLAGS])
-m4trace:configure.in:627: -1- AC_SUBST_TRACE([YFLAGS])
-m4trace:configure.in:627: -1- m4_pattern_allow([^YFLAGS$])
-m4trace:configure.in:628: -1- AC_SUBST([SET_MAKE])
-m4trace:configure.in:628: -1- AC_SUBST_TRACE([SET_MAKE])
-m4trace:configure.in:628: -1- m4_pattern_allow([^SET_MAKE$])
-m4trace:configure.in:634: -1- AC_SUBST([MAKE_SHELL])
-m4trace:configure.in:634: -1- AC_SUBST_TRACE([MAKE_SHELL])
-m4trace:configure.in:634: -1- m4_pattern_allow([^MAKE_SHELL$])
-m4trace:configure.in:656: -1- AC_SUBST([SIZE])
-m4trace:configure.in:656: -1- AC_SUBST_TRACE([SIZE])
-m4trace:configure.in:656: -1- m4_pattern_allow([^SIZE$])
-m4trace:configure.in:658: -1- m4_include([m4/stat-time.m4])
-m4trace:configure.in:659: -1- m4_include([m4/timespec.m4])
-m4trace:configure.in:662: -1- AC_DEFINE_TRACE_LITERAL([_GNU_SOURCE])
-m4trace:configure.in:662: -1- m4_pattern_allow([^_GNU_SOURCE$])
-m4trace:configure.in:665: -1- AC_DEFINE_TRACE_LITERAL([const])
-m4trace:configure.in:665: -1- m4_pattern_allow([^const$])
-m4trace:configure.in:665: -1- AH_OUTPUT([const], [/* Define to empty if `const\' does not conform to ANSI C. */
-@%:@undef const])
-m4trace:configure.in:666: -1- AH_OUTPUT([inline], [/* Define to `__inline__\' or `__inline\' if that\'s what the C compiler
-   calls it, or to nothing if \'inline\' is not supported under any name.  */
-#ifndef __cplusplus
-#undef inline
-#endif])
-m4trace:configure.in:667: -1- AH_OUTPUT([WORDS_BIGENDIAN], [/* Define WORDS_BIGENDIAN to 1 if your processor stores words with the most
-   significant byte first (like Motorola and SPARC, unlike Intel). */
-#if defined AC_APPLE_UNIVERSAL_BUILD
-# if defined __BIG_ENDIAN__
-#  define WORDS_BIGENDIAN 1
-# endif
-#else
-# ifndef WORDS_BIGENDIAN
-#  undef WORDS_BIGENDIAN
-# endif
-#endif])
-m4trace:configure.in:667: -1- AC_DEFINE_TRACE_LITERAL([WORDS_BIGENDIAN])
-m4trace:configure.in:667: -1- m4_pattern_allow([^WORDS_BIGENDIAN$])
-m4trace:configure.in:667: -1- AC_DEFINE_TRACE_LITERAL([AC_APPLE_UNIVERSAL_BUILD])
-m4trace:configure.in:667: -1- m4_pattern_allow([^AC_APPLE_UNIVERSAL_BUILD$])
-m4trace:configure.in:667: -1- AH_OUTPUT([AC_APPLE_UNIVERSAL_BUILD], [/* Define if building universal (internal helper macro) */
-@%:@undef AC_APPLE_UNIVERSAL_BUILD])
-m4trace:configure.in:668: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STRINGIZE])
-m4trace:configure.in:668: -1- m4_pattern_allow([^HAVE_STRINGIZE$])
-m4trace:configure.in:668: -1- AH_OUTPUT([HAVE_STRINGIZE], [/* Define to 1 if cpp supports the ANSI @%:@ stringizing operator. */
-@%:@undef HAVE_STRINGIZE])
-m4trace:configure.in:669: -1- _m4_warn([obsolete], [The macro `AC_C_LONG_DOUBLE' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/types.m4:451: AC_C_LONG_DOUBLE is expanded from...
-configure.in:669: the top level])
-m4trace:configure.in:669: -1- AC_DEFINE_TRACE_LITERAL([HAVE_LONG_DOUBLE_WIDER])
-m4trace:configure.in:669: -1- m4_pattern_allow([^HAVE_LONG_DOUBLE_WIDER$])
-m4trace:configure.in:669: -1- AH_OUTPUT([HAVE_LONG_DOUBLE_WIDER], [/* Define to 1 if the type `long double\' works and has more range or precision
-   than `double\'. */
-@%:@undef HAVE_LONG_DOUBLE_WIDER])
-m4trace:configure.in:669: -1- AC_DEFINE_TRACE_LITERAL([HAVE_LONG_DOUBLE])
-m4trace:configure.in:669: -1- m4_pattern_allow([^HAVE_LONG_DOUBLE$])
-m4trace:configure.in:669: -1- AH_OUTPUT([HAVE_LONG_DOUBLE], [/* Define to 1 if the type `long double\' works and has more range or precision
-   than `double\'. */
-@%:@undef HAVE_LONG_DOUBLE])
-m4trace:configure.in:670: -1- AC_DEFINE_TRACE_LITERAL([PROTOTYPES])
-m4trace:configure.in:670: -1- m4_pattern_allow([^PROTOTYPES$])
-m4trace:configure.in:670: -1- AH_OUTPUT([PROTOTYPES], [/* Define to 1 if the C compiler supports function prototypes. */
-@%:@undef PROTOTYPES])
-m4trace:configure.in:670: -1- AC_DEFINE_TRACE_LITERAL([__PROTOTYPES])
-m4trace:configure.in:670: -1- m4_pattern_allow([^__PROTOTYPES$])
-m4trace:configure.in:670: -1- AH_OUTPUT([__PROTOTYPES], [/* Define like PROTOTYPES; this can be used by system headers. */
-@%:@undef __PROTOTYPES])
-m4trace:configure.in:671: -1- AH_OUTPUT([__CHAR_UNSIGNED__], [/* Define to 1 if type `char\' is unsigned and you are not using gcc.  */
-#ifndef __CHAR_UNSIGNED__
-# undef __CHAR_UNSIGNED__
-#endif])
-m4trace:configure.in:671: -1- AC_DEFINE_TRACE_LITERAL([__CHAR_UNSIGNED__])
-m4trace:configure.in:671: -1- m4_pattern_allow([^__CHAR_UNSIGNED__$])
-m4trace:configure.in:672: -1- AC_DEFINE_TRACE_LITERAL([volatile])
-m4trace:configure.in:672: -1- m4_pattern_allow([^volatile$])
-m4trace:configure.in:672: -1- AH_OUTPUT([volatile], [/* Define to empty if the keyword `volatile\' does not work. Warning: valid
-   code using `volatile\' can become incorrect without. Disable with care. */
-@%:@undef volatile])
-m4trace:configure.in:673: -1- AH_OUTPUT([restrict], [/* Define to the equivalent of the C99 \'restrict\' keyword, or to
-   nothing if this is not supported.  Do not define if restrict is
-   supported directly.  */
-#undef restrict
-/* Work around a bug in Sun C++: it does not support _Restrict or
-   __restrict__, even though the corresponding Sun C compiler ends up with
-   "#define restrict _Restrict" or "#define restrict __restrict__" in the
-   previous line.  Perhaps some future version of Sun C++ will work with
-   restrict; if so, hopefully it defines __RESTRICT like Sun C does.  */
-#if defined __SUNPRO_CC && !defined __RESTRICT
-# define _Restrict
-# define __restrict__
-#endif])
-m4trace:configure.in:673: -1- AC_DEFINE_TRACE_LITERAL([restrict])
-m4trace:configure.in:673: -1- m4_pattern_allow([^restrict$])
-m4trace:configure.in:673: -1- AC_DEFINE_TRACE_LITERAL([restrict])
-m4trace:configure.in:673: -1- m4_pattern_allow([^restrict$])
-m4trace:configure.in:676: -1- AM_GNU_GETTEXT([no-libtool], [need-ngettext], [lib/intl])
-m4trace:configure.in:676: -1- AC_SUBST([MKINSTALLDIRS])
-m4trace:configure.in:676: -1- AC_SUBST_TRACE([MKINSTALLDIRS])
-m4trace:configure.in:676: -1- m4_pattern_allow([^MKINSTALLDIRS$])
-m4trace:configure.in:676: -1- AM_NLS
-m4trace:configure.in:676: -1- AC_SUBST([USE_NLS])
-m4trace:configure.in:676: -1- AC_SUBST_TRACE([USE_NLS])
-m4trace:configure.in:676: -1- m4_pattern_allow([^USE_NLS$])
-m4trace:configure.in:676: -1- AC_SUBST([MSGFMT])
-m4trace:configure.in:676: -1- AC_SUBST_TRACE([MSGFMT])
-m4trace:configure.in:676: -1- m4_pattern_allow([^MSGFMT$])
-m4trace:configure.in:676: -1- AC_SUBST([GMSGFMT])
-m4trace:configure.in:676: -1- AC_SUBST_TRACE([GMSGFMT])
-m4trace:configure.in:676: -1- m4_pattern_allow([^GMSGFMT$])
-m4trace:configure.in:676: -1- AC_SUBST([XGETTEXT])
-m4trace:configure.in:676: -1- AC_SUBST_TRACE([XGETTEXT])
-m4trace:configure.in:676: -1- m4_pattern_allow([^XGETTEXT$])
-m4trace:configure.in:676: -1- AC_SUBST([MSGMERGE])
-m4trace:configure.in:676: -1- AC_SUBST_TRACE([MSGMERGE])
-m4trace:configure.in:676: -1- m4_pattern_allow([^MSGMERGE$])
-m4trace:configure.in:676: -1- _m4_warn([obsolete], [The macro `AC_OUTPUT_COMMANDS' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/status.m4:1028: AC_OUTPUT_COMMANDS is expanded from...
-aclocal.m4:3707: AM_PO_SUBDIRS is expanded from...
-aclocal.m4:2111: AM_GNU_GETTEXT is expanded from...
-configure.in:676: the top level])
-m4trace:configure.in:676: -1- AC_DEFINE_TRACE_LITERAL([off_t])
-m4trace:configure.in:676: -1- m4_pattern_allow([^off_t$])
-m4trace:configure.in:676: -1- AH_OUTPUT([off_t], [/* Define to `long int\' if <sys/types.h> does not define. */
-@%:@undef off_t])
-m4trace:configure.in:676: -1- AC_DEFINE_TRACE_LITERAL([size_t])
-m4trace:configure.in:676: -1- m4_pattern_allow([^size_t$])
-m4trace:configure.in:676: -1- AH_OUTPUT([size_t], [/* Define to `unsigned int\' if <sys/types.h> does not define. */
-@%:@undef size_t])
-m4trace:configure.in:676: -1- AC_DEFINE_TRACE_LITERAL([HAVE_ALLOCA_H])
-m4trace:configure.in:676: -1- m4_pattern_allow([^HAVE_ALLOCA_H$])
-m4trace:configure.in:676: -1- AH_OUTPUT([HAVE_ALLOCA_H], [/* Define to 1 if you have <alloca.h> and it should be used (not on Ultrix).
-   */
-@%:@undef HAVE_ALLOCA_H])
-m4trace:configure.in:676: -1- AC_DEFINE_TRACE_LITERAL([HAVE_ALLOCA])
-m4trace:configure.in:676: -1- m4_pattern_allow([^HAVE_ALLOCA$])
-m4trace:configure.in:676: -1- AH_OUTPUT([HAVE_ALLOCA], [/* Define to 1 if you have `alloca\', as a function or macro. */
-@%:@undef HAVE_ALLOCA])
-m4trace:configure.in:676: -1- AC_LIBSOURCE([alloca.c])
-m4trace:configure.in:676: -1- AC_SUBST([ALLOCA], [\${LIBOBJDIR}alloca.$ac_objext])
-m4trace:configure.in:676: -1- AC_SUBST_TRACE([ALLOCA])
-m4trace:configure.in:676: -1- m4_pattern_allow([^ALLOCA$])
-m4trace:configure.in:676: -1- AC_DEFINE_TRACE_LITERAL([C_ALLOCA])
-m4trace:configure.in:676: -1- m4_pattern_allow([^C_ALLOCA$])
-m4trace:configure.in:676: -1- AH_OUTPUT([C_ALLOCA], [/* Define to 1 if using `alloca.c\'. */
-@%:@undef C_ALLOCA])
-m4trace:configure.in:676: -1- AC_DEFINE_TRACE_LITERAL([CRAY_STACKSEG_END])
-m4trace:configure.in:676: -1- m4_pattern_allow([^CRAY_STACKSEG_END$])
-m4trace:configure.in:676: -1- AH_OUTPUT([CRAY_STACKSEG_END], [/* Define to one of `_getb67\', `GETB67\', `getb67\' for Cray-2 and Cray-YMP
-   systems. This function is required for `alloca.c\' support on those systems.
-   */
-@%:@undef CRAY_STACKSEG_END])
-m4trace:configure.in:676: -1- AH_OUTPUT([STACK_DIRECTION], [/* If using the C implementation of alloca, define if you know the
-   direction of stack growth for your system; otherwise it will be
-   automatically deduced at runtime.
-       STACK_DIRECTION > 0 => grows toward higher addresses
-       STACK_DIRECTION < 0 => grows toward lower addresses
-       STACK_DIRECTION = 0 => direction of growth unknown */
-@%:@undef STACK_DIRECTION])
-m4trace:configure.in:676: -1- AC_DEFINE_TRACE_LITERAL([STACK_DIRECTION])
-m4trace:configure.in:676: -1- m4_pattern_allow([^STACK_DIRECTION$])
-m4trace:configure.in:676: -1- AH_OUTPUT([HAVE_STDLIB_H], [/* Define to 1 if you have the <stdlib.h> header file. */
-@%:@undef HAVE_STDLIB_H])
-m4trace:configure.in:676: -1- AH_OUTPUT([HAVE_UNISTD_H], [/* Define to 1 if you have the <unistd.h> header file. */
-@%:@undef HAVE_UNISTD_H])
-m4trace:configure.in:676: -1- AH_OUTPUT([HAVE_SYS_PARAM_H], [/* Define to 1 if you have the <sys/param.h> header file. */
-@%:@undef HAVE_SYS_PARAM_H])
-m4trace:configure.in:676: -1- AH_OUTPUT([HAVE_GETPAGESIZE], [/* Define to 1 if you have the `getpagesize\' function. */
-@%:@undef HAVE_GETPAGESIZE])
-m4trace:configure.in:676: -1- AC_DEFINE_TRACE_LITERAL([HAVE_GETPAGESIZE])
-m4trace:configure.in:676: -1- m4_pattern_allow([^HAVE_GETPAGESIZE$])
-m4trace:configure.in:676: -1- AC_DEFINE_TRACE_LITERAL([HAVE_MMAP])
-m4trace:configure.in:676: -1- m4_pattern_allow([^HAVE_MMAP$])
-m4trace:configure.in:676: -1- AH_OUTPUT([HAVE_MMAP], [/* Define to 1 if you have a working `mmap\' system call. */
-@%:@undef HAVE_MMAP])
-m4trace:configure.in:676: -1- AC_SUBST([GLIBC21])
-m4trace:configure.in:676: -1- AC_SUBST_TRACE([GLIBC21])
-m4trace:configure.in:676: -1- m4_pattern_allow([^GLIBC21$])
-m4trace:configure.in:676: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2765: AC_TRY_RUN is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-../../lib/autoconf/general.m4:2053: AC_CACHE_CHECK is expanded from...
-aclocal.m4:2613: gt_INTDIV0 is expanded from...
-aclocal.m4:2399: AM_INTL_SUBDIR is expanded from...
-aclocal.m4:2111: AM_GNU_GETTEXT is expanded from...
-configure.in:676: the top level])
-m4trace:configure.in:676: -1- AC_DEFINE_TRACE_LITERAL([INTDIV0_RAISES_SIGFPE])
-m4trace:configure.in:676: -1- m4_pattern_allow([^INTDIV0_RAISES_SIGFPE$])
-m4trace:configure.in:676: -1- AH_OUTPUT([INTDIV0_RAISES_SIGFPE], [/* Define if integer division by zero raises signal SIGFPE. */
-@%:@undef INTDIV0_RAISES_SIGFPE])
-m4trace:configure.in:676: -1- _m4_warn([obsolete], [The macro `AC_TRY_COMPILE' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2615: AC_TRY_COMPILE is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-../../lib/autoconf/general.m4:2053: AC_CACHE_CHECK is expanded from...
-aclocal.m4:2715: jm_AC_HEADER_INTTYPES_H is expanded from...
-aclocal.m4:4016: jm_AC_TYPE_UINTMAX_T is expanded from...
-aclocal.m4:2399: AM_INTL_SUBDIR is expanded from...
-aclocal.m4:2111: AM_GNU_GETTEXT is expanded from...
-configure.in:676: the top level])
-m4trace:configure.in:676: -1- AC_DEFINE_TRACE_LITERAL([HAVE_INTTYPES_H_WITH_UINTMAX])
-m4trace:configure.in:676: -1- m4_pattern_allow([^HAVE_INTTYPES_H_WITH_UINTMAX$])
-m4trace:configure.in:676: -1- AH_OUTPUT([HAVE_INTTYPES_H_WITH_UINTMAX], [/* Define if <inttypes.h> exists, doesn\'t clash with <sys/types.h>, and
-   declares uintmax_t. */
-@%:@undef HAVE_INTTYPES_H_WITH_UINTMAX])
-m4trace:configure.in:676: -1- _m4_warn([obsolete], [The macro `AC_TRY_COMPILE' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2615: AC_TRY_COMPILE is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-../../lib/autoconf/general.m4:2053: AC_CACHE_CHECK is expanded from...
-aclocal.m4:3986: jm_AC_HEADER_STDINT_H is expanded from...
-aclocal.m4:4016: jm_AC_TYPE_UINTMAX_T is expanded from...
-aclocal.m4:2399: AM_INTL_SUBDIR is expanded from...
-aclocal.m4:2111: AM_GNU_GETTEXT is expanded from...
-configure.in:676: the top level])
-m4trace:configure.in:676: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STDINT_H_WITH_UINTMAX])
-m4trace:configure.in:676: -1- m4_pattern_allow([^HAVE_STDINT_H_WITH_UINTMAX$])
-m4trace:configure.in:676: -1- AH_OUTPUT([HAVE_STDINT_H_WITH_UINTMAX], [/* Define if <stdint.h> exists, doesn\'t clash with <sys/types.h>, and declares
-   uintmax_t. */
-@%:@undef HAVE_STDINT_H_WITH_UINTMAX])
-m4trace:configure.in:676: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2688: AC_TRY_LINK is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-../../lib/autoconf/general.m4:2053: AC_CACHE_CHECK is expanded from...
-aclocal.m4:4043: jm_AC_TYPE_UNSIGNED_LONG_LONG is expanded from...
-aclocal.m4:4016: jm_AC_TYPE_UINTMAX_T is expanded from...
-aclocal.m4:2399: AM_INTL_SUBDIR is expanded from...
-aclocal.m4:2111: AM_GNU_GETTEXT is expanded from...
-configure.in:676: the top level])
-m4trace:configure.in:676: -1- AC_DEFINE_TRACE_LITERAL([HAVE_UNSIGNED_LONG_LONG])
-m4trace:configure.in:676: -1- m4_pattern_allow([^HAVE_UNSIGNED_LONG_LONG$])
-m4trace:configure.in:676: -1- AH_OUTPUT([HAVE_UNSIGNED_LONG_LONG], [/* Define if you have the unsigned long long type. */
-@%:@undef HAVE_UNSIGNED_LONG_LONG])
-m4trace:configure.in:676: -1- AC_DEFINE_TRACE_LITERAL([uintmax_t])
-m4trace:configure.in:676: -1- m4_pattern_allow([^uintmax_t$])
-m4trace:configure.in:676: -1- AH_OUTPUT([uintmax_t], [/* Define to unsigned long or unsigned long long if <stdint.h> and
-   <inttypes.h> don\'t define. */
-@%:@undef uintmax_t])
-m4trace:configure.in:676: -1- AC_DEFINE_TRACE_LITERAL([HAVE_UINTMAX_T])
-m4trace:configure.in:676: -1- m4_pattern_allow([^HAVE_UINTMAX_T$])
-m4trace:configure.in:676: -1- AH_OUTPUT([HAVE_UINTMAX_T], [/* Define if you have the \'uintmax_t\' type in <stdint.h> or <inttypes.h>. */
-@%:@undef HAVE_UINTMAX_T])
-m4trace:configure.in:676: -1- _m4_warn([obsolete], [The macro `AC_TRY_COMPILE' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2615: AC_TRY_COMPILE is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-../../lib/autoconf/general.m4:2053: AC_CACHE_CHECK is expanded from...
-aclocal.m4:2688: gt_HEADER_INTTYPES_H is expanded from...
-aclocal.m4:2399: AM_INTL_SUBDIR is expanded from...
-aclocal.m4:2111: AM_GNU_GETTEXT is expanded from...
-configure.in:676: the top level])
-m4trace:configure.in:676: -1- AC_DEFINE_TRACE_LITERAL([HAVE_INTTYPES_H])
-m4trace:configure.in:676: -1- m4_pattern_allow([^HAVE_INTTYPES_H$])
-m4trace:configure.in:676: -1- AH_OUTPUT([HAVE_INTTYPES_H], [/* Define if <inttypes.h> exists and doesn\'t clash with <sys/types.h>. */
-@%:@undef HAVE_INTTYPES_H])
-m4trace:configure.in:676: -1- _m4_warn([obsolete], [The macro `AC_TRY_COMPILE' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2615: AC_TRY_COMPILE is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-../../lib/autoconf/general.m4:2053: AC_CACHE_CHECK is expanded from...
-aclocal.m4:2743: gt_INTTYPES_PRI is expanded from...
-aclocal.m4:2399: AM_INTL_SUBDIR is expanded from...
-aclocal.m4:2111: AM_GNU_GETTEXT is expanded from...
-configure.in:676: the top level])
-m4trace:configure.in:676: -1- AC_DEFINE_TRACE_LITERAL([PRI_MACROS_BROKEN])
-m4trace:configure.in:676: -1- m4_pattern_allow([^PRI_MACROS_BROKEN$])
-m4trace:configure.in:676: -1- AH_OUTPUT([PRI_MACROS_BROKEN], [/* Define if <inttypes.h> exists and defines unusable PRI* macros. */
-@%:@undef PRI_MACROS_BROKEN])
-m4trace:configure.in:676: -1- AH_OUTPUT([HAVE_ARGZ_H], [/* Define to 1 if you have the <argz.h> header file. */
-@%:@undef HAVE_ARGZ_H])
-m4trace:configure.in:676: -1- AH_OUTPUT([HAVE_LIMITS_H], [/* Define to 1 if you have the <limits.h> header file. */
-@%:@undef HAVE_LIMITS_H])
-m4trace:configure.in:676: -1- AH_OUTPUT([HAVE_LOCALE_H], [/* Define to 1 if you have the <locale.h> header file. */
-@%:@undef HAVE_LOCALE_H])
-m4trace:configure.in:676: -1- AH_OUTPUT([HAVE_NL_TYPES_H], [/* Define to 1 if you have the <nl_types.h> header file. */
-@%:@undef HAVE_NL_TYPES_H])
-m4trace:configure.in:676: -1- AH_OUTPUT([HAVE_MALLOC_H], [/* Define to 1 if you have the <malloc.h> header file. */
-@%:@undef HAVE_MALLOC_H])
-m4trace:configure.in:676: -1- AH_OUTPUT([HAVE_STDDEF_H], [/* Define to 1 if you have the <stddef.h> header file. */
-@%:@undef HAVE_STDDEF_H])
-m4trace:configure.in:676: -1- AH_OUTPUT([HAVE_STDLIB_H], [/* Define to 1 if you have the <stdlib.h> header file. */
-@%:@undef HAVE_STDLIB_H])
-m4trace:configure.in:676: -1- AH_OUTPUT([HAVE_STRING_H], [/* Define to 1 if you have the <string.h> header file. */
-@%:@undef HAVE_STRING_H])
-m4trace:configure.in:676: -1- AH_OUTPUT([HAVE_UNISTD_H], [/* Define to 1 if you have the <unistd.h> header file. */
-@%:@undef HAVE_UNISTD_H])
-m4trace:configure.in:676: -1- AH_OUTPUT([HAVE_SYS_PARAM_H], [/* Define to 1 if you have the <sys/param.h> header file. */
-@%:@undef HAVE_SYS_PARAM_H])
-m4trace:configure.in:676: -1- AH_OUTPUT([HAVE_FEOF_UNLOCKED], [/* Define to 1 if you have the `feof_unlocked\' function. */
-@%:@undef HAVE_FEOF_UNLOCKED])
-m4trace:configure.in:676: -1- AH_OUTPUT([HAVE_FGETS_UNLOCKED], [/* Define to 1 if you have the `fgets_unlocked\' function. */
-@%:@undef HAVE_FGETS_UNLOCKED])
-m4trace:configure.in:676: -1- AH_OUTPUT([HAVE_GETC_UNLOCKED], [/* Define to 1 if you have the `getc_unlocked\' function. */
-@%:@undef HAVE_GETC_UNLOCKED])
-m4trace:configure.in:676: -1- AH_OUTPUT([HAVE_GETCWD], [/* Define to 1 if you have the `getcwd\' function. */
-@%:@undef HAVE_GETCWD])
-m4trace:configure.in:676: -1- AH_OUTPUT([HAVE_GETEGID], [/* Define to 1 if you have the `getegid\' function. */
-@%:@undef HAVE_GETEGID])
-m4trace:configure.in:676: -1- AH_OUTPUT([HAVE_GETEUID], [/* Define to 1 if you have the `geteuid\' function. */
-@%:@undef HAVE_GETEUID])
-m4trace:configure.in:676: -1- AH_OUTPUT([HAVE_GETGID], [/* Define to 1 if you have the `getgid\' function. */
-@%:@undef HAVE_GETGID])
-m4trace:configure.in:676: -1- AH_OUTPUT([HAVE_GETUID], [/* Define to 1 if you have the `getuid\' function. */
-@%:@undef HAVE_GETUID])
-m4trace:configure.in:676: -1- AH_OUTPUT([HAVE_MEMPCPY], [/* Define to 1 if you have the `mempcpy\' function. */
-@%:@undef HAVE_MEMPCPY])
-m4trace:configure.in:676: -1- AH_OUTPUT([HAVE_MUNMAP], [/* Define to 1 if you have the `munmap\' function. */
-@%:@undef HAVE_MUNMAP])
-m4trace:configure.in:676: -1- AH_OUTPUT([HAVE_PUTENV], [/* Define to 1 if you have the `putenv\' function. */
-@%:@undef HAVE_PUTENV])
-m4trace:configure.in:676: -1- AH_OUTPUT([HAVE_SETENV], [/* Define to 1 if you have the `setenv\' function. */
-@%:@undef HAVE_SETENV])
-m4trace:configure.in:676: -1- AH_OUTPUT([HAVE_SETLOCALE], [/* Define to 1 if you have the `setlocale\' function. */
-@%:@undef HAVE_SETLOCALE])
-m4trace:configure.in:676: -1- AH_OUTPUT([HAVE_LOCALECONV], [/* Define to 1 if you have the `localeconv\' function. */
-@%:@undef HAVE_LOCALECONV])
-m4trace:configure.in:676: -1- AH_OUTPUT([HAVE_STPCPY], [/* Define to 1 if you have the `stpcpy\' function. */
-@%:@undef HAVE_STPCPY])
-m4trace:configure.in:676: -1- AH_OUTPUT([HAVE_STRCASECMP], [/* Define to 1 if you have the `strcasecmp\' function. */
-@%:@undef HAVE_STRCASECMP])
-m4trace:configure.in:676: -1- AH_OUTPUT([HAVE_STRDUP], [/* Define to 1 if you have the `strdup\' function. */
-@%:@undef HAVE_STRDUP])
-m4trace:configure.in:676: -1- AH_OUTPUT([HAVE_STRTOUL], [/* Define to 1 if you have the `strtoul\' function. */
-@%:@undef HAVE_STRTOUL])
-m4trace:configure.in:676: -1- AH_OUTPUT([HAVE_TSEARCH], [/* Define to 1 if you have the `tsearch\' function. */
-@%:@undef HAVE_TSEARCH])
-m4trace:configure.in:676: -1- AH_OUTPUT([HAVE___ARGZ_COUNT], [/* Define to 1 if you have the `__argz_count\' function. */
-@%:@undef HAVE___ARGZ_COUNT])
-m4trace:configure.in:676: -1- AH_OUTPUT([HAVE___ARGZ_STRINGIFY], [/* Define to 1 if you have the `__argz_stringify\' function. */
-@%:@undef HAVE___ARGZ_STRINGIFY])
-m4trace:configure.in:676: -1- AH_OUTPUT([HAVE___ARGZ_NEXT], [/* Define to 1 if you have the `__argz_next\' function. */
-@%:@undef HAVE___ARGZ_NEXT])
-m4trace:configure.in:676: -1- AH_OUTPUT([HAVE___FSETLOCKING], [/* Define to 1 if you have the `__fsetlocking\' function. */
-@%:@undef HAVE___FSETLOCKING])
-m4trace:configure.in:676: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2688: AC_TRY_LINK is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-../../lib/autoconf/general.m4:2053: AC_CACHE_CHECK is expanded from...
-aclocal.m4:2521: AM_ICONV_LINK is expanded from...
-aclocal.m4:2576: AM_ICONV is expanded from...
-aclocal.m4:2399: AM_INTL_SUBDIR is expanded from...
-aclocal.m4:2111: AM_GNU_GETTEXT is expanded from...
-configure.in:676: the top level])
-m4trace:configure.in:676: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2688: AC_TRY_LINK is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-../../lib/autoconf/general.m4:2053: AC_CACHE_CHECK is expanded from...
-aclocal.m4:2521: AM_ICONV_LINK is expanded from...
-aclocal.m4:2576: AM_ICONV is expanded from...
-aclocal.m4:2399: AM_INTL_SUBDIR is expanded from...
-aclocal.m4:2111: AM_GNU_GETTEXT is expanded from...
-configure.in:676: the top level])
-m4trace:configure.in:676: -1- AC_DEFINE_TRACE_LITERAL([HAVE_ICONV])
-m4trace:configure.in:676: -1- m4_pattern_allow([^HAVE_ICONV$])
-m4trace:configure.in:676: -1- AH_OUTPUT([HAVE_ICONV], [/* Define if you have the iconv() function. */
-@%:@undef HAVE_ICONV])
-m4trace:configure.in:676: -1- AC_SUBST([LIBICONV])
-m4trace:configure.in:676: -1- AC_SUBST_TRACE([LIBICONV])
-m4trace:configure.in:676: -1- m4_pattern_allow([^LIBICONV$])
-m4trace:configure.in:676: -1- AC_SUBST([LTLIBICONV])
-m4trace:configure.in:676: -1- AC_SUBST_TRACE([LTLIBICONV])
-m4trace:configure.in:676: -1- m4_pattern_allow([^LTLIBICONV$])
-m4trace:configure.in:676: -1- _m4_warn([obsolete], [The macro `AC_TRY_COMPILE' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2615: AC_TRY_COMPILE is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-aclocal.m4:2576: AM_ICONV is expanded from...
-aclocal.m4:2399: AM_INTL_SUBDIR is expanded from...
-aclocal.m4:2111: AM_GNU_GETTEXT is expanded from...
-configure.in:676: the top level])
-m4trace:configure.in:676: -1- AC_DEFINE_TRACE_LITERAL([ICONV_CONST])
-m4trace:configure.in:676: -1- m4_pattern_allow([^ICONV_CONST$])
-m4trace:configure.in:676: -1- AH_OUTPUT([ICONV_CONST], [/* Define as const if the declaration of iconv() needs const. */
-@%:@undef ICONV_CONST])
-m4trace:configure.in:676: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2688: AC_TRY_LINK is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-../../lib/autoconf/general.m4:2053: AC_CACHE_CHECK is expanded from...
-aclocal.m4:2040: AM_LANGINFO_CODESET is expanded from...
-aclocal.m4:2399: AM_INTL_SUBDIR is expanded from...
-aclocal.m4:2111: AM_GNU_GETTEXT is expanded from...
-configure.in:676: the top level])
-m4trace:configure.in:676: -1- AC_DEFINE_TRACE_LITERAL([HAVE_LANGINFO_CODESET])
-m4trace:configure.in:676: -1- m4_pattern_allow([^HAVE_LANGINFO_CODESET$])
-m4trace:configure.in:676: -1- AH_OUTPUT([HAVE_LANGINFO_CODESET], [/* Define if you have <langinfo.h> and nl_langinfo(CODESET). */
-@%:@undef HAVE_LANGINFO_CODESET])
-m4trace:configure.in:676: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2688: AC_TRY_LINK is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-../../lib/autoconf/general.m4:2053: AC_CACHE_CHECK is expanded from...
-aclocal.m4:2810: AM_LC_MESSAGES is expanded from...
-aclocal.m4:2399: AM_INTL_SUBDIR is expanded from...
-aclocal.m4:2111: AM_GNU_GETTEXT is expanded from...
-configure.in:676: the top level])
-m4trace:configure.in:676: -1- AC_DEFINE_TRACE_LITERAL([HAVE_LC_MESSAGES])
-m4trace:configure.in:676: -1- m4_pattern_allow([^HAVE_LC_MESSAGES$])
-m4trace:configure.in:676: -1- AH_OUTPUT([HAVE_LC_MESSAGES], [/* Define if your <locale.h> file defines LC_MESSAGES. */
-@%:@undef HAVE_LC_MESSAGES])
-m4trace:configure.in:676: -1- AC_SUBST([INTLBISON])
-m4trace:configure.in:676: -1- AC_SUBST_TRACE([INTLBISON])
-m4trace:configure.in:676: -1- m4_pattern_allow([^INTLBISON$])
-m4trace:configure.in:676: -1- AM_NLS
-m4trace:configure.in:676: -1- AC_SUBST([USE_NLS])
-m4trace:configure.in:676: -1- AC_SUBST_TRACE([USE_NLS])
-m4trace:configure.in:676: -1- m4_pattern_allow([^USE_NLS$])
-m4trace:configure.in:676: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2688: AC_TRY_LINK is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-../../lib/autoconf/general.m4:2053: AC_CACHE_CHECK is expanded from...
-aclocal.m4:2111: AM_GNU_GETTEXT is expanded from...
-configure.in:676: the top level])
-m4trace:configure.in:676: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2688: AC_TRY_LINK is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-../../lib/autoconf/general.m4:2053: AC_CACHE_CHECK is expanded from...
-aclocal.m4:2111: AM_GNU_GETTEXT is expanded from...
-configure.in:676: the top level])
-m4trace:configure.in:676: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2688: AC_TRY_LINK is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-../../lib/autoconf/general.m4:2053: AC_CACHE_CHECK is expanded from...
-aclocal.m4:2111: AM_GNU_GETTEXT is expanded from...
-configure.in:676: the top level])
-m4trace:configure.in:676: -1- AC_DEFINE_TRACE_LITERAL([ENABLE_NLS])
-m4trace:configure.in:676: -1- m4_pattern_allow([^ENABLE_NLS$])
-m4trace:configure.in:676: -1- AH_OUTPUT([ENABLE_NLS], [/* Define to 1 if translation of program messages to the user\'s native
-   language is requested. */
-@%:@undef ENABLE_NLS])
-m4trace:configure.in:676: -1- AC_DEFINE_TRACE_LITERAL([HAVE_GETTEXT])
-m4trace:configure.in:676: -1- m4_pattern_allow([^HAVE_GETTEXT$])
-m4trace:configure.in:676: -1- AH_OUTPUT([HAVE_GETTEXT], [/* Define if the GNU gettext() function is already present or preinstalled. */
-@%:@undef HAVE_GETTEXT])
-m4trace:configure.in:676: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DCGETTEXT])
-m4trace:configure.in:676: -1- m4_pattern_allow([^HAVE_DCGETTEXT$])
-m4trace:configure.in:676: -1- AH_OUTPUT([HAVE_DCGETTEXT], [/* Define if the GNU dcgettext() function is already present or preinstalled.
-   */
-@%:@undef HAVE_DCGETTEXT])
-m4trace:configure.in:676: -1- AC_SUBST([BUILD_INCLUDED_LIBINTL])
-m4trace:configure.in:676: -1- AC_SUBST_TRACE([BUILD_INCLUDED_LIBINTL])
-m4trace:configure.in:676: -1- m4_pattern_allow([^BUILD_INCLUDED_LIBINTL$])
-m4trace:configure.in:676: -1- AC_SUBST([USE_INCLUDED_LIBINTL])
-m4trace:configure.in:676: -1- AC_SUBST_TRACE([USE_INCLUDED_LIBINTL])
-m4trace:configure.in:676: -1- m4_pattern_allow([^USE_INCLUDED_LIBINTL$])
-m4trace:configure.in:676: -1- AC_SUBST([CATOBJEXT])
-m4trace:configure.in:676: -1- AC_SUBST_TRACE([CATOBJEXT])
-m4trace:configure.in:676: -1- m4_pattern_allow([^CATOBJEXT$])
-m4trace:configure.in:676: -1- AC_SUBST([DATADIRNAME])
-m4trace:configure.in:676: -1- AC_SUBST_TRACE([DATADIRNAME])
-m4trace:configure.in:676: -1- m4_pattern_allow([^DATADIRNAME$])
-m4trace:configure.in:676: -1- AC_SUBST([INSTOBJEXT])
-m4trace:configure.in:676: -1- AC_SUBST_TRACE([INSTOBJEXT])
-m4trace:configure.in:676: -1- m4_pattern_allow([^INSTOBJEXT$])
-m4trace:configure.in:676: -1- AC_SUBST([GENCAT])
-m4trace:configure.in:676: -1- AC_SUBST_TRACE([GENCAT])
-m4trace:configure.in:676: -1- m4_pattern_allow([^GENCAT$])
-m4trace:configure.in:676: -1- AC_SUBST([INTLOBJS])
-m4trace:configure.in:676: -1- AC_SUBST_TRACE([INTLOBJS])
-m4trace:configure.in:676: -1- m4_pattern_allow([^INTLOBJS$])
-m4trace:configure.in:676: -1- AC_SUBST([INTL_LIBTOOL_SUFFIX_PREFIX])
-m4trace:configure.in:676: -1- AC_SUBST_TRACE([INTL_LIBTOOL_SUFFIX_PREFIX])
-m4trace:configure.in:676: -1- m4_pattern_allow([^INTL_LIBTOOL_SUFFIX_PREFIX$])
-m4trace:configure.in:676: -1- AC_SUBST([INTLLIBS])
-m4trace:configure.in:676: -1- AC_SUBST_TRACE([INTLLIBS])
-m4trace:configure.in:676: -1- m4_pattern_allow([^INTLLIBS$])
-m4trace:configure.in:676: -1- AC_SUBST([LIBINTL])
-m4trace:configure.in:676: -1- AC_SUBST_TRACE([LIBINTL])
-m4trace:configure.in:676: -1- m4_pattern_allow([^LIBINTL$])
-m4trace:configure.in:676: -1- AC_SUBST([LTLIBINTL])
-m4trace:configure.in:676: -1- AC_SUBST_TRACE([LTLIBINTL])
-m4trace:configure.in:676: -1- m4_pattern_allow([^LTLIBINTL$])
-m4trace:configure.in:676: -1- AC_SUBST([POSUB])
-m4trace:configure.in:676: -1- AC_SUBST_TRACE([POSUB])
-m4trace:configure.in:676: -1- m4_pattern_allow([^POSUB$])
-m4trace:configure.in:679: -1- AH_OUTPUT([HAVE_DIRENT_H], [/* Define to 1 if you have the <dirent.h> header file, and it defines `DIR\'.
-   */
-@%:@undef HAVE_DIRENT_H])
-m4trace:configure.in:679: -1- AH_OUTPUT([HAVE_SYS_NDIR_H], [/* Define to 1 if you have the <sys/ndir.h> header file, and it defines `DIR\'.
-   */
-@%:@undef HAVE_SYS_NDIR_H])
-m4trace:configure.in:679: -1- AH_OUTPUT([HAVE_SYS_DIR_H], [/* Define to 1 if you have the <sys/dir.h> header file, and it defines `DIR\'.
-   */
-@%:@undef HAVE_SYS_DIR_H])
-m4trace:configure.in:679: -1- AH_OUTPUT([HAVE_NDIR_H], [/* Define to 1 if you have the <ndir.h> header file, and it defines `DIR\'. */
-@%:@undef HAVE_NDIR_H])
-m4trace:configure.in:680: -1- AC_DEFINE_TRACE_LITERAL([TIME_WITH_SYS_TIME])
-m4trace:configure.in:680: -1- m4_pattern_allow([^TIME_WITH_SYS_TIME$])
-m4trace:configure.in:680: -1- AH_OUTPUT([TIME_WITH_SYS_TIME], [/* Define to 1 if you can safely include both <sys/time.h> and <time.h>. */
-@%:@undef TIME_WITH_SYS_TIME])
-m4trace:configure.in:682: -1- AH_OUTPUT([HAVE_INTTYPES_H], [/* Define to 1 if you have the <inttypes.h> header file. */
-@%:@undef HAVE_INTTYPES_H])
-m4trace:configure.in:682: -1- AC_DEFINE_TRACE_LITERAL([HAVE_INTTYPES_H])
-m4trace:configure.in:682: -1- m4_pattern_allow([^HAVE_INTTYPES_H$])
-m4trace:configure.in:684: -1- AH_OUTPUT([HAVE_UNISTD_H], [/* Define to 1 if you have the <unistd.h> header file. */
-@%:@undef HAVE_UNISTD_H])
-m4trace:configure.in:684: -1- AH_OUTPUT([HAVE_STDLIB_H], [/* Define to 1 if you have the <stdlib.h> header file. */
-@%:@undef HAVE_STDLIB_H])
-m4trace:configure.in:684: -1- AH_OUTPUT([HAVE_STDARG_H], [/* Define to 1 if you have the <stdarg.h> header file. */
-@%:@undef HAVE_STDARG_H])
-m4trace:configure.in:684: -1- AH_OUTPUT([HAVE_VARARGS_H], [/* Define to 1 if you have the <varargs.h> header file. */
-@%:@undef HAVE_VARARGS_H])
-m4trace:configure.in:684: -1- AH_OUTPUT([HAVE_LIMITS_H], [/* Define to 1 if you have the <limits.h> header file. */
-@%:@undef HAVE_LIMITS_H])
-m4trace:configure.in:684: -1- AH_OUTPUT([HAVE_STRING_H], [/* Define to 1 if you have the <string.h> header file. */
-@%:@undef HAVE_STRING_H])
-m4trace:configure.in:684: -1- AH_OUTPUT([HAVE_MEMORY_H], [/* Define to 1 if you have the <memory.h> header file. */
-@%:@undef HAVE_MEMORY_H])
-m4trace:configure.in:684: -1- AH_OUTPUT([HAVE_LOCALE_H], [/* Define to 1 if you have the <locale.h> header file. */
-@%:@undef HAVE_LOCALE_H])
-m4trace:configure.in:684: -1- AH_OUTPUT([HAVE_TERMCAP_H], [/* Define to 1 if you have the <termcap.h> header file. */
-@%:@undef HAVE_TERMCAP_H])
-m4trace:configure.in:684: -1- AH_OUTPUT([HAVE_TERMIO_H], [/* Define to 1 if you have the <termio.h> header file. */
-@%:@undef HAVE_TERMIO_H])
-m4trace:configure.in:684: -1- AH_OUTPUT([HAVE_TERMIOS_H], [/* Define to 1 if you have the <termios.h> header file. */
-@%:@undef HAVE_TERMIOS_H])
-m4trace:configure.in:684: -1- AH_OUTPUT([HAVE_DLFCN_H], [/* Define to 1 if you have the <dlfcn.h> header file. */
-@%:@undef HAVE_DLFCN_H])
-m4trace:configure.in:684: -1- AH_OUTPUT([HAVE_STDBOOL_H], [/* Define to 1 if you have the <stdbool.h> header file. */
-@%:@undef HAVE_STDBOOL_H])
-m4trace:configure.in:684: -1- AH_OUTPUT([HAVE_STDDEF_H], [/* Define to 1 if you have the <stddef.h> header file. */
-@%:@undef HAVE_STDDEF_H])
-m4trace:configure.in:684: -1- AH_OUTPUT([HAVE_STDINT_H], [/* Define to 1 if you have the <stdint.h> header file. */
-@%:@undef HAVE_STDINT_H])
-m4trace:configure.in:684: -1- AH_OUTPUT([HAVE_NETDB_H], [/* Define to 1 if you have the <netdb.h> header file. */
-@%:@undef HAVE_NETDB_H])
-m4trace:configure.in:684: -1- AH_OUTPUT([HAVE_PWD_H], [/* Define to 1 if you have the <pwd.h> header file. */
-@%:@undef HAVE_PWD_H])
-m4trace:configure.in:684: -1- AH_OUTPUT([HAVE_GRP_H], [/* Define to 1 if you have the <grp.h> header file. */
-@%:@undef HAVE_GRP_H])
-m4trace:configure.in:684: -1- AH_OUTPUT([HAVE_STRINGS_H], [/* Define to 1 if you have the <strings.h> header file. */
-@%:@undef HAVE_STRINGS_H])
-m4trace:configure.in:684: -1- AH_OUTPUT([HAVE_REGEX_H], [/* Define to 1 if you have the <regex.h> header file. */
-@%:@undef HAVE_REGEX_H])
-m4trace:configure.in:684: -1- AH_OUTPUT([HAVE_SYSLOG_H], [/* Define to 1 if you have the <syslog.h> header file. */
-@%:@undef HAVE_SYSLOG_H])
-m4trace:configure.in:684: -1- AH_OUTPUT([HAVE_ULIMIT_H], [/* Define to 1 if you have the <ulimit.h> header file. */
-@%:@undef HAVE_ULIMIT_H])
-m4trace:configure.in:688: -1- AH_OUTPUT([HAVE_SYS_PTE_H], [/* Define to 1 if you have the <sys/pte.h> header file. */
-@%:@undef HAVE_SYS_PTE_H])
-m4trace:configure.in:688: -1- AH_OUTPUT([HAVE_SYS_STREAM_H], [/* Define to 1 if you have the <sys/stream.h> header file. */
-@%:@undef HAVE_SYS_STREAM_H])
-m4trace:configure.in:688: -1- AH_OUTPUT([HAVE_SYS_SELECT_H], [/* Define to 1 if you have the <sys/select.h> header file. */
-@%:@undef HAVE_SYS_SELECT_H])
-m4trace:configure.in:688: -1- AH_OUTPUT([HAVE_SYS_FILE_H], [/* Define to 1 if you have the <sys/file.h> header file. */
-@%:@undef HAVE_SYS_FILE_H])
-m4trace:configure.in:688: -1- AH_OUTPUT([HAVE_SYS_RESOURCE_H], [/* Define to 1 if you have the <sys/resource.h> header file. */
-@%:@undef HAVE_SYS_RESOURCE_H])
-m4trace:configure.in:688: -1- AH_OUTPUT([HAVE_SYS_PARAM_H], [/* Define to 1 if you have the <sys/param.h> header file. */
-@%:@undef HAVE_SYS_PARAM_H])
-m4trace:configure.in:688: -1- AH_OUTPUT([HAVE_SYS_SOCKET_H], [/* Define to 1 if you have the <sys/socket.h> header file. */
-@%:@undef HAVE_SYS_SOCKET_H])
-m4trace:configure.in:688: -1- AH_OUTPUT([HAVE_SYS_STAT_H], [/* Define to 1 if you have the <sys/stat.h> header file. */
-@%:@undef HAVE_SYS_STAT_H])
-m4trace:configure.in:688: -1- AH_OUTPUT([HAVE_SYS_TIME_H], [/* Define to 1 if you have the <sys/time.h> header file. */
-@%:@undef HAVE_SYS_TIME_H])
-m4trace:configure.in:688: -1- AH_OUTPUT([HAVE_SYS_TIMES_H], [/* Define to 1 if you have the <sys/times.h> header file. */
-@%:@undef HAVE_SYS_TIMES_H])
-m4trace:configure.in:688: -1- AH_OUTPUT([HAVE_SYS_TYPES_H], [/* Define to 1 if you have the <sys/types.h> header file. */
-@%:@undef HAVE_SYS_TYPES_H])
-m4trace:configure.in:688: -1- AH_OUTPUT([HAVE_SYS_WAIT_H], [/* Define to 1 if you have the <sys/wait.h> header file. */
-@%:@undef HAVE_SYS_WAIT_H])
-m4trace:configure.in:691: -1- AH_OUTPUT([HAVE_NETINET_IN_H], [/* Define to 1 if you have the <netinet/in.h> header file. */
-@%:@undef HAVE_NETINET_IN_H])
-m4trace:configure.in:691: -1- AH_OUTPUT([HAVE_ARPA_INET_H], [/* Define to 1 if you have the <arpa/inet.h> header file. */
-@%:@undef HAVE_ARPA_INET_H])
-m4trace:configure.in:702: -1- AC_DEFINE_TRACE_LITERAL([HAVE_ALLOCA_H])
-m4trace:configure.in:702: -1- m4_pattern_allow([^HAVE_ALLOCA_H$])
-m4trace:configure.in:702: -1- AH_OUTPUT([HAVE_ALLOCA_H], [/* Define to 1 if you have <alloca.h> and it should be used (not on Ultrix).
-   */
-@%:@undef HAVE_ALLOCA_H])
-m4trace:configure.in:702: -1- AC_DEFINE_TRACE_LITERAL([HAVE_ALLOCA])
-m4trace:configure.in:702: -1- m4_pattern_allow([^HAVE_ALLOCA$])
-m4trace:configure.in:702: -1- AH_OUTPUT([HAVE_ALLOCA], [/* Define to 1 if you have `alloca\', as a function or macro. */
-@%:@undef HAVE_ALLOCA])
-m4trace:configure.in:702: -1- AC_LIBSOURCE([alloca.c])
-m4trace:configure.in:702: -1- AC_SUBST([ALLOCA], [\${LIBOBJDIR}alloca.$ac_objext])
-m4trace:configure.in:702: -1- AC_SUBST_TRACE([ALLOCA])
-m4trace:configure.in:702: -1- m4_pattern_allow([^ALLOCA$])
-m4trace:configure.in:702: -1- AC_DEFINE_TRACE_LITERAL([C_ALLOCA])
-m4trace:configure.in:702: -1- m4_pattern_allow([^C_ALLOCA$])
-m4trace:configure.in:702: -1- AH_OUTPUT([C_ALLOCA], [/* Define to 1 if using `alloca.c\'. */
-@%:@undef C_ALLOCA])
-m4trace:configure.in:702: -1- AC_DEFINE_TRACE_LITERAL([CRAY_STACKSEG_END])
-m4trace:configure.in:702: -1- m4_pattern_allow([^CRAY_STACKSEG_END$])
-m4trace:configure.in:702: -1- AH_OUTPUT([CRAY_STACKSEG_END], [/* Define to one of `_getb67\', `GETB67\', `getb67\' for Cray-2 and Cray-YMP
-   systems. This function is required for `alloca.c\' support on those systems.
-   */
-@%:@undef CRAY_STACKSEG_END])
-m4trace:configure.in:702: -1- AH_OUTPUT([STACK_DIRECTION], [/* If using the C implementation of alloca, define if you know the
-   direction of stack growth for your system; otherwise it will be
-   automatically deduced at runtime.
-       STACK_DIRECTION > 0 => grows toward higher addresses
-       STACK_DIRECTION < 0 => grows toward lower addresses
-       STACK_DIRECTION = 0 => direction of growth unknown */
-@%:@undef STACK_DIRECTION])
-m4trace:configure.in:702: -1- AC_DEFINE_TRACE_LITERAL([STACK_DIRECTION])
-m4trace:configure.in:702: -1- m4_pattern_allow([^STACK_DIRECTION$])
-m4trace:configure.in:703: -1- AC_DEFINE_TRACE_LITERAL([GETPGRP_VOID])
-m4trace:configure.in:703: -1- m4_pattern_allow([^GETPGRP_VOID$])
-m4trace:configure.in:703: -1- AH_OUTPUT([GETPGRP_VOID], [/* Define to 1 if the `getpgrp\' function requires zero arguments. */
-@%:@undef GETPGRP_VOID])
-m4trace:configure.in:704: -1- _m4_warn([obsolete], [The macro `AC_FUNC_SETVBUF_REVERSED' is obsolete.  Remove it and all references to SETVBUF_REVERSED.], [../../lib/autoconf/functions.m4:1714: AC_FUNC_SETVBUF_REVERSED is expanded from...
-configure.in:704: the top level])
-m4trace:configure.in:705: -1- AH_OUTPUT([HAVE_VPRINTF], [/* Define to 1 if you have the `vprintf\' function. */
-@%:@undef HAVE_VPRINTF])
-m4trace:configure.in:705: -1- AC_DEFINE_TRACE_LITERAL([HAVE_VPRINTF])
-m4trace:configure.in:705: -1- m4_pattern_allow([^HAVE_VPRINTF$])
-m4trace:configure.in:705: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DOPRNT])
-m4trace:configure.in:705: -1- m4_pattern_allow([^HAVE_DOPRNT$])
-m4trace:configure.in:705: -1- AH_OUTPUT([HAVE_DOPRNT], [/* Define to 1 if you don\'t have `vprintf\' but do have `_doprnt.\' */
-@%:@undef HAVE_DOPRNT])
-m4trace:configure.in:706: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STRCOLL])
-m4trace:configure.in:706: -1- m4_pattern_allow([^HAVE_STRCOLL$])
-m4trace:configure.in:706: -1- AH_OUTPUT([HAVE_STRCOLL], [/* Define to 1 if you have the `strcoll\' function and it is properly defined.
-   */
-@%:@undef HAVE_STRCOLL])
-m4trace:configure.in:727: -1- AC_DEFINE_TRACE_LITERAL([HAVE_VPRINTF])
-m4trace:configure.in:727: -1- m4_pattern_allow([^HAVE_VPRINTF$])
-m4trace:configure.in:732: -1- AC_SUBST([LIB@&t@OBJS], ["$LIB@&t@OBJS vprint.$ac_objext"])
-m4trace:configure.in:732: -1- AC_SUBST_TRACE([LIB@&t@OBJS])
-m4trace:configure.in:732: -1- m4_pattern_allow([^LIB@&t@OBJS$])
-m4trace:configure.in:732: -1- AC_LIBSOURCE([vprint.c])
-m4trace:configure.in:736: -1- _m4_warn([obsolete], [The macro `AC_TYPE_SIGNAL' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/types.m4:738: AC_TYPE_SIGNAL is expanded from...
-configure.in:736: the top level])
-m4trace:configure.in:736: -1- AC_DEFINE_TRACE_LITERAL([RETSIGTYPE])
-m4trace:configure.in:736: -1- m4_pattern_allow([^RETSIGTYPE$])
-m4trace:configure.in:736: -1- AH_OUTPUT([RETSIGTYPE], [/* Define as the return type of signal handlers (`int\' or `void\'). */
-@%:@undef RETSIGTYPE])
-m4trace:configure.in:739: -2- AC_DEFINE_TRACE_LITERAL([HAVE_SETOSTYPE])
-m4trace:configure.in:739: -2- m4_pattern_allow([^HAVE_SETOSTYPE$])
-m4trace:configure.in:740: -2- AC_DEFINE_TRACE_LITERAL([HAVE_WAIT3])
-m4trace:configure.in:740: -2- m4_pattern_allow([^HAVE_WAIT3$])
-m4trace:configure.in:743: -2- AC_DEFINE_TRACE_LITERAL([HAVE_MKFIFO])
-m4trace:configure.in:743: -2- m4_pattern_allow([^HAVE_MKFIFO$])
-m4trace:configure.in:743: -2- AC_DEFINE_TRACE_LITERAL([MKFIFO_MISSING])
-m4trace:configure.in:743: -2- m4_pattern_allow([^MKFIFO_MISSING$])
-m4trace:configure.in:746: -1- AH_OUTPUT([HAVE_DUP2], [/* Define to 1 if you have the `dup2\' function. */
-@%:@undef HAVE_DUP2])
-m4trace:configure.in:746: -1- AH_OUTPUT([HAVE_EACCESS], [/* Define to 1 if you have the `eaccess\' function. */
-@%:@undef HAVE_EACCESS])
-m4trace:configure.in:746: -1- AH_OUTPUT([HAVE_FCNTL], [/* Define to 1 if you have the `fcntl\' function. */
-@%:@undef HAVE_FCNTL])
-m4trace:configure.in:746: -1- AH_OUTPUT([HAVE_GETDTABLESIZE], [/* Define to 1 if you have the `getdtablesize\' function. */
-@%:@undef HAVE_GETDTABLESIZE])
-m4trace:configure.in:746: -1- AH_OUTPUT([HAVE_GETGROUPS], [/* Define to 1 if you have the `getgroups\' function. */
-@%:@undef HAVE_GETGROUPS])
-m4trace:configure.in:746: -1- AH_OUTPUT([HAVE_GETHOSTNAME], [/* Define to 1 if you have the `gethostname\' function. */
-@%:@undef HAVE_GETHOSTNAME])
-m4trace:configure.in:746: -1- AH_OUTPUT([HAVE_GETPAGESIZE], [/* Define to 1 if you have the `getpagesize\' function. */
-@%:@undef HAVE_GETPAGESIZE])
-m4trace:configure.in:746: -1- AH_OUTPUT([HAVE_GETPEERNAME], [/* Define to 1 if you have the `getpeername\' function. */
-@%:@undef HAVE_GETPEERNAME])
-m4trace:configure.in:746: -1- AH_OUTPUT([HAVE_GETRLIMIT], [/* Define to 1 if you have the `getrlimit\' function. */
-@%:@undef HAVE_GETRLIMIT])
-m4trace:configure.in:746: -1- AH_OUTPUT([HAVE_GETRUSAGE], [/* Define to 1 if you have the `getrusage\' function. */
-@%:@undef HAVE_GETRUSAGE])
-m4trace:configure.in:746: -1- AH_OUTPUT([HAVE_GETTIMEOFDAY], [/* Define to 1 if you have the `gettimeofday\' function. */
-@%:@undef HAVE_GETTIMEOFDAY])
-m4trace:configure.in:746: -1- AH_OUTPUT([HAVE_KILL], [/* Define to 1 if you have the `kill\' function. */
-@%:@undef HAVE_KILL])
-m4trace:configure.in:746: -1- AH_OUTPUT([HAVE_KILLPG], [/* Define to 1 if you have the `killpg\' function. */
-@%:@undef HAVE_KILLPG])
-m4trace:configure.in:746: -1- AH_OUTPUT([HAVE_LSTAT], [/* Define to 1 if you have the `lstat\' function. */
-@%:@undef HAVE_LSTAT])
-m4trace:configure.in:746: -1- AH_OUTPUT([HAVE_READLINK], [/* Define to 1 if you have the `readlink\' function. */
-@%:@undef HAVE_READLINK])
-m4trace:configure.in:746: -1- AH_OUTPUT([HAVE_SBRK], [/* Define to 1 if you have the `sbrk\' function. */
-@%:@undef HAVE_SBRK])
-m4trace:configure.in:746: -1- AH_OUTPUT([HAVE_SELECT], [/* Define to 1 if you have the `select\' function. */
-@%:@undef HAVE_SELECT])
-m4trace:configure.in:746: -1- AH_OUTPUT([HAVE_SETDTABLESIZE], [/* Define to 1 if you have the `setdtablesize\' function. */
-@%:@undef HAVE_SETDTABLESIZE])
-m4trace:configure.in:746: -1- AH_OUTPUT([HAVE_SETITIMER], [/* Define to 1 if you have the `setitimer\' function. */
-@%:@undef HAVE_SETITIMER])
-m4trace:configure.in:746: -1- AH_OUTPUT([HAVE_TCGETPGRP], [/* Define to 1 if you have the `tcgetpgrp\' function. */
-@%:@undef HAVE_TCGETPGRP])
-m4trace:configure.in:746: -1- AH_OUTPUT([HAVE_UNAME], [/* Define to 1 if you have the `uname\' function. */
-@%:@undef HAVE_UNAME])
-m4trace:configure.in:746: -1- AH_OUTPUT([HAVE_ULIMIT], [/* Define to 1 if you have the `ulimit\' function. */
-@%:@undef HAVE_ULIMIT])
-m4trace:configure.in:746: -1- AH_OUTPUT([HAVE_WAITPID], [/* Define to 1 if you have the `waitpid\' function. */
-@%:@undef HAVE_WAITPID])
-m4trace:configure.in:750: -1- AH_OUTPUT([HAVE_RENAME], [/* Define to 1 if you have the `rename\' function. */
-@%:@undef HAVE_RENAME])
-m4trace:configure.in:750: -1- AC_DEFINE_TRACE_LITERAL([HAVE_RENAME])
-m4trace:configure.in:750: -1- m4_pattern_allow([^HAVE_RENAME$])
-m4trace:configure.in:750: -1- AC_SUBST([LIB@&t@OBJS], ["$LIB@&t@OBJS rename.$ac_objext"])
-m4trace:configure.in:750: -1- AC_SUBST_TRACE([LIB@&t@OBJS])
-m4trace:configure.in:750: -1- m4_pattern_allow([^LIB@&t@OBJS$])
-m4trace:configure.in:750: -1- AC_LIBSOURCE([rename.c])
-m4trace:configure.in:753: -1- AH_OUTPUT([HAVE_BCOPY], [/* Define to 1 if you have the `bcopy\' function. */
-@%:@undef HAVE_BCOPY])
-m4trace:configure.in:753: -1- AH_OUTPUT([HAVE_BZERO], [/* Define to 1 if you have the `bzero\' function. */
-@%:@undef HAVE_BZERO])
-m4trace:configure.in:753: -1- AH_OUTPUT([HAVE_CONFSTR], [/* Define to 1 if you have the `confstr\' function. */
-@%:@undef HAVE_CONFSTR])
-m4trace:configure.in:753: -1- AH_OUTPUT([HAVE_FACCESSAT], [/* Define to 1 if you have the `faccessat\' function. */
-@%:@undef HAVE_FACCESSAT])
-m4trace:configure.in:753: -1- AH_OUTPUT([HAVE_FNMATCH], [/* Define to 1 if you have the `fnmatch\' function. */
-@%:@undef HAVE_FNMATCH])
-m4trace:configure.in:753: -1- AH_OUTPUT([HAVE_GETADDRINFO], [/* Define to 1 if you have the `getaddrinfo\' function. */
-@%:@undef HAVE_GETADDRINFO])
-m4trace:configure.in:753: -1- AH_OUTPUT([HAVE_GETHOSTBYNAME], [/* Define to 1 if you have the `gethostbyname\' function. */
-@%:@undef HAVE_GETHOSTBYNAME])
-m4trace:configure.in:753: -1- AH_OUTPUT([HAVE_GETSERVBYNAME], [/* Define to 1 if you have the `getservbyname\' function. */
-@%:@undef HAVE_GETSERVBYNAME])
-m4trace:configure.in:753: -1- AH_OUTPUT([HAVE_GETSERVENT], [/* Define to 1 if you have the `getservent\' function. */
-@%:@undef HAVE_GETSERVENT])
-m4trace:configure.in:753: -1- AH_OUTPUT([HAVE_INET_ATON], [/* Define to 1 if you have the `inet_aton\' function. */
-@%:@undef HAVE_INET_ATON])
-m4trace:configure.in:753: -1- AH_OUTPUT([HAVE_IMAXDIV], [/* Define to 1 if you have the `imaxdiv\' function. */
-@%:@undef HAVE_IMAXDIV])
-m4trace:configure.in:753: -1- AH_OUTPUT([HAVE_MEMMOVE], [/* Define to 1 if you have the `memmove\' function. */
-@%:@undef HAVE_MEMMOVE])
-m4trace:configure.in:753: -1- AH_OUTPUT([HAVE_PATHCONF], [/* Define to 1 if you have the `pathconf\' function. */
-@%:@undef HAVE_PATHCONF])
-m4trace:configure.in:753: -1- AH_OUTPUT([HAVE_PUTENV], [/* Define to 1 if you have the `putenv\' function. */
-@%:@undef HAVE_PUTENV])
-m4trace:configure.in:753: -1- AH_OUTPUT([HAVE_RAISE], [/* Define to 1 if you have the `raise\' function. */
-@%:@undef HAVE_RAISE])
-m4trace:configure.in:753: -1- AH_OUTPUT([HAVE_REGCOMP], [/* Define to 1 if you have the `regcomp\' function. */
-@%:@undef HAVE_REGCOMP])
-m4trace:configure.in:753: -1- AH_OUTPUT([HAVE_REGEXEC], [/* Define to 1 if you have the `regexec\' function. */
-@%:@undef HAVE_REGEXEC])
-m4trace:configure.in:753: -1- AH_OUTPUT([HAVE_SETENV], [/* Define to 1 if you have the `setenv\' function. */
-@%:@undef HAVE_SETENV])
-m4trace:configure.in:753: -1- AH_OUTPUT([HAVE_SETLINEBUF], [/* Define to 1 if you have the `setlinebuf\' function. */
-@%:@undef HAVE_SETLINEBUF])
-m4trace:configure.in:753: -1- AH_OUTPUT([HAVE_SETLOCALE], [/* Define to 1 if you have the `setlocale\' function. */
-@%:@undef HAVE_SETLOCALE])
-m4trace:configure.in:753: -1- AH_OUTPUT([HAVE_SETVBUF], [/* Define to 1 if you have the `setvbuf\' function. */
-@%:@undef HAVE_SETVBUF])
-m4trace:configure.in:753: -1- AH_OUTPUT([HAVE_SIGINTERRUPT], [/* Define to 1 if you have the `siginterrupt\' function. */
-@%:@undef HAVE_SIGINTERRUPT])
-m4trace:configure.in:753: -1- AH_OUTPUT([HAVE_STRCHR], [/* Define to 1 if you have the `strchr\' function. */
-@%:@undef HAVE_STRCHR])
-m4trace:configure.in:753: -1- AH_OUTPUT([HAVE_SYSCONF], [/* Define to 1 if you have the `sysconf\' function. */
-@%:@undef HAVE_SYSCONF])
-m4trace:configure.in:753: -1- AH_OUTPUT([HAVE_SYSLOG], [/* Define to 1 if you have the `syslog\' function. */
-@%:@undef HAVE_SYSLOG])
-m4trace:configure.in:753: -1- AH_OUTPUT([HAVE_TCGETATTR], [/* Define to 1 if you have the `tcgetattr\' function. */
-@%:@undef HAVE_TCGETATTR])
-m4trace:configure.in:753: -1- AH_OUTPUT([HAVE_TIMES], [/* Define to 1 if you have the `times\' function. */
-@%:@undef HAVE_TIMES])
-m4trace:configure.in:753: -1- AH_OUTPUT([HAVE_TTYNAME], [/* Define to 1 if you have the `ttyname\' function. */
-@%:@undef HAVE_TTYNAME])
-m4trace:configure.in:753: -1- AH_OUTPUT([HAVE_TZSET], [/* Define to 1 if you have the `tzset\' function. */
-@%:@undef HAVE_TZSET])
-m4trace:configure.in:753: -1- AH_OUTPUT([HAVE_UNSETENV], [/* Define to 1 if you have the `unsetenv\' function. */
-@%:@undef HAVE_UNSETENV])
-m4trace:configure.in:759: -1- AH_OUTPUT([HAVE_VASPRINTF], [/* Define to 1 if you have the `vasprintf\' function. */
-@%:@undef HAVE_VASPRINTF])
-m4trace:configure.in:759: -1- AH_OUTPUT([HAVE_ASPRINTF], [/* Define to 1 if you have the `asprintf\' function. */
-@%:@undef HAVE_ASPRINTF])
-m4trace:configure.in:760: -1- AH_OUTPUT([HAVE_ISASCII], [/* Define to 1 if you have the `isascii\' function. */
-@%:@undef HAVE_ISASCII])
-m4trace:configure.in:760: -1- AH_OUTPUT([HAVE_ISBLANK], [/* Define to 1 if you have the `isblank\' function. */
-@%:@undef HAVE_ISBLANK])
-m4trace:configure.in:760: -1- AH_OUTPUT([HAVE_ISGRAPH], [/* Define to 1 if you have the `isgraph\' function. */
-@%:@undef HAVE_ISGRAPH])
-m4trace:configure.in:760: -1- AH_OUTPUT([HAVE_ISPRINT], [/* Define to 1 if you have the `isprint\' function. */
-@%:@undef HAVE_ISPRINT])
-m4trace:configure.in:760: -1- AH_OUTPUT([HAVE_ISSPACE], [/* Define to 1 if you have the `isspace\' function. */
-@%:@undef HAVE_ISSPACE])
-m4trace:configure.in:760: -1- AH_OUTPUT([HAVE_ISXDIGIT], [/* Define to 1 if you have the `isxdigit\' function. */
-@%:@undef HAVE_ISXDIGIT])
-m4trace:configure.in:761: -1- AH_OUTPUT([HAVE_GETPWENT], [/* Define to 1 if you have the `getpwent\' function. */
-@%:@undef HAVE_GETPWENT])
-m4trace:configure.in:761: -1- AH_OUTPUT([HAVE_GETPWNAM], [/* Define to 1 if you have the `getpwnam\' function. */
-@%:@undef HAVE_GETPWNAM])
-m4trace:configure.in:761: -1- AH_OUTPUT([HAVE_GETPWUID], [/* Define to 1 if you have the `getpwuid\' function. */
-@%:@undef HAVE_GETPWUID])
-m4trace:configure.in:762: -1- AH_OUTPUT([HAVE_GETCWD], [/* Define to 1 if you have the `getcwd\' function. */
-@%:@undef HAVE_GETCWD])
-m4trace:configure.in:762: -1- AC_DEFINE_TRACE_LITERAL([HAVE_GETCWD])
-m4trace:configure.in:762: -1- m4_pattern_allow([^HAVE_GETCWD$])
-m4trace:configure.in:762: -1- AC_SUBST([LIB@&t@OBJS], ["$LIB@&t@OBJS getcwd.$ac_objext"])
-m4trace:configure.in:762: -1- AC_SUBST_TRACE([LIB@&t@OBJS])
-m4trace:configure.in:762: -1- m4_pattern_allow([^LIB@&t@OBJS$])
-m4trace:configure.in:762: -1- AC_LIBSOURCE([getcwd.c])
-m4trace:configure.in:762: -1- AH_OUTPUT([HAVE_MEMSET], [/* Define to 1 if you have the `memset\' function. */
-@%:@undef HAVE_MEMSET])
-m4trace:configure.in:762: -1- AC_DEFINE_TRACE_LITERAL([HAVE_MEMSET])
-m4trace:configure.in:762: -1- m4_pattern_allow([^HAVE_MEMSET$])
-m4trace:configure.in:762: -1- AC_SUBST([LIB@&t@OBJS], ["$LIB@&t@OBJS memset.$ac_objext"])
-m4trace:configure.in:762: -1- AC_SUBST_TRACE([LIB@&t@OBJS])
-m4trace:configure.in:762: -1- m4_pattern_allow([^LIB@&t@OBJS$])
-m4trace:configure.in:762: -1- AC_LIBSOURCE([memset.c])
-m4trace:configure.in:763: -1- AH_OUTPUT([HAVE_STRCASECMP], [/* Define to 1 if you have the `strcasecmp\' function. */
-@%:@undef HAVE_STRCASECMP])
-m4trace:configure.in:763: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STRCASECMP])
-m4trace:configure.in:763: -1- m4_pattern_allow([^HAVE_STRCASECMP$])
-m4trace:configure.in:763: -1- AC_SUBST([LIB@&t@OBJS], ["$LIB@&t@OBJS strcasecmp.$ac_objext"])
-m4trace:configure.in:763: -1- AC_SUBST_TRACE([LIB@&t@OBJS])
-m4trace:configure.in:763: -1- m4_pattern_allow([^LIB@&t@OBJS$])
-m4trace:configure.in:763: -1- AC_LIBSOURCE([strcasecmp.c])
-m4trace:configure.in:763: -1- AH_OUTPUT([HAVE_STRCASESTR], [/* Define to 1 if you have the `strcasestr\' function. */
-@%:@undef HAVE_STRCASESTR])
-m4trace:configure.in:763: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STRCASESTR])
-m4trace:configure.in:763: -1- m4_pattern_allow([^HAVE_STRCASESTR$])
-m4trace:configure.in:763: -1- AC_SUBST([LIB@&t@OBJS], ["$LIB@&t@OBJS strcasestr.$ac_objext"])
-m4trace:configure.in:763: -1- AC_SUBST_TRACE([LIB@&t@OBJS])
-m4trace:configure.in:763: -1- m4_pattern_allow([^LIB@&t@OBJS$])
-m4trace:configure.in:763: -1- AC_LIBSOURCE([strcasestr.c])
-m4trace:configure.in:763: -1- AH_OUTPUT([HAVE_STRERROR], [/* Define to 1 if you have the `strerror\' function. */
-@%:@undef HAVE_STRERROR])
-m4trace:configure.in:763: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STRERROR])
-m4trace:configure.in:763: -1- m4_pattern_allow([^HAVE_STRERROR$])
-m4trace:configure.in:763: -1- AC_SUBST([LIB@&t@OBJS], ["$LIB@&t@OBJS strerror.$ac_objext"])
-m4trace:configure.in:763: -1- AC_SUBST_TRACE([LIB@&t@OBJS])
-m4trace:configure.in:763: -1- m4_pattern_allow([^LIB@&t@OBJS$])
-m4trace:configure.in:763: -1- AC_LIBSOURCE([strerror.c])
-m4trace:configure.in:763: -1- AH_OUTPUT([HAVE_STRFTIME], [/* Define to 1 if you have the `strftime\' function. */
-@%:@undef HAVE_STRFTIME])
-m4trace:configure.in:763: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STRFTIME])
-m4trace:configure.in:763: -1- m4_pattern_allow([^HAVE_STRFTIME$])
-m4trace:configure.in:763: -1- AC_SUBST([LIB@&t@OBJS], ["$LIB@&t@OBJS strftime.$ac_objext"])
-m4trace:configure.in:763: -1- AC_SUBST_TRACE([LIB@&t@OBJS])
-m4trace:configure.in:763: -1- m4_pattern_allow([^LIB@&t@OBJS$])
-m4trace:configure.in:763: -1- AC_LIBSOURCE([strftime.c])
-m4trace:configure.in:763: -1- AH_OUTPUT([HAVE_STRNLEN], [/* Define to 1 if you have the `strnlen\' function. */
-@%:@undef HAVE_STRNLEN])
-m4trace:configure.in:763: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STRNLEN])
-m4trace:configure.in:763: -1- m4_pattern_allow([^HAVE_STRNLEN$])
-m4trace:configure.in:763: -1- AC_SUBST([LIB@&t@OBJS], ["$LIB@&t@OBJS strnlen.$ac_objext"])
-m4trace:configure.in:763: -1- AC_SUBST_TRACE([LIB@&t@OBJS])
-m4trace:configure.in:763: -1- m4_pattern_allow([^LIB@&t@OBJS$])
-m4trace:configure.in:763: -1- AC_LIBSOURCE([strnlen.c])
-m4trace:configure.in:763: -1- AH_OUTPUT([HAVE_STRPBRK], [/* Define to 1 if you have the `strpbrk\' function. */
-@%:@undef HAVE_STRPBRK])
-m4trace:configure.in:763: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STRPBRK])
-m4trace:configure.in:763: -1- m4_pattern_allow([^HAVE_STRPBRK$])
-m4trace:configure.in:763: -1- AC_SUBST([LIB@&t@OBJS], ["$LIB@&t@OBJS strpbrk.$ac_objext"])
-m4trace:configure.in:763: -1- AC_SUBST_TRACE([LIB@&t@OBJS])
-m4trace:configure.in:763: -1- m4_pattern_allow([^LIB@&t@OBJS$])
-m4trace:configure.in:763: -1- AC_LIBSOURCE([strpbrk.c])
-m4trace:configure.in:763: -1- AH_OUTPUT([HAVE_STRSTR], [/* Define to 1 if you have the `strstr\' function. */
-@%:@undef HAVE_STRSTR])
-m4trace:configure.in:763: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STRSTR])
-m4trace:configure.in:763: -1- m4_pattern_allow([^HAVE_STRSTR$])
-m4trace:configure.in:763: -1- AC_SUBST([LIB@&t@OBJS], ["$LIB@&t@OBJS strstr.$ac_objext"])
-m4trace:configure.in:763: -1- AC_SUBST_TRACE([LIB@&t@OBJS])
-m4trace:configure.in:763: -1- m4_pattern_allow([^LIB@&t@OBJS$])
-m4trace:configure.in:763: -1- AC_LIBSOURCE([strstr.c])
-m4trace:configure.in:764: -1- AH_OUTPUT([HAVE_STRTOD], [/* Define to 1 if you have the `strtod\' function. */
-@%:@undef HAVE_STRTOD])
-m4trace:configure.in:764: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STRTOD])
-m4trace:configure.in:764: -1- m4_pattern_allow([^HAVE_STRTOD$])
-m4trace:configure.in:764: -1- AC_SUBST([LIB@&t@OBJS], ["$LIB@&t@OBJS strtod.$ac_objext"])
-m4trace:configure.in:764: -1- AC_SUBST_TRACE([LIB@&t@OBJS])
-m4trace:configure.in:764: -1- m4_pattern_allow([^LIB@&t@OBJS$])
-m4trace:configure.in:764: -1- AC_LIBSOURCE([strtod.c])
-m4trace:configure.in:764: -1- AH_OUTPUT([HAVE_STRTOL], [/* Define to 1 if you have the `strtol\' function. */
-@%:@undef HAVE_STRTOL])
-m4trace:configure.in:764: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STRTOL])
-m4trace:configure.in:764: -1- m4_pattern_allow([^HAVE_STRTOL$])
-m4trace:configure.in:764: -1- AC_SUBST([LIB@&t@OBJS], ["$LIB@&t@OBJS strtol.$ac_objext"])
-m4trace:configure.in:764: -1- AC_SUBST_TRACE([LIB@&t@OBJS])
-m4trace:configure.in:764: -1- m4_pattern_allow([^LIB@&t@OBJS$])
-m4trace:configure.in:764: -1- AC_LIBSOURCE([strtol.c])
-m4trace:configure.in:764: -1- AH_OUTPUT([HAVE_STRTOUL], [/* Define to 1 if you have the `strtoul\' function. */
-@%:@undef HAVE_STRTOUL])
-m4trace:configure.in:764: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STRTOUL])
-m4trace:configure.in:764: -1- m4_pattern_allow([^HAVE_STRTOUL$])
-m4trace:configure.in:764: -1- AC_SUBST([LIB@&t@OBJS], ["$LIB@&t@OBJS strtoul.$ac_objext"])
-m4trace:configure.in:764: -1- AC_SUBST_TRACE([LIB@&t@OBJS])
-m4trace:configure.in:764: -1- m4_pattern_allow([^LIB@&t@OBJS$])
-m4trace:configure.in:764: -1- AC_LIBSOURCE([strtoul.c])
-m4trace:configure.in:764: -1- AH_OUTPUT([HAVE_STRTOLL], [/* Define to 1 if you have the `strtoll\' function. */
-@%:@undef HAVE_STRTOLL])
-m4trace:configure.in:764: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STRTOLL])
-m4trace:configure.in:764: -1- m4_pattern_allow([^HAVE_STRTOLL$])
-m4trace:configure.in:764: -1- AC_SUBST([LIB@&t@OBJS], ["$LIB@&t@OBJS strtoll.$ac_objext"])
-m4trace:configure.in:764: -1- AC_SUBST_TRACE([LIB@&t@OBJS])
-m4trace:configure.in:764: -1- m4_pattern_allow([^LIB@&t@OBJS$])
-m4trace:configure.in:764: -1- AC_LIBSOURCE([strtoll.c])
-m4trace:configure.in:764: -1- AH_OUTPUT([HAVE_STRTOULL], [/* Define to 1 if you have the `strtoull\' function. */
-@%:@undef HAVE_STRTOULL])
-m4trace:configure.in:764: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STRTOULL])
-m4trace:configure.in:764: -1- m4_pattern_allow([^HAVE_STRTOULL$])
-m4trace:configure.in:764: -1- AC_SUBST([LIB@&t@OBJS], ["$LIB@&t@OBJS strtoull.$ac_objext"])
-m4trace:configure.in:764: -1- AC_SUBST_TRACE([LIB@&t@OBJS])
-m4trace:configure.in:764: -1- m4_pattern_allow([^LIB@&t@OBJS$])
-m4trace:configure.in:764: -1- AC_LIBSOURCE([strtoull.c])
-m4trace:configure.in:764: -1- AH_OUTPUT([HAVE_STRTOIMAX], [/* Define to 1 if you have the `strtoimax\' function. */
-@%:@undef HAVE_STRTOIMAX])
-m4trace:configure.in:764: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STRTOIMAX])
-m4trace:configure.in:764: -1- m4_pattern_allow([^HAVE_STRTOIMAX$])
-m4trace:configure.in:764: -1- AC_SUBST([LIB@&t@OBJS], ["$LIB@&t@OBJS strtoimax.$ac_objext"])
-m4trace:configure.in:764: -1- AC_SUBST_TRACE([LIB@&t@OBJS])
-m4trace:configure.in:764: -1- m4_pattern_allow([^LIB@&t@OBJS$])
-m4trace:configure.in:764: -1- AC_LIBSOURCE([strtoimax.c])
-m4trace:configure.in:764: -1- AH_OUTPUT([HAVE_STRTOUMAX], [/* Define to 1 if you have the `strtoumax\' function. */
-@%:@undef HAVE_STRTOUMAX])
-m4trace:configure.in:764: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STRTOUMAX])
-m4trace:configure.in:764: -1- m4_pattern_allow([^HAVE_STRTOUMAX$])
-m4trace:configure.in:764: -1- AC_SUBST([LIB@&t@OBJS], ["$LIB@&t@OBJS strtoumax.$ac_objext"])
-m4trace:configure.in:764: -1- AC_SUBST_TRACE([LIB@&t@OBJS])
-m4trace:configure.in:764: -1- m4_pattern_allow([^LIB@&t@OBJS$])
-m4trace:configure.in:764: -1- AC_LIBSOURCE([strtoumax.c])
-m4trace:configure.in:765: -1- AH_OUTPUT([HAVE_DPRINTF], [/* Define to 1 if you have the `dprintf\' function. */
-@%:@undef HAVE_DPRINTF])
-m4trace:configure.in:765: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DPRINTF])
-m4trace:configure.in:765: -1- m4_pattern_allow([^HAVE_DPRINTF$])
-m4trace:configure.in:765: -1- AC_SUBST([LIB@&t@OBJS], ["$LIB@&t@OBJS dprintf.$ac_objext"])
-m4trace:configure.in:765: -1- AC_SUBST_TRACE([LIB@&t@OBJS])
-m4trace:configure.in:765: -1- m4_pattern_allow([^LIB@&t@OBJS$])
-m4trace:configure.in:765: -1- AC_LIBSOURCE([dprintf.c])
-m4trace:configure.in:766: -1- AH_OUTPUT([HAVE_STRCHRNUL], [/* Define to 1 if you have the `strchrnul\' function. */
-@%:@undef HAVE_STRCHRNUL])
-m4trace:configure.in:766: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STRCHRNUL])
-m4trace:configure.in:766: -1- m4_pattern_allow([^HAVE_STRCHRNUL$])
-m4trace:configure.in:766: -1- AC_SUBST([LIB@&t@OBJS], ["$LIB@&t@OBJS strchrnul.$ac_objext"])
-m4trace:configure.in:766: -1- AC_SUBST_TRACE([LIB@&t@OBJS])
-m4trace:configure.in:766: -1- m4_pattern_allow([^LIB@&t@OBJS$])
-m4trace:configure.in:766: -1- AC_LIBSOURCE([strchrnul.c])
-m4trace:configure.in:768: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DECL_AUDIT_USER_TTY])
-m4trace:configure.in:768: -1- m4_pattern_allow([^HAVE_DECL_AUDIT_USER_TTY$])
-m4trace:configure.in:768: -1- AH_OUTPUT([HAVE_DECL_AUDIT_USER_TTY], [/* Define to 1 if you have the declaration of `AUDIT_USER_TTY\', and to 0 if
-   you don\'t. */
-@%:@undef HAVE_DECL_AUDIT_USER_TTY])
-m4trace:configure.in:770: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DECL_CONFSTR])
-m4trace:configure.in:770: -1- m4_pattern_allow([^HAVE_DECL_CONFSTR$])
-m4trace:configure.in:770: -1- AH_OUTPUT([HAVE_DECL_CONFSTR], [/* Define to 1 if you have the declaration of `confstr\', and to 0 if you
-   don\'t. */
-@%:@undef HAVE_DECL_CONFSTR])
-m4trace:configure.in:771: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DECL_PRINTF])
-m4trace:configure.in:771: -1- m4_pattern_allow([^HAVE_DECL_PRINTF$])
-m4trace:configure.in:771: -1- AH_OUTPUT([HAVE_DECL_PRINTF], [/* Define to 1 if you have the declaration of `printf\', and to 0 if you don\'t.
-   */
-@%:@undef HAVE_DECL_PRINTF])
-m4trace:configure.in:772: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DECL_SBRK])
-m4trace:configure.in:772: -1- m4_pattern_allow([^HAVE_DECL_SBRK$])
-m4trace:configure.in:772: -1- AH_OUTPUT([HAVE_DECL_SBRK], [/* Define to 1 if you have the declaration of `sbrk\', and to 0 if you don\'t.
-   */
-@%:@undef HAVE_DECL_SBRK])
-m4trace:configure.in:773: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DECL_SETREGID])
-m4trace:configure.in:773: -1- m4_pattern_allow([^HAVE_DECL_SETREGID$])
-m4trace:configure.in:773: -1- AH_OUTPUT([HAVE_DECL_SETREGID], [/* Define to 1 if you have the declaration of `setregid\', and to 0 if you
-   don\'t. */
-@%:@undef HAVE_DECL_SETREGID])
-m4trace:configure.in:774: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DECL_STRCPY])
-m4trace:configure.in:774: -1- m4_pattern_allow([^HAVE_DECL_STRCPY$])
-m4trace:configure.in:774: -1- AH_OUTPUT([HAVE_DECL_STRCPY], [/* Define to 1 if you have the declaration of `strcpy\', and to 0 if you don\'t.
-   */
-@%:@undef HAVE_DECL_STRCPY])
-m4trace:configure.in:775: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DECL_STRSIGNAL])
-m4trace:configure.in:775: -1- m4_pattern_allow([^HAVE_DECL_STRSIGNAL$])
-m4trace:configure.in:775: -1- AH_OUTPUT([HAVE_DECL_STRSIGNAL], [/* Define to 1 if you have the declaration of `strsignal\', and to 0 if you
-   don\'t. */
-@%:@undef HAVE_DECL_STRSIGNAL])
-m4trace:configure.in:778: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DECL_STRTOLD])
-m4trace:configure.in:778: -1- m4_pattern_allow([^HAVE_DECL_STRTOLD$])
-m4trace:configure.in:778: -1- AH_OUTPUT([HAVE_DECL_STRTOLD], [/* Define to 1 if you have the declaration of `strtold\', and to 0 if you
-   don\'t. */
-@%:@undef HAVE_DECL_STRTOLD])
-m4trace:configure.in:778: -1- _m4_warn([obsolete], [The macro `AC_TRY_COMPILE' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2615: AC_TRY_COMPILE is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2881: AC_CHECK_DECLS is expanded from...
-configure.in:778: the top level])
-m4trace:configure.in:778: -1- AC_DEFINE_TRACE_LITERAL([STRTOLD_BROKEN])
-m4trace:configure.in:778: -1- m4_pattern_allow([^STRTOLD_BROKEN$])
-m4trace:configure.in:794: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2688: AC_TRY_LINK is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-../../lib/autoconf/general.m4:2053: AC_CACHE_CHECK is expanded from...
-aclocal.m4:103: BASH_CHECK_DECL is expanded from...
-configure.in:794: the top level])
-m4trace:configure.in:795: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2688: AC_TRY_LINK is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-../../lib/autoconf/general.m4:2053: AC_CACHE_CHECK is expanded from...
-aclocal.m4:103: BASH_CHECK_DECL is expanded from...
-configure.in:795: the top level])
-m4trace:configure.in:796: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2688: AC_TRY_LINK is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-../../lib/autoconf/general.m4:2053: AC_CACHE_CHECK is expanded from...
-aclocal.m4:103: BASH_CHECK_DECL is expanded from...
-configure.in:796: the top level])
-m4trace:configure.in:797: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2688: AC_TRY_LINK is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-../../lib/autoconf/general.m4:2053: AC_CACHE_CHECK is expanded from...
-aclocal.m4:103: BASH_CHECK_DECL is expanded from...
-configure.in:797: the top level])
-m4trace:configure.in:798: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2688: AC_TRY_LINK is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-../../lib/autoconf/general.m4:2053: AC_CACHE_CHECK is expanded from...
-aclocal.m4:103: BASH_CHECK_DECL is expanded from...
-configure.in:798: the top level])
-m4trace:configure.in:799: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2688: AC_TRY_LINK is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-../../lib/autoconf/general.m4:2053: AC_CACHE_CHECK is expanded from...
-aclocal.m4:103: BASH_CHECK_DECL is expanded from...
-configure.in:799: the top level])
-m4trace:configure.in:801: -1- AH_OUTPUT([HAVE_SYS_TIME_H], [/* Define to 1 if you have the <sys/time.h> header file. */
-@%:@undef HAVE_SYS_TIME_H])
-m4trace:configure.in:801: -1- AH_OUTPUT([HAVE_UNISTD_H], [/* Define to 1 if you have the <unistd.h> header file. */
-@%:@undef HAVE_UNISTD_H])
-m4trace:configure.in:801: -1- AH_OUTPUT([HAVE_ALARM], [/* Define to 1 if you have the `alarm\' function. */
-@%:@undef HAVE_ALARM])
-m4trace:configure.in:801: -1- AC_SUBST([LIB@&t@OBJS], ["$LIB@&t@OBJS mktime.$ac_objext"])
-m4trace:configure.in:801: -1- AC_SUBST_TRACE([LIB@&t@OBJS])
-m4trace:configure.in:801: -1- m4_pattern_allow([^LIB@&t@OBJS$])
-m4trace:configure.in:801: -1- AC_LIBSOURCE([mktime.c])
-m4trace:configure.in:808: -1- AH_OUTPUT([HAVE_ARGZ_H], [/* Define to 1 if you have the <argz.h> header file. */
-@%:@undef HAVE_ARGZ_H])
-m4trace:configure.in:808: -1- AH_OUTPUT([HAVE_ERRNO_H], [/* Define to 1 if you have the <errno.h> header file. */
-@%:@undef HAVE_ERRNO_H])
-m4trace:configure.in:808: -1- AH_OUTPUT([HAVE_FCNTL_H], [/* Define to 1 if you have the <fcntl.h> header file. */
-@%:@undef HAVE_FCNTL_H])
-m4trace:configure.in:808: -1- AH_OUTPUT([HAVE_MALLOC_H], [/* Define to 1 if you have the <malloc.h> header file. */
-@%:@undef HAVE_MALLOC_H])
-m4trace:configure.in:808: -1- AH_OUTPUT([HAVE_STDIO_EXT_H], [/* Define to 1 if you have the <stdio_ext.h> header file. */
-@%:@undef HAVE_STDIO_EXT_H])
-m4trace:configure.in:811: -1- AH_OUTPUT([HAVE_STDLIB_H], [/* Define to 1 if you have the <stdlib.h> header file. */
-@%:@undef HAVE_STDLIB_H])
-m4trace:configure.in:811: -1- AH_OUTPUT([HAVE_UNISTD_H], [/* Define to 1 if you have the <unistd.h> header file. */
-@%:@undef HAVE_UNISTD_H])
-m4trace:configure.in:811: -1- AH_OUTPUT([HAVE_SYS_PARAM_H], [/* Define to 1 if you have the <sys/param.h> header file. */
-@%:@undef HAVE_SYS_PARAM_H])
-m4trace:configure.in:811: -1- AH_OUTPUT([HAVE_GETPAGESIZE], [/* Define to 1 if you have the `getpagesize\' function. */
-@%:@undef HAVE_GETPAGESIZE])
-m4trace:configure.in:811: -1- AC_DEFINE_TRACE_LITERAL([HAVE_GETPAGESIZE])
-m4trace:configure.in:811: -1- m4_pattern_allow([^HAVE_GETPAGESIZE$])
-m4trace:configure.in:811: -1- AC_DEFINE_TRACE_LITERAL([HAVE_MMAP])
-m4trace:configure.in:811: -1- m4_pattern_allow([^HAVE_MMAP$])
-m4trace:configure.in:811: -1- AH_OUTPUT([HAVE_MMAP], [/* Define to 1 if you have a working `mmap\' system call. */
-@%:@undef HAVE_MMAP])
-m4trace:configure.in:812: -1- AH_OUTPUT([HAVE___ARGZ_COUNT], [/* Define to 1 if you have the `__argz_count\' function. */
-@%:@undef HAVE___ARGZ_COUNT])
-m4trace:configure.in:812: -1- AH_OUTPUT([HAVE___ARGZ_NEXT], [/* Define to 1 if you have the `__argz_next\' function. */
-@%:@undef HAVE___ARGZ_NEXT])
-m4trace:configure.in:812: -1- AH_OUTPUT([HAVE___ARGZ_STRINGIFY], [/* Define to 1 if you have the `__argz_stringify\' function. */
-@%:@undef HAVE___ARGZ_STRINGIFY])
-m4trace:configure.in:812: -1- AH_OUTPUT([HAVE_DCGETTEXT], [/* Define to 1 if you have the `dcgettext\' function. */
-@%:@undef HAVE_DCGETTEXT])
-m4trace:configure.in:812: -1- AH_OUTPUT([HAVE_MEMPCPY], [/* Define to 1 if you have the `mempcpy\' function. */
-@%:@undef HAVE_MEMPCPY])
-m4trace:configure.in:812: -1- AH_OUTPUT([HAVE_MUNMAP], [/* Define to 1 if you have the `munmap\' function. */
-@%:@undef HAVE_MUNMAP])
-m4trace:configure.in:812: -1- AH_OUTPUT([HAVE_STPCPY], [/* Define to 1 if you have the `stpcpy\' function. */
-@%:@undef HAVE_STPCPY])
-m4trace:configure.in:812: -1- AH_OUTPUT([HAVE_STRCSPN], [/* Define to 1 if you have the `strcspn\' function. */
-@%:@undef HAVE_STRCSPN])
-m4trace:configure.in:812: -1- AH_OUTPUT([HAVE_STRDUP], [/* Define to 1 if you have the `strdup\' function. */
-@%:@undef HAVE_STRDUP])
-m4trace:configure.in:821: -1- AC_SUBST([INTL_DEP])
-m4trace:configure.in:821: -1- AC_SUBST_TRACE([INTL_DEP])
-m4trace:configure.in:821: -1- m4_pattern_allow([^INTL_DEP$])
-m4trace:configure.in:822: -1- AC_SUBST([INTL_INC])
-m4trace:configure.in:822: -1- AC_SUBST_TRACE([INTL_INC])
-m4trace:configure.in:822: -1- m4_pattern_allow([^INTL_INC$])
-m4trace:configure.in:823: -1- AC_SUBST([LIBINTL_H])
-m4trace:configure.in:823: -1- AC_SUBST_TRACE([LIBINTL_H])
-m4trace:configure.in:823: -1- m4_pattern_allow([^LIBINTL_H$])
-m4trace:configure.in:829: -1- AH_OUTPUT([HAVE_WCTYPE_H], [/* Define to 1 if you have the <wctype.h> header file. */
-@%:@undef HAVE_WCTYPE_H])
-m4trace:configure.in:829: -1- AC_DEFINE_TRACE_LITERAL([HAVE_WCTYPE_H])
-m4trace:configure.in:829: -1- m4_pattern_allow([^HAVE_WCTYPE_H$])
-m4trace:configure.in:829: -1- AH_OUTPUT([HAVE_WCHAR_H], [/* Define to 1 if you have the <wchar.h> header file. */
-@%:@undef HAVE_WCHAR_H])
-m4trace:configure.in:829: -1- AC_DEFINE_TRACE_LITERAL([HAVE_WCHAR_H])
-m4trace:configure.in:829: -1- m4_pattern_allow([^HAVE_WCHAR_H$])
-m4trace:configure.in:829: -1- AH_OUTPUT([HAVE_LANGINFO_H], [/* Define to 1 if you have the <langinfo.h> header file. */
-@%:@undef HAVE_LANGINFO_H])
-m4trace:configure.in:829: -1- AC_DEFINE_TRACE_LITERAL([HAVE_LANGINFO_H])
-m4trace:configure.in:829: -1- m4_pattern_allow([^HAVE_LANGINFO_H$])
-m4trace:configure.in:829: -2- AC_DEFINE_TRACE_LITERAL([HAVE_MBRLEN])
-m4trace:configure.in:829: -2- m4_pattern_allow([^HAVE_MBRLEN$])
-m4trace:configure.in:829: -2- AC_DEFINE_TRACE_LITERAL([HAVE_MBSCMP])
-m4trace:configure.in:829: -2- m4_pattern_allow([^HAVE_MBSCMP$])
-m4trace:configure.in:829: -2- AC_DEFINE_TRACE_LITERAL([HAVE_MBSCMP])
-m4trace:configure.in:829: -2- m4_pattern_allow([^HAVE_MBSCMP$])
-m4trace:configure.in:829: -2- AC_DEFINE_TRACE_LITERAL([HAVE_MBSNRTOWCS])
-m4trace:configure.in:829: -2- m4_pattern_allow([^HAVE_MBSNRTOWCS$])
-m4trace:configure.in:829: -2- AC_DEFINE_TRACE_LITERAL([HAVE_MBSRTOWCS])
-m4trace:configure.in:829: -2- m4_pattern_allow([^HAVE_MBSRTOWCS$])
-m4trace:configure.in:829: -1- AH_OUTPUT([HAVE_MBSCHR], [/* Define to 1 if you have the `mbschr\' function. */
-@%:@undef HAVE_MBSCHR])
-m4trace:configure.in:829: -1- AC_DEFINE_TRACE_LITERAL([HAVE_MBSCHR])
-m4trace:configure.in:829: -1- m4_pattern_allow([^HAVE_MBSCHR$])
-m4trace:configure.in:829: -1- AC_SUBST([LIB@&t@OBJS], ["$LIB@&t@OBJS mbschr.$ac_objext"])
-m4trace:configure.in:829: -1- AC_SUBST_TRACE([LIB@&t@OBJS])
-m4trace:configure.in:829: -1- m4_pattern_allow([^LIB@&t@OBJS$])
-m4trace:configure.in:829: -1- AC_LIBSOURCE([mbschr.c])
-m4trace:configure.in:829: -2- AC_DEFINE_TRACE_LITERAL([HAVE_WCRTOMB])
-m4trace:configure.in:829: -2- m4_pattern_allow([^HAVE_WCRTOMB$])
-m4trace:configure.in:829: -2- AC_DEFINE_TRACE_LITERAL([HAVE_WCSCOLL])
-m4trace:configure.in:829: -2- m4_pattern_allow([^HAVE_WCSCOLL$])
-m4trace:configure.in:829: -2- AC_DEFINE_TRACE_LITERAL([HAVE_WCSDUP])
-m4trace:configure.in:829: -2- m4_pattern_allow([^HAVE_WCSDUP$])
-m4trace:configure.in:829: -2- AC_DEFINE_TRACE_LITERAL([HAVE_WCWIDTH])
-m4trace:configure.in:829: -2- m4_pattern_allow([^HAVE_WCWIDTH$])
-m4trace:configure.in:829: -2- AC_DEFINE_TRACE_LITERAL([HAVE_WCTYPE])
-m4trace:configure.in:829: -2- m4_pattern_allow([^HAVE_WCTYPE$])
-m4trace:configure.in:829: -1- AH_OUTPUT([HAVE_WCSWIDTH], [/* Define to 1 if you have the `wcswidth\' function. */
-@%:@undef HAVE_WCSWIDTH])
-m4trace:configure.in:829: -1- AC_DEFINE_TRACE_LITERAL([HAVE_WCSWIDTH])
-m4trace:configure.in:829: -1- m4_pattern_allow([^HAVE_WCSWIDTH$])
-m4trace:configure.in:829: -1- AC_SUBST([LIB@&t@OBJS], ["$LIB@&t@OBJS wcswidth.$ac_objext"])
-m4trace:configure.in:829: -1- AC_SUBST_TRACE([LIB@&t@OBJS])
-m4trace:configure.in:829: -1- m4_pattern_allow([^LIB@&t@OBJS$])
-m4trace:configure.in:829: -1- AC_LIBSOURCE([wcswidth.c])
-m4trace:configure.in:829: -1- AC_DEFINE_TRACE_LITERAL([HAVE_MBRTOWC])
-m4trace:configure.in:829: -1- m4_pattern_allow([^HAVE_MBRTOWC$])
-m4trace:configure.in:829: -1- AH_OUTPUT([HAVE_MBRTOWC], [/* Define to 1 if mbrtowc and mbstate_t are properly declared. */
-@%:@undef HAVE_MBRTOWC])
-m4trace:configure.in:829: -1- AC_DEFINE_TRACE_LITERAL([HAVE_MBSTATE_T])
-m4trace:configure.in:829: -1- m4_pattern_allow([^HAVE_MBSTATE_T$])
-m4trace:configure.in:829: -1- AH_OUTPUT([HAVE_ISWLOWER], [/* Define to 1 if you have the `iswlower\' function. */
-@%:@undef HAVE_ISWLOWER])
-m4trace:configure.in:829: -1- AH_OUTPUT([HAVE_ISWUPPER], [/* Define to 1 if you have the `iswupper\' function. */
-@%:@undef HAVE_ISWUPPER])
-m4trace:configure.in:829: -1- AH_OUTPUT([HAVE_TOWLOWER], [/* Define to 1 if you have the `towlower\' function. */
-@%:@undef HAVE_TOWLOWER])
-m4trace:configure.in:829: -1- AH_OUTPUT([HAVE_TOWUPPER], [/* Define to 1 if you have the `towupper\' function. */
-@%:@undef HAVE_TOWUPPER])
-m4trace:configure.in:829: -1- AH_OUTPUT([HAVE_ISWCTYPE], [/* Define to 1 if you have the `iswctype\' function. */
-@%:@undef HAVE_ISWCTYPE])
-m4trace:configure.in:829: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2688: AC_TRY_LINK is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-../../lib/autoconf/general.m4:2053: AC_CACHE_CHECK is expanded from...
-aclocal.m4:1689: BASH_CHECK_MULTIBYTE is expanded from...
-configure.in:829: the top level])
-m4trace:configure.in:829: -1- AC_DEFINE_TRACE_LITERAL([HAVE_LANGINFO_CODESET])
-m4trace:configure.in:829: -1- m4_pattern_allow([^HAVE_LANGINFO_CODESET$])
-m4trace:configure.in:829: -1- _m4_warn([obsolete], [The macro `AC_TRY_COMPILE' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2615: AC_TRY_COMPILE is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-../../lib/autoconf/general.m4:2053: AC_CACHE_CHECK is expanded from...
-aclocal.m4:1689: BASH_CHECK_MULTIBYTE is expanded from...
-configure.in:829: the top level])
-m4trace:configure.in:829: -1- AC_DEFINE_TRACE_LITERAL([HAVE_WCHAR_T])
-m4trace:configure.in:829: -1- m4_pattern_allow([^HAVE_WCHAR_T$])
-m4trace:configure.in:829: -1- AH_OUTPUT([HAVE_WCHAR_T], [/* systems should define this type here */
-@%:@undef HAVE_WCHAR_T])
-m4trace:configure.in:829: -1- _m4_warn([obsolete], [The macro `AC_TRY_COMPILE' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2615: AC_TRY_COMPILE is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-../../lib/autoconf/general.m4:2053: AC_CACHE_CHECK is expanded from...
-aclocal.m4:1689: BASH_CHECK_MULTIBYTE is expanded from...
-configure.in:829: the top level])
-m4trace:configure.in:829: -1- AC_DEFINE_TRACE_LITERAL([HAVE_WCTYPE_T])
-m4trace:configure.in:829: -1- m4_pattern_allow([^HAVE_WCTYPE_T$])
-m4trace:configure.in:829: -1- AH_OUTPUT([HAVE_WCTYPE_T], [/* systems should define this type here */
-@%:@undef HAVE_WCTYPE_T])
-m4trace:configure.in:829: -1- _m4_warn([obsolete], [The macro `AC_TRY_COMPILE' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2615: AC_TRY_COMPILE is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-../../lib/autoconf/general.m4:2053: AC_CACHE_CHECK is expanded from...
-aclocal.m4:1689: BASH_CHECK_MULTIBYTE is expanded from...
-configure.in:829: the top level])
-m4trace:configure.in:829: -1- AC_DEFINE_TRACE_LITERAL([HAVE_WINT_T])
-m4trace:configure.in:829: -1- m4_pattern_allow([^HAVE_WINT_T$])
-m4trace:configure.in:829: -1- AH_OUTPUT([HAVE_WINT_T], [/* systems should define this type here */
-@%:@undef HAVE_WINT_T])
-m4trace:configure.in:829: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2765: AC_TRY_RUN is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-../../lib/autoconf/general.m4:2053: AC_CACHE_CHECK is expanded from...
-aclocal.m4:1689: BASH_CHECK_MULTIBYTE is expanded from...
-configure.in:829: the top level])
-m4trace:configure.in:829: -1- _m4_warn([cross], [AC_RUN_IFELSE called without default to allow cross compiling], [../../lib/autoconf/general.m4:2749: AC_RUN_IFELSE is expanded from...
-../../lib/autoconf/general.m4:2765: AC_TRY_RUN is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-../../lib/autoconf/general.m4:2053: AC_CACHE_CHECK is expanded from...
-aclocal.m4:1689: BASH_CHECK_MULTIBYTE is expanded from...
-configure.in:829: the top level])
-m4trace:configure.in:829: -1- AC_DEFINE_TRACE_LITERAL([WCWIDTH_BROKEN])
-m4trace:configure.in:829: -1- m4_pattern_allow([^WCWIDTH_BROKEN$])
-m4trace:configure.in:829: -1- AH_OUTPUT([WCWIDTH_BROKEN], [/* wcwidth is usually not broken */
-@%:@undef WCWIDTH_BROKEN])
-m4trace:configure.in:829: -1- AH_OUTPUT([HAVE_LOCALE_CHARSET], [/* Define to 1 if you have the `locale_charset\' function. */
-@%:@undef HAVE_LOCALE_CHARSET])
-m4trace:configure.in:829: -1- AC_DEFINE_TRACE_LITERAL([HAVE_LOCALE_CHARSET])
-m4trace:configure.in:829: -1- m4_pattern_allow([^HAVE_LOCALE_CHARSET$])
-m4trace:configure.in:833: -1- AH_OUTPUT([HAVE_LIBDL], [/* Define to 1 if you have the `dl\' library (-ldl). */
-@%:@undef HAVE_LIBDL])
-m4trace:configure.in:833: -1- AC_DEFINE_TRACE_LITERAL([HAVE_LIBDL])
-m4trace:configure.in:833: -1- m4_pattern_allow([^HAVE_LIBDL$])
-m4trace:configure.in:834: -1- AH_OUTPUT([HAVE_DLOPEN], [/* Define to 1 if you have the `dlopen\' function. */
-@%:@undef HAVE_DLOPEN])
-m4trace:configure.in:834: -1- AH_OUTPUT([HAVE_DLCLOSE], [/* Define to 1 if you have the `dlclose\' function. */
-@%:@undef HAVE_DLCLOSE])
-m4trace:configure.in:834: -1- AH_OUTPUT([HAVE_DLSYM], [/* Define to 1 if you have the `dlsym\' function. */
-@%:@undef HAVE_DLSYM])
-m4trace:configure.in:838: -1- _m4_warn([obsolete], [The macro `AC_DECL_SYS_SIGLIST' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/specific.m4:41: AC_DECL_SYS_SIGLIST is expanded from...
-configure.in:838: the top level])
-m4trace:configure.in:838: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DECL_SYS_SIGLIST])
-m4trace:configure.in:838: -1- m4_pattern_allow([^HAVE_DECL_SYS_SIGLIST$])
-m4trace:configure.in:838: -1- AH_OUTPUT([HAVE_DECL_SYS_SIGLIST], [/* Define to 1 if you have the declaration of `sys_siglist\', and to 0 if you
-   don\'t. */
-@%:@undef HAVE_DECL_SYS_SIGLIST])
-m4trace:configure.in:842: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2688: AC_TRY_LINK is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-../../lib/autoconf/general.m4:2053: AC_CACHE_CHECK is expanded from...
-aclocal.m4:563: BASH_FUNC_INET_ATON is expanded from...
-configure.in:842: the top level])
-m4trace:configure.in:842: -1- AC_DEFINE_TRACE_LITERAL([HAVE_INET_ATON])
-m4trace:configure.in:842: -1- m4_pattern_allow([^HAVE_INET_ATON$])
-m4trace:configure.in:842: -1- AC_SUBST([LIB@&t@OBJS], ["$LIB@&t@OBJS inet_aton.$ac_objext"])
-m4trace:configure.in:842: -1- AC_SUBST_TRACE([LIB@&t@OBJS])
-m4trace:configure.in:842: -1- m4_pattern_allow([^LIB@&t@OBJS$])
-m4trace:configure.in:842: -1- AC_LIBSOURCE([inet_aton.c])
-m4trace:configure.in:848: -1- AH_OUTPUT([HAVE_LIBSUN], [/* Define to 1 if you have the `sun\' library (-lsun). */
-@%:@undef HAVE_LIBSUN])
-m4trace:configure.in:848: -1- AC_DEFINE_TRACE_LITERAL([HAVE_LIBSUN])
-m4trace:configure.in:848: -1- m4_pattern_allow([^HAVE_LIBSUN$])
-m4trace:configure.in:853: -1- AC_DEFINE_TRACE_LITERAL([HAVE_LIBSOCKET])
-m4trace:configure.in:853: -1- m4_pattern_allow([^HAVE_LIBSOCKET$])
-m4trace:configure.in:853: -1- AC_DEFINE_TRACE_LITERAL([HAVE_GETPEERNAME])
-m4trace:configure.in:853: -1- m4_pattern_allow([^HAVE_GETPEERNAME$])
-m4trace:configure.in:857: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2688: AC_TRY_LINK is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-aclocal.m4:732: BASH_FUNC_GETHOSTBYNAME is expanded from...
-configure.in:857: the top level])
-m4trace:configure.in:857: -1- AC_DEFINE_TRACE_LITERAL([HAVE_GETHOSTBYNAME])
-m4trace:configure.in:857: -1- m4_pattern_allow([^HAVE_GETHOSTBYNAME$])
-m4trace:configure.in:861: -1- AC_DEFINE_TRACE_LITERAL([uid_t])
-m4trace:configure.in:861: -1- m4_pattern_allow([^uid_t$])
-m4trace:configure.in:861: -1- AH_OUTPUT([uid_t], [/* Define to `int\' if <sys/types.h> doesn\'t define. */
-@%:@undef uid_t])
-m4trace:configure.in:861: -1- AC_DEFINE_TRACE_LITERAL([gid_t])
-m4trace:configure.in:861: -1- m4_pattern_allow([^gid_t$])
-m4trace:configure.in:861: -1- AH_OUTPUT([gid_t], [/* Define to `int\' if <sys/types.h> doesn\'t define. */
-@%:@undef gid_t])
-m4trace:configure.in:861: -1- AC_DEFINE_TRACE_LITERAL([GETGROUPS_T])
-m4trace:configure.in:861: -1- m4_pattern_allow([^GETGROUPS_T$])
-m4trace:configure.in:861: -1- AH_OUTPUT([GETGROUPS_T], [/* Define to the type of elements in the array set by `getgroups\'. Usually
-   this is either `int\' or `gid_t\'. */
-@%:@undef GETGROUPS_T])
-m4trace:configure.in:862: -1- AC_DEFINE_TRACE_LITERAL([off_t])
-m4trace:configure.in:862: -1- m4_pattern_allow([^off_t$])
-m4trace:configure.in:862: -1- AH_OUTPUT([off_t], [/* Define to `long int\' if <sys/types.h> does not define. */
-@%:@undef off_t])
-m4trace:configure.in:863: -1- AC_DEFINE_TRACE_LITERAL([mode_t])
-m4trace:configure.in:863: -1- m4_pattern_allow([^mode_t$])
-m4trace:configure.in:863: -1- AH_OUTPUT([mode_t], [/* Define to `int\' if <sys/types.h> does not define. */
-@%:@undef mode_t])
-m4trace:configure.in:864: -1- AC_DEFINE_TRACE_LITERAL([uid_t])
-m4trace:configure.in:864: -1- m4_pattern_allow([^uid_t$])
-m4trace:configure.in:864: -1- AH_OUTPUT([uid_t], [/* Define to `int\' if <sys/types.h> doesn\'t define. */
-@%:@undef uid_t])
-m4trace:configure.in:864: -1- AC_DEFINE_TRACE_LITERAL([gid_t])
-m4trace:configure.in:864: -1- m4_pattern_allow([^gid_t$])
-m4trace:configure.in:864: -1- AH_OUTPUT([gid_t], [/* Define to `int\' if <sys/types.h> doesn\'t define. */
-@%:@undef gid_t])
-m4trace:configure.in:865: -1- AC_DEFINE_TRACE_LITERAL([pid_t])
-m4trace:configure.in:865: -1- m4_pattern_allow([^pid_t$])
-m4trace:configure.in:865: -1- AH_OUTPUT([pid_t], [/* Define to `int\' if <sys/types.h> does not define. */
-@%:@undef pid_t])
-m4trace:configure.in:866: -1- AC_DEFINE_TRACE_LITERAL([size_t])
-m4trace:configure.in:866: -1- m4_pattern_allow([^size_t$])
-m4trace:configure.in:866: -1- AH_OUTPUT([size_t], [/* Define to `unsigned int\' if <sys/types.h> does not define. */
-@%:@undef size_t])
-m4trace:configure.in:867: -1- AC_DEFINE_TRACE_LITERAL([ssize_t])
-m4trace:configure.in:867: -1- m4_pattern_allow([^ssize_t$])
-m4trace:configure.in:867: -1- AH_OUTPUT([ssize_t], [/* Define to `int\' if <sys/types.h> does not define. */
-@%:@undef ssize_t])
-m4trace:configure.in:868: -1- AC_DEFINE_TRACE_LITERAL([time_t])
-m4trace:configure.in:868: -1- m4_pattern_allow([^time_t$])
-m4trace:configure.in:868: -1- AH_OUTPUT([time_t], [/* Define to `long\' if <sys/types.h> does not define. */
-@%:@undef time_t])
-m4trace:configure.in:870: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2688: AC_TRY_LINK is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-../../lib/autoconf/general.m4:2053: AC_CACHE_CHECK is expanded from...
-aclocal.m4:472: BASH_TYPE_LONG_LONG is expanded from...
-configure.in:870: the top level])
-m4trace:configure.in:870: -1- AC_DEFINE_TRACE_LITERAL([HAVE_LONG_LONG])
-m4trace:configure.in:870: -1- m4_pattern_allow([^HAVE_LONG_LONG$])
-m4trace:configure.in:871: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2688: AC_TRY_LINK is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-../../lib/autoconf/general.m4:2053: AC_CACHE_CHECK is expanded from...
-aclocal.m4:486: BASH_TYPE_UNSIGNED_LONG_LONG is expanded from...
-configure.in:871: the top level])
-m4trace:configure.in:871: -1- AC_DEFINE_TRACE_LITERAL([HAVE_UNSIGNED_LONG_LONG])
-m4trace:configure.in:871: -1- m4_pattern_allow([^HAVE_UNSIGNED_LONG_LONG$])
-m4trace:configure.in:873: -1- _m4_warn([obsolete], [The macro `AC_TYPE_SIGNAL' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/types.m4:738: AC_TYPE_SIGNAL is expanded from...
-configure.in:873: the top level])
-m4trace:configure.in:873: -1- AC_DEFINE_TRACE_LITERAL([RETSIGTYPE])
-m4trace:configure.in:873: -1- m4_pattern_allow([^RETSIGTYPE$])
-m4trace:configure.in:873: -1- AH_OUTPUT([RETSIGTYPE], [/* Define as the return type of signal handlers (`int\' or `void\'). */
-@%:@undef RETSIGTYPE])
-m4trace:configure.in:874: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2688: AC_TRY_LINK is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-../../lib/autoconf/general.m4:2053: AC_CACHE_CHECK is expanded from...
-aclocal.m4:537: BASH_TYPE_SIG_ATOMIC_T is expanded from...
-configure.in:874: the top level])
-m4trace:configure.in:874: -1- AC_DEFINE_TRACE_LITERAL([sig_atomic_t])
-m4trace:configure.in:874: -1- m4_pattern_allow([^sig_atomic_t$])
-m4trace:configure.in:874: -1- AH_OUTPUT([sig_atomic_t], [/* Define to `int\' if <sys/types.h> does not define. */
-@%:@undef sig_atomic_t])
-m4trace:configure.in:876: -1- AC_DEFINE_TRACE_LITERAL([SIZEOF_CHAR])
-m4trace:configure.in:876: -1- m4_pattern_allow([^SIZEOF_CHAR$])
-m4trace:configure.in:876: -1- AH_OUTPUT([SIZEOF_CHAR], [/* The size of `char\', as computed by sizeof. */
-@%:@undef SIZEOF_CHAR])
-m4trace:configure.in:877: -1- AC_DEFINE_TRACE_LITERAL([SIZEOF_SHORT])
-m4trace:configure.in:877: -1- m4_pattern_allow([^SIZEOF_SHORT$])
-m4trace:configure.in:877: -1- AH_OUTPUT([SIZEOF_SHORT], [/* The size of `short\', as computed by sizeof. */
-@%:@undef SIZEOF_SHORT])
-m4trace:configure.in:878: -1- AC_DEFINE_TRACE_LITERAL([SIZEOF_INT])
-m4trace:configure.in:878: -1- m4_pattern_allow([^SIZEOF_INT$])
-m4trace:configure.in:878: -1- AH_OUTPUT([SIZEOF_INT], [/* The size of `int\', as computed by sizeof. */
-@%:@undef SIZEOF_INT])
-m4trace:configure.in:879: -1- AC_DEFINE_TRACE_LITERAL([SIZEOF_LONG])
-m4trace:configure.in:879: -1- m4_pattern_allow([^SIZEOF_LONG$])
-m4trace:configure.in:879: -1- AH_OUTPUT([SIZEOF_LONG], [/* The size of `long\', as computed by sizeof. */
-@%:@undef SIZEOF_LONG])
-m4trace:configure.in:880: -1- AC_DEFINE_TRACE_LITERAL([SIZEOF_CHAR_P])
-m4trace:configure.in:880: -1- m4_pattern_allow([^SIZEOF_CHAR_P$])
-m4trace:configure.in:880: -1- AH_OUTPUT([SIZEOF_CHAR_P], [/* The size of `char *\', as computed by sizeof. */
-@%:@undef SIZEOF_CHAR_P])
-m4trace:configure.in:881: -1- AC_DEFINE_TRACE_LITERAL([SIZEOF_DOUBLE])
-m4trace:configure.in:881: -1- m4_pattern_allow([^SIZEOF_DOUBLE$])
-m4trace:configure.in:881: -1- AH_OUTPUT([SIZEOF_DOUBLE], [/* The size of `double\', as computed by sizeof. */
-@%:@undef SIZEOF_DOUBLE])
-m4trace:configure.in:882: -1- AC_DEFINE_TRACE_LITERAL([SIZEOF_LONG_LONG])
-m4trace:configure.in:882: -1- m4_pattern_allow([^SIZEOF_LONG_LONG$])
-m4trace:configure.in:882: -1- AH_OUTPUT([SIZEOF_LONG_LONG], [/* The size of `long long\', as computed by sizeof. */
-@%:@undef SIZEOF_LONG_LONG])
-m4trace:configure.in:884: -1- AC_DEFINE_TRACE_LITERAL([u_int])
-m4trace:configure.in:884: -1- m4_pattern_allow([^u_int$])
-m4trace:configure.in:884: -1- AH_OUTPUT([u_int], [/* Define to `unsigned int\' if <sys/types.h> does not define. */
-@%:@undef u_int])
-m4trace:configure.in:885: -1- AC_DEFINE_TRACE_LITERAL([u_long])
-m4trace:configure.in:885: -1- m4_pattern_allow([^u_long$])
-m4trace:configure.in:885: -1- AH_OUTPUT([u_long], [/* Define to `unsigned long\' if <sys/types.h> does not define. */
-@%:@undef u_long])
-m4trace:configure.in:887: -1- AC_DEFINE_TRACE_LITERAL([bits16_t])
-m4trace:configure.in:887: -1- m4_pattern_allow([^bits16_t$])
-m4trace:configure.in:887: -1- AH_OUTPUT([bits16_t], [/* Define to `short\' if <sys/types.h> does not define. */
-@%:@undef bits16_t])
-m4trace:configure.in:887: -1- AC_DEFINE_TRACE_LITERAL([bits16_t])
-m4trace:configure.in:887: -1- m4_pattern_allow([^bits16_t$])
-m4trace:configure.in:887: -1- AH_OUTPUT([bits16_t], [/* Define to `char\' if <sys/types.h> does not define. */
-@%:@undef bits16_t])
-m4trace:configure.in:887: -1- AC_DEFINE_TRACE_LITERAL([bits16_t])
-m4trace:configure.in:887: -1- m4_pattern_allow([^bits16_t$])
-m4trace:configure.in:887: -1- AH_OUTPUT([bits16_t], [/* Define to `short\' if <sys/types.h> does not define. */
-@%:@undef bits16_t])
-m4trace:configure.in:888: -1- AC_DEFINE_TRACE_LITERAL([u_bits16_t])
-m4trace:configure.in:888: -1- m4_pattern_allow([^u_bits16_t$])
-m4trace:configure.in:888: -1- AH_OUTPUT([u_bits16_t], [/* Define to `unsigned short\' if <sys/types.h> does not define. */
-@%:@undef u_bits16_t])
-m4trace:configure.in:888: -1- AC_DEFINE_TRACE_LITERAL([u_bits16_t])
-m4trace:configure.in:888: -1- m4_pattern_allow([^u_bits16_t$])
-m4trace:configure.in:888: -1- AH_OUTPUT([u_bits16_t], [/* Define to `unsigned char\' if <sys/types.h> does not define. */
-@%:@undef u_bits16_t])
-m4trace:configure.in:888: -1- AC_DEFINE_TRACE_LITERAL([u_bits16_t])
-m4trace:configure.in:888: -1- m4_pattern_allow([^u_bits16_t$])
-m4trace:configure.in:888: -1- AH_OUTPUT([u_bits16_t], [/* Define to `unsigned short\' if <sys/types.h> does not define. */
-@%:@undef u_bits16_t])
-m4trace:configure.in:889: -1- AC_DEFINE_TRACE_LITERAL([bits32_t])
-m4trace:configure.in:889: -1- m4_pattern_allow([^bits32_t$])
-m4trace:configure.in:889: -1- AH_OUTPUT([bits32_t], [/* Define to `int\' if <sys/types.h> does not define. */
-@%:@undef bits32_t])
-m4trace:configure.in:889: -1- AC_DEFINE_TRACE_LITERAL([bits32_t])
-m4trace:configure.in:889: -1- m4_pattern_allow([^bits32_t$])
-m4trace:configure.in:889: -1- AH_OUTPUT([bits32_t], [/* Define to `long\' if <sys/types.h> does not define. */
-@%:@undef bits32_t])
-m4trace:configure.in:889: -1- AC_DEFINE_TRACE_LITERAL([bits32_t])
-m4trace:configure.in:889: -1- m4_pattern_allow([^bits32_t$])
-m4trace:configure.in:889: -1- AH_OUTPUT([bits32_t], [/* Define to `int\' if <sys/types.h> does not define. */
-@%:@undef bits32_t])
-m4trace:configure.in:890: -1- AC_DEFINE_TRACE_LITERAL([u_bits32_t])
-m4trace:configure.in:890: -1- m4_pattern_allow([^u_bits32_t$])
-m4trace:configure.in:890: -1- AH_OUTPUT([u_bits32_t], [/* Define to `unsigned int\' if <sys/types.h> does not define. */
-@%:@undef u_bits32_t])
-m4trace:configure.in:890: -1- AC_DEFINE_TRACE_LITERAL([u_bits32_t])
-m4trace:configure.in:890: -1- m4_pattern_allow([^u_bits32_t$])
-m4trace:configure.in:890: -1- AH_OUTPUT([u_bits32_t], [/* Define to `unsigned long\' if <sys/types.h> does not define. */
-@%:@undef u_bits32_t])
-m4trace:configure.in:890: -1- AC_DEFINE_TRACE_LITERAL([u_bits32_t])
-m4trace:configure.in:890: -1- m4_pattern_allow([^u_bits32_t$])
-m4trace:configure.in:890: -1- AH_OUTPUT([u_bits32_t], [/* Define to `unsigned int\' if <sys/types.h> does not define. */
-@%:@undef u_bits32_t])
-m4trace:configure.in:891: -1- AC_DEFINE_TRACE_LITERAL([bits64_t])
-m4trace:configure.in:891: -1- m4_pattern_allow([^bits64_t$])
-m4trace:configure.in:891: -1- AH_OUTPUT([bits64_t], [/* Define to `char *\' if <sys/types.h> does not define. */
-@%:@undef bits64_t])
-m4trace:configure.in:891: -1- AC_DEFINE_TRACE_LITERAL([bits64_t])
-m4trace:configure.in:891: -1- m4_pattern_allow([^bits64_t$])
-m4trace:configure.in:891: -1- AH_OUTPUT([bits64_t], [/* Define to `double\' if <sys/types.h> does not define. */
-@%:@undef bits64_t])
-m4trace:configure.in:891: -1- AC_DEFINE_TRACE_LITERAL([bits64_t])
-m4trace:configure.in:891: -1- m4_pattern_allow([^bits64_t$])
-m4trace:configure.in:891: -1- AH_OUTPUT([bits64_t], [/* Define to `long long\' if <sys/types.h> does not define. */
-@%:@undef bits64_t])
-m4trace:configure.in:891: -1- AC_DEFINE_TRACE_LITERAL([bits64_t])
-m4trace:configure.in:891: -1- m4_pattern_allow([^bits64_t$])
-m4trace:configure.in:891: -1- AH_OUTPUT([bits64_t], [/* Define to `long\' if <sys/types.h> does not define. */
-@%:@undef bits64_t])
-m4trace:configure.in:891: -1- AC_DEFINE_TRACE_LITERAL([bits64_t])
-m4trace:configure.in:891: -1- m4_pattern_allow([^bits64_t$])
-m4trace:configure.in:891: -1- AH_OUTPUT([bits64_t], [/* Define to `double\' if <sys/types.h> does not define. */
-@%:@undef bits64_t])
-m4trace:configure.in:893: -1- AC_DEFINE_TRACE_LITERAL([ptrdiff_t])
-m4trace:configure.in:893: -1- m4_pattern_allow([^ptrdiff_t$])
-m4trace:configure.in:893: -1- AH_OUTPUT([ptrdiff_t], [/* Define to `int\' if <sys/types.h> does not define. */
-@%:@undef ptrdiff_t])
-m4trace:configure.in:893: -1- AC_DEFINE_TRACE_LITERAL([ptrdiff_t])
-m4trace:configure.in:893: -1- m4_pattern_allow([^ptrdiff_t$])
-m4trace:configure.in:893: -1- AH_OUTPUT([ptrdiff_t], [/* Define to `long\' if <sys/types.h> does not define. */
-@%:@undef ptrdiff_t])
-m4trace:configure.in:893: -1- AC_DEFINE_TRACE_LITERAL([ptrdiff_t])
-m4trace:configure.in:893: -1- m4_pattern_allow([^ptrdiff_t$])
-m4trace:configure.in:893: -1- AH_OUTPUT([ptrdiff_t], [/* Define to `long long\' if <sys/types.h> does not define. */
-@%:@undef ptrdiff_t])
-m4trace:configure.in:893: -1- AC_DEFINE_TRACE_LITERAL([ptrdiff_t])
-m4trace:configure.in:893: -1- m4_pattern_allow([^ptrdiff_t$])
-m4trace:configure.in:893: -1- AH_OUTPUT([ptrdiff_t], [/* Define to `int\' if <sys/types.h> does not define. */
-@%:@undef ptrdiff_t])
-m4trace:configure.in:896: -1- AC_DEFINE_TRACE_LITERAL([STAT_MACROS_BROKEN])
-m4trace:configure.in:896: -1- m4_pattern_allow([^STAT_MACROS_BROKEN$])
-m4trace:configure.in:896: -1- AH_OUTPUT([STAT_MACROS_BROKEN], [/* Define to 1 if the `S_IS*\' macros in <sys/stat.h> do not work properly. */
-@%:@undef STAT_MACROS_BROKEN])
-m4trace:configure.in:901: -1- AC_DEFINE_TRACE_LITERAL([HAVE_HASH_BANG_EXEC])
-m4trace:configure.in:901: -1- m4_pattern_allow([^HAVE_HASH_BANG_EXEC$])
-m4trace:configure.in:906: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2688: AC_TRY_LINK is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-../../lib/autoconf/general.m4:2053: AC_CACHE_CHECK is expanded from...
-aclocal.m4:549: BASH_FUNC_LSTAT is expanded from...
-configure.in:906: the top level])
-m4trace:configure.in:906: -1- AC_DEFINE_TRACE_LITERAL([HAVE_LSTAT])
-m4trace:configure.in:906: -1- m4_pattern_allow([^HAVE_LSTAT$])
-m4trace:configure.in:910: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2765: AC_TRY_RUN is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-aclocal.m4:1920: BASH_FUNC_CTYPE_NONASCII is expanded from...
-configure.in:910: the top level])
-m4trace:configure.in:910: -1- AC_DEFINE_TRACE_LITERAL([CTYPE_NON_ASCII])
-m4trace:configure.in:910: -1- m4_pattern_allow([^CTYPE_NON_ASCII$])
-m4trace:configure.in:911: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2765: AC_TRY_RUN is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-aclocal.m4:270: BASH_FUNC_DUP2_CLOEXEC_CHECK is expanded from...
-configure.in:911: the top level])
-m4trace:configure.in:911: -1- AC_DEFINE_TRACE_LITERAL([DUP2_BROKEN])
-m4trace:configure.in:911: -1- m4_pattern_allow([^DUP2_BROKEN$])
-m4trace:configure.in:912: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2765: AC_TRY_RUN is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-aclocal.m4:1235: BASH_SYS_PGRP_SYNC is expanded from...
-configure.in:912: the top level])
-m4trace:configure.in:912: -1- AC_DEFINE_TRACE_LITERAL([PGRP_PIPE])
-m4trace:configure.in:912: -1- m4_pattern_allow([^PGRP_PIPE$])
-m4trace:configure.in:913: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2688: AC_TRY_LINK is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-aclocal.m4:1195: BASH_SYS_SIGNAL_VINTAGE is expanded from...
-configure.in:913: the top level])
-m4trace:configure.in:913: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2688: AC_TRY_LINK is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2662: _AC_LINK_IFELSE is expanded from...
-../../lib/autoconf/general.m4:2679: AC_LINK_IFELSE is expanded from...
-../../lib/autoconf/general.m4:2688: AC_TRY_LINK is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-aclocal.m4:1195: BASH_SYS_SIGNAL_VINTAGE is expanded from...
-configure.in:913: the top level])
-m4trace:configure.in:913: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2688: AC_TRY_LINK is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2662: _AC_LINK_IFELSE is expanded from...
-../../lib/autoconf/general.m4:2679: AC_LINK_IFELSE is expanded from...
-../../lib/autoconf/general.m4:2688: AC_TRY_LINK is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2662: _AC_LINK_IFELSE is expanded from...
-../../lib/autoconf/general.m4:2679: AC_LINK_IFELSE is expanded from...
-../../lib/autoconf/general.m4:2688: AC_TRY_LINK is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-aclocal.m4:1195: BASH_SYS_SIGNAL_VINTAGE is expanded from...
-configure.in:913: the top level])
-m4trace:configure.in:913: -1- AC_DEFINE_TRACE_LITERAL([HAVE_POSIX_SIGNALS])
-m4trace:configure.in:913: -1- m4_pattern_allow([^HAVE_POSIX_SIGNALS$])
-m4trace:configure.in:913: -1- AC_DEFINE_TRACE_LITERAL([HAVE_BSD_SIGNALS])
-m4trace:configure.in:913: -1- m4_pattern_allow([^HAVE_BSD_SIGNALS$])
-m4trace:configure.in:913: -1- AC_DEFINE_TRACE_LITERAL([HAVE_USG_SIGHOLD])
-m4trace:configure.in:913: -1- m4_pattern_allow([^HAVE_USG_SIGHOLD$])
-m4trace:configure.in:916: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2688: AC_TRY_LINK is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-aclocal.m4:253: BASH_SYS_ERRLIST is expanded from...
-configure.in:916: the top level])
-m4trace:configure.in:916: -1- AC_DEFINE_TRACE_LITERAL([HAVE_SYS_ERRLIST])
-m4trace:configure.in:916: -1- m4_pattern_allow([^HAVE_SYS_ERRLIST$])
-m4trace:configure.in:917: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2765: AC_TRY_RUN is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-aclocal.m4:211: BASH_SYS_SIGLIST is expanded from...
-configure.in:917: the top level])
-m4trace:configure.in:917: -1- AC_DEFINE_TRACE_LITERAL([HAVE_SYS_SIGLIST])
-m4trace:configure.in:917: -1- m4_pattern_allow([^HAVE_SYS_SIGLIST$])
-m4trace:configure.in:918: -1- _m4_warn([obsolete], [The macro `AC_TRY_COMPILE' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2615: AC_TRY_COMPILE is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-aclocal.m4:167: BASH_DECL_UNDER_SYS_SIGLIST is expanded from...
-aclocal.m4:184: BASH_UNDER_SYS_SIGLIST is expanded from...
-configure.in:918: the top level])
-m4trace:configure.in:918: -1- AC_DEFINE_TRACE_LITERAL([UNDER_SYS_SIGLIST_DECLARED])
-m4trace:configure.in:918: -1- m4_pattern_allow([^UNDER_SYS_SIGLIST_DECLARED$])
-m4trace:configure.in:918: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2765: AC_TRY_RUN is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-aclocal.m4:184: BASH_UNDER_SYS_SIGLIST is expanded from...
-configure.in:918: the top level])
-m4trace:configure.in:918: -1- AC_DEFINE_TRACE_LITERAL([HAVE_UNDER_SYS_SIGLIST])
-m4trace:configure.in:918: -1- m4_pattern_allow([^HAVE_UNDER_SYS_SIGLIST$])
-m4trace:configure.in:921: -1- _m4_warn([obsolete], [The macro `AC_TRY_COMPILE' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2615: AC_TRY_COMPILE is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-aclocal.m4:366: BASH_TYPE_SIGHANDLER is expanded from...
-configure.in:921: the top level])
-m4trace:configure.in:921: -1- AC_DEFINE_TRACE_LITERAL([VOID_SIGHANDLER])
-m4trace:configure.in:921: -1- m4_pattern_allow([^VOID_SIGHANDLER$])
-m4trace:configure.in:922: -1- AC_DEFINE_TRACE_LITERAL([clock_t])
-m4trace:configure.in:922: -1- m4_pattern_allow([^clock_t$])
-m4trace:configure.in:923: -1- AC_DEFINE_TRACE_LITERAL([sigset_t])
-m4trace:configure.in:923: -1- m4_pattern_allow([^sigset_t$])
-m4trace:configure.in:924: -1- AC_DEFINE_TRACE_LITERAL([HAVE_QUAD_T])
-m4trace:configure.in:924: -1- m4_pattern_allow([^HAVE_QUAD_T$])
-m4trace:configure.in:924: -1- AC_DEFINE_TRACE_LITERAL([quad_t])
-m4trace:configure.in:924: -1- m4_pattern_allow([^quad_t$])
-m4trace:configure.in:925: -1- AC_DEFINE_TRACE_LITERAL([intmax_t])
-m4trace:configure.in:925: -1- m4_pattern_allow([^intmax_t$])
-m4trace:configure.in:926: -1- AC_DEFINE_TRACE_LITERAL([uintmax_t])
-m4trace:configure.in:926: -1- m4_pattern_allow([^uintmax_t$])
-m4trace:configure.in:928: -1- AC_DEFINE_TRACE_LITERAL([HAVE_SOCKLEN_T])
-m4trace:configure.in:928: -1- m4_pattern_allow([^HAVE_SOCKLEN_T$])
-m4trace:configure.in:928: -1- AC_DEFINE_TRACE_LITERAL([socklen_t])
-m4trace:configure.in:928: -1- m4_pattern_allow([^socklen_t$])
-m4trace:configure.in:930: -1- _m4_warn([obsolete], [The macro `AC_TRY_COMPILE' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2615: AC_TRY_COMPILE is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-aclocal.m4:507: BASH_TYPE_RLIMIT is expanded from...
-configure.in:930: the top level])
-m4trace:configure.in:930: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2765: AC_TRY_RUN is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2591: _AC_COMPILE_IFELSE is expanded from...
-../../lib/autoconf/general.m4:2607: AC_COMPILE_IFELSE is expanded from...
-../../lib/autoconf/general.m4:2615: AC_TRY_COMPILE is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-aclocal.m4:507: BASH_TYPE_RLIMIT is expanded from...
-configure.in:930: the top level])
-m4trace:configure.in:930: -1- AC_DEFINE_TRACE_LITERAL([RLIMTYPE])
-m4trace:configure.in:930: -1- m4_pattern_allow([^RLIMTYPE$])
-m4trace:configure.in:930: -1- AC_DEFINE_TRACE_LITERAL([RLIMTYPE])
-m4trace:configure.in:930: -1- m4_pattern_allow([^RLIMTYPE$])
-m4trace:configure.in:932: -1- AC_DEFINE_TRACE_LITERAL([SIZEOF_INTMAX_T])
-m4trace:configure.in:932: -1- m4_pattern_allow([^SIZEOF_INTMAX_T$])
-m4trace:configure.in:932: -1- AH_OUTPUT([SIZEOF_INTMAX_T], [/* The size of `intmax_t\', as computed by sizeof. */
-@%:@undef SIZEOF_INTMAX_T])
-m4trace:configure.in:935: -2- AC_DEFINE_TRACE_LITERAL([TERMIOS_LDISC])
-m4trace:configure.in:935: -2- m4_pattern_allow([^TERMIOS_LDISC$])
-m4trace:configure.in:936: -2- AC_DEFINE_TRACE_LITERAL([TERMIO_LDISC])
-m4trace:configure.in:936: -2- m4_pattern_allow([^TERMIO_LDISC$])
-m4trace:configure.in:937: -1- _m4_warn([obsolete], [The macro `AC_TRY_COMPILE' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2615: AC_TRY_COMPILE is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-aclocal.m4:1042: BASH_STRUCT_DIRENT_D_INO is expanded from...
-configure.in:937: the top level])
-m4trace:configure.in:937: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STRUCT_DIRENT_D_INO])
-m4trace:configure.in:937: -1- m4_pattern_allow([^HAVE_STRUCT_DIRENT_D_INO$])
-m4trace:configure.in:938: -1- _m4_warn([obsolete], [The macro `AC_TRY_COMPILE' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2615: AC_TRY_COMPILE is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-aclocal.m4:1075: BASH_STRUCT_DIRENT_D_FILENO is expanded from...
-configure.in:938: the top level])
-m4trace:configure.in:938: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STRUCT_DIRENT_D_FILENO])
-m4trace:configure.in:938: -1- m4_pattern_allow([^HAVE_STRUCT_DIRENT_D_FILENO$])
-m4trace:configure.in:939: -1- _m4_warn([obsolete], [The macro `AC_TRY_COMPILE' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2615: AC_TRY_COMPILE is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-aclocal.m4:1108: BASH_STRUCT_DIRENT_D_NAMLEN is expanded from...
-configure.in:939: the top level])
-m4trace:configure.in:939: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STRUCT_DIRENT_D_NAMLEN])
-m4trace:configure.in:939: -1- m4_pattern_allow([^HAVE_STRUCT_DIRENT_D_NAMLEN$])
-m4trace:configure.in:940: -1- _m4_warn([obsolete], [The macro `AC_TRY_COMPILE' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2615: AC_TRY_COMPILE is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-aclocal.m4:1173: BASH_STRUCT_WINSIZE is expanded from...
-configure.in:940: the top level])
-m4trace:configure.in:940: -1- _m4_warn([obsolete], [The macro `AC_TRY_COMPILE' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2615: AC_TRY_COMPILE is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2591: _AC_COMPILE_IFELSE is expanded from...
-../../lib/autoconf/general.m4:2607: AC_COMPILE_IFELSE is expanded from...
-../../lib/autoconf/general.m4:2615: AC_TRY_COMPILE is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-aclocal.m4:1173: BASH_STRUCT_WINSIZE is expanded from...
-configure.in:940: the top level])
-m4trace:configure.in:940: -1- AC_DEFINE_TRACE_LITERAL([STRUCT_WINSIZE_IN_SYS_IOCTL])
-m4trace:configure.in:940: -1- m4_pattern_allow([^STRUCT_WINSIZE_IN_SYS_IOCTL$])
-m4trace:configure.in:940: -1- AC_DEFINE_TRACE_LITERAL([STRUCT_WINSIZE_IN_TERMIOS])
-m4trace:configure.in:940: -1- m4_pattern_allow([^STRUCT_WINSIZE_IN_TERMIOS$])
-m4trace:configure.in:941: -1- AC_DEFINE_TRACE_LITERAL([HAVE_TIMEVAL])
-m4trace:configure.in:941: -1- m4_pattern_allow([^HAVE_TIMEVAL$])
-m4trace:configure.in:942: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STRUCT_STAT_ST_BLOCKS])
-m4trace:configure.in:942: -1- m4_pattern_allow([^HAVE_STRUCT_STAT_ST_BLOCKS$])
-m4trace:configure.in:942: -1- AH_OUTPUT([HAVE_STRUCT_STAT_ST_BLOCKS], [/* Define to 1 if `st_blocks\' is a member of `struct stat\'. */
-@%:@undef HAVE_STRUCT_STAT_ST_BLOCKS])
-m4trace:configure.in:943: -1- AC_DEFINE_TRACE_LITERAL([TM_IN_SYS_TIME])
-m4trace:configure.in:943: -1- m4_pattern_allow([^TM_IN_SYS_TIME$])
-m4trace:configure.in:943: -1- AH_OUTPUT([TM_IN_SYS_TIME], [/* Define to 1 if your <sys/time.h> declares `struct tm\'. */
-@%:@undef TM_IN_SYS_TIME])
-m4trace:configure.in:944: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STRUCT_TM_TM_ZONE])
-m4trace:configure.in:944: -1- m4_pattern_allow([^HAVE_STRUCT_TM_TM_ZONE$])
-m4trace:configure.in:944: -1- AH_OUTPUT([HAVE_STRUCT_TM_TM_ZONE], [/* Define to 1 if `tm_zone\' is a member of `struct tm\'. */
-@%:@undef HAVE_STRUCT_TM_TM_ZONE])
-m4trace:configure.in:944: -1- AC_DEFINE_TRACE_LITERAL([HAVE_TM_ZONE])
-m4trace:configure.in:944: -1- m4_pattern_allow([^HAVE_TM_ZONE$])
-m4trace:configure.in:944: -1- AH_OUTPUT([HAVE_TM_ZONE], [/* Define to 1 if your `struct tm\' has `tm_zone\'. Deprecated, use
-   `HAVE_STRUCT_TM_TM_ZONE\' instead. */
-@%:@undef HAVE_TM_ZONE])
-m4trace:configure.in:944: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DECL_TZNAME])
-m4trace:configure.in:944: -1- m4_pattern_allow([^HAVE_DECL_TZNAME$])
-m4trace:configure.in:944: -1- AH_OUTPUT([HAVE_DECL_TZNAME], [/* Define to 1 if you have the declaration of `tzname\', and to 0 if you don\'t.
-   */
-@%:@undef HAVE_DECL_TZNAME])
-m4trace:configure.in:944: -1- AC_DEFINE_TRACE_LITERAL([HAVE_TZNAME])
-m4trace:configure.in:944: -1- m4_pattern_allow([^HAVE_TZNAME$])
-m4trace:configure.in:944: -1- AH_OUTPUT([HAVE_TZNAME], [/* Define to 1 if you don\'t have `tm_zone\' but do have the external array
-   `tzname\'. */
-@%:@undef HAVE_TZNAME])
-m4trace:configure.in:945: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STRUCT_TIMEZONE])
-m4trace:configure.in:945: -1- m4_pattern_allow([^HAVE_STRUCT_TIMEZONE$])
-m4trace:configure.in:947: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2765: AC_TRY_RUN is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-aclocal.m4:4149: BASH_STRUCT_WEXITSTATUS_OFFSET is expanded from...
-configure.in:947: the top level])
-m4trace:configure.in:947: -1- AC_DEFINE_TRACE_LITERAL([WEXITSTATUS_OFFSET])
-m4trace:configure.in:947: -1- m4_pattern_allow([^WEXITSTATUS_OFFSET$])
-m4trace:configure.in:947: -1- AH_OUTPUT([WEXITSTATUS_OFFSET], [/* Offset of exit status in wait status word */
-@%:@undef WEXITSTATUS_OFFSET])
-m4trace:configure.in:949: -1- AH_OUTPUT([HAVE_SYS_TIME_H], [/* Define to 1 if you have the <sys/time.h> header file. */
-@%:@undef HAVE_SYS_TIME_H])
-m4trace:configure.in:949: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STRUCT_TIMESPEC])
-m4trace:configure.in:949: -1- m4_pattern_allow([^HAVE_STRUCT_TIMESPEC$])
-m4trace:configure.in:949: -1- AC_DEFINE_TRACE_LITERAL([TIME_H_DEFINES_STRUCT_TIMESPEC])
-m4trace:configure.in:949: -1- m4_pattern_allow([^TIME_H_DEFINES_STRUCT_TIMESPEC$])
-m4trace:configure.in:949: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STRUCT_TIMESPEC])
-m4trace:configure.in:949: -1- m4_pattern_allow([^HAVE_STRUCT_TIMESPEC$])
-m4trace:configure.in:949: -1- AC_DEFINE_TRACE_LITERAL([SYS_TIME_H_DEFINES_STRUCT_TIMESPEC])
-m4trace:configure.in:949: -1- m4_pattern_allow([^SYS_TIME_H_DEFINES_STRUCT_TIMESPEC$])
-m4trace:configure.in:949: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STRUCT_TIMESPEC])
-m4trace:configure.in:949: -1- m4_pattern_allow([^HAVE_STRUCT_TIMESPEC$])
-m4trace:configure.in:949: -1- AC_DEFINE_TRACE_LITERAL([PTHREAD_H_DEFINES_STRUCT_TIMESPEC])
-m4trace:configure.in:949: -1- m4_pattern_allow([^PTHREAD_H_DEFINES_STRUCT_TIMESPEC$])
-m4trace:configure.in:949: -1- AC_SUBST([TIME_H_DEFINES_STRUCT_TIMESPEC])
-m4trace:configure.in:949: -1- AC_SUBST_TRACE([TIME_H_DEFINES_STRUCT_TIMESPEC])
-m4trace:configure.in:949: -1- m4_pattern_allow([^TIME_H_DEFINES_STRUCT_TIMESPEC$])
-m4trace:configure.in:949: -1- AC_SUBST([SYS_TIME_H_DEFINES_STRUCT_TIMESPEC])
-m4trace:configure.in:949: -1- AC_SUBST_TRACE([SYS_TIME_H_DEFINES_STRUCT_TIMESPEC])
-m4trace:configure.in:949: -1- m4_pattern_allow([^SYS_TIME_H_DEFINES_STRUCT_TIMESPEC$])
-m4trace:configure.in:949: -1- AC_SUBST([PTHREAD_H_DEFINES_STRUCT_TIMESPEC])
-m4trace:configure.in:949: -1- AC_SUBST_TRACE([PTHREAD_H_DEFINES_STRUCT_TIMESPEC])
-m4trace:configure.in:949: -1- m4_pattern_allow([^PTHREAD_H_DEFINES_STRUCT_TIMESPEC$])
-m4trace:configure.in:950: -1- AH_OUTPUT([HAVE_SYS_TIME_H], [/* Define to 1 if you have the <sys/time.h> header file. */
-@%:@undef HAVE_SYS_TIME_H])
-m4trace:configure.in:950: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STRUCT_STAT_ST_ATIM_TV_NSEC])
-m4trace:configure.in:950: -1- m4_pattern_allow([^HAVE_STRUCT_STAT_ST_ATIM_TV_NSEC$])
-m4trace:configure.in:950: -1- AH_OUTPUT([HAVE_STRUCT_STAT_ST_ATIM_TV_NSEC], [/* Define to 1 if `st_atim.tv_nsec\' is a member of `struct stat\'. */
-@%:@undef HAVE_STRUCT_STAT_ST_ATIM_TV_NSEC])
-m4trace:configure.in:950: -1- AC_DEFINE_TRACE_LITERAL([TYPEOF_STRUCT_STAT_ST_ATIM_IS_STRUCT_TIMESPEC])
-m4trace:configure.in:950: -1- m4_pattern_allow([^TYPEOF_STRUCT_STAT_ST_ATIM_IS_STRUCT_TIMESPEC$])
-m4trace:configure.in:950: -1- AH_OUTPUT([TYPEOF_STRUCT_STAT_ST_ATIM_IS_STRUCT_TIMESPEC], [/* Define to 1 if the type of the st_atim member of a struct stat is struct
-   timespec. */
-@%:@undef TYPEOF_STRUCT_STAT_ST_ATIM_IS_STRUCT_TIMESPEC])
-m4trace:configure.in:950: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STRUCT_STAT_ST_ATIMESPEC_TV_NSEC])
-m4trace:configure.in:950: -1- m4_pattern_allow([^HAVE_STRUCT_STAT_ST_ATIMESPEC_TV_NSEC$])
-m4trace:configure.in:950: -1- AH_OUTPUT([HAVE_STRUCT_STAT_ST_ATIMESPEC_TV_NSEC], [/* Define to 1 if `st_atimespec.tv_nsec\' is a member of `struct stat\'. */
-@%:@undef HAVE_STRUCT_STAT_ST_ATIMESPEC_TV_NSEC])
-m4trace:configure.in:950: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STRUCT_STAT_ST_ATIMENSEC])
-m4trace:configure.in:950: -1- m4_pattern_allow([^HAVE_STRUCT_STAT_ST_ATIMENSEC$])
-m4trace:configure.in:950: -1- AH_OUTPUT([HAVE_STRUCT_STAT_ST_ATIMENSEC], [/* Define to 1 if `st_atimensec\' is a member of `struct stat\'. */
-@%:@undef HAVE_STRUCT_STAT_ST_ATIMENSEC])
-m4trace:configure.in:950: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STRUCT_STAT_ST_ATIM_ST__TIM_TV_NSEC])
-m4trace:configure.in:950: -1- m4_pattern_allow([^HAVE_STRUCT_STAT_ST_ATIM_ST__TIM_TV_NSEC$])
-m4trace:configure.in:950: -1- AH_OUTPUT([HAVE_STRUCT_STAT_ST_ATIM_ST__TIM_TV_NSEC], [/* Define to 1 if `st_atim.st__tim.tv_nsec\' is a member of `struct stat\'. */
-@%:@undef HAVE_STRUCT_STAT_ST_ATIM_ST__TIM_TV_NSEC])
-m4trace:configure.in:953: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2688: AC_TRY_LINK is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-aclocal.m4:299: BASH_FUNC_STRSIGNAL is expanded from...
-configure.in:953: the top level])
-m4trace:configure.in:953: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STRSIGNAL])
-m4trace:configure.in:953: -1- m4_pattern_allow([^HAVE_STRSIGNAL$])
-m4trace:configure.in:954: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2765: AC_TRY_RUN is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-aclocal.m4:313: BASH_FUNC_OPENDIR_CHECK is expanded from...
-configure.in:954: the top level])
-m4trace:configure.in:954: -1- AC_DEFINE_TRACE_LITERAL([OPENDIR_NOT_ROBUST])
-m4trace:configure.in:954: -1- m4_pattern_allow([^OPENDIR_NOT_ROBUST$])
-m4trace:configure.in:955: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2765: AC_TRY_RUN is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-aclocal.m4:683: BASH_FUNC_ULIMIT_MAXFDS is expanded from...
-configure.in:955: the top level])
-m4trace:configure.in:955: -1- AC_DEFINE_TRACE_LITERAL([ULIMIT_MAXFDS])
-m4trace:configure.in:955: -1- m4_pattern_allow([^ULIMIT_MAXFDS$])
-m4trace:configure.in:956: -1- AH_OUTPUT([HAVE_FPURGE], [/* Define to 1 if you have the `fpurge\' function. */
-@%:@undef HAVE_FPURGE])
-m4trace:configure.in:956: -1- AH_OUTPUT([HAVE___FPURGE], [/* Define to 1 if you have the `__fpurge\' function. */
-@%:@undef HAVE___FPURGE])
-m4trace:configure.in:956: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DECL_FPURGE])
-m4trace:configure.in:956: -1- m4_pattern_allow([^HAVE_DECL_FPURGE$])
-m4trace:configure.in:956: -1- AH_OUTPUT([HAVE_DECL_FPURGE], [/* Define to 1 if you have the declaration of `fpurge\', and to 0 if you don\'t.
-   */
-@%:@undef HAVE_DECL_FPURGE])
-m4trace:configure.in:957: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2765: AC_TRY_RUN is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-aclocal.m4:579: BASH_FUNC_GETENV is expanded from...
-configure.in:957: the top level])
-m4trace:configure.in:957: -1- AC_DEFINE_TRACE_LITERAL([CAN_REDEFINE_GETENV])
-m4trace:configure.in:957: -1- m4_pattern_allow([^CAN_REDEFINE_GETENV$])
-m4trace:configure.in:959: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2765: AC_TRY_RUN is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-aclocal.m4:702: BASH_FUNC_GETCWD is expanded from...
-configure.in:959: the top level])
-m4trace:configure.in:959: -1- AC_DEFINE_TRACE_LITERAL([GETCWD_BROKEN])
-m4trace:configure.in:959: -1- m4_pattern_allow([^GETCWD_BROKEN$])
-m4trace:configure.in:959: -1- AC_SUBST([LIB@&t@OBJS], ["$LIB@&t@OBJS getcwd.$ac_objext"])
-m4trace:configure.in:959: -1- AC_SUBST_TRACE([LIB@&t@OBJS])
-m4trace:configure.in:959: -1- m4_pattern_allow([^LIB@&t@OBJS$])
-m4trace:configure.in:959: -1- AC_LIBSOURCE([getcwd.c])
-m4trace:configure.in:961: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2765: AC_TRY_RUN is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-aclocal.m4:778: BASH_FUNC_POSIX_SETJMP is expanded from...
-configure.in:961: the top level])
-m4trace:configure.in:961: -1- AC_DEFINE_TRACE_LITERAL([HAVE_POSIX_SIGSETJMP])
-m4trace:configure.in:961: -1- m4_pattern_allow([^HAVE_POSIX_SIGSETJMP$])
-m4trace:configure.in:962: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2765: AC_TRY_RUN is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-aclocal.m4:829: BASH_FUNC_STRCOLL is expanded from...
-configure.in:962: the top level])
-m4trace:configure.in:962: -1- AC_DEFINE_TRACE_LITERAL([STRCOLL_BROKEN])
-m4trace:configure.in:962: -1- m4_pattern_allow([^STRCOLL_BROKEN$])
-m4trace:configure.in:963: -1- AH_OUTPUT([HAVE_SNPRINTF], [/* Define to 1 if you have the `snprintf\' function. */
-@%:@undef HAVE_SNPRINTF])
-m4trace:configure.in:963: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2765: AC_TRY_RUN is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-../../lib/autoconf/general.m4:2053: AC_CACHE_CHECK is expanded from...
-aclocal.m4:4065: BASH_FUNC_SNPRINTF is expanded from...
-configure.in:963: the top level])
-m4trace:configure.in:963: -1- AC_DEFINE_TRACE_LITERAL([HAVE_SNPRINTF])
-m4trace:configure.in:963: -1- m4_pattern_allow([^HAVE_SNPRINTF$])
-m4trace:configure.in:963: -1- AH_OUTPUT([HAVE_SNPRINTF], [/* Define if you have a standard-conformant snprintf function. */
-@%:@undef HAVE_SNPRINTF])
-m4trace:configure.in:964: -1- AH_OUTPUT([HAVE_VSNPRINTF], [/* Define to 1 if you have the `vsnprintf\' function. */
-@%:@undef HAVE_VSNPRINTF])
-m4trace:configure.in:964: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2765: AC_TRY_RUN is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-../../lib/autoconf/general.m4:2053: AC_CACHE_CHECK is expanded from...
-aclocal.m4:4093: BASH_FUNC_VSNPRINTF is expanded from...
-configure.in:964: the top level])
-m4trace:configure.in:964: -1- AC_DEFINE_TRACE_LITERAL([HAVE_VSNPRINTF])
-m4trace:configure.in:964: -1- m4_pattern_allow([^HAVE_VSNPRINTF$])
-m4trace:configure.in:964: -1- AH_OUTPUT([HAVE_VSNPRINTF], [/* Define if you have a standard-conformant vsnprintf function. */
-@%:@undef HAVE_VSNPRINTF])
-m4trace:configure.in:970: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2688: AC_TRY_LINK is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-../../lib/autoconf/general.m4:2053: AC_CACHE_CHECK is expanded from...
-aclocal.m4:624: BASH_FUNC_STD_PUTENV is expanded from...
-configure.in:970: the top level])
-m4trace:configure.in:970: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STD_PUTENV])
-m4trace:configure.in:970: -1- m4_pattern_allow([^HAVE_STD_PUTENV$])
-m4trace:configure.in:972: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STD_PUTENV])
-m4trace:configure.in:972: -1- m4_pattern_allow([^HAVE_STD_PUTENV$])
-m4trace:configure.in:975: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2688: AC_TRY_LINK is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-../../lib/autoconf/general.m4:2053: AC_CACHE_CHECK is expanded from...
-aclocal.m4:654: BASH_FUNC_STD_UNSETENV is expanded from...
-configure.in:975: the top level])
-m4trace:configure.in:975: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STD_UNSETENV])
-m4trace:configure.in:975: -1- m4_pattern_allow([^HAVE_STD_UNSETENV$])
-m4trace:configure.in:977: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STD_UNSETENV])
-m4trace:configure.in:977: -1- m4_pattern_allow([^HAVE_STD_UNSETENV$])
-m4trace:configure.in:980: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2765: AC_TRY_RUN is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-aclocal.m4:878: BASH_FUNC_PRINTF_A_FORMAT is expanded from...
-configure.in:980: the top level])
-m4trace:configure.in:980: -1- AC_DEFINE_TRACE_LITERAL([HAVE_PRINTF_A_FORMAT])
-m4trace:configure.in:980: -1- m4_pattern_allow([^HAVE_PRINTF_A_FORMAT$])
-m4trace:configure.in:983: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2765: AC_TRY_RUN is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-aclocal.m4:1297: BASH_SYS_REINSTALL_SIGHANDLERS is expanded from...
-configure.in:983: the top level])
-m4trace:configure.in:983: -1- AC_DEFINE_TRACE_LITERAL([MUST_REINSTALL_SIGHANDLERS])
-m4trace:configure.in:983: -1- m4_pattern_allow([^MUST_REINSTALL_SIGHANDLERS$])
-m4trace:configure.in:984: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2765: AC_TRY_RUN is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-aclocal.m4:1356: BASH_SYS_JOB_CONTROL_MISSING is expanded from...
-configure.in:984: the top level])
-m4trace:configure.in:984: -1- AC_DEFINE_TRACE_LITERAL([JOB_CONTROL_MISSING])
-m4trace:configure.in:984: -1- m4_pattern_allow([^JOB_CONTROL_MISSING$])
-m4trace:configure.in:985: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2765: AC_TRY_RUN is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-aclocal.m4:1415: BASH_SYS_NAMED_PIPES is expanded from...
-configure.in:985: the top level])
-m4trace:configure.in:985: -1- AC_DEFINE_TRACE_LITERAL([NAMED_PIPES_MISSING])
-m4trace:configure.in:985: -1- m4_pattern_allow([^NAMED_PIPES_MISSING$])
-m4trace:configure.in:988: -1- AC_DEFINE_TRACE_LITERAL([GWINSZ_IN_SYS_IOCTL])
-m4trace:configure.in:988: -1- m4_pattern_allow([^GWINSZ_IN_SYS_IOCTL$])
-m4trace:configure.in:988: -1- AH_OUTPUT([GWINSZ_IN_SYS_IOCTL], [/* Define to 1 if `TIOCGWINSZ\' requires <sys/ioctl.h>. */
-@%:@undef GWINSZ_IN_SYS_IOCTL])
-m4trace:configure.in:989: -1- _m4_warn([obsolete], [The macro `AC_TRY_COMPILE' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2615: AC_TRY_COMPILE is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-aclocal.m4:1496: BASH_HAVE_TIOCSTAT is expanded from...
-configure.in:989: the top level])
-m4trace:configure.in:989: -1- AC_DEFINE_TRACE_LITERAL([TIOCSTAT_IN_SYS_IOCTL])
-m4trace:configure.in:989: -1- m4_pattern_allow([^TIOCSTAT_IN_SYS_IOCTL$])
-m4trace:configure.in:990: -1- _m4_warn([obsolete], [The macro `AC_TRY_COMPILE' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2615: AC_TRY_COMPILE is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-aclocal.m4:1508: BASH_HAVE_FIONREAD is expanded from...
-configure.in:990: the top level])
-m4trace:configure.in:990: -1- AC_DEFINE_TRACE_LITERAL([FIONREAD_IN_SYS_IOCTL])
-m4trace:configure.in:990: -1- m4_pattern_allow([^FIONREAD_IN_SYS_IOCTL$])
-m4trace:configure.in:992: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2765: AC_TRY_RUN is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-aclocal.m4:1964: BASH_CHECK_WCONTINUED is expanded from...
-configure.in:992: the top level])
-m4trace:configure.in:992: -1- AC_DEFINE_TRACE_LITERAL([WCONTINUED_BROKEN])
-m4trace:configure.in:992: -1- m4_pattern_allow([^WCONTINUED_BROKEN$])
-m4trace:configure.in:995: -1- _m4_warn([obsolete], [The macro `AC_TRY_COMPILE' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2615: AC_TRY_COMPILE is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-aclocal.m4:1526: BASH_CHECK_SPEED_T is expanded from...
-configure.in:995: the top level])
-m4trace:configure.in:995: -1- AC_DEFINE_TRACE_LITERAL([SPEED_T_IN_SYS_TYPES])
-m4trace:configure.in:995: -1- m4_pattern_allow([^SPEED_T_IN_SYS_TYPES$])
-m4trace:configure.in:996: -1- AC_DEFINE_TRACE_LITERAL([HAVE_GETPW_DECLS])
-m4trace:configure.in:996: -1- m4_pattern_allow([^HAVE_GETPW_DECLS$])
-m4trace:configure.in:997: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2765: AC_TRY_RUN is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-aclocal.m4:1653: BASH_CHECK_RTSIGS is expanded from...
-configure.in:997: the top level])
-m4trace:configure.in:997: -1- AC_DEFINE_TRACE_LITERAL([UNUSABLE_RT_SIGNALS])
-m4trace:configure.in:997: -1- m4_pattern_allow([^UNUSABLE_RT_SIGNALS$])
-m4trace:configure.in:998: -1- AC_SUBST([SIGLIST_O])
-m4trace:configure.in:998: -1- AC_SUBST_TRACE([SIGLIST_O])
-m4trace:configure.in:998: -1- m4_pattern_allow([^SIGLIST_O$])
-m4trace:configure.in:1002: -1- _m4_warn([obsolete], [The macro `AC_TRY_COMPILE' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2615: AC_TRY_COMPILE is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-aclocal.m4:1605: BASH_CHECK_KERNEL_RLIMIT is expanded from...
-configure.in:1002: the top level])
-m4trace:configure.in:1002: -1- _m4_warn([obsolete], [The macro `AC_TRY_COMPILE' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2615: AC_TRY_COMPILE is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2591: _AC_COMPILE_IFELSE is expanded from...
-../../lib/autoconf/general.m4:2607: AC_COMPILE_IFELSE is expanded from...
-../../lib/autoconf/general.m4:2615: AC_TRY_COMPILE is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-aclocal.m4:1605: BASH_CHECK_KERNEL_RLIMIT is expanded from...
-configure.in:1002: the top level])
-m4trace:configure.in:1002: -1- AC_DEFINE_TRACE_LITERAL([RLIMIT_NEEDS_KERNEL])
-m4trace:configure.in:1002: -1- m4_pattern_allow([^RLIMIT_NEEDS_KERNEL$])
-m4trace:configure.in:1012: -1- AC_SUBST([TERMCAP_LIB])
-m4trace:configure.in:1012: -1- AC_SUBST_TRACE([TERMCAP_LIB])
-m4trace:configure.in:1012: -1- m4_pattern_allow([^TERMCAP_LIB$])
-m4trace:configure.in:1013: -1- AC_SUBST([TERMCAP_DEP])
-m4trace:configure.in:1013: -1- AC_SUBST_TRACE([TERMCAP_DEP])
-m4trace:configure.in:1013: -1- m4_pattern_allow([^TERMCAP_DEP$])
-m4trace:configure.in:1015: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DEV_FD])
-m4trace:configure.in:1015: -1- m4_pattern_allow([^HAVE_DEV_FD$])
-m4trace:configure.in:1015: -1- AC_DEFINE_TRACE_LITERAL([DEV_FD_PREFIX])
-m4trace:configure.in:1015: -1- m4_pattern_allow([^DEV_FD_PREFIX$])
-m4trace:configure.in:1015: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DEV_FD])
-m4trace:configure.in:1015: -1- m4_pattern_allow([^HAVE_DEV_FD$])
-m4trace:configure.in:1015: -1- AC_DEFINE_TRACE_LITERAL([DEV_FD_PREFIX])
-m4trace:configure.in:1015: -1- m4_pattern_allow([^DEV_FD_PREFIX$])
-m4trace:configure.in:1016: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DEV_STDIN])
-m4trace:configure.in:1016: -1- m4_pattern_allow([^HAVE_DEV_STDIN$])
-m4trace:configure.in:1017: -1- AC_DEFINE_TRACE_LITERAL([DEFAULT_MAIL_DIRECTORY])
-m4trace:configure.in:1017: -1- m4_pattern_allow([^DEFAULT_MAIL_DIRECTORY$])
-m4trace:configure.in:1024: -1- AC_DEFINE_TRACE_LITERAL([JOB_CONTROL])
-m4trace:configure.in:1024: -1- m4_pattern_allow([^JOB_CONTROL$])
-m4trace:configure.in:1030: -1- AC_SUBST([JOBS_O])
-m4trace:configure.in:1030: -1- AC_SUBST_TRACE([JOBS_O])
-m4trace:configure.in:1030: -1- m4_pattern_allow([^JOBS_O$])
-m4trace:configure.in:1043: -1- AC_DEFINE_TRACE_LITERAL([SVR4_2])
-m4trace:configure.in:1043: -1- m4_pattern_allow([^SVR4_2$])
-m4trace:configure.in:1044: -1- AC_DEFINE_TRACE_LITERAL([SVR4])
-m4trace:configure.in:1044: -1- m4_pattern_allow([^SVR4$])
-m4trace:configure.in:1045: -1- AC_DEFINE_TRACE_LITERAL([SVR4])
-m4trace:configure.in:1045: -1- m4_pattern_allow([^SVR4$])
-m4trace:configure.in:1046: -1- AC_DEFINE_TRACE_LITERAL([SVR5])
-m4trace:configure.in:1046: -1- m4_pattern_allow([^SVR5$])
-m4trace:configure.in:1065: -1- AC_DEFINE_TRACE_LITERAL([PGRP_PIPE])
-m4trace:configure.in:1065: -1- m4_pattern_allow([^PGRP_PIPE$])
-m4trace:configure.in:1112: -1- AC_SUBST([SHOBJ_CC])
-m4trace:configure.in:1112: -1- AC_SUBST_TRACE([SHOBJ_CC])
-m4trace:configure.in:1112: -1- m4_pattern_allow([^SHOBJ_CC$])
-m4trace:configure.in:1113: -1- AC_SUBST([SHOBJ_CFLAGS])
-m4trace:configure.in:1113: -1- AC_SUBST_TRACE([SHOBJ_CFLAGS])
-m4trace:configure.in:1113: -1- m4_pattern_allow([^SHOBJ_CFLAGS$])
-m4trace:configure.in:1114: -1- AC_SUBST([SHOBJ_LD])
-m4trace:configure.in:1114: -1- AC_SUBST_TRACE([SHOBJ_LD])
-m4trace:configure.in:1114: -1- m4_pattern_allow([^SHOBJ_LD$])
-m4trace:configure.in:1115: -1- AC_SUBST([SHOBJ_LDFLAGS])
-m4trace:configure.in:1115: -1- AC_SUBST_TRACE([SHOBJ_LDFLAGS])
-m4trace:configure.in:1115: -1- m4_pattern_allow([^SHOBJ_LDFLAGS$])
-m4trace:configure.in:1116: -1- AC_SUBST([SHOBJ_XLDFLAGS])
-m4trace:configure.in:1116: -1- AC_SUBST_TRACE([SHOBJ_XLDFLAGS])
-m4trace:configure.in:1116: -1- m4_pattern_allow([^SHOBJ_XLDFLAGS$])
-m4trace:configure.in:1117: -1- AC_SUBST([SHOBJ_LIBS])
-m4trace:configure.in:1117: -1- AC_SUBST_TRACE([SHOBJ_LIBS])
-m4trace:configure.in:1117: -1- m4_pattern_allow([^SHOBJ_LIBS$])
-m4trace:configure.in:1118: -1- AC_SUBST([SHOBJ_STATUS])
-m4trace:configure.in:1118: -1- AC_SUBST_TRACE([SHOBJ_STATUS])
-m4trace:configure.in:1118: -1- m4_pattern_allow([^SHOBJ_STATUS$])
-m4trace:configure.in:1150: -1- AC_SUBST([PROFILE_FLAGS])
-m4trace:configure.in:1150: -1- AC_SUBST_TRACE([PROFILE_FLAGS])
-m4trace:configure.in:1150: -1- m4_pattern_allow([^PROFILE_FLAGS$])
-m4trace:configure.in:1152: -1- AC_SUBST([incdir])
-m4trace:configure.in:1152: -1- AC_SUBST_TRACE([incdir])
-m4trace:configure.in:1152: -1- m4_pattern_allow([^incdir$])
-m4trace:configure.in:1153: -1- AC_SUBST([BUILD_DIR])
-m4trace:configure.in:1153: -1- AC_SUBST_TRACE([BUILD_DIR])
-m4trace:configure.in:1153: -1- m4_pattern_allow([^BUILD_DIR$])
-m4trace:configure.in:1156: -1- AC_SUBST([datarootdir])
-m4trace:configure.in:1156: -1- AC_SUBST_TRACE([datarootdir])
-m4trace:configure.in:1156: -1- m4_pattern_allow([^datarootdir$])
-m4trace:configure.in:1157: -1- AC_SUBST([localedir])
-m4trace:configure.in:1157: -1- AC_SUBST_TRACE([localedir])
-m4trace:configure.in:1157: -1- m4_pattern_allow([^localedir$])
-m4trace:configure.in:1159: -1- AC_SUBST([YACC])
-m4trace:configure.in:1159: -1- AC_SUBST_TRACE([YACC])
-m4trace:configure.in:1159: -1- m4_pattern_allow([^YACC$])
-m4trace:configure.in:1160: -1- AC_SUBST([AR])
-m4trace:configure.in:1160: -1- AC_SUBST_TRACE([AR])
-m4trace:configure.in:1160: -1- m4_pattern_allow([^AR$])
-m4trace:configure.in:1161: -1- AC_SUBST([ARFLAGS])
-m4trace:configure.in:1161: -1- AC_SUBST_TRACE([ARFLAGS])
-m4trace:configure.in:1161: -1- m4_pattern_allow([^ARFLAGS$])
-m4trace:configure.in:1163: -1- AC_SUBST([BASHVERS])
-m4trace:configure.in:1163: -1- AC_SUBST_TRACE([BASHVERS])
-m4trace:configure.in:1163: -1- m4_pattern_allow([^BASHVERS$])
-m4trace:configure.in:1164: -1- AC_SUBST([RELSTATUS])
-m4trace:configure.in:1164: -1- AC_SUBST_TRACE([RELSTATUS])
-m4trace:configure.in:1164: -1- m4_pattern_allow([^RELSTATUS$])
-m4trace:configure.in:1165: -1- AC_SUBST([DEBUG])
-m4trace:configure.in:1165: -1- AC_SUBST_TRACE([DEBUG])
-m4trace:configure.in:1165: -1- m4_pattern_allow([^DEBUG$])
-m4trace:configure.in:1166: -1- AC_SUBST([MALLOC_DEBUG])
-m4trace:configure.in:1166: -1- AC_SUBST_TRACE([MALLOC_DEBUG])
-m4trace:configure.in:1166: -1- m4_pattern_allow([^MALLOC_DEBUG$])
-m4trace:configure.in:1168: -1- AC_SUBST([host_cpu])
-m4trace:configure.in:1168: -1- AC_SUBST_TRACE([host_cpu])
-m4trace:configure.in:1168: -1- m4_pattern_allow([^host_cpu$])
-m4trace:configure.in:1169: -1- AC_SUBST([host_vendor])
-m4trace:configure.in:1169: -1- AC_SUBST_TRACE([host_vendor])
-m4trace:configure.in:1169: -1- m4_pattern_allow([^host_vendor$])
-m4trace:configure.in:1170: -1- AC_SUBST([host_os])
-m4trace:configure.in:1170: -1- AC_SUBST_TRACE([host_os])
-m4trace:configure.in:1170: -1- m4_pattern_allow([^host_os$])
-m4trace:configure.in:1172: -1- AC_SUBST([LOCAL_LIBS])
-m4trace:configure.in:1172: -1- AC_SUBST_TRACE([LOCAL_LIBS])
-m4trace:configure.in:1172: -1- m4_pattern_allow([^LOCAL_LIBS$])
-m4trace:configure.in:1173: -1- AC_SUBST([LOCAL_CFLAGS])
-m4trace:configure.in:1173: -1- AC_SUBST_TRACE([LOCAL_CFLAGS])
-m4trace:configure.in:1173: -1- m4_pattern_allow([^LOCAL_CFLAGS$])
-m4trace:configure.in:1174: -1- AC_SUBST([LOCAL_LDFLAGS])
-m4trace:configure.in:1174: -1- AC_SUBST_TRACE([LOCAL_LDFLAGS])
-m4trace:configure.in:1174: -1- m4_pattern_allow([^LOCAL_LDFLAGS$])
-m4trace:configure.in:1175: -1- AC_SUBST([LOCAL_DEFS])
-m4trace:configure.in:1175: -1- AC_SUBST_TRACE([LOCAL_DEFS])
-m4trace:configure.in:1175: -1- m4_pattern_allow([^LOCAL_DEFS$])
-m4trace:configure.in:1180: -1- AC_CONFIG_FILES([Makefile builtins/Makefile lib/readline/Makefile lib/glob/Makefile \
-         lib/intl/Makefile \
-         lib/malloc/Makefile lib/sh/Makefile lib/termcap/Makefile \
-         lib/tilde/Makefile doc/Makefile support/Makefile po/Makefile.in \
-         examples/loadables/Makefile examples/loadables/perl/Makefile])
-m4trace:configure.in:1180: -1- _m4_warn([obsolete], [AC_OUTPUT should be used without arguments.
-You should run autoupdate.], [])
-m4trace:configure.in:1180: -1- AC_SUBST([LIB@&t@OBJS], [$ac_libobjs])
-m4trace:configure.in:1180: -1- AC_SUBST_TRACE([LIB@&t@OBJS])
-m4trace:configure.in:1180: -1- m4_pattern_allow([^LIB@&t@OBJS$])
-m4trace:configure.in:1180: -1- AC_SUBST([LTLIBOBJS], [$ac_ltlibobjs])
-m4trace:configure.in:1180: -1- AC_SUBST_TRACE([LTLIBOBJS])
-m4trace:configure.in:1180: -1- m4_pattern_allow([^LTLIBOBJS$])
-m4trace:configure.in:1180: -1- AC_SUBST_TRACE([top_builddir])
-m4trace:configure.in:1180: -1- AC_SUBST_TRACE([top_build_prefix])
-m4trace:configure.in:1180: -1- AC_SUBST_TRACE([srcdir])
-m4trace:configure.in:1180: -1- AC_SUBST_TRACE([abs_srcdir])
-m4trace:configure.in:1180: -1- AC_SUBST_TRACE([top_srcdir])
-m4trace:configure.in:1180: -1- AC_SUBST_TRACE([abs_top_srcdir])
-m4trace:configure.in:1180: -1- AC_SUBST_TRACE([builddir])
-m4trace:configure.in:1180: -1- AC_SUBST_TRACE([abs_builddir])
-m4trace:configure.in:1180: -1- AC_SUBST_TRACE([abs_top_builddir])
-m4trace:configure.in:1180: -1- AC_SUBST_TRACE([INSTALL])
diff --git a/autom4te.cache/traces.2 b/autom4te.cache/traces.2
deleted file mode 100644 (file)
index 03eeb5d..0000000
+++ /dev/null
@@ -1,2068 +0,0 @@
-m4trace:configure.in:29: -1- AC_INIT([bash], [4.2-maint], [bug-bash@gnu.org])
-m4trace:configure.in:29: -1- m4_pattern_forbid([^_?A[CHUM]_])
-m4trace:configure.in:29: -1- m4_pattern_forbid([_AC_])
-m4trace:configure.in:29: -1- m4_pattern_forbid([^LIBOBJS$], [do not use LIBOBJS directly, use AC_LIBOBJ (see section `AC_LIBOBJ vs LIBOBJS'])
-m4trace:configure.in:29: -1- m4_pattern_allow([^AS_FLAGS$])
-m4trace:configure.in:29: -1- m4_pattern_forbid([^_?m4_])
-m4trace:configure.in:29: -1- m4_pattern_forbid([^dnl$])
-m4trace:configure.in:29: -1- m4_pattern_forbid([^_?AS_])
-m4trace:configure.in:29: -1- AC_SUBST([SHELL], [${CONFIG_SHELL-/bin/sh}])
-m4trace:configure.in:29: -1- AC_SUBST([PATH_SEPARATOR])
-m4trace:configure.in:29: -1- AC_SUBST([PACKAGE_NAME], [m4_ifdef([AC_PACKAGE_NAME],      ['AC_PACKAGE_NAME'])])
-m4trace:configure.in:29: -1- AC_SUBST([PACKAGE_TARNAME], [m4_ifdef([AC_PACKAGE_TARNAME],   ['AC_PACKAGE_TARNAME'])])
-m4trace:configure.in:29: -1- AC_SUBST([PACKAGE_VERSION], [m4_ifdef([AC_PACKAGE_VERSION],   ['AC_PACKAGE_VERSION'])])
-m4trace:configure.in:29: -1- AC_SUBST([PACKAGE_STRING], [m4_ifdef([AC_PACKAGE_STRING],    ['AC_PACKAGE_STRING'])])
-m4trace:configure.in:29: -1- AC_SUBST([PACKAGE_BUGREPORT], [m4_ifdef([AC_PACKAGE_BUGREPORT], ['AC_PACKAGE_BUGREPORT'])])
-m4trace:configure.in:29: -1- AC_SUBST([exec_prefix], [NONE])
-m4trace:configure.in:29: -1- AC_SUBST([prefix], [NONE])
-m4trace:configure.in:29: -1- AC_SUBST([program_transform_name], [s,x,x,])
-m4trace:configure.in:29: -1- AC_SUBST([bindir], ['${exec_prefix}/bin'])
-m4trace:configure.in:29: -1- AC_SUBST([sbindir], ['${exec_prefix}/sbin'])
-m4trace:configure.in:29: -1- AC_SUBST([libexecdir], ['${exec_prefix}/libexec'])
-m4trace:configure.in:29: -1- AC_SUBST([datadir], ['${prefix}/share'])
-m4trace:configure.in:29: -1- AC_SUBST([sysconfdir], ['${prefix}/etc'])
-m4trace:configure.in:29: -1- AC_SUBST([sharedstatedir], ['${prefix}/com'])
-m4trace:configure.in:29: -1- AC_SUBST([localstatedir], ['${prefix}/var'])
-m4trace:configure.in:29: -1- AC_SUBST([libdir], ['${exec_prefix}/lib'])
-m4trace:configure.in:29: -1- AC_SUBST([includedir], ['${prefix}/include'])
-m4trace:configure.in:29: -1- AC_SUBST([oldincludedir], ['/usr/include'])
-m4trace:configure.in:29: -1- AC_SUBST([infodir], ['${prefix}/info'])
-m4trace:configure.in:29: -1- AC_SUBST([mandir], ['${prefix}/man'])
-m4trace:configure.in:29: -1- AC_DEFINE_TRACE_LITERAL([PACKAGE_NAME])
-m4trace:configure.in:29: -1- AH_OUTPUT([PACKAGE_NAME], [/* Define to the full name of this package. */
-#undef PACKAGE_NAME])
-m4trace:configure.in:29: -1- AC_DEFINE_TRACE_LITERAL([PACKAGE_TARNAME])
-m4trace:configure.in:29: -1- AH_OUTPUT([PACKAGE_TARNAME], [/* Define to the one symbol short name of this package. */
-#undef PACKAGE_TARNAME])
-m4trace:configure.in:29: -1- AC_DEFINE_TRACE_LITERAL([PACKAGE_VERSION])
-m4trace:configure.in:29: -1- AH_OUTPUT([PACKAGE_VERSION], [/* Define to the version of this package. */
-#undef PACKAGE_VERSION])
-m4trace:configure.in:29: -1- AC_DEFINE_TRACE_LITERAL([PACKAGE_STRING])
-m4trace:configure.in:29: -1- AH_OUTPUT([PACKAGE_STRING], [/* Define to the full name and version of this package. */
-#undef PACKAGE_STRING])
-m4trace:configure.in:29: -1- AC_DEFINE_TRACE_LITERAL([PACKAGE_BUGREPORT])
-m4trace:configure.in:29: -1- AH_OUTPUT([PACKAGE_BUGREPORT], [/* Define to the address where bug reports for this package should be sent. */
-#undef PACKAGE_BUGREPORT])
-m4trace:configure.in:29: -1- AC_SUBST([build_alias])
-m4trace:configure.in:29: -1- AC_SUBST([host_alias])
-m4trace:configure.in:29: -1- AC_SUBST([target_alias])
-m4trace:configure.in:29: -1- AC_SUBST([DEFS])
-m4trace:configure.in:29: -1- AC_SUBST([ECHO_C])
-m4trace:configure.in:29: -1- AC_SUBST([ECHO_N])
-m4trace:configure.in:29: -1- AC_SUBST([ECHO_T])
-m4trace:configure.in:29: -1- AC_SUBST([LIBS])
-m4trace:configure.in:36: -1- AC_CONFIG_AUX_DIR([./support])
-m4trace:configure.in:37: -1- AC_CONFIG_HEADERS([config.h])
-m4trace:configure.in:51: -1- AC_CANONICAL_HOST
-m4trace:configure.in:51: -1- AC_SUBST([build], [$ac_cv_build])
-m4trace:configure.in:51: -1- AC_SUBST([build_cpu], [`echo $ac_cv_build | sed 's/^\([[^-]]*\)-\([[^-]]*\)-\(.*\)$/\1/'`])
-m4trace:configure.in:51: -1- AC_SUBST([build_vendor], [`echo $ac_cv_build | sed 's/^\([[^-]]*\)-\([[^-]]*\)-\(.*\)$/\2/'`])
-m4trace:configure.in:51: -1- AC_SUBST([build_os], [`echo $ac_cv_build | sed 's/^\([[^-]]*\)-\([[^-]]*\)-\(.*\)$/\3/'`])
-m4trace:configure.in:51: -1- AC_SUBST([host], [$ac_cv_host])
-m4trace:configure.in:51: -1- AC_SUBST([host_cpu], [`echo $ac_cv_host | sed 's/^\([[^-]]*\)-\([[^-]]*\)-\(.*\)$/\1/'`])
-m4trace:configure.in:51: -1- AC_SUBST([host_vendor], [`echo $ac_cv_host | sed 's/^\([[^-]]*\)-\([[^-]]*\)-\(.*\)$/\2/'`])
-m4trace:configure.in:51: -1- AC_SUBST([host_os], [`echo $ac_cv_host | sed 's/^\([[^-]]*\)-\([[^-]]*\)-\(.*\)$/\3/'`])
-m4trace:configure.in:103: -1- AC_SUBST([DEBUGGER_START_FILE])
-m4trace:configure.in:107: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [autoconf/general.m4:219: AC_HELP_STRING is expanded from...
-configure.in:107: the top level])
-m4trace:configure.in:108: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [autoconf/general.m4:219: AC_HELP_STRING is expanded from...
-configure.in:108: the top level])
-m4trace:configure.in:109: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [autoconf/general.m4:219: AC_HELP_STRING is expanded from...
-configure.in:109: the top level])
-m4trace:configure.in:110: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [autoconf/general.m4:219: AC_HELP_STRING is expanded from...
-configure.in:110: the top level])
-m4trace:configure.in:111: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [autoconf/general.m4:219: AC_HELP_STRING is expanded from...
-configure.in:111: the top level])
-m4trace:configure.in:112: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [autoconf/general.m4:219: AC_HELP_STRING is expanded from...
-configure.in:112: the top level])
-m4trace:configure.in:113: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [autoconf/general.m4:219: AC_HELP_STRING is expanded from...
-configure.in:113: the top level])
-m4trace:configure.in:124: -1- AC_DEFINE_TRACE_LITERAL([USING_BASH_MALLOC])
-m4trace:configure.in:134: -1- AC_DEFINE_TRACE_LITERAL([DISABLE_MALLOC_WRAPPERS])
-m4trace:configure.in:144: -1- AC_DEFINE_TRACE_LITERAL([AFS])
-m4trace:configure.in:196: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [autoconf/general.m4:219: AC_HELP_STRING is expanded from...
-configure.in:196: the top level])
-m4trace:configure.in:212: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [autoconf/general.m4:219: AC_HELP_STRING is expanded from...
-configure.in:212: the top level])
-m4trace:configure.in:213: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [autoconf/general.m4:219: AC_HELP_STRING is expanded from...
-configure.in:213: the top level])
-m4trace:configure.in:214: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [autoconf/general.m4:219: AC_HELP_STRING is expanded from...
-configure.in:214: the top level])
-m4trace:configure.in:215: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [autoconf/general.m4:219: AC_HELP_STRING is expanded from...
-configure.in:215: the top level])
-m4trace:configure.in:216: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [autoconf/general.m4:219: AC_HELP_STRING is expanded from...
-configure.in:216: the top level])
-m4trace:configure.in:217: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [autoconf/general.m4:219: AC_HELP_STRING is expanded from...
-configure.in:217: the top level])
-m4trace:configure.in:218: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [autoconf/general.m4:219: AC_HELP_STRING is expanded from...
-configure.in:218: the top level])
-m4trace:configure.in:219: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [autoconf/general.m4:219: AC_HELP_STRING is expanded from...
-configure.in:219: the top level])
-m4trace:configure.in:220: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [autoconf/general.m4:219: AC_HELP_STRING is expanded from...
-configure.in:220: the top level])
-m4trace:configure.in:221: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [autoconf/general.m4:219: AC_HELP_STRING is expanded from...
-configure.in:221: the top level])
-m4trace:configure.in:222: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [autoconf/general.m4:219: AC_HELP_STRING is expanded from...
-configure.in:222: the top level])
-m4trace:configure.in:223: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [autoconf/general.m4:219: AC_HELP_STRING is expanded from...
-configure.in:223: the top level])
-m4trace:configure.in:224: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [autoconf/general.m4:219: AC_HELP_STRING is expanded from...
-configure.in:224: the top level])
-m4trace:configure.in:225: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [autoconf/general.m4:219: AC_HELP_STRING is expanded from...
-configure.in:225: the top level])
-m4trace:configure.in:226: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [autoconf/general.m4:219: AC_HELP_STRING is expanded from...
-configure.in:226: the top level])
-m4trace:configure.in:227: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [autoconf/general.m4:219: AC_HELP_STRING is expanded from...
-configure.in:227: the top level])
-m4trace:configure.in:228: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [autoconf/general.m4:219: AC_HELP_STRING is expanded from...
-configure.in:228: the top level])
-m4trace:configure.in:229: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [autoconf/general.m4:219: AC_HELP_STRING is expanded from...
-configure.in:229: the top level])
-m4trace:configure.in:230: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [autoconf/general.m4:219: AC_HELP_STRING is expanded from...
-configure.in:230: the top level])
-m4trace:configure.in:231: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [autoconf/general.m4:219: AC_HELP_STRING is expanded from...
-configure.in:231: the top level])
-m4trace:configure.in:232: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [autoconf/general.m4:219: AC_HELP_STRING is expanded from...
-configure.in:232: the top level])
-m4trace:configure.in:233: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [autoconf/general.m4:219: AC_HELP_STRING is expanded from...
-configure.in:233: the top level])
-m4trace:configure.in:234: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [autoconf/general.m4:219: AC_HELP_STRING is expanded from...
-configure.in:234: the top level])
-m4trace:configure.in:235: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [autoconf/general.m4:219: AC_HELP_STRING is expanded from...
-configure.in:235: the top level])
-m4trace:configure.in:236: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [autoconf/general.m4:219: AC_HELP_STRING is expanded from...
-configure.in:236: the top level])
-m4trace:configure.in:237: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [autoconf/general.m4:219: AC_HELP_STRING is expanded from...
-configure.in:237: the top level])
-m4trace:configure.in:238: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [autoconf/general.m4:219: AC_HELP_STRING is expanded from...
-configure.in:238: the top level])
-m4trace:configure.in:239: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [autoconf/general.m4:219: AC_HELP_STRING is expanded from...
-configure.in:239: the top level])
-m4trace:configure.in:240: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [autoconf/general.m4:219: AC_HELP_STRING is expanded from...
-configure.in:240: the top level])
-m4trace:configure.in:241: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [autoconf/general.m4:219: AC_HELP_STRING is expanded from...
-configure.in:241: the top level])
-m4trace:configure.in:242: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [autoconf/general.m4:219: AC_HELP_STRING is expanded from...
-configure.in:242: the top level])
-m4trace:configure.in:243: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [autoconf/general.m4:219: AC_HELP_STRING is expanded from...
-configure.in:243: the top level])
-m4trace:configure.in:244: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [autoconf/general.m4:219: AC_HELP_STRING is expanded from...
-configure.in:244: the top level])
-m4trace:configure.in:247: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [autoconf/general.m4:219: AC_HELP_STRING is expanded from...
-configure.in:247: the top level])
-m4trace:configure.in:248: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [autoconf/general.m4:219: AC_HELP_STRING is expanded from...
-configure.in:248: the top level])
-m4trace:configure.in:249: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [autoconf/general.m4:219: AC_HELP_STRING is expanded from...
-configure.in:249: the top level])
-m4trace:configure.in:252: -1- AC_SUBST([CC_FOR_BUILD])
-m4trace:configure.in:253: -1- AC_SUBST([CFLAGS_FOR_BUILD])
-m4trace:configure.in:254: -1- AC_SUBST([LDFLAGS_FOR_BUILD])
-m4trace:configure.in:255: -1- AC_SUBST([CPPFLAGS_FOR_BUILD])
-m4trace:configure.in:264: -1- AC_DEFINE_TRACE_LITERAL([ALIAS])
-m4trace:configure.in:267: -1- AC_DEFINE_TRACE_LITERAL([PUSHD_AND_POPD])
-m4trace:configure.in:270: -1- AC_DEFINE_TRACE_LITERAL([RESTRICTED_SHELL])
-m4trace:configure.in:273: -1- AC_DEFINE_TRACE_LITERAL([PROCESS_SUBSTITUTION])
-m4trace:configure.in:276: -1- AC_DEFINE_TRACE_LITERAL([PROMPT_STRING_DECODE])
-m4trace:configure.in:279: -1- AC_DEFINE_TRACE_LITERAL([SELECT_COMMAND])
-m4trace:configure.in:282: -1- AC_DEFINE_TRACE_LITERAL([HELP_BUILTIN])
-m4trace:configure.in:285: -1- AC_DEFINE_TRACE_LITERAL([ARRAY_VARS])
-m4trace:configure.in:288: -1- AC_DEFINE_TRACE_LITERAL([DPAREN_ARITHMETIC])
-m4trace:configure.in:291: -1- AC_DEFINE_TRACE_LITERAL([BRACE_EXPANSION])
-m4trace:configure.in:294: -1- AC_DEFINE_TRACE_LITERAL([DISABLED_BUILTINS])
-m4trace:configure.in:297: -1- AC_DEFINE_TRACE_LITERAL([COMMAND_TIMING])
-m4trace:configure.in:300: -1- AC_DEFINE_TRACE_LITERAL([DEFAULT_ECHO_TO_XPG])
-m4trace:configure.in:303: -1- AC_DEFINE_TRACE_LITERAL([STRICT_POSIX])
-m4trace:configure.in:306: -1- AC_DEFINE_TRACE_LITERAL([EXTENDED_GLOB])
-m4trace:configure.in:309: -1- AC_DEFINE_TRACE_LITERAL([EXTGLOB_DEFAULT])
-m4trace:configure.in:311: -1- AC_DEFINE_TRACE_LITERAL([EXTGLOB_DEFAULT])
-m4trace:configure.in:314: -1- AC_DEFINE_TRACE_LITERAL([COND_COMMAND])
-m4trace:configure.in:317: -1- AC_DEFINE_TRACE_LITERAL([COND_REGEXP])
-m4trace:configure.in:320: -1- AC_DEFINE_TRACE_LITERAL([COPROCESS_SUPPORT])
-m4trace:configure.in:323: -1- AC_DEFINE_TRACE_LITERAL([ARITH_FOR_COMMAND])
-m4trace:configure.in:326: -1- AC_DEFINE_TRACE_LITERAL([NETWORK_REDIRECTIONS])
-m4trace:configure.in:329: -1- AC_DEFINE_TRACE_LITERAL([PROGRAMMABLE_COMPLETION])
-m4trace:configure.in:332: -1- AC_DEFINE_TRACE_LITERAL([NO_MULTIBYTE_SUPPORT])
-m4trace:configure.in:335: -1- AC_DEFINE_TRACE_LITERAL([DEBUGGER])
-m4trace:configure.in:338: -1- AC_DEFINE_TRACE_LITERAL([CASEMOD_ATTRS])
-m4trace:configure.in:341: -1- AC_DEFINE_TRACE_LITERAL([CASEMOD_EXPANSIONS])
-m4trace:configure.in:345: -1- AC_DEFINE_TRACE_LITERAL([MEMSCRAMBLE])
-m4trace:configure.in:371: -1- AC_SUBST([TESTSCRIPT])
-m4trace:configure.in:372: -1- AC_SUBST([PURIFY])
-m4trace:configure.in:373: -1- AC_SUBST([MALLOC_TARGET])
-m4trace:configure.in:374: -1- AC_SUBST([MALLOC_SRC])
-m4trace:configure.in:376: -1- AC_SUBST([MALLOC_LIB])
-m4trace:configure.in:377: -1- AC_SUBST([MALLOC_LIBRARY])
-m4trace:configure.in:378: -1- AC_SUBST([MALLOC_LDFLAGS])
-m4trace:configure.in:379: -1- AC_SUBST([MALLOC_DEP])
-m4trace:configure.in:381: -1- AC_SUBST([htmldir])
-m4trace:configure.in:383: -1- AC_SUBST([HELPDIR])
-m4trace:configure.in:384: -1- AC_SUBST([HELPDIRDEFINE])
-m4trace:configure.in:385: -1- AC_SUBST([HELPINSTALL])
-m4trace:configure.in:386: -1- AC_SUBST([HELPFILES_TARGET])
-m4trace:configure.in:387: -1- AC_SUBST([HELPSTRINGS])
-m4trace:configure.in:396: -1- AC_PROG_CC
-m4trace:configure.in:396: -1- AC_SUBST([CC])
-m4trace:configure.in:396: -1- AC_SUBST([CFLAGS])
-m4trace:configure.in:396: -1- AC_SUBST([LDFLAGS])
-m4trace:configure.in:396: -1- AC_SUBST([CPPFLAGS])
-m4trace:configure.in:396: -1- AC_SUBST([CC])
-m4trace:configure.in:396: -1- AC_SUBST([ac_ct_CC])
-m4trace:configure.in:396: -1- AC_SUBST([CC])
-m4trace:configure.in:396: -1- AC_SUBST([ac_ct_CC])
-m4trace:configure.in:396: -1- AC_SUBST([CC])
-m4trace:configure.in:396: -1- AC_SUBST([CC])
-m4trace:configure.in:396: -1- AC_SUBST([ac_ct_CC])
-m4trace:configure.in:396: -1- AC_SUBST([EXEEXT], [$ac_cv_exeext])
-m4trace:configure.in:396: -1- AC_SUBST([OBJEXT], [$ac_cv_objext])
-m4trace:configure.in:399: -1- AC_CHECK_LIB([cposix], [strerror], [LIBS="$LIBS -lcposix"])
-m4trace:configure.in:400: -1- AC_HEADER_STDC
-m4trace:configure.in:400: -1- AC_PROG_CPP
-m4trace:configure.in:400: -1- AC_SUBST([CPP])
-m4trace:configure.in:400: -1- AC_SUBST([CPPFLAGS])
-m4trace:configure.in:400: -1- AC_SUBST([CPP])
-m4trace:configure.in:400: -1- AC_SUBST([EGREP])
-m4trace:configure.in:400: -1- AC_DEFINE_TRACE_LITERAL([STDC_HEADERS])
-m4trace:configure.in:400: -1- AH_OUTPUT([STDC_HEADERS], [/* Define to 1 if you have the ANSI C header files. */
-#undef STDC_HEADERS])
-m4trace:configure.in:400: -1- AC_CHECK_HEADERS([sys/types.h sys/stat.h stdlib.h string.h memory.h strings.h \
-                 inttypes.h stdint.h unistd.h], [], [], [$ac_includes_default])
-m4trace:configure.in:400: -1- AH_OUTPUT([HAVE_SYS_TYPES_H], [/* Define to 1 if you have the <sys/types.h> header file. */
-#undef HAVE_SYS_TYPES_H])
-m4trace:configure.in:400: -1- AH_OUTPUT([HAVE_SYS_STAT_H], [/* Define to 1 if you have the <sys/stat.h> header file. */
-#undef HAVE_SYS_STAT_H])
-m4trace:configure.in:400: -1- AH_OUTPUT([HAVE_STDLIB_H], [/* Define to 1 if you have the <stdlib.h> header file. */
-#undef HAVE_STDLIB_H])
-m4trace:configure.in:400: -1- AH_OUTPUT([HAVE_STRING_H], [/* Define to 1 if you have the <string.h> header file. */
-#undef HAVE_STRING_H])
-m4trace:configure.in:400: -1- AH_OUTPUT([HAVE_MEMORY_H], [/* Define to 1 if you have the <memory.h> header file. */
-#undef HAVE_MEMORY_H])
-m4trace:configure.in:400: -1- AH_OUTPUT([HAVE_STRINGS_H], [/* Define to 1 if you have the <strings.h> header file. */
-#undef HAVE_STRINGS_H])
-m4trace:configure.in:400: -1- AH_OUTPUT([HAVE_INTTYPES_H], [/* Define to 1 if you have the <inttypes.h> header file. */
-#undef HAVE_INTTYPES_H])
-m4trace:configure.in:400: -1- AH_OUTPUT([HAVE_STDINT_H], [/* Define to 1 if you have the <stdint.h> header file. */
-#undef HAVE_STDINT_H])
-m4trace:configure.in:400: -1- AH_OUTPUT([HAVE_UNISTD_H], [/* Define to 1 if you have the <unistd.h> header file. */
-#undef HAVE_UNISTD_H])
-m4trace:configure.in:400: -1- AC_DEFINE_TRACE_LITERAL([_POSIX_SOURCE])
-m4trace:configure.in:400: -1- AH_OUTPUT([_POSIX_SOURCE], [/* Define to 1 if you need to in order for `stat\' and other things to work. */
-#undef _POSIX_SOURCE])
-m4trace:configure.in:400: -1- AC_DEFINE_TRACE_LITERAL([_POSIX_1_SOURCE])
-m4trace:configure.in:400: -1- AH_OUTPUT([_POSIX_1_SOURCE], [/* Define to 2 if the system does not provide POSIX.1 features except with
-   this defined. */
-#undef _POSIX_1_SOURCE])
-m4trace:configure.in:400: -1- AC_DEFINE_TRACE_LITERAL([_MINIX])
-m4trace:configure.in:400: -1- AH_OUTPUT([_MINIX], [/* Define to 1 if on MINIX. */
-#undef _MINIX])
-m4trace:configure.in:402: -1- AC_DEFINE_TRACE_LITERAL([_FILE_OFFSET_BITS])
-m4trace:configure.in:402: -1- AH_OUTPUT([_FILE_OFFSET_BITS], [/* Number of bits in a file offset, on hosts where this is settable. */
-#undef _FILE_OFFSET_BITS])
-m4trace:configure.in:402: -1- AC_DEFINE_TRACE_LITERAL([_LARGE_FILES])
-m4trace:configure.in:402: -1- AH_OUTPUT([_LARGE_FILES], [/* Define for large files, on AIX-style hosts. */
-#undef _LARGE_FILES])
-m4trace:configure.in:439: -1- AC_SUBST([CROSS_COMPILE])
-m4trace:configure.in:441: -1- AC_SUBST([SIGNAMES_H])
-m4trace:configure.in:442: -1- AC_SUBST([SIGNAMES_O])
-m4trace:configure.in:476: -1- _m4_warn([obsolete], [The macro `ac_cv_prog_gcc' is obsolete.
-You should run autoupdate.], [autoconf/c.m4:440: ac_cv_prog_gcc is expanded from...
-configure.in:476: the top level])
-m4trace:configure.in:503: -1- AC_SUBST([CFLAGS])
-m4trace:configure.in:504: -1- AC_SUBST([CPPFLAGS])
-m4trace:configure.in:505: -1- AC_SUBST([LDFLAGS])
-m4trace:configure.in:506: -1- AC_SUBST([STATIC_LD])
-m4trace:configure.in:508: -1- AC_SUBST([CC_FOR_BUILD])
-m4trace:configure.in:509: -1- AC_SUBST([CFLAGS_FOR_BUILD])
-m4trace:configure.in:510: -1- AC_SUBST([CPPFLAGS_FOR_BUILD])
-m4trace:configure.in:511: -1- AC_SUBST([LDFLAGS_FOR_BUILD])
-m4trace:configure.in:512: -1- AC_SUBST([LIBS_FOR_BUILD])
-m4trace:configure.in:514: -1- AC_PROG_GCC_TRADITIONAL
-m4trace:configure.in:526: -1- AC_CHECK_LIB([termcap], [tgetent], [bash_cv_termcap_lib=libtermcap], [AC_CHECK_LIB(tinfo, tgetent, bash_cv_termcap_lib=libtinfo,
-        [AC_CHECK_LIB(curses, tgetent, bash_cv_termcap_lib=libcurses,
-           [AC_CHECK_LIB(ncurses, tgetent, bash_cv_termcap_lib=libncurses,
-               bash_cv_termcap_lib=gnutermcap)])])])
-m4trace:configure.in:526: -1- AC_CHECK_LIB([tinfo], [tgetent], [bash_cv_termcap_lib=libtinfo], [AC_CHECK_LIB(curses, tgetent, bash_cv_termcap_lib=libcurses,
-           [AC_CHECK_LIB(ncurses, tgetent, bash_cv_termcap_lib=libncurses,
-               bash_cv_termcap_lib=gnutermcap)])])
-m4trace:configure.in:526: -1- AC_CHECK_LIB([curses], [tgetent], [bash_cv_termcap_lib=libcurses], [AC_CHECK_LIB(ncurses, tgetent, bash_cv_termcap_lib=libncurses,
-               bash_cv_termcap_lib=gnutermcap)])
-m4trace:configure.in:526: -1- AC_CHECK_LIB([ncurses], [tgetent], [bash_cv_termcap_lib=libncurses], [bash_cv_termcap_lib=gnutermcap])
-m4trace:configure.in:526: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete.
-You should run autoupdate.], [autoconf/general.m4:2289: AC_TRY_RUN is expanded from...
-autoconf/general.m4:1799: AC_CACHE_VAL is expanded from...
-aclocal.m4:1918: RL_LIB_READLINE_VERSION is expanded from...
-configure.in:526: the top level])
-m4trace:configure.in:526: -1- AC_DEFINE_TRACE_LITERAL([RL_READLINE_VERSION])
-m4trace:configure.in:526: -1- AH_OUTPUT([RL_READLINE_VERSION], [/* encoded version of the installed readline library */
-#undef RL_READLINE_VERSION])
-m4trace:configure.in:526: -1- AC_DEFINE_TRACE_LITERAL([RL_VERSION_MAJOR])
-m4trace:configure.in:526: -1- AH_OUTPUT([RL_VERSION_MAJOR], [/* major version of installed readline library */
-#undef RL_VERSION_MAJOR])
-m4trace:configure.in:526: -1- AC_DEFINE_TRACE_LITERAL([RL_VERSION_MINOR])
-m4trace:configure.in:526: -1- AH_OUTPUT([RL_VERSION_MINOR], [/* minor version of installed readline library */
-#undef RL_VERSION_MINOR])
-m4trace:configure.in:526: -1- AC_SUBST([RL_VERSION])
-m4trace:configure.in:526: -1- AC_SUBST([RL_MAJOR])
-m4trace:configure.in:526: -1- AC_SUBST([RL_MINOR])
-m4trace:configure.in:539: -1- AC_DEFINE_TRACE_LITERAL([READLINE])
-m4trace:configure.in:574: -1- AC_DEFINE_TRACE_LITERAL([HISTORY])
-m4trace:configure.in:577: -1- AC_DEFINE_TRACE_LITERAL([BANG_HISTORY])
-m4trace:configure.in:607: -1- AC_SUBST([READLINE_LIB])
-m4trace:configure.in:608: -1- AC_SUBST([READLINE_DEP])
-m4trace:configure.in:609: -1- AC_SUBST([RL_LIBDIR])
-m4trace:configure.in:610: -1- AC_SUBST([RL_INCLUDEDIR])
-m4trace:configure.in:611: -1- AC_SUBST([RL_INCLUDE])
-m4trace:configure.in:612: -1- AC_SUBST([HISTORY_LIB])
-m4trace:configure.in:613: -1- AC_SUBST([HISTORY_DEP])
-m4trace:configure.in:614: -1- AC_SUBST([HIST_LIBDIR])
-m4trace:configure.in:615: -1- AC_SUBST([TILDE_LIB])
-m4trace:configure.in:620: -1- AC_PROG_INSTALL
-m4trace:configure.in:620: -1- AC_SUBST([INSTALL_PROGRAM])
-m4trace:configure.in:620: -1- AC_SUBST([INSTALL_SCRIPT])
-m4trace:configure.in:620: -1- AC_SUBST([INSTALL_DATA])
-m4trace:configure.in:621: -1- AC_SUBST([AR])
-m4trace:configure.in:625: -1- AC_PROG_RANLIB
-m4trace:configure.in:625: -1- AC_SUBST([RANLIB])
-m4trace:configure.in:625: -1- AC_SUBST([ac_ct_RANLIB])
-m4trace:configure.in:626: -1- AC_PROG_YACC
-m4trace:configure.in:626: -1- AC_SUBST([YACC])
-m4trace:configure.in:627: -1- AC_PROG_MAKE_SET
-m4trace:configure.in:627: -1- AC_SUBST([SET_MAKE])
-m4trace:configure.in:633: -1- AC_SUBST([MAKE_SHELL])
-m4trace:configure.in:655: -1- AC_SUBST([SIZE])
-m4trace:configure.in:657: -1- m4_include([m4/stat-time.m4])
-m4trace:configure.in:658: -1- m4_include([m4/timespec.m4])
-m4trace:configure.in:661: -1- AC_DEFINE_TRACE_LITERAL([_GNU_SOURCE])
-m4trace:configure.in:664: -1- AC_C_CONST
-m4trace:configure.in:664: -1- AC_DEFINE_TRACE_LITERAL([const])
-m4trace:configure.in:664: -1- AH_OUTPUT([const], [/* Define to empty if `const\' does not conform to ANSI C. */
-#undef const])
-m4trace:configure.in:665: -1- AC_C_INLINE
-m4trace:configure.in:665: -1- AH_OUTPUT([inline], [/* Define to `__inline__\' or `__inline\' if that\'s what the C compiler
-   calls it, or to nothing if \'inline\' is not supported under any name.  */
-#ifndef __cplusplus
-#undef inline
-#endif])
-m4trace:configure.in:666: -1- AC_DEFINE_TRACE_LITERAL([WORDS_BIGENDIAN])
-m4trace:configure.in:666: -1- AH_OUTPUT([WORDS_BIGENDIAN], [/* Define to 1 if your processor stores words with the most significant byte
-   first (like Motorola and SPARC, unlike Intel and VAX). */
-#undef WORDS_BIGENDIAN])
-m4trace:configure.in:667: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STRINGIZE])
-m4trace:configure.in:667: -1- AH_OUTPUT([HAVE_STRINGIZE], [/* Define to 1 if cpp supports the ANSI @%:@ stringizing operator. */
-#undef HAVE_STRINGIZE])
-m4trace:configure.in:668: -1- AC_DEFINE_TRACE_LITERAL([HAVE_LONG_DOUBLE])
-m4trace:configure.in:668: -1- AH_OUTPUT([HAVE_LONG_DOUBLE], [/* Define to 1 if long double works and has more range or precision than
-   double. */
-#undef HAVE_LONG_DOUBLE])
-m4trace:configure.in:669: -1- AC_DEFINE_TRACE_LITERAL([PROTOTYPES])
-m4trace:configure.in:669: -1- AH_OUTPUT([PROTOTYPES], [/* Define to 1 if the C compiler supports function prototypes. */
-#undef PROTOTYPES])
-m4trace:configure.in:669: -1- AC_DEFINE_TRACE_LITERAL([__PROTOTYPES])
-m4trace:configure.in:669: -1- AH_OUTPUT([__PROTOTYPES], [/* Define like PROTOTYPES; this can be used by system headers. */
-#undef __PROTOTYPES])
-m4trace:configure.in:670: -1- AH_OUTPUT([__CHAR_UNSIGNED__], [/* Define to 1 if type `char\' is unsigned and you are not using gcc.  */
-#ifndef __CHAR_UNSIGNED__
-# undef __CHAR_UNSIGNED__
-#endif])
-m4trace:configure.in:670: -1- AC_DEFINE_TRACE_LITERAL([__CHAR_UNSIGNED__])
-m4trace:configure.in:671: -1- AC_C_VOLATILE
-m4trace:configure.in:671: -1- AC_DEFINE_TRACE_LITERAL([volatile])
-m4trace:configure.in:671: -1- AH_OUTPUT([volatile], [/* Define to empty if the keyword `volatile\' does not work. Warning: valid
-   code using `volatile\' can become incorrect without. Disable with care. */
-#undef volatile])
-m4trace:configure.in:672: -1- AC_DEFINE_TRACE_LITERAL([restrict])
-m4trace:configure.in:672: -1- AH_OUTPUT([restrict], [/* Define to equivalent of C99 restrict keyword, or to nothing if this is not
-   supported. Do not define if restrict is supported directly. */
-#undef restrict])
-m4trace:configure.in:672: -1- AC_DEFINE_TRACE_LITERAL([restrict])
-m4trace:configure.in:675: -1- AM_GNU_GETTEXT([no-libtool], [need-ngettext], [lib/intl])
-m4trace:configure.in:675: -1- AC_SUBST([MKINSTALLDIRS])
-m4trace:configure.in:675: -1- AC_SUBST([USE_NLS])
-m4trace:configure.in:675: -1- AC_SUBST([MSGFMT])
-m4trace:configure.in:675: -1- AC_SUBST([GMSGFMT], [$ac_cv_path_GMSGFMT])
-m4trace:configure.in:675: -1- AC_SUBST([XGETTEXT])
-m4trace:configure.in:675: -1- AC_SUBST([MSGMERGE])
-m4trace:configure.in:675: -1- _m4_warn([obsolete], [The macro `AC_OUTPUT_COMMANDS' is obsolete.
-You should run autoupdate.], [autoconf/status.m4:318: AC_OUTPUT_COMMANDS is expanded from...
-aclocal.m4:3881: AM_PO_SUBDIRS is expanded from...
-configure.in:675: AM_PO_SUBDIRS is required by...
-aclocal.m4:2393: AM_GNU_GETTEXT is expanded from...
-configure.in:675: the top level])
-m4trace:configure.in:675: -3- _m4_warn([obsolete], [The macro `_AC_OUTPUT_COMMANDS_CNT' is obsolete.
-You should run autoupdate.], [autoconf/status.m4:321: _AC_OUTPUT_COMMANDS_CNT is expanded from...
-autoconf/status.m4:318: AC_OUTPUT_COMMANDS is expanded from...
-aclocal.m4:3881: AM_PO_SUBDIRS is expanded from...
-configure.in:675: AM_PO_SUBDIRS is required by...
-aclocal.m4:2393: AM_GNU_GETTEXT is expanded from...
-configure.in:675: the top level])
-m4trace:configure.in:675: -1- AC_TYPE_OFF_T
-m4trace:configure.in:675: -1- AC_DEFINE_TRACE_LITERAL([off_t])
-m4trace:configure.in:675: -1- AH_OUTPUT([off_t], [/* Define to `long\' if <sys/types.h> does not define. */
-#undef off_t])
-m4trace:configure.in:675: -1- AC_TYPE_SIZE_T
-m4trace:configure.in:675: -1- AC_DEFINE_TRACE_LITERAL([size_t])
-m4trace:configure.in:675: -1- AH_OUTPUT([size_t], [/* Define to `unsigned\' if <sys/types.h> does not define. */
-#undef size_t])
-m4trace:configure.in:675: -1- AC_FUNC_ALLOCA
-m4trace:configure.in:675: -1- AC_DEFINE_TRACE_LITERAL([HAVE_ALLOCA_H])
-m4trace:configure.in:675: -1- AH_OUTPUT([HAVE_ALLOCA_H], [/* Define to 1 if you have <alloca.h> and it should be used (not on Ultrix).
-   */
-#undef HAVE_ALLOCA_H])
-m4trace:configure.in:675: -1- AC_DEFINE_TRACE_LITERAL([HAVE_ALLOCA])
-m4trace:configure.in:675: -1- AH_OUTPUT([HAVE_ALLOCA], [/* Define to 1 if you have `alloca\', as a function or macro. */
-#undef HAVE_ALLOCA])
-m4trace:configure.in:675: -1- AC_LIBSOURCE([alloca.c])
-m4trace:configure.in:675: -1- AC_SUBST([ALLOCA], [alloca.$ac_objext])
-m4trace:configure.in:675: -1- AC_DEFINE_TRACE_LITERAL([C_ALLOCA])
-m4trace:configure.in:675: -1- AH_OUTPUT([C_ALLOCA], [/* Define to 1 if using `alloca.c\'. */
-#undef C_ALLOCA])
-m4trace:configure.in:675: -1- AC_DEFINE_TRACE_LITERAL([CRAY_STACKSEG_END])
-m4trace:configure.in:675: -1- AH_OUTPUT([CRAY_STACKSEG_END], [/* Define to one of `_getb67\', `GETB67\', `getb67\' for Cray-2 and Cray-YMP
-   systems. This function is required for `alloca.c\' support on those systems.
-   */
-#undef CRAY_STACKSEG_END])
-m4trace:configure.in:675: -1- AH_OUTPUT([STACK_DIRECTION], [/* If using the C implementation of alloca, define if you know the
-   direction of stack growth for your system; otherwise it will be
-   automatically deduced at run-time.
-       STACK_DIRECTION > 0 => grows toward higher addresses
-       STACK_DIRECTION < 0 => grows toward lower addresses
-       STACK_DIRECTION = 0 => direction of growth unknown */
-@%:@undef STACK_DIRECTION])
-m4trace:configure.in:675: -1- AC_DEFINE_TRACE_LITERAL([STACK_DIRECTION])
-m4trace:configure.in:675: -1- AC_FUNC_MMAP
-m4trace:configure.in:675: -1- AC_CHECK_HEADERS([stdlib.h unistd.h])
-m4trace:configure.in:675: -1- AH_OUTPUT([HAVE_STDLIB_H], [/* Define to 1 if you have the <stdlib.h> header file. */
-#undef HAVE_STDLIB_H])
-m4trace:configure.in:675: -1- AH_OUTPUT([HAVE_UNISTD_H], [/* Define to 1 if you have the <unistd.h> header file. */
-#undef HAVE_UNISTD_H])
-m4trace:configure.in:675: -1- AC_CHECK_FUNCS([getpagesize])
-m4trace:configure.in:675: -1- AH_OUTPUT([HAVE_GETPAGESIZE], [/* Define to 1 if you have the `getpagesize\' function. */
-#undef HAVE_GETPAGESIZE])
-m4trace:configure.in:675: -1- AC_DEFINE_TRACE_LITERAL([HAVE_MMAP])
-m4trace:configure.in:675: -1- AH_OUTPUT([HAVE_MMAP], [/* Define to 1 if you have a working `mmap\' system call. */
-#undef HAVE_MMAP])
-m4trace:configure.in:675: -1- AC_SUBST([GLIBC21])
-m4trace:configure.in:675: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete.
-You should run autoupdate.], [autoconf/general.m4:2289: AC_TRY_RUN is expanded from...
-autoconf/general.m4:1799: AC_CACHE_VAL is expanded from...
-autoconf/general.m4:1808: AC_CACHE_CHECK is expanded from...
-aclocal.m4:2674: gt_INTDIV0 is expanded from...
-configure.in:675: gt_INTDIV0 is required by...
-aclocal.m4:2463: AM_INTL_SUBDIR is expanded from...
-configure.in:675: AM_INTL_SUBDIR is required by...
-aclocal.m4:2393: AM_GNU_GETTEXT is expanded from...
-configure.in:675: the top level])
-m4trace:configure.in:675: -1- AC_DEFINE_TRACE_LITERAL([INTDIV0_RAISES_SIGFPE])
-m4trace:configure.in:675: -1- AH_OUTPUT([INTDIV0_RAISES_SIGFPE], [/* Define if integer division by zero raises signal SIGFPE. */
-#undef INTDIV0_RAISES_SIGFPE])
-m4trace:configure.in:675: -1- _m4_warn([obsolete], [The macro `AC_TRY_COMPILE' is obsolete.
-You should run autoupdate.], [autoconf/general.m4:2180: AC_TRY_COMPILE is expanded from...
-autoconf/general.m4:1799: AC_CACHE_VAL is expanded from...
-autoconf/general.m4:1808: AC_CACHE_CHECK is expanded from...
-aclocal.m4:2729: jm_AC_HEADER_INTTYPES_H is expanded from...
-configure.in:675: jm_AC_HEADER_INTTYPES_H is required by...
-aclocal.m4:4032: jm_AC_TYPE_UINTMAX_T is expanded from...
-configure.in:675: jm_AC_TYPE_UINTMAX_T is required by...
-aclocal.m4:2463: AM_INTL_SUBDIR is expanded from...
-configure.in:675: AM_INTL_SUBDIR is required by...
-aclocal.m4:2393: AM_GNU_GETTEXT is expanded from...
-configure.in:675: the top level])
-m4trace:configure.in:675: -1- AC_DEFINE_TRACE_LITERAL([HAVE_INTTYPES_H_WITH_UINTMAX])
-m4trace:configure.in:675: -1- AH_OUTPUT([HAVE_INTTYPES_H_WITH_UINTMAX], [/* Define if <inttypes.h> exists, doesn\'t clash with <sys/types.h>, and
-   declares uintmax_t. */
-#undef HAVE_INTTYPES_H_WITH_UINTMAX])
-m4trace:configure.in:675: -1- _m4_warn([obsolete], [The macro `AC_TRY_COMPILE' is obsolete.
-You should run autoupdate.], [autoconf/general.m4:2180: AC_TRY_COMPILE is expanded from...
-autoconf/general.m4:1799: AC_CACHE_VAL is expanded from...
-autoconf/general.m4:1808: AC_CACHE_CHECK is expanded from...
-aclocal.m4:4000: jm_AC_HEADER_STDINT_H is expanded from...
-configure.in:675: jm_AC_HEADER_STDINT_H is required by...
-aclocal.m4:4032: jm_AC_TYPE_UINTMAX_T is expanded from...
-configure.in:675: jm_AC_TYPE_UINTMAX_T is required by...
-aclocal.m4:2463: AM_INTL_SUBDIR is expanded from...
-configure.in:675: AM_INTL_SUBDIR is required by...
-aclocal.m4:2393: AM_GNU_GETTEXT is expanded from...
-configure.in:675: the top level])
-m4trace:configure.in:675: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STDINT_H_WITH_UINTMAX])
-m4trace:configure.in:675: -1- AH_OUTPUT([HAVE_STDINT_H_WITH_UINTMAX], [/* Define if <stdint.h> exists, doesn\'t clash with <sys/types.h>, and declares
-   uintmax_t. */
-#undef HAVE_STDINT_H_WITH_UINTMAX])
-m4trace:configure.in:675: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete.
-You should run autoupdate.], [autoconf/general.m4:2223: AC_TRY_LINK is expanded from...
-autoconf/general.m4:1799: AC_CACHE_VAL is expanded from...
-autoconf/general.m4:1808: AC_CACHE_CHECK is expanded from...
-aclocal.m4:4055: jm_AC_TYPE_UNSIGNED_LONG_LONG is expanded from...
-configure.in:675: jm_AC_TYPE_UNSIGNED_LONG_LONG is required by...
-aclocal.m4:4032: jm_AC_TYPE_UINTMAX_T is expanded from...
-configure.in:675: jm_AC_TYPE_UINTMAX_T is required by...
-aclocal.m4:2463: AM_INTL_SUBDIR is expanded from...
-configure.in:675: AM_INTL_SUBDIR is required by...
-aclocal.m4:2393: AM_GNU_GETTEXT is expanded from...
-configure.in:675: the top level])
-m4trace:configure.in:675: -1- AC_DEFINE_TRACE_LITERAL([HAVE_UNSIGNED_LONG_LONG])
-m4trace:configure.in:675: -1- AH_OUTPUT([HAVE_UNSIGNED_LONG_LONG], [/* Define if you have the unsigned long long type. */
-#undef HAVE_UNSIGNED_LONG_LONG])
-m4trace:configure.in:675: -1- AC_DEFINE_TRACE_LITERAL([uintmax_t])
-m4trace:configure.in:675: -1- AH_OUTPUT([uintmax_t], [/* Define to unsigned long or unsigned long long if <stdint.h> and
-   <inttypes.h> don\'t define. */
-#undef uintmax_t])
-m4trace:configure.in:675: -1- AC_DEFINE_TRACE_LITERAL([HAVE_UINTMAX_T])
-m4trace:configure.in:675: -1- AH_OUTPUT([HAVE_UINTMAX_T], [/* Define if you have the \'uintmax_t\' type in <stdint.h> or <inttypes.h>. */
-#undef HAVE_UINTMAX_T])
-m4trace:configure.in:675: -1- _m4_warn([obsolete], [The macro `AC_TRY_COMPILE' is obsolete.
-You should run autoupdate.], [autoconf/general.m4:2180: AC_TRY_COMPILE is expanded from...
-autoconf/general.m4:1799: AC_CACHE_VAL is expanded from...
-autoconf/general.m4:1808: AC_CACHE_CHECK is expanded from...
-aclocal.m4:2701: gt_HEADER_INTTYPES_H is expanded from...
-configure.in:675: gt_HEADER_INTTYPES_H is required by...
-aclocal.m4:2463: AM_INTL_SUBDIR is expanded from...
-configure.in:675: AM_INTL_SUBDIR is required by...
-aclocal.m4:2393: AM_GNU_GETTEXT is expanded from...
-configure.in:675: the top level])
-m4trace:configure.in:675: -1- AC_DEFINE_TRACE_LITERAL([HAVE_INTTYPES_H])
-m4trace:configure.in:675: -1- AH_OUTPUT([HAVE_INTTYPES_H], [/* Define if <inttypes.h> exists and doesn\'t clash with <sys/types.h>. */
-#undef HAVE_INTTYPES_H])
-m4trace:configure.in:675: -1- _m4_warn([obsolete], [The macro `AC_TRY_COMPILE' is obsolete.
-You should run autoupdate.], [autoconf/general.m4:2180: AC_TRY_COMPILE is expanded from...
-autoconf/general.m4:1799: AC_CACHE_VAL is expanded from...
-autoconf/general.m4:1808: AC_CACHE_CHECK is expanded from...
-aclocal.m4:2761: gt_INTTYPES_PRI is expanded from...
-configure.in:675: gt_INTTYPES_PRI is required by...
-aclocal.m4:2463: AM_INTL_SUBDIR is expanded from...
-configure.in:675: AM_INTL_SUBDIR is required by...
-aclocal.m4:2393: AM_GNU_GETTEXT is expanded from...
-configure.in:675: the top level])
-m4trace:configure.in:675: -1- AC_DEFINE_TRACE_LITERAL([PRI_MACROS_BROKEN])
-m4trace:configure.in:675: -1- AH_OUTPUT([PRI_MACROS_BROKEN], [/* Define if <inttypes.h> exists and defines unusable PRI* macros. */
-#undef PRI_MACROS_BROKEN])
-m4trace:configure.in:675: -1- AC_CHECK_HEADERS([argz.h limits.h locale.h nl_types.h malloc.h stddef.h \
-stdlib.h string.h unistd.h sys/param.h])
-m4trace:configure.in:675: -1- AH_OUTPUT([HAVE_ARGZ_H], [/* Define to 1 if you have the <argz.h> header file. */
-#undef HAVE_ARGZ_H])
-m4trace:configure.in:675: -1- AH_OUTPUT([HAVE_LIMITS_H], [/* Define to 1 if you have the <limits.h> header file. */
-#undef HAVE_LIMITS_H])
-m4trace:configure.in:675: -1- AH_OUTPUT([HAVE_LOCALE_H], [/* Define to 1 if you have the <locale.h> header file. */
-#undef HAVE_LOCALE_H])
-m4trace:configure.in:675: -1- AH_OUTPUT([HAVE_NL_TYPES_H], [/* Define to 1 if you have the <nl_types.h> header file. */
-#undef HAVE_NL_TYPES_H])
-m4trace:configure.in:675: -1- AH_OUTPUT([HAVE_MALLOC_H], [/* Define to 1 if you have the <malloc.h> header file. */
-#undef HAVE_MALLOC_H])
-m4trace:configure.in:675: -1- AH_OUTPUT([HAVE_STDDEF_H], [/* Define to 1 if you have the <stddef.h> header file. */
-#undef HAVE_STDDEF_H])
-m4trace:configure.in:675: -1- AH_OUTPUT([HAVE_STDLIB_H], [/* Define to 1 if you have the <stdlib.h> header file. */
-#undef HAVE_STDLIB_H])
-m4trace:configure.in:675: -1- AH_OUTPUT([HAVE_STRING_H], [/* Define to 1 if you have the <string.h> header file. */
-#undef HAVE_STRING_H])
-m4trace:configure.in:675: -1- AH_OUTPUT([HAVE_UNISTD_H], [/* Define to 1 if you have the <unistd.h> header file. */
-#undef HAVE_UNISTD_H])
-m4trace:configure.in:675: -1- AH_OUTPUT([HAVE_SYS_PARAM_H], [/* Define to 1 if you have the <sys/param.h> header file. */
-#undef HAVE_SYS_PARAM_H])
-m4trace:configure.in:675: -1- AC_CHECK_FUNCS([feof_unlocked fgets_unlocked getc_unlocked getcwd getegid \
-geteuid getgid getuid mempcpy munmap putenv setenv setlocale localeconv stpcpy \
-strcasecmp strdup strtoul tsearch __argz_count __argz_stringify __argz_next \
-__fsetlocking])
-m4trace:configure.in:675: -1- AH_OUTPUT([HAVE_FEOF_UNLOCKED], [/* Define to 1 if you have the `feof_unlocked\' function. */
-#undef HAVE_FEOF_UNLOCKED])
-m4trace:configure.in:675: -1- AH_OUTPUT([HAVE_FGETS_UNLOCKED], [/* Define to 1 if you have the `fgets_unlocked\' function. */
-#undef HAVE_FGETS_UNLOCKED])
-m4trace:configure.in:675: -1- AH_OUTPUT([HAVE_GETC_UNLOCKED], [/* Define to 1 if you have the `getc_unlocked\' function. */
-#undef HAVE_GETC_UNLOCKED])
-m4trace:configure.in:675: -1- AH_OUTPUT([HAVE_GETCWD], [/* Define to 1 if you have the `getcwd\' function. */
-#undef HAVE_GETCWD])
-m4trace:configure.in:675: -1- AH_OUTPUT([HAVE_GETEGID], [/* Define to 1 if you have the `getegid\' function. */
-#undef HAVE_GETEGID])
-m4trace:configure.in:675: -1- AH_OUTPUT([HAVE_GETEUID], [/* Define to 1 if you have the `geteuid\' function. */
-#undef HAVE_GETEUID])
-m4trace:configure.in:675: -1- AH_OUTPUT([HAVE_GETGID], [/* Define to 1 if you have the `getgid\' function. */
-#undef HAVE_GETGID])
-m4trace:configure.in:675: -1- AH_OUTPUT([HAVE_GETUID], [/* Define to 1 if you have the `getuid\' function. */
-#undef HAVE_GETUID])
-m4trace:configure.in:675: -1- AH_OUTPUT([HAVE_MEMPCPY], [/* Define to 1 if you have the `mempcpy\' function. */
-#undef HAVE_MEMPCPY])
-m4trace:configure.in:675: -1- AH_OUTPUT([HAVE_MUNMAP], [/* Define to 1 if you have the `munmap\' function. */
-#undef HAVE_MUNMAP])
-m4trace:configure.in:675: -1- AH_OUTPUT([HAVE_PUTENV], [/* Define to 1 if you have the `putenv\' function. */
-#undef HAVE_PUTENV])
-m4trace:configure.in:675: -1- AH_OUTPUT([HAVE_SETENV], [/* Define to 1 if you have the `setenv\' function. */
-#undef HAVE_SETENV])
-m4trace:configure.in:675: -1- AH_OUTPUT([HAVE_SETLOCALE], [/* Define to 1 if you have the `setlocale\' function. */
-#undef HAVE_SETLOCALE])
-m4trace:configure.in:675: -1- AH_OUTPUT([HAVE_LOCALECONV], [/* Define to 1 if you have the `localeconv\' function. */
-#undef HAVE_LOCALECONV])
-m4trace:configure.in:675: -1- AH_OUTPUT([HAVE_STPCPY], [/* Define to 1 if you have the `stpcpy\' function. */
-#undef HAVE_STPCPY])
-m4trace:configure.in:675: -1- AH_OUTPUT([HAVE_STRCASECMP], [/* Define to 1 if you have the `strcasecmp\' function. */
-#undef HAVE_STRCASECMP])
-m4trace:configure.in:675: -1- AH_OUTPUT([HAVE_STRDUP], [/* Define to 1 if you have the `strdup\' function. */
-#undef HAVE_STRDUP])
-m4trace:configure.in:675: -1- AH_OUTPUT([HAVE_STRTOUL], [/* Define to 1 if you have the `strtoul\' function. */
-#undef HAVE_STRTOUL])
-m4trace:configure.in:675: -1- AH_OUTPUT([HAVE_TSEARCH], [/* Define to 1 if you have the `tsearch\' function. */
-#undef HAVE_TSEARCH])
-m4trace:configure.in:675: -1- AH_OUTPUT([HAVE___ARGZ_COUNT], [/* Define to 1 if you have the `__argz_count\' function. */
-#undef HAVE___ARGZ_COUNT])
-m4trace:configure.in:675: -1- AH_OUTPUT([HAVE___ARGZ_STRINGIFY], [/* Define to 1 if you have the `__argz_stringify\' function. */
-#undef HAVE___ARGZ_STRINGIFY])
-m4trace:configure.in:675: -1- AH_OUTPUT([HAVE___ARGZ_NEXT], [/* Define to 1 if you have the `__argz_next\' function. */
-#undef HAVE___ARGZ_NEXT])
-m4trace:configure.in:675: -1- AH_OUTPUT([HAVE___FSETLOCKING], [/* Define to 1 if you have the `__fsetlocking\' function. */
-#undef HAVE___FSETLOCKING])
-m4trace:configure.in:675: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete.
-You should run autoupdate.], [autoconf/general.m4:2223: AC_TRY_LINK is expanded from...
-autoconf/general.m4:1799: AC_CACHE_VAL is expanded from...
-autoconf/general.m4:1808: AC_CACHE_CHECK is expanded from...
-aclocal.m4:2574: AM_ICONV_LINK is expanded from...
-aclocal.m4:2602: AM_ICONV is expanded from...
-aclocal.m4:2463: AM_INTL_SUBDIR is expanded from...
-configure.in:675: AM_INTL_SUBDIR is required by...
-aclocal.m4:2393: AM_GNU_GETTEXT is expanded from...
-configure.in:675: the top level])
-m4trace:configure.in:675: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete.
-You should run autoupdate.], [autoconf/general.m4:2223: AC_TRY_LINK is expanded from...
-autoconf/general.m4:1799: AC_CACHE_VAL is expanded from...
-autoconf/general.m4:1808: AC_CACHE_CHECK is expanded from...
-aclocal.m4:2574: AM_ICONV_LINK is expanded from...
-aclocal.m4:2602: AM_ICONV is expanded from...
-aclocal.m4:2463: AM_INTL_SUBDIR is expanded from...
-configure.in:675: AM_INTL_SUBDIR is required by...
-aclocal.m4:2393: AM_GNU_GETTEXT is expanded from...
-configure.in:675: the top level])
-m4trace:configure.in:675: -1- AC_DEFINE_TRACE_LITERAL([HAVE_ICONV])
-m4trace:configure.in:675: -1- AH_OUTPUT([HAVE_ICONV], [/* Define if you have the iconv() function. */
-#undef HAVE_ICONV])
-m4trace:configure.in:675: -1- AC_SUBST([LIBICONV])
-m4trace:configure.in:675: -1- AC_SUBST([LTLIBICONV])
-m4trace:configure.in:675: -1- _m4_warn([obsolete], [The macro `AC_TRY_COMPILE' is obsolete.
-You should run autoupdate.], [autoconf/general.m4:2180: AC_TRY_COMPILE is expanded from...
-autoconf/general.m4:1799: AC_CACHE_VAL is expanded from...
-aclocal.m4:2602: AM_ICONV is expanded from...
-aclocal.m4:2463: AM_INTL_SUBDIR is expanded from...
-configure.in:675: AM_INTL_SUBDIR is required by...
-aclocal.m4:2393: AM_GNU_GETTEXT is expanded from...
-configure.in:675: the top level])
-m4trace:configure.in:675: -1- AC_DEFINE_TRACE_LITERAL([ICONV_CONST])
-m4trace:configure.in:675: -1- AH_OUTPUT([ICONV_CONST], [/* Define as const if the declaration of iconv() needs const. */
-#undef ICONV_CONST])
-m4trace:configure.in:675: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete.
-You should run autoupdate.], [autoconf/general.m4:2223: AC_TRY_LINK is expanded from...
-autoconf/general.m4:1799: AC_CACHE_VAL is expanded from...
-autoconf/general.m4:1808: AC_CACHE_CHECK is expanded from...
-aclocal.m4:2052: AM_LANGINFO_CODESET is expanded from...
-aclocal.m4:2463: AM_INTL_SUBDIR is expanded from...
-configure.in:675: AM_INTL_SUBDIR is required by...
-aclocal.m4:2393: AM_GNU_GETTEXT is expanded from...
-configure.in:675: the top level])
-m4trace:configure.in:675: -1- AC_DEFINE_TRACE_LITERAL([HAVE_LANGINFO_CODESET])
-m4trace:configure.in:675: -1- AH_OUTPUT([HAVE_LANGINFO_CODESET], [/* Define if you have <langinfo.h> and nl_langinfo(CODESET). */
-#undef HAVE_LANGINFO_CODESET])
-m4trace:configure.in:675: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete.
-You should run autoupdate.], [autoconf/general.m4:2223: AC_TRY_LINK is expanded from...
-autoconf/general.m4:1799: AC_CACHE_VAL is expanded from...
-autoconf/general.m4:1808: AC_CACHE_CHECK is expanded from...
-aclocal.m4:2819: AM_LC_MESSAGES is expanded from...
-aclocal.m4:2463: AM_INTL_SUBDIR is expanded from...
-configure.in:675: AM_INTL_SUBDIR is required by...
-aclocal.m4:2393: AM_GNU_GETTEXT is expanded from...
-configure.in:675: the top level])
-m4trace:configure.in:675: -1- AC_DEFINE_TRACE_LITERAL([HAVE_LC_MESSAGES])
-m4trace:configure.in:675: -1- AH_OUTPUT([HAVE_LC_MESSAGES], [/* Define if your <locale.h> file defines LC_MESSAGES. */
-#undef HAVE_LC_MESSAGES])
-m4trace:configure.in:675: -1- AC_SUBST([INTLBISON])
-m4trace:configure.in:675: -1- AC_SUBST([USE_NLS])
-m4trace:configure.in:675: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete.
-You should run autoupdate.], [autoconf/general.m4:2223: AC_TRY_LINK is expanded from...
-autoconf/general.m4:1799: AC_CACHE_VAL is expanded from...
-autoconf/general.m4:1808: AC_CACHE_CHECK is expanded from...
-aclocal.m4:2393: AM_GNU_GETTEXT is expanded from...
-configure.in:675: the top level])
-m4trace:configure.in:675: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete.
-You should run autoupdate.], [autoconf/general.m4:2223: AC_TRY_LINK is expanded from...
-autoconf/general.m4:1799: AC_CACHE_VAL is expanded from...
-autoconf/general.m4:1808: AC_CACHE_CHECK is expanded from...
-aclocal.m4:2393: AM_GNU_GETTEXT is expanded from...
-configure.in:675: the top level])
-m4trace:configure.in:675: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete.
-You should run autoupdate.], [autoconf/general.m4:2223: AC_TRY_LINK is expanded from...
-autoconf/general.m4:1799: AC_CACHE_VAL is expanded from...
-autoconf/general.m4:1808: AC_CACHE_CHECK is expanded from...
-aclocal.m4:2393: AM_GNU_GETTEXT is expanded from...
-configure.in:675: the top level])
-m4trace:configure.in:675: -1- AC_DEFINE_TRACE_LITERAL([ENABLE_NLS])
-m4trace:configure.in:675: -1- AH_OUTPUT([ENABLE_NLS], [/* Define to 1 if translation of program messages to the user\'s native
-   language is requested. */
-#undef ENABLE_NLS])
-m4trace:configure.in:675: -1- AC_DEFINE_TRACE_LITERAL([HAVE_GETTEXT])
-m4trace:configure.in:675: -1- AH_OUTPUT([HAVE_GETTEXT], [/* Define if the GNU gettext() function is already present or preinstalled. */
-#undef HAVE_GETTEXT])
-m4trace:configure.in:675: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DCGETTEXT])
-m4trace:configure.in:675: -1- AH_OUTPUT([HAVE_DCGETTEXT], [/* Define if the GNU dcgettext() function is already present or preinstalled.
-   */
-#undef HAVE_DCGETTEXT])
-m4trace:configure.in:675: -1- AC_SUBST([BUILD_INCLUDED_LIBINTL])
-m4trace:configure.in:675: -1- AC_SUBST([USE_INCLUDED_LIBINTL])
-m4trace:configure.in:675: -1- AC_SUBST([CATOBJEXT])
-m4trace:configure.in:675: -1- AC_SUBST([DATADIRNAME])
-m4trace:configure.in:675: -1- AC_SUBST([INSTOBJEXT])
-m4trace:configure.in:675: -1- AC_SUBST([GENCAT])
-m4trace:configure.in:675: -1- AC_SUBST([INTLOBJS])
-m4trace:configure.in:675: -1- AC_SUBST([INTL_LIBTOOL_SUFFIX_PREFIX])
-m4trace:configure.in:675: -1- AC_SUBST([INTLLIBS])
-m4trace:configure.in:675: -1- AC_SUBST([LIBINTL])
-m4trace:configure.in:675: -1- AC_SUBST([LTLIBINTL])
-m4trace:configure.in:675: -1- AC_SUBST([POSUB])
-m4trace:configure.in:678: -1- AC_HEADER_DIRENT
-m4trace:configure.in:678: -1- AH_OUTPUT([HAVE_DIRENT_H], [/* Define to 1 if you have the <dirent.h> header file, and it defines `DIR\'.
-   */
-#undef HAVE_DIRENT_H])
-m4trace:configure.in:678: -1- AH_OUTPUT([HAVE_SYS_NDIR_H], [/* Define to 1 if you have the <sys/ndir.h> header file, and it defines `DIR\'.
-   */
-#undef HAVE_SYS_NDIR_H])
-m4trace:configure.in:678: -1- AH_OUTPUT([HAVE_SYS_DIR_H], [/* Define to 1 if you have the <sys/dir.h> header file, and it defines `DIR\'.
-   */
-#undef HAVE_SYS_DIR_H])
-m4trace:configure.in:678: -1- AH_OUTPUT([HAVE_NDIR_H], [/* Define to 1 if you have the <ndir.h> header file, and it defines `DIR\'. */
-#undef HAVE_NDIR_H])
-m4trace:configure.in:679: -1- AC_HEADER_TIME
-m4trace:configure.in:679: -1- AC_DEFINE_TRACE_LITERAL([TIME_WITH_SYS_TIME])
-m4trace:configure.in:679: -1- AH_OUTPUT([TIME_WITH_SYS_TIME], [/* Define to 1 if you can safely include both <sys/time.h> and <time.h>. */
-#undef TIME_WITH_SYS_TIME])
-m4trace:configure.in:681: -1- AC_CHECK_HEADERS([inttypes.h])
-m4trace:configure.in:681: -1- AH_OUTPUT([HAVE_INTTYPES_H], [/* Define to 1 if you have the <inttypes.h> header file. */
-#undef HAVE_INTTYPES_H])
-m4trace:configure.in:686: -1- AC_CHECK_HEADERS([unistd.h stdlib.h stdarg.h varargs.h limits.h string.h \
-                memory.h locale.h termcap.h termio.h termios.h dlfcn.h \
-                stdbool.h stddef.h stdint.h netdb.h pwd.h grp.h strings.h \
-                regex.h syslog.h ulimit.h])
-m4trace:configure.in:686: -1- AH_OUTPUT([HAVE_UNISTD_H], [/* Define to 1 if you have the <unistd.h> header file. */
-#undef HAVE_UNISTD_H])
-m4trace:configure.in:686: -1- AH_OUTPUT([HAVE_STDLIB_H], [/* Define to 1 if you have the <stdlib.h> header file. */
-#undef HAVE_STDLIB_H])
-m4trace:configure.in:686: -1- AH_OUTPUT([HAVE_STDARG_H], [/* Define to 1 if you have the <stdarg.h> header file. */
-#undef HAVE_STDARG_H])
-m4trace:configure.in:686: -1- AH_OUTPUT([HAVE_VARARGS_H], [/* Define to 1 if you have the <varargs.h> header file. */
-#undef HAVE_VARARGS_H])
-m4trace:configure.in:686: -1- AH_OUTPUT([HAVE_LIMITS_H], [/* Define to 1 if you have the <limits.h> header file. */
-#undef HAVE_LIMITS_H])
-m4trace:configure.in:686: -1- AH_OUTPUT([HAVE_STRING_H], [/* Define to 1 if you have the <string.h> header file. */
-#undef HAVE_STRING_H])
-m4trace:configure.in:686: -1- AH_OUTPUT([HAVE_MEMORY_H], [/* Define to 1 if you have the <memory.h> header file. */
-#undef HAVE_MEMORY_H])
-m4trace:configure.in:686: -1- AH_OUTPUT([HAVE_LOCALE_H], [/* Define to 1 if you have the <locale.h> header file. */
-#undef HAVE_LOCALE_H])
-m4trace:configure.in:686: -1- AH_OUTPUT([HAVE_TERMCAP_H], [/* Define to 1 if you have the <termcap.h> header file. */
-#undef HAVE_TERMCAP_H])
-m4trace:configure.in:686: -1- AH_OUTPUT([HAVE_TERMIO_H], [/* Define to 1 if you have the <termio.h> header file. */
-#undef HAVE_TERMIO_H])
-m4trace:configure.in:686: -1- AH_OUTPUT([HAVE_TERMIOS_H], [/* Define to 1 if you have the <termios.h> header file. */
-#undef HAVE_TERMIOS_H])
-m4trace:configure.in:686: -1- AH_OUTPUT([HAVE_DLFCN_H], [/* Define to 1 if you have the <dlfcn.h> header file. */
-#undef HAVE_DLFCN_H])
-m4trace:configure.in:686: -1- AH_OUTPUT([HAVE_STDBOOL_H], [/* Define to 1 if you have the <stdbool.h> header file. */
-#undef HAVE_STDBOOL_H])
-m4trace:configure.in:686: -1- AH_OUTPUT([HAVE_STDDEF_H], [/* Define to 1 if you have the <stddef.h> header file. */
-#undef HAVE_STDDEF_H])
-m4trace:configure.in:686: -1- AH_OUTPUT([HAVE_STDINT_H], [/* Define to 1 if you have the <stdint.h> header file. */
-#undef HAVE_STDINT_H])
-m4trace:configure.in:686: -1- AH_OUTPUT([HAVE_NETDB_H], [/* Define to 1 if you have the <netdb.h> header file. */
-#undef HAVE_NETDB_H])
-m4trace:configure.in:686: -1- AH_OUTPUT([HAVE_PWD_H], [/* Define to 1 if you have the <pwd.h> header file. */
-#undef HAVE_PWD_H])
-m4trace:configure.in:686: -1- AH_OUTPUT([HAVE_GRP_H], [/* Define to 1 if you have the <grp.h> header file. */
-#undef HAVE_GRP_H])
-m4trace:configure.in:686: -1- AH_OUTPUT([HAVE_STRINGS_H], [/* Define to 1 if you have the <strings.h> header file. */
-#undef HAVE_STRINGS_H])
-m4trace:configure.in:686: -1- AH_OUTPUT([HAVE_REGEX_H], [/* Define to 1 if you have the <regex.h> header file. */
-#undef HAVE_REGEX_H])
-m4trace:configure.in:686: -1- AH_OUTPUT([HAVE_SYSLOG_H], [/* Define to 1 if you have the <syslog.h> header file. */
-#undef HAVE_SYSLOG_H])
-m4trace:configure.in:686: -1- AH_OUTPUT([HAVE_ULIMIT_H], [/* Define to 1 if you have the <ulimit.h> header file. */
-#undef HAVE_ULIMIT_H])
-m4trace:configure.in:689: -1- AC_CHECK_HEADERS([sys/pte.h sys/stream.h sys/select.h sys/file.h \
-                sys/resource.h sys/param.h sys/socket.h sys/stat.h \
-                sys/time.h sys/times.h sys/types.h sys/wait.h])
-m4trace:configure.in:689: -1- AH_OUTPUT([HAVE_SYS_PTE_H], [/* Define to 1 if you have the <sys/pte.h> header file. */
-#undef HAVE_SYS_PTE_H])
-m4trace:configure.in:689: -1- AH_OUTPUT([HAVE_SYS_STREAM_H], [/* Define to 1 if you have the <sys/stream.h> header file. */
-#undef HAVE_SYS_STREAM_H])
-m4trace:configure.in:689: -1- AH_OUTPUT([HAVE_SYS_SELECT_H], [/* Define to 1 if you have the <sys/select.h> header file. */
-#undef HAVE_SYS_SELECT_H])
-m4trace:configure.in:689: -1- AH_OUTPUT([HAVE_SYS_FILE_H], [/* Define to 1 if you have the <sys/file.h> header file. */
-#undef HAVE_SYS_FILE_H])
-m4trace:configure.in:689: -1- AH_OUTPUT([HAVE_SYS_RESOURCE_H], [/* Define to 1 if you have the <sys/resource.h> header file. */
-#undef HAVE_SYS_RESOURCE_H])
-m4trace:configure.in:689: -1- AH_OUTPUT([HAVE_SYS_PARAM_H], [/* Define to 1 if you have the <sys/param.h> header file. */
-#undef HAVE_SYS_PARAM_H])
-m4trace:configure.in:689: -1- AH_OUTPUT([HAVE_SYS_SOCKET_H], [/* Define to 1 if you have the <sys/socket.h> header file. */
-#undef HAVE_SYS_SOCKET_H])
-m4trace:configure.in:689: -1- AH_OUTPUT([HAVE_SYS_STAT_H], [/* Define to 1 if you have the <sys/stat.h> header file. */
-#undef HAVE_SYS_STAT_H])
-m4trace:configure.in:689: -1- AH_OUTPUT([HAVE_SYS_TIME_H], [/* Define to 1 if you have the <sys/time.h> header file. */
-#undef HAVE_SYS_TIME_H])
-m4trace:configure.in:689: -1- AH_OUTPUT([HAVE_SYS_TIMES_H], [/* Define to 1 if you have the <sys/times.h> header file. */
-#undef HAVE_SYS_TIMES_H])
-m4trace:configure.in:689: -1- AH_OUTPUT([HAVE_SYS_TYPES_H], [/* Define to 1 if you have the <sys/types.h> header file. */
-#undef HAVE_SYS_TYPES_H])
-m4trace:configure.in:689: -1- AH_OUTPUT([HAVE_SYS_WAIT_H], [/* Define to 1 if you have the <sys/wait.h> header file. */
-#undef HAVE_SYS_WAIT_H])
-m4trace:configure.in:690: -1- AC_CHECK_HEADERS([netinet/in.h arpa/inet.h])
-m4trace:configure.in:690: -1- AH_OUTPUT([HAVE_NETINET_IN_H], [/* Define to 1 if you have the <netinet/in.h> header file. */
-#undef HAVE_NETINET_IN_H])
-m4trace:configure.in:690: -1- AH_OUTPUT([HAVE_ARPA_INET_H], [/* Define to 1 if you have the <arpa/inet.h> header file. */
-#undef HAVE_ARPA_INET_H])
-m4trace:configure.in:701: -1- AC_FUNC_ALLOCA
-m4trace:configure.in:701: -1- AC_DEFINE_TRACE_LITERAL([HAVE_ALLOCA_H])
-m4trace:configure.in:701: -1- AH_OUTPUT([HAVE_ALLOCA_H], [/* Define to 1 if you have <alloca.h> and it should be used (not on Ultrix).
-   */
-#undef HAVE_ALLOCA_H])
-m4trace:configure.in:701: -1- AC_DEFINE_TRACE_LITERAL([HAVE_ALLOCA])
-m4trace:configure.in:701: -1- AH_OUTPUT([HAVE_ALLOCA], [/* Define to 1 if you have `alloca\', as a function or macro. */
-#undef HAVE_ALLOCA])
-m4trace:configure.in:701: -1- AC_LIBSOURCE([alloca.c])
-m4trace:configure.in:701: -1- AC_SUBST([ALLOCA], [alloca.$ac_objext])
-m4trace:configure.in:701: -1- AC_DEFINE_TRACE_LITERAL([C_ALLOCA])
-m4trace:configure.in:701: -1- AH_OUTPUT([C_ALLOCA], [/* Define to 1 if using `alloca.c\'. */
-#undef C_ALLOCA])
-m4trace:configure.in:701: -1- AC_DEFINE_TRACE_LITERAL([CRAY_STACKSEG_END])
-m4trace:configure.in:701: -1- AH_OUTPUT([CRAY_STACKSEG_END], [/* Define to one of `_getb67\', `GETB67\', `getb67\' for Cray-2 and Cray-YMP
-   systems. This function is required for `alloca.c\' support on those systems.
-   */
-#undef CRAY_STACKSEG_END])
-m4trace:configure.in:701: -1- AH_OUTPUT([STACK_DIRECTION], [/* If using the C implementation of alloca, define if you know the
-   direction of stack growth for your system; otherwise it will be
-   automatically deduced at run-time.
-       STACK_DIRECTION > 0 => grows toward higher addresses
-       STACK_DIRECTION < 0 => grows toward lower addresses
-       STACK_DIRECTION = 0 => direction of growth unknown */
-@%:@undef STACK_DIRECTION])
-m4trace:configure.in:701: -1- AC_DEFINE_TRACE_LITERAL([STACK_DIRECTION])
-m4trace:configure.in:702: -1- AC_FUNC_GETPGRP
-m4trace:configure.in:702: -1- AC_DEFINE_TRACE_LITERAL([GETPGRP_VOID])
-m4trace:configure.in:702: -1- AH_OUTPUT([GETPGRP_VOID], [/* Define to 1 if the `getpgrp\' function requires zero arguments. */
-#undef GETPGRP_VOID])
-m4trace:configure.in:703: -1- AC_FUNC_SETVBUF_REVERSED
-m4trace:configure.in:703: -1- AC_DEFINE_TRACE_LITERAL([SETVBUF_REVERSED])
-m4trace:configure.in:703: -1- AH_OUTPUT([SETVBUF_REVERSED], [/* Define to 1 if the `setvbuf\' function takes the buffering type as its
-   second argument and the buffer pointer as the third, as on System V before
-   release 3. */
-#undef SETVBUF_REVERSED])
-m4trace:configure.in:704: -1- AC_FUNC_VPRINTF
-m4trace:configure.in:704: -1- AC_CHECK_FUNCS([vprintf], [
-AC_CHECK_FUNC(_doprnt,
-              [AC_DEFINE(HAVE_DOPRNT, 1,
-                         [Define to 1 if you don't have `vprintf' but do have
-                         `_doprnt.'])])])
-m4trace:configure.in:704: -1- AH_OUTPUT([HAVE_VPRINTF], [/* Define to 1 if you have the `vprintf\' function. */
-#undef HAVE_VPRINTF])
-m4trace:configure.in:704: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DOPRNT])
-m4trace:configure.in:704: -1- AH_OUTPUT([HAVE_DOPRNT], [/* Define to 1 if you don\'t have `vprintf\' but do have `_doprnt.\' */
-#undef HAVE_DOPRNT])
-m4trace:configure.in:705: -1- AC_FUNC_STRCOLL
-m4trace:configure.in:705: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STRCOLL])
-m4trace:configure.in:705: -1- AH_OUTPUT([HAVE_STRCOLL], [/* Define to 1 if you have the `strcoll\' function and it is properly defined.
-   */
-#undef HAVE_STRCOLL])
-m4trace:configure.in:726: -1- AC_DEFINE_TRACE_LITERAL([HAVE_VPRINTF])
-m4trace:configure.in:731: -1- AC_LIBSOURCE([vprint.c])
-m4trace:configure.in:731: -1- AC_SUBST([LIB@&t@OBJS])
-m4trace:configure.in:735: -1- AC_TYPE_SIGNAL
-m4trace:configure.in:735: -1- AC_DEFINE_TRACE_LITERAL([RETSIGTYPE])
-m4trace:configure.in:735: -1- AH_OUTPUT([RETSIGTYPE], [/* Define as the return type of signal handlers (`int\' or `void\'). */
-#undef RETSIGTYPE])
-m4trace:configure.in:738: -2- AC_DEFINE_TRACE_LITERAL([HAVE_SETOSTYPE])
-m4trace:configure.in:739: -2- AC_DEFINE_TRACE_LITERAL([HAVE_WAIT3])
-m4trace:configure.in:742: -2- AC_DEFINE_TRACE_LITERAL([HAVE_MKFIFO])
-m4trace:configure.in:742: -2- AC_DEFINE_TRACE_LITERAL([MKFIFO_MISSING])
-m4trace:configure.in:748: -1- AC_CHECK_FUNCS([dup2 eaccess fcntl getdtablesize getgroups gethostname \
-               getpagesize getpeername getrlimit getrusage gettimeofday \
-               kill killpg lstat readlink sbrk select setdtablesize \
-               setitimer tcgetpgrp uname ulimit waitpid])
-m4trace:configure.in:748: -1- AH_OUTPUT([HAVE_DUP2], [/* Define to 1 if you have the `dup2\' function. */
-#undef HAVE_DUP2])
-m4trace:configure.in:748: -1- AH_OUTPUT([HAVE_EACCESS], [/* Define to 1 if you have the `eaccess\' function. */
-#undef HAVE_EACCESS])
-m4trace:configure.in:748: -1- AH_OUTPUT([HAVE_FCNTL], [/* Define to 1 if you have the `fcntl\' function. */
-#undef HAVE_FCNTL])
-m4trace:configure.in:748: -1- AH_OUTPUT([HAVE_GETDTABLESIZE], [/* Define to 1 if you have the `getdtablesize\' function. */
-#undef HAVE_GETDTABLESIZE])
-m4trace:configure.in:748: -1- AH_OUTPUT([HAVE_GETGROUPS], [/* Define to 1 if you have the `getgroups\' function. */
-#undef HAVE_GETGROUPS])
-m4trace:configure.in:748: -1- AH_OUTPUT([HAVE_GETHOSTNAME], [/* Define to 1 if you have the `gethostname\' function. */
-#undef HAVE_GETHOSTNAME])
-m4trace:configure.in:748: -1- AH_OUTPUT([HAVE_GETPAGESIZE], [/* Define to 1 if you have the `getpagesize\' function. */
-#undef HAVE_GETPAGESIZE])
-m4trace:configure.in:748: -1- AH_OUTPUT([HAVE_GETPEERNAME], [/* Define to 1 if you have the `getpeername\' function. */
-#undef HAVE_GETPEERNAME])
-m4trace:configure.in:748: -1- AH_OUTPUT([HAVE_GETRLIMIT], [/* Define to 1 if you have the `getrlimit\' function. */
-#undef HAVE_GETRLIMIT])
-m4trace:configure.in:748: -1- AH_OUTPUT([HAVE_GETRUSAGE], [/* Define to 1 if you have the `getrusage\' function. */
-#undef HAVE_GETRUSAGE])
-m4trace:configure.in:748: -1- AH_OUTPUT([HAVE_GETTIMEOFDAY], [/* Define to 1 if you have the `gettimeofday\' function. */
-#undef HAVE_GETTIMEOFDAY])
-m4trace:configure.in:748: -1- AH_OUTPUT([HAVE_KILL], [/* Define to 1 if you have the `kill\' function. */
-#undef HAVE_KILL])
-m4trace:configure.in:748: -1- AH_OUTPUT([HAVE_KILLPG], [/* Define to 1 if you have the `killpg\' function. */
-#undef HAVE_KILLPG])
-m4trace:configure.in:748: -1- AH_OUTPUT([HAVE_LSTAT], [/* Define to 1 if you have the `lstat\' function. */
-#undef HAVE_LSTAT])
-m4trace:configure.in:748: -1- AH_OUTPUT([HAVE_READLINK], [/* Define to 1 if you have the `readlink\' function. */
-#undef HAVE_READLINK])
-m4trace:configure.in:748: -1- AH_OUTPUT([HAVE_SBRK], [/* Define to 1 if you have the `sbrk\' function. */
-#undef HAVE_SBRK])
-m4trace:configure.in:748: -1- AH_OUTPUT([HAVE_SELECT], [/* Define to 1 if you have the `select\' function. */
-#undef HAVE_SELECT])
-m4trace:configure.in:748: -1- AH_OUTPUT([HAVE_SETDTABLESIZE], [/* Define to 1 if you have the `setdtablesize\' function. */
-#undef HAVE_SETDTABLESIZE])
-m4trace:configure.in:748: -1- AH_OUTPUT([HAVE_SETITIMER], [/* Define to 1 if you have the `setitimer\' function. */
-#undef HAVE_SETITIMER])
-m4trace:configure.in:748: -1- AH_OUTPUT([HAVE_TCGETPGRP], [/* Define to 1 if you have the `tcgetpgrp\' function. */
-#undef HAVE_TCGETPGRP])
-m4trace:configure.in:748: -1- AH_OUTPUT([HAVE_UNAME], [/* Define to 1 if you have the `uname\' function. */
-#undef HAVE_UNAME])
-m4trace:configure.in:748: -1- AH_OUTPUT([HAVE_ULIMIT], [/* Define to 1 if you have the `ulimit\' function. */
-#undef HAVE_ULIMIT])
-m4trace:configure.in:748: -1- AH_OUTPUT([HAVE_WAITPID], [/* Define to 1 if you have the `waitpid\' function. */
-#undef HAVE_WAITPID])
-m4trace:configure.in:749: -1- AC_LIBSOURCE([rename.c])
-m4trace:configure.in:749: -1- AC_CHECK_FUNCS([rename], [], [_AC_LIBOBJ($ac_func)])
-m4trace:configure.in:749: -1- AH_OUTPUT([HAVE_RENAME], [/* Define to 1 if you have the `rename\' function. */
-#undef HAVE_RENAME])
-m4trace:configure.in:749: -1- AC_SUBST([LIB@&t@OBJS])
-m4trace:configure.in:756: -1- AC_CHECK_FUNCS([bcopy bzero confstr faccessat fnmatch \
-               getaddrinfo gethostbyname getservbyname getservent inet_aton \
-               imaxdiv memmove pathconf putenv raise regcomp regexec \
-               setenv setlinebuf setlocale setvbuf siginterrupt strchr \
-               sysconf syslog tcgetattr times ttyname tzset unsetenv])
-m4trace:configure.in:756: -1- AH_OUTPUT([HAVE_BCOPY], [/* Define to 1 if you have the `bcopy\' function. */
-#undef HAVE_BCOPY])
-m4trace:configure.in:756: -1- AH_OUTPUT([HAVE_BZERO], [/* Define to 1 if you have the `bzero\' function. */
-#undef HAVE_BZERO])
-m4trace:configure.in:756: -1- AH_OUTPUT([HAVE_CONFSTR], [/* Define to 1 if you have the `confstr\' function. */
-#undef HAVE_CONFSTR])
-m4trace:configure.in:756: -1- AH_OUTPUT([HAVE_FACCESSAT], [/* Define to 1 if you have the `faccessat\' function. */
-#undef HAVE_FACCESSAT])
-m4trace:configure.in:756: -1- AH_OUTPUT([HAVE_FNMATCH], [/* Define to 1 if you have the `fnmatch\' function. */
-#undef HAVE_FNMATCH])
-m4trace:configure.in:756: -1- AH_OUTPUT([HAVE_GETADDRINFO], [/* Define to 1 if you have the `getaddrinfo\' function. */
-#undef HAVE_GETADDRINFO])
-m4trace:configure.in:756: -1- AH_OUTPUT([HAVE_GETHOSTBYNAME], [/* Define to 1 if you have the `gethostbyname\' function. */
-#undef HAVE_GETHOSTBYNAME])
-m4trace:configure.in:756: -1- AH_OUTPUT([HAVE_GETSERVBYNAME], [/* Define to 1 if you have the `getservbyname\' function. */
-#undef HAVE_GETSERVBYNAME])
-m4trace:configure.in:756: -1- AH_OUTPUT([HAVE_GETSERVENT], [/* Define to 1 if you have the `getservent\' function. */
-#undef HAVE_GETSERVENT])
-m4trace:configure.in:756: -1- AH_OUTPUT([HAVE_INET_ATON], [/* Define to 1 if you have the `inet_aton\' function. */
-#undef HAVE_INET_ATON])
-m4trace:configure.in:756: -1- AH_OUTPUT([HAVE_IMAXDIV], [/* Define to 1 if you have the `imaxdiv\' function. */
-#undef HAVE_IMAXDIV])
-m4trace:configure.in:756: -1- AH_OUTPUT([HAVE_MEMMOVE], [/* Define to 1 if you have the `memmove\' function. */
-#undef HAVE_MEMMOVE])
-m4trace:configure.in:756: -1- AH_OUTPUT([HAVE_PATHCONF], [/* Define to 1 if you have the `pathconf\' function. */
-#undef HAVE_PATHCONF])
-m4trace:configure.in:756: -1- AH_OUTPUT([HAVE_PUTENV], [/* Define to 1 if you have the `putenv\' function. */
-#undef HAVE_PUTENV])
-m4trace:configure.in:756: -1- AH_OUTPUT([HAVE_RAISE], [/* Define to 1 if you have the `raise\' function. */
-#undef HAVE_RAISE])
-m4trace:configure.in:756: -1- AH_OUTPUT([HAVE_REGCOMP], [/* Define to 1 if you have the `regcomp\' function. */
-#undef HAVE_REGCOMP])
-m4trace:configure.in:756: -1- AH_OUTPUT([HAVE_REGEXEC], [/* Define to 1 if you have the `regexec\' function. */
-#undef HAVE_REGEXEC])
-m4trace:configure.in:756: -1- AH_OUTPUT([HAVE_SETENV], [/* Define to 1 if you have the `setenv\' function. */
-#undef HAVE_SETENV])
-m4trace:configure.in:756: -1- AH_OUTPUT([HAVE_SETLINEBUF], [/* Define to 1 if you have the `setlinebuf\' function. */
-#undef HAVE_SETLINEBUF])
-m4trace:configure.in:756: -1- AH_OUTPUT([HAVE_SETLOCALE], [/* Define to 1 if you have the `setlocale\' function. */
-#undef HAVE_SETLOCALE])
-m4trace:configure.in:756: -1- AH_OUTPUT([HAVE_SETVBUF], [/* Define to 1 if you have the `setvbuf\' function. */
-#undef HAVE_SETVBUF])
-m4trace:configure.in:756: -1- AH_OUTPUT([HAVE_SIGINTERRUPT], [/* Define to 1 if you have the `siginterrupt\' function. */
-#undef HAVE_SIGINTERRUPT])
-m4trace:configure.in:756: -1- AH_OUTPUT([HAVE_STRCHR], [/* Define to 1 if you have the `strchr\' function. */
-#undef HAVE_STRCHR])
-m4trace:configure.in:756: -1- AH_OUTPUT([HAVE_SYSCONF], [/* Define to 1 if you have the `sysconf\' function. */
-#undef HAVE_SYSCONF])
-m4trace:configure.in:756: -1- AH_OUTPUT([HAVE_SYSLOG], [/* Define to 1 if you have the `syslog\' function. */
-#undef HAVE_SYSLOG])
-m4trace:configure.in:756: -1- AH_OUTPUT([HAVE_TCGETATTR], [/* Define to 1 if you have the `tcgetattr\' function. */
-#undef HAVE_TCGETATTR])
-m4trace:configure.in:756: -1- AH_OUTPUT([HAVE_TIMES], [/* Define to 1 if you have the `times\' function. */
-#undef HAVE_TIMES])
-m4trace:configure.in:756: -1- AH_OUTPUT([HAVE_TTYNAME], [/* Define to 1 if you have the `ttyname\' function. */
-#undef HAVE_TTYNAME])
-m4trace:configure.in:756: -1- AH_OUTPUT([HAVE_TZSET], [/* Define to 1 if you have the `tzset\' function. */
-#undef HAVE_TZSET])
-m4trace:configure.in:756: -1- AH_OUTPUT([HAVE_UNSETENV], [/* Define to 1 if you have the `unsetenv\' function. */
-#undef HAVE_UNSETENV])
-m4trace:configure.in:758: -1- AC_CHECK_FUNCS([vasprintf asprintf])
-m4trace:configure.in:758: -1- AH_OUTPUT([HAVE_VASPRINTF], [/* Define to 1 if you have the `vasprintf\' function. */
-#undef HAVE_VASPRINTF])
-m4trace:configure.in:758: -1- AH_OUTPUT([HAVE_ASPRINTF], [/* Define to 1 if you have the `asprintf\' function. */
-#undef HAVE_ASPRINTF])
-m4trace:configure.in:759: -1- AC_CHECK_FUNCS([isascii isblank isgraph isprint isspace isxdigit])
-m4trace:configure.in:759: -1- AH_OUTPUT([HAVE_ISASCII], [/* Define to 1 if you have the `isascii\' function. */
-#undef HAVE_ISASCII])
-m4trace:configure.in:759: -1- AH_OUTPUT([HAVE_ISBLANK], [/* Define to 1 if you have the `isblank\' function. */
-#undef HAVE_ISBLANK])
-m4trace:configure.in:759: -1- AH_OUTPUT([HAVE_ISGRAPH], [/* Define to 1 if you have the `isgraph\' function. */
-#undef HAVE_ISGRAPH])
-m4trace:configure.in:759: -1- AH_OUTPUT([HAVE_ISPRINT], [/* Define to 1 if you have the `isprint\' function. */
-#undef HAVE_ISPRINT])
-m4trace:configure.in:759: -1- AH_OUTPUT([HAVE_ISSPACE], [/* Define to 1 if you have the `isspace\' function. */
-#undef HAVE_ISSPACE])
-m4trace:configure.in:759: -1- AH_OUTPUT([HAVE_ISXDIGIT], [/* Define to 1 if you have the `isxdigit\' function. */
-#undef HAVE_ISXDIGIT])
-m4trace:configure.in:760: -1- AC_CHECK_FUNCS([getpwent getpwnam getpwuid])
-m4trace:configure.in:760: -1- AH_OUTPUT([HAVE_GETPWENT], [/* Define to 1 if you have the `getpwent\' function. */
-#undef HAVE_GETPWENT])
-m4trace:configure.in:760: -1- AH_OUTPUT([HAVE_GETPWNAM], [/* Define to 1 if you have the `getpwnam\' function. */
-#undef HAVE_GETPWNAM])
-m4trace:configure.in:760: -1- AH_OUTPUT([HAVE_GETPWUID], [/* Define to 1 if you have the `getpwuid\' function. */
-#undef HAVE_GETPWUID])
-m4trace:configure.in:761: -1- AC_LIBSOURCE([getcwd.c])
-m4trace:configure.in:761: -1- AC_LIBSOURCE([memset.c])
-m4trace:configure.in:761: -1- AC_CHECK_FUNCS([getcwd memset], [], [_AC_LIBOBJ($ac_func)])
-m4trace:configure.in:761: -1- AH_OUTPUT([HAVE_GETCWD], [/* Define to 1 if you have the `getcwd\' function. */
-#undef HAVE_GETCWD])
-m4trace:configure.in:761: -1- AH_OUTPUT([HAVE_MEMSET], [/* Define to 1 if you have the `memset\' function. */
-#undef HAVE_MEMSET])
-m4trace:configure.in:761: -1- AC_SUBST([LIB@&t@OBJS])
-m4trace:configure.in:762: -1- AC_LIBSOURCE([strcasecmp.c])
-m4trace:configure.in:762: -1- AC_LIBSOURCE([strcasestr.c])
-m4trace:configure.in:762: -1- AC_LIBSOURCE([strerror.c])
-m4trace:configure.in:762: -1- AC_LIBSOURCE([strftime.c])
-m4trace:configure.in:762: -1- AC_LIBSOURCE([strnlen.c])
-m4trace:configure.in:762: -1- AC_LIBSOURCE([strpbrk.c])
-m4trace:configure.in:762: -1- AC_LIBSOURCE([strstr.c])
-m4trace:configure.in:762: -1- AC_CHECK_FUNCS([strcasecmp strcasestr strerror strftime strnlen strpbrk strstr], [], [_AC_LIBOBJ($ac_func)])
-m4trace:configure.in:762: -1- AH_OUTPUT([HAVE_STRCASECMP], [/* Define to 1 if you have the `strcasecmp\' function. */
-#undef HAVE_STRCASECMP])
-m4trace:configure.in:762: -1- AH_OUTPUT([HAVE_STRCASESTR], [/* Define to 1 if you have the `strcasestr\' function. */
-#undef HAVE_STRCASESTR])
-m4trace:configure.in:762: -1- AH_OUTPUT([HAVE_STRERROR], [/* Define to 1 if you have the `strerror\' function. */
-#undef HAVE_STRERROR])
-m4trace:configure.in:762: -1- AH_OUTPUT([HAVE_STRFTIME], [/* Define to 1 if you have the `strftime\' function. */
-#undef HAVE_STRFTIME])
-m4trace:configure.in:762: -1- AH_OUTPUT([HAVE_STRNLEN], [/* Define to 1 if you have the `strnlen\' function. */
-#undef HAVE_STRNLEN])
-m4trace:configure.in:762: -1- AH_OUTPUT([HAVE_STRPBRK], [/* Define to 1 if you have the `strpbrk\' function. */
-#undef HAVE_STRPBRK])
-m4trace:configure.in:762: -1- AH_OUTPUT([HAVE_STRSTR], [/* Define to 1 if you have the `strstr\' function. */
-#undef HAVE_STRSTR])
-m4trace:configure.in:762: -1- AC_SUBST([LIB@&t@OBJS])
-m4trace:configure.in:763: -1- AC_LIBSOURCE([strtod.c])
-m4trace:configure.in:763: -1- AC_LIBSOURCE([strtol.c])
-m4trace:configure.in:763: -1- AC_LIBSOURCE([strtoul.c])
-m4trace:configure.in:763: -1- AC_LIBSOURCE([strtoll.c])
-m4trace:configure.in:763: -1- AC_LIBSOURCE([strtoull.c])
-m4trace:configure.in:763: -1- AC_LIBSOURCE([strtoimax.c])
-m4trace:configure.in:763: -1- AC_LIBSOURCE([strtoumax.c])
-m4trace:configure.in:763: -1- AC_CHECK_FUNCS([strtod strtol strtoul strtoll strtoull strtoimax strtoumax], [], [_AC_LIBOBJ($ac_func)])
-m4trace:configure.in:763: -1- AH_OUTPUT([HAVE_STRTOD], [/* Define to 1 if you have the `strtod\' function. */
-#undef HAVE_STRTOD])
-m4trace:configure.in:763: -1- AH_OUTPUT([HAVE_STRTOL], [/* Define to 1 if you have the `strtol\' function. */
-#undef HAVE_STRTOL])
-m4trace:configure.in:763: -1- AH_OUTPUT([HAVE_STRTOUL], [/* Define to 1 if you have the `strtoul\' function. */
-#undef HAVE_STRTOUL])
-m4trace:configure.in:763: -1- AH_OUTPUT([HAVE_STRTOLL], [/* Define to 1 if you have the `strtoll\' function. */
-#undef HAVE_STRTOLL])
-m4trace:configure.in:763: -1- AH_OUTPUT([HAVE_STRTOULL], [/* Define to 1 if you have the `strtoull\' function. */
-#undef HAVE_STRTOULL])
-m4trace:configure.in:763: -1- AH_OUTPUT([HAVE_STRTOIMAX], [/* Define to 1 if you have the `strtoimax\' function. */
-#undef HAVE_STRTOIMAX])
-m4trace:configure.in:763: -1- AH_OUTPUT([HAVE_STRTOUMAX], [/* Define to 1 if you have the `strtoumax\' function. */
-#undef HAVE_STRTOUMAX])
-m4trace:configure.in:763: -1- AC_SUBST([LIB@&t@OBJS])
-m4trace:configure.in:764: -1- AC_LIBSOURCE([dprintf.c])
-m4trace:configure.in:764: -1- AC_CHECK_FUNCS([dprintf], [], [_AC_LIBOBJ($ac_func)])
-m4trace:configure.in:764: -1- AH_OUTPUT([HAVE_DPRINTF], [/* Define to 1 if you have the `dprintf\' function. */
-#undef HAVE_DPRINTF])
-m4trace:configure.in:764: -1- AC_SUBST([LIB@&t@OBJS])
-m4trace:configure.in:765: -1- AC_LIBSOURCE([strchrnul.c])
-m4trace:configure.in:765: -1- AC_CHECK_FUNCS([strchrnul], [], [_AC_LIBOBJ($ac_func)])
-m4trace:configure.in:765: -1- AH_OUTPUT([HAVE_STRCHRNUL], [/* Define to 1 if you have the `strchrnul\' function. */
-#undef HAVE_STRCHRNUL])
-m4trace:configure.in:765: -1- AC_SUBST([LIB@&t@OBJS])
-m4trace:configure.in:767: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DECL_AUDIT_USER_TTY])
-m4trace:configure.in:767: -1- AH_OUTPUT([HAVE_DECL_AUDIT_USER_TTY], [/* Define to 1 if you have the declaration of `AUDIT_USER_TTY\', and to 0 if
-   you don\'t. */
-#undef HAVE_DECL_AUDIT_USER_TTY])
-m4trace:configure.in:767: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DECL_AUDIT_USER_TTY])
-m4trace:configure.in:769: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DECL_CONFSTR])
-m4trace:configure.in:769: -1- AH_OUTPUT([HAVE_DECL_CONFSTR], [/* Define to 1 if you have the declaration of `confstr\', and to 0 if you
-   don\'t. */
-#undef HAVE_DECL_CONFSTR])
-m4trace:configure.in:769: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DECL_CONFSTR])
-m4trace:configure.in:770: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DECL_PRINTF])
-m4trace:configure.in:770: -1- AH_OUTPUT([HAVE_DECL_PRINTF], [/* Define to 1 if you have the declaration of `printf\', and to 0 if you don\'t.
-   */
-#undef HAVE_DECL_PRINTF])
-m4trace:configure.in:770: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DECL_PRINTF])
-m4trace:configure.in:771: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DECL_SBRK])
-m4trace:configure.in:771: -1- AH_OUTPUT([HAVE_DECL_SBRK], [/* Define to 1 if you have the declaration of `sbrk\', and to 0 if you don\'t.
-   */
-#undef HAVE_DECL_SBRK])
-m4trace:configure.in:771: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DECL_SBRK])
-m4trace:configure.in:772: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DECL_SETREGID])
-m4trace:configure.in:772: -1- AH_OUTPUT([HAVE_DECL_SETREGID], [/* Define to 1 if you have the declaration of `setregid\', and to 0 if you
-   don\'t. */
-#undef HAVE_DECL_SETREGID])
-m4trace:configure.in:772: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DECL_SETREGID])
-m4trace:configure.in:773: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DECL_STRCPY])
-m4trace:configure.in:773: -1- AH_OUTPUT([HAVE_DECL_STRCPY], [/* Define to 1 if you have the declaration of `strcpy\', and to 0 if you don\'t.
-   */
-#undef HAVE_DECL_STRCPY])
-m4trace:configure.in:773: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DECL_STRCPY])
-m4trace:configure.in:774: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DECL_STRSIGNAL])
-m4trace:configure.in:774: -1- AH_OUTPUT([HAVE_DECL_STRSIGNAL], [/* Define to 1 if you have the declaration of `strsignal\', and to 0 if you
-   don\'t. */
-#undef HAVE_DECL_STRSIGNAL])
-m4trace:configure.in:774: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DECL_STRSIGNAL])
-m4trace:configure.in:791: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DECL_STRTOLD])
-m4trace:configure.in:791: -1- AH_OUTPUT([HAVE_DECL_STRTOLD], [/* Define to 1 if you have the declaration of `strtold\', and to 0 if you
-   don\'t. */
-#undef HAVE_DECL_STRTOLD])
-m4trace:configure.in:791: -1- _m4_warn([obsolete], [The macro `AC_TRY_COMPILE' is obsolete.
-You should run autoupdate.], [autoconf/general.m4:2180: AC_TRY_COMPILE is expanded from...
-autoconf/general.m4:1799: AC_CACHE_VAL is expanded from...
-autoconf/general.m4:2352: AC_CHECK_DECL is expanded from...
-autoconf/general.m4:2372: AC_CHECK_DECLS is expanded from...
-configure.in:791: the top level])
-m4trace:configure.in:791: -1- AC_DEFINE_TRACE_LITERAL([STRTOLD_BROKEN])
-m4trace:configure.in:791: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DECL_STRTOLD])
-m4trace:configure.in:793: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete.
-You should run autoupdate.], [autoconf/general.m4:2223: AC_TRY_LINK is expanded from...
-autoconf/general.m4:1799: AC_CACHE_VAL is expanded from...
-autoconf/general.m4:1808: AC_CACHE_CHECK is expanded from...
-aclocal.m4:125: BASH_CHECK_DECL is expanded from...
-configure.in:793: the top level])
-m4trace:configure.in:794: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete.
-You should run autoupdate.], [autoconf/general.m4:2223: AC_TRY_LINK is expanded from...
-autoconf/general.m4:1799: AC_CACHE_VAL is expanded from...
-autoconf/general.m4:1808: AC_CACHE_CHECK is expanded from...
-aclocal.m4:125: BASH_CHECK_DECL is expanded from...
-configure.in:794: the top level])
-m4trace:configure.in:795: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete.
-You should run autoupdate.], [autoconf/general.m4:2223: AC_TRY_LINK is expanded from...
-autoconf/general.m4:1799: AC_CACHE_VAL is expanded from...
-autoconf/general.m4:1808: AC_CACHE_CHECK is expanded from...
-aclocal.m4:125: BASH_CHECK_DECL is expanded from...
-configure.in:795: the top level])
-m4trace:configure.in:796: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete.
-You should run autoupdate.], [autoconf/general.m4:2223: AC_TRY_LINK is expanded from...
-autoconf/general.m4:1799: AC_CACHE_VAL is expanded from...
-autoconf/general.m4:1808: AC_CACHE_CHECK is expanded from...
-aclocal.m4:125: BASH_CHECK_DECL is expanded from...
-configure.in:796: the top level])
-m4trace:configure.in:797: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete.
-You should run autoupdate.], [autoconf/general.m4:2223: AC_TRY_LINK is expanded from...
-autoconf/general.m4:1799: AC_CACHE_VAL is expanded from...
-autoconf/general.m4:1808: AC_CACHE_CHECK is expanded from...
-aclocal.m4:125: BASH_CHECK_DECL is expanded from...
-configure.in:797: the top level])
-m4trace:configure.in:798: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete.
-You should run autoupdate.], [autoconf/general.m4:2223: AC_TRY_LINK is expanded from...
-autoconf/general.m4:1799: AC_CACHE_VAL is expanded from...
-autoconf/general.m4:1808: AC_CACHE_CHECK is expanded from...
-aclocal.m4:125: BASH_CHECK_DECL is expanded from...
-configure.in:798: the top level])
-m4trace:configure.in:800: -1- AC_FUNC_MKTIME
-m4trace:configure.in:800: -1- AC_CHECK_HEADERS([stdlib.h sys/time.h unistd.h])
-m4trace:configure.in:800: -1- AH_OUTPUT([HAVE_STDLIB_H], [/* Define to 1 if you have the <stdlib.h> header file. */
-#undef HAVE_STDLIB_H])
-m4trace:configure.in:800: -1- AH_OUTPUT([HAVE_SYS_TIME_H], [/* Define to 1 if you have the <sys/time.h> header file. */
-#undef HAVE_SYS_TIME_H])
-m4trace:configure.in:800: -1- AH_OUTPUT([HAVE_UNISTD_H], [/* Define to 1 if you have the <unistd.h> header file. */
-#undef HAVE_UNISTD_H])
-m4trace:configure.in:800: -1- AC_CHECK_FUNCS([alarm])
-m4trace:configure.in:800: -1- AH_OUTPUT([HAVE_ALARM], [/* Define to 1 if you have the `alarm\' function. */
-#undef HAVE_ALARM])
-m4trace:configure.in:800: -1- AC_LIBSOURCE([mktime.c])
-m4trace:configure.in:800: -1- AC_SUBST([LIB@&t@OBJS])
-m4trace:configure.in:807: -1- AC_CHECK_HEADERS([argz.h errno.h fcntl.h malloc.h stdio_ext.h])
-m4trace:configure.in:807: -1- AH_OUTPUT([HAVE_ARGZ_H], [/* Define to 1 if you have the <argz.h> header file. */
-#undef HAVE_ARGZ_H])
-m4trace:configure.in:807: -1- AH_OUTPUT([HAVE_ERRNO_H], [/* Define to 1 if you have the <errno.h> header file. */
-#undef HAVE_ERRNO_H])
-m4trace:configure.in:807: -1- AH_OUTPUT([HAVE_FCNTL_H], [/* Define to 1 if you have the <fcntl.h> header file. */
-#undef HAVE_FCNTL_H])
-m4trace:configure.in:807: -1- AH_OUTPUT([HAVE_MALLOC_H], [/* Define to 1 if you have the <malloc.h> header file. */
-#undef HAVE_MALLOC_H])
-m4trace:configure.in:807: -1- AH_OUTPUT([HAVE_STDIO_EXT_H], [/* Define to 1 if you have the <stdio_ext.h> header file. */
-#undef HAVE_STDIO_EXT_H])
-m4trace:configure.in:810: -1- AC_FUNC_MMAP
-m4trace:configure.in:810: -1- AC_CHECK_HEADERS([stdlib.h unistd.h])
-m4trace:configure.in:810: -1- AH_OUTPUT([HAVE_STDLIB_H], [/* Define to 1 if you have the <stdlib.h> header file. */
-#undef HAVE_STDLIB_H])
-m4trace:configure.in:810: -1- AH_OUTPUT([HAVE_UNISTD_H], [/* Define to 1 if you have the <unistd.h> header file. */
-#undef HAVE_UNISTD_H])
-m4trace:configure.in:810: -1- AC_CHECK_FUNCS([getpagesize])
-m4trace:configure.in:810: -1- AH_OUTPUT([HAVE_GETPAGESIZE], [/* Define to 1 if you have the `getpagesize\' function. */
-#undef HAVE_GETPAGESIZE])
-m4trace:configure.in:810: -1- AC_DEFINE_TRACE_LITERAL([HAVE_MMAP])
-m4trace:configure.in:810: -1- AH_OUTPUT([HAVE_MMAP], [/* Define to 1 if you have a working `mmap\' system call. */
-#undef HAVE_MMAP])
-m4trace:configure.in:812: -1- AC_CHECK_FUNCS([__argz_count __argz_next __argz_stringify dcgettext mempcpy \
-               munmap stpcpy strcspn strdup])
-m4trace:configure.in:812: -1- AH_OUTPUT([HAVE___ARGZ_COUNT], [/* Define to 1 if you have the `__argz_count\' function. */
-#undef HAVE___ARGZ_COUNT])
-m4trace:configure.in:812: -1- AH_OUTPUT([HAVE___ARGZ_NEXT], [/* Define to 1 if you have the `__argz_next\' function. */
-#undef HAVE___ARGZ_NEXT])
-m4trace:configure.in:812: -1- AH_OUTPUT([HAVE___ARGZ_STRINGIFY], [/* Define to 1 if you have the `__argz_stringify\' function. */
-#undef HAVE___ARGZ_STRINGIFY])
-m4trace:configure.in:812: -1- AH_OUTPUT([HAVE_DCGETTEXT], [/* Define to 1 if you have the `dcgettext\' function. */
-#undef HAVE_DCGETTEXT])
-m4trace:configure.in:812: -1- AH_OUTPUT([HAVE_MEMPCPY], [/* Define to 1 if you have the `mempcpy\' function. */
-#undef HAVE_MEMPCPY])
-m4trace:configure.in:812: -1- AH_OUTPUT([HAVE_MUNMAP], [/* Define to 1 if you have the `munmap\' function. */
-#undef HAVE_MUNMAP])
-m4trace:configure.in:812: -1- AH_OUTPUT([HAVE_STPCPY], [/* Define to 1 if you have the `stpcpy\' function. */
-#undef HAVE_STPCPY])
-m4trace:configure.in:812: -1- AH_OUTPUT([HAVE_STRCSPN], [/* Define to 1 if you have the `strcspn\' function. */
-#undef HAVE_STRCSPN])
-m4trace:configure.in:812: -1- AH_OUTPUT([HAVE_STRDUP], [/* Define to 1 if you have the `strdup\' function. */
-#undef HAVE_STRDUP])
-m4trace:configure.in:820: -1- AC_SUBST([INTL_DEP])
-m4trace:configure.in:821: -1- AC_SUBST([INTL_INC])
-m4trace:configure.in:822: -1- AC_SUBST([LIBINTL_H])
-m4trace:configure.in:828: -1- AC_CHECK_HEADERS([wctype.h])
-m4trace:configure.in:828: -1- AH_OUTPUT([HAVE_WCTYPE_H], [/* Define to 1 if you have the <wctype.h> header file. */
-#undef HAVE_WCTYPE_H])
-m4trace:configure.in:828: -1- AC_CHECK_HEADERS([wchar.h])
-m4trace:configure.in:828: -1- AH_OUTPUT([HAVE_WCHAR_H], [/* Define to 1 if you have the <wchar.h> header file. */
-#undef HAVE_WCHAR_H])
-m4trace:configure.in:828: -1- AC_CHECK_HEADERS([langinfo.h])
-m4trace:configure.in:828: -1- AH_OUTPUT([HAVE_LANGINFO_H], [/* Define to 1 if you have the <langinfo.h> header file. */
-#undef HAVE_LANGINFO_H])
-m4trace:configure.in:828: -2- AC_DEFINE_TRACE_LITERAL([HAVE_MBRLEN])
-m4trace:configure.in:828: -2- AC_DEFINE_TRACE_LITERAL([HAVE_MBSCMP])
-m4trace:configure.in:828: -2- AC_DEFINE_TRACE_LITERAL([HAVE_MBSCMP])
-m4trace:configure.in:828: -2- AC_DEFINE_TRACE_LITERAL([HAVE_MBSNRTOWCS])
-m4trace:configure.in:828: -2- AC_DEFINE_TRACE_LITERAL([HAVE_MBSRTOWCS])
-m4trace:configure.in:828: -1- AC_LIBSOURCE([mbschr.c])
-m4trace:configure.in:828: -1- AC_CHECK_FUNCS([mbschr], [], [_AC_LIBOBJ($ac_func)])
-m4trace:configure.in:828: -1- AH_OUTPUT([HAVE_MBSCHR], [/* Define to 1 if you have the `mbschr\' function. */
-#undef HAVE_MBSCHR])
-m4trace:configure.in:828: -1- AC_SUBST([LIB@&t@OBJS])
-m4trace:configure.in:828: -2- AC_DEFINE_TRACE_LITERAL([HAVE_WCRTOMB])
-m4trace:configure.in:828: -2- AC_DEFINE_TRACE_LITERAL([HAVE_WCSCOLL])
-m4trace:configure.in:828: -2- AC_DEFINE_TRACE_LITERAL([HAVE_WCSDUP])
-m4trace:configure.in:828: -2- AC_DEFINE_TRACE_LITERAL([HAVE_WCWIDTH])
-m4trace:configure.in:828: -2- AC_DEFINE_TRACE_LITERAL([HAVE_WCTYPE])
-m4trace:configure.in:828: -1- AC_LIBSOURCE([wcswidth.c])
-m4trace:configure.in:828: -1- AC_CHECK_FUNCS([wcswidth], [], [_AC_LIBOBJ($ac_func)])
-m4trace:configure.in:828: -1- AH_OUTPUT([HAVE_WCSWIDTH], [/* Define to 1 if you have the `wcswidth\' function. */
-#undef HAVE_WCSWIDTH])
-m4trace:configure.in:828: -1- AC_SUBST([LIB@&t@OBJS])
-m4trace:configure.in:828: -1- AC_FUNC_MBRTOWC
-m4trace:configure.in:828: -1- AC_DEFINE_TRACE_LITERAL([HAVE_MBRTOWC])
-m4trace:configure.in:828: -1- AH_OUTPUT([HAVE_MBRTOWC], [/* Define to 1 if mbrtowc and mbstate_t are properly declared. */
-#undef HAVE_MBRTOWC])
-m4trace:configure.in:828: -1- AC_DEFINE_TRACE_LITERAL([HAVE_MBSTATE_T])
-m4trace:configure.in:828: -1- AC_CHECK_FUNCS([iswlower iswupper towlower towupper iswctype])
-m4trace:configure.in:828: -1- AH_OUTPUT([HAVE_ISWLOWER], [/* Define to 1 if you have the `iswlower\' function. */
-#undef HAVE_ISWLOWER])
-m4trace:configure.in:828: -1- AH_OUTPUT([HAVE_ISWUPPER], [/* Define to 1 if you have the `iswupper\' function. */
-#undef HAVE_ISWUPPER])
-m4trace:configure.in:828: -1- AH_OUTPUT([HAVE_TOWLOWER], [/* Define to 1 if you have the `towlower\' function. */
-#undef HAVE_TOWLOWER])
-m4trace:configure.in:828: -1- AH_OUTPUT([HAVE_TOWUPPER], [/* Define to 1 if you have the `towupper\' function. */
-#undef HAVE_TOWUPPER])
-m4trace:configure.in:828: -1- AH_OUTPUT([HAVE_ISWCTYPE], [/* Define to 1 if you have the `iswctype\' function. */
-#undef HAVE_ISWCTYPE])
-m4trace:configure.in:828: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete.
-You should run autoupdate.], [autoconf/general.m4:2223: AC_TRY_LINK is expanded from...
-autoconf/general.m4:1799: AC_CACHE_VAL is expanded from...
-autoconf/general.m4:1808: AC_CACHE_CHECK is expanded from...
-aclocal.m4:1799: BASH_CHECK_MULTIBYTE is expanded from...
-configure.in:828: the top level])
-m4trace:configure.in:828: -1- AC_DEFINE_TRACE_LITERAL([HAVE_LANGINFO_CODESET])
-m4trace:configure.in:828: -1- _m4_warn([obsolete], [The macro `AC_TRY_COMPILE' is obsolete.
-You should run autoupdate.], [autoconf/general.m4:2180: AC_TRY_COMPILE is expanded from...
-autoconf/general.m4:1799: AC_CACHE_VAL is expanded from...
-autoconf/general.m4:1808: AC_CACHE_CHECK is expanded from...
-aclocal.m4:1799: BASH_CHECK_MULTIBYTE is expanded from...
-configure.in:828: the top level])
-m4trace:configure.in:828: -1- AC_DEFINE_TRACE_LITERAL([HAVE_WCHAR_T])
-m4trace:configure.in:828: -1- AH_OUTPUT([HAVE_WCHAR_T], [/* systems should define this type here */
-#undef HAVE_WCHAR_T])
-m4trace:configure.in:828: -1- _m4_warn([obsolete], [The macro `AC_TRY_COMPILE' is obsolete.
-You should run autoupdate.], [autoconf/general.m4:2180: AC_TRY_COMPILE is expanded from...
-autoconf/general.m4:1799: AC_CACHE_VAL is expanded from...
-autoconf/general.m4:1808: AC_CACHE_CHECK is expanded from...
-aclocal.m4:1799: BASH_CHECK_MULTIBYTE is expanded from...
-configure.in:828: the top level])
-m4trace:configure.in:828: -1- AC_DEFINE_TRACE_LITERAL([HAVE_WCTYPE_T])
-m4trace:configure.in:828: -1- AH_OUTPUT([HAVE_WCTYPE_T], [/* systems should define this type here */
-#undef HAVE_WCTYPE_T])
-m4trace:configure.in:828: -1- _m4_warn([obsolete], [The macro `AC_TRY_COMPILE' is obsolete.
-You should run autoupdate.], [autoconf/general.m4:2180: AC_TRY_COMPILE is expanded from...
-autoconf/general.m4:1799: AC_CACHE_VAL is expanded from...
-autoconf/general.m4:1808: AC_CACHE_CHECK is expanded from...
-aclocal.m4:1799: BASH_CHECK_MULTIBYTE is expanded from...
-configure.in:828: the top level])
-m4trace:configure.in:828: -1- AC_DEFINE_TRACE_LITERAL([HAVE_WINT_T])
-m4trace:configure.in:828: -1- AH_OUTPUT([HAVE_WINT_T], [/* systems should define this type here */
-#undef HAVE_WINT_T])
-m4trace:configure.in:828: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete.
-You should run autoupdate.], [autoconf/general.m4:2289: AC_TRY_RUN is expanded from...
-autoconf/general.m4:1799: AC_CACHE_VAL is expanded from...
-autoconf/general.m4:1808: AC_CACHE_CHECK is expanded from...
-aclocal.m4:1799: BASH_CHECK_MULTIBYTE is expanded from...
-configure.in:828: the top level])
-m4trace:configure.in:828: -1- _m4_warn([cross], [AC_RUN_IFELSE called without default to allow cross compiling], [autoconf/general.m4:2281: AC_RUN_IFELSE is expanded from...
-autoconf/general.m4:2289: AC_TRY_RUN is expanded from...
-autoconf/general.m4:1799: AC_CACHE_VAL is expanded from...
-autoconf/general.m4:1808: AC_CACHE_CHECK is expanded from...
-aclocal.m4:1799: BASH_CHECK_MULTIBYTE is expanded from...
-configure.in:828: the top level])
-m4trace:configure.in:828: -1- AC_DEFINE_TRACE_LITERAL([WCWIDTH_BROKEN])
-m4trace:configure.in:828: -1- AH_OUTPUT([WCWIDTH_BROKEN], [/* wcwidth is usually not broken */
-#undef WCWIDTH_BROKEN])
-m4trace:configure.in:828: -1- AC_CHECK_FUNCS([locale_charset])
-m4trace:configure.in:828: -1- AH_OUTPUT([HAVE_LOCALE_CHARSET], [/* Define to 1 if you have the `locale_charset\' function. */
-#undef HAVE_LOCALE_CHARSET])
-m4trace:configure.in:832: -1- AC_CHECK_LIB([dl], [dlopen])
-m4trace:configure.in:832: -1- AH_OUTPUT([HAVE_LIBDL], [/* Define to 1 if you have the `dl\' library (-ldl). */
-#undef HAVE_LIBDL])
-m4trace:configure.in:832: -1- AC_DEFINE_TRACE_LITERAL([HAVE_LIBDL])
-m4trace:configure.in:833: -1- AC_CHECK_FUNCS([dlopen dlclose dlsym])
-m4trace:configure.in:833: -1- AH_OUTPUT([HAVE_DLOPEN], [/* Define to 1 if you have the `dlopen\' function. */
-#undef HAVE_DLOPEN])
-m4trace:configure.in:833: -1- AH_OUTPUT([HAVE_DLCLOSE], [/* Define to 1 if you have the `dlclose\' function. */
-#undef HAVE_DLCLOSE])
-m4trace:configure.in:833: -1- AH_OUTPUT([HAVE_DLSYM], [/* Define to 1 if you have the `dlsym\' function. */
-#undef HAVE_DLSYM])
-m4trace:configure.in:837: -1- AC_DECL_SYS_SIGLIST
-m4trace:configure.in:837: -1- _m4_warn([obsolete], [The macro `AC_DECL_SYS_SIGLIST' is obsolete.
-You should run autoupdate.], [autoconf/specific.m4:70: AC_DECL_SYS_SIGLIST is expanded from...
-configure.in:837: the top level])
-m4trace:configure.in:837: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DECL_SYS_SIGLIST])
-m4trace:configure.in:837: -1- AH_OUTPUT([HAVE_DECL_SYS_SIGLIST], [/* Define to 1 if you have the declaration of `sys_siglist\', and to 0 if you
-   don\'t. */
-#undef HAVE_DECL_SYS_SIGLIST])
-m4trace:configure.in:837: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DECL_SYS_SIGLIST])
-m4trace:configure.in:841: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete.
-You should run autoupdate.], [autoconf/general.m4:2223: AC_TRY_LINK is expanded from...
-autoconf/general.m4:1799: AC_CACHE_VAL is expanded from...
-autoconf/general.m4:1808: AC_CACHE_CHECK is expanded from...
-aclocal.m4:577: BASH_FUNC_INET_ATON is expanded from...
-configure.in:841: the top level])
-m4trace:configure.in:841: -1- AC_DEFINE_TRACE_LITERAL([HAVE_INET_ATON])
-m4trace:configure.in:841: -1- AC_LIBSOURCE([inet_aton.c])
-m4trace:configure.in:841: -1- AC_SUBST([LIB@&t@OBJS])
-m4trace:configure.in:847: -1- AC_CHECK_LIB([sun], [getpwent])
-m4trace:configure.in:847: -1- AH_OUTPUT([HAVE_LIBSUN], [/* Define to 1 if you have the `sun\' library (-lsun). */
-#undef HAVE_LIBSUN])
-m4trace:configure.in:847: -1- AC_DEFINE_TRACE_LITERAL([HAVE_LIBSUN])
-m4trace:configure.in:852: -1- AC_CHECK_LIB([socket], [getpeername], [bash_cv_have_socklib=yes], [bash_cv_have_socklib=no], [-lnsl])
-m4trace:configure.in:852: -1- AC_CHECK_LIB([nsl], [t_open], [bash_cv_have_libnsl=yes], [bash_cv_have_libnsl=no])
-m4trace:configure.in:852: -1- AC_DEFINE_TRACE_LITERAL([HAVE_LIBSOCKET])
-m4trace:configure.in:852: -1- AC_DEFINE_TRACE_LITERAL([HAVE_GETPEERNAME])
-m4trace:configure.in:856: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete.
-You should run autoupdate.], [autoconf/general.m4:2223: AC_TRY_LINK is expanded from...
-autoconf/general.m4:1799: AC_CACHE_VAL is expanded from...
-aclocal.m4:752: BASH_FUNC_GETHOSTBYNAME is expanded from...
-configure.in:856: the top level])
-m4trace:configure.in:856: -1- AC_DEFINE_TRACE_LITERAL([HAVE_GETHOSTBYNAME])
-m4trace:configure.in:860: -1- AC_TYPE_UID_T
-m4trace:configure.in:860: -1- AC_DEFINE_TRACE_LITERAL([uid_t])
-m4trace:configure.in:860: -1- AH_OUTPUT([uid_t], [/* Define to `int\' if <sys/types.h> doesn\'t define. */
-#undef uid_t])
-m4trace:configure.in:860: -1- AC_DEFINE_TRACE_LITERAL([gid_t])
-m4trace:configure.in:860: -1- AH_OUTPUT([gid_t], [/* Define to `int\' if <sys/types.h> doesn\'t define. */
-#undef gid_t])
-m4trace:configure.in:860: -1- AC_DEFINE_TRACE_LITERAL([GETGROUPS_T])
-m4trace:configure.in:860: -1- AH_OUTPUT([GETGROUPS_T], [/* Define to the type of elements in the array set by `getgroups\'. Usually
-   this is either `int\' or `gid_t\'. */
-#undef GETGROUPS_T])
-m4trace:configure.in:861: -1- AC_TYPE_OFF_T
-m4trace:configure.in:861: -1- AC_DEFINE_TRACE_LITERAL([off_t])
-m4trace:configure.in:861: -1- AH_OUTPUT([off_t], [/* Define to `long\' if <sys/types.h> does not define. */
-#undef off_t])
-m4trace:configure.in:862: -1- AC_TYPE_MODE_T
-m4trace:configure.in:862: -1- AC_DEFINE_TRACE_LITERAL([mode_t])
-m4trace:configure.in:862: -1- AH_OUTPUT([mode_t], [/* Define to `int\' if <sys/types.h> does not define. */
-#undef mode_t])
-m4trace:configure.in:863: -1- AC_TYPE_UID_T
-m4trace:configure.in:863: -1- AC_DEFINE_TRACE_LITERAL([uid_t])
-m4trace:configure.in:863: -1- AH_OUTPUT([uid_t], [/* Define to `int\' if <sys/types.h> doesn\'t define. */
-#undef uid_t])
-m4trace:configure.in:863: -1- AC_DEFINE_TRACE_LITERAL([gid_t])
-m4trace:configure.in:863: -1- AH_OUTPUT([gid_t], [/* Define to `int\' if <sys/types.h> doesn\'t define. */
-#undef gid_t])
-m4trace:configure.in:864: -1- AC_TYPE_PID_T
-m4trace:configure.in:864: -1- AC_DEFINE_TRACE_LITERAL([pid_t])
-m4trace:configure.in:864: -1- AH_OUTPUT([pid_t], [/* Define to `int\' if <sys/types.h> does not define. */
-#undef pid_t])
-m4trace:configure.in:865: -1- AC_TYPE_SIZE_T
-m4trace:configure.in:865: -1- AC_DEFINE_TRACE_LITERAL([size_t])
-m4trace:configure.in:865: -1- AH_OUTPUT([size_t], [/* Define to `unsigned\' if <sys/types.h> does not define. */
-#undef size_t])
-m4trace:configure.in:866: -1- AC_DEFINE_TRACE_LITERAL([ssize_t])
-m4trace:configure.in:866: -1- AH_OUTPUT([ssize_t], [/* Define to `int\' if <sys/types.h> does not define. */
-#undef ssize_t])
-m4trace:configure.in:867: -1- AC_DEFINE_TRACE_LITERAL([time_t])
-m4trace:configure.in:867: -1- AH_OUTPUT([time_t], [/* Define to `long\' if <sys/types.h> does not define. */
-#undef time_t])
-m4trace:configure.in:869: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete.
-You should run autoupdate.], [autoconf/general.m4:2223: AC_TRY_LINK is expanded from...
-autoconf/general.m4:1799: AC_CACHE_VAL is expanded from...
-autoconf/general.m4:1808: AC_CACHE_CHECK is expanded from...
-aclocal.m4:484: BASH_TYPE_LONG_LONG is expanded from...
-configure.in:869: the top level])
-m4trace:configure.in:869: -1- AC_DEFINE_TRACE_LITERAL([HAVE_LONG_LONG])
-m4trace:configure.in:870: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete.
-You should run autoupdate.], [autoconf/general.m4:2223: AC_TRY_LINK is expanded from...
-autoconf/general.m4:1799: AC_CACHE_VAL is expanded from...
-autoconf/general.m4:1808: AC_CACHE_CHECK is expanded from...
-aclocal.m4:499: BASH_TYPE_UNSIGNED_LONG_LONG is expanded from...
-configure.in:870: the top level])
-m4trace:configure.in:870: -1- AC_DEFINE_TRACE_LITERAL([HAVE_UNSIGNED_LONG_LONG])
-m4trace:configure.in:872: -1- AC_TYPE_SIGNAL
-m4trace:configure.in:872: -1- AC_DEFINE_TRACE_LITERAL([RETSIGTYPE])
-m4trace:configure.in:872: -1- AH_OUTPUT([RETSIGTYPE], [/* Define as the return type of signal handlers (`int\' or `void\'). */
-#undef RETSIGTYPE])
-m4trace:configure.in:873: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete.
-You should run autoupdate.], [autoconf/general.m4:2223: AC_TRY_LINK is expanded from...
-autoconf/general.m4:1799: AC_CACHE_VAL is expanded from...
-autoconf/general.m4:1808: AC_CACHE_CHECK is expanded from...
-aclocal.m4:547: BASH_TYPE_SIG_ATOMIC_T is expanded from...
-configure.in:873: the top level])
-m4trace:configure.in:873: -1- AC_DEFINE_TRACE_LITERAL([sig_atomic_t])
-m4trace:configure.in:873: -1- AH_OUTPUT([sig_atomic_t], [/* Define to `int\' if <sys/types.h> does not define. */
-#undef sig_atomic_t])
-m4trace:configure.in:875: -1- _m4_warn([cross], [AC_RUN_IFELSE called without default to allow cross compiling], [autoconf/general.m4:2281: AC_RUN_IFELSE is expanded from...
-autoconf/general.m4:1799: AC_CACHE_VAL is expanded from...
-autoconf/general.m4:1808: AC_CACHE_CHECK is expanded from...
-autoconf/types.m4:405: AC_CHECK_SIZEOF is expanded from...
-configure.in:875: the top level])
-m4trace:configure.in:875: -1- AC_DEFINE_TRACE_LITERAL([SIZEOF_CHAR])
-m4trace:configure.in:875: -1- AH_OUTPUT([SIZEOF_CHAR], [/* The size of a `char\', as computed by sizeof. */
-#undef SIZEOF_CHAR])
-m4trace:configure.in:876: -1- _m4_warn([cross], [AC_RUN_IFELSE called without default to allow cross compiling], [autoconf/general.m4:2281: AC_RUN_IFELSE is expanded from...
-autoconf/general.m4:1799: AC_CACHE_VAL is expanded from...
-autoconf/general.m4:1808: AC_CACHE_CHECK is expanded from...
-autoconf/types.m4:405: AC_CHECK_SIZEOF is expanded from...
-configure.in:876: the top level])
-m4trace:configure.in:876: -1- AC_DEFINE_TRACE_LITERAL([SIZEOF_SHORT])
-m4trace:configure.in:876: -1- AH_OUTPUT([SIZEOF_SHORT], [/* The size of a `short\', as computed by sizeof. */
-#undef SIZEOF_SHORT])
-m4trace:configure.in:877: -1- _m4_warn([cross], [AC_RUN_IFELSE called without default to allow cross compiling], [autoconf/general.m4:2281: AC_RUN_IFELSE is expanded from...
-autoconf/general.m4:1799: AC_CACHE_VAL is expanded from...
-autoconf/general.m4:1808: AC_CACHE_CHECK is expanded from...
-autoconf/types.m4:405: AC_CHECK_SIZEOF is expanded from...
-configure.in:877: the top level])
-m4trace:configure.in:877: -1- AC_DEFINE_TRACE_LITERAL([SIZEOF_INT])
-m4trace:configure.in:877: -1- AH_OUTPUT([SIZEOF_INT], [/* The size of a `int\', as computed by sizeof. */
-#undef SIZEOF_INT])
-m4trace:configure.in:878: -1- _m4_warn([cross], [AC_RUN_IFELSE called without default to allow cross compiling], [autoconf/general.m4:2281: AC_RUN_IFELSE is expanded from...
-autoconf/general.m4:1799: AC_CACHE_VAL is expanded from...
-autoconf/general.m4:1808: AC_CACHE_CHECK is expanded from...
-autoconf/types.m4:405: AC_CHECK_SIZEOF is expanded from...
-configure.in:878: the top level])
-m4trace:configure.in:878: -1- AC_DEFINE_TRACE_LITERAL([SIZEOF_LONG])
-m4trace:configure.in:878: -1- AH_OUTPUT([SIZEOF_LONG], [/* The size of a `long\', as computed by sizeof. */
-#undef SIZEOF_LONG])
-m4trace:configure.in:879: -1- _m4_warn([cross], [AC_RUN_IFELSE called without default to allow cross compiling], [autoconf/general.m4:2281: AC_RUN_IFELSE is expanded from...
-autoconf/general.m4:1799: AC_CACHE_VAL is expanded from...
-autoconf/general.m4:1808: AC_CACHE_CHECK is expanded from...
-autoconf/types.m4:405: AC_CHECK_SIZEOF is expanded from...
-configure.in:879: the top level])
-m4trace:configure.in:879: -1- AC_DEFINE_TRACE_LITERAL([SIZEOF_CHAR_P])
-m4trace:configure.in:879: -1- AH_OUTPUT([SIZEOF_CHAR_P], [/* The size of a `char *\', as computed by sizeof. */
-#undef SIZEOF_CHAR_P])
-m4trace:configure.in:880: -1- _m4_warn([cross], [AC_RUN_IFELSE called without default to allow cross compiling], [autoconf/general.m4:2281: AC_RUN_IFELSE is expanded from...
-autoconf/general.m4:1799: AC_CACHE_VAL is expanded from...
-autoconf/general.m4:1808: AC_CACHE_CHECK is expanded from...
-autoconf/types.m4:405: AC_CHECK_SIZEOF is expanded from...
-configure.in:880: the top level])
-m4trace:configure.in:880: -1- AC_DEFINE_TRACE_LITERAL([SIZEOF_DOUBLE])
-m4trace:configure.in:880: -1- AH_OUTPUT([SIZEOF_DOUBLE], [/* The size of a `double\', as computed by sizeof. */
-#undef SIZEOF_DOUBLE])
-m4trace:configure.in:881: -1- _m4_warn([cross], [AC_RUN_IFELSE called without default to allow cross compiling], [autoconf/general.m4:2281: AC_RUN_IFELSE is expanded from...
-autoconf/general.m4:1799: AC_CACHE_VAL is expanded from...
-autoconf/general.m4:1808: AC_CACHE_CHECK is expanded from...
-autoconf/types.m4:405: AC_CHECK_SIZEOF is expanded from...
-configure.in:881: the top level])
-m4trace:configure.in:881: -1- AC_DEFINE_TRACE_LITERAL([SIZEOF_LONG_LONG])
-m4trace:configure.in:881: -1- AH_OUTPUT([SIZEOF_LONG_LONG], [/* The size of a `long long\', as computed by sizeof. */
-#undef SIZEOF_LONG_LONG])
-m4trace:configure.in:883: -1- AC_DEFINE_TRACE_LITERAL([u_int])
-m4trace:configure.in:883: -1- AH_OUTPUT([u_int], [/* Define to `unsigned int\' if <sys/types.h> does not define. */
-#undef u_int])
-m4trace:configure.in:884: -1- AC_DEFINE_TRACE_LITERAL([u_long])
-m4trace:configure.in:884: -1- AH_OUTPUT([u_long], [/* Define to `unsigned long\' if <sys/types.h> does not define. */
-#undef u_long])
-m4trace:configure.in:886: -1- AC_DEFINE_TRACE_LITERAL([bits16_t])
-m4trace:configure.in:886: -1- AH_OUTPUT([bits16_t], [/* Define to `short\' if <sys/types.h> does not define. */
-#undef bits16_t])
-m4trace:configure.in:886: -1- AC_DEFINE_TRACE_LITERAL([bits16_t])
-m4trace:configure.in:886: -1- AH_OUTPUT([bits16_t], [/* Define to `char\' if <sys/types.h> does not define. */
-#undef bits16_t])
-m4trace:configure.in:886: -1- AC_DEFINE_TRACE_LITERAL([bits16_t])
-m4trace:configure.in:886: -1- AH_OUTPUT([bits16_t], [/* Define to `short\' if <sys/types.h> does not define. */
-#undef bits16_t])
-m4trace:configure.in:887: -1- AC_DEFINE_TRACE_LITERAL([u_bits16_t])
-m4trace:configure.in:887: -1- AH_OUTPUT([u_bits16_t], [/* Define to `unsigned short\' if <sys/types.h> does not define. */
-#undef u_bits16_t])
-m4trace:configure.in:887: -1- AC_DEFINE_TRACE_LITERAL([u_bits16_t])
-m4trace:configure.in:887: -1- AH_OUTPUT([u_bits16_t], [/* Define to `unsigned char\' if <sys/types.h> does not define. */
-#undef u_bits16_t])
-m4trace:configure.in:887: -1- AC_DEFINE_TRACE_LITERAL([u_bits16_t])
-m4trace:configure.in:887: -1- AH_OUTPUT([u_bits16_t], [/* Define to `unsigned short\' if <sys/types.h> does not define. */
-#undef u_bits16_t])
-m4trace:configure.in:888: -1- AC_DEFINE_TRACE_LITERAL([bits32_t])
-m4trace:configure.in:888: -1- AH_OUTPUT([bits32_t], [/* Define to `int\' if <sys/types.h> does not define. */
-#undef bits32_t])
-m4trace:configure.in:888: -1- AC_DEFINE_TRACE_LITERAL([bits32_t])
-m4trace:configure.in:888: -1- AH_OUTPUT([bits32_t], [/* Define to `long\' if <sys/types.h> does not define. */
-#undef bits32_t])
-m4trace:configure.in:888: -1- AC_DEFINE_TRACE_LITERAL([bits32_t])
-m4trace:configure.in:888: -1- AH_OUTPUT([bits32_t], [/* Define to `int\' if <sys/types.h> does not define. */
-#undef bits32_t])
-m4trace:configure.in:889: -1- AC_DEFINE_TRACE_LITERAL([u_bits32_t])
-m4trace:configure.in:889: -1- AH_OUTPUT([u_bits32_t], [/* Define to `unsigned int\' if <sys/types.h> does not define. */
-#undef u_bits32_t])
-m4trace:configure.in:889: -1- AC_DEFINE_TRACE_LITERAL([u_bits32_t])
-m4trace:configure.in:889: -1- AH_OUTPUT([u_bits32_t], [/* Define to `unsigned long\' if <sys/types.h> does not define. */
-#undef u_bits32_t])
-m4trace:configure.in:889: -1- AC_DEFINE_TRACE_LITERAL([u_bits32_t])
-m4trace:configure.in:889: -1- AH_OUTPUT([u_bits32_t], [/* Define to `unsigned int\' if <sys/types.h> does not define. */
-#undef u_bits32_t])
-m4trace:configure.in:890: -1- AC_DEFINE_TRACE_LITERAL([bits64_t])
-m4trace:configure.in:890: -1- AH_OUTPUT([bits64_t], [/* Define to `char *\' if <sys/types.h> does not define. */
-#undef bits64_t])
-m4trace:configure.in:890: -1- AC_DEFINE_TRACE_LITERAL([bits64_t])
-m4trace:configure.in:890: -1- AH_OUTPUT([bits64_t], [/* Define to `double\' if <sys/types.h> does not define. */
-#undef bits64_t])
-m4trace:configure.in:890: -1- AC_DEFINE_TRACE_LITERAL([bits64_t])
-m4trace:configure.in:890: -1- AH_OUTPUT([bits64_t], [/* Define to `long long\' if <sys/types.h> does not define. */
-#undef bits64_t])
-m4trace:configure.in:890: -1- AC_DEFINE_TRACE_LITERAL([bits64_t])
-m4trace:configure.in:890: -1- AH_OUTPUT([bits64_t], [/* Define to `long\' if <sys/types.h> does not define. */
-#undef bits64_t])
-m4trace:configure.in:890: -1- AC_DEFINE_TRACE_LITERAL([bits64_t])
-m4trace:configure.in:890: -1- AH_OUTPUT([bits64_t], [/* Define to `double\' if <sys/types.h> does not define. */
-#undef bits64_t])
-m4trace:configure.in:892: -1- AC_DEFINE_TRACE_LITERAL([ptrdiff_t])
-m4trace:configure.in:892: -1- AH_OUTPUT([ptrdiff_t], [/* Define to `int\' if <sys/types.h> does not define. */
-#undef ptrdiff_t])
-m4trace:configure.in:892: -1- AC_DEFINE_TRACE_LITERAL([ptrdiff_t])
-m4trace:configure.in:892: -1- AH_OUTPUT([ptrdiff_t], [/* Define to `long\' if <sys/types.h> does not define. */
-#undef ptrdiff_t])
-m4trace:configure.in:892: -1- AC_DEFINE_TRACE_LITERAL([ptrdiff_t])
-m4trace:configure.in:892: -1- AH_OUTPUT([ptrdiff_t], [/* Define to `long long\' if <sys/types.h> does not define. */
-#undef ptrdiff_t])
-m4trace:configure.in:892: -1- AC_DEFINE_TRACE_LITERAL([ptrdiff_t])
-m4trace:configure.in:892: -1- AH_OUTPUT([ptrdiff_t], [/* Define to `int\' if <sys/types.h> does not define. */
-#undef ptrdiff_t])
-m4trace:configure.in:895: -1- AC_HEADER_STAT
-m4trace:configure.in:895: -1- AC_DEFINE_TRACE_LITERAL([STAT_MACROS_BROKEN])
-m4trace:configure.in:895: -1- AH_OUTPUT([STAT_MACROS_BROKEN], [/* Define to 1 if the `S_IS*\' macros in <sys/stat.h> do not work properly. */
-#undef STAT_MACROS_BROKEN])
-m4trace:configure.in:900: -1- AC_DEFINE_TRACE_LITERAL([HAVE_HASH_BANG_EXEC])
-m4trace:configure.in:905: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete.
-You should run autoupdate.], [autoconf/general.m4:2223: AC_TRY_LINK is expanded from...
-autoconf/general.m4:1799: AC_CACHE_VAL is expanded from...
-autoconf/general.m4:1808: AC_CACHE_CHECK is expanded from...
-aclocal.m4:561: BASH_FUNC_LSTAT is expanded from...
-configure.in:905: the top level])
-m4trace:configure.in:905: -1- AC_DEFINE_TRACE_LITERAL([HAVE_LSTAT])
-m4trace:configure.in:909: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete.
-You should run autoupdate.], [autoconf/general.m4:2289: AC_TRY_RUN is expanded from...
-autoconf/general.m4:1799: AC_CACHE_VAL is expanded from...
-aclocal.m4:1962: BASH_FUNC_CTYPE_NONASCII is expanded from...
-configure.in:909: the top level])
-m4trace:configure.in:909: -1- AC_DEFINE_TRACE_LITERAL([CTYPE_NON_ASCII])
-m4trace:configure.in:910: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete.
-You should run autoupdate.], [autoconf/general.m4:2289: AC_TRY_RUN is expanded from...
-autoconf/general.m4:1799: AC_CACHE_VAL is expanded from...
-aclocal.m4:297: BASH_FUNC_DUP2_CLOEXEC_CHECK is expanded from...
-configure.in:910: the top level])
-m4trace:configure.in:910: -1- AC_DEFINE_TRACE_LITERAL([DUP2_BROKEN])
-m4trace:configure.in:911: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete.
-You should run autoupdate.], [autoconf/general.m4:2289: AC_TRY_RUN is expanded from...
-autoconf/general.m4:1799: AC_CACHE_VAL is expanded from...
-aclocal.m4:1295: BASH_SYS_PGRP_SYNC is expanded from...
-configure.in:911: the top level])
-m4trace:configure.in:911: -1- AC_DEFINE_TRACE_LITERAL([PGRP_PIPE])
-m4trace:configure.in:912: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete.
-You should run autoupdate.], [autoconf/general.m4:2223: AC_TRY_LINK is expanded from...
-autoconf/general.m4:1799: AC_CACHE_VAL is expanded from...
-aclocal.m4:1232: BASH_SYS_SIGNAL_VINTAGE is expanded from...
-configure.in:912: the top level])
-m4trace:configure.in:912: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete.
-You should run autoupdate.], [autoconf/general.m4:2223: AC_TRY_LINK is expanded from...
-autoconf/general.m4:2215: AC_LINK_IFELSE is expanded from...
-autoconf/general.m4:2223: AC_TRY_LINK is expanded from...
-autoconf/general.m4:1799: AC_CACHE_VAL is expanded from...
-aclocal.m4:1232: BASH_SYS_SIGNAL_VINTAGE is expanded from...
-configure.in:912: the top level])
-m4trace:configure.in:912: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete.
-You should run autoupdate.], [autoconf/general.m4:2223: AC_TRY_LINK is expanded from...
-autoconf/general.m4:2215: AC_LINK_IFELSE is expanded from...
-autoconf/general.m4:2223: AC_TRY_LINK is expanded from...
-autoconf/general.m4:2215: AC_LINK_IFELSE is expanded from...
-autoconf/general.m4:2223: AC_TRY_LINK is expanded from...
-autoconf/general.m4:1799: AC_CACHE_VAL is expanded from...
-aclocal.m4:1232: BASH_SYS_SIGNAL_VINTAGE is expanded from...
-configure.in:912: the top level])
-m4trace:configure.in:912: -1- AC_DEFINE_TRACE_LITERAL([HAVE_POSIX_SIGNALS])
-m4trace:configure.in:912: -1- AC_DEFINE_TRACE_LITERAL([HAVE_BSD_SIGNALS])
-m4trace:configure.in:912: -1- AC_DEFINE_TRACE_LITERAL([HAVE_USG_SIGHOLD])
-m4trace:configure.in:915: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete.
-You should run autoupdate.], [autoconf/general.m4:2223: AC_TRY_LINK is expanded from...
-autoconf/general.m4:1799: AC_CACHE_VAL is expanded from...
-aclocal.m4:265: BASH_SYS_ERRLIST is expanded from...
-configure.in:915: the top level])
-m4trace:configure.in:915: -1- AC_DEFINE_TRACE_LITERAL([HAVE_SYS_ERRLIST])
-m4trace:configure.in:916: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete.
-You should run autoupdate.], [autoconf/general.m4:2289: AC_TRY_RUN is expanded from...
-autoconf/general.m4:1799: AC_CACHE_VAL is expanded from...
-aclocal.m4:236: BASH_SYS_SIGLIST is expanded from...
-configure.in:916: the top level])
-m4trace:configure.in:916: -1- AC_DEFINE_TRACE_LITERAL([HAVE_SYS_SIGLIST])
-m4trace:configure.in:917: -1- _m4_warn([obsolete], [The macro `AC_TRY_COMPILE' is obsolete.
-You should run autoupdate.], [autoconf/general.m4:2180: AC_TRY_COMPILE is expanded from...
-autoconf/general.m4:1799: AC_CACHE_VAL is expanded from...
-aclocal.m4:182: BASH_DECL_UNDER_SYS_SIGLIST is expanded from...
-configure.in:917: BASH_DECL_UNDER_SYS_SIGLIST is required by...
-aclocal.m4:209: BASH_UNDER_SYS_SIGLIST is expanded from...
-configure.in:917: the top level])
-m4trace:configure.in:917: -1- AC_DEFINE_TRACE_LITERAL([UNDER_SYS_SIGLIST_DECLARED])
-m4trace:configure.in:917: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete.
-You should run autoupdate.], [autoconf/general.m4:2289: AC_TRY_RUN is expanded from...
-autoconf/general.m4:1799: AC_CACHE_VAL is expanded from...
-aclocal.m4:209: BASH_UNDER_SYS_SIGLIST is expanded from...
-configure.in:917: the top level])
-m4trace:configure.in:917: -1- AC_DEFINE_TRACE_LITERAL([HAVE_UNDER_SYS_SIGLIST])
-m4trace:configure.in:920: -1- _m4_warn([obsolete], [The macro `AC_TRY_COMPILE' is obsolete.
-You should run autoupdate.], [autoconf/general.m4:2180: AC_TRY_COMPILE is expanded from...
-autoconf/general.m4:1799: AC_CACHE_VAL is expanded from...
-aclocal.m4:383: BASH_TYPE_SIGHANDLER is expanded from...
-configure.in:920: the top level])
-m4trace:configure.in:920: -1- AC_DEFINE_TRACE_LITERAL([VOID_SIGHANDLER])
-m4trace:configure.in:921: -1- AC_DEFINE_TRACE_LITERAL([clock_t])
-m4trace:configure.in:922: -1- AC_DEFINE_TRACE_LITERAL([sigset_t])
-m4trace:configure.in:923: -1- AC_DEFINE_TRACE_LITERAL([HAVE_QUAD_T])
-m4trace:configure.in:923: -1- AC_DEFINE_TRACE_LITERAL([quad_t])
-m4trace:configure.in:924: -1- AC_DEFINE_TRACE_LITERAL([intmax_t])
-m4trace:configure.in:925: -1- AC_DEFINE_TRACE_LITERAL([uintmax_t])
-m4trace:configure.in:927: -1- AC_DEFINE_TRACE_LITERAL([HAVE_SOCKLEN_T])
-m4trace:configure.in:927: -1- AC_DEFINE_TRACE_LITERAL([socklen_t])
-m4trace:configure.in:929: -1- _m4_warn([obsolete], [The macro `AC_TRY_COMPILE' is obsolete.
-You should run autoupdate.], [autoconf/general.m4:2180: AC_TRY_COMPILE is expanded from...
-autoconf/general.m4:1799: AC_CACHE_VAL is expanded from...
-aclocal.m4:535: BASH_TYPE_RLIMIT is expanded from...
-configure.in:929: the top level])
-m4trace:configure.in:929: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete.
-You should run autoupdate.], [autoconf/general.m4:2289: AC_TRY_RUN is expanded from...
-autoconf/general.m4:2173: AC_COMPILE_IFELSE is expanded from...
-autoconf/general.m4:2180: AC_TRY_COMPILE is expanded from...
-autoconf/general.m4:1799: AC_CACHE_VAL is expanded from...
-aclocal.m4:535: BASH_TYPE_RLIMIT is expanded from...
-configure.in:929: the top level])
-m4trace:configure.in:929: -1- AC_DEFINE_TRACE_LITERAL([RLIMTYPE])
-m4trace:configure.in:929: -1- AC_DEFINE_TRACE_LITERAL([RLIMTYPE])
-m4trace:configure.in:931: -1- _m4_warn([cross], [AC_RUN_IFELSE called without default to allow cross compiling], [autoconf/general.m4:2281: AC_RUN_IFELSE is expanded from...
-autoconf/general.m4:1799: AC_CACHE_VAL is expanded from...
-autoconf/general.m4:1808: AC_CACHE_CHECK is expanded from...
-autoconf/types.m4:405: AC_CHECK_SIZEOF is expanded from...
-configure.in:931: the top level])
-m4trace:configure.in:931: -1- AC_DEFINE_TRACE_LITERAL([SIZEOF_INTMAX_T])
-m4trace:configure.in:931: -1- AH_OUTPUT([SIZEOF_INTMAX_T], [/* The size of a `intmax_t\', as computed by sizeof. */
-#undef SIZEOF_INTMAX_T])
-m4trace:configure.in:934: -2- AC_DEFINE_TRACE_LITERAL([TERMIOS_LDISC])
-m4trace:configure.in:935: -2- AC_DEFINE_TRACE_LITERAL([TERMIO_LDISC])
-m4trace:configure.in:936: -1- _m4_warn([obsolete], [The macro `AC_TRY_COMPILE' is obsolete.
-You should run autoupdate.], [autoconf/general.m4:2180: AC_TRY_COMPILE is expanded from...
-autoconf/general.m4:1799: AC_CACHE_VAL is expanded from...
-aclocal.m4:1073: BASH_STRUCT_DIRENT_D_INO is expanded from...
-configure.in:936: the top level])
-m4trace:configure.in:936: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STRUCT_DIRENT_D_INO])
-m4trace:configure.in:937: -1- _m4_warn([obsolete], [The macro `AC_TRY_COMPILE' is obsolete.
-You should run autoupdate.], [autoconf/general.m4:2180: AC_TRY_COMPILE is expanded from...
-autoconf/general.m4:1799: AC_CACHE_VAL is expanded from...
-aclocal.m4:1106: BASH_STRUCT_DIRENT_D_FILENO is expanded from...
-configure.in:937: the top level])
-m4trace:configure.in:937: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STRUCT_DIRENT_D_FILENO])
-m4trace:configure.in:938: -1- _m4_warn([obsolete], [The macro `AC_TRY_COMPILE' is obsolete.
-You should run autoupdate.], [autoconf/general.m4:2180: AC_TRY_COMPILE is expanded from...
-autoconf/general.m4:1799: AC_CACHE_VAL is expanded from...
-aclocal.m4:1139: BASH_STRUCT_DIRENT_D_NAMLEN is expanded from...
-configure.in:938: the top level])
-m4trace:configure.in:938: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STRUCT_DIRENT_D_NAMLEN])
-m4trace:configure.in:939: -1- _m4_warn([obsolete], [The macro `AC_TRY_COMPILE' is obsolete.
-You should run autoupdate.], [autoconf/general.m4:2180: AC_TRY_COMPILE is expanded from...
-autoconf/general.m4:1799: AC_CACHE_VAL is expanded from...
-aclocal.m4:1192: BASH_STRUCT_WINSIZE is expanded from...
-configure.in:939: the top level])
-m4trace:configure.in:939: -1- _m4_warn([obsolete], [The macro `AC_TRY_COMPILE' is obsolete.
-You should run autoupdate.], [autoconf/general.m4:2180: AC_TRY_COMPILE is expanded from...
-autoconf/general.m4:2173: AC_COMPILE_IFELSE is expanded from...
-autoconf/general.m4:2180: AC_TRY_COMPILE is expanded from...
-autoconf/general.m4:1799: AC_CACHE_VAL is expanded from...
-aclocal.m4:1192: BASH_STRUCT_WINSIZE is expanded from...
-configure.in:939: the top level])
-m4trace:configure.in:939: -1- AC_DEFINE_TRACE_LITERAL([STRUCT_WINSIZE_IN_SYS_IOCTL])
-m4trace:configure.in:939: -1- AC_DEFINE_TRACE_LITERAL([STRUCT_WINSIZE_IN_TERMIOS])
-m4trace:configure.in:940: -1- AC_DEFINE_TRACE_LITERAL([HAVE_TIMEVAL])
-m4trace:configure.in:941: -1- AC_CHECK_MEMBERS([struct stat.st_blocks])
-m4trace:configure.in:941: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STRUCT_STAT_ST_BLOCKS])
-m4trace:configure.in:941: -1- AH_OUTPUT([HAVE_STRUCT_STAT_ST_BLOCKS], [/* Define to 1 if `st_blocks\' is member of `struct stat\'. */
-#undef HAVE_STRUCT_STAT_ST_BLOCKS])
-m4trace:configure.in:942: -1- AC_STRUCT_TM
-m4trace:configure.in:942: -1- AC_DEFINE_TRACE_LITERAL([TM_IN_SYS_TIME])
-m4trace:configure.in:942: -1- AH_OUTPUT([TM_IN_SYS_TIME], [/* Define to 1 if your <sys/time.h> declares `struct tm\'. */
-#undef TM_IN_SYS_TIME])
-m4trace:configure.in:943: -1- AC_STRUCT_TIMEZONE
-m4trace:configure.in:943: -1- AC_CHECK_MEMBERS([struct tm.tm_zone], [], [], [#include <sys/types.h>
-#include <$ac_cv_struct_tm>
-])
-m4trace:configure.in:943: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STRUCT_TM_TM_ZONE])
-m4trace:configure.in:943: -1- AH_OUTPUT([HAVE_STRUCT_TM_TM_ZONE], [/* Define to 1 if `tm_zone\' is member of `struct tm\'. */
-#undef HAVE_STRUCT_TM_TM_ZONE])
-m4trace:configure.in:943: -1- AC_DEFINE_TRACE_LITERAL([HAVE_TM_ZONE])
-m4trace:configure.in:943: -1- AH_OUTPUT([HAVE_TM_ZONE], [/* Define to 1 if your `struct tm\' has `tm_zone\'. Deprecated, use
-   `HAVE_STRUCT_TM_TM_ZONE\' instead. */
-#undef HAVE_TM_ZONE])
-m4trace:configure.in:943: -1- AC_DEFINE_TRACE_LITERAL([HAVE_TZNAME])
-m4trace:configure.in:943: -1- AH_OUTPUT([HAVE_TZNAME], [/* Define to 1 if you don\'t have `tm_zone\' but do have the external array
-   `tzname\'. */
-#undef HAVE_TZNAME])
-m4trace:configure.in:944: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STRUCT_TIMEZONE])
-m4trace:configure.in:946: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete.
-You should run autoupdate.], [autoconf/general.m4:2289: AC_TRY_RUN is expanded from...
-autoconf/general.m4:1799: AC_CACHE_VAL is expanded from...
-aclocal.m4:4195: BASH_STRUCT_WEXITSTATUS_OFFSET is expanded from...
-configure.in:946: the top level])
-m4trace:configure.in:946: -1- AC_DEFINE_TRACE_LITERAL([WEXITSTATUS_OFFSET])
-m4trace:configure.in:946: -1- AH_OUTPUT([WEXITSTATUS_OFFSET], [/* Offset of exit status in wait status word */
-#undef WEXITSTATUS_OFFSET])
-m4trace:configure.in:948: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STRUCT_TIMESPEC])
-m4trace:configure.in:948: -1- AC_DEFINE_TRACE_LITERAL([TIME_H_DEFINES_STRUCT_TIMESPEC])
-m4trace:configure.in:948: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STRUCT_TIMESPEC])
-m4trace:configure.in:948: -1- AC_DEFINE_TRACE_LITERAL([SYS_TIME_H_DEFINES_STRUCT_TIMESPEC])
-m4trace:configure.in:948: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STRUCT_TIMESPEC])
-m4trace:configure.in:948: -1- AC_DEFINE_TRACE_LITERAL([PTHREAD_H_DEFINES_STRUCT_TIMESPEC])
-m4trace:configure.in:948: -1- AC_SUBST([TIME_H_DEFINES_STRUCT_TIMESPEC])
-m4trace:configure.in:948: -1- AC_SUBST([SYS_TIME_H_DEFINES_STRUCT_TIMESPEC])
-m4trace:configure.in:948: -1- AC_SUBST([PTHREAD_H_DEFINES_STRUCT_TIMESPEC])
-m4trace:configure.in:949: -1- AC_CHECK_MEMBERS([struct stat.st_atim.tv_nsec], [AC_CACHE_CHECK([whether struct stat.st_atim is of type struct timespec],
-       [ac_cv_typeof_struct_stat_st_atim_is_struct_timespec],
-       [AC_COMPILE_IFELSE([AC_LANG_PROGRAM(
-          [[
-            #include <sys/types.h>
-            #include <sys/stat.h>
-            #if HAVE_SYS_TIME_H
-            # include <sys/time.h>
-            #endif
-            #include <time.h>
-            struct timespec ts;
-            struct stat st;
-          ]],
-          [[
-            st.st_atim = ts;
-          ]])],
-          [ac_cv_typeof_struct_stat_st_atim_is_struct_timespec=yes],
-          [ac_cv_typeof_struct_stat_st_atim_is_struct_timespec=no])])
-     if test $ac_cv_typeof_struct_stat_st_atim_is_struct_timespec = yes; then
-       AC_DEFINE([TYPEOF_STRUCT_STAT_ST_ATIM_IS_STRUCT_TIMESPEC], [1],
-         [Define to 1 if the type of the st_atim member of a struct stat is
-          struct timespec.])
-     fi], [AC_CHECK_MEMBERS([struct stat.st_atimespec.tv_nsec], [],
-       [AC_CHECK_MEMBERS([struct stat.st_atimensec], [],
-          [AC_CHECK_MEMBERS([struct stat.st_atim.st__tim.tv_nsec], [], [],
-             [#include <sys/types.h>
-              #include <sys/stat.h>])],
-          [#include <sys/types.h>
-           #include <sys/stat.h>])],
-       [#include <sys/types.h>
-        #include <sys/stat.h>])], [#include <sys/types.h>
-     #include <sys/stat.h>])
-m4trace:configure.in:949: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STRUCT_STAT_ST_ATIM_TV_NSEC])
-m4trace:configure.in:949: -1- AH_OUTPUT([HAVE_STRUCT_STAT_ST_ATIM_TV_NSEC], [/* Define to 1 if `st_atim.tv_nsec\' is member of `struct stat\'. */
-#undef HAVE_STRUCT_STAT_ST_ATIM_TV_NSEC])
-m4trace:configure.in:949: -1- AC_DEFINE_TRACE_LITERAL([TYPEOF_STRUCT_STAT_ST_ATIM_IS_STRUCT_TIMESPEC])
-m4trace:configure.in:949: -1- AH_OUTPUT([TYPEOF_STRUCT_STAT_ST_ATIM_IS_STRUCT_TIMESPEC], [/* Define to 1 if the type of the st_atim member of a struct stat is struct
-   timespec. */
-#undef TYPEOF_STRUCT_STAT_ST_ATIM_IS_STRUCT_TIMESPEC])
-m4trace:configure.in:949: -1- AC_CHECK_MEMBERS([struct stat.st_atimespec.tv_nsec], [], [AC_CHECK_MEMBERS([struct stat.st_atimensec], [],
-          [AC_CHECK_MEMBERS([struct stat.st_atim.st__tim.tv_nsec], [], [],
-             [#include <sys/types.h>
-              #include <sys/stat.h>])],
-          [#include <sys/types.h>
-           #include <sys/stat.h>])], [#include <sys/types.h>
-        #include <sys/stat.h>])
-m4trace:configure.in:949: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STRUCT_STAT_ST_ATIMESPEC_TV_NSEC])
-m4trace:configure.in:949: -1- AH_OUTPUT([HAVE_STRUCT_STAT_ST_ATIMESPEC_TV_NSEC], [/* Define to 1 if `st_atimespec.tv_nsec\' is member of `struct stat\'. */
-#undef HAVE_STRUCT_STAT_ST_ATIMESPEC_TV_NSEC])
-m4trace:configure.in:949: -1- AC_CHECK_MEMBERS([struct stat.st_atimensec], [], [AC_CHECK_MEMBERS([struct stat.st_atim.st__tim.tv_nsec], [], [],
-             [#include <sys/types.h>
-              #include <sys/stat.h>])], [#include <sys/types.h>
-           #include <sys/stat.h>])
-m4trace:configure.in:949: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STRUCT_STAT_ST_ATIMENSEC])
-m4trace:configure.in:949: -1- AH_OUTPUT([HAVE_STRUCT_STAT_ST_ATIMENSEC], [/* Define to 1 if `st_atimensec\' is member of `struct stat\'. */
-#undef HAVE_STRUCT_STAT_ST_ATIMENSEC])
-m4trace:configure.in:949: -1- AC_CHECK_MEMBERS([struct stat.st_atim.st__tim.tv_nsec], [], [], [#include <sys/types.h>
-              #include <sys/stat.h>])
-m4trace:configure.in:949: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STRUCT_STAT_ST_ATIM_ST__TIM_TV_NSEC])
-m4trace:configure.in:949: -1- AH_OUTPUT([HAVE_STRUCT_STAT_ST_ATIM_ST__TIM_TV_NSEC], [/* Define to 1 if `st_atim.st__tim.tv_nsec\' is member of `struct stat\'. */
-#undef HAVE_STRUCT_STAT_ST_ATIM_ST__TIM_TV_NSEC])
-m4trace:configure.in:952: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete.
-You should run autoupdate.], [autoconf/general.m4:2223: AC_TRY_LINK is expanded from...
-autoconf/general.m4:1799: AC_CACHE_VAL is expanded from...
-aclocal.m4:310: BASH_FUNC_STRSIGNAL is expanded from...
-configure.in:952: the top level])
-m4trace:configure.in:952: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STRSIGNAL])
-m4trace:configure.in:953: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete.
-You should run autoupdate.], [autoconf/general.m4:2289: AC_TRY_RUN is expanded from...
-autoconf/general.m4:1799: AC_CACHE_VAL is expanded from...
-aclocal.m4:363: BASH_FUNC_OPENDIR_CHECK is expanded from...
-configure.in:953: the top level])
-m4trace:configure.in:953: -1- AC_DEFINE_TRACE_LITERAL([OPENDIR_NOT_ROBUST])
-m4trace:configure.in:954: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete.
-You should run autoupdate.], [autoconf/general.m4:2289: AC_TRY_RUN is expanded from...
-autoconf/general.m4:1799: AC_CACHE_VAL is expanded from...
-aclocal.m4:700: BASH_FUNC_ULIMIT_MAXFDS is expanded from...
-configure.in:954: the top level])
-m4trace:configure.in:954: -1- AC_DEFINE_TRACE_LITERAL([ULIMIT_MAXFDS])
-m4trace:configure.in:955: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DECL_FPURGE])
-m4trace:configure.in:955: -1- AH_OUTPUT([HAVE_DECL_FPURGE], [/* Define to 1 if you have the declaration of `fpurge\', and to 0 if you don\'t.
-   */
-#undef HAVE_DECL_FPURGE])
-m4trace:configure.in:955: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DECL_FPURGE])
-m4trace:configure.in:956: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete.
-You should run autoupdate.], [autoconf/general.m4:2289: AC_TRY_RUN is expanded from...
-autoconf/general.m4:1799: AC_CACHE_VAL is expanded from...
-aclocal.m4:621: BASH_FUNC_GETENV is expanded from...
-configure.in:956: the top level])
-m4trace:configure.in:956: -1- AC_DEFINE_TRACE_LITERAL([CAN_REDEFINE_GETENV])
-m4trace:configure.in:958: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete.
-You should run autoupdate.], [autoconf/general.m4:2289: AC_TRY_RUN is expanded from...
-autoconf/general.m4:1799: AC_CACHE_VAL is expanded from...
-aclocal.m4:726: BASH_FUNC_GETCWD is expanded from...
-configure.in:958: the top level])
-m4trace:configure.in:958: -1- AC_DEFINE_TRACE_LITERAL([GETCWD_BROKEN])
-m4trace:configure.in:958: -1- AC_LIBSOURCE([getcwd.c])
-m4trace:configure.in:958: -1- AC_SUBST([LIB@&t@OBJS])
-m4trace:configure.in:960: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete.
-You should run autoupdate.], [autoconf/general.m4:2289: AC_TRY_RUN is expanded from...
-autoconf/general.m4:1799: AC_CACHE_VAL is expanded from...
-aclocal.m4:827: BASH_FUNC_POSIX_SETJMP is expanded from...
-configure.in:960: the top level])
-m4trace:configure.in:960: -1- AC_DEFINE_TRACE_LITERAL([HAVE_POSIX_SIGSETJMP])
-m4trace:configure.in:961: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete.
-You should run autoupdate.], [autoconf/general.m4:2289: AC_TRY_RUN is expanded from...
-autoconf/general.m4:1799: AC_CACHE_VAL is expanded from...
-aclocal.m4:876: BASH_FUNC_STRCOLL is expanded from...
-configure.in:961: the top level])
-m4trace:configure.in:961: -1- AC_DEFINE_TRACE_LITERAL([STRCOLL_BROKEN])
-m4trace:configure.in:962: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete.
-You should run autoupdate.], [autoconf/general.m4:2289: AC_TRY_RUN is expanded from...
-autoconf/general.m4:1799: AC_CACHE_VAL is expanded from...
-autoconf/general.m4:1808: AC_CACHE_CHECK is expanded from...
-aclocal.m4:4091: BASH_FUNC_SNPRINTF is expanded from...
-configure.in:962: the top level])
-m4trace:configure.in:962: -1- AC_DEFINE_TRACE_LITERAL([HAVE_SNPRINTF])
-m4trace:configure.in:962: -1- AH_OUTPUT([HAVE_SNPRINTF], [/* Define if you have a standard-conformant snprintf function. */
-#undef HAVE_SNPRINTF])
-m4trace:configure.in:963: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete.
-You should run autoupdate.], [autoconf/general.m4:2289: AC_TRY_RUN is expanded from...
-autoconf/general.m4:1799: AC_CACHE_VAL is expanded from...
-autoconf/general.m4:1808: AC_CACHE_CHECK is expanded from...
-aclocal.m4:4147: BASH_FUNC_VSNPRINTF is expanded from...
-configure.in:963: the top level])
-m4trace:configure.in:963: -1- AC_DEFINE_TRACE_LITERAL([HAVE_VSNPRINTF])
-m4trace:configure.in:963: -1- AH_OUTPUT([HAVE_VSNPRINTF], [/* Define if you have a standard-conformant vsnprintf function. */
-#undef HAVE_VSNPRINTF])
-m4trace:configure.in:969: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete.
-You should run autoupdate.], [autoconf/general.m4:2223: AC_TRY_LINK is expanded from...
-autoconf/general.m4:1799: AC_CACHE_VAL is expanded from...
-autoconf/general.m4:1808: AC_CACHE_CHECK is expanded from...
-aclocal.m4:651: BASH_FUNC_STD_PUTENV is expanded from...
-configure.in:969: the top level])
-m4trace:configure.in:969: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STD_PUTENV])
-m4trace:configure.in:971: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STD_PUTENV])
-m4trace:configure.in:974: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete.
-You should run autoupdate.], [autoconf/general.m4:2223: AC_TRY_LINK is expanded from...
-autoconf/general.m4:1799: AC_CACHE_VAL is expanded from...
-autoconf/general.m4:1808: AC_CACHE_CHECK is expanded from...
-aclocal.m4:681: BASH_FUNC_STD_UNSETENV is expanded from...
-configure.in:974: the top level])
-m4trace:configure.in:974: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STD_UNSETENV])
-m4trace:configure.in:976: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STD_UNSETENV])
-m4trace:configure.in:979: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete.
-You should run autoupdate.], [autoconf/general.m4:2289: AC_TRY_RUN is expanded from...
-autoconf/general.m4:1799: AC_CACHE_VAL is expanded from...
-aclocal.m4:902: BASH_FUNC_PRINTF_A_FORMAT is expanded from...
-configure.in:979: the top level])
-m4trace:configure.in:979: -1- AC_DEFINE_TRACE_LITERAL([HAVE_PRINTF_A_FORMAT])
-m4trace:configure.in:982: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete.
-You should run autoupdate.], [autoconf/general.m4:2289: AC_TRY_RUN is expanded from...
-autoconf/general.m4:1799: AC_CACHE_VAL is expanded from...
-aclocal.m4:1353: BASH_SYS_REINSTALL_SIGHANDLERS is expanded from...
-configure.in:982: the top level])
-m4trace:configure.in:982: -1- AC_DEFINE_TRACE_LITERAL([MUST_REINSTALL_SIGHANDLERS])
-m4trace:configure.in:983: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete.
-You should run autoupdate.], [autoconf/general.m4:2289: AC_TRY_RUN is expanded from...
-autoconf/general.m4:1799: AC_CACHE_VAL is expanded from...
-aclocal.m4:1411: BASH_SYS_JOB_CONTROL_MISSING is expanded from...
-configure.in:983: the top level])
-m4trace:configure.in:983: -1- AC_DEFINE_TRACE_LITERAL([JOB_CONTROL_MISSING])
-m4trace:configure.in:984: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete.
-You should run autoupdate.], [autoconf/general.m4:2289: AC_TRY_RUN is expanded from...
-autoconf/general.m4:1799: AC_CACHE_VAL is expanded from...
-aclocal.m4:1463: BASH_SYS_NAMED_PIPES is expanded from...
-configure.in:984: the top level])
-m4trace:configure.in:984: -1- AC_DEFINE_TRACE_LITERAL([NAMED_PIPES_MISSING])
-m4trace:configure.in:987: -1- AC_DEFINE_TRACE_LITERAL([GWINSZ_IN_SYS_IOCTL])
-m4trace:configure.in:987: -1- AH_OUTPUT([GWINSZ_IN_SYS_IOCTL], [/* Define to 1 if `TIOCGWINSZ\' requires <sys/ioctl.h>. */
-#undef GWINSZ_IN_SYS_IOCTL])
-m4trace:configure.in:988: -1- _m4_warn([obsolete], [The macro `AC_TRY_COMPILE' is obsolete.
-You should run autoupdate.], [autoconf/general.m4:2180: AC_TRY_COMPILE is expanded from...
-autoconf/general.m4:1799: AC_CACHE_VAL is expanded from...
-aclocal.m4:1506: BASH_HAVE_TIOCSTAT is expanded from...
-configure.in:988: the top level])
-m4trace:configure.in:988: -1- AC_DEFINE_TRACE_LITERAL([TIOCSTAT_IN_SYS_IOCTL])
-m4trace:configure.in:989: -1- _m4_warn([obsolete], [The macro `AC_TRY_COMPILE' is obsolete.
-You should run autoupdate.], [autoconf/general.m4:2180: AC_TRY_COMPILE is expanded from...
-autoconf/general.m4:1799: AC_CACHE_VAL is expanded from...
-aclocal.m4:1518: BASH_HAVE_FIONREAD is expanded from...
-configure.in:989: the top level])
-m4trace:configure.in:989: -1- AC_DEFINE_TRACE_LITERAL([FIONREAD_IN_SYS_IOCTL])
-m4trace:configure.in:991: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete.
-You should run autoupdate.], [autoconf/general.m4:2289: AC_TRY_RUN is expanded from...
-autoconf/general.m4:1799: AC_CACHE_VAL is expanded from...
-aclocal.m4:1995: BASH_CHECK_WCONTINUED is expanded from...
-configure.in:991: the top level])
-m4trace:configure.in:991: -1- AC_DEFINE_TRACE_LITERAL([WCONTINUED_BROKEN])
-m4trace:configure.in:994: -1- _m4_warn([obsolete], [The macro `AC_TRY_COMPILE' is obsolete.
-You should run autoupdate.], [autoconf/general.m4:2180: AC_TRY_COMPILE is expanded from...
-autoconf/general.m4:1799: AC_CACHE_VAL is expanded from...
-aclocal.m4:1535: BASH_CHECK_SPEED_T is expanded from...
-configure.in:994: the top level])
-m4trace:configure.in:994: -1- AC_DEFINE_TRACE_LITERAL([SPEED_T_IN_SYS_TYPES])
-m4trace:configure.in:995: -1- AC_DEFINE_TRACE_LITERAL([HAVE_GETPW_DECLS])
-m4trace:configure.in:996: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete.
-You should run autoupdate.], [autoconf/general.m4:2289: AC_TRY_RUN is expanded from...
-autoconf/general.m4:1799: AC_CACHE_VAL is expanded from...
-aclocal.m4:1682: BASH_CHECK_RTSIGS is expanded from...
-configure.in:996: the top level])
-m4trace:configure.in:996: -1- AC_DEFINE_TRACE_LITERAL([UNUSABLE_RT_SIGNALS])
-m4trace:configure.in:997: -1- AC_SUBST([SIGLIST_O])
-m4trace:configure.in:1001: -1- _m4_warn([obsolete], [The macro `AC_TRY_COMPILE' is obsolete.
-You should run autoupdate.], [autoconf/general.m4:2180: AC_TRY_COMPILE is expanded from...
-autoconf/general.m4:1799: AC_CACHE_VAL is expanded from...
-aclocal.m4:1631: BASH_CHECK_KERNEL_RLIMIT is expanded from...
-configure.in:1001: the top level])
-m4trace:configure.in:1001: -1- _m4_warn([obsolete], [The macro `AC_TRY_COMPILE' is obsolete.
-You should run autoupdate.], [autoconf/general.m4:2180: AC_TRY_COMPILE is expanded from...
-autoconf/general.m4:2173: AC_COMPILE_IFELSE is expanded from...
-autoconf/general.m4:2180: AC_TRY_COMPILE is expanded from...
-autoconf/general.m4:1799: AC_CACHE_VAL is expanded from...
-aclocal.m4:1631: BASH_CHECK_KERNEL_RLIMIT is expanded from...
-configure.in:1001: the top level])
-m4trace:configure.in:1001: -1- AC_DEFINE_TRACE_LITERAL([RLIMIT_NEEDS_KERNEL])
-m4trace:configure.in:1009: -1- AC_CHECK_LIB([termcap], [tgetent], [bash_cv_termcap_lib=libtermcap], [AC_CHECK_LIB(tinfo, tgetent, bash_cv_termcap_lib=libtinfo,
-        [AC_CHECK_LIB(curses, tgetent, bash_cv_termcap_lib=libcurses,
-           [AC_CHECK_LIB(ncurses, tgetent, bash_cv_termcap_lib=libncurses,
-               bash_cv_termcap_lib=gnutermcap)])])])
-m4trace:configure.in:1009: -1- AC_CHECK_LIB([tinfo], [tgetent], [bash_cv_termcap_lib=libtinfo], [AC_CHECK_LIB(curses, tgetent, bash_cv_termcap_lib=libcurses,
-           [AC_CHECK_LIB(ncurses, tgetent, bash_cv_termcap_lib=libncurses,
-               bash_cv_termcap_lib=gnutermcap)])])
-m4trace:configure.in:1009: -1- AC_CHECK_LIB([curses], [tgetent], [bash_cv_termcap_lib=libcurses], [AC_CHECK_LIB(ncurses, tgetent, bash_cv_termcap_lib=libncurses,
-               bash_cv_termcap_lib=gnutermcap)])
-m4trace:configure.in:1009: -1- AC_CHECK_LIB([ncurses], [tgetent], [bash_cv_termcap_lib=libncurses], [bash_cv_termcap_lib=gnutermcap])
-m4trace:configure.in:1011: -1- AC_SUBST([TERMCAP_LIB])
-m4trace:configure.in:1012: -1- AC_SUBST([TERMCAP_DEP])
-m4trace:configure.in:1014: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DEV_FD])
-m4trace:configure.in:1014: -1- AC_DEFINE_TRACE_LITERAL([DEV_FD_PREFIX])
-m4trace:configure.in:1014: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DEV_FD])
-m4trace:configure.in:1014: -1- AC_DEFINE_TRACE_LITERAL([DEV_FD_PREFIX])
-m4trace:configure.in:1015: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DEV_STDIN])
-m4trace:configure.in:1016: -1- AC_DEFINE_TRACE_LITERAL([DEFAULT_MAIL_DIRECTORY])
-m4trace:configure.in:1023: -1- AC_DEFINE_TRACE_LITERAL([JOB_CONTROL])
-m4trace:configure.in:1029: -1- AC_SUBST([JOBS_O])
-m4trace:configure.in:1042: -1- AC_DEFINE_TRACE_LITERAL([SVR4_2])
-m4trace:configure.in:1043: -1- AC_DEFINE_TRACE_LITERAL([SVR4])
-m4trace:configure.in:1044: -1- AC_DEFINE_TRACE_LITERAL([SVR4])
-m4trace:configure.in:1045: -1- AC_DEFINE_TRACE_LITERAL([SVR5])
-m4trace:configure.in:1064: -1- AC_DEFINE_TRACE_LITERAL([PGRP_PIPE])
-m4trace:configure.in:1111: -1- AC_SUBST([SHOBJ_CC])
-m4trace:configure.in:1112: -1- AC_SUBST([SHOBJ_CFLAGS])
-m4trace:configure.in:1113: -1- AC_SUBST([SHOBJ_LD])
-m4trace:configure.in:1114: -1- AC_SUBST([SHOBJ_LDFLAGS])
-m4trace:configure.in:1115: -1- AC_SUBST([SHOBJ_XLDFLAGS])
-m4trace:configure.in:1116: -1- AC_SUBST([SHOBJ_LIBS])
-m4trace:configure.in:1117: -1- AC_SUBST([SHOBJ_STATUS])
-m4trace:configure.in:1149: -1- AC_SUBST([PROFILE_FLAGS])
-m4trace:configure.in:1151: -1- AC_SUBST([incdir])
-m4trace:configure.in:1152: -1- AC_SUBST([BUILD_DIR])
-m4trace:configure.in:1155: -1- AC_SUBST([datarootdir])
-m4trace:configure.in:1156: -1- AC_SUBST([localedir])
-m4trace:configure.in:1158: -1- AC_SUBST([YACC])
-m4trace:configure.in:1159: -1- AC_SUBST([AR])
-m4trace:configure.in:1160: -1- AC_SUBST([ARFLAGS])
-m4trace:configure.in:1162: -1- AC_SUBST([BASHVERS])
-m4trace:configure.in:1163: -1- AC_SUBST([RELSTATUS])
-m4trace:configure.in:1164: -1- AC_SUBST([DEBUG])
-m4trace:configure.in:1165: -1- AC_SUBST([MALLOC_DEBUG])
-m4trace:configure.in:1167: -1- AC_SUBST([host_cpu])
-m4trace:configure.in:1168: -1- AC_SUBST([host_vendor])
-m4trace:configure.in:1169: -1- AC_SUBST([host_os])
-m4trace:configure.in:1171: -1- AC_SUBST([LOCAL_LIBS])
-m4trace:configure.in:1172: -1- AC_SUBST([LOCAL_CFLAGS])
-m4trace:configure.in:1173: -1- AC_SUBST([LOCAL_LDFLAGS])
-m4trace:configure.in:1174: -1- AC_SUBST([LOCAL_DEFS])
-m4trace:configure.in:1187: -1- AC_CONFIG_FILES([Makefile builtins/Makefile lib/readline/Makefile lib/glob/Makefile \
-         lib/intl/Makefile \
-         lib/malloc/Makefile lib/sh/Makefile lib/termcap/Makefile \
-         lib/tilde/Makefile doc/Makefile support/Makefile po/Makefile.in \
-         examples/loadables/Makefile examples/loadables/perl/Makefile])
-m4trace:configure.in:1187: -1- _m4_warn([obsolete], [AC_OUTPUT should be used without arguments.
-You should run autoupdate.], [])
-m4trace:configure.in:1187: -1- AC_SUBST([LIB@&t@OBJS], [$ac_libobjs])
-m4trace:configure.in:1187: -1- AC_SUBST([LTLIBOBJS], [$ac_ltlibobjs])
diff --git a/autom4te.cache/traces.3 b/autom4te.cache/traces.3
deleted file mode 100644 (file)
index f1b0857..0000000
+++ /dev/null
@@ -1,2779 +0,0 @@
-m4trace:configure.ac:29: -1- AC_INIT([bash], [4.3-alpha], [bug-bash@gnu.org])
-m4trace:configure.ac:29: -1- m4_pattern_forbid([^_?A[CHUM]_])
-m4trace:configure.ac:29: -1- m4_pattern_forbid([_AC_])
-m4trace:configure.ac:29: -1- m4_pattern_forbid([^LIBOBJS$], [do not use LIBOBJS directly, use AC_LIBOBJ (see section `AC_LIBOBJ vs LIBOBJS'])
-m4trace:configure.ac:29: -1- m4_pattern_allow([^AS_FLAGS$])
-m4trace:configure.ac:29: -1- m4_pattern_forbid([^_?m4_])
-m4trace:configure.ac:29: -1- m4_pattern_forbid([^dnl$])
-m4trace:configure.ac:29: -1- m4_pattern_forbid([^_?AS_])
-m4trace:configure.ac:29: -1- AC_SUBST([SHELL])
-m4trace:configure.ac:29: -1- AC_SUBST_TRACE([SHELL])
-m4trace:configure.ac:29: -1- m4_pattern_allow([^SHELL$])
-m4trace:configure.ac:29: -1- AC_SUBST([PATH_SEPARATOR])
-m4trace:configure.ac:29: -1- AC_SUBST_TRACE([PATH_SEPARATOR])
-m4trace:configure.ac:29: -1- m4_pattern_allow([^PATH_SEPARATOR$])
-m4trace:configure.ac:29: -1- AC_SUBST([PACKAGE_NAME], [m4_ifdef([AC_PACKAGE_NAME],      ['AC_PACKAGE_NAME'])])
-m4trace:configure.ac:29: -1- AC_SUBST_TRACE([PACKAGE_NAME])
-m4trace:configure.ac:29: -1- m4_pattern_allow([^PACKAGE_NAME$])
-m4trace:configure.ac:29: -1- AC_SUBST([PACKAGE_TARNAME], [m4_ifdef([AC_PACKAGE_TARNAME],   ['AC_PACKAGE_TARNAME'])])
-m4trace:configure.ac:29: -1- AC_SUBST_TRACE([PACKAGE_TARNAME])
-m4trace:configure.ac:29: -1- m4_pattern_allow([^PACKAGE_TARNAME$])
-m4trace:configure.ac:29: -1- AC_SUBST([PACKAGE_VERSION], [m4_ifdef([AC_PACKAGE_VERSION],   ['AC_PACKAGE_VERSION'])])
-m4trace:configure.ac:29: -1- AC_SUBST_TRACE([PACKAGE_VERSION])
-m4trace:configure.ac:29: -1- m4_pattern_allow([^PACKAGE_VERSION$])
-m4trace:configure.ac:29: -1- AC_SUBST([PACKAGE_STRING], [m4_ifdef([AC_PACKAGE_STRING],    ['AC_PACKAGE_STRING'])])
-m4trace:configure.ac:29: -1- AC_SUBST_TRACE([PACKAGE_STRING])
-m4trace:configure.ac:29: -1- m4_pattern_allow([^PACKAGE_STRING$])
-m4trace:configure.ac:29: -1- AC_SUBST([PACKAGE_BUGREPORT], [m4_ifdef([AC_PACKAGE_BUGREPORT], ['AC_PACKAGE_BUGREPORT'])])
-m4trace:configure.ac:29: -1- AC_SUBST_TRACE([PACKAGE_BUGREPORT])
-m4trace:configure.ac:29: -1- m4_pattern_allow([^PACKAGE_BUGREPORT$])
-m4trace:configure.ac:29: -1- AC_SUBST([PACKAGE_URL], [m4_ifdef([AC_PACKAGE_URL],       ['AC_PACKAGE_URL'])])
-m4trace:configure.ac:29: -1- AC_SUBST_TRACE([PACKAGE_URL])
-m4trace:configure.ac:29: -1- m4_pattern_allow([^PACKAGE_URL$])
-m4trace:configure.ac:29: -1- AC_SUBST([exec_prefix], [NONE])
-m4trace:configure.ac:29: -1- AC_SUBST_TRACE([exec_prefix])
-m4trace:configure.ac:29: -1- m4_pattern_allow([^exec_prefix$])
-m4trace:configure.ac:29: -1- AC_SUBST([prefix], [NONE])
-m4trace:configure.ac:29: -1- AC_SUBST_TRACE([prefix])
-m4trace:configure.ac:29: -1- m4_pattern_allow([^prefix$])
-m4trace:configure.ac:29: -1- AC_SUBST([program_transform_name], [s,x,x,])
-m4trace:configure.ac:29: -1- AC_SUBST_TRACE([program_transform_name])
-m4trace:configure.ac:29: -1- m4_pattern_allow([^program_transform_name$])
-m4trace:configure.ac:29: -1- AC_SUBST([bindir], ['${exec_prefix}/bin'])
-m4trace:configure.ac:29: -1- AC_SUBST_TRACE([bindir])
-m4trace:configure.ac:29: -1- m4_pattern_allow([^bindir$])
-m4trace:configure.ac:29: -1- AC_SUBST([sbindir], ['${exec_prefix}/sbin'])
-m4trace:configure.ac:29: -1- AC_SUBST_TRACE([sbindir])
-m4trace:configure.ac:29: -1- m4_pattern_allow([^sbindir$])
-m4trace:configure.ac:29: -1- AC_SUBST([libexecdir], ['${exec_prefix}/libexec'])
-m4trace:configure.ac:29: -1- AC_SUBST_TRACE([libexecdir])
-m4trace:configure.ac:29: -1- m4_pattern_allow([^libexecdir$])
-m4trace:configure.ac:29: -1- AC_SUBST([datarootdir], ['${prefix}/share'])
-m4trace:configure.ac:29: -1- AC_SUBST_TRACE([datarootdir])
-m4trace:configure.ac:29: -1- m4_pattern_allow([^datarootdir$])
-m4trace:configure.ac:29: -1- AC_SUBST([datadir], ['${datarootdir}'])
-m4trace:configure.ac:29: -1- AC_SUBST_TRACE([datadir])
-m4trace:configure.ac:29: -1- m4_pattern_allow([^datadir$])
-m4trace:configure.ac:29: -1- AC_SUBST([sysconfdir], ['${prefix}/etc'])
-m4trace:configure.ac:29: -1- AC_SUBST_TRACE([sysconfdir])
-m4trace:configure.ac:29: -1- m4_pattern_allow([^sysconfdir$])
-m4trace:configure.ac:29: -1- AC_SUBST([sharedstatedir], ['${prefix}/com'])
-m4trace:configure.ac:29: -1- AC_SUBST_TRACE([sharedstatedir])
-m4trace:configure.ac:29: -1- m4_pattern_allow([^sharedstatedir$])
-m4trace:configure.ac:29: -1- AC_SUBST([localstatedir], ['${prefix}/var'])
-m4trace:configure.ac:29: -1- AC_SUBST_TRACE([localstatedir])
-m4trace:configure.ac:29: -1- m4_pattern_allow([^localstatedir$])
-m4trace:configure.ac:29: -1- AC_SUBST([includedir], ['${prefix}/include'])
-m4trace:configure.ac:29: -1- AC_SUBST_TRACE([includedir])
-m4trace:configure.ac:29: -1- m4_pattern_allow([^includedir$])
-m4trace:configure.ac:29: -1- AC_SUBST([oldincludedir], ['/usr/include'])
-m4trace:configure.ac:29: -1- AC_SUBST_TRACE([oldincludedir])
-m4trace:configure.ac:29: -1- m4_pattern_allow([^oldincludedir$])
-m4trace:configure.ac:29: -1- AC_SUBST([docdir], [m4_ifset([AC_PACKAGE_TARNAME],
-                                    ['${datarootdir}/doc/${PACKAGE_TARNAME}'],
-                                    ['${datarootdir}/doc/${PACKAGE}'])])
-m4trace:configure.ac:29: -1- AC_SUBST_TRACE([docdir])
-m4trace:configure.ac:29: -1- m4_pattern_allow([^docdir$])
-m4trace:configure.ac:29: -1- AC_SUBST([infodir], ['${datarootdir}/info'])
-m4trace:configure.ac:29: -1- AC_SUBST_TRACE([infodir])
-m4trace:configure.ac:29: -1- m4_pattern_allow([^infodir$])
-m4trace:configure.ac:29: -1- AC_SUBST([htmldir], ['${docdir}'])
-m4trace:configure.ac:29: -1- AC_SUBST_TRACE([htmldir])
-m4trace:configure.ac:29: -1- m4_pattern_allow([^htmldir$])
-m4trace:configure.ac:29: -1- AC_SUBST([dvidir], ['${docdir}'])
-m4trace:configure.ac:29: -1- AC_SUBST_TRACE([dvidir])
-m4trace:configure.ac:29: -1- m4_pattern_allow([^dvidir$])
-m4trace:configure.ac:29: -1- AC_SUBST([pdfdir], ['${docdir}'])
-m4trace:configure.ac:29: -1- AC_SUBST_TRACE([pdfdir])
-m4trace:configure.ac:29: -1- m4_pattern_allow([^pdfdir$])
-m4trace:configure.ac:29: -1- AC_SUBST([psdir], ['${docdir}'])
-m4trace:configure.ac:29: -1- AC_SUBST_TRACE([psdir])
-m4trace:configure.ac:29: -1- m4_pattern_allow([^psdir$])
-m4trace:configure.ac:29: -1- AC_SUBST([libdir], ['${exec_prefix}/lib'])
-m4trace:configure.ac:29: -1- AC_SUBST_TRACE([libdir])
-m4trace:configure.ac:29: -1- m4_pattern_allow([^libdir$])
-m4trace:configure.ac:29: -1- AC_SUBST([localedir], ['${datarootdir}/locale'])
-m4trace:configure.ac:29: -1- AC_SUBST_TRACE([localedir])
-m4trace:configure.ac:29: -1- m4_pattern_allow([^localedir$])
-m4trace:configure.ac:29: -1- AC_SUBST([mandir], ['${datarootdir}/man'])
-m4trace:configure.ac:29: -1- AC_SUBST_TRACE([mandir])
-m4trace:configure.ac:29: -1- m4_pattern_allow([^mandir$])
-m4trace:configure.ac:29: -1- AC_DEFINE_TRACE_LITERAL([PACKAGE_NAME])
-m4trace:configure.ac:29: -1- m4_pattern_allow([^PACKAGE_NAME$])
-m4trace:configure.ac:29: -1- AH_OUTPUT([PACKAGE_NAME], [/* Define to the full name of this package. */
-@%:@undef PACKAGE_NAME])
-m4trace:configure.ac:29: -1- AC_DEFINE_TRACE_LITERAL([PACKAGE_TARNAME])
-m4trace:configure.ac:29: -1- m4_pattern_allow([^PACKAGE_TARNAME$])
-m4trace:configure.ac:29: -1- AH_OUTPUT([PACKAGE_TARNAME], [/* Define to the one symbol short name of this package. */
-@%:@undef PACKAGE_TARNAME])
-m4trace:configure.ac:29: -1- AC_DEFINE_TRACE_LITERAL([PACKAGE_VERSION])
-m4trace:configure.ac:29: -1- m4_pattern_allow([^PACKAGE_VERSION$])
-m4trace:configure.ac:29: -1- AH_OUTPUT([PACKAGE_VERSION], [/* Define to the version of this package. */
-@%:@undef PACKAGE_VERSION])
-m4trace:configure.ac:29: -1- AC_DEFINE_TRACE_LITERAL([PACKAGE_STRING])
-m4trace:configure.ac:29: -1- m4_pattern_allow([^PACKAGE_STRING$])
-m4trace:configure.ac:29: -1- AH_OUTPUT([PACKAGE_STRING], [/* Define to the full name and version of this package. */
-@%:@undef PACKAGE_STRING])
-m4trace:configure.ac:29: -1- AC_DEFINE_TRACE_LITERAL([PACKAGE_BUGREPORT])
-m4trace:configure.ac:29: -1- m4_pattern_allow([^PACKAGE_BUGREPORT$])
-m4trace:configure.ac:29: -1- AH_OUTPUT([PACKAGE_BUGREPORT], [/* Define to the address where bug reports for this package should be sent. */
-@%:@undef PACKAGE_BUGREPORT])
-m4trace:configure.ac:29: -1- AC_DEFINE_TRACE_LITERAL([PACKAGE_URL])
-m4trace:configure.ac:29: -1- m4_pattern_allow([^PACKAGE_URL$])
-m4trace:configure.ac:29: -1- AH_OUTPUT([PACKAGE_URL], [/* Define to the home page for this package. */
-@%:@undef PACKAGE_URL])
-m4trace:configure.ac:29: -1- AC_SUBST([DEFS])
-m4trace:configure.ac:29: -1- AC_SUBST_TRACE([DEFS])
-m4trace:configure.ac:29: -1- m4_pattern_allow([^DEFS$])
-m4trace:configure.ac:29: -1- AC_SUBST([ECHO_C])
-m4trace:configure.ac:29: -1- AC_SUBST_TRACE([ECHO_C])
-m4trace:configure.ac:29: -1- m4_pattern_allow([^ECHO_C$])
-m4trace:configure.ac:29: -1- AC_SUBST([ECHO_N])
-m4trace:configure.ac:29: -1- AC_SUBST_TRACE([ECHO_N])
-m4trace:configure.ac:29: -1- m4_pattern_allow([^ECHO_N$])
-m4trace:configure.ac:29: -1- AC_SUBST([ECHO_T])
-m4trace:configure.ac:29: -1- AC_SUBST_TRACE([ECHO_T])
-m4trace:configure.ac:29: -1- m4_pattern_allow([^ECHO_T$])
-m4trace:configure.ac:29: -1- AC_SUBST([LIBS])
-m4trace:configure.ac:29: -1- AC_SUBST_TRACE([LIBS])
-m4trace:configure.ac:29: -1- m4_pattern_allow([^LIBS$])
-m4trace:configure.ac:29: -1- AC_SUBST([build_alias])
-m4trace:configure.ac:29: -1- AC_SUBST_TRACE([build_alias])
-m4trace:configure.ac:29: -1- m4_pattern_allow([^build_alias$])
-m4trace:configure.ac:29: -1- AC_SUBST([host_alias])
-m4trace:configure.ac:29: -1- AC_SUBST_TRACE([host_alias])
-m4trace:configure.ac:29: -1- m4_pattern_allow([^host_alias$])
-m4trace:configure.ac:29: -1- AC_SUBST([target_alias])
-m4trace:configure.ac:29: -1- AC_SUBST_TRACE([target_alias])
-m4trace:configure.ac:29: -1- m4_pattern_allow([^target_alias$])
-m4trace:configure.ac:36: -1- AC_CONFIG_AUX_DIR([./support])
-m4trace:configure.ac:37: -1- AC_CONFIG_HEADERS([config.h])
-m4trace:configure.ac:51: -1- AC_CANONICAL_HOST
-m4trace:configure.ac:51: -1- AC_CANONICAL_BUILD
-m4trace:configure.ac:51: -1- AC_REQUIRE_AUX_FILE([config.sub])
-m4trace:configure.ac:51: -1- AC_REQUIRE_AUX_FILE([config.guess])
-m4trace:configure.ac:51: -1- AC_SUBST([build], [$ac_cv_build])
-m4trace:configure.ac:51: -1- AC_SUBST_TRACE([build])
-m4trace:configure.ac:51: -1- m4_pattern_allow([^build$])
-m4trace:configure.ac:51: -1- AC_SUBST([build_cpu], [$[1]])
-m4trace:configure.ac:51: -1- AC_SUBST_TRACE([build_cpu])
-m4trace:configure.ac:51: -1- m4_pattern_allow([^build_cpu$])
-m4trace:configure.ac:51: -1- AC_SUBST([build_vendor], [$[2]])
-m4trace:configure.ac:51: -1- AC_SUBST_TRACE([build_vendor])
-m4trace:configure.ac:51: -1- m4_pattern_allow([^build_vendor$])
-m4trace:configure.ac:51: -1- AC_SUBST([build_os])
-m4trace:configure.ac:51: -1- AC_SUBST_TRACE([build_os])
-m4trace:configure.ac:51: -1- m4_pattern_allow([^build_os$])
-m4trace:configure.ac:51: -1- AC_SUBST([host], [$ac_cv_host])
-m4trace:configure.ac:51: -1- AC_SUBST_TRACE([host])
-m4trace:configure.ac:51: -1- m4_pattern_allow([^host$])
-m4trace:configure.ac:51: -1- AC_SUBST([host_cpu], [$[1]])
-m4trace:configure.ac:51: -1- AC_SUBST_TRACE([host_cpu])
-m4trace:configure.ac:51: -1- m4_pattern_allow([^host_cpu$])
-m4trace:configure.ac:51: -1- AC_SUBST([host_vendor], [$[2]])
-m4trace:configure.ac:51: -1- AC_SUBST_TRACE([host_vendor])
-m4trace:configure.ac:51: -1- m4_pattern_allow([^host_vendor$])
-m4trace:configure.ac:51: -1- AC_SUBST([host_os])
-m4trace:configure.ac:51: -1- AC_SUBST_TRACE([host_os])
-m4trace:configure.ac:51: -1- m4_pattern_allow([^host_os$])
-m4trace:configure.ac:52: -1- AC_CANONICAL_BUILD
-m4trace:configure.ac:106: -1- AC_SUBST([DEBUGGER_START_FILE])
-m4trace:configure.ac:106: -1- AC_SUBST_TRACE([DEBUGGER_START_FILE])
-m4trace:configure.ac:106: -1- m4_pattern_allow([^DEBUGGER_START_FILE$])
-m4trace:configure.ac:110: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.ac:110: the top level])
-m4trace:configure.ac:111: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.ac:111: the top level])
-m4trace:configure.ac:112: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.ac:112: the top level])
-m4trace:configure.ac:113: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.ac:113: the top level])
-m4trace:configure.ac:114: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.ac:114: the top level])
-m4trace:configure.ac:115: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.ac:115: the top level])
-m4trace:configure.ac:116: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.ac:116: the top level])
-m4trace:configure.ac:127: -1- AC_DEFINE_TRACE_LITERAL([USING_BASH_MALLOC])
-m4trace:configure.ac:127: -1- m4_pattern_allow([^USING_BASH_MALLOC$])
-m4trace:configure.ac:137: -1- AC_DEFINE_TRACE_LITERAL([DISABLE_MALLOC_WRAPPERS])
-m4trace:configure.ac:137: -1- m4_pattern_allow([^DISABLE_MALLOC_WRAPPERS$])
-m4trace:configure.ac:147: -1- AC_DEFINE_TRACE_LITERAL([AFS])
-m4trace:configure.ac:147: -1- m4_pattern_allow([^AFS$])
-m4trace:configure.ac:200: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.ac:200: the top level])
-m4trace:configure.ac:216: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.ac:216: the top level])
-m4trace:configure.ac:217: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.ac:217: the top level])
-m4trace:configure.ac:218: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.ac:218: the top level])
-m4trace:configure.ac:219: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.ac:219: the top level])
-m4trace:configure.ac:220: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.ac:220: the top level])
-m4trace:configure.ac:221: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.ac:221: the top level])
-m4trace:configure.ac:222: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.ac:222: the top level])
-m4trace:configure.ac:223: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.ac:223: the top level])
-m4trace:configure.ac:224: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.ac:224: the top level])
-m4trace:configure.ac:225: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.ac:225: the top level])
-m4trace:configure.ac:226: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.ac:226: the top level])
-m4trace:configure.ac:227: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.ac:227: the top level])
-m4trace:configure.ac:228: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.ac:228: the top level])
-m4trace:configure.ac:229: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.ac:229: the top level])
-m4trace:configure.ac:230: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.ac:230: the top level])
-m4trace:configure.ac:231: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.ac:231: the top level])
-m4trace:configure.ac:232: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.ac:232: the top level])
-m4trace:configure.ac:233: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.ac:233: the top level])
-m4trace:configure.ac:234: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.ac:234: the top level])
-m4trace:configure.ac:235: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.ac:235: the top level])
-m4trace:configure.ac:236: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.ac:236: the top level])
-m4trace:configure.ac:237: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.ac:237: the top level])
-m4trace:configure.ac:238: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.ac:238: the top level])
-m4trace:configure.ac:239: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.ac:239: the top level])
-m4trace:configure.ac:240: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.ac:240: the top level])
-m4trace:configure.ac:241: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.ac:241: the top level])
-m4trace:configure.ac:242: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.ac:242: the top level])
-m4trace:configure.ac:243: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.ac:243: the top level])
-m4trace:configure.ac:244: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.ac:244: the top level])
-m4trace:configure.ac:245: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.ac:245: the top level])
-m4trace:configure.ac:246: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.ac:246: the top level])
-m4trace:configure.ac:247: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.ac:247: the top level])
-m4trace:configure.ac:248: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.ac:248: the top level])
-m4trace:configure.ac:249: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.ac:249: the top level])
-m4trace:configure.ac:252: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.ac:252: the top level])
-m4trace:configure.ac:253: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.ac:253: the top level])
-m4trace:configure.ac:254: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from...
-configure.ac:254: the top level])
-m4trace:configure.ac:257: -1- AC_SUBST([CC_FOR_BUILD])
-m4trace:configure.ac:257: -1- AC_SUBST_TRACE([CC_FOR_BUILD])
-m4trace:configure.ac:257: -1- m4_pattern_allow([^CC_FOR_BUILD$])
-m4trace:configure.ac:258: -1- AC_SUBST([CFLAGS_FOR_BUILD])
-m4trace:configure.ac:258: -1- AC_SUBST_TRACE([CFLAGS_FOR_BUILD])
-m4trace:configure.ac:258: -1- m4_pattern_allow([^CFLAGS_FOR_BUILD$])
-m4trace:configure.ac:259: -1- AC_SUBST([LDFLAGS_FOR_BUILD])
-m4trace:configure.ac:259: -1- AC_SUBST_TRACE([LDFLAGS_FOR_BUILD])
-m4trace:configure.ac:259: -1- m4_pattern_allow([^LDFLAGS_FOR_BUILD$])
-m4trace:configure.ac:260: -1- AC_SUBST([CPPFLAGS_FOR_BUILD])
-m4trace:configure.ac:260: -1- AC_SUBST_TRACE([CPPFLAGS_FOR_BUILD])
-m4trace:configure.ac:260: -1- m4_pattern_allow([^CPPFLAGS_FOR_BUILD$])
-m4trace:configure.ac:269: -1- AC_DEFINE_TRACE_LITERAL([ALIAS])
-m4trace:configure.ac:269: -1- m4_pattern_allow([^ALIAS$])
-m4trace:configure.ac:272: -1- AC_DEFINE_TRACE_LITERAL([PUSHD_AND_POPD])
-m4trace:configure.ac:272: -1- m4_pattern_allow([^PUSHD_AND_POPD$])
-m4trace:configure.ac:275: -1- AC_DEFINE_TRACE_LITERAL([RESTRICTED_SHELL])
-m4trace:configure.ac:275: -1- m4_pattern_allow([^RESTRICTED_SHELL$])
-m4trace:configure.ac:278: -1- AC_DEFINE_TRACE_LITERAL([PROCESS_SUBSTITUTION])
-m4trace:configure.ac:278: -1- m4_pattern_allow([^PROCESS_SUBSTITUTION$])
-m4trace:configure.ac:281: -1- AC_DEFINE_TRACE_LITERAL([PROMPT_STRING_DECODE])
-m4trace:configure.ac:281: -1- m4_pattern_allow([^PROMPT_STRING_DECODE$])
-m4trace:configure.ac:284: -1- AC_DEFINE_TRACE_LITERAL([SELECT_COMMAND])
-m4trace:configure.ac:284: -1- m4_pattern_allow([^SELECT_COMMAND$])
-m4trace:configure.ac:287: -1- AC_DEFINE_TRACE_LITERAL([HELP_BUILTIN])
-m4trace:configure.ac:287: -1- m4_pattern_allow([^HELP_BUILTIN$])
-m4trace:configure.ac:290: -1- AC_DEFINE_TRACE_LITERAL([ARRAY_VARS])
-m4trace:configure.ac:290: -1- m4_pattern_allow([^ARRAY_VARS$])
-m4trace:configure.ac:293: -1- AC_DEFINE_TRACE_LITERAL([DPAREN_ARITHMETIC])
-m4trace:configure.ac:293: -1- m4_pattern_allow([^DPAREN_ARITHMETIC$])
-m4trace:configure.ac:296: -1- AC_DEFINE_TRACE_LITERAL([BRACE_EXPANSION])
-m4trace:configure.ac:296: -1- m4_pattern_allow([^BRACE_EXPANSION$])
-m4trace:configure.ac:299: -1- AC_DEFINE_TRACE_LITERAL([DISABLED_BUILTINS])
-m4trace:configure.ac:299: -1- m4_pattern_allow([^DISABLED_BUILTINS$])
-m4trace:configure.ac:302: -1- AC_DEFINE_TRACE_LITERAL([COMMAND_TIMING])
-m4trace:configure.ac:302: -1- m4_pattern_allow([^COMMAND_TIMING$])
-m4trace:configure.ac:305: -1- AC_DEFINE_TRACE_LITERAL([DEFAULT_ECHO_TO_XPG])
-m4trace:configure.ac:305: -1- m4_pattern_allow([^DEFAULT_ECHO_TO_XPG$])
-m4trace:configure.ac:308: -1- AC_DEFINE_TRACE_LITERAL([STRICT_POSIX])
-m4trace:configure.ac:308: -1- m4_pattern_allow([^STRICT_POSIX$])
-m4trace:configure.ac:311: -1- AC_DEFINE_TRACE_LITERAL([EXTENDED_GLOB])
-m4trace:configure.ac:311: -1- m4_pattern_allow([^EXTENDED_GLOB$])
-m4trace:configure.ac:314: -1- AC_DEFINE_TRACE_LITERAL([EXTGLOB_DEFAULT])
-m4trace:configure.ac:314: -1- m4_pattern_allow([^EXTGLOB_DEFAULT$])
-m4trace:configure.ac:316: -1- AC_DEFINE_TRACE_LITERAL([EXTGLOB_DEFAULT])
-m4trace:configure.ac:316: -1- m4_pattern_allow([^EXTGLOB_DEFAULT$])
-m4trace:configure.ac:319: -1- AC_DEFINE_TRACE_LITERAL([COND_COMMAND])
-m4trace:configure.ac:319: -1- m4_pattern_allow([^COND_COMMAND$])
-m4trace:configure.ac:322: -1- AC_DEFINE_TRACE_LITERAL([COND_REGEXP])
-m4trace:configure.ac:322: -1- m4_pattern_allow([^COND_REGEXP$])
-m4trace:configure.ac:325: -1- AC_DEFINE_TRACE_LITERAL([COPROCESS_SUPPORT])
-m4trace:configure.ac:325: -1- m4_pattern_allow([^COPROCESS_SUPPORT$])
-m4trace:configure.ac:328: -1- AC_DEFINE_TRACE_LITERAL([ARITH_FOR_COMMAND])
-m4trace:configure.ac:328: -1- m4_pattern_allow([^ARITH_FOR_COMMAND$])
-m4trace:configure.ac:331: -1- AC_DEFINE_TRACE_LITERAL([NETWORK_REDIRECTIONS])
-m4trace:configure.ac:331: -1- m4_pattern_allow([^NETWORK_REDIRECTIONS$])
-m4trace:configure.ac:334: -1- AC_DEFINE_TRACE_LITERAL([PROGRAMMABLE_COMPLETION])
-m4trace:configure.ac:334: -1- m4_pattern_allow([^PROGRAMMABLE_COMPLETION$])
-m4trace:configure.ac:337: -1- AC_DEFINE_TRACE_LITERAL([NO_MULTIBYTE_SUPPORT])
-m4trace:configure.ac:337: -1- m4_pattern_allow([^NO_MULTIBYTE_SUPPORT$])
-m4trace:configure.ac:340: -1- AC_DEFINE_TRACE_LITERAL([DEBUGGER])
-m4trace:configure.ac:340: -1- m4_pattern_allow([^DEBUGGER$])
-m4trace:configure.ac:343: -1- AC_DEFINE_TRACE_LITERAL([CASEMOD_ATTRS])
-m4trace:configure.ac:343: -1- m4_pattern_allow([^CASEMOD_ATTRS$])
-m4trace:configure.ac:346: -1- AC_DEFINE_TRACE_LITERAL([CASEMOD_EXPANSIONS])
-m4trace:configure.ac:346: -1- m4_pattern_allow([^CASEMOD_EXPANSIONS$])
-m4trace:configure.ac:349: -1- AC_DEFINE_TRACE_LITERAL([DIRCOMPLETE_EXPAND_DEFAULT])
-m4trace:configure.ac:349: -1- m4_pattern_allow([^DIRCOMPLETE_EXPAND_DEFAULT$])
-m4trace:configure.ac:353: -1- AC_DEFINE_TRACE_LITERAL([MEMSCRAMBLE])
-m4trace:configure.ac:353: -1- m4_pattern_allow([^MEMSCRAMBLE$])
-m4trace:configure.ac:379: -1- AC_SUBST([TESTSCRIPT])
-m4trace:configure.ac:379: -1- AC_SUBST_TRACE([TESTSCRIPT])
-m4trace:configure.ac:379: -1- m4_pattern_allow([^TESTSCRIPT$])
-m4trace:configure.ac:380: -1- AC_SUBST([PURIFY])
-m4trace:configure.ac:380: -1- AC_SUBST_TRACE([PURIFY])
-m4trace:configure.ac:380: -1- m4_pattern_allow([^PURIFY$])
-m4trace:configure.ac:381: -1- AC_SUBST([MALLOC_TARGET])
-m4trace:configure.ac:381: -1- AC_SUBST_TRACE([MALLOC_TARGET])
-m4trace:configure.ac:381: -1- m4_pattern_allow([^MALLOC_TARGET$])
-m4trace:configure.ac:382: -1- AC_SUBST([MALLOC_SRC])
-m4trace:configure.ac:382: -1- AC_SUBST_TRACE([MALLOC_SRC])
-m4trace:configure.ac:382: -1- m4_pattern_allow([^MALLOC_SRC$])
-m4trace:configure.ac:384: -1- AC_SUBST([MALLOC_LIB])
-m4trace:configure.ac:384: -1- AC_SUBST_TRACE([MALLOC_LIB])
-m4trace:configure.ac:384: -1- m4_pattern_allow([^MALLOC_LIB$])
-m4trace:configure.ac:385: -1- AC_SUBST([MALLOC_LIBRARY])
-m4trace:configure.ac:385: -1- AC_SUBST_TRACE([MALLOC_LIBRARY])
-m4trace:configure.ac:385: -1- m4_pattern_allow([^MALLOC_LIBRARY$])
-m4trace:configure.ac:386: -1- AC_SUBST([MALLOC_LDFLAGS])
-m4trace:configure.ac:386: -1- AC_SUBST_TRACE([MALLOC_LDFLAGS])
-m4trace:configure.ac:386: -1- m4_pattern_allow([^MALLOC_LDFLAGS$])
-m4trace:configure.ac:387: -1- AC_SUBST([MALLOC_DEP])
-m4trace:configure.ac:387: -1- AC_SUBST_TRACE([MALLOC_DEP])
-m4trace:configure.ac:387: -1- m4_pattern_allow([^MALLOC_DEP$])
-m4trace:configure.ac:389: -1- AC_SUBST([htmldir])
-m4trace:configure.ac:389: -1- AC_SUBST_TRACE([htmldir])
-m4trace:configure.ac:389: -1- m4_pattern_allow([^htmldir$])
-m4trace:configure.ac:391: -1- AC_SUBST([HELPDIR])
-m4trace:configure.ac:391: -1- AC_SUBST_TRACE([HELPDIR])
-m4trace:configure.ac:391: -1- m4_pattern_allow([^HELPDIR$])
-m4trace:configure.ac:392: -1- AC_SUBST([HELPDIRDEFINE])
-m4trace:configure.ac:392: -1- AC_SUBST_TRACE([HELPDIRDEFINE])
-m4trace:configure.ac:392: -1- m4_pattern_allow([^HELPDIRDEFINE$])
-m4trace:configure.ac:393: -1- AC_SUBST([HELPINSTALL])
-m4trace:configure.ac:393: -1- AC_SUBST_TRACE([HELPINSTALL])
-m4trace:configure.ac:393: -1- m4_pattern_allow([^HELPINSTALL$])
-m4trace:configure.ac:394: -1- AC_SUBST([HELPFILES_TARGET])
-m4trace:configure.ac:394: -1- AC_SUBST_TRACE([HELPFILES_TARGET])
-m4trace:configure.ac:394: -1- m4_pattern_allow([^HELPFILES_TARGET$])
-m4trace:configure.ac:395: -1- AC_SUBST([HELPSTRINGS])
-m4trace:configure.ac:395: -1- AC_SUBST_TRACE([HELPSTRINGS])
-m4trace:configure.ac:395: -1- m4_pattern_allow([^HELPSTRINGS$])
-m4trace:configure.ac:404: -1- AC_SUBST([CC])
-m4trace:configure.ac:404: -1- AC_SUBST_TRACE([CC])
-m4trace:configure.ac:404: -1- m4_pattern_allow([^CC$])
-m4trace:configure.ac:404: -1- AC_SUBST([CFLAGS])
-m4trace:configure.ac:404: -1- AC_SUBST_TRACE([CFLAGS])
-m4trace:configure.ac:404: -1- m4_pattern_allow([^CFLAGS$])
-m4trace:configure.ac:404: -1- AC_SUBST([LDFLAGS])
-m4trace:configure.ac:404: -1- AC_SUBST_TRACE([LDFLAGS])
-m4trace:configure.ac:404: -1- m4_pattern_allow([^LDFLAGS$])
-m4trace:configure.ac:404: -1- AC_SUBST([LIBS])
-m4trace:configure.ac:404: -1- AC_SUBST_TRACE([LIBS])
-m4trace:configure.ac:404: -1- m4_pattern_allow([^LIBS$])
-m4trace:configure.ac:404: -1- AC_SUBST([CPPFLAGS])
-m4trace:configure.ac:404: -1- AC_SUBST_TRACE([CPPFLAGS])
-m4trace:configure.ac:404: -1- m4_pattern_allow([^CPPFLAGS$])
-m4trace:configure.ac:404: -1- AC_SUBST([CC])
-m4trace:configure.ac:404: -1- AC_SUBST_TRACE([CC])
-m4trace:configure.ac:404: -1- m4_pattern_allow([^CC$])
-m4trace:configure.ac:404: -1- AC_SUBST([CC])
-m4trace:configure.ac:404: -1- AC_SUBST_TRACE([CC])
-m4trace:configure.ac:404: -1- m4_pattern_allow([^CC$])
-m4trace:configure.ac:404: -1- AC_SUBST([CC])
-m4trace:configure.ac:404: -1- AC_SUBST_TRACE([CC])
-m4trace:configure.ac:404: -1- m4_pattern_allow([^CC$])
-m4trace:configure.ac:404: -1- AC_SUBST([CC])
-m4trace:configure.ac:404: -1- AC_SUBST_TRACE([CC])
-m4trace:configure.ac:404: -1- m4_pattern_allow([^CC$])
-m4trace:configure.ac:404: -1- AC_SUBST([ac_ct_CC])
-m4trace:configure.ac:404: -1- AC_SUBST_TRACE([ac_ct_CC])
-m4trace:configure.ac:404: -1- m4_pattern_allow([^ac_ct_CC$])
-m4trace:configure.ac:404: -1- AC_SUBST([EXEEXT], [$ac_cv_exeext])
-m4trace:configure.ac:404: -1- AC_SUBST_TRACE([EXEEXT])
-m4trace:configure.ac:404: -1- m4_pattern_allow([^EXEEXT$])
-m4trace:configure.ac:404: -1- AC_SUBST([OBJEXT], [$ac_cv_objext])
-m4trace:configure.ac:404: -1- AC_SUBST_TRACE([OBJEXT])
-m4trace:configure.ac:404: -1- m4_pattern_allow([^OBJEXT$])
-m4trace:configure.ac:408: -1- _m4_warn([obsolete], [The macro `AC_MINIX' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/specific.m4:437: AC_MINIX is expanded from...
-configure.ac:408: the top level])
-m4trace:configure.ac:408: -1- AC_SUBST([CPP])
-m4trace:configure.ac:408: -1- AC_SUBST_TRACE([CPP])
-m4trace:configure.ac:408: -1- m4_pattern_allow([^CPP$])
-m4trace:configure.ac:408: -1- AC_SUBST([CPPFLAGS])
-m4trace:configure.ac:408: -1- AC_SUBST_TRACE([CPPFLAGS])
-m4trace:configure.ac:408: -1- m4_pattern_allow([^CPPFLAGS$])
-m4trace:configure.ac:408: -1- AC_SUBST([CPP])
-m4trace:configure.ac:408: -1- AC_SUBST_TRACE([CPP])
-m4trace:configure.ac:408: -1- m4_pattern_allow([^CPP$])
-m4trace:configure.ac:408: -1- AC_SUBST([GREP])
-m4trace:configure.ac:408: -1- AC_SUBST_TRACE([GREP])
-m4trace:configure.ac:408: -1- m4_pattern_allow([^GREP$])
-m4trace:configure.ac:408: -1- AC_SUBST([EGREP])
-m4trace:configure.ac:408: -1- AC_SUBST_TRACE([EGREP])
-m4trace:configure.ac:408: -1- m4_pattern_allow([^EGREP$])
-m4trace:configure.ac:408: -1- AC_DEFINE_TRACE_LITERAL([STDC_HEADERS])
-m4trace:configure.ac:408: -1- m4_pattern_allow([^STDC_HEADERS$])
-m4trace:configure.ac:408: -1- AH_OUTPUT([STDC_HEADERS], [/* Define to 1 if you have the ANSI C header files. */
-@%:@undef STDC_HEADERS])
-m4trace:configure.ac:408: -1- AH_OUTPUT([HAVE_SYS_TYPES_H], [/* Define to 1 if you have the <sys/types.h> header file. */
-@%:@undef HAVE_SYS_TYPES_H])
-m4trace:configure.ac:408: -1- AH_OUTPUT([HAVE_SYS_STAT_H], [/* Define to 1 if you have the <sys/stat.h> header file. */
-@%:@undef HAVE_SYS_STAT_H])
-m4trace:configure.ac:408: -1- AH_OUTPUT([HAVE_STDLIB_H], [/* Define to 1 if you have the <stdlib.h> header file. */
-@%:@undef HAVE_STDLIB_H])
-m4trace:configure.ac:408: -1- AH_OUTPUT([HAVE_STRING_H], [/* Define to 1 if you have the <string.h> header file. */
-@%:@undef HAVE_STRING_H])
-m4trace:configure.ac:408: -1- AH_OUTPUT([HAVE_MEMORY_H], [/* Define to 1 if you have the <memory.h> header file. */
-@%:@undef HAVE_MEMORY_H])
-m4trace:configure.ac:408: -1- AH_OUTPUT([HAVE_STRINGS_H], [/* Define to 1 if you have the <strings.h> header file. */
-@%:@undef HAVE_STRINGS_H])
-m4trace:configure.ac:408: -1- AH_OUTPUT([HAVE_INTTYPES_H], [/* Define to 1 if you have the <inttypes.h> header file. */
-@%:@undef HAVE_INTTYPES_H])
-m4trace:configure.ac:408: -1- AH_OUTPUT([HAVE_STDINT_H], [/* Define to 1 if you have the <stdint.h> header file. */
-@%:@undef HAVE_STDINT_H])
-m4trace:configure.ac:408: -1- AH_OUTPUT([HAVE_UNISTD_H], [/* Define to 1 if you have the <unistd.h> header file. */
-@%:@undef HAVE_UNISTD_H])
-m4trace:configure.ac:408: -1- AC_DEFINE_TRACE_LITERAL([_POSIX_SOURCE])
-m4trace:configure.ac:408: -1- m4_pattern_allow([^_POSIX_SOURCE$])
-m4trace:configure.ac:408: -1- AH_OUTPUT([_POSIX_SOURCE], [/* Define to 1 if you need to in order for `stat\' and other things to work. */
-@%:@undef _POSIX_SOURCE])
-m4trace:configure.ac:408: -1- AC_DEFINE_TRACE_LITERAL([_POSIX_1_SOURCE])
-m4trace:configure.ac:408: -1- m4_pattern_allow([^_POSIX_1_SOURCE$])
-m4trace:configure.ac:408: -1- AH_OUTPUT([_POSIX_1_SOURCE], [/* Define to 2 if the system does not provide POSIX.1 features except with
-   this defined. */
-@%:@undef _POSIX_1_SOURCE])
-m4trace:configure.ac:408: -1- AC_DEFINE_TRACE_LITERAL([_MINIX])
-m4trace:configure.ac:408: -1- m4_pattern_allow([^_MINIX$])
-m4trace:configure.ac:408: -1- AH_OUTPUT([_MINIX], [/* Define to 1 if on MINIX. */
-@%:@undef _MINIX])
-m4trace:configure.ac:408: -1- AH_OUTPUT([USE_SYSTEM_EXTENSIONS], [/* Enable extensions on AIX 3, Interix.  */
-#ifndef _ALL_SOURCE
-# undef _ALL_SOURCE
-#endif
-/* Enable GNU extensions on systems that have them.  */
-#ifndef _GNU_SOURCE
-# undef _GNU_SOURCE
-#endif
-/* Enable threading extensions on Solaris.  */
-#ifndef _POSIX_PTHREAD_SEMANTICS
-# undef _POSIX_PTHREAD_SEMANTICS
-#endif
-/* Enable extensions on HP NonStop.  */
-#ifndef _TANDEM_SOURCE
-# undef _TANDEM_SOURCE
-#endif
-/* Enable general extensions on Solaris.  */
-#ifndef __EXTENSIONS__
-# undef __EXTENSIONS__
-#endif
-])
-m4trace:configure.ac:408: -1- AC_DEFINE_TRACE_LITERAL([__EXTENSIONS__])
-m4trace:configure.ac:408: -1- m4_pattern_allow([^__EXTENSIONS__$])
-m4trace:configure.ac:408: -1- AC_DEFINE_TRACE_LITERAL([_ALL_SOURCE])
-m4trace:configure.ac:408: -1- m4_pattern_allow([^_ALL_SOURCE$])
-m4trace:configure.ac:408: -1- AC_DEFINE_TRACE_LITERAL([_GNU_SOURCE])
-m4trace:configure.ac:408: -1- m4_pattern_allow([^_GNU_SOURCE$])
-m4trace:configure.ac:408: -1- AC_DEFINE_TRACE_LITERAL([_POSIX_PTHREAD_SEMANTICS])
-m4trace:configure.ac:408: -1- m4_pattern_allow([^_POSIX_PTHREAD_SEMANTICS$])
-m4trace:configure.ac:408: -1- AC_DEFINE_TRACE_LITERAL([_TANDEM_SOURCE])
-m4trace:configure.ac:408: -1- m4_pattern_allow([^_TANDEM_SOURCE$])
-m4trace:configure.ac:410: -1- AC_DEFINE_TRACE_LITERAL([_FILE_OFFSET_BITS])
-m4trace:configure.ac:410: -1- m4_pattern_allow([^_FILE_OFFSET_BITS$])
-m4trace:configure.ac:410: -1- AH_OUTPUT([_FILE_OFFSET_BITS], [/* Number of bits in a file offset, on hosts where this is settable. */
-@%:@undef _FILE_OFFSET_BITS])
-m4trace:configure.ac:410: -1- AC_DEFINE_TRACE_LITERAL([_LARGE_FILES])
-m4trace:configure.ac:410: -1- m4_pattern_allow([^_LARGE_FILES$])
-m4trace:configure.ac:410: -1- AH_OUTPUT([_LARGE_FILES], [/* Define for large files, on AIX-style hosts. */
-@%:@undef _LARGE_FILES])
-m4trace:configure.ac:447: -1- AC_SUBST([CROSS_COMPILE])
-m4trace:configure.ac:447: -1- AC_SUBST_TRACE([CROSS_COMPILE])
-m4trace:configure.ac:447: -1- m4_pattern_allow([^CROSS_COMPILE$])
-m4trace:configure.ac:449: -1- AC_SUBST([SIGNAMES_H])
-m4trace:configure.ac:449: -1- AC_SUBST_TRACE([SIGNAMES_H])
-m4trace:configure.ac:449: -1- m4_pattern_allow([^SIGNAMES_H$])
-m4trace:configure.ac:450: -1- AC_SUBST([SIGNAMES_O])
-m4trace:configure.ac:450: -1- AC_SUBST_TRACE([SIGNAMES_O])
-m4trace:configure.ac:450: -1- m4_pattern_allow([^SIGNAMES_O$])
-m4trace:configure.ac:484: -1- _m4_warn([obsolete], [The macro `ac_cv_prog_gcc' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/c.m4:436: ac_cv_prog_gcc is expanded from...
-configure.ac:484: the top level])
-m4trace:configure.ac:511: -1- AC_SUBST([CFLAGS])
-m4trace:configure.ac:511: -1- AC_SUBST_TRACE([CFLAGS])
-m4trace:configure.ac:511: -1- m4_pattern_allow([^CFLAGS$])
-m4trace:configure.ac:512: -1- AC_SUBST([CPPFLAGS])
-m4trace:configure.ac:512: -1- AC_SUBST_TRACE([CPPFLAGS])
-m4trace:configure.ac:512: -1- m4_pattern_allow([^CPPFLAGS$])
-m4trace:configure.ac:513: -1- AC_SUBST([LDFLAGS])
-m4trace:configure.ac:513: -1- AC_SUBST_TRACE([LDFLAGS])
-m4trace:configure.ac:513: -1- m4_pattern_allow([^LDFLAGS$])
-m4trace:configure.ac:514: -1- AC_SUBST([STATIC_LD])
-m4trace:configure.ac:514: -1- AC_SUBST_TRACE([STATIC_LD])
-m4trace:configure.ac:514: -1- m4_pattern_allow([^STATIC_LD$])
-m4trace:configure.ac:516: -1- AC_SUBST([CC_FOR_BUILD])
-m4trace:configure.ac:516: -1- AC_SUBST_TRACE([CC_FOR_BUILD])
-m4trace:configure.ac:516: -1- m4_pattern_allow([^CC_FOR_BUILD$])
-m4trace:configure.ac:517: -1- AC_SUBST([CFLAGS_FOR_BUILD])
-m4trace:configure.ac:517: -1- AC_SUBST_TRACE([CFLAGS_FOR_BUILD])
-m4trace:configure.ac:517: -1- m4_pattern_allow([^CFLAGS_FOR_BUILD$])
-m4trace:configure.ac:518: -1- AC_SUBST([CPPFLAGS_FOR_BUILD])
-m4trace:configure.ac:518: -1- AC_SUBST_TRACE([CPPFLAGS_FOR_BUILD])
-m4trace:configure.ac:518: -1- m4_pattern_allow([^CPPFLAGS_FOR_BUILD$])
-m4trace:configure.ac:519: -1- AC_SUBST([LDFLAGS_FOR_BUILD])
-m4trace:configure.ac:519: -1- AC_SUBST_TRACE([LDFLAGS_FOR_BUILD])
-m4trace:configure.ac:519: -1- m4_pattern_allow([^LDFLAGS_FOR_BUILD$])
-m4trace:configure.ac:520: -1- AC_SUBST([LIBS_FOR_BUILD])
-m4trace:configure.ac:520: -1- AC_SUBST_TRACE([LIBS_FOR_BUILD])
-m4trace:configure.ac:520: -1- m4_pattern_allow([^LIBS_FOR_BUILD$])
-m4trace:configure.ac:534: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2765: AC_TRY_RUN is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-aclocal.m4:1806: RL_LIB_READLINE_VERSION is expanded from...
-configure.ac:534: the top level])
-m4trace:configure.ac:534: -1- AC_DEFINE_TRACE_LITERAL([RL_READLINE_VERSION])
-m4trace:configure.ac:534: -1- m4_pattern_allow([^RL_READLINE_VERSION$])
-m4trace:configure.ac:534: -1- AH_OUTPUT([RL_READLINE_VERSION], [/* encoded version of the installed readline library */
-@%:@undef RL_READLINE_VERSION])
-m4trace:configure.ac:534: -1- AC_DEFINE_TRACE_LITERAL([RL_VERSION_MAJOR])
-m4trace:configure.ac:534: -1- m4_pattern_allow([^RL_VERSION_MAJOR$])
-m4trace:configure.ac:534: -1- AH_OUTPUT([RL_VERSION_MAJOR], [/* major version of installed readline library */
-@%:@undef RL_VERSION_MAJOR])
-m4trace:configure.ac:534: -1- AC_DEFINE_TRACE_LITERAL([RL_VERSION_MINOR])
-m4trace:configure.ac:534: -1- m4_pattern_allow([^RL_VERSION_MINOR$])
-m4trace:configure.ac:534: -1- AH_OUTPUT([RL_VERSION_MINOR], [/* minor version of installed readline library */
-@%:@undef RL_VERSION_MINOR])
-m4trace:configure.ac:534: -1- AC_SUBST([RL_VERSION])
-m4trace:configure.ac:534: -1- AC_SUBST_TRACE([RL_VERSION])
-m4trace:configure.ac:534: -1- m4_pattern_allow([^RL_VERSION$])
-m4trace:configure.ac:534: -1- AC_SUBST([RL_MAJOR])
-m4trace:configure.ac:534: -1- AC_SUBST_TRACE([RL_MAJOR])
-m4trace:configure.ac:534: -1- m4_pattern_allow([^RL_MAJOR$])
-m4trace:configure.ac:534: -1- AC_SUBST([RL_MINOR])
-m4trace:configure.ac:534: -1- AC_SUBST_TRACE([RL_MINOR])
-m4trace:configure.ac:534: -1- m4_pattern_allow([^RL_MINOR$])
-m4trace:configure.ac:547: -1- AC_DEFINE_TRACE_LITERAL([READLINE])
-m4trace:configure.ac:547: -1- m4_pattern_allow([^READLINE$])
-m4trace:configure.ac:582: -1- AC_DEFINE_TRACE_LITERAL([HISTORY])
-m4trace:configure.ac:582: -1- m4_pattern_allow([^HISTORY$])
-m4trace:configure.ac:585: -1- AC_DEFINE_TRACE_LITERAL([BANG_HISTORY])
-m4trace:configure.ac:585: -1- m4_pattern_allow([^BANG_HISTORY$])
-m4trace:configure.ac:615: -1- AC_SUBST([READLINE_LIB])
-m4trace:configure.ac:615: -1- AC_SUBST_TRACE([READLINE_LIB])
-m4trace:configure.ac:615: -1- m4_pattern_allow([^READLINE_LIB$])
-m4trace:configure.ac:616: -1- AC_SUBST([READLINE_DEP])
-m4trace:configure.ac:616: -1- AC_SUBST_TRACE([READLINE_DEP])
-m4trace:configure.ac:616: -1- m4_pattern_allow([^READLINE_DEP$])
-m4trace:configure.ac:617: -1- AC_SUBST([RL_LIBDIR])
-m4trace:configure.ac:617: -1- AC_SUBST_TRACE([RL_LIBDIR])
-m4trace:configure.ac:617: -1- m4_pattern_allow([^RL_LIBDIR$])
-m4trace:configure.ac:618: -1- AC_SUBST([RL_INCLUDEDIR])
-m4trace:configure.ac:618: -1- AC_SUBST_TRACE([RL_INCLUDEDIR])
-m4trace:configure.ac:618: -1- m4_pattern_allow([^RL_INCLUDEDIR$])
-m4trace:configure.ac:619: -1- AC_SUBST([RL_INCLUDE])
-m4trace:configure.ac:619: -1- AC_SUBST_TRACE([RL_INCLUDE])
-m4trace:configure.ac:619: -1- m4_pattern_allow([^RL_INCLUDE$])
-m4trace:configure.ac:620: -1- AC_SUBST([HISTORY_LIB])
-m4trace:configure.ac:620: -1- AC_SUBST_TRACE([HISTORY_LIB])
-m4trace:configure.ac:620: -1- m4_pattern_allow([^HISTORY_LIB$])
-m4trace:configure.ac:621: -1- AC_SUBST([HISTORY_DEP])
-m4trace:configure.ac:621: -1- AC_SUBST_TRACE([HISTORY_DEP])
-m4trace:configure.ac:621: -1- m4_pattern_allow([^HISTORY_DEP$])
-m4trace:configure.ac:622: -1- AC_SUBST([HIST_LIBDIR])
-m4trace:configure.ac:622: -1- AC_SUBST_TRACE([HIST_LIBDIR])
-m4trace:configure.ac:622: -1- m4_pattern_allow([^HIST_LIBDIR$])
-m4trace:configure.ac:623: -1- AC_SUBST([TILDE_LIB])
-m4trace:configure.ac:623: -1- AC_SUBST_TRACE([TILDE_LIB])
-m4trace:configure.ac:623: -1- m4_pattern_allow([^TILDE_LIB$])
-m4trace:configure.ac:628: -1- AC_REQUIRE_AUX_FILE([install-sh])
-m4trace:configure.ac:628: -1- AC_SUBST([INSTALL_PROGRAM])
-m4trace:configure.ac:628: -1- AC_SUBST_TRACE([INSTALL_PROGRAM])
-m4trace:configure.ac:628: -1- m4_pattern_allow([^INSTALL_PROGRAM$])
-m4trace:configure.ac:628: -1- AC_SUBST([INSTALL_SCRIPT])
-m4trace:configure.ac:628: -1- AC_SUBST_TRACE([INSTALL_SCRIPT])
-m4trace:configure.ac:628: -1- m4_pattern_allow([^INSTALL_SCRIPT$])
-m4trace:configure.ac:628: -1- AC_SUBST([INSTALL_DATA])
-m4trace:configure.ac:628: -1- AC_SUBST_TRACE([INSTALL_DATA])
-m4trace:configure.ac:628: -1- m4_pattern_allow([^INSTALL_DATA$])
-m4trace:configure.ac:629: -1- AC_SUBST([AR])
-m4trace:configure.ac:629: -1- AC_SUBST_TRACE([AR])
-m4trace:configure.ac:629: -1- m4_pattern_allow([^AR$])
-m4trace:configure.ac:633: -1- AC_SUBST([RANLIB])
-m4trace:configure.ac:633: -1- AC_SUBST_TRACE([RANLIB])
-m4trace:configure.ac:633: -1- m4_pattern_allow([^RANLIB$])
-m4trace:configure.ac:634: -1- AC_SUBST([YACC])
-m4trace:configure.ac:634: -1- AC_SUBST_TRACE([YACC])
-m4trace:configure.ac:634: -1- m4_pattern_allow([^YACC$])
-m4trace:configure.ac:634: -1- AC_SUBST([YACC])
-m4trace:configure.ac:634: -1- AC_SUBST_TRACE([YACC])
-m4trace:configure.ac:634: -1- m4_pattern_allow([^YACC$])
-m4trace:configure.ac:634: -1- AC_SUBST([YFLAGS])
-m4trace:configure.ac:634: -1- AC_SUBST_TRACE([YFLAGS])
-m4trace:configure.ac:634: -1- m4_pattern_allow([^YFLAGS$])
-m4trace:configure.ac:635: -1- AC_SUBST([SET_MAKE])
-m4trace:configure.ac:635: -1- AC_SUBST_TRACE([SET_MAKE])
-m4trace:configure.ac:635: -1- m4_pattern_allow([^SET_MAKE$])
-m4trace:configure.ac:641: -1- AC_SUBST([MAKE_SHELL])
-m4trace:configure.ac:641: -1- AC_SUBST_TRACE([MAKE_SHELL])
-m4trace:configure.ac:641: -1- m4_pattern_allow([^MAKE_SHELL$])
-m4trace:configure.ac:663: -1- AC_SUBST([SIZE])
-m4trace:configure.ac:663: -1- AC_SUBST_TRACE([SIZE])
-m4trace:configure.ac:663: -1- m4_pattern_allow([^SIZE$])
-m4trace:configure.ac:665: -1- m4_include([m4/stat-time.m4])
-m4trace:configure.ac:666: -1- m4_include([m4/timespec.m4])
-m4trace:configure.ac:669: -1- AC_DEFINE_TRACE_LITERAL([_GNU_SOURCE])
-m4trace:configure.ac:669: -1- m4_pattern_allow([^_GNU_SOURCE$])
-m4trace:configure.ac:672: -1- AC_DEFINE_TRACE_LITERAL([const])
-m4trace:configure.ac:672: -1- m4_pattern_allow([^const$])
-m4trace:configure.ac:672: -1- AH_OUTPUT([const], [/* Define to empty if `const\' does not conform to ANSI C. */
-@%:@undef const])
-m4trace:configure.ac:673: -1- AH_OUTPUT([inline], [/* Define to `__inline__\' or `__inline\' if that\'s what the C compiler
-   calls it, or to nothing if \'inline\' is not supported under any name.  */
-#ifndef __cplusplus
-#undef inline
-#endif])
-m4trace:configure.ac:674: -1- AH_OUTPUT([WORDS_BIGENDIAN], [/* Define WORDS_BIGENDIAN to 1 if your processor stores words with the most
-   significant byte first (like Motorola and SPARC, unlike Intel). */
-#if defined AC_APPLE_UNIVERSAL_BUILD
-# if defined __BIG_ENDIAN__
-#  define WORDS_BIGENDIAN 1
-# endif
-#else
-# ifndef WORDS_BIGENDIAN
-#  undef WORDS_BIGENDIAN
-# endif
-#endif])
-m4trace:configure.ac:674: -1- AC_DEFINE_TRACE_LITERAL([WORDS_BIGENDIAN])
-m4trace:configure.ac:674: -1- m4_pattern_allow([^WORDS_BIGENDIAN$])
-m4trace:configure.ac:674: -1- AC_DEFINE_TRACE_LITERAL([AC_APPLE_UNIVERSAL_BUILD])
-m4trace:configure.ac:674: -1- m4_pattern_allow([^AC_APPLE_UNIVERSAL_BUILD$])
-m4trace:configure.ac:674: -1- AH_OUTPUT([AC_APPLE_UNIVERSAL_BUILD], [/* Define if building universal (internal helper macro) */
-@%:@undef AC_APPLE_UNIVERSAL_BUILD])
-m4trace:configure.ac:675: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STRINGIZE])
-m4trace:configure.ac:675: -1- m4_pattern_allow([^HAVE_STRINGIZE$])
-m4trace:configure.ac:675: -1- AH_OUTPUT([HAVE_STRINGIZE], [/* Define to 1 if cpp supports the ANSI @%:@ stringizing operator. */
-@%:@undef HAVE_STRINGIZE])
-m4trace:configure.ac:676: -1- _m4_warn([obsolete], [The macro `AC_C_LONG_DOUBLE' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/types.m4:451: AC_C_LONG_DOUBLE is expanded from...
-configure.ac:676: the top level])
-m4trace:configure.ac:676: -1- AC_DEFINE_TRACE_LITERAL([HAVE_LONG_DOUBLE_WIDER])
-m4trace:configure.ac:676: -1- m4_pattern_allow([^HAVE_LONG_DOUBLE_WIDER$])
-m4trace:configure.ac:676: -1- AH_OUTPUT([HAVE_LONG_DOUBLE_WIDER], [/* Define to 1 if the type `long double\' works and has more range or precision
-   than `double\'. */
-@%:@undef HAVE_LONG_DOUBLE_WIDER])
-m4trace:configure.ac:676: -1- AC_DEFINE_TRACE_LITERAL([HAVE_LONG_DOUBLE])
-m4trace:configure.ac:676: -1- m4_pattern_allow([^HAVE_LONG_DOUBLE$])
-m4trace:configure.ac:676: -1- AH_OUTPUT([HAVE_LONG_DOUBLE], [/* Define to 1 if the type `long double\' works and has more range or precision
-   than `double\'. */
-@%:@undef HAVE_LONG_DOUBLE])
-m4trace:configure.ac:677: -1- AC_DEFINE_TRACE_LITERAL([PROTOTYPES])
-m4trace:configure.ac:677: -1- m4_pattern_allow([^PROTOTYPES$])
-m4trace:configure.ac:677: -1- AH_OUTPUT([PROTOTYPES], [/* Define to 1 if the C compiler supports function prototypes. */
-@%:@undef PROTOTYPES])
-m4trace:configure.ac:677: -1- AC_DEFINE_TRACE_LITERAL([__PROTOTYPES])
-m4trace:configure.ac:677: -1- m4_pattern_allow([^__PROTOTYPES$])
-m4trace:configure.ac:677: -1- AH_OUTPUT([__PROTOTYPES], [/* Define like PROTOTYPES; this can be used by system headers. */
-@%:@undef __PROTOTYPES])
-m4trace:configure.ac:678: -1- AH_OUTPUT([__CHAR_UNSIGNED__], [/* Define to 1 if type `char\' is unsigned and you are not using gcc.  */
-#ifndef __CHAR_UNSIGNED__
-# undef __CHAR_UNSIGNED__
-#endif])
-m4trace:configure.ac:678: -1- AC_DEFINE_TRACE_LITERAL([__CHAR_UNSIGNED__])
-m4trace:configure.ac:678: -1- m4_pattern_allow([^__CHAR_UNSIGNED__$])
-m4trace:configure.ac:679: -1- AC_DEFINE_TRACE_LITERAL([volatile])
-m4trace:configure.ac:679: -1- m4_pattern_allow([^volatile$])
-m4trace:configure.ac:679: -1- AH_OUTPUT([volatile], [/* Define to empty if the keyword `volatile\' does not work. Warning: valid
-   code using `volatile\' can become incorrect without. Disable with care. */
-@%:@undef volatile])
-m4trace:configure.ac:680: -1- AH_OUTPUT([restrict], [/* Define to the equivalent of the C99 \'restrict\' keyword, or to
-   nothing if this is not supported.  Do not define if restrict is
-   supported directly.  */
-#undef restrict
-/* Work around a bug in Sun C++: it does not support _Restrict or
-   __restrict__, even though the corresponding Sun C compiler ends up with
-   "#define restrict _Restrict" or "#define restrict __restrict__" in the
-   previous line.  Perhaps some future version of Sun C++ will work with
-   restrict; if so, hopefully it defines __RESTRICT like Sun C does.  */
-#if defined __SUNPRO_CC && !defined __RESTRICT
-# define _Restrict
-# define __restrict__
-#endif])
-m4trace:configure.ac:680: -1- AC_DEFINE_TRACE_LITERAL([restrict])
-m4trace:configure.ac:680: -1- m4_pattern_allow([^restrict$])
-m4trace:configure.ac:680: -1- AC_DEFINE_TRACE_LITERAL([restrict])
-m4trace:configure.ac:680: -1- m4_pattern_allow([^restrict$])
-m4trace:configure.ac:683: -1- AM_GNU_GETTEXT([no-libtool], [need-ngettext], [lib/intl])
-m4trace:configure.ac:683: -1- AC_SUBST([MKINSTALLDIRS])
-m4trace:configure.ac:683: -1- AC_SUBST_TRACE([MKINSTALLDIRS])
-m4trace:configure.ac:683: -1- m4_pattern_allow([^MKINSTALLDIRS$])
-m4trace:configure.ac:683: -1- AM_NLS
-m4trace:configure.ac:683: -1- AC_SUBST([USE_NLS])
-m4trace:configure.ac:683: -1- AC_SUBST_TRACE([USE_NLS])
-m4trace:configure.ac:683: -1- m4_pattern_allow([^USE_NLS$])
-m4trace:configure.ac:683: -1- AC_SUBST([MSGFMT])
-m4trace:configure.ac:683: -1- AC_SUBST_TRACE([MSGFMT])
-m4trace:configure.ac:683: -1- m4_pattern_allow([^MSGFMT$])
-m4trace:configure.ac:683: -1- AC_SUBST([GMSGFMT])
-m4trace:configure.ac:683: -1- AC_SUBST_TRACE([GMSGFMT])
-m4trace:configure.ac:683: -1- m4_pattern_allow([^GMSGFMT$])
-m4trace:configure.ac:683: -1- AC_SUBST([XGETTEXT])
-m4trace:configure.ac:683: -1- AC_SUBST_TRACE([XGETTEXT])
-m4trace:configure.ac:683: -1- m4_pattern_allow([^XGETTEXT$])
-m4trace:configure.ac:683: -1- AC_SUBST([MSGMERGE])
-m4trace:configure.ac:683: -1- AC_SUBST_TRACE([MSGMERGE])
-m4trace:configure.ac:683: -1- m4_pattern_allow([^MSGMERGE$])
-m4trace:configure.ac:683: -1- _m4_warn([obsolete], [The macro `AC_OUTPUT_COMMANDS' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/status.m4:1028: AC_OUTPUT_COMMANDS is expanded from...
-aclocal.m4:3707: AM_PO_SUBDIRS is expanded from...
-aclocal.m4:2111: AM_GNU_GETTEXT is expanded from...
-configure.ac:683: the top level])
-m4trace:configure.ac:683: -1- AC_DEFINE_TRACE_LITERAL([off_t])
-m4trace:configure.ac:683: -1- m4_pattern_allow([^off_t$])
-m4trace:configure.ac:683: -1- AH_OUTPUT([off_t], [/* Define to `long int\' if <sys/types.h> does not define. */
-@%:@undef off_t])
-m4trace:configure.ac:683: -1- AC_DEFINE_TRACE_LITERAL([size_t])
-m4trace:configure.ac:683: -1- m4_pattern_allow([^size_t$])
-m4trace:configure.ac:683: -1- AH_OUTPUT([size_t], [/* Define to `unsigned int\' if <sys/types.h> does not define. */
-@%:@undef size_t])
-m4trace:configure.ac:683: -1- AC_DEFINE_TRACE_LITERAL([HAVE_ALLOCA_H])
-m4trace:configure.ac:683: -1- m4_pattern_allow([^HAVE_ALLOCA_H$])
-m4trace:configure.ac:683: -1- AH_OUTPUT([HAVE_ALLOCA_H], [/* Define to 1 if you have <alloca.h> and it should be used (not on Ultrix).
-   */
-@%:@undef HAVE_ALLOCA_H])
-m4trace:configure.ac:683: -1- AC_DEFINE_TRACE_LITERAL([HAVE_ALLOCA])
-m4trace:configure.ac:683: -1- m4_pattern_allow([^HAVE_ALLOCA$])
-m4trace:configure.ac:683: -1- AH_OUTPUT([HAVE_ALLOCA], [/* Define to 1 if you have `alloca\', as a function or macro. */
-@%:@undef HAVE_ALLOCA])
-m4trace:configure.ac:683: -1- AC_LIBSOURCE([alloca.c])
-m4trace:configure.ac:683: -1- AC_SUBST([ALLOCA], [\${LIBOBJDIR}alloca.$ac_objext])
-m4trace:configure.ac:683: -1- AC_SUBST_TRACE([ALLOCA])
-m4trace:configure.ac:683: -1- m4_pattern_allow([^ALLOCA$])
-m4trace:configure.ac:683: -1- AC_DEFINE_TRACE_LITERAL([C_ALLOCA])
-m4trace:configure.ac:683: -1- m4_pattern_allow([^C_ALLOCA$])
-m4trace:configure.ac:683: -1- AH_OUTPUT([C_ALLOCA], [/* Define to 1 if using `alloca.c\'. */
-@%:@undef C_ALLOCA])
-m4trace:configure.ac:683: -1- AC_DEFINE_TRACE_LITERAL([CRAY_STACKSEG_END])
-m4trace:configure.ac:683: -1- m4_pattern_allow([^CRAY_STACKSEG_END$])
-m4trace:configure.ac:683: -1- AH_OUTPUT([CRAY_STACKSEG_END], [/* Define to one of `_getb67\', `GETB67\', `getb67\' for Cray-2 and Cray-YMP
-   systems. This function is required for `alloca.c\' support on those systems.
-   */
-@%:@undef CRAY_STACKSEG_END])
-m4trace:configure.ac:683: -1- AH_OUTPUT([STACK_DIRECTION], [/* If using the C implementation of alloca, define if you know the
-   direction of stack growth for your system; otherwise it will be
-   automatically deduced at runtime.
-       STACK_DIRECTION > 0 => grows toward higher addresses
-       STACK_DIRECTION < 0 => grows toward lower addresses
-       STACK_DIRECTION = 0 => direction of growth unknown */
-@%:@undef STACK_DIRECTION])
-m4trace:configure.ac:683: -1- AC_DEFINE_TRACE_LITERAL([STACK_DIRECTION])
-m4trace:configure.ac:683: -1- m4_pattern_allow([^STACK_DIRECTION$])
-m4trace:configure.ac:683: -1- AH_OUTPUT([HAVE_STDLIB_H], [/* Define to 1 if you have the <stdlib.h> header file. */
-@%:@undef HAVE_STDLIB_H])
-m4trace:configure.ac:683: -1- AH_OUTPUT([HAVE_UNISTD_H], [/* Define to 1 if you have the <unistd.h> header file. */
-@%:@undef HAVE_UNISTD_H])
-m4trace:configure.ac:683: -1- AH_OUTPUT([HAVE_SYS_PARAM_H], [/* Define to 1 if you have the <sys/param.h> header file. */
-@%:@undef HAVE_SYS_PARAM_H])
-m4trace:configure.ac:683: -1- AH_OUTPUT([HAVE_GETPAGESIZE], [/* Define to 1 if you have the `getpagesize\' function. */
-@%:@undef HAVE_GETPAGESIZE])
-m4trace:configure.ac:683: -1- AC_DEFINE_TRACE_LITERAL([HAVE_GETPAGESIZE])
-m4trace:configure.ac:683: -1- m4_pattern_allow([^HAVE_GETPAGESIZE$])
-m4trace:configure.ac:683: -1- AC_DEFINE_TRACE_LITERAL([HAVE_MMAP])
-m4trace:configure.ac:683: -1- m4_pattern_allow([^HAVE_MMAP$])
-m4trace:configure.ac:683: -1- AH_OUTPUT([HAVE_MMAP], [/* Define to 1 if you have a working `mmap\' system call. */
-@%:@undef HAVE_MMAP])
-m4trace:configure.ac:683: -1- AC_SUBST([GLIBC21])
-m4trace:configure.ac:683: -1- AC_SUBST_TRACE([GLIBC21])
-m4trace:configure.ac:683: -1- m4_pattern_allow([^GLIBC21$])
-m4trace:configure.ac:683: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2765: AC_TRY_RUN is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-../../lib/autoconf/general.m4:2053: AC_CACHE_CHECK is expanded from...
-aclocal.m4:2613: gt_INTDIV0 is expanded from...
-aclocal.m4:2399: AM_INTL_SUBDIR is expanded from...
-aclocal.m4:2111: AM_GNU_GETTEXT is expanded from...
-configure.ac:683: the top level])
-m4trace:configure.ac:683: -1- AC_DEFINE_TRACE_LITERAL([INTDIV0_RAISES_SIGFPE])
-m4trace:configure.ac:683: -1- m4_pattern_allow([^INTDIV0_RAISES_SIGFPE$])
-m4trace:configure.ac:683: -1- AH_OUTPUT([INTDIV0_RAISES_SIGFPE], [/* Define if integer division by zero raises signal SIGFPE. */
-@%:@undef INTDIV0_RAISES_SIGFPE])
-m4trace:configure.ac:683: -1- _m4_warn([obsolete], [The macro `AC_TRY_COMPILE' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2615: AC_TRY_COMPILE is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-../../lib/autoconf/general.m4:2053: AC_CACHE_CHECK is expanded from...
-aclocal.m4:2715: jm_AC_HEADER_INTTYPES_H is expanded from...
-aclocal.m4:4016: jm_AC_TYPE_UINTMAX_T is expanded from...
-aclocal.m4:2399: AM_INTL_SUBDIR is expanded from...
-aclocal.m4:2111: AM_GNU_GETTEXT is expanded from...
-configure.ac:683: the top level])
-m4trace:configure.ac:683: -1- AC_DEFINE_TRACE_LITERAL([HAVE_INTTYPES_H_WITH_UINTMAX])
-m4trace:configure.ac:683: -1- m4_pattern_allow([^HAVE_INTTYPES_H_WITH_UINTMAX$])
-m4trace:configure.ac:683: -1- AH_OUTPUT([HAVE_INTTYPES_H_WITH_UINTMAX], [/* Define if <inttypes.h> exists, doesn\'t clash with <sys/types.h>, and
-   declares uintmax_t. */
-@%:@undef HAVE_INTTYPES_H_WITH_UINTMAX])
-m4trace:configure.ac:683: -1- _m4_warn([obsolete], [The macro `AC_TRY_COMPILE' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2615: AC_TRY_COMPILE is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-../../lib/autoconf/general.m4:2053: AC_CACHE_CHECK is expanded from...
-aclocal.m4:3986: jm_AC_HEADER_STDINT_H is expanded from...
-aclocal.m4:4016: jm_AC_TYPE_UINTMAX_T is expanded from...
-aclocal.m4:2399: AM_INTL_SUBDIR is expanded from...
-aclocal.m4:2111: AM_GNU_GETTEXT is expanded from...
-configure.ac:683: the top level])
-m4trace:configure.ac:683: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STDINT_H_WITH_UINTMAX])
-m4trace:configure.ac:683: -1- m4_pattern_allow([^HAVE_STDINT_H_WITH_UINTMAX$])
-m4trace:configure.ac:683: -1- AH_OUTPUT([HAVE_STDINT_H_WITH_UINTMAX], [/* Define if <stdint.h> exists, doesn\'t clash with <sys/types.h>, and declares
-   uintmax_t. */
-@%:@undef HAVE_STDINT_H_WITH_UINTMAX])
-m4trace:configure.ac:683: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2688: AC_TRY_LINK is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-../../lib/autoconf/general.m4:2053: AC_CACHE_CHECK is expanded from...
-aclocal.m4:4043: jm_AC_TYPE_UNSIGNED_LONG_LONG is expanded from...
-aclocal.m4:4016: jm_AC_TYPE_UINTMAX_T is expanded from...
-aclocal.m4:2399: AM_INTL_SUBDIR is expanded from...
-aclocal.m4:2111: AM_GNU_GETTEXT is expanded from...
-configure.ac:683: the top level])
-m4trace:configure.ac:683: -1- AC_DEFINE_TRACE_LITERAL([HAVE_UNSIGNED_LONG_LONG])
-m4trace:configure.ac:683: -1- m4_pattern_allow([^HAVE_UNSIGNED_LONG_LONG$])
-m4trace:configure.ac:683: -1- AH_OUTPUT([HAVE_UNSIGNED_LONG_LONG], [/* Define if you have the unsigned long long type. */
-@%:@undef HAVE_UNSIGNED_LONG_LONG])
-m4trace:configure.ac:683: -1- AC_DEFINE_TRACE_LITERAL([uintmax_t])
-m4trace:configure.ac:683: -1- m4_pattern_allow([^uintmax_t$])
-m4trace:configure.ac:683: -1- AH_OUTPUT([uintmax_t], [/* Define to unsigned long or unsigned long long if <stdint.h> and
-   <inttypes.h> don\'t define. */
-@%:@undef uintmax_t])
-m4trace:configure.ac:683: -1- AC_DEFINE_TRACE_LITERAL([HAVE_UINTMAX_T])
-m4trace:configure.ac:683: -1- m4_pattern_allow([^HAVE_UINTMAX_T$])
-m4trace:configure.ac:683: -1- AH_OUTPUT([HAVE_UINTMAX_T], [/* Define if you have the \'uintmax_t\' type in <stdint.h> or <inttypes.h>. */
-@%:@undef HAVE_UINTMAX_T])
-m4trace:configure.ac:683: -1- _m4_warn([obsolete], [The macro `AC_TRY_COMPILE' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2615: AC_TRY_COMPILE is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-../../lib/autoconf/general.m4:2053: AC_CACHE_CHECK is expanded from...
-aclocal.m4:2688: gt_HEADER_INTTYPES_H is expanded from...
-aclocal.m4:2399: AM_INTL_SUBDIR is expanded from...
-aclocal.m4:2111: AM_GNU_GETTEXT is expanded from...
-configure.ac:683: the top level])
-m4trace:configure.ac:683: -1- AC_DEFINE_TRACE_LITERAL([HAVE_INTTYPES_H])
-m4trace:configure.ac:683: -1- m4_pattern_allow([^HAVE_INTTYPES_H$])
-m4trace:configure.ac:683: -1- AH_OUTPUT([HAVE_INTTYPES_H], [/* Define if <inttypes.h> exists and doesn\'t clash with <sys/types.h>. */
-@%:@undef HAVE_INTTYPES_H])
-m4trace:configure.ac:683: -1- _m4_warn([obsolete], [The macro `AC_TRY_COMPILE' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2615: AC_TRY_COMPILE is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-../../lib/autoconf/general.m4:2053: AC_CACHE_CHECK is expanded from...
-aclocal.m4:2743: gt_INTTYPES_PRI is expanded from...
-aclocal.m4:2399: AM_INTL_SUBDIR is expanded from...
-aclocal.m4:2111: AM_GNU_GETTEXT is expanded from...
-configure.ac:683: the top level])
-m4trace:configure.ac:683: -1- AC_DEFINE_TRACE_LITERAL([PRI_MACROS_BROKEN])
-m4trace:configure.ac:683: -1- m4_pattern_allow([^PRI_MACROS_BROKEN$])
-m4trace:configure.ac:683: -1- AH_OUTPUT([PRI_MACROS_BROKEN], [/* Define if <inttypes.h> exists and defines unusable PRI* macros. */
-@%:@undef PRI_MACROS_BROKEN])
-m4trace:configure.ac:683: -1- AH_OUTPUT([HAVE_ARGZ_H], [/* Define to 1 if you have the <argz.h> header file. */
-@%:@undef HAVE_ARGZ_H])
-m4trace:configure.ac:683: -1- AH_OUTPUT([HAVE_LIMITS_H], [/* Define to 1 if you have the <limits.h> header file. */
-@%:@undef HAVE_LIMITS_H])
-m4trace:configure.ac:683: -1- AH_OUTPUT([HAVE_LOCALE_H], [/* Define to 1 if you have the <locale.h> header file. */
-@%:@undef HAVE_LOCALE_H])
-m4trace:configure.ac:683: -1- AH_OUTPUT([HAVE_NL_TYPES_H], [/* Define to 1 if you have the <nl_types.h> header file. */
-@%:@undef HAVE_NL_TYPES_H])
-m4trace:configure.ac:683: -1- AH_OUTPUT([HAVE_MALLOC_H], [/* Define to 1 if you have the <malloc.h> header file. */
-@%:@undef HAVE_MALLOC_H])
-m4trace:configure.ac:683: -1- AH_OUTPUT([HAVE_STDDEF_H], [/* Define to 1 if you have the <stddef.h> header file. */
-@%:@undef HAVE_STDDEF_H])
-m4trace:configure.ac:683: -1- AH_OUTPUT([HAVE_STDLIB_H], [/* Define to 1 if you have the <stdlib.h> header file. */
-@%:@undef HAVE_STDLIB_H])
-m4trace:configure.ac:683: -1- AH_OUTPUT([HAVE_STRING_H], [/* Define to 1 if you have the <string.h> header file. */
-@%:@undef HAVE_STRING_H])
-m4trace:configure.ac:683: -1- AH_OUTPUT([HAVE_UNISTD_H], [/* Define to 1 if you have the <unistd.h> header file. */
-@%:@undef HAVE_UNISTD_H])
-m4trace:configure.ac:683: -1- AH_OUTPUT([HAVE_SYS_PARAM_H], [/* Define to 1 if you have the <sys/param.h> header file. */
-@%:@undef HAVE_SYS_PARAM_H])
-m4trace:configure.ac:683: -1- AH_OUTPUT([HAVE_FEOF_UNLOCKED], [/* Define to 1 if you have the `feof_unlocked\' function. */
-@%:@undef HAVE_FEOF_UNLOCKED])
-m4trace:configure.ac:683: -1- AH_OUTPUT([HAVE_FGETS_UNLOCKED], [/* Define to 1 if you have the `fgets_unlocked\' function. */
-@%:@undef HAVE_FGETS_UNLOCKED])
-m4trace:configure.ac:683: -1- AH_OUTPUT([HAVE_GETC_UNLOCKED], [/* Define to 1 if you have the `getc_unlocked\' function. */
-@%:@undef HAVE_GETC_UNLOCKED])
-m4trace:configure.ac:683: -1- AH_OUTPUT([HAVE_GETCWD], [/* Define to 1 if you have the `getcwd\' function. */
-@%:@undef HAVE_GETCWD])
-m4trace:configure.ac:683: -1- AH_OUTPUT([HAVE_GETEGID], [/* Define to 1 if you have the `getegid\' function. */
-@%:@undef HAVE_GETEGID])
-m4trace:configure.ac:683: -1- AH_OUTPUT([HAVE_GETEUID], [/* Define to 1 if you have the `geteuid\' function. */
-@%:@undef HAVE_GETEUID])
-m4trace:configure.ac:683: -1- AH_OUTPUT([HAVE_GETGID], [/* Define to 1 if you have the `getgid\' function. */
-@%:@undef HAVE_GETGID])
-m4trace:configure.ac:683: -1- AH_OUTPUT([HAVE_GETUID], [/* Define to 1 if you have the `getuid\' function. */
-@%:@undef HAVE_GETUID])
-m4trace:configure.ac:683: -1- AH_OUTPUT([HAVE_MEMPCPY], [/* Define to 1 if you have the `mempcpy\' function. */
-@%:@undef HAVE_MEMPCPY])
-m4trace:configure.ac:683: -1- AH_OUTPUT([HAVE_MUNMAP], [/* Define to 1 if you have the `munmap\' function. */
-@%:@undef HAVE_MUNMAP])
-m4trace:configure.ac:683: -1- AH_OUTPUT([HAVE_PUTENV], [/* Define to 1 if you have the `putenv\' function. */
-@%:@undef HAVE_PUTENV])
-m4trace:configure.ac:683: -1- AH_OUTPUT([HAVE_SETENV], [/* Define to 1 if you have the `setenv\' function. */
-@%:@undef HAVE_SETENV])
-m4trace:configure.ac:683: -1- AH_OUTPUT([HAVE_SETLOCALE], [/* Define to 1 if you have the `setlocale\' function. */
-@%:@undef HAVE_SETLOCALE])
-m4trace:configure.ac:683: -1- AH_OUTPUT([HAVE_LOCALECONV], [/* Define to 1 if you have the `localeconv\' function. */
-@%:@undef HAVE_LOCALECONV])
-m4trace:configure.ac:683: -1- AH_OUTPUT([HAVE_STPCPY], [/* Define to 1 if you have the `stpcpy\' function. */
-@%:@undef HAVE_STPCPY])
-m4trace:configure.ac:683: -1- AH_OUTPUT([HAVE_STRCASECMP], [/* Define to 1 if you have the `strcasecmp\' function. */
-@%:@undef HAVE_STRCASECMP])
-m4trace:configure.ac:683: -1- AH_OUTPUT([HAVE_STRDUP], [/* Define to 1 if you have the `strdup\' function. */
-@%:@undef HAVE_STRDUP])
-m4trace:configure.ac:683: -1- AH_OUTPUT([HAVE_STRTOUL], [/* Define to 1 if you have the `strtoul\' function. */
-@%:@undef HAVE_STRTOUL])
-m4trace:configure.ac:683: -1- AH_OUTPUT([HAVE_TSEARCH], [/* Define to 1 if you have the `tsearch\' function. */
-@%:@undef HAVE_TSEARCH])
-m4trace:configure.ac:683: -1- AH_OUTPUT([HAVE___ARGZ_COUNT], [/* Define to 1 if you have the `__argz_count\' function. */
-@%:@undef HAVE___ARGZ_COUNT])
-m4trace:configure.ac:683: -1- AH_OUTPUT([HAVE___ARGZ_STRINGIFY], [/* Define to 1 if you have the `__argz_stringify\' function. */
-@%:@undef HAVE___ARGZ_STRINGIFY])
-m4trace:configure.ac:683: -1- AH_OUTPUT([HAVE___ARGZ_NEXT], [/* Define to 1 if you have the `__argz_next\' function. */
-@%:@undef HAVE___ARGZ_NEXT])
-m4trace:configure.ac:683: -1- AH_OUTPUT([HAVE___FSETLOCKING], [/* Define to 1 if you have the `__fsetlocking\' function. */
-@%:@undef HAVE___FSETLOCKING])
-m4trace:configure.ac:683: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2688: AC_TRY_LINK is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-../../lib/autoconf/general.m4:2053: AC_CACHE_CHECK is expanded from...
-aclocal.m4:2521: AM_ICONV_LINK is expanded from...
-aclocal.m4:2576: AM_ICONV is expanded from...
-aclocal.m4:2399: AM_INTL_SUBDIR is expanded from...
-aclocal.m4:2111: AM_GNU_GETTEXT is expanded from...
-configure.ac:683: the top level])
-m4trace:configure.ac:683: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2688: AC_TRY_LINK is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-../../lib/autoconf/general.m4:2053: AC_CACHE_CHECK is expanded from...
-aclocal.m4:2521: AM_ICONV_LINK is expanded from...
-aclocal.m4:2576: AM_ICONV is expanded from...
-aclocal.m4:2399: AM_INTL_SUBDIR is expanded from...
-aclocal.m4:2111: AM_GNU_GETTEXT is expanded from...
-configure.ac:683: the top level])
-m4trace:configure.ac:683: -1- AC_DEFINE_TRACE_LITERAL([HAVE_ICONV])
-m4trace:configure.ac:683: -1- m4_pattern_allow([^HAVE_ICONV$])
-m4trace:configure.ac:683: -1- AH_OUTPUT([HAVE_ICONV], [/* Define if you have the iconv() function. */
-@%:@undef HAVE_ICONV])
-m4trace:configure.ac:683: -1- AC_SUBST([LIBICONV])
-m4trace:configure.ac:683: -1- AC_SUBST_TRACE([LIBICONV])
-m4trace:configure.ac:683: -1- m4_pattern_allow([^LIBICONV$])
-m4trace:configure.ac:683: -1- AC_SUBST([LTLIBICONV])
-m4trace:configure.ac:683: -1- AC_SUBST_TRACE([LTLIBICONV])
-m4trace:configure.ac:683: -1- m4_pattern_allow([^LTLIBICONV$])
-m4trace:configure.ac:683: -1- _m4_warn([obsolete], [The macro `AC_TRY_COMPILE' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2615: AC_TRY_COMPILE is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-aclocal.m4:2576: AM_ICONV is expanded from...
-aclocal.m4:2399: AM_INTL_SUBDIR is expanded from...
-aclocal.m4:2111: AM_GNU_GETTEXT is expanded from...
-configure.ac:683: the top level])
-m4trace:configure.ac:683: -1- AC_DEFINE_TRACE_LITERAL([ICONV_CONST])
-m4trace:configure.ac:683: -1- m4_pattern_allow([^ICONV_CONST$])
-m4trace:configure.ac:683: -1- AH_OUTPUT([ICONV_CONST], [/* Define as const if the declaration of iconv() needs const. */
-@%:@undef ICONV_CONST])
-m4trace:configure.ac:683: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2688: AC_TRY_LINK is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-../../lib/autoconf/general.m4:2053: AC_CACHE_CHECK is expanded from...
-aclocal.m4:2040: AM_LANGINFO_CODESET is expanded from...
-aclocal.m4:2399: AM_INTL_SUBDIR is expanded from...
-aclocal.m4:2111: AM_GNU_GETTEXT is expanded from...
-configure.ac:683: the top level])
-m4trace:configure.ac:683: -1- AC_DEFINE_TRACE_LITERAL([HAVE_LANGINFO_CODESET])
-m4trace:configure.ac:683: -1- m4_pattern_allow([^HAVE_LANGINFO_CODESET$])
-m4trace:configure.ac:683: -1- AH_OUTPUT([HAVE_LANGINFO_CODESET], [/* Define if you have <langinfo.h> and nl_langinfo(CODESET). */
-@%:@undef HAVE_LANGINFO_CODESET])
-m4trace:configure.ac:683: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2688: AC_TRY_LINK is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-../../lib/autoconf/general.m4:2053: AC_CACHE_CHECK is expanded from...
-aclocal.m4:2810: AM_LC_MESSAGES is expanded from...
-aclocal.m4:2399: AM_INTL_SUBDIR is expanded from...
-aclocal.m4:2111: AM_GNU_GETTEXT is expanded from...
-configure.ac:683: the top level])
-m4trace:configure.ac:683: -1- AC_DEFINE_TRACE_LITERAL([HAVE_LC_MESSAGES])
-m4trace:configure.ac:683: -1- m4_pattern_allow([^HAVE_LC_MESSAGES$])
-m4trace:configure.ac:683: -1- AH_OUTPUT([HAVE_LC_MESSAGES], [/* Define if your <locale.h> file defines LC_MESSAGES. */
-@%:@undef HAVE_LC_MESSAGES])
-m4trace:configure.ac:683: -1- AC_SUBST([INTLBISON])
-m4trace:configure.ac:683: -1- AC_SUBST_TRACE([INTLBISON])
-m4trace:configure.ac:683: -1- m4_pattern_allow([^INTLBISON$])
-m4trace:configure.ac:683: -1- AM_NLS
-m4trace:configure.ac:683: -1- AC_SUBST([USE_NLS])
-m4trace:configure.ac:683: -1- AC_SUBST_TRACE([USE_NLS])
-m4trace:configure.ac:683: -1- m4_pattern_allow([^USE_NLS$])
-m4trace:configure.ac:683: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2688: AC_TRY_LINK is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-../../lib/autoconf/general.m4:2053: AC_CACHE_CHECK is expanded from...
-aclocal.m4:2111: AM_GNU_GETTEXT is expanded from...
-configure.ac:683: the top level])
-m4trace:configure.ac:683: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2688: AC_TRY_LINK is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-../../lib/autoconf/general.m4:2053: AC_CACHE_CHECK is expanded from...
-aclocal.m4:2111: AM_GNU_GETTEXT is expanded from...
-configure.ac:683: the top level])
-m4trace:configure.ac:683: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2688: AC_TRY_LINK is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-../../lib/autoconf/general.m4:2053: AC_CACHE_CHECK is expanded from...
-aclocal.m4:2111: AM_GNU_GETTEXT is expanded from...
-configure.ac:683: the top level])
-m4trace:configure.ac:683: -1- AC_DEFINE_TRACE_LITERAL([ENABLE_NLS])
-m4trace:configure.ac:683: -1- m4_pattern_allow([^ENABLE_NLS$])
-m4trace:configure.ac:683: -1- AH_OUTPUT([ENABLE_NLS], [/* Define to 1 if translation of program messages to the user\'s native
-   language is requested. */
-@%:@undef ENABLE_NLS])
-m4trace:configure.ac:683: -1- AC_DEFINE_TRACE_LITERAL([HAVE_GETTEXT])
-m4trace:configure.ac:683: -1- m4_pattern_allow([^HAVE_GETTEXT$])
-m4trace:configure.ac:683: -1- AH_OUTPUT([HAVE_GETTEXT], [/* Define if the GNU gettext() function is already present or preinstalled. */
-@%:@undef HAVE_GETTEXT])
-m4trace:configure.ac:683: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DCGETTEXT])
-m4trace:configure.ac:683: -1- m4_pattern_allow([^HAVE_DCGETTEXT$])
-m4trace:configure.ac:683: -1- AH_OUTPUT([HAVE_DCGETTEXT], [/* Define if the GNU dcgettext() function is already present or preinstalled.
-   */
-@%:@undef HAVE_DCGETTEXT])
-m4trace:configure.ac:683: -1- AC_SUBST([BUILD_INCLUDED_LIBINTL])
-m4trace:configure.ac:683: -1- AC_SUBST_TRACE([BUILD_INCLUDED_LIBINTL])
-m4trace:configure.ac:683: -1- m4_pattern_allow([^BUILD_INCLUDED_LIBINTL$])
-m4trace:configure.ac:683: -1- AC_SUBST([USE_INCLUDED_LIBINTL])
-m4trace:configure.ac:683: -1- AC_SUBST_TRACE([USE_INCLUDED_LIBINTL])
-m4trace:configure.ac:683: -1- m4_pattern_allow([^USE_INCLUDED_LIBINTL$])
-m4trace:configure.ac:683: -1- AC_SUBST([CATOBJEXT])
-m4trace:configure.ac:683: -1- AC_SUBST_TRACE([CATOBJEXT])
-m4trace:configure.ac:683: -1- m4_pattern_allow([^CATOBJEXT$])
-m4trace:configure.ac:683: -1- AC_SUBST([DATADIRNAME])
-m4trace:configure.ac:683: -1- AC_SUBST_TRACE([DATADIRNAME])
-m4trace:configure.ac:683: -1- m4_pattern_allow([^DATADIRNAME$])
-m4trace:configure.ac:683: -1- AC_SUBST([INSTOBJEXT])
-m4trace:configure.ac:683: -1- AC_SUBST_TRACE([INSTOBJEXT])
-m4trace:configure.ac:683: -1- m4_pattern_allow([^INSTOBJEXT$])
-m4trace:configure.ac:683: -1- AC_SUBST([GENCAT])
-m4trace:configure.ac:683: -1- AC_SUBST_TRACE([GENCAT])
-m4trace:configure.ac:683: -1- m4_pattern_allow([^GENCAT$])
-m4trace:configure.ac:683: -1- AC_SUBST([INTLOBJS])
-m4trace:configure.ac:683: -1- AC_SUBST_TRACE([INTLOBJS])
-m4trace:configure.ac:683: -1- m4_pattern_allow([^INTLOBJS$])
-m4trace:configure.ac:683: -1- AC_SUBST([INTL_LIBTOOL_SUFFIX_PREFIX])
-m4trace:configure.ac:683: -1- AC_SUBST_TRACE([INTL_LIBTOOL_SUFFIX_PREFIX])
-m4trace:configure.ac:683: -1- m4_pattern_allow([^INTL_LIBTOOL_SUFFIX_PREFIX$])
-m4trace:configure.ac:683: -1- AC_SUBST([INTLLIBS])
-m4trace:configure.ac:683: -1- AC_SUBST_TRACE([INTLLIBS])
-m4trace:configure.ac:683: -1- m4_pattern_allow([^INTLLIBS$])
-m4trace:configure.ac:683: -1- AC_SUBST([LIBINTL])
-m4trace:configure.ac:683: -1- AC_SUBST_TRACE([LIBINTL])
-m4trace:configure.ac:683: -1- m4_pattern_allow([^LIBINTL$])
-m4trace:configure.ac:683: -1- AC_SUBST([LTLIBINTL])
-m4trace:configure.ac:683: -1- AC_SUBST_TRACE([LTLIBINTL])
-m4trace:configure.ac:683: -1- m4_pattern_allow([^LTLIBINTL$])
-m4trace:configure.ac:683: -1- AC_SUBST([POSUB])
-m4trace:configure.ac:683: -1- AC_SUBST_TRACE([POSUB])
-m4trace:configure.ac:683: -1- m4_pattern_allow([^POSUB$])
-m4trace:configure.ac:686: -1- AH_OUTPUT([HAVE_DIRENT_H], [/* Define to 1 if you have the <dirent.h> header file, and it defines `DIR\'.
-   */
-@%:@undef HAVE_DIRENT_H])
-m4trace:configure.ac:686: -1- AH_OUTPUT([HAVE_SYS_NDIR_H], [/* Define to 1 if you have the <sys/ndir.h> header file, and it defines `DIR\'.
-   */
-@%:@undef HAVE_SYS_NDIR_H])
-m4trace:configure.ac:686: -1- AH_OUTPUT([HAVE_SYS_DIR_H], [/* Define to 1 if you have the <sys/dir.h> header file, and it defines `DIR\'.
-   */
-@%:@undef HAVE_SYS_DIR_H])
-m4trace:configure.ac:686: -1- AH_OUTPUT([HAVE_NDIR_H], [/* Define to 1 if you have the <ndir.h> header file, and it defines `DIR\'. */
-@%:@undef HAVE_NDIR_H])
-m4trace:configure.ac:687: -1- AC_DEFINE_TRACE_LITERAL([TIME_WITH_SYS_TIME])
-m4trace:configure.ac:687: -1- m4_pattern_allow([^TIME_WITH_SYS_TIME$])
-m4trace:configure.ac:687: -1- AH_OUTPUT([TIME_WITH_SYS_TIME], [/* Define to 1 if you can safely include both <sys/time.h> and <time.h>. */
-@%:@undef TIME_WITH_SYS_TIME])
-m4trace:configure.ac:689: -1- AH_OUTPUT([HAVE_INTTYPES_H], [/* Define to 1 if you have the <inttypes.h> header file. */
-@%:@undef HAVE_INTTYPES_H])
-m4trace:configure.ac:689: -1- AC_DEFINE_TRACE_LITERAL([HAVE_INTTYPES_H])
-m4trace:configure.ac:689: -1- m4_pattern_allow([^HAVE_INTTYPES_H$])
-m4trace:configure.ac:691: -1- AH_OUTPUT([HAVE_UNISTD_H], [/* Define to 1 if you have the <unistd.h> header file. */
-@%:@undef HAVE_UNISTD_H])
-m4trace:configure.ac:691: -1- AH_OUTPUT([HAVE_STDLIB_H], [/* Define to 1 if you have the <stdlib.h> header file. */
-@%:@undef HAVE_STDLIB_H])
-m4trace:configure.ac:691: -1- AH_OUTPUT([HAVE_STDARG_H], [/* Define to 1 if you have the <stdarg.h> header file. */
-@%:@undef HAVE_STDARG_H])
-m4trace:configure.ac:691: -1- AH_OUTPUT([HAVE_VARARGS_H], [/* Define to 1 if you have the <varargs.h> header file. */
-@%:@undef HAVE_VARARGS_H])
-m4trace:configure.ac:691: -1- AH_OUTPUT([HAVE_LIMITS_H], [/* Define to 1 if you have the <limits.h> header file. */
-@%:@undef HAVE_LIMITS_H])
-m4trace:configure.ac:691: -1- AH_OUTPUT([HAVE_STRING_H], [/* Define to 1 if you have the <string.h> header file. */
-@%:@undef HAVE_STRING_H])
-m4trace:configure.ac:691: -1- AH_OUTPUT([HAVE_MEMORY_H], [/* Define to 1 if you have the <memory.h> header file. */
-@%:@undef HAVE_MEMORY_H])
-m4trace:configure.ac:691: -1- AH_OUTPUT([HAVE_LOCALE_H], [/* Define to 1 if you have the <locale.h> header file. */
-@%:@undef HAVE_LOCALE_H])
-m4trace:configure.ac:691: -1- AH_OUTPUT([HAVE_TERMCAP_H], [/* Define to 1 if you have the <termcap.h> header file. */
-@%:@undef HAVE_TERMCAP_H])
-m4trace:configure.ac:691: -1- AH_OUTPUT([HAVE_TERMIO_H], [/* Define to 1 if you have the <termio.h> header file. */
-@%:@undef HAVE_TERMIO_H])
-m4trace:configure.ac:691: -1- AH_OUTPUT([HAVE_TERMIOS_H], [/* Define to 1 if you have the <termios.h> header file. */
-@%:@undef HAVE_TERMIOS_H])
-m4trace:configure.ac:691: -1- AH_OUTPUT([HAVE_DLFCN_H], [/* Define to 1 if you have the <dlfcn.h> header file. */
-@%:@undef HAVE_DLFCN_H])
-m4trace:configure.ac:691: -1- AH_OUTPUT([HAVE_STDBOOL_H], [/* Define to 1 if you have the <stdbool.h> header file. */
-@%:@undef HAVE_STDBOOL_H])
-m4trace:configure.ac:691: -1- AH_OUTPUT([HAVE_STDDEF_H], [/* Define to 1 if you have the <stddef.h> header file. */
-@%:@undef HAVE_STDDEF_H])
-m4trace:configure.ac:691: -1- AH_OUTPUT([HAVE_STDINT_H], [/* Define to 1 if you have the <stdint.h> header file. */
-@%:@undef HAVE_STDINT_H])
-m4trace:configure.ac:691: -1- AH_OUTPUT([HAVE_NETDB_H], [/* Define to 1 if you have the <netdb.h> header file. */
-@%:@undef HAVE_NETDB_H])
-m4trace:configure.ac:691: -1- AH_OUTPUT([HAVE_PWD_H], [/* Define to 1 if you have the <pwd.h> header file. */
-@%:@undef HAVE_PWD_H])
-m4trace:configure.ac:691: -1- AH_OUTPUT([HAVE_GRP_H], [/* Define to 1 if you have the <grp.h> header file. */
-@%:@undef HAVE_GRP_H])
-m4trace:configure.ac:691: -1- AH_OUTPUT([HAVE_STRINGS_H], [/* Define to 1 if you have the <strings.h> header file. */
-@%:@undef HAVE_STRINGS_H])
-m4trace:configure.ac:691: -1- AH_OUTPUT([HAVE_REGEX_H], [/* Define to 1 if you have the <regex.h> header file. */
-@%:@undef HAVE_REGEX_H])
-m4trace:configure.ac:691: -1- AH_OUTPUT([HAVE_SYSLOG_H], [/* Define to 1 if you have the <syslog.h> header file. */
-@%:@undef HAVE_SYSLOG_H])
-m4trace:configure.ac:691: -1- AH_OUTPUT([HAVE_ULIMIT_H], [/* Define to 1 if you have the <ulimit.h> header file. */
-@%:@undef HAVE_ULIMIT_H])
-m4trace:configure.ac:695: -1- AH_OUTPUT([HAVE_SYS_PTE_H], [/* Define to 1 if you have the <sys/pte.h> header file. */
-@%:@undef HAVE_SYS_PTE_H])
-m4trace:configure.ac:695: -1- AH_OUTPUT([HAVE_SYS_STREAM_H], [/* Define to 1 if you have the <sys/stream.h> header file. */
-@%:@undef HAVE_SYS_STREAM_H])
-m4trace:configure.ac:695: -1- AH_OUTPUT([HAVE_SYS_SELECT_H], [/* Define to 1 if you have the <sys/select.h> header file. */
-@%:@undef HAVE_SYS_SELECT_H])
-m4trace:configure.ac:695: -1- AH_OUTPUT([HAVE_SYS_FILE_H], [/* Define to 1 if you have the <sys/file.h> header file. */
-@%:@undef HAVE_SYS_FILE_H])
-m4trace:configure.ac:695: -1- AH_OUTPUT([HAVE_SYS_RESOURCE_H], [/* Define to 1 if you have the <sys/resource.h> header file. */
-@%:@undef HAVE_SYS_RESOURCE_H])
-m4trace:configure.ac:695: -1- AH_OUTPUT([HAVE_SYS_PARAM_H], [/* Define to 1 if you have the <sys/param.h> header file. */
-@%:@undef HAVE_SYS_PARAM_H])
-m4trace:configure.ac:695: -1- AH_OUTPUT([HAVE_SYS_SOCKET_H], [/* Define to 1 if you have the <sys/socket.h> header file. */
-@%:@undef HAVE_SYS_SOCKET_H])
-m4trace:configure.ac:695: -1- AH_OUTPUT([HAVE_SYS_STAT_H], [/* Define to 1 if you have the <sys/stat.h> header file. */
-@%:@undef HAVE_SYS_STAT_H])
-m4trace:configure.ac:695: -1- AH_OUTPUT([HAVE_SYS_TIME_H], [/* Define to 1 if you have the <sys/time.h> header file. */
-@%:@undef HAVE_SYS_TIME_H])
-m4trace:configure.ac:695: -1- AH_OUTPUT([HAVE_SYS_TIMES_H], [/* Define to 1 if you have the <sys/times.h> header file. */
-@%:@undef HAVE_SYS_TIMES_H])
-m4trace:configure.ac:695: -1- AH_OUTPUT([HAVE_SYS_TYPES_H], [/* Define to 1 if you have the <sys/types.h> header file. */
-@%:@undef HAVE_SYS_TYPES_H])
-m4trace:configure.ac:695: -1- AH_OUTPUT([HAVE_SYS_WAIT_H], [/* Define to 1 if you have the <sys/wait.h> header file. */
-@%:@undef HAVE_SYS_WAIT_H])
-m4trace:configure.ac:698: -1- AH_OUTPUT([HAVE_NETINET_IN_H], [/* Define to 1 if you have the <netinet/in.h> header file. */
-@%:@undef HAVE_NETINET_IN_H])
-m4trace:configure.ac:698: -1- AH_OUTPUT([HAVE_ARPA_INET_H], [/* Define to 1 if you have the <arpa/inet.h> header file. */
-@%:@undef HAVE_ARPA_INET_H])
-m4trace:configure.ac:709: -1- AC_DEFINE_TRACE_LITERAL([HAVE_ALLOCA_H])
-m4trace:configure.ac:709: -1- m4_pattern_allow([^HAVE_ALLOCA_H$])
-m4trace:configure.ac:709: -1- AH_OUTPUT([HAVE_ALLOCA_H], [/* Define to 1 if you have <alloca.h> and it should be used (not on Ultrix).
-   */
-@%:@undef HAVE_ALLOCA_H])
-m4trace:configure.ac:709: -1- AC_DEFINE_TRACE_LITERAL([HAVE_ALLOCA])
-m4trace:configure.ac:709: -1- m4_pattern_allow([^HAVE_ALLOCA$])
-m4trace:configure.ac:709: -1- AH_OUTPUT([HAVE_ALLOCA], [/* Define to 1 if you have `alloca\', as a function or macro. */
-@%:@undef HAVE_ALLOCA])
-m4trace:configure.ac:709: -1- AC_LIBSOURCE([alloca.c])
-m4trace:configure.ac:709: -1- AC_SUBST([ALLOCA], [\${LIBOBJDIR}alloca.$ac_objext])
-m4trace:configure.ac:709: -1- AC_SUBST_TRACE([ALLOCA])
-m4trace:configure.ac:709: -1- m4_pattern_allow([^ALLOCA$])
-m4trace:configure.ac:709: -1- AC_DEFINE_TRACE_LITERAL([C_ALLOCA])
-m4trace:configure.ac:709: -1- m4_pattern_allow([^C_ALLOCA$])
-m4trace:configure.ac:709: -1- AH_OUTPUT([C_ALLOCA], [/* Define to 1 if using `alloca.c\'. */
-@%:@undef C_ALLOCA])
-m4trace:configure.ac:709: -1- AC_DEFINE_TRACE_LITERAL([CRAY_STACKSEG_END])
-m4trace:configure.ac:709: -1- m4_pattern_allow([^CRAY_STACKSEG_END$])
-m4trace:configure.ac:709: -1- AH_OUTPUT([CRAY_STACKSEG_END], [/* Define to one of `_getb67\', `GETB67\', `getb67\' for Cray-2 and Cray-YMP
-   systems. This function is required for `alloca.c\' support on those systems.
-   */
-@%:@undef CRAY_STACKSEG_END])
-m4trace:configure.ac:709: -1- AH_OUTPUT([STACK_DIRECTION], [/* If using the C implementation of alloca, define if you know the
-   direction of stack growth for your system; otherwise it will be
-   automatically deduced at runtime.
-       STACK_DIRECTION > 0 => grows toward higher addresses
-       STACK_DIRECTION < 0 => grows toward lower addresses
-       STACK_DIRECTION = 0 => direction of growth unknown */
-@%:@undef STACK_DIRECTION])
-m4trace:configure.ac:709: -1- AC_DEFINE_TRACE_LITERAL([STACK_DIRECTION])
-m4trace:configure.ac:709: -1- m4_pattern_allow([^STACK_DIRECTION$])
-m4trace:configure.ac:710: -1- AC_DEFINE_TRACE_LITERAL([GETPGRP_VOID])
-m4trace:configure.ac:710: -1- m4_pattern_allow([^GETPGRP_VOID$])
-m4trace:configure.ac:710: -1- AH_OUTPUT([GETPGRP_VOID], [/* Define to 1 if the `getpgrp\' function requires zero arguments. */
-@%:@undef GETPGRP_VOID])
-m4trace:configure.ac:711: -1- _m4_warn([obsolete], [The macro `AC_FUNC_SETVBUF_REVERSED' is obsolete.  Remove it and all references to SETVBUF_REVERSED.], [../../lib/autoconf/functions.m4:1714: AC_FUNC_SETVBUF_REVERSED is expanded from...
-configure.ac:711: the top level])
-m4trace:configure.ac:712: -1- AH_OUTPUT([HAVE_VPRINTF], [/* Define to 1 if you have the `vprintf\' function. */
-@%:@undef HAVE_VPRINTF])
-m4trace:configure.ac:712: -1- AC_DEFINE_TRACE_LITERAL([HAVE_VPRINTF])
-m4trace:configure.ac:712: -1- m4_pattern_allow([^HAVE_VPRINTF$])
-m4trace:configure.ac:712: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DOPRNT])
-m4trace:configure.ac:712: -1- m4_pattern_allow([^HAVE_DOPRNT$])
-m4trace:configure.ac:712: -1- AH_OUTPUT([HAVE_DOPRNT], [/* Define to 1 if you don\'t have `vprintf\' but do have `_doprnt.\' */
-@%:@undef HAVE_DOPRNT])
-m4trace:configure.ac:713: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STRCOLL])
-m4trace:configure.ac:713: -1- m4_pattern_allow([^HAVE_STRCOLL$])
-m4trace:configure.ac:713: -1- AH_OUTPUT([HAVE_STRCOLL], [/* Define to 1 if you have the `strcoll\' function and it is properly defined.
-   */
-@%:@undef HAVE_STRCOLL])
-m4trace:configure.ac:734: -1- AC_DEFINE_TRACE_LITERAL([HAVE_VPRINTF])
-m4trace:configure.ac:734: -1- m4_pattern_allow([^HAVE_VPRINTF$])
-m4trace:configure.ac:739: -1- AC_SUBST([LIB@&t@OBJS], ["$LIB@&t@OBJS vprint.$ac_objext"])
-m4trace:configure.ac:739: -1- AC_SUBST_TRACE([LIB@&t@OBJS])
-m4trace:configure.ac:739: -1- m4_pattern_allow([^LIB@&t@OBJS$])
-m4trace:configure.ac:739: -1- AC_LIBSOURCE([vprint.c])
-m4trace:configure.ac:743: -1- _m4_warn([obsolete], [The macro `AC_TYPE_SIGNAL' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/types.m4:738: AC_TYPE_SIGNAL is expanded from...
-configure.ac:743: the top level])
-m4trace:configure.ac:743: -1- AC_DEFINE_TRACE_LITERAL([RETSIGTYPE])
-m4trace:configure.ac:743: -1- m4_pattern_allow([^RETSIGTYPE$])
-m4trace:configure.ac:743: -1- AH_OUTPUT([RETSIGTYPE], [/* Define as the return type of signal handlers (`int\' or `void\'). */
-@%:@undef RETSIGTYPE])
-m4trace:configure.ac:746: -2- AC_DEFINE_TRACE_LITERAL([HAVE_SETOSTYPE])
-m4trace:configure.ac:746: -2- m4_pattern_allow([^HAVE_SETOSTYPE$])
-m4trace:configure.ac:747: -2- AC_DEFINE_TRACE_LITERAL([HAVE_WAIT3])
-m4trace:configure.ac:747: -2- m4_pattern_allow([^HAVE_WAIT3$])
-m4trace:configure.ac:750: -2- AC_DEFINE_TRACE_LITERAL([HAVE_MKFIFO])
-m4trace:configure.ac:750: -2- m4_pattern_allow([^HAVE_MKFIFO$])
-m4trace:configure.ac:750: -2- AC_DEFINE_TRACE_LITERAL([MKFIFO_MISSING])
-m4trace:configure.ac:750: -2- m4_pattern_allow([^MKFIFO_MISSING$])
-m4trace:configure.ac:753: -1- AH_OUTPUT([HAVE_DUP2], [/* Define to 1 if you have the `dup2\' function. */
-@%:@undef HAVE_DUP2])
-m4trace:configure.ac:753: -1- AH_OUTPUT([HAVE_EACCESS], [/* Define to 1 if you have the `eaccess\' function. */
-@%:@undef HAVE_EACCESS])
-m4trace:configure.ac:753: -1- AH_OUTPUT([HAVE_FCNTL], [/* Define to 1 if you have the `fcntl\' function. */
-@%:@undef HAVE_FCNTL])
-m4trace:configure.ac:753: -1- AH_OUTPUT([HAVE_GETDTABLESIZE], [/* Define to 1 if you have the `getdtablesize\' function. */
-@%:@undef HAVE_GETDTABLESIZE])
-m4trace:configure.ac:753: -1- AH_OUTPUT([HAVE_GETGROUPS], [/* Define to 1 if you have the `getgroups\' function. */
-@%:@undef HAVE_GETGROUPS])
-m4trace:configure.ac:753: -1- AH_OUTPUT([HAVE_GETHOSTNAME], [/* Define to 1 if you have the `gethostname\' function. */
-@%:@undef HAVE_GETHOSTNAME])
-m4trace:configure.ac:753: -1- AH_OUTPUT([HAVE_GETPAGESIZE], [/* Define to 1 if you have the `getpagesize\' function. */
-@%:@undef HAVE_GETPAGESIZE])
-m4trace:configure.ac:753: -1- AH_OUTPUT([HAVE_GETPEERNAME], [/* Define to 1 if you have the `getpeername\' function. */
-@%:@undef HAVE_GETPEERNAME])
-m4trace:configure.ac:753: -1- AH_OUTPUT([HAVE_GETRLIMIT], [/* Define to 1 if you have the `getrlimit\' function. */
-@%:@undef HAVE_GETRLIMIT])
-m4trace:configure.ac:753: -1- AH_OUTPUT([HAVE_GETRUSAGE], [/* Define to 1 if you have the `getrusage\' function. */
-@%:@undef HAVE_GETRUSAGE])
-m4trace:configure.ac:753: -1- AH_OUTPUT([HAVE_GETTIMEOFDAY], [/* Define to 1 if you have the `gettimeofday\' function. */
-@%:@undef HAVE_GETTIMEOFDAY])
-m4trace:configure.ac:753: -1- AH_OUTPUT([HAVE_KILL], [/* Define to 1 if you have the `kill\' function. */
-@%:@undef HAVE_KILL])
-m4trace:configure.ac:753: -1- AH_OUTPUT([HAVE_KILLPG], [/* Define to 1 if you have the `killpg\' function. */
-@%:@undef HAVE_KILLPG])
-m4trace:configure.ac:753: -1- AH_OUTPUT([HAVE_LSTAT], [/* Define to 1 if you have the `lstat\' function. */
-@%:@undef HAVE_LSTAT])
-m4trace:configure.ac:753: -1- AH_OUTPUT([HAVE_READLINK], [/* Define to 1 if you have the `readlink\' function. */
-@%:@undef HAVE_READLINK])
-m4trace:configure.ac:753: -1- AH_OUTPUT([HAVE_SBRK], [/* Define to 1 if you have the `sbrk\' function. */
-@%:@undef HAVE_SBRK])
-m4trace:configure.ac:753: -1- AH_OUTPUT([HAVE_SELECT], [/* Define to 1 if you have the `select\' function. */
-@%:@undef HAVE_SELECT])
-m4trace:configure.ac:753: -1- AH_OUTPUT([HAVE_SETDTABLESIZE], [/* Define to 1 if you have the `setdtablesize\' function. */
-@%:@undef HAVE_SETDTABLESIZE])
-m4trace:configure.ac:753: -1- AH_OUTPUT([HAVE_SETITIMER], [/* Define to 1 if you have the `setitimer\' function. */
-@%:@undef HAVE_SETITIMER])
-m4trace:configure.ac:753: -1- AH_OUTPUT([HAVE_TCGETPGRP], [/* Define to 1 if you have the `tcgetpgrp\' function. */
-@%:@undef HAVE_TCGETPGRP])
-m4trace:configure.ac:753: -1- AH_OUTPUT([HAVE_UNAME], [/* Define to 1 if you have the `uname\' function. */
-@%:@undef HAVE_UNAME])
-m4trace:configure.ac:753: -1- AH_OUTPUT([HAVE_ULIMIT], [/* Define to 1 if you have the `ulimit\' function. */
-@%:@undef HAVE_ULIMIT])
-m4trace:configure.ac:753: -1- AH_OUTPUT([HAVE_WAITPID], [/* Define to 1 if you have the `waitpid\' function. */
-@%:@undef HAVE_WAITPID])
-m4trace:configure.ac:757: -1- AH_OUTPUT([HAVE_RENAME], [/* Define to 1 if you have the `rename\' function. */
-@%:@undef HAVE_RENAME])
-m4trace:configure.ac:757: -1- AC_DEFINE_TRACE_LITERAL([HAVE_RENAME])
-m4trace:configure.ac:757: -1- m4_pattern_allow([^HAVE_RENAME$])
-m4trace:configure.ac:757: -1- AC_SUBST([LIB@&t@OBJS], ["$LIB@&t@OBJS rename.$ac_objext"])
-m4trace:configure.ac:757: -1- AC_SUBST_TRACE([LIB@&t@OBJS])
-m4trace:configure.ac:757: -1- m4_pattern_allow([^LIB@&t@OBJS$])
-m4trace:configure.ac:757: -1- AC_LIBSOURCE([rename.c])
-m4trace:configure.ac:760: -1- AH_OUTPUT([HAVE_BCOPY], [/* Define to 1 if you have the `bcopy\' function. */
-@%:@undef HAVE_BCOPY])
-m4trace:configure.ac:760: -1- AH_OUTPUT([HAVE_BZERO], [/* Define to 1 if you have the `bzero\' function. */
-@%:@undef HAVE_BZERO])
-m4trace:configure.ac:760: -1- AH_OUTPUT([HAVE_CONFSTR], [/* Define to 1 if you have the `confstr\' function. */
-@%:@undef HAVE_CONFSTR])
-m4trace:configure.ac:760: -1- AH_OUTPUT([HAVE_FACCESSAT], [/* Define to 1 if you have the `faccessat\' function. */
-@%:@undef HAVE_FACCESSAT])
-m4trace:configure.ac:760: -1- AH_OUTPUT([HAVE_FNMATCH], [/* Define to 1 if you have the `fnmatch\' function. */
-@%:@undef HAVE_FNMATCH])
-m4trace:configure.ac:760: -1- AH_OUTPUT([HAVE_GETADDRINFO], [/* Define to 1 if you have the `getaddrinfo\' function. */
-@%:@undef HAVE_GETADDRINFO])
-m4trace:configure.ac:760: -1- AH_OUTPUT([HAVE_GETHOSTBYNAME], [/* Define to 1 if you have the `gethostbyname\' function. */
-@%:@undef HAVE_GETHOSTBYNAME])
-m4trace:configure.ac:760: -1- AH_OUTPUT([HAVE_GETSERVBYNAME], [/* Define to 1 if you have the `getservbyname\' function. */
-@%:@undef HAVE_GETSERVBYNAME])
-m4trace:configure.ac:760: -1- AH_OUTPUT([HAVE_GETSERVENT], [/* Define to 1 if you have the `getservent\' function. */
-@%:@undef HAVE_GETSERVENT])
-m4trace:configure.ac:760: -1- AH_OUTPUT([HAVE_INET_ATON], [/* Define to 1 if you have the `inet_aton\' function. */
-@%:@undef HAVE_INET_ATON])
-m4trace:configure.ac:760: -1- AH_OUTPUT([HAVE_IMAXDIV], [/* Define to 1 if you have the `imaxdiv\' function. */
-@%:@undef HAVE_IMAXDIV])
-m4trace:configure.ac:760: -1- AH_OUTPUT([HAVE_MEMMOVE], [/* Define to 1 if you have the `memmove\' function. */
-@%:@undef HAVE_MEMMOVE])
-m4trace:configure.ac:760: -1- AH_OUTPUT([HAVE_PATHCONF], [/* Define to 1 if you have the `pathconf\' function. */
-@%:@undef HAVE_PATHCONF])
-m4trace:configure.ac:760: -1- AH_OUTPUT([HAVE_PUTENV], [/* Define to 1 if you have the `putenv\' function. */
-@%:@undef HAVE_PUTENV])
-m4trace:configure.ac:760: -1- AH_OUTPUT([HAVE_RAISE], [/* Define to 1 if you have the `raise\' function. */
-@%:@undef HAVE_RAISE])
-m4trace:configure.ac:760: -1- AH_OUTPUT([HAVE_REGCOMP], [/* Define to 1 if you have the `regcomp\' function. */
-@%:@undef HAVE_REGCOMP])
-m4trace:configure.ac:760: -1- AH_OUTPUT([HAVE_REGEXEC], [/* Define to 1 if you have the `regexec\' function. */
-@%:@undef HAVE_REGEXEC])
-m4trace:configure.ac:760: -1- AH_OUTPUT([HAVE_SETENV], [/* Define to 1 if you have the `setenv\' function. */
-@%:@undef HAVE_SETENV])
-m4trace:configure.ac:760: -1- AH_OUTPUT([HAVE_SETLINEBUF], [/* Define to 1 if you have the `setlinebuf\' function. */
-@%:@undef HAVE_SETLINEBUF])
-m4trace:configure.ac:760: -1- AH_OUTPUT([HAVE_SETLOCALE], [/* Define to 1 if you have the `setlocale\' function. */
-@%:@undef HAVE_SETLOCALE])
-m4trace:configure.ac:760: -1- AH_OUTPUT([HAVE_SETVBUF], [/* Define to 1 if you have the `setvbuf\' function. */
-@%:@undef HAVE_SETVBUF])
-m4trace:configure.ac:760: -1- AH_OUTPUT([HAVE_SIGINTERRUPT], [/* Define to 1 if you have the `siginterrupt\' function. */
-@%:@undef HAVE_SIGINTERRUPT])
-m4trace:configure.ac:760: -1- AH_OUTPUT([HAVE_STRCHR], [/* Define to 1 if you have the `strchr\' function. */
-@%:@undef HAVE_STRCHR])
-m4trace:configure.ac:760: -1- AH_OUTPUT([HAVE_SYSCONF], [/* Define to 1 if you have the `sysconf\' function. */
-@%:@undef HAVE_SYSCONF])
-m4trace:configure.ac:760: -1- AH_OUTPUT([HAVE_SYSLOG], [/* Define to 1 if you have the `syslog\' function. */
-@%:@undef HAVE_SYSLOG])
-m4trace:configure.ac:760: -1- AH_OUTPUT([HAVE_TCGETATTR], [/* Define to 1 if you have the `tcgetattr\' function. */
-@%:@undef HAVE_TCGETATTR])
-m4trace:configure.ac:760: -1- AH_OUTPUT([HAVE_TIMES], [/* Define to 1 if you have the `times\' function. */
-@%:@undef HAVE_TIMES])
-m4trace:configure.ac:760: -1- AH_OUTPUT([HAVE_TTYNAME], [/* Define to 1 if you have the `ttyname\' function. */
-@%:@undef HAVE_TTYNAME])
-m4trace:configure.ac:760: -1- AH_OUTPUT([HAVE_TZSET], [/* Define to 1 if you have the `tzset\' function. */
-@%:@undef HAVE_TZSET])
-m4trace:configure.ac:760: -1- AH_OUTPUT([HAVE_UNSETENV], [/* Define to 1 if you have the `unsetenv\' function. */
-@%:@undef HAVE_UNSETENV])
-m4trace:configure.ac:766: -1- AH_OUTPUT([HAVE_VASPRINTF], [/* Define to 1 if you have the `vasprintf\' function. */
-@%:@undef HAVE_VASPRINTF])
-m4trace:configure.ac:766: -1- AH_OUTPUT([HAVE_ASPRINTF], [/* Define to 1 if you have the `asprintf\' function. */
-@%:@undef HAVE_ASPRINTF])
-m4trace:configure.ac:767: -1- AH_OUTPUT([HAVE_ISASCII], [/* Define to 1 if you have the `isascii\' function. */
-@%:@undef HAVE_ISASCII])
-m4trace:configure.ac:767: -1- AH_OUTPUT([HAVE_ISBLANK], [/* Define to 1 if you have the `isblank\' function. */
-@%:@undef HAVE_ISBLANK])
-m4trace:configure.ac:767: -1- AH_OUTPUT([HAVE_ISGRAPH], [/* Define to 1 if you have the `isgraph\' function. */
-@%:@undef HAVE_ISGRAPH])
-m4trace:configure.ac:767: -1- AH_OUTPUT([HAVE_ISPRINT], [/* Define to 1 if you have the `isprint\' function. */
-@%:@undef HAVE_ISPRINT])
-m4trace:configure.ac:767: -1- AH_OUTPUT([HAVE_ISSPACE], [/* Define to 1 if you have the `isspace\' function. */
-@%:@undef HAVE_ISSPACE])
-m4trace:configure.ac:767: -1- AH_OUTPUT([HAVE_ISXDIGIT], [/* Define to 1 if you have the `isxdigit\' function. */
-@%:@undef HAVE_ISXDIGIT])
-m4trace:configure.ac:768: -1- AH_OUTPUT([HAVE_GETPWENT], [/* Define to 1 if you have the `getpwent\' function. */
-@%:@undef HAVE_GETPWENT])
-m4trace:configure.ac:768: -1- AH_OUTPUT([HAVE_GETPWNAM], [/* Define to 1 if you have the `getpwnam\' function. */
-@%:@undef HAVE_GETPWNAM])
-m4trace:configure.ac:768: -1- AH_OUTPUT([HAVE_GETPWUID], [/* Define to 1 if you have the `getpwuid\' function. */
-@%:@undef HAVE_GETPWUID])
-m4trace:configure.ac:769: -1- AH_OUTPUT([HAVE_GETCWD], [/* Define to 1 if you have the `getcwd\' function. */
-@%:@undef HAVE_GETCWD])
-m4trace:configure.ac:769: -1- AC_DEFINE_TRACE_LITERAL([HAVE_GETCWD])
-m4trace:configure.ac:769: -1- m4_pattern_allow([^HAVE_GETCWD$])
-m4trace:configure.ac:769: -1- AC_SUBST([LIB@&t@OBJS], ["$LIB@&t@OBJS getcwd.$ac_objext"])
-m4trace:configure.ac:769: -1- AC_SUBST_TRACE([LIB@&t@OBJS])
-m4trace:configure.ac:769: -1- m4_pattern_allow([^LIB@&t@OBJS$])
-m4trace:configure.ac:769: -1- AC_LIBSOURCE([getcwd.c])
-m4trace:configure.ac:769: -1- AH_OUTPUT([HAVE_MEMSET], [/* Define to 1 if you have the `memset\' function. */
-@%:@undef HAVE_MEMSET])
-m4trace:configure.ac:769: -1- AC_DEFINE_TRACE_LITERAL([HAVE_MEMSET])
-m4trace:configure.ac:769: -1- m4_pattern_allow([^HAVE_MEMSET$])
-m4trace:configure.ac:769: -1- AC_SUBST([LIB@&t@OBJS], ["$LIB@&t@OBJS memset.$ac_objext"])
-m4trace:configure.ac:769: -1- AC_SUBST_TRACE([LIB@&t@OBJS])
-m4trace:configure.ac:769: -1- m4_pattern_allow([^LIB@&t@OBJS$])
-m4trace:configure.ac:769: -1- AC_LIBSOURCE([memset.c])
-m4trace:configure.ac:770: -1- AH_OUTPUT([HAVE_STRCASECMP], [/* Define to 1 if you have the `strcasecmp\' function. */
-@%:@undef HAVE_STRCASECMP])
-m4trace:configure.ac:770: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STRCASECMP])
-m4trace:configure.ac:770: -1- m4_pattern_allow([^HAVE_STRCASECMP$])
-m4trace:configure.ac:770: -1- AC_SUBST([LIB@&t@OBJS], ["$LIB@&t@OBJS strcasecmp.$ac_objext"])
-m4trace:configure.ac:770: -1- AC_SUBST_TRACE([LIB@&t@OBJS])
-m4trace:configure.ac:770: -1- m4_pattern_allow([^LIB@&t@OBJS$])
-m4trace:configure.ac:770: -1- AC_LIBSOURCE([strcasecmp.c])
-m4trace:configure.ac:770: -1- AH_OUTPUT([HAVE_STRCASESTR], [/* Define to 1 if you have the `strcasestr\' function. */
-@%:@undef HAVE_STRCASESTR])
-m4trace:configure.ac:770: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STRCASESTR])
-m4trace:configure.ac:770: -1- m4_pattern_allow([^HAVE_STRCASESTR$])
-m4trace:configure.ac:770: -1- AC_SUBST([LIB@&t@OBJS], ["$LIB@&t@OBJS strcasestr.$ac_objext"])
-m4trace:configure.ac:770: -1- AC_SUBST_TRACE([LIB@&t@OBJS])
-m4trace:configure.ac:770: -1- m4_pattern_allow([^LIB@&t@OBJS$])
-m4trace:configure.ac:770: -1- AC_LIBSOURCE([strcasestr.c])
-m4trace:configure.ac:770: -1- AH_OUTPUT([HAVE_STRERROR], [/* Define to 1 if you have the `strerror\' function. */
-@%:@undef HAVE_STRERROR])
-m4trace:configure.ac:770: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STRERROR])
-m4trace:configure.ac:770: -1- m4_pattern_allow([^HAVE_STRERROR$])
-m4trace:configure.ac:770: -1- AC_SUBST([LIB@&t@OBJS], ["$LIB@&t@OBJS strerror.$ac_objext"])
-m4trace:configure.ac:770: -1- AC_SUBST_TRACE([LIB@&t@OBJS])
-m4trace:configure.ac:770: -1- m4_pattern_allow([^LIB@&t@OBJS$])
-m4trace:configure.ac:770: -1- AC_LIBSOURCE([strerror.c])
-m4trace:configure.ac:770: -1- AH_OUTPUT([HAVE_STRFTIME], [/* Define to 1 if you have the `strftime\' function. */
-@%:@undef HAVE_STRFTIME])
-m4trace:configure.ac:770: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STRFTIME])
-m4trace:configure.ac:770: -1- m4_pattern_allow([^HAVE_STRFTIME$])
-m4trace:configure.ac:770: -1- AC_SUBST([LIB@&t@OBJS], ["$LIB@&t@OBJS strftime.$ac_objext"])
-m4trace:configure.ac:770: -1- AC_SUBST_TRACE([LIB@&t@OBJS])
-m4trace:configure.ac:770: -1- m4_pattern_allow([^LIB@&t@OBJS$])
-m4trace:configure.ac:770: -1- AC_LIBSOURCE([strftime.c])
-m4trace:configure.ac:770: -1- AH_OUTPUT([HAVE_STRNLEN], [/* Define to 1 if you have the `strnlen\' function. */
-@%:@undef HAVE_STRNLEN])
-m4trace:configure.ac:770: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STRNLEN])
-m4trace:configure.ac:770: -1- m4_pattern_allow([^HAVE_STRNLEN$])
-m4trace:configure.ac:770: -1- AC_SUBST([LIB@&t@OBJS], ["$LIB@&t@OBJS strnlen.$ac_objext"])
-m4trace:configure.ac:770: -1- AC_SUBST_TRACE([LIB@&t@OBJS])
-m4trace:configure.ac:770: -1- m4_pattern_allow([^LIB@&t@OBJS$])
-m4trace:configure.ac:770: -1- AC_LIBSOURCE([strnlen.c])
-m4trace:configure.ac:770: -1- AH_OUTPUT([HAVE_STRPBRK], [/* Define to 1 if you have the `strpbrk\' function. */
-@%:@undef HAVE_STRPBRK])
-m4trace:configure.ac:770: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STRPBRK])
-m4trace:configure.ac:770: -1- m4_pattern_allow([^HAVE_STRPBRK$])
-m4trace:configure.ac:770: -1- AC_SUBST([LIB@&t@OBJS], ["$LIB@&t@OBJS strpbrk.$ac_objext"])
-m4trace:configure.ac:770: -1- AC_SUBST_TRACE([LIB@&t@OBJS])
-m4trace:configure.ac:770: -1- m4_pattern_allow([^LIB@&t@OBJS$])
-m4trace:configure.ac:770: -1- AC_LIBSOURCE([strpbrk.c])
-m4trace:configure.ac:770: -1- AH_OUTPUT([HAVE_STRSTR], [/* Define to 1 if you have the `strstr\' function. */
-@%:@undef HAVE_STRSTR])
-m4trace:configure.ac:770: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STRSTR])
-m4trace:configure.ac:770: -1- m4_pattern_allow([^HAVE_STRSTR$])
-m4trace:configure.ac:770: -1- AC_SUBST([LIB@&t@OBJS], ["$LIB@&t@OBJS strstr.$ac_objext"])
-m4trace:configure.ac:770: -1- AC_SUBST_TRACE([LIB@&t@OBJS])
-m4trace:configure.ac:770: -1- m4_pattern_allow([^LIB@&t@OBJS$])
-m4trace:configure.ac:770: -1- AC_LIBSOURCE([strstr.c])
-m4trace:configure.ac:771: -1- AH_OUTPUT([HAVE_STRTOD], [/* Define to 1 if you have the `strtod\' function. */
-@%:@undef HAVE_STRTOD])
-m4trace:configure.ac:771: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STRTOD])
-m4trace:configure.ac:771: -1- m4_pattern_allow([^HAVE_STRTOD$])
-m4trace:configure.ac:771: -1- AC_SUBST([LIB@&t@OBJS], ["$LIB@&t@OBJS strtod.$ac_objext"])
-m4trace:configure.ac:771: -1- AC_SUBST_TRACE([LIB@&t@OBJS])
-m4trace:configure.ac:771: -1- m4_pattern_allow([^LIB@&t@OBJS$])
-m4trace:configure.ac:771: -1- AC_LIBSOURCE([strtod.c])
-m4trace:configure.ac:771: -1- AH_OUTPUT([HAVE_STRTOL], [/* Define to 1 if you have the `strtol\' function. */
-@%:@undef HAVE_STRTOL])
-m4trace:configure.ac:771: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STRTOL])
-m4trace:configure.ac:771: -1- m4_pattern_allow([^HAVE_STRTOL$])
-m4trace:configure.ac:771: -1- AC_SUBST([LIB@&t@OBJS], ["$LIB@&t@OBJS strtol.$ac_objext"])
-m4trace:configure.ac:771: -1- AC_SUBST_TRACE([LIB@&t@OBJS])
-m4trace:configure.ac:771: -1- m4_pattern_allow([^LIB@&t@OBJS$])
-m4trace:configure.ac:771: -1- AC_LIBSOURCE([strtol.c])
-m4trace:configure.ac:771: -1- AH_OUTPUT([HAVE_STRTOUL], [/* Define to 1 if you have the `strtoul\' function. */
-@%:@undef HAVE_STRTOUL])
-m4trace:configure.ac:771: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STRTOUL])
-m4trace:configure.ac:771: -1- m4_pattern_allow([^HAVE_STRTOUL$])
-m4trace:configure.ac:771: -1- AC_SUBST([LIB@&t@OBJS], ["$LIB@&t@OBJS strtoul.$ac_objext"])
-m4trace:configure.ac:771: -1- AC_SUBST_TRACE([LIB@&t@OBJS])
-m4trace:configure.ac:771: -1- m4_pattern_allow([^LIB@&t@OBJS$])
-m4trace:configure.ac:771: -1- AC_LIBSOURCE([strtoul.c])
-m4trace:configure.ac:771: -1- AH_OUTPUT([HAVE_STRTOLL], [/* Define to 1 if you have the `strtoll\' function. */
-@%:@undef HAVE_STRTOLL])
-m4trace:configure.ac:771: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STRTOLL])
-m4trace:configure.ac:771: -1- m4_pattern_allow([^HAVE_STRTOLL$])
-m4trace:configure.ac:771: -1- AC_SUBST([LIB@&t@OBJS], ["$LIB@&t@OBJS strtoll.$ac_objext"])
-m4trace:configure.ac:771: -1- AC_SUBST_TRACE([LIB@&t@OBJS])
-m4trace:configure.ac:771: -1- m4_pattern_allow([^LIB@&t@OBJS$])
-m4trace:configure.ac:771: -1- AC_LIBSOURCE([strtoll.c])
-m4trace:configure.ac:771: -1- AH_OUTPUT([HAVE_STRTOULL], [/* Define to 1 if you have the `strtoull\' function. */
-@%:@undef HAVE_STRTOULL])
-m4trace:configure.ac:771: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STRTOULL])
-m4trace:configure.ac:771: -1- m4_pattern_allow([^HAVE_STRTOULL$])
-m4trace:configure.ac:771: -1- AC_SUBST([LIB@&t@OBJS], ["$LIB@&t@OBJS strtoull.$ac_objext"])
-m4trace:configure.ac:771: -1- AC_SUBST_TRACE([LIB@&t@OBJS])
-m4trace:configure.ac:771: -1- m4_pattern_allow([^LIB@&t@OBJS$])
-m4trace:configure.ac:771: -1- AC_LIBSOURCE([strtoull.c])
-m4trace:configure.ac:771: -1- AH_OUTPUT([HAVE_STRTOIMAX], [/* Define to 1 if you have the `strtoimax\' function. */
-@%:@undef HAVE_STRTOIMAX])
-m4trace:configure.ac:771: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STRTOIMAX])
-m4trace:configure.ac:771: -1- m4_pattern_allow([^HAVE_STRTOIMAX$])
-m4trace:configure.ac:771: -1- AC_SUBST([LIB@&t@OBJS], ["$LIB@&t@OBJS strtoimax.$ac_objext"])
-m4trace:configure.ac:771: -1- AC_SUBST_TRACE([LIB@&t@OBJS])
-m4trace:configure.ac:771: -1- m4_pattern_allow([^LIB@&t@OBJS$])
-m4trace:configure.ac:771: -1- AC_LIBSOURCE([strtoimax.c])
-m4trace:configure.ac:771: -1- AH_OUTPUT([HAVE_STRTOUMAX], [/* Define to 1 if you have the `strtoumax\' function. */
-@%:@undef HAVE_STRTOUMAX])
-m4trace:configure.ac:771: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STRTOUMAX])
-m4trace:configure.ac:771: -1- m4_pattern_allow([^HAVE_STRTOUMAX$])
-m4trace:configure.ac:771: -1- AC_SUBST([LIB@&t@OBJS], ["$LIB@&t@OBJS strtoumax.$ac_objext"])
-m4trace:configure.ac:771: -1- AC_SUBST_TRACE([LIB@&t@OBJS])
-m4trace:configure.ac:771: -1- m4_pattern_allow([^LIB@&t@OBJS$])
-m4trace:configure.ac:771: -1- AC_LIBSOURCE([strtoumax.c])
-m4trace:configure.ac:772: -1- AH_OUTPUT([HAVE_DPRINTF], [/* Define to 1 if you have the `dprintf\' function. */
-@%:@undef HAVE_DPRINTF])
-m4trace:configure.ac:772: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DPRINTF])
-m4trace:configure.ac:772: -1- m4_pattern_allow([^HAVE_DPRINTF$])
-m4trace:configure.ac:772: -1- AC_SUBST([LIB@&t@OBJS], ["$LIB@&t@OBJS dprintf.$ac_objext"])
-m4trace:configure.ac:772: -1- AC_SUBST_TRACE([LIB@&t@OBJS])
-m4trace:configure.ac:772: -1- m4_pattern_allow([^LIB@&t@OBJS$])
-m4trace:configure.ac:772: -1- AC_LIBSOURCE([dprintf.c])
-m4trace:configure.ac:773: -1- AH_OUTPUT([HAVE_STRCHRNUL], [/* Define to 1 if you have the `strchrnul\' function. */
-@%:@undef HAVE_STRCHRNUL])
-m4trace:configure.ac:773: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STRCHRNUL])
-m4trace:configure.ac:773: -1- m4_pattern_allow([^HAVE_STRCHRNUL$])
-m4trace:configure.ac:773: -1- AC_SUBST([LIB@&t@OBJS], ["$LIB@&t@OBJS strchrnul.$ac_objext"])
-m4trace:configure.ac:773: -1- AC_SUBST_TRACE([LIB@&t@OBJS])
-m4trace:configure.ac:773: -1- m4_pattern_allow([^LIB@&t@OBJS$])
-m4trace:configure.ac:773: -1- AC_LIBSOURCE([strchrnul.c])
-m4trace:configure.ac:775: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DECL_AUDIT_USER_TTY])
-m4trace:configure.ac:775: -1- m4_pattern_allow([^HAVE_DECL_AUDIT_USER_TTY$])
-m4trace:configure.ac:775: -1- AH_OUTPUT([HAVE_DECL_AUDIT_USER_TTY], [/* Define to 1 if you have the declaration of `AUDIT_USER_TTY\', and to 0 if
-   you don\'t. */
-@%:@undef HAVE_DECL_AUDIT_USER_TTY])
-m4trace:configure.ac:777: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DECL_CONFSTR])
-m4trace:configure.ac:777: -1- m4_pattern_allow([^HAVE_DECL_CONFSTR$])
-m4trace:configure.ac:777: -1- AH_OUTPUT([HAVE_DECL_CONFSTR], [/* Define to 1 if you have the declaration of `confstr\', and to 0 if you
-   don\'t. */
-@%:@undef HAVE_DECL_CONFSTR])
-m4trace:configure.ac:778: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DECL_PRINTF])
-m4trace:configure.ac:778: -1- m4_pattern_allow([^HAVE_DECL_PRINTF$])
-m4trace:configure.ac:778: -1- AH_OUTPUT([HAVE_DECL_PRINTF], [/* Define to 1 if you have the declaration of `printf\', and to 0 if you don\'t.
-   */
-@%:@undef HAVE_DECL_PRINTF])
-m4trace:configure.ac:779: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DECL_SBRK])
-m4trace:configure.ac:779: -1- m4_pattern_allow([^HAVE_DECL_SBRK$])
-m4trace:configure.ac:779: -1- AH_OUTPUT([HAVE_DECL_SBRK], [/* Define to 1 if you have the declaration of `sbrk\', and to 0 if you don\'t.
-   */
-@%:@undef HAVE_DECL_SBRK])
-m4trace:configure.ac:780: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DECL_SETREGID])
-m4trace:configure.ac:780: -1- m4_pattern_allow([^HAVE_DECL_SETREGID$])
-m4trace:configure.ac:780: -1- AH_OUTPUT([HAVE_DECL_SETREGID], [/* Define to 1 if you have the declaration of `setregid\', and to 0 if you
-   don\'t. */
-@%:@undef HAVE_DECL_SETREGID])
-m4trace:configure.ac:781: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DECL_STRCPY])
-m4trace:configure.ac:781: -1- m4_pattern_allow([^HAVE_DECL_STRCPY$])
-m4trace:configure.ac:781: -1- AH_OUTPUT([HAVE_DECL_STRCPY], [/* Define to 1 if you have the declaration of `strcpy\', and to 0 if you don\'t.
-   */
-@%:@undef HAVE_DECL_STRCPY])
-m4trace:configure.ac:782: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DECL_STRSIGNAL])
-m4trace:configure.ac:782: -1- m4_pattern_allow([^HAVE_DECL_STRSIGNAL$])
-m4trace:configure.ac:782: -1- AH_OUTPUT([HAVE_DECL_STRSIGNAL], [/* Define to 1 if you have the declaration of `strsignal\', and to 0 if you
-   don\'t. */
-@%:@undef HAVE_DECL_STRSIGNAL])
-m4trace:configure.ac:785: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DECL_STRTOLD])
-m4trace:configure.ac:785: -1- m4_pattern_allow([^HAVE_DECL_STRTOLD$])
-m4trace:configure.ac:785: -1- AH_OUTPUT([HAVE_DECL_STRTOLD], [/* Define to 1 if you have the declaration of `strtold\', and to 0 if you
-   don\'t. */
-@%:@undef HAVE_DECL_STRTOLD])
-m4trace:configure.ac:785: -1- _m4_warn([obsolete], [The macro `AC_TRY_COMPILE' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2615: AC_TRY_COMPILE is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2881: AC_CHECK_DECLS is expanded from...
-configure.ac:785: the top level])
-m4trace:configure.ac:785: -1- AC_DEFINE_TRACE_LITERAL([STRTOLD_BROKEN])
-m4trace:configure.ac:785: -1- m4_pattern_allow([^STRTOLD_BROKEN$])
-m4trace:configure.ac:801: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2688: AC_TRY_LINK is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-../../lib/autoconf/general.m4:2053: AC_CACHE_CHECK is expanded from...
-aclocal.m4:103: BASH_CHECK_DECL is expanded from...
-configure.ac:801: the top level])
-m4trace:configure.ac:802: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2688: AC_TRY_LINK is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-../../lib/autoconf/general.m4:2053: AC_CACHE_CHECK is expanded from...
-aclocal.m4:103: BASH_CHECK_DECL is expanded from...
-configure.ac:802: the top level])
-m4trace:configure.ac:803: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2688: AC_TRY_LINK is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-../../lib/autoconf/general.m4:2053: AC_CACHE_CHECK is expanded from...
-aclocal.m4:103: BASH_CHECK_DECL is expanded from...
-configure.ac:803: the top level])
-m4trace:configure.ac:804: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2688: AC_TRY_LINK is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-../../lib/autoconf/general.m4:2053: AC_CACHE_CHECK is expanded from...
-aclocal.m4:103: BASH_CHECK_DECL is expanded from...
-configure.ac:804: the top level])
-m4trace:configure.ac:805: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2688: AC_TRY_LINK is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-../../lib/autoconf/general.m4:2053: AC_CACHE_CHECK is expanded from...
-aclocal.m4:103: BASH_CHECK_DECL is expanded from...
-configure.ac:805: the top level])
-m4trace:configure.ac:806: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2688: AC_TRY_LINK is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-../../lib/autoconf/general.m4:2053: AC_CACHE_CHECK is expanded from...
-aclocal.m4:103: BASH_CHECK_DECL is expanded from...
-configure.ac:806: the top level])
-m4trace:configure.ac:808: -1- AH_OUTPUT([HAVE_SYS_TIME_H], [/* Define to 1 if you have the <sys/time.h> header file. */
-@%:@undef HAVE_SYS_TIME_H])
-m4trace:configure.ac:808: -1- AH_OUTPUT([HAVE_UNISTD_H], [/* Define to 1 if you have the <unistd.h> header file. */
-@%:@undef HAVE_UNISTD_H])
-m4trace:configure.ac:808: -1- AH_OUTPUT([HAVE_ALARM], [/* Define to 1 if you have the `alarm\' function. */
-@%:@undef HAVE_ALARM])
-m4trace:configure.ac:808: -1- AC_SUBST([LIB@&t@OBJS], ["$LIB@&t@OBJS mktime.$ac_objext"])
-m4trace:configure.ac:808: -1- AC_SUBST_TRACE([LIB@&t@OBJS])
-m4trace:configure.ac:808: -1- m4_pattern_allow([^LIB@&t@OBJS$])
-m4trace:configure.ac:808: -1- AC_LIBSOURCE([mktime.c])
-m4trace:configure.ac:815: -1- AH_OUTPUT([HAVE_ARGZ_H], [/* Define to 1 if you have the <argz.h> header file. */
-@%:@undef HAVE_ARGZ_H])
-m4trace:configure.ac:815: -1- AH_OUTPUT([HAVE_ERRNO_H], [/* Define to 1 if you have the <errno.h> header file. */
-@%:@undef HAVE_ERRNO_H])
-m4trace:configure.ac:815: -1- AH_OUTPUT([HAVE_FCNTL_H], [/* Define to 1 if you have the <fcntl.h> header file. */
-@%:@undef HAVE_FCNTL_H])
-m4trace:configure.ac:815: -1- AH_OUTPUT([HAVE_MALLOC_H], [/* Define to 1 if you have the <malloc.h> header file. */
-@%:@undef HAVE_MALLOC_H])
-m4trace:configure.ac:815: -1- AH_OUTPUT([HAVE_STDIO_EXT_H], [/* Define to 1 if you have the <stdio_ext.h> header file. */
-@%:@undef HAVE_STDIO_EXT_H])
-m4trace:configure.ac:818: -1- AH_OUTPUT([HAVE_STDLIB_H], [/* Define to 1 if you have the <stdlib.h> header file. */
-@%:@undef HAVE_STDLIB_H])
-m4trace:configure.ac:818: -1- AH_OUTPUT([HAVE_UNISTD_H], [/* Define to 1 if you have the <unistd.h> header file. */
-@%:@undef HAVE_UNISTD_H])
-m4trace:configure.ac:818: -1- AH_OUTPUT([HAVE_SYS_PARAM_H], [/* Define to 1 if you have the <sys/param.h> header file. */
-@%:@undef HAVE_SYS_PARAM_H])
-m4trace:configure.ac:818: -1- AH_OUTPUT([HAVE_GETPAGESIZE], [/* Define to 1 if you have the `getpagesize\' function. */
-@%:@undef HAVE_GETPAGESIZE])
-m4trace:configure.ac:818: -1- AC_DEFINE_TRACE_LITERAL([HAVE_GETPAGESIZE])
-m4trace:configure.ac:818: -1- m4_pattern_allow([^HAVE_GETPAGESIZE$])
-m4trace:configure.ac:818: -1- AC_DEFINE_TRACE_LITERAL([HAVE_MMAP])
-m4trace:configure.ac:818: -1- m4_pattern_allow([^HAVE_MMAP$])
-m4trace:configure.ac:818: -1- AH_OUTPUT([HAVE_MMAP], [/* Define to 1 if you have a working `mmap\' system call. */
-@%:@undef HAVE_MMAP])
-m4trace:configure.ac:819: -1- AH_OUTPUT([HAVE___ARGZ_COUNT], [/* Define to 1 if you have the `__argz_count\' function. */
-@%:@undef HAVE___ARGZ_COUNT])
-m4trace:configure.ac:819: -1- AH_OUTPUT([HAVE___ARGZ_NEXT], [/* Define to 1 if you have the `__argz_next\' function. */
-@%:@undef HAVE___ARGZ_NEXT])
-m4trace:configure.ac:819: -1- AH_OUTPUT([HAVE___ARGZ_STRINGIFY], [/* Define to 1 if you have the `__argz_stringify\' function. */
-@%:@undef HAVE___ARGZ_STRINGIFY])
-m4trace:configure.ac:819: -1- AH_OUTPUT([HAVE_DCGETTEXT], [/* Define to 1 if you have the `dcgettext\' function. */
-@%:@undef HAVE_DCGETTEXT])
-m4trace:configure.ac:819: -1- AH_OUTPUT([HAVE_MEMPCPY], [/* Define to 1 if you have the `mempcpy\' function. */
-@%:@undef HAVE_MEMPCPY])
-m4trace:configure.ac:819: -1- AH_OUTPUT([HAVE_MUNMAP], [/* Define to 1 if you have the `munmap\' function. */
-@%:@undef HAVE_MUNMAP])
-m4trace:configure.ac:819: -1- AH_OUTPUT([HAVE_STPCPY], [/* Define to 1 if you have the `stpcpy\' function. */
-@%:@undef HAVE_STPCPY])
-m4trace:configure.ac:819: -1- AH_OUTPUT([HAVE_STRCSPN], [/* Define to 1 if you have the `strcspn\' function. */
-@%:@undef HAVE_STRCSPN])
-m4trace:configure.ac:819: -1- AH_OUTPUT([HAVE_STRDUP], [/* Define to 1 if you have the `strdup\' function. */
-@%:@undef HAVE_STRDUP])
-m4trace:configure.ac:828: -1- AC_SUBST([INTL_DEP])
-m4trace:configure.ac:828: -1- AC_SUBST_TRACE([INTL_DEP])
-m4trace:configure.ac:828: -1- m4_pattern_allow([^INTL_DEP$])
-m4trace:configure.ac:829: -1- AC_SUBST([INTL_INC])
-m4trace:configure.ac:829: -1- AC_SUBST_TRACE([INTL_INC])
-m4trace:configure.ac:829: -1- m4_pattern_allow([^INTL_INC$])
-m4trace:configure.ac:830: -1- AC_SUBST([LIBINTL_H])
-m4trace:configure.ac:830: -1- AC_SUBST_TRACE([LIBINTL_H])
-m4trace:configure.ac:830: -1- m4_pattern_allow([^LIBINTL_H$])
-m4trace:configure.ac:836: -1- AH_OUTPUT([HAVE_WCTYPE_H], [/* Define to 1 if you have the <wctype.h> header file. */
-@%:@undef HAVE_WCTYPE_H])
-m4trace:configure.ac:836: -1- AC_DEFINE_TRACE_LITERAL([HAVE_WCTYPE_H])
-m4trace:configure.ac:836: -1- m4_pattern_allow([^HAVE_WCTYPE_H$])
-m4trace:configure.ac:836: -1- AH_OUTPUT([HAVE_WCHAR_H], [/* Define to 1 if you have the <wchar.h> header file. */
-@%:@undef HAVE_WCHAR_H])
-m4trace:configure.ac:836: -1- AC_DEFINE_TRACE_LITERAL([HAVE_WCHAR_H])
-m4trace:configure.ac:836: -1- m4_pattern_allow([^HAVE_WCHAR_H$])
-m4trace:configure.ac:836: -1- AH_OUTPUT([HAVE_LANGINFO_H], [/* Define to 1 if you have the <langinfo.h> header file. */
-@%:@undef HAVE_LANGINFO_H])
-m4trace:configure.ac:836: -1- AC_DEFINE_TRACE_LITERAL([HAVE_LANGINFO_H])
-m4trace:configure.ac:836: -1- m4_pattern_allow([^HAVE_LANGINFO_H$])
-m4trace:configure.ac:836: -2- AC_DEFINE_TRACE_LITERAL([HAVE_MBRLEN])
-m4trace:configure.ac:836: -2- m4_pattern_allow([^HAVE_MBRLEN$])
-m4trace:configure.ac:836: -2- AC_DEFINE_TRACE_LITERAL([HAVE_MBSCMP])
-m4trace:configure.ac:836: -2- m4_pattern_allow([^HAVE_MBSCMP$])
-m4trace:configure.ac:836: -2- AC_DEFINE_TRACE_LITERAL([HAVE_MBSCMP])
-m4trace:configure.ac:836: -2- m4_pattern_allow([^HAVE_MBSCMP$])
-m4trace:configure.ac:836: -2- AC_DEFINE_TRACE_LITERAL([HAVE_MBSNRTOWCS])
-m4trace:configure.ac:836: -2- m4_pattern_allow([^HAVE_MBSNRTOWCS$])
-m4trace:configure.ac:836: -2- AC_DEFINE_TRACE_LITERAL([HAVE_MBSRTOWCS])
-m4trace:configure.ac:836: -2- m4_pattern_allow([^HAVE_MBSRTOWCS$])
-m4trace:configure.ac:836: -1- AH_OUTPUT([HAVE_MBSCHR], [/* Define to 1 if you have the `mbschr\' function. */
-@%:@undef HAVE_MBSCHR])
-m4trace:configure.ac:836: -1- AC_DEFINE_TRACE_LITERAL([HAVE_MBSCHR])
-m4trace:configure.ac:836: -1- m4_pattern_allow([^HAVE_MBSCHR$])
-m4trace:configure.ac:836: -1- AC_SUBST([LIB@&t@OBJS], ["$LIB@&t@OBJS mbschr.$ac_objext"])
-m4trace:configure.ac:836: -1- AC_SUBST_TRACE([LIB@&t@OBJS])
-m4trace:configure.ac:836: -1- m4_pattern_allow([^LIB@&t@OBJS$])
-m4trace:configure.ac:836: -1- AC_LIBSOURCE([mbschr.c])
-m4trace:configure.ac:836: -2- AC_DEFINE_TRACE_LITERAL([HAVE_WCRTOMB])
-m4trace:configure.ac:836: -2- m4_pattern_allow([^HAVE_WCRTOMB$])
-m4trace:configure.ac:836: -2- AC_DEFINE_TRACE_LITERAL([HAVE_WCSCOLL])
-m4trace:configure.ac:836: -2- m4_pattern_allow([^HAVE_WCSCOLL$])
-m4trace:configure.ac:836: -2- AC_DEFINE_TRACE_LITERAL([HAVE_WCSDUP])
-m4trace:configure.ac:836: -2- m4_pattern_allow([^HAVE_WCSDUP$])
-m4trace:configure.ac:836: -2- AC_DEFINE_TRACE_LITERAL([HAVE_WCWIDTH])
-m4trace:configure.ac:836: -2- m4_pattern_allow([^HAVE_WCWIDTH$])
-m4trace:configure.ac:836: -2- AC_DEFINE_TRACE_LITERAL([HAVE_WCTYPE])
-m4trace:configure.ac:836: -2- m4_pattern_allow([^HAVE_WCTYPE$])
-m4trace:configure.ac:836: -1- AH_OUTPUT([HAVE_WCSWIDTH], [/* Define to 1 if you have the `wcswidth\' function. */
-@%:@undef HAVE_WCSWIDTH])
-m4trace:configure.ac:836: -1- AC_DEFINE_TRACE_LITERAL([HAVE_WCSWIDTH])
-m4trace:configure.ac:836: -1- m4_pattern_allow([^HAVE_WCSWIDTH$])
-m4trace:configure.ac:836: -1- AC_SUBST([LIB@&t@OBJS], ["$LIB@&t@OBJS wcswidth.$ac_objext"])
-m4trace:configure.ac:836: -1- AC_SUBST_TRACE([LIB@&t@OBJS])
-m4trace:configure.ac:836: -1- m4_pattern_allow([^LIB@&t@OBJS$])
-m4trace:configure.ac:836: -1- AC_LIBSOURCE([wcswidth.c])
-m4trace:configure.ac:836: -1- AC_DEFINE_TRACE_LITERAL([HAVE_MBRTOWC])
-m4trace:configure.ac:836: -1- m4_pattern_allow([^HAVE_MBRTOWC$])
-m4trace:configure.ac:836: -1- AH_OUTPUT([HAVE_MBRTOWC], [/* Define to 1 if mbrtowc and mbstate_t are properly declared. */
-@%:@undef HAVE_MBRTOWC])
-m4trace:configure.ac:836: -1- AC_DEFINE_TRACE_LITERAL([HAVE_MBSTATE_T])
-m4trace:configure.ac:836: -1- m4_pattern_allow([^HAVE_MBSTATE_T$])
-m4trace:configure.ac:836: -1- AH_OUTPUT([HAVE_ISWLOWER], [/* Define to 1 if you have the `iswlower\' function. */
-@%:@undef HAVE_ISWLOWER])
-m4trace:configure.ac:836: -1- AH_OUTPUT([HAVE_ISWUPPER], [/* Define to 1 if you have the `iswupper\' function. */
-@%:@undef HAVE_ISWUPPER])
-m4trace:configure.ac:836: -1- AH_OUTPUT([HAVE_TOWLOWER], [/* Define to 1 if you have the `towlower\' function. */
-@%:@undef HAVE_TOWLOWER])
-m4trace:configure.ac:836: -1- AH_OUTPUT([HAVE_TOWUPPER], [/* Define to 1 if you have the `towupper\' function. */
-@%:@undef HAVE_TOWUPPER])
-m4trace:configure.ac:836: -1- AH_OUTPUT([HAVE_ISWCTYPE], [/* Define to 1 if you have the `iswctype\' function. */
-@%:@undef HAVE_ISWCTYPE])
-m4trace:configure.ac:836: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2688: AC_TRY_LINK is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-../../lib/autoconf/general.m4:2053: AC_CACHE_CHECK is expanded from...
-aclocal.m4:1689: BASH_CHECK_MULTIBYTE is expanded from...
-configure.ac:836: the top level])
-m4trace:configure.ac:836: -1- AC_DEFINE_TRACE_LITERAL([HAVE_LANGINFO_CODESET])
-m4trace:configure.ac:836: -1- m4_pattern_allow([^HAVE_LANGINFO_CODESET$])
-m4trace:configure.ac:836: -1- _m4_warn([obsolete], [The macro `AC_TRY_COMPILE' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2615: AC_TRY_COMPILE is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-../../lib/autoconf/general.m4:2053: AC_CACHE_CHECK is expanded from...
-aclocal.m4:1689: BASH_CHECK_MULTIBYTE is expanded from...
-configure.ac:836: the top level])
-m4trace:configure.ac:836: -1- AC_DEFINE_TRACE_LITERAL([HAVE_WCHAR_T])
-m4trace:configure.ac:836: -1- m4_pattern_allow([^HAVE_WCHAR_T$])
-m4trace:configure.ac:836: -1- AH_OUTPUT([HAVE_WCHAR_T], [/* systems should define this type here */
-@%:@undef HAVE_WCHAR_T])
-m4trace:configure.ac:836: -1- _m4_warn([obsolete], [The macro `AC_TRY_COMPILE' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2615: AC_TRY_COMPILE is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-../../lib/autoconf/general.m4:2053: AC_CACHE_CHECK is expanded from...
-aclocal.m4:1689: BASH_CHECK_MULTIBYTE is expanded from...
-configure.ac:836: the top level])
-m4trace:configure.ac:836: -1- AC_DEFINE_TRACE_LITERAL([HAVE_WCTYPE_T])
-m4trace:configure.ac:836: -1- m4_pattern_allow([^HAVE_WCTYPE_T$])
-m4trace:configure.ac:836: -1- AH_OUTPUT([HAVE_WCTYPE_T], [/* systems should define this type here */
-@%:@undef HAVE_WCTYPE_T])
-m4trace:configure.ac:836: -1- _m4_warn([obsolete], [The macro `AC_TRY_COMPILE' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2615: AC_TRY_COMPILE is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-../../lib/autoconf/general.m4:2053: AC_CACHE_CHECK is expanded from...
-aclocal.m4:1689: BASH_CHECK_MULTIBYTE is expanded from...
-configure.ac:836: the top level])
-m4trace:configure.ac:836: -1- AC_DEFINE_TRACE_LITERAL([HAVE_WINT_T])
-m4trace:configure.ac:836: -1- m4_pattern_allow([^HAVE_WINT_T$])
-m4trace:configure.ac:836: -1- AH_OUTPUT([HAVE_WINT_T], [/* systems should define this type here */
-@%:@undef HAVE_WINT_T])
-m4trace:configure.ac:836: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2765: AC_TRY_RUN is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-../../lib/autoconf/general.m4:2053: AC_CACHE_CHECK is expanded from...
-aclocal.m4:1689: BASH_CHECK_MULTIBYTE is expanded from...
-configure.ac:836: the top level])
-m4trace:configure.ac:836: -1- _m4_warn([cross], [AC_RUN_IFELSE called without default to allow cross compiling], [../../lib/autoconf/general.m4:2749: AC_RUN_IFELSE is expanded from...
-../../lib/autoconf/general.m4:2765: AC_TRY_RUN is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-../../lib/autoconf/general.m4:2053: AC_CACHE_CHECK is expanded from...
-aclocal.m4:1689: BASH_CHECK_MULTIBYTE is expanded from...
-configure.ac:836: the top level])
-m4trace:configure.ac:836: -1- AC_DEFINE_TRACE_LITERAL([WCWIDTH_BROKEN])
-m4trace:configure.ac:836: -1- m4_pattern_allow([^WCWIDTH_BROKEN$])
-m4trace:configure.ac:836: -1- AH_OUTPUT([WCWIDTH_BROKEN], [/* wcwidth is usually not broken */
-@%:@undef WCWIDTH_BROKEN])
-m4trace:configure.ac:836: -1- AH_OUTPUT([HAVE_LOCALE_CHARSET], [/* Define to 1 if you have the `locale_charset\' function. */
-@%:@undef HAVE_LOCALE_CHARSET])
-m4trace:configure.ac:836: -1- AC_DEFINE_TRACE_LITERAL([HAVE_LOCALE_CHARSET])
-m4trace:configure.ac:836: -1- m4_pattern_allow([^HAVE_LOCALE_CHARSET$])
-m4trace:configure.ac:840: -1- AH_OUTPUT([HAVE_LIBDL], [/* Define to 1 if you have the `dl\' library (-ldl). */
-@%:@undef HAVE_LIBDL])
-m4trace:configure.ac:840: -1- AC_DEFINE_TRACE_LITERAL([HAVE_LIBDL])
-m4trace:configure.ac:840: -1- m4_pattern_allow([^HAVE_LIBDL$])
-m4trace:configure.ac:841: -1- AH_OUTPUT([HAVE_DLOPEN], [/* Define to 1 if you have the `dlopen\' function. */
-@%:@undef HAVE_DLOPEN])
-m4trace:configure.ac:841: -1- AH_OUTPUT([HAVE_DLCLOSE], [/* Define to 1 if you have the `dlclose\' function. */
-@%:@undef HAVE_DLCLOSE])
-m4trace:configure.ac:841: -1- AH_OUTPUT([HAVE_DLSYM], [/* Define to 1 if you have the `dlsym\' function. */
-@%:@undef HAVE_DLSYM])
-m4trace:configure.ac:845: -1- _m4_warn([obsolete], [The macro `AC_DECL_SYS_SIGLIST' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/specific.m4:41: AC_DECL_SYS_SIGLIST is expanded from...
-configure.ac:845: the top level])
-m4trace:configure.ac:845: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DECL_SYS_SIGLIST])
-m4trace:configure.ac:845: -1- m4_pattern_allow([^HAVE_DECL_SYS_SIGLIST$])
-m4trace:configure.ac:845: -1- AH_OUTPUT([HAVE_DECL_SYS_SIGLIST], [/* Define to 1 if you have the declaration of `sys_siglist\', and to 0 if you
-   don\'t. */
-@%:@undef HAVE_DECL_SYS_SIGLIST])
-m4trace:configure.ac:849: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2688: AC_TRY_LINK is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-../../lib/autoconf/general.m4:2053: AC_CACHE_CHECK is expanded from...
-aclocal.m4:563: BASH_FUNC_INET_ATON is expanded from...
-configure.ac:849: the top level])
-m4trace:configure.ac:849: -1- AC_DEFINE_TRACE_LITERAL([HAVE_INET_ATON])
-m4trace:configure.ac:849: -1- m4_pattern_allow([^HAVE_INET_ATON$])
-m4trace:configure.ac:849: -1- AC_SUBST([LIB@&t@OBJS], ["$LIB@&t@OBJS inet_aton.$ac_objext"])
-m4trace:configure.ac:849: -1- AC_SUBST_TRACE([LIB@&t@OBJS])
-m4trace:configure.ac:849: -1- m4_pattern_allow([^LIB@&t@OBJS$])
-m4trace:configure.ac:849: -1- AC_LIBSOURCE([inet_aton.c])
-m4trace:configure.ac:855: -1- AH_OUTPUT([HAVE_LIBSUN], [/* Define to 1 if you have the `sun\' library (-lsun). */
-@%:@undef HAVE_LIBSUN])
-m4trace:configure.ac:855: -1- AC_DEFINE_TRACE_LITERAL([HAVE_LIBSUN])
-m4trace:configure.ac:855: -1- m4_pattern_allow([^HAVE_LIBSUN$])
-m4trace:configure.ac:860: -1- AC_DEFINE_TRACE_LITERAL([HAVE_LIBSOCKET])
-m4trace:configure.ac:860: -1- m4_pattern_allow([^HAVE_LIBSOCKET$])
-m4trace:configure.ac:860: -1- AC_DEFINE_TRACE_LITERAL([HAVE_GETPEERNAME])
-m4trace:configure.ac:860: -1- m4_pattern_allow([^HAVE_GETPEERNAME$])
-m4trace:configure.ac:864: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2688: AC_TRY_LINK is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-aclocal.m4:732: BASH_FUNC_GETHOSTBYNAME is expanded from...
-configure.ac:864: the top level])
-m4trace:configure.ac:864: -1- AC_DEFINE_TRACE_LITERAL([HAVE_GETHOSTBYNAME])
-m4trace:configure.ac:864: -1- m4_pattern_allow([^HAVE_GETHOSTBYNAME$])
-m4trace:configure.ac:868: -1- AC_DEFINE_TRACE_LITERAL([uid_t])
-m4trace:configure.ac:868: -1- m4_pattern_allow([^uid_t$])
-m4trace:configure.ac:868: -1- AH_OUTPUT([uid_t], [/* Define to `int\' if <sys/types.h> doesn\'t define. */
-@%:@undef uid_t])
-m4trace:configure.ac:868: -1- AC_DEFINE_TRACE_LITERAL([gid_t])
-m4trace:configure.ac:868: -1- m4_pattern_allow([^gid_t$])
-m4trace:configure.ac:868: -1- AH_OUTPUT([gid_t], [/* Define to `int\' if <sys/types.h> doesn\'t define. */
-@%:@undef gid_t])
-m4trace:configure.ac:868: -1- AC_DEFINE_TRACE_LITERAL([GETGROUPS_T])
-m4trace:configure.ac:868: -1- m4_pattern_allow([^GETGROUPS_T$])
-m4trace:configure.ac:868: -1- AH_OUTPUT([GETGROUPS_T], [/* Define to the type of elements in the array set by `getgroups\'. Usually
-   this is either `int\' or `gid_t\'. */
-@%:@undef GETGROUPS_T])
-m4trace:configure.ac:869: -1- AC_DEFINE_TRACE_LITERAL([off_t])
-m4trace:configure.ac:869: -1- m4_pattern_allow([^off_t$])
-m4trace:configure.ac:869: -1- AH_OUTPUT([off_t], [/* Define to `long int\' if <sys/types.h> does not define. */
-@%:@undef off_t])
-m4trace:configure.ac:870: -1- AC_DEFINE_TRACE_LITERAL([mode_t])
-m4trace:configure.ac:870: -1- m4_pattern_allow([^mode_t$])
-m4trace:configure.ac:870: -1- AH_OUTPUT([mode_t], [/* Define to `int\' if <sys/types.h> does not define. */
-@%:@undef mode_t])
-m4trace:configure.ac:871: -1- AC_DEFINE_TRACE_LITERAL([uid_t])
-m4trace:configure.ac:871: -1- m4_pattern_allow([^uid_t$])
-m4trace:configure.ac:871: -1- AH_OUTPUT([uid_t], [/* Define to `int\' if <sys/types.h> doesn\'t define. */
-@%:@undef uid_t])
-m4trace:configure.ac:871: -1- AC_DEFINE_TRACE_LITERAL([gid_t])
-m4trace:configure.ac:871: -1- m4_pattern_allow([^gid_t$])
-m4trace:configure.ac:871: -1- AH_OUTPUT([gid_t], [/* Define to `int\' if <sys/types.h> doesn\'t define. */
-@%:@undef gid_t])
-m4trace:configure.ac:872: -1- AC_DEFINE_TRACE_LITERAL([pid_t])
-m4trace:configure.ac:872: -1- m4_pattern_allow([^pid_t$])
-m4trace:configure.ac:872: -1- AH_OUTPUT([pid_t], [/* Define to `int\' if <sys/types.h> does not define. */
-@%:@undef pid_t])
-m4trace:configure.ac:873: -1- AC_DEFINE_TRACE_LITERAL([size_t])
-m4trace:configure.ac:873: -1- m4_pattern_allow([^size_t$])
-m4trace:configure.ac:873: -1- AH_OUTPUT([size_t], [/* Define to `unsigned int\' if <sys/types.h> does not define. */
-@%:@undef size_t])
-m4trace:configure.ac:874: -1- AC_DEFINE_TRACE_LITERAL([ssize_t])
-m4trace:configure.ac:874: -1- m4_pattern_allow([^ssize_t$])
-m4trace:configure.ac:874: -1- AH_OUTPUT([ssize_t], [/* Define to `int\' if <sys/types.h> does not define. */
-@%:@undef ssize_t])
-m4trace:configure.ac:875: -1- AC_DEFINE_TRACE_LITERAL([time_t])
-m4trace:configure.ac:875: -1- m4_pattern_allow([^time_t$])
-m4trace:configure.ac:875: -1- AH_OUTPUT([time_t], [/* Define to `long\' if <sys/types.h> does not define. */
-@%:@undef time_t])
-m4trace:configure.ac:877: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2688: AC_TRY_LINK is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-../../lib/autoconf/general.m4:2053: AC_CACHE_CHECK is expanded from...
-aclocal.m4:472: BASH_TYPE_LONG_LONG is expanded from...
-configure.ac:877: the top level])
-m4trace:configure.ac:877: -1- AC_DEFINE_TRACE_LITERAL([HAVE_LONG_LONG])
-m4trace:configure.ac:877: -1- m4_pattern_allow([^HAVE_LONG_LONG$])
-m4trace:configure.ac:878: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2688: AC_TRY_LINK is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-../../lib/autoconf/general.m4:2053: AC_CACHE_CHECK is expanded from...
-aclocal.m4:486: BASH_TYPE_UNSIGNED_LONG_LONG is expanded from...
-configure.ac:878: the top level])
-m4trace:configure.ac:878: -1- AC_DEFINE_TRACE_LITERAL([HAVE_UNSIGNED_LONG_LONG])
-m4trace:configure.ac:878: -1- m4_pattern_allow([^HAVE_UNSIGNED_LONG_LONG$])
-m4trace:configure.ac:880: -1- _m4_warn([obsolete], [The macro `AC_TYPE_SIGNAL' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/types.m4:738: AC_TYPE_SIGNAL is expanded from...
-configure.ac:880: the top level])
-m4trace:configure.ac:880: -1- AC_DEFINE_TRACE_LITERAL([RETSIGTYPE])
-m4trace:configure.ac:880: -1- m4_pattern_allow([^RETSIGTYPE$])
-m4trace:configure.ac:880: -1- AH_OUTPUT([RETSIGTYPE], [/* Define as the return type of signal handlers (`int\' or `void\'). */
-@%:@undef RETSIGTYPE])
-m4trace:configure.ac:881: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2688: AC_TRY_LINK is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-../../lib/autoconf/general.m4:2053: AC_CACHE_CHECK is expanded from...
-aclocal.m4:537: BASH_TYPE_SIG_ATOMIC_T is expanded from...
-configure.ac:881: the top level])
-m4trace:configure.ac:881: -1- AC_DEFINE_TRACE_LITERAL([sig_atomic_t])
-m4trace:configure.ac:881: -1- m4_pattern_allow([^sig_atomic_t$])
-m4trace:configure.ac:881: -1- AH_OUTPUT([sig_atomic_t], [/* Define to `int\' if <sys/types.h> does not define. */
-@%:@undef sig_atomic_t])
-m4trace:configure.ac:883: -1- AC_DEFINE_TRACE_LITERAL([SIZEOF_CHAR])
-m4trace:configure.ac:883: -1- m4_pattern_allow([^SIZEOF_CHAR$])
-m4trace:configure.ac:883: -1- AH_OUTPUT([SIZEOF_CHAR], [/* The size of `char\', as computed by sizeof. */
-@%:@undef SIZEOF_CHAR])
-m4trace:configure.ac:884: -1- AC_DEFINE_TRACE_LITERAL([SIZEOF_SHORT])
-m4trace:configure.ac:884: -1- m4_pattern_allow([^SIZEOF_SHORT$])
-m4trace:configure.ac:884: -1- AH_OUTPUT([SIZEOF_SHORT], [/* The size of `short\', as computed by sizeof. */
-@%:@undef SIZEOF_SHORT])
-m4trace:configure.ac:885: -1- AC_DEFINE_TRACE_LITERAL([SIZEOF_INT])
-m4trace:configure.ac:885: -1- m4_pattern_allow([^SIZEOF_INT$])
-m4trace:configure.ac:885: -1- AH_OUTPUT([SIZEOF_INT], [/* The size of `int\', as computed by sizeof. */
-@%:@undef SIZEOF_INT])
-m4trace:configure.ac:886: -1- AC_DEFINE_TRACE_LITERAL([SIZEOF_LONG])
-m4trace:configure.ac:886: -1- m4_pattern_allow([^SIZEOF_LONG$])
-m4trace:configure.ac:886: -1- AH_OUTPUT([SIZEOF_LONG], [/* The size of `long\', as computed by sizeof. */
-@%:@undef SIZEOF_LONG])
-m4trace:configure.ac:887: -1- AC_DEFINE_TRACE_LITERAL([SIZEOF_CHAR_P])
-m4trace:configure.ac:887: -1- m4_pattern_allow([^SIZEOF_CHAR_P$])
-m4trace:configure.ac:887: -1- AH_OUTPUT([SIZEOF_CHAR_P], [/* The size of `char *\', as computed by sizeof. */
-@%:@undef SIZEOF_CHAR_P])
-m4trace:configure.ac:888: -1- AC_DEFINE_TRACE_LITERAL([SIZEOF_DOUBLE])
-m4trace:configure.ac:888: -1- m4_pattern_allow([^SIZEOF_DOUBLE$])
-m4trace:configure.ac:888: -1- AH_OUTPUT([SIZEOF_DOUBLE], [/* The size of `double\', as computed by sizeof. */
-@%:@undef SIZEOF_DOUBLE])
-m4trace:configure.ac:889: -1- AC_DEFINE_TRACE_LITERAL([SIZEOF_LONG_LONG])
-m4trace:configure.ac:889: -1- m4_pattern_allow([^SIZEOF_LONG_LONG$])
-m4trace:configure.ac:889: -1- AH_OUTPUT([SIZEOF_LONG_LONG], [/* The size of `long long\', as computed by sizeof. */
-@%:@undef SIZEOF_LONG_LONG])
-m4trace:configure.ac:891: -1- AC_DEFINE_TRACE_LITERAL([u_int])
-m4trace:configure.ac:891: -1- m4_pattern_allow([^u_int$])
-m4trace:configure.ac:891: -1- AH_OUTPUT([u_int], [/* Define to `unsigned int\' if <sys/types.h> does not define. */
-@%:@undef u_int])
-m4trace:configure.ac:892: -1- AC_DEFINE_TRACE_LITERAL([u_long])
-m4trace:configure.ac:892: -1- m4_pattern_allow([^u_long$])
-m4trace:configure.ac:892: -1- AH_OUTPUT([u_long], [/* Define to `unsigned long\' if <sys/types.h> does not define. */
-@%:@undef u_long])
-m4trace:configure.ac:894: -1- AC_DEFINE_TRACE_LITERAL([bits16_t])
-m4trace:configure.ac:894: -1- m4_pattern_allow([^bits16_t$])
-m4trace:configure.ac:894: -1- AH_OUTPUT([bits16_t], [/* Define to `short\' if <sys/types.h> does not define. */
-@%:@undef bits16_t])
-m4trace:configure.ac:894: -1- AC_DEFINE_TRACE_LITERAL([bits16_t])
-m4trace:configure.ac:894: -1- m4_pattern_allow([^bits16_t$])
-m4trace:configure.ac:894: -1- AH_OUTPUT([bits16_t], [/* Define to `char\' if <sys/types.h> does not define. */
-@%:@undef bits16_t])
-m4trace:configure.ac:894: -1- AC_DEFINE_TRACE_LITERAL([bits16_t])
-m4trace:configure.ac:894: -1- m4_pattern_allow([^bits16_t$])
-m4trace:configure.ac:894: -1- AH_OUTPUT([bits16_t], [/* Define to `short\' if <sys/types.h> does not define. */
-@%:@undef bits16_t])
-m4trace:configure.ac:895: -1- AC_DEFINE_TRACE_LITERAL([u_bits16_t])
-m4trace:configure.ac:895: -1- m4_pattern_allow([^u_bits16_t$])
-m4trace:configure.ac:895: -1- AH_OUTPUT([u_bits16_t], [/* Define to `unsigned short\' if <sys/types.h> does not define. */
-@%:@undef u_bits16_t])
-m4trace:configure.ac:895: -1- AC_DEFINE_TRACE_LITERAL([u_bits16_t])
-m4trace:configure.ac:895: -1- m4_pattern_allow([^u_bits16_t$])
-m4trace:configure.ac:895: -1- AH_OUTPUT([u_bits16_t], [/* Define to `unsigned char\' if <sys/types.h> does not define. */
-@%:@undef u_bits16_t])
-m4trace:configure.ac:895: -1- AC_DEFINE_TRACE_LITERAL([u_bits16_t])
-m4trace:configure.ac:895: -1- m4_pattern_allow([^u_bits16_t$])
-m4trace:configure.ac:895: -1- AH_OUTPUT([u_bits16_t], [/* Define to `unsigned short\' if <sys/types.h> does not define. */
-@%:@undef u_bits16_t])
-m4trace:configure.ac:896: -1- AC_DEFINE_TRACE_LITERAL([bits32_t])
-m4trace:configure.ac:896: -1- m4_pattern_allow([^bits32_t$])
-m4trace:configure.ac:896: -1- AH_OUTPUT([bits32_t], [/* Define to `int\' if <sys/types.h> does not define. */
-@%:@undef bits32_t])
-m4trace:configure.ac:896: -1- AC_DEFINE_TRACE_LITERAL([bits32_t])
-m4trace:configure.ac:896: -1- m4_pattern_allow([^bits32_t$])
-m4trace:configure.ac:896: -1- AH_OUTPUT([bits32_t], [/* Define to `long\' if <sys/types.h> does not define. */
-@%:@undef bits32_t])
-m4trace:configure.ac:896: -1- AC_DEFINE_TRACE_LITERAL([bits32_t])
-m4trace:configure.ac:896: -1- m4_pattern_allow([^bits32_t$])
-m4trace:configure.ac:896: -1- AH_OUTPUT([bits32_t], [/* Define to `int\' if <sys/types.h> does not define. */
-@%:@undef bits32_t])
-m4trace:configure.ac:897: -1- AC_DEFINE_TRACE_LITERAL([u_bits32_t])
-m4trace:configure.ac:897: -1- m4_pattern_allow([^u_bits32_t$])
-m4trace:configure.ac:897: -1- AH_OUTPUT([u_bits32_t], [/* Define to `unsigned int\' if <sys/types.h> does not define. */
-@%:@undef u_bits32_t])
-m4trace:configure.ac:897: -1- AC_DEFINE_TRACE_LITERAL([u_bits32_t])
-m4trace:configure.ac:897: -1- m4_pattern_allow([^u_bits32_t$])
-m4trace:configure.ac:897: -1- AH_OUTPUT([u_bits32_t], [/* Define to `unsigned long\' if <sys/types.h> does not define. */
-@%:@undef u_bits32_t])
-m4trace:configure.ac:897: -1- AC_DEFINE_TRACE_LITERAL([u_bits32_t])
-m4trace:configure.ac:897: -1- m4_pattern_allow([^u_bits32_t$])
-m4trace:configure.ac:897: -1- AH_OUTPUT([u_bits32_t], [/* Define to `unsigned int\' if <sys/types.h> does not define. */
-@%:@undef u_bits32_t])
-m4trace:configure.ac:898: -1- AC_DEFINE_TRACE_LITERAL([bits64_t])
-m4trace:configure.ac:898: -1- m4_pattern_allow([^bits64_t$])
-m4trace:configure.ac:898: -1- AH_OUTPUT([bits64_t], [/* Define to `char *\' if <sys/types.h> does not define. */
-@%:@undef bits64_t])
-m4trace:configure.ac:898: -1- AC_DEFINE_TRACE_LITERAL([bits64_t])
-m4trace:configure.ac:898: -1- m4_pattern_allow([^bits64_t$])
-m4trace:configure.ac:898: -1- AH_OUTPUT([bits64_t], [/* Define to `double\' if <sys/types.h> does not define. */
-@%:@undef bits64_t])
-m4trace:configure.ac:898: -1- AC_DEFINE_TRACE_LITERAL([bits64_t])
-m4trace:configure.ac:898: -1- m4_pattern_allow([^bits64_t$])
-m4trace:configure.ac:898: -1- AH_OUTPUT([bits64_t], [/* Define to `long long\' if <sys/types.h> does not define. */
-@%:@undef bits64_t])
-m4trace:configure.ac:898: -1- AC_DEFINE_TRACE_LITERAL([bits64_t])
-m4trace:configure.ac:898: -1- m4_pattern_allow([^bits64_t$])
-m4trace:configure.ac:898: -1- AH_OUTPUT([bits64_t], [/* Define to `long\' if <sys/types.h> does not define. */
-@%:@undef bits64_t])
-m4trace:configure.ac:898: -1- AC_DEFINE_TRACE_LITERAL([bits64_t])
-m4trace:configure.ac:898: -1- m4_pattern_allow([^bits64_t$])
-m4trace:configure.ac:898: -1- AH_OUTPUT([bits64_t], [/* Define to `double\' if <sys/types.h> does not define. */
-@%:@undef bits64_t])
-m4trace:configure.ac:900: -1- AC_DEFINE_TRACE_LITERAL([ptrdiff_t])
-m4trace:configure.ac:900: -1- m4_pattern_allow([^ptrdiff_t$])
-m4trace:configure.ac:900: -1- AH_OUTPUT([ptrdiff_t], [/* Define to `int\' if <sys/types.h> does not define. */
-@%:@undef ptrdiff_t])
-m4trace:configure.ac:900: -1- AC_DEFINE_TRACE_LITERAL([ptrdiff_t])
-m4trace:configure.ac:900: -1- m4_pattern_allow([^ptrdiff_t$])
-m4trace:configure.ac:900: -1- AH_OUTPUT([ptrdiff_t], [/* Define to `long\' if <sys/types.h> does not define. */
-@%:@undef ptrdiff_t])
-m4trace:configure.ac:900: -1- AC_DEFINE_TRACE_LITERAL([ptrdiff_t])
-m4trace:configure.ac:900: -1- m4_pattern_allow([^ptrdiff_t$])
-m4trace:configure.ac:900: -1- AH_OUTPUT([ptrdiff_t], [/* Define to `long long\' if <sys/types.h> does not define. */
-@%:@undef ptrdiff_t])
-m4trace:configure.ac:900: -1- AC_DEFINE_TRACE_LITERAL([ptrdiff_t])
-m4trace:configure.ac:900: -1- m4_pattern_allow([^ptrdiff_t$])
-m4trace:configure.ac:900: -1- AH_OUTPUT([ptrdiff_t], [/* Define to `int\' if <sys/types.h> does not define. */
-@%:@undef ptrdiff_t])
-m4trace:configure.ac:903: -1- AC_DEFINE_TRACE_LITERAL([STAT_MACROS_BROKEN])
-m4trace:configure.ac:903: -1- m4_pattern_allow([^STAT_MACROS_BROKEN$])
-m4trace:configure.ac:903: -1- AH_OUTPUT([STAT_MACROS_BROKEN], [/* Define to 1 if the `S_IS*\' macros in <sys/stat.h> do not work properly. */
-@%:@undef STAT_MACROS_BROKEN])
-m4trace:configure.ac:908: -1- AC_DEFINE_TRACE_LITERAL([HAVE_HASH_BANG_EXEC])
-m4trace:configure.ac:908: -1- m4_pattern_allow([^HAVE_HASH_BANG_EXEC$])
-m4trace:configure.ac:913: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2688: AC_TRY_LINK is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-../../lib/autoconf/general.m4:2053: AC_CACHE_CHECK is expanded from...
-aclocal.m4:549: BASH_FUNC_LSTAT is expanded from...
-configure.ac:913: the top level])
-m4trace:configure.ac:913: -1- AC_DEFINE_TRACE_LITERAL([HAVE_LSTAT])
-m4trace:configure.ac:913: -1- m4_pattern_allow([^HAVE_LSTAT$])
-m4trace:configure.ac:917: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2765: AC_TRY_RUN is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-aclocal.m4:1920: BASH_FUNC_CTYPE_NONASCII is expanded from...
-configure.ac:917: the top level])
-m4trace:configure.ac:917: -1- AC_DEFINE_TRACE_LITERAL([CTYPE_NON_ASCII])
-m4trace:configure.ac:917: -1- m4_pattern_allow([^CTYPE_NON_ASCII$])
-m4trace:configure.ac:918: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2765: AC_TRY_RUN is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-aclocal.m4:270: BASH_FUNC_DUP2_CLOEXEC_CHECK is expanded from...
-configure.ac:918: the top level])
-m4trace:configure.ac:918: -1- AC_DEFINE_TRACE_LITERAL([DUP2_BROKEN])
-m4trace:configure.ac:918: -1- m4_pattern_allow([^DUP2_BROKEN$])
-m4trace:configure.ac:919: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2765: AC_TRY_RUN is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-aclocal.m4:1235: BASH_SYS_PGRP_SYNC is expanded from...
-configure.ac:919: the top level])
-m4trace:configure.ac:919: -1- AC_DEFINE_TRACE_LITERAL([PGRP_PIPE])
-m4trace:configure.ac:919: -1- m4_pattern_allow([^PGRP_PIPE$])
-m4trace:configure.ac:920: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2688: AC_TRY_LINK is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-aclocal.m4:1195: BASH_SYS_SIGNAL_VINTAGE is expanded from...
-configure.ac:920: the top level])
-m4trace:configure.ac:920: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2688: AC_TRY_LINK is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2662: _AC_LINK_IFELSE is expanded from...
-../../lib/autoconf/general.m4:2679: AC_LINK_IFELSE is expanded from...
-../../lib/autoconf/general.m4:2688: AC_TRY_LINK is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-aclocal.m4:1195: BASH_SYS_SIGNAL_VINTAGE is expanded from...
-configure.ac:920: the top level])
-m4trace:configure.ac:920: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2688: AC_TRY_LINK is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2662: _AC_LINK_IFELSE is expanded from...
-../../lib/autoconf/general.m4:2679: AC_LINK_IFELSE is expanded from...
-../../lib/autoconf/general.m4:2688: AC_TRY_LINK is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2662: _AC_LINK_IFELSE is expanded from...
-../../lib/autoconf/general.m4:2679: AC_LINK_IFELSE is expanded from...
-../../lib/autoconf/general.m4:2688: AC_TRY_LINK is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-aclocal.m4:1195: BASH_SYS_SIGNAL_VINTAGE is expanded from...
-configure.ac:920: the top level])
-m4trace:configure.ac:920: -1- AC_DEFINE_TRACE_LITERAL([HAVE_POSIX_SIGNALS])
-m4trace:configure.ac:920: -1- m4_pattern_allow([^HAVE_POSIX_SIGNALS$])
-m4trace:configure.ac:920: -1- AC_DEFINE_TRACE_LITERAL([HAVE_BSD_SIGNALS])
-m4trace:configure.ac:920: -1- m4_pattern_allow([^HAVE_BSD_SIGNALS$])
-m4trace:configure.ac:920: -1- AC_DEFINE_TRACE_LITERAL([HAVE_USG_SIGHOLD])
-m4trace:configure.ac:920: -1- m4_pattern_allow([^HAVE_USG_SIGHOLD$])
-m4trace:configure.ac:923: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2688: AC_TRY_LINK is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-aclocal.m4:253: BASH_SYS_ERRLIST is expanded from...
-configure.ac:923: the top level])
-m4trace:configure.ac:923: -1- AC_DEFINE_TRACE_LITERAL([HAVE_SYS_ERRLIST])
-m4trace:configure.ac:923: -1- m4_pattern_allow([^HAVE_SYS_ERRLIST$])
-m4trace:configure.ac:924: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2765: AC_TRY_RUN is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-aclocal.m4:211: BASH_SYS_SIGLIST is expanded from...
-configure.ac:924: the top level])
-m4trace:configure.ac:924: -1- AC_DEFINE_TRACE_LITERAL([HAVE_SYS_SIGLIST])
-m4trace:configure.ac:924: -1- m4_pattern_allow([^HAVE_SYS_SIGLIST$])
-m4trace:configure.ac:925: -1- _m4_warn([obsolete], [The macro `AC_TRY_COMPILE' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2615: AC_TRY_COMPILE is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-aclocal.m4:167: BASH_DECL_UNDER_SYS_SIGLIST is expanded from...
-aclocal.m4:184: BASH_UNDER_SYS_SIGLIST is expanded from...
-configure.ac:925: the top level])
-m4trace:configure.ac:925: -1- AC_DEFINE_TRACE_LITERAL([UNDER_SYS_SIGLIST_DECLARED])
-m4trace:configure.ac:925: -1- m4_pattern_allow([^UNDER_SYS_SIGLIST_DECLARED$])
-m4trace:configure.ac:925: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2765: AC_TRY_RUN is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-aclocal.m4:184: BASH_UNDER_SYS_SIGLIST is expanded from...
-configure.ac:925: the top level])
-m4trace:configure.ac:925: -1- AC_DEFINE_TRACE_LITERAL([HAVE_UNDER_SYS_SIGLIST])
-m4trace:configure.ac:925: -1- m4_pattern_allow([^HAVE_UNDER_SYS_SIGLIST$])
-m4trace:configure.ac:928: -1- _m4_warn([obsolete], [The macro `AC_TRY_COMPILE' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2615: AC_TRY_COMPILE is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-aclocal.m4:366: BASH_TYPE_SIGHANDLER is expanded from...
-configure.ac:928: the top level])
-m4trace:configure.ac:928: -1- AC_DEFINE_TRACE_LITERAL([VOID_SIGHANDLER])
-m4trace:configure.ac:928: -1- m4_pattern_allow([^VOID_SIGHANDLER$])
-m4trace:configure.ac:929: -1- AC_DEFINE_TRACE_LITERAL([clock_t])
-m4trace:configure.ac:929: -1- m4_pattern_allow([^clock_t$])
-m4trace:configure.ac:930: -1- AC_DEFINE_TRACE_LITERAL([sigset_t])
-m4trace:configure.ac:930: -1- m4_pattern_allow([^sigset_t$])
-m4trace:configure.ac:931: -1- AC_DEFINE_TRACE_LITERAL([sig_atomic_t])
-m4trace:configure.ac:931: -1- m4_pattern_allow([^sig_atomic_t$])
-m4trace:configure.ac:932: -1- AC_DEFINE_TRACE_LITERAL([HAVE_QUAD_T])
-m4trace:configure.ac:932: -1- m4_pattern_allow([^HAVE_QUAD_T$])
-m4trace:configure.ac:932: -1- AC_DEFINE_TRACE_LITERAL([quad_t])
-m4trace:configure.ac:932: -1- m4_pattern_allow([^quad_t$])
-m4trace:configure.ac:933: -1- AC_DEFINE_TRACE_LITERAL([intmax_t])
-m4trace:configure.ac:933: -1- m4_pattern_allow([^intmax_t$])
-m4trace:configure.ac:934: -1- AC_DEFINE_TRACE_LITERAL([uintmax_t])
-m4trace:configure.ac:934: -1- m4_pattern_allow([^uintmax_t$])
-m4trace:configure.ac:936: -1- AC_DEFINE_TRACE_LITERAL([HAVE_SOCKLEN_T])
-m4trace:configure.ac:936: -1- m4_pattern_allow([^HAVE_SOCKLEN_T$])
-m4trace:configure.ac:936: -1- AC_DEFINE_TRACE_LITERAL([socklen_t])
-m4trace:configure.ac:936: -1- m4_pattern_allow([^socklen_t$])
-m4trace:configure.ac:938: -1- _m4_warn([obsolete], [The macro `AC_TRY_COMPILE' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2615: AC_TRY_COMPILE is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-aclocal.m4:507: BASH_TYPE_RLIMIT is expanded from...
-configure.ac:938: the top level])
-m4trace:configure.ac:938: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2765: AC_TRY_RUN is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2591: _AC_COMPILE_IFELSE is expanded from...
-../../lib/autoconf/general.m4:2607: AC_COMPILE_IFELSE is expanded from...
-../../lib/autoconf/general.m4:2615: AC_TRY_COMPILE is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-aclocal.m4:507: BASH_TYPE_RLIMIT is expanded from...
-configure.ac:938: the top level])
-m4trace:configure.ac:938: -1- AC_DEFINE_TRACE_LITERAL([RLIMTYPE])
-m4trace:configure.ac:938: -1- m4_pattern_allow([^RLIMTYPE$])
-m4trace:configure.ac:938: -1- AC_DEFINE_TRACE_LITERAL([RLIMTYPE])
-m4trace:configure.ac:938: -1- m4_pattern_allow([^RLIMTYPE$])
-m4trace:configure.ac:940: -1- AC_DEFINE_TRACE_LITERAL([SIZEOF_INTMAX_T])
-m4trace:configure.ac:940: -1- m4_pattern_allow([^SIZEOF_INTMAX_T$])
-m4trace:configure.ac:940: -1- AH_OUTPUT([SIZEOF_INTMAX_T], [/* The size of `intmax_t\', as computed by sizeof. */
-@%:@undef SIZEOF_INTMAX_T])
-m4trace:configure.ac:943: -2- AC_DEFINE_TRACE_LITERAL([TERMIOS_LDISC])
-m4trace:configure.ac:943: -2- m4_pattern_allow([^TERMIOS_LDISC$])
-m4trace:configure.ac:944: -2- AC_DEFINE_TRACE_LITERAL([TERMIO_LDISC])
-m4trace:configure.ac:944: -2- m4_pattern_allow([^TERMIO_LDISC$])
-m4trace:configure.ac:945: -1- _m4_warn([obsolete], [The macro `AC_TRY_COMPILE' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2615: AC_TRY_COMPILE is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-aclocal.m4:1042: BASH_STRUCT_DIRENT_D_INO is expanded from...
-configure.ac:945: the top level])
-m4trace:configure.ac:945: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STRUCT_DIRENT_D_INO])
-m4trace:configure.ac:945: -1- m4_pattern_allow([^HAVE_STRUCT_DIRENT_D_INO$])
-m4trace:configure.ac:946: -1- _m4_warn([obsolete], [The macro `AC_TRY_COMPILE' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2615: AC_TRY_COMPILE is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-aclocal.m4:1075: BASH_STRUCT_DIRENT_D_FILENO is expanded from...
-configure.ac:946: the top level])
-m4trace:configure.ac:946: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STRUCT_DIRENT_D_FILENO])
-m4trace:configure.ac:946: -1- m4_pattern_allow([^HAVE_STRUCT_DIRENT_D_FILENO$])
-m4trace:configure.ac:947: -1- _m4_warn([obsolete], [The macro `AC_TRY_COMPILE' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2615: AC_TRY_COMPILE is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-aclocal.m4:1108: BASH_STRUCT_DIRENT_D_NAMLEN is expanded from...
-configure.ac:947: the top level])
-m4trace:configure.ac:947: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STRUCT_DIRENT_D_NAMLEN])
-m4trace:configure.ac:947: -1- m4_pattern_allow([^HAVE_STRUCT_DIRENT_D_NAMLEN$])
-m4trace:configure.ac:948: -1- _m4_warn([obsolete], [The macro `AC_TRY_COMPILE' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2615: AC_TRY_COMPILE is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-aclocal.m4:1173: BASH_STRUCT_WINSIZE is expanded from...
-configure.ac:948: the top level])
-m4trace:configure.ac:948: -1- _m4_warn([obsolete], [The macro `AC_TRY_COMPILE' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2615: AC_TRY_COMPILE is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2591: _AC_COMPILE_IFELSE is expanded from...
-../../lib/autoconf/general.m4:2607: AC_COMPILE_IFELSE is expanded from...
-../../lib/autoconf/general.m4:2615: AC_TRY_COMPILE is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-aclocal.m4:1173: BASH_STRUCT_WINSIZE is expanded from...
-configure.ac:948: the top level])
-m4trace:configure.ac:948: -1- AC_DEFINE_TRACE_LITERAL([STRUCT_WINSIZE_IN_SYS_IOCTL])
-m4trace:configure.ac:948: -1- m4_pattern_allow([^STRUCT_WINSIZE_IN_SYS_IOCTL$])
-m4trace:configure.ac:948: -1- AC_DEFINE_TRACE_LITERAL([STRUCT_WINSIZE_IN_TERMIOS])
-m4trace:configure.ac:948: -1- m4_pattern_allow([^STRUCT_WINSIZE_IN_TERMIOS$])
-m4trace:configure.ac:949: -1- AC_DEFINE_TRACE_LITERAL([HAVE_TIMEVAL])
-m4trace:configure.ac:949: -1- m4_pattern_allow([^HAVE_TIMEVAL$])
-m4trace:configure.ac:950: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STRUCT_STAT_ST_BLOCKS])
-m4trace:configure.ac:950: -1- m4_pattern_allow([^HAVE_STRUCT_STAT_ST_BLOCKS$])
-m4trace:configure.ac:950: -1- AH_OUTPUT([HAVE_STRUCT_STAT_ST_BLOCKS], [/* Define to 1 if `st_blocks\' is a member of `struct stat\'. */
-@%:@undef HAVE_STRUCT_STAT_ST_BLOCKS])
-m4trace:configure.ac:951: -1- AC_DEFINE_TRACE_LITERAL([TM_IN_SYS_TIME])
-m4trace:configure.ac:951: -1- m4_pattern_allow([^TM_IN_SYS_TIME$])
-m4trace:configure.ac:951: -1- AH_OUTPUT([TM_IN_SYS_TIME], [/* Define to 1 if your <sys/time.h> declares `struct tm\'. */
-@%:@undef TM_IN_SYS_TIME])
-m4trace:configure.ac:952: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STRUCT_TM_TM_ZONE])
-m4trace:configure.ac:952: -1- m4_pattern_allow([^HAVE_STRUCT_TM_TM_ZONE$])
-m4trace:configure.ac:952: -1- AH_OUTPUT([HAVE_STRUCT_TM_TM_ZONE], [/* Define to 1 if `tm_zone\' is a member of `struct tm\'. */
-@%:@undef HAVE_STRUCT_TM_TM_ZONE])
-m4trace:configure.ac:952: -1- AC_DEFINE_TRACE_LITERAL([HAVE_TM_ZONE])
-m4trace:configure.ac:952: -1- m4_pattern_allow([^HAVE_TM_ZONE$])
-m4trace:configure.ac:952: -1- AH_OUTPUT([HAVE_TM_ZONE], [/* Define to 1 if your `struct tm\' has `tm_zone\'. Deprecated, use
-   `HAVE_STRUCT_TM_TM_ZONE\' instead. */
-@%:@undef HAVE_TM_ZONE])
-m4trace:configure.ac:952: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DECL_TZNAME])
-m4trace:configure.ac:952: -1- m4_pattern_allow([^HAVE_DECL_TZNAME$])
-m4trace:configure.ac:952: -1- AH_OUTPUT([HAVE_DECL_TZNAME], [/* Define to 1 if you have the declaration of `tzname\', and to 0 if you don\'t.
-   */
-@%:@undef HAVE_DECL_TZNAME])
-m4trace:configure.ac:952: -1- AC_DEFINE_TRACE_LITERAL([HAVE_TZNAME])
-m4trace:configure.ac:952: -1- m4_pattern_allow([^HAVE_TZNAME$])
-m4trace:configure.ac:952: -1- AH_OUTPUT([HAVE_TZNAME], [/* Define to 1 if you don\'t have `tm_zone\' but do have the external array
-   `tzname\'. */
-@%:@undef HAVE_TZNAME])
-m4trace:configure.ac:953: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STRUCT_TIMEZONE])
-m4trace:configure.ac:953: -1- m4_pattern_allow([^HAVE_STRUCT_TIMEZONE$])
-m4trace:configure.ac:955: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2765: AC_TRY_RUN is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-aclocal.m4:4149: BASH_STRUCT_WEXITSTATUS_OFFSET is expanded from...
-configure.ac:955: the top level])
-m4trace:configure.ac:955: -1- AC_DEFINE_TRACE_LITERAL([WEXITSTATUS_OFFSET])
-m4trace:configure.ac:955: -1- m4_pattern_allow([^WEXITSTATUS_OFFSET$])
-m4trace:configure.ac:955: -1- AH_OUTPUT([WEXITSTATUS_OFFSET], [/* Offset of exit status in wait status word */
-@%:@undef WEXITSTATUS_OFFSET])
-m4trace:configure.ac:957: -1- AH_OUTPUT([HAVE_SYS_TIME_H], [/* Define to 1 if you have the <sys/time.h> header file. */
-@%:@undef HAVE_SYS_TIME_H])
-m4trace:configure.ac:957: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STRUCT_TIMESPEC])
-m4trace:configure.ac:957: -1- m4_pattern_allow([^HAVE_STRUCT_TIMESPEC$])
-m4trace:configure.ac:957: -1- AC_DEFINE_TRACE_LITERAL([TIME_H_DEFINES_STRUCT_TIMESPEC])
-m4trace:configure.ac:957: -1- m4_pattern_allow([^TIME_H_DEFINES_STRUCT_TIMESPEC$])
-m4trace:configure.ac:957: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STRUCT_TIMESPEC])
-m4trace:configure.ac:957: -1- m4_pattern_allow([^HAVE_STRUCT_TIMESPEC$])
-m4trace:configure.ac:957: -1- AC_DEFINE_TRACE_LITERAL([SYS_TIME_H_DEFINES_STRUCT_TIMESPEC])
-m4trace:configure.ac:957: -1- m4_pattern_allow([^SYS_TIME_H_DEFINES_STRUCT_TIMESPEC$])
-m4trace:configure.ac:957: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STRUCT_TIMESPEC])
-m4trace:configure.ac:957: -1- m4_pattern_allow([^HAVE_STRUCT_TIMESPEC$])
-m4trace:configure.ac:957: -1- AC_DEFINE_TRACE_LITERAL([PTHREAD_H_DEFINES_STRUCT_TIMESPEC])
-m4trace:configure.ac:957: -1- m4_pattern_allow([^PTHREAD_H_DEFINES_STRUCT_TIMESPEC$])
-m4trace:configure.ac:957: -1- AC_SUBST([TIME_H_DEFINES_STRUCT_TIMESPEC])
-m4trace:configure.ac:957: -1- AC_SUBST_TRACE([TIME_H_DEFINES_STRUCT_TIMESPEC])
-m4trace:configure.ac:957: -1- m4_pattern_allow([^TIME_H_DEFINES_STRUCT_TIMESPEC$])
-m4trace:configure.ac:957: -1- AC_SUBST([SYS_TIME_H_DEFINES_STRUCT_TIMESPEC])
-m4trace:configure.ac:957: -1- AC_SUBST_TRACE([SYS_TIME_H_DEFINES_STRUCT_TIMESPEC])
-m4trace:configure.ac:957: -1- m4_pattern_allow([^SYS_TIME_H_DEFINES_STRUCT_TIMESPEC$])
-m4trace:configure.ac:957: -1- AC_SUBST([PTHREAD_H_DEFINES_STRUCT_TIMESPEC])
-m4trace:configure.ac:957: -1- AC_SUBST_TRACE([PTHREAD_H_DEFINES_STRUCT_TIMESPEC])
-m4trace:configure.ac:957: -1- m4_pattern_allow([^PTHREAD_H_DEFINES_STRUCT_TIMESPEC$])
-m4trace:configure.ac:958: -1- AH_OUTPUT([HAVE_SYS_TIME_H], [/* Define to 1 if you have the <sys/time.h> header file. */
-@%:@undef HAVE_SYS_TIME_H])
-m4trace:configure.ac:958: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STRUCT_STAT_ST_ATIM_TV_NSEC])
-m4trace:configure.ac:958: -1- m4_pattern_allow([^HAVE_STRUCT_STAT_ST_ATIM_TV_NSEC$])
-m4trace:configure.ac:958: -1- AH_OUTPUT([HAVE_STRUCT_STAT_ST_ATIM_TV_NSEC], [/* Define to 1 if `st_atim.tv_nsec\' is a member of `struct stat\'. */
-@%:@undef HAVE_STRUCT_STAT_ST_ATIM_TV_NSEC])
-m4trace:configure.ac:958: -1- AC_DEFINE_TRACE_LITERAL([TYPEOF_STRUCT_STAT_ST_ATIM_IS_STRUCT_TIMESPEC])
-m4trace:configure.ac:958: -1- m4_pattern_allow([^TYPEOF_STRUCT_STAT_ST_ATIM_IS_STRUCT_TIMESPEC$])
-m4trace:configure.ac:958: -1- AH_OUTPUT([TYPEOF_STRUCT_STAT_ST_ATIM_IS_STRUCT_TIMESPEC], [/* Define to 1 if the type of the st_atim member of a struct stat is struct
-   timespec. */
-@%:@undef TYPEOF_STRUCT_STAT_ST_ATIM_IS_STRUCT_TIMESPEC])
-m4trace:configure.ac:958: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STRUCT_STAT_ST_ATIMESPEC_TV_NSEC])
-m4trace:configure.ac:958: -1- m4_pattern_allow([^HAVE_STRUCT_STAT_ST_ATIMESPEC_TV_NSEC$])
-m4trace:configure.ac:958: -1- AH_OUTPUT([HAVE_STRUCT_STAT_ST_ATIMESPEC_TV_NSEC], [/* Define to 1 if `st_atimespec.tv_nsec\' is a member of `struct stat\'. */
-@%:@undef HAVE_STRUCT_STAT_ST_ATIMESPEC_TV_NSEC])
-m4trace:configure.ac:958: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STRUCT_STAT_ST_ATIMENSEC])
-m4trace:configure.ac:958: -1- m4_pattern_allow([^HAVE_STRUCT_STAT_ST_ATIMENSEC$])
-m4trace:configure.ac:958: -1- AH_OUTPUT([HAVE_STRUCT_STAT_ST_ATIMENSEC], [/* Define to 1 if `st_atimensec\' is a member of `struct stat\'. */
-@%:@undef HAVE_STRUCT_STAT_ST_ATIMENSEC])
-m4trace:configure.ac:958: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STRUCT_STAT_ST_ATIM_ST__TIM_TV_NSEC])
-m4trace:configure.ac:958: -1- m4_pattern_allow([^HAVE_STRUCT_STAT_ST_ATIM_ST__TIM_TV_NSEC$])
-m4trace:configure.ac:958: -1- AH_OUTPUT([HAVE_STRUCT_STAT_ST_ATIM_ST__TIM_TV_NSEC], [/* Define to 1 if `st_atim.st__tim.tv_nsec\' is a member of `struct stat\'. */
-@%:@undef HAVE_STRUCT_STAT_ST_ATIM_ST__TIM_TV_NSEC])
-m4trace:configure.ac:961: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2688: AC_TRY_LINK is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-aclocal.m4:299: BASH_FUNC_STRSIGNAL is expanded from...
-configure.ac:961: the top level])
-m4trace:configure.ac:961: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STRSIGNAL])
-m4trace:configure.ac:961: -1- m4_pattern_allow([^HAVE_STRSIGNAL$])
-m4trace:configure.ac:962: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2765: AC_TRY_RUN is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-aclocal.m4:313: BASH_FUNC_OPENDIR_CHECK is expanded from...
-configure.ac:962: the top level])
-m4trace:configure.ac:962: -1- AC_DEFINE_TRACE_LITERAL([OPENDIR_NOT_ROBUST])
-m4trace:configure.ac:962: -1- m4_pattern_allow([^OPENDIR_NOT_ROBUST$])
-m4trace:configure.ac:963: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2765: AC_TRY_RUN is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-aclocal.m4:683: BASH_FUNC_ULIMIT_MAXFDS is expanded from...
-configure.ac:963: the top level])
-m4trace:configure.ac:963: -1- AC_DEFINE_TRACE_LITERAL([ULIMIT_MAXFDS])
-m4trace:configure.ac:963: -1- m4_pattern_allow([^ULIMIT_MAXFDS$])
-m4trace:configure.ac:964: -1- AH_OUTPUT([HAVE_FPURGE], [/* Define to 1 if you have the `fpurge\' function. */
-@%:@undef HAVE_FPURGE])
-m4trace:configure.ac:964: -1- AH_OUTPUT([HAVE___FPURGE], [/* Define to 1 if you have the `__fpurge\' function. */
-@%:@undef HAVE___FPURGE])
-m4trace:configure.ac:964: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DECL_FPURGE])
-m4trace:configure.ac:964: -1- m4_pattern_allow([^HAVE_DECL_FPURGE$])
-m4trace:configure.ac:964: -1- AH_OUTPUT([HAVE_DECL_FPURGE], [/* Define to 1 if you have the declaration of `fpurge\', and to 0 if you don\'t.
-   */
-@%:@undef HAVE_DECL_FPURGE])
-m4trace:configure.ac:965: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2765: AC_TRY_RUN is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-aclocal.m4:579: BASH_FUNC_GETENV is expanded from...
-configure.ac:965: the top level])
-m4trace:configure.ac:965: -1- AC_DEFINE_TRACE_LITERAL([CAN_REDEFINE_GETENV])
-m4trace:configure.ac:965: -1- m4_pattern_allow([^CAN_REDEFINE_GETENV$])
-m4trace:configure.ac:967: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2765: AC_TRY_RUN is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-aclocal.m4:702: BASH_FUNC_GETCWD is expanded from...
-configure.ac:967: the top level])
-m4trace:configure.ac:967: -1- AC_DEFINE_TRACE_LITERAL([GETCWD_BROKEN])
-m4trace:configure.ac:967: -1- m4_pattern_allow([^GETCWD_BROKEN$])
-m4trace:configure.ac:967: -1- AC_SUBST([LIB@&t@OBJS], ["$LIB@&t@OBJS getcwd.$ac_objext"])
-m4trace:configure.ac:967: -1- AC_SUBST_TRACE([LIB@&t@OBJS])
-m4trace:configure.ac:967: -1- m4_pattern_allow([^LIB@&t@OBJS$])
-m4trace:configure.ac:967: -1- AC_LIBSOURCE([getcwd.c])
-m4trace:configure.ac:969: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2765: AC_TRY_RUN is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-aclocal.m4:778: BASH_FUNC_POSIX_SETJMP is expanded from...
-configure.ac:969: the top level])
-m4trace:configure.ac:969: -1- AC_DEFINE_TRACE_LITERAL([HAVE_POSIX_SIGSETJMP])
-m4trace:configure.ac:969: -1- m4_pattern_allow([^HAVE_POSIX_SIGSETJMP$])
-m4trace:configure.ac:970: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2765: AC_TRY_RUN is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-aclocal.m4:829: BASH_FUNC_STRCOLL is expanded from...
-configure.ac:970: the top level])
-m4trace:configure.ac:970: -1- AC_DEFINE_TRACE_LITERAL([STRCOLL_BROKEN])
-m4trace:configure.ac:970: -1- m4_pattern_allow([^STRCOLL_BROKEN$])
-m4trace:configure.ac:971: -1- AH_OUTPUT([HAVE_SNPRINTF], [/* Define to 1 if you have the `snprintf\' function. */
-@%:@undef HAVE_SNPRINTF])
-m4trace:configure.ac:971: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2765: AC_TRY_RUN is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-../../lib/autoconf/general.m4:2053: AC_CACHE_CHECK is expanded from...
-aclocal.m4:4065: BASH_FUNC_SNPRINTF is expanded from...
-configure.ac:971: the top level])
-m4trace:configure.ac:971: -1- AC_DEFINE_TRACE_LITERAL([HAVE_SNPRINTF])
-m4trace:configure.ac:971: -1- m4_pattern_allow([^HAVE_SNPRINTF$])
-m4trace:configure.ac:971: -1- AH_OUTPUT([HAVE_SNPRINTF], [/* Define if you have a standard-conformant snprintf function. */
-@%:@undef HAVE_SNPRINTF])
-m4trace:configure.ac:972: -1- AH_OUTPUT([HAVE_VSNPRINTF], [/* Define to 1 if you have the `vsnprintf\' function. */
-@%:@undef HAVE_VSNPRINTF])
-m4trace:configure.ac:972: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2765: AC_TRY_RUN is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-../../lib/autoconf/general.m4:2053: AC_CACHE_CHECK is expanded from...
-aclocal.m4:4093: BASH_FUNC_VSNPRINTF is expanded from...
-configure.ac:972: the top level])
-m4trace:configure.ac:972: -1- AC_DEFINE_TRACE_LITERAL([HAVE_VSNPRINTF])
-m4trace:configure.ac:972: -1- m4_pattern_allow([^HAVE_VSNPRINTF$])
-m4trace:configure.ac:972: -1- AH_OUTPUT([HAVE_VSNPRINTF], [/* Define if you have a standard-conformant vsnprintf function. */
-@%:@undef HAVE_VSNPRINTF])
-m4trace:configure.ac:978: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2688: AC_TRY_LINK is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-../../lib/autoconf/general.m4:2053: AC_CACHE_CHECK is expanded from...
-aclocal.m4:624: BASH_FUNC_STD_PUTENV is expanded from...
-configure.ac:978: the top level])
-m4trace:configure.ac:978: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STD_PUTENV])
-m4trace:configure.ac:978: -1- m4_pattern_allow([^HAVE_STD_PUTENV$])
-m4trace:configure.ac:980: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STD_PUTENV])
-m4trace:configure.ac:980: -1- m4_pattern_allow([^HAVE_STD_PUTENV$])
-m4trace:configure.ac:983: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2688: AC_TRY_LINK is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-../../lib/autoconf/general.m4:2053: AC_CACHE_CHECK is expanded from...
-aclocal.m4:654: BASH_FUNC_STD_UNSETENV is expanded from...
-configure.ac:983: the top level])
-m4trace:configure.ac:983: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STD_UNSETENV])
-m4trace:configure.ac:983: -1- m4_pattern_allow([^HAVE_STD_UNSETENV$])
-m4trace:configure.ac:985: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STD_UNSETENV])
-m4trace:configure.ac:985: -1- m4_pattern_allow([^HAVE_STD_UNSETENV$])
-m4trace:configure.ac:988: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2765: AC_TRY_RUN is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-aclocal.m4:878: BASH_FUNC_PRINTF_A_FORMAT is expanded from...
-configure.ac:988: the top level])
-m4trace:configure.ac:988: -1- AC_DEFINE_TRACE_LITERAL([HAVE_PRINTF_A_FORMAT])
-m4trace:configure.ac:988: -1- m4_pattern_allow([^HAVE_PRINTF_A_FORMAT$])
-m4trace:configure.ac:991: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2765: AC_TRY_RUN is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-aclocal.m4:1297: BASH_SYS_REINSTALL_SIGHANDLERS is expanded from...
-configure.ac:991: the top level])
-m4trace:configure.ac:991: -1- AC_DEFINE_TRACE_LITERAL([MUST_REINSTALL_SIGHANDLERS])
-m4trace:configure.ac:991: -1- m4_pattern_allow([^MUST_REINSTALL_SIGHANDLERS$])
-m4trace:configure.ac:992: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2765: AC_TRY_RUN is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-aclocal.m4:1356: BASH_SYS_JOB_CONTROL_MISSING is expanded from...
-configure.ac:992: the top level])
-m4trace:configure.ac:992: -1- AC_DEFINE_TRACE_LITERAL([JOB_CONTROL_MISSING])
-m4trace:configure.ac:992: -1- m4_pattern_allow([^JOB_CONTROL_MISSING$])
-m4trace:configure.ac:993: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2765: AC_TRY_RUN is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-aclocal.m4:1415: BASH_SYS_NAMED_PIPES is expanded from...
-configure.ac:993: the top level])
-m4trace:configure.ac:993: -1- AC_DEFINE_TRACE_LITERAL([NAMED_PIPES_MISSING])
-m4trace:configure.ac:993: -1- m4_pattern_allow([^NAMED_PIPES_MISSING$])
-m4trace:configure.ac:996: -1- AC_DEFINE_TRACE_LITERAL([GWINSZ_IN_SYS_IOCTL])
-m4trace:configure.ac:996: -1- m4_pattern_allow([^GWINSZ_IN_SYS_IOCTL$])
-m4trace:configure.ac:996: -1- AH_OUTPUT([GWINSZ_IN_SYS_IOCTL], [/* Define to 1 if `TIOCGWINSZ\' requires <sys/ioctl.h>. */
-@%:@undef GWINSZ_IN_SYS_IOCTL])
-m4trace:configure.ac:997: -1- _m4_warn([obsolete], [The macro `AC_TRY_COMPILE' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2615: AC_TRY_COMPILE is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-aclocal.m4:1496: BASH_HAVE_TIOCSTAT is expanded from...
-configure.ac:997: the top level])
-m4trace:configure.ac:997: -1- AC_DEFINE_TRACE_LITERAL([TIOCSTAT_IN_SYS_IOCTL])
-m4trace:configure.ac:997: -1- m4_pattern_allow([^TIOCSTAT_IN_SYS_IOCTL$])
-m4trace:configure.ac:998: -1- _m4_warn([obsolete], [The macro `AC_TRY_COMPILE' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2615: AC_TRY_COMPILE is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-aclocal.m4:1508: BASH_HAVE_FIONREAD is expanded from...
-configure.ac:998: the top level])
-m4trace:configure.ac:998: -1- AC_DEFINE_TRACE_LITERAL([FIONREAD_IN_SYS_IOCTL])
-m4trace:configure.ac:998: -1- m4_pattern_allow([^FIONREAD_IN_SYS_IOCTL$])
-m4trace:configure.ac:1000: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2765: AC_TRY_RUN is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-aclocal.m4:1964: BASH_CHECK_WCONTINUED is expanded from...
-configure.ac:1000: the top level])
-m4trace:configure.ac:1000: -1- AC_DEFINE_TRACE_LITERAL([WCONTINUED_BROKEN])
-m4trace:configure.ac:1000: -1- m4_pattern_allow([^WCONTINUED_BROKEN$])
-m4trace:configure.ac:1003: -1- _m4_warn([obsolete], [The macro `AC_TRY_COMPILE' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2615: AC_TRY_COMPILE is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-aclocal.m4:1526: BASH_CHECK_SPEED_T is expanded from...
-configure.ac:1003: the top level])
-m4trace:configure.ac:1003: -1- AC_DEFINE_TRACE_LITERAL([SPEED_T_IN_SYS_TYPES])
-m4trace:configure.ac:1003: -1- m4_pattern_allow([^SPEED_T_IN_SYS_TYPES$])
-m4trace:configure.ac:1004: -1- AC_DEFINE_TRACE_LITERAL([HAVE_GETPW_DECLS])
-m4trace:configure.ac:1004: -1- m4_pattern_allow([^HAVE_GETPW_DECLS$])
-m4trace:configure.ac:1005: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2765: AC_TRY_RUN is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-aclocal.m4:1653: BASH_CHECK_RTSIGS is expanded from...
-configure.ac:1005: the top level])
-m4trace:configure.ac:1005: -1- AC_DEFINE_TRACE_LITERAL([UNUSABLE_RT_SIGNALS])
-m4trace:configure.ac:1005: -1- m4_pattern_allow([^UNUSABLE_RT_SIGNALS$])
-m4trace:configure.ac:1006: -1- AC_SUBST([SIGLIST_O])
-m4trace:configure.ac:1006: -1- AC_SUBST_TRACE([SIGLIST_O])
-m4trace:configure.ac:1006: -1- m4_pattern_allow([^SIGLIST_O$])
-m4trace:configure.ac:1010: -1- _m4_warn([obsolete], [The macro `AC_TRY_COMPILE' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2615: AC_TRY_COMPILE is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-aclocal.m4:1605: BASH_CHECK_KERNEL_RLIMIT is expanded from...
-configure.ac:1010: the top level])
-m4trace:configure.ac:1010: -1- _m4_warn([obsolete], [The macro `AC_TRY_COMPILE' is obsolete.
-You should run autoupdate.], [../../lib/autoconf/general.m4:2615: AC_TRY_COMPILE is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2591: _AC_COMPILE_IFELSE is expanded from...
-../../lib/autoconf/general.m4:2607: AC_COMPILE_IFELSE is expanded from...
-../../lib/autoconf/general.m4:2615: AC_TRY_COMPILE is expanded from...
-../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
-../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from...
-aclocal.m4:1605: BASH_CHECK_KERNEL_RLIMIT is expanded from...
-configure.ac:1010: the top level])
-m4trace:configure.ac:1010: -1- AC_DEFINE_TRACE_LITERAL([RLIMIT_NEEDS_KERNEL])
-m4trace:configure.ac:1010: -1- m4_pattern_allow([^RLIMIT_NEEDS_KERNEL$])
-m4trace:configure.ac:1020: -1- AC_SUBST([TERMCAP_LIB])
-m4trace:configure.ac:1020: -1- AC_SUBST_TRACE([TERMCAP_LIB])
-m4trace:configure.ac:1020: -1- m4_pattern_allow([^TERMCAP_LIB$])
-m4trace:configure.ac:1021: -1- AC_SUBST([TERMCAP_DEP])
-m4trace:configure.ac:1021: -1- AC_SUBST_TRACE([TERMCAP_DEP])
-m4trace:configure.ac:1021: -1- m4_pattern_allow([^TERMCAP_DEP$])
-m4trace:configure.ac:1023: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DEV_FD])
-m4trace:configure.ac:1023: -1- m4_pattern_allow([^HAVE_DEV_FD$])
-m4trace:configure.ac:1023: -1- AC_DEFINE_TRACE_LITERAL([DEV_FD_PREFIX])
-m4trace:configure.ac:1023: -1- m4_pattern_allow([^DEV_FD_PREFIX$])
-m4trace:configure.ac:1023: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DEV_FD])
-m4trace:configure.ac:1023: -1- m4_pattern_allow([^HAVE_DEV_FD$])
-m4trace:configure.ac:1023: -1- AC_DEFINE_TRACE_LITERAL([DEV_FD_PREFIX])
-m4trace:configure.ac:1023: -1- m4_pattern_allow([^DEV_FD_PREFIX$])
-m4trace:configure.ac:1024: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DEV_STDIN])
-m4trace:configure.ac:1024: -1- m4_pattern_allow([^HAVE_DEV_STDIN$])
-m4trace:configure.ac:1025: -1- AC_DEFINE_TRACE_LITERAL([DEFAULT_MAIL_DIRECTORY])
-m4trace:configure.ac:1025: -1- m4_pattern_allow([^DEFAULT_MAIL_DIRECTORY$])
-m4trace:configure.ac:1032: -1- AC_DEFINE_TRACE_LITERAL([JOB_CONTROL])
-m4trace:configure.ac:1032: -1- m4_pattern_allow([^JOB_CONTROL$])
-m4trace:configure.ac:1038: -1- AC_SUBST([JOBS_O])
-m4trace:configure.ac:1038: -1- AC_SUBST_TRACE([JOBS_O])
-m4trace:configure.ac:1038: -1- m4_pattern_allow([^JOBS_O$])
-m4trace:configure.ac:1051: -1- AC_DEFINE_TRACE_LITERAL([SVR4_2])
-m4trace:configure.ac:1051: -1- m4_pattern_allow([^SVR4_2$])
-m4trace:configure.ac:1052: -1- AC_DEFINE_TRACE_LITERAL([SVR4])
-m4trace:configure.ac:1052: -1- m4_pattern_allow([^SVR4$])
-m4trace:configure.ac:1053: -1- AC_DEFINE_TRACE_LITERAL([SVR4])
-m4trace:configure.ac:1053: -1- m4_pattern_allow([^SVR4$])
-m4trace:configure.ac:1054: -1- AC_DEFINE_TRACE_LITERAL([SVR5])
-m4trace:configure.ac:1054: -1- m4_pattern_allow([^SVR5$])
-m4trace:configure.ac:1073: -1- AC_DEFINE_TRACE_LITERAL([PGRP_PIPE])
-m4trace:configure.ac:1073: -1- m4_pattern_allow([^PGRP_PIPE$])
-m4trace:configure.ac:1121: -1- AC_SUBST([SHOBJ_CC])
-m4trace:configure.ac:1121: -1- AC_SUBST_TRACE([SHOBJ_CC])
-m4trace:configure.ac:1121: -1- m4_pattern_allow([^SHOBJ_CC$])
-m4trace:configure.ac:1122: -1- AC_SUBST([SHOBJ_CFLAGS])
-m4trace:configure.ac:1122: -1- AC_SUBST_TRACE([SHOBJ_CFLAGS])
-m4trace:configure.ac:1122: -1- m4_pattern_allow([^SHOBJ_CFLAGS$])
-m4trace:configure.ac:1123: -1- AC_SUBST([SHOBJ_LD])
-m4trace:configure.ac:1123: -1- AC_SUBST_TRACE([SHOBJ_LD])
-m4trace:configure.ac:1123: -1- m4_pattern_allow([^SHOBJ_LD$])
-m4trace:configure.ac:1124: -1- AC_SUBST([SHOBJ_LDFLAGS])
-m4trace:configure.ac:1124: -1- AC_SUBST_TRACE([SHOBJ_LDFLAGS])
-m4trace:configure.ac:1124: -1- m4_pattern_allow([^SHOBJ_LDFLAGS$])
-m4trace:configure.ac:1125: -1- AC_SUBST([SHOBJ_XLDFLAGS])
-m4trace:configure.ac:1125: -1- AC_SUBST_TRACE([SHOBJ_XLDFLAGS])
-m4trace:configure.ac:1125: -1- m4_pattern_allow([^SHOBJ_XLDFLAGS$])
-m4trace:configure.ac:1126: -1- AC_SUBST([SHOBJ_LIBS])
-m4trace:configure.ac:1126: -1- AC_SUBST_TRACE([SHOBJ_LIBS])
-m4trace:configure.ac:1126: -1- m4_pattern_allow([^SHOBJ_LIBS$])
-m4trace:configure.ac:1127: -1- AC_SUBST([SHOBJ_STATUS])
-m4trace:configure.ac:1127: -1- AC_SUBST_TRACE([SHOBJ_STATUS])
-m4trace:configure.ac:1127: -1- m4_pattern_allow([^SHOBJ_STATUS$])
-m4trace:configure.ac:1159: -1- AC_SUBST([PROFILE_FLAGS])
-m4trace:configure.ac:1159: -1- AC_SUBST_TRACE([PROFILE_FLAGS])
-m4trace:configure.ac:1159: -1- m4_pattern_allow([^PROFILE_FLAGS$])
-m4trace:configure.ac:1161: -1- AC_SUBST([incdir])
-m4trace:configure.ac:1161: -1- AC_SUBST_TRACE([incdir])
-m4trace:configure.ac:1161: -1- m4_pattern_allow([^incdir$])
-m4trace:configure.ac:1162: -1- AC_SUBST([BUILD_DIR])
-m4trace:configure.ac:1162: -1- AC_SUBST_TRACE([BUILD_DIR])
-m4trace:configure.ac:1162: -1- m4_pattern_allow([^BUILD_DIR$])
-m4trace:configure.ac:1165: -1- AC_SUBST([datarootdir])
-m4trace:configure.ac:1165: -1- AC_SUBST_TRACE([datarootdir])
-m4trace:configure.ac:1165: -1- m4_pattern_allow([^datarootdir$])
-m4trace:configure.ac:1166: -1- AC_SUBST([localedir])
-m4trace:configure.ac:1166: -1- AC_SUBST_TRACE([localedir])
-m4trace:configure.ac:1166: -1- m4_pattern_allow([^localedir$])
-m4trace:configure.ac:1168: -1- AC_SUBST([YACC])
-m4trace:configure.ac:1168: -1- AC_SUBST_TRACE([YACC])
-m4trace:configure.ac:1168: -1- m4_pattern_allow([^YACC$])
-m4trace:configure.ac:1169: -1- AC_SUBST([AR])
-m4trace:configure.ac:1169: -1- AC_SUBST_TRACE([AR])
-m4trace:configure.ac:1169: -1- m4_pattern_allow([^AR$])
-m4trace:configure.ac:1170: -1- AC_SUBST([ARFLAGS])
-m4trace:configure.ac:1170: -1- AC_SUBST_TRACE([ARFLAGS])
-m4trace:configure.ac:1170: -1- m4_pattern_allow([^ARFLAGS$])
-m4trace:configure.ac:1172: -1- AC_SUBST([BASHVERS])
-m4trace:configure.ac:1172: -1- AC_SUBST_TRACE([BASHVERS])
-m4trace:configure.ac:1172: -1- m4_pattern_allow([^BASHVERS$])
-m4trace:configure.ac:1173: -1- AC_SUBST([RELSTATUS])
-m4trace:configure.ac:1173: -1- AC_SUBST_TRACE([RELSTATUS])
-m4trace:configure.ac:1173: -1- m4_pattern_allow([^RELSTATUS$])
-m4trace:configure.ac:1174: -1- AC_SUBST([DEBUG])
-m4trace:configure.ac:1174: -1- AC_SUBST_TRACE([DEBUG])
-m4trace:configure.ac:1174: -1- m4_pattern_allow([^DEBUG$])
-m4trace:configure.ac:1175: -1- AC_SUBST([MALLOC_DEBUG])
-m4trace:configure.ac:1175: -1- AC_SUBST_TRACE([MALLOC_DEBUG])
-m4trace:configure.ac:1175: -1- m4_pattern_allow([^MALLOC_DEBUG$])
-m4trace:configure.ac:1177: -1- AC_SUBST([host_cpu])
-m4trace:configure.ac:1177: -1- AC_SUBST_TRACE([host_cpu])
-m4trace:configure.ac:1177: -1- m4_pattern_allow([^host_cpu$])
-m4trace:configure.ac:1178: -1- AC_SUBST([host_vendor])
-m4trace:configure.ac:1178: -1- AC_SUBST_TRACE([host_vendor])
-m4trace:configure.ac:1178: -1- m4_pattern_allow([^host_vendor$])
-m4trace:configure.ac:1179: -1- AC_SUBST([host_os])
-m4trace:configure.ac:1179: -1- AC_SUBST_TRACE([host_os])
-m4trace:configure.ac:1179: -1- m4_pattern_allow([^host_os$])
-m4trace:configure.ac:1181: -1- AC_SUBST([LOCAL_LIBS])
-m4trace:configure.ac:1181: -1- AC_SUBST_TRACE([LOCAL_LIBS])
-m4trace:configure.ac:1181: -1- m4_pattern_allow([^LOCAL_LIBS$])
-m4trace:configure.ac:1182: -1- AC_SUBST([LOCAL_CFLAGS])
-m4trace:configure.ac:1182: -1- AC_SUBST_TRACE([LOCAL_CFLAGS])
-m4trace:configure.ac:1182: -1- m4_pattern_allow([^LOCAL_CFLAGS$])
-m4trace:configure.ac:1183: -1- AC_SUBST([LOCAL_LDFLAGS])
-m4trace:configure.ac:1183: -1- AC_SUBST_TRACE([LOCAL_LDFLAGS])
-m4trace:configure.ac:1183: -1- m4_pattern_allow([^LOCAL_LDFLAGS$])
-m4trace:configure.ac:1184: -1- AC_SUBST([LOCAL_DEFS])
-m4trace:configure.ac:1184: -1- AC_SUBST_TRACE([LOCAL_DEFS])
-m4trace:configure.ac:1184: -1- m4_pattern_allow([^LOCAL_DEFS$])
-m4trace:configure.ac:1189: -1- AC_CONFIG_FILES([Makefile builtins/Makefile lib/readline/Makefile lib/glob/Makefile \
-         lib/intl/Makefile \
-         lib/malloc/Makefile lib/sh/Makefile lib/termcap/Makefile \
-         lib/tilde/Makefile doc/Makefile support/Makefile po/Makefile.in \
-         examples/loadables/Makefile examples/loadables/perl/Makefile])
-m4trace:configure.ac:1189: -1- _m4_warn([obsolete], [AC_OUTPUT should be used without arguments.
-You should run autoupdate.], [])
-m4trace:configure.ac:1189: -1- AC_SUBST([LIB@&t@OBJS], [$ac_libobjs])
-m4trace:configure.ac:1189: -1- AC_SUBST_TRACE([LIB@&t@OBJS])
-m4trace:configure.ac:1189: -1- m4_pattern_allow([^LIB@&t@OBJS$])
-m4trace:configure.ac:1189: -1- AC_SUBST([LTLIBOBJS], [$ac_ltlibobjs])
-m4trace:configure.ac:1189: -1- AC_SUBST_TRACE([LTLIBOBJS])
-m4trace:configure.ac:1189: -1- m4_pattern_allow([^LTLIBOBJS$])
-m4trace:configure.ac:1189: -1- AC_SUBST_TRACE([top_builddir])
-m4trace:configure.ac:1189: -1- AC_SUBST_TRACE([top_build_prefix])
-m4trace:configure.ac:1189: -1- AC_SUBST_TRACE([srcdir])
-m4trace:configure.ac:1189: -1- AC_SUBST_TRACE([abs_srcdir])
-m4trace:configure.ac:1189: -1- AC_SUBST_TRACE([top_srcdir])
-m4trace:configure.ac:1189: -1- AC_SUBST_TRACE([abs_top_srcdir])
-m4trace:configure.ac:1189: -1- AC_SUBST_TRACE([builddir])
-m4trace:configure.ac:1189: -1- AC_SUBST_TRACE([abs_builddir])
-m4trace:configure.ac:1189: -1- AC_SUBST_TRACE([abs_top_builddir])
-m4trace:configure.ac:1189: -1- AC_SUBST_TRACE([INSTALL])
diff --git a/builtins/-i b/builtins/-i
deleted file mode 100644 (file)
index e69de29..0000000
diff --git a/builtins/ChangeLog b/builtins/ChangeLog
deleted file mode 100644 (file)
index e69de29..0000000
diff --git a/builtins/psize-posix.c b/builtins/psize-posix.c
deleted file mode 100644 (file)
index e5840e4..0000000
+++ /dev/null
@@ -1,36 +0,0 @@
-/* psize-posix - display the pipe size on a Posix system. */
-
-/* Copyright 2008,2009 Free Software Foundation, Inc.
-
-   This file is part of GNU Bash, the Bourne Again SHell.
-
-   Bash is free software: you can redistribute it and/or modify
-   it under the terms of the GNU General Public License as published by
-   the Free Software Foundation, either version 3 of the License, or
-   (at your option) any later version.
-
-   Bash 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 General Public License for more details.
-
-   You should have received a copy of the GNU General Public License
-   along with Bash.  If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#include <stdio.h>
-#include <unistd.h>
-#include <stdlib.h>
-
-main(c, v)
-int    c;
-char   **v;
-{
-       char    *p;
-       long    l;
-
-       p = v[1] ? v[1] : "/";
-       l = pathconf (p, _PC_PIPE_BUF);
-       printf ("%ld\n", l);
-       exit(0);
-}
diff --git a/builtins/readsave b/builtins/readsave
deleted file mode 100644 (file)
index 8c26c79..0000000
+++ /dev/null
@@ -1,17 +0,0 @@
-#else
-  /* This code implements the `rest of the fields and their intervening
-     separators' portion of the Posix spec.  The latest interpretation says
-     that the last non-IFS white space separator (and any adjacent IFS
-     white space) is removed.  We repeatedly parse fields, stopping when the
-     last results in us hitting the end of INPUT_STRING. */
-  savei = t = input_string;
-  while (*input_string)
-    {
-      /* This call updates INPUT_STRING. */
-      t1 = get_word_from_string (&input_string, ifs_chars, &e);
-      if (*input_string)
-       t = input_string;
-    }
-  *t = '\0';
-  input_string = savei;
-#endif
diff --git a/configure.mk b/configure.mk
deleted file mode 100644 (file)
index d6ff428..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-# Make sure the first target in the makefile is the right one
-configure:     configure.ac aclocal.m4 config.h.in
-       autoconf
diff --git a/cross-build/beos-sig.h b/cross-build/beos-sig.h
deleted file mode 100644 (file)
index ea82f85..0000000
+++ /dev/null
@@ -1,37 +0,0 @@
-/* This file is used when cross compiling bash to run native on BeOS. */
-
-#ifndef __GNUC__
-# error cross compiling requires gcc
-#endif
-
-/* A translation list so we can be polite to our users.
-   Use gcc labelled initializers to set up the array.  Note that
-   some entries might wind up being NULL. */
-
-char *signal_names[NSIG + 3] = {
-  [0]         "EXIT",
-  [SIGHUP]    "SIGHUP",
-  [SIGINT]    "SIGINT",
-  [SIGQUIT]   "SIGQUIT",
-  [SIGILL]    "SIGILL",
-  [SIGCHLD]   "SIGCHLD",
-  [SIGABRT]   "SIGABRT",
-  [SIGPIPE]   "SIGPIPE",
-  [SIGFPE]    "SIGFPE",
-  [SIGKILL]   "SIGKILL",
-  [SIGSTOP]   "SIGSTOP",
-  [SIGSEGV]   "SIGSEGV",
-  [SIGCONT]   "SIGCONT",
-  [SIGTSTP]   "SIGTSTP",
-  [SIGALRM]   "SIGALRM",
-  [SIGTERM]   "SIGTERM",
-  [SIGTTIN]   "SIGTTIN",
-  [SIGTTOU]   "SIGTTOU",
-  [SIGUSR1]   "SIGUSR1",
-  [SIGUSR2]   "SIGUSR2",
-  [SIGWINCH]  "SIGWINCH",
-  [SIGKILLTHR]        "SIGKILLTHR",
-  [NSIG]      "DEBUG",
-  [NSIG + 1]  "ERR",
-  [NSIG + 2]  (char *)0x0,
-};
diff --git a/cross-build/win32sig.h b/cross-build/win32sig.h
deleted file mode 100644 (file)
index 41e6182..0000000
+++ /dev/null
@@ -1,256 +0,0 @@
-/* This file is used when cross-compiling for the CYGWIN32 environment on
-   a Unix machine.  It gets copied to signames.h in the build directory. */
-#include <sys/types.h>
-#include <signal.h>
-
-#ifndef __GNUC__
-# error cross compiling requires gcc
-#endif
-
-/* A translation list so we can be polite to our users.  Use gcc
-   labelled initializers to set up the array.  Note that some entries
-   might wind up being NULL.  */
-
-char *signal_names[NSIG + 3] = {
-  [0]          "EXIT",
-
-#ifdef SIGLOST
-  [SIGLOST]    "SIGLOST",
-#endif
-
-#ifdef SIGMSG
-  [SIGMSG]     "SIGMSG",
-#endif
-
-#ifdef SIGDANGER
-  [SIGDANGER]  "SIGDANGER",
-#endif
-
-#ifdef SIGMIGRATE
-  [SIGMIGRATE] "SIGMIGRATE",
-#endif
-
-#ifdef SIGPRE
-  [SIGPRE]     "SIGPRE",
-#endif
-
-#ifdef SIGVIRT
-  [SIGVIRT]    "SIGVIRT",
-#endif
-
-#ifdef SIGALRM1
-  [SIGALRM1]   "SIGALRM1",
-#endif
-
-#ifdef SIGWAITING
-  [SIGWAITING] "SIGWAITING",
-#endif
-
-#ifdef SIGGRANT
-  [SIGGRANT]   "SIGGRANT",
-#endif
-
-#ifdef SIGKAP
-  [SIGKAP]     "SIGKAP",
-#endif
-
-#ifdef SIGRETRACT
-  [SIGRETRACT] "SIGRETRACT",
-#endif
-
-#ifdef SIGSOUND
-  [SIGSOUND]   "SIGSOUND",
-#endif
-
-#ifdef SIGSAK
-  [SIGSAK]     "SIGSAK",
-#endif
-
-#ifdef SIGLWP
-  [SIGLWP]     "SIGLWP",
-#endif
-
-#ifdef SIGFREEZE
-  [SIGFREEZE]  "SIGFREEZE",
-#endif
-
-#ifdef SIGTHAW
-  [SIGTHAW]    "SIGTHAW",
-#endif
-
-#ifdef SIGCANCEL
-  [SIGCANCEL]  "SIGCANCEL",
-#endif
-
-#ifdef SIGDIL
-  [SIGDIL]     "SIGDIL",
-#endif
-
-#ifdef SIGCLD
-#ifndef SIGCHLD
-  [SIGCLD]     "SIGCLD",
-#else
-#if SIGCHLD != SIGCLD
-  [SIGCLD]     "SIGCLD",
-#endif
-#endif
-#endif
-
-#ifdef SIGPWR
-  [SIGPWR]     "SIGPWR",
-#endif
-
-#ifdef SIGPOLL
-#ifndef SIGIO
-  [SIGPOLL]    "SIGPOLL",
-#else
-#if SIGIO != SIGPOLL
-  [SIGPOLL]    "SIGPOLL",
-#endif
-#endif
-#endif
-
-#ifdef SIGWINDOW
-  [SIGWINDOW]  "SIGWINDOW",
-#endif
-
-#ifdef SIGHUP
-  [SIGHUP]     "SIGHUP",
-#endif
-
-#ifdef SIGINT
-  [SIGINT]     "SIGINT",
-#endif
-
-#ifdef SIGQUIT
-  [SIGQUIT]    "SIGQUIT",
-#endif
-
-#ifdef SIGILL
-  [SIGILL]     "SIGILL",
-#endif
-
-#ifdef SIGTRAP
-  [SIGTRAP]    "SIGTRAP",
-#endif
-
-#ifdef SIGIOT
-#ifndef SIGABRT
-  [SIGIOT]     "SIGIOT",
-#else
-#if SIGABRT != SIGIOT
-  [SIGIOT]     "SIGIOT",
-#endif
-#endif
-#endif
-
-#ifdef SIGABRT
-  [SIGABRT]    "SIGABRT",
-#endif
-
-#ifdef SIGEMT
-  [SIGEMT]     "SIGEMT",
-#endif
-
-#ifdef SIGFPE
-  [SIGFPE]     "SIGFPE",
-#endif
-
-#ifdef SIGKILL
-  [SIGKILL]    "SIGKILL",
-#endif
-
-#ifdef SIGBUS
-  [SIGBUS]     "SIGBUS",
-#endif
-
-#ifdef SIGSEGV
-  [SIGSEGV]    "SIGSEGV",
-#endif
-
-#ifdef SIGSYS
-  [SIGSYS]     "SIGSYS",
-#endif
-
-#ifdef SIGPIPE
-  [SIGPIPE]    "SIGPIPE",
-#endif
-
-#ifdef SIGALRM
-  [SIGALRM]    "SIGALRM",
-#endif
-
-#ifdef SIGTERM
-  [SIGTERM]    "SIGTERM",
-#endif
-
-#ifdef SIGURG
-  [SIGURG]     "SIGURG",
-#endif
-
-#ifdef SIGSTOP
-  [SIGSTOP]    "SIGSTOP",
-#endif
-
-#ifdef SIGTSTP
-  [SIGTSTP]    "SIGTSTP",
-#endif
-
-#ifdef SIGCONT
-  [SIGCONT]    "SIGCONT",
-#endif
-
-#ifdef SIGCHLD
-  [SIGCHLD]    "SIGCHLD",
-#endif
-
-#ifdef SIGTTIN
-  [SIGTTIN]    "SIGTTIN",
-#endif
-
-#ifdef SIGTTOU
-  [SIGTTOU]    "SIGTTOU",
-#endif
-
-#ifdef SIGIO
-  [SIGIO]      "SIGIO",
-#endif
-
-#ifdef SIGXCPU
-  [SIGXCPU]    "SIGXCPU",
-#endif
-
-#ifdef SIGXFSZ
-  [SIGXFSZ]    "SIGXFSZ",
-#endif
-
-#ifdef SIGVTALRM
-  [SIGVTALRM]  "SIGVTALRM",
-#endif
-
-#ifdef SIGPROF
-  [SIGPROF]    "SIGPROF",
-#endif
-
-#ifdef SIGWINCH
-  [SIGWINCH]   "SIGWINCH",
-#endif
-
-#ifdef SIGINFO
-  [SIGINFO]    "SIGINFO",
-#endif
-
-#ifdef SIGUSR1
-  [SIGUSR1]    "SIGUSR1",
-#endif
-
-#ifdef SIGUSR2
-  [SIGUSR2]    "SIGUSR2",
-#endif
-
-  [NSIG]       "DEBUG",
-
-  [NSIG + 1]   "ERR",
-
-  [NSIG + 2]   (char *)0x0
-};
diff --git a/examples/complete/complete-tests b/examples/complete/complete-tests
deleted file mode 100644 (file)
index fa6a6f4..0000000
+++ /dev/null
@@ -1,68 +0,0 @@
-#  Chet Ramey <chet.ramey@case.edu>
-#
-#  Copyright 2002 Chester Ramey
-#
-#   This program is free software; you can redistribute it and/or modify
-#   it under the terms of the GNU General Public License as published by
-#   the Free Software Foundation; either version 2, or (at your option)
-#   any later version.
-#
-#   TThis program 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 General Public License for more details.
-#
-#   You should have received a copy of the GNU General Public License
-#   along with this program; if not, write to the Free Software Foundation,
-#   Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
-
-# from zsh, just for testing
-complete -A stopped -P '%' bg
-complete -j -P '%' fg jobs disown
-# this is wrong at this point
-complete -j -P '%' -W '$(ps -x | tail +2 | cut -c1-5)' wait
-complete -c type
-complete -a unalias
-complete -v getopts read unset 
-complete -v -S '=' declare export local readonly typeset
-complete -f -- . source
-complete -A shopt shopt
-complete -e printenv
-
-complete -A helptopic help
-
-complete -c nohup exec nice eval
-complete -c -k time
-
-complete -A signal trap kill
-
-complete -f chown ln more cat
-complete -d mkdir rmdir
-
-complete -f -X '!*.+(gz|tgz)' gunzip gzcat zcat zmore
-complete -f -X '!*.Z' uncompress zmore zcat
-complete -f gzip
-
-complete -d cd pushd popd
-
-complete -A hostname rsh telnet rlogin ftp
-
-complete -u su
-complete -W '"${GROUPS[@]}"' newgrp
-complete -g groupdel groupmod
-
-complete -f -X '!*.+(ps|PS)' gs gv ghostview
-complete -f -X '!*.dvi' dvips xdvi
-complete -f -X '!*.pdf' acroread
-
-complete -f -X '!*.texi*' makeinfo texi2dvi texi2html
-
-complete -c gdb make
-
-complete -p gs
-complete -p
-
-complete -r xdvi
-complete -r notthere
-complete -r
-complete
diff --git a/examples/copyright b/examples/copyright
deleted file mode 100644 (file)
index 0890864..0000000
+++ /dev/null
@@ -1,18 +0,0 @@
-#
-#  Chet Ramey <chet.ramey@case.edu>
-#
-#  Copyright 2011 Chester Ramey
-#
-#   This program is free software; you can redistribute it and/or modify
-#   it under the terms of the GNU General Public License as published by
-#   the Free Software Foundation; either version 2, or (at your option)
-#   any later version.
-#
-#   TThis program 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 General Public License for more details.
-#
-#   You should have received a copy of the GNU General Public License
-#   along with this program; if not, write to the Free Software Foundation,
-#   Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
diff --git a/examples/loadables/TODO b/examples/loadables/TODO
deleted file mode 100644 (file)
index b498bdb..0000000
+++ /dev/null
@@ -1,4 +0,0 @@
-cmp
-wc
-mkfifo
-paste
diff --git a/examples/loadables/bsdos.glue.c b/examples/loadables/bsdos.glue.c
deleted file mode 100644 (file)
index 9df731b..0000000
+++ /dev/null
@@ -1,191 +0,0 @@
-#include <stdio.h>
-#include <limits.h>
-#include <locale.h>
-#include <unistd.h>
-#include <errno.h>
-#include <stdarg.h>
-#include "bashansi.h"
-#include "shell.h"
-#include "builtins.h"
-#include "stdc.h"
-#include "common.h"
-#include "bashgetopt.h"
-
-char *this_command_name = (char *)NULL;
-
-void
-builtin_error (const char *format, ...)
-{
-  va_list args;
-  char *name;
-
-  name = get_name_for_error ();
-  fprintf (stderr, "%s: ", name);
-
-  if (this_command_name && *this_command_name)
-    fprintf (stderr, "%s: ", this_command_name);
-
-  va_start (args, format);
-
-  vfprintf (stderr, format, args);
-  va_end (args);
-  fprintf (stderr, "\n");
-}
-
-int
-no_options(list)
-WORD_LIST *list;
-{
-  reset_internal_getopt ();
-  if (internal_getopt (list, "") != -1)
-    {
-      builtin_usage ();
-      return (1);
-    }
-  return (0);
-}
-
-int
-legal_number (string, result)
-     char *string;
-     long *result;
-{
-  long value;
-  char *ep;
-
-  if (result)
-    *result = 0;
-
-  value = strtol (string, &ep, 10);
-
-  /* If *string is not '\0' but *ep is '\0' on return, the entire string
-     is valid. */
-  if (string && *string && *ep == '\0')
-    {
-      if (result)
-        *result = value;
-      /* The SunOS4 implementation of strtol() will happily ignore
-         overflow conditions, so this cannot do overflow correctly
-         on those systems. */
-      return 1;
-    }
-    
-  return (0);
-}
-
-/* Return the number of elements in LIST, a generic list. */
-int
-list_length (list)
-     GENERIC_LIST *list;
-{
-  register int i;
-
-  for (i = 0; list; list = list->next, i++);
-  return (i);
-}
-
-GENERIC_LIST *
-reverse_list (list)
-     GENERIC_LIST *list;
-{
-  register GENERIC_LIST *next, *prev;
-
-  for (prev = (GENERIC_LIST *)NULL; list; )
-    {
-      next = list->next;
-      list->next = prev;
-      prev = list;
-      list = next;
-    }
-  return (prev);
-}
-
-WORD_DESC *
-make_bare_word (string)
-     char *string;
-{
-  WORD_DESC *temp;
-
-  temp = (WORD_DESC *)xmalloc (sizeof (WORD_DESC));
-  if (*string)
-    temp->word = savestring (string);
-  else
-    {
-      temp->word = xmalloc (1);
-      temp->word[0] = '\0';
-    }
-
-  temp->flags = 0;
-  return (temp);
-}
-WORD_LIST *
-make_word_list (word, link)
-     WORD_DESC *word;
-     WORD_LIST *link;
-{
-  WORD_LIST *temp;
-
-  temp = (WORD_LIST *)xmalloc (sizeof (WORD_LIST));
-  temp->word = word;
-  temp->next = link;
-  return (temp);
-}
-
-void
-builtin_usage()
-{
-  if (this_command_name && *this_command_name)
-    fprintf (stderr, "%s: usage: %s args\n", this_command_name, this_command_name);
-  fflush (stderr);
-}
-
-char *
-xmalloc(s)
-     size_t s;
-{
-  return (malloc (s));
-}
-
-WORD_LIST *
-argv_to_word_list (array, copy, starting_index)
-     char **array;
-     int copy, starting_index;
-{
-  WORD_LIST *list;
-  WORD_DESC *w;
-  int i, count;
-
-  if (array == 0 || array[0] == 0)
-    return (WORD_LIST *)NULL;
-
-  for (count = 0; array[count]; count++)
-    ;
-
-  for (i = starting_index, list = (WORD_LIST *)NULL; i < count; i++)
-    {
-      w = make_bare_word (copy ? "" : array[i]);
-      if (copy)
-        {
-          free (w->word);
-          w->word = array[i];
-        }
-      list = make_word_list (w, list);
-    }
-  return (REVERSE_LIST(list, WORD_LIST *));
-}
-
-/* Convert a WORD_LIST into a C-style argv.  Return the number of elements
-   in the list in *IP, if IP is non-null.  A convenience function for
-   loadable builtins; also used by `test'. */
-char **
-make_builtin_argv (list, ip)
-     WORD_LIST *list;
-     int *ip;
-{
-  char **argv;
-
-  argv = strvec_from_word_list (list, 0, 1, ip);
-  argv[0] = this_command_name;
-  return argv;
-}
-                
diff --git a/examples/loadables/copyright-fullcomment b/examples/loadables/copyright-fullcomment
deleted file mode 100644 (file)
index 3154216..0000000
+++ /dev/null
@@ -1,17 +0,0 @@
-/*
-   Copyright (C) 1999-2009 Free Software Foundation, Inc.
-
-   This file is part of GNU Bash.
-   Bash is free software: you can redistribute it and/or modify
-   it under the terms of the GNU General Public License as published by
-   the Free Software Foundation, either version 3 of the License, or
-   (at your option) any later version.
-
-   Bash 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 General Public License for more details.
-
-   You should have received a copy of the GNU General Public License
-   along with Bash.  If not, see <http://www.gnu.org/licenses/>.
-*/
diff --git a/examples/loadables/pushd.def b/examples/loadables/pushd.def
deleted file mode 100644 (file)
index 87300dc..0000000
+++ /dev/null
@@ -1,611 +0,0 @@
-This file is pushd.def, from which is created pushd.c.  It implements the
-builtins "pushd", "popd", and "dirs" in Bash.
-
-Copyright (C) 1987, 1989, 1991 Free Software Foundation, Inc.
-
-This file is part of GNU Bash, the Bourne Again SHell.
-
-Bash is free software; you can redistribute it and/or modify it under
-the terms of the GNU General Public License as published by the Free
-Software Foundation; either version 1, or (at your option) any later
-version.
-
-Bash 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 General Public License
-for more details.
-
-You should have received a copy of the GNU General Public License along
-with Bash; see the file COPYING.  If not, write to the Free Software
-Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
-
-$PRODUCES pushd.c
-
-$BUILTIN pushd
-$FUNCTION pushd_builtin
-$DEPENDS_ON PUSHD_AND_POPD
-$SHORT_DOC pushd [dir | +N | -N] [-n]
-Adds a directory to the top of the directory stack, or rotates
-the stack, making the new top of the stack the current working
-directory.  With no arguments, exchanges the top two directories.
-
-+N     Rotates the stack so that the Nth directory (counting
-       from the left of the list shown by `dirs', starting with
-       zero) is at the top.
-
--N     Rotates the stack so that the Nth directory (counting
-       from the right of the list shown by `dirs', starting with
-       zero) is at the top.
-
--n     suppress the normal change of directory when adding directories
-       to the stack, so only the stack is manipulated.
-
-dir    adds DIR to the directory stack at the top, making it the
-       new current working directory.
-
-You can see the directory stack with the `dirs' command.
-$END
-
-$BUILTIN popd
-$FUNCTION popd_builtin
-$DEPENDS_ON PUSHD_AND_POPD
-$SHORT_DOC popd [+N | -N] [-n]
-Removes entries from the directory stack.  With no arguments,
-removes the top directory from the stack, and cd's to the new
-top directory.
-
-+N     removes the Nth entry counting from the left of the list
-       shown by `dirs', starting with zero.  For example: `popd +0'
-       removes the first directory, `popd +1' the second.
-
--N     removes the Nth entry counting from the right of the list
-       shown by `dirs', starting with zero.  For example: `popd -0'
-       removes the last directory, `popd -1' the next to last.
-
--n     suppress the normal change of directory when removing directories
-       from the stack, so only the stack is manipulated.
-
-You can see the directory stack with the `dirs' command.
-$END
-
-$BUILTIN dirs
-$FUNCTION dirs_builtin
-$DEPENDS_ON PUSHD_AND_POPD
-$SHORT_DOC dirs [-clpv] [+N] [-N]
-Display the list of currently remembered directories.  Directories
-find their way onto the list with the `pushd' command; you can get
-back up through the list with the `popd' command.
-
-The -l flag specifies that `dirs' should not print shorthand versions
-of directories which are relative to your home directory.  This means
-that `~/bin' might be displayed as `/homes/bfox/bin'.  The -v flag
-causes `dirs' to print the directory stack with one entry per line,
-prepending the directory name with its position in the stack.  The -p
-flag does the same thing, but the stack position is not prepended.
-The -c flag clears the directory stack by deleting all of the elements.
-
-+N     displays the Nth entry counting from the left of the list shown by
-       dirs when invoked without options, starting with zero.
-
--N     displays the Nth entry counting from the right of the list shown by
-       dirs when invoked without options, starting with zero.
-$END
-
-#include <config.h>
-
-#if defined (PUSHD_AND_POPD)
-#include <stdio.h>
-#include <sys/param.h>
-
-#if defined (HAVE_UNISTD_H)
-#  include <unistd.h>
-#endif
-
-#include "../bashansi.h"
-
-#include <errno.h>
-
-#include <tilde/tilde.h>
-
-#include "../shell.h"
-#include "../maxpath.h"
-#include "common.h"
-#include "builtext.h"
-
-#if !defined (errno)
-extern int errno;
-#endif /* !errno */
-
-static char *m_badarg = "%s: bad argument";
-
-/* The list of remembered directories. */
-static char **pushd_directory_list = (char **)NULL;
-
-/* Number of existing slots in this list. */
-static int directory_list_size;
-
-/* Offset to the end of the list. */
-static int directory_list_offset;
-
-static void pushd_error ();
-static void clear_directory_stack ();
-static int cd_to_string ();
-static int change_to_temp ();
-static int get_dirstack_index ();
-static void add_dirstack_element ();
-
-#define NOCD           0x01
-#define ROTATE         0x02
-#define LONGFORM       0x04
-#define CLEARSTAK      0x08
-
-int
-pushd_builtin (list)
-     WORD_LIST *list;
-{
-  char *temp, *current_directory, *top;
-  int j, flags;
-  long num;
-  char direction;
-
-  /* If there is no argument list then switch current and
-     top of list. */
-  if (list == 0)
-    {
-      if (directory_list_offset == 0)
-       {
-         builtin_error ("no other directory");
-         return (EXECUTION_FAILURE);
-       }
-
-      current_directory = get_working_directory ("pushd");
-      if (current_directory == 0)
-       return (EXECUTION_FAILURE);
-
-      j = directory_list_offset - 1;
-      temp = pushd_directory_list[j];
-      pushd_directory_list[j] = current_directory;
-      j = change_to_temp (temp);
-      free (temp);
-      return j;
-    }
-
-  for (flags = 0; list; list = list->next)
-    {
-      if (ISOPTION (list->word->word, 'n'))
-       {
-         flags |= NOCD;
-       }
-      else if (ISOPTION (list->word->word, '-'))
-        {
-          list = list->next;
-          break;
-        }
-      else if (list->word->word[0] == '-' && list->word->word[1] == '\0')
-       /* Let `pushd -' work like it used to. */
-       break;
-      else if (((direction = list->word->word[0]) == '+') || direction == '-')
-       {
-         if (legal_number (list->word->word + 1, &num) == 0)
-           {
-             builtin_error (m_badarg, list->word->word);
-             builtin_usage ();
-             return (EXECUTION_FAILURE);
-           }
-
-         if (direction == '-')
-           num = directory_list_offset - num;
-
-         if (num > directory_list_offset || num < 0)
-           {
-             pushd_error (directory_list_offset, list->word->word);
-             return (EXECUTION_FAILURE);
-           }
-         flags |= ROTATE;
-       }
-      else if (*list->word->word == '-')
-       {
-         bad_option (list->word->word);
-         builtin_usage ();
-         return (EXECUTION_FAILURE);
-       }
-      else
-       break;
-    }
-
-  if (flags & ROTATE)
-    {
-      /* Rotate the stack num times.  Remember, the current
-        directory acts like it is part of the stack. */
-      temp = get_working_directory ("pushd");
-
-      if (num == 0)
-       {
-         j = ((flags & NOCD) == 0) ? change_to_temp (temp) : EXECUTION_SUCCESS;
-         free (temp);
-         return j;
-       }
-
-      do
-       {
-         top = pushd_directory_list[directory_list_offset - 1];
-
-         for (j = directory_list_offset - 2; j > -1; j--)
-           pushd_directory_list[j + 1] = pushd_directory_list[j];
-
-         pushd_directory_list[j + 1] = temp;
-
-         temp = top;
-         num--;
-       }
-      while (num);
-
-      j = ((flags & NOCD) == 0) ? change_to_temp (temp) : EXECUTION_SUCCESS;
-      free (temp);
-      return j;
-    }
-
-  if (list == 0)
-    return (EXECUTION_SUCCESS);
-
-  /* Change to the directory in list->word->word.  Save the current
-     directory on the top of the stack. */
-  current_directory = get_working_directory ("pushd");
-  if (current_directory == 0)
-    return (EXECUTION_FAILURE);
-
-  j = ((flags & NOCD) == 0) ? cd_builtin (list) : EXECUTION_SUCCESS;
-  if (j == EXECUTION_SUCCESS)
-    {
-      add_dirstack_element ((flags & NOCD) ? savestring (list->word->word) : current_directory);
-      dirs_builtin ((WORD_LIST *)NULL);
-      if (flags & NOCD)
-       free (current_directory);
-      return (EXECUTION_SUCCESS);
-    }
-  else
-    {
-      free (current_directory);
-      return (EXECUTION_FAILURE);
-    }
-}
-
-/* Pop the directory stack, and then change to the new top of the stack.
-   If LIST is non-null it should consist of a word +N or -N, which says
-   what element to delete from the stack.  The default is the top one. */
-int
-popd_builtin (list)
-     WORD_LIST *list;
-{
-  register int i;
-  long which;
-  int flags;
-  char direction;
-  char *which_word;
-
-  which_word = (char *)NULL;
-  for (flags = 0, which = 0L, direction = '+'; list; list = list->next)
-    {
-      if (ISOPTION (list->word->word, 'n'))
-        {
-          flags |= NOCD;
-        }
-      else if (ISOPTION (list->word->word, '-'))
-        {
-          list = list->next;
-          break;
-        }
-      else if (((direction = list->word->word[0]) == '+') || direction == '-')
-       {
-         if (legal_number (list->word->word + 1, &which) == 0)
-           {
-             builtin_error (m_badarg, list->word->word);
-             builtin_usage ();
-             return (EXECUTION_FAILURE);
-           }
-         which_word = list->word->word;
-       }
-      else if (*list->word->word == '-')
-       {
-         bad_option (list->word->word);
-         builtin_usage ();
-         return (EXECUTION_FAILURE);
-       }
-      else
-       break;
-    }
-
-  if (which > directory_list_offset || (directory_list_offset == 0 && which == 0))
-    {
-      pushd_error (directory_list_offset, which_word ? which_word : "");
-      return (EXECUTION_FAILURE);
-    }
-
-  /* Handle case of no specification, or top of stack specification. */
-  if ((direction == '+' && which == 0) ||
-      (direction == '-' && which == directory_list_offset))
-    {
-      i = ((flags & NOCD) == 0) ? cd_to_string (pushd_directory_list[directory_list_offset - 1])
-                               : EXECUTION_SUCCESS;
-      if (i != EXECUTION_SUCCESS)
-       return (i);
-      free (pushd_directory_list[--directory_list_offset]);
-    }
-  else
-    {
-      /* Since an offset other than the top directory was specified,
-        remove that directory from the list and shift the remainder
-        of the list into place. */
-      i = (direction == '+') ? directory_list_offset - which : which;
-      free (pushd_directory_list[i]);
-      directory_list_offset--;
-
-      /* Shift the remainder of the list into place. */
-      for (; i < directory_list_offset; i++)
-       pushd_directory_list[i] = pushd_directory_list[i + 1];
-    }
-
-  dirs_builtin ((WORD_LIST *)NULL);
-  return (EXECUTION_SUCCESS);
-}
-
-/* Print the current list of directories on the directory stack. */
-int
-dirs_builtin (list)
-     WORD_LIST *list;
-{
-  int flags, desired_index, index_flag, vflag;
-  long i;
-  char *temp, *w;
-
-  for (flags = vflag = index_flag = 0, desired_index = -1, w = ""; list; list = list->next)
-    {
-      if (ISOPTION (list->word->word, 'l'))
-       {
-         flags |= LONGFORM;
-       }
-      else if (ISOPTION (list->word->word, 'c'))
-       {
-         flags |= CLEARSTAK;
-       }
-      else if (ISOPTION (list->word->word, 'v'))
-       {
-         vflag |= 2;
-       }
-      else if (ISOPTION (list->word->word, 'p'))
-       {
-         vflag |= 1;
-       }
-      else if (ISOPTION (list->word->word, '-'))
-        {
-          list = list->next;
-          break;
-        }
-      else if (*list->word->word == '+' || *list->word->word == '-')
-        {
-          int sign;
-          if (legal_number (w = list->word->word + 1, &i) == 0)
-           {
-             builtin_error (m_badarg, list->word->word);
-             builtin_usage ();
-             return (EXECUTION_FAILURE);
-           }
-         sign = (*list->word->word == '+') ? 1 : -1;
-         desired_index = get_dirstack_index (i, sign, &index_flag);
-       }
-      else
-       {
-         bad_option (list->word->word);
-         builtin_usage ();
-         return (EXECUTION_FAILURE);
-       }
-    }
-
-  if (flags & CLEARSTAK)
-    {
-      clear_directory_stack ();
-      return (EXECUTION_SUCCESS);
-    }
-
-  if (index_flag && (desired_index < 0 || desired_index > directory_list_offset))
-    {
-      pushd_error (directory_list_offset, w);
-      return (EXECUTION_FAILURE);
-    }
-
-#define DIRSTACK_FORMAT(temp) \
-  (flags & LONGFORM) ? temp : polite_directory_format (temp)
-
-  /* The first directory printed is always the current working directory. */
-  if (index_flag == 0 || (index_flag == 1 && desired_index == 0))
-    {
-      temp = get_working_directory ("dirs");
-      if (temp == 0)
-       temp = savestring ("<no current directory>");
-      if (vflag & 2)
-       printf ("%2d  %s", 0, DIRSTACK_FORMAT (temp));
-      else
-       printf ("%s", DIRSTACK_FORMAT (temp));
-      free (temp);
-      if (index_flag)
-       {
-         putchar ('\n');
-         return EXECUTION_SUCCESS;
-       }
-    }
-
-#define DIRSTACK_ENTRY(i) \
-  (flags & LONGFORM) ? pushd_directory_list[i] \
-                    : polite_directory_format (pushd_directory_list[i])
-
-  /* Now print the requested directory stack entries. */
-  if (index_flag)
-    {
-      if (vflag & 2)
-       printf ("%2d  %s", directory_list_offset - desired_index,
-                          DIRSTACK_ENTRY (desired_index));
-      else
-       printf ("%s", DIRSTACK_ENTRY (desired_index));
-    }
-  else
-    for (i = directory_list_offset - 1; i >= 0; i--)
-      if (vflag >= 2)
-       printf ("\n%2d  %s", directory_list_offset - (int)i, DIRSTACK_ENTRY (i));
-      else
-       printf ("%s%s", (vflag & 1) ? "\n" : " ", DIRSTACK_ENTRY (i));
-
-  putchar ('\n');
-  fflush (stdout);
-  return (EXECUTION_SUCCESS);
-}
-
-static void
-pushd_error (offset, arg)
-     int offset;
-     char *arg;
-{
-  if (offset == 0)
-    builtin_error ("directory stack empty");
-  else if (arg)
-    builtin_error ("%s: bad directory stack index", arg);
-  else
-    builtin_error ("bad directory stack index");
-}
-
-static void
-clear_directory_stack ()
-{
-  register int i;
-
-  for (i = 0; i < directory_list_offset; i++)
-    free (pushd_directory_list[i]);
-  directory_list_offset = 0;
-}
-
-/* Switch to the directory in NAME.  This uses the cd_builtin to do the work,
-   so if the result is EXECUTION_FAILURE then an error message has already
-   been printed. */
-static int
-cd_to_string (name)
-     char *name;
-{
-  WORD_LIST *tlist;
-  int result;
-
-  tlist = make_word_list (make_word (name), NULL);
-  result = cd_builtin (tlist);
-  dispose_words (tlist);
-  return (result);
-}
-
-static int
-change_to_temp (temp)
-     char *temp;
-{
-  int tt;
-
-  tt = temp ? cd_to_string (temp) : EXECUTION_FAILURE;
-
-  if (tt == EXECUTION_SUCCESS)
-    dirs_builtin ((WORD_LIST *)NULL);
-
-  return (tt);
-}
-
-static void
-add_dirstack_element (dir)
-     char *dir;
-{
-  int j;
-
-  if (directory_list_offset == directory_list_size)
-    {
-      j = (directory_list_size += 10) * sizeof (char *);
-      pushd_directory_list = (char **)xrealloc (pushd_directory_list, j);
-    }
-  pushd_directory_list[directory_list_offset++] = dir;
-}
-
-static int
-get_dirstack_index (ind, sign, indexp)
-     int ind, sign, *indexp;
-{
-  if (indexp)
-    *indexp = sign > 0 ? 1 : 2;
-
-  /* dirs +0 prints the current working directory. */
-  /* dirs -0 prints last element in directory stack */
-  if (ind == 0 && sign > 0)
-    return 0;
-  else if (ind == directory_list_offset)
-    {
-      if (indexp)
-       *indexp = sign > 0 ? 2 : 1;
-      return 0;
-    }
-  else
-    return (sign > 0 ? directory_list_offset - ind : ind);
-}
-
-char *
-get_dirstack_element (ind, sign)
-     int ind, sign;
-{
-  int i;
-
-  i = get_dirstack_index (ind, sign, (int *)NULL);
-  return (i < 0 || i > directory_list_offset) ? (char *)NULL
-                                             : pushd_directory_list[i];
-}
-
-void
-set_dirstack_element (ind, sign, value)
-     int ind, sign;
-     char *value;
-{
-  int i;
-
-  i = get_dirstack_index (ind, sign, (int *)NULL);
-  if (ind == 0 || i < 0 || i > directory_list_offset)
-    return;
-  free (pushd_directory_list[i]);
-  pushd_directory_list[i] = savestring (value);
-}
-
-WORD_LIST *
-get_directory_stack ()
-{
-  register int i;
-  WORD_LIST *ret;
-  char *d, *t;
-
-  for (ret = (WORD_LIST *)NULL, i = 0; i < directory_list_offset; i++)
-    {
-      d = polite_directory_format (pushd_directory_list[i]);
-      ret = make_word_list (make_word (d), ret);
-    }
-  /* Now the current directory. */
-  d = get_working_directory ("dirstack");
-  i = 0;       /* sentinel to decide whether or not to free d */
-  if (d == 0)
-    d = ".";
-  else
-    {
-      t = polite_directory_format (d);
-      /* polite_directory_format sometimes returns its argument unchanged.
-        If it does not, we can free d right away.  If it does, we need to
-        mark d to be deleted later. */
-      if (t != d)
-       {
-         free (d);
-         d = t;
-       }
-      else /* t == d, so d is what we want */
-       i = 1;
-    }
-  ret = make_word_list (make_word (d), ret);
-  if (i)
-    free (d);
-  return ret;  /* was (REVERSE_LIST (ret, (WORD_LIST *)); */
-}
-#endif /* PUSHD_AND_POPD */
diff --git a/examples/loadables/pushd.inc b/examples/loadables/pushd.inc
deleted file mode 100644 (file)
index 768dae1..0000000
+++ /dev/null
@@ -1,90 +0,0 @@
-static char *dirs_doc[] = {
-  "Display the list of currently remembered directories.  Directories",
-  "find their way onto the list with the `pushd' command; you can get",
-  "back up through the list with the `popd' command.",
-  "",
-  "The -l flag specifies that `dirs' should not print shorthand versions",
-  "of directories which are relative to your home directory.  This means",
-  "that `~/bin' might be displayed as `/homes/bfox/bin'.  The -v flag",
-  "causes `dirs' to print the directory stack with one entry per line,",
-  "prepending the directory name with its position in the stack.  The -p",
-  "flag does the same thing, but the stack position is not prepended.",
-  "The -c flag clears the directory stack by deleting all of the elements.",
-  "",
-  "+N   displays the Nth entry counting from the left of the list shown by",
-  "     dirs when invoked without options, starting with zero.",
-  "",
-  "-N   displays the Nth entry counting from the right of the list shown by",
-  "     dirs when invoked without options, starting with zero.",
-  (char *)NULL
-};
-
-static char *pushd_doc[] = {
-  "Adds a directory to the top of the directory stack, or rotates",
-  "the stack, making the new top of the stack the current working",
-  "directory.  With no arguments, exchanges the top two directories.",
-  "",
-  "+N   Rotates the stack so that the Nth directory (counting",
-  "     from the left of the list shown by `dirs', starting with"
-  "     zero) is at the top.",
-  "",
-  "-N   Rotates the stack so that the Nth directory (counting",
-  "     from the right of the list shown by `dirs', starting with"
-  "     zero) is at the top.",
-  "",
-  "-n   suppress the normal change of directory when adding directories",
-  "     to the stack, so only the stack is manipulated.",
-  "",
-  "dir  adds DIR to the directory stack at the top, making it the",
-  "     new current working directory.",
-  "",
-  "You can see the directory stack with the `dirs' command.",
-  (char *)NULL
-};
-
-static char *popd_doc[] = {
-  "Removes entries from the directory stack.  With no arguments,",
-  "removes the top directory from the stack, and cd's to the new",
-  "top directory.",
-  "",
-  "+N   removes the Nth entry counting from the left of the list",
-  "     shown by `dirs', starting with zero.  For example: `popd +0'",
-  "     removes the first directory, `popd +1' the second.",   
-  "",
-  "-N   removes the Nth entry counting from the right of the list",
-  "     shown by `dirs', starting with zero.  For example: `popd -0'",
-  "     removes the last directory, `popd -1' the next to last.",
-  "",
-  "-n   suppress the normal change of directory when removing directories",
-  "     from the stack, so only the stack is manipulated.",
-  "",
-  "You can see the directory stack with the `dirs' command.",
-  (char *)NULL
-};
-
-struct builtin pushd_struct = {
-       "pushd",
-       pushd_builtin,
-       BUILTIN_ENABLED,
-       pushd_doc,
-       "pushd [+N | -N] [-n] [dir]",
-       0
-};
-
-struct builtin popd_struct = {
-       "popd",
-       popd_builtin,
-       BUILTIN_ENABLED,
-       popd_doc,
-       "popd [+N | -N] [-n]",
-       0
-};
-
-struct builtin dirs_struct = {
-       "dirs",
-       dirs_builtin,
-       BUILTIN_ENABLED,
-       dirs_doc,
-       "dirs [-clpv] [+N] [-N]",
-       0
-};
diff --git a/lib/doc-support/Makefile.in b/lib/doc-support/Makefile.in
deleted file mode 100644 (file)
index 8600794..0000000
+++ /dev/null
@@ -1,53 +0,0 @@
-# simple makefile to create texindex
-#
-# Copyright (C) 1996-2005 Free Software Foundation, Inc.     
-
-#   This program is free software: you can redistribute it and/or modify
-#   it under the terms of the GNU General Public License as published by
-#   the Free Software Foundation, either version 3 of the License, or
-#   (at your option) any later version.
-
-#   This program 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 General Public License for more details.
-
-#   You should have received a copy of the GNU General Public License
-#   along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-topdir = @top_srcdir@
-srcdir = @srcdir@
-VPATH = .:@srcdir@
-BUILD_DIR = @BUILD_DIR@
-
-CC = @CC@
-RM = rm
-
-SHELL = @MAKE_SHELL@
-
-DEFS = @DEFS@
-CFLAGS = @CFLAGS@ @LOCAL_CFLAGS@
-LDFLAGS = @LDFLAGS@ @LOCAL_LDFLAGS@
-CPPFLAGS = @CPPFLAGS@
-
-INCLUDES = -I. -I../.. -I$(topdir)
-
-CCFLAGS = $(CFLAGS) $(DEFS) $(CPPFLAGS) ${INCLUDES}
-
-.c.o:
-       $(RM) -f $@
-       $(CC) $(CCFLAGS) -c $<
-
-OBJECTS = texindex.o getopt.o getopt1.o
-SOURCES = texindex.c getopt.c getopt1.c
-
-all: texindex
-
-texindex: $(OBJECTS)
-       $(CC) $(LDFLAGS) -o $@ $(OBJECTS) $(LIBS)
-
-clean:
-       $(RM) $(OBJECTS) texindex
-
-distclean mostlyclean realclean maintainer-clean: clean
-       $(RM) Makefile
diff --git a/lib/doc-support/getopt.c b/lib/doc-support/getopt.c
deleted file mode 100644 (file)
index 802f0e3..0000000
+++ /dev/null
@@ -1,731 +0,0 @@
-/* getopt.c - Getopt for GNU. */
-
-/* NOTE: getopt is now part of the C library, so if you don't know what
-   "Keep this file name-space clean" means, talk to roland@gnu.ai.mit.edu
-   before changing it! */
-
-/* Copyright (C) 1987, 88, 89, 90, 91, 92, 1993, 2008,2009 Free Software Foundation, Inc.
-
-   Bash is free software: you can redistribute it and/or modify
-   it under the terms of the GNU General Public License as published by
-   the Free Software Foundation, either version 3 of the License, or
-   (at your option) any later version.
-
-   Bash 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 General Public License for more details.
-
-   You should have received a copy of the GNU General Public License
-   along with Bash.  If not, see <http://www.gnu.org/licenses/>.
-*/
-
-/* NOTE!!!  AIX requires this to be the first thing in the file.
-   Do not put ANYTHING before it!  */
-#if !defined (__GNUC__) && defined (_AIX)
- #pragma alloca
-#endif
-
-#ifdef HAVE_CONFIG_H
-#include "config.h"
-#endif
-
-#ifdef __GNUC__
-#define alloca __builtin_alloca
-#else /* not __GNUC__ */
-#if defined (HAVE_ALLOCA_H) || (defined(sparc) && (defined(sun) || (!defined(USG) && !defined(SVR4) && !defined(__svr4__))))
-#include <alloca.h>
-#else
-#ifndef _AIX
-char *alloca ();
-#endif
-#endif /* alloca.h */
-#endif /* not __GNUC__ */
-
-#if !__STDC__ && !defined(const) && IN_GCC
-#define const
-#endif
-
-/* This tells Alpha OSF/1 not to define a getopt prototype in <stdio.h>.  */
-#ifndef _NO_PROTO
-#define _NO_PROTO
-#endif
-
-#include <stdio.h>
-
-/* Comment out all this code if we are using the GNU C Library, and are not
-   actually compiling the library itself.  This code is part of the GNU C
-   Library, but also included in many other GNU distributions.  Compiling
-   and linking in this code is a waste when using the GNU C library
-   (especially if it is a shared library).  Rather than having every GNU
-   program understand `configure --with-gnu-libc' and omit the object files,
-   it is simpler to just do this in the source for each such file.  */
-
-#if defined (_LIBC) || !defined (__GNU_LIBRARY__)
-
-
-/* This needs to come after some library #include
-   to get __GNU_LIBRARY__ defined.  */
-#ifdef __GNU_LIBRARY__
-#undef alloca
-/* Don't include stdlib.h for non-GNU C libraries because some of them
-   contain conflicting prototypes for getopt.  */
-#include <stdlib.h>
-#else  /* Not GNU C library.  */
-#define        __alloca        alloca
-#endif /* GNU C library.  */
-
-/* If GETOPT_COMPAT is defined, `+' as well as `--' can introduce a
-   long-named option.  Because this is not POSIX.2 compliant, it is
-   being phased out.  */
-/* #define GETOPT_COMPAT */
-
-/* This version of `getopt' appears to the caller like standard Unix `getopt'
-   but it behaves differently for the user, since it allows the user
-   to intersperse the options with the other arguments.
-
-   As `getopt' works, it permutes the elements of ARGV so that,
-   when it is done, all the options precede everything else.  Thus
-   all application programs are extended to handle flexible argument order.
-
-   Setting the environment variable POSIXLY_CORRECT disables permutation.
-   Then the behavior is completely standard.
-
-   GNU application programs can use a third alternative mode in which
-   they can distinguish the relative order of options and other arguments.  */
-
-#include "getopt.h"
-
-/* For communication from `getopt' to the caller.
-   When `getopt' finds an option that takes an argument,
-   the argument value is returned here.
-   Also, when `ordering' is RETURN_IN_ORDER,
-   each non-option ARGV-element is returned here.  */
-
-char *optarg = 0;
-
-/* Index in ARGV of the next element to be scanned.
-   This is used for communication to and from the caller
-   and for communication between successive calls to `getopt'.
-
-   On entry to `getopt', zero means this is the first call; initialize.
-
-   When `getopt' returns EOF, this is the index of the first of the
-   non-option elements that the caller should itself scan.
-
-   Otherwise, `optind' communicates from one call to the next
-   how much of ARGV has been scanned so far.  */
-
-/* XXX 1003.2 says this must be 1 before any call.  */
-int optind = 0;
-
-/* The next char to be scanned in the option-element
-   in which the last option character we returned was found.
-   This allows us to pick up the scan where we left off.
-
-   If this is zero, or a null string, it means resume the scan
-   by advancing to the next ARGV-element.  */
-
-static char *nextchar;
-
-/* Callers store zero here to inhibit the error message
-   for unrecognized options.  */
-
-int opterr = 1;
-
-/* Set to an option character which was unrecognized.
-   This must be initialized on some systems to avoid linking in the
-   system's own getopt implementation.  */
-
-int optopt = '?';
-
-/* Describe how to deal with options that follow non-option ARGV-elements.
-
-   If the caller did not specify anything,
-   the default is REQUIRE_ORDER if the environment variable
-   POSIXLY_CORRECT is defined, PERMUTE otherwise.
-
-   REQUIRE_ORDER means don't recognize them as options;
-   stop option processing when the first non-option is seen.
-   This is what Unix does.
-   This mode of operation is selected by either setting the environment
-   variable POSIXLY_CORRECT, or using `+' as the first character
-   of the list of option characters.
-
-   PERMUTE is the default.  We permute the contents of ARGV as we scan,
-   so that eventually all the non-options are at the end.  This allows options
-   to be given in any order, even with programs that were not written to
-   expect this.
-
-   RETURN_IN_ORDER is an option available to programs that were written
-   to expect options and other ARGV-elements in any order and that care about
-   the ordering of the two.  We describe each non-option ARGV-element
-   as if it were the argument of an option with character code 1.
-   Using `-' as the first character of the list of option characters
-   selects this mode of operation.
-
-   The special argument `--' forces an end of option-scanning regardless
-   of the value of `ordering'.  In the case of RETURN_IN_ORDER, only
-   `--' can cause `getopt' to return EOF with `optind' != ARGC.  */
-
-static enum
-{
-  REQUIRE_ORDER, PERMUTE, RETURN_IN_ORDER
-} ordering;
-\f
-#ifdef __GNU_LIBRARY__
-/* We want to avoid inclusion of string.h with non-GNU libraries
-   because there are many ways it can cause trouble.
-   On some systems, it contains special magic macros that don't work
-   in GCC.  */
-#include <string.h>
-#define        my_index        strchr
-#define        my_bcopy(src, dst, n)   memcpy ((dst), (src), (n))
-#else
-
-/* Avoid depending on library functions or files
-   whose names are inconsistent.  */
-
-char *getenv ();
-
-static char *
-my_index (str, chr)
-     const char *str;
-     int chr;
-{
-  while (*str)
-    {
-      if (*str == chr)
-       return (char *) str;
-      str++;
-    }
-  return 0;
-}
-
-static void
-my_bcopy (from, to, size)
-     const char *from;
-     char *to;
-     int size;
-{
-  int i;
-  for (i = 0; i < size; i++)
-    to[i] = from[i];
-}
-#endif                         /* GNU C library.  */
-\f
-/* Handle permutation of arguments.  */
-
-/* Describe the part of ARGV that contains non-options that have
-   been skipped.  `first_nonopt' is the index in ARGV of the first of them;
-   `last_nonopt' is the index after the last of them.  */
-
-static int first_nonopt;
-static int last_nonopt;
-
-/* Exchange two adjacent subsequences of ARGV.
-   One subsequence is elements [first_nonopt,last_nonopt)
-   which contains all the non-options that have been skipped so far.
-   The other is elements [last_nonopt,optind), which contains all
-   the options processed since those non-options were skipped.
-
-   `first_nonopt' and `last_nonopt' are relocated so that they describe
-   the new indices of the non-options in ARGV after they are moved.  */
-
-static void
-exchange (argv)
-     char **argv;
-{
-  int nonopts_size = (last_nonopt - first_nonopt) * sizeof (char *);
-  char **temp = (char **) __alloca (nonopts_size);
-
-  /* Interchange the two blocks of data in ARGV.  */
-
-  my_bcopy ((char *) &argv[first_nonopt], (char *) temp, nonopts_size);
-  my_bcopy ((char *) &argv[last_nonopt], (char *) &argv[first_nonopt],
-           (optind - last_nonopt) * sizeof (char *));
-  my_bcopy ((char *) temp,
-           (char *) &argv[first_nonopt + optind - last_nonopt],
-           nonopts_size);
-
-  /* Update records for the slots the non-options now occupy.  */
-
-  first_nonopt += (optind - last_nonopt);
-  last_nonopt = optind;
-}
-\f
-/* Scan elements of ARGV (whose length is ARGC) for option characters
-   given in OPTSTRING.
-
-   If an element of ARGV starts with '-', and is not exactly "-" or "--",
-   then it is an option element.  The characters of this element
-   (aside from the initial '-') are option characters.  If `getopt'
-   is called repeatedly, it returns successively each of the option characters
-   from each of the option elements.
-
-   If `getopt' finds another option character, it returns that character,
-   updating `optind' and `nextchar' so that the next call to `getopt' can
-   resume the scan with the following option character or ARGV-element.
-
-   If there are no more option characters, `getopt' returns `EOF'.
-   Then `optind' is the index in ARGV of the first ARGV-element
-   that is not an option.  (The ARGV-elements have been permuted
-   so that those that are not options now come last.)
-
-   OPTSTRING is a string containing the legitimate option characters.
-   If an option character is seen that is not listed in OPTSTRING,
-   return '?' after printing an error message.  If you set `opterr' to
-   zero, the error message is suppressed but we still return '?'.
-
-   If a char in OPTSTRING is followed by a colon, that means it wants an arg,
-   so the following text in the same ARGV-element, or the text of the following
-   ARGV-element, is returned in `optarg'.  Two colons mean an option that
-   wants an optional arg; if there is text in the current ARGV-element,
-   it is returned in `optarg', otherwise `optarg' is set to zero.
-
-   If OPTSTRING starts with `-' or `+', it requests different methods of
-   handling the non-option ARGV-elements.
-   See the comments about RETURN_IN_ORDER and REQUIRE_ORDER, above.
-
-   Long-named options begin with `--' instead of `-'.
-   Their names may be abbreviated as long as the abbreviation is unique
-   or is an exact match for some defined option.  If they have an
-   argument, it follows the option name in the same ARGV-element, separated
-   from the option name by a `=', or else the in next ARGV-element.
-   When `getopt' finds a long-named option, it returns 0 if that option's
-   `flag' field is nonzero, the value of the option's `val' field
-   if the `flag' field is zero.
-
-   The elements of ARGV aren't really const, because we permute them.
-   But we pretend they're const in the prototype to be compatible
-   with other systems.
-
-   LONGOPTS is a vector of `struct option' terminated by an
-   element containing a name which is zero.
-
-   LONGIND returns the index in LONGOPT of the long-named option found.
-   It is only valid when a long-named option has been found by the most
-   recent call.
-
-   If LONG_ONLY is nonzero, '-' as well as '--' can introduce
-   long-named options.  */
-
-int
-_getopt_internal (argc, argv, optstring, longopts, longind, long_only)
-     int argc;
-     char *const *argv;
-     const char *optstring;
-     const struct option *longopts;
-     int *longind;
-     int long_only;
-{
-  int option_index;
-
-  optarg = 0;
-
-  /* Initialize the internal data when the first call is made.
-     Start processing options with ARGV-element 1 (since ARGV-element 0
-     is the program name); the sequence of previously skipped
-     non-option ARGV-elements is empty.  */
-
-  if (optind == 0)
-    {
-      first_nonopt = last_nonopt = optind = 1;
-
-      nextchar = NULL;
-
-      /* Determine how to handle the ordering of options and nonoptions.  */
-
-      if (optstring[0] == '-')
-       {
-         ordering = RETURN_IN_ORDER;
-         ++optstring;
-       }
-      else if (optstring[0] == '+')
-       {
-         ordering = REQUIRE_ORDER;
-         ++optstring;
-       }
-      else if (getenv ("POSIXLY_CORRECT") != NULL)
-       ordering = REQUIRE_ORDER;
-      else
-       ordering = PERMUTE;
-    }
-
-  if (nextchar == NULL || *nextchar == '\0')
-    {
-      if (ordering == PERMUTE)
-       {
-         /* If we have just processed some options following some non-options,
-            exchange them so that the options come first.  */
-
-         if (first_nonopt != last_nonopt && last_nonopt != optind)
-           exchange ((char **) argv);
-         else if (last_nonopt != optind)
-           first_nonopt = optind;
-
-         /* Now skip any additional non-options
-            and extend the range of non-options previously skipped.  */
-
-         while (optind < argc
-                && (argv[optind][0] != '-' || argv[optind][1] == '\0')
-#ifdef GETOPT_COMPAT
-                && (longopts == NULL
-                    || argv[optind][0] != '+' || argv[optind][1] == '\0')
-#endif                         /* GETOPT_COMPAT */
-                )
-           optind++;
-         last_nonopt = optind;
-       }
-
-      /* Special ARGV-element `--' means premature end of options.
-        Skip it like a null option,
-        then exchange with previous non-options as if it were an option,
-        then skip everything else like a non-option.  */
-
-      if (optind != argc && !strcmp (argv[optind], "--"))
-       {
-         optind++;
-
-         if (first_nonopt != last_nonopt && last_nonopt != optind)
-           exchange ((char **) argv);
-         else if (first_nonopt == last_nonopt)
-           first_nonopt = optind;
-         last_nonopt = argc;
-
-         optind = argc;
-       }
-
-      /* If we have done all the ARGV-elements, stop the scan
-        and back over any non-options that we skipped and permuted.  */
-
-      if (optind == argc)
-       {
-         /* Set the next-arg-index to point at the non-options
-            that we previously skipped, so the caller will digest them.  */
-         if (first_nonopt != last_nonopt)
-           optind = first_nonopt;
-         return EOF;
-       }
-
-      /* If we have come to a non-option and did not permute it,
-        either stop the scan or describe it to the caller and pass it by.  */
-
-      if ((argv[optind][0] != '-' || argv[optind][1] == '\0')
-#ifdef GETOPT_COMPAT
-         && (longopts == NULL
-             || argv[optind][0] != '+' || argv[optind][1] == '\0')
-#endif                         /* GETOPT_COMPAT */
-         )
-       {
-         if (ordering == REQUIRE_ORDER)
-           return EOF;
-         optarg = argv[optind++];
-         return 1;
-       }
-
-      /* We have found another option-ARGV-element.
-        Start decoding its characters.  */
-
-      nextchar = (argv[optind] + 1
-                 + (longopts != NULL && argv[optind][1] == '-'));
-    }
-
-  if (longopts != NULL
-      && ((argv[optind][0] == '-'
-          && (argv[optind][1] == '-' || long_only))
-#ifdef GETOPT_COMPAT
-         || argv[optind][0] == '+'
-#endif                         /* GETOPT_COMPAT */
-         ))
-    {
-      const struct option *p;
-      char *s = nextchar;
-      int exact = 0;
-      int ambig = 0;
-      const struct option *pfound = NULL;
-      int indfound;
-
-      while (*s && *s != '=')
-       s++;
-
-      /* Test all options for either exact match or abbreviated matches.  */
-      for (p = longopts, option_index = 0; p->name;
-          p++, option_index++)
-       if (!strncmp (p->name, nextchar, s - nextchar))
-         {
-           if (s - nextchar == strlen (p->name))
-             {
-               /* Exact match found.  */
-               pfound = p;
-               indfound = option_index;
-               exact = 1;
-               break;
-             }
-           else if (pfound == NULL)
-             {
-               /* First nonexact match found.  */
-               pfound = p;
-               indfound = option_index;
-             }
-           else
-             /* Second nonexact match found.  */
-             ambig = 1;
-         }
-
-      if (ambig && !exact)
-       {
-         if (opterr)
-           fprintf (stderr, "%s: option `%s' is ambiguous\n",
-                    argv[0], argv[optind]);
-         nextchar += strlen (nextchar);
-         optind++;
-         return '?';
-       }
-
-      if (pfound != NULL)
-       {
-         option_index = indfound;
-         optind++;
-         if (*s)
-           {
-             /* Don't test has_arg with >, because some C compilers don't
-                allow it to be used on enums.  */
-             if (pfound->has_arg)
-               optarg = s + 1;
-             else
-               {
-                 if (opterr)
-                   {
-                     if (argv[optind - 1][1] == '-')
-                       /* --option */
-                       fprintf (stderr,
-                                "%s: option `--%s' doesn't allow an argument\n",
-                                argv[0], pfound->name);
-                     else
-                       /* +option or -option */
-                       fprintf (stderr,
-                            "%s: option `%c%s' doesn't allow an argument\n",
-                            argv[0], argv[optind - 1][0], pfound->name);
-                   }
-                 nextchar += strlen (nextchar);
-                 return '?';
-               }
-           }
-         else if (pfound->has_arg == 1)
-           {
-             if (optind < argc)
-               optarg = argv[optind++];
-             else
-               {
-                 if (opterr)
-                   fprintf (stderr, "%s: option `%s' requires an argument\n",
-                            argv[0], argv[optind - 1]);
-                 nextchar += strlen (nextchar);
-                 return optstring[0] == ':' ? ':' : '?';
-               }
-           }
-         nextchar += strlen (nextchar);
-         if (longind != NULL)
-           *longind = option_index;
-         if (pfound->flag)
-           {
-             *(pfound->flag) = pfound->val;
-             return 0;
-           }
-         return pfound->val;
-       }
-      /* Can't find it as a long option.  If this is not getopt_long_only,
-        or the option starts with '--' or is not a valid short
-        option, then it's an error.
-        Otherwise interpret it as a short option.  */
-      if (!long_only || argv[optind][1] == '-'
-#ifdef GETOPT_COMPAT
-         || argv[optind][0] == '+'
-#endif                         /* GETOPT_COMPAT */
-         || my_index (optstring, *nextchar) == NULL)
-       {
-         if (opterr)
-           {
-             if (argv[optind][1] == '-')
-               /* --option */
-               fprintf (stderr, "%s: unrecognized option `--%s'\n",
-                        argv[0], nextchar);
-             else
-               /* +option or -option */
-               fprintf (stderr, "%s: unrecognized option `%c%s'\n",
-                        argv[0], argv[optind][0], nextchar);
-           }
-         nextchar = (char *) "";
-         optind++;
-         return '?';
-       }
-    }
-
-  /* Look at and handle the next option-character.  */
-
-  {
-    char c = *nextchar++;
-    char *temp = my_index (optstring, c);
-
-    /* Increment `optind' when we start to process its last character.  */
-    if (*nextchar == '\0')
-      ++optind;
-
-    if (temp == NULL || c == ':')
-      {
-       if (opterr)
-         {
-#if 0
-           if (c < 040 || c >= 0177)
-             fprintf (stderr, "%s: unrecognized option, character code 0%o\n",
-                      argv[0], c);
-           else
-             fprintf (stderr, "%s: unrecognized option `-%c'\n", argv[0], c);
-#else
-           /* 1003.2 specifies the format of this message.  */
-           fprintf (stderr, "%s: illegal option -- %c\n", argv[0], c);
-#endif
-         }
-       optopt = c;
-       return '?';
-      }
-    if (temp[1] == ':')
-      {
-       if (temp[2] == ':')
-         {
-           /* This is an option that accepts an argument optionally.  */
-           if (*nextchar != '\0')
-             {
-               optarg = nextchar;
-               optind++;
-             }
-           else
-             optarg = 0;
-           nextchar = NULL;
-         }
-       else
-         {
-           /* This is an option that requires an argument.  */
-           if (*nextchar != '\0')
-             {
-               optarg = nextchar;
-               /* If we end this ARGV-element by taking the rest as an arg,
-                  we must advance to the next element now.  */
-               optind++;
-             }
-           else if (optind == argc)
-             {
-               if (opterr)
-                 {
-#if 0
-                   fprintf (stderr, "%s: option `-%c' requires an argument\n",
-                            argv[0], c);
-#else
-                   /* 1003.2 specifies the format of this message.  */
-                   fprintf (stderr, "%s: option requires an argument -- %c\n",
-                            argv[0], c);
-#endif
-                 }
-               optopt = c;
-               if (optstring[0] == ':')
-                 c = ':';
-               else
-                 c = '?';
-             }
-           else
-             /* We already incremented `optind' once;
-                increment it again when taking next ARGV-elt as argument.  */
-             optarg = argv[optind++];
-           nextchar = NULL;
-         }
-      }
-    return c;
-  }
-}
-
-int
-getopt (argc, argv, optstring)
-     int argc;
-     char *const *argv;
-     const char *optstring;
-{
-  return _getopt_internal (argc, argv, optstring,
-                          (const struct option *) 0,
-                          (int *) 0,
-                          0);
-}
-
-#endif /* _LIBC or not __GNU_LIBRARY__.  */
-\f
-#ifdef TEST
-
-/* Compile with -DTEST to make an executable for use in testing
-   the above definition of `getopt'.  */
-
-int
-main (argc, argv)
-     int argc;
-     char **argv;
-{
-  int c;
-  int digit_optind = 0;
-
-  while (1)
-    {
-      int this_option_optind = optind ? optind : 1;
-
-      c = getopt (argc, argv, "abc:d:0123456789");
-      if (c == EOF)
-       break;
-
-      switch (c)
-       {
-       case '0':
-       case '1':
-       case '2':
-       case '3':
-       case '4':
-       case '5':
-       case '6':
-       case '7':
-       case '8':
-       case '9':
-         if (digit_optind != 0 && digit_optind != this_option_optind)
-           printf ("digits occur in two different argv-elements.\n");
-         digit_optind = this_option_optind;
-         printf ("option %c\n", c);
-         break;
-
-       case 'a':
-         printf ("option a\n");
-         break;
-
-       case 'b':
-         printf ("option b\n");
-         break;
-
-       case 'c':
-         printf ("option c with value `%s'\n", optarg);
-         break;
-
-       case '?':
-         break;
-
-       default:
-         printf ("?? getopt returned character code 0%o ??\n", c);
-       }
-    }
-
-  if (optind < argc)
-    {
-      printf ("non-option ARGV-elements: ");
-      while (optind < argc)
-       printf ("%s ", argv[optind++]);
-      printf ("\n");
-    }
-
-  exit (0);
-}
-
-#endif /* TEST */
diff --git a/lib/doc-support/getopt.h b/lib/doc-support/getopt.h
deleted file mode 100644 (file)
index 5c04533..0000000
+++ /dev/null
@@ -1,132 +0,0 @@
-/* getopt.h - public declarations for getopt. */
-
-/* Copyright (C) 1989, 1990, 1991, 1992, 1993, 2008,2009 Free Software Foundation, Inc.
-
-   This file is part of GNU Bash, the Bourne Again SHell.
-
-   Bash is free software: you can redistribute it and/or modify
-   it under the terms of the GNU General Public License as published by
-   the Free Software Foundation, either version 3 of the License, or
-   (at your option) any later version.
-
-   Bash 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 General Public License for more details.
-
-   You should have received a copy of the GNU General Public License
-   along with Bash.  If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#ifndef _GETOPT_H
-#define _GETOPT_H 1
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-/* For communication from `getopt' to the caller.
-   When `getopt' finds an option that takes an argument,
-   the argument value is returned here.
-   Also, when `ordering' is RETURN_IN_ORDER,
-   each non-option ARGV-element is returned here.  */
-
-extern char *optarg;
-
-/* Index in ARGV of the next element to be scanned.
-   This is used for communication to and from the caller
-   and for communication between successive calls to `getopt'.
-
-   On entry to `getopt', zero means this is the first call; initialize.
-
-   When `getopt' returns EOF, this is the index of the first of the
-   non-option elements that the caller should itself scan.
-
-   Otherwise, `optind' communicates from one call to the next
-   how much of ARGV has been scanned so far.  */
-
-extern int optind;
-
-/* Callers store zero here to inhibit the error message `getopt' prints
-   for unrecognized options.  */
-
-extern int opterr;
-
-/* Set to an option character which was unrecognized.  */
-
-extern int optopt;
-
-/* Describe the long-named options requested by the application.
-   The LONG_OPTIONS argument to getopt_long or getopt_long_only is a vector
-   of `struct option' terminated by an element containing a name which is
-   zero.
-
-   The field `has_arg' is:
-   no_argument         (or 0) if the option does not take an argument,
-   required_argument   (or 1) if the option requires an argument,
-   optional_argument   (or 2) if the option takes an optional argument.
-
-   If the field `flag' is not NULL, it points to a variable that is set
-   to the value given in the field `val' when the option is found, but
-   left unchanged if the option is not found.
-
-   To have a long-named option do something other than set an `int' to
-   a compiled-in constant, such as set a value from `optarg', set the
-   option's `flag' field to zero and its `val' field to a nonzero
-   value (the equivalent single-letter option character, if there is
-   one).  For long options that have a zero `flag' field, `getopt'
-   returns the contents of the `val' field.  */
-
-struct option
-{
-#if    __STDC__
-  const char *name;
-#else
-  char *name;
-#endif
-  /* has_arg can't be an enum because some compilers complain about
-     type mismatches in all the code that assumes it is an int.  */
-  int has_arg;
-  int *flag;
-  int val;
-};
-
-/* Names for the values of the `has_arg' field of `struct option'.  */
-
-#define        no_argument             0
-#define required_argument      1
-#define optional_argument      2
-
-#if __STDC__
-#if defined(__GNU_LIBRARY__)
-/* Many other libraries have conflicting prototypes for getopt, with
-   differences in the consts, in stdlib.h.  To avoid compilation
-   errors, only prototype getopt for the GNU C library.  */
-extern int getopt (int argc, char *const *argv, const char *shortopts);
-#else /* not __GNU_LIBRARY__ */
-extern int getopt ();
-#endif /* not __GNU_LIBRARY__ */
-extern int getopt_long (int argc, char *const *argv, const char *shortopts,
-                       const struct option *longopts, int *longind);
-extern int getopt_long_only (int argc, char *const *argv,
-                            const char *shortopts,
-                            const struct option *longopts, int *longind);
-
-/* Internal only.  Users should not call this directly.  */
-extern int _getopt_internal (int argc, char *const *argv,
-                            const char *shortopts,
-                            const struct option *longopts, int *longind,
-                            int long_only);
-#else /* not __STDC__ */
-extern int getopt ();
-extern int getopt_long ();
-extern int getopt_long_only ();
-
-extern int _getopt_internal ();
-#endif /* not __STDC__ */
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif /* _GETOPT_H */
diff --git a/lib/doc-support/getopt1.c b/lib/doc-support/getopt1.c
deleted file mode 100644 (file)
index f51e6c0..0000000
+++ /dev/null
@@ -1,178 +0,0 @@
-/* getopt1.c - getopt_long and getopt_long_only entry points for GNU getopt.
-
-/* Copyright (C) 1987, 88, 89, 90, 91, 92, 1993, 2008,2009 Free Software Foundation, Inc.
-
-   This file is part of GNU Bash, the Bourne Again SHell.
-
-   Bash is free software: you can redistribute it and/or modify
-   it under the terms of the GNU General Public License as published by
-   the Free Software Foundation, either version 3 of the License, or
-   (at your option) any later version.
-
-   Bash 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 General Public License for more details.
-
-   You should have received a copy of the GNU General Public License
-   along with Bash.  If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#ifdef HAVE_CONFIG_H
-#include "config.h"
-#endif
-
-#include "getopt.h"
-
-#if !__STDC__ && !defined(const) && IN_GCC
-#define const
-#endif
-
-#include <stdio.h>
-
-/* Comment out all this code if we are using the GNU C Library, and are not
-   actually compiling the library itself.  This code is part of the GNU C
-   Library, but also included in many other GNU distributions.  Compiling
-   and linking in this code is a waste when using the GNU C library
-   (especially if it is a shared library).  Rather than having every GNU
-   program understand `configure --with-gnu-libc' and omit the object files,
-   it is simpler to just do this in the source for each such file.  */
-
-#if defined (_LIBC) || !defined (__GNU_LIBRARY__)
-
-
-/* This needs to come after some library #include
-   to get __GNU_LIBRARY__ defined.  */
-#ifdef __GNU_LIBRARY__
-#include <stdlib.h>
-#else
-char *getenv ();
-#endif
-
-#ifndef        NULL
-#define NULL 0
-#endif
-
-int
-getopt_long (argc, argv, options, long_options, opt_index)
-     int argc;
-     char *const *argv;
-     const char *options;
-     const struct option *long_options;
-     int *opt_index;
-{
-  return _getopt_internal (argc, argv, options, long_options, opt_index, 0);
-}
-
-/* Like getopt_long, but '-' as well as '--' can indicate a long option.
-   If an option that starts with '-' (not '--') doesn't match a long option,
-   but does match a short option, it is parsed as a short option
-   instead.  */
-
-int
-getopt_long_only (argc, argv, options, long_options, opt_index)
-     int argc;
-     char *const *argv;
-     const char *options;
-     const struct option *long_options;
-     int *opt_index;
-{
-  return _getopt_internal (argc, argv, options, long_options, opt_index, 1);
-}
-
-
-#endif /* _LIBC or not __GNU_LIBRARY__.  */
-\f
-#ifdef TEST
-
-#include <stdio.h>
-
-int
-main (argc, argv)
-     int argc;
-     char **argv;
-{
-  int c;
-  int digit_optind = 0;
-
-  while (1)
-    {
-      int this_option_optind = optind ? optind : 1;
-      int option_index = 0;
-      static struct option long_options[] =
-      {
-       {"add", 1, 0, 0},
-       {"append", 0, 0, 0},
-       {"delete", 1, 0, 0},
-       {"verbose", 0, 0, 0},
-       {"create", 0, 0, 0},
-       {"file", 1, 0, 0},
-       {0, 0, 0, 0}
-      };
-
-      c = getopt_long (argc, argv, "abc:d:0123456789",
-                      long_options, &option_index);
-      if (c == EOF)
-       break;
-
-      switch (c)
-       {
-       case 0:
-         printf ("option %s", long_options[option_index].name);
-         if (optarg)
-           printf (" with arg %s", optarg);
-         printf ("\n");
-         break;
-
-       case '0':
-       case '1':
-       case '2':
-       case '3':
-       case '4':
-       case '5':
-       case '6':
-       case '7':
-       case '8':
-       case '9':
-         if (digit_optind != 0 && digit_optind != this_option_optind)
-           printf ("digits occur in two different argv-elements.\n");
-         digit_optind = this_option_optind;
-         printf ("option %c\n", c);
-         break;
-
-       case 'a':
-         printf ("option a\n");
-         break;
-
-       case 'b':
-         printf ("option b\n");
-         break;
-
-       case 'c':
-         printf ("option c with value `%s'\n", optarg);
-         break;
-
-       case 'd':
-         printf ("option d with value `%s'\n", optarg);
-         break;
-
-       case '?':
-         break;
-
-       default:
-         printf ("?? getopt returned character code 0%o ??\n", c);
-       }
-    }
-
-  if (optind < argc)
-    {
-      printf ("non-option ARGV-elements: ");
-      while (optind < argc)
-       printf ("%s ", argv[optind++]);
-      printf ("\n");
-    }
-
-  exit (0);
-}
-
-#endif /* TEST */
diff --git a/lib/doc-support/texindex.c b/lib/doc-support/texindex.c
deleted file mode 100644 (file)
index 646df59..0000000
+++ /dev/null
@@ -1,1665 +0,0 @@
-/* Prepare TeX index dribble output into an actual index.
-
-   Version 1.45
-
-   Copyright (C) 1987, 1991, 1992 Free Software Foundation, Inc.
-
-   This program is free software: you can redistribute it and/or modify
-   it under the terms of the GNU General Public License as published by
-   the Free Software Foundation, either version 3 of the License, or
-   (at your option) any later version.
-
-   This program 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 General Public License for more details.
-
-   You should have received a copy of the GNU General Public License
-   along with this program.  If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#include <stdio.h>
-#include <ctype.h>
-#include <errno.h>
-#include "getopt.h"
-#include "bashansi.h"
-
-#if !defined (errno)
-extern int errno;
-#endif
-
-#if defined (HAVE_UNISTD_H)
-#  include <unistd.h>
-#else /* !HAVE_UNISTD_H */
-extern long lseek ();
-#endif /* !HAVE_UNISTD_H */
-
-extern char *mktemp ();
-
-#if !defined (HAVE_STRERROR)
-extern int sys_nerr;
-extern char *sys_errlist[];
-#endif
-
-#include <sys/types.h>
-
-#if defined (_AIX) || !defined (_POSIX_VERSION)
-#  include <sys/file.h>
-#endif
-
-#include <fcntl.h>
-
-#define TI_NO_ERROR 0
-#define TI_FATAL_ERROR 1
-
-#if !defined (SEEK_SET)
-#  define SEEK_SET 0
-#  define SEEK_CUR 1
-#  define SEEK_END 2
-#endif /* !SEEK_SET */
-
-/* When sorting in core, this structure describes one line
-   and the position and length of its first keyfield.  */
-struct lineinfo
-{
-  char *text;          /* The actual text of the line. */
-  union {
-    char *text;                /* The start of the key (for textual comparison). */
-    long number;       /* The numeric value (for numeric comparison). */
-  } key;
-  long keylen;         /* Length of KEY field. */
-};
-
-/* This structure describes a field to use as a sort key. */
-struct keyfield
-{
-  int startwords;      /* Number of words to skip. */
-  int startchars;      /* Number of additional chars to skip. */
-  int endwords;                /* Number of words to ignore at end. */
-  int endchars;                /* Ditto for characters of last word. */
-  char ignore_blanks;  /* Non-zero means ignore spaces and tabs. */
-  char fold_case;      /* Non-zero means case doesn't matter. */
-  char reverse;                /* Non-zero means compare in reverse order. */
-  char numeric;                /* Non-zeros means field is ASCII numeric. */
-  char positional;     /* Sort according to file position. */
-  char braced;         /* Count balanced-braced groupings as fields. */
-};
-
-/* Vector of keyfields to use. */
-struct keyfield keyfields[3];
-
-/* Number of keyfields stored in that vector.  */
-int num_keyfields = 3;
-
-/* Vector of input file names, terminated with a null pointer. */
-char **infiles;
-
-/* Vector of corresponding output file names, or NULL, meaning default it
-   (add an `s' to the end). */
-char **outfiles;
-
-/* Length of `infiles'. */
-int num_infiles;
-
-/* Pointer to the array of pointers to lines being sorted. */
-char **linearray;
-
-/* The allocated length of `linearray'. */
-long nlines;
-
-/* Directory to use for temporary files.  On Unix, it ends with a slash.  */
-char *tempdir;
-
-/* Start of filename to use for temporary files.  */
-char *tempbase;
-
-/* Number of last temporary file.  */
-int tempcount;
-
-/* Number of last temporary file already deleted.
-   Temporary files are deleted by `flush_tempfiles' in order of creation.  */
-int last_deleted_tempcount;
-
-/* During in-core sort, this points to the base of the data block
-   which contains all the lines of data.  */
-char *text_base;
-
-/* Additional command switches .*/
-
-/* Nonzero means do not delete tempfiles -- for debugging. */
-int keep_tempfiles;
-
-/* The name this program was run with. */
-char *program_name;
-
-/* Forward declarations of functions in this file. */
-
-void decode_command ();
-void sort_in_core ();
-void sort_offline ();
-char **parsefile ();
-char *find_field ();
-char *find_pos ();
-long find_value ();
-char *find_braced_pos ();
-char *find_braced_end ();
-void writelines ();
-int compare_field ();
-int compare_full ();
-long readline ();
-int merge_files ();
-int merge_direct ();
-void pfatal_with_name ();
-void fatal ();
-void error ();
-void *xmalloc (), *xrealloc ();
-char *concat ();
-char *maketempname ();
-void flush_tempfiles ();
-char *tempcopy ();
-\f
-#define MAX_IN_CORE_SORT 500000
-
-void
-main (argc, argv)
-     int argc;
-     char **argv;
-{
-  int i;
-
-  tempcount = 0;
-  last_deleted_tempcount = 0;
-  program_name = argv[0];
-
-  /* Describe the kind of sorting to do. */
-  /* The first keyfield uses the first braced field and folds case. */
-  keyfields[0].braced = 1;
-  keyfields[0].fold_case = 1;
-  keyfields[0].endwords = -1;
-  keyfields[0].endchars = -1;
-
-  /* The second keyfield uses the second braced field, numerically. */
-  keyfields[1].braced = 1;
-  keyfields[1].numeric = 1;
-  keyfields[1].startwords = 1;
-  keyfields[1].endwords = -1;
-  keyfields[1].endchars = -1;
-
-  /* The third keyfield (which is ignored while discarding duplicates)
-     compares the whole line. */
-  keyfields[2].endwords = -1;
-  keyfields[2].endchars = -1;
-
-  decode_command (argc, argv);
-
-  tempbase = mktemp (concat ("txiXXXXXX", "", ""));
-
-  /* Process input files completely, one by one.  */
-
-  for (i = 0; i < num_infiles; i++)
-    {
-      int desc;
-      long ptr;
-      char *outfile;
-
-      desc = open (infiles[i], O_RDONLY, 0);
-      if (desc < 0)
-       pfatal_with_name (infiles[i]);
-      lseek (desc, 0L, SEEK_END);
-      ptr = lseek (desc, 0L, SEEK_CUR);
-
-      close (desc);
-
-      outfile = outfiles[i];
-      if (!outfile)
-       {
-         outfile = concat (infiles[i], "s", "");
-       }
-
-      if (ptr < MAX_IN_CORE_SORT)
-       /* Sort a small amount of data. */
-       sort_in_core (infiles[i], ptr, outfile);
-      else
-       sort_offline (infiles[i], ptr, outfile);
-    }
-
-  flush_tempfiles (tempcount);
-  exit (TI_NO_ERROR);
-}
-\f
-void
-usage ()
-{
-  fprintf (stderr, "\
-Usage: %s [-k] infile [-o outfile] ...\n", program_name);
-  exit (1);
-}
-
-/* Decode the command line arguments to set the parameter variables
-   and set up the vector of keyfields and the vector of input files. */
-
-void
-decode_command (argc, argv)
-     int argc;
-     char **argv;
-{
-  int optc;
-  char **ip;
-  char **op;
-
-  /* Store default values into parameter variables. */
-
-  tempdir = getenv ("TMPDIR");
-  if (tempdir == NULL)
-    tempdir = "/tmp/";
-  else
-    tempdir = concat (tempdir, "/", "");
-
-  keep_tempfiles = 0;
-
-  /* Allocate ARGC input files, which must be enough.  */
-
-  infiles = (char **) xmalloc (argc * sizeof (char *));
-  outfiles = (char **) xmalloc (argc * sizeof (char *));
-  ip = infiles;
-  op = outfiles;
-
-  while ((optc = getopt (argc, argv, "-ko:")) != EOF)
-    {
-      switch (optc)
-       {
-       case 1:         /* Non-option filename. */
-         *ip++ = optarg;
-         *op++ = NULL;
-         break;
-
-       case 'k':
-         keep_tempfiles = 1;
-         break;
-
-       case 'o':
-         if (op > outfiles)
-           *(op - 1) = optarg;
-         break;
-
-       default:
-         usage ();
-       }
-    }
-
-  /* Record number of keyfields and terminate list of filenames. */
-  num_infiles = ip - infiles;
-  *ip = 0;
-  if (num_infiles == 0)
-    usage ();
-}
-\f
-/* Return a name for a temporary file. */
-
-char *
-maketempname (count)
-     int count;
-{
-  char tempsuffix[10];
-  sprintf (tempsuffix, "%d", count);
-  return concat (tempdir, tempbase, tempsuffix);
-}
-
-/* Delete all temporary files up to TO_COUNT. */
-
-void
-flush_tempfiles (to_count)
-     int to_count;
-{
-  if (keep_tempfiles)
-    return;
-  while (last_deleted_tempcount < to_count)
-    unlink (maketempname (++last_deleted_tempcount));
-}
-
-/* Copy the input file open on IDESC into a temporary file
-   and return the temporary file name. */
-
-#define BUFSIZE 1024
-
-char *
-tempcopy (idesc)
-     int idesc;
-{
-  char *outfile = maketempname (++tempcount);
-  int odesc;
-  char buffer[BUFSIZE];
-
-  odesc = open (outfile, O_WRONLY | O_CREAT, 0666);
-
-  if (odesc < 0)
-    pfatal_with_name (outfile);
-
-  while (1)
-    {
-      int nread = read (idesc, buffer, BUFSIZE);
-      write (odesc, buffer, nread);
-      if (!nread)
-       break;
-    }
-
-  close (odesc);
-
-  return outfile;
-}
-\f
-/* Compare LINE1 and LINE2 according to the specified set of keyfields. */
-
-int
-compare_full (line1, line2)
-     char **line1, **line2;
-{
-  int i;
-
-  /* Compare using the first keyfield;
-     if that does not distinguish the lines, try the second keyfield;
-     and so on. */
-
-  for (i = 0; i < num_keyfields; i++)
-    {
-      long length1, length2;
-      char *start1 = find_field (&keyfields[i], *line1, &length1);
-      char *start2 = find_field (&keyfields[i], *line2, &length2);
-      int tem = compare_field (&keyfields[i], start1, length1, *line1 - text_base,
-                              start2, length2, *line2 - text_base);
-      if (tem)
-       {
-         if (keyfields[i].reverse)
-           return -tem;
-         return tem;
-       }
-    }
-
-  return 0;                    /* Lines match exactly. */
-}
-
-/* Compare LINE1 and LINE2, described by structures
-   in which the first keyfield is identified in advance.
-   For positional sorting, assumes that the order of the lines in core
-   reflects their nominal order.  */
-
-int
-compare_prepared (line1, line2)
-     struct lineinfo *line1, *line2;
-{
-  int i;
-  int tem;
-  char *text1, *text2;
-
-  /* Compare using the first keyfield, which has been found for us already. */
-  if (keyfields->positional)
-    {
-      if (line1->text - text_base > line2->text - text_base)
-       tem = 1;
-      else
-       tem = -1;
-    }
-  else if (keyfields->numeric)
-    tem = line1->key.number - line2->key.number;
-  else
-    tem = compare_field (keyfields, line1->key.text, line1->keylen, 0,
-                        line2->key.text, line2->keylen, 0);
-  if (tem)
-    {
-      if (keyfields->reverse)
-       return -tem;
-      return tem;
-    }
-
-  text1 = line1->text;
-  text2 = line2->text;
-
-  /* Compare using the second keyfield;
-     if that does not distinguish the lines, try the third keyfield;
-     and so on. */
-
-  for (i = 1; i < num_keyfields; i++)
-    {
-      long length1, length2;
-      char *start1 = find_field (&keyfields[i], text1, &length1);
-      char *start2 = find_field (&keyfields[i], text2, &length2);
-      int tem = compare_field (&keyfields[i], start1, length1, text1 - text_base,
-                              start2, length2, text2 - text_base);
-      if (tem)
-       {
-         if (keyfields[i].reverse)
-           return -tem;
-         return tem;
-       }
-    }
-
-  return 0;                    /* Lines match exactly. */
-}
-
-/* Like compare_full but more general.
-   You can pass any strings, and you can say how many keyfields to use.
-   POS1 and POS2 should indicate the nominal positional ordering of
-   the two lines in the input.  */
-
-int
-compare_general (str1, str2, pos1, pos2, use_keyfields)
-     char *str1, *str2;
-     long pos1, pos2;
-     int use_keyfields;
-{
-  int i;
-
-  /* Compare using the first keyfield;
-     if that does not distinguish the lines, try the second keyfield;
-     and so on. */
-
-  for (i = 0; i < use_keyfields; i++)
-    {
-      long length1, length2;
-      char *start1 = find_field (&keyfields[i], str1, &length1);
-      char *start2 = find_field (&keyfields[i], str2, &length2);
-      int tem = compare_field (&keyfields[i], start1, length1, pos1,
-                              start2, length2, pos2);
-      if (tem)
-       {
-         if (keyfields[i].reverse)
-           return -tem;
-         return tem;
-       }
-    }
-
-  return 0;                    /* Lines match exactly. */
-}
-
-/* Find the start and length of a field in STR according to KEYFIELD.
-   A pointer to the starting character is returned, and the length
-   is stored into the int that LENGTHPTR points to.  */
-
-char *
-find_field (keyfield, str, lengthptr)
-     struct keyfield *keyfield;
-     char *str;
-     long *lengthptr;
-{
-  char *start;
-  char *end;
-  char *(*fun) ();
-
-  if (keyfield->braced)
-    fun = find_braced_pos;
-  else
-    fun = find_pos;
-
-  start = (*fun) (str, keyfield->startwords, keyfield->startchars,
-                 keyfield->ignore_blanks);
-  if (keyfield->endwords < 0)
-    {
-      if (keyfield->braced)
-       end = find_braced_end (start);
-      else
-       {
-         end = start;
-         while (*end && *end != '\n')
-           end++;
-       }
-    }
-  else
-    {
-      end = (*fun) (str, keyfield->endwords, keyfield->endchars, 0);
-      if (end - str < start - str)
-       end = start;
-    }
-  *lengthptr = end - start;
-  return start;
-}
-
-/* Return a pointer to a specified place within STR,
-   skipping (from the beginning) WORDS words and then CHARS chars.
-   If IGNORE_BLANKS is nonzero, we skip all blanks
-   after finding the specified word.  */
-
-char *
-find_pos (str, words, chars, ignore_blanks)
-     char *str;
-     int words, chars;
-     int ignore_blanks;
-{
-  int i;
-  char *p = str;
-
-  for (i = 0; i < words; i++)
-    {
-      char c;
-      /* Find next bunch of nonblanks and skip them. */
-      while ((c = *p) == ' ' || c == '\t')
-       p++;
-      while ((c = *p) && c != '\n' && !(c == ' ' || c == '\t'))
-       p++;
-      if (!*p || *p == '\n')
-       return p;
-    }
-
-  while (*p == ' ' || *p == '\t')
-    p++;
-
-  for (i = 0; i < chars; i++)
-    {
-      if (!*p || *p == '\n')
-       break;
-      p++;
-    }
-  return p;
-}
-
-/* Like find_pos but assumes that each field is surrounded by braces
-   and that braces within fields are balanced. */
-
-char *
-find_braced_pos (str, words, chars, ignore_blanks)
-     char *str;
-     int words, chars;
-     int ignore_blanks;
-{
-  int i;
-  int bracelevel;
-  char *p = str;
-  char c;
-
-  for (i = 0; i < words; i++)
-    {
-      bracelevel = 1;
-      while ((c = *p++) != '{' && c != '\n' && c)
-       /* Do nothing. */ ;
-      if (c != '{')
-       return p - 1;
-      while (bracelevel)
-       {
-         c = *p++;
-         if (c == '{')
-           bracelevel++;
-         if (c == '}')
-           bracelevel--;
-         if (c == 0 || c == '\n')
-           return p - 1;
-       }
-    }
-
-  while ((c = *p++) != '{' && c != '\n' && c)
-    /* Do nothing. */ ;
-
-  if (c != '{')
-    return p - 1;
-
-  if (ignore_blanks)
-    while ((c = *p) == ' ' || c == '\t')
-      p++;
-
-  for (i = 0; i < chars; i++)
-    {
-      if (!*p || *p == '\n')
-       break;
-      p++;
-    }
-  return p;
-}
-
-/* Find the end of the balanced-brace field which starts at STR.
-   The position returned is just before the closing brace. */
-
-char *
-find_braced_end (str)
-     char *str;
-{
-  int bracelevel;
-  char *p = str;
-  char c;
-
-  bracelevel = 1;
-  while (bracelevel)
-    {
-      c = *p++;
-      if (c == '{')
-       bracelevel++;
-      if (c == '}')
-       bracelevel--;
-      if (c == 0 || c == '\n')
-       return p - 1;
-    }
-  return p - 1;
-}
-
-long
-find_value (start, length)
-     char *start;
-     long length;
-{
-  while (length != 0L)
-    {
-      if (isdigit (*start))
-       return atol (start);
-      length--;
-      start++;
-    }
-  return 0l;
-}
-
-/* Vector used to translate characters for comparison.
-   This is how we make all alphanumerics follow all else,
-   and ignore case in the first sorting.  */
-int char_order[256];
-
-void
-init_char_order ()
-{
-  int i;
-  for (i = 1; i < 256; i++)
-    char_order[i] = i;
-
-  for (i = '0'; i <= '9'; i++)
-    char_order[i] += 512;
-
-  for (i = 'a'; i <= 'z'; i++)
-    {
-      char_order[i] = 512 + i;
-      char_order[i + 'A' - 'a'] = 512 + i;
-    }
-}
-
-/* Compare two fields (each specified as a start pointer and a character count)
-   according to KEYFIELD.
-   The sign of the value reports the relation between the fields. */
-
-int
-compare_field (keyfield, start1, length1, pos1, start2, length2, pos2)
-     struct keyfield *keyfield;
-     char *start1;
-     long length1;
-     long pos1;
-     char *start2;
-     long length2;
-     long pos2;
-{
-  if (keyfields->positional)
-    {
-      if (pos1 > pos2)
-       return 1;
-      else
-       return -1;
-    }
-  if (keyfield->numeric)
-    {
-      long value = find_value (start1, length1) - find_value (start2, length2);
-      if (value > 0)
-       return 1;
-      if (value < 0)
-       return -1;
-      return 0;
-    }
-  else
-    {
-      char *p1 = start1;
-      char *p2 = start2;
-      char *e1 = start1 + length1;
-      char *e2 = start2 + length2;
-
-      while (1)
-       {
-         int c1, c2;
-
-         if (p1 == e1)
-           c1 = 0;
-         else
-           c1 = *p1++;
-         if (p2 == e2)
-           c2 = 0;
-         else
-           c2 = *p2++;
-
-         if (char_order[c1] != char_order[c2])
-           return char_order[c1] - char_order[c2];
-         if (!c1)
-           break;
-       }
-
-      /* Strings are equal except possibly for case.  */
-      p1 = start1;
-      p2 = start2;
-      while (1)
-       {
-         int c1, c2;
-
-         if (p1 == e1)
-           c1 = 0;
-         else
-           c1 = *p1++;
-         if (p2 == e2)
-           c2 = 0;
-         else
-           c2 = *p2++;
-
-         if (c1 != c2)
-           /* Reverse sign here so upper case comes out last.  */
-           return c2 - c1;
-         if (!c1)
-           break;
-       }
-
-      return 0;
-    }
-}
-\f
-/* A `struct linebuffer' is a structure which holds a line of text.
-   `readline' reads a line from a stream into a linebuffer
-   and works regardless of the length of the line.  */
-
-struct linebuffer
-{
-  long size;
-  char *buffer;
-};
-
-/* Initialize LINEBUFFER for use. */
-
-void
-initbuffer (linebuffer)
-     struct linebuffer *linebuffer;
-{
-  linebuffer->size = 200;
-  linebuffer->buffer = (char *) xmalloc (200);
-}
-
-/* Read a line of text from STREAM into LINEBUFFER.
-   Return the length of the line.  */
-
-long
-readline (linebuffer, stream)
-     struct linebuffer *linebuffer;
-     FILE *stream;
-{
-  char *buffer = linebuffer->buffer;
-  char *p = linebuffer->buffer;
-  char *end = p + linebuffer->size;
-
-  while (1)
-    {
-      int c = getc (stream);
-      if (p == end)
-       {
-         buffer = (char *) xrealloc (buffer, linebuffer->size *= 2);
-         p += buffer - linebuffer->buffer;
-         end += buffer - linebuffer->buffer;
-         linebuffer->buffer = buffer;
-       }
-      if (c < 0 || c == '\n')
-       {
-         *p = 0;
-         break;
-       }
-      *p++ = c;
-    }
-
-  return p - buffer;
-}
-\f
-/* Sort an input file too big to sort in core.  */
-
-void
-sort_offline (infile, nfiles, total, outfile)
-     char *infile;
-     int nfiles;
-     long total;
-     char *outfile;
-{
-  /* More than enough. */
-  int ntemps = 2 * (total + MAX_IN_CORE_SORT - 1) / MAX_IN_CORE_SORT;
-  char **tempfiles = (char **) xmalloc (ntemps * sizeof (char *));
-  FILE *istream = fopen (infile, "r");
-  int i;
-  struct linebuffer lb;
-  long linelength;
-  int failure = 0;
-
-  initbuffer (&lb);
-
-  /* Read in one line of input data.  */
-
-  linelength = readline (&lb, istream);
-
-  if (lb.buffer[0] != '\\' && lb.buffer[0] != '@')
-    {
-      error ("%s: not a texinfo index file", infile);
-      return;
-    }
-
-  /* Split up the input into `ntemps' temporary files, or maybe fewer,
-     and put the new files' names into `tempfiles' */
-
-  for (i = 0; i < ntemps; i++)
-    {
-      char *outname = maketempname (++tempcount);
-      FILE *ostream = fopen (outname, "w");
-      long tempsize = 0;
-
-      if (!ostream)
-       pfatal_with_name (outname);
-      tempfiles[i] = outname;
-
-      /* Copy lines into this temp file as long as it does not make file
-        "too big" or until there are no more lines.  */
-
-      while (tempsize + linelength + 1 <= MAX_IN_CORE_SORT)
-       {
-         tempsize += linelength + 1;
-         fputs (lb.buffer, ostream);
-         putc ('\n', ostream);
-
-         /* Read another line of input data.  */
-
-         linelength = readline (&lb, istream);
-         if (!linelength && feof (istream))
-           break;
-
-         if (lb.buffer[0] != '\\' && lb.buffer[0] != '@')
-           {
-             error ("%s: not a texinfo index file", infile);
-             failure = 1;
-             goto fail;
-           }
-       }
-      fclose (ostream);
-      if (feof (istream))
-       break;
-    }
-
-  free (lb.buffer);
-
-fail:
-  /* Record number of temp files we actually needed.  */
-
-  ntemps = i;
-
-  /* Sort each tempfile into another tempfile.
-    Delete the first set of tempfiles and put the names of the second
-    into `tempfiles'. */
-
-  for (i = 0; i < ntemps; i++)
-    {
-      char *newtemp = maketempname (++tempcount);
-      sort_in_core (&tempfiles[i], MAX_IN_CORE_SORT, newtemp);
-      if (!keep_tempfiles)
-       unlink (tempfiles[i]);
-      tempfiles[i] = newtemp;
-    }
-
-  if (failure)
-    return;
-
-  /* Merge the tempfiles together and indexify. */
-
-  merge_files (tempfiles, ntemps, outfile);
-}
-\f
-/* Sort INFILE, whose size is TOTAL,
-   assuming that is small enough to be done in-core,
-   then indexify it and send the output to OUTFILE (or to stdout).  */
-
-void
-sort_in_core (infile, total, outfile)
-     char *infile;
-     long total;
-     char *outfile;
-{
-  char **nextline;
-  char *data = (char *) xmalloc (total + 1);
-  char *file_data;
-  long file_size;
-  int i;
-  FILE *ostream = stdout;
-  struct lineinfo *lineinfo;
-
-  /* Read the contents of the file into the moby array `data'. */
-
-  int desc = open (infile, O_RDONLY, 0);
-
-  if (desc < 0)
-    fatal ("failure reopening %s", infile);
-  for (file_size = 0;;)
-    {
-      i = read (desc, data + file_size, total - file_size);
-      if (i <= 0)
-       break;
-      file_size += i;
-    }
-  file_data = data;
-  data[file_size] = 0;
-
-  close (desc);
-
-  if (file_size > 0 && data[0] != '\\' && data[0] != '@')
-    {
-      error ("%s: not a texinfo index file", infile);
-      return;
-    }
-
-  init_char_order ();
-
-  /* Sort routines want to know this address. */
-
-  text_base = data;
-
-  /* Create the array of pointers to lines, with a default size
-     frequently enough.  */
-
-  nlines = total / 50;
-  if (!nlines)
-    nlines = 2;
-  linearray = (char **) xmalloc (nlines * sizeof (char *));
-
-  /* `nextline' points to the next free slot in this array.
-     `nlines' is the allocated size.  */
-
-  nextline = linearray;
-
-  /* Parse the input file's data, and make entries for the lines.  */
-
-  nextline = parsefile (infile, nextline, file_data, file_size);
-  if (nextline == 0)
-    {
-      error ("%s: not a texinfo index file", infile);
-      return;
-    }
-
-  /* Sort the lines. */
-
-  /* If we have enough space, find the first keyfield of each line in advance.
-     Make a `struct lineinfo' for each line, which records the keyfield
-     as well as the line, and sort them.  */
-
-  lineinfo = (struct lineinfo *) malloc ((nextline - linearray) * sizeof (struct lineinfo));
-
-  if (lineinfo)
-    {
-      struct lineinfo *lp;
-      char **p;
-
-      for (lp = lineinfo, p = linearray; p != nextline; lp++, p++)
-       {
-         lp->text = *p;
-         lp->key.text = find_field (keyfields, *p, &lp->keylen);
-         if (keyfields->numeric)
-           lp->key.number = find_value (lp->key.text, lp->keylen);
-       }
-
-      qsort (lineinfo, nextline - linearray, sizeof (struct lineinfo), compare_prepared);
-
-      for (lp = lineinfo, p = linearray; p != nextline; lp++, p++)
-       *p = lp->text;
-
-      free (lineinfo);
-    }
-  else
-    qsort (linearray, nextline - linearray, sizeof (char *), compare_full);
-
-  /* Open the output file. */
-
-  if (outfile)
-    {
-      ostream = fopen (outfile, "w");
-      if (!ostream)
-       pfatal_with_name (outfile);
-    }
-
-  writelines (linearray, nextline - linearray, ostream);
-  if (outfile)
-    fclose (ostream);
-
-  free (linearray);
-  free (data);
-}
-\f
-/* Parse an input string in core into lines.
-   DATA is the input string, and SIZE is its length.
-   Data goes in LINEARRAY starting at NEXTLINE.
-   The value returned is the first entry in LINEARRAY still unused.
-   Value 0 means input file contents are invalid.  */
-
-char **
-parsefile (filename, nextline, data, size)
-     char *filename;
-     char **nextline;
-     char *data;
-     long size;
-{
-  char *p, *end;
-  char **line = nextline;
-
-  p = data;
-  end = p + size;
-  *end = 0;
-
-  while (p != end)
-    {
-      if (p[0] != '\\' && p[0] != '@')
-       return 0;
-
-      *line = p;
-      while (*p && *p != '\n')
-       p++;
-      if (p != end)
-       p++;
-
-      line++;
-      if (line == linearray + nlines)
-       {
-         char **old = linearray;
-         linearray = (char **) xrealloc (linearray, sizeof (char *) * (nlines *= 4));
-         line += linearray - old;
-       }
-    }
-
-  return line;
-}
-\f
-/* Indexification is a filter applied to the sorted lines
-   as they are being written to the output file.
-   Multiple entries for the same name, with different page numbers,
-   get combined into a single entry with multiple page numbers.
-   The first braced field, which is used for sorting, is discarded.
-   However, its first character is examined, folded to lower case,
-   and if it is different from that in the previous line fed to us
-   a \initial line is written with one argument, the new initial.
-
-   If an entry has four braced fields, then the second and third
-   constitute primary and secondary names.
-   In this case, each change of primary name
-   generates a \primary line which contains only the primary name,
-   and in between these are \secondary lines which contain
-   just a secondary name and page numbers. */
-
-/* The last primary name we wrote a \primary entry for.
-   If only one level of indexing is being done, this is the last name seen. */
-char *lastprimary;
-/* Length of storage allocated for lastprimary. */
-int lastprimarylength;
-
-/* Similar, for the secondary name. */
-char *lastsecondary;
-int lastsecondarylength;
-
-/* Zero if we are not in the middle of writing an entry.
-   One if we have written the beginning of an entry but have not
-   yet written any page numbers into it.
-   Greater than one if we have written the beginning of an entry
-   plus at least one page number. */
-int pending;
-
-/* The initial (for sorting purposes) of the last primary entry written.
-   When this changes, a \initial {c} line is written */
-
-char *lastinitial;
-
-int lastinitiallength;
-
-/* When we need a string of length 1 for the value of lastinitial,
-   store it here.  */
-
-char lastinitial1[2];
-
-/* Initialize static storage for writing an index. */
-
-static void
-xbzero(s, n)
-     char *s;
-     int n;
-{
-  register char *p;
-  for (p = s; n--; )
-    *p++ = '\0';
-}
-
-void
-init_index ()
-{
-  pending = 0;
-  lastinitial = lastinitial1;
-  lastinitial1[0] = 0;
-  lastinitial1[1] = 0;
-  lastinitiallength = 0;
-  lastprimarylength = 100;
-  lastprimary = (char *) xmalloc (lastprimarylength + 1);
-  xbzero (lastprimary, lastprimarylength + 1);
-  lastsecondarylength = 100;
-  lastsecondary = (char *) xmalloc (lastsecondarylength + 1);
-  xbzero (lastsecondary, lastsecondarylength + 1);
-}
-
-/* Indexify.  Merge entries for the same name,
-   insert headers for each initial character, etc.  */
-
-void
-indexify (line, ostream)
-     char *line;
-     FILE *ostream;
-{
-  char *primary, *secondary, *pagenumber;
-  int primarylength, secondarylength = 0, pagelength;
-  int nosecondary;
-  int initiallength;
-  char *initial;
-  char initial1[2];
-  register char *p;
-
-  /* First, analyze the parts of the entry fed to us this time. */
-
-  p = find_braced_pos (line, 0, 0, 0);
-  if (*p == '{')
-    {
-      initial = p;
-      /* Get length of inner pair of braces starting at `p',
-        including that inner pair of braces.  */
-      initiallength = find_braced_end (p + 1) + 1 - p;
-    }
-  else
-    {
-      initial = initial1;
-      initial1[0] = *p;
-      initial1[1] = 0;
-      initiallength = 1;
-
-      if (initial1[0] >= 'a' && initial1[0] <= 'z')
-       initial1[0] -= 040;
-    }
-
-  pagenumber = find_braced_pos (line, 1, 0, 0);
-  pagelength = find_braced_end (pagenumber) - pagenumber;
-  if (pagelength == 0)
-    abort ();
-
-  primary = find_braced_pos (line, 2, 0, 0);
-  primarylength = find_braced_end (primary) - primary;
-
-  secondary = find_braced_pos (line, 3, 0, 0);
-  nosecondary = !*secondary;
-  if (!nosecondary)
-    secondarylength = find_braced_end (secondary) - secondary;
-
-  /* If the primary is different from before, make a new primary entry. */
-  if (strncmp (primary, lastprimary, primarylength))
-    {
-      /* Close off current secondary entry first, if one is open. */
-      if (pending)
-       {
-         fputs ("}\n", ostream);
-         pending = 0;
-       }
-
-      /* If this primary has a different initial, include an entry for
-        the initial. */
-      if (initiallength != lastinitiallength ||
-         strncmp (initial, lastinitial, initiallength))
-       {
-         fprintf (ostream, "\\initial {");
-         fwrite (initial, 1, initiallength, ostream);
-         fprintf (ostream, "}\n", initial);
-         if (initial == initial1)
-           {
-             lastinitial = lastinitial1;
-             *lastinitial1 = *initial1;
-           }
-         else
-           {
-             lastinitial = initial;
-           }
-         lastinitiallength = initiallength;
-       }
-
-      /* Make the entry for the primary.  */
-      if (nosecondary)
-       fputs ("\\entry {", ostream);
-      else
-       fputs ("\\primary {", ostream);
-      fwrite (primary, primarylength, 1, ostream);
-      if (nosecondary)
-       {
-         fputs ("}{", ostream);
-         pending = 1;
-       }
-      else
-       fputs ("}\n", ostream);
-
-      /* Record name of most recent primary. */
-      if (lastprimarylength < primarylength)
-       {
-         lastprimarylength = primarylength + 100;
-         lastprimary = (char *) xrealloc (lastprimary,
-                                          1 + lastprimarylength);
-       }
-      strncpy (lastprimary, primary, primarylength);
-      lastprimary[primarylength] = 0;
-
-      /* There is no current secondary within this primary, now. */
-      lastsecondary[0] = 0;
-    }
-
-  /* Should not have an entry with no subtopic following one with a subtopic. */
-
-  if (nosecondary && *lastsecondary)
-    error ("entry %s follows an entry with a secondary name", line);
-
-  /* Start a new secondary entry if necessary. */
-  if (!nosecondary && strncmp (secondary, lastsecondary, secondarylength))
-    {
-      if (pending)
-       {
-         fputs ("}\n", ostream);
-         pending = 0;
-       }
-
-      /* Write the entry for the secondary.  */
-      fputs ("\\secondary {", ostream);
-      fwrite (secondary, secondarylength, 1, ostream);
-      fputs ("}{", ostream);
-      pending = 1;
-
-      /* Record name of most recent secondary. */
-      if (lastsecondarylength < secondarylength)
-       {
-         lastsecondarylength = secondarylength + 100;
-         lastsecondary = (char *) xrealloc (lastsecondary,
-                                            1 + lastsecondarylength);
-       }
-      strncpy (lastsecondary, secondary, secondarylength);
-      lastsecondary[secondarylength] = 0;
-    }
-
-  /* Here to add one more page number to the current entry. */
-  if (pending++ != 1)
-    fputs (", ", ostream);     /* Punctuate first, if this is not the first. */
-  fwrite (pagenumber, pagelength, 1, ostream);
-}
-
-/* Close out any unfinished output entry. */
-
-void
-finish_index (ostream)
-     FILE *ostream;
-{
-  if (pending)
-    fputs ("}\n", ostream);
-  free (lastprimary);
-  free (lastsecondary);
-}
-\f
-/* Copy the lines in the sorted order.
-   Each line is copied out of the input file it was found in. */
-
-void
-writelines (linearray, nlines, ostream)
-     char **linearray;
-     int nlines;
-     FILE *ostream;
-{
-  char **stop_line = linearray + nlines;
-  char **next_line;
-
-  init_index ();
-
-  /* Output the text of the lines, and free the buffer space. */
-
-  for (next_line = linearray; next_line != stop_line; next_line++)
-    {
-      /* If -u was specified, output the line only if distinct from previous one.  */
-      if (next_line == linearray
-      /* Compare previous line with this one, using only the
-         explicitly specd keyfields. */
-         || compare_general (*(next_line - 1), *next_line, 0L, 0L, num_keyfields - 1))
-       {
-         char *p = *next_line;
-         char c;
-
-         while ((c = *p++) && c != '\n')
-           /* Do nothing. */ ;
-         *(p - 1) = 0;
-         indexify (*next_line, ostream);
-       }
-    }
-
-  finish_index (ostream);
-}
-\f
-/* Assume (and optionally verify) that each input file is sorted;
-   merge them and output the result.
-   Returns nonzero if any input file fails to be sorted.
-
-   This is the high-level interface that can handle an unlimited
-   number of files.  */
-
-#define MAX_DIRECT_MERGE 10
-
-int
-merge_files (infiles, nfiles, outfile)
-     char **infiles;
-     int nfiles;
-     char *outfile;
-{
-  char **tempfiles;
-  int ntemps;
-  int i;
-  int value = 0;
-  int start_tempcount = tempcount;
-
-  if (nfiles <= MAX_DIRECT_MERGE)
-    return merge_direct (infiles, nfiles, outfile);
-
-  /* Merge groups of MAX_DIRECT_MERGE input files at a time,
-     making a temporary file to hold each group's result.  */
-
-  ntemps = (nfiles + MAX_DIRECT_MERGE - 1) / MAX_DIRECT_MERGE;
-  tempfiles = (char **) xmalloc (ntemps * sizeof (char *));
-  for (i = 0; i < ntemps; i++)
-    {
-      int nf = MAX_DIRECT_MERGE;
-      if (i + 1 == ntemps)
-       nf = nfiles - i * MAX_DIRECT_MERGE;
-      tempfiles[i] = maketempname (++tempcount);
-      value |= merge_direct (&infiles[i * MAX_DIRECT_MERGE], nf, tempfiles[i]);
-    }
-
-  /* All temporary files that existed before are no longer needed
-     since their contents have been merged into our new tempfiles.
-     So delete them.  */
-  flush_tempfiles (start_tempcount);
-
-  /* Now merge the temporary files we created.  */
-
-  merge_files (tempfiles, ntemps, outfile);
-
-  free (tempfiles);
-
-  return value;
-}
-\f
-/* Assume (and optionally verify) that each input file is sorted;
-   merge them and output the result.
-   Returns nonzero if any input file fails to be sorted.
-
-   This version of merging will not work if the number of
-   input files gets too high.  Higher level functions
-   use it only with a bounded number of input files.  */
-
-int
-merge_direct (infiles, nfiles, outfile)
-     char **infiles;
-     int nfiles;
-     char *outfile;
-{
-  struct linebuffer *lb1, *lb2;
-  struct linebuffer **thisline, **prevline;
-  FILE **streams;
-  int i;
-  int nleft;
-  int lossage = 0;
-  int *file_lossage;
-  struct linebuffer *prev_out = 0;
-  FILE *ostream = stdout;
-
-  if (outfile)
-    {
-      ostream = fopen (outfile, "w");
-    }
-  if (!ostream)
-    pfatal_with_name (outfile);
-
-  init_index ();
-
-  if (nfiles == 0)
-    {
-      if (outfile)
-       fclose (ostream);
-      return 0;
-    }
-
-  /* For each file, make two line buffers.
-     Also, for each file, there is an element of `thisline'
-     which points at any time to one of the file's two buffers,
-     and an element of `prevline' which points to the other buffer.
-     `thisline' is supposed to point to the next available line from the file,
-     while `prevline' holds the last file line used,
-     which is remembered so that we can verify that the file is properly sorted. */
-
-  /* lb1 and lb2 contain one buffer each per file. */
-  lb1 = (struct linebuffer *) xmalloc (nfiles * sizeof (struct linebuffer));
-  lb2 = (struct linebuffer *) xmalloc (nfiles * sizeof (struct linebuffer));
-
-  /* thisline[i] points to the linebuffer holding the next available line in file i,
-     or is zero if there are no lines left in that file.  */
-  thisline = (struct linebuffer **)
-    xmalloc (nfiles * sizeof (struct linebuffer *));
-  /* prevline[i] points to the linebuffer holding the last used line
-     from file i.  This is just for verifying that file i is properly
-     sorted.  */
-  prevline = (struct linebuffer **)
-    xmalloc (nfiles * sizeof (struct linebuffer *));
-  /* streams[i] holds the input stream for file i.  */
-  streams = (FILE **) xmalloc (nfiles * sizeof (FILE *));
-  /* file_lossage[i] is nonzero if we already know file i is not
-     properly sorted.  */
-  file_lossage = (int *) xmalloc (nfiles * sizeof (int));
-
-  /* Allocate and initialize all that storage. */
-
-  for (i = 0; i < nfiles; i++)
-    {
-      initbuffer (&lb1[i]);
-      initbuffer (&lb2[i]);
-      thisline[i] = &lb1[i];
-      prevline[i] = &lb2[i];
-      file_lossage[i] = 0;
-      streams[i] = fopen (infiles[i], "r");
-      if (!streams[i])
-       pfatal_with_name (infiles[i]);
-
-      readline (thisline[i], streams[i]);
-    }
-
-  /* Keep count of number of files not at eof. */
-  nleft = nfiles;
-
-  while (nleft)
-    {
-      struct linebuffer *best = 0;
-      struct linebuffer *exch;
-      int bestfile = -1;
-      int i;
-
-      /* Look at the next avail line of each file; choose the least one.  */
-
-      for (i = 0; i < nfiles; i++)
-       {
-         if (thisline[i] &&
-             (!best ||
-              0 < compare_general (best->buffer, thisline[i]->buffer,
-                                (long) bestfile, (long) i, num_keyfields)))
-           {
-             best = thisline[i];
-             bestfile = i;
-           }
-       }
-
-      /* Output that line, unless it matches the previous one and we
-        don't want duplicates. */
-
-      if (!(prev_out &&
-           !compare_general (prev_out->buffer,
-                             best->buffer, 0L, 1L, num_keyfields - 1)))
-       indexify (best->buffer, ostream);
-      prev_out = best;
-
-      /* Now make the line the previous of its file, and fetch a new
-        line from that file.  */
-
-      exch = prevline[bestfile];
-      prevline[bestfile] = thisline[bestfile];
-      thisline[bestfile] = exch;
-
-      while (1)
-       {
-         /* If the file has no more, mark it empty. */
-
-         if (feof (streams[bestfile]))
-           {
-             thisline[bestfile] = 0;
-             /* Update the number of files still not empty. */
-             nleft--;
-             break;
-           }
-         readline (thisline[bestfile], streams[bestfile]);
-         if (thisline[bestfile]->buffer[0] || !feof (streams[bestfile]))
-           break;
-       }
-    }
-
-  finish_index (ostream);
-
-  /* Free all storage and close all input streams. */
-
-  for (i = 0; i < nfiles; i++)
-    {
-      fclose (streams[i]);
-      free (lb1[i].buffer);
-      free (lb2[i].buffer);
-    }
-  free (file_lossage);
-  free (lb1);
-  free (lb2);
-  free (thisline);
-  free (prevline);
-  free (streams);
-
-  if (outfile)
-    fclose (ostream);
-
-  return lossage;
-}
-\f
-/* Print error message and exit.  */
-
-void
-fatal (s1, s2)
-     char *s1, *s2;
-{
-  error (s1, s2);
-  exit (TI_FATAL_ERROR);
-}
-
-/* Print error message.  S1 is printf control string, S2 is arg for it. */
-
-void
-error (s1, s2)
-     char *s1, *s2;
-{
-  printf ("%s: ", program_name);
-  printf (s1, s2);
-  printf ("\n");
-}
-
-#if !defined (HAVE_STRERROR)
-static char *
-strerror (n)
-     int n;
-{
-  static char ebuf[40];
-
-  if (n < sys_nerr)
-    return sys_errlist[n];
-  else
-    {
-      sprintf (ebuf, "Unknown error %d", n);
-      return ebuf;
-    }
-}
-#endif
-
-void
-perror_with_name (name)
-     char *name;
-{
-  char *s;
-
-  s = concat ("", strerror (errno), " for %s");
-  error (s, name);
-}
-
-void
-pfatal_with_name (name)
-     char *name;
-{
-  char *s;
-
-  s = concat ("", strerror (errno), " for %s");
-  fatal (s, name);
-}
-
-/* Return a newly-allocated string whose contents concatenate those of
-   S1, S2, S3.  */
-
-char *
-concat (s1, s2, s3)
-     char *s1, *s2, *s3;
-{
-  int len1 = strlen (s1), len2 = strlen (s2), len3 = strlen (s3);
-  char *result = (char *) xmalloc (len1 + len2 + len3 + 1);
-
-  strcpy (result, s1);
-  strcpy (result + len1, s2);
-  strcpy (result + len1 + len2, s3);
-  *(result + len1 + len2 + len3) = 0;
-
-  return result;
-}
-
-/* Just like malloc, but kills the program in case of fatal error. */
-void *
-xmalloc (nbytes)
-     int nbytes;
-{
-  void *temp = (void *) malloc (nbytes);
-
-  if (nbytes && temp == (void *)NULL)
-    memory_error ("xmalloc", nbytes);
-
-  return (temp);
-}
-
-/* Like realloc (), but barfs if there isn't enough memory. */
-void *
-xrealloc (pointer, nbytes)
-     void *pointer;
-     int nbytes;
-{
-  void *temp;
-
-  if (!pointer)
-    temp = (void *)xmalloc (nbytes);
-  else
-    temp = (void *)realloc (pointer, nbytes);
-
-  if (nbytes && !temp)
-    memory_error ("xrealloc", nbytes);
-
-  return (temp);
-}
-
-memory_error (callers_name, bytes_wanted)
-     char *callers_name;
-     int bytes_wanted;
-{
-  char printable_string[80];
-
-  sprintf (printable_string,
-          "Virtual memory exhausted in %s ()!  Needed %d bytes.",
-          callers_name, bytes_wanted);
-
-  error (printable_string, "");
-  abort ();
-}
diff --git a/lib/glob/ChangeLog b/lib/glob/ChangeLog
deleted file mode 100644 (file)
index 377f0c1..0000000
+++ /dev/null
@@ -1,13 +0,0 @@
-Thu Oct 29 08:58:12 1992  Brian Fox  (bfox@cubit)
-
-       * glob.c (glob_filename): Fix tiny memory leak.  Rework some
-       comments.
-
-Mon Jul 20 10:57:36 1992  Brian Fox  (bfox@cubit)
-
-       * glob.c: (glob_filename) Change use of rindex () to strrchr ().
-
-Thu Jul  9 10:02:47 1992  Brian Fox  (bfox@cubit)
-
-       * fnmatch.c: (fnmatch) Only process `[' as the start of a bracket
-       expression if there is a closing `]' present in the string.
diff --git a/lib/malloc/OLD/gmalloc.c b/lib/malloc/OLD/gmalloc.c
deleted file mode 100644 (file)
index c21d447..0000000
+++ /dev/null
@@ -1,1486 +0,0 @@
-/* The malloc headers and source files from the C library follow here.  */
-
-/* Declarations for `malloc' and friends.
-   Copyright 1990, 91, 92, 93, 95, 96 Free Software Foundation, Inc.
-                 Written May 1989 by Mike Haertel.
-
-This library is free software; you can redistribute it and/or
-modify it under the terms of the GNU Library General Public License as
-published by the Free Software Foundation; either version 2 of the
-License, or (at your option) any later version.
-
-This 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
-Library General Public License for more details.
-
-You should have received a copy of the GNU Library General Public
-License along with this library; see the file COPYING.LIB.  If
-ot, write to the Free Software Foundation, Inc.,
-59 Temple Place, Suite 330, Boston, MA 02111 USA.
-
-   The author may be reached (Email) at the address mike@ai.mit.edu,
-   or (US mail) as Mike Haertel c/o Free Software Foundation.  */
-
-/* XXX NOTES:
-    1. Augment the mstats struct so we can see how many blocks for fragments
-       and how many blocks for large requests were allocated.
-*/
-
-/* CHANGES:
-    1. Reorganized the source for my benefit.
-    2. Integrated the range-checking code by default.
-    3.  free(0) no longer dumps core.
-    4.  Extended the statistics.
-    5.  Fixed a couple of places where the stats were not kept correctly.
-*/
-
-#ifdef HAVE_CONFIG_H
-#include <config.h>
-#endif
-
-#if defined (HAVE_STRING_H)
-#  include <string.h>
-#else
-#  include <strings.h>
-#endif
-
-#if defined (HAVE_LIMITS_H)
-#  include <limits.h>
-#endif
-
-#if defined (HAVE_UNISTD_H)
-#  ifdef _MINIX
-#    include <sys/types.h>
-#  endif
-#  include <unistd.h>
-#endif
-
-#if defined (HAVE_STDDEF_H)
-#  include <stddef.h>
-#endif
-#include <errno.h>
-
-#if defined (RCHECK) && !defined (botch)
-#  include <stdio.h>
-#  define STDIO_H_INCLUDED
-#endif
-
-#include "stdc.h"
-
-#ifndef errno
-extern int errno;
-#endif
-
-/* Need an autoconf test for this. */
-#if __STDC__
-#  undef  genptr_t
-#  define genptr_t     void *
-#else
-#  undef  genptr_t
-#  define genptr_t     char *
-#endif /* !__STDC__ */
-
-#if !defined (HAVE_MEMSET)
-#  define      memset(s, zero, n)      bzero ((s), (n))
-#endif
-#if !defined (HAVE_MEMCPY)
-#  define      memcpy(d, s, n)         bcopy ((s), (d), (n))
-#endif
-
-/* Cope with systems lacking `memmove'.    */
-#if !defined (HAVE_MEMMOVE) && !defined (memmove)
-static void malloc_safe_bcopy __P ((genptr_t, genptr_t, size_t));
-#  define memmove(to, from, size)      malloc_safe_bcopy ((from), (to), (size))
-#endif
-
-#ifndef        NULL
-#define        NULL    0
-#endif
-
-#ifndef min
-#define min(A, B) ((A) < (B) ? (A) : (B))
-#endif
-
-/* Return values for `mprobe': these are the kinds of inconsistencies that
-   `mcheck' enables detection of.  */
-enum mcheck_status
-  {
-    MCHECK_DISABLED = -1,      /* Consistency checking is not turned on.  */
-    MCHECK_OK,                 /* Block is fine.  */
-    MCHECK_FREE,               /* Block freed twice.  */
-    MCHECK_HEAD,               /* Memory before the block was clobbered.  */
-    MCHECK_TAIL                        /* Memory after the block was clobbered.  */
-  };
-
-/* Statistics available to the user.  */
-struct mstats
-  {
-    size_t bytes_total; /* Total size of the heap. */
-    size_t chunks_used; /* Chunks allocated by the user. */
-    size_t bytes_used; /* Byte total of user-allocated chunks. */
-    size_t chunks_free; /* Chunks in the free list. */
-    size_t bytes_free; /* Byte total of chunks in the free list. */
-    int nmalloc;       /* Total number of calls to malloc. */
-    int nfree;         /* Total number of calls to free. */
-    int nrealloc;      /* Total number of calls to realloc. */
-    int nsbrk;         /* Total number of calls to sbrk. */
-    size_t tsbrk;      /* Total number of bytes allocated via sbrk. */
-    int negsbrk;       /* Total number of calls to sbrk with a negative arg */
-    size_t tnegsbrk;   /* Total number of bytes returned to the kernel. */
-  };
-
-#ifdef RCHECK
-/* Arbitrary magical numbers.  */
-#define MAGICWORD      0xfedabeeb
-#define MAGICFREE      0xd8675309
-#define MAGICBYTE      ((char) 0xd7)
-#define MALLOCFLOOD    ((char) 0x93)
-#define FREEFLOOD      ((char) 0x95)
-
-struct hdr
-  {
-    size_t size;               /* Exact size requested by user.  */
-    u_bits32_t magic;          /* Magic number to check header integrity.  */
-  };
-#endif /* RCHECK */
-
-/* Functions exported by this library. */
-/* Allocate SIZE bytes of memory.  */
-extern genptr_t malloc __P ((size_t __size));
-
-/* Re-allocate the previously allocated block
-   in genptr_t, making the new block SIZE bytes long.  */
-extern genptr_t realloc __P ((genptr_t __ptr, size_t __size));
-
-/* Allocate NMEMB elements of SIZE bytes each, all initialized to 0.  */
-extern genptr_t calloc __P ((size_t __nmemb, size_t __size));
-
-/* Free a block allocated by `malloc', `realloc' or `calloc'.  */
-extern void free __P ((genptr_t __ptr));
-
-/* Allocate SIZE bytes allocated to ALIGNMENT bytes.  */
-extern genptr_t memalign __P ((size_t __alignment, size_t __size));
-
-/* Pick up the current statistics. */
-extern struct mstats mstats __P ((void));
-
-#ifdef RCHECK
-extern enum mcheck_status mprobe __P((genptr_t ptr));
-#endif
-
-/* End of exported functions. */
-
-/* The allocator divides the heap into blocks of fixed size; large
-   requests receive one or more whole blocks, and small requests
-   receive a fragment of a block.  Fragment sizes are powers of two,
-   and all fragments of a block are the same size.  When all the
-   fragments in a block have been freed, the block itself is freed.  */
-#define BLOCKLOG       12
-#define BLOCKSIZE      4096            /* 1 << BLOCKLOG */
-#define BLOCKIFY(SIZE) (((SIZE) + BLOCKSIZE - 1) / BLOCKSIZE)
-
-/* Determine the amount of memory spanned by the initial heap table
-   (not an absolute limit).  */
-#define HEAP           4194304         /* 1 << 22 */
-
-/* Number of contiguous free blocks allowed to build up at the end of
-   memory before they will be returned to the system.  */
-#define FINAL_FREE_BLOCKS      8
-
-/* Data structure giving per-block information.  */
-typedef union
-  {
-    /* Heap information for a busy block.  */
-    struct
-      {
-       /* Zero for a large (multiblock) object, or positive giving the
-          logarithm to the base two of the fragment size.  */
-       int type;
-       union
-         {
-           struct
-             {
-               size_t nfree; /* Free frags in a fragmented block.  */
-               size_t first; /* First free fragment of the block.  */
-             } frag;
-           /* For a large object, in its first block, this has the number
-              of blocks in the object.  In the other blocks, this has a
-              negative number which says how far back the first block is.  */
-           ptrdiff_t size;
-         } info;
-      } busy;
-    /* Heap information for a free block (that may be the first of a
-       free cluster).  */
-    struct
-      {
-       size_t size;    /* Size (in blocks) of a free cluster.  */
-       size_t next;    /* Index of next free cluster.  */
-       size_t prev;    /* Index of previous free cluster.  */
-      } free;
-  } malloc_info;
-
-/* Pointer to first block of the heap.  */
-static char *_heapbase;
-
-/* Table indexed by block number giving per-block information.  */
-static malloc_info *_heapinfo;
-
-/* Address to block number and vice versa.  */
-#define BLOCK(A)       (((char *) (A) - _heapbase) / BLOCKSIZE + 1)
-#define ADDRESS(B)     ((genptr_t) (((B) - 1) * BLOCKSIZE + _heapbase))
-
-/* Number of info entries.  */
-static size_t heapsize;
-
-/* Current search index for the heap table.  */
-static size_t _heapindex;
-
-/* Limit of valid info table indices.  */
-static size_t _heaplimit;
-
-/* Doubly linked lists of free fragments.  */
-struct list
-  {
-    struct list *next;
-    struct list *prev;
-  };
-
-/* Free list headers for each fragment size.  */
-static struct list _fraghead[BLOCKLOG];
-
-/* List of blocks allocated with `memalign'.  */
-struct alignlist
-  {
-    struct alignlist *next;
-    genptr_t aligned;          /* The address that memaligned returned.  */
-    genptr_t exact;            /* The address that malloc returned.  */
-  };
-
-/* List of blocks allocated by memalign.  */
-static struct alignlist *_aligned_blocks = NULL;
-
-/* Internal versions of `malloc', `realloc', and `free'
-   used when these functions need to call each other. */
-static genptr_t imalloc __P ((size_t __size));
-static genptr_t irealloc __P ((genptr_t __ptr, size_t __size));
-static void ifree __P ((genptr_t __ptr));
-
-/* Given an address in the middle of a malloc'd object,
-   return the address of the beginning of the object.  */
-static genptr_t malloc_find_object_address __P ((genptr_t __ptr));
-
-/* Underlying allocation function; successive calls should
-   return contiguous pieces of memory.  */
-static genptr_t default_morecore __P ((ptrdiff_t __size));
-
-/* Number of extra blocks to get each time we ask for more core.
-   This reduces the frequency of calling `default_morecore'.  */
-static size_t malloc_extra_blocks;
-
-/* Nonzero if `malloc' has been called and done its initialization.  */
-static int malloc_initialized;
-/* Function called to initialize malloc data structures.  */
-static int malloc_initialize __P ((void));
-
-#ifdef RCHECK
-static void zmemset __P((genptr_t, int, size_t));
-static enum mcheck_status checkhdr __P((const struct hdr *));
-static void mabort __P((enum mcheck_status));
-#endif
-
-/* Instrumentation.  */
-static size_t chunks_used;
-static size_t bytes_used;
-static size_t chunks_free;
-static size_t bytes_free;
-static int nmalloc, nfree, nrealloc;
-static int nsbrk;
-static size_t tsbrk;
-static int negsbrk;
-static size_t tnegsbrk;
-
-/* Aligned allocation.  */
-static genptr_t
-align (size)
-     size_t size;
-{
-  genptr_t result;
-  unsigned long int adj;
-
-  result = default_morecore (size);
-  adj = (unsigned long int) ((unsigned long int) ((char *) result -
-                                                 (char *) NULL)) % BLOCKSIZE;
-  if (adj != 0)
-    {
-      genptr_t new;
-      adj = BLOCKSIZE - adj;
-      new = default_morecore (adj);
-      result = (char *) result + adj;
-    }
-
-  return result;
-}
-
-/* Get SIZE bytes, if we can get them starting at END.
-   Return the address of the space we got.
-   If we cannot get space at END, fail and return -1.  */
-static genptr_t
-get_contiguous_space (size, position)
-     ptrdiff_t size;
-     genptr_t position;
-{
-  genptr_t before;
-  genptr_t after;
-
-  before = default_morecore (0);
-  /* If we can tell in advance that the break is at the wrong place,
-     fail now.  */
-  if (before != position)
-    return 0;
-
-  /* Allocate SIZE bytes and get the address of them.  */
-  after = default_morecore (size);
-  if (!after)
-    return 0;
-
-  /* It was not contiguous--reject it.  */
-  if (after != position)
-    {
-      default_morecore (- size);
-      return 0;
-    }
-
-  return after;
-}
-
-/* This is called when `_heapinfo' and `heapsize' have just
-   been set to describe a new info table.  Set up the table
-   to describe itself and account for it in the statistics.  */
-inline static void
-register_heapinfo ()
-{
-  size_t block, blocks;
-
-  block = BLOCK (_heapinfo);
-  blocks = BLOCKIFY (heapsize * sizeof (malloc_info));
-
-  /* Account for the _heapinfo block itself in the statistics.  */
-  bytes_used += blocks * BLOCKSIZE;
-  ++chunks_used;
-
-  /* Describe the heapinfo block itself in the heapinfo.  */
-  _heapinfo[block].busy.type = 0;
-  _heapinfo[block].busy.info.size = blocks;
-  /* Leave back-pointers for malloc_find_address.  */
-  while (--blocks > 0)
-    _heapinfo[block + blocks].busy.info.size = -blocks;
-}
-
-/* Set everything up and remember that we have.  */
-static int
-malloc_initialize ()
-{
-  if (malloc_initialized)
-    return 0;
-
-  heapsize = HEAP / BLOCKSIZE;
-  _heapinfo = (malloc_info *) align (heapsize * sizeof (malloc_info));
-  if (_heapinfo == NULL)
-    return 0;
-  memset (_heapinfo, 0, heapsize * sizeof (malloc_info));
-  _heapinfo[0].free.size = 0;
-  _heapinfo[0].free.next = _heapinfo[0].free.prev = 0;
-  _heapindex = 0;
-  _heapbase = (char *) _heapinfo;
-  _heaplimit = BLOCK (_heapbase + heapsize * sizeof (malloc_info));
-
-  register_heapinfo ();
-
-  malloc_initialized = 1;
-  return 1;
-}
-
-/* Allocate INCREMENT more bytes of data space,
-   and return the start of data space, or NULL on errors.
-   If INCREMENT is negative, shrink data space.  */
-static genptr_t
-default_morecore (increment)
-     ptrdiff_t increment;
-{
-  genptr_t result;
-
-  nsbrk++;
-  tsbrk += increment;
-  if (increment < 0)
-    {
-      negsbrk++;
-      tnegsbrk += -increment;
-    }
-  result = (genptr_t) sbrk (increment);
-  if ((long)result == -1L)
-    return NULL;
-  return result;
-}
-
-static int morecore_recursing;
-
-/* Get neatly aligned memory, initializing or
-   growing the heap info table as necessary. */
-static genptr_t
-morecore (size)
-     size_t size;
-{
-  genptr_t result;
-  malloc_info *newinfo, *oldinfo;
-  size_t newsize;
-
-  if (morecore_recursing)
-    /* Avoid recursion.  The caller will know how to handle a null return.  */
-    return NULL;
-
-  result = align (size);
-  if (result == NULL)
-    return NULL;
-
-  /* Check if we need to grow the info table.  */
-  if ((size_t) BLOCK ((char *) result + size) > heapsize)
-    {
-      /* Calculate the new _heapinfo table size.  We do not account for the
-        added blocks in the table itself, as we hope to place them in
-        existing free space, which is already covered by part of the
-        existing table.  */
-      newsize = heapsize;
-      do
-       newsize <<= 1;
-      while ((size_t) BLOCK ((char *) result + size) > newsize);
-
-      /* We must not reuse existing core for the new info table when called
-        from realloc in the case of growing a large block, because the
-        block being grown is momentarily marked as free.  In this case
-        _heaplimit is zero so we know not to reuse space for internal
-        allocation.  */
-      if (_heaplimit != 0)
-       {
-         /* First try to allocate the new info table in core we already
-            have, in the usual way using realloc.  If realloc cannot
-            extend it in place or relocate it to existing sufficient core,
-            we will get called again, and the code above will notice the
-            `morecore_recursing' flag and return null.  */
-         int save = errno;     /* Don't want to clobber errno with ENOMEM.  */
-         morecore_recursing = 1;
-         newinfo = (malloc_info *) irealloc (_heapinfo, newsize * sizeof (malloc_info));
-         morecore_recursing = 0;
-         if (newinfo == NULL)
-           errno = save;
-         else
-           {
-             /* We found some space in core, and realloc has put the old
-                table's blocks on the free list.  Now zero the new part
-                of the table and install the new table location.  */
-             memset (&newinfo[heapsize], 0, (newsize - heapsize) * sizeof (malloc_info));
-             _heapinfo = newinfo;
-             heapsize = newsize;
-             goto got_heap;
-           }
-       }
-
-      /* Allocate new space for the malloc info table.  */
-      while (1)
-       {
-         newinfo = (malloc_info *) align (newsize * sizeof (malloc_info));
-
-         /* Did it fail?  */
-         if (newinfo == NULL)
-           {
-             default_morecore (-size);
-             return NULL;
-           }
-
-         /* Is it big enough to record status for its own space?
-            If so, we win.  */
-         if ((size_t) BLOCK ((char *) newinfo + newsize * sizeof (malloc_info)) < newsize)
-           break;
-
-         /* Must try again.  First give back most of what we just got.  */
-         default_morecore (- newsize * sizeof (malloc_info));
-         newsize *= 2;
-       }
-
-      /* Copy the old table to the beginning of the new,
-        and zero the rest of the new table.  */
-      memcpy (newinfo, _heapinfo, heapsize * sizeof (malloc_info));
-      memset (&newinfo[heapsize], 0, (newsize - heapsize) * sizeof (malloc_info));
-      oldinfo = _heapinfo;
-      _heapinfo = newinfo;
-      heapsize = newsize;
-
-      register_heapinfo ();
-
-      /* Reset _heaplimit so ifree never decides
-        it can relocate or resize the info table.  */
-      _heaplimit = 0;
-      ifree (oldinfo);
-
-      /* The new heap limit includes the new table just allocated.  */
-      _heaplimit = BLOCK ((char *) newinfo + heapsize * sizeof (malloc_info));
-      return result;
-    }
-
- got_heap:
-  _heaplimit = BLOCK ((char *) result + size);
-  return result;
-}
-
-/* Allocate memory from the heap.  */
-static genptr_t
-imalloc (size)
-     size_t size;
-{
-  genptr_t result;
-  size_t block, blocks, lastblocks, start;
-  register size_t i;
-  struct list *next;
-
-  /* ANSI C allows `malloc (0)' to either return NULL, or to return a
-     valid address you can realloc and free (though not dereference).
-
-     It turns out that some extant code (sunrpc, at least Ultrix's version)
-     expects `malloc (0)' to return non-NULL and breaks otherwise.
-     Be compatible.  */
-
-#if 0
-  if (size == 0)
-    return NULL;
-#endif
-
-  if (size < sizeof (struct list))
-    size = sizeof (struct list);
-
-#ifdef SUNOS_LOCALTIME_BUG
-  if (size < 16)
-    size = 16;
-#endif
-
-  /* Determine the allocation policy based on the request size.  */
-  if (size <= BLOCKSIZE / 2)
-    {
-      /* Small allocation to receive a fragment of a block.
-        Determine the logarithm to base two of the fragment size. */
-      register size_t log = 1;
-      --size;
-      while ((size /= 2) != 0)
-       ++log;
-
-      /* Look in the fragment lists for a
-        free fragment of the desired size. */
-      next = _fraghead[log].next;
-      if (next != NULL)
-       {
-         /* There are free fragments of this size.
-            Pop a fragment out of the fragment list and return it.
-            Update the block's nfree and first counters. */
-         result = (genptr_t) next;
-         next->prev->next = next->next;
-         if (next->next != NULL)
-           next->next->prev = next->prev;
-         block = BLOCK (result);
-         if (--_heapinfo[block].busy.info.frag.nfree != 0)
-           _heapinfo[block].busy.info.frag.first = (unsigned long int)
-             ((unsigned long int) ((char *) next->next - (char *) NULL)
-              % BLOCKSIZE) >> log;
-
-         /* Update the statistics.  */
-         ++chunks_used;
-         bytes_used += 1 << log;
-         --chunks_free;
-         bytes_free -= 1 << log;
-       }
-      else
-       {
-         /* No free fragments of the desired size, so get a new block
-            and break it into fragments, returning the first.  */
-         result = imalloc (BLOCKSIZE);
-         if (result == NULL)
-           return NULL;
-
-         /* Link all fragments but the first into the free list.  */
-         next = (struct list *) ((char *) result + (1 << log));
-         next->next = NULL;
-         next->prev = &_fraghead[log];
-         _fraghead[log].next = next;
-
-         for (i = 2; i < (size_t) (BLOCKSIZE >> log); ++i)
-           {
-             next = (struct list *) ((char *) result + (i << log));
-             next->next = _fraghead[log].next;
-             next->prev = &_fraghead[log];
-             next->prev->next = next;
-             next->next->prev = next;
-           }
-
-         /* Initialize the nfree and first counters for this block.  */
-         block = BLOCK (result);
-         _heapinfo[block].busy.type = log;
-         _heapinfo[block].busy.info.frag.nfree = i - 1;
-         _heapinfo[block].busy.info.frag.first = i - 1;
-
-         chunks_free += (BLOCKSIZE >> log) - 1;
-         bytes_free += BLOCKSIZE - (1 << log);
-         bytes_used -= BLOCKSIZE - (1 << log);
-       }
-    }
-  else
-    {
-      /* Large allocation to receive one or more blocks.
-        Search the free list in a circle starting at the last place visited.
-        If we loop completely around without finding a large enough
-        space we will have to get more memory from the system.  */
-      blocks = BLOCKIFY (size);
-      start = block = _heapindex;
-      while (_heapinfo[block].free.size < blocks)
-       {
-         block = _heapinfo[block].free.next;
-         if (block == start)
-           {
-             /* Need to get more from the system.  Get a little extra.  */
-             size_t wantblocks = blocks + malloc_extra_blocks;
-             block = _heapinfo[0].free.prev;
-             lastblocks = _heapinfo[block].free.size;
-             /* Check to see if the new core will be contiguous with the
-                final free block; if so we don't need to get as much.  */
-             if (_heaplimit != 0 && block + lastblocks == _heaplimit &&
-                 /* We can't do this if we will have to make the heap info
-                    table bigger to accomodate the new space.  */
-                 block + wantblocks <= heapsize &&
-                 get_contiguous_space ((wantblocks - lastblocks) * BLOCKSIZE,
-                                       ADDRESS (block + lastblocks)))
-               {
-                 /* We got it contiguously.  Which block we are extending
-                    (the `final free block' referred to above) might have
-                    changed, if it got combined with a freed info table.  */
-                 block = _heapinfo[0].free.prev;
-                 _heapinfo[block].free.size += (wantblocks - lastblocks);
-                 bytes_free += (wantblocks - lastblocks) * BLOCKSIZE;
-                 _heaplimit += wantblocks - lastblocks;
-                 continue;
-               }
-             result = morecore (wantblocks * BLOCKSIZE);
-             if (result == NULL)
-               return NULL;
-             block = BLOCK (result);
-             /* Put the new block at the end of the free list.  */
-             _heapinfo[block].free.size = wantblocks;
-             _heapinfo[block].free.prev = _heapinfo[0].free.prev;
-             _heapinfo[block].free.next = 0;
-             _heapinfo[0].free.prev = block;
-             _heapinfo[_heapinfo[block].free.prev].free.next = block;
-             ++chunks_free;
-             bytes_free += wantblocks * BLOCKSIZE;
-             /* Now loop to use some of that block for this allocation.  */
-           }
-       }
-
-      /* At this point we have found a suitable free list entry.
-        Figure out how to remove what we need from the list. */
-      result = ADDRESS (block);
-      if (_heapinfo[block].free.size > blocks)
-       {
-         /* The block we found has a bit left over,
-            so relink the tail end back into the free list. */
-         _heapinfo[block + blocks].free.size
-           = _heapinfo[block].free.size - blocks;
-         _heapinfo[block + blocks].free.next
-           = _heapinfo[block].free.next;
-         _heapinfo[block + blocks].free.prev
-           = _heapinfo[block].free.prev;
-         _heapinfo[_heapinfo[block].free.prev].free.next
-           = _heapinfo[_heapinfo[block].free.next].free.prev
-           = _heapindex = block + blocks;
-       }
-      else
-       {
-         /* The block exactly matches our requirements,
-            so just remove it from the list. */
-         _heapinfo[_heapinfo[block].free.next].free.prev
-           = _heapinfo[block].free.prev;
-         _heapinfo[_heapinfo[block].free.prev].free.next
-           = _heapindex = _heapinfo[block].free.next;
-         --chunks_free;
-       }
-
-      _heapinfo[block].busy.type = 0;
-      _heapinfo[block].busy.info.size = blocks;
-      ++chunks_used;
-      bytes_used += blocks * BLOCKSIZE;
-      bytes_free -= blocks * BLOCKSIZE;
-
-      /* Mark all the blocks of the object just allocated except for the
-        first with a negative number so you can find the first block by
-        adding that adjustment.  */
-      while (--blocks > 0)
-       _heapinfo[block + blocks].busy.info.size = -blocks;
-    }
-
-  return result;
-}
-
-genptr_t
-malloc (size)
-     size_t size;
-{
-#ifdef RCHECK
-  struct hdr *hdr;
-#endif
-
-  nmalloc++;
-
-  if (malloc_initialized == 0 && malloc_initialize () == 0)
-    return NULL;
-
-#ifdef RCHECK
-  hdr = (struct hdr *) imalloc (sizeof (struct hdr) + size + 1);
-  if (hdr == NULL)
-    return NULL;
-
-  hdr->size = size;
-  hdr->magic = MAGICWORD;
-  ((char *) &hdr[1])[size] = MAGICBYTE;
-  zmemset ((genptr_t) (hdr + 1), MALLOCFLOOD, size);
-  return (genptr_t) (hdr + 1);
-#else
-  return (imalloc (size));
-#endif
-}
-
-/* Free a block of memory allocated by `malloc'. */
-
-/* Return memory to the heap. */
-static void
-ifree (ptr)
-     genptr_t ptr;
-{
-  int type;
-  size_t block, blocks;
-  register size_t i;
-  struct list *prev, *next;
-  genptr_t curbrk;
-  size_t lesscore_threshold;
-  register struct alignlist *l;
-
-  if (ptr == NULL)
-    return;
-
-  /* Threshold of free space at which we will return some to the system.  */
-  lesscore_threshold = FINAL_FREE_BLOCKS + 2 * malloc_extra_blocks;
-
-  for (l = _aligned_blocks; l != NULL; l = l->next)
-    if (l->aligned == ptr)
-      {
-       l->aligned = NULL;      /* Mark the slot in the list as free.  */
-       ptr = l->exact;
-       break;
-      }
-
-  block = BLOCK (ptr);
-
-  type = _heapinfo[block].busy.type;
-  switch (type)
-    {
-    case 0:
-      /* Get as many statistics as early as we can.  */
-      --chunks_used;
-      bytes_used -= _heapinfo[block].busy.info.size * BLOCKSIZE;
-      bytes_free += _heapinfo[block].busy.info.size * BLOCKSIZE;
-
-      /* Find the free cluster previous to this one in the free list.
-        Start searching at the last block referenced; this may benefit
-        programs with locality of allocation.  */
-      i = _heapindex;
-      if (i > block)
-       while (i > block)
-         i = _heapinfo[i].free.prev;
-      else
-       {
-         do
-           i = _heapinfo[i].free.next;
-         while (i > 0 && i < block);
-         i = _heapinfo[i].free.prev;
-       }
-
-      /* Determine how to link this block into the free list.  */
-      if (block == i + _heapinfo[i].free.size)
-       {
-         /* Coalesce this block with its predecessor.  */
-         _heapinfo[i].free.size += _heapinfo[block].busy.info.size;
-         block = i;
-       }
-      else
-       {
-         /* Really link this block back into the free list.  */
-         _heapinfo[block].free.size = _heapinfo[block].busy.info.size;
-         _heapinfo[block].free.next = _heapinfo[i].free.next;
-         _heapinfo[block].free.prev = i;
-         _heapinfo[i].free.next = block;
-         _heapinfo[_heapinfo[block].free.next].free.prev = block;
-         ++chunks_free;
-       }
-
-      /* Now that the block is linked in, see if we can coalesce it
-        with its successor (by deleting its successor from the list
-        and adding in its size).  */
-      if (block + _heapinfo[block].free.size == _heapinfo[block].free.next)
-       {
-         _heapinfo[block].free.size
-           += _heapinfo[_heapinfo[block].free.next].free.size;
-         _heapinfo[block].free.next
-           = _heapinfo[_heapinfo[block].free.next].free.next;
-         _heapinfo[_heapinfo[block].free.next].free.prev = block;
-         --chunks_free;
-       }
-
-      /* How many trailing free blocks are there now?  */
-      blocks = _heapinfo[block].free.size;
-
-      /* Where is the current end of accessible core?  */
-      curbrk = default_morecore (0);
-
-      if (_heaplimit != 0 && curbrk == ADDRESS (_heaplimit))
-       {
-         /* The end of the malloc heap is at the end of accessible core.
-            It's possible that moving _heapinfo will allow us to
-            return some space to the system.  */
-
-         size_t info_block = BLOCK (_heapinfo);
-         size_t info_blocks = _heapinfo[info_block].busy.info.size;
-         size_t prev_block = _heapinfo[block].free.prev;
-         size_t prev_blocks = _heapinfo[prev_block].free.size;
-         size_t next_block = _heapinfo[block].free.next;
-         size_t next_blocks = _heapinfo[next_block].free.size;
-
-         if (/* Win if this block being freed is last in core, the info table
-                is just before it, the previous free block is just before the
-                info table, and the two free blocks together form a useful
-                amount to return to the system.  */
-             (block + blocks == _heaplimit &&
-              info_block + info_blocks == block &&
-              prev_block != 0 && prev_block + prev_blocks == info_block &&
-              blocks + prev_blocks >= lesscore_threshold) ||
-             /* Nope, not the case.  We can also win if this block being
-                freed is just before the info table, and the table extends
-                to the end of core or is followed only by a free block,
-                and the total free space is worth returning to the system.  */
-             (block + blocks == info_block &&
-              ((info_block + info_blocks == _heaplimit &&
-                blocks >= lesscore_threshold) ||
-               (info_block + info_blocks == next_block &&
-                next_block + next_blocks == _heaplimit &&
-                blocks + next_blocks >= lesscore_threshold)))
-             )
-           {
-             malloc_info *newinfo;
-             size_t oldlimit = _heaplimit;
-
-             /* Free the old info table, clearing _heaplimit to avoid
-                recursion into this code.  We don't want to return the
-                table's blocks to the system before we have copied them to
-                the new location.  */
-             _heaplimit = 0;
-             ifree (_heapinfo);
-             _heaplimit = oldlimit;
-
-             /* Tell malloc to search from the beginning of the heap for
-                free blocks, so it doesn't reuse the ones just freed.  */
-             _heapindex = 0;
-
-             /* Allocate new space for the info table and move its data.  */
-             newinfo = (malloc_info *) imalloc (info_blocks
-                                                         * BLOCKSIZE);
-             memmove (newinfo, _heapinfo, info_blocks * BLOCKSIZE);
-             _heapinfo = newinfo;
-
-             /* We should now have coalesced the free block with the
-                blocks freed from the old info table.  Examine the entire
-                trailing free block to decide below whether to return some
-                to the system.  */
-             block = _heapinfo[0].free.prev;
-             blocks = _heapinfo[block].free.size;
-           }
-
-         /* Now see if we can return stuff to the system.  */
-         if (block + blocks == _heaplimit && blocks >= lesscore_threshold)
-           {
-             register size_t bytes = blocks * BLOCKSIZE;
-             _heaplimit -= blocks;
-             default_morecore (-bytes);
-             _heapinfo[_heapinfo[block].free.prev].free.next
-               = _heapinfo[block].free.next;
-             _heapinfo[_heapinfo[block].free.next].free.prev
-               = _heapinfo[block].free.prev;
-             block = _heapinfo[block].free.prev;
-             --chunks_free;
-             bytes_free -= bytes;
-           }
-       }
-
-      /* Set the next search to begin at this block.  */
-      _heapindex = block;
-      break;
-
-    default:
-      /* Do some of the statistics.  */
-      --chunks_used;
-      bytes_used -= 1 << type;
-      ++chunks_free;
-      bytes_free += 1 << type;
-
-      /* Get the address of the first free fragment in this block.  */
-      prev = (struct list *) ((char *) ADDRESS (block) +
-                             (_heapinfo[block].busy.info.frag.first << type));
-
-      if (_heapinfo[block].busy.info.frag.nfree == (BLOCKSIZE >> type) - 1)
-       {
-         /* If all fragments of this block are free, remove them
-            from the fragment list and free the whole block.  */
-         next = prev;
-         for (i = 1; i < (size_t) (BLOCKSIZE >> type); ++i)
-           next = next->next;
-         prev->prev->next = next;
-         if (next != NULL)
-           next->prev = prev->prev;
-         _heapinfo[block].busy.type = 0;
-         _heapinfo[block].busy.info.size = 1;
-
-         /* Keep the statistics accurate.  */
-         ++chunks_used;
-         bytes_used += BLOCKSIZE;
-         chunks_free -= BLOCKSIZE >> type;
-         bytes_free -= BLOCKSIZE;
-
-         ifree (ADDRESS (block));
-       }
-      else if (_heapinfo[block].busy.info.frag.nfree != 0)
-       {
-         /* If some fragments of this block are free, link this
-            fragment into the fragment list after the first free
-            fragment of this block. */
-         next = (struct list *) ptr;
-         next->next = prev->next;
-         next->prev = prev;
-         prev->next = next;
-         if (next->next != NULL)
-           next->next->prev = next;
-         ++_heapinfo[block].busy.info.frag.nfree;
-       }
-      else
-       {
-         /* No fragments of this block are free, so link this
-            fragment into the fragment list and announce that
-            it is the first free fragment of this block. */
-         prev = (struct list *) ptr;
-         _heapinfo[block].busy.info.frag.nfree = 1;
-         _heapinfo[block].busy.info.frag.first = (unsigned long int)
-           ((unsigned long int) ((char *) ptr - (char *) NULL)
-            % BLOCKSIZE >> type);
-         prev->next = _fraghead[type].next;
-         prev->prev = &_fraghead[type];
-         prev->prev->next = prev;
-         if (prev->next != NULL)
-           prev->next->prev = prev;
-       }
-      break;
-    }
-}
-
-/* Return memory to the heap.  */
-void
-free (ptr)
-     genptr_t ptr;
-{
-#ifdef RCHECK
-  struct hdr *hdr;
-#endif
-
-  nfree++;
-
-  if (ptr == 0)
-    return;
-
-#ifdef RCHECK
-  hdr = ((struct hdr *) ptr) - 1;
-  checkhdr (hdr);
-  hdr->magic = MAGICFREE;
-  zmemset (ptr, FREEFLOOD, hdr->size);
-  ifree (hdr);
-#else
-  ifree (ptr);
-#endif
-}
-
-/* Change the size of a block allocated by `malloc'. */
-
-#ifndef HAVE_MEMMOVE
-/* Snarfed directly from Emacs src/dispnew.c:
-   XXX Should use system bcopy if it handles overlap.  */
-
-/* Like bcopy except never gets confused by overlap.  */
-
-static void
-malloc_safe_bcopy (afrom, ato, size)
-     genptr_t afrom;
-     genptr_t ato;
-     size_t size;
-{
-  char *from, *to;
-
-  from = afrom;
-  to = ato;
-  if (size <= 0 || from == to)
-    return;
-
-  /* If the source and destination don't overlap, then bcopy can
-     handle it.  If they do overlap, but the destination is lower in
-     memory than the source, we'll assume bcopy can handle that.  */
-  if (to < from || from + size <= to)
-    bcopy (from, to, size);
-
-  /* Otherwise, we'll copy from the end.  */
-  else
-    {
-      register char *endf = from + size;
-      register char *endt = to + size;
-
-      /* If TO - FROM is large, then we should break the copy into
-        nonoverlapping chunks of TO - FROM bytes each.  However, if
-        TO - FROM is small, then the bcopy function call overhead
-        makes this not worth it.  The crossover point could be about
-        anywhere.  Since I don't think the obvious copy loop is too
-        bad, I'm trying to err in its favor.  */
-      if (to - from < 64)
-       {
-         do
-           *--endt = *--endf;
-         while (endf != from);
-       }
-      else
-       {
-         for (;;)
-           {
-             endt -= (to - from);
-             endf -= (to - from);
-
-             if (endt < to)
-               break;
-
-             bcopy (endf, endt, to - from);
-           }
-
-         /* If SIZE wasn't a multiple of TO - FROM, there will be a
-            little left over.  The amount left over is
-            (endt + (to - from)) - to, which is endt - from.  */
-         bcopy (from, to, endt - from);
-       }
-    }
-}
-#endif /* !HAVE_MEMMOVE */
-
-/* Resize the given region to the new size, returning a pointer
-   to the (possibly moved) region.  This is optimized for speed;
-   some benchmarks seem to indicate that greater compactness is
-   achieved by unconditionally allocating and copying to a
-   new region.  This module has incestuous knowledge of the
-   internals of both free and malloc. */
-static genptr_t
-irealloc (ptr, size)
-     genptr_t ptr;
-     size_t size;
-{
-  genptr_t result;
-  int type;
-  size_t block, blocks, oldlimit;
-
-  if (size == 0)
-    {
-      ifree (ptr);
-      return imalloc (0);
-    }
-  else if (ptr == NULL)
-    return imalloc (size);
-
-  block = BLOCK (ptr);
-
-  type = _heapinfo[block].busy.type;
-  switch (type)
-    {
-    case 0:
-      /* Maybe reallocate a large block to a small fragment.  */
-      if (size <= BLOCKSIZE / 2)
-       {
-         result = imalloc (size);
-         if (result != NULL)
-           {
-             memcpy (result, ptr, size);
-             ifree (ptr);
-             return result;
-           }
-       }
-
-      /* The new size is a large allocation as well;
-        see if we can hold it in place. */
-      blocks = BLOCKIFY (size);
-      if (blocks < _heapinfo[block].busy.info.size)
-       {
-         /* The new size is smaller; return
-            excess memory to the free list. */
-         _heapinfo[block + blocks].busy.type = 0;
-         _heapinfo[block + blocks].busy.info.size
-           = _heapinfo[block].busy.info.size - blocks;
-         _heapinfo[block].busy.info.size = blocks;
-         /* We have just created a new chunk by splitting a chunk in two.
-            Now we will free this chunk; increment the statistics counter
-            so it doesn't become wrong when ifree decrements it.  */
-         ++chunks_used;
-         ifree (ADDRESS (block + blocks));
-         result = ptr;
-       }
-      else if (blocks == _heapinfo[block].busy.info.size)
-       /* No size change necessary.  */
-       result = ptr;
-      else
-       {
-         /* Won't fit, so allocate a new region that will.
-            Free the old region first in case there is sufficient
-            adjacent free space to grow without moving. */
-         blocks = _heapinfo[block].busy.info.size;
-         /* Prevent free from actually returning memory to the system.  */
-         oldlimit = _heaplimit;
-         _heaplimit = 0;
-         ifree (ptr);
-         result = imalloc (size);
-         if (_heaplimit == 0)
-           _heaplimit = oldlimit;
-         if (result == NULL)
-           {
-             /* Now we're really in trouble.  We have to unfree
-                the thing we just freed.  Unfortunately it might
-                have been coalesced with its neighbors.  */
-             if (_heapindex == block)
-               (void) imalloc (blocks * BLOCKSIZE);
-             else
-               {
-                 genptr_t previous;
-                 previous  = imalloc ((block - _heapindex) * BLOCKSIZE);
-                 (void) imalloc (blocks * BLOCKSIZE);
-                 ifree (previous);
-               }
-             return NULL;
-           }
-         if (ptr != result)
-           memmove (result, ptr, blocks * BLOCKSIZE);
-       }
-      break;
-
-    default:
-      /* Old size is a fragment; type is logarithm
-        to base two of the fragment size.  */
-      if (size > (size_t) (1 << (type - 1)) &&
-         size <= (size_t) (1 << type))
-       /* The new size is the same kind of fragment.  */
-       result = ptr;
-      else
-       {
-         /* The new size is different; allocate a new space,
-            and copy the lesser of the new size and the old. */
-         result = imalloc (size);
-         if (result == NULL)
-           return NULL;
-         memcpy (result, ptr, min (size, (size_t) 1 << type));
-         ifree (ptr);
-       }
-      break;
-    }
-
-  return result;
-}
-
-genptr_t
-realloc (ptr, size)
-     genptr_t ptr;
-     size_t size;
-{
-#ifdef RCHECK
-  struct hdr *hdr;
-  size_t osize;
-#endif
-
-  if (malloc_initialized == 0 && malloc_initialize () == 0)
-    return NULL;
-
-  nrealloc++;
-
-#ifdef RCHECK
-  hdr = ((struct hdr *) ptr) - 1;
-  osize = hdr->size;
-
-  checkhdr (hdr);
-  if (size < osize)
-    zmemset ((char *) ptr + size, FREEFLOOD, osize - size);
-  hdr = (struct hdr *) irealloc ((genptr_t) hdr, sizeof (struct hdr) + size + 1);
-  if (hdr == NULL)
-    return NULL;
-
-  hdr->size = size;
-  hdr->magic = MAGICWORD;
-  ((char *) &hdr[1])[size] = MAGICBYTE;
-  if (size > osize)
-    zmemset ((char *) (hdr + 1) + osize, MALLOCFLOOD, size - osize);
-  return (genptr_t) (hdr + 1);
-#else
-  return (irealloc (ptr, size));
-#endif
-}
-
-/* Allocate an array of NMEMB elements each SIZE bytes long.
-   The entire array is initialized to zeros.  */
-genptr_t
-calloc (nmemb, size)
-     register size_t nmemb;
-     register size_t size;
-{
-  register genptr_t result;
-
-  result = malloc (nmemb * size);
-  if (result != NULL)
-    (void) memset (result, 0, nmemb * size);
-
-  return result;
-}
-
-/* Define the `cfree' alias for `free'.  */
-void
-cfree (ptr)
-     genptr_t ptr;
-{
-  free (ptr);
-}
-
-genptr_t
-memalign (alignment, size)
-     size_t alignment;
-     size_t size;
-{
-  genptr_t result;
-  unsigned long int adj, lastadj;
-
-  /* Allocate a block with enough extra space to pad the block with up to
-     (ALIGNMENT - 1) bytes if necessary.  */
-  result = malloc (size + alignment - 1);
-  if (result == NULL)
-    return NULL;
-
-  /* Figure out how much we will need to pad this particular block
-     to achieve the required alignment.  */
-  adj = (unsigned long int) ((char *) result - (char *) NULL) % alignment;
-
-  do
-    {
-      /* Reallocate the block with only as much excess as it needs.  */
-      free (result);
-      result = malloc (adj + size);
-      if (result == NULL)      /* Impossible unless interrupted.  */
-       return NULL;
-
-      lastadj = adj;
-      adj = (unsigned long int) ((char *) result - (char *) NULL) % alignment;
-      /* It's conceivable we might have been so unlucky as to get a
-        different block with weaker alignment.  If so, this block is too
-        short to contain SIZE after alignment correction.  So we must
-        try again and get another block, slightly larger.  */
-    } while (adj > lastadj);
-
-  if (adj != 0)
-    {
-      /* Record this block in the list of aligned blocks, so that `free'
-        can identify the pointer it is passed, which will be in the middle
-        of an allocated block.  */
-
-      struct alignlist *l;
-      for (l = _aligned_blocks; l != NULL; l = l->next)
-       if (l->aligned == NULL)
-         /* This slot is free.  Use it.  */
-         break;
-      if (l == NULL)
-       {
-         l = (struct alignlist *) imalloc (sizeof (struct alignlist));
-         if (l == NULL)
-           {
-             free (result);
-             return NULL;
-           }
-         l->next = _aligned_blocks;
-         _aligned_blocks = l;
-       }
-      l->exact = result;
-      result = l->aligned = (char *) result + alignment - adj;
-    }
-
-  return result;
-}
-
-/* On some ANSI C systems, some libc functions call _malloc, _free
-   and _realloc.  Make them use the GNU functions.  */
-
-genptr_t
-_malloc (size)
-     size_t size;
-{
-  return malloc (size);
-}
-
-void
-_free (ptr)
-     genptr_t ptr;
-{
-  free (ptr);
-}
-
-genptr_t
-_realloc (ptr, size)
-     genptr_t ptr;
-     size_t size;
-{
-  return realloc (ptr, size);
-}
-
-struct mstats
-mstats ()
-{
-  struct mstats result;
-         
-  result.bytes_total = (char *) default_morecore (0) - _heapbase;
-  result.chunks_used = chunks_used;
-  result.bytes_used = bytes_used;
-  result.chunks_free = chunks_free;
-  result.bytes_free = bytes_free;
-  result.nmalloc = nmalloc;
-  result.nrealloc = nrealloc;
-  result.nfree = nfree;
-  result.nsbrk = nsbrk;
-  result.tsbrk = tsbrk;
-  result.negsbrk = negsbrk;
-  result.tnegsbrk = tnegsbrk;
-
-  return result;
-}
-
-#ifdef RCHECK
-/* Standard debugging hooks for `malloc'. */
-
-static void
-zmemset (ptr, val, size)
-     genptr_t ptr;
-     int val;
-     size_t size;
-{
-  char *cp = ptr;
-
-  while (size--)
-    *cp++ = val;
-}
-
-static enum mcheck_status
-checkhdr (hdr)
-     const struct hdr *hdr;
-{
-  enum mcheck_status status;
-
-  switch (hdr->magic)
-    {
-    default:
-      status = MCHECK_HEAD;
-      break;
-    case MAGICFREE:
-      status = MCHECK_FREE;
-      break;
-    case MAGICWORD:
-      if (((char *) &hdr[1])[hdr->size] != MAGICBYTE)
-       status = MCHECK_TAIL;
-      else
-       status = MCHECK_OK;
-      break;
-    }
-  if (status != MCHECK_OK)
-    mabort (status);
-  return status;
-}
-
-#ifndef botch
-botch (msg)
-     char *msg;
-{
-  fprintf (stderr, "mcheck: %s\n", msg);
-  fflush (stderr);
-  abort ();
-}
-#endif
-
-static void
-mabort (status)
-     enum mcheck_status status;
-{
-  const char *msg;
-
-  switch (status)
-    {
-    case MCHECK_OK:
-      msg = "memory is consistent, library is buggy";
-      break;
-    case MCHECK_HEAD:
-      msg = "memory clobbered before allocated block";
-      break;
-    case MCHECK_TAIL:
-      msg = "memory clobbered past end of allocated block";
-      break;
-    case MCHECK_FREE:
-      msg = "block freed twice";
-      break;
-    default:
-      msg = "bogus mcheck_status, library is buggy";
-      break;
-    }
-
-  botch (msg);
-}
-
-enum mcheck_status
-mprobe (ptr)
-     genptr_t ptr;
-{
-  return checkhdr ((struct hdr *)ptr);
-}
-
-#ifndef STDIO_H_INCLUDED
-#  include <stdio.h>
-#endif
-
-void
-print_malloc_stats (s)
-     char *s;
-{
-  struct mstats ms;
-
-  ms = mstats ();
-  fprintf (stderr, "Memory allocation statistics: %s\n", s ? s : "");
-  fprintf (stderr, "\nTotal chunks in use: %d, total chunks free: %d\n",
-          ms.chunks_used, ms.chunks_free);
-  fprintf (stderr, "Total bytes in use: %u, total bytes free: %u\n",
-          ms.bytes_used, ms.bytes_free);
-  fprintf (stderr, "Total bytes (from heapbase): %d\n", ms.bytes_total);
-  fprintf (stderr, "Total mallocs: %d, total frees: %d, total reallocs: %d\n",
-          ms.nmalloc, ms.nfree, ms.nrealloc);
-  fprintf (stderr, "Total sbrks: %d, total bytes via sbrk: %d\n",
-          ms.nsbrk, ms.tsbrk);
-  fprintf (stderr, "Total negative sbrks: %d, total bytes returned to kernel: %d\n",
-          ms.negsbrk, ms.tnegsbrk);
-}
-#endif /* RCHECK */
diff --git a/lib/malloc/OLD/ogmalloc.c b/lib/malloc/OLD/ogmalloc.c
deleted file mode 100644 (file)
index 6b3600a..0000000
+++ /dev/null
@@ -1,1579 +0,0 @@
-/* DO NOT EDIT THIS FILE -- it is automagically generated.  -*- C -*- */
-
-#define _MALLOC_INTERNAL
-
-/* The malloc headers and source files from the C library follow here.  */
-
-/* Declarations for `malloc' and friends.
-   Copyright 1990, 91, 92, 93, 95, 96 Free Software Foundation, Inc.
-                 Written May 1989 by Mike Haertel.
-
-This library is free software; you can redistribute it and/or
-modify it under the terms of the GNU Library General Public License as
-published by the Free Software Foundation; either version 2 of the
-License, or (at your option) any later version.
-
-This 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
-Library General Public License for more details.
-
-You should have received a copy of the GNU Library General Public
-License along with this library; see the file COPYING.LIB.  If
-not, write to the Free Software Foundation, Inc.,
-59 Temple Place, Suite 330, Boston, MA 02111 USA.
-
-   The author may be reached (Email) at the address mike@ai.mit.edu,
-   or (US mail) as Mike Haertel c/o Free Software Foundation.  */
-
-#ifndef _MALLOC_H
-
-#define _MALLOC_H      1
-
-#ifdef _MALLOC_INTERNAL
-
-#ifdef HAVE_CONFIG_H
-#include <config.h>
-#endif
-
-#if    defined(_LIBC) || defined(STDC_HEADERS) || defined(USG)
-#include <string.h>
-#else
-#ifndef memset
-#define        memset(s, zero, n)      bzero ((s), (n))
-#endif
-#ifndef memcpy
-#define        memcpy(d, s, n)         bcopy ((s), (d), (n))
-#endif
-#endif
-
-#if    defined (__GNU_LIBRARY__) || (defined (__STDC__) && __STDC__)
-#include <limits.h>
-#else
-#ifndef CHAR_BIT
-#define        CHAR_BIT        8
-#endif
-#endif
-
-#ifdef HAVE_UNISTD_H
-#include <unistd.h>
-#endif
-
-#endif /* _MALLOC_INTERNAL.  */
-
-
-#ifdef __cplusplus
-extern "C"
-{
-#endif
-
-#if defined (__cplusplus) || (defined (__STDC__) && __STDC__)
-#undef __P
-#define        __P(args)       args
-#undef __ptr_t
-#define        __ptr_t         void *
-#else /* Not C++ or ANSI C.  */
-#undef __P
-#define        __P(args)       ()
-#undef const
-#define        const
-#undef __ptr_t
-#define        __ptr_t         char *
-#endif /* C++ or ANSI C.  */
-
-#if defined (__STDC__) && __STDC__
-#include <stddef.h>
-#define        __malloc_size_t         size_t
-#define        __malloc_ptrdiff_t      ptrdiff_t
-#else
-#define        __malloc_size_t         unsigned int
-#define        __malloc_ptrdiff_t      int
-#endif
-
-#ifndef        NULL
-#define        NULL    0
-#endif
-
-
-/* Allocate SIZE bytes of memory.  */
-extern __ptr_t malloc __P ((__malloc_size_t __size));
-/* Re-allocate the previously allocated block
-   in __ptr_t, making the new block SIZE bytes long.  */
-extern __ptr_t realloc __P ((__ptr_t __ptr, __malloc_size_t __size));
-/* Allocate NMEMB elements of SIZE bytes each, all initialized to 0.  */
-extern __ptr_t calloc __P ((__malloc_size_t __nmemb, __malloc_size_t __size));
-/* Free a block allocated by `malloc', `realloc' or `calloc'.  */
-extern void free __P ((__ptr_t __ptr));
-
-/* Allocate SIZE bytes allocated to ALIGNMENT bytes.  */
-#if ! (defined (_MALLOC_INTERNAL) && __DJGPP__ - 0 == 1) /* Avoid conflict.  */
-extern __ptr_t memalign __P ((__malloc_size_t __alignment,
-                             __malloc_size_t __size));
-#endif
-
-/* Allocate SIZE bytes on a page boundary.  */
-#if ! (defined (_MALLOC_INTERNAL) && defined (emacs)) /* Avoid conflict.  */
-extern __ptr_t valloc __P ((__malloc_size_t __size));
-#endif
-
-
-#ifdef _MALLOC_INTERNAL
-
-/* The allocator divides the heap into blocks of fixed size; large
-   requests receive one or more whole blocks, and small requests
-   receive a fragment of a block.  Fragment sizes are powers of two,
-   and all fragments of a block are the same size.  When all the
-   fragments in a block have been freed, the block itself is freed.  */
-#define INT_BIT                (CHAR_BIT * sizeof(int))
-#define BLOCKLOG       (INT_BIT > 16 ? 12 : 9)
-#define BLOCKSIZE      (1 << BLOCKLOG)
-#define BLOCKIFY(SIZE) (((SIZE) + BLOCKSIZE - 1) / BLOCKSIZE)
-
-/* Determine the amount of memory spanned by the initial heap table
-   (not an absolute limit).  */
-#define HEAP           (INT_BIT > 16 ? 4194304 : 65536)
-
-/* Number of contiguous free blocks allowed to build up at the end of
-   memory before they will be returned to the system.  */
-#define FINAL_FREE_BLOCKS      8
-
-/* Data structure giving per-block information.  */
-typedef union
-  {
-    /* Heap information for a busy block.  */
-    struct
-      {
-       /* Zero for a large (multiblock) object, or positive giving the
-          logarithm to the base two of the fragment size.  */
-       int type;
-       union
-         {
-           struct
-             {
-               __malloc_size_t nfree; /* Free frags in a fragmented block.  */
-               __malloc_size_t first; /* First free fragment of the block.  */
-             } frag;
-           /* For a large object, in its first block, this has the number
-              of blocks in the object.  In the other blocks, this has a
-              negative number which says how far back the first block is.  */
-           __malloc_ptrdiff_t size;
-         } info;
-      } busy;
-    /* Heap information for a free block
-       (that may be the first of a free cluster).  */
-    struct
-      {
-       __malloc_size_t size;   /* Size (in blocks) of a free cluster.  */
-       __malloc_size_t next;   /* Index of next free cluster.  */
-       __malloc_size_t prev;   /* Index of previous free cluster.  */
-      } free;
-  } malloc_info;
-
-/* Pointer to first block of the heap.  */
-extern char *_heapbase;
-
-/* Table indexed by block number giving per-block information.  */
-extern malloc_info *_heapinfo;
-
-/* Address to block number and vice versa.  */
-#define BLOCK(A)       (((char *) (A) - _heapbase) / BLOCKSIZE + 1)
-#define ADDRESS(B)     ((__ptr_t) (((B) - 1) * BLOCKSIZE + _heapbase))
-
-/* Current search index for the heap table.  */
-extern __malloc_size_t _heapindex;
-
-/* Limit of valid info table indices.  */
-extern __malloc_size_t _heaplimit;
-
-/* Doubly linked lists of free fragments.  */
-struct list
-  {
-    struct list *next;
-    struct list *prev;
-  };
-
-/* Free list headers for each fragment size.  */
-extern struct list _fraghead[];
-
-/* List of blocks allocated with `memalign' (or `valloc').  */
-struct alignlist
-  {
-    struct alignlist *next;
-    __ptr_t aligned;           /* The address that memaligned returned.  */
-    __ptr_t exact;             /* The address that malloc returned.  */
-  };
-extern struct alignlist *_aligned_blocks;
-
-/* Instrumentation.  */
-extern __malloc_size_t _chunks_used;
-extern __malloc_size_t _bytes_used;
-extern __malloc_size_t _chunks_free;
-extern __malloc_size_t _bytes_free;
-
-/* Internal versions of `malloc', `realloc', and `free'
-   used when these functions need to call each other.
-   They are the same but don't call the hooks.  */
-extern __ptr_t _malloc_internal __P ((__malloc_size_t __size));
-extern __ptr_t _realloc_internal __P ((__ptr_t __ptr, __malloc_size_t __size));
-extern void _free_internal __P ((__ptr_t __ptr));
-
-#endif /* _MALLOC_INTERNAL.  */
-
-/* Given an address in the middle of a malloc'd object,
-   return the address of the beginning of the object.  */
-extern __ptr_t malloc_find_object_address __P ((__ptr_t __ptr));
-
-/* Underlying allocation function; successive calls should
-   return contiguous pieces of memory.  */
-extern __ptr_t (*__morecore) __P ((__malloc_ptrdiff_t __size));
-
-/* Default value of `__morecore'.  */
-extern __ptr_t __default_morecore __P ((__malloc_ptrdiff_t __size));
-
-/* If not NULL, this function is called after each time
-   `__morecore' is called to increase the data size.  */
-extern void (*__after_morecore_hook) __P ((void));
-
-/* Number of extra blocks to get each time we ask for more core.
-   This reduces the frequency of calling `(*__morecore)'.  */
-extern __malloc_size_t __malloc_extra_blocks;
-
-/* Nonzero if `malloc' has been called and done its initialization.  */
-extern int __malloc_initialized;
-/* Function called to initialize malloc data structures.  */
-extern int __malloc_initialize __P ((void));
-
-/* Hooks for debugging versions.  */
-extern void (*__malloc_initialize_hook) __P ((void));
-extern void (*__free_hook) __P ((__ptr_t __ptr));
-extern __ptr_t (*__malloc_hook) __P ((__malloc_size_t __size));
-extern __ptr_t (*__realloc_hook) __P ((__ptr_t __ptr, __malloc_size_t __size));
-extern __ptr_t (*__memalign_hook) __P ((__malloc_size_t __size,
-                                       __malloc_size_t __alignment));
-
-/* Return values for `mprobe': these are the kinds of inconsistencies that
-   `mcheck' enables detection of.  */
-enum mcheck_status
-  {
-    MCHECK_DISABLED = -1,      /* Consistency checking is not turned on.  */
-    MCHECK_OK,                 /* Block is fine.  */
-    MCHECK_FREE,               /* Block freed twice.  */
-    MCHECK_HEAD,               /* Memory before the block was clobbered.  */
-    MCHECK_TAIL                        /* Memory after the block was clobbered.  */
-  };
-
-/* Activate a standard collection of debugging hooks.  This must be called
-   before `malloc' is ever called.  ABORTFUNC is called with an error code
-   (see enum above) when an inconsistency is detected.  If ABORTFUNC is
-   null, the standard function prints on stderr and then calls `abort'.  */
-extern int mcheck __P ((void (*__abortfunc) __P ((enum mcheck_status))));
-
-/* Check for aberrations in a particular malloc'd block.  You must have
-   called `mcheck' already.  These are the same checks that `mcheck' does
-   when you free or reallocate a block.  */
-extern enum mcheck_status mprobe __P ((__ptr_t __ptr));
-
-/* Activate a standard collection of tracing hooks.  */
-extern void mtrace __P ((void));
-extern void muntrace __P ((void));
-
-/* Statistics available to the user.  */
-struct mstats
-  {
-    __malloc_size_t bytes_total; /* Total size of the heap. */
-    __malloc_size_t chunks_used; /* Chunks allocated by the user. */
-    __malloc_size_t bytes_used;        /* Byte total of user-allocated chunks. */
-    __malloc_size_t chunks_free; /* Chunks in the free list. */
-    __malloc_size_t bytes_free;        /* Byte total of chunks in the free list. */
-  };
-
-/* Pick up the current statistics. */
-extern struct mstats mstats __P ((void));
-
-/* Call WARNFUN with a warning message when memory usage is high.  */
-extern void memory_warnings __P ((__ptr_t __start,
-                                 void (*__warnfun) __P ((const char *))));
-
-
-/* Relocating allocator.  */
-
-/* Allocate SIZE bytes, and store the address in *HANDLEPTR.  */
-extern __ptr_t r_alloc __P ((__ptr_t *__handleptr, __malloc_size_t __size));
-
-/* Free the storage allocated in HANDLEPTR.  */
-extern void r_alloc_free __P ((__ptr_t *__handleptr));
-
-/* Adjust the block at HANDLEPTR to be SIZE bytes long.  */
-extern __ptr_t r_re_alloc __P ((__ptr_t *__handleptr, __malloc_size_t __size));
-
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif /* malloc.h  */
-/* Memory allocator `malloc'.
-   Copyright 1990, 1991, 1992, 1993, 1994, 1995 Free Software Foundation, Inc.
-                 Written May 1989 by Mike Haertel.
-
-This library is free software; you can redistribute it and/or
-modify it under the terms of the GNU Library General Public License as
-published by the Free Software Foundation; either version 2 of the
-License, or (at your option) any later version.
-
-This 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
-Library General Public License for more details.
-
-You should have received a copy of the GNU Library General Public
-License along with this library; see the file COPYING.LIB.  If
-not, write to the Free Software Foundation, Inc.,
-59 Temple Place, Suite 330, Boston, MA 02111 USA.
-
-   The author may be reached (Email) at the address mike@ai.mit.edu,
-   or (US mail) as Mike Haertel c/o Free Software Foundation.  */
-
-#ifndef        _MALLOC_INTERNAL
-#define _MALLOC_INTERNAL
-#include <malloc.h>
-#endif
-#include <errno.h>
-
-/* How to really get more memory.  */
-__ptr_t (*__morecore) __P ((ptrdiff_t __size)) = __default_morecore;
-
-/* Debugging hook for `malloc'.  */
-__ptr_t (*__malloc_hook) __P ((__malloc_size_t __size));
-
-/* Pointer to the base of the first block.  */
-char *_heapbase;
-
-/* Block information table.  Allocated with align/__free (not malloc/free).  */
-malloc_info *_heapinfo;
-
-/* Number of info entries.  */
-static __malloc_size_t heapsize;
-
-/* Search index in the info table.  */
-__malloc_size_t _heapindex;
-
-/* Limit of valid info table indices.  */
-__malloc_size_t _heaplimit;
-
-/* Free lists for each fragment size.  */
-struct list _fraghead[BLOCKLOG];
-
-/* Instrumentation.  */
-__malloc_size_t _chunks_used;
-__malloc_size_t _bytes_used;
-__malloc_size_t _chunks_free;
-__malloc_size_t _bytes_free;
-
-/* Are you experienced?  */
-int __malloc_initialized;
-
-__malloc_size_t __malloc_extra_blocks;
-
-void (*__malloc_initialize_hook) __P ((void));
-void (*__after_morecore_hook) __P ((void));
-
-
-/* Aligned allocation.  */
-static __ptr_t align __P ((__malloc_size_t));
-static __ptr_t
-align (size)
-     __malloc_size_t size;
-{
-  __ptr_t result;
-  unsigned long int adj;
-
-  result = (*__morecore) (size);
-  adj = (unsigned long int) ((unsigned long int) ((char *) result -
-                                                 (char *) NULL)) % BLOCKSIZE;
-  if (adj != 0)
-    {
-      __ptr_t new;
-      adj = BLOCKSIZE - adj;
-      new = (*__morecore) (adj);
-      result = (char *) result + adj;
-    }
-
-  if (__after_morecore_hook)
-    (*__after_morecore_hook) ();
-
-  return result;
-}
-
-/* Get SIZE bytes, if we can get them starting at END.
-   Return the address of the space we got.
-   If we cannot get space at END, fail and return -1.  */
-static __ptr_t get_contiguous_space __P ((__malloc_ptrdiff_t, __ptr_t));
-static __ptr_t
-get_contiguous_space (size, position)
-     __malloc_ptrdiff_t size;
-     __ptr_t position;
-{
-  __ptr_t before;
-  __ptr_t after;
-
-  before = (*__morecore) (0);
-  /* If we can tell in advance that the break is at the wrong place,
-     fail now.  */
-  if (before != position)
-    return 0;
-
-  /* Allocate SIZE bytes and get the address of them.  */
-  after = (*__morecore) (size);
-  if (!after)
-    return 0;
-
-  /* It was not contiguous--reject it.  */
-  if (after != position)
-    {
-      (*__morecore) (- size);
-      return 0;
-    }
-
-  return after;
-}
-
-
-/* This is called when `_heapinfo' and `heapsize' have just
-   been set to describe a new info table.  Set up the table
-   to describe itself and account for it in the statistics.  */
-static void register_heapinfo __P ((void));
-#ifdef __GNUC__
-__inline__
-#endif
-static void
-register_heapinfo ()
-{
-  __malloc_size_t block, blocks;
-
-  block = BLOCK (_heapinfo);
-  blocks = BLOCKIFY (heapsize * sizeof (malloc_info));
-
-  /* Account for the _heapinfo block itself in the statistics.  */
-  _bytes_used += blocks * BLOCKSIZE;
-  ++_chunks_used;
-
-  /* Describe the heapinfo block itself in the heapinfo.  */
-  _heapinfo[block].busy.type = 0;
-  _heapinfo[block].busy.info.size = blocks;
-  /* Leave back-pointers for malloc_find_address.  */
-  while (--blocks > 0)
-    _heapinfo[block + blocks].busy.info.size = -blocks;
-}
-
-/* Set everything up and remember that we have.  */
-int
-__malloc_initialize ()
-{
-  if (__malloc_initialized)
-    return 0;
-
-  if (__malloc_initialize_hook)
-    (*__malloc_initialize_hook) ();
-
-  heapsize = HEAP / BLOCKSIZE;
-  _heapinfo = (malloc_info *) align (heapsize * sizeof (malloc_info));
-  if (_heapinfo == NULL)
-    return 0;
-  memset (_heapinfo, 0, heapsize * sizeof (malloc_info));
-  _heapinfo[0].free.size = 0;
-  _heapinfo[0].free.next = _heapinfo[0].free.prev = 0;
-  _heapindex = 0;
-  _heapbase = (char *) _heapinfo;
-  _heaplimit = BLOCK (_heapbase + heapsize * sizeof (malloc_info));
-
-  register_heapinfo ();
-
-  __malloc_initialized = 1;
-  return 1;
-}
-
-static int morecore_recursing;
-
-/* Get neatly aligned memory, initializing or
-   growing the heap info table as necessary. */
-static __ptr_t morecore __P ((__malloc_size_t));
-static __ptr_t
-morecore (size)
-     __malloc_size_t size;
-{
-  __ptr_t result;
-  malloc_info *newinfo, *oldinfo;
-  __malloc_size_t newsize;
-
-  if (morecore_recursing)
-    /* Avoid recursion.  The caller will know how to handle a null return.  */
-    return NULL;
-
-  result = align (size);
-  if (result == NULL)
-    return NULL;
-
-  /* Check if we need to grow the info table.  */
-  if ((__malloc_size_t) BLOCK ((char *) result + size) > heapsize)
-    {
-      /* Calculate the new _heapinfo table size.  We do not account for the
-        added blocks in the table itself, as we hope to place them in
-        existing free space, which is already covered by part of the
-        existing table.  */
-      newsize = heapsize;
-      do
-       newsize *= 2;
-      while ((__malloc_size_t) BLOCK ((char *) result + size) > newsize);
-
-      /* We must not reuse existing core for the new info table when called
-        from realloc in the case of growing a large block, because the
-        block being grown is momentarily marked as free.  In this case
-        _heaplimit is zero so we know not to reuse space for internal
-        allocation.  */
-      if (_heaplimit != 0)
-       {
-         /* First try to allocate the new info table in core we already
-            have, in the usual way using realloc.  If realloc cannot
-            extend it in place or relocate it to existing sufficient core,
-            we will get called again, and the code above will notice the
-            `morecore_recursing' flag and return null.  */
-         int save = errno;     /* Don't want to clobber errno with ENOMEM.  */
-         morecore_recursing = 1;
-         newinfo = (malloc_info *) _realloc_internal
-           (_heapinfo, newsize * sizeof (malloc_info));
-         morecore_recursing = 0;
-         if (newinfo == NULL)
-           errno = save;
-         else
-           {
-             /* We found some space in core, and realloc has put the old
-                table's blocks on the free list.  Now zero the new part
-                of the table and install the new table location.  */
-             memset (&newinfo[heapsize], 0,
-                     (newsize - heapsize) * sizeof (malloc_info));
-             _heapinfo = newinfo;
-             heapsize = newsize;
-             goto got_heap;
-           }
-       }
-
-      /* Allocate new space for the malloc info table.  */
-      while (1)
-       {
-         newinfo = (malloc_info *) align (newsize * sizeof (malloc_info));
-
-         /* Did it fail?  */
-         if (newinfo == NULL)
-           {
-             (*__morecore) (-size);
-             return NULL;
-           }
-
-         /* Is it big enough to record status for its own space?
-            If so, we win.  */
-         if ((__malloc_size_t) BLOCK ((char *) newinfo
-                                      + newsize * sizeof (malloc_info))
-             < newsize)
-           break;
-
-         /* Must try again.  First give back most of what we just got.  */
-         (*__morecore) (- newsize * sizeof (malloc_info));
-         newsize *= 2;
-       }
-
-      /* Copy the old table to the beginning of the new,
-        and zero the rest of the new table.  */
-      memcpy (newinfo, _heapinfo, heapsize * sizeof (malloc_info));
-      memset (&newinfo[heapsize], 0,
-             (newsize - heapsize) * sizeof (malloc_info));
-      oldinfo = _heapinfo;
-      _heapinfo = newinfo;
-      heapsize = newsize;
-
-      register_heapinfo ();
-
-      /* Reset _heaplimit so _free_internal never decides
-        it can relocate or resize the info table.  */
-      _heaplimit = 0;
-      _free_internal (oldinfo);
-
-      /* The new heap limit includes the new table just allocated.  */
-      _heaplimit = BLOCK ((char *) newinfo + heapsize * sizeof (malloc_info));
-      return result;
-    }
-
- got_heap:
-  _heaplimit = BLOCK ((char *) result + size);
-  return result;
-}
-
-/* Allocate memory from the heap.  */
-__ptr_t
-_malloc_internal (size)
-     __malloc_size_t size;
-{
-  __ptr_t result;
-  __malloc_size_t block, blocks, lastblocks, start;
-  register __malloc_size_t i;
-  struct list *next;
-
-  /* ANSI C allows `malloc (0)' to either return NULL, or to return a
-     valid address you can realloc and free (though not dereference).
-
-     It turns out that some extant code (sunrpc, at least Ultrix's version)
-     expects `malloc (0)' to return non-NULL and breaks otherwise.
-     Be compatible.  */
-
-#if    0
-  if (size == 0)
-    return NULL;
-#endif
-
-  if (size < sizeof (struct list))
-    size = sizeof (struct list);
-
-#ifdef SUNOS_LOCALTIME_BUG
-  if (size < 16)
-    size = 16;
-#endif
-
-  /* Determine the allocation policy based on the request size.  */
-  if (size <= BLOCKSIZE / 2)
-    {
-      /* Small allocation to receive a fragment of a block.
-        Determine the logarithm to base two of the fragment size. */
-      register __malloc_size_t log = 1;
-      --size;
-      while ((size /= 2) != 0)
-       ++log;
-
-      /* Look in the fragment lists for a
-        free fragment of the desired size. */
-      next = _fraghead[log].next;
-      if (next != NULL)
-       {
-         /* There are free fragments of this size.
-            Pop a fragment out of the fragment list and return it.
-            Update the block's nfree and first counters. */
-         result = (__ptr_t) next;
-         next->prev->next = next->next;
-         if (next->next != NULL)
-           next->next->prev = next->prev;
-         block = BLOCK (result);
-         if (--_heapinfo[block].busy.info.frag.nfree != 0)
-           _heapinfo[block].busy.info.frag.first = (unsigned long int)
-             ((unsigned long int) ((char *) next->next - (char *) NULL)
-              % BLOCKSIZE) >> log;
-
-         /* Update the statistics.  */
-         ++_chunks_used;
-         _bytes_used += 1 << log;
-         --_chunks_free;
-         _bytes_free -= 1 << log;
-       }
-      else
-       {
-         /* No free fragments of the desired size, so get a new block
-            and break it into fragments, returning the first.  */
-         result = malloc (BLOCKSIZE);
-         if (result == NULL)
-           return NULL;
-
-         /* Link all fragments but the first into the free list.  */
-         next = (struct list *) ((char *) result + (1 << log));
-         next->next = NULL;
-         next->prev = &_fraghead[log];
-         _fraghead[log].next = next;
-
-         for (i = 2; i < (__malloc_size_t) (BLOCKSIZE >> log); ++i)
-           {
-             next = (struct list *) ((char *) result + (i << log));
-             next->next = _fraghead[log].next;
-             next->prev = &_fraghead[log];
-             next->prev->next = next;
-             next->next->prev = next;
-           }
-
-         /* Initialize the nfree and first counters for this block.  */
-         block = BLOCK (result);
-         _heapinfo[block].busy.type = log;
-         _heapinfo[block].busy.info.frag.nfree = i - 1;
-         _heapinfo[block].busy.info.frag.first = i - 1;
-
-         _chunks_free += (BLOCKSIZE >> log) - 1;
-         _bytes_free += BLOCKSIZE - (1 << log);
-         _bytes_used -= BLOCKSIZE - (1 << log);
-       }
-    }
-  else
-    {
-      /* Large allocation to receive one or more blocks.
-        Search the free list in a circle starting at the last place visited.
-        If we loop completely around without finding a large enough
-        space we will have to get more memory from the system.  */
-      blocks = BLOCKIFY (size);
-      start = block = _heapindex;
-      while (_heapinfo[block].free.size < blocks)
-       {
-         block = _heapinfo[block].free.next;
-         if (block == start)
-           {
-             /* Need to get more from the system.  Get a little extra.  */
-             __malloc_size_t wantblocks = blocks + __malloc_extra_blocks;
-             block = _heapinfo[0].free.prev;
-             lastblocks = _heapinfo[block].free.size;
-             /* Check to see if the new core will be contiguous with the
-                final free block; if so we don't need to get as much.  */
-             if (_heaplimit != 0 && block + lastblocks == _heaplimit &&
-                 /* We can't do this if we will have to make the heap info
-                     table bigger to accomodate the new space.  */
-                 block + wantblocks <= heapsize &&
-                 get_contiguous_space ((wantblocks - lastblocks) * BLOCKSIZE,
-                                       ADDRESS (block + lastblocks)))
-               {
-                 /* We got it contiguously.  Which block we are extending
-                    (the `final free block' referred to above) might have
-                    changed, if it got combined with a freed info table.  */
-                 block = _heapinfo[0].free.prev;
-                 _heapinfo[block].free.size += (wantblocks - lastblocks);
-                 _bytes_free += (wantblocks - lastblocks) * BLOCKSIZE;
-                 _heaplimit += wantblocks - lastblocks;
-                 continue;
-               }
-             result = morecore (wantblocks * BLOCKSIZE);
-             if (result == NULL)
-               return NULL;
-             block = BLOCK (result);
-             /* Put the new block at the end of the free list.  */
-             _heapinfo[block].free.size = wantblocks;
-             _heapinfo[block].free.prev = _heapinfo[0].free.prev;
-             _heapinfo[block].free.next = 0;
-             _heapinfo[0].free.prev = block;
-             _heapinfo[_heapinfo[block].free.prev].free.next = block;
-             ++_chunks_free;
-             /* Now loop to use some of that block for this allocation.  */
-           }
-       }
-
-      /* At this point we have found a suitable free list entry.
-        Figure out how to remove what we need from the list. */
-      result = ADDRESS (block);
-      if (_heapinfo[block].free.size > blocks)
-       {
-         /* The block we found has a bit left over,
-            so relink the tail end back into the free list. */
-         _heapinfo[block + blocks].free.size
-           = _heapinfo[block].free.size - blocks;
-         _heapinfo[block + blocks].free.next
-           = _heapinfo[block].free.next;
-         _heapinfo[block + blocks].free.prev
-           = _heapinfo[block].free.prev;
-         _heapinfo[_heapinfo[block].free.prev].free.next
-           = _heapinfo[_heapinfo[block].free.next].free.prev
-           = _heapindex = block + blocks;
-       }
-      else
-       {
-         /* The block exactly matches our requirements,
-            so just remove it from the list. */
-         _heapinfo[_heapinfo[block].free.next].free.prev
-           = _heapinfo[block].free.prev;
-         _heapinfo[_heapinfo[block].free.prev].free.next
-           = _heapindex = _heapinfo[block].free.next;
-         --_chunks_free;
-       }
-
-      _heapinfo[block].busy.type = 0;
-      _heapinfo[block].busy.info.size = blocks;
-      ++_chunks_used;
-      _bytes_used += blocks * BLOCKSIZE;
-      _bytes_free -= blocks * BLOCKSIZE;
-
-      /* Mark all the blocks of the object just allocated except for the
-        first with a negative number so you can find the first block by
-        adding that adjustment.  */
-      while (--blocks > 0)
-       _heapinfo[block + blocks].busy.info.size = -blocks;
-    }
-
-  return result;
-}
-
-__ptr_t
-malloc (size)
-     __malloc_size_t size;
-{
-  if (!__malloc_initialized && !__malloc_initialize ())
-    return NULL;
-
-  return (__malloc_hook != NULL ? *__malloc_hook : _malloc_internal) (size);
-}
-\f
-#ifndef _LIBC
-
-/* On some ANSI C systems, some libc functions call _malloc, _free
-   and _realloc.  Make them use the GNU functions.  */
-
-__ptr_t
-_malloc (size)
-     __malloc_size_t size;
-{
-  return malloc (size);
-}
-
-void
-_free (ptr)
-     __ptr_t ptr;
-{
-  free (ptr);
-}
-
-__ptr_t
-_realloc (ptr, size)
-     __ptr_t ptr;
-     __malloc_size_t size;
-{
-  return realloc (ptr, size);
-}
-
-#endif
-/* Free a block of memory allocated by `malloc'.
-   Copyright 1990, 1991, 1992, 1994, 1995 Free Software Foundation, Inc.
-                 Written May 1989 by Mike Haertel.
-
-This library is free software; you can redistribute it and/or
-modify it under the terms of the GNU Library General Public License as
-published by the Free Software Foundation; either version 2 of the
-License, or (at your option) any later version.
-
-This 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
-Library General Public License for more details.
-
-You should have received a copy of the GNU Library General Public
-License along with this library; see the file COPYING.LIB.  If
-not, write to the Free Software Foundation, Inc.,
-59 Temple Place, Suite 330, Boston, MA 02111 USA.
-
-   The author may be reached (Email) at the address mike@ai.mit.edu,
-   or (US mail) as Mike Haertel c/o Free Software Foundation.  */
-
-#ifndef        _MALLOC_INTERNAL
-#define _MALLOC_INTERNAL
-#include <malloc.h>
-#endif
-
-
-/* Cope with systems lacking `memmove'.    */
-#ifndef memmove
-#if  (defined (MEMMOVE_MISSING) || \
-      !defined(_LIBC) && !defined(STDC_HEADERS) && !defined(USG))
-#ifdef emacs
-#undef __malloc_safe_bcopy
-#define __malloc_safe_bcopy safe_bcopy
-#endif
-/* This function is defined in realloc.c.  */
-extern void __malloc_safe_bcopy __P ((__ptr_t, __ptr_t, __malloc_size_t));
-#define memmove(to, from, size)        __malloc_safe_bcopy ((from), (to), (size))
-#endif
-#endif
-
-
-/* Debugging hook for free.  */
-void (*__free_hook) __P ((__ptr_t __ptr));
-
-/* List of blocks allocated by memalign.  */
-struct alignlist *_aligned_blocks = NULL;
-
-/* Return memory to the heap.
-   Like `free' but don't call a __free_hook if there is one.  */
-void
-_free_internal (ptr)
-     __ptr_t ptr;
-{
-  int type;
-  __malloc_size_t block, blocks;
-  register __malloc_size_t i;
-  struct list *prev, *next;
-  __ptr_t curbrk;
-  const __malloc_size_t lesscore_threshold
-    /* Threshold of free space at which we will return some to the system.  */
-    = FINAL_FREE_BLOCKS + 2 * __malloc_extra_blocks;
-
-  register struct alignlist *l;
-
-  if (ptr == NULL)
-    return;
-
-  for (l = _aligned_blocks; l != NULL; l = l->next)
-    if (l->aligned == ptr)
-      {
-       l->aligned = NULL;      /* Mark the slot in the list as free.  */
-       ptr = l->exact;
-       break;
-      }
-
-  block = BLOCK (ptr);
-
-  type = _heapinfo[block].busy.type;
-  switch (type)
-    {
-    case 0:
-      /* Get as many statistics as early as we can.  */
-      --_chunks_used;
-      _bytes_used -= _heapinfo[block].busy.info.size * BLOCKSIZE;
-      _bytes_free += _heapinfo[block].busy.info.size * BLOCKSIZE;
-
-      /* Find the free cluster previous to this one in the free list.
-        Start searching at the last block referenced; this may benefit
-        programs with locality of allocation.  */
-      i = _heapindex;
-      if (i > block)
-       while (i > block)
-         i = _heapinfo[i].free.prev;
-      else
-       {
-         do
-           i = _heapinfo[i].free.next;
-         while (i > 0 && i < block);
-         i = _heapinfo[i].free.prev;
-       }
-
-      /* Determine how to link this block into the free list.  */
-      if (block == i + _heapinfo[i].free.size)
-       {
-         /* Coalesce this block with its predecessor.  */
-         _heapinfo[i].free.size += _heapinfo[block].busy.info.size;
-         block = i;
-       }
-      else
-       {
-         /* Really link this block back into the free list.  */
-         _heapinfo[block].free.size = _heapinfo[block].busy.info.size;
-         _heapinfo[block].free.next = _heapinfo[i].free.next;
-         _heapinfo[block].free.prev = i;
-         _heapinfo[i].free.next = block;
-         _heapinfo[_heapinfo[block].free.next].free.prev = block;
-         ++_chunks_free;
-       }
-
-      /* Now that the block is linked in, see if we can coalesce it
-        with its successor (by deleting its successor from the list
-        and adding in its size).  */
-      if (block + _heapinfo[block].free.size == _heapinfo[block].free.next)
-       {
-         _heapinfo[block].free.size
-           += _heapinfo[_heapinfo[block].free.next].free.size;
-         _heapinfo[block].free.next
-           = _heapinfo[_heapinfo[block].free.next].free.next;
-         _heapinfo[_heapinfo[block].free.next].free.prev = block;
-         --_chunks_free;
-       }
-
-      /* How many trailing free blocks are there now?  */
-      blocks = _heapinfo[block].free.size;
-
-      /* Where is the current end of accessible core?  */
-      curbrk = (*__morecore) (0);
-
-      if (_heaplimit != 0 && curbrk == ADDRESS (_heaplimit))
-       {
-         /* The end of the malloc heap is at the end of accessible core.
-            It's possible that moving _heapinfo will allow us to
-            return some space to the system.  */
-
-         __malloc_size_t info_block = BLOCK (_heapinfo);
-         __malloc_size_t info_blocks = _heapinfo[info_block].busy.info.size;
-         __malloc_size_t prev_block = _heapinfo[block].free.prev;
-         __malloc_size_t prev_blocks = _heapinfo[prev_block].free.size;
-         __malloc_size_t next_block = _heapinfo[block].free.next;
-         __malloc_size_t next_blocks = _heapinfo[next_block].free.size;
-
-         if (/* Win if this block being freed is last in core, the info table
-                is just before it, the previous free block is just before the
-                info table, and the two free blocks together form a useful
-                amount to return to the system.  */
-             (block + blocks == _heaplimit &&
-              info_block + info_blocks == block &&
-              prev_block != 0 && prev_block + prev_blocks == info_block &&
-              blocks + prev_blocks >= lesscore_threshold) ||
-             /* Nope, not the case.  We can also win if this block being
-                freed is just before the info table, and the table extends
-                to the end of core or is followed only by a free block,
-                and the total free space is worth returning to the system.  */
-             (block + blocks == info_block &&
-              ((info_block + info_blocks == _heaplimit &&
-                blocks >= lesscore_threshold) ||
-               (info_block + info_blocks == next_block &&
-                next_block + next_blocks == _heaplimit &&
-                blocks + next_blocks >= lesscore_threshold)))
-             )
-           {
-             malloc_info *newinfo;
-             __malloc_size_t oldlimit = _heaplimit;
-
-             /* Free the old info table, clearing _heaplimit to avoid
-                recursion into this code.  We don't want to return the
-                table's blocks to the system before we have copied them to
-                the new location.  */
-             _heaplimit = 0;
-             _free_internal (_heapinfo);
-             _heaplimit = oldlimit;
-
-             /* Tell malloc to search from the beginning of the heap for
-                free blocks, so it doesn't reuse the ones just freed.  */
-             _heapindex = 0;
-
-             /* Allocate new space for the info table and move its data.  */
-             newinfo = (malloc_info *) _malloc_internal (info_blocks
-                                                         * BLOCKSIZE);
-             memmove (newinfo, _heapinfo, info_blocks * BLOCKSIZE);
-             _heapinfo = newinfo;
-
-             /* We should now have coalesced the free block with the
-                blocks freed from the old info table.  Examine the entire
-                trailing free block to decide below whether to return some
-                to the system.  */
-             block = _heapinfo[0].free.prev;
-             blocks = _heapinfo[block].free.size;
-           }
-
-         /* Now see if we can return stuff to the system.  */
-         if (block + blocks == _heaplimit && blocks >= lesscore_threshold)
-           {
-             register __malloc_size_t bytes = blocks * BLOCKSIZE;
-             _heaplimit -= blocks;
-             (*__morecore) (-bytes);
-             _heapinfo[_heapinfo[block].free.prev].free.next
-               = _heapinfo[block].free.next;
-             _heapinfo[_heapinfo[block].free.next].free.prev
-               = _heapinfo[block].free.prev;
-             block = _heapinfo[block].free.prev;
-             --_chunks_free;
-             _bytes_free -= bytes;
-           }
-       }
-
-      /* Set the next search to begin at this block.  */
-      _heapindex = block;
-      break;
-
-    default:
-      /* Do some of the statistics.  */
-      --_chunks_used;
-      _bytes_used -= 1 << type;
-      ++_chunks_free;
-      _bytes_free += 1 << type;
-
-      /* Get the address of the first free fragment in this block.  */
-      prev = (struct list *) ((char *) ADDRESS (block) +
-                             (_heapinfo[block].busy.info.frag.first << type));
-
-      if (_heapinfo[block].busy.info.frag.nfree == (BLOCKSIZE >> type) - 1)
-       {
-         /* If all fragments of this block are free, remove them
-            from the fragment list and free the whole block.  */
-         next = prev;
-         for (i = 1; i < (__malloc_size_t) (BLOCKSIZE >> type); ++i)
-           next = next->next;
-         prev->prev->next = next;
-         if (next != NULL)
-           next->prev = prev->prev;
-         _heapinfo[block].busy.type = 0;
-         _heapinfo[block].busy.info.size = 1;
-
-         /* Keep the statistics accurate.  */
-         ++_chunks_used;
-         _bytes_used += BLOCKSIZE;
-         _chunks_free -= BLOCKSIZE >> type;
-         _bytes_free -= BLOCKSIZE;
-
-         free (ADDRESS (block));
-       }
-      else if (_heapinfo[block].busy.info.frag.nfree != 0)
-       {
-         /* If some fragments of this block are free, link this
-            fragment into the fragment list after the first free
-            fragment of this block. */
-         next = (struct list *) ptr;
-         next->next = prev->next;
-         next->prev = prev;
-         prev->next = next;
-         if (next->next != NULL)
-           next->next->prev = next;
-         ++_heapinfo[block].busy.info.frag.nfree;
-       }
-      else
-       {
-         /* No fragments of this block are free, so link this
-            fragment into the fragment list and announce that
-            it is the first free fragment of this block. */
-         prev = (struct list *) ptr;
-         _heapinfo[block].busy.info.frag.nfree = 1;
-         _heapinfo[block].busy.info.frag.first = (unsigned long int)
-           ((unsigned long int) ((char *) ptr - (char *) NULL)
-            % BLOCKSIZE >> type);
-         prev->next = _fraghead[type].next;
-         prev->prev = &_fraghead[type];
-         prev->prev->next = prev;
-         if (prev->next != NULL)
-           prev->next->prev = prev;
-       }
-      break;
-    }
-}
-
-/* Return memory to the heap.  */
-void
-free (ptr)
-     __ptr_t ptr;
-{
-  if (__free_hook != NULL)
-    (*__free_hook) (ptr);
-  else
-    _free_internal (ptr);
-}
-
-/* Define the `cfree' alias for `free'.  */
-#ifdef weak_alias
-weak_alias (free, cfree)
-#else
-void
-cfree (ptr)
-     __ptr_t ptr;
-{
-  free (ptr);
-}
-#endif
-/* Change the size of a block allocated by `malloc'.
-   Copyright 1990, 1991, 1992, 1993, 1994, 1995 Free Software Foundation, Inc.
-                    Written May 1989 by Mike Haertel.
-
-This library is free software; you can redistribute it and/or
-modify it under the terms of the GNU Library General Public License as
-published by the Free Software Foundation; either version 2 of the
-License, or (at your option) any later version.
-
-This 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
-Library General Public License for more details.
-
-You should have received a copy of the GNU Library General Public
-License along with this library; see the file COPYING.LIB.  If
-not, write to the Free Software Foundation, Inc.,
-59 Temple Place, Suite 330, Boston, MA 02111 USA.
-
-   The author may be reached (Email) at the address mike@ai.mit.edu,
-   or (US mail) as Mike Haertel c/o Free Software Foundation.  */
-
-#ifndef        _MALLOC_INTERNAL
-#define _MALLOC_INTERNAL
-#include <malloc.h>
-#endif
-
-
-
-/* Cope with systems lacking `memmove'.    */
-#if  (defined (MEMMOVE_MISSING) || \
-      !defined(_LIBC) && !defined(STDC_HEADERS) && !defined(USG))
-
-#ifdef emacs
-#undef __malloc_safe_bcopy
-#define __malloc_safe_bcopy safe_bcopy
-#else
-
-/* Snarfed directly from Emacs src/dispnew.c:
-   XXX Should use system bcopy if it handles overlap.  */
-
-/* Like bcopy except never gets confused by overlap.  */
-
-void
-__malloc_safe_bcopy (afrom, ato, size)
-     __ptr_t afrom;
-     __ptr_t ato;
-     __malloc_size_t size;
-{
-  char *from = afrom, *to = ato;
-
-  if (size <= 0 || from == to)
-    return;
-
-  /* If the source and destination don't overlap, then bcopy can
-     handle it.  If they do overlap, but the destination is lower in
-     memory than the source, we'll assume bcopy can handle that.  */
-  if (to < from || from + size <= to)
-    bcopy (from, to, size);
-
-  /* Otherwise, we'll copy from the end.  */
-  else
-    {
-      register char *endf = from + size;
-      register char *endt = to + size;
-
-      /* If TO - FROM is large, then we should break the copy into
-        nonoverlapping chunks of TO - FROM bytes each.  However, if
-        TO - FROM is small, then the bcopy function call overhead
-        makes this not worth it.  The crossover point could be about
-        anywhere.  Since I don't think the obvious copy loop is too
-        bad, I'm trying to err in its favor.  */
-      if (to - from < 64)
-       {
-         do
-           *--endt = *--endf;
-         while (endf != from);
-       }
-      else
-       {
-         for (;;)
-           {
-             endt -= (to - from);
-             endf -= (to - from);
-
-             if (endt < to)
-               break;
-
-             bcopy (endf, endt, to - from);
-           }
-
-         /* If SIZE wasn't a multiple of TO - FROM, there will be a
-            little left over.  The amount left over is
-            (endt + (to - from)) - to, which is endt - from.  */
-         bcopy (from, to, endt - from);
-       }
-    }
-}
-#endif /* emacs */
-
-#ifndef memmove
-extern void __malloc_safe_bcopy __P ((__ptr_t, __ptr_t, __malloc_size_t));
-#define memmove(to, from, size) __malloc_safe_bcopy ((from), (to), (size))
-#endif
-
-#endif
-
-
-#define min(A, B) ((A) < (B) ? (A) : (B))
-
-/* Debugging hook for realloc.  */
-__ptr_t (*__realloc_hook) __P ((__ptr_t __ptr, __malloc_size_t __size));
-
-/* Resize the given region to the new size, returning a pointer
-   to the (possibly moved) region.  This is optimized for speed;
-   some benchmarks seem to indicate that greater compactness is
-   achieved by unconditionally allocating and copying to a
-   new region.  This module has incestuous knowledge of the
-   internals of both free and malloc. */
-__ptr_t
-_realloc_internal (ptr, size)
-     __ptr_t ptr;
-     __malloc_size_t size;
-{
-  __ptr_t result;
-  int type;
-  __malloc_size_t block, blocks, oldlimit;
-
-  if (size == 0)
-    {
-      _free_internal (ptr);
-      return _malloc_internal (0);
-    }
-  else if (ptr == NULL)
-    return _malloc_internal (size);
-
-  block = BLOCK (ptr);
-
-  type = _heapinfo[block].busy.type;
-  switch (type)
-    {
-    case 0:
-      /* Maybe reallocate a large block to a small fragment.  */
-      if (size <= BLOCKSIZE / 2)
-       {
-         result = _malloc_internal (size);
-         if (result != NULL)
-           {
-             memcpy (result, ptr, size);
-             _free_internal (ptr);
-             return result;
-           }
-       }
-
-      /* The new size is a large allocation as well;
-        see if we can hold it in place. */
-      blocks = BLOCKIFY (size);
-      if (blocks < _heapinfo[block].busy.info.size)
-       {
-         /* The new size is smaller; return
-            excess memory to the free list. */
-         _heapinfo[block + blocks].busy.type = 0;
-         _heapinfo[block + blocks].busy.info.size
-           = _heapinfo[block].busy.info.size - blocks;
-         _heapinfo[block].busy.info.size = blocks;
-         /* We have just created a new chunk by splitting a chunk in two.
-            Now we will free this chunk; increment the statistics counter
-            so it doesn't become wrong when _free_internal decrements it.  */
-         ++_chunks_used;
-         _free_internal (ADDRESS (block + blocks));
-         result = ptr;
-       }
-      else if (blocks == _heapinfo[block].busy.info.size)
-       /* No size change necessary.  */
-       result = ptr;
-      else
-       {
-         /* Won't fit, so allocate a new region that will.
-            Free the old region first in case there is sufficient
-            adjacent free space to grow without moving. */
-         blocks = _heapinfo[block].busy.info.size;
-         /* Prevent free from actually returning memory to the system.  */
-         oldlimit = _heaplimit;
-         _heaplimit = 0;
-         _free_internal (ptr);
-         result = _malloc_internal (size);
-         if (_heaplimit == 0)
-           _heaplimit = oldlimit;
-         if (result == NULL)
-           {
-             /* Now we're really in trouble.  We have to unfree
-                the thing we just freed.  Unfortunately it might
-                have been coalesced with its neighbors.  */
-             if (_heapindex == block)
-               (void) _malloc_internal (blocks * BLOCKSIZE);
-             else
-               {
-                 __ptr_t previous
-                   = _malloc_internal ((block - _heapindex) * BLOCKSIZE);
-                 (void) _malloc_internal (blocks * BLOCKSIZE);
-                 _free_internal (previous);
-               }
-             return NULL;
-           }
-         if (ptr != result)
-           memmove (result, ptr, blocks * BLOCKSIZE);
-       }
-      break;
-
-    default:
-      /* Old size is a fragment; type is logarithm
-        to base two of the fragment size.  */
-      if (size > (__malloc_size_t) (1 << (type - 1)) &&
-         size <= (__malloc_size_t) (1 << type))
-       /* The new size is the same kind of fragment.  */
-       result = ptr;
-      else
-       {
-         /* The new size is different; allocate a new space,
-            and copy the lesser of the new size and the old. */
-         result = _malloc_internal (size);
-         if (result == NULL)
-           return NULL;
-         memcpy (result, ptr, min (size, (__malloc_size_t) 1 << type));
-         _free_internal (ptr);
-       }
-      break;
-    }
-
-  return result;
-}
-
-__ptr_t
-realloc (ptr, size)
-     __ptr_t ptr;
-     __malloc_size_t size;
-{
-  if (!__malloc_initialized && !__malloc_initialize ())
-    return NULL;
-
-  return (__realloc_hook != NULL ? *__realloc_hook : _realloc_internal)
-    (ptr, size);
-}
-/* Copyright (C) 1991, 1992, 1994 Free Software Foundation, Inc.
-
-This library is free software; you can redistribute it and/or
-modify it under the terms of the GNU Library General Public License as
-published by the Free Software Foundation; either version 2 of the
-License, or (at your option) any later version.
-
-This 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
-Library General Public License for more details.
-
-You should have received a copy of the GNU Library General Public
-License along with this library; see the file COPYING.LIB.  If
-not, write to the Free Software Foundation, Inc.,
-59 Temple Place, Suite 330, Boston, MA 02111 USA.
-
-   The author may be reached (Email) at the address mike@ai.mit.edu,
-   or (US mail) as Mike Haertel c/o Free Software Foundation.  */
-
-#ifndef        _MALLOC_INTERNAL
-#define        _MALLOC_INTERNAL
-#include <malloc.h>
-#endif
-
-/* Allocate an array of NMEMB elements each SIZE bytes long.
-   The entire array is initialized to zeros.  */
-__ptr_t
-calloc (nmemb, size)
-     register __malloc_size_t nmemb;
-     register __malloc_size_t size;
-{
-  register __ptr_t result = malloc (nmemb * size);
-
-  if (result != NULL)
-    (void) memset (result, 0, nmemb * size);
-
-  return result;
-}
-/* Copyright (C) 1991, 1992, 1993, 1994, 1995 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 General Public License as published by
-the Free Software Foundation; either version 2, 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 General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with the GNU C Library; see the file COPYING.  If not, write to
-the Free Software Foundation, 59 Temple Place, Suite 330, Boston, MA 02111 USA.  */
-
-#ifndef        _MALLOC_INTERNAL
-#define        _MALLOC_INTERNAL
-#include <malloc.h>
-#endif
-
-#ifndef        __GNU_LIBRARY__
-#define        __sbrk  sbrk
-#endif
-
-#ifdef __GNU_LIBRARY__
-/* It is best not to declare this and cast its result on foreign operating
-   systems with potentially hostile include files.  */
-
-#include <stddef.h>
-extern __ptr_t __sbrk __P ((ptrdiff_t increment));
-#endif
-
-#ifndef NULL
-#define NULL 0
-#endif
-
-/* Allocate INCREMENT more bytes of data space,
-   and return the start of data space, or NULL on errors.
-   If INCREMENT is negative, shrink data space.  */
-__ptr_t
-__default_morecore (increment)
-     __malloc_ptrdiff_t increment;
-{
-  __ptr_t result = (__ptr_t) __sbrk (increment);
-  if (result == (__ptr_t) -1)
-    return NULL;
-  return result;
-}
-/* Copyright (C) 1991, 92, 93, 94, 95, 96 Free Software Foundation, Inc.
-
-This library is free software; you can redistribute it and/or
-modify it under the terms of the GNU Library General Public License as
-published by the Free Software Foundation; either version 2 of the
-License, or (at your option) any later version.
-
-This 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
-Library General Public License for more details.
-
-You should have received a copy of the GNU Library General Public
-License along with this library; see the file COPYING.LIB.  If
-not, write to the Free Software Foundation, Inc.,
-59 Temple Place, Suite 330, Boston, MA 02111 USA.  */
-
-#ifndef        _MALLOC_INTERNAL
-#define _MALLOC_INTERNAL
-#include <malloc.h>
-#endif
-
-#if __DJGPP__ - 0 == 1
-
-/* There is some problem with memalign in DJGPP v1 and we are supposed
-   to omit it.  Noone told me why, they just told me to do it.  */
-
-#else
-
-__ptr_t (*__memalign_hook) __P ((size_t __size, size_t __alignment));
-
-__ptr_t
-memalign (alignment, size)
-     __malloc_size_t alignment;
-     __malloc_size_t size;
-{
-  __ptr_t result;
-  unsigned long int adj, lastadj;
-
-  if (__memalign_hook)
-    return (*__memalign_hook) (alignment, size);
-
-  /* Allocate a block with enough extra space to pad the block with up to
-     (ALIGNMENT - 1) bytes if necessary.  */
-  result = malloc (size + alignment - 1);
-  if (result == NULL)
-    return NULL;
-
-  /* Figure out how much we will need to pad this particular block
-     to achieve the required alignment.  */
-  adj = (unsigned long int) ((char *) result - (char *) NULL) % alignment;
-
-  do
-    {
-      /* Reallocate the block with only as much excess as it needs.  */
-      free (result);
-      result = malloc (adj + size);
-      if (result == NULL)      /* Impossible unless interrupted.  */
-       return NULL;
-
-      lastadj = adj;
-      adj = (unsigned long int) ((char *) result - (char *) NULL) % alignment;
-      /* It's conceivable we might have been so unlucky as to get a
-        different block with weaker alignment.  If so, this block is too
-        short to contain SIZE after alignment correction.  So we must
-        try again and get another block, slightly larger.  */
-    } while (adj > lastadj);
-
-  if (adj != 0)
-    {
-      /* Record this block in the list of aligned blocks, so that `free'
-        can identify the pointer it is passed, which will be in the middle
-        of an allocated block.  */
-
-      struct alignlist *l;
-      for (l = _aligned_blocks; l != NULL; l = l->next)
-       if (l->aligned == NULL)
-         /* This slot is free.  Use it.  */
-         break;
-      if (l == NULL)
-       {
-         l = (struct alignlist *) malloc (sizeof (struct alignlist));
-         if (l == NULL)
-           {
-             free (result);
-             return NULL;
-           }
-         l->next = _aligned_blocks;
-         _aligned_blocks = l;
-       }
-      l->exact = result;
-      result = l->aligned = (char *) result + alignment - adj;
-    }
-
-  return result;
-}
-
-#endif /* Not DJGPP v1 */
diff --git a/lib/malloc/OLD/old-nmalloc.c b/lib/malloc/OLD/old-nmalloc.c
deleted file mode 100644 (file)
index 4d08c44..0000000
+++ /dev/null
@@ -1,890 +0,0 @@
-/* malloc.c - dynamic memory allocation for bash. */
-
-/*  Copyright (C) 1985, 1987, 1997 Free Software Foundation, Inc.
-
-    This program is free software; you can redistribute it and/or modify
-    it under the terms of the GNU General Public License as published by
-    the Free Software Foundation; either version 2, or (at your option)
-    any later version.
-
-    This program 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 General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with this program; if not, write to the Free Software
-    Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111 USA.
-
-In other words, you are welcome to use, share and improve this program.
-You are forbidden to forbid anyone else to use, share and improve
-what you give them.   Help stamp out software-hoarding!  */
-
-/*
- * @(#)nmalloc.c 1 (Caltech) 2/21/82
- *
- *     U of M Modified: 20 Jun 1983 ACT: strange hacks for Emacs
- *
- *     Nov 1983, Mike@BRL, Added support for 4.1C/4.2 BSD.
- *
- * This is a very fast storage allocator.  It allocates blocks of a small 
- * number of different sizes, and keeps free lists of each size.  Blocks
- * that don't exactly fit are passed up to the next larger size.  In this 
- * implementation, the available sizes are (2^n)-4 (or -16) bytes long.
- * This is designed for use in a program that uses vast quantities of
- * memory, but bombs when it runs out.  To make it a little better, it
- * warns the user when he starts to get near the end.
- *
- * June 84, ACT: modified rcheck code to check the range given to malloc,
- * rather than the range determined by the 2-power used.
- *
- * Jan 85, RMS: calls malloc_warning to issue warning on nearly full.
- * No longer Emacs-specific; can serve as all-purpose malloc for GNU.
- * You should call malloc_init to reinitialize after loading dumped Emacs.
- * Call malloc_stats to get info on memory stats if MALLOC_STATS turned on.
- * realloc knows how to return same block given, just changing its size,
- * if the power of 2 is correct.
- */
-#define MALLOC_STATS           /* for the time being */
-
-/*
- * nextf[i] is the pointer to the next free block of size 2^(i+3).  The
- * smallest allocatable block is 8 bytes.  The overhead information will
- * go in the first int of the block, and the returned pointer will point
- * to the second.
- */
-
-/* XXX For the time being, until an autoconf test is created (ce has one) */
-#define bits32_t               int
-#define u_bits32_t     unsigned int
-
-/* Define this to have free() write 0xcf into memory as it's freed, to
-   uncover callers that refer to freed memory. */
-/* SCO 3.2v4 getcwd and possibly other libc routines fail with MEMSCRAMBLE */
-#if !defined (NO_MEMSCRAMBLE)
-#  define MEMSCRAMBLE
-#endif
-
-#if defined (HAVE_CONFIG_H)
-#  include <config.h>
-#endif /* HAVE_CONFIG_H */
-
-#if defined (HAVE_UNISTD_H)
-#  include <unistd.h>
-#endif
-
-/* Determine which kind of system this is.  */
-#if defined (SHELL)
-#  include "bashtypes.h"
-#else
-#  include <sys/types.h>
-#endif
-#include <signal.h>
-
-#if defined (HAVE_STRING_H)
-#  include <string.h>
-#else
-#  include <strings.h>
-#endif
-
-#if defined (MALLOC_STATS) || !defined (botch)
-#  include <stdio.h>
-#endif /* MALLOC_STATS || !botch */
-
-/* Define getpagesize () if the system does not.  */
-#ifndef HAVE_GETPAGESIZE
-#  include "getpagesize.h"
-#endif
-
-#if __GNUC__ > 1
-#  define FASTCOPY(s, d, n)  __builtin_memcpy (d, s, n)
-#else /* !__GNUC__ */
-#  if !defined (HAVE_BCOPY)
-#    if !defined (HAVE_MEMMOVE)
-#      define FASTCOPY(s, d, n)  memcpy (d, s, n)
-#    else
-#      define FASTCOPY(s, d, n)  memmove (d, s, n)
-#    endif /* !HAVE_MEMMOVE */
-#  else /* HAVE_BCOPY */
-#    define FASTCOPY(s, d, n)  bcopy (s, d, n)
-#  endif /* HAVE_BCOPY */
-#endif /* !__GNUC__ */
-
-#if !defined (NULL)
-#  define NULL 0
-#endif
-
-#define NBUCKETS       30
-
-#define ISALLOC ((char) 0xf7)  /* magic byte that implies allocation */
-#define ISFREE ((char) 0x54)   /* magic byte that implies free block */
-                               /* this is for error checking only */
-#define ISMEMALIGN ((char) 0xd6)  /* Stored before the value returned by
-                                    memalign, with the rest of the word
-                                    being the distance to the true
-                                    beginning of the block.  */
-
-#if !defined (SBRK_DECLARED)
-extern char *sbrk ();
-#endif /* !SBRK_DECLARED */
-
-#ifdef MALLOC_STATS
-/*
- * NMALLOC[i] is the difference between the number of mallocs and frees
- * for a given block size.  TMALLOC[i] is the total number of mallocs for
- * a given block size.  NMORECORE[i] is the total number of calls to
- * morecore(i).  NMAL and NFRE are counts of the number of calls to malloc()
- * and free(), respectively.  NREALLOC is the total number of calls to
- * realloc(); NRCOPY is the number of times realloc() had to allocate new
- * memory and copy to it.  NRECURSE is a count of the number of recursive
- * calls to malloc() for the same bucket size, which can be caused by calls
- * to malloc() from a signal handler.  NSBRK is the number of calls to sbrk()
- * (whether by morecore() or for alignment); TSBRK is the total number of
- * bytes requested from the kernel with sbrk().  BYTESUSED is the total
- * number of bytes consumed by blocks currently in used; BYTESFREE is the
- * total number of bytes currently on all of the free lists.  NBSPLIT is
- * the number of times a larger block was split to satisfy a smaller request.
- * NBCOALESCE is the number of times two adjacent smaller blocks off the free
- * list were combined to satisfy a larger request.
- */
-struct _malstats {
-  int nmalloc[NBUCKETS];
-  int tmalloc[NBUCKETS];
-  int nmorecore[NBUCKETS];
-  int nmal;
-  int nfre;
-  int nrealloc;
-  int nrcopy;
-  int nrecurse;
-  int nsbrk;
-  bits32_t tsbrk;
-  bits32_t bytesused;
-  bits32_t bytesfree;
-  int nbsplit;
-  int nbcoalesce;
-};
-
-static struct _malstats _mstats;
-
-/* Return statistics describing allocation of blocks of size BLOCKSIZE.
-   NFREE is the number of free blocks for this allocation size.  NUSED
-   is the number of blocks in use.  NMAL is the number of requests for
-   blocks of size BLOCKSIZE.  NMORECORE is the number of times we had
-   to call MORECORE to repopulate the free list for this bucket. */
-struct bucket_stats {
-  u_bits32_t blocksize;
-  int nfree;
-  int nused;
-  int nmal;
-  int nmorecore;
-};
-#endif /* MALLOC_STATS */
-
-/* We have a flag indicating whether memory is allocated, an index in
-   nextf[], a size field, and a sentinel value to determine whether or
-   not a caller wrote before the start of allocated memory; to realloc()
-   memory we either copy mh_nbytes or just change mh_nbytes if there is
-   enough room in the block for the new size.  Range checking is always
-   done. */
-struct mhead {
-  char     mh_alloc;   /* ISALLOC or ISFREE */         /* 1 */
-  char     mh_index;   /* index in nextf[] */          /* 1 */
-/* Remainder are valid only when block is allocated */
-  u_bits32_t mh_nbytes;  /* # of bytes allocated */    /* 4 */
-  u_bits16_t mh_magic2;/* should be == MAGIC2 */       /* 2 */
-};
-
-/* Access free-list pointer of a block.
-   It is stored at block + sizeof (char *).
-   This is not a field in the mhead structure
-   because we want sizeof (struct mhead)
-   to describe the overhead for when the block is in use,
-   and we do not want the free-list pointer to count in that.  */
-
-#define CHAIN(a) \
-  (*(struct mhead **) (sizeof (char *) + (char *) (a)))
-
-#if defined (botch)
-extern void botch ();
-#else
-static void
-botch (s)
-     char *s;
-{
-  fprintf (stderr, "\r\nmalloc: assertion botched: %s\r\n", s);
-  (void)fflush (stderr);
-  abort ();
-}
-#endif /* !botch */
-
-#if !defined (__STRING)
-#  if defined (__STDC__)
-#    define __STRING(x) #x
-#  else
-#    define __STRING(x) "x"
-#  endif
-#endif /* !__STRING */
-
-/* To implement range checking, we write magic values in at the beginning
-   and end of each allocated block, and make sure they are undisturbed
-   whenever a free or a realloc occurs. */
-
-/* Written in each of the 4 bytes following the block's real space */
-#define MAGIC1 0x55
-/* Written in the 2 bytes before the block's real space */
-#define MAGIC2 0x5555
-#define ASSERT(p) do { if (!(p)) botch(__STRING(p)); } while (0)
-#define MSLOP  4               /* 4 bytes extra for MAGIC1s */
-
-/* Minimum and maximum bucket indices for block splitting (and to bound
-   the search for a block to split). */
-#define SPLIT_MIN      3
-#define SPLIT_MID      9
-#define SPLIT_MAX      12
-
-/* Minimum and maximum bucket indices for block coalescing. */
-#define COMBINE_MIN    6
-#define COMBINE_MAX    (pagebucket - 1)
-
-#define MIN_COMBINE_FREE       4
-
-/* nextf[i] is free list of blocks of size 2**(i + 3)  */
-
-static struct mhead *nextf[NBUCKETS];
-
-/* busy[i] is nonzero while allocation of block size i is in progress.  */
-
-static char busy[NBUCKETS];
-
-static int pagesz;     /* system page size. */
-static int pagebucket; /* bucket for requests a page in size */
-
-#if 0
-/* Coalesce two adjacent free blocks off the free list for size NU - 1,
-   as long as there are at least MIN_COMBINE_FREE free blocks and we
-   can find two adjacent free blocks.  nextf[NU -1] is assumed to not
-   be busy; the caller (morecore()) checks for this. */
-static void
-bcoalesce (nu)
-     register int nu;
-{
-  register struct mhead *mp, *mp1, *mp2;
-  register int nfree, nbuck;
-  unsigned long siz;
-
-  nbuck = nu - 1;
-  if (nextf[nbuck] == 0)
-    return;
-
-  nfree = 1;
-  mp1 = nextf[nbuck];
-  mp = CHAIN (mp1);
-  mp2 = (struct mhead *)0;
-  while (CHAIN (mp))
-    {
-      mp2 = mp1;
-      mp1 = mp;
-      mp = CHAIN (mp);
-      nfree++;
-      /* We may not want to run all the way through the free list here;
-        if we do not, we need to check a threshold value here and break
-        if nfree exceeds it. */
-    }
-  if (nfree < MIN_COMBINE_FREE)
-    return;
-  /* OK, now we have mp1 pointing to the block we want to add to nextf[NU].
-     CHAIN(mp2) must equal mp1.  Check that mp1 and mp are adjacent. */
-  if (CHAIN(mp2) != mp1)
-    botch ("bcoalesce: CHAIN(mp2) != mp1");
-  siz = 1 << (nbuck + 3);
-  if (CHAIN (mp1) != (struct mhead *)((char *)mp1 + siz))
-    return;    /* not adjacent */
-
-#ifdef MALLOC_STATS
-  _mstats.nbcoalesce++;
-#endif
-
-  /* Since they are adjacent, remove them from the free list */
-  CHAIN (mp2) = CHAIN (mp);
-
-  /* And add the combined two blocks to nextf[NU]. */
-  mp1->mh_alloc = ISFREE;
-  mp1->mh_index = nu;
-  CHAIN (mp1) = nextf[nu];
-  nextf[nu] = mp1;
-}
-#endif
-
-/* Split a block at index > NU (but less than SPLIT_MAX) into a set of
-   blocks of the correct size, and attach them to nextf[NU].  nextf[NU]
-   is assumed to be empty.  Must be called with signals blocked (e.g.,
-   by morecore()). */
-static void
-bsplit (nu)
-     register int nu;
-{
-  register struct mhead *mp;
-  int nbuck, nblks;
-  unsigned long siz;
-
-  if (nu >= SPLIT_MID)
-    {
-      for (nbuck = SPLIT_MAX; nbuck > nu; nbuck--)
-       {
-         if (busy[nbuck] || nextf[nbuck] == 0)
-           continue;
-         break;
-       }
-    }
-  else
-    {
-      for (nbuck = nu + 1; nbuck <= SPLIT_MAX; nbuck++)
-       {
-         if (busy[nbuck] || nextf[nbuck] == 0)
-           continue;
-         break;
-       }
-    }
-
-  if (nbuck > SPLIT_MAX || nbuck <= nu)
-    return;
-
-  /* XXX might want to split only if nextf[nbuck] has >= 2 blocks free
-     and nbuck is below some threshold. */
-
-#ifdef MALLOC_STATS
-  _mstats.nbsplit++;
-#endif
-
-  /* Figure out how many blocks we'll get. */
-  siz = (1 << (nu + 3));
-  nblks = (1 << (nbuck + 3)) / siz;
-
-  /* Remove the block from the chain of larger blocks. */
-  mp = nextf[nbuck];
-  nextf[nbuck] = CHAIN (mp);
-
-  /* Split the block and put it on the requested chain. */
-  nextf[nu] = mp;
-  while (1)
-    {
-      mp->mh_alloc = ISFREE;
-      mp->mh_index = nu;
-      if (--nblks <= 0) break;
-      CHAIN (mp) = (struct mhead *)((char *)mp + siz);
-      mp = (struct mhead *)((char *)mp + siz);
-    }
-  CHAIN (mp) = 0;
-}
-
-static void
-morecore (nu)                  /* ask system for more memory */
-     register int nu;          /* size index to get more of  */
-{
-  register struct mhead *mp;
-  register int nblks;
-  register long siz;
-  long sbrk_amt;               /* amount to get via sbrk() */
-
-  /* Block all signals in case we are executed from a signal handler. */
-#if defined (HAVE_BSD_SIGNALS)
-  int oldmask;
-  oldmask = sigsetmask (-1);
-#else
-#  if defined (HAVE_POSIX_SIGNALS)
-  sigset_t set, oset;
-  sigfillset (&set);
-  sigemptyset (&oset);
-  sigprocmask (SIG_BLOCK, &set, &oset);
-#  endif /* HAVE_POSIX_SIGNALS */
-#endif /* HAVE_BSD_SIGNALS */
-
-  siz = 1 << (nu + 3); /* size of desired block for nextf[nu] */
-
-  if (siz < 0)
-    return;            /* oops */
-
-#ifdef MALLOC_STATS
-  _mstats.nmorecore[nu]++;
-#endif
-
-  /* Try to split a larger block here, if we're within the range of sizes
-     to split. */
-  if (nu >= SPLIT_MIN && nu < SPLIT_MAX)
-    {
-      bsplit (nu);
-      if (nextf[nu] != 0)
-       goto morecore_done;
-    }
-
-#if 0
-  /* Try to coalesce two adjacent blocks from the free list on nextf[nu - 1],
-     if we can, and we're withing the range of the block coalescing limits. */
-  if (nu >= COMBINE_MIN && nu < COMBINE_MAX && busy[nu - 1] == 0 && nextf[nu - 1])
-    {
-      bcoalesce (nu);
-      if (nextf[nu] != 0)
-        goto morecore_done;
-    }
-#endif
-
-  /* Take at least a page, and figure out how many blocks of the requested
-     size we're getting. */
-  if (siz <= pagesz)
-    {
-      sbrk_amt = pagesz;
-      nblks = sbrk_amt / siz;
-    }
-  else
-    {
-      /* We always want to request an integral multiple of the page size
-        from the kernel, so let's compute whether or not `siz' is such
-        an amount.  If it is, we can just request it.  If not, we want
-        the smallest integral multiple of pagesize that is larger than
-        `siz' and will satisfy the request. */
-      sbrk_amt = siz % pagesz;
-      if (sbrk_amt == 0)
-       sbrk_amt = siz;
-      else
-       sbrk_amt = siz + pagesz - sbrk_amt;
-      nblks = 1;
-    }
-
-#ifdef MALLOC_STATS
-  _mstats.nsbrk++;
-  _mstats.tsbrk += sbrk_amt;
-#endif
-
-  mp = (struct mhead *) sbrk (sbrk_amt);
-
-  /* Totally out of memory. */
-  if ((long)mp == -1)
-    return;
-
-  /* shouldn't happen, but just in case */
-  if ((long)mp & 7)
-    {
-      mp = (struct mhead *) (((long)mp + 8) & ~7);
-      nblks--;
-    }
-
-  /* save new header and link the nblks blocks together */
-  nextf[nu] = mp;
-  while (1)
-    {
-      mp->mh_alloc = ISFREE;
-      mp->mh_index = nu;
-      if (--nblks <= 0) break;
-      CHAIN (mp) = (struct mhead *)((char *)mp + siz);
-      mp = (struct mhead *)((char *)mp + siz);
-    }
-  CHAIN (mp) = 0;
-
-morecore_done:
-#if defined (HAVE_BSD_SIGNALS)
-  sigsetmask (oldmask);
-#else
-#  if defined (HAVE_POSIX_SIGNALS)
-  sigprocmask (SIG_SETMASK, &oset, (sigset_t *)NULL);
-#  endif
-#endif /* HAVE_BSD_SIGNALS */
-}
-
-#if defined (MEMSCRAMBLE) || !defined (NO_CALLOC)
-static char *
-zmemset (s, c, n)
-     char *s;
-     int c;
-     register int n;
-{
-  register char *sp;
-
-  sp = s;
-  while (--n >= 0)
-    *sp++ = c;
-  return (s);
-}
-#endif /* MEMSCRAMBLE || !NO_CALLOC */
-
-static void
-malloc_debug_dummy ()
-{
-  ;
-}
-
-char *
-malloc (n)             /* get a block */
-     size_t n;
-{
-  register struct mhead *p;
-  register long nbytes;
-  register int nunits;
-
-  /* Get the system page size and align break pointer so everything will
-     be page-aligned.  The page size must be at least 1K -- anything
-     smaller is increased. */
-  if (pagesz == 0)
-    {
-      register long sbrk_needed;
-
-      pagesz = getpagesize ();
-      if (pagesz < 1024)
-        pagesz = 1024;
-      /* OK, how much do we need to allocate to make things page-aligned?
-         This partial page is wasted space.  Once we figure out how much
-         to advance the break pointer, go ahead and do it. */
-      sbrk_needed = pagesz - ((long)sbrk (0) & (pagesz - 1));  /* sbrk(0) % pagesz */
-      if (sbrk_needed < 0)
-        sbrk_needed += pagesz;
-      /* Now allocate the wasted space. */
-      if (sbrk_needed)
-        {
-#ifdef MALLOC_STATS
-         _mstats.nsbrk++;
-         _mstats.tsbrk += sbrk_needed;
-#endif
-          if ((long)sbrk (sbrk_needed) == -1)
-            return (NULL);
-        }
-      nunits = 0;
-      nbytes = 8;
-      while (pagesz > nbytes)
-        {
-          nbytes <<= 1;
-          nunits++;
-        }
-      pagebucket = nunits;
-    }
-  /* Figure out how many bytes are required, rounding up to the nearest
-     multiple of 4, then figure out which nextf[] area to use.  Try to
-     be smart about where to start searching -- if the number of bytes
-     needed is greater than the page size, we can start at pagebucket. */
-  nbytes = (n + sizeof *p + MSLOP + 3) & ~3;
-  nunits = 0;
-  if (nbytes <= (pagesz >> 1))
-    {
-      register unsigned int shiftr;
-
-      shiftr = (nbytes - 1) >> 2;      /* == (nbytes - 1) / 4 */
-      while (shiftr >>= 1)             /* == (nbytes - 1) / {8,16,32,...} */
-       nunits++;
-    }
-  else
-    {
-      register u_bits32_t amt;
-
-      nunits = pagebucket;
-      amt = pagesz;
-      while (nbytes > amt)
-        {
-          amt <<= 1;
-          nunits++;
-        }
-    }
-
-  /* In case this is reentrant use of malloc from signal handler,
-     pick a block size that no other malloc level is currently
-     trying to allocate.  That's the easiest harmless way not to
-     interfere with the other level of execution.  */
-#ifdef MALLOC_STATS
-  if (busy[nunits]) _mstats.nrecurse++;
-#endif
-  while (busy[nunits]) nunits++;
-  busy[nunits] = 1;
-
-  /* If there are no blocks of the appropriate size, go get some */
-  if (nextf[nunits] == 0)
-    morecore (nunits);
-
-  /* Get one block off the list, and set the new list head */
-  if ((p = nextf[nunits]) == NULL)
-    {
-      busy[nunits] = 0;
-      return NULL;
-    }
-  nextf[nunits] = CHAIN (p);
-  busy[nunits] = 0;
-
-  /* Check for free block clobbered */
-  /* If not for this check, we would gobble a clobbered free chain ptr
-     and bomb out on the NEXT allocate of this size block */
-  if (p->mh_alloc != ISFREE || p->mh_index != nunits)
-    botch ("malloc: block on free list clobbered");
-
-  /* Fill in the info, and if range checking, set up the magic numbers */
-  p->mh_alloc = ISALLOC;
-  p->mh_nbytes = n;
-  p->mh_magic2 = MAGIC2;
-  {
-    register char  *m = (char *) (p + 1) + n;
-
-    *m++ = MAGIC1, *m++ = MAGIC1, *m++ = MAGIC1, *m = MAGIC1;
-  }
-
-#ifdef MEMSCRAMBLE
-  zmemset ((char *)(p + 1), 0xdf, n);  /* scramble previous contents */
-#endif
-#ifdef MALLOC_STATS
-  _mstats.nmalloc[nunits]++;
-  _mstats.tmalloc[nunits]++;
-  _mstats.nmal++;
-#endif /* MALLOC_STATS */
-  return (char *) (p + 1);
-}
-
-void
-free (mem)
-     char *mem;
-{
-  register struct mhead *p;
-  register char *ap;
-  register int nunits;
-
-  if ((ap = mem) == 0)
-    return;
-
-  p = (struct mhead *) ap - 1;
-
-  if (p->mh_alloc == ISMEMALIGN)
-    {
-      ap -= p->mh_nbytes;
-      p = (struct mhead *) ap - 1;
-    }
-
-  if (p->mh_alloc != ISALLOC)
-    {
-      if (p->mh_alloc == ISFREE)
-       botch ("free: called with already freed block argument");
-      else
-       botch ("free: called with unallocated block argument");
-    }
-
-  ASSERT (p->mh_magic2 == MAGIC2);
-  ap += p->mh_nbytes;
-  ASSERT (*ap++ == MAGIC1); ASSERT (*ap++ == MAGIC1);
-  ASSERT (*ap++ == MAGIC1); ASSERT (*ap   == MAGIC1);
-
-#ifdef MEMSCRAMBLE
-  zmemset (mem, 0xcf, p->mh_nbytes);
-#endif
-
-  nunits = p->mh_index;
-
-  ASSERT (nunits < NBUCKETS);
-  p->mh_alloc = ISFREE;
-
-  /* Protect against signal handlers calling malloc.  */
-  busy[nunits] = 1;
-  /* Put this block on the free list.  */
-  CHAIN (p) = nextf[nunits];
-  nextf[nunits] = p;
-  busy[nunits] = 0;
-
-#ifdef MALLOC_STATS
-  _mstats.nmalloc[nunits]--;
-  _mstats.nfre++;
-#endif /* MALLOC_STATS */
-}
-
-char *
-realloc (mem, n)
-     char *mem;
-     register size_t n;
-{
-  register struct mhead *p;
-  register u_bits32_t tocopy;
-  register unsigned int nbytes;
-  register int nunits;
-  register char *m;
-
-#ifdef MALLOC_STATS
-  _mstats.nrealloc++;
-#endif
-
-  if (n == 0)
-    {
-      free (mem);
-      return (NULL);
-    }
-  if ((p = (struct mhead *) mem) == 0)
-    return malloc (n);
-  p--;
-  nunits = p->mh_index;
-  ASSERT (p->mh_alloc == ISALLOC);
-  ASSERT (p->mh_magic2 == MAGIC2);
-
-  m = mem + (tocopy = p->mh_nbytes);
-  ASSERT (*m++ == MAGIC1); ASSERT (*m++ == MAGIC1);
-  ASSERT (*m++ == MAGIC1); ASSERT (*m   == MAGIC1);
-
-  /* See if desired size rounds to same power of 2 as actual size. */
-  nbytes = (n + sizeof *p + MSLOP + 7) & ~7;
-
-  /* If ok, use the same block, just marking its size as changed.  */
-  if (nbytes > (4 << nunits) && nbytes <= (8 << nunits))
-    {
-      m = mem + tocopy;
-      *m++ = 0;  *m++ = 0;  *m++ = 0;  *m++ = 0;
-      p->mh_nbytes = n;
-      m = mem + n;
-      *m++ = MAGIC1;  *m++ = MAGIC1;  *m++ = MAGIC1;  *m++ = MAGIC1;
-      return mem;
-    }
-
-#ifdef MALLOC_STATS
-  _mstats.nrcopy++;
-#endif
-
-  if (n < tocopy)
-    tocopy = n;
-
-  if ((m = malloc (n)) == 0)
-    return 0;
-  FASTCOPY (mem, m, tocopy);
-  free (mem);
-  return m;
-}
-
-char *
-memalign (alignment, size)
-     unsigned int alignment;
-     size_t size;
-{
-  register char *ptr;
-  register char *aligned;
-  register struct mhead *p;
-
-  ptr = malloc (size + alignment);
-
-  if (ptr == 0)
-    return 0;
-  /* If entire block has the desired alignment, just accept it.  */
-  if (((int) ptr & (alignment - 1)) == 0)
-    return ptr;
-  /* Otherwise, get address of byte in the block that has that alignment.  */
-  aligned = (char *) (((int) ptr + alignment - 1) & -alignment);
-
-  /* Store a suitable indication of how to free the block,
-     so that free can find the true beginning of it.  */
-  p = (struct mhead *) aligned - 1;
-  p->mh_nbytes = aligned - ptr;
-  p->mh_alloc = ISMEMALIGN;
-  return aligned;
-}
-
-#if !defined (HPUX)
-/* This runs into trouble with getpagesize on HPUX, and Multimax machines.
-   Patching out seems cleaner than the ugly fix needed.  */
-#if defined (__STDC__)
-void *
-#else
-char *
-#endif
-valloc (size)
-     size_t size;
-{
-  return memalign (getpagesize (), size);
-}
-#endif /* !HPUX */
-
-#ifndef NO_CALLOC
-char *
-calloc (n, s)
-     size_t n, s;
-{
-  size_t total;
-  char *result;
-
-  total = n * s;
-  result = malloc (total);
-  if (result)
-    zmemset (result, 0, total);
-  return result;  
-}
-
-void
-cfree (p)
-     char *p;
-{
-  free (p);
-}
-#endif /* !NO_CALLOC */
-
-#ifdef MALLOC_STATS
-
-struct bucket_stats
-malloc_bucket_stats (size)
-     int size;
-{
-  struct bucket_stats v;
-  register struct mhead *p;
-
-  v.nfree = 0;
-
-  if (size < 0 || size >= NBUCKETS)
-    {
-      v.blocksize = 0;
-      v.nused = v.nmal = 0;
-      return v;
-    }
-
-  v.blocksize = 1 << (size + 3);
-  v.nused = _mstats.nmalloc[size];
-  v.nmal = _mstats.tmalloc[size];
-  v.nmorecore = _mstats.nmorecore[size];
-
-  for (p = nextf[size]; p; p = CHAIN (p))
-    v.nfree++;
-
-  return v;
-}
-
-/* Return a copy of _MSTATS, with two additional fields filled in:
-   BYTESFREE is the total number of bytes on free lists.  BYTESUSED
-   is the total number of bytes in use.  These two fields are fairly
-   expensive to compute, so we do it only when asked to. */
-struct _malstats
-malloc_stats ()
-{
-  struct _malstats result;
-  struct bucket_stats v;
-  register int i;
-
-  result = _mstats;
-  result.bytesused = result.bytesfree = 0;
-  for (i = 0; i < NBUCKETS; i++)
-    {
-      v = malloc_bucket_stats (i);
-      result.bytesfree += v.nfree * v.blocksize;
-      result.bytesused += v.nused * v.blocksize;
-    }
-  return (result);
-}
-
-void
-print_malloc_stats (s)
-     char *s;
-{
-  register int i;
-  int totused, totfree;
-  struct bucket_stats v;
-
-  fprintf (stderr, "Memory allocation statistics: %s\n\tsize\tfree\tin use\ttotal\tmorecore\n", s ? s : "");
-  for (i = totused = totfree = 0; i < NBUCKETS; i++)
-    {
-      v = malloc_bucket_stats (i);
-      fprintf (stderr, "%12lu\t%4d\t%6d\t%5d\t%8d\n", v.blocksize, v.nfree, v.nused, v.nmal, v.nmorecore);
-      totfree += v.nfree * v.blocksize;
-      totused += v.nused * v.blocksize;
-    }
-  fprintf (stderr, "\nTotal bytes in use: %d, total bytes free: %d\n",
-          totused, totfree);
-  fprintf (stderr, "Total mallocs: %d, total frees: %d, total reallocs: %d (%d copies)\n",
-          _mstats.nmal, _mstats.nfre, _mstats.nrealloc, _mstats.nrcopy);
-  fprintf (stderr, "Total sbrks: %d, total bytes via sbrk: %d\n",
-          _mstats.nsbrk, _mstats.tsbrk);
-  fprintf (stderr, "Total blocks split: %d, total block coalesces: %d\n",
-          _mstats.nbsplit, _mstats.nbcoalesce);
-}
-#endif /* MALLOC_STATS */
diff --git a/lib/malloc/OLD/omalloc.c b/lib/malloc/OLD/omalloc.c
deleted file mode 100644 (file)
index 413faeb..0000000
+++ /dev/null
@@ -1,759 +0,0 @@
-/* dynamic memory allocation for GNU. */
-
-/*  Copyright (C) 1985, 1987 Free Software Foundation, Inc.
-
-    This program is free software; you can redistribute it and/or modify
-    it under the terms of the GNU General Public License as published by
-    the Free Software Foundation; either version 2, or (at your option)
-    any later version.
-
-    This program 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 General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with this program; if not, write to the Free Software
-    Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111 USA.
-
-In other words, you are welcome to use, share and improve this program.
-You are forbidden to forbid anyone else to use, share and improve
-what you give them.   Help stamp out software-hoarding!  */
-
-/*
- * @(#)nmalloc.c 1 (Caltech) 2/21/82
- *
- *     U of M Modified: 20 Jun 1983 ACT: strange hacks for Emacs
- *
- *     Nov 1983, Mike@BRL, Added support for 4.1C/4.2 BSD.
- *
- * This is a very fast storage allocator.  It allocates blocks of a small 
- * number of different sizes, and keeps free lists of each size.  Blocks
- * that don't exactly fit are passed up to the next larger size.  In this 
- * implementation, the available sizes are (2^n)-4 (or -16) bytes long.
- * This is designed for use in a program that uses vast quantities of
- * memory, but bombs when it runs out.  To make it a little better, it
- * warns the user when he starts to get near the end.
- *
- * June 84, ACT: modified rcheck code to check the range given to malloc,
- * rather than the range determined by the 2-power used.
- *
- * Jan 85, RMS: calls malloc_warning to issue warning on nearly full.
- * No longer Emacs-specific; can serve as all-purpose malloc for GNU.
- * You should call malloc_init to reinitialize after loading dumped Emacs.
- * Call malloc_stats to get info on memory stats if MSTATS turned on.
- * realloc knows how to return same block given, just changing its size,
- * if the power of 2 is correct.
- */
-
-/*
- * nextf[i] is the pointer to the next free block of size 2^(i+3).  The
- * smallest allocatable block is 8 bytes.  The overhead information will
- * go in the first int of the block, and the returned pointer will point
- * to the second.
- *
-#ifdef MSTATS
- * nmalloc[i] is the difference between the number of mallocs and frees
- * for a given block size.
-#endif
- */
-
-/* Define this to have free() write 0xcf into memory as it's freed, to
-   uncover callers that refer to freed memory. */
-/* SCO 3.2v4 getcwd and possibly other libc routines fail with MEMSCRAMBLE */
-#if !defined (NO_MEMSCRAMBLE)
-#  define MEMSCRAMBLE
-#endif
-
-#if defined (emacs) || defined (HAVE_CONFIG_H)
-#  include <config.h>
-#endif /* emacs */
-
-#if defined (HAVE_UNISTD_H)
-#  include <unistd.h>
-#endif
-
-/* Determine which kind of system this is.  */
-#if defined (SHELL)
-#  include "bashtypes.h"
-#else
-#  include <sys/types.h>
-#endif
-#include <signal.h>
-
-/* Define getpagesize () if the system does not.  */
-#ifndef HAVE_GETPAGESIZE
-#  include "getpagesize.h"
-#endif
-
-#if defined (HAVE_RESOURCE)
-#  include <sys/time.h>
-#  include <sys/resource.h>
-#endif /* HAVE_RESOURCE */
-
-/* Check for the needed symbols.  If they aren't present, this
-   system's <sys/resource.h> isn't very useful to us. */
-#if !defined (RLIMIT_DATA)
-#  undef HAVE_RESOURCE
-#endif
-
-#if __GNUC__ > 1
-#  define FASTCOPY(s, d, n)  __builtin_memcpy (d, s, n)
-#else /* !__GNUC__ */
-#  if !defined (HAVE_BCOPY)
-#    if !defined (HAVE_MEMMOVE)
-#      define FASTCOPY(s, d, n)  memcpy (d, s, n)
-#    else
-#      define FASTCOPY(s, d, n)  memmove (d, s, n)
-#    endif /* !HAVE_MEMMOVE */
-#  else /* HAVE_BCOPY */
-#    define FASTCOPY(s, d, n)  bcopy (s, d, n)
-#  endif /* HAVE_BCOPY */
-#endif /* !__GNUC__ */
-
-#if !defined (NULL)
-#  define NULL 0
-#endif
-
-#define start_of_data() &etext
-
-#define ISALLOC ((char) 0xf7)  /* magic byte that implies allocation */
-#define ISFREE ((char) 0x54)   /* magic byte that implies free block */
-                               /* this is for error checking only */
-#define ISMEMALIGN ((char) 0xd6)  /* Stored before the value returned by
-                                    memalign, with the rest of the word
-                                    being the distance to the true
-                                    beginning of the block.  */
-extern char etext;
-
-#if !defined (SBRK_DECLARED)
-extern char *sbrk ();
-#endif /* !SBRK_DECLARED */
-
-/* These two are for user programs to look at, when they are interested.  */
-unsigned int malloc_sbrk_used;       /* amount of data space used now */
-unsigned int malloc_sbrk_unused;     /* amount more we can have */
-
-/* start of data space; can be changed by calling init_malloc */
-static char *data_space_start;
-
-static void get_lim_data ();
-
-#ifdef MSTATS
-static int nmalloc[30];
-static int nmal, nfre;
-#endif /* MSTATS */
-
-/* If range checking is not turned on, all we have is a flag indicating
-   whether memory is allocated, an index in nextf[], and a size field; to
-   realloc() memory we copy either size bytes or 1<<(index+3) bytes depending
-   on whether the former can hold the exact size (given the value of
-   'index').  If range checking is on, we always need to know how much space
-   is allocated, so the 'size' field is never used. */
-
-struct mhead {
-       char     mh_alloc;      /* ISALLOC or ISFREE */
-       char     mh_index;      /* index in nextf[] */
-/* Remainder are valid only when block is allocated */
-       unsigned short mh_size; /* size, if < 0x10000 */
-#ifdef RCHECK
-       unsigned int mh_nbytes; /* number of bytes allocated */
-       int      mh_magic4;     /* should be == MAGIC4 */
-#endif /* RCHECK */
-};
-
-/* Access free-list pointer of a block.
-  It is stored at block + 4.
-  This is not a field in the mhead structure
-  because we want sizeof (struct mhead)
-  to describe the overhead for when the block is in use,
-  and we do not want the free-list pointer to count in that.  */
-
-#define CHAIN(a) \
-  (*(struct mhead **) (sizeof (char *) + (char *) (a)))
-
-#ifdef RCHECK
-#  include <stdio.h>
-#  if !defined (botch)
-#    define botch(x) abort ()
-#  else
-extern void botch();
-#  endif /* botch */
-
-#  if !defined (__STRING)
-#    if defined (__STDC__)
-#      define __STRING(x) #x
-#    else
-#      define __STRING(x) "x"
-#    endif
-#  endif
-
-  /* To implement range checking, we write magic values in at the beginning
-     and end of each allocated block, and make sure they are undisturbed
-     whenever a free or a realloc occurs. */
-
-  /* Written in each of the 4 bytes following the block's real space */
-#  define MAGIC1 0x55
-  /* Written in the 4 bytes before the block's real space */
-#  define MAGIC4 0x55555555
-#  define ASSERT(p) if (!(p)) botch(__STRING(p)); else
-#  define EXTRA  4             /* 4 bytes extra for MAGIC1s */
-#else /* !RCHECK */
-#  define ASSERT(p)
-#  define EXTRA  0
-#endif /* RCHECK */
-
-/* nextf[i] is free list of blocks of size 2**(i + 3)  */
-
-static struct mhead *nextf[30];
-
-/* busy[i] is nonzero while allocation of block size i is in progress.  */
-
-static char busy[30];
-
-/* Number of bytes of writable memory we can expect to be able to get */
-static unsigned int lim_data;
-
-/* Level number of warnings already issued.
-  0 -- no warnings issued.
-  1 -- 75% warning already issued.
-  2 -- 85% warning already issued.
-*/
-static int warnlevel;
-
-/* Function to call to issue a warning;
-   0 means don't issue them.  */
-static void (*warnfunction) ();
-
-/* nonzero once initial bunch of free blocks made */
-static int gotpool;
-
-char *_malloc_base;
-
-static void getpool ();
-
-/* Cause reinitialization based on job parameters;
-  also declare where the end of pure storage is. */
-void
-malloc_init (start, warnfun)
-     char *start;
-     void (*warnfun) ();
-{
-  if (start)
-    data_space_start = start;
-  lim_data = 0;
-  warnlevel = 0;
-  warnfunction = warnfun;
-}
-
-/* Return the maximum size to which MEM can be realloc'd
-   without actually requiring copying.  */
-
-int
-malloc_usable_size (mem)
-     char *mem;
-{
-  int blocksize = 8 << (((struct mhead *) mem) - 1) -> mh_index;
-
-  return blocksize - sizeof (struct mhead) - EXTRA;
-}
-
-static void
-morecore (nu)                  /* ask system for more memory */
-     register int nu;          /* size index to get more of  */
-{
-  register char *cp;
-  register int nblks;
-  register unsigned int siz;
-
-  /* Block all signals in case we are executed from a signal handler. */
-#if defined (HAVE_BSD_SIGNALS)
-  int oldmask;
-  oldmask = sigsetmask (-1);
-#else
-#  if defined (HAVE_POSIX_SIGNALS)
-  sigset_t set, oset;
-  sigfillset (&set);
-  sigemptyset (&oset);
-  sigprocmask (SIG_BLOCK, &set, &oset);
-#  endif /* HAVE_POSIX_SIGNALS */
-#endif /* HAVE_BSD_SIGNALS */
-
-  if (!data_space_start)
-    {
-      data_space_start = start_of_data ();
-    }
-
-  if (lim_data == 0)
-    get_lim_data ();
-
- /* On initial startup, get two blocks of each size up to 1k bytes */
-  if (!gotpool)
-    { getpool (); getpool (); gotpool = 1; }
-
-  /* Find current end of memory and issue warning if getting near max */
-
-  cp = sbrk (0);
-  siz = cp - data_space_start;
-  malloc_sbrk_used = siz;
-  malloc_sbrk_unused = lim_data - siz;
-
-  if (warnfunction)
-    switch (warnlevel)
-      {
-      case 0: 
-       if (siz > (lim_data / 4) * 3)
-         {
-           warnlevel++;
-           (*warnfunction) ("Warning: past 75% of memory limit");
-         }
-       break;
-      case 1: 
-       if (siz > (lim_data / 20) * 17)
-         {
-           warnlevel++;
-           (*warnfunction) ("Warning: past 85% of memory limit");
-         }
-       break;
-      case 2: 
-       if (siz > (lim_data / 20) * 19)
-         {
-           warnlevel++;
-           (*warnfunction) ("Warning: past 95% of memory limit");
-         }
-       break;
-      }
-
-  if ((int) cp & 0x3ff)        /* land on 1K boundaries */
-    sbrk (1024 - ((int) cp & 0x3ff));
-
- /* Take at least 2k, and figure out how many blocks of the desired size
-    we're about to get */
-  nblks = 1;
-  if ((siz = nu) < 8)
-    nblks = 1 << ((siz = 8) - nu);
-
-  if ((cp = sbrk (1 << (siz + 3))) == (char *) -1)
-    return;                    /* no more room! */
-
-  if ((int) cp & 7)
-    {          /* shouldn't happen, but just in case */
-      cp = (char *) (((int) cp + 8) & ~7);
-      nblks--;
-    }
-
- /* save new header and link the nblks blocks together */
-  nextf[nu] = (struct mhead *) cp;
-  siz = 1 << (nu + 3);
-  while (1)
-    {
-      ((struct mhead *) cp) -> mh_alloc = ISFREE;
-      ((struct mhead *) cp) -> mh_index = nu;
-      if (--nblks <= 0) break;
-      CHAIN ((struct mhead *) cp) = (struct mhead *) (cp + siz);
-      cp += siz;
-    }
-  CHAIN ((struct mhead *) cp) = 0;
-
-#if defined (HAVE_BSD_SIGNALS)
-  sigsetmask (oldmask);
-#else
-#  if defined (HAVE_POSIX_SIGNALS)
-  sigprocmask (SIG_SETMASK, &oset, (sigset_t *)NULL);
-#  endif
-#endif /* HAVE_BSD_SIGNALS */
-}
-
-static void
-getpool ()
-{
-  register int nu;
-  register char *cp = sbrk (0);
-
-  if ((int) cp & 0x3ff)        /* land on 1K boundaries */
-    sbrk (1024 - ((int) cp & 0x3ff));
-
-  /* Record address of start of space allocated by malloc.  */
-  if (_malloc_base == 0)
-    _malloc_base = cp;
-
-  /* Get 2k of storage */
-
-  cp = sbrk (04000);
-  if (cp == (char *) -1)
-    return;
-
-  /* Divide it into an initial 8-word block
-     plus one block of size 2**nu for nu = 3 ... 10.  */
-
-  CHAIN (cp) = nextf[0];
-  nextf[0] = (struct mhead *) cp;
-  ((struct mhead *) cp) -> mh_alloc = ISFREE;
-  ((struct mhead *) cp) -> mh_index = 0;
-  cp += 8;
-
-  for (nu = 0; nu < 7; nu++)
-    {
-      CHAIN (cp) = nextf[nu];
-      nextf[nu] = (struct mhead *) cp;
-      ((struct mhead *) cp) -> mh_alloc = ISFREE;
-      ((struct mhead *) cp) -> mh_index = nu;
-      cp += 8 << nu;
-    }
-}
-
-#if defined (MEMSCRAMBLE) || !defined (NO_CALLOC)
-static char *
-zmemset (s, c, n)
-     char *s;
-     int c;
-     register int n;
-{
-  register char *sp;
-
-  sp = s;
-  while (--n >= 0)
-    *sp++ = c;
-  return (s);
-}
-#endif /* MEMSCRAMBLE || !NO_CALLOC */
-
-char *
-malloc (n)             /* get a block */
-     unsigned int n;
-{
-  register struct mhead *p;
-  register unsigned int nbytes;
-  register int nunits = 0;
-
-  /* Figure out how many bytes are required, rounding up to the nearest
-     multiple of 4, then figure out which nextf[] area to use */
-  nbytes = (n + sizeof *p + EXTRA + 3) & ~3;
-  {
-    register unsigned int   shiftr = (nbytes - 1) >> 2;
-
-    while (shiftr >>= 1)
-      nunits++;
-  }
-
-  /* In case this is reentrant use of malloc from signal handler,
-     pick a block size that no other malloc level is currently
-     trying to allocate.  That's the easiest harmless way not to
-     interfere with the other level of execution.  */
-  while (busy[nunits]) nunits++;
-  busy[nunits] = 1;
-
-  /* If there are no blocks of the appropriate size, go get some */
-  /* COULD SPLIT UP A LARGER BLOCK HERE ... ACT */
-  if (nextf[nunits] == 0)
-    morecore (nunits);
-
-  /* Get one block off the list, and set the new list head */
-  if ((p = nextf[nunits]) == 0)
-    {
-      busy[nunits] = 0;
-      return 0;
-    }
-  nextf[nunits] = CHAIN (p);
-  busy[nunits] = 0;
-
-  /* Check for free block clobbered */
-  /* If not for this check, we would gobble a clobbered free chain ptr */
-  /* and bomb out on the NEXT allocate of this size block */
-  if (p -> mh_alloc != ISFREE || p -> mh_index != nunits)
-#ifdef RCHECK
-    botch ("block on free list clobbered");
-#else /* not RCHECK */
-    abort ();
-#endif /* not RCHECK */
-
-  /* Fill in the info, and if range checking, set up the magic numbers */
-  p -> mh_alloc = ISALLOC;
-#ifdef RCHECK
-  p -> mh_nbytes = n;
-  p -> mh_magic4 = MAGIC4;
-  {
-    register char  *m = (char *) (p + 1) + n;
-
-    *m++ = MAGIC1, *m++ = MAGIC1, *m++ = MAGIC1, *m = MAGIC1;
-  }
-#else /* not RCHECK */
-  p -> mh_size = n;
-#endif /* not RCHECK */
-#ifdef MEMSCRAMBLE
-  zmemset ((char *)(p + 1), 0xdf, n);  /* scramble previous contents */
-#endif
-#ifdef MSTATS
-  nmalloc[nunits]++;
-  nmal++;
-#endif /* MSTATS */
-  return (char *) (p + 1);
-}
-
-void
-free (mem)
-     char *mem;
-{
-  register struct mhead *p;
-  {
-    register char *ap = mem;
-
-    if (ap == 0)
-      return;
-
-    p = (struct mhead *) ap - 1;
-
-    if (p -> mh_alloc == ISMEMALIGN)
-      {
-#ifdef RCHECK
-       ap -= p->mh_nbytes;
-#else
-       ap -= p->mh_size;       /* XXX */
-#endif
-       p = (struct mhead *) ap - 1;
-      }
-
-#ifndef RCHECK
-    if (p -> mh_alloc != ISALLOC)
-      abort ();
-
-#else /* RCHECK */
-    if (p -> mh_alloc != ISALLOC)
-      {
-       if (p -> mh_alloc == ISFREE)
-         botch ("free: Called with already freed block argument\n");
-       else
-         botch ("free: Called with unallocated block argument\n");
-      }
-
-    ASSERT (p -> mh_magic4 == MAGIC4);
-    ap += p -> mh_nbytes;
-    ASSERT (*ap++ == MAGIC1); ASSERT (*ap++ == MAGIC1);
-    ASSERT (*ap++ == MAGIC1); ASSERT (*ap   == MAGIC1);
-#endif /* RCHECK */
-  }
-#ifdef MEMSCRAMBLE
-  {
-    register int n;
-    
-#ifdef RCHECK
-    n = p->mh_nbytes;
-#else /* not RCHECK */
-    n = p->mh_size;
-#endif /* not RCHECK */
-    zmemset (mem, 0xcf, n);
-  }
-#endif
-  {
-    register int nunits = p -> mh_index;
-
-    ASSERT (nunits <= 29);
-    p -> mh_alloc = ISFREE;
-
-    /* Protect against signal handlers calling malloc.  */
-    busy[nunits] = 1;
-    /* Put this block on the free list.  */
-    CHAIN (p) = nextf[nunits];
-    nextf[nunits] = p;
-    busy[nunits] = 0;
-
-#ifdef MSTATS
-    nmalloc[nunits]--;
-    nfre++;
-#endif /* MSTATS */
-  }
-}
-
-char *
-realloc (mem, n)
-     char *mem;
-     register unsigned int n;
-{
-  register struct mhead *p;
-  register unsigned int tocopy;
-  register unsigned int nbytes;
-  register int nunits;
-
-  if ((p = (struct mhead *) mem) == 0)
-    return malloc (n);
-  p--;
-  nunits = p -> mh_index;
-  ASSERT (p -> mh_alloc == ISALLOC);
-#ifdef RCHECK
-  ASSERT (p -> mh_magic4 == MAGIC4);
-  {
-    register char *m = mem + (tocopy = p -> mh_nbytes);
-    ASSERT (*m++ == MAGIC1); ASSERT (*m++ == MAGIC1);
-    ASSERT (*m++ == MAGIC1); ASSERT (*m   == MAGIC1);
-  }
-#else /* not RCHECK */
-  if (p -> mh_index >= 13)
-    tocopy = (1 << (p -> mh_index + 3)) - sizeof *p;
-  else
-    tocopy = p -> mh_size;
-#endif /* not RCHECK */
-
-  /* See if desired size rounds to same power of 2 as actual size. */
-  nbytes = (n + sizeof *p + EXTRA + 7) & ~7;
-
-  /* If ok, use the same block, just marking its size as changed.  */
-  if (nbytes > (4 << nunits) && nbytes <= (8 << nunits))
-    {
-#ifdef RCHECK
-      register char *m = mem + tocopy;
-      *m++ = 0;  *m++ = 0;  *m++ = 0;  *m++ = 0;
-      p-> mh_nbytes = n;
-      m = mem + n;
-      *m++ = MAGIC1;  *m++ = MAGIC1;  *m++ = MAGIC1;  *m++ = MAGIC1;
-#else /* not RCHECK */
-      p -> mh_size = n;
-#endif /* not RCHECK */
-      return mem;
-    }
-
-  if (n < tocopy)
-    tocopy = n;
-  {
-    register char *new;
-
-    if ((new = malloc (n)) == 0)
-      return 0;
-    FASTCOPY (mem, new, tocopy);
-    free (mem);
-    return new;
-  }
-}
-
-char *
-memalign (alignment, size)
-     unsigned int alignment, size;
-{
-  register char *ptr;
-  register char *aligned;
-  register struct mhead *p;
-
-  ptr = malloc (size + alignment);
-
-  if (ptr == 0)
-    return 0;
-  /* If entire block has the desired alignment, just accept it.  */
-  if (((int) ptr & (alignment - 1)) == 0)
-    return ptr;
-  /* Otherwise, get address of byte in the block that has that alignment.  */
-  aligned = (char *) (((int) ptr + alignment - 1) & -alignment);
-
-  /* Store a suitable indication of how to free the block,
-     so that free can find the true beginning of it.  */
-  p = (struct mhead *) aligned - 1;
-  p -> mh_size = aligned - ptr;
-  p -> mh_alloc = ISMEMALIGN;
-  return aligned;
-}
-
-#if !defined (HPUX)
-/* This runs into trouble with getpagesize on HPUX, and Multimax machines.
-   Patching out seems cleaner than the ugly fix needed.  */
-#if defined (__STDC__)
-void *
-#else
-char *
-#endif
-valloc (size)
-     size_t size;
-{
-  return memalign (getpagesize (), size);
-}
-#endif /* !HPUX */
-
-#ifndef NO_CALLOC
-char *
-calloc (n, s)
-     size_t n, s;
-{
-  size_t total;
-  char *result;
-
-  total = n * s;
-  result = malloc (total);
-  if (result)
-    zmemset (result, 0, total);
-  return result;  
-}
-
-void
-cfree (p)
-     char *p;
-{
-  free (p);
-}
-#endif /* !NO_CALLOC */
-
-#ifdef MSTATS
-/* Return statistics describing allocation of blocks of size 2**n. */
-
-struct mstats_value
-  {
-    int blocksize;
-    int nfree;
-    int nused;
-  };
-
-struct mstats_value
-malloc_stats (size)
-     int size;
-{
-  struct mstats_value v;
-  register int i;
-  register struct mhead *p;
-
-  v.nfree = 0;
-
-  if (size < 0 || size >= 30)
-    {
-      v.blocksize = 0;
-      v.nused = 0;
-      return v;
-    }
-
-  v.blocksize = 1 << (size + 3);
-  v.nused = nmalloc[size];
-
-  for (p = nextf[size]; p; p = CHAIN (p))
-    v.nfree++;
-
-  return v;
-}
-#endif /* MSTATS */
-
-/*
- *     This function returns the total number of bytes that the process
- *     will be allowed to allocate via the sbrk(2) system call.  On
- *     BSD systems this is the total space allocatable to stack and
- *     data.  On USG systems this is the data space only.
- */
-
-#if !defined (HAVE_RESOURCE)
-extern long ulimit ();
-
-static void
-get_lim_data ()
-{    
-  lim_data = ulimit (3, 0);
-  lim_data -= (long) data_space_start;
-}
-
-#else /* HAVE_RESOURCE */
-static void
-get_lim_data ()
-{
-  struct rlimit XXrlimit;
-
-  getrlimit (RLIMIT_DATA, &XXrlimit);
-#ifdef RLIM_INFINITY
-  lim_data = XXrlimit.rlim_cur & RLIM_INFINITY; /* soft limit */
-#else
-  lim_data = XXrlimit.rlim_cur;        /* soft limit */
-#endif
-}
-
-#endif /* HAVE_RESOURCE */
diff --git a/lib/malloc/memtest.c b/lib/malloc/memtest.c
deleted file mode 100644 (file)
index 15f8115..0000000
+++ /dev/null
@@ -1,151 +0,0 @@
-/*
- * malloc test program.
- *
- * to build:
- *     make x.o
- *     gcc -g -o x x.o xmalloc.o lib/malloc/libmalloc.a
- */
-
-/* Copyright (C) 2002-2003 Free Software Foundation, Inc.
-
-   This file is part of GNU Bash, the Bourne Again SHell.
-
-   Bash is free software: you can redistribute it and/or modify
-   it under the terms of the GNU General Public License as published by
-   the Free Software Foundation, either version 3 of the License, or
-   (at your option) any later version.
-
-   Bash 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 General Public License for more details.
-
-   You should have received a copy of the GNU General Public License
-   along with Bash.  If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#include <stdio.h>
-#include <stdarg.h>
-#include <stdlib.h>
-
-#define USING_BASH_MALLOC
-#define HAVE_STRINGIZE
-
-#include "xmalloc.h"
-
-int interrupt_immediately = 0;
-
-static char    xp[64];
-
-main(int c, char **v)
-{
-       char    *p;
-
-       malloc_set_register(1);
-
-#if 0
-       free (xp);      /* free unallocated memory */
-#endif
-
-#if 0
-       p = xrealloc(xp, 128);
-#endif
-
-#if 0
-       /*
-        * request an amount so that the bucket changes when the malloc
-        * overhead is added to the requested size.  This had better
-        * succeed.
-        */
-       p = xmalloc(25);
-       p[0] = 'a';
-       p[1] = '\0';
-       free(p);        /* sanity check on underflow checks in free() */
-#endif
-
-#if 0
-       p = xmalloc(28);
-       /* This works for little-endian machines like i386. */
-       p[-4] = '\7';   /* underflow */
-       p = xrealloc(p, 128);   /* realloc corrupted memory */
-#endif
-
-#if 0
-       p = xmalloc(28);
-       /* This works for little-endian machines like i386. */
-       p[-4] = '\7';   /* underflow */
-       free(p);
-#endif
-
-#if 0
-       p = xmalloc(2);
-       free(p);
-       free(p);        /* duplicate free */
-#endif
-
-#if 0
-       p = xmalloc(32);
-       free(p);
-       p = xrealloc(p, 128);   /* realloc freed mem */
-#endif
-
-#if 0
-       p = xmalloc(64);
-       p[64] = '\0';
-       p = xrealloc(p, 128);   /* overflow */
-#endif
-
-#if 0
-       p = xmalloc(64);
-       p[64] = '\0';
-       free(p);                /* overflow */
-#endif
-
-#if 0
-       p = xmalloc(64);
-       p[-1] = 'a';
-       free (p);               /* underflow */
-#endif
-
-#if 0
-       p = xmalloc(64);
-       p[-1] = 'a';
-       p = xrealloc(p, 129);   /* underflow */
-#endif
-
-       mregister_dump_table();
-       exit(0);
-}
-
-void
-fatal_error(const char *format, ...)
-{
-       va_list args;
-
-       fprintf(stderr, "malloc-test: ");
-       va_start(args, format);
-       vfprintf(stderr, format, args);
-       fprintf(stderr, "\n");
-       va_end(args);
-       exit(2);
-}
-
-void
-programming_error(const char *format, ...)
-{
-       va_list args;
-
-       fprintf(stderr, "malloc-test: ");
-       va_start(args, format);
-       vfprintf(stderr, format, args);
-       fprintf(stderr, "\n");
-       va_end(args);
-
-       abort();
-}
-
-int
-signal_is_trapped(int n)
-{
-       return 0;
-}
diff --git a/lib/posixheaders.old/ansi_stdlib.h b/lib/posixheaders.old/ansi_stdlib.h
deleted file mode 100644 (file)
index 52339da..0000000
+++ /dev/null
@@ -1,41 +0,0 @@
-/* ansi_stdlib.h -- An ANSI Standard stdlib.h. */
-/* A minimal stdlib.h containing extern declarations for those functions
-   that bash uses. */
-
-/* Copyright (C) 1993 Free Software Foundation, Inc.
-
-   This file is part of GNU Bash, the Bourne Again SHell.
-
-   Bash is free software; you can redistribute it and/or modify it under
-   the terms of the GNU General Public License as published by the Free
-   Software Foundation; either version 2, or (at your option) any later
-   version.
-
-   Bash 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 General Public License
-   for more details.
-
-   You should have received a copy of the GNU General Public License along
-   with Bash; see the file COPYING.  If not, write to the Free Software
-   Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */
-
-#if !defined (_STDLIB_H_)
-#define        _STDLIB_H_ 1
-
-/* String conversion functions. */
-extern int atoi ();
-extern long int atol ();
-
-/* Memory allocation functions. */
-extern char *malloc ();
-extern char *realloc ();
-extern void free ();
-
-/* Other miscellaneous functions. */
-extern void abort ();
-extern void exit ();
-extern char *getenv ();
-extern void qsort ();
-
-#endif /* _STDLIB_H  */
diff --git a/lib/posixheaders.old/filecntl.h b/lib/posixheaders.old/filecntl.h
deleted file mode 100644 (file)
index cf5054d..0000000
+++ /dev/null
@@ -1,45 +0,0 @@
-/* filecntl.h - Definitions to set file descriptors to close-on-exec. */
-
-/* Copyright (C) 1993 Free Software Foundation, Inc.
-
-   This file is part of GNU Bash, the Bourne Again SHell.
-
-   Bash is free software; you can redistribute it and/or modify it under
-   the terms of the GNU General Public License as published by the Free
-   Software Foundation; either version 2, or (at your option) any later
-   version.
-
-   Bash 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 General Public License
-   for more details.
-
-   You should have received a copy of the GNU General Public License along
-   with Bash; see the file COPYING.  If not, write to the Free Software
-   Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */
-
-#if !defined (_FILECNTL_H_)
-#define _FILECNTL_H_
-
-#include <fcntl.h>
-
-/* Definitions to set file descriptors to close-on-exec, the Posix way. */
-#if !defined (FD_CLOEXEC)
-#define FD_CLOEXEC     1
-#endif
-
-#define FD_NCLOEXEC    0
-
-#define SET_CLOSE_ON_EXEC(fd)  (fcntl ((fd), F_SETFD, FD_CLOEXEC))
-#define SET_OPEN_ON_EXEC(fd)   (fcntl ((fd), F_SETFD, FD_NCLOEXEC))
-
-/* How to open a file in non-blocking mode, the Posix.1 way. */
-#if !defined (O_NONBLOCK)
-#  if defined (O_NDELAY)
-#    define O_NONBLOCK O_NDELAY
-#  else
-#    define O_NONBLOCK 0
-#  endif
-#endif
-
-#endif /* ! _FILECNTL_H_ */
diff --git a/lib/posixheaders.old/memalloc.h b/lib/posixheaders.old/memalloc.h
deleted file mode 100644 (file)
index c68961f..0000000
+++ /dev/null
@@ -1,58 +0,0 @@
-/* memalloc.h -- consolidate code for including alloca.h or malloc.h and
-   defining alloca. */
-
-/* Copyright (C) 1993 Free Software Foundation, Inc.
-
-   This file is part of GNU Bash, the Bourne Again SHell.
-
-   Bash is free software; you can redistribute it and/or modify it under
-   the terms of the GNU General Public License as published by the Free
-   Software Foundation; either version 2, or (at your option) any later
-   version.
-
-   Bash 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 General Public License
-   for more details.
-
-   You should have received a copy of the GNU General Public License along
-   with Bash; see the file COPYING.  If not, write to the Free Software
-   Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */
-
-#if !defined (_MEMALLOC_H_)
-#  define _MEMALLOC_H_
-
-#if defined (sparc) && defined (sun) && !defined (HAVE_ALLOCA_H)
-#  define HAVE_ALLOCA_H
-#endif
-
-#if defined (__GNUC__) && !defined (HAVE_ALLOCA)
-#  define HAVE_ALLOCA
-#endif
-
-#if defined (HAVE_ALLOCA_H) && !defined (HAVE_ALLOCA)
-#  define HAVE_ALLOCA
-#endif /* HAVE_ALLOCA_H && !HAVE_ALLOCA */
-
-#if defined (__GNUC__) && !defined (C_ALLOCA)
-#  undef alloca
-#  define alloca __builtin_alloca
-#else /* !__GNUC__ || C_ALLOCA */
-#  if defined (HAVE_ALLOCA_H) && !defined (C_ALLOCA)
-#    if defined (IBMESA)
-#      include <malloc.h>
-#    else /* !IBMESA */
-#      include <alloca.h>
-#    endif /* !IBMESA */
-#  else  /* !HAVE_ALLOCA_H || C_ALLOCA */
-#    if defined (__hpux) && defined (__STDC__) && !defined (alloca)
-extern void *alloca ();
-#    else
-#      if !defined (alloca)
-extern char *alloca ();
-#      endif /* !alloca */
-#    endif /* !__hpux || !__STDC__ && !alloca */
-#  endif /* !HAVE_ALLOCA_H || C_ALLOCA */
-#endif /* !__GNUC__ || C_ALLOCA */
-
-#endif /* _MEMALLOC_H_ */
diff --git a/lib/posixheaders.old/posixdir.h b/lib/posixheaders.old/posixdir.h
deleted file mode 100644 (file)
index 7480a93..0000000
+++ /dev/null
@@ -1,49 +0,0 @@
-/* posixdir.h -- Posix directory reading includes and defines. */
-
-/* Copyright (C) 1987,1991 Free Software Foundation, Inc.
-
-   This file is part of GNU Bash, the Bourne Again SHell.
-
-   Bash is free software; you can redistribute it and/or modify it
-   under the terms of the GNU General Public License as published by
-   the Free Software Foundation; either version 1, or (at your option)
-   any later version.
-
-   Bash 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 General Public
-   License for more details.
-
-   You should have received a copy of the GNU General Public License
-   along with Bash; see the file COPYING.  If not, write to the Free
-   Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */
-
-/* This file should be included instead of <dirent.h> or <sys/dir.h>. */
-
-#if !defined (_POSIXDIR_H_)
-#define _POSIXDIR_H_
-
-#if defined (HAVE_DIRENT_H)
-#  include <dirent.h>
-#  define D_NAMLEN(d)   (strlen ((d)->d_name))
-#else
-#  if defined (HAVE_SYS_NDIR_H)
-#    include <sys/ndir.h>
-#  endif
-#  if defined (HAVE_SYS_DIR_H)
-#    include <sys/dir.h>
-#  endif
-#  if defined (HAVE_NDIR_H)
-#    include <ndir.h>
-#  endif
-#  if !defined (dirent)
-#    define dirent direct
-#  endif /* !dirent */
-#  define D_NAMLEN(d)   ((d)->d_namlen)
-#endif /* !HAVE_DIRENT_H */
-
-#if defined (STRUCT_DIRENT_HAS_D_INO) && !defined (STRUCT_DIRENT_HAS_D_FILENO)
-#  define d_fileno d_ino
-#endif
-
-#endif /* !_POSIXDIR_H_ */
diff --git a/lib/posixheaders.old/posixjmp.h b/lib/posixheaders.old/posixjmp.h
deleted file mode 100644 (file)
index 1347cc0..0000000
+++ /dev/null
@@ -1,22 +0,0 @@
-/* posixjmp.h -- wrapper for setjmp.h with changes for POSIX systems. */
-
-#ifndef _POSIXJMP_H_
-#define _POSIXJMP_H_
-
-#include <setjmp.h>
-
-/* This *must* be included *after* config.h */
-
-#if defined (HAVE_POSIX_SIGSETJMP)
-#  define procenv_t    sigjmp_buf
-#  if !defined (__OPENNT)
-#    undef setjmp
-#    define setjmp(x)  sigsetjmp((x), 1)
-#    undef longjmp
-#    define longjmp(x, n)      siglongjmp((x), (n))
-#  endif /* !__OPENNT */
-#else
-#  define procenv_t    jmp_buf
-#endif
-
-#endif /* _POSIXJMP_H_ */
diff --git a/lib/posixheaders.old/posixstat.h b/lib/posixheaders.old/posixstat.h
deleted file mode 100644 (file)
index bfce8c0..0000000
+++ /dev/null
@@ -1,142 +0,0 @@
-/* posixstat.h -- Posix stat(2) definitions for systems that
-   don't have them. */
-
-/* Copyright (C) 1987,1991 Free Software Foundation, Inc.
-
-   This file is part of GNU Bash, the Bourne Again SHell.
-
-   Bash is free software; you can redistribute it and/or modify it
-   under the terms of the GNU General Public License as published by
-   the Free Software Foundation; either version 1, or (at your option)
-   any later version.
-
-   Bash 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 General Public
-   License for more details.
-
-   You should have received a copy of the GNU General Public License
-   along with Bash; see the file COPYING.  If not, write to the Free
-   Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */
-
-/* This file should be included instead of <sys/stat.h>.
-   It relies on the local sys/stat.h to work though. */
-#if !defined (_POSIXSTAT_H_)
-#define _POSIXSTAT_H_
-
-#include <sys/stat.h>
-
-#if defined (STAT_MACROS_BROKEN)
-#  undef S_ISBLK
-#  undef S_ISCHR
-#  undef S_ISDIR
-#  undef S_ISFIFO
-#  undef S_ISREG
-#  undef S_ISLNK
-#endif /* STAT_MACROS_BROKEN */
-
-/* These are guaranteed to work only on isc386 */
-#if !defined (S_IFDIR) && !defined (S_ISDIR)
-#  define S_IFDIR 0040000
-#endif /* !S_IFDIR && !S_ISDIR */
-#if !defined (S_IFMT)
-#  define S_IFMT  0170000
-#endif /* !S_IFMT */
-
-/* Posix 1003.1 5.6.1.1 <sys/stat.h> file types */
-
-/* Some Posix-wannabe systems define _S_IF* macros instead of S_IF*, but
-   do not provide the S_IS* macros that Posix requires. */
-
-#if defined (_S_IFMT) && !defined (S_IFMT)
-#define S_IFMT _S_IFMT
-#endif
-#if defined (_S_IFIFO) && !defined (S_IFIFO)
-#define S_IFIFO _S_IFIFO
-#endif
-#if defined (_S_IFCHR) && !defined (S_IFCHR)
-#define S_IFCHR _S_IFCHR
-#endif
-#if defined (_S_IFDIR) && !defined (S_IFDIR)
-#define S_IFDIR _S_IFDIR
-#endif
-#if defined (_S_IFBLK) && !defined (S_IFBLK)
-#define S_IFBLK _S_IFBLK
-#endif
-#if defined (_S_IFREG) && !defined (S_IFREG)
-#define S_IFREG _S_IFREG
-#endif
-#if defined (_S_IFLNK) && !defined (S_IFLNK)
-#define S_IFLNK _S_IFLNK
-#endif
-#if defined (_S_IFSOCK) && !defined (S_IFSOCK)
-#define S_IFSOCK _S_IFSOCK
-#endif
-
-/* Test for each symbol individually and define the ones necessary (some
-   systems claiming Posix compatibility define some but not all). */
-
-#if defined (S_IFBLK) && !defined (S_ISBLK)
-#define        S_ISBLK(m)      (((m)&S_IFMT) == S_IFBLK)       /* block device */
-#endif
-
-#if defined (S_IFCHR) && !defined (S_ISCHR)
-#define        S_ISCHR(m)      (((m)&S_IFMT) == S_IFCHR)       /* character device */
-#endif
-
-#if defined (S_IFDIR) && !defined (S_ISDIR)
-#define        S_ISDIR(m)      (((m)&S_IFMT) == S_IFDIR)       /* directory */
-#endif
-
-#if defined (S_IFREG) && !defined (S_ISREG)
-#define        S_ISREG(m)      (((m)&S_IFMT) == S_IFREG)       /* file */
-#endif
-
-#if defined (S_IFIFO) && !defined (S_ISFIFO)
-#define        S_ISFIFO(m)     (((m)&S_IFMT) == S_IFIFO)       /* fifo - named pipe */
-#endif
-
-#if defined (S_IFLNK) && !defined (S_ISLNK)
-#define        S_ISLNK(m)      (((m)&S_IFMT) == S_IFLNK)       /* symbolic link */
-#endif
-
-#if defined (S_IFSOCK) && !defined (S_ISSOCK)
-#define        S_ISSOCK(m)     (((m)&S_IFMT) == S_IFSOCK)      /* socket */
-#endif
-
-/*
- * POSIX 1003.1 5.6.1.2 <sys/stat.h> File Modes
- */
-
-#if !defined (S_IRWXU)
-#  if !defined (S_IREAD)
-#    define S_IREAD    00400
-#    define S_IWRITE   00200
-#    define S_IEXEC    00100
-#  endif /* S_IREAD */
-
-#  if !defined (S_IRUSR)
-#    define S_IRUSR    S_IREAD                 /* read, owner */
-#    define S_IWUSR    S_IWRITE                /* write, owner */
-#    define S_IXUSR    S_IEXEC                 /* execute, owner */
-
-#    define S_IRGRP    (S_IREAD  >> 3)         /* read, group */
-#    define S_IWGRP    (S_IWRITE >> 3)         /* write, group */
-#    define S_IXGRP    (S_IEXEC  >> 3)         /* execute, group */
-
-#    define S_IROTH    (S_IREAD  >> 6)         /* read, other */
-#    define S_IWOTH    (S_IWRITE >> 6)         /* write, other */
-#    define S_IXOTH    (S_IEXEC  >> 6)         /* execute, other */
-#  endif /* !S_IRUSR */
-
-#  define S_IRWXU      (S_IRUSR | S_IWUSR | S_IXUSR)
-#  define S_IRWXG      (S_IRGRP | S_IWGRP | S_IXGRP)
-#  define S_IRWXO      (S_IROTH | S_IWOTH | S_IXOTH)
-#endif /* !S_IRWXU */
-
-/* These are non-standard, but are used in builtins.c$symbolic_umask() */
-#define S_IRUGO                (S_IRUSR | S_IRGRP | S_IROTH)
-#define S_IWUGO                (S_IWUSR | S_IWGRP | S_IWOTH)
-#define S_IXUGO                (S_IXUSR | S_IXGRP | S_IXOTH)
-
-#endif /* _POSIXSTAT_H_ */
diff --git a/lib/posixheaders.old/stdc.h b/lib/posixheaders.old/stdc.h
deleted file mode 100644 (file)
index f1590c6..0000000
+++ /dev/null
@@ -1,79 +0,0 @@
-/* stdc.h -- macros to make source compile on both ANSI C and K&R C
-   compilers. */
-
-/* Copyright (C) 1993 Free Software Foundation, Inc.
-
-   This file is part of GNU Bash, the Bourne Again SHell.
-
-   Bash is free software; you can redistribute it and/or modify it
-   under the terms of the GNU General Public License as published by
-   the Free Software Foundation; either version 1, or (at your option)
-   any later version.
-
-   Bash 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 General Public
-   License for more details.
-
-   You should have received a copy of the GNU General Public License
-   along with Bash; see the file COPYING.  If not, write to the Free
-   Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */
-
-#if !defined (_STDC_H_)
-#define _STDC_H_
-
-/* Adapted from BSD /usr/include/sys/cdefs.h. */
-
-/* A function can be defined using prototypes and compile on both ANSI C
-   and traditional C compilers with something like this:
-       extern char *func __P((char *, char *, int)); */
-
-#if defined (__STDC__)
-
-#  if !defined (__P)
-#    define __P(protos) protos
-#  endif
-#  define __STRING(x) #x
-
-#  if !defined (__GNUC__)
-#    define inline
-#  endif
-
-#else /* !__STDC__ */
-
-#  if !defined (__P)
-#    define __P(protos) ()
-#  endif
-#  define __STRING(x) "x"
-
-#if defined (__GNUC__)         /* gcc with -traditional */
-#  if !defined (const)
-#    define const  __const
-#  endif
-#  if !defined (inline)
-#    define inline __inline
-#  endif
-#  if !defined (signed)
-#    define signed __signed
-#  endif
-#  if !defined (volatile)
-#    define volatile __volatile
-#  endif
-#else /* !__GNUC__ */
-#  if !defined (const)
-#    define const
-#  endif
-#  if !defined (inline)
-#    define inline
-#  endif
-#  if !defined (signed)
-#    define signed
-#  endif
-#  if !defined (volatile)
-#    define volatile
-#  endif
-#endif /* !__GNUC__ */
-
-#endif /* !__STDC__ */
-
-#endif /* !_STDC_H_ */
diff --git a/lib/readline/-i b/lib/readline/-i
deleted file mode 100644 (file)
index e69de29..0000000
diff --git a/lib/readline/NEW/xxx-autocomplete b/lib/readline/NEW/xxx-autocomplete
deleted file mode 100644 (file)
index fdc2ad0..0000000
+++ /dev/null
@@ -1,39 +0,0 @@
-#if defined (READLINE_AUTOCOMPLETE)
-/* Return the list of completions for the text between START and END.
-   FOUND_QUOTE is non-zero if we're completing a quoted word; if so,
-   QUOTE_CHAR is the delimiter.  If NONTRIVIAL_P is nonzero, it gets
-   set to a flag saying whether or not the completion added anything
-   to the word.  Not part of rl_complete_internal because it's too
-   hard to separate functions without postprocess_matches possibly being
-   called twice; here to support the autocompletion code. */
-char **
-_rl_generate_completions (start, end, found_quote, quote_char, nontrivial_p)
-     int start, end, found_quote, quote_char, *nontrivial_p;
-{
-  rl_compentry_func_t *our_func;
-  char *text;
-  char **matches;
-
-  our_func = rl_completion_entry_function
-               ? rl_completion_entry_function
-               : rl_filename_completion_function;
-  text = rl_copy_text (start, end);
-  matches = gen_completion_matches (text, start, end, our_func, found_quote, quote_char);
-
-  /* *nontrivial_p is set if the common prefix adds something to the word
-     being completed. */
-  if (nontrivial_p)
-    *nontrivial_p = matches && strcmp (text, matches[0]) != 0;
-
-  free (text);
-
-  /* Postprocess the matches */
-  if (matches == 0)
-    return (char **)0;
-
-  if (postprocess_matches (&matches, rl_filename_completion_desired) == 0)
-    return (char **)0;
-
-  return 0;
-}
-#endif
diff --git a/lib/readline/copyright-comment b/lib/readline/copyright-comment
deleted file mode 100644 (file)
index eea44d2..0000000
+++ /dev/null
@@ -1,12 +0,0 @@
-   Readline is free software: you can redistribute it and/or modify
-   it under the terms of the GNU General Public License as published by
-   the Free Software Foundation, either version 3 of the License, or
-   (at your option) any later version.
-
-   Readline 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 General Public License for more details.
-
-   You should have received a copy of the GNU General Public License
-   along with Readline.  If not, see <http://www.gnu.org/licenses/>.
diff --git a/lib/readline/copyright-history b/lib/readline/copyright-history
deleted file mode 100644 (file)
index 6e7422e..0000000
+++ /dev/null
@@ -1,12 +0,0 @@
-   History is free software: you can redistribute it and/or modify
-   it under the terms of the GNU General Public License as published by
-   the Free Software Foundation, either version 3 of the License, or
-   (at your option) any later version.
-
-   History 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 General Public License for more details.
-
-   You should have received a copy of the GNU General Public License
-   along with History.  If not, see <http://www.gnu.org/licenses/>.
diff --git a/lib/readline/doc/Makefile.in b/lib/readline/doc/Makefile.in
deleted file mode 100644 (file)
index 08444d2..0000000
+++ /dev/null
@@ -1,159 +0,0 @@
-# Derived by hand from the generated readline-src/doc/Makefile
-# This makefile for Readline library documentation is in -*- text -*- mode.
-# Emacs likes it that way.
-
-# Copyright (C) 1996-2002 Free Software Foundation, Inc.
-
-#   This program is free software: you can redistribute it and/or modify
-#   it under the terms of the GNU General Public License as published by
-#   the Free Software Foundation, either version 3 of the License, or
-#   (at your option) any later version.
-
-#   This program 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 General Public License for more details.
-
-#   You should have received a copy of the GNU General Public License
-#   along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-topdir = .
-srcdir = .
-VPATH = .
-
-prefix = /usr/local
-infodir = ${prefix}/info
-
-mandir = ${prefix}/man
-manpfx = man
-
-man1ext = 1
-man1dir = $(mandir)/$(manpfx)$(man1ext)
-man3ext = 3
-man3dir = $(mandir)/$(manpfx)$(man3ext)
-
-SHELL = /bin/sh
-RM = rm -f
-
-INSTALL = /usr/bin/install -c
-INSTALL_DATA = ${INSTALL} -m 644
-
-BUILD_DIR = .
-TEXINPUTDIR = $(srcdir)
-
-MAKEINFO    = LANGUAGE= makeinfo
-TEXI2DVI    = $(srcdir)/texi2dvi
-TEXI2HTML   = $(srcdir)/texi2html
-QUIETPS     = #set this to -q to shut up dvips
-PSDPI       = 600
-DVIPS       = dvips -D ${PSDPI} $(QUIETPS) -o $@     # tricky
-DVIPDF      = dvipdfm -o $@ -p ${PAPERSIZE}
-PSPDF       = gs -sPAPERSIZE=${PAPERSIZE} -sDEVICE=pdfwrite -dNOPAUSE -dBATCH -sOutputFile=$@
-
-RLSRC = $(srcdir)/rlman.texi $(srcdir)/rluser.texi \
-       $(srcdir)/rltech.texi $(srcdir)/version.texi \
-       $(srcdir)/rluserman.texi
-HISTSRC = $(srcdir)/history.texi $(srcdir)/hsuser.texi \
-         $(srcdir)/hstech.texi $(srcdir)/version.texi
-
-# This should be a program that converts troff to an ascii-readable format
-NROFF       = groff -Tascii
-
-# This should be a program that converts troff to postscript
-GROFF       = groff
-
-DVIOBJ = readline.dvi history.dvi rluserman.dvi
-INFOOBJ = readline.info history.info rluserman.info
-PSOBJ = readline.ps history.ps rluserman.ps
-HTMLOBJ = readline.html history.html rluserman.html
-PDFOBJ = readline.pdf history.pdf rluserman.pdf
-
-INTERMEDIATE_OBJ = rlman.dvi
-
-CREATED_DOCS = $(DVIOBJ) $(INFOOBJ) $(PSOBJ) $(HTMLOBJ) $(PDFOBJ)
-
-.SUFFIXES:      .ps .txt .dvi .html .pdf
-
-.ps.pdf:
-       $(RM) $@
-       -${PSPDF} $<
-
-.dvi.pdf:
-       $(RM) $@
-       -${DVIPDF} $<
-
-all: info dvi html ps
-nodvi: info html
-pdf: $(PDFOBJ)
-
-readline.dvi: $(RLSRC)
-       TEXINPUTS=.:$(TEXINPUTDIR):$$TEXINPUTS $(TEXI2DVI) $(srcdir)/rlman.texi
-       mv rlman.dvi readline.dvi
-
-readline.info: $(RLSRC)
-       $(MAKEINFO) --no-split -I $(TEXINPUTDIR) -o $@ $(srcdir)/rlman.texi
-
-rluserman.dvi: $(RLSRC)
-       TEXINPUTS=.:$(TEXINPUTDIR):$$TEXINPUTS $(TEXI2DVI) $(srcdir)/rluserman.texi
-
-rluserman.info: $(RLSRC)
-       $(MAKEINFO) --no-split -I $(TEXINPUTDIR) -o $@ $(srcdir)/rluserman.texi
-
-history.dvi: ${HISTSRC}
-       TEXINPUTS=.:$(TEXINPUTDIR):$$TEXINPUTS $(TEXI2DVI) $(srcdir)/history.texi
-
-history.info: ${HISTSRC}
-       $(MAKEINFO) --no-split -I $(TEXINPUTDIR) -o $@ $(srcdir)/history.texi
-
-readline.ps:   readline.dvi
-       $(RM) $@
-       $(DVIPS) readline.dvi
-
-rluserman.ps:  rluserman.dvi
-       $(RM) $@
-       $(DVIPS) rluserman.dvi
-
-history.ps:    history.dvi
-       $(RM) $@
-       $(DVIPS) history.dvi
-
-readline.html: ${RLSRC}
-       $(TEXI2HTML) -menu -monolithic -I $(TEXINPUTDIR) $(srcdir)/rlman.texi
-       sed -e 's:rlman.html:readline.html:' rlman.html > readline.html
-       $(RM) rlman.html
-
-rluserman.html:        ${RLSRC}
-       $(TEXI2HTML) -menu -monolithic -I $(TEXINPUTDIR) $(srcdir)/rluserman.texi
-
-history.html:  ${HISTSRC}
-       $(TEXI2HTML) -menu -monolithic -I $(TEXINPUTDIR) $(srcdir)/history.texi
-
-info:  $(INFOOBJ)
-dvi:   $(DVIOBJ)
-ps:    $(PSOBJ)
-html:  $(HTMLOBJ)
-
-readline.pdf:   readline.dvi
-history.pdf:    history.dvi
-rluserman.pdf:  rluserman.dvi
-
-clean:
-       $(RM) *.aux *.cp *.fn *.ky *.log *.pg *.toc *.tp *.vr *.cps *.pgs \
-             *.fns *.kys *.tps *.vrs *.bt *.bts *.o core *.core
-
-distclean: clean
-       $(RM) $(CREATED_DOCS)
-       $(RM) $(INTERMEDIATE_OBJ)
-       $(RM) Makefile
-
-mostlyclean: clean
-
-maintainer-clean: clean
-       $(RM) $(CREATED_DOCS)
-       $(RM) $(INTERMEDIATE_OBJ)
-       $(RM) Makefile
-
-install:
-       @echo "This documentation should not be installed."
-
-uninstall:
diff --git a/lib/readline/doc/hist.texinfo b/lib/readline/doc/hist.texinfo
deleted file mode 100644 (file)
index 63ceb16..0000000
+++ /dev/null
@@ -1,110 +0,0 @@
-\input texinfo    @c -*-texinfo-*-
-@c %**start of header (This is for running Texinfo on a region.)
-@setfilename history.info
-@settitle GNU History Library
-@c %**end of header (This is for running Texinfo on a region.)
-
-@setchapternewpage odd
-
-@include manvers.texinfo
-
-@ifinfo
-@dircategory Libraries
-@direntry
-* History: (history).       The GNU history library API
-@end direntry
-
-This document describes the GNU History library, a programming tool that
-provides a consistent user interface for recalling lines of previously
-typed input.
-
-Copyright (C) 1988-2002 Free Software Foundation, Inc.
-
-Permission is granted to make and distribute verbatim copies of
-this manual provided the copyright notice and this permission notice
-pare preserved on all copies.
-
-@ignore
-Permission is granted to process this file through TeX and print the
-results, provided the printed document carries copying permission
-notice identical to this one except for the removal of this paragraph
-(this paragraph not being relevant to the printed manual).
-@end ignore
-
-Permission is granted to copy and distribute modified versions of this
-manual under the conditions for verbatim copying, provided that the entire
-resulting derived work is distributed under the terms of a permission
-notice identical to this one.
-
-Permission is granted to copy and distribute translations of this manual
-into another language, under the above conditions for modified versions,
-except that this permission notice may be stated in a translation approved
-by the Free Software Foundation.
-@end ifinfo
-
-@titlepage
-@title GNU History Library
-@subtitle Edition @value{EDITION}, for @code{History Library} Version @value{VERSION}.
-@subtitle @value{UPDATE-MONTH}
-@author Brian Fox, Free Software Foundation
-@author Chet Ramey, Case Western Reserve University
-
-@page
-This document describes the GNU History library, a programming tool that
-provides a consistent user interface for recalling lines of previously
-typed input.
-
-Published by the Free Software Foundation @*
-59 Temple Place, Suite 330, @*
-Boston, MA 02111 USA
-
-Permission is granted to make and distribute verbatim copies of
-this manual provided the copyright notice and this permission notice
-are preserved on all copies.
-
-Permission is granted to copy and distribute modified versions of this
-manual under the conditions for verbatim copying, provided that the entire
-resulting derived work is distributed under the terms of a permission
-notice identical to this one.
-
-Permission is granted to copy and distribute translations of this manual
-into another language, under the above conditions for modified versions,
-except that this permission notice may be stated in a translation approved
-by the Free Software Foundation.
-
-@vskip 0pt plus 1filll
-Copyright @copyright{} 1988-2002 Free Software Foundation, Inc.
-@end titlepage
-
-@ifinfo
-@node Top
-@top GNU History Library
-
-This document describes the GNU History library, a programming tool that
-provides a consistent user interface for recalling lines of previously
-typed input.
-
-@menu
-* Using History Interactively::          GNU History User's Manual.
-* Programming with GNU History::  GNU History Programmer's Manual.
-* Concept Index::                Index of concepts described in this manual.
-* Function and Variable Index::          Index of externally visible functions
-                                 and variables.
-@end menu
-@end ifinfo
-
-@syncodeindex fn vr
-
-@include hsuser.texinfo
-@include hstech.texinfo
-
-@node Concept Index
-@appendix Concept Index
-@printindex cp
-
-@node Function and Variable Index
-@appendix Function and Variable Index
-@printindex vr
-
-@contents
-@bye
diff --git a/lib/readline/doc/history.3 b/lib/readline/doc/history.3
deleted file mode 100644 (file)
index 15775aa..0000000
+++ /dev/null
@@ -1,672 +0,0 @@
-.\"
-.\" MAN PAGE COMMENTS to
-.\"
-.\"    Chet Ramey
-.\"    Information Network Services
-.\"    Case Western Reserve University
-.\"    chet@ins.CWRU.Edu
-.\"
-.\"    Last Change: Thu Aug 12 22:24:41 EDT 2010
-.\"
-.TH HISTORY 3 "2010 August 12" "GNU History 6.2"
-.\"
-.\" File Name macro.  This used to be `.PN', for Path Name,
-.\" but Sun doesn't seem to like that very much.
-.\"
-.de FN
-\fI\|\\$1\|\fP
-..
-.ds lp \fR\|(\fP
-.ds rp \fR\|)\fP
-.\" FnN return-value fun-name N arguments
-.de Fn1
-\fI\\$1\fP \fB\\$2\fP \\*(lp\fI\\$3\fP\\*(rp
-.br
-..
-.de Fn2
-.if t \fI\\$1\fP \fB\\$2\fP \\*(lp\fI\\$3,\|\\$4\fP\\*(rp
-.if n \fI\\$1\fP \fB\\$2\fP \\*(lp\fI\\$3, \\$4\fP\\*(rp
-.br
-..
-.de Fn3
-.if t \fI\\$1\fP \fB\\$2\fP \\*(lp\fI\\$3,\|\\$4,\|\\$5\fP\|\\*(rp
-.if n \fI\\$1\fP \fB\\$2\fP \\*(lp\fI\\$3, \\$4, \\$5\fP\\*(rp
-.br
-..
-.de Vb
-\fI\\$1\fP \fB\\$2\fP
-.br
-..
-.SH NAME
-history \- GNU History Library
-.SH COPYRIGHT
-.if t The GNU History Library is Copyright \(co 1989-2011 by the Free Software Foundation, Inc.
-.if n The GNU History Library is Copyright (C) 1989-2011 by the Free Software Foundation, Inc.
-.SH DESCRIPTION
-Many programs read input from the user a line at a time.  The GNU
-History library is able to keep track of those lines, associate arbitrary
-data with each line, and utilize information from previous lines in
-composing new ones. 
-.PP
-.SH "HISTORY EXPANSION"
-.PP
-The history library supports a history expansion feature that
-is identical to the history expansion in
-.BR bash.
-This section describes what syntax features are available.
-.PP
-History expansions introduce words from the history list into
-the input stream, making it easy to repeat commands, insert the
-arguments to a previous command into the current input line, or
-fix errors in previous commands quickly.
-.PP
-History expansion is usually performed immediately after a complete line
-is read.
-It takes place in two parts.
-The first is to determine which line from the history list
-to use during substitution.
-The second is to select portions of that line for inclusion into
-the current one.
-The line selected from the history is the \fIevent\fP,
-and the portions of that line that are acted upon are \fIwords\fP.
-Various \fImodifiers\fP are available to manipulate the selected words.
-The line is broken into words in the same fashion as \fBbash\fP
-does when reading input,
-so that several words that would otherwise be separated 
-are considered one word when surrounded by quotes (see the
-description of \fBhistory_tokenize()\fP below).
-History expansions are introduced by the appearance of the
-history expansion character, which is \^\fB!\fP\^ by default.
-Only backslash (\^\fB\e\fP\^) and single quotes can quote
-the history expansion character.
-.SS Event Designators
-.PP
-An event designator is a reference to a command line entry in the
-history list.
-Unless the reference is absolute, events are relative to the current
-position in the history list.
-.PP
-.PD 0
-.TP
-.B !
-Start a history substitution, except when followed by a
-.BR blank ,
-newline, = or (.
-.TP
-.B !\fIn\fR
-Refer to command line
-.IR n .
-.TP
-.B !\-\fIn\fR
-Refer to the current command minus
-.IR n .
-.TP
-.B !!
-Refer to the previous command.  This is a synonym for `!\-1'.
-.TP
-.B !\fIstring\fR
-Refer to the most recent command
-preceding the current position in the history list
-starting with
-.IR string .
-.TP
-.B !?\fIstring\fR\fB[?]\fR
-Refer to the most recent command
-preceding the current position in the history list
-containing
-.IR string .
-The trailing \fB?\fP may be omitted if
-.I string
-is followed immediately by a newline.
-.TP
-.B \d\s+2^\s-2\u\fIstring1\fP\d\s+2^\s-2\u\fIstring2\fP\d\s+2^\s-2\u
-Quick substitution.  Repeat the last command, replacing
-.I string1
-with
-.IR string2 .
-Equivalent to
-``!!:s/\fIstring1\fP/\fIstring2\fP/''
-(see \fBModifiers\fP below).
-.TP
-.B !#
-The entire command line typed so far.
-.PD
-.SS Word Designators
-.PP
-Word designators are used to select desired words from the event.
-A 
-.B :
-separates the event specification from the word designator.
-It may be omitted if the word designator begins with a
-.BR ^ ,
-.BR $ ,
-.BR * ,
-.BR \- ,
-or
-.BR % .
-Words are numbered from the beginning of the line,
-with the first word being denoted by 0 (zero).
-Words are inserted into the current line separated by single spaces.
-.PP
-.PD 0
-.TP
-.B 0 (zero)
-The zeroth word.  For the shell, this is the command
-word.
-.TP
-.I n
-The \fIn\fRth word.
-.TP
-.B ^
-The first argument.  That is, word 1.
-.TP
-.B $
-The last argument.
-.TP
-.B %
-The word matched by the most recent `?\fIstring\fR?' search.
-.TP
-.I x\fB\-\fPy
-A range of words; `\-\fIy\fR' abbreviates `0\-\fIy\fR'.
-.TP
-.B *
-All of the words but the zeroth.  This is a synonym
-for `\fI1\-$\fP'.  It is not an error to use
-.B *
-if there is just one
-word in the event; the empty string is returned in that case.
-.TP
-.B x*
-Abbreviates \fIx\-$\fP.
-.TP
-.B x\-
-Abbreviates \fIx\-$\fP like \fBx*\fP, but omits the last word.
-.PD
-.PP
-If a word designator is supplied without an event specification, the
-previous command is used as the event.
-.SS Modifiers
-.PP
-After the optional word designator, there may appear a sequence of
-one or more of the following modifiers, each preceded by a `:'.
-.PP
-.PD 0
-.PP
-.TP
-.B h
-Remove a trailing file name component, leaving only the head.
-.TP
-.B t
-Remove all leading file name components, leaving the tail.
-.TP
-.B r
-Remove a trailing suffix of the form \fI.xxx\fP, leaving the
-basename.
-.TP
-.B e
-Remove all but the trailing suffix.
-.TP
-.B p
-Print the new command but do not execute it.
-.TP
-.B q
-Quote the substituted words, escaping further substitutions.
-.TP
-.B x
-Quote the substituted words as with
-.BR q ,
-but break into words at
-.B blanks
-and newlines.
-.TP
-.B s/\fIold\fP/\fInew\fP/
-Substitute
-.I new
-for the first occurrence of
-.I old
-in the event line.  Any delimiter can be used in place of /.  The
-final delimiter is optional if it is the last character of the
-event line.  The delimiter may be quoted in
-.I old
-and
-.I new
-with a single backslash.  If & appears in
-.IR new ,
-it is replaced by
-.IR old .
-A single backslash will quote the &.  If
-.I old
-is null, it is set to the last
-.I old
-substituted, or, if no previous history substitutions took place,
-the last
-.I string
-in a
-.B !?\fIstring\fR\fB[?]\fR
-search.
-.TP
-.B &
-Repeat the previous substitution.
-.TP
-.B g
-Cause changes to be applied over the entire event line.  This is
-used in conjunction with `\fB:s\fP' (e.g., `\fB:gs/\fIold\fP/\fInew\fP/\fR')
-or `\fB:&\fP'.  If used with
-`\fB:s\fP', any delimiter can be used
-in place of /, and the final delimiter is optional
-if it is the last character of the event line.
-An \fBa\fP may be used as a synonym for \fBg\fP.
-.TP
-.B G
-Apply the following `\fBs\fP' modifier once to each word in the event line.
-.PD
-.SH "PROGRAMMING WITH HISTORY FUNCTIONS"
-This section describes how to use the History library in other programs.
-.SS Introduction to History
-.PP
-The programmer using the History library has available functions
-for remembering lines on a history list, associating arbitrary data
-with a line, removing lines from the list, searching through the list
-for a line containing an arbitrary text string, and referencing any line
-in the list directly.  In addition, a history \fIexpansion\fP function
-is available which provides for a consistent user interface across
-different programs.
-.PP
-The user using programs written with the History library has the
-benefit of a consistent user interface with a set of well-known
-commands for manipulating the text of previous lines and using that text
-in new commands.  The basic history manipulation commands are
-identical to
-the history substitution provided by \fBbash\fP.
-.PP
-If the programmer desires, he can use the Readline library, which
-includes some history manipulation by default, and has the added
-advantage of command line editing.
-.PP
-Before declaring any functions using any functionality the History
-library provides in other code, an application writer should include
-the file
-.FN <readline/history.h>
-in any file that uses the
-History library's features.  It supplies extern declarations for all
-of the library's public functions and variables, and declares all of
-the public data structures.
-
-.SS History Storage
-.PP
-The history list is an array of history entries.  A history entry is
-declared as follows:
-.PP
-.Vb "typedef void *" histdata_t;
-.PP
-.nf
-typedef struct _hist_entry {
-  char *line;
-  char *timestamp;
-  histdata_t data;
-} HIST_ENTRY;
-.fi
-.PP
-The history list itself might therefore be declared as
-.PP
-.Vb "HIST_ENTRY **" the_history_list;
-.PP
-The state of the History library is encapsulated into a single structure:
-.PP
-.nf
-/*
- * A structure used to pass around the current state of the history.
- */
-typedef struct _hist_state {
-  HIST_ENTRY **entries; /* Pointer to the entries themselves. */
-  int offset;           /* The location pointer within this array. */
-  int length;           /* Number of elements within this array. */
-  int size;             /* Number of slots allocated to this array. */
-  int flags;
-} HISTORY_STATE;
-.fi
-.PP
-If the flags member includes \fBHS_STIFLED\fP, the history has been
-stifled.
-.SH "History Functions"
-.PP
-This section describes the calling sequence for the various functions
-exported by the GNU History library.
-.SS Initializing History and State Management
-This section describes functions used to initialize and manage
-the state of the History library when you want to use the history
-functions in your program.
-
-.Fn1 void using_history void
-Begin a session in which the history functions might be used.  This
-initializes the interactive variables.
-
-.Fn1 "HISTORY_STATE *" history_get_history_state void
-Return a structure describing the current state of the input history.
-
-.Fn1 void history_set_history_state "HISTORY_STATE *state"
-Set the state of the history list according to \fIstate\fP.
-
-.SS History List Management
-
-These functions manage individual entries on the history list, or set
-parameters managing the list itself.
-
-.Fn1 void add_history "const char *string"
-Place \fIstring\fP at the end of the history list.  The associated data
-field (if any) is set to \fBNULL\fP.
-
-.Fn1 void add_history_time "const char *string"
-Change the time stamp associated with the most recent history entry to
-\fIstring\fP.
-
-.Fn1 "HIST_ENTRY *" remove_history "int which"
-Remove history entry at offset \fIwhich\fP from the history.  The
-removed element is returned so you can free the line, data,
-and containing structure.
-
-.Fn1 "histdata_t" free_history_entry "HIST_ENTRY *histent"
-Free the history entry \fIhistent\fP and any history library private
-data associated with it.  Returns the application-specific data
-so the caller can dispose of it.
-
-.Fn3 "HIST_ENTRY *" replace_history_entry "int which" "const char *line" "histdata_t data"
-Make the history entry at offset \fIwhich\fP have \fIline\fP and \fIdata\fP.
-This returns the old entry so the caller can dispose of any
-application-specific data.  In the case
-of an invalid \fIwhich\fP, a \fBNULL\fP pointer is returned.
-
-.Fn1 void clear_history "void"
-Clear the history list by deleting all the entries.
-
-.Fn1 void stifle_history "int max"
-Stifle the history list, remembering only the last \fImax\fP entries.
-
-.Fn1 int unstifle_history "void"
-Stop stifling the history.  This returns the previously-set
-maximum number of history entries (as set by \fBstifle_history()\fP).
-history was stifled.  The value is positive if the history was
-stifled, negative if it wasn't.
-
-.Fn1 int history_is_stifled "void"
-Returns non-zero if the history is stifled, zero if it is not.
-
-.SS Information About the History List
-
-These functions return information about the entire history list or
-individual list entries.
-
-.Fn1 "HIST_ENTRY **" history_list "void"
-Return a \fBNULL\fP terminated array of \fIHIST_ENTRY *\fP which is the
-current input history.  Element 0 of this list is the beginning of time.
-If there is no history, return \fBNULL\fP.
-
-.Fn1 int where_history "void"
-Returns the offset of the current history element.
-
-.Fn1 "HIST_ENTRY *" current_history "void"
-Return the history entry at the current position, as determined by
-\fBwhere_history()\fP.  If there is no entry there, return a \fBNULL\fP
-pointer.
-
-.Fn1 "HIST_ENTRY *" history_get "int offset"
-Return the history entry at position \fIoffset\fP, starting from
-\fBhistory_base\fP.
-If there is no entry there, or if \fIoffset\fP
-is greater than the history length, return a \fBNULL\fP pointer.
-
-.Fn1 "time_t" history_get_time "HIST_ENTRY *"
-Return the time stamp associated with the history entry passed as the argument.
-
-.Fn1 int history_total_bytes "void"
-Return the number of bytes that the primary history entries are using.
-This function returns the sum of the lengths of all the lines in the
-history.
-
-.SS Moving Around the History List
-
-These functions allow the current index into the history list to be
-set or changed.
-
-.Fn1 int history_set_pos "int pos"
-Set the current history offset to \fIpos\fP, an absolute index
-into the list.
-Returns 1 on success, 0 if \fIpos\fP is less than zero or greater
-than the number of history entries.
-
-.Fn1 "HIST_ENTRY *" previous_history "void"
-Back up the current history offset to the previous history entry, and
-return a pointer to that entry.  If there is no previous entry, return
-a \fBNULL\fP pointer.
-
-.Fn1 "HIST_ENTRY *" next_history "void"
-Move the current history offset forward to the next history entry, and
-return the a pointer to that entry.  If there is no next entry, return
-a \fBNULL\fP pointer.
-
-.SS Searching the History List
-
-These functions allow searching of the history list for entries containing
-a specific string.  Searching may be performed both forward and backward
-from the current history position.  The search may be \fIanchored\fP,
-meaning that the string must match at the beginning of the history entry.
-
-.Fn2 int history_search "const char *string" "int direction"
-Search the history for \fIstring\fP, starting at the current history offset.
-If \fIdirection\fP is less than 0, then the search is through
-previous entries, otherwise through subsequent entries.
-If \fIstring\fP is found, then
-the current history index is set to that history entry, and the value
-returned is the offset in the line of the entry where
-\fIstring\fP was found.  Otherwise, nothing is changed, and a -1 is
-returned.
-
-.Fn2 int history_search_prefix "const char *string" "int direction"
-Search the history for \fIstring\fP, starting at the current history
-offset.  The search is anchored: matching lines must begin with
-\fIstring\fP.  If \fIdirection\fP is less than 0, then the search is
-through previous entries, otherwise through subsequent entries.
-If \fIstring\fP is found, then the
-current history index is set to that entry, and the return value is 0. 
-Otherwise, nothing is changed, and a -1 is returned. 
-
-.Fn3 int history_search_pos "const char *string" "int direction" "int pos"
-Search for \fIstring\fP in the history list, starting at \fIpos\fP, an
-absolute index into the list.  If \fIdirection\fP is negative, the search
-proceeds backward from \fIpos\fP, otherwise forward.  Returns the absolute
-index of the history element where \fIstring\fP was found, or -1 otherwise.
-
-.SS Managing the History File
-The History library can read the history from and write it to a file.
-This section documents the functions for managing a history file.
-
-.Fn1 int read_history "const char *filename"
-Add the contents of \fIfilename\fP to the history list, a line at a time.
-If \fIfilename\fP is \fBNULL\fP, then read from \fI~/.history\fP.
-Returns 0 if successful, or \fBerrno\fP if not.
-
-.Fn3 int read_history_range "const char *filename" "int from" "int to"
-Read a range of lines from \fIfilename\fP, adding them to the history list.
-Start reading at line \fIfrom\fP and end at \fIto\fP.
-If \fIfrom\fP is zero, start at the beginning.  If \fIto\fP is less than
-\fIfrom\fP, then read until the end of the file.  If \fIfilename\fP is
-\fBNULL\fP, then read from \fI~/.history\fP.  Returns 0 if successful,
-or \fBerrno\fP if not.
-
-.Fn1 int write_history "const char *filename"
-Write the current history to \fIfilename\fP, overwriting \fIfilename\fP
-if necessary.
-If \fIfilename\fP is \fBNULL\fP, then write the history list to \fI~/.history\fP.
-Returns 0 on success, or \fBerrno\fP on a read or write error.
-
-
-.Fn2 int append_history "int nelements" "const char *filename"
-Append the last \fInelements\fP of the history list to \fIfilename\fP.
-If \fIfilename\fP is \fBNULL\fP, then append to \fI~/.history\fP.
-Returns 0 on success, or \fBerrno\fP on a read or write error.
-
-.Fn2 int history_truncate_file "const char *filename" "int nlines"
-Truncate the history file \fIfilename\fP, leaving only the last
-\fInlines\fP lines.
-If \fIfilename\fP is \fBNULL\fP, then \fI~/.history\fP is truncated.
-Returns 0 on success, or \fBerrno\fP on failure.
-
-.SS History Expansion
-
-These functions implement history expansion.
-
-.Fn2 int history_expand "char *string" "char **output"
-Expand \fIstring\fP, placing the result into \fIoutput\fP, a pointer
-to a string.  Returns:
-.RS
-.PD 0
-.TP
-0
-If no expansions took place (or, if the only change in
-the text was the removal of escape characters preceding the history expansion
-character);
-.TP
-1
-if expansions did take place;
-.TP
--1
-if there was an error in expansion;
-.TP
-2
-if the returned line should be displayed, but not executed,
-as with the \fB:p\fP modifier.
-.PD
-.RE
-If an error ocurred in expansion, then \fIoutput\fP contains a descriptive
-error message.
-
-.Fn3 "char *" get_history_event "const char *string" "int *cindex" "int qchar"
-Returns the text of the history event beginning at \fIstring\fP +
-\fI*cindex\fP.  \fI*cindex\fP is modified to point to after the event
-specifier.  At function entry, \fIcindex\fP points to the index into
-\fIstring\fP where the history event specification begins.  \fIqchar\fP
-is a character that is allowed to end the event specification in addition
-to the ``normal'' terminating characters.
-
-.Fn1 "char **" history_tokenize "const char *string"
-Return an array of tokens parsed out of \fIstring\fP, much as the
-shell might.
-The tokens are split on the characters in the
-\fBhistory_word_delimiters\fP variable,
-and shell quoting conventions are obeyed.
-
-.Fn3 "char *" history_arg_extract "int first" "int last" "const char *string"
-Extract a string segment consisting of the \fIfirst\fP through \fIlast\fP
-arguments present in \fIstring\fP.  Arguments are split using
-\fBhistory_tokenize()\fP.
-
-.SS History Variables
-
-This section describes the externally-visible variables exported by
-the GNU History Library.
-
-.Vb int history_base
-The logical offset of the first entry in the history list.
-
-.Vb int history_length
-The number of entries currently stored in the history list.
-
-.Vb int history_max_entries
-The maximum number of history entries.  This must be changed using
-\fBstifle_history()\fP.
-
-.Vb int history_wite_timestamps
-If non-zero, timestamps are written to the history file, so they can be
-preserved between sessions.  The default value is 0, meaning that
-timestamps are not saved.
-The current timestamp format uses the value of \fIhistory_comment_char\fP
-to delimit timestamp entries in the history file.  If that variable does
-not have a value (the default), timestamps will not be written.
-
-.Vb char history_expansion_char
-The character that introduces a history event.  The default is \fB!\fP.
-Setting this to 0 inhibits history expansion.
-
-.Vb char history_subst_char
-The character that invokes word substitution if found at the start of
-a line.  The default is \fB^\fP.
-
-.Vb char history_comment_char
-During tokenization, if this character is seen as the first character
-of a word, then it and all subsequent characters up to a newline are
-ignored, suppressing history expansion for the remainder of the line.
-This is disabled by default.
-
-.Vb "char *" history_word_delimiters
-The characters that separate tokens for \fBhistory_tokenize()\fP.
-The default value is \fB"\ \et\en()<>;&|"\fP.
-
-.Vb "char *" history_no_expand_chars
-The list of characters which inhibit history expansion if found immediately
-following \fBhistory_expansion_char\fP.  The default is space, tab, newline,
-\fB\er\fP, and \fB=\fP.
-
-.Vb "char *" history_search_delimiter_chars
-The list of additional characters which can delimit a history search
-string, in addition to space, tab, \fI:\fP and \fI?\fP in the case of
-a substring search.  The default is empty.
-
-.Vb int history_quotes_inhibit_expansion
-If non-zero, single-quoted words are not scanned for the history expansion
-character.  The default value is 0.
-
-.Vb "rl_linebuf_func_t *" history_inhibit_expansion_function
-This should be set to the address of a function that takes two arguments:
-a \fBchar *\fP (\fIstring\fP)
-and an \fBint\fP index into that string (\fIi\fP).
-It should return a non-zero value if the history expansion starting at
-\fIstring[i]\fP should not be performed; zero if the expansion should
-be done.
-It is intended for use by applications like \fBbash\fP that use the history
-expansion character for additional purposes.
-By default, this variable is set to \fBNULL\fP.
-.SH FILES
-.PD 0 
-.TP
-.FN ~/.history
-Default filename for reading and writing saved history
-.PD
-.SH "SEE ALSO"
-.PD 0
-.TP
-\fIThe Gnu Readline Library\fP, Brian Fox and Chet Ramey
-.TP
-\fIThe Gnu History Library\fP, Brian Fox and Chet Ramey
-.TP
-\fIbash\fP(1)
-.TP
-\fIreadline\fP(3)
-.PD
-.SH AUTHORS
-Brian Fox, Free Software Foundation
-.br
-bfox@gnu.org
-.PP
-Chet Ramey, Case Western Reserve University
-.br
-chet@ins.CWRU.Edu
-.SH BUG REPORTS
-If you find a bug in the
-.B history
-library, you should report it.  But first, you should
-make sure that it really is a bug, and that it appears in the latest
-version of the
-.B history
-library that you have.
-.PP
-Once you have determined that a bug actually exists, mail a
-bug report to \fIbug\-readline\fP@\fIgnu.org\fP.
-If you have a fix, you are welcome to mail that
-as well!  Suggestions and `philosophical' bug reports may be mailed
-to \fPbug-readline\fP@\fIgnu.org\fP or posted to the Usenet
-newsgroup
-.BR gnu.bash.bug .
-.PP
-Comments and bug reports concerning
-this manual page should be directed to
-.IR chet@ins.CWRU.Edu .
diff --git a/lib/readline/doc/history.aux b/lib/readline/doc/history.aux
deleted file mode 100644 (file)
index 33115f9..0000000
+++ /dev/null
@@ -1,63 +0,0 @@
-@xrdef{Using History Interactively-title}{Using History Interactively}
-@xrdef{Using History Interactively-snt}{Chapter@tie 1}
-@xrdef{History Interaction-title}{History Expansion}
-@xrdef{History Interaction-snt}{Section@tie 1.1}
-@xrdef{Event Designators-title}{Event Designators}
-@xrdef{Event Designators-snt}{Section@tie 1.1.1}
-@xrdef{Word Designators-title}{Word Designators}
-@xrdef{Word Designators-snt}{Section@tie 1.1.2}
-@xrdef{Using History Interactively-pg}{1}
-@xrdef{History Interaction-pg}{1}
-@xrdef{Event Designators-pg}{1}
-@xrdef{Modifiers-title}{Modifiers}
-@xrdef{Modifiers-snt}{Section@tie 1.1.3}
-@xrdef{Word Designators-pg}{2}
-@xrdef{Modifiers-pg}{2}
-@xrdef{Programming with GNU History-title}{Programming with GNU History}
-@xrdef{Programming with GNU History-snt}{Chapter@tie 2}
-@xrdef{Introduction to History-title}{Introduction to History}
-@xrdef{Introduction to History-snt}{Section@tie 2.1}
-@xrdef{History Storage-title}{History Storage}
-@xrdef{History Storage-snt}{Section@tie 2.2}
-@xrdef{Programming with GNU History-pg}{4}
-@xrdef{Introduction to History-pg}{4}
-@xrdef{History Storage-pg}{4}
-@xrdef{History Functions-title}{History Functions}
-@xrdef{History Functions-snt}{Section@tie 2.3}
-@xrdef{Initializing History and State Management-title}{Initializing History and State Management}
-@xrdef{Initializing History and State Management-snt}{Section@tie 2.3.1}
-@xrdef{History List Management-title}{History List Management}
-@xrdef{History List Management-snt}{Section@tie 2.3.2}
-@xrdef{History Functions-pg}{5}
-@xrdef{Initializing History and State Management-pg}{5}
-@xrdef{History List Management-pg}{5}
-@xrdef{Information About the History List-title}{Information About the History List}
-@xrdef{Information About the History List-snt}{Section@tie 2.3.3}
-@xrdef{Moving Around the History List-title}{Moving Around the History List}
-@xrdef{Moving Around the History List-snt}{Section@tie 2.3.4}
-@xrdef{Information About the History List-pg}{6}
-@xrdef{Moving Around the History List-pg}{6}
-@xrdef{Searching the History List-title}{Searching the History List}
-@xrdef{Searching the History List-snt}{Section@tie 2.3.5}
-@xrdef{Managing the History File-title}{Managing the History File}
-@xrdef{Managing the History File-snt}{Section@tie 2.3.6}
-@xrdef{Searching the History List-pg}{7}
-@xrdef{Managing the History File-pg}{7}
-@xrdef{History Expansion-title}{History Expansion}
-@xrdef{History Expansion-snt}{Section@tie 2.3.7}
-@xrdef{History Variables-title}{History Variables}
-@xrdef{History Variables-snt}{Section@tie 2.4}
-@xrdef{History Expansion-pg}{8}
-@xrdef{History Variables-pg}{8}
-@xrdef{History Programming Example-title}{History Programming Example}
-@xrdef{History Programming Example-snt}{Section@tie 2.5}
-@xrdef{History Programming Example-pg}{10}
-@xrdef{GNU Free Documentation License-title}{GNU Free Documentation License}
-@xrdef{GNU Free Documentation License-snt}{Appendix@tie @char65{}}
-@xrdef{GNU Free Documentation License-pg}{12}
-@xrdef{Concept Index-title}{Concept Index}
-@xrdef{Concept Index-snt}{Appendix@tie @char66{}}
-@xrdef{Concept Index-pg}{20}
-@xrdef{Function and Variable Index-title}{Function and Variable Index}
-@xrdef{Function and Variable Index-snt}{Appendix@tie @char67{}}
-@xrdef{Function and Variable Index-pg}{21}
diff --git a/lib/readline/doc/history.bt b/lib/readline/doc/history.bt
deleted file mode 100644 (file)
index e69de29..0000000
diff --git a/lib/readline/doc/history.cp b/lib/readline/doc/history.cp
deleted file mode 100644 (file)
index 7a2fe80..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-\entry{history expansion}{1}{history expansion}
-\entry{event designators}{1}{event designators}
-\entry{history events}{1}{history events}
-\entry{History Searching}{7}{History Searching}
-\entry{anchored search}{7}{anchored search}
diff --git a/lib/readline/doc/history.cps b/lib/readline/doc/history.cps
deleted file mode 100644 (file)
index 20db3f6..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-\initial {A}
-\entry {anchored search}{7}
-\initial {E}
-\entry {event designators}{1}
-\initial {H}
-\entry {history events}{1}
-\entry {history expansion}{1}
-\entry {History Searching}{7}
diff --git a/lib/readline/doc/history.dvi b/lib/readline/doc/history.dvi
deleted file mode 100644 (file)
index 1e3fd8b..0000000
Binary files a/lib/readline/doc/history.dvi and /dev/null differ
diff --git a/lib/readline/doc/history.fn b/lib/readline/doc/history.fn
deleted file mode 100644 (file)
index e69de29..0000000
diff --git a/lib/readline/doc/history.html b/lib/readline/doc/history.html
deleted file mode 100644 (file)
index 5bdbb1b..0000000
+++ /dev/null
@@ -1,2297 +0,0 @@
-<HTML>
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
-<!-- Created on February, 8  2011 by texi2html 1.64 -->
-<!-- 
-Written by: Lionel Cons <Lionel.Cons@cern.ch> (original author)
-            Karl Berry  <karl@freefriends.org>
-            Olaf Bachmann <obachman@mathematik.uni-kl.de>
-            and many others.
-Maintained by: Olaf Bachmann <obachman@mathematik.uni-kl.de>
-Send bugs and suggestions to <texi2html@mathematik.uni-kl.de>
--->
-<HEAD>
-<TITLE>GNU History Library: </TITLE>
-
-<META NAME="description" CONTENT="GNU History Library: ">
-<META NAME="keywords" CONTENT="GNU History Library: ">
-<META NAME="resource-type" CONTENT="document">
-<META NAME="distribution" CONTENT="global">
-<META NAME="Generator" CONTENT="texi2html 1.64">
-
-</HEAD>
-
-<BODY LANG="" BGCOLOR="#FFFFFF" TEXT="#000000" LINK="#0000FF" VLINK="#800080" ALINK="#FF0000">
-
-<A NAME="SEC_Top"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC21">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H1>GNU History Library</H1></P><P>
-
-This document describes the GNU History library, a programming tool that
-provides a consistent user interface for recalling lines of previously
-typed input.
-</P><P>
-
-<BLOCKQUOTE><TABLE BORDER=0 CELLSPACING=0> 
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="history.html#SEC1">1. Using History Interactively</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">GNU History User's Manual.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="history.html#SEC6">2. Programming with GNU History</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">GNU History Programmer's Manual.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="history.html#SEC19">A. GNU Free Documentation License</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">License for copying this manual.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="history.html#SEC21">B. Concept Index</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Index of concepts described in this manual.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="history.html#SEC22">C. Function and Variable Index</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Index of externally visible functions
-                                 and variables.</TD></TR>
-</TABLE></BLOCKQUOTE>
-<P>
-
-<HR SIZE=1>
-<A NAME="SEC1"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_Top"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC2"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[ &lt;&lt; ]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_Top"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC6"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC21">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<A NAME="Using History Interactively"></A>
-<H1> 1. Using History Interactively </H1>
-<!--docid::SEC1::-->
-<P>
-
-This chapter describes how to use the GNU History Library interactively,
-from a user's standpoint.  It should be considered a user's guide.  For
-information on using the GNU History Library in your own programs,
-see section <A HREF="history.html#SEC6">2. Programming with GNU History</A>.
-</P><P>
-
-<BLOCKQUOTE><TABLE BORDER=0 CELLSPACING=0> 
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="history.html#SEC2">1.1 History Expansion</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">What it feels like using History as a user.</TD></TR>
-</TABLE></BLOCKQUOTE>
-<P>
-
-<A NAME="History Interaction"></A>
-<HR SIZE="6">
-<A NAME="SEC2"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC1"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC3"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[ &lt;&lt; ]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC1"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC6"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC21">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H2> 1.1 History Expansion </H2>
-<!--docid::SEC2::-->
-<P>
-
-The History library provides a history expansion feature that is similar
-to the history expansion provided by <CODE>csh</CODE>.  This section
-describes the syntax used to manipulate the history information.
-</P><P>
-
-History expansions introduce words from the history list into
-the input stream, making it easy to repeat commands, insert the
-arguments to a previous command into the current input line, or
-fix errors in previous commands quickly.
-</P><P>
-
-History expansion takes place in two parts.  The first is to determine
-which line from the history list should be used during substitution.
-The second is to select portions of that line for inclusion into the
-current one.  The line selected from the history is called the
-<EM>event</EM>, and the portions of that line that are acted upon are
-called <EM>words</EM>.  Various <EM>modifiers</EM> are available to manipulate
-the selected words.  The line is broken into words in the same fashion
-that Bash does, so that several words
-surrounded by quotes are considered one word.
-History expansions are introduced by the appearance of the
-history expansion character, which is <SAMP>`!'</SAMP> by default.
-</P><P>
-
-<BLOCKQUOTE><TABLE BORDER=0 CELLSPACING=0> 
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="history.html#SEC3">1.1.1 Event Designators</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">How to specify which history line to use.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="history.html#SEC4">1.1.2 Word Designators</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Specifying which words are of interest.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="history.html#SEC5">1.1.3 Modifiers</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Modifying the results of substitution.</TD></TR>
-</TABLE></BLOCKQUOTE>
-<P>
-
-<A NAME="Event Designators"></A>
-<HR SIZE="6">
-<A NAME="SEC3"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC2"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC4"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[ &lt;&lt; ]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC2"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC6"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC21">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H3> 1.1.1 Event Designators </H3>
-<!--docid::SEC3::-->
-<P>
-
-An event designator is a reference to a command line entry in the
-history list.
-Unless the reference is absolute, events are relative to the current
-position in the history list.
-<A NAME="IDX1"></A>
-</P><P>
-
-<DL COMPACT>
-
-<DT><CODE>!</CODE>
-<DD>Start a history substitution, except when followed by a space, tab,
-the end of the line, or <SAMP>`='</SAMP>.
-<P>
-
-<DT><CODE>!<VAR>n</VAR></CODE>
-<DD>Refer to command line <VAR>n</VAR>.
-<P>
-
-<DT><CODE>!-<VAR>n</VAR></CODE>
-<DD>Refer to the command <VAR>n</VAR> lines back.
-<P>
-
-<DT><CODE>!!</CODE>
-<DD>Refer to the previous command.  This is a synonym for <SAMP>`!-1'</SAMP>.
-<P>
-
-<DT><CODE>!<VAR>string</VAR></CODE>
-<DD>Refer to the most recent command
-preceding the current position in the history list
-starting with <VAR>string</VAR>.
-<P>
-
-<DT><CODE>!?<VAR>string</VAR>[?]</CODE>
-<DD>Refer to the most recent command
-preceding the current position in the history list
-containing <VAR>string</VAR>.
-The trailing
-<SAMP>`?'</SAMP> may be omitted if the <VAR>string</VAR> is followed immediately by
-a newline.
-<P>
-
-<DT><CODE>^<VAR>string1</VAR>^<VAR>string2</VAR>^</CODE>
-<DD>Quick Substitution.  Repeat the last command, replacing <VAR>string1</VAR>
-with <VAR>string2</VAR>.  Equivalent to
-<CODE>!!:s/<VAR>string1</VAR>/<VAR>string2</VAR>/</CODE>.
-<P>
-
-<DT><CODE>!#</CODE>
-<DD>The entire command line typed so far.
-<P>
-
-</DL>
-<P>
-
-<A NAME="Word Designators"></A>
-<HR SIZE="6">
-<A NAME="SEC4"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC3"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC5"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC5"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC2"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC6"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC21">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H3> 1.1.2 Word Designators </H3>
-<!--docid::SEC4::-->
-<P>
-
-Word designators are used to select desired words from the event.
-A <SAMP>`:'</SAMP> separates the event specification from the word designator.  It
-may be omitted if the word designator begins with a <SAMP>`^'</SAMP>, <SAMP>`$'</SAMP>,
-<SAMP>`*'</SAMP>, <SAMP>`-'</SAMP>, or <SAMP>`%'</SAMP>.  Words are numbered from the beginning
-of the line, with the first word being denoted by 0 (zero).  Words are
-inserted into the current line separated by single spaces.
-</P><P>
-
-For example,
-</P><P>
-
-<DL COMPACT>
-<DT><CODE>!!</CODE>
-<DD>designates the preceding command.  When you type this, the preceding
-command is repeated in toto.
-<P>
-
-<DT><CODE>!!:$</CODE>
-<DD>designates the last argument of the preceding command.  This may be
-shortened to <CODE>!$</CODE>.
-<P>
-
-<DT><CODE>!fi:2</CODE>
-<DD>designates the second argument of the most recent command starting with
-the letters <CODE>fi</CODE>.
-</DL>
-<P>
-
-Here are the word designators:
-<DL COMPACT>
-
-<DT><CODE>0 (zero)</CODE>
-<DD>The <CODE>0</CODE>th word.  For many applications, this is the command word.
-<P>
-
-<DT><CODE><VAR>n</VAR></CODE>
-<DD>The <VAR>n</VAR>th word.
-<P>
-
-<DT><CODE>^</CODE>
-<DD>The first argument; that is, word 1.
-<P>
-
-<DT><CODE>$</CODE>
-<DD>The last argument.
-<P>
-
-<DT><CODE>%</CODE>
-<DD>The word matched by the most recent <SAMP>`?<VAR>string</VAR>?'</SAMP> search.
-<P>
-
-<DT><CODE><VAR>x</VAR>-<VAR>y</VAR></CODE>
-<DD>A range of words; <SAMP>`-<VAR>y</VAR>'</SAMP> abbreviates <SAMP>`0-<VAR>y</VAR>'</SAMP>.
-<P>
-
-<DT><CODE>*</CODE>
-<DD>All of the words, except the <CODE>0</CODE>th.  This is a synonym for <SAMP>`1-$'</SAMP>.
-It is not an error to use <SAMP>`*'</SAMP> if there is just one word in the event;
-the empty string is returned in that case.
-<P>
-
-<DT><CODE><VAR>x</VAR>*</CODE>
-<DD>Abbreviates <SAMP>`<VAR>x</VAR>-$'</SAMP>
-<P>
-
-<DT><CODE><VAR>x</VAR>-</CODE>
-<DD>Abbreviates <SAMP>`<VAR>x</VAR>-$'</SAMP> like <SAMP>`<VAR>x</VAR>*'</SAMP>, but omits the last word.
-<P>
-
-</DL>
-<P>
-
-If a word designator is supplied without an event specification, the
-previous command is used as the event.
-</P><P>
-
-<A NAME="Modifiers"></A>
-<HR SIZE="6">
-<A NAME="SEC5"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC4"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC6"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[ &lt;&lt; ]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC2"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC6"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC21">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H3> 1.1.3 Modifiers </H3>
-<!--docid::SEC5::-->
-<P>
-
-After the optional word designator, you can add a sequence of one or more
-of the following modifiers, each preceded by a <SAMP>`:'</SAMP>.
-</P><P>
-
-<DL COMPACT>
-
-<DT><CODE>h</CODE>
-<DD>Remove a trailing pathname component, leaving only the head.
-<P>
-
-<DT><CODE>t</CODE>
-<DD>Remove all leading pathname components, leaving the tail.
-<P>
-
-<DT><CODE>r</CODE>
-<DD>Remove a trailing suffix of the form <SAMP>`.<VAR>suffix</VAR>'</SAMP>, leaving
-the basename.
-<P>
-
-<DT><CODE>e</CODE>
-<DD>Remove all but the trailing suffix.
-<P>
-
-<DT><CODE>p</CODE>
-<DD>Print the new command but do not execute it.
-<P>
-
-<DT><CODE>s/<VAR>old</VAR>/<VAR>new</VAR>/</CODE>
-<DD>Substitute <VAR>new</VAR> for the first occurrence of <VAR>old</VAR> in the
-event line.  Any delimiter may be used in place of <SAMP>`/'</SAMP>.
-The delimiter may be quoted in <VAR>old</VAR> and <VAR>new</VAR>
-with a single backslash.  If <SAMP>`&#38;'</SAMP> appears in <VAR>new</VAR>,
-it is replaced by <VAR>old</VAR>.  A single backslash will quote
-the <SAMP>`&#38;'</SAMP>.  The final delimiter is optional if it is the last
-character on the input line.
-<P>
-
-<DT><CODE>&#38;</CODE>
-<DD>Repeat the previous substitution.
-<P>
-
-<DT><CODE>g</CODE>
-<DD><DT><CODE>a</CODE>
-<DD>Cause changes to be applied over the entire event line.  Used in
-conjunction with <SAMP>`s'</SAMP>, as in <CODE>gs/<VAR>old</VAR>/<VAR>new</VAR>/</CODE>,
-or with <SAMP>`&#38;'</SAMP>.
-<P>
-
-<DT><CODE>G</CODE>
-<DD>Apply the following <SAMP>`s'</SAMP> modifier once to each word in the event.
-<P>
-
-</DL>
-<P>
-
-<A NAME="Programming with GNU History"></A>
-<HR SIZE="6">
-<A NAME="SEC6"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC5"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC7"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[ &lt;&lt; ]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_Top"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC19"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC21">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H1> 2. Programming with GNU History </H1>
-<!--docid::SEC6::-->
-<P>
-
-This chapter describes how to interface programs that you write
-with the GNU History Library.
-It should be considered a technical guide.
-For information on the interactive use of GNU History, see section <A HREF="history.html#SEC1">1. Using History Interactively</A>.
-</P><P>
-
-<BLOCKQUOTE><TABLE BORDER=0 CELLSPACING=0> 
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="history.html#SEC7">2.1 Introduction to History</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">What is the GNU History library for?</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="history.html#SEC8">2.2 History Storage</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">How information is stored.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="history.html#SEC9">2.3 History Functions</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Functions that you can use.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="history.html#SEC17">2.4 History Variables</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Variables that control behaviour.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="history.html#SEC18">2.5 History Programming Example</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Example of using the GNU History Library.</TD></TR>
-</TABLE></BLOCKQUOTE>
-<P>
-
-<A NAME="Introduction to History"></A>
-<HR SIZE="6">
-<A NAME="SEC7"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC6"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC8"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[ &lt;&lt; ]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC6"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC19"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC21">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H2> 2.1 Introduction to History </H2>
-<!--docid::SEC7::-->
-<P>
-
-Many programs read input from the user a line at a time.  The GNU
-History library is able to keep track of those lines, associate arbitrary
-data with each line, and utilize information from previous lines in
-composing new ones. 
-</P><P>
-
-The programmer using the History library has available functions
-for remembering lines on a history list, associating arbitrary data
-with a line, removing lines from the list, searching through the list
-for a line containing an arbitrary text string, and referencing any line
-in the list directly.  In addition, a history <EM>expansion</EM> function
-is available which provides for a consistent user interface across
-different programs.
-</P><P>
-
-The user using programs written with the History library has the
-benefit of a consistent user interface with a set of well-known
-commands for manipulating the text of previous lines and using that text
-in new commands.  The basic history manipulation commands are similar to
-the history substitution provided by <CODE>csh</CODE>.
-</P><P>
-
-If the programmer desires, he can use the Readline library, which
-includes some history manipulation by default, and has the added
-advantage of command line editing.
-</P><P>
-
-Before declaring any functions using any functionality the History
-library provides in other code, an application writer should include
-the file <CODE>&#60;readline/history.h&#62;</CODE> in any file that uses the
-History library's features.  It supplies extern declarations for all
-of the library's public functions and variables, and declares all of
-the public data structures.
-</P><P>
-
-<A NAME="History Storage"></A>
-<HR SIZE="6">
-<A NAME="SEC8"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC7"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC9"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC9"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC6"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC19"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC21">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H2> 2.2 History Storage </H2>
-<!--docid::SEC8::-->
-<P>
-
-The history list is an array of history entries.  A history entry is
-declared as follows:
-</P><P>
-
-<TABLE><tr><td>&nbsp;</td><td class=example><pre>typedef void *histdata_t;
-
-typedef struct _hist_entry {
-  char *line;
-  char *timestamp;
-  histdata_t data;
-} HIST_ENTRY;
-</pre></td></tr></table></P><P>
-
-The history list itself might therefore be declared as
-</P><P>
-
-<TABLE><tr><td>&nbsp;</td><td class=example><pre>HIST_ENTRY **the_history_list;
-</pre></td></tr></table></P><P>
-
-The state of the History library is encapsulated into a single structure:
-</P><P>
-
-<TABLE><tr><td>&nbsp;</td><td class=example><pre>/*
- * A structure used to pass around the current state of the history.
- */
-typedef struct _hist_state {
-  HIST_ENTRY **entries; /* Pointer to the entries themselves. */
-  int offset;           /* The location pointer within this array. */
-  int length;           /* Number of elements within this array. */
-  int size;             /* Number of slots allocated to this array. */
-  int flags;
-} HISTORY_STATE;
-</pre></td></tr></table></P><P>
-
-If the flags member includes <CODE>HS_STIFLED</CODE>, the history has been
-stifled.
-</P><P>
-
-<A NAME="History Functions"></A>
-<HR SIZE="6">
-<A NAME="SEC9"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC8"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC10"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC17"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC6"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC17"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC21">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H2> 2.3 History Functions </H2>
-<!--docid::SEC9::-->
-<P>
-
-This section describes the calling sequence for the various functions
-exported by the GNU History library.
-</P><P>
-
-<BLOCKQUOTE><TABLE BORDER=0 CELLSPACING=0> 
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="history.html#SEC10">2.3.1 Initializing History and State Management</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Functions to call when you
-                                               want to use history in a
-                                               program.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="history.html#SEC11">2.3.2 History List Management</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Functions used to manage the list
-                                       of history entries.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="history.html#SEC12">2.3.3 Information About the History List</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Functions returning information about
-                                       the history list.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="history.html#SEC13">2.3.4 Moving Around the History List</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Functions used to change the position
-                                       in the history list.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="history.html#SEC14">2.3.5 Searching the History List</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Functions to search the history list
-                                       for entries containing a string.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="history.html#SEC15">2.3.6 Managing the History File</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Functions that read and write a file
-                                       containing the history list.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="history.html#SEC16">2.3.7 History Expansion</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Functions to perform csh-like history
-                                       expansion.</TD></TR>
-</TABLE></BLOCKQUOTE>
-<P>
-
-<A NAME="Initializing History and State Management"></A>
-<HR SIZE="6">
-<A NAME="SEC10"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC9"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC11"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC17"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC9"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC17"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC21">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H3> 2.3.1 Initializing History and State Management </H3>
-<!--docid::SEC10::-->
-<P>
-
-This section describes functions used to initialize and manage
-the state of the History library when you want to use the history
-functions in your program.
-</P><P>
-
-<A NAME="IDX2"></A>
-<DL>
-<DT><U>Function:</U> void <B>using_history</B> <I>(void)</I>
-<DD>Begin a session in which the history functions might be used.  This
-initializes the interactive variables.
-</DL>
-</P><P>
-
-<A NAME="IDX3"></A>
-<DL>
-<DT><U>Function:</U> HISTORY_STATE * <B>history_get_history_state</B> <I>(void)</I>
-<DD>Return a structure describing the current state of the input history.
-</DL>
-</P><P>
-
-<A NAME="IDX4"></A>
-<DL>
-<DT><U>Function:</U> void <B>history_set_history_state</B> <I>(HISTORY_STATE *state)</I>
-<DD>Set the state of the history list according to <VAR>state</VAR>.
-</DL>
-</P><P>
-
-<A NAME="History List Management"></A>
-<HR SIZE="6">
-<A NAME="SEC11"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC10"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC12"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC12"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC9"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC17"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC21">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H3> 2.3.2 History List Management </H3>
-<!--docid::SEC11::-->
-<P>
-
-These functions manage individual entries on the history list, or set
-parameters managing the list itself.
-</P><P>
-
-<A NAME="IDX5"></A>
-<DL>
-<DT><U>Function:</U> void <B>add_history</B> <I>(const char *string)</I>
-<DD>Place <VAR>string</VAR> at the end of the history list.  The associated data
-field (if any) is set to <CODE>NULL</CODE>.
-</DL>
-</P><P>
-
-<A NAME="IDX6"></A>
-<DL>
-<DT><U>Function:</U> void <B>add_history_time</B> <I>(const char *string)</I>
-<DD>Change the time stamp associated with the most recent history entry to
-<VAR>string</VAR>.
-</DL>
-</P><P>
-
-<A NAME="IDX7"></A>
-<DL>
-<DT><U>Function:</U> HIST_ENTRY * <B>remove_history</B> <I>(int which)</I>
-<DD>Remove history entry at offset <VAR>which</VAR> from the history.  The
-removed element is returned so you can free the line, data,
-and containing structure.
-</DL>
-</P><P>
-
-<A NAME="IDX8"></A>
-<DL>
-<DT><U>Function:</U> histdata_t <B>free_history_entry</B> <I>(HIST_ENTRY *histent)</I>
-<DD>Free the history entry <VAR>histent</VAR> and any history library private
-data associated with it.  Returns the application-specific data
-so the caller can dispose of it.
-</DL>
-</P><P>
-
-<A NAME="IDX9"></A>
-<DL>
-<DT><U>Function:</U> HIST_ENTRY * <B>replace_history_entry</B> <I>(int which, const char *line, histdata_t data)</I>
-<DD>Make the history entry at offset <VAR>which</VAR> have <VAR>line</VAR> and <VAR>data</VAR>.
-This returns the old entry so the caller can dispose of any
-application-specific data.  In the case
-of an invalid <VAR>which</VAR>, a <CODE>NULL</CODE> pointer is returned.
-</DL>
-</P><P>
-
-<A NAME="IDX10"></A>
-<DL>
-<DT><U>Function:</U> void <B>clear_history</B> <I>(void)</I>
-<DD>Clear the history list by deleting all the entries.
-</DL>
-</P><P>
-
-<A NAME="IDX11"></A>
-<DL>
-<DT><U>Function:</U> void <B>stifle_history</B> <I>(int max)</I>
-<DD>Stifle the history list, remembering only the last <VAR>max</VAR> entries.
-</DL>
-</P><P>
-
-<A NAME="IDX12"></A>
-<DL>
-<DT><U>Function:</U> int <B>unstifle_history</B> <I>(void)</I>
-<DD>Stop stifling the history.  This returns the previously-set
-maximum number of history entries (as set by <CODE>stifle_history()</CODE>).
-The value is positive if the history was
-stifled, negative if it wasn't.
-</DL>
-</P><P>
-
-<A NAME="IDX13"></A>
-<DL>
-<DT><U>Function:</U> int <B>history_is_stifled</B> <I>(void)</I>
-<DD>Returns non-zero if the history is stifled, zero if it is not.
-</DL>
-</P><P>
-
-<A NAME="Information About the History List"></A>
-<HR SIZE="6">
-<A NAME="SEC12"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC11"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC13"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC13"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC9"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC17"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC21">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H3> 2.3.3 Information About the History List </H3>
-<!--docid::SEC12::-->
-<P>
-
-These functions return information about the entire history list or
-individual list entries.
-</P><P>
-
-<A NAME="IDX14"></A>
-<DL>
-<DT><U>Function:</U> HIST_ENTRY ** <B>history_list</B> <I>(void)</I>
-<DD>Return a <CODE>NULL</CODE> terminated array of <CODE>HIST_ENTRY *</CODE> which is the
-current input history.  Element 0 of this list is the beginning of time.
-If there is no history, return <CODE>NULL</CODE>.
-</DL>
-</P><P>
-
-<A NAME="IDX15"></A>
-<DL>
-<DT><U>Function:</U> int <B>where_history</B> <I>(void)</I>
-<DD>Returns the offset of the current history element.
-</DL>
-</P><P>
-
-<A NAME="IDX16"></A>
-<DL>
-<DT><U>Function:</U> HIST_ENTRY * <B>current_history</B> <I>(void)</I>
-<DD>Return the history entry at the current position, as determined by
-<CODE>where_history()</CODE>.  If there is no entry there, return a <CODE>NULL</CODE>
-pointer.
-</DL>
-</P><P>
-
-<A NAME="IDX17"></A>
-<DL>
-<DT><U>Function:</U> HIST_ENTRY * <B>history_get</B> <I>(int offset)</I>
-<DD>Return the history entry at position <VAR>offset</VAR>, starting from
-<CODE>history_base</CODE> (see section <A HREF="history.html#SEC17">2.4 History Variables</A>).
-If there is no entry there, or if <VAR>offset</VAR>
-is greater than the history length, return a <CODE>NULL</CODE> pointer.
-</DL>
-</P><P>
-
-<A NAME="IDX18"></A>
-<DL>
-<DT><U>Function:</U> time_t <B>history_get_time</B> <I>(HIST_ENTRY *entry)</I>
-<DD>Return the time stamp associated with the history entry <VAR>entry</VAR>.
-</DL>
-</P><P>
-
-<A NAME="IDX19"></A>
-<DL>
-<DT><U>Function:</U> int <B>history_total_bytes</B> <I>(void)</I>
-<DD>Return the number of bytes that the primary history entries are using.
-This function returns the sum of the lengths of all the lines in the
-history.
-</DL>
-</P><P>
-
-<A NAME="Moving Around the History List"></A>
-<HR SIZE="6">
-<A NAME="SEC13"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC12"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC14"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC14"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC9"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC17"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC21">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H3> 2.3.4 Moving Around the History List </H3>
-<!--docid::SEC13::-->
-<P>
-
-These functions allow the current index into the history list to be
-set or changed.
-</P><P>
-
-<A NAME="IDX20"></A>
-<DL>
-<DT><U>Function:</U> int <B>history_set_pos</B> <I>(int pos)</I>
-<DD>Set the current history offset to <VAR>pos</VAR>, an absolute index
-into the list.
-Returns 1 on success, 0 if <VAR>pos</VAR> is less than zero or greater
-than the number of history entries.
-</DL>
-</P><P>
-
-<A NAME="IDX21"></A>
-<DL>
-<DT><U>Function:</U> HIST_ENTRY * <B>previous_history</B> <I>(void)</I>
-<DD>Back up the current history offset to the previous history entry, and
-return a pointer to that entry.  If there is no previous entry, return
-a <CODE>NULL</CODE> pointer.
-</DL>
-</P><P>
-
-<A NAME="IDX22"></A>
-<DL>
-<DT><U>Function:</U> HIST_ENTRY * <B>next_history</B> <I>(void)</I>
-<DD>Move the current history offset forward to the next history entry, and
-return the a pointer to that entry.  If there is no next entry, return
-a <CODE>NULL</CODE> pointer.
-</DL>
-</P><P>
-
-<A NAME="Searching the History List"></A>
-<HR SIZE="6">
-<A NAME="SEC14"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC13"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC15"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC15"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC9"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC17"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC21">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H3> 2.3.5 Searching the History List </H3>
-<!--docid::SEC14::-->
-<P>
-
-These functions allow searching of the history list for entries containing
-a specific string.  Searching may be performed both forward and backward
-from the current history position.  The search may be <EM>anchored</EM>,
-meaning that the string must match at the beginning of the history entry.
-<A NAME="IDX23"></A>
-</P><P>
-
-<A NAME="IDX24"></A>
-<DL>
-<DT><U>Function:</U> int <B>history_search</B> <I>(const char *string, int direction)</I>
-<DD>Search the history for <VAR>string</VAR>, starting at the current history offset.
-If <VAR>direction</VAR> is less than 0, then the search is through
-previous entries, otherwise through subsequent entries.
-If <VAR>string</VAR> is found, then
-the current history index is set to that history entry, and the value
-returned is the offset in the line of the entry where
-<VAR>string</VAR> was found.  Otherwise, nothing is changed, and a -1 is
-returned.
-</DL>
-</P><P>
-
-<A NAME="IDX25"></A>
-<DL>
-<DT><U>Function:</U> int <B>history_search_prefix</B> <I>(const char *string, int direction)</I>
-<DD>Search the history for <VAR>string</VAR>, starting at the current history
-offset.  The search is anchored: matching lines must begin with
-<VAR>string</VAR>.  If <VAR>direction</VAR> is less than 0, then the search is
-through previous entries, otherwise through subsequent entries.
-If <VAR>string</VAR> is found, then the
-current history index is set to that entry, and the return value is 0. 
-Otherwise, nothing is changed, and a -1 is returned. 
-</DL>
-</P><P>
-
-<A NAME="IDX26"></A>
-<DL>
-<DT><U>Function:</U> int <B>history_search_pos</B> <I>(const char *string, int direction, int pos)</I>
-<DD>Search for <VAR>string</VAR> in the history list, starting at <VAR>pos</VAR>, an
-absolute index into the list.  If <VAR>direction</VAR> is negative, the search
-proceeds backward from <VAR>pos</VAR>, otherwise forward.  Returns the absolute
-index of the history element where <VAR>string</VAR> was found, or -1 otherwise.
-</DL>
-</P><P>
-
-<A NAME="Managing the History File"></A>
-<HR SIZE="6">
-<A NAME="SEC15"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC14"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC16"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC16"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC9"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC17"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC21">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H3> 2.3.6 Managing the History File </H3>
-<!--docid::SEC15::-->
-<P>
-
-The History library can read the history from and write it to a file.
-This section documents the functions for managing a history file.
-</P><P>
-
-<A NAME="IDX27"></A>
-<DL>
-<DT><U>Function:</U> int <B>read_history</B> <I>(const char *filename)</I>
-<DD>Add the contents of <VAR>filename</VAR> to the history list, a line at a time.
-If <VAR>filename</VAR> is <CODE>NULL</CODE>, then read from <TT>`~/.history'</TT>.
-Returns 0 if successful, or <CODE>errno</CODE> if not.
-</DL>
-</P><P>
-
-<A NAME="IDX28"></A>
-<DL>
-<DT><U>Function:</U> int <B>read_history_range</B> <I>(const char *filename, int from, int to)</I>
-<DD>Read a range of lines from <VAR>filename</VAR>, adding them to the history list.
-Start reading at line <VAR>from</VAR> and end at <VAR>to</VAR>.
-If <VAR>from</VAR> is zero, start at the beginning.  If <VAR>to</VAR> is less than
-<VAR>from</VAR>, then read until the end of the file.  If <VAR>filename</VAR> is
-<CODE>NULL</CODE>, then read from <TT>`~/.history'</TT>.  Returns 0 if successful,
-or <CODE>errno</CODE> if not.
-</DL>
-</P><P>
-
-<A NAME="IDX29"></A>
-<DL>
-<DT><U>Function:</U> int <B>write_history</B> <I>(const char *filename)</I>
-<DD>Write the current history to <VAR>filename</VAR>, overwriting <VAR>filename</VAR>
-if necessary.
-If <VAR>filename</VAR> is <CODE>NULL</CODE>, then write the history list to
-<TT>`~/.history'</TT>.
-Returns 0 on success, or <CODE>errno</CODE> on a read or write error.
-</DL>
-</P><P>
-
-<A NAME="IDX30"></A>
-<DL>
-<DT><U>Function:</U> int <B>append_history</B> <I>(int nelements, const char *filename)</I>
-<DD>Append the last <VAR>nelements</VAR> of the history list to <VAR>filename</VAR>.
-If <VAR>filename</VAR> is <CODE>NULL</CODE>, then append to <TT>`~/.history'</TT>.
-Returns 0 on success, or <CODE>errno</CODE> on a read or write error.
-</DL>
-</P><P>
-
-<A NAME="IDX31"></A>
-<DL>
-<DT><U>Function:</U> int <B>history_truncate_file</B> <I>(const char *filename, int nlines)</I>
-<DD>Truncate the history file <VAR>filename</VAR>, leaving only the last
-<VAR>nlines</VAR> lines.
-If <VAR>filename</VAR> is <CODE>NULL</CODE>, then <TT>`~/.history'</TT> is truncated.
-Returns 0 on success, or <CODE>errno</CODE> on failure.
-</DL>
-</P><P>
-
-<A NAME="History Expansion"></A>
-<HR SIZE="6">
-<A NAME="SEC16"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC15"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC17"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC17"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC9"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC17"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC21">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H3> 2.3.7 History Expansion </H3>
-<!--docid::SEC16::-->
-<P>
-
-These functions implement history expansion.
-</P><P>
-
-<A NAME="IDX32"></A>
-<DL>
-<DT><U>Function:</U> int <B>history_expand</B> <I>(char *string, char **output)</I>
-<DD>Expand <VAR>string</VAR>, placing the result into <VAR>output</VAR>, a pointer
-to a string (see section <A HREF="history.html#SEC2">1.1 History Expansion</A>).  Returns:
-<DL COMPACT>
-<DT><CODE>0</CODE>
-<DD>If no expansions took place (or, if the only change in
-the text was the removal of escape characters preceding the history expansion
-character);
-<DT><CODE>1</CODE>
-<DD>if expansions did take place;
-<DT><CODE>-1</CODE>
-<DD>if there was an error in expansion;
-<DT><CODE>2</CODE>
-<DD>if the returned line should be displayed, but not executed,
-as with the <CODE>:p</CODE> modifier (see section <A HREF="history.html#SEC5">1.1.3 Modifiers</A>).
-</DL>
-<P>
-
-If an error ocurred in expansion, then <VAR>output</VAR> contains a descriptive
-error message.
-</DL>
-</P><P>
-
-<A NAME="IDX33"></A>
-<DL>
-<DT><U>Function:</U> char * <B>get_history_event</B> <I>(const char *string, int *cindex, int qchar)</I>
-<DD>Returns the text of the history event beginning at <VAR>string</VAR> +
-<VAR>*cindex</VAR>.  <VAR>*cindex</VAR> is modified to point to after the event
-specifier.  At function entry, <VAR>cindex</VAR> points to the index into
-<VAR>string</VAR> where the history event specification begins.  <VAR>qchar</VAR>
-is a character that is allowed to end the event specification in addition
-to the "normal" terminating characters.
-</DL>
-</P><P>
-
-<A NAME="IDX34"></A>
-<DL>
-<DT><U>Function:</U> char ** <B>history_tokenize</B> <I>(const char *string)</I>
-<DD>Return an array of tokens parsed out of <VAR>string</VAR>, much as the
-shell might.  The tokens are split on the characters in the
-<VAR>history_word_delimiters</VAR> variable,
-and shell quoting conventions are obeyed.
-</DL>
-</P><P>
-
-<A NAME="IDX35"></A>
-<DL>
-<DT><U>Function:</U> char * <B>history_arg_extract</B> <I>(int first, int last, const char *string)</I>
-<DD>Extract a string segment consisting of the <VAR>first</VAR> through <VAR>last</VAR>
-arguments present in <VAR>string</VAR>.  Arguments are split using
-<CODE>history_tokenize</CODE>.
-</DL>
-</P><P>
-
-<A NAME="History Variables"></A>
-<HR SIZE="6">
-<A NAME="SEC17"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC16"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC18"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC18"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC6"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC19"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC21">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H2> 2.4 History Variables </H2>
-<!--docid::SEC17::-->
-<P>
-
-This section describes the externally-visible variables exported by
-the GNU History Library.
-</P><P>
-
-<A NAME="IDX36"></A>
-<DL>
-<DT><U>Variable:</U> int <B>history_base</B>
-<DD>The logical offset of the first entry in the history list.
-</DL>
-</P><P>
-
-<A NAME="IDX37"></A>
-<DL>
-<DT><U>Variable:</U> int <B>history_length</B>
-<DD>The number of entries currently stored in the history list.
-</DL>
-</P><P>
-
-<A NAME="IDX38"></A>
-<DL>
-<DT><U>Variable:</U> int <B>history_max_entries</B>
-<DD>The maximum number of history entries.  This must be changed using
-<CODE>stifle_history()</CODE>.
-</DL>
-</P><P>
-
-<A NAME="IDX39"></A>
-<DL>
-<DT><U>Variable:</U> int <B>history_write_timestamps</B>
-<DD>If non-zero, timestamps are written to the history file, so they can be
-preserved between sessions.  The default value is 0, meaning that
-timestamps are not saved.
-</P><P>
-
-The current timestamp format uses the value of <VAR>history_comment_char</VAR>
-to delimit timestamp entries in the history file.  If that variable does
-not have a value (the default), timestamps will not be written.
-</DL>
-</P><P>
-
-<A NAME="IDX40"></A>
-<DL>
-<DT><U>Variable:</U> char <B>history_expansion_char</B>
-<DD>The character that introduces a history event.  The default is <SAMP>`!'</SAMP>.
-Setting this to 0 inhibits history expansion.
-</DL>
-</P><P>
-
-<A NAME="IDX41"></A>
-<DL>
-<DT><U>Variable:</U> char <B>history_subst_char</B>
-<DD>The character that invokes word substitution if found at the start of
-a line.  The default is <SAMP>`^'</SAMP>.
-</DL>
-</P><P>
-
-<A NAME="IDX42"></A>
-<DL>
-<DT><U>Variable:</U> char <B>history_comment_char</B>
-<DD>During tokenization, if this character is seen as the first character
-of a word, then it and all subsequent characters up to a newline are
-ignored, suppressing history expansion for the remainder of the line.
-This is disabled by default.
-</DL>
-</P><P>
-
-<A NAME="IDX43"></A>
-<DL>
-<DT><U>Variable:</U> char * <B>history_word_delimiters</B>
-<DD>The characters that separate tokens for <CODE>history_tokenize()</CODE>.
-The default value is <CODE>" \t\n()<>;&|"</CODE>.
-</DL>
-</P><P>
-
-<A NAME="IDX44"></A>
-<DL>
-<DT><U>Variable:</U> char * <B>history_search_delimiter_chars</B>
-<DD>The list of additional characters which can delimit a history search
-string, in addition to space, TAB, <SAMP>`:'</SAMP> and <SAMP>`?'</SAMP> in the case of
-a substring search.  The default is empty.
-</DL>
-</P><P>
-
-<A NAME="IDX45"></A>
-<DL>
-<DT><U>Variable:</U> char * <B>history_no_expand_chars</B>
-<DD>The list of characters which inhibit history expansion if found immediately
-following <VAR>history_expansion_char</VAR>.  The default is space, tab, newline,
-carriage return, and <SAMP>`='</SAMP>.
-</DL>
-</P><P>
-
-<A NAME="IDX46"></A>
-<DL>
-<DT><U>Variable:</U> int <B>history_quotes_inhibit_expansion</B>
-<DD>If non-zero, single-quoted words are not scanned for the history expansion
-character.  The default value is 0.
-</DL>
-</P><P>
-
-<A NAME="IDX47"></A>
-<DL>
-<DT><U>Variable:</U> rl_linebuf_func_t * <B>history_inhibit_expansion_function</B>
-<DD>This should be set to the address of a function that takes two arguments:
-a <CODE>char *</CODE> (<VAR>string</VAR>)
-and an <CODE>int</CODE> index into that string (<VAR>i</VAR>).
-It should return a non-zero value if the history expansion starting at
-<VAR>string[i]</VAR> should not be performed; zero if the expansion should
-be done.
-It is intended for use by applications like Bash that use the history
-expansion character for additional purposes.
-By default, this variable is set to <CODE>NULL</CODE>.
-</DL>
-</P><P>
-
-<A NAME="History Programming Example"></A>
-<HR SIZE="6">
-<A NAME="SEC18"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC17"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC19"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[ &lt;&lt; ]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC6"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC19"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC21">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H2> 2.5 History Programming Example </H2>
-<!--docid::SEC18::-->
-<P>
-
-The following program demonstrates simple use of the GNU History Library.
-</P><P>
-
-<TABLE><tr><td>&nbsp;</td><td class=smallexample><FONT SIZE=-1><pre>#include &#60;stdio.h&#62;
-#include &#60;readline/history.h&#62;
-
-main (argc, argv)
-     int argc;
-     char **argv;
-{
-  char line[1024], *t;
-  int len, done = 0;
-
-  line[0] = 0;
-
-  using_history ();
-  while (!done)
-    {
-      printf ("history$ ");
-      fflush (stdout);
-      t = fgets (line, sizeof (line) - 1, stdin);
-      if (t &#38;&#38; *t)
-        {
-          len = strlen (t);
-          if (t[len - 1] == '\n')
-            t[len - 1] = '\0';
-        }
-
-      if (!t)
-        strcpy (line, "quit");
-
-      if (line[0])
-        {
-          char *expansion;
-          int result;
-
-          result = history_expand (line, &#38;expansion);
-          if (result)
-            fprintf (stderr, "%s\n", expansion);
-
-          if (result &#60; 0 || result == 2)
-            {
-              free (expansion);
-              continue;
-            }
-
-          add_history (expansion);
-          strncpy (line, expansion, sizeof (line) - 1);
-          free (expansion);
-        }
-
-      if (strcmp (line, "quit") == 0)
-        done = 1;
-      else if (strcmp (line, "save") == 0)
-        write_history ("history_file");
-      else if (strcmp (line, "read") == 0)
-        read_history ("history_file");
-      else if (strcmp (line, "list") == 0)
-        {
-          register HIST_ENTRY **the_list;
-          register int i;
-
-          the_list = history_list ();
-          if (the_list)
-            for (i = 0; the_list[i]; i++)
-              printf ("%d: %s\n", i + history_base, the_list[i]-&#62;line);
-        }
-      else if (strncmp (line, "delete", 6) == 0)
-        {
-          int which;
-          if ((sscanf (line + 6, "%d", &#38;which)) == 1)
-            {
-              HIST_ENTRY *entry = remove_history (which);
-              if (!entry)
-                fprintf (stderr, "No such entry %d\n", which);
-              else
-                {
-                  free (entry-&#62;line);
-                  free (entry);
-                }
-            }
-          else
-            {
-              fprintf (stderr, "non-numeric arg given to `delete'\n");
-            }
-        }
-    }
-}
-</FONT></pre></td></tr></table></P><P>
-
-<A NAME="GNU Free Documentation License"></A>
-<HR SIZE="6">
-<A NAME="SEC19"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC18"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC21"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC6"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_Top"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC21"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC21">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H1> A. GNU Free Documentation License </H1>
-<!--docid::SEC19::-->
-<P>
-
-<center>
- Version 1.3, 3 November 2008
-</center>
-</P><P>
-
-<TABLE><tr><td>&nbsp;</td><td class=display><pre style="font-family: serif">Copyright (C) 2000, 2001, 2002, 2007, 2008 Free Software Foundation, Inc.
-<A HREF="http://fsf.org/">http://fsf.org/</A>
-
-Everyone is permitted to copy and distribute verbatim copies
-of this license document, but changing it is not allowed.
-</pre></td></tr></table></P><P>
-
-<OL>
-<LI>
-PREAMBLE
-<P>
-
-The purpose of this License is to make a manual, textbook, or other
-functional and useful document <EM>free</EM> in the sense of freedom: to
-assure everyone the effective freedom to copy and redistribute it,
-with or without modifying it, either commercially or noncommercially.
-Secondarily, this License preserves for the author and publisher a way
-to get credit for their work, while not being considered responsible
-for modifications made by others.
-</P><P>
-
-This License is a kind of "copyleft", which means that derivative
-works of the document must themselves be free in the same sense.  It
-complements the GNU General Public License, which is a copyleft
-license designed for free software.
-</P><P>
-
-We have designed this License in order to use it for manuals for free
-software, because free software needs free documentation: a free
-program should come with manuals providing the same freedoms that the
-software does.  But this License is not limited to software manuals;
-it can be used for any textual work, regardless of subject matter or
-whether it is published as a printed book.  We recommend this License
-principally for works whose purpose is instruction or reference.
-</P><P>
-
-<LI>
-APPLICABILITY AND DEFINITIONS
-<P>
-
-This License applies to any manual or other work, in any medium, that
-contains a notice placed by the copyright holder saying it can be
-distributed under the terms of this License.  Such a notice grants a
-world-wide, royalty-free license, unlimited in duration, to use that
-work under the conditions stated herein.  The "Document", below,
-refers to any such manual or work.  Any member of the public is a
-licensee, and is addressed as "you".  You accept the license if you
-copy, modify or distribute the work in a way requiring permission
-under copyright law.
-</P><P>
-
-A "Modified Version" of the Document means any work containing the
-Document or a portion of it, either copied verbatim, or with
-modifications and/or translated into another language.
-</P><P>
-
-A "Secondary Section" is a named appendix or a front-matter section
-of the Document that deals exclusively with the relationship of the
-publishers or authors of the Document to the Document's overall
-subject (or to related matters) and contains nothing that could fall
-directly within that overall subject.  (Thus, if the Document is in
-part a textbook of mathematics, a Secondary Section may not explain
-any mathematics.)  The relationship could be a matter of historical
-connection with the subject or with related matters, or of legal,
-commercial, philosophical, ethical or political position regarding
-them.
-</P><P>
-
-The "Invariant Sections" are certain Secondary Sections whose titles
-are designated, as being those of Invariant Sections, in the notice
-that says that the Document is released under this License.  If a
-section does not fit the above definition of Secondary then it is not
-allowed to be designated as Invariant.  The Document may contain zero
-Invariant Sections.  If the Document does not identify any Invariant
-Sections then there are none.
-</P><P>
-
-The "Cover Texts" are certain short passages of text that are listed,
-as Front-Cover Texts or Back-Cover Texts, in the notice that says that
-the Document is released under this License.  A Front-Cover Text may
-be at most 5 words, and a Back-Cover Text may be at most 25 words.
-</P><P>
-
-A "Transparent" copy of the Document means a machine-readable copy,
-represented in a format whose specification is available to the
-general public, that is suitable for revising the document
-straightforwardly with generic text editors or (for images composed of
-pixels) generic paint programs or (for drawings) some widely available
-drawing editor, and that is suitable for input to text formatters or
-for automatic translation to a variety of formats suitable for input
-to text formatters.  A copy made in an otherwise Transparent file
-format whose markup, or absence of markup, has been arranged to thwart
-or discourage subsequent modification by readers is not Transparent.
-An image format is not Transparent if used for any substantial amount
-of text.  A copy that is not "Transparent" is called "Opaque".
-</P><P>
-
-Examples of suitable formats for Transparent copies include plain
-ASCII without markup, Texinfo input format, LaTeX input
-format, <FONT SIZE="-1">SGML</FONT> or <FONT SIZE="-1">XML</FONT> using a publicly available
-<FONT SIZE="-1">DTD</FONT>, and standard-conforming simple <FONT SIZE="-1">HTML</FONT>,
-PostScript or <FONT SIZE="-1">PDF</FONT> designed for human modification.  Examples
-of transparent image formats include <FONT SIZE="-1">PNG</FONT>, <FONT SIZE="-1">XCF</FONT> and
-<FONT SIZE="-1">JPG</FONT>.  Opaque formats include proprietary formats that can be
-read and edited only by proprietary word processors, <FONT SIZE="-1">SGML</FONT> or
-<FONT SIZE="-1">XML</FONT> for which the <FONT SIZE="-1">DTD</FONT> and/or processing tools are
-not generally available, and the machine-generated <FONT SIZE="-1">HTML</FONT>,
-PostScript or <FONT SIZE="-1">PDF</FONT> produced by some word processors for
-output purposes only.
-</P><P>
-
-The "Title Page" means, for a printed book, the title page itself,
-plus such following pages as are needed to hold, legibly, the material
-this License requires to appear in the title page.  For works in
-formats which do not have any title page as such, "Title Page" means
-the text near the most prominent appearance of the work's title,
-preceding the beginning of the body of the text.
-</P><P>
-
-The "publisher" means any person or entity that distributes copies
-of the Document to the public.
-</P><P>
-
-A section "Entitled XYZ" means a named subunit of the Document whose
-title either is precisely XYZ or contains XYZ in parentheses following
-text that translates XYZ in another language.  (Here XYZ stands for a
-specific section name mentioned below, such as "Acknowledgements",
-"Dedications", "Endorsements", or "History".)  To "Preserve the Title"
-of such a section when you modify the Document means that it remains a
-section "Entitled XYZ" according to this definition.
-</P><P>
-
-The Document may include Warranty Disclaimers next to the notice which
-states that this License applies to the Document.  These Warranty
-Disclaimers are considered to be included by reference in this
-License, but only as regards disclaiming warranties: any other
-implication that these Warranty Disclaimers may have is void and has
-no effect on the meaning of this License.
-</P><P>
-
-<LI>
-VERBATIM COPYING
-<P>
-
-You may copy and distribute the Document in any medium, either
-commercially or noncommercially, provided that this License, the
-copyright notices, and the license notice saying this License applies
-to the Document are reproduced in all copies, and that you add no other
-conditions whatsoever to those of this License.  You may not use
-technical measures to obstruct or control the reading or further
-copying of the copies you make or distribute.  However, you may accept
-compensation in exchange for copies.  If you distribute a large enough
-number of copies you must also follow the conditions in section 3.
-</P><P>
-
-You may also lend copies, under the same conditions stated above, and
-you may publicly display copies.
-</P><P>
-
-<LI>
-COPYING IN QUANTITY
-<P>
-
-If you publish printed copies (or copies in media that commonly have
-printed covers) of the Document, numbering more than 100, and the
-Document's license notice requires Cover Texts, you must enclose the
-copies in covers that carry, clearly and legibly, all these Cover
-Texts: Front-Cover Texts on the front cover, and Back-Cover Texts on
-the back cover.  Both covers must also clearly and legibly identify
-you as the publisher of these copies.  The front cover must present
-the full title with all words of the title equally prominent and
-visible.  You may add other material on the covers in addition.
-Copying with changes limited to the covers, as long as they preserve
-the title of the Document and satisfy these conditions, can be treated
-as verbatim copying in other respects.
-</P><P>
-
-If the required texts for either cover are too voluminous to fit
-legibly, you should put the first ones listed (as many as fit
-reasonably) on the actual cover, and continue the rest onto adjacent
-pages.
-</P><P>
-
-If you publish or distribute Opaque copies of the Document numbering
-more than 100, you must either include a machine-readable Transparent
-copy along with each Opaque copy, or state in or with each Opaque copy
-a computer-network location from which the general network-using
-public has access to download using public-standard network protocols
-a complete Transparent copy of the Document, free of added material.
-If you use the latter option, you must take reasonably prudent steps,
-when you begin distribution of Opaque copies in quantity, to ensure
-that this Transparent copy will remain thus accessible at the stated
-location until at least one year after the last time you distribute an
-Opaque copy (directly or through your agents or retailers) of that
-edition to the public.
-</P><P>
-
-It is requested, but not required, that you contact the authors of the
-Document well before redistributing any large number of copies, to give
-them a chance to provide you with an updated version of the Document.
-</P><P>
-
-<LI>
-MODIFICATIONS
-<P>
-
-You may copy and distribute a Modified Version of the Document under
-the conditions of sections 2 and 3 above, provided that you release
-the Modified Version under precisely this License, with the Modified
-Version filling the role of the Document, thus licensing distribution
-and modification of the Modified Version to whoever possesses a copy
-of it.  In addition, you must do these things in the Modified Version:
-</P><P>
-
-<OL>
-<LI>
-Use in the Title Page (and on the covers, if any) a title distinct
-from that of the Document, and from those of previous versions
-(which should, if there were any, be listed in the History section
-of the Document).  You may use the same title as a previous version
-if the original publisher of that version gives permission.
-<P>
-
-<LI>
-List on the Title Page, as authors, one or more persons or entities
-responsible for authorship of the modifications in the Modified
-Version, together with at least five of the principal authors of the
-Document (all of its principal authors, if it has fewer than five),
-unless they release you from this requirement.
-<P>
-
-<LI>
-State on the Title page the name of the publisher of the
-Modified Version, as the publisher.
-<P>
-
-<LI>
-Preserve all the copyright notices of the Document.
-<P>
-
-<LI>
-Add an appropriate copyright notice for your modifications
-adjacent to the other copyright notices.
-<P>
-
-<LI>
-Include, immediately after the copyright notices, a license notice
-giving the public permission to use the Modified Version under the
-terms of this License, in the form shown in the Addendum below.
-<P>
-
-<LI>
-Preserve in that license notice the full lists of Invariant Sections
-and required Cover Texts given in the Document's license notice.
-<P>
-
-<LI>
-Include an unaltered copy of this License.
-<P>
-
-<LI>
-Preserve the section Entitled "History", Preserve its Title, and add
-to it an item stating at least the title, year, new authors, and
-publisher of the Modified Version as given on the Title Page.  If
-there is no section Entitled "History" in the Document, create one
-stating the title, year, authors, and publisher of the Document as
-given on its Title Page, then add an item describing the Modified
-Version as stated in the previous sentence.
-<P>
-
-<LI>
-Preserve the network location, if any, given in the Document for
-public access to a Transparent copy of the Document, and likewise
-the network locations given in the Document for previous versions
-it was based on.  These may be placed in the "History" section.
-You may omit a network location for a work that was published at
-least four years before the Document itself, or if the original
-publisher of the version it refers to gives permission.
-<P>
-
-<LI>
-For any section Entitled "Acknowledgements" or "Dedications", Preserve
-the Title of the section, and preserve in the section all the
-substance and tone of each of the contributor acknowledgements and/or
-dedications given therein.
-<P>
-
-<LI>
-Preserve all the Invariant Sections of the Document,
-unaltered in their text and in their titles.  Section numbers
-or the equivalent are not considered part of the section titles.
-<P>
-
-<LI>
-Delete any section Entitled "Endorsements".  Such a section
-may not be included in the Modified Version.
-<P>
-
-<LI>
-Do not retitle any existing section to be Entitled "Endorsements" or
-to conflict in title with any Invariant Section.
-<P>
-
-<LI>
-Preserve any Warranty Disclaimers.
-</OL>
-<P>
-
-If the Modified Version includes new front-matter sections or
-appendices that qualify as Secondary Sections and contain no material
-copied from the Document, you may at your option designate some or all
-of these sections as invariant.  To do this, add their titles to the
-list of Invariant Sections in the Modified Version's license notice.
-These titles must be distinct from any other section titles.
-</P><P>
-
-You may add a section Entitled "Endorsements", provided it contains
-nothing but endorsements of your Modified Version by various
-parties--for example, statements of peer review or that the text has
-been approved by an organization as the authoritative definition of a
-standard.
-</P><P>
-
-You may add a passage of up to five words as a Front-Cover Text, and a
-passage of up to 25 words as a Back-Cover Text, to the end of the list
-of Cover Texts in the Modified Version.  Only one passage of
-Front-Cover Text and one of Back-Cover Text may be added by (or
-through arrangements made by) any one entity.  If the Document already
-includes a cover text for the same cover, previously added by you or
-by arrangement made by the same entity you are acting on behalf of,
-you may not add another; but you may replace the old one, on explicit
-permission from the previous publisher that added the old one.
-</P><P>
-
-The author(s) and publisher(s) of the Document do not by this License
-give permission to use their names for publicity for or to assert or
-imply endorsement of any Modified Version.
-</P><P>
-
-<LI>
-COMBINING DOCUMENTS
-<P>
-
-You may combine the Document with other documents released under this
-License, under the terms defined in section 4 above for modified
-versions, provided that you include in the combination all of the
-Invariant Sections of all of the original documents, unmodified, and
-list them all as Invariant Sections of your combined work in its
-license notice, and that you preserve all their Warranty Disclaimers.
-</P><P>
-
-The combined work need only contain one copy of this License, and
-multiple identical Invariant Sections may be replaced with a single
-copy.  If there are multiple Invariant Sections with the same name but
-different contents, make the title of each such section unique by
-adding at the end of it, in parentheses, the name of the original
-author or publisher of that section if known, or else a unique number.
-Make the same adjustment to the section titles in the list of
-Invariant Sections in the license notice of the combined work.
-</P><P>
-
-In the combination, you must combine any sections Entitled "History"
-in the various original documents, forming one section Entitled
-"History"; likewise combine any sections Entitled "Acknowledgements",
-and any sections Entitled "Dedications".  You must delete all
-sections Entitled "Endorsements."
-</P><P>
-
-<LI>
-COLLECTIONS OF DOCUMENTS
-<P>
-
-You may make a collection consisting of the Document and other documents
-released under this License, and replace the individual copies of this
-License in the various documents with a single copy that is included in
-the collection, provided that you follow the rules of this License for
-verbatim copying of each of the documents in all other respects.
-</P><P>
-
-You may extract a single document from such a collection, and distribute
-it individually under this License, provided you insert a copy of this
-License into the extracted document, and follow this License in all
-other respects regarding verbatim copying of that document.
-</P><P>
-
-<LI>
-AGGREGATION WITH INDEPENDENT WORKS
-<P>
-
-A compilation of the Document or its derivatives with other separate
-and independent documents or works, in or on a volume of a storage or
-distribution medium, is called an "aggregate" if the copyright
-resulting from the compilation is not used to limit the legal rights
-of the compilation's users beyond what the individual works permit.
-When the Document is included in an aggregate, this License does not
-apply to the other works in the aggregate which are not themselves
-derivative works of the Document.
-</P><P>
-
-If the Cover Text requirement of section 3 is applicable to these
-copies of the Document, then if the Document is less than one half of
-the entire aggregate, the Document's Cover Texts may be placed on
-covers that bracket the Document within the aggregate, or the
-electronic equivalent of covers if the Document is in electronic form.
-Otherwise they must appear on printed covers that bracket the whole
-aggregate.
-</P><P>
-
-<LI>
-TRANSLATION
-<P>
-
-Translation is considered a kind of modification, so you may
-distribute translations of the Document under the terms of section 4.
-Replacing Invariant Sections with translations requires special
-permission from their copyright holders, but you may include
-translations of some or all Invariant Sections in addition to the
-original versions of these Invariant Sections.  You may include a
-translation of this License, and all the license notices in the
-Document, and any Warranty Disclaimers, provided that you also include
-the original English version of this License and the original versions
-of those notices and disclaimers.  In case of a disagreement between
-the translation and the original version of this License or a notice
-or disclaimer, the original version will prevail.
-</P><P>
-
-If a section in the Document is Entitled "Acknowledgements",
-"Dedications", or "History", the requirement (section 4) to Preserve
-its Title (section 1) will typically require changing the actual
-title.
-</P><P>
-
-<LI>
-TERMINATION
-<P>
-
-You may not copy, modify, sublicense, or distribute the Document
-except as expressly provided under this License.  Any attempt
-otherwise to copy, modify, sublicense, or distribute it is void, and
-will automatically terminate your rights under this License.
-</P><P>
-
-However, if you cease all violation of this License, then your license
-from a particular copyright holder is reinstated (a) provisionally,
-unless and until the copyright holder explicitly and finally
-terminates your license, and (b) permanently, if the copyright holder
-fails to notify you of the violation by some reasonable means prior to
-60 days after the cessation.
-</P><P>
-
-Moreover, your license from a particular copyright holder is
-reinstated permanently if the copyright holder notifies you of the
-violation by some reasonable means, this is the first time you have
-received notice of violation of this License (for any work) from that
-copyright holder, and you cure the violation prior to 30 days after
-your receipt of the notice.
-</P><P>
-
-Termination of your rights under this section does not terminate the
-licenses of parties who have received copies or rights from you under
-this License.  If your rights have been terminated and not permanently
-reinstated, receipt of a copy of some or all of the same material does
-not give you any rights to use it.
-</P><P>
-
-<LI>
-FUTURE REVISIONS OF THIS LICENSE
-<P>
-
-The Free Software Foundation may publish new, revised versions
-of the GNU Free Documentation License from time to time.  Such new
-versions will be similar in spirit to the present version, but may
-differ in detail to address new problems or concerns.  See
-<A HREF="http://www.gnu.org/copyleft/">http://www.gnu.org/copyleft/</A>.
-</P><P>
-
-Each version of the License is given a distinguishing version number.
-If the Document specifies that a particular numbered version of this
-License "or any later version" applies to it, you have the option of
-following the terms and conditions either of that specified version or
-of any later version that has been published (not as a draft) by the
-Free Software Foundation.  If the Document does not specify a version
-number of this License, you may choose any version ever published (not
-as a draft) by the Free Software Foundation.  If the Document
-specifies that a proxy can decide which future versions of this
-License can be used, that proxy's public statement of acceptance of a
-version permanently authorizes you to choose that version for the
-Document.
-</P><P>
-
-<LI>
-RELICENSING
-<P>
-
-"Massive Multiauthor Collaboration Site" (or "MMC Site") means any
-World Wide Web server that publishes copyrightable works and also
-provides prominent facilities for anybody to edit those works.  A
-public wiki that anybody can edit is an example of such a server.  A
-"Massive Multiauthor Collaboration" (or "MMC") contained in the
-site means any set of copyrightable works thus published on the MMC
-site.
-</P><P>
-
-"CC-BY-SA" means the Creative Commons Attribution-Share Alike 3.0
-license published by Creative Commons Corporation, a not-for-profit
-corporation with a principal place of business in San Francisco,
-California, as well as future copyleft versions of that license
-published by that same organization.
-</P><P>
-
-"Incorporate" means to publish or republish a Document, in whole or
-in part, as part of another Document.
-</P><P>
-
-An MMC is "eligible for relicensing" if it is licensed under this
-License, and if all works that were first published under this License
-somewhere other than this MMC, and subsequently incorporated in whole
-or in part into the MMC, (1) had no cover texts or invariant sections,
-and (2) were thus incorporated prior to November 1, 2008.
-</P><P>
-
-The operator of an MMC Site may republish an MMC contained in the site
-under CC-BY-SA on the same site at any time before August 1, 2009,
-provided the MMC is eligible for relicensing.
-</P><P>
-
-</OL>
-<P>
-
-<A NAME="SEC20"></A>
-<H2> ADDENDUM: How to use this License for your documents </H2>
-<!--docid::SEC20::-->
-<P>
-
-To use this License in a document you have written, include a copy of
-the License in the document and put the following copyright and
-license notices just after the title page:
-</P><P>
-
-<TABLE><tr><td>&nbsp;</td><td class=smallexample><FONT SIZE=-1><pre>  Copyright (C)  <VAR>year</VAR>  <VAR>your name</VAR>.
-  Permission is granted to copy, distribute and/or modify this document
-  under the terms of the GNU Free Documentation License, Version 1.3
-  or any later version published by the Free Software Foundation;
-  with no Invariant Sections, no Front-Cover Texts, and no Back-Cover
-  Texts.  A copy of the license is included in the section entitled ``GNU
-  Free Documentation License''.
-</FONT></pre></td></tr></table></P><P>
-
-If you have Invariant Sections, Front-Cover Texts and Back-Cover Texts,
-replace the "with<small>...</small>Texts." line with this:
-</P><P>
-
-<TABLE><tr><td>&nbsp;</td><td class=smallexample><FONT SIZE=-1><pre>    with the Invariant Sections being <VAR>list their titles</VAR>, with
-    the Front-Cover Texts being <VAR>list</VAR>, and with the Back-Cover Texts
-    being <VAR>list</VAR>.
-</FONT></pre></td></tr></table></P><P>
-
-If you have Invariant Sections without Cover Texts, or some other
-combination of the three, merge those two alternatives to suit the
-situation.
-</P><P>
-
-If your document contains nontrivial examples of program code, we
-recommend releasing these examples in parallel under your choice of
-free software license, such as the GNU General Public License,
-to permit their use in free software.
-</P><P>
-
-<A NAME="Concept Index"></A>
-<HR SIZE="6">
-<A NAME="SEC21"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC19"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC22"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC22"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_Top"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC22"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC21">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H1> B. Concept Index </H1>
-<!--docid::SEC21::-->
-<table><tr><th valign=top>Jump to: &nbsp; </th><td><A HREF="history.html#cp_A" style="text-decoration:none"><b>A</b></A>
- &nbsp; 
-<A HREF="history.html#cp_E" style="text-decoration:none"><b>E</b></A>
- &nbsp; 
-<A HREF="history.html#cp_H" style="text-decoration:none"><b>H</b></A>
- &nbsp; 
-</td></tr></table><br><P></P>
-<TABLE border=0>
-<TR><TD></TD><TH ALIGN=LEFT>Index Entry</TH><TH ALIGN=LEFT> Section</TH></TR>
-<TR><TD COLSPAN=3> <HR></TD></TR>
-<TR><TH><A NAME="cp_A"></A>A</TH><TD></TD><TD></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="history.html#IDX23">anchored search</A></TD><TD valign=top><A HREF="history.html#SEC14">2.3.5 Searching the History List</A></TD></TR>
-<TR><TD COLSPAN=3> <HR></TD></TR>
-<TR><TH><A NAME="cp_E"></A>E</TH><TD></TD><TD></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="history.html#SEC3">event designators</A></TD><TD valign=top><A HREF="history.html#SEC3">1.1.1 Event Designators</A></TD></TR>
-<TR><TD COLSPAN=3> <HR></TD></TR>
-<TR><TH><A NAME="cp_H"></A>H</TH><TD></TD><TD></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="history.html#IDX1">history events</A></TD><TD valign=top><A HREF="history.html#SEC3">1.1.1 Event Designators</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="history.html#SEC2">history expansion</A></TD><TD valign=top><A HREF="history.html#SEC2">1.1 History Expansion</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="history.html#SEC14">History Searching</A></TD><TD valign=top><A HREF="history.html#SEC14">2.3.5 Searching the History List</A></TD></TR>
-<TR><TD COLSPAN=3> <HR></TD></TR>
-</TABLE><P></P><table><tr><th valign=top>Jump to: &nbsp; </th><td><A HREF="history.html#cp_A" style="text-decoration:none"><b>A</b></A>
- &nbsp; 
-<A HREF="history.html#cp_E" style="text-decoration:none"><b>E</b></A>
- &nbsp; 
-<A HREF="history.html#cp_H" style="text-decoration:none"><b>H</b></A>
- &nbsp; 
-</td></tr></table><br><P>
-
-<A NAME="Function and Variable Index"></A>
-<HR SIZE="6">
-<A NAME="SEC22"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC21"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[ &gt; ]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[ &lt;&lt; ]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_Top"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[ &gt;&gt; ]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC21">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H1> C. Function and Variable Index </H1>
-<!--docid::SEC22::-->
-<table><tr><th valign=top>Jump to: &nbsp; </th><td><A HREF="history.html#vr_A" style="text-decoration:none"><b>A</b></A>
- &nbsp; 
-<A HREF="history.html#vr_C" style="text-decoration:none"><b>C</b></A>
- &nbsp; 
-<A HREF="history.html#vr_F" style="text-decoration:none"><b>F</b></A>
- &nbsp; 
-<A HREF="history.html#vr_G" style="text-decoration:none"><b>G</b></A>
- &nbsp; 
-<A HREF="history.html#vr_H" style="text-decoration:none"><b>H</b></A>
- &nbsp; 
-<A HREF="history.html#vr_N" style="text-decoration:none"><b>N</b></A>
- &nbsp; 
-<A HREF="history.html#vr_P" style="text-decoration:none"><b>P</b></A>
- &nbsp; 
-<A HREF="history.html#vr_R" style="text-decoration:none"><b>R</b></A>
- &nbsp; 
-<A HREF="history.html#vr_S" style="text-decoration:none"><b>S</b></A>
- &nbsp; 
-<A HREF="history.html#vr_U" style="text-decoration:none"><b>U</b></A>
- &nbsp; 
-<A HREF="history.html#vr_W" style="text-decoration:none"><b>W</b></A>
- &nbsp; 
-</td></tr></table><br><P></P>
-<TABLE border=0>
-<TR><TD></TD><TH ALIGN=LEFT>Index Entry</TH><TH ALIGN=LEFT> Section</TH></TR>
-<TR><TD COLSPAN=3> <HR></TD></TR>
-<TR><TH><A NAME="vr_A"></A>A</TH><TD></TD><TD></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="history.html#IDX5"><CODE>add_history</CODE></A></TD><TD valign=top><A HREF="history.html#SEC11">2.3.2 History List Management</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="history.html#IDX6"><CODE>add_history_time</CODE></A></TD><TD valign=top><A HREF="history.html#SEC11">2.3.2 History List Management</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="history.html#IDX30"><CODE>append_history</CODE></A></TD><TD valign=top><A HREF="history.html#SEC15">2.3.6 Managing the History File</A></TD></TR>
-<TR><TD COLSPAN=3> <HR></TD></TR>
-<TR><TH><A NAME="vr_C"></A>C</TH><TD></TD><TD></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="history.html#IDX10"><CODE>clear_history</CODE></A></TD><TD valign=top><A HREF="history.html#SEC11">2.3.2 History List Management</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="history.html#IDX16"><CODE>current_history</CODE></A></TD><TD valign=top><A HREF="history.html#SEC12">2.3.3 Information About the History List</A></TD></TR>
-<TR><TD COLSPAN=3> <HR></TD></TR>
-<TR><TH><A NAME="vr_F"></A>F</TH><TD></TD><TD></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="history.html#IDX8"><CODE>free_history_entry</CODE></A></TD><TD valign=top><A HREF="history.html#SEC11">2.3.2 History List Management</A></TD></TR>
-<TR><TD COLSPAN=3> <HR></TD></TR>
-<TR><TH><A NAME="vr_G"></A>G</TH><TD></TD><TD></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="history.html#IDX33"><CODE>get_history_event</CODE></A></TD><TD valign=top><A HREF="history.html#SEC16">2.3.7 History Expansion</A></TD></TR>
-<TR><TD COLSPAN=3> <HR></TD></TR>
-<TR><TH><A NAME="vr_H"></A>H</TH><TD></TD><TD></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="history.html#IDX35"><CODE>history_arg_extract</CODE></A></TD><TD valign=top><A HREF="history.html#SEC16">2.3.7 History Expansion</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="history.html#IDX36"><CODE>history_base</CODE></A></TD><TD valign=top><A HREF="history.html#SEC17">2.4 History Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="history.html#IDX42"><CODE>history_comment_char</CODE></A></TD><TD valign=top><A HREF="history.html#SEC17">2.4 History Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="history.html#IDX32"><CODE>history_expand</CODE></A></TD><TD valign=top><A HREF="history.html#SEC16">2.3.7 History Expansion</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="history.html#IDX40"><CODE>history_expansion_char</CODE></A></TD><TD valign=top><A HREF="history.html#SEC17">2.4 History Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="history.html#IDX17"><CODE>history_get</CODE></A></TD><TD valign=top><A HREF="history.html#SEC12">2.3.3 Information About the History List</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="history.html#IDX3"><CODE>history_get_history_state</CODE></A></TD><TD valign=top><A HREF="history.html#SEC10">2.3.1 Initializing History and State Management</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="history.html#IDX18"><CODE>history_get_time</CODE></A></TD><TD valign=top><A HREF="history.html#SEC12">2.3.3 Information About the History List</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="history.html#IDX47"><CODE>history_inhibit_expansion_function</CODE></A></TD><TD valign=top><A HREF="history.html#SEC17">2.4 History Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="history.html#IDX13"><CODE>history_is_stifled</CODE></A></TD><TD valign=top><A HREF="history.html#SEC11">2.3.2 History List Management</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="history.html#IDX37"><CODE>history_length</CODE></A></TD><TD valign=top><A HREF="history.html#SEC17">2.4 History Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="history.html#IDX14"><CODE>history_list</CODE></A></TD><TD valign=top><A HREF="history.html#SEC12">2.3.3 Information About the History List</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="history.html#IDX38"><CODE>history_max_entries</CODE></A></TD><TD valign=top><A HREF="history.html#SEC17">2.4 History Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="history.html#IDX45"><CODE>history_no_expand_chars</CODE></A></TD><TD valign=top><A HREF="history.html#SEC17">2.4 History Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="history.html#IDX46"><CODE>history_quotes_inhibit_expansion</CODE></A></TD><TD valign=top><A HREF="history.html#SEC17">2.4 History Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="history.html#IDX24"><CODE>history_search</CODE></A></TD><TD valign=top><A HREF="history.html#SEC14">2.3.5 Searching the History List</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="history.html#IDX44"><CODE>history_search_delimiter_chars</CODE></A></TD><TD valign=top><A HREF="history.html#SEC17">2.4 History Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="history.html#IDX26"><CODE>history_search_pos</CODE></A></TD><TD valign=top><A HREF="history.html#SEC14">2.3.5 Searching the History List</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="history.html#IDX25"><CODE>history_search_prefix</CODE></A></TD><TD valign=top><A HREF="history.html#SEC14">2.3.5 Searching the History List</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="history.html#IDX4"><CODE>history_set_history_state</CODE></A></TD><TD valign=top><A HREF="history.html#SEC10">2.3.1 Initializing History and State Management</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="history.html#IDX20"><CODE>history_set_pos</CODE></A></TD><TD valign=top><A HREF="history.html#SEC13">2.3.4 Moving Around the History List</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="history.html#IDX41"><CODE>history_subst_char</CODE></A></TD><TD valign=top><A HREF="history.html#SEC17">2.4 History Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="history.html#IDX34"><CODE>history_tokenize</CODE></A></TD><TD valign=top><A HREF="history.html#SEC16">2.3.7 History Expansion</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="history.html#IDX19"><CODE>history_total_bytes</CODE></A></TD><TD valign=top><A HREF="history.html#SEC12">2.3.3 Information About the History List</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="history.html#IDX31"><CODE>history_truncate_file</CODE></A></TD><TD valign=top><A HREF="history.html#SEC15">2.3.6 Managing the History File</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="history.html#IDX43"><CODE>history_word_delimiters</CODE></A></TD><TD valign=top><A HREF="history.html#SEC17">2.4 History Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="history.html#IDX39"><CODE>history_write_timestamps</CODE></A></TD><TD valign=top><A HREF="history.html#SEC17">2.4 History Variables</A></TD></TR>
-<TR><TD COLSPAN=3> <HR></TD></TR>
-<TR><TH><A NAME="vr_N"></A>N</TH><TD></TD><TD></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="history.html#IDX22"><CODE>next_history</CODE></A></TD><TD valign=top><A HREF="history.html#SEC13">2.3.4 Moving Around the History List</A></TD></TR>
-<TR><TD COLSPAN=3> <HR></TD></TR>
-<TR><TH><A NAME="vr_P"></A>P</TH><TD></TD><TD></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="history.html#IDX21"><CODE>previous_history</CODE></A></TD><TD valign=top><A HREF="history.html#SEC13">2.3.4 Moving Around the History List</A></TD></TR>
-<TR><TD COLSPAN=3> <HR></TD></TR>
-<TR><TH><A NAME="vr_R"></A>R</TH><TD></TD><TD></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="history.html#IDX27"><CODE>read_history</CODE></A></TD><TD valign=top><A HREF="history.html#SEC15">2.3.6 Managing the History File</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="history.html#IDX28"><CODE>read_history_range</CODE></A></TD><TD valign=top><A HREF="history.html#SEC15">2.3.6 Managing the History File</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="history.html#IDX7"><CODE>remove_history</CODE></A></TD><TD valign=top><A HREF="history.html#SEC11">2.3.2 History List Management</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="history.html#IDX9"><CODE>replace_history_entry</CODE></A></TD><TD valign=top><A HREF="history.html#SEC11">2.3.2 History List Management</A></TD></TR>
-<TR><TD COLSPAN=3> <HR></TD></TR>
-<TR><TH><A NAME="vr_S"></A>S</TH><TD></TD><TD></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="history.html#IDX11"><CODE>stifle_history</CODE></A></TD><TD valign=top><A HREF="history.html#SEC11">2.3.2 History List Management</A></TD></TR>
-<TR><TD COLSPAN=3> <HR></TD></TR>
-<TR><TH><A NAME="vr_U"></A>U</TH><TD></TD><TD></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="history.html#IDX12"><CODE>unstifle_history</CODE></A></TD><TD valign=top><A HREF="history.html#SEC11">2.3.2 History List Management</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="history.html#IDX2"><CODE>using_history</CODE></A></TD><TD valign=top><A HREF="history.html#SEC10">2.3.1 Initializing History and State Management</A></TD></TR>
-<TR><TD COLSPAN=3> <HR></TD></TR>
-<TR><TH><A NAME="vr_W"></A>W</TH><TD></TD><TD></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="history.html#IDX15"><CODE>where_history</CODE></A></TD><TD valign=top><A HREF="history.html#SEC12">2.3.3 Information About the History List</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="history.html#IDX29"><CODE>write_history</CODE></A></TD><TD valign=top><A HREF="history.html#SEC15">2.3.6 Managing the History File</A></TD></TR>
-<TR><TD COLSPAN=3> <HR></TD></TR>
-</TABLE><P></P><table><tr><th valign=top>Jump to: &nbsp; </th><td><A HREF="history.html#vr_A" style="text-decoration:none"><b>A</b></A>
- &nbsp; 
-<A HREF="history.html#vr_C" style="text-decoration:none"><b>C</b></A>
- &nbsp; 
-<A HREF="history.html#vr_F" style="text-decoration:none"><b>F</b></A>
- &nbsp; 
-<A HREF="history.html#vr_G" style="text-decoration:none"><b>G</b></A>
- &nbsp; 
-<A HREF="history.html#vr_H" style="text-decoration:none"><b>H</b></A>
- &nbsp; 
-<A HREF="history.html#vr_N" style="text-decoration:none"><b>N</b></A>
- &nbsp; 
-<A HREF="history.html#vr_P" style="text-decoration:none"><b>P</b></A>
- &nbsp; 
-<A HREF="history.html#vr_R" style="text-decoration:none"><b>R</b></A>
- &nbsp; 
-<A HREF="history.html#vr_S" style="text-decoration:none"><b>S</b></A>
- &nbsp; 
-<A HREF="history.html#vr_U" style="text-decoration:none"><b>U</b></A>
- &nbsp; 
-<A HREF="history.html#vr_W" style="text-decoration:none"><b>W</b></A>
- &nbsp; 
-</td></tr></table><br><P>
-
-<HR SIZE="6">
-<A NAME="SEC_Contents"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC21">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H1>Table of Contents</H1>
-<UL>
-<A NAME="TOC1" HREF="history.html#SEC1">1. Using History Interactively</A>
-<BR>
-<UL>
-<A NAME="TOC2" HREF="history.html#SEC2">1.1 History Expansion</A>
-<BR>
-<UL>
-<A NAME="TOC3" HREF="history.html#SEC3">1.1.1 Event Designators</A>
-<BR>
-<A NAME="TOC4" HREF="history.html#SEC4">1.1.2 Word Designators</A>
-<BR>
-<A NAME="TOC5" HREF="history.html#SEC5">1.1.3 Modifiers</A>
-<BR>
-</UL>
-</UL>
-<A NAME="TOC6" HREF="history.html#SEC6">2. Programming with GNU History</A>
-<BR>
-<UL>
-<A NAME="TOC7" HREF="history.html#SEC7">2.1 Introduction to History</A>
-<BR>
-<A NAME="TOC8" HREF="history.html#SEC8">2.2 History Storage</A>
-<BR>
-<A NAME="TOC9" HREF="history.html#SEC9">2.3 History Functions</A>
-<BR>
-<UL>
-<A NAME="TOC10" HREF="history.html#SEC10">2.3.1 Initializing History and State Management</A>
-<BR>
-<A NAME="TOC11" HREF="history.html#SEC11">2.3.2 History List Management</A>
-<BR>
-<A NAME="TOC12" HREF="history.html#SEC12">2.3.3 Information About the History List</A>
-<BR>
-<A NAME="TOC13" HREF="history.html#SEC13">2.3.4 Moving Around the History List</A>
-<BR>
-<A NAME="TOC14" HREF="history.html#SEC14">2.3.5 Searching the History List</A>
-<BR>
-<A NAME="TOC15" HREF="history.html#SEC15">2.3.6 Managing the History File</A>
-<BR>
-<A NAME="TOC16" HREF="history.html#SEC16">2.3.7 History Expansion</A>
-<BR>
-</UL>
-<A NAME="TOC17" HREF="history.html#SEC17">2.4 History Variables</A>
-<BR>
-<A NAME="TOC18" HREF="history.html#SEC18">2.5 History Programming Example</A>
-<BR>
-</UL>
-<A NAME="TOC19" HREF="history.html#SEC19">A. GNU Free Documentation License</A>
-<BR>
-<A NAME="TOC21" HREF="history.html#SEC21">B. Concept Index</A>
-<BR>
-<A NAME="TOC22" HREF="history.html#SEC22">C. Function and Variable Index</A>
-<BR>
-</UL>
-<HR SIZE=1>
-<A NAME="SEC_OVERVIEW"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC21">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H1>Short Table of Contents</H1>
-<BLOCKQUOTE>
-<A NAME="TOC1" HREF="history.html#SEC1">1. Using History Interactively</A>
-<BR>
-<A NAME="TOC6" HREF="history.html#SEC6">2. Programming with GNU History</A>
-<BR>
-<A NAME="TOC19" HREF="history.html#SEC19">A. GNU Free Documentation License</A>
-<BR>
-<A NAME="TOC21" HREF="history.html#SEC21">B. Concept Index</A>
-<BR>
-<A NAME="TOC22" HREF="history.html#SEC22">C. Function and Variable Index</A>
-<BR>
-
-</BLOCKQUOTE>
-<HR SIZE=1>
-<A NAME="SEC_About"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC21">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H1>About this document</H1>
-This document was generated by <I>Chet Ramey</I> on <I>February, 8  2011</I>
-using <A HREF="http://www.mathematik.uni-kl.de/~obachman/Texi2html
-"><I>texi2html</I></A>
-<P></P>  
-The buttons in the navigation panels have the following meaning:
-<P></P>
-<table border = "1">
-<TR>
-<TH> Button </TH>
-<TH> Name </TH>
-<TH> Go to </TH>
-<TH> From 1.2.3 go to</TH>
-</TR>
-<TR>
-<TD ALIGN="CENTER">
- [ &lt; ] </TD>
-<TD ALIGN="CENTER">
-Back
-</TD>
-<TD>
-previous section in reading order
-</TD>
-<TD>
-1.2.2
-</TD>
-</TR>
-<TR>
-<TD ALIGN="CENTER">
- [ &gt; ] </TD>
-<TD ALIGN="CENTER">
-Forward
-</TD>
-<TD>
-next section in reading order
-</TD>
-<TD>
-1.2.4
-</TD>
-</TR>
-<TR>
-<TD ALIGN="CENTER">
- [ &lt;&lt; ] </TD>
-<TD ALIGN="CENTER">
-FastBack
-</TD>
-<TD>
-previous or up-and-previous section 
-</TD>
-<TD>
-1.1
-</TD>
-</TR>
-<TR>
-<TD ALIGN="CENTER">
- [ Up ] </TD>
-<TD ALIGN="CENTER">
-Up
-</TD>
-<TD>
-up section
-</TD>
-<TD>
-1.2
-</TD>
-</TR>
-<TR>
-<TD ALIGN="CENTER">
- [ &gt;&gt; ] </TD>
-<TD ALIGN="CENTER">
-FastForward
-</TD>
-<TD>
-next or up-and-next section
-</TD>
-<TD>
-1.3
-</TD>
-</TR>
-<TR>
-<TD ALIGN="CENTER">
- [Top] </TD>
-<TD ALIGN="CENTER">
-Top
-</TD>
-<TD>
-cover (top) of document
-</TD>
-<TD>
- &nbsp; 
-</TD>
-</TR>
-<TR>
-<TD ALIGN="CENTER">
- [Contents] </TD>
-<TD ALIGN="CENTER">
-Contents
-</TD>
-<TD>
-table of contents
-</TD>
-<TD>
- &nbsp; 
-</TD>
-</TR>
-<TR>
-<TD ALIGN="CENTER">
- [Index] </TD>
-<TD ALIGN="CENTER">
-Index
-</TD>
-<TD>
-concept index
-</TD>
-<TD>
- &nbsp; 
-</TD>
-</TR>
-<TR>
-<TD ALIGN="CENTER">
- [ ? ] </TD>
-<TD ALIGN="CENTER">
-About
-</TD>
-<TD>
-this page
-</TD>
-<TD>
- &nbsp; 
-</TD>
-</TR>
-</TABLE>
-<P></P>
-where the <STRONG> Example </STRONG> assumes that the current position 
-is at <STRONG> Subsubsection One-Two-Three </STRONG> of a document of 
-the following structure:
-<UL>
-<LI> 1. Section One  </LI>
-<UL>
-<LI>1.1 Subsection One-One</LI>
-<UL>
-<LI> ... </LI>
-</UL>
-<LI>1.2 Subsection One-Two</LI>
-<UL>
-<LI>1.2.1 Subsubsection One-Two-One
-</LI><LI>1.2.2 Subsubsection One-Two-Two
-</LI><LI>1.2.3 Subsubsection One-Two-Three &nbsp; &nbsp; <STRONG>
-&lt;== Current Position </STRONG>
-</LI><LI>1.2.4 Subsubsection One-Two-Four
-</LI></UL>
-<LI>1.3 Subsection One-Three</LI>
-<UL>
-<LI> ... </LI>
-</UL>
-<LI>1.4 Subsection One-Four</LI>
-</UL>
-</UL>
-
-<HR SIZE=1>
-<BR>  
-<FONT SIZE="-1">
-This document was generated
-by <I>Chet Ramey</I> on <I>February, 8  2011</I>
-using <A HREF="http://www.mathematik.uni-kl.de/~obachman/Texi2html
-"><I>texi2html</I></A>
-
-</BODY>
-</HTML>
diff --git a/lib/readline/doc/history.info b/lib/readline/doc/history.info
deleted file mode 100644 (file)
index f8278f0..0000000
+++ /dev/null
@@ -1,1401 +0,0 @@
-This is history.info, produced by makeinfo version 4.13 from
-./history.texi.
-
-This document describes the GNU History library (version 6.2, September
-6 2010), a programming tool that provides a consistent user interface
-for recalling lines of previously typed input.
-
-   Copyright (C) 1988-2011 Free Software Foundation, Inc.
-
-   Permission is granted to make and distribute verbatim copies of this
-manual provided the copyright notice and this permission notice are
-preserved on all copies.
-
-     Permission is granted to copy, distribute and/or modify this
-     document under the terms of the GNU Free Documentation License,
-     Version 1.3 or any later version published by the Free Software
-     Foundation; with no Invariant Sections, with the Front-Cover texts
-     being "A GNU Manual", and with the Back-Cover Texts as in (a)
-     below.  A copy of the license is included in the section entitled
-     "GNU Free Documentation License".
-
-     (a) The FSF's Back-Cover Text is: You are free to copy and modify
-     this GNU manual.  Buying copies from GNU Press supports the FSF in
-     developing GNU and promoting software freedom."
-
-
-INFO-DIR-SECTION Libraries
-START-INFO-DIR-ENTRY
-* History: (history).       The GNU history library API.
-END-INFO-DIR-ENTRY
-
-\1f
-File: history.info,  Node: Top,  Next: Using History Interactively,  Up: (dir)
-
-GNU History Library
-*******************
-
-This document describes the GNU History library, a programming tool that
-provides a consistent user interface for recalling lines of previously
-typed input.
-
-* Menu:
-
-* Using History Interactively::          GNU History User's Manual.
-* Programming with GNU History::  GNU History Programmer's Manual.
-* GNU Free Documentation License::     License for copying this manual.
-* Concept Index::                Index of concepts described in this manual.
-* Function and Variable Index::          Index of externally visible functions
-                                 and variables.
-
-\1f
-File: history.info,  Node: Using History Interactively,  Next: Programming with GNU History,  Prev: Top,  Up: Top
-
-1 Using History Interactively
-*****************************
-
-This chapter describes how to use the GNU History Library interactively,
-from a user's standpoint.  It should be considered a user's guide.  For
-information on using the GNU History Library in your own programs,
-*note Programming with GNU History::.
-
-* Menu:
-
-* History Interaction::                What it feels like using History as a user.
-
-\1f
-File: history.info,  Node: History Interaction,  Up: Using History Interactively
-
-1.1 History Expansion
-=====================
-
-The History library provides a history expansion feature that is similar
-to the history expansion provided by `csh'.  This section describes the
-syntax used to manipulate the history information.
-
-   History expansions introduce words from the history list into the
-input stream, making it easy to repeat commands, insert the arguments
-to a previous command into the current input line, or fix errors in
-previous commands quickly.
-
-   History expansion takes place in two parts.  The first is to
-determine which line from the history list should be used during
-substitution.  The second is to select portions of that line for
-inclusion into the current one.  The line selected from the history is
-called the "event", and the portions of that line that are acted upon
-are called "words".  Various "modifiers" are available to manipulate
-the selected words.  The line is broken into words in the same fashion
-that Bash does, so that several words surrounded by quotes are
-considered one word.  History expansions are introduced by the
-appearance of the history expansion character, which is `!' by default.
-
-* Menu:
-
-* Event Designators::  How to specify which history line to use.
-* Word Designators::   Specifying which words are of interest.
-* Modifiers::          Modifying the results of substitution.
-
-\1f
-File: history.info,  Node: Event Designators,  Next: Word Designators,  Up: History Interaction
-
-1.1.1 Event Designators
------------------------
-
-An event designator is a reference to a command line entry in the
-history list.  Unless the reference is absolute, events are relative to
-the current position in the history list.  
-
-`!'
-     Start a history substitution, except when followed by a space, tab,
-     the end of the line, or `='.
-
-`!N'
-     Refer to command line N.
-
-`!-N'
-     Refer to the command N lines back.
-
-`!!'
-     Refer to the previous command.  This is a synonym for `!-1'.
-
-`!STRING'
-     Refer to the most recent command preceding the current position in
-     the history list starting with STRING.
-
-`!?STRING[?]'
-     Refer to the most recent command preceding the current position in
-     the history list containing STRING.  The trailing `?' may be
-     omitted if the STRING is followed immediately by a newline.
-
-`^STRING1^STRING2^'
-     Quick Substitution.  Repeat the last command, replacing STRING1
-     with STRING2.  Equivalent to `!!:s/STRING1/STRING2/'.
-
-`!#'
-     The entire command line typed so far.
-
-
-\1f
-File: history.info,  Node: Word Designators,  Next: Modifiers,  Prev: Event Designators,  Up: History Interaction
-
-1.1.2 Word Designators
-----------------------
-
-Word designators are used to select desired words from the event.  A
-`:' separates the event specification from the word designator.  It may
-be omitted if the word designator begins with a `^', `$', `*', `-', or
-`%'.  Words are numbered from the beginning of the line, with the first
-word being denoted by 0 (zero).  Words are inserted into the current
-line separated by single spaces.
-
-   For example,
-
-`!!'
-     designates the preceding command.  When you type this, the
-     preceding command is repeated in toto.
-
-`!!:$'
-     designates the last argument of the preceding command.  This may be
-     shortened to `!$'.
-
-`!fi:2'
-     designates the second argument of the most recent command starting
-     with the letters `fi'.
-
-   Here are the word designators:
-
-`0 (zero)'
-     The `0'th word.  For many applications, this is the command word.
-
-`N'
-     The Nth word.
-
-`^'
-     The first argument; that is, word 1.
-
-`$'
-     The last argument.
-
-`%'
-     The word matched by the most recent `?STRING?' search.
-
-`X-Y'
-     A range of words; `-Y' abbreviates `0-Y'.
-
-`*'
-     All of the words, except the `0'th.  This is a synonym for `1-$'.
-     It is not an error to use `*' if there is just one word in the
-     event; the empty string is returned in that case.
-
-`X*'
-     Abbreviates `X-$'
-
-`X-'
-     Abbreviates `X-$' like `X*', but omits the last word.
-
-
-   If a word designator is supplied without an event specification, the
-previous command is used as the event.
-
-\1f
-File: history.info,  Node: Modifiers,  Prev: Word Designators,  Up: History Interaction
-
-1.1.3 Modifiers
----------------
-
-After the optional word designator, you can add a sequence of one or
-more of the following modifiers, each preceded by a `:'.
-
-`h'
-     Remove a trailing pathname component, leaving only the head.
-
-`t'
-     Remove all leading pathname components, leaving the tail.
-
-`r'
-     Remove a trailing suffix of the form `.SUFFIX', leaving the
-     basename.
-
-`e'
-     Remove all but the trailing suffix.
-
-`p'
-     Print the new command but do not execute it.
-
-`s/OLD/NEW/'
-     Substitute NEW for the first occurrence of OLD in the event line.
-     Any delimiter may be used in place of `/'.  The delimiter may be
-     quoted in OLD and NEW with a single backslash.  If `&' appears in
-     NEW, it is replaced by OLD.  A single backslash will quote the
-     `&'.  The final delimiter is optional if it is the last character
-     on the input line.
-
-`&'
-     Repeat the previous substitution.
-
-`g'
-`a'
-     Cause changes to be applied over the entire event line.  Used in
-     conjunction with `s', as in `gs/OLD/NEW/', or with `&'.
-
-`G'
-     Apply the following `s' modifier once to each word in the event.
-
-
-\1f
-File: history.info,  Node: Programming with GNU History,  Next: GNU Free Documentation License,  Prev: Using History Interactively,  Up: Top
-
-2 Programming with GNU History
-******************************
-
-This chapter describes how to interface programs that you write with
-the GNU History Library.  It should be considered a technical guide.
-For information on the interactive use of GNU History, *note Using
-History Interactively::.
-
-* Menu:
-
-* Introduction to History::    What is the GNU History library for?
-* History Storage::            How information is stored.
-* History Functions::          Functions that you can use.
-* History Variables::          Variables that control behaviour.
-* History Programming Example::        Example of using the GNU History Library.
-
-\1f
-File: history.info,  Node: Introduction to History,  Next: History Storage,  Up: Programming with GNU History
-
-2.1 Introduction to History
-===========================
-
-Many programs read input from the user a line at a time.  The GNU
-History library is able to keep track of those lines, associate
-arbitrary data with each line, and utilize information from previous
-lines in composing new ones.
-
-   The programmer using the History library has available functions for
-remembering lines on a history list, associating arbitrary data with a
-line, removing lines from the list, searching through the list for a
-line containing an arbitrary text string, and referencing any line in
-the list directly.  In addition, a history "expansion" function is
-available which provides for a consistent user interface across
-different programs.
-
-   The user using programs written with the History library has the
-benefit of a consistent user interface with a set of well-known
-commands for manipulating the text of previous lines and using that text
-in new commands.  The basic history manipulation commands are similar to
-the history substitution provided by `csh'.
-
-   If the programmer desires, he can use the Readline library, which
-includes some history manipulation by default, and has the added
-advantage of command line editing.
-
-   Before declaring any functions using any functionality the History
-library provides in other code, an application writer should include
-the file `<readline/history.h>' in any file that uses the History
-library's features.  It supplies extern declarations for all of the
-library's public functions and variables, and declares all of the
-public data structures.
-
-\1f
-File: history.info,  Node: History Storage,  Next: History Functions,  Prev: Introduction to History,  Up: Programming with GNU History
-
-2.2 History Storage
-===================
-
-The history list is an array of history entries.  A history entry is
-declared as follows:
-
-     typedef void *histdata_t;
-
-     typedef struct _hist_entry {
-       char *line;
-       char *timestamp;
-       histdata_t data;
-     } HIST_ENTRY;
-
-   The history list itself might therefore be declared as
-
-     HIST_ENTRY **the_history_list;
-
-   The state of the History library is encapsulated into a single
-structure:
-
-     /*
-      * A structure used to pass around the current state of the history.
-      */
-     typedef struct _hist_state {
-       HIST_ENTRY **entries; /* Pointer to the entries themselves. */
-       int offset;           /* The location pointer within this array. */
-       int length;           /* Number of elements within this array. */
-       int size;             /* Number of slots allocated to this array. */
-       int flags;
-     } HISTORY_STATE;
-
-   If the flags member includes `HS_STIFLED', the history has been
-stifled.
-
-\1f
-File: history.info,  Node: History Functions,  Next: History Variables,  Prev: History Storage,  Up: Programming with GNU History
-
-2.3 History Functions
-=====================
-
-This section describes the calling sequence for the various functions
-exported by the GNU History library.
-
-* Menu:
-
-* Initializing History and State Management::  Functions to call when you
-                                               want to use history in a
-                                               program.
-* History List Management::            Functions used to manage the list
-                                       of history entries.
-* Information About the History List:: Functions returning information about
-                                       the history list.
-* Moving Around the History List::     Functions used to change the position
-                                       in the history list.
-* Searching the History List::         Functions to search the history list
-                                       for entries containing a string.
-* Managing the History File::          Functions that read and write a file
-                                       containing the history list.
-* History Expansion::                  Functions to perform csh-like history
-                                       expansion.
-
-\1f
-File: history.info,  Node: Initializing History and State Management,  Next: History List Management,  Up: History Functions
-
-2.3.1 Initializing History and State Management
------------------------------------------------
-
-This section describes functions used to initialize and manage the
-state of the History library when you want to use the history functions
-in your program.
-
- -- Function: void using_history (void)
-     Begin a session in which the history functions might be used.  This
-     initializes the interactive variables.
-
- -- Function: HISTORY_STATE * history_get_history_state (void)
-     Return a structure describing the current state of the input
-     history.
-
- -- Function: void history_set_history_state (HISTORY_STATE *state)
-     Set the state of the history list according to STATE.
-
-\1f
-File: history.info,  Node: History List Management,  Next: Information About the History List,  Prev: Initializing History and State Management,  Up: History Functions
-
-2.3.2 History List Management
------------------------------
-
-These functions manage individual entries on the history list, or set
-parameters managing the list itself.
-
- -- Function: void add_history (const char *string)
-     Place STRING at the end of the history list.  The associated data
-     field (if any) is set to `NULL'.
-
- -- Function: void add_history_time (const char *string)
-     Change the time stamp associated with the most recent history
-     entry to STRING.
-
- -- Function: HIST_ENTRY * remove_history (int which)
-     Remove history entry at offset WHICH from the history.  The
-     removed element is returned so you can free the line, data, and
-     containing structure.
-
- -- Function: histdata_t free_history_entry (HIST_ENTRY *histent)
-     Free the history entry HISTENT and any history library private
-     data associated with it.  Returns the application-specific data so
-     the caller can dispose of it.
-
- -- Function: HIST_ENTRY * replace_history_entry (int which, const char
-          *line, histdata_t data)
-     Make the history entry at offset WHICH have LINE and DATA.  This
-     returns the old entry so the caller can dispose of any
-     application-specific data.  In the case of an invalid WHICH, a
-     `NULL' pointer is returned.
-
- -- Function: void clear_history (void)
-     Clear the history list by deleting all the entries.
-
- -- Function: void stifle_history (int max)
-     Stifle the history list, remembering only the last MAX entries.
-
- -- Function: int unstifle_history (void)
-     Stop stifling the history.  This returns the previously-set
-     maximum number of history entries (as set by `stifle_history()').
-     The value is positive if the history was stifled, negative if it
-     wasn't.
-
- -- Function: int history_is_stifled (void)
-     Returns non-zero if the history is stifled, zero if it is not.
-
-\1f
-File: history.info,  Node: Information About the History List,  Next: Moving Around the History List,  Prev: History List Management,  Up: History Functions
-
-2.3.3 Information About the History List
-----------------------------------------
-
-These functions return information about the entire history list or
-individual list entries.
-
- -- Function: HIST_ENTRY ** history_list (void)
-     Return a `NULL' terminated array of `HIST_ENTRY *' which is the
-     current input history.  Element 0 of this list is the beginning of
-     time.  If there is no history, return `NULL'.
-
- -- Function: int where_history (void)
-     Returns the offset of the current history element.
-
- -- Function: HIST_ENTRY * current_history (void)
-     Return the history entry at the current position, as determined by
-     `where_history()'.  If there is no entry there, return a `NULL'
-     pointer.
-
- -- Function: HIST_ENTRY * history_get (int offset)
-     Return the history entry at position OFFSET, starting from
-     `history_base' (*note History Variables::).  If there is no entry
-     there, or if OFFSET is greater than the history length, return a
-     `NULL' pointer.
-
- -- Function: time_t history_get_time (HIST_ENTRY *entry)
-     Return the time stamp associated with the history entry ENTRY.
-
- -- Function: int history_total_bytes (void)
-     Return the number of bytes that the primary history entries are
-     using.  This function returns the sum of the lengths of all the
-     lines in the history.
-
-\1f
-File: history.info,  Node: Moving Around the History List,  Next: Searching the History List,  Prev: Information About the History List,  Up: History Functions
-
-2.3.4 Moving Around the History List
-------------------------------------
-
-These functions allow the current index into the history list to be set
-or changed.
-
- -- Function: int history_set_pos (int pos)
-     Set the current history offset to POS, an absolute index into the
-     list.  Returns 1 on success, 0 if POS is less than zero or greater
-     than the number of history entries.
-
- -- Function: HIST_ENTRY * previous_history (void)
-     Back up the current history offset to the previous history entry,
-     and return a pointer to that entry.  If there is no previous
-     entry, return a `NULL' pointer.
-
- -- Function: HIST_ENTRY * next_history (void)
-     Move the current history offset forward to the next history entry,
-     and return the a pointer to that entry.  If there is no next
-     entry, return a `NULL' pointer.
-
-\1f
-File: history.info,  Node: Searching the History List,  Next: Managing the History File,  Prev: Moving Around the History List,  Up: History Functions
-
-2.3.5 Searching the History List
---------------------------------
-
-These functions allow searching of the history list for entries
-containing a specific string.  Searching may be performed both forward
-and backward from the current history position.  The search may be
-"anchored", meaning that the string must match at the beginning of the
-history entry.  
-
- -- Function: int history_search (const char *string, int direction)
-     Search the history for STRING, starting at the current history
-     offset.  If DIRECTION is less than 0, then the search is through
-     previous entries, otherwise through subsequent entries.  If STRING
-     is found, then the current history index is set to that history
-     entry, and the value returned is the offset in the line of the
-     entry where STRING was found.  Otherwise, nothing is changed, and
-     a -1 is returned.
-
- -- Function: int history_search_prefix (const char *string, int
-          direction)
-     Search the history for STRING, starting at the current history
-     offset.  The search is anchored: matching lines must begin with
-     STRING.  If DIRECTION is less than 0, then the search is through
-     previous entries, otherwise through subsequent entries.  If STRING
-     is found, then the current history index is set to that entry, and
-     the return value is 0.  Otherwise, nothing is changed, and a -1 is
-     returned.
-
- -- Function: int history_search_pos (const char *string, int
-          direction, int pos)
-     Search for STRING in the history list, starting at POS, an
-     absolute index into the list.  If DIRECTION is negative, the search
-     proceeds backward from POS, otherwise forward.  Returns the
-     absolute index of the history element where STRING was found, or
-     -1 otherwise.
-
-\1f
-File: history.info,  Node: Managing the History File,  Next: History Expansion,  Prev: Searching the History List,  Up: History Functions
-
-2.3.6 Managing the History File
--------------------------------
-
-The History library can read the history from and write it to a file.
-This section documents the functions for managing a history file.
-
- -- Function: int read_history (const char *filename)
-     Add the contents of FILENAME to the history list, a line at a time.
-     If FILENAME is `NULL', then read from `~/.history'.  Returns 0 if
-     successful, or `errno' if not.
-
- -- Function: int read_history_range (const char *filename, int from,
-          int to)
-     Read a range of lines from FILENAME, adding them to the history
-     list.  Start reading at line FROM and end at TO.  If FROM is zero,
-     start at the beginning.  If TO is less than FROM, then read until
-     the end of the file.  If FILENAME is `NULL', then read from
-     `~/.history'.  Returns 0 if successful, or `errno' if not.
-
- -- Function: int write_history (const char *filename)
-     Write the current history to FILENAME, overwriting FILENAME if
-     necessary.  If FILENAME is `NULL', then write the history list to
-     `~/.history'.  Returns 0 on success, or `errno' on a read or write
-     error.
-
- -- Function: int append_history (int nelements, const char *filename)
-     Append the last NELEMENTS of the history list to FILENAME.  If
-     FILENAME is `NULL', then append to `~/.history'.  Returns 0 on
-     success, or `errno' on a read or write error.
-
- -- Function: int history_truncate_file (const char *filename, int
-          nlines)
-     Truncate the history file FILENAME, leaving only the last NLINES
-     lines.  If FILENAME is `NULL', then `~/.history' is truncated.
-     Returns 0 on success, or `errno' on failure.
-
-\1f
-File: history.info,  Node: History Expansion,  Prev: Managing the History File,  Up: History Functions
-
-2.3.7 History Expansion
------------------------
-
-These functions implement history expansion.
-
- -- Function: int history_expand (char *string, char **output)
-     Expand STRING, placing the result into OUTPUT, a pointer to a
-     string (*note History Interaction::).  Returns:
-    `0'
-          If no expansions took place (or, if the only change in the
-          text was the removal of escape characters preceding the
-          history expansion character);
-
-    `1'
-          if expansions did take place;
-
-    `-1'
-          if there was an error in expansion;
-
-    `2'
-          if the returned line should be displayed, but not executed,
-          as with the `:p' modifier (*note Modifiers::).
-
-     If an error ocurred in expansion, then OUTPUT contains a
-     descriptive error message.
-
- -- Function: char * get_history_event (const char *string, int
-          *cindex, int qchar)
-     Returns the text of the history event beginning at STRING +
-     *CINDEX.  *CINDEX is modified to point to after the event
-     specifier.  At function entry, CINDEX points to the index into
-     STRING where the history event specification begins.  QCHAR is a
-     character that is allowed to end the event specification in
-     addition to the "normal" terminating characters.
-
- -- Function: char ** history_tokenize (const char *string)
-     Return an array of tokens parsed out of STRING, much as the shell
-     might.  The tokens are split on the characters in the
-     HISTORY_WORD_DELIMITERS variable, and shell quoting conventions
-     are obeyed.
-
- -- Function: char * history_arg_extract (int first, int last, const
-          char *string)
-     Extract a string segment consisting of the FIRST through LAST
-     arguments present in STRING.  Arguments are split using
-     `history_tokenize'.
-
-\1f
-File: history.info,  Node: History Variables,  Next: History Programming Example,  Prev: History Functions,  Up: Programming with GNU History
-
-2.4 History Variables
-=====================
-
-This section describes the externally-visible variables exported by the
-GNU History Library.
-
- -- Variable: int history_base
-     The logical offset of the first entry in the history list.
-
- -- Variable: int history_length
-     The number of entries currently stored in the history list.
-
- -- Variable: int history_max_entries
-     The maximum number of history entries.  This must be changed using
-     `stifle_history()'.
-
- -- Variable: int history_write_timestamps
-     If non-zero, timestamps are written to the history file, so they
-     can be preserved between sessions.  The default value is 0,
-     meaning that timestamps are not saved.
-
-     The current timestamp format uses the value of HISTORY_COMMENT_CHAR
-     to delimit timestamp entries in the history file.  If that
-     variable does not have a value (the default), timestamps will not
-     be written.
-
- -- Variable: char history_expansion_char
-     The character that introduces a history event.  The default is `!'.
-     Setting this to 0 inhibits history expansion.
-
- -- Variable: char history_subst_char
-     The character that invokes word substitution if found at the start
-     of a line.  The default is `^'.
-
- -- Variable: char history_comment_char
-     During tokenization, if this character is seen as the first
-     character of a word, then it and all subsequent characters up to a
-     newline are ignored, suppressing history expansion for the
-     remainder of the line.  This is disabled by default.
-
- -- Variable: char * history_word_delimiters
-     The characters that separate tokens for `history_tokenize()'.  The
-     default value is `" \t\n()<>;&|"'.
-
- -- Variable: char * history_search_delimiter_chars
-     The list of additional characters which can delimit a history
-     search string, in addition to space, TAB, `:' and `?' in the case
-     of a substring search.  The default is empty.
-
- -- Variable: char * history_no_expand_chars
-     The list of characters which inhibit history expansion if found
-     immediately following HISTORY_EXPANSION_CHAR.  The default is
-     space, tab, newline, carriage return, and `='.
-
- -- Variable: int history_quotes_inhibit_expansion
-     If non-zero, single-quoted words are not scanned for the history
-     expansion character.  The default value is 0.
-
- -- Variable: rl_linebuf_func_t * history_inhibit_expansion_function
-     This should be set to the address of a function that takes two
-     arguments: a `char *' (STRING) and an `int' index into that string
-     (I).  It should return a non-zero value if the history expansion
-     starting at STRING[I] should not be performed; zero if the
-     expansion should be done.  It is intended for use by applications
-     like Bash that use the history expansion character for additional
-     purposes.  By default, this variable is set to `NULL'.
-
-\1f
-File: history.info,  Node: History Programming Example,  Prev: History Variables,  Up: Programming with GNU History
-
-2.5 History Programming Example
-===============================
-
-The following program demonstrates simple use of the GNU History
-Library.
-
-     #include <stdio.h>
-     #include <readline/history.h>
-
-     main (argc, argv)
-          int argc;
-          char **argv;
-     {
-       char line[1024], *t;
-       int len, done = 0;
-
-       line[0] = 0;
-
-       using_history ();
-       while (!done)
-         {
-           printf ("history$ ");
-           fflush (stdout);
-           t = fgets (line, sizeof (line) - 1, stdin);
-           if (t && *t)
-             {
-               len = strlen (t);
-               if (t[len - 1] == '\n')
-                 t[len - 1] = '\0';
-             }
-
-           if (!t)
-             strcpy (line, "quit");
-
-           if (line[0])
-             {
-               char *expansion;
-               int result;
-
-               result = history_expand (line, &expansion);
-               if (result)
-                 fprintf (stderr, "%s\n", expansion);
-
-               if (result < 0 || result == 2)
-                 {
-                   free (expansion);
-                   continue;
-                 }
-
-               add_history (expansion);
-               strncpy (line, expansion, sizeof (line) - 1);
-               free (expansion);
-             }
-
-           if (strcmp (line, "quit") == 0)
-             done = 1;
-           else if (strcmp (line, "save") == 0)
-             write_history ("history_file");
-           else if (strcmp (line, "read") == 0)
-             read_history ("history_file");
-           else if (strcmp (line, "list") == 0)
-             {
-               register HIST_ENTRY **the_list;
-               register int i;
-
-               the_list = history_list ();
-               if (the_list)
-                 for (i = 0; the_list[i]; i++)
-                   printf ("%d: %s\n", i + history_base, the_list[i]->line);
-             }
-           else if (strncmp (line, "delete", 6) == 0)
-             {
-               int which;
-               if ((sscanf (line + 6, "%d", &which)) == 1)
-                 {
-                   HIST_ENTRY *entry = remove_history (which);
-                   if (!entry)
-                     fprintf (stderr, "No such entry %d\n", which);
-                   else
-                     {
-                       free (entry->line);
-                       free (entry);
-                     }
-                 }
-               else
-                 {
-                   fprintf (stderr, "non-numeric arg given to `delete'\n");
-                 }
-             }
-         }
-     }
-
-\1f
-File: history.info,  Node: GNU Free Documentation License,  Next: Concept Index,  Prev: Programming with GNU History,  Up: Top
-
-Appendix A GNU Free Documentation License
-*****************************************
-
-                     Version 1.3, 3 November 2008
-
-     Copyright (C) 2000, 2001, 2002, 2007, 2008 Free Software Foundation, Inc.
-     `http://fsf.org/'
-
-     Everyone is permitted to copy and distribute verbatim copies
-     of this license document, but changing it is not allowed.
-
-  0. PREAMBLE
-
-     The purpose of this License is to make a manual, textbook, or other
-     functional and useful document "free" in the sense of freedom: to
-     assure everyone the effective freedom to copy and redistribute it,
-     with or without modifying it, either commercially or
-     noncommercially.  Secondarily, this License preserves for the
-     author and publisher a way to get credit for their work, while not
-     being considered responsible for modifications made by others.
-
-     This License is a kind of "copyleft", which means that derivative
-     works of the document must themselves be free in the same sense.
-     It complements the GNU General Public License, which is a copyleft
-     license designed for free software.
-
-     We have designed this License in order to use it for manuals for
-     free software, because free software needs free documentation: a
-     free program should come with manuals providing the same freedoms
-     that the software does.  But this License is not limited to
-     software manuals; it can be used for any textual work, regardless
-     of subject matter or whether it is published as a printed book.
-     We recommend this License principally for works whose purpose is
-     instruction or reference.
-
-  1. APPLICABILITY AND DEFINITIONS
-
-     This License applies to any manual or other work, in any medium,
-     that contains a notice placed by the copyright holder saying it
-     can be distributed under the terms of this License.  Such a notice
-     grants a world-wide, royalty-free license, unlimited in duration,
-     to use that work under the conditions stated herein.  The
-     "Document", below, refers to any such manual or work.  Any member
-     of the public is a licensee, and is addressed as "you".  You
-     accept the license if you copy, modify or distribute the work in a
-     way requiring permission under copyright law.
-
-     A "Modified Version" of the Document means any work containing the
-     Document or a portion of it, either copied verbatim, or with
-     modifications and/or translated into another language.
-
-     A "Secondary Section" is a named appendix or a front-matter section
-     of the Document that deals exclusively with the relationship of the
-     publishers or authors of the Document to the Document's overall
-     subject (or to related matters) and contains nothing that could
-     fall directly within that overall subject.  (Thus, if the Document
-     is in part a textbook of mathematics, a Secondary Section may not
-     explain any mathematics.)  The relationship could be a matter of
-     historical connection with the subject or with related matters, or
-     of legal, commercial, philosophical, ethical or political position
-     regarding them.
-
-     The "Invariant Sections" are certain Secondary Sections whose
-     titles are designated, as being those of Invariant Sections, in
-     the notice that says that the Document is released under this
-     License.  If a section does not fit the above definition of
-     Secondary then it is not allowed to be designated as Invariant.
-     The Document may contain zero Invariant Sections.  If the Document
-     does not identify any Invariant Sections then there are none.
-
-     The "Cover Texts" are certain short passages of text that are
-     listed, as Front-Cover Texts or Back-Cover Texts, in the notice
-     that says that the Document is released under this License.  A
-     Front-Cover Text may be at most 5 words, and a Back-Cover Text may
-     be at most 25 words.
-
-     A "Transparent" copy of the Document means a machine-readable copy,
-     represented in a format whose specification is available to the
-     general public, that is suitable for revising the document
-     straightforwardly with generic text editors or (for images
-     composed of pixels) generic paint programs or (for drawings) some
-     widely available drawing editor, and that is suitable for input to
-     text formatters or for automatic translation to a variety of
-     formats suitable for input to text formatters.  A copy made in an
-     otherwise Transparent file format whose markup, or absence of
-     markup, has been arranged to thwart or discourage subsequent
-     modification by readers is not Transparent.  An image format is
-     not Transparent if used for any substantial amount of text.  A
-     copy that is not "Transparent" is called "Opaque".
-
-     Examples of suitable formats for Transparent copies include plain
-     ASCII without markup, Texinfo input format, LaTeX input format,
-     SGML or XML using a publicly available DTD, and
-     standard-conforming simple HTML, PostScript or PDF designed for
-     human modification.  Examples of transparent image formats include
-     PNG, XCF and JPG.  Opaque formats include proprietary formats that
-     can be read and edited only by proprietary word processors, SGML or
-     XML for which the DTD and/or processing tools are not generally
-     available, and the machine-generated HTML, PostScript or PDF
-     produced by some word processors for output purposes only.
-
-     The "Title Page" means, for a printed book, the title page itself,
-     plus such following pages as are needed to hold, legibly, the
-     material this License requires to appear in the title page.  For
-     works in formats which do not have any title page as such, "Title
-     Page" means the text near the most prominent appearance of the
-     work's title, preceding the beginning of the body of the text.
-
-     The "publisher" means any person or entity that distributes copies
-     of the Document to the public.
-
-     A section "Entitled XYZ" means a named subunit of the Document
-     whose title either is precisely XYZ or contains XYZ in parentheses
-     following text that translates XYZ in another language.  (Here XYZ
-     stands for a specific section name mentioned below, such as
-     "Acknowledgements", "Dedications", "Endorsements", or "History".)
-     To "Preserve the Title" of such a section when you modify the
-     Document means that it remains a section "Entitled XYZ" according
-     to this definition.
-
-     The Document may include Warranty Disclaimers next to the notice
-     which states that this License applies to the Document.  These
-     Warranty Disclaimers are considered to be included by reference in
-     this License, but only as regards disclaiming warranties: any other
-     implication that these Warranty Disclaimers may have is void and
-     has no effect on the meaning of this License.
-
-  2. VERBATIM COPYING
-
-     You may copy and distribute the Document in any medium, either
-     commercially or noncommercially, provided that this License, the
-     copyright notices, and the license notice saying this License
-     applies to the Document are reproduced in all copies, and that you
-     add no other conditions whatsoever to those of this License.  You
-     may not use technical measures to obstruct or control the reading
-     or further copying of the copies you make or distribute.  However,
-     you may accept compensation in exchange for copies.  If you
-     distribute a large enough number of copies you must also follow
-     the conditions in section 3.
-
-     You may also lend copies, under the same conditions stated above,
-     and you may publicly display copies.
-
-  3. COPYING IN QUANTITY
-
-     If you publish printed copies (or copies in media that commonly
-     have printed covers) of the Document, numbering more than 100, and
-     the Document's license notice requires Cover Texts, you must
-     enclose the copies in covers that carry, clearly and legibly, all
-     these Cover Texts: Front-Cover Texts on the front cover, and
-     Back-Cover Texts on the back cover.  Both covers must also clearly
-     and legibly identify you as the publisher of these copies.  The
-     front cover must present the full title with all words of the
-     title equally prominent and visible.  You may add other material
-     on the covers in addition.  Copying with changes limited to the
-     covers, as long as they preserve the title of the Document and
-     satisfy these conditions, can be treated as verbatim copying in
-     other respects.
-
-     If the required texts for either cover are too voluminous to fit
-     legibly, you should put the first ones listed (as many as fit
-     reasonably) on the actual cover, and continue the rest onto
-     adjacent pages.
-
-     If you publish or distribute Opaque copies of the Document
-     numbering more than 100, you must either include a
-     machine-readable Transparent copy along with each Opaque copy, or
-     state in or with each Opaque copy a computer-network location from
-     which the general network-using public has access to download
-     using public-standard network protocols a complete Transparent
-     copy of the Document, free of added material.  If you use the
-     latter option, you must take reasonably prudent steps, when you
-     begin distribution of Opaque copies in quantity, to ensure that
-     this Transparent copy will remain thus accessible at the stated
-     location until at least one year after the last time you
-     distribute an Opaque copy (directly or through your agents or
-     retailers) of that edition to the public.
-
-     It is requested, but not required, that you contact the authors of
-     the Document well before redistributing any large number of
-     copies, to give them a chance to provide you with an updated
-     version of the Document.
-
-  4. MODIFICATIONS
-
-     You may copy and distribute a Modified Version of the Document
-     under the conditions of sections 2 and 3 above, provided that you
-     release the Modified Version under precisely this License, with
-     the Modified Version filling the role of the Document, thus
-     licensing distribution and modification of the Modified Version to
-     whoever possesses a copy of it.  In addition, you must do these
-     things in the Modified Version:
-
-       A. Use in the Title Page (and on the covers, if any) a title
-          distinct from that of the Document, and from those of
-          previous versions (which should, if there were any, be listed
-          in the History section of the Document).  You may use the
-          same title as a previous version if the original publisher of
-          that version gives permission.
-
-       B. List on the Title Page, as authors, one or more persons or
-          entities responsible for authorship of the modifications in
-          the Modified Version, together with at least five of the
-          principal authors of the Document (all of its principal
-          authors, if it has fewer than five), unless they release you
-          from this requirement.
-
-       C. State on the Title page the name of the publisher of the
-          Modified Version, as the publisher.
-
-       D. Preserve all the copyright notices of the Document.
-
-       E. Add an appropriate copyright notice for your modifications
-          adjacent to the other copyright notices.
-
-       F. Include, immediately after the copyright notices, a license
-          notice giving the public permission to use the Modified
-          Version under the terms of this License, in the form shown in
-          the Addendum below.
-
-       G. Preserve in that license notice the full lists of Invariant
-          Sections and required Cover Texts given in the Document's
-          license notice.
-
-       H. Include an unaltered copy of this License.
-
-       I. Preserve the section Entitled "History", Preserve its Title,
-          and add to it an item stating at least the title, year, new
-          authors, and publisher of the Modified Version as given on
-          the Title Page.  If there is no section Entitled "History" in
-          the Document, create one stating the title, year, authors,
-          and publisher of the Document as given on its Title Page,
-          then add an item describing the Modified Version as stated in
-          the previous sentence.
-
-       J. Preserve the network location, if any, given in the Document
-          for public access to a Transparent copy of the Document, and
-          likewise the network locations given in the Document for
-          previous versions it was based on.  These may be placed in
-          the "History" section.  You may omit a network location for a
-          work that was published at least four years before the
-          Document itself, or if the original publisher of the version
-          it refers to gives permission.
-
-       K. For any section Entitled "Acknowledgements" or "Dedications",
-          Preserve the Title of the section, and preserve in the
-          section all the substance and tone of each of the contributor
-          acknowledgements and/or dedications given therein.
-
-       L. Preserve all the Invariant Sections of the Document,
-          unaltered in their text and in their titles.  Section numbers
-          or the equivalent are not considered part of the section
-          titles.
-
-       M. Delete any section Entitled "Endorsements".  Such a section
-          may not be included in the Modified Version.
-
-       N. Do not retitle any existing section to be Entitled
-          "Endorsements" or to conflict in title with any Invariant
-          Section.
-
-       O. Preserve any Warranty Disclaimers.
-
-     If the Modified Version includes new front-matter sections or
-     appendices that qualify as Secondary Sections and contain no
-     material copied from the Document, you may at your option
-     designate some or all of these sections as invariant.  To do this,
-     add their titles to the list of Invariant Sections in the Modified
-     Version's license notice.  These titles must be distinct from any
-     other section titles.
-
-     You may add a section Entitled "Endorsements", provided it contains
-     nothing but endorsements of your Modified Version by various
-     parties--for example, statements of peer review or that the text
-     has been approved by an organization as the authoritative
-     definition of a standard.
-
-     You may add a passage of up to five words as a Front-Cover Text,
-     and a passage of up to 25 words as a Back-Cover Text, to the end
-     of the list of Cover Texts in the Modified Version.  Only one
-     passage of Front-Cover Text and one of Back-Cover Text may be
-     added by (or through arrangements made by) any one entity.  If the
-     Document already includes a cover text for the same cover,
-     previously added by you or by arrangement made by the same entity
-     you are acting on behalf of, you may not add another; but you may
-     replace the old one, on explicit permission from the previous
-     publisher that added the old one.
-
-     The author(s) and publisher(s) of the Document do not by this
-     License give permission to use their names for publicity for or to
-     assert or imply endorsement of any Modified Version.
-
-  5. COMBINING DOCUMENTS
-
-     You may combine the Document with other documents released under
-     this License, under the terms defined in section 4 above for
-     modified versions, provided that you include in the combination
-     all of the Invariant Sections of all of the original documents,
-     unmodified, and list them all as Invariant Sections of your
-     combined work in its license notice, and that you preserve all
-     their Warranty Disclaimers.
-
-     The combined work need only contain one copy of this License, and
-     multiple identical Invariant Sections may be replaced with a single
-     copy.  If there are multiple Invariant Sections with the same name
-     but different contents, make the title of each such section unique
-     by adding at the end of it, in parentheses, the name of the
-     original author or publisher of that section if known, or else a
-     unique number.  Make the same adjustment to the section titles in
-     the list of Invariant Sections in the license notice of the
-     combined work.
-
-     In the combination, you must combine any sections Entitled
-     "History" in the various original documents, forming one section
-     Entitled "History"; likewise combine any sections Entitled
-     "Acknowledgements", and any sections Entitled "Dedications".  You
-     must delete all sections Entitled "Endorsements."
-
-  6. COLLECTIONS OF DOCUMENTS
-
-     You may make a collection consisting of the Document and other
-     documents released under this License, and replace the individual
-     copies of this License in the various documents with a single copy
-     that is included in the collection, provided that you follow the
-     rules of this License for verbatim copying of each of the
-     documents in all other respects.
-
-     You may extract a single document from such a collection, and
-     distribute it individually under this License, provided you insert
-     a copy of this License into the extracted document, and follow
-     this License in all other respects regarding verbatim copying of
-     that document.
-
-  7. AGGREGATION WITH INDEPENDENT WORKS
-
-     A compilation of the Document or its derivatives with other
-     separate and independent documents or works, in or on a volume of
-     a storage or distribution medium, is called an "aggregate" if the
-     copyright resulting from the compilation is not used to limit the
-     legal rights of the compilation's users beyond what the individual
-     works permit.  When the Document is included in an aggregate, this
-     License does not apply to the other works in the aggregate which
-     are not themselves derivative works of the Document.
-
-     If the Cover Text requirement of section 3 is applicable to these
-     copies of the Document, then if the Document is less than one half
-     of the entire aggregate, the Document's Cover Texts may be placed
-     on covers that bracket the Document within the aggregate, or the
-     electronic equivalent of covers if the Document is in electronic
-     form.  Otherwise they must appear on printed covers that bracket
-     the whole aggregate.
-
-  8. TRANSLATION
-
-     Translation is considered a kind of modification, so you may
-     distribute translations of the Document under the terms of section
-     4.  Replacing Invariant Sections with translations requires special
-     permission from their copyright holders, but you may include
-     translations of some or all Invariant Sections in addition to the
-     original versions of these Invariant Sections.  You may include a
-     translation of this License, and all the license notices in the
-     Document, and any Warranty Disclaimers, provided that you also
-     include the original English version of this License and the
-     original versions of those notices and disclaimers.  In case of a
-     disagreement between the translation and the original version of
-     this License or a notice or disclaimer, the original version will
-     prevail.
-
-     If a section in the Document is Entitled "Acknowledgements",
-     "Dedications", or "History", the requirement (section 4) to
-     Preserve its Title (section 1) will typically require changing the
-     actual title.
-
-  9. TERMINATION
-
-     You may not copy, modify, sublicense, or distribute the Document
-     except as expressly provided under this License.  Any attempt
-     otherwise to copy, modify, sublicense, or distribute it is void,
-     and will automatically terminate your rights under this License.
-
-     However, if you cease all violation of this License, then your
-     license from a particular copyright holder is reinstated (a)
-     provisionally, unless and until the copyright holder explicitly
-     and finally terminates your license, and (b) permanently, if the
-     copyright holder fails to notify you of the violation by some
-     reasonable means prior to 60 days after the cessation.
-
-     Moreover, your license from a particular copyright holder is
-     reinstated permanently if the copyright holder notifies you of the
-     violation by some reasonable means, this is the first time you have
-     received notice of violation of this License (for any work) from
-     that copyright holder, and you cure the violation prior to 30 days
-     after your receipt of the notice.
-
-     Termination of your rights under this section does not terminate
-     the licenses of parties who have received copies or rights from
-     you under this License.  If your rights have been terminated and
-     not permanently reinstated, receipt of a copy of some or all of
-     the same material does not give you any rights to use it.
-
- 10. FUTURE REVISIONS OF THIS LICENSE
-
-     The Free Software Foundation may publish new, revised versions of
-     the GNU Free Documentation License from time to time.  Such new
-     versions will be similar in spirit to the present version, but may
-     differ in detail to address new problems or concerns.  See
-     `http://www.gnu.org/copyleft/'.
-
-     Each version of the License is given a distinguishing version
-     number.  If the Document specifies that a particular numbered
-     version of this License "or any later version" applies to it, you
-     have the option of following the terms and conditions either of
-     that specified version or of any later version that has been
-     published (not as a draft) by the Free Software Foundation.  If
-     the Document does not specify a version number of this License,
-     you may choose any version ever published (not as a draft) by the
-     Free Software Foundation.  If the Document specifies that a proxy
-     can decide which future versions of this License can be used, that
-     proxy's public statement of acceptance of a version permanently
-     authorizes you to choose that version for the Document.
-
- 11. RELICENSING
-
-     "Massive Multiauthor Collaboration Site" (or "MMC Site") means any
-     World Wide Web server that publishes copyrightable works and also
-     provides prominent facilities for anybody to edit those works.  A
-     public wiki that anybody can edit is an example of such a server.
-     A "Massive Multiauthor Collaboration" (or "MMC") contained in the
-     site means any set of copyrightable works thus published on the MMC
-     site.
-
-     "CC-BY-SA" means the Creative Commons Attribution-Share Alike 3.0
-     license published by Creative Commons Corporation, a not-for-profit
-     corporation with a principal place of business in San Francisco,
-     California, as well as future copyleft versions of that license
-     published by that same organization.
-
-     "Incorporate" means to publish or republish a Document, in whole or
-     in part, as part of another Document.
-
-     An MMC is "eligible for relicensing" if it is licensed under this
-     License, and if all works that were first published under this
-     License somewhere other than this MMC, and subsequently
-     incorporated in whole or in part into the MMC, (1) had no cover
-     texts or invariant sections, and (2) were thus incorporated prior
-     to November 1, 2008.
-
-     The operator of an MMC Site may republish an MMC contained in the
-     site under CC-BY-SA on the same site at any time before August 1,
-     2009, provided the MMC is eligible for relicensing.
-
-
-ADDENDUM: How to use this License for your documents
-====================================================
-
-To use this License in a document you have written, include a copy of
-the License in the document and put the following copyright and license
-notices just after the title page:
-
-       Copyright (C)  YEAR  YOUR NAME.
-       Permission is granted to copy, distribute and/or modify this document
-       under the terms of the GNU Free Documentation License, Version 1.3
-       or any later version published by the Free Software Foundation;
-       with no Invariant Sections, no Front-Cover Texts, and no Back-Cover
-       Texts.  A copy of the license is included in the section entitled ``GNU
-       Free Documentation License''.
-
-   If you have Invariant Sections, Front-Cover Texts and Back-Cover
-Texts, replace the "with...Texts." line with this:
-
-         with the Invariant Sections being LIST THEIR TITLES, with
-         the Front-Cover Texts being LIST, and with the Back-Cover Texts
-         being LIST.
-
-   If you have Invariant Sections without Cover Texts, or some other
-combination of the three, merge those two alternatives to suit the
-situation.
-
-   If your document contains nontrivial examples of program code, we
-recommend releasing these examples in parallel under your choice of
-free software license, such as the GNU General Public License, to
-permit their use in free software.
-
-\1f
-File: history.info,  Node: Concept Index,  Next: Function and Variable Index,  Prev: GNU Free Documentation License,  Up: Top
-
-Appendix B Concept Index
-************************
-
-\0\b[index\0\b]
-* Menu:
-
-* anchored search:                       Searching the History List.
-                                                               (line 10)
-* event designators:                     Event Designators.    (line  6)
-* history events:                        Event Designators.    (line  8)
-* history expansion:                     History Interaction.  (line  6)
-* History Searching:                     Searching the History List.
-                                                               (line  6)
-
-\1f
-File: history.info,  Node: Function and Variable Index,  Prev: Concept Index,  Up: Top
-
-Appendix C Function and Variable Index
-**************************************
-
-\0\b[index\0\b]
-* Menu:
-
-* add_history:                           History List Management.
-                                                               (line 10)
-* add_history_time:                      History List Management.
-                                                               (line 14)
-* append_history:                        Managing the History File.
-                                                               (line 29)
-* clear_history:                         History List Management.
-                                                               (line 35)
-* current_history:                       Information About the History List.
-                                                               (line 18)
-* free_history_entry:                    History List Management.
-                                                               (line 23)
-* get_history_event:                     History Expansion.    (line 31)
-* history_arg_extract:                   History Expansion.    (line 46)
-* history_base:                          History Variables.    (line 10)
-* history_comment_char:                  History Variables.    (line 38)
-* history_expand:                        History Expansion.    (line  9)
-* history_expansion_char:                History Variables.    (line 30)
-* history_get:                           Information About the History List.
-                                                               (line 23)
-* history_get_history_state:             Initializing History and State Management.
-                                                               (line 15)
-* history_get_time:                      Information About the History List.
-                                                               (line 29)
-* history_inhibit_expansion_function:    History Variables.    (line 62)
-* history_is_stifled:                    History List Management.
-                                                               (line 47)
-* history_length:                        History Variables.    (line 13)
-* history_list:                          Information About the History List.
-                                                               (line 10)
-* history_max_entries:                   History Variables.    (line 16)
-* history_no_expand_chars:               History Variables.    (line 53)
-* history_quotes_inhibit_expansion:      History Variables.    (line 58)
-* history_search:                        Searching the History List.
-                                                               (line 13)
-* history_search_delimiter_chars:        History Variables.    (line 48)
-* history_search_pos:                    Searching the History List.
-                                                               (line 33)
-* history_search_prefix:                 Searching the History List.
-                                                               (line 23)
-* history_set_history_state:             Initializing History and State Management.
-                                                               (line 19)
-* history_set_pos:                       Moving Around the History List.
-                                                               (line 10)
-* history_subst_char:                    History Variables.    (line 34)
-* history_tokenize:                      History Expansion.    (line 39)
-* history_total_bytes:                   Information About the History List.
-                                                               (line 32)
-* history_truncate_file:                 Managing the History File.
-                                                               (line 35)
-* history_word_delimiters:               History Variables.    (line 44)
-* history_write_timestamps:              History Variables.    (line 20)
-* next_history:                          Moving Around the History List.
-                                                               (line 20)
-* previous_history:                      Moving Around the History List.
-                                                               (line 15)
-* read_history:                          Managing the History File.
-                                                               (line 10)
-* read_history_range:                    Managing the History File.
-                                                               (line 16)
-* remove_history:                        History List Management.
-                                                               (line 18)
-* replace_history_entry:                 History List Management.
-                                                               (line 29)
-* stifle_history:                        History List Management.
-                                                               (line 38)
-* unstifle_history:                      History List Management.
-                                                               (line 41)
-* using_history:                         Initializing History and State Management.
-                                                               (line 11)
-* where_history:                         Information About the History List.
-                                                               (line 15)
-* write_history:                         Managing the History File.
-                                                               (line 23)
-
-
-\1f
-Tag Table:
-Node: Top\7f1270
-Node: Using History Interactively\7f1915
-Node: History Interaction\7f2423
-Node: Event Designators\7f3847
-Node: Word Designators\7f4989
-Node: Modifiers\7f6628
-Node: Programming with GNU History\7f7853
-Node: Introduction to History\7f8596
-Node: History Storage\7f10286
-Node: History Functions\7f11421
-Node: Initializing History and State Management\7f12410
-Node: History List Management\7f13222
-Node: Information About the History List\7f15254
-Node: Moving Around the History List\7f16751
-Node: Searching the History List\7f17752
-Node: Managing the History File\7f19684
-Node: History Expansion\7f21504
-Node: History Variables\7f23412
-Node: History Programming Example\7f26444
-Node: GNU Free Documentation License\7f29121
-Node: Concept Index\7f54312
-Node: Function and Variable Index\7f55017
-\1f
-End Tag Table
diff --git a/lib/readline/doc/history.ky b/lib/readline/doc/history.ky
deleted file mode 100644 (file)
index e69de29..0000000
diff --git a/lib/readline/doc/history.log b/lib/readline/doc/history.log
deleted file mode 100644 (file)
index e053376..0000000
+++ /dev/null
@@ -1,189 +0,0 @@
-This is TeX, Version 3.141592 (Web2C 7.5.4) (format=tex 2008.12.11)  8 FEB 2011 11:10
-**/usr/homes/chet/src/bash/src/lib/readline/doc/history.texi
-(/usr/homes/chet/src/bash/src/lib/readline/doc/history.texi (./texinfo.tex
-Loading texinfo [version 2009-01-18.17]:
-\bindingoffset=\dimen16
-\normaloffset=\dimen17
-\pagewidth=\dimen18
-\pageheight=\dimen19
-\outerhsize=\dimen20
-\outervsize=\dimen21
-\cornerlong=\dimen22
-\cornerthick=\dimen23
-\topandbottommargin=\dimen24
-\headlinebox=\box16
-\footlinebox=\box17
-\margin=\insert252
-\EMsimple=\toks12
-\groupbox=\box18
-\groupinvalidhelp=\toks13
-\mil=\dimen25
-\exdentamount=\skip18
-\inmarginspacing=\skip19
- pdf,
-\tempnum=\count26
-\lnkcount=\count27
-\filename=\toks14
-\filenamelength=\count28
-\pgn=\count29
-\toksA=\toks15
-\toksB=\toks16
-\toksC=\toks17
-\toksD=\toks18
-\boxA=\box19
-\countA=\count30
-\nopdfimagehelp=\toks19
- fonts,
-\sffam=\fam8
-\textleading=\dimen26
- markup,
-\fontdepth=\count31
- glyphs,
-\errorbox=\box20
-
-page headings,
-\titlepagetopglue=\skip20
-\titlepagebottomglue=\skip21
-\evenheadline=\toks20
-\oddheadline=\toks21
-\evenfootline=\toks22
-\oddfootline=\toks23
- tables,
-\tableindent=\dimen27
-\itemindent=\dimen28
-\itemmargin=\dimen29
-\itemmax=\dimen30
-\itemno=\count32
-\multitableparskip=\skip22
-\multitableparindent=\skip23
-\multitablecolspace=\dimen31
-\multitablelinespace=\skip24
-\colcount=\count33
-\everytab=\toks24
- conditionals,
-\doignorecount=\count34
- indexing,
-\whatsitskip=\skip25
-\whatsitpenalty=\count35
-\secondaryindent=\skip26
-\partialpage=\box21
-\doublecolumnhsize=\dimen32
- sectioning,
-\unnumberedno=\count36
-\chapno=\count37
-\secno=\count38
-\subsecno=\count39
-\subsubsecno=\count40
-\appendixno=\count41
-\absseclevel=\count42
-\secbase=\count43
-\chapheadingskip=\skip27
-\secheadingskip=\skip28
-\subsecheadingskip=\skip29
- toc,
-\tocfile=\write0
-\contentsrightmargin=\skip30
-\savepageno=\count44
-\lastnegativepageno=\count45
-\tocindent=\dimen33
- environments,
-\lispnarrowing=\skip31
-\envskipamount=\skip32
-\circthick=\dimen34
-\cartouter=\dimen35
-\cartinner=\dimen36
-\normbskip=\skip33
-\normpskip=\skip34
-\normlskip=\skip35
-\lskip=\skip36
-\rskip=\skip37
-\nonfillparindent=\dimen37
-\tabw=\dimen38
-
-defuns,
-\defbodyindent=\skip38
-\defargsindent=\skip39
-\deflastargmargin=\skip40
-\defunpenalty=\count46
-\parencount=\count47
-\brackcount=\count48
- macros,
-\macscribble=\write1
-\paramno=\count49
-\macname=\toks25
- cross references,
-\auxfile=\write2
-\savesfregister=\count50
- insertions,
-\footnoteno=\count51
-\SAVEfootins=\box22
-\SAVEmargin=\box23
-
-(/sw/share/texmf-dist/tex/generic/epsf/epsf.tex
-\epsffilein=\read0
-\epsfframemargin=\dimen39
-\epsfframethickness=\dimen40
-\epsfrsize=\dimen41
-\epsftmp=\dimen42
-\epsftsize=\dimen43
-\epsfxsize=\dimen44
-\epsfysize=\dimen45
-\pspoints=\dimen46
-\epsfnoopenhelp=\toks26
-)
-\noepsfhelp=\toks27
- localization,
-\nolanghelp=\toks28
-\countUTFx=\count52
-\countUTFy=\count53
-\countUTFz=\count54
- formatting,
-\defaultparindent=\dimen47
-
-and turning on texinfo input format.) (./history.aux)
-\openout2 = `history.aux'.
-
-@cpindfile=@write3
-@fnindfile=@write4
-@vrindfile=@write5
-@tpindfile=@write6
-@kyindfile=@write7
-@pgindfile=@write8
- (./version.texi) [1
-\openout3 = `history.cp'.
-
-\openout4 = `history.fn'.
-
-\openout5 = `history.vr'.
-
-\openout6 = `history.tp'.
-
-\openout7 = `history.ky'.
-
-\openout8 = `history.pg'.
-
-]
-\openout1 = `history.tmp'.
-
-
-(./history.tmp) [2] (./history.toc) [-1] (./hsuser.texi Chapter 1
-\openout0 = `history.toc'.
-
-@btindfile=@write9
- [1
-\openout9 = `history.bt'.
-
-] [2])
-(./hstech.texi Chapter 2 [3] [4] [5] [6] [7] [8] [9] [10]) Appendix A [11]
-(./fdl.texi [12] [13] [14] [15] [16] [17] [18]) Appendix B [19] (./history.cps)
-Appendix C [20] (./history.vrs) [21] ) 
-Here is how much of TeX's memory you used:
- 1745 strings out of 97980
- 20843 string characters out of 1221004
- 66071 words of memory out of 1500000
- 2572 multiletter control sequences out of 10000+50000
- 32127 words of font info for 112 fonts, out of 1200000 for 2000
- 51 hyphenation exceptions out of 8191
- 15i,6n,14p,329b,490s stack positions out of 5000i,500n,6000p,200000b,5000s
-
-Output written on history.dvi (24 pages, 86016 bytes).
diff --git a/lib/readline/doc/history.pg b/lib/readline/doc/history.pg
deleted file mode 100644 (file)
index e69de29..0000000
diff --git a/lib/readline/doc/history.ps b/lib/readline/doc/history.ps
deleted file mode 100644 (file)
index 830078a..0000000
+++ /dev/null
@@ -1,4680 +0,0 @@
-%!PS-Adobe-2.0
-%%Creator: dvips(k) 5.95a Copyright 2005 Radical Eye Software
-%%Title: history.dvi
-%%Pages: 24
-%%PageOrder: Ascend
-%%BoundingBox: 0 0 595 842
-%%DocumentFonts: CMBX12 CMR10 CMTT10 CMSY10 CMMI12 CMMI10 CMCSC10 CMSL10
-%%+ CMSLTT10 CMSS10 CMTT9 CMR9 CMMI9
-%%DocumentPaperSizes: a4
-%%EndComments
-%DVIPSWebPage: (www.radicaleye.com)
-%DVIPSCommandLine: dvips -D 300 -o history.ps history.dvi
-%DVIPSParameters: dpi=300
-%DVIPSSource:  TeX output 2011.02.08:1110
-%%BeginProcSet: tex.pro 0 0
-%!
-/TeXDict 300 dict def TeXDict begin/N{def}def/B{bind def}N/S{exch}N/X{S
-N}B/A{dup}B/TR{translate}N/isls false N/vsize 11 72 mul N/hsize 8.5 72
-mul N/landplus90{false}def/@rigin{isls{[0 landplus90{1 -1}{-1 1}ifelse 0
-0 0]concat}if 72 Resolution div 72 VResolution div neg scale isls{
-landplus90{VResolution 72 div vsize mul 0 exch}{Resolution -72 div hsize
-mul 0}ifelse TR}if Resolution VResolution vsize -72 div 1 add mul TR[
-matrix currentmatrix{A A round sub abs 0.00001 lt{round}if}forall round
-exch round exch]setmatrix}N/@landscape{/isls true N}B/@manualfeed{
-statusdict/manualfeed true put}B/@copies{/#copies X}B/FMat[1 0 0 -1 0 0]
-N/FBB[0 0 0 0]N/nn 0 N/IEn 0 N/ctr 0 N/df-tail{/nn 8 dict N nn begin
-/FontType 3 N/FontMatrix fntrx N/FontBBox FBB N string/base X array
-/BitMaps X/BuildChar{CharBuilder}N/Encoding IEn N end A{/foo setfont}2
-array copy cvx N load 0 nn put/ctr 0 N[}B/sf 0 N/df{/sf 1 N/fntrx FMat N
-df-tail}B/dfs{div/sf X/fntrx[sf 0 0 sf neg 0 0]N df-tail}B/E{pop nn A
-definefont setfont}B/Cw{Cd A length 5 sub get}B/Ch{Cd A length 4 sub get
-}B/Cx{128 Cd A length 3 sub get sub}B/Cy{Cd A length 2 sub get 127 sub}
-B/Cdx{Cd A length 1 sub get}B/Ci{Cd A type/stringtype ne{ctr get/ctr ctr
-1 add N}if}B/CharBuilder{save 3 1 roll S A/base get 2 index get S
-/BitMaps get S get/Cd X pop/ctr 0 N Cdx 0 Cx Cy Ch sub Cx Cw add Cy
-setcachedevice Cw Ch true[1 0 0 -1 -.1 Cx sub Cy .1 sub]{Ci}imagemask
-restore}B/D{/cc X A type/stringtype ne{]}if nn/base get cc ctr put nn
-/BitMaps get S ctr S sf 1 ne{A A length 1 sub A 2 index S get sf div put
-}if put/ctr ctr 1 add N}B/I{cc 1 add D}B/bop{userdict/bop-hook known{
-bop-hook}if/SI save N @rigin 0 0 moveto/V matrix currentmatrix A 1 get A
-mul exch 0 get A mul add .99 lt{/QV}{/RV}ifelse load def pop pop}N/eop{
-SI restore userdict/eop-hook known{eop-hook}if showpage}N/@start{
-userdict/start-hook known{start-hook}if pop/VResolution X/Resolution X
-1000 div/DVImag X/IEn 256 array N 2 string 0 1 255{IEn S A 360 add 36 4
-index cvrs cvn put}for pop 65781.76 div/vsize X 65781.76 div/hsize X}N
-/p{show}N/RMat[1 0 0 -1 0 0]N/BDot 260 string N/Rx 0 N/Ry 0 N/V{}B/RV/v{
-/Ry X/Rx X V}B statusdict begin/product where{pop false[(Display)(NeXT)
-(LaserWriter 16/600)]{A length product length le{A length product exch 0
-exch getinterval eq{pop true exit}if}{pop}ifelse}forall}{false}ifelse
-end{{gsave TR -.1 .1 TR 1 1 scale Rx Ry false RMat{BDot}imagemask
-grestore}}{{gsave TR -.1 .1 TR Rx Ry scale 1 1 false RMat{BDot}
-imagemask grestore}}ifelse B/QV{gsave newpath transform round exch round
-exch itransform moveto Rx 0 rlineto 0 Ry neg rlineto Rx neg 0 rlineto
-fill grestore}B/a{moveto}B/delta 0 N/tail{A/delta X 0 rmoveto}B/M{S p
-delta add tail}B/b{S p tail}B/c{-4 M}B/d{-3 M}B/e{-2 M}B/f{-1 M}B/g{0 M}
-B/h{1 M}B/i{2 M}B/j{3 M}B/k{4 M}B/w{0 rmoveto}B/l{p -4 w}B/m{p -3 w}B/n{
-p -2 w}B/o{p -1 w}B/q{p 1 w}B/r{p 2 w}B/s{p 3 w}B/t{p 4 w}B/x{0 S
-rmoveto}B/y{3 2 roll p a}B/bos{/SS save N}B/eos{SS restore}B end
-
-%%EndProcSet
-%%BeginProcSet: texps.pro 0 0
-%!
-TeXDict begin/rf{findfont dup length 1 add dict begin{1 index/FID ne 2
-index/UniqueID ne and{def}{pop pop}ifelse}forall[1 index 0 6 -1 roll
-exec 0 exch 5 -1 roll VResolution Resolution div mul neg 0 0]FontType 0
-ne{/Metrics exch def dict begin Encoding{exch dup type/integertype ne{
-pop pop 1 sub dup 0 le{pop}{[}ifelse}{FontMatrix 0 get div Metrics 0 get
-div def}ifelse}forall Metrics/Metrics currentdict end def}{{1 index type
-/nametype eq{exit}if exch pop}loop}ifelse[2 index currentdict end
-definefont 3 -1 roll makefont/setfont cvx]cvx def}def/ObliqueSlant{dup
-sin S cos div neg}B/SlantFont{4 index mul add}def/ExtendFont{3 -1 roll
-mul exch}def/ReEncodeFont{CharStrings rcheck{/Encoding false def dup[
-exch{dup CharStrings exch known not{pop/.notdef/Encoding true def}if}
-forall Encoding{]exch pop}{cleartomark}ifelse}if/Encoding exch def}def
-end
-
-%%EndProcSet
-%%BeginFont: CMMI9
-%!PS-AdobeFont-1.1: CMMI9 1.100
-%%CreationDate: 1996 Jul 23 07:53:55
-% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
-11 dict begin
-/FontInfo 7 dict dup begin
-/version (1.100) readonly def
-/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def
-/FullName (CMMI9) readonly def
-/FamilyName (Computer Modern) readonly def
-/Weight (Medium) readonly def
-/ItalicAngle -14.04 def
-/isFixedPitch false def
-end readonly def
-/FontName /CMMI9 def
-/PaintType 0 def
-/FontType 1 def
-/FontMatrix [0.001 0 0 0.001 0 0] readonly def
-/Encoding 256 array
-0 1 255 {1 index exch /.notdef put} for
-dup 58 /period put
-readonly def
-/FontBBox{-29 -250 1075 750}readonly def
-currentdict end
-currentfile eexec
-D9D66F633B846A97B686A97E45A3D0AA0529731C99A784CCBE85B4993B2EEBDE
-3B12D472B7CF54651EF21185116A69AB1096ED4BAD2F646635E019B6417CC77B
-532F85D811C70D1429A19A5307EF63EB5C5E02C89FC6C20F6D9D89E7D91FE470
-B72BEFDA23F5DF76BE05AF4CE93137A219ED8A04A9D7D6FDF37E6B7FCDE0D90B
-986423E5960A5D9FBB4C956556E8DF90CBFAEC476FA36FD9A5C8175C9AF513FE
-D919C2DDD26BDC0D99398B9F4D03D5993DFC0930297866E1CD0A319B6B1FD958
-9E394A533A081C36D6F5CA5FED4F9AC9ADE41E04F9FC52E758C9F45A92BED935
-86F9CFDB57732045913A6422AD4206418610C81D882EE493DE9523CC1BFE1505
-DD1390B19BC1947A01B93BC668BE9B2A0E69A968554239B88C00AF9FBDF09CCD
-67D3B2094C11A04762FE8CC1E91D020A28B3C122D24BEAACF82313F4604F2FEF
-6E176D730A879BE45DD0D4996EF0247AEB1CA0AB08FF374D99F06D47B36F9554
-FAD9A2D3CE451B7791C3709D8A1DDDEFBD840C1B42AB824D5A0DFF0E0F15B0B7
-22AEEB877FF489581DA6FA8DA64944555101EB16F7AB0B717E148B7B98D8DBFD
-730C52937E226545CF8DC3E07C5BA30739BAFCD0F2B44275A6D503F582C0FB4F
-449963D0AD2FAFDE33BA3D77BCA9D1DF878DDAFCA2E22CC4BACD542B282164C7
-97C2BDE318AF9D501CA21F6E662E7AAB75A5F24D2C182E598D175D44E88AB19A
-E7CD59584F95B389183EE21B525BF52A3F23C0FE5383A5565A19361D716F508C
-AAB78411CA5A4D27552CC1C435760D5A89D535B71C593E755C616661363308DA
-A683F54ED0C23FB2C225A008392B0B719F66F11A946A090B7C00B662A3C69599
-B4ECB0CC70C85C4BBBF207E0026F6C7A19F2ACFB7A60804FC98A4BFFD7BFFF2B
-9529E6D9D4238002BBC255BC62959D6F3381FE06E0621B879D5FE5B541D45A1E
-759A6E7DC32B1D1632368D09A97039DF255B6492B1B2B7E2C1434E8306ECA7D3
-5A79B6D614B4979F10988BC76ED53A5F45315CD7DA216221F842FD0F3E050DD2
-BAC23C984D506D8F7D614BCB6B244F5F41321549BB0BD041FBF3053307168680
-3435E9C9445A59A7C666418C4F2512C32058B1CE1EA46C7839C6E372F6CC60AE
-2CF46DD2F130B532DE8ECD42D9204500E413799E298CF6426F28D23BB7216BEA
-1A618B3ECC61B44DDEF0BB22D640B47C09AC0DF378CE68FC9CD88BDAE9ED89CB
-431A5CF9C3E9528FEE7A9936C2B1CF7B38DD2B95773F0EA0051607BE1B0B3588
-A8B907A5EF011B4622C5093A7B107DD1EED6FEE9536DECF1CC96E65373D0F433
-30AE3C094654ABF4698C07F8C74E71D023DFD242EE83B1306786124DD8C6BFA7
-801E66CB944BE7EBCB3FE803EC97067AF7AFC8A4E9AC9D11
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-cleartomark
-%%EndFont 
-%%BeginFont: CMR9
-%!PS-AdobeFont-1.1: CMR9 1.0
-%%CreationDate: 1991 Aug 20 16:39:59
-% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
-11 dict begin
-/FontInfo 7 dict dup begin
-/version (1.0) readonly def
-/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def
-/FullName (CMR9) readonly def
-/FamilyName (Computer Modern) readonly def
-/Weight (Medium) readonly def
-/ItalicAngle 0 def
-/isFixedPitch false def
-end readonly def
-/FontName /CMR9 def
-/PaintType 0 def
-/FontType 1 def
-/FontMatrix [0.001 0 0 0.001 0 0] readonly def
-/Encoding 256 array
-0 1 255 {1 index exch /.notdef put} for
-dup 49 /one put
-dup 53 /five put
-dup 54 /six put
-dup 55 /seven put
-dup 56 /eight put
-dup 57 /nine put
-dup 72 /H put
-dup 83 /S put
-dup 97 /a put
-dup 99 /c put
-dup 100 /d put
-dup 101 /e put
-dup 103 /g put
-dup 104 /h put
-dup 105 /i put
-dup 110 /n put
-dup 111 /o put
-dup 112 /p put
-dup 114 /r put
-dup 115 /s put
-dup 116 /t put
-dup 118 /v put
-dup 120 /x put
-dup 121 /y put
-readonly def
-/FontBBox{-39 -250 1036 750}readonly def
-currentdict end
-currentfile eexec
-D9D66F633B846A97B686A97E45A3D0AA052A014267B7904EB3C0D3BD0B83D891
-016CA6CA4B712ADEB258FAAB9A130EE605E61F77FC1B738ABC7C51CD46EF8171
-9098D5FEE67660E69A7AB91B58F29A4D79E57022F783EB0FBBB6D4F4EC35014F
-D2DECBA99459A4C59DF0C6EBA150284454E707DC2100C15B76B4C19B84363758
-469A6C558785B226332152109871A9883487DD7710949204DDCF837E6A8708B8
-2BDBF16FBC7512FAA308A093FE5CF7158F1163BC1F3352E22A1452E73FECA8A4
-87100FB1FFC4C8AF409B2067537220E605DA0852CA49839E1386AF9D7A1A455F
-D1F017CE45884D76EF2CB9BC5821FD25365DDEA6E45F332B5F68A44AD8A530F0
-92A36FADB679CF58BAFDD3E51DFDD314B91A605515D729EE20C42505FD4E0835
-3C9D365B14C003BC6DD352F0228A8C161F172D2551CD1C67CD0B1B21DED53203
-046FAFF9B1129167921DD82C5964F9DDDFE0D2686875BD075FC81831A941F20E
-C5CD90040A092E559F6D1D3B0E9BB71733595AE0EA6093F986377A96060BF12A
-A1B525CD9FA741FE051DD54A32BECD55A868DD63119A4370F8322CCBEC889BC2
-A723CB4015FC4AA90AE873EA14DE13382CA9CF0D8DFB65F0ABEDFD9A64BB3F4D
-731E2E1C9A1789228FF44116230A70C339C9819676022AB31B5C9C589AE9094B
-09882051AD4637C1710D93E8DD117B4E7B478493B91EA6306FDB3FA6D738AAB1
-49FBB21A00AC2A999C21445DE3177F21D8B6AAB33869C882613EA6B5EC56476B
-5634181ECBF03BFEDB57F079EACE3B334F6F384BDF9D70AEBD592C8ECF21378B
-54A8B5DBF7CB9282E16AA517E14843909339B5E7C55B038BF3BB493F3B884A1C
-C25F9E8FB912CBE23199AD9D2C3E573727701BA301526C66C3617B9514D6F11F
-11930B1D97C17816C85B1BFD9B973A191B33CC3B391815AD14F1CBE935942AEC
-D4004E6BEF379066FD72209DC88D2E634E79BCC2B98C766CBD92C561F2703F8A
-109E6C6CEC7B866F2FC7ADF646BF492E520319F3B949AB5D84AE990B33344A40
-3971F58DFDF8D8D67FA0B8F2A0D884F8C09A5A721319B911DBA0A35903877343
-C37BC36C5EB32353272D1E6ED5FCA611BE319A7E1E842CB7576E7CCFF73F4DA0
-79C95BA59FE28B4C215985B32DD3AF0843AA8D257E97A12C37A7E5F07FA3B46B
-76D85FB41CD90FFCADEC92F5D8AB1109D99E4251F4D0DC2693AF1404DF49B308
-49D7516DC2391D5FFDF9B75C589BD3C4DAFF2DC0F2D809EF9A864E1D8AF48514
-48C90D75A4168D99D07A6BAE0A6E46D0B2681C0A634A2A11FE8CB3E9645E42B7
-CEC0F081EF5EC0275B5A363ADD57B1DF5CC39EE580C9000FD3E84A8659A49F58
-FE78EFBF8A587984581BF7FBD76B2FA7E0E345D939FAAF781E8E463A761E2B8A
-923ECD676EDCB340CEA6F6BC95CDFA5591CD4162E62E18BF99D95D82965CE96F
-01C4FCAE8D710D0C822DC1FB7CEBE6D5A6571CF5E1E4E09AD669AE9B5C541AD4
-BDBD4521F87CCB6594BC9651164B9A8936BB472E2D0FFDA1321DA3705BF338D8
-754EB9BA0E027AEC143ED0DF0AB63723C8782C7F6934454F66616B0AB11DC672
-CE8DD3B7BD53E293E684111FB679A8DB9B7F5BE0DE2D885AD61E5F5E6A531A2A
-59B88E09B24B382E0B82CB1ED14C4CBDC42740242D4BB659089119E173C18D06
-E4899FA22620159BE2F93957CC35200EE2DBECB50C2DB46865DB2DA806AE9526
-C95993E81BC219108C9E60C391C09A2204B5ED2FF07738B595778FDAD688C239
-E5D88498FFFA562F84B4EB2A438A5E6E53B8AE37B8DE3645AD5177A951F3F482
-C1DEBC090071106307630FBC73042C45EF0F0207731EB7353A7CC574927DA574
-9288D70E163B7E1B6BA00F00A646223F7F65BCC37549289259D8C6ACEDF9E13D
-8F48262F4F2819D01074196106CF0C546FB97805917EA2CE1366A960CA1C2D75
-8040F3680B0964A51762FE7298A9448E48B966331FFA31287D03EFD57C4817EB
-48045F3FD8CF3CEC740ACA4374D0BDC29924D0101BD332B356724F96FD16C13B
-6FE70C2419A5464E2768DD68B74E4D5621466E75F481CCBB9F83DAD4BDE54AE6
-91139AFBF6B0218F6697E47679BDE65BE25E8ECC20458CE11DC7899599363280
-041D8B49C2B043D793F9FDC915435459BE783A939AA081BB60FFB3B0AD4C65DF
-427A7D92DBE1096F8AD111C7F06816EA2B3688C61AE0F27BE9AAFD036FCAA6EF
-D5EE4C5E611ABBAB378EE8FACC3C23CDF16020982BF22993240DF28CBBB3CCD6
-64505D48B9716873A8CA7610A7DDC2B5BEB9C859B49C14575B37189A0721BD17
-F36B1C88B495F55C19A581895FF86D04D76978DADB486ADE888480F3975FC604
-DC69CE386B57CC759B5755C527EB2BB56BC4CC3AC8256DC6666EF865096E349F
-9E3BA0A9B30F09295C36FBEFF2211D917125551626617C456ADE8C3C46087D66
-A119C924376A77E5B10D777FE4DD91EDA4411244E0733A0D6DEAEA2545E291A5
-E3F92C307A9C04ED7228D468FC1649D969E90CFC3FA0EC2C88E399EA78BC65CB
-3218D1DF850F8A005242543C6F983FF6DB070A841F63820A78E7971683D63225
-ED7DCBEA8130B104E25A3BB4E0F457E2A8A093539A029152EE906560A86C3219
-89D6E9A963322841F713973D0B19E9439AEC3935DA60B5BDE44139B95FECD321
-2CCD7C9473CA7490EC44D30DED292F8F759EA500AADE2334D188E6ECEFF4491D
-9227153BC250BA7D9EB7C0411723B1EE76A9D86DF8530A9277D9D086B7C4ECD9
-861D1A9CD9AD967B312EED0896876184ADD6351AD7446E2D37A408C19CC687CC
-268589DF450E40B9BD1634C5102040796F7D22D137B6513AF9D6B34559A1B88A
-81B8F01D89EF4FF9271D19099D74327E44A9CFE0F281E4951FFDDA041346800A
-F5BFB4F7D42CF9F641F3DA3D1083579E798DDF968C53C1A72B573976A5560191
-7FE836812ED2AB13EC910BE239A36CDB8E478234E4B1C39AEABB5C1F8887C271
-1AA961C65B513E835D52268905C2BB3BB5F570C91DEB1D35A3B4CC633E28B1CB
-33F72D80E60FCC08BE630592C6B0A12785CC3E3FCD71B8BC680899B19D4D707C
-46B7D0BC251A150C06F2ACAF15FBA0A4024BA2C8BFA0EAB2CF7C1DC9CF33E63B
-738CFCB2B2BF14C37CA935CAA4707E6BC6C39B598019773857813EFA1AAEB74D
-C40F0329414136910D9B6E3E02C5DFAF6690FDFA55ADDFF5BC7C1917D8996533
-538DC0B629CEA825B08E8D1882ECB52BE3299BE56328A142389F7208947CA6AC
-CCF49F921B53906F58F2E9AB253D500EC125DD62D5E1BCAAE973B429E151B119
-29A6A61071C6AC1F6D61CE434DBD7F205B4496E744E1DF205183F7EB546516FA
-A0A8054D72FF4A7A579134ACDC1DD61E8D28065AC34FBE04CD8366884FFCD595
-13D5C429E0C68098CE3D0E5B9533B5D166894D9958C1B9D384257A30316F925A
-40229CC8665CECB8440118700CA8C98091B6C2B117027E7CBF069C31292D4C6A
-A7C311C4D52FF847B25739633FE51C724DFAC6F26ACBD3588AB6FC886A7D0530
-2ECD82855ED3FBA5CBCC797051EA514F45CC8F9593ADD302E3BA79C8E46FD22B
-37A2F21F07D35CB9DD8529E5018AFCF3AB1765F170D02E03F79B75882906CA02
-A75DED91B4670926FE6FEA4DEDF80BE3849D3D615917BE4742E594A3496C2446
-F76BA5AF5714D9A091111AE1F6628DB7A952E44254EFBCBDEAB492C902DB272A
-1C1E8FA0807874100B03C404F158C9916C9D4ACA59F7BB0A5299C73795CADFC6
-7CF2E2BEDC4BCD537BD0E1E624CAB0811DB45DB36F8C0FA0772AC33994ADBC72
-63C4E6A12439C9F43B71191A767579E1FD06382C1DC06A7C69A8858AB47E04D2
-9EC7D01A045CE7A04A39AEC3806B731D7DB53CB8469630604CC0D198753CAA49
-E1B55F06650945E03909EB79F1E2232077B9F1BBC8860553C47726EED45CD944
-966814E30C9CAE2AE1F1BC6018DA252D4C1E0F6D54929165F39858448258A628
-E278A01300312F43762795CA0D5E5AD3F3AE19883D9065BEEBAA6D8F7CDC4AE4
-4C8D39277111749AB7E2A568620EBD7DCB76836F244D9720C4EB0B9100DD7B0A
-6AC2B75AE80E6406102EF019B5B28CA14D853A8D9957129C4BF0EF3EFBA7EB0C
-9317B11BB69CB98671518A3847981A027245914B7C0238E9A4E3A5169EE63C6B
-B6645144DE0B73A8A4BC6F9CD21BF9FB6CAFE2CC742E733952EF4E725524B7EE
-9AA2CF272C835CB79C5E403CEF9D74FF0C7436EBAB6209BD13BC7A9BDFA02ED1
-A233E6646837D9C4C1CCE1D813094C2A88B3B57AC7EDF1EC376696A52AE96FB2
-ADAA12270964E5A5E8C32470166BED504F477A8E37F72826B5D5AD1E17F5D140
-421EFAEAA061618E347B35AA46C1E915F8AB517AE828B2349B99DBECE6B8302F
-CCEE90FE666B6CA4712C50B1CCF582EBC5432D26C5E560835508CD13B0F43760
-85A50F0733C35C7CFE1B952DBEAEBD6A6EA43F6AAC2E75F9D03A61F774375F43
-3041544C07FF105E1DE4D50D9C46FC90BBB20A7486807F6E5B115B33FF3E5492
-8729F0D1C8FCF5DAA180E59112061EE6ECFB6C0748B01DF68BD6F76D4AB5195F
-BD58A37A3EEADF9E05F81BE571F731977ED04D4D4DB7B51DD10FE351D02C5090
-3B0B41E0C3BFF3230014FAA0FB1402A8EC6106E78DBFD410A979AA5211AFF01E
-E446615E2BA8FAB7BE9C7224F5F6C678AD509DF20BD0AD887E8804F806439A7A
-12E9A4EC2044C329410900A869CD878B84E92D0EE8EED95166C4233F5AA3AAD5
-07C42C19FC4790178E4C2DA81CEB2382055828789CD471D79DEA1EE6D11BB7AA
-F8035405CA79C679A202D800DAD046092A5B1AF6472B94B62873EB6C0EC8683A
-159BEB9FB3F57EE16C1738DBD684F5EC321B24AEBD8259754B01E6DB7868674C
-7A9B25FCC54F45D825AC044561783544B8ADC7D6DED3B41A843416CF55B3F8DC
-9285E181671642CAAD8769A4C916282B227940C1C29DCC3E02D051ABFA3B3CED
-6BD69676873A346C43A9611435E2AD636BB12187F72644F8FAF40F65ED2B2751
-78BF371854AAC8BFE285D68435D5DBF1A34161E2347CB3CC1503C3A2214213D1
-21FE71AFB26AF7DACB02541D900D4D6B0153524D2A17C917EF83791C6AB3248D
-10A837A4CEC4F158F2C40BCCEBB9E7175485C889B90461E4147F1C5EE68B85F0
-19D0E7263C5498C72703A9720F25D38EC8893D24D5BD3088D63A10815D43DC9C
-0D4F6C4AE46F9DBB75D087CFE6A521182669099A11216DCCBFFE770CD2579C3D
-BD41B35E5F8205034D8F2120BEA9FB72C6715B1FC6A8318AE58A07B3D6C85F7F
-A15B4E55AEF566827DF641DB7FAC8A2782F2132FF7EB976970BF6ED4D494B85B
-B9B8DFA4FFCDC6F3756A13DF7E596D80997F1C88D8E3F0F95F8356F7B490282A
-A07F4CE85331FCDDEAB7C60F6FA62FAF354EB86B82BEE3654BC45B111D57D6FE
-A6F3F2C203CE6190BBB92A365DC217F5701B7481923788607272A7D05AE622BF
-D523A58EA6BB16344978158697F94DCECA6AEC487351227E46598F07551D384B
-F08136A37ADC06747F61A35DD3EA337DAC79A183075B889E2FEB2E4B410C229D
-803BDAD9894B94F65735E67BC07652B7D9ACC7A11A7C8A55318DF65775B5168B
-5875C955D9FB09E01A13D66D8BD05C588A85A2B18B29CAD6681EA6F4B5B36A49
-BD8C65E8CAD928E3AD315E1B3E0AE8CE319FC0FE7D9C0F66335F69BA4C257FCD
-490F8BC096E21AFCD49C02624B3E7373BE0D3AC204B97DF6C4F73AD3C1E937B3
-95A4EC7DCC051BDD976586546B2827FDBFE123F104491536D816185CE115ED94
-402614E5293D0EC1B6CEE1B955260A18B96F6D5D825FB029E1A5CFEB5476EB50
-EFF2341C9737C5FAB195E37136E2957831CD8F67499AEC281FA14260B3D3EBC1
-64918B9C5D104267FE176609AC63D067CB70749348C2877A2E88ABE087B4F0B3
-B462F4970D0903A3D4821EDE9C9B05026FEC969A03E816D6DFE60C1234A65F73
-8A9F0BFA7DD6A9F971BAF5256187D052401D76462CDE3C3A17EB3A4ADAC404DE
-93D475CE0F1ACA1E328A104AC443618C43971E39F9BF2C93F86D6B45220AA4FC
-1E4DE67F8D376C595E5F4B1492ADFCFDA4C55AA2396D1F7F7E6403F25536F1BA
-6EB8937426C0B79B67EE7F46660581262B6029EAA0375A6A900406DC10E3B990
-165C68DAC5EC15DDC7CABA62D5446F154F89BD6E02AA9754F229CBF95638A25E
-1592A49481D4F106571576827E44B1B3C8DA2B2DBE187F2E9B3BAB2E039235A7
-45AD875F1B31344D4C8B7F19F1EA136B295345D36B106FBF61373DE31D72D99A
-9F5E6EBDBC5FE6187E5B6034442B70059CE2BCBA450584D536208BB7983A2C52
-66864CDCAAC8002B324427DA2AA3CB36A90E067A248FCFE4B6785E49F4DDD41D
-F46D7AE9EAD03D90992CCCFF0E66102AB6B94D9CC62217B8B34BD122B90E5CB7
-07A162C3587EC865ABE9492797DE9D8DDF0DAC66A483085F655F4A4FD69881FC
-2E8A423274F13AAF3BF3F49BA1C9F024FD2345FFDD38D6EC84AEC0703CA69DD1
-1C97FF1EA61A666F71C26DDD2264E41EC93CC78EEFFA4E480D2D2F8CD9CA8D59
-981F74F72D32CB11DCB6B4DBDC078E217F9CF855E76E3659AF9D67D324C1E1EC
-50E3C01BA9E7BF9903DD9FBEDA1EC697552DA8F6E896E0ED71A6567AB628116A
-B7E655313314A41B8B8652183C25339C20CCDD74EAE7F27EA7C9E9FADA0F70F4
-020C01ED0E8B6A21CB8ABED9F2D48444C3310D60BE710AD201A54C3CE00887C4
-7614A7B580A592F7E301E4696A5EA91D81F6FDED33701B0456F3821A0B8504FB
-ACD91717FD661469F8325368F9DEEC474971B374190FD0865448D9B611816F05
-382140C6A07A56DEE5ACD88851E21B6281C7FDC21ECBBFC2A2B4C60AC16A1DF2
-C68BC43F81027085079178C2ADE5C84B036390C99E612F9E8F49BD0ABE1D5977
-46BD62652E29FA9E515601B81C7DA9245F102B7D939F91436803976AF3C787C0
-3DBCC9EF6EE197A13D136BFDA523A2194D8F60EAA75247FB44C575DB6202C466
-BF04D9153E4A7B742DD2FC75C1E7FAF9715EA53A2540B800D7305848EAC5B0A3
-AD838B481254E0D65A6F6602218C0CC6ADCAF7FA534EFDA315882376950390C1
-BC208247E5B7912729
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-cleartomark
-%%EndFont 
-%%BeginFont: CMSLTT10
-%!PS-AdobeFont-1.1: CMSLTT10 1.0
-%%CreationDate: 1991 Aug 20 16:41:43
-% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
-11 dict begin
-/FontInfo 7 dict dup begin
-/version (1.0) readonly def
-/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def
-/FullName (CMSLTT10) readonly def
-/FamilyName (Computer Modern) readonly def
-/Weight (Medium) readonly def
-/ItalicAngle -9.46 def
-/isFixedPitch true def
-end readonly def
-/FontName /CMSLTT10 def
-/PaintType 0 def
-/FontType 1 def
-/FontMatrix [0.001 0 0 0.001 0 0] readonly def
-/Encoding 256 array
-0 1 255 {1 index exch /.notdef put} for
-dup 49 /one put
-dup 50 /two put
-dup 97 /a put
-dup 100 /d put
-dup 101 /e put
-dup 102 /f put
-dup 103 /g put
-dup 104 /h put
-dup 105 /i put
-dup 108 /l put
-dup 109 /m put
-dup 110 /n put
-dup 111 /o put
-dup 114 /r put
-dup 115 /s put
-dup 116 /t put
-dup 117 /u put
-dup 119 /w put
-dup 120 /x put
-dup 121 /y put
-readonly def
-/FontBBox{-20 -233 617 696}readonly def
-currentdict end
-currentfile eexec
-D9D66F633B846A97B686A97E45A3D0AA0528A405DF15F03DB1C3DA8B850431F8
-0E5F73DAC973450D1ED0530313057E971FC7E7CA88E61DA6DB9A5CD61F0F76CB
-4DE9105D0627B8DDF51A655098229920CF429CDAFC3F7788C95E7AB30E84F840
-8CED52E98DB4CFF161D2E62B0D28CB8B0AC82E7A8D2C007953BAFB3056D66079
-8064956E257D31C13509FB81A250D9E875C77A4E91CC49E9FB3C0718B2F691D4
-B4A64F351F4DD68133DED7629B0D96E5124584A16FD2AC7A3EB244A934FF059F
-ED7297B0505F3C2994AD66A3CA5D2728B034DE94B64A8AFAF341601BD4DB5858
-C9950A8BB9C598B8960609F48116ABA8C007190AF0ED335EB5BF61BA6871FA5F
-EAB5A26AEB5C7C352EB80799CEB983F19EEFA801093F62086AADD0B80BB6580F
-2CF61B1390FA56DFA1A0B61C58DEF96BA767A8A37EA44730783C600706606C60
-4EE74EA99B7C0F8E2525C8847F3D31907C3C483EFA98F6C416B6B2C343DE6370
-52FAE423008D086A76A1FFB327CC7FD84B1C66B203A4F41582F4599A82F8362D
-38108452EACCC937FFC4F3ABBFE3628DF51367DA6BA3F6826FC6522D6AC5E8EA
-00BAD300FFB6DEDAB93237704202BACD030AA824B1E97C0AFE17FCE8C75F4FA0
-B8A74329A6CF1788C7EB34DA7307411E9AD7ED8D6582884456E06E033B4FFE7D
-CD4DD8B06AD01340CCCFBC382C18CA451E4C886B01D082FF8CC5793F4727C3DF
-B52B4F1A242F31D1EB79D1E39A1D4FD13D6C5E2A42AD4B4D1CC4EE7BA0E5F80F
-802E5AB57EA15F4DE44D82AC408AA86D4BF58EF967FBC6497BBC7F017C0598AE
-32CF865DFFF0FC7FF9E6DCE9B5F2F4C7491AC674F46E8E7660452CE0A77C1EE8
-00DE382ABED85350033F8ECB97398E4E0A75D4877A107F6A909D0C76D14F9A96
-8A6CFDE3FD9D79B6FD82693A9F354BD2ECF30C6D99F7AC522F8D6C93EA214F7B
-3D0ED77F042ACDE9414264C0698E86398562E2C640DEBBA0734AB4C3ACE3907D
-CC79E6B2C6C3C3F9B01526E8CD98237D4A9B403FF8CE3132222FA60C196A19BC
-A2393AE6935C0F8B67FC1D1A13507C100403B61A82AB0165B072581059B844EE
-CE34C714DB54843CA29B306D373EA67C2F6842FC3FE75898FB80AE43E689F641
-ACB7715CF595C8ADDF68D8D5DBF99528FC4FAE495ACEAC9E0B61971641EF17A0
-4015E263840C96C1F2ECC22A3368F9E0A31475185420560CBEE9639AB9280831
-69636C32D1F3E397FF45DD97FAB9222771EC4C50F45E8DCE4BB761DA258F936A
-1067924AD9A066E11FA841E0258039BF264DB97EA12311A8AE9428DBD5A0EEAD
-12915888C3BC3E25EF203BA7D30C9D7ECD8A33F72604FB9DF9DEB133671C993F
-DC7628AC78C3E93D3441733E247F4A364C66C78334B1C31FD803FEDC7845EC70
-593FC75B7833792AE449CC2712A3E054148A9EBD8AC6170E14C7284C434CAD61
-FBBE0BD31D7970A6C032BB9A12E164759735B18471D2E9E19735387607ED1E5B
-56CA84F1874F59A6797CD8181B0EC05F42E02F27A9F63542254DE953559CAD95
-9F4987CB5A72A329F4E8D07A23DEFA2C0A9C4CD8AC65E867007CBF7D0309BE28
-9E515728F9495D1B5F3EB89A51AE836937E548CB10DA7B969F7558DA4CB29E45
-813BE23A40849203DAD5C8890394F1EDD90074E63CC0D6CDCE6143A153E79A9C
-7556EA3C9D7CA44368B81DE3B5ECF4791A4E8955ADE6632B22972A5F8B5EC694
-1EEF90BC65E2C91643058C323CD53CC4059CAB8EB5930DE530817C6E4283E53A
-210C7BCD93B4E2EB9A4530932868FF6924106C3A889A9B0DA120949F9D24B2F9
-8B1D9EAD4F1B84CC9CA63E7E3154A6D42A338564B7FAAC6509E08F47A207F933
-6F4A1813D7958F62EBFED3361E6A3D45A2DC552FFEECD0F18E60222219ACEC20
-45285AE5EF96AF299FB42C9F516E6BA7079D20C9739D73972DCFF9FF27FD8D59
-8397137DEA913CCB5A678062F02008D5780F8BE9C7928F7F6CEFD68BCEFAE707
-91903D42A7068C81CFA224FD71380A04959471DBD86E29945D101B4388D3A602
-7C6D4064720146BCB85DB7184C77F01C1D5A0AD5538FADCB48D3B3C39602EEAD
-D7611D55DF777E114E5EBFBFDBBF7C77F311801F40061DC2CBDBA9F26FDD2745
-CC72A296FA4BB1E5CD41BAEDA4BCFCE3F6A21699F0C8349BCD63D9C21F268461
-D8F1264444E9F6FBF93690970E6DFD201E68D6991B21201990FCB84BDE9D7FB6
-4A4E752D97E1CFCEEC9AA82D8B6AF47569D87C2B3372575BF5E84E0ED1F76C9A
-6E6F6343A50F5728796F4EB21CE80020436D604A37608A43D74C1E8989E43473
-4469EB72EDE6B70938B405847455024F33E52134B08A3194F782F5FA47ED0EC1
-BB6CD75BADEFDE8155D1D9B7FA2BBBC56190F00A6CDDAF4A4CC7EEEBC0FE24AA
-7AFE725A4036C72D827D1D9FBBCF98313F2CF1159870F7A111D8C55B97DF77A1
-93D2BF77CF3FA9AD36114D778C7CCA8D1C32DFA37B298ADAA1758772B945A6EF
-90C44A27B6CAC3A3B4A43885E9F6BF14BCBD877AF6B498D0BD6FC1C7AD0C5962
-0A0327A291FF7278694DEE9E55E882D08D162C2297671685F9EA8BDEBB060977
-CF23C27B1036389C992B3FECAEC85C06816E9DC27D37CEB3AF8B1A3FFCA8CE3C
-9AE090A3B8F72B3BFDB2AC87509499FB0C5D07A76A213E0579B9B48269500C37
-2448CE37E0488008B687947345E1A934F79560A4BDF44C1472D18714192F7706
-F71A3A1ED9A6928E6609055B2B1A049F481B37C4442C78A6FBF91949B3E9EF3C
-453B442CCA9E973265604C673752465786FDE0BAECC038104A9EF6BDF2F2F14D
-79DFF55430837C0111E882DBF56674AE2C2081C1FA5558CF34C6F1B0C16795AE
-541725E0D6329A606FBAF5946054FEB12CCA4575A32A49625E8886A253D7F438
-E4C855F2F04139FB6309BB7147C7ABC18154AA559ECD0A46D70B8F87F5A322E9
-AB517EDD481831CF66B43A6DEEE50E150C19F45F7500F07169D4F7922FD24284
-93AE172849E0570942758D2F5C57B44FE8A939CEFE3E7D708FB8D245FBAFFCB5
-E6B51F90101493A58B7744FF0D135534A2ABD30E22F3541C7C606EB006277A1A
-046FC6569559070DFEE59180284A8717058C2A0C2302694FB35B619731A26E6B
-ECA6C4A99F1DC6636C148411089A56902F9381A05B97C9C657FC03715D34BD3F
-25FA9A3CA78D05C0EA643CFDAF8A4CFD4AEDCF97896F257068516DC6DB23F783
-2142E05DFD8F96ECB5BB268B6738DEF2540751595E1A5612A4688E0D0D1AF9F6
-737E036A0129F2400C05AD9F8D95B01A8743E72EAF700F4E1ACD9EDC1D5D0CC0
-733725A6C604ED2270E0D27677259609A67F5F59246F3A187A74FD2DD8E94F17
-CE32D65DE64C2BF9F5AE2230B0CD64769075B74044CD1237EDC3DBBA2A0D51E9
-5B45FFE2447C2AFCAED3647B2AB12B68ACADC5F3041A85F43BCB2E60C195ECB8
-54A5D979F7A672C978E09777EAED15A2BB20D08C593B327CE89DE8A059141790
-F71A34040F8249BD1F253568E2FE11647A66A9DDD647180BC39BADC5AF42E64F
-316EBDE2B19D26E24FDE3105DAF9F4CA01765E4D7E623D77E988A301458C13E4
-D0BEA87A09B2EEE7DEC079737BCD5C0DE724472800E03BCD16D8F9A6B380C7B0
-B75563584CB753C5B2C0C72555D16E638ED3BF3883047A71D7F9B9BA46F335C7
-90B751ED53836ACBB3DB9524A5F6E26169CC86A3F805C63D027D3D161446FEBF
-E83E2377F39D154881EFF19DADBDCE48D6F3100ABB9C5DC617F3BAB482E4F570
-DDBC1A9F98201E40AA149083AAD5FBE908FAAEC7281CA1AB5D1674DDB3F8E867
-F4E311DA26C71CFF71080B03844285754575C9F94132C6F43A92553E922BA580
-19E418AEE7E71432EFF5994FD43BD4FEA2B5C70480758115CCFDAE38470C8A69
-8EFDE3172C30D0E8BFAF666253ECA7A93AB5DEC246F6DB6562B0D0D9A585EF56
-342E6A2891370C21A4F428682A1C1684514266051F9875875C64745BA8DE1680
-68DEB7407C1DEA7DAF8F7F499F123E7948C1DAD3844BCC12C835A632036E94AA
-0C59E2566F2F7AF26CE5C87C975C481539AF17EC77B1B799C2C1C46C966496CA
-3947C252153B9303EB31C11D0F1415EB2B4DF4CC55B081E514FECD172D82C0C6
-4CBF6ED2EA9DAC8F80563743B20F5D4DEDA1B60629E885EA183DB5119A06C541
-13BF437CCD89EDEEBB8D21CFCBEAF5C3C1112B4710BE66660A7D3726B4AE5FA1
-E773A77E18D6B3A02A6065467D452D75DEA48803CDC1600C089C183E68F04513
-F35FA955DF440EDFC083ED21F4121FC2CBD01D3B6D36504142E7DBD5D870AE81
-495A7D4F4B8504F5F87CA7E246EE341CDF20DC499FE279D8EBCC218CBC0D26D0
-2836C1C124D109F2D697BB54444952E5AF538B6514F222F693DA2CE3BC67ADBB
-8CF143FFEB552224BB54C70AF45663B4CAC25BD25D514D3FC4D011EF9D5AA8B1
-9B16F5ECEE40488512E15798315CC2A85D604BAF68A3A3F980DD04A17D0E02C2
-702AE3E990DA9EF2AAC4957A3B6499771E8F00E7CAD3C207FACF32B372555025
-5392DBAB9E806F516866293506C3A0667C995BFF9AD8027FCBD2560E7BBB27DD
-77CFD1FCC7B7BB072234CC908D7FD87B1410008CFEB63AF0C4B69BF22B75BF71
-6C811369BC4BBF5F410D6C61A12239FD1FE25363312A1BC595028157A185E9CA
-308D7752DA09F6908E1C76A1BC08D254B7D7EDC295A6FF1658985D64DE0B9DBA
-BEEC85A884D80EFAE9A66B7B577AA734E7E662341D2FFFEC2851A2BCF11DC560
-74F28DA227F1F29AA27BB7088C1BDF4DB64490CE3D8D99F903AD9331161E118F
-CC75D0DAEC6AB9F63934371929EA2577CC16D9A2B0D452389FACBDE05B6C08FD
-70A66B7C309F4990BF21EE6EE2B3B7B9BD4EFCC8B419499D4A9C8120FCACDDD5
-1CDB568EB932C74C8AA9D52B5C7B61828D696B41432661FC659B122FF69E7110
-6ADC582B8312F1FF10596833454C0FBF05CACE8E95EF9EB53119C5DE28B449CB
-971F604BD8D7232C2723A155E37DD5519C6E959D365215BAC11AD54D30E42801
-B93423C8C028EF1A9B13773C624106DD59BA15F4252846B4D677F7D71C9870B6
-6AEF7D061AF2A03ACE5A05D050DC3B7CFA03E249C473B3D754A4570DAC910326
-CF6D61B084A54ADAA03A7C6D9B4A70DD94BE6467563A7B426A625C6CD1645E15
-23A707F0E2E119C1230F3BC3109EE3344962F90E37D679394AD3BAF2D557DD49
-4DC2AB31723955E9EBBC387154AA21F407F7F8F8423D5DCA8938BB7C22A65EFC
-C04D60083E7B001031B088A00093B9530A7E71BAC40A5CF652849A77F6999752
-246D794648F8D42A2BFE5F5E4297F92991CA2D157404B1D46851AB529435ED05
-781249F75606BE08CE143545CC8077B25DDD598A8DA2D679A4F4920C4345DDEC
-907CDAF694F6DCC9BF3D50C70E089BFF04A77A7DCDA1D76465D6C5D152C8FE5B
-6772AD632900AAA71EFFF3A4F90C9AB755B124BF079B98C0B811E2A364AE6A5C
-EAF99631D79BB7E144ABA2819811014301CE1C562BF38F9E58B2A4EA8EB8F72F
-4A53F5F08A7FA95BF0A988A62214EFA998AADA81E6753161E8B32B45D4209B5D
-64DE964EBC65220E146FC73BD34E4AEA2D4643453CF0FAF78EECB4B0539D36AE
-853BF4635A063EBD1C1C04773886CFF56A12FF6B3F0FC7C76EEA3BBDCA392F4E
-E64DF93EC4AF5D2528E66ECA77E134EC3D4368E0AD8055D782D5BCE2E43F5830
-F34AD1D64B9797DF1416046326290DCEDF3EA07175381A8C1D268B5A6E7C7C86
-4AF59EE9A71E1042EE5F23D303DB1B0A940D7C40950B4F7C60A78AE637
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-cleartomark
-%%EndFont 
-%%BeginFont: CMR10
-%!PS-AdobeFont-1.1: CMR10 1.00B
-%%CreationDate: 1992 Feb 19 19:54:52
-% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
-11 dict begin
-/FontInfo 7 dict dup begin
-/version (1.00B) readonly def
-/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def
-/FullName (CMR10) readonly def
-/FamilyName (Computer Modern) readonly def
-/Weight (Medium) readonly def
-/ItalicAngle 0 def
-/isFixedPitch false def
-end readonly def
-/FontName /CMR10 def
-/PaintType 0 def
-/FontType 1 def
-/FontMatrix [0.001 0 0 0.001 0 0] readonly def
-/Encoding 256 array
-0 1 255 {1 index exch /.notdef put} for
-dup 11 /ff put
-dup 12 /fi put
-dup 13 /fl put
-dup 14 /ffi put
-dup 34 /quotedblright put
-dup 39 /quoteright put
-dup 40 /parenleft put
-dup 41 /parenright put
-dup 44 /comma put
-dup 45 /hyphen put
-dup 46 /period put
-dup 47 /slash put
-dup 48 /zero put
-dup 49 /one put
-dup 50 /two put
-dup 51 /three put
-dup 52 /four put
-dup 53 /five put
-dup 54 /six put
-dup 55 /seven put
-dup 56 /eight put
-dup 57 /nine put
-dup 58 /colon put
-dup 59 /semicolon put
-dup 65 /A put
-dup 66 /B put
-dup 67 /C put
-dup 68 /D put
-dup 69 /E put
-dup 70 /F put
-dup 71 /G put
-dup 72 /H put
-dup 73 /I put
-dup 74 /J put
-dup 75 /K put
-dup 76 /L put
-dup 77 /M put
-dup 78 /N put
-dup 79 /O put
-dup 80 /P put
-dup 81 /Q put
-dup 82 /R put
-dup 83 /S put
-dup 84 /T put
-dup 85 /U put
-dup 86 /V put
-dup 87 /W put
-dup 88 /X put
-dup 89 /Y put
-dup 90 /Z put
-dup 91 /bracketleft put
-dup 92 /quotedblleft put
-dup 93 /bracketright put
-dup 96 /quoteleft put
-dup 97 /a put
-dup 98 /b put
-dup 99 /c put
-dup 100 /d put
-dup 101 /e put
-dup 102 /f put
-dup 103 /g put
-dup 104 /h put
-dup 105 /i put
-dup 106 /j put
-dup 107 /k put
-dup 108 /l put
-dup 109 /m put
-dup 110 /n put
-dup 111 /o put
-dup 112 /p put
-dup 113 /q put
-dup 114 /r put
-dup 115 /s put
-dup 116 /t put
-dup 117 /u put
-dup 118 /v put
-dup 119 /w put
-dup 120 /x put
-dup 121 /y put
-dup 122 /z put
-dup 123 /endash put
-dup 124 /emdash put
-readonly def
-/FontBBox{-251 -250 1009 969}readonly def
-currentdict end
-currentfile eexec
-D9D66F633B846A97B686A97E45A3D0AA052A014267B7904EB3C0D3BD0B83D891
-016CA6CA4B712ADEB258FAAB9A130EE605E61F77FC1B738ABC7C51CD46EF8171
-9098D5FEE67660E69A7AB91B58F29A4D79E57022F783EB0FBBB6D4F4EC35014F
-D2DECBA99459A4C59DF0C6EBA150284454E707DC2100C15B76B4C19B84363758
-469A6C558785B226332152109871A9883487DD7710949204DDCF837E6A8708B8
-2BDBF16FBC7512FAA308A093FE5CF7158F1163BC1F3352E22A1452E73FECA8A4
-87100FB1FFC4C8AF409B2067537220E605DA0852CA49839E1386AF9D7A1A455F
-D1F017CE45884D76EF2CB9BC5821FD25365DDEA6E45F332B5F68A44AD8A530F0
-92A36FAC8D27F9087AFEEA2096F839A2BC4B937F24E080EF7C0F9374A18D565C
-295A05210DB96A23175AC59A9BD0147A310EF49C551A417E0A22703F94FF7B75
-409A5D417DA6730A69E310FA6A4229FC7E4F620B0FC4C63C50E99E179EB51E4C
-4BC45217722F1E8E40F1E1428E792EAFE05C5A50D38C52114DFCD24D54027CBF
-2512DD116F0463DE4052A7AD53B641A27E81E481947884CE35661B49153FA19E
-0A2A860C7B61558671303DE6AE06A80E4E450E17067676E6BBB42A9A24ACBC3E
-B0CA7B7A3BFEA84FED39CCFB6D545BB2BCC49E5E16976407AB9D94556CD4F008
-24EF579B6800B6DC3AAF840B3FC6822872368E3B4274DD06CA36AF8F6346C11B
-43C772CC242F3B212C4BD7018D71A1A74C9A94ED0093A5FB6557F4E0751047AF
-D72098ECA301B8AE68110F983796E581F106144951DF5B750432A230FDA3B575
-5A38B5E7972AABC12306A01A99FCF8189D71B8DBF49550BAEA9CF1B97CBFC7CC
-96498ECC938B1A1710B670657DE923A659DB8757147B140A48067328E7E3F9C3
-7D1888B284904301450CE0BC15EEEA00E48CCD6388F3FC3BEFD8D9C400015B65
-0F2F536D035626B1FF0A69D732C7A1836D635C30C06BED4327737029E5BA5830
-B9E88A4024C3326AD2F34F47B54739B48825AD6699F7D117EA4C4AEC4440BF6D
-AA0099DEFD326235965C63647921828BF269ECC87A2B1C8CAD6C78B6E561B007
-97BE2BC7CA32B4534075F6491BE959D1F635463E71679E527F4F456F774B2AF8
-FEF3D8C63B2F8B99FE0F73BA44B3CF15A613471EA3C7A1CD783D3EB41F4ACEE5
-20759B6A4C4466E2D80EF7C7866BAD06E5DF0434D2C607FC82C9EBD4D8902EE4
-0A7617C3AEACCB7CCE00319D0677AA6DB7E0250B51908F966977BD8C8D07FDBD
-F4D058444E7D7D91788DEA997CBE0545902E67194B7BA3CD0BF454FCA60B9A20
-3E6BB526D2D5B5321EE18DD2A0B15E53BCB8E3E01067B30ED2DD2CB9B06D3122
-A737435305D42DE9C6B614926BFD44DF10D14402EBEDFF0B144B1C9BD22D7379
-5262FEEAFE31C8A721C2D46AA00C10681BA9970D09F1EA4FA1566B96E221864A
-45A24ADAEC63F61C9FD18376D3984449A1F998C318A8FE36D0D5020E18A49625
-0F3BB603BA1F3E66FF412F6A32433FF8BD2968D79CE4273AD0E0CDDA5153C2BF
-F8A46A2244F9394A49D339F763F5A7411A3C29336B21CCB01723705AF589B078
-3763035411FE36AB5D744E81379106890688CB5BC41184548B7FEBA08DE7288E
-E6570FEA20C51FACE8E8F824BB61A4A038AB817C47B87391611B77928B2565A9
-3B27A573C05D36ED01D8F27CB2C793370FA9B90021B5696280A55F2CB6117B64
-293EAE0EA5A243F56FD007773CA35DF71B3D28643C25210CCE25F37A5095D6E5
-9CAFD99DD1DB0D7EAD454C13464DF6FF5DD42339797AE5AE467084550FC00139
-6EE818C6365007B2FD6E26285B832CFE6EA7E99665A224C9813C036CED262639
-3FB39C1F05FF8F31D2DEF37BB9B883334F51EA1243332FE1E3FC91864C8AEA79
-16A726F924AFD84F2F4215FB795FC41DCFFC835C90B9E31D291E47AA4BB8C05C
-620F69DF31E91A0FBA8E217CDBFAD7C4D480EBC1EB396029CDE615C227A367AD
-72834BA95539D39A38EA0CA3CF7F1123F70792CF315BAAA38BBCB6DFA80B4493
-5025F33C3696DAD6A0ADF584C71BCB1D29E523EA4B81FFCE15F3204022BBBEA0
-A9483EE8EAC07D581162672A0D66199174821ABD097561A263C0C0F24066FBE6
-0951F31FBBF2675141F3FB4457CC2A94A40191EA0AB2A606CF540BBB8887B6DE
-715EDB1041EBB9D05D0F4A4672F534397B9529EF8743BE88BBA10C81E0A46259
-2F2AA7B638E20C9C8A3A827977AB58ABF7525BE15DB66CE8E9B81457552073B5
-85DF3FA70B5231C447C5724E14730B90FA35ED1B5723036F1658CA8E19EF5A6D
-D333B78E91E4D7032EFBFD40A5A2269B0DFD9F7C3438DB58F94B507EB93032F9
-99E5F15D9F5D8CB031BBBFBCA8A15A617ACEDDE70DD9C2D9EE21179FB17AD913
-B4BF577A9046994689D1BC6A6985FF5F5A67D699C2FD288FD9E5BCAD5453EEC5
-68287BD7B8872726C28CD288B4DED2246B843577173450B6E5760852CF2E1727
-01FDB0FFFBE12CA13ACF6434AEF4B59EFF3E0DB1E87D35075B1D55AC12633167
-5A83A39056C077EAE6F2F7D1DDED300BA43830B8034F0A6AEC562D3023270601
-6C594D0359DF6F230F7B80B54EBAE4880AF338956B813E3B8DB8BC778BE0F612
-7D84939C2878B43EAA45BF10E257F22C28C2C148FF48843D2B52626148E3CAA7
-4527B9F246C17BDE21C6E7EAB4906BB6D9E84906CD1832C4BD9E405AFFE33AA2
-AE086C25EA26BC23D68986639366B99C87359915EBB76D7162AA667ADE4954D0
-B1E18027FAC2468CB2FEA2568E23DBC201E9B6A1151FBF21129A088D89E3E728
-28B2785C1A8B2637F368A93EAB459F80506435BE23A85396969E2AC4E0D6E4B0
-8B12EACD150049EF8942C108B96843159D4408424394B33603F565D1622FCB78
-01C22EAC64FB487AEFC0387059055F8BDF207C956D138903896534AD1F42212E
-7902D54D0F0D8083B419A459D865F7E7A6A6F8B94FA8AA31417C4FE6440BA98D
-1271ED7F25465E994E2D15B4326CF09A6D30ED6BD05D0B66F39DD8F864843B1F
-8031DF58C9B37C10FB633BFB58B7940B52AB6948C4412D59266A2518B5E1260A
-0EE0FBB176C4076680BEDAA7EDEFEB0995DD9A2CCF3EBF3305A20279366B73C5
-F3DE7527AF736D8D267CB71735935FDF78F765DEA560F7F97140BDE20E9CA866
-4242175E7962A14800C37EF65E856C81918C20C040FFBE7DDC373CDF456143B7
-F3AA5026F9B8286B876259E9532754866C649F4F3383C73878CC054CEBCF2605
-75CC0EB62627085F4DBBCE6B6206F867731F47907BA6B5D37CED7D58049CDA25
-7D47AEB352637FC627C28B09BA0B7778DCDB51A25D6088D7989D18C0079D2290
-B01330175812393755C7227B9E64F952CB99310B2F822437AA2CE4334403C6CD
-7C9D007DDF21794D076A5D5263141367A768F8F53D8267251076D9E6E18F9470
-B02BCDAE33E59BDE73E7FF1BFCF40F956914B1A89E6C62FA4D7A084AFDA868A6
-55B77808BDE6448B9732B40B83BC63E8064AFBBFDD187FED36ED67E99CDD69A4
-23F603FEB3890FB19D9CE3600B79C019C5F4E25A63926A8F7BE1B44E53196D67
-F7A6A341F6D7D5E3A991B56A6D7A57A44D255B3CA95F5F6FF0472E6CA0F6F5A1
-D71629A598261C3B7A9BB72F2683F03304936ED01F8A774E74D24C25D5ED538C
-63A8C4756AC67CEFCBADE365E29340E780BFED81A59C98292DAD3A1068794A32
-D28D40BB7BA410274E8C8F804055D9457E4439F1255B8070DCB89C4A72043C71
-2B192CDBF53EE9FC81CFA1A4BFBC12271DE6F87E7059F06F38799F37D49C94EE
-58685D3F47C915A1CF37B2CB116909E52F537AF7CD386D62D01D30D6D079A5B5
-71BE47AD79CD0F40DE5F15977F11FDCCE33B952858D1478B59F687D7E96B9C5B
-D59357FF5927734B19D5B15D3930598F968493970B616D570D3E2A51FE743A82
-E20909091813726FC10599F23E8B5738A90E237CA417B10677A6C8BDCE468EC6
-BD234802C6E4AD49AD148E9CFD0009C97F421070C6CCEFF5076A32EB90F3F5E9
-627E13F658A31CDD3C4A75C66A0508C92785A6C0BCBE2D4C9C1E6B0F33358236
-3B0E68737B23F76B2A2CC1BE7B1B3DF1EEC55F145CD68116804F0238DBDA3B4D
-DE8AEACC8AA661B9028FE89F8BEDE8C339036F53073BD2C13EA5CE4F647654E9
-889DB4B8900D05D84DEA0E7A83532602514559BD083AF5DB829E15E62C7251B5
-B6D7F948C78FE7128AEDB6912BB9B0A398B65C4ABE7E3783684B0B6CBE479C0B
-229923F5C83C307FDD2D243DC71B40EE71964352EE965C33E56DD0867CE466A7
-68B0BFBB68D15B23E918D1D002DAFB4038BB93BC0FB2E7962A3CB6FF620CB3C0
-F850B119EED8A2B877F9E2D8E8F82D1A6BE16F768081086B95A3968175C57054
-70BFC6C9CE582D7EB11FD407C8835C2DB798E25E782488A9A5C229EF008CD707
-3E4B31F5666906DAC6AE081D46D4E61EEFDF2612C3F47817EBDDB61CBA9C1E1C
-A8C70E01BB07146903ED9E72B53BACEF7ED61CDA5812AD9FF1B44682A93F8D01
-08CE1363D775A7C815D4C14EDEAAF507089A503DE2EB81C75C46BC51A0059EB3
-14786BDB0AC405AA352FC5118FE3372398CF1D7264F981EA05DFCB911A2B85BD
-01D17DDCE329F8C570E35484B545B62DD347563942518452FAD1B0DAF30E1DD3
-C4C64C0429D90AF26A0F4CA809B81C29FC653F945B388CF77B2E066563541278
-A3C1348A5CA23836DEBCA15AB78D195C68BB5F7C178344E21FCB44CD6CE12B87
-5A2AFC88C60389A73AB1D13BD86B1A0DE96CD36F7857A871E8231E338AD91A05
-B905E43123473B39307A9492787ED0C693FCB8376AB19F27A9AA74AFD21DE5C4
-76B1119FC152A3197B6D075F8C4A82846898E25B5C5FB90D72CD1B4AD63F012E
-209F805111D3F79DC308C8D678312B3451A69E759DF4F8E8395ED7E7788EF079
-980B286549198BB0753F7172F4A091FE3DDB5C4CBBB6E2517D00B8999087A308
-16C42CC741FEB231C5CB6B7E8F3FE2E2DBE9455BEB14D354113696A54D615208
-E1A95CCF0E0E70314DAE4349DC26212B4147A53FC8A16970B6E37E48E0F9CA32
-2AB6E4598E4FDA267B6A9CB8266071BE3BA042C7D780FE61EF22116CF9642B36
-B4FDEE33D6E3CD64DA5DA1DCE187AABD948373D37B1985D0BB3FEB8CEB2F3A86
-AEA9E8CE67A15672414D3FD1B8B28ADCBBA5121DA3F1B5B7CDDE8E67E6E67866
-B1F02F644B9C88BFCE4624A9A424500BDA925BD7583B1367E2367E1BF8523A42
-EAD38C08A7CBA5760FBF83ABE1DEA9FC1E41F14D16ED4339CD4D17169313F879
-15DD4504FC1BA5BFE21CC6C26E206C4E1B7AC0E84A058B8B5BBE525A7A29A202
-4E0411D0C9185BBC834E8F483509495C203539F7D425F4102EF53248CA943CD4
-5F01026F1B1129149505AAEF7DCD2F3A6D6C494E29771590F658A8049DC981A1
-D9337FB49C4BC6418F271F4E14BA6B223B3CC521FD0879C2C08DAC47BA713FB1
-BF8D9A48E2C1E73F2F56721E8B77ED65E8115EC0DFAC0D61B54D1BA3EAA1744A
-3A0287BE529B7C6749C768F07A07B9C227BA2AD6F88D6AB447614937DC12670E
-7716BD4EB41E3F77A77209CCC6744581DE4B50531BE874AF185DBE34FFA966BC
-02FB132BA1F5AF7E0BB25DEA00E412DAEB9F3D7664B788F7EB1DEED46FFDF9B8
-ED936923D31F6A673E3F5F60395B36672392488191F86263CF52B9C8DD7C3504
-B3186C0388A019F080D80234B68B8F3421190142ABDA05FD325150C6F900E01A
-BF15BAF597B9701A8E3159408067C13108B38741EDD643C62905A25A8913D562
-270E42C47FA20C2A1B814A21E9D477E9E65EC931B6472929C85E8D363EEBE6AE
-750E164D80015EA834FDC8FFF18C79ABD036FD1AE42715BFC3F3967604A5B5F6
-962D95E2F24ECBB719D3608BCBCC89233D2763A6120D2EC68A47F9449171DA73
-5FCC16DDAE60F4F95094F4BB468893C765CB5A2DC840B0CBE7141DCC254E06B7
-22A5A8BB94684E2EFDA11351B6C79481B157D2CBB5265B679CC8604F8C15FC25
-97E77A0DD279EE83F1C0A2788662B7336B3BDBAF8080CA3E905B27838122E762
-E6C52E39AF141B20F3AB7EBAFAC9A933A43CCDB08BFC3372510F3EAC553DBB98
-C65149F88E02066CE6C17F72C90F39DC2CB8D791551DB3374FA50650A8FC0B06
-E42E5C5522CBD3A1C90811519A04474FD7BFAAA92513E536F153B580750A9ADC
-F1B1A5913D14F1AE8028A5E6E3D16A0EA4AB1ED2CFC5DD24A707FA635A210CC5
-9083732A216C8598B40C6E759658B41761C132F2FF2FECDFB377767B2D50FEB8
-06893FC6CDF6B0E83BF7BC5FD2F5551FCA8A79F8BBB89354B086CFBA51AC97CD
-91B96733AE448992BBC1132A4CCC83DD4B3E7D83DAB519FF984E48583CC71F07
-06FF3ED9EA50E310AD68D829491AB9EB87E15EA196EFFAE80953904DA525395B
-CDB33DD73A3E4A9B63BA0BC4CDC8B43836C0ADBAB4238D515EDBEB1B4838E00B
-27F86A3AC3DD1A292BC2CF9C8AE7783426D681B841E4470A1A8D818CF292A97E
-41BD70EDB22843B9B3587482FB8DB0FF148020E516C62ED13C02B0FE7958D13D
-B6104A28975DB0EA79BE8F418807CF2863B5C9D77AEE3D6DFB97348AA05CC879
-B650E0D51B5A51DE309CFCE47CF977C78C01B9564E375C7DE789F5D5CA4E48C6
-39F016B6793FF1981377D3B4661F7688991F9A6A57B2DD8B5D8D794CEE4B7D2D
-783DFEFB64B2B90AE6E6DA6230A21BB6DD0D1D9623B9A4A0FD7E999CDBAD77A5
-AB03742C5F36228B01524708D7A25B87186E72DB530B6D67699D39CA92997FDC
-0CFCE7EBFB9FB28EAAAA23748771A992795D98BAF8E1219CE195B9847170DB0E
-A369A4716D41E25763288F980FC9B4AC4242676E875A2261F1A343ED99BE69C9
-B0118170B3B8756B71AED4EC23829E614C12E7729F3FA9F19CDC03C9198E8A46
-F04033FA8C85B020666D12E8BE7539AE685222914CB6AEFA4C18C9C212C98104
-7333F98F02174EF7B29ED5C2F01E444AD54A4CAFB023FE38878F0158A24051DB
-6639DE54FF45E3526BDE6FB4745D80BD39834B24B4CC66036D21236B9561F59B
-84ADE006D1B8D9E235DC597C43F4C234C686E50ED87A29F1ED362BE315FA3B0E
-C9B842FA46B52058491AAACEE7983A690F4711FEF5CED256D09D4AE7D71C0061
-6227DAF22FA7D30876856A1CE965199A15C65CC8A446FE470D233F53C245FA18
-5ECFE2F4FAC1561DBA2CD5FF2DA8C1AA2D825847230EFFAC6E59C840FF79D368
-CDD0412B4E83411144EAA53325A79F4A22FBECF3F625F047E8B1D025878ABDEE
-2C3B5C6DC7D8EB4F098446CD3EAD3DA0A6A54195A7B399E7CA0780588FC84CEE
-69164DE320825F8A24618D0810B71CED409CC6BFEE816E8C829AD81A8A16F6F6
-AD55D1903E647D935F3BFF542E9947256D1B5035F0E5BBDBB73AF80AE251B8FE
-48A82A02090374E3A166D9C6A038D5C4BFD9D1DB522F18571B4129B47297A975
-65AC9B38E7C841146A5E2EB30821A31A88CE41F59CAF3DC4E48D06DB4EA7BC74
-A1DB26AEE13DE4E1ADB2F15ED40541745CC6626C6339E375BE124FD92E77FC0D
-541104B12F5BBA219184D99B8D450CE7F0098854E4F6156C230BBF9BE2142ED6
-2BAF817836ED5922368FA3BA65F17ED3451EA218641820C3FFF1A362577CC25F
-3C377C431D22B290A66F6D94554676B895CF0C718A16D790C81EC5E925D4D6B5
-623A82C38DE6D5A9F419742C1425A395E9F1DFFAD1E6E52AC4AA018F8D0F5066
-F26B7047E9798D169B39487B285743B67646D4640E9778248D40A84391E26CE2
-C4AAE1B1E0C454C8A985471D22B6B9ED993E215C4024242925C3F2953C207D43
-B928BBF8A4AB803FE2CA94247B4C117C828C5DB6C194E9EE41F3498B0BF81F3D
-8396C84908D01713AEB02AAB05760A2E56A03A389AFB19DBDCCAE4B190DD8815
-92D56C81570B3DA87FD61E42BACB706195D3263D28E567BA9BB10FD3A42DEC18
-E12662BEC6417E3B9B5546856E320C7F7E7CC466F11E2EF3D69EF72A9165A233
-B7642ABBED62B4F20A9D5C0F857329544FBEAB9191CD59F1C44B9AEEB92F45AC
-812154397FA039B7E00BF221EE3ACBD288924D697A0C23601668ECE88EF8EEBE
-D279E953509E0DDD386CC30373E6702DE21CD47982E887521A99AD11532BE389
-9EAAD86F347E52DBAB8DB37BEAE59EC3246328DF0E495DC03D7DAA553EF8A6A3
-C2862E1EE2A8BBB8F1521984DD8FC30C798FD2D79D259904D13D9A3EBDEB1374
-81FB6A5507F2A032F12384818ACE9CD39C6786E8F0546354FAB6E14C920A53AA
-241AB7B99073F12BF51485B7537F58ACEF8AB772E5507763F5DBE520C6FF61B6
-FECEAC6BDCB75A0D7329023913D86ED418AAD111497EEB97EB22B0EF771700DB
-BA8A7AAA5A134C26A630D6D8366CEB5184AB0D1DA6BE411667F9FC170B12A10C
-5167F90F850A18510094F72AB13208EDC1B9BB957417EEA33361CD0F48A2BDF6
-C4413A148B37E61D0111652DBCA3438792CA7E67E710C1402DF0CB975A45DB20
-E112A29C258F825A5E336B49A54228EE9397208572AED7F441EA1AD34B5C334F
-910342EFC0771E267C15DB0B5C0AFBDB1D7C2160ADE2E7A2AC73210FC1D68DC6
-4B332262ED89477BB546F73CB9398FD0E96FB78FF4F8730E357CA67328F7CF92
-2687BB3E9916042A985691E3EA2BD13DA48BEC195727A1AD42A0A6DA32BF33FF
-2EE8CC601800CF6B96EBBAE80E7D5A620491D0F998285D8E85E0E667FF89133A
-0AE50AB2DA68BAFA49EF8C7AF907B7BE11345C105931412DA23870C7A8F8D4FE
-D5715F6B01F18B38FBDFD65E66B616AF01886AA873CB90D9EBD72F29EF4051CA
-60084E4DDBCE0E475BB98AFD60C4A64D720F6FD36DCACCB69A2BF746E3AC4DCD
-96FA2DF360C17F68B58D76629FFFD08FF769379730B41E55F848360A6A25523A
-9BF3ED4EAEAC7743C6F92AE6C2ED3F2F36707A629253067363BC4724719D93A8
-CE1C46E1E16293FF7E24C6CF39F971F53AA09B15244DE276F159690A6F369A9E
-6DE8E69F73D9C794A1C32B0B4B3EE7C58E2C72778AE32122560F9214D7F94942
-8C21D46E3ECB044BEE35934096FBBF009EF3030034AD7D84890A45F2B2970F5A
-9BA55007859A9FB0F6DCFA3E6564B9555E7F3063D46EEFFDD8854A94DE6950FA
-A3852226E010E7C0379C21B09868B6A7300D2772068A449712DD2EAB299108C3
-B4CCBA45E08C3695293739E89D8C3B5D1621F0816F0259C3B1DB4E74BB2D489E
-200BD7B7D5BF1C9A132B9BF451DF28CDAA438803E8656746A3D1C0654AFAB909
-177C1F016517C0B7065E98EE1B21B4D08B5FAA68D469C25EADAE718200A3A4D3
-385501BC72F5999C98F13889263BD5AFAAAF7402864E91363FC0F5C34082CD3D
-2CFC70FB2431CC4C259B9597C7D70FBD0D1FE2C9B6CC3D88073C7627B464BFB2
-9F7F42CE057622037E610FA518F506F9A81FCB940B91B873D0C834512CBF8E9D
-F02F9670E9B523DBDEE9B319995F9B1D612C7CFE4609A668225A975F550572AE
-B25499FFB57FBA86C6799B67B05FD3C9ACAA386CC947F07DD71317B94691AD93
-44530890931AB8249EFCE7659E2D69DBFCF047BA992FC5325B5703951587EC8E
-148DDFD28459AFEA56B72C7905E7415B02E5643C2550FA9D49EEF64D7630F05C
-185421C580BE9780B643330F5B0B0FB4C3712668E851BCDDF8662C5D6E35825C
-F643AE5455597B570D8B43466A748519E1A38C9A1225A92B2490D6993786B476
-E3498C00A1B29FAB050801813006E692EE98A9E1254BDA63D3E391AF186EB44A
-E50C37165E2A314912B9D630035A8FD0961AF29E694636AF4E8912AA9B107AD0
-7E0990A428D7CEB660040F74A48EECD7724F32EE33B5649B79B63D1AEA095CFC
-DFEAAFC8DB328130C261ECF940AAC676D2778FBC6ABB2365662AB1E8707FF091
-BD337B103CE2879D1FE0CDED25A3722D442C28F66BF52C9DE534863EA4BE362E
-8625B859735AF68193302D20887748A625C9B1E5456BEA215F216E5E0A86EE40
-DE4413B724FD9AA1FFE418EA2FC6B2368EFB217E93120F3008BE9029AE81C1AA
-ECE18F0C84758ADEEAF29D5CCF5BF879CAC196750FA5C559179F8A20FACE2C1A
-AB37A3BD510B2505F32CAED1CE7C0C6F095F56B9593D3493E860A4F0CD6BBE9B
-2D13ACE1EA583053B72A0D2245BC677898DE4C57BBAEDD2F2BC42D494B5B9E1C
-CF3C182450250CEF19774E0723A3CA9320FAB92560B8394A14E1FDE84F350470
-523DAD433BA8C476EB389786C089C85E261780CCC544067A82DE3E835EA6A13A
-3597DF92E35A80659FB03F193499D98C5E05D4C365922C20213EA0E713330E73
-F30E866B13FDC36B98557D17D670D016DCD4752F780DACE9CFF8C03FCC05770D
-604D19A74969F03C81E9FC0B04BB36215718C319E4C38D2109D28447A43586B8
-1D6966E885C0E844389595C0507FE8502DA8EF459817B1937114C50A0320EC0B
-653EC5693A2CD74A0BC34E8E8B576BFF7F0F191256A374E48B8B75048E9ED20F
-F5D9329E5706559E1100676A8150FAE9FDB210330605B0694EB2D5A04EAD712D
-7BAFDEADD782FDB478CBEE8A0175680DA713F8F3CD27E025E28D3E57F1EE98EE
-E5400A38A059B70E8F051B56E5B463028A25BE6D0C18ADD9B865F63011843572
-4AF0404EE430A98267B00EABA58D9D815657871D3505B506A64ED1A5EEFA47BB
-EBD1513B5400A69FA522C3E12272BB8215E235A397EDE80A59BD7D0C6CE5B369
-0430BAC269497F415A3613048C90423EB2D0CA0F128924D9546BB21BAC9A7263
-B0496520AC7264BB57570BD87EE56554078ADB66E9A61F2BF6FB52992694F753
-DEB205D221A9AD1E5FFE3B1E9AA3F3169313D71061E2464531A9BE1603C586DF
-FEDA27EF90425725CBF4D04B01D6BFC5CB04BBCB9F2FC458BC84242ACE858EEC
-FEA3E84675377F5E65D184B4B0D29983B9576C77518A858BD5C03EEAFCB70283
-764E379497F6D1D69AA0AA51BABEBF1C70D0E921E28ED71B2781C293A27F76DA
-E29775D9AE33DBDE9DE3E9E5E43344D472BBB568CDDE0F46F8BE2A2534033633
-0A47E91EDBDDA8714B7B6F258ED7E348ADA6C4FF9A7B5288A825A9C5BE1F7387
-F69CAA5DFFDA4BBD1DFE0911BD7F9FB09FD8E718D36B4A6DE8C41E538A79AFDA
-72E78F0B9301CD81EB671D7AD29C8B4511BC43D9A60E4F555AD27D65DFD23CC7
-C38A799ECB6A0290B39B4CC2EAEB3A0BE8AEF9E484071CD400A3D99BF2545558
-0B3580CE12AB5A32C37A9DB4394D6DA8A5F6607D0A9C3652F2CF59D06A6DD5BA
-4F96BFAA2CE3E8720712175978263BFD8B8E849D532DEBEC7D1C0252D428572C
-42B339DA0B93062B80AB251FB9E0FB7F759DFF33D0CD5AD743F01DDAC8C18EF2
-0B2CF667A27E3C56809374C598E8387DC401713C6547BF7BFE3B9B7BD9A33D4D
-DAF7F15CFEB827E03AF5C150C703723ADB29F75C64A7E15135F8094557BF2C29
-E4477CD3AB780729C2F43836EB677ECAC650997CD5C8CDD466D7E8D8DE20989D
-596BC11396831E0A4BECC03B9422952076F58401C8E176C2EA4996FD53DD7DD0
-2552D2B01D187C247D1320D65A18521DCD169684248C3ED5C8E3C076F40ED5A2
-A89C186EBCDEB9CDEA9395149D4770F54FDD5EA8FD0D5E210A3707E66395CE90
-48D92C1392141B28AB22C5ADDF1C65EC7D624299B5871E1291906496F69402AD
-2EBDF50ED9D8265A2278DE9137C897A9D833D997FE0812D2AB1413EF98973258
-041DAB207602E9A80CD8966F979603B9DABF0328705B82A3A655E287411E0747
-15DD264C707279A61AD80D26E79A1363C809888D6572B5AF2289898BF53A3766
-A677F2B52A88EC4C85CA29C4C5108B474F6197AAF7768A693E94EE8E7C20224F
-10973F20A6AE0A9B95ACA0F8DF17C67AD3EE91F6D5FA4320108B518FF7788CE6
-E55B0F40711B5B22440D38BC30C7A2E1FCF1C64A49DC41B9B91000145A9D6539
-E2049C050346151C73BA088284D412063A2B17E580BB210DCBFDF2648189C79C
-E36ACDA3F3A12467CF7BB342C58B66F1AD2AA969BD8778581D6358166ADD0FE0
-1315BBB40DC2761793E991527A8EAE6DAA487F8032A40820D6DE6A625DB18FBC
-8DBDFB020BC66094CD4EB6B6A649EFAD2AFB27E36330D8188281719EDAA4793E
-A15670CAD04900C16902498533D00AE717B55430112BC66062F587F1FE719BEF
-00F152A9D0B066E216FE610B04C0FDB04958C477C140ECA4F37C920F91AC9E29
-A58A13E1BC4F101DB4F776E8B4F54D21A82FAE329406F44A3725ABCA421A7986
-C49115F0C30F96C85F2BB60CF1A363411DB9A83CB266357E87D17267F211049D
-C1AFD3AED644AAA15AD3C123E9C04FB6F8D7877217C98B3CC2CDBFF5927E9408
-F24C8C1C3B5FBADD709AD5378F3E6D37B1C0E5D6C9FE40EAE648A77956DA6834
-FFAA626CA253BD0B9622EF7C65340577DEA4F17554B5BC386183A9DFA9B263C2
-9D896CC0F2EF0C875DD3DE74F5AC50A46F232E4CFDB918354A4AE0E06C1751F5
-0C0B2622CB9904CBB6612BE56B8AE2B2E2A98A5D048175585E7A3065DA672C8E
-3919DCAD8E892A1CE242853A138F1AEB814FBF075FBD3E5AC6334B88C801085E
-7BD1F7C1E42F2BDA4BC8D9E8D2A7C86E40A27E0EB178B4B290C8BAAE509E75D7
-02E12E798529D89F9F271F44A4D9D92FE0C18548D20FCA6486CAB8F262CF65D3
-D80596FDE8039CE6072B87C3D5E626F201FD89E09A9954C7DA544EFE474C2500
-033D61146A284C63EB1A865FE13BE932438EA2949292886176771083BAB18628
-B4804B4465FFD9A34531DC7E65E1D1F78ACAE918FBADB9B48C23A684DF747A65
-28CB9E3B57B509CC567A21FE00D1547CC918318A26825052175877EFB3EA7B34
-708F4AA76254ED84C3F8C1DBBB6C7799F87FBCE1F8F0CB42535F486901290C8A
-D345D08964FF40AE0AB35A4FFB32773BE84D4D1B9577A3C7D70717EE80B024F2
-9393E5CC42BFDD383B2EDC10F726AAB4F5281E23CCC40BB4CB7CEAEFE5B1F349
-3D46D86DF6611ED1FA3D47E2931974F145F9A67CB855EEC904386490A8C93A5B
-AF09BB88A01AA220988796FD9B974E89A5B59FAD2B3936F2A75F0E8DA5C03DD3
-88DCF0BFCA43901D4347DF18975703643F893E314796B25E5D1D41FFF2CA8108
-0B1181DB70155D6CC505C63A6D7DF7D533720BAFFA1E6E41F04CA7CF4EE530F8
-F46832C8A4B753533B5C9BB5C97BD82F799AE52B0272A33C4003934C899D96C7
-84A5471ADEB37FDEED8F00CA7BAA8AA063D37D48FDBB0067D260D20F7E842A73
-C32DBE9823F83A56D253AC120EEDB0F9B4DB879A8D620704DB2C99163FF100F1
-7FD8538F7A20506F4BD54CCD24D4E662089A1D3A0D5FF151C6192CDA664172D3
-9C1F20CFECBC0E4348BB5D88D0BF4BE72F07B9C0737641CEFB7DB6F285A1353D
-E6891A569402C12757284E9A93E1B77C1E58E7EF2837238EC0BCFFB06623FDD8
-9401CA0770F158702CEDA77E7D557019B03A5125372FFD5141582FED1023385B
-FD27A8B645DE6B779B92E9FEB6C3A02AB4DF19F3DC484D92E63CCE22FB733AD6
-3D55811FA3BDB8E2BCA5AAF2417E70FCB74ED6FB6C5B43F5F96A3019C48F9D3C
-CF5BEE959D5DD08C8694E3E8591434DC2F13992177B6F99FFF799A09623AA54D
-14CDB2BCE9FE62DF68DD01B9C2D91FD568A408613E013667BD5EE2B47383F85B
-DD54D1C8CF25652A5FC7B3803A5C6EAA15506746A44693CCDC4DC6A3E869E020
-D2FA893A63A719F0AFB8F9F8FD3C3FAA25CEFFD2E6F344F0D21FAA310161E928
-57C15E2C8118F4F8647B1872FBAFEB9741A58E8F45A4ADC38BAECBF8DDEB9F32
-E864D417366A6EFC734DD617CB13E191DE7FC92D554C0FEE8399FB580F3E9473
-E5DBCD1300EBA2DD843C95F0F62377BC064BE1046FC8E5B4F0466A7223242066
-83671470644C2F035B3FFE37CB6F58A61E527D63E043D60B8C515FA7E98AFEDC
-DD1866776CA51EFC576A53FCB0FD8448461576D55445122B9D0440FD285F8B94
-726A796E8B6ED4ABF5252C8E0D33497BB5FA6E9A07F81DA77586F094EED9FA9A
-24902FED4BB1CF856AC0C0CF9B930FA6164D569F2B4802EFF5B6527F8D7FFE93
-A907F9F7DF56AA4CC23125F165EEDB46AA8BD2ED6A8CF84745F9793A2293143C
-1A8C4F0998A7CD4433230F1271987D8CCC2F6640368240D7E6BFE8F8A9DAF521
-58C8D9E8914B4C7B9F2B2A72A885EDE3A71CC550053F5BF3457FD93534F88F9F
-239690925CA1785BE43B624A00FCFF123E43047951C51A000BB401C5E2FBBF77
-4F725632E6FC67C64E5ED6FA95DAF0687424F94EFCF97B72CFD6316F7A19CD58
-275E600EA4F13191DBE69745885C8EDFD206C5BB8769C8CF547F9549A22F0409
-3C638977CD2D9768F77D363F2D2112B1D0BC918CF84745F952D271B1CB156A83
-82AFA9670E4B3E66A9A45DBE756BEF66C7A29C8C89ADF7E3B766F16CEC8E1B99
-626BE9AE136A78E9A89A7D2D077C01E3DA1D316800F859028CF2A4689ADDF0C1
-009073513EB0306F6914A9178762E0E9E825211351C67E9B91A081771047639E
-516F6B12D01EDA4F967A91BCDBC67B55AA74C6FF54A2FBEB2F2C19CE76E3F173
-ED70166A1D912CBAB7882517ADB1B6216B8290D54D993C0B70E8AE167209A11E
-BBE4775288D61946C94882500832569AE45CBC885B8D6C537F4A6FA75DD447CB
-5AA2831D6EBB29F8F7CC7A29D8586AAB176E63142DE4A37720FD9E37F09E9741
-730A042FC35B5334D9C490C78C66BA3B91554A0706770595B05BBF4C86AA1BBA
-CD7A3D0AF0237F4268909EA00B16AD0FA8802ED22AEA1F697BFAB2708EE8EA22
-38501503DDE776A9C7273B8A0E3D7E7DD15C3D6267FB4F4799AFC48BC7024789
-B386CA202DE413F2E01ED03BD5D0D1D5B3FF99076B6CDAA89C7A0CCE0D09EC77
-06496B9A9C88C1EF3F824497A140962DE88FC229B82FBE3D07ABDA9E7E66547E
-DCD987D91056B64792C7DDA0BFAD81E91C36ADAE4F21D793087DF44D7F5DADCC
-34BBD2409E165C8FFA668956157C13FD6981AC63D88A49931A673E2C72CA9341
-5B3A0C51F4D612ACAFF37A71E728DFA18BC484EF8CC0F1494B19FE2677F6C8F7
-D5F7A91658577C9B816E76AFFD1F9E86E5891407B3FA4ED9FDD88E84ACFDD764
-42200A2FEF9831D9D3776B2573047B24CA4108E0A71F83110154ED1CFCB44DC3
-6D1ACC7FB2F695DD499FAE008A8CA7BFC5D599712B0010B739C5907AC069F871
-D278A21E252DE2E2CDB736729043213EF18F3A4148FB8FF037126E1FEBE67E84
-61CCAAA685669EB9E0CEA01FFD3BFF6D1716A45C6D45884D787D15B8D0C7F929
-C85FC6610BFD4B0C1A4A726755D485BC5A5A307E04C45635F05F6D74337A375F
-2B330E4675D3AA147431B66C116C996A27E5FEA04F14A62222EAEABB13FF733E
-878993645475F2F9BDE6B1E5AA2FD4E13EC030B98100C8908655D5053794C021
-A3DC2E11B77210BEA7D506940A2FDFD2F7D1CCFC294F6BA95D4BF986465C8B80
-78FBC93F860FEF5422B68E6A000D213F8A854B3036D5D60EFD339A0D501CA2B6
-6FB5D3F37A4F23F64F16DF01B3F31C1973E60ADAC1DA4963F6B3B58B0489E4B4
-1E6BAC48B17383C35082FF43720BA20CDFA532FFFB076F150B17EE8C58E27A9F
-2868143CCD8B2E0D8EAC1ED6F2EE3AC85C3A293F9548F69808B11D80EFE0AB09
-A13B1AE202B8F0E643802C2E2600464B4BEADA5A2F5575A128584AB509AE171B
-70E1F14482FD77BB899AC1AAF11140AFDC85CA54EFE21EC3DF261D166EC904CF
-1CF201EA05053A214F14A0AAAEBEE0B8D9B2E815458586B8DE99FB07FE1A4B73
-47C316490F891A7F76361447E54F909BB41A0E0B91E435B5F5E92E127AA84194
-B47B7F6425509DA2F2F11C3849545C1856F5F959B32E7C187B1C480F65FCC153
-65C65DF9EAD804820E3EA361753C0D48F7216A36DA1752EACF3FE5AAC9BC5B12
-8926175550DE59E0B4A3DC1B3A6B3DFA8EB9920C9AA36D3D53BC57D60EA2DB5D
-0081DF3BA8A699550EB2BBA928D6EA9ACB2AAE7033EB441C7ADD877FF4C4056F
-9FEAB3B7FAEFFAC4B10BB121F0AA248AA6D6F83CE3CC265E195DDD6151192697
-B98DAF4BF0ABC22E81C86AD2B6ECCDD888313570F3BC9FE76D45D1D536FDC2F2
-4F6F341B03AEA842255AFA6D1B2F643B01CCC1B368F0EF82A2D5D4A09384016B
-8E0C1C52B4F32DD75C0FC8E18E32C20F3C29331CFA8685FD411A22E076DC560F
-1F37DA4C6803B0048662E11FE614B41D3E7F9AACB14D2E8F145328E9D7A4D999
-81F9B8FE82B59F1D2EDA95461B5F6BADDA8500CDEB07B2F4EAF64018D8B4D853
-C7D1286E50183C5B6CEEC9ACFF02BEE65EE2C3AA6BBF38FA62941FEF3620648B
-678C8B29356256B7635C1437F04EFA6268A4678CCBBF9FF1787623730D2AD27D
-A5E76ACD0FF2ACB9A57361FCD7FE655B97D5C388BDD849952C9450ABA55A855A
-465FC9CAA2B9FF2AFC55478DDF9355299B0496E1F895701389CB90D27A193F81
-A0BCBE31662B78EB420BCD0FBA72D383885DF44B87D85B63F4D17FA5705537B4
-4351772E4C846FC0928672749A1A5D27D0514E3D197EBD10BD29874FF079B7E9
-D5DD1B5C9B785C0CB1C585A355503AF31274DD1B97A12D3520511595CC76E28A
-ADA3D43AEDE2C97F90B0D3B1883D4ADFAE6E70012AD1FF8BEA791841A2B85410
-F426114F35CB920437931E3CE0CF0EDBC80E18E5B0BE1E16E6DA2D5DB3870263
-A3AED0B0296E94BF491E435822092E0FF556B462F57466551E07308B7C2CC85B
-DBD324ACA2612B8C8D02952BEE23206D5D73F5F6E0104078E0B427A6731BB465
-BB277C0371FF4016B79729F4593CD57AD36182FE51DCBA880D48449E70221D45
-D7F515D8B8E6CFF2F40BBE8BB807644E4BFA8437A0C1E2A2594D2E81882A3746
-F4E9F3C905DCD2EDA8157E8C956A484BAB6C7EF3EFB95AA9F86711BDC576EA2D
-002BD2DD3DB45FA1C80914B94EA012C2CB326C77DE471FD8B5ED1536ED84E4FB
-DEBABDF2D3F4B18B891AF0E0A57F13CAF26EE0BBB8D21BA80FBEB00289B67319
-55A5945C06D71213B7124A9E7186E54480A1C8694AEBBF9D0059E49726D67806
-A8FF9002C645E86261AD11D3F46B6EEFDA628DDDF0BEC6DF72EF9B22437A13DA
-F95AF287799D7294BFE70C75C5136E1C70C7A1CA16E5F9855C9C0DBB15CD65CC
-4A74AE8942F3F5C1D5F41F8DCB963E0E814F3A97CF00E05D5ADF12145AA3E7BE
-794BA735866995F227544E229DD4C900222E9D9F76FDDC7FC8DB78AA79D1378F
-EB4593630F615DF51A859B888FDFF02BBFD06E59DD8B7F7AF0FBA98A022DB451
-158AC56D26F54ACE8943F7A49B33E848AAC6E330EA816459157EA1474477AFBF
-EB0F3EBFD6B9B1C79D4EB28E9C64CC0F14C004D504FAE72AB3AC97DBC574DAE5
-E511261192E63D5FD3188FC846F0D899DD8EA0D0D1D35943FF562B76BEE74CF0
-A141E1B48FF9F8107647EC1814D76D9826B0554CDD8C99CB4F39BDCACFD715B1
-ECA8991E4232C9B5C4C01B72F39C79B2FB6659C7BB459B3F3935CF0908431000
-15126287A7B0CEBC255125E72F22B3EFBDE6208029DA674CC5B805DFFD61F863
-62AA7FCA523F0713782772B1F4C44C50ABAD90E92325BC01DEF9E147256680FC
-0B3463651C415183F0A9D76195F81B73A5E829D58B52C7BBA1BB06CA92943388
-8E18E712115060705EF4B86BEE5898AF1A9927C389F0EB5C9F53E531A1F9302B
-2B7AD17FC6D154411DA4E54164A1D4976BB9C452449967E2D0051A642B47B850
-DC7BA8C09C499FF9CAD8420F01AA14162650DC233B6F93C11033CBC329FE027D
-9B37E958ABBE20D125147AA619051DCFCEF5DACF1FAB212B4E44D6CCA29127F1
-84FA5AFF25692CF492033F6DBAB9E536D5C18F23A534CF0406CE7AA0A8CE9E23
-9F8489436C42D36DDA54854ECD5FBE5EA7F5AEE98D06929555F96764F8F5D7C9
-EAD05AA2CDE772F2F45674917E8E21503E79A3C5191E68ED2A98554EE01F4BC6
-C5C3B2CE2E6A9F88534DD7DEEED8E2AC345A9C44C40EB676706202C041EA7864
-35C27C4B153FEE4862F1653C77BF7B8FEE2ADA8DCDA824060C8933045D8D9E63
-F0F69CD7A6F954B0A9E85F7C138F8FD486D92584FFBC38E223EF5FD4558D84EC
-A8127E7B22FF5E075AD73AAB4000E2E53B54F8D9DDD43C7573F9F42EE6858457
-35149769ED212071BB9202245FB7FF304B60B403EBF1BAA6B6285C0B591D292E
-1C4060AE684965F5EEFE270D5B6623FDE667EF39907FCA5DBA2C582847DED443
-3D1DF10CA8EC1B5F70062BEC4A7925056C036E87186EF573113C38E31615BBF5
-4BCE545B61A6A5D8F42F4E0087D881623F128B5FDA6E8EB090A075AA7A8CF33D
-280AB71D5C139984ABA00A1E5238628F14DD018464715A98211662E4FC3FC817
-E741D8978F6E1DBDA5ABB133F58254941C5F35EA5266365F0460CB1ADAA61900
-6638FDFFEB15F269F5E6198DE6EB0273C9E67127511337A4CDCA33CF19E12C45
-E19C2957DCAD8BD625D8A2EC7E8062E3971CF64473E5E262F779707FAFF1B434
-38B22B4C2FC302CBA5FB6700745EEB2403C529A05BB341F3AF07C12677955E35
-BE7BC991BEF2B24F3BC4A0AEBAB6F84DB8F9D91327C68041799BE1CE104170BE
-7F87650DAC79B191EE15E2A4BD69E67D092A69F6C1899172E3CD6BD8BB751A3E
-E9E7340FAF30B562A57521F66BB47ADA29E6D419630F6C725D3594A9B2F91AA3
-9FA79D321AA64EDAC6755E67C0BF440A7F1EB5F19AC5BC90AA89E71776022738
-492FDA1C935EB8004D49F83F792D9B525E8F078D2B2A3CFE1E9641D862620043
-2DEB1D9A94CDD4B6519F0D5C05FC0A0D88CA37D2254CAD25EBD6A6D2EE55F29A
-9AA6DC6D4078D2709678F2EE30A1B1856F19B5B174B9E24D58C49B4F97F9DB66
-3FEAF8DC4B6D19B6D80046ECFF48E9169E3EAD0894A8B4BDF9B9AF20DE83F28A
-814B160E37C765A8987B8EF501B84F0F05D853A56031A6C258804A4AB72E9BF8
-5C4F3751355F4F3C087FE2D739C9D564C5AF2189609C042F745E807533C4CCED
-891ACFA4DA4D65712275BA5024F81265A589BF19F3606873D0A43DAA91152390
-67AB6335E3198AE7759EEC131B284E57F970F6E95321BD0195693927BE46FB7A
-F930D37730D31F284FF9223A775B4DCEC39CC2418EAB831727F61956D25C870A
-83D3631DEC6DAB6E69BE84A2CA4DA29750E29B37DD1B9C0F4349C2A36578EE47
-8807A83BCF7931787AAAA5159880375FC0734BF290C1F206C90A1BB218121E51
-3ED345B406AB7B3571857135A36DF0C0B344D528CC6BE4A0AF9B6E8B0FBEE5F9
-3E6D1BBA29BDA06F63249087364D81063D085F4576A59955857428B801AAFD35
-85DABF6BD4E7929A26B5500888C9AADB025327DA99948D556DA48E8CE04B5988
-93401AC69CC6B9E1F08762D33249EF3F938E4771772C1D5A6801DB956A12E409
-EC8BAEAEBC8492175CD184AAF63CF1AE1EBD5142FCD911158859B7210D3D8DDA
-748AAB8B28DBD425EB4F4C84BF25D767A1A52D19F4940B8E47F6E375A900EF9B
-09838CD5763E2625399CD9ECA79BBA35473289091BE60159B19F361E690EEBD9
-01CD36E1A6E6B5267C70E0485437C3CDAD6BD9FC4B8B8D29DA28A730DBBC738B
-751611DA36BD7562E2EF5F8239C403EB5DC2817CFD8F84715203327671419E36
-A04F0D543A66BDDC54ACEF5799D316DA2B1285241FA69E34E795151073557908
-FD230207545DE1FB62725C6E900E7D33F0E897AE58DA0CF3127AD87618E5B8AF
-F45BA9D7E01711F648C7029AD181008B6CAE78861BF37BEE4B2062672AD87958
-9F0FA57635E376CFC12CCF17C18750339FA058AF585533BDF66752C4EBEBE153
-9F0A815B6D4D30C3C64D4C91FF36FEF4993EFF26CF08D366D8D95E8FE3F15613
-5586338DADA5F9295967E81DE02E184329B8DADCD5D9D472538EE4A43CAFEBF1
-E31165E8915707AB8C002F3D947B794EC3880E6251D9B6898B3B6179117B12BF
-F49A615D657E38A25F7E2DE9A88FE8CA9526C35D0C156C30ED9712EE873951B1
-1181F197F9952C64214411F2AD9D96DE3E508108B6BC355B5FF2B65ADA08A3D7
-F27A2EBA663712EB49866414EEB2BC397EB6D65BF5341A77B1FF16261B06C7D0
-1842499BD48B0916CF918D4B3A4E73C20DBCE89B6660FDE6FD044B8D6FD83156
-1425FE1F267C4C623B6254AFBDD2EE08D021A31DC240F17DB6D911909784D042
-0EC0D12D743F356D8C3FF8BCDF9CBD49B512B17C3E9653CCA83DE38AF374FA0F
-0827682E347D6A9205BA611B8625EC227568F823C87BEA48AB2727FD690A1503
-C9B4E16AE489008F88670793F6059A72ABF86B79DBE72D34F2B6EE0208FA57EB
-922F1A9351B2F02F569E9BFD5261B8CDDDE3E9722FE0741F99DEE0C873259022
-A6C8090822540359E56D3D077E615A7222B7593854BF0414ED729295DA8E61F0
-71F646371F6B7C628F7C12DD12D9825146BB2A8CD8A82987CACE36FAEAFC6861
-A0A6B5045084ACD039FAC09273A3619DC9D3F16EA3AC87BC865A682926B5AEDD
-57BD20A479BB6706FDF90823E1536F0BC3EAA621161CDEBAB7FA3562C08BF94C
-84A89E4472FFE3DB47D01C301644C345CCB43EBC8C7B9FB4F2723BE4C987C8B9
-10769B0553B96492D2F74A321A4D47D5C733A013F73AD2EBCAAD97EA4EE92848
-84F92E32EB6BF7C59440A380CFFD4E30B660716D804C3FB1E544DA5C9DCBA601
-5F26A44F20E401CFB0746315086883F2325373E33C71D9838A14705FA3C13639
-07651B9888E9E5306ABDE3A5BB17D982C9859635B91EB8A73B5F710C42E47A7C
-B677E5A77F9055350E1F54860232129E59C7F4C43A7E654F8001F91D205B88A4
-AD8C52DAEA28839F8B184D16207838FECA138105416CB2EF52E0D9C012110677
-DE8042420F848095C493995E2B60C009451FAB89CE596A87664502C9C370A724
-6C22FCC9208B1C8D974BB2611E3FBCF5049D1B2A807437DD1B1FFC6722380717
-C961981C6D853285C53D952CFBE303883867626435463D68C9A75E270FD9062C
-DABBD7C71FCF0CE304816C18FD36D740CE9D33E494A3C5A03E432D41718F81DF
-DE593767E3AA960F389106A77B879FF83476801D85BD76B3B92FBB043BA08E44
-ACD961F68BB3B1EFF42733096D7DE08722DC82396B643805AF7B3FAAE39D9BAF
-75A78EB9D037B6B59776934A07CF3D4CC1FFAF8A26D8DF3E04A5A8770140DCAD
-55957D53DFE2AFCDF6D21770704D62AD6DD87313BDCB753BABDB9B967264AC73
-0373619883ABBDB392C943437E552031441558C80F44F487B3B0496DE7E60B61
-C79C8A80
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-cleartomark
-%%EndFont 
-%%BeginFont: CMTT9
-%!PS-AdobeFont-1.1: CMTT9 1.0
-%%CreationDate: 1991 Aug 20 16:46:24
-% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
-11 dict begin
-/FontInfo 7 dict dup begin
-/version (1.0) readonly def
-/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def
-/FullName (CMTT9) readonly def
-/FamilyName (Computer Modern) readonly def
-/Weight (Medium) readonly def
-/ItalicAngle 0 def
-/isFixedPitch true def
-end readonly def
-/FontName /CMTT9 def
-/PaintType 0 def
-/FontType 1 def
-/FontMatrix [0.001 0 0 0.001 0 0] readonly def
-/Encoding 256 array
-0 1 255 {1 index exch /.notdef put} for
-dup 33 /exclam put
-dup 34 /quotedbl put
-dup 35 /numbersign put
-dup 36 /dollar put
-dup 37 /percent put
-dup 38 /ampersand put
-dup 39 /quoteright put
-dup 40 /parenleft put
-dup 41 /parenright put
-dup 42 /asterisk put
-dup 43 /plus put
-dup 44 /comma put
-dup 45 /hyphen put
-dup 46 /period put
-dup 47 /slash put
-dup 48 /zero put
-dup 49 /one put
-dup 50 /two put
-dup 51 /three put
-dup 52 /four put
-dup 54 /six put
-dup 58 /colon put
-dup 59 /semicolon put
-dup 60 /less put
-dup 61 /equal put
-dup 62 /greater put
-dup 65 /A put
-dup 66 /B put
-dup 67 /C put
-dup 68 /D put
-dup 69 /E put
-dup 70 /F put
-dup 71 /G put
-dup 72 /H put
-dup 73 /I put
-dup 76 /L put
-dup 78 /N put
-dup 80 /P put
-dup 82 /R put
-dup 83 /S put
-dup 84 /T put
-dup 85 /U put
-dup 86 /V put
-dup 89 /Y put
-dup 91 /bracketleft put
-dup 92 /backslash put
-dup 93 /bracketright put
-dup 95 /underscore put
-dup 96 /quoteleft put
-dup 97 /a put
-dup 98 /b put
-dup 99 /c put
-dup 100 /d put
-dup 101 /e put
-dup 102 /f put
-dup 103 /g put
-dup 104 /h put
-dup 105 /i put
-dup 107 /k put
-dup 108 /l put
-dup 109 /m put
-dup 110 /n put
-dup 111 /o put
-dup 112 /p put
-dup 113 /q put
-dup 114 /r put
-dup 115 /s put
-dup 116 /t put
-dup 117 /u put
-dup 118 /v put
-dup 119 /w put
-dup 120 /x put
-dup 121 /y put
-dup 122 /z put
-dup 123 /braceleft put
-dup 124 /bar put
-dup 125 /braceright put
-readonly def
-/FontBBox{-6 -233 542 698}readonly def
-currentdict end
-currentfile eexec
-D9D66F633B846A97B686A97E45A3D0AA052A014267B7904EB3C0D3BD0B83D891
-016CA6CA4B712ADEB258FAAB9A130EE605E61F77FC1B738ABC7C51CD46EF8171
-9098D5FEE67660E69A7AB91B58F29A4D79E57022F783EB0FBBB6D4F4EC35014F
-D2DECBA99459A4C59DF0C6EBA150284454E707DC2100C15B76B4C19B84363758
-469A6C558785B226332152109871A9883487DD7710949204DDCF837E6A8708B8
-2BDBF16FBC7512FAA308A093FE5F00F963068B8232429ED8B7CF6A3D879A2D1E
-2931CE5F5D18C658602059F07BE66E6EFC9239D7AB2FB8A4CBD41675B8ECF279
-650C29E53B14AC0E392A664848C1844B1CECBB2D5CFB72D0916B675C9A9A1E35
-F12696A6F628473C604A95376468E06E295AD6F76CEB939D94113532050B9D5A
-D2F41A9EFB9424D986612313B89EFE9C8A71313340B248F6853B1EDBF02B7F9E
-F447220FE131D7D54CFB8AA1281DBAEA73E665BACB1F164552CC0CEDB63BD4B1
-4A9AE8AC6FA02242DBE8DA46B64B6BFC11762F0784F216FC8B9120D688D1705A
-438B14F5E5DEAF2A98408B3B64620DE3732A4DAE6D08D5D97E34C75DAE19EABD
-BA0796165C1151BCBFB1DF8D29A63A8300DBDB9E3323CB82D0337598B83F4F2B
-A97CF5196D4D1CEC1EDB8966E548C0D9C194C932319610FB43EA1B86322FE641
-AB48770FF13BD475A7267E142388563D1A400419C585B22A9886074687BEDF74
-D905BE8EE440BA2ABF28EAB673399B7F129B9729DD5564C681954621903B84BB
-CAF89AC5ADB2932472DF29ADA2BDBDB4D05F65F28F5F4C529613D61858E0074A
-082A852710A62A147C966F2B85B51B0BE85F11D2057C66FDD61F6C5755367980
-9F4DE680601D4DA41B46F8D2148450000413C27AA39B586B74B977B25F0FD3C0
-4BA1EBFAFDBEC531EA1210365091671CE3C86A6D4BC591C37DCC02570042575A
-9D24252D6E01A8603753934D7EA5CAC1BE4E5AD2BA047DE8F3983B23A8A1511F
-B08D373B69E5076CE4300137B8805EBCC0AAB89BBB312A77835795E3C069322D
-42C893A30AD739E2BDD299679B158F7493764F2321E3965141B5ED1C6F4765ED
-F46D391A646B30C90002B1C461AEE79E5F094CACCA656CEA3DB921CC5205F328
-A2C69F817061D6C60B121EEE844CA5008F23DF08D66E248C339CE7776CCC524C
-8CA2BD3DD82DA10C66125257C1EA6A0550766E29C3BDC8B5B878A4D35B5FA0AC
-1FEB3A038C1B92A6B625E7B2BBDCBB2A97CD92E29BC5850422A7DF6E7CD72722
-4096071A3AE383E392D6EC8615239B9357427F1CCBC396AC636B1CA66B232EE2
-191F60A878286CD42C95EA5DAC1472E81C3F47B0EEB6BED36ABBE143596BA7BC
-7B41F903F7B22F5C6436B07FC8D91DC8B1825CAF3388A7EA9E7110FB8560077B
-B2882B7B2D513C6FDF621FD23623EEC2D861F810CBCA5DB8CEE2CFA8A2D5C8AA
-DA59EA9C229EB38B025502C5E625DE3816B77107E5967F7596857676B6F4E454
-55654BFA837D8FA0F4FB214ABE61483F34E2DBB95B60BA52E0ED8486199528FC
-439D000BD1FE0CA35B39D08090E21352A08F54641764153C8F61CF3A1A4FCB6B
-F4046AB159484B2F14A67E06E7ECC9156E8006922FC5C398D6CDB34E895245BE
-9527D1AFDC844B35BDD6D2DDC078475C130E24C0F199B0416B7422FA27A0931A
-1FA6805D4D60AA052A0101BD911C0DD25E870F0CC4226C4C36D6CCD442251B64
-0145B3EA3C2C799001B7AE02CA3FB0CFA545A4A5147787C471D01CE42B40F73E
-4AA293C37F43EDDECDFE3FEAB470385B978E4369AFEEFE6F171AD5A4F6573EAF
-F375A89F9F9CA20FA45750AC1F9A067B8D7DF6A044D9B1AC1CC6AE2A1F15250A
-7C99A150FC7F511BEDC3BBFD64E5793EB558AEF72D080B23E71E1325F3245674
-AE7AAB0F4DFCA0BF442ACC254F71DE3F7B135EFB1B41308310309015E01AB4A1
-0E491A0D4C1A32ADF4786370E01457FA9DD7E915782D6C7E1E9DA7A67EF43F87
-A4740C18E53BB87D1DDDB2752B538B7454B1DD65669F0B395683FEECBE05103E
-347A9FB9C98DFCED99D7A6879DDD1464BBA5095600F7CFF34A18218FB7226742
-8394DD5AC37BB6BDD22E952C535FD3F9547A01BC825A2FA8109068F05946C5F2
-EA9D9D01C879B44F7BAC40C94B0094FE58C1F6F916E48DBBAF6C72C0B11E6242
-C65173EDE7CC47B8AD3DBC74BB64992953AC98ED49B4B46CA94D223E961A962B
-8A184D2CF2A7F92862C6E0DF6CB00D30CF7FED17FEA42838A3F81054A472709F
-F3F002C5DD8DC2E7C4BD983E18E2676A81F85A65DCA00012CD287D6E90E7EB48
-4DCF789DF363D3BED10FF8B9B31D9BB8CABFDF91C3BC8C5A9071F4AB2D3B1840
-FB9C52292B108326F11693A29973B42779425D084A3FAA4F43DDD9C07DD357A0
-CFD35A7B3B6B14C59A1594B797EAE5A3FA54A7AA95EC9ACC31460AA17F61CBC8
-DFEB44FF91E0E144FE12AD252162519820F56A157C07299AD2D715FB80522A6B
-AB8CF919FF97FDCCCA74135BE8E7E5413EA32DE85CE077C09AF90EEE7D78E11C
-589C21B9099F7C64999720AEC0A18123FB67747F75129A4D3F1DBADEC948CD18
-7E1E2FFB400CF428A474D305B0B831133FAAA866BE8205B430C3C94AE7EBFA33
-198952E806DF8F7C823BDDB54677BB57DDAA389FAB2FEF8B89366B312AA6DD03
-7E3A851442FDB1BAEE81A154A2463DA78FC47D10BDD6F55A5B74893F188872ED
-27F6CFF12AD92DD09970B995C1629BE5BB41CCDE25C2857DF45AA650083D9965
-F65A2AF700B3097C1AAAA1FC29C89DB9186E50BA22F8FA0D23591B50F617AA62
-7CCA4D77864FC4AF401D4B1BE16BFF00385D89656E347C52C12A33EEE9FD0911
-95860B53F18BEFF78CC0E8DF76C654F11EDF2527F577CBD196EB8804A2DBA13C
-840D15845E120D5B8C1A710EF6CD01FAD157B94BC2D876C560227F734EB795AB
-CFD47FCBFA12E0C281147A33C80CD1BD8A1C11FD3F235D366D367C9C551CC1A8
-3EA7AF1D7649B7A6FFD1BD8212A00946935D9E877FB24636BF573A5C620B3156
-17C914386B4FCAFC3AE9FDD1E332D3EF2EE5305B3C01E4BDB9E3528B71C40B82
-003B049352A5B969A8060FB9A86D2DDFFCC4BD41A556DF57C23595F9EE6CA267
-649866E117666151FAB8B2DB9AFEFB841A261898DD1D52592CFC0D1180B1DCBE
-B7BF3D078CE3F0C78999CEB964C2E6647341CE2244399A304BA1F90BB164F7F5
-81F0A0221B3F71114C7AAB265DBB3F6F79BC6CF1A7D7CB11BC9AD969416FDE71
-34EEEECB1F7AA5744D6728EFE7FDA19EF74E5238AAC1FAE762797F4ED26C3F05
-2D2316A5F815F8BB2523067D3AF16652A75A12C409B9BE9416AF3BCF4458003E
-F1922C60F94DAD2C549ACF20C14221274FFAD230B1B981248C42876074DD8B8C
-9D81A7FDDA6BE40BE0787E3120C4FBC93A9A39BE4C17164EBA33F15BCF042D0C
-37BC7E678A4D9DDC9519A9C37384383A20AABF131E44789BD4CA9D56800DA323
-8DEFADBD2D6899603F9462782F37930DB52F28479FD84EC7EE877E879987CB39
-E7133F429806EEFA5974E2D16C934353FE02127954BF71B1D1A09C513AB4DE0C
-A0D9DACE1E8D361D4747ADAEAAE6190228E9EF1DB43A99F52DF26E11419EB14E
-650BCE54E9EF0DA7BB70567B1F7F441D07793028FB52A3E3C561B8B3B34B3D62
-3595B9F44F4D74F756FB6B50E0BFD47585BFD99F76634890EF314713383776A0
-C6F34BE7E339B949F523562F81498175C93F635B1747440999E60041A2B4744E
-B8AD0C1BAB9EA47F9AEBC4A5349C59EE5DAE4E6146C184DDB0BD1EC9B859398A
-59CAAED3A72B8AC998BB5F51CDFF5A520AE2C36C4CDB2BC118663DC19E6E103D
-ED641319D3BA89D4702C56D9FF61F3A93E4DCEC715001E46690D4F184B83BBF0
-60B969BBFDBB3F83716EC1480F99ACE4F02209F50AA768209911501F0F2F0E87
-48D8F3C7340963A0C8348FE3955B7C6C8614ADE31305C388E533D26690004ABE
-71AC6D1213CC084F5AA4B66E261D7AC2F16DBDB5AA2F985BF822B23AC30AF0D3
-CBF4D94DEE34515596E3E605CCD98A26FF07603B4A52B6A808F77393BC5B9DED
-620F4824C031942EEC542BC26EE06BDE40DAA2AFAEB124058FEB5ACE034D681F
-51C3735D0BF340444C793BACAFD1E3860017B164697BF118C1FF5C124B88405B
-B5AC38BFBB861A2D076B275CD0CC45504A1021411A41B9B1A3AA413BA9D82BBF
-3022DFD0A1440F2D58BAF9BA6BAD749766900D83368AE48BC02DCE12F6D7CDE4
-1FBC15A80D9E7B377E874AD17C6364F0621B4AADFDF5D90A374A9404FC57055D
-6A138926E75E67B9365DD3D95B6901F50FF465BBD813EB646EAC09BDC2426B35
-EF47D338E3D9EB7340C381FE1DD8E2A5F6E1598618B64DDCA43D33858DAF5095
-8A92152869F57DB7D548CDD16582AD07D5CFBBF4433CC3D487EACCF8784EDD80
-11D3C3054FDB1F78B0FA879FFCC99DA15D4E306AB927BE085AE54A896F6CF3E9
-F6689D4AF2A88C7024D3A89D31D024279612A829443BF35BC4F76DA05900B9B5
-078A7B78C9310279E3A855465731514C9CA8D643E5845873A6D3607F8F0D3625
-C8939779E756B2C6FA565033C8080226DE388DED3C989D5BAE59FEDE462591A6
-ECF9B40DB08A23D764DC5284CD8A04B8749374EC1A6A6732EF0C9852700F9436
-5D9FC748E459D13D13099FC7D74A86D85A18344ED6F7965685B3C54683821EA5
-2EC0C8EBC5188FAEC520B41D4FD68D7B0C9E3A7C3BE7C8229789697D0B265F6B
-5A1FE82AB672357087C05B62FC06DEC6C3465B17B74D40A30214FBEEC649BA7E
-45D4B8E9F2B7888600A16950B9D5C6B6F5777DCC97D04588FBD845F1C9D81189
-E61BA56AE99DABF99441BF2FC45E243415193898D02C0CBE119FDF863921C2C0
-B760B48C9A1F6DF7176813D9E7BED2F5D27E4BBFE9C27A4062BF99FAE432470E
-98A2876BE53794FC7E3D1F2ADE2788E51682C37503A9ECC827867ADEB4C80227
-D9D8E23C8CE5DB56AA2406C117768079FF0DBABB3E5981A48B8A3E3427BD8F6B
-D894F93F5F9018C23BDEB5F4711E87FA5EB142340111A9F7CCCC030BFFFCDBE3
-929A6BF3300CC9B1D79A92C157824E4A575793AE56D27135676431FB6596DBF2
-2A13C8F6E6082DF56F72C7B1E7B90ADEAE663A4C464E4C8C2B2F7AB9F154F942
-D573C87460849635FF730A2BBC479DB662099FEC948830E4831D8114B73C4EC6
-65C61679AB531A0E92967C6B79F711D0EFE29387EA15C379D5DF6C199BCAA16E
-0EB5EC39EC280B03A6A3DE9CC87FE94C708EAA00CD4A62D9AF26B2CBE892AB28
-7ACFF0B18CB1F0455F8389F73C0B490C8ADCAEF476D9E0EC941AA218B2B9F92A
-BBFC310C03DCFD06FD5BEFD566C25928B358238811AA9CFA445FC1B6600AE532
-657A163F95E0BCBCA9EACAC62E401863EFBEA751C9074D5807F8BFC15A304993
-03939165D2F52B3915511FB7E5F231F26D6C7A0D4E769501729EE55C5FA626F9
-313241440D20C0D640B3E7A05DDDE10EE749494840467DC88922253CC4B4B8B5
-11C5B308BC3713A40796E4A8C99EDF166B54E60493DA4A2C360F57E81ABCCAE4
-26B2A2E071B63C45D9A6AF034680D81480D85E10C740CA5747F506DE3CA3F489
-73FCB5CCC94D5BB0876A883D65A47B05C957A68F9598109B1B00EFE6E01678AD
-354F37E28932D02D7F2C54D36945718C9124FC1515D2BA0D25A27084A7421762
-4F2B12AF7B9EBBD0A88E6EF38260FF55C14372DB946E551A6D6A967B008E6B01
-5A1DCCD8E7BCC291D8B9C4DB1EF72D50190372EF58764498360FFA1C3FAC6C54
-B95DF69F65A1807B61EE31114D52C637100E1177B0DF94FECD235B615613A63B
-CC71FDECA38E42C165664A4F2A58F6D679308401563AE85A4A1449B1F5AFD565
-01E6A6EFD36EAF126BE1CBDDEC2B1826A392BAF6141085FBFD78EB36052849BC
-83C05E4E3FBA8E05E7C979EF87A32DD90B8A6004200BBE75FB1AC49106FD1C98
-32E3584DEF229A697E949F1FE8BFDCF59C5ABF9D485442A0BD63967AE08174C2
-82EEE7E97BBBCC83E8FBCE6A8C88A12C181724101C564445F5A9155D8005CF69
-4C06826937C90D0AF736DBBCBDFC70440144D8FD8BA4896910B0DE1365602475
-34763A813F162FDE38214C67F2E87D71C621B26B4FDF379F11F1FDE4668C61F8
-8A65E918BACBEA12F880459CB4D64F3754D703C460C1FEBF0A8FD6F58F5DDEAA
-93D761AAA91B7957D2C6B752D6FF38D312857D47B675FF9B39ED7D30662D307C
-95181DC677A83B687C8A673EDDC45A38B28617F50DCF0D4E2373BBF98197ECC9
-29E5B8F3587AB4EC00B9EF8F0865154AEE4CE96DA350C00FAB8BD1FC903F1E8B
-A4AE1197806FB18DE2A46F66D2F6A746197D7CBC32A8E4C53B249AEB59908F37
-AB12B0ECD227ECD96B19D6553C9F3DA83EA3EF4901AC8374549D23DD91E51D17
-BF101B4D643353D27C69C3C33BD6EBF84308CABAC072F8241A1756109D22E11D
-CBB8CDDA99D0A42FF721F3AFFAE03265B08A7E2E41CD4D4B2645A0866D4ED93F
-911455D824F88C670BF0EC07AA14A9F056A44F8FA2DBCC09FD3E5DA478784AA2
-1909B0BB1AB6565217E0E3AD4E259E1151E49D95DA3188D2EFDC650E768EE9A1
-33F41022BFE0390245046253346B64A292409EEC3CDDB0021FD4AE37B4051250
-2217392D095818D11F927A115F471017E453D7847346DE3FEC8BCB91AA59A155
-772ACD9026A2A93B91DB3A6C4810DA77A37CAEC8517DE28ECEFD9A876494E8E3
-BDC15E6A5585D949098B1DB2DFDE09CCA8DABEBF092121FB9148BBB04645952D
-42079D0DDE13AA59417B484DAF6C30924FC393A8F0815A65AA5989FF738B89F4
-AE62B47D44DB067CBCFB9109E3C24C1DD84C3A581554E2014F3E6A57AC7A26DA
-221866593BB54873745980EF42161C4FADDDD71D4547B69F7F9713FF225C9A4D
-077A0BA2CEB8E67FA239C764ED4E2CCF8A8414E7AA936A03CA49C8263CB62A41
-3A312CBD817F90C5693B7108E1F3EC3CF0449109936DECCA38E22C15615182EA
-5D8E9022AF754BF994D4C9485073392D6F7262C27BB97A0CA68DEA5313CB7B26
-9E999E6AD6A2F30FBD9BC8C61B04391C43EA4A170CF68B4F5AC71D2017109943
-E1568B23EDA8673015E0C5D8A31E933A0F6897C00DCBE5B796DD82B942F51587
-1605982D47DB697EE1951C79C1613B9E9AFB90E2EDF66F9024C1CCA694764333
-ED06424375C7E82B268155C4CA52ADB42263F6648BB5BAA416437427E3C11C21
-D76E1E07630EC193DEF3DD9AE9800F90ABC9B3F79136EB2ED48E145E3FE92B7E
-F70973F206BE138A402999E2E29C570DB2113BB507349FE28BFB0DA21E121CBB
-14302D2759B3BFF2B44E088EEF6ECA611CFD782E12986863F79308E075F2134F
-30F158FEEC371D23E4ADFF110EE78D7A64F21F944F2D8ED8A15BF8A6FE9CE084
-438B244DAE336453662781AE997D62B82EA487F8368F333DF653D6B4627AD987
-30ED43E0402785CEB3255BC003EF67249E22408D312B862762A0E73A982B3976
-1BD5DBA538A3C510F1842A224DFB000698E45ACFE6D701D878CF5EFD80345D32
-3A1C7481FDC1ABAE47B873B196F62D40EF426774FA25F8222051F762FF8A6B67
-1F6E0ED8B78E36EC1F004F24E5698DBEDA70138B12F4E05C6E6738CC84F385B8
-22D1B4900160D9392465937BC948A1645E4D496496051CF45D950A1956F6A00E
-520E2099332A0619771E12B2A6D799046E4F4C2D13D4DBBF4126EDA1847FBA1B
-7BDB0EED2DF4785B7B3170709847FB045833CD9306F2489B813FA5F8B750CA2A
-D7D620A5A425E21806FC0FAFD5E3A2FC4BC7C8B06DF2AA526226BCCAC341A39F
-685F1FB0168AD2E8FD34F95925D0F3DAE06CD5B1C460E9F199805EBCE3FBE201
-F456E1B718641ABABCC92120A62FD45BFEA79BC873B37E88B84BBAF02A2639A0
-A7F190B4AE11A3DD8894A726D33E3B7757022B59D5D3B18A49A4C3322009A48E
-2D9BA8E9636497C71A8C713DA6EFFBDB98D98B9857B9B19AF3C65BDC33C8DE0F
-74B19789E802C9EB7A967ADA9AB8364034651E1CB0AC24DBADD6F5B9D59A0AF4
-E5B6BA95D1E1E0148D5120F3C19A572D7C423EDBE56C6433B486E831A386D132
-3A5C09AD801260C8AE3243B681E12961A0991B876A0FF1687895F0A29C19468E
-CBE4BD85E70EDB163ED03660F59135BABC9B1E4107D613931597B3CA726B41BA
-19390550FEF7472581F2700C4CFB09FD3A56D1B087210CB9F914C5F9B090337D
-F39E009AA7E105964F551DC7DB5126EBED6DEE2CF0F13C27FA695AD4564B837D
-B7E1D1D53C1ED8EFFA3CA0E42BB53262113EF8CF1C2DB687DD3C42551BD70961
-481735DA76956069648F7DF7876EB0562DC7A1DB0E5DE973BB06C1CFB5E9FF79
-5E228CECDC3EEB120D6B45077E46608EBB14C7BE2B7FBBB79E82557D6CB8B3BA
-E4DB56D90F999929C695B53A9F9F70DA04D0717A0C231952E9B3E276DA4A3138
-BEACF8543564074254AA85089688F29B4A4CA38299EFC6DBE25D17A17FED4A76
-2E827396BAD2E499B0CCB9802133515FA9FF61DFBF4CC6857F058710ED7E2DFE
-51F127F90F32050BFC3622027BC0C18E897DA6475B898B9D5AF15B4D03C96227
-AABEE49EFF1803D8B4A3CC0D6C4D36DC5B57EB3B83E28C77DB05DD56E62536FB
-D998043AEBB0C17175D023646712FADBC23BDA28FEECF70A9CA6999FBA5E5C8B
-70D4C4CB9C1A3E23B23CE5BD6AACE1F5AC0E4E6588B4320CDE9A4B1B8C594736
-2EAC45EE51200D3DE033F5D0BA0AF2EF4423ECFEC1622B91EC584875D8FCCA9E
-7D44A26037DA5476A18109D33540C17CD4B45D900BA951AF213CFFD275E60FD2
-D47ECDC7B683EB4C5EAA684BFE45F37D14AF46C381CC8C1103E1924C108F391D
-A153E15C48605ED0480780B012725E9B50E1A8FE6B7D2C656E33F48A33442B0B
-15A62217E06D831B7237EA49D4C05C7CA6C2F1B3C3A98B6CBAB1FC38ACE8922E
-1F1F699F43528EC4E526FA0283895D26390C37C1550C5618826F7BB2B7B45BBC
-8E69EC037100878ACD5D0ECD048D23B5FD06CAF1587AD3E60099790C568E2727
-B86BC7E17DDA26EE8720C2AEB3647E3B0B1D986CF8265F06ECC551AE7CAE6F36
-352966E41231ADEE5D68D30C53D41D7D3F50359FB7BC060C69833A45142F1671
-C23AA2F19074171DD410A722F04FE927AE9858AF0052F0C28B4F69C7A7AB491D
-D4C9C20169E6054E1F531410593F9BB69EC909F0DD314DEECCDC4F5ADC192A34
-3F7070689FDFB32AEB5B97467197FA73469572BBC3E369084A8025847ECBEFBE
-4D475FCE09607CD06CC7F5608F30A164BC5EA08773D3C57695C51E7092AA4781
-F31E528AA8AD26AE6960BA7DD023C702E482715CE85D353DB4C140F6E81E91B5
-94531304C73AA8627B1DFCC0EB47C7A888060888EE98CBF1B8FBD9B4292FE50D
-79CD2FCA83D498D7168F63360F3D5D4B7DF0FAAFD9E745EAC81E78FDDAEC32AF
-6B45893DE552A4B0EB52CDDDF539595D8E4DF0245C05596390D6E8786AB4C621
-7B82B7983403153FB1AB89333F420A7004C9D0BCFD1E576413E97A40067F72B6
-1A1F84603171F1585D1A70131235030BDB369E028C3BB8B35C23541794C14972
-B06E912A339CB6D6562711F701C8C8F8A97D93EA8ED440293B61012B4BE52172
-756698BD042717A71EF3DCAB935A702C2289A94484C8A9FE08FEF74577949685
-46E5409509717E9647BDB4775DF43F65EB75DAC23B59D70CB39C907FA00A400F
-AA9DF6AD2B4DDDCB7EF63C47AD093E14D4C54B0A903A502EE81F87A97D81F0D9
-865595D8008C868A0DF0364810A50276FE89B09F8A64FA698FCE50045FE582E5
-CF8AF80EEB0DD7D5C3E24B30A3961BEE2DF6CBC7F2B957C6C93A8B6611D25BC0
-830A1B9CB6E5E964F39DB02E0082047E6AF57BD46F92436A060B5ED47FFB77B4
-FF4DF28F86CD48E7FFCD2CCACC5360E06193D8FED2C27F58DA205442FC4F4355
-0164656094DACF27508D218DFCE80A644640E72F1FDCD55C22B2ECE55D74C002
-687C0F81904FF711AF7D0A4F70F72CD62F74A6B9EC78DF5F3A07002974701008
-AFF3F5CDC2C89444D13B2DE39CDD9B93C3D4E74DEE89C10496B10499D131EA67
-6BA50FCDC6C7DA2B3E94E26D3A6472376842F107D26DE7D137FDBA19B2DFEFD5
-60898956BE2225E01A0953082E5C15186779CE1C1696B92760C3BFA3B3D3C16A
-196CD51882112DC5A89301A09458B50F605B904EFF42527FA57A0DAC771AD5F2
-F1F6900FA167808EC2627E60333EFD2E7E6DCCC020F88EBB43660E6C302B642A
-E2AE157BF93272C3769C722809396BFB35E97BFB128FA3C3043FACCBA8EC8AFE
-475434EEF95683BB2576399CABF929CC6534CC42A52E52925FE97A2C8CB8DB94
-B83EBFFBFFD36D81A81A7241EE96A298A428671C7D9873EB78CF0D9A6181E78E
-7FDA5753236283AFE40D48D474D9C60FC71C065CFF66772DE7861225EBE41F75
-522334B2EC0F865E4157C50E0F0AC7D4F2C33348021C38107D0976ED3C5DBC01
-58576EE86938EAF1791CA39500112A3E89415D25F009710C7585E8870A291988
-353C8834D8EBAE470E2410D2C3CAEA110DD9A7AF0789BCAD8734E0A221006A8B
-C1B73851DF9521C0B5DD4BE8C05C68B963824C417FE108A7D5006B5569D7878C
-4788FA924073A66E8B4BF65B5A88B02B0FABA93CD8D1C7DA1A4F5976F20AA858
-3CDEB8E5FF91A265CDA61C2F5D0073D2A51E2B6E6BC4183FE1DFD928EEE25E4E
-CB9E12975F280E9048964518DED9AD30E75B97DB4AA4BA6F9A6018A491DCFD86
-0918C75C818E9E8C6FC11DC1F73C609C71F68EBD3C142239E2897AA6D3DC5EB9
-081C49AC4A827F273F8F0B82BF19F9DF6BAB40FE15FA0066AD772FC4451F031D
-ADD0F171C7E5226BD909E6DE76D5F2662DA01D2CE961A19A3AF976FCD9BD42EF
-4DE7160373EADF50596EE389DB3B26BBBF8B255F14E3919B2082AA9F8474A37A
-F71F9BC92EE15CBAC7372FC8D0734625E65406A11240594E5F9E6E9BE3D6F276
-D0CC1F4D1B48B0FB0ABCF467E3A8DB69B1994779DF36D03D956FAF806BF4BD21
-74DC674362757D3A0676973FE83D7521B51D24148F8F3143B0438038C6FB4F8B
-D6812EB54FDE9F83F10A2AEB5CD0EAF58032AA2AAD7F55333A8728EFB6533075
-22F814E5AB848C4CF073CBABD2BAC21D1525FEE000D7B058658A380043C2C3E0
-4AF8844265F8926AE57C0532D68B86DA3ED7BC445FF523C35049FA273DCFD83E
-E7262BFDA7FCD30EA039A49BC490A038C67B0353C91D7B5C904C24EF1DD5087E
-BDFE503DD1C518CB774FEA64F9E18DA2BC74869067B3C17F2E34CD3E9F4B57F7
-243DA0925A39234214AFDF542F5A8EBD59C035628715676FD95A62C943B5E8DE
-DB8D64063240EAE6E3CE0127C5504AB70006CD347DB61201E2339B7088BF8467
-C3099B70DC22FAD3D88B8E122818309D97CE604AFA456FB51D98F2CEA0BFC4B2
-C6C4AAAE38B99F13E8CA24F96B1A1D847B150911C97DFE19E541177C1A8CE22C
-90E680C094ACDC4725621D5CE7A9130B66CC82BF00B16CBCA8E79D71D6D35ABB
-2117F4F3C1B3115C49609BC383D1969172209C393E82FDA5AF966280DD3FE27D
-F5F98308A8A773A04520BA6A949E109382D4A2B1A037913547CBE3427C222E0A
-BFA7551129D42653FBE7E6686DA61B84B5BC37F0F29728D69A8B95A3D149D6D3
-FB7B5BA3C93D81599BBA5832E784ED4D42B9F034AC322B015D3AEDFDC4FDCB85
-3F2C13A0F3A69F7DD95B3B5856E0AB160B0EEF6A9644065D96105682E045F070
-1DFCFFF5E1D9A88767DCF2DA023F287204A97FF6828337B2E1CCBD4AAEA4106B
-97F21F22D655A859114D76EF1EF20987B75FDB3E5DB0CC87910A9B4A140A7DB3
-DFE539684772EC2022AF3EA674AD8B3737E907AFF7DF226221CCE351E39EBFF8
-E02685F6061FFC09F74600D9898A4315E57C0212632062A40D42BF22F79CC5DB
-18C845A67880765B2C059CED91CE797AB5EE22D43236E2AF9BD11CBC7273D623
-4468E3FC1472A840AF6D5BE68F49B5AA69E2BD4D5AE9F9A4DAF964D08FB73558
-B9C585C7674841B166A7F9D977B52D49F0BF6D55F5375FD1BA7108F19EF4D5D2
-40A4E629FE97331F286868B1AEA168B80AFC20C5375F4E6D93F0FEFB5D871CA1
-A2B2CDDC44E619FAA1E108E5916816A00447FE522C5228581A5F5E9D8E5E973B
-B9D5C83BC8B47922063F6B0C300DF074FA4B931D9DCBFF21D244C8F199156A60
-3D4F448F520F2552FCE5EC51BF9BFAE7D0F9AA5E874672BEAC733E96B9C6E7DA
-8FB807E1FD383BBD975AC6CC76775FC11921E1CFD000B01FBC88A782C799805E
-70774646F44E55151610EB0FD0FB27593E08E756A7606454398B805B1C67D988
-1BBD89CB43BF7E9DA43D7C8F38D84A9AF3C3C91BF0417F99A7DFAE7591A8CB65
-92E453C60BF918767186539FD915B783C4F7C29A013DA911F90722E752D8FADF
-DBA87CE1688C862189DCE34CDB060FB7C98E4106230471DB0FC69342C612C13F
-25853367F5803845B2072AC9AB9BEA4561A9B83BA893A73B6B38AA358E8E5AE1
-D7C1F434E54C3852D68A3BD08FEA6BC21370C141512F71873D2DE495ACAF31CA
-8F94D88B44BE5F5C928D2D89652BAC1153F9813F8DCFCE8A295E325462F54CE6
-EFE6C730C317CCE3EFF2A54FE193195911CE7373EFC8BF3C6E00A000F54FF4DC
-94E1EFA27ACE95A6E67A40D63BB97131E21EA6BAA8FF9664B5D717A2746CE267
-3FE9E16E4F99110149B69A90450C308D469DDC2201BBC5EFB184F8CFAD7B5938
-43A825E80A35DBDF11F2160EDF77AE0EAD03E3CCEA232E9DD5696142547A95B8
-0E29BFFF4423E868170FBE9A6A5172F32D01A27F2925CF27864D8B6B0A0B0ACA
-396EDD8AEB5DB7783A81C6EE3F666FD8499F4C1B6B00C4E74BDD2D4E1A0E4C63
-70BAFEA2716A06EE030FFE753B5A61DA294EAA26F5A3D3F7928A0D711531D67F
-AB02F4CC75E959AC1508DBB369D3389EF94524CF8A28B82585CB31D08DDDD864
-E32EE295ACB868A7E98327EC31BC5AC1968CA83F50181E5839407E71C6709AEE
-CF87ABE25904774E406009D99D1D699A5240A7059AFD29E1C65BEC20766CCC35
-461693AED9B8933F7C49B873331B38C2D79E8834D1EB0BC98BE62663203FE556
-F62F2722010E27409CCE434721316C542DA6559D6034934941DCB4863A1608BF
-E6A1453A072D63593956C402FB88F6A725DC3DC1BF293DB990690CF10C205EE4
-655237FEF536B7E50B265FA0BAD862CFE169C0FC20617D4E8F2D6AC44FBE0CC4
-91DB7B97D9FA161522D4BCB26E9F5935BD289C1AE6FF0FDBCDCD5BEAC882F599
-0649B0CA544B6A11CD5B4F54A865CA1FC44547538F0F8E8BCCBE967ACA3F9EF4
-BE3F8EE127F91D8A21E77C6EE195F1C1B533E581AFB96BAF7E4F8C1D653692FD
-D1CCE4AEA7936ED61832EB3ADD42DC4048540E84A6BEAF3CC60320EB9978EBCD
-30D777C6AAA5B2070DA92A3174F8D08357C4272D3E3F2DFD06256C96B93C4159
-D2A85A2AF3AE136D0FF121A0481550EA1D4FA295F3C97BBEFB9AFAF392750483
-C7F6F3BD389EEB987341685C0B5E5B7166D445A39B0E5ACDFC9D439532C4189B
-38E60EA5DD78C234DAE0C4A09CE81A4791854B44A0BBDA49A1BC2D8841830569
-845484C8679D18008C7B005C21DC9E1C07E6D0D706F97A377363CAD62F6C7D5B
-41FF844474552DA1890427D8212910C168D3E2C3ED207BECC366BFFC70138F10
-5045CC71FB0B4F22FD94222A84B518A1CC27DD9ECF670367942F66F286FF3BEE
-7653EE17D950E818B966534A7237856C4D3FA8DAA5F9E4BD49BA505D1B62A123
-8819D938659F6EF9C95B7E8635E88DB4C551AF5C403C90CC1784E704F5A48547
-E788B0480C9AF7538821A643711657F27EE34E27EC499538795494FF6164C31E
-BAB6F5D3B94EA0713E743CA27C653E4B59EA44CE34BC94812F747E10D9186EEE
-19504D8F0FE8DBAAB72E564632A65897E3AF20459CDC0CBEF986CB9A246CDECD
-8EA2554B87F4B756BC31E38429F204279AF60EF12D9582E23DE56F6707A134E5
-FD30DEAC29DBDDD2982C68B1C72657E3E79F9A4B767B0EB99EE59B9F06332CF1
-19C60DCC428C3C02EAF49644541DC47BF07B4DB3245A0657DED22660250FF1A8
-1DB95E016E1F384BFAE0662FD0085F8E350BAE306E3C98BA8DFBF67FD4C8B51D
-83686448603B52941F65E724EBBE33E33EAE5F4FF552476B8A457FE6164F2B22
-6041571E6E7AB0A5DAB29089102E8D9EEEEC7DD724328AAE8092EEC4C9B287E3
-25627DF5DE5305B4B6E20B2A52FB2EBF8A5CAE725AB39B3A51A5850C975CAEC0
-047DBB95267154BF392094B346ECA72D44F98E1C52D963BB7108A332910AC443
-E1E045D423F4FAE2DF02729100AD51248DA805CDE316DC88EDFDC8446F2AA72F
-E63471B713A48CEF2453B39DEF846A6D1A3643E874CA9A0D637CBACABC8C00C0
-D6291898F8ABDF16D659EC77342E97FEE4ED63D91E78AF49F24E34CC10452A8F
-BEA0F4B319E4A46BD76E0768248E258117F8B21CA8B0192BA8EA6B65E35BD363
-05A5895CA6245C3F04DB520EDBCC85EB2740F12C22ABB9CEBB75045276D3EB09
-6284A1CDDFF8260DFF74A2CE0D2554D58E158C29CFC5476D601555059E78A4C0
-9F79557F33DB45F0D94F80AF962F6AAB65A168F7CF2204A06713A270FBAE1112
-4FE694BBD566A63C25BD78469629D6829695AEC70C34122B93E4AA7CA4C879B1
-2E03FAE5E5EDBA36FB0909E6B178E27CE4353D1595AF6141C040F8858E938C42
-EB001FA14B598BF69F5EED3BC71D5F1325142EB5093A1DDA7FA530E021338E0A
-6C505C730D51FE32F13ABF98F6DF645E206800860B89713889936FC1EE2F1B39
-20F969F7FCB6E475875B234640DBE7BFD86EA9DD30EDF8A3994622BB6CBE8F41
-8197096760A7B1B5D10C4BE5EA819326D196CA9D38ABDE0AF39E5F87D6CDC811
-A28A364C625138874EB95F5C30C7DA2B1A1FDAD77E9F8B0C5103D5835AC0BD44
-9FF8D366D0DADC5A5748DCB116C9A5518477309E2D43B5003B1D5CCA381804D7
-1AF5481DC5C0A3CE7B567221B2C36FC8B76C354BD2E657C9CB148E9CCF4BF0C9
-93F80370C6CF4DE9FF4788EC048BB119C7446EAA7FFD84664AAB97A6D40CD62D
-C6ADF39CE276E8AF03B5761B43798F94E533041EAB2D2A96FFBC7055BDD2174D
-258AA669144B82B311F95FF4C93F7E0B2F5096F3D8C36778B2607EA1760A4520
-E4857196212D2876C4CEE25F13996E0AF1A02540A929DCE5D98795C1736EEF0B
-18818E1C2E66D08926FBBD2E97F11413B68DA4F64CBFAA0B43F390AED30B9739
-7730957A5E38DBDCC931E573154F5A682B20FD0F6394D443852A1E36EBB50AFF
-D88DC6C3D47DA4E85F67CFF6C252B562E629F144C72F749C985B6A08928103D4
-CC6953FB922996ABE48E73EBA65521C5D73962526CF4864ABAB4FA6468EBE492
-07151A1CDFC73C02648343EA15837B3A4FF593425F8768C9FAD0EAF946FD18BC
-66672FC3A66205BE6624A0E413CE2748603423D8985913D70C72D1AF7A82CFD8
-4D61B6B5164E6CF74CAAB55A8BFC1261AAE1548E0F4C24AC9CB821D5AF73519E
-EA2341356FFF0ECB3E993CE9DADDD302C9BFEC9872C7CD287FB2CC30FED276CD
-D911A9A265D2712D9A0F79EC15BFBFC44C1BC5E7D38D81F149E2834D82FA9990
-B363BAC070D49FCE6A8EBF1808DD99C6DFE1FA2756278C2FD59C552764D33876
-A90FA5912BC089989D72C140D0442AF025C9A05A37E229E70491629116CE9A38
-546BB24C45D02BFA35B5755D12B5A3305921EF47BFFA4DECB75C075EE47EF767
-8F7F6D8C04513202177390646916AE29A3A24CECF846713D7F9BC04FF00758DD
-ACDE363C22D32D0C94D45E93C720A4604EE287263C71A321BBF2267F97F25E9A
-489BF6C44B0ADDCF0389612E6712A29ADDCED6579BA6AB7A0DBC2E8AF22D1588
-D44201F379F11FB5F45A7BB2AB8506551ED2CABD85CE925E0B48D9D92ADD9637
-99EB1A6492D08DCAFB141EE2210197B65AB9B94B6AF31ACC9FEC9C8F7B37CFFB
-58A804B106215001E27B7C6706066B0192ED57D8711FF843245A3A8021E3C8F2
-72337B6F3A4EF86788526EF0B3220215E7D5DD384F2737FFEA18CBF2A94FF79F
-07052113A86A983E151FC8465A600685B4D67FFDC7F826EE63606EFD47DCBAE6
-B7A9F5C9402660BDD8F9272FBA01BE54CE42CD1C5153587A933E0DD3BF4D54DE
-4057EE62A74A7273A927B3D26102E8F2E9E84750FDAFA69C70BD91D587FF4D8C
-FDF7E0524837E64CE6CF4FBBEAC12D846083C4A33207B3CB03D3AB7CB3A9BFD3
-EAA32C0F4C3ACEADCAF16D878F6CC728BE6C92246B9108BFEA821A36591EB068
-9882B591C4509D98ADAE845F84D555E6D39F6713EDE2869C80672C26EAE8EB43
-D2D46EB80E930F4A05F20CB6AF3E3C4AF92FCB85DA8A75F425C41CC985353F
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-cleartomark
-%%EndFont 
-%%BeginFont: CMSS10
-%!PS-AdobeFont-1.1: CMSS10 1.0
-%%CreationDate: 1991 Aug 20 17:33:34
-% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
-11 dict begin
-/FontInfo 7 dict dup begin
-/version (1.0) readonly def
-/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def
-/FullName (CMSS10) readonly def
-/FamilyName (Computer Modern) readonly def
-/Weight (Medium) readonly def
-/ItalicAngle 0 def
-/isFixedPitch false def
-end readonly def
-/FontName /CMSS10 def
-/PaintType 0 def
-/FontType 1 def
-/FontMatrix [0.001 0 0 0.001 0 0] readonly def
-/Encoding 256 array
-0 1 255 {1 index exch /.notdef put} for
-dup 40 /parenleft put
-dup 41 /parenright put
-readonly def
-/FontBBox{-61 -250 999 759}readonly def
-currentdict end
-currentfile eexec
-D9D66F633B846A97B686A97E45A3D0AA052A014267B7904EB3C0D3BD0B83D891
-016CA6CA4B712ADEB258FAAB9A130EE605E61F77FC1B738ABC7C51CD46EF8171
-9098D5FEE67660E69A7AB91B58F29A4D79E57022F783EB0FBBB6D4F4EC35014F
-D2DECBA99459A4C59DF0C6EBA150284454E707DC2100C15B76B4C19B84363758
-469A6C558785B226332152109871A9883487DD7710949204DDCF837E6A8708B8
-2BDBF16FBC7512FAA308A093FE5CF7158F1163BDCEEA888D07B439DBD4E8B4C9
-D198C03874B5E6F8FBF4922065A92BC3E66D05DE53971CB1424510E892442858
-D69CE1F76E4DA76C87C763A4B2FE36321E54B1328C9155B8ED6361855A151723
-3386AEA3D042B8D89C8C0E9A33E5DF3B466F7BB8C2C8A4ED4CDAFF55FC6D3EE6
-0AF2CEBFC1AC3A6E6692F8BB81F82D86BAE85016AD62FCB05467082C2E5AD348
-44D1439C2B59F65590E57CA0DE481A7A34E79931B1513C4C30156170409A4BB8
-46D412D1DAF88AD30722F12DBCA1CCC6B4BCC28D06B0D29149DDEC520C8FBA13
-6B82E2E1790F00B216282FF122EF0D47B70A1B29514DDF7C0435ED238C14BDF5
-6DA243117FBEF7398F97EB95597707ED63C6797EBA1B46EA19ABB1DABDA171B3
-16CD500F5D64CBFBE4F9CBC3E66A34427D3C4D0C432710289381F9BFD91B4FF4
-1E3A896C3EEA2F3105C218877D6C0C6B763760FA364D00065E1CAE9DCB5676ED
-286A9ED0D1C946DCA6A2A670EE0936FB4706CC62E234CFEED34AA615C48D2872
-A087F30990C85E64BA68F3D5C117123467DB411C9F2D6F6858CC70C1E352C477
-713097321B4C4FD4C5CDE305415F998E7245908EEDE6E056A736EA77BD8C639C
-3A79FFD0B74B3D28F0494A115F2841CF8A8827AB5608F96FD8998A5F40FB3DFE
-3AA0C7696DE4E1D18DC0D6E84B943175FC38FFC42A9C0CBB13A908978C98BFE5
-034F88480F32B9DEB2FD228FF6CB0B89B045AB02020C82E3F5716DC640613185
-9F597CE262729BC52132F43922B9E28BB71A30AC8709634561B22D13C4FAFE0A
-12C4451969226B220038AD8DDA990A4E2CAD53DBEAB698898BBD3046234EB4EA
-901287E71CB41296C431383AB85F18882F65BE36923F6C0FD6FADAC5B42FDB68
-64C06E047434FA7A659EF7F3D1AA8E547939FBF9C2ED7AC829F03CA59AFFBFA5
-A7AD2E0FC7BBE619961AE1785D09444B333993199FFED007382B54DDAEBE21E0
-1E75E0AB6D309DBE53BC7BB9F95D342F51798574D70B95021FA40163A86BE6C9
-342536A5730837C522D5314B1289D9B7E4EDD108BE7F35A20AB2A16608F6F007
-6DDD702A5A9BA1325CE2C1CD020DF677872135CF04F4E4F1E9AA6B494E2BC22F
-107C331A7E80718B030A1103804D144802E3B03EF7CB083BCCDEAC7B43F1B4F5
-C1BF6016741B741CF7E12B4BF95221A72CC9F4657264771AA69C73DA1DA29102
-65D01A0E61F3024E672AFCCBE13CD0B7F54AE1418B72E357A0BABB4D03073B1D
-F4EB54F899AD4A41A9F94DC200880A0DB99D67235A2451B25F710C29A882865B
-A922E56E9FC16756014FA5CBDB1C32750BD6835A70EB715CEA19A8872041905E
-8C660BACDCA26C8247D6B3C10FA5DC240E433E479AC6AFCF57CF96697FF46BE6
-44748E
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-cleartomark
-%%EndFont 
-%%BeginFont: CMTT10
-%!PS-AdobeFont-1.1: CMTT10 1.00B
-%%CreationDate: 1992 Apr 26 10:42:42
-% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
-11 dict begin
-/FontInfo 7 dict dup begin
-/version (1.00B) readonly def
-/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def
-/FullName (CMTT10) readonly def
-/FamilyName (Computer Modern) readonly def
-/Weight (Medium) readonly def
-/ItalicAngle 0 def
-/isFixedPitch true def
-end readonly def
-/FontName /CMTT10 def
-/PaintType 0 def
-/FontType 1 def
-/FontMatrix [0.001 0 0 0.001 0 0] readonly def
-/Encoding 256 array
-0 1 255 {1 index exch /.notdef put} for
-dup 33 /exclam put
-dup 34 /quotedbl put
-dup 35 /numbersign put
-dup 36 /dollar put
-dup 37 /percent put
-dup 38 /ampersand put
-dup 40 /parenleft put
-dup 41 /parenright put
-dup 42 /asterisk put
-dup 43 /plus put
-dup 45 /hyphen put
-dup 46 /period put
-dup 47 /slash put
-dup 48 /zero put
-dup 49 /one put
-dup 50 /two put
-dup 58 /colon put
-dup 59 /semicolon put
-dup 60 /less put
-dup 61 /equal put
-dup 62 /greater put
-dup 63 /question put
-dup 65 /A put
-dup 68 /D put
-dup 69 /E put
-dup 70 /F put
-dup 71 /G put
-dup 72 /H put
-dup 73 /I put
-dup 76 /L put
-dup 78 /N put
-dup 79 /O put
-dup 80 /P put
-dup 82 /R put
-dup 83 /S put
-dup 84 /T put
-dup 85 /U put
-dup 89 /Y put
-dup 91 /bracketleft put
-dup 92 /backslash put
-dup 93 /bracketright put
-dup 94 /asciicircum put
-dup 95 /underscore put
-dup 97 /a put
-dup 98 /b put
-dup 99 /c put
-dup 100 /d put
-dup 101 /e put
-dup 102 /f put
-dup 103 /g put
-dup 104 /h put
-dup 105 /i put
-dup 107 /k put
-dup 108 /l put
-dup 109 /m put
-dup 110 /n put
-dup 111 /o put
-dup 112 /p put
-dup 113 /q put
-dup 114 /r put
-dup 115 /s put
-dup 116 /t put
-dup 117 /u put
-dup 118 /v put
-dup 119 /w put
-dup 120 /x put
-dup 121 /y put
-dup 122 /z put
-dup 123 /braceleft put
-dup 124 /bar put
-dup 125 /braceright put
-dup 126 /asciitilde put
-readonly def
-/FontBBox{-4 -235 731 800}readonly def
-currentdict end
-currentfile eexec
-D9D66F633B846A97B686A97E45A3D0AA052A014267B7904EB3C0D3BD0B83D891
-016CA6CA4B712ADEB258FAAB9A130EE605E61F77FC1B738ABC7C51CD46EF8171
-9098D5FEE67660E69A7AB91B58F29A4D79E57022F783EB0FBBB6D4F4EC35014F
-D2DECBA99459A4C59DF0C6EBA150284454E707DC2100C15B76B4C19B84363758
-469A6C558785B226332152109871A9883487DD7710949204DDCF837E6A8708B8
-2BDBF16FBC7512FAA308A093FE5F00F963068B8232429ED8B7CF6A3D879A2D19
-38DD5C4467F9DD8C5D1A2000B3A6BF2F25629BAEC199AE8BD4BA6ED9BBF7DABF
-D0E153BAB1C17900D4FCE209622ACD19E7C74C2807D0397357ED07AB460D5204
-EB3A45B7AC4D106B7303AD8348853032A745F417943F9B4FED652B835AA49727
-A8B4117AFF1D4BCE831EB510B6851796D0BE6982B76620CB3CE0C22CACDD4593
-F244C14EEC0E5A7C4AC42392F81C01BC4257FE12AF33F4BFEA9108FF11CF9714
-4DD6EC70A2C4C1E4F328A1EB25E43525FB1E16C07E28CC359DF61F426B7D41EA
-6A0C84DD63275395A503AAE908E1C82D389FD12A21E86999799E7F24A994472E
-A10EAE77096709BE0D11AAD24A30D96E15A51D720AFB3B10D2E0AC8DC1A1204B
-E8725E00D7E3A96F9978BC19377034D93D080C4391E579C34FF9FC2379CB119F
-1E5BBEA91AE20F343C6420BE1E2BD0636B04FCCC0BEE0DC2D56D66F06DB22438
-452822CBEAF03EE9EAA8398F276EC0D92A7FB978C17805DB2F4A7DFBA56FD6AF
-8670EB364F01DE8FCAFBAF657D68C3A03112915736CEABAA8BA5C0AC25288369
-5D49BD891FABEFE8699A0AE3ED85B48ACB22229E15623399C93DE7D935734ADA
-DA7A1462C111D44AD53EA35B57E5D0B5FC0B481820E43222DB8EFCD5D30E15F9
-BA304FA879392EE0BCC0E1A61E74B3A1FC3A3D170218D7244580C7AA0DC65D19
-741FA5FE6F8CBF60250ACC27454BBF0897CA4B909C83A56672958752ED4B5E79
-E18660764F155E86F09EFA9F7685F2F5027EC85A775287B30E2069DE4E4D5712
-E7D033481A53A2702BA7542C71062173039030CF28D8B9C63B5596A9B42B33E7
-D922944A38713383D3648A4AF160A3B0C8F3379BA4372BE2E7EA49AABA75AEEE
-C5DDE1D8BF68483C3D21271280ABB91D54CC819680322EAB72E1250A760BC8DA
-726405EFE420635B5B7F0B48752C06083E92BDE06401C42A2C528C8A60381227
-CEBEF0C9440DC034DAD9C19FB27A350233112B0A339366B7373CE058456E0E1F
-139E2DCAA12133B5B6017B0E08E776403F967AF719E0161CDFBF8BBE8490F57E
-53C78E97517EF7FB7C00035D601CAC8F4EB2F16F8765614227C71C390C32E960
-FC7E9B9BF26D89F808B05C2E483B9171450E4CF3A8690E3B6B1BE17C36157131
-89E42D8A2F51D4CBFFF07F50789D0603806EED2D0A9B5E8B7CC0959E57AA8088
-5F48BBD28B37BD51EAC7264D45CD2BB8B6137529B2B5DEDDD7A740458F045922
-D1A14E07A9E9FCC940D89EF56E274BF533927DB8276C3C0DE704CD8EE4010F39
-365AF1E3665CE873D8D1CCABC9C69A6BA8939F170B873994330F32963C330E9E
-70E95D62A5C4D2D09AC4B8DC7C837D9FE7F5A0D4D082743D038D458D90740478
-2A04E7693C96DB4A91CE237B8ED9D9F07DD4FB4B701891DCF294052EB8263EAB
-5FBF7689500DE29E1121A4460B725C793F71E79A58BEF6EFD29C6CA85702DCF4
-CD2435CA9A0CD4A1D81C15602B768249EFC229A2EFAD0BFC7D5A8BCDA1771DC2
-2641AAEE34E58BF6A236F62E2FF68B3D9E7C68FD5D104811925266AC67F16A32
-9B1EBC55089A05E3025EBD787EF14F4E053B456205C8CE2E24295401232C0AF1
-E01BB90B390E2DA8E42E624C32F3D68ECD59EAE9ED878D07889C7FA8C80E0D27
-527E9E0C57C12DC1B10508A039CEA74CA8BA027FD8DB0BC0356DDB161357C983
-3A144F697E1407791DE270911E25370499A0ECD912B9974490F2B66AB541C9F0
-02DF28DA53E7B3E21299192933DE13DB56210B6FFF3953D09440A8A043987724
-6555A448EF5A54023D8E6CB060F41BA6C3C8CBCCD856FAE2C86A1A0341D380BF
-3236F1B526BF811976506A517AD5913B0681D45D284FA7EAAB535507CBE0420D
-E457EE415EC91B8FA42F9AEA4E63ED29DA0BDA7A7824634309E57D721A422806
-EBA4D2DF543A0050108FA7C6104AE75ABD65EA7274C12CDCA7FCFA6C39F8014E
-3FF49B8FDA5FF5956B72F581DC7CA6A860D2BE2C522ACDB1012E622D211700E6
-DD77FCC8AECC89A787D2F047F08594CCA2DC2658D2CEE3752854AE62F5AA846A
-E022FBC13A94E4582755E7E28C98C65917977ED0BF60D527380DE7BD4A981920
-4232903D1046E59ED60A0EB5175F124E05EED0C1028764605EF8D650463F959D
-A98C0439D4347F65E2DA71641D1607B3B609823FBD989B74E277D6A6E3901FDD
-B1CDD7CC14D8F0E105122B5CC41B8448E34564BFCA8BB368C3340656DA94A18C
-E269B1D8AC19F6E9104A9FFDE96B495DCE7EE44B478DCD91FA8BBE481752AFE1
-C945F42E33C1DBBA3DEAE3DA787E80614FF32021E610D82D53CFAFD806A32841
-490EA4045225A89C0844D551CD617E75D762DF942BE71B73C9BC7D6E7596CD28
-690A53E050C10BDA0A256DE427B91AC3143662E5B1BA0EC8577BE625E1C91678
-967B58EDD0B3ACEB9B0BF61F3AAFB126E7883E06F95274C132DA85A0963D55FB
-2F0357333F1CDDA87F60EF7C569C54321AA37414A6FBF9F2E09F4B09622E80FB
-9003B6A94501383D6351B5D0B98E9910AC0D77DCB9E92E6E6722C5CAA3B85577
-C43D864E582EE95316EFD5FB0CE0338CDFDB0A840B8001F2E389E84B28EDCC8F
-339D746F4D13C3CEE2CE0B9EA5BD67C6968CC9CC68FA23C3EB26C51C6AA57191
-2E3A0F93EE560078DC5C17C7D452923BC2E1875D737ECD6D252D6C8078DF895F
-BC64DA6216D34709430515C99D2F237981959EF41195EDB234E4CCB0DB55106F
-846283F3682C69143374C934B18E415B85AF21B034B133014C5E4B354C3C7010
-CBABF55337F24C8189AF1AE29082A524867E51FEA3CD7C371BCC2A9B2EB7923F
-3329D2AA32EC53D85811A55A6091BCAAE343B86A872827B29EFDB9471FCC8895
-4F6D8043A13362FF3269568B5D385EEA7512A166DA4296D07B7902BE3BF2CBE8
-0E88F4DE219D8E63421A2AB5B1A2CD89C7198747E96963BEC2954F92F7B755E0
-7EEA6298F997835A1622AE6113AF1C8BD1FF3788F224FFCF6960BFFDACFB5D15
-0D37E923CE1DB0F219BDB2C261D9D89933BB6E7585C8A86B985D34B1FD32C568
-C5948683C24E221F7469D23E6A907FE80D4F4938FAC4C32C1CAEEBF072E39BBA
-B4356155CA600886A59AE06081DBF2C8A8BE80AD074F781B05B8D3D8714CAFFF
-4265FDF92E48447DDDAE07D63829441132C68404C03690A220416E85EECD8B47
-BFADCACD42683E5988E902F4EA64441ECCAD6FF84453CB44E7ECC8579B928C4D
-CE1DB8A52D9DE83A4E9F95850E47E63505AC81AD552D5C13F98B2128CD1391DF
-071022C0D0524803EB652D6FCA6AA7D2BADEE9F60DD24531641DB5093E0B81F5
-C09A428A241111CD5B861F295352AD9112BA832448B924B65F8A07C10E9CA93D
-6380A1B2E477AE278094155D3090EAAA07D3CC2FC06AEDA34013635DC3B2CF0D
-2072B5EEB80D75CD80BD609075E2452FBFB3F3E5573A6FB4397A57169A5E80EE
-5A45AF5B98D9C89F96A6011AEE28266257FBA4C5E58EFB767B772B8022F3D7B8
-80D9A6F4F9DEB89013D74BDCC23D250F621A0F06EF76437664B13C80EDA64937
-D469C3CA58DF29F1F0EFA3ED58D1DED9895BCDF59183B939FA839932922BBD8B
-4B96C16F9F2FE7BDB4A838B8F9C52D9CA5A3735CBAA633880F132B03DD26DAEB
-618E4B689B9A11D8612C47BA970B7B5ACB4A0198FD3EB7A62D92A026E6AE5246
-D9288F3371113050F0AA67159F162F6E62FB853EBC973AD4F2604F2205C53377
-B6061E2100D07B3A594266F06A61494B922E290AD42A930A32DA4FBDC3996B49
-DED27B8C5203F080F67BA5E890848ED2DFA053162CCB2E13BB62D798CED03B1D
-ABF098419D9F97C2151C9A3AA0FD1865C291FA240E839065C8F3E8EF504CBFD3
-F0F7A39F57F6A097D02D399453027BD0AD6B5FB820EF4A889B11AE989A23BF39
-0D258BA55C5DD4C6D690037FC9BE99FD14469FF13EC32D32A033E32DDF6E357F
-AB1A65C530258296E77ED1B8F056176AFC317A0401CAC7E56259FC96A9BF3C79
-683DEFB45F1C3BF305E5FCFF15FFD5D0DAED5AD258820F13675773A2FE23FFAF
-44CF4324F7D6BB80584D760A261D4F1FF01B61B5008BD647C149B59A39C20590
-C32E6A8B321010CF98E0D3057ABA6076EFFAB23DB513627A150219F846FB7E13
-B3C2A2EF7CE6001A96CC12B7E81FE3A12751B0E4A5C3B1FD544514AE480730F3
-3DFE0181CBFE86EAA8175211B668BC26BA42A73C44105AD5BB07CD54770B1E74
-28C7264AB9C605B28C233BFBBF3C5402538A873E0F91ABDE05E82274C5AB3A96
-F2D3197A5C6ED9F3063984FFC2C35521559412B3313B35EE2D952D1795C43A86
-497B8FDB06633483A5547345C4DB951D8F9EA26C24DABC84998EDA8D8EF05225
-1B2C991D35F626C6CFFEEC6FCD50D742A4473B466F92B7C4E3347ABB231FDE4F
-1797EA8D2B0C90F018AAF63D6AF9F268C7BD3394BF0EAEA8DBD686AEAA1F290A
-955E1146BC80C4BBCF30AD1CDCD581708A8C27FBDFA9891A2009E283809095E2
-ED36E1ACC52853971DC7F8D234E5D42E88303CB5B7E8CE086230D3A66DB1A259
-194FFD10DAAAF25AEBE9D2E0699DED06188665A376B7B96D33C918B9678EBB28
-38816E68A84474ED9C727B809D91FCA850BC7959BFE888D6F30C3917ABCF6D5A
-45C238B3EDAF9B42EAACA014F0E8E91549E3804619AE8AE31B66D8A444A1DB51
-9E40CB458450BE01FC8E7704D144C3A962A65466CF7614D94DAB6B9EB10E003F
-0B16CC826F0716B8411500D7E867947E91BFCB998DF3BC331E66154059413D61
-6F8D59DDE334A3622CF268AB714E6A8417CD1BF09FC7BBFF072297DCF0AC04DC
-5C1946935E8EBFB12A4E8931516CEC58D45832C8097BB070C7C51DD881DAE0C9
-8363C904A21CC85B20ED5DB3299DF802965EB5017F250CA5E8B3998FE535534E
-05F3E270F718F6914C49AF45B3A75DF1E9CF0D58257DE2FA18FCF9192BB60FEE
-581919489A666969768A1274CC4E4E6D644088C80F716435199F9D514B065EBA
-B8FE1945F87636435606BA5D996663E7DC75C54313FCA84FBD13D70A8694A210
-170DBC5CA05D342C8742A2AE2477E5A5D04849501BD569ED5E70A68B9EFE8CC5
-DEC2EEE3DE8F29ACE6CA0741BBE9C4BB42B74037C85E93B6CF0AB818FA434448
-995834EF62C20CB180A489F1FFCE5A21F1DD47205ABEC91CDE6CC2A07FAC5D0C
-B0488C9F7B3A3974BCD0AED976CB3F2FCBFF68A6093756BC24FCC6DD3D9A2F3C
-EE881876A1EB8D9BA8462CB48BE2220381B86B1057A1A1B2A08EBC2FB8686BBA
-21414FFE042C855A257FF7AF0DE86B8902224B90465A437618D4F17E051CD8DD
-A08B7D89D6BBB4A0A299485D4D737FD4F9508A05B9C8EDE0724B79726A3C32F0
-D74B811F82510C706F3444FF1F2226DB0C9B1DB512A9EADBC823A83526DC9587
-42AC8E8A54634DEEE9AD8FFDC6497FCF217C997B05F9D2E991E7D9D61179012F
-58248632D5836B087A6624DE90C3AC386640B11194D3C891BD314CDCB6AE79D5
-DCBE022D7FBDB13BD6A762ED8B65DEE202500E842E31DB6BE7D873245A75C231
-919DEC011621AE1D808861CF08E339E404F8ADD5CB1D4DA268C191D60F50BA06
-7E0D0273BE56CE0A53219B7C7FF9BEF980617BDA6F2C780175E712E634923995
-FBE9600E429DDA5F691B61BB35946E76FDE28F33F06740560D5E971A424076F8
-CDF10BDF3899BEB2BF28DE369235ED0DB57B27827179CB3E2FE8C7CD6233DDE1
-6625975D48C788C85285EB73B7A7B9DE131FBD245C9B306CDAD91D01839978D1
-2132F06C2BB59C8E38E416AD3A8937CC72632C4F79D905E3119B83E229F9A2C0
-BF6F4C0BB3E509D1FD88DEFF150E3D469CA20E9446ED75C6C44CC72DB23F945D
-9832BA83A61D5C80222A23072B4664E9089CD0FCC6512129938FC52C6DC46593
-418D9DADF19D00226B1122EE81402007AFD06B39305E1B0481F5390EF21974FC
-15D680EFD0AB7799187E6F5AEBF07013651DDA0EEC50F352AF50D08216A31159
-02E896FD2BA87D3FF13D46AB6136C92AB932A3828D6E40D6AAB2D42235275449
-B0EC8E5C6134985E9D21763974377D34530289FA0EF14EE891E1B221A698A8ED
-791DB294B3489059A8996C160545AF6C2A556882AD42A034E686F21F187B448A
-DCB631CBEA2F4F863F31D65D5DCDF357D0E7BD33FABC65310541AFC05860B5A9
-F6F51ADBCA7718A3F6E17DDAD5E0BEF0351267925EC591024860289B31B3071A
-C9BCB9979DC7CF6DA2431FB9F4E73A4A6DA52F23A507510A86161763A4AD574C
-A8D7EA3CCFDEEF7C4FB4203DB0D00079639402F8CE2C7706BC3134E1455794A5
-F4D506126F124BBDB84CC4E38BF56B0F9FC18463281559E8001B376563651F50
-E4F54D3BCD3C5ACFF157375E3BCE65EB9620A91E0B3AE413513AA885462A981E
-BC33354C8DE722C19CF1CA72623000C7DFD3393F12658ED3CDCB2472DA045E4D
-78EB129D89CB652E423341A6E539D3A12F0AFA3A379664C6D591DA458D0C93AC
-507848ADE1CE0E237F8E44781929B013754392A707CFA3028609F1A3402925CC
-15AE50403DF0B09ADC29AF5AB03D6FC8305E7DFC46781FD76FE6D95F3E2FFFC3
-5B0AAA73B30D870D8E8E8184411A418FF8AE4DE17DBA8CA746AF123A44944F62
-85D7E059CF3271B6088A374093C5D80197F1EC827A68BECE399345E10FE1C776
-858FB036C4AABDEACD9C5C347CB13E4EA5AD6894FE5A6B210838D0DF1F3FDCDB
-7A1B82D07D42C84DBB695F70E104B13548D4CBE2FBBE128CED959774AA5F7A54
-3CBC6313BEDCB8B55429DC58BC51E3686BC9A8110D36B4625C5D9D7AB72D7C14
-312DBA59A29CFBA7EE804873A54FE2D1F5476818E2DCB1863CD3BA4892EFBE45
-C5C3DFF6254F491734BC982C0E5CD41C738DF9B2B462071C1F70021629BB7A9E
-330F7325AD85E8005A90BC13BE6D6868846F74EC7002F6326160646844187DE3
-26D1C625681208B87BCD967749AADA6510105459CEF77F4080F026CE8EB36E1D
-0C275361FD92225CB11CB327EE747D2397EF6E4DB62AF4708ADC95B9B0B0B3B1
-FEA8214506BC33C7E10C28AD9646CDC214F1F0ADBCAC3F9690905A7DAD1B2ABC
-995787CFD83E255B07901D17B196334A40A45CC25D67D69A9D890881D4731680
-AB1C230DEE91D23EFC69BBD1859AEF38E9D907EB461ACC9B5F12503ADBB9B373
-7669BE875CD0BFF43F1B4AFA8FB233790BE91986E6056E913D6F29480A27CBC5
-F7D4621F794369AA8FF04EDF2884875C802B3D2598B747AC471DD88C2DD7DA5B
-4AE78FAD1A699F0CC2BFCC4F492ABD0C784F53774923C96B8E8936624C9CA2A7
-5D98343D46C3D59F45D7FC059DC38668233DDD9EA40232BC9F8E549A362DB96A
-432E2CE2498EFFCF491115ADD4DDA9E1113A8541C607C60C7B25E4C5DA72C4CC
-08156379EE57D76138CADC149B25AC6C0B29B92D038B22B8EB4B4E69C7C405B4
-F8CE26E4214888DCCF18FD2F5FA3E20C2BA5E7259950522E5634C95D52F64C97
-392CC15FFB00C09346A6D20C9EDA00B5DD4793835BBA10BF35B373819058A94E
-53B1ABDD7A28B31BB7E4A597053DC442FFBE6902478AF00BF74E07FE2AFAB59B
-CDA5997B78E7C996C8A0669B3BA4520807F346BAF4FB3FAE58A1E52C6DA5DCF5
-1457800464DE6C876E392B266F9B93D97FD91A21EAB2F0F917750AF98CBFB7B5
-1977B2460F36979B866DE95D42A79A7D3B68E3FFBEE7169EDA27F479991DB6E2
-39B92868AE161B910549BA51212E4A8305E52CB4E900C71A654CE8251CD30C5F
-C23B7857377FC16026DF41414B792F6E992CA6671FE6C3C9136D8983A33F47BB
-D379D88E34DFEF2F0D02CB9B4E6C04D0C5B397BD7C52815E75A2E76343F88642
-BAFFF409D80A2213B5F48B37867731416D4CF497772732B4FC79BC7EFB2330E5
-40AEED28970A318DC93F778158DAF12747890D85DEF62BD2402844D29A5E5F6E
-4F718E264EE9657D56C956AF3DE08C5D054F9FCD351233C35AD02DFF3163E42D
-C401378EA1A955F551018C365686045B13F2C1A5708B3CCDF7E226554E2AD8B1
-E4DE2657209DDFD5689D93EB1C202206C73A586BC7ACDD21451788CF37D32829
-8C1CDCD8F0D359F20EBD5E13D0DD96C0924E53797638750D5303B517B75B6F45
-2BD533C1B35AEA97DDA239955596C1D3456C6A7E6E120001105E58DDB0F36861
-3FEF0587489B1F7562C9742CDC972340E98FAA2410C7EB42415E0053F1A79CD6
-91EDF9BE7F61F5069FEF3BDE1C95CB4C0216AA5BE28F8DF42F57EE97AE8FEDA2
-71CD120D8F04986D5AE5DF2B0BDBBA01AC08296A2B30940BC8006A5F38D6AA9B
-72D9AE3690BBD89D9B1B924A92E9F98312CA994F369F71706A20CB72A820650C
-2E3C077ABFF8BE9843ECEAC7286DB8F6404D2FB367ACC874740C5B3846EC7190
-42C48E182B94DCE1B8F69CEDFB60A3A7C7AC2CE49A15DCD6CF50EE16C411ECFB
-7786A6E0D244D4BF394143BFA289495957DD69C9D40E6D57C00D798356835A53
-8A2DC6B46AAAF21BBE9A116EF4F2D3B9483D3B62A82840B2166152E7051C2040
-888F99445F1AA00AD94EAEB427EF533FD7BC59F63D873115AFF4451DAA4B931E
-B6D05AA4F7001080F3FF5E4E1A660FF36D0FEB424CB46CE0D591C7E0135E3D69
-17262E35F7B7A8CA036CCA16DB8EB55A732341BA1C2B9C6B588D41898A0D1E30
-81C1B1C6B5DF9F7D1A8A201E0848718BC02ECDA3EBBBA61A7CD9A3ECF720582C
-EED677E290F3CC54EB62B83E631BFFD22D4F03177787FEDB5B716B34F389ACB6
-B84863C46A71CE2C3387DAB6D9F35B4DC3DE3D279221BFBAAF730E549922CF48
-B6BBB2A01AD00DC047C2D2B867E339F64FFF63ABB3A2266D7FDDDB3624CDB196
-B52696801BBBDEFFB871479D5847737DAF7E98F8140D65172D39ADE3219B7E57
-219FD2CBAE039D263DD984765AB26E9E7F17B06ADD9AD578DF69AFC142D31DAC
-6A43149D41E5E07EA2F367423AB179B9F913ACF1FEBCDCDA9C6BB6D14BFC3425
-176C2E34F15229E25B39DF215C36E75E6FCA07905C70A6A538FD8191A5E1D5B9
-21DE335877A562A62769EE2B8FF16DFBB1CAE6E1E53E78A9E0F7D9218295F409
-72AFC2CC9CCA4B6563373950824DC071BB92902866C827AA23BC2716D7C770A8
-9CAA5DD2251A0A1EFA4E95402FA16E1CBDE5E37A169B8917B8E0D94A9C47D225
-307B4A38C004F3F36F31901DF56A6FAF3658AECC09C8BA27F26A5A55314782A0
-32963C25291B990C57790092F05A203176282F16CAF9FAF89718F2DAEEFD3F52
-CC263F02CF771062B04E51A0673942479BFDDA13F04AF88B9B9DC85095C04AAB
-707A308E46055FFBF41AB5CF9A43F8DE0048A8A7138D359AAEE262A45AF7DE87
-AE6D10BB6CEF580322A6593121AAEF71821C57B850BA883C2BD21FED4C28CBE1
-D6F3EAF89ECD58B1FFAD8C41225331DA8BFDED4FD80EA251AAAD2DE982246F3A
-3D7800CE8C67612E63FCB2806AA68DAA7373BE7939895EAEEFB371DCBCFEA712
-238AD633A8FD2496ED249828F9A35F9A8347A6FB401B5B46968646F7B07FCFF8
-015A73A8832710ED1743FC6AACA74DBF4A8848131B9C83489B55B42A57C0817C
-DBD12D3EB847A9D7AE76A6FECD5362C10B8BDBF6FCCE19166DA5BF005105068C
-E0CE15C4790EE0CCE764B3235F1FBE9940369C5C6E1E38C25DC8167FB5655952
-9761B35C6D02048A5A89F090A08A0E91A871700A92A06CC93C225DB53B6FCAFA
-8DEA22DE4351879222842783986A54B93068CFF579B6F0B3E67F595E603CE50D
-7AEDE415CBD7E6791A5050214403234F7EAFC11E64F78CBF480EB261D8D0F9EA
-60B61737C69ECB32C0C9165098087E5BD97155502102414227F07C8EA33F3CD0
-3C039DB00F3373114E4AE2766FE8B19A866220A68FA769A0613B080B700BC85E
-313C0689DC09ECE994A1FD9E01E13FC7741E11B84398728D28924CB6B0216F51
-20A07984B0F4C20100DA456FAC82D9D1D13613F56CF0BCDD31EFC037F8F627F3
-123E5BB89E5639D58FA22BC426933C1FDC42E4817794B9108F3FE476EA72B0B8
-FBC1C7DD290D9BDC475DC01C8D0F5F191E38958B316E5A6493D3810BA0238235
-8AF308C1353A4D1F29874C6F8813EBACE49D044E0EB24A9B881F24AE3028DC7E
-B574B271EE67FB9BFBF3562BA8BE7D0D3835499C0FFD6D9AE6520C6841676A89
-E5B4C7312A4835FA7BD974D164E9D9AB45D4554086E1658D7A3CBD17DD8FD091
-6DD2E2094AC2E4E79D7E2BD082E4710A126DE03D2F4A8EB4F8D8D16164A2825E
-3230BB6E5A4F5BF8B4ACE7F6407321B07678DAF8721DD718ECEB3EEA32229007
-BC90E375D2AF6A4D0ED66B5EB0F5B017F4B8355B14B70F665DA551769AFF85B0
-F6D17FE85640D9F3BC8D0033B823E1D7F286ADAC61C85F87C8F4A021824D068C
-47237508C739ED9E66056E1092A22956768FE73B590BEAF9B8DC96202372E369
-4392C1D73DF00B9255ECFB19C21C1AF844F7DBAD326DDD5D7F7B41C616E1FB7D
-F2D113ABF9ADA76E08E6DF03A5173BC9F65B8873BAA3AE67D35893DB2437664B
-F6C833A9289318F7806E67DCFFF38050EED9BE1FFB62EAC6773CB45CF0FF56DC
-B4EB2DD8AF38C2B50849EF082DE092FE7E9F6B975965FA5E076FA1197946867E
-AC588C255FDCE28DC0F7017058CA8CE21C656F39432115CDF619B0DB1F3DA652
-A342C73D6A8D3DE2D81382C0CA46C233DE0BFDFF0DC6FF4776FD60292D157134
-EE1849F22013259F75B93CBB98A488428C29F3168A0FDEE616CFA1BC088F6BF6
-98940C3D6297C684096C08A34493D5998A443C0A4E9EEC53100F7BE7CD8EABC4
-8234DEE6FB36A1028627A18A3A6376B185106669056BB9030D3EE29B86857903
-8E5FA2DF7300D72EC079F896E052407A8E35D52D921D9EC8C230A8888708270C
-8975D96D7A9B5C9504342A3D3D8ABC0E4F8665C4D6236CE5474F1873D968BD2B
-E894FC38FD94ED092DA881558B8C8238716136F31F301595FBBE990DA4306F2E
-0E996D0F9FB20B67DD5BFAAF9BD909130F033414F473EFEDF7CBF271AD49D15E
-570DFBDAF0D4E02738881C104B8218AF659DC9587A6DAEA42F98FA0A864BD1EE
-ED493DD61BF4AE6B5EACB7DCA84C2EA02BD3EB3332D1A8E6AB68978B15ABB10D
-497A0E3D6E9613E13B4EDC6DD8C95D035EA0D650B15A6D0FB89109E1399B4866
-73B857EF3BA5B44E87AC7AF2FFF4EE7E7D6417348094658BA6F5281E45943EB3
-E711CA4C9A4ADB161E71208C7A5102D09FBDE0921CA593CFC01C24EA1C5D0B6C
-20519F42D3D169339A326D2C2308B6F0A463F9B32B2BC4929F5FE19AEF93666D
-1E1862AF5E3C32535097A0BA56C4FCAF66E93D9641E25DAF92CA2BB0D9BC29FB
-00C79F8A7316487C64222592DE750B72E5F7AE2B0B71642174C873DB02946505
-43A7B71D313B5092E2693051824A9737D75609D3E8D17CF493EB10BCCECD0F7B
-06ED06F43508463788A69797457047679C5D69C15D36C31D2ADFC03B8F53D11A
-D03A7C6E287BC789837EF12A1E58D6F280C3213DE36B0FDEF163B8F2C37A2525
-5A7028BD52F371778EBCF28A9096AF779C76874041CD6263466C4ACA1E1A632D
-DE5E1D15AECC12604574E9AE20B6CA3C19D1E5A71B3BA4E82B18DB3F408305AA
-0F0AD437478E7614F33FA67FFCDE9986DF688608220A22487916FF230CB8D3A8
-47289790D64E166BDC548AF527BC883D01C58C9FF21BE693E6FA502D8D2C13B8
-FB5A8EB2BAD804BD9AF48B424D9F299BFE3ABAFEF3F08A073C4FE42B76E6058C
-523C0758040612837DD31C5EFA932A19C38709CFFB7C191C10A15FFDC1F91700
-F358DA7374CF485ECEAA8E54B6CFCA4090B3094B91C6D5CB10A8630DD0F7447D
-99F689E44FBEAD84D251D35D42280A1ACE9644A44B45413FF6E0493EDB0A9A72
-F182B458B2F28C9C87075B6D37CB11945DE08DF975772D05EEAE97BDDBDE6F32
-9336D4038F0B064C26F6F2B742C6EEBC7872DA7B09B1337FD885E5E4F299F3F5
-88ECF739340592F863473278A4D5C817E9E139DDFB2717E731AAC7063D9C283F
-5E9706FCD1F4DEC03767B93D2684A8C1D544B9B12DE2F503F2262017589CEE64
-550373CA2169FB1253DFA1B469595A61C58C26EE149D0AD2F49FBCEB27DE59E9
-0294A966399B35E17F0B37FAB2957E61695F7E5C2383A7FA74DE9DB3EF25C524
-876E67F2AAB48F725FC13C6F1DBCF60FF4D156440874B425A2F8FFCFF60CEE30
-733E662DA7A0E25EBFA5CB6958E694B5CC16EFAC612E81A2B04C09FBEA8EF355
-0919DE7DA66BFD36508FD6230569B240570E09A7ECFEA6BD28D6F13D8A2E076C
-F65175C7187D0D580B368D3E8122D61AF7D15D638EB54B4B4A2905416C8C036E
-C235CECA028C60124AA7822A4A21A7B6E783CAD48A36BD47ABEA43347C1762F1
-C071A54E5837AE4B2C4F5101426721F4F0D6A86FA01C036B122026B41F6B47A1
-C383B059558855DC5C7956AE377C929F8D0980F3852FFF885F2C2FDA7E33B623
-A860A2C6E2C97AEE4D405B1F8C385A445932DD8D617420C9D13B8D296731AF6A
-D7D063544798C8E1BB78A7E2A0A86F514FCF06BB6EF4E490D9D526D75781ACA4
-B8D85110A10E01B8369EE4134FA8AF2D55934FE439EC91A1CBE137E95761F911
-ECE0FDAEC1C947C948D1E6FA6D23422BDA5033DC01EA9A7B82D4E7794F7F3DB4
-88E4984AD9D90870A5C7147454CDBBAC9F7B3C3E3C0906FCA0796D5A7F7B4341
-D43DFE6D8989C01A2F9B70B27E2C0482AE49C90BC96B4FFD286EFB7B7941875A
-CF94784F51AA1862B59741EA2E507AAAC323F64422111D5CB3AB85293BEAAF0E
-C2BC1474BD081CEB16B6C8CC4F90E2C94CAD66F34FEF6CB3F84AE5CEEE514496
-5BA33C5F78A0C9552A40A10C79ECFDB85D20D6C02F5E8ECC31B315EEA475C17E
-FC651914493A2563E0A06F16B4A28AB64A906FEFD112EC0B9B3A3B7E45F93209
-7EEED7E0CF875375D443EDA415CEA6ED37AD9EDED86F5923E0213CA1A429E91D
-5B266F14063107BF8490BABA8E68A67632858A7D03839F1AFAEDB8F02A9374EB
-2215EADEBCB8682DC20251D64E97135249A0EC2FA9FC22341F72FDD2850520CE
-45E2B2CEE4DA9458B771AFB829D6BA5224854D4FB7114122E1857D9F178DFD62
-ACD687049B5D9650B371FEC299A96772EAC2FD5CA9C5128E9FB489F828945D92
-33F4B50A0AEBA68E408A3E068A9C2F92D7A92BE9487A02E37A2DDA05847A4BE7
-73EED5B07B64F72B183BFCB31BF2673EF5774CADCE2EB4BD58A6051C5BABE387
-F0166CE179024FF39DB1EF11DD128F052655D0AEA1F7DB42C194D3D3E4A51921
-22AD7AF84A48B12DA443D0CF7B3BB35760EA3CF9FFB861CDA95F15790A6E0A9D
-6F85EDAE6980F0A628D73F68BA387AD9326F804953443C2AD2ADCC810273858F
-9C0B51BC9FF7D1654E2550BEAAE3986282115E3646A630F88956E62E3D646416
-3F2A802EFC60B547723C0AB0FD1A0E2DC6CC5AD71569841FDA59627AF7E4382C
-E88FD3BF1A9D8F3378831B357192E379D8D313889A0FB00C470C86C7E463789F
-D2CF696141BEDB834649C38D759016B86074DB5CDA1F3AB83B3A34C96768963C
-86983D35679612CC2B8E9FC3AC3D857F8825F0BB9F40383241048605D3526437
-507AD1DD0AF39D47E62D0E190F2A9BE9E95607595F956238BBC14820712FAA02
-59E93BD5B84584BEF8517484D04976472E6559A4AF333A26F5D5CA91C73F32D3
-745DA3929763688EBA79224580D6BE105E257C166F91C7DE3612520402432AC5
-BAF5498D4F611E5B7262F95A619816BC40E8B5D756264D656C3F6CC58A07550D
-3961E8572E3730F0A5DBBB415B29160ABABF1A0FD10A0C8F16CD48BE05F90E08
-8FC9138BA53FD3760EBC0F6D6CCF7148AB43B62425156067D97F77F6D5D95C06
-FE3CE52B34A1DA696B31906842A6E77127FAD80A6A9691239A9F4877AC668654
-E1BAA8223EACFB9E4F120BAD798865E85B4191CCEE9C40EA5D86161046D0C8D2
-BE4C9607DBFB934C1171A3A71EFAF63156C8C68C644D4F64C2B51B58FFF904C4
-F6E68EBBC0C4A8A6C468C2F030C0D5474C37782A6511206125A88D165FF8C63E
-6E87046691C81E571F02BDDB8245FBB8187E9E6285B0AFE38A2177BC7B540813
-CE19E2017CC10BCE677A9A42C46324FE48B0FC5FA2034697258942827E9D5D9C
-3E2ED569871E9076B073431BBA118FDA33FC180BFD558D4DA17A3813D206B0B7
-E62F666D68696D469E13E4FD628445D8BE278DD216CCF1930E2435EAE694FF49
-7C494DCF05837E5EAFC0B6B8E09720CFE065FECF38B3310B56C4D2724CD8D078
-DFA4D795073E90F96857566D43A622A61EAC381E20F262C660C90302CFC6D85F
-BBCB3DB3D450587FA8C43F89F19DDCD4F244E9A98E1D0CBCE31B3EFE2A397724
-4B7AF5172C4E19B03D1B5990F4366334F4FFD8B019127B30F50799750AE97C13
-D4B9278EC1298DB073634B66B212A093F244BFA90FE1D8A99FC81C702642ABA7
-73647F04A2A89D6FD2EB560662016E7E6C634AFA4BC0B4024E45437A219593C7
-538FDA68BE395BD061A7D1D719FD571C8BAD0093928EB6829A7DFB9A798C2429
-443B8F00A56A3A812E0C7661B2FD15CBFCE40AC101ADC58C058B8DD2EFD32A59
-77AE2D1BAF4809B36FC428EF235819C59A8832A2C641B43BC25C6F887ACB28E7
-1E3C354B14AE57021284921424522DBE8BBC8AFCF428A8CBAC99039FDB738B33
-065BAED6EF1ACA3C13426AFE3A72B9782A5EB64150E1968B5F73FB68604349D5
-479B9DBE25BD3C7FB893D13A10A17FDADCC10FF7D4E4E7DE5D7FBDE6E4A83549
-8BFF55B352D9770E83B7EBB026B9E5E6BDAD237891EBA638E63D262F841D746C
-4C8ED36FC973DBF35059CDB3E73CB30A5BCFDAD30C7178FCD1DAFD9A7E131C35
-B094C145CE3836CF18BDD0DFA344760A15AE2193CFC872FE3F2E7AF09E1CEC89
-2A67469F3CF738E980E5A03D7B6AAD6B70C668054990BB9B7F1D30A60E05E671
-F2A0A9F323702123595DA4818AF4E5C0DA1830E94095EA4EC36733F3B25AF6E1
-490A2772E25803805E55650B6FD03CE7E8F8565FE11EE50D0B040A62E5AF3D3D
-85900BCC83A09CFEF3A2EAE5C4B87F9B423CBF7FA703AB8D91E851101B888FB4
-D0F0F31FC74EDBCBC1D40A2378DDC8A0EB9011EA5AA3484D6BA12D6B4FCDB6A2
-10497D262D136AF8DD0ECEE9EE9D41E94A7C35D53698A0E581244EF3A4B3EC6E
-3C490AC4F3EBAD17F1A78D6DBB01343A3854887767021DC999514E99A18E07E8
-B40573D647BFA3E27527C1105EA52050B504D4C8BD5D6B02CC2C5334D7CC08B4
-73CC3EBB9A539711F08FE85F2C5773D83CC5C43C4C2B50F8B74B098950B71DE4
-5847A10929D37F8BAD2E3E31D930F6214CADE137CF8D76EE60C57FF82748A105
-0E00D412E6A82D76754124CACA25BCC478169E42B197294143544638F57EE932
-44BCA114BA1D46EA1540943AEA3904406548AFFC45F2678A12317B7518C3EC49
-6A76D6C86F3D44EEDE0317ECC5401EED98BE22EED756D35C67B45D9924F19904
-1BCE23B85A393E7B8D42E103CA6B60278F73399FF178F1F0B67F069C9BDADFD4
-43AB5A8D4ED31154B0FCAE04B7720907442CBA3564888ED7CD487A6F62759397
-42443511DDD40CA6343EE4BB4A63125A4CBBE3470F15146F50EBF1664DC5B6F0
-8AFB62C771997991A9FF8D3BC0E258FA4D8AD5BC20140DAEF3824CF78859BBC1
-1C10C23A2C433F4C2E86350651D5861E75FFBB16CB9039DBC5D6A5B37A81808E
-1BF4A6C3D341722DDB79764507346C263A8EC13654352B6B8F054B1082BE652B
-1330D7701AA7B370265B3F228E005578AD69E63ACA9944B5136177EF63DA4B3A
-2DFB0281495331010183219263F47C39287B9F0CBA9D9BA8D199DBB482877063
-FE76E44665F05675E1B9E0063ED511CE3450472776302C90DB4DBE532FF0442E
-8901F287E601A310C807DE2D0389FBD1E673029C3AEBBF692C189A104C7FD028
-5539F9BEA74D18F2E15813C4B7F836148B4B54BF1ACAC31C3955FD07F68B38D5
-2F0D5FCDE1F89841E35DB59336E58E5C074DB381AFBFB7D2865DA312A2AC8580
-6E308FAABBBD198B81AD0D1EEECD61EF8D4B05265EE9207EE1990CD1F5CF2B3A
-00922727934841BF36A9D50A3C8ED089668E7138A1FBFF1EFBEBB0C994582726
-3E31E449D43A4756E87A8636BD09C79438CF73AA3F903F6F3CE72427C148E997
-860F5394F8DAA2A1F392A169E3037AA3516246DB8CE5FDACC863876145C3B2D7
-5BB3D46A325B5238E3256EA2863D388508A720976F154953694661B617C1636D
-6B220B3DA2165E39C5B1AB48B522ACBA82B5DA5E7AD1EDA0B116B754D994622B
-A75931E0774B46CB1224CA7C9921E2CB2A2D95C7E27D55AF75FDF72ED853E525
-EBFAE0B50FD667EC5059FEE1D8E7198C6DA130AF2EF7413C94340FF4075EE1F0
-543678B806A1B8F4DC920BB4DC568E50
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-cleartomark
-%%EndFont 
-%%BeginFont: CMBX12
-%!PS-AdobeFont-1.1: CMBX12 1.0
-%%CreationDate: 1991 Aug 20 16:34:54
-% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
-11 dict begin
-/FontInfo 7 dict dup begin
-/version (1.0) readonly def
-/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def
-/FullName (CMBX12) readonly def
-/FamilyName (Computer Modern) readonly def
-/Weight (Bold) readonly def
-/ItalicAngle 0 def
-/isFixedPitch false def
-end readonly def
-/FontName /CMBX12 def
-/PaintType 0 def
-/FontType 1 def
-/FontMatrix [0.001 0 0 0.001 0 0] readonly def
-/Encoding 256 array
-0 1 255 {1 index exch /.notdef put} for
-dup 12 /fi put
-dup 44 /comma put
-dup 46 /period put
-dup 48 /zero put
-dup 49 /one put
-dup 50 /two put
-dup 51 /three put
-dup 52 /four put
-dup 53 /five put
-dup 54 /six put
-dup 55 /seven put
-dup 58 /colon put
-dup 65 /A put
-dup 66 /B put
-dup 67 /C put
-dup 68 /D put
-dup 69 /E put
-dup 70 /F put
-dup 71 /G put
-dup 72 /H put
-dup 73 /I put
-dup 76 /L put
-dup 77 /M put
-dup 78 /N put
-dup 80 /P put
-dup 82 /R put
-dup 83 /S put
-dup 84 /T put
-dup 85 /U put
-dup 86 /V put
-dup 87 /W put
-dup 97 /a put
-dup 98 /b put
-dup 99 /c put
-dup 100 /d put
-dup 101 /e put
-dup 102 /f put
-dup 103 /g put
-dup 104 /h put
-dup 105 /i put
-dup 108 /l put
-dup 109 /m put
-dup 110 /n put
-dup 111 /o put
-dup 112 /p put
-dup 114 /r put
-dup 115 /s put
-dup 116 /t put
-dup 117 /u put
-dup 118 /v put
-dup 119 /w put
-dup 120 /x put
-dup 121 /y put
-dup 122 /z put
-readonly def
-/FontBBox{-53 -251 1139 750}readonly def
-currentdict end
-currentfile eexec
-D9D66F633B846A97B686A97E45A3D0AA052A014267B7904EB3C0D3BD0B83D891
-016CA6CA4B712ADEB258FAAB9A130EE605E61F77FC1B738ABC7C51CD46EF8171
-9098D5FEE67660E69A7AB91B58F29A4D79E57022F783EB0FBBB6D4F4EC35014F
-D2DECBA99459A4C59DF0C6EBA150284454E707DC2100C15B76B4C19B84363758
-469A6C558785B226332152109871A9883487DD7710949204DDCF837E6A8708B8
-2BDBF16FBC7512FAA308A093FE5F0364CD5660F74BEE96790DE35AFA90CCF712
-B1805DA88AE375A04D99598EADFC625BDC1F9C315B6CF28C9BD427F32C745C99
-AEBE70DAAED49EA45AF94F081934AA47894A370D698ABABDA4215500B190AF26
-7FCFB7DDA2BC68605A4EF61ECCA3D61C684B47FFB5887A3BEDE0B4D30E8EBABF
-20980C23312618EB0EAF289B2924FF4A334B85D98FD68545FDADB47F991E7390
-B10EE86A46A5AF8866C010225024D5E5862D49DEB5D8ECCB95D94283C50A363D
-68A49071445610F03CE3600945118A6BC0B3AA4593104E727261C68C4A47F809
-D77E4CF27B3681F6B6F3AC498E45361BF9E01FAF5527F5E3CC790D3084674B3E
-26296F3E03321B5C555D2458578A89E72D3166A3C5D740B3ABB127CF420C316D
-F957873DA04CF0DB25A73574A4DE2E4F2D5D4E8E0B430654CF7F341A1BDB3E26
-77C194764EAD58C585F49EF10843FE020F9FDFD9008D660DE50B9BD7A2A87299
-BC319E66D781101BB956E30643A19B93C8967E1AE4719F300BFE5866F0D6DA5E
-C55E171A24D3B707EFA325D47F473764E99BC8B1108D815CF2ACADFA6C4663E8
-30855D673CE98AB78F5F829F7FA226AB57F07B3E7D4E7CE30ED3B7EB0D3035C5
-148DA8D9FA34483414FDA8E3DC9E6C479E3EEE9A11A0547FC9085FA4631AD19C
-E936E0598E3197207FA7BB6E55CFD5EF72AEC12D9A9675241C7A71316B2E148D
-E2A1732B3627109EA446CB320EBBE2E78281CDF0890E2E72B6711335857F1E23
-337C75E729701E93D5BEC0630CDC7F4E957233EC09F917E5CA703C7E93841598
-0E73843FC6619DE017C8473A6D1B2BE5142DEBA285B98FA1CC5E64D2ADB981E6
-472971848451A245DDF6AA3B8225E9AC8E4630B0FF32D679EC27ACAD85C6394E
-A6F71023B660EE883D8B676837E9EBA4E42BA8F365433A900F1DC3A9F0E88A26
-331942DA18ADF89C5E79B969611C123465054D82C1DB771E6506EE7EFA2BC0E1
-DDAF60DAFBE6E98F30970280A2B500EF3E9FA526BD478E1125461E1A4AC61B41
-D0FD917B2D891EDD84DD60DBDE3BEAD106058BAB10F882E4E143792C2EE4D13D
-A5837253F8577B67D8A2F0936152AB0555EE029D0B406C99B2795C5B0B394EF6
-78946EC9ABC64118C3FB0C8BD6C4AD2B18C319E721561AAD9DF439EE057291C4
-6024B31D64D08E756BC2692C2372971247A706A58E7A6B20F00D474DF5150730
-5D786AEF9B56C84EC3823491CF0EAE567EB466FA0B26469FCA00692524BAEA17
-602051E98B67BC2AD63A1DF8F3CC41121106CC02C07D3D055758B3C33D3E50F9
-88675B2D6B3DD1789F1AE9AAEEF5D5BD3E99D9EDFF98A927D270EB8D136A1A2A
-396E8B94DA9BAA7AF8243F6CBE38546A4212C37B752EE6099FAD5FC3D12729C7
-751F60EAE425B2E6804B9A7C392D2CC0CA07E7384DC4A5ADCD8911A3C09E4DC0
-9233E8A3F7BEA1428BBA8262517DA3801EA961E912D5DA81AB9560EF800919F1
-DEE9CC73EC9251754860B83A1D25EA364AD1315BC4943A3C5D920318BFF3A2D5
-27A0D8DFFD02AC3E2E6059A4CD98444B50AC5BE7B9D37DFDFBB38FF335CF5A9D
-AF6AF8DE0E686B66810D28F7A79D5B398DCB74B4E363B0BFD1519FCB34982DA3
-077A4FD0B5A2686D8EEC5D5B29D07C40AE2812E33894AE7FEED8DF2AE9C1F796
-9F5FD59E1277982CCB73F1945E762260627B1C1964091C858FC0EA75F4DC81C0
-2872B4D5846F3BBB3A79B683940A568A1FD68799B226DF4BFA0B09E77210A4F1
-2E0932BAD3CAD2FB945ABEC86ACDABDCB758C39B5730890D7A472F39A813FC3A
-598E2D767DCEA004056FDDAF4346573AF990F30B76E97EBB2FCC38FA116DFE95
-6D9B579467499AC2A7F659692CF63BFF859FA90F9584E70264304229C6577B07
-F9FABCDD314285F8B987FBAD04E4E61184F96F31B38627CC6D83743C0A561004
-888F002862FD99CA0F81864D180DDEC1B3893B93F6552E139E856C47CF7E995C
-7C273CF00776925CF39A298229683D28DF7E9F21E93F8B25BD2A111916111809
-39014D096DA99B8100FD17A4BE9129D0181F515C8D43AC6F3FADC10979526FB9
-4369B250A522444E773942AB21B630F470F5D42E09037AAB0DA0478360A349E5
-3858CAAC76E58C6E55317C9D307E01965C244C4BD24E48446FD0DADD44B3D7C2
-AF2D92AF002AE1014429FCC090CF52DBFC36FFB5915C5215DC2F9DDCE48426DF
-844DA4FB5DE5C9429B35039BFE218FBCF9ABA471790D604D0107FB65D7AA05FE
-23C350C93FF02982AF2C8D387C9401F1AE5A826E9128B5814FA24DE537FF57C2
-38F12A50F8C42D53B2F0D95CEB47D11D802326135A3E3662A454F67CEE321BF9
-6FD841DE922B4C1E0BC2753B9F3F6F24FFBD4157ACDBADABD735E5B5626A1C49
-6DD59835F4A6275F66657413702203C4523E6B7D74D81E11B37F2FA86917EBB0
-EBF4A55103ACEC7E420A7D6052B2D38940119C34E2E3D3280960468E0AB10A40
-0758A98AFC872037C929CBCAC71F5A45CD9AEFD1CE854858353A0852D9F88129
-F0EE1EDCCB1268E35494DF962AE27EA6C0AD212C0C862EE355C5580057B2C4F0
-580FED0B2BD80716DDE4350B73877EE349E3A4A63EACF07013B0484F94A2F28B
-54A3CCB83ACD34A0DB2D87624C7DABFA77362AB0CBC22D73C2566C164088C449
-01EDC05AF90DEFE189FAE81930CD6D203596074E73762490AB571C044DD3989A
-66E0F2B9802F4EE4A3DBDCA3E4B27E331951F4F21AD36D05F4E83C895CBE9BC7
-CDD4AD272BC22B5340F962039F0DD0DF6DDAB20856AD48F1AB329282E81DD509
-813F4041189C99A3DD34B9E511CEF5A61642FFEF819364214545E20185D04776
-3A23B72A16BABC12AC355664EE9B6B04A5B721CA4639CA95023277A0340461A7
-6679A462B97926BF76C7F195131037C2DD154B9A0D3A98E866C8BDC869E82B08
-45CE67161B336B4CE0153F42BF005DDBE7004F9CB8EAA04EF844E469A99BCA93
-49C80C550BD7B2EC80BE4F55ABA0E33059288A36A01F8487F2A4F3A8CBEC994D
-1723CF8ED8AF2139DB41284C778AE4DA881017C72C7C67DA310BEFBFAE4E52C7
-4EA68B8DADCD68FFD132DC14E90614609CDF571644F78FDA212F7F7A8C5E0F23
-D30E3AF51161915468A2ECB5F5F5C9E51762AC7F914383E9C49EEAF70A7ADBF2
-667E9E7BFB1F89FAB292417B1C22726B8F3A267EF227D38C9328168EEBD65968
-EC16AA12FEA77D3813F871B40BF7F9F39F8E8AF3470984DEDA9ADBC52F6F3C08
-4C8F80FF637CB5941A082C46275B3112F73BF17157E47C27E6D5328391AC81F5
-18CAF829EA5655A28BDE6F2E09190462D920B5883DF1CB187FDC9ABEE351581E
-27D3FE8CD81BFF94CE534CA166252417EE05223D6B6960D473B021EB8700D45A
-529E96BED6E2EA51D0A97CD953DA4E177DAAD914DA8A304D978D5C9375C88E15
-3E3BAEE87A6AB1DA10AAE3A36DBB5C3E3249FFDEA9187FB5B4E2C7435A444F78
-ECD6D7C8623835BDDB1B32C7B97DFE8B7C9D4BAC01F51484B96EA6BE7B8B6871
-50F91362EAF19C28B61A8CCC68241BFD8772253EA3931DCB92DF492D40C3015C
-C5AB21B46E09C60D5447A6D0E2A0032DA3FB31FDE5871821DE1B6D811CF9D3EA
-17537676A4F27A7CFAC79DECAA866DF0B06137011328E28524521BE97E125A48
-99A60C474644E0CA13FDFE368778DCAB7ACFE2940AF8DD4AE0AAE2B2278E0D6D
-0B83C70693BBE2EB0D5CD3BB572561F830379358FA9A6D60C7C77B7B5EAB61E5
-274C635D699558B1C1B4E7243B1662797BBC1813F637E2189ED5B5C09E81686E
-6E1E41350D7B14CD5F85A4753430C8DB3BF724673001D8B354036CC1A4A436F0
-C74F4F3E4071F995A1B394ED974051B8F2C24416DEA2E18EC82B910EE38790FD
-0B31A1B01322DE131054286BD668B32460EC9D42D4626ED00BD81141EB313DE9
-8EB28228E04B1D4324E93DDE0FF6C52103AFE6B36107138B0EFE799D5643ACC6
-915877932A4E6D8FA5CE24253D981864A75ED97434B96000F6C1F13879609403
-A06C9F7E75259C21DB01E44EE1F3A48C4AD5D7A3A2C7E28259E31EBABEA74CD5
-B842343EE409B4AE792C5E23BD81A41F099BBD9775AE1401A1B221D97D3BF79A
-DA2A64AA6E37839755D5CF4E931B3ECA258FF3DF46CF0753B2E1E713C4E6FADE
-7843B4750DBE4ED9C8194295EC3DAB29BE7577ADF285FCCF89B66ECA83AD9359
-80E08CDE4C2EC8FC382BB233A6DD3BD103FC026B8536D6584B27C9DC63CD6419
-0DC194F54D61BEB16071FA5C90F95DC4C3F562591FF9A2A63A2C4650865982E7
-91BEBC25FDCC286F7676528F957D263D0427351CA785913D7A8A3E8D432809FC
-4450AD63F85D6305A0342D283E125FB0B933CC9E43247ACD480B48D069E2E495
-E18B9545A11370A7F168E3AF9F5291CDDC42D5156D9DF2291AB356DA52D45F7E
-291B08922F2A90E80AB0F8844B54DBBDBEBDE7932FF7434423657F72DF60BB46
-EC4A759F33FFE566D772AFF7344E64D9F0AE948CE3D304C7306491BF51B2C886
-23921CA1A60BC33A2F8BF231AA6DE06064B3ECC1C83002CCE73F2F5656FC1CD6
-2B4F76326C0FB690930F30284322A9969969D9F59985ABABBE4F6CAA0D2D0FC7
-12EC2F4387FE9ACBAC666B6DE8B56BB7FF39A9F5D20482A4BEE46E23A37E178C
-588D0D06A8DCE84C8496A367385C1482BE700D5AF732559E4A4CAE5BC8151AAF
-1927F61CDEE49058455A25968C08491140AA6D7D90C5D48BD580E8FCBCC2B4B8
-D9C29CC7186217FC02FED0388F55AA640793431B65E037EC302A19B3B33EDB6B
-4E61D3E4541F0B9143FDAB7A3929DE1970ADE1DC1BC0883994DAE7908AE5561B
-DDBE61E930AC2FBD643E087848073710F00239920D8E9AF7F8E8BAA5BF9B807E
-40E72F81489FA67B449644D3D826417990CBBF93EC44F8DCD230F5A3D9984456
-8B03802C7B4B22DA23715EBC245FFAEA7B0E32627F9E71CC94C0C3045FE52B62
-5486471DA7BC5FEC56A1BA255F3AF867EC3265B3F4A63AB0271F95488E267C32
-112395F977FE1DA953507136DC59FF3ECFF1EA252FFB82CB1ACEC541F5CB2AC3
-FB35AE5A4971D5632341A16EEBD6D9F2EB5F453AC9C96238C8265D792EB16E58
-244559A6C23C20622D44F8FBE9DD731FEAD4A6BE66CBC9B95A5BFF59B0ECBB4B
-E17EF6D3E423A8E49C96CB4F93EAD4DE2335AAB02AF12FC2A9BC2FC81CE526C2
-F64A473FE386DFEE4E233EFC588C5B3650A72C30D2AE2664BFC0CAD9D5BD6433
-BD67298B1B6C990D5CBE4FD20C1EDFA6839226E606D1F66FE59F3EB47E35C567
-B1E937F9061289E90BD151BBCE16C9ADBC8C65D09BD8E9F87C403A0D05FF3D90
-3015F7E89465244616BA1121951C092505BAD32172BC5516645B14D60409B2C4
-C94976B1DF3CCBC33C66FF4F002528B942E88E8D2FA4E1B098A1FAECCC33C591
-1EC4AC61596D00B65C6218273819E46BE457B9C4CBF6F1A778E16AC64050ECB0
-C65549AA2528D51CC11D92E9A8E9ABBDC4FA91651A661C855919594A235E6AC9
-E3EF824B79E3088D7378B5055D155BDA9D7B909552AACA888B43C22188F2030E
-5E7E8A38174E0237C2690713AD73CCD5262D3D8D1237C42A1924E5370568279D
-E9D5B05C39E009B491094AAF4E7EC89D04BC4A9A2892A47F612FE169CFB3677E
-557AAC664BDDA6020C6D74FDB5DDA927B9112277D87C43DD5F82A5633693C2C4
-80B16A9F6CA63366D28BDE65AF9B6C6A3E035DA5792D61BF3198BE6E0C04D0EE
-519E388BC07530011FBF532F7E580760449476AF8067710F9F222B1E71A8874A
-A0A5C0E2E813288322698E5C5C8CC7493453555D7C332722DEBBD0FB3EAC6246
-93939BA42CD6905AD16F873B14968C340F6CED94E8E8B28C4DC3B31CA9BD1E4B
-2DC161FD50A44CDA71A0693483F1A7B41FB6F5833D39F638F54D85EA0B187649
-38FACCC8CCEFC695C9C8BDB87713AB89726FB69844ECA220595E123A4BA1ED14
-13222737A3304CDDBB8424D306518C6FE3D3C2836C0C329E9223AF0BDBAB627C
-4344A00A23787E5969664778171B11CA2DDC70EF7AE514765E87D20DFBE9F39A
-E1CF8F43F8EB9AD584F6A9876981C3901DFB457B04796C36D6A261BDCE3F1BFD
-7945CC3BFB731769051686F1F0A877FA8DF81D9E72B44F3DD953DBE3006822DE
-680F834BD66F9A91F26AF44C93A6BECB1CBC43EB27061001BA9D0F4FD8992A1C
-6E73FD209E793D43BDB645758A712B93D09237732AFB2E5CD6093821DD0B90F9
-AD613062AE97713B69D89DF13D9C482183491E0CC03448FE256B885A157F0905
-DDB5BB4EDF93C4841B87AA52002F48AF2E76EF3C9862B95A68F760C9FC84D7C1
-C5E44113F2DD335F4B275CC3E458B9AFCC95060A2006037E2BF6E3445CCA6573
-FD22ACEDD9ED69E8F502B1F2D0320639250C0F356ECC43A27CBF91C87F5299A0
-A6613BBCA99A1B2DE7C05DCD91EF68F8319D3147254F9690F84419DB8ABE8BAE
-398CA709A4E779307536E46F9E0BFA44F99C296019C87261E2B31A99D888499E
-87FD66622FEB5F10945ABFE7F92688C723EB0AD6676F6F0B492FBB2BE7071979
-1B3154BB18E9389670E417B0CEE5C4873E5AB870CF14AFB1A601F6679ECD0424
-DC64A495A7D93B659D2A265372E2017E4120580E65178F61FC4558DC9EE3318B
-46CD4F6DD2BCE71811AD0616BBCEF04C8CB91A3513694C63C13AB227FB99E175
-BF7E4EE6B5C264D76929E24518E4650CF5FB25D07CB75FBB4A9EE9349AA2AE69
-CCD0B30D7A1248281C6A95B98792933B45F5D0431769031F2D7CC45BDDB7BDC0
-D69ACA7D8BB1B8A3A06A1E6DA6CA290D59409DFDE8D154E9063A3C33597070FC
-5F7E46A281DCCC5B5F6F840651AEA70AC412BDCAEB549BB3F38035F8F8B3876E
-0E5EF8BF0F76D6495054BD4EA05CCAD9B3C7D438DD6FD963410D4C0FB5C04E74
-EB96B9258C08CDF791617BED9400B36DEFFD20DF6926917DF01FCDA0332A6D66
-EF42326069F40549FD62383BC26643680ACFB63EB8602BCBC19C6914C36874C4
-FE9368E4ACAD858A877EDDD5C6FDDF24B1E7BED3E2EE4E6029E3E6A89F513EEB
-B56D50D7D6F4BADBBD464CA5B55FA60586AC6FC72890B28F836FBD9B19677F81
-CC9FFCFCEBF20E1DE04A2EDC60AAD896E25780A52EE7C5937ED25E3E80677650
-7B0E50C9C1F7D5F01AD68ED1049C2C1E36533B0693C960E4F9881FC8137DF6CD
-00E95B425D00BA7CBFBEB9D787DF8CAAEABDA5A8612EBC1DA63D695C584A18DB
-C3BF2BFBA90F16926F5BE3E945689FA0CE072872AE3DD8A5F917BF41D15888C5
-6BA972EFE29014BCC6044AF174E7E1354EA0F2C320F8F26E4C092D517C8A2C30
-8F3482388843E60764F02FA1EC26BE8AE517EA4B0762D2338F505409E4E60AC7
-F78280A9AD3BD9988DDF47C4FB3D7BC4D33E4D6CEEDA601E7A1FC21BC4F40081
-830D6224C3D433B4F2F1D1D7A2D451AE49B0C410A3480B69ECEDEB6807DE9DCB
-3C5A9B237C03DE62D5CE10C507919B65C34B8522E9C175EF24BE5258CA785AC1
-72907A9A5EB54022123FEFEF9B1080FEE0CC1FD338C833C5DDB5AEFFE2FE5B0D
-A17B14D74D8BE761083A5045399A9D3F8FDCAB0D2F86083D5D6795F9F631A728
-25C5ACB2267C0086E194BA3F3554C0E94602FAF0783CA4AA63E7DB6978103D29
-0E7A4BB52E90034FA9019232C8FDDEE30905F69DFD6FDC78A0A473F5AE7CBF82
-936636D8C3E6C6E8AD80119A38B8F833EAC9CC41C2110DEB0C7DF59B57FE22F7
-634EA89533BE3A8A9899EF54E7E6BB72820C9FA9F1FA3DD7E229D2CF56290755
-7BB5B672FF1AEB47C0966AD1978EB09B99E93E01D70184F37F5D6168251C0A36
-3C913D292428B08CB5ABB142FEFA0EC7621CCE428D3578515CABF820148C0DE8
-B5A21FCBE30757EE2B6E9E8A15F0DE4C0D100320DCAF26D06E39635262F45A52
-8E3F27DFA8FDAD2BBAE2E16B30B415D791041B5DD1818353552AEF6519A868B6
-F1BFB416B242A372066BDA80A0D077AECDD024C0DF7A3E590C6F830AB58B8641
-DA426B0FECB45FA3FC7BCFEFFF124AF6A5AB3DB6850831914DE4CE174E844F18
-87C469F610B6EE45AF70E2FC50485FC2963AD372BB1FE75E850ED5103A982972
-EC88D242A1A44EE80DBD34EFD28ED1AB9BF11648EF0D1E5DBB22E4716FA64564
-5C91F9FD871D120B2EEA0AC34BBC208706F2C27F4CB8D1F293119A155992A427
-85C53050C0E9FEB765F2155CB9F44C7213D906DA6D9CECA44EAE0EC7980E3EC4
-974162E61FD00A9B41DAE5CFA46C45E3FF040F58CE2032E7949171448AF62492
-24A61827C0185B11F10219DA6D4B34AA9A5991F3C0C5E39B6B7F3EE82858AC38
-C5E03D76E3650E188C2B53933AA36415FE06F16F73FC7E9D97F936FBD24C1EB7
-400EB2128820FA3CE0B92B5A2ED74F7AB4ECEF67290FB8B1FC1A63F886C30A06
-571EFA15F713C5D7683973CDB4AA7C1B6D4DFF4BA9D4076545886BB4B66AE113
-3B1CF78EA710D5C33C4E33CD0348E60F15137602AA974626666D827A748ABD54
-07E8F3776F06BD34A074CB1B74FCD8076A90AF026D20A2151041BCBA74D9279B
-C1FD9BB9274D30A1E6CF963E384F93708691C0FD24537B92BA2DD32404DE8F6E
-D2DC16340DC311A3BE9065B57DC5A6A47D9751068869CBCAC02C580F657201B5
-FD574EE2D1872513BADEA46E926B04C24C8ABE0C6B1E6905D9B14B3EFAB1BB3F
-808975E72FA7141AB2F31AF6555F99E3572D8E9D8C603E568D77EE0CD3F9926C
-C22BE8FEA7E2E4934716E6EBB16844FD6D13EFD61D5E21716AEAF1C99A501312
-C512F39291FBC0B7F06DBE59B522F38EF4726FDF78EFCFB6DA81C0F0DC853CA6
-6FE5AF0D804C8E0606DA77D8304433878816AAC947D5D8FCE1DA0DA300A7D5AB
-4DF253F6682832FEB0340E8489CD5C124026C6D67D3A9C73E79C800F6C327DCB
-B8B249AA9523A9986EE5FBC8710066744A3C3C1CBAC61816332327B514B039C1
-7F27FCBE9A18E3C5D22DFB3AC1A957DA5A2B2558C75E0F581D3E8FB4145A71A3
-D930ADA614F631933C8075D097610249113F44B9DC1A40DF6A680FF5A144E955
-693523D7A73D88C6A297CC0746AC24FD8EE5AE98C89CDE15D269466319D6B37D
-E375136E7B07E6F6E6C3AFCF3F1BAA43652BA42E49F8AAD5FFF36D23E9163423
-3770F602C407C7434E19092B0B612972F47A8604F46C56C5AF358A634CD3907A
-A57020509D2380E56B7B112C1F4C5AAFE3A447A3E6C7E922604D9642C003C6E1
-F6DE327BADB1142FCF9B7B5993590AB6AE199EC5B021CF14EF85F816859A40C2
-F88CB2EFD9ED40283E1C0E0AEB3930BF33604149CC65A2220FAD2EE53DAE2C4D
-BAD67336FC89F99AAC450215A318FC043BADA07A56DE65B8A81FC5DF0B61ACF6
-552E03A2DC3B301494E89A014C958349B438C6ED0A2771B13C29A376352035C3
-B257CF88AF797AB6ACFF0CCA4462DDC9B0EABD03CD5B05008BB3C552D457F81C
-BAD15BE4C7CECB2E2AC71417857014C64A9CCA0BF157CF21125C6678B2A8DCA5
-B2D25F2554BB61FD02706AE513CC507C4DFFC2025C5B8BBDBD0F1F1195254F6F
-DA941BF910E0CDF516445B09A4AAAB128C62F4BA4B9566FF29C5E563BE12DD2C
-5301F4E66CE800C112BBF378E6F3ABBAC5D39333A1D51C17065796F8A410E4C9
-AC918B945235CF80C63C0FF32A58E635026C41A18838E1AEC97045998CC00CF6
-00B5AD09DA92B8C43306CEB793F2A38BE979449A3023B9E3D7B614F3D7DB0767
-F33C90719E820DB7B2AFD66A40846A82259D4148B7D92E9AC3B9AE22959745FA
-D59836DEE8E3303F6FC95A513BF8F7C76D7EB70821013B2694FB2691B31503D2
-FBC9DE2E1E8BA66A2BD5A51C767E3AFC20BD22391BC9E6D53491C513B84E6A62
-50F3A04A5CCF1714CFDBDCC57D09CB45054B2555D9EC59E1834F8B415573FA46
-54190E4E727C4588820E9A71C139238D024952FF8394D6F8BD8485C58F9D367E
-3B4260335BE6E8960D72547F75C9FB19F382A596468A838E8F92837D55422147
-E20D7EB823CFADD691D0012FADE67FD5A61E0B5626CD364C83E1969E09A3168A
-730959CD3D3382B00B1C8B733DCA57FEBC6C8CEF8F5FD305914DA3469F77145E
-8C75F76DBF30B05F14BB22039A62C825FB310ACCBD0574800FC330618521194B
-3330AFFE37CF85674B78EBA968863EA661C9C0853B67192642198EE883E8CDE7
-819F372A3CFC4AC0474CE23FE91A2E54C334288DA4A7F900F8C461E6BF299962
-A20A44A4056805AAF1CCC6410711F68001C01CDFE9BE9C1FC841F48590942E8F
-0BEE595BA803E2EB5B171E891E68F51A8168EB56971FC6E6DEF12389693DEA92
-B901D6E522E098B2713ECF54B901CB8484DC449D27F936ABB4DCCA0DDC259482
-5FEB3827DD27242A12C52B7D10A665B3ED7ABC10263EEFA28DE86DAB55F678A1
-9F80AFD47CFC1FA9CDF4B73E2B13A8684D706511695774F67C071403E2FF29C5
-EC429EC5F1AB071CFDE6E3662E6169904658B6860F4407EC06C7E2630FA9D04E
-4501E4281249E1E17F04A3A2F1E3F59332B6F5D4B19F245EF43D5F7E278B20A9
-111D5E0861BCE94DC651389C1DB89CA3006BF570992F821C28BC8C970658387B
-2F85204231B5ACEBAC1CC590E8EA9DD3A6604B49850F0D46FA4DF2DF0D018FB8
-A5919353FAE01491EBAA77DB74F10605FF7702D0D598E47DCB3F99E0E00A1EDE
-7B1102AB66929D68C5426C581B53BE235D356B5BF9239BB6221D3088A9B38C98
-6937AF0BAD38B1318B7BD5AA659A2BE98E10BC456C3BA2AB26935F4A1F992363
-313379E8E0358C677B0BE5B7D23954FB05B649519CFB71A2B50AECE3FCD73B79
-30657E91A3604D29C4BF236A6231C7BB73A3F978F1D2DCDE948F341309CF6D5B
-DFA5566AF291F0B2F3A7CE21D8C91B5151AD6A93E7F003805886D07AF2E4A6F7
-F01AFF27B73E7E629D61216E13131E648C46BC4ECE689EAC53DF65D168C1CD66
-26AD07FF78F4E5E5E0699DE2BD0512F97D8732E734B2CAE0CE2BAC2B443053AE
-98955B6EECB7FC1F8101E53E35EFCF8FA439B225FFF2B7676529E574008F9650
-77E52080DF20FBFFE1057B46DED128BCA2F54F22B3D08D599CF42E4F1B302C4D
-3F3EACBA2C2AE854E868C4D094BA6B1703AEBEB2A3A9479DA3F32D44178DB6E1
-829733CE03C99E4D5A168D364D23AAA31C91A0C4C7F133AA97BA99DD395B4304
-3DDC424BDF5C5E152896E47F32C6B0FA68E3D946FCEECF1CF08A99ACEFD8DA9D
-73EDC5DF96187AC908D2714913634860D782B225487A3A10C8B554F3295D0221
-716ED9968594D800086E8473163852B40F8D202EBBD49401C8E86E01A0499064
-30FBBA59BCC42E9B2382C689725B80780C57112F1060850787FABCB3E4C94845
-560E5F42139A8A015BD311A362F09F7673A65BE8071DF9AF8988561B87943A02
-D481ED99A276B3FB4ABC5833A12124234C34395C1DD2DABDEBAFB661EDBFFF45
-1DECCD8A6507FF08D5CF94E9CECD6A8A858283210812FAF06FC40A672985ABAD
-326263C49B09434A0DC3D014822456E0D7397513E552FD0B640AF4D94845B640
-E9A34CD6EAF3FA62BAAC7CBDD783F4D30904AEF1630A4BFA1DF7B0A02BB479BE
-54E34D0460986D076A9F665657C16D5A44738037BE23448B3459EC5EA88CFBC3
-A034501D5DE223AD60CF1CF8BAB33F25E17927C72F941E3839CE2A0992937F2B
-CD1987AB4B5AA20B328F0B887112FC03B49D86E8D456A5A1B4B51C47CE7955CF
-E965E6872E65868E1E7CF79BC6D0B014DEA3DF5B7D425AAEA7066E9C3209B434
-1ED97364353C337EC00A09B2FAF670A03E53369EA4B7918291FBA39CE1980E65
-AA15C46BC702B4B62F44F6D90BAF54C04839C6A32ECC51BFF706A72DA5A6ECA1
-E406EA945B572B8626305D3F7086445C32F6052B80FE04C3D87B3329B34B20E3
-6D73FB023383B646671703F14B96F16DD7E40AA4679862764413357373A9C66F
-0AE451369BF3B10AC4043A3557849AEFBBD4A3C67433C87C1AC45129B188682B
-0656A79806436C195AF965617D7FBB03DD7B3EFD21B4B517FD6D7D9D87A43AF1
-EA5E1E1CF74FAB8607284497813011519D6BA9517DFAAD6FBFE984C1C6702E8D
-11B38A9214F20141307125C21565E68506139B2DF3457AB87A55D1E7F042E7D9
-5DDC18E63BA012D1E3F676338DC5E0DF447F4AB47E8C1C33666442C06CA9A11C
-5BBE0795806AD63CDC33BA5E9C51B6077A5BCD845FE4A0F3227CCE5475F7806B
-EDC20AC123D34CE54384945D9CF694ECDE779FBAC502D0E1290EE53F5C5C0E5C
-9B5C842578B503DB0339A38C4DC28E46DA1107CE592CBE3362F5ED8B8002042F
-BBB87A7C5BD25AFDA7267FDE243A4D15F2AE330A7A39AED25A88FDF019239E37
-747DB435A7BA52D3FA118BF3FE4F0D0B52A894B556383C2ED16E22716EB8044D
-8740AD6CB7FBAD446AB8397E3843238221C28E4DC6D5E627A9A847A69CFD7207
-783EDDF7E86859317BC792A79C8F8164DD
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-cleartomark
-%%EndFont 
-%%BeginFont: CMSL10
-%!PS-AdobeFont-1.1: CMSL10 1.0
-%%CreationDate: 1991 Aug 20 16:40:20
-% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
-11 dict begin
-/FontInfo 7 dict dup begin
-/version (1.0) readonly def
-/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def
-/FullName (CMSL10) readonly def
-/FamilyName (Computer Modern) readonly def
-/Weight (Medium) readonly def
-/ItalicAngle -9.46 def
-/isFixedPitch false def
-end readonly def
-/FontName /CMSL10 def
-/PaintType 0 def
-/FontType 1 def
-/FontMatrix [0.001 0 0 0.001 0 0] readonly def
-/Encoding 256 array
-0 1 255 {1 index exch /.notdef put} for
-dup 11 /ff put
-dup 12 /fi put
-dup 42 /asterisk put
-dup 44 /comma put
-dup 49 /one put
-dup 50 /two put
-dup 65 /A put
-dup 69 /E put
-dup 72 /H put
-dup 73 /I put
-dup 78 /N put
-dup 79 /O put
-dup 82 /R put
-dup 83 /S put
-dup 84 /T put
-dup 89 /Y put
-dup 91 /bracketleft put
-dup 93 /bracketright put
-dup 97 /a put
-dup 99 /c put
-dup 100 /d put
-dup 101 /e put
-dup 102 /f put
-dup 103 /g put
-dup 104 /h put
-dup 105 /i put
-dup 108 /l put
-dup 109 /m put
-dup 110 /n put
-dup 111 /o put
-dup 112 /p put
-dup 113 /q put
-dup 114 /r put
-dup 115 /s put
-dup 116 /t put
-dup 117 /u put
-dup 118 /v put
-dup 119 /w put
-dup 120 /x put
-dup 121 /y put
-readonly def
-/FontBBox{-62 -250 1123 750}readonly def
-currentdict end
-currentfile eexec
-D9D66F633B846A97B686A97E45A3D0AA0529731C99A784CCBE85B4993B2EEBDE
-3B12D472B7CF54651EF21185116A69AB1096ED4BAD2F646635E019B6417CC77B
-532F85D811C70D1429A19A5307EF63EB5C5E02C89FC6C20F6D9D89E7D91FE470
-B72BEFDA23F5DF76BE05AF4CE93137A219ED8A04A9D7D6FDF37E6B7FCDE0D90B
-986423E5960A5D9FBB4C956556E8DF90CBFAEC476FA36FD9A5C8175C9AF513FE
-D919C2DDD26BDC0D99398B9F4D03D5993DFC0930297866E1CD0A319B6B1FD958
-9429B9D40924DC059325D9D4CC0344F3F997A99E6CC0676735EBCD685AAC9142
-08DAFEC78BB41AFC2F1C219910BDF41D6279284EF600B69776CA15BC8A34347C
-30783C52AFA60FBE3E353E2AE354CF87B558776A22C776C7A0B5AB5CE1F941EF
-C2D9CAC37294BF407A671F10E4743BF842143F4F7DFEE643BA3BBD8BB9E3F24A
-BCCF7F0ADF8BA500620C81033EAE8C4EF2C1DEF13AC575F1B3BBB66F093D3B78
-5412B82B67FFA087AF57182B2230F9F2137180CA58A7D9B2C822FF04BE6CD01D
-43B2CA7058C7B953F6D9B5D6E91ECBAA5CDE1159B0E59C83DBAD96D6C8C8BAB1
-374EF652D10C0F3EE7104472C98DD3572AAF2D45A70BF7061447E21EE3C3BF23
-DF39C2D1B35B42CD5297BEBE6BC94F7C9DC6E61EC67E4F677256FED9064BD3E4
-B51A71B1D27CA4E5AA9E1D8080E6DAB5310711EEF87C40859FA935B19524AE83
-63B163FA8397BDFF443227FEDF7DB27DC35D89FB1C5E435DA0619A5C88AFC73B
-89A2DF5E767C5B536BC7167A840A0C32BD57A14DE69A7D0D819AC36FF32F908A
-5070F32983BB007437E3500799DF5E0AD3710A4C0000F0098D5BE99F2EB9C1C2
-C444FD9552D0DCA098A94B3BF176F511CEE13DB7EFFAED7C47B5ADCF8D4700F5
-7A5FD1B49560969BF5C44F3749370663A04776F749DDD7B50674D93254426C4B
-EFE264BEE7810EC93784B7C01A7F29EFD92547E13A2C7851A2E709FBD5B87850
-4A44F08F56A542DBE072D2FBC58D9E6468E1AB858DC35240E30D31C7AC13D6C5
-7D2BB634BEE96FA0E10F842B11A789F72A333DD6DDCB1BC23227EBC406E50B40
-30AF0C48E6359AB0C46898CDAF1118E46BFF8B00F54EACBC2AC262AB898C42B9
-2E080C10DE923C18AC1BF8FBE2225CDA0DD6A2030D4BBC9F539D6B2359239A8C
-F41DC6D36BBCD3B89945A85BBA233B855A3D77876A5418EE11DE2B1C501C8280
-73CB390855D0C3E7F0AA8DC1F52C72B1BE0D2DCC52F46B66A60E2F950D78795F
-6B9A833593A53A9CEC303A695BE815C4FCC65EDFDD46555EDDFBC6BEB2926852
-B1049167B0704384E1B13914D3075CA894B46A02D787AC826FBDE001AFE9559A
-51930A86C7EDF6C47D8ABADF5757E0F5612C5001C8D3326842D7DC41FF034E91
-AFD8875F790FB86E078CAE8B5B692E91D26E17911FAF2F14C89CDF6224F6BB1F
-9D51F02E167163196D7F9EC9570982DA68DF56ECB84E40B75AEB2284FD51A06E
-4366A3B321D37D320F5950BE6B5089B63CB2A3E10105FAB32BB5CC471DECA17E
-3806F48AFABB3A64A252385913833C019268C09433178CD2C741F51EECFFC3B7
-72E76203B758D1900430162C35C03015D2041CFE0DFC1F38B8AFF83ED0CD2E03
-8CE7A2DD7037C168AA38223FF4B69CEBA7F9072CE8B1459B4CD8BACE2C0006ED
-67616FFD9AE529642BF13E5E169444C2675C42549F0BBC849FAF7D96CFDFD0EC
-CE7A5DF7F6C51AF5708B3DB2A72F8B94B3B4D86AD668D9E1FDE093686BDD6868
-5BAFF04BBFEED3CEFA61419AA6DB6842835E95AB10B233BBAEBB59DD3147BDBA
-529E8AC184749496DF3D919DE658F876B5EA2D6FD89C680A64F1631E7CBB4A9E
-F633DADBB1EC36EED304B37EBE1CF698E63B8328539AB6B16AD592E6DF5F26D5
-969C9A949EB3A6C2587F61FAA472E4DFE27F4FECC9B902A1B169EA8B60E66930
-0402A174D0FCF534BEFF21460E909D99255F8961691B95193430E0CF198F26B8
-63A83A3F47BAAB3AEF04E39D0432F0C13082D35918BAEA09C7FAA0E93FEDC258
-9EDB41E55D9EC83C30E7E0748FB941CF773000F56537A334AFB700DFEE7C610E
-E1BABD99EB26682BD9DA825C75C49014399AD4F9E313D4BC5D260261C85F954E
-A54741C03BD9E6C91004706EB74BE58FFD246EA736E843F1D3F38A5D98D1F8A4
-1E03620888E75EE26463D4B9AFDB914EA0DA8E332693F73417967F9642DD8FC8
-D6D41576E6A0444C0620E9AF2A546479F9AAA59D6C2C547DDAB0C41FBFC76A31
-E39FF23EC8CC50ACBDEDDEAEF048E3A925CC196D60EC5856CE453F4DEC63E8CD
-0E954B2941E0DBCF9B57E8BCFD621E60D6D1ABB052028CB95076B9C04C645286
-5E0C554B7EACC4F614AAEE68D8376B2C1E30B664DA2C9F4F4EC403AD9C2FC246
-F96CF79AAAD7B2BDDBFDE889CA70F8CA0E16E344DE29B4A29F222B89BE1C54C8
-42405CA577AD975E5BBCD37BE8B8314429784B04B22D78C347BF0FAA47784612
-100741ED1446AE6D80BDA7C945C826C8117CEF0A3C3DB3E08C44402C2D9CF14F
-2C68CB9B96051CE5488F10C50D4990342687DEF23982B111AA330AFFAA723300
-66A5A5C73FEE04F0BCE0EE7E3BAD08ACC64C169A72BF1A875A1E3E6F04D5C81B
-E622C12FF806E1BAE08BAA507962682D42388CEDCD1DCA2B2A9ABA08AB19BA31
-E4B7E1ED8CB498C112A9B485C0638D7ADB6055B24E66D8D4BEECD5A4EDF394B9
-C51C5A54A5321A50C6F50ABD2AA1A253C066A53825A13B70A6212DC4BE41CD25
-00A0C79E4B634DAF012D9D95F78B462FEFFA290155F0B9AD2175A5A0B0A4643A
-D6264A28D52A847F4BC2879F4FDF7BD32C4BB48EECD6DB385365EA115D9226EB
-C4C8B5182A8ABCF811553D9A39F9BC8DE1E3EB556F5817AEF2126B605A4B015B
-53C2BF69E1ED317AFC575141980456AAFDD30091815F08B9496D280E6D6CF4D0
-33DBADE7BA13AC91722A5B4BCCAD08A5CBD321BA281FEFDE7CCEF37B270F29F3
-1DBB4EDEC801002FB8667BFD54534E75881A8CF835CAFF03D95CD086340B14C1
-86449424907F224D50EB80CCD5C1AE32C5F3593148EFACE9ECE66536301BE18F
-E6E0FCFF6CF346480930AF015E2B5CD6E5B0371D24DC4D79458F4B97E2403430
-D8A1D7132724E465612913EB780D416FEFC78233491AFFA33D39DDBFC0494B77
-B2D238CF4F3964D6DB0E71E108169BDFF17CB65E7FDF38F0693F1F8D3C154608
-FBCC89D5BCC050990C405653A2E29C5883C8EF5AA3BE37650ACBCF7A6E27A915
-1EDA0DE8171DA47FBDA0AEC8F9011439E88C2A601A76EA49A14E7CD30C7B3AB9
-9D051C105A367A41944E9B0115FD9FA5400F18D14E3F37B04AFE94F50AF7A964
-1F58C8E8AE5086ED8C94AC7536A6B3FDF7C07306EA8B7C37E3FE11F929887E3E
-9C88BC265521CC644F664A7191C2BC51C09CBDB578D9439C291912405F42CDAB
-8BC116611522CD2DD21BEADF45C93B7E62CCD87FDBBAE77AF779915E1FCDA9F2
-069AF4F137770F817B63BB44A28760F017ECD8C97980A214CAFC4E32266AB19E
-45626434C4247B4B215409C94590A0FEC286074F997B458E7DA64A51E75E738E
-669D08853B98AEE3136813AFF7A907CB5E2E4D4444DA17F8B3A63D5680DE9616
-B105C4B396A14046A196AA24B59A5186F3F9238EA8BA47F4715AFEE5EB5DFD07
-ACDFA5F8C9F34636E2AA548419AE15844C525F9C464036B322FBF73B8234B225
-7C7CE45BA27C971D62F8BBAF2911CAAF79B2834C0E4CCCE63F58647822B3C31E
-70B53F25D4CAFED1CEBFE062B5B00EADADF20B3011BC057D9D8D51485B1FB174
-33661D731BC9054872CF4C4872849D90AFD2204E7C095D302BBD103FD89F25F0
-A42000DF3194AD1A5EF67B07FC717EAFBA9BBDA898CD317417E60F6EB5E2656C
-92DC4E003FEEAB76EEBD8FA4C073A0E6E2F4DA8B3601AC0EC8216BC9ABE08773
-0C49EDEBE230A22C717A5D8CB85B21BC70EA97458E8CBD2F9C5D71666941DF8C
-D11842D29FED3B07A7F8F443B686976D18124FF2047EDA675E2B666F29839E05
-535053F74A6AA8CD512530F53784A1821CCDB3DC540039353CA363671C1D696A
-E24F86FC1761966341CD62FDF4C35E69B63117B9DD57F7523272CA31EB61F711
-7088506DFB618DF071E107278FBD1C55CF28F1FA563E65D7CE1AF3C89941EAF0
-B6606FEC9B52291D38D0C90BFBD92A8D87BE8E6FC26273B69E5DDF79E70750D8
-DDA4C123C9E2C55A1891DD32C0ECD45332D0BD55E31041ABF3E38EB800BCD51A
-B6A3AC030C4A4F71949BDED99F89B4B79F2B793BFE196F6FFB4251ADAF78420F
-B075B528C0065A42B25FD8D9BD861ECD0DFDEE641CFA4BE33ABDAAA3E840229C
-5B841FD1F81ECE1352DE75BE19EBDCDBED06D64926325CAA2355BD19FF8AA895
-02D0BBCD021B20405AC6F951DBBADD2F35D40813376DD0FD133D8B8C6536428F
-6D994EF518C84C2404846F2F20AEFFA435C169B4D49D5078527024CC3DD63E20
-D17ED3ECA36790B330A2BA6B880FF8F1514F2DA145CB2951E5A5D78648BFAD43
-A0EB8E46468927A65239B41C86524C7E5C747FAA682DBA7226C8EEB7F9E595BB
-69E5B158BEF6F4A9E5FBA17B181669159361E08BEC85D8AF29BA2372939B1EC9
-4DFBCD30875DFD53207FCDBCD95A1B4F73194EC8736F07C9A50B38D784F3395C
-446E1297110DE73C912C67855720F257CC60E30F7BD257C08C77200418A19CD6
-3B3AAF2054E1A411EF3EF7FEF997EB33C8EE6F197C8B2C876BCB113CEAF0BE95
-DAD6D4969BB9A3A9F7B527529CB4770A367325E732619DCE0EC17F64D1AD7439
-6FC0E701BAEC934E13C4C4514A0B8E5E607B344A8066D313D0DEA98E5EA4DF15
-6C31D2BA20B8F68E3CD47573D79D44249C45BDA475CC4EADCE9C8A447745C288
-73E544791B256DE85853B228817BF3234BC9715DC7E4042550F1F9A7409E90DD
-A3D84B631CDA78A50AC1C3C9A45632FD78B3C2DAB79BEB134E6E1CB52F5C49F4
-7275BB4C962DB61342ABA3558A6C8E3499B3E7EE976F069D10399F8965F6E557
-1E59B2206DC1CB052552028615153E0E45B9F230242FE06D21A1AC5C780432D6
-1E1C058F7751C9908CF9FC85D58FEA01671C9E9059046B5DCFF8B434CA359995
-EB839B9EC905CFBD82AE8DD90E4A6F9FFF3B8F5E3CEA9BE6E525B5FE1E987B0F
-9E7DFA55F685A92CAEE923604F86C6C2451B3EF7079EDE8B9BDF2BA78A17153D
-7162F9C29E445F5CA7BEE5753C651AA72D17210D82ABFC46FA9ADD72162B577D
-4256A767F652133A27220E2AE63AD1F6F2EA7BBDC605D26E510BDEB31E7BA36F
-3CC3FB4E58F0053DA847AC21DEF08BE1707CF7A3A1F3C31747D803A9AE74D4EB
-966469E8A53FB27E49558BBC0049D11D6BFE27B663A045FB02C6C8C0F46CC5DB
-2F3A77C2D6B18B21B8C535225D7E3A7C7EF8B2D5B2263460928CB2E9422B0D47
-F115DB92E454D7CCDC32D067540C04BC37F7FBE758527BA6B76B5FA91F24972F
-69F8C8F67BF2C75E8F671A2B9CFDE7E1362A3B9087ECCBC4FA2B10565D9F2FBE
-070BCB381CFA8429A2099766CCF57F574E81581B248E6892679DF04F8B34C591
-499C1D0B3AD5171DB93F6481E8086E93BBD8C760EECFAE98D84110485D7CC0EF
-854E9353AD3A3E32C63E8432163F5B3723AF4738C1CFFDDBBEF5B18ECBE36CBA
-70F237522D5115A4FDA5FBCF9CD06D99AB64917CE5BF3D33DEC1D2953CEC4B08
-DF4E6E938F64AFBFCC1362228420088B57028063E72FCEDC9AE4D43EAE5C0CD8
-790BEB96C0D4FE43DEBEBAA1139808277E7EA873AB4E605CE9C69EF7C63E2905
-E0A43AF11DEE11D677B2EC6D3F68DAE948CC5C1408A26CCDC641273CD2EBF3A4
-F4E4DC3660FAD51A9DDB368F383B012314EBB4F030A1383092E79091EB2D25E7
-7BA8DEE101FDD268A159C0C46B01FC6200C31087A0BBDA4325AF70B2232745AB
-BFF5023EE6CCCAD7443C6CC12DBEA5350B28A1D70812BE23342AA80C59FC81B7
-C931030DE9A322D9B1B1C14CFE4E85A094D33FE36D41E90183BAC0FA97C4F138
-02FEA1F510DDE414EDD1C9EFC47764726CCA3C2C73F484E5CF556BE6A0DC55B0
-A0E008009A193880CAB90D854BB1A0CE6EAFBFE6D1E3A4C4D900BC6099DDE867
-E96E02503DB66E02F7AE2A36FCD015BF58AE5EB115C1B80A9332A8748A52F8FC
-B139E87AF5ADB045BB7B1A3FFAB4E90BC34002B2F6916EA804DFFFF1F65C4E97
-C4E144BB6EDC906039C71B44AA3DDF5BF5F072E5687B07096828D25065E78DCD
-A39620EE567E59153DCF1D2FB690C156569165AFD93CAFC150EFB9BE4D272776
-1579D3ED0571464EC089B2FE2D655F4D260C370AF131CC53CD63542E362B9C90
-A2D0434EB6E3376C634CB203B796B4D5BEAB9B0983BB197F58A7F0CB3F52EF73
-B73964D460DD2589F392B19AD2FB9BBAE1C39D87553F624AED4EF5AF339F30A4
-EC40DB9A29D4A384B68DF458D35C2602165C2226997F86DD42D4A0068C03F4EE
-A1807451C69EAACB81772BFDA7F46F16E7F7976D6A4FE8ED08D0F2BE13A1055C
-015647C14154358BD58990C1F86AB962D80C91C92FE2720268B38073076274BC
-DCA5B8B0ADF8851A54E12DA2EF3BA6AF7E9D83EEAE99FEBFA2CCC4A09343A455
-014C9306D155E8D8EAF9CEF6C6C6143E2FC385F5972485FF37B67249F2A56A0C
-23FFC3C2F63976BC6E2455C36B4C1C09C976BB684A7EA770D34B348416EF27F6
-0D8F9194085FA4A554670DB1AA724413518419E1A017B347AFBC2F6FB5FB1539
-916D2ED293B818699A5443E88F10B383537BDA76C31E4A270193E557E7C45FBB
-0B65AF75EA093E4F9E813B76CC48338205C7A931D7F00B15ED2C827624B5B9FD
-35157F58EB85B0CE8A035200F6340506A62E6ADC61F5B5E1E9F26D9C2DC3D6C8
-4DCF6B37FA1BB6BA8D94DB0BB51DA77EC62E119B37DAFE27D8FC1373482EC73C
-61A52BFF73D72299963CB4BA533117D8FF92AF9772109BDD1C31551DDA0EEFD0
-DDC0CA2A38F676777ACD4FA88AF947645967122D09C5B66D85CFD618822D8B44
-96589D6BB3F2CE00D39056AEB065751490FE39DCE3B1EB4453FBEEE0E5E79381
-F533EFDC302C1FC4DDAD947F0FA29C76EE524E66938B7A2D1EE060EC50ED9FFD
-DE8C8DA759D0A5EEACE2957FFA717E13E02E7D6DDF6981D72451EFC9C9B5DA73
-05E5DC46F8912EA7780848CBD2E171FDDB96B2CF79B8DF58B66B940F63346458
-BC53113C2280702579109C583547FE9A2CE7A1F0E6C31FEFBC81856AE022C74B
-1E89C024392DB8F2B28EEE5AD31371E7BE919ABFB7316F288719B0D98C6D66AF
-37522A3933C3BE2D481500C67CAC9887E68312C93639BB0A382999D7BC1F7B16
-E94C4300DC17BA263715B7E57398F1EA872A27DB8BB07066B3ED04EFF0F2DCAA
-4C7B2C8127AF8D1C2512959B0DBC59D1C704E320127A3617DFC764EE03BA99C9
-02DDD0378BFF1126C32F79CDA9538D5DA1C5E837F6CCE987C76F6DEA4C48F166
-72D6875FA01166DAAA78B4CD21D506E2CC10F8D01E1DA46DA50B9E27724024E2
-E8A860FC66A48FFF899DAA88CDBBE5122B773761C97F2912D9E56AA4B1B97B86
-890EF9749483BE4BC1B8AD2F72782D366F0288B589540B4D7BE39D818DF4E500
-D01ECB913D5D2B79E330012B1E4E704493A68255782CBF81F3A2A4FD53D22CDA
-AFAC712132D0F906F1FCAAC5A7A8D2BE620FDC2194636ABAA93BCDAEF7E72E47
-7E262DE750184FE2BEA2D84454AD179862FD5E9618A9CE4DFBDC9DD1259056AC
-36C99E4396D82B387D26D0CD3C290E33AE895E7E492ABC9BB6EBEEB6D0D75E12
-CDDBA67D5C17BD9F7F962F0E39D725C2C5EFE217BCF86F8526CF172FE8AEAD02
-A48AE32AD9E63EE640C6FB08E1B5AC6C3875758FFDB7AC571DA6CECB4EAD0C3C
-80BB8F34B727449B0717A0E9CB26BD0550F1BA59AA70F5EECA1AC774C12D1DD0
-E4DE30B288FCCA04374230383ABC61B950E14B5209D4AD6E32E038AB2E22FAA8
-1209829A681E7430F7F8E7C9342284949FC4B944FDE91D9AF29CD6A31666ECCA
-36AC9E997DA92AF7B623703E1ABD8A59451742901683F21BCA15A79D5A5D23F0
-86FB61F81DC1B405535F39431C54E53C16277F145EFE363BCB1EF1471A0B9D24
-E644C8F96B826F2D7697A008BA17705865D9BEBDDE7A8204393BC34086F82352
-DA9C0E4330502B84F33E3F53D7303CA62EF81789FAF1E5F53F2A9E5780C7851E
-6B4A9BDA871188A1AF75BF5D8E1DC2E88FFAE726D4566B66DB9A020410B54162
-28F790576FE59251DF47187846B0D69DECD5844C6FDDE81021D9EAE38CF44040
-574058A2A706E8F21CF1AAC6119CA3CFCA07C8A0E5C436A2C4DB6B51F9C0D9B5
-1B123E6D71E4B26397A9095722D5FAC0DA055456A3B04D1862359CAFEBDD7944
-ABBA0567BB0219DF005AC268D23EF69F2490FC929AB405A887F6401F6705F982
-88D3E883ED94A659F267FEFE257EE6BDD9B261B0209D6B47343FDD562B2E74A6
-B2FCBEEF091C2224D043403C7975686FAC9A89B44E09FDA6D96B895392858BE8
-E2166425C35501A3EFD25DBC5C724AA5B4B7DCA2E0FAFC3EBF4F41DA68B403DB
-3432BB7307556B6DBDB22A610C271BA11EE0B2FF584F6806188B1EBF20535A10
-132FC19333A4696FF2BDE87F46EDCCE72B0797C418DD8ADC2FBADBDFE2DAE374
-473249A1A65597383F7F7A85C048658747DF7AE294279D3B9F3C01D38DF21FED
-539FB266197AF3D6EE8D9743C937F44E31B03718675F19B85E3BA604CDFBE1EA
-888953EFF9CEE3DA56A40C795C0C13185DF2BCD958BC043165B998DC6BA2E088
-9665840B8FD4F10FA616D896E4863532BA3CD7B78FE429D70C13FC5AC40EF399
-555E340D8EDD2478108D798382CE2833106CB5EB2513414B064912B106217E5D
-B59A6B5D6CC073886162799DC2AA421B54AD17E387E996A8EA9B1989DFDD640E
-C84409A9882EE9A901614FC629348618A8A9840CFCFABC20E25BD2AB0CDFCB8D
-10AED1A28EF5813BF43BCAFA2DE59A03678EFAEE38A5A1CB07F3EFD4FC1DA5D6
-C9AE2CC0975926374E1823B0A3426507E0EF1DD8E2BEA64B968CA191A1D5F997
-9BBCC83E20D07311964DE3EFA784E86863E618574B03B740B06F433B1F876D08
-A611B54C2922728CCDE265AA0E0EA4867361C65C6139E4D5FC776AE54DD8158A
-5842478CC1A5F34D17F4830C6C6BDF8872CE2A2925D8D303A93DA22218F6D3C5
-7F4DDF93C2F530A542A9F2A26CA49F7AE51DADE8E7D069582858DABACC202814
-249D8EC2FF53F4D847CE2F87560C9E1F4AF60F9B64E18046A5F75E4E2375F7E1
-7593CF728C3BB9DA9D3855A5567BEC44D9510ACCC7AE16C6A5B3FF543A9F94E6
-606BAB6F087B824B336853A5CC7776ABDFE7101F9B6635B9276D1E5F2EBBB011
-279ED882E1AD9EA838EF929B4840DE697119E6E02FB176E6623BB7B64620B62D
-6D565507B49AFB7BDAFE8CB8D8AD77F01E2C4706D7BF56FEB5E9A41B274853EA
-FBCE362106C6CC4C9A16203F1CC874F603BF841261EDA92474D909804B30F8CA
-07F68A8BA0578E4232E58B38C705806601CE06E7BB0B44AC7CE5BD54B1DB971A
-A1359694CA68A561D9492795B9F5744823B24FFED1B787EDE15888130CA70B47
-77B02C7B177C36565474A99538264A56594B72B71968BB2DF8E5014098F0FCBC
-4112BD4211CE5AABC84D63449D0C33232634F23684D08D2C965AC09C088FEF3A
-9142653BEE405C3643D5A1194076F03C2D66EC8B5B2C8A93E6F255D6D2D4BBCD
-9545AC6F134A19CDB4A2448E389275D751D7FA00E1DDE2147D6FE6DBBD3093C8
-480172A231F5E0AFFFF07480040959A2AC805CD768EDCFFEE26A019ED359B060
-E9E344DDAC7F7A4E8AE4E463FA54A37ACD5CE1C531C7BBF15A9D203BCF64C0FA
-57DDA15326A40066E9071753405C4A69533A8120C39FC8CDCF7C0CEACA98AA52
-AF3810B6DCD1ABE505B9F45AE65E54622FBB10EE876C4EDB8816BC9C78E21181
-E8054CF6C9AB0DD250902EFFAF6416D6DF2AB4D586670720F58DD6EF5A1A4185
-E61FA66E6431FA553D6C8AC0C78FB94F2042C02B5BEE2F96B47C4F7D84973460
-A2D5EC835DE7C1DFB26C716B02E27C0409CFEC11E6F87776976EFDEC184D79F7
-6A4DCB3698BDECE982150072A8F6A243A6C67169A7B4DD06301383F2191F2A32
-2BA5706FF491472EFA11C60EB7D976D328B598119E5443D8C8E689D9929850B4
-479B875433F5A8B4EDAC69DE064D73D3542066752B09E3CD22DFF7F4AF080191
-2FC9DED253D1C605616C07C7A96A446B5EC9C60B29DCEAFC41254EDD45A2BDB5
-3424BC7B1F40AF026045629409C0D4919E77A499977C5725CC4E7AC107F81A0A
-3120EC253D6FFD8F5F0E43878F4B417EE391C6E4240DD78E8717F8AD4B87F65E
-1485539004AFC25E1CFA30712EDF1B63D27F04753C02DD5FD045E9FC53579B4C
-2735783BDCEF0E3D48733B1B4F7DFA0ECF7EA2B5BFDDFAB66BA91A4236C60601
-C32BE7E2A17EF0415FD35C0A80C038FD700A6A459916930C9A5ECB406295CC69
-6D09D5A4677A6878F118E9FB4733977F3B2C7FB80A57E52EC29FF8CC89BDDB1A
-183AB1AD0627E8A2D76A4CF0475E9DE81A2977F9E7DF13DD11362E1A7DEA02B7
-D2FD69B46DF664295E4930517B27ED6A65C017ECE1D189A2EBD913773A1F965F
-7FC0CE03A6F117CE4C4716A5226669483D8252C000C605A3CD0E03A6009E4FEE
-CAC3CD8DCB11393F5D88232051CA854C00D935F318BF740E457BFCBD89B70C96
-D3FCEE4C0309E607CFE57ABA84496EFAF6D05C075B57795AD15C9C6627603459
-7F3C3208BE41E83B3BBF776AB7409F29A5589CB20325B4FD3A7C3EA79C11E47B
-1741522063701F1D5CEA7FA4CA0C7A3CE7190FFECB8EAD8DE7888246D5559083
-E060DC36F4F82C6DB3FF34D52A413B06B74ED712691C8434990E554F57F0AAC3
-ACFEDBEA804D83BA346B98A7AA92ED1B10E7A1530CD934A6CAE218A405CE8B3D
-9755F7827A96954DB1F5447BEF21412334CD103FDACC48AE6866E6B0069BA0BA
-16EE4588FA885307FF64D577280B2EBDDCE85192533BDB36C4F5653EB3B19F5E
-D71F505115D92801CF27F4F3EB1E7B3B18F5757DB08593C614AE300542F87AF4
-D9EF2CD6B955F6860502EC2D64036FBE1F7B18772228BE7612074DCB67D1F45E
-684FE5785BFBED4D86E891585897BB06C9EFF060D5E97F4C37F8367846181825
-3BFEAFBB9FFB24424BEA55E26C937CD4640C122880D03C8BFCC716030E1DD72D
-3E78C647DD020F1C3E7EBD443721310083CD29990E349C44B9BE32B4A7825D0E
-120D28BD708355F76C20DFBD8DE9FE24761B948EED734B37D073BE847357E81C
-8A88FBDFF0AAEF65B52085E84C3936BB44A9F0557E7F801DA90E36EDC4B99597
-D3B2F51AD843AB021D0A9D471306F9AB534F4B1DF9DC3DD03DC82DAEDE4A4F19
-AACCA8C3302261BD558D6CFEC06CFBA970919CFF3EBF49F284B40961C09BFE06
-FB395BCEED75EACB8FB6E73AC87A1B54EDE8CA7A69F88335E95E3AD897156E48
-C84D9A3938164354984FA293DD530F115D2C54DF6E8C91090D0162371DC5FD7D
-3BFA381F661DA4532FB4DD1041FB5FEAD1A37EF0D13E46B7862225D2EB773179
-735D1BB9257BE0E6A5110A090FC6899C246059DB9D4088D4EC0C975D62063C03
-B26C4C83C6003E6CBF6B938930807E4453B4C97806ABDB50D7DEADD7F9E21D16
-9FE1BB10A5EFA12CBD4C69C28D9E4CD157F02F385E42E5363E599EC3E75B6087
-DAEC53889D74BF02FB09CB60DD96A151A59E94085CA2207C5BDBB813AECB6CBE
-5BA9C185C76A805BC785EFB7F54BA4C05CF623C784631C120CE1975347E2BDE4
-C91D733620CC237EC155214E64D27D3C2A5AC53DCEA5A98AAD715825CD7BBCC7
-DAF443C9E3B1712402C0FE9DDAF379617AD5B136B9BFB15F244886D233ABF295
-0ED4385F8D407EAC42E08BF7B1B1B2EAD691B71D42FE34E8FCB662F7
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-cleartomark
-%%EndFont 
-%%BeginFont: CMCSC10
-%!PS-AdobeFont-1.1: CMCSC10 1.0
-%%CreationDate: 1991 Aug 18 17:46:49
-% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
-11 dict begin
-/FontInfo 7 dict dup begin
-/version (1.0) readonly def
-/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def
-/FullName (CMCSC10) readonly def
-/FamilyName (Computer Modern) readonly def
-/Weight (Medium) readonly def
-/ItalicAngle 0 def
-/isFixedPitch false def
-end readonly def
-/FontName /CMCSC10 def
-/PaintType 0 def
-/FontType 1 def
-/FontMatrix [0.001 0 0 0.001 0 0] readonly def
-/Encoding 256 array
-0 1 255 {1 index exch /.notdef put} for
-dup 97 /a put
-dup 99 /c put
-dup 103 /g put
-dup 105 /i put
-dup 110 /n put
-dup 115 /s put
-dup 117 /u put
-readonly def
-/FontBBox{14 -250 1077 750}readonly def
-currentdict end
-currentfile eexec
-D9D66F633B846A97B686A97E45A3D0AA0529731C99A784CCBE85B4993B2EEBDE
-3B12D472B7CF54651EF21185116A69AB1096ED4BAD2F646635E019B6417CC77B
-532F85D811C70D1429A19A5307EF63EB5C5E02C89FC6C20F6D9D89E7D91FE470
-B72BEFDA23F5DF76BE05AF4CE93137A219ED8A04A9D7D6FDF37E6B7FCDE0D90B
-986423E5960A5D9FBB4C956556E8DF90CBFAEC476FA36FD9A5C8175C9AF513FE
-D919C2DDD26BDC0D99398B9F4D03D5993DFC0930297866E1CD0A30EB76029337
-900ECFB1390CA5C0C3A04528044F266BA17BE487C79B94FAC6D6484684C5BFEA
-87BCCC77D40AD11552035E95E3007126418ED49B68468B38A14E88E68A267B98
-076F1C9769A5AFBC285E5B158EAC9F926F1D6C0B8F1D57D9C31D25AE27123518
-9D2CD92E5689E0213089BD268DA5E47525CB8EABAA4B78A15AEA34705889AB3A
-FFB8953B5B3482E52BFA0940630ADF8C0AC2177D907324299EE980E850F203CD
-B627962F43D5A678C44243CDE97853BDC6AB45FD5C09AD274DAF89929F583CC9
-CCC24BDFC68B92111055ABA5F26D2DC67C70906F71C2957701D65AE746A60C30
-40E6CB24B97FCDAD0487AE38A201FBF0E41BABD2181981A71940F1E707F91E5D
-C8CA50CB16D8702D188E56D014D92F76CE0B52ABDB9110E32438D2BBF3E6A40B
-7B005F10BB437812CAC6ED2996F7606DC962C4FDE207FF322782C343DF44CEC5
-FF06A55C630C20E9AE1B0D1C5673753C43BA0767D65D1B451CC6380D8BB3C4DC
-81E8FD8AA79BE993218686F29D3CD925566DD587F541A0DA1B1CC3BCEA2E6C7D
-5E1016F6917A871F1BBAD96AF9E867735017119A381FCF33EB2D3E1E7093FD90
-CDB0CED4818CFD9E201A03430CEC713620BE0D3254158931FB657C6877C1B3D2
-24030F377820DA58F4B95CFE645109F3F1B80DB5FACFD7D05AE2909EEFCF95AD
-9CB286C8B6C075CA2267C101B736139863186C193E31085E7C9FD88EF8BBECE3
-933542C85309013325B4BBFE9A5B606780C8580ABDA2F5D0064EBFC23939B307
-08568C3B7F5F053BF367DEBA349FABB9F760C44D100BDEEFBB01F27BFC61F51B
-C968C721E78497A7A3B90094FE11EEEC89D0D9E7AEB35D9A3FAC51F826300BB5
-84A4038A08FE7DEBA3FFED05C494AE0962114E9A90CBB87B40B7B669DEEF7D48
-6F0F21217F9911A842CF3882BC64670E58182A5D59B72EF73F62651CA3428BE8
-9389C4D4A3C77C7EE2DFFA8DE35FF4FE4609914E42CBED28EA59AB9A5A049F52
-8C30FC6673FA3B3F19FBC6A6CEB3D8ACF6B1427E9561C0EF108BB29CAC53BA6F
-6102D4A599510D1DDE1D104812EE52010BED1DEFF3419DD223A26CB1A2B7260D
-04989B2E8D900A82493EB68B883F32886BCCA8BFA961ADE4DE46F1CDAF2DEDF2
-4DF21403151EB890326BF9771B5491E45091877E550E3DEDBD5C97ECC6AC49A5
-522221DDE68940109257A1E6932F5514EBD5CDA3847B8EBCDB50D2987188FAB9
-F2F96B107B8307826A541B49B178189A17F7D8607F39FDE8A03D350A324DC684
-58DF63F288B4907F450060824D764D51EE69FE0D31053E37E031F03A1C58DAB0
-69A79DCD03DBE5DF2086BCF558F7B68158CB3E2F59E313FDADB26B81EF589991
-0F4C54D7F2209F812A27A75F586A62E59938C226368EA6F4C71A8C1EBE4FB084
-8EFE3E4672FB73DD50303970BF520125F49CA280D88E941C08FCD32A93EDA3C5
-70BA7A9CA5B4759BB64975E6F81F17033A85EEE16C34F48CB7DF5ED1195C7943
-7D38D99D7DDAB8D15C68BF7DB3712CBD9846C5C72B435DF91A90ECF37E33A10F
-0C26ADBEE029FA2BD8ED27E3E4A8E76F8CD37EA0A65C16BBD2E7463F474DC9F6
-EBE92536B35598474B8FBB13CDB101DCBD04BC1295DD80369DE583BB6151E830
-21723CD7B5581BFD1631A8B8A7E69D06D4008D30EC7685426D614375B3F7CAD7
-F638ACB0E889EA91AC865BF31246CD8FC4CB99D64D6559637E1CA4FD935BF954
-90A3D8EAE892A1FDC20384CEB773242EEAC281ACF9907CC69B04D3DC36A2F8C2
-E6B26E6435B650A7843192E42687C1464252828830DBE7268BA089A131CA8F3F
-CE1DB3B2309DA9764430E6013F59EF83AA83C4F335DA40280BD758F8F174882E
-DA4F86EFAD370A8FCEE9BAC93C40745F78BCE1A0F82A3AC4AB93C589D48EA9C9
-60C030BE2C81689CA3964746154DA78A260693CFE0A3673D61EDD2D89DBB471E
-2F2D730EB1ECC9F3FE5474CA0AA70F13003A6F6311AA396EA0707A2F799724CD
-6172B351BA7A8A79BE939E5CBBAFFD704AF6B489C3CB7546924F72B02651D74B
-83157155412798FDC5A1F0A8FAF5B477F2A631AFB3905FF4B600898594AE2A06
-12F833A915CB69DE6BB34698E416989B4FE55486BEA50ACAA9F913648A1C4AA0
-1115E2B254E8F29AF44110929D979C357A0034BA64B9174230D5AFAF270E86EC
-91452CD3CF7DCA0A1813E9966B3F98373F28765754AC2E16BBC64F0B889E5CD8
-CB522EEF25E3E76739C20E3E767DA51276469AAEE0A11A92FD254CDC90B09175
-0C480A56C1479FD15F91B39F848F2B77786295A7276E76F7EAFE1019328DE9AB
-C3A69A104D37039F98CB3042A8F53847B97E1D2BB76EBFC6241E5903D55FEB17
-436374CB85B27E2617EA745171C9F1D2A3A890490004B38F5BFEDA0B0883594A
-464E46788B8A86E19904F108FD902E7B032F496E86B7F210E3CAD335CF4517C5
-69558F3C3593F3BA0D235CD5B7DDD0BA909EA6C635DB553D5AC1AF351111A37E
-504A6652E21ECB309BD4B641D2470F2E0D03F7F34959C983FBCBCE64CDECECB2
-EF43850D1BED843DA6DD2B1A9282F88FEC210949B3B5737308EE15A6B6148697
-2A5F77FAA39B8141929A40F68D84C8297501C2DF95230F2C167BFC8708152387
-AAE0C24A1D9351
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-cleartomark
-%%EndFont 
-%%BeginFont: CMMI10
-%!PS-AdobeFont-1.1: CMMI10 1.100
-%%CreationDate: 1996 Jul 23 07:53:57
-% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
-11 dict begin
-/FontInfo 7 dict dup begin
-/version (1.100) readonly def
-/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def
-/FullName (CMMI10) readonly def
-/FamilyName (Computer Modern) readonly def
-/Weight (Medium) readonly def
-/ItalicAngle -14.04 def
-/isFixedPitch false def
-end readonly def
-/FontName /CMMI10 def
-/PaintType 0 def
-/FontType 1 def
-/FontMatrix [0.001 0 0 0.001 0 0] readonly def
-/Encoding 256 array
-0 1 255 {1 index exch /.notdef put} for
-dup 58 /period put
-readonly def
-/FontBBox{-32 -250 1048 750}readonly def
-currentdict end
-currentfile eexec
-D9D66F633B846A97B686A97E45A3D0AA0529731C99A784CCBE85B4993B2EEBDE
-3B12D472B7CF54651EF21185116A69AB1096ED4BAD2F646635E019B6417CC77B
-532F85D811C70D1429A19A5307EF63EB5C5E02C89FC6C20F6D9D89E7D91FE470
-B72BEFDA23F5DF76BE05AF4CE93137A219ED8A04A9D7D6FDF37E6B7FCDE0D90B
-986423E5960A5D9FBB4C956556E8DF90CBFAEC476FA36FD9A5C8175C9AF513FE
-D919C2DDD26BDC0D99398B9F4D03D5993DFC0930297866E1CD0A319B6B1FD958
-9E394A533A081C36D456A09920001A3D2199583EB9B84B4DEE08E3D12939E321
-990CD249827D9648574955F61BAAA11263A91B6C3D47A5190165B0C25ABF6D3E
-6EC187E4B05182126BB0D0323D943170B795255260F9FD25F2248D04F45DFBFB
-DEF7FF8B19BFEF637B210018AE02572B389B3F76282BEB29CC301905D388C721
-59616893E774413F48DE0B408BC66DCE3FE17CB9F84D205839D58014D6A88823
-D9320AE93AF96D97A02C4D5A2BB2B8C7925C4578003959C46E3CE1A2F0EAC4BF
-8B9B325E46435BDE60BC54D72BC8ACB5C0A34413AC87045DC7B84646A324B808
-6FD8E34217213E131C3B1510415CE45420688ED9C1D27890EC68BD7C1235FAF9
-1DAB3A369DD2FC3BE5CF9655C7B7EDA7361D7E05E5831B6B8E2EEC542A7B38EE
-03BE4BAC6079D038ACB3C7C916279764547C2D51976BABA94BA9866D79F13909
-95AA39B0F03103A07CBDF441B8C5669F729020AF284B7FF52A29C6255FCAACF1
-74109050FBA2602E72593FBCBFC26E726EE4AEF97B7632BC4F5F353B5C67FED2
-3EA752A4A57B8F7FEFF1D7341D895F0A3A0BE1D8E3391970457A967EFF84F6D8
-47750B1145B8CC5BD96EE7AA99DDC9E06939E383BDA41175233D58AD263EBF19
-AFC0E2F840512D321166547B306C592B8A01E1FA2564B9A26DAC14256414E4C8
-42616728D918C74D13C349F4186EC7B9708B86467425A6FDB3A396562F7EE4D8
-40B43621744CF8A23A6E532649B66C2A0002DD04F8F39618E4F572819DD34837
-B5A08E643FDCA1505AF6A1FA3DDFD1FA758013CAED8ACDDBBB334D664DFF5B53
-9560176676ABB71BBD0EE56B4CC492C0652750227CEC6CBEEE374709231B00CD
-0DE83AFDE295B314F6C8B1FFD32251C1925D96A64D739FF1DA4926460B28B3DE
-E949AA0BA3DDB16534FBA30C32092D5F712B5E8C8D5142F35AF2906E6C219D2C
-7FD9A368C193E0EB9C7E25FF03C546B6ED993F964CEDB1B8537C617170787F37
-88D6F2AD02384B01067FE3F98257BAB958BB3BCD1001090A4502DA0638080EC6
-DB784CC8AC37CDC01B29BC481D6A05ADC6188785262358C1BF1D694BBF31C1F1
-AF117C1ACED44AAC6EB4B9A2511A6762DDE8FCCBA5
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-cleartomark
-%%EndFont 
-%%BeginFont: CMMI12
-%!PS-AdobeFont-1.1: CMMI12 1.100
-%%CreationDate: 1996 Jul 27 08:57:55
-% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
-11 dict begin
-/FontInfo 7 dict dup begin
-/version (1.100) readonly def
-/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def
-/FullName (CMMI12) readonly def
-/FamilyName (Computer Modern) readonly def
-/Weight (Medium) readonly def
-/ItalicAngle -14.04 def
-/isFixedPitch false def
-end readonly def
-/FontName /CMMI12 def
-/PaintType 0 def
-/FontType 1 def
-/FontMatrix [0.001 0 0 0.001 0 0] readonly def
-/Encoding 256 array
-0 1 255 {1 index exch /.notdef put} for
-dup 58 /period put
-readonly def
-/FontBBox{-30 -250 1026 750}readonly def
-currentdict end
-currentfile eexec
-D9D66F633B846A97B686A97E45A3D0AA0529731C99A784CCBE85B4993B2EEBDE
-3B12D472B7CF54651EF21185116A69AB1096ED4BAD2F646635E019B6417CC77B
-532F85D811C70D1429A19A5307EF63EB5C5E02C89FC6C20F6D9D89E7D91FE470
-B72BEFDA23F5DF76BE05AF4CE93137A219ED8A04A9D7D6FDF37E6B7FCDE0D90B
-986423E5960A5D9FBB4C956556E8DF90CBFAEC476FA36FD9A5C8175C9AF513FE
-D919C2DDD26BDC0D99398B9F4D03D6A8F05B47AF95EF28A9C561DBDC98C47CF5
-5250011D19E9366EB6FD153D3A100CAA6212E3D5D93990737F8D326D347B7EDC
-4391C9DF440285B8FC159D0E98D4258FC57892DCC57F7903449E07914FBE9E67
-3C15C2153C061EB541F66C11E7EE77D5D77C0B11E1AC55101DA976CCACAB6993
-EED1406FBB7FF30EAC9E90B90B2AF4EC7C273CA32F11A5C1426FF641B4A2FB2F
-4E68635C93DB835737567FAF8471CBC05078DCD4E40E25A2F4E5AF46C234CF59
-2A1CE8F39E1BA1B2A594355637E474167EAD4D97D51AF0A899B44387E1FD933A
-323AFDA6BA740534A510B4705C0A15647AFBF3E53A82BF320DD96753639BE49C
-2F79A1988863EF977B800C9DB5B42039C23EB86953713F730E03EA22FF7BB2C1
-D97D33FD77B1BDCC2A60B12CF7805CFC90C5B914C0F30A673DF9587F93E47CEA
-5932DD1930560C4F0D97547BCD805D6D854455B13A4D7382A22F562D7C55041F
-0FD294BDAA1834820F894265A667E5C97D95FF152531EF97258F56374502865D
-A1E7C0C5FB7C6FB7D3C43FEB3431095A59FBF6F61CEC6D6DEE09F4EB0FD70D77
-2A8B0A4984C6120293F6B947944BE23259F6EB64303D627353163B6505FC8A60
-00681F7A3968B6CBB49E0420A691258F5E7B07B417157803FCBE9B9FB1F80FD8
-CA0DA1186446DD565542BCCC7D339A1EB34C7F49246E8D72E987EB477C6DB757
-99AF86CEBCD7605C487A00CD2CD093098182DC57B20D78ECE0BECF3A0BF88EBA
-C866DB19F34BBBED6634AFC0F08D2AFB2A92578A6F8B4ADCD6594737FF6EED7D
-5B536DA9E3E2CADB40DB7C600EA4D100D33C3B92B1CF857E012C4EB370BA8295
-55B50047CC8911C98FE1A7BA6CDEA82D34476286E710776823690AD333DD3A49
-335002F4680DBE1C21174BF016B0DF799B01EB9D6988479A8334BBA2F8DC7146
-BC0DAE9DE3A6453B181808E68A89E0C02DAC6264D002B422EBC1CF14F65D9888
-15EE6D514D3457F7F3C6A3D17EE1DA076F73ECC392D349174DA9E4680F29CE10
-0157E42CA35F5DBFF56BFC3AA07E61A78DBE882C5AB388220C19750D3643E7C8
-23D6673027CE568A4ACCE1D12B1D9E5A43507F4AF9BC873237F65A6B95078DD2
-378007CF0F0DE7CCEF760E19D6D1D7B412EC5D4972
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-cleartomark
-%%EndFont 
-%%BeginFont: CMSY10
-%!PS-AdobeFont-1.1: CMSY10 1.0
-%%CreationDate: 1991 Aug 15 07:20:57
-% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
-11 dict begin
-/FontInfo 7 dict dup begin
-/version (1.0) readonly def
-/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def
-/FullName (CMSY10) readonly def
-/FamilyName (Computer Modern) readonly def
-/Weight (Medium) readonly def
-/ItalicAngle -14.035 def
-/isFixedPitch false def
-end readonly def
-/FontName /CMSY10 def
-/PaintType 0 def
-/FontType 1 def
-/FontMatrix [0.001 0 0 0.001 0 0] readonly def
-/Encoding 256 array
-0 1 255 {1 index exch /.notdef put} for
-dup 13 /circlecopyrt put
-readonly def
-/FontBBox{-29 -960 1116 775}readonly def
-currentdict end
-currentfile eexec
-D9D66F633B846A97B686A97E45A3D0AA052F09F9C8ADE9D907C058B87E9B6964
-7D53359E51216774A4EAA1E2B58EC3176BD1184A633B951372B4198D4E8C5EF4
-A213ACB58AA0A658908035BF2ED8531779838A960DFE2B27EA49C37156989C85
-E21B3ABF72E39A89232CD9F4237FC80C9E64E8425AA3BEF7DED60B122A52922A
-221A37D9A807DD01161779DDE7D31FF2B87F97C73D63EECDDA4C49501773468A
-27D1663E0B62F461F6E40A5D6676D1D12B51E641C1D4E8E2771864FC104F8CBF
-5B78EC1D88228725F1C453A678F58A7E1B7BD7CA700717D288EB8DA1F57C4F09
-0ABF1D42C5DDD0C384C7E22F8F8047BE1D4C1CC8E33368FB1AC82B4E96146730
-DE3302B2E6B819CB6AE455B1AF3187FFE8071AA57EF8A6616B9CB7941D44EC7A
-71A7BB3DF755178D7D2E4BB69859EFA4BBC30BD6BB1531133FD4D9438FF99F09
-4ECC068A324D75B5F696B8688EEB2F17E5ED34CCD6D047A4E3806D000C199D7C
-515DB70A8D4F6146FE068DC1E5DE8BC5703711DA090312BA3FC00A08C453C609
-C627A8BFEF75B4DEFAF34B44B356A516B765AFCDD3F5475B1F928731D09D2170
-B97E40F12CCEDF4F6BB3756C4734F6E98D74B7E942A954B1BAAB83D4AD727FF6
-DF6DC50B2223BCB5568A73A112E4860AD490554E64E780073FF3399CB4688D33
-9E8829667CD6EAEF25E0C7D2D44F2BBFA40E999325F9561514844221B50BC8FC
-4C7AD68CA7220D69125C2AF06849A3E068D18733276F0C0A6A2936D3C2C87CDE
-59CD1AF148C44F85784A5DAD569F5FF53C061056C067CE29AEF1E3BD1FD8B0B8
-71A0A638CDAC6AEEDBD5337D4683C084BB60B1859E600F59CB4E19C5FC5C6327
-EC544A68134496A9BD0B87D83AF6FDA3CB62FBF0B54FACE1F0E6A2D84B467AFF
-0F62DB
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-cleartomark
-%%EndFont 
-TeXDict begin 39139632 55387786 1000 300 300 (history.dvi)
-@start /Fa 197[11 58[{}1 37.3599 /CMMI9 rf /Fb 134[20
-20 1[20 1[15 15 15 1[21 19 21 4[11 21 19 1[17 21 17 1[19
-13[21 10[29 14[19 19 19 19 19 3[19 49[{}24 37.3599 /CMR9
-rf /Fc 134[20 3[20 20 20 20 2[20 20 20 20 2[20 20 2[20
-3[20 97[{}13 37.3599 /CMSLTT10 rf /Fd 167[31 3[30 23
-2[28 1[31 38 26 1[21 1[31 33 27 1[32 30 67[{}13 41.511
-/CMR10 rf /Fe 130[20 20 20 20 20 20 20 20 20 20 20 20
-20 20 20 20 20 20 20 1[20 20 20 20 20 20 20 20 20 20
-20 1[20 20 20 1[20 2[20 20 20 20 20 1[20 1[20 1[20 2[20
-20 20 20 20 20 20 20 20 2[20 20 20 20 20 3[20 1[20 20
-20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
-33[{}77 37.3599 /CMTT9 rf /Ff 214[18 18 40[{}2 45.4545
-/CMSS10 rf /Fg 133[26 26 26 26 26 26 26 26 26 26 26 26
-26 26 26 26 1[26 26 26 26 26 26 26 26 26 1[26 5[26 4[26
-26 26 2[26 26 4[26 26 2[26 3[26 22[26 42[{}37 49.8132
-/CMTT10 rf /Fh 134[24 24 24 1[24 24 24 24 2[24 24 1[24
-2[24 1[24 24 24 24 49[24 24 49[{}17 45.4545 /CMSLTT10
-rf /Fi 133[27 32 32 1[32 34 24 24 25 1[34 31 34 51 17
-2[17 34 31 19 28 34 27 34 30 9[63 3[34 5[58 37 2[23 48
-1[39 40 47 2[46 9[31 31 31 31 31 31 31 2[17 33[34 12[{}41
-54.5455 /CMBX12 rf /Fj 134[24 24 33 24 25 18 18 18 24
-25 23 25 38 13 2[13 25 23 14 20 25 20 1[23 3[13 1[13
-1[34 4[33 25 33 2[35 34 4[16 34 2[31 3[34 14[23 23 4[13
-1[23 29[25 27 11[{}40 45.4545 /CMSL10 rf /Fk 138[28 1[21
-4[28 4[14 1[29 3[27 1[28 97[{}7 45.4545 /CMCSC10 rf /Fl
-197[13 58[{}1 45.4545 /CMMI10 rf /Fm 197[16 58[{}1 59.7758
-/CMMI12 rf /Fn 134[43 43 58 43 45 31 32 33 1[45 40 45
-67 22 2[22 45 40 25 37 45 36 45 39 10[61 62 56 3[55 1[63
-1[48 2[30 63 63 51 1[62 58 57 61 14[40 40 49[{}38 71.731
-/CMBX12 rf /Fo 242[45 13[{}1 45.4545 /CMSY10 rf /Fp 134[35
-35 49 35 37 26 27 27 1[37 34 37 56 19 2[19 37 34 21 31
-37 30 37 33 9[69 51 52 1[37 50 1[46 1[53 64 40 2[25 53
-53 42 44 52 49 48 51 6[19 4[34 34 34 34 34 34 1[19 1[19
-44[{}49 59.7758 /CMBX12 rf /Fq 129[24 24 24 24 24 24
-1[24 24 24 24 24 24 1[24 24 24 24 24 24 1[24 24 24 24
-24 24 24 24 24 1[24 24 24 24 24 1[24 3[24 24 24 24 1[24
-24 24 1[24 2[24 24 24 24 24 24 2[24 1[24 24 24 24 24
-24 7[24 24 24 24 24 24 1[24 24 24 24 1[24 24 24 24 24
-24 33[{}70 45.4545 /CMTT10 rf /Fr 131[45 23 20 24 24
-33 24 25 18 18 18 24 25 23 25 38 13 24 14 13 25 23 14
-20 25 20 25 23 13 2[13 23 13 28 34 34 47 34 34 33 25
-33 35 31 35 34 42 28 35 23 16 34 36 30 31 35 33 32 34
-5[13 13 23 23 23 23 23 23 23 23 23 23 23 13 15 13 2[18
-18 13 4[23 19[38 25 25 27 11[{}82 45.4545 /CMR10 rf /Fs
-134[51 4[38 38 40 2[48 5[27 6[54 47 11[74 6[76 1[58 3[76
-76 71[{}13 86.0772 /CMBX12 rf end
-%%EndProlog
-%%BeginSetup
-%%Feature: *Resolution 300dpi
-TeXDict begin
-%%PaperSize: A4
- end
-%%EndSetup
-%%Page: 1 1
-TeXDict begin 1 0 bop 75 659 a Fs(GNU)33 b(History)e(Library)p
-75 709 1800 17 v 960 757 a Fr(Edition)14 b(6.2,)g(for)h
-Fq(History)f(Library)g Fr(V)l(ersion)h(6.2.)1559 811
-y(Septem)o(b)q(er)h(2010)75 2467 y Fp(Chet)22 b(Ramey)-6
-b(,)23 b(Case)e(W)-6 b(estern)23 b(Reserv)n(e)f(Univ)n(ersit)n(y)75
-2534 y(Brian)g(F)-6 b(o)n(x,)23 b(F)-6 b(ree)23 b(Soft)n(w)n(are)f(F)-6
-b(oundation)p 75 2570 1800 9 v eop end
-%%Page: 2 2
-TeXDict begin 2 1 bop 75 1512 a Fr(This)16 b(do)q(cumen)o(t)g(describ)q
-(es)g(the)g(GNU)g(History)f(library)f(\(v)o(ersion)h(6.2,)g(Septem)o(b)
-q(er)i(6)e(2010\),)f(a)i(pro-)75 1567 y(gramming)10 b(to)q(ol)g(that)g
-(pro)o(vides)h(a)g(consisten)o(t)f(user)i(in)o(terface)e(for)h
-(recalling)f(lines)g(of)h(previously)g(t)o(yp)q(ed)75
-1621 y(input.)75 1689 y(Cop)o(yrigh)o(t)301 1688 y(c)289
-1689 y Fo(\015)k Fr(1988{2011)e(F)l(ree)i(Soft)o(w)o(are)f(F)l
-(oundation,)g(Inc.)75 1756 y(P)o(ermission)h(is)g(gran)o(ted)h(to)f
-(mak)o(e)h(and)g(distribute)g(v)o(erbatim)e(copies)i(of)g(this)g(man)o
-(ual)f(pro)o(vided)h(the)75 1811 y(cop)o(yrigh)o(t)e(notice)h(and)g
-(this)g(p)q(ermission)f(notice)h(are)g(preserv)o(ed)h(on)f(all)f
-(copies.)195 1878 y(P)o(ermission)i(is)h(gran)o(ted)g(to)g(cop)o(y)l(,)
-h(distribute)f(and/or)g(mo)q(dify)g(this)g(do)q(cumen)o(t)h(under)195
-1933 y(the)h(terms)f(of)h(the)g(GNU)g(F)l(ree)g(Do)q(cumen)o(tation)f
-(License,)i(V)l(ersion)f(1.3)f(or)g(an)o(y)h(later)195
-1988 y(v)o(ersion)13 b(published)h(b)o(y)g(the)g(F)l(ree)f(Soft)o(w)o
-(are)g(F)l(oundation;)g(with)g(no)g(In)o(v)m(arian)o(t)h(Sections,)195
-2042 y(with)h(the)g(F)l(ron)o(t-Co)o(v)o(er)e(texts)i(b)q(eing)h(\\A)f
-(GNU)g(Man)o(ual",)f(and)h(with)g(the)g(Bac)o(k-Co)o(v)o(er)195
-2097 y(T)l(exts)h(as)g(in)g(\(a\))f(b)q(elo)o(w.)23 b(A)16
-b(cop)o(y)g(of)g(the)g(license)g(is)g(included)h(in)f(the)g(section)g
-(en)o(titled)195 2152 y(\\GNU)f(F)l(ree)g(Do)q(cumen)o(tation)f
-(License".)195 2219 y(\(a\))g(The)h(FSF's)g(Bac)o(k-Co)o(v)o(er)f(T)l
-(ext)h(is:)k(Y)l(ou)c(are)g(free)g(to)g(cop)o(y)g(and)g(mo)q(dify)g
-(this)f(GNU)195 2274 y(man)o(ual.)19 b(Buying)c(copies)g(from)f(GNU)h
-(Press)g(supp)q(orts)g(the)g(FSF)g(in)g(dev)o(eloping)f(GNU)195
-2329 y(and)h(promoting)f(soft)o(w)o(are)g(freedom.")75
-2451 y(Published)h(b)o(y)h(the)f(F)l(ree)g(Soft)o(w)o(are)f(F)l
-(oundation)75 2506 y(59)h(T)l(emple)g(Place,)f(Suite)i(330,)75
-2560 y(Boston,)e(MA)h(02111-1307)75 2615 y(USA)p eop
-end
-%%Page: -1 3
-TeXDict begin -1 2 bop 1862 -58 a Fr(i)75 149 y Fn(T)-7
-b(able)28 b(of)e(Con)n(ten)n(ts)75 320 y Fp(1)67 b(Using)21
-b(History)h(In)n(teractiv)n(ely)12 b Fm(:)f(:)g(:)f(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)35 b Fp(1)137
-389 y Fr(1.1)45 b(History)14 b(Expansion)f Fl(:)7 b(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)h(:)27 b Fr(1)200 444 y(1.1.1)43 b(Ev)o(en)o(t)15
-b(Designators)8 b Fl(:)d(:)j(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)22 b Fr(1)200
-499 y(1.1.2)43 b(W)l(ord)15 b(Designators)c Fl(:)6 b(:)h(:)g(:)h(:)f(:)
-g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)
-25 b Fr(2)200 553 y(1.1.3)43 b(Mo)q(di\014ers)6 b Fl(:)h(:)g(:)h(:)f(:)
-g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)20 b Fr(2)75
-675 y Fp(2)67 b(Programming)22 b(with)g(GNU)g(History)16
-b Fm(:)10 b(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)h(:)f(:)39
-b Fp(4)137 743 y Fr(2.1)45 b(In)o(tro)q(duction)15 b(to)f(History)5
-b Fl(:)h(:)h(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)h(:)f(:)g(:)19 b Fr(4)137 798 y(2.2)45
-b(History)14 b(Storage)d Fl(:)c(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)26 b Fr(4)137 853 y(2.3)45 b(History)14 b(F)l(unctions)c
-Fl(:)d(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)24 b Fr(5)200
-907 y(2.3.1)43 b(Initializing)14 b(History)g(and)h(State)g(Managemen)o
-(t)5 b Fl(:)i(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)h(:)19 b Fr(5)200 962 y(2.3.2)43 b(History)14 b(List)h(Managemen)o
-(t)5 b Fl(:)i(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)20 b Fr(5)200 1017 y(2.3.3)43 b(Information)15 b(Ab)q(out)g(the)g
-(History)f(List)7 b Fl(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)21 b Fr(6)200
-1072 y(2.3.4)43 b(Mo)o(ving)14 b(Around)i(the)f(History)f(List)8
-b Fl(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)22 b Fr(6)200
-1127 y(2.3.5)43 b(Searc)o(hing)15 b(the)h(History)e(List)9
-b Fl(:)d(:)h(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)23
-b Fr(7)200 1181 y(2.3.6)43 b(Managing)14 b(the)i(History)e(File)7
-b Fl(:)f(:)h(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)21
-b Fr(7)200 1236 y(2.3.7)43 b(History)14 b(Expansion)5
-b Fl(:)i(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)h(:)f(:)g(:)19 b Fr(8)137 1291 y(2.4)45
-b(History)14 b(V)l(ariables)5 b Fl(:)i(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)h(:)19 b Fr(8)137 1346 y(2.5)45 b(History)14 b(Programming)f
-(Example)7 b Fl(:)f(:)i(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)
-21 b Fr(10)75 1467 y Fp(App)r(endix)i(A)80 b(GNU)22 b(F)-6
-b(ree)23 b(Do)r(cumen)n(tation)e(License)223 1533 y Fm(:)10
-b(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)37 b
-Fp(12)75 1668 y(App)r(endix)23 b(B)83 b(Concept)22 b(Index)12
-b Fm(:)f(:)g(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)35 b Fp(20)75 1803 y(App)r(endix)23 b(C)82
-b(F)-6 b(unction)24 b(and)f(V)-6 b(ariable)22 b(Index)17
-b Fm(:)11 b(:)f(:)g(:)40 b Fp(21)p eop end
-%%Page: 1 4
-TeXDict begin 1 3 bop 75 -58 a Fr(Chapter)15 b(1:)k(Using)c(History)f
-(In)o(teractiv)o(ely)1005 b(1)75 149 y Fn(1)41 b(Using)27
-b(History)h(In)n(teractiv)n(ely)75 276 y Fr(This)21 b(c)o(hapter)g
-(describ)q(es)h(ho)o(w)f(to)f(use)i(the)f Fk(gnu)g Fr(History)f
-(Library)h(in)o(teractiv)o(ely)l(,)g(from)f(a)h(user's)75
-330 y(standp)q(oin)o(t.)37 b(It)21 b(should)g(b)q(e)h(considered)f(a)g
-(user's)g(guide.)37 b(F)l(or)21 b(information)e(on)i(using)g(the)g
-Fk(gnu)75 385 y Fr(History)16 b(Library)h(in)h(y)o(our)f(o)o(wn)g
-(programs,)f(see)i(Chapter)f(2)h([Programming)d(with)i(GNU)g(History],)
-75 440 y(page)e(4.)75 561 y Fp(1.1)33 b(History)21 b(Expansion)75
-640 y Fr(The)i(History)e(library)h(pro)o(vides)g(a)g(history)g
-(expansion)g(feature)g(that)g(is)h(similar)d(to)i(the)h(history)75
-695 y(expansion)f(pro)o(vided)h(b)o(y)f Fq(csh)p Fr(.)41
-b(This)22 b(section)g(describ)q(es)h(the)g(syn)o(tax)e(used)i(to)f
-(manipulate)g(the)75 750 y(history)14 b(information.)137
-820 y(History)g(expansions)h(in)o(tro)q(duce)h(w)o(ords)e(from)g(the)i
-(history)e(list)g(in)o(to)g(the)i(input)f(stream,)f(making)75
-875 y(it)g(easy)h(to)g(rep)q(eat)g(commands,)g(insert)g(the)g(argumen)o
-(ts)f(to)h(a)g(previous)g(command)g(in)o(to)f(the)h(curren)o(t)75
-930 y(input)g(line,)g(or)f(\014x)i(errors)e(in)h(previous)g(commands)g
-(quic)o(kly)l(.)137 1000 y(History)i(expansion)i(tak)o(es)e(place)h(in)
-h(t)o(w)o(o)e(parts.)28 b(The)19 b(\014rst)f(is)f(to)h(determine)h
-(whic)o(h)f(line)g(from)75 1055 y(the)j(history)e(list)h(should)h(b)q
-(e)g(used)g(during)g(substitution.)35 b(The)21 b(second)g(is)f(to)g
-(select)h(p)q(ortions)e(of)75 1110 y(that)c(line)g(for)f(inclusion)h
-(in)o(to)f(the)i(curren)o(t)f(one.)20 b(The)c(line)e(selected)i(from)f
-(the)g(history)f(is)h(called)g(the)75 1164 y Fj(ev)o(en)o(t)p
-Fr(,)e(and)h(the)g(p)q(ortions)f(of)g(that)g(line)g(that)g(are)g(acted)
-h(up)q(on)g(are)f(called)h Fj(w)o(ords)p Fr(.)k(V)l(arious)13
-b Fj(mo)q(di\014ers)75 1219 y Fr(are)j(a)o(v)m(ailable)f(to)h
-(manipulate)g(the)g(selected)h(w)o(ords.)23 b(The)17
-b(line)f(is)g(brok)o(en)g(in)o(to)g(w)o(ords)f(in)i(the)f(same)75
-1274 y(fashion)11 b(that)f(Bash)i(do)q(es,)g(so)f(that)g(sev)o(eral)f
-(w)o(ords)h(surrounded)h(b)o(y)f(quotes)h(are)f(considered)g(one)h(w)o
-(ord.)75 1329 y(History)17 b(expansions)h(are)h(in)o(tro)q(duced)f(b)o
-(y)g(the)h(app)q(earance)g(of)f(the)g(history)g(expansion)g(c)o
-(haracter,)75 1384 y(whic)o(h)d(is)g(`)p Fq(!)p Fr(')f(b)o(y)h
-(default.)75 1486 y Fi(1.1.1)30 b(Ev)n(en)n(t)21 b(Designators)75
-1560 y Fr(An)c(ev)o(en)o(t)f(designator)f(is)h(a)g(reference)h(to)f(a)g
-(command)g(line)g(en)o(try)g(in)g(the)h(history)e(list.)23
-b(Unless)16 b(the)75 1614 y(reference)g(is)f(absolute,)f(ev)o(en)o(ts)h
-(are)g(relativ)o(e)e(to)i(the)g(curren)o(t)g(p)q(osition)f(in)h(the)h
-(history)e(list.)75 1699 y Fq(!)216 b Fr(Start)16 b(a)g(history)g
-(substitution,)f(except)j(when)f(follo)o(w)o(ed)e(b)o(y)h(a)h(space,)g
-(tab,)f(the)h(end)g(of)315 1753 y(the)e(line,)g(or)f(`)p
-Fq(=)p Fr('.)75 1836 y Fq(!)p Fh(n)192 b Fr(Refer)16
-b(to)e(command)h(line)g Fj(n)p Fr(.)75 1919 y Fq(!-)p
-Fh(n)168 b Fr(Refer)16 b(to)e(the)i(command)f Fj(n)g
-Fr(lines)g(bac)o(k.)75 2002 y Fq(!!)192 b Fr(Refer)16
-b(to)e(the)i(previous)e(command.)20 b(This)15 b(is)g(a)g(synon)o(ym)g
-(for)f(`)p Fq(!-1)p Fr('.)75 2084 y Fq(!)p Fh(string)72
-b Fr(Refer)13 b(to)f(the)h(most)e(recen)o(t)i(command)f(preceding)h
-(the)g(curren)o(t)f(p)q(osition)g(in)g(the)h(history)315
-2139 y(list)h(starting)g(with)g Fj(string)t Fr(.)75 2222
-y Fq(!?)p Fh(string)5 b Fq([?])315 2277 y Fr(Refer)13
-b(to)f(the)h(most)e(recen)o(t)i(command)f(preceding)h(the)g(curren)o(t)
-f(p)q(osition)g(in)g(the)h(history)315 2331 y(list)h(con)o(taining)h
-Fj(string)t Fr(.)20 b(The)c(trailing)e(`)p Fq(?)p Fr(')g(ma)o(y)h(b)q
-(e)h(omitted)f(if)g(the)h Fj(string)i Fr(is)e(follo)o(w)o(ed)315
-2386 y(immediately)e(b)o(y)h(a)g(newline.)75 2469 y Fq(^)p
-Fh(string1)5 b Fq(^)p Fh(string2)g Fq(^)315 2524 y Fr(Quic)o(k)16
-b(Substitution.)k(Rep)q(eat)c(the)g(last)e(command,)h(replacing)g
-Fj(string1)j Fr(with)d Fj(string2)t Fr(.)315 2578 y(Equiv)m(alen)o(t)g
-(to)f Fq(!!:s/)p Fh(string1)5 b Fq(/)p Fh(string2)g Fq(/)p
-Fr(.)75 2661 y Fq(!#)192 b Fr(The)15 b(en)o(tire)g(command)g(line)g(t)o
-(yp)q(ed)h(so)e(far.)p eop end
-%%Page: 2 5
-TeXDict begin 2 4 bop 75 -58 a Fr(Chapter)15 b(1:)k(Using)c(History)f
-(In)o(teractiv)o(ely)1005 b(2)75 149 y Fi(1.1.2)30 b(W)-5
-b(ord)20 b(Designators)75 223 y Fr(W)l(ord)13 b(designators)g(are)g
-(used)h(to)f(select)g(desired)h(w)o(ords)f(from)g(the)g(ev)o(en)o(t.)19
-b(A)14 b(`)p Fq(:)p Fr(')f(separates)g(the)g(ev)o(en)o(t)75
-278 y(sp)q(eci\014cation)18 b(from)g(the)g(w)o(ord)g(designator.)29
-b(It)18 b(ma)o(y)g(b)q(e)h(omitted)e(if)h(the)h(w)o(ord)e(designator)h
-(b)q(egins)75 333 y(with)c(a)h(`)p Fq(^)p Fr(',)f(`)p
-Fq($)p Fr(',)f(`)p Fq(*)p Fr(',)h(`)p Fq(-)p Fr(',)g(or)g(`)p
-Fq(\045)p Fr('.)19 b(W)l(ords)14 b(are)h(n)o(um)o(b)q(ered)h(from)e
-(the)h(b)q(eginning)g(of)f(the)h(line,)g(with)f(the)75
-387 y(\014rst)g(w)o(ord)g(b)q(eing)h(denoted)g(b)o(y)g(0)f(\(zero\).)19
-b(W)l(ords)14 b(are)h(inserted)f(in)o(to)g(the)h(curren)o(t)f(line)h
-(separated)f(b)o(y)75 442 y(single)h(spaces.)137 513
-y(F)l(or)g(example,)75 599 y Fq(!!)192 b Fr(designates)17
-b(the)h(preceding)h(command.)28 b(When)18 b(y)o(ou)g(t)o(yp)q(e)g
-(this,)g(the)g(preceding)g(com-)315 653 y(mand)d(is)g(rep)q(eated)h(in)
-f(toto.)75 737 y Fq(!!:$)144 b Fr(designates)11 b(the)g(last)f(argumen)
-o(t)g(of)h(the)g(preceding)h(command.)19 b(This)10 b(ma)o(y)h(b)q(e)h
-(shortened)315 792 y(to)j Fq(!$)p Fr(.)75 875 y Fq(!fi:2)120
-b Fr(designates)14 b(the)h(second)g(argumen)o(t)f(of)g(the)h(most)f
-(recen)o(t)g(command)h(starting)e(with)h(the)315 930
-y(letters)g Fq(fi)p Fr(.)137 1015 y(Here)i(are)f(the)g(w)o(ord)f
-(designators:)75 1101 y Fq(0)h(\(zero\))57 b Fr(The)15
-b Fq(0)p Fr(th)g(w)o(ord.)20 b(F)l(or)14 b(man)o(y)h(applications,)e
-(this)i(is)g(the)g(command)g(w)o(ord.)75 1184 y Fh(n)216
-b Fr(The)15 b Fj(n)p Fr(th)h(w)o(ord.)75 1268 y Fq(^)216
-b Fr(The)15 b(\014rst)g(argumen)o(t;)f(that)h(is,)f(w)o(ord)h(1.)75
-1351 y Fq($)216 b Fr(The)15 b(last)g(argumen)o(t.)75
-1435 y Fq(\045)216 b Fr(The)15 b(w)o(ord)g(matc)o(hed)g(b)o(y)g(the)g
-(most)g(recen)o(t)g(`)p Fq(?)p Fh(string)5 b Fq(?)p Fr(')14
-b(searc)o(h.)75 1518 y Fh(x)5 b Fq(-)p Fh(y)163 b Fr(A)15
-b(range)g(of)g(w)o(ords;)f(`)p Fq(-)p Fh(y)5 b Fr(')14
-b(abbreviates)h(`)p Fq(0-)p Fh(y)5 b Fr('.)75 1602 y
-Fq(*)216 b Fr(All)13 b(of)h(the)f(w)o(ords,)g(except)i(the)f
-Fq(0)p Fr(th.)19 b(This)13 b(is)h(a)f(synon)o(ym)h(for)f(`)p
-Fq(1-$)p Fr('.)18 b(It)c(is)f(not)h(an)g(error)315 1657
-y(to)g(use)h(`)p Fq(*)p Fr(')f(if)h(there)f(is)h(just)f(one)h(w)o(ord)f
-(in)h(the)g(ev)o(en)o(t;)f(the)h(empt)o(y)g(string)f(is)g(returned)h
-(in)315 1712 y(that)f(case.)75 1795 y Fh(x)5 b Fq(*)187
-b Fr(Abbreviates)15 b(`)p Fh(x)5 b Fq(-$)p Fr(')75 1879
-y Fh(x)g Fq(-)187 b Fr(Abbreviates)15 b(`)p Fh(x)5 b
-Fq(-$)p Fr(')14 b(lik)o(e)g(`)p Fh(x)5 b Fq(*)p Fr(',)15
-b(but)g(omits)f(the)h(last)f(w)o(ord.)137 1964 y(If)j(a)g(w)o(ord)f
-(designator)g(is)h(supplied)g(without)f(an)h(ev)o(en)o(t)f(sp)q
-(eci\014cation,)h(the)g(previous)g(command)75 2019 y(is)e(used)g(as)g
-(the)h(ev)o(en)o(t.)75 2122 y Fi(1.1.3)30 b(Mo)r(di\014ers)75
-2196 y Fr(After)14 b(the)g(optional)f(w)o(ord)h(designator,)f(y)o(ou)h
-(can)g(add)h(a)f(sequence)h(of)f(one)g(or)g(more)g(of)g(the)g(follo)o
-(wing)75 2250 y(mo)q(di\014ers,)h(eac)o(h)g(preceded)i(b)o(y)e(a)g(`)p
-Fq(:)p Fr('.)75 2336 y Fq(h)216 b Fr(Remo)o(v)o(e)15
-b(a)g(trailing)e(pathname)i(comp)q(onen)o(t,)g(lea)o(ving)f(only)h(the)
-g(head.)75 2419 y Fq(t)216 b Fr(Remo)o(v)o(e)15 b(all)f(leading)h
-(pathname)g(comp)q(onen)o(ts,)g(lea)o(ving)f(the)h(tail.)75
-2503 y Fq(r)216 b Fr(Remo)o(v)o(e)15 b(a)g(trailing)e(su\016x)i(of)g
-(the)g(form)g(`)p Fq(.)p Fh(suffix)5 b Fr(',)13 b(lea)o(ving)h(the)i
-(basename.)75 2586 y Fq(e)216 b Fr(Remo)o(v)o(e)15 b(all)f(but)i(the)f
-(trailing)e(su\016x.)75 2670 y Fq(p)216 b Fr(Prin)o(t)14
-b(the)h(new)h(command)f(but)g(do)g(not)g(execute)h(it.)p
-eop end
-%%Page: 3 6
-TeXDict begin 3 5 bop 75 -58 a Fr(Chapter)15 b(1:)k(Using)c(History)f
-(In)o(teractiv)o(ely)1005 b(3)75 149 y Fq(s/)p Fh(old)5
-b Fq(/)p Fh(new)g Fq(/)315 204 y Fr(Substitute)16 b Fj(new)k
-Fr(for)c(the)h(\014rst)e(o)q(ccurrence)j(of)e Fj(old)h
-Fr(in)f(the)h(ev)o(en)o(t)f(line.)23 b(An)o(y)16 b(delimiter)315
-259 y(ma)o(y)c(b)q(e)h(used)g(in)f(place)g(of)g(`)p Fq(/)p
-Fr('.)18 b(The)13 b(delimiter)e(ma)o(y)h(b)q(e)h(quoted)f(in)h
-Fj(old)g Fr(and)g Fj(new)k Fr(with)11 b(a)315 314 y(single)i(bac)o
-(kslash.)19 b(If)13 b(`)p Fq(&)p Fr(')g(app)q(ears)h(in)f
-Fj(new)t Fr(,)h(it)f(is)g(replaced)h(b)o(y)f Fj(old)r
-Fr(.)19 b(A)14 b(single)f(bac)o(kslash)315 369 y(will)j(quote)h(the)h
-(`)p Fq(&)p Fr('.)25 b(The)17 b(\014nal)h(delimiter)e(is)h(optional)f
-(if)g(it)h(is)g(the)g(last)f(c)o(haracter)h(on)315 423
-y(the)e(input)g(line.)75 503 y Fq(&)216 b Fr(Rep)q(eat)16
-b(the)f(previous)g(substitution.)75 583 y Fq(g)75 638
-y(a)216 b Fr(Cause)19 b(c)o(hanges)h(to)e(b)q(e)i(applied)f(o)o(v)o(er)
-g(the)g(en)o(tire)g(ev)o(en)o(t)g(line.)32 b(Used)20
-b(in)f(conjunction)315 692 y(with)c(`)p Fq(s)p Fr(',)e(as)i(in)g
-Fq(gs/)p Fh(old)5 b Fq(/)p Fh(new)g Fq(/)p Fr(,)14 b(or)h(with)f(`)p
-Fq(&)p Fr('.)75 772 y Fq(G)216 b Fr(Apply)15 b(the)h(follo)o(wing)d(`)p
-Fq(s)p Fr(')h(mo)q(di\014er)h(once)h(to)e(eac)o(h)h(w)o(ord)g(in)g(the)
-g(ev)o(en)o(t.)p eop end
-%%Page: 4 7
-TeXDict begin 4 6 bop 75 -58 a Fr(Chapter)15 b(2:)k(Programming)14
-b(with)g(GNU)h(History)888 b(4)75 149 y Fn(2)41 b(Programming)29
-b(with)e(GNU)h(History)75 261 y Fr(This)21 b(c)o(hapter)f(describ)q(es)
-i(ho)o(w)e(to)h(in)o(terface)f(programs)g(that)g(y)o(ou)h(write)f(with)
-g(the)h Fk(gnu)g Fr(History)75 316 y(Library)l(.)i(It)17
-b(should)f(b)q(e)h(considered)g(a)f(tec)o(hnical)g(guide.)24
-b(F)l(or)15 b(information)g(on)h(the)h(in)o(teractiv)o(e)e(use)75
-371 y(of)g Fk(gnu)g Fr(History)l(,)f(see)h(Chapter)g(1)g([Using)f
-(History)g(In)o(teractiv)o(ely],)g(page)h(1.)75 485 y
-Fp(2.1)33 b(In)n(tro)r(duction)23 b(to)f(History)75 565
-y Fr(Man)o(y)15 b(programs)e(read)j(input)f(from)f(the)h(user)h(a)f
-(line)g(at)f(a)h(time.)k(The)d Fk(gnu)f Fr(History)f(library)g(is)g
-(able)75 620 y(to)g(k)o(eep)g(trac)o(k)g(of)g(those)g(lines,)g(asso)q
-(ciate)f(arbitrary)g(data)h(with)f(eac)o(h)i(line,)f(and)g(utilize)g
-(information)75 675 y(from)g(previous)h(lines)g(in)g(comp)q(osing)g
-(new)g(ones.)137 741 y(The)f(programmer)f(using)g(the)h(History)f
-(library)f(has)i(a)o(v)m(ailable)e(functions)i(for)f(remem)o(b)q(ering)
-g(lines)75 796 y(on)d(a)g(history)g(list,)f(asso)q(ciating)g(arbitrary)
-g(data)g(with)h(a)g(line,)h(remo)o(ving)e(lines)h(from)f(the)i(list,)f
-(searc)o(hing)75 850 y(through)17 b(the)h(list)e(for)h(a)h(line)f(con)o
-(taining)f(an)i(arbitrary)e(text)h(string,)g(and)h(referencing)g(an)o
-(y)f(line)g(in)75 905 y(the)e(list)g(directly)l(.)20
-b(In)c(addition,)e(a)h(history)f Fj(expansion)h Fr(function)h(is)e(a)o
-(v)m(ailable)g(whic)o(h)i(pro)o(vides)f(for)f(a)75 960
-y(consisten)o(t)g(user)i(in)o(terface)e(across)h(di\013eren)o(t)f
-(programs.)137 1026 y(The)g(user)h(using)e(programs)g(written)g(with)g
-(the)h(History)f(library)g(has)h(the)g(b)q(ene\014t)h(of)e(a)h
-(consisten)o(t)75 1081 y(user)20 b(in)o(terface)e(with)h(a)g(set)h(of)f
-(w)o(ell-kno)o(wn)f(commands)i(for)e(manipulating)h(the)g(text)g(of)g
-(previous)75 1136 y(lines)13 b(and)h(using)g(that)f(text)g(in)h(new)g
-(commands.)19 b(The)14 b(basic)g(history)e(manipulation)h(commands)g
-(are)75 1191 y(similar)g(to)i(the)g(history)f(substitution)g(pro)o
-(vided)h(b)o(y)h Fq(csh)p Fr(.)137 1257 y(If)f(the)g(programmer)f
-(desires,)g(he)h(can)g(use)g(the)g(Readline)g(library)l(,)f(whic)o(h)g
-(includes)i(some)e(history)75 1312 y(manipulation)g(b)o(y)h(default,)f
-(and)i(has)f(the)g(added)h(adv)m(an)o(tage)f(of)f(command)h(line)g
-(editing.)137 1378 y(Before)k(declaring)g(an)o(y)f(functions)h(using)g
-(an)o(y)g(functionalit)o(y)e(the)i(History)f(library)g(pro)o(vides)g
-(in)75 1433 y(other)c(co)q(de,)h(an)f(application)f(writer)g(should)i
-(include)f(the)h(\014le)f Fq(<readline/history.h>)e Fr(in)i(an)o(y)g
-(\014le)75 1487 y(that)d(uses)h(the)h(History)d(library's)h(features.)
-18 b(It)12 b(supplies)g(extern)g(declarations)f(for)g(all)g(of)h(the)g
-(library's)75 1542 y(public)j(functions)g(and)h(v)m(ariables,)e(and)h
-(declares)g(all)f(of)h(the)h(public)f(data)f(structures.)75
-1656 y Fp(2.2)33 b(History)21 b(Storage)75 1736 y Fr(The)15
-b(history)g(list)f(is)g(an)h(arra)o(y)f(of)h(history)f(en)o(tries.)20
-b(A)15 b(history)f(en)o(try)h(is)f(declared)i(as)f(follo)o(ws:)195
-1802 y Fq(typedef)23 b(void)g(*histdata_t;)195 1912 y(typedef)g(struct)
-g(_hist_entry)f({)243 1967 y(char)h(*line;)243 2021 y(char)g
-(*timestamp;)243 2076 y(histdata_t)f(data;)195 2131 y(})i(HIST_ENTRY;)
-137 2197 y Fr(The)16 b(history)e(list)g(itself)g(migh)o(t)g(therefore)h
-(b)q(e)h(declared)f(as)195 2264 y Fq(HIST_ENTRY)22 b
-(**the_history_list;)137 2330 y Fr(The)16 b(state)e(of)h(the)g(History)
-f(library)g(is)h(encapsulated)g(in)o(to)f(a)h(single)g(structure:)195
-2396 y Fq(/*)219 2451 y(*)24 b(A)f(structure)g(used)g(to)h(pass)f
-(around)g(the)h(current)f(state)g(of)g(the)h(history.)219
-2506 y(*/)195 2560 y(typedef)f(struct)g(_hist_state)f({)243
-2615 y(HIST_ENTRY)g(**entries;)h(/*)g(Pointer)g(to)h(the)f(entries)g
-(themselves.)g(*/)243 2670 y(int)g(offset;)262 b(/*)23
-b(The)h(location)f(pointer)f(within)h(this)h(array.)f(*/)p
-eop end
-%%Page: 5 8
-TeXDict begin 5 7 bop 75 -58 a Fr(Chapter)15 b(2:)k(Programming)14
-b(with)g(GNU)h(History)888 b(5)243 149 y Fq(int)23 b(length;)262
-b(/*)23 b(Number)g(of)h(elements)f(within)g(this)g(array.)g(*/)243
-204 y(int)g(size;)310 b(/*)23 b(Number)g(of)h(slots)f(allocated)g(to)g
-(this)h(array.)f(*/)243 259 y(int)g(flags;)195 314 y(})h
-(HISTORY_STATE;)137 382 y Fr(If)16 b(the)f(\015ags)g(mem)o(b)q(er)g
-(includes)h Fq(HS_STIFLED)p Fr(,)d(the)i(history)g(has)g(b)q(een)h
-(sti\015ed.)75 500 y Fp(2.3)33 b(History)21 b(F)-6 b(unctions)75
-580 y Fr(This)17 b(section)f(describ)q(es)i(the)f(calling)f(sequence)i
-(for)f(the)g(v)m(arious)g(functions)f(exp)q(orted)i(b)o(y)f(the)g
-Fk(gnu)75 635 y Fr(History)d(library)l(.)75 735 y Fi(2.3.1)30
-b(Initializing)20 b(History)h(and)f(State)g(Managemen)n(t)75
-809 y Fr(This)11 b(section)f(describ)q(es)i(functions)f(used)g(to)g
-(initialize)e(and)i(manage)f(the)i(state)e(of)g(the)h(History)f
-(library)75 864 y(when)16 b(y)o(ou)f(w)o(an)o(t)f(to)g(use)i(the)f
-(history)f(functions)h(in)g(y)o(our)g(program.)1675 958
-y([F)l(unction])-1801 b Fg(void)27 b(using_history)d
-Ff(\()p Fj(v)o(oid)p Ff(\))195 1013 y Fr(Begin)c(a)g(session)f(in)h
-(whic)o(h)g(the)g(history)f(functions)g(migh)o(t)g(b)q(e)i(used.)34
-b(This)20 b(initializes)e(the)195 1068 y(in)o(teractiv)o(e)c(v)m
-(ariables.)1675 1162 y([F)l(unction])-1801 b Fg(HISTORY_STATE)28
-b(*)e(history_get_history_s)q(tate)g Ff(\()p Fj(v)o(oid)p
-Ff(\))195 1217 y Fr(Return)16 b(a)f(structure)g(describing)g(the)g
-(curren)o(t)g(state)f(of)h(the)g(input)h(history)l(.)1675
-1311 y([F)l(unction])-1801 b Fg(void)27 b(history_set_history_state)f
-Ff(\()p Fj(HISTOR)l(Y)p 1109 1311 14 2 v 22 w(ST)l(A)l(TE)15
-b(*state)p Ff(\))195 1366 y Fr(Set)g(the)h(state)e(of)h(the)g(history)f
-(list)g(according)h(to)f Fj(state)s Fr(.)75 1467 y Fi(2.3.2)30
-b(History)20 b(List)h(Managemen)n(t)75 1540 y Fr(These)16
-b(functions)g(manage)g(individual)f(en)o(tries)g(on)h(the)g(history)f
-(list,)g(or)g(set)h(parameters)f(managing)75 1595 y(the)g(list)f
-(itself.)1675 1690 y([F)l(unction])-1801 b Fg(void)27
-b(add_history)d Ff(\()p Fj(const)15 b(c)o(har)g(*string)p
-Ff(\))195 1744 y Fr(Place)g Fj(string)i Fr(at)e(the)g(end)h(of)e(the)h
-(history)f(list.)19 b(The)c(asso)q(ciated)f(data)h(\014eld)g(\(if)f(an)
-o(y\))g(is)h(set)g(to)195 1799 y Fq(NULL)p Fr(.)1675
-1894 y([F)l(unction])-1801 b Fg(void)27 b(add_history_time)e
-Ff(\()p Fj(const)15 b(c)o(har)f(*string)p Ff(\))195 1948
-y Fr(Change)h(the)g(time)g(stamp)g(asso)q(ciated)f(with)h(the)g(most)f
-(recen)o(t)h(history)g(en)o(try)f(to)h Fj(string)t Fr(.)1675
-2043 y([F)l(unction])-1801 b Fg(HIST_ENTRY)28 b(*)e(remove_history)f
-Ff(\()p Fj(in)o(t)14 b(whic)o(h)p Ff(\))195 2098 y Fr(Remo)o(v)o(e)23
-b(history)e(en)o(try)i(at)f(o\013set)g Fj(whic)o(h)g
-Fr(from)g(the)h(history)l(.)42 b(The)23 b(remo)o(v)o(ed)f(elemen)o(t)g
-(is)195 2152 y(returned)16 b(so)e(y)o(ou)h(can)h(free)f(the)g(line,)g
-(data,)f(and)h(con)o(taining)f(structure.)1675 2247 y([F)l(unction])
--1801 b Fg(histdata_t)28 b(free_history_entry)d Ff(\()p
-Fj(HIST)p 985 2247 V 20 w(ENTR)l(Y)16 b(*histen)o(t)p
-Ff(\))195 2302 y Fr(F)l(ree)e(the)g(history)f(en)o(try)h
-Fj(histen)o(t)g Fr(and)g(an)o(y)g(history)f(library)g(priv)m(ate)g
-(data)h(asso)q(ciated)f(with)g(it.)195 2356 y(Returns)j(the)f
-(application-sp)q(eci\014c)g(data)f(so)h(the)h(caller)e(can)h(disp)q
-(ose)h(of)e(it.)1675 2451 y([F)l(unction])-1801 b Fg(HIST_ENTRY)28
-b(*)e(replace_history_entry)g Ff(\()p Fj(in)o(t)14 b(whic)o(h,)h(const)
-g(c)o(har)f(*line,)283 2506 y(histdata)p 449 2506 V 18
-w(t)h(data)p Ff(\))195 2560 y Fr(Mak)o(e)e(the)h(history)f(en)o(try)g
-(at)g(o\013set)g Fj(whic)o(h)h Fr(ha)o(v)o(e)f Fj(line)j
-Fr(and)e Fj(data)p Fr(.)19 b(This)13 b(returns)h(the)g(old)f(en)o(try)
-195 2615 y(so)18 b(the)h(caller)e(can)i(disp)q(ose)g(of)f(an)o(y)g
-(application-sp)q(eci\014c)g(data.)30 b(In)19 b(the)g(case)f(of)g(an)h
-(in)o(v)m(alid)195 2670 y Fj(whic)o(h)p Fr(,)c(a)g Fq(NULL)f
-Fr(p)q(oin)o(ter)h(is)g(returned.)p eop end
-%%Page: 6 9
-TeXDict begin 6 8 bop 75 -58 a Fr(Chapter)15 b(2:)k(Programming)14
-b(with)g(GNU)h(History)888 b(6)1675 149 y([F)l(unction])-1801
-b Fg(void)27 b(clear_history)d Ff(\()p Fj(v)o(oid)p Ff(\))195
-204 y Fr(Clear)14 b(the)i(history)e(list)g(b)o(y)h(deleting)g(all)f
-(the)h(en)o(tries.)1675 297 y([F)l(unction])-1801 b Fg(void)27
-b(stifle_history)e Ff(\()p Fj(in)o(t)14 b(max)p Ff(\))195
-352 y Fr(Sti\015e)h(the)g(history)g(list,)e(remem)o(b)q(ering)i(only)g
-(the)g(last)f Fj(max)k Fr(en)o(tries.)1675 445 y([F)l(unction])-1801
-b Fg(int)27 b(unstifle_history)e Ff(\()p Fj(v)o(oid)p
-Ff(\))195 500 y Fr(Stop)14 b(sti\015ing)e(the)i(history)l(.)19
-b(This)13 b(returns)g(the)h(previously-set)f(maxim)o(um)g(n)o(um)o(b)q
-(er)h(of)f(history)195 555 y(en)o(tries)g(\(as)f(set)i(b)o(y)f
-Fq(stifle_history\(\))p Fr(\).)k(The)c(v)m(alue)h(is)f(p)q(ositiv)o(e)f
-(if)h(the)h(history)e(w)o(as)g(sti\015ed,)195 609 y(negativ)o(e)i(if)h
-(it)f(w)o(asn't.)1675 702 y([F)l(unction])-1801 b Fg(int)27
-b(history_is_stifled)e Ff(\()p Fj(v)o(oid)p Ff(\))195
-757 y Fr(Returns)16 b(non-zero)f(if)g(the)g(history)f(is)h(sti\015ed,)g
-(zero)g(if)f(it)h(is)g(not.)75 857 y Fi(2.3.3)30 b(Information)19
-b(Ab)r(out)i(the)f(History)h(List)75 931 y Fr(These)16
-b(functions)f(return)g(information)e(ab)q(out)i(the)g(en)o(tire)g
-(history)f(list)g(or)h(individual)f(list)g(en)o(tries.)1675
-1024 y([F)l(unction])-1801 b Fg(HIST_ENTRY)28 b(**)e(history_list)f
-Ff(\()p Fj(v)o(oid)p Ff(\))195 1078 y Fr(Return)16 b(a)f
-Fq(NULL)f Fr(terminated)h(arra)o(y)f(of)h Fq(HIST_ENTRY)f(*)h
-Fr(whic)o(h)g(is)f(the)i(curren)o(t)f(input)g(history)l(.)195
-1133 y(Elemen)o(t)g(0)g(of)f(this)h(list)f(is)h(the)g(b)q(eginning)g
-(of)g(time.)k(If)d(there)f(is)g(no)g(history)l(,)f(return)h
-Fq(NULL)p Fr(.)1675 1226 y([F)l(unction])-1801 b Fg(int)27
-b(where_history)d Ff(\()p Fj(v)o(oid)p Ff(\))195 1281
-y Fr(Returns)16 b(the)f(o\013set)f(of)h(the)g(curren)o(t)g(history)f
-(elemen)o(t.)1675 1374 y([F)l(unction])-1801 b Fg(HIST_ENTRY)28
-b(*)e(current_history)f Ff(\()p Fj(v)o(oid)p Ff(\))195
-1429 y Fr(Return)13 b(the)g(history)e(en)o(try)h(at)g(the)g(curren)o(t)
-h(p)q(osition,)e(as)h(determined)h(b)o(y)f Fq(where_history\(\))p
-Fr(.)195 1484 y(If)j(there)h(is)e(no)i(en)o(try)e(there,)h(return)g(a)g
-Fq(NULL)g Fr(p)q(oin)o(ter.)1675 1577 y([F)l(unction])-1801
-b Fg(HIST_ENTRY)28 b(*)e(history_get)e Ff(\()p Fj(in)o(t)14
-b(o\013set)p Ff(\))195 1631 y Fr(Return)21 b(the)g(history)f(en)o(try)g
-(at)g(p)q(osition)g Fj(o\013set)q Fr(,)h(starting)e(from)h
-Fq(history_base)f Fr(\(see)h(Sec-)195 1686 y(tion)15
-b(2.4)g([History)g(V)l(ariables],)f(page)i(8\).)22 b(If)16
-b(there)g(is)g(no)g(en)o(try)f(there,)h(or)g(if)f Fj(o\013set)h
-Fr(is)g(greater)195 1741 y(than)f(the)g(history)f(length,)h(return)g(a)
-g Fq(NULL)g Fr(p)q(oin)o(ter.)1675 1834 y([F)l(unction])-1801
-b Fg(time_t)27 b(history_get_time)e Ff(\()p Fj(HIST)p
-828 1834 14 2 v 20 w(ENTR)l(Y)16 b(*en)o(try)p Ff(\))195
-1889 y Fr(Return)g(the)f(time)g(stamp)f(asso)q(ciated)h(with)f(the)h
-(history)g(en)o(try)f Fj(en)o(try)t Fr(.)1675 1982 y([F)l(unction])
--1801 b Fg(int)27 b(history_total_bytes)e Ff(\()p Fj(v)o(oid)p
-Ff(\))195 2037 y Fr(Return)14 b(the)g(n)o(um)o(b)q(er)g(of)g(b)o(ytes)f
-(that)g(the)h(primary)f(history)g(en)o(tries)g(are)h(using.)19
-b(This)13 b(function)195 2091 y(returns)i(the)g(sum)h(of)e(the)i
-(lengths)e(of)h(all)f(the)i(lines)e(in)h(the)h(history)l(.)75
-2191 y Fi(2.3.4)30 b(Mo)n(ving)21 b(Around)f(the)h(History)g(List)75
-2265 y Fr(These)16 b(functions)f(allo)o(w)e(the)i(curren)o(t)g(index)h
-(in)o(to)e(the)h(history)f(list)g(to)h(b)q(e)h(set)f(or)f(c)o(hanged.)
-1675 2358 y([F)l(unction])-1801 b Fg(int)27 b(history_set_pos)e
-Ff(\()p Fj(in)o(t)14 b(p)q(os)p Ff(\))195 2413 y Fr(Set)k(the)h(curren)
-o(t)f(history)f(o\013set)g(to)h Fj(p)q(os)r Fr(,)g(an)g(absolute)g
-(index)g(in)o(to)f(the)i(list.)27 b(Returns)19 b(1)f(on)195
-2467 y(success,)d(0)g(if)g Fj(p)q(os)i Fr(is)e(less)g(than)g(zero)g(or)
-g(greater)f(than)h(the)g(n)o(um)o(b)q(er)h(of)e(history)h(en)o(tries.)
-1675 2560 y([F)l(unction])-1801 b Fg(HIST_ENTRY)28 b(*)e
-(previous_history)f Ff(\()p Fj(v)o(oid)p Ff(\))195 2615
-y Fr(Bac)o(k)14 b(up)h(the)g(curren)o(t)f(history)f(o\013set)h(to)f
-(the)i(previous)f(history)f(en)o(try)l(,)h(and)h(return)f(a)g(p)q(oin)o
-(ter)195 2670 y(to)h(that)f(en)o(try)l(.)20 b(If)15 b(there)g(is)g(no)g
-(previous)g(en)o(try)l(,)g(return)g(a)g Fq(NULL)g Fr(p)q(oin)o(ter.)p
-eop end
-%%Page: 7 10
-TeXDict begin 7 9 bop 75 -58 a Fr(Chapter)15 b(2:)k(Programming)14
-b(with)g(GNU)h(History)888 b(7)1675 149 y([F)l(unction])-1801
-b Fg(HIST_ENTRY)28 b(*)e(next_history)f Ff(\()p Fj(v)o(oid)p
-Ff(\))195 204 y Fr(Mo)o(v)o(e)17 b(the)h(curren)o(t)f(history)g
-(o\013set)g(forw)o(ard)f(to)h(the)h(next)g(history)f(en)o(try)l(,)h
-(and)g(return)f(the)h(a)195 259 y(p)q(oin)o(ter)d(to)f(that)h(en)o(try)
-l(.)k(If)d(there)f(is)g(no)g(next)g(en)o(try)l(,)g(return)g(a)g
-Fq(NULL)g Fr(p)q(oin)o(ter.)75 361 y Fi(2.3.5)30 b(Searc)n(hing)21
-b(the)f(History)h(List)75 434 y Fr(These)e(functions)e(allo)o(w)g
-(searc)o(hing)g(of)h(the)g(history)g(list)e(for)i(en)o(tries)g(con)o
-(taining)e(a)i(sp)q(eci\014c)h(string.)75 489 y(Searc)o(hing)13
-b(ma)o(y)h(b)q(e)g(p)q(erformed)g(b)q(oth)g(forw)o(ard)e(and)i(bac)o
-(kw)o(ard)f(from)g(the)h(curren)o(t)g(history)e(p)q(osition.)75
-544 y(The)k(searc)o(h)f(ma)o(y)g(b)q(e)i Fj(anc)o(hored)p
-Fr(,)e(meaning)g(that)g(the)h(string)f(m)o(ust)g(matc)o(h)g(at)g(the)h
-(b)q(eginning)g(of)f(the)75 599 y(history)f(en)o(try)l(.)1675
-696 y([F)l(unction])-1801 b Fg(int)27 b(history_search)d
-Ff(\()p Fj(const)15 b(c)o(har)g(*string,)e(in)o(t)i(direction)p
-Ff(\))195 750 y Fr(Searc)o(h)f(the)g(history)g(for)f
-Fj(string)t Fr(,)g(starting)f(at)i(the)g(curren)o(t)g(history)f
-(o\013set.)19 b(If)14 b Fj(direction)g Fr(is)f(less)195
-805 y(than)20 b(0,)g(then)h(the)f(searc)o(h)f(is)h(through)g(previous)f
-(en)o(tries,)i(otherwise)e(through)g(subsequen)o(t)195
-860 y(en)o(tries.)g(If)d Fj(string)i Fr(is)d(found,)g(then)g(the)h
-(curren)o(t)f(history)f(index)h(is)g(set)g(to)g(that)f(history)g(en)o
-(try)l(,)195 915 y(and)j(the)g(v)m(alue)g(returned)g(is)f(the)h
-(o\013set)e(in)i(the)g(line)f(of)g(the)h(en)o(try)g(where)g
-Fj(string)i Fr(w)o(as)d(found.)195 970 y(Otherwise,)f(nothing)f(is)h(c)
-o(hanged,)g(and)h(a)e(-1)h(is)g(returned.)1675 1066 y([F)l(unction])
--1801 b Fg(int)27 b(history_search_prefix)f Ff(\()p Fj(const)14
-b(c)o(har)h(*string,)f(in)o(t)g(direction)p Ff(\))195
-1121 y Fr(Searc)o(h)20 b(the)g(history)f(for)h Fj(string)t
-Fr(,)f(starting)g(at)g(the)h(curren)o(t)g(history)f(o\013set.)33
-b(The)21 b(searc)o(h)e(is)195 1176 y(anc)o(hored:)h(matc)o(hing)13
-b(lines)h(m)o(ust)g(b)q(egin)g(with)g Fj(string)t Fr(.)19
-b(If)14 b Fj(direction)g Fr(is)g(less)g(than)g(0,)g(then)h(the)195
-1231 y(searc)o(h)g(is)h(through)f(previous)g(en)o(tries,)g(otherwise)g
-(through)g(subsequen)o(t)h(en)o(tries.)21 b(If)16 b Fj(string)i
-Fr(is)195 1286 y(found,)f(then)g(the)f(curren)o(t)h(history)e(index)i
-(is)f(set)g(to)g(that)g(en)o(try)l(,)g(and)h(the)f(return)h(v)m(alue)g
-(is)f(0.)195 1340 y(Otherwise,)f(nothing)f(is)h(c)o(hanged,)g(and)h(a)e
-(-1)h(is)g(returned.)1675 1437 y([F)l(unction])-1801
-b Fg(int)27 b(history_search_pos)e Ff(\()p Fj(const)15
-b(c)o(har)g(*string,)e(in)o(t)i(direction,)f(in)o(t)g(p)q(os)p
-Ff(\))195 1492 y Fr(Searc)o(h)j(for)f Fj(string)k Fr(in)d(the)g
-(history)f(list,)g(starting)f(at)i Fj(p)q(os)r Fr(,)g(an)g(absolute)f
-(index)h(in)o(to)f(the)i(list.)195 1547 y(If)g Fj(direction)f
-Fr(is)h(negativ)o(e,)f(the)h(searc)o(h)g(pro)q(ceeds)g(bac)o(kw)o(ard)f
-(from)g Fj(p)q(os)r Fr(,)i(otherwise)e(forw)o(ard.)195
-1601 y(Returns)23 b(the)f(absolute)f(index)h(of)g(the)g(history)f
-(elemen)o(t)h(where)g Fj(string)j Fr(w)o(as)c(found,)j(or)d(-1)195
-1656 y(otherwise.)75 1758 y Fi(2.3.6)30 b(Managing)20
-b(the)g(History)h(File)75 1832 y Fr(The)14 b(History)e(library)g(can)h
-(read)g(the)h(history)e(from)h(and)g(write)f(it)h(to)g(a)g(\014le.)19
-b(This)13 b(section)g(do)q(cumen)o(ts)75 1886 y(the)i(functions)g(for)g
-(managing)f(a)h(history)f(\014le.)1675 1983 y([F)l(unction])-1801
-b Fg(int)27 b(read_history)d Ff(\()p Fj(const)15 b(c)o(har)g
-(*\014lename)p Ff(\))195 2038 y Fr(Add)g(the)g(con)o(ten)o(ts)f(of)h
-Fj(\014lename)i Fr(to)d(the)h(history)f(list,)f(a)i(line)f(at)h(a)f
-(time.)19 b(If)c Fj(\014lename)j Fr(is)c Fq(NULL)p Fr(,)195
-2093 y(then)i(read)f(from)f(`)p Fq(~/.history)p Fr('.)k(Returns)e(0)e
-(if)h(successful,)g(or)g Fq(errno)f Fr(if)h(not.)1675
-2190 y([F)l(unction])-1801 b Fg(int)27 b(read_history_range)e
-Ff(\()p Fj(const)15 b(c)o(har)g(*\014lename,)f(in)o(t)h(from,)f(in)o(t)
-g(to)p Ff(\))195 2244 y Fr(Read)g(a)g(range)f(of)h(lines)f(from)g
-Fj(\014lename)s Fr(,)g(adding)h(them)g(to)f(the)h(history)e(list.)18
-b(Start)13 b(reading)h(at)195 2299 y(line)f Fj(from)f
-Fr(and)h(end)h(at)e Fj(to)r Fr(.)19 b(If)13 b Fj(from)f
-Fr(is)h(zero,)g(start)f(at)g(the)h(b)q(eginning.)19 b(If)13
-b Fj(to)i Fr(is)e(less)f(than)h Fj(from)p Fr(,)195 2354
-y(then)i(read)g(un)o(til)g(the)g(end)g(of)g(the)g(\014le.)20
-b(If)15 b Fj(\014lename)j Fr(is)d Fq(NULL)p Fr(,)f(then)h(read)g(from)f
-(`)p Fq(~/.history)p Fr('.)195 2409 y(Returns)i(0)f(if)f(successful,)h
-(or)g Fq(errno)g Fr(if)f(not.)1675 2506 y([F)l(unction])-1801
-b Fg(int)27 b(write_history)d Ff(\()p Fj(const)15 b(c)o(har)g
-(*\014lename)p Ff(\))195 2560 y Fr(W)l(rite)h(the)i(curren)o(t)f
-(history)f(to)h Fj(\014lename)s Fr(,)g(o)o(v)o(erwriting)d
-Fj(\014lename)20 b Fr(if)d(necessary)l(.)26 b(If)18 b
-Fj(\014lename)195 2615 y Fr(is)e Fq(NULL)p Fr(,)f(then)h(write)g(the)g
-(history)f(list)g(to)g(`)p Fq(~/.history)p Fr('.)21 b(Returns)c(0)e(on)
-h(success,)h(or)f Fq(errno)195 2670 y Fr(on)f(a)g(read)g(or)g(write)f
-(error.)p eop end
-%%Page: 8 11
-TeXDict begin 8 10 bop 75 -58 a Fr(Chapter)15 b(2:)k(Programming)14
-b(with)g(GNU)h(History)888 b(8)1675 149 y([F)l(unction])-1801
-b Fg(int)27 b(append_history)d Ff(\()p Fj(in)o(t)15 b(nelemen)o(ts,)f
-(const)h(c)o(har)g(*\014lename)p Ff(\))195 204 y Fr(App)q(end)k(the)e
-(last)f Fj(nelemen)o(ts)j Fr(of)e(the)g(history)f(list)g(to)h
-Fj(\014lename)s Fr(.)25 b(If)17 b Fj(\014lename)j Fr(is)d
-Fq(NULL)p Fr(,)g(then)195 259 y(app)q(end)f(to)f(`)p
-Fq(~/.history)p Fr('.)j(Returns)d(0)g(on)g(success,)h(or)e
-Fq(errno)h Fr(on)g(a)g(read)g(or)g(write)f(error.)1675
-352 y([F)l(unction])-1801 b Fg(int)27 b(history_truncate_file)f
-Ff(\()p Fj(const)14 b(c)o(har)h(*\014lename,)g(in)o(t)f(nlines)p
-Ff(\))195 407 y Fr(T)l(runcate)19 b(the)g(history)f(\014le)h
-Fj(\014lename)s Fr(,)h(lea)o(ving)e(only)g(the)i(last)e
-Fj(nlines)i Fr(lines.)31 b(If)20 b Fj(\014lename)h Fr(is)195
-462 y Fq(NULL)p Fr(,)14 b(then)i(`)p Fq(~/.history)p
-Fr(')d(is)i(truncated.)k(Returns)d(0)f(on)g(success,)h(or)e
-Fq(errno)h Fr(on)g(failure.)75 562 y Fi(2.3.7)30 b(History)20
-b(Expansion)75 635 y Fr(These)c(functions)f(implemen)o(t)f(history)g
-(expansion.)1675 729 y([F)l(unction])-1801 b Fg(int)27
-b(history_expand)d Ff(\()p Fj(c)o(har)15 b(*string,)f(c)o(har)g
-(**output)p Ff(\))195 783 y Fr(Expand)j Fj(string)t Fr(,)f(placing)g
-(the)h(result)f(in)o(to)g Fj(output)q Fr(,)h(a)f(p)q(oin)o(ter)h(to)f
-(a)h(string)e(\(see)i(Section)g(1.1)195 838 y([History)d(In)o
-(teraction],)f(page)i(1\).)20 b(Returns:)195 919 y Fq(0)216
-b Fr(If)19 b(no)g(expansions)f(to)q(ok)g(place)h(\(or,)f(if)h(the)f
-(only)h(c)o(hange)f(in)h(the)g(text)f(w)o(as)g(the)435
-974 y(remo)o(v)m(al)c(of)h(escap)q(e)h(c)o(haracters)e(preceding)h(the)
-g(history)f(expansion)h(c)o(haracter\);)195 1054 y Fq(1)216
-b Fr(if)15 b(expansions)g(did)g(tak)o(e)f(place;)195
-1134 y Fq(-1)192 b Fr(if)15 b(there)g(w)o(as)f(an)h(error)g(in)g
-(expansion;)195 1214 y Fq(2)216 b Fr(if)13 b(the)h(returned)g(line)g
-(should)g(b)q(e)g(displa)o(y)o(ed,)f(but)h(not)f(executed,)i(as)e(with)
-g(the)h Fq(:p)435 1269 y Fr(mo)q(di\014er)h(\(see)g(Section)g(1.1.3)f
-([Mo)q(di\014ers],)g(page)h(2\).)195 1350 y(If)g(an)h(error)e(o)q
-(curred)i(in)f(expansion,)f(then)i Fj(output)g Fr(con)o(tains)e(a)h
-(descriptiv)o(e)g(error)f(message.)1675 1443 y([F)l(unction])-1801
-b Fg(char)27 b(*)f(get_history_event)f Ff(\()p Fj(const)15
-b(c)o(har)g(*string,)e(in)o(t)i(*cindex,)g(in)o(t)f(qc)o(har)p
-Ff(\))195 1498 y Fr(Returns)23 b(the)g(text)f(of)g(the)g(history)g(ev)o
-(en)o(t)g(b)q(eginning)h(at)f Fj(string)j Fq(+)d Fj(*cindex)s
-Fr(.)43 b Fj(*cindex)25 b Fr(is)195 1552 y(mo)q(di\014ed)15
-b(to)f(p)q(oin)o(t)g(to)g(after)g(the)h(ev)o(en)o(t)f(sp)q(eci\014er.)
-21 b(A)o(t)14 b(function)g(en)o(try)l(,)h Fj(cindex)j
-Fr(p)q(oin)o(ts)c(to)g(the)195 1607 y(index)k(in)o(to)f
-Fj(string)k Fr(where)d(the)g(history)f(ev)o(en)o(t)h(sp)q
-(eci\014cation)f(b)q(egins.)29 b Fj(qc)o(har)21 b Fr(is)c(a)h(c)o
-(haracter)195 1662 y(that)13 b(is)g(allo)o(w)o(ed)f(to)g(end)i(the)g
-(ev)o(en)o(t)f(sp)q(eci\014cation)h(in)f(addition)f(to)h(the)h
-(\\normal")e(terminating)195 1717 y(c)o(haracters.)1675
-1810 y([F)l(unction])-1801 b Fg(char)27 b(**)f(history_tokenize)f
-Ff(\()p Fj(const)15 b(c)o(har)g(*string)p Ff(\))195 1865
-y Fr(Return)h(an)f(arra)o(y)f(of)h(tok)o(ens)f(parsed)i(out)f(of)f
-Fj(string)t Fr(,)g(m)o(uc)o(h)h(as)g(the)g(shell)g(migh)o(t.)k(The)c
-(tok)o(ens)195 1920 y(are)g(split)f(on)i(the)f(c)o(haracters)f(in)h
-(the)h Fj(history)p 1004 1920 14 2 v 19 w(w)o(ord)p 1121
-1920 V 19 w(delimiters)g Fr(v)m(ariable,)e(and)i(shell)f(quoting)195
-1974 y(con)o(v)o(en)o(tions)f(are)h(ob)q(ey)o(ed.)1675
-2068 y([F)l(unction])-1801 b Fg(char)27 b(*)f(history_arg_extract)g
-Ff(\()p Fj(in)o(t)14 b(\014rst,)g(in)o(t)h(last,)e(const)i(c)o(har)g
-(*string)p Ff(\))195 2122 y Fr(Extract)k(a)h(string)f(segmen)o(t)h
-(consisting)f(of)h(the)g Fj(\014rst)h Fr(through)f Fj(last)g
-Fr(argumen)o(ts)f(presen)o(t)h(in)195 2177 y Fj(string)t
-Fr(.)f(Argumen)o(ts)14 b(are)h(split)g(using)g Fq(history_tokenize)p
-Fr(.)75 2294 y Fp(2.4)33 b(History)21 b(V)-6 b(ariables)75
-2374 y Fr(This)13 b(section)g(describ)q(es)h(the)g(externally-visible)e
-(v)m(ariables)g(exp)q(orted)i(b)o(y)f(the)h Fk(gnu)f
-Fr(History)g(Library)l(.)1685 2467 y([V)l(ariable])-1801
-b Fg(int)27 b(history_base)195 2522 y Fr(The)15 b(logical)f(o\013set)g
-(of)h(the)g(\014rst)g(en)o(try)g(in)g(the)g(history)f(list.)1685
-2615 y([V)l(ariable])-1801 b Fg(int)27 b(history_length)195
-2670 y Fr(The)15 b(n)o(um)o(b)q(er)h(of)f(en)o(tries)f(curren)o(tly)h
-(stored)g(in)g(the)g(history)f(list.)p eop end
-%%Page: 9 12
-TeXDict begin 9 11 bop 75 -58 a Fr(Chapter)15 b(2:)k(Programming)14
-b(with)g(GNU)h(History)888 b(9)1685 149 y([V)l(ariable])-1801
-b Fg(int)27 b(history_max_entries)195 204 y Fr(The)c(maxim)o(um)f(n)o
-(um)o(b)q(er)h(of)g(history)f(en)o(tries.)42 b(This)23
-b(m)o(ust)f(b)q(e)i(c)o(hanged)f(using)g Fq(stifle_)195
-259 y(history\(\))p Fr(.)1685 371 y([V)l(ariable])-1801
-b Fg(int)27 b(history_write_timestamps)195 426 y Fr(If)c(non-zero,)h
-(timestamps)d(are)h(written)f(to)h(the)g(history)f(\014le,)j(so)e(they)
-g(can)h(b)q(e)g(preserv)o(ed)195 481 y(b)q(et)o(w)o(een)16
-b(sessions.)j(The)c(default)g(v)m(alue)g(is)g(0,)g(meaning)g(that)f
-(timestamps)g(are)h(not)g(sa)o(v)o(ed.)195 558 y(The)21
-b(curren)o(t)g(timestamp)e(format)h(uses)h(the)f(v)m(alue)h(of)g
-Fj(history)p 1350 558 14 2 v 19 w(commen)o(t)p 1550 558
-V 19 w(c)o(har)j Fr(to)c(delimit)195 613 y(timestamp)g(en)o(tries)g(in)
-h(the)h(history)e(\014le.)38 b(If)21 b(that)f(v)m(ariable)h(do)q(es)g
-(not)g(ha)o(v)o(e)g(a)g(v)m(alue)g(\(the)195 668 y(default\),)14
-b(timestamps)g(will)g(not)h(b)q(e)h(written.)1685 780
-y([V)l(ariable])-1801 b Fg(char)27 b(history_expansion_char)195
-835 y Fr(The)18 b(c)o(haracter)f(that)g(in)o(tro)q(duces)g(a)g(history)
-g(ev)o(en)o(t.)27 b(The)18 b(default)f(is)g(`)p Fq(!)p
-Fr('.)26 b(Setting)17 b(this)g(to)g(0)195 889 y(inhibits)d(history)h
-(expansion.)1685 1002 y([V)l(ariable])-1801 b Fg(char)27
-b(history_subst_char)195 1056 y Fr(The)21 b(c)o(haracter)e(that)h(in)o
-(v)o(ok)o(es)f(w)o(ord)h(substitution)f(if)h(found)g(at)g(the)h(start)e
-(of)h(a)g(line.)35 b(The)195 1111 y(default)15 b(is)f(`)p
-Fq(^)p Fr('.)1685 1223 y([V)l(ariable])-1801 b Fg(char)27
-b(history_comment_char)195 1278 y Fr(During)18 b(tok)o(enization,)g(if)
-g(this)h(c)o(haracter)f(is)g(seen)i(as)e(the)h(\014rst)g(c)o(haracter)f
-(of)g(a)h(w)o(ord,)g(then)195 1333 y(it)i(and)h(all)e(subsequen)o(t)j
-(c)o(haracters)d(up)j(to)e(a)g(newline)g(are)h(ignored,)g(suppressing)g
-(history)195 1388 y(expansion)15 b(for)g(the)g(remainder)g(of)g(the)g
-(line.)k(This)c(is)g(disabled)g(b)o(y)g(default.)1685
-1500 y([V)l(ariable])-1801 b Fg(char)27 b(*)f(history_word_delimiters)
-195 1555 y Fr(The)14 b(c)o(haracters)f(that)g(separate)g(tok)o(ens)h
-(for)f Fq(history_tokenize\(\))p Fr(.)k(The)d(default)f(v)m(alue)h(is)f
-Fq(")195 1610 y(\\t\\n\(\)<>;&|")p Fr(.)1685 1722 y([V)l(ariable])-1801
-b Fg(char)27 b(*)f(history_search_delimite)q(r_chars)195
-1777 y Fr(The)13 b(list)f(of)h(additional)e(c)o(haracters)h(whic)o(h)h
-(can)h(delimit)d(a)i(history)f(searc)o(h)h(string,)f(in)h(addition)195
-1831 y(to)i(space,)g(T)l(AB,)g(`)p Fq(:)p Fr(')f(and)h(`)p
-Fq(?)p Fr(')g(in)g(the)g(case)g(of)g(a)g(substring)f(searc)o(h.)20
-b(The)c(default)e(is)h(empt)o(y)l(.)1685 1944 y([V)l(ariable])-1801
-b Fg(char)27 b(*)f(history_no_expand_chars)195 1998 y
-Fr(The)15 b(list)f(of)g(c)o(haracters)g(whic)o(h)h(inhibit)f(history)g
-(expansion)h(if)f(found)i(immediately)d(follo)o(wing)195
-2053 y Fj(history)p 337 2053 V 19 w(expansion)p 552 2053
-V 20 w(c)o(har)s Fr(.)20 b(The)15 b(default)g(is)g(space,)g(tab,)f
-(newline,)h(carriage)f(return,)h(and)g(`)p Fq(=)p Fr('.)1685
-2165 y([V)l(ariable])-1801 b Fg(int)27 b(history_quotes_inhibit_exp)q
-(ansion)195 2220 y Fr(If)15 b(non-zero,)f(single-quoted)h(w)o(ords)e
-(are)i(not)f(scanned)h(for)f(the)h(history)f(expansion)g(c)o(haracter.)
-195 2275 y(The)h(default)g(v)m(alue)h(is)e(0.)1685 2387
-y([V)l(ariable])-1801 b Fg(rl_linebuf_func_t)29 b(*)d
-(history_inhibit_expansi)q(on_func)q(tion)195 2442 y
-Fr(This)16 b(should)h(b)q(e)g(set)g(to)f(the)g(address)h(of)f(a)h
-(function)f(that)g(tak)o(es)g(t)o(w)o(o)f(argumen)o(ts:)22
-b(a)17 b Fq(char)d(*)195 2497 y Fr(\()p Fj(string)t Fr(\))d(and)j(an)f
-Fq(int)g Fr(index)h(in)o(to)e(that)g(string)h(\()p Fj(i)r
-Fr(\).)18 b(It)c(should)f(return)g(a)g(non-zero)h(v)m(alue)f(if)g(the)
-195 2552 y(history)h(expansion)g(starting)f(at)h Fj(string[i])g
-Fr(should)h(not)f(b)q(e)h(p)q(erformed;)g(zero)f(if)g(the)h(expansion)
-195 2606 y(should)h(b)q(e)h(done.)22 b(It)16 b(is)g(in)o(tended)g(for)f
-(use)i(b)o(y)f(applications)e(lik)o(e)h(Bash)h(that)g(use)g(the)g
-(history)195 2661 y(expansion)f(c)o(haracter)g(for)f(additional)g(purp)
-q(oses.)20 b(By)c(default,)e(this)h(v)m(ariable)f(is)h(set)g(to)f
-Fq(NULL)p Fr(.)p eop end
-%%Page: 10 13
-TeXDict begin 10 12 bop 75 -58 a Fr(Chapter)15 b(2:)k(Programming)14
-b(with)g(GNU)h(History)866 b(10)75 149 y Fp(2.5)33 b(History)21
-b(Programming)h(Example)75 229 y Fr(The)15 b(follo)o(wing)e(program)h
-(demonstrates)h(simple)g(use)g(of)g(the)g Fk(gnu)g Fr(History)f
-(Library)l(.)195 316 y Fe(#include)j(<stdio.h)o(>)195
-360 y(#include)g(<readlin)o(e/h)o(is)o(tor)o(y.h)o(>)195
-447 y(main)h(\(argc,)f(argv\))293 491 y(int)i(argc;)293
-534 y(char)f(**argv;)195 578 y({)234 621 y(char)g(line[1024])o(,)f(*t;)
-234 665 y(int)i(len,)f(done)g(=)h(0;)234 752 y(line[0])e(=)i(0;)234
-839 y(using_hist)o(ory)d(\(\);)234 883 y(while)i(\(!done\))273
-927 y({)313 970 y(printf)f(\("history)o($)g("\);)313
-1014 y(fflush)g(\(stdout\);)313 1057 y(t)i(=)g(fgets)f(\(line,)f
-(sizeof)g(\(line\))h(-)h(1,)g(stdin\);)313 1101 y(if)g(\(t)f(&&)h(*t\))
-352 1144 y({)391 1188 y(len)g(=)g(strlen)e(\(t\);)391
-1232 y(if)i(\(t[len)e(-)i(1])g(==)g('\\n'\))430 1275
-y(t[len)f(-)h(1])g(=)g('\\0';)352 1319 y(})313 1406 y(if)g(\(!t\))352
-1450 y(strcpy)e(\(line,)g("quit"\);)313 1537 y(if)i(\(line[0])o(\))352
-1580 y({)391 1624 y(char)f(*expansion)o(;)391 1667 y(int)h(result;)391
-1755 y(result)e(=)j(history_e)o(xp)o(and)c(\(line,)h(&expansion)o(\);)
-391 1798 y(if)i(\(result\))430 1842 y(fprintf)e(\(stderr,)g
-("\045s\\n",)g(expansion)o(\);)391 1929 y(if)i(\(result)e(<)i(0)g(||)g
-(result)e(==)i(2\))430 1973 y({)470 2016 y(free)f(\(expansio)o(n\))o(;)
-470 2060 y(continue)o(;)430 2103 y(})391 2191 y(add_histor)o(y)e
-(\(expansion\))o(;)391 2234 y(strncpy)h(\(line,)g(expansion,)f(sizeof)h
-(\(line\))h(-)h(1\);)391 2278 y(free)f(\(expansion)o(\);)352
-2321 y(})313 2408 y(if)h(\(strcmp)d(\(line,)i("quit"\))f(==)h(0\))352
-2452 y(done)g(=)h(1;)313 2496 y(else)f(if)h(\(strcmp)d(\(line,)i
-("save"\))f(==)i(0\))352 2539 y(write_his)o(tor)o(y)d(\("history_f)o
-(il)o(e"\))o(;)313 2583 y(else)i(if)h(\(strcmp)d(\(line,)i("read"\))f
-(==)i(0\))352 2626 y(read_hist)o(ory)d(\("history)o(_fi)o(le)o("\);)313
-2670 y(else)i(if)h(\(strcmp)d(\(line,)i("list"\))f(==)i(0\))p
-eop end
-%%Page: 11 14
-TeXDict begin 11 13 bop 75 -58 a Fr(Chapter)15 b(2:)k(Programming)14
-b(with)g(GNU)h(History)866 b(11)352 149 y Fe({)391 193
-y(register)17 b(HIST_ENTR)o(Y)f(**the_list;)391 237 y(register)h(int)h
-(i;)391 324 y(the_list)f(=)i(history_l)o(ist)d(\(\);)391
-367 y(if)j(\(the_list)o(\))430 411 y(for)g(\(i)g(=)g(0;)g(the_list[)o
-(i])o(;)e(i++\))470 455 y(printf)g(\("\045d:)h(\045s\\n",)f(i)i(+)g
-(history_ba)o(se,)d(the_list[)o(i]-)o(>li)o(ne)o(\);)352
-498 y(})313 542 y(else)i(if)h(\(strncmp)d(\(line,)h("delete",)g(6\))h
-(==)h(0\))352 585 y({)391 629 y(int)g(which;)391 672
-y(if)g(\(\(sscanf)d(\(line)i(+)h(6,)g("\045d",)f(&which\)\))e(==)j(1\))
-430 716 y({)470 760 y(HIST_ENT)o(RY)d(*entry)i(=)h(remove_hi)o(sto)o
-(ry)d(\(which\);)470 803 y(if)i(\(!entry\))509 847 y(fprintf)f
-(\(stderr,)f("No)j(such)f(entry)f(\045d\\n",)h(which\);)470
-890 y(else)509 934 y({)548 978 y(free)g(\(entry->li)o(ne)o(\);)548
-1021 y(free)g(\(entry\);)509 1065 y(})430 1108 y(})391
-1152 y(else)430 1196 y({)470 1239 y(fprintf)e(\(stderr,)h("non-numer)o
-(ic)f(arg)i(given)g(to)h(`delete'\\n)o("\))o(;)430 1283
-y(})352 1326 y(})273 1370 y(})195 1413 y(})p eop end
-%%Page: 12 15
-TeXDict begin 12 14 bop 75 -58 a Fr(App)q(endix)16 b(A:)f(GNU)g(F)l
-(ree)g(Do)q(cumen)o(tation)g(License)802 b(12)75 149
-y Fn(App)r(endix)26 b(A)41 b(GNU)27 b(F)-7 b(ree)26 b(Do)r(cumen)n
-(tation)j(License)679 251 y Fr(V)l(ersion)15 b(1.3,)f(3)h(No)o(v)o(em)o
-(b)q(er)g(2008)195 318 y(Cop)o(yrigh)o(t)421 317 y(c)409
-318 y Fo(\015)g Fr(2000,)f(2001,)f(2002,)h(2007,)g(2008)g(F)l(ree)h
-(Soft)o(w)o(are)f(F)l(oundation,)g(Inc.)195 373 y Fq(http://fsf.org/)
-195 482 y Fr(Ev)o(ery)o(one)h(is)f(p)q(ermitted)h(to)g(cop)o(y)g(and)g
-(distribute)g(v)o(erbatim)f(copies)195 537 y(of)h(this)f(license)i(do)q
-(cumen)o(t,)f(but)g(c)o(hanging)g(it)f(is)h(not)g(allo)o(w)o(ed.)100
-603 y(0.)29 b(PREAMBLE)165 670 y(The)19 b(purp)q(ose)g(of)f(this)g
-(License)i(is)e(to)g(mak)o(e)g(a)g(man)o(ual,)g(textb)q(o)q(ok,)h(or)f
-(other)g(functional)g(and)165 725 y(useful)d(do)q(cumen)o(t)h
-Fj(free)h Fr(in)e(the)g(sense)h(of)f(freedom:)k(to)c(assure)g(ev)o(ery)
-o(one)f(the)i(e\013ectiv)o(e)e(freedom)165 780 y(to)h(cop)o(y)h(and)g
-(redistribute)f(it,)f(with)h(or)g(without)g(mo)q(difying)g(it,)g
-(either)g(commercially)f(or)i(non-)165 834 y(commercially)l(.)25
-b(Secondarily)l(,)17 b(this)g(License)h(preserv)o(es)f(for)g(the)g
-(author)g(and)h(publisher)f(a)g(w)o(a)o(y)165 889 y(to)g(get)h(credit)g
-(for)f(their)h(w)o(ork,)f(while)h(not)g(b)q(eing)g(considered)g(resp)q
-(onsible)g(for)g(mo)q(di\014cations)165 944 y(made)d(b)o(y)g(others.)
-165 1010 y(This)c(License)i(is)e(a)g(kind)h(of)f(\\cop)o(yleft",)f
-(whic)o(h)i(means)f(that)g(deriv)m(ativ)o(e)g(w)o(orks)g(of)g(the)h(do)
-q(cumen)o(t)165 1065 y(m)o(ust)k(themselv)o(es)h(b)q(e)h(free)e(in)h
-(the)g(same)g(sense.)26 b(It)16 b(complemen)o(ts)h(the)g(GNU)g(General)
-f(Public)165 1120 y(License,)g(whic)o(h)f(is)f(a)h(cop)o(yleft)g
-(license)g(designed)g(for)g(free)g(soft)o(w)o(are.)165
-1187 y(W)l(e)g(ha)o(v)o(e)f(designed)h(this)g(License)g(in)g(order)f
-(to)g(use)h(it)f(for)h(man)o(uals)e(for)h(free)h(soft)o(w)o(are,)e(b)q
-(ecause)165 1241 y(free)21 b(soft)o(w)o(are)e(needs)j(free)f(do)q
-(cumen)o(tation:)31 b(a)21 b(free)g(program)f(should)h(come)g(with)g
-(man)o(uals)165 1296 y(pro)o(viding)13 b(the)i(same)f(freedoms)g(that)g
-(the)g(soft)o(w)o(are)f(do)q(es.)20 b(But)14 b(this)g(License)h(is)f
-(not)g(limited)g(to)165 1351 y(soft)o(w)o(are)g(man)o(uals;)g(it)g(can)
-i(b)q(e)g(used)g(for)e(an)o(y)h(textual)g(w)o(ork,)f(regardless)g(of)h
-(sub)s(ject)g(matter)f(or)165 1406 y(whether)i(it)f(is)g(published)h
-(as)g(a)f(prin)o(ted)h(b)q(o)q(ok.)21 b(W)l(e)16 b(recommend)g(this)f
-(License)i(principally)e(for)165 1461 y(w)o(orks)f(whose)h(purp)q(ose)h
-(is)f(instruction)f(or)h(reference.)100 1527 y(1.)29
-b(APPLICABILITY)17 b(AND)e(DEFINITIONS)165 1594 y(This)20
-b(License)g(applies)g(to)f(an)o(y)h(man)o(ual)f(or)g(other)h(w)o(ork,)g
-(in)g(an)o(y)f(medium,)i(that)e(con)o(tains)g(a)165 1648
-y(notice)h(placed)h(b)o(y)g(the)g(cop)o(yrigh)o(t)e(holder)i(sa)o(ying)
-f(it)g(can)h(b)q(e)g(distributed)f(under)i(the)f(terms)165
-1703 y(of)d(this)g(License.)32 b(Suc)o(h)19 b(a)g(notice)f(gran)o(ts)f
-(a)i(w)o(orld-wide,)f(ro)o(y)o(alt)o(y-free)f(license,)i(unlimited)f
-(in)165 1758 y(duration,)23 b(to)f(use)h(that)f(w)o(ork)g(under)h(the)g
-(conditions)f(stated)g(herein.)42 b(The)23 b(\\Do)q(cumen)o(t",)165
-1813 y(b)q(elo)o(w,)14 b(refers)g(to)f(an)o(y)h(suc)o(h)g(man)o(ual)g
-(or)f(w)o(ork.)19 b(An)o(y)14 b(mem)o(b)q(er)h(of)e(the)i(public)f(is)g
-(a)g(licensee,)g(and)165 1868 y(is)e(addressed)h(as)f(\\y)o(ou".)18
-b(Y)l(ou)13 b(accept)g(the)f(license)h(if)f(y)o(ou)g(cop)o(y)l(,)h(mo)q
-(dify)f(or)g(distribute)f(the)i(w)o(ork)165 1922 y(in)i(a)g(w)o(a)o(y)f
-(requiring)h(p)q(ermission)f(under)i(cop)o(yrigh)o(t)e(la)o(w.)165
-1989 y(A)j(\\Mo)q(di\014ed)g(V)l(ersion")f(of)g(the)h(Do)q(cumen)o(t)g
-(means)g(an)o(y)f(w)o(ork)g(con)o(taining)g(the)h(Do)q(cumen)o(t)f(or)
-165 2044 y(a)i(p)q(ortion)g(of)h(it,)f(either)h(copied)g(v)o(erbatim,)f
-(or)g(with)g(mo)q(di\014cations)g(and/or)g(translated)g(in)o(to)165
-2099 y(another)d(language.)165 2165 y(A)e(\\Secondary)g(Section")g(is)f
-(a)h(named)g(app)q(endix)h(or)e(a)h(fron)o(t-matter)e(section)h(of)h
-(the)g(Do)q(cumen)o(t)165 2220 y(that)d(deals)g(exclusiv)o(ely)g(with)g
-(the)h(relationship)e(of)i(the)f(publishers)h(or)f(authors)g(of)g(the)h
-(Do)q(cumen)o(t)165 2275 y(to)18 b(the)h(Do)q(cumen)o(t's)f(o)o(v)o
-(erall)f(sub)s(ject)h(\(or)g(to)g(related)g(matters\))f(and)i(con)o
-(tains)f(nothing)g(that)165 2329 y(could)i(fall)f(directly)h(within)f
-(that)g(o)o(v)o(erall)g(sub)s(ject.)34 b(\(Th)o(us,)21
-b(if)f(the)g(Do)q(cumen)o(t)g(is)g(in)g(part)f(a)165
-2384 y(textb)q(o)q(ok)12 b(of)f(mathematics,)g(a)g(Secondary)h(Section)
-g(ma)o(y)f(not)h(explain)f(an)o(y)h(mathematics.\))17
-b(The)165 2439 y(relationship)12 b(could)i(b)q(e)g(a)g(matter)e(of)i
-(historical)d(connection)j(with)f(the)h(sub)s(ject)f(or)h(with)f
-(related)165 2494 y(matters,)k(or)g(of)g(legal,)g(commercial,)g
-(philosophical,)g(ethical)g(or)g(p)q(olitical)f(p)q(osition)h
-(regarding)165 2549 y(them.)165 2615 y(The)c(\\In)o(v)m(arian)o(t)f
-(Sections")g(are)h(certain)f(Secondary)h(Sections)g(whose)g(titles)e
-(are)i(designated,)f(as)165 2670 y(b)q(eing)i(those)f(of)g(In)o(v)m
-(arian)o(t)f(Sections,)h(in)h(the)f(notice)g(that)f(sa)o(ys)h(that)g
-(the)g(Do)q(cumen)o(t)g(is)g(released)p eop end
-%%Page: 13 16
-TeXDict begin 13 15 bop 75 -58 a Fr(App)q(endix)16 b(A:)f(GNU)g(F)l
-(ree)g(Do)q(cumen)o(tation)g(License)802 b(13)165 149
-y(under)15 b(this)e(License.)20 b(If)14 b(a)g(section)f(do)q(es)h(not)g
-(\014t)f(the)h(ab)q(o)o(v)o(e)g(de\014nition)g(of)f(Secondary)h(then)g
-(it)f(is)165 204 y(not)j(allo)o(w)o(ed)e(to)h(b)q(e)i(designated)f(as)f
-(In)o(v)m(arian)o(t.)21 b(The)c(Do)q(cumen)o(t)e(ma)o(y)h(con)o(tain)f
-(zero)h(In)o(v)m(arian)o(t)165 259 y(Sections.)j(If)12
-b(the)h(Do)q(cumen)o(t)f(do)q(es)h(not)f(iden)o(tify)f(an)o(y)h(In)o(v)
-m(arian)o(t)g(Sections)g(then)h(there)f(are)g(none.)165
-334 y(The)19 b(\\Co)o(v)o(er)e(T)l(exts")g(are)h(certain)g(short)g
-(passages)g(of)f(text)h(that)g(are)g(listed,)g(as)g(F)l(ron)o(t-Co)o(v)
-o(er)165 389 y(T)l(exts)12 b(or)g(Bac)o(k-Co)o(v)o(er)g(T)l(exts,)g(in)
-h(the)f(notice)g(that)g(sa)o(ys)g(that)g(the)g(Do)q(cumen)o(t)h(is)f
-(released)g(under)165 444 y(this)g(License.)20 b(A)13
-b(F)l(ron)o(t-Co)o(v)o(er)e(T)l(ext)i(ma)o(y)f(b)q(e)i(at)e(most)g(5)h
-(w)o(ords,)f(and)h(a)g(Bac)o(k-Co)o(v)o(er)f(T)l(ext)h(ma)o(y)165
-499 y(b)q(e)j(at)e(most)h(25)f(w)o(ords.)165 574 y(A)k(\\T)l(ransparen)
-o(t")e(cop)o(y)i(of)f(the)h(Do)q(cumen)o(t)g(means)f(a)h(mac)o
-(hine-readable)f(cop)o(y)l(,)h(represen)o(ted)165 629
-y(in)g(a)f(format)g(whose)g(sp)q(eci\014cation)h(is)g(a)o(v)m(ailable)e
-(to)h(the)h(general)g(public,)g(that)f(is)g(suitable)h(for)165
-684 y(revising)d(the)h(do)q(cumen)o(t)g(straigh)o(tforw)o(ardly)d(with)
-i(generic)h(text)f(editors)g(or)g(\(for)g(images)g(com-)165
-738 y(p)q(osed)d(of)g(pixels\))f(generic)h(pain)o(t)f(programs)g(or)g
-(\(for)g(dra)o(wings\))g(some)g(widely)g(a)o(v)m(ailable)g(dra)o(wing)
-165 793 y(editor,)j(and)g(that)g(is)g(suitable)g(for)g(input)g(to)g
-(text)g(formatters)f(or)h(for)g(automatic)f(translation)g(to)165
-848 y(a)g(v)m(ariet)o(y)g(of)g(formats)f(suitable)g(for)h(input)h(to)e
-(text)h(formatters.)18 b(A)13 b(cop)o(y)h(made)f(in)g(an)h(otherwise)
-165 903 y(T)l(ransparen)o(t)k(\014le)h(format)e(whose)i(markup,)g(or)g
-(absence)g(of)g(markup,)g(has)f(b)q(een)i(arranged)f(to)165
-958 y(th)o(w)o(art)12 b(or)g(discourage)h(subsequen)o(t)h(mo)q
-(di\014cation)f(b)o(y)g(readers)g(is)g(not)g(T)l(ransparen)o(t.)18
-b(An)c(image)165 1012 y(format)i(is)h(not)f(T)l(ransparen)o(t)h(if)g
-(used)g(for)g(an)o(y)g(substan)o(tial)e(amoun)o(t)i(of)f(text.)26
-b(A)17 b(cop)o(y)g(that)f(is)165 1067 y(not)f(\\T)l(ransparen)o(t")f
-(is)h(called)f(\\Opaque".)165 1143 y(Examples)26 b(of)g(suitable)g
-(formats)f(for)h(T)l(ransparen)o(t)g(copies)g(include)h(plain)f
-Fk(asci)q(i)g Fr(without)165 1197 y(markup,)18 b(T)l(exinfo)g(input)g
-(format,)f(LaT)879 1207 y(E)905 1197 y(X)h(input)g(format,)f
-Fd(SGML)h Fr(or)f Fd(XML)i Fr(using)e(a)h(publicly)165
-1252 y(a)o(v)m(ailable)h Fd(DTD)p Fr(,)g(and)h(standard-conforming)f
-(simple)g Fd(HTML)p Fr(,)h(P)o(ostScript)f(or)g Fd(PDF)i
-Fr(designed)165 1307 y(for)e(h)o(uman)g(mo)q(di\014cation.)31
-b(Examples)19 b(of)f(transparen)o(t)h(image)f(formats)g(include)h
-Fd(PNG)p Fr(,)g Fd(X)o(CF)165 1362 y Fr(and)i Fd(JPG)p
-Fr(.)f(Opaque)h(formats)e(include)i(proprietary)e(formats)g(that)g(can)
-i(b)q(e)g(read)f(and)h(edited)165 1417 y(only)26 b(b)o(y)h(proprietary)
-f(w)o(ord)g(pro)q(cessors,)j Fd(SGML)d Fr(or)h Fd(XML)g
-Fr(for)f(whic)o(h)g(the)h Fd(DTD)g Fr(and/or)165 1471
-y(pro)q(cessing)j(to)q(ols)g(are)g(not)g(generally)g(a)o(v)m(ailable,)i
-(and)f(the)g(mac)o(hine-generated)f Fd(HTML)p Fr(,)165
-1526 y(P)o(ostScript)14 b(or)h Fd(PDF)g Fr(pro)q(duced)h(b)o(y)f(some)g
-(w)o(ord)g(pro)q(cessors)g(for)f(output)h(purp)q(oses)h(only)l(.)165
-1601 y(The)h(\\Title)f(P)o(age")g(means,)i(for)e(a)h(prin)o(ted)g(b)q
-(o)q(ok,)g(the)g(title)f(page)h(itself,)g(plus)g(suc)o(h)g(follo)o
-(wing)165 1656 y(pages)d(as)f(are)h(needed)h(to)e(hold,)h(legibly)l(,)e
-(the)i(material)e(this)i(License)g(requires)g(to)f(app)q(ear)h(in)g
-(the)165 1711 y(title)e(page.)19 b(F)l(or)13 b(w)o(orks)f(in)h(formats)
-f(whic)o(h)h(do)g(not)g(ha)o(v)o(e)g(an)o(y)g(title)f(page)h(as)g(suc)o
-(h,)h(\\Title)e(P)o(age")165 1766 y(means)j(the)h(text)e(near)i(the)f
-(most)g(prominen)o(t)f(app)q(earance)i(of)f(the)g(w)o(ork's)f(title,)g
-(preceding)i(the)165 1821 y(b)q(eginning)f(of)g(the)g(b)q(o)q(dy)h(of)f
-(the)g(text.)165 1896 y(The)j(\\publisher")e(means)i(an)o(y)f(p)q
-(erson)g(or)g(en)o(tit)o(y)f(that)h(distributes)g(copies)g(of)g(the)g
-(Do)q(cumen)o(t)165 1951 y(to)e(the)g(public.)165 2026
-y(A)g(section)f(\\En)o(titled)g(XYZ")g(means)h(a)g(named)g(subunit)g
-(of)f(the)h(Do)q(cumen)o(t)g(whose)g(title)e(either)165
-2081 y(is)g(precisely)h(XYZ)g(or)f(con)o(tains)g(XYZ)h(in)g(paren)o
-(theses)g(follo)o(wing)d(text)j(that)f(translates)f(XYZ)i(in)165
-2136 y(another)e(language.)18 b(\(Here)13 b(XYZ)f(stands)g(for)g(a)g
-(sp)q(eci\014c)i(section)e(name)g(men)o(tioned)g(b)q(elo)o(w,)h(suc)o
-(h)165 2191 y(as)h(\\Ac)o(kno)o(wledgemen)o(ts",)e(\\Dedications",)h
-(\\Endorsemen)o(ts",)g(or)g(\\History".\))18 b(T)l(o)13
-b(\\Preserv)o(e)165 2245 y(the)k(Title")e(of)i(suc)o(h)g(a)f(section)h
-(when)g(y)o(ou)f(mo)q(dify)h(the)g(Do)q(cumen)o(t)f(means)h(that)f(it)g
-(remains)g(a)165 2300 y(section)f(\\En)o(titled)f(XYZ")g(according)h
-(to)g(this)f(de\014nition.)165 2375 y(The)g(Do)q(cumen)o(t)g(ma)o(y)f
-(include)h(W)l(arran)o(t)o(y)e(Disclaimers)g(next)i(to)g(the)g(notice)f
-(whic)o(h)h(states)f(that)165 2430 y(this)j(License)i(applies)f(to)f
-(the)h(Do)q(cumen)o(t.)25 b(These)17 b(W)l(arran)o(t)o(y)e(Disclaimers)
-h(are)g(considered)i(to)165 2485 y(b)q(e)h(included)h(b)o(y)f
-(reference)g(in)g(this)f(License,)i(but)f(only)f(as)h(regards)f
-(disclaiming)f(w)o(arran)o(ties:)165 2540 y(an)o(y)h(other)g
-(implication)f(that)h(these)g(W)l(arran)o(t)o(y)f(Disclaimers)g(ma)o(y)
-g(ha)o(v)o(e)h(is)g(v)o(oid)g(and)h(has)f(no)165 2595
-y(e\013ect)d(on)g(the)g(meaning)g(of)g(this)g(License.)100
-2670 y(2.)29 b(VERBA)l(TIM)16 b(COPYING)p eop end
-%%Page: 14 17
-TeXDict begin 14 16 bop 75 -58 a Fr(App)q(endix)16 b(A:)f(GNU)g(F)l
-(ree)g(Do)q(cumen)o(tation)g(License)802 b(14)165 149
-y(Y)l(ou)19 b(ma)o(y)g(cop)o(y)f(and)i(distribute)e(the)h(Do)q(cumen)o
-(t)g(in)g(an)o(y)g(medium,)g(either)g(commercially)e(or)165
-204 y(noncommercially)l(,)k(pro)o(vided)g(that)g(this)g(License,)i(the)
-e(cop)o(yrigh)o(t)f(notices,)i(and)g(the)f(license)165
-259 y(notice)d(sa)o(ying)e(this)i(License)g(applies)g(to)f(the)h(Do)q
-(cumen)o(t)g(are)f(repro)q(duced)i(in)f(all)f(copies,)h(and)165
-314 y(that)13 b(y)o(ou)g(add)g(no)g(other)g(conditions)g(whatso)q(ev)o
-(er)f(to)h(those)g(of)g(this)g(License.)20 b(Y)l(ou)13
-b(ma)o(y)g(not)g(use)165 369 y(tec)o(hnical)j(measures)g(to)g(obstruct)
-g(or)g(con)o(trol)f(the)h(reading)g(or)g(further)h(cop)o(ying)f(of)g
-(the)g(copies)165 423 y(y)o(ou)c(mak)o(e)g(or)f(distribute.)19
-b(Ho)o(w)o(ev)o(er,)11 b(y)o(ou)h(ma)o(y)g(accept)g(comp)q(ensation)g
-(in)g(exc)o(hange)h(for)e(copies.)165 478 y(If)16 b(y)o(ou)g
-(distribute)f(a)h(large)f(enough)i(n)o(um)o(b)q(er)f(of)g(copies)g(y)o
-(ou)g(m)o(ust)f(also)g(follo)o(w)g(the)h(conditions)165
-533 y(in)f(section)g(3.)165 600 y(Y)l(ou)c(ma)o(y)e(also)h(lend)g
-(copies,)h(under)g(the)g(same)f(conditions)f(stated)h(ab)q(o)o(v)o(e,)h
-(and)f(y)o(ou)g(ma)o(y)g(publicly)165 655 y(displa)o(y)k(copies.)100
-722 y(3.)29 b(COPYING)16 b(IN)f(QUANTITY)165 789 y(If)e(y)o(ou)f
-(publish)h(prin)o(ted)f(copies)h(\(or)e(copies)i(in)f(media)h(that)e
-(commonly)h(ha)o(v)o(e)g(prin)o(ted)h(co)o(v)o(ers\))e(of)165
-844 y(the)16 b(Do)q(cumen)o(t,)g(n)o(um)o(b)q(ering)f(more)h(than)g
-(100,)e(and)i(the)g(Do)q(cumen)o(t's)g(license)g(notice)f(requires)165
-898 y(Co)o(v)o(er)h(T)l(exts,)h(y)o(ou)g(m)o(ust)g(enclose)g(the)g
-(copies)g(in)g(co)o(v)o(ers)g(that)f(carry)l(,)h(clearly)f(and)i
-(legibly)l(,)e(all)165 953 y(these)k(Co)o(v)o(er)e(T)l(exts:)29
-b(F)l(ron)o(t-Co)o(v)o(er)18 b(T)l(exts)h(on)g(the)h(fron)o(t)f(co)o(v)
-o(er,)g(and)h(Bac)o(k-Co)o(v)o(er)f(T)l(exts)g(on)165
-1008 y(the)c(bac)o(k)f(co)o(v)o(er.)19 b(Both)14 b(co)o(v)o(ers)g(m)o
-(ust)g(also)g(clearly)g(and)g(legibly)g(iden)o(tify)g(y)o(ou)g(as)g
-(the)h(publisher)165 1063 y(of)i(these)g(copies.)26 b(The)17
-b(fron)o(t)f(co)o(v)o(er)h(m)o(ust)f(presen)o(t)i(the)f(full)f(title)g
-(with)h(all)f(w)o(ords)g(of)h(the)g(title)165 1117 y(equally)e
-(prominen)o(t)g(and)g(visible.)20 b(Y)l(ou)c(ma)o(y)e(add)i(other)f
-(material)e(on)j(the)f(co)o(v)o(ers)g(in)g(addition.)165
-1172 y(Cop)o(ying)i(with)h(c)o(hanges)g(limited)f(to)g(the)h(co)o(v)o
-(ers,)g(as)g(long)f(as)h(they)g(preserv)o(e)g(the)g(title)f(of)h(the)
-165 1227 y(Do)q(cumen)o(t)g(and)h(satisfy)e(these)i(conditions,)f(can)h
-(b)q(e)g(treated)f(as)h(v)o(erbatim)e(cop)o(ying)h(in)g(other)165
-1282 y(resp)q(ects.)165 1349 y(If)f(the)f(required)h(texts)e(for)h
-(either)g(co)o(v)o(er)g(are)g(to)q(o)g(v)o(oluminous)f(to)h(\014t)g
-(legibly)l(,)f(y)o(ou)h(should)h(put)165 1404 y(the)g(\014rst)f(ones)g
-(listed)g(\(as)f(man)o(y)h(as)g(\014t)h(reasonably\))e(on)h(the)h
-(actual)f(co)o(v)o(er,)f(and)i(con)o(tin)o(ue)f(the)165
-1458 y(rest)f(on)o(to)f(adjacen)o(t)h(pages.)165 1525
-y(If)f(y)o(ou)f(publish)h(or)f(distribute)f(Opaque)j(copies)e(of)g(the)
-h(Do)q(cumen)o(t)f(n)o(um)o(b)q(ering)h(more)f(than)g(100,)165
-1580 y(y)o(ou)h(m)o(ust)f(either)h(include)g(a)g(mac)o(hine-readable)g
-(T)l(ransparen)o(t)f(cop)o(y)h(along)f(with)g(eac)o(h)h(Opaque)165
-1635 y(cop)o(y)l(,)k(or)f(state)g(in)g(or)g(with)g(eac)o(h)g(Opaque)i
-(cop)o(y)e(a)g(computer-net)o(w)o(ork)g(lo)q(cation)f(from)h(whic)o(h)
-165 1690 y(the)12 b(general)g(net)o(w)o(ork-using)f(public)h(has)g
-(access)g(to)g(do)o(wnload)f(using)h(public-standard)g(net)o(w)o(ork)
-165 1745 y(proto)q(cols)18 b(a)h(complete)h(T)l(ransparen)o(t)e(cop)o
-(y)i(of)f(the)g(Do)q(cumen)o(t,)h(free)g(of)f(added)h(material.)31
-b(If)165 1799 y(y)o(ou)19 b(use)h(the)f(latter)f(option,)i(y)o(ou)f(m)o
-(ust)g(tak)o(e)f(reasonably)h(pruden)o(t)h(steps,)g(when)g(y)o(ou)f(b)q
-(egin)165 1854 y(distribution)f(of)g(Opaque)i(copies)f(in)g(quan)o(tit)
-o(y)l(,)g(to)f(ensure)i(that)e(this)h(T)l(ransparen)o(t)f(cop)o(y)h
-(will)165 1909 y(remain)c(th)o(us)f(accessible)h(at)g(the)g(stated)g
-(lo)q(cation)e(un)o(til)i(at)f(least)g(one)i(y)o(ear)e(after)g(the)i
-(last)e(time)165 1964 y(y)o(ou)k(distribute)g(an)g(Opaque)h(cop)o(y)f
-(\(directly)g(or)g(through)g(y)o(our)g(agen)o(ts)f(or)h(retailers\))f
-(of)h(that)165 2019 y(edition)d(to)f(the)h(public.)165
-2086 y(It)i(is)g(requested,)h(but)f(not)g(required,)h(that)e(y)o(ou)h
-(con)o(tact)g(the)g(authors)g(of)f(the)i(Do)q(cumen)o(t)f(w)o(ell)165
-2140 y(b)q(efore)e(redistributing)e(an)o(y)h(large)f(n)o(um)o(b)q(er)i
-(of)e(copies,)h(to)g(giv)o(e)g(them)g(a)g(c)o(hance)h(to)e(pro)o(vide)h
-(y)o(ou)165 2195 y(with)h(an)g(up)q(dated)h(v)o(ersion)e(of)h(the)g(Do)
-q(cumen)o(t.)100 2262 y(4.)29 b(MODIFICA)l(TIONS)165
-2329 y(Y)l(ou)13 b(ma)o(y)f(cop)o(y)h(and)g(distribute)f(a)g(Mo)q
-(di\014ed)h(V)l(ersion)g(of)f(the)h(Do)q(cumen)o(t)f(under)i(the)f
-(conditions)165 2384 y(of)d(sections)g(2)g(and)h(3)f(ab)q(o)o(v)o(e,)h
-(pro)o(vided)f(that)g(y)o(ou)g(release)g(the)h(Mo)q(di\014ed)g(V)l
-(ersion)f(under)h(precisely)165 2439 y(this)j(License,)h(with)f(the)g
-(Mo)q(di\014ed)h(V)l(ersion)f(\014lling)g(the)h(role)e(of)i(the)f(Do)q
-(cumen)o(t,)g(th)o(us)h(licensing)165 2493 y(distribution)h(and)h(mo)q
-(di\014cation)f(of)h(the)g(Mo)q(di\014ed)g(V)l(ersion)g(to)f(who)q(ev)o
-(er)h(p)q(ossesses)h(a)e(cop)o(y)h(of)165 2548 y(it.)i(In)d(addition,)e
-(y)o(ou)h(m)o(ust)f(do)h(these)h(things)f(in)g(the)g(Mo)q(di\014ed)g(V)
-l(ersion:)178 2615 y(A.)30 b(Use)17 b(in)f(the)g(Title)f(P)o(age)h
-(\(and)g(on)h(the)f(co)o(v)o(ers,)g(if)f(an)o(y\))h(a)g(title)f
-(distinct)h(from)f(that)h(of)g(the)255 2670 y(Do)q(cumen)o(t,)h(and)g
-(from)f(those)h(of)f(previous)h(v)o(ersions)f(\(whic)o(h)g(should,)h
-(if)g(there)g(w)o(ere)f(an)o(y)l(,)p eop end
-%%Page: 15 18
-TeXDict begin 15 17 bop 75 -58 a Fr(App)q(endix)16 b(A:)f(GNU)g(F)l
-(ree)g(Do)q(cumen)o(tation)g(License)802 b(15)255 149
-y(b)q(e)16 b(listed)f(in)h(the)g(History)e(section)h(of)g(the)h(Do)q
-(cumen)o(t\).)21 b(Y)l(ou)16 b(ma)o(y)f(use)h(the)g(same)f(title)f(as)
-255 204 y(a)h(previous)g(v)o(ersion)f(if)h(the)g(original)e(publisher)j
-(of)f(that)f(v)o(ersion)g(giv)o(es)h(p)q(ermission.)180
-273 y(B.)30 b(List)15 b(on)g(the)g(Title)g(P)o(age,)f(as)h(authors,)f
-(one)h(or)g(more)g(p)q(ersons)g(or)g(en)o(tities)f(resp)q(onsible)i
-(for)255 328 y(authorship)d(of)f(the)h(mo)q(di\014cations)f(in)h(the)g
-(Mo)q(di\014ed)h(V)l(ersion,)f(together)f(with)g(at)h(least)f(\014v)o
-(e)255 382 y(of)g(the)g(principal)f(authors)g(of)h(the)g(Do)q(cumen)o
-(t)g(\(all)e(of)i(its)f(principal)g(authors,)h(if)f(it)g(has)h(few)o
-(er)255 437 y(than)j(\014v)o(e\),)g(unless)g(they)g(release)g(y)o(ou)g
-(from)f(this)h(requiremen)o(t.)180 506 y(C.)29 b(State)15
-b(on)g(the)h(Title)e(page)h(the)h(name)f(of)g(the)g(publisher)h(of)f
-(the)g(Mo)q(di\014ed)h(V)l(ersion,)f(as)g(the)255 560
-y(publisher.)178 629 y(D.)29 b(Preserv)o(e)15 b(all)f(the)h(cop)o
-(yrigh)o(t)f(notices)h(of)g(the)g(Do)q(cumen)o(t.)181
-697 y(E.)30 b(Add)16 b(an)g(appropriate)f(cop)o(yrigh)o(t)f(notice)h
-(for)g(y)o(our)g(mo)q(di\014cations)g(adjacen)o(t)h(to)f(the)g(other)
-255 752 y(cop)o(yrigh)o(t)f(notices.)183 821 y(F.)29
-b(Include,)15 b(immediately)e(after)g(the)h(cop)o(yrigh)o(t)e(notices,)
-i(a)f(license)h(notice)g(giving)f(the)h(public)255 875
-y(p)q(ermission)e(to)f(use)i(the)f(Mo)q(di\014ed)h(V)l(ersion)f(under)h
-(the)f(terms)g(of)f(this)h(License,)h(in)f(the)h(form)255
-930 y(sho)o(wn)i(in)g(the)g(Addendum)i(b)q(elo)o(w.)177
-999 y(G.)29 b(Preserv)o(e)11 b(in)g(that)g(license)g(notice)h(the)f
-(full)g(lists)f(of)h(In)o(v)m(arian)o(t)g(Sections)g(and)g(required)h
-(Co)o(v)o(er)255 1054 y(T)l(exts)j(giv)o(en)g(in)g(the)g(Do)q(cumen)o
-(t's)g(license)g(notice.)178 1122 y(H.)30 b(Include)16
-b(an)f(unaltered)h(cop)o(y)f(of)f(this)h(License.)196
-1191 y(I.)30 b(Preserv)o(e)16 b(the)g(section)g(En)o(titled)f
-(\\History",)f(Preserv)o(e)h(its)h(Title,)e(and)j(add)f(to)f(it)h(an)g
-(item)255 1245 y(stating)d(at)g(least)g(the)h(title,)f(y)o(ear,)g(new)i
-(authors,)e(and)h(publisher)g(of)g(the)g(Mo)q(di\014ed)g(V)l(ersion)255
-1300 y(as)h(giv)o(en)g(on)h(the)g(Title)e(P)o(age.)21
-b(If)16 b(there)g(is)f(no)h(section)f(En)o(titled)f(\\History")g(in)i
-(the)g(Do)q(cu-)255 1355 y(men)o(t,)h(create)g(one)h(stating)e(the)h
-(title,)g(y)o(ear,)g(authors,)g(and)g(publisher)h(of)f(the)g(Do)q
-(cumen)o(t)255 1410 y(as)h(giv)o(en)f(on)h(its)f(Title)g(P)o(age,)h
-(then)h(add)f(an)g(item)f(describing)h(the)g(Mo)q(di\014ed)g(V)l
-(ersion)g(as)255 1465 y(stated)d(in)g(the)g(previous)g(sen)o(tence.)189
-1533 y(J.)30 b(Preserv)o(e)16 b(the)g(net)o(w)o(ork)f(lo)q(cation,)g
-(if)h(an)o(y)l(,)g(giv)o(en)g(in)g(the)g(Do)q(cumen)o(t)g(for)g(public)
-g(access)h(to)255 1588 y(a)e(T)l(ransparen)o(t)g(cop)o(y)h(of)f(the)g
-(Do)q(cumen)o(t,)h(and)f(lik)o(ewise)g(the)g(net)o(w)o(ork)g(lo)q
-(cations)f(giv)o(en)h(in)255 1643 y(the)h(Do)q(cumen)o(t)g(for)f
-(previous)g(v)o(ersions)g(it)g(w)o(as)g(based)i(on.)k(These)c(ma)o(y)e
-(b)q(e)h(placed)g(in)g(the)255 1697 y(\\History")11 b(section.)18
-b(Y)l(ou)13 b(ma)o(y)f(omit)f(a)h(net)o(w)o(ork)g(lo)q(cation)f(for)h
-(a)g(w)o(ork)g(that)g(w)o(as)f(published)255 1752 y(at)17
-b(least)g(four)h(y)o(ears)f(b)q(efore)h(the)g(Do)q(cumen)o(t)g(itself,)
-f(or)g(if)h(the)f(original)f(publisher)i(of)g(the)255
-1807 y(v)o(ersion)c(it)h(refers)g(to)f(giv)o(es)h(p)q(ermission.)177
-1875 y(K.)30 b(F)l(or)11 b(an)o(y)h(section)f(En)o(titled)g(\\Ac)o(kno)
-o(wledgemen)o(ts")g(or)g(\\Dedications",)f(Preserv)o(e)i(the)g(Title)
-255 1930 y(of)h(the)g(section,)g(and)g(preserv)o(e)h(in)f(the)g
-(section)g(all)f(the)i(substance)f(and)h(tone)f(of)g(eac)o(h)g(of)g
-(the)255 1985 y(con)o(tributor)h(ac)o(kno)o(wledgemen)o(ts)g(and/or)h
-(dedications)f(giv)o(en)h(therein.)184 2054 y(L.)30 b(Preserv)o(e)17
-b(all)g(the)h(In)o(v)m(arian)o(t)f(Sections)g(of)h(the)f(Do)q(cumen)o
-(t,)h(unaltered)g(in)f(their)h(text)f(and)255 2108 y(in)h(their)f
-(titles.)27 b(Section)18 b(n)o(um)o(b)q(ers)g(or)g(the)g(equiv)m(alen)o
-(t)f(are)h(not)g(considered)g(part)f(of)h(the)255 2163
-y(section)d(titles.)171 2232 y(M.)29 b(Delete)15 b(an)o(y)g(section)g
-(En)o(titled)f(\\Endorsemen)o(ts".)20 b(Suc)o(h)c(a)f(section)g(ma)o(y)
-f(not)h(b)q(e)h(included)255 2286 y(in)f(the)g(Mo)q(di\014ed)h(V)l
-(ersion.)178 2355 y(N.)30 b(Do)14 b(not)f(retitle)g(an)o(y)h(existing)f
-(section)h(to)g(b)q(e)g(En)o(titled)g(\\Endorsemen)o(ts")f(or)h(to)f
-(con\015ict)h(in)255 2410 y(title)g(with)g(an)o(y)h(In)o(v)m(arian)o(t)
-g(Section.)177 2478 y(O.)30 b(Preserv)o(e)15 b(an)o(y)g(W)l(arran)o(t)o
-(y)e(Disclaimers.)165 2560 y(If)k(the)g(Mo)q(di\014ed)g(V)l(ersion)f
-(includes)h(new)g(fron)o(t-matter)e(sections)h(or)g(app)q(endices)i
-(that)e(qualify)165 2615 y(as)e(Secondary)g(Sections)g(and)g(con)o
-(tain)f(no)h(material)e(copied)i(from)f(the)h(Do)q(cumen)o(t,)g(y)o(ou)
-f(ma)o(y)h(at)165 2670 y(y)o(our)i(option)f(designate)h(some)g(or)f
-(all)g(of)h(these)h(sections)e(as)h(in)o(v)m(arian)o(t.)22
-b(T)l(o)15 b(do)i(this,)e(add)h(their)p eop end
-%%Page: 16 19
-TeXDict begin 16 18 bop 75 -58 a Fr(App)q(endix)16 b(A:)f(GNU)g(F)l
-(ree)g(Do)q(cumen)o(tation)g(License)802 b(16)165 149
-y(titles)16 b(to)h(the)h(list)f(of)g(In)o(v)m(arian)o(t)g(Sections)h
-(in)f(the)h(Mo)q(di\014ed)g(V)l(ersion's)f(license)h(notice.)27
-b(These)165 204 y(titles)14 b(m)o(ust)h(b)q(e)g(distinct)g(from)f(an)o
-(y)h(other)g(section)g(titles.)165 275 y(Y)l(ou)21 b(ma)o(y)g(add)g(a)g
-(section)g(En)o(titled)f(\\Endorsemen)o(ts",)h(pro)o(vided)g(it)g(con)o
-(tains)f(nothing)h(but)165 330 y(endorsemen)o(ts)15 b(of)f(y)o(our)h
-(Mo)q(di\014ed)g(V)l(ersion)f(b)o(y)h(v)m(arious)f(parties|for)g
-(example,)h(statemen)o(ts)e(of)165 385 y(p)q(eer)h(review)f(or)h(that)e
-(the)i(text)f(has)h(b)q(een)g(appro)o(v)o(ed)g(b)o(y)f(an)h
-(organization)d(as)j(the)f(authoritativ)o(e)165 440 y(de\014nition)i
-(of)g(a)g(standard.)165 511 y(Y)l(ou)f(ma)o(y)g(add)g(a)g(passage)g(of)
-f(up)i(to)e(\014v)o(e)i(w)o(ords)e(as)h(a)g(F)l(ron)o(t-Co)o(v)o(er)e
-(T)l(ext,)i(and)g(a)g(passage)g(of)f(up)165 566 y(to)g(25)g(w)o(ords)g
-(as)g(a)g(Bac)o(k-Co)o(v)o(er)g(T)l(ext,)g(to)g(the)g(end)i(of)e(the)g
-(list)g(of)g(Co)o(v)o(er)f(T)l(exts)i(in)f(the)h(Mo)q(di\014ed)165
-621 y(V)l(ersion.)28 b(Only)18 b(one)g(passage)f(of)h(F)l(ron)o(t-Co)o
-(v)o(er)e(T)l(ext)i(and)g(one)g(of)f(Bac)o(k-Co)o(v)o(er)g(T)l(ext)h
-(ma)o(y)f(b)q(e)165 675 y(added)d(b)o(y)g(\(or)f(through)g(arrangemen)o
-(ts)g(made)h(b)o(y\))f(an)o(y)h(one)g(en)o(tit)o(y)l(.)k(If)c(the)g(Do)
-q(cumen)o(t)g(already)165 730 y(includes)j(a)g(co)o(v)o(er)f(text)h
-(for)f(the)h(same)g(co)o(v)o(er,)f(previously)g(added)i(b)o(y)f(y)o(ou)
-g(or)f(b)o(y)h(arrangemen)o(t)165 785 y(made)h(b)o(y)f(the)h(same)f(en)
-o(tit)o(y)g(y)o(ou)g(are)g(acting)g(on)g(b)q(ehalf)h(of,)g(y)o(ou)f(ma)
-o(y)g(not)g(add)h(another;)g(but)165 840 y(y)o(ou)f(ma)o(y)f(replace)h
-(the)g(old)g(one,)g(on)g(explicit)f(p)q(ermission)g(from)h(the)g
-(previous)g(publisher)g(that)165 895 y(added)f(the)f(old)g(one.)165
-966 y(The)e(author\(s\))e(and)i(publisher\(s\))f(of)h(the)g(Do)q(cumen)
-o(t)f(do)h(not)f(b)o(y)h(this)f(License)i(giv)o(e)e(p)q(ermission)165
-1021 y(to)j(use)g(their)g(names)g(for)f(publicit)o(y)h(for)f(or)h(to)f
-(assert)h(or)f(imply)h(endorsemen)o(t)g(of)g(an)o(y)g(Mo)q(di\014ed)165
-1075 y(V)l(ersion.)100 1147 y(5.)29 b(COMBINING)16 b(DOCUMENTS)165
-1218 y(Y)l(ou)k(ma)o(y)e(com)o(bine)h(the)h(Do)q(cumen)o(t)f(with)g
-(other)g(do)q(cumen)o(ts)g(released)h(under)g(this)f(License,)165
-1273 y(under)h(the)f(terms)g(de\014ned)h(in)f(section)g(4)f(ab)q(o)o(v)
-o(e)h(for)g(mo)q(di\014ed)g(v)o(ersions,)g(pro)o(vided)g(that)f(y)o(ou)
-165 1328 y(include)13 b(in)f(the)h(com)o(bination)f(all)f(of)h(the)h
-(In)o(v)m(arian)o(t)f(Sections)h(of)f(all)f(of)i(the)f(original)f(do)q
-(cumen)o(ts,)165 1382 y(unmo)q(di\014ed,)j(and)g(list)e(them)h(all)g
-(as)g(In)o(v)m(arian)o(t)f(Sections)i(of)f(y)o(our)f(com)o(bined)i(w)o
-(ork)e(in)h(its)g(license)165 1437 y(notice,)h(and)i(that)e(y)o(ou)h
-(preserv)o(e)g(all)g(their)f(W)l(arran)o(t)o(y)g(Disclaimers.)165
-1508 y(The)h(com)o(bined)h(w)o(ork)e(need)i(only)e(con)o(tain)h(one)g
-(cop)o(y)g(of)g(this)f(License,)i(and)f(m)o(ultiple)f(iden)o(tical)165
-1563 y(In)o(v)m(arian)o(t)i(Sections)g(ma)o(y)f(b)q(e)i(replaced)g
-(with)e(a)h(single)g(cop)o(y)l(.)23 b(If)16 b(there)h(are)f(m)o
-(ultiple)f(In)o(v)m(arian)o(t)165 1618 y(Sections)e(with)g(the)g(same)g
-(name)h(but)f(di\013eren)o(t)g(con)o(ten)o(ts,)g(mak)o(e)g(the)g(title)
-f(of)h(eac)o(h)h(suc)o(h)f(section)165 1673 y(unique)18
-b(b)o(y)e(adding)h(at)g(the)g(end)g(of)g(it,)f(in)h(paren)o(theses,)g
-(the)g(name)g(of)g(the)g(original)e(author)h(or)165 1728
-y(publisher)d(of)f(that)g(section)g(if)g(kno)o(wn,)g(or)g(else)g(a)h
-(unique)g(n)o(um)o(b)q(er.)19 b(Mak)o(e)12 b(the)g(same)h(adjustmen)o
-(t)165 1782 y(to)f(the)g(section)g(titles)f(in)h(the)g(list)f(of)h(In)o
-(v)m(arian)o(t)f(Sections)h(in)g(the)h(license)f(notice)g(of)g(the)g
-(com)o(bined)165 1837 y(w)o(ork.)165 1908 y(In)21 b(the)g(com)o
-(bination,)f(y)o(ou)h(m)o(ust)f(com)o(bine)g(an)o(y)g(sections)h(En)o
-(titled)e(\\History")g(in)i(the)f(v)m(ari-)165 1963 y(ous)c(original)e
-(do)q(cumen)o(ts,)i(forming)f(one)i(section)e(En)o(titled)g
-(\\History";)g(lik)o(ewise)f(com)o(bine)i(an)o(y)165
-2018 y(sections)f(En)o(titled)g(\\Ac)o(kno)o(wledgemen)o(ts",)g(and)h
-(an)o(y)f(sections)h(En)o(titled)e(\\Dedications".)21
-b(Y)l(ou)165 2073 y(m)o(ust)15 b(delete)g(all)f(sections)h(En)o(titled)
-f(\\Endorsemen)o(ts.")100 2144 y(6.)29 b(COLLECTIONS)17
-b(OF)e(DOCUMENTS)165 2215 y(Y)l(ou)h(ma)o(y)f(mak)o(e)h(a)f(collection)
-g(consisting)g(of)g(the)h(Do)q(cumen)o(t)g(and)g(other)g(do)q(cumen)o
-(ts)g(released)165 2270 y(under)22 b(this)f(License,)i(and)e(replace)g
-(the)g(individual)g(copies)g(of)g(this)f(License)i(in)f(the)g(v)m
-(arious)165 2325 y(do)q(cumen)o(ts)h(with)e(a)h(single)g(cop)o(y)g
-(that)f(is)h(included)h(in)f(the)g(collection,)h(pro)o(vided)f(that)f
-(y)o(ou)165 2380 y(follo)o(w)d(the)h(rules)h(of)f(this)g(License)h(for)
-f(v)o(erbatim)f(cop)o(ying)h(of)g(eac)o(h)h(of)f(the)h(do)q(cumen)o(ts)
-g(in)f(all)165 2434 y(other)d(resp)q(ects.)165 2506 y(Y)l(ou)h(ma)o(y)f
-(extract)g(a)g(single)g(do)q(cumen)o(t)h(from)f(suc)o(h)h(a)g
-(collection,)e(and)i(distribute)f(it)g(individu-)165
-2560 y(ally)h(under)j(this)e(License,)h(pro)o(vided)f(y)o(ou)g(insert)g
-(a)h(cop)o(y)f(of)g(this)g(License)h(in)o(to)f(the)g(extracted)165
-2615 y(do)q(cumen)o(t,)g(and)f(follo)o(w)e(this)i(License)h(in)f(all)g
-(other)f(resp)q(ects)i(regarding)f(v)o(erbatim)f(cop)o(ying)g(of)165
-2670 y(that)f(do)q(cumen)o(t.)p eop end
-%%Page: 17 20
-TeXDict begin 17 19 bop 75 -58 a Fr(App)q(endix)16 b(A:)f(GNU)g(F)l
-(ree)g(Do)q(cumen)o(tation)g(License)802 b(17)100 149
-y(7.)29 b(A)o(GGREGA)l(TION)15 b(WITH)h(INDEPENDENT)e(W)o(ORKS)165
-221 y(A)g(compilation)e(of)i(the)g(Do)q(cumen)o(t)g(or)f(its)h(deriv)m
-(ativ)o(es)f(with)g(other)h(separate)f(and)i(indep)q(enden)o(t)165
-275 y(do)q(cumen)o(ts)i(or)f(w)o(orks,)g(in)g(or)g(on)h(a)f(v)o(olume)g
-(of)g(a)h(storage)e(or)h(distribution)g(medium,)g(is)g(called)165
-330 y(an)f(\\aggregate")e(if)h(the)i(cop)o(yrigh)o(t)d(resulting)h
-(from)h(the)g(compilation)e(is)i(not)f(used)i(to)e(limit)g(the)165
-385 y(legal)e(righ)o(ts)g(of)h(the)g(compilation's)f(users)h(b)q(ey)o
-(ond)h(what)f(the)g(individual)f(w)o(orks)h(p)q(ermit.)19
-b(When)165 440 y(the)g(Do)q(cumen)o(t)g(is)g(included)h(in)f(an)g
-(aggregate,)f(this)h(License)h(do)q(es)g(not)e(apply)h(to)g(the)g
-(other)165 495 y(w)o(orks)14 b(in)h(the)g(aggregate)f(whic)o(h)h(are)g
-(not)g(themselv)o(es)g(deriv)m(ativ)o(e)f(w)o(orks)g(of)h(the)g(Do)q
-(cumen)o(t.)165 566 y(If)d(the)f(Co)o(v)o(er)f(T)l(ext)i(requiremen)o
-(t)f(of)g(section)g(3)g(is)g(applicable)f(to)h(these)h(copies)f(of)g
-(the)g(Do)q(cumen)o(t,)165 621 y(then)h(if)e(the)i(Do)q(cumen)o(t)f(is)
-f(less)h(than)g(one)h(half)e(of)h(the)g(en)o(tire)g(aggregate,)f(the)h
-(Do)q(cumen)o(t's)g(Co)o(v)o(er)165 675 y(T)l(exts)i(ma)o(y)g(b)q(e)h
-(placed)f(on)g(co)o(v)o(ers)g(that)f(brac)o(k)o(et)h(the)g(Do)q(cumen)o
-(t)g(within)g(the)g(aggregate,)f(or)h(the)165 730 y(electronic)k(equiv)
-m(alen)o(t)g(of)g(co)o(v)o(ers)g(if)g(the)h(Do)q(cumen)o(t)f(is)g(in)g
-(electronic)g(form.)27 b(Otherwise)17 b(they)165 785
-y(m)o(ust)e(app)q(ear)g(on)g(prin)o(ted)g(co)o(v)o(ers)g(that)f(brac)o
-(k)o(et)h(the)g(whole)g(aggregate.)100 856 y(8.)29 b(TRANSLA)l(TION)165
-928 y(T)l(ranslation)18 b(is)i(considered)g(a)g(kind)g(of)f(mo)q
-(di\014cation,)h(so)g(y)o(ou)g(ma)o(y)f(distribute)g(translations)165
-982 y(of)j(the)g(Do)q(cumen)o(t)g(under)h(the)f(terms)g(of)g(section)f
-(4.)41 b(Replacing)22 b(In)o(v)m(arian)o(t)g(Sections)g(with)165
-1037 y(translations)f(requires)h(sp)q(ecial)h(p)q(ermission)f(from)g
-(their)g(cop)o(yrigh)o(t)f(holders,)j(but)f(y)o(ou)g(ma)o(y)165
-1092 y(include)13 b(translations)d(of)i(some)g(or)f(all)g(In)o(v)m
-(arian)o(t)h(Sections)g(in)g(addition)g(to)f(the)h(original)f(v)o
-(ersions)165 1147 y(of)k(these)h(In)o(v)m(arian)o(t)f(Sections.)22
-b(Y)l(ou)15 b(ma)o(y)g(include)i(a)e(translation)f(of)h(this)g
-(License,)h(and)g(all)f(the)165 1201 y(license)21 b(notices)f(in)g(the)
-h(Do)q(cumen)o(t,)g(and)g(an)o(y)f(W)l(arran)o(t)o(y)f(Disclaimers,)h
-(pro)o(vided)g(that)g(y)o(ou)165 1256 y(also)f(include)h(the)g
-(original)f(English)g(v)o(ersion)g(of)h(this)f(License)i(and)f(the)g
-(original)e(v)o(ersions)h(of)165 1311 y(those)e(notices)f(and)i
-(disclaimers.)24 b(In)18 b(case)f(of)f(a)h(disagreemen)o(t)f(b)q(et)o
-(w)o(een)i(the)f(translation)e(and)165 1366 y(the)j(original)d(v)o
-(ersion)i(of)g(this)g(License)i(or)e(a)g(notice)g(or)g(disclaimer,)g
-(the)h(original)d(v)o(ersion)i(will)165 1421 y(prev)m(ail.)165
-1492 y(If)e(a)f(section)f(in)i(the)f(Do)q(cumen)o(t)g(is)g(En)o(titled)
-f(\\Ac)o(kno)o(wledgemen)o(ts",)g(\\Dedications",)g(or)g(\\His-)165
-1547 y(tory",)f(the)h(requiremen)o(t)g(\(section)f(4\))h(to)f(Preserv)o
-(e)h(its)g(Title)f(\(section)g(1\))h(will)f(t)o(ypically)f(require)165
-1601 y(c)o(hanging)k(the)g(actual)f(title.)100 1673 y(9.)29
-b(TERMINA)l(TION)165 1744 y(Y)l(ou)15 b(ma)o(y)f(not)h(cop)o(y)l(,)f
-(mo)q(dify)l(,)h(sublicense,)g(or)f(distribute)g(the)h(Do)q(cumen)o(t)g
-(except)h(as)e(expressly)165 1799 y(pro)o(vided)19 b(under)h(this)f
-(License.)33 b(An)o(y)19 b(attempt)f(otherwise)h(to)f(cop)o(y)l(,)i(mo)
-q(dify)l(,)g(sublicense,)g(or)165 1854 y(distribute)14
-b(it)h(is)g(v)o(oid,)f(and)h(will)f(automatically)f(terminate)h(y)o
-(our)g(righ)o(ts)g(under)i(this)f(License.)165 1925 y(Ho)o(w)o(ev)o
-(er,)g(if)h(y)o(ou)g(cease)g(all)f(violation)f(of)i(this)g(License,)h
-(then)f(y)o(our)g(license)g(from)f(a)h(particular)165
-1980 y(cop)o(yrigh)o(t)h(holder)g(is)h(reinstated)f(\(a\))g(pro)o
-(visionally)l(,)f(unless)i(and)g(un)o(til)f(the)h(cop)o(yrigh)o(t)e
-(holder)165 2034 y(explicitly)j(and)i(\014nally)e(terminates)h(y)o(our)
-f(license,)j(and)e(\(b\))g(p)q(ermanen)o(tly)l(,)h(if)f(the)g(cop)o
-(yrigh)o(t)165 2089 y(holder)d(fails)f(to)h(notify)f(y)o(ou)h(of)g(the)
-g(violation)e(b)o(y)i(some)g(reasonable)g(means)g(prior)f(to)h(60)f(da)
-o(ys)165 2144 y(after)e(the)i(cessation.)165 2215 y(Moreo)o(v)o(er,)e
-(y)o(our)h(license)h(from)f(a)g(particular)g(cop)o(yrigh)o(t)f(holder)i
-(is)f(reinstated)g(p)q(ermanen)o(tly)g(if)165 2270 y(the)f(cop)o(yrigh)
-o(t)f(holder)g(noti\014es)h(y)o(ou)f(of)h(the)g(violation)e(b)o(y)h
-(some)h(reasonable)f(means,)h(this)f(is)h(the)165 2325
-y(\014rst)g(time)f(y)o(ou)g(ha)o(v)o(e)h(receiv)o(ed)g(notice)f(of)h
-(violation)e(of)h(this)h(License)g(\(for)f(an)o(y)h(w)o(ork\))f(from)g
-(that)165 2380 y(cop)o(yrigh)o(t)i(holder,)g(and)h(y)o(ou)g(cure)g(the)
-g(violation)e(prior)i(to)f(30)g(da)o(ys)h(after)f(y)o(our)g(receipt)h
-(of)g(the)165 2434 y(notice.)165 2506 y(T)l(ermination)d(of)g(y)o(our)g
-(righ)o(ts)g(under)h(this)f(section)h(do)q(es)g(not)f(terminate)g(the)h
-(licenses)f(of)h(parties)165 2560 y(who)19 b(ha)o(v)o(e)g(receiv)o(ed)g
-(copies)g(or)f(righ)o(ts)g(from)g(y)o(ou)h(under)h(this)e(License.)33
-b(If)19 b(y)o(our)g(righ)o(ts)e(ha)o(v)o(e)165 2615 y(b)q(een)d
-(terminated)e(and)i(not)e(p)q(ermanen)o(tly)h(reinstated,)f(receipt)h
-(of)g(a)g(cop)o(y)g(of)f(some)h(or)f(all)g(of)h(the)165
-2670 y(same)i(material)e(do)q(es)j(not)f(giv)o(e)f(y)o(ou)h(an)o(y)g
-(righ)o(ts)f(to)g(use)i(it.)p eop end
-%%Page: 18 21
-TeXDict begin 18 20 bop 75 -58 a Fr(App)q(endix)16 b(A:)f(GNU)g(F)l
-(ree)g(Do)q(cumen)o(tation)g(License)802 b(18)77 149
-y(10.)29 b(FUTURE)15 b(REVISIONS)j(OF)d(THIS)h(LICENSE)165
-217 y(The)21 b(F)l(ree)g(Soft)o(w)o(are)e(F)l(oundation)h(ma)o(y)g
-(publish)h(new,)h(revised)f(v)o(ersions)f(of)g(the)h(GNU)g(F)l(ree)165
-271 y(Do)q(cumen)o(tation)15 b(License)i(from)e(time)g(to)h(time.)21
-b(Suc)o(h)c(new)f(v)o(ersions)g(will)e(b)q(e)j(similar)d(in)i(spirit)
-165 326 y(to)h(the)g(presen)o(t)g(v)o(ersion,)g(but)g(ma)o(y)f
-(di\013er)h(in)g(detail)f(to)h(address)g(new)g(problems)g(or)g
-(concerns.)165 381 y(See)f Fq(http://www.gnu.org/copyle)o(ft/)p
-Fr(.)165 448 y(Eac)o(h)f(v)o(ersion)e(of)i(the)g(License)g(is)f(giv)o
-(en)g(a)h(distinguishing)e(v)o(ersion)h(n)o(um)o(b)q(er.)20
-b(If)15 b(the)g(Do)q(cumen)o(t)165 503 y(sp)q(eci\014es)23
-b(that)f(a)h(particular)e(n)o(um)o(b)q(ered)j(v)o(ersion)d(of)i(this)f
-(License)h(\\or)f(an)o(y)g(later)g(v)o(ersion")165 558
-y(applies)16 b(to)f(it,)h(y)o(ou)g(ha)o(v)o(e)g(the)g(option)f(of)h
-(follo)o(wing)e(the)i(terms)g(and)g(conditions)g(either)g(of)g(that)165
-613 y(sp)q(eci\014ed)k(v)o(ersion)e(or)h(of)f(an)o(y)h(later)f(v)o
-(ersion)g(that)g(has)h(b)q(een)h(published)g(\(not)e(as)g(a)h(draft\))f
-(b)o(y)165 667 y(the)e(F)l(ree)h(Soft)o(w)o(are)e(F)l(oundation.)22
-b(If)17 b(the)g(Do)q(cumen)o(t)f(do)q(es)g(not)g(sp)q(ecify)h(a)f(v)o
-(ersion)g(n)o(um)o(b)q(er)g(of)165 722 y(this)h(License,)h(y)o(ou)f(ma)
-o(y)f(c)o(ho)q(ose)i(an)o(y)e(v)o(ersion)h(ev)o(er)g(published)h(\(not)
-e(as)h(a)g(draft\))f(b)o(y)i(the)f(F)l(ree)165 777 y(Soft)o(w)o(are)e
-(F)l(oundation.)21 b(If)16 b(the)g(Do)q(cumen)o(t)g(sp)q(eci\014es)h
-(that)e(a)h(pro)o(xy)f(can)h(decide)h(whic)o(h)f(future)165
-832 y(v)o(ersions)f(of)h(this)g(License)h(can)f(b)q(e)h(used,)g(that)f
-(pro)o(xy's)f(public)h(statemen)o(t)g(of)g(acceptance)g(of)g(a)165
-887 y(v)o(ersion)e(p)q(ermanen)o(tly)h(authorizes)g(y)o(ou)g(to)f(c)o
-(ho)q(ose)i(that)e(v)o(ersion)g(for)h(the)g(Do)q(cumen)o(t.)77
-954 y(11.)29 b(RELICENSING)165 1021 y(\\Massiv)o(e)17
-b(Multiauthor)g(Collab)q(oration)f(Site")i(\(or)g(\\MMC)g(Site"\))f
-(means)i(an)o(y)f(W)l(orld)g(Wide)165 1076 y(W)l(eb)g(serv)o(er)g(that)
-f(publishes)h(cop)o(yrigh)o(table)e(w)o(orks)h(and)h(also)f(pro)o
-(vides)h(prominen)o(t)f(facilities)165 1131 y(for)c(an)o(yb)q(o)q(dy)h
-(to)f(edit)h(those)f(w)o(orks.)19 b(A)14 b(public)f(wiki)g(that)g(an)o
-(yb)q(o)q(dy)h(can)g(edit)g(is)f(an)h(example)f(of)165
-1186 y(suc)o(h)k(a)g(serv)o(er.)24 b(A)17 b(\\Massiv)o(e)e(Multiauthor)
-g(Collab)q(oration")g(\(or)h(\\MMC"\))f(con)o(tained)h(in)h(the)165
-1240 y(site)e(means)g(an)o(y)g(set)g(of)f(cop)o(yrigh)o(table)g(w)o
-(orks)g(th)o(us)h(published)h(on)f(the)g(MMC)g(site.)165
-1308 y(\\CC-BY-SA")j(means)f(the)h(Creativ)o(e)e(Commons)h(A)o
-(ttribution-Share)f(Alik)o(e)h(3.0)g(license)g(pub-)165
-1362 y(lished)c(b)o(y)h(Creativ)o(e)e(Commons)g(Corp)q(oration,)g(a)h
-(not-for-pro\014t)g(corp)q(oration)f(with)h(a)g(principal)165
-1417 y(place)g(of)f(business)i(in)f(San)g(F)l(rancisco,)f(California,)f
-(as)h(w)o(ell)g(as)h(future)g(cop)o(yleft)f(v)o(ersions)g(of)h(that)165
-1472 y(license)i(published)h(b)o(y)f(that)g(same)f(organization.)165
-1539 y(\\Incorp)q(orate")h(means)g(to)g(publish)g(or)g(republish)g(a)g
-(Do)q(cumen)o(t,)g(in)g(whole)g(or)g(in)g(part,)g(as)g(part)165
-1594 y(of)g(another)g(Do)q(cumen)o(t.)165 1661 y(An)e(MMC)g(is)f
-(\\eligible)g(for)g(relicensing")h(if)f(it)h(is)f(licensed)i(under)g
-(this)e(License,)i(and)f(if)g(all)f(w)o(orks)165 1716
-y(that)20 b(w)o(ere)h(\014rst)g(published)g(under)h(this)e(License)i
-(somewhere)f(other)g(than)g(this)f(MMC,)g(and)165 1771
-y(subsequen)o(tly)e(incorp)q(orated)e(in)i(whole)f(or)g(in)g(part)g(in)
-o(to)f(the)h(MMC,)f(\(1\))h(had)g(no)h(co)o(v)o(er)f(texts)165
-1826 y(or)e(in)o(v)m(arian)o(t)e(sections,)i(and)g(\(2\))f(w)o(ere)h
-(th)o(us)g(incorp)q(orated)g(prior)f(to)h(No)o(v)o(em)o(b)q(er)g(1,)f
-(2008.)165 1893 y(The)21 b(op)q(erator)e(of)h(an)g(MMC)f(Site)h(ma)o(y)
-g(republish)h(an)f(MMC)f(con)o(tained)h(in)g(the)h(site)e(under)165
-1948 y(CC-BY-SA)d(on)f(the)g(same)g(site)f(at)h(an)o(y)f(time)h(b)q
-(efore)g(August)g(1,)g(2009,)e(pro)o(vided)i(the)g(MMC)f(is)165
-2002 y(eligible)g(for)h(relicensing.)p eop end
-%%Page: 19 22
-TeXDict begin 19 21 bop 75 -58 a Fr(App)q(endix)16 b(A:)f(GNU)g(F)l
-(ree)g(Do)q(cumen)o(tation)g(License)802 b(19)75 149
-y Fp(ADDENDUM:)20 b(Ho)n(w)h(to)h(use)g(this)g(License)g(for)g(y)n(our)
-h(do)r(cumen)n(ts)75 229 y Fr(T)l(o)17 b(use)h(this)e(License)i(in)g(a)
-f(do)q(cumen)o(t)g(y)o(ou)g(ha)o(v)o(e)g(written,)g(include)g(a)g(cop)o
-(y)g(of)g(the)h(License)g(in)f(the)75 284 y(do)q(cumen)o(t)f(and)f(put)
-g(the)h(follo)o(wing)d(cop)o(yrigh)o(t)g(and)j(license)f(notices)g
-(just)g(after)f(the)h(title)f(page:)234 340 y Fe(Copyright)i(\(C\))38
-b Fc(year)k(your)19 b(name)t Fe(.)234 384 y(Permission)d(is)j(granted)e
-(to)i(copy,)e(distribute)f(and/or)h(modify)h(this)g(document)234
-427 y(under)g(the)g(terms)g(of)h(the)f(GNU)h(Free)f(Documenta)o(tio)o
-(n)e(License,)h(Version)g(1.3)234 471 y(or)i(any)g(later)e(version)g
-(published)f(by)j(the)g(Free)f(Software)e(Foundation)o(;)234
-514 y(with)i(no)h(Invariant)d(Sections,)g(no)j(Front-Cove)o(r)e(Texts,)
-g(and)h(no)h(Back-Cover)234 558 y(Texts.)37 b(A)19 b(copy)f(of)h(the)g
-(license)e(is)h(included)f(in)i(the)f(section)f(entitled)g(``GNU)234
-601 y(Free)h(Documentat)o(ion)e(License'')o(.)137 669
-y Fr(If)k(y)o(ou)g(ha)o(v)o(e)g(In)o(v)m(arian)o(t)f(Sections,)h(F)l
-(ron)o(t-Co)o(v)o(er)f(T)l(exts)g(and)h(Bac)o(k-Co)o(v)o(er)f(T)l
-(exts,)i(replace)f(the)75 724 y(\\with)s(.)10 b(.)g(.)5
-b(T)l(exts.")20 b(line)15 b(with)f(this:)273 780 y Fe(with)19
-b(the)f(Invariant)e(Sections)h(being)g Fc(list)h(their)g(titles)t
-Fe(,)f(with)273 823 y(the)i(Front-Cov)o(er)d(Texts)i(being)g
-Fc(list)t Fe(,)g(and)g(with)g(the)h(Back-Cove)o(r)d(Texts)273
-867 y(being)i Fc(list)t Fe(.)137 934 y Fr(If)g(y)o(ou)f(ha)o(v)o(e)h
-(In)o(v)m(arian)o(t)f(Sections)g(without)g(Co)o(v)o(er)f(T)l(exts,)i
-(or)f(some)g(other)g(com)o(bination)g(of)g(the)75 989
-y(three,)e(merge)g(those)g(t)o(w)o(o)f(alternativ)o(es)f(to)i(suit)f
-(the)h(situation.)137 1056 y(If)d(y)o(our)g(do)q(cumen)o(t)g(con)o
-(tains)f(non)o(trivial)f(examples)i(of)f(program)g(co)q(de,)i(w)o(e)f
-(recommend)g(releasing)75 1111 y(these)22 b(examples)f(in)g(parallel)g
-(under)h(y)o(our)f(c)o(hoice)g(of)g(free)h(soft)o(w)o(are)e(license,)i
-(suc)o(h)g(as)g(the)f(GNU)75 1166 y(General)15 b(Public)g(License,)g
-(to)g(p)q(ermit)g(their)f(use)i(in)f(free)g(soft)o(w)o(are.)p
-eop end
-%%Page: 20 23
-TeXDict begin 20 22 bop 75 -58 a Fr(App)q(endix)16 b(B:)f(Concept)h
-(Index)1197 b(20)75 149 y Fn(App)r(endix)26 b(B)41 b(Concept)27
-b(Index)75 319 y Fp(A)75 377 y Fb(anc)o(hored)14 b(searc)o(h)s
-Fa(:)7 b(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
-g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)16
-b Fb(7)75 494 y Fp(E)75 552 y Fb(ev)o(en)o(t)d(designators)c
-Fa(:)f(:)e(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)21
-b Fb(1)1012 319 y Fp(H)1012 426 y Fb(history)14 b(ev)o(en)o(ts)s
-Fa(:)7 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)16 b Fb(1)1012 493 y(history)e(expansion)6 b Fa(:)i(:)e(:)g(:)g(:)g
-(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
-g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)19 b Fb(1)1012 561 y(History)13
-b(Searc)o(hing)5 b Fa(:)i(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
-g(:)18 b Fb(7)p eop end
-%%Page: 21 24
-TeXDict begin 21 23 bop 75 -58 a Fr(App)q(endix)16 b(C:)f(F)l(unction)g
-(and)g(V)l(ariable)g(Index)918 b(21)75 149 y Fn(App)r(endix)26
-b(C)41 b(F)-7 b(unction)27 b(and)g(V)-7 b(ariable)28
-b(Index)75 319 y Fp(A)75 377 y Fe(add_histor)o(y)s Fa(:)s(:)6
-b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)16
-b Fb(5)75 421 y Fe(add_histor)o(y_)o(tim)o(e)5 b Fa(:)s(:)h(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)g(:)g(:)g(:)g(:)18 b Fb(5)75 465 y Fe(append_his)o(to)o(ry)
-8 b Fa(:)s(:)e(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)20
-b Fb(8)75 591 y Fp(C)75 649 y Fe(clear_hist)o(or)o(y)6
-b Fa(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
-g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)22
-b Fb(6)75 693 y Fe(current_hi)o(st)o(ory)6 b Fa(:)s(:)g(:)g(:)g(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)g(:)g(:)19 b Fb(6)75 819 y Fp(F)75
-878 y Fe(free_histo)o(ry)o(_en)o(tr)o(y)8 b Fa(:)f(:)f(:)g(:)g(:)g(:)g
-(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-g(:)g(:)g(:)24 b Fb(5)75 1004 y Fp(G)75 1062 y Fe(get_histor)o(y_)o
-(eve)o(nt)s Fa(:)t(:)6 b(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)17
-b Fb(8)75 1189 y Fp(H)75 1247 y Fe(history_ar)o(g_)o(ext)o(ra)o(ct)7
-b Fa(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)23 b Fb(8)75 1291
-y Fe(history_ba)o(se)7 b Fa(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)g(:)g(:)23 b Fb(8)75 1334 y Fe(history_co)o(mm)o(ent)o(_c)o
-(har)8 b Fa(:)s(:)e(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)21 b Fb(9)75 1378
-y Fe(history_ex)o(pa)o(nd)8 b Fa(:)s(:)e(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
-g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)20 b Fb(8)75 1422 y Fe(history_ex)o(pa)o(nsi)o(on)o
-(_ch)o(ar)6 b Fa(:)s(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)19 b Fb(9)75 1465
-y Fe(history_ge)o(t)s Fa(:)s(:)6 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)g(:)g(:)g(:)g(:)g(:)g(:)16 b Fb(6)75 1509 y Fe(history_ge)o(t_)o
-(his)o(to)o(ry_)o(sta)o(te)7 b Fa(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)23 b Fb(5)75 1553
-y Fe(history_ge)o(t_)o(tim)o(e)5 b Fa(:)s(:)h(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)g(:)g(:)g(:)18 b Fb(6)75 1597 y Fe(history_in)o(hi)o(bit)o(_e)o
-(xpa)o(nsi)o(on)o(_fu)o(nc)o(tio)o(n)8 b Fa(:)s(:)e(:)g(:)g(:)g(:)g(:)g
-(:)g(:)21 b Fb(9)75 1640 y Fe(history_is)o(_s)o(tif)o(le)o(d)8
-b Fa(:)f(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)24 b Fb(6)75
-1684 y Fe(history_le)o(ng)o(th)8 b Fa(:)s(:)e(:)g(:)g(:)g(:)g(:)g(:)g
-(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
-g(:)g(:)g(:)g(:)h(:)f(:)20 b Fb(8)75 1728 y Fe(history_li)o(st)7
-b Fa(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)23
-b Fb(6)75 1771 y Fe(history_ma)o(x_)o(ent)o(ri)o(es)7
-b Fa(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)23 b Fb(9)75 1815
-y Fe(history_no)o(_e)o(xpa)o(nd)o(_ch)o(ars)t Fa(:)s(:)6
-b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
-(:)g(:)h(:)17 b Fb(9)75 1859 y Fe(history_qu)o(ot)o(es_)o(in)o(hib)o
-(it_)o(ex)o(pan)o(si)o(on)7 b Fa(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)23 b Fb(9)75 1902 y Fe(history_se)o(ar)o(ch)8 b Fa(:)s(:)e(:)g(:)g
-(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)20 b Fb(7)75
-1946 y Fe(history_se)o(ar)o(ch_)o(de)o(lim)o(ite)o(r_)o(cha)o(rs)t
-Fa(:)s(:)6 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)17
-b Fb(9)75 1990 y Fe(history_se)o(ar)o(ch_)o(po)o(s)8
-b Fa(:)f(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)24 b Fb(7)1012
-319 y Fe(history_sea)o(rc)o(h_p)o(re)o(fix)7 b Fa(:)s(:)f(:)g(:)g(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
-g(:)21 b Fb(7)1012 363 y Fe(history_set)o(_h)o(ist)o(or)o(y_s)o(ta)o
-(te)8 b Fa(:)e(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)24 b Fb(5)1012 406 y Fe(history_set)o(_p)o(os)6
-b Fa(:)s(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
-g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)20
-b Fb(6)1012 450 y Fe(history_sub)o(st)o(_ch)o(ar)8 b
-Fa(:)e(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)24 b Fb(9)1012
-494 y Fe(history_tok)o(en)o(ize)t Fa(:)t(:)6 b(:)g(:)g(:)g(:)g(:)g(:)g
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
-g(:)g(:)g(:)h(:)18 b Fb(8)1012 537 y Fe(history_tot)o(al)o(_by)o(te)o
-(s)7 b Fa(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)23 b Fb(6)1012
-581 y Fe(history_tru)o(nc)o(ate)o(_f)o(ile)7 b Fa(:)s(:)f(:)g(:)g(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
-g(:)21 b Fb(8)1012 624 y Fe(history_wor)o(d_)o(del)o(im)o(ite)o(rs)t
-Fa(:)t(:)6 b(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)18 b Fb(9)1012 668 y Fe(history_wri)o(te)o(_ti)o
-(me)o(sta)o(mp)o(s)t Fa(:)s(:)6 b(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)17 b Fb(9)1012
-794 y Fp(N)1012 852 y Fe(next_histor)o(y)7 b Fa(:)f(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)24 b Fb(7)1012
-978 y Fp(P)1012 1036 y Fe(previous_hi)o(st)o(ory)t Fa(:)t(:)6
-b(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)18 b Fb(6)1012
-1162 y Fp(R)1012 1220 y Fe(read_histor)o(y)7 b Fa(:)f(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)24 b Fb(7)1012
-1264 y Fe(read_histor)o(y_)o(ran)o(ge)8 b Fa(:)e(:)g(:)g(:)g(:)g(:)g(:)
-g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
-(:)g(:)h(:)24 b Fb(7)1012 1307 y Fe(remove_hist)o(or)o(y)8
-b Fa(:)s(:)e(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
-g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)21
-b Fb(5)1012 1351 y Fe(replace_his)o(to)o(ry_)o(en)o(try)7
-b Fa(:)s(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-g(:)g(:)g(:)g(:)g(:)g(:)g(:)21 b Fb(5)1012 1477 y Fp(S)1012
-1535 y Fe(stifle_hist)o(or)o(y)8 b Fa(:)s(:)e(:)g(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)g(:)21 b Fb(6)1012 1661 y Fp(U)1012
-1719 y Fe(unstifle_hi)o(st)o(ory)t Fa(:)t(:)6 b(:)g(:)g(:)g(:)g(:)g(:)g
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
-g(:)g(:)g(:)h(:)18 b Fb(6)1012 1762 y Fe(using_histo)o(ry)6
-b Fa(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)22
-b Fb(5)1012 1888 y Fp(W)1012 1946 y Fe(where_histo)o(ry)6
-b Fa(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)22
-b Fb(6)1012 1990 y Fe(write_histo)o(ry)6 b Fa(:)g(:)g(:)g(:)g(:)g(:)g
-(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
-g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)22 b Fb(7)p eop end
-%%Trailer
-
-userdict /end-hook known{end-hook}if
-%%EOF
diff --git a/lib/readline/doc/history.tmp b/lib/readline/doc/history.tmp
deleted file mode 100644 (file)
index 0e38eaf..0000000
+++ /dev/null
@@ -1,26 +0,0 @@
-
-This document describes the GNU History library
-(version @value{VERSION}, @value{UPDATED}),
-a programming tool that provides a consistent user interface for
-recalling lines of previously typed input.
-
-Copyright @copyright{} 1988--2011 Free Software Foundation, Inc.
-
-Permission is granted to make and distribute verbatim copies of
-this manual provided the copyright notice and this permission notice
-are preserved on all copies.
-
-@quotation
-Permission is granted to copy, distribute and/or modify this document
-under the terms of the GNU Free Documentation License, Version 1.3 or
-any later version published by the Free Software Foundation; with no
-Invariant Sections, with the Front-Cover texts being ``A GNU Manual'',
-and with the Back-Cover Texts as in (a) below. A copy of the license is
-included in the section entitled ``GNU Free Documentation License''.
-
-(a) The FSF's Back-Cover Text is: You are free to copy and modify
-this GNU manual. Buying copies from GNU Press supports the FSF in
-developing GNU and promoting software freedom.''
-
-@end quotation
-@endinput 
diff --git a/lib/readline/doc/history.toc b/lib/readline/doc/history.toc
deleted file mode 100644 (file)
index 56b563c..0000000
+++ /dev/null
@@ -1,21 +0,0 @@
-@numchapentry{Using History Interactively}{1}{Using History Interactively}{1}
-@numsecentry{History Expansion}{1.1}{History Interaction}{1}
-@numsubsecentry{Event Designators}{1.1.1}{Event Designators}{1}
-@numsubsecentry{Word Designators}{1.1.2}{Word Designators}{2}
-@numsubsecentry{Modifiers}{1.1.3}{Modifiers}{2}
-@numchapentry{Programming with GNU History}{2}{Programming with GNU History}{4}
-@numsecentry{Introduction to History}{2.1}{Introduction to History}{4}
-@numsecentry{History Storage}{2.2}{History Storage}{4}
-@numsecentry{History Functions}{2.3}{History Functions}{5}
-@numsubsecentry{Initializing History and State Management}{2.3.1}{Initializing History and State Management}{5}
-@numsubsecentry{History List Management}{2.3.2}{History List Management}{5}
-@numsubsecentry{Information About the History List}{2.3.3}{Information About the History List}{6}
-@numsubsecentry{Moving Around the History List}{2.3.4}{Moving Around the History List}{6}
-@numsubsecentry{Searching the History List}{2.3.5}{Searching the History List}{7}
-@numsubsecentry{Managing the History File}{2.3.6}{Managing the History File}{7}
-@numsubsecentry{History Expansion}{2.3.7}{History Expansion}{8}
-@numsecentry{History Variables}{2.4}{History Variables}{8}
-@numsecentry{History Programming Example}{2.5}{History Programming Example}{10}
-@appentry{GNU Free Documentation License}{A}{GNU Free Documentation License}{12}
-@appentry{Concept Index}{B}{Concept Index}{20}
-@appentry{Function and Variable Index}{C}{Function and Variable Index}{21}
diff --git a/lib/readline/doc/history.tp b/lib/readline/doc/history.tp
deleted file mode 100644 (file)
index e69de29..0000000
diff --git a/lib/readline/doc/history.vr b/lib/readline/doc/history.vr
deleted file mode 100644 (file)
index cd7edb2..0000000
+++ /dev/null
@@ -1,45 +0,0 @@
-\entry{using_history}{5}{\code {using_history}}
-\entry{history_get_history_state}{5}{\code {history_get_history_state}}
-\entry{history_set_history_state}{5}{\code {history_set_history_state}}
-\entry{add_history}{5}{\code {add_history}}
-\entry{add_history_time}{5}{\code {add_history_time}}
-\entry{remove_history}{5}{\code {remove_history}}
-\entry{free_history_entry}{5}{\code {free_history_entry}}
-\entry{replace_history_entry}{5}{\code {replace_history_entry}}
-\entry{clear_history}{6}{\code {clear_history}}
-\entry{stifle_history}{6}{\code {stifle_history}}
-\entry{unstifle_history}{6}{\code {unstifle_history}}
-\entry{history_is_stifled}{6}{\code {history_is_stifled}}
-\entry{history_list}{6}{\code {history_list}}
-\entry{where_history}{6}{\code {where_history}}
-\entry{current_history}{6}{\code {current_history}}
-\entry{history_get}{6}{\code {history_get}}
-\entry{history_get_time}{6}{\code {history_get_time}}
-\entry{history_total_bytes}{6}{\code {history_total_bytes}}
-\entry{history_set_pos}{6}{\code {history_set_pos}}
-\entry{previous_history}{6}{\code {previous_history}}
-\entry{next_history}{7}{\code {next_history}}
-\entry{history_search}{7}{\code {history_search}}
-\entry{history_search_prefix}{7}{\code {history_search_prefix}}
-\entry{history_search_pos}{7}{\code {history_search_pos}}
-\entry{read_history}{7}{\code {read_history}}
-\entry{read_history_range}{7}{\code {read_history_range}}
-\entry{write_history}{7}{\code {write_history}}
-\entry{append_history}{8}{\code {append_history}}
-\entry{history_truncate_file}{8}{\code {history_truncate_file}}
-\entry{history_expand}{8}{\code {history_expand}}
-\entry{get_history_event}{8}{\code {get_history_event}}
-\entry{history_tokenize}{8}{\code {history_tokenize}}
-\entry{history_arg_extract}{8}{\code {history_arg_extract}}
-\entry{history_base}{8}{\code {history_base}}
-\entry{history_length}{8}{\code {history_length}}
-\entry{history_max_entries}{9}{\code {history_max_entries}}
-\entry{history_write_timestamps}{9}{\code {history_write_timestamps}}
-\entry{history_expansion_char}{9}{\code {history_expansion_char}}
-\entry{history_subst_char}{9}{\code {history_subst_char}}
-\entry{history_comment_char}{9}{\code {history_comment_char}}
-\entry{history_word_delimiters}{9}{\code {history_word_delimiters}}
-\entry{history_search_delimiter_chars}{9}{\code {history_search_delimiter_chars}}
-\entry{history_no_expand_chars}{9}{\code {history_no_expand_chars}}
-\entry{history_quotes_inhibit_expansion}{9}{\code {history_quotes_inhibit_expansion}}
-\entry{history_inhibit_expansion_function}{9}{\code {history_inhibit_expansion_function}}
diff --git a/lib/readline/doc/history.vrs b/lib/readline/doc/history.vrs
deleted file mode 100644 (file)
index 4e517fd..0000000
+++ /dev/null
@@ -1,56 +0,0 @@
-\initial {A}
-\entry {\code {add_history}}{5}
-\entry {\code {add_history_time}}{5}
-\entry {\code {append_history}}{8}
-\initial {C}
-\entry {\code {clear_history}}{6}
-\entry {\code {current_history}}{6}
-\initial {F}
-\entry {\code {free_history_entry}}{5}
-\initial {G}
-\entry {\code {get_history_event}}{8}
-\initial {H}
-\entry {\code {history_arg_extract}}{8}
-\entry {\code {history_base}}{8}
-\entry {\code {history_comment_char}}{9}
-\entry {\code {history_expand}}{8}
-\entry {\code {history_expansion_char}}{9}
-\entry {\code {history_get}}{6}
-\entry {\code {history_get_history_state}}{5}
-\entry {\code {history_get_time}}{6}
-\entry {\code {history_inhibit_expansion_function}}{9}
-\entry {\code {history_is_stifled}}{6}
-\entry {\code {history_length}}{8}
-\entry {\code {history_list}}{6}
-\entry {\code {history_max_entries}}{9}
-\entry {\code {history_no_expand_chars}}{9}
-\entry {\code {history_quotes_inhibit_expansion}}{9}
-\entry {\code {history_search}}{7}
-\entry {\code {history_search_delimiter_chars}}{9}
-\entry {\code {history_search_pos}}{7}
-\entry {\code {history_search_prefix}}{7}
-\entry {\code {history_set_history_state}}{5}
-\entry {\code {history_set_pos}}{6}
-\entry {\code {history_subst_char}}{9}
-\entry {\code {history_tokenize}}{8}
-\entry {\code {history_total_bytes}}{6}
-\entry {\code {history_truncate_file}}{8}
-\entry {\code {history_word_delimiters}}{9}
-\entry {\code {history_write_timestamps}}{9}
-\initial {N}
-\entry {\code {next_history}}{7}
-\initial {P}
-\entry {\code {previous_history}}{6}
-\initial {R}
-\entry {\code {read_history}}{7}
-\entry {\code {read_history_range}}{7}
-\entry {\code {remove_history}}{5}
-\entry {\code {replace_history_entry}}{5}
-\initial {S}
-\entry {\code {stifle_history}}{6}
-\initial {U}
-\entry {\code {unstifle_history}}{6}
-\entry {\code {using_history}}{5}
-\initial {W}
-\entry {\code {where_history}}{6}
-\entry {\code {write_history}}{7}
diff --git a/lib/readline/doc/hstech.texinfo b/lib/readline/doc/hstech.texinfo
deleted file mode 100644 (file)
index 9494446..0000000
+++ /dev/null
@@ -1,550 +0,0 @@
-@ignore
-This file documents the user interface to the GNU History library.
-
-Copyright (C) 1988-2002 Free Software Foundation, Inc.
-Authored by Brian Fox and Chet Ramey.
-
-Permission is granted to make and distribute verbatim copies of this manual
-provided the copyright notice and this permission notice are preserved on
-all copies.
-
-Permission is granted to process this file through Tex and print the
-results, provided the printed document carries copying permission notice
-identical to this one except for the removal of this paragraph (this
-paragraph not being relevant to the printed manual).
-
-Permission is granted to copy and distribute modified versions of this
-manual under the conditions for verbatim copying, provided also that the
-GNU Copyright statement is available to the distributee, and provided that
-the entire resulting derived work is distributed under the terms of a
-permission notice identical to this one.
-
-Permission is granted to copy and distribute translations of this manual
-into another language, under the above conditions for modified versions.
-@end ignore
-
-@node Programming with GNU History
-@chapter Programming with GNU History
-
-This chapter describes how to interface programs that you write
-with the @sc{gnu} History Library.
-It should be considered a technical guide.
-For information on the interactive use of @sc{gnu} History, @pxref{Using
-History Interactively}.
-
-@menu
-* Introduction to History::    What is the GNU History library for?
-* History Storage::            How information is stored.
-* History Functions::          Functions that you can use.
-* History Variables::          Variables that control behaviour.
-* History Programming Example::        Example of using the GNU History Library.
-@end menu
-
-@node Introduction to History
-@section Introduction to History
-
-Many programs read input from the user a line at a time.  The @sc{gnu}
-History library is able to keep track of those lines, associate arbitrary
-data with each line, and utilize information from previous lines in
-composing new ones. 
-
-The programmer using the History library has available functions
-for remembering lines on a history list, associating arbitrary data
-with a line, removing lines from the list, searching through the list
-for a line containing an arbitrary text string, and referencing any line
-in the list directly.  In addition, a history @dfn{expansion} function
-is available which provides for a consistent user interface across
-different programs.
-
-The user using programs written with the History library has the
-benefit of a consistent user interface with a set of well-known
-commands for manipulating the text of previous lines and using that text
-in new commands.  The basic history manipulation commands are similar to
-the history substitution provided by @code{csh}.
-
-If the programmer desires, he can use the Readline library, which
-includes some history manipulation by default, and has the added
-advantage of command line editing.
-
-Before declaring any functions using any functionality the History
-library provides in other code, an application writer should include
-the file @code{<readline/history.h>} in any file that uses the
-History library's features.  It supplies extern declarations for all
-of the library's public functions and variables, and declares all of
-the public data structures.
-
-@node History Storage
-@section History Storage
-
-The history list is an array of history entries.  A history entry is
-declared as follows:
-
-@example
-typedef void *histdata_t;
-
-typedef struct _hist_entry @{
-  char *line;
-  histdata_t data;
-@} HIST_ENTRY;
-@end example
-
-The history list itself might therefore be declared as
-
-@example
-HIST_ENTRY **the_history_list;
-@end example
-
-The state of the History library is encapsulated into a single structure:
-
-@example
-/*
- * A structure used to pass around the current state of the history.
- */
-typedef struct _hist_state @{
-  HIST_ENTRY **entries; /* Pointer to the entries themselves. */
-  int offset;           /* The location pointer within this array. */
-  int length;           /* Number of elements within this array. */
-  int size;             /* Number of slots allocated to this array. */
-  int flags;
-@} HISTORY_STATE;
-@end example
-
-If the flags member includes @code{HS_STIFLED}, the history has been
-stifled.
-
-@node History Functions
-@section History Functions
-
-This section describes the calling sequence for the various functions
-exported by the @sc{gnu} History library.
-
-@menu
-* Initializing History and State Management::  Functions to call when you
-                                               want to use history in a
-                                               program.
-* History List Management::            Functions used to manage the list
-                                       of history entries.
-* Information About the History List:: Functions returning information about
-                                       the history list.
-* Moving Around the History List::     Functions used to change the position
-                                       in the history list.
-* Searching the History List::         Functions to search the history list
-                                       for entries containing a string.
-* Managing the History File::          Functions that read and write a file
-                                       containing the history list.
-* History Expansion::                  Functions to perform csh-like history
-                                       expansion.
-@end menu
-
-@node Initializing History and State Management
-@subsection Initializing History and State Management
-
-This section describes functions used to initialize and manage
-the state of the History library when you want to use the history
-functions in your program.
-
-@deftypefun void using_history (void)
-Begin a session in which the history functions might be used.  This
-initializes the interactive variables.
-@end deftypefun
-
-@deftypefun {HISTORY_STATE *} history_get_history_state (void)
-Return a structure describing the current state of the input history.
-@end deftypefun
-
-@deftypefun void history_set_history_state (HISTORY_STATE *state)
-Set the state of the history list according to @var{state}.
-@end deftypefun
-
-@node History List Management
-@subsection History List Management
-
-These functions manage individual entries on the history list, or set
-parameters managing the list itself.
-
-@deftypefun void add_history (const char *string)
-Place @var{string} at the end of the history list.  The associated data
-field (if any) is set to @code{NULL}.
-@end deftypefun
-
-@deftypefun {HIST_ENTRY *} remove_history (int which)
-Remove history entry at offset @var{which} from the history.  The
-removed element is returned so you can free the line, data,
-and containing structure.
-@end deftypefun
-
-@deftypefun {HIST_ENTRY *} replace_history_entry (int which, const char *line, histdata_t data)
-Make the history entry at offset @var{which} have @var{line} and @var{data}.
-This returns the old entry so you can dispose of the data.  In the case
-of an invalid @var{which}, a @code{NULL} pointer is returned.
-@end deftypefun
-
-@deftypefun void clear_history (void)
-Clear the history list by deleting all the entries.
-@end deftypefun
-
-@deftypefun void stifle_history (int max)
-Stifle the history list, remembering only the last @var{max} entries.
-@end deftypefun
-
-@deftypefun int unstifle_history (void)
-Stop stifling the history.  This returns the previously-set
-maximum number of history entries (as set by @code{stifle_history()}).
-The value is positive if the history was
-stifled, negative if it wasn't.
-@end deftypefun
-
-@deftypefun int history_is_stifled (void)
-Returns non-zero if the history is stifled, zero if it is not.
-@end deftypefun
-
-@node Information About the History List
-@subsection Information About the History List
-
-These functions return information about the entire history list or
-individual list entries.
-
-@deftypefun {HIST_ENTRY **} history_list (void)
-Return a @code{NULL} terminated array of @code{HIST_ENTRY *} which is the
-current input history.  Element 0 of this list is the beginning of time.
-If there is no history, return @code{NULL}.
-@end deftypefun
-
-@deftypefun int where_history (void)
-Returns the offset of the current history element.
-@end deftypefun
-
-@deftypefun {HIST_ENTRY *} current_history (void)
-Return the history entry at the current position, as determined by
-@code{where_history()}.  If there is no entry there, return a @code{NULL}
-pointer.
-@end deftypefun
-
-@deftypefun {HIST_ENTRY *} history_get (int offset)
-Return the history entry at position @var{offset}, starting from
-@code{history_base} (@pxref{History Variables}).
-If there is no entry there, or if @var{offset}
-is greater than the history length, return a @code{NULL} pointer.
-@end deftypefun
-
-@deftypefun int history_total_bytes (void)
-Return the number of bytes that the primary history entries are using.
-This function returns the sum of the lengths of all the lines in the
-history.
-@end deftypefun
-
-@node Moving Around the History List
-@subsection Moving Around the History List
-
-These functions allow the current index into the history list to be
-set or changed.
-
-@deftypefun int history_set_pos (int pos)
-Set the current history offset to @var{pos}, an absolute index
-into the list.
-Returns 1 on success, 0 if @var{pos} is less than zero or greater
-than the number of history entries.
-@end deftypefun
-
-@deftypefun {HIST_ENTRY *} previous_history (void)
-Back up the current history offset to the previous history entry, and
-return a pointer to that entry.  If there is no previous entry, return
-a @code{NULL} pointer.
-@end deftypefun
-
-@deftypefun {HIST_ENTRY *} next_history (void)
-Move the current history offset forward to the next history entry, and
-return the a pointer to that entry.  If there is no next entry, return
-a @code{NULL} pointer.
-@end deftypefun
-
-@node Searching the History List
-@subsection Searching the History List
-@cindex History Searching
-
-These functions allow searching of the history list for entries containing
-a specific string.  Searching may be performed both forward and backward
-from the current history position.  The search may be @dfn{anchored},
-meaning that the string must match at the beginning of the history entry.
-@cindex anchored search
-
-@deftypefun int history_search (const char *string, int direction)
-Search the history for @var{string}, starting at the current history offset.
-If @var{direction} is less than 0, then the search is through
-previous entries, otherwise through subsequent entries.
-If @var{string} is found, then
-the current history index is set to that history entry, and the value
-returned is the offset in the line of the entry where
-@var{string} was found.  Otherwise, nothing is changed, and a -1 is
-returned.
-@end deftypefun
-
-@deftypefun int history_search_prefix (const char *string, int direction)
-Search the history for @var{string}, starting at the current history
-offset.  The search is anchored: matching lines must begin with
-@var{string}.  If @var{direction} is less than 0, then the search is
-through previous entries, otherwise through subsequent entries.
-If @var{string} is found, then the
-current history index is set to that entry, and the return value is 0. 
-Otherwise, nothing is changed, and a -1 is returned. 
-@end deftypefun
-
-@deftypefun int history_search_pos (const char *string, int direction, int pos)
-Search for @var{string} in the history list, starting at @var{pos}, an
-absolute index into the list.  If @var{direction} is negative, the search
-proceeds backward from @var{pos}, otherwise forward.  Returns the absolute
-index of the history element where @var{string} was found, or -1 otherwise.
-@end deftypefun
-
-@node Managing the History File
-@subsection Managing the History File
-
-The History library can read the history from and write it to a file.
-This section documents the functions for managing a history file.
-
-@deftypefun int read_history (const char *filename)
-Add the contents of @var{filename} to the history list, a line at a time.
-If @var{filename} is @code{NULL}, then read from @file{~/.history}.
-Returns 0 if successful, or @code{errno} if not.
-@end deftypefun
-
-@deftypefun int read_history_range (const char *filename, int from, int to)
-Read a range of lines from @var{filename}, adding them to the history list.
-Start reading at line @var{from} and end at @var{to}.
-If @var{from} is zero, start at the beginning.  If @var{to} is less than
-@var{from}, then read until the end of the file.  If @var{filename} is
-@code{NULL}, then read from @file{~/.history}.  Returns 0 if successful,
-or @code{errno} if not.
-@end deftypefun
-
-@deftypefun int write_history (const char *filename)
-Write the current history to @var{filename}, overwriting @var{filename}
-if necessary.
-If @var{filename} is @code{NULL}, then write the history list to
-@file{~/.history}.
-Returns 0 on success, or @code{errno} on a read or write error.
-@end deftypefun
-
-@deftypefun int append_history (int nelements, const char *filename)
-Append the last @var{nelements} of the history list to @var{filename}.
-If @var{filename} is @code{NULL}, then append to @file{~/.history}.
-Returns 0 on success, or @code{errno} on a read or write error.
-@end deftypefun
-
-@deftypefun int history_truncate_file (const char *filename, int nlines)
-Truncate the history file @var{filename}, leaving only the last
-@var{nlines} lines.
-If @var{filename} is @code{NULL}, then @file{~/.history} is truncated.
-Returns 0 on success, or @code{errno} on failure.
-@end deftypefun
-
-@node History Expansion
-@subsection History Expansion
-
-These functions implement history expansion.
-
-@deftypefun int history_expand (char *string, char **output)
-Expand @var{string}, placing the result into @var{output}, a pointer
-to a string (@pxref{History Interaction}).  Returns:
-@table @code
-@item 0
-If no expansions took place (or, if the only change in
-the text was the removal of escape characters preceding the history expansion
-character);
-@item 1
-if expansions did take place;
-@item -1
-if there was an error in expansion;
-@item 2
-if the returned line should be displayed, but not executed,
-as with the @code{:p} modifier (@pxref{Modifiers}).
-@end table
-
-If an error ocurred in expansion, then @var{output} contains a descriptive
-error message.
-@end deftypefun
-
-@deftypefun {char *} get_history_event (const char *string, int *cindex, int qchar)
-Returns the text of the history event beginning at @var{string} +
-@var{*cindex}.  @var{*cindex} is modified to point to after the event
-specifier.  At function entry, @var{cindex} points to the index into
-@var{string} where the history event specification begins.  @var{qchar}
-is a character that is allowed to end the event specification in addition
-to the ``normal'' terminating characters.
-@end deftypefun
-
-@deftypefun {char **} history_tokenize (const char *string)
-Return an array of tokens parsed out of @var{string}, much as the
-shell might.  The tokens are split on the characters in the
-@var{history_word_delimiters} variable,
-and shell quoting conventions are obeyed.
-@end deftypefun
-
-@deftypefun {char *} history_arg_extract (int first, int last, const char *string)
-Extract a string segment consisting of the @var{first} through @var{last}
-arguments present in @var{string}.  Arguments are split using
-@code{history_tokenize}.
-@end deftypefun
-
-@node History Variables
-@section History Variables
-
-This section describes the externally-visible variables exported by
-the @sc{gnu} History Library.
-
-@deftypevar int history_base
-The logical offset of the first entry in the history list.
-@end deftypevar
-
-@deftypevar int history_length
-The number of entries currently stored in the history list.
-@end deftypevar
-
-@deftypevar int history_max_entries
-The maximum number of history entries.  This must be changed using
-@code{stifle_history()}.
-@end deftypevar
-
-@deftypevar char history_expansion_char
-The character that introduces a history event.  The default is @samp{!}.
-Setting this to 0 inhibits history expansion.
-@end deftypevar
-
-@deftypevar char history_subst_char
-The character that invokes word substitution if found at the start of
-a line.  The default is @samp{^}.
-@end deftypevar
-
-@deftypevar char history_comment_char
-During tokenization, if this character is seen as the first character
-of a word, then it and all subsequent characters up to a newline are
-ignored, suppressing history expansion for the remainder of the line.
-This is disabled by default.
-@end deftypevar
-
-@deftypevar {char *} history_word_delimiters
-The characters that separate tokens for @code{history_tokenize()}.
-The default value is @code{" \t\n()<>;&|"}.
-@end deftypevar
-
-@deftypevar {char *} history_no_expand_chars
-The list of characters which inhibit history expansion if found immediately
-following @var{history_expansion_char}.  The default is space, tab, newline,
-carriage return, and @samp{=}.
-@end deftypevar
-
-@deftypevar {char *} history_search_delimiter_chars
-The list of additional characters which can delimit a history search
-string, in addition to space, TAB, @samp{:} and @samp{?} in the case of
-a substring search.  The default is empty.
-@end deftypevar
-
-@deftypevar int history_quotes_inhibit_expansion
-If non-zero, single-quoted words are not scanned for the history expansion
-character.  The default value is 0.
-@end deftypevar
-
-@deftypevar {rl_linebuf_func_t *} history_inhibit_expansion_function
-This should be set to the address of a function that takes two arguments:
-a @code{char *} (@var{string})
-and an @code{int} index into that string (@var{i}).
-It should return a non-zero value if the history expansion starting at
-@var{string[i]} should not be performed; zero if the expansion should
-be done.
-It is intended for use by applications like Bash that use the history
-expansion character for additional purposes.
-By default, this variable is set to @code{NULL}.
-@end deftypevar
-
-@node History Programming Example
-@section History Programming Example
-
-The following program demonstrates simple use of the @sc{gnu} History Library.
-
-@smallexample
-#include <stdio.h>
-#include <readline/history.h>
-
-main (argc, argv)
-     int argc;
-     char **argv;
-@{
-  char line[1024], *t;
-  int len, done = 0;
-
-  line[0] = 0;
-
-  using_history ();
-  while (!done)
-    @{
-      printf ("history$ ");
-      fflush (stdout);
-      t = fgets (line, sizeof (line) - 1, stdin);
-      if (t && *t)
-        @{
-          len = strlen (t);
-          if (t[len - 1] == '\n')
-            t[len - 1] = '\0';
-        @}
-
-      if (!t)
-        strcpy (line, "quit");
-
-      if (line[0])
-        @{
-          char *expansion;
-          int result;
-
-          result = history_expand (line, &expansion);
-          if (result)
-            fprintf (stderr, "%s\n", expansion);
-
-          if (result < 0 || result == 2)
-            @{
-              free (expansion);
-              continue;
-            @}
-
-          add_history (expansion);
-          strncpy (line, expansion, sizeof (line) - 1);
-          free (expansion);
-        @}
-
-      if (strcmp (line, "quit") == 0)
-        done = 1;
-      else if (strcmp (line, "save") == 0)
-        write_history ("history_file");
-      else if (strcmp (line, "read") == 0)
-        read_history ("history_file");
-      else if (strcmp (line, "list") == 0)
-        @{
-          register HIST_ENTRY **the_list;
-          register int i;
-
-          the_list = history_list ();
-          if (the_list)
-            for (i = 0; the_list[i]; i++)
-              printf ("%d: %s\n", i + history_base, the_list[i]->line);
-        @}
-      else if (strncmp (line, "delete", 6) == 0)
-        @{
-          int which;
-          if ((sscanf (line + 6, "%d", &which)) == 1)
-            @{
-              HIST_ENTRY *entry = remove_history (which);
-              if (!entry)
-                fprintf (stderr, "No such entry %d\n", which);
-              else
-                @{
-                  free (entry->line);
-                  free (entry);
-                @}
-            @}
-          else
-            @{
-              fprintf (stderr, "non-numeric arg given to `delete'\n");
-            @}
-        @}
-    @}
-@}
-@end smallexample
diff --git a/lib/readline/doc/hsuser.texinfo b/lib/readline/doc/hsuser.texinfo
deleted file mode 100644 (file)
index 418bfa8..0000000
+++ /dev/null
@@ -1,437 +0,0 @@
-@ignore
-This file documents the user interface to the GNU History library.
-
-Copyright (C) 1988-2002 Free Software Foundation, Inc.
-Authored by Brian Fox and Chet Ramey.
-
-Permission is granted to make and distribute verbatim copies of this manual
-provided the copyright notice and this permission notice are preserved on
-all copies.
-
-Permission is granted to process this file through Tex and print the
-results, provided the printed document carries copying permission notice
-identical to this one except for the removal of this paragraph (this
-paragraph not being relevant to the printed manual).
-
-Permission is granted to copy and distribute modified versions of this
-manual under the conditions for verbatim copying, provided also that the
-GNU Copyright statement is available to the distributee, and provided that
-the entire resulting derived work is distributed under the terms of a
-permission notice identical to this one.
-
-Permission is granted to copy and distribute translations of this manual
-into another language, under the above conditions for modified versions.
-@end ignore
-
-@node Using History Interactively
-@chapter Using History Interactively
-
-@ifclear BashFeatures
-@defcodeindex bt
-@end ifclear
-
-@ifset BashFeatures
-This chapter describes how to use the @sc{gnu} History Library
-interactively, from a user's standpoint.
-It should be considered a user's guide.
-For information on using the @sc{gnu} History Library in other programs,
-see the @sc{gnu} Readline Library Manual.
-@end ifset
-@ifclear BashFeatures
-This chapter describes how to use the @sc{gnu} History Library interactively,
-from a user's standpoint.  It should be considered a user's guide.  For
-information on using the @sc{gnu} History Library in your own programs,
-@pxref{Programming with GNU History}.
-@end ifclear
-
-@ifset BashFeatures
-@menu
-* Bash History Facilities::    How Bash lets you manipulate your command
-                               history.
-* Bash History Builtins::      The Bash builtin commands that manipulate
-                               the command history.
-* History Interaction::                What it feels like using History as a user.
-@end menu
-@end ifset
-@ifclear BashFeatures
-@menu
-* History Interaction::                What it feels like using History as a user.
-@end menu
-@end ifclear
-
-@ifset BashFeatures
-@node Bash History Facilities
-@section Bash History Facilities
-@cindex command history
-@cindex history list
-
-When the @option{-o history} option to the @code{set} builtin
-is enabled (@pxref{The Set Builtin}),
-the shell provides access to the @dfn{command history},
-the list of commands previously typed.
-The value of the @env{HISTSIZE} shell variable is used as the
-number of commands to save in a history list.
-The text of the last @env{$HISTSIZE}
-commands (default 500) is saved.
-The shell stores each command in the history list prior to
-parameter and variable expansion
-but after history expansion is performed, subject to the
-values of the shell variables
-@env{HISTIGNORE} and @env{HISTCONTROL}.
-
-When the shell starts up, the history is initialized from the
-file named by the @env{HISTFILE} variable (default @file{~/.bash_history}).
-The file named by the value of @env{HISTFILE} is truncated, if
-necessary, to contain no more than the number of lines specified by
-the value of the @env{HISTFILESIZE} variable.
-When an interactive shell exits, the last
-@env{$HISTSIZE} lines are copied from the history list to the file
-named by @env{$HISTFILE}.
-If the @code{histappend} shell option is set (@pxref{Bash Builtins}),
-the lines are appended to the history file,
-otherwise the history file is overwritten.
-If @env{HISTFILE}
-is unset, or if the history file is unwritable, the history is
-not saved.  After saving the history, the history file is truncated
-to contain no more than @env{$HISTFILESIZE}
-lines.  If @env{HISTFILESIZE} is not set, no truncation is performed.
-
-The builtin command @code{fc} may be used to list or edit and re-execute
-a portion of the history list.
-The @code{history} builtin may be used to display or modify the history
-list and manipulate the history file.
-When using command-line editing, search commands
-are available in each editing mode that provide access to the
-history list (@pxref{Commands For History}).
-
-The shell allows control over which commands are saved on the history
-list.  The @env{HISTCONTROL} and @env{HISTIGNORE}
-variables may be set to cause the shell to save only a subset of the
-commands entered.
-The @code{cmdhist}
-shell option, if enabled, causes the shell to attempt to save each
-line of a multi-line command in the same history entry, adding
-semicolons where necessary to preserve syntactic correctness.
-The @code{lithist}
-shell option causes the shell to save the command with embedded newlines
-instead of semicolons.
-The @code{shopt} builtin is used to set these options.
-@xref{Bash Builtins}, for a description of @code{shopt}.
-
-@node Bash History Builtins
-@section Bash History Builtins
-@cindex history builtins
-
-Bash provides two builtin commands which manipulate the
-history list and history file.
-
-@table @code
-
-@item fc
-@btindex fc
-@example
-@code{fc [-e @var{ename}] [-nlr] [@var{first}] [@var{last}]}
-@code{fc -s [@var{pat}=@var{rep}] [@var{command}]}
-@end example
-
-Fix Command.  In the first form, a range of commands from @var{first} to
-@var{last} is selected from the history list.  Both @var{first} and
-@var{last} may be specified as a string (to locate the most recent
-command beginning with that string) or as a number (an index into the
-history list, where a negative number is used as an offset from the
-current command number).  If @var{last} is not specified it is set to
-@var{first}.  If @var{first} is not specified it is set to the previous
-command for editing and @minus{}16 for listing.  If the @option{-l} flag is
-given, the commands are listed on standard output.  The @option{-n} flag
-suppresses the command numbers when listing.  The @option{-r} flag
-reverses the order of the listing.  Otherwise, the editor given by
-@var{ename} is invoked on a file containing those commands.  If
-@var{ename} is not given, the value of the following variable expansion
-is used: @code{$@{FCEDIT:-$@{EDITOR:-vi@}@}}.  This says to use the
-value of the @env{FCEDIT} variable if set, or the value of the
-@env{EDITOR} variable if that is set, or @code{vi} if neither is set.
-When editing is complete, the edited commands are echoed and executed.
-
-In the second form, @var{command} is re-executed after each instance
-of @var{pat} in the selected command is replaced by @var{rep}.
-
-A useful alias to use with the @code{fc} command is @code{r='fc -s'}, so
-that typing @samp{r cc} runs the last command beginning with @code{cc}
-and typing @samp{r} re-executes the last command (@pxref{Aliases}).
-
-@item history
-@btindex history
-@example
-history [@var{n}]
-history -c
-history -d @var{offset}
-history [-anrw] [@var{filename}]
-history -ps @var{arg}
-@end example
-
-With no options, display the history list with line numbers.
-Lines prefixed with a @samp{*} have been modified.
-An argument of @var{n} lists only the last @var{n} lines.
-Options, if supplied, have the following meanings:
-
-@table @code
-@item -c
-Clear the history list.  This may be combined
-with the other options to replace the history list completely.
-
-@item -d @var{offset}
-Delete the history entry at position @var{offset}.
-@var{offset} should be specified as it appears when the history is
-displayed.
-
-@item -a
-Append the new
-history lines (history lines entered since the beginning of the
-current Bash session) to the history file.
-
-@item -n
-Append the history lines not already read from the history file
-to the current history list.  These are lines appended to the history
-file since the beginning of the current Bash session.
-
-@item -r
-Read the current history file and append its contents to
-the history list.
-
-@item -w
-Write out the current history to the history file.
-
-@item -p
-Perform history substitution on the @var{arg}s and display the result
-on the standard output, without storing the results in the history list.
-
-@item -s
-The @var{arg}s are added to the end of
-the history list as a single entry.
-
-@end table
-
-When any of the @option{-w}, @option{-r}, @option{-a}, or @option{-n} options is
-used, if @var{filename}
-is given, then it is used as the history file.  If not, then
-the value of the @env{HISTFILE} variable is used.
-
-@end table
-@end ifset
-
-@node History Interaction
-@section History Expansion
-@cindex history expansion
-
-The History library provides a history expansion feature that is similar
-to the history expansion provided by @code{csh}.  This section
-describes the syntax used to manipulate the history information.
-
-History expansions introduce words from the history list into
-the input stream, making it easy to repeat commands, insert the
-arguments to a previous command into the current input line, or
-fix errors in previous commands quickly.
-
-History expansion takes place in two parts.  The first is to determine
-which line from the history list should be used during substitution.
-The second is to select portions of that line for inclusion into the
-current one.  The line selected from the history is called the
-@dfn{event}, and the portions of that line that are acted upon are
-called @dfn{words}.  Various @dfn{modifiers} are available to manipulate
-the selected words.  The line is broken into words in the same fashion
-that Bash does, so that several words
-surrounded by quotes are considered one word.
-History expansions are introduced by the appearance of the
-history expansion character, which is @samp{!} by default.
-@ifset BashFeatures
-Only @samp{\} and @samp{'} may be used to escape the history expansion
-character.
-@end ifset
-
-@ifset BashFeatures
-Several shell options settable with the @code{shopt}
-builtin (@pxref{Bash Builtins}) may be used to tailor
-the behavior of history expansion.  If the
-@code{histverify} shell option is enabled, and Readline
-is being used, history substitutions are not immediately passed to
-the shell parser.
-Instead, the expanded line is reloaded into the Readline
-editing buffer for further modification.
-If Readline is being used, and the @code{histreedit}
-shell option is enabled, a failed history expansion will be
-reloaded into the Readline editing buffer for correction.
-The @option{-p} option to the @code{history} builtin command
-may be used to see what a history expansion will do before using it.
-The @option{-s} option to the @code{history} builtin may be used to
-add commands to the end of the history list without actually executing
-them, so that they are available for subsequent recall.
-This is most useful in conjunction with Readline.
-
-The shell allows control of the various characters used by the
-history expansion mechanism with the @code{histchars} variable.
-@end ifset
-
-@menu
-* Event Designators::  How to specify which history line to use.
-* Word Designators::   Specifying which words are of interest.
-* Modifiers::          Modifying the results of substitution.
-@end menu
-
-@node Event Designators
-@subsection Event Designators
-@cindex event designators
-
-An event designator is a reference to a command line entry in the
-history list.
-@cindex history events
-
-@table @asis
-
-@item @code{!}
-Start a history substitution, except when followed by a space, tab,
-the end of the line, @samp{=} or @samp{(}.
-
-@item @code{!@var{n}}
-Refer to command line @var{n}.
-
-@item @code{!-@var{n}}
-Refer to the command @var{n} lines back.
-
-@item @code{!!}
-Refer to the previous command.  This is a synonym for @samp{!-1}.
-
-@item @code{!@var{string}}
-Refer to the most recent command starting with @var{string}.
-
-@item @code{!?@var{string}[?]}
-Refer to the most recent command containing @var{string}.  The trailing
-@samp{?} may be omitted if the @var{string} is followed immediately by
-a newline.
-
-@item @code{^@var{string1}^@var{string2}^}
-Quick Substitution.  Repeat the last command, replacing @var{string1}
-with @var{string2}.  Equivalent to
-@code{!!:s/@var{string1}/@var{string2}/}.
-
-@item @code{!#}
-The entire command line typed so far.
-
-@end table
-
-@node Word Designators
-@subsection Word Designators
-
-Word designators are used to select desired words from the event.
-A @samp{:} separates the event specification from the word designator.  It
-may be omitted if the word designator begins with a @samp{^}, @samp{$},
-@samp{*}, @samp{-}, or @samp{%}.  Words are numbered from the beginning
-of the line, with the first word being denoted by 0 (zero).  Words are
-inserted into the current line separated by single spaces.
-
-@need 0.75
-For example,
-
-@table @code
-@item !!
-designates the preceding command.  When you type this, the preceding
-command is repeated in toto.
-
-@item !!:$
-designates the last argument of the preceding command.  This may be
-shortened to @code{!$}.
-
-@item !fi:2
-designates the second argument of the most recent command starting with
-the letters @code{fi}.
-@end table
-
-@need 0.75
-Here are the word designators:
-@table @code
-
-@item 0 (zero)
-The @code{0}th word.  For many applications, this is the command word.
-
-@item @var{n}
-The @var{n}th word.
-
-@item ^
-The first argument; that is, word 1.
-
-@item $
-The last argument.
-
-@item %
-The word matched by the most recent @samp{?@var{string}?} search.
-
-@item @var{x}-@var{y}
-A range of words; @samp{-@var{y}} abbreviates @samp{0-@var{y}}.
-
-@item *
-All of the words, except the @code{0}th.  This is a synonym for @samp{1-$}.
-It is not an error to use @samp{*} if there is just one word in the event;
-the empty string is returned in that case.
-
-@item @var{x}*
-Abbreviates @samp{@var{x}-$}
-
-@item @var{x}-
-Abbreviates @samp{@var{x}-$} like @samp{@var{x}*}, but omits the last word.
-
-@end table
-
-If a word designator is supplied without an event specification, the
-previous command is used as the event.
-
-@node Modifiers
-@subsection Modifiers
-
-After the optional word designator, you can add a sequence of one or more
-of the following modifiers, each preceded by a @samp{:}.
-
-@table @code
-
-@item h
-Remove a trailing pathname component, leaving only the head.
-
-@item t
-Remove all leading  pathname  components, leaving the tail.
-
-@item r
-Remove a trailing suffix of the form @samp{.@var{suffix}}, leaving
-the basename.
-
-@item e
-Remove all but the trailing suffix.
-
-@item p
-Print the new command but do not execute it.
-
-@ifset BashFeatures
-@item q
-Quote the substituted words, escaping further substitutions.
-
-@item x
-Quote the substituted words as with @samp{q},
-but break into words at spaces, tabs, and newlines.
-@end ifset
-
-@item s/@var{old}/@var{new}/
-Substitute @var{new} for the first occurrence of @var{old} in the
-event line.  Any delimiter may be used in place of @samp{/}.
-The delimiter may be quoted in @var{old} and @var{new}
-with a single backslash.  If @samp{&} appears in @var{new},
-it is replaced by @var{old}.  A single backslash will quote
-the @samp{&}.  The final delimiter is optional if it is the last
-character on the input line.
-
-@item &
-Repeat the previous substitution.
-
-@item g
-Cause changes to be applied over the entire event line.  Used in
-conjunction with @samp{s}, as in @code{gs/@var{old}/@var{new}/},
-or with @samp{&}.
-
-@end table
diff --git a/lib/readline/doc/manvers.texinfo b/lib/readline/doc/manvers.texinfo
deleted file mode 100644 (file)
index 1206cf0..0000000
+++ /dev/null
@@ -1,10 +0,0 @@
-@ignore
-Copyright (C) 1988-2002 Free Software Foundation, Inc. 
-@end ignore
-
-@set EDITION 4.3
-@set VERSION 4.3
-@set UPDATED 2002 March 4
-@set UPDATE-MONTH March 2002
-
-@set LASTCHANGE Mon Mar  4 12:00:16 EST 2002
diff --git a/lib/readline/doc/readline.3 b/lib/readline/doc/readline.3
deleted file mode 100644 (file)
index 0611651..0000000
+++ /dev/null
@@ -1,1427 +0,0 @@
-.\"
-.\" MAN PAGE COMMENTS to
-.\"
-.\"    Chet Ramey
-.\"    Information Network Services
-.\"    Case Western Reserve University
-.\"    chet@ins.CWRU.Edu
-.\"
-.\"    Last Change: Thu Nov 15 21:02:20 EST 2012
-.\"
-.TH READLINE 3 "2012 November 15" "GNU Readline 6.2"
-.\"
-.\" File Name macro.  This used to be `.PN', for Path Name,
-.\" but Sun doesn't seem to like that very much.
-.\"
-.de FN
-\fI\|\\$1\|\fP
-..
-.SH NAME
-readline \- get a line from a user with editing
-.SH SYNOPSIS
-.LP
-.nf
-.ft B
-#include <stdio.h>
-#include <readline/readline.h>
-#include <readline/history.h>
-.ft
-.fi
-.LP
-.nf
-\fIchar *\fP
-.br
-\fBreadline\fP (\fIconst char *prompt\fP);
-.fi
-.SH COPYRIGHT
-.if n Readline is Copyright (C) 1989\-2011 Free Software Foundation,  Inc.
-.if t Readline is Copyright \(co 1989\-2011 Free Software Foundation, Inc.
-.SH DESCRIPTION
-.LP
-.B readline
-will read a line from the terminal
-and return it, using
-.B prompt
-as a prompt.  If 
-.B prompt
-is \fBNULL\fP or the empty string, no prompt is issued.
-The line returned is allocated with
-.IR malloc (3);
-the caller must free it when finished.  The line returned
-has the final newline removed, so only the text of the line
-remains.
-.LP
-.B readline
-offers editing capabilities while the user is entering the
-line.
-By default, the line editing commands
-are similar to those of emacs.
-A vi\-style line editing interface is also available.
-.LP
-This manual page describes only the most basic use of \fBreadline\fP.
-Much more functionality is available; see
-\fIThe GNU Readline Library\fP and \fIThe GNU History Library\fP
-for additional information.
-.SH RETURN VALUE
-.LP
-.B readline
-returns the text of the line read.  A blank line
-returns the empty string.  If
-.B EOF
-is encountered while reading a line, and the line is empty,
-.B NULL
-is returned.  If an
-.B EOF
-is read with a non\-empty line, it is
-treated as a newline.
-.SH NOTATION
-.LP
-An Emacs-style notation is used to denote
-keystrokes.  Control keys are denoted by C\-\fIkey\fR, e.g., C\-n
-means Control\-N.  Similarly, 
-.I meta
-keys are denoted by M\-\fIkey\fR, so M\-x means Meta\-X.  (On keyboards
-without a 
-.I meta
-key, M\-\fIx\fP means ESC \fIx\fP, i.e., press the Escape key
-then the
-.I x
-key.  This makes ESC the \fImeta prefix\fP.
-The combination M\-C\-\fIx\fP means ESC\-Control\-\fIx\fP,
-or press the Escape key
-then hold the Control key while pressing the
-.I x
-key.)
-.PP
-Readline commands may be given numeric
-.IR arguments ,
-which normally act as a repeat count.  Sometimes, however, it is the
-sign of the argument that is significant.  Passing a negative argument
-to a command that acts in the forward direction (e.g., \fBkill\-line\fP)
-causes that command to act in a backward direction.  Commands whose
-behavior with arguments deviates from this are noted.
-.PP
-When a command is described as \fIkilling\fP text, the text
-deleted is saved for possible future retrieval
-(\fIyanking\fP).  The killed text is saved in a
-\fIkill ring\fP.  Consecutive kills cause the text to be
-accumulated into one unit, which can be yanked all at once. 
-Commands which do not kill text separate the chunks of text
-on the kill ring.
-.SH INITIALIZATION FILE
-.LP
-Readline is customized by putting commands in an initialization
-file (the \fIinputrc\fP file).
-The name of this file is taken from the value of the
-.B INPUTRC
-environment variable.  If that variable is unset, the default is
-.IR ~/.inputrc .
-If that file  does not exist or cannot be read, the ultimate default is
-.IR /etc/inputrc .
-When a program which uses the readline library starts up, the
-init file is read, and the key bindings and variables are set.
-There are only a few basic constructs allowed in the
-readline init file.  Blank lines are ignored.
-Lines beginning with a \fB#\fP are comments.
-Lines beginning with a \fB$\fP indicate conditional constructs.
-Other lines denote key bindings and variable settings.
-Each program using this library may add its own commands
-and bindings.
-.PP
-For example, placing
-.RS
-.PP
-M\-Control\-u: universal\-argument
-.RE
-or
-.RS
-C\-Meta\-u: universal\-argument
-.RE
-.sp
-into the 
-.I inputrc
-would make M\-C\-u execute the readline command
-.IR universal\-argument .
-.PP
-The following symbolic character names are recognized while
-processing key bindings:
-.IR DEL ,
-.IR ESC ,
-.IR ESCAPE ,
-.IR LFD ,
-.IR NEWLINE ,
-.IR RET ,
-.IR RETURN ,
-.IR RUBOUT ,
-.IR SPACE ,
-.IR SPC ,
-and
-.IR TAB .
-.PP
-In addition to command names, readline allows keys to be bound
-to a string that is inserted when the key is pressed (a \fImacro\fP).
-.PP
-.SS Key Bindings
-.PP
-The syntax for controlling key bindings in the
-.I inputrc
-file is simple.  All that is required is the name of the
-command or the text of a macro and a key sequence to which
-it should be bound. The name may be specified in one of two ways:
-as a symbolic key name, possibly with \fIMeta\-\fP or \fIControl\-\fP
-prefixes, or as a key sequence.
-The name and key sequence are separated by a colon.  There can be no
-whitespace between the name and the colon.
-.PP
-When using the form \fBkeyname\fP:\^\fIfunction-name\fP or \fImacro\fP,
-.I keyname
-is the name of a key spelled out in English.  For example:
-.sp
-.RS
-Control\-u: universal\-argument
-.br
-Meta\-Rubout: backward\-kill\-word
-.br
-Control\-o: "> output"
-.RE
-.LP
-In the above example,
-.I C\-u
-is bound to the function
-.BR universal\-argument ,
-.I M-DEL
-is bound to the function
-.BR backward\-kill\-word ,
-and
-.I C\-o
-is bound to run the macro
-expressed on the right hand side (that is, to insert the text
-.if t \f(CW> output\fP
-.if n ``> output''
-into the line).
-.PP
-In the second form, \fB"keyseq"\fP:\^\fIfunction\-name\fP or \fImacro\fP,
-.B keyseq
-differs from
-.B keyname
-above in that strings denoting
-an entire key sequence may be specified by placing the sequence
-within double quotes.  Some GNU Emacs style key escapes can be
-used, as in the following example, but the symbolic character names
-are not recognized.
-.sp
-.RS
-"\eC\-u": universal\-argument
-.br
-"\eC\-x\eC\-r": re\-read\-init\-file
-.br
-"\ee[11~": "Function Key 1"
-.RE
-.PP
-In this example,
-.I C-u
-is again bound to the function
-.BR universal\-argument .
-.I "C-x C-r"
-is bound to the function
-.BR re\-read\-init\-file ,
-and 
-.I "ESC [ 1 1 ~"
-is bound to insert the text
-.if t \f(CWFunction Key 1\fP.
-.if n ``Function Key 1''.
-.PP
-The full set of GNU Emacs style escape sequences available when specifying
-key sequences is
-.RS
-.PD 0
-.TP
-.B \eC\-
-control prefix
-.TP
-.B \eM\-
-meta prefix
-.TP
-.B \ee
-an escape character
-.TP
-.B \e\e
-backslash
-.TP
-.B \e"
-literal ", a double quote
-.TP
-.B \e'
-literal ', a single quote
-.RE
-.PD
-.PP
-In addition to the GNU Emacs style escape sequences, a second
-set of backslash escapes is available:
-.RS
-.PD 0
-.TP
-.B \ea
-alert (bell)
-.TP
-.B \eb
-backspace
-.TP
-.B \ed
-delete
-.TP
-.B \ef
-form feed
-.TP
-.B \en
-newline
-.TP
-.B \er
-carriage return
-.TP
-.B \et
-horizontal tab
-.TP
-.B \ev
-vertical tab
-.TP
-.B \e\fInnn\fP
-the eight-bit character whose value is the octal value \fInnn\fP
-(one to three digits)
-.TP
-.B \ex\fIHH\fP
-the eight-bit character whose value is the hexadecimal value \fIHH\fP
-(one or two hex digits)
-.RE
-.PD
-.PP
-When entering the text of a macro, single or double quotes should
-be used to indicate a macro definition.  Unquoted text
-is assumed to be a function name.
-In the macro body, the backslash escapes described above are expanded.
-Backslash will quote any other character in the macro text,
-including " and '.
-.PP
-.B Bash
-allows the current readline key bindings to be displayed or modified
-with the
-.B bind
-builtin command.  The editing mode may be switched during interactive
-use by using the
-.B \-o
-option to the
-.B set
-builtin command.  Other programs using this library provide
-similar mechanisms.  The
-.I inputrc
-file may be edited and re-read if a program does not provide
-any other means to incorporate new bindings.
-.SS Variables
-.PP
-Readline has variables that can be used to further customize its
-behavior.  A variable may be set in the
-.I inputrc
-file with a statement of the form
-.RS
-.PP
-\fBset\fP \fIvariable\-name\fP \fIvalue\fP
-.RE
-.PP
-Except where noted, readline variables can take the values
-.B On
-or
-.B Off
-(without regard to case).
-Unrecognized variable names are ignored.
-When a variable value is read, empty or null values, "on" (case-insensitive),
-and "1" are equivalent to \fBOn\fP.  All other values are equivalent to
-\fBOff\fP.
-The variables and their default values are:
-.PP
-.PD 0
-.TP
-.B bell\-style (audible)
-Controls what happens when readline wants to ring the terminal bell.
-If set to \fBnone\fP, readline never rings the bell.  If set to
-\fBvisible\fP, readline uses a visible bell if one is available.
-If set to \fBaudible\fP, readline attempts to ring the terminal's bell.
-.TP
-.B bind\-tty\-special\-chars (On)
-If set to \fBOn\fP, readline attempts to bind the control characters  
-treated specially by the kernel's terminal driver to their readline
-equivalents.
-.TP
-.B colored\-stats (Off)
-If set to \fBOn\fP, readline displays possible completions using different
-colors to indicate their file type.     
-The color definitions are taken from the value of the \fBLS_COLORS\fP
-environment variable.
-.TP
-.B comment\-begin (``#'')
-The string that is inserted in \fBvi\fP mode when the
-.B insert\-comment
-command is executed.
-This command is bound to
-.B M\-#
-in emacs mode and to
-.B #
-in vi command mode.
-.TP
-.B completion\-display\-width (-1)
-The number of screen columns used to display possible matches
-when performing completion.
-The value is ignored if it is less than 0 or greater than the terminal
-screen width.
-A value of 0 will cause matches to be displayed one per line.
-The default value is -1.
-.TP 
-.B completion\-ignore\-case (Off)
-If set to \fBOn\fP, readline performs filename matching and completion
-in a case\-insensitive fashion.
-.TP
-.B completion\-map\-case (Off)
-If set to \fBOn\fP, and \fBcompletion\-ignore\-case\fP is enabled, readline
-treats hyphens (\fI\-\fP) and underscores (\fI_\fP) as equivalent when
-performing case\-insensitive filename matching and completion.
-.TP
-.B completion\-prefix\-display\-length (0)
-The length in characters of the common prefix of a list of possible
-completions that is displayed without modification.  When set to a
-value greater than zero, common prefixes longer than this value are
-replaced with an ellipsis when displaying possible completions.
-.TP
-.B completion\-query\-items (100)
-This determines when the user is queried about viewing
-the number of possible completions
-generated by the \fBpossible\-completions\fP command.
-It may be set to any integer value greater than or equal to
-zero.  If the number of possible completions is greater than
-or equal to the value of this variable, the user is asked whether
-or not he wishes to view them; otherwise they are simply listed
-on the terminal.  A negative value causes readline to never ask.
-.TP
-.B convert\-meta (On)
-If set to \fBOn\fP, readline will convert characters with the
-eighth bit set to an ASCII key sequence
-by stripping the eighth bit and prefixing it with an
-escape character (in effect, using escape as the \fImeta prefix\fP).
-.TP
-.B disable\-completion (Off)
-If set to \fBOn\fP, readline will inhibit word completion.  Completion 
-characters will be inserted into the line as if they had been
-mapped to \fBself-insert\fP.
-.TP
-.B editing\-mode (emacs)
-Controls whether readline begins with a set of key bindings similar
-to \fIEmacs\fP or \fIvi\fP.
-.B editing\-mode
-can be set to either
-.B emacs
-or
-.BR vi .
-.TP
-.B echo\-control\-characters (On)
-When set to \fBOn\fP, on operating systems that indicate they support it,
-readline echoes a character corresponding to a signal generated from the
-keyboard.
-.TP
-.B enable\-keypad (Off)
-When set to \fBOn\fP, readline will try to enable the application
-keypad when it is called.  Some systems need this to enable the
-arrow keys.
-.TP
-.B enable\-meta\-key (On)
-When set to \fBOn\fP, readline will try to enable any meta modifier
-key the terminal claims to support when it is called.  On many terminals,
-the meta key is used to send eight-bit characters.
-.TP
-.B expand\-tilde (Off)
-If set to \fBOn\fP, tilde expansion is performed when readline
-attempts word completion.
-.TP
-.B history\-preserve\-point (Off)
-If set to \fBOn\fP, the history code attempts to place point at the 
-same location on each history line retrieved with \fBprevious-history\fP 
-or \fBnext-history\fP.
-.TP
-.B history\-size (0)
-Set the maximum number of history entries saved in the history list.
-If set to zero, any existing history entries are deleted and no new entries
-are saved.
-If set to a value less than zero, the number of history entries is not
-limited.
-By default, the number of history entries is not limited.
-.TP
-.B horizontal\-scroll\-mode (Off)
-When set to \fBOn\fP, makes readline use a single line for display,
-scrolling the input horizontally on a single screen line when it
-becomes longer than the screen width rather than wrapping to a new line.
-.TP
-.B input\-meta (Off)
-If set to \fBOn\fP, readline will enable eight-bit input (that is,
-it will not clear the eighth bit in the characters it reads),
-regardless of what the terminal claims it can support.  The name
-.B meta\-flag
-is a synonym for this variable.
-.TP
-.B isearch\-terminators (``C\-[ C\-J'')
-The string of characters that should terminate an incremental
-search without subsequently executing the character as a command.
-If this variable has not been given a value, the characters
-\fIESC\fP and \fIC\-J\fP will terminate an incremental search.
-.TP
-.B keymap (emacs)
-Set the current readline keymap.  The set of legal keymap names is
-\fIemacs, emacs-standard, emacs-meta, emacs-ctlx, vi, vi-move,
-vi-command\fP, and
-.IR vi-insert .
-\fIvi\fP is equivalent to \fIvi-command\fP; \fIemacs\fP is
-equivalent to \fIemacs-standard\fP.  The default value is
-.IR emacs .
-The value of
-.B editing\-mode
-also affects the default keymap.
-.TP
-.B keyseq\-timeout (500)
-Specifies the duration \fIreadline\fP will wait for a character when reading an
-ambiguous key sequence (one that can form a complete key sequence using
-the input read so far, or can take additional input to complete a longer 
-key sequence).
-If no input is received within the timeout, \fIreadline\fP will use the shorter
-but complete key sequence.
-The value is specified in milliseconds, so a value of 1000 means that
-\fIreadline\fP will wait one second for additional input.
-If this variable is set to a value less than or equal to zero, or to a
-non-numeric value, \fIreadline\fP will wait until another key is pressed to
-decide which key sequence to complete.
-.TP
-.B mark\-directories (On)
-If set to \fBOn\fP, completed directory names have a slash
-appended.
-.TP
-.B mark\-modified\-lines (Off)
-If set to \fBOn\fP, history lines that have been modified are displayed
-with a preceding asterisk (\fB*\fP).
-.TP
-.B mark\-symlinked\-directories (Off)
-If set to \fBOn\fP, completed names which are symbolic links to directories
-have a slash appended (subject to the value of
-\fBmark\-directories\fP).
-.TP
-.B match\-hidden\-files (On)
-This variable, when set to \fBOn\fP, causes readline to match files whose 
-names begin with a `.' (hidden files) when performing filename     
-completion.
-If set to \fBOff\fP, the leading `.' must be
-supplied by the user in the filename to be completed.
-.TP
-.B menu\-complete\-display\-prefix (Off)
-If set to \fBOn\fP, menu completion displays the common prefix of the
-list of possible completions (which may be empty) before cycling through
-the list.
-.TP
-.B output\-meta (Off)
-If set to \fBOn\fP, readline will display characters with the
-eighth bit set directly rather than as a meta-prefixed escape
-sequence.
-.TP
-.B page\-completions (On)
-If set to \fBOn\fP, readline uses an internal \fImore\fP-like pager
-to display a screenful of possible completions at a time.
-.TP
-.B print\-completions\-horizontally (Off)
-If set to \fBOn\fP, readline will display completions with matches
-sorted horizontally in alphabetical order, rather than down the screen.
-.TP
-.B revert\-all\-at\-newline (Off)
-If set to \fBOn\fP, readline will undo all changes to history lines
-before returning when \fBaccept\-line\fP is executed.  By default,
-history lines may be modified and retain individual undo lists across
-calls to \fBreadline\fP.
-.TP
-.B show\-all\-if\-ambiguous (Off)
-This alters the default behavior of the completion functions.  If
-set to
-.BR On ,
-words which have more than one possible completion cause the
-matches to be listed immediately instead of ringing the bell.
-.TP
-.B show\-all\-if\-unmodified (Off)
-This alters the default behavior of the completion functions in
-a fashion similar to \fBshow\-all\-if\-ambiguous\fP.
-If set to
-.BR On , 
-words which have more than one possible completion without any
-possible partial completion (the possible completions don't share 
-a common prefix) cause the matches to be listed immediately instead
-of ringing the bell.
-.TP
-.B show\-mode\-in\-prompt (Off)
-If set to \fBOn\fP, add a character to the beginning of the prompt
-indicating the editing mode: emacs (@), vi command (:) or vi      
-insertion (+).
-.TP
-.B skip\-completed\-text (Off)
-If set to \fBOn\fP, this alters the default completion behavior when
-inserting a single match into the line.  It's only active when
-performing completion in the middle of a word.  If enabled, readline
-does not insert characters from the completion that match characters
-after point in the word being completed, so portions of the word
-following the cursor are not duplicated.
-.TP
-.B visible\-stats (Off)
-If set to \fBOn\fP, a character denoting a file's type as reported  
-by \fIstat\fP(2) is appended to the filename when listing possible
-completions.
-.PD
-.SS Conditional Constructs
-.PP
-Readline implements a facility similar in spirit to the conditional
-compilation features of the C preprocessor which allows key
-bindings and variable settings to be performed as the result
-of tests.  There are four parser directives used.
-.IP \fB$if\fP
-The 
-.B $if
-construct allows bindings to be made based on the
-editing mode, the terminal being used, or the application using
-readline.  The text of the test extends to the end of the line;
-no characters are required to isolate it.
-.RS
-.IP \fBmode\fP
-The \fBmode=\fP form of the \fB$if\fP directive is used to test
-whether readline is in emacs or vi mode.
-This may be used in conjunction
-with the \fBset keymap\fP command, for instance, to set bindings in
-the \fIemacs-standard\fP and \fIemacs-ctlx\fP keymaps only if
-readline is starting out in emacs mode.
-.IP \fBterm\fP
-The \fBterm=\fP form may be used to include terminal-specific
-key bindings, perhaps to bind the key sequences output by the
-terminal's function keys.  The word on the right side of the
-.B =
-is tested against the full name of the terminal and the portion
-of the terminal name before the first \fB\-\fP.  This allows
-.I sun
-to match both
-.I sun
-and
-.IR sun\-cmd ,
-for instance.
-.IP \fBapplication\fP
-The \fBapplication\fP construct is used to include
-application-specific settings.  Each program using the readline
-library sets the \fIapplication name\fP, and an initialization
-file can test for a particular value.
-This could be used to bind key sequences to functions useful for
-a specific program.  For instance, the following command adds a
-key sequence that quotes the current or previous word in \fBbash\fP:
-.sp 1
-.RS
-.nf
-\fB$if\fP Bash
-# Quote the current or previous word
-"\eC-xq": "\eeb\e"\eef\e""
-\fB$endif\fP
-.fi
-.RE
-.RE
-.IP \fB$endif\fP
-This command, as seen in the previous example, terminates an
-\fB$if\fP command.
-.IP \fB$else\fP
-Commands in this branch of the \fB$if\fP directive are executed if
-the test fails.
-.IP \fB$include\fP
-This directive takes a single filename as an argument and reads commands
-and bindings from that file.  For example, the following directive
-would read \fI/etc/inputrc\fP:
-.sp 1
-.RS
-.nf
-\fB$include\fP \^ \fI/etc/inputrc\fP
-.fi 
-.RE
-.SH SEARCHING
-.PP
-Readline provides commands for searching through the command history
-for lines containing a specified string.
-There are two search modes:
-.I incremental
-and
-.IR non-incremental .
-.PP
-Incremental searches begin before the user has finished typing the
-search string.
-As each character of the search string is typed, readline displays
-the next entry from the history matching the string typed so far.
-An incremental search requires only as many characters as needed to
-find the desired history entry.
-To search backward in the history for a particular string, type
-\fBC\-r\fP.  Typing \fBC\-s\fP searches forward through the history.
-The characters present in the value of the \fBisearch-terminators\fP
-variable are used to terminate an incremental search.
-If that variable has not been assigned a value the \fIEscape\fP and
-\fBC\-J\fP characters will terminate an incremental search.
-\fBC\-G\fP will abort an incremental search and restore the original
-line.
-When the search is terminated, the history entry containing the
-search string becomes the current line.
-.PP
-To find other matching entries in the history list, type \fBC\-s\fP or
-\fBC\-r\fP as appropriate.
-This will search backward or forward in the history for the next
-line matching the search string typed so far.
-Any other key sequence bound to a readline command will terminate
-the search and execute that command.
-For instance, a newline will terminate the search and accept
-the line, thereby executing the command from the history list.
-A movement command will terminate the search, make the last line found
-the current line, and begin editing.
-.PP
-Non-incremental searches read the entire search string before starting
-to search for matching history lines.  The search string may be
-typed by the user or be part of the contents of the current line.
-.SH EDITING COMMANDS
-.PP
-The following is a list of the names of the commands and the default
-key sequences to which they are bound.
-Command names without an accompanying key sequence are unbound by default.
-.PP
-In the following descriptions, \fIpoint\fP refers to the current cursor
-position, and \fImark\fP refers to a cursor position saved by the
-\fBset\-mark\fP command.
-The text between the point and mark is referred to as the \fIregion\fP.
-.SS Commands for Moving
-.PP
-.PD 0
-.TP
-.B beginning\-of\-line (C\-a)
-Move to the start of the current line.
-.TP
-.B end\-of\-line (C\-e)
-Move to the end of the line.
-.TP
-.B forward\-char (C\-f)
-Move forward a character.
-.TP
-.B backward\-char (C\-b)
-Move back a character.
-.TP
-.B forward\-word (M\-f)
-Move forward to the end of the next word.  Words are composed of
-alphanumeric characters (letters and digits).
-.TP
-.B backward\-word (M\-b)
-Move back to the start of the current or previous word.  Words are
-composed of alphanumeric characters (letters and digits).
-.TP
-.B clear\-screen (C\-l)
-Clear the screen leaving the current line at the top of the screen.
-With an argument, refresh the current line without clearing the
-screen.
-.TP
-.B redraw\-current\-line
-Refresh the current line.
-.PD
-.SS Commands for Manipulating the History
-.PP
-.PD 0
-.TP
-.B accept\-line (Newline, Return)
-Accept the line regardless of where the cursor is.
-If this line is
-non-empty, it may be added to the history list for future recall with
-\fBadd_history()\fP.
-If the line is a modified history line, the history line is restored to its original state.
-.TP
-.B previous\-history (C\-p)
-Fetch the previous command from the history list, moving back in
-the list.
-.TP
-.B next\-history (C\-n)
-Fetch the next command from the history list, moving forward in the
-list.
-.TP
-.B beginning\-of\-history (M\-<)
-Move to the first line in the history.
-.TP
-.B end\-of\-history (M\->)
-Move to the end of the input history, i.e., the line currently being
-entered.
-.TP
-.B reverse\-search\-history (C\-r)
-Search backward starting at the current line and moving `up' through
-the history as necessary.  This is an incremental search.
-.TP
-.B forward\-search\-history (C\-s)
-Search forward starting at the current line and moving `down' through
-the history as necessary.  This is an incremental search.
-.TP
-.B non\-incremental\-reverse\-search\-history (M\-p)
-Search backward through the history starting at the current line
-using a non-incremental search for a string supplied by the user.
-.TP
-.B non\-incremental\-forward\-search\-history (M\-n)
-Search forward through the history using a non-incremental search
-for a string supplied by the user.
-.TP
-.B history\-search\-backward
-Search backward through the history for the string of characters
-between the start of the current line and the current cursor
-position (the \fIpoint\fP).
-The search string must match at the beginning of a history line.
-This is a non-incremental search.
-.TP
-.B history\-search\-forward
-Search forward through the history for the string of characters
-between the start of the current line and the point.
-The search string must match at the beginning of a history line.
-This is a non-incremental search.
-.TP
-.B history\-substring\-search\-backward
-Search backward through the history for the string of characters
-between the start of the current line and the current cursor
-position (the \fIpoint\fP).
-The search string may match anywhere in a history line.
-This is a non-incremental search.
-.TP
-.B history\-substring\-search\-forward
-Search forward through the history for the string of characters
-between the start of the current line and the point.
-The search string may match anywhere in a history line.
-This is a non-incremental search.
-.TP
-.B yank\-nth\-arg (M\-C\-y)
-Insert the first argument to the previous command (usually
-the second word on the previous line) at point.
-With an argument
-.IR n ,
-insert the \fIn\fPth word from the previous command (the words
-in the previous command begin with word 0).  A negative argument
-inserts the \fIn\fPth word from the end of the previous command.
-Once the argument \fIn\fP is computed, the argument is extracted
-as if the "!\fIn\fP" history expansion had been specified.
-.TP
-.B
-yank\-last\-arg (M\-.\^, M\-_\^)
-Insert the last argument to the previous command (the last word of
-the previous history entry).
-With a numeric argument, behave exactly like \fByank\-nth\-arg\fP.
-Successive calls to \fByank\-last\-arg\fP move back through the history
-list, inserting the last word (or the word specified by the argument to
-the first call) of each line in turn.
-Any numeric argument supplied to these successive calls determines
-the direction to move through the history.  A negative argument switches
-the direction through the history (back or forward).
-The history expansion facilities are used to extract the last argument,
-as if the "!$" history expansion had been specified.
-.PD
-.SS Commands for Changing Text
-.PP
-.PD 0
-.TP
-.B delete\-char (C\-d)
-Delete the character at point.  If point is at the
-beginning of the line, there are no characters in the line, and
-the last character typed was not bound to \fBdelete\-char\fP, then return
-.SM
-.BR EOF .
-.TP
-.B backward\-delete\-char (Rubout)
-Delete the character behind the cursor.  When given a numeric argument,
-save the deleted text on the kill ring.
-.TP
-.B forward\-backward\-delete\-char   
-Delete the character under the cursor, unless the cursor is at the
-end of the line, in which case the character behind the cursor is
-deleted.
-.TP
-.B quoted\-insert (C\-q, C\-v)
-Add the next character that you type to the line verbatim.  This is
-how to insert characters like \fBC\-q\fP, for example.
-.TP
-.B tab\-insert (M-TAB)
-Insert a tab character.
-.TP
-.B self\-insert (a,\ b,\ A,\ 1,\ !,\ ...)
-Insert the character typed.
-.TP
-.B transpose\-chars (C\-t)
-Drag the character before point forward over the character at point,
-moving point forward as well.
-If point is at the end of the line, then this transposes
-the two characters before point.
-Negative arguments have no effect.
-.TP
-.B transpose\-words (M\-t)
-Drag the word before point past the word after point,
-moving point over that word as well.
-If point is at the end of the line, this transposes
-the last two words on the line.
-.TP
-.B upcase\-word (M\-u)
-Uppercase the current (or following) word.  With a negative argument,
-uppercase the previous word, but do not move point.
-.TP
-.B downcase\-word (M\-l)
-Lowercase the current (or following) word.  With a negative argument,
-lowercase the previous word, but do not move point.
-.TP
-.B capitalize\-word (M\-c)
-Capitalize the current (or following) word.  With a negative argument,
-capitalize the previous word, but do not move point.
-.TP
-.B overwrite\-mode
-Toggle overwrite mode.  With an explicit positive numeric argument,
-switches to overwrite mode.  With an explicit non-positive numeric
-argument, switches to insert mode.  This command affects only
-\fBemacs\fP mode; \fBvi\fP mode does overwrite differently.
-Each call to \fIreadline()\fP starts in insert mode.
-In overwrite mode, characters bound to \fBself\-insert\fP replace   
-the text at point rather than pushing the text to the right.
-Characters bound to \fBbackward\-delete\-char\fP replace the character
-before point with a space.  By default, this command is unbound.
-.PD
-.SS Killing and Yanking
-.PP
-.PD 0
-.TP
-.B kill\-line (C\-k)
-Kill the text from point to the end of the line.
-.TP
-.B backward\-kill\-line (C\-x Rubout)
-Kill backward to the beginning of the line.
-.TP
-.B unix\-line\-discard (C\-u)
-Kill backward from point to the beginning of the line.
-The killed text is saved on the kill-ring.
-.\" There is no real difference between this and backward-kill-line
-.TP
-.B kill\-whole\-line
-Kill all characters on the current line, no matter where point is.
-.TP
-.B kill\-word  (M\-d)
-Kill from point the end of the current word, or if between
-words, to the end of the next word.  Word boundaries are the same as
-those used by \fBforward\-word\fP.
-.TP
-.B backward\-kill\-word (M\-Rubout)
-Kill the word behind point.
-Word boundaries are the same as those used by \fBbackward\-word\fP.
-.TP
-.B unix\-word\-rubout (C\-w)
-Kill the word behind point, using white space as a word boundary.
-The killed text is saved on the kill-ring.
-.TP
-.B unix\-filename\-rubout
-Kill the word behind point, using white space and the slash character
-as the word boundaries.
-The killed text is saved on the kill-ring.
-.TP
-.B delete\-horizontal\-space (M\-\e)
-Delete all spaces and tabs around point.
-.TP
-.B kill\-region
-Kill the text between the point and \fImark\fP (saved cursor position).
-This text is referred to as the \fIregion\fP.
-.TP
-.B copy\-region\-as\-kill
-Copy the text in the region to the kill buffer.
-.TP
-.B copy\-backward\-word
-Copy the word before point to the kill buffer.
-The word boundaries are the same as \fBbackward\-word\fP.
-.TP
-.B copy\-forward\-word
-Copy the word following point to the kill buffer.
-The word boundaries are the same as \fBforward\-word\fP.
-.TP
-.B yank (C\-y)
-Yank the top of the kill ring into the buffer at point.
-.TP
-.B yank\-pop (M\-y)
-Rotate the kill ring, and yank the new top.  Only works following
-.B yank
-or
-.BR yank\-pop .
-.PD
-.SS Numeric Arguments
-.PP
-.PD 0
-.TP
-.B digit\-argument (M\-0, M\-1, ..., M\-\-)
-Add this digit to the argument already accumulating, or start a new
-argument.  M\-\- starts a negative argument.
-.TP
-.B universal\-argument
-This is another way to specify an argument.
-If this command is followed by one or more digits, optionally with a
-leading minus sign, those digits define the argument.
-If the command is followed by digits, executing
-.B universal\-argument
-again ends the numeric argument, but is otherwise ignored.
-As a special case, if this command is immediately followed by a
-character that is neither a digit or minus sign, the argument count
-for the next command is multiplied by four.
-The argument count is initially one, so executing this function the
-first time makes the argument count four, a second time makes the
-argument count sixteen, and so on.
-.PD
-.SS Completing
-.PP
-.PD 0
-.TP
-.B complete (TAB)
-Attempt to perform completion on the text before point.
-The actual completion performed is application-specific.
-.BR Bash ,
-for instance, attempts completion treating the text as a variable
-(if the text begins with \fB$\fP), username (if the text begins with
-\fB~\fP), hostname (if the text begins with \fB@\fP), or
-command (including aliases and functions) in turn.  If none
-of these produces a match, filename completion is attempted.
-.BR Gdb ,
-on the other hand,
-allows completion of program functions and variables, and
-only attempts filename completion under certain circumstances.
-.TP
-.B possible\-completions (M\-?)
-List the possible completions of the text before point.
-When displaying completions, readline sets the number of columns used
-for display to the value of \fBcompletion-display-width\fP, the value of
-the environment variable
-.SM
-.BR COLUMNS ,
-or the screen width, in that order.
-.TP
-.B insert\-completions (M\-*)
-Insert all completions of the text before point
-that would have been generated by
-\fBpossible\-completions\fP.
-.TP
-.B menu\-complete
-Similar to \fBcomplete\fP, but replaces the word to be completed
-with a single match from the list of possible completions.
-Repeated execution of \fBmenu\-complete\fP steps through the list
-of possible completions, inserting each match in turn.
-At the end of the list of completions, the bell is rung
-(subject to the setting of \fBbell\-style\fP)
-and the original text is restored.
-An argument of \fIn\fP moves \fIn\fP positions forward in the list
-of matches; a negative argument may be used to move backward 
-through the list.
-This command is intended to be bound to \fBTAB\fP, but is unbound
-by default.
-.TP
-.B menu\-complete\-backward
-Identical to \fBmenu\-complete\fP, but moves backward through the list
-of possible completions, as if \fBmenu\-complete\fP had been given a
-negative argument.  This command is unbound by default.
-.TP
-.B delete\-char\-or\-list
-Deletes the character under the cursor if not at the beginning or
-end of the line (like \fBdelete-char\fP).
-If at the end of the line, behaves identically to
-\fBpossible-completions\fP.
-.PD
-.SS Keyboard Macros
-.PP
-.PD 0
-.TP
-.B start\-kbd\-macro (C\-x (\^)
-Begin saving the characters typed into the current keyboard macro.
-.TP
-.B end\-kbd\-macro (C\-x )\^)
-Stop saving the characters typed into the current keyboard macro
-and store the definition.
-.TP
-.B call\-last\-kbd\-macro (C\-x e)
-Re-execute the last keyboard macro defined, by making the characters
-in the macro appear as if typed at the keyboard.
-.B print\-last\-kbd\-macro ()
-Print the last keyboard macro defined in a format suitable for the
-\fIinputrc\fP file.
-.PD
-.SS Miscellaneous
-.PP
-.PD 0
-.TP
-.B re\-read\-init\-file (C\-x C\-r)
-Read in the contents of the \fIinputrc\fP file, and incorporate
-any bindings or variable assignments found there.
-.TP
-.B abort (C\-g)
-Abort the current editing command and
-ring the terminal's bell (subject to the setting of
-.BR bell\-style ).
-.TP
-.B do\-uppercase\-version (M\-a, M\-b, M\-\fIx\fP, ...)
-If the metafied character \fIx\fP is lowercase, run the command
-that is bound to the corresponding uppercase character.
-.TP
-.B prefix\-meta (ESC)
-Metafy the next character typed.
-.SM
-.B ESC
-.B f
-is equivalent to
-.BR Meta\-f .
-.TP
-.B undo (C\-_, C\-x C\-u)
-Incremental undo, separately remembered for each line.
-.TP
-.B revert\-line (M\-r)
-Undo all changes made to this line.  This is like executing the
-.B undo
-command enough times to return the line to its initial state.
-.TP
-.B tilde\-expand (M\-&)
-Perform tilde expansion on the current word.
-.TP
-.B set\-mark (C\-@, M\-<space>)
-Set the mark to the point.  If a
-numeric argument is supplied, the mark is set to that position.
-.TP
-.B exchange\-point\-and\-mark (C\-x C\-x)
-Swap the point with the mark.  The current cursor position is set to
-the saved position, and the old cursor position is saved as the mark.
-.TP
-.B character\-search (C\-])
-A character is read and point is moved to the next occurrence of that
-character.  A negative count searches for previous occurrences.
-.TP
-.B character\-search\-backward (M\-C\-])
-A character is read and point is moved to the previous occurrence of that
-character.  A negative count searches for subsequent occurrences.
-.TP
-.B skip\-csi\-sequence
-Read enough characters to consume a multi-key sequence such as those
-defined for keys like Home and End.  Such sequences begin with a
-Control Sequence Indicator (CSI), usually ESC\-[.  If this sequence is
-bound to "\e[", keys producing such sequences will have no effect
-unless explicitly bound to a readline command, instead of inserting
-stray characters into the editing buffer.  This is unbound by default,
-but usually bound to ESC\-[.
-.TP
-.B insert\-comment (M\-#)
-Without a numeric argument, the value of the readline
-.B comment\-begin
-variable is inserted at the beginning of the current line.
-If a numeric argument is supplied, this command acts as a toggle:  if
-the characters at the beginning of the line do not match the value   
-of \fBcomment\-begin\fP, the value is inserted, otherwise             
-the characters in \fBcomment-begin\fP are deleted from the beginning of
-the line.
-In either case, the line is accepted as if a newline had been typed.
-The default value of
-.B comment\-begin
-makes the current line a shell comment.
-If a numeric argument causes the comment character to be removed, the line
-will be executed by the shell.
-.TP
-.B dump\-functions
-Print all of the functions and their key bindings to the
-readline output stream.  If a numeric argument is supplied,
-the output is formatted in such a way that it can be made part
-of an \fIinputrc\fP file.
-.TP
-.B dump\-variables
-Print all of the settable variables and their values to the
-readline output stream.  If a numeric argument is supplied,
-the output is formatted in such a way that it can be made part
-of an \fIinputrc\fP file.
-.TP
-.B dump\-macros
-Print all of the readline key sequences bound to macros and the
-strings they output.  If a numeric argument is supplied,
-the output is formatted in such a way that it can be made part
-of an \fIinputrc\fP file.
-.TP
-.B emacs\-editing\-mode (C\-e)
-When in
-.B vi
-command mode, this causes a switch to
-.B emacs
-editing mode.
-.TP
-.B vi\-editing\-mode (M\-C\-j)
-When in
-.B emacs
-editing mode, this causes a switch to
-.B vi
-editing mode.
-.PD
-.SH DEFAULT KEY BINDINGS
-.LP
-The following is a list of the default emacs and vi bindings.
-Characters with the eighth bit set are written as M\-<character>, and
-are referred to as
-.I metafied
-characters.
-The printable ASCII characters not mentioned in the list of emacs
-standard bindings are bound to the
-.B self\-insert
-function, which just inserts the given character into the input line.
-In vi insertion mode, all characters not specifically mentioned are
-bound to
-.BR self\-insert .
-Characters assigned to signal generation by
-.IR stty (1)
-or the terminal driver, such as C-Z or C-C,
-retain that function.
-Upper and lower case metafied characters are bound to the same function in
-the emacs mode meta keymap.
-The remaining characters are unbound, which causes readline
-to ring the bell (subject to the setting of the
-.B bell\-style
-variable).
-.SS Emacs Mode
-.RS +.6i
-.nf
-.ta 2.5i
-.sp
-Emacs Standard bindings
-.sp
-"C-@"  set-mark
-"C-A"  beginning-of-line
-"C-B"  backward-char
-"C-D"  delete-char
-"C-E"  end-of-line
-"C-F"  forward-char
-"C-G"  abort
-"C-H"  backward-delete-char
-"C-I"  complete
-"C-J"  accept-line
-"C-K"  kill-line
-"C-L"  clear-screen
-"C-M"  accept-line
-"C-N"  next-history
-"C-P"  previous-history
-"C-Q"  quoted-insert
-"C-R"  reverse-search-history
-"C-S"  forward-search-history
-"C-T"  transpose-chars
-"C-U"  unix-line-discard
-"C-V"  quoted-insert
-"C-W"  unix-word-rubout
-"C-Y"  yank
-"C-]"  character-search
-"C-_"  undo
-"\^ " to "/"  self-insert
-"0"  to "9"  self-insert
-":"  to "~"  self-insert
-"C-?"  backward-delete-char
-.PP
-Emacs Meta bindings
-.sp
-"M-C-G"  abort
-"M-C-H"  backward-kill-word
-"M-C-I"  tab-insert
-"M-C-J"  vi-editing-mode
-"M-C-M"  vi-editing-mode
-"M-C-R"  revert-line
-"M-C-Y"  yank-nth-arg
-"M-C-["  complete
-"M-C-]"  character-search-backward
-"M-space"  set-mark
-"M-#"  insert-comment
-"M-&"  tilde-expand
-"M-*"  insert-completions
-"M--"  digit-argument
-"M-."  yank-last-arg
-"M-0"  digit-argument
-"M-1"  digit-argument
-"M-2"  digit-argument
-"M-3"  digit-argument
-"M-4"  digit-argument
-"M-5"  digit-argument
-"M-6"  digit-argument
-"M-7"  digit-argument
-"M-8"  digit-argument
-"M-9"  digit-argument
-"M-<"  beginning-of-history
-"M-="  possible-completions
-"M->"  end-of-history
-"M-?"  possible-completions
-"M-B"  backward-word
-"M-C"  capitalize-word
-"M-D"  kill-word
-"M-F"  forward-word
-"M-L"  downcase-word
-"M-N"  non-incremental-forward-search-history
-"M-P"  non-incremental-reverse-search-history
-"M-R"  revert-line
-"M-T"  transpose-words
-"M-U"  upcase-word
-"M-Y"  yank-pop
-"M-\e"  delete-horizontal-space
-"M-~"  tilde-expand
-"M-C-?"  backward-kill-word
-"M-_"  yank-last-arg
-.PP
-Emacs Control-X bindings
-.sp
-"C-XC-G"  abort
-"C-XC-R"  re-read-init-file
-"C-XC-U"  undo
-"C-XC-X"  exchange-point-and-mark
-"C-X("  start-kbd-macro
-"C-X)"  end-kbd-macro
-"C-XE"  call-last-kbd-macro
-"C-XC-?"  backward-kill-line
-.sp
-.RE
-.SS VI Mode bindings
-.RS +.6i
-.nf
-.ta 2.5i
-.sp
-.PP
-VI Insert Mode functions
-.sp
-"C-D"  vi-eof-maybe
-"C-H"  backward-delete-char
-"C-I"  complete
-"C-J"  accept-line
-"C-M"  accept-line
-"C-R"  reverse-search-history
-"C-S"  forward-search-history
-"C-T"  transpose-chars
-"C-U"  unix-line-discard
-"C-V"  quoted-insert
-"C-W"  unix-word-rubout
-"C-Y"  yank
-"C-["  vi-movement-mode
-"C-_"  undo
-"\^ " to "~"  self-insert
-"C-?"  backward-delete-char
-.PP
-VI Command Mode functions
-.sp
-"C-D"  vi-eof-maybe
-"C-E"  emacs-editing-mode
-"C-G"  abort
-"C-H"  backward-char
-"C-J"  accept-line
-"C-K"  kill-line
-"C-L"  clear-screen
-"C-M"  accept-line
-"C-N"  next-history
-"C-P"  previous-history
-"C-Q"  quoted-insert
-"C-R"  reverse-search-history
-"C-S"  forward-search-history
-"C-T"  transpose-chars
-"C-U"  unix-line-discard
-"C-V"  quoted-insert
-"C-W"  unix-word-rubout
-"C-Y"  yank
-"C-_"  vi-undo
-"\^ "  forward-char
-"#"  insert-comment
-"$"  end-of-line
-"%"  vi-match
-"&"  vi-tilde-expand
-"*"  vi-complete
-"+"  next-history
-","  vi-char-search
-"-"  previous-history
-"."  vi-redo
-"/"  vi-search
-"0"  beginning-of-line
-"1" to "9"  vi-arg-digit
-";"  vi-char-search
-"="  vi-complete
-"?"  vi-search
-"A"  vi-append-eol
-"B"  vi-prev-word
-"C"  vi-change-to
-"D"  vi-delete-to
-"E"  vi-end-word
-"F"  vi-char-search
-"G"  vi-fetch-history
-"I"  vi-insert-beg
-"N"  vi-search-again
-"P"  vi-put
-"R"  vi-replace
-"S"  vi-subst
-"T"  vi-char-search
-"U"  revert-line
-"W"  vi-next-word
-"X"  backward-delete-char
-"Y"  vi-yank-to
-"\e"  vi-complete
-"^"  vi-first-print
-"_"  vi-yank-arg
-"`"  vi-goto-mark
-"a"  vi-append-mode
-"b"  vi-prev-word
-"c"  vi-change-to
-"d"  vi-delete-to
-"e"  vi-end-word
-"f"  vi-char-search
-"h"  backward-char
-"i"  vi-insertion-mode
-"j"  next-history
-"k"  prev-history
-"l"  forward-char
-"m"  vi-set-mark
-"n"  vi-search-again
-"p"  vi-put
-"r"  vi-change-char
-"s"  vi-subst
-"t"  vi-char-search
-"u"  vi-undo
-"w"  vi-next-word
-"x"  vi-delete
-"y"  vi-yank-to
-"|"  vi-column
-"~"  vi-change-case
-.RE
-.SH "SEE ALSO"
-.PD 0
-.TP
-\fIThe Gnu Readline Library\fP, Brian Fox and Chet Ramey
-.TP
-\fIThe Gnu History Library\fP, Brian Fox and Chet Ramey
-.TP
-\fIbash\fP(1)
-.PD
-.SH FILES
-.PD 0
-.TP
-.FN ~/.inputrc
-Individual \fBreadline\fP initialization file
-.PD
-.SH AUTHORS
-Brian Fox, Free Software Foundation
-.br
-bfox@gnu.org
-.PP
-Chet Ramey, Case Western Reserve University
-.br
-chet@ins.CWRU.Edu
-.SH BUG REPORTS
-If you find a bug in
-.B readline,
-you should report it.  But first, you should
-make sure that it really is a bug, and that it appears in the latest
-version of the
-.B readline
-library that you have.
-.PP
-Once you have determined that a bug actually exists, mail a
-bug report to \fIbug\-readline\fP@\fIgnu.org\fP.
-If you have a fix, you are welcome to mail that
-as well!  Suggestions and `philosophical' bug reports may be mailed
-to \fPbug-readline\fP@\fIgnu.org\fP or posted to the Usenet
-newsgroup
-.BR gnu.bash.bug .
-.PP
-Comments and bug reports concerning
-this manual page should be directed to
-.IR chet@ins.CWRU.Edu .
-.SH BUGS
-.PP
-It's too big and too slow.
diff --git a/lib/readline/doc/readline.dvi b/lib/readline/doc/readline.dvi
deleted file mode 100644 (file)
index 93ea510..0000000
Binary files a/lib/readline/doc/readline.dvi and /dev/null differ
diff --git a/lib/readline/doc/readline.html b/lib/readline/doc/readline.html
deleted file mode 100644 (file)
index 9a0b148..0000000
+++ /dev/null
@@ -1,7007 +0,0 @@
-<HTML>
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
-<!-- Created on February, 8  2011 by texi2html 1.64 -->
-<!-- 
-Written by: Lionel Cons <Lionel.Cons@cern.ch> (original author)
-            Karl Berry  <karl@freefriends.org>
-            Olaf Bachmann <obachman@mathematik.uni-kl.de>
-            and many others.
-Maintained by: Olaf Bachmann <obachman@mathematik.uni-kl.de>
-Send bugs and suggestions to <texi2html@mathematik.uni-kl.de>
--->
-<HEAD>
-<TITLE>GNU Readline Library: </TITLE>
-
-<META NAME="description" CONTENT="GNU Readline Library: ">
-<META NAME="keywords" CONTENT="GNU Readline Library: ">
-<META NAME="resource-type" CONTENT="document">
-<META NAME="distribution" CONTENT="global">
-<META NAME="Generator" CONTENT="texi2html 1.64">
-
-</HEAD>
-
-<BODY LANG="" BGCOLOR="#FFFFFF" TEXT="#000000" LINK="#0000FF" VLINK="#800080" ALINK="#FF0000">
-
-<A NAME="SEC_Top"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC51">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H1>GNU Readline Library</H1></P><P>
-
-This document describes the GNU Readline Library, a utility which aids
-in the consistency of user interface across discrete programs which
-provide a command line interface.
-</P><P>
-
-<BLOCKQUOTE><TABLE BORDER=0 CELLSPACING=0> 
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="readline.html#SEC1">1. Command Line Editing</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">GNU Readline User's Manual.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="readline.html#SEC23">2. Programming with GNU Readline</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">GNU Readline Programmer's Manual.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="readline.html#SEC49">A. GNU Free Documentation License</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">License for copying this manual.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="readline.html#SEC51">Concept Index</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Index of concepts described in this manual.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="readline.html#SEC52">Function and Variable Index</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Index of externally visible functions
-                                  and variables.</TD></TR>
-</TABLE></BLOCKQUOTE>
-<P>
-
-<HR SIZE=1>
-<A NAME="SEC1"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC2"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[ &lt;&lt; ]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC23"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC51">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<A NAME="Command Line Editing"></A>
-<H1> 1. Command Line Editing </H1>
-<!--docid::SEC1::-->
-<P>
-
-This chapter describes the basic features of the GNU
-command line editing interface.
-</P><P>
-
-<BLOCKQUOTE><TABLE BORDER=0 CELLSPACING=0> 
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="readline.html#SEC2">1.1 Introduction to Line Editing</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Notation used in this text.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="readline.html#SEC3">1.2 Readline Interaction</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">The minimum set of commands for editing a line.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="readline.html#SEC9">1.3 Readline Init File</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Customizing Readline from a user's view.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="readline.html#SEC13">1.4 Bindable Readline Commands</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">A description of most of the Readline commands
-                               available for binding</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="readline.html#SEC22">1.5 Readline vi Mode</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">A short description of how to make Readline
-                               behave like the vi editor.</TD></TR>
-</TABLE></BLOCKQUOTE>
-<P>
-
-<A NAME="Introduction and Notation"></A>
-<HR SIZE="6">
-<A NAME="SEC2"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC1"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC3"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[ &lt;&lt; ]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC1"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC23"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC51">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H2> 1.1 Introduction to Line Editing </H2>
-<!--docid::SEC2::-->
-<P>
-
-The following paragraphs describe the notation used to represent
-keystrokes.
-</P><P>
-
-The text <KBD>C-k</KBD> is read as `Control-K' and describes the character
-produced when the <KBD>k</KBD> key is pressed while the Control key
-is depressed.
-</P><P>
-
-The text <KBD>M-k</KBD> is read as `Meta-K' and describes the character
-produced when the Meta key (if you have one) is depressed, and the <KBD>k</KBD>
-key is pressed.
-The Meta key is labeled <KBD>ALT</KBD> on many keyboards.
-On keyboards with two keys labeled <KBD>ALT</KBD> (usually to either side of
-the space bar), the <KBD>ALT</KBD> on the left side is generally set to
-work as a Meta key.
-The <KBD>ALT</KBD> key on the right may also be configured to work as a
-Meta key or may be configured as some other modifier, such as a
-Compose key for typing accented characters.
-</P><P>
-
-If you do not have a Meta or <KBD>ALT</KBD> key, or another key working as
-a Meta key, the identical keystroke can be generated by typing <KBD>ESC</KBD>
-<EM>first</EM>, and then typing <KBD>k</KBD>.
-Either process is known as <EM>metafying</EM> the <KBD>k</KBD> key.
-</P><P>
-
-The text <KBD>M-C-k</KBD> is read as `Meta-Control-k' and describes the
-character produced by <EM>metafying</EM> <KBD>C-k</KBD>.
-</P><P>
-
-In addition, several keys have their own names.  Specifically,
-<KBD>DEL</KBD>, <KBD>ESC</KBD>, <KBD>LFD</KBD>, <KBD>SPC</KBD>, <KBD>RET</KBD>, and <KBD>TAB</KBD> all
-stand for themselves when seen in this text, or in an init file
-(see section <A HREF="readline.html#SEC9">1.3 Readline Init File</A>).
-If your keyboard lacks a <KBD>LFD</KBD> key, typing <KBD>C-j</KBD> will
-produce the desired character.
-The <KBD>RET</KBD> key may be labeled <KBD>Return</KBD> or <KBD>Enter</KBD> on
-some keyboards.
-</P><P>
-
-<A NAME="Readline Interaction"></A>
-<HR SIZE="6">
-<A NAME="SEC3"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC2"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC4"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC9"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC1"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC9"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC51">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H2> 1.2 Readline Interaction </H2>
-<!--docid::SEC3::-->
-<P>
-
-Often during an interactive session you type in a long line of text,
-only to notice that the first word on the line is misspelled.  The
-Readline library gives you a set of commands for manipulating the text
-as you type it in, allowing you to just fix your typo, and not forcing
-you to retype the majority of the line.  Using these editing commands,
-you move the cursor to the place that needs correction, and delete or
-insert the text of the corrections.  Then, when you are satisfied with
-the line, you simply press <KBD>RET</KBD>.  You do not have to be at the
-end of the line to press <KBD>RET</KBD>; the entire line is accepted
-regardless of the location of the cursor within the line.
-</P><P>
-
-<BLOCKQUOTE><TABLE BORDER=0 CELLSPACING=0> 
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="readline.html#SEC4">1.2.1 Readline Bare Essentials</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">The least you need to know about Readline.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="readline.html#SEC5">1.2.2 Readline Movement Commands</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Moving about the input line.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="readline.html#SEC6">1.2.3 Readline Killing Commands</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">How to delete text, and how to get it back!</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="readline.html#SEC7">1.2.4 Readline Arguments</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Giving numeric arguments to commands.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="readline.html#SEC8">1.2.5 Searching for Commands in the History</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Searching through previous lines.</TD></TR>
-</TABLE></BLOCKQUOTE>
-<P>
-
-<A NAME="Readline Bare Essentials"></A>
-<HR SIZE="6">
-<A NAME="SEC4"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC3"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC5"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC9"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC3"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC9"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC51">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H3> 1.2.1 Readline Bare Essentials </H3>
-<!--docid::SEC4::-->
-<P>
-
-In order to enter characters into the line, simply type them.  The typed
-character appears where the cursor was, and then the cursor moves one
-space to the right.  If you mistype a character, you can use your
-erase character to back up and delete the mistyped character.
-</P><P>
-
-Sometimes you may mistype a character, and
-not notice the error until you have typed several other characters.  In
-that case, you can type <KBD>C-b</KBD> to move the cursor to the left, and then
-correct your mistake.  Afterwards, you can move the cursor to the right
-with <KBD>C-f</KBD>.
-</P><P>
-
-When you add text in the middle of a line, you will notice that characters
-to the right of the cursor are `pushed over' to make room for the text
-that you have inserted.  Likewise, when you delete text behind the cursor,
-characters to the right of the cursor are `pulled back' to fill in the
-blank space created by the removal of the text.  A list of the bare
-essentials for editing the text of an input line follows.
-</P><P>
-
-<DL COMPACT>
-<DT><KBD>C-b</KBD>
-<DD>Move back one character.
-<DT><KBD>C-f</KBD>
-<DD>Move forward one character.
-<DT><KBD>DEL</KBD> or <KBD>Backspace</KBD>
-<DD>Delete the character to the left of the cursor.
-<DT><KBD>C-d</KBD>
-<DD>Delete the character underneath the cursor.
-<DT>Printing characters
-<DD>Insert the character into the line at the cursor.
-<DT><KBD>C-_</KBD> or <KBD>C-x C-u</KBD>
-<DD>Undo the last editing command.  You can undo all the way back to an
-empty line.
-</DL>
-<P>
-
-(Depending on your configuration, the <KBD>Backspace</KBD> key be set to
-delete the character to the left of the cursor and the <KBD>DEL</KBD> key set
-to delete the character underneath the cursor, like <KBD>C-d</KBD>, rather
-than the character to the left of the cursor.)
-</P><P>
-
-<A NAME="Readline Movement Commands"></A>
-<HR SIZE="6">
-<A NAME="SEC5"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC4"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC6"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC6"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC3"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC9"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC51">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H3> 1.2.2 Readline Movement Commands </H3>
-<!--docid::SEC5::-->
-<P>
-
-The above table describes the most basic keystrokes that you need
-in order to do editing of the input line.  For your convenience, many
-other commands have been added in addition to <KBD>C-b</KBD>, <KBD>C-f</KBD>,
-<KBD>C-d</KBD>, and <KBD>DEL</KBD>.  Here are some commands for moving more rapidly
-about the line.
-</P><P>
-
-<DL COMPACT>
-<DT><KBD>C-a</KBD>
-<DD>Move to the start of the line.
-<DT><KBD>C-e</KBD>
-<DD>Move to the end of the line.
-<DT><KBD>M-f</KBD>
-<DD>Move forward a word, where a word is composed of letters and digits.
-<DT><KBD>M-b</KBD>
-<DD>Move backward a word.
-<DT><KBD>C-l</KBD>
-<DD>Clear the screen, reprinting the current line at the top.
-</DL>
-<P>
-
-Notice how <KBD>C-f</KBD> moves forward a character, while <KBD>M-f</KBD> moves
-forward a word.  It is a loose convention that control keystrokes
-operate on characters while meta keystrokes operate on words.
-</P><P>
-
-<A NAME="Readline Killing Commands"></A>
-<HR SIZE="6">
-<A NAME="SEC6"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC5"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC7"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC7"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC3"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC9"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC51">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H3> 1.2.3 Readline Killing Commands </H3>
-<!--docid::SEC6::-->
-<P>
-
-<A NAME="IDX1"></A>
-<A NAME="IDX2"></A>
-</P><P>
-
-<EM>Killing</EM> text means to delete the text from the line, but to save
-it away for later use, usually by <EM>yanking</EM> (re-inserting)
-it back into the line.
-(`Cut' and `paste' are more recent jargon for `kill' and `yank'.)
-</P><P>
-
-If the description for a command says that it `kills' text, then you can
-be sure that you can get the text back in a different (or the same)
-place later.
-</P><P>
-
-When you use a kill command, the text is saved in a <EM>kill-ring</EM>.
-Any number of consecutive kills save all of the killed text together, so
-that when you yank it back, you get it all.  The kill
-ring is not line specific; the text that you killed on a previously
-typed line is available to be yanked back later, when you are typing
-another line.
-<A NAME="IDX3"></A>
-</P><P>
-
-Here is the list of commands for killing text.
-</P><P>
-
-<DL COMPACT>
-<DT><KBD>C-k</KBD>
-<DD>Kill the text from the current cursor position to the end of the line.
-<P>
-
-<DT><KBD>M-d</KBD>
-<DD>Kill from the cursor to the end of the current word, or, if between
-words, to the end of the next word.
-Word boundaries are the same as those used by <KBD>M-f</KBD>.
-<P>
-
-<DT><KBD>M-<KBD>DEL</KBD></KBD>
-<DD>Kill from the cursor the start of the current word, or, if between
-words, to the start of the previous word.
-Word boundaries are the same as those used by <KBD>M-b</KBD>.
-<P>
-
-<DT><KBD>C-w</KBD>
-<DD>Kill from the cursor to the previous whitespace.  This is different than
-<KBD>M-<KBD>DEL</KBD></KBD> because the word boundaries differ.
-<P>
-
-</DL>
-<P>
-
-Here is how to <EM>yank</EM> the text back into the line.  Yanking
-means to copy the most-recently-killed text from the kill buffer.
-</P><P>
-
-<DL COMPACT>
-<DT><KBD>C-y</KBD>
-<DD>Yank the most recently killed text back into the buffer at the cursor.
-<P>
-
-<DT><KBD>M-y</KBD>
-<DD>Rotate the kill-ring, and yank the new top.  You can only do this if
-the prior command is <KBD>C-y</KBD> or <KBD>M-y</KBD>.
-</DL>
-<P>
-
-<A NAME="Readline Arguments"></A>
-<HR SIZE="6">
-<A NAME="SEC7"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC6"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC8"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC8"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC3"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC9"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC51">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H3> 1.2.4 Readline Arguments </H3>
-<!--docid::SEC7::-->
-<P>
-
-You can pass numeric arguments to Readline commands.  Sometimes the
-argument acts as a repeat count, other times it is the <I>sign</I> of the
-argument that is significant.  If you pass a negative argument to a
-command which normally acts in a forward direction, that command will
-act in a backward direction.  For example, to kill text back to the
-start of the line, you might type <SAMP>`M-- C-k'</SAMP>.
-</P><P>
-
-The general way to pass numeric arguments to a command is to type meta
-digits before the command.  If the first `digit' typed is a minus
-sign (<SAMP>`-'</SAMP>), then the sign of the argument will be negative.  Once
-you have typed one meta digit to get the argument started, you can type
-the remainder of the digits, and then the command.  For example, to give
-the <KBD>C-d</KBD> command an argument of 10, you could type <SAMP>`M-1 0 C-d'</SAMP>,
-which will delete the next ten characters on the input line.
-</P><P>
-
-<A NAME="Searching"></A>
-<HR SIZE="6">
-<A NAME="SEC8"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC7"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC9"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC9"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC3"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC9"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC51">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H3> 1.2.5 Searching for Commands in the History </H3>
-<!--docid::SEC8::-->
-<P>
-
-Readline provides commands for searching through the command history
-for lines containing a specified string.
-There are two search modes:  <EM>incremental</EM> and <EM>non-incremental</EM>.
-</P><P>
-
-Incremental searches begin before the user has finished typing the
-search string.
-As each character of the search string is typed, Readline displays
-the next entry from the history matching the string typed so far.
-An incremental search requires only as many characters as needed to
-find the desired history entry.
-To search backward in the history for a particular string, type
-<KBD>C-r</KBD>.  Typing <KBD>C-s</KBD> searches forward through the history.
-The characters present in the value of the <CODE>isearch-terminators</CODE> variable
-are used to terminate an incremental search.
-If that variable has not been assigned a value, the <KBD>ESC</KBD> and
-<KBD>C-J</KBD> characters will terminate an incremental search.
-<KBD>C-g</KBD> will abort an incremental search and restore the original line.
-When the search is terminated, the history entry containing the
-search string becomes the current line.
-</P><P>
-
-To find other matching entries in the history list, type <KBD>C-r</KBD> or
-<KBD>C-s</KBD> as appropriate.
-This will search backward or forward in the history for the next
-entry matching the search string typed so far.
-Any other key sequence bound to a Readline command will terminate
-the search and execute that command.
-For instance, a <KBD>RET</KBD> will terminate the search and accept
-the line, thereby executing the command from the history list.
-A movement command will terminate the search, make the last line found
-the current line, and begin editing.
-</P><P>
-
-Readline remembers the last incremental search string.  If two
-<KBD>C-r</KBD>s are typed without any intervening characters defining a new
-search string, any remembered search string is used.
-</P><P>
-
-Non-incremental searches read the entire search string before starting
-to search for matching history lines.  The search string may be
-typed by the user or be part of the contents of the current line.
-</P><P>
-
-<A NAME="Readline Init File"></A>
-<HR SIZE="6">
-<A NAME="SEC9"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC8"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC10"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC13"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC1"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC13"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC51">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H2> 1.3 Readline Init File </H2>
-<!--docid::SEC9::-->
-<P>
-
-Although the Readline library comes with a set of Emacs-like
-keybindings installed by default, it is possible to use a different set
-of keybindings.
-Any user can customize programs that use Readline by putting
-commands in an <EM>inputrc</EM> file, conventionally in his home directory.
-The name of this
-file is taken from the value of the environment variable <CODE>INPUTRC</CODE>.  If
-that variable is unset, the default is <TT>`~/.inputrc'</TT>.  If that
-file does not exist or cannot be read, the ultimate default is
-<TT>`/etc/inputrc'</TT>.
-</P><P>
-
-When a program which uses the Readline library starts up, the
-init file is read, and the key bindings are set.
-</P><P>
-
-In addition, the <CODE>C-x C-r</CODE> command re-reads this init file, thus
-incorporating any changes that you might have made to it.
-</P><P>
-
-<BLOCKQUOTE><TABLE BORDER=0 CELLSPACING=0> 
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Syntax for the commands in the inputrc file.</TD></TR>
-</TABLE>
-
-<br>
-<TABLE BORDER=0 CELLSPACING=0>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="readline.html#SEC11">1.3.2 Conditional Init Constructs</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Conditional key bindings in the inputrc file.</TD></TR>
-</TABLE>
-
-<br>
-<TABLE BORDER=0 CELLSPACING=0>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="readline.html#SEC12">1.3.3 Sample Init File</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">An example inputrc file.</TD></TR>
-</TABLE></BLOCKQUOTE>
-<P>
-
-<A NAME="Readline Init File Syntax"></A>
-<HR SIZE="6">
-<A NAME="SEC10"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC9"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC11"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC13"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC9"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC13"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC51">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H3> 1.3.1 Readline Init File Syntax </H3>
-<!--docid::SEC10::-->
-<P>
-
-There are only a few basic constructs allowed in the
-Readline init file.  Blank lines are ignored.
-Lines beginning with a <SAMP>`#'</SAMP> are comments.
-Lines beginning with a <SAMP>`$'</SAMP> indicate conditional
-constructs (see section <A HREF="readline.html#SEC11">1.3.2 Conditional Init Constructs</A>).  Other lines
-denote variable settings and key bindings.
-</P><P>
-
-<DL COMPACT>
-<DT>Variable Settings
-<DD>You can modify the run-time behavior of Readline by
-altering the values of variables in Readline
-using the <CODE>set</CODE> command within the init file.
-The syntax is simple:
-<P>
-
-<TABLE><tr><td>&nbsp;</td><td class=example><pre>set <VAR>variable</VAR> <VAR>value</VAR>
-</pre></td></tr></table></P><P>
-
-Here, for example, is how to
-change from the default Emacs-like key binding to use
-<CODE>vi</CODE> line editing commands:
-</P><P>
-
-<TABLE><tr><td>&nbsp;</td><td class=example><pre>set editing-mode vi
-</pre></td></tr></table></P><P>
-
-Variable names and values, where appropriate, are recognized without regard
-to case.  Unrecognized variable names are ignored.
-</P><P>
-
-Boolean variables (those that can be set to on or off) are set to on if
-the value is null or empty, <VAR>on</VAR> (case-insensitive), or 1.  Any other
-value results in the variable being set to off.
-</P><P>
-
-A great deal of run-time behavior is changeable with the following
-variables.
-</P><P>
-
-<A NAME="IDX4"></A>
-<DL COMPACT>
-
-<DT><CODE>bell-style</CODE>
-<DD><A NAME="IDX5"></A>
-Controls what happens when Readline wants to ring the terminal bell.
-If set to <SAMP>`none'</SAMP>, Readline never rings the bell.  If set to
-<SAMP>`visible'</SAMP>, Readline uses a visible bell if one is available.
-If set to <SAMP>`audible'</SAMP> (the default), Readline attempts to ring
-the terminal's bell.
-<P>
-
-<DT><CODE>bind-tty-special-chars</CODE>
-<DD><A NAME="IDX6"></A>
-If set to <SAMP>`on'</SAMP>, Readline attempts to bind the control characters  
-treated specially by the kernel's terminal driver to their Readline
-equivalents.
-<P>
-
-<DT><CODE>comment-begin</CODE>
-<DD><A NAME="IDX7"></A>
-The string to insert at the beginning of the line when the
-<CODE>insert-comment</CODE> command is executed.  The default value
-is <CODE>"#"</CODE>.
-<P>
-
-<DT><CODE>completion-display-width</CODE>
-<DD><A NAME="IDX8"></A>
-The number of screen columns used to display possible matches
-when performing completion.
-The value is ignored if it is less than 0 or greater than the terminal
-screen width.
-A value of 0 will cause matches to be displayed one per line.
-The default value is -1.
-<P>
-
-<DT><CODE>completion-ignore-case</CODE>
-<DD><A NAME="IDX9"></A>
-If set to <SAMP>`on'</SAMP>, Readline performs filename matching and completion
-in a case-insensitive fashion.
-The default value is <SAMP>`off'</SAMP>.
-<P>
-
-<DT><CODE>completion-map-case</CODE>
-<DD><A NAME="IDX10"></A>
-If set to <SAMP>`on'</SAMP>, and <VAR>completion-ignore-case</VAR> is enabled, Readline
-treats hyphens (<SAMP>`-'</SAMP>) and underscores (<SAMP>`_'</SAMP>) as equivalent when
-performing case-insensitive filename matching and completion.
-<P>
-
-<DT><CODE>completion-prefix-display-length</CODE>
-<DD><A NAME="IDX11"></A>
-The length in characters of the common prefix of a list of possible
-completions that is displayed without modification.  When set to a
-value greater than zero, common prefixes longer than this value are
-replaced with an ellipsis when displaying possible completions.
-<P>
-
-<DT><CODE>completion-query-items</CODE>
-<DD><A NAME="IDX12"></A>
-The number of possible completions that determines when the user is
-asked whether the list of possibilities should be displayed.
-If the number of possible completions is greater than this value,
-Readline will ask the user whether or not he wishes to view
-them; otherwise, they are simply listed.
-This variable must be set to an integer value greater than or equal to 0.
-A negative value means Readline should never ask.
-The default limit is <CODE>100</CODE>.
-<P>
-
-<DT><CODE>convert-meta</CODE>
-<DD><A NAME="IDX13"></A>
-If set to <SAMP>`on'</SAMP>, Readline will convert characters with the
-eighth bit set to an ASCII key sequence by stripping the eighth
-bit and prefixing an <KBD>ESC</KBD> character, converting them to a
-meta-prefixed key sequence.  The default value is <SAMP>`on'</SAMP>.
-<P>
-
-<DT><CODE>disable-completion</CODE>
-<DD><A NAME="IDX14"></A>
-If set to <SAMP>`On'</SAMP>, Readline will inhibit word completion.
-Completion  characters will be inserted into the line as if they had
-been mapped to <CODE>self-insert</CODE>.  The default is <SAMP>`off'</SAMP>.
-<P>
-
-<DT><CODE>editing-mode</CODE>
-<DD><A NAME="IDX15"></A>
-The <CODE>editing-mode</CODE> variable controls which default set of
-key bindings is used.  By default, Readline starts up in Emacs editing
-mode, where the keystrokes are most similar to Emacs.  This variable can be
-set to either <SAMP>`emacs'</SAMP> or <SAMP>`vi'</SAMP>.
-<P>
-
-<DT><CODE>echo-control-characters</CODE>
-<DD>When set to <SAMP>`on'</SAMP>, on operating systems that indicate they support it,
-readline echoes a character corresponding to a signal generated from the
-keyboard.  The default is <SAMP>`on'</SAMP>.
-<P>
-
-<DT><CODE>enable-keypad</CODE>
-<DD><A NAME="IDX16"></A>
-When set to <SAMP>`on'</SAMP>, Readline will try to enable the application
-keypad when it is called.  Some systems need this to enable the
-arrow keys.  The default is <SAMP>`off'</SAMP>.
-<P>
-
-<DT><CODE>enable-meta-key</CODE>
-<DD>When set to <SAMP>`on'</SAMP>, Readline will try to enable any meta modifier
-key the terminal claims to support when it is called.  On many terminals,
-the meta key is used to send eight-bit characters.
-The default is <SAMP>`on'</SAMP>.
-<P>
-
-<DT><CODE>expand-tilde</CODE>
-<DD><A NAME="IDX17"></A>
-If set to <SAMP>`on'</SAMP>, tilde expansion is performed when Readline
-attempts word completion.  The default is <SAMP>`off'</SAMP>.
-<P>
-
-<DT><CODE>history-preserve-point</CODE>
-<DD><A NAME="IDX18"></A>
-If set to <SAMP>`on'</SAMP>, the history code attempts to place the point (the
-current cursor position) at the
-same location on each history line retrieved with <CODE>previous-history</CODE>
-or <CODE>next-history</CODE>.  The default is <SAMP>`off'</SAMP>.
-<P>
-
-<DT><CODE>history-size</CODE>
-<DD><A NAME="IDX19"></A>
-Set the maximum number of history entries saved in the history list.  If
-set to zero, the number of entries in the history list is not limited.
-<P>
-
-<DT><CODE>horizontal-scroll-mode</CODE>
-<DD><A NAME="IDX20"></A>
-This variable can be set to either <SAMP>`on'</SAMP> or <SAMP>`off'</SAMP>.  Setting it
-to <SAMP>`on'</SAMP> means that the text of the lines being edited will scroll
-horizontally on a single screen line when they are longer than the width
-of the screen, instead of wrapping onto a new screen line.  By default,
-this variable is set to <SAMP>`off'</SAMP>.
-<P>
-
-<DT><CODE>input-meta</CODE>
-<DD><A NAME="IDX21"></A>
-<A NAME="IDX22"></A>
-If set to <SAMP>`on'</SAMP>, Readline will enable eight-bit input (it
-will not clear the eighth bit in the characters it reads),
-regardless of what the terminal claims it can support.  The
-default value is <SAMP>`off'</SAMP>.  The name <CODE>meta-flag</CODE> is a
-synonym for this variable.
-<P>
-
-<DT><CODE>isearch-terminators</CODE>
-<DD><A NAME="IDX23"></A>
-The string of characters that should terminate an incremental search without
-subsequently executing the character as a command (see section <A HREF="readline.html#SEC8">1.2.5 Searching for Commands in the History</A>).
-If this variable has not been given a value, the characters <KBD>ESC</KBD> and
-<KBD>C-J</KBD> will terminate an incremental search.
-<P>
-
-<DT><CODE>keymap</CODE>
-<DD><A NAME="IDX24"></A>
-Sets Readline's idea of the current keymap for key binding commands.
-Acceptable <CODE>keymap</CODE> names are
-<CODE>emacs</CODE>,
-<CODE>emacs-standard</CODE>,
-<CODE>emacs-meta</CODE>,
-<CODE>emacs-ctlx</CODE>,
-<CODE>vi</CODE>,
-<CODE>vi-move</CODE>,
-<CODE>vi-command</CODE>, and
-<CODE>vi-insert</CODE>.
-<CODE>vi</CODE> is equivalent to <CODE>vi-command</CODE>; <CODE>emacs</CODE> is
-equivalent to <CODE>emacs-standard</CODE>.  The default value is <CODE>emacs</CODE>.
-The value of the <CODE>editing-mode</CODE> variable also affects the
-default keymap.
-<P>
-
-<DT><CODE>mark-directories</CODE>
-<DD>If set to <SAMP>`on'</SAMP>, completed directory names have a slash
-appended.  The default is <SAMP>`on'</SAMP>.
-<P>
-
-<DT><CODE>mark-modified-lines</CODE>
-<DD><A NAME="IDX25"></A>
-This variable, when set to <SAMP>`on'</SAMP>, causes Readline to display an
-asterisk (<SAMP>`*'</SAMP>) at the start of history lines which have been modified.
-This variable is <SAMP>`off'</SAMP> by default.
-<P>
-
-<DT><CODE>mark-symlinked-directories</CODE>
-<DD><A NAME="IDX26"></A>
-If set to <SAMP>`on'</SAMP>, completed names which are symbolic links
-to directories have a slash appended (subject to the value of
-<CODE>mark-directories</CODE>).
-The default is <SAMP>`off'</SAMP>.
-<P>
-
-<DT><CODE>match-hidden-files</CODE>
-<DD><A NAME="IDX27"></A>
-This variable, when set to <SAMP>`on'</SAMP>, causes Readline to match files whose
-names begin with a <SAMP>`.'</SAMP> (hidden files) when performing filename
-completion.
-If set to <SAMP>`off'</SAMP>, the leading <SAMP>`.'</SAMP> must be
-supplied by the user in the filename to be completed.
-This variable is <SAMP>`on'</SAMP> by default.
-<P>
-
-<DT><CODE>menu-complete-display-prefix</CODE>
-<DD><A NAME="IDX28"></A>
-If set to <SAMP>`on'</SAMP>, menu completion displays the common prefix of the
-list of possible completions (which may be empty) before cycling through
-the list.  The default is <SAMP>`off'</SAMP>.
-<P>
-
-<DT><CODE>output-meta</CODE>
-<DD><A NAME="IDX29"></A>
-If set to <SAMP>`on'</SAMP>, Readline will display characters with the
-eighth bit set directly rather than as a meta-prefixed escape
-sequence.  The default is <SAMP>`off'</SAMP>.
-<P>
-
-<DT><CODE>page-completions</CODE>
-<DD><A NAME="IDX30"></A>
-If set to <SAMP>`on'</SAMP>, Readline uses an internal <CODE>more</CODE>-like pager
-to display a screenful of possible completions at a time.
-This variable is <SAMP>`on'</SAMP> by default.
-<P>
-
-<DT><CODE>print-completions-horizontally</CODE>
-<DD>If set to <SAMP>`on'</SAMP>, Readline will display completions with matches
-sorted horizontally in alphabetical order, rather than down the screen.
-The default is <SAMP>`off'</SAMP>.
-<P>
-
-<DT><CODE>revert-all-at-newline</CODE>
-<DD><A NAME="IDX31"></A>
-If set to <SAMP>`on'</SAMP>, Readline will undo all changes to history lines
-before returning when <CODE>accept-line</CODE> is executed.  By default,
-history lines may be modified and retain individual undo lists across
-calls to <CODE>readline</CODE>.  The default is <SAMP>`off'</SAMP>.
-<P>
-
-<DT><CODE>show-all-if-ambiguous</CODE>
-<DD><A NAME="IDX32"></A>
-This alters the default behavior of the completion functions.  If
-set to <SAMP>`on'</SAMP>, 
-words which have more than one possible completion cause the
-matches to be listed immediately instead of ringing the bell.
-The default value is <SAMP>`off'</SAMP>.
-<P>
-
-<DT><CODE>show-all-if-unmodified</CODE>
-<DD><A NAME="IDX33"></A>
-This alters the default behavior of the completion functions in
-a fashion similar to <VAR>show-all-if-ambiguous</VAR>.
-If set to <SAMP>`on'</SAMP>, 
-words which have more than one possible completion without any
-possible partial completion (the possible completions don't share
-a common prefix) cause the matches to be listed immediately instead
-of ringing the bell.
-The default value is <SAMP>`off'</SAMP>.
-<P>
-
-<DT><CODE>skip-completed-text</CODE>
-<DD><A NAME="IDX34"></A>
-If set to <SAMP>`on'</SAMP>, this alters the default completion behavior when
-inserting a single match into the line.  It's only active when
-performing completion in the middle of a word.  If enabled, readline
-does not insert characters from the completion that match characters
-after point in the word being completed, so portions of the word
-following the cursor are not duplicated.
-For instance, if this is enabled, attempting completion when the cursor
-is after the <SAMP>`e'</SAMP> in <SAMP>`Makefile'</SAMP> will result in <SAMP>`Makefile'</SAMP>
-rather than <SAMP>`Makefilefile'</SAMP>, assuming there is a single possible
-completion.
-The default value is <SAMP>`off'</SAMP>.
-<P>
-
-<DT><CODE>visible-stats</CODE>
-<DD><A NAME="IDX35"></A>
-If set to <SAMP>`on'</SAMP>, a character denoting a file's type
-is appended to the filename when listing possible
-completions.  The default is <SAMP>`off'</SAMP>.
-<P>
-
-</DL>
-<P>
-
-<DT>Key Bindings
-<DD>The syntax for controlling key bindings in the init file is
-simple.  First you need to find the name of the command that you
-want to change.  The following sections contain tables of the command
-name, the default keybinding, if any, and a short description of what
-the command does.
-<P>
-
-Once you know the name of the command, simply place on a line
-in the init file the name of the key
-you wish to bind the command to, a colon, and then the name of the
-command.
-There can be no space between the key name and the colon -- that will be
-interpreted as part of the key name.
-The name of the key can be expressed in different ways, depending on
-what you find most comfortable.
-</P><P>
-
-In addition to command names, readline allows keys to be bound
-to a string that is inserted when the key is pressed (a <VAR>macro</VAR>).
-</P><P>
-
-<DL COMPACT>
-<DT><VAR>keyname</VAR>: <VAR>function-name</VAR> or <VAR>macro</VAR>
-<DD><VAR>keyname</VAR> is the name of a key spelled out in English.  For example:
-<TABLE><tr><td>&nbsp;</td><td class=example><pre>Control-u: universal-argument
-Meta-Rubout: backward-kill-word
-Control-o: "&#62; output"
-</pre></td></tr></table><P>
-
-In the above example, <KBD>C-u</KBD> is bound to the function
-<CODE>universal-argument</CODE>,
-<KBD>M-DEL</KBD> is bound to the function <CODE>backward-kill-word</CODE>, and
-<KBD>C-o</KBD> is bound to run the macro
-expressed on the right hand side (that is, to insert the text
-<SAMP>`&#62; output'</SAMP> into the line).
-</P><P>
-
-A number of symbolic character names are recognized while
-processing this key binding syntax:
-<VAR>DEL</VAR>,
-<VAR>ESC</VAR>,
-<VAR>ESCAPE</VAR>,
-<VAR>LFD</VAR>,
-<VAR>NEWLINE</VAR>,
-<VAR>RET</VAR>,
-<VAR>RETURN</VAR>,
-<VAR>RUBOUT</VAR>,
-<VAR>SPACE</VAR>,
-<VAR>SPC</VAR>,
-and
-<VAR>TAB</VAR>.
-</P><P>
-
-<DT>"<VAR>keyseq</VAR>": <VAR>function-name</VAR> or <VAR>macro</VAR>
-<DD><VAR>keyseq</VAR> differs from <VAR>keyname</VAR> above in that strings
-denoting an entire key sequence can be specified, by placing
-the key sequence in double quotes.  Some GNU Emacs style key
-escapes can be used, as in the following example, but the
-special character names are not recognized.
-<P>
-
-<TABLE><tr><td>&nbsp;</td><td class=example><pre>"\C-u": universal-argument
-"\C-x\C-r": re-read-init-file
-"\e[11~": "Function Key 1"
-</pre></td></tr></table></P><P>
-
-In the above example, <KBD>C-u</KBD> is again bound to the function
-<CODE>universal-argument</CODE> (just as it was in the first example),
-<SAMP>`<KBD>C-x</KBD> <KBD>C-r</KBD>'</SAMP> is bound to the function <CODE>re-read-init-file</CODE>,
-and <SAMP>`<KBD>ESC</KBD> <KBD>[</KBD> <KBD>1</KBD> <KBD>1</KBD> <KBD>~</KBD>'</SAMP> is bound to insert
-the text <SAMP>`Function Key 1'</SAMP>.
-</P><P>
-
-</DL>
-<P>
-
-The following GNU Emacs style escape sequences are available when
-specifying key sequences:
-</P><P>
-
-<DL COMPACT>
-<DT><CODE><KBD>\C-</KBD></CODE>
-<DD>control prefix
-<DT><CODE><KBD>\M-</KBD></CODE>
-<DD>meta prefix
-<DT><CODE><KBD>\e</KBD></CODE>
-<DD>an escape character
-<DT><CODE><KBD>\\</KBD></CODE>
-<DD>backslash
-<DT><CODE><KBD>\"</KBD></CODE>
-<DD><KBD>"</KBD>, a double quotation mark
-<DT><CODE><KBD>\'</KBD></CODE>
-<DD><KBD>'</KBD>, a single quote or apostrophe
-</DL>
-<P>
-
-In addition to the GNU Emacs style escape sequences, a second
-set of backslash escapes is available:
-</P><P>
-
-<DL COMPACT>
-<DT><CODE>\a</CODE>
-<DD>alert (bell)
-<DT><CODE>\b</CODE>
-<DD>backspace
-<DT><CODE>\d</CODE>
-<DD>delete
-<DT><CODE>\f</CODE>
-<DD>form feed
-<DT><CODE>\n</CODE>
-<DD>newline
-<DT><CODE>\r</CODE>
-<DD>carriage return
-<DT><CODE>\t</CODE>
-<DD>horizontal tab
-<DT><CODE>\v</CODE>
-<DD>vertical tab
-<DT><CODE>\<VAR>nnn</VAR></CODE>
-<DD>the eight-bit character whose value is the octal value <VAR>nnn</VAR>
-(one to three digits)
-<DT><CODE>\x<VAR>HH</VAR></CODE>
-<DD>the eight-bit character whose value is the hexadecimal value <VAR>HH</VAR>
-(one or two hex digits)
-</DL>
-<P>
-
-When entering the text of a macro, single or double quotes must
-be used to indicate a macro definition.
-Unquoted text is assumed to be a function name.
-In the macro body, the backslash escapes described above are expanded.
-Backslash will quote any other character in the macro text,
-including <SAMP>`"'</SAMP> and <SAMP>`''</SAMP>.
-For example, the following binding will make <SAMP>`<KBD>C-x</KBD> \'</SAMP>
-insert a single <SAMP>`\'</SAMP> into the line:
-<TABLE><tr><td>&nbsp;</td><td class=example><pre>"\C-x\\": "\\"
-</pre></td></tr></table></P><P>
-
-</DL>
-<P>
-
-<A NAME="Conditional Init Constructs"></A>
-<HR SIZE="6">
-<A NAME="SEC11"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC10"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC12"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC12"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC9"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC13"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC51">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H3> 1.3.2 Conditional Init Constructs </H3>
-<!--docid::SEC11::-->
-<P>
-
-Readline implements a facility similar in spirit to the conditional
-compilation features of the C preprocessor which allows key
-bindings and variable settings to be performed as the result
-of tests.  There are four parser directives used.
-</P><P>
-
-<DL COMPACT>
-<DT><CODE>$if</CODE>
-<DD>The <CODE>$if</CODE> construct allows bindings to be made based on the
-editing mode, the terminal being used, or the application using
-Readline.  The text of the test extends to the end of the line;
-no characters are required to isolate it.
-<P>
-
-<DL COMPACT>
-<DT><CODE>mode</CODE>
-<DD>The <CODE>mode=</CODE> form of the <CODE>$if</CODE> directive is used to test
-whether Readline is in <CODE>emacs</CODE> or <CODE>vi</CODE> mode.
-This may be used in conjunction
-with the <SAMP>`set keymap'</SAMP> command, for instance, to set bindings in
-the <CODE>emacs-standard</CODE> and <CODE>emacs-ctlx</CODE> keymaps only if
-Readline is starting out in <CODE>emacs</CODE> mode.
-<P>
-
-<DT><CODE>term</CODE>
-<DD>The <CODE>term=</CODE> form may be used to include terminal-specific
-key bindings, perhaps to bind the key sequences output by the
-terminal's function keys.  The word on the right side of the
-<SAMP>`='</SAMP> is tested against both the full name of the terminal and
-the portion of the terminal name before the first <SAMP>`-'</SAMP>.  This
-allows <CODE>sun</CODE> to match both <CODE>sun</CODE> and <CODE>sun-cmd</CODE>,
-for instance.
-<P>
-
-<DT><CODE>application</CODE>
-<DD>The <VAR>application</VAR> construct is used to include
-application-specific settings.  Each program using the Readline
-library sets the <VAR>application name</VAR>, and you can test for
-a particular value. 
-This could be used to bind key sequences to functions useful for
-a specific program.  For instance, the following command adds a
-key sequence that quotes the current or previous word in Bash:
-<TABLE><tr><td>&nbsp;</td><td class=example><pre>$if Bash
-# Quote the current or previous word
-"\C-xq": "\eb\"\ef\""
-$endif
-</pre></td></tr></table></DL>
-<P>
-
-<DT><CODE>$endif</CODE>
-<DD>This command, as seen in the previous example, terminates an
-<CODE>$if</CODE> command.
-<P>
-
-<DT><CODE>$else</CODE>
-<DD>Commands in this branch of the <CODE>$if</CODE> directive are executed if
-the test fails.
-<P>
-
-<DT><CODE>$include</CODE>
-<DD>This directive takes a single filename as an argument and reads commands
-and bindings from that file.
-For example, the following directive reads from <TT>`/etc/inputrc'</TT>:
-<TABLE><tr><td>&nbsp;</td><td class=example><pre>$include /etc/inputrc
-</pre></td></tr></table></DL>
-<P>
-
-<A NAME="Sample Init File"></A>
-<HR SIZE="6">
-<A NAME="SEC12"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC11"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC13"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC13"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC9"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC13"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC51">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H3> 1.3.3 Sample Init File </H3>
-<!--docid::SEC12::-->
-<P>
-
-Here is an example of an <VAR>inputrc</VAR> file.  This illustrates key
-binding, variable assignment, and conditional syntax.
-</P><P>
-
-<TABLE><tr><td>&nbsp;</td><td class=example><pre># This file controls the behaviour of line input editing for
-# programs that use the GNU Readline library.  Existing
-# programs include FTP, Bash, and GDB.
-#
-# You can re-read the inputrc file with C-x C-r.
-# Lines beginning with '#' are comments.
-#
-# First, include any systemwide bindings and variable
-# assignments from /etc/Inputrc
-$include /etc/Inputrc
-
-#
-# Set various bindings for emacs mode.
-
-set editing-mode emacs 
-
-$if mode=emacs
-
-Meta-Control-h:        backward-kill-word      Text after the function name is ignored
-
-#
-# Arrow keys in keypad mode
-#
-#"\M-OD":        backward-char
-#"\M-OC":        forward-char
-#"\M-OA":        previous-history
-#"\M-OB":        next-history
-#
-# Arrow keys in ANSI mode
-#
-"\M-[D":        backward-char
-"\M-[C":        forward-char
-"\M-[A":        previous-history
-"\M-[B":        next-history
-#
-# Arrow keys in 8 bit keypad mode
-#
-#"\M-\C-OD":       backward-char
-#"\M-\C-OC":       forward-char
-#"\M-\C-OA":       previous-history
-#"\M-\C-OB":       next-history
-#
-# Arrow keys in 8 bit ANSI mode
-#
-#"\M-\C-[D":       backward-char
-#"\M-\C-[C":       forward-char
-#"\M-\C-[A":       previous-history
-#"\M-\C-[B":       next-history
-
-C-q: quoted-insert
-
-$endif
-
-# An old-style binding.  This happens to be the default.
-TAB: complete
-
-# Macros that are convenient for shell interaction
-$if Bash
-# edit the path
-"\C-xp": "PATH=${PATH}\e\C-e\C-a\ef\C-f"
-# prepare to type a quoted word --
-# insert open and close double quotes
-# and move to just after the open quote
-"\C-x\"": "\"\"\C-b"
-# insert a backslash (testing backslash escapes
-# in sequences and macros)
-"\C-x\\": "\\"
-# Quote the current or previous word
-"\C-xq": "\eb\"\ef\""
-# Add a binding to refresh the line, which is unbound
-"\C-xr": redraw-current-line
-# Edit variable on current line.
-"\M-\C-v": "\C-a\C-k$\C-y\M-\C-e\C-a\C-y="
-$endif
-
-# use a visible bell if one is available
-set bell-style visible
-
-# don't strip characters to 7 bits when reading
-set input-meta on
-
-# allow iso-latin1 characters to be inserted rather
-# than converted to prefix-meta sequences
-set convert-meta off
-
-# display characters with the eighth bit set directly
-# rather than as meta-prefixed characters
-set output-meta on
-
-# if there are more than 150 possible completions for
-# a word, ask the user if he wants to see all of them
-set completion-query-items 150
-
-# For FTP
-$if Ftp
-"\C-xg": "get \M-?"
-"\C-xt": "put \M-?"
-"\M-.": yank-last-arg
-$endif
-</pre></td></tr></table></P><P>
-
-<A NAME="Bindable Readline Commands"></A>
-<HR SIZE="6">
-<A NAME="SEC13"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC12"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC14"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC22"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC1"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC22"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC51">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H2> 1.4 Bindable Readline Commands </H2>
-<!--docid::SEC13::-->
-<P>
-
-<BLOCKQUOTE><TABLE BORDER=0 CELLSPACING=0> 
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="readline.html#SEC14">1.4.1 Commands For Moving</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Moving about the line.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="readline.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Getting at previous lines.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="readline.html#SEC16">1.4.3 Commands For Changing Text</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Commands for changing text.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="readline.html#SEC17">1.4.4 Killing And Yanking</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Commands for killing and yanking.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="readline.html#SEC18">1.4.5 Specifying Numeric Arguments</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Specifying numeric arguments, repeat counts.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="readline.html#SEC19">1.4.6 Letting Readline Type For You</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Getting Readline to do the typing for you.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="readline.html#SEC20">1.4.7 Keyboard Macros</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Saving and re-executing typed characters</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Other miscellaneous commands.</TD></TR>
-</TABLE></BLOCKQUOTE>
-<P>
-
-This section describes Readline commands that may be bound to key
-sequences.
-Command names without an accompanying key sequence are unbound by default.
-</P><P>
-
-In the following descriptions, <EM>point</EM> refers to the current cursor
-position, and <EM>mark</EM> refers to a cursor position saved by the
-<CODE>set-mark</CODE> command.
-The text between the point and mark is referred to as the <EM>region</EM>.
-</P><P>
-
-<A NAME="Commands For Moving"></A>
-<HR SIZE="6">
-<A NAME="SEC14"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC13"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC15"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC22"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC13"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC22"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC51">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H3> 1.4.1 Commands For Moving </H3>
-<!--docid::SEC14::-->
-<DL COMPACT>
-<A NAME="IDX36"></A>
-<DT><CODE>beginning-of-line (C-a)</CODE>
-<DD><A NAME="IDX37"></A>
-Move to the start of the current line.
-<P>
-
-<A NAME="IDX38"></A>
-<DT><CODE>end-of-line (C-e)</CODE>
-<DD><A NAME="IDX39"></A>
-Move to the end of the line.
-<P>
-
-<A NAME="IDX40"></A>
-<DT><CODE>forward-char (C-f)</CODE>
-<DD><A NAME="IDX41"></A>
-Move forward a character.
-<P>
-
-<A NAME="IDX42"></A>
-<DT><CODE>backward-char (C-b)</CODE>
-<DD><A NAME="IDX43"></A>
-Move back a character.
-<P>
-
-<A NAME="IDX44"></A>
-<DT><CODE>forward-word (M-f)</CODE>
-<DD><A NAME="IDX45"></A>
-Move forward to the end of the next word.
-Words are composed of letters and digits.
-<P>
-
-<A NAME="IDX46"></A>
-<DT><CODE>backward-word (M-b)</CODE>
-<DD><A NAME="IDX47"></A>
-Move back to the start of the current or previous word.
-Words are composed of letters and digits.
-<P>
-
-<A NAME="IDX48"></A>
-<DT><CODE>clear-screen (C-l)</CODE>
-<DD><A NAME="IDX49"></A>
-Clear the screen and redraw the current line,
-leaving the current line at the top of the screen.
-<P>
-
-<A NAME="IDX50"></A>
-<DT><CODE>redraw-current-line ()</CODE>
-<DD><A NAME="IDX51"></A>
-Refresh the current line.  By default, this is unbound.
-<P>
-
-</DL>
-<P>
-
-<A NAME="Commands For History"></A>
-<HR SIZE="6">
-<A NAME="SEC15"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC14"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC16"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC16"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC13"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC22"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC51">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H3> 1.4.2 Commands For Manipulating The History </H3>
-<!--docid::SEC15::-->
-<P>
-
-<DL COMPACT>
-<A NAME="IDX52"></A>
-<DT><CODE>accept-line (Newline or Return)</CODE>
-<DD><A NAME="IDX53"></A>
-Accept the line regardless of where the cursor is.
-If this line is
-non-empty, it may be added to the history list for future recall with
-<CODE>add_history()</CODE>.
-If this line is a modified history line, the history line is restored
-to its original state.
-<P>
-
-<A NAME="IDX54"></A>
-<DT><CODE>previous-history (C-p)</CODE>
-<DD><A NAME="IDX55"></A>
-Move `back' through the history list, fetching the previous command.
-<P>
-
-<A NAME="IDX56"></A>
-<DT><CODE>next-history (C-n)</CODE>
-<DD><A NAME="IDX57"></A>
-Move `forward' through the history list, fetching the next command.
-<P>
-
-<A NAME="IDX58"></A>
-<DT><CODE>beginning-of-history (M-&#60;)</CODE>
-<DD><A NAME="IDX59"></A>
-Move to the first line in the history.
-<P>
-
-<A NAME="IDX60"></A>
-<DT><CODE>end-of-history (M-&#62;)</CODE>
-<DD><A NAME="IDX61"></A>
-Move to the end of the input history, i.e., the line currently
-being entered.
-<P>
-
-<A NAME="IDX62"></A>
-<DT><CODE>reverse-search-history (C-r)</CODE>
-<DD><A NAME="IDX63"></A>
-Search backward starting at the current line and moving `up' through
-the history as necessary.  This is an incremental search.
-<P>
-
-<A NAME="IDX64"></A>
-<DT><CODE>forward-search-history (C-s)</CODE>
-<DD><A NAME="IDX65"></A>
-Search forward starting at the current line and moving `down' through
-the the history as necessary.  This is an incremental search.
-<P>
-
-<A NAME="IDX66"></A>
-<DT><CODE>non-incremental-reverse-search-history (M-p)</CODE>
-<DD><A NAME="IDX67"></A>
-Search backward starting at the current line and moving `up'
-through the history as necessary using a non-incremental search
-for a string supplied by the user.
-<P>
-
-<A NAME="IDX68"></A>
-<DT><CODE>non-incremental-forward-search-history (M-n)</CODE>
-<DD><A NAME="IDX69"></A>
-Search forward starting at the current line and moving `down'
-through the the history as necessary using a non-incremental search
-for a string supplied by the user.
-<P>
-
-<A NAME="IDX70"></A>
-<DT><CODE>history-search-forward ()</CODE>
-<DD><A NAME="IDX71"></A>
-Search forward through the history for the string of characters
-between the start of the current line and the point.
-This is a non-incremental search.
-By default, this command is unbound.
-<P>
-
-<A NAME="IDX72"></A>
-<DT><CODE>history-search-backward ()</CODE>
-<DD><A NAME="IDX73"></A>
-Search backward through the history for the string of characters
-between the start of the current line and the point.  This
-is a non-incremental search.  By default, this command is unbound.
-<P>
-
-<A NAME="IDX74"></A>
-<DT><CODE>yank-nth-arg (M-C-y)</CODE>
-<DD><A NAME="IDX75"></A>
-Insert the first argument to the previous command (usually
-the second word on the previous line) at point.
-With an argument <VAR>n</VAR>,
-insert the <VAR>n</VAR>th word from the previous command (the words
-in the previous command begin with word 0).  A negative argument
-inserts the <VAR>n</VAR>th word from the end of the previous command.
-Once the argument <VAR>n</VAR> is computed, the argument is extracted
-as if the <SAMP>`!<VAR>n</VAR>'</SAMP> history expansion had been specified.
-<P>
-
-<A NAME="IDX76"></A>
-<DT><CODE>yank-last-arg (M-. or M-_)</CODE>
-<DD><A NAME="IDX77"></A>
-Insert last argument to the previous command (the last word of the
-previous history entry).
-With a numeric argument, behave exactly like <CODE>yank-nth-arg</CODE>.
-Successive calls to <CODE>yank-last-arg</CODE> move back through the history
-list, inserting the last word (or the word specified by the argument to
-the first call) of each line in turn.
-Any numeric argument supplied to these successive calls determines
-the direction to move through the history.  A negative argument switches
-the direction through the history (back or forward).
-The history expansion facilities are used to extract the last argument,
-as if the <SAMP>`!$'</SAMP> history expansion had been specified.
-<P>
-
-</DL>
-<P>
-
-<A NAME="Commands For Text"></A>
-<HR SIZE="6">
-<A NAME="SEC16"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC15"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC17"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC17"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC13"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC22"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC51">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H3> 1.4.3 Commands For Changing Text </H3>
-<!--docid::SEC16::-->
-<P>
-
-<DL COMPACT>
-<A NAME="IDX78"></A>
-<DT><CODE>delete-char (C-d)</CODE>
-<DD><A NAME="IDX79"></A>
-Delete the character at point.  If point is at the
-beginning of the line, there are no characters in the line, and
-the last character typed was not bound to <CODE>delete-char</CODE>, then
-return EOF.
-<P>
-
-<A NAME="IDX80"></A>
-<DT><CODE>backward-delete-char (Rubout)</CODE>
-<DD><A NAME="IDX81"></A>
-Delete the character behind the cursor.  A numeric argument means
-to kill the characters instead of deleting them.
-<P>
-
-<A NAME="IDX82"></A>
-<DT><CODE>forward-backward-delete-char ()</CODE>
-<DD><A NAME="IDX83"></A>
-Delete the character under the cursor, unless the cursor is at the
-end of the line, in which case the character behind the cursor is
-deleted.  By default, this is not bound to a key.
-<P>
-
-<A NAME="IDX84"></A>
-<DT><CODE>quoted-insert (C-q or C-v)</CODE>
-<DD><A NAME="IDX85"></A>
-Add the next character typed to the line verbatim.  This is
-how to insert key sequences like <KBD>C-q</KBD>, for example.
-<P>
-
-<A NAME="IDX86"></A>
-<DT><CODE>tab-insert (M-<KBD>TAB</KBD>)</CODE>
-<DD><A NAME="IDX87"></A>
-Insert a tab character.
-<P>
-
-<A NAME="IDX88"></A>
-<DT><CODE>self-insert (a, b, A, 1, !, <small>...</small>)</CODE>
-<DD><A NAME="IDX89"></A>
-Insert yourself.
-<P>
-
-<A NAME="IDX90"></A>
-<DT><CODE>transpose-chars (C-t)</CODE>
-<DD><A NAME="IDX91"></A>
-Drag the character before the cursor forward over
-the character at the cursor, moving the
-cursor forward as well.  If the insertion point
-is at the end of the line, then this
-transposes the last two characters of the line.
-Negative arguments have no effect.
-<P>
-
-<A NAME="IDX92"></A>
-<DT><CODE>transpose-words (M-t)</CODE>
-<DD><A NAME="IDX93"></A>
-Drag the word before point past the word after point,
-moving point past that word as well.
-If the insertion point is at the end of the line, this transposes
-the last two words on the line.
-<P>
-
-<A NAME="IDX94"></A>
-<DT><CODE>upcase-word (M-u)</CODE>
-<DD><A NAME="IDX95"></A>
-Uppercase the current (or following) word.  With a negative argument,
-uppercase the previous word, but do not move the cursor.
-<P>
-
-<A NAME="IDX96"></A>
-<DT><CODE>downcase-word (M-l)</CODE>
-<DD><A NAME="IDX97"></A>
-Lowercase the current (or following) word.  With a negative argument,
-lowercase the previous word, but do not move the cursor.
-<P>
-
-<A NAME="IDX98"></A>
-<DT><CODE>capitalize-word (M-c)</CODE>
-<DD><A NAME="IDX99"></A>
-Capitalize the current (or following) word.  With a negative argument,
-capitalize the previous word, but do not move the cursor.
-<P>
-
-<A NAME="IDX100"></A>
-<DT><CODE>overwrite-mode ()</CODE>
-<DD><A NAME="IDX101"></A>
-Toggle overwrite mode.  With an explicit positive numeric argument,
-switches to overwrite mode.  With an explicit non-positive numeric
-argument, switches to insert mode.  This command affects only
-<CODE>emacs</CODE> mode; <CODE>vi</CODE> mode does overwrite differently.
-Each call to <CODE>readline()</CODE> starts in insert mode.
-<P>
-
-In overwrite mode, characters bound to <CODE>self-insert</CODE> replace
-the text at point rather than pushing the text to the right.
-Characters bound to <CODE>backward-delete-char</CODE> replace the character
-before point with a space.
-</P><P>
-
-By default, this command is unbound.
-</P><P>
-
-</DL>
-<P>
-
-<A NAME="Commands For Killing"></A>
-<HR SIZE="6">
-<A NAME="SEC17"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC16"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC18"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC18"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC13"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC22"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC51">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H3> 1.4.4 Killing And Yanking </H3>
-<!--docid::SEC17::-->
-<P>
-
-<DL COMPACT>
-
-<A NAME="IDX102"></A>
-<DT><CODE>kill-line (C-k)</CODE>
-<DD><A NAME="IDX103"></A>
-Kill the text from point to the end of the line.
-<P>
-
-<A NAME="IDX104"></A>
-<DT><CODE>backward-kill-line (C-x Rubout)</CODE>
-<DD><A NAME="IDX105"></A>
-Kill backward to the beginning of the line.
-<P>
-
-<A NAME="IDX106"></A>
-<DT><CODE>unix-line-discard (C-u)</CODE>
-<DD><A NAME="IDX107"></A>
-Kill backward from the cursor to the beginning of the current line.
-<P>
-
-<A NAME="IDX108"></A>
-<DT><CODE>kill-whole-line ()</CODE>
-<DD><A NAME="IDX109"></A>
-Kill all characters on the current line, no matter where point is.
-By default, this is unbound.
-<P>
-
-<A NAME="IDX110"></A>
-<DT><CODE>kill-word (M-d)</CODE>
-<DD><A NAME="IDX111"></A>
-Kill from point to the end of the current word, or if between
-words, to the end of the next word.
-Word boundaries are the same as <CODE>forward-word</CODE>.
-<P>
-
-<A NAME="IDX112"></A>
-<DT><CODE>backward-kill-word (M-<KBD>DEL</KBD>)</CODE>
-<DD><A NAME="IDX113"></A>
-Kill the word behind point.
-Word boundaries are the same as <CODE>backward-word</CODE>.
-<P>
-
-<A NAME="IDX114"></A>
-<DT><CODE>unix-word-rubout (C-w)</CODE>
-<DD><A NAME="IDX115"></A>
-Kill the word behind point, using white space as a word boundary.
-The killed text is saved on the kill-ring.
-<P>
-
-<A NAME="IDX116"></A>
-<DT><CODE>unix-filename-rubout ()</CODE>
-<DD><A NAME="IDX117"></A>
-Kill the word behind point, using white space and the slash character
-as the word boundaries.
-The killed text is saved on the kill-ring.
-<P>
-
-<A NAME="IDX118"></A>
-<DT><CODE>delete-horizontal-space ()</CODE>
-<DD><A NAME="IDX119"></A>
-Delete all spaces and tabs around point.  By default, this is unbound.
-<P>
-
-<A NAME="IDX120"></A>
-<DT><CODE>kill-region ()</CODE>
-<DD><A NAME="IDX121"></A>
-Kill the text in the current region.
-By default, this command is unbound.
-<P>
-
-<A NAME="IDX122"></A>
-<DT><CODE>copy-region-as-kill ()</CODE>
-<DD><A NAME="IDX123"></A>
-Copy the text in the region to the kill buffer, so it can be yanked
-right away.  By default, this command is unbound.
-<P>
-
-<A NAME="IDX124"></A>
-<DT><CODE>copy-backward-word ()</CODE>
-<DD><A NAME="IDX125"></A>
-Copy the word before point to the kill buffer.
-The word boundaries are the same as <CODE>backward-word</CODE>.
-By default, this command is unbound.
-<P>
-
-<A NAME="IDX126"></A>
-<DT><CODE>copy-forward-word ()</CODE>
-<DD><A NAME="IDX127"></A>
-Copy the word following point to the kill buffer.
-The word boundaries are the same as <CODE>forward-word</CODE>.
-By default, this command is unbound.
-<P>
-
-<A NAME="IDX128"></A>
-<DT><CODE>yank (C-y)</CODE>
-<DD><A NAME="IDX129"></A>
-Yank the top of the kill ring into the buffer at point.
-<P>
-
-<A NAME="IDX130"></A>
-<DT><CODE>yank-pop (M-y)</CODE>
-<DD><A NAME="IDX131"></A>
-Rotate the kill-ring, and yank the new top.  You can only do this if
-the prior command is <CODE>yank</CODE> or <CODE>yank-pop</CODE>.
-</DL>
-<P>
-
-<A NAME="Numeric Arguments"></A>
-<HR SIZE="6">
-<A NAME="SEC18"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC17"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC19"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC19"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC13"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC22"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC51">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H3> 1.4.5 Specifying Numeric Arguments </H3>
-<!--docid::SEC18::-->
-<DL COMPACT>
-
-<A NAME="IDX132"></A>
-<DT><CODE>digit-argument (<KBD>M-0</KBD>, <KBD>M-1</KBD>, <small>...</small> <KBD>M--</KBD>)</CODE>
-<DD><A NAME="IDX133"></A>
-Add this digit to the argument already accumulating, or start a new
-argument.  <KBD>M--</KBD> starts a negative argument.
-<P>
-
-<A NAME="IDX134"></A>
-<DT><CODE>universal-argument ()</CODE>
-<DD><A NAME="IDX135"></A>
-This is another way to specify an argument.
-If this command is followed by one or more digits, optionally with a
-leading minus sign, those digits define the argument.
-If the command is followed by digits, executing <CODE>universal-argument</CODE>
-again ends the numeric argument, but is otherwise ignored.
-As a special case, if this command is immediately followed by a
-character that is neither a digit or minus sign, the argument count
-for the next command is multiplied by four.
-The argument count is initially one, so executing this function the
-first time makes the argument count four, a second time makes the
-argument count sixteen, and so on.
-By default, this is not bound to a key.
-</DL>
-<P>
-
-<A NAME="Commands For Completion"></A>
-<HR SIZE="6">
-<A NAME="SEC19"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC18"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC20"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC20"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC13"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC22"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC51">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H3> 1.4.6 Letting Readline Type For You </H3>
-<!--docid::SEC19::-->
-<P>
-
-<DL COMPACT>
-<A NAME="IDX136"></A>
-<DT><CODE>complete (<KBD>TAB</KBD>)</CODE>
-<DD><A NAME="IDX137"></A>
-Attempt to perform completion on the text before point.
-The actual completion performed is application-specific.
-The default is filename completion.
-<P>
-
-<A NAME="IDX138"></A>
-<DT><CODE>possible-completions (M-?)</CODE>
-<DD><A NAME="IDX139"></A>
-List the possible completions of the text before point.
-When displaying completions, Readline sets the number of columns used
-for display to the value of <CODE>completion-display-width</CODE>, the value of
-the environment variable <CODE>COLUMNS</CODE>, or the screen width, in that order.
-<P>
-
-<A NAME="IDX140"></A>
-<DT><CODE>insert-completions (M-*)</CODE>
-<DD><A NAME="IDX141"></A>
-Insert all completions of the text before point that would have
-been generated by <CODE>possible-completions</CODE>.
-<P>
-
-<A NAME="IDX142"></A>
-<DT><CODE>menu-complete ()</CODE>
-<DD><A NAME="IDX143"></A>
-Similar to <CODE>complete</CODE>, but replaces the word to be completed
-with a single match from the list of possible completions.
-Repeated execution of <CODE>menu-complete</CODE> steps through the list
-of possible completions, inserting each match in turn.
-At the end of the list of completions, the bell is rung
-(subject to the setting of <CODE>bell-style</CODE>)
-and the original text is restored.
-An argument of <VAR>n</VAR> moves <VAR>n</VAR> positions forward in the list
-of matches; a negative argument may be used to move backward
-through the list.
-This command is intended to be bound to <KBD>TAB</KBD>, but is unbound
-by default.
-<P>
-
-<A NAME="IDX144"></A>
-<DT><CODE>menu-complete-backward ()</CODE>
-<DD><A NAME="IDX145"></A>
-Identical to <CODE>menu-complete</CODE>, but moves backward through the list
-of possible completions, as if <CODE>menu-complete</CODE> had been given a
-negative argument.
-<P>
-
-<A NAME="IDX146"></A>
-<DT><CODE>delete-char-or-list ()</CODE>
-<DD><A NAME="IDX147"></A>
-Deletes the character under the cursor if not at the beginning or
-end of the line (like <CODE>delete-char</CODE>).
-If at the end of the line, behaves identically to
-<CODE>possible-completions</CODE>.
-This command is unbound by default.
-<P>
-
-</DL>
-<P>
-
-<A NAME="Keyboard Macros"></A>
-<HR SIZE="6">
-<A NAME="SEC20"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC19"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC21"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC21"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC13"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC22"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC51">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H3> 1.4.7 Keyboard Macros </H3>
-<!--docid::SEC20::-->
-<DL COMPACT>
-
-<A NAME="IDX148"></A>
-<DT><CODE>start-kbd-macro (C-x ()</CODE>
-<DD><A NAME="IDX149"></A>
-Begin saving the characters typed into the current keyboard macro.
-<P>
-
-<A NAME="IDX150"></A>
-<DT><CODE>end-kbd-macro (C-x ))</CODE>
-<DD><A NAME="IDX151"></A>
-Stop saving the characters typed into the current keyboard macro
-and save the definition.
-<P>
-
-<A NAME="IDX152"></A>
-<DT><CODE>call-last-kbd-macro (C-x e)</CODE>
-<DD><A NAME="IDX153"></A>
-Re-execute the last keyboard macro defined, by making the characters
-in the macro appear as if typed at the keyboard.
-<P>
-
-</DL>
-<P>
-
-<A NAME="Miscellaneous Commands"></A>
-<HR SIZE="6">
-<A NAME="SEC21"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC20"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC22"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC22"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC13"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC22"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC51">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H3> 1.4.8 Some Miscellaneous Commands </H3>
-<!--docid::SEC21::-->
-<DL COMPACT>
-
-<A NAME="IDX154"></A>
-<DT><CODE>re-read-init-file (C-x C-r)</CODE>
-<DD><A NAME="IDX155"></A>
-Read in the contents of the <VAR>inputrc</VAR> file, and incorporate
-any bindings or variable assignments found there.
-<P>
-
-<A NAME="IDX156"></A>
-<DT><CODE>abort (C-g)</CODE>
-<DD><A NAME="IDX157"></A>
-Abort the current editing command and
-ring the terminal's bell (subject to the setting of
-<CODE>bell-style</CODE>).
-<P>
-
-<A NAME="IDX158"></A>
-<DT><CODE>do-uppercase-version (M-a, M-b, M-<VAR>x</VAR>, <small>...</small>)</CODE>
-<DD><A NAME="IDX159"></A>
-If the metafied character <VAR>x</VAR> is lowercase, run the command
-that is bound to the corresponding uppercase character.
-<P>
-
-<A NAME="IDX160"></A>
-<DT><CODE>prefix-meta (<KBD>ESC</KBD>)</CODE>
-<DD><A NAME="IDX161"></A>
-Metafy the next character typed.  This is for keyboards
-without a meta key.  Typing <SAMP>`<KBD>ESC</KBD> f'</SAMP> is equivalent to typing
-<KBD>M-f</KBD>.
-<P>
-
-<A NAME="IDX162"></A>
-<DT><CODE>undo (C-_ or C-x C-u)</CODE>
-<DD><A NAME="IDX163"></A>
-Incremental undo, separately remembered for each line.
-<P>
-
-<A NAME="IDX164"></A>
-<DT><CODE>revert-line (M-r)</CODE>
-<DD><A NAME="IDX165"></A>
-Undo all changes made to this line.  This is like executing the <CODE>undo</CODE>
-command enough times to get back to the beginning.
-<P>
-
-<A NAME="IDX166"></A>
-<DT><CODE>tilde-expand (M-~)</CODE>
-<DD><A NAME="IDX167"></A>
-Perform tilde expansion on the current word.
-<P>
-
-<A NAME="IDX168"></A>
-<DT><CODE>set-mark (C-@)</CODE>
-<DD><A NAME="IDX169"></A>
-Set the mark to the point.  If a
-numeric argument is supplied, the mark is set to that position.
-<P>
-
-<A NAME="IDX170"></A>
-<DT><CODE>exchange-point-and-mark (C-x C-x)</CODE>
-<DD><A NAME="IDX171"></A>
-Swap the point with the mark.  The current cursor position is set to
-the saved position, and the old cursor position is saved as the mark.
-<P>
-
-<A NAME="IDX172"></A>
-<DT><CODE>character-search (C-])</CODE>
-<DD><A NAME="IDX173"></A>
-A character is read and point is moved to the next occurrence of that
-character.  A negative count searches for previous occurrences.
-<P>
-
-<A NAME="IDX174"></A>
-<DT><CODE>character-search-backward (M-C-])</CODE>
-<DD><A NAME="IDX175"></A>
-A character is read and point is moved to the previous occurrence
-of that character.  A negative count searches for subsequent
-occurrences.
-<P>
-
-<A NAME="IDX176"></A>
-<DT><CODE>skip-csi-sequence ()</CODE>
-<DD><A NAME="IDX177"></A>
-Read enough characters to consume a multi-key sequence such as those
-defined for keys like Home and End.  Such sequences begin with a
-Control Sequence Indicator (CSI), usually ESC-[.  If this sequence is
-bound to "\e[", keys producing such sequences will have no effect
-unless explicitly bound to a readline command, instead of inserting
-stray characters into the editing buffer.  This is unbound by default,
-but usually bound to ESC-[.
-<P>
-
-<A NAME="IDX178"></A>
-<DT><CODE>insert-comment (M-#)</CODE>
-<DD><A NAME="IDX179"></A>
-Without a numeric argument, the value of the <CODE>comment-begin</CODE>
-variable is inserted at the beginning of the current line.
-If a numeric argument is supplied, this command acts as a toggle:  if
-the characters at the beginning of the line do not match the value
-of <CODE>comment-begin</CODE>, the value is inserted, otherwise
-the characters in <CODE>comment-begin</CODE> are deleted from the beginning of
-the line.
-In either case, the line is accepted as if a newline had been typed.
-<P>
-
-<A NAME="IDX180"></A>
-<DT><CODE>dump-functions ()</CODE>
-<DD><A NAME="IDX181"></A>
-Print all of the functions and their key bindings to the
-Readline output stream.  If a numeric argument is supplied,
-the output is formatted in such a way that it can be made part
-of an <VAR>inputrc</VAR> file.  This command is unbound by default.
-<P>
-
-<A NAME="IDX182"></A>
-<DT><CODE>dump-variables ()</CODE>
-<DD><A NAME="IDX183"></A>
-Print all of the settable variables and their values to the
-Readline output stream.  If a numeric argument is supplied,
-the output is formatted in such a way that it can be made part
-of an <VAR>inputrc</VAR> file.  This command is unbound by default.
-<P>
-
-<A NAME="IDX184"></A>
-<DT><CODE>dump-macros ()</CODE>
-<DD><A NAME="IDX185"></A>
-Print all of the Readline key sequences bound to macros and the
-strings they output.  If a numeric argument is supplied,
-the output is formatted in such a way that it can be made part
-of an <VAR>inputrc</VAR> file.  This command is unbound by default.
-<P>
-
-<A NAME="IDX186"></A>
-<DT><CODE>emacs-editing-mode (C-e)</CODE>
-<DD><A NAME="IDX187"></A>
-When in <CODE>vi</CODE> command mode, this causes a switch to <CODE>emacs</CODE>
-editing mode.
-<P>
-
-<A NAME="IDX188"></A>
-<DT><CODE>vi-editing-mode (M-C-j)</CODE>
-<DD><A NAME="IDX189"></A>
-When in <CODE>emacs</CODE> editing mode, this causes a switch to <CODE>vi</CODE>
-editing mode.
-<P>
-
-</DL>
-<P>
-
-<A NAME="Readline vi Mode"></A>
-<HR SIZE="6">
-<A NAME="SEC22"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC21"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC23"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[ &lt;&lt; ]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC1"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC23"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC51">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H2> 1.5 Readline vi Mode </H2>
-<!--docid::SEC22::-->
-<P>
-
-While the Readline library does not have a full set of <CODE>vi</CODE>
-editing functions, it does contain enough to allow simple editing
-of the line.  The Readline <CODE>vi</CODE> mode behaves as specified in
-the POSIX standard.
-</P><P>
-
-In order to switch interactively between <CODE>emacs</CODE> and <CODE>vi</CODE>
-editing modes, use the command <KBD>M-C-j</KBD> (bound to emacs-editing-mode
-when in <CODE>vi</CODE> mode and to vi-editing-mode in <CODE>emacs</CODE> mode).
-The Readline default is <CODE>emacs</CODE> mode.
-</P><P>
-
-When you enter a line in <CODE>vi</CODE> mode, you are already placed in
-`insertion' mode, as if you had typed an <SAMP>`i'</SAMP>.  Pressing <KBD>ESC</KBD>
-switches you into `command' mode, where you can edit the text of the
-line with the standard <CODE>vi</CODE> movement keys, move to previous
-history lines with <SAMP>`k'</SAMP> and subsequent lines with <SAMP>`j'</SAMP>, and
-so forth.
-</P><P>
-
-This document describes the GNU Readline Library, a utility for aiding
-in the consistency of user interface across discrete programs that need
-to provide a command line interface.
-</P><P>
-
-Copyright (C) 1988--2011 Free Software Foundation, Inc.
-</P><P>
-
-Permission is granted to make and distribute verbatim copies of
-this manual provided the copyright notice and this permission notice
-pare preserved on all copies.
-</P><P>
-
-Permission is granted to copy and distribute modified versions of this
-manual under the conditions for verbatim copying, provided that the entire
-resulting derived work is distributed under the terms of a permission
-notice identical to this one.
-</P><P>
-
-Permission is granted to copy and distribute translations of this manual
-into another language, under the above conditions for modified versions,
-except that this permission notice may be stated in a translation approved
-by the Foundation.
-</P><P>
-
-<A NAME="Programming with GNU Readline"></A>
-<HR SIZE="6">
-<A NAME="SEC23"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC22"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC24"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[ &lt;&lt; ]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC49"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC51">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H1> 2. Programming with GNU Readline </H1>
-<!--docid::SEC23::-->
-<P>
-
-This chapter describes the interface between the GNU Readline Library and
-other programs.  If you are a programmer, and you wish to include the
-features found in GNU Readline
-such as completion, line editing, and interactive history manipulation
-in your own programs, this section is for you.
-</P><P>
-
-<BLOCKQUOTE><TABLE BORDER=0 CELLSPACING=0> 
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="readline.html#SEC24">2.1 Basic Behavior</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Using the default behavior of Readline.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="readline.html#SEC25">2.2 Custom Functions</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Adding your own functions to Readline.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Variables accessible to custom
-                                       functions.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="readline.html#SEC29">2.4 Readline Convenience Functions</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Functions which Readline supplies to
-                                       aid in writing your own custom
-                                       functions.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="readline.html#SEC43">2.5 Readline Signal Handling</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">How Readline behaves when it receives signals.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="readline.html#SEC44">2.6 Custom Completers</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Supplanting or supplementing Readline's
-                       completion functions.</TD></TR>
-</TABLE></BLOCKQUOTE>
-<P>
-
-<A NAME="Basic Behavior"></A>
-<HR SIZE="6">
-<A NAME="SEC24"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC23"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC25"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[ &lt;&lt; ]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC23"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC49"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC51">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H2> 2.1 Basic Behavior </H2>
-<!--docid::SEC24::-->
-<P>
-
-Many programs provide a command line interface, such as <CODE>mail</CODE>,
-<CODE>ftp</CODE>, and <CODE>sh</CODE>.  For such programs, the default behaviour of
-Readline is sufficient.  This section describes how to use Readline in
-the simplest way possible, perhaps to replace calls in your code to
-<CODE>gets()</CODE> or <CODE>fgets()</CODE>.
-</P><P>
-
-<A NAME="IDX190"></A>
-<A NAME="IDX191"></A>
-</P><P>
-
-The function <CODE>readline()</CODE> prints a prompt <VAR>prompt</VAR>
-and then reads and returns a single line of text from the user.
-If <VAR>prompt</VAR> is <CODE>NULL</CODE> or the empty string, no prompt is displayed.
-The line <CODE>readline</CODE> returns is allocated with <CODE>malloc()</CODE>;
-the caller should <CODE>free()</CODE> the line when it has finished with it.
-The declaration for <CODE>readline</CODE> in ANSI C is
-</P><P>
-
-<TABLE><tr><td>&nbsp;</td><td class=example><pre><CODE>char *readline (const char *<VAR>prompt</VAR>);</CODE>
-</pre></td></tr></table></P><P>
-
-So, one might say
-<TABLE><tr><td>&nbsp;</td><td class=example><pre><CODE>char *line = readline ("Enter a line: ");</CODE>
-</pre></td></tr></table>in order to read a line of text from the user.
-The line returned has the final newline removed, so only the
-text remains.
-</P><P>
-
-If <CODE>readline</CODE> encounters an <CODE>EOF</CODE> while reading the line, and the
-line is empty at that point, then <CODE>(char *)NULL</CODE> is returned.
-Otherwise, the line is ended just as if a newline had been typed.
-</P><P>
-
-If you want the user to be able to get at the line later, (with
-<KBD>C-p</KBD> for example), you must call <CODE>add_history()</CODE> to save the
-line away in a <EM>history</EM> list of such lines.
-</P><P>
-
-<TABLE><tr><td>&nbsp;</td><td class=example><pre><CODE>add_history (line)</CODE>;
-</pre></td></tr></table></P><P>
-
-For full details on the GNU History Library, see the associated manual.
-</P><P>
-
-It is preferable to avoid saving empty lines on the history list, since
-users rarely have a burning need to reuse a blank line.  Here is
-a function which usefully replaces the standard <CODE>gets()</CODE> library
-function, and has the advantage of no static buffer to overflow:
-</P><P>
-
-<TABLE><tr><td>&nbsp;</td><td class=example><pre>/* A static variable for holding the line. */
-static char *line_read = (char *)NULL;
-
-/* Read a string, and return a pointer to it.
-   Returns NULL on EOF. */
-char *
-rl_gets ()
-{
-  /* If the buffer has already been allocated,
-     return the memory to the free pool. */
-  if (line_read)
-    {
-      free (line_read);
-      line_read = (char *)NULL;
-    }
-
-  /* Get a line from the user. */
-  line_read = readline ("");
-
-  /* If the line has any text in it,
-     save it on the history. */
-  if (line_read &#38;&#38; *line_read)
-    add_history (line_read);
-
-  return (line_read);
-}
-</pre></td></tr></table></P><P>
-
-This function gives the user the default behaviour of <KBD>TAB</KBD>
-completion: completion on file names.  If you do not want Readline to
-complete on filenames, you can change the binding of the <KBD>TAB</KBD> key
-with <CODE>rl_bind_key()</CODE>.
-</P><P>
-
-<TABLE><tr><td>&nbsp;</td><td class=example><pre><CODE>int rl_bind_key (int <VAR>key</VAR>, rl_command_func_t *<VAR>function</VAR>);</CODE>
-</pre></td></tr></table></P><P>
-
-<CODE>rl_bind_key()</CODE> takes two arguments: <VAR>key</VAR> is the character that
-you want to bind, and <VAR>function</VAR> is the address of the function to
-call when <VAR>key</VAR> is pressed.  Binding <KBD>TAB</KBD> to <CODE>rl_insert()</CODE>
-makes <KBD>TAB</KBD> insert itself.
-<CODE>rl_bind_key()</CODE> returns non-zero if <VAR>key</VAR> is not a valid
-ASCII character code (between 0 and 255).
-</P><P>
-
-Thus, to disable the default <KBD>TAB</KBD> behavior, the following suffices:
-<TABLE><tr><td>&nbsp;</td><td class=example><pre><CODE>rl_bind_key ('\t', rl_insert);</CODE>
-</pre></td></tr></table></P><P>
-
-This code should be executed once at the start of your program; you
-might write a function called <CODE>initialize_readline()</CODE> which
-performs this and other desired initializations, such as installing
-custom completers (see section <A HREF="readline.html#SEC44">2.6 Custom Completers</A>).
-</P><P>
-
-<A NAME="Custom Functions"></A>
-<HR SIZE="6">
-<A NAME="SEC25"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC24"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC26"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC28"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC23"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC28"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC51">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H2> 2.2 Custom Functions </H2>
-<!--docid::SEC25::-->
-<P>
-
-Readline provides many functions for manipulating the text of
-the line, but it isn't possible to anticipate the needs of all
-programs.  This section describes the various functions and variables
-defined within the Readline library which allow a user program to add
-customized functionality to Readline.
-</P><P>
-
-Before declaring any functions that customize Readline's behavior, or
-using any functionality Readline provides in other code, an
-application writer should include the file <CODE>&#60;readline/readline.h&#62;</CODE>
-in any file that uses Readline's features.  Since some of the definitions
-in <CODE>readline.h</CODE> use the <CODE>stdio</CODE> library, the file
-<CODE>&#60;stdio.h&#62;</CODE> should be included before <CODE>readline.h</CODE>.
-</P><P>
-
-<CODE>readline.h</CODE> defines a C preprocessor variable that should
-be treated as an integer, <CODE>RL_READLINE_VERSION</CODE>, which may
-be used to conditionally compile application code depending on
-the installed Readline version.  The value is a hexadecimal
-encoding of the major and minor version numbers of the library,
-of the form 0x<VAR>MMmm</VAR>.  <VAR>MM</VAR> is the two-digit major
-version number; <VAR>mm</VAR> is the two-digit minor version number. 
-For Readline 4.2, for example, the value of
-<CODE>RL_READLINE_VERSION</CODE> would be <CODE>0x0402</CODE>. 
-</P><P>
-
-<BLOCKQUOTE><TABLE BORDER=0 CELLSPACING=0> 
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="readline.html#SEC26">2.2.1 Readline Typedefs</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">C declarations to make code readable.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="readline.html#SEC27">2.2.2 Writing a New Function</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Variables and calling conventions.</TD></TR>
-</TABLE></BLOCKQUOTE>
-<P>
-
-<A NAME="Readline Typedefs"></A>
-<HR SIZE="6">
-<A NAME="SEC26"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC25"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC27"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC28"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC25"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC28"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC51">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H3> 2.2.1 Readline Typedefs </H3>
-<!--docid::SEC26::-->
-<P>
-
-For readabilty, we declare a number of new object types, all pointers
-to functions.
-</P><P>
-
-The reason for declaring these new types is to make it easier to write
-code describing pointers to C functions with appropriately prototyped
-arguments and return values.
-</P><P>
-
-For instance, say we want to declare a variable <VAR>func</VAR> as a pointer
-to a function which takes two <CODE>int</CODE> arguments and returns an
-<CODE>int</CODE> (this is the type of all of the Readline bindable functions).
-Instead of the classic C declaration
-</P><P>
-
-<CODE>int (*func)();</CODE>
-</P><P>
-
-or the ANSI-C style declaration
-</P><P>
-
-<CODE>int (*func)(int, int);</CODE>
-</P><P>
-
-we may write
-</P><P>
-
-<CODE>rl_command_func_t *func;</CODE>
-</P><P>
-
-The full list of function pointer types available is
-</P><P>
-
-<DL COMPACT>
-<DT><CODE>typedef int rl_command_func_t (int, int);</CODE>
-<DD><P>
-
-<DT><CODE>typedef char *rl_compentry_func_t (const char *, int);</CODE>
-<DD><P>
-
-<DT><CODE>typedef char **rl_completion_func_t (const char *, int, int);</CODE>
-<DD><P>
-
-<DT><CODE>typedef char *rl_quote_func_t (char *, int, char *);</CODE>
-<DD><P>
-
-<DT><CODE>typedef char *rl_dequote_func_t (char *, int);</CODE>
-<DD><P>
-
-<DT><CODE>typedef int rl_compignore_func_t (char **);</CODE>
-<DD><P>
-
-<DT><CODE>typedef void rl_compdisp_func_t (char **, int, int);</CODE>
-<DD><P>
-
-<DT><CODE>typedef int rl_hook_func_t (void);</CODE>
-<DD><P>
-
-<DT><CODE>typedef int rl_getc_func_t (FILE *);</CODE>
-<DD><P>
-
-<DT><CODE>typedef int rl_linebuf_func_t (char *, int);</CODE>
-<DD><P>
-
-<DT><CODE>typedef int rl_intfunc_t (int);</CODE>
-<DD><DT><CODE>#define rl_ivoidfunc_t rl_hook_func_t</CODE>
-<DD><DT><CODE>typedef int rl_icpfunc_t (char *);</CODE>
-<DD><DT><CODE>typedef int rl_icppfunc_t (char **);</CODE>
-<DD><P>
-
-<DT><CODE>typedef void rl_voidfunc_t (void);</CODE>
-<DD><DT><CODE>typedef void rl_vintfunc_t (int);</CODE>
-<DD><DT><CODE>typedef void rl_vcpfunc_t (char *);</CODE>
-<DD><DT><CODE>typedef void rl_vcppfunc_t (char **);</CODE>
-<DD><P>
-
-</DL>
-<P>
-
-<A NAME="Function Writing"></A>
-<HR SIZE="6">
-<A NAME="SEC27"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC26"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC28"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC28"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC25"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC28"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC51">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H3> 2.2.2 Writing a New Function </H3>
-<!--docid::SEC27::-->
-<P>
-
-In order to write new functions for Readline, you need to know the
-calling conventions for keyboard-invoked functions, and the names of the
-variables that describe the current state of the line read so far.
-</P><P>
-
-The calling sequence for a command <CODE>foo</CODE> looks like
-</P><P>
-
-<TABLE><tr><td>&nbsp;</td><td class=example><pre><CODE>int foo (int count, int key)</CODE>
-</pre></td></tr></table></P><P>
-
-where <VAR>count</VAR> is the numeric argument (or 1 if defaulted) and
-<VAR>key</VAR> is the key that invoked this function.
-</P><P>
-
-It is completely up to the function as to what should be done with the
-numeric argument.  Some functions use it as a repeat count, some
-as a flag, and others to choose alternate behavior (refreshing the current
-line as opposed to refreshing the screen, for example).  Some choose to
-ignore it.  In general, if a
-function uses the numeric argument as a repeat count, it should be able
-to do something useful with both negative and positive arguments.
-At the very least, it should be aware that it can be passed a
-negative argument.
-</P><P>
-
-A command function should return 0 if its action completes successfully,
-and a non-zero value if some error occurs.
-This is the convention obeyed by all of the builtin Readline bindable
-command functions.
-</P><P>
-
-<A NAME="Readline Variables"></A>
-<HR SIZE="6">
-<A NAME="SEC28"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC27"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC29"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC29"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC23"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC49"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC51">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H2> 2.3 Readline Variables </H2>
-<!--docid::SEC28::-->
-<P>
-
-These variables are available to function writers.
-</P><P>
-
-<A NAME="IDX192"></A>
-<DL>
-<DT><U>Variable:</U> char * <B>rl_line_buffer</B>
-<DD>This is the line gathered so far.  You are welcome to modify the
-contents of the line, but see <A HREF="readline.html#SEC34">2.4.5 Allowing Undoing</A>.  The
-function <CODE>rl_extend_line_buffer</CODE> is available to increase
-the memory allocated to <CODE>rl_line_buffer</CODE>.
-</DL>
-</P><P>
-
-<A NAME="IDX193"></A>
-<DL>
-<DT><U>Variable:</U> int <B>rl_point</B>
-<DD>The offset of the current cursor position in <CODE>rl_line_buffer</CODE>
-(the <EM>point</EM>).
-</DL>
-</P><P>
-
-<A NAME="IDX194"></A>
-<DL>
-<DT><U>Variable:</U> int <B>rl_end</B>
-<DD>The number of characters present in <CODE>rl_line_buffer</CODE>.  When
-<CODE>rl_point</CODE> is at the end of the line, <CODE>rl_point</CODE> and
-<CODE>rl_end</CODE> are equal.
-</DL>
-</P><P>
-
-<A NAME="IDX195"></A>
-<DL>
-<DT><U>Variable:</U> int <B>rl_mark</B>
-<DD>The <VAR>mark</VAR> (saved position) in the current line.  If set, the mark
-and point define a <EM>region</EM>.
-</DL>
-</P><P>
-
-<A NAME="IDX196"></A>
-<DL>
-<DT><U>Variable:</U> int <B>rl_done</B>
-<DD>Setting this to a non-zero value causes Readline to return the current
-line immediately.
-</DL>
-</P><P>
-
-<A NAME="IDX197"></A>
-<DL>
-<DT><U>Variable:</U> int <B>rl_num_chars_to_read</B>
-<DD>Setting this to a positive value before calling <CODE>readline()</CODE> causes
-Readline to return after accepting that many characters, rather
-than reading up to a character bound to <CODE>accept-line</CODE>.
-</DL>
-</P><P>
-
-<A NAME="IDX198"></A>
-<DL>
-<DT><U>Variable:</U> int <B>rl_pending_input</B>
-<DD>Setting this to a value makes it the next keystroke read.  This is a
-way to stuff a single character into the input stream.
-</DL>
-</P><P>
-
-<A NAME="IDX199"></A>
-<DL>
-<DT><U>Variable:</U> int <B>rl_dispatching</B>
-<DD>Set to a non-zero value if a function is being called from a key binding;
-zero otherwise.  Application functions can test this to discover whether
-they were called directly or by Readline's dispatching mechanism.
-</DL>
-</P><P>
-
-<A NAME="IDX200"></A>
-<DL>
-<DT><U>Variable:</U> int <B>rl_erase_empty_line</B>
-<DD>Setting this to a non-zero value causes Readline to completely erase
-the current line, including any prompt, any time a newline is typed as
-the only character on an otherwise-empty line.  The cursor is moved to
-the beginning of the newly-blank line.
-</DL>
-</P><P>
-
-<A NAME="IDX201"></A>
-<DL>
-<DT><U>Variable:</U> char * <B>rl_prompt</B>
-<DD>The prompt Readline uses.  This is set from the argument to
-<CODE>readline()</CODE>, and should not be assigned to directly.
-The <CODE>rl_set_prompt()</CODE> function (see section <A HREF="readline.html#SEC35">2.4.6 Redisplay</A>) may
-be used to modify the prompt string after calling <CODE>readline()</CODE>.
-</DL>
-</P><P>
-
-<A NAME="IDX202"></A>
-<DL>
-<DT><U>Variable:</U> char * <B>rl_display_prompt</B>
-<DD>The string displayed as the prompt.  This is usually identical to
-<VAR>rl_prompt</VAR>, but may be changed temporarily by functions that
-use the prompt string as a message area, such as incremental search.
-</DL>
-</P><P>
-
-<A NAME="IDX203"></A>
-<DL>
-<DT><U>Variable:</U> int <B>rl_already_prompted</B>
-<DD>If an application wishes to display the prompt itself, rather than have
-Readline do it the first time <CODE>readline()</CODE> is called, it should set
-this variable to a non-zero value after displaying the prompt.
-The prompt must also be passed as the argument to <CODE>readline()</CODE> so
-the redisplay functions can update the display properly.
-The calling application is responsible for managing the value; Readline
-never sets it.
-</DL>
-</P><P>
-
-<A NAME="IDX204"></A>
-<DL>
-<DT><U>Variable:</U> const char * <B>rl_library_version</B>
-<DD>The version number of this revision of the library.
-</DL>
-</P><P>
-
-<A NAME="IDX205"></A>
-<DL>
-<DT><U>Variable:</U> int <B>rl_readline_version</B>
-<DD>An integer encoding the current version of the library.  The encoding is
-of the form 0x<VAR>MMmm</VAR>, where <VAR>MM</VAR> is the two-digit major version
-number, and <VAR>mm</VAR> is the two-digit minor version number.
-For example, for Readline-4.2, <CODE>rl_readline_version</CODE> would have the
-value 0x0402.
-</DL>
-</P><P>
-
-<A NAME="IDX206"></A>
-<DL>
-<DT><U>Variable:</U> int <B>rl_gnu_readline_p</B>
-<DD>Always set to 1, denoting that this is GNU readline rather than some
-emulation.
-</DL>
-</P><P>
-
-<A NAME="IDX207"></A>
-<DL>
-<DT><U>Variable:</U> const char * <B>rl_terminal_name</B>
-<DD>The terminal type, used for initialization.  If not set by the application,
-Readline sets this to the value of the <CODE>TERM</CODE> environment variable
-the first time it is called.
-</DL>
-</P><P>
-
-<A NAME="IDX208"></A>
-<DL>
-<DT><U>Variable:</U> const char * <B>rl_readline_name</B>
-<DD>This variable is set to a unique name by each application using Readline.
-The value allows conditional parsing of the inputrc file
-(see section <A HREF="readline.html#SEC11">1.3.2 Conditional Init Constructs</A>).
-</DL>
-</P><P>
-
-<A NAME="IDX209"></A>
-<DL>
-<DT><U>Variable:</U> FILE * <B>rl_instream</B>
-<DD>The stdio stream from which Readline reads input.
-If <CODE>NULL</CODE>, Readline defaults to <VAR>stdin</VAR>.
-</DL>
-</P><P>
-
-<A NAME="IDX210"></A>
-<DL>
-<DT><U>Variable:</U> FILE * <B>rl_outstream</B>
-<DD>The stdio stream to which Readline performs output.
-If <CODE>NULL</CODE>, Readline defaults to <VAR>stdout</VAR>.
-</DL>
-</P><P>
-
-<A NAME="IDX211"></A>
-<DL>
-<DT><U>Variable:</U> int <B>rl_prefer_env_winsize</B>
-<DD>If non-zero, Readline gives values found in the <CODE>LINES</CODE> and
-<CODE>COLUMNS</CODE> environment variables greater precedence than values fetched
-from the kernel when computing the screen dimensions.
-</DL>
-</P><P>
-
-<A NAME="IDX212"></A>
-<DL>
-<DT><U>Variable:</U> rl_command_func_t * <B>rl_last_func</B>
-<DD>The address of the last command function Readline executed.  May be used to
-test whether or not a function is being executed twice in succession, for
-example.
-</DL>
-</P><P>
-
-<A NAME="IDX213"></A>
-<DL>
-<DT><U>Variable:</U> rl_hook_func_t * <B>rl_startup_hook</B>
-<DD>If non-zero, this is the address of a function to call just
-before <CODE>readline</CODE> prints the first prompt.
-</DL>
-</P><P>
-
-<A NAME="IDX214"></A>
-<DL>
-<DT><U>Variable:</U> rl_hook_func_t * <B>rl_pre_input_hook</B>
-<DD>If non-zero, this is the address of a function to call after
-the first prompt has been printed and just before <CODE>readline</CODE>
-starts reading input characters.
-</DL>
-</P><P>
-
-<A NAME="IDX215"></A>
-<DL>
-<DT><U>Variable:</U> rl_hook_func_t * <B>rl_event_hook</B>
-<DD>If non-zero, this is the address of a function to call periodically
-when Readline is waiting for terminal input.
-By default, this will be called at most ten times a second if there
-is no keyboard input.
-</DL>
-</P><P>
-
-<A NAME="IDX216"></A>
-<DL>
-<DT><U>Variable:</U> rl_getc_func_t * <B>rl_getc_function</B>
-<DD>If non-zero, Readline will call indirectly through this pointer
-to get a character from the input stream.  By default, it is set to
-<CODE>rl_getc</CODE>, the default Readline character input function
-(see section <A HREF="readline.html#SEC37">2.4.8 Character Input</A>).
-</DL>
-</P><P>
-
-<A NAME="IDX217"></A>
-<DL>
-<DT><U>Variable:</U> rl_voidfunc_t * <B>rl_redisplay_function</B>
-<DD>If non-zero, Readline will call indirectly through this pointer
-to update the display with the current contents of the editing buffer.
-By default, it is set to <CODE>rl_redisplay</CODE>, the default Readline
-redisplay function (see section <A HREF="readline.html#SEC35">2.4.6 Redisplay</A>).
-</DL>
-</P><P>
-
-<A NAME="IDX218"></A>
-<DL>
-<DT><U>Variable:</U> rl_vintfunc_t * <B>rl_prep_term_function</B>
-<DD>If non-zero, Readline will call indirectly through this pointer
-to initialize the terminal.  The function takes a single argument, an
-<CODE>int</CODE> flag that says whether or not to use eight-bit characters.
-By default, this is set to <CODE>rl_prep_terminal</CODE>
-(see section <A HREF="readline.html#SEC38">2.4.9 Terminal Management</A>).
-</DL>
-</P><P>
-
-<A NAME="IDX219"></A>
-<DL>
-<DT><U>Variable:</U> rl_voidfunc_t * <B>rl_deprep_term_function</B>
-<DD>If non-zero, Readline will call indirectly through this pointer
-to reset the terminal.  This function should undo the effects of
-<CODE>rl_prep_term_function</CODE>.
-By default, this is set to <CODE>rl_deprep_terminal</CODE>
-(see section <A HREF="readline.html#SEC38">2.4.9 Terminal Management</A>).
-</DL>
-</P><P>
-
-<A NAME="IDX220"></A>
-<DL>
-<DT><U>Variable:</U> Keymap <B>rl_executing_keymap</B>
-<DD>This variable is set to the keymap (see section <A HREF="readline.html#SEC31">2.4.2 Selecting a Keymap</A>) in which the
-currently executing readline function was found.
-</DL>
-</P><P>
-
-<A NAME="IDX221"></A>
-<DL>
-<DT><U>Variable:</U> Keymap <B>rl_binding_keymap</B>
-<DD>This variable is set to the keymap (see section <A HREF="readline.html#SEC31">2.4.2 Selecting a Keymap</A>) in which the
-last key binding occurred.
-</DL>
-</P><P>
-
-<A NAME="IDX222"></A>
-<DL>
-<DT><U>Variable:</U> char * <B>rl_executing_macro</B>
-<DD>This variable is set to the text of any currently-executing macro.
-</DL>
-</P><P>
-
-<A NAME="IDX223"></A>
-<DL>
-<DT><U>Variable:</U> int <B>rl_readline_state</B>
-<DD>A variable with bit values that encapsulate the current Readline state.
-A bit is set with the <CODE>RL_SETSTATE</CODE> macro, and unset with the
-<CODE>RL_UNSETSTATE</CODE> macro.  Use the <CODE>RL_ISSTATE</CODE> macro to test
-whether a particular state bit is set.  Current state bits include:
-</P><P>
-
-<DL COMPACT>
-<DT><CODE>RL_STATE_NONE</CODE>
-<DD>Readline has not yet been called, nor has it begun to intialize.
-<DT><CODE>RL_STATE_INITIALIZING</CODE>
-<DD>Readline is initializing its internal data structures.
-<DT><CODE>RL_STATE_INITIALIZED</CODE>
-<DD>Readline has completed its initialization.
-<DT><CODE>RL_STATE_TERMPREPPED</CODE>
-<DD>Readline has modified the terminal modes to do its own input and redisplay.
-<DT><CODE>RL_STATE_READCMD</CODE>
-<DD>Readline is reading a command from the keyboard.
-<DT><CODE>RL_STATE_METANEXT</CODE>
-<DD>Readline is reading more input after reading the meta-prefix character.
-<DT><CODE>RL_STATE_DISPATCHING</CODE>
-<DD>Readline is dispatching to a command.
-<DT><CODE>RL_STATE_MOREINPUT</CODE>
-<DD>Readline is reading more input while executing an editing command.
-<DT><CODE>RL_STATE_ISEARCH</CODE>
-<DD>Readline is performing an incremental history search.
-<DT><CODE>RL_STATE_NSEARCH</CODE>
-<DD>Readline is performing a non-incremental history search.
-<DT><CODE>RL_STATE_SEARCH</CODE>
-<DD>Readline is searching backward or forward through the history for a string.
-<DT><CODE>RL_STATE_NUMERICARG</CODE>
-<DD>Readline is reading a numeric argument.
-<DT><CODE>RL_STATE_MACROINPUT</CODE>
-<DD>Readline is currently getting its input from a previously-defined keyboard
-macro.
-<DT><CODE>RL_STATE_MACRODEF</CODE>
-<DD>Readline is currently reading characters defining a keyboard macro.
-<DT><CODE>RL_STATE_OVERWRITE</CODE>
-<DD>Readline is in overwrite mode.
-<DT><CODE>RL_STATE_COMPLETING</CODE>
-<DD>Readline is performing word completion.
-<DT><CODE>RL_STATE_SIGHANDLER</CODE>
-<DD>Readline is currently executing the readline signal handler.
-<DT><CODE>RL_STATE_UNDOING</CODE>
-<DD>Readline is performing an undo.
-<DT><CODE>RL_STATE_INPUTPENDING</CODE>
-<DD>Readline has input pending due to a call to <CODE>rl_execute_next()</CODE>.
-<DT><CODE>RL_STATE_TTYCSAVED</CODE>
-<DD>Readline has saved the values of the terminal's special characters.
-<DT><CODE>RL_STATE_CALLBACK</CODE>
-<DD>Readline is currently using the alternate (callback) interface
-(see section <A HREF="readline.html#SEC41">2.4.12 Alternate Interface</A>).
-<DT><CODE>RL_STATE_VIMOTION</CODE>
-<DD>Readline is reading the argument to a vi-mode "motion" command.
-<DT><CODE>RL_STATE_MULTIKEY</CODE>
-<DD>Readline is reading a multiple-keystroke command.
-<DT><CODE>RL_STATE_VICMDONCE</CODE>
-<DD>Readline has entered vi command (movement) mode at least one time during
-the current call to <CODE>readline()</CODE>.
-<DT><CODE>RL_STATE_DONE</CODE>
-<DD>Readline has read a key sequence bound to <CODE>accept-line</CODE>
-and is about to return the line to the caller.
-</DL>
-<P>
-
-</DL>
-</P><P>
-
-<A NAME="IDX224"></A>
-<DL>
-<DT><U>Variable:</U> int <B>rl_explicit_arg</B>
-<DD>Set to a non-zero value if an explicit numeric argument was specified by
-the user.  Only valid in a bindable command function.
-</DL>
-</P><P>
-
-<A NAME="IDX225"></A>
-<DL>
-<DT><U>Variable:</U> int <B>rl_numeric_arg</B>
-<DD>Set to the value of any numeric argument explicitly specified by the user
-before executing the current Readline function.  Only valid in a bindable
-command function.
-</DL>
-</P><P>
-
-<A NAME="IDX226"></A>
-<DL>
-<DT><U>Variable:</U> int <B>rl_editing_mode</B>
-<DD>Set to a value denoting Readline's current editing mode.  A value of
-<VAR>1</VAR> means Readline is currently in emacs mode; <VAR>0</VAR>
-means that vi mode is active.
-</DL>
-</P><P>
-
-<A NAME="Readline Convenience Functions"></A>
-<HR SIZE="6">
-<A NAME="SEC29"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC28"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC30"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC43"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC23"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC43"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC51">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H2> 2.4 Readline Convenience Functions </H2>
-<!--docid::SEC29::-->
-<P>
-
-<BLOCKQUOTE><TABLE BORDER=0 CELLSPACING=0> 
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="readline.html#SEC30">2.4.1 Naming a Function</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">How to give a function you write a name.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="readline.html#SEC31">2.4.2 Selecting a Keymap</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Making keymaps.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="readline.html#SEC32">2.4.3 Binding Keys</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Changing Keymaps.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="readline.html#SEC33">2.4.4 Associating Function Names and Bindings</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Translate function names to
-                                               key sequences.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="readline.html#SEC34">2.4.5 Allowing Undoing</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">How to make your functions undoable.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="readline.html#SEC35">2.4.6 Redisplay</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Functions to control line display.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="readline.html#SEC36">2.4.7 Modifying Text</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Functions to modify <CODE>rl_line_buffer</CODE>.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="readline.html#SEC37">2.4.8 Character Input</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Functions to read keyboard input.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="readline.html#SEC38">2.4.9 Terminal Management</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Functions to manage terminal settings.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="readline.html#SEC39">2.4.10 Utility Functions</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Generally useful functions and hooks.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="readline.html#SEC40">2.4.11 Miscellaneous Functions</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Functions that don't fall into any category.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="readline.html#SEC41">2.4.12 Alternate Interface</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Using Readline in a `callback' fashion.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="readline.html#SEC42">2.4.13 A Readline Example</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">An example Readline function.</TD></TR>
-</TABLE></BLOCKQUOTE>
-<P>
-
-<A NAME="Function Naming"></A>
-<HR SIZE="6">
-<A NAME="SEC30"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC29"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC31"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC43"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC29"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC43"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC51">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H3> 2.4.1 Naming a Function </H3>
-<!--docid::SEC30::-->
-<P>
-
-The user can dynamically change the bindings of keys while using
-Readline.  This is done by representing the function with a descriptive
-name.  The user is able to type the descriptive name when referring to
-the function.  Thus, in an init file, one might find
-</P><P>
-
-<TABLE><tr><td>&nbsp;</td><td class=example><pre>Meta-Rubout:  backward-kill-word
-</pre></td></tr></table></P><P>
-
-This binds the keystroke <KBD>Meta-Rubout</KBD> to the function
-<EM>descriptively</EM> named <CODE>backward-kill-word</CODE>.  You, as the
-programmer, should bind the functions you write to descriptive names as
-well.  Readline provides a function for doing that:
-</P><P>
-
-<A NAME="IDX227"></A>
-<DL>
-<DT><U>Function:</U> int <B>rl_add_defun</B> <I>(const char *name, rl_command_func_t *function, int key)</I>
-<DD>Add <VAR>name</VAR> to the list of named functions.  Make <VAR>function</VAR> be
-the function that gets called.  If <VAR>key</VAR> is not -1, then bind it to
-<VAR>function</VAR> using <CODE>rl_bind_key()</CODE>.
-</DL>
-</P><P>
-
-Using this function alone is sufficient for most applications.
-It is the recommended way to add a few functions to the default
-functions that Readline has built in.
-If you need to do something other than adding a function to Readline,
-you may need to use the underlying functions described below.
-</P><P>
-
-<A NAME="Keymaps"></A>
-<HR SIZE="6">
-<A NAME="SEC31"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC30"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC32"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC32"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC29"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC43"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC51">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H3> 2.4.2 Selecting a Keymap </H3>
-<!--docid::SEC31::-->
-<P>
-
-Key bindings take place on a <EM>keymap</EM>.  The keymap is the
-association between the keys that the user types and the functions that
-get run.  You can make your own keymaps, copy existing keymaps, and tell
-Readline which keymap to use.
-</P><P>
-
-<A NAME="IDX228"></A>
-<DL>
-<DT><U>Function:</U> Keymap <B>rl_make_bare_keymap</B> <I>(void)</I>
-<DD>Returns a new, empty keymap.  The space for the keymap is allocated with
-<CODE>malloc()</CODE>; the caller should free it by calling
-<CODE>rl_free_keymap()</CODE> when done.
-</DL>
-</P><P>
-
-<A NAME="IDX229"></A>
-<DL>
-<DT><U>Function:</U> Keymap <B>rl_copy_keymap</B> <I>(Keymap map)</I>
-<DD>Return a new keymap which is a copy of <VAR>map</VAR>.
-</DL>
-</P><P>
-
-<A NAME="IDX230"></A>
-<DL>
-<DT><U>Function:</U> Keymap <B>rl_make_keymap</B> <I>(void)</I>
-<DD>Return a new keymap with the printing characters bound to rl_insert,
-the lowercase Meta characters bound to run their equivalents, and
-the Meta digits bound to produce numeric arguments.
-</DL>
-</P><P>
-
-<A NAME="IDX231"></A>
-<DL>
-<DT><U>Function:</U> void <B>rl_discard_keymap</B> <I>(Keymap keymap)</I>
-<DD>Free the storage associated with the data in <VAR>keymap</VAR>.
-The caller should free <VAR>keymap</VAR>.
-</DL>
-</P><P>
-
-<A NAME="IDX232"></A>
-<DL>
-<DT><U>Function:</U> void <B>rl_free_keymap</B> <I>(Keymap keymap)</I>
-<DD>Free all storage associated with <VAR>keymap</VAR>.  This calls
-<CODE>rl_discard_keymap</CODE> to free subordindate keymaps and macros.
-</DL>
-</P><P>
-
-Readline has several internal keymaps.  These functions allow you to
-change which keymap is active.
-</P><P>
-
-<A NAME="IDX233"></A>
-<DL>
-<DT><U>Function:</U> Keymap <B>rl_get_keymap</B> <I>(void)</I>
-<DD>Returns the currently active keymap.
-</DL>
-</P><P>
-
-<A NAME="IDX234"></A>
-<DL>
-<DT><U>Function:</U> void <B>rl_set_keymap</B> <I>(Keymap keymap)</I>
-<DD>Makes <VAR>keymap</VAR> the currently active keymap.
-</DL>
-</P><P>
-
-<A NAME="IDX235"></A>
-<DL>
-<DT><U>Function:</U> Keymap <B>rl_get_keymap_by_name</B> <I>(const char *name)</I>
-<DD>Return the keymap matching <VAR>name</VAR>.  <VAR>name</VAR> is one which would
-be supplied in a <CODE>set keymap</CODE> inputrc line (see section <A HREF="readline.html#SEC9">1.3 Readline Init File</A>).
-</DL>
-</P><P>
-
-<A NAME="IDX236"></A>
-<DL>
-<DT><U>Function:</U> char * <B>rl_get_keymap_name</B> <I>(Keymap keymap)</I>
-<DD>Return the name matching <VAR>keymap</VAR>.  <VAR>name</VAR> is one which would
-be supplied in a <CODE>set keymap</CODE> inputrc line (see section <A HREF="readline.html#SEC9">1.3 Readline Init File</A>).
-</DL>
-</P><P>
-
-<A NAME="Binding Keys"></A>
-<HR SIZE="6">
-<A NAME="SEC32"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC31"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC33"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC33"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC29"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC43"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC51">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H3> 2.4.3 Binding Keys </H3>
-<!--docid::SEC32::-->
-<P>
-
-Key sequences are associate with functions through the keymap.
-Readline has several internal keymaps: <CODE>emacs_standard_keymap</CODE>,
-<CODE>emacs_meta_keymap</CODE>, <CODE>emacs_ctlx_keymap</CODE>,
-<CODE>vi_movement_keymap</CODE>, and <CODE>vi_insertion_keymap</CODE>.
-<CODE>emacs_standard_keymap</CODE> is the default, and the examples in
-this manual assume that.
-</P><P>
-
-Since <CODE>readline()</CODE> installs a set of default key bindings the first
-time it is called, there is always the danger that a custom binding
-installed before the first call to <CODE>readline()</CODE> will be overridden.
-An alternate mechanism is to install custom key bindings in an
-initialization function assigned to the <CODE>rl_startup_hook</CODE> variable
-(see section <A HREF="readline.html#SEC28">2.3 Readline Variables</A>).
-</P><P>
-
-These functions manage key bindings.
-</P><P>
-
-<A NAME="IDX237"></A>
-<DL>
-<DT><U>Function:</U> int <B>rl_bind_key</B> <I>(int key, rl_command_func_t *function)</I>
-<DD>Binds <VAR>key</VAR> to <VAR>function</VAR> in the currently active keymap.
-Returns non-zero in the case of an invalid <VAR>key</VAR>.
-</DL>
-</P><P>
-
-<A NAME="IDX238"></A>
-<DL>
-<DT><U>Function:</U> int <B>rl_bind_key_in_map</B> <I>(int key, rl_command_func_t *function, Keymap map)</I>
-<DD>Bind <VAR>key</VAR> to <VAR>function</VAR> in <VAR>map</VAR>.
-Returns non-zero in the case of an invalid <VAR>key</VAR>.
-</DL>
-</P><P>
-
-<A NAME="IDX239"></A>
-<DL>
-<DT><U>Function:</U> int <B>rl_bind_key_if_unbound</B> <I>(int key, rl_command_func_t *function)</I>
-<DD>Binds <VAR>key</VAR> to <VAR>function</VAR> if it is not already bound in the
-currently active keymap.
-Returns non-zero in the case of an invalid <VAR>key</VAR> or if <VAR>key</VAR> is
-already bound.
-</DL>
-</P><P>
-
-<A NAME="IDX240"></A>
-<DL>
-<DT><U>Function:</U> int <B>rl_bind_key_if_unbound_in_map</B> <I>(int key, rl_command_func_t *function, Keymap map)</I>
-<DD>Binds <VAR>key</VAR> to <VAR>function</VAR> if it is not already bound in <VAR>map</VAR>.
-Returns non-zero in the case of an invalid <VAR>key</VAR> or if <VAR>key</VAR> is
-already bound.
-</DL>
-</P><P>
-
-<A NAME="IDX241"></A>
-<DL>
-<DT><U>Function:</U> int <B>rl_unbind_key</B> <I>(int key)</I>
-<DD>Bind <VAR>key</VAR> to the null function in the currently active keymap.
-Returns non-zero in case of error.
-</DL>
-</P><P>
-
-<A NAME="IDX242"></A>
-<DL>
-<DT><U>Function:</U> int <B>rl_unbind_key_in_map</B> <I>(int key, Keymap map)</I>
-<DD>Bind <VAR>key</VAR> to the null function in <VAR>map</VAR>.
-Returns non-zero in case of error.
-</DL>
-</P><P>
-
-<A NAME="IDX243"></A>
-<DL>
-<DT><U>Function:</U> int <B>rl_unbind_function_in_map</B> <I>(rl_command_func_t *function, Keymap map)</I>
-<DD>Unbind all keys that execute <VAR>function</VAR> in <VAR>map</VAR>.
-</DL>
-</P><P>
-
-<A NAME="IDX244"></A>
-<DL>
-<DT><U>Function:</U> int <B>rl_unbind_command_in_map</B> <I>(const char *command, Keymap map)</I>
-<DD>Unbind all keys that are bound to <VAR>command</VAR> in <VAR>map</VAR>.
-</DL>
-</P><P>
-
-<A NAME="IDX245"></A>
-<DL>
-<DT><U>Function:</U> int <B>rl_bind_keyseq</B> <I>(const char *keyseq, rl_command_func_t *function)</I>
-<DD>Bind the key sequence represented by the string <VAR>keyseq</VAR> to the function
-<VAR>function</VAR>, beginning in the current keymap.
-This makes new keymaps as necessary.
-The return value is non-zero if <VAR>keyseq</VAR> is invalid.
-</DL>
-</P><P>
-
-<A NAME="IDX246"></A>
-<DL>
-<DT><U>Function:</U> int <B>rl_bind_keyseq_in_map</B> <I>(const char *keyseq, rl_command_func_t *function, Keymap map)</I>
-<DD>Bind the key sequence represented by the string <VAR>keyseq</VAR> to the function
-<VAR>function</VAR>.  This makes new keymaps as necessary.
-Initial bindings are performed in <VAR>map</VAR>.
-The return value is non-zero if <VAR>keyseq</VAR> is invalid.
-</DL>
-</P><P>
-
-<A NAME="IDX247"></A>
-<DL>
-<DT><U>Function:</U> int <B>rl_set_key</B> <I>(const char *keyseq, rl_command_func_t *function, Keymap map)</I>
-<DD>Equivalent to <CODE>rl_bind_keyseq_in_map</CODE>.
-</DL>
-</P><P>
-
-<A NAME="IDX248"></A>
-<DL>
-<DT><U>Function:</U> int <B>rl_bind_keyseq_if_unbound</B> <I>(const char *keyseq, rl_command_func_t *function)</I>
-<DD>Binds <VAR>keyseq</VAR> to <VAR>function</VAR> if it is not already bound in the
-currently active keymap.
-Returns non-zero in the case of an invalid <VAR>keyseq</VAR> or if <VAR>keyseq</VAR> is
-already bound.
-</DL>
-</P><P>
-
-<A NAME="IDX249"></A>
-<DL>
-<DT><U>Function:</U> int <B>rl_bind_keyseq_if_unbound_in_map</B> <I>(const char *keyseq, rl_command_func_t *function, Keymap map)</I>
-<DD>Binds <VAR>keyseq</VAR> to <VAR>function</VAR> if it is not already bound in <VAR>map</VAR>.
-Returns non-zero in the case of an invalid <VAR>keyseq</VAR> or if <VAR>keyseq</VAR> is
-already bound.
-</DL>
-</P><P>
-
-<A NAME="IDX250"></A>
-<DL>
-<DT><U>Function:</U> int <B>rl_generic_bind</B> <I>(int type, const char *keyseq, char *data, Keymap map)</I>
-<DD>Bind the key sequence represented by the string <VAR>keyseq</VAR> to the arbitrary
-pointer <VAR>data</VAR>.  <VAR>type</VAR> says what kind of data is pointed to by
-<VAR>data</VAR>; this can be a function (<CODE>ISFUNC</CODE>), a macro
-(<CODE>ISMACR</CODE>), or a keymap (<CODE>ISKMAP</CODE>).  This makes new keymaps as
-necessary.  The initial keymap in which to do bindings is <VAR>map</VAR>.
-</DL>
-</P><P>
-
-<A NAME="IDX251"></A>
-<DL>
-<DT><U>Function:</U> int <B>rl_parse_and_bind</B> <I>(char *line)</I>
-<DD>Parse <VAR>line</VAR> as if it had been read from the <CODE>inputrc</CODE> file and
-perform any key bindings and variable assignments found
-(see section <A HREF="readline.html#SEC9">1.3 Readline Init File</A>).
-</DL>
-</P><P>
-
-<A NAME="IDX252"></A>
-<DL>
-<DT><U>Function:</U> int <B>rl_read_init_file</B> <I>(const char *filename)</I>
-<DD>Read keybindings and variable assignments from <VAR>filename</VAR>
-(see section <A HREF="readline.html#SEC9">1.3 Readline Init File</A>).
-</DL>
-</P><P>
-
-<A NAME="Associating Function Names and Bindings"></A>
-<HR SIZE="6">
-<A NAME="SEC33"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC32"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC34"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC34"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC29"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC43"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC51">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H3> 2.4.4 Associating Function Names and Bindings </H3>
-<!--docid::SEC33::-->
-<P>
-
-These functions allow you to find out what keys invoke named functions
-and the functions invoked by a particular key sequence.  You may also
-associate a new function name with an arbitrary function.
-</P><P>
-
-<A NAME="IDX253"></A>
-<DL>
-<DT><U>Function:</U> rl_command_func_t * <B>rl_named_function</B> <I>(const char *name)</I>
-<DD>Return the function with name <VAR>name</VAR>.
-</DL>
-</P><P>
-
-<A NAME="IDX254"></A>
-<DL>
-<DT><U>Function:</U> rl_command_func_t * <B>rl_function_of_keyseq</B> <I>(const char *keyseq, Keymap map, int *type)</I>
-<DD>Return the function invoked by <VAR>keyseq</VAR> in keymap <VAR>map</VAR>.
-If <VAR>map</VAR> is <CODE>NULL</CODE>, the current keymap is used.  If <VAR>type</VAR> is
-not <CODE>NULL</CODE>, the type of the object is returned in the <CODE>int</CODE> variable
-it points to (one of <CODE>ISFUNC</CODE>, <CODE>ISKMAP</CODE>, or <CODE>ISMACR</CODE>).
-</DL>
-</P><P>
-
-<A NAME="IDX255"></A>
-<DL>
-<DT><U>Function:</U> char ** <B>rl_invoking_keyseqs</B> <I>(rl_command_func_t *function)</I>
-<DD>Return an array of strings representing the key sequences used to
-invoke <VAR>function</VAR> in the current keymap.
-</DL>
-</P><P>
-
-<A NAME="IDX256"></A>
-<DL>
-<DT><U>Function:</U> char ** <B>rl_invoking_keyseqs_in_map</B> <I>(rl_command_func_t *function, Keymap map)</I>
-<DD>Return an array of strings representing the key sequences used to
-invoke <VAR>function</VAR> in the keymap <VAR>map</VAR>.
-</DL>
-</P><P>
-
-<A NAME="IDX257"></A>
-<DL>
-<DT><U>Function:</U> void <B>rl_function_dumper</B> <I>(int readable)</I>
-<DD>Print the readline function names and the key sequences currently
-bound to them to <CODE>rl_outstream</CODE>.  If <VAR>readable</VAR> is non-zero,
-the list is formatted in such a way that it can be made part of an
-<CODE>inputrc</CODE> file and re-read.
-</DL>
-</P><P>
-
-<A NAME="IDX258"></A>
-<DL>
-<DT><U>Function:</U> void <B>rl_list_funmap_names</B> <I>(void)</I>
-<DD>Print the names of all bindable Readline functions to <CODE>rl_outstream</CODE>.
-</DL>
-</P><P>
-
-<A NAME="IDX259"></A>
-<DL>
-<DT><U>Function:</U> const char ** <B>rl_funmap_names</B> <I>(void)</I>
-<DD>Return a NULL terminated array of known function names.  The array is
-sorted.  The array itself is allocated, but not the strings inside.  You
-should free the array, but not the pointers, using <CODE>free</CODE> or
-<CODE>rl_free</CODE> when you are done.
-</DL>
-</P><P>
-
-<A NAME="IDX260"></A>
-<DL>
-<DT><U>Function:</U> int <B>rl_add_funmap_entry</B> <I>(const char *name, rl_command_func_t *function)</I>
-<DD>Add <VAR>name</VAR> to the list of bindable Readline command names, and make
-<VAR>function</VAR> the function to be called when <VAR>name</VAR> is invoked.
-</DL>
-</P><P>
-
-<A NAME="Allowing Undoing"></A>
-<HR SIZE="6">
-<A NAME="SEC34"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC33"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC35"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC35"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC29"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC43"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC51">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H3> 2.4.5 Allowing Undoing </H3>
-<!--docid::SEC34::-->
-<P>
-
-Supporting the undo command is a painless thing, and makes your
-functions much more useful.  It is certainly easy to try
-something if you know you can undo it.
-</P><P>
-
-If your function simply inserts text once, or deletes text once, and
-uses <CODE>rl_insert_text()</CODE> or <CODE>rl_delete_text()</CODE> to do it, then
-undoing is already done for you automatically.
-</P><P>
-
-If you do multiple insertions or multiple deletions, or any combination
-of these operations, you should group them together into one operation.
-This is done with <CODE>rl_begin_undo_group()</CODE> and
-<CODE>rl_end_undo_group()</CODE>.
-</P><P>
-
-The types of events that can be undone are:
-</P><P>
-
-<TABLE><tr><td>&nbsp;</td><td class=smallexample><FONT SIZE=-1><pre>enum undo_code { UNDO_DELETE, UNDO_INSERT, UNDO_BEGIN, UNDO_END }; 
-</FONT></pre></td></tr></table></P><P>
-
-Notice that <CODE>UNDO_DELETE</CODE> means to insert some text, and
-<CODE>UNDO_INSERT</CODE> means to delete some text.  That is, the undo code
-tells what to undo, not how to undo it.  <CODE>UNDO_BEGIN</CODE> and
-<CODE>UNDO_END</CODE> are tags added by <CODE>rl_begin_undo_group()</CODE> and
-<CODE>rl_end_undo_group()</CODE>.
-</P><P>
-
-<A NAME="IDX261"></A>
-<DL>
-<DT><U>Function:</U> int <B>rl_begin_undo_group</B> <I>(void)</I>
-<DD>Begins saving undo information in a group construct.  The undo
-information usually comes from calls to <CODE>rl_insert_text()</CODE> and
-<CODE>rl_delete_text()</CODE>, but could be the result of calls to
-<CODE>rl_add_undo()</CODE>.
-</DL>
-</P><P>
-
-<A NAME="IDX262"></A>
-<DL>
-<DT><U>Function:</U> int <B>rl_end_undo_group</B> <I>(void)</I>
-<DD>Closes the current undo group started with <CODE>rl_begin_undo_group
-()</CODE>.  There should be one call to <CODE>rl_end_undo_group()</CODE>
-for each call to <CODE>rl_begin_undo_group()</CODE>.
-</DL>
-</P><P>
-
-<A NAME="IDX263"></A>
-<DL>
-<DT><U>Function:</U> void <B>rl_add_undo</B> <I>(enum undo_code what, int start, int end, char *text)</I>
-<DD>Remember how to undo an event (according to <VAR>what</VAR>).  The affected
-text runs from <VAR>start</VAR> to <VAR>end</VAR>, and encompasses <VAR>text</VAR>.
-</DL>
-</P><P>
-
-<A NAME="IDX264"></A>
-<DL>
-<DT><U>Function:</U> void <B>rl_free_undo_list</B> <I>(void)</I>
-<DD>Free the existing undo list.
-</DL>
-</P><P>
-
-<A NAME="IDX265"></A>
-<DL>
-<DT><U>Function:</U> int <B>rl_do_undo</B> <I>(void)</I>
-<DD>Undo the first thing on the undo list.  Returns <CODE>0</CODE> if there was
-nothing to undo, non-zero if something was undone.
-</DL>
-</P><P>
-
-Finally, if you neither insert nor delete text, but directly modify the
-existing text (e.g., change its case), call <CODE>rl_modifying()</CODE>
-once, just before you modify the text.  You must supply the indices of
-the text range that you are going to modify.
-</P><P>
-
-<A NAME="IDX266"></A>
-<DL>
-<DT><U>Function:</U> int <B>rl_modifying</B> <I>(int start, int end)</I>
-<DD>Tell Readline to save the text between <VAR>start</VAR> and <VAR>end</VAR> as a
-single undo unit.  It is assumed that you will subsequently modify
-that text.
-</DL>
-</P><P>
-
-<A NAME="Redisplay"></A>
-<HR SIZE="6">
-<A NAME="SEC35"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC34"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC36"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC36"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC29"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC43"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC51">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H3> 2.4.6 Redisplay </H3>
-<!--docid::SEC35::-->
-<P>
-
-<A NAME="IDX267"></A>
-<DL>
-<DT><U>Function:</U> void <B>rl_redisplay</B> <I>(void)</I>
-<DD>Change what's displayed on the screen to reflect the current contents
-of <CODE>rl_line_buffer</CODE>.
-</DL>
-</P><P>
-
-<A NAME="IDX268"></A>
-<DL>
-<DT><U>Function:</U> int <B>rl_forced_update_display</B> <I>(void)</I>
-<DD>Force the line to be updated and redisplayed, whether or not
-Readline thinks the screen display is correct.
-</DL>
-</P><P>
-
-<A NAME="IDX269"></A>
-<DL>
-<DT><U>Function:</U> int <B>rl_on_new_line</B> <I>(void)</I>
-<DD>Tell the update functions that we have moved onto a new (empty) line,
-usually after ouputting a newline.
-</DL>
-</P><P>
-
-<A NAME="IDX270"></A>
-<DL>
-<DT><U>Function:</U> int <B>rl_on_new_line_with_prompt</B> <I>(void)</I>
-<DD>Tell the update functions that we have moved onto a new line, with
-<VAR>rl_prompt</VAR> already displayed.
-This could be used by applications that want to output the prompt string
-themselves, but still need Readline to know the prompt string length for
-redisplay.
-It should be used after setting <VAR>rl_already_prompted</VAR>.
-</DL>
-</P><P>
-
-<A NAME="IDX271"></A>
-<DL>
-<DT><U>Function:</U> int <B>rl_reset_line_state</B> <I>(void)</I>
-<DD>Reset the display state to a clean state and redisplay the current line
-starting on a new line.
-</DL>
-</P><P>
-
-<A NAME="IDX272"></A>
-<DL>
-<DT><U>Function:</U> int <B>rl_crlf</B> <I>(void)</I>
-<DD>Move the cursor to the start of the next screen line.
-</DL>
-</P><P>
-
-<A NAME="IDX273"></A>
-<DL>
-<DT><U>Function:</U> int <B>rl_show_char</B> <I>(int c)</I>
-<DD>Display character <VAR>c</VAR> on <CODE>rl_outstream</CODE>.
-If Readline has not been set to display meta characters directly, this
-will convert meta characters to a meta-prefixed key sequence.
-This is intended for use by applications which wish to do their own
-redisplay.
-</DL>
-</P><P>
-
-<A NAME="IDX274"></A>
-<DL>
-<DT><U>Function:</U> int <B>rl_message</B> <I>(const char *, <small>...</small>)</I>
-<DD>The arguments are a format string as would be supplied to <CODE>printf</CODE>,
-possibly containing conversion specifications such as <SAMP>`%d'</SAMP>, and
-any additional arguments necessary to satisfy the conversion specifications.
-The resulting string is displayed in the <EM>echo area</EM>.  The echo area
-is also used to display numeric arguments and search strings.
-You should call <CODE>rl_save_prompt</CODE> to save the prompt information
-before calling this function.
-</DL>
-</P><P>
-
-<A NAME="IDX275"></A>
-<DL>
-<DT><U>Function:</U> int <B>rl_clear_message</B> <I>(void)</I>
-<DD>Clear the message in the echo area.  If the prompt was saved with a call to
-<CODE>rl_save_prompt</CODE> before the last call to <CODE>rl_message</CODE>,
-call <CODE>rl_restore_prompt</CODE> before calling this function.
-</DL>
-</P><P>
-
-<A NAME="IDX276"></A>
-<DL>
-<DT><U>Function:</U> void <B>rl_save_prompt</B> <I>(void)</I>
-<DD>Save the local Readline prompt display state in preparation for
-displaying a new message in the message area with <CODE>rl_message()</CODE>.
-</DL>
-</P><P>
-
-<A NAME="IDX277"></A>
-<DL>
-<DT><U>Function:</U> void <B>rl_restore_prompt</B> <I>(void)</I>
-<DD>Restore the local Readline prompt display state saved by the most
-recent call to <CODE>rl_save_prompt</CODE>.
-if <CODE>rl_save_prompt</CODE> was called to save the prompt before a call
-to <CODE>rl_message</CODE>, this function should be called before the
-corresponding call to <CODE>rl_clear_message</CODE>.
-</DL>
-</P><P>
-
-<A NAME="IDX278"></A>
-<DL>
-<DT><U>Function:</U> int <B>rl_expand_prompt</B> <I>(char *prompt)</I>
-<DD>Expand any special character sequences in <VAR>prompt</VAR> and set up the
-local Readline prompt redisplay variables.
-This function is called by <CODE>readline()</CODE>.  It may also be called to
-expand the primary prompt if the <CODE>rl_on_new_line_with_prompt()</CODE>
-function or <CODE>rl_already_prompted</CODE> variable is used.
-It returns the number of visible characters on the last line of the
-(possibly multi-line) prompt.
-Applications may indicate that the prompt contains characters that take
-up no physical screen space when displayed by bracketing a sequence of
-such characters with the special markers <CODE>RL_PROMPT_START_IGNORE</CODE>
-and <CODE>RL_PROMPT_END_IGNORE</CODE> (declared in <TT>`readline.h'</TT>.  This may
-be used to embed terminal-specific escape sequences in prompts.
-</DL>
-</P><P>
-
-<A NAME="IDX279"></A>
-<DL>
-<DT><U>Function:</U> int <B>rl_set_prompt</B> <I>(const char *prompt)</I>
-<DD>Make Readline use <VAR>prompt</VAR> for subsequent redisplay.  This calls
-<CODE>rl_expand_prompt()</CODE> to expand the prompt and sets <CODE>rl_prompt</CODE>
-to the result.
-</DL>
-</P><P>
-
-<A NAME="Modifying Text"></A>
-<HR SIZE="6">
-<A NAME="SEC36"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC35"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC37"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC37"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC29"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC43"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC51">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H3> 2.4.7 Modifying Text </H3>
-<!--docid::SEC36::-->
-<P>
-
-<A NAME="IDX280"></A>
-<DL>
-<DT><U>Function:</U> int <B>rl_insert_text</B> <I>(const char *text)</I>
-<DD>Insert <VAR>text</VAR> into the line at the current cursor position.
-Returns the number of characters inserted.
-</DL>
-</P><P>
-
-<A NAME="IDX281"></A>
-<DL>
-<DT><U>Function:</U> int <B>rl_delete_text</B> <I>(int start, int end)</I>
-<DD>Delete the text between <VAR>start</VAR> and <VAR>end</VAR> in the current line.
-Returns the number of characters deleted.
-</DL>
-</P><P>
-
-<A NAME="IDX282"></A>
-<DL>
-<DT><U>Function:</U> char * <B>rl_copy_text</B> <I>(int start, int end)</I>
-<DD>Return a copy of the text between <VAR>start</VAR> and <VAR>end</VAR> in
-the current line.
-</DL>
-</P><P>
-
-<A NAME="IDX283"></A>
-<DL>
-<DT><U>Function:</U> int <B>rl_kill_text</B> <I>(int start, int end)</I>
-<DD>Copy the text between <VAR>start</VAR> and <VAR>end</VAR> in the current line
-to the kill ring, appending or prepending to the last kill if the
-last command was a kill command.  The text is deleted.
-If <VAR>start</VAR> is less than <VAR>end</VAR>,
-the text is appended, otherwise prepended.  If the last command was
-not a kill, a new kill ring slot is used.
-</DL>
-</P><P>
-
-<A NAME="IDX284"></A>
-<DL>
-<DT><U>Function:</U> int <B>rl_push_macro_input</B> <I>(char *macro)</I>
-<DD>Cause <VAR>macro</VAR> to be inserted into the line, as if it had been invoked
-by a key bound to a macro.  Not especially useful; use
-<CODE>rl_insert_text()</CODE> instead.
-</DL>
-</P><P>
-
-<A NAME="Character Input"></A>
-<HR SIZE="6">
-<A NAME="SEC37"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC36"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC38"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC38"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC29"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC43"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC51">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H3> 2.4.8 Character Input </H3>
-<!--docid::SEC37::-->
-<P>
-
-<A NAME="IDX285"></A>
-<DL>
-<DT><U>Function:</U> int <B>rl_read_key</B> <I>(void)</I>
-<DD>Return the next character available from Readline's current input stream.
-This handles input inserted into
-the input stream via <VAR>rl_pending_input</VAR> (see section <A HREF="readline.html#SEC28">2.3 Readline Variables</A>)
-and <CODE>rl_stuff_char()</CODE>, macros, and characters read from the keyboard.
-While waiting for input, this function will call any function assigned to
-the <CODE>rl_event_hook</CODE> variable.
-</DL>
-</P><P>
-
-<A NAME="IDX286"></A>
-<DL>
-<DT><U>Function:</U> int <B>rl_getc</B> <I>(FILE *stream)</I>
-<DD>Return the next character available from <VAR>stream</VAR>, which is assumed to
-be the keyboard.
-</DL>
-</P><P>
-
-<A NAME="IDX287"></A>
-<DL>
-<DT><U>Function:</U> int <B>rl_stuff_char</B> <I>(int c)</I>
-<DD>Insert <VAR>c</VAR> into the Readline input stream.  It will be "read"
-before Readline attempts to read characters from the terminal with
-<CODE>rl_read_key()</CODE>.  Up to 512 characters may be pushed back.
-<CODE>rl_stuff_char</CODE> returns 1 if the character was successfully inserted;
-0 otherwise.
-</DL>
-</P><P>
-
-<A NAME="IDX288"></A>
-<DL>
-<DT><U>Function:</U> int <B>rl_execute_next</B> <I>(int c)</I>
-<DD>Make <VAR>c</VAR> be the next command to be executed when <CODE>rl_read_key()</CODE>
-is called.  This sets <VAR>rl_pending_input</VAR>.
-</DL>
-</P><P>
-
-<A NAME="IDX289"></A>
-<DL>
-<DT><U>Function:</U> int <B>rl_clear_pending_input</B> <I>(void)</I>
-<DD>Unset <VAR>rl_pending_input</VAR>, effectively negating the effect of any
-previous call to <CODE>rl_execute_next()</CODE>.  This works only if the
-pending input has not already been read with <CODE>rl_read_key()</CODE>.
-</DL>
-</P><P>
-
-<A NAME="IDX290"></A>
-<DL>
-<DT><U>Function:</U> int <B>rl_set_keyboard_input_timeout</B> <I>(int u)</I>
-<DD>While waiting for keyboard input in <CODE>rl_read_key()</CODE>, Readline will
-wait for <VAR>u</VAR> microseconds for input before calling any function
-assigned to <CODE>rl_event_hook</CODE>.  <VAR>u</VAR> must be greater than or equal
-to zero (a zero-length timeout is equivalent to a poll).
-The default waiting period is one-tenth of a second.
-Returns the old timeout value.
-</DL>
-</P><P>
-
-<A NAME="Terminal Management"></A>
-<HR SIZE="6">
-<A NAME="SEC38"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC37"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC39"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC43"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC29"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC43"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC51">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H3> 2.4.9 Terminal Management </H3>
-<!--docid::SEC38::-->
-<P>
-
-<A NAME="IDX291"></A>
-<DL>
-<DT><U>Function:</U> void <B>rl_prep_terminal</B> <I>(int meta_flag)</I>
-<DD>Modify the terminal settings for Readline's use, so <CODE>readline()</CODE>
-can read a single character at a time from the keyboard.
-The <VAR>meta_flag</VAR> argument should be non-zero if Readline should
-read eight-bit input.
-</DL>
-</P><P>
-
-<A NAME="IDX292"></A>
-<DL>
-<DT><U>Function:</U> void <B>rl_deprep_terminal</B> <I>(void)</I>
-<DD>Undo the effects of <CODE>rl_prep_terminal()</CODE>, leaving the terminal in
-the state in which it was before the most recent call to
-<CODE>rl_prep_terminal()</CODE>.
-</DL>
-</P><P>
-
-<A NAME="IDX293"></A>
-<DL>
-<DT><U>Function:</U> void <B>rl_tty_set_default_bindings</B> <I>(Keymap kmap)</I>
-<DD>Read the operating system's terminal editing characters (as would be
-displayed by <CODE>stty</CODE>) to their Readline equivalents.
-The bindings are performed in <VAR>kmap</VAR>.
-</DL>
-</P><P>
-
-<A NAME="IDX294"></A>
-<DL>
-<DT><U>Function:</U> void <B>rl_tty_unset_default_bindings</B> <I>(Keymap kmap)</I>
-<DD>Reset the bindings manipulated by <CODE>rl_tty_set_default_bindings</CODE> so
-that the terminal editing characters are bound to <CODE>rl_insert</CODE>.
-The bindings are performed in <VAR>kmap</VAR>.
-</DL>
-</P><P>
-
-<A NAME="IDX295"></A>
-<DL>
-<DT><U>Function:</U> int <B>rl_reset_terminal</B> <I>(const char *terminal_name)</I>
-<DD>Reinitialize Readline's idea of the terminal settings using
-<VAR>terminal_name</VAR> as the terminal type (e.g., <CODE>vt100</CODE>).
-If <VAR>terminal_name</VAR> is <CODE>NULL</CODE>, the value of the <CODE>TERM</CODE>
-environment variable is used.
-</DL>
-</P><P>
-
-<A NAME="Utility Functions"></A>
-<HR SIZE="6">
-<A NAME="SEC39"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC38"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC40"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC31"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC29"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC43"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC51">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H3> 2.4.10 Utility Functions </H3>
-<!--docid::SEC39::-->
-<P>
-
-<A NAME="IDX296"></A>
-<DL>
-<DT><U>Function:</U> int <B>rl_save_state</B> <I>(struct readline_state *sp)</I>
-<DD>Save a snapshot of Readline's internal state to <VAR>sp</VAR>.
-The contents of the <VAR>readline_state</VAR> structure are documented
-in <TT>`readline.h'</TT>.
-The caller is responsible for allocating the structure.
-</DL>
-</P><P>
-
-<A NAME="IDX297"></A>
-<DL>
-<DT><U>Function:</U> int <B>rl_restore_state</B> <I>(struct readline_state *sp)</I>
-<DD>Restore Readline's internal state to that stored in <VAR>sp</VAR>, which must
-have been saved by a call to <CODE>rl_save_state</CODE>.
-The contents of the <VAR>readline_state</VAR> structure are documented
-in <TT>`readline.h'</TT>.
-The caller is responsible for freeing the structure.
-</DL>
-</P><P>
-
-<A NAME="IDX298"></A>
-<DL>
-<DT><U>Function:</U> void <B>rl_free</B> <I>(void *mem)</I>
-<DD>Deallocate the memory pointed to by <VAR>mem</VAR>.  <VAR>mem</VAR> must have been
-allocated by <CODE>malloc</CODE>.
-</DL>
-</P><P>
-
-<A NAME="IDX299"></A>
-<DL>
-<DT><U>Function:</U> void <B>rl_replace_line</B> <I>(const char *text, int clear_undo)</I>
-<DD>Replace the contents of <CODE>rl_line_buffer</CODE> with <VAR>text</VAR>.
-The point and mark are preserved, if possible.
-If <VAR>clear_undo</VAR> is non-zero, the undo list associated with the
-current line is cleared.
-</DL>
-</P><P>
-
-<A NAME="IDX300"></A>
-<DL>
-<DT><U>Function:</U> void <B>rl_extend_line_buffer</B> <I>(int len)</I>
-<DD>Ensure that <CODE>rl_line_buffer</CODE> has enough space to hold <VAR>len</VAR>
-characters, possibly reallocating it if necessary.
-</DL>
-</P><P>
-
-<A NAME="IDX301"></A>
-<DL>
-<DT><U>Function:</U> int <B>rl_initialize</B> <I>(void)</I>
-<DD>Initialize or re-initialize Readline's internal state.
-It's not strictly necessary to call this; <CODE>readline()</CODE> calls it before
-reading any input.
-</DL>
-</P><P>
-
-<A NAME="IDX302"></A>
-<DL>
-<DT><U>Function:</U> int <B>rl_ding</B> <I>(void)</I>
-<DD>Ring the terminal bell, obeying the setting of <CODE>bell-style</CODE>.
-</DL>
-</P><P>
-
-<A NAME="IDX303"></A>
-<DL>
-<DT><U>Function:</U> int <B>rl_alphabetic</B> <I>(int c)</I>
-<DD>Return 1 if <VAR>c</VAR> is an alphabetic character.
-</DL>
-</P><P>
-
-<A NAME="IDX304"></A>
-<DL>
-<DT><U>Function:</U> void <B>rl_display_match_list</B> <I>(char **matches, int len, int max)</I>
-<DD>A convenience function for displaying a list of strings in
-columnar format on Readline's output stream.  <CODE>matches</CODE> is the list
-of strings, in argv format, such as a list of completion matches.
-<CODE>len</CODE> is the number of strings in <CODE>matches</CODE>, and <CODE>max</CODE>
-is the length of the longest string in <CODE>matches</CODE>.  This function uses
-the setting of <CODE>print-completions-horizontally</CODE> to select how the
-matches are displayed (see section <A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A>).
-When displaying completions, this function sets the number of columns used
-for display to the value of <CODE>completion-display-width</CODE>, the value of
-the environment variable <CODE>COLUMNS</CODE>, or the screen width, in that order.
-</DL>
-</P><P>
-
-The following are implemented as macros, defined in <CODE>chardefs.h</CODE>.
-Applications should refrain from using them.
-</P><P>
-
-<A NAME="IDX305"></A>
-<DL>
-<DT><U>Function:</U> int <B>_rl_uppercase_p</B> <I>(int c)</I>
-<DD>Return 1 if <VAR>c</VAR> is an uppercase alphabetic character.
-</DL>
-</P><P>
-
-<A NAME="IDX306"></A>
-<DL>
-<DT><U>Function:</U> int <B>_rl_lowercase_p</B> <I>(int c)</I>
-<DD>Return 1 if <VAR>c</VAR> is a lowercase alphabetic character.
-</DL>
-</P><P>
-
-<A NAME="IDX307"></A>
-<DL>
-<DT><U>Function:</U> int <B>_rl_digit_p</B> <I>(int c)</I>
-<DD>Return 1 if <VAR>c</VAR> is a numeric character.
-</DL>
-</P><P>
-
-<A NAME="IDX308"></A>
-<DL>
-<DT><U>Function:</U> int <B>_rl_to_upper</B> <I>(int c)</I>
-<DD>If <VAR>c</VAR> is a lowercase alphabetic character, return the corresponding
-uppercase character.
-</DL>
-</P><P>
-
-<A NAME="IDX309"></A>
-<DL>
-<DT><U>Function:</U> int <B>_rl_to_lower</B> <I>(int c)</I>
-<DD>If <VAR>c</VAR> is an uppercase alphabetic character, return the corresponding
-lowercase character.
-</DL>
-</P><P>
-
-<A NAME="IDX310"></A>
-<DL>
-<DT><U>Function:</U> int <B>_rl_digit_value</B> <I>(int c)</I>
-<DD>If <VAR>c</VAR> is a number, return the value it represents.
-</DL>
-</P><P>
-
-<A NAME="Miscellaneous Functions"></A>
-<HR SIZE="6">
-<A NAME="SEC40"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC39"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC41"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC31"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC29"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC43"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC51">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H3> 2.4.11 Miscellaneous Functions </H3>
-<!--docid::SEC40::-->
-<P>
-
-<A NAME="IDX311"></A>
-<DL>
-<DT><U>Function:</U> int <B>rl_macro_bind</B> <I>(const char *keyseq, const char *macro, Keymap map)</I>
-<DD>Bind the key sequence <VAR>keyseq</VAR> to invoke the macro <VAR>macro</VAR>.
-The binding is performed in <VAR>map</VAR>.  When <VAR>keyseq</VAR> is invoked, the
-<VAR>macro</VAR> will be inserted into the line.  This function is deprecated;
-use <CODE>rl_generic_bind()</CODE> instead.
-</DL>
-</P><P>
-
-<A NAME="IDX312"></A>
-<DL>
-<DT><U>Function:</U> void <B>rl_macro_dumper</B> <I>(int readable)</I>
-<DD>Print the key sequences bound to macros and their values, using
-the current keymap, to <CODE>rl_outstream</CODE>.
-If <VAR>readable</VAR> is non-zero, the list is formatted in such a way
-that it can be made part of an <CODE>inputrc</CODE> file and re-read.
-</DL>
-</P><P>
-
-<A NAME="IDX313"></A>
-<DL>
-<DT><U>Function:</U> int <B>rl_variable_bind</B> <I>(const char *variable, const char *value)</I>
-<DD>Make the Readline variable <VAR>variable</VAR> have <VAR>value</VAR>.
-This behaves as if the readline command
-<SAMP>`set <VAR>variable</VAR> <VAR>value</VAR>'</SAMP> had been executed in an <CODE>inputrc</CODE>
-file (see section <A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A>).
-</DL>
-</P><P>
-
-<A NAME="IDX314"></A>
-<DL>
-<DT><U>Function:</U> char * <B>rl_variable_value</B> <I>(const char *variable)</I>
-<DD>Return a string representing the value of the Readline variable <VAR>variable</VAR>.
-For boolean variables, this string is either <SAMP>`on'</SAMP> or <SAMP>`off'</SAMP>.
-</DL>
-</P><P>
-
-<A NAME="IDX315"></A>
-<DL>
-<DT><U>Function:</U> void <B>rl_variable_dumper</B> <I>(int readable)</I>
-<DD>Print the readline variable names and their current values
-to <CODE>rl_outstream</CODE>.
-If <VAR>readable</VAR> is non-zero, the list is formatted in such a way
-that it can be made part of an <CODE>inputrc</CODE> file and re-read.
-</DL>
-</P><P>
-
-<A NAME="IDX316"></A>
-<DL>
-<DT><U>Function:</U> int <B>rl_set_paren_blink_timeout</B> <I>(int u)</I>
-<DD>Set the time interval (in microseconds) that Readline waits when showing
-a balancing character when <CODE>blink-matching-paren</CODE> has been enabled.
-</DL>
-</P><P>
-
-<A NAME="IDX317"></A>
-<DL>
-<DT><U>Function:</U> char * <B>rl_get_termcap</B> <I>(const char *cap)</I>
-<DD>Retrieve the string value of the termcap capability <VAR>cap</VAR>.
-Readline fetches the termcap entry for the current terminal name and
-uses those capabilities to move around the screen line and perform other
-terminal-specific operations, like erasing a line.  Readline does not
-use all of a terminal's capabilities, and this function will return
-values for only those capabilities Readline uses.
-</DL>
-</P><P>
-
-<A NAME="Alternate Interface"></A>
-<HR SIZE="6">
-<A NAME="SEC41"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC40"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC42"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC31"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC29"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC43"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC51">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H3> 2.4.12 Alternate Interface </H3>
-<!--docid::SEC41::-->
-<P>
-
-An alternate interface is available to plain <CODE>readline()</CODE>.  Some
-applications need to interleave keyboard I/O with file, device, or
-window system I/O, typically by using a main loop to <CODE>select()</CODE>
-on various file descriptors.  To accomodate this need, readline can
-also be invoked as a `callback' function from an event loop.  There
-are functions available to make this easy.
-</P><P>
-
-<A NAME="IDX318"></A>
-<DL>
-<DT><U>Function:</U> void <B>rl_callback_handler_install</B> <I>(const char *prompt, rl_vcpfunc_t *lhandler)</I>
-<DD>Set up the terminal for readline I/O and display the initial
-expanded value of <VAR>prompt</VAR>.  Save the value of <VAR>lhandler</VAR> to
-use as a function to call when a complete line of input has been entered.
-The function takes the text of the line as an argument.
-</DL>
-</P><P>
-
-<A NAME="IDX319"></A>
-<DL>
-<DT><U>Function:</U> void <B>rl_callback_read_char</B> <I>(void)</I>
-<DD>Whenever an application determines that keyboard input is available, it
-should call <CODE>rl_callback_read_char()</CODE>, which will read the next
-character from the current input source.
-If that character completes the line, <CODE>rl_callback_read_char</CODE> will
-invoke the <VAR>lhandler</VAR> function saved by <CODE>rl_callback_handler_install</CODE>
-to process the line.
-Before calling the <VAR>lhandler</VAR> function, the terminal settings are
-reset to the values they had before calling
-<CODE>rl_callback_handler_install</CODE>.
-If the <VAR>lhandler</VAR> function returns,
-the terminal settings are modified for Readline's use again.
-<CODE>EOF</CODE> is  indicated by calling <VAR>lhandler</VAR> with a
-<CODE>NULL</CODE> line.
-</DL>
-</P><P>
-
-<A NAME="IDX320"></A>
-<DL>
-<DT><U>Function:</U> void <B>rl_callback_handler_remove</B> <I>(void)</I>
-<DD>Restore the terminal to its initial state and remove the line handler.
-This may be called from within a callback as well as independently.
-If the <VAR>lhandler</VAR> installed by <CODE>rl_callback_handler_install</CODE>
-does not exit the program, either this function or the function referred
-to by the value of <CODE>rl_deprep_term_function</CODE> should be called before
-the program exits to reset the terminal settings.
-</DL>
-</P><P>
-
-<A NAME="A Readline Example"></A>
-<HR SIZE="6">
-<A NAME="SEC42"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC41"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC43"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC31"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC29"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC43"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC51">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H3> 2.4.13 A Readline Example </H3>
-<!--docid::SEC42::-->
-<P>
-
-Here is a function which changes lowercase characters to their uppercase
-equivalents, and uppercase characters to lowercase.  If
-this function was bound to <SAMP>`M-c'</SAMP>, then typing <SAMP>`M-c'</SAMP> would
-change the case of the character under point.  Typing <SAMP>`M-1 0 M-c'</SAMP>
-would change the case of the following 10 characters, leaving the cursor on
-the last character changed.
-</P><P>
-
-<TABLE><tr><td>&nbsp;</td><td class=example><pre>/* Invert the case of the COUNT following characters. */
-int
-invert_case_line (count, key)
-     int count, key;
-{
-  register int start, end, i;
-
-  start = rl_point;
-
-  if (rl_point &#62;= rl_end)
-    return (0);
-
-  if (count &#60; 0)
-    {
-      direction = -1;
-      count = -count;
-    }
-  else
-    direction = 1;
-      
-  /* Find the end of the range to modify. */
-  end = start + (count * direction);
-
-  /* Force it to be within range. */
-  if (end &#62; rl_end)
-    end = rl_end;
-  else if (end &#60; 0)
-    end = 0;
-
-  if (start == end)
-    return (0);
-
-  if (start &#62; end)
-    {
-      int temp = start;
-      start = end;
-      end = temp;
-    }
-
-  /* Tell readline that we are modifying the line,
-     so it will save the undo information. */
-  rl_modifying (start, end);
-
-  for (i = start; i != end; i++)
-    {
-      if (_rl_uppercase_p (rl_line_buffer[i]))
-        rl_line_buffer[i] = _rl_to_lower (rl_line_buffer[i]);
-      else if (_rl_lowercase_p (rl_line_buffer[i]))
-        rl_line_buffer[i] = _rl_to_upper (rl_line_buffer[i]);
-    }
-  /* Move point to on top of the last character changed. */
-  rl_point = (direction == 1) ? end - 1 : start;
-  return (0);
-}
-</pre></td></tr></table></P><P>
-
-<A NAME="Readline Signal Handling"></A>
-<HR SIZE="6">
-<A NAME="SEC43"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC42"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC44"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC44"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC23"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC49"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC51">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H2> 2.5 Readline Signal Handling </H2>
-<!--docid::SEC43::-->
-<P>
-
-Signals are asynchronous events sent to a process by the Unix kernel,
-sometimes on behalf of another process.  They are intended to indicate
-exceptional events, like a user pressing the interrupt key on his terminal,
-or a network connection being broken.  There is a class of signals that can
-be sent to the process currently reading input from the keyboard.  Since
-Readline changes the terminal attributes when it is called, it needs to
-perform special processing when such a signal is received in order to
-restore the terminal to a sane state, or provide application writers with
-functions to do so manually. 
-</P><P>
-
-Readline contains an internal signal handler that is installed for a
-number of signals (<CODE>SIGINT</CODE>, <CODE>SIGQUIT</CODE>, <CODE>SIGTERM</CODE>,
-<CODE>SIGALRM</CODE>, <CODE>SIGTSTP</CODE>, <CODE>SIGTTIN</CODE>, and <CODE>SIGTTOU</CODE>).
-When one of these signals is received, the signal handler
-will reset the terminal attributes to those that were in effect before
-<CODE>readline()</CODE> was called, reset the signal handling to what it was
-before <CODE>readline()</CODE> was called, and resend the signal to the calling
-application.
-If and when the calling application's signal handler returns, Readline
-will reinitialize the terminal and continue to accept input.
-When a <CODE>SIGINT</CODE> is received, the Readline signal handler performs
-some additional work, which will cause any partially-entered line to be
-aborted (see the description of <CODE>rl_free_line_state()</CODE> below).
-</P><P>
-
-There is an additional Readline signal handler, for <CODE>SIGWINCH</CODE>, which
-the kernel sends to a process whenever the terminal's size changes (for
-example, if a user resizes an <CODE>xterm</CODE>).  The Readline <CODE>SIGWINCH</CODE>
-handler updates Readline's internal screen size information, and then calls
-any <CODE>SIGWINCH</CODE> signal handler the calling application has installed. 
-Readline calls the application's <CODE>SIGWINCH</CODE> signal handler without
-resetting the terminal to its original state.  If the application's signal
-handler does more than update its idea of the terminal size and return (for
-example, a <CODE>longjmp</CODE> back to a main processing loop), it <EM>must</EM>
-call <CODE>rl_cleanup_after_signal()</CODE> (described below), to restore the
-terminal state. 
-</P><P>
-
-Readline provides two variables that allow application writers to
-control whether or not it will catch certain signals and act on them
-when they are received.  It is important that applications change the
-values of these variables only when calling <CODE>readline()</CODE>, not in
-a signal handler, so Readline's internal signal state is not corrupted.
-</P><P>
-
-<A NAME="IDX321"></A>
-<DL>
-<DT><U>Variable:</U> int <B>rl_catch_signals</B>
-<DD>If this variable is non-zero, Readline will install signal handlers for
-<CODE>SIGINT</CODE>, <CODE>SIGQUIT</CODE>, <CODE>SIGTERM</CODE>, <CODE>SIGALRM</CODE>,
-<CODE>SIGTSTP</CODE>, <CODE>SIGTTIN</CODE>, and <CODE>SIGTTOU</CODE>.
-</P><P>
-
-The default value of <CODE>rl_catch_signals</CODE> is 1.
-</DL>
-</P><P>
-
-<A NAME="IDX322"></A>
-<DL>
-<DT><U>Variable:</U> int <B>rl_catch_sigwinch</B>
-<DD>If this variable is non-zero, Readline will install a signal handler for
-<CODE>SIGWINCH</CODE>.
-</P><P>
-
-The default value of <CODE>rl_catch_sigwinch</CODE> is 1.
-</DL>
-</P><P>
-
-If an application does not wish to have Readline catch any signals, or
-to handle signals other than those Readline catches (<CODE>SIGHUP</CODE>,
-for example), 
-Readline provides convenience functions to do the necessary terminal
-and internal state cleanup upon receipt of a signal.
-</P><P>
-
-<A NAME="IDX323"></A>
-<DL>
-<DT><U>Function:</U> void <B>rl_cleanup_after_signal</B> <I>(void)</I>
-<DD>This function will reset the state of the terminal to what it was before
-<CODE>readline()</CODE> was called, and remove the Readline signal handlers for
-all signals, depending on the values of <CODE>rl_catch_signals</CODE> and
-<CODE>rl_catch_sigwinch</CODE>.
-</DL>
-</P><P>
-
-<A NAME="IDX324"></A>
-<DL>
-<DT><U>Function:</U> void <B>rl_free_line_state</B> <I>(void)</I>
-<DD>This will free any partial state associated with the current input line
-(undo information, any partial history entry, any partially-entered
-keyboard macro, and any partially-entered numeric argument).  This
-should be called before <CODE>rl_cleanup_after_signal()</CODE>.  The
-Readline signal handler for <CODE>SIGINT</CODE> calls this to abort the
-current input line.
-</DL>
-</P><P>
-
-<A NAME="IDX325"></A>
-<DL>
-<DT><U>Function:</U> void <B>rl_reset_after_signal</B> <I>(void)</I>
-<DD>This will reinitialize the terminal and reinstall any Readline signal
-handlers, depending on the values of <CODE>rl_catch_signals</CODE> and
-<CODE>rl_catch_sigwinch</CODE>.
-</DL>
-</P><P>
-
-If an application does not wish Readline to catch <CODE>SIGWINCH</CODE>, it may
-call <CODE>rl_resize_terminal()</CODE> or <CODE>rl_set_screen_size()</CODE> to force
-Readline to update its idea of the terminal size when a <CODE>SIGWINCH</CODE>
-is received.
-</P><P>
-
-<A NAME="IDX326"></A>
-<DL>
-<DT><U>Function:</U> void <B>rl_echo_signal_char</B> <I>(int sig)</I>
-<DD>If an application wishes to install its own signal handlers, but still
-have readline display characters that generate signals, calling this
-function with <VAR>sig</VAR> set to <CODE>SIGINT</CODE>, <CODE>SIGQUIT</CODE>, or
-<CODE>SIGTSTP</CODE> will display the character generating that signal.
-</DL>
-</P><P>
-
-<A NAME="IDX327"></A>
-<DL>
-<DT><U>Function:</U> void <B>rl_resize_terminal</B> <I>(void)</I>
-<DD>Update Readline's internal screen size by reading values from the kernel.
-</DL>
-</P><P>
-
-<A NAME="IDX328"></A>
-<DL>
-<DT><U>Function:</U> void <B>rl_set_screen_size</B> <I>(int rows, int cols)</I>
-<DD>Set Readline's idea of the terminal size to <VAR>rows</VAR> rows and
-<VAR>cols</VAR> columns.  If either <VAR>rows</VAR> or <VAR>columns</VAR> is less than
-or equal to 0, Readline's idea of that terminal dimension is unchanged.
-</DL>
-</P><P>
-
-If an application does not want to install a <CODE>SIGWINCH</CODE> handler, but
-is still interested in the screen dimensions, Readline's idea of the screen
-size may be queried.
-</P><P>
-
-<A NAME="IDX329"></A>
-<DL>
-<DT><U>Function:</U> void <B>rl_get_screen_size</B> <I>(int *rows, int *cols)</I>
-<DD>Return Readline's idea of the terminal's size in the
-variables pointed to by the arguments.
-</DL>
-</P><P>
-
-<A NAME="IDX330"></A>
-<DL>
-<DT><U>Function:</U> void <B>rl_reset_screen_size</B> <I>(void)</I>
-<DD>Cause Readline to reobtain the screen size and recalculate its dimensions.
-</DL>
-</P><P>
-
-The following functions install and remove Readline's signal handlers.
-</P><P>
-
-<A NAME="IDX331"></A>
-<DL>
-<DT><U>Function:</U> int <B>rl_set_signals</B> <I>(void)</I>
-<DD>Install Readline's signal handler for <CODE>SIGINT</CODE>, <CODE>SIGQUIT</CODE>,
-<CODE>SIGTERM</CODE>, <CODE>SIGALRM</CODE>, <CODE>SIGTSTP</CODE>, <CODE>SIGTTIN</CODE>,
-<CODE>SIGTTOU</CODE>, and <CODE>SIGWINCH</CODE>, depending on the values of
-<CODE>rl_catch_signals</CODE> and <CODE>rl_catch_sigwinch</CODE>.
-</DL>
-</P><P>
-
-<A NAME="IDX332"></A>
-<DL>
-<DT><U>Function:</U> int <B>rl_clear_signals</B> <I>(void)</I>
-<DD>Remove all of the Readline signal handlers installed by
-<CODE>rl_set_signals()</CODE>.
-</DL>
-</P><P>
-
-<A NAME="Custom Completers"></A>
-<HR SIZE="6">
-<A NAME="SEC44"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC43"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC45"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[ &lt;&lt; ]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC23"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC49"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC51">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H2> 2.6 Custom Completers </H2>
-<!--docid::SEC44::-->
-<P>
-
-Typically, a program that reads commands from the user has a way of
-disambiguating commands and data.  If your program is one of these, then
-it can provide completion for commands, data, or both.
-The following sections describe how your program and Readline
-cooperate to provide this service.
-</P><P>
-
-<BLOCKQUOTE><TABLE BORDER=0 CELLSPACING=0> 
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="readline.html#SEC45">2.6.1 How Completing Works</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">The logic used to do completion.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="readline.html#SEC46">2.6.2 Completion Functions</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Functions provided by Readline.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="readline.html#SEC47">2.6.3 Completion Variables</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Variables which control completion.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="readline.html#SEC48">2.6.4 A Short Completion Example</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">An example of writing completer subroutines.</TD></TR>
-</TABLE></BLOCKQUOTE>
-<P>
-
-<A NAME="How Completing Works"></A>
-<HR SIZE="6">
-<A NAME="SEC45"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC44"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC46"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[ &lt;&lt; ]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC44"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC49"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC51">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H3> 2.6.1 How Completing Works </H3>
-<!--docid::SEC45::-->
-<P>
-
-In order to complete some text, the full list of possible completions
-must be available.  That is, it is not possible to accurately
-expand a partial word without knowing all of the possible words
-which make sense in that context.  The Readline library provides
-the user interface to completion, and two of the most common
-completion functions:  filename and username.  For completing other types
-of text, you must write your own completion function.  This section
-describes exactly what such functions must do, and provides an example.
-</P><P>
-
-There are three major functions used to perform completion:
-</P><P>
-
-<OL>
-<LI>
-The user-interface function <CODE>rl_complete()</CODE>.  This function is
-called with the same arguments as other bindable Readline functions:
-<VAR>count</VAR> and <VAR>invoking_key</VAR>.
-It isolates the word to be completed and calls
-<CODE>rl_completion_matches()</CODE> to generate a list of possible completions.
-It then either lists the possible completions, inserts the possible
-completions, or actually performs the
-completion, depending on which behavior is desired.
-<P>
-
-<LI>
-The internal function <CODE>rl_completion_matches()</CODE> uses an
-application-supplied <EM>generator</EM> function to generate the list of
-possible matches, and then returns the array of these matches.
-The caller should place the address of its generator function in
-<CODE>rl_completion_entry_function</CODE>.
-<P>
-
-<LI>
-The generator function is called repeatedly from
-<CODE>rl_completion_matches()</CODE>, returning a string each time.  The
-arguments to the generator function are <VAR>text</VAR> and <VAR>state</VAR>.
-<VAR>text</VAR> is the partial word to be completed.  <VAR>state</VAR> is zero the
-first time the function is called, allowing the generator to perform
-any necessary initialization, and a positive non-zero integer for
-each subsequent call.  The generator function returns
-<CODE>(char *)NULL</CODE> to inform <CODE>rl_completion_matches()</CODE> that there are
-no more possibilities left.  Usually the generator function computes the
-list of possible completions when <VAR>state</VAR> is zero, and returns them
-one at a time on subsequent calls.  Each string the generator function
-returns as a match must be allocated with <CODE>malloc()</CODE>; Readline
-frees the strings when it has finished with them.
-Such a generator function is referred to as an
-<EM>application-specific completion function</EM>.
-<P>
-
-</OL>
-<P>
-
-<A NAME="IDX333"></A>
-<DL>
-<DT><U>Function:</U> int <B>rl_complete</B> <I>(int ignore, int invoking_key)</I>
-<DD>Complete the word at or before point.  You have supplied the function
-that does the initial simple matching selection algorithm (see
-<CODE>rl_completion_matches()</CODE>).  The default is to do filename completion.
-</DL>
-</P><P>
-
-<A NAME="IDX334"></A>
-<DL>
-<DT><U>Variable:</U> rl_compentry_func_t * <B>rl_completion_entry_function</B>
-<DD>This is a pointer to the generator function for
-<CODE>rl_completion_matches()</CODE>.
-If the value of <CODE>rl_completion_entry_function</CODE> is
-<CODE>NULL</CODE> then the default filename generator
-function, <CODE>rl_filename_completion_function()</CODE>, is used.
-An <EM>application-specific completion function</EM> is a function whose
-address is assigned to <CODE>rl_completion_entry_function</CODE> and whose
-return values are used to  generate possible completions.
-</DL>
-</P><P>
-
-<A NAME="Completion Functions"></A>
-<HR SIZE="6">
-<A NAME="SEC46"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC45"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC47"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC47"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC44"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC49"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC51">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H3> 2.6.2 Completion Functions </H3>
-<!--docid::SEC46::-->
-<P>
-
-Here is the complete list of callable completion functions present in
-Readline.
-</P><P>
-
-<A NAME="IDX335"></A>
-<DL>
-<DT><U>Function:</U> int <B>rl_complete_internal</B> <I>(int what_to_do)</I>
-<DD>Complete the word at or before point.  <VAR>what_to_do</VAR> says what to do
-with the completion.  A value of <SAMP>`?'</SAMP> means list the possible
-completions.  <SAMP>`TAB'</SAMP> means do standard completion.  <SAMP>`*'</SAMP> means
-insert all of the possible completions.  <SAMP>`!'</SAMP> means to display
-all of the possible completions, if there is more than one, as well as
-performing partial completion.  <SAMP>`@'</SAMP> is similar to <SAMP>`!'</SAMP>, but
-possible completions are not listed if the possible completions share
-a common prefix.
-</DL>
-</P><P>
-
-<A NAME="IDX336"></A>
-<DL>
-<DT><U>Function:</U> int <B>rl_complete</B> <I>(int ignore, int invoking_key)</I>
-<DD>Complete the word at or before point.  You have supplied the function
-that does the initial simple matching selection algorithm (see
-<CODE>rl_completion_matches()</CODE> and <CODE>rl_completion_entry_function</CODE>).
-The default is to do filename
-completion.  This calls <CODE>rl_complete_internal()</CODE> with an
-argument depending on <VAR>invoking_key</VAR>.
-</DL>
-</P><P>
-
-<A NAME="IDX337"></A>
-<DL>
-<DT><U>Function:</U> int <B>rl_possible_completions</B> <I>(int count, int invoking_key)</I>
-<DD>List the possible completions.  See description of <CODE>rl_complete
-()</CODE>.  This calls <CODE>rl_complete_internal()</CODE> with an argument of
-<SAMP>`?'</SAMP>.
-</DL>
-</P><P>
-
-<A NAME="IDX338"></A>
-<DL>
-<DT><U>Function:</U> int <B>rl_insert_completions</B> <I>(int count, int invoking_key)</I>
-<DD>Insert the list of possible completions into the line, deleting the
-partially-completed word.  See description of <CODE>rl_complete()</CODE>.
-This calls <CODE>rl_complete_internal()</CODE> with an argument of <SAMP>`*'</SAMP>.
-</DL>
-</P><P>
-
-<A NAME="IDX339"></A>
-<DL>
-<DT><U>Function:</U> int <B>rl_completion_mode</B> <I>(rl_command_func_t *cfunc)</I>
-<DD>Returns the apppriate value to pass to <CODE>rl_complete_internal()</CODE>
-depending on whether <VAR>cfunc</VAR> was called twice in succession and
-the values of the <CODE>show-all-if-ambiguous</CODE> and
-<CODE>show-all-if-unmodified</CODE> variables.
-Application-specific completion functions may use this function to present
-the same interface as <CODE>rl_complete()</CODE>.
-</DL>
-</P><P>
-
-<A NAME="IDX340"></A>
-<DL>
-<DT><U>Function:</U> char ** <B>rl_completion_matches</B> <I>(const char *text, rl_compentry_func_t *entry_func)</I>
-<DD>Returns an array of strings which is a list of completions for
-<VAR>text</VAR>.  If there are no completions, returns <CODE>NULL</CODE>.
-The first entry in the returned array is the substitution for <VAR>text</VAR>.
-The remaining entries are the possible completions.  The array is
-terminated with a <CODE>NULL</CODE> pointer.
-</P><P>
-
-<VAR>entry_func</VAR> is a function of two args, and returns a
-<CODE>char *</CODE>.  The first argument is <VAR>text</VAR>.  The second is a
-state argument; it is zero on the first call, and non-zero on subsequent
-calls.  <VAR>entry_func</VAR> returns a <CODE>NULL</CODE>  pointer to the caller
-when there are no more matches.
-</DL>
-</P><P>
-
-<A NAME="IDX341"></A>
-<DL>
-<DT><U>Function:</U> char * <B>rl_filename_completion_function</B> <I>(const char *text, int state)</I>
-<DD>A generator function for filename completion in the general case.
-<VAR>text</VAR> is a partial filename.
-The Bash source is a useful reference for writing application-specific
-completion functions (the Bash completion functions call this and other
-Readline functions).
-</DL>
-</P><P>
-
-<A NAME="IDX342"></A>
-<DL>
-<DT><U>Function:</U> char * <B>rl_username_completion_function</B> <I>(const char *text, int state)</I>
-<DD>A completion generator for usernames.  <VAR>text</VAR> contains a partial
-username preceded by a random character (usually <SAMP>`~'</SAMP>).  As with all
-completion generators, <VAR>state</VAR> is zero on the first call and non-zero
-for subsequent calls.
-</DL>
-</P><P>
-
-<A NAME="Completion Variables"></A>
-<HR SIZE="6">
-<A NAME="SEC47"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC46"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC48"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC48"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC44"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC49"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC51">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H3> 2.6.3 Completion Variables </H3>
-<!--docid::SEC47::-->
-<P>
-
-<A NAME="IDX343"></A>
-<DL>
-<DT><U>Variable:</U> rl_compentry_func_t * <B>rl_completion_entry_function</B>
-<DD>A pointer to the generator function for <CODE>rl_completion_matches()</CODE>.
-<CODE>NULL</CODE> means to use <CODE>rl_filename_completion_function()</CODE>,
-the default filename completer.
-</DL>
-</P><P>
-
-<A NAME="IDX344"></A>
-<DL>
-<DT><U>Variable:</U> rl_completion_func_t * <B>rl_attempted_completion_function</B>
-<DD>A pointer to an alternative function to create matches.
-The function is called with <VAR>text</VAR>, <VAR>start</VAR>, and <VAR>end</VAR>.
-<VAR>start</VAR> and <VAR>end</VAR> are indices in <CODE>rl_line_buffer</CODE> defining
-the boundaries of <VAR>text</VAR>, which is a character string.
-If this function exists and returns <CODE>NULL</CODE>, or if this variable is
-set to <CODE>NULL</CODE>, then <CODE>rl_complete()</CODE> will call the value of
-<CODE>rl_completion_entry_function</CODE> to generate matches, otherwise the
-array of strings returned will be used.
-If this function sets the <CODE>rl_attempted_completion_over</CODE>
-variable to a non-zero value, Readline will not perform its default
-completion even if this function returns no matches.
-</DL>
-</P><P>
-
-<A NAME="IDX345"></A>
-<DL>
-<DT><U>Variable:</U> rl_quote_func_t * <B>rl_filename_quoting_function</B>
-<DD>A pointer to a function that will quote a filename in an
-application-specific fashion.  This is called if filename completion is being
-attempted and one of the characters in <CODE>rl_filename_quote_characters</CODE>
-appears in a completed filename.  The function is called with
-<VAR>text</VAR>, <VAR>match_type</VAR>, and <VAR>quote_pointer</VAR>.  The <VAR>text</VAR>
-is the filename to be quoted.  The <VAR>match_type</VAR> is either
-<CODE>SINGLE_MATCH</CODE>, if there is only one completion match, or
-<CODE>MULT_MATCH</CODE>.  Some functions use this to decide whether or not to
-insert a closing quote character.  The <VAR>quote_pointer</VAR> is a pointer
-to any opening quote character the user typed.  Some functions choose
-to reset this character.
-</DL>
-</P><P>
-
-<A NAME="IDX346"></A>
-<DL>
-<DT><U>Variable:</U> rl_dequote_func_t * <B>rl_filename_dequoting_function</B>
-<DD>A pointer to a function that will remove application-specific quoting
-characters from a filename before completion is attempted, so those
-characters do not interfere with matching the text against names in
-the filesystem.  It is called with <VAR>text</VAR>, the text of the word
-to be dequoted, and <VAR>quote_char</VAR>, which is the quoting character 
-that delimits the filename (usually <SAMP>`''</SAMP> or <SAMP>`"'</SAMP>).  If
-<VAR>quote_char</VAR> is zero, the filename was not in an embedded string.
-</DL>
-</P><P>
-
-<A NAME="IDX347"></A>
-<DL>
-<DT><U>Variable:</U> rl_linebuf_func_t * <B>rl_char_is_quoted_p</B>
-<DD>A pointer to a function to call that determines whether or not a specific
-character in the line buffer is quoted, according to whatever quoting
-mechanism the program calling Readline uses.  The function is called with
-two arguments: <VAR>text</VAR>, the text of the line, and <VAR>index</VAR>, the
-index of the character in the line.  It is used to decide whether a
-character found in <CODE>rl_completer_word_break_characters</CODE> should be
-used to break words for the completer.
-</DL>
-</P><P>
-
-<A NAME="IDX348"></A>
-<DL>
-<DT><U>Variable:</U> rl_compignore_func_t * <B>rl_ignore_some_completions_function</B>
-<DD>This function, if defined, is called by the completer when real filename
-completion is done, after all the matching names have been generated.
-It is passed a <CODE>NULL</CODE> terminated array of matches.
-The first element (<CODE>matches[0]</CODE>) is the
-maximal substring common to all matches. This function can
-re-arrange the list of matches as required, but each element deleted
-from the array must be freed.
-</DL>
-</P><P>
-
-<A NAME="IDX349"></A>
-<DL>
-<DT><U>Variable:</U> rl_icppfunc_t * <B>rl_directory_completion_hook</B>
-<DD>This function, if defined, is allowed to modify the directory portion
-of filenames Readline completes.
-It could be used to expand symbolic links or shell variables in pathnames.
-It is called with the address of a string (the current directory name) as an
-argument, and may modify that string.
-If the string is replaced with a new string, the old value should be freed.
-Any modified directory name should have a trailing slash.
-The modified value will be used as part of the completion, replacing
-the directory portion of the pathname the user typed.
-At the least, even if no other expansion is performed, this function should
-remove any quote characters from the directory name, because its result will
-be passed directly to <CODE>opendir()</CODE>.
-The directory completion hook returns an integer that should be non-zero if
-the function modifies its directory argument.
-The function should not modify the directory argument if it returns 0.
-</DL>
-</P><P>
-
-<A NAME="IDX350"></A>
-<DL>
-<DT><U>Variable:</U> rl_dequote_func_t * <B>rl_filename_rewrite_hook</B>
-<DD>If non-zero, this is the address of a function called when reading
-directory entries from the filesystem for completion and comparing
-them to the partial word to be completed.  The function should
-perform any necesary application or system-specific conversion on
-the filename, such as converting between character sets or converting
-from a filesystem format to a character input format.
-The function takes two arguments: <VAR>fname</VAR>, the filename to be converted,
-and <VAR>fnlen</VAR>, its length in bytes.
-It must either return its first argument (if no conversion takes place)
-or the converted filename in newly-allocated memory.  The converted
-form is used to compare against the word to be completed, and, if it
-matches, is added to the list of matches.  Readline will free the
-allocated string.
-</DL>
-</P><P>
-
-<A NAME="IDX351"></A>
-<DL>
-<DT><U>Variable:</U> rl_compdisp_func_t * <B>rl_completion_display_matches_hook</B>
-<DD>If non-zero, then this is the address of a function to call when
-completing a word would normally display the list of possible matches.
-This function is called in lieu of Readline displaying the list.
-It takes three arguments:
-(<CODE>char **</CODE><VAR>matches</VAR>, <CODE>int</CODE> <VAR>num_matches</VAR>, <CODE>int</CODE> <VAR>max_length</VAR>)
-where <VAR>matches</VAR> is the array of matching strings,
-<VAR>num_matches</VAR> is the number of strings in that array, and
-<VAR>max_length</VAR> is the length of the longest string in that array.
-Readline provides a convenience function, <CODE>rl_display_match_list</CODE>,
-that takes care of doing the display to Readline's output stream.  That
-function may be called from this hook.
-</DL>
-</P><P>
-
-<A NAME="IDX352"></A>
-<DL>
-<DT><U>Variable:</U> const char * <B>rl_basic_word_break_characters</B>
-<DD>The basic list of characters that signal a break between words for the
-completer routine.  The default value of this variable is the characters
-which break words for completion in Bash:
-<CODE>" \t\n\"\\'`@$>&#60;=;|&#38;{("</CODE>.
-</DL>
-</P><P>
-
-<A NAME="IDX353"></A>
-<DL>
-<DT><U>Variable:</U> const char * <B>rl_basic_quote_characters</B>
-<DD>A list of quote characters which can cause a word break.
-</DL>
-</P><P>
-
-<A NAME="IDX354"></A>
-<DL>
-<DT><U>Variable:</U> const char * <B>rl_completer_word_break_characters</B>
-<DD>The list of characters that signal a break between words for
-<CODE>rl_complete_internal()</CODE>.  The default list is the value of
-<CODE>rl_basic_word_break_characters</CODE>.
-</DL>
-</P><P>
-
-<A NAME="IDX355"></A>
-<DL>
-<DT><U>Variable:</U> rl_cpvfunc_t * <B>rl_completion_word_break_hook</B>
-<DD>If non-zero, this is the address of a function to call when Readline is
-deciding where to separate words for word completion.  It should return
-a character string like <CODE>rl_completer_word_break_characters</CODE> to be
-used to perform the current completion.  The function may choose to set
-<CODE>rl_completer_word_break_characters</CODE> itself.  If the function
-returns <CODE>NULL</CODE>, <CODE>rl_completer_word_break_characters</CODE> is used.
-</DL>
-</P><P>
-
-<A NAME="IDX356"></A>
-<DL>
-<DT><U>Variable:</U> const char * <B>rl_completer_quote_characters</B>
-<DD>A list of characters which can be used to quote a substring of the line.
-Completion occurs on the entire substring, and within the substring
-<CODE>rl_completer_word_break_characters</CODE> are treated as any other character,
-unless they also appear within this list.
-</DL>
-</P><P>
-
-<A NAME="IDX357"></A>
-<DL>
-<DT><U>Variable:</U> const char * <B>rl_filename_quote_characters</B>
-<DD>A list of characters that cause a filename to be quoted by the completer
-when they appear in a completed filename.  The default is the null string.
-</DL>
-</P><P>
-
-<A NAME="IDX358"></A>
-<DL>
-<DT><U>Variable:</U> const char * <B>rl_special_prefixes</B>
-<DD>The list of characters that are word break characters, but should be
-left in <VAR>text</VAR> when it is passed to the completion function.
-Programs can use this to help determine what kind of completing to do.
-For instance, Bash sets this variable to "$@" so that it can complete
-shell variables and hostnames.
-</DL>
-</P><P>
-
-<A NAME="IDX359"></A>
-<DL>
-<DT><U>Variable:</U> int <B>rl_completion_query_items</B>
-<DD>Up to this many items will be displayed in response to a
-possible-completions call.  After that, readline asks the user if she is sure
-she wants to see them all.  The default value is 100.  A negative value 
-indicates that Readline should never ask the user.
-</DL>
-</P><P>
-
-<A NAME="IDX360"></A>
-<DL>
-<DT><U>Variable:</U> int <B>rl_completion_append_character</B>
-<DD>When a single completion alternative matches at the end of the command
-line, this character is appended to the inserted completion text.  The
-default is a space character (<SAMP>` '</SAMP>).  Setting this to the null
-character (<SAMP>`\0'</SAMP>) prevents anything being appended automatically.
-This can be changed in application-specific completion functions to
-provide the "most sensible word separator character" according to
-an application-specific command line syntax specification.
-</DL>
-</P><P>
-
-<A NAME="IDX361"></A>
-<DL>
-<DT><U>Variable:</U> int <B>rl_completion_suppress_append</B>
-<DD>If non-zero, <VAR>rl_completion_append_character</VAR> is not appended to
-matches at the end of the command line, as described above.
-It is set to 0 before any application-specific completion function
-is called, and may only be changed within such a function.
-</DL>
-</P><P>
-
-<A NAME="IDX362"></A>
-<DL>
-<DT><U>Variable:</U> int <B>rl_completion_quote_character</B>
-<DD>When Readline is completing quoted text, as delimited by one of the
-characters in <VAR>rl_completer_quote_characters</VAR>, it sets this variable
-to the quoting character found.
-This is set before any application-specific completion function is called.
-</DL>
-</P><P>
-
-<A NAME="IDX363"></A>
-<DL>
-<DT><U>Variable:</U> int <B>rl_completion_suppress_quote</B>
-<DD>If non-zero, Readline does not append a matching quote character when
-performing completion on a quoted string.
-It is set to 0 before any application-specific completion function
-is called, and may only be changed within such a function.
-</DL>
-</P><P>
-
-<A NAME="IDX364"></A>
-<DL>
-<DT><U>Variable:</U> int <B>rl_completion_found_quote</B>
-<DD>When Readline is completing quoted text, it sets this variable
-to a non-zero value if the word being completed contains or is delimited
-by any quoting characters, including backslashes.
-This is set before any application-specific completion function is called.
-</DL>
-</P><P>
-
-<A NAME="IDX365"></A>
-<DL>
-<DT><U>Variable:</U> int <B>rl_completion_mark_symlink_dirs</B>
-<DD>If non-zero, a slash will be appended to completed filenames that are
-symbolic links to directory names, subject to the value of the
-user-settable <VAR>mark-directories</VAR> variable.
-This variable exists so that application-specific completion functions
-can override the user's global preference (set via the
-<VAR>mark-symlinked-directories</VAR> Readline variable) if appropriate.
-This variable is set to the user's preference before any
-application-specific completion function is called, so unless that
-function modifies the value, the user's preferences are honored.
-</DL>
-</P><P>
-
-<A NAME="IDX366"></A>
-<DL>
-<DT><U>Variable:</U> int <B>rl_ignore_completion_duplicates</B>
-<DD>If non-zero, then duplicates in the matches are removed.
-The default is 1.
-</DL>
-</P><P>
-
-<A NAME="IDX367"></A>
-<DL>
-<DT><U>Variable:</U> int <B>rl_filename_completion_desired</B>
-<DD>Non-zero means that the results of the matches are to be treated as
-filenames.  This is <EM>always</EM> zero when completion is attempted,
-and can only be changed
-within an application-specific completion function.  If it is set to a
-non-zero value by such a function, directory names have a slash appended
-and Readline attempts to quote completed filenames if they contain any
-characters in <CODE>rl_filename_quote_characters</CODE> and
-<CODE>rl_filename_quoting_desired</CODE> is set to a non-zero value.
-</DL>
-</P><P>
-
-<A NAME="IDX368"></A>
-<DL>
-<DT><U>Variable:</U> int <B>rl_filename_quoting_desired</B>
-<DD>Non-zero means that the results of the matches are to be quoted using
-double quotes (or an application-specific quoting mechanism) if the
-completed filename contains any characters in
-<CODE>rl_filename_quote_chars</CODE>.  This is <EM>always</EM> non-zero
-when completion is attempted, and can only be changed within an
-application-specific completion function.
-The quoting is effected via a call to the function pointed to
-by <CODE>rl_filename_quoting_function</CODE>.
-</DL>
-</P><P>
-
-<A NAME="IDX369"></A>
-<DL>
-<DT><U>Variable:</U> int <B>rl_attempted_completion_over</B>
-<DD>If an application-specific completion function assigned to
-<CODE>rl_attempted_completion_function</CODE> sets this variable to a non-zero
-value, Readline will not perform its default filename completion even
-if the application's completion function returns no matches.
-It should be set only by an application's completion function.
-</DL>
-</P><P>
-
-<A NAME="IDX370"></A>
-<DL>
-<DT><U>Variable:</U> int <B>rl_sort_completion_matches</B>
-<DD>If an application sets this variable to 0, Readline will not sort the
-list of completions (which implies that it cannot remove any duplicate
-completions).  The default value is 1, which means that Readline will
-sort the completions and, depending on the value of
-<CODE>rl_ignore_completion_duplicates</CODE>, will attempt to remove duplicate
-matches.
-</DL>
-</P><P>
-
-<A NAME="IDX371"></A>
-<DL>
-<DT><U>Variable:</U> int <B>rl_completion_type</B>
-<DD>Set to a character describing the type of completion Readline is currently
-attempting; see the description of <CODE>rl_complete_internal()</CODE>
-(see section <A HREF="readline.html#SEC46">2.6.2 Completion Functions</A>) for the list of characters.
-This is set to the appropriate value before any application-specific
-completion function is called, allowing such functions to present
-the same interface as <CODE>rl_complete()</CODE>.
-</DL>
-</P><P>
-
-<A NAME="IDX372"></A>
-<DL>
-<DT><U>Variable:</U> int <B>rl_completion_invoking_key</B>
-<DD>Set to the final character in the key sequence that invoked one of the
-completion functions that call <CODE>rl_complete_internal()</CODE>.  This is
-set to the appropriate value before any application-specific completion
-function is called.
-</DL>
-</P><P>
-
-<A NAME="IDX373"></A>
-<DL>
-<DT><U>Variable:</U> int <B>rl_inhibit_completion</B>
-<DD>If this variable is non-zero, completion is inhibited.  The completion
-character will be inserted as any other bound to <CODE>self-insert</CODE>.
-</DL>
-</P><P>
-
-<A NAME="A Short Completion Example"></A>
-<HR SIZE="6">
-<A NAME="SEC48"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC47"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC49"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[ &lt;&lt; ]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC44"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC49"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC51">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H3> 2.6.4 A Short Completion Example </H3>
-<!--docid::SEC48::-->
-<P>
-
-Here is a small application demonstrating the use of the GNU Readline
-library.  It is called <CODE>fileman</CODE>, and the source code resides in
-<TT>`examples/fileman.c'</TT>.  This sample application provides
-completion of command names, line editing features, and access to the
-history list.
-</P><P>
-
-<TABLE><tr><td>&nbsp;</td><td class=smallexample><FONT SIZE=-1><pre>/* fileman.c -- A tiny application which demonstrates how to use the
-   GNU Readline library.  This application interactively allows users
-   to manipulate files and their modes. */
-
-#ifdef HAVE_CONFIG_H
-#  include &#60;config.h&#62;
-#endif
-
-#include &#60;sys/types.h&#62;
-#ifdef HAVE_SYS_FILE_H
-#  include &#60;sys/file.h&#62;
-#endif
-#include &#60;sys/stat.h&#62;
-
-#ifdef HAVE_UNISTD_H
-#  include &#60;unistd.h&#62;
-#endif
-
-#include &#60;fcntl.h&#62;
-#include &#60;stdio.h&#62;
-#include &#60;errno.h&#62;
-
-#if defined (HAVE_STRING_H)
-#  include &#60;string.h&#62;
-#else /* !HAVE_STRING_H */
-#  include &#60;strings.h&#62;
-#endif /* !HAVE_STRING_H */
-
-#ifdef HAVE_STDLIB_H
-#  include &#60;stdlib.h&#62;
-#endif
-
-#include &#60;time.h&#62;
-
-#include &#60;readline/readline.h&#62;
-#include &#60;readline/history.h&#62;
-
-extern char *xmalloc PARAMS((size_t));
-
-/* The names of functions that actually do the manipulation. */
-int com_list PARAMS((char *));
-int com_view PARAMS((char *));
-int com_rename PARAMS((char *));
-int com_stat PARAMS((char *));
-int com_pwd PARAMS((char *));
-int com_delete PARAMS((char *));
-int com_help PARAMS((char *));
-int com_cd PARAMS((char *));
-int com_quit PARAMS((char *));
-
-/* A structure which contains information on the commands this program
-   can understand. */
-
-typedef struct {
-  char *name;                  /* User printable name of the function. */
-  rl_icpfunc_t *func;          /* Function to call to do the job. */
-  char *doc;                   /* Documentation for this function.  */
-} COMMAND;
-
-COMMAND commands[] = {
-  { "cd", com_cd, "Change to directory DIR" },
-  { "delete", com_delete, "Delete FILE" },
-  { "help", com_help, "Display this text" },
-  { "?", com_help, "Synonym for `help'" },
-  { "list", com_list, "List files in DIR" },
-  { "ls", com_list, "Synonym for `list'" },
-  { "pwd", com_pwd, "Print the current working directory" },
-  { "quit", com_quit, "Quit using Fileman" },
-  { "rename", com_rename, "Rename FILE to NEWNAME" },
-  { "stat", com_stat, "Print out statistics on FILE" },
-  { "view", com_view, "View the contents of FILE" },
-  { (char *)NULL, (rl_icpfunc_t *)NULL, (char *)NULL }
-};
-
-/* Forward declarations. */
-char *stripwhite ();
-COMMAND *find_command ();
-
-/* The name of this program, as taken from argv[0]. */
-char *progname;
-
-/* When non-zero, this global means the user is done using this program. */
-int done;
-
-char *
-dupstr (s)
-     char *s;
-{
-  char *r;
-
-  r = xmalloc (strlen (s) + 1);
-  strcpy (r, s);
-  return (r);
-}
-
-main (argc, argv)
-     int argc;
-     char **argv;
-{
-  char *line, *s;
-
-  progname = argv[0];
-
-  initialize_readline ();      /* Bind our completer. */
-
-  /* Loop reading and executing lines until the user quits. */
-  for ( ; done == 0; )
-    {
-      line = readline ("FileMan: ");
-
-      if (!line)
-        break;
-
-      /* Remove leading and trailing whitespace from the line.
-         Then, if there is anything left, add it to the history list
-         and execute it. */
-      s = stripwhite (line);
-
-      if (*s)
-        {
-          add_history (s);
-          execute_line (s);
-        }
-
-      free (line);
-    }
-  exit (0);
-}
-
-/* Execute a command line. */
-int
-execute_line (line)
-     char *line;
-{
-  register int i;
-  COMMAND *command;
-  char *word;
-
-  /* Isolate the command word. */
-  i = 0;
-  while (line[i] &#38;&#38; whitespace (line[i]))
-    i++;
-  word = line + i;
-
-  while (line[i] &#38;&#38; !whitespace (line[i]))
-    i++;
-
-  if (line[i])
-    line[i++] = '\0';
-
-  command = find_command (word);
-
-  if (!command)
-    {
-      fprintf (stderr, "%s: No such command for FileMan.\n", word);
-      return (-1);
-    }
-
-  /* Get argument to command, if any. */
-  while (whitespace (line[i]))
-    i++;
-
-  word = line + i;
-
-  /* Call the function. */
-  return ((*(command-&#62;func)) (word));
-}
-
-/* Look up NAME as the name of a command, and return a pointer to that
-   command.  Return a NULL pointer if NAME isn't a command name. */
-COMMAND *
-find_command (name)
-     char *name;
-{
-  register int i;
-
-  for (i = 0; commands[i].name; i++)
-    if (strcmp (name, commands[i].name) == 0)
-      return (&#38;commands[i]);
-
-  return ((COMMAND *)NULL);
-}
-
-/* Strip whitespace from the start and end of STRING.  Return a pointer
-   into STRING. */
-char *
-stripwhite (string)
-     char *string;
-{
-  register char *s, *t;
-
-  for (s = string; whitespace (*s); s++)
-    ;
-    
-  if (*s == 0)
-    return (s);
-
-  t = s + strlen (s) - 1;
-  while (t &#62; s &#38;&#38; whitespace (*t))
-    t--;
-  *++t = '\0';
-
-  return s;
-}
-
-/* **************************************************************** */
-/*                                                                  */
-/*                  Interface to Readline Completion                */
-/*                                                                  */
-/* **************************************************************** */
-
-char *command_generator PARAMS((const char *, int));
-char **fileman_completion PARAMS((const char *, int, int));
-
-/* Tell the GNU Readline library how to complete.  We want to try to complete
-   on command names if this is the first word in the line, or on filenames
-   if not. */
-initialize_readline ()
-{
-  /* Allow conditional parsing of the ~/.inputrc file. */
-  rl_readline_name = "FileMan";
-
-  /* Tell the completer that we want a crack first. */
-  rl_attempted_completion_function = fileman_completion;
-}
-
-/* Attempt to complete on the contents of TEXT.  START and END bound the
-   region of rl_line_buffer that contains the word to complete.  TEXT is
-   the word to complete.  We can use the entire contents of rl_line_buffer
-   in case we want to do some simple parsing.  Return the array of matches,
-   or NULL if there aren't any. */
-char **
-fileman_completion (text, start, end)
-     const char *text;
-     int start, end;
-{
-  char **matches;
-
-  matches = (char **)NULL;
-
-  /* If this word is at the start of the line, then it is a command
-     to complete.  Otherwise it is the name of a file in the current
-     directory. */
-  if (start == 0)
-    matches = rl_completion_matches (text, command_generator);
-
-  return (matches);
-}
-
-/* Generator function for command completion.  STATE lets us know whether
-   to start from scratch; without any state (i.e. STATE == 0), then we
-   start at the top of the list. */
-char *
-command_generator (text, state)
-     const char *text;
-     int state;
-{
-  static int list_index, len;
-  char *name;
-
-  /* If this is a new word to complete, initialize now.  This includes
-     saving the length of TEXT for efficiency, and initializing the index
-     variable to 0. */
-  if (!state)
-    {
-      list_index = 0;
-      len = strlen (text);
-    }
-
-  /* Return the next name which partially matches from the command list. */
-  while (name = commands[list_index].name)
-    {
-      list_index++;
-
-      if (strncmp (name, text, len) == 0)
-        return (dupstr(name));
-    }
-
-  /* If no names matched, then return NULL. */
-  return ((char *)NULL);
-}
-
-/* **************************************************************** */
-/*                                                                  */
-/*                       FileMan Commands                           */
-/*                                                                  */
-/* **************************************************************** */
-
-/* String to pass to system ().  This is for the LIST, VIEW and RENAME
-   commands. */
-static char syscom[1024];
-
-/* List the file(s) named in arg. */
-com_list (arg)
-     char *arg;
-{
-  if (!arg)
-    arg = "";
-
-  sprintf (syscom, "ls -FClg %s", arg);
-  return (system (syscom));
-}
-
-com_view (arg)
-     char *arg;
-{
-  if (!valid_argument ("view", arg))
-    return 1;
-
-#if defined (__MSDOS__)
-  /* more.com doesn't grok slashes in pathnames */
-  sprintf (syscom, "less %s", arg);
-#else
-  sprintf (syscom, "more %s", arg);
-#endif
-  return (system (syscom));
-}
-
-com_rename (arg)
-     char *arg;
-{
-  too_dangerous ("rename");
-  return (1);
-}
-
-com_stat (arg)
-     char *arg;
-{
-  struct stat finfo;
-
-  if (!valid_argument ("stat", arg))
-    return (1);
-
-  if (stat (arg, &#38;finfo) == -1)
-    {
-      perror (arg);
-      return (1);
-    }
-
-  printf ("Statistics for `%s':\n", arg);
-
-  printf ("%s has %d link%s, and is %d byte%s in length.\n",
-         arg,
-          finfo.st_nlink,
-          (finfo.st_nlink == 1) ? "" : "s",
-          finfo.st_size,
-          (finfo.st_size == 1) ? "" : "s");
-  printf ("Inode Last Change at: %s", ctime (&#38;finfo.st_ctime));
-  printf ("      Last access at: %s", ctime (&#38;finfo.st_atime));
-  printf ("    Last modified at: %s", ctime (&#38;finfo.st_mtime));
-  return (0);
-}
-
-com_delete (arg)
-     char *arg;
-{
-  too_dangerous ("delete");
-  return (1);
-}
-
-/* Print out help for ARG, or for all of the commands if ARG is
-   not present. */
-com_help (arg)
-     char *arg;
-{
-  register int i;
-  int printed = 0;
-
-  for (i = 0; commands[i].name; i++)
-    {
-      if (!*arg || (strcmp (arg, commands[i].name) == 0))
-        {
-          printf ("%s\t\t%s.\n", commands[i].name, commands[i].doc);
-          printed++;
-        }
-    }
-
-  if (!printed)
-    {
-      printf ("No commands match `%s'.  Possibilties are:\n", arg);
-
-      for (i = 0; commands[i].name; i++)
-        {
-          /* Print in six columns. */
-          if (printed == 6)
-            {
-              printed = 0;
-              printf ("\n");
-            }
-
-          printf ("%s\t", commands[i].name);
-          printed++;
-        }
-
-      if (printed)
-        printf ("\n");
-    }
-  return (0);
-}
-
-/* Change to the directory ARG. */
-com_cd (arg)
-     char *arg;
-{
-  if (chdir (arg) == -1)
-    {
-      perror (arg);
-      return 1;
-    }
-
-  com_pwd ("");
-  return (0);
-}
-
-/* Print out the current working directory. */
-com_pwd (ignore)
-     char *ignore;
-{
-  char dir[1024], *s;
-
-  s = getcwd (dir, sizeof(dir) - 1);
-  if (s == 0)
-    {
-      printf ("Error getting pwd: %s\n", dir);
-      return 1;
-    }
-
-  printf ("Current directory is %s\n", dir);
-  return 0;
-}
-
-/* The user wishes to quit using this program.  Just set DONE non-zero. */
-com_quit (arg)
-     char *arg;
-{
-  done = 1;
-  return (0);
-}
-
-/* Function which tells you that you can't do this. */
-too_dangerous (caller)
-     char *caller;
-{
-  fprintf (stderr,
-           "%s: Too dangerous for me to distribute.  Write it yourself.\n",
-           caller);
-}
-
-/* Return non-zero if ARG is a valid argument for CALLER, else print
-   an error message and return zero. */
-int
-valid_argument (caller, arg)
-     char *caller, *arg;
-{
-  if (!arg || !*arg)
-    {
-      fprintf (stderr, "%s: Argument required.\n", caller);
-      return (0);
-    }
-
-  return (1);
-}
-</FONT></pre></td></tr></table></P><P>
-
-<A NAME="GNU Free Documentation License"></A>
-<HR SIZE="6">
-<A NAME="SEC49"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC48"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC51"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC23"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[ &gt;&gt; ]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC51">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H1> A. GNU Free Documentation License </H1>
-<!--docid::SEC49::-->
-<P>
-
-<center>
- Version 1.3, 3 November 2008
-</center>
-</P><P>
-
-<TABLE><tr><td>&nbsp;</td><td class=display><pre style="font-family: serif">Copyright (C) 2000, 2001, 2002, 2007, 2008 Free Software Foundation, Inc.
-<A HREF="http://fsf.org/">http://fsf.org/</A>
-
-Everyone is permitted to copy and distribute verbatim copies
-of this license document, but changing it is not allowed.
-</pre></td></tr></table></P><P>
-
-<OL>
-<LI>
-PREAMBLE
-<P>
-
-The purpose of this License is to make a manual, textbook, or other
-functional and useful document <EM>free</EM> in the sense of freedom: to
-assure everyone the effective freedom to copy and redistribute it,
-with or without modifying it, either commercially or noncommercially.
-Secondarily, this License preserves for the author and publisher a way
-to get credit for their work, while not being considered responsible
-for modifications made by others.
-</P><P>
-
-This License is a kind of "copyleft", which means that derivative
-works of the document must themselves be free in the same sense.  It
-complements the GNU General Public License, which is a copyleft
-license designed for free software.
-</P><P>
-
-We have designed this License in order to use it for manuals for free
-software, because free software needs free documentation: a free
-program should come with manuals providing the same freedoms that the
-software does.  But this License is not limited to software manuals;
-it can be used for any textual work, regardless of subject matter or
-whether it is published as a printed book.  We recommend this License
-principally for works whose purpose is instruction or reference.
-</P><P>
-
-<LI>
-APPLICABILITY AND DEFINITIONS
-<P>
-
-This License applies to any manual or other work, in any medium, that
-contains a notice placed by the copyright holder saying it can be
-distributed under the terms of this License.  Such a notice grants a
-world-wide, royalty-free license, unlimited in duration, to use that
-work under the conditions stated herein.  The "Document", below,
-refers to any such manual or work.  Any member of the public is a
-licensee, and is addressed as "you".  You accept the license if you
-copy, modify or distribute the work in a way requiring permission
-under copyright law.
-</P><P>
-
-A "Modified Version" of the Document means any work containing the
-Document or a portion of it, either copied verbatim, or with
-modifications and/or translated into another language.
-</P><P>
-
-A "Secondary Section" is a named appendix or a front-matter section
-of the Document that deals exclusively with the relationship of the
-publishers or authors of the Document to the Document's overall
-subject (or to related matters) and contains nothing that could fall
-directly within that overall subject.  (Thus, if the Document is in
-part a textbook of mathematics, a Secondary Section may not explain
-any mathematics.)  The relationship could be a matter of historical
-connection with the subject or with related matters, or of legal,
-commercial, philosophical, ethical or political position regarding
-them.
-</P><P>
-
-The "Invariant Sections" are certain Secondary Sections whose titles
-are designated, as being those of Invariant Sections, in the notice
-that says that the Document is released under this License.  If a
-section does not fit the above definition of Secondary then it is not
-allowed to be designated as Invariant.  The Document may contain zero
-Invariant Sections.  If the Document does not identify any Invariant
-Sections then there are none.
-</P><P>
-
-The "Cover Texts" are certain short passages of text that are listed,
-as Front-Cover Texts or Back-Cover Texts, in the notice that says that
-the Document is released under this License.  A Front-Cover Text may
-be at most 5 words, and a Back-Cover Text may be at most 25 words.
-</P><P>
-
-A "Transparent" copy of the Document means a machine-readable copy,
-represented in a format whose specification is available to the
-general public, that is suitable for revising the document
-straightforwardly with generic text editors or (for images composed of
-pixels) generic paint programs or (for drawings) some widely available
-drawing editor, and that is suitable for input to text formatters or
-for automatic translation to a variety of formats suitable for input
-to text formatters.  A copy made in an otherwise Transparent file
-format whose markup, or absence of markup, has been arranged to thwart
-or discourage subsequent modification by readers is not Transparent.
-An image format is not Transparent if used for any substantial amount
-of text.  A copy that is not "Transparent" is called "Opaque".
-</P><P>
-
-Examples of suitable formats for Transparent copies include plain
-ASCII without markup, Texinfo input format, LaTeX input
-format, <FONT SIZE="-1">SGML</FONT> or <FONT SIZE="-1">XML</FONT> using a publicly available
-<FONT SIZE="-1">DTD</FONT>, and standard-conforming simple <FONT SIZE="-1">HTML</FONT>,
-PostScript or <FONT SIZE="-1">PDF</FONT> designed for human modification.  Examples
-of transparent image formats include <FONT SIZE="-1">PNG</FONT>, <FONT SIZE="-1">XCF</FONT> and
-<FONT SIZE="-1">JPG</FONT>.  Opaque formats include proprietary formats that can be
-read and edited only by proprietary word processors, <FONT SIZE="-1">SGML</FONT> or
-<FONT SIZE="-1">XML</FONT> for which the <FONT SIZE="-1">DTD</FONT> and/or processing tools are
-not generally available, and the machine-generated <FONT SIZE="-1">HTML</FONT>,
-PostScript or <FONT SIZE="-1">PDF</FONT> produced by some word processors for
-output purposes only.
-</P><P>
-
-The "Title Page" means, for a printed book, the title page itself,
-plus such following pages as are needed to hold, legibly, the material
-this License requires to appear in the title page.  For works in
-formats which do not have any title page as such, "Title Page" means
-the text near the most prominent appearance of the work's title,
-preceding the beginning of the body of the text.
-</P><P>
-
-The "publisher" means any person or entity that distributes copies
-of the Document to the public.
-</P><P>
-
-A section "Entitled XYZ" means a named subunit of the Document whose
-title either is precisely XYZ or contains XYZ in parentheses following
-text that translates XYZ in another language.  (Here XYZ stands for a
-specific section name mentioned below, such as "Acknowledgements",
-"Dedications", "Endorsements", or "History".)  To "Preserve the Title"
-of such a section when you modify the Document means that it remains a
-section "Entitled XYZ" according to this definition.
-</P><P>
-
-The Document may include Warranty Disclaimers next to the notice which
-states that this License applies to the Document.  These Warranty
-Disclaimers are considered to be included by reference in this
-License, but only as regards disclaiming warranties: any other
-implication that these Warranty Disclaimers may have is void and has
-no effect on the meaning of this License.
-</P><P>
-
-<LI>
-VERBATIM COPYING
-<P>
-
-You may copy and distribute the Document in any medium, either
-commercially or noncommercially, provided that this License, the
-copyright notices, and the license notice saying this License applies
-to the Document are reproduced in all copies, and that you add no other
-conditions whatsoever to those of this License.  You may not use
-technical measures to obstruct or control the reading or further
-copying of the copies you make or distribute.  However, you may accept
-compensation in exchange for copies.  If you distribute a large enough
-number of copies you must also follow the conditions in section 3.
-</P><P>
-
-You may also lend copies, under the same conditions stated above, and
-you may publicly display copies.
-</P><P>
-
-<LI>
-COPYING IN QUANTITY
-<P>
-
-If you publish printed copies (or copies in media that commonly have
-printed covers) of the Document, numbering more than 100, and the
-Document's license notice requires Cover Texts, you must enclose the
-copies in covers that carry, clearly and legibly, all these Cover
-Texts: Front-Cover Texts on the front cover, and Back-Cover Texts on
-the back cover.  Both covers must also clearly and legibly identify
-you as the publisher of these copies.  The front cover must present
-the full title with all words of the title equally prominent and
-visible.  You may add other material on the covers in addition.
-Copying with changes limited to the covers, as long as they preserve
-the title of the Document and satisfy these conditions, can be treated
-as verbatim copying in other respects.
-</P><P>
-
-If the required texts for either cover are too voluminous to fit
-legibly, you should put the first ones listed (as many as fit
-reasonably) on the actual cover, and continue the rest onto adjacent
-pages.
-</P><P>
-
-If you publish or distribute Opaque copies of the Document numbering
-more than 100, you must either include a machine-readable Transparent
-copy along with each Opaque copy, or state in or with each Opaque copy
-a computer-network location from which the general network-using
-public has access to download using public-standard network protocols
-a complete Transparent copy of the Document, free of added material.
-If you use the latter option, you must take reasonably prudent steps,
-when you begin distribution of Opaque copies in quantity, to ensure
-that this Transparent copy will remain thus accessible at the stated
-location until at least one year after the last time you distribute an
-Opaque copy (directly or through your agents or retailers) of that
-edition to the public.
-</P><P>
-
-It is requested, but not required, that you contact the authors of the
-Document well before redistributing any large number of copies, to give
-them a chance to provide you with an updated version of the Document.
-</P><P>
-
-<LI>
-MODIFICATIONS
-<P>
-
-You may copy and distribute a Modified Version of the Document under
-the conditions of sections 2 and 3 above, provided that you release
-the Modified Version under precisely this License, with the Modified
-Version filling the role of the Document, thus licensing distribution
-and modification of the Modified Version to whoever possesses a copy
-of it.  In addition, you must do these things in the Modified Version:
-</P><P>
-
-<OL>
-<LI>
-Use in the Title Page (and on the covers, if any) a title distinct
-from that of the Document, and from those of previous versions
-(which should, if there were any, be listed in the History section
-of the Document).  You may use the same title as a previous version
-if the original publisher of that version gives permission.
-<P>
-
-<LI>
-List on the Title Page, as authors, one or more persons or entities
-responsible for authorship of the modifications in the Modified
-Version, together with at least five of the principal authors of the
-Document (all of its principal authors, if it has fewer than five),
-unless they release you from this requirement.
-<P>
-
-<LI>
-State on the Title page the name of the publisher of the
-Modified Version, as the publisher.
-<P>
-
-<LI>
-Preserve all the copyright notices of the Document.
-<P>
-
-<LI>
-Add an appropriate copyright notice for your modifications
-adjacent to the other copyright notices.
-<P>
-
-<LI>
-Include, immediately after the copyright notices, a license notice
-giving the public permission to use the Modified Version under the
-terms of this License, in the form shown in the Addendum below.
-<P>
-
-<LI>
-Preserve in that license notice the full lists of Invariant Sections
-and required Cover Texts given in the Document's license notice.
-<P>
-
-<LI>
-Include an unaltered copy of this License.
-<P>
-
-<LI>
-Preserve the section Entitled "History", Preserve its Title, and add
-to it an item stating at least the title, year, new authors, and
-publisher of the Modified Version as given on the Title Page.  If
-there is no section Entitled "History" in the Document, create one
-stating the title, year, authors, and publisher of the Document as
-given on its Title Page, then add an item describing the Modified
-Version as stated in the previous sentence.
-<P>
-
-<LI>
-Preserve the network location, if any, given in the Document for
-public access to a Transparent copy of the Document, and likewise
-the network locations given in the Document for previous versions
-it was based on.  These may be placed in the "History" section.
-You may omit a network location for a work that was published at
-least four years before the Document itself, or if the original
-publisher of the version it refers to gives permission.
-<P>
-
-<LI>
-For any section Entitled "Acknowledgements" or "Dedications", Preserve
-the Title of the section, and preserve in the section all the
-substance and tone of each of the contributor acknowledgements and/or
-dedications given therein.
-<P>
-
-<LI>
-Preserve all the Invariant Sections of the Document,
-unaltered in their text and in their titles.  Section numbers
-or the equivalent are not considered part of the section titles.
-<P>
-
-<LI>
-Delete any section Entitled "Endorsements".  Such a section
-may not be included in the Modified Version.
-<P>
-
-<LI>
-Do not retitle any existing section to be Entitled "Endorsements" or
-to conflict in title with any Invariant Section.
-<P>
-
-<LI>
-Preserve any Warranty Disclaimers.
-</OL>
-<P>
-
-If the Modified Version includes new front-matter sections or
-appendices that qualify as Secondary Sections and contain no material
-copied from the Document, you may at your option designate some or all
-of these sections as invariant.  To do this, add their titles to the
-list of Invariant Sections in the Modified Version's license notice.
-These titles must be distinct from any other section titles.
-</P><P>
-
-You may add a section Entitled "Endorsements", provided it contains
-nothing but endorsements of your Modified Version by various
-parties--for example, statements of peer review or that the text has
-been approved by an organization as the authoritative definition of a
-standard.
-</P><P>
-
-You may add a passage of up to five words as a Front-Cover Text, and a
-passage of up to 25 words as a Back-Cover Text, to the end of the list
-of Cover Texts in the Modified Version.  Only one passage of
-Front-Cover Text and one of Back-Cover Text may be added by (or
-through arrangements made by) any one entity.  If the Document already
-includes a cover text for the same cover, previously added by you or
-by arrangement made by the same entity you are acting on behalf of,
-you may not add another; but you may replace the old one, on explicit
-permission from the previous publisher that added the old one.
-</P><P>
-
-The author(s) and publisher(s) of the Document do not by this License
-give permission to use their names for publicity for or to assert or
-imply endorsement of any Modified Version.
-</P><P>
-
-<LI>
-COMBINING DOCUMENTS
-<P>
-
-You may combine the Document with other documents released under this
-License, under the terms defined in section 4 above for modified
-versions, provided that you include in the combination all of the
-Invariant Sections of all of the original documents, unmodified, and
-list them all as Invariant Sections of your combined work in its
-license notice, and that you preserve all their Warranty Disclaimers.
-</P><P>
-
-The combined work need only contain one copy of this License, and
-multiple identical Invariant Sections may be replaced with a single
-copy.  If there are multiple Invariant Sections with the same name but
-different contents, make the title of each such section unique by
-adding at the end of it, in parentheses, the name of the original
-author or publisher of that section if known, or else a unique number.
-Make the same adjustment to the section titles in the list of
-Invariant Sections in the license notice of the combined work.
-</P><P>
-
-In the combination, you must combine any sections Entitled "History"
-in the various original documents, forming one section Entitled
-"History"; likewise combine any sections Entitled "Acknowledgements",
-and any sections Entitled "Dedications".  You must delete all
-sections Entitled "Endorsements."
-</P><P>
-
-<LI>
-COLLECTIONS OF DOCUMENTS
-<P>
-
-You may make a collection consisting of the Document and other documents
-released under this License, and replace the individual copies of this
-License in the various documents with a single copy that is included in
-the collection, provided that you follow the rules of this License for
-verbatim copying of each of the documents in all other respects.
-</P><P>
-
-You may extract a single document from such a collection, and distribute
-it individually under this License, provided you insert a copy of this
-License into the extracted document, and follow this License in all
-other respects regarding verbatim copying of that document.
-</P><P>
-
-<LI>
-AGGREGATION WITH INDEPENDENT WORKS
-<P>
-
-A compilation of the Document or its derivatives with other separate
-and independent documents or works, in or on a volume of a storage or
-distribution medium, is called an "aggregate" if the copyright
-resulting from the compilation is not used to limit the legal rights
-of the compilation's users beyond what the individual works permit.
-When the Document is included in an aggregate, this License does not
-apply to the other works in the aggregate which are not themselves
-derivative works of the Document.
-</P><P>
-
-If the Cover Text requirement of section 3 is applicable to these
-copies of the Document, then if the Document is less than one half of
-the entire aggregate, the Document's Cover Texts may be placed on
-covers that bracket the Document within the aggregate, or the
-electronic equivalent of covers if the Document is in electronic form.
-Otherwise they must appear on printed covers that bracket the whole
-aggregate.
-</P><P>
-
-<LI>
-TRANSLATION
-<P>
-
-Translation is considered a kind of modification, so you may
-distribute translations of the Document under the terms of section 4.
-Replacing Invariant Sections with translations requires special
-permission from their copyright holders, but you may include
-translations of some or all Invariant Sections in addition to the
-original versions of these Invariant Sections.  You may include a
-translation of this License, and all the license notices in the
-Document, and any Warranty Disclaimers, provided that you also include
-the original English version of this License and the original versions
-of those notices and disclaimers.  In case of a disagreement between
-the translation and the original version of this License or a notice
-or disclaimer, the original version will prevail.
-</P><P>
-
-If a section in the Document is Entitled "Acknowledgements",
-"Dedications", or "History", the requirement (section 4) to Preserve
-its Title (section 1) will typically require changing the actual
-title.
-</P><P>
-
-<LI>
-TERMINATION
-<P>
-
-You may not copy, modify, sublicense, or distribute the Document
-except as expressly provided under this License.  Any attempt
-otherwise to copy, modify, sublicense, or distribute it is void, and
-will automatically terminate your rights under this License.
-</P><P>
-
-However, if you cease all violation of this License, then your license
-from a particular copyright holder is reinstated (a) provisionally,
-unless and until the copyright holder explicitly and finally
-terminates your license, and (b) permanently, if the copyright holder
-fails to notify you of the violation by some reasonable means prior to
-60 days after the cessation.
-</P><P>
-
-Moreover, your license from a particular copyright holder is
-reinstated permanently if the copyright holder notifies you of the
-violation by some reasonable means, this is the first time you have
-received notice of violation of this License (for any work) from that
-copyright holder, and you cure the violation prior to 30 days after
-your receipt of the notice.
-</P><P>
-
-Termination of your rights under this section does not terminate the
-licenses of parties who have received copies or rights from you under
-this License.  If your rights have been terminated and not permanently
-reinstated, receipt of a copy of some or all of the same material does
-not give you any rights to use it.
-</P><P>
-
-<LI>
-FUTURE REVISIONS OF THIS LICENSE
-<P>
-
-The Free Software Foundation may publish new, revised versions
-of the GNU Free Documentation License from time to time.  Such new
-versions will be similar in spirit to the present version, but may
-differ in detail to address new problems or concerns.  See
-<A HREF="http://www.gnu.org/copyleft/">http://www.gnu.org/copyleft/</A>.
-</P><P>
-
-Each version of the License is given a distinguishing version number.
-If the Document specifies that a particular numbered version of this
-License "or any later version" applies to it, you have the option of
-following the terms and conditions either of that specified version or
-of any later version that has been published (not as a draft) by the
-Free Software Foundation.  If the Document does not specify a version
-number of this License, you may choose any version ever published (not
-as a draft) by the Free Software Foundation.  If the Document
-specifies that a proxy can decide which future versions of this
-License can be used, that proxy's public statement of acceptance of a
-version permanently authorizes you to choose that version for the
-Document.
-</P><P>
-
-<LI>
-RELICENSING
-<P>
-
-"Massive Multiauthor Collaboration Site" (or "MMC Site") means any
-World Wide Web server that publishes copyrightable works and also
-provides prominent facilities for anybody to edit those works.  A
-public wiki that anybody can edit is an example of such a server.  A
-"Massive Multiauthor Collaboration" (or "MMC") contained in the
-site means any set of copyrightable works thus published on the MMC
-site.
-</P><P>
-
-"CC-BY-SA" means the Creative Commons Attribution-Share Alike 3.0
-license published by Creative Commons Corporation, a not-for-profit
-corporation with a principal place of business in San Francisco,
-California, as well as future copyleft versions of that license
-published by that same organization.
-</P><P>
-
-"Incorporate" means to publish or republish a Document, in whole or
-in part, as part of another Document.
-</P><P>
-
-An MMC is "eligible for relicensing" if it is licensed under this
-License, and if all works that were first published under this License
-somewhere other than this MMC, and subsequently incorporated in whole
-or in part into the MMC, (1) had no cover texts or invariant sections,
-and (2) were thus incorporated prior to November 1, 2008.
-</P><P>
-
-The operator of an MMC Site may republish an MMC contained in the site
-under CC-BY-SA on the same site at any time before August 1, 2009,
-provided the MMC is eligible for relicensing.
-</P><P>
-
-</OL>
-<P>
-
-<A NAME="SEC50"></A>
-<H2> ADDENDUM: How to use this License for your documents </H2>
-<!--docid::SEC50::-->
-<P>
-
-To use this License in a document you have written, include a copy of
-the License in the document and put the following copyright and
-license notices just after the title page:
-</P><P>
-
-<TABLE><tr><td>&nbsp;</td><td class=smallexample><FONT SIZE=-1><pre>  Copyright (C)  <VAR>year</VAR>  <VAR>your name</VAR>.
-  Permission is granted to copy, distribute and/or modify this document
-  under the terms of the GNU Free Documentation License, Version 1.3
-  or any later version published by the Free Software Foundation;
-  with no Invariant Sections, no Front-Cover Texts, and no Back-Cover
-  Texts.  A copy of the license is included in the section entitled ``GNU
-  Free Documentation License''.
-</FONT></pre></td></tr></table></P><P>
-
-If you have Invariant Sections, Front-Cover Texts and Back-Cover Texts,
-replace the "with<small>...</small>Texts." line with this:
-</P><P>
-
-<TABLE><tr><td>&nbsp;</td><td class=smallexample><FONT SIZE=-1><pre>    with the Invariant Sections being <VAR>list their titles</VAR>, with
-    the Front-Cover Texts being <VAR>list</VAR>, and with the Back-Cover Texts
-    being <VAR>list</VAR>.
-</FONT></pre></td></tr></table></P><P>
-
-If you have Invariant Sections without Cover Texts, or some other
-combination of the three, merge those two alternatives to suit the
-situation.
-</P><P>
-
-If your document contains nontrivial examples of program code, we
-recommend releasing these examples in parallel under your choice of
-free software license, such as the GNU General Public License,
-to permit their use in free software.
-</P><P>
-
-<A NAME="Concept Index"></A>
-<HR SIZE="6">
-<A NAME="SEC51"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC49"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC52"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[ &lt;&lt; ]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[ &gt;&gt; ]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC51">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H1> Concept Index </H1>
-<!--docid::SEC51::-->
-<table><tr><th valign=top>Jump to: &nbsp; </th><td><A HREF="readline.html#cp_A" style="text-decoration:none"><b>A</b></A>
- &nbsp; 
-<A HREF="readline.html#cp_C" style="text-decoration:none"><b>C</b></A>
- &nbsp; 
-<A HREF="readline.html#cp_E" style="text-decoration:none"><b>E</b></A>
- &nbsp; 
-<A HREF="readline.html#cp_I" style="text-decoration:none"><b>I</b></A>
- &nbsp; 
-<A HREF="readline.html#cp_K" style="text-decoration:none"><b>K</b></A>
- &nbsp; 
-<A HREF="readline.html#cp_N" style="text-decoration:none"><b>N</b></A>
- &nbsp; 
-<A HREF="readline.html#cp_R" style="text-decoration:none"><b>R</b></A>
- &nbsp; 
-<A HREF="readline.html#cp_V" style="text-decoration:none"><b>V</b></A>
- &nbsp; 
-<A HREF="readline.html#cp_Y" style="text-decoration:none"><b>Y</b></A>
- &nbsp; 
-</td></tr></table><br><P></P>
-<TABLE border=0>
-<TR><TD></TD><TH ALIGN=LEFT>Index Entry</TH><TH ALIGN=LEFT> Section</TH></TR>
-<TR><TD COLSPAN=3> <HR></TD></TR>
-<TR><TH><A NAME="cp_A"></A>A</TH><TD></TD><TD></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#SEC44">application-specific completion functions</A></TD><TD valign=top><A HREF="rlman.html#SEC44">2.6 Custom Completers</A></TD></TR>
-<TR><TD COLSPAN=3> <HR></TD></TR>
-<TR><TH><A NAME="cp_C"></A>C</TH><TD></TD><TD></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#SEC4">command editing</A></TD><TD valign=top><A HREF="rlman.html#SEC4">1.2.1 Readline Bare Essentials</A></TD></TR>
-<TR><TD COLSPAN=3> <HR></TD></TR>
-<TR><TH><A NAME="cp_E"></A>E</TH><TD></TD><TD></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#SEC4">editing command lines</A></TD><TD valign=top><A HREF="rlman.html#SEC4">1.2.1 Readline Bare Essentials</A></TD></TR>
-<TR><TD COLSPAN=3> <HR></TD></TR>
-<TR><TH><A NAME="cp_I"></A>I</TH><TD></TD><TD></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#SEC9">initialization file, readline</A></TD><TD valign=top><A HREF="rlman.html#SEC9">1.3 Readline Init File</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#SEC3">interaction, readline</A></TD><TD valign=top><A HREF="rlman.html#SEC3">1.2 Readline Interaction</A></TD></TR>
-<TR><TD COLSPAN=3> <HR></TD></TR>
-<TR><TH><A NAME="cp_K"></A>K</TH><TD></TD><TD></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX3">kill ring</A></TD><TD valign=top><A HREF="rlman.html#SEC6">1.2.3 Readline Killing Commands</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX1">killing text</A></TD><TD valign=top><A HREF="rlman.html#SEC6">1.2.3 Readline Killing Commands</A></TD></TR>
-<TR><TD COLSPAN=3> <HR></TD></TR>
-<TR><TH><A NAME="cp_N"></A>N</TH><TD></TD><TD></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#SEC4">notation, readline</A></TD><TD valign=top><A HREF="rlman.html#SEC4">1.2.1 Readline Bare Essentials</A></TD></TR>
-<TR><TD COLSPAN=3> <HR></TD></TR>
-<TR><TH><A NAME="cp_R"></A>R</TH><TD></TD><TD></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX191">readline, function</A></TD><TD valign=top><A HREF="rlman.html#SEC24">2.1 Basic Behavior</A></TD></TR>
-<TR><TD COLSPAN=3> <HR></TD></TR>
-<TR><TH><A NAME="cp_V"></A>V</TH><TD></TD><TD></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX4">variables, readline</A></TD><TD valign=top><A HREF="rlman.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
-<TR><TD COLSPAN=3> <HR></TD></TR>
-<TR><TH><A NAME="cp_Y"></A>Y</TH><TD></TD><TD></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX2">yanking text</A></TD><TD valign=top><A HREF="rlman.html#SEC6">1.2.3 Readline Killing Commands</A></TD></TR>
-<TR><TD COLSPAN=3> <HR></TD></TR>
-</TABLE><P></P><table><tr><th valign=top>Jump to: &nbsp; </th><td><A HREF="readline.html#cp_A" style="text-decoration:none"><b>A</b></A>
- &nbsp; 
-<A HREF="readline.html#cp_C" style="text-decoration:none"><b>C</b></A>
- &nbsp; 
-<A HREF="readline.html#cp_E" style="text-decoration:none"><b>E</b></A>
- &nbsp; 
-<A HREF="readline.html#cp_I" style="text-decoration:none"><b>I</b></A>
- &nbsp; 
-<A HREF="readline.html#cp_K" style="text-decoration:none"><b>K</b></A>
- &nbsp; 
-<A HREF="readline.html#cp_N" style="text-decoration:none"><b>N</b></A>
- &nbsp; 
-<A HREF="readline.html#cp_R" style="text-decoration:none"><b>R</b></A>
- &nbsp; 
-<A HREF="readline.html#cp_V" style="text-decoration:none"><b>V</b></A>
- &nbsp; 
-<A HREF="readline.html#cp_Y" style="text-decoration:none"><b>Y</b></A>
- &nbsp; 
-</td></tr></table><br><P>
-
-<A NAME="Function and Variable Index"></A>
-<HR SIZE="6">
-<A NAME="SEC52"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC51"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[ &gt; ]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[ &lt;&lt; ]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[ &gt;&gt; ]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC51">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H1> Function and Variable Index </H1>
-<!--docid::SEC52::-->
-<table><tr><th valign=top>Jump to: &nbsp; </th><td><A HREF="readline.html#fn__" style="text-decoration:none"><b>_</b></A>
- &nbsp; 
-<BR>
-<A HREF="readline.html#fn_A" style="text-decoration:none"><b>A</b></A>
- &nbsp; 
-<A HREF="readline.html#fn_B" style="text-decoration:none"><b>B</b></A>
- &nbsp; 
-<A HREF="readline.html#fn_C" style="text-decoration:none"><b>C</b></A>
- &nbsp; 
-<A HREF="readline.html#fn_D" style="text-decoration:none"><b>D</b></A>
- &nbsp; 
-<A HREF="readline.html#fn_E" style="text-decoration:none"><b>E</b></A>
- &nbsp; 
-<A HREF="readline.html#fn_F" style="text-decoration:none"><b>F</b></A>
- &nbsp; 
-<A HREF="readline.html#fn_H" style="text-decoration:none"><b>H</b></A>
- &nbsp; 
-<A HREF="readline.html#fn_I" style="text-decoration:none"><b>I</b></A>
- &nbsp; 
-<A HREF="readline.html#fn_K" style="text-decoration:none"><b>K</b></A>
- &nbsp; 
-<A HREF="readline.html#fn_M" style="text-decoration:none"><b>M</b></A>
- &nbsp; 
-<A HREF="readline.html#fn_N" style="text-decoration:none"><b>N</b></A>
- &nbsp; 
-<A HREF="readline.html#fn_O" style="text-decoration:none"><b>O</b></A>
- &nbsp; 
-<A HREF="readline.html#fn_P" style="text-decoration:none"><b>P</b></A>
- &nbsp; 
-<A HREF="readline.html#fn_Q" style="text-decoration:none"><b>Q</b></A>
- &nbsp; 
-<A HREF="readline.html#fn_R" style="text-decoration:none"><b>R</b></A>
- &nbsp; 
-<A HREF="readline.html#fn_S" style="text-decoration:none"><b>S</b></A>
- &nbsp; 
-<A HREF="readline.html#fn_T" style="text-decoration:none"><b>T</b></A>
- &nbsp; 
-<A HREF="readline.html#fn_U" style="text-decoration:none"><b>U</b></A>
- &nbsp; 
-<A HREF="readline.html#fn_V" style="text-decoration:none"><b>V</b></A>
- &nbsp; 
-<A HREF="readline.html#fn_Y" style="text-decoration:none"><b>Y</b></A>
- &nbsp; 
-</td></tr></table><br><P></P>
-<TABLE border=0>
-<TR><TD></TD><TH ALIGN=LEFT>Index Entry</TH><TH ALIGN=LEFT> Section</TH></TR>
-<TR><TD COLSPAN=3> <HR></TD></TR>
-<TR><TH><A NAME="fn__"></A>_</TH><TD></TD><TD></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX307"><CODE>_rl_digit_p</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC39">2.4.10 Utility Functions</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX310"><CODE>_rl_digit_value</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC39">2.4.10 Utility Functions</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX306"><CODE>_rl_lowercase_p</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC39">2.4.10 Utility Functions</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX309"><CODE>_rl_to_lower</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC39">2.4.10 Utility Functions</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX308"><CODE>_rl_to_upper</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC39">2.4.10 Utility Functions</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX305"><CODE>_rl_uppercase_p</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC39">2.4.10 Utility Functions</A></TD></TR>
-<TR><TD COLSPAN=3> <HR></TD></TR>
-<TR><TH><A NAME="fn_A"></A>A</TH><TD></TD><TD></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX156"><CODE>abort (C-g)</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX157"><CODE>abort (C-g)</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX52"><CODE>accept-line (Newline or Return)</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX53"><CODE>accept-line (Newline or Return)</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
-<TR><TD COLSPAN=3> <HR></TD></TR>
-<TR><TH><A NAME="fn_B"></A>B</TH><TD></TD><TD></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX42"><CODE>backward-char (C-b)</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC14">1.4.1 Commands For Moving</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX43"><CODE>backward-char (C-b)</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC14">1.4.1 Commands For Moving</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX80"><CODE>backward-delete-char (Rubout)</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC16">1.4.3 Commands For Changing Text</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX81"><CODE>backward-delete-char (Rubout)</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC16">1.4.3 Commands For Changing Text</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX104"><CODE>backward-kill-line (C-x Rubout)</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX105"><CODE>backward-kill-line (C-x Rubout)</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX112"><CODE>backward-kill-word (M-<KBD>DEL</KBD>)</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX113"><CODE>backward-kill-word (M-<KBD>DEL</KBD>)</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX46"><CODE>backward-word (M-b)</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC14">1.4.1 Commands For Moving</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX47"><CODE>backward-word (M-b)</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC14">1.4.1 Commands For Moving</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX58"><CODE>beginning-of-history (M-&#38;#60;)</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX59"><CODE>beginning-of-history (M-&#38;#60;)</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX36"><CODE>beginning-of-line (C-a)</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC14">1.4.1 Commands For Moving</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX37"><CODE>beginning-of-line (C-a)</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC14">1.4.1 Commands For Moving</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX5">bell-style</A></TD><TD valign=top><A HREF="rlman.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX6">bind-tty-special-chars</A></TD><TD valign=top><A HREF="rlman.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
-<TR><TD COLSPAN=3> <HR></TD></TR>
-<TR><TH><A NAME="fn_C"></A>C</TH><TD></TD><TD></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX152"><CODE>call-last-kbd-macro (C-x e)</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC20">1.4.7 Keyboard Macros</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX153"><CODE>call-last-kbd-macro (C-x e)</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC20">1.4.7 Keyboard Macros</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX98"><CODE>capitalize-word (M-c)</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC16">1.4.3 Commands For Changing Text</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX99"><CODE>capitalize-word (M-c)</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC16">1.4.3 Commands For Changing Text</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX172"><CODE>character-search (C-])</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX173"><CODE>character-search (C-])</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX174"><CODE>character-search-backward (M-C-])</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX175"><CODE>character-search-backward (M-C-])</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX48"><CODE>clear-screen (C-l)</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC14">1.4.1 Commands For Moving</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX49"><CODE>clear-screen (C-l)</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC14">1.4.1 Commands For Moving</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX7">comment-begin</A></TD><TD valign=top><A HREF="rlman.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX136"><CODE>complete (<KBD>TAB</KBD>)</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC19">1.4.6 Letting Readline Type For You</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX137"><CODE>complete (<KBD>TAB</KBD>)</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC19">1.4.6 Letting Readline Type For You</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX8">completion-display-width</A></TD><TD valign=top><A HREF="rlman.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX9">completion-ignore-case</A></TD><TD valign=top><A HREF="rlman.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX10">completion-map-case</A></TD><TD valign=top><A HREF="rlman.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX11">completion-prefix-display-length</A></TD><TD valign=top><A HREF="rlman.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX12">completion-query-items</A></TD><TD valign=top><A HREF="rlman.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX13">convert-meta</A></TD><TD valign=top><A HREF="rlman.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX124"><CODE>copy-backward-word ()</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX125"><CODE>copy-backward-word ()</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX126"><CODE>copy-forward-word ()</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX127"><CODE>copy-forward-word ()</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX122"><CODE>copy-region-as-kill ()</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX123"><CODE>copy-region-as-kill ()</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
-<TR><TD COLSPAN=3> <HR></TD></TR>
-<TR><TH><A NAME="fn_D"></A>D</TH><TD></TD><TD></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX78"><CODE>delete-char (C-d)</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC16">1.4.3 Commands For Changing Text</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX79"><CODE>delete-char (C-d)</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC16">1.4.3 Commands For Changing Text</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX146"><CODE>delete-char-or-list ()</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC19">1.4.6 Letting Readline Type For You</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX147"><CODE>delete-char-or-list ()</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC19">1.4.6 Letting Readline Type For You</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX118"><CODE>delete-horizontal-space ()</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX119"><CODE>delete-horizontal-space ()</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX132"><CODE>digit-argument (<KBD>M-0</KBD>, <KBD>M-1</KBD>, &#60;small&#62;...&#60;/small&#62; <KBD>M--</KBD>)</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC18">1.4.5 Specifying Numeric Arguments</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX133"><CODE>digit-argument (<KBD>M-0</KBD>, <KBD>M-1</KBD>, &#60;small&#62;...&#60;/small&#62; <KBD>M--</KBD>)</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC18">1.4.5 Specifying Numeric Arguments</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX14">disable-completion</A></TD><TD valign=top><A HREF="rlman.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX158"><CODE>do-uppercase-version (M-a, M-b, M-<VAR>x</VAR>, &#60;small&#62;...&#60;/small&#62;)</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX159"><CODE>do-uppercase-version (M-a, M-b, M-<VAR>x</VAR>, &#60;small&#62;...&#60;/small&#62;)</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX96"><CODE>downcase-word (M-l)</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC16">1.4.3 Commands For Changing Text</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX97"><CODE>downcase-word (M-l)</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC16">1.4.3 Commands For Changing Text</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX180"><CODE>dump-functions ()</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX181"><CODE>dump-functions ()</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX184"><CODE>dump-macros ()</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX185"><CODE>dump-macros ()</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX182"><CODE>dump-variables ()</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX183"><CODE>dump-variables ()</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
-<TR><TD COLSPAN=3> <HR></TD></TR>
-<TR><TH><A NAME="fn_E"></A>E</TH><TD></TD><TD></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX15">editing-mode</A></TD><TD valign=top><A HREF="rlman.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX186"><CODE>emacs-editing-mode (C-e)</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX187"><CODE>emacs-editing-mode (C-e)</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX16">enable-keypad</A></TD><TD valign=top><A HREF="rlman.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX150"><CODE>end-kbd-macro (C-x ))</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC20">1.4.7 Keyboard Macros</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX151"><CODE>end-kbd-macro (C-x ))</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC20">1.4.7 Keyboard Macros</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX60"><CODE>end-of-history (M-&#38;#62;)</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX61"><CODE>end-of-history (M-&#38;#62;)</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX38"><CODE>end-of-line (C-e)</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC14">1.4.1 Commands For Moving</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX39"><CODE>end-of-line (C-e)</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC14">1.4.1 Commands For Moving</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX170"><CODE>exchange-point-and-mark (C-x C-x)</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX171"><CODE>exchange-point-and-mark (C-x C-x)</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX17">expand-tilde</A></TD><TD valign=top><A HREF="rlman.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
-<TR><TD COLSPAN=3> <HR></TD></TR>
-<TR><TH><A NAME="fn_F"></A>F</TH><TD></TD><TD></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX82"><CODE>forward-backward-delete-char ()</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC16">1.4.3 Commands For Changing Text</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX83"><CODE>forward-backward-delete-char ()</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC16">1.4.3 Commands For Changing Text</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX40"><CODE>forward-char (C-f)</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC14">1.4.1 Commands For Moving</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX41"><CODE>forward-char (C-f)</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC14">1.4.1 Commands For Moving</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX64"><CODE>forward-search-history (C-s)</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX65"><CODE>forward-search-history (C-s)</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX44"><CODE>forward-word (M-f)</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC14">1.4.1 Commands For Moving</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX45"><CODE>forward-word (M-f)</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC14">1.4.1 Commands For Moving</A></TD></TR>
-<TR><TD COLSPAN=3> <HR></TD></TR>
-<TR><TH><A NAME="fn_H"></A>H</TH><TD></TD><TD></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX18">history-preserve-point</A></TD><TD valign=top><A HREF="rlman.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX72"><CODE>history-search-backward ()</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX73"><CODE>history-search-backward ()</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX70"><CODE>history-search-forward ()</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX71"><CODE>history-search-forward ()</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX19">history-size</A></TD><TD valign=top><A HREF="rlman.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX20">horizontal-scroll-mode</A></TD><TD valign=top><A HREF="rlman.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
-<TR><TD COLSPAN=3> <HR></TD></TR>
-<TR><TH><A NAME="fn_I"></A>I</TH><TD></TD><TD></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX21">input-meta</A></TD><TD valign=top><A HREF="rlman.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX178"><CODE>insert-comment (M-#)</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX179"><CODE>insert-comment (M-#)</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX140"><CODE>insert-completions (M-*)</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC19">1.4.6 Letting Readline Type For You</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX141"><CODE>insert-completions (M-*)</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC19">1.4.6 Letting Readline Type For You</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX23">isearch-terminators</A></TD><TD valign=top><A HREF="rlman.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
-<TR><TD COLSPAN=3> <HR></TD></TR>
-<TR><TH><A NAME="fn_K"></A>K</TH><TD></TD><TD></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX24">keymap</A></TD><TD valign=top><A HREF="rlman.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX102"><CODE>kill-line (C-k)</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX103"><CODE>kill-line (C-k)</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX120"><CODE>kill-region ()</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX121"><CODE>kill-region ()</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX108"><CODE>kill-whole-line ()</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX109"><CODE>kill-whole-line ()</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX110"><CODE>kill-word (M-d)</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX111"><CODE>kill-word (M-d)</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
-<TR><TD COLSPAN=3> <HR></TD></TR>
-<TR><TH><A NAME="fn_M"></A>M</TH><TD></TD><TD></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX25">mark-modified-lines</A></TD><TD valign=top><A HREF="rlman.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX26">mark-symlinked-directories</A></TD><TD valign=top><A HREF="rlman.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX27">match-hidden-files</A></TD><TD valign=top><A HREF="rlman.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX142"><CODE>menu-complete ()</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC19">1.4.6 Letting Readline Type For You</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX143"><CODE>menu-complete ()</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC19">1.4.6 Letting Readline Type For You</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX144"><CODE>menu-complete-backward ()</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC19">1.4.6 Letting Readline Type For You</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX145"><CODE>menu-complete-backward ()</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC19">1.4.6 Letting Readline Type For You</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX28">menu-complete-display-prefix</A></TD><TD valign=top><A HREF="rlman.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX22">meta-flag</A></TD><TD valign=top><A HREF="rlman.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
-<TR><TD COLSPAN=3> <HR></TD></TR>
-<TR><TH><A NAME="fn_N"></A>N</TH><TD></TD><TD></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX56"><CODE>next-history (C-n)</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX57"><CODE>next-history (C-n)</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX68"><CODE>non-incremental-forward-search-history (M-n)</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX69"><CODE>non-incremental-forward-search-history (M-n)</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX66"><CODE>non-incremental-reverse-search-history (M-p)</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX67"><CODE>non-incremental-reverse-search-history (M-p)</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
-<TR><TD COLSPAN=3> <HR></TD></TR>
-<TR><TH><A NAME="fn_O"></A>O</TH><TD></TD><TD></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX29">output-meta</A></TD><TD valign=top><A HREF="rlman.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX100"><CODE>overwrite-mode ()</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC16">1.4.3 Commands For Changing Text</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX101"><CODE>overwrite-mode ()</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC16">1.4.3 Commands For Changing Text</A></TD></TR>
-<TR><TD COLSPAN=3> <HR></TD></TR>
-<TR><TH><A NAME="fn_P"></A>P</TH><TD></TD><TD></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX30">page-completions</A></TD><TD valign=top><A HREF="rlman.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX138"><CODE>possible-completions (M-?)</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC19">1.4.6 Letting Readline Type For You</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX139"><CODE>possible-completions (M-?)</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC19">1.4.6 Letting Readline Type For You</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX160"><CODE>prefix-meta (<KBD>ESC</KBD>)</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX161"><CODE>prefix-meta (<KBD>ESC</KBD>)</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX54"><CODE>previous-history (C-p)</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX55"><CODE>previous-history (C-p)</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
-<TR><TD COLSPAN=3> <HR></TD></TR>
-<TR><TH><A NAME="fn_Q"></A>Q</TH><TD></TD><TD></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX84"><CODE>quoted-insert (C-q or C-v)</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC16">1.4.3 Commands For Changing Text</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX85"><CODE>quoted-insert (C-q or C-v)</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC16">1.4.3 Commands For Changing Text</A></TD></TR>
-<TR><TD COLSPAN=3> <HR></TD></TR>
-<TR><TH><A NAME="fn_R"></A>R</TH><TD></TD><TD></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX154"><CODE>re-read-init-file (C-x C-r)</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX155"><CODE>re-read-init-file (C-x C-r)</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX190"><CODE>readline</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC24">2.1 Basic Behavior</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX50"><CODE>redraw-current-line ()</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC14">1.4.1 Commands For Moving</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX51"><CODE>redraw-current-line ()</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC14">1.4.1 Commands For Moving</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX62"><CODE>reverse-search-history (C-r)</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX63"><CODE>reverse-search-history (C-r)</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX31">revert-all-at-newline</A></TD><TD valign=top><A HREF="rlman.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX164"><CODE>revert-line (M-r)</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX165"><CODE>revert-line (M-r)</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX227"><CODE>rl_add_defun</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC30">2.4.1 Naming a Function</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX260"><CODE>rl_add_funmap_entry</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC33">2.4.4 Associating Function Names and Bindings</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX263"><CODE>rl_add_undo</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC34">2.4.5 Allowing Undoing</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX303"><CODE>rl_alphabetic</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC39">2.4.10 Utility Functions</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX203">rl_already_prompted</A></TD><TD valign=top><A HREF="rlman.html#SEC28">2.3 Readline Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX344">rl_attempted_completion_function</A></TD><TD valign=top><A HREF="rlman.html#SEC47">2.6.3 Completion Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX369">rl_attempted_completion_over</A></TD><TD valign=top><A HREF="rlman.html#SEC47">2.6.3 Completion Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX353">rl_basic_quote_characters</A></TD><TD valign=top><A HREF="rlman.html#SEC47">2.6.3 Completion Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX352">rl_basic_word_break_characters</A></TD><TD valign=top><A HREF="rlman.html#SEC47">2.6.3 Completion Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX261"><CODE>rl_begin_undo_group</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC34">2.4.5 Allowing Undoing</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX237"><CODE>rl_bind_key</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC32">2.4.3 Binding Keys</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX239"><CODE>rl_bind_key_if_unbound</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC32">2.4.3 Binding Keys</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX240"><CODE>rl_bind_key_if_unbound_in_map</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC32">2.4.3 Binding Keys</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX238"><CODE>rl_bind_key_in_map</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC32">2.4.3 Binding Keys</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX245"><CODE>rl_bind_keyseq</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC32">2.4.3 Binding Keys</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX248"><CODE>rl_bind_keyseq_if_unbound</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC32">2.4.3 Binding Keys</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX249"><CODE>rl_bind_keyseq_if_unbound_in_map</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC32">2.4.3 Binding Keys</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX246"><CODE>rl_bind_keyseq_in_map</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC32">2.4.3 Binding Keys</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX221">rl_binding_keymap</A></TD><TD valign=top><A HREF="rlman.html#SEC28">2.3 Readline Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX318"><CODE>rl_callback_handler_install</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC41">2.4.12 Alternate Interface</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX320"><CODE>rl_callback_handler_remove</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC41">2.4.12 Alternate Interface</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX319"><CODE>rl_callback_read_char</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC41">2.4.12 Alternate Interface</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX321">rl_catch_signals</A></TD><TD valign=top><A HREF="rlman.html#SEC43">2.5 Readline Signal Handling</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX322">rl_catch_sigwinch</A></TD><TD valign=top><A HREF="rlman.html#SEC43">2.5 Readline Signal Handling</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX347">rl_char_is_quoted_p</A></TD><TD valign=top><A HREF="rlman.html#SEC47">2.6.3 Completion Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX323"><CODE>rl_cleanup_after_signal</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC43">2.5 Readline Signal Handling</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX275"><CODE>rl_clear_message</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC35">2.4.6 Redisplay</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX289"><CODE>rl_clear_pending_input</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC37">2.4.8 Character Input</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX332"><CODE>rl_clear_signals</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC43">2.5 Readline Signal Handling</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX333"><CODE>rl_complete</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC45">2.6.1 How Completing Works</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX336"><CODE>rl_complete</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC46">2.6.2 Completion Functions</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX335"><CODE>rl_complete_internal</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC46">2.6.2 Completion Functions</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX356">rl_completer_quote_characters</A></TD><TD valign=top><A HREF="rlman.html#SEC47">2.6.3 Completion Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX354">rl_completer_word_break_characters</A></TD><TD valign=top><A HREF="rlman.html#SEC47">2.6.3 Completion Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX360">rl_completion_append_character</A></TD><TD valign=top><A HREF="rlman.html#SEC47">2.6.3 Completion Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX351">rl_completion_display_matches_hook</A></TD><TD valign=top><A HREF="rlman.html#SEC47">2.6.3 Completion Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX334">rl_completion_entry_function</A></TD><TD valign=top><A HREF="rlman.html#SEC45">2.6.1 How Completing Works</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX343">rl_completion_entry_function</A></TD><TD valign=top><A HREF="rlman.html#SEC47">2.6.3 Completion Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX364">rl_completion_found_quote</A></TD><TD valign=top><A HREF="rlman.html#SEC47">2.6.3 Completion Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX372">rl_completion_invoking_key</A></TD><TD valign=top><A HREF="rlman.html#SEC47">2.6.3 Completion Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX365">rl_completion_mark_symlink_dirs</A></TD><TD valign=top><A HREF="rlman.html#SEC47">2.6.3 Completion Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX340"><CODE>rl_completion_matches</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC46">2.6.2 Completion Functions</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX339"><CODE>rl_completion_mode</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC46">2.6.2 Completion Functions</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX359">rl_completion_query_items</A></TD><TD valign=top><A HREF="rlman.html#SEC47">2.6.3 Completion Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX362">rl_completion_quote_character</A></TD><TD valign=top><A HREF="rlman.html#SEC47">2.6.3 Completion Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX361">rl_completion_suppress_append</A></TD><TD valign=top><A HREF="rlman.html#SEC47">2.6.3 Completion Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX363">rl_completion_suppress_quote</A></TD><TD valign=top><A HREF="rlman.html#SEC47">2.6.3 Completion Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX371">rl_completion_type</A></TD><TD valign=top><A HREF="rlman.html#SEC47">2.6.3 Completion Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX355">rl_completion_word_break_hook</A></TD><TD valign=top><A HREF="rlman.html#SEC47">2.6.3 Completion Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX229"><CODE>rl_copy_keymap</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC31">2.4.2 Selecting a Keymap</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX282"><CODE>rl_copy_text</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC36">2.4.7 Modifying Text</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX272"><CODE>rl_crlf</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC35">2.4.6 Redisplay</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX281"><CODE>rl_delete_text</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC36">2.4.7 Modifying Text</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX219">rl_deprep_term_function</A></TD><TD valign=top><A HREF="rlman.html#SEC28">2.3 Readline Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX292"><CODE>rl_deprep_terminal</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC38">2.4.9 Terminal Management</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX302"><CODE>rl_ding</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC39">2.4.10 Utility Functions</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX349">rl_directory_completion_hook</A></TD><TD valign=top><A HREF="rlman.html#SEC47">2.6.3 Completion Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX231"><CODE>rl_discard_keymap</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC31">2.4.2 Selecting a Keymap</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX199">rl_dispatching</A></TD><TD valign=top><A HREF="rlman.html#SEC28">2.3 Readline Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX304"><CODE>rl_display_match_list</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC39">2.4.10 Utility Functions</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX202">rl_display_prompt</A></TD><TD valign=top><A HREF="rlman.html#SEC28">2.3 Readline Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX265"><CODE>rl_do_undo</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC34">2.4.5 Allowing Undoing</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX196">rl_done</A></TD><TD valign=top><A HREF="rlman.html#SEC28">2.3 Readline Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX326"><CODE>rl_echo_signal_char</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC43">2.5 Readline Signal Handling</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX226">rl_editing_mode</A></TD><TD valign=top><A HREF="rlman.html#SEC28">2.3 Readline Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX194">rl_end</A></TD><TD valign=top><A HREF="rlman.html#SEC28">2.3 Readline Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX262"><CODE>rl_end_undo_group</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC34">2.4.5 Allowing Undoing</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX200">rl_erase_empty_line</A></TD><TD valign=top><A HREF="rlman.html#SEC28">2.3 Readline Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX215">rl_event_hook</A></TD><TD valign=top><A HREF="rlman.html#SEC28">2.3 Readline Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX288"><CODE>rl_execute_next</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC37">2.4.8 Character Input</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX220">rl_executing_keymap</A></TD><TD valign=top><A HREF="rlman.html#SEC28">2.3 Readline Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX222">rl_executing_macro</A></TD><TD valign=top><A HREF="rlman.html#SEC28">2.3 Readline Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX278"><CODE>rl_expand_prompt</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC35">2.4.6 Redisplay</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX224">rl_explicit_arg</A></TD><TD valign=top><A HREF="rlman.html#SEC28">2.3 Readline Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX300"><CODE>rl_extend_line_buffer</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC39">2.4.10 Utility Functions</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX367">rl_filename_completion_desired</A></TD><TD valign=top><A HREF="rlman.html#SEC47">2.6.3 Completion Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX341"><CODE>rl_filename_completion_function</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC46">2.6.2 Completion Functions</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX346">rl_filename_dequoting_function</A></TD><TD valign=top><A HREF="rlman.html#SEC47">2.6.3 Completion Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX357">rl_filename_quote_characters</A></TD><TD valign=top><A HREF="rlman.html#SEC47">2.6.3 Completion Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX368">rl_filename_quoting_desired</A></TD><TD valign=top><A HREF="rlman.html#SEC47">2.6.3 Completion Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX345">rl_filename_quoting_function</A></TD><TD valign=top><A HREF="rlman.html#SEC47">2.6.3 Completion Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX350">rl_filename_rewrite_hook</A></TD><TD valign=top><A HREF="rlman.html#SEC47">2.6.3 Completion Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX268"><CODE>rl_forced_update_display</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC35">2.4.6 Redisplay</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX298"><CODE>rl_free</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC39">2.4.10 Utility Functions</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX232"><CODE>rl_free_keymap</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC31">2.4.2 Selecting a Keymap</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX324"><CODE>rl_free_line_state</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC43">2.5 Readline Signal Handling</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX264"><CODE>rl_free_undo_list</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC34">2.4.5 Allowing Undoing</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX257"><CODE>rl_function_dumper</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC33">2.4.4 Associating Function Names and Bindings</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX254"><CODE>rl_function_of_keyseq</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC33">2.4.4 Associating Function Names and Bindings</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX259"><CODE>rl_funmap_names</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC33">2.4.4 Associating Function Names and Bindings</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX250"><CODE>rl_generic_bind</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC32">2.4.3 Binding Keys</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX233"><CODE>rl_get_keymap</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC31">2.4.2 Selecting a Keymap</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX235"><CODE>rl_get_keymap_by_name</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC31">2.4.2 Selecting a Keymap</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX236"><CODE>rl_get_keymap_name</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC31">2.4.2 Selecting a Keymap</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX329"><CODE>rl_get_screen_size</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC43">2.5 Readline Signal Handling</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX317"><CODE>rl_get_termcap</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC40">2.4.11 Miscellaneous Functions</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX286"><CODE>rl_getc</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC37">2.4.8 Character Input</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX216">rl_getc_function</A></TD><TD valign=top><A HREF="rlman.html#SEC28">2.3 Readline Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX206">rl_gnu_readline_p</A></TD><TD valign=top><A HREF="rlman.html#SEC28">2.3 Readline Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX366">rl_ignore_completion_duplicates</A></TD><TD valign=top><A HREF="rlman.html#SEC47">2.6.3 Completion Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX348">rl_ignore_some_completions_function</A></TD><TD valign=top><A HREF="rlman.html#SEC47">2.6.3 Completion Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX373">rl_inhibit_completion</A></TD><TD valign=top><A HREF="rlman.html#SEC47">2.6.3 Completion Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX301"><CODE>rl_initialize</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC39">2.4.10 Utility Functions</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX338"><CODE>rl_insert_completions</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC46">2.6.2 Completion Functions</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX280"><CODE>rl_insert_text</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC36">2.4.7 Modifying Text</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX209">rl_instream</A></TD><TD valign=top><A HREF="rlman.html#SEC28">2.3 Readline Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX255"><CODE>rl_invoking_keyseqs</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC33">2.4.4 Associating Function Names and Bindings</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX256"><CODE>rl_invoking_keyseqs_in_map</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC33">2.4.4 Associating Function Names and Bindings</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX283"><CODE>rl_kill_text</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC36">2.4.7 Modifying Text</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX212">rl_last_func</A></TD><TD valign=top><A HREF="rlman.html#SEC28">2.3 Readline Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX204">rl_library_version</A></TD><TD valign=top><A HREF="rlman.html#SEC28">2.3 Readline Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX192">rl_line_buffer</A></TD><TD valign=top><A HREF="rlman.html#SEC28">2.3 Readline Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX258"><CODE>rl_list_funmap_names</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC33">2.4.4 Associating Function Names and Bindings</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX311"><CODE>rl_macro_bind</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC40">2.4.11 Miscellaneous Functions</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX312"><CODE>rl_macro_dumper</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC40">2.4.11 Miscellaneous Functions</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX228"><CODE>rl_make_bare_keymap</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC31">2.4.2 Selecting a Keymap</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX230"><CODE>rl_make_keymap</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC31">2.4.2 Selecting a Keymap</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX195">rl_mark</A></TD><TD valign=top><A HREF="rlman.html#SEC28">2.3 Readline Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX274"><CODE>rl_message</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC35">2.4.6 Redisplay</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX266"><CODE>rl_modifying</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC34">2.4.5 Allowing Undoing</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX253"><CODE>rl_named_function</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC33">2.4.4 Associating Function Names and Bindings</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX197">rl_num_chars_to_read</A></TD><TD valign=top><A HREF="rlman.html#SEC28">2.3 Readline Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX225">rl_numeric_arg</A></TD><TD valign=top><A HREF="rlman.html#SEC28">2.3 Readline Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX269"><CODE>rl_on_new_line</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC35">2.4.6 Redisplay</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX270"><CODE>rl_on_new_line_with_prompt</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC35">2.4.6 Redisplay</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX210">rl_outstream</A></TD><TD valign=top><A HREF="rlman.html#SEC28">2.3 Readline Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX251"><CODE>rl_parse_and_bind</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC32">2.4.3 Binding Keys</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX198">rl_pending_input</A></TD><TD valign=top><A HREF="rlman.html#SEC28">2.3 Readline Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX193">rl_point</A></TD><TD valign=top><A HREF="rlman.html#SEC28">2.3 Readline Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX337"><CODE>rl_possible_completions</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC46">2.6.2 Completion Functions</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX214">rl_pre_input_hook</A></TD><TD valign=top><A HREF="rlman.html#SEC28">2.3 Readline Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX211">rl_prefer_env_winsize</A></TD><TD valign=top><A HREF="rlman.html#SEC28">2.3 Readline Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX218">rl_prep_term_function</A></TD><TD valign=top><A HREF="rlman.html#SEC28">2.3 Readline Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX291"><CODE>rl_prep_terminal</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC38">2.4.9 Terminal Management</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX201">rl_prompt</A></TD><TD valign=top><A HREF="rlman.html#SEC28">2.3 Readline Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX284"><CODE>rl_push_macro_input</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC36">2.4.7 Modifying Text</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX252"><CODE>rl_read_init_file</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC32">2.4.3 Binding Keys</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX285"><CODE>rl_read_key</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC37">2.4.8 Character Input</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX208">rl_readline_name</A></TD><TD valign=top><A HREF="rlman.html#SEC28">2.3 Readline Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX223">rl_readline_state</A></TD><TD valign=top><A HREF="rlman.html#SEC28">2.3 Readline Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX205">rl_readline_version</A></TD><TD valign=top><A HREF="rlman.html#SEC28">2.3 Readline Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX267"><CODE>rl_redisplay</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC35">2.4.6 Redisplay</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX217">rl_redisplay_function</A></TD><TD valign=top><A HREF="rlman.html#SEC28">2.3 Readline Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX299"><CODE>rl_replace_line</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC39">2.4.10 Utility Functions</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX325"><CODE>rl_reset_after_signal</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC43">2.5 Readline Signal Handling</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX271"><CODE>rl_reset_line_state</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC35">2.4.6 Redisplay</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX330"><CODE>rl_reset_screen_size</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC43">2.5 Readline Signal Handling</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX295"><CODE>rl_reset_terminal</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC38">2.4.9 Terminal Management</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX327"><CODE>rl_resize_terminal</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC43">2.5 Readline Signal Handling</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX277"><CODE>rl_restore_prompt</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC35">2.4.6 Redisplay</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX297"><CODE>rl_restore_state</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC39">2.4.10 Utility Functions</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX276"><CODE>rl_save_prompt</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC35">2.4.6 Redisplay</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX296"><CODE>rl_save_state</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC39">2.4.10 Utility Functions</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX247"><CODE>rl_set_key</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC32">2.4.3 Binding Keys</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX290"><CODE>rl_set_keyboard_input_timeout</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC37">2.4.8 Character Input</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX234"><CODE>rl_set_keymap</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC31">2.4.2 Selecting a Keymap</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX316"><CODE>rl_set_paren_blink_timeout</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC40">2.4.11 Miscellaneous Functions</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX279"><CODE>rl_set_prompt</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC35">2.4.6 Redisplay</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX328"><CODE>rl_set_screen_size</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC43">2.5 Readline Signal Handling</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX331"><CODE>rl_set_signals</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC43">2.5 Readline Signal Handling</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX273"><CODE>rl_show_char</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC35">2.4.6 Redisplay</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX370">rl_sort_completion_matches</A></TD><TD valign=top><A HREF="rlman.html#SEC47">2.6.3 Completion Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX358">rl_special_prefixes</A></TD><TD valign=top><A HREF="rlman.html#SEC47">2.6.3 Completion Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX213">rl_startup_hook</A></TD><TD valign=top><A HREF="rlman.html#SEC28">2.3 Readline Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX287"><CODE>rl_stuff_char</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC37">2.4.8 Character Input</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX207">rl_terminal_name</A></TD><TD valign=top><A HREF="rlman.html#SEC28">2.3 Readline Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX293"><CODE>rl_tty_set_default_bindings</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC38">2.4.9 Terminal Management</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX294"><CODE>rl_tty_unset_default_bindings</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC38">2.4.9 Terminal Management</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX244"><CODE>rl_unbind_command_in_map</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC32">2.4.3 Binding Keys</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX243"><CODE>rl_unbind_function_in_map</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC32">2.4.3 Binding Keys</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX241"><CODE>rl_unbind_key</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC32">2.4.3 Binding Keys</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX242"><CODE>rl_unbind_key_in_map</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC32">2.4.3 Binding Keys</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX342"><CODE>rl_username_completion_function</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC46">2.6.2 Completion Functions</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX313"><CODE>rl_variable_bind</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC40">2.4.11 Miscellaneous Functions</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX315"><CODE>rl_variable_dumper</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC40">2.4.11 Miscellaneous Functions</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX314"><CODE>rl_variable_value</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC40">2.4.11 Miscellaneous Functions</A></TD></TR>
-<TR><TD COLSPAN=3> <HR></TD></TR>
-<TR><TH><A NAME="fn_S"></A>S</TH><TD></TD><TD></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX88"><CODE>self-insert (a, b, A, 1, !, &#60;small&#62;...&#60;/small&#62;)</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC16">1.4.3 Commands For Changing Text</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX89"><CODE>self-insert (a, b, A, 1, !, &#60;small&#62;...&#60;/small&#62;)</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC16">1.4.3 Commands For Changing Text</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX168"><CODE>set-mark (C-@)</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX169"><CODE>set-mark (C-@)</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX32">show-all-if-ambiguous</A></TD><TD valign=top><A HREF="rlman.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX33">show-all-if-unmodified</A></TD><TD valign=top><A HREF="rlman.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX34">skip-completed-text</A></TD><TD valign=top><A HREF="rlman.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX176"><CODE>skip-csi-sequence ()</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX177"><CODE>skip-csi-sequence ()</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX148"><CODE>start-kbd-macro (C-x ()</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC20">1.4.7 Keyboard Macros</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX149"><CODE>start-kbd-macro (C-x ()</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC20">1.4.7 Keyboard Macros</A></TD></TR>
-<TR><TD COLSPAN=3> <HR></TD></TR>
-<TR><TH><A NAME="fn_T"></A>T</TH><TD></TD><TD></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX86"><CODE>tab-insert (M-<KBD>TAB</KBD>)</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC16">1.4.3 Commands For Changing Text</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX87"><CODE>tab-insert (M-<KBD>TAB</KBD>)</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC16">1.4.3 Commands For Changing Text</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX166"><CODE>tilde-expand (M-~)</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX167"><CODE>tilde-expand (M-~)</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX90"><CODE>transpose-chars (C-t)</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC16">1.4.3 Commands For Changing Text</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX91"><CODE>transpose-chars (C-t)</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC16">1.4.3 Commands For Changing Text</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX92"><CODE>transpose-words (M-t)</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC16">1.4.3 Commands For Changing Text</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX93"><CODE>transpose-words (M-t)</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC16">1.4.3 Commands For Changing Text</A></TD></TR>
-<TR><TD COLSPAN=3> <HR></TD></TR>
-<TR><TH><A NAME="fn_U"></A>U</TH><TD></TD><TD></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX162"><CODE>undo (C-_ or C-x C-u)</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX163"><CODE>undo (C-_ or C-x C-u)</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX134"><CODE>universal-argument ()</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC18">1.4.5 Specifying Numeric Arguments</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX135"><CODE>universal-argument ()</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC18">1.4.5 Specifying Numeric Arguments</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX116"><CODE>unix-filename-rubout ()</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX117"><CODE>unix-filename-rubout ()</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX106"><CODE>unix-line-discard (C-u)</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX107"><CODE>unix-line-discard (C-u)</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX114"><CODE>unix-word-rubout (C-w)</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX115"><CODE>unix-word-rubout (C-w)</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX94"><CODE>upcase-word (M-u)</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC16">1.4.3 Commands For Changing Text</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX95"><CODE>upcase-word (M-u)</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC16">1.4.3 Commands For Changing Text</A></TD></TR>
-<TR><TD COLSPAN=3> <HR></TD></TR>
-<TR><TH><A NAME="fn_V"></A>V</TH><TD></TD><TD></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX188"><CODE>vi-editing-mode (M-C-j)</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX189"><CODE>vi-editing-mode (M-C-j)</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX35">visible-stats</A></TD><TD valign=top><A HREF="rlman.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
-<TR><TD COLSPAN=3> <HR></TD></TR>
-<TR><TH><A NAME="fn_Y"></A>Y</TH><TD></TD><TD></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX128"><CODE>yank (C-y)</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX129"><CODE>yank (C-y)</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX76"><CODE>yank-last-arg (M-. or M-_)</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX77"><CODE>yank-last-arg (M-. or M-_)</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX74"><CODE>yank-nth-arg (M-C-y)</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX75"><CODE>yank-nth-arg (M-C-y)</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX130"><CODE>yank-pop (M-y)</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX131"><CODE>yank-pop (M-y)</CODE></A></TD><TD valign=top><A HREF="rlman.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
-<TR><TD COLSPAN=3> <HR></TD></TR>
-</TABLE><P></P><table><tr><th valign=top>Jump to: &nbsp; </th><td><A HREF="readline.html#fn__" style="text-decoration:none"><b>_</b></A>
- &nbsp; 
-<BR>
-<A HREF="readline.html#fn_A" style="text-decoration:none"><b>A</b></A>
- &nbsp; 
-<A HREF="readline.html#fn_B" style="text-decoration:none"><b>B</b></A>
- &nbsp; 
-<A HREF="readline.html#fn_C" style="text-decoration:none"><b>C</b></A>
- &nbsp; 
-<A HREF="readline.html#fn_D" style="text-decoration:none"><b>D</b></A>
- &nbsp; 
-<A HREF="readline.html#fn_E" style="text-decoration:none"><b>E</b></A>
- &nbsp; 
-<A HREF="readline.html#fn_F" style="text-decoration:none"><b>F</b></A>
- &nbsp; 
-<A HREF="readline.html#fn_H" style="text-decoration:none"><b>H</b></A>
- &nbsp; 
-<A HREF="readline.html#fn_I" style="text-decoration:none"><b>I</b></A>
- &nbsp; 
-<A HREF="readline.html#fn_K" style="text-decoration:none"><b>K</b></A>
- &nbsp; 
-<A HREF="readline.html#fn_M" style="text-decoration:none"><b>M</b></A>
- &nbsp; 
-<A HREF="readline.html#fn_N" style="text-decoration:none"><b>N</b></A>
- &nbsp; 
-<A HREF="readline.html#fn_O" style="text-decoration:none"><b>O</b></A>
- &nbsp; 
-<A HREF="readline.html#fn_P" style="text-decoration:none"><b>P</b></A>
- &nbsp; 
-<A HREF="readline.html#fn_Q" style="text-decoration:none"><b>Q</b></A>
- &nbsp; 
-<A HREF="readline.html#fn_R" style="text-decoration:none"><b>R</b></A>
- &nbsp; 
-<A HREF="readline.html#fn_S" style="text-decoration:none"><b>S</b></A>
- &nbsp; 
-<A HREF="readline.html#fn_T" style="text-decoration:none"><b>T</b></A>
- &nbsp; 
-<A HREF="readline.html#fn_U" style="text-decoration:none"><b>U</b></A>
- &nbsp; 
-<A HREF="readline.html#fn_V" style="text-decoration:none"><b>V</b></A>
- &nbsp; 
-<A HREF="readline.html#fn_Y" style="text-decoration:none"><b>Y</b></A>
- &nbsp; 
-</td></tr></table><br><P>
-
-<HR SIZE="6">
-<A NAME="SEC_Contents"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC51">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H1>Table of Contents</H1>
-<UL>
-<A NAME="TOC1" HREF="readline.html#SEC1">1. Command Line Editing</A>
-<BR>
-<UL>
-<A NAME="TOC2" HREF="readline.html#SEC2">1.1 Introduction to Line Editing</A>
-<BR>
-<A NAME="TOC3" HREF="readline.html#SEC3">1.2 Readline Interaction</A>
-<BR>
-<UL>
-<A NAME="TOC4" HREF="readline.html#SEC4">1.2.1 Readline Bare Essentials</A>
-<BR>
-<A NAME="TOC5" HREF="readline.html#SEC5">1.2.2 Readline Movement Commands</A>
-<BR>
-<A NAME="TOC6" HREF="readline.html#SEC6">1.2.3 Readline Killing Commands</A>
-<BR>
-<A NAME="TOC7" HREF="readline.html#SEC7">1.2.4 Readline Arguments</A>
-<BR>
-<A NAME="TOC8" HREF="readline.html#SEC8">1.2.5 Searching for Commands in the History</A>
-<BR>
-</UL>
-<A NAME="TOC9" HREF="readline.html#SEC9">1.3 Readline Init File</A>
-<BR>
-<UL>
-<A NAME="TOC10" HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A>
-<BR>
-<A NAME="TOC11" HREF="readline.html#SEC11">1.3.2 Conditional Init Constructs</A>
-<BR>
-<A NAME="TOC12" HREF="readline.html#SEC12">1.3.3 Sample Init File</A>
-<BR>
-</UL>
-<A NAME="TOC13" HREF="readline.html#SEC13">1.4 Bindable Readline Commands</A>
-<BR>
-<UL>
-<A NAME="TOC14" HREF="readline.html#SEC14">1.4.1 Commands For Moving</A>
-<BR>
-<A NAME="TOC15" HREF="readline.html#SEC15">1.4.2 Commands For Manipulating The History</A>
-<BR>
-<A NAME="TOC16" HREF="readline.html#SEC16">1.4.3 Commands For Changing Text</A>
-<BR>
-<A NAME="TOC17" HREF="readline.html#SEC17">1.4.4 Killing And Yanking</A>
-<BR>
-<A NAME="TOC18" HREF="readline.html#SEC18">1.4.5 Specifying Numeric Arguments</A>
-<BR>
-<A NAME="TOC19" HREF="readline.html#SEC19">1.4.6 Letting Readline Type For You</A>
-<BR>
-<A NAME="TOC20" HREF="readline.html#SEC20">1.4.7 Keyboard Macros</A>
-<BR>
-<A NAME="TOC21" HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A>
-<BR>
-</UL>
-<A NAME="TOC22" HREF="readline.html#SEC22">1.5 Readline vi Mode</A>
-<BR>
-</UL>
-<A NAME="TOC23" HREF="readline.html#SEC23">2. Programming with GNU Readline</A>
-<BR>
-<UL>
-<A NAME="TOC24" HREF="readline.html#SEC24">2.1 Basic Behavior</A>
-<BR>
-<A NAME="TOC25" HREF="readline.html#SEC25">2.2 Custom Functions</A>
-<BR>
-<UL>
-<A NAME="TOC26" HREF="readline.html#SEC26">2.2.1 Readline Typedefs</A>
-<BR>
-<A NAME="TOC27" HREF="readline.html#SEC27">2.2.2 Writing a New Function</A>
-<BR>
-</UL>
-<A NAME="TOC28" HREF="readline.html#SEC28">2.3 Readline Variables</A>
-<BR>
-<A NAME="TOC29" HREF="readline.html#SEC29">2.4 Readline Convenience Functions</A>
-<BR>
-<UL>
-<A NAME="TOC30" HREF="readline.html#SEC30">2.4.1 Naming a Function</A>
-<BR>
-<A NAME="TOC31" HREF="readline.html#SEC31">2.4.2 Selecting a Keymap</A>
-<BR>
-<A NAME="TOC32" HREF="readline.html#SEC32">2.4.3 Binding Keys</A>
-<BR>
-<A NAME="TOC33" HREF="readline.html#SEC33">2.4.4 Associating Function Names and Bindings</A>
-<BR>
-<A NAME="TOC34" HREF="readline.html#SEC34">2.4.5 Allowing Undoing</A>
-<BR>
-<A NAME="TOC35" HREF="readline.html#SEC35">2.4.6 Redisplay</A>
-<BR>
-<A NAME="TOC36" HREF="readline.html#SEC36">2.4.7 Modifying Text</A>
-<BR>
-<A NAME="TOC37" HREF="readline.html#SEC37">2.4.8 Character Input</A>
-<BR>
-<A NAME="TOC38" HREF="readline.html#SEC38">2.4.9 Terminal Management</A>
-<BR>
-<A NAME="TOC39" HREF="readline.html#SEC39">2.4.10 Utility Functions</A>
-<BR>
-<A NAME="TOC40" HREF="readline.html#SEC40">2.4.11 Miscellaneous Functions</A>
-<BR>
-<A NAME="TOC41" HREF="readline.html#SEC41">2.4.12 Alternate Interface</A>
-<BR>
-<A NAME="TOC42" HREF="readline.html#SEC42">2.4.13 A Readline Example</A>
-<BR>
-</UL>
-<A NAME="TOC43" HREF="readline.html#SEC43">2.5 Readline Signal Handling</A>
-<BR>
-<A NAME="TOC44" HREF="readline.html#SEC44">2.6 Custom Completers</A>
-<BR>
-<UL>
-<A NAME="TOC45" HREF="readline.html#SEC45">2.6.1 How Completing Works</A>
-<BR>
-<A NAME="TOC46" HREF="readline.html#SEC46">2.6.2 Completion Functions</A>
-<BR>
-<A NAME="TOC47" HREF="readline.html#SEC47">2.6.3 Completion Variables</A>
-<BR>
-<A NAME="TOC48" HREF="readline.html#SEC48">2.6.4 A Short Completion Example</A>
-<BR>
-</UL>
-</UL>
-<A NAME="TOC49" HREF="readline.html#SEC49">A. GNU Free Documentation License</A>
-<BR>
-<A NAME="TOC51" HREF="readline.html#SEC51">Concept Index</A>
-<BR>
-<A NAME="TOC52" HREF="readline.html#SEC52">Function and Variable Index</A>
-<BR>
-</UL>
-<HR SIZE=1>
-<A NAME="SEC_OVERVIEW"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC51">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H1>Short Table of Contents</H1>
-<BLOCKQUOTE>
-<A NAME="TOC1" HREF="readline.html#SEC1">1. Command Line Editing</A>
-<BR>
-<A NAME="TOC23" HREF="readline.html#SEC23">2. Programming with GNU Readline</A>
-<BR>
-<A NAME="TOC49" HREF="readline.html#SEC49">A. GNU Free Documentation License</A>
-<BR>
-<A NAME="TOC51" HREF="readline.html#SEC51">Concept Index</A>
-<BR>
-<A NAME="TOC52" HREF="readline.html#SEC52">Function and Variable Index</A>
-<BR>
-
-</BLOCKQUOTE>
-<HR SIZE=1>
-<A NAME="SEC_About"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC51">Index</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H1>About this document</H1>
-This document was generated by <I>Chet Ramey</I> on <I>February, 8  2011</I>
-using <A HREF="http://www.mathematik.uni-kl.de/~obachman/Texi2html
-"><I>texi2html</I></A>
-<P></P>  
-The buttons in the navigation panels have the following meaning:
-<P></P>
-<table border = "1">
-<TR>
-<TH> Button </TH>
-<TH> Name </TH>
-<TH> Go to </TH>
-<TH> From 1.2.3 go to</TH>
-</TR>
-<TR>
-<TD ALIGN="CENTER">
- [ &lt; ] </TD>
-<TD ALIGN="CENTER">
-Back
-</TD>
-<TD>
-previous section in reading order
-</TD>
-<TD>
-1.2.2
-</TD>
-</TR>
-<TR>
-<TD ALIGN="CENTER">
- [ &gt; ] </TD>
-<TD ALIGN="CENTER">
-Forward
-</TD>
-<TD>
-next section in reading order
-</TD>
-<TD>
-1.2.4
-</TD>
-</TR>
-<TR>
-<TD ALIGN="CENTER">
- [ &lt;&lt; ] </TD>
-<TD ALIGN="CENTER">
-FastBack
-</TD>
-<TD>
-previous or up-and-previous section 
-</TD>
-<TD>
-1.1
-</TD>
-</TR>
-<TR>
-<TD ALIGN="CENTER">
- [ Up ] </TD>
-<TD ALIGN="CENTER">
-Up
-</TD>
-<TD>
-up section
-</TD>
-<TD>
-1.2
-</TD>
-</TR>
-<TR>
-<TD ALIGN="CENTER">
- [ &gt;&gt; ] </TD>
-<TD ALIGN="CENTER">
-FastForward
-</TD>
-<TD>
-next or up-and-next section
-</TD>
-<TD>
-1.3
-</TD>
-</TR>
-<TR>
-<TD ALIGN="CENTER">
- [Top] </TD>
-<TD ALIGN="CENTER">
-Top
-</TD>
-<TD>
-cover (top) of document
-</TD>
-<TD>
- &nbsp; 
-</TD>
-</TR>
-<TR>
-<TD ALIGN="CENTER">
- [Contents] </TD>
-<TD ALIGN="CENTER">
-Contents
-</TD>
-<TD>
-table of contents
-</TD>
-<TD>
- &nbsp; 
-</TD>
-</TR>
-<TR>
-<TD ALIGN="CENTER">
- [Index] </TD>
-<TD ALIGN="CENTER">
-Index
-</TD>
-<TD>
-concept index
-</TD>
-<TD>
- &nbsp; 
-</TD>
-</TR>
-<TR>
-<TD ALIGN="CENTER">
- [ ? ] </TD>
-<TD ALIGN="CENTER">
-About
-</TD>
-<TD>
-this page
-</TD>
-<TD>
- &nbsp; 
-</TD>
-</TR>
-</TABLE>
-<P></P>
-where the <STRONG> Example </STRONG> assumes that the current position 
-is at <STRONG> Subsubsection One-Two-Three </STRONG> of a document of 
-the following structure:
-<UL>
-<LI> 1. Section One  </LI>
-<UL>
-<LI>1.1 Subsection One-One</LI>
-<UL>
-<LI> ... </LI>
-</UL>
-<LI>1.2 Subsection One-Two</LI>
-<UL>
-<LI>1.2.1 Subsubsection One-Two-One
-</LI><LI>1.2.2 Subsubsection One-Two-Two
-</LI><LI>1.2.3 Subsubsection One-Two-Three &nbsp; &nbsp; <STRONG>
-&lt;== Current Position </STRONG>
-</LI><LI>1.2.4 Subsubsection One-Two-Four
-</LI></UL>
-<LI>1.3 Subsection One-Three</LI>
-<UL>
-<LI> ... </LI>
-</UL>
-<LI>1.4 Subsection One-Four</LI>
-</UL>
-</UL>
-
-<HR SIZE=1>
-<BR>  
-<FONT SIZE="-1">
-This document was generated
-by <I>Chet Ramey</I> on <I>February, 8  2011</I>
-using <A HREF="http://www.mathematik.uni-kl.de/~obachman/Texi2html
-"><I>texi2html</I></A>
-
-</BODY>
-</HTML>
diff --git a/lib/readline/doc/readline.info b/lib/readline/doc/readline.info
deleted file mode 100644 (file)
index 11c6371..0000000
+++ /dev/null
@@ -1,4676 +0,0 @@
-This is readline.info, produced by makeinfo version 4.13 from
-./rlman.texi.
-
-This manual describes the GNU Readline Library (version 6.2, September
-6 2010), a library which aids in the consistency of user interface
-across discrete programs which provide a command line interface.
-
-   Copyright (C) 1988-2011 Free Software Foundation, Inc.
-
-   Permission is granted to make and distribute verbatim copies of this
-manual provided the copyright notice and this permission notice are
-preserved on all copies.
-
-     Permission is granted to copy, distribute and/or modify this
-     document under the terms of the GNU Free Documentation License,
-     Version 1.3 or any later version published by the Free Software
-     Foundation; with no Invariant Sections, with the Front-Cover texts
-     being "A GNU Manual", and with the Back-Cover Texts as in (a)
-     below.  A copy of the license is included in the section entitled
-     "GNU Free Documentation License".
-
-     (a) The FSF's Back-Cover Text is: You are free to copy and modify
-     this GNU manual.  Buying copies from GNU Press supports the FSF in
-     developing GNU and promoting software freedom."
-
-
-INFO-DIR-SECTION Libraries
-START-INFO-DIR-ENTRY
-* Readline: (readline).       The GNU readline library API.
-END-INFO-DIR-ENTRY
-
-\1f
-File: readline.info,  Node: Top,  Next: Command Line Editing,  Up: (dir)
-
-GNU Readline Library
-********************
-
-This document describes the GNU Readline Library, a utility which aids
-in the consistency of user interface across discrete programs which
-provide a command line interface.
-
-* Menu:
-
-* Command Line Editing::          GNU Readline User's Manual.
-* Programming with GNU Readline::  GNU Readline Programmer's Manual.
-* GNU Free Documentation License::     License for copying this manual.
-* Concept Index::                 Index of concepts described in this manual.
-* Function and Variable Index::           Index of externally visible functions
-                                  and variables.
-
-\1f
-File: readline.info,  Node: Command Line Editing,  Next: Programming with GNU Readline,  Prev: Top,  Up: Top
-
-1 Command Line Editing
-**********************
-
-This chapter describes the basic features of the GNU command line
-editing interface.
-
-* Menu:
-
-* Introduction and Notation::  Notation used in this text.
-* Readline Interaction::       The minimum set of commands for editing a line.
-* Readline Init File::         Customizing Readline from a user's view.
-* Bindable Readline Commands:: A description of most of the Readline commands
-                               available for binding
-* Readline vi Mode::           A short description of how to make Readline
-                               behave like the vi editor.
-
-\1f
-File: readline.info,  Node: Introduction and Notation,  Next: Readline Interaction,  Up: Command Line Editing
-
-1.1 Introduction to Line Editing
-================================
-
-The following paragraphs describe the notation used to represent
-keystrokes.
-
-   The text `C-k' is read as `Control-K' and describes the character
-produced when the <k> key is pressed while the Control key is depressed.
-
-   The text `M-k' is read as `Meta-K' and describes the character
-produced when the Meta key (if you have one) is depressed, and the <k>
-key is pressed.  The Meta key is labeled <ALT> on many keyboards.  On
-keyboards with two keys labeled <ALT> (usually to either side of the
-space bar), the <ALT> on the left side is generally set to work as a
-Meta key.  The <ALT> key on the right may also be configured to work as
-a Meta key or may be configured as some other modifier, such as a
-Compose key for typing accented characters.
-
-   If you do not have a Meta or <ALT> key, or another key working as a
-Meta key, the identical keystroke can be generated by typing <ESC>
-_first_, and then typing <k>.  Either process is known as "metafying"
-the <k> key.
-
-   The text `M-C-k' is read as `Meta-Control-k' and describes the
-character produced by "metafying" `C-k'.
-
-   In addition, several keys have their own names.  Specifically,
-<DEL>, <ESC>, <LFD>, <SPC>, <RET>, and <TAB> all stand for themselves
-when seen in this text, or in an init file (*note Readline Init File::).
-If your keyboard lacks a <LFD> key, typing <C-j> will produce the
-desired character.  The <RET> key may be labeled <Return> or <Enter> on
-some keyboards.
-
-\1f
-File: readline.info,  Node: Readline Interaction,  Next: Readline Init File,  Prev: Introduction and Notation,  Up: Command Line Editing
-
-1.2 Readline Interaction
-========================
-
-Often during an interactive session you type in a long line of text,
-only to notice that the first word on the line is misspelled.  The
-Readline library gives you a set of commands for manipulating the text
-as you type it in, allowing you to just fix your typo, and not forcing
-you to retype the majority of the line.  Using these editing commands,
-you move the cursor to the place that needs correction, and delete or
-insert the text of the corrections.  Then, when you are satisfied with
-the line, you simply press <RET>.  You do not have to be at the end of
-the line to press <RET>; the entire line is accepted regardless of the
-location of the cursor within the line.
-
-* Menu:
-
-* Readline Bare Essentials::   The least you need to know about Readline.
-* Readline Movement Commands:: Moving about the input line.
-* Readline Killing Commands::  How to delete text, and how to get it back!
-* Readline Arguments::         Giving numeric arguments to commands.
-* Searching::                  Searching through previous lines.
-
-\1f
-File: readline.info,  Node: Readline Bare Essentials,  Next: Readline Movement Commands,  Up: Readline Interaction
-
-1.2.1 Readline Bare Essentials
-------------------------------
-
-In order to enter characters into the line, simply type them.  The typed
-character appears where the cursor was, and then the cursor moves one
-space to the right.  If you mistype a character, you can use your erase
-character to back up and delete the mistyped character.
-
-   Sometimes you may mistype a character, and not notice the error
-until you have typed several other characters.  In that case, you can
-type `C-b' to move the cursor to the left, and then correct your
-mistake.  Afterwards, you can move the cursor to the right with `C-f'.
-
-   When you add text in the middle of a line, you will notice that
-characters to the right of the cursor are `pushed over' to make room
-for the text that you have inserted.  Likewise, when you delete text
-behind the cursor, characters to the right of the cursor are `pulled
-back' to fill in the blank space created by the removal of the text.  A
-list of the bare essentials for editing the text of an input line
-follows.
-
-`C-b'
-     Move back one character.
-
-`C-f'
-     Move forward one character.
-
-<DEL> or <Backspace>
-     Delete the character to the left of the cursor.
-
-`C-d'
-     Delete the character underneath the cursor.
-
-Printing characters
-     Insert the character into the line at the cursor.
-
-`C-_' or `C-x C-u'
-     Undo the last editing command.  You can undo all the way back to an
-     empty line.
-
-(Depending on your configuration, the <Backspace> key be set to delete
-the character to the left of the cursor and the <DEL> key set to delete
-the character underneath the cursor, like `C-d', rather than the
-character to the left of the cursor.)
-
-\1f
-File: readline.info,  Node: Readline Movement Commands,  Next: Readline Killing Commands,  Prev: Readline Bare Essentials,  Up: Readline Interaction
-
-1.2.2 Readline Movement Commands
---------------------------------
-
-The above table describes the most basic keystrokes that you need in
-order to do editing of the input line.  For your convenience, many
-other commands have been added in addition to `C-b', `C-f', `C-d', and
-<DEL>.  Here are some commands for moving more rapidly about the line.
-
-`C-a'
-     Move to the start of the line.
-
-`C-e'
-     Move to the end of the line.
-
-`M-f'
-     Move forward a word, where a word is composed of letters and
-     digits.
-
-`M-b'
-     Move backward a word.
-
-`C-l'
-     Clear the screen, reprinting the current line at the top.
-
-   Notice how `C-f' moves forward a character, while `M-f' moves
-forward a word.  It is a loose convention that control keystrokes
-operate on characters while meta keystrokes operate on words.
-
-\1f
-File: readline.info,  Node: Readline Killing Commands,  Next: Readline Arguments,  Prev: Readline Movement Commands,  Up: Readline Interaction
-
-1.2.3 Readline Killing Commands
--------------------------------
-
-"Killing" text means to delete the text from the line, but to save it
-away for later use, usually by "yanking" (re-inserting) it back into
-the line.  (`Cut' and `paste' are more recent jargon for `kill' and
-`yank'.)
-
-   If the description for a command says that it `kills' text, then you
-can be sure that you can get the text back in a different (or the same)
-place later.
-
-   When you use a kill command, the text is saved in a "kill-ring".
-Any number of consecutive kills save all of the killed text together, so
-that when you yank it back, you get it all.  The kill ring is not line
-specific; the text that you killed on a previously typed line is
-available to be yanked back later, when you are typing another line.  
-
-   Here is the list of commands for killing text.
-
-`C-k'
-     Kill the text from the current cursor position to the end of the
-     line.
-
-`M-d'
-     Kill from the cursor to the end of the current word, or, if between
-     words, to the end of the next word.  Word boundaries are the same
-     as those used by `M-f'.
-
-`M-<DEL>'
-     Kill from the cursor the start of the current word, or, if between
-     words, to the start of the previous word.  Word boundaries are the
-     same as those used by `M-b'.
-
-`C-w'
-     Kill from the cursor to the previous whitespace.  This is
-     different than `M-<DEL>' because the word boundaries differ.
-
-
-   Here is how to "yank" the text back into the line.  Yanking means to
-copy the most-recently-killed text from the kill buffer.
-
-`C-y'
-     Yank the most recently killed text back into the buffer at the
-     cursor.
-
-`M-y'
-     Rotate the kill-ring, and yank the new top.  You can only do this
-     if the prior command is `C-y' or `M-y'.
-
-\1f
-File: readline.info,  Node: Readline Arguments,  Next: Searching,  Prev: Readline Killing Commands,  Up: Readline Interaction
-
-1.2.4 Readline Arguments
-------------------------
-
-You can pass numeric arguments to Readline commands.  Sometimes the
-argument acts as a repeat count, other times it is the sign of the
-argument that is significant.  If you pass a negative argument to a
-command which normally acts in a forward direction, that command will
-act in a backward direction.  For example, to kill text back to the
-start of the line, you might type `M-- C-k'.
-
-   The general way to pass numeric arguments to a command is to type
-meta digits before the command.  If the first `digit' typed is a minus
-sign (`-'), then the sign of the argument will be negative.  Once you
-have typed one meta digit to get the argument started, you can type the
-remainder of the digits, and then the command.  For example, to give
-the `C-d' command an argument of 10, you could type `M-1 0 C-d', which
-will delete the next ten characters on the input line.
-
-\1f
-File: readline.info,  Node: Searching,  Prev: Readline Arguments,  Up: Readline Interaction
-
-1.2.5 Searching for Commands in the History
--------------------------------------------
-
-Readline provides commands for searching through the command history
-for lines containing a specified string.  There are two search modes:
-"incremental" and "non-incremental".
-
-   Incremental searches begin before the user has finished typing the
-search string.  As each character of the search string is typed,
-Readline displays the next entry from the history matching the string
-typed so far.  An incremental search requires only as many characters
-as needed to find the desired history entry.  To search backward in the
-history for a particular string, type `C-r'.  Typing `C-s' searches
-forward through the history.  The characters present in the value of
-the `isearch-terminators' variable are used to terminate an incremental
-search.  If that variable has not been assigned a value, the <ESC> and
-`C-J' characters will terminate an incremental search.  `C-g' will
-abort an incremental search and restore the original line.  When the
-search is terminated, the history entry containing the search string
-becomes the current line.
-
-   To find other matching entries in the history list, type `C-r' or
-`C-s' as appropriate.  This will search backward or forward in the
-history for the next entry matching the search string typed so far.
-Any other key sequence bound to a Readline command will terminate the
-search and execute that command.  For instance, a <RET> will terminate
-the search and accept the line, thereby executing the command from the
-history list.  A movement command will terminate the search, make the
-last line found the current line, and begin editing.
-
-   Readline remembers the last incremental search string.  If two
-`C-r's are typed without any intervening characters defining a new
-search string, any remembered search string is used.
-
-   Non-incremental searches read the entire search string before
-starting to search for matching history lines.  The search string may be
-typed by the user or be part of the contents of the current line.
-
-\1f
-File: readline.info,  Node: Readline Init File,  Next: Bindable Readline Commands,  Prev: Readline Interaction,  Up: Command Line Editing
-
-1.3 Readline Init File
-======================
-
-Although the Readline library comes with a set of Emacs-like
-keybindings installed by default, it is possible to use a different set
-of keybindings.  Any user can customize programs that use Readline by
-putting commands in an "inputrc" file, conventionally in his home
-directory.  The name of this file is taken from the value of the
-environment variable `INPUTRC'.  If that variable is unset, the default
-is `~/.inputrc'.  If that file does not exist or cannot be read, the
-ultimate default is `/etc/inputrc'.
-
-   When a program which uses the Readline library starts up, the init
-file is read, and the key bindings are set.
-
-   In addition, the `C-x C-r' command re-reads this init file, thus
-incorporating any changes that you might have made to it.
-
-* Menu:
-
-* Readline Init File Syntax::  Syntax for the commands in the inputrc file.
-
-* Conditional Init Constructs::        Conditional key bindings in the inputrc file.
-
-* Sample Init File::           An example inputrc file.
-
-\1f
-File: readline.info,  Node: Readline Init File Syntax,  Next: Conditional Init Constructs,  Up: Readline Init File
-
-1.3.1 Readline Init File Syntax
--------------------------------
-
-There are only a few basic constructs allowed in the Readline init
-file.  Blank lines are ignored.  Lines beginning with a `#' are
-comments.  Lines beginning with a `$' indicate conditional constructs
-(*note Conditional Init Constructs::).  Other lines denote variable
-settings and key bindings.
-
-Variable Settings
-     You can modify the run-time behavior of Readline by altering the
-     values of variables in Readline using the `set' command within the
-     init file.  The syntax is simple:
-
-          set VARIABLE VALUE
-
-     Here, for example, is how to change from the default Emacs-like
-     key binding to use `vi' line editing commands:
-
-          set editing-mode vi
-
-     Variable names and values, where appropriate, are recognized
-     without regard to case.  Unrecognized variable names are ignored.
-
-     Boolean variables (those that can be set to on or off) are set to
-     on if the value is null or empty, ON (case-insensitive), or 1.
-     Any other value results in the variable being set to off.
-
-     A great deal of run-time behavior is changeable with the following
-     variables.
-
-    `bell-style'
-          Controls what happens when Readline wants to ring the
-          terminal bell.  If set to `none', Readline never rings the
-          bell.  If set to `visible', Readline uses a visible bell if
-          one is available.  If set to `audible' (the default),
-          Readline attempts to ring the terminal's bell.
-
-    `bind-tty-special-chars'
-          If set to `on', Readline attempts to bind the control
-          characters treated specially by the kernel's terminal driver
-          to their Readline equivalents.
-
-    `comment-begin'
-          The string to insert at the beginning of the line when the
-          `insert-comment' command is executed.  The default value is
-          `"#"'.
-
-    `completion-display-width'
-          The number of screen columns used to display possible matches
-          when performing completion.  The value is ignored if it is
-          less than 0 or greater than the terminal screen width.  A
-          value of 0 will cause matches to be displayed one per line.
-          The default value is -1.
-
-    `completion-ignore-case'
-          If set to `on', Readline performs filename matching and
-          completion in a case-insensitive fashion.  The default value
-          is `off'.
-
-    `completion-map-case'
-          If set to `on', and COMPLETION-IGNORE-CASE is enabled,
-          Readline treats hyphens (`-') and underscores (`_') as
-          equivalent when performing case-insensitive filename matching
-          and completion.
-
-    `completion-prefix-display-length'
-          The length in characters of the common prefix of a list of
-          possible completions that is displayed without modification.
-          When set to a value greater than zero, common prefixes longer
-          than this value are replaced with an ellipsis when displaying
-          possible completions.
-
-    `completion-query-items'
-          The number of possible completions that determines when the
-          user is asked whether the list of possibilities should be
-          displayed.  If the number of possible completions is greater
-          than this value, Readline will ask the user whether or not he
-          wishes to view them; otherwise, they are simply listed.  This
-          variable must be set to an integer value greater than or
-          equal to 0.  A negative value means Readline should never ask.
-          The default limit is `100'.
-
-    `convert-meta'
-          If set to `on', Readline will convert characters with the
-          eighth bit set to an ASCII key sequence by stripping the
-          eighth bit and prefixing an <ESC> character, converting them
-          to a meta-prefixed key sequence.  The default value is `on'.
-
-    `disable-completion'
-          If set to `On', Readline will inhibit word completion.
-          Completion  characters will be inserted into the line as if
-          they had been mapped to `self-insert'.  The default is `off'.
-
-    `editing-mode'
-          The `editing-mode' variable controls which default set of key
-          bindings is used.  By default, Readline starts up in Emacs
-          editing mode, where the keystrokes are most similar to Emacs.
-          This variable can be set to either `emacs' or `vi'.
-
-    `echo-control-characters'
-          When set to `on', on operating systems that indicate they
-          support it, readline echoes a character corresponding to a
-          signal generated from the keyboard.  The default is `on'.
-
-    `enable-keypad'
-          When set to `on', Readline will try to enable the application
-          keypad when it is called.  Some systems need this to enable
-          the arrow keys.  The default is `off'.
-
-    `enable-meta-key'
-          When set to `on', Readline will try to enable any meta
-          modifier key the terminal claims to support when it is
-          called.  On many terminals, the meta key is used to send
-          eight-bit characters.  The default is `on'.
-
-    `expand-tilde'
-          If set to `on', tilde expansion is performed when Readline
-          attempts word completion.  The default is `off'.
-
-    `history-preserve-point'
-          If set to `on', the history code attempts to place the point
-          (the current cursor position) at the same location on each
-          history line retrieved with `previous-history' or
-          `next-history'.  The default is `off'.
-
-    `history-size'
-          Set the maximum number of history entries saved in the
-          history list.  If set to zero, the number of entries in the
-          history list is not limited.
-
-    `horizontal-scroll-mode'
-          This variable can be set to either `on' or `off'.  Setting it
-          to `on' means that the text of the lines being edited will
-          scroll horizontally on a single screen line when they are
-          longer than the width of the screen, instead of wrapping onto
-          a new screen line.  By default, this variable is set to `off'.
-
-    `input-meta'
-          If set to `on', Readline will enable eight-bit input (it will
-          not clear the eighth bit in the characters it reads),
-          regardless of what the terminal claims it can support.  The
-          default value is `off'.  The name `meta-flag' is a synonym
-          for this variable.
-
-    `isearch-terminators'
-          The string of characters that should terminate an incremental
-          search without subsequently executing the character as a
-          command (*note Searching::).  If this variable has not been
-          given a value, the characters <ESC> and `C-J' will terminate
-          an incremental search.
-
-    `keymap'
-          Sets Readline's idea of the current keymap for key binding
-          commands.  Acceptable `keymap' names are `emacs',
-          `emacs-standard', `emacs-meta', `emacs-ctlx', `vi', `vi-move',
-          `vi-command', and `vi-insert'.  `vi' is equivalent to
-          `vi-command'; `emacs' is equivalent to `emacs-standard'.  The
-          default value is `emacs'.  The value of the `editing-mode'
-          variable also affects the default keymap.
-
-    `mark-directories'
-          If set to `on', completed directory names have a slash
-          appended.  The default is `on'.
-
-    `mark-modified-lines'
-          This variable, when set to `on', causes Readline to display an
-          asterisk (`*') at the start of history lines which have been
-          modified.  This variable is `off' by default.
-
-    `mark-symlinked-directories'
-          If set to `on', completed names which are symbolic links to
-          directories have a slash appended (subject to the value of
-          `mark-directories').  The default is `off'.
-
-    `match-hidden-files'
-          This variable, when set to `on', causes Readline to match
-          files whose names begin with a `.' (hidden files) when
-          performing filename completion.  If set to `off', the leading
-          `.' must be supplied by the user in the filename to be
-          completed.  This variable is `on' by default.
-
-    `menu-complete-display-prefix'
-          If set to `on', menu completion displays the common prefix of
-          the list of possible completions (which may be empty) before
-          cycling through the list.  The default is `off'.
-
-    `output-meta'
-          If set to `on', Readline will display characters with the
-          eighth bit set directly rather than as a meta-prefixed escape
-          sequence.  The default is `off'.
-
-    `page-completions'
-          If set to `on', Readline uses an internal `more'-like pager
-          to display a screenful of possible completions at a time.
-          This variable is `on' by default.
-
-    `print-completions-horizontally'
-          If set to `on', Readline will display completions with matches
-          sorted horizontally in alphabetical order, rather than down
-          the screen.  The default is `off'.
-
-    `revert-all-at-newline'
-          If set to `on', Readline will undo all changes to history
-          lines before returning when `accept-line' is executed.  By
-          default, history lines may be modified and retain individual
-          undo lists across calls to `readline'.  The default is `off'.
-
-    `show-all-if-ambiguous'
-          This alters the default behavior of the completion functions.
-          If set to `on', words which have more than one possible
-          completion cause the matches to be listed immediately instead
-          of ringing the bell.  The default value is `off'.
-
-    `show-all-if-unmodified'
-          This alters the default behavior of the completion functions
-          in a fashion similar to SHOW-ALL-IF-AMBIGUOUS.  If set to
-          `on', words which have more than one possible completion
-          without any possible partial completion (the possible
-          completions don't share a common prefix) cause the matches to
-          be listed immediately instead of ringing the bell.  The
-          default value is `off'.
-
-    `skip-completed-text'
-          If set to `on', this alters the default completion behavior
-          when inserting a single match into the line.  It's only
-          active when performing completion in the middle of a word.
-          If enabled, readline does not insert characters from the
-          completion that match characters after point in the word
-          being completed, so portions of the word following the cursor
-          are not duplicated.  For instance, if this is enabled,
-          attempting completion when the cursor is after the `e' in
-          `Makefile' will result in `Makefile' rather than
-          `Makefilefile', assuming there is a single possible
-          completion.  The default value is `off'.
-
-    `visible-stats'
-          If set to `on', a character denoting a file's type is
-          appended to the filename when listing possible completions.
-          The default is `off'.
-
-
-Key Bindings
-     The syntax for controlling key bindings in the init file is
-     simple.  First you need to find the name of the command that you
-     want to change.  The following sections contain tables of the
-     command name, the default keybinding, if any, and a short
-     description of what the command does.
-
-     Once you know the name of the command, simply place on a line in
-     the init file the name of the key you wish to bind the command to,
-     a colon, and then the name of the command.  There can be no space
-     between the key name and the colon - that will be interpreted as
-     part of the key name.  The name of the key can be expressed in
-     different ways, depending on what you find most comfortable.
-
-     In addition to command names, readline allows keys to be bound to
-     a string that is inserted when the key is pressed (a MACRO).
-
-    KEYNAME: FUNCTION-NAME or MACRO
-          KEYNAME is the name of a key spelled out in English.  For
-          example:
-               Control-u: universal-argument
-               Meta-Rubout: backward-kill-word
-               Control-o: "> output"
-
-          In the above example, `C-u' is bound to the function
-          `universal-argument', `M-DEL' is bound to the function
-          `backward-kill-word', and `C-o' is bound to run the macro
-          expressed on the right hand side (that is, to insert the text
-          `> output' into the line).
-
-          A number of symbolic character names are recognized while
-          processing this key binding syntax: DEL, ESC, ESCAPE, LFD,
-          NEWLINE, RET, RETURN, RUBOUT, SPACE, SPC, and TAB.
-
-    "KEYSEQ": FUNCTION-NAME or MACRO
-          KEYSEQ differs from KEYNAME above in that strings denoting an
-          entire key sequence can be specified, by placing the key
-          sequence in double quotes.  Some GNU Emacs style key escapes
-          can be used, as in the following example, but the special
-          character names are not recognized.
-
-               "\C-u": universal-argument
-               "\C-x\C-r": re-read-init-file
-               "\e[11~": "Function Key 1"
-
-          In the above example, `C-u' is again bound to the function
-          `universal-argument' (just as it was in the first example),
-          `C-x C-r' is bound to the function `re-read-init-file', and
-          `<ESC> <[> <1> <1> <~>' is bound to insert the text `Function
-          Key 1'.
-
-
-     The following GNU Emacs style escape sequences are available when
-     specifying key sequences:
-
-    `\C-'
-          control prefix
-
-    `\M-'
-          meta prefix
-
-    `\e'
-          an escape character
-
-    `\\'
-          backslash
-
-    `\"'
-          <">, a double quotation mark
-
-    `\''
-          <'>, a single quote or apostrophe
-
-     In addition to the GNU Emacs style escape sequences, a second set
-     of backslash escapes is available:
-
-    `\a'
-          alert (bell)
-
-    `\b'
-          backspace
-
-    `\d'
-          delete
-
-    `\f'
-          form feed
-
-    `\n'
-          newline
-
-    `\r'
-          carriage return
-
-    `\t'
-          horizontal tab
-
-    `\v'
-          vertical tab
-
-    `\NNN'
-          the eight-bit character whose value is the octal value NNN
-          (one to three digits)
-
-    `\xHH'
-          the eight-bit character whose value is the hexadecimal value
-          HH (one or two hex digits)
-
-     When entering the text of a macro, single or double quotes must be
-     used to indicate a macro definition.  Unquoted text is assumed to
-     be a function name.  In the macro body, the backslash escapes
-     described above are expanded.  Backslash will quote any other
-     character in the macro text, including `"' and `''.  For example,
-     the following binding will make `C-x \' insert a single `\' into
-     the line:
-          "\C-x\\": "\\"
-
-
-\1f
-File: readline.info,  Node: Conditional Init Constructs,  Next: Sample Init File,  Prev: Readline Init File Syntax,  Up: Readline Init File
-
-1.3.2 Conditional Init Constructs
----------------------------------
-
-Readline implements a facility similar in spirit to the conditional
-compilation features of the C preprocessor which allows key bindings
-and variable settings to be performed as the result of tests.  There
-are four parser directives used.
-
-`$if'
-     The `$if' construct allows bindings to be made based on the
-     editing mode, the terminal being used, or the application using
-     Readline.  The text of the test extends to the end of the line; no
-     characters are required to isolate it.
-
-    `mode'
-          The `mode=' form of the `$if' directive is used to test
-          whether Readline is in `emacs' or `vi' mode.  This may be
-          used in conjunction with the `set keymap' command, for
-          instance, to set bindings in the `emacs-standard' and
-          `emacs-ctlx' keymaps only if Readline is starting out in
-          `emacs' mode.
-
-    `term'
-          The `term=' form may be used to include terminal-specific key
-          bindings, perhaps to bind the key sequences output by the
-          terminal's function keys.  The word on the right side of the
-          `=' is tested against both the full name of the terminal and
-          the portion of the terminal name before the first `-'.  This
-          allows `sun' to match both `sun' and `sun-cmd', for instance.
-
-    `application'
-          The APPLICATION construct is used to include
-          application-specific settings.  Each program using the
-          Readline library sets the APPLICATION NAME, and you can test
-          for a particular value.  This could be used to bind key
-          sequences to functions useful for a specific program.  For
-          instance, the following command adds a key sequence that
-          quotes the current or previous word in Bash:
-               $if Bash
-               # Quote the current or previous word
-               "\C-xq": "\eb\"\ef\""
-               $endif
-
-`$endif'
-     This command, as seen in the previous example, terminates an `$if'
-     command.
-
-`$else'
-     Commands in this branch of the `$if' directive are executed if the
-     test fails.
-
-`$include'
-     This directive takes a single filename as an argument and reads
-     commands and bindings from that file.  For example, the following
-     directive reads from `/etc/inputrc':
-          $include /etc/inputrc
-
-\1f
-File: readline.info,  Node: Sample Init File,  Prev: Conditional Init Constructs,  Up: Readline Init File
-
-1.3.3 Sample Init File
-----------------------
-
-Here is an example of an INPUTRC file.  This illustrates key binding,
-variable assignment, and conditional syntax.
-
-
-     # This file controls the behaviour of line input editing for
-     # programs that use the GNU Readline library.  Existing
-     # programs include FTP, Bash, and GDB.
-     #
-     # You can re-read the inputrc file with C-x C-r.
-     # Lines beginning with '#' are comments.
-     #
-     # First, include any systemwide bindings and variable
-     # assignments from /etc/Inputrc
-     $include /etc/Inputrc
-
-     #
-     # Set various bindings for emacs mode.
-
-     set editing-mode emacs
-
-     $if mode=emacs
-
-     Meta-Control-h:   backward-kill-word      Text after the function name is ignored
-
-     #
-     # Arrow keys in keypad mode
-     #
-     #"\M-OD":        backward-char
-     #"\M-OC":        forward-char
-     #"\M-OA":        previous-history
-     #"\M-OB":        next-history
-     #
-     # Arrow keys in ANSI mode
-     #
-     "\M-[D":        backward-char
-     "\M-[C":        forward-char
-     "\M-[A":        previous-history
-     "\M-[B":        next-history
-     #
-     # Arrow keys in 8 bit keypad mode
-     #
-     #"\M-\C-OD":       backward-char
-     #"\M-\C-OC":       forward-char
-     #"\M-\C-OA":       previous-history
-     #"\M-\C-OB":       next-history
-     #
-     # Arrow keys in 8 bit ANSI mode
-     #
-     #"\M-\C-[D":       backward-char
-     #"\M-\C-[C":       forward-char
-     #"\M-\C-[A":       previous-history
-     #"\M-\C-[B":       next-history
-
-     C-q: quoted-insert
-
-     $endif
-
-     # An old-style binding.  This happens to be the default.
-     TAB: complete
-
-     # Macros that are convenient for shell interaction
-     $if Bash
-     # edit the path
-     "\C-xp": "PATH=${PATH}\e\C-e\C-a\ef\C-f"
-     # prepare to type a quoted word --
-     # insert open and close double quotes
-     # and move to just after the open quote
-     "\C-x\"": "\"\"\C-b"
-     # insert a backslash (testing backslash escapes
-     # in sequences and macros)
-     "\C-x\\": "\\"
-     # Quote the current or previous word
-     "\C-xq": "\eb\"\ef\""
-     # Add a binding to refresh the line, which is unbound
-     "\C-xr": redraw-current-line
-     # Edit variable on current line.
-     "\M-\C-v": "\C-a\C-k$\C-y\M-\C-e\C-a\C-y="
-     $endif
-
-     # use a visible bell if one is available
-     set bell-style visible
-
-     # don't strip characters to 7 bits when reading
-     set input-meta on
-
-     # allow iso-latin1 characters to be inserted rather
-     # than converted to prefix-meta sequences
-     set convert-meta off
-
-     # display characters with the eighth bit set directly
-     # rather than as meta-prefixed characters
-     set output-meta on
-
-     # if there are more than 150 possible completions for
-     # a word, ask the user if he wants to see all of them
-     set completion-query-items 150
-
-     # For FTP
-     $if Ftp
-     "\C-xg": "get \M-?"
-     "\C-xt": "put \M-?"
-     "\M-.": yank-last-arg
-     $endif
-
-\1f
-File: readline.info,  Node: Bindable Readline Commands,  Next: Readline vi Mode,  Prev: Readline Init File,  Up: Command Line Editing
-
-1.4 Bindable Readline Commands
-==============================
-
-* Menu:
-
-* Commands For Moving::                Moving about the line.
-* Commands For History::       Getting at previous lines.
-* Commands For Text::          Commands for changing text.
-* Commands For Killing::       Commands for killing and yanking.
-* Numeric Arguments::          Specifying numeric arguments, repeat counts.
-* Commands For Completion::    Getting Readline to do the typing for you.
-* Keyboard Macros::            Saving and re-executing typed characters
-* Miscellaneous Commands::     Other miscellaneous commands.
-
-   This section describes Readline commands that may be bound to key
-sequences.  Command names without an accompanying key sequence are
-unbound by default.
-
-   In the following descriptions, "point" refers to the current cursor
-position, and "mark" refers to a cursor position saved by the
-`set-mark' command.  The text between the point and mark is referred to
-as the "region".
-
-\1f
-File: readline.info,  Node: Commands For Moving,  Next: Commands For History,  Up: Bindable Readline Commands
-
-1.4.1 Commands For Moving
--------------------------
-
-`beginning-of-line (C-a)'
-     Move to the start of the current line.
-
-`end-of-line (C-e)'
-     Move to the end of the line.
-
-`forward-char (C-f)'
-     Move forward a character.
-
-`backward-char (C-b)'
-     Move back a character.
-
-`forward-word (M-f)'
-     Move forward to the end of the next word.  Words are composed of
-     letters and digits.
-
-`backward-word (M-b)'
-     Move back to the start of the current or previous word.  Words are
-     composed of letters and digits.
-
-`clear-screen (C-l)'
-     Clear the screen and redraw the current line, leaving the current
-     line at the top of the screen.
-
-`redraw-current-line ()'
-     Refresh the current line.  By default, this is unbound.
-
-
-\1f
-File: readline.info,  Node: Commands For History,  Next: Commands For Text,  Prev: Commands For Moving,  Up: Bindable Readline Commands
-
-1.4.2 Commands For Manipulating The History
--------------------------------------------
-
-`accept-line (Newline or Return)'
-     Accept the line regardless of where the cursor is.  If this line is
-     non-empty, it may be added to the history list for future recall
-     with `add_history()'.  If this line is a modified history line,
-     the history line is restored to its original state.
-
-`previous-history (C-p)'
-     Move `back' through the history list, fetching the previous
-     command.
-
-`next-history (C-n)'
-     Move `forward' through the history list, fetching the next command.
-
-`beginning-of-history (M-<)'
-     Move to the first line in the history.
-
-`end-of-history (M->)'
-     Move to the end of the input history, i.e., the line currently
-     being entered.
-
-`reverse-search-history (C-r)'
-     Search backward starting at the current line and moving `up'
-     through the history as necessary.  This is an incremental search.
-
-`forward-search-history (C-s)'
-     Search forward starting at the current line and moving `down'
-     through the the history as necessary.  This is an incremental
-     search.
-
-`non-incremental-reverse-search-history (M-p)'
-     Search backward starting at the current line and moving `up'
-     through the history as necessary using a non-incremental search
-     for a string supplied by the user.
-
-`non-incremental-forward-search-history (M-n)'
-     Search forward starting at the current line and moving `down'
-     through the the history as necessary using a non-incremental search
-     for a string supplied by the user.
-
-`history-search-forward ()'
-     Search forward through the history for the string of characters
-     between the start of the current line and the point.  This is a
-     non-incremental search.  By default, this command is unbound.
-
-`history-search-backward ()'
-     Search backward through the history for the string of characters
-     between the start of the current line and the point.  This is a
-     non-incremental search.  By default, this command is unbound.
-
-`yank-nth-arg (M-C-y)'
-     Insert the first argument to the previous command (usually the
-     second word on the previous line) at point.  With an argument N,
-     insert the Nth word from the previous command (the words in the
-     previous command begin with word 0).  A negative argument inserts
-     the Nth word from the end of the previous command.  Once the
-     argument N is computed, the argument is extracted as if the `!N'
-     history expansion had been specified.
-
-`yank-last-arg (M-. or M-_)'
-     Insert last argument to the previous command (the last word of the
-     previous history entry).  With a numeric argument, behave exactly
-     like `yank-nth-arg'.  Successive calls to `yank-last-arg' move
-     back through the history list, inserting the last word (or the
-     word specified by the argument to the first call) of each line in
-     turn.  Any numeric argument supplied to these successive calls
-     determines the direction to move through the history.  A negative
-     argument switches the direction through the history (back or
-     forward).  The history expansion facilities are used to extract
-     the last argument, as if the `!$' history expansion had been
-     specified.
-
-
-\1f
-File: readline.info,  Node: Commands For Text,  Next: Commands For Killing,  Prev: Commands For History,  Up: Bindable Readline Commands
-
-1.4.3 Commands For Changing Text
---------------------------------
-
-`delete-char (C-d)'
-     Delete the character at point.  If point is at the beginning of
-     the line, there are no characters in the line, and the last
-     character typed was not bound to `delete-char', then return EOF.
-
-`backward-delete-char (Rubout)'
-     Delete the character behind the cursor.  A numeric argument means
-     to kill the characters instead of deleting them.
-
-`forward-backward-delete-char ()'
-     Delete the character under the cursor, unless the cursor is at the
-     end of the line, in which case the character behind the cursor is
-     deleted.  By default, this is not bound to a key.
-
-`quoted-insert (C-q or C-v)'
-     Add the next character typed to the line verbatim.  This is how to
-     insert key sequences like `C-q', for example.
-
-`tab-insert (M-<TAB>)'
-     Insert a tab character.
-
-`self-insert (a, b, A, 1, !, ...)'
-     Insert yourself.
-
-`transpose-chars (C-t)'
-     Drag the character before the cursor forward over the character at
-     the cursor, moving the cursor forward as well.  If the insertion
-     point is at the end of the line, then this transposes the last two
-     characters of the line.  Negative arguments have no effect.
-
-`transpose-words (M-t)'
-     Drag the word before point past the word after point, moving point
-     past that word as well.  If the insertion point is at the end of
-     the line, this transposes the last two words on the line.
-
-`upcase-word (M-u)'
-     Uppercase the current (or following) word.  With a negative
-     argument, uppercase the previous word, but do not move the cursor.
-
-`downcase-word (M-l)'
-     Lowercase the current (or following) word.  With a negative
-     argument, lowercase the previous word, but do not move the cursor.
-
-`capitalize-word (M-c)'
-     Capitalize the current (or following) word.  With a negative
-     argument, capitalize the previous word, but do not move the cursor.
-
-`overwrite-mode ()'
-     Toggle overwrite mode.  With an explicit positive numeric argument,
-     switches to overwrite mode.  With an explicit non-positive numeric
-     argument, switches to insert mode.  This command affects only
-     `emacs' mode; `vi' mode does overwrite differently.  Each call to
-     `readline()' starts in insert mode.
-
-     In overwrite mode, characters bound to `self-insert' replace the
-     text at point rather than pushing the text to the right.
-     Characters bound to `backward-delete-char' replace the character
-     before point with a space.
-
-     By default, this command is unbound.
-
-
-\1f
-File: readline.info,  Node: Commands For Killing,  Next: Numeric Arguments,  Prev: Commands For Text,  Up: Bindable Readline Commands
-
-1.4.4 Killing And Yanking
--------------------------
-
-`kill-line (C-k)'
-     Kill the text from point to the end of the line.
-
-`backward-kill-line (C-x Rubout)'
-     Kill backward to the beginning of the line.
-
-`unix-line-discard (C-u)'
-     Kill backward from the cursor to the beginning of the current line.
-
-`kill-whole-line ()'
-     Kill all characters on the current line, no matter where point is.
-     By default, this is unbound.
-
-`kill-word (M-d)'
-     Kill from point to the end of the current word, or if between
-     words, to the end of the next word.  Word boundaries are the same
-     as `forward-word'.
-
-`backward-kill-word (M-<DEL>)'
-     Kill the word behind point.  Word boundaries are the same as
-     `backward-word'.
-
-`unix-word-rubout (C-w)'
-     Kill the word behind point, using white space as a word boundary.
-     The killed text is saved on the kill-ring.
-
-`unix-filename-rubout ()'
-     Kill the word behind point, using white space and the slash
-     character as the word boundaries.  The killed text is saved on the
-     kill-ring.
-
-`delete-horizontal-space ()'
-     Delete all spaces and tabs around point.  By default, this is
-     unbound.
-
-`kill-region ()'
-     Kill the text in the current region.  By default, this command is
-     unbound.
-
-`copy-region-as-kill ()'
-     Copy the text in the region to the kill buffer, so it can be yanked
-     right away.  By default, this command is unbound.
-
-`copy-backward-word ()'
-     Copy the word before point to the kill buffer.  The word
-     boundaries are the same as `backward-word'.  By default, this
-     command is unbound.
-
-`copy-forward-word ()'
-     Copy the word following point to the kill buffer.  The word
-     boundaries are the same as `forward-word'.  By default, this
-     command is unbound.
-
-`yank (C-y)'
-     Yank the top of the kill ring into the buffer at point.
-
-`yank-pop (M-y)'
-     Rotate the kill-ring, and yank the new top.  You can only do this
-     if the prior command is `yank' or `yank-pop'.
-
-\1f
-File: readline.info,  Node: Numeric Arguments,  Next: Commands For Completion,  Prev: Commands For Killing,  Up: Bindable Readline Commands
-
-1.4.5 Specifying Numeric Arguments
-----------------------------------
-
-`digit-argument (M-0, M-1, ... M--)'
-     Add this digit to the argument already accumulating, or start a new
-     argument.  `M--' starts a negative argument.
-
-`universal-argument ()'
-     This is another way to specify an argument.  If this command is
-     followed by one or more digits, optionally with a leading minus
-     sign, those digits define the argument.  If the command is
-     followed by digits, executing `universal-argument' again ends the
-     numeric argument, but is otherwise ignored.  As a special case, if
-     this command is immediately followed by a character that is
-     neither a digit or minus sign, the argument count for the next
-     command is multiplied by four.  The argument count is initially
-     one, so executing this function the first time makes the argument
-     count four, a second time makes the argument count sixteen, and so
-     on.  By default, this is not bound to a key.
-
-\1f
-File: readline.info,  Node: Commands For Completion,  Next: Keyboard Macros,  Prev: Numeric Arguments,  Up: Bindable Readline Commands
-
-1.4.6 Letting Readline Type For You
------------------------------------
-
-`complete (<TAB>)'
-     Attempt to perform completion on the text before point.  The
-     actual completion performed is application-specific.  The default
-     is filename completion.
-
-`possible-completions (M-?)'
-     List the possible completions of the text before point.  When
-     displaying completions, Readline sets the number of columns used
-     for display to the value of `completion-display-width', the value
-     of the environment variable `COLUMNS', or the screen width, in
-     that order.
-
-`insert-completions (M-*)'
-     Insert all completions of the text before point that would have
-     been generated by `possible-completions'.
-
-`menu-complete ()'
-     Similar to `complete', but replaces the word to be completed with
-     a single match from the list of possible completions.  Repeated
-     execution of `menu-complete' steps through the list of possible
-     completions, inserting each match in turn.  At the end of the list
-     of completions, the bell is rung (subject to the setting of
-     `bell-style') and the original text is restored.  An argument of N
-     moves N positions forward in the list of matches; a negative
-     argument may be used to move backward through the list.  This
-     command is intended to be bound to <TAB>, but is unbound by
-     default.
-
-`menu-complete-backward ()'
-     Identical to `menu-complete', but moves backward through the list
-     of possible completions, as if `menu-complete' had been given a
-     negative argument.
-
-`delete-char-or-list ()'
-     Deletes the character under the cursor if not at the beginning or
-     end of the line (like `delete-char').  If at the end of the line,
-     behaves identically to `possible-completions'.  This command is
-     unbound by default.
-
-
-\1f
-File: readline.info,  Node: Keyboard Macros,  Next: Miscellaneous Commands,  Prev: Commands For Completion,  Up: Bindable Readline Commands
-
-1.4.7 Keyboard Macros
----------------------
-
-`start-kbd-macro (C-x ()'
-     Begin saving the characters typed into the current keyboard macro.
-
-`end-kbd-macro (C-x ))'
-     Stop saving the characters typed into the current keyboard macro
-     and save the definition.
-
-`call-last-kbd-macro (C-x e)'
-     Re-execute the last keyboard macro defined, by making the
-     characters in the macro appear as if typed at the keyboard.
-
-
-\1f
-File: readline.info,  Node: Miscellaneous Commands,  Prev: Keyboard Macros,  Up: Bindable Readline Commands
-
-1.4.8 Some Miscellaneous Commands
----------------------------------
-
-`re-read-init-file (C-x C-r)'
-     Read in the contents of the INPUTRC file, and incorporate any
-     bindings or variable assignments found there.
-
-`abort (C-g)'
-     Abort the current editing command and ring the terminal's bell
-     (subject to the setting of `bell-style').
-
-`do-uppercase-version (M-a, M-b, M-X, ...)'
-     If the metafied character X is lowercase, run the command that is
-     bound to the corresponding uppercase character.
-
-`prefix-meta (<ESC>)'
-     Metafy the next character typed.  This is for keyboards without a
-     meta key.  Typing `<ESC> f' is equivalent to typing `M-f'.
-
-`undo (C-_ or C-x C-u)'
-     Incremental undo, separately remembered for each line.
-
-`revert-line (M-r)'
-     Undo all changes made to this line.  This is like executing the
-     `undo' command enough times to get back to the beginning.
-
-`tilde-expand (M-~)'
-     Perform tilde expansion on the current word.
-
-`set-mark (C-@)'
-     Set the mark to the point.  If a numeric argument is supplied, the
-     mark is set to that position.
-
-`exchange-point-and-mark (C-x C-x)'
-     Swap the point with the mark.  The current cursor position is set
-     to the saved position, and the old cursor position is saved as the
-     mark.
-
-`character-search (C-])'
-     A character is read and point is moved to the next occurrence of
-     that character.  A negative count searches for previous
-     occurrences.
-
-`character-search-backward (M-C-])'
-     A character is read and point is moved to the previous occurrence
-     of that character.  A negative count searches for subsequent
-     occurrences.
-
-`skip-csi-sequence ()'
-     Read enough characters to consume a multi-key sequence such as
-     those defined for keys like Home and End.  Such sequences begin
-     with a Control Sequence Indicator (CSI), usually ESC-[.  If this
-     sequence is bound to "\e[", keys producing such sequences will
-     have no effect unless explicitly bound to a readline command,
-     instead of inserting stray characters into the editing buffer.
-     This is unbound by default, but usually bound to ESC-[.
-
-`insert-comment (M-#)'
-     Without a numeric argument, the value of the `comment-begin'
-     variable is inserted at the beginning of the current line.  If a
-     numeric argument is supplied, this command acts as a toggle:  if
-     the characters at the beginning of the line do not match the value
-     of `comment-begin', the value is inserted, otherwise the
-     characters in `comment-begin' are deleted from the beginning of
-     the line.  In either case, the line is accepted as if a newline
-     had been typed.
-
-`dump-functions ()'
-     Print all of the functions and their key bindings to the Readline
-     output stream.  If a numeric argument is supplied, the output is
-     formatted in such a way that it can be made part of an INPUTRC
-     file.  This command is unbound by default.
-
-`dump-variables ()'
-     Print all of the settable variables and their values to the
-     Readline output stream.  If a numeric argument is supplied, the
-     output is formatted in such a way that it can be made part of an
-     INPUTRC file.  This command is unbound by default.
-
-`dump-macros ()'
-     Print all of the Readline key sequences bound to macros and the
-     strings they output.  If a numeric argument is supplied, the
-     output is formatted in such a way that it can be made part of an
-     INPUTRC file.  This command is unbound by default.
-
-`emacs-editing-mode (C-e)'
-     When in `vi' command mode, this causes a switch to `emacs' editing
-     mode.
-
-`vi-editing-mode (M-C-j)'
-     When in `emacs' editing mode, this causes a switch to `vi' editing
-     mode.
-
-
-\1f
-File: readline.info,  Node: Readline vi Mode,  Prev: Bindable Readline Commands,  Up: Command Line Editing
-
-1.5 Readline vi Mode
-====================
-
-While the Readline library does not have a full set of `vi' editing
-functions, it does contain enough to allow simple editing of the line.
-The Readline `vi' mode behaves as specified in the POSIX standard.
-
-   In order to switch interactively between `emacs' and `vi' editing
-modes, use the command `M-C-j' (bound to emacs-editing-mode when in
-`vi' mode and to vi-editing-mode in `emacs' mode).  The Readline
-default is `emacs' mode.
-
-   When you enter a line in `vi' mode, you are already placed in
-`insertion' mode, as if you had typed an `i'.  Pressing <ESC> switches
-you into `command' mode, where you can edit the text of the line with
-the standard `vi' movement keys, move to previous history lines with
-`k' and subsequent lines with `j', and so forth.
-
-   This document describes the GNU Readline Library, a utility for
-aiding in the consistency of user interface across discrete programs
-that need to provide a command line interface.
-
-   Copyright (C) 1988-2011 Free Software Foundation, Inc.
-
-   Permission is granted to make and distribute verbatim copies of this
-manual provided the copyright notice and this permission notice pare
-preserved on all copies.
-
-   Permission is granted to copy and distribute modified versions of
-this manual under the conditions for verbatim copying, provided that
-the entire resulting derived work is distributed under the terms of a
-permission notice identical to this one.
-
-   Permission is granted to copy and distribute translations of this
-manual into another language, under the above conditions for modified
-versions, except that this permission notice may be stated in a
-translation approved by the Foundation.
-
-\1f
-File: readline.info,  Node: Programming with GNU Readline,  Next: GNU Free Documentation License,  Prev: Command Line Editing,  Up: Top
-
-2 Programming with GNU Readline
-*******************************
-
-This chapter describes the interface between the GNU Readline Library
-and other programs.  If you are a programmer, and you wish to include
-the features found in GNU Readline such as completion, line editing,
-and interactive history manipulation in your own programs, this section
-is for you.
-
-* Menu:
-
-* Basic Behavior::     Using the default behavior of Readline.
-* Custom Functions::   Adding your own functions to Readline.
-* Readline Variables::                 Variables accessible to custom
-                                       functions.
-* Readline Convenience Functions::     Functions which Readline supplies to
-                                       aid in writing your own custom
-                                       functions.
-* Readline Signal Handling::   How Readline behaves when it receives signals.
-* Custom Completers::  Supplanting or supplementing Readline's
-                       completion functions.
-
-\1f
-File: readline.info,  Node: Basic Behavior,  Next: Custom Functions,  Up: Programming with GNU Readline
-
-2.1 Basic Behavior
-==================
-
-Many programs provide a command line interface, such as `mail', `ftp',
-and `sh'.  For such programs, the default behaviour of Readline is
-sufficient.  This section describes how to use Readline in the simplest
-way possible, perhaps to replace calls in your code to `gets()' or
-`fgets()'.
-
-   The function `readline()' prints a prompt PROMPT and then reads and
-returns a single line of text from the user.  If PROMPT is `NULL' or
-the empty string, no prompt is displayed.  The line `readline' returns
-is allocated with `malloc()'; the caller should `free()' the line when
-it has finished with it.  The declaration for `readline' in ANSI C is
-
-     `char *readline (const char *PROMPT);'
-
-So, one might say
-     `char *line = readline ("Enter a line: ");'
-   in order to read a line of text from the user.  The line returned
-has the final newline removed, so only the text remains.
-
-   If `readline' encounters an `EOF' while reading the line, and the
-line is empty at that point, then `(char *)NULL' is returned.
-Otherwise, the line is ended just as if a newline had been typed.
-
-   If you want the user to be able to get at the line later, (with
-<C-p> for example), you must call `add_history()' to save the line away
-in a "history" list of such lines.
-
-     `add_history (line)';
-
-For full details on the GNU History Library, see the associated manual.
-
-   It is preferable to avoid saving empty lines on the history list,
-since users rarely have a burning need to reuse a blank line.  Here is
-a function which usefully replaces the standard `gets()' library
-function, and has the advantage of no static buffer to overflow:
-
-     /* A static variable for holding the line. */
-     static char *line_read = (char *)NULL;
-
-     /* Read a string, and return a pointer to it.
-        Returns NULL on EOF. */
-     char *
-     rl_gets ()
-     {
-       /* If the buffer has already been allocated,
-          return the memory to the free pool. */
-       if (line_read)
-         {
-           free (line_read);
-           line_read = (char *)NULL;
-         }
-
-       /* Get a line from the user. */
-       line_read = readline ("");
-
-       /* If the line has any text in it,
-          save it on the history. */
-       if (line_read && *line_read)
-         add_history (line_read);
-
-       return (line_read);
-     }
-
-   This function gives the user the default behaviour of <TAB>
-completion: completion on file names.  If you do not want Readline to
-complete on filenames, you can change the binding of the <TAB> key with
-`rl_bind_key()'.
-
-     `int rl_bind_key (int KEY, rl_command_func_t *FUNCTION);'
-
-   `rl_bind_key()' takes two arguments: KEY is the character that you
-want to bind, and FUNCTION is the address of the function to call when
-KEY is pressed.  Binding <TAB> to `rl_insert()' makes <TAB> insert
-itself.  `rl_bind_key()' returns non-zero if KEY is not a valid ASCII
-character code (between 0 and 255).
-
-   Thus, to disable the default <TAB> behavior, the following suffices:
-     `rl_bind_key ('\t', rl_insert);'
-
-   This code should be executed once at the start of your program; you
-might write a function called `initialize_readline()' which performs
-this and other desired initializations, such as installing custom
-completers (*note Custom Completers::).
-
-\1f
-File: readline.info,  Node: Custom Functions,  Next: Readline Variables,  Prev: Basic Behavior,  Up: Programming with GNU Readline
-
-2.2 Custom Functions
-====================
-
-Readline provides many functions for manipulating the text of the line,
-but it isn't possible to anticipate the needs of all programs.  This
-section describes the various functions and variables defined within
-the Readline library which allow a user program to add customized
-functionality to Readline.
-
-   Before declaring any functions that customize Readline's behavior, or
-using any functionality Readline provides in other code, an application
-writer should include the file `<readline/readline.h>' in any file that
-uses Readline's features.  Since some of the definitions in
-`readline.h' use the `stdio' library, the file `<stdio.h>' should be
-included before `readline.h'.
-
-   `readline.h' defines a C preprocessor variable that should be
-treated as an integer, `RL_READLINE_VERSION', which may be used to
-conditionally compile application code depending on the installed
-Readline version.  The value is a hexadecimal encoding of the major and
-minor version numbers of the library, of the form 0xMMMM.  MM is the
-two-digit major version number; MM is the two-digit minor version
-number.  For Readline 4.2, for example, the value of
-`RL_READLINE_VERSION' would be `0x0402'.
-
-* Menu:
-
-* Readline Typedefs::  C declarations to make code readable.
-* Function Writing::   Variables and calling conventions.
-
-\1f
-File: readline.info,  Node: Readline Typedefs,  Next: Function Writing,  Up: Custom Functions
-
-2.2.1 Readline Typedefs
------------------------
-
-For readabilty, we declare a number of new object types, all pointers
-to functions.
-
-   The reason for declaring these new types is to make it easier to
-write code describing pointers to C functions with appropriately
-prototyped arguments and return values.
-
-   For instance, say we want to declare a variable FUNC as a pointer to
-a function which takes two `int' arguments and returns an `int' (this
-is the type of all of the Readline bindable functions).  Instead of the
-classic C declaration
-
-   `int (*func)();'
-
-or the ANSI-C style declaration
-
-   `int (*func)(int, int);'
-
-we may write
-
-   `rl_command_func_t *func;'
-
-   The full list of function pointer types available is
-
-`typedef int rl_command_func_t (int, int);'
-
-`typedef char *rl_compentry_func_t (const char *, int);'
-
-`typedef char **rl_completion_func_t (const char *, int, int);'
-
-`typedef char *rl_quote_func_t (char *, int, char *);'
-
-`typedef char *rl_dequote_func_t (char *, int);'
-
-`typedef int rl_compignore_func_t (char **);'
-
-`typedef void rl_compdisp_func_t (char **, int, int);'
-
-`typedef int rl_hook_func_t (void);'
-
-`typedef int rl_getc_func_t (FILE *);'
-
-`typedef int rl_linebuf_func_t (char *, int);'
-
-`typedef int rl_intfunc_t (int);'
-
-`#define rl_ivoidfunc_t rl_hook_func_t'
-
-`typedef int rl_icpfunc_t (char *);'
-
-`typedef int rl_icppfunc_t (char **);'
-
-`typedef void rl_voidfunc_t (void);'
-
-`typedef void rl_vintfunc_t (int);'
-
-`typedef void rl_vcpfunc_t (char *);'
-
-`typedef void rl_vcppfunc_t (char **);'
-
-\1f
-File: readline.info,  Node: Function Writing,  Prev: Readline Typedefs,  Up: Custom Functions
-
-2.2.2 Writing a New Function
-----------------------------
-
-In order to write new functions for Readline, you need to know the
-calling conventions for keyboard-invoked functions, and the names of the
-variables that describe the current state of the line read so far.
-
-   The calling sequence for a command `foo' looks like
-
-     `int foo (int count, int key)'
-
-where COUNT is the numeric argument (or 1 if defaulted) and KEY is the
-key that invoked this function.
-
-   It is completely up to the function as to what should be done with
-the numeric argument.  Some functions use it as a repeat count, some as
-a flag, and others to choose alternate behavior (refreshing the current
-line as opposed to refreshing the screen, for example).  Some choose to
-ignore it.  In general, if a function uses the numeric argument as a
-repeat count, it should be able to do something useful with both
-negative and positive arguments.  At the very least, it should be aware
-that it can be passed a negative argument.
-
-   A command function should return 0 if its action completes
-successfully, and a non-zero value if some error occurs.  This is the
-convention obeyed by all of the builtin Readline bindable command
-functions.
-
-\1f
-File: readline.info,  Node: Readline Variables,  Next: Readline Convenience Functions,  Prev: Custom Functions,  Up: Programming with GNU Readline
-
-2.3 Readline Variables
-======================
-
-These variables are available to function writers.
-
- -- Variable: char * rl_line_buffer
-     This is the line gathered so far.  You are welcome to modify the
-     contents of the line, but see *note Allowing Undoing::.  The
-     function `rl_extend_line_buffer' is available to increase the
-     memory allocated to `rl_line_buffer'.
-
- -- Variable: int rl_point
-     The offset of the current cursor position in `rl_line_buffer' (the
-     _point_).
-
- -- Variable: int rl_end
-     The number of characters present in `rl_line_buffer'.  When
-     `rl_point' is at the end of the line, `rl_point' and `rl_end' are
-     equal.
-
- -- Variable: int rl_mark
-     The MARK (saved position) in the current line.  If set, the mark
-     and point define a _region_.
-
- -- Variable: int rl_done
-     Setting this to a non-zero value causes Readline to return the
-     current line immediately.
-
- -- Variable: int rl_num_chars_to_read
-     Setting this to a positive value before calling `readline()' causes
-     Readline to return after accepting that many characters, rather
-     than reading up to a character bound to `accept-line'.
-
- -- Variable: int rl_pending_input
-     Setting this to a value makes it the next keystroke read.  This is
-     a way to stuff a single character into the input stream.
-
- -- Variable: int rl_dispatching
-     Set to a non-zero value if a function is being called from a key
-     binding; zero otherwise.  Application functions can test this to
-     discover whether they were called directly or by Readline's
-     dispatching mechanism.
-
- -- Variable: int rl_erase_empty_line
-     Setting this to a non-zero value causes Readline to completely
-     erase the current line, including any prompt, any time a newline
-     is typed as the only character on an otherwise-empty line.  The
-     cursor is moved to the beginning of the newly-blank line.
-
- -- Variable: char * rl_prompt
-     The prompt Readline uses.  This is set from the argument to
-     `readline()', and should not be assigned to directly.  The
-     `rl_set_prompt()' function (*note Redisplay::) may be used to
-     modify the prompt string after calling `readline()'.
-
- -- Variable: char * rl_display_prompt
-     The string displayed as the prompt.  This is usually identical to
-     RL_PROMPT, but may be changed temporarily by functions that use
-     the prompt string as a message area, such as incremental search.
-
- -- Variable: int rl_already_prompted
-     If an application wishes to display the prompt itself, rather than
-     have Readline do it the first time `readline()' is called, it
-     should set this variable to a non-zero value after displaying the
-     prompt.  The prompt must also be passed as the argument to
-     `readline()' so the redisplay functions can update the display
-     properly.  The calling application is responsible for managing the
-     value; Readline never sets it.
-
- -- Variable: const char * rl_library_version
-     The version number of this revision of the library.
-
- -- Variable: int rl_readline_version
-     An integer encoding the current version of the library.  The
-     encoding is of the form 0xMMMM, where MM is the two-digit major
-     version number, and MM is the two-digit minor version number.  For
-     example, for Readline-4.2, `rl_readline_version' would have the
-     value 0x0402.
-
- -- Variable: int rl_gnu_readline_p
-     Always set to 1, denoting that this is GNU readline rather than
-     some emulation.
-
- -- Variable: const char * rl_terminal_name
-     The terminal type, used for initialization.  If not set by the
-     application, Readline sets this to the value of the `TERM'
-     environment variable the first time it is called.
-
- -- Variable: const char * rl_readline_name
-     This variable is set to a unique name by each application using
-     Readline.  The value allows conditional parsing of the inputrc file
-     (*note Conditional Init Constructs::).
-
- -- Variable: FILE * rl_instream
-     The stdio stream from which Readline reads input.  If `NULL',
-     Readline defaults to STDIN.
-
- -- Variable: FILE * rl_outstream
-     The stdio stream to which Readline performs output.  If `NULL',
-     Readline defaults to STDOUT.
-
- -- Variable: int rl_prefer_env_winsize
-     If non-zero, Readline gives values found in the `LINES' and
-     `COLUMNS' environment variables greater precedence than values
-     fetched from the kernel when computing the screen dimensions.
-
- -- Variable: rl_command_func_t * rl_last_func
-     The address of the last command function Readline executed.  May
-     be used to test whether or not a function is being executed twice
-     in succession, for example.
-
- -- Variable: rl_hook_func_t * rl_startup_hook
-     If non-zero, this is the address of a function to call just before
-     `readline' prints the first prompt.
-
- -- Variable: rl_hook_func_t * rl_pre_input_hook
-     If non-zero, this is the address of a function to call after the
-     first prompt has been printed and just before `readline' starts
-     reading input characters.
-
- -- Variable: rl_hook_func_t * rl_event_hook
-     If non-zero, this is the address of a function to call periodically
-     when Readline is waiting for terminal input.  By default, this
-     will be called at most ten times a second if there is no keyboard
-     input.
-
- -- Variable: rl_getc_func_t * rl_getc_function
-     If non-zero, Readline will call indirectly through this pointer to
-     get a character from the input stream.  By default, it is set to
-     `rl_getc', the default Readline character input function (*note
-     Character Input::).
-
- -- Variable: rl_voidfunc_t * rl_redisplay_function
-     If non-zero, Readline will call indirectly through this pointer to
-     update the display with the current contents of the editing buffer.
-     By default, it is set to `rl_redisplay', the default Readline
-     redisplay function (*note Redisplay::).
-
- -- Variable: rl_vintfunc_t * rl_prep_term_function
-     If non-zero, Readline will call indirectly through this pointer to
-     initialize the terminal.  The function takes a single argument, an
-     `int' flag that says whether or not to use eight-bit characters.
-     By default, this is set to `rl_prep_terminal' (*note Terminal
-     Management::).
-
- -- Variable: rl_voidfunc_t * rl_deprep_term_function
-     If non-zero, Readline will call indirectly through this pointer to
-     reset the terminal.  This function should undo the effects of
-     `rl_prep_term_function'.  By default, this is set to
-     `rl_deprep_terminal' (*note Terminal Management::).
-
- -- Variable: Keymap rl_executing_keymap
-     This variable is set to the keymap (*note Keymaps::) in which the
-     currently executing readline function was found.
-
- -- Variable: Keymap rl_binding_keymap
-     This variable is set to the keymap (*note Keymaps::) in which the
-     last key binding occurred.
-
- -- Variable: char * rl_executing_macro
-     This variable is set to the text of any currently-executing macro.
-
- -- Variable: int rl_readline_state
-     A variable with bit values that encapsulate the current Readline
-     state.  A bit is set with the `RL_SETSTATE' macro, and unset with
-     the `RL_UNSETSTATE' macro.  Use the `RL_ISSTATE' macro to test
-     whether a particular state bit is set.  Current state bits include:
-
-    `RL_STATE_NONE'
-          Readline has not yet been called, nor has it begun to
-          intialize.
-
-    `RL_STATE_INITIALIZING'
-          Readline is initializing its internal data structures.
-
-    `RL_STATE_INITIALIZED'
-          Readline has completed its initialization.
-
-    `RL_STATE_TERMPREPPED'
-          Readline has modified the terminal modes to do its own input
-          and redisplay.
-
-    `RL_STATE_READCMD'
-          Readline is reading a command from the keyboard.
-
-    `RL_STATE_METANEXT'
-          Readline is reading more input after reading the meta-prefix
-          character.
-
-    `RL_STATE_DISPATCHING'
-          Readline is dispatching to a command.
-
-    `RL_STATE_MOREINPUT'
-          Readline is reading more input while executing an editing
-          command.
-
-    `RL_STATE_ISEARCH'
-          Readline is performing an incremental history search.
-
-    `RL_STATE_NSEARCH'
-          Readline is performing a non-incremental history search.
-
-    `RL_STATE_SEARCH'
-          Readline is searching backward or forward through the history
-          for a string.
-
-    `RL_STATE_NUMERICARG'
-          Readline is reading a numeric argument.
-
-    `RL_STATE_MACROINPUT'
-          Readline is currently getting its input from a
-          previously-defined keyboard macro.
-
-    `RL_STATE_MACRODEF'
-          Readline is currently reading characters defining a keyboard
-          macro.
-
-    `RL_STATE_OVERWRITE'
-          Readline is in overwrite mode.
-
-    `RL_STATE_COMPLETING'
-          Readline is performing word completion.
-
-    `RL_STATE_SIGHANDLER'
-          Readline is currently executing the readline signal handler.
-
-    `RL_STATE_UNDOING'
-          Readline is performing an undo.
-
-    `RL_STATE_INPUTPENDING'
-          Readline has input pending due to a call to
-          `rl_execute_next()'.
-
-    `RL_STATE_TTYCSAVED'
-          Readline has saved the values of the terminal's special
-          characters.
-
-    `RL_STATE_CALLBACK'
-          Readline is currently using the alternate (callback) interface
-          (*note Alternate Interface::).
-
-    `RL_STATE_VIMOTION'
-          Readline is reading the argument to a vi-mode "motion"
-          command.
-
-    `RL_STATE_MULTIKEY'
-          Readline is reading a multiple-keystroke command.
-
-    `RL_STATE_VICMDONCE'
-          Readline has entered vi command (movement) mode at least one
-          time during the current call to `readline()'.
-
-    `RL_STATE_DONE'
-          Readline has read a key sequence bound to `accept-line' and
-          is about to return the line to the caller.
-
-
- -- Variable: int rl_explicit_arg
-     Set to a non-zero value if an explicit numeric argument was
-     specified by the user.  Only valid in a bindable command function.
-
- -- Variable: int rl_numeric_arg
-     Set to the value of any numeric argument explicitly specified by
-     the user before executing the current Readline function.  Only
-     valid in a bindable command function.
-
- -- Variable: int rl_editing_mode
-     Set to a value denoting Readline's current editing mode.  A value
-     of 1 means Readline is currently in emacs mode; 0 means that vi
-     mode is active.
-
-\1f
-File: readline.info,  Node: Readline Convenience Functions,  Next: Readline Signal Handling,  Prev: Readline Variables,  Up: Programming with GNU Readline
-
-2.4 Readline Convenience Functions
-==================================
-
-* Menu:
-
-* Function Naming::    How to give a function you write a name.
-* Keymaps::            Making keymaps.
-* Binding Keys::       Changing Keymaps.
-* Associating Function Names and Bindings::    Translate function names to
-                                               key sequences.
-* Allowing Undoing::   How to make your functions undoable.
-* Redisplay::          Functions to control line display.
-* Modifying Text::     Functions to modify `rl_line_buffer'.
-* Character Input::    Functions to read keyboard input.
-* Terminal Management::        Functions to manage terminal settings.
-* Utility Functions::  Generally useful functions and hooks.
-* Miscellaneous Functions::    Functions that don't fall into any category.
-* Alternate Interface::        Using Readline in a `callback' fashion.
-* A Readline Example::         An example Readline function.
-
-\1f
-File: readline.info,  Node: Function Naming,  Next: Keymaps,  Up: Readline Convenience Functions
-
-2.4.1 Naming a Function
------------------------
-
-The user can dynamically change the bindings of keys while using
-Readline.  This is done by representing the function with a descriptive
-name.  The user is able to type the descriptive name when referring to
-the function.  Thus, in an init file, one might find
-
-     Meta-Rubout:      backward-kill-word
-
-   This binds the keystroke <Meta-Rubout> to the function
-_descriptively_ named `backward-kill-word'.  You, as the programmer,
-should bind the functions you write to descriptive names as well.
-Readline provides a function for doing that:
-
- -- Function: int rl_add_defun (const char *name, rl_command_func_t
-          *function, int key)
-     Add NAME to the list of named functions.  Make FUNCTION be the
-     function that gets called.  If KEY is not -1, then bind it to
-     FUNCTION using `rl_bind_key()'.
-
-   Using this function alone is sufficient for most applications.  It
-is the recommended way to add a few functions to the default functions
-that Readline has built in.  If you need to do something other than
-adding a function to Readline, you may need to use the underlying
-functions described below.
-
-\1f
-File: readline.info,  Node: Keymaps,  Next: Binding Keys,  Prev: Function Naming,  Up: Readline Convenience Functions
-
-2.4.2 Selecting a Keymap
-------------------------
-
-Key bindings take place on a "keymap".  The keymap is the association
-between the keys that the user types and the functions that get run.
-You can make your own keymaps, copy existing keymaps, and tell Readline
-which keymap to use.
-
- -- Function: Keymap rl_make_bare_keymap (void)
-     Returns a new, empty keymap.  The space for the keymap is
-     allocated with `malloc()'; the caller should free it by calling
-     `rl_free_keymap()' when done.
-
- -- Function: Keymap rl_copy_keymap (Keymap map)
-     Return a new keymap which is a copy of MAP.
-
- -- Function: Keymap rl_make_keymap (void)
-     Return a new keymap with the printing characters bound to
-     rl_insert, the lowercase Meta characters bound to run their
-     equivalents, and the Meta digits bound to produce numeric
-     arguments.
-
- -- Function: void rl_discard_keymap (Keymap keymap)
-     Free the storage associated with the data in KEYMAP.  The caller
-     should free KEYMAP.
-
- -- Function: void rl_free_keymap (Keymap keymap)
-     Free all storage associated with KEYMAP.  This calls
-     `rl_discard_keymap' to free subordindate keymaps and macros.
-
-   Readline has several internal keymaps.  These functions allow you to
-change which keymap is active.
-
- -- Function: Keymap rl_get_keymap (void)
-     Returns the currently active keymap.
-
- -- Function: void rl_set_keymap (Keymap keymap)
-     Makes KEYMAP the currently active keymap.
-
- -- Function: Keymap rl_get_keymap_by_name (const char *name)
-     Return the keymap matching NAME.  NAME is one which would be
-     supplied in a `set keymap' inputrc line (*note Readline Init
-     File::).
-
- -- Function: char * rl_get_keymap_name (Keymap keymap)
-     Return the name matching KEYMAP.  NAME is one which would be
-     supplied in a `set keymap' inputrc line (*note Readline Init
-     File::).
-
-\1f
-File: readline.info,  Node: Binding Keys,  Next: Associating Function Names and Bindings,  Prev: Keymaps,  Up: Readline Convenience Functions
-
-2.4.3 Binding Keys
-------------------
-
-Key sequences are associate with functions through the keymap.
-Readline has several internal keymaps: `emacs_standard_keymap',
-`emacs_meta_keymap', `emacs_ctlx_keymap', `vi_movement_keymap', and
-`vi_insertion_keymap'.  `emacs_standard_keymap' is the default, and the
-examples in this manual assume that.
-
-   Since `readline()' installs a set of default key bindings the first
-time it is called, there is always the danger that a custom binding
-installed before the first call to `readline()' will be overridden.  An
-alternate mechanism is to install custom key bindings in an
-initialization function assigned to the `rl_startup_hook' variable
-(*note Readline Variables::).
-
-   These functions manage key bindings.
-
- -- Function: int rl_bind_key (int key, rl_command_func_t *function)
-     Binds KEY to FUNCTION in the currently active keymap.  Returns
-     non-zero in the case of an invalid KEY.
-
- -- Function: int rl_bind_key_in_map (int key, rl_command_func_t
-          *function, Keymap map)
-     Bind KEY to FUNCTION in MAP.  Returns non-zero in the case of an
-     invalid KEY.
-
- -- Function: int rl_bind_key_if_unbound (int key, rl_command_func_t
-          *function)
-     Binds KEY to FUNCTION if it is not already bound in the currently
-     active keymap.  Returns non-zero in the case of an invalid KEY or
-     if KEY is already bound.
-
- -- Function: int rl_bind_key_if_unbound_in_map (int key,
-          rl_command_func_t *function, Keymap map)
-     Binds KEY to FUNCTION if it is not already bound in MAP.  Returns
-     non-zero in the case of an invalid KEY or if KEY is already bound.
-
- -- Function: int rl_unbind_key (int key)
-     Bind KEY to the null function in the currently active keymap.
-     Returns non-zero in case of error.
-
- -- Function: int rl_unbind_key_in_map (int key, Keymap map)
-     Bind KEY to the null function in MAP.  Returns non-zero in case of
-     error.
-
- -- Function: int rl_unbind_function_in_map (rl_command_func_t
-          *function, Keymap map)
-     Unbind all keys that execute FUNCTION in MAP.
-
- -- Function: int rl_unbind_command_in_map (const char *command, Keymap
-          map)
-     Unbind all keys that are bound to COMMAND in MAP.
-
- -- Function: int rl_bind_keyseq (const char *keyseq, rl_command_func_t
-          *function)
-     Bind the key sequence represented by the string KEYSEQ to the
-     function FUNCTION, beginning in the current keymap.  This makes
-     new keymaps as necessary.  The return value is non-zero if KEYSEQ
-     is invalid.
-
- -- Function: int rl_bind_keyseq_in_map (const char *keyseq,
-          rl_command_func_t *function, Keymap map)
-     Bind the key sequence represented by the string KEYSEQ to the
-     function FUNCTION.  This makes new keymaps as necessary.  Initial
-     bindings are performed in MAP.  The return value is non-zero if
-     KEYSEQ is invalid.
-
- -- Function: int rl_set_key (const char *keyseq, rl_command_func_t
-          *function, Keymap map)
-     Equivalent to `rl_bind_keyseq_in_map'.
-
- -- Function: int rl_bind_keyseq_if_unbound (const char *keyseq,
-          rl_command_func_t *function)
-     Binds KEYSEQ to FUNCTION if it is not already bound in the
-     currently active keymap.  Returns non-zero in the case of an
-     invalid KEYSEQ or if KEYSEQ is already bound.
-
- -- Function: int rl_bind_keyseq_if_unbound_in_map (const char *keyseq,
-          rl_command_func_t *function, Keymap map)
-     Binds KEYSEQ to FUNCTION if it is not already bound in MAP.
-     Returns non-zero in the case of an invalid KEYSEQ or if KEYSEQ is
-     already bound.
-
- -- Function: int rl_generic_bind (int type, const char *keyseq, char
-          *data, Keymap map)
-     Bind the key sequence represented by the string KEYSEQ to the
-     arbitrary pointer DATA.  TYPE says what kind of data is pointed to
-     by DATA; this can be a function (`ISFUNC'), a macro (`ISMACR'), or
-     a keymap (`ISKMAP').  This makes new keymaps as necessary.  The
-     initial keymap in which to do bindings is MAP.
-
- -- Function: int rl_parse_and_bind (char *line)
-     Parse LINE as if it had been read from the `inputrc' file and
-     perform any key bindings and variable assignments found (*note
-     Readline Init File::).
-
- -- Function: int rl_read_init_file (const char *filename)
-     Read keybindings and variable assignments from FILENAME (*note
-     Readline Init File::).
-
-\1f
-File: readline.info,  Node: Associating Function Names and Bindings,  Next: Allowing Undoing,  Prev: Binding Keys,  Up: Readline Convenience Functions
-
-2.4.4 Associating Function Names and Bindings
----------------------------------------------
-
-These functions allow you to find out what keys invoke named functions
-and the functions invoked by a particular key sequence.  You may also
-associate a new function name with an arbitrary function.
-
- -- Function: rl_command_func_t * rl_named_function (const char *name)
-     Return the function with name NAME.
-
- -- Function: rl_command_func_t * rl_function_of_keyseq (const char
-          *keyseq, Keymap map, int *type)
-     Return the function invoked by KEYSEQ in keymap MAP.  If MAP is
-     `NULL', the current keymap is used.  If TYPE is not `NULL', the
-     type of the object is returned in the `int' variable it points to
-     (one of `ISFUNC', `ISKMAP', or `ISMACR').
-
- -- Function: char ** rl_invoking_keyseqs (rl_command_func_t *function)
-     Return an array of strings representing the key sequences used to
-     invoke FUNCTION in the current keymap.
-
- -- Function: char ** rl_invoking_keyseqs_in_map (rl_command_func_t
-          *function, Keymap map)
-     Return an array of strings representing the key sequences used to
-     invoke FUNCTION in the keymap MAP.
-
- -- Function: void rl_function_dumper (int readable)
-     Print the readline function names and the key sequences currently
-     bound to them to `rl_outstream'.  If READABLE is non-zero, the
-     list is formatted in such a way that it can be made part of an
-     `inputrc' file and re-read.
-
- -- Function: void rl_list_funmap_names (void)
-     Print the names of all bindable Readline functions to
-     `rl_outstream'.
-
- -- Function: const char ** rl_funmap_names (void)
-     Return a NULL terminated array of known function names.  The array
-     is sorted.  The array itself is allocated, but not the strings
-     inside.  You should free the array, but not the pointers, using
-     `free' or `rl_free' when you are done.
-
- -- Function: int rl_add_funmap_entry (const char *name,
-          rl_command_func_t *function)
-     Add NAME to the list of bindable Readline command names, and make
-     FUNCTION the function to be called when NAME is invoked.
-
-\1f
-File: readline.info,  Node: Allowing Undoing,  Next: Redisplay,  Prev: Associating Function Names and Bindings,  Up: Readline Convenience Functions
-
-2.4.5 Allowing Undoing
-----------------------
-
-Supporting the undo command is a painless thing, and makes your
-functions much more useful.  It is certainly easy to try something if
-you know you can undo it.
-
-   If your function simply inserts text once, or deletes text once, and
-uses `rl_insert_text()' or `rl_delete_text()' to do it, then undoing is
-already done for you automatically.
-
-   If you do multiple insertions or multiple deletions, or any
-combination of these operations, you should group them together into
-one operation.  This is done with `rl_begin_undo_group()' and
-`rl_end_undo_group()'.
-
-   The types of events that can be undone are:
-
-     enum undo_code { UNDO_DELETE, UNDO_INSERT, UNDO_BEGIN, UNDO_END };
-
-   Notice that `UNDO_DELETE' means to insert some text, and
-`UNDO_INSERT' means to delete some text.  That is, the undo code tells
-what to undo, not how to undo it.  `UNDO_BEGIN' and `UNDO_END' are tags
-added by `rl_begin_undo_group()' and `rl_end_undo_group()'.
-
- -- Function: int rl_begin_undo_group (void)
-     Begins saving undo information in a group construct.  The undo
-     information usually comes from calls to `rl_insert_text()' and
-     `rl_delete_text()', but could be the result of calls to
-     `rl_add_undo()'.
-
- -- Function: int rl_end_undo_group (void)
-     Closes the current undo group started with `rl_begin_undo_group
-     ()'.  There should be one call to `rl_end_undo_group()' for each
-     call to `rl_begin_undo_group()'.
-
- -- Function: void rl_add_undo (enum undo_code what, int start, int
-          end, char *text)
-     Remember how to undo an event (according to WHAT).  The affected
-     text runs from START to END, and encompasses TEXT.
-
- -- Function: void rl_free_undo_list (void)
-     Free the existing undo list.
-
- -- Function: int rl_do_undo (void)
-     Undo the first thing on the undo list.  Returns `0' if there was
-     nothing to undo, non-zero if something was undone.
-
-   Finally, if you neither insert nor delete text, but directly modify
-the existing text (e.g., change its case), call `rl_modifying()' once,
-just before you modify the text.  You must supply the indices of the
-text range that you are going to modify.
-
- -- Function: int rl_modifying (int start, int end)
-     Tell Readline to save the text between START and END as a single
-     undo unit.  It is assumed that you will subsequently modify that
-     text.
-
-\1f
-File: readline.info,  Node: Redisplay,  Next: Modifying Text,  Prev: Allowing Undoing,  Up: Readline Convenience Functions
-
-2.4.6 Redisplay
----------------
-
- -- Function: void rl_redisplay (void)
-     Change what's displayed on the screen to reflect the current
-     contents of `rl_line_buffer'.
-
- -- Function: int rl_forced_update_display (void)
-     Force the line to be updated and redisplayed, whether or not
-     Readline thinks the screen display is correct.
-
- -- Function: int rl_on_new_line (void)
-     Tell the update functions that we have moved onto a new (empty)
-     line, usually after ouputting a newline.
-
- -- Function: int rl_on_new_line_with_prompt (void)
-     Tell the update functions that we have moved onto a new line, with
-     RL_PROMPT already displayed.  This could be used by applications
-     that want to output the prompt string themselves, but still need
-     Readline to know the prompt string length for redisplay.  It
-     should be used after setting RL_ALREADY_PROMPTED.
-
- -- Function: int rl_reset_line_state (void)
-     Reset the display state to a clean state and redisplay the current
-     line starting on a new line.
-
- -- Function: int rl_crlf (void)
-     Move the cursor to the start of the next screen line.
-
- -- Function: int rl_show_char (int c)
-     Display character C on `rl_outstream'.  If Readline has not been
-     set to display meta characters directly, this will convert meta
-     characters to a meta-prefixed key sequence.  This is intended for
-     use by applications which wish to do their own redisplay.
-
- -- Function: int rl_message (const char *, ...)
-     The arguments are a format string as would be supplied to `printf',
-     possibly containing conversion specifications such as `%d', and
-     any additional arguments necessary to satisfy the conversion
-     specifications.  The resulting string is displayed in the "echo
-     area".  The echo area is also used to display numeric arguments
-     and search strings.  You should call `rl_save_prompt' to save the
-     prompt information before calling this function.
-
- -- Function: int rl_clear_message (void)
-     Clear the message in the echo area.  If the prompt was saved with
-     a call to `rl_save_prompt' before the last call to `rl_message',
-     call `rl_restore_prompt' before calling this function.
-
- -- Function: void rl_save_prompt (void)
-     Save the local Readline prompt display state in preparation for
-     displaying a new message in the message area with `rl_message()'.
-
- -- Function: void rl_restore_prompt (void)
-     Restore the local Readline prompt display state saved by the most
-     recent call to `rl_save_prompt'.  if `rl_save_prompt' was called
-     to save the prompt before a call to `rl_message', this function
-     should be called before the corresponding call to
-     `rl_clear_message'.
-
- -- Function: int rl_expand_prompt (char *prompt)
-     Expand any special character sequences in PROMPT and set up the
-     local Readline prompt redisplay variables.  This function is
-     called by `readline()'.  It may also be called to expand the
-     primary prompt if the `rl_on_new_line_with_prompt()' function or
-     `rl_already_prompted' variable is used.  It returns the number of
-     visible characters on the last line of the (possibly multi-line)
-     prompt.  Applications may indicate that the prompt contains
-     characters that take up no physical screen space when displayed by
-     bracketing a sequence of such characters with the special markers
-     `RL_PROMPT_START_IGNORE' and `RL_PROMPT_END_IGNORE' (declared in
-     `readline.h'.  This may be used to embed terminal-specific escape
-     sequences in prompts.
-
- -- Function: int rl_set_prompt (const char *prompt)
-     Make Readline use PROMPT for subsequent redisplay.  This calls
-     `rl_expand_prompt()' to expand the prompt and sets `rl_prompt' to
-     the result.
-
-\1f
-File: readline.info,  Node: Modifying Text,  Next: Character Input,  Prev: Redisplay,  Up: Readline Convenience Functions
-
-2.4.7 Modifying Text
---------------------
-
- -- Function: int rl_insert_text (const char *text)
-     Insert TEXT into the line at the current cursor position.  Returns
-     the number of characters inserted.
-
- -- Function: int rl_delete_text (int start, int end)
-     Delete the text between START and END in the current line.
-     Returns the number of characters deleted.
-
- -- Function: char * rl_copy_text (int start, int end)
-     Return a copy of the text between START and END in the current
-     line.
-
- -- Function: int rl_kill_text (int start, int end)
-     Copy the text between START and END in the current line to the
-     kill ring, appending or prepending to the last kill if the last
-     command was a kill command.  The text is deleted.  If START is
-     less than END, the text is appended, otherwise prepended.  If the
-     last command was not a kill, a new kill ring slot is used.
-
- -- Function: int rl_push_macro_input (char *macro)
-     Cause MACRO to be inserted into the line, as if it had been invoked
-     by a key bound to a macro.  Not especially useful; use
-     `rl_insert_text()' instead.
-
-\1f
-File: readline.info,  Node: Character Input,  Next: Terminal Management,  Prev: Modifying Text,  Up: Readline Convenience Functions
-
-2.4.8 Character Input
----------------------
-
- -- Function: int rl_read_key (void)
-     Return the next character available from Readline's current input
-     stream.  This handles input inserted into the input stream via
-     RL_PENDING_INPUT (*note Readline Variables::) and
-     `rl_stuff_char()', macros, and characters read from the keyboard.
-     While waiting for input, this function will call any function
-     assigned to the `rl_event_hook' variable.
-
- -- Function: int rl_getc (FILE *stream)
-     Return the next character available from STREAM, which is assumed
-     to be the keyboard.
-
- -- Function: int rl_stuff_char (int c)
-     Insert C into the Readline input stream.  It will be "read" before
-     Readline attempts to read characters from the terminal with
-     `rl_read_key()'.  Up to 512 characters may be pushed back.
-     `rl_stuff_char' returns 1 if the character was successfully
-     inserted; 0 otherwise.
-
- -- Function: int rl_execute_next (int c)
-     Make C be the next command to be executed when `rl_read_key()' is
-     called.  This sets RL_PENDING_INPUT.
-
- -- Function: int rl_clear_pending_input (void)
-     Unset RL_PENDING_INPUT, effectively negating the effect of any
-     previous call to `rl_execute_next()'.  This works only if the
-     pending input has not already been read with `rl_read_key()'.
-
- -- Function: int rl_set_keyboard_input_timeout (int u)
-     While waiting for keyboard input in `rl_read_key()', Readline will
-     wait for U microseconds for input before calling any function
-     assigned to `rl_event_hook'.  U must be greater than or equal to
-     zero (a zero-length timeout is equivalent to a poll).  The default
-     waiting period is one-tenth of a second.  Returns the old timeout
-     value.
-
-\1f
-File: readline.info,  Node: Terminal Management,  Next: Utility Functions,  Prev: Character Input,  Up: Readline Convenience Functions
-
-2.4.9 Terminal Management
--------------------------
-
- -- Function: void rl_prep_terminal (int meta_flag)
-     Modify the terminal settings for Readline's use, so `readline()'
-     can read a single character at a time from the keyboard.  The
-     META_FLAG argument should be non-zero if Readline should read
-     eight-bit input.
-
- -- Function: void rl_deprep_terminal (void)
-     Undo the effects of `rl_prep_terminal()', leaving the terminal in
-     the state in which it was before the most recent call to
-     `rl_prep_terminal()'.
-
- -- Function: void rl_tty_set_default_bindings (Keymap kmap)
-     Read the operating system's terminal editing characters (as would
-     be displayed by `stty') to their Readline equivalents.  The
-     bindings are performed in KMAP.
-
- -- Function: void rl_tty_unset_default_bindings (Keymap kmap)
-     Reset the bindings manipulated by `rl_tty_set_default_bindings' so
-     that the terminal editing characters are bound to `rl_insert'.
-     The bindings are performed in KMAP.
-
- -- Function: int rl_reset_terminal (const char *terminal_name)
-     Reinitialize Readline's idea of the terminal settings using
-     TERMINAL_NAME as the terminal type (e.g., `vt100').  If
-     TERMINAL_NAME is `NULL', the value of the `TERM' environment
-     variable is used.
-
-\1f
-File: readline.info,  Node: Utility Functions,  Next: Miscellaneous Functions,  Prev: Terminal Management,  Up: Readline Convenience Functions
-
-2.4.10 Utility Functions
-------------------------
-
- -- Function: int rl_save_state (struct readline_state *sp)
-     Save a snapshot of Readline's internal state to SP.  The contents
-     of the READLINE_STATE structure are documented in `readline.h'.
-     The caller is responsible for allocating the structure.
-
- -- Function: int rl_restore_state (struct readline_state *sp)
-     Restore Readline's internal state to that stored in SP, which must
-     have been saved by a call to `rl_save_state'.  The contents of the
-     READLINE_STATE structure are documented in `readline.h'.  The
-     caller is responsible for freeing the structure.
-
- -- Function: void rl_free (void *mem)
-     Deallocate the memory pointed to by MEM.  MEM must have been
-     allocated by `malloc'.
-
- -- Function: void rl_replace_line (const char *text, int clear_undo)
-     Replace the contents of `rl_line_buffer' with TEXT.  The point and
-     mark are preserved, if possible.  If CLEAR_UNDO is non-zero, the
-     undo list associated with the current line is cleared.
-
- -- Function: void rl_extend_line_buffer (int len)
-     Ensure that `rl_line_buffer' has enough space to hold LEN
-     characters, possibly reallocating it if necessary.
-
- -- Function: int rl_initialize (void)
-     Initialize or re-initialize Readline's internal state.  It's not
-     strictly necessary to call this; `readline()' calls it before
-     reading any input.
-
- -- Function: int rl_ding (void)
-     Ring the terminal bell, obeying the setting of `bell-style'.
-
- -- Function: int rl_alphabetic (int c)
-     Return 1 if C is an alphabetic character.
-
- -- Function: void rl_display_match_list (char **matches, int len, int
-          max)
-     A convenience function for displaying a list of strings in
-     columnar format on Readline's output stream.  `matches' is the list
-     of strings, in argv format, such as a list of completion matches.
-     `len' is the number of strings in `matches', and `max' is the
-     length of the longest string in `matches'.  This function uses the
-     setting of `print-completions-horizontally' to select how the
-     matches are displayed (*note Readline Init File Syntax::).  When
-     displaying completions, this function sets the number of columns
-     used for display to the value of `completion-display-width', the
-     value of the environment variable `COLUMNS', or the screen width,
-     in that order.
-
-   The following are implemented as macros, defined in `chardefs.h'.
-Applications should refrain from using them.
-
- -- Function: int _rl_uppercase_p (int c)
-     Return 1 if C is an uppercase alphabetic character.
-
- -- Function: int _rl_lowercase_p (int c)
-     Return 1 if C is a lowercase alphabetic character.
-
- -- Function: int _rl_digit_p (int c)
-     Return 1 if C is a numeric character.
-
- -- Function: int _rl_to_upper (int c)
-     If C is a lowercase alphabetic character, return the corresponding
-     uppercase character.
-
- -- Function: int _rl_to_lower (int c)
-     If C is an uppercase alphabetic character, return the corresponding
-     lowercase character.
-
- -- Function: int _rl_digit_value (int c)
-     If C is a number, return the value it represents.
-
-\1f
-File: readline.info,  Node: Miscellaneous Functions,  Next: Alternate Interface,  Prev: Utility Functions,  Up: Readline Convenience Functions
-
-2.4.11 Miscellaneous Functions
-------------------------------
-
- -- Function: int rl_macro_bind (const char *keyseq, const char *macro,
-          Keymap map)
-     Bind the key sequence KEYSEQ to invoke the macro MACRO.  The
-     binding is performed in MAP.  When KEYSEQ is invoked, the MACRO
-     will be inserted into the line.  This function is deprecated; use
-     `rl_generic_bind()' instead.
-
- -- Function: void rl_macro_dumper (int readable)
-     Print the key sequences bound to macros and their values, using
-     the current keymap, to `rl_outstream'.  If READABLE is non-zero,
-     the list is formatted in such a way that it can be made part of an
-     `inputrc' file and re-read.
-
- -- Function: int rl_variable_bind (const char *variable, const char
-          *value)
-     Make the Readline variable VARIABLE have VALUE.  This behaves as
-     if the readline command `set VARIABLE VALUE' had been executed in
-     an `inputrc' file (*note Readline Init File Syntax::).
-
- -- Function: char * rl_variable_value (const char *variable)
-     Return a string representing the value of the Readline variable
-     VARIABLE.  For boolean variables, this string is either `on' or
-     `off'.
-
- -- Function: void rl_variable_dumper (int readable)
-     Print the readline variable names and their current values to
-     `rl_outstream'.  If READABLE is non-zero, the list is formatted in
-     such a way that it can be made part of an `inputrc' file and
-     re-read.
-
- -- Function: int rl_set_paren_blink_timeout (int u)
-     Set the time interval (in microseconds) that Readline waits when
-     showing a balancing character when `blink-matching-paren' has been
-     enabled.
-
- -- Function: char * rl_get_termcap (const char *cap)
-     Retrieve the string value of the termcap capability CAP.  Readline
-     fetches the termcap entry for the current terminal name and uses
-     those capabilities to move around the screen line and perform other
-     terminal-specific operations, like erasing a line.  Readline does
-     not use all of a terminal's capabilities, and this function will
-     return values for only those capabilities Readline uses.
-
-\1f
-File: readline.info,  Node: Alternate Interface,  Next: A Readline Example,  Prev: Miscellaneous Functions,  Up: Readline Convenience Functions
-
-2.4.12 Alternate Interface
---------------------------
-
-An alternate interface is available to plain `readline()'.  Some
-applications need to interleave keyboard I/O with file, device, or
-window system I/O, typically by using a main loop to `select()' on
-various file descriptors.  To accomodate this need, readline can also
-be invoked as a `callback' function from an event loop.  There are
-functions available to make this easy.
-
- -- Function: void rl_callback_handler_install (const char *prompt,
-          rl_vcpfunc_t *lhandler)
-     Set up the terminal for readline I/O and display the initial
-     expanded value of PROMPT.  Save the value of LHANDLER to use as a
-     function to call when a complete line of input has been entered.
-     The function takes the text of the line as an argument.
-
- -- Function: void rl_callback_read_char (void)
-     Whenever an application determines that keyboard input is
-     available, it should call `rl_callback_read_char()', which will
-     read the next character from the current input source.  If that
-     character completes the line, `rl_callback_read_char' will invoke
-     the LHANDLER function saved by `rl_callback_handler_install' to
-     process the line.  Before calling the LHANDLER function, the
-     terminal settings are reset to the values they had before calling
-     `rl_callback_handler_install'.  If the LHANDLER function returns,
-     the terminal settings are modified for Readline's use again.
-     `EOF' is  indicated by calling LHANDLER with a `NULL' line.
-
- -- Function: void rl_callback_handler_remove (void)
-     Restore the terminal to its initial state and remove the line
-     handler.  This may be called from within a callback as well as
-     independently.  If the LHANDLER installed by
-     `rl_callback_handler_install' does not exit the program, either
-     this function or the function referred to by the value of
-     `rl_deprep_term_function' should be called before the program
-     exits to reset the terminal settings.
-
-\1f
-File: readline.info,  Node: A Readline Example,  Prev: Alternate Interface,  Up: Readline Convenience Functions
-
-2.4.13 A Readline Example
--------------------------
-
-Here is a function which changes lowercase characters to their uppercase
-equivalents, and uppercase characters to lowercase.  If this function
-was bound to `M-c', then typing `M-c' would change the case of the
-character under point.  Typing `M-1 0 M-c' would change the case of the
-following 10 characters, leaving the cursor on the last character
-changed.
-
-     /* Invert the case of the COUNT following characters. */
-     int
-     invert_case_line (count, key)
-          int count, key;
-     {
-       register int start, end, i;
-
-       start = rl_point;
-
-       if (rl_point >= rl_end)
-         return (0);
-
-       if (count < 0)
-         {
-           direction = -1;
-           count = -count;
-         }
-       else
-         direction = 1;
-
-       /* Find the end of the range to modify. */
-       end = start + (count * direction);
-
-       /* Force it to be within range. */
-       if (end > rl_end)
-         end = rl_end;
-       else if (end < 0)
-         end = 0;
-
-       if (start == end)
-         return (0);
-
-       if (start > end)
-         {
-           int temp = start;
-           start = end;
-           end = temp;
-         }
-
-       /* Tell readline that we are modifying the line,
-          so it will save the undo information. */
-       rl_modifying (start, end);
-
-       for (i = start; i != end; i++)
-         {
-           if (_rl_uppercase_p (rl_line_buffer[i]))
-             rl_line_buffer[i] = _rl_to_lower (rl_line_buffer[i]);
-           else if (_rl_lowercase_p (rl_line_buffer[i]))
-             rl_line_buffer[i] = _rl_to_upper (rl_line_buffer[i]);
-         }
-       /* Move point to on top of the last character changed. */
-       rl_point = (direction == 1) ? end - 1 : start;
-       return (0);
-     }
-
-\1f
-File: readline.info,  Node: Readline Signal Handling,  Next: Custom Completers,  Prev: Readline Convenience Functions,  Up: Programming with GNU Readline
-
-2.5 Readline Signal Handling
-============================
-
-Signals are asynchronous events sent to a process by the Unix kernel,
-sometimes on behalf of another process.  They are intended to indicate
-exceptional events, like a user pressing the interrupt key on his
-terminal, or a network connection being broken.  There is a class of
-signals that can be sent to the process currently reading input from
-the keyboard.  Since Readline changes the terminal attributes when it
-is called, it needs to perform special processing when such a signal is
-received in order to restore the terminal to a sane state, or provide
-application writers with functions to do so manually.
-
-   Readline contains an internal signal handler that is installed for a
-number of signals (`SIGINT', `SIGQUIT', `SIGTERM', `SIGALRM',
-`SIGTSTP', `SIGTTIN', and `SIGTTOU').  When one of these signals is
-received, the signal handler will reset the terminal attributes to
-those that were in effect before `readline()' was called, reset the
-signal handling to what it was before `readline()' was called, and
-resend the signal to the calling application.  If and when the calling
-application's signal handler returns, Readline will reinitialize the
-terminal and continue to accept input.  When a `SIGINT' is received,
-the Readline signal handler performs some additional work, which will
-cause any partially-entered line to be aborted (see the description of
-`rl_free_line_state()' below).
-
-   There is an additional Readline signal handler, for `SIGWINCH', which
-the kernel sends to a process whenever the terminal's size changes (for
-example, if a user resizes an `xterm').  The Readline `SIGWINCH'
-handler updates Readline's internal screen size information, and then
-calls any `SIGWINCH' signal handler the calling application has
-installed.  Readline calls the application's `SIGWINCH' signal handler
-without resetting the terminal to its original state.  If the
-application's signal handler does more than update its idea of the
-terminal size and return (for example, a `longjmp' back to a main
-processing loop), it _must_ call `rl_cleanup_after_signal()' (described
-below), to restore the terminal state.
-
-   Readline provides two variables that allow application writers to
-control whether or not it will catch certain signals and act on them
-when they are received.  It is important that applications change the
-values of these variables only when calling `readline()', not in a
-signal handler, so Readline's internal signal state is not corrupted.
-
- -- Variable: int rl_catch_signals
-     If this variable is non-zero, Readline will install signal
-     handlers for `SIGINT', `SIGQUIT', `SIGTERM', `SIGALRM', `SIGTSTP',
-     `SIGTTIN', and `SIGTTOU'.
-
-     The default value of `rl_catch_signals' is 1.
-
- -- Variable: int rl_catch_sigwinch
-     If this variable is non-zero, Readline will install a signal
-     handler for `SIGWINCH'.
-
-     The default value of `rl_catch_sigwinch' is 1.
-
-   If an application does not wish to have Readline catch any signals,
-or to handle signals other than those Readline catches (`SIGHUP', for
-example), Readline provides convenience functions to do the necessary
-terminal and internal state cleanup upon receipt of a signal.
-
- -- Function: void rl_cleanup_after_signal (void)
-     This function will reset the state of the terminal to what it was
-     before `readline()' was called, and remove the Readline signal
-     handlers for all signals, depending on the values of
-     `rl_catch_signals' and `rl_catch_sigwinch'.
-
- -- Function: void rl_free_line_state (void)
-     This will free any partial state associated with the current input
-     line (undo information, any partial history entry, any
-     partially-entered keyboard macro, and any partially-entered
-     numeric argument).  This should be called before
-     `rl_cleanup_after_signal()'.  The Readline signal handler for
-     `SIGINT' calls this to abort the current input line.
-
- -- Function: void rl_reset_after_signal (void)
-     This will reinitialize the terminal and reinstall any Readline
-     signal handlers, depending on the values of `rl_catch_signals' and
-     `rl_catch_sigwinch'.
-
-   If an application does not wish Readline to catch `SIGWINCH', it may
-call `rl_resize_terminal()' or `rl_set_screen_size()' to force Readline
-to update its idea of the terminal size when a `SIGWINCH' is received.
-
- -- Function: void rl_echo_signal_char (int sig)
-     If an application wishes to install its own signal handlers, but
-     still have readline display characters that generate signals,
-     calling this function with SIG set to `SIGINT', `SIGQUIT', or
-     `SIGTSTP' will display the character generating that signal.
-
- -- Function: void rl_resize_terminal (void)
-     Update Readline's internal screen size by reading values from the
-     kernel.
-
- -- Function: void rl_set_screen_size (int rows, int cols)
-     Set Readline's idea of the terminal size to ROWS rows and COLS
-     columns.  If either ROWS or COLUMNS is less than or equal to 0,
-     Readline's idea of that terminal dimension is unchanged.
-
-   If an application does not want to install a `SIGWINCH' handler, but
-is still interested in the screen dimensions, Readline's idea of the
-screen size may be queried.
-
- -- Function: void rl_get_screen_size (int *rows, int *cols)
-     Return Readline's idea of the terminal's size in the variables
-     pointed to by the arguments.
-
- -- Function: void rl_reset_screen_size (void)
-     Cause Readline to reobtain the screen size and recalculate its
-     dimensions.
-
-   The following functions install and remove Readline's signal
-handlers.
-
- -- Function: int rl_set_signals (void)
-     Install Readline's signal handler for `SIGINT', `SIGQUIT',
-     `SIGTERM', `SIGALRM', `SIGTSTP', `SIGTTIN', `SIGTTOU', and
-     `SIGWINCH', depending on the values of `rl_catch_signals' and
-     `rl_catch_sigwinch'.
-
- -- Function: int rl_clear_signals (void)
-     Remove all of the Readline signal handlers installed by
-     `rl_set_signals()'.
-
-\1f
-File: readline.info,  Node: Custom Completers,  Prev: Readline Signal Handling,  Up: Programming with GNU Readline
-
-2.6 Custom Completers
-=====================
-
-Typically, a program that reads commands from the user has a way of
-disambiguating commands and data.  If your program is one of these, then
-it can provide completion for commands, data, or both.  The following
-sections describe how your program and Readline cooperate to provide
-this service.
-
-* Menu:
-
-* How Completing Works::       The logic used to do completion.
-* Completion Functions::       Functions provided by Readline.
-* Completion Variables::       Variables which control completion.
-* A Short Completion Example:: An example of writing completer subroutines.
-
-\1f
-File: readline.info,  Node: How Completing Works,  Next: Completion Functions,  Up: Custom Completers
-
-2.6.1 How Completing Works
---------------------------
-
-In order to complete some text, the full list of possible completions
-must be available.  That is, it is not possible to accurately expand a
-partial word without knowing all of the possible words which make sense
-in that context.  The Readline library provides the user interface to
-completion, and two of the most common completion functions:  filename
-and username.  For completing other types of text, you must write your
-own completion function.  This section describes exactly what such
-functions must do, and provides an example.
-
-   There are three major functions used to perform completion:
-
-  1. The user-interface function `rl_complete()'.  This function is
-     called with the same arguments as other bindable Readline
-     functions: COUNT and INVOKING_KEY.  It isolates the word to be
-     completed and calls `rl_completion_matches()' to generate a list
-     of possible completions.  It then either lists the possible
-     completions, inserts the possible completions, or actually
-     performs the completion, depending on which behavior is desired.
-
-  2. The internal function `rl_completion_matches()' uses an
-     application-supplied "generator" function to generate the list of
-     possible matches, and then returns the array of these matches.
-     The caller should place the address of its generator function in
-     `rl_completion_entry_function'.
-
-  3. The generator function is called repeatedly from
-     `rl_completion_matches()', returning a string each time.  The
-     arguments to the generator function are TEXT and STATE.  TEXT is
-     the partial word to be completed.  STATE is zero the first time
-     the function is called, allowing the generator to perform any
-     necessary initialization, and a positive non-zero integer for each
-     subsequent call.  The generator function returns `(char *)NULL' to
-     inform `rl_completion_matches()' that there are no more
-     possibilities left.  Usually the generator function computes the
-     list of possible completions when STATE is zero, and returns them
-     one at a time on subsequent calls.  Each string the generator
-     function returns as a match must be allocated with `malloc()';
-     Readline frees the strings when it has finished with them.  Such a
-     generator function is referred to as an "application-specific
-     completion function".
-
-
- -- Function: int rl_complete (int ignore, int invoking_key)
-     Complete the word at or before point.  You have supplied the
-     function that does the initial simple matching selection algorithm
-     (see `rl_completion_matches()').  The default is to do filename
-     completion.
-
- -- Variable: rl_compentry_func_t * rl_completion_entry_function
-     This is a pointer to the generator function for
-     `rl_completion_matches()'.  If the value of
-     `rl_completion_entry_function' is `NULL' then the default filename
-     generator function, `rl_filename_completion_function()', is used.
-     An "application-specific completion function" is a function whose
-     address is assigned to `rl_completion_entry_function' and whose
-     return values are used to  generate possible completions.
-
-\1f
-File: readline.info,  Node: Completion Functions,  Next: Completion Variables,  Prev: How Completing Works,  Up: Custom Completers
-
-2.6.2 Completion Functions
---------------------------
-
-Here is the complete list of callable completion functions present in
-Readline.
-
- -- Function: int rl_complete_internal (int what_to_do)
-     Complete the word at or before point.  WHAT_TO_DO says what to do
-     with the completion.  A value of `?' means list the possible
-     completions.  `TAB' means do standard completion.  `*' means
-     insert all of the possible completions.  `!' means to display all
-     of the possible completions, if there is more than one, as well as
-     performing partial completion.  `@' is similar to `!', but
-     possible completions are not listed if the possible completions
-     share a common prefix.
-
- -- Function: int rl_complete (int ignore, int invoking_key)
-     Complete the word at or before point.  You have supplied the
-     function that does the initial simple matching selection algorithm
-     (see `rl_completion_matches()' and `rl_completion_entry_function').
-     The default is to do filename completion.  This calls
-     `rl_complete_internal()' with an argument depending on
-     INVOKING_KEY.
-
- -- Function: int rl_possible_completions (int count, int invoking_key)
-     List the possible completions.  See description of `rl_complete
-     ()'.  This calls `rl_complete_internal()' with an argument of `?'.
-
- -- Function: int rl_insert_completions (int count, int invoking_key)
-     Insert the list of possible completions into the line, deleting the
-     partially-completed word.  See description of `rl_complete()'.
-     This calls `rl_complete_internal()' with an argument of `*'.
-
- -- Function: int rl_completion_mode (rl_command_func_t *cfunc)
-     Returns the apppriate value to pass to `rl_complete_internal()'
-     depending on whether CFUNC was called twice in succession and the
-     values of the `show-all-if-ambiguous' and `show-all-if-unmodified'
-     variables.  Application-specific completion functions may use this
-     function to present the same interface as `rl_complete()'.
-
- -- Function: char ** rl_completion_matches (const char *text,
-          rl_compentry_func_t *entry_func)
-     Returns an array of strings which is a list of completions for
-     TEXT.  If there are no completions, returns `NULL'.  The first
-     entry in the returned array is the substitution for TEXT.  The
-     remaining entries are the possible completions.  The array is
-     terminated with a `NULL' pointer.
-
-     ENTRY_FUNC is a function of two args, and returns a `char *'.  The
-     first argument is TEXT.  The second is a state argument; it is
-     zero on the first call, and non-zero on subsequent calls.
-     ENTRY_FUNC returns a `NULL'  pointer to the caller when there are
-     no more matches.
-
- -- Function: char * rl_filename_completion_function (const char *text,
-          int state)
-     A generator function for filename completion in the general case.
-     TEXT is a partial filename.  The Bash source is a useful reference
-     for writing application-specific completion functions (the Bash
-     completion functions call this and other Readline functions).
-
- -- Function: char * rl_username_completion_function (const char *text,
-          int state)
-     A completion generator for usernames.  TEXT contains a partial
-     username preceded by a random character (usually `~').  As with all
-     completion generators, STATE is zero on the first call and non-zero
-     for subsequent calls.
-
-\1f
-File: readline.info,  Node: Completion Variables,  Next: A Short Completion Example,  Prev: Completion Functions,  Up: Custom Completers
-
-2.6.3 Completion Variables
---------------------------
-
- -- Variable: rl_compentry_func_t * rl_completion_entry_function
-     A pointer to the generator function for `rl_completion_matches()'.
-     `NULL' means to use `rl_filename_completion_function()', the
-     default filename completer.
-
- -- Variable: rl_completion_func_t * rl_attempted_completion_function
-     A pointer to an alternative function to create matches.  The
-     function is called with TEXT, START, and END.  START and END are
-     indices in `rl_line_buffer' defining the boundaries of TEXT, which
-     is a character string.  If this function exists and returns
-     `NULL', or if this variable is set to `NULL', then `rl_complete()'
-     will call the value of `rl_completion_entry_function' to generate
-     matches, otherwise the array of strings returned will be used.  If
-     this function sets the `rl_attempted_completion_over' variable to
-     a non-zero value, Readline will not perform its default completion
-     even if this function returns no matches.
-
- -- Variable: rl_quote_func_t * rl_filename_quoting_function
-     A pointer to a function that will quote a filename in an
-     application-specific fashion.  This is called if filename
-     completion is being attempted and one of the characters in
-     `rl_filename_quote_characters' appears in a completed filename.
-     The function is called with TEXT, MATCH_TYPE, and QUOTE_POINTER.
-     The TEXT is the filename to be quoted.  The MATCH_TYPE is either
-     `SINGLE_MATCH', if there is only one completion match, or
-     `MULT_MATCH'.  Some functions use this to decide whether or not to
-     insert a closing quote character.  The QUOTE_POINTER is a pointer
-     to any opening quote character the user typed.  Some functions
-     choose to reset this character.
-
- -- Variable: rl_dequote_func_t * rl_filename_dequoting_function
-     A pointer to a function that will remove application-specific
-     quoting characters from a filename before completion is attempted,
-     so those characters do not interfere with matching the text
-     against names in the filesystem.  It is called with TEXT, the text
-     of the word to be dequoted, and QUOTE_CHAR, which is the quoting
-     character that delimits the filename (usually `'' or `"').  If
-     QUOTE_CHAR is zero, the filename was not in an embedded string.
-
- -- Variable: rl_linebuf_func_t * rl_char_is_quoted_p
-     A pointer to a function to call that determines whether or not a
-     specific character in the line buffer is quoted, according to
-     whatever quoting mechanism the program calling Readline uses.  The
-     function is called with two arguments: TEXT, the text of the line,
-     and INDEX, the index of the character in the line.  It is used to
-     decide whether a character found in
-     `rl_completer_word_break_characters' should be used to break words
-     for the completer.
-
- -- Variable: rl_compignore_func_t * rl_ignore_some_completions_function
-     This function, if defined, is called by the completer when real
-     filename completion is done, after all the matching names have
-     been generated.  It is passed a `NULL' terminated array of matches.
-     The first element (`matches[0]') is the maximal substring common
-     to all matches. This function can re-arrange the list of matches
-     as required, but each element deleted from the array must be freed.
-
- -- Variable: rl_icppfunc_t * rl_directory_completion_hook
-     This function, if defined, is allowed to modify the directory
-     portion of filenames Readline completes.  It could be used to
-     expand symbolic links or shell variables in pathnames.  It is
-     called with the address of a string (the current directory name)
-     as an argument, and may modify that string.  If the string is
-     replaced with a new string, the old value should be freed.  Any
-     modified directory name should have a trailing slash.  The
-     modified value will be used as part of the completion, replacing
-     the directory portion of the pathname the user typed.  At the
-     least, even if no other expansion is performed, this function
-     should remove any quote characters from the directory name,
-     because its result will be passed directly to `opendir()'.  The
-     directory completion hook returns an integer that should be
-     non-zero if the function modifies its directory argument.  The
-     function should not modify the directory argument if it returns 0.
-
- -- Variable: rl_dequote_func_t * rl_filename_rewrite_hook
-     If non-zero, this is the address of a function called when reading
-     directory entries from the filesystem for completion and comparing
-     them to the partial word to be completed.  The function should
-     perform any necesary application or system-specific conversion on
-     the filename, such as converting between character sets or
-     converting from a filesystem format to a character input format.
-     The function takes two arguments: FNAME, the filename to be
-     converted, and FNLEN, its length in bytes.  It must either return
-     its first argument (if no conversion takes place) or the converted
-     filename in newly-allocated memory.  The converted form is used to
-     compare against the word to be completed, and, if it matches, is
-     added to the list of matches.  Readline will free the allocated
-     string.
-
- -- Variable: rl_compdisp_func_t * rl_completion_display_matches_hook
-     If non-zero, then this is the address of a function to call when
-     completing a word would normally display the list of possible
-     matches.  This function is called in lieu of Readline displaying
-     the list.  It takes three arguments: (`char **'MATCHES, `int'
-     NUM_MATCHES, `int' MAX_LENGTH) where MATCHES is the array of
-     matching strings, NUM_MATCHES is the number of strings in that
-     array, and MAX_LENGTH is the length of the longest string in that
-     array.  Readline provides a convenience function,
-     `rl_display_match_list', that takes care of doing the display to
-     Readline's output stream.  That function may be called from this
-     hook.
-
- -- Variable: const char * rl_basic_word_break_characters
-     The basic list of characters that signal a break between words for
-     the completer routine.  The default value of this variable is the
-     characters which break words for completion in Bash: `"
-     \t\n\"\\'`@$><=;|&{("'.
-
- -- Variable: const char * rl_basic_quote_characters
-     A list of quote characters which can cause a word break.
-
- -- Variable: const char * rl_completer_word_break_characters
-     The list of characters that signal a break between words for
-     `rl_complete_internal()'.  The default list is the value of
-     `rl_basic_word_break_characters'.
-
- -- Variable: rl_cpvfunc_t * rl_completion_word_break_hook
-     If non-zero, this is the address of a function to call when
-     Readline is deciding where to separate words for word completion.
-     It should return a character string like
-     `rl_completer_word_break_characters' to be used to perform the
-     current completion.  The function may choose to set
-     `rl_completer_word_break_characters' itself.  If the function
-     returns `NULL', `rl_completer_word_break_characters' is used.
-
- -- Variable: const char * rl_completer_quote_characters
-     A list of characters which can be used to quote a substring of the
-     line.  Completion occurs on the entire substring, and within the
-     substring `rl_completer_word_break_characters' are treated as any
-     other character, unless they also appear within this list.
-
- -- Variable: const char * rl_filename_quote_characters
-     A list of characters that cause a filename to be quoted by the
-     completer when they appear in a completed filename.  The default
-     is the null string.
-
- -- Variable: const char * rl_special_prefixes
-     The list of characters that are word break characters, but should
-     be left in TEXT when it is passed to the completion function.
-     Programs can use this to help determine what kind of completing to
-     do.  For instance, Bash sets this variable to "$@" so that it can
-     complete shell variables and hostnames.
-
- -- Variable: int rl_completion_query_items
-     Up to this many items will be displayed in response to a
-     possible-completions call.  After that, readline asks the user if
-     she is sure she wants to see them all.  The default value is 100.
-     A negative value indicates that Readline should never ask the user.
-
- -- Variable: int rl_completion_append_character
-     When a single completion alternative matches at the end of the
-     command line, this character is appended to the inserted
-     completion text.  The default is a space character (` ').  Setting
-     this to the null character (`\0') prevents anything being appended
-     automatically.  This can be changed in application-specific
-     completion functions to provide the "most sensible word separator
-     character" according to an application-specific command line
-     syntax specification.
-
- -- Variable: int rl_completion_suppress_append
-     If non-zero, RL_COMPLETION_APPEND_CHARACTER is not appended to
-     matches at the end of the command line, as described above.  It is
-     set to 0 before any application-specific completion function is
-     called, and may only be changed within such a function.
-
- -- Variable: int rl_completion_quote_character
-     When Readline is completing quoted text, as delimited by one of the
-     characters in RL_COMPLETER_QUOTE_CHARACTERS, it sets this variable
-     to the quoting character found.  This is set before any
-     application-specific completion function is called.
-
- -- Variable: int rl_completion_suppress_quote
-     If non-zero, Readline does not append a matching quote character
-     when performing completion on a quoted string.  It is set to 0
-     before any application-specific completion function is called, and
-     may only be changed within such a function.
-
- -- Variable: int rl_completion_found_quote
-     When Readline is completing quoted text, it sets this variable to
-     a non-zero value if the word being completed contains or is
-     delimited by any quoting characters, including backslashes.  This
-     is set before any application-specific completion function is
-     called.
-
- -- Variable: int rl_completion_mark_symlink_dirs
-     If non-zero, a slash will be appended to completed filenames that
-     are symbolic links to directory names, subject to the value of the
-     user-settable MARK-DIRECTORIES variable.  This variable exists so
-     that application-specific completion functions can override the
-     user's global preference (set via the MARK-SYMLINKED-DIRECTORIES
-     Readline variable) if appropriate.  This variable is set to the
-     user's preference before any application-specific completion
-     function is called, so unless that function modifies the value,
-     the user's preferences are honored.
-
- -- Variable: int rl_ignore_completion_duplicates
-     If non-zero, then duplicates in the matches are removed.  The
-     default is 1.
-
- -- Variable: int rl_filename_completion_desired
-     Non-zero means that the results of the matches are to be treated as
-     filenames.  This is _always_ zero when completion is attempted,
-     and can only be changed within an application-specific completion
-     function.  If it is set to a non-zero value by such a function,
-     directory names have a slash appended and Readline attempts to
-     quote completed filenames if they contain any characters in
-     `rl_filename_quote_characters' and `rl_filename_quoting_desired'
-     is set to a non-zero value.
-
- -- Variable: int rl_filename_quoting_desired
-     Non-zero means that the results of the matches are to be quoted
-     using double quotes (or an application-specific quoting mechanism)
-     if the completed filename contains any characters in
-     `rl_filename_quote_chars'.  This is _always_ non-zero when
-     completion is attempted, and can only be changed within an
-     application-specific completion function.  The quoting is effected
-     via a call to the function pointed to by
-     `rl_filename_quoting_function'.
-
- -- Variable: int rl_attempted_completion_over
-     If an application-specific completion function assigned to
-     `rl_attempted_completion_function' sets this variable to a non-zero
-     value, Readline will not perform its default filename completion
-     even if the application's completion function returns no matches.
-     It should be set only by an application's completion function.
-
- -- Variable: int rl_sort_completion_matches
-     If an application sets this variable to 0, Readline will not sort
-     the list of completions (which implies that it cannot remove any
-     duplicate completions).  The default value is 1, which means that
-     Readline will sort the completions and, depending on the value of
-     `rl_ignore_completion_duplicates', will attempt to remove duplicate
-     matches.
-
- -- Variable: int rl_completion_type
-     Set to a character describing the type of completion Readline is
-     currently attempting; see the description of
-     `rl_complete_internal()' (*note Completion Functions::) for the
-     list of characters.  This is set to the appropriate value before
-     any application-specific completion function is called, allowing
-     such functions to present the same interface as `rl_complete()'.
-
- -- Variable: int rl_completion_invoking_key
-     Set to the final character in the key sequence that invoked one of
-     the completion functions that call `rl_complete_internal()'.  This
-     is set to the appropriate value before any application-specific
-     completion function is called.
-
- -- Variable: int rl_inhibit_completion
-     If this variable is non-zero, completion is inhibited.  The
-     completion character will be inserted as any other bound to
-     `self-insert'.
-
-\1f
-File: readline.info,  Node: A Short Completion Example,  Prev: Completion Variables,  Up: Custom Completers
-
-2.6.4 A Short Completion Example
---------------------------------
-
-Here is a small application demonstrating the use of the GNU Readline
-library.  It is called `fileman', and the source code resides in
-`examples/fileman.c'.  This sample application provides completion of
-command names, line editing features, and access to the history list.
-
-     /* fileman.c -- A tiny application which demonstrates how to use the
-        GNU Readline library.  This application interactively allows users
-        to manipulate files and their modes. */
-
-     #ifdef HAVE_CONFIG_H
-     #  include <config.h>
-     #endif
-
-     #include <sys/types.h>
-     #ifdef HAVE_SYS_FILE_H
-     #  include <sys/file.h>
-     #endif
-     #include <sys/stat.h>
-
-     #ifdef HAVE_UNISTD_H
-     #  include <unistd.h>
-     #endif
-
-     #include <fcntl.h>
-     #include <stdio.h>
-     #include <errno.h>
-
-     #if defined (HAVE_STRING_H)
-     #  include <string.h>
-     #else /* !HAVE_STRING_H */
-     #  include <strings.h>
-     #endif /* !HAVE_STRING_H */
-
-     #ifdef HAVE_STDLIB_H
-     #  include <stdlib.h>
-     #endif
-
-     #include <time.h>
-
-     #include <readline/readline.h>
-     #include <readline/history.h>
-
-     extern char *xmalloc PARAMS((size_t));
-
-     /* The names of functions that actually do the manipulation. */
-     int com_list PARAMS((char *));
-     int com_view PARAMS((char *));
-     int com_rename PARAMS((char *));
-     int com_stat PARAMS((char *));
-     int com_pwd PARAMS((char *));
-     int com_delete PARAMS((char *));
-     int com_help PARAMS((char *));
-     int com_cd PARAMS((char *));
-     int com_quit PARAMS((char *));
-
-     /* A structure which contains information on the commands this program
-        can understand. */
-
-     typedef struct {
-       char *name;                     /* User printable name of the function. */
-       rl_icpfunc_t *func;             /* Function to call to do the job. */
-       char *doc;                      /* Documentation for this function.  */
-     } COMMAND;
-
-     COMMAND commands[] = {
-       { "cd", com_cd, "Change to directory DIR" },
-       { "delete", com_delete, "Delete FILE" },
-       { "help", com_help, "Display this text" },
-       { "?", com_help, "Synonym for `help'" },
-       { "list", com_list, "List files in DIR" },
-       { "ls", com_list, "Synonym for `list'" },
-       { "pwd", com_pwd, "Print the current working directory" },
-       { "quit", com_quit, "Quit using Fileman" },
-       { "rename", com_rename, "Rename FILE to NEWNAME" },
-       { "stat", com_stat, "Print out statistics on FILE" },
-       { "view", com_view, "View the contents of FILE" },
-       { (char *)NULL, (rl_icpfunc_t *)NULL, (char *)NULL }
-     };
-
-     /* Forward declarations. */
-     char *stripwhite ();
-     COMMAND *find_command ();
-
-     /* The name of this program, as taken from argv[0]. */
-     char *progname;
-
-     /* When non-zero, this global means the user is done using this program. */
-     int done;
-
-     char *
-     dupstr (s)
-          char *s;
-     {
-       char *r;
-
-       r = xmalloc (strlen (s) + 1);
-       strcpy (r, s);
-       return (r);
-     }
-
-     main (argc, argv)
-          int argc;
-          char **argv;
-     {
-       char *line, *s;
-
-       progname = argv[0];
-
-       initialize_readline (); /* Bind our completer. */
-
-       /* Loop reading and executing lines until the user quits. */
-       for ( ; done == 0; )
-         {
-           line = readline ("FileMan: ");
-
-           if (!line)
-             break;
-
-           /* Remove leading and trailing whitespace from the line.
-              Then, if there is anything left, add it to the history list
-              and execute it. */
-           s = stripwhite (line);
-
-           if (*s)
-             {
-               add_history (s);
-               execute_line (s);
-             }
-
-           free (line);
-         }
-       exit (0);
-     }
-
-     /* Execute a command line. */
-     int
-     execute_line (line)
-          char *line;
-     {
-       register int i;
-       COMMAND *command;
-       char *word;
-
-       /* Isolate the command word. */
-       i = 0;
-       while (line[i] && whitespace (line[i]))
-         i++;
-       word = line + i;
-
-       while (line[i] && !whitespace (line[i]))
-         i++;
-
-       if (line[i])
-         line[i++] = '\0';
-
-       command = find_command (word);
-
-       if (!command)
-         {
-           fprintf (stderr, "%s: No such command for FileMan.\n", word);
-           return (-1);
-         }
-
-       /* Get argument to command, if any. */
-       while (whitespace (line[i]))
-         i++;
-
-       word = line + i;
-
-       /* Call the function. */
-       return ((*(command->func)) (word));
-     }
-
-     /* Look up NAME as the name of a command, and return a pointer to that
-        command.  Return a NULL pointer if NAME isn't a command name. */
-     COMMAND *
-     find_command (name)
-          char *name;
-     {
-       register int i;
-
-       for (i = 0; commands[i].name; i++)
-         if (strcmp (name, commands[i].name) == 0)
-           return (&commands[i]);
-
-       return ((COMMAND *)NULL);
-     }
-
-     /* Strip whitespace from the start and end of STRING.  Return a pointer
-        into STRING. */
-     char *
-     stripwhite (string)
-          char *string;
-     {
-       register char *s, *t;
-
-       for (s = string; whitespace (*s); s++)
-         ;
-
-       if (*s == 0)
-         return (s);
-
-       t = s + strlen (s) - 1;
-       while (t > s && whitespace (*t))
-         t--;
-       *++t = '\0';
-
-       return s;
-     }
-
-     /* **************************************************************** */
-     /*                                                                  */
-     /*                  Interface to Readline Completion                */
-     /*                                                                  */
-     /* **************************************************************** */
-
-     char *command_generator PARAMS((const char *, int));
-     char **fileman_completion PARAMS((const char *, int, int));
-
-     /* Tell the GNU Readline library how to complete.  We want to try to complete
-        on command names if this is the first word in the line, or on filenames
-        if not. */
-     initialize_readline ()
-     {
-       /* Allow conditional parsing of the ~/.inputrc file. */
-       rl_readline_name = "FileMan";
-
-       /* Tell the completer that we want a crack first. */
-       rl_attempted_completion_function = fileman_completion;
-     }
-
-     /* Attempt to complete on the contents of TEXT.  START and END bound the
-        region of rl_line_buffer that contains the word to complete.  TEXT is
-        the word to complete.  We can use the entire contents of rl_line_buffer
-        in case we want to do some simple parsing.  Return the array of matches,
-        or NULL if there aren't any. */
-     char **
-     fileman_completion (text, start, end)
-          const char *text;
-          int start, end;
-     {
-       char **matches;
-
-       matches = (char **)NULL;
-
-       /* If this word is at the start of the line, then it is a command
-          to complete.  Otherwise it is the name of a file in the current
-          directory. */
-       if (start == 0)
-         matches = rl_completion_matches (text, command_generator);
-
-       return (matches);
-     }
-
-     /* Generator function for command completion.  STATE lets us know whether
-        to start from scratch; without any state (i.e. STATE == 0), then we
-        start at the top of the list. */
-     char *
-     command_generator (text, state)
-          const char *text;
-          int state;
-     {
-       static int list_index, len;
-       char *name;
-
-       /* If this is a new word to complete, initialize now.  This includes
-          saving the length of TEXT for efficiency, and initializing the index
-          variable to 0. */
-       if (!state)
-         {
-           list_index = 0;
-           len = strlen (text);
-         }
-
-       /* Return the next name which partially matches from the command list. */
-       while (name = commands[list_index].name)
-         {
-           list_index++;
-
-           if (strncmp (name, text, len) == 0)
-             return (dupstr(name));
-         }
-
-       /* If no names matched, then return NULL. */
-       return ((char *)NULL);
-     }
-
-     /* **************************************************************** */
-     /*                                                                  */
-     /*                       FileMan Commands                           */
-     /*                                                                  */
-     /* **************************************************************** */
-
-     /* String to pass to system ().  This is for the LIST, VIEW and RENAME
-        commands. */
-     static char syscom[1024];
-
-     /* List the file(s) named in arg. */
-     com_list (arg)
-          char *arg;
-     {
-       if (!arg)
-         arg = "";
-
-       sprintf (syscom, "ls -FClg %s", arg);
-       return (system (syscom));
-     }
-
-     com_view (arg)
-          char *arg;
-     {
-       if (!valid_argument ("view", arg))
-         return 1;
-
-     #if defined (__MSDOS__)
-       /* more.com doesn't grok slashes in pathnames */
-       sprintf (syscom, "less %s", arg);
-     #else
-       sprintf (syscom, "more %s", arg);
-     #endif
-       return (system (syscom));
-     }
-
-     com_rename (arg)
-          char *arg;
-     {
-       too_dangerous ("rename");
-       return (1);
-     }
-
-     com_stat (arg)
-          char *arg;
-     {
-       struct stat finfo;
-
-       if (!valid_argument ("stat", arg))
-         return (1);
-
-       if (stat (arg, &finfo) == -1)
-         {
-           perror (arg);
-           return (1);
-         }
-
-       printf ("Statistics for `%s':\n", arg);
-
-       printf ("%s has %d link%s, and is %d byte%s in length.\n",
-         arg,
-               finfo.st_nlink,
-               (finfo.st_nlink == 1) ? "" : "s",
-               finfo.st_size,
-               (finfo.st_size == 1) ? "" : "s");
-       printf ("Inode Last Change at: %s", ctime (&finfo.st_ctime));
-       printf ("      Last access at: %s", ctime (&finfo.st_atime));
-       printf ("    Last modified at: %s", ctime (&finfo.st_mtime));
-       return (0);
-     }
-
-     com_delete (arg)
-          char *arg;
-     {
-       too_dangerous ("delete");
-       return (1);
-     }
-
-     /* Print out help for ARG, or for all of the commands if ARG is
-        not present. */
-     com_help (arg)
-          char *arg;
-     {
-       register int i;
-       int printed = 0;
-
-       for (i = 0; commands[i].name; i++)
-         {
-           if (!*arg || (strcmp (arg, commands[i].name) == 0))
-             {
-               printf ("%s\t\t%s.\n", commands[i].name, commands[i].doc);
-               printed++;
-             }
-         }
-
-       if (!printed)
-         {
-           printf ("No commands match `%s'.  Possibilties are:\n", arg);
-
-           for (i = 0; commands[i].name; i++)
-             {
-               /* Print in six columns. */
-               if (printed == 6)
-                 {
-                   printed = 0;
-                   printf ("\n");
-                 }
-
-               printf ("%s\t", commands[i].name);
-               printed++;
-             }
-
-           if (printed)
-             printf ("\n");
-         }
-       return (0);
-     }
-
-     /* Change to the directory ARG. */
-     com_cd (arg)
-          char *arg;
-     {
-       if (chdir (arg) == -1)
-         {
-           perror (arg);
-           return 1;
-         }
-
-       com_pwd ("");
-       return (0);
-     }
-
-     /* Print out the current working directory. */
-     com_pwd (ignore)
-          char *ignore;
-     {
-       char dir[1024], *s;
-
-       s = getcwd (dir, sizeof(dir) - 1);
-       if (s == 0)
-         {
-           printf ("Error getting pwd: %s\n", dir);
-           return 1;
-         }
-
-       printf ("Current directory is %s\n", dir);
-       return 0;
-     }
-
-     /* The user wishes to quit using this program.  Just set DONE non-zero. */
-     com_quit (arg)
-          char *arg;
-     {
-       done = 1;
-       return (0);
-     }
-
-     /* Function which tells you that you can't do this. */
-     too_dangerous (caller)
-          char *caller;
-     {
-       fprintf (stderr,
-                "%s: Too dangerous for me to distribute.  Write it yourself.\n",
-                caller);
-     }
-
-     /* Return non-zero if ARG is a valid argument for CALLER, else print
-        an error message and return zero. */
-     int
-     valid_argument (caller, arg)
-          char *caller, *arg;
-     {
-       if (!arg || !*arg)
-         {
-           fprintf (stderr, "%s: Argument required.\n", caller);
-           return (0);
-         }
-
-       return (1);
-     }
-
-\1f
-File: readline.info,  Node: GNU Free Documentation License,  Next: Concept Index,  Prev: Programming with GNU Readline,  Up: Top
-
-Appendix A GNU Free Documentation License
-*****************************************
-
-                     Version 1.3, 3 November 2008
-
-     Copyright (C) 2000, 2001, 2002, 2007, 2008 Free Software Foundation, Inc.
-     `http://fsf.org/'
-
-     Everyone is permitted to copy and distribute verbatim copies
-     of this license document, but changing it is not allowed.
-
-  0. PREAMBLE
-
-     The purpose of this License is to make a manual, textbook, or other
-     functional and useful document "free" in the sense of freedom: to
-     assure everyone the effective freedom to copy and redistribute it,
-     with or without modifying it, either commercially or
-     noncommercially.  Secondarily, this License preserves for the
-     author and publisher a way to get credit for their work, while not
-     being considered responsible for modifications made by others.
-
-     This License is a kind of "copyleft", which means that derivative
-     works of the document must themselves be free in the same sense.
-     It complements the GNU General Public License, which is a copyleft
-     license designed for free software.
-
-     We have designed this License in order to use it for manuals for
-     free software, because free software needs free documentation: a
-     free program should come with manuals providing the same freedoms
-     that the software does.  But this License is not limited to
-     software manuals; it can be used for any textual work, regardless
-     of subject matter or whether it is published as a printed book.
-     We recommend this License principally for works whose purpose is
-     instruction or reference.
-
-  1. APPLICABILITY AND DEFINITIONS
-
-     This License applies to any manual or other work, in any medium,
-     that contains a notice placed by the copyright holder saying it
-     can be distributed under the terms of this License.  Such a notice
-     grants a world-wide, royalty-free license, unlimited in duration,
-     to use that work under the conditions stated herein.  The
-     "Document", below, refers to any such manual or work.  Any member
-     of the public is a licensee, and is addressed as "you".  You
-     accept the license if you copy, modify or distribute the work in a
-     way requiring permission under copyright law.
-
-     A "Modified Version" of the Document means any work containing the
-     Document or a portion of it, either copied verbatim, or with
-     modifications and/or translated into another language.
-
-     A "Secondary Section" is a named appendix or a front-matter section
-     of the Document that deals exclusively with the relationship of the
-     publishers or authors of the Document to the Document's overall
-     subject (or to related matters) and contains nothing that could
-     fall directly within that overall subject.  (Thus, if the Document
-     is in part a textbook of mathematics, a Secondary Section may not
-     explain any mathematics.)  The relationship could be a matter of
-     historical connection with the subject or with related matters, or
-     of legal, commercial, philosophical, ethical or political position
-     regarding them.
-
-     The "Invariant Sections" are certain Secondary Sections whose
-     titles are designated, as being those of Invariant Sections, in
-     the notice that says that the Document is released under this
-     License.  If a section does not fit the above definition of
-     Secondary then it is not allowed to be designated as Invariant.
-     The Document may contain zero Invariant Sections.  If the Document
-     does not identify any Invariant Sections then there are none.
-
-     The "Cover Texts" are certain short passages of text that are
-     listed, as Front-Cover Texts or Back-Cover Texts, in the notice
-     that says that the Document is released under this License.  A
-     Front-Cover Text may be at most 5 words, and a Back-Cover Text may
-     be at most 25 words.
-
-     A "Transparent" copy of the Document means a machine-readable copy,
-     represented in a format whose specification is available to the
-     general public, that is suitable for revising the document
-     straightforwardly with generic text editors or (for images
-     composed of pixels) generic paint programs or (for drawings) some
-     widely available drawing editor, and that is suitable for input to
-     text formatters or for automatic translation to a variety of
-     formats suitable for input to text formatters.  A copy made in an
-     otherwise Transparent file format whose markup, or absence of
-     markup, has been arranged to thwart or discourage subsequent
-     modification by readers is not Transparent.  An image format is
-     not Transparent if used for any substantial amount of text.  A
-     copy that is not "Transparent" is called "Opaque".
-
-     Examples of suitable formats for Transparent copies include plain
-     ASCII without markup, Texinfo input format, LaTeX input format,
-     SGML or XML using a publicly available DTD, and
-     standard-conforming simple HTML, PostScript or PDF designed for
-     human modification.  Examples of transparent image formats include
-     PNG, XCF and JPG.  Opaque formats include proprietary formats that
-     can be read and edited only by proprietary word processors, SGML or
-     XML for which the DTD and/or processing tools are not generally
-     available, and the machine-generated HTML, PostScript or PDF
-     produced by some word processors for output purposes only.
-
-     The "Title Page" means, for a printed book, the title page itself,
-     plus such following pages as are needed to hold, legibly, the
-     material this License requires to appear in the title page.  For
-     works in formats which do not have any title page as such, "Title
-     Page" means the text near the most prominent appearance of the
-     work's title, preceding the beginning of the body of the text.
-
-     The "publisher" means any person or entity that distributes copies
-     of the Document to the public.
-
-     A section "Entitled XYZ" means a named subunit of the Document
-     whose title either is precisely XYZ or contains XYZ in parentheses
-     following text that translates XYZ in another language.  (Here XYZ
-     stands for a specific section name mentioned below, such as
-     "Acknowledgements", "Dedications", "Endorsements", or "History".)
-     To "Preserve the Title" of such a section when you modify the
-     Document means that it remains a section "Entitled XYZ" according
-     to this definition.
-
-     The Document may include Warranty Disclaimers next to the notice
-     which states that this License applies to the Document.  These
-     Warranty Disclaimers are considered to be included by reference in
-     this License, but only as regards disclaiming warranties: any other
-     implication that these Warranty Disclaimers may have is void and
-     has no effect on the meaning of this License.
-
-  2. VERBATIM COPYING
-
-     You may copy and distribute the Document in any medium, either
-     commercially or noncommercially, provided that this License, the
-     copyright notices, and the license notice saying this License
-     applies to the Document are reproduced in all copies, and that you
-     add no other conditions whatsoever to those of this License.  You
-     may not use technical measures to obstruct or control the reading
-     or further copying of the copies you make or distribute.  However,
-     you may accept compensation in exchange for copies.  If you
-     distribute a large enough number of copies you must also follow
-     the conditions in section 3.
-
-     You may also lend copies, under the same conditions stated above,
-     and you may publicly display copies.
-
-  3. COPYING IN QUANTITY
-
-     If you publish printed copies (or copies in media that commonly
-     have printed covers) of the Document, numbering more than 100, and
-     the Document's license notice requires Cover Texts, you must
-     enclose the copies in covers that carry, clearly and legibly, all
-     these Cover Texts: Front-Cover Texts on the front cover, and
-     Back-Cover Texts on the back cover.  Both covers must also clearly
-     and legibly identify you as the publisher of these copies.  The
-     front cover must present the full title with all words of the
-     title equally prominent and visible.  You may add other material
-     on the covers in addition.  Copying with changes limited to the
-     covers, as long as they preserve the title of the Document and
-     satisfy these conditions, can be treated as verbatim copying in
-     other respects.
-
-     If the required texts for either cover are too voluminous to fit
-     legibly, you should put the first ones listed (as many as fit
-     reasonably) on the actual cover, and continue the rest onto
-     adjacent pages.
-
-     If you publish or distribute Opaque copies of the Document
-     numbering more than 100, you must either include a
-     machine-readable Transparent copy along with each Opaque copy, or
-     state in or with each Opaque copy a computer-network location from
-     which the general network-using public has access to download
-     using public-standard network protocols a complete Transparent
-     copy of the Document, free of added material.  If you use the
-     latter option, you must take reasonably prudent steps, when you
-     begin distribution of Opaque copies in quantity, to ensure that
-     this Transparent copy will remain thus accessible at the stated
-     location until at least one year after the last time you
-     distribute an Opaque copy (directly or through your agents or
-     retailers) of that edition to the public.
-
-     It is requested, but not required, that you contact the authors of
-     the Document well before redistributing any large number of
-     copies, to give them a chance to provide you with an updated
-     version of the Document.
-
-  4. MODIFICATIONS
-
-     You may copy and distribute a Modified Version of the Document
-     under the conditions of sections 2 and 3 above, provided that you
-     release the Modified Version under precisely this License, with
-     the Modified Version filling the role of the Document, thus
-     licensing distribution and modification of the Modified Version to
-     whoever possesses a copy of it.  In addition, you must do these
-     things in the Modified Version:
-
-       A. Use in the Title Page (and on the covers, if any) a title
-          distinct from that of the Document, and from those of
-          previous versions (which should, if there were any, be listed
-          in the History section of the Document).  You may use the
-          same title as a previous version if the original publisher of
-          that version gives permission.
-
-       B. List on the Title Page, as authors, one or more persons or
-          entities responsible for authorship of the modifications in
-          the Modified Version, together with at least five of the
-          principal authors of the Document (all of its principal
-          authors, if it has fewer than five), unless they release you
-          from this requirement.
-
-       C. State on the Title page the name of the publisher of the
-          Modified Version, as the publisher.
-
-       D. Preserve all the copyright notices of the Document.
-
-       E. Add an appropriate copyright notice for your modifications
-          adjacent to the other copyright notices.
-
-       F. Include, immediately after the copyright notices, a license
-          notice giving the public permission to use the Modified
-          Version under the terms of this License, in the form shown in
-          the Addendum below.
-
-       G. Preserve in that license notice the full lists of Invariant
-          Sections and required Cover Texts given in the Document's
-          license notice.
-
-       H. Include an unaltered copy of this License.
-
-       I. Preserve the section Entitled "History", Preserve its Title,
-          and add to it an item stating at least the title, year, new
-          authors, and publisher of the Modified Version as given on
-          the Title Page.  If there is no section Entitled "History" in
-          the Document, create one stating the title, year, authors,
-          and publisher of the Document as given on its Title Page,
-          then add an item describing the Modified Version as stated in
-          the previous sentence.
-
-       J. Preserve the network location, if any, given in the Document
-          for public access to a Transparent copy of the Document, and
-          likewise the network locations given in the Document for
-          previous versions it was based on.  These may be placed in
-          the "History" section.  You may omit a network location for a
-          work that was published at least four years before the
-          Document itself, or if the original publisher of the version
-          it refers to gives permission.
-
-       K. For any section Entitled "Acknowledgements" or "Dedications",
-          Preserve the Title of the section, and preserve in the
-          section all the substance and tone of each of the contributor
-          acknowledgements and/or dedications given therein.
-
-       L. Preserve all the Invariant Sections of the Document,
-          unaltered in their text and in their titles.  Section numbers
-          or the equivalent are not considered part of the section
-          titles.
-
-       M. Delete any section Entitled "Endorsements".  Such a section
-          may not be included in the Modified Version.
-
-       N. Do not retitle any existing section to be Entitled
-          "Endorsements" or to conflict in title with any Invariant
-          Section.
-
-       O. Preserve any Warranty Disclaimers.
-
-     If the Modified Version includes new front-matter sections or
-     appendices that qualify as Secondary Sections and contain no
-     material copied from the Document, you may at your option
-     designate some or all of these sections as invariant.  To do this,
-     add their titles to the list of Invariant Sections in the Modified
-     Version's license notice.  These titles must be distinct from any
-     other section titles.
-
-     You may add a section Entitled "Endorsements", provided it contains
-     nothing but endorsements of your Modified Version by various
-     parties--for example, statements of peer review or that the text
-     has been approved by an organization as the authoritative
-     definition of a standard.
-
-     You may add a passage of up to five words as a Front-Cover Text,
-     and a passage of up to 25 words as a Back-Cover Text, to the end
-     of the list of Cover Texts in the Modified Version.  Only one
-     passage of Front-Cover Text and one of Back-Cover Text may be
-     added by (or through arrangements made by) any one entity.  If the
-     Document already includes a cover text for the same cover,
-     previously added by you or by arrangement made by the same entity
-     you are acting on behalf of, you may not add another; but you may
-     replace the old one, on explicit permission from the previous
-     publisher that added the old one.
-
-     The author(s) and publisher(s) of the Document do not by this
-     License give permission to use their names for publicity for or to
-     assert or imply endorsement of any Modified Version.
-
-  5. COMBINING DOCUMENTS
-
-     You may combine the Document with other documents released under
-     this License, under the terms defined in section 4 above for
-     modified versions, provided that you include in the combination
-     all of the Invariant Sections of all of the original documents,
-     unmodified, and list them all as Invariant Sections of your
-     combined work in its license notice, and that you preserve all
-     their Warranty Disclaimers.
-
-     The combined work need only contain one copy of this License, and
-     multiple identical Invariant Sections may be replaced with a single
-     copy.  If there are multiple Invariant Sections with the same name
-     but different contents, make the title of each such section unique
-     by adding at the end of it, in parentheses, the name of the
-     original author or publisher of that section if known, or else a
-     unique number.  Make the same adjustment to the section titles in
-     the list of Invariant Sections in the license notice of the
-     combined work.
-
-     In the combination, you must combine any sections Entitled
-     "History" in the various original documents, forming one section
-     Entitled "History"; likewise combine any sections Entitled
-     "Acknowledgements", and any sections Entitled "Dedications".  You
-     must delete all sections Entitled "Endorsements."
-
-  6. COLLECTIONS OF DOCUMENTS
-
-     You may make a collection consisting of the Document and other
-     documents released under this License, and replace the individual
-     copies of this License in the various documents with a single copy
-     that is included in the collection, provided that you follow the
-     rules of this License for verbatim copying of each of the
-     documents in all other respects.
-
-     You may extract a single document from such a collection, and
-     distribute it individually under this License, provided you insert
-     a copy of this License into the extracted document, and follow
-     this License in all other respects regarding verbatim copying of
-     that document.
-
-  7. AGGREGATION WITH INDEPENDENT WORKS
-
-     A compilation of the Document or its derivatives with other
-     separate and independent documents or works, in or on a volume of
-     a storage or distribution medium, is called an "aggregate" if the
-     copyright resulting from the compilation is not used to limit the
-     legal rights of the compilation's users beyond what the individual
-     works permit.  When the Document is included in an aggregate, this
-     License does not apply to the other works in the aggregate which
-     are not themselves derivative works of the Document.
-
-     If the Cover Text requirement of section 3 is applicable to these
-     copies of the Document, then if the Document is less than one half
-     of the entire aggregate, the Document's Cover Texts may be placed
-     on covers that bracket the Document within the aggregate, or the
-     electronic equivalent of covers if the Document is in electronic
-     form.  Otherwise they must appear on printed covers that bracket
-     the whole aggregate.
-
-  8. TRANSLATION
-
-     Translation is considered a kind of modification, so you may
-     distribute translations of the Document under the terms of section
-     4.  Replacing Invariant Sections with translations requires special
-     permission from their copyright holders, but you may include
-     translations of some or all Invariant Sections in addition to the
-     original versions of these Invariant Sections.  You may include a
-     translation of this License, and all the license notices in the
-     Document, and any Warranty Disclaimers, provided that you also
-     include the original English version of this License and the
-     original versions of those notices and disclaimers.  In case of a
-     disagreement between the translation and the original version of
-     this License or a notice or disclaimer, the original version will
-     prevail.
-
-     If a section in the Document is Entitled "Acknowledgements",
-     "Dedications", or "History", the requirement (section 4) to
-     Preserve its Title (section 1) will typically require changing the
-     actual title.
-
-  9. TERMINATION
-
-     You may not copy, modify, sublicense, or distribute the Document
-     except as expressly provided under this License.  Any attempt
-     otherwise to copy, modify, sublicense, or distribute it is void,
-     and will automatically terminate your rights under this License.
-
-     However, if you cease all violation of this License, then your
-     license from a particular copyright holder is reinstated (a)
-     provisionally, unless and until the copyright holder explicitly
-     and finally terminates your license, and (b) permanently, if the
-     copyright holder fails to notify you of the violation by some
-     reasonable means prior to 60 days after the cessation.
-
-     Moreover, your license from a particular copyright holder is
-     reinstated permanently if the copyright holder notifies you of the
-     violation by some reasonable means, this is the first time you have
-     received notice of violation of this License (for any work) from
-     that copyright holder, and you cure the violation prior to 30 days
-     after your receipt of the notice.
-
-     Termination of your rights under this section does not terminate
-     the licenses of parties who have received copies or rights from
-     you under this License.  If your rights have been terminated and
-     not permanently reinstated, receipt of a copy of some or all of
-     the same material does not give you any rights to use it.
-
- 10. FUTURE REVISIONS OF THIS LICENSE
-
-     The Free Software Foundation may publish new, revised versions of
-     the GNU Free Documentation License from time to time.  Such new
-     versions will be similar in spirit to the present version, but may
-     differ in detail to address new problems or concerns.  See
-     `http://www.gnu.org/copyleft/'.
-
-     Each version of the License is given a distinguishing version
-     number.  If the Document specifies that a particular numbered
-     version of this License "or any later version" applies to it, you
-     have the option of following the terms and conditions either of
-     that specified version or of any later version that has been
-     published (not as a draft) by the Free Software Foundation.  If
-     the Document does not specify a version number of this License,
-     you may choose any version ever published (not as a draft) by the
-     Free Software Foundation.  If the Document specifies that a proxy
-     can decide which future versions of this License can be used, that
-     proxy's public statement of acceptance of a version permanently
-     authorizes you to choose that version for the Document.
-
- 11. RELICENSING
-
-     "Massive Multiauthor Collaboration Site" (or "MMC Site") means any
-     World Wide Web server that publishes copyrightable works and also
-     provides prominent facilities for anybody to edit those works.  A
-     public wiki that anybody can edit is an example of such a server.
-     A "Massive Multiauthor Collaboration" (or "MMC") contained in the
-     site means any set of copyrightable works thus published on the MMC
-     site.
-
-     "CC-BY-SA" means the Creative Commons Attribution-Share Alike 3.0
-     license published by Creative Commons Corporation, a not-for-profit
-     corporation with a principal place of business in San Francisco,
-     California, as well as future copyleft versions of that license
-     published by that same organization.
-
-     "Incorporate" means to publish or republish a Document, in whole or
-     in part, as part of another Document.
-
-     An MMC is "eligible for relicensing" if it is licensed under this
-     License, and if all works that were first published under this
-     License somewhere other than this MMC, and subsequently
-     incorporated in whole or in part into the MMC, (1) had no cover
-     texts or invariant sections, and (2) were thus incorporated prior
-     to November 1, 2008.
-
-     The operator of an MMC Site may republish an MMC contained in the
-     site under CC-BY-SA on the same site at any time before August 1,
-     2009, provided the MMC is eligible for relicensing.
-
-
-ADDENDUM: How to use this License for your documents
-====================================================
-
-To use this License in a document you have written, include a copy of
-the License in the document and put the following copyright and license
-notices just after the title page:
-
-       Copyright (C)  YEAR  YOUR NAME.
-       Permission is granted to copy, distribute and/or modify this document
-       under the terms of the GNU Free Documentation License, Version 1.3
-       or any later version published by the Free Software Foundation;
-       with no Invariant Sections, no Front-Cover Texts, and no Back-Cover
-       Texts.  A copy of the license is included in the section entitled ``GNU
-       Free Documentation License''.
-
-   If you have Invariant Sections, Front-Cover Texts and Back-Cover
-Texts, replace the "with...Texts." line with this:
-
-         with the Invariant Sections being LIST THEIR TITLES, with
-         the Front-Cover Texts being LIST, and with the Back-Cover Texts
-         being LIST.
-
-   If you have Invariant Sections without Cover Texts, or some other
-combination of the three, merge those two alternatives to suit the
-situation.
-
-   If your document contains nontrivial examples of program code, we
-recommend releasing these examples in parallel under your choice of
-free software license, such as the GNU General Public License, to
-permit their use in free software.
-
-\1f
-File: readline.info,  Node: Concept Index,  Next: Function and Variable Index,  Prev: GNU Free Documentation License,  Up: Top
-
-Concept Index
-*************
-
-\0\b[index\0\b]
-* Menu:
-
-* application-specific completion functions: Custom Completers.
-                                                               (line  6)
-* command editing:                       Readline Bare Essentials.
-                                                               (line  6)
-* editing command lines:                 Readline Bare Essentials.
-                                                               (line  6)
-* initialization file, readline:         Readline Init File.   (line  6)
-* interaction, readline:                 Readline Interaction. (line  6)
-* kill ring:                             Readline Killing Commands.
-                                                               (line 19)
-* killing text:                          Readline Killing Commands.
-                                                               (line  6)
-* notation, readline:                    Readline Bare Essentials.
-                                                               (line  6)
-* readline, function:                    Basic Behavior.       (line 12)
-* variables, readline:                   Readline Init File Syntax.
-                                                               (line 34)
-* yanking text:                          Readline Killing Commands.
-                                                               (line  6)
-
-\1f
-File: readline.info,  Node: Function and Variable Index,  Prev: Concept Index,  Up: Top
-
-Function and Variable Index
-***************************
-
-\0\b[index\0\b]
-* Menu:
-
-* _rl_digit_p:                           Utility Functions.   (line  65)
-* _rl_digit_value:                       Utility Functions.   (line  76)
-* _rl_lowercase_p:                       Utility Functions.   (line  62)
-* _rl_to_lower:                          Utility Functions.   (line  72)
-* _rl_to_upper:                          Utility Functions.   (line  68)
-* _rl_uppercase_p:                       Utility Functions.   (line  59)
-* abort (C-g):                           Miscellaneous Commands.
-                                                              (line  10)
-* accept-line (Newline or Return):       Commands For History.
-                                                              (line   6)
-* backward-char (C-b):                   Commands For Moving. (line  15)
-* backward-delete-char (Rubout):         Commands For Text.   (line  11)
-* backward-kill-line (C-x Rubout):       Commands For Killing.
-                                                              (line   9)
-* backward-kill-word (M-<DEL>):          Commands For Killing.
-                                                              (line  24)
-* backward-word (M-b):                   Commands For Moving. (line  22)
-* beginning-of-history (M-<):            Commands For History.
-                                                              (line  19)
-* beginning-of-line (C-a):               Commands For Moving. (line   6)
-* bell-style:                            Readline Init File Syntax.
-                                                              (line  35)
-* bind-tty-special-chars:                Readline Init File Syntax.
-                                                              (line  42)
-* call-last-kbd-macro (C-x e):           Keyboard Macros.     (line  13)
-* capitalize-word (M-c):                 Commands For Text.   (line  49)
-* character-search (C-]):                Miscellaneous Commands.
-                                                              (line  41)
-* character-search-backward (M-C-]):     Miscellaneous Commands.
-                                                              (line  46)
-* clear-screen (C-l):                    Commands For Moving. (line  26)
-* comment-begin:                         Readline Init File Syntax.
-                                                              (line  47)
-* complete (<TAB>):                      Commands For Completion.
-                                                              (line   6)
-* completion-display-width:              Readline Init File Syntax.
-                                                              (line  52)
-* completion-ignore-case:                Readline Init File Syntax.
-                                                              (line  59)
-* completion-map-case:                   Readline Init File Syntax.
-                                                              (line  64)
-* completion-prefix-display-length:      Readline Init File Syntax.
-                                                              (line  70)
-* completion-query-items:                Readline Init File Syntax.
-                                                              (line  77)
-* convert-meta:                          Readline Init File Syntax.
-                                                              (line  87)
-* copy-backward-word ():                 Commands For Killing.
-                                                              (line  49)
-* copy-forward-word ():                  Commands For Killing.
-                                                              (line  54)
-* copy-region-as-kill ():                Commands For Killing.
-                                                              (line  45)
-* delete-char (C-d):                     Commands For Text.   (line   6)
-* delete-char-or-list ():                Commands For Completion.
-                                                              (line  39)
-* delete-horizontal-space ():            Commands For Killing.
-                                                              (line  37)
-* digit-argument (M-0, M-1, ... M--):    Numeric Arguments.   (line   6)
-* disable-completion:                    Readline Init File Syntax.
-                                                              (line  93)
-* do-uppercase-version (M-a, M-b, M-X, ...): Miscellaneous Commands.
-                                                              (line  14)
-* downcase-word (M-l):                   Commands For Text.   (line  45)
-* dump-functions ():                     Miscellaneous Commands.
-                                                              (line  70)
-* dump-macros ():                        Miscellaneous Commands.
-                                                              (line  82)
-* dump-variables ():                     Miscellaneous Commands.
-                                                              (line  76)
-* editing-mode:                          Readline Init File Syntax.
-                                                              (line  98)
-* enable-keypad:                         Readline Init File Syntax.
-                                                              (line 109)
-* end-kbd-macro (C-x )):                 Keyboard Macros.     (line   9)
-* end-of-history (M->):                  Commands For History.
-                                                              (line  22)
-* end-of-line (C-e):                     Commands For Moving. (line   9)
-* exchange-point-and-mark (C-x C-x):     Miscellaneous Commands.
-                                                              (line  36)
-* expand-tilde:                          Readline Init File Syntax.
-                                                              (line 120)
-* forward-backward-delete-char ():       Commands For Text.   (line  15)
-* forward-char (C-f):                    Commands For Moving. (line  12)
-* forward-search-history (C-s):          Commands For History.
-                                                              (line  30)
-* forward-word (M-f):                    Commands For Moving. (line  18)
-* history-preserve-point:                Readline Init File Syntax.
-                                                              (line 124)
-* history-search-backward ():            Commands For History.
-                                                              (line  50)
-* history-search-forward ():             Commands For History.
-                                                              (line  45)
-* history-size:                          Readline Init File Syntax.
-                                                              (line 130)
-* horizontal-scroll-mode:                Readline Init File Syntax.
-                                                              (line 135)
-* input-meta:                            Readline Init File Syntax.
-                                                              (line 142)
-* insert-comment (M-#):                  Miscellaneous Commands.
-                                                              (line  60)
-* insert-completions (M-*):              Commands For Completion.
-                                                              (line  18)
-* isearch-terminators:                   Readline Init File Syntax.
-                                                              (line 149)
-* keymap:                                Readline Init File Syntax.
-                                                              (line 156)
-* kill-line (C-k):                       Commands For Killing.
-                                                              (line   6)
-* kill-region ():                        Commands For Killing.
-                                                              (line  41)
-* kill-whole-line ():                    Commands For Killing.
-                                                              (line  15)
-* kill-word (M-d):                       Commands For Killing.
-                                                              (line  19)
-* mark-modified-lines:                   Readline Init File Syntax.
-                                                              (line 169)
-* mark-symlinked-directories:            Readline Init File Syntax.
-                                                              (line 174)
-* match-hidden-files:                    Readline Init File Syntax.
-                                                              (line 179)
-* menu-complete ():                      Commands For Completion.
-                                                              (line  22)
-* menu-complete-backward ():             Commands For Completion.
-                                                              (line  34)
-* menu-complete-display-prefix:          Readline Init File Syntax.
-                                                              (line 186)
-* meta-flag:                             Readline Init File Syntax.
-                                                              (line 142)
-* next-history (C-n):                    Commands For History.
-                                                              (line  16)
-* non-incremental-forward-search-history (M-n): Commands For History.
-                                                              (line  40)
-* non-incremental-reverse-search-history (M-p): Commands For History.
-                                                              (line  35)
-* output-meta:                           Readline Init File Syntax.
-                                                              (line 191)
-* overwrite-mode ():                     Commands For Text.   (line  53)
-* page-completions:                      Readline Init File Syntax.
-                                                              (line 196)
-* possible-completions (M-?):            Commands For Completion.
-                                                              (line  11)
-* prefix-meta (<ESC>):                   Miscellaneous Commands.
-                                                              (line  18)
-* previous-history (C-p):                Commands For History.
-                                                              (line  12)
-* quoted-insert (C-q or C-v):            Commands For Text.   (line  20)
-* re-read-init-file (C-x C-r):           Miscellaneous Commands.
-                                                              (line   6)
-* readline:                              Basic Behavior.      (line  12)
-* redraw-current-line ():                Commands For Moving. (line  30)
-* reverse-search-history (C-r):          Commands For History.
-                                                              (line  26)
-* revert-all-at-newline:                 Readline Init File Syntax.
-                                                              (line 206)
-* revert-line (M-r):                     Miscellaneous Commands.
-                                                              (line  25)
-* rl_add_defun:                          Function Naming.     (line  20)
-* rl_add_funmap_entry:                   Associating Function Names and Bindings.
-                                                              (line  47)
-* rl_add_undo:                           Allowing Undoing.    (line  41)
-* rl_alphabetic:                         Utility Functions.   (line  39)
-* rl_already_prompted:                   Readline Variables.  (line  64)
-* rl_attempted_completion_function:      Completion Variables.
-                                                              (line  12)
-* rl_attempted_completion_over:          Completion Variables.
-                                                              (line 226)
-* rl_basic_quote_characters:             Completion Variables.
-                                                              (line 115)
-* rl_basic_word_break_characters:        Completion Variables.
-                                                              (line 109)
-* rl_begin_undo_group:                   Allowing Undoing.    (line  29)
-* rl_bind_key:                           Binding Keys.        (line  22)
-* rl_bind_key_if_unbound:                Binding Keys.        (line  32)
-* rl_bind_key_if_unbound_in_map:         Binding Keys.        (line  38)
-* rl_bind_key_in_map:                    Binding Keys.        (line  27)
-* rl_bind_keyseq:                        Binding Keys.        (line  59)
-* rl_bind_keyseq_if_unbound:             Binding Keys.        (line  77)
-* rl_bind_keyseq_if_unbound_in_map:      Binding Keys.        (line  83)
-* rl_bind_keyseq_in_map:                 Binding Keys.        (line  66)
-* rl_binding_keymap:                     Readline Variables.  (line 159)
-* rl_callback_handler_install:           Alternate Interface. (line  15)
-* rl_callback_handler_remove:            Alternate Interface. (line  33)
-* rl_callback_read_char:                 Alternate Interface. (line  21)
-* rl_catch_signals:                      Readline Signal Handling.
-                                                              (line  48)
-* rl_catch_sigwinch:                     Readline Signal Handling.
-                                                              (line  55)
-* rl_char_is_quoted_p:                   Completion Variables.
-                                                              (line  46)
-* rl_cleanup_after_signal:               Readline Signal Handling.
-                                                              (line  66)
-* rl_clear_message:                      Redisplay.           (line  48)
-* rl_clear_pending_input:                Character Input.     (line  30)
-* rl_clear_signals:                      Readline Signal Handling.
-                                                              (line 125)
-* rl_complete <1>:                       Completion Functions.
-                                                              (line  20)
-* rl_complete:                           How Completing Works.
-                                                              (line  49)
-* rl_complete_internal:                  Completion Functions.
-                                                              (line  10)
-* rl_completer_quote_characters:         Completion Variables.
-                                                              (line 132)
-* rl_completer_word_break_characters:    Completion Variables.
-                                                              (line 118)
-* rl_completion_append_character:        Completion Variables.
-                                                              (line 156)
-* rl_completion_display_matches_hook:    Completion Variables.
-                                                              (line  96)
-* rl_completion_entry_function <1>:      How Completing Works.
-                                                              (line  55)
-* rl_completion_entry_function:          Completion Variables.
-                                                              (line   7)
-* rl_completion_found_quote:             Completion Variables.
-                                                              (line 184)
-* rl_completion_invoking_key:            Completion Variables.
-                                                              (line 249)
-* rl_completion_mark_symlink_dirs:       Completion Variables.
-                                                              (line 191)
-* rl_completion_matches:                 Completion Functions.
-                                                              (line  45)
-* rl_completion_mode:                    Completion Functions.
-                                                              (line  37)
-* rl_completion_query_items:             Completion Variables.
-                                                              (line 150)
-* rl_completion_quote_character:         Completion Variables.
-                                                              (line 172)
-* rl_completion_suppress_append:         Completion Variables.
-                                                              (line 166)
-* rl_completion_suppress_quote:          Completion Variables.
-                                                              (line 178)
-* rl_completion_type:                    Completion Variables.
-                                                              (line 241)
-* rl_completion_word_break_hook:         Completion Variables.
-                                                              (line 123)
-* rl_copy_keymap:                        Keymaps.             (line  17)
-* rl_copy_text:                          Modifying Text.      (line  15)
-* rl_crlf:                               Redisplay.           (line  30)
-* rl_delete_text:                        Modifying Text.      (line  11)
-* rl_deprep_term_function:               Readline Variables.  (line 149)
-* rl_deprep_terminal:                    Terminal Management. (line  13)
-* rl_ding:                               Utility Functions.   (line  36)
-* rl_directory_completion_hook:          Completion Variables.
-                                                              (line  64)
-* rl_discard_keymap:                     Keymaps.             (line  26)
-* rl_dispatching:                        Readline Variables.  (line  41)
-* rl_display_match_list:                 Utility Functions.   (line  43)
-* rl_display_prompt:                     Readline Variables.  (line  59)
-* rl_do_undo:                            Allowing Undoing.    (line  48)
-* rl_done:                               Readline Variables.  (line  28)
-* rl_echo_signal_char:                   Readline Signal Handling.
-                                                              (line  89)
-* rl_editing_mode:                       Readline Variables.  (line 270)
-* rl_end:                                Readline Variables.  (line  19)
-* rl_end_undo_group:                     Allowing Undoing.    (line  35)
-* rl_erase_empty_line:                   Readline Variables.  (line  47)
-* rl_event_hook:                         Readline Variables.  (line 124)
-* rl_execute_next:                       Character Input.     (line  26)
-* rl_executing_keymap:                   Readline Variables.  (line 155)
-* rl_executing_macro:                    Readline Variables.  (line 163)
-* rl_expand_prompt:                      Redisplay.           (line  64)
-* rl_explicit_arg:                       Readline Variables.  (line 261)
-* rl_extend_line_buffer:                 Utility Functions.   (line  27)
-* rl_filename_completion_desired:        Completion Variables.
-                                                              (line 206)
-* rl_filename_completion_function:       Completion Functions.
-                                                              (line  59)
-* rl_filename_dequoting_function:        Completion Variables.
-                                                              (line  37)
-* rl_filename_quote_characters:          Completion Variables.
-                                                              (line 138)
-* rl_filename_quoting_desired:           Completion Variables.
-                                                              (line 216)
-* rl_filename_quoting_function:          Completion Variables.
-                                                              (line  24)
-* rl_filename_rewrite_hook:              Completion Variables.
-                                                              (line  81)
-* rl_forced_update_display:              Redisplay.           (line  11)
-* rl_free:                               Utility Functions.   (line  18)
-* rl_free_keymap:                        Keymaps.             (line  30)
-* rl_free_line_state:                    Readline Signal Handling.
-                                                              (line  72)
-* rl_free_undo_list:                     Allowing Undoing.    (line  45)
-* rl_function_dumper:                    Associating Function Names and Bindings.
-                                                              (line  30)
-* rl_function_of_keyseq:                 Associating Function Names and Bindings.
-                                                              (line  15)
-* rl_funmap_names:                       Associating Function Names and Bindings.
-                                                              (line  40)
-* rl_generic_bind:                       Binding Keys.        (line  89)
-* rl_get_keymap:                         Keymaps.             (line  37)
-* rl_get_keymap_by_name:                 Keymaps.             (line  43)
-* rl_get_keymap_name:                    Keymaps.             (line  48)
-* rl_get_screen_size:                    Readline Signal Handling.
-                                                              (line 108)
-* rl_get_termcap:                        Miscellaneous Functions.
-                                                              (line  42)
-* rl_getc:                               Character Input.     (line  15)
-* rl_getc_function:                      Readline Variables.  (line 130)
-* rl_gnu_readline_p:                     Readline Variables.  (line  83)
-* rl_ignore_completion_duplicates:       Completion Variables.
-                                                              (line 202)
-* rl_ignore_some_completions_function:   Completion Variables.
-                                                              (line  56)
-* rl_inhibit_completion:                 Completion Variables.
-                                                              (line 255)
-* rl_initialize:                         Utility Functions.   (line  31)
-* rl_insert_completions:                 Completion Functions.
-                                                              (line  32)
-* rl_insert_text:                        Modifying Text.      (line   7)
-* rl_instream:                           Readline Variables.  (line  97)
-* rl_invoking_keyseqs:                   Associating Function Names and Bindings.
-                                                              (line  21)
-* rl_invoking_keyseqs_in_map:            Associating Function Names and Bindings.
-                                                              (line  26)
-* rl_kill_text:                          Modifying Text.      (line  19)
-* rl_last_func:                          Readline Variables.  (line 110)
-* rl_library_version:                    Readline Variables.  (line  73)
-* rl_line_buffer:                        Readline Variables.  (line   9)
-* rl_list_funmap_names:                  Associating Function Names and Bindings.
-                                                              (line  36)
-* rl_macro_bind:                         Miscellaneous Functions.
-                                                              (line   8)
-* rl_macro_dumper:                       Miscellaneous Functions.
-                                                              (line  14)
-* rl_make_bare_keymap:                   Keymaps.             (line  12)
-* rl_make_keymap:                        Keymaps.             (line  20)
-* rl_mark:                               Readline Variables.  (line  24)
-* rl_message:                            Redisplay.           (line  39)
-* rl_modifying:                          Allowing Undoing.    (line  57)
-* rl_named_function:                     Associating Function Names and Bindings.
-                                                              (line  11)
-* rl_num_chars_to_read:                  Readline Variables.  (line  32)
-* rl_numeric_arg:                        Readline Variables.  (line 265)
-* rl_on_new_line:                        Redisplay.           (line  15)
-* rl_on_new_line_with_prompt:            Redisplay.           (line  19)
-* rl_outstream:                          Readline Variables.  (line 101)
-* rl_parse_and_bind:                     Binding Keys.        (line  96)
-* rl_pending_input:                      Readline Variables.  (line  37)
-* rl_point:                              Readline Variables.  (line  15)
-* rl_possible_completions:               Completion Functions.
-                                                              (line  28)
-* rl_pre_input_hook:                     Readline Variables.  (line 119)
-* rl_prefer_env_winsize:                 Readline Variables.  (line 105)
-* rl_prep_term_function:                 Readline Variables.  (line 142)
-* rl_prep_terminal:                      Terminal Management. (line   7)
-* rl_prompt:                             Readline Variables.  (line  53)
-* rl_push_macro_input:                   Modifying Text.      (line  26)
-* rl_read_init_file:                     Binding Keys.        (line 101)
-* rl_read_key:                           Character Input.     (line   7)
-* rl_readline_name:                      Readline Variables.  (line  92)
-* rl_readline_state:                     Readline Variables.  (line 166)
-* rl_readline_version:                   Readline Variables.  (line  76)
-* rl_redisplay:                          Redisplay.           (line   7)
-* rl_redisplay_function:                 Readline Variables.  (line 136)
-* rl_replace_line:                       Utility Functions.   (line  22)
-* rl_reset_after_signal:                 Readline Signal Handling.
-                                                              (line  80)
-* rl_reset_line_state:                   Redisplay.           (line  26)
-* rl_reset_screen_size:                  Readline Signal Handling.
-                                                              (line 112)
-* rl_reset_terminal:                     Terminal Management. (line  28)
-* rl_resize_terminal:                    Readline Signal Handling.
-                                                              (line  95)
-* rl_restore_prompt:                     Redisplay.           (line  57)
-* rl_restore_state:                      Utility Functions.   (line  12)
-* rl_save_prompt:                        Redisplay.           (line  53)
-* rl_save_state:                         Utility Functions.   (line   7)
-* rl_set_key:                            Binding Keys.        (line  73)
-* rl_set_keyboard_input_timeout:         Character Input.     (line  35)
-* rl_set_keymap:                         Keymaps.             (line  40)
-* rl_set_paren_blink_timeout:            Miscellaneous Functions.
-                                                              (line  37)
-* rl_set_prompt:                         Redisplay.           (line  78)
-* rl_set_screen_size:                    Readline Signal Handling.
-                                                              (line  99)
-* rl_set_signals:                        Readline Signal Handling.
-                                                              (line 119)
-* rl_show_char:                          Redisplay.           (line  33)
-* rl_sort_completion_matches:            Completion Variables.
-                                                              (line 233)
-* rl_special_prefixes:                   Completion Variables.
-                                                              (line 143)
-* rl_startup_hook:                       Readline Variables.  (line 115)
-* rl_stuff_char:                         Character Input.     (line  19)
-* rl_terminal_name:                      Readline Variables.  (line  87)
-* rl_tty_set_default_bindings:           Terminal Management. (line  18)
-* rl_tty_unset_default_bindings:         Terminal Management. (line  23)
-* rl_unbind_command_in_map:              Binding Keys.        (line  55)
-* rl_unbind_function_in_map:             Binding Keys.        (line  51)
-* rl_unbind_key:                         Binding Keys.        (line  42)
-* rl_unbind_key_in_map:                  Binding Keys.        (line  46)
-* rl_username_completion_function:       Completion Functions.
-                                                              (line  66)
-* rl_variable_bind:                      Miscellaneous Functions.
-                                                              (line  21)
-* rl_variable_dumper:                    Miscellaneous Functions.
-                                                              (line  31)
-* rl_variable_value:                     Miscellaneous Functions.
-                                                              (line  26)
-* self-insert (a, b, A, 1, !, ...):      Commands For Text.   (line  27)
-* set-mark (C-@):                        Miscellaneous Commands.
-                                                              (line  32)
-* show-all-if-ambiguous:                 Readline Init File Syntax.
-                                                              (line 212)
-* show-all-if-unmodified:                Readline Init File Syntax.
-                                                              (line 218)
-* skip-completed-text:                   Readline Init File Syntax.
-                                                              (line 227)
-* skip-csi-sequence ():                  Miscellaneous Commands.
-                                                              (line  51)
-* start-kbd-macro (C-x ():               Keyboard Macros.     (line   6)
-* transpose-chars (C-t):                 Commands For Text.   (line  30)
-* transpose-words (M-t):                 Commands For Text.   (line  36)
-* undo (C-_ or C-x C-u):                 Miscellaneous Commands.
-                                                              (line  22)
-* universal-argument ():                 Numeric Arguments.   (line  10)
-* unix-filename-rubout ():               Commands For Killing.
-                                                              (line  32)
-* unix-line-discard (C-u):               Commands For Killing.
-                                                              (line  12)
-* unix-word-rubout (C-w):                Commands For Killing.
-                                                              (line  28)
-* upcase-word (M-u):                     Commands For Text.   (line  41)
-* visible-stats:                         Readline Init File Syntax.
-                                                              (line 240)
-* yank (C-y):                            Commands For Killing.
-                                                              (line  59)
-* yank-last-arg (M-. or M-_):            Commands For History.
-                                                              (line  64)
-* yank-nth-arg (M-C-y):                  Commands For History.
-                                                              (line  55)
-* yank-pop (M-y):                        Commands For Killing.
-                                                              (line  62)
-
-
-\1f
-Tag Table:
-Node: Top\7f1286
-Node: Command Line Editing\7f1943
-Node: Introduction and Notation\7f2595
-Node: Readline Interaction\7f4218
-Node: Readline Bare Essentials\7f5410
-Node: Readline Movement Commands\7f7200
-Node: Readline Killing Commands\7f8166
-Node: Readline Arguments\7f10087
-Node: Searching\7f11132
-Node: Readline Init File\7f13284
-Node: Readline Init File Syntax\7f14438
-Node: Conditional Init Constructs\7f29499
-Node: Sample Init File\7f32033
-Node: Bindable Readline Commands\7f35151
-Node: Commands For Moving\7f36209
-Node: Commands For History\7f37071
-Node: Commands For Text\7f40476
-Node: Commands For Killing\7f43203
-Node: Numeric Arguments\7f45346
-Node: Commands For Completion\7f46486
-Node: Keyboard Macros\7f48456
-Node: Miscellaneous Commands\7f49028
-Node: Readline vi Mode\7f52885
-Node: Programming with GNU Readline\7f54702
-Node: Basic Behavior\7f55688
-Node: Custom Functions\7f59105
-Node: Readline Typedefs\7f60589
-Node: Function Writing\7f62228
-Node: Readline Variables\7f63535
-Node: Readline Convenience Functions\7f74201
-Node: Function Naming\7f75191
-Node: Keymaps\7f76453
-Node: Binding Keys\7f78446
-Node: Associating Function Names and Bindings\7f82993
-Node: Allowing Undoing\7f85278
-Node: Redisplay\7f87828
-Node: Modifying Text\7f91728
-Node: Character Input\7f92974
-Node: Terminal Management\7f94872
-Node: Utility Functions\7f96308
-Node: Miscellaneous Functions\7f99636
-Node: Alternate Interface\7f101933
-Node: A Readline Example\7f104092
-Node: Readline Signal Handling\7f105995
-Node: Custom Completers\7f112183
-Node: How Completing Works\7f112903
-Node: Completion Functions\7f116217
-Node: Completion Variables\7f119789
-Node: A Short Completion Example\7f133902
-Node: GNU Free Documentation License\7f146681
-Node: Concept Index\7f171874
-Node: Function and Variable Index\7f173395
-\1f
-End Tag Table
diff --git a/lib/readline/doc/readline.ps b/lib/readline/doc/readline.ps
deleted file mode 100644 (file)
index 59d1d77..0000000
+++ /dev/null
@@ -1,8962 +0,0 @@
-%!PS-Adobe-2.0
-%%Creator: dvips(k) 5.95a Copyright 2005 Radical Eye Software
-%%Title: readline.dvi
-%%Pages: 74
-%%PageOrder: Ascend
-%%BoundingBox: 0 0 595 842
-%%DocumentFonts: CMBX12 CMR10 CMTT10 CMSY10 CMMI12 CMMI10 CMCSC10
-%%+ CMSLTT10 CMTI10 CMSL10 CMSS10 CMTT9 CMR9 CMMI9
-%%DocumentPaperSizes: a4
-%%EndComments
-%DVIPSWebPage: (www.radicaleye.com)
-%DVIPSCommandLine: dvips -D 300 -o readline.ps readline.dvi
-%DVIPSParameters: dpi=300
-%DVIPSSource:  TeX output 2011.02.08:1110
-%%BeginProcSet: tex.pro 0 0
-%!
-/TeXDict 300 dict def TeXDict begin/N{def}def/B{bind def}N/S{exch}N/X{S
-N}B/A{dup}B/TR{translate}N/isls false N/vsize 11 72 mul N/hsize 8.5 72
-mul N/landplus90{false}def/@rigin{isls{[0 landplus90{1 -1}{-1 1}ifelse 0
-0 0]concat}if 72 Resolution div 72 VResolution div neg scale isls{
-landplus90{VResolution 72 div vsize mul 0 exch}{Resolution -72 div hsize
-mul 0}ifelse TR}if Resolution VResolution vsize -72 div 1 add mul TR[
-matrix currentmatrix{A A round sub abs 0.00001 lt{round}if}forall round
-exch round exch]setmatrix}N/@landscape{/isls true N}B/@manualfeed{
-statusdict/manualfeed true put}B/@copies{/#copies X}B/FMat[1 0 0 -1 0 0]
-N/FBB[0 0 0 0]N/nn 0 N/IEn 0 N/ctr 0 N/df-tail{/nn 8 dict N nn begin
-/FontType 3 N/FontMatrix fntrx N/FontBBox FBB N string/base X array
-/BitMaps X/BuildChar{CharBuilder}N/Encoding IEn N end A{/foo setfont}2
-array copy cvx N load 0 nn put/ctr 0 N[}B/sf 0 N/df{/sf 1 N/fntrx FMat N
-df-tail}B/dfs{div/sf X/fntrx[sf 0 0 sf neg 0 0]N df-tail}B/E{pop nn A
-definefont setfont}B/Cw{Cd A length 5 sub get}B/Ch{Cd A length 4 sub get
-}B/Cx{128 Cd A length 3 sub get sub}B/Cy{Cd A length 2 sub get 127 sub}
-B/Cdx{Cd A length 1 sub get}B/Ci{Cd A type/stringtype ne{ctr get/ctr ctr
-1 add N}if}B/CharBuilder{save 3 1 roll S A/base get 2 index get S
-/BitMaps get S get/Cd X pop/ctr 0 N Cdx 0 Cx Cy Ch sub Cx Cw add Cy
-setcachedevice Cw Ch true[1 0 0 -1 -.1 Cx sub Cy .1 sub]{Ci}imagemask
-restore}B/D{/cc X A type/stringtype ne{]}if nn/base get cc ctr put nn
-/BitMaps get S ctr S sf 1 ne{A A length 1 sub A 2 index S get sf div put
-}if put/ctr ctr 1 add N}B/I{cc 1 add D}B/bop{userdict/bop-hook known{
-bop-hook}if/SI save N @rigin 0 0 moveto/V matrix currentmatrix A 1 get A
-mul exch 0 get A mul add .99 lt{/QV}{/RV}ifelse load def pop pop}N/eop{
-SI restore userdict/eop-hook known{eop-hook}if showpage}N/@start{
-userdict/start-hook known{start-hook}if pop/VResolution X/Resolution X
-1000 div/DVImag X/IEn 256 array N 2 string 0 1 255{IEn S A 360 add 36 4
-index cvrs cvn put}for pop 65781.76 div/vsize X 65781.76 div/hsize X}N
-/p{show}N/RMat[1 0 0 -1 0 0]N/BDot 260 string N/Rx 0 N/Ry 0 N/V{}B/RV/v{
-/Ry X/Rx X V}B statusdict begin/product where{pop false[(Display)(NeXT)
-(LaserWriter 16/600)]{A length product length le{A length product exch 0
-exch getinterval eq{pop true exit}if}{pop}ifelse}forall}{false}ifelse
-end{{gsave TR -.1 .1 TR 1 1 scale Rx Ry false RMat{BDot}imagemask
-grestore}}{{gsave TR -.1 .1 TR Rx Ry scale 1 1 false RMat{BDot}
-imagemask grestore}}ifelse B/QV{gsave newpath transform round exch round
-exch itransform moveto Rx 0 rlineto 0 Ry neg rlineto Rx neg 0 rlineto
-fill grestore}B/a{moveto}B/delta 0 N/tail{A/delta X 0 rmoveto}B/M{S p
-delta add tail}B/b{S p tail}B/c{-4 M}B/d{-3 M}B/e{-2 M}B/f{-1 M}B/g{0 M}
-B/h{1 M}B/i{2 M}B/j{3 M}B/k{4 M}B/w{0 rmoveto}B/l{p -4 w}B/m{p -3 w}B/n{
-p -2 w}B/o{p -1 w}B/q{p 1 w}B/r{p 2 w}B/s{p 3 w}B/t{p 4 w}B/x{0 S
-rmoveto}B/y{3 2 roll p a}B/bos{/SS save N}B/eos{SS restore}B end
-
-%%EndProcSet
-%%BeginProcSet: texps.pro 0 0
-%!
-TeXDict begin/rf{findfont dup length 1 add dict begin{1 index/FID ne 2
-index/UniqueID ne and{def}{pop pop}ifelse}forall[1 index 0 6 -1 roll
-exec 0 exch 5 -1 roll VResolution Resolution div mul neg 0 0]FontType 0
-ne{/Metrics exch def dict begin Encoding{exch dup type/integertype ne{
-pop pop 1 sub dup 0 le{pop}{[}ifelse}{FontMatrix 0 get div Metrics 0 get
-div def}ifelse}forall Metrics/Metrics currentdict end def}{{1 index type
-/nametype eq{exit}if exch pop}loop}ifelse[2 index currentdict end
-definefont 3 -1 roll makefont/setfont cvx]cvx def}def/ObliqueSlant{dup
-sin S cos div neg}B/SlantFont{4 index mul add}def/ExtendFont{3 -1 roll
-mul exch}def/ReEncodeFont{CharStrings rcheck{/Encoding false def dup[
-exch{dup CharStrings exch known not{pop/.notdef/Encoding true def}if}
-forall Encoding{]exch pop}{cleartomark}ifelse}if/Encoding exch def}def
-end
-
-%%EndProcSet
-%%BeginFont: CMMI9
-%!PS-AdobeFont-1.1: CMMI9 1.100
-%%CreationDate: 1996 Jul 23 07:53:55
-% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
-11 dict begin
-/FontInfo 7 dict dup begin
-/version (1.100) readonly def
-/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def
-/FullName (CMMI9) readonly def
-/FamilyName (Computer Modern) readonly def
-/Weight (Medium) readonly def
-/ItalicAngle -14.04 def
-/isFixedPitch false def
-end readonly def
-/FontName /CMMI9 def
-/PaintType 0 def
-/FontType 1 def
-/FontMatrix [0.001 0 0 0.001 0 0] readonly def
-/Encoding 256 array
-0 1 255 {1 index exch /.notdef put} for
-dup 58 /period put
-readonly def
-/FontBBox{-29 -250 1075 750}readonly def
-currentdict end
-currentfile eexec
-D9D66F633B846A97B686A97E45A3D0AA0529731C99A784CCBE85B4993B2EEBDE
-3B12D472B7CF54651EF21185116A69AB1096ED4BAD2F646635E019B6417CC77B
-532F85D811C70D1429A19A5307EF63EB5C5E02C89FC6C20F6D9D89E7D91FE470
-B72BEFDA23F5DF76BE05AF4CE93137A219ED8A04A9D7D6FDF37E6B7FCDE0D90B
-986423E5960A5D9FBB4C956556E8DF90CBFAEC476FA36FD9A5C8175C9AF513FE
-D919C2DDD26BDC0D99398B9F4D03D5993DFC0930297866E1CD0A319B6B1FD958
-9E394A533A081C36D6F5CA5FED4F9AC9ADE41E04F9FC52E758C9F45A92BED935
-86F9CFDB57732045913A6422AD4206418610C81D882EE493DE9523CC1BFE1505
-DD1390B19BC1947A01B93BC668BE9B2A0E69A968554239B88C00AF9FBDF09CCD
-67D3B2094C11A04762FE8CC1E91D020A28B3C122D24BEAACF82313F4604F2FEF
-6E176D730A879BE45DD0D4996EF0247AEB1CA0AB08FF374D99F06D47B36F9554
-FAD9A2D3CE451B7791C3709D8A1DDDEFBD840C1B42AB824D5A0DFF0E0F15B0B7
-22AEEB877FF489581DA6FA8DA64944555101EB16F7AB0B717E148B7B98D8DBFD
-730C52937E226545CF8DC3E07C5BA30739BAFCD0F2B44275A6D503F582C0FB4F
-449963D0AD2FAFDE33BA3D77BCA9D1DF878DDAFCA2E22CC4BACD542B282164C7
-97C2BDE318AF9D501CA21F6E662E7AAB75A5F24D2C182E598D175D44E88AB19A
-E7CD59584F95B389183EE21B525BF52A3F23C0FE5383A5565A19361D716F508C
-AAB78411CA5A4D27552CC1C435760D5A89D535B71C593E755C616661363308DA
-A683F54ED0C23FB2C225A008392B0B719F66F11A946A090B7C00B662A3C69599
-B4ECB0CC70C85C4BBBF207E0026F6C7A19F2ACFB7A60804FC98A4BFFD7BFFF2B
-9529E6D9D4238002BBC255BC62959D6F3381FE06E0621B879D5FE5B541D45A1E
-759A6E7DC32B1D1632368D09A97039DF255B6492B1B2B7E2C1434E8306ECA7D3
-5A79B6D614B4979F10988BC76ED53A5F45315CD7DA216221F842FD0F3E050DD2
-BAC23C984D506D8F7D614BCB6B244F5F41321549BB0BD041FBF3053307168680
-3435E9C9445A59A7C666418C4F2512C32058B1CE1EA46C7839C6E372F6CC60AE
-2CF46DD2F130B532DE8ECD42D9204500E413799E298CF6426F28D23BB7216BEA
-1A618B3ECC61B44DDEF0BB22D640B47C09AC0DF378CE68FC9CD88BDAE9ED89CB
-431A5CF9C3E9528FEE7A9936C2B1CF7B38DD2B95773F0EA0051607BE1B0B3588
-A8B907A5EF011B4622C5093A7B107DD1EED6FEE9536DECF1CC96E65373D0F433
-30AE3C094654ABF4698C07F8C74E71D023DFD242EE83B1306786124DD8C6BFA7
-801E66CB944BE7EBCB3FE803EC97067AF7AFC8A4E9AC9D11
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-cleartomark
-%%EndFont 
-%%BeginFont: CMR9
-%!PS-AdobeFont-1.1: CMR9 1.0
-%%CreationDate: 1991 Aug 20 16:39:59
-% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
-11 dict begin
-/FontInfo 7 dict dup begin
-/version (1.0) readonly def
-/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def
-/FullName (CMR9) readonly def
-/FamilyName (Computer Modern) readonly def
-/Weight (Medium) readonly def
-/ItalicAngle 0 def
-/isFixedPitch false def
-end readonly def
-/FontName /CMR9 def
-/PaintType 0 def
-/FontType 1 def
-/FontMatrix [0.001 0 0 0.001 0 0] readonly def
-/Encoding 256 array
-0 1 255 {1 index exch /.notdef put} for
-dup 12 /fi put
-dup 13 /fl put
-dup 44 /comma put
-dup 45 /hyphen put
-dup 48 /zero put
-dup 49 /one put
-dup 50 /two put
-dup 51 /three put
-dup 52 /four put
-dup 53 /five put
-dup 54 /six put
-dup 55 /seven put
-dup 56 /eight put
-dup 57 /nine put
-dup 97 /a put
-dup 98 /b put
-dup 99 /c put
-dup 100 /d put
-dup 101 /e put
-dup 102 /f put
-dup 103 /g put
-dup 104 /h put
-dup 105 /i put
-dup 107 /k put
-dup 108 /l put
-dup 109 /m put
-dup 110 /n put
-dup 111 /o put
-dup 112 /p put
-dup 113 /q put
-dup 114 /r put
-dup 115 /s put
-dup 116 /t put
-dup 117 /u put
-dup 118 /v put
-dup 119 /w put
-dup 120 /x put
-dup 121 /y put
-dup 122 /z put
-readonly def
-/FontBBox{-39 -250 1036 750}readonly def
-currentdict end
-currentfile eexec
-D9D66F633B846A97B686A97E45A3D0AA052A014267B7904EB3C0D3BD0B83D891
-016CA6CA4B712ADEB258FAAB9A130EE605E61F77FC1B738ABC7C51CD46EF8171
-9098D5FEE67660E69A7AB91B58F29A4D79E57022F783EB0FBBB6D4F4EC35014F
-D2DECBA99459A4C59DF0C6EBA150284454E707DC2100C15B76B4C19B84363758
-469A6C558785B226332152109871A9883487DD7710949204DDCF837E6A8708B8
-2BDBF16FBC7512FAA308A093FE5CF7158F1163BC1F3352E22A1452E73FECA8A4
-87100FB1FFC4C8AF409B2067537220E605DA0852CA49839E1386AF9D7A1A455F
-D1F017CE45884D76EF2CB9BC5821FD25365DDEA6E45F332B5F68A44AD8A530F0
-92A36FADB679CF58BAFDD3E51DFDD314B91A605515D729EE20C42505FD4E0835
-3C9D365B14C003BC6DD352F0228A8C161F172D2551CD1C67CD0B1B21DED53203
-046FAFF9B1129167921DD82C5964F9DDDFE0D2686875BD075FC81831A941F20E
-C5CD90040A092E559F6D1D3B0E9BB71733595AE0EA6093F986377A96060BF12A
-A1B525CD9FA741FE051DD54A32BECD55A868DD63119A4370F8322CCBEC889BC2
-A723CB4015FC4AA90AE873EA14DE13382CA9CF0D8DFB65F0ABEDFD9A64BB3F4D
-731E2E1C9A1789228FF44116230A70C339C9819676022AB31B5C9C589AE9094B
-09882051AD4637C1710D93E8DD117B4E7B478493B91EA6306FDB3FA6D738AAB1
-49FBB21A00AC2A999C21445DE3177F21D8B6AAB33869C882613EA6B5EC56476B
-5634181ECBF03BFEDB57F079EACE3B334F6F384BDF9D70AEBD592C8ECF21378B
-54A8B5DBF7CB9282E16AA517E14843909339B5E7C55B038BF3BB493F3B884A1C
-C25F9E8FB912CBE23199AD9D2C3E573727701BA301526C66C3617B9514D6F11F
-11930B1D97C17816C85B1BFD9B973A191B33CC3B391815AD14F1CBE935942AEC
-D4004E6BEF379066FD72209DC88D2E634E79BCC2B98C766CBD92C561F2703F8A
-109E6C6CEC7B866F2FC7ADF646BF492E520319F3B949AB5D84AE990B33344A40
-3971F58DFDF8D8D67FA0B8F2A0D884F8C09A5A721319B911DBA0A35903877343
-C37BC36C5EB32353272D1E6ED5FCA611BE319A7E1E842CB7576E7A6E4BCA12E4
-2086286F43226A1549A4FF7492ABD07FBB1EEFDDDDCFD29D8325E262E7C6C0AA
-34F6E5E90471F431033742F5BD7B8DFF2F7735FF03526A4B3E7C550BC02BF138
-20EF5BF1805053B714B2D3DEED7015C9AA55F6D4E5671A52177E916107DC1C24
-1A6B08D4D0E553312240DE0B15FCBC1D7BEBED0A277CB194A725042EBADF8C40
-926F53297C0AEE217D9626B555CF3CA2CA2286067C562C5639F2C8D36248F32F
-32ECCAE20F5253B14C7A8827C4FCEAC97EA5DAFAD169BD757F6B155EB9D55A65
-002FBF723D774680C5CCD9C22C9912E6BDB205CE0EF255821381A430FB331DF2
-78C42E7445A31C581668B3C8F8F3E9A1AB5C5C8A4DA9865548AAFE4F3D4DD2C9
-68678E4DE398B1774F5EFE662300A1D4AE3DF645FD3BBFCD580E539DD785D970
-1FCE87953CB69D0AE861AF38EB47E578339D91B4C2D748F9705F425512FD576B
-9EB3780E9CA494C3D2A88A7F1AE1B96762C34910CFFAB0C5F79ADC3E1B943A72
-A7A9DEF158FF05D81BA4E887665E21147692C6E7F4FC7B0323F519986C2510D1
-1A83196AC7139C56B1DEB3B8A3B33B39531A1DA923191BCC0354FC1012CD78E7
-1A7623989D6A2F46B8C716FDE84759D112DF59D9F5425668D287941F68A095EF
-502FF94B4035BB46EAFD5245470E43243B3A6F4F4B30631EAB6FF3D54F1B8C54
-543211DE7404943720568AB7FF3A987636652EE54D45E593A522B6769E6A9B92
-FA8F84E357DE173E75FC9DF297FD52838EB3BDFDFF32FBFBE41350FB4247E69D
-2A418989DE2C49B5ACE3ABD2E8784A0A54F0A0987922E0A418E5263794D67A2D
-E74F20DCA22DBC738B16F72F45FE4D51F08447C33EE1F96D27C83F27EB606D19
-E169F2AD7A3F5345F1605E0F96F4DBA8CCFCBC57CC7A1AE6B60D00A33E13CBC3
-F82AB4802F2A6B4ACF7D19FB13CE8729884B182EDAE5D21E3085070E4868CE8C
-05F96210555561E8F1A863D44E0CBE8E05FA6BE955C48EA8960151F684768C33
-324E61AE682CCA56EC7551034C3E30C057AB889E5E5E0B45C2D0082CC5F4EFCB
-6D74A25B1E03716049FE975275FB46343DEFDED630443CC0932C1090F782F415
-3315E6F1709D376505A2400C95C4723B9C32BF192C1D46D6B707A5E8323AD2C7
-E62A300DB09EB298AEF9CC7EFB2D8BDDF6CBA4F57496570B5093D7E730FFB8B9
-8600824CFBD9879B9D6F6E4940AD760C8A9314ACC7FC31C1A74B919604B3DA83
-A943E6A767ABAB506DD2639F1D56D4F1A636A2CA59A79E1B45E811D5EB82DEA9
-135909E9420DB37753EF8B837934164F3545D0D240F5DDC6B38CEA134920B715
-BE6B928B524549C599CD71A60A2A549FC1B2EA68E2761A67F3D39F93F72CDE68
-D11E9258CE8D584C47789878BA3C28E92803D22CFB945166D42E3A627833031B
-596EAF89BB06C015463CCFD72807FBFD8A3BDE14CC9FB2DC060A199443B31A85
-C857F30FEA63F01EDA8DA77C41CC332A515D3976A70F716C6E3A16B60CD5F4A6
-26D66E7BD366673DD50FFB463CBD3A5537DD30733C10195386D834AF7EB7789B
-92C5971D8C0DF87E1E78018946B1A7D0D4D00BF2BE76639E082C622DDA59852E
-01265974B74F8AEEEBD2E208206EFC2629551F3BDF5DEB6C490506036F0E2354
-EB88BDA624E9959E7BC24D6BDC9B1FDCC0FCD4CC82BC1FA903BEC21435C9250B
-FACE0ABBD0E2ACC2ABC1183747DA7FC8EDD7F77CFDCE552F825791644CCF89BB
-E50CE355F904CD40519CAFD8BEE25732C7C4CA01AD3EA6E9B9A6578354DC7756
-47D1DA4BEBBF0A38B65E6AAB280FEDC6EE7F403A33E26215166F6CF56491EFC3
-240947A96B5FC1C126F86AC56B2B7C28F5FDB2883652F07CDA4E643700F3E62C
-AFA3BBED17CAFC04B376BA790406A6F3355871225FD45308DDA791323FFA45E5
-8DCA81C190500F57D666BA1AF5F465592F74EE121856DAC0446FD75905224797
-B6950AF2654398ABEA5CA909F573AB9BC6355DFB6402CED3600415D441A5F613
-D6CC7AF15DB7ECCD4101FD0DFCEDD751D53742086F56D76D59FF56BF0FE08D36
-EB2E0006FF7CDAD219D8A117BB0971DF61CC2EBAE13F3C61DCD732C0A1B5982E
-FA9A82EA390A8ECEE8853100232DA6BB55797BE431DF34E87ABABB4E4EA5AEFA
-A3D9096B9DE073104ADF5CA8E840D1F8D7D18B9FA9201D222E40E78EE179A297
-66A60A2F4C54053A48C56B7FE47D78B883EEA6BF369407B337C518C4A8521A36
-C3C7462EBF3D967683971100C64EFACA8972A8DC248EE257A0AF3F7F85DC30D5
-276315A876A830602D216B28DCF9E621F3764DB847601C133D004C531E8FF45C
-E584754FDC89C1B1FCE30063EC10089C0CB315CA1EEEABF35F1CC26EF3961496
-702F49796643B3E9370599B5A8EFB3828A75383FD733C17D708DD20DAC686BBC
-D210C8CB4A42935B60F1470659C41B62B629E381023D212BF79D29FAA4076393
-A3023F9B8D5D558114A7AF42FE9E45D8A91ECA11CE628E616C50105EE11BF8D6
-D03991B9F9C2C4FCE0FB746030A2EA802EB8998E94D4F0AC5E22274CD945800A
-B3D82952F9790B7B86A6D3A24500A1B85733138D938F0501476D5520C336CD35
-DF710C8A6F6E9E92545188FA8AF49F9271F8AEC220FC54BD789AEE8A62634D3D
-4CF6DA3D5ED42C3AC12992568EAF3EB5D9213AD587D29CA3DA7E6E208F5CFEEF
-9040815071DA33F016EB8258C3813AAE3BF169486A02E8C43404F194AD7A1BC3
-2A46825183FFE5082699D7556E2F4A59DD0ED835B9C5EC8F942C0A703CEDB0F9
-C77068BA68AD0697D0C3C86F33C9AC9FD4ED4851AA3033B211218AC92F2A744D
-2AA17C2DAC259F88171F7ED8BB1979D07673E16F5CA7A18E4CE78BB22476C2D5
-D08F78429A2433DEC7D7CD2D2391E30D4E8D9006C0755BAEA95FE903ACC4BD0F
-9D9922837D3FEEE28BFE34018470D8C91D4EA968ECA1B93AEF9402B1054067D4
-3DA1DB14B96B96E9884CCF9B461273CDC224D5D79AD15FF57CBE9560F9F67A02
-4FCB320805E9C261BEC5EAF37B76F1A684B39B9911669E1772DEABF1FF131244
-C2A60413854F84CDBB2CA0D93241D2900161CAC9E9BFEE211102D9F5A18F383C
-73F3627599589A3F0F2DFA4DE7AF33D6AC26AC0019F6C7E132B7724A8D4AD068
-64F81D26912089399AF5ED009375DB4DD51B8B274EB51EB6970A8F389946CE92
-390EB30FDC302380B9A18144E09EEB604001426CE1363A4946C015901E28BEAA
-9B8026BF9D1225D741AEA87AC73C2A906A1CE906935C7273FB5B0D22832F6C99
-E6F698234DF5C3050DF46A51FD39BD43C6F9EBF83C76201152C797258FF01930
-6D47F15EFFA39887ED307174D7A0A1D198C93624A681F5F248096D8739B8B048
-9835310371E03AD967C6F81898956C53B00F891CD2BBC5EDCEA494694BACE089
-4E1338305A2F0B1475E87112270128312E8945F623B2893DA5D71AD9146773B5
-E23852F205214CEA0DAB998D6B61D47B531CA74D927C67405AA67A5A4CBD4B06
-07ABFE4E39139705739BFB944B0B1854306D385A368C8EB8A4AB820BFCA2D13D
-C41FDE331CEECA12E55A92FE15E82A942EB17F2323AE76D70C0B58FED17E9EC9
-23A31F79DD1C0B8143A769A17BD7B9DA623B6A85EF5E04B2C37AEE7AE7D4F3EF
-89C13761A40D0A684B97BD00D86AAFCB9D61D676702CDE89C703229B0B983DA1
-84474B233805DA7458F31D2B388C19AE2A5D55E7E2C021DCE2568124B9C65318
-7D2419852A7C3E782E65577C7A5B7EDE359520410022885395630A83A75ACA3E
-487D878EDD0150D49F4AE2BE404736DAEC3FD3F399767E9442EF7712BBC4B465
-09723E1451DAA8BED3FDFC5A18B1520C43D2E9BE9AE51F805589305E6927F294
-DFC5439C09C9AD1B416F753656B197E3222DE448E3921DB5B669E10B78AD4A74
-54F879A1C6502528EA7FA622E3532786720EAC1FFE950AB23D232D30BBA0BBB7
-35108A8249D117096D478501F0F44951A19B9EE2E622D458D4E11BBC89668E07
-ED1F6528A487C1C11BEE5D4347602BF89904EA443C21BD9BEEEEE235AF511BE9
-0D5E9EDC91A61CE4936846D33BF3C865BDA00A6F71A5CA7F689F2903117245C7
-6DA1D0B9719C0907DC323CC7B23085C69CEF7D978919E7CD59E8778B71EF84CB
-809FDEC2FDB6041C4E3E4BD1DDBF0DEF5904F9C7E8B13F7DCC108C6DBEC54A98
-1A857C3D6409006F2A7C0C6C6630D22902FC369632710BE765AF27F47137D52A
-0E4DB396B8E52CE5D17176F5EB924CC12AE87870525FB6CE8284FE29869BD98D
-F0F34EE2E85A0C83CB3ED6F8832729CB2905CD68D1B3CE93FE74594FDB08D75A
-D099CA9AE015F396B5D6C4E0D35DDF566179B8CF5793C0D93D2C16A9B7F4E4AF
-BB65316C8EFCEE6BFA0CAAF915CB43726F31BEED9A49CEBB22869C79DF80C7E6
-1D17CE31A53FAC643E0AC03FE5C7081CE023877A3C214A028E2596E3D3685268
-D85850A4ADB867D2C4BFB589B1F5247E317D4A1AFABFB17DFA0E76335AE25128
-4D89BBAEB1C05F2734AA78530482CAD30AF5448E0D8A0C19B5830FAD63F73118
-2E9BA785477AFC727D200E393612869DB66C6253C5F13F27FC1855E315D73FA6
-2A42FFBA17CA52934DFC4FC7C548A0C751E9E18F8AE45BBE25E68D5B95E0BF60
-82C28426DC6E1842A1FF6E2D2803E3732EAC874FDCC92C00FE3462A60DD51EF9
-304DF3135CB0865C96AD62E2D2947F9E04ABF144916083C61BED35C9A6DF7CF0
-6FF9B3C98AE848785BA4561ADF24C27292601E11990A2E88774FEC8D46A5D813
-AA4965778CA603D09054C38278CC1D749628C1FFB59D5236F313988AA64EFE0D
-5B002D463124844922A10D3CD7810A847085B67A9813A24A225F5AAA4F4C66A8
-B26AAC57A279E2D6E6C7DA723DB118A183B782BB667329EDFD901585773705DA
-E855515DC19227349EDD8B770C8371408EBA91BA4E64CA6E37085CC6BB05E773
-DD1046147BD67FC57BD4E748EAE63EA66895EC0D6CFB75E7F7A81B08D1E5CADC
-79C04E9DE88611BA3B063D865C56D9AFA136DC2263634104CB3DD1D0C2053B53
-B010C058015B8726A20291C464981FEA208CA36023E1A5E7312E0D0EF6BD8C54
-ADFB488F2C81B265F0359A4F8356C6C8BA82CDA17FF91AEC7D9A3FA88F85B995
-698FC4024C6E8B12EA1189257B38E3814D50DE90BEB69808A6FFA2AC0CEE48DD
-53E04D7B2442F2BBA36683BE5B6C50D55E1E5FB8EC804E126252DBE720C13790
-CBB8BC864156CB75F0BF923500F503E7E49838E4BEB76C594A9275E7D28CF9BF
-2B48389285325E979FBFE0E35E1DA7FC23E122DD4D6344A3A7709F422B60520C
-F6000B24045BBFE30D3E5EB35BEB48E26AAC37040D490851F1017E6F41E37135
-6A76F41BD27834CF3691C60F48AA508E8B276B2741941E4DB35CF42FC74A81CE
-57429351B4EF9B429DDC4206948FE10F6D4AAD93C89C0A31E72A10D81F1A3B32
-8B08CD379B6126A607D1DC52C75786B6E76CD788FE7B0350E5D272159F70592C
-7BB387B87117B59F14C4171FBFDC6CADEBAB572B8109F916D8CA5F71D00223FE
-09B3D6709FB136D9CF4473629DB98FF10DC4EFEC5F0D22A717B098EB38928A53
-B457B5F90DA732EA3613A5AC30A91E220DB4DBEDF6B0B4C6F05774B994BBCE90
-1DC703882BE03FFFA973D6A27E26F2CE02FCF68FB64EFBC2FC453DC009985AF3
-28A924F5AFE61D8FA24484979104CE7267C71D018531521C205A692B2341A716
-8DB082AB32B9575193A0EE526119280A3F8C7CAEBA58E2AACD83F6B12F159B4F
-21A5953FA0F061BBFDB1360D9453D1F8A9DDD2ABB031A3968AA9A97A5D7C497A
-7F0D57FE59E319E06D77114E87803D8699C5C29E454DD168623F29D0FA61D832
-98738F6856A9B294233EF363DE84749AAD95212F3B350698D07B4068E1F21C63
-3B3917E6F79FBD02A3D9399AB18AAFF22B076C0D2F677B684476CA079F881C3A
-D71D6903A75CB9931C78AFDAADF5B75B44A52E0025F406314E8DCF1CBE6B3165
-AAB0AEC77592BCC95C8858EFD33A945923ED8EEBCD7005129E7AF3CBFADF28D7
-C9CD1702D5F1E3518C695E831D2D3DFFEC6897968E4A4599E912BBD958EB12C7
-25DABD18A816CFAAFDDC8D0A88802636BD2CC81587B19E91BD99712E41CE0ACF
-1C1745430054851077985E5FEF38A73272C56BE0DDD2F9B3973FE06F62DEA8E7
-B6CC46558B784D0BB5162F143B3959AEB720E6AC3F122E8383066B914D391541
-75C2D47E07C4DF14FD75E96F19788374A6CF218472ACA936078B9C245F40C812
-30D351323881A7CC553F0B9DF5E0E90753D41582A1A1F6E932BCA3853DB1A6D5
-07E4DBA91CD26EFAEB573A0C2D8EC879BD271F3619AEF841B4BB26EEB85A3C86
-AB33D5E94C594197134730A2061AEAF90E4E5A4FEBDECBEDA77588B8F0C02644
-B5DF17DAD9048C85EB0DCCBDE45C6B0BFE690C687C2BFDA900A484DA948D008C
-CD087DF0CB9F74E3DDD27D12E4C970BD55D097AE007652DD43F74D3B63C0B619
-72F16998E182B9C113B921CBD7B831DCF5379B43662FA0971778ADE6636192F9
-24BE11982CC12FC087D4F607F078E2CA350A4EEA3F6E2EDD2B2D37987E722A2A
-5C6794CC7FB91427DC38260D92CFB5E3C64B5460FC139BA88F9DEC183B3F4882
-B3EA91214CF6439DFF4E3AC48CE710B077FFC1A7FAFC9DB7459D3B2797BD0B7A
-3E7B8DEBB09446D8ABAE4084F2FFC778BF697EBEDC69E16B5D4C962F260A69F1
-9F524442AE727481FFFF7048C0342059B4DC66C4CD7BB6200584CAD626E0D9CD
-35F49DA71F619CFF33307EB0AA5D70A223B0E8854D2F492CC361C1147DE55BF3
-305A979D58165F76C2F819BA05ACF43FBBC480D290B1675974890D80CAACA7EC
-3FF458B84D5DD9BC5FC978A701210042F3509E90DA4A6D72D133D89C4B191AF3
-C62E4B8D8BF959264070968B5FC00825E37FD55E9D6C83159B9171FA817B3914
-C0AB790C8CE44D481479844EED6D7E53296E2A3F4BB248F367A8F1659F2B7767
-3D05D34970CFB4579CCB0556839FC219CE80BF84FF513641E0F8F3E1FE62E59C
-8B3E6AE389C797DC9CEA8E4CB22EE0E78451FE1D483134BCE93B21BC437B7B25
-FA471CEC4C6F340A4F9E754FFB94EA84C14C14B36D262CB28E91C2FB7A266C43
-3E81DF368494A4B4FC6AA8722A721F8E51D2E2DFD756336584F54F9989899BB7
-87BCE093C93147F25681D54670B6C06E06D4A9F9685FDF3C65DA8F35E0900F8D
-2E378A4D9A859EFA76FD51083BAADDBAC5855693ED96C6321455FF3D59823CCB
-1F667157BE14D5659AB14B331A6BEF7AAEF669AF32EBFF3C7070DB76D37C275D
-3D133FFF1253AA87F2B0450507B281255BBC656B227756B0AF0F7792C501DF74
-42D67EDF5B472DB0BBFEA8D103B260321BC82E6C480FFFD5511CBFD5E044B1E9
-CAB664A8242A55F109499E68A6319E100A9E9DA66C56AA2E184B582E3DB64DF2
-A7C7349C0A66D976A30FA1DF84779B97ADE6F8692B8D787EDD1CE7DA30D785DC
-65A0230BF3572F51D04E8E9FACE145CFC192F259AEF0F7D6B00F9CF9E72663B9
-B544E91823F68ED8C2A3C9A7B8806F4B77D28AE9E1DAA61BB1B9DD35BC4A7B4C
-DCF4E4DEDA2DF1747AB0C14DB94C9067EBB9804C611771146CC2CDD9414F236F
-BA04EFC0A021911D61A9BEB0F7A3E7981F8F7C5A8B43DF0FEF8B1FEEEB7AC364
-54F380BFE58A6DDB682BD01F0297AD66B20AC36D813124F5F97CA6DA3C083227
-074DB0905E63C2E7BDB30838F33ED57784F31C03CD70D33485E51002AE058ACE
-152B9AF44BA46CE0936E5AF784029A8E1060173F6B57D3C59B8869641011ED3F
-297C4BFE1E5555D0735CCA584CA9245D11E6A0AA15BF2064DB54E75A35F68CFE
-6CCBE1F15377CF92FED2413E5F07B0D37DCEFF3FC27CE3A826F4D80058491AF7
-ACC42727CF992E00180C7DE3D290143062821B6F00F5000B31D9D70E2F246616
-A2CFA0179E76A5096FED5DA570926BBD220491F76EF5357DE263FD486101C889
-B997394C4FD4762D73DC3BCA70BE7784D422C11995E5D3E0F07E58FA33BAE3BC
-5D65A0946DDC0EBCA88B55E38BDD3EB5D6DFAD6EC45A77D253FCDDE226557DAF
-955946431B2E98E3C2C3AC76CCA1C0743631CEBD664B61AF619FD2ED5F3BC188
-ED79F70D78CF0220E87B0163590374DE6C5E7626B3AAF09DE2BC8D183D027109
-431913F590CDFA526840EF6339E75453ACB6E15B15F5AD61C067E3801C676800
-ADD9EE8A87A0B1A529857292029615BA892D355C5A7B1943A8DE6D23D6BCFC6F
-ECCC844E64A2D1EE033083C6BB342FAA63B946CC446F2CBBE4F091952B4F55EB
-305BD2E0DA668B027B1E5B18A5E272540E646E72ACD0430474AC0A8D9C869D63
-0DB6F7E3301A2DFD5E21DD938DD2D18CD9B361E2D73B224F9FCB9708FBCE673F
-98F416CAFBEF721F8707ECFC5AC86648F247DA52C1971AA82B16B4946FA84C94
-B9103697B4A167BFB3B4ACEE5A1C747480DD3A346FCB36C93AF64928A7B36754
-AC3E92486DF3875A25E303BEC4F0410465F95B34EC6C729A5C503722154C8B64
-EA7C4B3ED6A3DA526C66D76689D81C15FA92F4E1993CE17E1D0B37A41977774E
-102F689FEEF2D7FEC3210E6FBE9FD4F1B8EFEACB80004B382D1AF9C278584212
-D17C4E3CA1F1610C384A200D7AC738E60E114BB42F9534A72B7173AA9DFBA66E
-28AA1295D58EE1DED0FA92DC68F0933F5406C7C7CBB06FEDBD92B326122FF632
-0F35F511AF93E40C12576341EBEA9BA16AFD66270002603EBCB6572E5DB500C3
-B9B36DA394DC9B2DAFAD14D96A558B5E3562D796046BC27761B31C4A160CB75F
-3E5690B50111649D794A5ACC9BDBB851F5D64A460462B9171386DBEE21411224
-F68DBA86CE60D425C41F08B3233F1C2F7178F5173D4F3B6456678AA00521E509
-F88DF6766DBD6819775415AEC22DBF2AEB8CBD23960B34C5E62ABB85E3A7EE6B
-48AFB4F6A8082C5DFECE69E88A85B2589DA7AF5F478A88FB8F1208A02E456B47
-6F1390AA44A34996FF8C3EE66B0454378130F7387110D189FE1AC22E610AA270
-CF5D41FB9D02F2A8835EA35CA404CB9A519A310B1B22B23DE56EECA74BC6C040
-356F29195B898788246B2E4D2BD332441DC719775D0D8D488169FA3089
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-cleartomark
-%%EndFont 
-%%BeginFont: CMSLTT10
-%!PS-AdobeFont-1.1: CMSLTT10 1.0
-%%CreationDate: 1991 Aug 20 16:41:43
-% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
-11 dict begin
-/FontInfo 7 dict dup begin
-/version (1.0) readonly def
-/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def
-/FullName (CMSLTT10) readonly def
-/FamilyName (Computer Modern) readonly def
-/Weight (Medium) readonly def
-/ItalicAngle -9.46 def
-/isFixedPitch true def
-end readonly def
-/FontName /CMSLTT10 def
-/PaintType 0 def
-/FontType 1 def
-/FontMatrix [0.001 0 0 0.001 0 0] readonly def
-/Encoding 256 array
-0 1 255 {1 index exch /.notdef put} for
-dup 39 /quoteright put
-dup 45 /hyphen put
-dup 48 /zero put
-dup 49 /one put
-dup 67 /C put
-dup 68 /D put
-dup 69 /E put
-dup 72 /H put
-dup 74 /J put
-dup 76 /L put
-dup 77 /M put
-dup 92 /backslash put
-dup 95 /underscore put
-dup 97 /a put
-dup 98 /b put
-dup 99 /c put
-dup 100 /d put
-dup 101 /e put
-dup 102 /f put
-dup 103 /g put
-dup 104 /h put
-dup 105 /i put
-dup 106 /j put
-dup 107 /k put
-dup 108 /l put
-dup 109 /m put
-dup 110 /n put
-dup 111 /o put
-dup 112 /p put
-dup 113 /q put
-dup 114 /r put
-dup 115 /s put
-dup 116 /t put
-dup 117 /u put
-dup 118 /v put
-dup 119 /w put
-dup 120 /x put
-dup 121 /y put
-readonly def
-/FontBBox{-20 -233 617 696}readonly def
-currentdict end
-currentfile eexec
-D9D66F633B846A97B686A97E45A3D0AA0528A405DF15F03DB1C3DA8B850431F8
-0E5F73DAC973450D1ED0530313057E971FC7E7CA88E61DA6DB9A5CD61F0F76CB
-4DE9105D0627B8DDF51A655098229920CF429CDAFC3F7788C95E7AB30E84F840
-8CED52E98DB4CFF161D2E62B0D28CB8B0AC82E7A8D2C007953BAFB3056D66079
-8064956E257D31C13509FB81A250D9E875C77A4E91CC49E9FB3C0718B2F691D4
-B4A64F351F4DD68133DED7629B0D96E5124584A16FD2AC7A3EB244A934FF059F
-ED7297B0505F3C2994AD66A3CA5D2728B034DE94B64A8AFAF341601BD4DB5858
-C9950A8BB9C598B8960609F48116ABA8C007190AF0ED335EB5BF61BA6871FA5F
-EAB5A26AEB5C7C352EB80799CEB983F19EEFA801093F62086AADD0B80BB6580F
-2CF61B1390FA56DFA1A0B61C58DEF96BA767A8A37EA44730783C600706606C60
-4EE74EA99B7C0F8E2525C8847F3D31907C3C483EFA98F6C416B6B2C343DE6370
-52FAE423008D086A76A1FFB327CC7FD84B1C66B203A4F41582F4599A82F8362D
-38108452EACCC937FFC4F3ABBFE3628DF51367DA6BA3F6826FC6522D6AC5E8EA
-00BAD300FFB6DEDAB93237704202BACD030AA824B1E97C0AFE17FCE8C75F4FA0
-B8A74329A6CF1788C7EB34DA7307411E9AD7ED8D6582884456E06E033B4FFE7D
-CD4DD8B06AD01340CCCFBC382C18CA451E4C886B01D082FF8CC5793F4727C3DF
-B52B4F1A242F31D1EB79D1E39A1D4FD13D6C5E2A42AD4B4D1CC4EE7BA0E5F80F
-802E5AB57EA15F4DE44D82AC408AA86D4BF58EF967FBC6497BBC7F017C0598AE
-32CF865DFFF0FC7FF9E6DCE9B5F2F4C7491AC674F46E8E7660452CE0A77C1EE8
-00DE382ABED85350033F8ECB97398E4E0A75D4877A107F6A909D0C76D14F9A96
-8A6CFDE3FD9D79B6FD82693A9F354BD2ECF30C6D99F7AC522F8D6C93EA214F7B
-3D0ED77F042ACDE9414264C0698E86398562E2C640DEBBA0734AB4C3ACE3907D
-CC79E6B2C6C3C3F9B01526E8CD98237D4A9B403FF8CE3132222FA60C196A19BC
-A2393AE6935C0F8B67FC1D1A12AA74695EFC77DAFA2804E0EBCAE77E4B5CE103
-A0164B7AF6593E58028A8A8A5AF4F5EC5F7376330432566F458AA2661A6AD0AC
-B713047E21FAA80F81C5DE30E1358773FC039A6263DACBF89878169A5B6EE0A5
-BE02F5DE8802912F04D373F16B2E4627D54705ECCDF1A43DE29C3BA73077BCF3
-148E0FE06A4DB51F925170861C43F58168AE85CD478CED8E811821DB638BCFEC
-A9FBD9312B6958E3A3DBCEBBE2CF78B52D963A8CD0013428CF3BB3C8BE792496
-D4C6933B070E5492C789A97B7E3864801AF824C4417BC42BB5E0AB897E139CE9
-86D59B189E90F7B5FAE69B67D5A4C797C7335E3A3CC84C92DC98B165077E48DB
-34F90A551B4CF387D06A08A637635E2C758227956B880C27E6A6048D5A75F22E
-ECCE6D87EFD432983D76E5266950DAA186B89EE41798EC19030105A364B88351
-4CB78AB2AF4BF4E379AC857261D1648BE32B080DC760B01EC9270FFD779E9074
-041A04A3FC130DF2B7B8289BE512DFFE93A62B77529E490C9017808F1B1E9FDC
-21E7CC5BE564C03AE602FECC60B2BFD0CD3ABB895B4AC3E3620DA7260603B6DC
-A918321A58B20114133FEB1AA7845E8ACD966FDA6A0D76232FA4D0E3ACB16725
-070D6A1AD1C12C4FD19CD64037D8A12A750ADE1E589B38C70A1E4CB163E20BA2
-0FFC466D1452D5561C23677E706A588DDE184EEE001A78D5C833DBD34E2F5828
-E89006EAA304848F2D932C5F52E7F546E18CDD77AEE1D3FCC1A1CF5DE08A4FC0
-0AEFB3FBC66C2053B559BCD562A11FB06722BBED6581D9394EB3F36A0CA220E8
-5D09B80CF21A02E44AB75FCECEFE41E2D1A44435936AA7812B4453F4E31AD6D6
-F6160A2EC199F5AA36D64EE247B072BC58E5F9C7D95390E45BC894D7037D861F
-791D339387CDD95EF7283EC409B669E10E949B7C659CA1CC582EEEF4F38CE080
-B2432908B82EAD945FCC67B5D7579A1BB2D5EB3F05F7D32BE415F1BB43566F03
-B9C2B3CB2A3F518F30353F81BB517B90C2278B8ED8BC671370D9ED56D36E00CE
-F2C5B1F7DB19BD3140BB2D7EC7D5E3DDA246B660510F93290F5FBF491F4DFF6B
-F5428976D5A0D7013CAE6528B070667BF297C45716593781324820C6F8B4AA7D
-134BFD082129C91A8E10D8EE59B8C6B55956AF59172F07602EF541470894E46A
-A540FE3595DC7B250636D25A5BAFE9107ADBEEB453D4A09C62638674B8F841F0
-C3CB1E3656C7FE9518E318DD13C37B1E7BB57A10695F92C61800A82D9F365BCA
-4C0D1C810E3196CE403E16F71E310E3E658D7CC5FE8515322456B252C4C5E56D
-807A2E058291BA6EAAD224D49773528EF813556F539CCC84432CA61338C81E99
-88AA24401042751288CB72B695DB05D16AF6FB10924E2D5D9E4397A7107F5EB7
-DBE7DA4EB66C2A9C67A021E6CB0DC31C58A76BC8876379DEA4B6BFED86225990
-99101A9F14EF5B0EF55BD4A54B570D5037C627BE1EB66B20B7FDB7D38A3BCD90
-FB5803DE8B3CB8ACD1D004D26D277469A1359C9B7ECCAF475348DF4B5094F8B7
-9C0B573D161B0C4439694FC196C475B40B051F1E8A64DAC8E7A2C18411E6D7C9
-7E950F1EA4AF91CAFC554A22A840C1873E68DEAB9120D7D9BA8F702F174CBFC9
-04DD6A0567753E97CE5E7795960B4EAFAF76037E54ACC8B9D91A06020E0C0AAD
-DE9D2B3408948697A3D7C8F05D27072F470EDCFEDCC1DC099910622E84C0462B
-31392B98F29CF0FB1923D480A5AF8616EAB11DE1B2497F7BF6AB449AFF5C6BE6
-AD22AD624BF84A8D59187D26F7CEC076451AD78DF28AEEDF41DEBCD54AB2E747
-3303A61D1A86CA6DE7CC12F2C8B97F77FEAB8D275060A746726F20E9E5068FFC
-34CAF97F3F4C41FCCD5F71D333C4EE913986E4157E37A4CCF8B1953E1CB23C52
-36A9BE44AE0349BBA1114920DDA315BD99455E3FF4399A645A7ADB43184BB615
-3A24D5138C09632124085CEB005DE1E00CBFC15C5A041ACBF1B7FEA933E687E6
-77FA85BB40D82E80C96186C9CF295674025F58FA1E43BBADDCE1C60AC4F0E017
-611762CD7CBDAF43659078BF62DDD7D249BC9C5FCDEB06D708AE56DE87490681
-E5191DB36D26A1237A2A150DB03ABCFB0EE1A887ABB92B42FDF25D02A0CD2371
-0A2B5844810A74AEB45836EC19EDD6090B5BC95C258FFDE3E6FD616B942C65F6
-3C35D8123E06D064F4E3CB3B98E38B882836DDBF3752AB1EEF2B731508791E22
-0A67A82EB13058865C6842F61EB43FCB26F0D4AB2B8FC8753B1C6CBD134D8C3B
-030386CF236891C74F756F357BDEC0DE483026CA64FFF573C1AA438FC35C43AC
-C7501D0E052B43545B562D80192C53F8C5261954BF4429C353AF469B67B6BFAD
-37E10BD6430500C6BF756AE206600555417853DD51CEFBEFD0D30A6DB02A008C
-1605208250E41485EE0CDE7F0D710D4B846FFC34D31469FB141A04BE8CE53C27
-0DA139C0418F6A331CE817609E80742AC8BF3A20FF11B514B3237E43F1764987
-E6B4C0C7BAF99915F62DAE4C22F59D3CA0CDC6E754D33DFAF9D34028BC2B0EB9
-8CB5556000D1CE986F60C84D0B6E3F4F55ADF2E417358F1B14B542D8A96EFC53
-C3F3F91DAE932AD3DA9C849BA0791C01EEEA3B967A78329083338D1A0B278D8C
-CEAD5B6F8017451F34CB458091405E1415E9621A577D6F61A76E1FC781385CCC
-0A317E9E794CD972272E988DCF793570C9D4076DAE9BE50EF63A11B7EFD03E3F
-96FEA00E65F069CDD157728A1C98AC0A9377197D4BCC157308D09F149AB70838
-C66313272D00504E80FD0839B3A3F126CFAC3B820991F94C497B27B38D058B4A
-116E628F7B978C1F253872706B40A7E475F3078992B01336DCB013ACE31F5D1F
-2029B4F8A2321A9DEDDD10F2E14A38818637E8C559580529B999E84E07CD0666
-3323D757D75C9DF6A125E3F631D9F6AF5D0C0D2B7C454840282D19BA23764BCF
-5842369A69D847DF013B765C2893F80E68A9D9D59A634CFD9E85B90B6F7F09A7
-5D609AC8C9E8820F2F84B72122B081825C116CFDFC3E5D6078A715F35E06811A
-4BA7E74DA0B2A24CFC50D6DE7FD0DE5764B53B7A7B33368283615F118E709D65
-EDDCFD8816372B5148590E0AC8C17FEA93205F4AEC06DAD89BBCC28B48F6C702
-119BD3C79D038C3F2B80D60DC61E0C60D872614813DD54B63E8B08623507E92F
-962E535C61A2EA234A63C607FABAC496CF03CF226C6C8052753030A0EF740E7F
-466BA4A34B072D58F3E560AFB843C5232997976F3C3D4ABCDCA237E43B05AB73
-5BD65C6559DAC970E7F34D4C170F7E34BEB204CD651370588CE4F2F17A0E7131
-6364A265194B7C313257DD83467B21D84E9EDEF5CEBD45EBFFBD912EFD373FB1
-5409ABB0D4B06FBE08577459A14636A374943DC6D4CEA0AB33DD1154FE79BABE
-7F5D1D92EA7ED7E6D261C3B2569E83B5E9CCB1717B79959876F16FB720ADCA50
-05A33A47F1668E05A7ADF6E52B38D9D5016923EB55ECDAA72A7D9504635C0352
-76F899CB8DFB42BB5DF808A6499E52C230D5FB8E9E3924C2474D417826D282F4
-8B61112FC39B574AF8DCAF572E89720F539528E20DABDD87EE0ADF78664E94AD
-00B3867BEED6C9488036959AAD14CB301B29F19165776DF911A01A6A53414751
-68E4E401C9B3C2B04C9A3066EA0C3553E8F4BFC3F05C73FDF55EAC3213E82E00
-C50DDF2165E51677CD949D27B09DBB30376FA05D2FF3856253F2BAA7907F2EA8
-95FA61D8A042C8179BF834DDE7F67CF386A0D79FBAE5E859887942C6C482785C
-E1FBF3F97C666D82FE260D6A8FBD72CA43D731BD4B4301C48249B1E7C31C1765
-D6F7F9C8B59E47D72D7DDED87351E0F007938BFD73C2324BE5BFBC746AF529EF
-3259DBC9D83B5025185FD75E0D040203398D1739115F6096AB8DC8A0AB539C17
-755D5927081BAD8FAA7AC021FD028A5C823E373795C2A892DC5750C575D60792
-5BAFC4DD83596D8A182293D630985459BAB559314F27EFDB7E186DBE0E7081EC
-A8BBF0F30EE9A8B53DE47C9F2057139937D8B7787BB3107C40002264E6E3C0C3
-E77CF0B68F27E7A0A5CD8AE9A2CBDF98ED4A12E9D1C0DDA8287738A12A607F88
-15B1A64BCFA685C23075619E196EAA4B38517BE37CBC6464369245FAF3D32F90
-A6F8A450B66FA94FC6639D580A1AE8582EB307ABE2396C1093EDBC229BFDD87F
-9C5F49F51DB41D671BF836DB70047938A36CF124A5869255D06F3AC0E3435DFA
-FB5DADA29C76216637F0E5EF0696BE5833CE0AAD72FE1F8BA860277E70278C6B
-32386C1BA505A7BB808BEFE2D75E6D159D58B85F093BDECE344765F388DB0F08
-6D072C265A32944C0A965C10E7BA869881D547A636AF586E1B69F05E9610C411
-EA313749E4584A9C386E789D0BF4EEBEACB2A01CD195A5C6876758C8B2C21E4A
-6C68DF63313CE32C033CEE9327B9FCEBA1CB91D302D1E5068DD6189EA38B2C62
-1CBAFAB46F8BF3034A0255FBB0904B4B1B4FB0CC2DF2D412B28E8BDE816F1329
-55635B7E6F7123DAE06E6608CE8EBD46345279E47EF1853B027CE583D1194EF6
-19599F6ECADE298B64CB9FD733CA7DA837DEABC198E750603A02F61874204942
-4D0991E030498B4083C8F81B8B9BD549F6FD0E4C378880FD9968590C13748553
-7E0A624AD408E0D2DBBF2B0566B337CB51BC414598BDCB19F9D84416DEC43110
-A8A899E01D48648D26D92C2F8B784A23BA3436F6403AE29EBCCB05F8F3172FB4
-0408E457400C113233CF054A2EAB612B7F6BD7A92486E69BD12280C5A7251E20
-E103668F48886BF4761830DB9BBA52325F8C3100B923EDEAD4B3CE7494912E58
-4720BFD6B649D64E3015A42FA5A6284A5A4DC3838B58337C8B35CE7D47C39913
-EA706C468E46DDAAF4A5A749FCB5889FD59F90FFDCDB44E5839EA3E49575799B
-75A13CB1A17923751326D75A2ED1D2CDAC394084314FF697D408A86D08EB8494
-B526EFAB125865D892431DE80C0EF53E6FFBDDE9F130575976037A35C7853DD6
-5126F779A344E96E6381813950594C1233337459217666A989B5F1718A6BE0AC
-19A3B476950B5C9360073C3F2D3D0EEA52CE85743BC348C38AB89B51AA00B899
-217E5008EDE0576E826365DEDDAE40E4A4A69138029D0E59727CCCD3905056DA
-DC8FA349C60224B63516186143F07EFE361921C05D9492A6E24234C026A34BD3
-B64D03901979BADECD929276848B4479B51006B8D1171F7C5D0F8DA027043C86
-D44AF5AE35E350F4B11DCD92DDFFC8326E99E764978F965706AC58DC6C0D2F36
-994CCD448AC3CBCC42268B94E16FA9C1387FDC6F45CDE9F58FFA74F27A4A98FA
-EA3F2A17E1D2012AA78F906B88EE01694736BC4D184EEF4FB8140E5FAF64150D
-E50E8E06F7B9BE125A0FCF24648366CA7A7BBF0E11E6A2DB5825637368DAC5D2
-766A0E15B3BF3CA0838518512DD4697373BB8A95BBB46B39A4659B318EF66F23
-5D068815099898174E95229A7141FD1EAF4D765037BB86FE633EF02BC2A1405A
-A01AA2D5CD89628A1B0CD2C5AF088441E52BA7E1BC6A7F09E3A47F6F3B97AAA4
-A41D3EF15211B21CFFC872A40C1182A4CAD0FA5F08CED4BA7D87E5068535349B
-8056D253E7A3E5494F07DB46B403E02AC3A43BCD45634DBA2C47C14B1A2E4E0D
-22A0092E68F1E320BD63941F4BE8B912B62C2B8D681B29288330F4CAEA024FF4
-3A1809AAA6263656C45146D5A01E2E13A5AFFAF2607891988FB0170595E23A3F
-B9714047F54033BA60BE76EDCDBA5C595795440712E64F106452B470D5A9CFC8
-A2C604BB415890FF7AA3126C3CE1D30C3E58ECE4AA04307DAB193702DDAD0686
-788A8B9F8F6F0D2119DB3D4E339C052B314202834F478B8914FB9302037FD84B
-B25674DA46B5C9D2A4885BEA519831D2DC406C3C3753251F2BBAC75E1170750F
-C54426090DB373AD6EA90AD73C6E80CBBD01F0C56F98C09FF2A162930651AB45
-E8A4CBFC8B1BC29522AF269C5E182130F5DF6822270359151948EFB4C33A2687
-5954407A1EE96F245ADF9E93F972ABC5E1B1457A030F047CFCEC02A3D8228011
-ECC2CB0E0C7AE4B01AA342C6596BD0F85A45E7BE4455D41FC15539D07F710636
-537A8BE0EC50B6A1FDD90B599A08B7824FC65559E3B6FED676A41542BD58A09A
-42388D7661D3422CB86F13CF6239BB56EA0B1DAA5542ADD316EE76B01F98E0EF
-29A828461020DF0FF643E546EE04CB0032C06AAE533C20720F888295ACFD52D0
-5AD152CD7D0922F911F613354344622BF800B0FA2AF3324E898B39F953818950
-B7587AFDF91F16EF57E46E46F07E14E89326737DFD1CDC0E11E9DB2FEBCD147B
-8257B4C2D23DF86AC129BA1655FE6AC212F2080BE6FBC1BFF9BEA8D8E121040E
-2AF9500B926072BA9BB474A8CB55E727A9FFFB2C835CB3E7981B904E9EFAF4DE
-9F8CA5D338E31FD2535E5CA9A59002123CF08C621D185C102077AB80AF6244E6
-49D22C2ADD353C3F906DE952CEE101A9D08F1D9853EF8EE282506A53FDE5F64F
-2FF433CA6E60819B7945A4DBF21534E35039853600CEF1A9FB53B99F074F909B
-5164499BB87652A71C6A55FABB3238C1C04AC3D27393D3214D84A6A37B714E7F
-B28256E05FEEA5F7E86CA04CE4BCC5479F40FD797CB5BB6C0C817808C0834EEC
-63F1D78F0FE712D1EC6F001B395D21656834D6220D77393DE89CDEDDABCF3D59
-7B1703B8884ED56CECE93AC713239D5D814093C2DF4025884D36535994CE1DEC
-CB64B51AF63B434F7A18A6FB644F49089EB3161B46F6EEC430B73DE10EAB0ED2
-70736D0B6F3DCA3B96EB036C21E0E9441CC7B4BAD4D1B3B34027D0475C482A4C
-6AD17670E16B1D87078AB94D2C04F99CBB4C88E5F29327884BD673BDD841E8EE
-B3A2E544B7882F589F9912D86828E0C39519932FDE205EDA6CC03904B253BC90
-2AD98C29F109D815BE900AB44C7BA1D6349313E03F9A9549FDB06A6C65DD2798
-EA07440AACD59AE91FBF7EF10E82EF3FB80E10CC515A992811CA5BCAE7A80EDE
-30BDE900F0F49D8F47911274AC3FD41A5D83092FCC98B057BEF66030F9BF5773
-664AA821536B3D033C144CA1DB7CD7EE37965958093253061277A197449A80E8
-AED1C47D8BB3BF0560E24432F6A9FFCA3C468AB309C54F920C30FECF049BC75C
-EA7415390EC30468A96C615F7529B5E2D96BA2313D48033C73162275AE4F3831
-8EB29A2FF205037EA4B6DDD1AE017ABF2DA3E4C6B8215FA1052120D7F2DA8BBF
-81928CD22F10AC0B1DE254CF5443DE81F68EE6C19995ABB4F8716998C9AF78EF
-DC1BE13139C6C9C595CC526974B1E0E4F6B4D552C6FB637D91D850E104939287
-888ADD077B7C05818AF7C70015292F2E968D4214BC5DD87767EDA36249E8C4CF
-145E0C8CA3DAE43DB6EDA10ACCDE03608EBB63C2B39D6DC07DE2E5879A052DD7
-84E826A3E22E0B1155272196F4E7CC825259DF70FF0599D91599A8D61DCC4F02
-BA6A6BF9228EA07B8828CE3D5EE43340CA2497B058552A3ACCF499DFF3A8B9B9
-0448CBE07E0BB7389B3ABB578566E781A89AE8A2908823D2B5127EA0282E0E2B
-E9BFDFFC7D529613F3E0D063EFE3D71F71A099F2AAD50BF776A2F0E544E13B7D
-82E0BE0296556A3F76BA81751352E2D82DD0CCB4F577D7838E34B452B5C79B58
-A09592C169459BEBA283D98756960CE37A239769BCA22660A20418B1A298B0D8
-7755FE810321506D35FCE70E901966FE77816823E4D4B9C6503C90D6F31C6379
-2A4852AA61DC63F3593D66508A9EFB8F1432448F2FD45647271731E2886C4C74
-9EF477B9AE5363897243C931D34E3CE5BF7902F27B93FA5CCFF5D853A28A08BA
-B17E3DDAA648F373F4EDDAE1DF25C80BEA3989C2A8D71A4B4B4E8A3C55904E56
-83C98EBB5EC3015647E59A24457B390E3311AC62A67DEBD25C7809F8B11DDF44
-77C7AC9A7080A2F138B214FFDD090D187DB668ADCDA7C2A5ADE94A4692C596B0
-42F4E7A90567544BAF65B302BBFDB55B442B624CF128876330CC2FB394E51EFB
-8B0C596BDD60C03F16A6CDD89434110D7ED758F1519F1E8CF0989AB652939204
-17F40D3D7016399612610B56788C6D9257A54C9BF8C7943A6DB9B6990C0BF988
-FF38C97892288C509B71BB8DD20A69B8EB0BDBE05F8450F657B7D2173670E42C
-AD48F174E44AD17C66B96DFBB9871AFC5E
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-cleartomark
-%%EndFont 
-%%BeginFont: CMR10
-%!PS-AdobeFont-1.1: CMR10 1.00B
-%%CreationDate: 1992 Feb 19 19:54:52
-% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
-11 dict begin
-/FontInfo 7 dict dup begin
-/version (1.00B) readonly def
-/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def
-/FullName (CMR10) readonly def
-/FamilyName (Computer Modern) readonly def
-/Weight (Medium) readonly def
-/ItalicAngle 0 def
-/isFixedPitch false def
-end readonly def
-/FontName /CMR10 def
-/PaintType 0 def
-/FontType 1 def
-/FontMatrix [0.001 0 0 0.001 0 0] readonly def
-/Encoding 256 array
-0 1 255 {1 index exch /.notdef put} for
-dup 11 /ff put
-dup 12 /fi put
-dup 13 /fl put
-dup 14 /ffi put
-dup 34 /quotedblright put
-dup 36 /dollar put
-dup 39 /quoteright put
-dup 40 /parenleft put
-dup 41 /parenright put
-dup 44 /comma put
-dup 45 /hyphen put
-dup 46 /period put
-dup 47 /slash put
-dup 48 /zero put
-dup 49 /one put
-dup 50 /two put
-dup 51 /three put
-dup 52 /four put
-dup 53 /five put
-dup 54 /six put
-dup 55 /seven put
-dup 56 /eight put
-dup 57 /nine put
-dup 58 /colon put
-dup 59 /semicolon put
-dup 65 /A put
-dup 66 /B put
-dup 67 /C put
-dup 68 /D put
-dup 69 /E put
-dup 70 /F put
-dup 71 /G put
-dup 72 /H put
-dup 73 /I put
-dup 74 /J put
-dup 75 /K put
-dup 76 /L put
-dup 77 /M put
-dup 78 /N put
-dup 79 /O put
-dup 80 /P put
-dup 81 /Q put
-dup 82 /R put
-dup 83 /S put
-dup 84 /T put
-dup 85 /U put
-dup 86 /V put
-dup 87 /W put
-dup 88 /X put
-dup 89 /Y put
-dup 90 /Z put
-dup 91 /bracketleft put
-dup 92 /quotedblleft put
-dup 93 /bracketright put
-dup 96 /quoteleft put
-dup 97 /a put
-dup 98 /b put
-dup 99 /c put
-dup 100 /d put
-dup 101 /e put
-dup 102 /f put
-dup 103 /g put
-dup 104 /h put
-dup 105 /i put
-dup 106 /j put
-dup 107 /k put
-dup 108 /l put
-dup 109 /m put
-dup 110 /n put
-dup 111 /o put
-dup 112 /p put
-dup 113 /q put
-dup 114 /r put
-dup 115 /s put
-dup 116 /t put
-dup 117 /u put
-dup 118 /v put
-dup 119 /w put
-dup 120 /x put
-dup 121 /y put
-dup 122 /z put
-dup 123 /endash put
-dup 124 /emdash put
-readonly def
-/FontBBox{-251 -250 1009 969}readonly def
-currentdict end
-currentfile eexec
-D9D66F633B846A97B686A97E45A3D0AA052A014267B7904EB3C0D3BD0B83D891
-016CA6CA4B712ADEB258FAAB9A130EE605E61F77FC1B738ABC7C51CD46EF8171
-9098D5FEE67660E69A7AB91B58F29A4D79E57022F783EB0FBBB6D4F4EC35014F
-D2DECBA99459A4C59DF0C6EBA150284454E707DC2100C15B76B4C19B84363758
-469A6C558785B226332152109871A9883487DD7710949204DDCF837E6A8708B8
-2BDBF16FBC7512FAA308A093FE5CF7158F1163BC1F3352E22A1452E73FECA8A4
-87100FB1FFC4C8AF409B2067537220E605DA0852CA49839E1386AF9D7A1A455F
-D1F017CE45884D76EF2CB9BC5821FD25365DDEA6E45F332B5F68A44AD8A530F0
-92A36FAC8D27F9087AFEEA2096F839A2BC4B937F24E080EF7C0F9374A18D565C
-295A05210DB96A23175AC59A9BD0147A310EF49C551A417E0A22703F94FF7B75
-409A5D417DA6730A69E310FA6A4229FC7E4F620B0FC4C63C50E99E179EB51E4C
-4BC45217722F1E8E40F1E1428E792EAFE05C5A50D38C52114DFCD24D54027CBF
-2512DD116F0463DE4052A7AD53B641A27E81E481947884CE35661B49153FA19E
-0A2A860C7B61558671303DE6AE06A80E4E450E17067676E6BBB42A9A24ACBC3E
-B0CA7B7A3BFEA84FED39CCFB6D545BB2BCC49E5E16976407AB9D94556CD4F008
-24EF579B6800B6DC3AAF840B3FC6822872368E3B4274DD06CA36AF8F6346C11B
-43C772CC242F3B212C4BD7018D71A1A74C9A94ED0093A5FB6557F4E0751047AF
-D72098ECA301B8AE68110F983796E581F106144951DF5B750432A230FDA3B575
-5A38B5E7972AABC12306A01A99FCF8189D71B8DBF49550BAEA9CF1B97CBFC7CC
-96498ECC938B1A1710B670657DE923A659DB8757147B140A48067328E7E3F9C3
-7D1888B284904301450CE0BC15EEEA00E48CCD6388F3FC3BEFD8D9C400015B65
-0F2F536D035626B1FF0A69D732C7A1836D635C30C06BED4327737029E5BA5830
-B9E88A4024C3326AD2F34F47B54739B48825AD6699F7D117EA4C4AEC4440BF6D
-AA0099DEFD326235965C63647921828BF269ECC87A2B1C8CAD6C78B6E561B007
-97BE2BC7CA32B4534075F6491BE959D1F635463E71679E527F4F456F774B2AF8
-FEF3D8C63B2F8B99FE0F73BA44B3CF15A613471EA3C7A1CD783D3EB41F4ACEE5
-20759B6A4C4466E2D80EF7C7866BAD06E5DF0434D2C607FC82C9EBD4D8902EE4
-0A7617C3AEACCB7CCE00319D0677AA6DB7E0250B51908F966977BD8C8D07FDBD
-F4D058444E7D7D91788DEA997CBE0545902E67194B7BA3CD0BF454FCA60B9A20
-3E6BB526D2D5B5321EE18DD2A0B15E53BCB8E3E01067B30ED2DD2CB9B06D3122
-A737435305D42DE9C6B614926BFD44DF10D14402EBEDFF0B144B1C9BD22D7379
-5262FEEAFE31C8A721C2D46AA00C10681BA9970D09F1EA4FA77428025D4059BA
-2988AC2E3D7246BAAAFB89745F0E38580546045527C8779A254DB08DCC6FB9B9
-0E172209FBE3857AF495A7F2B34BC893D942C145C2204CFCD6A5C69FEFC25B60
-E412CB2BEAE7F7FAD03AF46344F6A7D483BBB1E896BF16B0F4C363799DF23CE2
-E8127996DE841B6F9D8A9E56BD799B6A938582988AF87151BB8D3AEA85C49857
-DD862B5E10D9F33D57795D656FB616BC9B8397B3612131A2B0F472656700958F
-739A548F7C3A348698AF9F6F9821D7A9FD4131781ACBF7EAB885A3AC254DBF94
-02FA697941A0F97F048861788BEACC20DE829764413CA58F9D045A6B38BCD6E6
-E4827247EDF1171F64E3B041A69B244308DC07F66643FCD7D5FD37F36EC4CB5F
-957D4ADAF91850A3B1A765E0E580EDC77556593D1B2E1C22685268469298688A
-45C474C9D0472D019CE1E83F25182D084AD85A49C502E8D679C227DA8E32045F
-8055D1622C478F8FDA342685F858DE3F53F1CEA0D70BF3FE09037D981E9E7FFB
-BC3F896535D0DCF53F4C85A1DA5D0B632484D1F25460E3EB38E251D2AA17817E
-F3B25A2A49C0AEDE0B89E277F52CBF744EF0243C409FD71FB0C574640CF11599
-117A4F42F27D8D282D34485AD116F7E753A8DEBFDF7C552A1179C02B7A37782B
-743D0DF85C15A333BE9EE82C13DBC9CB007DEB5900954AD9309902E08B3D5BB4
-E8414211B971CE8B9F05A61C15F400D9297745F606C6419E8A8A9ADCBDC39243
-617EFABFDCF9F836D14411BD72EE19D0BDE89234BF7D52E7A68ECC952FB74FE3
-33E1A87DA39AEEE9E90406E2B1CF3799C63E9BA858D54F38918B814C0DF0B696
-839C820C26FB473ACC5C08E2056457A74123A398806EECDB427BB183F5458105
-2B66D7E1FC3529025D3243A045625E9DD9417FA089B3C7C394D2B65C0367FF73
-79F17ADEC6B5D27A5D3D3E244A0839E38267ACF07B2D994C2B4E7F30A416EEE2
-D1688F167D1641A72A795B1F4DA3350F75AD6D546AA118B5F8A5085F5794E6E5
-28256CD31D250D8328C9620B8ACAB03E4A33DB4595E959F4D0FB1C8CE85A710E
-22F1940067C036A7DCED7EA48F1EB81AC4735FB26A249A32AC2E3E7636B32D31
-7D76FBEBA106D6C67C94A3BD4256B786B71C6EF8D191CA90CAD8D2EEAD42C6DD
-8BB4BEA7DAD4ECB6E002F3B71C2955A5A401E34D55F755BED68178C270109BAB
-FA0AD848347EB977325530B27180661A59447D7DB55A62D65309DE24B6638986
-1D3A539BD37E74C2C00DFED3336B5C6B28D915AB7188FFBCE3ADB3CB903944DF
-1BA5923A1C053D4682BB8616F44E81E18DB2B58298F4B1A6289CA993DF3E7C73
-B00DEA3A9B747FEEBC4A11E5B9B8B05CA2709B8AA935A42159D3DE399544F5AF
-AC1CC00F6CB94AB69856078C9A2EB2046BB9055CDD6A0622112F7D3710143F1C
-20CD8DAB4109CD47BC00EBCB88314081C1D6C43132412F261CE0262FA28DB7A3
-C7D8534BCBE1A60488EA230DC558B73C72AE87539A9D7E28C2BE05FC05F58DDD
-87117C0B5235B1486088B8368C80ECE70DC07A0493C32B571F6D6E5F3C7556B8
-79DD18A0C09C644C1B0A57E09CBF8247A97FBDA9442DF87C99CB00F959FE4925
-8FE8B3EA62A6C99396CEECAFDB091CBFAA0EA6F25BE1F34B1B8EF507D2347A7B
-866CE28452F7ADBB56F4696567032BD289B3439D6CB90A602223E00B43CD2585
-4D598BE43C0161BEAD813870FCA3E377A588C3D24667846301D1BEB056315636
-1304E2CB595B5297018C0ECD1BA4F8F1EA81B4FF88126295CD676D96756FB9FA
-C97CD2A8574EAEBB0A869C527E0828940C613B9D45894E4667172D841C94410B
-FCC5083CF850AEB2EF92BDBA8DBA361AE95B267FB5F90D5EF8B16B2A83568D5F
-50BD20AC88DE25DDFDAAB7B2F7662DB99E20989C7D12DE04057FCD2DEEC770D6
-535680D13ACB557EE7AF8DEBABC3088908943E6E3655C3C00ED022B276FFA5FA
-E6E4ABB96A214908EA899EC925E67E86413840A67B3FF86957586B5E06909036
-B9987C5BA21E46DE7919B382CFC4740ECC794A6577BE33CCB94E2E4BB3F28BBF
-AAC6E68DD9B01A59A7F3B964F53F41CB9BE94CD44027868F079324B44C595200
-0E375B069FC085DAD5B678ACBBFCCE8916C4266B572D89C0A7B6A26F1D329EA7
-63CDD44F37932CDC9C89C724AD52BF91CA68209471F26C10AA18CBCD1288460F
-9EA9BA85084A5F34451044B81559DBA03F03292638C28A704C553CB25312C568
-A06C9F5A764BA025FD48883244E88F1A31ACAE83432C2B837D034CC960EDE3C4
-2234FFFB8132473C8A750A41770EC46F9B2CA7FDD937A2C8CBF5DDD6162EEE0B
-36C53BDC0D2D7F6D38DC2F502755B0D25B0BD1858A9B16BA69549B5CA4673F0C
-32C5F1BA97E1C124374037E0B8EE94706B3B2AEB9CEBFF69E4F107BABED996B2
-EA92B4D94AA267E626953550633A74099022786C172A323DF9D903A0DF6CE486
-38AB2B0CA07D5EEF34BDE2DB5F539BEDB569F60005A3317EA6B1560C22606B8E
-AED6F84526090E626FBF48846E49714EA80C90FF66F82F36F3151B580DAFFFA2
-668B4952CAA66C6F10A341118E0D58B8CE34367BDAEA79645E27059FF2A43D2A
-435ED248345B6305316D1DAC5F75787D8E72D0D8C3145C0A1E45B201382EB716
-D06C5E8BA78B6F32B13F80E7EB6909D2B7ECD1420BA2B2A88C0C3154F3091065
-16A79C898C1682A98FC2A11A2B8D4536D74E6E228E5474090D42CBFE3BAA8029
-4564F468EE59B2E2BF8B2429634898F21C31812394AE3EC0CA8CFD5D5E818F4F
-344FF40488F06A48E9879E42F131DE378A8A733C6016BBDCA24B10B385BA73D3
-DF4770685FC7B9720D196A9FFF978C10977D37D98F11A3255486C8F8C3F67225
-4AA8884C88A3194EC1AFD2DA57258E30B057490A10AEA001017F06C83255C0AB
-13AE04B86FEEECC7F04A593282501423D319CC3FFAC3691DE723F71A6138EDBA
-F1373C651464A05906A2F370B0862F5E5CAA5C9570B7D5F9DB24FFE4A6C6B98C
-539FFD61F24487B2AF446467B1A3CA16E9BB2384972372C90DD930B8DAEC0FEA
-7C2692F029EA687E29EADEA6AE95F030A8DC599C8727F5CC41FFF86EC7E2D04E
-E1498E0AB0D2719E08956A68FE7E92EBC6945771DDC13689CB68D39EAF73CB2B
-DC8BAECFD1F721BC66D89342D650699C3364A2D0B35F58E4CDF2209512224472
-8920B0079AA5355990733CBCB8A372E1EA02B9DA4107F619968075F33BD123CB
-870D0DF6B22E6DB70F1328532A05BD7A624CB7488034E94F3622F97636CB1330
-FE3336665F27AF77FBCF01A786143F0AA892E1B2CDDAEF2E0F33E56F179CBC8A
-72973C643CF217828D892C818CECE72D0E89329C6A9159BF17D10BD3BB4A1154
-997ABD8127118AA79BD792292B6B9689D989258CA9F57A75C4C9CEADC338DF07
-13081B667C8D86DEEE5BDCC47FF96E2AA5B37C365585747EB3B664F08CC7ADAD
-B42D1B54096C60AD15596D7DC585316A36598A349E89242274B5171A1DE841CC
-30A5BE43B0ADB71C3DDA25650BFF704B452831FB06A7DB0D60D24436BFE23CC5
-AA68BFEE0897140B248E4A9BE7AAE37B98A54CC1D3F81164943B66250D55E554
-55A688BB9E3077FF8D11D1BE1C3FF99DA01EB206AC5AB1D394854DF5CD417084
-82BF6D1DAF88698A69DC196FA9A3285AAFFC3441CB4297A48DFC86B29490F2F4
-B514AE8F3D4C0EF920791371BBDD1B6369C38A90A2D2AC06B25781630847D6D0
-87B469CAC111778CEF26FA3233A85044965F3862C83F63CA2565B9644EC15B77
-BD2BA08CD8AC3DF1E5CC53CCE496172A18627384CD54595E3BE1E7D1B9751C86
-D6AD3EDCC725EA4B09BF3B92ED658356A3424F1B0D07B6E11B8E1D4823F5B0C8
-F3EA4BFA3DF77AED89D464D29BB2326ED2DEB73E327AC8B2C99B73DB70ACEB0B
-D0FD854CEFBC72FB9C906B4DB9EA35BA8018C623987C834B63E8C800A30BD551
-011F6E05EE76C26ED2F335E32BD4C866A57BA7AE89ACEB1066E795F122E1BBCD
-5768F2DEC922EFF8B1778F4FFB7BF1B6253F632F8D98648B81018D2FD4876974
-8C818E01ABFB557C8553B98A512241000B9DF64C1F5784343314B7B3CA04E506
-BBC612628AEE13DA23B3242AAC3B05244D3711121D5C9AFA8EBABD2074DD3658
-0F46D501A2CB11A370EA7E38E3682A31F5C47836E9CECAFB1BEC80DE889E99BD
-8F4DB78DBA5AC5D764EA99237738FEAAF199DDA7236D22B07D22A8F6ED023E44
-1828588397D723FB557CD35C7C5C87BB64E4A7F88B03FAF135ED0F185F7AFA4A
-F498B226D6D843EFECFD9029122B15065A4D04B509A8B633E46AD3D15D4F9EB1
-AA41E4694AC4DE0613B027E35C32935B5F0A9C21F5F60B9DFB5FAD619A35AF19
-20C0A1B2490E8E3BDACF27F37680BB32489D21F91603D4BC5FE69862A1A05F10
-4C11FE5744676C4794CC0B7F1AC1DC9861A247234FB986A0A4BC5F8F6A3183FE
-3A6FF5ED1D32A711906031CFF6802B5455CF208787AE3A35B1D437C64E5A3283
-A1B87F31D6B6AC634579FC3145035BC5F0B454CD9280BA3509B890D45AC7EC54
-F8FCDA7E5F8AB9F8201621417E17FFD8CB7BF55A6D9B21F95C403AC0112A94D4
-B7BAD823A1E9A5FEA956B08ABF303A917B69C8BAD87E685DEBA72E62AB132F46
-521CBA0C7A96A833AFDB396E0FEB85D3EC605A4EF6026C0A6CCADA56A26A8FDE
-18C61D26C93DC6E15F1B5E789567E833E79CB85580CB50A68AC93D9C2454861B
-487A833774E205A73A2932D0043759D5978921BB5B499BBEC5AC6F505EDE86C2
-8B8DAB630F36128B53BDA72CD82A3810E94C6947C9FB148574FD25E8629CBEF1
-2AAA7DD33D1A83C0235AF9F8FA00822AEF0A6E9DC7FA79B3872CAC39957D746E
-3F05C8EA69F0BBD0D96DA2ACA93E73FDECCA8B35D6CD52C464C1A51EDFAA83A0
-54C236F0064B7268C7DF4BC1F97606D48D6C8739AA2CE28CFF1B4986B4CE8A60
-D8DA6C67A6887CCC3A0A2790FF5FA00120D15C26E8D938D524F355FF8212A689
-D34269669DF03F1BACCFE834425972EEAB399EE578407F9550B93D65E63E3707
-CDA159B5AF4B68ED52D389CC6915CF7B0C737514EAB05C947AF32D67CC36D782
-C9F73B32CDF11D2CE33E8C3DAC12AD070D0CE9EB3C209D0830C0665DB9F61C35
-FF976057485A32A5A41E7205BCED4E2B9D2011AE3FA90ADFF6E3C58144293A55
-E25C6A98BA2113DAFB861F0C3544A15F5CC20496FBC58F1FA2088BC67334006E
-2AE3755CF0791FE82E8620A5BF3B487F37DBA3ABE1709DF21745CA7D7CDC0AF4
-F33FCF3672EF5ACB540CD7931FD18F815422B2A193C9AE34E626020F9AC0C36D
-4D5AC1137C75F10B42E2499DE914703C682806C9E1D158217C68329CE401234B
-462F92A35F20858F5FAFAE3062C57ECEB930B762880A982A8DCB7D010383A156
-547310C8BDEEDF6313650A2FD71856131E24F1299C8033CF49DA9BFD013F64D7
-2B571F6C2E0A84FE62F060298C654E068F0B8BA453D5F94BC89D3B5053721731
-AF5CCFED84B7F6CEC60FA31F84644CEFA02DC2323CADB246E64DE08D9BE4FAEA
-59D1652DFE1A09C41479C3CDB577942334F8C57545BD883E0AD172CEFE546C21
-5B9F63E32980B1E57B0EDD66674C9D919F6E323DA0A0CB8788F031BD533615B1
-D27320ABD6A1147E3200322DB2D8700B3F1F8B19E3C5B67842E84469D997B702
-0D8DE8894F5422DF2B9244C20186597587D3852F34ECB21E5244EA9C8596F0D8
-6E4D7353C7F6ABCAC499D7E34CA7E7789A54D712AE69DE15F767F045E637DDDB
-CAEFE413AF652D849D58D52DE084956D177AB7E3A9146B8A56BA23CB3F734298
-88C66B7C2B084EF219FA08BC87443FD9D86BBA351427631D368F514C7DAD7329
-DDCDCE8311971D746FE79322097E7F676740389F17B11587086942024918CCBE
-80A60A78D96F3CBB59CB81BF5D8028475316D96E12248867A3F23A859F8AB547
-B1F06C1ACFED4AB83378932A253B8FF8AD5F44BB4EC7A7F025BBAA179C81DBA2
-049053EDA32AC126C4F222B5FBB1119C7BE3F4BE0E9A3161CBC5F4842E6BD743
-11903130004FF705BDDC0EE6C1D97396904B295596A226FECFD665AE0A6F7EE3
-FD51F370008D1697035CCE907243038E0B0487A6DD63F1ECDABCE1A71193FFBC
-6DFBF1726156A4E9710C0D272A7A351F8FA0C2785BCFD0BDCF1B4250675B512F
-997677E512B29D85313FAB6F7FD26B402E1C4B2E270E264422D1375B93EA138C
-171557C70A07C8B330E0C0602949C60B9D921B33E906ED3858966A640367C505
-2E3D254C1C0C63B3F831C9D2AF2B2FA6FE8B663F94B72A7FFD63712A2C4422B6
-6E3524B5AA8D2EB9C7733BBF2662B64B3428EBFE956CBD500DC71A4F4CDE8896
-2EAA65771273D823E8687E2FED6A26D7DB98DDBFB57670278897D2AD553D6AAF
-6F1117C4F894AAD44F53348A763289BFEB2E9DF66DB921E402279FE17634E0DA
-576F0323E1F849DBB1E7E56D0303DD2C81EBBC192B5F8C13A5F5028D64DF153D
-C7E4C2A59A3E369D44F346BBD79A4AE4930E3249C1FD5CC8B4FC6C753ECA9326
-797F25BEE6BC66E125AFD247A2CC2F61A47F03DB682F67382B2E83312D1D239F
-39D8BD6C3256FDD8D424046A289D17984ADAE316FA39B743B12419DCC3C8582C
-EF6BE8C6E7A091F1EF76C6090C15A7742C5F66F66A69DE863256574491B422DA
-93F4B0B13E69B03D1A92840D80B39C96A535C2AEAFB579B9051CCC67E32103F6
-21EADDFEF9CEE1980D3F86DB452B61200C9805EDBD219E812F22AD612B436E28
-D86956797AE0FBBE0A0DEDE4340B51D2CEB5127FF7C14C85AC55C55A1A9412B0
-1471CDF9FE7D52A5A069669A9C500FABD920863628E541893B2692B9D40CF391
-69C797742BEB239A6FF37CBEECF5ACC960011BE1CD35241BF35431F902EE41FB
-5E89FD3C7FD3E7CE970CEF9A3BA9DB4F10945568813D4566F5939A7CF94CF2B0
-97E9D335CAAB09BBDED1D462EA787E5FD11A63B17D75882E379B490C5B2B4440
-FCCE6CD6EC2F4C21D5443E6269734EAF0A61520285791FAB0B421D5CEB2CB165
-286278D3F21045ABFCA81CD9E50A733CE516E1F4C494FF072C50FFCE2D746CD0
-0D28F9EB6CB77425D0F4188760F61C46101F21215BB89FE5FB9684F2E9BADF1D
-8078D29B3160EF63A74A19E17202270928654B95413DA00FF89548F30C8A2146
-8082CFAF97B44733C420572188F01731535A0F5609CE44AB565563B15212E835
-10E5EBA20E3B1635B8E08D85E8D282D51AF0C5D8B4526EB0D43325370644445E
-087E067A1EBE6E9C5A69D8F2D32E2960FA2B26B582A4D2D9AA1CC49408E88CCC
-19C63FEC3256F43F55CE38B3F2D7902A4978918AA2D9D23EE839BF2A901F0649
-856041B1F62612DD6FBBFBD1D3645ECEBCA6587080C6DE11DA4CC9F8E08758B4
-37D559BA464A49A3AEA6373DAD44C615496C71C41080F4357FF2ED23608BB448
-FF983C196501096A58EC0C0FFC9BFE36C735118DFA981C69365EC6E543BABAEF
-0515AAA6E8E34711747D586A6CAAE1D3D0F2EE85DAE124D93A6EDB408D9FC825
-7943607554B3CBF71A9843A76A69D7533865BE78F7BA15316360CEC333F0326E
-EDF8B884A60A0E02401A2A1E3C18C89580C030AAB8B94438214A96EFBA9554F8
-2AAAA5C653E94FE70BC18F998BCD6713AE8A087E37097C36E06C1E929278F668
-4E6B169E30196E373D89CDB6BDA65989AC54ABA2678ECC7EDE24AD6263BB0301
-012E31B2361D62F8E08528558CBE40A37939F09069F82095379C56C31EF2984E
-78BBA233E706B9575A245E527CCD6EC11075A3FD2623B49E2A68EEB68030AE43
-1D7AE54192A39C52BBA92FAEC3899FF0ED859B0051537F998743B6C5F2DC99AD
-FDBC65E51D3E82B70CEC3EF1C3645ADF893C3C5F3D25D51CE54CEAA463F8BF8D
-EDC3CDD0422C12FB34C87305CD11F0005B4AEA3E9AAA000546E4383C7B8629A2
-3372E0E857C5A9F564E6FBCE49407740873A109A2B8FC581171B6965DD349786
-E547781395D8F3E42E99BC556A41773DB2BA8AA0918081E4983B9F8B43A15544
-8D15BCF336E93F8CFCE6E79940A52F9B7067C2C8688F20F842B2D0BC02DB70A5
-3074D0CA85BBD01D6D91B2722CC15C866448C91ADAF9EB2D2A52F08B39808E43
-2A492AEFD45480EBB07C4182CD6DAA9C26A561B83E381594A1AA0364C4464AA6
-20621994D2B64D09B7F460C2D6A7C264D89E4415A9E54A53CC8331A3D358BD14
-4894EBA4DD7AE1B836E2C9246DBB0800805683A11DBE420BA989837D86A1A600
-8B669C7A7283BB9313F045A08602B7F98F78A059CB086B5991F761CADE8AEB86
-5039C35C2FD564C0D8CF404A5F32D7C532716169EEB6D08C8CE5BB357E4CDCB1
-5FCEC35440433719FC19DEA55B1662309EC85EB47B323CE2EBA56D17E0A88175
-B2FD7B59B37F7D48FACD52A7DA80BC296E62D60D6C5F251554138DDC4975E308
-2F9673033F0A255FE037F16CE58A3EF652D3DDE2AE7FD39AA20E88FB0A7B4598
-02E993D6550EE854A5D9ABB3B15BE396E3FC2DEE919D354166BC1A2519E0F2C0
-228998A7243FFDAE507841771E4A88B610F1D390F7898CCAE418C8CC15A4B3A0
-9B74E01AC32BCBAA020C99B6856952158F866E0AC66F171C3A3265E713094F71
-BED491A2ABFA737A0EC17DB262A73EBAB9F8F9E96DC7C5764B92D15F5C967CB3
-C846C147DF1568A68BE099D8E38B5A9FEDFC66CE2AD3BBAAFD72AA51D6C08A32
-AD54AE75530267728A9EA3244E8C8CF67C5A28F67068CB4CF90FB76F280930F1
-893C952DC2A7ADE38C692BD19FFF63383308FC2873CF241C1C3D1ECEF6B98CC7
-287D9F5F0C61033CAFA9739D9941AC833A194E67CD1B9CA1FB4A02F0A53A814B
-565CFDD9CDA06303ADB599D6CE17A7F6A81C13040FB7D6E98AEC4BE9F88F3B29
-FFA880E8CF8CB6F4FA009C4354337A43DD077D40C993A9AF66D2B524CEE5FC0A
-BDF03740A45C0CAD814E869D435C61A964D0644E93C6F228B205ECDE4EE59D67
-C35647FAE9617877DB23272A9D777262A1DDCBB7CDCFD2D6136FF69C000F9B29
-DA30B2A654C27C564F113FFB52CE2F6618EA1C8102FF9D93B0AA2C936CAED8CB
-1A9F2FA71930351D74240F88DE47423EAD67D66C20C8DE2ED00C94642C25630D
-4A60B8DA5362D00F3399C6796EE25BB88325E11045FB6E00B72706257BDDA2E2
-76C77F6E0030906D646D759447343EE6CDCF9A61CF30C1392BE54A0F5951AA69
-461E856C4A2921C859E03E13AAA1D6F563D5F62A66065F36ADA9A08A697F53E0
-249DB7965E9312F46A18F6016684708F397989B1C291F63C491B48A8B1A51E8A
-2C1DB13DB081B75784ECFFA1735A0DA6D443D7BBBF38B16874B57891E3C28A04
-C21978532D806CAD99C9CB00777FC2B9582CA68D285D0488B5724B9EF603D4A5
-4DC01291C0AAE941219EB99398C6051357DF7138324625A4C244A3B127BA85E3
-08C8272EC75E848D984E38F151E9C0D46D1BAE4648F7391B59BA76038391F306
-3E8E72B0B557913A38CD6042D2ECFA192A5124B9F58C887726C72C5518D3CD90
-B24196C04E0D05A6B590E067B17103BB36AC830CA181BAA072B137A344B7570C
-7EAA3272A774A58E049F71DC9DF45CD22B1452A26BE34A5179221A01FC5536DF
-BBB94E93BA9EC169BE596336768AA8C9A72C258B8A8CE7C511DD923193D886E7
-F6C33E5FD68032A5A4459955FFE76A8D5726AFDECF42818BE43F03D2B4B8958A
-38D94568751E5468A1322EBF924C7B587D732486DF8E309CB7FE20F64C6A371D
-D62BF5A33B49DD267AE4C3F638A76BE6DF49B693D40D8AE1E9F0C0B0606C84E2
-A6868B4F700A6DA1ECD097C96704B17DB76621FF4876149E6B2FFA89D38D8F3C
-1026401F2CB949DE9313115E6626B26082B1AD94D0C1F8E7B907B3676FFEC9E2
-E31FAC5504207CA741486734336521C2F9BC91AF257472E4762966AC19A6E89A
-87644A22CBC9FECECD919E513209FF439E2E7F24AA80B4D3C940021C23D7A921
-1B6E544E43FA00C4540C73EB0F3B8F352BAAE6CAA924C1F09C6EF7DCBF4BB88D
-0BFEC67C79B6334A4A0E6099A460B57FBB845831ABD0E83BF0F92491ADDE5526
-E036C58BDF78FE25C55B9580F6D02F2C2F7D77399DB7CB4B8B8E037538D2BA64
-BE2BE4697B87366CFAB5A92932465689775FBD9F87AED9B53303DBC13C0C13CD
-B549FF2D8C8C6C9082CCBB9B6DABFEBE53A85297555389E5A08E47F27F62EA1F
-11915A06C9A1E82C37E4AC72B009B0CBEF25FE046FF9FF20D50DFFA97AD9856B
-B51EEFB3DE0472EAB91CB0B51ECF29EA2025422B31C811C3E449416B8916C2B8
-63E9E4A80F9EC738B81A2A32BF196875BF8F52010B1DEEA25BC2719EFFEEA0D3
-A3AB794058EE49333468A3CF5D13336431ED14CEFB1A2D067AB3D2DE942D9DC9
-C0B5CFCBE9D9A4B53D9B2B19E28F5416F5DE29E73156516683F169BEC75C5344
-D953C9640552267E6CE554C418773F06BC8CD88084C60F8D7F37523922B4D49B
-ADCC93A64D0C92973527A810F6B0239E5525A6BC6AEFABBC8FDF0B7E1B368A52
-3620DEEC31E00D6CD5F02E1625A571A6129DC18333B395D4680CF6F69CC6D359
-4C444307FB45B09509E36E0905C7B2CED23D9B48FF65F31EDFBD2073F718FC34
-99FB4A68B4225D12A42FBB14D7A3FE9D2CE7DC8925E6BBCC4EB53632EA3432D7
-BBB17498259DC19AF7E6CA3F124A7B39BE4C9768FB49748F5CCAA3D1940E0A49
-136B3F49025B2C3D09AC6598844D9D113297A68027AFBB1D8341FEC07FF6CE10
-28358FDBA753264E7865B5B311532DC8D16E6E1747E53D96E996B9F27D9CFE93
-460158DDB6708485029D6F31729805DA1F445C629D5A7048F06D8BBBC6BB69D6
-FB7BE6BF7FC02EC0B33462CF5C756F35AA56886688B05F6A417B8BCA35886256
-8EE314686DB5BD49E631AC220C299A8C5D6ABB974C45643CBC589EB2D0DF48D7
-F59EEF1FEC4CCBEBA797DF168D1D08EC7467E7C35F421BB6BEA0E9C4846A84C1
-70FEBABA787CC46391393A0B99EF0CFC33730140696B0DE9C57E90231310FAD9
-D67462F55A56D9666EC08AC424E940CAEAD58503911C4D80FD59CDD5182ED504
-656628B1851818197DEACC842E943D5A2B75B5934E8AED3E67529FB51E625A14
-4D91B077A53FD8C69C930C677497A36A6A578A639EFBDE481EBCB80536C9CB96
-0A2E54A15F6940F4FECC203A440AB47439C9FDA12A9D78B74325ADF44010BF40
-6A5FB9C012E07A557A60326983A0802424CEA244DDBF66CDDF918B30618F348A
-8C5086F7A7BB1A86C7B4826323802701A584D17C6E19AB720CD13D02E8EBCE16
-4A87BEA7C6B76D05D49CDBE8549640FFE6124D2852A00A46768FEFDD2DD5B60C
-3AA80C3839A86B4EFB035B65E1236F6DA58BBE2A9445311E8714C82310E6A0D2
-E926A3D18AC3E7A8F8A61AAE5ADE10E43116C105653E3A03E895BB2F7477A0AA
-F1E481B4F1B3BC9DB099E60681EF3B0476D6E84DF5ADDA588E8320B4899D2D40
-F8CEA36C2039AE832C87644E2A3EC19AC8FECDD575364238524BF5F76ACB02EF
-094278DAC561F700ACE728478FBB8E0C192795AF982216E2A4A3488D6A4BF06B
-AFB8F4EE78DA4FD96437A45C1E1F49E83D6E85390F8FF9B8E487AFA6184FA430
-2A3E13C59C88E3FC8ED9102D485FCCA463197A32821988D1C0A7A86620655DC3
-DFEEDD33B3A1F55CD5599A58D0F4A390B69137D947897DC448A8255A2521EFCE
-2CA896955E05BEA3480166F9FF82F1B145DCB56B6872449335275533C38336F5
-4C49F40D0FB04222D14E0AC8057580118B1EB1DD43A8BF334763BBA198D851AD
-47F4499A2922816D2F0AC1956B4410E617201C82FDD7761C1A0C8AD025FCB1DA
-9A0722266E22C438C10275CC2BFFDBE726084F9CBAD1CA9ECFA072EB5A317EA5
-2A8E39F8794209B978DDF404FAFD22831F3F53356401FFB85334D339426CCFFE
-0F869606955F20FA055EE560B4744730EEA18CBBDC134644F124B714FD43653B
-C0879B820871B8809020301A71D37A44252491555D9B6278A9070C088C0A80D2
-BC753160E83AF282F3DC077CDF610A18A1A83D4920EB6E2A2B73E40BA112F78C
-A18A26ACD11A5D4E12C67A631D4928EFB809640F64571E5605AD4BFD3D00FFCF
-FFE4FF9FFF1A63002175D401D4BBD218F40B4C56766A4FBB93741F9D2B746F78
-B062CF36E60973FD3D52810750C06C73CC376F5291442A4EEF4B2842B6317CB7
-E1AE735793AA5CD2F927E4DAD0470D0A6612E8C0557245213B0DC87DF4B9CD12
-60A6FB3955E007041838B667417524FED98D5EE035C212C8377A6E2393D86DCA
-BD5092520A83CBFB978D2EEC4847BE9D4365714A5F36B343F87F1DBB1E2759ED
-78EAA5491A4EEFB8FE1FBD10112294959C42FA664442335E521CA7D7E7BDA468
-AE36FFEDA896738CDB3054025485FA28A071C96A003DF5A940261ECCE471616C
-A5B0223E7F435A096B90FF8ED7D88FADF050BC4C4C1FA51D4D389BC36E9D5D70
-9C38800E0CA38D1A045586E46563D855E4E6A8482BDEC35617411F8E046FB838
-1F745325CEF7AF2EF0D7F912A34BA6CE8676944A3B12212CE7AD55539FD9179C
-D8BE8CA39C9EEC948BCCCF2ECCC8F10DD4C8E99A5922BD9A56191C4900063DCC
-C3BED41EF16BD2BC1891D87E5DD05AF7C25D7E92B1BB87D53817643B621BB21B
-EA839B295433042A7E0CE294C031A4C460F05D16B46430445717EAC72766909F
-9008EF1F3F8404DD56B1B1F90A06D99859A1C45F7510B9E7C6929BF9E54053BF
-95B4911454183A5F2734C2CC7622ECFD0664B77640C416A1DA10F13BA0238C25
-DF6752C9B793F8FFA012C6E8E2AC81DDD9E402F42DC4CD6F290BFF4B9C633E1E
-52397F385B895FA3DC7471F3EB97244EFEAFB11BA92C994CFB511D7532304836
-151A4087F1CEE38AB690E1DE2354FA2A7059F42982D0CFD01BE3A320FB078F2D
-7947E9A5C973DFE340D0A742170386831314BDE9D67134451FDE80E093C53F37
-F0FD8CEF42FA08555757888839D9DAF23A735243EBB372A5C3230B1CC2F3B5C1
-C8C19CB3C3E9B1A42D0B314E778F7B3F24C8D61375FA725B40F561C6619D025E
-899BAFD602833506BBC5B6EC86A932F46338E7E26EDA743CC51D8E4B3944D186
-7EFEF666F9AE87E395FB9DDE9A936AB87B90771BE94B784B7584D71827874DEE
-03B55096CDD953D93FC0FCD7E878A11EB46A10CCCE040A90B375995C5FCBBB27
-5D0745BF763C61DCBF193651A3E36A4112F823B5607F418AC8C41B51221F9E6F
-0E9DC72ABCAC248BD8D83949A24D33DFEAA363508C263FF9B222347DA08B99F0
-2173065BB9240A61135E38D461736B04BE918BA150DC90043306056B657D6CA7
-FC27151322B0F132D91C0BD0B9483A6A26D84882095E20127541BC1D93B72AE0
-8A68A5DEFB35E50B37ACB926DD8DB96B910BB6F315FDBAE48531574B9ACBB438
-D1ADA41812A752E9876AB76B31CDE8EFDDB0DE7AF97238A9DA0846EAD39DB2AB
-30EB7D7F61DB0876FD294E5E09916F0C79417108B30597932BF1C81DCF5CE0BD
-2D65C84441D6354A9C8647D740C1B450E5DD3237EF9BBC793F1148155C0F950A
-405BFE9BE30D9EF9F8812279F71B30949F8640E9D0E5B6CD133153B2866E7F35
-78795EDF42FAC47913A9083E7069C4D4E6B0642F55FB481E7004DEA3C3C86177
-A103AFC8FF966BB958BC5EAE139870EC202D1BAC713AF4E3F2FB9594D60E83F0
-8638980BDB2FD061C867E748420E45AFE685D27A2767D31E272B43EC2DDA5424
-AC17EB9D1C7CE94DA05F741F0F635361325F227EC2DEEB5A3EF3AF4FF03F5FFF
-349A9571CA07A944C3974706C1E1A2A433F76149A1E33322E05335787A99C9A3
-98EBC8894218611339E7F065F13C02CF110ECED530FF12350140A7BC7BC810C8
-F17E870225D6DA162362C5587A4A13F52E9F92E31D0DC959DA76A3095661D000
-25A9EB458084039E445529C5A08E3C66FE115D2FE1CAD9CF27315D440FD45C76
-464970D0438E3C1E5F9CE9A9ADA95C5584532C7998063FC7E4E4DD3248148EAC
-10DD976E786084D5CD51D263AA0B7B5F0C31C1A127E03CA8AAA424C6D31106D9
-5788B85D5B2D4557615AF4B1CE34CB66F61AB005C5968756539C44690C3B93E9
-0629165F9377A1B449E2D07356E10DA88338F5B16EC8DAEA544ADED4B3EDD716
-550D9103F3F97E86181B8379D37E53FDA0557BA5EA231B90655957080E0E6DC6
-114D07BA1C9D1BACD0EF6F7997BF73482B194824A1EE1A39A6050213FDB4C820
-FE4BDE84724041C6F51287B7AF2E7A19558AB32EE2DABA726577787D5A136434
-427EF025B3D99F7B916F17AC1382994BD9DF6FD023D2AA72437FD509F55D5EA9
-189108B7934E0B0CEA9E956A000C5E23732E45BD1762961EFF36F7389BA1BF85
-312959449D0751E198C9C34E1081CD049759573217FB73F6A7B0348533F2D942
-9CF18688587980A65F512906C42593767D8A08F81C62E42CF85B92366E0DDE12
-0B04CD253800423151CCF040354A70EBF850C23013A48ACAFC816C4C002D0BAA
-0BCD2869368C497129DFA21813D2689F3EDBDA0956F822751B125CA6ACED9525
-51F85272D896B6A12EB9FB8579DF5FCE686804E3D4BCE113B5FD83478861553D
-75E11E30471EC3A76C5DA24F5BDA4C5A8B72E93DFA470B7E49CE1F960FD3F10F
-3E0E32BEBBB09244F091ACFD721B806D00593A925F97DAFC22C86BB5B0D4648B
-1BD0C32F5EEB7A3CD106C00015CC89B0D2677C7B4F2D3D818B40336B24D3B7B6
-77D03EAE4775C93326F7EE747CBD71FB65A2A2EAC5F1D03A5999C5689B099127
-61A2F058BD984FA3D2785622909A03EDE1A209ED6BB56237887479A782C75A54
-BC20ED5EB4E2BEAD28641E95237D2FE51C70AC77BE31246C92D4A3175EE3FE6C
-02612C7134DA79EAC6522DC1B52AD97132FF53EAE224C2DE9BB37E79464F08E1
-7340C8A79B87B439A484AAC56037E30DD391961E99B1BD4034BF50D00C1657E9
-8FCF4C2DD03612021175360A582CEFC4A7D12642EB33567A389EFBE03712DEF1
-00E971320F62E803F0775767620F37B34692C313FB9C0958E00597E1953F79F0
-F32186D202AF03829D2062335B64DE098D4ECBDED19516A3F4DC88D1799D0FFD
-F24B2C0E899D45756733EE27A1FCC99BEF10C462E9F9B062E9BFC16E75459B76
-06D84FE9C552AF42B0B3EC237785B3CB5075ECB9DE28817B55C85AAEC0C94C4B
-DA282188747A4CF8D63A50B9923CD27DB14D3BC523F41728A2D90ACF46355944
-991DACE13425D8DC18BA74B9F61923E45C978DC8B2D50939947CB4B33596D6D8
-5AB3DD0BD8E4CC3CB8D14590F900354CC46858D09C4BFA8142CDE33F8B75F349
-F535CF80B6DB8E64E6DADDF520D9E29D957BF1E298027BD5D0C4171DB575EA96
-1AECF1C3DEA0950BE26E739FBFB2BE59B86E188816CD44B7ECA980C1E44AA079
-AC2E7BD3C6FF65D9779B60ED34BCB38CCF793BFCF59B84A89A8C719C40EB0A23
-A91CCF0C21CE3DF3985E13C2EB9F89D6B7CE6923077D5E27260B55BC9FAE73B7
-C7EDE7676F922A8366154FAC92C7455863A45C4F4BF140776935BA4583CB1EC7
-1486197EDDFA9E46DCE6A28C992B10DA89C4FB8CF80CD39AC536C1D41C6753E3
-692F8E76928B5D4F2E86D30F7B3954BD6301ABB58CED13884C284C53D7A734BC
-46A9502745970B12A16058695801EDDFF1E65F7242CC61F6C4163A67DB236F17
-704CF79727413904319002AA4D81BFDDF64EFAD2DC47FB896BCBC5FF19FCA3ED
-B2321FF9F8504241CC25C1922DBB23CD6AFA25DDCFD473AC617F1333CFB469F1
-A343455681B59829DFFBCE8406D374059A724C7124FEBEE05F9BF3206254A931
-0D276555A890E38C69BB578DC8D7511E5F82A15E8E4BECD06D47F6E3AFD854C0
-B968F0923B0D7A3672BF7CDA1DA9CD9FEE74D70A2CCAD4055062E3AD8685FFC0
-B5BDDB530C857C3C826981C0F2F91574DE71274A4E404A1D73020F4B50376EFC
-748EEA93D6E1E2DB1144347180ED372D2727E2DBB8E9334778AB1C4E67993D28
-5EA56E402DC2A8B87D017778ACB9585D9C73780CAD7CE94B6BB727BB93366612
-8DC1B3830E7E95EC7EC2D539FE7E73E55633CADBC630F6B7DC36D77ED47B2958
-0B263DB67F07E16A040DC602CA362233C947B95F63F16239F0CA977F1A99F9A6
-B36F831B7D8AA5BD29DC4E26DB4DDB04508C53EA8041AF99D33899327C353C96
-A765BBFE74CFDD198E2FD0D9B9F3F76F2A8178A530919CB701F51DE0BECF3BFA
-B6A10EA4DB04DA17C04B2A932E937CCB268F5F427485C217D284CF602C9091E3
-6977BB4ECD4CA46905E79C6E847C0B7FE0A84F0DD43F7EECD10CC502F95293FC
-078348DBDAC9DAF6338E1F9D7DD289F52E1021E27851CC45AA0047F2FE07B5C7
-A6F0F8BB5E26BA7FFFB21082351804662F9C476E9D721E8A5BC81F2E5CA81F45
-4FC091EC171438E64ECE1899865F483D6015792450AE1186640D1E3C328B915E
-2893621345A8EAEF8A017CCA2D2608C5823A23FC7575397C3646476E8D26BDD2
-8C51C4CEF109EDB677017739A53CFA6A509AC5152077EA5ECD7A176578B6BFC4
-ABABBD0C484F31B293EE6FE8E68A281EECA6198A8BC6CAD2EA4EE2C49390AF4C
-6A710275742AFCA4E2A1DBE04123C080FAC65EB8C6AC86388FBFFAC8EEC49BAC
-464C4E1AA0DCB37AA6503E364FC954BEC84C9552300DC9495DDDEC35795EF8AF
-50D2C0CA0F238B3FA1CBBA9F9CBE1F621C710F73B7D456073082BCB28170407C
-FC3007F52CB71E08A85621B22B4DF750D011175E0A29B4FEBC1D8625E713D050
-31325515679F4A0D6EF17529A37C0BBC3F8F2F7AA0A6F57977941AB4133DA64D
-1AEBE4C7FABCDC25854BA5583678FFB54956AAE6D94F3E06D5C0F27B1DCF2421
-1C74FD8D4F0A5824DABE0346804CDD2D96BED494EE8B9D99F133F325D8CDF0EF
-431AB25D5025BA7A7E8B329AD2F89A53C3855AF9CD54275E030C3051632E5CC0
-994AFBD2A15772BAAFAF46FA10543A2B0AAC06163802D7F748C0EA0DA9072E54
-19E4BE682E9CDBA0B0D7E9F60A90C6C8491A6F30A5D310050DBCF613CC297D4B
-66974DACBFAB4377A753A16FE6394542A275D14197D422CF91FF360E8A63E8B0
-2E746082582E2448F6CAD56E488DBC0F40FCBCBB993A787E70BC9D8E24176B61
-FF2984A3855F02787C6C3DB41752B63FE0B7B090FC6D21763E96F2AC80B8994C
-FC3DD8AD32562184A3FA34CB6C0C73CB587529E35E72337A1AD22970995051DE
-2D10E84A14340589B08FA907F5A3570F98713316F633228AC0BBEC6789BED276
-6E2E1597D0C8C22705A729622749A30BDD267F7BF3CC116F7F888A4F4AFCD688
-63AE5A71F1E2F5EEFA3B100B19D6A893BE519DC5DAA215B143F807296187E4A2
-F52FC1F4448B0F4529E2156CE980293422994E484EA3F21C9FF7A56BB005A4C2
-F073DF6552D40E5DCB7A419C620C9127C451EBC2E341CB0649A503FA0E1B38D6
-2BAD504BEEEC35C13F6CB0659E719FF18C523B882EBD74D43D769E1F8A30354F
-8B790EAA99668110FE86806BDB239796E9F55A75D110D000C72AB2A430241713
-FD770F84793CD7BC488B8BBD59DA1BE3AAABC83F5E699F2A9D4870C2130502A1
-7CC2368B92CF0D52CB70446A3F634582E2E3D320CFC4353A748C1F1D91C7E4B5
-5ACA209EA88800AB7293FD1E8064B10C1A5829535E26D3C55AF6AD9B4ACE497B
-FAB377677F34D002BCDF35C0BBB7DA7833638683788748A16D075E344CE8FF95
-C09C6DCFCCBDB48EC084126BCF94EBDB1856940C67BBB69B8825E91A98F699EF
-2E378557776C9788E2A80ABAFE3E7E3BB6C0F32FA770597E37F271C50C10A9B2
-F90C8D80F4BD9F4C1098A306CE886C127946D3DB39C82F31F1CB1B1451FF6D9D
-A519AA74E1C7C4797F5E3EB440105C51ACFF85734924C0576E826B210C501232
-456601B688A3EA9494A8F391E1A0BFB7668BF6D0E1B82A47E91BC893E13EA0BC
-F8B7BA17D586DEFE3F7C2C72909106A651908325E055DE4F4E5B266D71716474
-56D5010FDC4012A2D659234BA355366C4E737FDFC04B7BECE1C1E16A7158FB27
-21AB8752DBCF8EF4AD11D185D7CE3BD84CD520553F0EE3FFA0AB3D773978A425
-F6C1B4EEE27F127C469005AFE5E07ACF2E438CCA628A77D90C9EAF7072733357
-CCF508A46C831FB96D0033FECE34E85023015A3AAA5E373A790DEB5D743EADBD
-7D249F543389FB089F4ECCAEDC4B75034AAF5DF41AB2DB047BE7C9500D34C60D
-7F38EC93219FA9C8A96523B981103196DB4D45031BAA1CF5018F3ABA08A547AD
-02E77C769762C162C7931A91CED9B33EE6C3BF4E59FF8EFE17A952FF3EAD46A9
-FDB74FFB0FB988DCEFA31ADB3F2A78E7C51BB09504DBBF1D53D96676E5843D8E
-DB50E2C89E2FA58295694AC71D7DC610756278F387A7809C8CD27152672314BE
-E287E774C2949A13B03BCEBA7A9A1A0B927AC46D8FF136C5B305EC65609F6162
-39908934CA61A225513E658F6B42F15A3621A45191F5437EBECAC64914548C8A
-6750FA2C9CC0E3BC40E01A21E3C4BA1707915D34CB78C96F0BCB7E2B10892E71
-174268D0234CFFCD5E60BD7955A151226F4987B67A69D9313CDB1ED0F9F34958
-33F7D16834BB40A6EEC4A5E24F57067FB59FB8D8C9AADFDBD3A897D8C91770CD
-D4820C1AE39A2D1AEC8B457DD856F81B3E698CF1FC5191CF60B1A80CC3230B63
-59C1384BD01EA86208DE000C9D3857B3243C95D6B6BA5BC693C539F7F6423205
-1F0FC68EB360DA674569C20FB993449096394328BB9229F93F45ECF5E11371B9
-63C233E1661C8451A3D1E076D243F6E887C82E49E00E2847CC33858370D560A4
-6742B1F48C2EE6D561A6D43BE796A09976E0D69A4A6C346AB895264C96092511
-7527320E9EA8A73250607B09BBE48D3952998435F36FE4D1CF667BC28ABCCD69
-FEE40049B09F1F39B64F3BE92C1EAC9C4661EBC403A69A9180FA83D1D5E590E0
-647AD00FE509B0E9FEB752F85726783978CE98B4AFAD649D9623F41419F9923A
-A11729723270E0847AA464AEF74FBC743D8D805322360364E7751743552A0AFF
-CCEB847942D9689E9659D15A3D795AEC8782C6EBCE6760E687F87095FCDDEA8B
-C4D8FCE65634148638A8DE5797BF21266AD94E363F58DB84561B74CDD8D5FAB3
-59A521598B34720C54C0AFC5B1A415B7E929D6EDCEE9205DAAB716379C29289F
-2C1AA7EE0776B1C6B6AFCDED4C6ED7EDFF1AA20523EC52F8332C2C0ABBAC1A2B
-DE91AE501079F2A4ECAE93FB93082B1A241AA79C1F7907F8EB3BD528A2353FBE
-749B89A4FD00C8C9472446EE4B6F04F5073EA7C2854835FFBA548920108192AC
-8CC658B87F249321015CA481B2A5F19156F63C5F7C285E18456D0CF0E1ECABCA
-C9702A3DC3911A3B179C837D4849DFEF463B9648AA2CEE8C7B7304B551296AA5
-4E73AFFD0D86AFBBAAEB71082E250627D70CAF3D246867A3676ED1BBBE99F6FD
-32BCA350821E0925E99235BE60C72D8270769DBE50CA12BE348D5145598EB0F6
-2EFC2EAFB348EC74C1F9025DEF33772AB3A41D6F8DDE6CC6746701CF75C86B43
-3F9224B633E510BAB613F6EC46A685D32C1C474F3509FC63268C4DF841B9B38E
-9CB08A26518FFD1A402D43C079C5603589D578DE2E8225A160625B6A484460CE
-5C445FDC1D3A58A982D205C370D86195D988E277F92937BBC9FF72851B0694B4
-D484FE0755962D2C4D81DA0F1F36973CD69765482A7DF0F5E701A3C5045C97FC
-09B5DEC1E35BDF033C02B7155B72851ED7A6BFDE12196DB43AFEDADACD52B93D
-E6F247F438A11DBF4A6D6CD59834865EF349F87DBB7EBBC5503492F5BAEA9615
-32AB4D318C6D1BB372FB14CFCB4268EF69128DE3FA99379609DF7099E459B557
-E7CFA0A293121A700CCC679D815F0883CFAF64B603C9E588488904267AD3EE3B
-9A8F6BED8EF48582F4A420AAE9CC3E0A61EB8D10C816C3091074E3B6345FF4DC
-37E1C1597DA71581A9920E9858DAB295178521766178F2141851EF5E455CE390
-4CD16782A04606397A6B4D13303918255700FFC68D83420E3F37437C073DBE9F
-C80EC3F7D915376410FC4961F37D73D13268B7E93C8B4F29880B535D14DE1205
-615CCB9BCDB0164F2D9C3E9515BF00C5D4E164A6B495E6A80EA01D3D6226BABE
-762982E7B5B74799A15819EDEDFB01B444BA30899AF2498DF31B1198C9115C88
-720C6BFFE2E0F33944274AB36CDEC08D18D00AD8AAB0037680DA8525AD9EBA6D
-8847EEEF0F689C466DB5CA6382B52F56FCF8490F2A931B3A71
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-cleartomark
-%%EndFont 
-%%BeginFont: CMTT9
-%!PS-AdobeFont-1.1: CMTT9 1.0
-%%CreationDate: 1991 Aug 20 16:46:24
-% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
-11 dict begin
-/FontInfo 7 dict dup begin
-/version (1.0) readonly def
-/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def
-/FullName (CMTT9) readonly def
-/FamilyName (Computer Modern) readonly def
-/Weight (Medium) readonly def
-/ItalicAngle 0 def
-/isFixedPitch true def
-end readonly def
-/FontName /CMTT9 def
-/PaintType 0 def
-/FontType 1 def
-/FontMatrix [0.001 0 0 0.001 0 0] readonly def
-/Encoding 256 array
-0 1 255 {1 index exch /.notdef put} for
-dup 33 /exclam put
-dup 34 /quotedbl put
-dup 35 /numbersign put
-dup 37 /percent put
-dup 38 /ampersand put
-dup 39 /quoteright put
-dup 40 /parenleft put
-dup 41 /parenright put
-dup 42 /asterisk put
-dup 43 /plus put
-dup 44 /comma put
-dup 45 /hyphen put
-dup 46 /period put
-dup 47 /slash put
-dup 48 /zero put
-dup 49 /one put
-dup 50 /two put
-dup 51 /three put
-dup 52 /four put
-dup 54 /six put
-dup 58 /colon put
-dup 59 /semicolon put
-dup 60 /less put
-dup 61 /equal put
-dup 62 /greater put
-dup 63 /question put
-dup 64 /at put
-dup 65 /A put
-dup 66 /B put
-dup 67 /C put
-dup 68 /D put
-dup 69 /E put
-dup 70 /F put
-dup 71 /G put
-dup 72 /H put
-dup 73 /I put
-dup 74 /J put
-dup 76 /L put
-dup 77 /M put
-dup 78 /N put
-dup 79 /O put
-dup 80 /P put
-dup 81 /Q put
-dup 82 /R put
-dup 83 /S put
-dup 84 /T put
-dup 85 /U put
-dup 86 /V put
-dup 87 /W put
-dup 88 /X put
-dup 89 /Y put
-dup 91 /bracketleft put
-dup 92 /backslash put
-dup 93 /bracketright put
-dup 95 /underscore put
-dup 96 /quoteleft put
-dup 97 /a put
-dup 98 /b put
-dup 99 /c put
-dup 100 /d put
-dup 101 /e put
-dup 102 /f put
-dup 103 /g put
-dup 104 /h put
-dup 105 /i put
-dup 106 /j put
-dup 107 /k put
-dup 108 /l put
-dup 109 /m put
-dup 110 /n put
-dup 111 /o put
-dup 112 /p put
-dup 113 /q put
-dup 114 /r put
-dup 115 /s put
-dup 116 /t put
-dup 117 /u put
-dup 118 /v put
-dup 119 /w put
-dup 120 /x put
-dup 121 /y put
-dup 122 /z put
-dup 123 /braceleft put
-dup 124 /bar put
-dup 125 /braceright put
-dup 126 /asciitilde put
-readonly def
-/FontBBox{-6 -233 542 698}readonly def
-currentdict end
-currentfile eexec
-D9D66F633B846A97B686A97E45A3D0AA052A014267B7904EB3C0D3BD0B83D891
-016CA6CA4B712ADEB258FAAB9A130EE605E61F77FC1B738ABC7C51CD46EF8171
-9098D5FEE67660E69A7AB91B58F29A4D79E57022F783EB0FBBB6D4F4EC35014F
-D2DECBA99459A4C59DF0C6EBA150284454E707DC2100C15B76B4C19B84363758
-469A6C558785B226332152109871A9883487DD7710949204DDCF837E6A8708B8
-2BDBF16FBC7512FAA308A093FE5F00F963068B8232429ED8B7CF6A3D879A2D1E
-2931CE5F5D18C658602059F07BE66E6EFC9239D7AB2FB8A4CBD41675B8ECF279
-650C29E53B14AC0E392A664848C1844B1CECBB2D5CFB72D0916B675C9A9A1E35
-F12696A6F628473C604A95376468E06E295AD6F76CEB939D94113532050B9D5A
-D2F41A9EFB9424D986612313B89EFE9C8A71313340B248F6853B1EDBF02B7F9E
-F447220FE131D7D54CFB8AA1281DBAEA73E665BACB1F164552CC0CEDB63BD4B1
-4A9AE8AC6FA02242DBE8DA46B64B6BFC11762F0784F216FC8B9120D688D1705A
-438B14F5E5DEAF2A98408B3B64620DE3732A4DAE6D08D5D97E34C75DAE19EABD
-BA0796165C1151BCBFB1DF8D29A63A8300DBDB9E3323CB82D0337598B83F4F2B
-A97CF5196D4D1CEC1EDB8966E548C0D9C194C932319610FB43EA1B86322FE641
-AB48770FF13BD475A7267E142388563D1A400419C585B22A9886074687BEDF74
-D905BE8EE440BA2ABF28EAB673399B7F129B9729DD5564C681954621903B84BB
-CAF89AC5ADB2932472DF29ADA2BDBDB4D05F65F28F5F4C529613D61858E0074A
-082A852710A62A147C966F2B85B51B0BE85F11D2057C66FDD61F6C5755367980
-9F4DE680601D4DA41B46F8D2148450000413C27AA39B586B74B977B25F0FD3C0
-4BA1EBFAFDBEC531EA1210365091671CE3C86A6D4BC591C37DCC02570042575A
-9D24252D6E01A8603753934D7EA5CAC1BE4E5AD2BA047DE8F3983B23A8A1511F
-B08D373B69E5076CE4300137B8805EBCC0AAB89BBB312A77835795E3C069322D
-42C893A30AD739E2BDD299679B158F7493764F2321E3965141B5ED1C6F4765ED
-F46D391A646B30C90002B1C461AEE79E5F094CACCA656CEA3DB921CC5205F328
-A2C69F817061D6C60B121EEE844CA5008F23DF07284565BBEF0CE7F1CF6FEF28
-F076C9A548815E85D9217BB252D3891CEE88E98C74015AD579DAB8A8F3CE74B4
-E054D34D0C8CBD8CD31B76ED594A67C314D947D71132A546EFF9F0A1D5C9EF00
-1935D169FDC0597ED3C84AC306B76F096C76CF2415ED28833BA187E53992D4CF
-7989F353CEA37B66136E61631E21C0C94A66DD92E36A668D781331758FCEF642
-0BB4EFC8FB6B340077270EF871B3FA6181714DF7B1C4F31E0A878E8A80F17303
-08125D405932EF6347F2076FAEAD5AD3B6BFD37FBDA386349E86AC43FDC075FE
-2F723D59ACA1827B7411FAAFDD192B067D9ADC43837A4AFAA44A9B9977F38A40
-B455394BB37FD42F864D87FC6354472FD07ABCCDB8ADB91920F4499E9FF9CED2
-7BC068A35B1E8F42C1D713435484F507D07BD88FCDC2AD786357212007D929AC
-91739C997CF60059723035D8118760650266DE84D67BBFFC8F9160A6047E1872
-543B2E6314994D0EC2239A0B392E4E063B59935CB1D746CAB6A0CEAD5C607BFB
-2B8D8BE15CABC61545AE4B0ABF52D5D6D4E79676D54319CF5C372B1620FEE9A9
-ED112E8EB0C9926D241005CA3E0713D7C404A4E36BF2CD40ED1BD929C502977E
-5519DE3613A4BE33C2202BD51A2931D1B8DF61D0FE4D579E6F0AFE9F8BCE6B81
-620605D3B24BB4E759D444ADE5D414C358E01BD56077326338059D3E072DFC6B
-A73042A5079C5D208C68919BCCB94D915B85FDCFA99307121D906A6644B1E985
-7BC0B72B5AA099B6FE5F136CA1D3858A24B67287A286F3A33A14BE5CC6F58AE3
-BAA95A683081195371180499A2DE681E8953092BC24A9491AC8C12135D697161
-9594262B9062AF226ECA469B31E6D983B52CCD2A3052778B124C897419757544
-95F0A7BB2CEA697A5591108D7C19C0AAD06F64A87F5582E0D48587D39701B3E7
-D9DC742E6C7326E030335E0617736614AE8EBA185F40263E79798C73924DDC32
-19CF344BE4EB06576343FE3E443E2CDBDE0EA7835C0D2D1151B4793C27A1B1C5
-E1AE0233C7A19CC23FA2CD07A3D73B7DB2EF96104D94B2F62DD3FB7277351A9A
-52A0778A3C83656B338D3F8951BC5A9BA28002BCF4C4815F119C001F6D656924
-FBED0CD9A28A0A49E200A3683F91A705B6847EBA41E47B65AB0905F91F908157
-0172210E075CB7EAED23A3F51147394606C02F9667A5DD977C4AAA8BD09C9294
-72C2428BD937C93EC6BE3E67DCF4928A2A96115EA1A98D6B06658493C2370E6E
-088E8B181E6542974FF1C51ECD7FB084932A9931B33C7ED6DD22C036829979D6
-760B78C1F08BAC053C883BFAE5B90FF2C1DD429AD5613D9EFDB35501069B651E
-969E59CD89B214F252D6E704FA00601F2ACC744AD9B38717C0BC0DF1E6C6DE99
-069E1E16FDF9CB81D9EEB02D27AEF5DC382BFD68689EBF58F644C0A3341F0529
-9DC677EB851B300E80519FFBCE90300F2D74198F9A4615C55DFFB10540066F5B
-DE4597687BA06A7056467B5B2261ECCAA224BDA8B26FC76939AAEEF3D9F19909
-A639FD5FFC9B7EEA77FB99359A55F776D7AEA05AF8F2A58F3D8D683A75C46D8A
-14984758C7DDAC37182186FDA630FA43754CF09E518E7760E073A39220C423B9
-AEA6962C84B7EE1389CB8ACDDA116A15A28D48F630685888C05D40A5E2FC1D5B
-A1CA6CB880CC2A3D12E68BECD474AB71B601F84047B8F653DCAB5D752D118A15
-05B46BEFAF68B6575E2C24D26DBAC139A29A218042407609D1DC5382C116A77F
-B793FC657596D3BE2FF0A30E64488A8749A6051209AB4C9D723442E1F16E66B2
-EF043314E1DF470B2087E9733337B61438E9E730EF61917F094E067457E52DBC
-3CB73A61F5599D3F80BC3A30EE2AED6725574804BE163BDA713BC2E16E8A1A65
-293D12C2191AE91FAC7E94A6C0BFFB3F0870DA9EC1F21A9E69654B72886FB22B
-6E603A7F31F327CF361B89E1C88FEB1BF3E537DCC0E82E4FE3CE976FEBFF885C
-3070D236A7CBB2BDF557C51A5F28AC6CD527508AD903481254A7737FBA4A0800
-D9A54A384C9E5979020A9609D6190E0C24C4D092C7D0B09370AFA5EE3C372ED1
-C3936F20543165F5D70AA0D4CFE2017239954E617907FD9C72AA9C2FD4C94279
-46DBC2FCF2788F62EA5C8E6B16ED355C14C5DCED3A04E276E22268F7D80DB574
-932937B1DB44D2AAF4B8CBED21BD3DCF7C620B115ACA9BF698AAC602BD0BEB65
-25890BCDB375DDA7C8807E43E534B849C21FCB75BF960ABBAD8561902C242DFC
-B2D3AA455524985FAE0CBBC9839BA84D77B3EC5B38D378F4C203AA48BBBB9757
-809648484684C95DF804ED2D29F672E4895BE54B821FD25B6C57EFD164DB0E5C
-7D178E57DE47D2376AACB150C60D986AA7C3B23392B7A3C7C8D89F86C98BBF80
-4CB51559D210251588340AA851DA3176CCFA61F8AF643A6E52E4109F059EFABA
-3973E580FBFBD2E75B73D7FF70C13D1394E187EFA4AF831B5A6876B3748A1CFC
-2F642F3829F5699C0DCB3CA99B2FC34176C6FAA943813CAA6A52CB170E87A1F0
-E02DF9C1243E7B4955B4380B6D8800E832E2F799FF72F2C0A3A373F21C43207B
-68A816147A46D8B4070E96EECE7AB0FC949D0400EBF6232EA7CC9A81BDB0F7B0
-886D5A1316A9636D779748A7D8E70B36A3AB65967C3258621100E0D6675376B9
-974959879BF814EDE2E764C84077561C357D9B427C3689243BB73C1B49D69B1A
-39379E3E0C57C9ED1D8DCA2C2EDD70652020773518B16AF171A14C77720EE361
-B3E79BA06B7B4182A2148356F0D7038E6CE2545E13142C93D3F20F430A927F96
-4902B1A00579EAD4B2EFB6E7BFD074D41A013624A088412D9E961509F1E0D60C
-BDAF336DF7FE2240A21A1C16FB2E112A550BB4700A61918AC6A21FBAF2EA2ADC
-828F356BC995BCE890CF78D8F0071DBBC47600589A65AB58D5F3ED6F0EFE2C09
-F8182026A24F645830A19B5A14C4DE5337ABECE46CE37EB86D21C6B7944F8C65
-BBB716DFCFB8E7B3885B85D376A69E5EE7A8F7029F6C89E4C442517F66DE9353
-BBE7C67FED5D1BF039960B1169BCB617A99526E7920BBFDCA33E11D279CD8AA6
-A7889AF9C8AA7ACD334E3AE2A4E48C33F44BCC96F3D78143BEAEF0EC9FA357BA
-83153E31EC162FB03998063DDE15DA5F51B261CBFC82690C0D4BEFCFAA5FCFFC
-E138EBEE9F4DA0CE076805D2FFD37586F1F45E7DFB68349C4173BC7996794EED
-EC2673224C40D2E0FFF9707F479745EA603BF93F6A99EFE10C7F449098DFE0E4
-0089BC6533A317F51A4BC0EAD3314DA8CAD24188DF1C6570C6E6DF36FA45ECC1
-39DDF72BE39B4A5ECA23D5E09DD856C10F0D3F25D78F8478D57669085B1D8124
-37C0E20DFF027B15614458F86E1BA3C655448F2FC6AFBDF333568F3704149C63
-E394A7F98322B15FFC5DA905ACCE397BD928054E48ABC3DA121B0A182555A109
-F014E0734D5AAF5858048F49F0B324DC77E060417B54F3A7060DE4475774C5FC
-77E7F583918AFB6E7C6E5AF0FF6708EA61ACF225DC79FB5B19AD288B4E2174E4
-A480A30FAB2617A62FA296825CF53C8EBEED170F11EFD6D4917770D273604800
-F384DB40581569C5041992F4EFF39079E8925294D26DFA83B091457E1E8B8B26
-3BC281683D4C19E29701661EE43DB860177E24FE50572FF9B44186165ADCE2EB
-FCC16E4D41DA9B0495133941815AD4D559F070B3E05AADC78D01CE604B260AEC
-6508DEFC3661719C04EA4F348B21BDD60CDA9EA543BCE78C2B4C85E870DB0B13
-2FA544ACABC56E8ADDA9CBE7FD8FA934C9AE1E0E998402A2CA6EF950A722F550
-6817C340EEAF4AB987C0AEF640BB2B739F5B21A96ACA55DD1DFC43F8CF9D1899
-FDCA0A5D55D2C9F4CF0F738C1D60A216E5ABE76451FD310CE60E485512139FE1
-DAABE87F8619669746C80D3306B8B6BE040F8C15ED2A69191180F3C887C847FA
-F3DD9FECE9207774CA07602D32096844F681AD05B79A59EE082B9D70558E9B0D
-9C9CDB807773E6EC3EB9BC15100628F961500082D34F2037851BB50546EB32A9
-E2ACE8E919B3A4B0CDC3B772B4670E3D8A23AA5CB70B8887D43C937BDA694362
-630F09DD0D5D759FC52D6464657CB8694E67B021DECF63394ABA00FC5294B482
-E7986938C5A302B41370FAB777A167E19F2615EEEA0B4334C5B644AFEC30FD84
-C61FC154A0442DE42606F4F86BFFBB296FD58EA4C61A266913A052F64E389B39
-00ACF232A472E72DFA9F75DEDC442D9D7BE5FC1E029E6448113EDD17E8F21A0E
-C13680609691B776763A537A85F87E4B0AED171C24151F72D63A5DE9A4407FC1
-FDD0FB731C8D37664BC51E050936D73920ACE8F3489470C75732A55C5147302B
-1033634FC4BFA63E857E8FCA328E9B7F05D0C0B52627F01AADCD3472281E0872
-F970229A6A64457F49A9BAD409B2FB60B683472212BBB0D65421F72CF3F1C4C5
-3085DB6D43BD7101985C6AED5F847C95EE7C3BC5F25CED1F90BD73A572CA2870
-3207ECA293318FFDAEB6E62B00BF3BF8A74134819BCF8C7ED7F381B3483D150D
-BEB0604C226B03E4DE88D7C58EC8C4DB6BF785E03E0381922D29E6AA35979AC4
-0DEBCACC1748EED7BDC1188F32C833D10544CE363D8BA4C1BAEDCB8533BC3C87
-C13A72E1B196E4FF17E364F4161416D54E3E4C81A9F195D0FD825525D5F9EF69
-723E889D8C82E3E22078A8E430B2940329E917728A91D41D834A0B8A6AB146DE
-080B33DD7D54BA206BD577952573EABD08BB0028F76DAFD32E5645A0020A71E2
-3503F599EB37E59502A3D87D16BB530007B7A5A01883BBD7755AE618DBA3AF0E
-BDC0013822545D40D40ACC23DF07BDBB0AFFAD46FFAA0082AEC302A2A540A30E
-DC3DA64D8681E01F744C06E7BD019711CE1AA9C34D60F8CEE96793C3477131AE
-672C0FA34AAD8BC6FF10B2D986506E07E0B93CE8AF15BB6F88C2E0F7525F5275
-6279AB8036BD871B0569E924AB1EF44496ECDA2456258128A8875F9C7379A65B
-A6E3B1B1B4F7D839E31E682FB9AF51D0F5E16C8C8DDAE9373AFEAE392FFAB643
-8B779858DCFC4D6C917ACD3B5DA3E3BCB41C5F489925D45398709BB202082527
-2CE1113EE58B9ABBE345E1E0B81326A0B5F6D8673F8D916A10D49E17E6A9EE6B
-A49DEE9CE9341D60BDCFE7C5E23F2ACE74E2410C8D7AA08B8C87934B7E25A293
-2C009BCF429D4E5855AC07C8BE039BE1C43D88EFC374C5D1D4DD0897CC12C4D6
-832E832670B3AC8810A742D19F2753E07C3FCD214BFD159E68EC7C70777F2623
-FB5A5A493B76C0557970D7D61776B9B10A62CABBFF26AD4BD31FD8B7C7339509
-6AD519595E5D9453EF513F9C8D081D9CDE9BA95864439DBB51215A3750B4BD6B
-8224D95966A2A7DE8643A3A4BB25B6D36C4D13832C3596C141B9687C783B42A5
-53393CDAA387B6E5BBD02F8A0EDC987AB79972AA7459833058891202CCB89B55
-8C02A10B0E4B543BBB0940791E72A75AE7F88F74FF4C4F22B0F130D97E38D815
-9CA982109A3D84B7ECB8704F7C553FB8BC64BC61565E48BCBB6F6A2CCC1F5067
-32217F7610347DF4849B4712E02D06908673117D7CC67598DD3B7EEE5C9028C7
-A6E32BD23E40AC3B5CA11E251BC9BBA74A37B4C6E1140555258C09DF0384F318
-8005E822A6801271634B6682938A4265737359B176A9AC91F38C4CC0BBE42205
-9C7896B48BCCA264B690491FF320917C8435649EDE509019E0D346DE9B241C31
-05D5401B68D63395F453D3EFC344948A37859ECF58BFC6B5834D2AE39DDBCB00
-56F9BE5115B8972A8AE8626234CE7505956BD6BF328F4AA09F2FD5B04A6B9273
-536DD8DE5166569A60ADCF27797C39B19DCCA6C928DC8A27C778D57405D77B57
-79A36660CB92D8E0215225F7D0B46DACF80CCBBD1020245B7C728D7F581C5412
-97191889A4199ABE2A0D261F86E5C1004378153AB6DAF5948D7CC2C0D4356B62
-86BCE32439DFDD30F5BAB2DCAF3855E6BB025737CE3FFEB1B2124AA5BE3084C2
-BCF2BC8C54212B75F5E741B66E49D36E51109007076B446C65A112181B42E721
-FF95011DBA1ED7C3349C889A4F6A55C21878647AE8B3615A87D3619057E14471
-04B5D5552CB886808BBC66B2CC86D7C040104A984F3B4E7B28A85FA0E04D83E6
-16877535A40F14FA5E2661D7209212D57B271F009CBB11F4C5096057A940C68D
-A2A5D5F2FFE3ADD8AC4B56D73FDF49A8F8C8E253971B74F5F97C9397B6273D92
-1A684C24845A9988D993D26FDD816463B8DC021381FE041E8B39FE1756FD9ACD
-93EAF3BD313EFE4334BAC1D5C0BAC7CD96B54CDAC088761FC4A712693AD9E27C
-B80042A35B024508831EF37789426A50F7729887A6136623FC72C79EFF02AF92
-C16EEA04C8BDED4E36F7168A6663943677F201B42C6FEABA4451E656F125A768
-71B87E37395283DA33EFBC32EC3CF594F2855934501511D0407F0927D6AD83EF
-EE8ACC2218706BBC1EF73DE12A30012DB5AB7585A1111DF2F806A1454C0E027F
-7F8A1A20C11F63D5D819E0880D0E0D5FA865CAA0A6AD24705F484CBBE6112CFC
-798587925A0B7A7DF5D0A6040B86EB87AC0D70A5B59A109A3BF7EC528E585CB7
-32403F77C45DA7A4734810421F50C25C72FF0F8414F5335789CB749E4D20D251
-2924278C9D4E3ABF5F266A56BECE755E5318C0B37F7F058CE78573914BCFD5D4
-6B147AE4E632C737C9F399F3415914DD3C57C05C697CA13DEF0696402444382E
-42257875079560216373E8D049C53D40CDC962D910F62A1D31AD6BE38675D993
-1CC639034FCCB16F47BC2646F9AB7C9A0EC6A6F8C5CF7C5CE4F48907B3734A94
-66E1538A7CCA5A25962D3718DAD9413D4A83FC1D771ADA62BBA18B61E5C316AC
-5A5FD60E465957FB57356D489B75BECAD72BE7D8B00E698C638C8559505052FE
-BAAAC08FFC1401C6220BD743C1DE9BDD4394EC43301B1286E309E82064C9109D
-86EDD1B9463464DD9802CDF87F2C69BDC36FD716070106836B1F094395A237FD
-708CF182D7AA177F8035BF20112A89BFB7C91782794BABA06AE5EAE132A409D5
-5495ACD3CC44115FEE36AC1795E5FFB697D5FFDE200CAE0D9F05AA17C290CEE8
-50D4C49C9D454C5B0478E34594C670D68D07AFC5F43DA79BE491AEA1E9580198
-6D1866D7C18D3724BB1E816138866C7365CEE09A417E22DE299410FA84903F08
-930044BD6190BAF3EAB5E6EAF5B9D1ACCD1E0E815842912B294B0AC8D005A107
-699A8D4EA623166AA426DBBE2C40CC591E079DBC45FFF20601D117CA0A350F63
-BC78A120D41C128945530D42C2EF749883C3398605C2FAADE077185E5C00397E
-06C2A11F14652CE4C4EB0D2F2D03574FB8B2ACC245F8A574DD8179ADFDC0E33E
-CD6485343FDA2B9B93A78A7E5A66E2F124CF7FDA4E7E1ED950CC26252B75F48A
-245E6276D3B2B57846E33BE57F199E5E8F2CC4FFC5C8AC892380A74A34370773
-D5545F0866CCB2ADDFFA0DB418FA6603242743E57A6B3865C91D1D2E58C90368
-1D1FDF0EA982DE83FB982AEBEF6B9C6C892A84E31B8F01E789F13D3897594C50
-3CA25239865731A70449CB6F5FB17E27671156D9B5CDEFF26CACDB53A6FDBDC6
-94D182A742DE0A6BA0A94A97285FABBB33978BCA5CACCDA547B5E2B94CF5888E
-F1FE5B08E538E181BEA643F837F2C8ECF2F037AE2E3BC799736B872356ED8540
-08132496E96093F6E54D81C839110668811AD8EB85FCCFE57BDA05B3BB36C49D
-493B8FBDEEED0A75EA7725F47C88877D3203463EECA12DD006FB114ED670CC01
-5B833EA5B7A2653F6EDE65BB4E4814462CF57D6DA21FCB31AB047B44AE237520
-A0985C465901BFC451154B1EBEBEA93A52426A431EEB4E5B67F09CFBED73847C
-5DF607D9B0F652E99D385AE147EB9A4CBC1BA1F8FC0D9BD0950FBB53A0E125EC
-5D309660F53D33CBE34F9A8DAB9B6ACC925FA8D5E44D4A925E832230A2E2AED9
-70BF7D0E5F72FFF045730EE23559EDF57276C359D7F4FEA17169C003D8913B18
-ECAD8580AE3216DA2C272665B7E884F1A324A42C3B7198AEB0CA29CC507F436A
-0E2F3C844CDDB13A7F08BC02EECE4654B65EA5260C79E6D765BA727C67A05F2C
-E859BFF7257A98E7417C6028C65162050D75BCD3204C134033F1F0238979E3BD
-16CC87AC37891FBF6CDFEA5F597C580DF2B97F40B30F1C0C3BE5BFE17F50E9BE
-649A7176012DE190C87A9A121E0D6FFF8AF785A9296F870CAC751D6AB615142B
-F0906CA484D5C6C5FFAA3AB1172121115DC0D6320050D821E127842FDC76E794
-BD15784EF5BA1F9744A5C7E5F5B1C13C8F6A589CE09E34E84E32BE17E8F0A7DB
-0EC8A2DF7B42875183FD7203C3648F71CE2E922A523C4992FCF2B3B006EFD0F0
-80C915358A2840CAC25EE98C63066F544867C5DA5D0B38972A30407040210E1C
-6521116F8934A475CFEC2EF86FBC3B6D4E505859FAD7EE1C146ADF6AD5BD4153
-9A74388B6E82534EEF4D974959E1817C79F5ADF22EB9FD06B8FD1F3AA33AF4AB
-EA293D18517B8E3BB1B188FA33216D2287C8B3B76BB1E1F0B57CEBBC7BC4A33B
-241FDC73F1462AE72C85F106C8DCD6258F98522D7F679770931D8571D1ABE54D
-4D7D7769C2DC95F8D76C00E43752C9B9EB6728CC52FAD9F0F970039C806001F1
-1F7B6913ED4DA7DC3354C8AA50396ADF00244F235947497731EEC97B62CEC45A
-314626A50BA9A651A2DFB2CCB98E267B4B99C4444BBE65B685AF3F75E3EE1823
-3F342FDA1D96D4436C250B2CEC024297689BA42EC47976147E5249DF44D211D2
-A115101B84AC60D85C6F4E0B0FFE40718828EBE248D3528F576A7B09327BEBF2
-75F1C0CA1493627C8CA4CCC318B4DDDE39D19DDE3A3512F37975D6607D13E890
-46B2FC2C190D6BD0FDD3DB46E0828E6FE14B0D4D05004A39742BB0C739771A79
-30FB99D67E3ED9C6D5945CB68CC07445F2814BFEA35E6EC66503F72BDE2FC89C
-5AB15BB82D3621AACFB83229AD75D7BABAE812DA050256DBEA32811132BBD3AE
-30705DAD3CC04FB369577D6C6A47234D64FB4B65EFE732507D634C104A6D7ED5
-011925FCED5E9B0209C1A6FC7E2241B5AC0137C9B02958DC49BF1ABEB4510EEF
-9CE5F52B8DADDDD7E2DC8239883D8E464E1485CF91F86EBA1F05C63EA0DB7D70
-5845A5CD291C4A7DFCFA0485F322E6F6169370B901BDA83074E03E3A7DEF6A51
-D747A4CA0DA80780E5C7750FAB43DCF65825CAF4F1384E732A82B41B7BC10D1A
-4DF2D164ECBB5A412A2F661AA9EA5A830B9B9FFA9BA28F7C77B4B44630582D76
-21729619FBE1855B765AAC1D1FC9F210015761110204A1DD1454BC2083E0C0B5
-302ACC80661F07A4E7A383D4504765F1BBA6453656EF433B057745CD4B3188E7
-80B1D64743A3D8D4C833DFDF1F7BE62DCA2E8F19B2E6B42B5824D9DCE4D25169
-B1ECD48AA770DF10B8CDAF0C052B74FA492C8F1F32B8F6653AB71E89C6AC861A
-17FC1C2521C3F13D51C8F3E8A194ECEB65D6E378DF77CA59261D89C22F447ABF
-F32B364C3317B10D7D4BB125ED13D2652628BB000C93FC0858927502959A08DA
-7D7DED2FB05F67DC4C8FD57FF0557DFB41B3B64B70E6CD4CC2BB1A93A9871C95
-8AECE589604D2728AC560357447712D6122A07A718A120192A05C60ACD76AE12
-A770F2BA949E7AEBDABB82DF856FC1B083D94A4F33E59133FC5852C372B3643C
-9C9FBCEC3842BE87407FFBCC197CEED5288EC521F8A9FAFFEE7E621ED6F7C4D2
-018B324E40D9DA379D44EA69CCAC6F6AC4B60496E1516EBEA89C3C71154769D5
-2D2DA6E22735EDAA07836CA0D80C75E746A5E10352C7EE38B7194AA011DE3CE4
-B0413B424160BEA8D036BBABB5F6605AB502A8E025ED1DB50854EB564A7F2EBB
-20A7D53E060CA39C4DE5031CB1B559F693F8DBDA03621F8F6082C8A23FC06609
-686E9D71059660B2CDD0D87E76EF4F72868347621992CE997D5BCFFD098369EA
-D5D393857D30B13A570FA6C7DC6EC565DB0CA5CF839B7F775D14AD508C52C5BE
-68CD329DD680503B8E76153A134414DF249A260C80D420E6F58FE267D10C3075
-5BA504D55FADCB03FB567111B64C5A307047607042D3BE73070A6C41A2D5F430
-A02548F6722C56FD30A0A6D29380AAB46B0A3F0CAFA020D5CA4DAFF00B73A08C
-568A14A89BC0DD190355AD8F346A5388EE11B5E814C087DF6BA4F2A2A3857706
-0A5DBE5A2FE2E5EF391238BDD884EDF8DA3161988BAD084968492F750BF85D97
-88901D90F27413763D1902690CA542CAB1A11FD7FC392365B20DECFC51642389
-F2E82AE2B0815F2E6D642AC005F9D919D27FA43164D322F44A1FF72811EA9E91
-CBEC140B38E52320B3C2A3E99E12E10CE5B416CD56AB3602595297FC4CB848B9
-8945B09267554B9810986AB04EE880C31B33DD65241ADFF147AD5FB644E98775
-6CCD3DCF3791960CCF51C263C36BD3CD0DE61A0FA8700F94117F8307FA253427
-E64AB799D6CE27239FE3BED969134A380458D4869F9A3D23DD026B21222ED323
-BF0C653347B5D80A1DB74D36CC658EF7DF7049E43E109E9FA712CAF4BF60B32D
-E82833CD3B0A264043E27F8A4BD73658FF982D2B7DC1813732714C8F3E07020D
-4D729A492CFE3E9F1F4BBC73F5075B25DA735CDAABB9929DFA59CAF06FB32A6B
-0DBE4039E516EAFA6D4211397F55CBA368286AF6533707AE9C7FA9C92B3980F2
-6D535BFD1ABDAD8F05B41280069A5ABC2C10E6071891E433C372F736A4F82DBF
-A442724B8CA4D1AB913B61CB402BF3638124FCBEED4775219ED8FFE18F26FA11
-46996E807D8F0878537A5E0B202F483ADDEC049817341890CA0515BA9B50EAC0
-D9CF13366E88F2729552BCE9188866A87E084CCC6BE773EC0DB26EF7C84687EA
-CB90DFD88A492C7A8A495018375B4FFE2D8A1D2BCAE6BBB4239EF32990ABD96B
-9D1FFE94585FAD705AF2C7C5D09F2410536B7BC0F693D2C90BD10E6D1F21F0EA
-61B449C48AF9D8DF6B8C40CF3BF5D7AE960ADEE9031B281745FD7E0F2A1C2067
-8BB23277FE5812392A125282235B1CA921BC6D8626994432EA40224D1BBF90C4
-AF80AE41EFA1F501CF0AE7C8CC1AD3EA097F6512E19B1977313B2132300CE351
-14A1B7CF795537B74D83202ABC1F30E246439CDC6853E0E16AA67DE68F91104D
-C857A19FD19266774A862AC4EFC6B8012E3734599BF62A2A10987D8E66A12EB9
-0181C1AA5029214BA6C1CE72932E156297EE549BDFE0E400EEBD5AD3E30FA623
-9BD16275D2C673DD757D458FC58814703E0A310658CB3492BC286E8BCEA52119
-4D2DBF77AD22E9E6653DC9B5ABAE4F1699B0118C9328DED651229B82F9C2E674
-8039384372131D1F9C6D3C552ED0E55E88ECC96BFF158D0E13E5BC5C2B893943
-4EB62EB18C0060496641E9CEE93B02E7E5FC55717912E69C015F689EAF43994C
-5564E5A4BA753C26315BB868BFD63D9FDC6366679ED1E867FF3527B9A108C907
-FEB1E5BE95D81A49CB46A927F47AEBAD027D728F4869488F3C2EB32A91BEEEC2
-57C0FC84416812685BC269B819650C63D7E89A7B400655A7B9937D57E1B3D66E
-CEBB750F0B0EC52CB33C32672980674F983E8314C49D634C541015D18A602B9E
-3716039734F351A43C35486F6AE7E4F5E3EF509359AF01F32CE9992AB4AF5876
-24FC19965F574FDAC74535F0D24D5993DD90BE1B308F4D5C9EBF21A0F094FCB1
-0D583DD7B3C56D9D2A5C620E8B993838E73A85C6783AD86ED94A29AEFA298CDF
-633CCFB27D5BF4F84F709B5801051BC0088ECA63E6D02D4EC74C2CDABAE14713
-4E6D6FFE4B4F152D14AA973ECE9B09DF78D4BE6B5FB62B1876B1AE7D7F94F61A
-D82296959CE171CDE1F5CEEC8DE98A8DB770C428373202AD265DBC8DA00AF665
-15057EAC78B3CAFCE9409D1675D729EAF2C7200FA1B20B372C223DA8C6ACF2BB
-2AF4D61985A52DCA98AB61055DCE71CD5C51A5B7AFC46763FE243F1895F8F915
-CE65F0F6833316F5B8294A9790B8F9DEA0F7B2BEB452CED4662B4CDC816261B3
-FB1FCFB4D6A2336EB40408ACE3514509AE32208BBCD952F54AF37DEAA18F44A2
-77AEFD2E07027EFC96B9A22B30FE1D05AD72A617B2C51BA0B3E37F91548AD129
-0A1674D8F8E36D190690E922D3E5D4A11F4A8C1534281EDF1E8AE1D4E7D3DF52
-9A7D82B0D6E73A6A2204561967132AD8150C71A83889EF70744D19C8D2A50989
-1AA29A536DF571345ACA92F4C0767D0AC410561E401FC8E4586A15BB59EF78C8
-307CAF4461BFCE1E5A42DB8505EC1E6E235CC7286966008FE81D8AD2E426E78E
-3E9B87BB29B224148F8425AA1B8EBCAFC7070A950920D5F81E498204B5068AD2
-317F664F717AE214FEF8C91DA5F834E7527362B9691B0939A917CAB856831BA7
-AF3268CB4364E8D2826BA3EAD0718EF3E96ECFCF5DE78DC519547EA0ACE1C2A4
-81CD9E1B5613742DB05BBBFD2ABE366A10FD8D90218D738BB34C83A1E4CFBEC5
-D4F8497FAAB97730B21AFB5830D926F2AD6EC81913418DFCAF52393CCE81D23C
-E44A38E63AA13F0B05625BE4D681EFFBCBA426B188D722EEF511F5F710988231
-7C89CA1D041C877951BD3666F39CF1E60AFD70237C94DCE0AD24C9A8E3E0E55C
-DEAA44D7A654B0DC255B6D1CCDB66B495705334B509879AB4CCBD9F388DEFEF6
-C135B0875658508E2CEF5AB1B1B67EDD2D9B2D8DAF3279B13D088A1A8E9BD07E
-9E3E08CEFA9EC5647AA804D126ABE371F5BFE161A7705A4EAC1F41057D0F2036
-B7001AFE5601544C76385797136B91E24364D630AA76DCE510555A0F2F9C3C1F
-21AB51814B579459EF58FA80853642BD9B5C61316A44BBBE61C5924D6E2D5E80
-923558A516092C344820B2FDA303695788847B85F382C9AC7356A19B8645F449
-80B5B0A28B148D3B9FF349A97F43FDB668045D055C6F58C3921A8A3FC3DE40B7
-06EEC36786201502FE29A5C31C926E372D0139D2957C7583CF44D2FABF004DA2
-5B613B628210876D18DCA2A9DE7B391027451052B2A09C4153BA2455467BF428
-0DD26997F39C20F41DB43DEFC5880A9FC2987F6E70614403DAABB926ABEEFCB0
-36E2F7B53B9E0AFD3B17944413D3BF32423D4985E540358EBD3CF30B2258E593
-F4154FDB13A2459F51CF66E30973D066ED04C9A184884AC896224C7E8FECC19C
-36F83B76826342A517FCDEF4E311B8677C3C3725B048779A498824D9C59952F9
-5D3C35A9C1F46CA02D096152C3AC5B909EB015AA346B72AF75F1DA75052280A6
-9972EE1E02B403D8FA54E303E2795EE7CF99F47949AC1BA8EC0758431E254BD9
-142AD913FABEFC32B5869812F13768D9DB84A92B5C7FF5E36DA2E75121053294
-A32350523F7B1DFFCF898CBA2C6D5963101F5072FA3A22B4B1DFC952160DF160
-77E432EBE4D3789DCC63C6DD72FD93F676E12E0B21ECB97E2D3017103B98D354
-A7272639DDF42E8260DD82A1FEBC06658575B3AC3CB95C51C7725CC878EE4CFE
-2D22057854CB47750ED829F15AA969B129A159188CA695DECA2A7416FD750656
-6E38F5CFE680480C8E35FA71CA8879679C5F257BA9708E48ED5ECB8B7C01FC88
-411E872B7F77DFD7CEE57F08811B89DD7671F76BBFB15573074119CF723359EE
-3B1C3B2098F3C096EFDE8DDCD1F216333AD4746D953727FFF976125BD1B4C887
-79D9432C118F5D401B427A3CDE48CC5DA66AD31270AF198330E55F75B6D4144C
-EFE163FE0025D5BE51D31C881913DCA8A0E7642A1C052A427CCDB71D0D5026C5
-F0DB66B54EE0281A4EE924FC5C803B8D86969793D0CD6D8E359A7FE2391CBDBE
-CA9D350217AE564AEAD14139A46C74A780E45BB11986160B42545247A0205F53
-A4EAE8A5C5C39C4C0EBD18715CA92BF4D9AEAE8870C90B9AD239ED31E291C0D5
-DA1B46F9D15B3D0AD0B83281AC2D9C742824BD66B1435AD7EAD5FECEBB47BC6F
-354C4271653238ACFE8C3732C575FD574AE3710BEB0EE8A177AB06E715306A3F
-6F3FFE555A2D1FE8832CE1F7E34F2D9D25F6CB04002E382E134D9E2714401A03
-8BA326501CD838F7CB060A568C339131F0239DF4CAF57B0F70FEF6E18B229CB6
-7E6B90D2EFE57C053763CF058D472CFA3480CC83F8754DDD38DB5779E0A10020
-4E1D8DB91FB515A5F62353F35333FE72FF99677B51073A7C62854A1A4F6447F4
-6A3D422DAFBDEA495979480E19744FA0176034AABE57E98540A60990F7CD0B31
-0F49891566AED89BC704950DBE56C594F89607F7189B690AD41E36E8EB3F62D2
-5F4AB75E8B5A4AD772654957C02510A7332DF9E0FEE697BF5D3B0A027FC222C5
-774121ECF991C3B55755AF3F448C1605A75DD7955794BD090490BE50A6628995
-1C2F50B25F50347739AAEE9709D2295B8542008C4C6C7F42EC7F1006E50C42AC
-9A6DFEBDFE541798C9FBF291DE1EBC14407349300A1266184D165BA45B1895F4
-B659CF40733DB9C6169085DC61D96BEFF0291572557BB39B205970F98EAD6E8E
-F3CC19E1DD13547AD53678815EFDA7977BE7928E28ABECFDB71A762ED37B6D3A
-9FCC95659715C47317885001DD00261D3AD0E62AB66BE5879427B578F155BF43
-7FB452A8997B4C032170B4AC96B1503C16877FCD5141F0CD1F2C0A265755C548
-FAB6C2B9AFBB90405781AFEFAAB65A172DDF50EC77DB40BCF2C3499B34C44E07
-8E56763B50FFB88985249DC698CC7A338B297DB6FEBC7016B580BC019E18EE78
-F2243FE7B78722F158AACE4B7CBF3F631CD38A49934FD79862B78882381C2CA7
-B52B19877F148B24E336A1105C26CF30AB1091552C997CF4C58F8E3C784448BE
-20CEAE23DF2353DE4126E2A541AACFB51871150ECE62F031CA1F6C62D744AB72
-9374B112537F04B3C8B8836724BE1623F5FB11EB83BFB86CDAC9C2D1A6BA4DDE
-5B8A0D52D04FB27A50AEDEC8D2ADE5C92869C1714180021DC255EC9293C553F2
-6D0EBDC24351CC3CA028E632236F5F33E659F8666CF0E991B210985EC7BD45D2
-652A601686699EDE09404A423BA6269580394F8C416D924FE5553EACD0580478
-981D4BA194288402277F5EB318C5607570C1C13D7C05B094E996C6B204532541
-58804F66117E1BAFA3FC190641E5E973685F1199E93BA30B2E21E5E55BA9AA1B
-8B23A4EEC8E48F3BF1DB8D2A7D2605C08668B155F7ECAFCEBEBBBAD52BD81D3D
-6AA3DA75C1070CE27A115FF4CA9A53AE9BEE0BE1688526D5300A853D8E1BB518
-FD612A88DB8C1373F33E0327A5F96A6A949A1A1057F7D10ECEAA6A30737FD126
-8DA97AD95733503C77DC89565C339410019F51910A7A387D9294933B70F4B995
-2C85427E083438743D4B121E184A294CF8B68F60441E89B2769218F1AB2FE409
-127494C22BA1B86A19617C8BE730B10839A73965EC81EA26410821C88E1AF123
-DF47BE758A311E9DB30713C58EB11CB21228C37F8124BAA72B4A257FC7A3BE2F
-5DE92314C63D6C29EF43679AE1A6AA2592A8B8F4D261C3913B28C15860A48C61
-FB6082B4CEAF34D8DD48C5477C9C8FB7BE56223157819D5C4FD194AC7DD12CBA
-CF445BDB1CEBA5521A71CC528B8E9A03B6D7E8484B033858C27185EAB563D12D
-68E5781E3C32A751A3BDC8AA61E2D12A30EBB63B0E65D0C094EBA423CA4F93E3
-4295EA088659ADFCF8D4C04E1DA8662AC56AFB1DABF0F02A4202FAB2834BE0AA
-57C78548AFE9CEB728B466673B8281412C3543A74249CF3BE96290741D34C73F
-0C8A0BDDE88A751B6C92EE0727A149C4E4897C32464A04F4A9850034802B5B61
-106771D35A0F38A8CCE154ECC6316765A978DB5FBBC40364ED3019277501B797
-B3A82E1A24D0C93B275F62BB22CB13A0870C63E5C17DA91D72A70AE8D8A9263B
-F4B11E811DB061322330995DAE4BE9CC77FB8D52EFC409382786DAE1C5FBD89B
-976E2C2B2A7EF03994220A47412072DB4B6744A3AF3C8BB7DA94A302A122D2B9
-69603F4996EA7A90F365DE594E09D54B156B5BC62108199052482EFBA2B9509B
-80B98030C8A598DF3DD137A980965B6AD38BB36E90468724D3BEBC97470422DE
-62D043A0682D30DF47CA36917EE1166E48C178D9EEFC9E5109B0889B3ED61E36
-8FE08EFE67A24856A8E298DE721AA064F68BF38D8FED193A93950DF9D83CE52A
-4C70BADEB5626DCC240C798A57E365897DB847E8A1141D2B4A7B34D726D6D9E4
-D56B5D4312D5AC01293A55362A6A7AE6E3221CDE683ABE93D54C8E0421999CBE
-982FFCD77D88A7A54874D9E1B3802295683215A15B34F0E6646EF35698253F92
-C9BD94E6CD758647558A130A7F415C32DE5ACF3E829E432FEF4400C177C96C2A
-6E43AB236B9E4EBFE4579B08B02FEBA3660406FD3157E1B61634F066FEB313EE
-10567E0E52F0445CE2A072A3D4E083DBD64DA04A1EBB2B0D6D131E85FAEB529B
-740879214E838CEE99F5E1368B2DC1938A97D9326758B481FCF4C97BDAB3EF68
-25F79B7C6C5CB408BE2BB366D484B258656E3C070D7880BDC1136303A72E2459
-878E53FFD9BB034A84111A2859FF255244E202F05AC5EBA37F8B352A592E14BD
-7913DA80C69A0CA65F25BB70783BC3AE556167556B4C5E382F0B84462EE0A51C
-1C25042F6893E1D1EAFA8E71953AC764C7473D906E5CD33BAC2A1D0D594B5B51
-446884767B53AC97229DC035CC5A02FAC222AF9D9D4F2F5B0A5530AA6C5FE06D
-999D45751D06754600BEE6A778B77CCFD4E00573A1CF1B8169BE1A281FBADE26
-11EDDE9ADC6E0898235D656E6DD0F8966B43622F6AC7904DF39359EE0F3FF7E6
-BFDCCC2480ED79BB17E43D5BB79D0654AD92A5F3DEB90C8AAF2008F8263EDF33
-FAD8329E487A7F31BA46C3F3DD6220153131B305EFD23C10908728A86FA57F22
-47C7A224F7A0E0776BB8A4FF7E2159E7DC61785970FA25ABEB7B11C100E49175
-2EE8346B59150535375D99588830D943FB79CC7D076246EACA26055990D7C8D6
-BB8928AF10FB92F769F2F85DB4280D8F7B39ECDA06C8E18FDF5B6ED0C1E5299A
-0C219BC1118AFA68A020D8514835CE357A090DCD39741CBA75BE62ABDE92E2CF
-88CD97318B616EF0D6B11A21502354FC9E69A1D4BADA349A6D3D79798B694B2E
-8C44A6C31B8348EE672D092B061529EE178739133BF57C766BC3F49B6AE7C62B
-781B240959F3275802518F210685EA431490994BCB0CA2ECAECA38F24EE26AF3
-0A4C54E8270196C452F504F9F9213C5B0224F6A0AE1C690338CF83937300C96C
-77D4241CB4C0F852E0ADB5AE3E8A456A5B749652621531E5976DBA5BE091A3D9
-6BA18D0F277086B0D773556F6DF40271C8038B3CEE459794AB12FE3A6037C850
-C9C4F1CD1618B53F7A4976BF426288C7D2A41180EB090C9421E8BED372E8EE3F
-C4D4C5ACE2590766FBF42B79ABAEE8AA572820C4
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-cleartomark
-%%EndFont 
-%%BeginFont: CMSS10
-%!PS-AdobeFont-1.1: CMSS10 1.0
-%%CreationDate: 1991 Aug 20 17:33:34
-% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
-11 dict begin
-/FontInfo 7 dict dup begin
-/version (1.0) readonly def
-/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def
-/FullName (CMSS10) readonly def
-/FamilyName (Computer Modern) readonly def
-/Weight (Medium) readonly def
-/ItalicAngle 0 def
-/isFixedPitch false def
-end readonly def
-/FontName /CMSS10 def
-/PaintType 0 def
-/FontType 1 def
-/FontMatrix [0.001 0 0 0.001 0 0] readonly def
-/Encoding 256 array
-0 1 255 {1 index exch /.notdef put} for
-dup 40 /parenleft put
-dup 41 /parenright put
-readonly def
-/FontBBox{-61 -250 999 759}readonly def
-currentdict end
-currentfile eexec
-D9D66F633B846A97B686A97E45A3D0AA052A014267B7904EB3C0D3BD0B83D891
-016CA6CA4B712ADEB258FAAB9A130EE605E61F77FC1B738ABC7C51CD46EF8171
-9098D5FEE67660E69A7AB91B58F29A4D79E57022F783EB0FBBB6D4F4EC35014F
-D2DECBA99459A4C59DF0C6EBA150284454E707DC2100C15B76B4C19B84363758
-469A6C558785B226332152109871A9883487DD7710949204DDCF837E6A8708B8
-2BDBF16FBC7512FAA308A093FE5CF7158F1163BDCEEA888D07B439DBD4E8B4C9
-D198C03874B5E6F8FBF4922065A92BC3E66D05DE53971CB1424510E892442858
-D69CE1F76E4DA76C87C763A4B2FE36321E54B1328C9155B8ED6361855A151723
-3386AEA3D042B8D89C8C0E9A33E5DF3B466F7BB8C2C8A4ED4CDAFF55FC6D3EE6
-0AF2CEBFC1AC3A6E6692F8BB81F82D86BAE85016AD62FCB05467082C2E5AD348
-44D1439C2B59F65590E57CA0DE481A7A34E79931B1513C4C30156170409A4BB8
-46D412D1DAF88AD30722F12DBCA1CCC6B4BCC28D06B0D29149DDEC520C8FBA13
-6B82E2E1790F00B216282FF122EF0D47B70A1B29514DDF7C0435ED238C14BDF5
-6DA243117FBEF7398F97EB95597707ED63C6797EBA1B46EA19ABB1DABDA171B3
-16CD500F5D64CBFBE4F9CBC3E66A34427D3C4D0C432710289381F9BFD91B4FF4
-1E3A896C3EEA2F3105C218877D6C0C6B763760FA364D00065E1CAE9DCB5676ED
-286A9ED0D1C946DCA6A2A670EE0936FB4706CC62E234CFEED34AA615C48D2872
-A087F30990C85E64BA68F3D5C117123467DB411C9F2D6F6858CC70C1E352C477
-713097321B4C4FD4C5CDE305415F998E7245908EEDE6E056A736EA77BD8C639C
-3A79FFD0B74B3D28F0494A115F2841CF8A8827AB5608F96FD8998A5F40FB3DFE
-3AA0C7696DE4E1D18DC0D6E84B943175FC38FFC42A9C0CBB13A908978C98BFE5
-034F88480F32B9DEB2FD228FF6CB0B89B045AB02020C82E3F5716DC640613185
-9F597CE262729BC52132F43922B9E28BB71A30AC8709634561B22D13C4FAFE0A
-12C4451969226B220038AD8DDA990A4E2CAD53DBEAB698898BBD3046234EB4EA
-901287E71CB41296C431383AB85F18882F65BE36923F6C0FD6FADAC5B42FDB68
-64C06E047434FA7A659EF7F3D1AA8E547939FBF9C2ED7AC829F03CA59AFFBFA5
-A7AD2E0FC7BBE619961AE1785D09444B333993199FFED007382B54DDAEBE21E0
-1E75E0AB6D309DBE53BC7BB9F95D342F51798574D70B95021FA40163A86BE6C9
-342536A5730837C522D5314B1289D9B7E4EDD108BE7F35A20AB2A16608F6F007
-6DDD702A5A9BA1325CE2C1CD020DF677872135CF04F4E4F1E9AA6B494E2BC22F
-107C331A7E80718B030A1103804D144802E3B03EF7CB083BCCDEAC7B43F1B4F5
-C1BF6016741B741CF7E12B4BF95221A72CC9F4657264771AA69C73DA1DA29102
-65D01A0E61F3024E672AFCCBE13CD0B7F54AE1418B72E357A0BABB4D03073B1D
-F4EB54F899AD4A41A9F94DC200880A0DB99D67235A2451B25F710C29A882865B
-A922E56E9FC16756014FA5CBDB1C32750BD6835A70EB715CEA19A8872041905E
-8C660BACDCA26C8247D6B3C10FA5DC240E433E479AC6AFCF57CF96697FF46BE6
-44748E
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-cleartomark
-%%EndFont 
-%%BeginFont: CMTT10
-%!PS-AdobeFont-1.1: CMTT10 1.00B
-%%CreationDate: 1992 Apr 26 10:42:42
-% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
-11 dict begin
-/FontInfo 7 dict dup begin
-/version (1.00B) readonly def
-/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def
-/FullName (CMTT10) readonly def
-/FamilyName (Computer Modern) readonly def
-/Weight (Medium) readonly def
-/ItalicAngle 0 def
-/isFixedPitch true def
-end readonly def
-/FontName /CMTT10 def
-/PaintType 0 def
-/FontType 1 def
-/FontMatrix [0.001 0 0 0.001 0 0] readonly def
-/Encoding 256 array
-0 1 255 {1 index exch /.notdef put} for
-dup 33 /exclam put
-dup 34 /quotedbl put
-dup 35 /numbersign put
-dup 36 /dollar put
-dup 37 /percent put
-dup 38 /ampersand put
-dup 39 /quoteright put
-dup 40 /parenleft put
-dup 41 /parenright put
-dup 42 /asterisk put
-dup 43 /plus put
-dup 44 /comma put
-dup 45 /hyphen put
-dup 46 /period put
-dup 47 /slash put
-dup 48 /zero put
-dup 49 /one put
-dup 50 /two put
-dup 52 /four put
-dup 53 /five put
-dup 55 /seven put
-dup 56 /eight put
-dup 58 /colon put
-dup 59 /semicolon put
-dup 60 /less put
-dup 61 /equal put
-dup 62 /greater put
-dup 63 /question put
-dup 64 /at put
-dup 65 /A put
-dup 66 /B put
-dup 67 /C put
-dup 68 /D put
-dup 69 /E put
-dup 70 /F put
-dup 71 /G put
-dup 72 /H put
-dup 73 /I put
-dup 75 /K put
-dup 76 /L put
-dup 77 /M put
-dup 78 /N put
-dup 79 /O put
-dup 80 /P put
-dup 81 /Q put
-dup 82 /R put
-dup 83 /S put
-dup 84 /T put
-dup 85 /U put
-dup 86 /V put
-dup 87 /W put
-dup 88 /X put
-dup 89 /Y put
-dup 90 /Z put
-dup 91 /bracketleft put
-dup 92 /backslash put
-dup 93 /bracketright put
-dup 95 /underscore put
-dup 96 /quoteleft put
-dup 97 /a put
-dup 98 /b put
-dup 99 /c put
-dup 100 /d put
-dup 101 /e put
-dup 102 /f put
-dup 103 /g put
-dup 104 /h put
-dup 105 /i put
-dup 106 /j put
-dup 107 /k put
-dup 108 /l put
-dup 109 /m put
-dup 110 /n put
-dup 111 /o put
-dup 112 /p put
-dup 113 /q put
-dup 114 /r put
-dup 115 /s put
-dup 116 /t put
-dup 117 /u put
-dup 118 /v put
-dup 119 /w put
-dup 120 /x put
-dup 121 /y put
-dup 122 /z put
-dup 123 /braceleft put
-dup 124 /bar put
-dup 125 /braceright put
-dup 126 /asciitilde put
-readonly def
-/FontBBox{-4 -235 731 800}readonly def
-currentdict end
-currentfile eexec
-D9D66F633B846A97B686A97E45A3D0AA052A014267B7904EB3C0D3BD0B83D891
-016CA6CA4B712ADEB258FAAB9A130EE605E61F77FC1B738ABC7C51CD46EF8171
-9098D5FEE67660E69A7AB91B58F29A4D79E57022F783EB0FBBB6D4F4EC35014F
-D2DECBA99459A4C59DF0C6EBA150284454E707DC2100C15B76B4C19B84363758
-469A6C558785B226332152109871A9883487DD7710949204DDCF837E6A8708B8
-2BDBF16FBC7512FAA308A093FE5F00F963068B8232429ED8B7CF6A3D879A2D19
-38DD5C4467F9DD8C5D1A2000B3A6BF2F25629BAEC199AE8BD4BA6ED9BBF7DABF
-D0E153BAB1C17900D4FCE209622ACD19E7C74C2807D0397357ED07AB460D5204
-EB3A45B7AC4D106B7303AD8348853032A745F417943F9B4FED652B835AA49727
-A8B4117AFF1D4BCE831EB510B6851796D0BE6982B76620CB3CE0C22CACDD4593
-F244C14EEC0E5A7C4AC42392F81C01BC4257FE12AF33F4BFEA9108FF11CF9714
-4DD6EC70A2C4C1E4F328A1EB25E43525FB1E16C07E28CC359DF61F426B7D41EA
-6A0C84DD63275395A503AAE908E1C82D389FD12A21E86999799E7F24A994472E
-A10EAE77096709BE0D11AAD24A30D96E15A51D720AFB3B10D2E0AC8DC1A1204B
-E8725E00D7E3A96F9978BC19377034D93D080C4391E579C34FF9FC2379CB119F
-1E5BBEA91AE20F343C6420BE1E2BD0636B04FCCC0BEE0DC2D56D66F06DB22438
-452822CBEAF03EE9EAA8398F276EC0D92A7FB978C17805DB2F4A7DFBA56FD6AF
-8670EB364F01DE8FCAFBAF657D68C3A03112915736CEABAA8BA5C0AC25288369
-5D49BD891FABEFE8699A0AE3ED85B48ACB22229E15623399C93DE7D935734ADA
-DA7A1462C111D44AD53EA35B57E5D0B5FC0B481820E43222DB8EFCD5D30E15F9
-BA304FA879392EE0BCC0E1A61E74B3A1FC3A3D170218D7244580C7AA0DC65D19
-741FA5FE6F8CBF60250ACC27454BBF0897CA4B909C83A56672958752ED4B5E79
-E18660764F155E86F09EFA9F7685F2F5027EC85A775287B30E2069DE4E4D5712
-E7D033481A53A2702BA7542C71062173039030CF28D8B9C63B5596A9B42B33E7
-D922944A38713383D3648A4AF160A3B0C8F3379BA4372BE2E7EA49AABA75AEEE
-C5DDE1D8BF68483C3D21271280ABB91D54CC819680322EAB72E1250A760BC8DA
-726405EFE420635B5B7F0B48752C06083E92BDE06401C42A2C528C8A60381227
-CEBEF0C9440DC034DAD9C19FB27A350233112B0A339366B7373CE058456E0E1F
-139936F6CC9B50441C2F5994977426AD7DC8C717E737F8C201EA55AD94908336
-FFE9568C0E6EF3202D8CD7B7A6CC203EC601F9A7E2A4395ABA3406503DECAC56
-B03219CEBD0E465EA0F635F26D984F5942E4FB186AB874F3E74CC2F2E378BD83
-57CD1B63C9DE9963587B7457D56024D95645ADE0D95DEA748A6ECC6809C2A7E8
-6A568F83BFB184B31349A771DD72ED3FFE8D16E3138EC49EC6D7524E611331C6
-DB2E16059C9A12512C7208E3B30F04273E20BAF41EF8C96BA4B17F31572BDD15
-3FB7D15CE31684D721083208D7698A31D07160927C9A7CF8B7EBE81A83C0BD46
-9CA06245FDA37F0F2DF7948A20D121660A73E079F4ABDD8F90367BDBBA323957
-062438FF3B28A3880380CDC76A055096D30FABA4AECAF238ABC2513F089A6C4D
-67EA0050A34F5DBE5FE32D9E75E67F4C87AD8115DBFC00124DB4D3F4CB62CA02
-59BFE46E90DE9ED306D6CDC51005C233BD39F41B264E2892AD23E8F93C8C61A0
-B5C5CC1021411DAB515039DCAC06E1FAEFA259E6AB07135CBB345E90E2BD64AE
-37B9A46934BEB383D3AB1787A2656FCCEA6467ECC2582807E7DED181C53829A7
-1818C3FB17567D81D1A833E0559798D06163781D7895C31B1D81CC439AD51CA0
-5E33E96253064B684F3261EF86AA8452B32E9C5907153BBD692BF8BD4AC45E3D
-7161488C716CEFAA695877B03781F64840D49C9C1BCE9D5E759BF1812712F2EE
-054A34F2153AD6C953E795B6F40AFAB115C5FCDD1864A85C1AEF5DAF40337068
-08730BA7AC580213881F8AF1F76FC830EC76BE4CE6E090A1F91618595AB6D1FB
-A885D04A4E73C9C7A923D813275810DD2B2A3AB4FAE4BDA24FC170A4BCF46E05
-572529A19B09E5ADEAADD071EAC20C5DA884C7D414F5AC5206E87E53989B7378
-BADCEEC6FCDD4B4EA03EA994FDF6A80A2E232B1A007B7554471FC1DA24901896
-9CA84283A02FA1D9176026BC1529147F19D07521A4997B70258FFC03821EED0C
-D44BC9C2E67C3CD9971954C58BF1775D61115B75E26AFCC3B7CE6E5ECB8CCDFB
-640DE440334737D63F539385F83BBF603B631AB2F750DBAE707F5D008591A05E
-9D532C165FA35B580D690138463047F77F10FD4FDC8F724367545C0F5B6AF978
-B6AFA49624EC2AEBCB2D19E9652CC74B66289E42A8FC4A694F13626C3CA05926
-C1369F80FF1114F0EB03CFA40C37B2327992DD0CC598F10BD9D1483080CF33C1
-02DE0CA7BC38424C3438B4CDBEE66793A2480A15BF47F2FC621E66CC563F5052
-491ECDD9C38BE1966161403BC22BA41CB3FF9E90A70A99205ECC558C928F2FE6
-5EA5203977100FD3ABE953E7E5BA57AE0700E33A0ECB6FC6953C9029B25D61C5
-F57323AEA10B43D5A46C6F248F021E096E02AD7EB00923B0229336369EC82FE1
-F1C198456B9982956549CC441B859501FAA0CE507A8B131F10BC99B060B8113C
-2DB536DE8485DF33F1BDF4FCD571098CC6FC6B2A828D8478991B354B2309E31D
-0DAE3E8FAA0189B3C1E8208FC4C31FBF64689BF81BE39FFC2E680246BCFE4448
-8FFF4C7522CC12B622EE7982E0F52863B97965AC2CB74444618C691975D758E5
-53878C44180D2BCAC4CDFF06D1F109FF858198CD225C7F9BCE564D861394730B
-9A47876CDAA300EBAA793BDD2881D6D0A66D3727C871D97F199FAF1CA45425BF
-5B4A161F8C1408A20FFAEAD31141B18ADE6D229F57CE29E92DF9FD553274CDE4
-28E94100A930CD8F41F9BF6285743EC5DFC9BADB196021E045BA231B0DFFC8E7
-3EB7B7BC8F641CF337FE57D17BCD02C4980FF1A649EE62D2445C28033355500F
-B460C58BF63DE130BA82909404613348149F01DA396AF06195B4F42D402F22A3
-708DAB87F85EA515B743CB94D464F1C980F0BEC03EC7E34911F288459B59B672
-9474C93CB8A8A016ED52201F4E43830FF8ECFD652924BDA223DA5E2B2D6C057E
-C8E558872D762C0EA343657A627FEB5F492114D38ECA96B14AACAA7EDD85B562
-EA087D768A96507C1E814574B08442C49EA2AF4DD67C322C3D8DD4686632067F
-01E7E62E8486C163A39C28F7070318FE91167D148265BBAE808916900F0B45FC
-C106F3CB047BE800BF442A75BCFEB94E7DC7E317845097A30F1D2686439BE077
-741A968F3D4C5927030192D52CF2536D4F7489323EAB74EFADEAE1FE3F887925
-8E106352FA0ED99EBC97D693D287AD29E57FD1AA6A9EC121041636311364FCDF
-045E969FFB7761D0EDED38DB4477DA4CEB05758B314CA631E704AEA1827B3A3B
-8CF8B4785147426AC7F85D15760C964305EC631B21F6280E31DED8549F100B89
-918D6A48BCA74FE4EF45A6E4F9B694C2324B1E700256B84B7DDA3C18EF854626
-DC54291003BB1108B99C1E730C8E562830E12A561F1C292B1EBF809EBC2558DB
-71F8949C9B435513BF01AB86D7A7989287D028AC882A98B56EEBC95582D054D8
-21BBD6D4AE1483616321E1C148699B82B3343C2D63BAC0BD2910E0EE97ABE442
-0EE6003D124D45E4CE75C995BF7A75AABC96B9617EDD5ED91C69FA3928F93325
-D7E354E81F8F63E25AFBA8044D95FE560D74DF51FD00F8803E5C257D380A3CE9
-6F2824EE3C538B1CCD59B4BE7DA742200FCFAD187722EECDF8FFCB59C8306AA0
-FEE3C0689093FFF1FD393D24F1B1A6F0A5CC523AB1DC5A34C768B6FDE57F756A
-DEEFB6ACC7DC990C0EA07872B9364D2D024B2D56DFB4103242184E0DFA8E2A24
-A6C5F4DDFB1A3F86A508DC15AE85B1C5A8416175B5F1FF33B4CB70FFA6701D5D
-D3EE3294391DB669C03DAC462C501555E031AA6E7F221DAA99999E87B2C345CB
-2350D7F62242635E55D926FECAF4CFD3B55266BC86722AB631771BFDE91AB7D1
-B55C8651BDCA3BBE77D49E26E8A7B56478068613FB132521C4C800CA93A93CC2
-601D4869ABF79EAEC353363F6A8E7005831B925323D7370B1EDA9CB91626E452
-35E961B3DCEFFA27D8D0092DD911951D4EC48F9BCBF4F19E6DFF6831B5755BF3
-A593FA1314455C1923E8A8DEABC87A93CB4CD22E1CACA7C4A4F6172F7DA6B6A6
-D07E45DA2FCF16C67D730EC221E3E3217CB907756C5783DB363E775598FF8342
-70EB36BD2307E359A7A10DB2FDA8BA18264B7C7159FD6B1C568DCBC67FE75AB1
-A1751BDB4246A135AF6646044E7EA3BE868DC2B2643395129034B14DF42F4B77
-D513EDA2E438DBAEB147CA6F41256048DC034680E91CC5B6B800FA42F0857911
-82790F473119BF368D5A49257D66C665563406265A47661D560329BC4CAEC9E0
-775695224BDD347A896E0A41163D548B8DD7018DF368E3E6FE364DDAAC020B88
-20A6C218CF0D40B300B166B3125D81BCF6C04F43EC7F1C1E3522C7D119473F03
-266547389DAAB843F9AD52D94F12BD620763FD8C13B0C43B29E40373CC86E9A7
-D83F222E5B2448BFB419B3BA7ED209B30485C78F7E0C6C48212B8418B14FC2BD
-F4C928C7699F67D6CCA3DA7462D3744280578250E7E6728781DFF9CE34B5403B
-07030E9C4B2E69D4309823DE0CE13EE758834416F9DD6F90B8DDECA1C7603DBF
-62058D4E768DC18AB628815C30F59CADA4D5BDE8B40F1A59C3CAE107D1696823
-C3AE4393AD8BD1C5AE24AEB00D2D2CE88762D31AB2B1A1D462037F2F1B3B48DB
-57298490CF0C4EF23C342152265F86E3A0BA147E3700DC3E889475548A24C577
-D11399C971DC4CB8C122066D20B1FD862CCC440C6D9F9C0D91267CEBC252C67B
-A6C7E545DDE69BBA4F5407ED30A8EE165E05E78FFD7632AB5641D76A41C6AF36
-1497E6A3A7D86C4C0D3B4916F044CEBEFF2EB0514F4CF9FB967CA2C1E3676A96
-D30B2CADFF05C328B68914FB584EA5F41A66AE4BCC94D9A0E3006F82A9B90EF1
-00D1519240D0A1E0810B0B061841A49143FD0EC4B14BE095EFF5BF06F2BF4226
-0635EE011E3F05E80838EF86B6F1F183F578873813A6AEA87428BED4A3AAC9E3
-5DD0FE857FC76936B979D12973A5823E75E0A8731AD914B666D8DAE2C8199E56
-0E236D47F36549AEAC1A74951D43A453ADD5154A937EC9CDCAF9D3728406596B
-6EA7C1AE4CB09854B52523D6788BAB7AB1CE4389A811E4E8451E3695AC9D336D
-B51E9E493E65628FBFD51D6DA8227AD05BF2C4A15076A51A3B83D9975018BBF2
-B3CB2EBC72B9E577C740CC64854635C7637DA157F697EE3EE1FB4E5657CA602A
-842AC29523B20BFCB1850C5B329DFC307A17498FF4C0D1050E4A0B72B1B7063D
-9E651B9C33C732DEEA4B858E8CBD2B7F507A42323F0F625AB5322DC866E06197
-C3F761F22576CD6C228FF69E54BB1D9B054C6B8BE3C60430A69C2609A32EDEB1
-BC2B1AD00BE0D32E32A66D19E590BC8FE6245782387EAB2E2C55660A3DDF63C2
-A18EEBDA448A6CA3E3AFE4E562A7AA0DA87C31DBC83F208E7D8382E64082A4C3
-EEFD83068DE6DA96F90E3553BD664314FAC4A6BCCA6E520A5D0D9BB4511389B4
-E3E3ACA3F51D47B62F11D8B80A7C75299196F525F9582F33B295CCFCEED4A27A
-601CD8052C9BAE30A11BCFF10E426498D23A0E0584C0D171DFA3D52696A1B866
-10413FA62745A826988BFFF1D543271A4DF7AE242A7BCFE154FECCB63247E5B0
-12F45E0DABE15654E160747A4882CEDF036AF7F3A69F11904B8D4E7FB7CD5801
-3A407C9281685669EDECCF91BA3B25AB55AC8E7AD12C9D26839DC9F698C1A854
-2CF430F2B625D3E629D865A013369573A36B89D6A76133E667F952923C387660
-E2B8BB1B09CD385A33CE8DE5208A7A9B404B845DCF9B1872AFB734DCB5E72BF6
-655FBE94E54E6994C4D5FA652D7CAFB00DFFC85475DFD7D8CA078581985DB551
-531482FBBED61652E862F84CAC42C4D786F274DEA28CB8058EE64CB3DBA19940
-8E9ADF1306E971AC8ED60F42268548D16339DCCF0FCB2A52D70241D531469CDD
-F306E350EEBC4610B237B93E9D4385D1414B30812C41FB899A5D16ADF8DC4081
-1F207C8CAAE4D39B99E9386C5AAADBDE232E8B751811C971126DF8229D802153
-5DB62D286DADFC847D98AAB73B159F61F6F1BBA9D4E18C71D982436294178EDB
-9D3E2C3394F824B1A67B381224AC2B126DC07F9D1FB1FEB55E4E1698130584E6
-EC789847090AC359A465C33889FD6770BE79EAB44A489BE86DC210C61167CACF
-328BCC50EDED458A10EC0C0EC907A808B902B92ACABE442C8D17503980929F06
-0EF04CEB2828302E9EAEA75B43A142A791508D1C3576B0F0584AF2064BDE04D5
-4B2A98DD648974BB712F4D4FA0C3E3F247355709CA187F2E22808847E5BFC0C5
-A2D2F6B53340A943379D26BF95AD0E771FDEE47E88299FBA70EEEA09B5CAE91F
-3920F5E3DF158B31E60971DAED8211FE21CB82609B581A20DD60D738C186A8F2
-AD2F826A9031831BD1B510A11BE5C61D683922957A8D909773AE1EC6CA3E615C
-21AC4ACDC6FABCC1DE0007D16F137B2698D92C312D5913D35BB703A678425D42
-E4E4923C3D6B844682219916B33163CE6D87EFD43ECCEF7BEDD597401FA75A70
-A3D902BF4D8716FF47E5D7B1587ADF4EE2F8718BD6EE9A3FA58460E875AD7E78
-45C2F49981B3E4DDAF2A0E5463BD845A2B7F65A4A7F58B78194AE04F58FE53E1
-6F8029DBFF18E1B52BDA098793EF741C1E4A705A158E47FEF0B7F7DEFB9C9C3B
-1A0B82DF66E71AD34E0F0A0AEF314E6040902ABA0822A44B2040156EC942A78B
-60E26257686A1C15873986DE3BCFED2A5AED392F9470991040D5147951C84D34
-715E767FC6D1BD855C6FFFFC9B8E0F21303AC01D15E21024CD2936D8BB054E54
-11303C2A225999ACE40F838B36DBC92791AD97112408409FDE74D7CE35B206FF
-29C9FB23F71D5D65B2E8961A006B04B81836430E0FF3986EF0DFAAF222DEE50D
-D39EF1CD8AEDCC1E7BCDE93D0BEADBDA95781F67E5AD523DCD2404B89ADB12C2
-54519D2627D577B7BCCB6E9D8A2DC4AB0C9F2FF27EFC6BF14F0E187860719120
-A9F604B57AB0473B695038883A6138727F1E093C1DC8848EE2B6B7AB3375E2C2
-4F9666D60D376AF5EC01F409FD3EEE13B0C67A31DC55A2C3C0C9E7B6AD07FFBB
-1D91E809AA64890EEDBF695D161FC4F51EB72514E575DBDEFEA70867508B1E19
-8DA5D6FA85F0B1E544D4A3A2F430CCCD13077D9E46DF94AED300DC90F196AEFA
-212E5D45C17285E2D13A44E524243A668A23A6C97BC7B6F68321CD4837618CA0
-3D1FBF8EC7C61EE2569A16357D23011C2273B7224C03BB5D1D1767D04B11AED4
-9B0F2157E84576AB864EFF097A6171529E0E6ADB1F42139C91C4CEFA543C06BF
-C5D1B3DDA23822234BF0E898D46CBD9A316101E411389856CA6504AB7C1DF7A3
-8602E41303C4E967EEB54D56BEAF159BE060557C9DD0116D88D6B2430DFAF48C
-DE6868A6D74A2DE94052E1B44F0CAA0B88469B0E4E778250EA1F121ADD0D0899
-7C88B17A3E719643F9E1E18F781DDA306190BC8725156AA13DE6B589C55B4218
-6E03A3E33B7C31156859DA3070035BBD6B7FC2FBE3DCB9E946895B633754FD2E
-CB0919F53655C852FC66C25C83511FE4D11BBA1948EC094FE024234B43FA4161
-D6D7B6917C423D80FEEFD12B32C50F45C46643DBEB2756BB3639ADDB4A628FBF
-A08381FDA81E9004DE04644BAC33AC06CC46DEA3B61785F3F7AB20EB09AD90BF
-5C522512C09AF7B9B64D2FCB88D297C9113302D601778F4A40502208BDFB6237
-0A58517F03F4EB24ACAEBACFED72DB99C6F09B1A9B52C072A5B4573A0A327A90
-98A10BAB75124A00B8CE0AEEF29A6EB6423B02BE542D9CF5C1C2583AB23B949E
-E7F60F643EE1DE8F9EF5A4EE1851970565CC391B1849BFD1CD5CC99E949E3C69
-986292D09396DB57FE068AF5E1FB61A7C2B8C6044EDDF17F8C5B2DB9ADAD93FE
-38618487018274733019813027AB1C43D778F02EB94B09FCA7F3E21C566CCF63
-3172A02827FA8056D59E26C74EEFB7B651EDE7C74EF43D205941A58DE5F5ABC1
-0DAB2E0AD8617CA26CA9902DF93AFD42C4DF308D8DECEADB384A913358B0F279
-766F18E6F9C94EAF754C74F2180C61417899EE7C01B52E5EE873AA1EFFCC0DD2
-B58D93E68C4AA4111E7964E82FF7D18A67A14FD181AEE2E12C400E6BE3DAD5F1
-33B0DFD95227F3BAB381813D9E76BE7266A13A7B0DF06BEF237B40B5DC81B5D7
-C601FDFD07965FBA6A51D65DEA26CC0652F149BA86BD366AB2A510CD5DE9B163
-7601EB4273B0703D5ADA2126FA5472CD4FCEE99AF2A7AFB79810433DC93D025A
-9CDA1E3D431FA18BBEAB333A510083A1F76A718723D43635826B51868CC0C85E
-F16A2A7AF39FA6693A605A65DF42851C444F61CA38E073412AC89E7324997AD0
-2B709EFE96F05B0FC60C4A3C804AF6D2A6C0EEF850728CA7DD5419DF8BF1C324
-4DF2DB944A683FECDA2B29AB564FE6F659037FC499F1D6FB7A6374C5C336C8C7
-4591354CB1E6AF135261AA3222FA156E6128F3EADD591030F59B3D1F0619B506
-498CC2EFA72C35E88EF37DCBC6CEDF837C522E88A5652F947C5407D8FBAF2448
-EAA1F4C03A8A0C173946415FC06B4604F77952C5913E4263B741CD9B1512912B
-0CF9D89F82133719BF9D48C7127BDFAB0B2801134127C23F84F8AC313E23F91E
-2D357B97A35985B1815E50B645B60A837D530E8AC939EFFD5B336659BECA5F2D
-F45CAAAF2BFC57BECAA1A80156CBB1D82FE32639981412B4798501A1404F8458
-0FB53F483971A364D4E4390EA18575885E29ED8C391827AFAD7126C1A7A43E9E
-2998941601EA863F89ED0CD76DE298D594D167DD4C11C161D54C804E8AFD78A6
-6C5A1AFC0C939DFF1659C4853CEED6F1BBD689465EAFAA059AA41CF4226C7691
-71854745CE754500AEF5C77F1DBA47C84C62DDB4F8FBD127C29483189EE00F67
-19F601A4C0A61BE1ED927F76A8EB787D7EE62E292CD2AFB1D4396A5338AA16A5
-463B0C8CBE73FE4BBCD4517A4385A77971457C554FBD6DEBF75F696DEEA34C2F
-92C01471638D82ECAAF13DFB18896EB5E3D52A5F10E22CEE6542F7DA10E58D89
-CEE3ABADE7721C75B83CDF45EBDCDD258154628DFDF883410DDF7792EF5BF4F2
-27F56501B7910D6D39AD509A4F3163D783E941AAE24579B3AEC898F21DDA9016
-FEB7D49022E004AB49558C877C3133754BE99A3C81177D6517B0668189B55581
-49AA091B3D6E3F1933236F546F4652D464447C44309510BABA869E219EE32BD2
-3E40A733C45A71C79B2116A36A71BD75EFFEA12614AF6E4F8B3329D407D951FC
-2EAE537C9EE872EEED792D89FB56C5F0840F804DD18C1256434E58FDB0F15735
-B6EB98363E14CE4EFA0AD8A863018B924F4B4A709D2F7ECFD2C2BECCD2775390
-8EF8029AE33676EFFC5E283CC3376051EBF50EAAC53EA76BE589043E6862FC68
-D7367F06955C799FC4FD98FA4318C8B8A3874B84CF03AA2FDF381AE8D0FB2231
-FBCC5A144BE7D4F9A1449F9C2409E712F3DD107DDB167695843FABFE8EC31DD4
-A660AD9E7B05BDC4122034776412FDE112C1858F79994E3D5000513EA9F8BB94
-7E58D1BDBF9CB797585E16D6BED350A5AF0C999E409D20487DFD21D881699C93
-461F925B7930FC6867372B0D6F7BDA3BB19D8455194961D9A888F27B7ED3B1BB
-32AC650E3510EB4A563BACB079210D3B787D153EA12400590A01871C5F7A29B3
-036105A1513ED6DBECE39E7A46C9B47968C083A01C1DA428D5966811F5AB756F
-96548832B6EFEDA43C534F4CE9A2F3760750C4341C7A4407D69C90ED68932F02
-49DFA7393011EBB581997FE9FB9AA12A43C15DB1C0211D5A4CE3C1FF8E28FA0D
-4A5FE81501EF0ED2E1E2E014B613A56DF164E427AC960FF73391B054FCEB8AE3
-94545520941B8257E08286037A7AB7633E6AC7E37645455A7173A51FB9EA9115
-888A5FD0D419CB90A7D0D6F64B57B76FD74179F8A1A162F0B9D543BF53BDFEBA
-3B4ABB7BF27FC1030C6D1A188C595BE9D59F9CA8F3C43678762F6B01408471DA
-D7AE01D940A59B7A50D9C0143C0744CB90FADC94A7710450BE6437062D48E8F1
-A34326E9C68CDE3B7E6185E793C0AF505DF186BECEB66667EE0CA04B006ACF8A
-0CA407EA918AA7FDCC40D851DC56A2701E646695DBE56EA4193200D98126307F
-3FA547ABB75EEF2B33EDEF1371D7C068BB1297CD9536BA228C52F85F2372F3F0
-3C80234C9F6871D0B76687312516EFD1731F9748A14DA6978C86219CA674B267
-DFCAD0FD7BCEF477E0EDA4EFC48161C43D557C732052C5E62AED8C0B00D54A11
-FA51CA87415563603D7CAA21E29C84501DA0777B154F5DE943701E02B811366D
-05F520C9E4D53865A3060A9739CB6F6B997BD52A705BEA845DE404392F4DDCB0
-783DD19069033E1D3E095C4804202214A7E2D19A134D1307E5A121BFB04715B3
-5B989751F514B6EE5763D3A8FC64BA558C71E26834144E088FFAD3B183600D60
-A5FCEAD02C1418593B8F1E0DE6FBF324BDF262024F7117CA742260942588093D
-C08185A90F23B185B5F95767424C537DFDEAD50CC7FE3B8AE3F5108873C9C7B5
-8CA586AEF7B7F6DDE202FC22740954A10F6AE3E8266CEC7002B9F2DDBCF64CCB
-33EA716C6E1B7C0FDC9A8B697393C7FBFABA175FAE04618259614B035EE13E7B
-471ECB2ADDC4AFD3ED49FADEE0CC434375A0EDF967011361466A900CBED0E761
-5C9E3D79CC8C844D423ECAF271FFA00B43D3887B9C8860593930D17DB4C20D2A
-1E23B070B3C902FC1BC1A88D98B4EC513F38CDF7311717790E1B90B411DCFEC7
-6F238FFC87D1DE418640779C6618854E8DE423A48AD87791633A000DF0BDD49E
-F664C20CB025F17ABFC8F606754AF229638C6C0D211C0AD3AA8AC3C9DD5D624E
-103854DDA2A834C347E6F242947BF06EB5DBF0D3066E24B8F7880238F72D0F0A
-88A4B5A4DB11FEDDBA112D89C755B3759B187F4E12DB3D90CAFEFD91DA9A160A
-39A7749BD2E7DF4946457260C6D895347D074CEC06CD3E442DF682B32A9C4753
-CBE4E0F6BDCF150945268A7FE5C0BED753FD298381B34EA0829B2B94DC38007B
-B72D0FCFCA0CDF5846190A24036EDEC853AC17BC40FB9BA2F62E96581607C1A2
-B68D50F3F186D48887A5E8204DF84D7EDE2E619B66D2D2AFF968F453D8E585AF
-2B2FA4FAD81094530172426CDF5CA0F876502287DD1080047E31D18D67704D31
-07F0BA091DD050E4660FD5DE4912AB5D2A530035ADDA20AE61DCB7B30981309C
-3B6BB005EF8729AB0452697BEDDA5DE5AD7D54A1D1454DF0134203E618D02A10
-ED115131B03939E01F741A8502B88BAB4D82C670C76E7F4E8592D5D6A74D81D4
-9E8F3EB18622BE1165050D90C8681283D2476D6404E0B7197429D0F81F1C846E
-0FF2EBDBBFCC289D692608F4D82DFEE8AB1D2644195AB3E433C264E991F6E1B2
-E2B21DDBEB4E46E03537B4C3595050E65CB525E082D690240E19768AF062F89A
-2970A5C9CAEE6955937196192FCE3D42106B20AC488463B28F5B028B809529B7
-0B164044789AB45CE8FB40D70127B1F3867A1ED544CF8C8CF2E24BB6E1A514C3
-E25E327E51972FBF7E0813FEE52010E48944682FA348A67306E0166BB3069925
-C670F6954E85615EA2758DACE93EE89A43FD0BF53DC7E3BC68966B475C00AD65
-73A9778723FBC930452393FDE06823A5933CD35703C9A327AC36644105AF9277
-A0CA9A3DFC4BD348D001680125321712BA71B16C38A5128985927FB23869EECC
-893DD2688367980E7F98E8BD83110464E38EA770B88303AA1DD3F2D1D65A41A6
-EC6BCB3290B82486031D3DCBECD1E6A2C428225F56B6DD66668DEA84CE146CFB
-9958AFAF934A5FDCCCCE7B99CC8002C27DE55D867F1B9158121D04D763D9A3BC
-D0D8D87AECBEDBC250A2ECFC6F42E58A8BF069DDE94A4A162A6F76A6790EDABA
-E564B286BF200D33D9FE6774DA9BD91A1AC4E0906CC8EED350A232FB35C084C9
-3C521EACF914383169C274A83F4EB79F5A0D10E63CB8338366E3273FF831B05C
-B37840C7BCCD97B54A954C2542B5DFA9688F2735D993F7ED2F369B6BC37F8B78
-519AB0BA4C936C16C41724AB96F5941D4C6CB6431509CEE02073115C00FCD01F
-6F4B76C2F997BF2B9F09C53613766A94E1B466F9D434B73B35173DDA365EEB4F
-5B48E85C9CC0A50767FB61D7FD3C6CFE2DE088FF06E1A5DFDCA921A09D73013E
-8E9087559F081324576ABB53AEE66FBC9D248EA4DC6ED1BB821235C6A1777319
-FDE6FCDEDC54763C3F822E500D0D557E934631AF88E10BCCC06179708E2B3A99
-0172B0AB69E47849BA8067EA14C184F01CD5400964BC603DF20DDBC055936BBD
-E6527DAC9B198DCA9C418AD21FDA370D2141D70CBC8D15276C21273F9E1B93FE
-812BBEE4B0D72ADB4B593DCE83865CA3F5ECD20EE28225B729A6800E8FACAA6D
-3C64CE11492B491D15C068B37DA58360F9A7F9B9B65A508848E12B83F7DB7FD6
-772033A989B34E46955D2F4C0630494302CD9AD4247DCAE3EB91F67D9544E88D
-8FE84ECACA113ABA1D8555FFE1ABD0F431FF157C8595F4397FCCCB80D5B2B17A
-0C601D43026FB9ED0E9E9C46CB870672C1324D7283BD28E9693842269669F57B
-2EA2D0DC1A8757CF6C583A3235311BCD01539AC00ACE6ADA5EDB20306C469ED9
-73A7DC687570AA2837D3877AD51E17E0A649078E73895ED7A5550E1650A34B33
-72C2EF569CDB2242AB91129175F578BA0134635A03C04F684F7982CDA57C9E90
-4B333E4962ACA9E2686FBBCC0FC2606A514E683AD8351D9795326091339DBC1C
-D5B547E449096CA2A71D13DE28B967257F1F0731E1A4ADBFBD6DF74D6DFFA5BC
-08C4C2AE615ECD20D52BD8EF537DA2E0FEE314F1D60928A87EFC7A42C4B167FD
-537F9256E03CD8D2EEB07AC438E55C33FDBE2FE4438F6F8B29ED01D23BE33F0C
-465B0FBD1B55041D16BD5ECB92204B4F614024190EF4B87C6D03EAC1EB863005
-D3AFE487D1686A4A356252745101FDFF3F85C162AFF34B2063E6B2DB7749653A
-D3EADDE7C1FDA2F246CB3154737E277509925ED8DD86210C94B64BC7B8C4A037
-9F4C147CCFF8C2C1C431E1E8E5EFD8D49AD10E416A2DA4F45092FD499E4025BD
-93588050EE9907A530BE3FF8BD9A4BE19526AB3CCA10F70E702E90C72BEAFC15
-C66774473AF87569AF99B516CD67F2F6D26DC6DB5508AF6286AE547BC63F95C9
-DA6190EC85F3D8605DD1A7A42C7C7B60DD3BFB8E84FE0F584D8A986BF0EDFD3B
-33B6C953C8E69DA03A5D0C5DCFC66D800388B2E4473F68F52CA474FB8F1E4D1C
-F7F5119CFEDE6F45B2C6BA1E0B82DEC953A26F1104EA8C6EED38B065B02EE952
-4D7CD7FAC772D6AF3862D8FDCF7BEEC514795BF37C14D4A502EA7E10699E2B99
-0EC296F769EA6C20078265D25617B1225C7D7EEDA1A10062216EB83EBAAA8CCC
-A1C750FAAF6F44246436DB8C2CA7C3010ECF6FE9A66BA6AF6400618D170DD44F
-E231343E2368632C89C738DF38F618DD9774B75EE2B146690EE6726E6462613F
-2A6F47522F1843F126BE21A8FF4FA0D9E6AB154ECF0FFA138E036C57D49ED1DF
-517D36CA6171E5C4A26027787F2DE873B6438C55B7CFA023CBB5360B60C84496
-130968C3DFD4F16608D310458725E904300D304B660F5D6962592C7073B2C9E0
-513F8F6D25AFFD7E743A710302CD5F12AECB08ABC02E650371A5B23C18FE024C
-9827FD131A14E622E7E3F1C2DD0531CC6B91AC9E259E78463314ACA0BC7DD2E9
-B2EC250B3BD48075040FABBC5C87F5EE51B5CBE1E167DC4E151E902403A59F12
-C4E4BD1A31E95E430EB6C214EAB8F6825EDB0ECF123AE0B980C4361A2EFD55C4
-74925A2592AE2195B0267E828F7ECF7B9F674D0D3D4D2A9FE7E03AFE8214C82E
-B97F69E4ABD689257F3987F84B31AFE10133A6A86610D497EDEB680145F0D62B
-647998A8DA295A5EDB43000C63EB9106BD35C280BBDB84D478EB316E506BE0B7
-1823AE8E409652AC05D96ABB02E8815640B33BFF08793D23A2797847C7793573
-BE9A0AE34ABCBB712BA86BC2B3D614D77CDE77DAD8D41A59C29FE2138BE18717
-60F23F275BEAEA736E1237232B4F5C9171E49C5214F841ACE919411FD651D4EE
-D0E49C79E175E2AC19B0690D7F7091665EA3DA20DE5A559D1481EC058B5521F5
-D26A8B10966B6EA55E7B23CF0333D7EE20919C9168A50EF7AF4D4E57D9E5C698
-3A0626D67575BE6CBF0618C12A169F9CA62F3273C4E790DECF8590274D7D7C20
-BED651E2C65107CFE57AA16DB17F45F7F178F8B63EA3E9969FB3D6A376A416A4
-14F809F02F8B9A5331A6A1279B19C9D4CA9D9987B8FC1AD3CEF0797F53B70F25
-CBC85BFFD3AD3F1D460DBBB2CC644109668790DD2B5AB7301F37F19FD1AD0A52
-C6920EA73858AB10EF369E5ACCB35A61051ACB6586B3B5435FB7A8CE51C16EE6
-A9DE7CFB1B7C6695DEB484A8D4A723E83B573B0399AB442A1E57793F9D6AC73D
-B8DEC23105D56BEA2424E91B9DA5CAB114BDC3636F0CB34C60BF1B0DBC9174A6
-A8EEB5F832D3B44BB7593250A6ED065309DEDFD9A1B3E57E10CD1C651877151D
-B086E2D82959C3BB999C11110C2D61CB8278AC65B013F6A48D501417AC494D51
-E75F579246F4449D4D7B83612A4E80F65845B8766E95EA5129F49BD80CDD2E96
-60CE7A6EB6DFF8E9E94A77A0126892D661AD2FA3D587B7260ABF3A8449A43E9D
-1582D0D12DE3E35F3AF68BC48935487A6C8AFF614012FFE86E48DA54DD62B510
-BBCD311AAF2472B2882B0E1A8E4A0B37DCFF968A7F293B529EAEBDFF5861E56B
-FA1009DF759867512F68CFD8F01A7122CE07AD3F409F809E3B6A6FC0C5244229
-9199342EDB58E0D35B6519443411794978DB0BBD28E736491B0F04EBE14B2C1C
-3BF6EC7CBF1411BA50AAB52088B88997355417A7049F389C770F1D33DCB3CED6
-0ACEB141033F237611D473191C1C54467391EF4BEB3A64241583A603F3C79B7C
-2F0B75DCE77C4C88A1AC382503FE2F6421A3CC5824DC16AD7537BCBA4DB1EC4B
-F336F77352683BE1546356CCC9702F24DCE6D1F84AC55DC7BF562B6605A36115
-6F9D6ABA30A043C99C1A0194879AE635B4AEE1C0F0D515018F45F9EC58DD76A6
-EA0DD8EE108EE353D8CB3AE7A6E4C2391E24F4607A688E283ACF52199E20902D
-F8EB7960666C8552BFD487F6BB348DC50189B03F0F959743183B92DABDE7A8BA
-E1DE007CDA5802D6B2F00553B927D9B787630441C04593344EE7BD12DD085A64
-8FB62FB4836C5AA2B1AC7400A00C038E55DE2FB9AD92FEF7EBCD8F11378450E2
-83673F87DE599C80786B0E0BA22356CF30E9D2E16E5D27FABD579D71D399AB7D
-4485299038F6813CF8C5063CE55172E3989562DB517522BEA73A4FCBEECF85D8
-AE4A4F9CF3324EDCA9EC981DA2264FFF7284A15E3A30DDB7E347072193D0BA4A
-08A127B89F591E2702A7D4D6F95556140AA417CF5CC62D69F9457E0215AE019B
-1A8970E87074B208719B4DCEF7679D12D771DE2A01E723391D59DF7BD0A7326F
-B5695926DC92E40C177389E289200909E425D1CD28D1A19E1B1E4E41682A82C2
-7FDABF1AE57DEAFE7C395886E06524AD96E214725129A3ADF8D515FF3CF78CFA
-EF84B53620D5FFD99B1EA3F28DBABCA650B046C320A028426C44D2AE3953A9D9
-46EFD717B838F2E3FD8FAEAB40F2128F46410F1431440F60326A1198889CCDF9
-C2F9DD3D119A9132541FF09116A8C30C6E8CFFD9AA3EE31E00288566F07DC598
-D7234FDFA8F8B068E1062998F8EB6B4751CF1D4FACF98CED6581FFB46990A524
-B382A1D65C66D131BDC936A1A1834E3CE36525D63BED86416B7B7F1D24564D25
-A60990FDD9E9FB1C1BBE5FFF5DAD9D8525AAD7B823B00EECC9373D671FBA7B8A
-5166B2B4B72A93373FA9063DE4B22D7A6D1859EEB440634DB57990ACEA84D507
-69409DBF24C5A96ECEC2DFE715643FDB87703A4B42EB6D3ED5D5FC117199E324
-FA36C00AE07A6A772F6DDB48BC19F6255FA3583BF967ACD54991A78A5E3BD803
-C442C3E8438813F8E4D040FF5F287FE9D9D450F5420AFD1BDB7006A1C2965562
-D8B8BB8A8DB9E8016E69C25B6FEB864CBAC9B1635F78E57A0167E4FBC3269286
-A829BABF548377EDD4A7A7809219941BCF62160DE5EB11A6C3F73F22EEEFAD6D
-79349CA6E83DE5F014989BA7801172B7DCE74B1CBA05563434352D8CCA8DE220
-3FE92EEE6DBE5D0F15E1E4A4ADEF7BEF05DD0F5A066373B47C98CDA85509F685
-BB0A9EE13E239C34BAFA19DF1253BA3E03FBC1FC85D5387878EF5EE62B77D254
-5D7468FB55B9D5EFE11BE32F7E7FE83A8D60B15480674FEC54CE1DB50D05C58A
-3C3DBA96784AFE89468FE881C7D5E569A6387EB96A2E6C0293FCCB29FD5E3022
-6C4DABDB07C4D2B211A6C7AEB61E6151FBA636EF6403BA6C7B8BB793C5F4F7D9
-62AD6160B6705BB536C7C4C6B6049ECAC5DD72814370EF535444C611CAA0DF1C
-CE66A641A30EE8B3B8703410E55970FF5DD77E5B3932355EC6269102D7D9CEE7
-D3E78B00DB3C002CCC5A5447A3568669EBA5133D5682AFBF5589AF5E5833F539
-D767B8BADE673D65B88C8297428CB077E68FECDD2387C58D7C3EB9E545CED26E
-A1D7370F2F4DADFBD9722031A72FA1D3E8F564378D08D5D9B05DC16D1E2C187B
-C5D20ADA34B3FAB982743B3070977EA4A9CEC000C46CB79BD3E84F30D1A2D334
-6B0771A66033FCA6813F22300E643E33B130939236AA4019AF8641D0D5974AF1
-88D18EC8B25EE465FAEF3E7690391E33FA8EBF2B43A7622894356303D6E7CEB6
-FC2FF5050E1A2D21D61AE6D1F5641EC7689846BA4B7EA87A20D309EFE78C9DE8
-A10251FFB6A4E0269F7A37F566A826B1FA2C55A243769546A2BB9D4CDCF4A543
-029BFC4425E79307F1A3EBF4D5B8EA261CC4C0320E2449A381E9D8E4BA7C7F6D
-340FBC8B3C50B0E59A61E9782DCCD9BBD23D3FA9C54230C5E1CE3D0A235F33EE
-7D8EF251D33EB218D57BCA368487B0B6F7D5792CEF0B885F71DAED5BBB17BEFD
-17DEB3C15BE0F452534DD61094C298FA9B5CFA0E96D091A2589D0F69C85F8BDA
-59936C67A80AF924CBA0765706672940476C91C76FAEEFE48467FF8198468BF9
-238E2926377C2CC141CFA2B4FEAC7117FF081EF0FD3B2B48028D57EA49B448E7
-902D0690096EE6C83231FD32653432A231943718F6BB9DB10C534730BC8CF192
-02973DBD125618EF21BA17142C8DA4099A6B530F36F9C782436927BB03B9A761
-77D0ABCD53BF2398562C623260043B3E7D041B5C2A244DAAF6B57245C6A977CF
-C5A34693D558DFEB02ACC7C08393E21AE88C22E3C228A2FC4B000A14664F586A
-FAF41B2DE959CC3F58FFEBDBCB3D8CECC85660F8F6628643AC63EBE17C02A6D5
-BB3965D42559D47EEF9A98A3DDD12193A445D678E53E55A8FC95A96F3FE1F0BB
-825A0A4F158F54097880ED2DABBBF7B6DB3FAAFD59E981FAE49B79406B813E91
-DAA2AB3195A5A0CD655516A92157BD59164840B4F4A7D266B9474BA220A48599
-1C2B1DDD7BDFBD99327D677E45698F80353D43A9BADF034824473765F0EA2F10
-44B98499FC974CB913C4B64E1269E6B5BC912B34D0B89FA37879A63B93A91256
-553416F94A8B00EE325F328631787E37C9DF3AA9D7C2041DC58425FAA5DA0CCA
-BE2971E437FE146D557ABD238F8CA06C5E2966815CB4B7E1DA75A5AB83617E0A
-AA0DD4F5BFB79225F7D083B6380EF342D6AFCE6B18FBB40EEBC845D20632385E
-8063551716EDF22F257487DF1904618ADE7487F6708FAB208A911399351F71A1
-FBBE41602512D92CBA6CEE36043093FAAD2688BB0409D71B6B09C61982EDFFC7
-1BAA404D3ED854ECBFED7E9D4FCA1DF74F5BF05A1417E973C308CB805B4336A9
-2ECEB6CC76908C93D627C557B3BD77018F96DEF4145A9DDCDDE08E47F80626C2
-489C7042DF12A37C574FEE56DB542AED908C22600F22D467B8F50F4C4809015E
-EBE96D4A6288A07BEF0D73690D7FCB45995F0701D0DF507675F59FDA3DD997ED
-C349ADDB576A6F2FE117CD42978CF975246390610DF22AB9BEE4BC8124FDF869
-0D33C973FB6242981DD07E21EA24F0C4656EF450BE15FAF83BC9B5A5C38C2D68
-99412B858E80CE9ED73E513C8A169F9490C94FD74C837D338A2F627E481F09F0
-89B319F6076A70A0AF1ED9E4E8C6C9C0C697374BE102466C5870E7564C692899
-9A0FAC9A82C038FBFEBB2912E8E335FFED0AA2788856144EC2E147714075988B
-FBE652847CC46ACA47F77EA672BA21D6B1815071B85ADF862DB0F26928761F55
-92B610D5524839CACFB89A0C1C3A50063710BF3F85E48748352ED45907122625
-3D1270F4548E6893D1B25F6D0C1384DC91F6400B0AEC3BF07F634716844689E4
-EBF65C1BE2A5B31B111BEC0AD90E4D571F67C0F28A57878D2B93AA616FD1E969
-1DCDA4FD3004CEFB0536057B412318E69D9E589B852E41AB1D79C88A214631EF
-6F407003F1E303C6492BA95F475F139E9A508134E39FFA501C01F5979A062085
-E07149AAC966E190DF1C10D6C197F7D90F388AE154B401102B7155B48B5E812B
-BB035E4BF85504F0F6D73F12F1871B986DB5037FF1A07BFA91010C69F7DE4D04
-5568FD6DC581C20485C58DC87296AE14D94DD4EFCB90FC49D59B3A24FD5134AE
-228F9D6B522B9D698D82B01A2598991D427324AD1418811A30039325134A3991
-1900B9F104CCE14A6FE8060192A9BD2272390DA86710FA38968F84A0EEB722BA
-647850892C21E446C52CB44D65CE6ABAF963EF7E4373FC84B8C1C024E21D3EA3
-B9EBDD9A7C55A6F759807BFD086C78CF5B522449B1610F3BD0590C97B17B26B5
-4EED5D1395D9BFE60ED37EF4B00CB48BA1A904C4137433067EB2AEAF35030874
-D0C061F2C83B8A4283ADB386201192832E4C3C5A47031D6AF00CC267F7DE8449
-73CE55232992AE3E71131A18B348EA7D0118857000CECC69B80BAC3EF6508999
-27CBFCC211314D256E112BBAFE8BE0063F85764E2FCBA821CAFB9DEE8EEF9B21
-7B7F361B8F817576F09B9A8A33CDDDE20CD30E5D07BF072553CD55FE164112FA
-CEE7AF710FB84812E334ACBF603E21A3A1B78AB470B232041D75E041DDAAAF26
-3F3D9267E9DD307AF620E16B50064D8F5C8F1E917C8608405DE1EB8B1AD1FE90
-6EFB0F29A9540F9A0FFDF4810CE7CEF183A6AE3DDF193ED3C6DF3DFCCF989C64
-37248688B532CF9B91750A86768DB6741E2DB3312FED357B174AA9318DD6A78D
-25456E6D80B32495FAE60E5AFE0AC1A05D1D8FDAD6288CC6CBD3EF14B3B87058
-454841B2B5D37DE3ED4E5F0FC4E684836EDD69BDBEAF3C4AC483666715FF6075
-98313AF84619C2C9AEDDD0D20EF2CF95C56F5A910C628DC242FF71BEF79732C4
-93B3897BE143B1C74942F124F194EC904BF92B677FAFCB0A85C3900A75B1F0D5
-CEC1F977AC17C7EC394718CDD08AB218211A5C702FD4246E5737959F527847C4
-C1730B0AAC3E28DF726DEF7BA051EAF425E442493C7A616AC70E9658C95D417B
-29E655827D9630AF834C87EE85419F4AD1D6F618493D3C610F1409A8FFE3E5C8
-43642A161300E6C90151CD21EE11DA13C7925B7D5B44C59AF3565D89C7D9594A
-66C411A848E067424A23B13EC03FCB090A15791CE346376241809E3851388F9E
-BB90C488DB50AA60ABAC64CB67DAE8F374F2C90CFD3D8B2F2CCD41740EAE2349
-2167952F63D005C9F1F09E6DAA22077F7998CA1209633A1F719F2EED5FB3122A
-52F67D1CF0FDF42324A6C86EECDD300EBFD9494430BE5B462D70349BB64C2508
-F0D7FCA414462DD4F3CDD0C531F385179B316B7B043404DC4067D450F81366F3
-9D3BFDA706859CEB1DEE3E62C453344BB48D69D093B7B15B71FBC503E2414316
-ECEBD9F7E25C20F06F22469902954AF3B2A128F76C0B7CB6357A5D8402EDAB0C
-F5D5288D07CB484B69BB687608F51611ED3AC3780D11AC3AFA9E804EF56D8089
-64ED8A5F0589267D8330F17580BA3E35517EC2C692A66965BC089777DAA7C8E8
-9D419BC85C6DEAD167196761928B28C212B4B88A83096ECB68B84EBE98D97C85
-293B8CB1021DD541EAC2DAE1087D6464A74CDC165479940C9425D636619B1BE7
-967F7259D1A536B2D83EDB38E473311E1FD0C02A31EF851F3AD001482AEC0D9F
-D507F00DA975A2EC33F5DED8D6DD551257E20930EA0497E40C692CD76EFD6012
-2FBA02244EE7D0C540D98DB6B33AC5472AD9E653C1EA35FB2CA5A7309061E28A
-096617B9F6A34A017A42D2A13C7AEE8D875A94CFDAEA73E1EC32B2F4F0
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-cleartomark
-%%EndFont 
-%%BeginFont: CMBX12
-%!PS-AdobeFont-1.1: CMBX12 1.0
-%%CreationDate: 1991 Aug 20 16:34:54
-% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
-11 dict begin
-/FontInfo 7 dict dup begin
-/version (1.0) readonly def
-/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def
-/FullName (CMBX12) readonly def
-/FamilyName (Computer Modern) readonly def
-/Weight (Bold) readonly def
-/ItalicAngle 0 def
-/isFixedPitch false def
-end readonly def
-/FontName /CMBX12 def
-/PaintType 0 def
-/FontType 1 def
-/FontMatrix [0.001 0 0 0.001 0 0] readonly def
-/Encoding 256 array
-0 1 255 {1 index exch /.notdef put} for
-dup 44 /comma put
-dup 46 /period put
-dup 48 /zero put
-dup 49 /one put
-dup 50 /two put
-dup 51 /three put
-dup 52 /four put
-dup 53 /five put
-dup 54 /six put
-dup 55 /seven put
-dup 56 /eight put
-dup 57 /nine put
-dup 58 /colon put
-dup 65 /A put
-dup 66 /B put
-dup 67 /C put
-dup 68 /D put
-dup 69 /E put
-dup 70 /F put
-dup 71 /G put
-dup 72 /H put
-dup 73 /I put
-dup 75 /K put
-dup 76 /L put
-dup 77 /M put
-dup 78 /N put
-dup 79 /O put
-dup 80 /P put
-dup 81 /Q put
-dup 82 /R put
-dup 83 /S put
-dup 84 /T put
-dup 85 /U put
-dup 86 /V put
-dup 87 /W put
-dup 89 /Y put
-dup 97 /a put
-dup 98 /b put
-dup 99 /c put
-dup 100 /d put
-dup 101 /e put
-dup 102 /f put
-dup 103 /g put
-dup 104 /h put
-dup 105 /i put
-dup 107 /k put
-dup 108 /l put
-dup 109 /m put
-dup 110 /n put
-dup 111 /o put
-dup 112 /p put
-dup 114 /r put
-dup 115 /s put
-dup 116 /t put
-dup 117 /u put
-dup 118 /v put
-dup 119 /w put
-dup 120 /x put
-dup 121 /y put
-readonly def
-/FontBBox{-53 -251 1139 750}readonly def
-currentdict end
-currentfile eexec
-D9D66F633B846A97B686A97E45A3D0AA052A014267B7904EB3C0D3BD0B83D891
-016CA6CA4B712ADEB258FAAB9A130EE605E61F77FC1B738ABC7C51CD46EF8171
-9098D5FEE67660E69A7AB91B58F29A4D79E57022F783EB0FBBB6D4F4EC35014F
-D2DECBA99459A4C59DF0C6EBA150284454E707DC2100C15B76B4C19B84363758
-469A6C558785B226332152109871A9883487DD7710949204DDCF837E6A8708B8
-2BDBF16FBC7512FAA308A093FE5F0364CD5660F74BEE96790DE35AFA90CCF712
-B1805DA88AE375A04D99598EADFC625BDC1F9C315B6CF28C9BD427F32C745C99
-AEBE70DAAED49EA45AF94F081934AA47894A370D698ABABDA4215500B190AF26
-7FCFB7DDA2BC68605A4EF61ECCA3D61C684B47FFB5887A3BEDE0B4D30E8EBABF
-20980C23312618EB0EAF289B2924FF4A334B85D98FD68545FDADB47F991E7390
-B10EE86A46A5AF8866C010225024D5E5862D49DEB5D8ECCB95D94283C50A363D
-68A49071445610F03CE3600945118A6BC0B3AA4593104E727261C68C4A47F809
-D77E4CF27B3681F6B6F3AC498E45361BF9E01FAF5527F5E3CC790D3084674B3E
-26296F3E03321B5C555D2458578A89E72D3166A3C5D740B3ABB127CF420C316D
-F957873DA04CF0DB25A73574A4DE2E4F2D5D4E8E0B430654CF7F341A1BDB3E26
-77C194764EAD58C585F49EF10843FE020F9FDFD9008D660DE50B9BD7A2A87299
-BC319E66D781101BB956E30643A19B93C8967E1AE4719F300BFE5866F0D6DA5E
-C55E171A24D3B707EFA325D47F473764E99BC8B1108D815CF2ACADFA6C4663E8
-30855D673CE98AB78F5F829F7FA226AB57F07B3E7D4E7CE30ED3B7EB0D3035C5
-148DA8D9FA34483414FDA8E3DC9E6C479E3EEE9A11A0547FC9085FA4631AD19C
-E936E0598E3197207FA7BB6E55CFD5EF72AEC12D9A9675241C7A71316B2E148D
-E2A1732B3627109EA446CB320EBBE2E78281CDF0890E2E72B6711335857F1E23
-337C75E729701E93D5BEC0630CDC7F4E957233EC09F917E5CA703C7E93841598
-0E73843FC6619DE017C8473A6D1B2BE5142DEBA285B98FA1CC5E64D2ADB981E6
-472971848451A245DDF6AA3B8225E9AC8E4630B0FF32D679EC27ACAD85C6394E
-A6F71023B660EE883D8B676837E9EBA4E42BA8F365433A900F1DC3A9F0E88A26
-30F19E1BCE69BC499D860F9B17E6A78469F652E469E22DF3BBBCC803F7483463
-96F1C811AF62FC36891457BD3A5B988F62177864939C23E86BEB50B9FD0D186A
-1C14795945646D82AA97F66F6050F81D9279AC6CBB908C7E1F96E082B31DC1CE
-66777F3D7C18637E94FFFD28171E19E178CF932B38A8C1681877DCA0CC4BBA17
-250D9C00BCA8F753A4D3CCF503528B0CA11871F2F0E1F400FA9AA5894128D07F
-CC739AA7B0A8A3B872647E1BCC9F015E007F208CECB08EE15C91ADF0F06094CF
-A1A6ECDF5BAB53B67395C422F009C511570CE39F739F4C5187386037AEC9BAF3
-434368015408A4317115A1A8D296CF477E67C0A49614602F4B9C9007B2C78024
-E33584D32B6A1D226044CA57336FAA01585F3BA39D9616780FD6C124B63F19E2
-F20EBCFD23222358D8229B701B2703280E0B86E4771AE2C5017A3BF22A545246
-8D6BC985C2220034A34E0CA85BACDA735A9ADB3D3981E04B9AAB9E11A959AFF7
-0AC9B7C54AB816E2CF48178CCAC839D1216AF26D93547F242069F877ABA93E19
-45B75BC79A45D12E23B40D1D28074AB7D20597B517E0AC38860D1D0048661999
-4A424F6983DA23E0E6DC06D6F7EFFA87C88EAD1AAE2BC85574596B913279BCAE
-B535042306ADE5EE2AEB1FA1B833D56EE907B1FD6838369000023CA728DB364F
-6C2012E4C2614E0C662F88E2FD02B32499CAF6918DC050BAD957D7B727927B10
-24F98C9B780E6FBED86B63795719FF60F0EB582D4A5E9CDA6FE05D7FFB0625E1
-FB94151065C607914FFC72D372399283A48B6AA96421974F5AFC60E28BD25D48
-B28BCF78428B21EB03A00C878246EF8BA2A2EE7DB6AFCA47EC9A02EDBC55D2B7
-929A0B178491A4C483699AF945ACB840525647C9E7F55E11BDB76E2A6E3C2828
-FFBB5DB375F4E15293B494868FF31B07860BEADFF66311130A0BD51D976287DC
-201EB34FD81BA3274938CE0A3C68324BC9FB70C00910D7C34D507B529EAFC6CD
-24CA11385CBAC30928F4E088960C773020720312A7CCD60EA5F822E12855BEE3
-7A734C12C8956A373AA7658C809E4FDC280E3936D422FC50ACE01A66C73A4636
-BFBA5F940E08F3CA382B540FC795D6ED2D57190BFAB1430CE08F39020B29BF2E
-B1399B2D3292AA99F892520F88C5A0FF9B479ED45721EB772BC18D4DA9CB02EA
-54BDDECF4249FBA0184EEE9990EA902613B5F6D55D5B010D19188B0B36DAEB75
-922A7AE22ED53A34AC47FAD7E72374D47F349943FBDA4731D2E1CF30BC103F4F
-575A03E46F37EBAFE903C74D81D8D3F241516021862D9E203CFC1280572E0C50
-359D4E87B2976C7F35334F4744FC78E15DD7979F29308148494C2A42A2FEE1CE
-FBF756BA8683B7AB065FB07F666896832A5C83A2B85EE546FCAC2DD870FFDDCD
-19890A5FD9D88FBA6AE267FC8F1664270F3BA6B990BE056AC79E55762990CBCB
-D8D60EF5A747623D719C6A76414BDBBE4549D31C15EE2DD02D452ADDD22E64F8
-CD13525C274456A216AA919EB8B6CC3692D9128A76B03566CA33C1B0C5E3158A
-0722E8236156F1B51302BD02C97D4C00DC60B298E2731485F3EAEEB50A4D7135
-72DB3DE87ACFCE1E40C8602A6C2E00D6F3C7CD712D214A53BB8EA0B445BBCF1A
-412AFDA97AD44DA2DFD293420DE95B0B88584B2CC79AEA82685006BE5C6C783F
-9957D4B1F77E2932741E056F3FA78033BCB92FDBA00B2E498FBF1000DE6D9DAE
-299CD854743A82032DD62F04F4BFA9C5CD84D22F2CF7013C2CB6AC249D67AB12
-3396C3B333A5CBE9A97E4F07BE0DB2C71AE4EF79DF3DE952D7E473C5AB2EE898
-4968FF37D409DADF2432B774B5A0BA55AADA100D27C96102BCEDF0440CFABE41
-19D49D6BA5A8A887EE02068CB1788FA378CB0BCA436847E0925C2F883A980158
-694D66927C117212493015BCAE200249B7758DC98D849B7AEB32C78B2F1577D1
-1D91912C0522AF14F75DA48A197229C2BE08B6F8F52A839AB507C8CA524FCF24
-C91DCE6C53D784D15E691CDA18EB40BE0A7C3B24BCB99F36F7E8F77C45EF87A1
-A0932AB194A0D5E8DE4C567C6E86EB3E734F89EC1E4C485D81B90D505FDEE463
-B4EB9DCE53CDCDC19F4F99033DB2ABF9698FD153FB68576A25FD188B98CE1BB5
-B7FD420849C0835A54391C28A169F57EFB53AB29B0E9DBE776E37C04A6D6BD91
-20FCD689532059A98B4477107E868A123B273128F7E747C0F0724811DF029AA5
-22C2082D557EB8CE9DF349450C4446B4B1DEA70CC1B146AFECA06A1859D212F2
-BDAF41ED546BD1057F6F6AFF46FEE60FE8380E8899F71735D2C8D7EB9653B027
-68321432B37050229B6815A8C4A1EBFE19A76109EE29800B88E6C528054A17B7
-395CF482AE62445478D6F41C0E7B8F78313DF1DBED339E389875A8E883867921
-1AB53CA0A3980594830B13200073F966F005D1B1402877CA4A46485318A1B863
-24464445E264EBDD3567E9273FF01016EC1CDC142FD9DBF980F099509F330305
-3B138C51170BCE3D59072ABA6C241048612434271419A80DFDD1BA156A8AD54B
-39E45FE64F1B558A712D93C46D729A1F8B364CBECA67A618FA1337247C08D0CB
-9B0A418C729668147DEA47BBDE342C2E0E29A83631077DF34C861EDC9E80EFEA
-75BE3040125BCC60D4FB69CDB78C25ADA72F2D104CAB8D3FBAAB5E8931A7B8FB
-6EB41252542F302C11D3DCBA66345EFD816D9623BE2019AC332577E1CE8E6A8B
-3DA487BC54B82EA9876961A4968E772603F37936C5ECB4C14625DC3E36E4BE99
-E692EFD3AD7B0814DA32B13D6C64FCE750F80E5985E708E54C7A545429496894
-6451BB8608F12DEFBD585ED62A2452377DD91AE560D14E54C9A449FABBD16F26
-AAD76026066CD8F5677BC18FE9F9BF89344D90B454B7A7FF20A3EF058816ECAC
-D49486263BB4AC87ABBDF43D8BE4A09F0DEF416C95AD8DA91E187A5528390F9F
-FE96D0CEC53022F1DD7C565ADCCBAD63B1105CF11DAEA2D2A9D827171CDE1B90
-0A71D9C2C782B74884C9605DAF063F99759079E3A821196781C756614E400149
-A6199699F5F2AA97859FC36699F86504D58BA77D14810424C2A3FD79247F3DE2
-1EE6CE0011250433EC504A3146827949468227E75687BB81EE40F4EDC2803F71
-CCE3BB5F60FB0E121253C3385543B6AF741BFD67158D2F38227A29C3ABA429A3
-33BC564E8867C1FBB058ED6EEC8FD0D835AAF442103348751C7AD941D1B16566
-761ED69AFCEB4B213CC9A75A1C01260B545654EFDE7042C8E7ABD0508F43D4E8
-B50E6E799A5CC8507E814EBA958EC2DD9655CBD18B018F284658C4C8299532AA
-48EA747019D9DB74DAF848CB76192C0125C7A51695E8DCB73C4BAD826A83FC9D
-AB177685DDF5CE3A7DCA21B02FBC6DD7B52B6C086B0C06AA24919A38845FB295
-1EA169C8D17210C14E712CD90099334C9EF449FCE214CF640FF39CA1DA2120FF
-CF5A9F387B3E0C7EE4904DBA33444A668316DCAC18B85C98826F5FCA5CAB12A5
-9F75424521CAF417B326F8975E6574E5C9E55EE2772FE20AEC65C4CB692A2425
-9A29F75EDF9B31C2503C6A7E79A17B957EB19D4E5E666C83AEA92A8DBDB033EF
-1628486E2BFCAC1C9E32676488BA13B3001F6AA2EA03747A3EA5D220A5F33B29
-4AC5AD623B0C9A4D0C4C6D41F89E3FC325747170BCB0803A7D988627CDACDEEB
-0D9DFE8AC357C07F6B60E90C5DA3ACF868F145237D1710895C4859A319FEE038
-D7FCC9D56620607F5392D1998C6BB1B2ED2BF4F9B5BB6F80AB0CC5A535D52BE3
-A996A70D581CE43C365EEE168ADAD963D0B2892F56FDECFA8664737A5CC0595D
-3D135410CE5CB4B094746D5CD8C3355C4BF77F9D5375334A119833995EBF757F
-EAEC6ECAD4A62B90917006A1AE4632D758D437DB443D6D7661434C9A8813BB1A
-80C5389D2210F4BFA057DA7900FDF6B60212B5747E586FB865E2FF4260B2E3D8
-0C78E003F3FD527925BCA22DFB87EC7DB2188309D8DF6C6424048D99C0CD7F18
-478740413A816B92D6A38AF0025FC79B4A8D35E2B3FF5BED4523B21E9CE49350
-AB42D25A5B42B1A49D5A468C38635E91AA1B6C835C18D5B2506533B4E77EC0D1
-CEEE1D66569498F6482BEAC3FD818EA2B3191A3A67212EB41D8C725F52937F99
-06D33486272E82A3C9B5A5457D0219A3CFFCA0F18D246AE6506915E055F2E1BE
-8678389745B28EDC2DB006A0AA5A4C6483B24DDC0F3A38EED7CF30FA00B81CD5
-56757EA8C44164F2BDE071226598D6246C8A0CF972AF52331D0D2A192C98A320
-01435C77CA0B61256EE98D373A3A8F2B41622A6BCD5AEFEB9004B90F8A9558C5
-D4EF6B36912E854014AB35841B99F6E1AC11F09F536134DE90865F721DF86DA0
-D13B6BA2146D75696B2C2DE21F4ABAC37B3C0CA96BDBAE8334E2FA6E38F75866
-FF7ED0F64D5896CC294032AB86E5C328A6B06C2225A617F39CCE8B69AFD5B041
-9B1F9FF00401D7F0C9189B79B0C2B700945EEEBCAA38A9E202CD5B68469542DE
-E9EA782D7C494CC6B411D614867B498B2C2729D65D6087C3D17956227B02345A
-FD3E8653A3D4A9CE1FBC46C7E8690C803B4556A80F05674CE27069D24563DA46
-7D2C4219D242453D06650A9522A3184246937CBF4EA2A188C6B2A71E29E0CFB2
-934B93550B451AE9847F96AE18647C09C927C4AC12846180DBABF3F145FE073E
-45C129D663E21A1F1F1F6755F6FECD1C1F7061939722D403BC2F2E856BBC25DA
-F069F39A441C837FDDD2563B3A370EF73F0835D34DA86CE65162917E84C76201
-0A5F2854830822FAA545FC0A0F77E62A79545FDCAE728FCCDF2B720C0AF9A9C1
-2FB5878E9831D42FC9A56D41904B1551DB2E7410EE055948CDB8B9625C6DC618
-F8282896C1C258608234A372CF031E5660949250072025B7EC4E535899EA8BD8
-D1CE98A870C159964CEBC0ECEA5DEBBAC1CAF86A398D9C84A076ED630991501C
-141AE2DED1688C1F1389ADC40B025407BAE7EF3AA847EEBC61DF58A6C3FC8F2A
-D9FC820DCF1DB3CD2FD32A46BE1B98D87F3D291C8229DD9169E370BB10706B0A
-606D45D65E3F9A4D5CA23DBF23972668A0D0FAD4D485AFF44AE284B91EA6BB13
-108B9E0AA5C0CE5EE80D9A6D10114ADAF14AC05569B7CA7F7A8444D75D504700
-89E7DE515BB66E320816BB61DF65D9B6DBCDF5BFEB475EB6BC93661D39BFABF2
-B542CB9E5F38AB3271CAEC60AFDE8FF533DAD806B61C17A985FA5CD8E537D941
-020D2CF7CAD6389AD73578558B49795CA5D2831FDEA1BB0BC181AC848EDD5FBF
-E9A052FCD5BCFB883C704D80D9CA06C7D147645742EC0A601F66A5D198A7B6D1
-7851CF5D65E96E4D801D87FD271D079A59AA5E96E345053FA3CF427A80D78A5A
-D5007F12ACEAA2F21E612AC2ADD7B35941EAEC728CE7BF64809270D09D469BC0
-422C3760D1D6FFAA75B0F36A1961278A5E63406E4AAED935320C68A3E5515C5C
-226488F98CAC3B04F016A03E343A9835EE8E373A6B49C685F1B02798436BB098
-DF854825EA14526B337630DFC27914F374DE9A915D77369DDD88FEAC626B0183
-EECE378BD9B0FF448EAA2B656A20102641B181433CAEB6D6A0A30A8346E710B6
-B9E2C6103103CD25CBC8195C02DDB8A6E4216F24FEC5E0F8092D9B74F7945F58
-C8BBEDE1F6993592E723AD0F343B2B118098F64D52BC5726B253BCC4EE3526C2
-49D22E2AE02CC44F11C2DF0F3AB0AE48BA03795C1ED3D5E10B1158690D402C43
-FF3DB585DBF3EB9EAA8083DE62B198E2D81D9CCF4CFD13D5F5DCCC1A07F6D94A
-E3E11DB551CC1124229C84F311EAD1EA54B30918A44CE0CB565C29C099ABCED3
-25EE19B9B1775C25E2BCC0D580275F4E526571B074CD8531C66A6302FED3EFE6
-C516427341082633AF21777A02140C90779B33CA0D31FB4D8A79474454AF949E
-855C5E1D1D9510B2759A9DF9626A2DA26B6DCF05E68ABB11B5321D9299F3D8C3
-91588707B63CDFD33FE34BECACA899612072830172F1481702541322416E3F55
-BFD2BBFDD9A4322E27576748EA043E4092603BC4B79019674A29378AE9A35A82
-42405650D62A13DBDE6BDD55A831685DE31F9C20AB76AE2337E1E7CC6B0FB44C
-FC396190083575E186BACB52932AA11624D830A58AFBB2670E39242F8609BA50
-BCB062991C4A193C09466F4FF2AC09F1E7C094F502E664F129500F2B93ACC2CE
-B916D080C6DE142E496526F0C9A5804688896D31895D0C0ABB7A0AE4918D3481
-5360C8CD618960A8F014B0AD55575C50B901C5A57AEF996230642A5C8DA0944A
-76ECDEC0730E6EFC7FADD09D9095FB540F377D460D159CCFD7059B0A34F738DF
-012B7CD8BA63A47263423A9A70C14BF72386746772CA8954C5BD1F1FC4C77115
-FD47E72638FFA322F399D7123BA9DB28022589735875F058DC05521309DE8B01
-27387F330C5489B1752B789561FAB8C92ADF7778068BC27E25C245539AD11B15
-017A7AFD7BFAD63D0DC400B369194B8D9E4D298D548FC1968A0063A7EB8FE1EF
-71AE77F99B78F6529CF9415E886C565EC305BEADEC0AB65DEABAC40DCD5E2430
-36315F52C005A9802DC49944A423F1828513EB381F24B0FEFFB99FB53FB86A4D
-DBFD7B5994FE736820AEB30AB5832ED56048A846A1388D3BA69C68180E017170
-CD6EDF246A127BD8D8D24664171024ED9E1A99279DB6B5FC91E4248EDB7EF45D
-5A9A851EDED58F11D586EA07F9D32D80BFF6112B4395916FBB5DC06BA0896492
-D9C770F973522E6CB5CCC92A08CA1F9067F7ED0A35CE4103EF73C3BEEE22F2EF
-B3445433295AFC30D464929C0607FCD7495F9A6C0F5727CD8844BC3EAE436046
-B8D484DE4B8BCE607904DBE5D01924A86E18F73C5D530BBDFE7DEEA30ECF1C80
-D10614F7713CEA36DCA8AB9DD488C57E4D0E846B48433DE35205B57506175570
-F8A0740F6B654B7C3B744C5D030827DD29952CD579BAC27E25AD67D946F707F1
-EC44D9AA1FA6F99BBC9F473FE5191C7A918951F66AB09A9AE6980DBE3CB1742A
-9D95175D440778A3F9CB5B5C9A0AFDA59EFB9EFA6883C836D562E2629C9202A1
-0C12FB0B7CD4313B89FC47202D9A9131BAA40082CBD9F3B0757853D79FBB63DC
-4230097FD151C9620F5238C8A3900D3F4D0A4E9DFACBE9CEAA5042A8DA1C9838
-554C754D1F947DA0F13861F71919A886935409EABDE5BDF80AB586AD80FDFAC3
-259A58CA5B2164FE4E8BB441C76DFAE412F9D8F6A0791D654C8846415B8F50EE
-2B51DDE94C594C35B200F6394727F6AACAB7BCA7089728C4D43D08D92085E899
-4D49B867A20D4D988269E5BE9075B8598815B98A33F71EF1DC57A16F1F8A6A21
-5EFCFCB8D5D6EA63BD71AA812A06B65178BA861B49D228B0562CB643CC272FD5
-5B75D91C52B23F5119AE56700D9316162537A4B11004DD2B36CD5BEEF7CF5007
-1321A5A8FE603B12EB3AA6874E2ACB44FF89228BED8B457E1E671DB262FB3999
-F21754172CD06E250734DD0B037D39BC7F95B59F706D96B3438FBD36F8096AE1
-CEF0C6B206FD1FC09A267F05C2FCAD9D48B7ED79C5274ABB901EBC710C56CB51
-29314F4FBEEA48BF0C63582C5071627BE63F1A8997D45DDF0777F983629FDF43
-1C88D91790B1ADD40007131D9EBFD2775CCC7DB5F43E6549E6DEA92FD93A6E62
-5F19742A969B6DF6835E58FDBA0ACA7561DDA911B8872C5F7649CC798CAE3BAB
-D34BE5B8FBC192CD49DBDF869865C89CD13D5E1DEEB078CA83B54115E398B027
-F02F20A2FA1598CE55D6261D71F91B8250C8C2F2774E21C623AB8558E6BE220F
-5CF0D43E6F48ABB5E7AE213266ECAB04810CE30BF85EE98D8145427EC8CFF5E9
-86E1BF142EB41D8C7276DE545605BF8104806355303409CAF619EAF139DF67A0
-7F768B867066C95F429DFDF448465B94979CAB16A0DA2B116A4F42968EEFAC43
-C89E9A4B2C9C4EAFFDD84FA4C3A997D042389392AD291133A42152ECEB35D361
-7FEDF25957674492074C77EE5DFBF544DEBCC883C292390C9DDF991B0287D8F6
-D3D070EC59023AEC64BEEF14F870339B83AE10DFFC49AE74AEB45ECAE8AC2E34
-243D7520D4845D89FFA6B594D8AB95DAEA65868E4C6FA56616233269F4DD0A94
-FBCDE3B1BE6D7A98F62E6E58208CF6B524B9B826757A5E443A07FDDB057C550F
-D3992B9E464E6EE833CC53086F03F990C82B36E9A1810B24560DB09814C855DC
-2CDCE238364E42B9382BEE77D9C29BC8606E9A514C0EA0C83884764F6E034E20
-9BC152C2F10F0C867CA4CC98D0D0769FC254D8DBA38215F6CC85F3767104126B
-2CE70A4D40C8F8CE5895FACAF369FD9BCD27441EAB29EA0427FB06F42F8DD689
-11533849A08759376E87AC341AEE5FB95CB3152B2BDFE9CB046E012AA3389B15
-EAFBADF9C8869E53B009964B02239BB7B9DB3AE01D0F5B33DF315520A733745F
-904BB8B003624B3B8511D67BECD37DED77F0237C0D51B72A7F7F92EEE9A04BFA
-9EFC02EF4699C2EC0F4699CA60381C4F2A39351AEE2772AFEDACC90D92333F89
-54D65F161351FB24368068A78C527BCF188204033CB08065A892828F43C05A2C
-2648F9A979733190786A03D47A727FDFE8EDBA3F49255BC3795E373CE2A933B5
-2A72E2F670977F4986156487B4974BDB948E452E2DB429D3D2FB8266F7B36626
-1CC210760CFEC9D23C9621ABE14FC18AD7C9FDAD031D56CE72EB7982B653B8F0
-D991F9B5A0946AD308355EDFBB2A3F62FC8B57B4FF2F66FB35647381E545972B
-8099A7DB9CED093055CE1A414062458D701ACA675362598AD0ED73944EA9DAFD
-6E3043B91DC39077C7758439BE71CABC2C16B59303B49FA4C02B5A5844A01367
-0B8068FA9B4CB58C5F24FF462AF013F8EEED386DC5E5C0CE30E5908E722E40FF
-860C02C080E14282980C09C5307B63806D01E6A61A37D39DC2446470D7D90E45
-2E3CBF1847BF4BF8D7845AEE4AF1CE34978577FAE2A71D501F97C85BE49C1583
-A07B590256324105AC3601D061149ECFD87E1FA726089A2C19D1A4B2B273FC8B
-0FBA9E23F63E1766E5FB216877FFEAB2473D023BD1F793F6D7561850BA060C43
-7342682C622E0203BE175097AC69CF9324A87BABCE6FDB4AF08E27C3D8E7D65F
-DB19F68B3335B3EC2F5E8EE1462C52AACCB0A9898205855ED815A42830675F9D
-457479A33BA6A034F3BBAF66799EAD3A152624C3F50279264C8CF38A66DF5FD9
-97F9EAB52B7A280667B42983D65DFE44144BA34FB1BEEC5FE1B7E3D201038C47
-88A5DAE0E719C8E4B3D2988BF536F2C94962BCACB12A8A28CA12487B709585CE
-A36F7C289BDAFC52E9374B05989D2B409ADAD6F18149BEC1DDD16C8FF5B18BB5
-4AEBD7FBF9C62174979665D2BA7914ECBE3D0DFDE3FC2AA6FF7F88A37240A353
-D3EBD858B0D1FF939F40449BA58D592B85F2C6217279FB62B484C2C4EB0B6B5A
-D35FD070653A16443D51D291C4A9200AAB185A28EED382C91E307A3B4AA1AF26
-EF0E6837730BA40038B336863431D30525DF8AAFB6FDC92C0E98E5528956D4CB
-330DE95CB79542670A8C89A813C356255A263FDDDBBC543AC5D7B2CFD1AE25F0
-D6A01465EACF69BA84AEDB6F0154AA25AEBD7927D636CEF416494AC8E5340424
-4CD0AC43C5C03598CB6BD8049B34B2641060DBB0E3FCB5AC60BE229F355D94C4
-225FEA17641AA23AEE655FF569F90E24C8CF27082E4E7AAD634F281612F87705
-A15B7C05BE8330AA970EB82B01DB4AF18B3117BFB53860B40B370A98EE513E4F
-2E6108BA508172CEB8BCD22CE4FE5188D2C7DE76862A3F78747DDEE3A617336C
-BB7D3EE52D46ECB52DC057E82B6704A2F1A0C3115AE8E7D2D8B31517DE586AD7
-DB72A4BEDF2D22F883F70DF03593CAC92EBABC5AFCCDE1A78509E024C6AAF558
-C45C7F1A4AAA246778F967ADAAC21699B3C2F7F53CCD424642892C3173F61703
-BCA47E653C62458309689785EF8EE2922E80634449F0D5F7A8D70FF8561E30DD
-CC464AA3F3760E7ACD1988BB44770F258EC07172DFEFC95AFE45B7143F61BA47
-EFE05472C43A1240E4ECA51664614FB9E46C08CB00B3BEB9A1979E7CCD6E198B
-40D5D6FF8435ED0234FDBC6786B0EED8646EB3F49B68D2F4E238A3A5FB509FFD
-0C18D7370C768192A66770F77F254F3D6CE99865EE852437775E2ECF6A070D06
-629D8CD6349D0E40738DFE2B2322F8E9B53A40B6FF442230071FE3C8F1CB165B
-5AC61446AF6DDCBAF235AF8C3E5897B295F5C898871FC7676EE5536F23D948CD
-730F67D658DCE8BA321DE88BFC5B2D5AFB76D04CB7BDF3142E1CDBE22218DB9D
-A2187DB6C2BA28F8B1E56E4FBDA64A73CC93FD301DE2ED8661D61D21A54B258D
-664D91305B62BC03F9FBAD1C9B09643DBEB374950E8BDECD2840E3B48A2B0045
-85FF594BB6AFCFB94BC4F82AA8B81073E9A991AFE6A39709606967EA58F6B498
-12B336A139F1C8398B10C43468E4D54F8DF36F74B9A34271759CF249F6987E16
-9A119CB6BA19300AA1602D2A1A68E7859E0BED5ADE943681014B83E4098A9724
-E7BFD908CF6E90A25EFD148CAC2017C71D84D8EF214FF9417B0FC8E475513D3A
-39530CD26C08004CFFDCDA05A7858684F5AEC1CCC131ADD910A51A93A4F1E288
-8486BFA3CB3ED0015D8527731C53D273F5C51DF3768C1FA7C004537457D0EC86
-45F2484A76FE59C55523C21EA566D7E75A6A825001173F6A34AED8537C0D312D
-9E5AF5BBB8C19BEA4071BE9B14E75EED39BEB37A6E78CCC9C58FC9BD74E93A16
-BA479DAD22BF879F7F76D7CE0A39478190787C410D4E7BAB6CA813CC2AEE1A7F
-E1F35431FF07AD1A5DAFAA1853385E96022553EC5B1B625118FCB6C1B30051CA
-E231DE09B98D9D99E821F50D435BE18DF0621F60D9D5D37A55CECE00EEC5711E
-3DA7A696E412EC22B7B0A48B56FB2FCC5CAB6BCCA80F73AB9E77536E03AEBB21
-AA2E7F5FB2687E7A726B1F24FE9ABD388C2DBFFB8C7645ECA1C3192007EDD223
-6B79D161F94F838C53E1D994A9D89409D998427A4CCA56580F5CEFCD3163F90E
-F4DFFFDDAD963264CFD034C40C11B5A425C1A51D2DE781E03EB2648A409819AC
-1D6C73F4EA08031B6ADCE61F80323FEAF3C049ED4F7A6008F4EC04193CF051AD
-96F15C6A47771B4CB267DF45255EFF5D7BEA21C4B8F06598E0FC2F3E7CBC2B1E
-2DDA078D01D9B55D8A20AF61666493B74A369F7B64C2D7B7E3109B033026EC7E
-C2A01BE7C8EA7AAD1F533008F6CCDD3AA0898238BE055BAE80E15D3ED7778C1C
-0AD9E39ECC67FD9B9910011F980EF3618F8E91ECED76263D0A13B1917A86AE3D
-D800879EE7D742328B0B1448AF3540732D52C9D6530CE36032586D5EE643BF51
-17492A3BF5CB62C9EEA019F77026B13581541A06A1098D6F0E330196E0B929E3
-D923C0B43C28D0BDACB639F7D0474B84A43A3CB8A2C61FFF0C07479EF58825F1
-133487DE8B2A382B58538855165F466A3F066BF3BB90F3E49B8F92D69A02D0B1
-F79BF014DF7946D0E492E936837C9102240302E26726943BE70C0BC64BB08D4A
-9C0ABF2E1444980CD359553D67B178B52797BD03F64C69BBC4737C654DC2FFA5
-29F64C35D7CDF2EE29DA97A7BA4D32E475702767290E984BF9EE85EBCFDBDA24
-C984826C7564AD82249AD05DD17BCDDFDE646E822492CB3E6648C414F9DB4A20
-A76F6DA8EFA046A0A50A2834671B66852CEEBBBB57F1C162F6C5BCE7A3962A2B
-D08D49B3D8A66882132B494FD028BF40161BD24B07F3E851B372D8883BA6B955
-51F5A535D8D44E9F5141420798770F368079954549B505F94541B3988BB1716E
-C4336D6FF12EC282597DA8DA87EB66BFE134885A7A1E27DCAC28B228A50CB41B
-5AEA034FACBE35433B0764F451A51DDCAA3480A07910501080A94EDE59D95CFA
-94C8EF5FA0E86E751A1DB653D6C9022B94CEF77EE80455FE513F17F07E3B6366
-B14032684004763E72298DCDF3A57222D64DEE2E49D8FBFA309FA6F4B78F7414
-CB30A2C8F4168B9DC02C4D489CA1305DB50D1F2F02AD88680285C85DE712D2AC
-673C235672CD6B428766575C7032971930AE264A768D40474C275E1CA9D8E690
-E592C565FFA7EA1CBC7F7FA586ED8E2987217F871642F677A588DF3C10F2A855
-78B74CEEA437FC6328DA6E1FF942CE6FA971381FA6440490C0DB60644E1E4237
-E2431B475D7AD678E6A72AD0A3ED0EB7E026ADD2666D99EBD4F05C2E1C25FD19
-86641C1AE15DFA7489AB7B26393A8F77F1410507520ECECECEE8CF5D6CA41F7B
-85EEC1DFBE32CF43514CE691289A06286A46AC0FD23A23F7CB60293685ABCA88
-2996BBDE3D98F57EEF708B22007F920EEF74A55BEA404F6B7DCEE10DDBC99241
-E003FFCE303F78C5EBE1E4A60F33C1FE91877806F225712D2095141E1E43BF0A
-23B42A2C3BA99F1F3C46127211F4B9D8BEC8563B24D3EA2F1D3C37C59EED8E60
-EBC4A7466E963667BCBA206DDC700B1F99D5BB54B1ADB843797DEADA6DFF0D58
-43E1EBEBAFEB9706857712EDD1F21D0DD1102A95950223A36BD84BA78E7085C4
-ABC2B9852D1BDF205905948B35F85A553FA3719B0E6D5CE2D2167EA238ED03E6
-C83B2909079CF9D0AC89E8ADF899FFEF1A951158C8257C256AD7F00819F29F37
-A3C4D48A6C7D1FD0D212107F462406BE4C74C7D241CA0BA93FE225A31190505B
-B47F435974F65228B39D69A2CD94D2E64EC17A0AE11FBD7F88BA89868CAB6B45
-06C9F7C0788A6758594796186EF6561723D9E3D540A0E4C3F4681285E3E53BB6
-0DA52F4A2BDD414D1748586BCC68BB408775EA9A38B02C1D30A12E6EF56D702A
-4B2A443854D9F13DAD905587E879497455F80FAF60D5E03F0951A5F57D6B0B87
-FE19E867C3EA3CB445527EFAA4110770828CCF0E013C102C2B1DB02AB939D46A
-8EB43B028A10E6C7EC3E616FB498DBD170333013A4008635B23F7CCDCD8A0879
-34D2FF449D6F2B90C31AAD0EF5F5AFB312E0FD496FBF5177999EBA15A448E6BB
-A45F5460FA0E
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-cleartomark
-%%EndFont 
-%%BeginFont: CMSL10
-%!PS-AdobeFont-1.1: CMSL10 1.0
-%%CreationDate: 1991 Aug 20 16:40:20
-% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
-11 dict begin
-/FontInfo 7 dict dup begin
-/version (1.0) readonly def
-/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def
-/FullName (CMSL10) readonly def
-/FamilyName (Computer Modern) readonly def
-/Weight (Medium) readonly def
-/ItalicAngle -9.46 def
-/isFixedPitch false def
-end readonly def
-/FontName /CMSL10 def
-/PaintType 0 def
-/FontType 1 def
-/FontMatrix [0.001 0 0 0.001 0 0] readonly def
-/Encoding 256 array
-0 1 255 {1 index exch /.notdef put} for
-dup 12 /fi put
-dup 13 /fl put
-dup 42 /asterisk put
-dup 44 /comma put
-dup 45 /hyphen put
-dup 46 /period put
-dup 48 /zero put
-dup 49 /one put
-dup 65 /A put
-dup 66 /B put
-dup 67 /C put
-dup 68 /D put
-dup 69 /E put
-dup 70 /F put
-dup 72 /H put
-dup 73 /I put
-dup 75 /K put
-dup 76 /L put
-dup 77 /M put
-dup 78 /N put
-dup 79 /O put
-dup 80 /P put
-dup 82 /R put
-dup 83 /S put
-dup 84 /T put
-dup 85 /U put
-dup 87 /W put
-dup 97 /a put
-dup 98 /b put
-dup 99 /c put
-dup 100 /d put
-dup 101 /e put
-dup 102 /f put
-dup 103 /g put
-dup 104 /h put
-dup 105 /i put
-dup 107 /k put
-dup 108 /l put
-dup 109 /m put
-dup 110 /n put
-dup 111 /o put
-dup 112 /p put
-dup 113 /q put
-dup 114 /r put
-dup 115 /s put
-dup 116 /t put
-dup 117 /u put
-dup 118 /v put
-dup 119 /w put
-dup 120 /x put
-dup 121 /y put
-readonly def
-/FontBBox{-62 -250 1123 750}readonly def
-currentdict end
-currentfile eexec
-D9D66F633B846A97B686A97E45A3D0AA0529731C99A784CCBE85B4993B2EEBDE
-3B12D472B7CF54651EF21185116A69AB1096ED4BAD2F646635E019B6417CC77B
-532F85D811C70D1429A19A5307EF63EB5C5E02C89FC6C20F6D9D89E7D91FE470
-B72BEFDA23F5DF76BE05AF4CE93137A219ED8A04A9D7D6FDF37E6B7FCDE0D90B
-986423E5960A5D9FBB4C956556E8DF90CBFAEC476FA36FD9A5C8175C9AF513FE
-D919C2DDD26BDC0D99398B9F4D03D5993DFC0930297866E1CD0A319B6B1FD958
-9429B9D40924DC059325D9D4CC0344F3F997A99E6CC0676735EBCD685AAC9142
-08DAFEC78BB41AFC2F1C219910BDF41D6279284EF600B69776CA15BC8A34347C
-30783C52AFA60FBE3E353E2AE354CF87B558776A22C776C7A0B5AB5CE1F941EF
-C2D9CAC37294BF407A671F10E4743BF842143F4F7DFEE643BA3BBD8BB9E3F24A
-BCCF7F0ADF8BA500620C81033EAE8C4EF2C1DEF13AC575F1B3BBB66F093D3B78
-5412B82B67FFA087AF57182B2230F9F2137180CA58A7D9B2C822FF04BE6CD01D
-43B2CA7058C7B953F6D9B5D6E91ECBAA5CDE1159B0E59C83DBAD96D6C8C8BAB1
-374EF652D10C0F3EE7104472C98DD3572AAF2D45A70BF7061447E21EE3C3BF23
-DF39C2D1B35B42CD5297BEBE6BC94F7C9DC6E61EC67E4F677256FED9064BD3E4
-B51A71B1D27CA4E5AA9E1D8080E6DAB5310711EEF87C40859FA935B19524AE83
-63B163FA8397BDFF443227FEDF7DB27DC35D89FB1C5E435DA0619A5C88AFC73B
-89A2DF5E767C5B536BC7167A840A0C32BD57A14DE69A7D0D819AC36FF32F908A
-5070F32983BB007437E3500799DF5E0AD3710A4C0000F0098D5BE99F2EB9C1C2
-C444FD9552D0DCA098A94B3BF176F511CEE13DB7EFFAED7C47B5ADCF8D4700F5
-7A5FD1B49560969BF5C44F3749370663A04776F749DDD7B50674D93254426C4B
-EFE264BEE7810EC93784B7C01A7F29EFD92547E13A2C7851A2E709FBD5B87850
-4A44F08F56A542DBE072D2FBC58D9E6468E1AB858DC35240E30D31C7AC13D6C5
-7D2BB634BEE96FA0E10F842B11A789F72A333DD6DDCB1BC23227EBC406E50B40
-30AF0C48E6359AB0C46898CDAF1118E46BFF8B00F54EACBC2AC262AB898C42B9
-2E080C10DE923C1959C82C55551BEAECA9B83CB5E9364252CFCC406A27FC43B9
-69C5BB80A41C85D80EDDCD5029E57D77EF4128B40B131799B4DE0EBAE17C595D
-A450B79703CFDBFF2D455DA910FE978A84F7ED3852BD7E3969F36C3F1BA3BE81
-9B299A46CE155CDD0BB9584D8278BC323B43C6DC278E2AD1D77733116900D045
-22458514359B1EF0E9CFA4516B201C65031C002AA05514C2318959530C2EB73F
-439703EB108208492CE953091DB2E5C76FF7E7005FEBCB01A6C62BC823004287
-105EA9213BF4C9D647629BEAE0F304A369E81C6D9A1F24B98E78D0EDE100A874
-E3063FAC51AC5972896DD151B0780613872DA4FEED668C04FB312B7C5186AFF7
-70655B9658FEDFF154B9A13D1B5836F9AF14D66F46D1C45AC7D463648AF9EEF6
-0C17A66F7E9073A202EC00779327F491B51DF6C55D13251D23431B796B2E59AF
-3931607D3F1A2A045B89891E7591B2B12D8EF65F473E1247400C6B659B75E8BF
-E440E150F2E99A1B10747489BB813DFB1D4E7AA795E2214D3BD602CBA6E8573E
-1F4CEB6A1838B9DA209396DD3B91614A4A385198D49FBC655525E2B06F030E3C
-49283EEC4478DE3AF41861F4735D3ECE7D33C691A166035F8673FDB0B531F898
-C4E7072358144B59BACA5023AAE3E8036DD031AC6FEBE425DB5F90D39A79E7CE
-CA99E6F917EEE7DF2D08126F9136AA95E8E41B478D989C03F4F878F997FBFE04
-2B95720FDA3337E5BED32E070BAC56AF0E355B069E1E6889C9D6F6937BAAC791
-5AED48536D08CA46BB78B23C68BFDC6DE47EEAAB93F2BBC77108230F1EB87F73
-DAF46561BB346ABAFBDB677554C9BC17A2E51C9A9E8B2E34209066D68F00D78A
-AF29130FA85DD757793C9F5A530571F5CD66A5F4C5E9FE9E169DE23B884BE1E0
-B2615D294132B328FFEB8F0442ABA50E426A56EFE98BEECC32AC74A7F0F8FDF3
-73DAFB11640FB3E56630463621162219B9724EBEE31091FCF2D8EB2804DE56A1
-6324D717C155FF07E5018CEECCD323F0BA1069107C9622347DF889F4B160FF6A
-ABD50968D9FA47DCD238F1C9604776700F419D41838368BF226CB8C55C205FDD
-56B5A3F323249337E20A596FB953D84C0985722F0F9C839535DCD876CFD1DB11
-EAD95F81FCBEAC415D2805AA0942008AA3D7AC928A05DC19783FCEC5E01160C9
-63C211AC8E01A6462D900E53B4D1F0D8C10D84F1237324688A08CBBA419E59B0
-6AC55D092D154BBA8DC0B55333776A50F2913818BE2140ED1812AB499E2E38CF
-67542F031FD267289A7AB060FAD335561BD52289D97D2AD51A0873EDC8949C19
-AE7B8FB4D296509D9D995FD051EAB8BE66C6659408FAB7BDAD50C31A61523B78
-709A9D262FD5EA01F59268209B4B35D760A539EC69AEEF23DAA56C23B4ECB893
-5AC1FEDE4B478AB5F547D49F2E44018D01E64BE5F36837916F7D19BF15D9D4DB
-BCCC32DB9A28EB375D1E4325C7C693D9BD88A70C3620D0599C3342DF779716F9
-E18A42D3E13C9609DAC603A84799610FFBDA4B853A0426106394FA8E42FF8FB9
-1AE904388AFC7F2FBC1150993F5351EC17F8BCC86F41C51D51AA8845294511BC
-32AA2479F0141B465FA0ECF4D8761EFD23AFD85420C626C5C35407091A2D214B
-30A45EE381C9B898A083354F7CDBDC0CFFEDBFFF455237B54E0ECAF8309E6D8C
-FF27D347253E8BB7B417F5B44B01081377EAE2C7436B3FE3D01E464DA600827B
-079B0A2254B9F88D1C61C7F6D5617CA305D4F4238C073AE29B6D1983CF94C62E
-F0CCA0404BEBD074F11483399E45146BCCF17E6365822B7B51019FD473AEEF2A
-695D94232796C71A2C50278FDEA1C0424E58B9CEBE77B5BAB0796CBE1A784766
-A0E839511930F9CD6C8A59B0FCA8CE2EC2664F6E87ACB790C0CA1013B226EBDF
-3FADF8FBA0DDBCC7DA37FC5021921FA98F08E9288B21451BC06FD1420C069A53
-CAD2DCC57C2A66F76421D1EC65E5519A11BE065CFD614BE5990EAB0EB683A122
-1C70415F20AAE49258EEC654051C25EDFA0FB0FF0336867F7B18D76F257A8BD5
-D0F082105AA8DD426ACB8CCB1A5079CD845B99FCC4B1240E12A01BB9117CE119
-42FBAE841A1F85902BAD49E631D3AA217AEBBB2DE5B67F7DB47E06ED9FCA76B4
-C738165E8381868EA9185007FD72ECEE398152CABEDA2B0F5A978F3B49917379
-75786B51AEF3178A29DD9B16A223C84561A64E0F9B30D4C3BBF919E50F240AF4
-ABA9ABF1C1D9500DFF5651FBB53B5EEAC51A9A3B27A24BF7541345521949B30C
-39F519C040606C747FAFE8E046A98A45D02CCE57CD74A48FC33D9FF36381289C
-468139415984B5671790C38DCE919671DB1A8C0EEE1A7F54431A3C59378E829E
-F668815796359C54C7EF7305FF3FB0B0CF3E9553C1CB27FE768FE3E098BA4520
-16690A5B3F2D002113F48A8946B6898EAC1C517AF424F915CD5E5B632004B323
-F89D471BE0C1AB5934E73C355C6A72794DE07E6072D1768C25B4B8B4546847A8
-D1A0E21898CAF30F9E298B541AD0E346D4B74512D54B035AC2FA7474C06F6810
-E200C2D10C53EA5F0CAF74A7B0EEA4B9D4401EFEB642AAB30324DA2A5B89D0FF
-923616E4555CEEE924E62159EFC62B83009BBF4EDFF78BFF0465D8CFB5804C64
-3085CEB43A7D402E7E52DEA25088FFD361D3CEDBDCF1C18285C15EA1EEFE2EBB
-01AC677391DCA6DE005306F81E22BC2C8E24C4652A8CAF251EDB5E0B528A08A4
-809675DCD887033951C59F342AC595AED7A320D18BE2EC00A4FD1D7080A67FE4
-9ACA25B493EFAC70B6C0B432250D2934D05E059BBAF6B3DE86CE33F8BA70BABC
-B28E0710F87D08F06FFC885608E9168A379A2F3EB249E62B4B2A0D09D51A13AB
-4168398E09F793099C4C5EFADE04027C4E107D31E9919C08AD69AFCFBBA3C3F6
-39552C8DC60752F7FA2BAAA1CA89B8A79F0510B5054C71634CFD2D2401EB5AD3
-C71CE94410DE7AC64315BB52C82FF2E87DAE8DEB0231AC7C95FFF330576AC7E7
-709316BB5FCA67A3FA7B740E9D94E725D12289ED95E379529AD26D950E995616
-9BF5D40DEFFE7320318A6FB359F9D895F7AC454A94DACE6DCAB13103C87654D3
-8641A4029703981BA8EAB3BDF3759704E3297077853BDA0DC32DAA45BAD52B8D
-B0B3DFE4CD99E92493937D1FAE4FEF8BFD83034B14119B4E1E81192795ABCC54
-60EA53E59E388B2462579EECAE76E9D7538AE1F030A7C2EDBABFC2EF39264B25
-1AB664E8FB4FD3AFE50C5C789FE09F17047FAB6423F0B8F7245C055961A68A3E
-E52EFE2D95FF3D5D4B59926DEE73BD53760C5670825376DE0FE488EACACA1088
-BB49CC951C5123672C77452DD0141E35A4F7A519B781FB7993DB9803EEE0749A
-196ECC81583E6F6E6EA5C2483834DFC23DBC6B19073F19753B4694705DFA6498
-72E9DD7B53A123DBFEB26F2E3574160F538A4095C31739EFFB6EBFD95DF1D2D0
-484ED99692BD62E3024684F3ECC3F8F053F7316DC95E87C7FBCF72396025E3DC
-211B200C7A0B07DF73DE5C3E54AC0ED5351E730CD35E4FCE7516B4F250B63510
-1B8091E85FDA67E8CB8610FC8C3BA6102FE173418B846AD1F9497B819FDA5B78
-1BF8E370BF18B95E7B26A29B8751E63F38FC78FB882B7B69C25A7F266D958D36
-0D4C7DB1B8DA32D333B50BBDD6AE691EA480AB3DE7A5C6F818EA1E1EFA0AD197
-F03EDCC93A7CE7193DF3E9E583CDEB97D11756DAB3A8E565AFBD7929F8C71A55
-377BA9522684CFB184C8E6F6516FB73E59EE46132FCBEB878D2340FAA2BF051C
-64A0F7A398F30EF2C2A7346659CDAEDE932E5579E44EAC17EB31BED2113212E3
-1AEB2DBB63124E60ACB1C853612A1304A15059905F769C6EFD2B2E0FE93EE3E7
-A342131EF659788EAC53FDBBA84D320A6A995ADC6DA03DE53BBFD13533EE7D06
-3C43FE41104DECD6885E397B67B16FF1E1779B5FFA18B8779BB9A99521BB27B8
-9E95CB638EE5A4A41573D6B65A9AB48E20AFAB5373C75C3AA928A828FFD5B8DC
-D406C8155F94CC10260E4A2ED282C3D60B0D10E63D97893BF559979F31EA574B
-5EF21BCD88136C381C29CE35E2D3F4D63A70F979BEFF8C009AC80C759A03D559
-FE8ACE97B6BB2A713043F853AE57E5783F449B2884A3551A3CD2EF85F485684A
-6F9C0493B5F628298F49065BB1E85ABE09A5B8A97779DB4E478FA0567F76BF44
-674429A44BB35EA03D0AE4C0C92C6E674FBFBF39A9090D4E5F9A040B4339EF49
-2B1CF8DA2DD76FC000CB175245F2B4A2135CF04BDF04E9F29BC5749A790379C0
-96C57E8FFE17D61A2833D7E164E1AA1BFE817D5BEE037D4B741BFDB90646A8DB
-6C9EFF527EAFAB6FF2A8018C20298B700358229A3435EA4EDBD6B59F4C934520
-9111571018CAE0C6429027C2FF53144AA4FE93AD2AB352EAF0104FD1E5B3DFB4
-1C9627903B2BEF2B3997C8C4A158096AFCEE97DC0A74AAE2563D1922A3C5AE7E
-A99ED5BCE2A6E9B775E3986872A9F638625E0CBCD65A80565B3D559147A506FF
-81AE38AC03BD4A600E98DD856A8611C6E163088DD4807862F794CD4D324C0FE8
-0D96CB0F9052B4F2835B840DA6783020EC367270EA1E184FC9FEF9D22FCDBC8B
-192699B51FBE05B9A80170035929D859F29C44130990ABE674D9ED6C69177580
-9676EEAF9C053F4C514756F3481ED1F6609AA2FB5C6D97F548E4524A423F4B00
-2E4DE423FD134FDF417F74EA4CC17F5E96D153C9D10BB4993123AB835A6B62E2
-CCD4E356062EAB83F019B6FFC689E66D87D4D7F9C95DB7B5CA6614E196552D9D
-CABB6B6E0AC3890579CA7F20DEBF377DACD6C0697499110E1B10F2C58641E105
-8B47211E6EDFBE63E38EB023B4904D7459030BA1C4E37F393C8BBF0D3FADA478
-29BFB4436B69238810FAB19C66FEE3DE6DFB43D55F2DFD07A9064DEA5E552104
-4950740A18F1F0B6A7AF574EA71D4BE3714164D362F138868BC698CC4465F675
-AB8EC379E75934696B8E5CB849454F5AACD2C658694DCFDB8A5E9D06D5EA13F9
-A46AD15FD3049207DFB2B51EACC552254C4D4D495CF457FF81990C0A07E56245
-C1CF05311B52547C599817B72E81162540578B35E5296E416F3F0F3BF8A55DBE
-22559D5D8352DC7952F6FF1849FD4E257C6F0A063884CDE3F5AAB1893CAC5475
-E78F71D55D1EFEFE2150AFB45066565828CB2B9D672823E669F9DA47E2B5BE5C
-8EB31A2FA16CC6D342BA046DFC32AF799476E80C36D87FE89BEAC2455E0757AB
-F0AA69CE84B9955EE420973A9FCD16C89032F34EDF41BF044A123F41BDDF71CA
-BA5BA6B46E798EAEC9219AECBAA99BC417D7F5C5CD1589D5F84C2F19D7F9A913
-11A7D6C47005514705C9C617E4BD55D92D1528608F72346DDE5DDB47F5C59CE9
-0B27F41EBA097FDB67C335031B5AF893E9BBF4DFE945229E2C4272115A69B65D
-025A58098AD6B366207A2065E865EF8F8EA1363A4D5FB0F62A556CC885110B98
-2FF55126EAB50DEC2F28415C27588470601B1FBB9E8FECD8A9C55E213BED6E88
-3CA6CA6A3FFFDCAF09E748EA047CA109960F92ABAAAF99602F5B13E4D998516B
-B459808807B52949589A22166076A28EBD49DA713802B7731E047104630C89AF
-C99FF96B9B16E0901696AB8E665CB94C39C0957F08423AB6188B3F505B37A3EC
-A449345CD1208BE2845C13E9FA2B8D03300928FA5424A7F8F27E9D6716EAEB29
-E2BFC6C41648B9F13FA4A4D8D8B81972C32FE45F1817B3182D270AC9F6B5B001
-4574EFA7EDDD8E4BC7BE6BFDE7CB04FED64E104920892B9E98AC63F16C0366AA
-D317A19C71AF274EA7AC9F3409CBC042A1D7875459ED89887497A9152E212915
-B83B7721D57B169B1F201C3B0605ED07D5997EC79D9F367ED4F455DD7DCAE65A
-2B9057B3E6B2A719956BBFD189372FB8D3B60B075F15D91F5E3A2DF51430C000
-038E71AE7AE040E1A0CF0A3BDB8F21D6C0FDB1339B2821F7542A782A43B70DCA
-6A46832981BC5DB43B5D0CF208F38E642727AB79E710DA022D47D39884A400BD
-DB5F80A39CD46558BE7915FD7AFFACF243AF5A3762E76D33D6B6AAE666F67BB6
-B78BD2D2BFF6F7CC10B3B66F3241BF6F8518EA32E020A26905E6AFBFBDBDBA17
-244BCC8D6A127D1A8690DDDF509E06532D3F28D9235E965F4D9E5D8664F0BD12
-11FC9D1A8C7C2A4CE4FBC9EB95611D9581C3FFE6991EF04073803DAE1B5D717F
-D65437213F3E1A3CBFC1AE66746FDF8FD949F7D72F73B11A01C0FECC9B51D203
-617750CD5DA57AF8E793594397AA33A1A3205C5D0838EEECD209A67EA5249A56
-7B727F6B22798508D2CB2D5E2460BCA4826B82A3BC1BB6CD709ABC64E2977973
-82B520C7EE77AFF1F940E95E4AC7776D40E6FA636A2BEFF673A61C81BC958BDC
-F7EE7BC246DB2474A6761B5B18BEEFD57BDC13688FDCE862356FEAEFE42B8083
-8D388566CFFCAF64F5B494973B56E311D795EC29D9F215012A571AD28903B0AA
-C3C46929133385A99EE73B05A603481067E6E813E2C80518835EC64C65DFB130
-2B69257C3814989A9C2C1E49EB02D3A93502871A121EB6A7D07C1F243344AAD8
-6EB61BA565BA9EC0B28909A15FE82E425190A8C1AC8B1DBB92E6289794F24E4F
-3A25CDDFC30277669DDA68269500D610254E2E67981B361B919960EC286120FA
-6954B91A94341A5EEE52AD61BD71486207463D4A412E45D802D89D3CAC436C6A
-EE5C9E06FA42222E004771D58FFC2EE277B720DAD3DE5B505077D0240C4CF3AA
-A54A971FADF7C3CEFBBEEEC093E294BDF4D3B21BDBF13B7FBF5DB4D2528B2EC6
-A03FCA688ABDE692AFFBDFA8DE5E80882C1FE4640C7A3A3EFBB49DD31564624B
-C5656606CD565B84976820101994B26F41B7AD49A969D93A8CE62212EDBD1E9F
-C97B3E26DC29A6540AD72C0504F374B2A4AC955158D4DEB3DD544C8A404753E9
-4D44733D2AB083F6B49286D5BF71BC746E23DAFE40F95E4CD33D026CF949B7E8
-B7955BBC6588914204F8BD1916BC28CE626DE554FFA95BE341EE51536AC10742
-A5FCA8F5F76A417C9DA3D803330A1A6901A26D0278107BEF1301C46BB081D355
-3725DA2B5ABFBD795200B2BD231657FC28B6228BE8A18B00A540A49D69477A6A
-538D1F3548270295BFFED29777CE491BBE6D367FF5393D736837823022711475
-1D03EA22D6D4C380F351D3159AC9407C7F1D948B34FEBDCF6AFE7FE0F816F84B
-C3682C5BFEDCF6B1332DBF0032BF88F9229AEF4858A3D935B855B5C738A05631
-2A77CACDFD2144E2FA60784AF2166830340A0AED0302F50D0EBA673B1F450F51
-DA9E3C9DF5136EA4167E008E2E2AD0BABDB9E144FFB9D39B54D80BE7F347F4CD
-FB2B1C98DA84E855EFD44A169788EE5E08754FCD8C0154F2D601020D918071E3
-C10FC2BB6446437527E237B336D5D04D43530D6F5AED60F2248E7A08F3F17514
-D21B09FE0BF5CE4E23DDEACB81EA87EB649559FF29590B2569CF8C07898D7034
-07B70776F93C0F943F1489F0262C44AF4E300A30A583B6A0030AA64D07E28B65
-2AE7668596D8A7C51C315BAACF5B907F6361E86B2DE484FDE057141204C98F77
-64A8C9B68EC184F7A17FAED61B022161A662DB4569AEF8F04E6B887A0C63AE9D
-0284B943B53EF9C247A595887A612B90694876643C35D46FCFCA331E7B3D8646
-F9826CBD0D4F691C2CD9542DFAB7BB3789D9990BA426F9A8F161CB4AF752C023
-46CF0E9AAB48FD24931BDF51B58CFB9C548E93BAE1038D6966A2B997DFA012AF
-F4B2FC4C56179DDF4B40D51E7C6A4929EE7CDF2A985DA06EB93D91235BB66BD7
-854A6A6BFE3E8C8578CBF3723339E95AFF4CDDB9DC00AFF87436E1789C3F3CD1
-EC77D8B6C106242C16E35E6DDB58BF9A96FF7CB9C5522E76D76DBE6AF29CC54E
-F32A928E53EC588CA74219FAA9B37BF26FFA3954B5C7A3246E47968493FE1BD7
-A7146F58F403018491276DA918180B6C95BB2C4D93A654782E7D7780D1176A0F
-CCE14041A005AA613C103D5F47F82327CD646C14A81A9FAE771E944CF70A602B
-1E93976C4C6800CC1A9DF0077BB83FFE5186C107C8FDB2D70AAFB230A1F53BC4
-6E930636155C34315FA191AE48DCAFBE12F934283BB7C9E4433F8DA8E5BA24C9
-F47EC01DDA3C61A7327612136249FB3D14596B966F48FE1E1F95E780E8D10EF8
-09CA34C7988B0D6004902D72C03C9343C00DF128648C68A78DBFE16D829342EF
-72861BA47C9ECE6DC444B8E03263FDA416F396D90EC4C83E2F55907B963B3793
-AD8AC58A04180EB504F093A069397CBA0E496C8D9B31F7FFE925949910C429C0
-E514429F6F46E467057803CC0603E39F90662C951CE9FFD4525E76D4D29115E7
-2C39128A44C44D4B0E208B6ECDEE73B753F05C7883B1345C3C8CB40EEC35DE4A
-2EB8F1A6167B180A8C18C95FBDD462C4BA2A23E884F5FEABB0012C3567F7DF54
-5786B6BA32B5D331A1BA7E819D2E3EA92E288D509FE70DB067D351EA53AD858A
-F88F250CD0933421FCFB23B77CC305749FCAAFD49A2BC4BBD7087F04D85DF0C2
-7DF68ED3A0CEA4374123D54C538D05765A482B023EE4BC2519636346AF825D67
-80F78FC3EFF8E9D198E3DD67397F9AC965B1A9D99AF8C96C17CEEF8346007D05
-16E880B8716FF385C0CD679FC7A770E02E06CEA67160D2AE407C64B5E84F2591
-88371FD832A05D190472A74139860FC897C0A93C1ED82766534ED9415D4D7102
-DA832B566A44C52125620ECD7FC4B3147A571156547770E83A08CA935CA16AAA
-1201E7B759BDA9A9C35BFB9398651504D3B97440DC2E1B83FD9C68838EB29EB0
-0CAF700CF11FEAAE098F62B3A5A67E9DE2B20FEE44A31C740139859158EEC81C
-0F905187C722AE412502B526D03EF5CD45EE125A4DFAF40B51EC4275994A424F
-699F61ACD1A09F68895718E56B66CC8F4C59E71158DBB33FA2E35CC2845F516E
-96BBF28C8073CCDB88B459BEFA4FF251E3181C563D98EF87A4648D67C31E3FAD
-770578BFCA0FFFCD9F6A746DF448B8594A68B81C28536E9E393A8E6241A63450
-54ECAEDE256F21E5D0A2E1A100FB843F6A7B0C97A3B2942DD137C4E7FBE2BBEE
-F252E9BAA695EE6C0B21E44623D35F0B11E232E626F292892C8D5F099E216418
-E08420BEBC1EFB03E4D154A2B35E776CD84C8C9EAB0FE10D38DC323851405E17
-4660DE87A1C42298F40F33861FCD9E68FDFE7EEC68FE4EF9341D5B539179CBDD
-DB15416397B2E67D937327FB707ED93DD02BEF04EC195D7A901631DB45EB68C3
-F4E38459DE458B6793A157FECA9895EE150DD71216887FBB73279E0FEA743A39
-1F8468931FE798D8196C96E9BBABCB19D2AD97BFE5A776E6626C9F83D745BF14
-E9C10375A3561FA3585BC4E86FBA6513E5AB20C4BABC0761A9A897DB95A1498D
-48E4246313758DB16803789B29ED9B04013A8DA79BEAB0E0CD901EE32E241BE1
-BA0C64F93FF30DBF15DB9266C872DFF210DB36E3C71FD096D03DECE673AE73A6
-3A909D7F15807C71729ABE5EC7222DD5C1475FCB9920B8F2B1B5019238C9ACDF
-7A2948789A6E5219D964627992618D6AC27D8C898FD50207D6DA833EA2DDC744
-D241C7B7403F8BD4804FC03D89F5A53D80F96E24E8EBD0C5276BC2DD5443A986
-D4FA9262BFBE50D93CEDE92D3741EBC7EBA9DAEB6D3C24F50365D445AD284E3E
-88B245CFEC62F0E8A62517E652F2AFD5AC720030AC82768B362E1BE33A3BFBC6
-4862A01E3F70178B3C30C984DE6C14E153AB5663D191599D5DAF55C82C9F045B
-243C3FD310FB49C4508F3E71686E6780E96BDC5DE7B93EE02E356155DD12C554
-4723199288C6668D7BC952BFAD9C9AE708AC084EBD43952853864E3195596C52
-1DF754A536EBF9A2B222DFD13DAFDB65AFE622AB231EFFF7643651C3E802ADC2
-65CE15FD0B3AF65285B68CD78055B2012BD4B07C6F44F76594BD8D3571CC2169
-93AFDB2DA8469B4CD9608AA42A70C8C65B18D0BAFFCA685983B114C9C36407FB
-9B0CEC6D678DF677B2960DF600EB7A0D8BFC3DE30B779E0E87B4C8756CC8F1E8
-DC0389D9874FF275101681917F62A3BE7F031C3CB45BCAFC4B75ABAC37E472FE
-320CA222FF0D93F2952C9DA2CD57B3C976DD6380A21A2A014EB65F634179F992
-6B6DE6E668DD114127152C847FDEE9A9E0DC031D779C273B9822452C0E3E37A4
-EA8A0B836F6FF43A6FE2514926903E92A04A511616AE373E8B65D2ECE3B61CC1
-828478FC9B4934B748644472E615988344F5D54CD785B53B3EADA902D6C1DF47
-2C186FC0427158C014AE68ECDABA015E4E99602350D82DD760BC82DB0FE41A3C
-18B6D86F76D56E5E6916FB0B4B0ACE1709766A5131E89A24EC44DBFE292F1A71
-36E71C382051CA99C7DECDF461FCA13EDF3AA06210ED2406EB79C65BF6B4FF64
-98DE9D823F1003DDCF89304D1B3278B3B262A9FF9E13C8B5D16F6587A727456C
-C8F72C28F76CAFB9849DD15B6D2450AA91B2EE2D013C702E7BA39CB3C46F9D0B
-B31680D89BDD9D06A9319D9EFAC175CEC30A952DC5C87A9E4594AB85173E9E03
-522D9061CDB335A59E4E8B97516AFC7E4EFCABF1D931C80E4D031B3B191AD517
-A5E2F2AA4C23A392FE09906226F1B846D1CCF3D799341EC2C83E6A3E9ED4F35A
-66506EEC7C22640E42DCB7D8959ABF8F1EFB45791545AEC4526CDA41CCF07B82
-884D2048CEF6A49E0267579C030E4CD228F6AC78EA3EC6A3D9E35F2F1A690A28
-9060B0F3785EBA06C57F52C5C13FEC575A2D3A2C2FB809C6A3FC3A4E4F11093B
-6B03E139505DE7F41FCF765C5427F45243A766FC486E7BCD5B466809432311F1
-0B83A44B03D9B5A65D1F4E385A6FD02BC0A4B3204CE852E1721F6F0E1C2EEBA8
-3D4911A981547FBA5ACA6AACBFF16382A1C980E292DC66D399ECFCC42F078ED2
-A05C06AA792345D157A2D6E59337CA6FD7F951DA2FB02D6F2B80AFDF36B6148F
-B6AAE89FE177D9AC92DEE51774059863F58A551352241B9434F383BBA4D61A8A
-901283B9D08AC993B49E2CF4B27E8BD2475C02603F5B4A2EC98E21F306DEFBAD
-0BB4C0DB806729B61E2839C8345D62C46EA1826B4E7CCD5EB69DD7BD899ED2A0
-B4992CCE2C5FCE9415371001840BFAE846784BD81F2915DF8792C923E37D6823
-A5427949C219D9C8CA716AF631485CD72934B3E8E2F077FF2EDC8E6A0B742FBC
-946A608F7FEE8CFEA0583FB6D9BFC68A2A01E379A6AD0DEDCAF66C7900A2F967
-C21804DFE2B5ADD2A334E7208778FEA247BF012D1790C0B796D2C5AD7C0C26AB
-311864254A3F88895197C36D5C236D6FD3F58C1B4A7CE43E317B14D488F5B20B
-DA16C269B9DCBCD197A72B980C6A443C22EC0741B6680B8D2CB4FF597709EC92
-63BBB449B884B516B50D5003815B2978C5933A6C80D572DB08433B373C7375C4
-EDAE583976BB729F93F57212B521E5046FB5E755AF208BE5987EA8D9CBA315D9
-6E0DECEE1E2469B3C0326A809929B5049766A14DC81923CC25D17AC4A203878B
-AC6C2CAD5D7D5D1E9CEEAB73FF195D5EDD81947D6FD078927318C19D382DE6FC
-6C44294B400C207DD83270C1E53313CA05735EE194C80F266E2CC34E041F1B66
-E2847E682E22BCC536982D6D6A96250EABC30D5EA344FC019292ADBF477795E7
-CD89D9D47D67214D08DAC6A8E8AE2192F195DA7D41AB0ED40510631C36701CE9
-4670F48AC472D1BE219F48EBF9977A03DA7DE787FBA5CC59C6FEF6A5F76C4865
-8A7F2A267B8CEF6B4CB736BE4C6ED226A57C092BC83E4522D19BF8999244125D
-23C36CD772E7ABCB48C7D1A27D482F6D444B910CB957835F78473238D3421CC6
-AEA1399BB2533B2818D77FE394481DBD8CB3C10D931589B0959D217FACADA757
-0DADBF579386DB95A6F12F61D10C465633245E05A100961844CC9A5527B6D7AD
-C632910D4ED6D71AFB2B34D975C4A32631FE66BC051728D50C63F481AD641D2B
-4E2F7E72F66FD22D424B8C6C93ADD447DCE87C2608E884D36EBE21D97DB9C82E
-14417EC97C835FBA7F020B6CB06A0CD989F9D9E5CB5C8F662357B365A581610C
-9165823D6BC005B510C60EC4BB3A7FEDE70410355D8E58A1725E4BFD93BCB75D
-01988E0F9E4F4F7F007F153C76A450A24FE139A8B7D2C9825A2370664263F1E0
-411A4A0FCBCC1B8F5EBFE15C4143E4E48FA39B5CC68A116E8A96645AD578FCC3
-9475DF1FF6EA1C3F203CFA3952482B6D380C25B80084F849224296B2193CA434
-B4850EF0BD04FB56F1BEB4B465E5193BA62D8D6B6920749ACB685D09E026E12F
-1E23C68EB275542E53C855CBE19E400B7DC47046F72AF881EEB1372B5C7B90AE
-F3654A9DC8436043A6278B375ACD4F81017FFDC478226EF57CC1C3730E302601
-777AD0E09E9E2CE8D0270DD6F19A6DA3741F25727EB307C7F8AF73CA4CFED885
-0C148D4A2444DDA2C22EDAC2356788B90ACB3428DB71DFC65380959FAFD573EA
-9B5793D05C40E2AC8059D024EB873CAFE1711FACCB17E6CA35F5F6B55C4539BA
-0F66A1EA6D16A26D4CA8C07765F76C68638FEC66CFF951DD13E0F48CD839AC23
-0E183844C5DDC94AC5ACB56C532960E0C24ACD0C7F29530E9DB888C260F651D4
-A063B9489961BE9D68F3138CC2006D0EEC618B1165C22CA07802840DD8562BC8
-04FEFB8300B01DA3A5D25CEEB5115AEF6EE197EB88B4CE3FA5092867044274F0
-B2C49E7604FE33554BFC8BC782019F0342806089BF8BF7FE6F9779D61702015E
-1D8CDE9B2F199ECA9F5AE69E4E286DB30A02B9FA44A53081E015B5FFD2DE7D6F
-9932903EF3FF0259BE2D491DB2F15B9170AD9C3BEEC5818B65D58C2EAEA21EB7
-874960E7F46D8D76856926345542E021148D95559520FB876D13B2B18D9C5EE6
-6FF720F22F1EDB66E0216D20C46153B1CFB096105DCCB04DD7F4F606566EEF62
-C638DAA0044D2DBCC6B460682F0FD9973F4396F4CA99D56F28C0105DF0110714
-906A9EBA29B9AB375F250C065CC0329DCE53577386E005EDC452BAC822CE7E69
-F9973AE14490E9FE6C033BC6A77391052BCB476AFD901DB71DC2BD5BEAF51C99
-609D01BF2696558515B6FCF825217DA206C87C894133D0B49E8944ABADC9FF3C
-E8BF10B2CB5D5AC9CAAE9AFFF7779A48DAE362E4F97EEBA75144F4610DEF1F4F
-F89E6DCAA88CB1910B0AA98BB53DFAE78611B28DF5C42D6253218E48187D65E1
-C093CE0CC8A137F6D9C268203B483F153928415EB96784E993F4B13E598348B4
-0ED07D148B74B5FBEE7BCBB298F4E3E364DC6AE166C0D91C4FB69AF8B7A47C9D
-03692EEACD8E700B9E79807311E320CEB913BAEC5E305A96DEA1456145E2113E
-871A649B7D143E05FB3E1242782F2CE15CDDCC9ED74F12D02FB74D23F2103979
-DD5CC27040B20F0324A3367DEABE17FA6069C1645F801E9ED5C9E653F9207C6B
-C03622E1F65E3280AB84ED97BD555DA13AA3AD7DA97C4772185F63F009D4EE5A
-9A8898A99A4CE1AB51B60F872D337233BA7E0BBF6C4F7302F0F9CAB90022ABC9
-AEE327C1A866BAA2F2CEF71E9B71A7070649E1C25EF91AA389B2C56B53B2DDC1
-CCEB2DF6571E19F71ECD136B0370C6417D484C4FC1DA9C200F3406D26377C807
-FF79460F38019130498C0F8E283D3A6416A51A2099F78D4B66DCD2FE873C2B4E
-B9DCDE7F8DFD42EF767F381C034C8106F5AEE118B209952FB6BDF693611433A3
-CA8814367719F0CEC27352AF826A1455EF8A5DDDBA6853932A1B1212A3FD8B93
-2E83EBBC72F2CCCE97CF5EE3A85CDA4805A5D4663D66015A9E92F670BA5FD46F
-B5735192AE1B0630B6857B070B43A8E602DA6127EDCDD3550A17FBC52BC26229
-399DBDFA557C94ABD7409495921931C68D1372BB0AF7F5F1414735
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-cleartomark
-%%EndFont 
-%%BeginFont: CMTI10
-%!PS-AdobeFont-1.1: CMTI10 1.00B
-%%CreationDate: 1992 Feb 19 19:56:16
-% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
-11 dict begin
-/FontInfo 7 dict dup begin
-/version (1.00B) readonly def
-/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def
-/FullName (CMTI10) readonly def
-/FamilyName (Computer Modern) readonly def
-/Weight (Medium) readonly def
-/ItalicAngle -14.04 def
-/isFixedPitch false def
-end readonly def
-/FontName /CMTI10 def
-/PaintType 0 def
-/FontType 1 def
-/FontMatrix [0.001 0 0 0.001 0 0] readonly def
-/Encoding 256 array
-0 1 255 {1 index exch /.notdef put} for
-dup 12 /fi put
-dup 97 /a put
-dup 99 /c put
-dup 100 /d put
-dup 101 /e put
-dup 103 /g put
-dup 105 /i put
-dup 108 /l put
-dup 109 /m put
-dup 110 /n put
-dup 111 /o put
-dup 112 /p put
-dup 114 /r put
-dup 115 /s put
-dup 116 /t put
-dup 117 /u put
-dup 118 /v put
-dup 119 /w put
-dup 121 /y put
-readonly def
-/FontBBox{-163 -250 1146 969}readonly def
-currentdict end
-currentfile eexec
-D9D66F633B846A97B686A97E45A3D0AA0529731C99A784CCBE85B4993B2EEBDE
-3B12D472B7CF54651EF21185116A69AB1096ED4BAD2F646635E019B6417CC77B
-532F85D811C70D1429A19A5307EF63EB5C5E02C89FC6C20F6D9D89E7D91FE470
-B72BEFDA23F5DF76BE05AF4CE93137A219ED8A04A9D7D6FDF37E6B7FCDE0D90B
-986423E5960A5D9FBB4C956556E8DF90CBFAEC476FA36FD9A5C8175C9AF513FE
-D919C2DDD26BDC0D99398B9F4D03D5993DFC0930297866E1CD0A319B6B1FD958
-9E3948FFB0B4E70F212EC976D65099D84E0D37A7A771C3101D6AD26A0513378F
-21EC3643079EECE0C9AB54B4772E5DCA82D0D4ACC7F42FB493AA04A3BF4A1BD6
-06ECE186315DBE9CFDCB1A0303E8D3E83027CD3AFA8F0BD466A8E8CA0E7164CF
-55B332FAD43482748DD4A1CB3F40CB1F5E67192B8216A0D8FE30F9F05BF016F5
-B5CC130A4B0796EE065495422FBA55BEE9BFD99D04464D987AC4D237C208FA86
-0B112E55CE7B3782A34BC22E3DE31755D9AFF19E490C8E43B85E17ECE87FA8B9
-1485831624D24F37C39BF9972D74E6EC4784727AC00B9C4A3AD3DA1C22BD6961
-7E0ADAF55422F22ACA5E4DCD4DF9FCD187A566B7FB661D0530454D0DD6C6C50A
-7A3875C6CBF8EC7769F32A1F3F7FC1C072BADEC97794D4E90E0035282A170402
-356E5A9CD9ABD80AC4342A5283E458A7269252F4541CBB6452B39ED54D336D0B
-19928E9CD1AB26AD83EB209E2EC75011A2643813053B5DBB0246097C4821B5F2
-C92554E9140BE35B2DBFCD98809A8EC9FC910FDE9E0D86457C70ACB056EBF90F
-244DC0A5BBD455E15D6E3180311D52CF50B0BF7D0A7F64F3A1821E0AEDBC2E7B
-AEB549FE1D51088C153799C6E089B5D5D65E1C4E2D2B430CDF1FFA23CCB25D95
-5C4DD885310A706B320AB25C8D742C6F29953254FA54DAAEE60ED477877D19BC
-D28E9AB576B0EA088171FD000B60D73B3C57F754BC07EBC9BF751B7D2B32459D
-993861B7C4B0D98C422A11BECEF76F4EFC0ECAEE89723E6CED53E3678D733363
-2DF068AEF0FE7DFB57393BDAA439A6A4C396F86032A98009EAE1247B7DE83B3B
-E46DF2898598FF5E6CA6953127432A967E4FD41CDD60D6E413059A58FA556EF3
-309178B57C16A763CFC9BEEC276944BDEA255789EF4E1ECDE1EA43EEDB955513
-F42EDDCF39AE522A1DC2D80B2772B05DA60F3DC15A815A6BAFEDC399C7956E75
-3851CB3588E22936FBFB63A58300298B11C45D82385C083D07AF133BB1BC941A
-FDD9F34D5E0B8087EF2A58C54D8AB7580EE3ED58AEB83B72CB9028F472ADBF11
-05A77651F118824F6CD00209EFB60C1D32D46A78E8C8DCB8B0E742828E3B7D17
-DF5200D68189C91FB8489CDEE8BC223C4281DDCA5F7DA80BD5C2D66A14695EA1
-5F05E03500579ADD440ED2C57F535807560C6FE3873143D792734FEAB93AE8DD
-633BA6FC5683083402BF086D23594AAC84A4868AFAA32AFBDF86142B350F8F62
-E2531321E4CCF34293024EF8AB617BAB11A3A5EDA03CAC5AC431C893607DF8E5
-C3DC8646027A7554625A16FD184A70DB5FE6DCEA366B64430A147144CC9839F5
-72829FFA42BC3A8406D680E44A0305C9C9E265E91AE82EDF30F73730DCD4AA20
-8B63D3B568DBA690DFC2103EE47296E0EE2AD4627B84BF062FF54A76E4C48137
-E491AFA711FA8087A3F3FAD6C3BC571655D66A52BFFC2AB09CB9035AA67A50B2
-E938298E2DA5C50C50948BBFB6DAE4613B0C70E5E2E0E7C72621E61E51107C33
-463BC505D3FE9FE04CE5A67B252B8BBA81759F6EADADF1DADEB0B15872130D09
-D48E8AA0633DAF01025F36A0C224A65540E062922F9FAE9DD77BA007CF237ECB
-1DBEB5BC617C7B84599EC193456F2959D222DCECE46B26699F71AB1B2640D8D2
-3EC0C04CE0CCD5B6940E36472275ECE2E42ACA7B3E886F9846A6894D1E16A448
-6DE9DCA4F5CAC1DD63172DD7603A082CF812D1427FFB51E155AFDEAF583BE97F
-5CE8E4E9FEA15618846B1FAE475C62689784326A95DB1383BEFDFAED6BB9194E
-9BBB86476F78F0243B4515002D76AFC202225F62B1F04FF4B69D4B63C16B3063
-711F889BF159978BB6F83E2C090D44195AA4791554F092D82D50D4A3A3B7153D
-7078A482E02D272728CBF0A96B85948C31B71028F03B77CB61EF7AECBA66676A
-D050B06C53BA2401E3B0AFED364E0864A5B65CF9093F78A84A0DD628730D6F4A
-B65C861E42E9466E7D1E477BE5D7035CF30F9675585B52C01924AC437DCE2943
-8B545C90ECFE190144AA8A7A76FA522D98EC1B581C9F5253F704EBE33FF1D1A6
-86CD1F9B706ECA6A1BBF01F0C56FA59C014512C31432A9ABF09AD6C49363AA5D
-8E08AA4D0AB995DCD4CCC0400B71055505EBE7D21D2061504E990600C3C04937
-424C2527DADEF40A0C058E76B08BC7B8CDC5BAA13E4E7AC6D3B59F25439BCABC
-1A940BB9D4BDCA9DECBF4EC7F4FF3655C89E05A7706613C9BDD0179F8C686333
-C9A876055B3ADB816692BAD1AF575011E30287CC9B65902F2BCB1BB45CD441C2
-1968E8DE4FEA5837AA93CD73FAF6F50B87DD2EEE0C1487149C562864A528EDA5
-A3612AE68D8ACC67C5207735F4AFD19462CB84EEEFBE81DFC66CE8E89311DE83
-6546CFBC19D4A18F4A3725838DE19D7F4DE87F9F1866DC65E155A82FD5555D79
-F799EDF508A4F7BBD16D7C09C035DB51858CFC00DE7CEFA7A8C6ED6C47EC33C1
-0E613E1FAB5B5686B439F467DBE384AEDF8836B2CEFC1B917AE95AEE4329BC16
-EEFE7CFE5B43323E90AC167B1DAC570C3FA61A334427495A5B53C6DE597AC069
-1E56B9CC27C7789AD915F2A33A70F2D194859EFE129A9A6994559A898DC9267A
-A1966BB9438FBB2EDD33995A4749416205A3E2F71A30114B161AA043FFCFD30A
-1094C56555DA272AAD08228C0AB1FC39BB11D103894FA0A899E0AED597A595A2
-EA8D70AA76BEB04C244BDF4CF94226EED1B01DFBE1F0C3E3AC90DB4AA8BFF2E1
-C718A17B6B69F423E7E44F8D42EB67C0A6369CC1CFA9E9D7F50F09402431B2DC
-B5CA0FEF2E24242C5027836C6399D28F384F1236DFD33EC8634997BB78B25DFA
-CE75E060D19009A6AF994F883A0908B4AD79FA8D69D1930D9CE40B53D1396553
-9D9A7FA0CF827957BC1244A816576C8B2DAB8BA123A164E717E9BCEA023CAA5F
-265D9D24E4EAF58F0B580A351B8AB2BC43E338AF241AFD001A19A984CFC62A59
-8B2013E8824A6827A7FEE516A09485F301AF11D925D18F59A2E907B17646C8AE
-586E9168900605CA101CD78C24D3559508F80E844D31BA7E197DEA3A38A82766
-A45E8C41B60DED52B1DF8691737FD7D57C807968D6937B90275F082C692E1C0D
-2C767E0C77B192774D37B2BD4E80E214A8E28EDA8926A120C12A4E7901DBFBC0
-B5A72A1CCECF325FFB569231EC8AD0528086D6E94397F8F3ACA26BB976FFBB1C
-F49B8B6BF7B3A9E953E9D089FBF8E0B82D156A6C11BA6520F91B8B9ECE690FF6
-324176A8016379348959A20C78F07D82DDF803D38C73BB3E0C0DC1028ACBD6CC
-8DF50D96AE276FD243FDC8C8FAE66E146160C966F3F67177436F9F861940AA6D
-B5348AEEC6B0E923DCDC589E392C72D0936D958884858E397B8BA8B553333BAC
-6022064E4F1D42C3CC143061D377FDD0542BBB5F3CD1A089CE64B60B4B436A14
-6A429D05FAD474C84CD8672364D35543C605EE5FDDCABE2C06B4AE7D4F8490BA
-E2CC28E290E5323E4676391739E2EA134105BBC58B3A74D940575BB9A919DD7A
-C38E05A366F23A0143F4C192316CB7408F5E64028F28840A27FC4DEC8448D593
-9D5468134DAECF543F5697EF5989FFEB34807A1D79DBF2A354A0714B27B97DEB
-0D8EEAED69E1F90211E1BB6A6795537BEA950601168458AFE5940E78A5FFAD60
-ED2E04D99E7FC6BC0E5747B56E80805FE24D81A604E867CFA1F9814E048D2DFC
-34D04E8884EBDCA85AAC94DA6ECE609228892682EB8C569C974CC0E7362234DE
-0B81F683B81ED714DC0F586D903EFD97805FBEB92170C0C25A6A13F76DD60921
-2F1CFD57CC219FE6B91DC1C99C0FF4951027EDE31DC5535DF6612BCD4963F9D8
-E6D01817CBA5A350CA666B64B6A6B45E4AA33694142CC1E150C0CCEDE5168DBA
-50938787F91B44CFC3DB90121B49032F0D73F631F16A82D4E19245CB94BF688A
-213A56D62D546ABC818C730AD4F40E4C622276BB12C090C9ED9C1B8A9FFF2DBB
-AC82A80CA2406A842AC497F5EC0B227194714BC6D47312177616C638CAB94C31
-42ABC4FAD725A3DB1B83A590B4E05A984EF6492C68BD2E13FAEE77DEAA2CA56D
-B8F6CF2800B15BE370179ACA404C87E7D9A6C7F70ABECDA8AE07DD3AA14808F8
-219CC49DCC2828AC72966710D1506B400640CF80090F5BB400EEEC11851E630E
-23F01BBBBD9D2B84246FC644567C45C2324998679A7EB28ADBD2C4FC20CD3F5B
-E712E38F87EBC6621769C99ED42789505EB5135A47DE4F6D15B536586D7F2382
-9514C2528E4E9BC0CC8BA6828AB7ECF3D87A0CF5B7A26F52AA89B5A1B5980AB4
-399F408B0A1AC21AD1C6A40F1B489BC8051B8D3C537C765AFC909D5C62A2F5D7
-C30C349576D36B1FD4EBBEC9F3FA3466FE03C885FDFBB308929CDEF89BF35E00
-DE9A5EE59B1730528FC4A653397FFBB2833073CC792AAFDF9421E5DBE494BDEF
-70243094C61678C79CAFD7DA8363FBAB45202455F72241CD4037225FBDAE983C
-22F1CE3831BECA0F99B1BE8C239563B2BDA6B32246B213DDB45F2CA748E43769
-A49AC5042B18CB894E9A108A1062B0D8E72AB0A81B866AEF65B1B993DFB12ACB
-68265B8408568516415E4C1900204B0617110C98E9EABC34712BC3306B595761
-79F96C39D826C959536B2F2F9320EC9FAAF97427E07EEFC64523CAED57C2D6D7
-DA9AC41E4F589F223C214E80140D2F65E062685D333B44C39365C1721DF60B77
-990E6B0E3EA4AB7354905C402416BC67356D485798C00DDEE17A812091590520
-FC2845FE24345017180408BB143B6B6054B947961A307A3CDD9CCD858ADFF2F3
-D3430EDB2254DCA877BA18A46D48FA1979B434DBF737ABE3AA240DFF74A2994D
-B8D53B6A2A85B81E815B22BC7A61190D8A56DCDA40DABA6F0EB7C1A5549A5516
-FE816ADBEC811EA881A820BA1816E2D42C45AD4FE575551D3EB4976D5E975479
-D0A32D47D874E94A4A5AEE8BBCAD973053749AA70D03105828DF417813E61169
-BB5F6ABA5CFE500AA78582E4BE8074FEFB29EB32A8BEF9FB6FE4CBA2A6D72BE5
-05F8B488FABC424FB00EA88C43712BAEE1AC2FE75D93C2E759963962AAF81A4F
-F802636AA0B493B93C2D6D39F070CB0B36776950CB2E60C437F7E32809C25F66
-CC7424AB194B88C30EADFC68E83F856A0293DB2C4749A0098EF5CF33D07DB18D
-13EEA54031B24D2D5D131183F8DEA7C98417C985EF148F64A48D95DC8C1D7F8F
-F0536B1B0C00A8C3BFC67E558DB07A2A9C8BF6F462E3531B6E7E3BBCEE830E9A
-12A7F85D1E7EABC09221C4BF383AC8ED6BF538640B25426E59CF9060A6D40B71
-BE73C09C847786462AB9B2A5AE60F99E628DC5E83CB4F44786457C85DCC76D6C
-816EBDD86013E6EEC0B9305390AC028E99E98C7DD7AFD17548F5EBB7FEC28E31
-9B2EED71BCA9E5A24380E0C4DB993A1B9E93A2DE919EE00257A682CD0F48F38E
-686B0AC7F2CE64789AC368DDEF067C79A1F0CB3CFCA3BD7D7CB7A9582C6ED4FA
-F3A5EFF59E995E04B6543F3A25CD2FDCD39D2C87E980C175740EF0D6805C154E
-B422B9826CF396C64DA951DD3A1449CAE447BDAC920846E0CDB4DC4256B4C832
-87E907C43E933C70D04F84EECE984B7701732592BC81E7AD669E30A32F65DF87
-94AC9AC35C56F3FD5E25F67DBA459F76D2711B621D85EF0034C5F2D16F27AF13
-2CABFFDADFB87AC4FB1BABD2658CAFFBBEB290D9F62619120D0A4FE45B9EEC26
-FC2E285AED3F5FADB85F2B0D64DD278A86FD01FB80E251DFAB40A371F183FB2D
-A72C7FA2176128F7A85F01343A3A5BACC7CF7ECF9C5FE98D058201B31E7F3FDB
-F9CFCE3A66FA77382A43240FD80E97A933C5FE116C911D14BCCD8947B0C50C34
-799EB0A2391A8B49E29FA94EE7F4563D38C3B9A700FB608DF98D2ECF6841221C
-6AC099E8318392F1F28AB7E6E97CDA9196A87B509E67BA93C74DBC84D8B72B78
-D6F5C3CA30CFE25150DA227F9DD260A57FCE041BC8DDE287FD0DBD65EC465B00
-80E564FE2967F1FCB1E072ACA9C168AA746F4F54B4A9F83381DD11EF6F8DAE6D
-14077695AA1113EDBDC6B8DF4BEC621FF81A2D505CD5B7D30F90CEF1A477FF01
-BE15B018484169432E922D935E4863C66E8769651A899D5E1A1BA511CF49D211
-446546B71DDA8C2F944E66F76202EB4DC8F6CA54103DBB01CAC20CB08DC77A4D
-3973E29C2DE8C858865FBBEAE5D71E81E0CCEF5FD4FFD706D7428EC33D5AF789
-C13C5AE91FD36FB215D4D9A51C96739B0DA033D83BFB812411CE25D49C19819E
-533F4EB14FCAC3F746F7FFC7270E4E947AD2C5FB4447B9BA284D788C9AACCF69
-B35CD1EF290B662DD72118B0C475C2DFF997FD62E279BC0C44AE5D2F7290E4AA
-E6443141D9CB366CD71374BD411C4E72B09165021AADE20E747E2CC89D8BEA12
-59EDF9CF61FC957C9DB0F1B4B3CA73B2DACF4DA0BF1E08912EB4C23C66C21447
-E22B8B8F93B89D853F6CB728111E6788BF95F969A654C9FE69F0CE3DCF436CFD
-8B3B68353ED1DCD6C26DE48817E4B0F46741D0DA7695802A16442F1052C99131
-F8D7D2FC2965B90B9D9675E6F66BF502B4BA495A5899A46760B8E8E2426396FD
-2BBABEA05AFFE78DAE98972BB61E07385A8566AAB160BA5E4030F1BC6DDFACAC
-850354E3F98294698DA8553D2D4F40DEAFC25DDEE47C5047776AAE8AE49A0E3F
-B52F4EC8D68F195AFF4C13FCED0FF91B06F6C9160F6A0BD1518CF4A2F6353357
-846DE266C22B4FCB2550C4E1CC9BF7FBD5ACCF31CF037EC4AFC8D2560D0F5FF7
-3B3F3D1E0399F7ED51C7D194EA17E298C33CFA73133A64C29F834E8684017D26
-4E9FEDE39001667895474D7649C39DAA83BA7EB97A3A5F66E7F07C9C389579E6
-E07C7B8517CFC535DB0D12B6F57A7C292582309C09E89CF4111734BAA78CAB3B
-DD6B34C23235968C14851E3760940A38F367A42D48D453
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-cleartomark
-%%EndFont 
-%%BeginFont: CMCSC10
-%!PS-AdobeFont-1.1: CMCSC10 1.0
-%%CreationDate: 1991 Aug 18 17:46:49
-% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
-11 dict begin
-/FontInfo 7 dict dup begin
-/version (1.0) readonly def
-/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def
-/FullName (CMCSC10) readonly def
-/FamilyName (Computer Modern) readonly def
-/Weight (Medium) readonly def
-/ItalicAngle 0 def
-/isFixedPitch false def
-end readonly def
-/FontName /CMCSC10 def
-/PaintType 0 def
-/FontType 1 def
-/FontMatrix [0.001 0 0 0.001 0 0] readonly def
-/Encoding 256 array
-0 1 255 {1 index exch /.notdef put} for
-dup 97 /a put
-dup 99 /c put
-dup 101 /e put
-dup 102 /f put
-dup 103 /g put
-dup 105 /i put
-dup 110 /n put
-dup 111 /o put
-dup 112 /p put
-dup 115 /s put
-dup 117 /u put
-dup 120 /x put
-readonly def
-/FontBBox{14 -250 1077 750}readonly def
-currentdict end
-currentfile eexec
-D9D66F633B846A97B686A97E45A3D0AA0529731C99A784CCBE85B4993B2EEBDE
-3B12D472B7CF54651EF21185116A69AB1096ED4BAD2F646635E019B6417CC77B
-532F85D811C70D1429A19A5307EF63EB5C5E02C89FC6C20F6D9D89E7D91FE470
-B72BEFDA23F5DF76BE05AF4CE93137A219ED8A04A9D7D6FDF37E6B7FCDE0D90B
-986423E5960A5D9FBB4C956556E8DF90CBFAEC476FA36FD9A5C8175C9AF513FE
-D919C2DDD26BDC0D99398B9F4D03D5993DFC0930297866E1CD0A30EB76029337
-900ECFB1390CA5C0C3A04528044F266BA17BE487C79B94FAC6D6484684C5BFEA
-87BCCC77D40AD11552035E95E3007126418ED49B68468B38A14E88E68A267B98
-076F1C9769A5AFBC285E5B158EAC9F926F1D6C0B8F1D57D9C31D25AE27123518
-9D2CD92E5689E0213089BD268DA5E47525CB8EABAA4B78A15AEA34705889AB3A
-FFB8953B5B3482E52BFA0940630ADF8C0AC2177D907324299EE980E850F203CD
-B627962F43D5A678C44243CDE97853BDC6AB45FD5C09AD274DAF89929F583CC9
-CCC24BDFC68B92111055ABA5F26D2DC67C70906F71C2957701D65AE746A60C30
-40E6CB24B97FCDAD0487AE38A201FBF0E41BABD2181981A71940F1E707F91E5D
-C8CA50CB16D8702D188E56D014D92F76CE0B52ABDB9110E32438D2BBF3E6A40B
-7B005F10BB437812CAC6ED2996F7606DC962C4FDE207FF322782C343DF44CEC5
-FF06A55C630C20E9AE1B0D1C5673753C43BA0767D65D1B451CC6380D8BB3C4DC
-81E8FD8AA79BE993218686F29D3CD925566DD587F541A0DA1B1CC3BCEA2E6C7D
-5E1016F6917A871F1BBAD96AF9E867735017119A381FCF33EB2D3E1E7093FD90
-CDB0CED4818CFD9E201A03430CEC713620BE0D3254158931FB657C6877C1B3D2
-24030F377820DA58F4B95CFE645109F3F1B80DB5FACFD7D05AE2909EEFCF95AD
-9CB286C8B6C075CA2267C101B736139863186C193E31085E7C9FD88EF8BBECE3
-933542C85309013325B4BBFE9A5B606780C8580ABDA2F5D0064EBFC23939B307
-08568C3B7F5F053BF367DEBA349FABB9F760C44D100BDEEFBB01F27BFC61FCD3
-64512116F2751A1B95D2439E266074DB3B9FC76ED319B2851588B1F38F46C8FE
-040793C860F05E26700B72A766D0BF3F6F2EDEE06A26866BF0207CEF2841BCD2
-84F5873A147D5BAD18FD74DF7B77B8CF1913AD882DC1F4A94020B2A8A73237BB
-222E6B78BD1C4C0975B9B6683B5DFBFA693970DD53FB5D5CA5805B7728C11D6F
-92E6293F82E628C9FDD901010DEC199055B6682D6B2A688E3EE8759F7E592F54
-43E63699F1D60CD915365B85B8713DC4EB3EC4D2860880035348966F004FBE18
-9299E1DD0D491A5D542D450C8945321BFB9E823E18D1F33178BECAADD34378BF
-6FDE26691802F24E43CFA4ED1FB81C824F808A049085FA95CA518D9F4EE91D78
-26A8B8B461486419D598E7E341E9D43CED2402BF225B2C75CEE127D8B8633FC3
-6F4F69DBAF7134D4F3D669B35822FA701A441E5FBA3DC1F02A00B25C583EDB52
-4D4D488C6A810128777654B956C3CCE8FFB0D1985AE2A2735BA415941D1CAD5D
-62D9DBBF01CC979B8E1509F5DDD3BA6E87B14879955F978209CB398825E40199
-2B1C7D2C55251F321BAC0764D40B80D7AE1B787E5690CB5907719044B2AC832C
-C002C181088BA15AEFDA44D2305E6327358D1DC1D9B93AB1802FE9F24CF49739
-9863288D0195F5610441122648F5E38208E1AE5F01D1966DE10B8AAC02EF9F2E
-27D2383BC6D5BF9DA8F9018BABA01B70755FCA281588B85BB705FB7016F6D7D6
-8607BD0739433B54DFB87614A76902A3C122F39A21E80CC1970C5A6932C6046A
-771484EA9BD04CF0963E1D372B456C50625807B3557384F5368C520E757716F0
-16EF17F3A58F2F7EA42C9BFE2A64AE786F49213CC47B496B8F127696EDD017A2
-A07FD72357F4D847CE1EC8103EECDE35AA194F9CE466E733F66515749B3C36DB
-6F7E83B31034687CE18CBD15342723FC21689731B45C72DA278994FF8C5824A0
-EFE9F8D734D75C3C263F9D4BEACDD86406567055B1A8A5EF73ACAB4A09255E39
-BE9AD89DBF4624E686541E2FF03742C99BE71E7CE3B4756A22CA4B0121E1FC6D
-D62BB37F46B6EDA0AC3669802D1DF75B0F9F61976B2FA2DFB5AE2274CF08A000
-AB716CF047D7770A76B6577C75D806D878BC185C4117FD7BBE29E767E028633D
-257C34395F8988DE13F0F9083823F028E05D16BAB6B3E9002F01AD5039CA62BD
-07AE9C5FA71D6F234899382F90EBCC371C5501FE01E38646BC3C734C7E2C1AA2
-11355703BE46724DD85F5DB4051F65E48A3E8DA4CF8845BB4B3F39C47000E871
-AD2FB60C3161437D8C76A10377B98456BC205F3676D02132B174AC046658D059
-5E506F3C4178C400AD4E721AD613199FD1395413EC7AE6960F96849D6A26F695
-B78395941D62A7F7B6E25CD6824E78804A8CFA780E9919BA860C2951EB88DB5B
-C2F9E9AF635BD2C95C7D6AD4BA85E4B85483EEA4EF1908E3D5451AF6EE9176C2
-BA3F1622024250AC2A1F8E66811EE9C1608FDE0E91287AFBEFB43800212C90C1
-6D2D8066C742EAC7D611CB9F0590AB2AA66C17340FC81E55C339FE83B68D060B
-33A10B037B3370E351168E98E9DC4E8AB2B909879566CC28DD053B6EEB04A3EE
-6016A02EBB0E8D0BDB7F0B1B3BEC8C559F48448AFBBFFF5E11051516E9CB5F45
-6F38CEADF429570FB2DEC6E13CFB2A59D5FFBF0A2396FE9F7B3A0836C76B06CF
-9B9D99035BFF40EA918DC4A8CBF4576809F49DF330A9F742AB2FB385C9382076
-6FA8BB32BA81FA3E57E91BB6757C6E98047E9537A0595EC0F2A9BB2D3E093294
-023360099DC1D4EBE77960AB4E26211D1A75ADE1C764E5C2E80EC234F678159E
-3E64331306FB3E2BE3AE0CFEED0FC3F583E875A98694742C3DEDC35CCD9D45B5
-D4200D69F93C5B730AF952EA0DCC88EE1F6D50B9477E249C6274EA0FD849B537
-BA497FBD6617943E7BE06CAF71A0F6B13CFFBB51AEF3E042F28BFCAD6CBA2DBA
-CECBDB7BB399AF5D80487592A820F82A7255B46A0D7C739CCF16B7F60B709651
-0B91A26FF4854483DEF0336B7633C1E053BA889F4306F7398D85C3EBE21A5A41
-B7DB32141ACA892DDD4C0FE0C95328A70F53DD95940017CFA865D15FB0BB281A
-13E2CF735AB238D278FE175EB8B72337218B5F66B62FFD912FCCD0E180AA69D4
-23701D46D44EC2E80D3C4275DC7B5848F50682394C4E67ED98A2E6B41C348263
-EABA9705AA74CD35EC6E1D9DD55634102C6633ED9117DD472DA7F41705DC5772
-72A3C2D8BF6B308567D07153BC750C8CE867E40355C3D50747B757E52F7575DF
-9B5B913AF7FC3FDBEB317DA46DB498C7C044F83E46BAA00321A84DAE2DF14604
-12031AF813C994414F098824C30FC07E9B5307EFD8D01B56481BBD2EF648A69E
-7507FED42C6605B09EA047F09DFA9BE15B59B93395DF192C0FB33F6F31F325E4
-DCC9A5DFAA157D1D5B4E5BF811F6F5B0FD1E69ED7EE1A6FBC2CE14D11D6FA699
-255370376844BFF3C2BE814A1FEDD0B0854647B9B193B4984394C8602820A17C
-62704CEEC824C3C745BC615C54EE5DF86EBD79E874CC3522F8B8954C8E4A6FB4
-F715EE641A3D52C06574E8D7DCFCE83F3F8809D08A3C9C70C962D33F5B3D6128
-16EF2DCD4D6DCF0DD055AEA2293E10C1B7C2399C0DE4928F0A47E0BA652943B1
-004568BBA7CE62F12C7B58966BBF7B0327481DCCFC56218E7C4B9F0761063BA3
-BEA01AD1BC99DB3C1FE550DED79B243A7A554F2B1752F18FEE94120B708FE4DB
-5948387091DF4198859CF49ECAC3AB49CE2E5F0451EA4EDF9BD49633C9826026
-BC9E7E1544A0318C545ED1C37C64176504D175B83CF974B4ACC39F5790E24B11
-85F01604144C0E694DB7206941933B60651A800DF182E19C3BF2862E72F25F2F
-2D9BD71056559C0FE547D0C752640DD4DC6110A849CF9557FCB0643A1EE77855
-512015F57A80140FC06B8CDEABC5580B89F9F30A489696AEF2
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-cleartomark
-%%EndFont 
-%%BeginFont: CMMI10
-%!PS-AdobeFont-1.1: CMMI10 1.100
-%%CreationDate: 1996 Jul 23 07:53:57
-% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
-11 dict begin
-/FontInfo 7 dict dup begin
-/version (1.100) readonly def
-/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def
-/FullName (CMMI10) readonly def
-/FamilyName (Computer Modern) readonly def
-/Weight (Medium) readonly def
-/ItalicAngle -14.04 def
-/isFixedPitch false def
-end readonly def
-/FontName /CMMI10 def
-/PaintType 0 def
-/FontType 1 def
-/FontMatrix [0.001 0 0 0.001 0 0] readonly def
-/Encoding 256 array
-0 1 255 {1 index exch /.notdef put} for
-dup 58 /period put
-readonly def
-/FontBBox{-32 -250 1048 750}readonly def
-currentdict end
-currentfile eexec
-D9D66F633B846A97B686A97E45A3D0AA0529731C99A784CCBE85B4993B2EEBDE
-3B12D472B7CF54651EF21185116A69AB1096ED4BAD2F646635E019B6417CC77B
-532F85D811C70D1429A19A5307EF63EB5C5E02C89FC6C20F6D9D89E7D91FE470
-B72BEFDA23F5DF76BE05AF4CE93137A219ED8A04A9D7D6FDF37E6B7FCDE0D90B
-986423E5960A5D9FBB4C956556E8DF90CBFAEC476FA36FD9A5C8175C9AF513FE
-D919C2DDD26BDC0D99398B9F4D03D5993DFC0930297866E1CD0A319B6B1FD958
-9E394A533A081C36D456A09920001A3D2199583EB9B84B4DEE08E3D12939E321
-990CD249827D9648574955F61BAAA11263A91B6C3D47A5190165B0C25ABF6D3E
-6EC187E4B05182126BB0D0323D943170B795255260F9FD25F2248D04F45DFBFB
-DEF7FF8B19BFEF637B210018AE02572B389B3F76282BEB29CC301905D388C721
-59616893E774413F48DE0B408BC66DCE3FE17CB9F84D205839D58014D6A88823
-D9320AE93AF96D97A02C4D5A2BB2B8C7925C4578003959C46E3CE1A2F0EAC4BF
-8B9B325E46435BDE60BC54D72BC8ACB5C0A34413AC87045DC7B84646A324B808
-6FD8E34217213E131C3B1510415CE45420688ED9C1D27890EC68BD7C1235FAF9
-1DAB3A369DD2FC3BE5CF9655C7B7EDA7361D7E05E5831B6B8E2EEC542A7B38EE
-03BE4BAC6079D038ACB3C7C916279764547C2D51976BABA94BA9866D79F13909
-95AA39B0F03103A07CBDF441B8C5669F729020AF284B7FF52A29C6255FCAACF1
-74109050FBA2602E72593FBCBFC26E726EE4AEF97B7632BC4F5F353B5C67FED2
-3EA752A4A57B8F7FEFF1D7341D895F0A3A0BE1D8E3391970457A967EFF84F6D8
-47750B1145B8CC5BD96EE7AA99DDC9E06939E383BDA41175233D58AD263EBF19
-AFC0E2F840512D321166547B306C592B8A01E1FA2564B9A26DAC14256414E4C8
-42616728D918C74D13C349F4186EC7B9708B86467425A6FDB3A396562F7EE4D8
-40B43621744CF8A23A6E532649B66C2A0002DD04F8F39618E4F572819DD34837
-B5A08E643FDCA1505AF6A1FA3DDFD1FA758013CAED8ACDDBBB334D664DFF5B53
-9560176676ABB71BBD0EE56B4CC492C0652750227CEC6CBEEE374709231B00CD
-0DE83AFDE295B314F6C8B1FFD32251C1925D96A64D739FF1DA4926460B28B3DE
-E949AA0BA3DDB16534FBA30C32092D5F712B5E8C8D5142F35AF2906E6C219D2C
-7FD9A368C193E0EB9C7E25FF03C546B6ED993F964CEDB1B8537C617170787F37
-88D6F2AD02384B01067FE3F98257BAB958BB3BCD1001090A4502DA0638080EC6
-DB784CC8AC37CDC01B29BC481D6A05ADC6188785262358C1BF1D694BBF31C1F1
-AF117C1ACED44AAC6EB4B9A2511A6762DDE8FCCBA5
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-cleartomark
-%%EndFont 
-%%BeginFont: CMMI12
-%!PS-AdobeFont-1.1: CMMI12 1.100
-%%CreationDate: 1996 Jul 27 08:57:55
-% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
-11 dict begin
-/FontInfo 7 dict dup begin
-/version (1.100) readonly def
-/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def
-/FullName (CMMI12) readonly def
-/FamilyName (Computer Modern) readonly def
-/Weight (Medium) readonly def
-/ItalicAngle -14.04 def
-/isFixedPitch false def
-end readonly def
-/FontName /CMMI12 def
-/PaintType 0 def
-/FontType 1 def
-/FontMatrix [0.001 0 0 0.001 0 0] readonly def
-/Encoding 256 array
-0 1 255 {1 index exch /.notdef put} for
-dup 58 /period put
-readonly def
-/FontBBox{-30 -250 1026 750}readonly def
-currentdict end
-currentfile eexec
-D9D66F633B846A97B686A97E45A3D0AA0529731C99A784CCBE85B4993B2EEBDE
-3B12D472B7CF54651EF21185116A69AB1096ED4BAD2F646635E019B6417CC77B
-532F85D811C70D1429A19A5307EF63EB5C5E02C89FC6C20F6D9D89E7D91FE470
-B72BEFDA23F5DF76BE05AF4CE93137A219ED8A04A9D7D6FDF37E6B7FCDE0D90B
-986423E5960A5D9FBB4C956556E8DF90CBFAEC476FA36FD9A5C8175C9AF513FE
-D919C2DDD26BDC0D99398B9F4D03D6A8F05B47AF95EF28A9C561DBDC98C47CF5
-5250011D19E9366EB6FD153D3A100CAA6212E3D5D93990737F8D326D347B7EDC
-4391C9DF440285B8FC159D0E98D4258FC57892DCC57F7903449E07914FBE9E67
-3C15C2153C061EB541F66C11E7EE77D5D77C0B11E1AC55101DA976CCACAB6993
-EED1406FBB7FF30EAC9E90B90B2AF4EC7C273CA32F11A5C1426FF641B4A2FB2F
-4E68635C93DB835737567FAF8471CBC05078DCD4E40E25A2F4E5AF46C234CF59
-2A1CE8F39E1BA1B2A594355637E474167EAD4D97D51AF0A899B44387E1FD933A
-323AFDA6BA740534A510B4705C0A15647AFBF3E53A82BF320DD96753639BE49C
-2F79A1988863EF977B800C9DB5B42039C23EB86953713F730E03EA22FF7BB2C1
-D97D33FD77B1BDCC2A60B12CF7805CFC90C5B914C0F30A673DF9587F93E47CEA
-5932DD1930560C4F0D97547BCD805D6D854455B13A4D7382A22F562D7C55041F
-0FD294BDAA1834820F894265A667E5C97D95FF152531EF97258F56374502865D
-A1E7C0C5FB7C6FB7D3C43FEB3431095A59FBF6F61CEC6D6DEE09F4EB0FD70D77
-2A8B0A4984C6120293F6B947944BE23259F6EB64303D627353163B6505FC8A60
-00681F7A3968B6CBB49E0420A691258F5E7B07B417157803FCBE9B9FB1F80FD8
-CA0DA1186446DD565542BCCC7D339A1EB34C7F49246E8D72E987EB477C6DB757
-99AF86CEBCD7605C487A00CD2CD093098182DC57B20D78ECE0BECF3A0BF88EBA
-C866DB19F34BBBED6634AFC0F08D2AFB2A92578A6F8B4ADCD6594737FF6EED7D
-5B536DA9E3E2CADB40DB7C600EA4D100D33C3B92B1CF857E012C4EB370BA8295
-55B50047CC8911C98FE1A7BA6CDEA82D34476286E710776823690AD333DD3A49
-335002F4680DBE1C21174BF016B0DF799B01EB9D6988479A8334BBA2F8DC7146
-BC0DAE9DE3A6453B181808E68A89E0C02DAC6264D002B422EBC1CF14F65D9888
-15EE6D514D3457F7F3C6A3D17EE1DA076F73ECC392D349174DA9E4680F29CE10
-0157E42CA35F5DBFF56BFC3AA07E61A78DBE882C5AB388220C19750D3643E7C8
-23D6673027CE568A4ACCE1D12B1D9E5A43507F4AF9BC873237F65A6B95078DD2
-378007CF0F0DE7CCEF760E19D6D1D7B412EC5D4972
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-cleartomark
-%%EndFont 
-%%BeginFont: CMSY10
-%!PS-AdobeFont-1.1: CMSY10 1.0
-%%CreationDate: 1991 Aug 15 07:20:57
-% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
-11 dict begin
-/FontInfo 7 dict dup begin
-/version (1.0) readonly def
-/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def
-/FullName (CMSY10) readonly def
-/FamilyName (Computer Modern) readonly def
-/Weight (Medium) readonly def
-/ItalicAngle -14.035 def
-/isFixedPitch false def
-end readonly def
-/FontName /CMSY10 def
-/PaintType 0 def
-/FontType 1 def
-/FontMatrix [0.001 0 0 0.001 0 0] readonly def
-/Encoding 256 array
-0 1 255 {1 index exch /.notdef put} for
-dup 13 /circlecopyrt put
-readonly def
-/FontBBox{-29 -960 1116 775}readonly def
-currentdict end
-currentfile eexec
-D9D66F633B846A97B686A97E45A3D0AA052F09F9C8ADE9D907C058B87E9B6964
-7D53359E51216774A4EAA1E2B58EC3176BD1184A633B951372B4198D4E8C5EF4
-A213ACB58AA0A658908035BF2ED8531779838A960DFE2B27EA49C37156989C85
-E21B3ABF72E39A89232CD9F4237FC80C9E64E8425AA3BEF7DED60B122A52922A
-221A37D9A807DD01161779DDE7D31FF2B87F97C73D63EECDDA4C49501773468A
-27D1663E0B62F461F6E40A5D6676D1D12B51E641C1D4E8E2771864FC104F8CBF
-5B78EC1D88228725F1C453A678F58A7E1B7BD7CA700717D288EB8DA1F57C4F09
-0ABF1D42C5DDD0C384C7E22F8F8047BE1D4C1CC8E33368FB1AC82B4E96146730
-DE3302B2E6B819CB6AE455B1AF3187FFE8071AA57EF8A6616B9CB7941D44EC7A
-71A7BB3DF755178D7D2E4BB69859EFA4BBC30BD6BB1531133FD4D9438FF99F09
-4ECC068A324D75B5F696B8688EEB2F17E5ED34CCD6D047A4E3806D000C199D7C
-515DB70A8D4F6146FE068DC1E5DE8BC5703711DA090312BA3FC00A08C453C609
-C627A8BFEF75B4DEFAF34B44B356A516B765AFCDD3F5475B1F928731D09D2170
-B97E40F12CCEDF4F6BB3756C4734F6E98D74B7E942A954B1BAAB83D4AD727FF6
-DF6DC50B2223BCB5568A73A112E4860AD490554E64E780073FF3399CB4688D33
-9E8829667CD6EAEF25E0C7D2D44F2BBFA40E999325F9561514844221B50BC8FC
-4C7AD68CA7220D69125C2AF06849A3E068D18733276F0C0A6A2936D3C2C87CDE
-59CD1AF148C44F85784A5DAD569F5FF53C061056C067CE29AEF1E3BD1FD8B0B8
-71A0A638CDAC6AEEDBD5337D4683C084BB60B1859E600F59CB4E19C5FC5C6327
-EC544A68134496A9BD0B87D83AF6FDA3CB62FBF0B54FACE1F0E6A2D84B467AFF
-0F62DB
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-cleartomark
-%%EndFont 
-TeXDict begin 39139632 55387786 1000 300 300 (readline.dvi)
-@start /Fa 197[11 58[{}1 37.3599 /CMMI9 rf /Fb 133[17
-20 20 28 20 21 15 15 15 20 21 19 21 32 11 20 1[11 21
-19 12 17 21 17 21 19 39[19 19 19 19 19 19 19 19 19 19
-2[13 11 30[21 21 12[{}39 37.3599 /CMR9 rf /Fc 134[20
-20 2[20 20 20 20 2[20 20 20 20 2[20 20 2[20 3[20 19[20
-27[20 20 2[20 45[{}18 37.3599 /CMSLTT10 rf /Fd 167[31
-3[30 23 2[28 1[31 38 26 1[21 1[31 33 27 1[32 30 67[{}13
-41.511 /CMR10 rf /Fe 129[20 20 20 20 20 20 20 20 20 20
-20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
-20 20 20 20 1[20 20 20 1[20 20 20 20 20 20 20 20 20 20
-20 20 20 20 1[20 20 20 20 20 20 20 20 20 20 20 20 20
-20 20 20 20 3[20 1[20 20 20 20 20 20 20 20 20 20 20 20
-20 20 20 20 1[20 20 20 33[{}86 37.3599 /CMTT9 rf /Ff
-214[18 18 40[{}2 45.4545 /CMSS10 rf /Fg 133[26 26 26
-26 26 26 26 26 26 26 26 26 26 26 26 26 1[26 26 26 26
-26 26 26 26 26 1[26 18[26 26 1[26 2[26 26 26[26 42[{}32
-49.8132 /CMTT10 rf /Fh 134[32 32 44 32 34 24 24 25 1[34
-31 34 51 17 32 1[17 34 31 19 28 34 27 34 30 7[46 1[63
-46 47 43 34 46 3[48 58 37 48 1[23 48 1[39 40 1[44 44
-46 7[31 31 31 31 31 31 31 31 31 31 1[17 46[{}52 54.5455
-/CMBX12 rf /Fi 134[24 24 33 24 25 18 18 18 24 25 23 25
-38 13 24 1[13 25 23 14 20 25 20 25 23 9[47 1[34 33 25
-33 1[31 35 34 42 28 35 1[16 34 1[30 31 35 33 32 34 15[23
-23 1[13 15 13 1[23 28[25 25 12[{}51 45.4545 /CMSL10 rf
-/Fj 134[22 1[30 21 24 15 19 19 1[23 23 26 37 12 2[14
-1[21 1[21 23 21 1[23 84[26 12[{}19 45.4545 /CMTI10 rf
-/Fk 134[24 24 24 24 24 24 24 24 24 24 24 24 24 24 24
-24 24 1[24 24 24 24 24 24 24 1[24 2[24 14[24 24 1[24
-1[24 2[24 24 24 17[24 24 2[24 5[24 39[{}37 45.4545 /CMSLTT10
-rf /Fl 135[28 2[28 1[21 2[25 29 28 4[14 1[29 24 25 1[27
-1[28 97[{}12 45.4545 /CMCSC10 rf /Fm 197[13 58[{}1 45.4545
-/CMMI10 rf /Fn 197[16 58[{}1 59.7758 /CMMI12 rf /Fo 135[43
-58 1[45 31 32 33 1[45 40 45 67 22 2[22 45 40 25 37 45
-36 45 39 10[61 62 56 1[60 1[55 1[63 1[48 2[30 1[63 51
-53 62 58 1[61 14[40 40 49[{}36 71.731 /CMBX12 rf /Fp
-242[45 13[{}1 45.4545 /CMSY10 rf /Fq 134[35 35 49 35
-37 26 27 27 1[37 34 37 56 19 2[19 37 34 21 31 37 30 37
-33 7[51 1[69 51 52 47 37 50 51 46 51 53 64 40 53 1[25
-53 53 42 44 52 49 48 51 6[19 1[34 34 34 34 34 34 34 34
-2[19 1[19 44[{}56 59.7758 /CMBX12 rf /Fr 129[24 24 24
-24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24
-24 24 24 24 24 24 24 24 24 24 24 1[24 24 24 24 24 24
-24 24 24 24 24 24 24 24 24 24 24 24 24 1[24 24 24 24
-24 24 24 24 24 24 24 24 24 24 24 24 1[24 24 1[24 24 1[24
-24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 33[{}89
-45.4545 /CMTT10 rf /Fs 131[45 23 20 24 24 33 24 25 18
-18 18 24 25 23 25 38 13 24 14 13 25 23 14 20 25 20 25
-23 13 2[13 23 13 28 34 34 47 34 34 33 25 33 35 31 35
-34 42 28 35 23 16 34 36 30 31 35 33 32 34 5[13 13 23
-23 23 23 23 23 23 23 23 23 23 13 15 13 2[18 18 13 2[23
-1[23 19[38 25 25 27 11[{}83 45.4545 /CMR10 rf /Ft 134[51
-6[40 3[54 1[27 2[27 3[44 54 1[54 47 11[74 2[72 3[76 1[58
-4[76 71[{}14 86.0772 /CMBX12 rf end
-%%EndProlog
-%%BeginSetup
-%%Feature: *Resolution 300dpi
-TeXDict begin
-%%PaperSize: A4
- end
-%%EndSetup
-%%Page: 1 1
-TeXDict begin 1 0 bop 75 659 a Ft(GNU)33 b(Readline)f(Library)p
-75 709 1800 17 v 936 757 a Fs(Edition)15 b(6.2,)e(for)i
-Fr(Readline)f(Library)g Fs(V)l(ersion)h(6.2.)1559 811
-y(Septem)o(b)q(er)h(2010)75 2467 y Fq(Chet)22 b(Ramey)-6
-b(,)23 b(Case)e(W)-6 b(estern)23 b(Reserv)n(e)f(Univ)n(ersit)n(y)75
-2534 y(Brian)g(F)-6 b(o)n(x,)23 b(F)-6 b(ree)23 b(Soft)n(w)n(are)f(F)-6
-b(oundation)p 75 2570 1800 9 v eop end
-%%Page: 2 2
-TeXDict begin 2 1 bop 75 1512 a Fs(This)12 b(man)o(ual)g(describ)q(es)h
-(the)f(GNU)h(Readline)f(Library)g(\(v)o(ersion)g(6.2,)g(Septem)o(b)q
-(er)h(6)f(2010\),)f(a)h(library)75 1567 y(whic)o(h)19
-b(aids)h(in)f(the)h(consistency)f(of)g(user)h(in)o(terface)f(across)g
-(discrete)g(programs)g(whic)o(h)g(pro)o(vide)g(a)75 1621
-y(command)c(line)g(in)o(terface.)75 1689 y(Cop)o(yrigh)o(t)301
-1688 y(c)289 1689 y Fp(\015)g Fs(1988{2011)e(F)l(ree)i(Soft)o(w)o(are)f
-(F)l(oundation,)g(Inc.)75 1756 y(P)o(ermission)h(is)g(gran)o(ted)h(to)f
-(mak)o(e)h(and)g(distribute)g(v)o(erbatim)e(copies)i(of)g(this)g(man)o
-(ual)f(pro)o(vided)h(the)75 1811 y(cop)o(yrigh)o(t)e(notice)h(and)g
-(this)g(p)q(ermission)f(notice)h(are)g(preserv)o(ed)h(on)f(all)f
-(copies.)195 1878 y(P)o(ermission)i(is)h(gran)o(ted)g(to)g(cop)o(y)l(,)
-h(distribute)f(and/or)g(mo)q(dify)g(this)g(do)q(cumen)o(t)h(under)195
-1933 y(the)h(terms)f(of)h(the)g(GNU)g(F)l(ree)g(Do)q(cumen)o(tation)f
-(License,)i(V)l(ersion)f(1.3)f(or)g(an)o(y)h(later)195
-1988 y(v)o(ersion)13 b(published)h(b)o(y)g(the)g(F)l(ree)f(Soft)o(w)o
-(are)g(F)l(oundation;)g(with)g(no)g(In)o(v)m(arian)o(t)h(Sections,)195
-2042 y(with)h(the)g(F)l(ron)o(t-Co)o(v)o(er)e(texts)i(b)q(eing)h(\\A)f
-(GNU)g(Man)o(ual",)f(and)h(with)g(the)g(Bac)o(k-Co)o(v)o(er)195
-2097 y(T)l(exts)h(as)g(in)g(\(a\))f(b)q(elo)o(w.)23 b(A)16
-b(cop)o(y)g(of)g(the)g(license)g(is)g(included)h(in)f(the)g(section)g
-(en)o(titled)195 2152 y(\\GNU)f(F)l(ree)g(Do)q(cumen)o(tation)f
-(License".)195 2219 y(\(a\))g(The)h(FSF's)g(Bac)o(k-Co)o(v)o(er)f(T)l
-(ext)h(is:)k(Y)l(ou)c(are)g(free)g(to)g(cop)o(y)g(and)g(mo)q(dify)g
-(this)f(GNU)195 2274 y(man)o(ual.)19 b(Buying)c(copies)g(from)f(GNU)h
-(Press)g(supp)q(orts)g(the)g(FSF)g(in)g(dev)o(eloping)f(GNU)195
-2329 y(and)h(promoting)f(soft)o(w)o(are)g(freedom.")75
-2451 y(Published)h(b)o(y)h(the)f(F)l(ree)g(Soft)o(w)o(are)f(F)l
-(oundation)75 2506 y(59)h(T)l(emple)g(Place,)f(Suite)i(330,)75
-2560 y(Boston,)e(MA)h(02111-1307)75 2615 y(USA)p eop
-end
-%%Page: -1 3
-TeXDict begin -1 2 bop 1862 -58 a Fs(i)75 149 y Fo(T)-7
-b(able)28 b(of)e(Con)n(ten)n(ts)75 320 y Fq(1)67 b(Command)22
-b(Line)h(Editing)17 b Fn(:)10 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)39
-b Fq(1)137 389 y Fs(1.1)45 b(In)o(tro)q(duction)15 b(to)f(Line)i
-(Editing)t Fm(:)7 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)h(:)18 b Fs(1)137 444 y(1.2)45 b(Readline)15
-b(In)o(teraction)5 b Fm(:)i(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)19
-b Fs(1)200 499 y(1.2.1)43 b(Readline)16 b(Bare)f(Essen)o(tials)5
-b Fm(:)h(:)h(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)19 b Fs(1)200 553 y(1.2.2)43 b(Readline)16 b(Mo)o(v)o(emen)o(t)e
-(Commands)5 b Fm(:)i(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)19
-b Fs(2)200 608 y(1.2.3)43 b(Readline)16 b(Killing)e(Commands)d
-Fm(:)6 b(:)i(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)25
-b Fs(2)200 663 y(1.2.4)43 b(Readline)16 b(Argumen)o(ts)7
-b Fm(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)h(:)f(:)g(:)21 b Fs(3)200 718 y(1.2.5)43 b(Searc)o(hing)15
-b(for)g(Commands)g(in)g(the)g(History)6 b Fm(:)g(:)h(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)20
-b Fs(3)137 773 y(1.3)45 b(Readline)15 b(Init)g(File)d
-Fm(:)7 b(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)27 b Fs(4)200
-827 y(1.3.1)43 b(Readline)16 b(Init)f(File)f(Syn)o(tax)9
-b Fm(:)e(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)23
-b Fs(4)200 882 y(1.3.2)43 b(Conditional)14 b(Init)h(Constructs)e
-Fm(:)8 b(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)29
-b Fs(10)200 937 y(1.3.3)43 b(Sample)16 b(Init)f(File)7
-b Fm(:)f(:)h(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)22 b Fs(11)137 992 y(1.4)45
-b(Bindable)15 b(Readline)h(Commands)7 b Fm(:)f(:)h(:)h(:)f(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)22 b Fs(14)200 1046 y(1.4.1)43
-b(Commands)15 b(F)l(or)g(Mo)o(ving)5 b Fm(:)h(:)h(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)20 b Fs(14)200
-1101 y(1.4.2)43 b(Commands)15 b(F)l(or)g(Manipulating)e(The)j(History)
-10 b Fm(:)c(:)h(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-25 b Fs(14)200 1156 y(1.4.3)43 b(Commands)15 b(F)l(or)g(Changing)f(T)l
-(ext)e Fm(:)7 b(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)27 b Fs(16)200
-1211 y(1.4.4)43 b(Killing)14 b(And)i(Y)l(anking)c Fm(:)c(:)f(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)27
-b Fs(17)200 1266 y(1.4.5)43 b(Sp)q(ecifying)16 b(Numeric)f(Argumen)o
-(ts)10 b Fm(:)c(:)i(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)24 b Fs(18)200
-1320 y(1.4.6)43 b(Letting)15 b(Readline)h(T)o(yp)q(e)f(F)l(or)g(Y)l(ou)
-7 b Fm(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)22 b Fs(18)200
-1375 y(1.4.7)43 b(Keyb)q(oard)16 b(Macros)c Fm(:)6 b(:)h(:)g(:)h(:)f(:)
-g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)26
-b Fs(19)200 1430 y(1.4.8)43 b(Some)16 b(Miscellaneous)e(Commands)f
-Fm(:)7 b(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)29 b Fs(19)137 1485
-y(1.5)45 b(Readline)15 b(vi)g(Mo)q(de)c Fm(:)c(:)h(:)f(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)h(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)26 b Fs(21)75 1606 y Fq(2)67 b(Programming)22
-b(with)g(GNU)g(Readline)9 b Fn(:)g(:)h(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)h
-(:)31 b Fq(22)137 1675 y Fs(2.1)45 b(Basic)15 b(Beha)o(vior)7
-b Fm(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)22
-b Fs(22)137 1729 y(2.2)45 b(Custom)14 b(F)l(unctions)5
-b Fm(:)i(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)20 b Fs(23)200
-1784 y(2.2.1)43 b(Readline)16 b(T)o(yp)q(edefs)t Fm(:)8
-b(:)f(:)g(:)h(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)h(:)f(:)19 b Fs(24)200 1839 y(2.2.2)43 b(W)l(riting)14
-b(a)h(New)g(F)l(unction)8 b Fm(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)h(:)22 b Fs(24)137 1894 y(2.3)45
-b(Readline)15 b(V)l(ariables)d Fm(:)6 b(:)h(:)h(:)f(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)26
-b Fs(25)137 1949 y(2.4)45 b(Readline)15 b(Con)o(v)o(enience)h(F)l
-(unctions)7 b Fm(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)22
-b Fs(29)200 2003 y(2.4.1)43 b(Naming)15 b(a)g(F)l(unction)6
-b Fm(:)h(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)h(:)f(:)21 b Fs(29)200 2058 y(2.4.2)43 b(Selecting)15
-b(a)g(Keymap)c Fm(:)c(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)g(:)h(:)25 b Fs(30)200 2113 y(2.4.3)43
-b(Binding)16 b(Keys)d Fm(:)7 b(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)28
-b Fs(31)200 2168 y(2.4.4)43 b(Asso)q(ciating)14 b(F)l(unction)h(Names)g
-(and)h(Bindings)9 b Fm(:)e(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)24 b Fs(32)200 2222 y(2.4.5)43 b(Allo)o(wing)14
-b(Undoing)9 b Fm(:)e(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)h(:)f(:)g(:)24 b Fs(33)200 2277
-y(2.4.6)43 b(Redispla)o(y)11 b Fm(:)c(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)26 b Fs(34)200 2332 y(2.4.7)43 b(Mo)q(difying)15
-b(T)l(ext)e Fm(:)7 b(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)29 b Fs(35)200
-2387 y(2.4.8)43 b(Character)15 b(Input)7 b Fm(:)g(:)h(:)f(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h
-(:)21 b Fs(36)200 2442 y(2.4.9)43 b(T)l(erminal)15 b(Managemen)o(t)t
-Fm(:)6 b(:)h(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f
-(:)g(:)19 b Fs(36)200 2496 y(2.4.10)43 b(Utilit)o(y)13
-b(F)l(unctions)8 b Fm(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)22 b Fs(37)200
-2551 y(2.4.11)43 b(Miscellaneous)14 b(F)l(unctions)7
-b Fm(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)22
-b Fs(38)200 2606 y(2.4.12)43 b(Alternate)15 b(In)o(terface)9
-b Fm(:)d(:)i(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)h(:)23 b Fs(39)200 2661 y(2.4.13)43 b(A)15
-b(Readline)h(Example)11 b Fm(:)d(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)27 b Fs(40)p eop end
-%%Page: -2 4
-TeXDict begin -2 3 bop 1850 -58 a Fs(ii)137 42 y(2.5)45
-b(Readline)15 b(Signal)g(Handling)5 b Fm(:)h(:)h(:)h(:)f(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)20
-b Fs(41)137 96 y(2.6)45 b(Custom)14 b(Completers)9 b
-Fm(:)e(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)24 b Fs(43)200 151 y(2.6.1)43
-b(Ho)o(w)15 b(Completing)f(W)l(orks)d Fm(:)c(:)g(:)h(:)f(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)26 b Fs(43)200 206
-y(2.6.2)43 b(Completion)14 b(F)l(unctions)9 b Fm(:)f(:)f(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)24
-b Fs(44)200 261 y(2.6.3)43 b(Completion)14 b(V)l(ariables)5
-b Fm(:)h(:)i(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)h(:)19 b Fs(45)200 315 y(2.6.4)43 b(A)16 b(Short)f(Completion)e
-(Example)g Fm(:)8 b(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)28
-b Fs(49)75 437 y Fq(App)r(endix)23 b(A)80 b(GNU)22 b(F)-6
-b(ree)23 b(Do)r(cumen)n(tation)e(License)223 503 y Fn(:)10
-b(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)37 b
-Fq(58)75 638 y(Concept)22 b(Index)9 b Fn(:)i(:)g(:)f(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)h(:)f(:)g(:)32 b Fq(66)75
-773 y(F)-6 b(unction)24 b(and)e(V)-6 b(ariable)22 b(Index)14
-b Fn(:)e(:)e(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)h(:)f(:)37 b Fq(67)p eop end
-%%Page: 1 5
-TeXDict begin 1 4 bop 75 -58 a Fs(Chapter)15 b(1:)k(Command)c(Line)h
-(Editing)1075 b(1)75 149 y Fo(1)41 b(Command)28 b(Line)f(Editing)75
-266 y Fs(This)15 b(c)o(hapter)g(describ)q(es)h(the)f(basic)g(features)g
-(of)f(the)i Fl(gnu)f Fs(command)g(line)g(editing)f(in)o(terface.)75
-382 y Fq(1.1)33 b(In)n(tro)r(duction)23 b(to)f(Line)h(Editing)75
-462 y Fs(The)15 b(follo)o(wing)e(paragraphs)i(describ)q(e)h(the)f
-(notation)f(used)h(to)g(represen)o(t)g(k)o(eystrok)o(es.)137
-529 y(The)k(text)e Fk(C-k)h Fs(is)f(read)i(as)e(`Con)o(trol-K')f(and)j
-(describ)q(es)f(the)h(c)o(haracter)e(pro)q(duced)i(when)g(the)f
-Fr(k)75 584 y Fs(k)o(ey)d(is)g(pressed)h(while)e(the)h(Con)o(trol)f(k)o
-(ey)h(is)g(depressed.)137 651 y(The)h(text)g Fk(M-k)f
-Fs(is)h(read)g(as)f(`Meta-K')g(and)h(describ)q(es)h(the)f(c)o(haracter)
-f(pro)q(duced)i(when)g(the)f(Meta)75 705 y(k)o(ey)g(\(if)g(y)o(ou)g(ha)
-o(v)o(e)g(one\))h(is)f(depressed,)h(and)g(the)g Fr(k)f
-Fs(k)o(ey)g(is)g(pressed.)25 b(The)17 b(Meta)e(k)o(ey)i(is)f(lab)q
-(eled)g Fr(ALT)75 760 y Fs(on)f(man)o(y)f(k)o(eyb)q(oards.)20
-b(On)15 b(k)o(eyb)q(oards)g(with)f(t)o(w)o(o)f(k)o(eys)i(lab)q(eled)g
-Fr(ALT)f Fs(\(usually)g(to)g(either)h(side)f(of)h(the)75
-815 y(space)g(bar\),)f(the)h Fr(ALT)g Fs(on)g(the)g(left)f(side)h(is)g
-(generally)f(set)h(to)f(w)o(ork)g(as)h(a)f(Meta)g(k)o(ey)l(.)20
-b(The)c Fr(ALT)e Fs(k)o(ey)h(on)75 870 y(the)f(righ)o(t)e(ma)o(y)h
-(also)g(b)q(e)h(con\014gured)g(to)f(w)o(ork)g(as)g(a)g(Meta)g(k)o(ey)g
-(or)g(ma)o(y)g(b)q(e)i(con\014gured)f(as)f(some)g(other)75
-925 y(mo)q(di\014er,)i(suc)o(h)g(as)g(a)g(Comp)q(ose)g(k)o(ey)g(for)g
-(t)o(yping)f(accen)o(ted)i(c)o(haracters.)137 992 y(If)d(y)o(ou)f(do)g
-(not)g(ha)o(v)o(e)f(a)h(Meta)g(or)f Fr(ALT)h Fs(k)o(ey)l(,)h(or)e
-(another)h(k)o(ey)g(w)o(orking)f(as)h(a)g(Meta)f(k)o(ey)l(,)i(the)f
-(iden)o(tical)75 1047 y(k)o(eystrok)o(e)h(can)i(b)q(e)f(generated)h(b)o
-(y)f(t)o(yping)f Fr(ESC)h Fj(\014rst)p Fs(,)f(and)i(then)f(t)o(yping)g
-Fr(k)p Fs(.)19 b(Either)14 b(pro)q(cess)g(is)g(kno)o(wn)75
-1101 y(as)h Fi(metafying)j Fs(the)d Fr(k)g Fs(k)o(ey)l(.)137
-1169 y(The)21 b(text)e Fk(M-C-k)h Fs(is)g(read)g(as)f(`Meta-Con)o
-(trol-k')f(and)i(describ)q(es)h(the)f(c)o(haracter)g(pro)q(duced)h(b)o
-(y)75 1223 y Fi(metafying)d Fk(C-k)p Fs(.)137 1290 y(In)h(addition,)e
-(sev)o(eral)h(k)o(eys)f(ha)o(v)o(e)h(their)g(o)o(wn)f(names.)28
-b(Sp)q(eci\014cally)l(,)19 b Fr(DEL)p Fs(,)f Fr(ESC)p
-Fs(,)g Fr(LFD)p Fs(,)g Fr(SPC)p Fs(,)g Fr(RET)p Fs(,)75
-1345 y(and)f Fr(TAB)g Fs(all)f(stand)h(for)g(themselv)o(es)g(when)h
-(seen)f(in)g(this)g(text,)g(or)g(in)g(an)g(init)f(\014le)i(\(see)f
-(Section)g(1.3)75 1400 y([Readline)e(Init)g(File],)e(page)h(4\).)20
-b(If)15 b(y)o(our)f(k)o(eyb)q(oard)h(lac)o(ks)f(a)g Fr(LFD)h
-Fs(k)o(ey)l(,)f(t)o(yping)g Fr(C-j)h Fs(will)e(pro)q(duce)j(the)75
-1455 y(desired)f(c)o(haracter.)20 b(The)15 b Fr(RET)g
-Fs(k)o(ey)g(ma)o(y)f(b)q(e)i(lab)q(eled)f Fr(Return)g
-Fs(or)f Fr(Enter)h Fs(on)g(some)g(k)o(eyb)q(oards.)75
-1571 y Fq(1.2)33 b(Readline)21 b(In)n(teraction)75 1651
-y Fs(Often)c(during)f(an)g(in)o(teractiv)o(e)f(session)g(y)o(ou)h(t)o
-(yp)q(e)h(in)f(a)g(long)f(line)h(of)g(text,)g(only)g(to)f(notice)h
-(that)g(the)75 1705 y(\014rst)g(w)o(ord)f(on)h(the)h(line)f(is)f(missp)
-q(elled.)23 b(The)16 b(Readline)h(library)e(giv)o(es)g(y)o(ou)h(a)g
-(set)g(of)g(commands)g(for)75 1760 y(manipulating)d(the)i(text)g(as)f
-(y)o(ou)h(t)o(yp)q(e)g(it)f(in,)g(allo)o(wing)f(y)o(ou)i(to)f(just)h
-(\014x)g(y)o(our)f(t)o(yp)q(o,)g(and)h(not)g(forcing)75
-1815 y(y)o(ou)f(to)f(ret)o(yp)q(e)h(the)g(ma)s(jorit)o(y)e(of)i(the)g
-(line.)19 b(Using)14 b(these)g(editing)f(commands,)h(y)o(ou)g(mo)o(v)o
-(e)f(the)h(cursor)75 1870 y(to)i(the)i(place)f(that)f(needs)i
-(correction,)f(and)g(delete)g(or)g(insert)f(the)i(text)e(of)h(the)g
-(corrections.)25 b(Then,)75 1924 y(when)13 b(y)o(ou)f(are)g
-(satis\014ed)g(with)g(the)h(line,)f(y)o(ou)g(simply)g(press)g
-Fr(RET)p Fs(.)19 b(Y)l(ou)12 b(do)h(not)f(ha)o(v)o(e)g(to)g(b)q(e)h(at)
-f(the)g(end)75 1979 y(of)k(the)h(line)f(to)g(press)h
-Fr(RET)p Fs(;)g(the)f(en)o(tire)g(line)h(is)f(accepted)h(regardless)f
-(of)g(the)h(lo)q(cation)e(of)i(the)f(cursor)75 2034 y(within)e(the)i
-(line.)75 2133 y Fh(1.2.1)30 b(Readline)20 b(Bare)g(Essen)n(tials)75
-2207 y Fs(In)d(order)e(to)h(en)o(ter)g(c)o(haracters)f(in)o(to)g(the)h
-(line,)g(simply)f(t)o(yp)q(e)h(them.)23 b(The)16 b(t)o(yp)q(ed)g(c)o
-(haracter)g(app)q(ears)75 2262 y(where)g(the)h(cursor)f(w)o(as,)f(and)h
-(then)h(the)f(cursor)g(mo)o(v)o(es)g(one)g(space)g(to)g(the)g(righ)o
-(t.)22 b(If)17 b(y)o(ou)f(mist)o(yp)q(e)f(a)75 2317 y(c)o(haracter,)f
-(y)o(ou)h(can)g(use)h(y)o(our)f(erase)g(c)o(haracter)f(to)h(bac)o(k)g
-(up)g(and)h(delete)f(the)g(mist)o(yp)q(ed)g(c)o(haracter.)137
-2384 y(Sometimes)g(y)o(ou)g(ma)o(y)g(mist)o(yp)q(e)g(a)g(c)o(haracter,)
-f(and)i(not)f(notice)g(the)g(error)g(un)o(til)g(y)o(ou)g(ha)o(v)o(e)g
-(t)o(yp)q(ed)75 2438 y(sev)o(eral)f(other)g(c)o(haracters.)19
-b(In)c(that)e(case,)i(y)o(ou)f(can)g(t)o(yp)q(e)h Fk(C-b)f
-Fs(to)g(mo)o(v)o(e)f(the)i(cursor)f(to)g(the)g(left,)g(and)75
-2493 y(then)i(correct)e(y)o(our)h(mistak)o(e.)k(Afterw)o(ards,)13
-b(y)o(ou)i(can)g(mo)o(v)o(e)g(the)g(cursor)g(to)g(the)g(righ)o(t)f
-(with)g Fk(C-f)p Fs(.)137 2560 y(When)j(y)o(ou)f(add)g(text)g(in)g(the)
-h(middle)f(of)g(a)f(line,)h(y)o(ou)g(will)f(notice)h(that)g(c)o
-(haracters)f(to)h(the)g(righ)o(t)75 2615 y(of)e(the)g(cursor)g(are)g
-(`pushed)h(o)o(v)o(er')f(to)f(mak)o(e)h(ro)q(om)g(for)f(the)i(text)f
-(that)f(y)o(ou)h(ha)o(v)o(e)g(inserted.)20 b(Lik)o(ewise,)75
-2670 y(when)f(y)o(ou)g(delete)g(text)f(b)q(ehind)i(the)f(cursor,)g(c)o
-(haracters)f(to)g(the)h(righ)o(t)e(of)h(the)h(cursor)g(are)f(`pulled)p
-eop end
-%%Page: 2 6
-TeXDict begin 2 5 bop 75 -58 a Fs(Chapter)15 b(1:)k(Command)c(Line)h
-(Editing)1075 b(2)75 149 y(bac)o(k')11 b(to)g(\014ll)f(in)i(the)f
-(blank)g(space)h(created)f(b)o(y)h(the)f(remo)o(v)m(al)f(of)h(the)h
-(text.)18 b(A)11 b(list)f(of)h(the)h(bare)f(essen)o(tials)75
-204 y(for)k(editing)f(the)h(text)g(of)g(an)g(input)g(line)g(follo)o
-(ws.)75 281 y Fk(C-b)168 b Fs(Mo)o(v)o(e)14 b(bac)o(k)h(one)h(c)o
-(haracter.)75 358 y Fk(C-f)168 b Fs(Mo)o(v)o(e)14 b(forw)o(ard)g(one)h
-(c)o(haracter.)75 434 y Fr(DEL)g Fs(or)f Fr(Backspace)315
-489 y Fs(Delete)h(the)g(c)o(haracter)g(to)f(the)h(left)g(of)g(the)g
-(cursor.)75 566 y Fk(C-d)168 b Fs(Delete)15 b(the)g(c)o(haracter)g
-(underneath)h(the)f(cursor.)75 642 y(Prin)o(ting)f(c)o(haracters)315
-697 y(Insert)h(the)h(c)o(haracter)e(in)o(to)g(the)i(line)f(at)f(the)h
-(cursor.)75 774 y Fk(C-_)g Fs(or)f Fk(C-x)h(C-u)315 829
-y Fs(Undo)i(the)g(last)e(editing)h(command.)25 b(Y)l(ou)17
-b(can)g(undo)g(all)e(the)i(w)o(a)o(y)f(bac)o(k)h(to)f(an)g(empt)o(y)315
-884 y(line.)75 960 y(\(Dep)q(ending)f(on)g(y)o(our)f(con\014guration,)g
-(the)h Fr(Backspace)e Fs(k)o(ey)i(b)q(e)g(set)g(to)f(delete)h(the)g(c)o
-(haracter)f(to)g(the)75 1015 y(left)j(of)h(the)g(cursor)g(and)g(the)h
-Fr(DEL)e Fs(k)o(ey)h(set)g(to)g(delete)g(the)g(c)o(haracter)g
-(underneath)g(the)h(cursor,)f(lik)o(e)75 1070 y Fk(C-d)p
-Fs(,)c(rather)h(than)g(the)g(c)o(haracter)g(to)f(the)i(left)e(of)h(the)
-g(cursor.\))75 1166 y Fh(1.2.2)30 b(Readline)20 b(Mo)n(v)n(emen)n(t)i
-(Commands)75 1240 y Fs(The)14 b(ab)q(o)o(v)o(e)g(table)f(describ)q(es)h
-(the)g(most)f(basic)h(k)o(eystrok)o(es)f(that)g(y)o(ou)g(need)i(in)f
-(order)f(to)g(do)h(editing)f(of)75 1295 y(the)k(input)f(line.)23
-b(F)l(or)16 b(y)o(our)g(con)o(v)o(enience,)h(man)o(y)f(other)g
-(commands)h(ha)o(v)o(e)f(b)q(een)h(added)h(in)e(addition)75
-1349 y(to)h Fk(C-b)p Fs(,)g Fk(C-f)p Fs(,)g Fk(C-d)p
-Fs(,)g(and)h Fr(DEL)p Fs(.)26 b(Here)18 b(are)f(some)g(commands)h(for)e
-(mo)o(ving)h(more)g(rapidly)g(ab)q(out)g(the)75 1404
-y(line.)75 1481 y Fk(C-a)168 b Fs(Mo)o(v)o(e)14 b(to)h(the)g(start)f
-(of)h(the)g(line.)75 1558 y Fk(C-e)168 b Fs(Mo)o(v)o(e)14
-b(to)h(the)g(end)h(of)f(the)g(line.)75 1634 y Fk(M-f)168
-b Fs(Mo)o(v)o(e)14 b(forw)o(ard)g(a)h(w)o(ord,)f(where)i(a)e(w)o(ord)h
-(is)g(comp)q(osed)g(of)g(letters)f(and)i(digits.)75 1711
-y Fk(M-b)168 b Fs(Mo)o(v)o(e)14 b(bac)o(kw)o(ard)h(a)g(w)o(ord.)75
-1788 y Fk(C-l)168 b Fs(Clear)14 b(the)i(screen,)f(reprin)o(ting)f(the)h
-(curren)o(t)g(line)g(at)g(the)g(top.)137 1864 y(Notice)d(ho)o(w)g
-Fk(C-f)g Fs(mo)o(v)o(es)f(forw)o(ard)g(a)h(c)o(haracter,)g(while)g
-Fk(M-f)g Fs(mo)o(v)o(es)f(forw)o(ard)g(a)h(w)o(ord.)18
-b(It)13 b(is)f(a)g(lo)q(ose)75 1919 y(con)o(v)o(en)o(tion)i(that)g(con)
-o(trol)g(k)o(eystrok)o(es)g(op)q(erate)h(on)f(c)o(haracters)h(while)f
-(meta)g(k)o(eystrok)o(es)g(op)q(erate)h(on)75 1974 y(w)o(ords.)75
-2071 y Fh(1.2.3)30 b(Readline)20 b(Killing)h(Commands)75
-2144 y Fi(Killing)16 b Fs(text)d(means)g(to)g(delete)g(the)g(text)g
-(from)g(the)g(line,)g(but)h(to)e(sa)o(v)o(e)h(it)f(a)o(w)o(a)o(y)g(for)
-h(later)f(use,)i(usually)75 2199 y(b)o(y)f Fi(y)o(anking)k
-Fs(\(re-inserting\))12 b(it)h(bac)o(k)g(in)o(to)g(the)g(line.)19
-b(\(`Cut')12 b(and)i(`paste')e(are)h(more)h(recen)o(t)f(jargon)g(for)75
-2254 y(`kill')g(and)j(`y)o(ank'.\))137 2319 y(If)g(the)f(description)f
-(for)h(a)g(command)g(sa)o(ys)f(that)h(it)f(`kills')f(text,)h(then)i(y)o
-(ou)f(can)g(b)q(e)h(sure)f(that)f(y)o(ou)75 2374 y(can)h(get)g(the)g
-(text)g(bac)o(k)g(in)g(a)g(di\013eren)o(t)f(\(or)h(the)g(same\))g
-(place)g(later.)137 2440 y(When)d(y)o(ou)g(use)g(a)f(kill)f(command,)i
-(the)g(text)f(is)g(sa)o(v)o(ed)g(in)h(a)f Fi(kill-ring)p
-Fs(.)17 b(An)o(y)12 b(n)o(um)o(b)q(er)g(of)f(consecutiv)o(e)75
-2495 y(kills)j(sa)o(v)o(e)h(all)f(of)h(the)h(killed)f(text)g(together,)
-f(so)h(that)g(when)h(y)o(ou)f(y)o(ank)g(it)g(bac)o(k,)g(y)o(ou)g(get)g
-(it)g(all.)20 b(The)75 2549 y(kill)15 b(ring)h(is)f(not)h(line)g(sp)q
-(eci\014c;)h(the)f(text)g(that)f(y)o(ou)h(killed)g(on)g(a)g(previously)
-f(t)o(yp)q(ed)i(line)f(is)f(a)o(v)m(ailable)75 2604 y(to)g(b)q(e)g(y)o
-(ank)o(ed)g(bac)o(k)h(later,)d(when)j(y)o(ou)f(are)g(t)o(yping)f
-(another)h(line.)137 2670 y(Here)h(is)e(the)i(list)e(of)g(commands)h
-(for)g(killing)f(text.)p eop end
-%%Page: 3 7
-TeXDict begin 3 6 bop 75 -58 a Fs(Chapter)15 b(1:)k(Command)c(Line)h
-(Editing)1075 b(3)75 149 y Fk(C-k)168 b Fs(Kill)14 b(the)i(text)e(from)
-h(the)g(curren)o(t)g(cursor)g(p)q(osition)f(to)h(the)g(end)h(of)f(the)g
-(line.)75 230 y Fk(M-d)168 b Fs(Kill)12 b(from)h(the)g(cursor)g(to)f
-(the)i(end)g(of)e(the)i(curren)o(t)f(w)o(ord,)f(or,)h(if)f(b)q(et)o(w)o
-(een)i(w)o(ords,)e(to)h(the)315 285 y(end)j(of)f(the)g(next)g(w)o(ord.)
-k(W)l(ord)c(b)q(oundaries)h(are)f(the)g(same)g(as)g(those)f(used)i(b)o
-(y)f Fk(M-f)p Fs(.)75 366 y Fk(M-DEL)120 b Fs(Kill)14
-b(from)h(the)g(cursor)g(the)h(start)e(of)h(the)g(curren)o(t)g(w)o(ord,)
-f(or,)h(if)f(b)q(et)o(w)o(een)i(w)o(ords,)e(to)h(the)315
-421 y(start)j(of)h(the)g(previous)g(w)o(ord.)31 b(W)l(ord)19
-b(b)q(oundaries)g(are)g(the)h(same)e(as)h(those)g(used)h(b)o(y)315
-476 y Fk(M-b)p Fs(.)75 557 y Fk(C-w)168 b Fs(Kill)17
-b(from)f(the)i(cursor)f(to)g(the)h(previous)f(whitespace.)27
-b(This)17 b(is)g(di\013eren)o(t)f(than)i Fk(M-DEL)315
-611 y Fs(b)q(ecause)e(the)f(w)o(ord)g(b)q(oundaries)g(di\013er.)137
-693 y(Here)21 b(is)g(ho)o(w)f(to)g Fi(y)o(ank)j Fs(the)e(text)f(bac)o
-(k)h(in)o(to)f(the)g(line.)37 b(Y)l(anking)20 b(means)h(to)f(cop)o(y)h
-(the)g(most-)75 748 y(recen)o(tly-killed)14 b(text)h(from)f(the)i(kill)
-e(bu\013er.)75 829 y Fk(C-y)168 b Fs(Y)l(ank)15 b(the)h(most)e(recen)o
-(tly)h(killed)f(text)h(bac)o(k)g(in)o(to)f(the)i(bu\013er)f(at)f(the)i
-(cursor.)75 910 y Fk(M-y)168 b Fs(Rotate)17 b(the)g(kill-ring,)f(and)h
-(y)o(ank)g(the)h(new)f(top.)26 b(Y)l(ou)17 b(can)h(only)f(do)g(this)g
-(if)f(the)i(prior)315 965 y(command)d(is)g Fk(C-y)g Fs(or)f
-Fk(M-y)p Fs(.)75 1066 y Fh(1.2.4)30 b(Readline)20 b(Argumen)n(ts)75
-1139 y Fs(Y)l(ou)g(can)f(pass)h(n)o(umeric)f(argumen)o(ts)g(to)g
-(Readline)h(commands.)32 b(Sometimes)19 b(the)h(argumen)o(t)e(acts)75
-1194 y(as)i(a)f(rep)q(eat)i(coun)o(t,)f(other)g(times)f(it)h(is)f(the)h
-Fj(sign)j Fs(of)c(the)h(argumen)o(t)g(that)f(is)h(signi\014can)o(t.)33
-b(If)20 b(y)o(ou)75 1249 y(pass)d(a)f(negativ)o(e)g(argumen)o(t)g(to)g
-(a)g(command)h(whic)o(h)g(normally)e(acts)h(in)h(a)f(forw)o(ard)g
-(direction,)g(that)75 1304 y(command)i(will)e(act)h(in)h(a)f(bac)o(kw)o
-(ard)g(direction.)26 b(F)l(or)17 b(example,)h(to)f(kill)g(text)g(bac)o
-(k)g(to)g(the)h(start)e(of)75 1359 y(the)f(line,)g(y)o(ou)g(migh)o(t)f
-(t)o(yp)q(e)h(`)p Fr(M--)f(C-k)p Fs('.)137 1427 y(The)h(general)e(w)o
-(a)o(y)g(to)h(pass)g(n)o(umeric)g(argumen)o(ts)f(to)g(a)h(command)g(is)
-g(to)f(t)o(yp)q(e)h(meta)g(digits)f(b)q(efore)75 1482
-y(the)j(command.)k(If)c(the)f(\014rst)g(`digit')f(t)o(yp)q(ed)h(is)g(a)
-h(min)o(us)f(sign)g(\(`)p Fr(-)p Fs('\),)e(then)j(the)f(sign)g(of)g
-(the)h(argumen)o(t)75 1537 y(will)i(b)q(e)i(negativ)o(e.)30
-b(Once)20 b(y)o(ou)f(ha)o(v)o(e)g(t)o(yp)q(ed)g(one)g(meta)g(digit)f
-(to)g(get)h(the)g(argumen)o(t)f(started,)h(y)o(ou)75
-1592 y(can)c(t)o(yp)q(e)f(the)h(remainder)f(of)g(the)g(digits,)f(and)i
-(then)g(the)f(command.)20 b(F)l(or)13 b(example,)h(to)g(giv)o(e)g(the)g
-Fk(C-d)75 1646 y Fs(command)19 b(an)f(argumen)o(t)g(of)g(10,)h(y)o(ou)f
-(could)h(t)o(yp)q(e)g(`)p Fr(M-1)14 b(0)h(C-d)p Fs(',)k(whic)o(h)f
-(will)f(delete)i(the)g(next)g(ten)75 1701 y(c)o(haracters)14
-b(on)i(the)f(input)g(line.)75 1802 y Fh(1.2.5)30 b(Searc)n(hing)21
-b(for)f(Commands)h(in)f(the)h(History)75 1875 y Fs(Readline)11
-b(pro)o(vides)f(commands)h(for)f(searc)o(hing)g(through)g(the)h
-(command)f(history)g(for)g(lines)g(con)o(taining)75 1930
-y(a)15 b(sp)q(eci\014ed)h(string.)j(There)c(are)g(t)o(w)o(o)f(searc)o
-(h)h(mo)q(des:)20 b Fi(incremen)o(tal)c Fs(and)g Fi(non-incremen)o(tal)
-p Fs(.)137 1999 y(Incremen)o(tal)d(searc)o(hes)g(b)q(egin)g(b)q(efore)g
-(the)g(user)g(has)g(\014nished)g(t)o(yping)f(the)h(searc)o(h)g(string.)
-18 b(As)13 b(eac)o(h)75 2054 y(c)o(haracter)k(of)g(the)h(searc)o(h)g
-(string)e(is)h(t)o(yp)q(ed,)i(Readline)f(displa)o(ys)e(the)i(next)g(en)
-o(try)f(from)g(the)h(history)75 2108 y(matc)o(hing)11
-b(the)h(string)f(t)o(yp)q(ed)h(so)g(far.)18 b(An)13 b(incremen)o(tal)e
-(searc)o(h)h(requires)f(only)h(as)g(man)o(y)f(c)o(haracters)g(as)75
-2163 y(needed)16 b(to)d(\014nd)j(the)e(desired)h(history)e(en)o(try)l
-(.)19 b(T)l(o)c(searc)o(h)f(bac)o(kw)o(ard)f(in)i(the)f(history)f(for)h
-(a)g(particular)75 2218 y(string,)f(t)o(yp)q(e)i Fk(C-r)p
-Fs(.)k(T)o(yping)c Fk(C-s)f Fs(searc)o(hes)h(forw)o(ard)e(through)h
-(the)h(history)l(.)k(The)c(c)o(haracters)f(presen)o(t)75
-2273 y(in)19 b(the)g(v)m(alue)g(of)g(the)g Fr(isearch-terminators)d
-Fs(v)m(ariable)i(are)h(used)h(to)e(terminate)g(an)h(incremen)o(tal)75
-2328 y(searc)o(h.)35 b(If)20 b(that)f(v)m(ariable)h(has)g(not)g(b)q
-(een)h(assigned)f(a)g(v)m(alue,)h(the)f Fr(ESC)g Fs(and)g
-Fk(C-J)g Fs(c)o(haracters)f(will)75 2382 y(terminate)h(an)h(incremen)o
-(tal)g(searc)o(h.)37 b Fk(C-g)21 b Fs(will)f(ab)q(ort)h(an)g(incremen)o
-(tal)f(searc)o(h)h(and)g(restore)g(the)75 2437 y(original)13
-b(line.)19 b(When)c(the)f(searc)o(h)g(is)g(terminated,)g(the)g(history)
-g(en)o(try)g(con)o(taining)f(the)i(searc)o(h)f(string)75
-2492 y(b)q(ecomes)i(the)f(curren)o(t)g(line.)137 2560
-y(T)l(o)g(\014nd)i(other)e(matc)o(hing)f(en)o(tries)h(in)h(the)f
-(history)g(list,)f(t)o(yp)q(e)h Fk(C-r)g Fs(or)g Fk(C-s)g
-Fs(as)h(appropriate.)j(This)75 2615 y(will)12 b(searc)o(h)h(bac)o(kw)o
-(ard)f(or)g(forw)o(ard)g(in)h(the)g(history)f(for)h(the)g(next)g(en)o
-(try)g(matc)o(hing)f(the)h(searc)o(h)g(string)75 2670
-y(t)o(yp)q(ed)19 b(so)g(far.)30 b(An)o(y)19 b(other)f(k)o(ey)h
-(sequence)h(b)q(ound)g(to)e(a)h(Readline)g(command)f(will)g(terminate)g
-(the)p eop end
-%%Page: 4 8
-TeXDict begin 4 7 bop 75 -58 a Fs(Chapter)15 b(1:)k(Command)c(Line)h
-(Editing)1075 b(4)75 149 y(searc)o(h)13 b(and)f(execute)i(that)e
-(command.)19 b(F)l(or)12 b(instance,)h(a)f Fr(RET)g Fs(will)g
-(terminate)f(the)i(searc)o(h)g(and)g(accept)75 204 y(the)i(line,)f
-(thereb)o(y)h(executing)f(the)h(command)g(from)f(the)g(history)g(list.)
-k(A)d(mo)o(v)o(emen)o(t)f(command)g(will)75 259 y(terminate)g(the)h
-(searc)o(h,)g(mak)o(e)g(the)g(last)f(line)h(found)h(the)f(curren)o(t)g
-(line,)f(and)i(b)q(egin)f(editing.)137 323 y(Readline)j(remem)o(b)q
-(ers)f(the)h(last)e(incremen)o(tal)h(searc)o(h)g(string.)26
-b(If)17 b(t)o(w)o(o)f Fk(C-r)p Fs(s)h(are)g(t)o(yp)q(ed)h(without)75
-378 y(an)o(y)g(in)o(terv)o(ening)f(c)o(haracters)h(de\014ning)g(a)g
-(new)h(searc)o(h)f(string,)f(an)o(y)h(remem)o(b)q(ered)h(searc)o(h)f
-(string)f(is)75 433 y(used.)137 498 y(Non-incremen)o(tal)23
-b(searc)o(hes)g(read)h(the)f(en)o(tire)g(searc)o(h)g(string)f(b)q
-(efore)i(starting)e(to)g(searc)o(h)i(for)75 552 y(matc)o(hing)c
-(history)h(lines.)37 b(The)22 b(searc)o(h)f(string)f(ma)o(y)h(b)q(e)h
-(t)o(yp)q(ed)f(b)o(y)h(the)f(user)h(or)e(b)q(e)i(part)f(of)g(the)75
-607 y(con)o(ten)o(ts)15 b(of)f(the)i(curren)o(t)f(line.)75
-718 y Fq(1.3)33 b(Readline)21 b(Init)i(File)75 797 y
-Fs(Although)e(the)h(Readline)h(library)d(comes)i(with)f(a)h(set)f(of)h
-(Emacs-lik)o(e)f(k)o(eybindings)g(installed)g(b)o(y)75
-852 y(default,)12 b(it)g(is)g(p)q(ossible)g(to)g(use)g(a)g(di\013eren)o
-(t)g(set)g(of)g(k)o(eybindings.)19 b(An)o(y)12 b(user)h(can)f
-(customize)g(programs)75 907 y(that)21 b(use)i(Readline)f(b)o(y)h
-(putting)e(commands)h(in)g(an)g Fi(inputrc)j Fs(\014le,)f(con)o(v)o(en)
-o(tionally)c(in)i(his)g(home)75 962 y(directory)l(.)c(The)12
-b(name)g(of)f(this)g(\014le)h(is)f(tak)o(en)g(from)g(the)h(v)m(alue)g
-(of)f(the)h(en)o(vironmen)o(t)f(v)m(ariable)g Fr(INPUTRC)p
-Fs(.)75 1017 y(If)17 b(that)g(v)m(ariable)f(is)h(unset,)g(the)g
-(default)g(is)g(`)p Fr(~/.inputrc)p Fs('.)23 b(If)17
-b(that)g(\014le)g(do)q(es)g(not)g(exist)g(or)f(cannot)75
-1071 y(b)q(e)g(read,)f(the)g(ultimate)f(default)h(is)f(`)p
-Fr(/etc/inputrc)p Fs('.)137 1136 y(When)h(a)g(program)f(whic)o(h)g
-(uses)h(the)g(Readline)g(library)f(starts)f(up,)i(the)g(init)f(\014le)h
-(is)f(read,)h(and)g(the)75 1191 y(k)o(ey)g(bindings)g(are)g(set.)137
-1255 y(In)f(addition,)f(the)g Fr(C-x)i(C-r)e Fs(command)g(re-reads)h
-(this)f(init)f(\014le,)i(th)o(us)f(incorp)q(orating)f(an)o(y)h(c)o
-(hanges)75 1310 y(that)h(y)o(ou)h(migh)o(t)f(ha)o(v)o(e)h(made)g(to)g
-(it.)75 1404 y Fh(1.3.1)30 b(Readline)20 b(Init)g(File)h(Syn)n(tax)75
-1477 y Fs(There)g(are)f(only)g(a)g(few)h(basic)f(constructs)g(allo)o(w)
-o(ed)f(in)h(the)h(Readline)f(init)g(\014le.)36 b(Blank)20
-b(lines)g(are)75 1532 y(ignored.)35 b(Lines)21 b(b)q(eginning)g(with)e
-(a)i(`)p Fr(#)p Fs(')e(are)h(commen)o(ts.)35 b(Lines)21
-b(b)q(eginning)g(with)f(a)g(`)p Fr($)p Fs(')f(indicate)75
-1587 y(conditional)g(constructs)i(\(see)f(Section)h(1.3.2)e
-([Conditional)g(Init)h(Constructs],)h(page)f(10\).)36
-b(Other)75 1642 y(lines)15 b(denote)g(v)m(ariable)g(settings)f(and)h(k)
-o(ey)g(bindings.)75 1716 y(V)l(ariable)f(Settings)315
-1771 y(Y)l(ou)20 b(can)h(mo)q(dify)f(the)g(run-time)g(b)q(eha)o(vior)g
-(of)f(Readline)i(b)o(y)f(altering)f(the)h(v)m(alues)g(of)315
-1826 y(v)m(ariables)c(in)h(Readline)g(using)f(the)h Fr(set)g
-Fs(command)f(within)g(the)h(init)f(\014le.)25 b(The)17
-b(syn)o(tax)315 1880 y(is)e(simple:)435 1945 y Fr(set)23
-b Fk(variable)28 b(value)315 2009 y Fs(Here,)14 b(for)f(example,)g(is)g
-(ho)o(w)g(to)g(c)o(hange)h(from)f(the)h(default)f(Emacs-lik)o(e)g(k)o
-(ey)g(binding)h(to)315 2064 y(use)i Fr(vi)e Fs(line)h(editing)g
-(commands:)435 2129 y Fr(set)23 b(editing-mode)g(vi)315
-2193 y Fs(V)l(ariable)17 b(names)g(and)h(v)m(alues,)g(where)f
-(appropriate,)g(are)g(recognized)h(without)e(regard)315
-2248 y(to)f(case.)k(Unrecognized)d(v)m(ariable)f(names)g(are)g
-(ignored.)315 2312 y(Bo)q(olean)d(v)m(ariables)g(\(those)g(that)g(can)g
-(b)q(e)i(set)e(to)g(on)g(or)g(o\013)t(\))f(are)h(set)h(to)f(on)g(if)g
-(the)h(v)m(alue)f(is)315 2367 y(n)o(ull)g(or)f(empt)o(y)l(,)h
-Fi(on)h Fs(\(case-insensitiv)o(e\),)d(or)i(1.)19 b(An)o(y)12
-b(other)g(v)m(alue)g(results)f(in)h(the)h(v)m(ariable)315
-2422 y(b)q(eing)i(set)g(to)g(o\013.)315 2486 y(A)g(great)g(deal)f(of)h
-(run-time)g(b)q(eha)o(vior)g(is)g(c)o(hangeable)g(with)f(the)i(follo)o
-(wing)c(v)m(ariables.)315 2560 y Fr(bell-style)555 2615
-y Fs(Con)o(trols)20 b(what)i(happ)q(ens)h(when)f(Readline)g(w)o(an)o
-(ts)f(to)g(ring)h(the)g(termi-)555 2670 y(nal)c(b)q(ell.)30
-b(If)19 b(set)f(to)g(`)p Fr(none)p Fs(',)g(Readline)h(nev)o(er)g(rings)
-f(the)g(b)q(ell.)30 b(If)19 b(set)g(to)p eop end
-%%Page: 5 9
-TeXDict begin 5 8 bop 75 -58 a Fs(Chapter)15 b(1:)k(Command)c(Line)h
-(Editing)1075 b(5)555 149 y(`)p Fr(visible)p Fs(',)15
-b(Readline)h(uses)h(a)f(visible)g(b)q(ell)h(if)f(one)g(is)g(a)o(v)m
-(ailable.)23 b(If)16 b(set)h(to)555 204 y(`)p Fr(audible)p
-Fs(')g(\(the)h(default\),)h(Readline)g(attempts)f(to)g(ring)g(the)h
-(terminal's)555 259 y(b)q(ell.)315 332 y Fr(bind-tty-special-chars)555
-387 y Fs(If)k(set)f(to)g(`)p Fr(on)p Fs(',)h(Readline)g(attempts)f(to)g
-(bind)h(the)f(con)o(trol)g(c)o(haracters)555 442 y(treated)17
-b(sp)q(ecially)g(b)o(y)h(the)g(k)o(ernel's)f(terminal)f(driv)o(er)h(to)
-g(their)h(Readline)555 496 y(equiv)m(alen)o(ts.)315 570
-y Fr(comment-begin)555 624 y Fs(The)d(string)e(to)h(insert)h(at)e(the)i
-(b)q(eginning)g(of)f(the)h(line)f(when)h(the)g Fr(insert-)555
-679 y(comment)f Fs(command)h(is)g(executed.)21 b(The)15
-b(default)g(v)m(alue)g(is)g Fr("#")p Fs(.)315 752 y Fr
-(completion-display-width)555 807 y Fs(The)21 b(n)o(um)o(b)q(er)g(of)g
-(screen)g(columns)f(used)i(to)e(displa)o(y)g(p)q(ossible)g(matc)o(hes)
-555 862 y(when)15 b(p)q(erforming)f(completion.)19 b(The)14
-b(v)m(alue)h(is)f(ignored)g(if)g(it)g(is)g(less)g(than)555
-917 y(0)f(or)f(greater)h(than)g(the)g(terminal)f(screen)h(width.)19
-b(A)13 b(v)m(alue)g(of)g(0)g(will)f(cause)555 971 y(matc)o(hes)j(to)f
-(b)q(e)i(displa)o(y)o(ed)f(one)g(p)q(er)h(line.)j(The)d(default)e(v)m
-(alue)i(is)f(-1.)315 1044 y Fr(completion-ignore-case)555
-1099 y Fs(If)f(set)f(to)g(`)p Fr(on)p Fs(',)g(Readline)h(p)q(erforms)f
-(\014lename)h(matc)o(hing)f(and)h(completion)555 1154
-y(in)h(a)g(case-insensitiv)o(e)f(fashion.)20 b(The)15
-b(default)g(v)m(alue)g(is)g(`)p Fr(off)p Fs('.)315 1227
-y Fr(completion-map-case)555 1282 y Fs(If)c(set)g(to)g(`)p
-Fr(on)p Fs(',)f(and)h Fi(completion-ignore-case)i Fs(is)e(enabled,)h
-(Readline)f(treats)555 1337 y(h)o(yphens)16 b(\(`)p Fr(-)p
-Fs('\))e(and)i(underscores)g(\(`)p Fr(_)p Fs('\))d(as)j(equiv)m(alen)o
-(t)f(when)h(p)q(erforming)555 1391 y(case-insensitiv)o(e)e(\014lename)i
-(matc)o(hing)e(and)h(completion.)315 1465 y Fr
-(completion-prefix-display-)o(length)555 1519 y Fs(The)h(length)f(in)h
-(c)o(haracters)f(of)g(the)h(common)f(pre\014x)h(of)f(a)h(list)e(of)h(p)
-q(ossible)555 1574 y(completions)f(that)g(is)g(displa)o(y)o(ed)g
-(without)g(mo)q(di\014cation.)19 b(When)c(set)g(to)f(a)555
-1629 y(v)m(alue)f(greater)f(than)h(zero,)f(common)h(pre\014xes)g
-(longer)f(than)h(this)f(v)m(alue)h(are)555 1684 y(replaced)i(with)g(an)
-g(ellipsis)f(when)i(displa)o(ying)e(p)q(ossible)h(completions.)315
-1757 y Fr(completion-query-items)555 1812 y Fs(The)e(n)o(um)o(b)q(er)h
-(of)e(p)q(ossible)h(completions)g(that)f(determines)h(when)h(the)f
-(user)555 1866 y(is)h(ask)o(ed)h(whether)g(the)f(list)g(of)g(p)q
-(ossibilities)f(should)i(b)q(e)g(displa)o(y)o(ed.)k(If)c(the)555
-1921 y(n)o(um)o(b)q(er)f(of)f(p)q(ossible)g(completions)f(is)h(greater)
-g(than)g(this)g(v)m(alue,)h(Readline)555 1976 y(will)e(ask)h(the)g
-(user)h(whether)f(or)g(not)g(he)g(wishes)g(to)g(view)g(them;)g
-(otherwise,)555 2031 y(they)f(are)g(simply)g(listed.)18
-b(This)12 b(v)m(ariable)f(m)o(ust)h(b)q(e)h(set)f(to)f(an)h(in)o(teger)
-g(v)m(alue)555 2086 y(greater)g(than)g(or)g(equal)g(to)g(0.)18
-b(A)13 b(negativ)o(e)e(v)m(alue)i(means)f(Readline)h(should)555
-2140 y(nev)o(er)i(ask.)20 b(The)15 b(default)g(limit)f(is)g
-Fr(100)p Fs(.)315 2213 y Fr(convert-meta)555 2268 y Fs(If)d(set)g(to)g
-(`)p Fr(on)p Fs(',)f(Readline)h(will)f(con)o(v)o(ert)g(c)o(haracters)h
-(with)f(the)h(eigh)o(th)g(bit)f(set)555 2323 y(to)15
-b(an)h Fl(asci)q(i)f Fs(k)o(ey)h(sequence)h(b)o(y)f(stripping)f(the)h
-(eigh)o(th)f(bit)h(and)g(pre\014xing)555 2378 y(an)c
-Fr(ESC)g Fs(c)o(haracter,)g(con)o(v)o(erting)f(them)h(to)f(a)h
-(meta-pre\014xed)h(k)o(ey)f(sequence.)555 2433 y(The)j(default)g(v)m
-(alue)h(is)e(`)p Fr(on)p Fs('.)315 2506 y Fr(disable-completion)555
-2560 y Fs(If)19 b(set)f(to)f(`)p Fr(On)p Fs(',)h(Readline)h(will)e
-(inhibit)g(w)o(ord)h(completion.)28 b(Completion)555
-2615 y(c)o(haracters)12 b(will)g(b)q(e)i(inserted)f(in)o(to)f(the)h
-(line)f(as)h(if)g(they)g(had)g(b)q(een)h(mapp)q(ed)555
-2670 y(to)h Fr(self-insert)p Fs(.)j(The)d(default)g(is)g(`)p
-Fr(off)p Fs('.)p eop end
-%%Page: 6 10
-TeXDict begin 6 9 bop 75 -58 a Fs(Chapter)15 b(1:)k(Command)c(Line)h
-(Editing)1075 b(6)315 149 y Fr(editing-mode)555 204 y
-Fs(The)15 b Fr(editing-mode)d Fs(v)m(ariable)i(con)o(trols)f(whic)o(h)h
-(default)g(set)g(of)g(k)o(ey)g(bind-)555 259 y(ings)e(is)g(used.)20
-b(By)12 b(default,)h(Readline)f(starts)g(up)h(in)f(Emacs)g(editing)g
-(mo)q(de,)555 314 y(where)j(the)f(k)o(eystrok)o(es)g(are)g(most)g
-(similar)f(to)g(Emacs.)20 b(This)14 b(v)m(ariable)g(can)555
-369 y(b)q(e)i(set)f(to)f(either)h(`)p Fr(emacs)p Fs(')f(or)h(`)p
-Fr(vi)p Fs('.)315 442 y Fr(echo-control-characters)555
-496 y Fs(When)h(set)e(to)h(`)p Fr(on)p Fs(',)f(on)h(op)q(erating)f
-(systems)h(that)f(indicate)h(they)g(supp)q(ort)555 551
-y(it,)g(readline)g(ec)o(ho)q(es)h(a)g(c)o(haracter)f(corresp)q(onding)h
-(to)f(a)g(signal)g(generated)555 606 y(from)f(the)i(k)o(eyb)q(oard.)k
-(The)15 b(default)g(is)f(`)p Fr(on)p Fs('.)315 679 y
-Fr(enable-keypad)555 734 y Fs(When)e(set)f(to)h(`)p Fr(on)p
-Fs(',)e(Readline)i(will)f(try)g(to)g(enable)h(the)g(application)e(k)o
-(eypad)555 789 y(when)k(it)e(is)h(called.)19 b(Some)13
-b(systems)g(need)h(this)f(to)g(enable)g(the)h(arro)o(w)e(k)o(eys.)555
-844 y(The)j(default)g(is)g(`)p Fr(off)p Fs('.)315 917
-y Fr(enable-meta-key)555 971 y Fs(When)20 b(set)g(to)f(`)p
-Fr(on)p Fs(',)h(Readline)g(will)e(try)i(to)f(enable)h(an)o(y)g(meta)f
-(mo)q(di\014er)555 1026 y(k)o(ey)i(the)g(terminal)e(claims)h(to)g(supp)
-q(ort)h(when)h(it)e(is)g(called.)37 b(On)21 b(man)o(y)555
-1081 y(terminals,)16 b(the)i(meta)f(k)o(ey)h(is)f(used)h(to)f(send)h
-(eigh)o(t-bit)e(c)o(haracters.)27 b(The)555 1136 y(default)15
-b(is)f(`)p Fr(on)p Fs('.)315 1209 y Fr(expand-tilde)555
-1264 y Fs(If)g(set)g(to)f(`)p Fr(on)p Fs(',)f(tilde)i(expansion)f(is)h
-(p)q(erformed)g(when)g(Readline)g(attempts)555 1318 y(w)o(ord)h
-(completion.)k(The)c(default)g(is)f(`)p Fr(off)p Fs('.)315
-1391 y Fr(history-preserve-point)555 1446 y Fs(If)21
-b(set)g(to)f(`)p Fr(on)p Fs(',)h(the)g(history)f(co)q(de)h(attempts)f
-(to)g(place)h(the)g(p)q(oin)o(t)f(\(the)555 1501 y(curren)o(t)d(cursor)
-h(p)q(osition\))e(at)h(the)h(same)f(lo)q(cation)f(on)i(eac)o(h)g
-(history)e(line)555 1556 y(retriev)o(ed)i(with)f Fr(previous-history)f
-Fs(or)i Fr(next-history)p Fs(.)27 b(The)18 b(default)555
-1611 y(is)d(`)p Fr(off)p Fs('.)315 1684 y Fr(history-size)555
-1738 y Fs(Set)20 b(the)f(maxim)o(um)g(n)o(um)o(b)q(er)h(of)f(history)f
-(en)o(tries)h(sa)o(v)o(ed)g(in)g(the)h(history)555 1793
-y(list.)25 b(If)17 b(set)g(to)g(zero,)g(the)g(n)o(um)o(b)q(er)h(of)f
-(en)o(tries)f(in)h(the)g(history)g(list)f(is)g(not)555
-1848 y(limited.)315 1921 y Fr(horizontal-scroll-mode)555
-1976 y Fs(This)i(v)m(ariable)f(can)h(b)q(e)g(set)g(to)f(either)h(`)p
-Fr(on)p Fs(')f(or)g(`)p Fr(off)p Fs('.)27 b(Setting)18
-b(it)f(to)g(`)p Fr(on)p Fs(')555 2031 y(means)c(that)f(the)i(text)e(of)
-h(the)g(lines)g(b)q(eing)g(edited)g(will)f(scroll)g(horizon)o(tally)555
-2086 y(on)k(a)f(single)g(screen)i(line)e(when)i(they)f(are)f(longer)g
-(than)h(the)g(width)f(of)h(the)555 2140 y(screen,)e(instead)e(of)h
-(wrapping)f(on)o(to)g(a)h(new)g(screen)h(line.)19 b(By)13
-b(default,)g(this)555 2195 y(v)m(ariable)i(is)f(set)h(to)g(`)p
-Fr(off)p Fs('.)315 2268 y Fr(input-meta)555 2323 y Fs(If)h(set)f(to)g
-(`)p Fr(on)p Fs(',)f(Readline)i(will)f(enable)g(eigh)o(t-bit)g(input)g
-(\(it)g(will)f(not)h(clear)555 2378 y(the)20 b(eigh)o(th)f(bit)g(in)h
-(the)g(c)o(haracters)f(it)g(reads\),)h(regardless)f(of)h(what)f(the)555
-2433 y(terminal)g(claims)g(it)g(can)h(supp)q(ort.)34
-b(The)20 b(default)g(v)m(alue)g(is)g(`)p Fr(off)p Fs('.)33
-b(The)555 2487 y(name)15 b Fr(meta-flag)f Fs(is)h(a)g(synon)o(ym)g(for)
-f(this)h(v)m(ariable.)315 2560 y Fr(isearch-terminators)555
-2615 y Fs(The)26 b(string)f(of)g(c)o(haracters)g(that)g(should)h
-(terminate)f(an)h(incremen)o(tal)555 2670 y(searc)o(h)12
-b(without)g(subsequen)o(tly)g(executing)h(the)f(c)o(haracter)g(as)g(a)g
-(command)p eop end
-%%Page: 7 11
-TeXDict begin 7 10 bop 75 -58 a Fs(Chapter)15 b(1:)k(Command)c(Line)h
-(Editing)1075 b(7)555 149 y(\(see)22 b(Section)g(1.2.5)f([Searc)o
-(hing],)i(page)f(3\).)40 b(If)23 b(this)f(v)m(ariable)f(has)h(not)555
-204 y(b)q(een)d(giv)o(en)e(a)g(v)m(alue,)i(the)f(c)o(haracters)e
-Fr(ESC)i Fs(and)g Fk(C-J)f Fs(will)f(terminate)h(an)555
-259 y(incremen)o(tal)d(searc)o(h.)315 344 y Fr(keymap)96
-b Fs(Sets)19 b(Readline's)h(idea)f(of)g(the)g(curren)o(t)h(k)o(eymap)f
-(for)f(k)o(ey)i(binding)f(com-)555 399 y(mands.)41 b(Acceptable)22
-b Fr(keymap)g Fs(names)g(are)f Fr(emacs)p Fs(,)i Fr(emacs-standard)p
-Fs(,)555 454 y Fr(emacs-meta)p Fs(,)49 b Fr(emacs-ctlx)p
-Fs(,)g Fr(vi)p Fs(,)h Fr(vi-move)p Fs(,)f Fr(vi-command)p
-Fs(,)g(and)555 509 y Fr(vi-insert)p Fs(.)31 b Fr(vi)20
-b Fs(is)f(equiv)m(alen)o(t)g(to)g Fr(vi-command)p Fs(;)g
-Fr(emacs)g Fs(is)g(equiv)m(alen)o(t)555 563 y(to)c Fr(emacs-standard)p
-Fs(.)20 b(The)d(default)e(v)m(alue)h(is)g Fr(emacs)p
-Fs(.)21 b(The)16 b(v)m(alue)g(of)g(the)555 618 y Fr(editing-mode)e
-Fs(v)m(ariable)g(also)g(a\013ects)h(the)g(default)g(k)o(eymap.)315
-703 y Fr(mark-directories)555 758 y Fs(If)k(set)g(to)g(`)p
-Fr(on)p Fs(',)f(completed)h(directory)g(names)g(ha)o(v)o(e)f(a)h(slash)
-g(app)q(ended.)555 813 y(The)c(default)g(is)g(`)p Fr(on)p
-Fs('.)315 898 y Fr(mark-modified-lines)555 953 y Fs(This)j(v)m
-(ariable,)f(when)i(set)e(to)h(`)p Fr(on)p Fs(',)f(causes)h(Readline)g
-(to)f(displa)o(y)g(an)h(as-)555 1008 y(terisk)e(\(`)p
-Fr(*)p Fs('\))f(at)i(the)f(start)g(of)h(history)e(lines)i(whic)o(h)f
-(ha)o(v)o(e)h(b)q(een)h(mo)q(di\014ed.)555 1063 y(This)d(v)m(ariable)f
-(is)h(`)p Fr(off)p Fs(')f(b)o(y)h(default.)315 1148 y
-Fr(mark-symlinked-directories)555 1203 y Fs(If)23 b(set)f(to)f(`)p
-Fr(on)p Fs(',)i(completed)f(names)h(whic)o(h)f(are)g(sym)o(b)q(olic)g
-(links)f(to)h(di-)555 1258 y(rectories)g(ha)o(v)o(e)h(a)g(slash)f(app)q
-(ended)j(\(sub)s(ject)e(to)f(the)i(v)m(alue)f(of)g Fr(mark-)555
-1312 y(directories)p Fs(\).)18 b(The)d(default)g(is)g(`)p
-Fr(off)p Fs('.)315 1398 y Fr(match-hidden-files)555 1452
-y Fs(This)c(v)m(ariable,)g(when)g(set)g(to)g(`)p Fr(on)p
-Fs(',)f(causes)h(Readline)h(to)e(matc)o(h)h(\014les)g(whose)555
-1507 y(names)22 b(b)q(egin)g(with)g(a)f(`)p Fr(.)p Fs(')h(\(hidden)g
-(\014les\))g(when)g(p)q(erforming)g(\014lename)555 1562
-y(completion.)35 b(If)21 b(set)g(to)f(`)p Fr(off)p Fs(',)g(the)h
-(leading)f(`)p Fr(.)p Fs(')g(m)o(ust)g(b)q(e)h(supplied)g(b)o(y)555
-1617 y(the)c(user)g(in)g(the)g(\014lename)h(to)e(b)q(e)i(completed.)25
-b(This)17 b(v)m(ariable)f(is)h(`)p Fr(on)p Fs(')f(b)o(y)555
-1672 y(default.)315 1757 y Fr(menu-complete-display-pref)o(ix)555
-1812 y Fs(If)h(set)g(to)f(`)p Fr(on)p Fs(',)f(men)o(u)i(completion)f
-(displa)o(ys)g(the)h(common)f(pre\014x)i(of)e(the)555
-1866 y(list)i(of)g(p)q(ossible)g(completions)g(\(whic)o(h)h(ma)o(y)f(b)
-q(e)h(empt)o(y\))f(b)q(efore)h(cycling)555 1921 y(through)c(the)g
-(list.)k(The)c(default)g(is)g(`)p Fr(off)p Fs('.)315
-2006 y Fr(output-meta)555 2061 y Fs(If)j(set)f(to)g(`)p
-Fr(on)p Fs(',)g(Readline)h(will)f(displa)o(y)g(c)o(haracters)f(with)i
-(the)f(eigh)o(th)g(bit)555 2116 y(set)h(directly)g(rather)f(than)h(as)g
-(a)g(meta-pre\014xed)h(escap)q(e)g(sequence.)30 b(The)555
-2171 y(default)15 b(is)f(`)p Fr(off)p Fs('.)315 2256
-y Fr(page-completions)555 2311 y Fs(If)j(set)g(to)f(`)p
-Fr(on)p Fs(',)g(Readline)h(uses)h(an)e(in)o(ternal)g
-Fr(more)p Fs(-lik)o(e)g(pager)h(to)f(displa)o(y)555 2366
-y(a)g(screenful)g(of)g(p)q(ossible)g(completions)f(at)h(a)g(time.)22
-b(This)16 b(v)m(ariable)f(is)h(`)p Fr(on)p Fs(')555 2420
-y(b)o(y)f(default.)315 2506 y Fr(print-completions-horizont)o(ally)555
-2560 y Fs(If)d(set)g(to)f(`)p Fr(on)p Fs(',)h(Readline)g(will)e(displa)
-o(y)i(completions)f(with)g(matc)o(hes)g(sorted)555 2615
-y(horizon)o(tally)20 b(in)h(alphab)q(etical)g(order,)i(rather)e(than)g
-(do)o(wn)h(the)g(screen.)555 2670 y(The)15 b(default)g(is)g(`)p
-Fr(off)p Fs('.)p eop end
-%%Page: 8 12
-TeXDict begin 8 11 bop 75 -58 a Fs(Chapter)15 b(1:)k(Command)c(Line)h
-(Editing)1075 b(8)315 149 y Fr(revert-all-at-newline)555
-204 y Fs(If)15 b(set)g(to)f(`)p Fr(on)p Fs(',)f(Readline)i(will)f(undo)
-h(all)f(c)o(hanges)g(to)h(history)e(lines)i(b)q(efore)555
-259 y(returning)f(when)h Fr(accept-line)e Fs(is)g(executed.)21
-b(By)14 b(default,)g(history)f(lines)555 314 y(ma)o(y)20
-b(b)q(e)i(mo)q(di\014ed)f(and)g(retain)f(individual)g(undo)i(lists)d
-(across)i(calls)f(to)555 369 y Fr(readline)p Fs(.)f(The)c(default)g(is)
-g(`)p Fr(off)p Fs('.)315 451 y Fr(show-all-if-ambiguous)555
-506 y Fs(This)g(alters)e(the)j(default)e(b)q(eha)o(vior)h(of)f(the)h
-(completion)f(functions.)20 b(If)15 b(set)555 560 y(to)e(`)p
-Fr(on)p Fs(',)g(w)o(ords)g(whic)o(h)g(ha)o(v)o(e)h(more)f(than)g(one)h
-(p)q(ossible)g(completion)f(cause)555 615 y(the)20 b(matc)o(hes)f(to)f
-(b)q(e)j(listed)d(immediately)g(instead)h(of)g(ringing)g(the)g(b)q
-(ell.)555 670 y(The)c(default)g(v)m(alue)h(is)e(`)p Fr(off)p
-Fs('.)315 752 y Fr(show-all-if-unmodified)555 807 y Fs(This)19
-b(alters)f(the)i(default)e(b)q(eha)o(vior)h(of)g(the)h(completion)e
-(functions)h(in)g(a)555 862 y(fashion)12 b(similar)f(to)g
-Fi(sho)o(w-all-if-am)o(biguous)r Fs(.)17 b(If)c(set)f(to)g(`)p
-Fr(on)p Fs(',)f(w)o(ords)h(whic)o(h)555 917 y(ha)o(v)o(e)j(more)g(than)
-g(one)h(p)q(ossible)f(completion)f(without)h(an)o(y)g(p)q(ossible)g
-(par-)555 971 y(tial)20 b(completion)g(\(the)h(p)q(ossible)g
-(completions)f(don't)h(share)g(a)f(common)555 1026 y(pre\014x\))15
-b(cause)h(the)f(matc)o(hes)g(to)f(b)q(e)i(listed)e(immediately)g
-(instead)h(of)f(ring-)555 1081 y(ing)h(the)g(b)q(ell.)20
-b(The)15 b(default)g(v)m(alue)g(is)g(`)p Fr(off)p Fs('.)315
-1163 y Fr(skip-completed-text)555 1218 y Fs(If)i(set)f(to)g(`)p
-Fr(on)p Fs(',)f(this)h(alters)f(the)i(default)f(completion)f(b)q(eha)o
-(vior)h(when)h(in-)555 1273 y(serting)d(a)g(single)g(matc)o(h)g(in)o
-(to)f(the)i(line.)k(It's)14 b(only)g(activ)o(e)g(when)h(p)q(erform-)555
-1328 y(ing)i(completion)f(in)h(the)h(middle)f(of)g(a)g(w)o(ord.)25
-b(If)18 b(enabled,)g(readline)f(do)q(es)555 1382 y(not)j(insert)g(c)o
-(haracters)f(from)h(the)g(completion)f(that)h(matc)o(h)g(c)o(haracters)
-555 1437 y(after)e(p)q(oin)o(t)g(in)g(the)g(w)o(ord)g(b)q(eing)h
-(completed,)g(so)f(p)q(ortions)f(of)h(the)h(w)o(ord)555
-1492 y(follo)o(wing)14 b(the)h(cursor)h(are)g(not)f(duplicated.)22
-b(F)l(or)15 b(instance,)g(if)h(this)f(is)g(en-)555 1547
-y(abled,)21 b(attempting)e(completion)g(when)i(the)f(cursor)g(is)g
-(after)g(the)g(`)p Fr(e)p Fs(')f(in)555 1601 y(`)p Fr(Makefile)p
-Fs(')e(will)g(result)h(in)h(`)p Fr(Makefile)p Fs(')e(rather)h(than)h(`)
-p Fr(Makefilefile)p Fs(',)555 1656 y(assuming)e(there)h(is)f(a)g
-(single)g(p)q(ossible)g(completion.)27 b(The)18 b(default)f(v)m(alue)
-555 1711 y(is)e(`)p Fr(off)p Fs('.)315 1793 y Fr(visible-stats)555
-1848 y Fs(If)h(set)g(to)f(`)p Fr(on)p Fs(',)g(a)h(c)o(haracter)f
-(denoting)g(a)h(\014le's)g(t)o(yp)q(e)g(is)f(app)q(ended)j(to)d(the)555
-1903 y(\014lename)g(when)h(listing)e(p)q(ossible)h(completions.)j(The)e
-(default)f(is)f(`)p Fr(off)p Fs('.)75 1985 y(Key)i(Bindings)315
-2040 y(The)21 b(syn)o(tax)f(for)h(con)o(trolling)e(k)o(ey)i(bindings)f
-(in)h(the)g(init)f(\014le)h(is)g(simple.)37 b(First)19
-b(y)o(ou)315 2095 y(need)c(to)e(\014nd)h(the)g(name)g(of)g(the)f
-(command)h(that)f(y)o(ou)h(w)o(an)o(t)f(to)g(c)o(hange.)19
-b(The)14 b(follo)o(wing)315 2149 y(sections)j(con)o(tain)h(tables)f(of)
-g(the)h(command)g(name,)g(the)g(default)g(k)o(eybinding,)g(if)f(an)o(y)
-l(,)315 2204 y(and)e(a)g(short)g(description)g(of)f(what)h(the)g
-(command)g(do)q(es.)315 2273 y(Once)k(y)o(ou)f(kno)o(w)f(the)h(name)g
-(of)g(the)g(command,)g(simply)f(place)h(on)g(a)f(line)h(in)g(the)g
-(init)315 2328 y(\014le)f(the)g(name)g(of)f(the)h(k)o(ey)g(y)o(ou)f
-(wish)h(to)f(bind)h(the)g(command)g(to,)f(a)g(colon,)h(and)g(then)315
-2382 y(the)f(name)g(of)g(the)g(command.)22 b(There)17
-b(can)f(b)q(e)h(no)f(space)g(b)q(et)o(w)o(een)h(the)f(k)o(ey)g(name)g
-(and)315 2437 y(the)k(colon)g({)g(that)g(will)f(b)q(e)i(in)o(terpreted)
-f(as)g(part)g(of)g(the)h(k)o(ey)f(name.)35 b(The)21 b(name)f(of)315
-2492 y(the)d(k)o(ey)g(can)h(b)q(e)g(expressed)g(in)f(di\013eren)o(t)f
-(w)o(a)o(ys,)h(dep)q(ending)h(on)f(what)g(y)o(ou)g(\014nd)h(most)315
-2547 y(comfortable.)315 2615 y(In)h(addition)e(to)g(command)h(names,)g
-(readline)g(allo)o(ws)e(k)o(eys)i(to)f(b)q(e)i(b)q(ound)g(to)e(a)h
-(string)315 2670 y(that)c(is)h(inserted)g(when)h(the)f(k)o(ey)g(is)g
-(pressed)h(\(a)e Fi(macro)r Fs(\).)p eop end
-%%Page: 9 13
-TeXDict begin 9 12 bop 75 -58 a Fs(Chapter)15 b(1:)k(Command)c(Line)h
-(Editing)1075 b(9)315 149 y Fi(k)o(eyname)s Fs(:)19 b
-Fi(function-name)f Fs(or)d Fi(macro)555 204 y(k)o(eyname)i
-Fs(is)d(the)g(name)h(of)f(a)g(k)o(ey)g(sp)q(elled)h(out)f(in)g
-(English.)19 b(F)l(or)13 b(example:)675 271 y Fr(Control-u:)22
-b(universal-argument)675 325 y(Meta-Rubout:)g(backward-kill-word)675
-380 y(Control-o:)g(">)i(output")555 447 y Fs(In)c(the)f(ab)q(o)o(v)o(e)
-g(example,)h Fk(C-u)f Fs(is)g(b)q(ound)h(to)f(the)g(function)g
-Fr(universal-)555 501 y(argument)p Fs(,)f Fk(M-DEL)h
-Fs(is)f(b)q(ound)i(to)e(the)h(function)g Fr(backward-kill-word)p
-Fs(,)555 556 y(and)h Fk(C-o)f Fs(is)g(b)q(ound)h(to)f(run)h(the)f
-(macro)g(expressed)h(on)g(the)f(righ)o(t)g(hand)555 611
-y(side)c(\(that)f(is,)h(to)f(insert)h(the)g(text)g(`)p
-Fr(>)f(output)p Fs(')g(in)o(to)h(the)g(line\).)555 677
-y(A)k(n)o(um)o(b)q(er)f(of)g(sym)o(b)q(olic)g(c)o(haracter)g(names)g
-(are)g(recognized)h(while)f(pro-)555 732 y(cessing)11
-b(this)f(k)o(ey)g(binding)h(syn)o(tax:)17 b Fi(DEL)p
-Fs(,)10 b Fi(ESC)t Fs(,)h Fi(ESCAPE)s Fs(,)f Fi(LFD)r
-Fs(,)g Fi(NEW-)555 787 y(LINE)s Fs(,)15 b Fi(RET)s Fs(,)h
-Fi(RETURN)5 b Fs(,)15 b Fi(R)o(UBOUT)s Fs(,)h Fi(SP)l(A)o(CE)s
-Fs(,)e Fi(SPC)t Fs(,)h(and)g Fi(T)l(AB)s Fs(.)315 865
-y Fr(")p Fi(k)o(eyseq)q Fr(")p Fs(:)20 b Fi(function-name)d
-Fs(or)e Fi(macro)555 920 y(k)o(eyseq)i Fs(di\013ers)d(from)h
-Fi(k)o(eyname)j Fs(ab)q(o)o(v)o(e)d(in)h(that)e(strings)h(denoting)g
-(an)g(en-)555 975 y(tire)h(k)o(ey)h(sequence)h(can)f(b)q(e)g(sp)q
-(eci\014ed,)h(b)o(y)f(placing)f(the)h(k)o(ey)g(sequence)h(in)555
-1029 y(double)d(quotes.)k(Some)c Fl(gnu)g Fs(Emacs)f(st)o(yle)g(k)o(ey)
-h(escap)q(es)g(can)g(b)q(e)g(used,)g(as)555 1084 y(in)i(the)g(follo)o
-(wing)d(example,)j(but)g(the)g(sp)q(ecial)g(c)o(haracter)f(names)h(are)
-f(not)555 1139 y(recognized.)675 1205 y Fr("\\C-u":)23
-b(universal-argument)675 1260 y("\\C-x\\C-r":)f(re-read-init-file)675
-1315 y("\\e[11~":)h("Function)f(Key)i(1")555 1381 y Fs(In)33
-b(the)f(ab)q(o)o(v)o(e)g(example,)k Fk(C-u)c Fs(is)g(again)f(b)q(ound)i
-(to)f(the)g(function)555 1436 y Fr(universal-argument)19
-b Fs(\(just)j(as)f(it)g(w)o(as)g(in)h(the)g(\014rst)f(example\),)i(`)p
-Fk(C-x)555 1491 y(C-r)p Fs(')14 b(is)h(b)q(ound)h(to)f(the)g(function)g
-Fr(re-read-init-file)p Fs(,)d(and)k(`)p Fr(ESC)e([)h(1)g(1)555
-1546 y(~)p Fs(')g(is)f(b)q(ound)j(to)d(insert)h(the)g(text)g(`)p
-Fr(Function)e(Key)i(1)p Fs('.)315 1624 y(The)g(follo)o(wing)e
-Fl(gnu)h Fs(Emacs)h(st)o(yle)f(escap)q(e)i(sequences)g(are)e(a)o(v)m
-(ailable)g(when)h(sp)q(ecifying)315 1679 y(k)o(ey)g(sequences:)315
-1757 y Fk(\\C-)168 b Fs(con)o(trol)14 b(pre\014x)315
-1835 y Fk(\\M-)168 b Fs(meta)15 b(pre\014x)315 1913 y
-Fk(\\e)192 b Fs(an)15 b(escap)q(e)h(c)o(haracter)315
-1991 y Fk(\\\\)192 b Fs(bac)o(kslash)315 2069 y Fk(\\)p
-Fr(")g(")p Fs(,)15 b(a)g(double)g(quotation)f(mark)315
-2147 y Fk(\\')192 b Fr(')p Fs(,)15 b(a)g(single)f(quote)h(or)g(ap)q
-(ostrophe)315 2225 y(In)f(addition)f(to)h(the)f Fl(gnu)h
-Fs(Emacs)g(st)o(yle)e(escap)q(e)j(sequences,)g(a)e(second)i(set)e(of)h
-(bac)o(kslash)315 2280 y(escap)q(es)i(is)f(a)o(v)m(ailable:)315
-2358 y Fr(\\a)192 b Fs(alert)14 b(\(b)q(ell\))315 2436
-y Fr(\\b)192 b Fs(bac)o(kspace)315 2514 y Fr(\\d)g Fs(delete)315
-2592 y Fr(\\f)g Fs(form)14 b(feed)315 2670 y Fr(\\n)192
-b Fs(newline)p eop end
-%%Page: 10 14
-TeXDict begin 10 13 bop 75 -58 a Fs(Chapter)15 b(1:)k(Command)c(Line)h
-(Editing)1053 b(10)315 149 y Fr(\\r)192 b Fs(carriage)14
-b(return)315 226 y Fr(\\t)192 b Fs(horizon)o(tal)14 b(tab)315
-302 y Fr(\\v)192 b Fs(v)o(ertical)14 b(tab)315 378 y
-Fr(\\)p Fk(nnn)144 b Fs(the)17 b(eigh)o(t-bit)f(c)o(haracter)h(whose)g
-(v)m(alue)h(is)e(the)i(o)q(ctal)e(v)m(alue)i Fi(nnn)g
-Fs(\(one)f(to)555 433 y(three)e(digits\))315 509 y Fr(\\x)p
-Fk(HH)144 b Fs(the)20 b(eigh)o(t-bit)e(c)o(haracter)h(whose)h(v)m(alue)
-g(is)f(the)h(hexadecimal)f(v)m(alue)h Fi(HH)555 564 y
-Fs(\(one)15 b(or)g(t)o(w)o(o)f(hex)h(digits\))315 640
-y(When)k(en)o(tering)f(the)h(text)f(of)g(a)h(macro,)f(single)g(or)g
-(double)h(quotes)g(m)o(ust)f(b)q(e)h(used)h(to)315 695
-y(indicate)10 b(a)h(macro)f(de\014nition.)18 b(Unquoted)11
-b(text)f(is)h(assumed)f(to)h(b)q(e)g(a)f(function)h(name.)18
-b(In)315 750 y(the)11 b(macro)f(b)q(o)q(dy)l(,)i(the)f(bac)o(kslash)f
-(escap)q(es)h(describ)q(ed)h(ab)q(o)o(v)o(e)e(are)g(expanded.)20
-b(Bac)o(kslash)315 804 y(will)f(quote)g(an)o(y)h(other)g(c)o(haracter)f
-(in)h(the)g(macro)f(text,)h(including)g(`)p Fr(")p Fs(')f(and)h(`)p
-Fr(')p Fs('.)34 b(F)l(or)315 859 y(example,)13 b(the)g(follo)o(wing)d
-(binding)j(will)f(mak)o(e)g(`)p Fk(C-x)i Fr(\\)p Fs(')f(insert)f(a)h
-(single)f(`)p Fr(\\)p Fs(')g(in)o(to)g(the)h(line:)435
-925 y Fr("\\C-x\\\\":)23 b("\\\\")75 1021 y Fh(1.3.2)30
-b(Conditional)20 b(Init)g(Constructs)75 1094 y Fs(Readline)f(implemen)o
-(ts)e(a)h(facilit)o(y)f(similar)f(in)i(spirit)g(to)f(the)i(conditional)
-e(compilation)f(features)i(of)75 1149 y(the)d(C)h(prepro)q(cessor)f
-(whic)o(h)g(allo)o(ws)f(k)o(ey)h(bindings)g(and)h(v)m(ariable)e
-(settings)h(to)f(b)q(e)i(p)q(erformed)g(as)f(the)75 1204
-y(result)g(of)f(tests.)20 b(There)15 b(are)g(four)g(parser)g(directiv)o
-(es)f(used.)75 1280 y Fr($if)168 b Fs(The)16 b Fr($if)f
-Fs(construct)g(allo)o(ws)f(bindings)i(to)f(b)q(e)h(made)g(based)g(on)f
-(the)h(editing)f(mo)q(de,)h(the)315 1335 y(terminal)i(b)q(eing)h(used,)
-h(or)f(the)g(application)f(using)g(Readline.)32 b(The)19
-b(text)g(of)f(the)i(test)315 1390 y(extends)c(to)e(the)h(end)h(of)f
-(the)g(line;)g(no)g(c)o(haracters)f(are)h(required)h(to)e(isolate)g
-(it.)315 1466 y Fr(mode)144 b Fs(The)11 b Fr(mode=)e
-Fs(form)h(of)g(the)h Fr($if)f Fs(directiv)o(e)f(is)h(used)h(to)f(test)g
-(whether)h(Readline)555 1521 y(is)j(in)h Fr(emacs)f Fs(or)g
-Fr(vi)g Fs(mo)q(de.)20 b(This)15 b(ma)o(y)f(b)q(e)h(used)g(in)g
-(conjunction)g(with)f(the)555 1575 y(`)p Fr(set)g(keymap)p
-Fs(')f(command,)g(for)h(instance,)f(to)g(set)h(bindings)f(in)h(the)g
-Fr(emacs-)555 1630 y(standard)d Fs(and)i Fr(emacs-ctlx)e
-Fs(k)o(eymaps)h(only)h(if)f(Readline)g(is)g(starting)f(out)555
-1685 y(in)k Fr(emacs)g Fs(mo)q(de.)315 1761 y Fr(term)144
-b Fs(The)14 b Fr(term=)e Fs(form)h(ma)o(y)g(b)q(e)h(used)g(to)f
-(include)h(terminal-sp)q(eci\014c)f(k)o(ey)g(bind-)555
-1816 y(ings,)18 b(p)q(erhaps)h(to)e(bind)h(the)h(k)o(ey)e(sequences)j
-(output)e(b)o(y)g(the)g(terminal's)555 1871 y(function)12
-b(k)o(eys.)18 b(The)13 b(w)o(ord)e(on)h(the)g(righ)o(t)f(side)g(of)h
-(the)g(`)p Fr(=)p Fs(')f(is)g(tested)h(against)555 1926
-y(b)q(oth)j(the)g(full)g(name)g(of)f(the)h(terminal)f(and)h(the)g(p)q
-(ortion)g(of)f(the)h(terminal)555 1980 y(name)i(b)q(efore)g(the)g
-(\014rst)f(`)p Fr(-)p Fs('.)24 b(This)16 b(allo)o(ws)f
-Fr(sun)h Fs(to)g(matc)o(h)h(b)q(oth)f Fr(sun)h Fs(and)555
-2035 y Fr(sun-cmd)p Fs(,)d(for)g(instance.)315 2111 y
-Fr(application)555 2166 y Fs(The)d Fi(application)f Fs(construct)h(is)f
-(used)i(to)e(include)h(application-sp)q(eci\014c)g(set-)555
-2221 y(tings.)18 b(Eac)o(h)12 b(program)f(using)i(the)f(Readline)h
-(library)e(sets)h(the)g Fi(application)555 2276 y(name)s
-Fs(,)f(and)h(y)o(ou)f(can)h(test)e(for)h(a)g(particular)f(v)m(alue.)19
-b(This)11 b(could)h(b)q(e)g(used)g(to)555 2331 y(bind)17
-b(k)o(ey)f(sequences)i(to)d(functions)i(useful)f(for)g(a)g(sp)q
-(eci\014c)h(program.)23 b(F)l(or)555 2385 y(instance,)16
-b(the)h(follo)o(wing)d(command)j(adds)f(a)g(k)o(ey)h(sequence)g(that)f
-(quotes)555 2440 y(the)f(curren)o(t)g(or)g(previous)g(w)o(ord)f(in)i
-(Bash:)675 2506 y Fr($if)23 b(Bash)675 2560 y(#)h(Quote)f(the)g
-(current)g(or)h(previous)f(word)675 2615 y("\\C-xq":)g
-("\\eb\\"\\ef\\"")675 2670 y($endif)p eop end
-%%Page: 11 15
-TeXDict begin 11 14 bop 75 -58 a Fs(Chapter)15 b(1:)k(Command)c(Line)h
-(Editing)1053 b(11)75 149 y Fr($endif)96 b Fs(This)15
-b(command,)f(as)h(seen)h(in)f(the)g(previous)g(example,)g(terminates)f
-(an)h Fr($if)f Fs(command.)75 229 y Fr($else)120 b Fs(Commands)15
-b(in)g(this)f(branc)o(h)i(of)e(the)i Fr($if)e Fs(directiv)o(e)h(are)g
-(executed)h(if)f(the)g(test)g(fails.)75 309 y Fr($include)48
-b Fs(This)21 b(directiv)o(e)g(tak)o(es)g(a)h(single)f(\014lename)h(as)f
-(an)h(argumen)o(t)f(and)h(reads)f(commands)315 364 y(and)e(bindings)h
-(from)e(that)h(\014le.)32 b(F)l(or)19 b(example,)h(the)f(follo)o(wing)e
-(directiv)o(e)i(reads)g(from)315 418 y(`)p Fr(/etc/inputrc)p
-Fs(':)435 486 y Fr($include)k(/etc/inputrc)75 585 y Fh(1.3.3)30
-b(Sample)20 b(Init)h(File)75 659 y Fs(Here)13 b(is)g(an)g(example)g(of)
-g(an)g Fi(inputrc)j Fs(\014le.)k(This)12 b(illustrates)g(k)o(ey)h
-(binding,)g(v)m(ariable)g(assignmen)o(t,)f(and)75 714
-y(conditional)i(syn)o(tax.)p eop end
-%%Page: 12 16
-TeXDict begin 12 15 bop 75 -58 a Fs(Chapter)15 b(1:)k(Command)c(Line)h
-(Editing)1053 b(12)195 204 y Fr(#)24 b(This)f(file)g(controls)g(the)h
-(behaviour)e(of)i(line)f(input)g(editing)g(for)195 259
-y(#)h(programs)e(that)i(use)f(the)h(GNU)f(Readline)g(library.)47
-b(Existing)195 314 y(#)24 b(programs)e(include)h(FTP,)h(Bash,)f(and)g
-(GDB.)195 369 y(#)195 423 y(#)h(You)f(can)h(re-read)f(the)g(inputrc)g
-(file)g(with)h(C-x)f(C-r.)195 478 y(#)h(Lines)f(beginning)g(with)g('#')
-g(are)h(comments.)195 533 y(#)195 588 y(#)g(First,)f(include)g(any)g
-(systemwide)g(bindings)f(and)i(variable)195 643 y(#)g(assignments)e
-(from)h(/etc/Inputrc)195 697 y($include)g(/etc/Inputrc)195
-807 y(#)195 862 y(#)h(Set)f(various)g(bindings)g(for)g(emacs)g(mode.)
-195 971 y(set)g(editing-mode)g(emacs)195 1081 y($if)g(mode=emacs)195
-1191 y(Meta-Control-h:)46 b(backward-kill-word)21 b(Text)i(after)h(the)
-f(function)g(name)g(is)h(ignored)p 1986 1201 21 38 v
-195 1300 a(#)195 1355 y(#)g(Arrow)f(keys)g(in)h(keypad)f(mode)195
-1410 y(#)195 1465 y(#"\\M-OD":)190 b(backward-char)195
-1519 y(#"\\M-OC":)g(forward-char)195 1574 y(#"\\M-OA":)g
-(previous-history)195 1629 y(#"\\M-OB":)g(next-history)195
-1684 y(#)195 1738 y(#)24 b(Arrow)f(keys)g(in)h(ANSI)f(mode)195
-1793 y(#)195 1848 y("\\M-[D":)190 b(backward-char)195
-1903 y("\\M-[C":)g(forward-char)195 1958 y("\\M-[A":)g
-(previous-history)195 2012 y("\\M-[B":)g(next-history)195
-2067 y(#)195 2122 y(#)24 b(Arrow)f(keys)g(in)h(8)g(bit)f(keypad)g(mode)
-195 2177 y(#)195 2232 y(#"\\M-\\C-OD":)165 b(backward-char)195
-2286 y(#"\\M-\\C-OC":)g(forward-char)195 2341 y(#"\\M-\\C-OA":)g
-(previous-history)195 2396 y(#"\\M-\\C-OB":)g(next-history)195
-2451 y(#)195 2506 y(#)24 b(Arrow)f(keys)g(in)h(8)g(bit)f(ANSI)g(mode)
-195 2560 y(#)195 2615 y(#"\\M-\\C-[D":)165 b(backward-char)195
-2670 y(#"\\M-\\C-[C":)g(forward-char)p eop end
-%%Page: 13 17
-TeXDict begin 13 16 bop 75 -58 a Fs(Chapter)15 b(1:)k(Command)c(Line)h
-(Editing)1053 b(13)195 149 y Fr(#"\\M-\\C-[A":)165 b(previous-history)
-195 204 y(#"\\M-\\C-[B":)g(next-history)195 314 y(C-q:)23
-b(quoted-insert)195 423 y($endif)195 533 y(#)h(An)f(old-style)g
-(binding.)47 b(This)23 b(happens)g(to)g(be)h(the)f(default.)195
-588 y(TAB:)g(complete)195 697 y(#)h(Macros)f(that)g(are)h(convenient)e
-(for)h(shell)h(interaction)195 752 y($if)f(Bash)195 807
-y(#)h(edit)f(the)g(path)195 862 y("\\C-xp":)g
-("PATH=${PATH}\\e\\C-e\\C-a\\)o(ef\\C-f")195 917 y(#)h(prepare)f(to)g
-(type)h(a)f(quoted)g(word)h(--)195 971 y(#)g(insert)f(open)g(and)h
-(close)f(double)g(quotes)195 1026 y(#)h(and)f(move)g(to)h(just)f(after)
-h(the)f(open)g(quote)195 1081 y("\\C-x\\"":)g("\\"\\"\\C-b")195
-1136 y(#)h(insert)f(a)g(backslash)g(\(testing)g(backslash)g(escapes)195
-1191 y(#)h(in)f(sequences)g(and)g(macros\))195 1245 y("\\C-x\\\\":)g
-("\\\\")195 1300 y(#)h(Quote)f(the)g(current)g(or)h(previous)f(word)195
-1355 y("\\C-xq":)g("\\eb\\"\\ef\\"")195 1410 y(#)h(Add)f(a)h(binding)f
-(to)g(refresh)g(the)h(line,)f(which)g(is)h(unbound)195
-1465 y("\\C-xr":)f(redraw-current-line)195 1519 y(#)h(Edit)f(variable)g
-(on)g(current)g(line.)195 1574 y("\\M-\\C-v":)f
-("\\C-a\\C-k$\\C-y\\M-\\C-e\\C-a\\C-y=)o(")195 1629 y($endif)195
-1738 y(#)i(use)f(a)h(visible)f(bell)g(if)h(one)f(is)h(available)195
-1793 y(set)f(bell-style)g(visible)195 1903 y(#)h(don't)f(strip)g
-(characters)g(to)g(7)h(bits)f(when)h(reading)195 1958
-y(set)f(input-meta)g(on)195 2067 y(#)h(allow)f(iso-latin1)f(characters)
-h(to)g(be)h(inserted)f(rather)195 2122 y(#)h(than)f(converted)g(to)g
-(prefix-meta)g(sequences)195 2177 y(set)g(convert-meta)g(off)195
-2286 y(#)h(display)f(characters)f(with)h(the)h(eighth)f(bit)g(set)h
-(directly)195 2341 y(#)g(rather)f(than)g(as)h(meta-prefixed)e
-(characters)195 2396 y(set)h(output-meta)g(on)195 2506
-y(#)h(if)f(there)g(are)h(more)f(than)h(150)f(possible)g(completions)f
-(for)195 2560 y(#)i(a)f(word,)h(ask)f(the)h(user)f(if)g(he)h(wants)f
-(to)h(see)f(all)h(of)f(them)195 2615 y(set)g(completion-query-items)e
-(150)p eop end
-%%Page: 14 18
-TeXDict begin 14 17 bop 75 -58 a Fs(Chapter)15 b(1:)k(Command)c(Line)h
-(Editing)1053 b(14)195 149 y Fr(#)24 b(For)f(FTP)195
-204 y($if)g(Ftp)195 259 y("\\C-xg":)g("get)g(\\M-?")195
-314 y("\\C-xt":)g("put)g(\\M-?")195 369 y("\\M-.":)g(yank-last-arg)195
-423 y($endif)75 539 y Fq(1.4)33 b(Bindable)22 b(Readline)f(Commands)75
-618 y Fs(This)12 b(section)h(describ)q(es)g(Readline)g(commands)g(that)
-f(ma)o(y)g(b)q(e)i(b)q(ound)f(to)g(k)o(ey)f(sequences.)20
-b(Command)75 673 y(names)15 b(without)f(an)h(accompan)o(ying)g(k)o(ey)g
-(sequence)h(are)f(un)o(b)q(ound)i(b)o(y)e(default.)137
-740 y(In)f(the)f(follo)o(wing)e(descriptions,)i Fi(p)q(oin)o(t)g
-Fs(refers)g(to)g(the)g(curren)o(t)g(cursor)f(p)q(osition,)h(and)g
-Fi(mark)i Fs(refers)75 795 y(to)k(a)g(cursor)g(p)q(osition)f(sa)o(v)o
-(ed)h(b)o(y)h(the)f Fr(set-mark)g Fs(command.)32 b(The)20
-b(text)f(b)q(et)o(w)o(een)g(the)h(p)q(oin)o(t)f(and)75
-850 y(mark)c(is)f(referred)i(to)e(as)h(the)g Fi(region)p
-Fs(.)75 948 y Fh(1.4.1)30 b(Commands)21 b(F)-5 b(or)19
-b(Mo)n(ving)75 1034 y Fr(beginning-of-line)13 b(\(C-a\))315
-1089 y Fs(Mo)o(v)o(e)h(to)h(the)g(start)f(of)h(the)g(curren)o(t)g
-(line.)75 1167 y Fr(end-of-line)f(\(C-e\))315 1222 y
-Fs(Mo)o(v)o(e)g(to)h(the)g(end)h(of)f(the)g(line.)75
-1301 y Fr(forward-char)f(\(C-f\))315 1356 y Fs(Mo)o(v)o(e)g(forw)o(ard)
-g(a)h(c)o(haracter.)75 1434 y Fr(backward-char)e(\(C-b\))315
-1489 y Fs(Mo)o(v)o(e)h(bac)o(k)h(a)g(c)o(haracter.)75
-1568 y Fr(forward-word)f(\(M-f\))315 1623 y Fs(Mo)o(v)o(e)g(forw)o(ard)
-g(to)g(the)i(end)g(of)e(the)h(next)h(w)o(ord.)j(W)l(ords)c(are)f(comp)q
-(osed)i(of)f(letters)f(and)315 1678 y(digits.)75 1756
-y Fr(backward-word)f(\(M-b\))315 1811 y Fs(Mo)o(v)o(e)j(bac)o(k)g(to)h
-(the)f(start)g(of)g(the)h(curren)o(t)g(or)f(previous)h(w)o(ord.)24
-b(W)l(ords)16 b(are)h(comp)q(osed)315 1866 y(of)e(letters)f(and)h
-(digits.)75 1945 y Fr(clear-screen)f(\(C-l\))315 2000
-y Fs(Clear)e(the)i(screen)g(and)f(redra)o(w)g(the)g(curren)o(t)g(line,)
-g(lea)o(ving)g(the)g(curren)o(t)g(line)g(at)g(the)g(top)315
-2054 y(of)i(the)g(screen.)75 2133 y Fr(redraw-current-line)e(\(\))315
-2188 y Fs(Refresh)j(the)f(curren)o(t)g(line.)20 b(By)15
-b(default,)g(this)f(is)h(un)o(b)q(ound.)75 2287 y Fh(1.4.2)30
-b(Commands)21 b(F)-5 b(or)19 b(Manipulating)i(The)f(History)75
-2372 y Fr(accept-line)14 b(\(Newline)g(or)h(Return\))315
-2427 y Fs(Accept)j(the)g(line)f(regardless)g(of)g(where)h(the)g(cursor)
-f(is.)26 b(If)18 b(this)f(line)g(is)h(non-empt)o(y)l(,)g(it)315
-2482 y(ma)o(y)d(b)q(e)i(added)f(to)g(the)g(history)f(list)f(for)i
-(future)g(recall)f(with)g Fr(add_history\(\))p Fs(.)20
-b(If)d(this)315 2536 y(line)e(is)g(a)f(mo)q(di\014ed)i(history)e(line,)
-h(the)g(history)f(line)h(is)g(restored)f(to)h(its)f(original)g(state.)
-75 2615 y Fr(previous-history)f(\(C-p\))315 2670 y Fs(Mo)o(v)o(e)h
-(`bac)o(k')h(through)f(the)i(history)e(list,)f(fetc)o(hing)i(the)g
-(previous)g(command.)p eop end
-%%Page: 15 19
-TeXDict begin 15 18 bop 75 -58 a Fs(Chapter)15 b(1:)k(Command)c(Line)h
-(Editing)1053 b(15)75 149 y Fr(next-history)14 b(\(C-n\))315
-204 y Fs(Mo)o(v)o(e)g(`forw)o(ard')f(through)i(the)h(history)e(list,)f
-(fetc)o(hing)i(the)g(next)h(command.)75 286 y Fr(beginning-of-history)c
-(\(M-<\))315 341 y Fs(Mo)o(v)o(e)i(to)h(the)g(\014rst)g(line)g(in)g
-(the)g(history)l(.)75 423 y Fr(end-of-history)e(\(M->\))315
-478 y Fs(Mo)o(v)o(e)h(to)h(the)g(end)h(of)f(the)g(input)g(history)l(,)f
-(i.e.,)g(the)h(line)g(curren)o(tly)g(b)q(eing)g(en)o(tered.)75
-560 y Fr(reverse-search-history)d(\(C-r\))315 615 y Fs(Searc)o(h)k(bac)
-o(kw)o(ard)e(starting)g(at)h(the)h(curren)o(t)f(line)h(and)f(mo)o(ving)
-g(`up')g(through)g(the)h(his-)315 670 y(tory)e(as)h(necessary)l(.)20
-b(This)15 b(is)g(an)g(incremen)o(tal)f(searc)o(h.)75
-752 y Fr(forward-search-history)e(\(C-s\))315 807 y Fs(Searc)o(h)j
-(forw)o(ard)e(starting)g(at)i(the)f(curren)o(t)h(line)f(and)h(mo)o
-(ving)f(`do)o(wn')g(through)g(the)h(the)315 862 y(history)f(as)h
-(necessary)l(.)20 b(This)15 b(is)g(an)g(incremen)o(tal)f(searc)o(h.)75
-944 y Fr(non-incremental-reverse-se)o(arch-hi)o(story)e(\(M-p\))315
-999 y Fs(Searc)o(h)k(bac)o(kw)o(ard)e(starting)g(at)h(the)h(curren)o(t)
-f(line)h(and)f(mo)o(ving)g(`up')g(through)g(the)h(his-)315
-1054 y(tory)h(as)h(necessary)g(using)g(a)f(non-incremen)o(tal)h(searc)o
-(h)g(for)f(a)h(string)f(supplied)h(b)o(y)g(the)315 1108
-y(user.)75 1191 y Fr(non-incremental-forward-se)o(arch-hi)o(story)12
-b(\(M-n\))315 1245 y Fs(Searc)o(h)j(forw)o(ard)e(starting)g(at)i(the)f
-(curren)o(t)h(line)f(and)h(mo)o(ving)f(`do)o(wn')g(through)g(the)h(the)
-315 1300 y(history)d(as)h(necessary)h(using)f(a)g(non-incremen)o(tal)g
-(searc)o(h)g(for)g(a)g(string)f(supplied)i(b)o(y)f(the)315
-1355 y(user.)75 1437 y Fr(history-search-forward)f(\(\))315
-1492 y Fs(Searc)o(h)21 b(forw)o(ard)e(through)i(the)f(history)g(for)g
-(the)h(string)f(of)g(c)o(haracters)g(b)q(et)o(w)o(een)h(the)315
-1547 y(start)16 b(of)h(the)h(curren)o(t)g(line)f(and)g(the)h(p)q(oin)o
-(t.)27 b(This)17 b(is)g(a)g(non-incremen)o(tal)g(searc)o(h.)27
-b(By)315 1601 y(default,)14 b(this)h(command)g(is)g(un)o(b)q(ound.)75
-1684 y Fr(history-search-backward)d(\(\))315 1738 y Fs(Searc)o(h)18
-b(bac)o(kw)o(ard)e(through)h(the)h(history)e(for)h(the)g(string)g(of)g
-(c)o(haracters)f(b)q(et)o(w)o(een)i(the)315 1793 y(start)e(of)h(the)h
-(curren)o(t)g(line)f(and)g(the)h(p)q(oin)o(t.)27 b(This)17
-b(is)g(a)g(non-incremen)o(tal)g(searc)o(h.)27 b(By)315
-1848 y(default,)14 b(this)h(command)g(is)g(un)o(b)q(ound.)75
-1930 y Fr(yank-nth-arg)f(\(M-C-y\))315 1985 y Fs(Insert)19
-b(the)f(\014rst)h(argumen)o(t)e(to)h(the)h(previous)f(command)g
-(\(usually)g(the)h(second)g(w)o(ord)315 2040 y(on)d(the)g(previous)g
-(line\))f(at)g(p)q(oin)o(t.)22 b(With)15 b(an)h(argumen)o(t)f
-Fi(n)p Fs(,)h(insert)f(the)h Fi(n)p Fs(th)g(w)o(ord)g(from)315
-2095 y(the)i(previous)f(command)g(\(the)g(w)o(ords)g(in)g(the)h
-(previous)f(command)g(b)q(egin)h(with)f(w)o(ord)315 2149
-y(0\).)33 b(A)20 b(negativ)o(e)f(argumen)o(t)g(inserts)g(the)h
-Fi(n)p Fs(th)g(w)o(ord)f(from)g(the)h(end)g(of)f(the)h(previous)315
-2204 y(command.)k(Once)17 b(the)g(argumen)o(t)e Fi(n)i
-Fs(is)f(computed,)h(the)f(argumen)o(t)g(is)g(extracted)g(as)g(if)315
-2259 y(the)f(`)p Fr(!)p Fk(n)5 b Fs(')15 b(history)f(expansion)h(had)g
-(b)q(een)i(sp)q(eci\014ed.)75 2341 y Fr(yank-last-arg)c(\(M-.)i(or)g
-(M-_\))315 2396 y Fs(Insert)j(last)e(argumen)o(t)h(to)g(the)g(previous)
-h(command)f(\(the)g(last)g(w)o(ord)g(of)g(the)g(previous)315
-2451 y(history)f(en)o(try\).)24 b(With)16 b(a)g(n)o(umeric)h(argumen)o
-(t,)f(b)q(eha)o(v)o(e)h(exactly)f(lik)o(e)g Fr(yank-nth-arg)p
-Fs(.)315 2506 y(Successiv)o(e)d(calls)e(to)h Fr(yank-last-arg)f
-Fs(mo)o(v)o(e)g(bac)o(k)i(through)f(the)g(history)g(list,)f(inserting)
-315 2560 y(the)g(last)g(w)o(ord)f(\(or)h(the)g(w)o(ord)g(sp)q
-(eci\014ed)h(b)o(y)f(the)h(argumen)o(t)e(to)h(the)g(\014rst)g(call\))f
-(of)h(eac)o(h)g(line)315 2615 y(in)18 b(turn.)29 b(An)o(y)18
-b(n)o(umeric)g(argumen)o(t)g(supplied)g(to)g(these)g(successiv)o(e)h
-(calls)e(determines)315 2670 y(the)g(direction)g(to)g(mo)o(v)o(e)g
-(through)g(the)g(history)l(.)26 b(A)17 b(negativ)o(e)g(argumen)o(t)f
-(switc)o(hes)h(the)p eop end
-%%Page: 16 20
-TeXDict begin 16 19 bop 75 -58 a Fs(Chapter)15 b(1:)k(Command)c(Line)h
-(Editing)1053 b(16)315 149 y(direction)11 b(through)g(the)g(history)g
-(\(bac)o(k)g(or)g(forw)o(ard\).)17 b(The)11 b(history)g(expansion)g
-(facilities)315 204 y(are)i(used)i(to)e(extract)g(the)h(last)e(argumen)
-o(t,)h(as)h(if)f(the)h(`)p Fr(!$)p Fs(')e(history)h(expansion)h(had)g
-(b)q(een)315 259 y(sp)q(eci\014ed.)75 364 y Fh(1.4.3)30
-b(Commands)21 b(F)-5 b(or)19 b(Changing)i(T)-5 b(ext)75
-452 y Fr(delete-char)14 b(\(C-d\))315 507 y Fs(Delete)19
-b(the)h(c)o(haracter)e(at)h(p)q(oin)o(t.)32 b(If)20 b(p)q(oin)o(t)f(is)
-g(at)f(the)i(b)q(eginning)g(of)f(the)g(line,)h(there)315
-562 y(are)e(no)h(c)o(haracters)e(in)i(the)f(line,)h(and)g(the)f(last)g
-(c)o(haracter)f(t)o(yp)q(ed)i(w)o(as)f(not)g(b)q(ound)i(to)315
-617 y Fr(delete-char)p Fs(,)13 b(then)j(return)f Fl(eof)p
-Fs(.)75 701 y Fr(backward-delete-char)d(\(Rubout\))315
-756 y Fs(Delete)j(the)g(c)o(haracter)f(b)q(ehind)i(the)g(cursor.)j(A)c
-(n)o(umeric)g(argumen)o(t)f(means)i(to)e(kill)g(the)315
-811 y(c)o(haracters)g(instead)h(of)g(deleting)g(them.)75
-896 y Fr(forward-backward-delete-ch)o(ar)d(\(\))315 951
-y Fs(Delete)19 b(the)g(c)o(haracter)f(under)i(the)f(cursor,)h(unless)f
-(the)g(cursor)g(is)g(at)f(the)h(end)h(of)f(the)315 1005
-y(line,)c(in)h(whic)o(h)g(case)f(the)h(c)o(haracter)g(b)q(ehind)g(the)g
-(cursor)g(is)f(deleted.)22 b(By)16 b(default,)g(this)315
-1060 y(is)f(not)g(b)q(ound)h(to)e(a)h(k)o(ey)l(.)75 1145
-y Fr(quoted-insert)e(\(C-q)i(or)g(C-v\))315 1200 y Fs(Add)j(the)f(next)
-g(c)o(haracter)g(t)o(yp)q(ed)g(to)f(the)i(line)e(v)o(erbatim.)25
-b(This)17 b(is)f(ho)o(w)h(to)g(insert)f(k)o(ey)315 1255
-y(sequences)g(lik)o(e)f Fk(C-q)p Fs(,)f(for)h(example.)75
-1339 y Fr(tab-insert)f(\(M-TAB\))315 1394 y Fs(Insert)h(a)g(tab)g(c)o
-(haracter.)75 1479 y Fr(self-insert)f(\(a,)g(b,)h(A,)g(1,)g(!,)g(...)o
-(\))315 1534 y Fs(Insert)g(y)o(ourself.)75 1618 y Fr(transpose-chars)e
-(\(C-t\))315 1673 y Fs(Drag)i(the)h(c)o(haracter)f(b)q(efore)h(the)h
-(cursor)e(forw)o(ard)g(o)o(v)o(er)g(the)h(c)o(haracter)f(at)h(the)g
-(cursor,)315 1728 y(mo)o(ving)h(the)g(cursor)h(forw)o(ard)e(as)i(w)o
-(ell.)26 b(If)18 b(the)g(insertion)f(p)q(oin)o(t)g(is)g(at)g(the)h(end)
-h(of)e(the)315 1783 y(line,)11 b(then)g(this)g(transp)q(oses)f(the)h
-(last)f(t)o(w)o(o)g(c)o(haracters)g(of)h(the)g(line.)18
-b(Negativ)o(e)10 b(argumen)o(ts)315 1838 y(ha)o(v)o(e)15
-b(no)g(e\013ect.)75 1922 y Fr(transpose-words)e(\(M-t\))315
-1977 y Fs(Drag)i(the)h(w)o(ord)g(b)q(efore)g(p)q(oin)o(t)g(past)g(the)g
-(w)o(ord)f(after)h(p)q(oin)o(t,)f(mo)o(ving)g(p)q(oin)o(t)h(past)g
-(that)315 2032 y(w)o(ord)d(as)h(w)o(ell.)19 b(If)14 b(the)g(insertion)g
-(p)q(oin)o(t)f(is)h(at)g(the)g(end)h(of)e(the)i(line,)e(this)h(transp)q
-(oses)g(the)315 2087 y(last)g(t)o(w)o(o)g(w)o(ords)g(on)i(the)f(line.)
-75 2172 y Fr(upcase-word)f(\(M-u\))315 2226 y Fs(Upp)q(ercase)j(the)f
-(curren)o(t)g(\(or)f(follo)o(wing\))e(w)o(ord.)22 b(With)15
-b(a)h(negativ)o(e)f(argumen)o(t,)g(upp)q(er-)315 2281
-y(case)g(the)g(previous)g(w)o(ord,)g(but)g(do)g(not)g(mo)o(v)o(e)f(the)
-i(cursor.)75 2366 y Fr(downcase-word)d(\(M-l\))315 2421
-y Fs(Lo)o(w)o(ercase)d(the)h(curren)o(t)g(\(or)f(follo)o(wing\))e(w)o
-(ord.)17 b(With)10 b(a)h(negativ)o(e)f(argumen)o(t,)g(lo)o(w)o(ercase)
-315 2476 y(the)15 b(previous)g(w)o(ord,)f(but)i(do)f(not)g(mo)o(v)o(e)f
-(the)h(cursor.)75 2560 y Fr(capitalize-word)e(\(M-c\))315
-2615 y Fs(Capitalize)c(the)i(curren)o(t)f(\(or)g(follo)o(wing\))e(w)o
-(ord.)18 b(With)10 b(a)g(negativ)o(e)g(argumen)o(t,)g(capitalize)315
-2670 y(the)15 b(previous)g(w)o(ord,)f(but)i(do)f(not)g(mo)o(v)o(e)f
-(the)h(cursor.)p eop end
-%%Page: 17 21
-TeXDict begin 17 20 bop 75 -58 a Fs(Chapter)15 b(1:)k(Command)c(Line)h
-(Editing)1053 b(17)75 149 y Fr(overwrite-mode)13 b(\(\))315
-204 y Fs(T)l(oggle)i(o)o(v)o(erwrite)g(mo)q(de.)24 b(With)16
-b(an)g(explicit)g(p)q(ositiv)o(e)g(n)o(umeric)g(argumen)o(t,)g(switc)o
-(hes)315 259 y(to)10 b(o)o(v)o(erwrite)f(mo)q(de.)19
-b(With)10 b(an)h(explicit)f(non-p)q(ositiv)o(e)g(n)o(umeric)h(argumen)o
-(t,)f(switc)o(hes)h(to)315 314 y(insert)k(mo)q(de.)20
-b(This)15 b(command)g(a\013ects)g(only)g Fr(emacs)f Fs(mo)q(de;)h
-Fr(vi)g Fs(mo)q(de)h(do)q(es)g(o)o(v)o(erwrite)315 369
-y(di\013eren)o(tly)l(.)j(Eac)o(h)c(call)f(to)h Fr(readline\(\))f
-Fs(starts)f(in)j(insert)e(mo)q(de.)315 436 y(In)h(o)o(v)o(erwrite)e(mo)
-q(de,)i(c)o(haracters)f(b)q(ound)h(to)f Fr(self-insert)f
-Fs(replace)i(the)f(text)h(at)e(p)q(oin)o(t)315 491 y(rather)20
-b(than)h(pushing)g(the)g(text)f(to)g(the)h(righ)o(t.)35
-b(Characters)20 b(b)q(ound)i(to)e Fr(backward-)315 546
-y(delete-char)14 b Fs(replace)h(the)g(c)o(haracter)g(b)q(efore)g(p)q
-(oin)o(t)g(with)f(a)h(space.)315 613 y(By)g(default,)g(this)f(command)h
-(is)g(un)o(b)q(ound.)75 714 y Fh(1.4.4)30 b(Killing)20
-b(And)h(Y)-5 b(anking)75 800 y Fr(kill-line)14 b(\(C-k\))315
-855 y Fs(Kill)g(the)i(text)e(from)h(p)q(oin)o(t)g(to)f(the)h(end)h(of)f
-(the)g(line.)75 935 y Fr(backward-kill-line)e(\(C-x)h(Rubout\))315
-990 y Fs(Kill)g(bac)o(kw)o(ard)h(to)f(the)i(b)q(eginning)f(of)g(the)g
-(line.)75 1070 y Fr(unix-line-discard)e(\(C-u\))315 1125
-y Fs(Kill)h(bac)o(kw)o(ard)h(from)f(the)i(cursor)e(to)h(the)g(b)q
-(eginning)h(of)e(the)i(curren)o(t)f(line.)75 1205 y Fr(kill-whole-line)
-e(\(\))315 1260 y Fs(Kill)k(all)h(c)o(haracters)f(on)h(the)h(curren)o
-(t)f(line,)g(no)g(matter)g(where)g(p)q(oin)o(t)g(is.)28
-b(By)19 b(default,)315 1315 y(this)c(is)f(un)o(b)q(ound.)75
-1395 y Fr(kill-word)g(\(M-d\))315 1450 y Fs(Kill)g(from)g(p)q(oin)o(t)g
-(to)g(the)h(end)g(of)f(the)h(curren)o(t)g(w)o(ord,)e(or)i(if)f(b)q(et)o
-(w)o(een)h(w)o(ords,)e(to)i(the)f(end)315 1505 y(of)h(the)g(next)g(w)o
-(ord.)20 b(W)l(ord)14 b(b)q(oundaries)i(are)f(the)g(same)g(as)g
-Fr(forward-word)p Fs(.)75 1585 y Fr(backward-kill-word)e(\(M-DEL\))315
-1640 y Fs(Kill)h(the)g(w)o(ord)g(b)q(ehind)h(p)q(oin)o(t.)20
-b(W)l(ord)14 b(b)q(oundaries)g(are)g(the)h(same)f(as)g
-Fr(backward-word)p Fs(.)75 1720 y Fr(unix-word-rubout)f(\(C-w\))315
-1775 y Fs(Kill)i(the)h(w)o(ord)f(b)q(ehind)i(p)q(oin)o(t,)e(using)h
-(white)f(space)h(as)g(a)f(w)o(ord)g(b)q(oundary)l(.)23
-b(The)16 b(killed)315 1830 y(text)f(is)f(sa)o(v)o(ed)h(on)g(the)h
-(kill-ring.)75 1910 y Fr(unix-filename-rubout)c(\(\))315
-1965 y Fs(Kill)17 b(the)i(w)o(ord)e(b)q(ehind)i(p)q(oin)o(t,)f(using)g
-(white)g(space)g(and)h(the)f(slash)g(c)o(haracter)f(as)h(the)315
-2020 y(w)o(ord)d(b)q(oundaries.)20 b(The)15 b(killed)g(text)f(is)h(sa)o
-(v)o(ed)g(on)g(the)g(kill-ring.)75 2100 y Fr(delete-horizontal-space)d
-(\(\))315 2155 y Fs(Delete)j(all)f(spaces)h(and)h(tabs)e(around)i(p)q
-(oin)o(t.)j(By)c(default,)g(this)f(is)h(un)o(b)q(ound.)75
-2235 y Fr(kill-region)f(\(\))315 2290 y Fs(Kill)g(the)i(text)e(in)h
-(the)h(curren)o(t)f(region.)k(By)c(default,)g(this)f(command)h(is)g(un)
-o(b)q(ound.)75 2370 y Fr(copy-region-as-kill)e(\(\))315
-2425 y Fs(Cop)o(y)j(the)i(text)e(in)h(the)g(region)f(to)h(the)g(kill)e
-(bu\013er,)i(so)g(it)f(can)h(b)q(e)h(y)o(ank)o(ed)f(righ)o(t)f(a)o(w)o
-(a)o(y)l(.)315 2480 y(By)f(default,)g(this)f(command)h(is)g(un)o(b)q
-(ound.)75 2560 y Fr(copy-backward-word)e(\(\))315 2615
-y Fs(Cop)o(y)19 b(the)g(w)o(ord)g(b)q(efore)g(p)q(oin)o(t)g(to)f(the)i
-(kill)e(bu\013er.)32 b(The)19 b(w)o(ord)g(b)q(oundaries)g(are)g(the)315
-2670 y(same)c(as)g Fr(backward-word)p Fs(.)j(By)d(default,)f(this)h
-(command)g(is)g(un)o(b)q(ound.)p eop end
-%%Page: 18 22
-TeXDict begin 18 21 bop 75 -58 a Fs(Chapter)15 b(1:)k(Command)c(Line)h
-(Editing)1053 b(18)75 149 y Fr(copy-forward-word)13 b(\(\))315
-204 y Fs(Cop)o(y)i(the)h(w)o(ord)e(follo)o(wing)g(p)q(oin)o(t)h(to)g
-(the)g(kill)g(bu\013er.)20 b(The)c(w)o(ord)f(b)q(oundaries)h(are)f(the)
-315 259 y(same)g(as)g Fr(forward-word)p Fs(.)j(By)d(default,)g(this)f
-(command)h(is)g(un)o(b)q(ound.)75 342 y Fr(yank)g(\(C-y\))315
-397 y Fs(Y)l(ank)g(the)h(top)f(of)f(the)i(kill)e(ring)g(in)o(to)g(the)i
-(bu\013er)f(at)f(p)q(oin)o(t.)75 479 y Fr(yank-pop)g(\(M-y\))315
-534 y Fs(Rotate)j(the)g(kill-ring,)f(and)h(y)o(ank)g(the)h(new)f(top.)
-26 b(Y)l(ou)17 b(can)h(only)f(do)g(this)g(if)f(the)i(prior)315
-589 y(command)d(is)g Fr(yank)f Fs(or)h Fr(yank-pop)p
-Fs(.)75 692 y Fh(1.4.5)30 b(Sp)r(ecifying)20 b(Numeric)h(Argumen)n(ts)
-75 779 y Fr(digit-argument)13 b(\()p Fk(M-0)p Fr(,)i
-Fk(M-1)p Fr(,)f(...)h Fk(M--)p Fr(\))315 834 y Fs(Add)f(this)f(digit)f
-(to)h(the)h(argumen)o(t)e(already)h(accum)o(ulating,)f(or)h(start)f(a)h
-(new)h(argumen)o(t.)315 889 y Fk(M--)h Fs(starts)f(a)h(negativ)o(e)f
-(argumen)o(t.)75 971 y Fr(universal-argument)f(\(\))315
-1026 y Fs(This)f(is)h(another)f(w)o(a)o(y)g(to)g(sp)q(ecify)h(an)g
-(argumen)o(t.)18 b(If)13 b(this)f(command)h(is)f(follo)o(w)o(ed)f(b)o
-(y)i(one)315 1081 y(or)h(more)h(digits,)e(optionally)g(with)h(a)h
-(leading)f(min)o(us)g(sign,)g(those)h(digits)e(de\014ne)j(the)f(ar-)315
-1136 y(gumen)o(t.)k(If)c(the)g(command)f(is)g(follo)o(w)o(ed)f(b)o(y)i
-(digits,)e(executing)h Fr(universal-argument)315 1191
-y Fs(again)h(ends)h(the)g(n)o(umeric)g(argumen)o(t,)f(but)h(is)g
-(otherwise)f(ignored.)21 b(As)16 b(a)g(sp)q(ecial)f(case,)315
-1245 y(if)h(this)g(command)g(is)g(immediately)f(follo)o(w)o(ed)g(b)o(y)
-h(a)g(c)o(haracter)g(that)g(is)g(neither)g(a)g(digit)315
-1300 y(or)d(min)o(us)h(sign,)f(the)h(argumen)o(t)g(coun)o(t)f(for)h
-(the)g(next)g(command)g(is)f(m)o(ultiplied)g(b)o(y)h(four.)315
-1355 y(The)19 b(argumen)o(t)f(coun)o(t)g(is)g(initially)f(one,)i(so)f
-(executing)h(this)f(function)h(the)f(\014rst)h(time)315
-1410 y(mak)o(es)c(the)h(argumen)o(t)f(coun)o(t)h(four,)f(a)h(second)g
-(time)f(mak)o(es)h(the)g(argumen)o(t)f(coun)o(t)g(six-)315
-1465 y(teen,)g(and)g(so)g(on.)20 b(By)15 b(default,)g(this)f(is)h(not)g
-(b)q(ound)h(to)f(a)g(k)o(ey)l(.)75 1567 y Fh(1.4.6)30
-b(Letting)20 b(Readline)g(T)n(yp)r(e)h(F)-5 b(or)19 b(Y)-5
-b(ou)75 1655 y Fr(complete)14 b(\(TAB\))315 1709 y Fs(A)o(ttempt)c(to)h
-(p)q(erform)g(completion)g(on)g(the)g(text)g(b)q(efore)h(p)q(oin)o(t.)
-18 b(The)11 b(actual)g(completion)315 1764 y(p)q(erformed)k(is)g
-(application-sp)q(eci\014c.)20 b(The)15 b(default)g(is)g(\014lename)g
-(completion.)75 1847 y Fr(possible-completions)d(\(M-?\))315
-1902 y Fs(List)17 b(the)g(p)q(ossible)g(completions)g(of)g(the)g(text)g
-(b)q(efore)h(p)q(oin)o(t.)25 b(When)18 b(displa)o(ying)e(com-)315
-1957 y(pletions,)f(Readline)i(sets)f(the)g(n)o(um)o(b)q(er)h(of)e
-(columns)h(used)h(for)f(displa)o(y)f(to)h(the)g(v)m(alue)g(of)315
-2011 y Fr(completion-display-width)p Fs(,)f(the)k(v)m(alue)f(of)g(the)g
-(en)o(vironmen)o(t)g(v)m(ariable)f Fr(COLUMNS)p Fs(,)315
-2066 y(or)e(the)g(screen)h(width,)e(in)h(that)g(order.)75
-2149 y Fr(insert-completions)e(\(M-*\))315 2204 y Fs(Insert)j(all)e
-(completions)g(of)h(the)g(text)g(b)q(efore)h(p)q(oin)o(t)e(that)h(w)o
-(ould)g(ha)o(v)o(e)g(b)q(een)h(generated)315 2258 y(b)o(y)f
-Fr(possible-completions)p Fs(.)75 2341 y Fr(menu-complete)e(\(\))315
-2396 y Fs(Similar)d(to)i Fr(complete)p Fs(,)f(but)h(replaces)g(the)g(w)
-o(ord)f(to)g(b)q(e)i(completed)e(with)h(a)f(single)h(matc)o(h)315
-2451 y(from)18 b(the)h(list)f(of)g(p)q(ossible)h(completions.)30
-b(Rep)q(eated)20 b(execution)f(of)g Fr(menu-complete)315
-2506 y Fs(steps)h(through)g(the)g(list)f(of)h(p)q(ossible)g
-(completions,)g(inserting)f(eac)o(h)h(matc)o(h)f(in)h(turn.)315
-2560 y(A)o(t)e(the)g(end)h(of)f(the)h(list)e(of)h(completions,)g(the)g
-(b)q(ell)h(is)e(rung)i(\(sub)s(ject)f(to)f(the)i(setting)315
-2615 y(of)f Fr(bell-style)p Fs(\))e(and)i(the)g(original)e(text)i(is)f
-(restored.)28 b(An)19 b(argumen)o(t)e(of)g Fi(n)i Fs(mo)o(v)o(es)e
-Fi(n)315 2670 y Fs(p)q(ositions)f(forw)o(ard)g(in)i(the)f(list)f(of)h
-(matc)o(hes;)h(a)f(negativ)o(e)f(argumen)o(t)h(ma)o(y)g(b)q(e)h(used)g
-(to)p eop end
-%%Page: 19 23
-TeXDict begin 19 22 bop 75 -58 a Fs(Chapter)15 b(1:)k(Command)c(Line)h
-(Editing)1053 b(19)315 149 y(mo)o(v)o(e)18 b(bac)o(kw)o(ard)h(through)g
-(the)g(list.)30 b(This)19 b(command)g(is)g(in)o(tended)g(to)g(b)q(e)h
-(b)q(ound)g(to)315 204 y Fr(TAB)p Fs(,)14 b(but)i(is)e(un)o(b)q(ound)j
-(b)o(y)e(default.)75 277 y Fr(menu-complete-backward)d(\(\))315
-332 y Fs(Iden)o(tical)17 b(to)g Fr(menu-complete)p Fs(,)f(but)i(mo)o(v)
-o(es)e(bac)o(kw)o(ard)h(through)g(the)h(list)e(of)h(p)q(ossible)315
-387 y(completions,)d(as)h(if)f Fr(menu-complete)g Fs(had)h(b)q(een)h
-(giv)o(en)f(a)g(negativ)o(e)f(argumen)o(t.)75 459 y Fr
-(delete-char-or-list)f(\(\))315 514 y Fs(Deletes)g(the)g(c)o(haracter)g
-(under)h(the)g(cursor)f(if)g(not)g(at)g(the)g(b)q(eginning)h(or)f(end)h
-(of)f(the)g(line)315 569 y(\(lik)o(e)g Fr(delete-char)p
-Fs(\).)18 b(If)d(at)f(the)h(end)g(of)f(the)g(line,)g(b)q(eha)o(v)o(es)h
-(iden)o(tically)e(to)h Fr(possible-)315 624 y(completions)p
-Fs(.)k(This)d(command)g(is)g(un)o(b)q(ound)h(b)o(y)f(default.)75
-716 y Fh(1.4.7)30 b(Keyb)r(oard)20 b(Macros)75 799 y
-Fr(start-kbd-macro)13 b(\(C-x)i(\(\))315 854 y Fs(Begin)g(sa)o(ving)f
-(the)i(c)o(haracters)e(t)o(yp)q(ed)i(in)o(to)e(the)h(curren)o(t)g(k)o
-(eyb)q(oard)g(macro.)75 926 y Fr(end-kbd-macro)e(\(C-x)i(\)\))315
-981 y Fs(Stop)f(sa)o(ving)e(the)i(c)o(haracters)f(t)o(yp)q(ed)h(in)o
-(to)e(the)i(curren)o(t)g(k)o(eyb)q(oard)f(macro)g(and)h(sa)o(v)o(e)f
-(the)315 1036 y(de\014nition.)75 1109 y Fr(call-last-kbd-macro)g(\(C-x)
-h(e\))315 1164 y Fs(Re-execute)19 b(the)f(last)e(k)o(eyb)q(oard)i
-(macro)f(de\014ned,)i(b)o(y)e(making)g(the)h(c)o(haracters)e(in)i(the)
-315 1218 y(macro)c(app)q(ear)i(as)f(if)f(t)o(yp)q(ed)i(at)e(the)i(k)o
-(eyb)q(oard.)75 1311 y Fh(1.4.8)30 b(Some)20 b(Miscellaneous)h
-(Commands)75 1394 y Fr(re-read-init-file)13 b(\(C-x)h(C-r\))315
-1448 y Fs(Read)e(in)e(the)h(con)o(ten)o(ts)g(of)f(the)h
-Fi(inputrc)j Fs(\014le,)d(and)h(incorp)q(orate)e(an)o(y)g(bindings)h
-(or)g(v)m(ariable)315 1503 y(assignmen)o(ts)j(found)i(there.)75
-1576 y Fr(abort)e(\(C-g\))315 1631 y Fs(Ab)q(ort)f(the)g(curren)o(t)h
-(editing)e(command)h(and)h(ring)e(the)i(terminal's)d(b)q(ell)i(\(sub)s
-(ject)g(to)g(the)315 1685 y(setting)h(of)h Fr(bell-style)p
-Fs(\).)75 1758 y Fr(do-uppercase-version)d(\(M-a,)j(M-b,)f(M-)p
-Fk(x)5 b Fr(,)15 b(...\))315 1813 y Fs(If)f(the)g(meta\014ed)g(c)o
-(haracter)f Fi(x)k Fs(is)c(lo)o(w)o(ercase,)g(run)h(the)g(command)f
-(that)h(is)f(b)q(ound)i(to)e(the)315 1868 y(corresp)q(onding)i(upp)q
-(ercase)h(c)o(haracter.)75 1941 y Fr(prefix-meta)e(\(ESC\))315
-1995 y Fs(Metafy)k(the)h(next)g(c)o(haracter)f(t)o(yp)q(ed.)30
-b(This)19 b(is)f(for)g(k)o(eyb)q(oards)h(without)f(a)g(meta)g(k)o(ey)l
-(.)315 2050 y(T)o(yping)d(`)p Fr(ESC)f(f)p Fs(')h(is)f(equiv)m(alen)o
-(t)h(to)g(t)o(yping)f Fk(M-f)p Fs(.)75 2123 y Fr(undo)h(\(C-_)f(or)h
-(C-x)g(C-u\))315 2178 y Fs(Incremen)o(tal)g(undo,)g(separately)g(remem)
-o(b)q(ered)h(for)e(eac)o(h)h(line.)75 2250 y Fr(revert-line)f(\(M-r\))
-315 2305 y Fs(Undo)j(all)e(c)o(hanges)i(made)f(to)g(this)g(line.)24
-b(This)16 b(is)g(lik)o(e)g(executing)g(the)h Fr(undo)f
-Fs(command)315 2360 y(enough)g(times)e(to)h(get)f(bac)o(k)h(to)g(the)g
-(b)q(eginning.)75 2433 y Fr(tilde-expand)f(\(M-~\))315
-2488 y Fs(P)o(erform)g(tilde)h(expansion)g(on)g(the)g(curren)o(t)g(w)o
-(ord.)75 2560 y Fr(set-mark)f(\(C-@\))315 2615 y Fs(Set)i(the)h(mark)f
-(to)f(the)i(p)q(oin)o(t.)23 b(If)17 b(a)f(n)o(umeric)g(argumen)o(t)g
-(is)f(supplied,)i(the)g(mark)e(is)h(set)315 2670 y(to)f(that)f(p)q
-(osition.)p eop end
-%%Page: 20 24
-TeXDict begin 20 23 bop 75 -58 a Fs(Chapter)15 b(1:)k(Command)c(Line)h
-(Editing)1053 b(20)75 149 y Fr(exchange-point-and-mark)12
-b(\(C-x)j(C-x\))315 204 y Fs(Sw)o(ap)g(the)h(p)q(oin)o(t)f(with)g(the)h
-(mark.)k(The)c(curren)o(t)f(cursor)h(p)q(osition)e(is)h(set)h(to)f(the)
-g(sa)o(v)o(ed)315 259 y(p)q(osition,)f(and)h(the)h(old)e(cursor)h(p)q
-(osition)f(is)h(sa)o(v)o(ed)g(as)g(the)g(mark.)75 355
-y Fr(character-search)e(\(C-]\))315 410 y Fs(A)f(c)o(haracter)g(is)g
-(read)h(and)f(p)q(oin)o(t)g(is)g(mo)o(v)o(ed)g(to)g(the)g(next)h(o)q
-(ccurrence)g(of)f(that)g(c)o(haracter.)315 465 y(A)j(negativ)o(e)g
-(coun)o(t)g(searc)o(hes)g(for)f(previous)h(o)q(ccurrences.)75
-561 y Fr(character-search-backward)d(\(M-C-]\))315 616
-y Fs(A)22 b(c)o(haracter)g(is)g(read)g(and)h(p)q(oin)o(t)f(is)g(mo)o(v)
-o(ed)g(to)g(the)g(previous)g(o)q(ccurrence)i(of)e(that)315
-671 y(c)o(haracter.)d(A)c(negativ)o(e)g(coun)o(t)g(searc)o(hes)g(for)f
-(subsequen)o(t)i(o)q(ccurrences.)75 767 y Fr(skip-csi-sequence)d(\(\))
-315 822 y Fs(Read)h(enough)g(c)o(haracters)f(to)g(consume)h(a)g(m)o
-(ulti-k)o(ey)e(sequence)j(suc)o(h)f(as)f(those)h(de\014ned)315
-877 y(for)k(k)o(eys)g(lik)o(e)g(Home)h(and)g(End.)30
-b(Suc)o(h)19 b(sequences)h(b)q(egin)f(with)f(a)g(Con)o(trol)f(Sequence)
-315 932 y(Indicator)h(\(CSI\),)g(usually)f(ESC-[.)29
-b(If)19 b(this)f(sequence)h(is)f(b)q(ound)h(to)f Fr("\\)p
-Fs(e[)p Fr(")p Fs(,)g(k)o(eys)g(pro-)315 987 y(ducing)e(suc)o(h)h
-(sequences)g(will)d(ha)o(v)o(e)i(no)g(e\013ect)g(unless)g(explicitly)e
-(b)q(ound)j(to)f(a)f(readline)315 1041 y(command,)h(instead)f(of)h
-(inserting)f(stra)o(y)f(c)o(haracters)i(in)o(to)f(the)h(editing)f
-(bu\013er.)22 b(This)15 b(is)315 1096 y(un)o(b)q(ound)h(b)o(y)g
-(default,)e(but)h(usually)g(b)q(ound)h(to)f(ESC-[.)75
-1193 y Fr(insert-comment)e(\(M-#\))315 1247 y Fs(Without)k(a)g(n)o
-(umeric)h(argumen)o(t,)f(the)h(v)m(alue)g(of)g(the)f
-Fr(comment-begin)f Fs(v)m(ariable)i(is)f(in-)315 1302
-y(serted)f(at)f(the)h(b)q(eginning)g(of)f(the)h(curren)o(t)g(line.)21
-b(If)16 b(a)g(n)o(umeric)g(argumen)o(t)f(is)g(supplied,)315
-1357 y(this)j(command)g(acts)g(as)f(a)h(toggle:)25 b(if)18
-b(the)g(c)o(haracters)g(at)f(the)i(b)q(eginning)f(of)g(the)g(line)315
-1412 y(do)d(not)g(matc)o(h)g(the)g(v)m(alue)h(of)f Fr(comment-begin)p
-Fs(,)e(the)i(v)m(alue)h(is)f(inserted,)f(otherwise)h(the)315
-1467 y(c)o(haracters)k(in)h Fr(comment-begin)e Fs(are)i(deleted)h(from)
-e(the)h(b)q(eginning)g(of)g(the)g(line.)34 b(In)315 1521
-y(either)15 b(case,)g(the)g(line)g(is)g(accepted)g(as)g(if)g(a)g
-(newline)g(had)g(b)q(een)i(t)o(yp)q(ed.)75 1618 y Fr(dump-functions)c
-(\(\))315 1673 y Fs(Prin)o(t)f(all)g(of)h(the)g(functions)g(and)h
-(their)f(k)o(ey)g(bindings)g(to)f(the)i(Readline)f(output)g(stream.)315
-1727 y(If)j(a)g(n)o(umeric)f(argumen)o(t)g(is)h(supplied,)g(the)g
-(output)f(is)h(formatted)e(in)i(suc)o(h)g(a)g(w)o(a)o(y)f(that)315
-1782 y(it)f(can)i(b)q(e)g(made)f(part)f(of)h(an)g Fi(inputrc)j
-Fs(\014le.)i(This)15 b(command)g(is)g(un)o(b)q(ound)h(b)o(y)f(default.)
-75 1879 y Fr(dump-variables)e(\(\))315 1934 y Fs(Prin)o(t)d(all)f(of)h
-(the)h(settable)f(v)m(ariables)g(and)h(their)f(v)m(alues)h(to)f(the)h
-(Readline)g(output)f(stream.)315 1988 y(If)16 b(a)g(n)o(umeric)f
-(argumen)o(t)g(is)h(supplied,)g(the)g(output)f(is)h(formatted)e(in)i
-(suc)o(h)g(a)g(w)o(a)o(y)f(that)315 2043 y(it)f(can)i(b)q(e)g(made)f
-(part)f(of)h(an)g Fi(inputrc)j Fs(\014le.)i(This)15 b(command)g(is)g
-(un)o(b)q(ound)h(b)o(y)f(default.)75 2140 y Fr(dump-macros)f(\(\))315
-2194 y Fs(Prin)o(t)i(all)g(of)g(the)h(Readline)g(k)o(ey)g(sequences)h
-(b)q(ound)g(to)e(macros)g(and)h(the)g(strings)f(they)315
-2249 y(output.)26 b(If)18 b(a)f(n)o(umeric)g(argumen)o(t)g(is)g
-(supplied,)h(the)f(output)g(is)g(formatted)f(in)i(suc)o(h)f(a)315
-2304 y(w)o(a)o(y)d(that)g(it)h(can)g(b)q(e)g(made)g(part)g(of)f(an)h
-Fi(inputrc)j Fs(\014le.)i(This)14 b(command)h(is)g(un)o(b)q(ound)h(b)o
-(y)315 2359 y(default.)75 2455 y Fr(emacs-editing-mode)d(\(C-e\))315
-2510 y Fs(When)j(in)f Fr(vi)f Fs(command)i(mo)q(de,)f(this)f(causes)i
-(a)f(switc)o(h)f(to)h Fr(emacs)f Fs(editing)h(mo)q(de.)75
-2606 y Fr(vi-editing-mode)e(\(M-C-j\))315 2661 y Fs(When)j(in)f
-Fr(emacs)f Fs(editing)h(mo)q(de,)g(this)f(causes)i(a)f(switc)o(h)f(to)h
-Fr(vi)f Fs(editing)h(mo)q(de.)p eop end
-%%Page: 21 25
-TeXDict begin 21 24 bop 75 -58 a Fs(Chapter)15 b(1:)k(Command)c(Line)h
-(Editing)1053 b(21)75 149 y Fq(1.5)33 b(Readline)21 b(vi)i(Mo)r(de)75
-229 y Fs(While)15 b(the)h(Readline)g(library)f(do)q(es)h(not)f(ha)o(v)o
-(e)g(a)h(full)f(set)h(of)f Fr(vi)g Fs(editing)g(functions,)h(it)f(do)q
-(es)h(con)o(tain)75 284 y(enough)h(to)g(allo)o(w)e(simple)h(editing)h
-(of)f(the)i(line.)25 b(The)17 b(Readline)g Fr(vi)g Fs(mo)q(de)g(b)q
-(eha)o(v)o(es)g(as)g(sp)q(eci\014ed)h(in)75 339 y(the)d
-Fl(posix)g Fs(standard.)137 406 y(In)g(order)g(to)f(switc)o(h)f(in)o
-(teractiv)o(ely)g(b)q(et)o(w)o(een)i Fr(emacs)e Fs(and)i
-Fr(vi)f Fs(editing)g(mo)q(des,)h(use)f(the)h(command)75
-461 y Fk(M-C-j)j Fs(\(b)q(ound)i(to)e(emacs-editing-mo)q(de)h(when)g
-(in)g Fr(vi)g Fs(mo)q(de)g(and)g(to)f(vi-editing-mo)q(de)h(in)g
-Fr(emacs)75 516 y Fs(mo)q(de\).)h(The)15 b(Readline)h(default)f(is)f
-Fr(emacs)h Fs(mo)q(de.)137 583 y(When)h(y)o(ou)e(en)o(ter)h(a)g(line)g
-(in)f Fr(vi)h Fs(mo)q(de,)g(y)o(ou)g(are)f(already)h(placed)g(in)g
-(`insertion')e(mo)q(de,)i(as)g(if)f(y)o(ou)75 638 y(had)h(t)o(yp)q(ed)g
-(an)g(`)p Fr(i)p Fs('.)j(Pressing)c Fr(ESC)h Fs(switc)o(hes)f(y)o(ou)g
-(in)o(to)g(`command')g(mo)q(de,)g(where)h(y)o(ou)g(can)f(edit)h(the)75
-692 y(text)h(of)h(the)g(line)f(with)h(the)g(standard)f
-Fr(vi)h Fs(mo)o(v)o(emen)o(t)f(k)o(eys,)g(mo)o(v)o(e)g(to)h(previous)f
-(history)g(lines)h(with)75 747 y(`)p Fr(k)p Fs(')d(and)i(subsequen)o(t)
-f(lines)g(with)g(`)p Fr(j)p Fs(',)f(and)h(so)g(forth.)p
-eop end
-%%Page: 22 26
-TeXDict begin 22 25 bop 75 -58 a Fs(Chapter)15 b(2:)k(Programming)14
-b(with)g(GNU)h(Readline)842 b(22)75 149 y Fo(2)41 b(Programming)29
-b(with)e(GNU)h(Readline)75 263 y Fs(This)12 b(c)o(hapter)g(describ)q
-(es)h(the)g(in)o(terface)f(b)q(et)o(w)o(een)g(the)h Fl(gnu)f
-Fs(Readline)h(Library)f(and)g(other)h(programs.)75 318
-y(If)i(y)o(ou)f(are)g(a)g(programmer,)f(and)i(y)o(ou)f(wish)h(to)e
-(include)i(the)g(features)f(found)h(in)f Fl(gnu)h Fs(Readline)g(suc)o
-(h)75 373 y(as)d(completion,)g(line)g(editing,)g(and)h(in)o(teractiv)o
-(e)d(history)i(manipulation)f(in)h(y)o(our)g(o)o(wn)g(programs,)g(this)
-75 428 y(section)j(is)f(for)h(y)o(ou.)75 543 y Fq(2.1)33
-b(Basic)21 b(Beha)n(vior)75 622 y Fs(Man)o(y)d(programs)g(pro)o(vide)h
-(a)f(command)h(line)g(in)o(terface,)g(suc)o(h)g(as)g
-Fr(mail)p Fs(,)g Fr(ftp)p Fs(,)g(and)g Fr(sh)p Fs(.)31
-b(F)l(or)19 b(suc)o(h)75 677 y(programs,)13 b(the)h(default)g(b)q(eha)o
-(viour)g(of)g(Readline)h(is)e(su\016cien)o(t.)20 b(This)13
-b(section)h(describ)q(es)h(ho)o(w)f(to)g(use)75 732 y(Readline)j(in)h
-(the)f(simplest)f(w)o(a)o(y)g(p)q(ossible,)h(p)q(erhaps)h(to)f(replace)
-g(calls)f(in)h(y)o(our)g(co)q(de)h(to)e Fr(gets\(\))g
-Fs(or)75 787 y Fr(fgets\(\))p Fs(.)137 853 y(The)h(function)f
-Fr(readline\(\))f Fs(prin)o(ts)g(a)h(prompt)g Fi(prompt)h
-Fs(and)f(then)h(reads)f(and)h(returns)f(a)g(single)75
-908 y(line)g(of)g(text)g(from)f(the)i(user.)23 b(If)17
-b Fi(prompt)g Fs(is)f Fr(NULL)f Fs(or)h(the)h(empt)o(y)f(string,)f(no)h
-(prompt)g(is)g(displa)o(y)o(ed.)75 963 y(The)j(line)f
-Fr(readline)f Fs(returns)i(is)f(allo)q(cated)f(with)h
-Fr(malloc\(\))p Fs(;)h(the)g(caller)e(should)i Fr(free\(\))f
-Fs(the)g(line)75 1018 y(when)e(it)e(has)h(\014nished)h(with)f(it.)k
-(The)c(declaration)f(for)h Fr(readline)f Fs(in)h(ANSI)h(C)f(is)195
-1084 y Fr(char)23 b(*readline)g(\(const)g(char)g(*)p
-Fk(prompt)5 b Fr(\);)75 1151 y Fs(So,)15 b(one)g(migh)o(t)f(sa)o(y)195
-1217 y Fr(char)23 b(*line)g(=)h(readline)f(\("Enter)g(a)h(line:)f("\);)
-75 1284 y Fs(in)11 b(order)g(to)g(read)h(a)f(line)g(of)g(text)g(from)f
-(the)i(user.)19 b(The)11 b(line)h(returned)f(has)h(the)f(\014nal)g
-(newline)h(remo)o(v)o(ed,)75 1339 y(so)j(only)g(the)g(text)g(remains.)
-137 1405 y(If)21 b Fr(readline)e Fs(encoun)o(ters)h(an)g
-Fr(EOF)g Fs(while)g(reading)g(the)g(line,)h(and)f(the)h(line)e(is)h
-(empt)o(y)g(at)g(that)75 1460 y(p)q(oin)o(t,)14 b(then)h
-Fr(\(char)f(*\)NULL)g Fs(is)g(returned.)21 b(Otherwise,)14
-b(the)h(line)f(is)g(ended)i(just)e(as)h(if)f(a)g(newline)h(had)75
-1515 y(b)q(een)h(t)o(yp)q(ed.)137 1582 y(If)e(y)o(ou)f(w)o(an)o(t)g
-(the)g(user)h(to)f(b)q(e)h(able)f(to)g(get)g(at)g(the)g(line)h(later,)e
-(\(with)g Fr(C-p)i Fs(for)e(example\),)h(y)o(ou)h(m)o(ust)75
-1636 y(call)g Fr(add_history\(\))g Fs(to)g(sa)o(v)o(e)h(the)g(line)g(a)
-o(w)o(a)o(y)f(in)h(a)f Fi(history)k Fs(list)c(of)h(suc)o(h)h(lines.)195
-1703 y Fr(add_history)22 b(\(line\);)75 1770 y Fs(F)l(or)15
-b(full)f(details)g(on)h(the)h(GNU)f(History)f(Library)l(,)g(see)i(the)f
-(asso)q(ciated)f(man)o(ual.)137 1836 y(It)i(is)f(preferable)h(to)f(a)o
-(v)o(oid)f(sa)o(ving)h(empt)o(y)g(lines)g(on)h(the)g(history)e(list,)h
-(since)g(users)h(rarely)f(ha)o(v)o(e)g(a)75 1891 y(burning)g(need)h(to)
-e(reuse)h(a)g(blank)f(line.)20 b(Here)15 b(is)f(a)h(function)f(whic)o
-(h)h(usefully)g(replaces)f(the)h(standard)75 1946 y Fr(gets\(\))f
-Fs(library)g(function,)h(and)g(has)g(the)h(adv)m(an)o(tage)e(of)h(no)g
-(static)f(bu\013er)h(to)g(o)o(v)o(er\015o)o(w:)195 2012
-y Fr(/*)24 b(A)f(static)g(variable)g(for)h(holding)e(the)i(line.)f(*/)
-195 2067 y(static)g(char)g(*line_read)g(=)h(\(char)f(*\)NULL;)195
-2177 y(/*)h(Read)f(a)h(string,)f(and)g(return)g(a)h(pointer)f(to)g(it.)
-267 2232 y(Returns)f(NULL)i(on)f(EOF.)h(*/)195 2286 y(char)f(*)195
-2341 y(rl_gets)g(\(\))195 2396 y({)243 2451 y(/*)g(If)h(the)f(buffer)g
-(has)h(already)f(been)g(allocated,)314 2506 y(return)g(the)h(memory)f
-(to)g(the)h(free)f(pool.)g(*/)243 2560 y(if)g(\(line_read\))290
-2615 y({)338 2670 y(free)g(\(line_read\);)p eop end
-%%Page: 23 27
-TeXDict begin 23 26 bop 75 -58 a Fs(Chapter)15 b(2:)k(Programming)14
-b(with)g(GNU)h(Readline)842 b(23)338 149 y Fr(line_read)23
-b(=)h(\(char)f(*\)NULL;)290 204 y(})243 314 y(/*)g(Get)h(a)f(line)h
-(from)f(the)h(user.)f(*/)243 369 y(line_read)f(=)i(readline)f(\(""\);)
-243 478 y(/*)g(If)h(the)f(line)h(has)f(any)h(text)f(in)g(it,)314
-533 y(save)h(it)f(on)h(the)f(history.)g(*/)243 588 y(if)g(\(line_read)g
-(&&)g(*line_read\))290 643 y(add_history)g(\(line_read\);)243
-752 y(return)g(\(line_read\);)195 807 y(})137 883 y Fs(This)14
-b(function)g(giv)o(es)f(the)h(user)g(the)h(default)e(b)q(eha)o(viour)h
-(of)g Fr(TAB)f Fs(completion:)19 b(completion)13 b(on)h(\014le)75
-938 y(names.)20 b(If)c(y)o(ou)f(do)g(not)g(w)o(an)o(t)f(Readline)i(to)e
-(complete)i(on)f(\014lenames,)g(y)o(ou)g(can)g(c)o(hange)h(the)f
-(binding)75 993 y(of)g(the)g Fr(TAB)g Fs(k)o(ey)g(with)f
-Fr(rl_bind_key\(\))p Fs(.)195 1070 y Fr(int)23 b(rl_bind_key)g(\(int)g
-Fk(key)5 b Fr(,)24 b(rl_command_func_t)d(*)p Fk(function)5
-b Fr(\);)137 1146 y(rl_bind_key\(\))15 b Fs(tak)o(es)h(t)o(w)o(o)g
-(argumen)o(ts:)22 b Fi(k)o(ey)e Fs(is)d(the)f(c)o(haracter)g(that)g(y)o
-(ou)h(w)o(an)o(t)f(to)g(bind,)h(and)75 1201 y Fi(function)i
-Fs(is)g(the)h(address)f(of)g(the)h(function)f(to)g(call)f(when)i
-Fi(k)o(ey)j Fs(is)c(pressed.)33 b(Binding)20 b Fr(TAB)f
-Fs(to)f Fr(rl_)75 1256 y(insert\(\))g Fs(mak)o(es)h Fr(TAB)g
-Fs(insert)g(itself.)31 b Fr(rl_bind_key\(\))18 b Fs(returns)h(non-zero)
-g(if)g Fi(k)o(ey)k Fs(is)c(not)g(a)g(v)m(alid)75 1310
-y(ASCI)q(I)d(c)o(haracter)f(co)q(de)h(\(b)q(et)o(w)o(een)f(0)g(and)g
-(255\).)137 1387 y(Th)o(us,)g(to)g(disable)f(the)i(default)e
-Fr(TAB)h Fs(b)q(eha)o(vior,)g(the)g(follo)o(wing)e(su\016ces:)195
-1464 y Fr(rl_bind_key)22 b(\('\\t',)h(rl_insert\);)137
-1540 y Fs(This)13 b(co)q(de)h(should)f(b)q(e)h(executed)g(once)g(at)e
-(the)h(start)f(of)h(y)o(our)g(program;)f(y)o(ou)h(migh)o(t)f(write)g(a)
-h(func-)75 1595 y(tion)j(called)g Fr(initialize_readline\(\))d
-Fs(whic)o(h)j(p)q(erforms)g(this)g(and)h(other)f(desired)g
-(initializations,)75 1650 y(suc)o(h)g(as)e(installing)g(custom)g
-(completers)h(\(see)g(Section)g(2.6)g([Custom)f(Completers],)f(page)i
-(43\).)75 1780 y Fq(2.2)33 b(Custom)21 b(F)-6 b(unctions)75
-1859 y Fs(Readline)14 b(pro)o(vides)f(man)o(y)g(functions)h(for)f
-(manipulating)f(the)i(text)f(of)g(the)h(line,)f(but)h(it)e(isn't)h(p)q
-(ossible)75 1914 y(to)18 b(an)o(ticipate)f(the)h(needs)h(of)f(all)f
-(programs.)28 b(This)18 b(section)g(describ)q(es)h(the)f(v)m(arious)g
-(functions)g(and)75 1969 y(v)m(ariables)12 b(de\014ned)j(within)d(the)h
-(Readline)h(library)d(whic)o(h)i(allo)o(w)f(a)g(user)h(program)f(to)h
-(add)g(customized)75 2024 y(functionalit)o(y)g(to)i(Readline.)137
-2100 y(Before)j(declaring)g(an)o(y)g(functions)g(that)g(customize)f
-(Readline's)h(b)q(eha)o(vior,)h(or)e(using)h(an)o(y)g(func-)75
-2155 y(tionalit)o(y)i(Readline)j(pro)o(vides)g(in)f(other)h(co)q(de,)h
-(an)f(application)f(writer)f(should)i(include)g(the)g(\014le)75
-2210 y Fr(<readline/readline.h>)14 b Fs(in)i(an)o(y)h(\014le)g(that)f
-(uses)h(Readline's)f(features.)24 b(Since)18 b(some)e(of)g(the)h
-(de\014-)75 2265 y(nitions)e(in)g Fr(readline.h)f Fs(use)i(the)g
-Fr(stdio)f Fs(library)l(,)f(the)i(\014le)f Fr(<stdio.h>)g
-Fs(should)g(b)q(e)h(included)h(b)q(efore)75 2320 y Fr(readline.h)p
-Fs(.)137 2396 y Fr(readline.h)d Fs(de\014nes)i(a)f(C)h(prepro)q(cessor)
-f(v)m(ariable)g(that)f(should)h(b)q(e)h(treated)f(as)g(an)g(in)o
-(teger,)f Fr(RL_)75 2451 y(READLINE_VERSION)p Fs(,)9
-b(whic)o(h)i(ma)o(y)g(b)q(e)g(used)h(to)e(conditionally)g(compile)g
-(application)g(co)q(de)i(dep)q(ending)75 2506 y(on)17
-b(the)h(installed)e(Readline)i(v)o(ersion.)26 b(The)18
-b(v)m(alue)g(is)f(a)g(hexadecimal)g(enco)q(ding)h(of)f(the)h(ma)s(jor)e
-(and)75 2560 y(minor)g(v)o(ersion)h(n)o(um)o(b)q(ers)g(of)g(the)g
-(library)l(,)f(of)h(the)g(form)f(0x)p Fi(MMmm)p Fs(.)25
-b Fi(MM)c Fs(is)16 b(the)i(t)o(w)o(o-digit)c(ma)s(jor)75
-2615 y(v)o(ersion)g(n)o(um)o(b)q(er;)g Fi(mm)h Fs(is)f(the)g(t)o(w)o
-(o-digit)e(minor)i(v)o(ersion)g(n)o(um)o(b)q(er.)20 b(F)l(or)14
-b(Readline)g(4.2,)g(for)f(example,)75 2670 y(the)i(v)m(alue)h(of)e
-Fr(RL_READLINE_VERSION)f Fs(w)o(ould)i(b)q(e)g Fr(0x0402)p
-Fs(.)p eop end
-%%Page: 24 28
-TeXDict begin 24 27 bop 75 -58 a Fs(Chapter)15 b(2:)k(Programming)14
-b(with)g(GNU)h(Readline)842 b(24)75 149 y Fh(2.2.1)30
-b(Readline)20 b(T)n(yp)r(edefs)75 223 y Fs(F)l(or)15
-b(readabilt)o(y)l(,)e(w)o(e)i(declare)g(a)g(n)o(um)o(b)q(er)h(of)e(new)
-i(ob)s(ject)f(t)o(yp)q(es,)f(all)g(p)q(oin)o(ters)h(to)g(functions.)137
-292 y(The)j(reason)g(for)f(declaring)g(these)h(new)g(t)o(yp)q(es)g(is)g
-(to)f(mak)o(e)g(it)g(easier)h(to)f(write)g(co)q(de)h(describing)75
-347 y(p)q(oin)o(ters)d(to)f(C)h(functions)g(with)g(appropriately)e
-(protot)o(yp)q(ed)i(argumen)o(ts)g(and)g(return)g(v)m(alues.)137
-416 y(F)l(or)j(instance,)h(sa)o(y)f(w)o(e)g(w)o(an)o(t)f(to)h(declare)g
-(a)g(v)m(ariable)g Fi(func)k Fs(as)c(a)g(p)q(oin)o(ter)g(to)g(a)g
-(function)g(whic)o(h)75 471 y(tak)o(es)12 b(t)o(w)o(o)g
-Fr(int)g Fs(argumen)o(ts)g(and)h(returns)g(an)g Fr(int)f
-Fs(\(this)g(is)g(the)h(t)o(yp)q(e)g(of)g(all)e(of)i(the)g(Readline)g
-(bindable)75 526 y(functions\).)19 b(Instead)d(of)f(the)g(classic)f(C)h
-(declaration)137 595 y Fr(int)g(\(*func\)\(\);)75 665
-y Fs(or)g(the)g(ANSI-C)h(st)o(yle)e(declaration)137 734
-y Fr(int)h(\(*func\)\(int,)f(int\);)75 804 y Fs(w)o(e)h(ma)o(y)f(write)
-137 873 y Fr(rl_command_func_t)f(*func;)137 942 y Fs(The)j(full)e(list)
-g(of)h(function)g(p)q(oin)o(ter)g(t)o(yp)q(es)g(a)o(v)m(ailable)f(is)75
-1025 y Fr(typedef)g(int)h(rl_command_func_t)e(\(int,)h(int\);)75
-1080 y(typedef)g(char)h(*rl_compentry_func_t)d(\(const)j(char)f(*,)h
-(int\);)75 1135 y(typedef)f(char)h(**rl_completion_func_t)d(\(const)i
-(char)h(*,)g(int,)f(int\);)75 1190 y(typedef)g(char)h(*rl_quote_func_t)
-e(\(char)h(*,)h(int,)g(char)f(*\);)75 1244 y(typedef)g(char)h
-(*rl_dequote_func_t)d(\(char)j(*,)g(int\);)75 1299 y(typedef)f(int)h
-(rl_compignore_func_t)d(\(char)j(**\);)75 1354 y(typedef)f(void)h
-(rl_compdisp_func_t)d(\(char)j(**,)g(int,)f(int\);)75
-1409 y(typedef)g(int)h(rl_hook_func_t)e(\(void\);)75
-1464 y(typedef)h(int)h(rl_getc_func_t)e(\(FILE)i(*\);)75
-1518 y(typedef)f(int)h(rl_linebuf_func_t)e(\(char)h(*,)h(int\);)75
-1573 y(typedef)f(int)h(rl_intfunc_t)e(\(int\);)75 1628
-y(#define)h(rl_ivoidfunc_t)f(rl_hook_func_t)75 1683 y(typedef)h(int)h
-(rl_icpfunc_t)e(\(char)i(*\);)75 1738 y(typedef)f(int)h(rl_icppfunc_t)e
-(\(char)i(**\);)75 1792 y(typedef)f(void)h(rl_voidfunc_t)e(\(void\);)75
-1847 y(typedef)h(void)h(rl_vintfunc_t)e(\(int\);)75 1902
-y(typedef)h(void)h(rl_vcpfunc_t)e(\(char)i(*\);)75 1957
-y(typedef)f(void)h(rl_vcppfunc_t)e(\(char)i(**\);)75
-2045 y Fh(2.2.2)30 b(W)-5 b(riting)20 b(a)h(New)f(F)-5
-b(unction)75 2118 y Fs(In)16 b(order)f(to)g(write)g(new)h(functions)f
-(for)g(Readline,)h(y)o(ou)f(need)h(to)f(kno)o(w)g(the)h(calling)e(con)o
-(v)o(en)o(tions)h(for)75 2173 y(k)o(eyb)q(oard-in)o(v)o(ok)o(ed)f
-(functions,)h(and)g(the)g(names)g(of)f(the)i(v)m(ariables)e(that)g
-(describ)q(e)i(the)f(curren)o(t)g(state)75 2228 y(of)g(the)g(line)g
-(read)g(so)g(far.)137 2297 y(The)h(calling)e(sequence)i(for)f(a)f
-(command)i Fr(foo)e Fs(lo)q(oks)h(lik)o(e)195 2367 y
-Fr(int)23 b(foo)h(\(int)f(count,)g(int)h(key\))75 2436
-y Fs(where)18 b Fi(coun)o(t)h Fs(is)e(the)h(n)o(umeric)g(argumen)o(t)f
-(\(or)h(1)f(if)h(defaulted\))f(and)h Fi(k)o(ey)k Fs(is)c(the)g(k)o(ey)g
-(that)f(in)o(v)o(ok)o(ed)75 2491 y(this)e(function.)137
-2560 y(It)d(is)f(completely)g(up)h(to)f(the)g(function)h(as)f(to)g
-(what)g(should)g(b)q(e)h(done)g(with)f(the)h(n)o(umeric)f(argumen)o(t.)
-75 2615 y(Some)20 b(functions)g(use)g(it)f(as)h(a)g(rep)q(eat)g(coun)o
-(t,)g(some)g(as)g(a)f(\015ag,)i(and)f(others)g(to)f(c)o(ho)q(ose)h
-(alternate)75 2670 y(b)q(eha)o(vior)h(\(refreshing)g(the)h(curren)o(t)f
-(line)h(as)f(opp)q(osed)h(to)f(refreshing)h(the)f(screen,)j(for)d
-(example\).)p eop end
-%%Page: 25 29
-TeXDict begin 25 28 bop 75 -58 a Fs(Chapter)15 b(2:)k(Programming)14
-b(with)g(GNU)h(Readline)842 b(25)75 149 y(Some)17 b(c)o(ho)q(ose)f(to)g
-(ignore)g(it.)23 b(In)18 b(general,)e(if)g(a)g(function)g(uses)h(the)g
-(n)o(umeric)g(argumen)o(t)e(as)i(a)f(rep)q(eat)75 204
-y(coun)o(t,)e(it)f(should)h(b)q(e)g(able)g(to)f(do)h(something)g
-(useful)g(with)f(b)q(oth)h(negativ)o(e)f(and)h(p)q(ositiv)o(e)f
-(argumen)o(ts.)75 259 y(A)o(t)i(the)g(v)o(ery)g(least,)f(it)g(should)h
-(b)q(e)h(a)o(w)o(are)e(that)h(it)f(can)h(b)q(e)h(passed)g(a)f(negativ)o
-(e)f(argumen)o(t.)137 329 y(A)g(command)g(function)g(should)g(return)f
-(0)h(if)f(its)g(action)h(completes)f(successfully)l(,)h(and)g(a)g
-(non-zero)75 384 y(v)m(alue)20 b(if)f(some)g(error)g(o)q(ccurs.)33
-b(This)19 b(is)h(the)f(con)o(v)o(en)o(tion)g(ob)q(ey)o(ed)h(b)o(y)g
-(all)e(of)h(the)h(builtin)f(Readline)75 439 y(bindable)c(command)g
-(functions.)75 559 y Fq(2.3)33 b(Readline)21 b(V)-6 b(ariables)75
-639 y Fs(These)16 b(v)m(ariables)e(are)h(a)o(v)m(ailable)f(to)g
-(function)h(writers.)1685 737 y([V)l(ariable])-1801 b
-Fg(char)27 b(*)f(rl_line_buffer)195 792 y Fs(This)15
-b(is)g(the)h(line)f(gathered)h(so)f(far.)20 b(Y)l(ou)c(are)f(w)o
-(elcome)g(to)g(mo)q(dify)g(the)h(con)o(ten)o(ts)f(of)g(the)h(line,)195
-846 y(but)i(see)g(Section)g(2.4.5)e([Allo)o(wing)f(Undoing],)j(page)f
-(33.)27 b(The)18 b(function)g Fr(rl_extend_line_)195
-901 y(buffer)c Fs(is)h(a)o(v)m(ailable)f(to)g(increase)i(the)f(memory)f
-(allo)q(cated)h(to)f Fr(rl_line_buffer)p Fs(.)1685 999
-y([V)l(ariable])-1801 b Fg(int)27 b(rl_point)195 1054
-y Fs(The)15 b(o\013set)g(of)f(the)i(curren)o(t)f(cursor)g(p)q(osition)f
-(in)h Fr(rl_line_buffer)e Fs(\(the)i Fj(p)n(oint)t Fs(\).)1685
-1152 y([V)l(ariable])-1801 b Fg(int)27 b(rl_end)195 1206
-y Fs(The)14 b(n)o(um)o(b)q(er)g(of)g(c)o(haracters)f(presen)o(t)h(in)g
-Fr(rl_line_buffer)p Fs(.)j(When)e Fr(rl_point)e Fs(is)g(at)g(the)h(end)
-195 1261 y(of)h(the)g(line,)g Fr(rl_point)f Fs(and)h
-Fr(rl_end)f Fs(are)h(equal.)1685 1359 y([V)l(ariable])-1801
-b Fg(int)27 b(rl_mark)195 1414 y Fs(The)19 b Fi(mark)h
-Fs(\(sa)o(v)o(ed)e(p)q(osition\))f(in)h(the)h(curren)o(t)f(line.)29
-b(If)19 b(set,)g(the)f(mark)g(and)h(p)q(oin)o(t)f(de\014ne)h(a)195
-1469 y Fj(r)n(e)n(gion)p Fs(.)1685 1566 y([V)l(ariable])-1801
-b Fg(int)27 b(rl_done)195 1621 y Fs(Setting)10 b(this)g(to)h(a)f
-(non-zero)h(v)m(alue)g(causes)g(Readline)g(to)g(return)f(the)h(curren)o
-(t)g(line)f(immediately)l(.)1685 1719 y([V)l(ariable])-1801
-b Fg(int)27 b(rl_num_chars_to_read)195 1774 y Fs(Setting)16
-b(this)g(to)g(a)g(p)q(ositiv)o(e)f(v)m(alue)i(b)q(efore)g(calling)e
-Fr(readline\(\))g Fs(causes)h(Readline)h(to)f(return)195
-1829 y(after)h(accepting)h(that)f(man)o(y)g(c)o(haracters,)h(rather)f
-(than)h(reading)f(up)h(to)f(a)h(c)o(haracter)f(b)q(ound)195
-1883 y(to)e Fr(accept-line)p Fs(.)1685 1981 y([V)l(ariable])-1801
-b Fg(int)27 b(rl_pending_input)195 2036 y Fs(Setting)12
-b(this)g(to)g(a)g(v)m(alue)h(mak)o(es)f(it)g(the)g(next)h(k)o(eystrok)o
-(e)f(read.)19 b(This)12 b(is)g(a)g(w)o(a)o(y)g(to)f(stu\013)h(a)h
-(single)195 2091 y(c)o(haracter)h(in)o(to)h(the)g(input)g(stream.)1685
-2189 y([V)l(ariable])-1801 b Fg(int)27 b(rl_dispatching)195
-2243 y Fs(Set)12 b(to)g(a)f(non-zero)i(v)m(alue)f(if)g(a)g(function)g
-(is)f(b)q(eing)i(called)e(from)h(a)f(k)o(ey)h(binding;)h(zero)f
-(otherwise.)195 2298 y(Application)17 b(functions)g(can)h(test)g(this)f
-(to)g(disco)o(v)o(er)g(whether)h(they)g(w)o(ere)g(called)f(directly)g
-(or)195 2353 y(b)o(y)e(Readline's)g(dispatc)o(hing)g(mec)o(hanism.)1685
-2451 y([V)l(ariable])-1801 b Fg(int)27 b(rl_erase_empty_line)195
-2506 y Fs(Setting)22 b(this)h(to)f(a)h(non-zero)g(v)m(alue)g(causes)g
-(Readline)h(to)e(completely)g(erase)h(the)g(curren)o(t)195
-2560 y(line,)e(including)g(an)o(y)f(prompt,)h(an)o(y)g(time)f(a)g
-(newline)h(is)f(t)o(yp)q(ed)h(as)f(the)h(only)f(c)o(haracter)g(on)195
-2615 y(an)e(otherwise-empt)o(y)f(line.)29 b(The)18 b(cursor)g(is)g(mo)o
-(v)o(ed)f(to)h(the)g(b)q(eginning)g(of)g(the)g(newly-blank)195
-2670 y(line.)p eop end
-%%Page: 26 30
-TeXDict begin 26 29 bop 75 -58 a Fs(Chapter)15 b(2:)k(Programming)14
-b(with)g(GNU)h(Readline)842 b(26)1685 149 y([V)l(ariable])-1801
-b Fg(char)27 b(*)f(rl_prompt)195 204 y Fs(The)13 b(prompt)g(Readline)g
-(uses.)20 b(This)12 b(is)h(set)g(from)f(the)h(argumen)o(t)g(to)f
-Fr(readline\(\))p Fs(,)g(and)h(should)195 259 y(not)g(b)q(e)h(assigned)
-f(to)g(directly)l(.)19 b(The)14 b Fr(rl_set_prompt\(\))d
-Fs(function)i(\(see)h(Section)f(2.4.6)f([Redis-)195 314
-y(pla)o(y],)i(page)h(34\))f(ma)o(y)h(b)q(e)g(used)h(to)f(mo)q(dify)g
-(the)g(prompt)g(string)f(after)g(calling)g Fr(readline\(\))p
-Fs(.)1685 407 y([V)l(ariable])-1801 b Fg(char)27 b(*)f
-(rl_display_prompt)195 462 y Fs(The)16 b(string)f(displa)o(y)o(ed)g(as)
-g(the)h(prompt.)21 b(This)16 b(is)f(usually)g(iden)o(tical)g(to)g
-Fi(rl)p 1515 462 14 2 v 20 w(prompt)q Fs(,)g(but)h(ma)o(y)195
-517 y(b)q(e)i(c)o(hanged)f(temp)q(orarily)f(b)o(y)h(functions)g(that)f
-(use)i(the)f(prompt)g(string)f(as)g(a)h(message)g(area,)195
-571 y(suc)o(h)f(as)e(incremen)o(tal)h(searc)o(h.)1685
-665 y([V)l(ariable])-1801 b Fg(int)27 b(rl_already_prompted)195
-719 y Fs(If)18 b(an)g(application)f(wishes)h(to)g(displa)o(y)f(the)h
-(prompt)g(itself,)f(rather)h(than)g(ha)o(v)o(e)g(Readline)g(do)195
-774 y(it)e(the)g(\014rst)g(time)g Fr(readline\(\))f Fs(is)h(called,)g
-(it)f(should)i(set)f(this)g(v)m(ariable)f(to)h(a)g(non-zero)h(v)m(alue)
-195 829 y(after)h(displa)o(ying)g(the)h(prompt.)31 b(The)19
-b(prompt)g(m)o(ust)f(also)g(b)q(e)i(passed)f(as)f(the)h(argumen)o(t)g
-(to)195 884 y Fr(readline\(\))c Fs(so)h(the)h(redispla)o(y)e(functions)
-i(can)f(up)q(date)h(the)g(displa)o(y)f(prop)q(erly)l(.)23
-b(The)17 b(calling)195 938 y(application)d(is)h(resp)q(onsible)g(for)f
-(managing)g(the)i(v)m(alue;)f(Readline)g(nev)o(er)h(sets)e(it.)1685
-1032 y([V)l(ariable])-1801 b Fg(const)27 b(char)g(*)f
-(rl_library_version)195 1086 y Fs(The)15 b(v)o(ersion)g(n)o(um)o(b)q
-(er)g(of)g(this)g(revision)f(of)h(the)g(library)l(.)1685
-1180 y([V)l(ariable])-1801 b Fg(int)27 b(rl_readline_version)195
-1234 y Fs(An)17 b(in)o(teger)g(enco)q(ding)g(the)g(curren)o(t)g(v)o
-(ersion)f(of)h(the)g(library)l(.)25 b(The)17 b(enco)q(ding)g(is)g(of)g
-(the)g(form)195 1289 y(0x)p Fi(MMmm)p Fs(,)g(where)i
-Fi(MM)j Fs(is)c(the)g(t)o(w)o(o-digit)e(ma)s(jor)h(v)o(ersion)h(n)o(um)
-o(b)q(er,)h(and)f Fi(mm)g Fs(is)g(the)g(t)o(w)o(o-)195
-1344 y(digit)g(minor)f(v)o(ersion)h(n)o(um)o(b)q(er.)31
-b(F)l(or)18 b(example,)h(for)f(Readline-4.2,)h Fr(rl_readline_version)
-195 1399 y Fs(w)o(ould)c(ha)o(v)o(e)f(the)i(v)m(alue)f(0x0402.)1685
-1492 y([V)l(ariable])-1801 b Fg(int)27 b(rl_gnu_readline_p)195
-1547 y Fs(Alw)o(a)o(ys)14 b(set)h(to)f(1,)h(denoting)g(that)f(this)h
-(is)g Fl(gnu)g Fs(readline)f(rather)h(than)g(some)g(em)o(ulation.)1685
-1640 y([V)l(ariable])-1801 b Fg(const)27 b(char)g(*)f(rl_terminal_name)
-195 1695 y Fs(The)14 b(terminal)f(t)o(yp)q(e,)h(used)h(for)e
-(initialization.)k(If)d(not)f(set)h(b)o(y)g(the)g(application,)f
-(Readline)h(sets)195 1749 y(this)h(to)f(the)h(v)m(alue)h(of)f(the)g
-Fr(TERM)g Fs(en)o(vironmen)o(t)f(v)m(ariable)h(the)g(\014rst)g(time)f
-(it)h(is)f(called.)1685 1843 y([V)l(ariable])-1801 b
-Fg(const)27 b(char)g(*)f(rl_readline_name)195 1897 y
-Fs(This)15 b(v)m(ariable)g(is)g(set)h(to)f(a)g(unique)h(name)g(b)o(y)f
-(eac)o(h)h(application)e(using)h(Readline.)22 b(The)16
-b(v)m(alue)195 1952 y(allo)o(ws)c(conditional)h(parsing)g(of)h(the)g
-(inputrc)g(\014le)g(\(see)g(Section)g(1.3.2)e([Conditional)g(Init)i
-(Con-)195 2007 y(structs],)g(page)h(10\).)1685 2100 y([V)l(ariable])
--1801 b Fg(FILE)27 b(*)f(rl_instream)195 2155 y Fs(The)21
-b(stdio)e(stream)h(from)g(whic)o(h)g(Readline)h(reads)f(input.)36
-b(If)21 b Fr(NULL)p Fs(,)g(Readline)g(defaults)f(to)195
-2210 y Fi(stdin)p Fs(.)1685 2303 y([V)l(ariable])-1801
-b Fg(FILE)27 b(*)f(rl_outstream)195 2358 y Fs(The)17
-b(stdio)g(stream)f(to)h(whic)o(h)g(Readline)g(p)q(erforms)g(output.)26
-b(If)18 b Fr(NULL)p Fs(,)e(Readline)i(defaults)f(to)195
-2412 y Fi(stdout)q Fs(.)1685 2506 y([V)l(ariable])-1801
-b Fg(int)27 b(rl_prefer_env_winsize)195 2560 y Fs(If)14
-b(non-zero,)h(Readline)f(giv)o(es)g(v)m(alues)g(found)g(in)g(the)h
-Fr(LINES)e Fs(and)i Fr(COLUMNS)e Fs(en)o(vironmen)o(t)g(v)m(ari-)195
-2615 y(ables)20 b(greater)g(precedence)i(than)e(v)m(alues)h(fetc)o(hed)
-g(from)e(the)i(k)o(ernel)f(when)h(computing)f(the)195
-2670 y(screen)c(dimensions.)p eop end
-%%Page: 27 31
-TeXDict begin 27 30 bop 75 -58 a Fs(Chapter)15 b(2:)k(Programming)14
-b(with)g(GNU)h(Readline)842 b(27)1685 149 y([V)l(ariable])-1801
-b Fg(rl_command_func_t)29 b(*)d(rl_last_func)195 204
-y Fs(The)18 b(address)f(of)g(the)g(last)g(command)g(function)g
-(Readline)h(executed.)27 b(Ma)o(y)17 b(b)q(e)h(used)g(to)f(test)195
-259 y(whether)e(or)g(not)g(a)g(function)g(is)f(b)q(eing)i(executed)g(t)
-o(wice)f(in)g(succession,)g(for)f(example.)1685 363 y([V)l(ariable])
--1801 b Fg(rl_hook_func_t)28 b(*)f(rl_startup_hook)195
-418 y Fs(If)17 b(non-zero,)h(this)f(is)f(the)i(address)f(of)f(a)h
-(function)g(to)g(call)f(just)h(b)q(efore)g Fr(readline)f
-Fs(prin)o(ts)h(the)195 473 y(\014rst)e(prompt.)1685 577
-y([V)l(ariable])-1801 b Fg(rl_hook_func_t)28 b(*)f(rl_pre_input_hook)
-195 632 y Fs(If)18 b(non-zero,)g(this)f(is)h(the)g(address)f(of)h(a)f
-(function)h(to)f(call)g(after)g(the)h(\014rst)f(prompt)g(has)h(b)q(een)
-195 686 y(prin)o(ted)d(and)g(just)g(b)q(efore)h Fr(readline)e
-Fs(starts)g(reading)g(input)i(c)o(haracters.)1685 791
-y([V)l(ariable])-1801 b Fg(rl_hook_func_t)28 b(*)f(rl_event_hook)195
-845 y Fs(If)21 b(non-zero,)g(this)f(is)g(the)g(address)g(of)g(a)g
-(function)g(to)g(call)g(p)q(erio)q(dically)f(when)i(Readline)f(is)195
-900 y(w)o(aiting)13 b(for)h(terminal)f(input.)20 b(By)14
-b(default,)g(this)g(will)g(b)q(e)h(called)f(at)g(most)g(ten)g(times)g
-(a)g(second)195 955 y(if)h(there)g(is)g(no)g(k)o(eyb)q(oard)g(input.)
-1685 1059 y([V)l(ariable])-1801 b Fg(rl_getc_func_t)28
-b(*)f(rl_getc_function)195 1114 y Fs(If)15 b(non-zero,)h(Readline)f
-(will)f(call)g(indirectly)h(through)g(this)f(p)q(oin)o(ter)h(to)g(get)f
-(a)h(c)o(haracter)g(from)195 1169 y(the)k(input)h(stream.)31
-b(By)19 b(default,)g(it)g(is)g(set)g(to)f Fr(rl_getc)p
-Fs(,)h(the)g(default)g(Readline)h(c)o(haracter)195 1223
-y(input)15 b(function)g(\(see)g(Section)g(2.4.8)f([Character)g(Input],)
-h(page)g(36\).)1685 1328 y([V)l(ariable])-1801 b Fg(rl_voidfunc_t)28
-b(*)e(rl_redisplay_function)195 1382 y Fs(If)18 b(non-zero,)h(Readline)
-f(will)f(call)g(indirectly)g(through)h(this)f(p)q(oin)o(ter)h(to)f(up)q
-(date)i(the)f(displa)o(y)195 1437 y(with)13 b(the)g(curren)o(t)h(con)o
-(ten)o(ts)f(of)g(the)g(editing)g(bu\013er.)19 b(By)14
-b(default,)f(it)g(is)g(set)g(to)g Fr(rl_redisplay)p Fs(,)195
-1492 y(the)i(default)g(Readline)h(redispla)o(y)e(function)h(\(see)g
-(Section)g(2.4.6)f([Redispla)o(y],)g(page)h(34\).)1685
-1596 y([V)l(ariable])-1801 b Fg(rl_vintfunc_t)28 b(*)e
-(rl_prep_term_function)195 1651 y Fs(If)12 b(non-zero,)h(Readline)f
-(will)f(call)g(indirectly)g(through)h(this)f(p)q(oin)o(ter)h(to)f
-(initialize)f(the)j(terminal.)195 1706 y(The)19 b(function)f(tak)o(es)g
-(a)g(single)g(argumen)o(t,)g(an)h Fr(int)f Fs(\015ag)g(that)g(sa)o(ys)g
-(whether)g(or)h(not)f(to)g(use)195 1760 y(eigh)o(t-bit)e(c)o
-(haracters.)25 b(By)17 b(default,)g(this)f(is)h(set)f(to)h
-Fr(rl_prep_terminal)e Fs(\(see)i(Section)g(2.4.9)195
-1815 y([T)l(erminal)d(Managemen)o(t],)f(page)i(36\).)1685
-1919 y([V)l(ariable])-1801 b Fg(rl_voidfunc_t)28 b(*)e
-(rl_deprep_term_functi)q(on)195 1974 y Fs(If)19 b(non-zero,)g(Readline)
-f(will)f(call)h(indirectly)f(through)h(this)g(p)q(oin)o(ter)f(to)h
-(reset)g(the)h(terminal.)195 2029 y(This)e(function)g(should)h(undo)g
-(the)f(e\013ects)h(of)f Fr(rl_prep_term_function)p Fs(.)24
-b(By)17 b(default,)h(this)195 2084 y(is)d(set)g(to)f
-Fr(rl_deprep_terminal)f Fs(\(see)i(Section)g(2.4.9)f([T)l(erminal)g
-(Managemen)o(t],)f(page)i(36\).)1685 2188 y([V)l(ariable])-1801
-b Fg(Keymap)27 b(rl_executing_keymap)195 2243 y Fs(This)18
-b(v)m(ariable)f(is)g(set)h(to)g(the)g(k)o(eymap)f(\(see)h(Section)g
-(2.4.2)f([Keymaps],)g(page)h(30\))f(in)h(whic)o(h)195
-2297 y(the)d(curren)o(tly)g(executing)g(readline)g(function)g(w)o(as)g
-(found.)1685 2401 y([V)l(ariable])-1801 b Fg(Keymap)27
-b(rl_binding_keymap)195 2456 y Fs(This)18 b(v)m(ariable)f(is)g(set)h
-(to)g(the)g(k)o(eymap)f(\(see)h(Section)g(2.4.2)f([Keymaps],)g(page)h
-(30\))f(in)h(whic)o(h)195 2511 y(the)d(last)f(k)o(ey)h(binding)h(o)q
-(ccurred.)1685 2615 y([V)l(ariable])-1801 b Fg(char)27
-b(*)f(rl_executing_macro)195 2670 y Fs(This)15 b(v)m(ariable)f(is)h
-(set)g(to)g(the)g(text)g(of)f(an)o(y)h(curren)o(tly-executing)g(macro.)
-p eop end
-%%Page: 28 32
-TeXDict begin 28 31 bop 75 -58 a Fs(Chapter)15 b(2:)k(Programming)14
-b(with)g(GNU)h(Readline)842 b(28)1685 149 y([V)l(ariable])-1801
-b Fg(int)27 b(rl_readline_state)195 204 y Fs(A)17 b(v)m(ariable)g(with)
-f(bit)h(v)m(alues)h(that)e(encapsulate)h(the)h(curren)o(t)f(Readline)g
-(state.)25 b(A)18 b(bit)e(is)h(set)195 259 y(with)h(the)h
-Fr(RL_SETSTATE)f Fs(macro,)h(and)g(unset)g(with)f(the)h
-Fr(RL_UNSETSTATE)e Fs(macro.)31 b(Use)19 b(the)195 314
-y Fr(RL_ISSTATE)e Fs(macro)h(to)g(test)g(whether)h(a)f(particular)g
-(state)f(bit)i(is)f(set.)30 b(Curren)o(t)18 b(state)g(bits)195
-369 y(include:)195 452 y Fr(RL_STATE_NONE)435 507 y Fs(Readline)d(has)h
-(not)e(y)o(et)h(b)q(een)h(called,)f(nor)g(has)g(it)f(b)q(egun)i(to)f
-(in)o(tialize.)195 589 y Fr(RL_STATE_INITIALIZING)435
-644 y Fs(Readline)g(is)g(initializing)e(its)h(in)o(ternal)g(data)h
-(structures.)195 726 y Fr(RL_STATE_INITIALIZED)435 781
-y Fs(Readline)g(has)h(completed)f(its)f(initialization.)195
-863 y Fr(RL_STATE_TERMPREPPED)435 917 y Fs(Readline)h(has)f(mo)q
-(di\014ed)h(the)f(terminal)f(mo)q(des)i(to)e(do)i(its)e(o)o(wn)h(input)
-g(and)h(redis-)435 972 y(pla)o(y)l(.)195 1054 y Fr(RL_STATE_READCMD)435
-1109 y Fs(Readline)g(is)g(reading)g(a)g(command)g(from)f(the)i(k)o(eyb)
-q(oard.)195 1191 y Fr(RL_STATE_METANEXT)435 1246 y Fs(Readline)f(is)g
-(reading)g(more)g(input)g(after)f(reading)h(the)g(meta-pre\014x)h(c)o
-(haracter.)195 1328 y Fr(RL_STATE_DISPATCHING)435 1383
-y Fs(Readline)f(is)g(dispatc)o(hing)g(to)f(a)h(command.)195
-1465 y Fr(RL_STATE_MOREINPUT)435 1520 y Fs(Readline)g(is)g(reading)g
-(more)g(input)g(while)g(executing)g(an)g(editing)g(command.)195
-1602 y Fr(RL_STATE_ISEARCH)435 1657 y Fs(Readline)g(is)g(p)q(erforming)
-g(an)g(incremen)o(tal)f(history)g(searc)o(h.)195 1739
-y Fr(RL_STATE_NSEARCH)435 1794 y Fs(Readline)h(is)g(p)q(erforming)g(a)g
-(non-incremen)o(tal)f(history)h(searc)o(h.)195 1876 y
-Fr(RL_STATE_SEARCH)435 1931 y Fs(Readline)10 b(is)g(searc)o(hing)g(bac)
-o(kw)o(ard)f(or)h(forw)o(ard)f(through)h(the)g(history)f(for)g(a)h
-(string.)195 2013 y Fr(RL_STATE_NUMERICARG)435 2068 y
-Fs(Readline)15 b(is)g(reading)g(a)g(n)o(umeric)g(argumen)o(t.)195
-2150 y Fr(RL_STATE_MACROINPUT)435 2204 y Fs(Readline)d(is)g(curren)o
-(tly)g(getting)f(its)g(input)h(from)f(a)h(previously-de\014ned)h(k)o
-(eyb)q(oard)435 2259 y(macro.)195 2341 y Fr(RL_STATE_MACRODEF)435
-2396 y Fs(Readline)i(is)g(curren)o(tly)g(reading)g(c)o(haracters)f
-(de\014ning)i(a)f(k)o(eyb)q(oard)g(macro.)195 2478 y
-Fr(RL_STATE_OVERWRITE)435 2533 y Fs(Readline)g(is)g(in)g(o)o(v)o
-(erwrite)f(mo)q(de.)195 2615 y Fr(RL_STATE_COMPLETING)435
-2670 y Fs(Readline)h(is)g(p)q(erforming)g(w)o(ord)f(completion.)p
-eop end
-%%Page: 29 33
-TeXDict begin 29 32 bop 75 -58 a Fs(Chapter)15 b(2:)k(Programming)14
-b(with)g(GNU)h(Readline)842 b(29)195 149 y Fr(RL_STATE_SIGHANDLER)435
-204 y Fs(Readline)15 b(is)g(curren)o(tly)g(executing)g(the)g(readline)g
-(signal)f(handler.)195 282 y Fr(RL_STATE_UNDOING)435
-336 y Fs(Readline)h(is)g(p)q(erforming)g(an)g(undo.)195
-414 y Fr(RL_STATE_INPUTPENDING)435 469 y Fs(Readline)g(has)h(input)f(p)
-q(ending)h(due)g(to)e(a)h(call)f(to)h Fr(rl_execute_next\(\))p
-Fs(.)195 546 y Fr(RL_STATE_TTYCSAVED)435 601 y Fs(Readline)g(has)h(sa)o
-(v)o(ed)e(the)i(v)m(alues)f(of)g(the)g(terminal's)e(sp)q(ecial)i(c)o
-(haracters.)195 678 y Fr(RL_STATE_CALLBACK)435 733 y
-Fs(Readline)22 b(is)f(curren)o(tly)g(using)g(the)h(alternate)e
-(\(callbac)o(k\))g(in)o(terface)h(\(see)g(Sec-)435 788
-y(tion)14 b(2.4.12)g([Alternate)g(In)o(terface],)g(page)h(39\).)195
-865 y Fr(RL_STATE_VIMOTION)435 920 y Fs(Readline)g(is)g(reading)g(the)g
-(argumen)o(t)g(to)f(a)h(vi-mo)q(de)g Fr(")p Fs(motion)p
-Fr(")f Fs(command.)195 997 y Fr(RL_STATE_MULTIKEY)435
-1052 y Fs(Readline)h(is)g(reading)g(a)g(m)o(ultiple-k)o(eystrok)o(e)e
-(command.)195 1129 y Fr(RL_STATE_VICMDONCE)435 1184 y
-Fs(Readline)20 b(has)f(en)o(tered)h(vi)f(command)h(\(mo)o(v)o(emen)o
-(t\))e(mo)q(de)h(at)g(least)g(one)h(time)435 1239 y(during)15
-b(the)g(curren)o(t)g(call)g(to)f Fr(readline\(\))p Fs(.)195
-1316 y Fr(RL_STATE_DONE)435 1371 y Fs(Readline)g(has)g(read)g(a)f(k)o
-(ey)h(sequence)h(b)q(ound)g(to)e Fr(accept-line)f Fs(and)i(is)g(ab)q
-(out)g(to)435 1426 y(return)h(the)g(line)g(to)g(the)g(caller.)1685
-1514 y([V)l(ariable])-1801 b Fg(int)27 b(rl_explicit_arg)195
-1569 y Fs(Set)19 b(to)g(a)g(non-zero)h(v)m(alue)g(if)e(an)i(explicit)e
-(n)o(umeric)i(argumen)o(t)e(w)o(as)h(sp)q(eci\014ed)h(b)o(y)g(the)f
-(user.)195 1624 y(Only)c(v)m(alid)g(in)g(a)g(bindable)g(command)h
-(function.)1685 1713 y([V)l(ariable])-1801 b Fg(int)27
-b(rl_numeric_arg)195 1767 y Fs(Set)c(to)f(the)g(v)m(alue)h(of)g(an)o(y)
-f(n)o(umeric)g(argumen)o(t)g(explicitly)g(sp)q(eci\014ed)i(b)o(y)e(the)
-h(user)g(b)q(efore)195 1822 y(executing)13 b(the)g(curren)o(t)g
-(Readline)g(function.)19 b(Only)13 b(v)m(alid)g(in)g(a)g(bindable)g
-(command)f(function.)1685 1911 y([V)l(ariable])-1801
-b Fg(int)27 b(rl_editing_mode)195 1966 y Fs(Set)13 b(to)f(a)g(v)m(alue)
-h(denoting)f(Readline's)g(curren)o(t)h(editing)f(mo)q(de.)19
-b(A)12 b(v)m(alue)h(of)f Fi(1)k Fs(means)d(Readline)195
-2020 y(is)i(curren)o(tly)f(in)h(emacs)h(mo)q(de;)f Fi(0)j
-Fs(means)d(that)g(vi)g(mo)q(de)g(is)g(activ)o(e.)75 2134
-y Fq(2.4)33 b(Readline)21 b(Con)n(v)n(enience)h(F)-6
-b(unctions)75 2245 y Fh(2.4.1)30 b(Naming)20 b(a)g(F)-5
-b(unction)75 2319 y Fs(The)13 b(user)f(can)h(dynamically)e(c)o(hange)i
-(the)f(bindings)h(of)f(k)o(eys)g(while)g(using)g(Readline.)19
-b(This)12 b(is)g(done)h(b)o(y)75 2373 y(represen)o(ting)i(the)g
-(function)g(with)f(a)h(descriptiv)o(e)g(name.)20 b(The)15
-b(user)g(is)g(able)g(to)f(t)o(yp)q(e)h(the)g(descriptiv)o(e)75
-2428 y(name)g(when)h(referring)e(to)h(the)g(function.)20
-b(Th)o(us,)15 b(in)g(an)g(init)f(\014le,)h(one)g(migh)o(t)f(\014nd)195
-2494 y Fr(Meta-Rubout:)46 b(backward-kill-word)137 2560
-y Fs(This)17 b(binds)g(the)g(k)o(eystrok)o(e)f Fr(Meta-Rubout)g
-Fs(to)g(the)h(function)g Fj(descriptively)k Fs(named)c
-Fr(backward-)75 2615 y(kill-word)p Fs(.)29 b(Y)l(ou,)19
-b(as)f(the)h(programmer,)f(should)h(bind)f(the)h(functions)g(y)o(ou)f
-(write)g(to)f(descriptiv)o(e)75 2670 y(names)e(as)g(w)o(ell.)k
-(Readline)c(pro)o(vides)g(a)g(function)g(for)f(doing)h(that:)p
-eop end
-%%Page: 30 34
-TeXDict begin 30 33 bop 75 -58 a Fs(Chapter)15 b(2:)k(Programming)14
-b(with)g(GNU)h(Readline)842 b(30)1675 149 y([F)l(unction])-1801
-b Fg(int)27 b(rl_add_defun)d Ff(\()p Fi(const)15 b(c)o(har)g(*name,)f
-(rl)p 943 149 14 2 v 20 w(command)p 1155 149 V 20 w(func)p
-1259 149 V 20 w(t)h(*function,)f(in)o(t)283 204 y(k)o(ey)p
-Ff(\))195 259 y Fs(Add)k Fi(name)i Fs(to)d(the)h(list)f(of)g(named)h
-(functions.)27 b(Mak)o(e)17 b Fi(function)g Fs(b)q(e)h(the)g(function)g
-(that)e(gets)195 314 y(called.)j(If)d Fi(k)o(ey)j Fs(is)c(not)f(-1,)h
-(then)h(bind)f(it)g(to)f Fi(function)h Fs(using)g Fr(rl_bind_key\(\))p
-Fs(.)137 407 y(Using)g(this)f(function)h(alone)g(is)f(su\016cien)o(t)h
-(for)g(most)f(applications.)k(It)d(is)g(the)g(recommended)h(w)o(a)o(y)
-75 461 y(to)d(add)h(a)f(few)g(functions)g(to)g(the)h(default)f
-(functions)g(that)g(Readline)h(has)f(built)g(in.)19 b(If)14
-b(y)o(ou)f(need)h(to)f(do)75 516 y(something)j(other)h(than)f(adding)h
-(a)f(function)h(to)f(Readline,)h(y)o(ou)g(ma)o(y)f(need)i(to)e(use)h
-(the)g(underlying)75 571 y(functions)e(describ)q(ed)h(b)q(elo)o(w.)75
-671 y Fh(2.4.2)30 b(Selecting)20 b(a)h(Keymap)75 744
-y Fs(Key)f(bindings)f(tak)o(e)g(place)g(on)g(a)g Fi(k)o(eymap)p
-Fs(.)32 b(The)20 b(k)o(eymap)f(is)g(the)g(asso)q(ciation)f(b)q(et)o(w)o
-(een)i(the)f(k)o(eys)75 799 y(that)14 b(the)g(user)g(t)o(yp)q(es)g(and)
-h(the)f(functions)g(that)g(get)g(run.)19 b(Y)l(ou)c(can)f(mak)o(e)g(y)o
-(our)g(o)o(wn)f(k)o(eymaps,)h(cop)o(y)75 854 y(existing)g(k)o(eymaps,)h
-(and)g(tell)f(Readline)i(whic)o(h)f(k)o(eymap)g(to)f(use.)1675
-947 y([F)l(unction])-1801 b Fg(Keymap)27 b(rl_make_bare_keymap)f
-Ff(\()p Fi(v)o(oid)p Ff(\))195 1002 y Fs(Returns)13 b(a)e(new,)i(empt)o
-(y)f(k)o(eymap.)18 b(The)13 b(space)f(for)f(the)i(k)o(eymap)e(is)h
-(allo)q(cated)f(with)g Fr(malloc\(\))p Fs(;)195 1056
-y(the)k(caller)g(should)g(free)g(it)g(b)o(y)g(calling)f
-Fr(rl_free_keymap\(\))f Fs(when)i(done.)1675 1149 y([F)l(unction])-1801
-b Fg(Keymap)27 b(rl_copy_keymap)e Ff(\()p Fi(Keymap)15
-b(map)p Ff(\))195 1204 y Fs(Return)h(a)f(new)g(k)o(eymap)g(whic)o(h)g
-(is)g(a)g(cop)o(y)g(of)g Fi(map)q Fs(.)1675 1297 y([F)l(unction])-1801
-b Fg(Keymap)27 b(rl_make_keymap)e Ff(\()p Fi(v)o(oid)p
-Ff(\))195 1352 y Fs(Return)16 b(a)g(new)g(k)o(eymap)f(with)g(the)h
-(prin)o(ting)f(c)o(haracters)f(b)q(ound)j(to)e(rl)p 1455
-1352 V 20 w(insert,)f(the)i(lo)o(w)o(ercase)195 1406
-y(Meta)11 b(c)o(haracters)f(b)q(ound)i(to)f(run)h(their)e(equiv)m(alen)
-o(ts,)i(and)f(the)h(Meta)e(digits)g(b)q(ound)i(to)f(pro)q(duce)195
-1461 y(n)o(umeric)k(argumen)o(ts.)1675 1554 y([F)l(unction])-1801
-b Fg(void)27 b(rl_discard_keymap)e Ff(\()p Fi(Keymap)15
-b(k)o(eymap)p Ff(\))195 1609 y Fs(F)l(ree)f(the)h(storage)e(asso)q
-(ciated)h(with)g(the)g(data)g(in)g Fi(k)o(eymap)q Fs(.)20
-b(The)15 b(caller)e(should)i(free)f Fi(k)o(eymap)q Fs(.)1675
-1702 y([F)l(unction])-1801 b Fg(void)27 b(rl_free_keymap)e
-Ff(\()p Fi(Keymap)15 b(k)o(eymap)p Ff(\))195 1756 y Fs(F)l(ree)g(all)g
-(storage)f(asso)q(ciated)g(with)h Fi(k)o(eymap)q Fs(.)20
-b(This)15 b(calls)f Fr(rl_discard_keymap)f Fs(to)i(free)g(sub-)195
-1811 y(ordindate)g(k)o(eymaps)g(and)g(macros.)137 1904
-y(Readline)23 b(has)g(sev)o(eral)f(in)o(ternal)f(k)o(eymaps.)42
-b(These)23 b(functions)f(allo)o(w)f(y)o(ou)h(to)g(c)o(hange)h(whic)o(h)
-75 1959 y(k)o(eymap)15 b(is)g(activ)o(e.)1675 2051 y([F)l(unction])
--1801 b Fg(Keymap)27 b(rl_get_keymap)e Ff(\()p Fi(v)o(oid)p
-Ff(\))195 2106 y Fs(Returns)16 b(the)f(curren)o(tly)g(activ)o(e)f(k)o
-(eymap.)1675 2199 y([F)l(unction])-1801 b Fg(void)27
-b(rl_set_keymap)d Ff(\()p Fi(Keymap)16 b(k)o(eymap)p
-Ff(\))195 2254 y Fs(Mak)o(es)e Fi(k)o(eymap)j Fs(the)e(curren)o(tly)g
-(activ)o(e)f(k)o(eymap.)1675 2347 y([F)l(unction])-1801
-b Fg(Keymap)27 b(rl_get_keymap_by_name)f Ff(\()p Fi(const)15
-b(c)o(har)f(*name)p Ff(\))195 2401 y Fs(Return)j(the)g(k)o(eymap)f
-(matc)o(hing)f Fi(name)s Fs(.)23 b Fi(name)c Fs(is)d(one)h(whic)o(h)f
-(w)o(ould)g(b)q(e)h(supplied)g(in)f(a)g Fr(set)195 2456
-y(keymap)e Fs(inputrc)i(line)e(\(see)i(Section)f(1.3)f([Readline)h
-(Init)g(File],)f(page)h(4\).)1675 2549 y([F)l(unction])-1801
-b Fg(char)27 b(*)f(rl_get_keymap_name)g Ff(\()p Fi(Keymap)15
-b(k)o(eymap)p Ff(\))195 2604 y Fs(Return)i(the)g(name)f(matc)o(hing)g
-Fi(k)o(eymap)q Fs(.)24 b Fi(name)19 b Fs(is)d(one)h(whic)o(h)f(w)o
-(ould)g(b)q(e)h(supplied)g(in)f(a)g Fr(set)195 2659 y(keymap)e
-Fs(inputrc)i(line)e(\(see)i(Section)f(1.3)f([Readline)h(Init)g(File],)f
-(page)h(4\).)p eop end
-%%Page: 31 35
-TeXDict begin 31 34 bop 75 -58 a Fs(Chapter)15 b(2:)k(Programming)14
-b(with)g(GNU)h(Readline)842 b(31)75 149 y Fh(2.4.3)30
-b(Binding)20 b(Keys)75 223 y Fs(Key)e(sequences)g(are)e(asso)q(ciate)g
-(with)h(functions)g(through)f(the)h(k)o(eymap.)26 b(Readline)17
-b(has)g(sev)o(eral)f(in-)75 278 y(ternal)e(k)o(eymaps:)19
-b Fr(emacs_standard_keymap)p Fs(,)11 b Fr(emacs_meta_keymap)p
-Fs(,)h Fr(emacs_ctlx_keymap)p Fs(,)g Fr(vi_)75 333 y(movement_keymap)p
-Fs(,)20 b(and)i Fr(vi_insertion_keymap)p Fs(.)35 b Fr
-(emacs_standard_keymap)18 b Fs(is)j(the)g(default,)75
-387 y(and)15 b(the)h(examples)f(in)g(this)f(man)o(ual)h(assume)g(that.)
-137 460 y(Since)g Fr(readline\(\))d Fs(installs)g(a)i(set)f(of)h
-(default)f(k)o(ey)h(bindings)f(the)h(\014rst)g(time)f(it)g(is)g
-(called,)h(there)f(is)75 515 y(alw)o(a)o(ys)i(the)h(danger)g(that)g(a)g
-(custom)g(binding)g(installed)f(b)q(efore)i(the)f(\014rst)g(call)g(to)f
-Fr(readline\(\))g Fs(will)75 570 y(b)q(e)f(o)o(v)o(erridden.)k(An)13
-b(alternate)f(mec)o(hanism)h(is)f(to)g(install)f(custom)i(k)o(ey)g
-(bindings)f(in)h(an)g(initialization)75 625 y(function)18
-b(assigned)h(to)e(the)i Fr(rl_startup_hook)e Fs(v)m(ariable)h(\(see)g
-(Section)g(2.3)g([Readline)h(V)l(ariables],)75 679 y(page)c(25\).)137
-752 y(These)h(functions)f(manage)f(k)o(ey)i(bindings.)1675
-856 y([F)l(unction])-1801 b Fg(int)27 b(rl_bind_key)d
-Ff(\()p Fi(in)o(t)14 b(k)o(ey)l(,)h(rl)p 702 856 14 2
-v 19 w(command)p 913 856 V 20 w(func)p 1017 856 V 21
-w(t)g(*function)p Ff(\))195 911 y Fs(Binds)i Fi(k)o(ey)j
-Fs(to)c Fi(function)g Fs(in)h(the)f(curren)o(tly)g(activ)o(e)g(k)o
-(eymap.)23 b(Returns)17 b(non-zero)g(in)f(the)h(case)195
-965 y(of)e(an)g(in)o(v)m(alid)f Fi(k)o(ey)t Fs(.)1675
-1069 y([F)l(unction])-1801 b Fg(int)27 b(rl_bind_key_in_map)e
-Ff(\()p Fi(in)o(t)14 b(k)o(ey)l(,)h(rl)p 885 1069 V 20
-w(command)p 1097 1069 V 19 w(func)p 1200 1069 V 21 w(t)g(*function,)283
-1124 y(Keymap)g(map)p Ff(\))195 1178 y Fs(Bind)g Fi(k)o(ey)k
-Fs(to)c Fi(function)g Fs(in)g Fi(map)q Fs(.)20 b(Returns)c(non-zero)f
-(in)g(the)h(case)f(of)g(an)g(in)o(v)m(alid)f Fi(k)o(ey)t
-Fs(.)1675 1282 y([F)l(unction])-1801 b Fg(int)27 b
-(rl_bind_key_if_unbound)f Ff(\()p Fi(in)o(t)14 b(k)o(ey)l(,)h(rl)p
-990 1282 V 19 w(command)p 1201 1282 V 20 w(func)p 1305
-1282 V 21 w(t)f(*function)p Ff(\))195 1337 y Fs(Binds)22
-b Fi(k)o(ey)k Fs(to)21 b Fi(function)h Fs(if)g(it)f(is)g(not)h(already)
-f(b)q(ound)i(in)f(the)g(curren)o(tly)f(activ)o(e)h(k)o(eymap.)195
-1392 y(Returns)16 b(non-zero)f(in)g(the)h(case)f(of)f(an)i(in)o(v)m
-(alid)e Fi(k)o(ey)19 b Fs(or)c(if)f Fi(k)o(ey)19 b Fs(is)c(already)g(b)
-q(ound.)1675 1495 y([F)l(unction])-1801 b Fg(int)27 b
-(rl_bind_key_if_unbound_in_)q(map)f Ff(\()p Fi(in)o(t)14
-b(k)o(ey)l(,)h(rl)p 1173 1495 V 19 w(command)p 1384 1495
-V 20 w(func)p 1488 1495 V 21 w(t)283 1550 y(*function,)f(Keymap)h(map)p
-Ff(\))195 1605 y Fs(Binds)f Fi(k)o(ey)j Fs(to)c Fi(function)g
-Fs(if)h(it)e(is)h(not)h(already)e(b)q(ound)j(in)e Fi(map)q
-Fs(.)20 b(Returns)14 b(non-zero)g(in)f(the)h(case)195
-1659 y(of)h(an)g(in)o(v)m(alid)f Fi(k)o(ey)19 b Fs(or)c(if)g
-Fi(k)o(ey)k Fs(is)14 b(already)h(b)q(ound.)1675 1763
-y([F)l(unction])-1801 b Fg(int)27 b(rl_unbind_key)d Ff(\()p
-Fi(in)o(t)14 b(k)o(ey)p Ff(\))195 1818 y Fs(Bind)k Fi(k)o(ey)k
-Fs(to)c(the)g(n)o(ull)g(function)g(in)g(the)g(curren)o(tly)f(activ)o(e)
-h(k)o(eymap.)28 b(Returns)19 b(non-zero)f(in)195 1872
-y(case)d(of)g(error.)1675 1976 y([F)l(unction])-1801
-b Fg(int)27 b(rl_unbind_key_in_map)e Ff(\()p Fi(in)o(t)14
-b(k)o(ey)l(,)h(Keymap)h(map)p Ff(\))195 2031 y Fs(Bind)f
-Fi(k)o(ey)k Fs(to)c(the)g(n)o(ull)g(function)g(in)g Fi(map)q
-Fs(.)20 b(Returns)c(non-zero)f(in)g(case)g(of)g(error.)1675
-2134 y([F)l(unction])-1801 b Fg(int)27 b(rl_unbind_function_in_map)f
-Ff(\()p Fi(rl)p 908 2134 V 19 w(command)p 1119 2134 V
-20 w(func)p 1223 2134 V 21 w(t)15 b(*function,)283 2189
-y(Keymap)g(map)p Ff(\))195 2244 y Fs(Un)o(bind)h(all)e(k)o(eys)h(that)f
-(execute)i Fi(function)f Fs(in)g Fi(map)q Fs(.)1675 2347
-y([F)l(unction])-1801 b Fg(int)27 b(rl_unbind_command_in_map)f
-Ff(\()p Fi(const)15 b(c)o(har)f(*command,)h(Keymap)g(map)p
-Ff(\))195 2402 y Fs(Un)o(bind)h(all)e(k)o(eys)h(that)f(are)h(b)q(ound)h
-(to)f Fi(command)i Fs(in)e Fi(map)q Fs(.)1675 2506 y([F)l(unction])
--1801 b Fg(int)27 b(rl_bind_keyseq)d Ff(\()p Fi(const)15
-b(c)o(har)g(*k)o(eyseq,)f(rl)p 1018 2506 V 20 w(command)p
-1230 2506 V 20 w(func)p 1334 2506 V 20 w(t)h(*function)p
-Ff(\))195 2560 y Fs(Bind)22 b(the)f(k)o(ey)h(sequence)h(represen)o(ted)
-f(b)o(y)f(the)h(string)e Fi(k)o(eyseq)j Fs(to)e(the)g(function)g
-Fi(function)p Fs(,)195 2615 y(b)q(eginning)14 b(in)g(the)g(curren)o(t)g
-(k)o(eymap.)20 b(This)13 b(mak)o(es)h(new)g(k)o(eymaps)g(as)g
-(necessary)l(.)20 b(The)14 b(return)195 2670 y(v)m(alue)h(is)g
-(non-zero)h(if)e Fi(k)o(eyseq)j Fs(is)d(in)o(v)m(alid.)p
-eop end
-%%Page: 32 36
-TeXDict begin 32 35 bop 75 -58 a Fs(Chapter)15 b(2:)k(Programming)14
-b(with)g(GNU)h(Readline)842 b(32)1675 149 y([F)l(unction])-1801
-b Fg(int)27 b(rl_bind_keyseq_in_map)f Ff(\()p Fi(const)14
-b(c)o(har)h(*k)o(eyseq,)g(rl)p 1202 149 14 2 v 19 w(command)p
-1413 149 V 20 w(func)p 1517 149 V 21 w(t)283 204 y(*function,)f(Keymap)
-h(map)p Ff(\))195 259 y Fs(Bind)e(the)f(k)o(ey)h(sequence)h(represen)o
-(ted)f(b)o(y)f(the)h(string)e Fi(k)o(eyseq)j Fs(to)e(the)g(function)h
-Fi(function)p Fs(.)18 b(This)195 314 y(mak)o(es)c(new)h(k)o(eymaps)f
-(as)g(necessary)l(.)20 b(Initial)13 b(bindings)h(are)h(p)q(erformed)f
-(in)h Fi(map)q Fs(.)k(The)c(return)195 369 y(v)m(alue)g(is)g(non-zero)h
-(if)e Fi(k)o(eyseq)j Fs(is)d(in)o(v)m(alid.)1675 470
-y([F)l(unction])-1801 b Fg(int)27 b(rl_set_key)d Ff(\()p
-Fi(const)14 b(c)o(har)h(*k)o(eyseq,)g(rl)p 914 470 V
-19 w(command)p 1125 470 V 20 w(func)p 1229 470 V 21 w(t)g(*function,)
-283 525 y(Keymap)g(map)p Ff(\))195 579 y Fs(Equiv)m(alen)o(t)g(to)f
-Fr(rl_bind_keyseq_in_map)p Fs(.)1675 680 y([F)l(unction])-1801
-b Fg(int)27 b(rl_bind_keyseq_if_unbound)f Ff(\()p Fi(const)15
-b(c)o(har)g(*k)o(eyseq,)283 735 y(rl)p 317 735 V 19 w(command)p
-528 735 V 20 w(func)p 632 735 V 21 w(t)f(*function)p
-Ff(\))195 790 y Fs(Binds)k Fi(k)o(eyseq)h Fs(to)e Fi(function)g
-Fs(if)h(it)f(is)g(not)g(already)g(b)q(ound)i(in)f(the)f(curren)o(tly)h
-(activ)o(e)f(k)o(eymap.)195 845 y(Returns)f(non-zero)f(in)g(the)h(case)
-f(of)f(an)i(in)o(v)m(alid)e Fi(k)o(eyseq)i Fs(or)f(if)g
-Fi(k)o(eyseq)h Fs(is)f(already)f(b)q(ound.)1675 946 y([F)l(unction])
--1801 b Fg(int)27 b(rl_bind_keyseq_if_unbound_)q(in_map)f
-Ff(\()p Fi(const)15 b(c)o(har)g(*k)o(eyseq,)283 1001
-y(rl)p 317 1001 V 19 w(command)p 528 1001 V 20 w(func)p
-632 1001 V 21 w(t)f(*function,)h(Keymap)g(map)p Ff(\))195
-1055 y Fs(Binds)h Fi(k)o(eyseq)h Fs(to)e Fi(function)h
-Fs(if)f(it)h(is)f(not)h(already)f(b)q(ound)i(in)e Fi(map)q
-Fs(.)23 b(Returns)16 b(non-zero)g(in)g(the)195 1110 y(case)f(of)g(an)g
-(in)o(v)m(alid)g Fi(k)o(eyseq)h Fs(or)f(if)f Fi(k)o(eyseq)i
-Fs(is)f(already)g(b)q(ound.)1675 1211 y([F)l(unction])-1801
-b Fg(int)27 b(rl_generic_bind)e Ff(\()p Fi(in)o(t)14
-b(t)o(yp)q(e,)h(const)g(c)o(har)f(*k)o(eyseq,)h(c)o(har)g(*data,)f
-(Keymap)283 1266 y(map)p Ff(\))195 1321 y Fs(Bind)g(the)f(k)o(ey)h
-(sequence)h(represen)o(ted)e(b)o(y)h(the)g(string)e Fi(k)o(eyseq)j
-Fs(to)d(the)i(arbitrary)e(p)q(oin)o(ter)h Fi(data)p Fs(.)195
-1376 y Fi(t)o(yp)q(e)k Fs(sa)o(ys)c(what)h(kind)g(of)g(data)g(is)f(p)q
-(oin)o(ted)i(to)e(b)o(y)h Fi(data)p Fs(;)g(this)g(can)g(b)q(e)h(a)f
-(function)g(\()p Fr(ISFUNC)p Fs(\),)e(a)195 1431 y(macro)i(\()p
-Fr(ISMACR)p Fs(\),)f(or)h(a)h(k)o(eymap)f(\()p Fr(ISKMAP)p
-Fs(\).)k(This)d(mak)o(es)f(new)h(k)o(eymaps)f(as)h(necessary)l(.)20
-b(The)195 1485 y(initial)13 b(k)o(eymap)i(in)g(whic)o(h)g(to)g(do)g
-(bindings)g(is)g Fi(map)q Fs(.)1675 1586 y([F)l(unction])-1801
-b Fg(int)27 b(rl_parse_and_bind)e Ff(\()p Fi(c)o(har)14
-b(*line)p Ff(\))195 1641 y Fs(P)o(arse)g Fi(line)j Fs(as)d(if)g(it)g
-(had)h(b)q(een)h(read)f(from)f(the)g Fr(inputrc)g Fs(\014le)h(and)g(p)q
-(erform)f(an)o(y)h(k)o(ey)f(bindings)195 1696 y(and)h(v)m(ariable)g
-(assignmen)o(ts)f(found)i(\(see)f(Section)g(1.3)f([Readline)h(Init)g
-(File],)f(page)h(4\).)1675 1797 y([F)l(unction])-1801
-b Fg(int)27 b(rl_read_init_file)e Ff(\()p Fi(const)15
-b(c)o(har)f(*\014lename)p Ff(\))195 1852 y Fs(Read)i(k)o(eybindings)g
-(and)g(v)m(ariable)f(assignmen)o(ts)g(from)g Fi(\014lename)j
-Fs(\(see)e(Section)f(1.3)g([Readline)195 1907 y(Init)g(File],)f(page)h
-(4\).)75 2011 y Fh(2.4.4)30 b(Asso)r(ciating)20 b(F)-5
-b(unction)20 b(Names)h(and)f(Bindings)75 2084 y Fs(These)15
-b(functions)g(allo)o(w)f(y)o(ou)g(to)h(\014nd)h(out)e(what)h(k)o(eys)g
-(in)o(v)o(ok)o(e)f(named)h(functions)g(and)g(the)g(functions)75
-2139 y(in)o(v)o(ok)o(ed)e(b)o(y)h(a)f(particular)f(k)o(ey)i(sequence.)
-21 b(Y)l(ou)14 b(ma)o(y)f(also)f(asso)q(ciate)h(a)h(new)g(function)f
-(name)h(with)f(an)75 2194 y(arbitrary)h(function.)1675
-2295 y([F)l(unction])-1801 b Fg(rl_command_func_t)29
-b(*)d(rl_named_function)f Ff(\()p Fi(const)15 b(c)o(har)g(*name)p
-Ff(\))195 2350 y Fs(Return)h(the)f(function)g(with)g(name)g
-Fi(name)s Fs(.)1675 2451 y([F)l(unction])-1801 b Fg(rl_command_func_t)
-29 b(*)d(rl_function_of_keyseq)g Ff(\()p Fi(const)15
-b(c)o(har)f(*k)o(eyseq,)283 2506 y(Keymap)h(map,)g(in)o(t)f(*t)o(yp)q
-(e)p Ff(\))195 2560 y Fs(Return)j(the)f(function)g(in)o(v)o(ok)o(ed)f
-(b)o(y)i Fi(k)o(eyseq)g Fs(in)f(k)o(eymap)g Fi(map)q
-Fs(.)23 b(If)16 b Fi(map)i Fs(is)d Fr(NULL)p Fs(,)h(the)g(curren)o(t)
-195 2615 y(k)o(eymap)i(is)g(used.)31 b(If)18 b Fi(t)o(yp)q(e)j
-Fs(is)d(not)h Fr(NULL)p Fs(,)f(the)g(t)o(yp)q(e)h(of)f(the)h(ob)s(ject)
-f(is)g(returned)h(in)f(the)g Fr(int)195 2670 y Fs(v)m(ariable)d(it)f(p)
-q(oin)o(ts)h(to)f(\(one)h(of)g Fr(ISFUNC)p Fs(,)f Fr(ISKMAP)p
-Fs(,)g(or)h Fr(ISMACR)p Fs(\).)p eop end
-%%Page: 33 37
-TeXDict begin 33 36 bop 75 -58 a Fs(Chapter)15 b(2:)k(Programming)14
-b(with)g(GNU)h(Readline)842 b(33)1675 149 y([F)l(unction])-1801
-b Fg(char)27 b(**)f(rl_invoking_keyseqs)g Ff(\()p Fi(rl)p
-856 149 14 2 v 19 w(command)p 1067 149 V 20 w(func)p
-1171 149 V 20 w(t)15 b(*function)p Ff(\))195 204 y Fs(Return)h(an)g
-(arra)o(y)e(of)h(strings)g(represen)o(ting)g(the)h(k)o(ey)f(sequences)i
-(used)f(to)f(in)o(v)o(ok)o(e)g Fi(function)g Fs(in)195
-259 y(the)g(curren)o(t)g(k)o(eymap.)1675 346 y([F)l(unction])-1801
-b Fg(char)27 b(**)f(rl_invoking_keyseqs_in)q(_map)g Ff(\()p
-Fi(rl)p 1039 346 V 19 w(command)p 1250 346 V 20 w(func)p
-1354 346 V 21 w(t)283 401 y(*function,)14 b(Keymap)h(map)p
-Ff(\))195 456 y Fs(Return)h(an)g(arra)o(y)e(of)h(strings)g(represen)o
-(ting)g(the)h(k)o(ey)f(sequences)i(used)f(to)f(in)o(v)o(ok)o(e)g
-Fi(function)g Fs(in)195 510 y(the)g(k)o(eymap)g Fi(map)q
-Fs(.)1675 598 y([F)l(unction])-1801 b Fg(void)27 b(rl_function_dumper)e
-Ff(\()p Fi(in)o(t)14 b(readable)p Ff(\))195 652 y Fs(Prin)o(t)g(the)g
-(readline)h(function)f(names)h(and)f(the)h(k)o(ey)g(sequences)g(curren)
-o(tly)f(b)q(ound)i(to)e(them)h(to)195 707 y Fr(rl_outstream)p
-Fs(.)j(If)c Fi(readable)i Fs(is)d(non-zero,)h(the)g(list)e(is)i
-(formatted)e(in)i(suc)o(h)g(a)f(w)o(a)o(y)g(that)g(it)g(can)195
-762 y(b)q(e)j(made)f(part)g(of)f(an)i Fr(inputrc)e Fs(\014le)h(and)g
-(re-read.)1675 849 y([F)l(unction])-1801 b Fg(void)27
-b(rl_list_funmap_names)f Ff(\()p Fi(v)o(oid)p Ff(\))195
-904 y Fs(Prin)o(t)14 b(the)h(names)h(of)e(all)h(bindable)g(Readline)g
-(functions)g(to)g Fr(rl_outstream)p Fs(.)1675 991 y([F)l(unction])-1801
-b Fg(const)27 b(char)g(**)f(rl_funmap_names)f Ff(\()p
-Fi(v)o(oid)p Ff(\))195 1046 y Fs(Return)14 b(a)e(NULL)i(terminated)f
-(arra)o(y)e(of)i(kno)o(wn)g(function)f(names.)20 b(The)13
-b(arra)o(y)f(is)g(sorted.)19 b(The)195 1101 y(arra)o(y)13
-b(itself)g(is)g(allo)q(cated,)g(but)h(not)g(the)g(strings)f(inside.)19
-b(Y)l(ou)14 b(should)g(free)g(the)g(arra)o(y)l(,)f(but)h(not)195
-1155 y(the)h(p)q(oin)o(ters,)g(using)f Fr(free)h Fs(or)g
-Fr(rl_free)f Fs(when)i(y)o(ou)e(are)h(done.)1675 1242
-y([F)l(unction])-1801 b Fg(int)27 b(rl_add_funmap_entry)e
-Ff(\()p Fi(const)15 b(c)o(har)g(*name,)f(rl)p 1126 1242
-V 20 w(command)p 1338 1242 V 20 w(func)p 1442 1242 V
-20 w(t)283 1297 y(*function)p Ff(\))195 1352 y Fs(Add)j
-Fi(name)i Fs(to)d(the)g(list)f(of)h(bindable)h(Readline)g(command)f
-(names,)g(and)h(mak)o(e)f Fi(function)g Fs(the)195 1407
-y(function)f(to)g(b)q(e)g(called)g(when)h Fi(name)i Fs(is)c(in)o(v)o
-(ok)o(ed.)75 1503 y Fh(2.4.5)30 b(Allo)n(wing)21 b(Undoing)75
-1576 y Fs(Supp)q(orting)d(the)g(undo)g(command)g(is)f(a)h(painless)f
-(thing,)h(and)g(mak)o(es)f(y)o(our)h(functions)f(m)o(uc)o(h)h(more)75
-1631 y(useful.)i(It)15 b(is)g(certainly)f(easy)h(to)g(try)f(something)h
-(if)f(y)o(ou)h(kno)o(w)g(y)o(ou)g(can)g(undo)h(it.)137
-1697 y(If)21 b(y)o(our)f(function)g(simply)g(inserts)g(text)f(once,)j
-(or)e(deletes)g(text)g(once,)i(and)f(uses)f Fr(rl_insert_)75
-1752 y(text\(\))13 b Fs(or)h Fr(rl_delete_text\(\))d
-Fs(to)j(do)f(it,)g(then)i(undoing)f(is)f(already)g(done)i(for)e(y)o(ou)
-h(automatically)l(.)137 1817 y(If)d(y)o(ou)f(do)g(m)o(ultiple)f
-(insertions)g(or)h(m)o(ultiple)f(deletions,)h(or)g(an)o(y)g(com)o
-(bination)f(of)h(these)g(op)q(erations,)75 1872 y(y)o(ou)19
-b(should)g(group)f(them)h(together)g(in)o(to)f(one)h(op)q(eration.)30
-b(This)19 b(is)f(done)i(with)e Fr(rl_begin_undo_)75 1927
-y(group\(\))c Fs(and)i Fr(rl_end_undo_group\(\))p Fs(.)137
-1992 y(The)g(t)o(yp)q(es)f(of)g(ev)o(en)o(ts)g(that)f(can)h(b)q(e)h
-(undone)g(are:)195 2047 y Fe(enum)i(undo_code)e({)j(UNDO_DELETE)o(,)d
-(UNDO_INSERT)o(,)g(UNDO_BEGIN,)g(UNDO_END)g(};)137 2112
-y Fs(Notice)f(that)f Fr(UNDO_DELETE)g Fs(means)h(to)g(insert)f(some)h
-(text,)f(and)i Fr(UNDO_INSERT)d Fs(means)i(to)g(delete)75
-2167 y(some)e(text.)19 b(That)14 b(is,)f(the)h(undo)g(co)q(de)g(tells)f
-(what)g(to)h(undo,)g(not)f(ho)o(w)g(to)g(undo)i(it.)j
-Fr(UNDO_BEGIN)13 b Fs(and)75 2222 y Fr(UNDO_END)h Fs(are)h(tags)f
-(added)i(b)o(y)f Fr(rl_begin_undo_group\(\))d Fs(and)k
-Fr(rl_end_undo_group\(\))p Fs(.)1675 2309 y([F)l(unction])-1801
-b Fg(int)27 b(rl_begin_undo_group)e Ff(\()p Fi(v)o(oid)p
-Ff(\))195 2364 y Fs(Begins)15 b(sa)o(ving)g(undo)h(information)d(in)j
-(a)f(group)g(construct.)20 b(The)c(undo)g(information)e(usually)195
-2419 y(comes)21 b(from)f(calls)g(to)g Fr(rl_insert_text\(\))e
-Fs(and)j Fr(rl_delete_text\(\))p Fs(,)f(but)h(could)f(b)q(e)i(the)195
-2473 y(result)15 b(of)f(calls)h(to)f Fr(rl_add_undo\(\))p
-Fs(.)1675 2560 y([F)l(unction])-1801 b Fg(int)27 b(rl_end_undo_group)e
-Ff(\()p Fi(v)o(oid)p Ff(\))195 2615 y Fs(Closes)14 b(the)g(curren)o(t)h
-(undo)g(group)f(started)g(with)f Fr(rl_begin_undo_group)g(\(\))p
-Fs(.)19 b(There)c(should)195 2670 y(b)q(e)h(one)f(call)g(to)f
-Fr(rl_end_undo_group\(\))f Fs(for)h(eac)o(h)h(call)g(to)f
-Fr(rl_begin_undo_group\(\))p Fs(.)p eop end
-%%Page: 34 38
-TeXDict begin 34 37 bop 75 -58 a Fs(Chapter)15 b(2:)k(Programming)14
-b(with)g(GNU)h(Readline)842 b(34)1675 149 y([F)l(unction])-1801
-b Fg(void)27 b(rl_add_undo)d Ff(\()p Fi(en)o(um)15 b(undo)p
-757 149 14 2 v 21 w(co)q(de)h(what,)e(in)o(t)g(start,)g(in)o(t)g(end,)i
-(c)o(har)f(*text)p Ff(\))195 204 y Fs(Remem)o(b)q(er)j(ho)o(w)e(to)h
-(undo)g(an)g(ev)o(en)o(t)g(\(according)f(to)h Fi(what)q
-Fs(\).)24 b(The)17 b(a\013ected)g(text)f(runs)i(from)195
-259 y Fi(start)d Fs(to)g Fi(end)r Fs(,)g(and)g(encompasses)h
-Fi(text)q Fs(.)1675 354 y([F)l(unction])-1801 b Fg(void)27
-b(rl_free_undo_list)e Ff(\()p Fi(v)o(oid)p Ff(\))195
-409 y Fs(F)l(ree)15 b(the)h(existing)e(undo)h(list.)1675
-504 y([F)l(unction])-1801 b Fg(int)27 b(rl_do_undo)d
-Ff(\()p Fi(v)o(oid)p Ff(\))195 559 y Fs(Undo)12 b(the)f(\014rst)g
-(thing)g(on)h(the)f(undo)h(list.)17 b(Returns)12 b Fr(0)g
-Fs(if)f(there)g(w)o(as)g(nothing)g(to)f(undo,)j(non-zero)195
-613 y(if)i(something)f(w)o(as)g(undone.)137 708 y(Finally)l(,)g(if)h(y)
-o(ou)g(neither)h(insert)f(nor)g(delete)h(text,)f(but)g(directly)g(mo)q
-(dify)g(the)h(existing)e(text)i(\(e.g.,)75 763 y(c)o(hange)j(its)g
-(case\),)h(call)e Fr(rl_modifying\(\))g Fs(once,)i(just)f(b)q(efore)h
-(y)o(ou)f(mo)q(dify)g(the)g(text.)32 b(Y)l(ou)20 b(m)o(ust)75
-818 y(supply)15 b(the)h(indices)f(of)g(the)g(text)g(range)g(that)f(y)o
-(ou)h(are)g(going)f(to)h(mo)q(dify)l(.)1675 913 y([F)l(unction])-1801
-b Fg(int)27 b(rl_modifying)d Ff(\()p Fi(in)o(t)14 b(start,)g(in)o(t)g
-(end)p Ff(\))195 968 y Fs(T)l(ell)20 b(Readline)g(to)f(sa)o(v)o(e)h
-(the)g(text)g(b)q(et)o(w)o(een)g Fi(start)g Fs(and)g
-Fi(end)j Fs(as)c(a)h(single)f(undo)i(unit.)34 b(It)20
-b(is)195 1023 y(assumed)15 b(that)g(y)o(ou)g(will)f(subsequen)o(tly)h
-(mo)q(dify)g(that)f(text.)75 1124 y Fh(2.4.6)30 b(Redispla)n(y)1675
-1223 y Fs([F)l(unction])-1801 b Fg(void)27 b(rl_redisplay)d
-Ff(\()p Fi(v)o(oid)p Ff(\))195 1278 y Fs(Change)19 b(what's)f(displa)o
-(y)o(ed)g(on)h(the)g(screen)g(to)f(re\015ect)i(the)f(curren)o(t)f(con)o
-(ten)o(ts)h(of)f Fr(rl_line_)195 1333 y(buffer)p Fs(.)1675
-1428 y([F)l(unction])-1801 b Fg(int)27 b(rl_forced_update_display)f
-Ff(\()p Fi(v)o(oid)p Ff(\))195 1483 y Fs(F)l(orce)20
-b(the)g(line)f(to)g(b)q(e)i(up)q(dated)f(and)g(redispla)o(y)o(ed,)g
-(whether)g(or)g(not)f(Readline)h(thinks)g(the)195 1538
-y(screen)c(displa)o(y)e(is)h(correct.)1675 1633 y([F)l(unction])-1801
-b Fg(int)27 b(rl_on_new_line)d Ff(\()p Fi(v)o(oid)p Ff(\))195
-1687 y Fs(T)l(ell)14 b(the)h(up)q(date)h(functions)f(that)f(w)o(e)g(ha)
-o(v)o(e)h(mo)o(v)o(ed)f(on)o(to)g(a)h(new)g(\(empt)o(y\))f(line,)g
-(usually)h(after)195 1742 y(ouputting)g(a)f(newline.)1675
-1837 y([F)l(unction])-1801 b Fg(int)27 b(rl_on_new_line_with_prompt)f
-Ff(\()p Fi(v)o(oid)p Ff(\))195 1892 y Fs(T)l(ell)11 b(the)i(up)q(date)f
-(functions)g(that)f(w)o(e)h(ha)o(v)o(e)g(mo)o(v)o(ed)f(on)o(to)g(a)h
-(new)g(line,)g(with)g Fi(rl)p 1554 1892 V 19 w(prompt)h
-Fs(already)195 1947 y(displa)o(y)o(ed.)19 b(This)14 b(could)g(b)q(e)h
-(used)g(b)o(y)f(applications)f(that)h(w)o(an)o(t)f(to)h(output)g(the)g
-(prompt)g(string)195 2001 y(themselv)o(es,)f(but)h(still)e(need)j
-(Readline)f(to)f(kno)o(w)g(the)h(prompt)f(string)g(length)g(for)g
-(redispla)o(y)l(.)19 b(It)195 2056 y(should)c(b)q(e)h(used)g(after)e
-(setting)h Fi(rl)p 796 2056 V 19 w(already)p 961 2056
-V 19 w(prompted)r Fs(.)1675 2151 y([F)l(unction])-1801
-b Fg(int)27 b(rl_reset_line_state)e Ff(\()p Fi(v)o(oid)p
-Ff(\))195 2206 y Fs(Reset)18 b(the)f(displa)o(y)g(state)f(to)h(a)g
-(clean)g(state)g(and)g(redispla)o(y)g(the)g(curren)o(t)g(line)g
-(starting)f(on)h(a)195 2261 y(new)e(line.)1675 2356 y([F)l(unction])
--1801 b Fg(int)27 b(rl_crlf)c Ff(\()p Fi(v)o(oid)p Ff(\))195
-2411 y Fs(Mo)o(v)o(e)14 b(the)h(cursor)g(to)g(the)g(start)f(of)h(the)g
-(next)g(screen)h(line.)1675 2506 y([F)l(unction])-1801
-b Fg(int)27 b(rl_show_char)d Ff(\()p Fi(in)o(t)14 b(c)p
-Ff(\))195 2560 y Fs(Displa)o(y)h(c)o(haracter)g Fi(c)20
-b Fs(on)c Fr(rl_outstream)p Fs(.)21 b(If)c(Readline)f(has)g(not)g(b)q
-(een)i(set)e(to)f(displa)o(y)h(meta)195 2615 y(c)o(haracters)c
-(directly)l(,)h(this)f(will)g(con)o(v)o(ert)g(meta)h(c)o(haracters)f
-(to)g(a)h(meta-pre\014xed)g(k)o(ey)g(sequence.)195 2670
-y(This)i(is)f(in)o(tended)i(for)f(use)g(b)o(y)g(applications)f(whic)o
-(h)h(wish)g(to)g(do)g(their)f(o)o(wn)h(redispla)o(y)l(.)p
-eop end
-%%Page: 35 39
-TeXDict begin 35 38 bop 75 -58 a Fs(Chapter)15 b(2:)k(Programming)14
-b(with)g(GNU)h(Readline)842 b(35)1675 149 y([F)l(unction])-1801
-b Fg(int)27 b(rl_message)d Ff(\()p Fi(const)14 b(c)o(har)h(*,)j(.)10
-b(.)h(.)5 b Ff(\))195 204 y Fs(The)11 b(argumen)o(ts)e(are)h(a)g
-(format)f(string)g(as)h(w)o(ould)g(b)q(e)h(supplied)g(to)e
-Fr(printf)p Fs(,)h(p)q(ossibly)g(con)o(taining)195 259
-y(con)o(v)o(ersion)21 b(sp)q(eci\014cations)h(suc)o(h)h(as)e(`)p
-Fr(\045d)p Fs(',)i(and)f(an)o(y)g(additional)e(argumen)o(ts)h
-(necessary)i(to)195 314 y(satisfy)c(the)i(con)o(v)o(ersion)f(sp)q
-(eci\014cations.)36 b(The)21 b(resulting)f(string)f(is)i(displa)o(y)o
-(ed)f(in)g(the)h Fi(ec)o(ho)195 369 y(area)p Fs(.)30
-b(The)19 b(ec)o(ho)g(area)f(is)g(also)g(used)h(to)f(displa)o(y)g(n)o
-(umeric)h(argumen)o(ts)f(and)h(searc)o(h)f(strings.)195
-423 y(Y)l(ou)f(should)g(call)e Fr(rl_save_prompt)g Fs(to)h(sa)o(v)o(e)g
-(the)h(prompt)f(information)f(b)q(efore)i(calling)f(this)195
-478 y(function.)1675 568 y([F)l(unction])-1801 b Fg(int)27
-b(rl_clear_message)e Ff(\()p Fi(v)o(oid)p Ff(\))195 623
-y Fs(Clear)14 b(the)g(message)g(in)h(the)f(ec)o(ho)h(area.)k(If)14
-b(the)h(prompt)f(w)o(as)g(sa)o(v)o(ed)g(with)f(a)i(call)e(to)h
-Fr(rl_save_)195 677 y(prompt)19 b Fs(b)q(efore)h(the)g(last)e(call)h
-(to)g Fr(rl_message)p Fs(,)g(call)g Fr(rl_restore_prompt)e
-Fs(b)q(efore)j(calling)195 732 y(this)15 b(function.)1675
-822 y([F)l(unction])-1801 b Fg(void)27 b(rl_save_prompt)e
-Ff(\()p Fi(v)o(oid)p Ff(\))195 877 y Fs(Sa)o(v)o(e)c(the)h(lo)q(cal)e
-(Readline)i(prompt)f(displa)o(y)g(state)g(in)g(preparation)f(for)h
-(displa)o(ying)g(a)g(new)195 931 y(message)15 b(in)g(the)g(message)g
-(area)f(with)h Fr(rl_message\(\))p Fs(.)1675 1021 y([F)l(unction])-1801
-b Fg(void)27 b(rl_restore_prompt)e Ff(\()p Fi(v)o(oid)p
-Ff(\))195 1076 y Fs(Restore)c(the)h(lo)q(cal)e(Readline)i(prompt)f
-(displa)o(y)f(state)h(sa)o(v)o(ed)g(b)o(y)g(the)g(most)g(recen)o(t)g
-(call)g(to)195 1131 y Fr(rl_save_prompt)p Fs(.)34 b(if)20
-b Fr(rl_save_prompt)f Fs(w)o(as)h(called)g(to)g(sa)o(v)o(e)g(the)g
-(prompt)h(b)q(efore)g(a)f(call)195 1185 y(to)e Fr(rl_message)p
-Fs(,)f(this)h(function)g(should)h(b)q(e)g(called)f(b)q(efore)g(the)h
-(corresp)q(onding)f(call)g(to)f Fr(rl_)195 1240 y(clear_message)p
-Fs(.)1675 1330 y([F)l(unction])-1801 b Fg(int)27 b(rl_expand_prompt)e
-Ff(\()p Fi(c)o(har)14 b(*prompt)p Ff(\))195 1385 y Fs(Expand)22
-b(an)o(y)f(sp)q(ecial)g(c)o(haracter)g(sequences)h(in)f
-Fi(prompt)h Fs(and)g(set)f(up)h(the)f(lo)q(cal)g(Readline)195
-1439 y(prompt)c(redispla)o(y)g(v)m(ariables.)28 b(This)17
-b(function)h(is)f(called)h(b)o(y)g Fr(readline\(\))p
-Fs(.)26 b(It)18 b(ma)o(y)f(also)g(b)q(e)195 1494 y(called)10
-b(to)g(expand)h(the)g(primary)f(prompt)g(if)g(the)g Fr
-(rl_on_new_line_with_prompt\(\))d Fs(function)195 1549
-y(or)12 b Fr(rl_already_prompted)e Fs(v)m(ariable)i(is)h(used.)19
-b(It)13 b(returns)g(the)f(n)o(um)o(b)q(er)i(of)e(visible)g(c)o
-(haracters)195 1604 y(on)17 b(the)g(last)f(line)g(of)h(the)g(\(p)q
-(ossibly)f(m)o(ulti-line\))f(prompt.)24 b(Applications)16
-b(ma)o(y)g(indicate)h(that)195 1659 y(the)d(prompt)f(con)o(tains)h(c)o
-(haracters)f(that)g(tak)o(e)g(up)h(no)g(ph)o(ysical)g(screen)g(space)g
-(when)h(displa)o(y)o(ed)195 1713 y(b)o(y)20 b(brac)o(k)o(eting)g(a)g
-(sequence)i(of)e(suc)o(h)g(c)o(haracters)g(with)g(the)h(sp)q(ecial)f
-(mark)o(ers)f Fr(RL_PROMPT_)195 1768 y(START_IGNORE)14
-b Fs(and)h Fr(RL_PROMPT_END_IGNORE)e Fs(\(declared)i(in)g(`)p
-Fr(readline.h)p Fs('.)k(This)c(ma)o(y)f(b)q(e)195 1823
-y(used)i(to)e(em)o(b)q(ed)i(terminal-sp)q(eci\014c)f(escap)q(e)h
-(sequences)h(in)e(prompts.)1675 1913 y([F)l(unction])-1801
-b Fg(int)27 b(rl_set_prompt)d Ff(\()p Fi(const)15 b(c)o(har)g(*prompt)p
-Ff(\))195 1967 y Fs(Mak)o(e)e(Readline)h(use)f Fi(prompt)h
-Fs(for)f(subsequen)o(t)h(redispla)o(y)l(.)19 b(This)13
-b(calls)f Fr(rl_expand_prompt\(\))195 2022 y Fs(to)j(expand)g(the)h
-(prompt)e(and)i(sets)f Fr(rl_prompt)f Fs(to)g(the)h(result.)75
-2120 y Fh(2.4.7)30 b(Mo)r(difying)20 b(T)-5 b(ext)1675
-2217 y Fs([F)l(unction])-1801 b Fg(int)27 b(rl_insert_text)d
-Ff(\()p Fi(const)15 b(c)o(har)g(*text)p Ff(\))195 2272
-y Fs(Insert)h Fi(text)g Fs(in)o(to)f(the)h(line)f(at)h(the)g(curren)o
-(t)f(cursor)h(p)q(osition.)k(Returns)d(the)f(n)o(um)o(b)q(er)g(of)f(c)o
-(har-)195 2326 y(acters)g(inserted.)1675 2416 y([F)l(unction])-1801
-b Fg(int)27 b(rl_delete_text)d Ff(\()p Fi(in)o(t)15 b(start,)e(in)o(t)i
-(end)p Ff(\))195 2471 y Fs(Delete)j(the)h(text)g(b)q(et)o(w)o(een)g
-Fi(start)g Fs(and)g Fi(end)i Fs(in)e(the)g(curren)o(t)f(line.)31
-b(Returns)19 b(the)g(n)o(um)o(b)q(er)g(of)195 2526 y(c)o(haracters)14
-b(deleted.)1675 2615 y([F)l(unction])-1801 b Fg(char)27
-b(*)f(rl_copy_text)f Ff(\()p Fi(in)o(t)14 b(start,)f(in)o(t)i(end)p
-Ff(\))195 2670 y Fs(Return)h(a)f(cop)o(y)g(of)g(the)g(text)f(b)q(et)o
-(w)o(een)i Fi(start)f Fs(and)g Fi(end)j Fs(in)d(the)g(curren)o(t)g
-(line.)p eop end
-%%Page: 36 40
-TeXDict begin 36 39 bop 75 -58 a Fs(Chapter)15 b(2:)k(Programming)14
-b(with)g(GNU)h(Readline)842 b(36)1675 149 y([F)l(unction])-1801
-b Fg(int)27 b(rl_kill_text)d Ff(\()p Fi(in)o(t)14 b(start,)g(in)o(t)g
-(end)p Ff(\))195 204 y Fs(Cop)o(y)j(the)g(text)f(b)q(et)o(w)o(een)i
-Fi(start)f Fs(and)g Fi(end)i Fs(in)e(the)g(curren)o(t)g(line)g(to)g
-(the)g(kill)f(ring,)g(app)q(ending)195 259 y(or)g(prep)q(ending)j(to)d
-(the)h(last)f(kill)g(if)g(the)h(last)f(command)h(w)o(as)f(a)h(kill)f
-(command.)25 b(The)17 b(text)f(is)195 314 y(deleted.)25
-b(If)17 b Fi(start)f Fs(is)g(less)h(than)f Fi(end)r Fs(,)h(the)g(text)f
-(is)g(app)q(ended,)j(otherwise)d(prep)q(ended.)26 b(If)17
-b(the)195 369 y(last)d(command)h(w)o(as)g(not)f(a)h(kill,)f(a)h(new)g
-(kill)f(ring)h(slot)f(is)h(used.)1675 465 y([F)l(unction])-1801
-b Fg(int)27 b(rl_push_macro_input)e Ff(\()p Fi(c)o(har)15
-b(*macro)p Ff(\))195 520 y Fs(Cause)f Fi(macro)i Fs(to)d(b)q(e)i
-(inserted)f(in)o(to)f(the)h(line,)g(as)g(if)f(it)h(had)g(b)q(een)h(in)o
-(v)o(ok)o(ed)f(b)o(y)g(a)g(k)o(ey)g(b)q(ound)h(to)195
-575 y(a)g(macro.)k(Not)c(esp)q(ecially)f(useful;)h(use)h
-Fr(rl_insert_text\(\))d Fs(instead.)75 677 y Fh(2.4.8)30
-b(Character)21 b(Input)1675 778 y Fs([F)l(unction])-1801
-b Fg(int)27 b(rl_read_key)d Ff(\()p Fi(v)o(oid)p Ff(\))195
-833 y Fs(Return)15 b(the)g(next)g(c)o(haracter)f(a)o(v)m(ailable)f
-(from)h(Readline's)h(curren)o(t)g(input)f(stream.)19
-b(This)c(han-)195 887 y(dles)e(input)g(inserted)h(in)o(to)e(the)h
-(input)g(stream)g(via)f Fi(rl)p 1113 887 14 2 v 20 w(p)q(ending)p
-1290 887 V 21 w(input)i Fs(\(see)f(Section)g(2.3)g([Read-)195
-942 y(line)19 b(V)l(ariables],)g(page)h(25\))f(and)h
-Fr(rl_stuff_char\(\))p Fs(,)e(macros,)h(and)h(c)o(haracters)f(read)h
-(from)195 997 y(the)d(k)o(eyb)q(oard.)25 b(While)17 b(w)o(aiting)e(for)
-h(input,)i(this)e(function)h(will)f(call)g(an)o(y)g(function)h
-(assigned)195 1052 y(to)e(the)g Fr(rl_event_hook)e Fs(v)m(ariable.)1675
-1149 y([F)l(unction])-1801 b Fg(int)27 b(rl_getc)c Ff(\()p
-Fi(FILE)16 b(*stream)p Ff(\))195 1203 y Fs(Return)11
-b(the)g(next)g(c)o(haracter)f(a)o(v)m(ailable)f(from)h
-Fi(stream)p Fs(,)g(whic)o(h)h(is)f(assumed)g(to)g(b)q(e)i(the)e(k)o
-(eyb)q(oard.)1675 1300 y([F)l(unction])-1801 b Fg(int)27
-b(rl_stuff_char)d Ff(\()p Fi(in)o(t)14 b(c)p Ff(\))195
-1355 y Fs(Insert)j Fi(c)i Fs(in)o(to)c(the)i(Readline)g(input)f
-(stream.)23 b(It)16 b(will)f(b)q(e)i Fr(")p Fs(read)p
-Fr(")g Fs(b)q(efore)f(Readline)h(attempts)195 1410 y(to)c(read)g(c)o
-(haracters)g(from)f(the)i(terminal)e(with)h Fr(rl_read_key\(\))p
-Fs(.)k(Up)d(to)f(512)f(c)o(haracters)h(ma)o(y)195 1465
-y(b)q(e)j(pushed)g(bac)o(k.)k Fr(rl_stuff_char)14 b Fs(returns)h(1)g
-(if)g(the)g(c)o(haracter)g(w)o(as)f(successfully)h(inserted;)195
-1519 y(0)g(otherwise.)1675 1616 y([F)l(unction])-1801
-b Fg(int)27 b(rl_execute_next)e Ff(\()p Fi(in)o(t)14
-b(c)p Ff(\))195 1671 y Fs(Mak)o(e)j Fi(c)k Fs(b)q(e)d(the)g(next)g
-(command)g(to)f(b)q(e)i(executed)f(when)h Fr(rl_read_key\(\))d
-Fs(is)h(called.)27 b(This)195 1726 y(sets)15 b Fi(rl)p
-318 1726 V 19 w(p)q(ending)p 494 1726 V 21 w(input)q
-Fs(.)1675 1823 y([F)l(unction])-1801 b Fg(int)27 b
-(rl_clear_pending_input)f Ff(\()p Fi(v)o(oid)p Ff(\))195
-1877 y Fs(Unset)21 b Fi(rl)p 365 1877 V 19 w(p)q(ending)p
-541 1877 V 21 w(input)q Fs(,)h(e\013ectiv)o(ely)e(negating)g(the)g
-(e\013ect)h(of)f(an)o(y)h(previous)f(call)g(to)g Fr(rl_)195
-1932 y(execute_next\(\))p Fs(.)29 b(This)18 b(w)o(orks)g(only)g(if)h
-(the)f(p)q(ending)i(input)f(has)g(not)f(already)g(b)q(een)i(read)195
-1987 y(with)15 b Fr(rl_read_key\(\))p Fs(.)1675 2084
-y([F)l(unction])-1801 b Fg(int)27 b(rl_set_keyboard_input_time)q(out)f
-Ff(\()p Fi(in)o(t)14 b(u)p Ff(\))195 2139 y Fs(While)19
-b(w)o(aiting)g(for)g(k)o(eyb)q(oard)h(input)g(in)g Fr(rl_read_key\(\))p
-Fs(,)f(Readline)h(will)f(w)o(ait)g(for)g Fi(u)h Fs(mi-)195
-2193 y(croseconds)c(for)e(input)i(b)q(efore)g(calling)e(an)o(y)h
-(function)g(assigned)g(to)g Fr(rl_event_hook)p Fs(.)k
-Fi(u)d Fs(m)o(ust)195 2248 y(b)q(e)h(greater)e(than)g(or)h(equal)g(to)f
-(zero)h(\(a)f(zero-length)h(timeout)f(is)g(equiv)m(alen)o(t)h(to)f(a)h
-(p)q(oll\).)21 b(The)195 2303 y(default)15 b(w)o(aiting)e(p)q(erio)q(d)
-j(is)e(one-ten)o(th)i(of)e(a)h(second.)21 b(Returns)15
-b(the)h(old)e(timeout)h(v)m(alue.)75 2405 y Fh(2.4.9)30
-b(T)-5 b(erminal)20 b(Managemen)n(t)1675 2506 y Fs([F)l(unction])-1801
-b Fg(void)27 b(rl_prep_terminal)e Ff(\()p Fi(in)o(t)14
-b(meta)p 836 2506 V 20 w(\015ag)p Ff(\))195 2560 y Fs(Mo)q(dify)21
-b(the)g(terminal)f(settings)g(for)h(Readline's)g(use,)i(so)d
-Fr(readline\(\))g Fs(can)i(read)f(a)g(single)195 2615
-y(c)o(haracter)15 b(at)g(a)g(time)f(from)h(the)h(k)o(eyb)q(oard.)k(The)
-c Fi(meta)p 1189 2615 V 19 w(\015ag)j Fs(argumen)o(t)c(should)h(b)q(e)g
-(non-zero)195 2670 y(if)f(Readline)g(should)g(read)g(eigh)o(t-bit)g
-(input.)p eop end
-%%Page: 37 41
-TeXDict begin 37 40 bop 75 -58 a Fs(Chapter)15 b(2:)k(Programming)14
-b(with)g(GNU)h(Readline)842 b(37)1675 149 y([F)l(unction])-1801
-b Fg(void)27 b(rl_deprep_terminal)e Ff(\()p Fi(v)o(oid)p
-Ff(\))195 204 y Fs(Undo)16 b(the)g(e\013ects)f(of)h Fr
-(rl_prep_terminal\(\))p Fs(,)d(lea)o(ving)i(the)g(terminal)g(in)h(the)f
-(state)g(in)h(whic)o(h)195 259 y(it)e(w)o(as)h(b)q(efore)g(the)h(most)e
-(recen)o(t)h(call)g(to)f Fr(rl_prep_terminal\(\))p Fs(.)1675
-349 y([F)l(unction])-1801 b Fg(void)27 b(rl_tty_set_default_bindin)q
-(gs)f Ff(\()p Fi(Keymap)15 b(kmap)p Ff(\))195 404 y Fs(Read)k(the)g(op)
-q(erating)e(system's)h(terminal)f(editing)h(c)o(haracters)g(\(as)f(w)o
-(ould)h(b)q(e)h(displa)o(y)o(ed)f(b)o(y)195 459 y Fr(stty)p
-Fs(\))c(to)h(their)g(Readline)g(equiv)m(alen)o(ts.)20
-b(The)15 b(bindings)g(are)g(p)q(erformed)g(in)g Fi(kmap)q
-Fs(.)1675 549 y([F)l(unction])-1801 b Fg(void)27 b
-(rl_tty_unset_default_bind)q(ings)f Ff(\()p Fi(Keymap)15
-b(kmap)p Ff(\))195 604 y Fs(Reset)h(the)g(bindings)g(manipulated)f(b)o
-(y)h Fr(rl_tty_set_default_bindings)c Fs(so)k(that)f(the)h(ter-)195
-658 y(minal)j(editing)g(c)o(haracters)g(are)h(b)q(ound)g(to)f
-Fr(rl_insert)p Fs(.)33 b(The)20 b(bindings)g(are)f(p)q(erformed)h(in)
-195 713 y Fi(kmap)q Fs(.)1675 803 y([F)l(unction])-1801
-b Fg(int)27 b(rl_reset_terminal)e Ff(\()p Fi(const)15
-b(c)o(har)f(*terminal)p 1077 803 14 2 v 19 w(name)p Ff(\))195
-858 y Fs(Reinitialize)d(Readline's)g(idea)h(of)g(the)g(terminal)e
-(settings)h(using)h Fi(terminal)p 1490 858 V 19 w(name)i
-Fs(as)e(the)g(termi-)195 913 y(nal)j(t)o(yp)q(e)h(\(e.g.,)f
-Fr(vt100)p Fs(\).)21 b(If)16 b Fi(terminal)p 878 913
-V 19 w(name)i Fs(is)e Fr(NULL)p Fs(,)f(the)h(v)m(alue)g(of)f(the)h
-Fr(TERM)g Fs(en)o(vironmen)o(t)195 968 y(v)m(ariable)f(is)f(used.)75
-1066 y Fh(2.4.10)29 b(Utilit)n(y)22 b(F)-5 b(unctions)1675
-1163 y Fs([F)l(unction])-1801 b Fg(int)27 b(rl_save_state)d
-Ff(\()p Fi(struct)15 b(readline)p 852 1163 V 19 w(state)g(*sp)p
-Ff(\))195 1218 y Fs(Sa)o(v)o(e)f(a)g(snapshot)g(of)g(Readline's)g(in)o
-(ternal)f(state)h(to)f Fi(sp)q Fs(.)21 b(The)14 b(con)o(ten)o(ts)g(of)g
-(the)g Fi(readline)p 1762 1218 V 20 w(state)195 1272
-y Fs(structure)19 b(are)g(do)q(cumen)o(ted)h(in)f(`)p
-Fr(readline.h)p Fs('.)29 b(The)19 b(caller)g(is)f(resp)q(onsible)h(for)
-g(allo)q(cating)195 1327 y(the)c(structure.)1675 1417
-y([F)l(unction])-1801 b Fg(int)27 b(rl_restore_state)e
-Ff(\()p Fi(struct)14 b(readline)p 930 1417 V 20 w(state)g(*sp)p
-Ff(\))195 1472 y Fs(Restore)d(Readline's)g(in)o(ternal)f(state)g(to)g
-(that)g(stored)h(in)g Fi(sp)q Fs(,)h(whic)o(h)f(m)o(ust)f(ha)o(v)o(e)h
-(b)q(een)h(sa)o(v)o(ed)e(b)o(y)h(a)195 1527 y(call)j(to)g
-Fr(rl_save_state)p Fs(.)j(The)e(con)o(ten)o(ts)f(of)g(the)h
-Fi(readline)p 1236 1527 V 19 w(state)i Fs(structure)d(are)g(do)q(cumen)
-o(ted)195 1582 y(in)h(`)p Fr(readline.h)p Fs('.)j(The)d(caller)g(is)f
-(resp)q(onsible)h(for)g(freeing)g(the)g(structure.)1675
-1672 y([F)l(unction])-1801 b Fg(void)27 b(rl_free)d Ff(\()p
-Fi(v)o(oid)14 b(*mem)p Ff(\))195 1727 y Fs(Deallo)q(cate)9
-b(the)i(memory)f(p)q(oin)o(ted)h(to)f(b)o(y)g Fi(mem)p
-Fs(.)18 b Fi(mem)11 b Fs(m)o(ust)f(ha)o(v)o(e)g(b)q(een)i(allo)q(cated)
-e(b)o(y)g Fr(malloc)p Fs(.)1675 1817 y([F)l(unction])-1801
-b Fg(void)27 b(rl_replace_line)e Ff(\()p Fi(const)14
-b(c)o(har)h(*text,)f(in)o(t)h(clear)p 1154 1817 V 19
-w(undo)p Ff(\))195 1871 y Fs(Replace)20 b(the)g(con)o(ten)o(ts)f(of)g
-Fr(rl_line_buffer)f Fs(with)h Fi(text)q Fs(.)32 b(The)20
-b(p)q(oin)o(t)f(and)h(mark)f(are)h(pre-)195 1926 y(serv)o(ed,)13
-b(if)f(p)q(ossible.)19 b(If)13 b Fi(clear)p 712 1926
-V 20 w(undo)i Fs(is)d(non-zero,)i(the)e(undo)i(list)d(asso)q(ciated)h
-(with)g(the)h(curren)o(t)195 1981 y(line)i(is)g(cleared.)1675
-2071 y([F)l(unction])-1801 b Fg(void)27 b(rl_extend_line_buffer)f
-Ff(\()p Fi(in)o(t)14 b(len)p Ff(\))195 2126 y Fs(Ensure)h(that)g
-Fr(rl_line_buffer)e Fs(has)i(enough)g(space)h(to)e(hold)h
-Fi(len)g Fs(c)o(haracters,)f(p)q(ossibly)g(real-)195
-2181 y(lo)q(cating)g(it)g(if)h(necessary)l(.)1675 2271
-y([F)l(unction])-1801 b Fg(int)27 b(rl_initialize)d Ff(\()p
-Fi(v)o(oid)p Ff(\))195 2325 y Fs(Initialize)17 b(or)h(re-initialize)f
-(Readline's)h(in)o(ternal)g(state.)28 b(It's)18 b(not)g(strictly)f
-(necessary)i(to)f(call)195 2380 y(this;)c Fr(readline\(\))g
-Fs(calls)g(it)h(b)q(efore)g(reading)g(an)o(y)g(input.)1675
-2470 y([F)l(unction])-1801 b Fg(int)27 b(rl_ding)c Ff(\()p
-Fi(v)o(oid)p Ff(\))195 2525 y Fs(Ring)15 b(the)g(terminal)f(b)q(ell,)h
-(ob)q(eying)g(the)h(setting)e(of)h Fr(bell-style)p Fs(.)1675
-2615 y([F)l(unction])-1801 b Fg(int)27 b(rl_alphabetic)d
-Ff(\()p Fi(in)o(t)14 b(c)p Ff(\))195 2670 y Fs(Return)i(1)f(if)f
-Fi(c)k Fs(is)d(an)g(alphab)q(etic)g(c)o(haracter.)p eop
-end
-%%Page: 38 42
-TeXDict begin 38 41 bop 75 -58 a Fs(Chapter)15 b(2:)k(Programming)14
-b(with)g(GNU)h(Readline)842 b(38)1675 149 y([F)l(unction])-1801
-b Fg(void)27 b(rl_display_match_list)f Ff(\()p Fi(c)o(har)14
-b(**matc)o(hes,)g(in)o(t)h(len,)f(in)o(t)h(max)p Ff(\))195
-204 y Fs(A)i(con)o(v)o(enience)h(function)f(for)g(displa)o(ying)f(a)h
-(list)f(of)g(strings)g(in)i(columnar)e(format)g(on)h(Read-)195
-259 y(line's)f(output)h(stream.)23 b Fr(matches)16 b
-Fs(is)g(the)h(list)f(of)g(strings,)g(in)g(argv)g(format,)g(suc)o(h)h
-(as)f(a)h(list)e(of)195 314 y(completion)c(matc)o(hes.)19
-b Fr(len)11 b Fs(is)h(the)g(n)o(um)o(b)q(er)h(of)e(strings)g(in)h
-Fr(matches)p Fs(,)g(and)g Fr(max)g Fs(is)f(the)i(length)e(of)195
-369 y(the)i(longest)f(string)g(in)h Fr(matches)p Fs(.)19
-b(This)12 b(function)h(uses)g(the)h(setting)e(of)g Fr
-(print-completions-)195 423 y(horizontally)k Fs(to)i(select)g(ho)o(w)f
-(the)i(matc)o(hes)e(are)h(displa)o(y)o(ed)f(\(see)i(Section)f(1.3.1)e
-([Readline)195 478 y(Init)f(File)f(Syn)o(tax],)g(page)h(4\).)k(When)d
-(displa)o(ying)e(completions,)f(this)i(function)g(sets)g(the)g(n)o(um-)
-195 533 y(b)q(er)d(of)g(columns)f(used)i(for)e(displa)o(y)g(to)g(the)h
-(v)m(alue)g(of)f Fr(completion-display-width)p Fs(,)e(the)j(v)m(alue)
-195 588 y(of)j(the)g(en)o(vironmen)o(t)g(v)m(ariable)f
-Fr(COLUMNS)p Fs(,)g(or)h(the)g(screen)h(width,)e(in)h(that)g(order.)137
-687 y(The)i(follo)o(wing)c(are)j(implemen)o(ted)g(as)g(macros,)f
-(de\014ned)i(in)f Fr(chardefs.h)p Fs(.)21 b(Applications)15
-b(should)75 742 y(refrain)f(from)h(using)g(them.)1675
-841 y([F)l(unction])-1801 b Fg(int)27 b(_rl_uppercase_p)e
-Ff(\()p Fi(in)o(t)14 b(c)p Ff(\))195 895 y Fs(Return)i(1)f(if)f
-Fi(c)k Fs(is)d(an)g(upp)q(ercase)i(alphab)q(etic)d(c)o(haracter.)1675
-994 y([F)l(unction])-1801 b Fg(int)27 b(_rl_lowercase_p)e
-Ff(\()p Fi(in)o(t)14 b(c)p Ff(\))195 1049 y Fs(Return)i(1)f(if)f
-Fi(c)k Fs(is)d(a)g(lo)o(w)o(ercase)f(alphab)q(etic)h(c)o(haracter.)1675
-1148 y([F)l(unction])-1801 b Fg(int)27 b(_rl_digit_p)d
-Ff(\()p Fi(in)o(t)14 b(c)p Ff(\))195 1203 y Fs(Return)i(1)f(if)f
-Fi(c)k Fs(is)d(a)g(n)o(umeric)g(c)o(haracter.)1675 1302
-y([F)l(unction])-1801 b Fg(int)27 b(_rl_to_upper)d Ff(\()p
-Fi(in)o(t)14 b(c)p Ff(\))195 1357 y Fs(If)e Fi(c)j Fs(is)c(a)h(lo)o(w)o
-(ercase)e(alphab)q(etic)i(c)o(haracter,)f(return)h(the)g(corresp)q
-(onding)g(upp)q(ercase)h(c)o(haracter.)1675 1456 y([F)l(unction])-1801
-b Fg(int)27 b(_rl_to_lower)d Ff(\()p Fi(in)o(t)14 b(c)p
-Ff(\))195 1511 y Fs(If)h Fi(c)i Fs(is)d(an)g(upp)q(ercase)i(alphab)q
-(etic)e(c)o(haracter,)g(return)g(the)h(corresp)q(onding)f(lo)o(w)o
-(ercase)f(c)o(harac-)195 1565 y(ter.)1675 1664 y([F)l(unction])-1801
-b Fg(int)27 b(_rl_digit_value)e Ff(\()p Fi(in)o(t)14
-b(c)p Ff(\))195 1719 y Fs(If)h Fi(c)k Fs(is)14 b(a)h(n)o(um)o(b)q(er,)g
-(return)g(the)h(v)m(alue)f(it)g(represen)o(ts.)75 1822
-y Fh(2.4.11)29 b(Miscellaneous)22 b(F)-5 b(unctions)1675
-1924 y Fs([F)l(unction])-1801 b Fg(int)27 b(rl_macro_bind)d
-Ff(\()p Fi(const)15 b(c)o(har)g(*k)o(eyseq,)f(const)h(c)o(har)g
-(*macro,)f(Keymap)283 1979 y(map)p Ff(\))195 2034 y Fs(Bind)e(the)f(k)o
-(ey)h(sequence)g Fi(k)o(eyseq)h Fs(to)e(in)o(v)o(ok)o(e)f(the)h(macro)g
-Fi(macro)r Fs(.)18 b(The)12 b(binding)f(is)g(p)q(erformed)h(in)195
-2088 y Fi(map)q Fs(.)20 b(When)14 b Fi(k)o(eyseq)g Fs(is)f(in)o(v)o(ok)
-o(ed,)g(the)h Fi(macro)h Fs(will)e(b)q(e)h(inserted)f(in)o(to)g(the)h
-(line.)19 b(This)13 b(function)195 2143 y(is)i(deprecated;)g(use)h
-Fr(rl_generic_bind\(\))d Fs(instead.)1675 2242 y([F)l(unction])-1801
-b Fg(void)27 b(rl_macro_dumper)e Ff(\()p Fi(in)o(t)14
-b(readable)p Ff(\))195 2297 y Fs(Prin)o(t)f(the)g(k)o(ey)h(sequences)g
-(b)q(ound)h(to)e(macros)g(and)g(their)g(v)m(alues,)h(using)f(the)h
-(curren)o(t)g(k)o(eymap,)195 2352 y(to)h Fr(rl_outstream)p
-Fs(.)k(If)d Fi(readable)i Fs(is)d(non-zero,)h(the)g(list)e(is)h
-(formatted)g(in)g(suc)o(h)h(a)f(w)o(a)o(y)g(that)g(it)195
-2407 y(can)g(b)q(e)h(made)f(part)g(of)g(an)g Fr(inputrc)f
-Fs(\014le)h(and)h(re-read.)1675 2506 y([F)l(unction])-1801
-b Fg(int)27 b(rl_variable_bind)e Ff(\()p Fi(const)14
-b(c)o(har)h(*v)m(ariable,)f(const)h(c)o(har)g(*v)m(alue)p
-Ff(\))195 2560 y Fs(Mak)o(e)f(the)g(Readline)h(v)m(ariable)e
-Fi(v)m(ariable)j Fs(ha)o(v)o(e)e Fi(v)m(alue)s Fs(.)20
-b(This)14 b(b)q(eha)o(v)o(es)g(as)g(if)g(the)g(readline)g(com-)195
-2615 y(mand)g(`)p Fr(set)h Fk(variable)k(value)5 b Fs(')14
-b(had)g(b)q(een)i(executed)f(in)g(an)f Fr(inputrc)f Fs(\014le)i(\(see)f
-(Section)h(1.3.1)195 2670 y([Readline)g(Init)g(File)g(Syn)o(tax],)f
-(page)h(4\).)p eop end
-%%Page: 39 43
-TeXDict begin 39 42 bop 75 -58 a Fs(Chapter)15 b(2:)k(Programming)14
-b(with)g(GNU)h(Readline)842 b(39)1675 149 y([F)l(unction])-1801
-b Fg(char)27 b(*)f(rl_variable_value)f Ff(\()p Fi(const)15
-b(c)o(har)g(*v)m(ariable)p Ff(\))195 204 y Fs(Return)g(a)f(string)f
-(represen)o(ting)i(the)f(v)m(alue)h(of)f(the)g(Readline)h(v)m(ariable)f
-Fi(v)m(ariable)s Fs(.)k(F)l(or)c(b)q(o)q(olean)195 259
-y(v)m(ariables,)g(this)h(string)f(is)h(either)g(`)p Fr(on)p
-Fs(')f(or)g(`)p Fr(off)p Fs('.)1675 356 y([F)l(unction])-1801
-b Fg(void)27 b(rl_variable_dumper)e Ff(\()p Fi(in)o(t)14
-b(readable)p Ff(\))195 411 y Fs(Prin)o(t)f(the)i(readline)f(v)m
-(ariable)f(names)i(and)f(their)g(curren)o(t)g(v)m(alues)h(to)e
-Fr(rl_outstream)p Fs(.)18 b(If)d Fi(read-)195 466 y(able)k
-Fs(is)e(non-zero,)g(the)g(list)f(is)h(formatted)f(in)g(suc)o(h)i(a)e(w)
-o(a)o(y)g(that)h(it)f(can)h(b)q(e)h(made)f(part)f(of)h(an)195
-521 y Fr(inputrc)d Fs(\014le)h(and)h(re-read.)1675 618
-y([F)l(unction])-1801 b Fg(int)27 b(rl_set_paren_blink_timeout)f
-Ff(\()p Fi(in)o(t)14 b(u)p Ff(\))195 672 y Fs(Set)f(the)f(time)g(in)o
-(terv)m(al)g(\(in)g(microseconds\))g(that)g(Readline)h(w)o(aits)e(when)
-i(sho)o(wing)e(a)i(balancing)195 727 y(c)o(haracter)h(when)i
-Fr(blink-matching-paren)d Fs(has)i(b)q(een)h(enabled.)1675
-824 y([F)l(unction])-1801 b Fg(char)27 b(*)f(rl_get_termcap)f
-Ff(\()p Fi(const)15 b(c)o(har)f(*cap)p Ff(\))195 879
-y Fs(Retriev)o(e)f(the)h(string)e(v)m(alue)i(of)f(the)g(termcap)g
-(capabilit)o(y)f Fi(cap)q Fs(.)20 b(Readline)13 b(fetc)o(hes)h(the)f
-(termcap)195 934 y(en)o(try)j(for)h(the)f(curren)o(t)h(terminal)f(name)
-g(and)h(uses)g(those)g(capabilities)e(to)h(mo)o(v)o(e)g(around)h(the)
-195 989 y(screen)11 b(line)f(and)h(p)q(erform)f(other)g(terminal-sp)q
-(eci\014c)h(op)q(erations,)f(lik)o(e)g(erasing)f(a)i(line.)18
-b(Readline)195 1044 y(do)q(es)g(not)f(use)h(all)e(of)h(a)g(terminal's)f
-(capabilities,)g(and)i(this)f(function)g(will)f(return)i(v)m(alues)g
-(for)195 1098 y(only)d(those)g(capabilities)e(Readline)j(uses.)75
-1200 y Fh(2.4.12)29 b(Alternate)21 b(In)n(terface)75
-1274 y Fs(An)11 b(alternate)f(in)o(terface)g(is)g(a)o(v)m(ailable)g(to)
-g(plain)g Fr(readline\(\))p Fs(.)17 b(Some)11 b(applications)f(need)h
-(to)f(in)o(terlea)o(v)o(e)75 1329 y(k)o(eyb)q(oard)18
-b(I/O)g(with)f(\014le,)h(device,)h(or)e(windo)o(w)g(system)g(I/O,)h(t)o
-(ypically)e(b)o(y)i(using)g(a)f(main)g(lo)q(op)h(to)75
-1383 y Fr(select\(\))12 b Fs(on)h(v)m(arious)f(\014le)h(descriptors.)18
-b(T)l(o)13 b(accomo)q(date)f(this)h(need,)h(readline)e(can)h(also)f(b)q
-(e)i(in)o(v)o(ok)o(ed)75 1438 y(as)f(a)g(`callbac)o(k')f(function)h
-(from)g(an)g(ev)o(en)o(t)g(lo)q(op.)19 b(There)14 b(are)f(functions)g
-(a)o(v)m(ailable)f(to)h(mak)o(e)f(this)h(easy)l(.)1675
-1535 y([F)l(unction])-1801 b Fg(void)27 b(rl_callback_handler_insta)q
-(ll)f Ff(\()p Fi(const)14 b(c)o(har)h(*prompt,)283 1590
-y(rl)p 317 1590 14 2 v 19 w(v)o(cpfunc)p 488 1590 V 21
-w(t)g(*lhandler)p Ff(\))195 1645 y Fs(Set)d(up)h(the)g(terminal)e(for)g
-(readline)h(I/O)h(and)g(displa)o(y)e(the)h(initial)f(expanded)i(v)m
-(alue)g(of)f Fi(prompt)q Fs(.)195 1700 y(Sa)o(v)o(e)j(the)h(v)m(alue)g
-(of)g Fi(lhandler)j Fs(to)c(use)h(as)f(a)h(function)g(to)f(call)g(when)
-h(a)g(complete)f(line)h(of)f(input)195 1755 y(has)g(b)q(een)h(en)o
-(tered.)21 b(The)15 b(function)g(tak)o(es)f(the)i(text)e(of)h(the)g
-(line)g(as)g(an)g(argumen)o(t.)1675 1852 y([F)l(unction])-1801
-b Fg(void)27 b(rl_callback_read_char)f Ff(\()p Fi(v)o(oid)p
-Ff(\))195 1906 y Fs(Whenev)o(er)17 b(an)g(application)e(determines)i
-(that)f(k)o(eyb)q(oard)h(input)g(is)f(a)o(v)m(ailable,)g(it)g(should)h
-(call)195 1961 y Fr(rl_callback_read_char\(\))p Fs(,)8
-b(whic)o(h)j(will)e(read)i(the)g(next)g(c)o(haracter)f(from)g(the)h
-(curren)o(t)g(input)195 2016 y(source.)38 b(If)21 b(that)g(c)o
-(haracter)f(completes)h(the)g(line,)h Fr(rl_callback_read_char)c
-Fs(will)i(in)o(v)o(ok)o(e)195 2071 y(the)e Fi(lhandler)i
-Fs(function)e(sa)o(v)o(ed)f(b)o(y)h Fr(rl_callback_handler_insta)o(ll)d
-Fs(to)i(pro)q(cess)h(the)g(line.)195 2126 y(Before)13
-b(calling)f(the)i Fi(lhandler)i Fs(function,)d(the)h(terminal)e
-(settings)g(are)h(reset)g(to)g(the)g(v)m(alues)h(they)195
-2180 y(had)h(b)q(efore)g(calling)f Fr(rl_callback_handler_insta)o(ll)p
-Fs(.)j(If)e(the)g Fi(lhandler)j Fs(function)c(returns,)195
-2235 y(the)e(terminal)g(settings)f(are)h(mo)q(di\014ed)h(for)e
-(Readline's)h(use)h(again.)18 b Fr(EOF)12 b Fs(is)g(indicated)g(b)o(y)g
-(calling)195 2290 y Fi(lhandler)18 b Fs(with)d(a)g Fr(NULL)f
-Fs(line.)1675 2387 y([F)l(unction])-1801 b Fg(void)27
-b(rl_callback_handler_remov)q(e)e Ff(\()p Fi(v)o(oid)p
-Ff(\))195 2442 y Fs(Restore)19 b(the)f(terminal)g(to)f(its)h(initial)f
-(state)h(and)g(remo)o(v)o(e)g(the)h(line)f(handler.)30
-b(This)18 b(ma)o(y)g(b)q(e)195 2497 y(called)g(from)f(within)h(a)f
-(callbac)o(k)h(as)f(w)o(ell)g(as)h(indep)q(enden)o(tly)l(.)30
-b(If)19 b(the)f Fi(lhandler)j Fs(installed)c(b)o(y)195
-2552 y Fr(rl_callback_handler_instal)o(l)g Fs(do)q(es)i(not)g(exit)g
-(the)h(program,)e(either)h(this)g(function)g(or)195 2606
-y(the)d(function)f(referred)h(to)f(b)o(y)h(the)g(v)m(alue)g(of)f
-Fr(rl_deprep_term_function)d Fs(should)k(b)q(e)g(called)195
-2661 y(b)q(efore)f(the)h(program)e(exits)g(to)h(reset)g(the)g(terminal)
-f(settings.)p eop end
-%%Page: 40 44
-TeXDict begin 40 43 bop 75 -58 a Fs(Chapter)15 b(2:)k(Programming)14
-b(with)g(GNU)h(Readline)842 b(40)75 149 y Fh(2.4.13)29
-b(A)21 b(Readline)g(Example)75 223 y Fs(Here)c(is)g(a)f(function)h
-(whic)o(h)g(c)o(hanges)g(lo)o(w)o(ercase)e(c)o(haracters)h(to)h(their)f
-(upp)q(ercase)i(equiv)m(alen)o(ts,)f(and)75 278 y(upp)q(ercase)i(c)o
-(haracters)e(to)g(lo)o(w)o(ercase.)26 b(If)17 b(this)h(function)f(w)o
-(as)g(b)q(ound)i(to)e(`)p Fr(M-c)p Fs(',)f(then)i(t)o(yping)f(`)p
-Fr(M-c)p Fs(')75 333 y(w)o(ould)e(c)o(hange)h(the)g(case)g(of)f(the)h
-(c)o(haracter)f(under)h(p)q(oin)o(t.)21 b(T)o(yping)16
-b(`)p Fr(M-1)e(0)h(M-c)p Fs(')g(w)o(ould)g(c)o(hange)h(the)75
-387 y(case)f(of)g(the)g(follo)o(wing)e(10)i(c)o(haracters,)f(lea)o
-(ving)g(the)h(cursor)g(on)g(the)g(last)g(c)o(haracter)f(c)o(hanged.)195
-478 y Fr(/*)24 b(Invert)f(the)g(case)g(of)h(the)f(COUNT)h(following)e
-(characters.)h(*/)195 533 y(int)195 588 y(invert_case_line)f(\(count,)h
-(key\))314 643 y(int)h(count,)f(key;)195 697 y({)243
-752 y(register)f(int)i(start,)f(end,)g(i;)243 862 y(start)g(=)h
-(rl_point;)243 971 y(if)f(\(rl_point)g(>=)h(rl_end\))290
-1026 y(return)f(\(0\);)243 1136 y(if)g(\(count)g(<)h(0\))290
-1191 y({)338 1245 y(direction)f(=)h(-1;)338 1300 y(count)f(=)h(-count;)
-290 1355 y(})243 1410 y(else)290 1465 y(direction)f(=)h(1;)243
-1574 y(/*)f(Find)h(the)f(end)h(of)f(the)h(range)f(to)g(modify.)g(*/)243
-1629 y(end)g(=)h(start)f(+)h(\(count)f(*)h(direction\);)243
-1738 y(/*)f(Force)g(it)h(to)g(be)f(within)g(range.)g(*/)243
-1793 y(if)g(\(end)h(>)f(rl_end\))290 1848 y(end)h(=)g(rl_end;)243
-1903 y(else)f(if)h(\(end)f(<)h(0\))290 1958 y(end)g(=)g(0;)243
-2067 y(if)f(\(start)g(==)h(end\))290 2122 y(return)f(\(0\);)243
-2232 y(if)g(\(start)g(>)h(end\))290 2286 y({)338 2341
-y(int)g(temp)f(=)h(start;)338 2396 y(start)f(=)h(end;)338
-2451 y(end)g(=)f(temp;)290 2506 y(})243 2615 y(/*)g(Tell)h(readline)e
-(that)i(we)f(are)h(modifying)e(the)i(line,)314 2670 y(so)g(it)f(will)h
-(save)f(the)h(undo)f(information.)f(*/)p eop end
-%%Page: 41 45
-TeXDict begin 41 44 bop 75 -58 a Fs(Chapter)15 b(2:)k(Programming)14
-b(with)g(GNU)h(Readline)842 b(41)243 149 y Fr(rl_modifying)22
-b(\(start,)h(end\);)243 259 y(for)g(\(i)h(=)f(start;)h(i)f(!=)h(end;)f
-(i++\))290 314 y({)338 369 y(if)h(\(_rl_uppercase_p)d
-(\(rl_line_buffer[i]\)\))386 423 y(rl_line_buffer[i])g(=)j
-(_rl_to_lower)e(\(rl_line_buffer[i]\);)338 478 y(else)h(if)h
-(\(_rl_lowercase_p)e(\(rl_line_buffer[i]\)\))386 533
-y(rl_line_buffer[i])f(=)j(_rl_to_upper)e(\(rl_line_buffer[i]\);)290
-588 y(})243 643 y(/*)h(Move)h(point)f(to)g(on)h(top)f(of)h(the)f(last)h
-(character)e(changed.)h(*/)243 697 y(rl_point)f(=)i(\(direction)f(==)g
-(1\))h(?)g(end)f(-)h(1)g(:)f(start;)243 752 y(return)g(\(0\);)195
-807 y(})75 973 y Fq(2.5)33 b(Readline)21 b(Signal)h(Handling)75
-1053 y Fs(Signals)14 b(are)h(async)o(hronous)g(ev)o(en)o(ts)g(sen)o(t)g
-(to)g(a)g(pro)q(cess)g(b)o(y)g(the)h(Unix)f(k)o(ernel,)f(sometimes)h
-(on)g(b)q(ehalf)75 1108 y(of)i(another)g(pro)q(cess.)26
-b(They)18 b(are)f(in)o(tended)h(to)e(indicate)h(exceptional)g(ev)o(en)o
-(ts,)g(lik)o(e)g(a)g(user)g(pressing)75 1163 y(the)g(in)o(terrupt)f(k)o
-(ey)h(on)f(his)h(terminal,)f(or)g(a)g(net)o(w)o(ork)g(connection)h(b)q
-(eing)g(brok)o(en.)25 b(There)17 b(is)f(a)h(class)75
-1217 y(of)d(signals)f(that)h(can)g(b)q(e)h(sen)o(t)g(to)e(the)i(pro)q
-(cess)g(curren)o(tly)e(reading)h(input)h(from)e(the)i(k)o(eyb)q(oard.)k
-(Since)75 1272 y(Readline)k(c)o(hanges)f(the)g(terminal)f(attributes)g
-(when)i(it)e(is)h(called,)h(it)f(needs)h(to)e(p)q(erform)h(sp)q(ecial)
-75 1327 y(pro)q(cessing)14 b(when)g(suc)o(h)g(a)g(signal)e(is)h(receiv)
-o(ed)h(in)g(order)g(to)f(restore)g(the)h(terminal)e(to)h(a)h(sane)g
-(state,)e(or)75 1382 y(pro)o(vide)j(application)f(writers)g(with)g
-(functions)h(to)g(do)g(so)g(man)o(ually)l(.)137 1482
-y(Readline)21 b(con)o(tains)e(an)h(in)o(ternal)f(signal)g(handler)h
-(that)g(is)g(installed)f(for)g(a)h(n)o(um)o(b)q(er)g(of)g(signals)75
-1537 y(\()p Fr(SIGINT)p Fs(,)h Fr(SIGQUIT)p Fs(,)g Fr(SIGTERM)p
-Fs(,)g Fr(SIGALRM)p Fs(,)g Fr(SIGTSTP)p Fs(,)g Fr(SIGTTIN)p
-Fs(,)h(and)f Fr(SIGTTOU)p Fs(\).)36 b(When)21 b(one)g(of)75
-1592 y(these)16 b(signals)f(is)g(receiv)o(ed,)h(the)g(signal)f(handler)
-g(will)g(reset)h(the)g(terminal)e(attributes)h(to)g(those)h(that)75
-1647 y(w)o(ere)d(in)h(e\013ect)f(b)q(efore)h Fr(readline\(\))e
-Fs(w)o(as)h(called,)g(reset)h(the)f(signal)g(handling)g(to)g(what)g(it)
-g(w)o(as)g(b)q(efore)75 1702 y Fr(readline\(\))21 b Fs(w)o(as)h
-(called,)h(and)g(resend)g(the)g(signal)e(to)h(the)h(calling)e
-(application.)41 b(If)23 b(and)f(when)75 1756 y(the)17
-b(calling)f(application's)f(signal)h(handler)h(returns,)g(Readline)g
-(will)f(reinitialize)f(the)i(terminal)f(and)75 1811 y(con)o(tin)o(ue)e
-(to)f(accept)i(input.)k(When)c(a)e Fr(SIGINT)h Fs(is)f(receiv)o(ed,)h
-(the)h(Readline)f(signal)f(handler)h(p)q(erforms)75 1866
-y(some)19 b(additional)f(w)o(ork,)h(whic)o(h)g(will)f(cause)i(an)o(y)f
-(partially-en)o(tered)f(line)h(to)f(b)q(e)i(ab)q(orted)g(\(see)f(the)75
-1921 y(description)c(of)f Fr(rl_free_line_state\(\))f
-Fs(b)q(elo)o(w\).)137 2021 y(There)g(is)e(an)h(additional)f(Readline)i
-(signal)e(handler,)h(for)g Fr(SIGWINCH)p Fs(,)f(whic)o(h)h(the)g(k)o
-(ernel)g(sends)h(to)e(a)75 2076 y(pro)q(cess)k(whenev)o(er)g(the)f
-(terminal's)f(size)h(c)o(hanges)g(\(for)g(example,)g(if)g(a)g(user)h
-(resizes)f(an)g Fr(xterm)p Fs(\).)19 b(The)75 2131 y(Readline)f
-Fr(SIGWINCH)f Fs(handler)h(up)q(dates)g(Readline's)g(in)o(ternal)e
-(screen)j(size)e(information,)g(and)h(then)75 2186 y(calls)e(an)o(y)h
-Fr(SIGWINCH)e Fs(signal)h(handler)h(the)g(calling)f(application)f(has)i
-(installed.)24 b(Readline)17 b(calls)f(the)75 2241 y(application's)g
-Fr(SIGWINCH)g Fs(signal)h(handler)g(without)g(resetting)g(the)g
-(terminal)g(to)g(its)f(original)g(state.)75 2295 y(If)g(the)g
-(application's)e(signal)h(handler)h(do)q(es)h(more)e(than)h(up)q(date)h
-(its)e(idea)h(of)f(the)h(terminal)f(size)h(and)75 2350
-y(return)f(\(for)f(example,)g(a)g Fr(longjmp)g Fs(bac)o(k)h(to)f(a)h
-(main)f(pro)q(cessing)g(lo)q(op\),)g(it)g Fj(must)20
-b Fs(call)14 b Fr(rl_cleanup_)75 2405 y(after_signal\(\))f
-Fs(\(describ)q(ed)j(b)q(elo)o(w\),)e(to)h(restore)f(the)h(terminal)f
-(state.)137 2506 y(Readline)h(pro)o(vides)f(t)o(w)o(o)f(v)m(ariables)g
-(that)h(allo)o(w)e(application)h(writers)g(to)h(con)o(trol)f(whether)i
-(or)e(not)75 2560 y(it)j(will)f(catc)o(h)h(certain)g(signals)g(and)h
-(act)f(on)g(them)h(when)g(they)f(are)h(receiv)o(ed.)24
-b(It)16 b(is)h(imp)q(ortan)o(t)e(that)75 2615 y(applications)i(c)o
-(hange)h(the)h(v)m(alues)f(of)g(these)h(v)m(ariables)e(only)h(when)h
-(calling)e Fr(readline\(\))p Fs(,)g(not)h(in)g(a)75 2670
-y(signal)c(handler,)h(so)g(Readline's)g(in)o(ternal)f(signal)g(state)g
-(is)h(not)g(corrupted.)p eop end
-%%Page: 42 46
-TeXDict begin 42 45 bop 75 -58 a Fs(Chapter)15 b(2:)k(Programming)14
-b(with)g(GNU)h(Readline)842 b(42)1685 149 y([V)l(ariable])-1801
-b Fg(int)27 b(rl_catch_signals)195 204 y Fs(If)15 b(this)f(v)m(ariable)
-f(is)h(non-zero,)h(Readline)g(will)e(install)f(signal)i(handlers)g(for)
-g Fr(SIGINT)p Fs(,)f Fr(SIGQUIT)p Fs(,)195 259 y Fr(SIGTERM)p
-Fs(,)h Fr(SIGALRM)p Fs(,)g Fr(SIGTSTP)p Fs(,)f Fr(SIGTTIN)p
-Fs(,)h(and)i Fr(SIGTTOU)p Fs(.)195 331 y(The)f(default)g(v)m(alue)h(of)
-e Fr(rl_catch_signals)f Fs(is)i(1.)1685 431 y([V)l(ariable])-1801
-b Fg(int)27 b(rl_catch_sigwinch)195 486 y Fs(If)15 b(this)g(v)m
-(ariable)g(is)f(non-zero,)h(Readline)h(will)e(install)f(a)i(signal)f
-(handler)i(for)e Fr(SIGWINCH)p Fs(.)195 558 y(The)h(default)g(v)m(alue)
-h(of)e Fr(rl_catch_sigwinch)f Fs(is)i(1.)137 658 y(If)h(an)f
-(application)g(do)q(es)g(not)g(wish)h(to)e(ha)o(v)o(e)h(Readline)h
-(catc)o(h)g(an)o(y)f(signals,)f(or)h(to)f(handle)i(signals)75
-713 y(other)j(than)g(those)g(Readline)h(catc)o(hes)f(\()p
-Fr(SIGHUP)p Fs(,)g(for)g(example\),)g(Readline)h(pro)o(vides)e(con)o(v)
-o(enience)75 768 y(functions)d(to)g(do)g(the)g(necessary)g(terminal)f
-(and)i(in)o(ternal)e(state)g(clean)o(up)h(up)q(on)h(receipt)f(of)g(a)g
-(signal.)1675 869 y([F)l(unction])-1801 b Fg(void)27
-b(rl_cleanup_after_signal)f Ff(\()p Fi(v)o(oid)p Ff(\))195
-924 y Fs(This)17 b(function)f(will)g(reset)h(the)g(state)f(of)g(the)h
-(terminal)f(to)g(what)h(it)f(w)o(as)g(b)q(efore)h Fr(readline\(\))195
-978 y Fs(w)o(as)d(called,)g(and)h(remo)o(v)o(e)f(the)g(Readline)h
-(signal)f(handlers)h(for)f(all)f(signals,)g(dep)q(ending)j(on)f(the)195
-1033 y(v)m(alues)g(of)g Fr(rl_catch_signals)e Fs(and)i
-Fr(rl_catch_sigwinch)p Fs(.)1675 1134 y([F)l(unction])-1801
-b Fg(void)27 b(rl_free_line_state)e Ff(\()p Fi(v)o(oid)p
-Ff(\))195 1189 y Fs(This)19 b(will)f(free)i(an)o(y)f(partial)f(state)h
-(asso)q(ciated)g(with)g(the)h(curren)o(t)f(input)h(line)f(\(undo)h
-(infor-)195 1244 y(mation,)h(an)o(y)g(partial)f(history)g(en)o(try)l(,)
-i(an)o(y)f(partially-en)o(tered)f(k)o(eyb)q(oard)h(macro,)h(and)f(an)o
-(y)195 1298 y(partially-en)o(tered)h(n)o(umeric)i(argumen)o(t\).)45
-b(This)23 b(should)h(b)q(e)h(called)e(b)q(efore)i Fr(rl_cleanup_)195
-1353 y(after_signal\(\))p Fs(.)36 b(The)22 b(Readline)g(signal)e
-(handler)h(for)g Fr(SIGINT)f Fs(calls)h(this)f(to)h(ab)q(ort)g(the)195
-1408 y(curren)o(t)15 b(input)g(line.)1675 1509 y([F)l(unction])-1801
-b Fg(void)27 b(rl_reset_after_signal)f Ff(\()p Fi(v)o(oid)p
-Ff(\))195 1563 y Fs(This)14 b(will)f(reinitialize)f(the)i(terminal)f
-(and)i(reinstall)e(an)o(y)g(Readline)i(signal)e(handlers,)h(dep)q(end-)
-195 1618 y(ing)h(on)g(the)g(v)m(alues)h(of)e Fr(rl_catch_signals)f
-Fs(and)j Fr(rl_catch_sigwinch)p Fs(.)137 1719 y(If)k(an)g(application)e
-(do)q(es)i(not)g(wish)f(Readline)h(to)f(catc)o(h)g Fr(SIGWINCH)p
-Fs(,)h(it)f(ma)o(y)g(call)f Fr(rl_resize_)75 1774 y(terminal\(\))12
-b Fs(or)h Fr(rl_set_screen_size\(\))e Fs(to)i(force)g(Readline)h(to)f
-(up)q(date)h(its)f(idea)g(of)h(the)f(terminal)75 1829
-y(size)i(when)h(a)f Fr(SIGWINCH)f Fs(is)g(receiv)o(ed.)1675
-1929 y([F)l(unction])-1801 b Fg(void)27 b(rl_echo_signal_char)e
-Ff(\()p Fi(in)o(t)14 b(sig)p Ff(\))195 1984 y Fs(If)22
-b(an)g(application)e(wishes)i(to)f(install)f(its)h(o)o(wn)g(signal)g
-(handlers,)i(but)f(still)e(ha)o(v)o(e)h(readline)195
-2039 y(displa)o(y)14 b(c)o(haracters)h(that)f(generate)h(signals,)f
-(calling)g(this)h(function)g(with)f Fi(sig)19 b Fs(set)c(to)f
-Fr(SIGINT)p Fs(,)195 2094 y Fr(SIGQUIT)p Fs(,)g(or)h
-Fr(SIGTSTP)f Fs(will)g(displa)o(y)g(the)h(c)o(haracter)g(generating)f
-(that)g(signal.)1675 2194 y([F)l(unction])-1801 b Fg(void)27
-b(rl_resize_terminal)e Ff(\()p Fi(v)o(oid)p Ff(\))195
-2249 y Fs(Up)q(date)16 b(Readline's)f(in)o(ternal)f(screen)h(size)h(b)o
-(y)f(reading)f(v)m(alues)i(from)e(the)i(k)o(ernel.)1675
-2350 y([F)l(unction])-1801 b Fg(void)27 b(rl_set_screen_size)e
-Ff(\()p Fi(in)o(t)14 b(ro)o(ws,)g(in)o(t)h(cols)p Ff(\))195
-2405 y Fs(Set)f(Readline's)g(idea)g(of)g(the)g(terminal)f(size)h(to)f
-Fi(ro)o(ws)i Fs(ro)o(ws)e(and)h Fi(cols)i Fs(columns.)j(If)14
-b(either)g Fi(ro)o(ws)195 2460 y Fs(or)j Fi(columns)i
-Fs(is)e(less)h(than)f(or)g(equal)h(to)e(0,)i(Readline's)f(idea)h(of)f
-(that)g(terminal)f(dimension)h(is)195 2514 y(unc)o(hanged.)137
-2615 y(If)g(an)g(application)e(do)q(es)i(not)f(w)o(an)o(t)g(to)g
-(install)f(a)i Fr(SIGWINCH)e Fs(handler,)i(but)g(is)f(still)f(in)o
-(terested)h(in)75 2670 y(the)f(screen)h(dimensions,)e(Readline's)i
-(idea)e(of)h(the)h(screen)f(size)g(ma)o(y)g(b)q(e)h(queried.)p
-eop end
-%%Page: 43 47
-TeXDict begin 43 46 bop 75 -58 a Fs(Chapter)15 b(2:)k(Programming)14
-b(with)g(GNU)h(Readline)842 b(43)1675 149 y([F)l(unction])-1801
-b Fg(void)27 b(rl_get_screen_size)e Ff(\()p Fi(in)o(t)14
-b(*ro)o(ws,)g(in)o(t)g(*cols)p Ff(\))195 204 y Fs(Return)i(Readline's)f
-(idea)f(of)h(the)g(terminal's)e(size)i(in)g(the)g(v)m(ariables)g(p)q
-(oin)o(ted)g(to)f(b)o(y)h(the)g(argu-)195 259 y(men)o(ts.)1675
-348 y([F)l(unction])-1801 b Fg(void)27 b(rl_reset_screen_size)f
-Ff(\()p Fi(v)o(oid)p Ff(\))195 403 y Fs(Cause)15 b(Readline)h(to)e
-(reobtain)h(the)g(screen)h(size)f(and)g(recalculate)f(its)h
-(dimensions.)137 492 y(The)h(follo)o(wing)d(functions)i(install)e(and)j
-(remo)o(v)o(e)e(Readline's)h(signal)f(handlers.)1675
-581 y([F)l(unction])-1801 b Fg(int)27 b(rl_set_signals)d
-Ff(\()p Fi(v)o(oid)p Ff(\))195 636 y Fs(Install)17 b(Readline's)g
-(signal)g(handler)g(for)g Fr(SIGINT)p Fs(,)g Fr(SIGQUIT)p
-Fs(,)g Fr(SIGTERM)p Fs(,)g Fr(SIGALRM)p Fs(,)f Fr(SIGTSTP)p
-Fs(,)195 691 y Fr(SIGTTIN)p Fs(,)11 b Fr(SIGTTOU)p Fs(,)g(and)h
-Fr(SIGWINCH)p Fs(,)e(dep)q(ending)j(on)f(the)f(v)m(alues)h(of)f
-Fr(rl_catch_signals)f Fs(and)195 746 y Fr(rl_catch_sigwinch)p
-Fs(.)1675 835 y([F)l(unction])-1801 b Fg(int)27 b(rl_clear_signals)e
-Ff(\()p Fi(v)o(oid)p Ff(\))195 889 y Fs(Remo)o(v)o(e)15
-b(all)f(of)h(the)g(Readline)h(signal)e(handlers)h(installed)f(b)o(y)h
-Fr(rl_set_signals\(\))p Fs(.)75 1004 y Fq(2.6)33 b(Custom)21
-b(Completers)75 1083 y Fs(T)o(ypically)l(,)g(a)g(program)f(that)h
-(reads)g(commands)g(from)g(the)g(user)h(has)f(a)g(w)o(a)o(y)f(of)h
-(disam)o(biguating)75 1138 y(commands)d(and)f(data.)27
-b(If)18 b(y)o(our)f(program)g(is)g(one)h(of)f(these,)i(then)f(it)f(can)
-g(pro)o(vide)h(completion)f(for)75 1193 y(commands,)d(data,)g(or)g(b)q
-(oth.)20 b(The)15 b(follo)o(wing)d(sections)i(describ)q(e)h(ho)o(w)f(y)
-o(our)g(program)g(and)h(Readline)75 1248 y(co)q(op)q(erate)g(to)g(pro)o
-(vide)f(this)h(service.)75 1345 y Fh(2.6.1)30 b(Ho)n(w)21
-b(Completing)f(W)-5 b(orks)75 1419 y Fs(In)14 b(order)f(to)f(complete)h
-(some)g(text,)g(the)g(full)f(list)g(of)h(p)q(ossible)g(completions)f(m)
-o(ust)h(b)q(e)h(a)o(v)m(ailable.)k(That)75 1474 y(is,)13
-b(it)g(is)g(not)g(p)q(ossible)g(to)g(accurately)f(expand)j(a)e(partial)
-f(w)o(ord)g(without)h(kno)o(wing)f(all)h(of)g(the)g(p)q(ossible)75
-1528 y(w)o(ords)j(whic)o(h)g(mak)o(e)g(sense)h(in)g(that)f(con)o(text.)
-23 b(The)17 b(Readline)g(library)e(pro)o(vides)h(the)h(user)g(in)o
-(terface)75 1583 y(to)d(completion,)f(and)h(t)o(w)o(o)f(of)h(the)g
-(most)f(common)h(completion)f(functions:)19 b(\014lename)c(and)f
-(username.)75 1638 y(F)l(or)k(completing)h(other)f(t)o(yp)q(es)h(of)g
-(text,)g(y)o(ou)g(m)o(ust)f(write)g(y)o(our)h(o)o(wn)f(completion)g
-(function.)31 b(This)75 1693 y(section)15 b(describ)q(es)h(exactly)e
-(what)h(suc)o(h)g(functions)g(m)o(ust)g(do,)g(and)g(pro)o(vides)g(an)g
-(example.)137 1759 y(There)h(are)f(three)g(ma)s(jor)f(functions)h(used)
-g(to)g(p)q(erform)g(completion:)100 1825 y(1.)29 b(The)22
-b(user-in)o(terface)f(function)h Fr(rl_complete\(\))p
-Fs(.)37 b(This)22 b(function)f(is)g(called)g(with)g(the)h(same)165
-1880 y(argumen)o(ts)17 b(as)g(other)g(bindable)h(Readline)f(functions:)
-25 b Fi(coun)o(t)18 b Fs(and)g Fi(in)o(v)o(oking)p 1553
-1880 14 2 v 18 w(k)o(ey)t Fs(.)27 b(It)18 b(isolates)165
-1935 y(the)h(w)o(ord)f(to)g(b)q(e)i(completed)e(and)h(calls)f
-Fr(rl_completion_matches\(\))e Fs(to)i(generate)g(a)h(list)e(of)165
-1990 y(p)q(ossible)e(completions.)20 b(It)c(then)g(either)f(lists)f
-(the)i(p)q(ossible)f(completions,)g(inserts)g(the)g(p)q(ossible)165
-2044 y(completions,)23 b(or)f(actually)g(p)q(erforms)g(the)g
-(completion,)i(dep)q(ending)f(on)g(whic)o(h)f(b)q(eha)o(vior)g(is)165
-2099 y(desired.)100 2165 y(2.)29 b(The)17 b(in)o(ternal)f(function)g
-Fr(rl_completion_matches\(\))e Fs(uses)j(an)g(application-supplied)f
-Fi(gener-)165 2220 y(ator)21 b Fs(function)d(to)g(generate)g(the)h
-(list)e(of)h(p)q(ossible)g(matc)o(hes,)h(and)f(then)h(returns)g(the)f
-(arra)o(y)f(of)165 2275 y(these)j(matc)o(hes.)32 b(The)20
-b(caller)e(should)i(place)f(the)h(address)f(of)h(its)e(generator)h
-(function)g(in)g Fr(rl_)165 2330 y(completion_entry_function)p
-Fs(.)100 2396 y(3.)29 b(The)12 b(generator)e(function)h(is)g(called)g
-(rep)q(eatedly)h(from)f Fr(rl_completion_matches\(\))p
-Fs(,)d(returning)165 2451 y(a)16 b(string)f(eac)o(h)i(time.)22
-b(The)17 b(argumen)o(ts)e(to)h(the)g(generator)f(function)h(are)g
-Fi(text)h Fs(and)g Fi(state)s Fs(.)k Fi(text)165 2506
-y Fs(is)16 b(the)g(partial)e(w)o(ord)h(to)h(b)q(e)h(completed.)22
-b Fi(state)c Fs(is)d(zero)h(the)g(\014rst)g(time)f(the)h(function)g(is)
-g(called,)165 2560 y(allo)o(wing)k(the)i(generator)f(to)g(p)q(erform)h
-(an)o(y)g(necessary)g(initializatio)o(n,)f(and)h(a)g(p)q(ositiv)o(e)f
-(non-)165 2615 y(zero)14 b(in)o(teger)g(for)g(eac)o(h)h(subsequen)o(t)g
-(call.)k(The)c(generator)e(function)i(returns)f Fr(\(char)h(*\)NULL)f
-Fs(to)165 2670 y(inform)k Fr(rl_completion_matches\(\))e
-Fs(that)i(there)h(are)g(no)g(more)g(p)q(ossibilities)e(left.)31
-b(Usually)p eop end
-%%Page: 44 48
-TeXDict begin 44 47 bop 75 -58 a Fs(Chapter)15 b(2:)k(Programming)14
-b(with)g(GNU)h(Readline)842 b(44)165 149 y(the)19 b(generator)g
-(function)g(computes)h(the)f(list)f(of)h(p)q(ossible)g(completions)g
-(when)g Fi(state)j Fs(is)c(zero,)165 204 y(and)13 b(returns)g(them)f
-(one)h(at)f(a)h(time)f(on)h(subsequen)o(t)g(calls.)18
-b(Eac)o(h)13 b(string)e(the)i(generator)f(function)165
-259 y(returns)k(as)f(a)h(matc)o(h)f(m)o(ust)h(b)q(e)g(allo)q(cated)f
-(with)h Fr(malloc\(\))p Fs(;)e(Readline)j(frees)f(the)g(strings)e(when)
-165 314 y(it)i(has)h(\014nished)h(with)e(them.)25 b(Suc)o(h)18
-b(a)e(generator)g(function)h(is)f(referred)h(to)g(as)f(an)h
-Fi(application-)165 369 y(sp)q(eci\014c)f(completion)e(function)p
-Fs(.)1675 461 y([F)l(unction])-1801 b Fg(int)27 b(rl_complete)d
-Ff(\()p Fi(in)o(t)14 b(ignore,)g(in)o(t)h(in)o(v)o(oking)p
-967 461 14 2 v 18 w(k)o(ey)p Ff(\))195 516 y Fs(Complete)g(the)g(w)o
-(ord)g(at)f(or)h(b)q(efore)h(p)q(oin)o(t.)k(Y)l(ou)15
-b(ha)o(v)o(e)g(supplied)h(the)f(function)h(that)e(do)q(es)i(the)195
-571 y(initial)j(simple)h(matc)o(hing)f(selection)h(algorithm)f(\(see)h
-Fr(rl_completion_matches\(\))p Fs(\).)33 b(The)195 626
-y(default)15 b(is)f(to)h(do)g(\014lename)g(completion.)1685
-718 y([V)l(ariable])-1801 b Fg(rl_compentry_func_t)29
-b(*)d(rl_completion_entry_f)q(unction)195 773 y Fs(This)20
-b(is)f(a)h(p)q(oin)o(ter)f(to)g(the)h(generator)g(function)f(for)h
-Fr(rl_completion_matches\(\))p Fs(.)31 b(If)20 b(the)195
-828 y(v)m(alue)12 b(of)g Fr(rl_completion_entry_fun)o(ction)d
-Fs(is)i Fr(NULL)g Fs(then)h(the)g(default)g(\014lename)g(generator)195
-883 y(function,)24 b Fr(rl_filename_completion_f)o(unction\()o(\))p
-Fs(,)d(is)h(used.)42 b(An)23 b Fi(application-sp)q(eci\014c)195
-937 y(completion)10 b(function)g Fs(is)g(a)g(function)h(whose)f
-(address)h(is)f(assigned)g(to)g Fr(rl_completion_entry_)195
-992 y(function)k Fs(and)h(whose)h(return)f(v)m(alues)g(are)g(used)h(to)
-e(generate)h(p)q(ossible)g(completions.)75 1092 y Fh(2.6.2)30
-b(Completion)20 b(F)-5 b(unctions)75 1166 y Fs(Here)15
-b(is)g(the)g(complete)g(list)f(of)h(callable)f(completion)h(functions)g
-(presen)o(t)g(in)g(Readline.)1675 1258 y([F)l(unction])-1801
-b Fg(int)27 b(rl_complete_internal)e Ff(\()p Fi(in)o(t)14
-b(what)p 914 1258 V 20 w(to)p 975 1258 V 19 w(do)p Ff(\))195
-1313 y Fs(Complete)k(the)g(w)o(ord)g(at)f(or)h(b)q(efore)h(p)q(oin)o
-(t.)28 b Fi(what)p 1104 1313 V 20 w(to)p 1165 1313 V
-19 w(do)21 b Fs(sa)o(ys)c(what)h(to)g(do)g(with)g(the)g(com-)195
-1368 y(pletion.)i(A)c(v)m(alue)g(of)f(`)p Fr(?)p Fs(')g(means)g(list)g
-(the)g(p)q(ossible)h(completions.)k(`)p Fr(TAB)p Fs(')14
-b(means)i(do)f(standard)195 1423 y(completion.)20 b(`)p
-Fr(*)p Fs(')15 b(means)g(insert)g(all)g(of)g(the)h(p)q(ossible)f
-(completions.)20 b(`)p Fr(!)p Fs(')15 b(means)g(to)g(displa)o(y)g(all)
-195 1477 y(of)i(the)g(p)q(ossible)g(completions,)f(if)h(there)g(is)g
-(more)g(than)g(one,)g(as)g(w)o(ell)f(as)h(p)q(erforming)g(partial)195
-1532 y(completion.)h(`)p Fr(@)p Fs(')13 b(is)g(similar)f(to)h(`)p
-Fr(!)p Fs(',)g(but)h(p)q(ossible)f(completions)g(are)g(not)g(listed)g
-(if)g(the)h(p)q(ossible)195 1587 y(completions)g(share)h(a)g(common)g
-(pre\014x.)1675 1680 y([F)l(unction])-1801 b Fg(int)27
-b(rl_complete)d Ff(\()p Fi(in)o(t)14 b(ignore,)g(in)o(t)h(in)o(v)o
-(oking)p 967 1680 V 18 w(k)o(ey)p Ff(\))195 1734 y Fs(Complete)20
-b(the)h(w)o(ord)e(at)h(or)g(b)q(efore)h(p)q(oin)o(t.)36
-b(Y)l(ou)21 b(ha)o(v)o(e)f(supplied)h(the)f(function)h(that)f(do)q(es)
-195 1789 y(the)d(initial)d(simple)i(matc)o(hing)g(selection)g
-(algorithm)e(\(see)i Fr(rl_completion_matches\(\))e Fs(and)195
-1844 y Fr(rl_completion_entry_functi)o(on)p Fs(\).)25
-b(The)18 b(default)g(is)f(to)g(do)h(\014lename)g(completion.)27
-b(This)195 1899 y(calls)14 b Fr(rl_complete_internal\(\))e
-Fs(with)j(an)g(argumen)o(t)f(dep)q(ending)j(on)e Fi(in)o(v)o(oking)p
-1659 1899 V 19 w(k)o(ey)t Fs(.)1675 1992 y([F)l(unction])-1801
-b Fg(int)27 b(rl_possible_completions)f Ff(\()p Fi(in)o(t)14
-b(coun)o(t,)h(in)o(t)f(in)o(v)o(oking)p 1269 1992 V 19
-w(k)o(ey)p Ff(\))195 2046 y Fs(List)20 b(the)g(p)q(ossible)g
-(completions.)34 b(See)21 b(description)f(of)g Fr(rl_complete)13
-b(\(\))p Fs(.)35 b(This)20 b(calls)f Fr(rl_)195 2101
-y(complete_internal\(\))13 b Fs(with)h(an)h(argumen)o(t)g(of)f(`)p
-Fr(?)p Fs('.)1675 2194 y([F)l(unction])-1801 b Fg(int)27
-b(rl_insert_completions)f Ff(\()p Fi(in)o(t)14 b(coun)o(t,)g(in)o(t)h
-(in)o(v)o(oking)p 1217 2194 V 18 w(k)o(ey)p Ff(\))195
-2249 y Fs(Insert)i(the)g(list)f(of)g(p)q(ossible)h(completions)e(in)o
-(to)h(the)h(line,)g(deleting)f(the)h(partially-completed)195
-2303 y(w)o(ord.)k(See)c(description)e(of)g Fr(rl_complete\(\))p
-Fs(.)20 b(This)c(calls)f Fr(rl_complete_internal\(\))e
-Fs(with)195 2358 y(an)i(argumen)o(t)g(of)f(`)p Fr(*)p
-Fs('.)1675 2451 y([F)l(unction])-1801 b Fg(int)27 b(rl_completion_mode)
-e Ff(\()p Fi(rl)p 725 2451 V 19 w(command)p 936 2451
-V 20 w(func)p 1040 2451 V 21 w(t)15 b(*cfunc)p Ff(\))195
-2506 y Fs(Returns)26 b(the)f(apppriate)g(v)m(alue)g(to)g(pass)g(to)f
-Fr(rl_complete_internal\(\))f Fs(dep)q(ending)j(on)195
-2560 y(whether)21 b Fi(cfunc)i Fs(w)o(as)d(called)g(t)o(wice)g(in)g
-(succession)h(and)f(the)h(v)m(alues)f(of)g(the)h Fr(show-all-if-)195
-2615 y(ambiguous)13 b Fs(and)g Fr(show-all-if-unmodified)e
-Fs(v)m(ariables.)19 b(Application-sp)q(eci\014c)14 b(completion)195
-2670 y(functions)h(ma)o(y)f(use)i(this)f(function)g(to)f(presen)o(t)h
-(the)h(same)f(in)o(terface)f(as)h Fr(rl_complete\(\))p
-Fs(.)p eop end
-%%Page: 45 49
-TeXDict begin 45 48 bop 75 -58 a Fs(Chapter)15 b(2:)k(Programming)14
-b(with)g(GNU)h(Readline)842 b(45)1675 149 y([F)l(unction])-1801
-b Fg(char)27 b(**)f(rl_completion_matches)g Ff(\()p Fi(const)15
-b(c)o(har)g(*text,)283 204 y(rl)p 317 204 14 2 v 19 w(comp)q(en)o(try)p
-547 204 V 20 w(func)p 651 204 V 21 w(t)f(*en)o(try)p
-831 204 V 20 w(func)p Ff(\))195 259 y Fs(Returns)19 b(an)g(arra)o(y)f
-(of)g(strings)g(whic)o(h)h(is)f(a)h(list)e(of)i(completions)f(for)g
-Fi(text)q Fs(.)30 b(If)20 b(there)e(are)h(no)195 314
-y(completions,)d(returns)i Fr(NULL)p Fs(.)25 b(The)17
-b(\014rst)g(en)o(try)g(in)g(the)g(returned)h(arra)o(y)e(is)h(the)g
-(substitution)195 369 y(for)12 b Fi(text)q Fs(.)19 b(The)13
-b(remaining)g(en)o(tries)f(are)h(the)g(p)q(ossible)g(completions.)18
-b(The)13 b(arra)o(y)f(is)h(terminated)195 423 y(with)i(a)f
-Fr(NULL)h Fs(p)q(oin)o(ter.)195 493 y Fi(en)o(try)p 302
-493 V 20 w(func)23 b Fs(is)c(a)g(function)h(of)f(t)o(w)o(o)g(args,)g
-(and)h(returns)g(a)f Fr(char)c(*)p Fs(.)33 b(The)20 b(\014rst)f
-(argumen)o(t)g(is)195 548 y Fi(text)q Fs(.)32 b(The)19
-b(second)h(is)f(a)g(state)f(argumen)o(t;)i(it)f(is)f(zero)i(on)f(the)g
-(\014rst)g(call,)g(and)g(non-zero)h(on)195 602 y(subsequen)o(t)e
-(calls.)24 b Fi(en)o(try)p 661 602 V 19 w(func)d Fs(returns)16
-b(a)h Fr(NULL)f Fs(p)q(oin)o(ter)h(to)f(the)h(caller)f(when)h(there)g
-(are)g(no)195 657 y(more)e(matc)o(hes.)1675 754 y([F)l(unction])-1801
-b Fg(char)27 b(*)f(rl_filename_completion_)q(functio)q(n)f
-Ff(\()p Fi(const)15 b(c)o(har)g(*text,)f(in)o(t)283 808
-y(state)p Ff(\))195 863 y Fs(A)f(generator)f(function)g(for)h
-(\014lename)g(completion)e(in)i(the)g(general)f(case.)19
-b Fi(text)14 b Fs(is)e(a)h(partial)e(\014le-)195 918
-y(name.)18 b(The)11 b(Bash)g(source)g(is)f(a)h(useful)g(reference)g
-(for)f(writing)f(application-sp)q(eci\014c)i(completion)195
-973 y(functions)k(\(the)g(Bash)g(completion)f(functions)h(call)g(this)f
-(and)i(other)f(Readline)g(functions\).)1675 1069 y([F)l(unction])-1801
-b Fg(char)27 b(*)f(rl_username_completion_)q(functio)q(n)f
-Ff(\()p Fi(const)15 b(c)o(har)g(*text,)f(in)o(t)283 1124
-y(state)p Ff(\))195 1179 y Fs(A)g(completion)g(generator)f(for)h
-(usernames.)19 b Fi(text)c Fs(con)o(tains)e(a)h(partial)f(username)h
-(preceded)i(b)o(y)195 1234 y(a)f(random)g(c)o(haracter)f(\(usually)h(`)
-p Fr(~)p Fs('\).)k(As)c(with)f(all)h(completion)f(generators,)g
-Fi(state)j Fs(is)e(zero)g(on)195 1288 y(the)g(\014rst)g(call)f(and)i
-(non-zero)f(for)g(subsequen)o(t)h(calls.)75 1390 y Fh(2.6.3)30
-b(Completion)20 b(V)-5 b(ariables)1685 1491 y Fs([V)l(ariable])-1801
-b Fg(rl_compentry_func_t)29 b(*)d(rl_completion_entry_f)q(unction)195
-1546 y Fs(A)17 b(p)q(oin)o(ter)f(to)g(the)h(generator)f(function)g(for)
-g Fr(rl_completion_matches\(\))p Fs(.)22 b Fr(NULL)16
-b Fs(means)h(to)195 1600 y(use)f Fr(rl_filename_completion_)o(functio)o
-(n\(\))p Fs(,)c(the)j(default)g(\014lename)g(completer.)1685
-1697 y([V)l(ariable])-1801 b Fg(rl_completion_func_t)29
-b(*)d(rl_attempted_complet)q(ion_fun)q(ction)195 1752
-y Fs(A)17 b(p)q(oin)o(ter)g(to)g(an)g(alternativ)o(e)f(function)h(to)g
-(create)g(matc)o(hes.)26 b(The)18 b(function)f(is)g(called)g(with)195
-1806 y Fi(text)q Fs(,)24 b Fi(start)q Fs(,)e(and)h Fi(end)r
-Fs(.)43 b Fi(start)22 b Fs(and)h Fi(end)i Fs(are)d(indices)h(in)f
-Fr(rl_line_buffer)f Fs(de\014ning)i(the)195 1861 y(b)q(oundaries)c(of)g
-Fi(text)q Fs(,)h(whic)o(h)f(is)f(a)h(c)o(haracter)g(string.)31
-b(If)19 b(this)g(function)g(exists)g(and)g(returns)195
-1916 y Fr(NULL)p Fs(,)h(or)g(if)f(this)h(v)m(ariable)f(is)g(set)h(to)g
-Fr(NULL)p Fs(,)g(then)g Fr(rl_complete\(\))e Fs(will)h(call)g(the)h(v)m
-(alue)g(of)195 1971 y Fr(rl_completion_entry_functi)o(on)11
-b Fs(to)i(generate)g(matc)o(hes,)g(otherwise)g(the)h(arra)o(y)e(of)h
-(strings)195 2026 y(returned)23 b(will)e(b)q(e)i(used.)42
-b(If)22 b(this)g(function)g(sets)g(the)h Fr(rl_attempted_completion_o)o
-(ver)195 2080 y Fs(v)m(ariable)14 b(to)h(a)f(non-zero)h(v)m(alue,)g
-(Readline)h(will)d(not)i(p)q(erform)f(its)h(default)f(completion)g(ev)o
-(en)h(if)195 2135 y(this)g(function)g(returns)g(no)g(matc)o(hes.)1685
-2232 y([V)l(ariable])-1801 b Fg(rl_quote_func_t)28 b(*)f
-(rl_filename_quoting_funct)q(ion)195 2286 y Fs(A)16 b(p)q(oin)o(ter)g
-(to)g(a)g(function)g(that)f(will)g(quote)h(a)g(\014lename)h(in)f(an)g
-(application-sp)q(eci\014c)g(fashion.)195 2341 y(This)j(is)g(called)h
-(if)f(\014lename)g(completion)g(is)g(b)q(eing)h(attempted)f(and)h(one)g
-(of)f(the)h(c)o(haracters)195 2396 y(in)c Fr
-(rl_filename_quote_characters)d Fs(app)q(ears)k(in)f(a)h(completed)f
-(\014lename.)24 b(The)17 b(function)195 2451 y(is)g(called)h(with)f
-Fi(text)q Fs(,)h Fi(matc)o(h)p 719 2451 V 20 w(t)o(yp)q(e)s
-Fs(,)g(and)g Fi(quote)p 1061 2451 V 20 w(p)q(oin)o(ter)s
-Fs(.)28 b(The)18 b Fi(text)g Fs(is)g(the)g(\014lename)g(to)f(b)q(e)195
-2506 y(quoted.)38 b(The)21 b Fi(matc)o(h)p 606 2506 V
-20 w(t)o(yp)q(e)i Fs(is)e(either)g Fr(SINGLE_MATCH)p
-Fs(,)f(if)h(there)g(is)g(only)g(one)g(completion)195
-2560 y(matc)o(h,)15 b(or)g Fr(MULT_MATCH)p Fs(.)20 b(Some)c(functions)f
-(use)h(this)f(to)g(decide)i(whether)f(or)f(not)g(to)g(insert)g(a)195
-2615 y(closing)9 b(quote)i(c)o(haracter.)17 b(The)11
-b Fi(quote)p 876 2615 V 20 w(p)q(oin)o(ter)i Fs(is)d(a)g(p)q(oin)o(ter)
-g(to)g(an)o(y)g(op)q(ening)g(quote)h(c)o(haracter)195
-2670 y(the)k(user)h(t)o(yp)q(ed.)k(Some)15 b(functions)g(c)o(ho)q(ose)g
-(to)g(reset)g(this)f(c)o(haracter.)p eop end
-%%Page: 46 50
-TeXDict begin 46 49 bop 75 -58 a Fs(Chapter)15 b(2:)k(Programming)14
-b(with)g(GNU)h(Readline)842 b(46)1685 149 y([V)l(ariable])-1801
-b Fg(rl_dequote_func_t)29 b(*)d(rl_filename_dequoting_f)q(unction)195
-204 y Fs(A)15 b(p)q(oin)o(ter)f(to)g(a)h(function)f(that)h(will)e(remo)
-o(v)o(e)h(application-sp)q(eci\014c)h(quoting)f(c)o(haracters)g(from)
-195 259 y(a)i(\014lename)g(b)q(efore)h(completion)e(is)h(attempted,)g
-(so)f(those)h(c)o(haracters)g(do)g(not)g(in)o(terfere)g(with)195
-314 y(matc)o(hing)i(the)h(text)g(against)e(names)i(in)g(the)g
-(\014lesystem.)31 b(It)19 b(is)f(called)h(with)f Fi(text)q
-Fs(,)h(the)g(text)195 369 y(of)h(the)h(w)o(ord)g(to)f(b)q(e)h
-(dequoted,)i(and)e Fi(quote)p 1006 369 14 2 v 20 w(c)o(har)s
-Fs(,)g(whic)o(h)g(is)g(the)f(quoting)h(c)o(haracter)f(that)195
-423 y(delimits)15 b(the)h(\014lename)g(\(usually)f(`)p
-Fr(')p Fs(')g(or)h(`)p Fr(")p Fs('\).)21 b(If)c Fi(quote)p
-1185 423 V 19 w(c)o(har)i Fs(is)d(zero,)g(the)g(\014lename)g(w)o(as)f
-(not)195 478 y(in)g(an)g(em)o(b)q(edded)i(string.)1685
-574 y([V)l(ariable])-1801 b Fg(rl_linebuf_func_t)29 b(*)d
-(rl_char_is_quoted_p)195 629 y Fs(A)18 b(p)q(oin)o(ter)g(to)g(a)g
-(function)g(to)g(call)g(that)f(determines)i(whether)f(or)g(not)g(a)g
-(sp)q(eci\014c)i(c)o(haracter)195 684 y(in)d(the)g(line)g(bu\013er)g
-(is)g(quoted,)h(according)e(to)h(whatev)o(er)f(quoting)h(mec)o(hanism)g
-(the)g(program)195 738 y(calling)11 b(Readline)i(uses.)19
-b(The)12 b(function)h(is)e(called)h(with)g(t)o(w)o(o)f(argumen)o(ts:)18
-b Fi(text)q Fs(,)12 b(the)g(text)g(of)g(the)195 793 y(line,)j(and)g
-Fi(index)s Fs(,)g(the)g(index)h(of)f(the)g(c)o(haracter)g(in)g(the)g
-(line.)20 b(It)15 b(is)g(used)g(to)g(decide)h(whether)f(a)195
-848 y(c)o(haracter)f(found)i(in)f Fr(rl_completer_word_break_)o
-(charact)o(ers)d Fs(should)j(b)q(e)h(used)g(to)e(break)195
-903 y(w)o(ords)g(for)h(the)g(completer.)1685 999 y([V)l(ariable])-1801
-b Fg(rl_compignore_func_t)29 b(*)d(rl_ignore_some_compl)q(etions_)q
-(functio)q(n)195 1054 y Fs(This)18 b(function,)i(if)e(de\014ned,)j(is)d
-(called)g(b)o(y)h(the)g(completer)f(when)i(real)e(\014lename)h
-(completion)195 1108 y(is)e(done,)g(after)f(all)g(the)h(matc)o(hing)f
-(names)h(ha)o(v)o(e)g(b)q(een)h(generated.)25 b(It)17
-b(is)g(passed)g(a)g Fr(NULL)f Fs(ter-)195 1163 y(minated)f(arra)o(y)f
-(of)h(matc)o(hes.)20 b(The)c(\014rst)f(elemen)o(t)g(\()p
-Fr(matches[0])p Fs(\))e(is)i(the)h(maximal)e(substring)195
-1218 y(common)g(to)g(all)f(matc)o(hes.)19 b(This)14 b(function)g(can)h
-(re-arrange)f(the)g(list)f(of)h(matc)o(hes)g(as)g(required,)195
-1273 y(but)h(eac)o(h)h(elemen)o(t)f(deleted)g(from)g(the)g(arra)o(y)f
-(m)o(ust)g(b)q(e)i(freed.)1685 1369 y([V)l(ariable])-1801
-b Fg(rl_icppfunc_t)28 b(*)e(rl_directory_completi)q(on_hoo)q(k)195
-1423 y Fs(This)c(function,)i(if)e(de\014ned,)k(is)c(allo)o(w)o(ed)f(to)
-h(mo)q(dify)g(the)h(directory)f(p)q(ortion)g(of)g(\014lenames)195
-1478 y(Readline)c(completes.)26 b(It)17 b(could)h(b)q(e)g(used)g(to)f
-(expand)h(sym)o(b)q(olic)f(links)f(or)h(shell)g(v)m(ariables)g(in)195
-1533 y(pathnames.)35 b(It)20 b(is)f(called)h(with)g(the)g(address)g(of)
-g(a)g(string)f(\(the)h(curren)o(t)g(directory)f(name\))195
-1588 y(as)f(an)h(argumen)o(t,)g(and)g(ma)o(y)f(mo)q(dify)g(that)g
-(string.)30 b(If)19 b(the)g(string)f(is)g(replaced)h(with)f(a)h(new)195
-1643 y(string,)g(the)g(old)g(v)m(alue)g(should)h(b)q(e)f(freed.)33
-b(An)o(y)19 b(mo)q(di\014ed)h(directory)e(name)h(should)g(ha)o(v)o(e)g
-(a)195 1697 y(trailing)c(slash.)27 b(The)17 b(mo)q(di\014ed)h(v)m(alue)
-g(will)e(b)q(e)i(used)g(as)f(part)g(of)g(the)h(completion,)f(replacing)
-195 1752 y(the)f(directory)f(p)q(ortion)g(of)g(the)h(pathname)g(the)g
-(user)g(t)o(yp)q(ed.)22 b(A)o(t)15 b(the)h(least,)f(ev)o(en)h(if)g(no)f
-(other)195 1807 y(expansion)j(is)f(p)q(erformed,)h(this)f(function)h
-(should)g(remo)o(v)o(e)f(an)o(y)g(quote)h(c)o(haracters)f(from)g(the)
-195 1862 y(directory)11 b(name,)h(b)q(ecause)h(its)e(result)g(will)g(b)
-q(e)h(passed)g(directly)f(to)g Fr(opendir\(\))p Fs(.)18
-b(The)12 b(directory)195 1917 y(completion)k(ho)q(ok)g(returns)g(an)h
-(in)o(teger)f(that)f(should)i(b)q(e)g(non-zero)g(if)f(the)h(function)f
-(mo)q(di\014es)195 1971 y(its)f(directory)g(argumen)o(t.)20
-b(The)c(function)f(should)h(not)f(mo)q(dify)g(the)h(directory)f
-(argumen)o(t)g(if)g(it)195 2026 y(returns)g(0.)1685 2122
-y([V)l(ariable])-1801 b Fg(rl_dequote_func_t)29 b(*)d
-(rl_filename_rewrite_hoo)q(k)195 2177 y Fs(If)12 b(non-zero,)h(this)e
-(is)g(the)h(address)g(of)g(a)f(function)h(called)f(when)i(reading)e
-(directory)g(en)o(tries)h(from)195 2232 y(the)f(\014lesystem)f(for)g
-(completion)f(and)i(comparing)f(them)g(to)g(the)h(partial)d(w)o(ord)i
-(to)g(b)q(e)h(completed.)195 2286 y(The)g(function)f(should)h(p)q
-(erform)f(an)o(y)h(necesary)g(application)e(or)h(system-sp)q(eci\014c)h
-(con)o(v)o(ersion)f(on)195 2341 y(the)h(\014lename,)h(suc)o(h)f(as)g
-(con)o(v)o(erting)f(b)q(et)o(w)o(een)h(c)o(haracter)g(sets)g(or)f(con)o
-(v)o(erting)g(from)h(a)f(\014lesystem)195 2396 y(format)16
-b(to)g(a)h(c)o(haracter)f(input)h(format.)24 b(The)17
-b(function)g(tak)o(es)f(t)o(w)o(o)g(argumen)o(ts:)22
-b Fi(fname)s Fs(,)17 b(the)195 2451 y(\014lename)d(to)g(b)q(e)h(con)o
-(v)o(erted,)f(and)g Fi(fnlen)p Fs(,)h(its)e(length)h(in)g(b)o(ytes.)20
-b(It)14 b(m)o(ust)g(either)g(return)g(its)f(\014rst)195
-2506 y(argumen)o(t)i(\(if)f(no)h(con)o(v)o(ersion)g(tak)o(es)g(place\))
-g(or)g(the)g(con)o(v)o(erted)g(\014lename)h(in)f(newly-allo)q(cated)195
-2560 y(memory)l(.)23 b(The)16 b(con)o(v)o(erted)h(form)e(is)h(used)h
-(to)f(compare)g(against)f(the)h(w)o(ord)g(to)f(b)q(e)i(completed,)195
-2615 y(and,)i(if)e(it)h(matc)o(hes,)g(is)g(added)g(to)g(the)g(list)f
-(of)h(matc)o(hes.)28 b(Readline)19 b(will)d(free)j(the)f(allo)q(cated)
-195 2670 y(string.)p eop end
-%%Page: 47 51
-TeXDict begin 47 50 bop 75 -58 a Fs(Chapter)15 b(2:)k(Programming)14
-b(with)g(GNU)h(Readline)842 b(47)1685 149 y([V)l(ariable])-1801
-b Fg(rl_compdisp_func_t)29 b(*)d(rl_completion_display_)q(matches)q
-(_hook)195 204 y Fs(If)11 b(non-zero,)h(then)f(this)g(is)f(the)h
-(address)g(of)g(a)g(function)f(to)h(call)f(when)h(completing)g(a)f(w)o
-(ord)h(w)o(ould)195 259 y(normally)f(displa)o(y)g(the)h(list)f(of)h(p)q
-(ossible)f(matc)o(hes.)18 b(This)11 b(function)g(is)g(called)f(in)h
-(lieu)g(of)g(Readline)195 314 y(displa)o(ying)17 b(the)h(list.)28
-b(It)18 b(tak)o(es)g(three)g(argumen)o(ts:)25 b(\()p
-Fr(char)14 b(**)p Fi(matc)o(hes)r Fs(,)k Fr(int)g Fi(n)o(um)p
-1683 314 14 2 v 20 w(matc)o(hes)r Fs(,)195 369 y Fr(int)13
-b Fi(max)p 368 369 V 19 w(length)p Fs(\))g(where)g Fi(matc)o(hes)i
-Fs(is)e(the)g(arra)o(y)f(of)h(matc)o(hing)f(strings,)g
-Fi(n)o(um)p 1575 369 V 20 w(matc)o(hes)j Fs(is)e(the)195
-423 y(n)o(um)o(b)q(er)i(of)f(strings)f(in)i(that)f(arra)o(y)l(,)f(and)i
-Fi(max)p 1011 423 V 19 w(length)f Fs(is)g(the)h(length)f(of)g(the)h
-(longest)f(string)f(in)195 478 y(that)g(arra)o(y)l(.)19
-b(Readline)14 b(pro)o(vides)g(a)f(con)o(v)o(enience)i(function,)f
-Fr(rl_display_match_list)p Fs(,)d(that)195 533 y(tak)o(es)17
-b(care)g(of)g(doing)g(the)g(displa)o(y)g(to)f(Readline's)i(output)f
-(stream.)26 b(That)16 b(function)i(ma)o(y)e(b)q(e)195
-588 y(called)f(from)f(this)h(ho)q(ok.)1685 684 y([V)l(ariable])-1801
-b Fg(const)27 b(char)g(*)f(rl_basic_word_break_char)q(acters)195
-738 y Fs(The)c(basic)g(list)f(of)h(c)o(haracters)f(that)g(signal)g(a)h
-(break)g(b)q(et)o(w)o(een)g(w)o(ords)g(for)f(the)h(completer)195
-793 y(routine.)29 b(The)19 b(default)f(v)m(alue)h(of)f(this)g(v)m
-(ariable)g(is)g(the)h(c)o(haracters)f(whic)o(h)g(break)h(w)o(ords)f
-(for)195 848 y(completion)c(in)h(Bash:)20 b Fr(")15 b
-(\\t\\n\\"\\\\'`@$><=;|&{\(")p Fs(.)1685 944 y([V)l(ariable])-1801
-b Fg(const)27 b(char)g(*)f(rl_basic_quote_character)q(s)195
-999 y Fs(A)15 b(list)f(of)h(quote)g(c)o(haracters)f(whic)o(h)h(can)h
-(cause)f(a)g(w)o(ord)g(break.)1685 1095 y([V)l(ariable])-1801
-b Fg(const)27 b(char)g(*)f(rl_completer_word_break_)q(charac)q(ters)195
-1149 y Fs(The)33 b(list)e(of)h(c)o(haracters)g(that)f(signal)h(a)g
-(break)g(b)q(et)o(w)o(een)h(w)o(ords)f(for)g Fr(rl_complete_)195
-1204 y(internal\(\))p Fs(.)18 b(The)e(default)f(list)f(is)g(the)i(v)m
-(alue)f(of)g Fr(rl_basic_word_break_chara)o(cters)p Fs(.)1685
-1300 y([V)l(ariable])-1801 b Fg(rl_cpvfunc_t)28 b(*)e
-(rl_completion_word_bre)q(ak_hoo)q(k)195 1355 y Fs(If)16
-b(non-zero,)g(this)f(is)g(the)h(address)g(of)f(a)h(function)f(to)g
-(call)g(when)i(Readline)f(is)f(deciding)h(where)195 1410
-y(to)h(separate)f(w)o(ords)h(for)f(w)o(ord)g(completion.)25
-b(It)18 b(should)f(return)g(a)g(c)o(haracter)f(string)g(lik)o(e)g
-Fr(rl_)195 1465 y(completer_word_break_chara)o(cters)d
-Fs(to)j(b)q(e)h(used)g(to)f(p)q(erform)g(the)h(curren)o(t)f
-(completion.)195 1519 y(The)d(function)f(ma)o(y)f(c)o(ho)q(ose)i(to)f
-(set)g Fr(rl_completer_word_break_)o(charact)o(ers)d
-Fs(itself.)18 b(If)13 b(the)195 1574 y(function)i(returns)g
-Fr(NULL)p Fs(,)f Fr(rl_completer_word_break_chara)o(cters)e
-Fs(is)j(used.)1685 1670 y([V)l(ariable])-1801 b Fg(const)27
-b(char)g(*)f(rl_completer_quote_chara)q(cters)195 1725
-y Fs(A)17 b(list)f(of)g(c)o(haracters)g(whic)o(h)h(can)g(b)q(e)g(used)h
-(to)e(quote)h(a)f(substring)g(of)h(the)g(line.)24 b(Completion)195
-1780 y(o)q(ccurs)13 b(on)h(the)f(en)o(tire)f(substring,)h(and)g(within)
-g(the)g(substring)f Fr(rl_completer_word_break_)195 1834
-y(characters)k Fs(are)h(treated)g(as)h(an)o(y)f(other)g(c)o(haracter,)g
-(unless)h(they)f(also)g(app)q(ear)h(within)f(this)195
-1889 y(list.)1685 1985 y([V)l(ariable])-1801 b Fg(const)27
-b(char)g(*)f(rl_filename_quote_charac)q(ters)195 2040
-y Fs(A)17 b(list)f(of)g(c)o(haracters)g(that)g(cause)h(a)g(\014lename)g
-(to)f(b)q(e)i(quoted)e(b)o(y)h(the)g(completer)g(when)g(they)195
-2095 y(app)q(ear)e(in)g(a)g(completed)g(\014lename.)20
-b(The)c(default)f(is)f(the)i(n)o(ull)e(string.)1685 2191
-y([V)l(ariable])-1801 b Fg(const)27 b(char)g(*)f(rl_special_prefixes)
-195 2245 y Fs(The)14 b(list)f(of)g(c)o(haracters)g(that)g(are)h(w)o
-(ord)f(break)h(c)o(haracters,)f(but)h(should)g(b)q(e)g(left)f(in)h
-Fi(text)g Fs(when)195 2300 y(it)e(is)f(passed)i(to)f(the)g(completion)f
-(function.)19 b(Programs)11 b(can)h(use)h(this)f(to)g(help)g(determine)
-h(what)195 2355 y(kind)i(of)f(completing)g(to)g(do.)19
-b(F)l(or)14 b(instance,)h(Bash)f(sets)h(this)f(v)m(ariable)g(to)g
-Fr(")p Fs($)p Fr(@")g Fs(so)g(that)g(it)g(can)195 2410
-y(complete)h(shell)g(v)m(ariables)f(and)i(hostnames.)1685
-2506 y([V)l(ariable])-1801 b Fg(int)27 b(rl_completion_query_items)195
-2560 y Fs(Up)18 b(to)g(this)f(man)o(y)h(items)f(will)g(b)q(e)i(displa)o
-(y)o(ed)e(in)h(resp)q(onse)h(to)e(a)h(p)q(ossible-completions)f(call.)
-195 2615 y(After)d(that,)f(readline)g(asks)h(the)g(user)g(if)f(she)h
-(is)g(sure)g(she)g(w)o(an)o(ts)f(to)g(see)h(them)g(all.)k(The)c
-(default)195 2670 y(v)m(alue)h(is)g(100.)k(A)c(negativ)o(e)g(v)m(alue)g
-(indicates)g(that)f(Readline)i(should)f(nev)o(er)g(ask)g(the)g(user.)p
-eop end
-%%Page: 48 52
-TeXDict begin 48 51 bop 75 -58 a Fs(Chapter)15 b(2:)k(Programming)14
-b(with)g(GNU)h(Readline)842 b(48)1685 149 y([V)l(ariable])-1801
-b Fg(int)27 b(rl_completion_append_chara)q(cter)195 204
-y Fs(When)17 b(a)f(single)g(completion)g(alternativ)o(e)f(matc)o(hes)h
-(at)g(the)h(end)g(of)f(the)h(command)f(line,)h(this)195
-259 y(c)o(haracter)10 b(is)g(app)q(ended)j(to)d(the)g(inserted)h
-(completion)f(text.)18 b(The)11 b(default)f(is)g(a)h(space)g(c)o
-(haracter)195 314 y(\(`)j('\).)42 b(Setting)22 b(this)g(to)g(the)h(n)o
-(ull)f(c)o(haracter)g(\(`)p Fr(\\0)p Fs('\))f(prev)o(en)o(ts)i(an)o
-(ything)e(b)q(eing)i(app)q(ended)195 369 y(automatically)l(.)29
-b(This)18 b(can)h(b)q(e)h(c)o(hanged)f(in)f(application-sp)q(eci\014c)h
-(completion)f(functions)h(to)195 423 y(pro)o(vide)g(the)h(\\most)f
-(sensible)h(w)o(ord)f(separator)g(c)o(haracter")g(according)g(to)g(an)h
-(application-)195 478 y(sp)q(eci\014c)c(command)f(line)g(syn)o(tax)f
-(sp)q(eci\014cation.)1685 588 y([V)l(ariable])-1801 b
-Fg(int)27 b(rl_completion_suppress_app)q(end)195 643
-y Fs(If)17 b(non-zero,)g Fi(rl)p 475 643 14 2 v 19 w(completion)p
-712 643 V 19 w(app)q(end)p 875 643 V 22 w(c)o(haracter)i
-Fs(is)d(not)g(app)q(ended)i(to)e(matc)o(hes)h(at)f(the)g(end)195
-697 y(of)d(the)h(command)g(line,)f(as)h(describ)q(ed)g(ab)q(o)o(v)o(e.)
-19 b(It)14 b(is)g(set)f(to)g(0)h(b)q(efore)g(an)o(y)f(application-sp)q
-(eci\014c)195 752 y(completion)h(function)h(is)g(called,)f(and)i(ma)o
-(y)e(only)h(b)q(e)h(c)o(hanged)f(within)g(suc)o(h)g(a)g(function.)1685
-862 y([V)l(ariable])-1801 b Fg(int)27 b(rl_completion_quote_charac)q
-(ter)195 917 y Fs(When)18 b(Readline)h(is)e(completing)h(quoted)g
-(text,)g(as)f(delimited)h(b)o(y)g(one)g(of)g(the)g(c)o(haracters)f(in)
-195 971 y Fi(rl)p 229 971 V 19 w(completer)p 443 971
-V 20 w(quote)p 573 971 V 20 w(c)o(haracters)r Fs(,)i(it)f(sets)h(this)g
-(v)m(ariable)g(to)g(the)g(quoting)f(c)o(haracter)h(found.)195
-1026 y(This)c(is)f(set)h(b)q(efore)h(an)o(y)f(application-sp)q
-(eci\014c)g(completion)f(function)h(is)g(called.)1685
-1136 y([V)l(ariable])-1801 b Fg(int)27 b(rl_completion_suppress_quo)q
-(te)195 1191 y Fs(If)16 b(non-zero,)h(Readline)f(do)q(es)h(not)e(app)q
-(end)j(a)d(matc)o(hing)h(quote)g(c)o(haracter)f(when)i(p)q(erforming)
-195 1245 y(completion)11 b(on)h(a)f(quoted)h(string.)18
-b(It)11 b(is)h(set)f(to)g(0)h(b)q(efore)g(an)o(y)f(application-sp)q
-(eci\014c)h(completion)195 1300 y(function)j(is)g(called,)f(and)i(ma)o
-(y)e(only)h(b)q(e)h(c)o(hanged)f(within)g(suc)o(h)g(a)g(function.)1685
-1410 y([V)l(ariable])-1801 b Fg(int)27 b(rl_completion_found_quote)195
-1465 y Fs(When)16 b(Readline)g(is)g(completing)f(quoted)g(text,)h(it)f
-(sets)g(this)g(v)m(ariable)h(to)f(a)g(non-zero)h(v)m(alue)g(if)195
-1519 y(the)11 b(w)o(ord)e(b)q(eing)i(completed)g(con)o(tains)e(or)i(is)
-f(delimited)f(b)o(y)i(an)o(y)f(quoting)g(c)o(haracters,)g(including)195
-1574 y(bac)o(kslashes.)19 b(This)c(is)g(set)g(b)q(efore)g(an)o(y)g
-(application-sp)q(eci\014c)g(completion)f(function)h(is)g(called.)1685
-1684 y([V)l(ariable])-1801 b Fg(int)27 b(rl_completion_mark_symlink)q
-(_dirs)195 1738 y Fs(If)16 b(non-zero,)g(a)g(slash)f(will)g(b)q(e)h
-(app)q(ended)i(to)d(completed)h(\014lenames)g(that)f(are)g(sym)o(b)q
-(olic)h(links)195 1793 y(to)11 b(directory)h(names,)g(sub)s(ject)g(to)f
-(the)i(v)m(alue)f(of)g(the)g(user-settable)f Fi(mark-directories)i
-Fs(v)m(ariable.)195 1848 y(This)g(v)m(ariable)g(exists)g(so)h(that)f
-(application-sp)q(eci\014c)g(completion)g(functions)g(can)h(o)o(v)o
-(erride)f(the)195 1903 y(user's)21 b(global)f(preference)i(\(set)e(via)
-h(the)g Fi(mark-symlink)o(ed-directories)g Fs(Readline)h(v)m(ariable\))
-195 1958 y(if)c(appropriate.)30 b(This)18 b(v)m(ariable)g(is)h(set)f
-(to)g(the)h(user's)g(preference)h(b)q(efore)f(an)o(y)f(application-)195
-2012 y(sp)q(eci\014c)f(completion)e(function)g(is)h(called,)f(so)g
-(unless)h(that)f(function)h(mo)q(di\014es)g(the)g(v)m(alue,)g(the)195
-2067 y(user's)f(preferences)h(are)f(honored.)1685 2177
-y([V)l(ariable])-1801 b Fg(int)27 b(rl_ignore_completion_dupli)q(cates)
-195 2232 y Fs(If)15 b(non-zero,)h(then)f(duplicates)g(in)g(the)g(matc)o
-(hes)g(are)g(remo)o(v)o(ed.)k(The)d(default)f(is)f(1.)1685
-2341 y([V)l(ariable])-1801 b Fg(int)27 b(rl_filename_completion_des)q
-(ired)195 2396 y Fs(Non-zero)16 b(means)g(that)f(the)h(results)f(of)h
-(the)g(matc)o(hes)f(are)h(to)f(b)q(e)i(treated)e(as)g(\014lenames.)22
-b(This)195 2451 y(is)d Fj(always)24 b Fs(zero)c(when)g(completion)f(is)
-h(attempted,)g(and)g(can)g(only)g(b)q(e)h(c)o(hanged)f(within)f(an)195
-2506 y(application-sp)q(eci\014c)g(completion)g(function.)34
-b(If)20 b(it)e(is)i(set)f(to)g(a)h(non-zero)g(v)m(alue)g(b)o(y)f(suc)o
-(h)h(a)195 2560 y(function,)11 b(directory)g(names)g(ha)o(v)o(e)g(a)f
-(slash)h(app)q(ended)i(and)e(Readline)g(attempts)g(to)f(quote)h(com-)
-195 2615 y(pleted)18 b(\014lenames)f(if)g(they)h(con)o(tain)f(an)o(y)g
-(c)o(haracters)f(in)i Fr(rl_filename_quote_charact)o(ers)195
-2670 y Fs(and)d Fr(rl_filename_quoting_desired)d Fs(is)j(set)g(to)f(a)h
-(non-zero)g(v)m(alue.)p eop end
-%%Page: 49 53
-TeXDict begin 49 52 bop 75 -58 a Fs(Chapter)15 b(2:)k(Programming)14
-b(with)g(GNU)h(Readline)842 b(49)1685 149 y([V)l(ariable])-1801
-b Fg(int)27 b(rl_filename_quoting_desire)q(d)195 204
-y Fs(Non-zero)14 b(means)g(that)f(the)i(results)e(of)h(the)g(matc)o
-(hes)f(are)h(to)f(b)q(e)i(quoted)f(using)g(double)g(quotes)195
-259 y(\(or)20 b(an)i(application-sp)q(eci\014c)e(quoting)h(mec)o
-(hanism\))f(if)h(the)g(completed)h(\014lename)f(con)o(tains)195
-314 y(an)o(y)13 b(c)o(haracters)h(in)f Fr(rl_filename_quote_chars)p
-Fs(.)j(This)e(is)f Fj(always)18 b Fs(non-zero)c(when)g(comple-)195
-369 y(tion)f(is)g(attempted,)h(and)g(can)g(only)f(b)q(e)h(c)o(hanged)h
-(within)e(an)g(application-sp)q(eci\014c)h(completion)195
-423 y(function.)k(The)11 b(quoting)f(is)g(e\013ected)g(via)g(a)g(call)g
-(to)g(the)h(function)f(p)q(oin)o(ted)g(to)g(b)o(y)h Fr(rl_filename_)195
-478 y(quoting_function)p Fs(.)1685 570 y([V)l(ariable])-1801
-b Fg(int)27 b(rl_attempted_completion_ov)q(er)195 625
-y Fs(If)47 b(an)g(application-sp)q(eci\014c)g(completion)f(function)h
-(assigned)f(to)h Fr(rl_attempted_)195 680 y(completion_function)24
-b Fs(sets)i(this)g(v)m(ariable)g(to)g(a)g(non-zero)h(v)m(alue,)i
-(Readline)e(will)e(not)195 735 y(p)q(erform)15 b(its)f(default)g
-(\014lename)h(completion)f(ev)o(en)h(if)f(the)h(application's)e
-(completion)h(function)195 790 y(returns)h(no)g(matc)o(hes.)20
-b(It)15 b(should)g(b)q(e)h(set)f(only)g(b)o(y)g(an)g(application's)e
-(completion)i(function.)1685 882 y([V)l(ariable])-1801
-b Fg(int)27 b(rl_sort_completion_matches)195 936 y Fs(If)15
-b(an)g(application)f(sets)g(this)h(v)m(ariable)f(to)g(0,)g(Readline)i
-(will)d(not)i(sort)f(the)h(list)e(of)i(completions)195
-991 y(\(whic)o(h)d(implies)f(that)h(it)f(cannot)h(remo)o(v)o(e)g(an)o
-(y)g(duplicate)g(completions\).)18 b(The)12 b(default)g(v)m(alue)g(is)
-195 1046 y(1,)j(whic)o(h)g(means)h(that)f(Readline)h(will)e(sort)h(the)
-g(completions)g(and,)h(dep)q(ending)g(on)g(the)g(v)m(alue)195
-1101 y(of)f Fr(rl_ignore_completion_dup)o(licates)p Fs(,)c(will)j
-(attempt)g(to)h(remo)o(v)o(e)f(duplicate)h(matc)o(hes.)1685
-1193 y([V)l(ariable])-1801 b Fg(int)27 b(rl_completion_type)195
-1248 y Fs(Set)18 b(to)e(a)i(c)o(haracter)f(describing)g(the)g(t)o(yp)q
-(e)h(of)f(completion)g(Readline)h(is)f(curren)o(tly)g(attempt-)195
-1303 y(ing;)g(see)g(the)f(description)g(of)h Fr
-(rl_complete_internal\(\))c Fs(\(see)k(Section)g(2.6.2)e([Completion)
-195 1357 y(F)l(unctions],)j(page)g(44\))g(for)f(the)i(list)e(of)h(c)o
-(haracters.)28 b(This)18 b(is)g(set)g(to)g(the)g(appropriate)g(v)m
-(alue)195 1412 y(b)q(efore)e(an)o(y)g(application-sp)q(eci\014c)f
-(completion)g(function)h(is)f(called,)g(allo)o(wing)f(suc)o(h)i
-(functions)195 1467 y(to)f(presen)o(t)g(the)g(same)g(in)o(terface)f(as)
-h Fr(rl_complete\(\))p Fs(.)1685 1559 y([V)l(ariable])-1801
-b Fg(int)27 b(rl_completion_invoking_key)195 1614 y Fs(Set)20
-b(to)g(the)h(\014nal)f(c)o(haracter)f(in)i(the)f(k)o(ey)g(sequence)i
-(that)d(in)o(v)o(ok)o(ed)h(one)g(of)g(the)h(completion)195
-1669 y(functions)e(that)f(call)f Fr(rl_complete_internal\(\))p
-Fs(.)28 b(This)18 b(is)h(set)f(to)g(the)h(appropriate)f(v)m(alue)195
-1724 y(b)q(efore)d(an)o(y)g(application-sp)q(eci\014c)g(completion)g
-(function)g(is)f(called.)1685 1816 y([V)l(ariable])-1801
-b Fg(int)27 b(rl_inhibit_completion)195 1870 y Fs(If)14
-b(this)g(v)m(ariable)f(is)h(non-zero,)g(completion)g(is)f(inhibited.)19
-b(The)c(completion)e(c)o(haracter)g(will)g(b)q(e)195
-1925 y(inserted)i(as)g(an)o(y)g(other)g(b)q(ound)h(to)e
-Fr(self-insert)p Fs(.)75 2025 y Fh(2.6.4)30 b(A)21 b(Short)f
-(Completion)g(Example)75 2098 y Fs(Here)15 b(is)f(a)g(small)f
-(application)g(demonstrating)h(the)g(use)h(of)f(the)h(GNU)f(Readline)h
-(library)l(.)k(It)14 b(is)g(called)75 2153 y Fr(fileman)p
-Fs(,)j(and)h(the)g(source)g(co)q(de)g(resides)g(in)f(`)p
-Fr(examples/fileman.c)p Fs('.)25 b(This)17 b(sample)g(application)75
-2208 y(pro)o(vides)c(completion)f(of)g(command)h(names,)g(line)g
-(editing)g(features,)f(and)i(access)f(to)f(the)h(history)g(list.)p
-eop end
-%%Page: 50 54
-TeXDict begin 50 53 bop 75 -58 a Fs(Chapter)15 b(2:)k(Programming)14
-b(with)g(GNU)h(Readline)842 b(50)195 149 y Fe(/*)19 b(fileman.c)d(--)j
-(A)g(tiny)f(applicatio)o(n)e(which)i(demonstrat)o(es)e(how)j(to)f(use)h
-(the)254 193 y(GNU)f(Readline)f(library.)36 b(This)18
-b(applicatio)o(n)e(interactive)o(ly)g(allows)h(users)254
-237 y(to)i(manipulat)o(e)d(files)i(and)h(their)e(modes.)h(*/)195
-324 y(#ifdef)f(HAVE_CONFI)o(G_H)195 367 y(#)39 b(include)17
-b(<config.h)o(>)195 411 y(#endif)195 498 y(#include)g(<sys/typ)o(es.)o
-(h>)195 542 y(#ifdef)g(HAVE_SYS_F)o(ILE)o(_H)195 585
-y(#)39 b(include)17 b(<sys/file)o(.h)o(>)195 629 y(#endif)195
-672 y(#include)g(<sys/sta)o(t.h)o(>)195 760 y(#ifdef)g(HAVE_UNIST)o
-(D_H)195 803 y(#)39 b(include)17 b(<unistd.h)o(>)195
-847 y(#endif)195 934 y(#include)g(<fcntl.h)o(>)195 978
-y(#include)g(<stdio.h)o(>)195 1021 y(#include)g(<errno.h)o(>)195
-1108 y(#if)h(defined)f(\(HAVE_STRI)o(NG_)o(H\))195 1152
-y(#)39 b(include)17 b(<string.h)o(>)195 1196 y(#else)h(/*)h(!HAVE_ST)o
-(RIN)o(G_)o(H)e(*/)195 1239 y(#)39 b(include)17 b(<strings.)o(h>)195
-1283 y(#endif)g(/*)i(!HAVE_STRI)o(NG)o(_H)d(*/)195 1370
-y(#ifdef)h(HAVE_STDLI)o(B_H)195 1413 y(#)39 b(include)17
-b(<stdlib.h)o(>)195 1457 y(#endif)195 1544 y(#include)g(<time.h>)195
-1631 y(#include)g(<readlin)o(e/r)o(ea)o(dli)o(ne.)o(h>)195
-1675 y(#include)g(<readlin)o(e/h)o(is)o(tor)o(y.h)o(>)195
-1762 y(extern)g(char)h(*xmalloc)f(PARAMS\(\(s)o(ize)o(_t)o(\)\);)195
-1849 y(/*)i(The)f(names)g(of)h(functions)d(that)i(actually)f(do)h(the)h
-(manipulat)o(ion)o(.)d(*/)195 1893 y(int)i(com_list)f(PARAMS\(\(c)o
-(har)f(*\)\);)195 1936 y(int)i(com_view)f(PARAMS\(\(c)o(har)f(*\)\);)
-195 1980 y(int)i(com_rename)e(PARAMS\(\(ch)o(ar)g(*\)\);)195
-2024 y(int)i(com_stat)f(PARAMS\(\(c)o(har)f(*\)\);)195
-2067 y(int)i(com_pwd)f(PARAMS\(\(ch)o(ar)f(*\)\);)195
-2111 y(int)i(com_delete)e(PARAMS\(\(ch)o(ar)g(*\)\);)195
-2154 y(int)i(com_help)f(PARAMS\(\(c)o(har)f(*\)\);)195
-2198 y(int)i(com_cd)g(PARAMS\(\(c)o(ha)o(r)f(*\)\);)195
-2242 y(int)h(com_quit)f(PARAMS\(\(c)o(har)f(*\)\);)195
-2329 y(/*)j(A)g(structure)d(which)i(contains)e(information)g(on)j(the)f
-(commands)f(this)h(program)254 2372 y(can)g(understand)o(.)f(*/)195
-2460 y(typedef)g(struct)g({)234 2503 y(char)h(*name;)g(/*)g(User)g
-(printable)f(name)h(of)h(the)f(function.)e(*/)234 2547
-y(rl_icpfunc)o(_t)g(*func;)h(/*)i(Function)e(to)i(call)f(to)h(do)f(the)
-h(job.)f(*/)234 2590 y(char)g(*doc;)g(/*)h(Documenta)o(tio)o(n)d(for)j
-(this)f(function.)36 b(*/)195 2634 y(})19 b(COMMAND;)p
-eop end
-%%Page: 51 55
-TeXDict begin 51 54 bop 75 -58 a Fs(Chapter)15 b(2:)k(Programming)14
-b(with)g(GNU)h(Readline)842 b(51)195 193 y Fe(COMMAND)17
-b(commands[)o(])g(=)i({)234 237 y({)g("cd",)f(com_cd,)f("Change)g(to)i
-(directory)d(DIR")i(},)234 280 y({)h("delete",)e(com_dele)o(te,)f
-("Delete)h(FILE")h(},)234 324 y({)h("help",)e(com_help,)f("Display)h
-(this)h(text")g(},)234 367 y({)h("?",)g(com_help)o(,)e("Synonym)f(for)j
-(`help'")e(},)234 411 y({)i("list",)e(com_list,)f("List)i(files)g(in)h
-(DIR")f(},)234 455 y({)h("ls",)f(com_list,)e("Synonym)h(for)h(`list'")f
-(},)234 498 y({)i("pwd",)f(com_pwd,)e("Print)i(the)g(current)f(working)
-g(directory)o(")g(},)234 542 y({)i("quit",)e(com_quit,)f("Quit)i(using)
-g(Fileman")e(},)234 585 y({)j("rename",)e(com_rena)o(me,)f("Rename)h
-(FILE)h(to)h(NEWNAME")d(},)234 629 y({)j("stat",)e(com_stat,)f("Print)i
-(out)g(statistics)e(on)j(FILE")f(},)234 672 y({)h("view",)e(com_view,)f
-("View)i(the)h(contents)d(of)j(FILE")f(},)234 716 y({)h(\(char)f
-(*\)NULL,)f(\(rl_icpfun)o(c_)o(t)g(*\)NULL,)g(\(char)g(*\)NULL)h(})195
-760 y(};)195 847 y(/*)h(Forward)e(declarati)o(on)o(s.)f(*/)195
-890 y(char)i(*stripwhit)o(e)e(\(\);)195 934 y(COMMAND)h(*find_com)o
-(man)o(d)f(\(\);)195 1021 y(/*)j(The)f(name)g(of)h(this)f(program,)f
-(as)i(taken)e(from)h(argv[0].)f(*/)195 1065 y(char)h(*progname;)195
-1152 y(/*)h(When)f(non-zero,)e(this)i(global)f(means)h(the)h(user)f(is)
-g(done)h(using)e(this)h(program.)f(*/)195 1196 y(int)h(done;)195
-1283 y(char)g(*)195 1326 y(dupstr)f(\(s\))293 1370 y(char)h(*s;)195
-1413 y({)234 1457 y(char)g(*r;)234 1544 y(r)h(=)h(xmalloc)d(\(strlen)f
-(\(s\))j(+)g(1\);)234 1588 y(strcpy)f(\(r,)g(s\);)234
-1631 y(return)g(\(r\);)195 1675 y(})195 1762 y(main)g(\(argc,)f(argv\))
-293 1806 y(int)i(argc;)293 1849 y(char)f(**argv;)195
-1893 y({)234 1936 y(char)g(*line,)g(*s;)234 2024 y(progname)f(=)i
-(argv[0];)234 2111 y(initialize)o(_re)o(ad)o(lin)o(e)d(\(\);)j(/*)g
-(Bind)f(our)g(completer.)e(*/)234 2198 y(/*)j(Loop)f(reading)f(and)h
-(executing)f(lines)g(until)h(the)g(user)h(quits.)e(*/)234
-2242 y(for)i(\()g(;)g(done)f(==)h(0;)g(\))273 2285 y({)313
-2329 y(line)f(=)h(readline)d(\("FileMan:)g("\);)313 2416
-y(if)j(\(!line\))352 2460 y(break;)313 2547 y(/*)g(Remove)e(leading)g
-(and)h(trailing)f(whitespac)o(e)f(from)j(the)f(line.)372
-2590 y(Then,)f(if)i(there)f(is)h(anything)d(left,)i(add)g(it)h(to)g
-(the)f(history)f(list)372 2634 y(and)h(execute)f(it.)h(*/)p
-eop end
-%%Page: 52 56
-TeXDict begin 52 55 bop 75 -58 a Fs(Chapter)15 b(2:)k(Programming)14
-b(with)g(GNU)h(Readline)842 b(52)313 149 y Fe(s)19 b(=)g(stripwhite)d
-(\(line\);)313 237 y(if)j(\(*s\))352 280 y({)391 324
-y(add_histor)o(y)d(\(s\);)391 367 y(execute_li)o(ne)g(\(s\);)352
-411 y(})313 498 y(free)i(\(line\);)273 542 y(})234 585
-y(exit)g(\(0\);)195 629 y(})195 716 y(/*)h(Execute)e(a)i(command)e
-(line.)h(*/)195 760 y(int)195 803 y(execute_li)o(ne)e(\(line\))293
-847 y(char)i(*line;)195 890 y({)234 934 y(register)f(int)h(i;)234
-978 y(COMMAND)f(*command;)234 1021 y(char)h(*word;)234
-1108 y(/*)h(Isolate)e(the)h(command)f(word.)h(*/)234
-1152 y(i)h(=)h(0;)234 1196 y(while)e(\(line[i])e(&&)j(whitespace)d
-(\(line[i]\)\))273 1239 y(i++;)234 1283 y(word)i(=)i(line)e(+)h(i;)234
-1370 y(while)f(\(line[i])e(&&)j(!whitespac)o(e)e(\(line[i]\))o(\))273
-1413 y(i++;)234 1501 y(if)i(\(line[i]\))273 1544 y(line[i++])e(=)i
-('\\0';)234 1631 y(command)e(=)i(find_comma)o(nd)d(\(word\);)234
-1719 y(if)j(\(!command\))273 1762 y({)313 1806 y(fprintf)e(\(stderr,)f
-("\045s:)i(No)h(such)f(command)f(for)h(FileMan.\\n")o(,)e(word\);)313
-1849 y(return)h(\(-1\);)273 1893 y(})234 1980 y(/*)i(Get)g(argument)d
-(to)j(command,)d(if)j(any.)f(*/)234 2024 y(while)g(\(whitespa)o(ce)e
-(\(line[i]\)\))273 2067 y(i++;)234 2154 y(word)i(=)i(line)e(+)h(i;)234
-2242 y(/*)g(Call)f(the)h(function)o(.)e(*/)234 2285 y(return)h
-(\(\(*\(comm)o(and)o(->)o(fun)o(c\)\))e(\(word\)\);)195
-2329 y(})195 2416 y(/*)j(Look)f(up)h(NAME)f(as)h(the)f(name)g(of)h(a)g
-(command,)e(and)h(return)g(a)h(pointer)e(to)i(that)254
-2460 y(command.)36 b(Return)17 b(a)i(NULL)g(pointer)d(if)j(NAME)f
-(isn't)g(a)h(command)e(name.)h(*/)195 2503 y(COMMAND)f(*)195
-2547 y(find_comma)o(nd)f(\(name\))293 2590 y(char)i(*name;)195
-2634 y({)p eop end
-%%Page: 53 57
-TeXDict begin 53 56 bop 75 -58 a Fs(Chapter)15 b(2:)k(Programming)14
-b(with)g(GNU)h(Readline)842 b(53)234 149 y Fe(register)17
-b(int)h(i;)234 237 y(for)h(\(i)g(=)g(0;)g(commands)o([i])o(.na)o(me)o
-(;)e(i++\))273 280 y(if)i(\(strcmp)e(\(name,)g(commands[i])o(.n)o(ame)o
-(\))g(==)h(0\))313 324 y(return)f(\(&command)o(s[i)o(]\);)234
-411 y(return)h(\(\(COMMAN)o(D)f(*\)NULL\);)195 455 y(})195
-542 y(/*)i(Strip)f(whitespa)o(ce)e(from)i(the)h(start)e(and)i(end)f(of)
-h(STRING.)37 b(Return)17 b(a)i(pointer)254 585 y(into)f(STRING.)f(*/)
-195 629 y(char)h(*)195 672 y(stripwhite)e(\(string\))293
-716 y(char)i(*string;)195 760 y({)234 803 y(register)f(char)h(*s,)g
-(*t;)234 890 y(for)h(\(s)g(=)g(string;)e(whitespac)o(e)f(\(*s\);)i
-(s++\))273 934 y(;)234 1021 y(if)h(\(*s)g(==)f(0\))273
-1065 y(return)g(\(s\);)234 1152 y(t)h(=)h(s)f(+)g(strlen)e(\(s\))i(-)g
-(1;)234 1196 y(while)f(\(t)h(>)g(s)g(&&)g(whitespace)d(\(*t\)\))273
-1239 y(t--;)234 1283 y(*++t)i(=)i('\\0';)234 1370 y(return)e(s;)195
-1413 y(})195 1501 y(/*)h(*********)o(***)o(**)o(***)o(**)o(***)o(***)o
-(**)o(***)o(**)o(***)o(***)o(**)o(***)o(**)o(***)o(***)o(**)o(***)o(**)
-o(***)o(***)d(*/)195 1544 y(/*)1294 b(*/)195 1588 y(/*)352
-b(Interface)16 b(to)j(Readline)e(Completio)o(n)311 b(*/)195
-1631 y(/*)1294 b(*/)195 1675 y(/*)19 b(*********)o(***)o(**)o(***)o(**)
-o(***)o(***)o(**)o(***)o(**)o(***)o(***)o(**)o(***)o(**)o(***)o(***)o
-(**)o(***)o(**)o(***)o(***)d(*/)195 1762 y(char)i(*command_g)o(en)o
-(era)o(to)o(r)f(PARAMS\(\(c)o(on)o(st)f(char)i(*,)h(int\)\);)195
-1806 y(char)f(**fileman_)o(co)o(mpl)o(et)o(ion)e(PARAMS\(\(c)o(ons)o(t)
-h(char)h(*,)g(int,)h(int\)\);)195 1893 y(/*)g(Tell)f(the)g(GNU)h
-(Readline)d(library)h(how)i(to)g(complete)o(.)36 b(We)19
-b(want)f(to)h(try)g(to)f(complete)254 1936 y(on)h(command)e(names)g(if)
-i(this)f(is)h(the)f(first)g(word)g(in)h(the)g(line,)e(or)i(on)g
-(filenames)254 1980 y(if)g(not.)f(*/)195 2024 y(initialize)o(_r)o(ead)o
-(li)o(ne)e(\(\))195 2067 y({)234 2111 y(/*)j(Allow)f(condition)o(al)e
-(parsing)h(of)i(the)f(~/.inputrc)e(file.)i(*/)234 2154
-y(rl_readlin)o(e_n)o(am)o(e)f(=)i("FileMan")o(;)234 2242
-y(/*)g(Tell)f(the)h(complete)o(r)e(that)h(we)h(want)f(a)h(crack)f
-(first.)f(*/)234 2285 y(rl_attempt)o(ed_)o(co)o(mpl)o(et)o(ion)o(_fu)o
-(nc)o(tio)o(n)f(=)k(fileman_c)o(om)o(ple)o(tio)o(n;)195
-2329 y(})195 2416 y(/*)f(Attempt)e(to)i(complete)d(on)j(the)f(contents)
-f(of)i(TEXT.)37 b(START)18 b(and)g(END)h(bound)e(the)254
-2460 y(region)g(of)i(rl_line_b)o(uff)o(er)d(that)i(contains)f(the)h
-(word)g(to)h(complete.)36 b(TEXT)18 b(is)254 2503 y(the)g(word)g(to)h
-(complete.)36 b(We)19 b(can)f(use)h(the)f(entire)f(contents)g(of)i
-(rl_line_b)o(uff)o(er)254 2547 y(in)g(case)f(we)h(want)f(to)g(do)h
-(some)f(simple)g(parsing.)36 b(Return)17 b(the)i(array)e(of)i(matches,)
-254 2590 y(or)g(NULL)f(if)h(there)e(aren't)h(any.)g(*/)195
-2634 y(char)g(**)p eop end
-%%Page: 54 58
-TeXDict begin 54 57 bop 75 -58 a Fs(Chapter)15 b(2:)k(Programming)14
-b(with)g(GNU)h(Readline)842 b(54)195 149 y Fe(fileman_co)o(mp)o(let)o
-(io)o(n)17 b(\(text,)g(start,)g(end\))293 193 y(const)h(char)g(*text;)
-293 237 y(int)h(start,)e(end;)195 280 y({)234 324 y(char)h(**matches;)
-234 411 y(matches)f(=)i(\(char)f(**\)NULL;)234 498 y(/*)h(If)g(this)f
-(word)g(is)h(at)g(the)f(start)g(of)h(the)f(line,)g(then)g(it)h(is)g(a)g
-(command)293 542 y(to)g(complete.)36 b(Otherwise)16 b(it)j(is)f(the)h
-(name)f(of)h(a)g(file)f(in)h(the)f(current)293 585 y(directory.)e(*/)
-234 629 y(if)j(\(start)e(==)i(0\))273 672 y(matches)e(=)j(rl_compl)o
-(eti)o(on_)o(ma)o(tch)o(es)c(\(text,)h(command_gen)o(er)o(ato)o(r\))o
-(;)234 760 y(return)h(\(matches)o(\);)195 803 y(})195
-890 y(/*)h(Generator)d(function)g(for)j(command)e(completio)o(n.)36
-b(STATE)18 b(lets)g(us)g(know)h(whether)254 934 y(to)g(start)e(from)h
-(scratch;)f(without)g(any)h(state)g(\(i.e.)g(STATE)f(==)i(0\),)g(then)f
-(we)254 978 y(start)g(at)g(the)h(top)f(of)h(the)g(list.)e(*/)195
-1021 y(char)h(*)195 1065 y(command_ge)o(ne)o(rat)o(or)e(\(text,)h
-(state\))293 1108 y(const)h(char)g(*text;)293 1152 y(int)h(state;)195
-1196 y({)234 1239 y(static)f(int)g(list_inde)o(x,)e(len;)234
-1283 y(char)i(*name;)234 1370 y(/*)h(If)g(this)f(is)h(a)g(new)f(word)h
-(to)f(complete,)f(initiali)o(ze)f(now.)38 b(This)18 b(includes)293
-1413 y(saving)f(the)i(length)e(of)i(TEXT)f(for)g(efficiency,)e(and)i
-(initializi)o(ng)e(the)j(index)293 1457 y(variable)e(to)h(0.)h(*/)234
-1501 y(if)g(\(!state\))273 1544 y({)313 1588 y(list_inde)o(x)d(=)k(0;)
-313 1631 y(len)e(=)h(strlen)f(\(text\);)273 1675 y(})234
-1762 y(/*)h(Return)e(the)i(next)f(name)g(which)g(partially)e(matches)h
-(from)h(the)g(command)f(list.)h(*/)234 1806 y(while)g(\(name)g(=)h
-(commands[)o(lis)o(t_)o(ind)o(ex)o(].n)o(ame)o(\))273
-1849 y({)313 1893 y(list_inde)o(x+)o(+;)313 1980 y(if)g(\(strncmp)d
-(\(name,)h(text,)h(len\))g(==)h(0\))352 2024 y(return)e(\(dupstr\(na)o
-(me\))o(\);)273 2067 y(})234 2154 y(/*)i(If)g(no)g(names)e(matched,)g
-(then)h(return)f(NULL.)h(*/)234 2198 y(return)g(\(\(char)f(*\)NULL\);)
-195 2242 y(})195 2329 y(/*)i(*********)o(***)o(**)o(***)o(**)o(***)o
-(***)o(**)o(***)o(**)o(***)o(***)o(**)o(***)o(**)o(***)o(***)o(**)o
-(***)o(**)o(***)o(***)d(*/)195 2372 y(/*)1294 b(*/)195
-2416 y(/*)450 b(FileMan)17 b(Commands)527 b(*/)195 2460
-y(/*)1294 b(*/)195 2503 y(/*)19 b(*********)o(***)o(**)o(***)o(**)o
-(***)o(***)o(**)o(***)o(**)o(***)o(***)o(**)o(***)o(**)o(***)o(***)o
-(**)o(***)o(**)o(***)o(***)d(*/)195 2590 y(/*)j(String)e(to)i(pass)f
-(to)h(system)e(\(\).)38 b(This)18 b(is)h(for)g(the)f(LIST,)g(VIEW)g
-(and)g(RENAME)254 2634 y(commands.)e(*/)p eop end
-%%Page: 55 59
-TeXDict begin 55 58 bop 75 -58 a Fs(Chapter)15 b(2:)k(Programming)14
-b(with)g(GNU)h(Readline)842 b(55)195 149 y Fe(static)17
-b(char)h(syscom[102)o(4];)195 237 y(/*)h(List)f(the)g(file\(s\))f
-(named)h(in)h(arg.)f(*/)195 280 y(com_list)f(\(arg\))293
-324 y(char)h(*arg;)195 367 y({)234 411 y(if)h(\(!arg\))273
-455 y(arg)g(=)g("";)234 542 y(sprintf)e(\(syscom,)g("ls)h(-FClg)g
-(\045s",)g(arg\);)234 585 y(return)g(\(system)e(\(syscom\)\);)195
-629 y(})195 716 y(com_view)h(\(arg\))293 760 y(char)h(*arg;)195
-803 y({)234 847 y(if)h(\(!valid_ar)o(gu)o(men)o(t)d(\("view",)h
-(arg\)\))273 890 y(return)h(1;)195 978 y(#if)g(defined)f(\(__MSDOS__)o
-(\))234 1021 y(/*)i(more.com)e(doesn't)f(grok)j(slashes)d(in)j
-(pathnames)d(*/)234 1065 y(sprintf)h(\(syscom,)g("less)g(\045s",)h
-(arg\);)195 1108 y(#else)234 1152 y(sprintf)f(\(syscom,)g("more)g
-(\045s",)h(arg\);)195 1196 y(#endif)234 1239 y(return)g(\(system)e
-(\(syscom\)\);)195 1283 y(})195 1370 y(com_rename)g(\(arg\))293
-1413 y(char)i(*arg;)195 1457 y({)234 1501 y(too_danger)o(ous)e
-(\("rename")o(\);)234 1544 y(return)i(\(1\);)195 1588
-y(})195 1675 y(com_stat)f(\(arg\))293 1719 y(char)h(*arg;)195
-1762 y({)234 1806 y(struct)g(stat)g(finfo;)234 1893 y(if)h(\(!valid_ar)
-o(gu)o(men)o(t)d(\("stat",)h(arg\)\))273 1936 y(return)h(\(1\);)234
-2024 y(if)h(\(stat)f(\(arg,)f(&finfo\))g(==)i(-1\))273
-2067 y({)313 2111 y(perror)e(\(arg\);)313 2154 y(return)g(\(1\);)273
-2198 y(})234 2285 y(printf)h(\("Statis)o(tic)o(s)e(for)j(`\045s':\\n",)
-d(arg\);)234 2372 y(printf)i(\("\045s)g(has)g(\045d)h(link\045s,)e(and)
-h(is)h(\045d)g(byte\045s)e(in)i(length.\\n")o(,)234 2416
-y(arg,)391 2460 y(finfo.st_n)o(li)o(nk,)391 2503 y(\(finfo.st_)o(nl)o
-(ink)d(==)j(1\))g(?)g("")g(:)g("s",)391 2547 y(finfo.st_s)o(iz)o(e,)391
-2590 y(\(finfo.st_)o(si)o(ze)d(==)j(1\))g(?)g("")g(:)g("s"\);)234
-2634 y(printf)f(\("Inode)e(Last)i(Change)g(at:)g(\045s",)g(ctime)g
-(\(&finfo.st)o(_c)o(tim)o(e\))o(\);)p eop end
-%%Page: 56 60
-TeXDict begin 56 59 bop 75 -58 a Fs(Chapter)15 b(2:)k(Programming)14
-b(with)g(GNU)h(Readline)842 b(56)234 149 y Fe(printf)18
-b(\(")116 b(Last)18 b(access)g(at:)g(\045s",)g(ctime)g(\(&finfo.st)o
-(_a)o(tim)o(e\))o(\);)234 193 y(printf)g(\(")77 b(Last)18
-b(modified)f(at:)h(\045s",)g(ctime)g(\(&finfo.st)o(_m)o(tim)o(e\))o
-(\);)234 237 y(return)g(\(0\);)195 280 y(})195 367 y(com_delete)e
-(\(arg\))293 411 y(char)i(*arg;)195 455 y({)234 498 y(too_danger)o(ous)
-e(\("delete")o(\);)234 542 y(return)i(\(1\);)195 585
-y(})195 672 y(/*)h(Print)f(out)g(help)g(for)g(ARG,)h(or)f(for)h(all)f
-(of)h(the)g(commands)d(if)j(ARG)f(is)254 716 y(not)g(present.)f(*/)195
-760 y(com_help)g(\(arg\))293 803 y(char)h(*arg;)195 847
-y({)234 890 y(register)f(int)h(i;)234 934 y(int)h(printed)e(=)i(0;)234
-1021 y(for)g(\(i)g(=)g(0;)g(commands)o([i])o(.na)o(me)o(;)e(i++\))273
-1065 y({)313 1108 y(if)i(\(!*arg)e(||)i(\(strcmp)e(\(arg,)g(commands[i)
-o(].n)o(am)o(e\))f(==)j(0\)\))352 1152 y({)391 1196 y(printf)e
-(\("\045s\\t\\t\045s.)o(\\n)o(",)f(commands[i)o(].n)o(am)o(e,)g
-(commands[i)o(].d)o(oc\))o(;)391 1239 y(printed++;)352
-1283 y(})273 1326 y(})234 1413 y(if)j(\(!printed\))273
-1457 y({)313 1501 y(printf)e(\("No)h(commands)f(match)g(`\045s'.)38
-b(Possibil)o(tie)o(s)17 b(are:\\n",)f(arg\);)313 1588
-y(for)i(\(i)h(=)g(0;)g(commands[i)o(].)o(nam)o(e;)d(i++\))352
-1631 y({)391 1675 y(/*)j(Print)f(in)g(six)h(columns.)d(*/)391
-1719 y(if)j(\(printed)d(==)j(6\))430 1762 y({)470 1806
-y(printed)d(=)k(0;)470 1849 y(printf)d(\("\\n"\);)430
-1893 y(})391 1980 y(printf)g(\("\045s\\t",)g(commands[)o(i].)o(nam)o
-(e\))o(;)391 2024 y(printed++;)352 2067 y(})313 2154
-y(if)i(\(printed)o(\))352 2198 y(printf)e(\("\\n"\);)273
-2242 y(})234 2285 y(return)h(\(0\);)195 2329 y(})195
-2416 y(/*)h(Change)e(to)i(the)f(directory)f(ARG.)h(*/)195
-2460 y(com_cd)f(\(arg\))293 2503 y(char)h(*arg;)195 2547
-y({)234 2590 y(if)h(\(chdir)e(\(arg\))h(==)h(-1\))273
-2634 y({)p eop end
-%%Page: 57 61
-TeXDict begin 57 60 bop 75 -58 a Fs(Chapter)15 b(2:)k(Programming)14
-b(with)g(GNU)h(Readline)842 b(57)313 149 y Fe(perror)17
-b(\(arg\);)313 193 y(return)g(1;)273 237 y(})234 324
-y(com_pwd)g(\(""\);)234 367 y(return)h(\(0\);)195 411
-y(})195 498 y(/*)h(Print)f(out)g(the)g(current)f(working)g(directory.)f
-(*/)195 542 y(com_pwd)h(\(ignore\))293 585 y(char)h(*ignore;)195
-629 y({)234 672 y(char)g(dir[1024],)e(*s;)234 760 y(s)j(=)h(getcwd)d
-(\(dir,)h(sizeof\(di)o(r\))e(-)j(1\);)234 803 y(if)g(\(s)g(==)g(0\))273
-847 y({)313 890 y(printf)e(\("Error)g(getting)g(pwd:)h(\045s\\n",)f
-(dir\);)313 934 y(return)g(1;)273 978 y(})234 1065 y(printf)h
-(\("Curren)o(t)f(directory)f(is)j(\045s\\n",)e(dir\);)234
-1108 y(return)h(0;)195 1152 y(})195 1239 y(/*)h(The)f(user)g(wishes)g
-(to)g(quit)h(using)e(this)h(program.)36 b(Just)19 b(set)f(DONE)g
-(non-zero.)e(*/)195 1283 y(com_quit)h(\(arg\))293 1326
-y(char)h(*arg;)195 1370 y({)234 1413 y(done)g(=)i(1;)234
-1457 y(return)e(\(0\);)195 1501 y(})195 1588 y(/*)h(Function)d(which)i
-(tells)g(you)g(that)g(you)h(can't)e(do)i(this.)f(*/)195
-1631 y(too_danger)o(ou)o(s)f(\(caller\))293 1675 y(char)h(*caller;)195
-1719 y({)234 1762 y(fprintf)f(\(stderr,)411 1806 y("\045s:)h(Too)g
-(dangerous)e(for)j(me)g(to)g(distribu)o(te.)36 b(Write)17
-b(it)i(yourself.\\)o(n")o(,)411 1849 y(caller\);)195
-1893 y(})195 1980 y(/*)g(Return)e(non-zero)g(if)h(ARG)h(is)g(a)g(valid)
-f(argument)e(for)j(CALLER,)e(else)h(print)254 2024 y(an)h(error)e
-(message)g(and)i(return)e(zero.)h(*/)195 2067 y(int)195
-2111 y(valid_argu)o(me)o(nt)e(\(caller,)h(arg\))293 2154
-y(char)h(*caller,)f(*arg;)195 2198 y({)234 2242 y(if)i(\(!arg)f(||)h
-(!*arg\))273 2285 y({)313 2329 y(fprintf)e(\(stderr,)f("\045s:)i
-(Argument)f(required.)o(\\n)o(",)f(caller\);)313 2372
-y(return)h(\(0\);)273 2416 y(})234 2503 y(return)h(\(1\);)195
-2547 y(})p eop end
-%%Page: 58 62
-TeXDict begin 58 61 bop 75 -58 a Fs(App)q(endix)16 b(A:)f(GNU)g(F)l
-(ree)g(Do)q(cumen)o(tation)g(License)802 b(58)75 149
-y Fo(App)r(endix)26 b(A)41 b(GNU)27 b(F)-7 b(ree)26 b(Do)r(cumen)n
-(tation)j(License)679 251 y Fs(V)l(ersion)15 b(1.3,)f(3)h(No)o(v)o(em)o
-(b)q(er)g(2008)195 318 y(Cop)o(yrigh)o(t)421 317 y(c)409
-318 y Fp(\015)g Fs(2000,)f(2001,)f(2002,)h(2007,)g(2008)g(F)l(ree)h
-(Soft)o(w)o(are)f(F)l(oundation,)g(Inc.)195 373 y Fr(http://fsf.org/)
-195 482 y Fs(Ev)o(ery)o(one)h(is)f(p)q(ermitted)h(to)g(cop)o(y)g(and)g
-(distribute)g(v)o(erbatim)f(copies)195 537 y(of)h(this)f(license)i(do)q
-(cumen)o(t,)f(but)g(c)o(hanging)g(it)f(is)h(not)g(allo)o(w)o(ed.)100
-603 y(0.)29 b(PREAMBLE)165 670 y(The)19 b(purp)q(ose)g(of)f(this)g
-(License)i(is)e(to)g(mak)o(e)g(a)g(man)o(ual,)g(textb)q(o)q(ok,)h(or)f
-(other)g(functional)g(and)165 725 y(useful)d(do)q(cumen)o(t)h
-Fi(free)h Fs(in)e(the)g(sense)h(of)f(freedom:)k(to)c(assure)g(ev)o(ery)
-o(one)f(the)i(e\013ectiv)o(e)e(freedom)165 780 y(to)h(cop)o(y)h(and)g
-(redistribute)f(it,)f(with)h(or)g(without)g(mo)q(difying)g(it,)g
-(either)g(commercially)f(or)i(non-)165 834 y(commercially)l(.)25
-b(Secondarily)l(,)17 b(this)g(License)h(preserv)o(es)f(for)g(the)g
-(author)g(and)h(publisher)f(a)g(w)o(a)o(y)165 889 y(to)g(get)h(credit)g
-(for)f(their)h(w)o(ork,)f(while)h(not)g(b)q(eing)g(considered)g(resp)q
-(onsible)g(for)g(mo)q(di\014cations)165 944 y(made)d(b)o(y)g(others.)
-165 1010 y(This)c(License)i(is)e(a)g(kind)h(of)f(\\cop)o(yleft",)f
-(whic)o(h)i(means)f(that)g(deriv)m(ativ)o(e)g(w)o(orks)g(of)g(the)h(do)
-q(cumen)o(t)165 1065 y(m)o(ust)k(themselv)o(es)h(b)q(e)h(free)e(in)h
-(the)g(same)g(sense.)26 b(It)16 b(complemen)o(ts)h(the)g(GNU)g(General)
-f(Public)165 1120 y(License,)g(whic)o(h)f(is)f(a)h(cop)o(yleft)g
-(license)g(designed)g(for)g(free)g(soft)o(w)o(are.)165
-1187 y(W)l(e)g(ha)o(v)o(e)f(designed)h(this)g(License)g(in)g(order)f
-(to)g(use)h(it)f(for)h(man)o(uals)e(for)h(free)h(soft)o(w)o(are,)e(b)q
-(ecause)165 1241 y(free)21 b(soft)o(w)o(are)e(needs)j(free)f(do)q
-(cumen)o(tation:)31 b(a)21 b(free)g(program)f(should)h(come)g(with)g
-(man)o(uals)165 1296 y(pro)o(viding)13 b(the)i(same)f(freedoms)g(that)g
-(the)g(soft)o(w)o(are)f(do)q(es.)20 b(But)14 b(this)g(License)h(is)f
-(not)g(limited)g(to)165 1351 y(soft)o(w)o(are)g(man)o(uals;)g(it)g(can)
-i(b)q(e)g(used)g(for)e(an)o(y)h(textual)g(w)o(ork,)f(regardless)g(of)h
-(sub)s(ject)g(matter)f(or)165 1406 y(whether)i(it)f(is)g(published)h
-(as)g(a)f(prin)o(ted)h(b)q(o)q(ok.)21 b(W)l(e)16 b(recommend)g(this)f
-(License)i(principally)e(for)165 1461 y(w)o(orks)f(whose)h(purp)q(ose)h
-(is)f(instruction)f(or)h(reference.)100 1527 y(1.)29
-b(APPLICABILITY)17 b(AND)e(DEFINITIONS)165 1594 y(This)20
-b(License)g(applies)g(to)f(an)o(y)h(man)o(ual)f(or)g(other)h(w)o(ork,)g
-(in)g(an)o(y)f(medium,)i(that)e(con)o(tains)g(a)165 1648
-y(notice)h(placed)h(b)o(y)g(the)g(cop)o(yrigh)o(t)e(holder)i(sa)o(ying)
-f(it)g(can)h(b)q(e)g(distributed)f(under)i(the)f(terms)165
-1703 y(of)d(this)g(License.)32 b(Suc)o(h)19 b(a)g(notice)f(gran)o(ts)f
-(a)i(w)o(orld-wide,)f(ro)o(y)o(alt)o(y-free)f(license,)i(unlimited)f
-(in)165 1758 y(duration,)23 b(to)f(use)h(that)f(w)o(ork)g(under)h(the)g
-(conditions)f(stated)g(herein.)42 b(The)23 b(\\Do)q(cumen)o(t",)165
-1813 y(b)q(elo)o(w,)14 b(refers)g(to)f(an)o(y)h(suc)o(h)g(man)o(ual)g
-(or)f(w)o(ork.)19 b(An)o(y)14 b(mem)o(b)q(er)h(of)e(the)i(public)f(is)g
-(a)g(licensee,)g(and)165 1868 y(is)e(addressed)h(as)f(\\y)o(ou".)18
-b(Y)l(ou)13 b(accept)g(the)f(license)h(if)f(y)o(ou)g(cop)o(y)l(,)h(mo)q
-(dify)f(or)g(distribute)f(the)i(w)o(ork)165 1922 y(in)i(a)g(w)o(a)o(y)f
-(requiring)h(p)q(ermission)f(under)i(cop)o(yrigh)o(t)e(la)o(w.)165
-1989 y(A)j(\\Mo)q(di\014ed)g(V)l(ersion")f(of)g(the)h(Do)q(cumen)o(t)g
-(means)g(an)o(y)f(w)o(ork)g(con)o(taining)g(the)h(Do)q(cumen)o(t)f(or)
-165 2044 y(a)i(p)q(ortion)g(of)h(it,)f(either)h(copied)g(v)o(erbatim,)f
-(or)g(with)g(mo)q(di\014cations)g(and/or)g(translated)g(in)o(to)165
-2099 y(another)d(language.)165 2165 y(A)e(\\Secondary)g(Section")g(is)f
-(a)h(named)g(app)q(endix)h(or)e(a)h(fron)o(t-matter)e(section)h(of)h
-(the)g(Do)q(cumen)o(t)165 2220 y(that)d(deals)g(exclusiv)o(ely)g(with)g
-(the)h(relationship)e(of)i(the)f(publishers)h(or)f(authors)g(of)g(the)h
-(Do)q(cumen)o(t)165 2275 y(to)18 b(the)h(Do)q(cumen)o(t's)f(o)o(v)o
-(erall)f(sub)s(ject)h(\(or)g(to)g(related)g(matters\))f(and)i(con)o
-(tains)f(nothing)g(that)165 2329 y(could)i(fall)f(directly)h(within)f
-(that)g(o)o(v)o(erall)g(sub)s(ject.)34 b(\(Th)o(us,)21
-b(if)f(the)g(Do)q(cumen)o(t)g(is)g(in)g(part)f(a)165
-2384 y(textb)q(o)q(ok)12 b(of)f(mathematics,)g(a)g(Secondary)h(Section)
-g(ma)o(y)f(not)h(explain)f(an)o(y)h(mathematics.\))17
-b(The)165 2439 y(relationship)12 b(could)i(b)q(e)g(a)g(matter)e(of)i
-(historical)d(connection)j(with)f(the)h(sub)s(ject)f(or)h(with)f
-(related)165 2494 y(matters,)k(or)g(of)g(legal,)g(commercial,)g
-(philosophical,)g(ethical)g(or)g(p)q(olitical)f(p)q(osition)h
-(regarding)165 2549 y(them.)165 2615 y(The)c(\\In)o(v)m(arian)o(t)f
-(Sections")g(are)h(certain)f(Secondary)h(Sections)g(whose)g(titles)e
-(are)i(designated,)f(as)165 2670 y(b)q(eing)i(those)f(of)g(In)o(v)m
-(arian)o(t)f(Sections,)h(in)h(the)f(notice)g(that)f(sa)o(ys)h(that)g
-(the)g(Do)q(cumen)o(t)g(is)g(released)p eop end
-%%Page: 59 63
-TeXDict begin 59 62 bop 75 -58 a Fs(App)q(endix)16 b(A:)f(GNU)g(F)l
-(ree)g(Do)q(cumen)o(tation)g(License)802 b(59)165 149
-y(under)15 b(this)e(License.)20 b(If)14 b(a)g(section)f(do)q(es)h(not)g
-(\014t)f(the)h(ab)q(o)o(v)o(e)g(de\014nition)g(of)f(Secondary)h(then)g
-(it)f(is)165 204 y(not)j(allo)o(w)o(ed)e(to)h(b)q(e)i(designated)f(as)f
-(In)o(v)m(arian)o(t.)21 b(The)c(Do)q(cumen)o(t)e(ma)o(y)h(con)o(tain)f
-(zero)h(In)o(v)m(arian)o(t)165 259 y(Sections.)j(If)12
-b(the)h(Do)q(cumen)o(t)f(do)q(es)h(not)f(iden)o(tify)f(an)o(y)h(In)o(v)
-m(arian)o(t)g(Sections)g(then)h(there)f(are)g(none.)165
-334 y(The)19 b(\\Co)o(v)o(er)e(T)l(exts")g(are)h(certain)g(short)g
-(passages)g(of)f(text)h(that)g(are)g(listed,)g(as)g(F)l(ron)o(t-Co)o(v)
-o(er)165 389 y(T)l(exts)12 b(or)g(Bac)o(k-Co)o(v)o(er)g(T)l(exts,)g(in)
-h(the)f(notice)g(that)g(sa)o(ys)g(that)g(the)g(Do)q(cumen)o(t)h(is)f
-(released)g(under)165 444 y(this)g(License.)20 b(A)13
-b(F)l(ron)o(t-Co)o(v)o(er)e(T)l(ext)i(ma)o(y)f(b)q(e)i(at)e(most)g(5)h
-(w)o(ords,)f(and)h(a)g(Bac)o(k-Co)o(v)o(er)f(T)l(ext)h(ma)o(y)165
-499 y(b)q(e)j(at)e(most)h(25)f(w)o(ords.)165 574 y(A)k(\\T)l(ransparen)
-o(t")e(cop)o(y)i(of)f(the)h(Do)q(cumen)o(t)g(means)f(a)h(mac)o
-(hine-readable)f(cop)o(y)l(,)h(represen)o(ted)165 629
-y(in)g(a)f(format)g(whose)g(sp)q(eci\014cation)h(is)g(a)o(v)m(ailable)e
-(to)h(the)h(general)g(public,)g(that)f(is)g(suitable)h(for)165
-684 y(revising)d(the)h(do)q(cumen)o(t)g(straigh)o(tforw)o(ardly)d(with)
-i(generic)h(text)f(editors)g(or)g(\(for)g(images)g(com-)165
-738 y(p)q(osed)d(of)g(pixels\))f(generic)h(pain)o(t)f(programs)g(or)g
-(\(for)g(dra)o(wings\))g(some)g(widely)g(a)o(v)m(ailable)g(dra)o(wing)
-165 793 y(editor,)j(and)g(that)g(is)g(suitable)g(for)g(input)g(to)g
-(text)g(formatters)f(or)h(for)g(automatic)f(translation)g(to)165
-848 y(a)g(v)m(ariet)o(y)g(of)g(formats)f(suitable)g(for)h(input)h(to)e
-(text)h(formatters.)18 b(A)13 b(cop)o(y)h(made)f(in)g(an)h(otherwise)
-165 903 y(T)l(ransparen)o(t)k(\014le)h(format)e(whose)i(markup,)g(or)g
-(absence)g(of)g(markup,)g(has)f(b)q(een)i(arranged)f(to)165
-958 y(th)o(w)o(art)12 b(or)g(discourage)h(subsequen)o(t)h(mo)q
-(di\014cation)f(b)o(y)g(readers)g(is)g(not)g(T)l(ransparen)o(t.)18
-b(An)c(image)165 1012 y(format)i(is)h(not)f(T)l(ransparen)o(t)h(if)g
-(used)g(for)g(an)o(y)g(substan)o(tial)e(amoun)o(t)i(of)f(text.)26
-b(A)17 b(cop)o(y)g(that)f(is)165 1067 y(not)f(\\T)l(ransparen)o(t")f
-(is)h(called)f(\\Opaque".)165 1143 y(Examples)26 b(of)g(suitable)g
-(formats)f(for)h(T)l(ransparen)o(t)g(copies)g(include)h(plain)f
-Fl(asci)q(i)g Fs(without)165 1197 y(markup,)18 b(T)l(exinfo)g(input)g
-(format,)f(LaT)879 1207 y(E)905 1197 y(X)h(input)g(format,)f
-Fd(SGML)h Fs(or)f Fd(XML)i Fs(using)e(a)h(publicly)165
-1252 y(a)o(v)m(ailable)h Fd(DTD)p Fs(,)g(and)h(standard-conforming)f
-(simple)g Fd(HTML)p Fs(,)h(P)o(ostScript)f(or)g Fd(PDF)i
-Fs(designed)165 1307 y(for)e(h)o(uman)g(mo)q(di\014cation.)31
-b(Examples)19 b(of)f(transparen)o(t)h(image)f(formats)g(include)h
-Fd(PNG)p Fs(,)g Fd(X)o(CF)165 1362 y Fs(and)i Fd(JPG)p
-Fs(.)f(Opaque)h(formats)e(include)i(proprietary)e(formats)g(that)g(can)
-i(b)q(e)g(read)f(and)h(edited)165 1417 y(only)26 b(b)o(y)h(proprietary)
-f(w)o(ord)g(pro)q(cessors,)j Fd(SGML)d Fs(or)h Fd(XML)g
-Fs(for)f(whic)o(h)g(the)h Fd(DTD)g Fs(and/or)165 1471
-y(pro)q(cessing)j(to)q(ols)g(are)g(not)g(generally)g(a)o(v)m(ailable,)i
-(and)f(the)g(mac)o(hine-generated)f Fd(HTML)p Fs(,)165
-1526 y(P)o(ostScript)14 b(or)h Fd(PDF)g Fs(pro)q(duced)h(b)o(y)f(some)g
-(w)o(ord)g(pro)q(cessors)g(for)f(output)h(purp)q(oses)h(only)l(.)165
-1601 y(The)h(\\Title)f(P)o(age")g(means,)i(for)e(a)h(prin)o(ted)g(b)q
-(o)q(ok,)g(the)g(title)f(page)h(itself,)g(plus)g(suc)o(h)g(follo)o
-(wing)165 1656 y(pages)d(as)f(are)h(needed)h(to)e(hold,)h(legibly)l(,)e
-(the)i(material)e(this)i(License)g(requires)g(to)f(app)q(ear)h(in)g
-(the)165 1711 y(title)e(page.)19 b(F)l(or)13 b(w)o(orks)f(in)h(formats)
-f(whic)o(h)h(do)g(not)g(ha)o(v)o(e)g(an)o(y)g(title)f(page)h(as)g(suc)o
-(h,)h(\\Title)e(P)o(age")165 1766 y(means)j(the)h(text)e(near)i(the)f
-(most)g(prominen)o(t)f(app)q(earance)i(of)f(the)g(w)o(ork's)f(title,)g
-(preceding)i(the)165 1821 y(b)q(eginning)f(of)g(the)g(b)q(o)q(dy)h(of)f
-(the)g(text.)165 1896 y(The)j(\\publisher")e(means)i(an)o(y)f(p)q
-(erson)g(or)g(en)o(tit)o(y)f(that)h(distributes)g(copies)g(of)g(the)g
-(Do)q(cumen)o(t)165 1951 y(to)e(the)g(public.)165 2026
-y(A)g(section)f(\\En)o(titled)g(XYZ")g(means)h(a)g(named)g(subunit)g
-(of)f(the)h(Do)q(cumen)o(t)g(whose)g(title)e(either)165
-2081 y(is)g(precisely)h(XYZ)g(or)f(con)o(tains)g(XYZ)h(in)g(paren)o
-(theses)g(follo)o(wing)d(text)j(that)f(translates)f(XYZ)i(in)165
-2136 y(another)e(language.)18 b(\(Here)13 b(XYZ)f(stands)g(for)g(a)g
-(sp)q(eci\014c)i(section)e(name)g(men)o(tioned)g(b)q(elo)o(w,)h(suc)o
-(h)165 2191 y(as)h(\\Ac)o(kno)o(wledgemen)o(ts",)e(\\Dedications",)h
-(\\Endorsemen)o(ts",)g(or)g(\\History".\))18 b(T)l(o)13
-b(\\Preserv)o(e)165 2245 y(the)k(Title")e(of)i(suc)o(h)g(a)f(section)h
-(when)g(y)o(ou)f(mo)q(dify)h(the)g(Do)q(cumen)o(t)f(means)h(that)f(it)g
-(remains)g(a)165 2300 y(section)f(\\En)o(titled)f(XYZ")g(according)h
-(to)g(this)f(de\014nition.)165 2375 y(The)g(Do)q(cumen)o(t)g(ma)o(y)f
-(include)h(W)l(arran)o(t)o(y)e(Disclaimers)g(next)i(to)g(the)g(notice)f
-(whic)o(h)h(states)f(that)165 2430 y(this)j(License)i(applies)f(to)f
-(the)h(Do)q(cumen)o(t.)25 b(These)17 b(W)l(arran)o(t)o(y)e(Disclaimers)
-h(are)g(considered)i(to)165 2485 y(b)q(e)h(included)h(b)o(y)f
-(reference)g(in)g(this)f(License,)i(but)f(only)f(as)h(regards)f
-(disclaiming)f(w)o(arran)o(ties:)165 2540 y(an)o(y)h(other)g
-(implication)f(that)h(these)g(W)l(arran)o(t)o(y)f(Disclaimers)g(ma)o(y)
-g(ha)o(v)o(e)h(is)g(v)o(oid)g(and)h(has)f(no)165 2595
-y(e\013ect)d(on)g(the)g(meaning)g(of)g(this)g(License.)100
-2670 y(2.)29 b(VERBA)l(TIM)16 b(COPYING)p eop end
-%%Page: 60 64
-TeXDict begin 60 63 bop 75 -58 a Fs(App)q(endix)16 b(A:)f(GNU)g(F)l
-(ree)g(Do)q(cumen)o(tation)g(License)802 b(60)165 149
-y(Y)l(ou)19 b(ma)o(y)g(cop)o(y)f(and)i(distribute)e(the)h(Do)q(cumen)o
-(t)g(in)g(an)o(y)g(medium,)g(either)g(commercially)e(or)165
-204 y(noncommercially)l(,)k(pro)o(vided)g(that)g(this)g(License,)i(the)
-e(cop)o(yrigh)o(t)f(notices,)i(and)g(the)f(license)165
-259 y(notice)d(sa)o(ying)e(this)i(License)g(applies)g(to)f(the)h(Do)q
-(cumen)o(t)g(are)f(repro)q(duced)i(in)f(all)f(copies,)h(and)165
-314 y(that)13 b(y)o(ou)g(add)g(no)g(other)g(conditions)g(whatso)q(ev)o
-(er)f(to)h(those)g(of)g(this)g(License.)20 b(Y)l(ou)13
-b(ma)o(y)g(not)g(use)165 369 y(tec)o(hnical)j(measures)g(to)g(obstruct)
-g(or)g(con)o(trol)f(the)h(reading)g(or)g(further)h(cop)o(ying)f(of)g
-(the)g(copies)165 423 y(y)o(ou)c(mak)o(e)g(or)f(distribute.)19
-b(Ho)o(w)o(ev)o(er,)11 b(y)o(ou)h(ma)o(y)g(accept)g(comp)q(ensation)g
-(in)g(exc)o(hange)h(for)e(copies.)165 478 y(If)16 b(y)o(ou)g
-(distribute)f(a)h(large)f(enough)i(n)o(um)o(b)q(er)f(of)g(copies)g(y)o
-(ou)g(m)o(ust)f(also)g(follo)o(w)g(the)h(conditions)165
-533 y(in)f(section)g(3.)165 600 y(Y)l(ou)c(ma)o(y)e(also)h(lend)g
-(copies,)h(under)g(the)g(same)f(conditions)f(stated)h(ab)q(o)o(v)o(e,)h
-(and)f(y)o(ou)g(ma)o(y)g(publicly)165 655 y(displa)o(y)k(copies.)100
-722 y(3.)29 b(COPYING)16 b(IN)f(QUANTITY)165 789 y(If)e(y)o(ou)f
-(publish)h(prin)o(ted)f(copies)h(\(or)e(copies)i(in)f(media)h(that)e
-(commonly)h(ha)o(v)o(e)g(prin)o(ted)h(co)o(v)o(ers\))e(of)165
-844 y(the)16 b(Do)q(cumen)o(t,)g(n)o(um)o(b)q(ering)f(more)h(than)g
-(100,)e(and)i(the)g(Do)q(cumen)o(t's)g(license)g(notice)f(requires)165
-898 y(Co)o(v)o(er)h(T)l(exts,)h(y)o(ou)g(m)o(ust)g(enclose)g(the)g
-(copies)g(in)g(co)o(v)o(ers)g(that)f(carry)l(,)h(clearly)f(and)i
-(legibly)l(,)e(all)165 953 y(these)k(Co)o(v)o(er)e(T)l(exts:)29
-b(F)l(ron)o(t-Co)o(v)o(er)18 b(T)l(exts)h(on)g(the)h(fron)o(t)f(co)o(v)
-o(er,)g(and)h(Bac)o(k-Co)o(v)o(er)f(T)l(exts)g(on)165
-1008 y(the)c(bac)o(k)f(co)o(v)o(er.)19 b(Both)14 b(co)o(v)o(ers)g(m)o
-(ust)g(also)g(clearly)g(and)g(legibly)g(iden)o(tify)g(y)o(ou)g(as)g
-(the)h(publisher)165 1063 y(of)i(these)g(copies.)26 b(The)17
-b(fron)o(t)f(co)o(v)o(er)h(m)o(ust)f(presen)o(t)i(the)f(full)f(title)g
-(with)h(all)f(w)o(ords)g(of)h(the)g(title)165 1117 y(equally)e
-(prominen)o(t)g(and)g(visible.)20 b(Y)l(ou)c(ma)o(y)e(add)i(other)f
-(material)e(on)j(the)f(co)o(v)o(ers)g(in)g(addition.)165
-1172 y(Cop)o(ying)i(with)h(c)o(hanges)g(limited)f(to)g(the)h(co)o(v)o
-(ers,)g(as)g(long)f(as)h(they)g(preserv)o(e)g(the)g(title)f(of)h(the)
-165 1227 y(Do)q(cumen)o(t)g(and)h(satisfy)e(these)i(conditions,)f(can)h
-(b)q(e)g(treated)f(as)h(v)o(erbatim)e(cop)o(ying)h(in)g(other)165
-1282 y(resp)q(ects.)165 1349 y(If)f(the)f(required)h(texts)e(for)h
-(either)g(co)o(v)o(er)g(are)g(to)q(o)g(v)o(oluminous)f(to)h(\014t)g
-(legibly)l(,)f(y)o(ou)h(should)h(put)165 1404 y(the)g(\014rst)f(ones)g
-(listed)g(\(as)f(man)o(y)h(as)g(\014t)h(reasonably\))e(on)h(the)h
-(actual)f(co)o(v)o(er,)f(and)i(con)o(tin)o(ue)f(the)165
-1458 y(rest)f(on)o(to)f(adjacen)o(t)h(pages.)165 1525
-y(If)f(y)o(ou)f(publish)h(or)f(distribute)f(Opaque)j(copies)e(of)g(the)
-h(Do)q(cumen)o(t)f(n)o(um)o(b)q(ering)h(more)f(than)g(100,)165
-1580 y(y)o(ou)h(m)o(ust)f(either)h(include)g(a)g(mac)o(hine-readable)g
-(T)l(ransparen)o(t)f(cop)o(y)h(along)f(with)g(eac)o(h)h(Opaque)165
-1635 y(cop)o(y)l(,)k(or)f(state)g(in)g(or)g(with)g(eac)o(h)g(Opaque)i
-(cop)o(y)e(a)g(computer-net)o(w)o(ork)g(lo)q(cation)f(from)h(whic)o(h)
-165 1690 y(the)12 b(general)g(net)o(w)o(ork-using)f(public)h(has)g
-(access)g(to)g(do)o(wnload)f(using)h(public-standard)g(net)o(w)o(ork)
-165 1745 y(proto)q(cols)18 b(a)h(complete)h(T)l(ransparen)o(t)e(cop)o
-(y)i(of)f(the)g(Do)q(cumen)o(t,)h(free)g(of)f(added)h(material.)31
-b(If)165 1799 y(y)o(ou)19 b(use)h(the)f(latter)f(option,)i(y)o(ou)f(m)o
-(ust)g(tak)o(e)f(reasonably)h(pruden)o(t)h(steps,)g(when)g(y)o(ou)f(b)q
-(egin)165 1854 y(distribution)f(of)g(Opaque)i(copies)f(in)g(quan)o(tit)
-o(y)l(,)g(to)f(ensure)i(that)e(this)h(T)l(ransparen)o(t)f(cop)o(y)h
-(will)165 1909 y(remain)c(th)o(us)f(accessible)h(at)g(the)g(stated)g
-(lo)q(cation)e(un)o(til)i(at)f(least)g(one)i(y)o(ear)e(after)g(the)i
-(last)e(time)165 1964 y(y)o(ou)k(distribute)g(an)g(Opaque)h(cop)o(y)f
-(\(directly)g(or)g(through)g(y)o(our)g(agen)o(ts)f(or)h(retailers\))f
-(of)h(that)165 2019 y(edition)d(to)f(the)h(public.)165
-2086 y(It)i(is)g(requested,)h(but)f(not)g(required,)h(that)e(y)o(ou)h
-(con)o(tact)g(the)g(authors)g(of)f(the)i(Do)q(cumen)o(t)f(w)o(ell)165
-2140 y(b)q(efore)e(redistributing)e(an)o(y)h(large)f(n)o(um)o(b)q(er)i
-(of)e(copies,)h(to)g(giv)o(e)g(them)g(a)g(c)o(hance)h(to)e(pro)o(vide)h
-(y)o(ou)165 2195 y(with)h(an)g(up)q(dated)h(v)o(ersion)e(of)h(the)g(Do)
-q(cumen)o(t.)100 2262 y(4.)29 b(MODIFICA)l(TIONS)165
-2329 y(Y)l(ou)13 b(ma)o(y)f(cop)o(y)h(and)g(distribute)f(a)g(Mo)q
-(di\014ed)h(V)l(ersion)g(of)f(the)h(Do)q(cumen)o(t)f(under)i(the)f
-(conditions)165 2384 y(of)d(sections)g(2)g(and)h(3)f(ab)q(o)o(v)o(e,)h
-(pro)o(vided)f(that)g(y)o(ou)g(release)g(the)h(Mo)q(di\014ed)g(V)l
-(ersion)f(under)h(precisely)165 2439 y(this)j(License,)h(with)f(the)g
-(Mo)q(di\014ed)h(V)l(ersion)f(\014lling)g(the)h(role)e(of)i(the)f(Do)q
-(cumen)o(t,)g(th)o(us)h(licensing)165 2493 y(distribution)h(and)h(mo)q
-(di\014cation)f(of)h(the)g(Mo)q(di\014ed)g(V)l(ersion)g(to)f(who)q(ev)o
-(er)h(p)q(ossesses)h(a)e(cop)o(y)h(of)165 2548 y(it.)i(In)d(addition,)e
-(y)o(ou)h(m)o(ust)f(do)h(these)h(things)f(in)g(the)g(Mo)q(di\014ed)g(V)
-l(ersion:)178 2615 y(A.)30 b(Use)17 b(in)f(the)g(Title)f(P)o(age)h
-(\(and)g(on)h(the)f(co)o(v)o(ers,)g(if)f(an)o(y\))h(a)g(title)f
-(distinct)h(from)f(that)h(of)g(the)255 2670 y(Do)q(cumen)o(t,)h(and)g
-(from)f(those)h(of)f(previous)h(v)o(ersions)f(\(whic)o(h)g(should,)h
-(if)g(there)g(w)o(ere)f(an)o(y)l(,)p eop end
-%%Page: 61 65
-TeXDict begin 61 64 bop 75 -58 a Fs(App)q(endix)16 b(A:)f(GNU)g(F)l
-(ree)g(Do)q(cumen)o(tation)g(License)802 b(61)255 149
-y(b)q(e)16 b(listed)f(in)h(the)g(History)e(section)h(of)g(the)h(Do)q
-(cumen)o(t\).)21 b(Y)l(ou)16 b(ma)o(y)f(use)h(the)g(same)f(title)f(as)
-255 204 y(a)h(previous)g(v)o(ersion)f(if)h(the)g(original)e(publisher)j
-(of)f(that)f(v)o(ersion)g(giv)o(es)h(p)q(ermission.)180
-273 y(B.)30 b(List)15 b(on)g(the)g(Title)g(P)o(age,)f(as)h(authors,)f
-(one)h(or)g(more)g(p)q(ersons)g(or)g(en)o(tities)f(resp)q(onsible)i
-(for)255 328 y(authorship)d(of)f(the)h(mo)q(di\014cations)f(in)h(the)g
-(Mo)q(di\014ed)h(V)l(ersion,)f(together)f(with)g(at)h(least)f(\014v)o
-(e)255 382 y(of)g(the)g(principal)f(authors)g(of)h(the)g(Do)q(cumen)o
-(t)g(\(all)e(of)i(its)f(principal)g(authors,)h(if)f(it)g(has)h(few)o
-(er)255 437 y(than)j(\014v)o(e\),)g(unless)g(they)g(release)g(y)o(ou)g
-(from)f(this)h(requiremen)o(t.)180 506 y(C.)29 b(State)15
-b(on)g(the)h(Title)e(page)h(the)h(name)f(of)g(the)g(publisher)h(of)f
-(the)g(Mo)q(di\014ed)h(V)l(ersion,)f(as)g(the)255 560
-y(publisher.)178 629 y(D.)29 b(Preserv)o(e)15 b(all)f(the)h(cop)o
-(yrigh)o(t)f(notices)h(of)g(the)g(Do)q(cumen)o(t.)181
-697 y(E.)30 b(Add)16 b(an)g(appropriate)f(cop)o(yrigh)o(t)f(notice)h
-(for)g(y)o(our)g(mo)q(di\014cations)g(adjacen)o(t)h(to)f(the)g(other)
-255 752 y(cop)o(yrigh)o(t)f(notices.)183 821 y(F.)29
-b(Include,)15 b(immediately)e(after)g(the)h(cop)o(yrigh)o(t)e(notices,)
-i(a)f(license)h(notice)g(giving)f(the)h(public)255 875
-y(p)q(ermission)e(to)f(use)i(the)f(Mo)q(di\014ed)h(V)l(ersion)f(under)h
-(the)f(terms)g(of)f(this)h(License,)h(in)f(the)h(form)255
-930 y(sho)o(wn)i(in)g(the)g(Addendum)i(b)q(elo)o(w.)177
-999 y(G.)29 b(Preserv)o(e)11 b(in)g(that)g(license)g(notice)h(the)f
-(full)g(lists)f(of)h(In)o(v)m(arian)o(t)g(Sections)g(and)g(required)h
-(Co)o(v)o(er)255 1054 y(T)l(exts)j(giv)o(en)g(in)g(the)g(Do)q(cumen)o
-(t's)g(license)g(notice.)178 1122 y(H.)30 b(Include)16
-b(an)f(unaltered)h(cop)o(y)f(of)f(this)h(License.)196
-1191 y(I.)30 b(Preserv)o(e)16 b(the)g(section)g(En)o(titled)f
-(\\History",)f(Preserv)o(e)h(its)h(Title,)e(and)j(add)f(to)f(it)h(an)g
-(item)255 1245 y(stating)d(at)g(least)g(the)h(title,)f(y)o(ear,)g(new)i
-(authors,)e(and)h(publisher)g(of)g(the)g(Mo)q(di\014ed)g(V)l(ersion)255
-1300 y(as)h(giv)o(en)g(on)h(the)g(Title)e(P)o(age.)21
-b(If)16 b(there)g(is)f(no)h(section)f(En)o(titled)f(\\History")g(in)i
-(the)g(Do)q(cu-)255 1355 y(men)o(t,)h(create)g(one)h(stating)e(the)h
-(title,)g(y)o(ear,)g(authors,)g(and)g(publisher)h(of)f(the)g(Do)q
-(cumen)o(t)255 1410 y(as)h(giv)o(en)f(on)h(its)f(Title)g(P)o(age,)h
-(then)h(add)f(an)g(item)f(describing)h(the)g(Mo)q(di\014ed)g(V)l
-(ersion)g(as)255 1465 y(stated)d(in)g(the)g(previous)g(sen)o(tence.)189
-1533 y(J.)30 b(Preserv)o(e)16 b(the)g(net)o(w)o(ork)f(lo)q(cation,)g
-(if)h(an)o(y)l(,)g(giv)o(en)g(in)g(the)g(Do)q(cumen)o(t)g(for)g(public)
-g(access)h(to)255 1588 y(a)e(T)l(ransparen)o(t)g(cop)o(y)h(of)f(the)g
-(Do)q(cumen)o(t,)h(and)f(lik)o(ewise)g(the)g(net)o(w)o(ork)g(lo)q
-(cations)f(giv)o(en)h(in)255 1643 y(the)h(Do)q(cumen)o(t)g(for)f
-(previous)g(v)o(ersions)g(it)g(w)o(as)g(based)i(on.)k(These)c(ma)o(y)e
-(b)q(e)h(placed)g(in)g(the)255 1697 y(\\History")11 b(section.)18
-b(Y)l(ou)13 b(ma)o(y)f(omit)f(a)h(net)o(w)o(ork)g(lo)q(cation)f(for)h
-(a)g(w)o(ork)g(that)g(w)o(as)f(published)255 1752 y(at)17
-b(least)g(four)h(y)o(ears)f(b)q(efore)h(the)g(Do)q(cumen)o(t)g(itself,)
-f(or)g(if)h(the)f(original)f(publisher)i(of)g(the)255
-1807 y(v)o(ersion)c(it)h(refers)g(to)f(giv)o(es)h(p)q(ermission.)177
-1875 y(K.)30 b(F)l(or)11 b(an)o(y)h(section)f(En)o(titled)g(\\Ac)o(kno)
-o(wledgemen)o(ts")g(or)g(\\Dedications",)f(Preserv)o(e)i(the)g(Title)
-255 1930 y(of)h(the)g(section,)g(and)g(preserv)o(e)h(in)f(the)g
-(section)g(all)f(the)i(substance)f(and)h(tone)f(of)g(eac)o(h)g(of)g
-(the)255 1985 y(con)o(tributor)h(ac)o(kno)o(wledgemen)o(ts)g(and/or)h
-(dedications)f(giv)o(en)h(therein.)184 2054 y(L.)30 b(Preserv)o(e)17
-b(all)g(the)h(In)o(v)m(arian)o(t)f(Sections)g(of)h(the)f(Do)q(cumen)o
-(t,)h(unaltered)g(in)f(their)h(text)f(and)255 2108 y(in)h(their)f
-(titles.)27 b(Section)18 b(n)o(um)o(b)q(ers)g(or)g(the)g(equiv)m(alen)o
-(t)f(are)h(not)g(considered)g(part)f(of)h(the)255 2163
-y(section)d(titles.)171 2232 y(M.)29 b(Delete)15 b(an)o(y)g(section)g
-(En)o(titled)f(\\Endorsemen)o(ts".)20 b(Suc)o(h)c(a)f(section)g(ma)o(y)
-f(not)h(b)q(e)h(included)255 2286 y(in)f(the)g(Mo)q(di\014ed)h(V)l
-(ersion.)178 2355 y(N.)30 b(Do)14 b(not)f(retitle)g(an)o(y)h(existing)f
-(section)h(to)g(b)q(e)g(En)o(titled)g(\\Endorsemen)o(ts")f(or)h(to)f
-(con\015ict)h(in)255 2410 y(title)g(with)g(an)o(y)h(In)o(v)m(arian)o(t)
-g(Section.)177 2478 y(O.)30 b(Preserv)o(e)15 b(an)o(y)g(W)l(arran)o(t)o
-(y)e(Disclaimers.)165 2560 y(If)k(the)g(Mo)q(di\014ed)g(V)l(ersion)f
-(includes)h(new)g(fron)o(t-matter)e(sections)h(or)g(app)q(endices)i
-(that)e(qualify)165 2615 y(as)e(Secondary)g(Sections)g(and)g(con)o
-(tain)f(no)h(material)e(copied)i(from)f(the)h(Do)q(cumen)o(t,)g(y)o(ou)
-f(ma)o(y)h(at)165 2670 y(y)o(our)i(option)f(designate)h(some)g(or)f
-(all)g(of)h(these)h(sections)e(as)h(in)o(v)m(arian)o(t.)22
-b(T)l(o)15 b(do)i(this,)e(add)h(their)p eop end
-%%Page: 62 66
-TeXDict begin 62 65 bop 75 -58 a Fs(App)q(endix)16 b(A:)f(GNU)g(F)l
-(ree)g(Do)q(cumen)o(tation)g(License)802 b(62)165 149
-y(titles)16 b(to)h(the)h(list)f(of)g(In)o(v)m(arian)o(t)g(Sections)h
-(in)f(the)h(Mo)q(di\014ed)g(V)l(ersion's)f(license)h(notice.)27
-b(These)165 204 y(titles)14 b(m)o(ust)h(b)q(e)g(distinct)g(from)f(an)o
-(y)h(other)g(section)g(titles.)165 275 y(Y)l(ou)21 b(ma)o(y)g(add)g(a)g
-(section)g(En)o(titled)f(\\Endorsemen)o(ts",)h(pro)o(vided)g(it)g(con)o
-(tains)f(nothing)h(but)165 330 y(endorsemen)o(ts)15 b(of)f(y)o(our)h
-(Mo)q(di\014ed)g(V)l(ersion)f(b)o(y)h(v)m(arious)f(parties|for)g
-(example,)h(statemen)o(ts)e(of)165 385 y(p)q(eer)h(review)f(or)h(that)e
-(the)i(text)f(has)h(b)q(een)g(appro)o(v)o(ed)g(b)o(y)f(an)h
-(organization)d(as)j(the)f(authoritativ)o(e)165 440 y(de\014nition)i
-(of)g(a)g(standard.)165 511 y(Y)l(ou)f(ma)o(y)g(add)g(a)g(passage)g(of)
-f(up)i(to)e(\014v)o(e)i(w)o(ords)e(as)h(a)g(F)l(ron)o(t-Co)o(v)o(er)e
-(T)l(ext,)i(and)g(a)g(passage)g(of)f(up)165 566 y(to)g(25)g(w)o(ords)g
-(as)g(a)g(Bac)o(k-Co)o(v)o(er)g(T)l(ext,)g(to)g(the)g(end)i(of)e(the)g
-(list)g(of)g(Co)o(v)o(er)f(T)l(exts)i(in)f(the)h(Mo)q(di\014ed)165
-621 y(V)l(ersion.)28 b(Only)18 b(one)g(passage)f(of)h(F)l(ron)o(t-Co)o
-(v)o(er)e(T)l(ext)i(and)g(one)g(of)f(Bac)o(k-Co)o(v)o(er)g(T)l(ext)h
-(ma)o(y)f(b)q(e)165 675 y(added)d(b)o(y)g(\(or)f(through)g(arrangemen)o
-(ts)g(made)h(b)o(y\))f(an)o(y)h(one)g(en)o(tit)o(y)l(.)k(If)c(the)g(Do)
-q(cumen)o(t)g(already)165 730 y(includes)j(a)g(co)o(v)o(er)f(text)h
-(for)f(the)h(same)g(co)o(v)o(er,)f(previously)g(added)i(b)o(y)f(y)o(ou)
-g(or)f(b)o(y)h(arrangemen)o(t)165 785 y(made)h(b)o(y)f(the)h(same)f(en)
-o(tit)o(y)g(y)o(ou)g(are)g(acting)g(on)g(b)q(ehalf)h(of,)g(y)o(ou)f(ma)
-o(y)g(not)g(add)h(another;)g(but)165 840 y(y)o(ou)f(ma)o(y)f(replace)h
-(the)g(old)g(one,)g(on)g(explicit)f(p)q(ermission)g(from)h(the)g
-(previous)g(publisher)g(that)165 895 y(added)f(the)f(old)g(one.)165
-966 y(The)e(author\(s\))e(and)i(publisher\(s\))f(of)h(the)g(Do)q(cumen)
-o(t)f(do)h(not)f(b)o(y)h(this)f(License)i(giv)o(e)e(p)q(ermission)165
-1021 y(to)j(use)g(their)g(names)g(for)f(publicit)o(y)h(for)f(or)h(to)f
-(assert)h(or)f(imply)h(endorsemen)o(t)g(of)g(an)o(y)g(Mo)q(di\014ed)165
-1075 y(V)l(ersion.)100 1147 y(5.)29 b(COMBINING)16 b(DOCUMENTS)165
-1218 y(Y)l(ou)k(ma)o(y)e(com)o(bine)h(the)h(Do)q(cumen)o(t)f(with)g
-(other)g(do)q(cumen)o(ts)g(released)h(under)g(this)f(License,)165
-1273 y(under)h(the)f(terms)g(de\014ned)h(in)f(section)g(4)f(ab)q(o)o(v)
-o(e)h(for)g(mo)q(di\014ed)g(v)o(ersions,)g(pro)o(vided)g(that)f(y)o(ou)
-165 1328 y(include)13 b(in)f(the)h(com)o(bination)f(all)f(of)h(the)h
-(In)o(v)m(arian)o(t)f(Sections)h(of)f(all)f(of)i(the)f(original)f(do)q
-(cumen)o(ts,)165 1382 y(unmo)q(di\014ed,)j(and)g(list)e(them)h(all)g
-(as)g(In)o(v)m(arian)o(t)f(Sections)i(of)f(y)o(our)f(com)o(bined)i(w)o
-(ork)e(in)h(its)g(license)165 1437 y(notice,)h(and)i(that)e(y)o(ou)h
-(preserv)o(e)g(all)g(their)f(W)l(arran)o(t)o(y)g(Disclaimers.)165
-1508 y(The)h(com)o(bined)h(w)o(ork)e(need)i(only)e(con)o(tain)h(one)g
-(cop)o(y)g(of)g(this)f(License,)i(and)f(m)o(ultiple)f(iden)o(tical)165
-1563 y(In)o(v)m(arian)o(t)i(Sections)g(ma)o(y)f(b)q(e)i(replaced)g
-(with)e(a)h(single)g(cop)o(y)l(.)23 b(If)16 b(there)h(are)f(m)o
-(ultiple)f(In)o(v)m(arian)o(t)165 1618 y(Sections)e(with)g(the)g(same)g
-(name)h(but)f(di\013eren)o(t)g(con)o(ten)o(ts,)g(mak)o(e)g(the)g(title)
-f(of)h(eac)o(h)h(suc)o(h)f(section)165 1673 y(unique)18
-b(b)o(y)e(adding)h(at)g(the)g(end)g(of)g(it,)f(in)h(paren)o(theses,)g
-(the)g(name)g(of)g(the)g(original)e(author)h(or)165 1728
-y(publisher)d(of)f(that)g(section)g(if)g(kno)o(wn,)g(or)g(else)g(a)h
-(unique)g(n)o(um)o(b)q(er.)19 b(Mak)o(e)12 b(the)g(same)h(adjustmen)o
-(t)165 1782 y(to)f(the)g(section)g(titles)f(in)h(the)g(list)f(of)h(In)o
-(v)m(arian)o(t)f(Sections)h(in)g(the)h(license)f(notice)g(of)g(the)g
-(com)o(bined)165 1837 y(w)o(ork.)165 1908 y(In)21 b(the)g(com)o
-(bination,)f(y)o(ou)h(m)o(ust)f(com)o(bine)g(an)o(y)g(sections)h(En)o
-(titled)e(\\History")g(in)i(the)f(v)m(ari-)165 1963 y(ous)c(original)e
-(do)q(cumen)o(ts,)i(forming)f(one)i(section)e(En)o(titled)g
-(\\History";)g(lik)o(ewise)f(com)o(bine)i(an)o(y)165
-2018 y(sections)f(En)o(titled)g(\\Ac)o(kno)o(wledgemen)o(ts",)g(and)h
-(an)o(y)f(sections)h(En)o(titled)e(\\Dedications".)21
-b(Y)l(ou)165 2073 y(m)o(ust)15 b(delete)g(all)f(sections)h(En)o(titled)
-f(\\Endorsemen)o(ts.")100 2144 y(6.)29 b(COLLECTIONS)17
-b(OF)e(DOCUMENTS)165 2215 y(Y)l(ou)h(ma)o(y)f(mak)o(e)h(a)f(collection)
-g(consisting)g(of)g(the)h(Do)q(cumen)o(t)g(and)g(other)g(do)q(cumen)o
-(ts)g(released)165 2270 y(under)22 b(this)f(License,)i(and)e(replace)g
-(the)g(individual)g(copies)g(of)g(this)f(License)i(in)f(the)g(v)m
-(arious)165 2325 y(do)q(cumen)o(ts)h(with)e(a)h(single)g(cop)o(y)g
-(that)f(is)h(included)h(in)f(the)g(collection,)h(pro)o(vided)f(that)f
-(y)o(ou)165 2380 y(follo)o(w)d(the)h(rules)h(of)f(this)g(License)h(for)
-f(v)o(erbatim)f(cop)o(ying)h(of)g(eac)o(h)h(of)f(the)h(do)q(cumen)o(ts)
-g(in)f(all)165 2434 y(other)d(resp)q(ects.)165 2506 y(Y)l(ou)h(ma)o(y)f
-(extract)g(a)g(single)g(do)q(cumen)o(t)h(from)f(suc)o(h)h(a)g
-(collection,)e(and)i(distribute)f(it)g(individu-)165
-2560 y(ally)h(under)j(this)e(License,)h(pro)o(vided)f(y)o(ou)g(insert)g
-(a)h(cop)o(y)f(of)g(this)g(License)h(in)o(to)f(the)g(extracted)165
-2615 y(do)q(cumen)o(t,)g(and)f(follo)o(w)e(this)i(License)h(in)f(all)g
-(other)f(resp)q(ects)i(regarding)f(v)o(erbatim)f(cop)o(ying)g(of)165
-2670 y(that)f(do)q(cumen)o(t.)p eop end
-%%Page: 63 67
-TeXDict begin 63 66 bop 75 -58 a Fs(App)q(endix)16 b(A:)f(GNU)g(F)l
-(ree)g(Do)q(cumen)o(tation)g(License)802 b(63)100 149
-y(7.)29 b(A)o(GGREGA)l(TION)15 b(WITH)h(INDEPENDENT)e(W)o(ORKS)165
-221 y(A)g(compilation)e(of)i(the)g(Do)q(cumen)o(t)g(or)f(its)h(deriv)m
-(ativ)o(es)f(with)g(other)h(separate)f(and)i(indep)q(enden)o(t)165
-275 y(do)q(cumen)o(ts)i(or)f(w)o(orks,)g(in)g(or)g(on)h(a)f(v)o(olume)g
-(of)g(a)h(storage)e(or)h(distribution)g(medium,)g(is)g(called)165
-330 y(an)f(\\aggregate")e(if)h(the)i(cop)o(yrigh)o(t)d(resulting)h
-(from)h(the)g(compilation)e(is)i(not)f(used)i(to)e(limit)g(the)165
-385 y(legal)e(righ)o(ts)g(of)h(the)g(compilation's)f(users)h(b)q(ey)o
-(ond)h(what)f(the)g(individual)f(w)o(orks)h(p)q(ermit.)19
-b(When)165 440 y(the)g(Do)q(cumen)o(t)g(is)g(included)h(in)f(an)g
-(aggregate,)f(this)h(License)h(do)q(es)g(not)e(apply)h(to)g(the)g
-(other)165 495 y(w)o(orks)14 b(in)h(the)g(aggregate)f(whic)o(h)h(are)g
-(not)g(themselv)o(es)g(deriv)m(ativ)o(e)f(w)o(orks)g(of)h(the)g(Do)q
-(cumen)o(t.)165 566 y(If)d(the)f(Co)o(v)o(er)f(T)l(ext)i(requiremen)o
-(t)f(of)g(section)g(3)g(is)g(applicable)f(to)h(these)h(copies)f(of)g
-(the)g(Do)q(cumen)o(t,)165 621 y(then)h(if)e(the)i(Do)q(cumen)o(t)f(is)
-f(less)h(than)g(one)h(half)e(of)h(the)g(en)o(tire)g(aggregate,)f(the)h
-(Do)q(cumen)o(t's)g(Co)o(v)o(er)165 675 y(T)l(exts)i(ma)o(y)g(b)q(e)h
-(placed)f(on)g(co)o(v)o(ers)g(that)f(brac)o(k)o(et)h(the)g(Do)q(cumen)o
-(t)g(within)g(the)g(aggregate,)f(or)h(the)165 730 y(electronic)k(equiv)
-m(alen)o(t)g(of)g(co)o(v)o(ers)g(if)g(the)h(Do)q(cumen)o(t)f(is)g(in)g
-(electronic)g(form.)27 b(Otherwise)17 b(they)165 785
-y(m)o(ust)e(app)q(ear)g(on)g(prin)o(ted)g(co)o(v)o(ers)g(that)f(brac)o
-(k)o(et)h(the)g(whole)g(aggregate.)100 856 y(8.)29 b(TRANSLA)l(TION)165
-928 y(T)l(ranslation)18 b(is)i(considered)g(a)g(kind)g(of)f(mo)q
-(di\014cation,)h(so)g(y)o(ou)g(ma)o(y)f(distribute)g(translations)165
-982 y(of)j(the)g(Do)q(cumen)o(t)g(under)h(the)f(terms)g(of)g(section)f
-(4.)41 b(Replacing)22 b(In)o(v)m(arian)o(t)g(Sections)g(with)165
-1037 y(translations)f(requires)h(sp)q(ecial)h(p)q(ermission)f(from)g
-(their)g(cop)o(yrigh)o(t)f(holders,)j(but)f(y)o(ou)g(ma)o(y)165
-1092 y(include)13 b(translations)d(of)i(some)g(or)f(all)g(In)o(v)m
-(arian)o(t)h(Sections)g(in)g(addition)g(to)f(the)h(original)f(v)o
-(ersions)165 1147 y(of)k(these)h(In)o(v)m(arian)o(t)f(Sections.)22
-b(Y)l(ou)15 b(ma)o(y)g(include)i(a)e(translation)f(of)h(this)g
-(License,)h(and)g(all)f(the)165 1201 y(license)21 b(notices)f(in)g(the)
-h(Do)q(cumen)o(t,)g(and)g(an)o(y)f(W)l(arran)o(t)o(y)f(Disclaimers,)h
-(pro)o(vided)g(that)g(y)o(ou)165 1256 y(also)f(include)h(the)g
-(original)f(English)g(v)o(ersion)g(of)h(this)f(License)i(and)f(the)g
-(original)e(v)o(ersions)h(of)165 1311 y(those)e(notices)f(and)i
-(disclaimers.)24 b(In)18 b(case)f(of)f(a)h(disagreemen)o(t)f(b)q(et)o
-(w)o(een)i(the)f(translation)e(and)165 1366 y(the)j(original)d(v)o
-(ersion)i(of)g(this)g(License)i(or)e(a)g(notice)g(or)g(disclaimer,)g
-(the)h(original)d(v)o(ersion)i(will)165 1421 y(prev)m(ail.)165
-1492 y(If)e(a)f(section)f(in)i(the)f(Do)q(cumen)o(t)g(is)g(En)o(titled)
-f(\\Ac)o(kno)o(wledgemen)o(ts",)g(\\Dedications",)g(or)g(\\His-)165
-1547 y(tory",)f(the)h(requiremen)o(t)g(\(section)f(4\))h(to)f(Preserv)o
-(e)h(its)g(Title)f(\(section)g(1\))h(will)f(t)o(ypically)f(require)165
-1601 y(c)o(hanging)k(the)g(actual)f(title.)100 1673 y(9.)29
-b(TERMINA)l(TION)165 1744 y(Y)l(ou)15 b(ma)o(y)f(not)h(cop)o(y)l(,)f
-(mo)q(dify)l(,)h(sublicense,)g(or)f(distribute)g(the)h(Do)q(cumen)o(t)g
-(except)h(as)e(expressly)165 1799 y(pro)o(vided)19 b(under)h(this)f
-(License.)33 b(An)o(y)19 b(attempt)f(otherwise)h(to)f(cop)o(y)l(,)i(mo)
-q(dify)l(,)g(sublicense,)g(or)165 1854 y(distribute)14
-b(it)h(is)g(v)o(oid,)f(and)h(will)f(automatically)f(terminate)h(y)o
-(our)g(righ)o(ts)g(under)i(this)f(License.)165 1925 y(Ho)o(w)o(ev)o
-(er,)g(if)h(y)o(ou)g(cease)g(all)f(violation)f(of)i(this)g(License,)h
-(then)f(y)o(our)g(license)g(from)f(a)h(particular)165
-1980 y(cop)o(yrigh)o(t)h(holder)g(is)h(reinstated)f(\(a\))g(pro)o
-(visionally)l(,)f(unless)i(and)g(un)o(til)f(the)h(cop)o(yrigh)o(t)e
-(holder)165 2034 y(explicitly)j(and)i(\014nally)e(terminates)h(y)o(our)
-f(license,)j(and)e(\(b\))g(p)q(ermanen)o(tly)l(,)h(if)f(the)g(cop)o
-(yrigh)o(t)165 2089 y(holder)d(fails)f(to)h(notify)f(y)o(ou)h(of)g(the)
-g(violation)e(b)o(y)i(some)g(reasonable)g(means)g(prior)f(to)h(60)f(da)
-o(ys)165 2144 y(after)e(the)i(cessation.)165 2215 y(Moreo)o(v)o(er,)e
-(y)o(our)h(license)h(from)f(a)g(particular)g(cop)o(yrigh)o(t)f(holder)i
-(is)f(reinstated)g(p)q(ermanen)o(tly)g(if)165 2270 y(the)f(cop)o(yrigh)
-o(t)f(holder)g(noti\014es)h(y)o(ou)f(of)h(the)g(violation)e(b)o(y)h
-(some)h(reasonable)f(means,)h(this)f(is)h(the)165 2325
-y(\014rst)g(time)f(y)o(ou)g(ha)o(v)o(e)h(receiv)o(ed)g(notice)f(of)h
-(violation)e(of)h(this)h(License)g(\(for)f(an)o(y)h(w)o(ork\))f(from)g
-(that)165 2380 y(cop)o(yrigh)o(t)i(holder,)g(and)h(y)o(ou)g(cure)g(the)
-g(violation)e(prior)i(to)f(30)g(da)o(ys)h(after)f(y)o(our)g(receipt)h
-(of)g(the)165 2434 y(notice.)165 2506 y(T)l(ermination)d(of)g(y)o(our)g
-(righ)o(ts)g(under)h(this)f(section)h(do)q(es)g(not)f(terminate)g(the)h
-(licenses)f(of)h(parties)165 2560 y(who)19 b(ha)o(v)o(e)g(receiv)o(ed)g
-(copies)g(or)f(righ)o(ts)g(from)g(y)o(ou)h(under)h(this)e(License.)33
-b(If)19 b(y)o(our)g(righ)o(ts)e(ha)o(v)o(e)165 2615 y(b)q(een)d
-(terminated)e(and)i(not)e(p)q(ermanen)o(tly)h(reinstated,)f(receipt)h
-(of)g(a)g(cop)o(y)g(of)f(some)h(or)f(all)g(of)h(the)165
-2670 y(same)i(material)e(do)q(es)j(not)f(giv)o(e)f(y)o(ou)h(an)o(y)g
-(righ)o(ts)f(to)g(use)i(it.)p eop end
-%%Page: 64 68
-TeXDict begin 64 67 bop 75 -58 a Fs(App)q(endix)16 b(A:)f(GNU)g(F)l
-(ree)g(Do)q(cumen)o(tation)g(License)802 b(64)77 149
-y(10.)29 b(FUTURE)15 b(REVISIONS)j(OF)d(THIS)h(LICENSE)165
-217 y(The)21 b(F)l(ree)g(Soft)o(w)o(are)e(F)l(oundation)h(ma)o(y)g
-(publish)h(new,)h(revised)f(v)o(ersions)f(of)g(the)h(GNU)g(F)l(ree)165
-271 y(Do)q(cumen)o(tation)15 b(License)i(from)e(time)g(to)h(time.)21
-b(Suc)o(h)c(new)f(v)o(ersions)g(will)e(b)q(e)j(similar)d(in)i(spirit)
-165 326 y(to)h(the)g(presen)o(t)g(v)o(ersion,)g(but)g(ma)o(y)f
-(di\013er)h(in)g(detail)f(to)h(address)g(new)g(problems)g(or)g
-(concerns.)165 381 y(See)f Fr(http://www.gnu.org/copyle)o(ft/)p
-Fs(.)165 448 y(Eac)o(h)f(v)o(ersion)e(of)i(the)g(License)g(is)f(giv)o
-(en)g(a)h(distinguishing)e(v)o(ersion)h(n)o(um)o(b)q(er.)20
-b(If)15 b(the)g(Do)q(cumen)o(t)165 503 y(sp)q(eci\014es)23
-b(that)f(a)h(particular)e(n)o(um)o(b)q(ered)j(v)o(ersion)d(of)i(this)f
-(License)h(\\or)f(an)o(y)g(later)g(v)o(ersion")165 558
-y(applies)16 b(to)f(it,)h(y)o(ou)g(ha)o(v)o(e)g(the)g(option)f(of)h
-(follo)o(wing)e(the)i(terms)g(and)g(conditions)g(either)g(of)g(that)165
-613 y(sp)q(eci\014ed)k(v)o(ersion)e(or)h(of)f(an)o(y)h(later)f(v)o
-(ersion)g(that)g(has)h(b)q(een)h(published)g(\(not)e(as)g(a)h(draft\))f
-(b)o(y)165 667 y(the)e(F)l(ree)h(Soft)o(w)o(are)e(F)l(oundation.)22
-b(If)17 b(the)g(Do)q(cumen)o(t)f(do)q(es)g(not)g(sp)q(ecify)h(a)f(v)o
-(ersion)g(n)o(um)o(b)q(er)g(of)165 722 y(this)h(License,)h(y)o(ou)f(ma)
-o(y)f(c)o(ho)q(ose)i(an)o(y)e(v)o(ersion)h(ev)o(er)g(published)h(\(not)
-e(as)h(a)g(draft\))f(b)o(y)i(the)f(F)l(ree)165 777 y(Soft)o(w)o(are)e
-(F)l(oundation.)21 b(If)16 b(the)g(Do)q(cumen)o(t)g(sp)q(eci\014es)h
-(that)e(a)h(pro)o(xy)f(can)h(decide)h(whic)o(h)f(future)165
-832 y(v)o(ersions)f(of)h(this)g(License)h(can)f(b)q(e)h(used,)g(that)f
-(pro)o(xy's)f(public)h(statemen)o(t)g(of)g(acceptance)g(of)g(a)165
-887 y(v)o(ersion)e(p)q(ermanen)o(tly)h(authorizes)g(y)o(ou)g(to)f(c)o
-(ho)q(ose)i(that)e(v)o(ersion)g(for)h(the)g(Do)q(cumen)o(t.)77
-954 y(11.)29 b(RELICENSING)165 1021 y(\\Massiv)o(e)17
-b(Multiauthor)g(Collab)q(oration)f(Site")i(\(or)g(\\MMC)g(Site"\))f
-(means)i(an)o(y)f(W)l(orld)g(Wide)165 1076 y(W)l(eb)g(serv)o(er)g(that)
-f(publishes)h(cop)o(yrigh)o(table)e(w)o(orks)h(and)h(also)f(pro)o
-(vides)h(prominen)o(t)f(facilities)165 1131 y(for)c(an)o(yb)q(o)q(dy)h
-(to)f(edit)h(those)f(w)o(orks.)19 b(A)14 b(public)f(wiki)g(that)g(an)o
-(yb)q(o)q(dy)h(can)g(edit)g(is)f(an)h(example)f(of)165
-1186 y(suc)o(h)k(a)g(serv)o(er.)24 b(A)17 b(\\Massiv)o(e)e(Multiauthor)
-g(Collab)q(oration")g(\(or)h(\\MMC"\))f(con)o(tained)h(in)h(the)165
-1240 y(site)e(means)g(an)o(y)g(set)g(of)f(cop)o(yrigh)o(table)g(w)o
-(orks)g(th)o(us)h(published)h(on)f(the)g(MMC)g(site.)165
-1308 y(\\CC-BY-SA")j(means)f(the)h(Creativ)o(e)e(Commons)h(A)o
-(ttribution-Share)f(Alik)o(e)h(3.0)g(license)g(pub-)165
-1362 y(lished)c(b)o(y)h(Creativ)o(e)e(Commons)g(Corp)q(oration,)g(a)h
-(not-for-pro\014t)g(corp)q(oration)f(with)h(a)g(principal)165
-1417 y(place)g(of)f(business)i(in)f(San)g(F)l(rancisco,)f(California,)f
-(as)h(w)o(ell)g(as)h(future)g(cop)o(yleft)f(v)o(ersions)g(of)h(that)165
-1472 y(license)i(published)h(b)o(y)f(that)g(same)f(organization.)165
-1539 y(\\Incorp)q(orate")h(means)g(to)g(publish)g(or)g(republish)g(a)g
-(Do)q(cumen)o(t,)g(in)g(whole)g(or)g(in)g(part,)g(as)g(part)165
-1594 y(of)g(another)g(Do)q(cumen)o(t.)165 1661 y(An)e(MMC)g(is)f
-(\\eligible)g(for)g(relicensing")h(if)f(it)h(is)f(licensed)i(under)g
-(this)e(License,)i(and)f(if)g(all)f(w)o(orks)165 1716
-y(that)20 b(w)o(ere)h(\014rst)g(published)g(under)h(this)e(License)i
-(somewhere)f(other)g(than)g(this)f(MMC,)g(and)165 1771
-y(subsequen)o(tly)e(incorp)q(orated)e(in)i(whole)f(or)g(in)g(part)g(in)
-o(to)f(the)h(MMC,)f(\(1\))h(had)g(no)h(co)o(v)o(er)f(texts)165
-1826 y(or)e(in)o(v)m(arian)o(t)e(sections,)i(and)g(\(2\))f(w)o(ere)h
-(th)o(us)g(incorp)q(orated)g(prior)f(to)h(No)o(v)o(em)o(b)q(er)g(1,)f
-(2008.)165 1893 y(The)21 b(op)q(erator)e(of)h(an)g(MMC)f(Site)h(ma)o(y)
-g(republish)h(an)f(MMC)f(con)o(tained)h(in)g(the)h(site)e(under)165
-1948 y(CC-BY-SA)d(on)f(the)g(same)g(site)f(at)h(an)o(y)f(time)h(b)q
-(efore)g(August)g(1,)g(2009,)e(pro)o(vided)i(the)g(MMC)f(is)165
-2002 y(eligible)g(for)h(relicensing.)p eop end
-%%Page: 65 69
-TeXDict begin 65 68 bop 75 -58 a Fs(App)q(endix)16 b(A:)f(GNU)g(F)l
-(ree)g(Do)q(cumen)o(tation)g(License)802 b(65)75 149
-y Fq(ADDENDUM:)20 b(Ho)n(w)h(to)h(use)g(this)g(License)g(for)g(y)n(our)
-h(do)r(cumen)n(ts)75 229 y Fs(T)l(o)17 b(use)h(this)e(License)i(in)g(a)
-f(do)q(cumen)o(t)g(y)o(ou)g(ha)o(v)o(e)g(written,)g(include)g(a)g(cop)o
-(y)g(of)g(the)h(License)g(in)f(the)75 284 y(do)q(cumen)o(t)f(and)f(put)
-g(the)h(follo)o(wing)d(cop)o(yrigh)o(t)g(and)j(license)f(notices)g
-(just)g(after)f(the)h(title)f(page:)234 340 y Fe(Copyright)i(\(C\))38
-b Fc(year)k(your)19 b(name)t Fe(.)234 384 y(Permission)d(is)j(granted)e
-(to)i(copy,)e(distribute)f(and/or)h(modify)h(this)g(document)234
-427 y(under)g(the)g(terms)g(of)h(the)f(GNU)h(Free)f(Documenta)o(tio)o
-(n)e(License,)h(Version)g(1.3)234 471 y(or)i(any)g(later)e(version)g
-(published)f(by)j(the)g(Free)f(Software)e(Foundation)o(;)234
-514 y(with)i(no)h(Invariant)d(Sections,)g(no)j(Front-Cove)o(r)e(Texts,)
-g(and)h(no)h(Back-Cover)234 558 y(Texts.)37 b(A)19 b(copy)f(of)h(the)g
-(license)e(is)h(included)f(in)i(the)f(section)f(entitled)g(``GNU)234
-601 y(Free)h(Documentat)o(ion)e(License'')o(.)137 669
-y Fs(If)k(y)o(ou)g(ha)o(v)o(e)g(In)o(v)m(arian)o(t)f(Sections,)h(F)l
-(ron)o(t-Co)o(v)o(er)f(T)l(exts)g(and)h(Bac)o(k-Co)o(v)o(er)f(T)l
-(exts,)i(replace)f(the)75 724 y(\\with)s(.)10 b(.)g(.)5
-b(T)l(exts.")20 b(line)15 b(with)f(this:)273 780 y Fe(with)19
-b(the)f(Invariant)e(Sections)h(being)g Fc(list)h(their)g(titles)t
-Fe(,)f(with)273 823 y(the)i(Front-Cov)o(er)d(Texts)i(being)g
-Fc(list)t Fe(,)g(and)g(with)g(the)h(Back-Cove)o(r)d(Texts)273
-867 y(being)i Fc(list)t Fe(.)137 934 y Fs(If)g(y)o(ou)f(ha)o(v)o(e)h
-(In)o(v)m(arian)o(t)f(Sections)g(without)g(Co)o(v)o(er)f(T)l(exts,)i
-(or)f(some)g(other)g(com)o(bination)g(of)g(the)75 989
-y(three,)e(merge)g(those)g(t)o(w)o(o)f(alternativ)o(es)f(to)i(suit)f
-(the)h(situation.)137 1056 y(If)d(y)o(our)g(do)q(cumen)o(t)g(con)o
-(tains)f(non)o(trivial)f(examples)i(of)f(program)g(co)q(de,)i(w)o(e)f
-(recommend)g(releasing)75 1111 y(these)22 b(examples)f(in)g(parallel)g
-(under)h(y)o(our)f(c)o(hoice)g(of)g(free)h(soft)o(w)o(are)e(license,)i
-(suc)o(h)g(as)g(the)f(GNU)75 1166 y(General)15 b(Public)g(License,)g
-(to)g(p)q(ermit)g(their)f(use)i(in)f(free)g(soft)o(w)o(are.)p
-eop end
-%%Page: 66 70
-TeXDict begin 66 69 bop 75 -58 a Fs(Concept)15 b(Index)1466
-b(66)75 149 y Fo(Concept)27 b(Index)75 319 y Fq(A)75
-377 y Fb(application-sp)q(eci\014c)14 b(completion)f(functions)c
-Fa(:)e(:)f(:)g(:)g(:)g(:)g(:)21 b Fb(43)75 502 y Fq(C)75
-561 y Fb(command)14 b(editing)9 b Fa(:)d(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)21 b Fb(1)75 686 y Fq(E)75 744 y Fb(editing)13
-b(command)h(lines)8 b Fa(:)d(:)h(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
-g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)20
-b Fb(1)75 869 y Fq(I)75 927 y Fb(initialization)12 b(\014le,)h
-(readline)8 b Fa(:)e(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
-g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)20 b Fb(4)75 971
-y(in)o(teraction,)13 b(readline)e Fa(:)c(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
-g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
-(:)g(:)24 b Fb(1)75 1096 y Fq(K)75 1154 y Fb(kill)12
-b(ring)g Fa(:)6 b(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)24 b Fb(2)1012 319 y(killing)13
-b(text)e Fa(:)6 b(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)g(:)g(:)24 b Fb(2)1012 463 y Fq(N)1012 528
-y Fb(notation,)14 b(readline)5 b Fa(:)i(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g
-(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
-g(:)g(:)g(:)g(:)19 b Fb(1)1012 671 y Fq(R)1012 737 y
-Fb(readline,)13 b(function)6 b Fa(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)19 b Fb(22)1012 880 y Fq(V)1012 946 y Fb(v)n(ariables,)13
-b(readline)f Fa(:)6 b(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)24
-b Fb(4)1012 1089 y Fq(Y)1012 1154 y Fb(y)o(anking)14
-b(text)6 b Fa(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g
-(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
-g(:)g(:)g(:)g(:)19 b Fb(2)p eop end
-%%Page: 67 71
-TeXDict begin 67 70 bop 75 -58 a Fs(F)l(unction)15 b(and)g(V)l(ariable)
-g(Index)1187 b(67)75 149 y Fo(F)-7 b(unction)27 b(and)g(V)-7
-b(ariable)28 b(Index)p 80 305 21 3 v 75 363 a Fe(_rl_digit_)o(p)7
-b Fa(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)23
-b Fb(38)75 407 y Fe(_rl_digit_)o(va)o(lue)5 b Fa(:)s(:)h(:)g(:)g(:)g(:)
-g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)18 b Fb(38)75 450 y Fe(_rl_lowerc)o(as)o
-(e_p)5 b Fa(:)s(:)h(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)18
-b Fb(38)75 494 y Fe(_rl_to_low)o(er)6 b Fa(:)g(:)g(:)g(:)g(:)g(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)22 b Fb(38)75 538 y Fe(_rl_to_upp)o(er)
-6 b Fa(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)22
-b Fb(38)75 581 y Fe(_rl_upperc)o(as)o(e_p)5 b Fa(:)s(:)h(:)g(:)g(:)g(:)
-g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)18 b Fb(38)75 707 y Fq(A)75
-766 y Fe(abort)11 b(\(C-g\))6 b Fa(:)t(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
-g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)18 b Fb(19)75 809 y Fe(accept-lin)o(e)
-10 b(\(Newline)f(or)j(Return\))t Fa(:)t(:)6 b(:)g(:)g(:)g(:)g(:)g(:)g
-(:)g(:)g(:)g(:)g(:)17 b Fb(14)75 935 y Fq(B)75 993 y
-Fe(backward-c)o(ha)o(r)10 b(\(C-b\))t Fa(:)t(:)c(:)g(:)g(:)g(:)g(:)g(:)
-g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
-(:)17 b Fb(14)75 1037 y Fe(backward-d)o(el)o(ete)o(-c)o(har)9
-b(\(Rubout\))f Fa(:)s(:)e(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
-(:)21 b Fb(16)75 1081 y Fe(backward-k)o(il)o(l-l)o(in)o(e)10
-b(\(C-x)h(Rubout\))e Fa(:)t(:)d(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
-22 b Fb(17)75 1124 y Fe(backward-k)o(il)o(l-w)o(or)o(d)10
-b(\(M-DEL\))t Fa(:)s(:)c(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)16 b Fb(17)75 1168 y Fe(backward-w)o(or)o(d)10
-b(\(M-b\))t Fa(:)t(:)c(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)17 b Fb(14)75
-1212 y Fe(beginning-)o(of)o(-hi)o(st)o(ory)9 b(\(M-<\))t
-Fa(:)t(:)d(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)16 b Fb(15)75 1255 y Fe(beginning-)o(of)o(-li)o(ne)9
-b(\(C-a\))e Fa(:)e(:)h(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)g(:)g(:)20 b Fb(14)75 1299 y(b)q(ell-st)o(yle)10
-b Fa(:)c(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g
-(:)g(:)g(:)g(:)g(:)23 b Fb(4)75 1343 y(bind-tt)o(y-sp)q(ecial-c)o(hars)
-7 b Fa(:)h(:)e(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)20 b Fb(5)75
-1468 y Fq(C)75 1526 y Fe(call-last-)o(kb)o(d-m)o(ac)o(ro)9
-b(\(C-x)j(e\))6 b Fa(:)f(:)h(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)18 b Fb(19)75 1569 y Fe(capitalize)o(-w)o(ord)9
-b(\(M-c\))f Fa(:)e(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)23 b Fb(16)75 1613
-y Fe(character-)o(se)o(arc)o(h)10 b(\(C-]\))f Fa(:)s(:)d(:)h(:)f(:)g(:)
-g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)21
-b Fb(20)75 1657 y Fe(character-)o(se)o(arc)o(h-)o(bac)o(kwa)o(rd)9
-b(\(M-C-]\))s Fa(:)t(:)d(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)16
-b Fb(20)75 1700 y Fe(clear-scre)o(en)9 b(\(C-l\))c Fa(:)g(:)h(:)g(:)g
-(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)g(:)g(:)g(:)18 b Fb(14)75 1744 y(commen)o(t-b)q(egin)9
-b Fa(:)e(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)21
-b Fb(5)75 1788 y Fe(complete)10 b(\(TAB\))e Fa(:)e(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)g(:)g(:)23 b Fb(18)75 1831 y(completion-displa)o
-(y-width)11 b Fa(:)6 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)23 b Fb(5)75 1875
-y(completion-ignore-case)6 b Fa(:)i(:)e(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)19
-b Fb(5)75 1918 y(completion-map-case)t Fa(:)8 b(:)e(:)g(:)g(:)g(:)g(:)g
-(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
-g(:)g(:)g(:)17 b Fb(5)75 1962 y(completion-pre\014x-displa)o(y-length)t
-Fa(:)8 b(:)e(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-16 b Fb(5)75 2006 y(completion-query-items)9 b Fa(:)d(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)g(:)21 b Fb(5)75 2049 y(con)o(v)o(ert-meta)11 b Fa(:)6
-b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)23
-b Fb(5)75 2093 y Fe(copy-backw)o(ar)o(d-w)o(or)o(d)10
-b(\(\))f Fa(:)d(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
-(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)23 b Fb(17)75 2137 y Fe(copy-forwa)o(rd)
-o(-wo)o(rd)9 b(\(\))i Fa(:)6 b(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)24
-b Fb(18)75 2180 y Fe(copy-regio)o(n-)o(as-)o(ki)o(ll)9
-b(\(\))g Fa(:)c(:)h(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)21 b Fb(17)75 2306 y Fq(D)75
-2365 y Fe(delete-cha)o(r)10 b(\(C-d\))c Fa(:)t(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)19 b Fb(16)75 2408 y Fe(delete-cha)o(r-)o(or-)o(li)o(st)9
-b(\(\))g Fa(:)c(:)h(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)21 b Fb(19)75 2452 y Fe(delete-hor)o(iz)o
-(ont)o(al)o(-sp)o(ace)9 b(\(\))t Fa(:)c(:)h(:)g(:)g(:)g(:)g(:)g(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)16 b Fb(17)75 2495
-y Fe(digit-argu)o(me)o(nt)9 b(\()p Fc(M-0)p Fe(,)i Fc(M-1)p
-Fe(,)h(...)f Fc(M--)p Fe(\))t Fa(:)t(:)6 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)16 b Fb(18)75 2539 y(disable-completion)6 b Fa(:)h(:)f(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)g(:)g(:)19 b Fb(5)75 2583 y Fe(do-upperca)o(se)o
-(-ve)o(rs)o(ion)9 b(\(M-a,)i(M-b,)g(M-)p Fc(x)t Fe(,)h(...)o(\))155
-2626 y Fa(:)6 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
-g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)16 b Fb(19)75
-2670 y Fe(downcase-w)o(or)o(d)10 b(\(M-l\))t Fa(:)t(:)c(:)g(:)g(:)g(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
-g(:)g(:)17 b Fb(16)1012 305 y Fe(dump-functi)o(on)o(s)10
-b(\(\))c Fa(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)20
-b Fb(20)1012 349 y Fe(dump-macros)9 b(\(\))g Fa(:)e(:)f(:)g(:)g(:)g(:)g
-(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
-g(:)g(:)g(:)g(:)g(:)g(:)g(:)24 b Fb(20)1012 393 y Fe(dump-variab)o(le)o
-(s)10 b(\(\))c Fa(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)20
-b Fb(20)1012 520 y Fq(E)1012 578 y Fb(editing-mo)q(de)11
-b Fa(:)6 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)23 b Fb(6)1012 622 y Fe(emacs-editi)o(ng)o(-mo)o(de)9
-b(\(C-e\))d Fa(:)t(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)19 b Fb(20)1012 665 y(enable-k)o(eypad)12
-b Fa(:)6 b(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-22 b Fb(6)1012 709 y Fe(end-kbd-mac)o(ro)9 b(\(C-x)i(\)\))5
-b Fa(:)h(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)g(:)g(:)18 b Fb(19)1012 753 y Fe(end-of-hist)o(or)o
-(y)10 b(\(M->\))f Fa(:)d(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)24 b Fb(15)1012
-797 y Fe(end-of-line)9 b(\(C-e\))d Fa(:)f(:)h(:)g(:)g(:)g(:)g(:)g(:)g
-(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
-g(:)g(:)20 b Fb(14)1012 841 y Fe(exchange-po)o(in)o(t-a)o(nd)o(-ma)o
-(rk)9 b(\(C-x)j(C-x\))7 b Fa(:)t(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)20
-b Fb(20)1012 884 y(expand-tilde)7 b Fa(:)h(:)e(:)g(:)g(:)g(:)g(:)g(:)g
-(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
-g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)20 b Fb(6)1012
-1010 y Fq(F)1012 1069 y Fe(forward-bac)o(kw)o(ard)o(-d)o(ele)o(te)o
-(-ch)o(ar)9 b(\(\))d Fa(:)f(:)h(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
-19 b Fb(16)1012 1112 y Fe(forward-cha)o(r)10 b(\(C-f\))5
-b Fa(:)t(:)h(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)18 b Fb(14)1012
-1156 y Fe(forward-sea)o(rc)o(h-h)o(is)o(tor)o(y)10 b(\(C-s\))d
-Fa(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)23
-b Fb(15)1012 1200 y Fe(forward-wor)o(d)10 b(\(M-f\))5
-b Fa(:)t(:)h(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)18 b Fb(14)1012
-1322 y Fq(H)1012 1380 y Fb(history-preserv)o(e-p)q(oin)o(t)5
-b Fa(:)j(:)e(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)18 b Fb(6)1012
-1424 y Fe(history-sea)o(rc)o(h-b)o(ac)o(kwa)o(rd)9 b(\(\))t
-Fa(:)c(:)h(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
-(:)17 b Fb(15)1012 1468 y Fe(history-sea)o(rc)o(h-f)o(or)o(war)o(d)10
-b(\(\))5 b Fa(:)g(:)h(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)18 b Fb(15)1012 1511 y(history-size)8
-b Fa(:)f(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)g(:)21 b Fb(6)1012 1555 y(horizon)o(tal-scroll-mo)q(de)12
-b Fa(:)6 b(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)24 b Fb(6)1012
-1673 y Fq(I)1012 1731 y Fb(input-meta)11 b Fa(:)6 b(:)g(:)g(:)g(:)g(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
-g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)23
-b Fb(6)1012 1775 y Fe(insert-comm)o(en)o(t)10 b(\(M-#\))f
-Fa(:)d(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
-(:)g(:)g(:)g(:)g(:)g(:)h(:)24 b Fb(20)1012 1819 y Fe(insert-comp)o(le)o
-(tio)o(ns)9 b(\(M-*\))d Fa(:)t(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)19 b Fb(18)1012 1862
-y(isearc)o(h-terminators)11 b Fa(:)6 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)23 b Fb(6)1012 1980 y Fq(K)1012 2038 y Fb(k)o(eymap)t
-Fa(:)7 b(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)g(:)g(:)17 b Fb(7)1012 2082 y Fe(kill-line)10
-b(\(C-k\))f Fa(:)t(:)d(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)22
-b Fb(17)1012 2126 y Fe(kill-region)9 b(\(\))g Fa(:)e(:)f(:)g(:)g(:)g(:)
-g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
-(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)24 b Fb(17)1012 2170 y
-Fe(kill-whole-)o(li)o(ne)9 b(\(\))c Fa(:)h(:)g(:)g(:)g(:)g(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
-h(:)18 b Fb(17)1012 2213 y Fe(kill-word)10 b(\(M-d\))f
-Fa(:)t(:)d(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)22
-b Fb(17)1012 2335 y Fq(M)1012 2393 y Fb(mark-mo)q(di\014ed-lines)5
-b Fa(:)j(:)e(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)18 b
-Fb(7)1012 2437 y(mark-symlink)o(ed-directories)t Fa(:)8
-b(:)e(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)17 b Fb(7)1012 2481 y(matc)o(h-hidden-\014les)9
-b Fa(:)f(:)e(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)22
-b Fb(7)1012 2525 y Fe(menu-comple)o(te)9 b(\(\))f Fa(:)d(:)h(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)g(:)g(:)21 b Fb(18)1012 2569 y Fe(menu-comple)o(te)o
-(-ba)o(ck)o(war)o(d)10 b(\(\))5 b Fa(:)g(:)h(:)g(:)g(:)g(:)g(:)g(:)g(:)
-g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)18 b Fb(19)1012
-2612 y(men)o(u-complete-displa)o(y-pre\014x)13 b Fa(:)6
-b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
-(:)24 b Fb(7)1012 2656 y(meta-\015ag)8 b Fa(:)f(:)f(:)g(:)g(:)g(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
-g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)21
-b Fb(6)p eop end
-%%Page: 68 72
-TeXDict begin 68 71 bop 75 -58 a Fs(F)l(unction)15 b(and)g(V)l(ariable)
-g(Index)1187 b(68)75 149 y Fq(N)75 209 y Fe(next-histo)o(ry)9
-b(\(C-n\))c Fa(:)g(:)h(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)18
-b Fb(15)75 253 y Fe(non-increm)o(en)o(tal)o(-f)o(orw)o(ard)o(-s)o(ear)o
-(ch)o(-hi)o(st)o(ory)9 b(\(M-n\))155 296 y Fa(:)d(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)16 b Fb(15)75 341 y Fe(non-increm)o(en)o(tal)o(-r)o(eve)o(rse)o
-(-s)o(ear)o(ch)o(-hi)o(st)o(ory)9 b(\(M-p\))155 384 y
-Fa(:)d(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)16 b Fb(15)75 504 y Fq(O)75
-563 y Fb(output-meta)7 b Fa(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)g(:)g(:)19 b Fb(7)75 607 y Fe(overwrite-)o(mo)o(de)
-9 b(\(\))d Fa(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
-(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)19
-b Fb(17)75 731 y Fq(P)75 790 y Fb(page-completions)11
-b Fa(:)6 b(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)22
-b Fb(7)75 835 y Fe(possible-c)o(om)o(ple)o(ti)o(ons)9
-b(\(M-?\))t Fa(:)t(:)d(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)16 b Fb(18)75 879 y Fe(prefix-met)o(a)10
-b(\(ESC\))c Fa(:)t(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
-(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)19
-b Fb(19)75 923 y Fe(previous-h)o(is)o(tor)o(y)10 b(\(C-p\))f
-Fa(:)s(:)d(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)21 b Fb(14)75 1052 y Fq(Q)75 1111
-y Fe(quoted-ins)o(er)o(t)10 b(\(C-q)h(or)h(C-v\))d Fa(:)d(:)g(:)g(:)g
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)23
-b Fb(16)75 1240 y Fq(R)75 1300 y Fe(re-read-in)o(it)o(-fi)o(le)9
-b(\(C-x)i(C-r\))6 b Fa(:)f(:)h(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)18 b Fb(19)75 1344 y Fe(readline)6
-b Fa(:)s(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
-g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
-(:)g(:)g(:)g(:)19 b Fb(22)75 1388 y Fe(redraw-cur)o(re)o(nt-)o(li)o(ne)
-9 b(\(\))g Fa(:)c(:)h(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)21 b Fb(14)75 1432 y Fe(reverse-se)o(ar)
-o(ch-)o(hi)o(sto)o(ry)9 b(\(C-r\))f Fa(:)e(:)g(:)g(:)g(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)22 b Fb(15)75 1476 y(rev)o
-(ert-all-at-newline)10 b Fa(:)c(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)23
-b Fb(8)75 1521 y Fe(revert-lin)o(e)10 b(\(M-r\))c Fa(:)t(:)g(:)g(:)g(:)
-g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)19 b Fb(19)75 1565 y Fe(rl_add_def)o(un)6
-b Fa(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)22
-b Fb(30)75 1609 y Fe(rl_add_fun)o(ma)o(p_e)o(nt)o(ry)9
-b Fa(:)s(:)d(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)22 b Fb(33)75 1653 y
-Fe(rl_add_und)o(o)7 b Fa(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
-g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)23 b Fb(34)75 1697 y Fe(rl_alphabe)o(ti)o(c)8
-b Fa(:)s(:)e(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
-g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)21
-b Fb(37)75 1742 y Fe(rl_already)o(_p)o(rom)o(pt)o(ed)9
-b Fa(:)s(:)d(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)22 b Fb(26)75 1786 y
-Fe(rl_attempt)o(ed)o(_co)o(mp)o(let)o(ion)o(_f)o(unc)o(ti)o(on)6
-b Fa(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)22 b Fb(45)75
-1830 y Fe(rl_attempt)o(ed)o(_co)o(mp)o(let)o(ion)o(_o)o(ver)5
-b Fa(:)s(:)h(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)19
-b Fb(49)75 1874 y Fe(rl_basic_q)o(uo)o(te_)o(ch)o(ara)o(cte)o(rs)6
-b Fa(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
-g(:)23 b Fb(47)75 1918 y Fe(rl_basic_w)o(or)o(d_b)o(re)o(ak_)o(cha)o
-(ra)o(cte)o(rs)s Fa(:)s(:)6 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)16 b Fb(47)75 1963 y Fe(rl_begin_u)o(nd)o(o_g)o(ro)o(up)9
-b Fa(:)s(:)d(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)22 b Fb(33)75 2007 y
-Fe(rl_bind_ke)o(y)7 b Fa(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
-g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)23 b Fb(31)75 2051 y Fe(rl_bind_ke)o(y_)o(if_)o(un)o
-(bou)o(nd)5 b Fa(:)s(:)h(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)18 b Fb(31)75 2095 y
-Fe(rl_bind_ke)o(y_)o(if_)o(un)o(bou)o(nd_)o(in)o(_ma)o(p)5
-b Fa(:)s(:)h(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)17
-b Fb(31)75 2139 y Fe(rl_bind_ke)o(y_)o(in_)o(ma)o(p)7
-b Fa(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)23 b Fb(31)75 2184
-y Fe(rl_bind_ke)o(ys)o(eq)6 b Fa(:)t(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
-g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
-(:)g(:)g(:)g(:)20 b Fb(31)75 2228 y Fe(rl_bind_ke)o(ys)o(eq_)o(if)o
-(_un)o(bou)o(nd)6 b Fa(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g
-(:)g(:)g(:)g(:)g(:)g(:)23 b Fb(32)75 2272 y Fe(rl_bind_ke)o(ys)o(eq_)o
-(if)o(_un)o(bou)o(nd)o(_in)o(_m)o(ap)6 b Fa(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)22 b Fb(32)75 2316 y Fe(rl_bind_ke)o(ys)o(eq_)o(in)o(_ma)o
-(p)6 b Fa(:)s(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)19 b Fb(32)75 2361 y Fe(rl_binding)o(_k)
-o(eym)o(ap)r Fa(:)t(:)6 b(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)16
-b Fb(27)75 2405 y Fe(rl_callbac)o(k_)o(han)o(dl)o(er_)o(ins)o(ta)o(ll)7
-b Fa(:)s(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)20
-b Fb(39)75 2449 y Fe(rl_callbac)o(k_)o(han)o(dl)o(er_)o(rem)o(ov)o(e)9
-b Fa(:)s(:)d(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-21 b Fb(39)75 2493 y Fe(rl_callbac)o(k_)o(rea)o(d_)o(cha)o(r)6
-b Fa(:)s(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)g(:)19 b Fb(39)75 2537 y Fe(rl_catch_s)o(ig)o(nal)o
-(s)t Fa(:)s(:)6 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)17
-b Fb(42)75 2582 y Fe(rl_catch_s)o(ig)o(win)o(ch)r Fa(:)t(:)6
-b(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)16 b Fb(42)75 2626
-y Fe(rl_char_is)o(_q)o(uot)o(ed)o(_p)9 b Fa(:)s(:)d(:)g(:)g(:)g(:)g(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
-22 b Fb(46)75 2670 y Fe(rl_cleanup)o(_a)o(fte)o(r_)o(sig)o(nal)s
-Fa(:)s(:)6 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
-g(:)g(:)g(:)g(:)17 b Fb(42)1012 149 y Fe(rl_clear_me)o(ss)o(age)s
-Fa(:)t(:)6 b(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)18 b
-Fb(35)1012 194 y Fe(rl_clear_pe)o(nd)o(ing)o(_i)o(npu)o(t)5
-b Fa(:)s(:)h(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
-g(:)g(:)g(:)g(:)g(:)19 b Fb(36)1012 238 y Fe(rl_clear_si)o(gn)o(als)s
-Fa(:)t(:)6 b(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)18 b
-Fb(43)1012 282 y Fe(rl_complete)7 b Fa(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)24 b Fb(44)1012 326 y
-Fe(rl_complete)o(_i)o(nte)o(rn)o(al)7 b Fa(:)t(:)f(:)g(:)g(:)g(:)g(:)g
-(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)21
-b Fb(44)1012 371 y Fe(rl_complete)o(r_)o(quo)o(te)o(_ch)o(ar)o(act)o
-(ers)t Fa(:)s(:)6 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)18
-b Fb(47)1012 415 y Fe(rl_complete)o(r_)o(wor)o(d_)o(bre)o(ak)o(_ch)o
-(ara)o(ct)o(ers)6 b Fa(:)s(:)g(:)g(:)h(:)f(:)g(:)g(:)20
-b Fb(47)1012 459 y Fe(rl_completi)o(on)o(_ap)o(pe)o(nd_)o(ch)o(ara)o
-(cte)o(r)s Fa(:)s(:)7 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)17
-b Fb(48)1012 503 y Fe(rl_completi)o(on)o(_di)o(sp)o(lay)o(_m)o(atc)o
-(hes)o(_h)o(ook)6 b Fa(:)s(:)g(:)g(:)h(:)f(:)g(:)g(:)20
-b Fb(47)1012 547 y Fe(rl_completi)o(on)o(_en)o(tr)o(y_f)o(un)o(cti)o
-(on)6 b Fa(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)22
-b Fb(44,)13 b(45)1012 592 y Fe(rl_completi)o(on)o(_fo)o(un)o(d_q)o(uo)o
-(te)7 b Fa(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)23 b Fb(48)1012 636 y Fe(rl_completi)o(on)o(_in)o(vo)o(kin)o
-(g_)o(key)8 b Fa(:)s(:)e(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)g(:)g(:)22 b Fb(49)1012 680 y Fe(rl_completi)o(on)o(_ma)o(rk)o(_sy)
-o(ml)o(ink)o(_di)o(rs)7 b Fa(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-24 b Fb(48)1012 724 y Fe(rl_completi)o(on)o(_ma)o(tc)o(hes)6
-b Fa(:)s(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)g(:)g(:)g(:)g(:)g(:)20 b Fb(45)1012 769 y Fe(rl_completi)o(on)o
-(_mo)o(de)7 b Fa(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)24 b
-Fb(44)1012 813 y Fe(rl_completi)o(on)o(_qu)o(er)o(y_i)o(te)o(ms)7
-b Fa(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)23 b Fb(47)1012 857 y Fe(rl_completi)o(on)o(_qu)o(ot)o(e_c)o(ha)o
-(rac)o(ter)t Fa(:)s(:)6 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)18 b Fb(48)1012 901 y Fe(rl_completi)o(on)o(_su)o(pp)o(res)o(s_)o
-(app)o(end)t Fa(:)s(:)6 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)18 b Fb(48)1012 945 y Fe(rl_completi)o(on)o(_su)o(pp)o(res)o(s_)o
-(quo)o(te)6 b Fa(:)s(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)19 b Fb(48)1012 990 y Fe(rl_completi)o(on)o(_ty)o(pe)7
-b Fa(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)24 b Fb(49)1012 1034
-y Fe(rl_completi)o(on)o(_wo)o(rd)o(_br)o(ea)o(k_h)o(ook)t
-Fa(:)s(:)6 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)18
-b Fb(47)1012 1078 y Fe(rl_copy_key)o(ma)o(p)7 b Fa(:)s(:)f(:)g(:)g(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
-g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)20 b Fb(30)1012 1122
-y Fe(rl_copy_tex)o(t)6 b Fa(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
-g(:)g(:)g(:)g(:)23 b Fb(35)1012 1167 y Fe(rl_crlf)7 b
-Fa(:)t(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g
-(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
-g(:)g(:)g(:)g(:)21 b Fb(34)1012 1211 y Fe(rl_delete_t)o(ex)o(t)7
-b Fa(:)s(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)20
-b Fb(35)1012 1255 y Fe(rl_deprep_t)o(er)o(m_f)o(un)o(cti)o(on)s
-Fa(:)t(:)6 b(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)17 b Fb(27)1012 1299 y Fe(rl_deprep_t)o(er)o(min)o(al)7
-b Fa(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)24 b Fb(37)1012 1343
-y Fe(rl_ding)7 b Fa(:)t(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)21 b Fb(37)1012 1388
-y Fe(rl_director)o(y_)o(com)o(pl)o(eti)o(on)o(_ho)o(ok)6
-b Fa(:)s(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)19
-b Fb(46)1012 1432 y Fe(rl_discard_)o(ke)o(yma)o(p)s Fa(:)s(:)6
-b(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)16 b Fb(30)1012 1476
-y Fe(rl_dispatch)o(in)o(g)7 b Fa(:)s(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)20 b Fb(25)1012 1520 y Fe(rl_display_)o(ma)o(tch)o(_l)o
-(ist)6 b Fa(:)s(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)20 b Fb(38)1012 1564 y
-Fe(rl_display_)o(pr)o(omp)o(t)s Fa(:)s(:)6 b(:)g(:)g(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)16 b Fb(26)1012 1609 y Fe(rl_do_undo)s Fa(:)s(:)6
-b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)17
-b Fb(34)1012 1653 y Fe(rl_done)7 b Fa(:)t(:)f(:)g(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)21
-b Fb(25)1012 1697 y Fe(rl_echo_sig)o(na)o(l_c)o(ha)o(r)9
-b Fa(:)s(:)d(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
-g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)22 b Fb(42)1012 1741
-y Fe(rl_editing_)o(mo)o(de)5 b Fa(:)s(:)h(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-g(:)g(:)g(:)19 b Fb(29)1012 1786 y Fe(rl_end)9 b Fa(:)t(:)d(:)g(:)g(:)g
-(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
-g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)22
-b Fb(25)1012 1830 y Fe(rl_end_undo)o(_g)o(rou)o(p)s Fa(:)s(:)6
-b(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)16 b Fb(33)1012 1874
-y Fe(rl_erase_em)o(pt)o(y_l)o(in)o(e)9 b Fa(:)s(:)d(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-22 b Fb(25)1012 1918 y Fe(rl_event_ho)o(ok)7 b Fa(:)t(:)f(:)g(:)g(:)g
-(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
-g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)21 b Fb(27)1012 1962
-y Fe(rl_execute_)o(ne)o(xt)5 b Fa(:)s(:)h(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-g(:)g(:)g(:)19 b Fb(36)1012 2007 y Fe(rl_executin)o(g_)o(key)o(ma)o(p)9
-b Fa(:)s(:)d(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
-g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)22 b Fb(27)1012 2051
-y Fe(rl_executin)o(g_)o(mac)o(ro)7 b Fa(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
-24 b Fb(27)1012 2095 y Fe(rl_expand_p)o(ro)o(mpt)s Fa(:)t(:)6
-b(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)18 b Fb(35)1012
-2139 y Fe(rl_explicit)o(_a)o(rg)5 b Fa(:)s(:)h(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)g(:)g(:)g(:)19 b Fb(29)1012 2184 y Fe(rl_extend_l)o(in)o(e_b)o(uf)o
-(fer)6 b Fa(:)s(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)20 b Fb(37)1012 2228 y
-Fe(rl_filename)o(_c)o(omp)o(le)o(tio)o(n_)o(des)o(ire)o(d)s
-Fa(:)s(:)7 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)17
-b Fb(48)1012 2272 y Fe(rl_filename)o(_c)o(omp)o(le)o(tio)o(n_)o(fun)o
-(cti)o(on)7 b Fa(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)24
-b Fb(45)1012 2316 y Fe(rl_filename)o(_d)o(equ)o(ot)o(ing)o(_f)o(unc)o
-(tio)o(n)s Fa(:)s(:)7 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)17
-b Fb(46)1012 2360 y Fe(rl_filename)o(_q)o(uot)o(e_)o(cha)o(ra)o(cte)o
-(rs)6 b Fa(:)s(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)19
-b Fb(47)1012 2405 y Fe(rl_filename)o(_q)o(uot)o(in)o(g_d)o(es)o(ire)o
-(d)7 b Fa(:)s(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
-(:)21 b Fb(49)1012 2449 y Fe(rl_filename)o(_q)o(uot)o(in)o(g_f)o(un)o
-(cti)o(on)6 b Fa(:)s(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)19 b Fb(45)1012 2493 y Fe(rl_filename)o(_r)o(ewr)o(it)o(e_h)o(oo)o
-(k)8 b Fa(:)e(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
-(:)g(:)g(:)h(:)24 b Fb(46)1012 2537 y Fe(rl_forced_u)o(pd)o(ate)o(_d)o
-(isp)o(la)o(y)8 b Fa(:)e(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
-g(:)g(:)g(:)g(:)g(:)h(:)24 b Fb(34)1012 2582 y Fe(rl_free)7
-b Fa(:)t(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
-g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
-(:)g(:)g(:)g(:)g(:)21 b Fb(37)1012 2626 y Fe(rl_free_key)o(ma)o(p)7
-b Fa(:)s(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)20
-b Fb(30)1012 2670 y Fe(rl_free_lin)o(e_)o(sta)o(te)7
-b Fa(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)24 b Fb(42)p eop
-end
-%%Page: 69 73
-TeXDict begin 69 72 bop 75 -58 a Fs(F)l(unction)15 b(and)g(V)l(ariable)
-g(Index)1187 b(69)75 149 y Fe(rl_free_un)o(do)o(_li)o(st)r
-Fa(:)t(:)6 b(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)16 b Fb(34)75
-194 y Fe(rl_functio)o(n_)o(dum)o(pe)o(r)7 b Fa(:)f(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)g(:)23 b Fb(33)75 238 y Fe(rl_functio)o(n_)o(of_)o(ke)o(yse)o(q)6
-b Fa(:)s(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)g(:)19 b Fb(32)75 282 y Fe(rl_funmap_)o(na)o(mes)5
-b Fa(:)s(:)h(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)18
-b Fb(33)75 326 y Fe(rl_generic)o(_b)o(ind)5 b Fa(:)s(:)h(:)g(:)g(:)g(:)
-g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)18 b Fb(32)75 371 y Fe(rl_get_key)o(ma)o(p)8
-b Fa(:)s(:)e(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
-g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)21
-b Fb(30)75 415 y Fe(rl_get_key)o(ma)o(p_b)o(y_)o(nam)o(e)6
-b Fa(:)s(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)g(:)19 b Fb(30)75 459 y Fe(rl_get_key)o(ma)o(p_n)o
-(am)o(e)7 b Fa(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)23 b Fb(30)75
-503 y Fe(rl_get_scr)o(ee)o(n_s)o(iz)o(e)7 b Fa(:)f(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)g(:)23 b Fb(43)75 547 y Fe(rl_get_ter)o(mc)o(ap)6
-b Fa(:)t(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)20
-b Fb(39)75 592 y Fe(rl_getc)7 b Fa(:)t(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
-g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)20 b
-Fb(36)75 636 y Fe(rl_getc_fu)o(nc)o(tio)o(n)t Fa(:)s(:)6
-b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)17 b Fb(27)75
-680 y Fe(rl_gnu_rea)o(dl)o(ine)o(_p)r Fa(:)t(:)6 b(:)g(:)g(:)g(:)g(:)g
-(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
-g(:)g(:)g(:)16 b Fb(26)75 724 y Fe(rl_ignore_)o(co)o(mpl)o(et)o(ion)o
-(_du)o(pl)o(ica)o(te)o(s)8 b Fa(:)e(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h
-(:)23 b Fb(48)75 769 y Fe(rl_ignore_)o(so)o(me_)o(co)o(mpl)o(eti)o(on)o
-(s_f)o(un)o(cti)o(on)5 b Fa(:)s(:)h(:)g(:)g(:)h(:)f(:)18
-b Fb(46)75 813 y Fe(rl_inhibit)o(_c)o(omp)o(le)o(tio)o(n)6
-b Fa(:)s(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)g(:)19 b Fb(49)75 857 y Fe(rl_initial)o(iz)o(e)8
-b Fa(:)s(:)e(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
-g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)21
-b Fb(37)75 901 y Fe(rl_insert_)o(co)o(mpl)o(et)o(ion)o(s)6
-b Fa(:)s(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)g(:)19 b Fb(44)75 945 y Fe(rl_insert_)o(te)o(xt)6
-b Fa(:)t(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)20
-b Fb(35)75 990 y Fe(rl_instrea)o(m)7 b Fa(:)g(:)f(:)g(:)g(:)g(:)g(:)g
-(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
-g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)23 b Fb(26)75 1034
-y Fe(rl_invokin)o(g_)o(key)o(se)o(qs)9 b Fa(:)s(:)d(:)g(:)g(:)g(:)g(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
-22 b Fb(33)75 1078 y Fe(rl_invokin)o(g_)o(key)o(se)o(qs_)o(in_)o(ma)o
-(p)9 b Fa(:)s(:)d(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)21 b Fb(33)75 1122 y Fe(rl_kill_te)o(xt)6 b Fa(:)g(:)g(:)g(:)g
-(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
-g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)22 b Fb(36)75
-1167 y Fe(rl_last_fu)o(nc)6 b Fa(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)g(:)22 b Fb(27)75 1211 y Fe(rl_library)o(_v)o(ers)o
-(io)o(n)7 b Fa(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)23 b Fb(26)75
-1255 y Fe(rl_line_bu)o(ff)o(er)6 b Fa(:)t(:)g(:)g(:)g(:)g(:)g(:)g(:)g
-(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
-g(:)g(:)g(:)g(:)g(:)20 b Fb(25)75 1299 y Fe(rl_list_fu)o(nm)o(ap_)o(na)
-o(mes)7 b Fa(:)s(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
-g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)20 b Fb(33)75 1343
-y Fe(rl_macro_b)o(in)o(d)8 b Fa(:)s(:)e(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-g(:)g(:)g(:)g(:)21 b Fb(38)75 1388 y Fe(rl_macro_d)o(um)o(per)5
-b Fa(:)s(:)h(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)18
-b Fb(38)75 1432 y Fe(rl_make_ba)o(re)o(_ke)o(ym)o(ap)9
-b Fa(:)s(:)d(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)22 b Fb(30)75 1476 y
-Fe(rl_make_ke)o(ym)o(ap)6 b Fa(:)t(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
-g(:)g(:)g(:)20 b Fb(30)75 1520 y Fe(rl_mark)7 b Fa(:)t(:)f(:)g(:)g(:)g
-(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
-g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)20
-b Fb(25)75 1564 y Fe(rl_message)r Fa(:)t(:)6 b(:)g(:)g(:)g(:)g(:)g(:)g
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
-g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)16 b Fb(35)75
-1609 y Fe(rl_modifyi)o(ng)6 b Fa(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)g(:)22 b Fb(34)75 1653 y Fe(rl_named_f)o(un)o(cti)o
-(on)r Fa(:)t(:)6 b(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)16
-b Fb(32)75 1697 y Fe(rl_num_cha)o(rs)o(_to)o(_r)o(ead)7
-b Fa(:)s(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
-g(:)g(:)g(:)g(:)g(:)h(:)f(:)20 b Fb(25)75 1741 y Fe(rl_numeric)o(_a)o
-(rg)6 b Fa(:)t(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)20
-b Fb(29)75 1786 y Fe(rl_on_new_)o(li)o(ne)6 b Fa(:)t(:)g(:)g(:)g(:)g(:)
-g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
-(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)20 b Fb(34)75 1830 y Fe(rl_on_new_)o(li)
-o(ne_)o(wi)o(th_)o(pro)o(mp)o(t)9 b Fa(:)s(:)d(:)g(:)g(:)g(:)g(:)g(:)g
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)21 b Fb(34)75 1874
-y Fe(rl_outstre)o(am)6 b Fa(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)g(:)22 b Fb(26)75 1918 y Fe(rl_parse_a)o(nd)o(_bi)o(nd)r
-Fa(:)t(:)6 b(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)16 b Fb(32)75
-1962 y Fe(rl_pending)o(_i)o(npu)o(t)t Fa(:)s(:)6 b(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)g(:)17 b Fb(25)75 2007 y Fe(rl_point)6 b
-Fa(:)s(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g
-(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
-g(:)g(:)g(:)19 b Fb(25)75 2051 y Fe(rl_possibl)o(e_)o(com)o(pl)o(eti)o
-(ons)s Fa(:)s(:)6 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g
-(:)g(:)g(:)g(:)g(:)g(:)17 b Fb(44)75 2095 y Fe(rl_pre_inp)o(ut)o(_ho)o
-(ok)r Fa(:)t(:)6 b(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)16
-b Fb(27)75 2139 y Fe(rl_prefer_)o(en)o(v_w)o(in)o(siz)o(e)6
-b Fa(:)s(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)g(:)19 b Fb(26)75 2184 y Fe(rl_prep_te)o(rm)o(_fu)o
-(nc)o(tio)o(n)6 b Fa(:)s(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
-g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)19 b Fb(27)75
-2228 y Fe(rl_prep_te)o(rm)o(ina)o(l)t Fa(:)s(:)6 b(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)g(:)17 b Fb(36)75 2272 y Fe(rl_prompt)t Fa(:)s(:)6
-b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-17 b Fb(26)75 2316 y Fe(rl_push_ma)o(cr)o(o_i)o(np)o(ut)9
-b Fa(:)s(:)d(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)22 b Fb(36)75 2360 y
-Fe(rl_read_in)o(it)o(_fi)o(le)r Fa(:)t(:)6 b(:)g(:)g(:)g(:)g(:)g(:)g(:)
-g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
-(:)g(:)16 b Fb(32)75 2405 y Fe(rl_read_ke)o(y)7 b Fa(:)g(:)f(:)g(:)g(:)
-g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)23 b Fb(36)75
-2449 y Fe(rl_readlin)o(e_)o(nam)o(e)t Fa(:)s(:)6 b(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)g(:)17 b Fb(26)75 2493 y Fe(rl_readlin)o(e_)o(sta)o(te)r
-Fa(:)t(:)6 b(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)16 b Fb(28)75
-2537 y Fe(rl_readlin)o(e_)o(ver)o(si)o(on)9 b Fa(:)s(:)d(:)g(:)g(:)g(:)
-g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
-(:)g(:)22 b Fb(26)75 2582 y Fe(rl_redispl)o(ay)6 b Fa(:)g(:)g(:)g(:)g
-(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
-g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)22 b Fb(34)75
-2626 y Fe(rl_redispl)o(ay)o(_fu)o(nc)o(tio)o(n)6 b Fa(:)s(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)19 b Fb(27)75 2670 y Fe(rl_replace)o(_l)o(ine)5 b
-Fa(:)s(:)h(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)18
-b Fb(37)1012 149 y Fe(rl_reset_af)o(te)o(r_s)o(ig)o(nal)6
-b Fa(:)s(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)g(:)g(:)g(:)g(:)g(:)20 b Fb(42)1012 193 y Fe(rl_reset_li)o(ne)o
-(_st)o(at)o(e)9 b Fa(:)s(:)d(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)22 b
-Fb(34)1012 237 y Fe(rl_reset_sc)o(re)o(en_)o(si)o(ze)7
-b Fa(:)t(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)g(:)g(:)21 b Fb(43)1012 280 y Fe(rl_reset_te)o(rm)o
-(ina)o(l)s Fa(:)s(:)6 b(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)16
-b Fb(37)1012 324 y Fe(rl_resize_t)o(er)o(min)o(al)7 b
-Fa(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)24 b Fb(42)1012 368
-y Fe(rl_restore_)o(pr)o(omp)o(t)s Fa(:)s(:)6 b(:)g(:)g(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)16 b Fb(35)1012 412 y Fe(rl_restore_)o(st)o(ate)s
-Fa(:)t(:)6 b(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)18 b
-Fb(37)1012 455 y Fe(rl_save_pro)o(mp)o(t)7 b Fa(:)s(:)f(:)g(:)g(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)g(:)g(:)20 b Fb(35)1012 499 y Fe(rl_save_sta)o(te)7
-b Fa(:)t(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)21
-b Fb(37)1012 543 y Fe(rl_set_key)s Fa(:)s(:)6 b(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)17 b Fb(32)1012
-586 y Fe(rl_set_keyb)o(oa)o(rd_)o(in)o(put)o(_t)o(ime)o(out)t
-Fa(:)s(:)6 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)18
-b Fb(36)1012 630 y Fe(rl_set_keym)o(ap)7 b Fa(:)t(:)f(:)g(:)g(:)g(:)g
-(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
-g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)21 b Fb(30)1012 674 y
-Fe(rl_set_pare)o(n_)o(bli)o(nk)o(_ti)o(me)o(out)8 b Fa(:)s(:)e(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)22
-b Fb(39)1012 717 y Fe(rl_set_prom)o(pt)7 b Fa(:)t(:)f(:)g(:)g(:)g(:)g
-(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
-g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)21 b Fb(35)1012 761 y
-Fe(rl_set_scre)o(en)o(_si)o(ze)7 b Fa(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
-24 b Fb(42)1012 805 y Fe(rl_set_sign)o(al)o(s)7 b Fa(:)s(:)f(:)g(:)g(:)
-g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)20 b Fb(43)1012 848
-y Fe(rl_show_cha)o(r)6 b Fa(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
-g(:)g(:)g(:)g(:)23 b Fb(34)1012 892 y Fe(rl_sort_com)o(pl)o(eti)o(on)o
-(_ma)o(tc)o(hes)8 b Fa(:)s(:)e(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)g(:)g(:)22 b Fb(49)1012 936 y Fe(rl_special_)o(pr)o(efi)o
-(xe)o(s)9 b Fa(:)s(:)d(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
-(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)22 b Fb(47)1012
-979 y Fe(rl_startup_)o(ho)o(ok)5 b Fa(:)s(:)h(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)g(:)g(:)g(:)19 b Fb(27)1012 1023 y Fe(rl_stuff_ch)o(ar)7
-b Fa(:)t(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)21
-b Fb(36)1012 1067 y Fe(rl_terminal)o(_n)o(ame)s Fa(:)t(:)6
-b(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)18 b Fb(26)1012
-1110 y Fe(rl_tty_set_)o(de)o(fau)o(lt)o(_bi)o(nd)o(ing)o(s)7
-b Fa(:)s(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)21
-b Fb(37)1012 1154 y Fe(rl_tty_unse)o(t_)o(def)o(au)o(lt_)o(bi)o(ndi)o
-(ngs)t Fa(:)s(:)6 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)18
-b Fb(37)1012 1198 y Fe(rl_unbind_c)o(om)o(man)o(d_)o(in_)o(ma)o(p)8
-b Fa(:)e(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
-g(:)h(:)24 b Fb(31)1012 1242 y Fe(rl_unbind_f)o(un)o(cti)o(on)o(_in)o
-(_m)o(ap)7 b Fa(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)23 b Fb(31)1012 1285 y Fe(rl_unbind_k)o(ey)7
-b Fa(:)t(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)21
-b Fb(31)1012 1329 y Fe(rl_unbind_k)o(ey)o(_in)o(_m)o(ap)7
-b Fa(:)t(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)g(:)g(:)21 b Fb(31)1012 1373 y Fe(rl_username)o(_c)
-o(omp)o(le)o(tio)o(n_)o(fun)o(cti)o(on)7 b Fa(:)f(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)24 b Fb(45)1012 1416 y Fe(rl_variable)o(_b)o(ind)s
-Fa(:)t(:)6 b(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)18 b
-Fb(38)1012 1460 y Fe(rl_variable)o(_d)o(ump)o(er)7 b
-Fa(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)24 b Fb(39)1012 1504
-y Fe(rl_variable)o(_v)o(alu)o(e)s Fa(:)s(:)6 b(:)g(:)g(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)16 b Fb(39)1012 1625 y Fq(S)1012 1683 y Fe(self-insert)9
-b(\(a,)j(b,)g(A,)g(1,)g(!,)g(...)o(\))t Fa(:)6 b(:)g(:)g(:)g(:)g(:)g(:)
-g(:)g(:)g(:)g(:)g(:)g(:)18 b Fb(16)1012 1727 y Fe(set-mark)10
-b(\(C-@\))e Fa(:)f(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)24
-b Fb(19)1012 1771 y(sho)o(w-all-if-am)o(biguous)7 b Fa(:)f(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)g(:)g(:)20 b Fb(8)1012 1814 y(sho)o(w-all-if-unmo)q
-(di\014ed)12 b Fa(:)6 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)24
-b Fb(8)1012 1858 y(skip-completed-text)5 b Fa(:)j(:)e(:)g(:)g(:)g(:)g
-(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
-g(:)g(:)g(:)g(:)h(:)18 b Fb(8)1012 1902 y Fe(skip-csi-se)o(qu)o(enc)o
-(e)10 b(\(\))g Fa(:)c(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)24 b Fb(20)1012
-1946 y Fe(start-kbd-m)o(ac)o(ro)9 b(\(C-x)j(\(\))e Fa(:)c(:)g(:)g(:)g
-(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)24
-b Fb(19)1012 2067 y Fq(T)1012 2125 y Fe(tab-insert)9
-b(\(M-TAB\))c Fa(:)t(:)h(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)18
-b Fb(16)1012 2168 y Fe(tilde-expan)o(d)10 b(\(M-~\))5
-b Fa(:)t(:)h(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)18 b Fb(19)1012
-2212 y Fe(transpose-c)o(ha)o(rs)9 b(\(C-t\))f Fa(:)e(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)23
-b Fb(16)1012 2256 y Fe(transpose-w)o(or)o(ds)9 b(\(M-t\))f
-Fa(:)e(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)23 b Fb(16)1012 2382 y Fq(U)1012
-2440 y Fe(undo)12 b(\(C-_)f(or)h(C-x)g(C-u\))s Fa(:)t(:)6
-b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)16 b Fb(19)1012 2484 y Fe(universal-a)o(rg)o
-(ume)o(nt)9 b(\(\))g Fa(:)d(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)23 b Fb(18)1012
-2528 y Fe(unix-filena)o(me)o(-ru)o(bo)o(ut)9 b(\(\))e
-Fa(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
-(:)g(:)g(:)g(:)21 b Fb(17)1012 2571 y Fe(unix-line-d)o(is)o(car)o(d)10
-b(\(C-u\))d Fa(:)t(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
-(:)g(:)g(:)g(:)g(:)g(:)g(:)21 b Fb(17)1012 2615 y Fe(unix-word-r)o(ub)o
-(out)9 b(\(C-w\))g Fa(:)t(:)d(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)22 b Fb(17)1012
-2659 y Fe(upcase-word)9 b(\(M-u\))d Fa(:)f(:)h(:)g(:)g(:)g(:)g(:)g(:)g
-(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
-g(:)g(:)20 b Fb(16)p eop end
-%%Page: 70 74
-TeXDict begin 70 73 bop 75 -58 a Fs(F)l(unction)15 b(and)g(V)l(ariable)
-g(Index)1187 b(70)75 149 y Fq(V)75 213 y Fe(vi-editing)o(-m)o(ode)9
-b(\(M-C-j\))e Fa(:)t(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)g(:)g(:)g(:)20 b Fb(20)75 259 y(visible-stats)t
-Fa(:)6 b(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)16 b Fb(8)1012 149 y Fq(Y)1012 208 y Fe(yank)c(\(C-y\))7
-b Fa(:)t(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)20 b Fb(18)1012 252 y Fe(yank-last-a)o(rg)9 b(\(M-.)i(or)h
-(M-_\))d Fa(:)d(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
-(:)g(:)g(:)24 b Fb(15)1012 295 y Fe(yank-nth-ar)o(g)10
-b(\(M-C-y\))e Fa(:)e(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)24 b Fb(15)1012
-339 y Fe(yank-pop)10 b(\(M-y\))e Fa(:)f(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g
-(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
-g(:)g(:)g(:)g(:)24 b Fb(18)p eop end
-%%Trailer
-
-userdict /end-hook known{end-hook}if
-%%EOF
diff --git a/lib/readline/doc/rlman.aux b/lib/readline/doc/rlman.aux
deleted file mode 100644 (file)
index ef3c278..0000000
+++ /dev/null
@@ -1,153 +0,0 @@
-@xrdef{Command Line Editing-title}{Command Line Editing}
-@xrdef{Command Line Editing-snt}{Chapter@tie 1}
-@xrdef{Introduction and Notation-title}{Introduction to Line Editing}
-@xrdef{Introduction and Notation-snt}{Section@tie 1.1}
-@xrdef{Readline Interaction-title}{Readline Interaction}
-@xrdef{Readline Interaction-snt}{Section@tie 1.2}
-@xrdef{Readline Bare Essentials-title}{Readline Bare Essentials}
-@xrdef{Readline Bare Essentials-snt}{Section@tie 1.2.1}
-@xrdef{Command Line Editing-pg}{1}
-@xrdef{Introduction and Notation-pg}{1}
-@xrdef{Readline Interaction-pg}{1}
-@xrdef{Readline Bare Essentials-pg}{1}
-@xrdef{Readline Movement Commands-title}{Readline Movement Commands}
-@xrdef{Readline Movement Commands-snt}{Section@tie 1.2.2}
-@xrdef{Readline Killing Commands-title}{Readline Killing Commands}
-@xrdef{Readline Killing Commands-snt}{Section@tie 1.2.3}
-@xrdef{Readline Movement Commands-pg}{2}
-@xrdef{Readline Killing Commands-pg}{2}
-@xrdef{Readline Arguments-title}{Readline Arguments}
-@xrdef{Readline Arguments-snt}{Section@tie 1.2.4}
-@xrdef{Searching-title}{Searching for Commands in the History}
-@xrdef{Searching-snt}{Section@tie 1.2.5}
-@xrdef{Readline Arguments-pg}{3}
-@xrdef{Searching-pg}{3}
-@xrdef{Readline Init File-title}{Readline Init File}
-@xrdef{Readline Init File-snt}{Section@tie 1.3}
-@xrdef{Readline Init File Syntax-title}{Readline Init File Syntax}
-@xrdef{Readline Init File Syntax-snt}{Section@tie 1.3.1}
-@xrdef{Readline Init File-pg}{4}
-@xrdef{Readline Init File Syntax-pg}{4}
-@xrdef{Conditional Init Constructs-title}{Conditional Init Constructs}
-@xrdef{Conditional Init Constructs-snt}{Section@tie 1.3.2}
-@xrdef{Conditional Init Constructs-pg}{10}
-@xrdef{Sample Init File-title}{Sample Init File}
-@xrdef{Sample Init File-snt}{Section@tie 1.3.3}
-@xrdef{Sample Init File-pg}{11}
-@xrdef{Bindable Readline Commands-title}{Bindable Readline Commands}
-@xrdef{Bindable Readline Commands-snt}{Section@tie 1.4}
-@xrdef{Commands For Moving-title}{Commands For Moving}
-@xrdef{Commands For Moving-snt}{Section@tie 1.4.1}
-@xrdef{Commands For History-title}{Commands For Manipulating The History}
-@xrdef{Commands For History-snt}{Section@tie 1.4.2}
-@xrdef{Bindable Readline Commands-pg}{14}
-@xrdef{Commands For Moving-pg}{14}
-@xrdef{Commands For History-pg}{14}
-@xrdef{Commands For Text-title}{Commands For Changing Text}
-@xrdef{Commands For Text-snt}{Section@tie 1.4.3}
-@xrdef{Commands For Text-pg}{16}
-@xrdef{Commands For Killing-title}{Killing And Yanking}
-@xrdef{Commands For Killing-snt}{Section@tie 1.4.4}
-@xrdef{Commands For Killing-pg}{17}
-@xrdef{Numeric Arguments-title}{Specifying Numeric Arguments}
-@xrdef{Numeric Arguments-snt}{Section@tie 1.4.5}
-@xrdef{Commands For Completion-title}{Letting Readline Type For You}
-@xrdef{Commands For Completion-snt}{Section@tie 1.4.6}
-@xrdef{Numeric Arguments-pg}{18}
-@xrdef{Commands For Completion-pg}{18}
-@xrdef{Keyboard Macros-title}{Keyboard Macros}
-@xrdef{Keyboard Macros-snt}{Section@tie 1.4.7}
-@xrdef{Miscellaneous Commands-title}{Some Miscellaneous Commands}
-@xrdef{Miscellaneous Commands-snt}{Section@tie 1.4.8}
-@xrdef{Keyboard Macros-pg}{19}
-@xrdef{Miscellaneous Commands-pg}{19}
-@xrdef{Readline vi Mode-title}{Readline vi Mode}
-@xrdef{Readline vi Mode-snt}{Section@tie 1.5}
-@xrdef{Readline vi Mode-pg}{21}
-@xrdef{Programming with GNU Readline-title}{Programming with GNU Readline}
-@xrdef{Programming with GNU Readline-snt}{Chapter@tie 2}
-@xrdef{Basic Behavior-title}{Basic Behavior}
-@xrdef{Basic Behavior-snt}{Section@tie 2.1}
-@xrdef{Programming with GNU Readline-pg}{22}
-@xrdef{Basic Behavior-pg}{22}
-@xrdef{Custom Functions-title}{Custom Functions}
-@xrdef{Custom Functions-snt}{Section@tie 2.2}
-@xrdef{Readline Typedefs-title}{Readline Typedefs}
-@xrdef{Readline Typedefs-snt}{Section@tie 2.2.1}
-@xrdef{Custom Functions-pg}{23}
-@xrdef{Function Writing-title}{Writing a New Function}
-@xrdef{Function Writing-snt}{Section@tie 2.2.2}
-@xrdef{Readline Typedefs-pg}{24}
-@xrdef{Function Writing-pg}{24}
-@xrdef{Readline Variables-title}{Readline Variables}
-@xrdef{Readline Variables-snt}{Section@tie 2.3}
-@xrdef{Readline Variables-pg}{25}
-@xrdef{Readline Convenience Functions-title}{Readline Convenience Functions}
-@xrdef{Readline Convenience Functions-snt}{Section@tie 2.4}
-@xrdef{Function Naming-title}{Naming a Function}
-@xrdef{Function Naming-snt}{Section@tie 2.4.1}
-@xrdef{Readline Convenience Functions-pg}{29}
-@xrdef{Function Naming-pg}{29}
-@xrdef{Keymaps-title}{Selecting a Keymap}
-@xrdef{Keymaps-snt}{Section@tie 2.4.2}
-@xrdef{Binding Keys-title}{Binding Keys}
-@xrdef{Binding Keys-snt}{Section@tie 2.4.3}
-@xrdef{Keymaps-pg}{30}
-@xrdef{Binding Keys-pg}{31}
-@xrdef{Associating Function Names and Bindings-title}{Associating Function Names and Bindings}
-@xrdef{Associating Function Names and Bindings-snt}{Section@tie 2.4.4}
-@xrdef{Associating Function Names and Bindings-pg}{32}
-@xrdef{Allowing Undoing-title}{Allowing Undoing}
-@xrdef{Allowing Undoing-snt}{Section@tie 2.4.5}
-@xrdef{Allowing Undoing-pg}{33}
-@xrdef{Redisplay-title}{Redisplay}
-@xrdef{Redisplay-snt}{Section@tie 2.4.6}
-@xrdef{Redisplay-pg}{34}
-@xrdef{Modifying Text-title}{Modifying Text}
-@xrdef{Modifying Text-snt}{Section@tie 2.4.7}
-@xrdef{Modifying Text-pg}{35}
-@xrdef{Character Input-title}{Character Input}
-@xrdef{Character Input-snt}{Section@tie 2.4.8}
-@xrdef{Terminal Management-title}{Terminal Management}
-@xrdef{Terminal Management-snt}{Section@tie 2.4.9}
-@xrdef{Character Input-pg}{36}
-@xrdef{Terminal Management-pg}{36}
-@xrdef{Utility Functions-title}{Utility Functions}
-@xrdef{Utility Functions-snt}{Section@tie 2.4.10}
-@xrdef{Utility Functions-pg}{37}
-@xrdef{Miscellaneous Functions-title}{Miscellaneous Functions}
-@xrdef{Miscellaneous Functions-snt}{Section@tie 2.4.11}
-@xrdef{Miscellaneous Functions-pg}{38}
-@xrdef{Alternate Interface-title}{Alternate Interface}
-@xrdef{Alternate Interface-snt}{Section@tie 2.4.12}
-@xrdef{A Readline Example-title}{A Readline Example}
-@xrdef{A Readline Example-snt}{Section@tie 2.4.13}
-@xrdef{Alternate Interface-pg}{39}
-@xrdef{A Readline Example-pg}{40}
-@xrdef{Readline Signal Handling-title}{Readline Signal Handling}
-@xrdef{Readline Signal Handling-snt}{Section@tie 2.5}
-@xrdef{Readline Signal Handling-pg}{41}
-@xrdef{Custom Completers-title}{Custom Completers}
-@xrdef{Custom Completers-snt}{Section@tie 2.6}
-@xrdef{How Completing Works-title}{How Completing Works}
-@xrdef{How Completing Works-snt}{Section@tie 2.6.1}
-@xrdef{Custom Completers-pg}{43}
-@xrdef{How Completing Works-pg}{43}
-@xrdef{Completion Functions-title}{Completion Functions}
-@xrdef{Completion Functions-snt}{Section@tie 2.6.2}
-@xrdef{Completion Functions-pg}{44}
-@xrdef{Completion Variables-title}{Completion Variables}
-@xrdef{Completion Variables-snt}{Section@tie 2.6.3}
-@xrdef{Completion Variables-pg}{45}
-@xrdef{A Short Completion Example-title}{A Short Completion Example}
-@xrdef{A Short Completion Example-snt}{Section@tie 2.6.4}
-@xrdef{A Short Completion Example-pg}{49}
-@xrdef{GNU Free Documentation License-title}{GNU Free Documentation License}
-@xrdef{GNU Free Documentation License-snt}{Appendix@tie @char65{}}
-@xrdef{GNU Free Documentation License-pg}{58}
-@xrdef{Concept Index-title}{Concept Index}
-@xrdef{Concept Index-snt}{}
-@xrdef{Concept Index-pg}{66}
-@xrdef{Function and Variable Index-title}{Function and Variable Index}
-@xrdef{Function and Variable Index-snt}{}
-@xrdef{Function and Variable Index-pg}{67}
diff --git a/lib/readline/doc/rlman.bt b/lib/readline/doc/rlman.bt
deleted file mode 100644 (file)
index e69de29..0000000
diff --git a/lib/readline/doc/rlman.cp b/lib/readline/doc/rlman.cp
deleted file mode 100644 (file)
index fdb4b03..0000000
+++ /dev/null
@@ -1,11 +0,0 @@
-\entry{interaction, readline}{1}{interaction, readline}
-\entry{notation, readline}{1}{notation, readline}
-\entry{command editing}{1}{command editing}
-\entry{editing command lines}{1}{editing command lines}
-\entry{killing text}{2}{killing text}
-\entry{yanking text}{2}{yanking text}
-\entry{kill ring}{2}{kill ring}
-\entry{initialization file, readline}{4}{initialization file, readline}
-\entry{variables, readline}{4}{variables, readline}
-\entry{readline, function}{22}{readline, function}
-\entry{application-specific completion functions}{43}{application-specific completion functions}
diff --git a/lib/readline/doc/rlman.cps b/lib/readline/doc/rlman.cps
deleted file mode 100644 (file)
index 401ccaa..0000000
+++ /dev/null
@@ -1,20 +0,0 @@
-\initial {A}
-\entry {application-specific completion functions}{43}
-\initial {C}
-\entry {command editing}{1}
-\initial {E}
-\entry {editing command lines}{1}
-\initial {I}
-\entry {initialization file, readline}{4}
-\entry {interaction, readline}{1}
-\initial {K}
-\entry {kill ring}{2}
-\entry {killing text}{2}
-\initial {N}
-\entry {notation, readline}{1}
-\initial {R}
-\entry {readline, function}{22}
-\initial {V}
-\entry {variables, readline}{4}
-\initial {Y}
-\entry {yanking text}{2}
diff --git a/lib/readline/doc/rlman.fn b/lib/readline/doc/rlman.fn
deleted file mode 100644 (file)
index be62e2f..0000000
+++ /dev/null
@@ -1,291 +0,0 @@
-\entry{bell-style}{4}{bell-style}
-\entry{bind-tty-special-chars}{5}{bind-tty-special-chars}
-\entry{comment-begin}{5}{comment-begin}
-\entry{completion-display-width}{5}{completion-display-width}
-\entry{completion-ignore-case}{5}{completion-ignore-case}
-\entry{completion-map-case}{5}{completion-map-case}
-\entry{completion-prefix-display-length}{5}{completion-prefix-display-length}
-\entry{completion-query-items}{5}{completion-query-items}
-\entry{convert-meta}{5}{convert-meta}
-\entry{disable-completion}{5}{disable-completion}
-\entry{editing-mode}{6}{editing-mode}
-\entry{enable-keypad}{6}{enable-keypad}
-\entry{expand-tilde}{6}{expand-tilde}
-\entry{history-preserve-point}{6}{history-preserve-point}
-\entry{history-size}{6}{history-size}
-\entry{horizontal-scroll-mode}{6}{horizontal-scroll-mode}
-\entry{input-meta}{6}{input-meta}
-\entry{meta-flag}{6}{meta-flag}
-\entry{isearch-terminators}{6}{isearch-terminators}
-\entry{keymap}{7}{keymap}
-\entry{mark-modified-lines}{7}{mark-modified-lines}
-\entry{mark-symlinked-directories}{7}{mark-symlinked-directories}
-\entry{match-hidden-files}{7}{match-hidden-files}
-\entry{menu-complete-display-prefix}{7}{menu-complete-display-prefix}
-\entry{output-meta}{7}{output-meta}
-\entry{page-completions}{7}{page-completions}
-\entry{revert-all-at-newline}{8}{revert-all-at-newline}
-\entry{show-all-if-ambiguous}{8}{show-all-if-ambiguous}
-\entry{show-all-if-unmodified}{8}{show-all-if-unmodified}
-\entry{skip-completed-text}{8}{skip-completed-text}
-\entry{visible-stats}{8}{visible-stats}
-\entry{beginning-of-line (C-a)}{14}{\code {beginning-of-line (C-a)}}
-\entry{end-of-line (C-e)}{14}{\code {end-of-line (C-e)}}
-\entry{forward-char (C-f)}{14}{\code {forward-char (C-f)}}
-\entry{backward-char (C-b)}{14}{\code {backward-char (C-b)}}
-\entry{forward-word (M-f)}{14}{\code {forward-word (M-f)}}
-\entry{backward-word (M-b)}{14}{\code {backward-word (M-b)}}
-\entry{clear-screen (C-l)}{14}{\code {clear-screen (C-l)}}
-\entry{redraw-current-line ()}{14}{\code {redraw-current-line ()}}
-\entry{accept-line (Newline or Return)}{14}{\code {accept-line (Newline or Return)}}
-\entry{previous-history (C-p)}{14}{\code {previous-history (C-p)}}
-\entry{next-history (C-n)}{15}{\code {next-history (C-n)}}
-\entry{beginning-of-history (M-<)}{15}{\code {beginning-of-history (M-<)}}
-\entry{end-of-history (M->)}{15}{\code {end-of-history (M->)}}
-\entry{reverse-search-history (C-r)}{15}{\code {reverse-search-history (C-r)}}
-\entry{forward-search-history (C-s)}{15}{\code {forward-search-history (C-s)}}
-\entry{non-incremental-reverse-search-history (M-p)}{15}{\code {non-incremental-reverse-search-history (M-p)}}
-\entry{non-incremental-forward-search-history (M-n)}{15}{\code {non-incremental-forward-search-history (M-n)}}
-\entry{history-search-forward ()}{15}{\code {history-search-forward ()}}
-\entry{history-search-backward ()}{15}{\code {history-search-backward ()}}
-\entry{yank-nth-arg (M-C-y)}{15}{\code {yank-nth-arg (M-C-y)}}
-\entry{yank-last-arg (M-. or M-_)}{15}{\code {yank-last-arg (M-. or M-_)}}
-\entry{delete-char (C-d)}{16}{\code {delete-char (C-d)}}
-\entry{backward-delete-char (Rubout)}{16}{\code {backward-delete-char (Rubout)}}
-\entry{forward-backward-delete-char ()}{16}{\code {forward-backward-delete-char ()}}
-\entry{quoted-insert (C-q or C-v)}{16}{\code {quoted-insert (C-q or C-v)}}
-\entry{tab-insert (M-TAB)}{16}{\code {tab-insert (M-\key {TAB})}}
-\entry{self-insert (a, b, A, 1, !, ...{})}{16}{\code {self-insert (a, b, A, 1, !, \dots {})}}
-\entry{transpose-chars (C-t)}{16}{\code {transpose-chars (C-t)}}
-\entry{transpose-words (M-t)}{16}{\code {transpose-words (M-t)}}
-\entry{upcase-word (M-u)}{16}{\code {upcase-word (M-u)}}
-\entry{downcase-word (M-l)}{16}{\code {downcase-word (M-l)}}
-\entry{capitalize-word (M-c)}{16}{\code {capitalize-word (M-c)}}
-\entry{overwrite-mode ()}{17}{\code {overwrite-mode ()}}
-\entry{kill-line (C-k)}{17}{\code {kill-line (C-k)}}
-\entry{backward-kill-line (C-x Rubout)}{17}{\code {backward-kill-line (C-x Rubout)}}
-\entry{unix-line-discard (C-u)}{17}{\code {unix-line-discard (C-u)}}
-\entry{kill-whole-line ()}{17}{\code {kill-whole-line ()}}
-\entry{kill-word (M-d)}{17}{\code {kill-word (M-d)}}
-\entry{backward-kill-word (M-DEL)}{17}{\code {backward-kill-word (M-\key {DEL})}}
-\entry{unix-word-rubout (C-w)}{17}{\code {unix-word-rubout (C-w)}}
-\entry{unix-filename-rubout ()}{17}{\code {unix-filename-rubout ()}}
-\entry{delete-horizontal-space ()}{17}{\code {delete-horizontal-space ()}}
-\entry{kill-region ()}{17}{\code {kill-region ()}}
-\entry{copy-region-as-kill ()}{17}{\code {copy-region-as-kill ()}}
-\entry{copy-backward-word ()}{17}{\code {copy-backward-word ()}}
-\entry{copy-forward-word ()}{18}{\code {copy-forward-word ()}}
-\entry{yank (C-y)}{18}{\code {yank (C-y)}}
-\entry{yank-pop (M-y)}{18}{\code {yank-pop (M-y)}}
-\entry{digit-argument (M-0, M-1, ...{} M--)}{18}{\code {digit-argument (\kbd {M-0}, \kbd {M-1}, \dots {} \kbd {M--})}}
-\entry{universal-argument ()}{18}{\code {universal-argument ()}}
-\entry{complete (TAB)}{18}{\code {complete (\key {TAB})}}
-\entry{possible-completions (M-?)}{18}{\code {possible-completions (M-?)}}
-\entry{insert-completions (M-*)}{18}{\code {insert-completions (M-*)}}
-\entry{menu-complete ()}{18}{\code {menu-complete ()}}
-\entry{menu-complete-backward ()}{19}{\code {menu-complete-backward ()}}
-\entry{delete-char-or-list ()}{19}{\code {delete-char-or-list ()}}
-\entry{start-kbd-macro (C-x ()}{19}{\code {start-kbd-macro (C-x ()}}
-\entry{end-kbd-macro (C-x ))}{19}{\code {end-kbd-macro (C-x ))}}
-\entry{call-last-kbd-macro (C-x e)}{19}{\code {call-last-kbd-macro (C-x e)}}
-\entry{re-read-init-file (C-x C-r)}{19}{\code {re-read-init-file (C-x C-r)}}
-\entry{abort (C-g)}{19}{\code {abort (C-g)}}
-\entry{do-uppercase-version (M-a, M-b, M-x, ...{})}{19}{\code {do-uppercase-version (M-a, M-b, M-\var {x}, \dots {})}}
-\entry{prefix-meta (ESC)}{19}{\code {prefix-meta (\key {ESC})}}
-\entry{undo (C-_ or C-x C-u)}{19}{\code {undo (C-_ or C-x C-u)}}
-\entry{revert-line (M-r)}{19}{\code {revert-line (M-r)}}
-\entry{tilde-expand (M-~)}{19}{\code {tilde-expand (M-~)}}
-\entry{set-mark (C-@)}{19}{\code {set-mark (C-@)}}
-\entry{exchange-point-and-mark (C-x C-x)}{20}{\code {exchange-point-and-mark (C-x C-x)}}
-\entry{character-search (C-])}{20}{\code {character-search (C-])}}
-\entry{character-search-backward (M-C-])}{20}{\code {character-search-backward (M-C-])}}
-\entry{skip-csi-sequence ()}{20}{\code {skip-csi-sequence ()}}
-\entry{insert-comment (M-#)}{20}{\code {insert-comment (M-#)}}
-\entry{dump-functions ()}{20}{\code {dump-functions ()}}
-\entry{dump-variables ()}{20}{\code {dump-variables ()}}
-\entry{dump-macros ()}{20}{\code {dump-macros ()}}
-\entry{emacs-editing-mode (C-e)}{20}{\code {emacs-editing-mode (C-e)}}
-\entry{vi-editing-mode (M-C-j)}{20}{\code {vi-editing-mode (M-C-j)}}
-\entry{readline}{22}{\code {readline}}
-\entry{rl_line_buffer}{25}{\code {rl_line_buffer}}
-\entry{rl_point}{25}{\code {rl_point}}
-\entry{rl_end}{25}{\code {rl_end}}
-\entry{rl_mark}{25}{\code {rl_mark}}
-\entry{rl_done}{25}{\code {rl_done}}
-\entry{rl_num_chars_to_read}{25}{\code {rl_num_chars_to_read}}
-\entry{rl_pending_input}{25}{\code {rl_pending_input}}
-\entry{rl_dispatching}{25}{\code {rl_dispatching}}
-\entry{rl_erase_empty_line}{25}{\code {rl_erase_empty_line}}
-\entry{rl_prompt}{26}{\code {rl_prompt}}
-\entry{rl_display_prompt}{26}{\code {rl_display_prompt}}
-\entry{rl_already_prompted}{26}{\code {rl_already_prompted}}
-\entry{rl_library_version}{26}{\code {rl_library_version}}
-\entry{rl_readline_version}{26}{\code {rl_readline_version}}
-\entry{rl_gnu_readline_p}{26}{\code {rl_gnu_readline_p}}
-\entry{rl_terminal_name}{26}{\code {rl_terminal_name}}
-\entry{rl_readline_name}{26}{\code {rl_readline_name}}
-\entry{rl_instream}{26}{\code {rl_instream}}
-\entry{rl_outstream}{26}{\code {rl_outstream}}
-\entry{rl_prefer_env_winsize}{26}{\code {rl_prefer_env_winsize}}
-\entry{rl_last_func}{27}{\code {rl_last_func}}
-\entry{rl_startup_hook}{27}{\code {rl_startup_hook}}
-\entry{rl_pre_input_hook}{27}{\code {rl_pre_input_hook}}
-\entry{rl_event_hook}{27}{\code {rl_event_hook}}
-\entry{rl_getc_function}{27}{\code {rl_getc_function}}
-\entry{rl_redisplay_function}{27}{\code {rl_redisplay_function}}
-\entry{rl_prep_term_function}{27}{\code {rl_prep_term_function}}
-\entry{rl_deprep_term_function}{27}{\code {rl_deprep_term_function}}
-\entry{rl_executing_keymap}{27}{\code {rl_executing_keymap}}
-\entry{rl_binding_keymap}{27}{\code {rl_binding_keymap}}
-\entry{rl_executing_macro}{27}{\code {rl_executing_macro}}
-\entry{rl_readline_state}{28}{\code {rl_readline_state}}
-\entry{rl_explicit_arg}{29}{\code {rl_explicit_arg}}
-\entry{rl_numeric_arg}{29}{\code {rl_numeric_arg}}
-\entry{rl_editing_mode}{29}{\code {rl_editing_mode}}
-\entry{rl_add_defun}{30}{\code {rl_add_defun}}
-\entry{rl_make_bare_keymap}{30}{\code {rl_make_bare_keymap}}
-\entry{rl_copy_keymap}{30}{\code {rl_copy_keymap}}
-\entry{rl_make_keymap}{30}{\code {rl_make_keymap}}
-\entry{rl_discard_keymap}{30}{\code {rl_discard_keymap}}
-\entry{rl_free_keymap}{30}{\code {rl_free_keymap}}
-\entry{rl_get_keymap}{30}{\code {rl_get_keymap}}
-\entry{rl_set_keymap}{30}{\code {rl_set_keymap}}
-\entry{rl_get_keymap_by_name}{30}{\code {rl_get_keymap_by_name}}
-\entry{rl_get_keymap_name}{30}{\code {rl_get_keymap_name}}
-\entry{rl_bind_key}{31}{\code {rl_bind_key}}
-\entry{rl_bind_key_in_map}{31}{\code {rl_bind_key_in_map}}
-\entry{rl_bind_key_if_unbound}{31}{\code {rl_bind_key_if_unbound}}
-\entry{rl_bind_key_if_unbound_in_map}{31}{\code {rl_bind_key_if_unbound_in_map}}
-\entry{rl_unbind_key}{31}{\code {rl_unbind_key}}
-\entry{rl_unbind_key_in_map}{31}{\code {rl_unbind_key_in_map}}
-\entry{rl_unbind_function_in_map}{31}{\code {rl_unbind_function_in_map}}
-\entry{rl_unbind_command_in_map}{31}{\code {rl_unbind_command_in_map}}
-\entry{rl_bind_keyseq}{31}{\code {rl_bind_keyseq}}
-\entry{rl_bind_keyseq_in_map}{32}{\code {rl_bind_keyseq_in_map}}
-\entry{rl_set_key}{32}{\code {rl_set_key}}
-\entry{rl_bind_keyseq_if_unbound}{32}{\code {rl_bind_keyseq_if_unbound}}
-\entry{rl_bind_keyseq_if_unbound_in_map}{32}{\code {rl_bind_keyseq_if_unbound_in_map}}
-\entry{rl_generic_bind}{32}{\code {rl_generic_bind}}
-\entry{rl_parse_and_bind}{32}{\code {rl_parse_and_bind}}
-\entry{rl_read_init_file}{32}{\code {rl_read_init_file}}
-\entry{rl_named_function}{32}{\code {rl_named_function}}
-\entry{rl_function_of_keyseq}{32}{\code {rl_function_of_keyseq}}
-\entry{rl_invoking_keyseqs}{33}{\code {rl_invoking_keyseqs}}
-\entry{rl_invoking_keyseqs_in_map}{33}{\code {rl_invoking_keyseqs_in_map}}
-\entry{rl_function_dumper}{33}{\code {rl_function_dumper}}
-\entry{rl_list_funmap_names}{33}{\code {rl_list_funmap_names}}
-\entry{rl_funmap_names}{33}{\code {rl_funmap_names}}
-\entry{rl_add_funmap_entry}{33}{\code {rl_add_funmap_entry}}
-\entry{rl_begin_undo_group}{33}{\code {rl_begin_undo_group}}
-\entry{rl_end_undo_group}{33}{\code {rl_end_undo_group}}
-\entry{rl_add_undo}{34}{\code {rl_add_undo}}
-\entry{rl_free_undo_list}{34}{\code {rl_free_undo_list}}
-\entry{rl_do_undo}{34}{\code {rl_do_undo}}
-\entry{rl_modifying}{34}{\code {rl_modifying}}
-\entry{rl_redisplay}{34}{\code {rl_redisplay}}
-\entry{rl_forced_update_display}{34}{\code {rl_forced_update_display}}
-\entry{rl_on_new_line}{34}{\code {rl_on_new_line}}
-\entry{rl_on_new_line_with_prompt}{34}{\code {rl_on_new_line_with_prompt}}
-\entry{rl_reset_line_state}{34}{\code {rl_reset_line_state}}
-\entry{rl_crlf}{34}{\code {rl_crlf}}
-\entry{rl_show_char}{34}{\code {rl_show_char}}
-\entry{rl_message}{35}{\code {rl_message}}
-\entry{rl_clear_message}{35}{\code {rl_clear_message}}
-\entry{rl_save_prompt}{35}{\code {rl_save_prompt}}
-\entry{rl_restore_prompt}{35}{\code {rl_restore_prompt}}
-\entry{rl_expand_prompt}{35}{\code {rl_expand_prompt}}
-\entry{rl_set_prompt}{35}{\code {rl_set_prompt}}
-\entry{rl_insert_text}{35}{\code {rl_insert_text}}
-\entry{rl_delete_text}{35}{\code {rl_delete_text}}
-\entry{rl_copy_text}{35}{\code {rl_copy_text}}
-\entry{rl_kill_text}{36}{\code {rl_kill_text}}
-\entry{rl_push_macro_input}{36}{\code {rl_push_macro_input}}
-\entry{rl_read_key}{36}{\code {rl_read_key}}
-\entry{rl_getc}{36}{\code {rl_getc}}
-\entry{rl_stuff_char}{36}{\code {rl_stuff_char}}
-\entry{rl_execute_next}{36}{\code {rl_execute_next}}
-\entry{rl_clear_pending_input}{36}{\code {rl_clear_pending_input}}
-\entry{rl_set_keyboard_input_timeout}{36}{\code {rl_set_keyboard_input_timeout}}
-\entry{rl_prep_terminal}{36}{\code {rl_prep_terminal}}
-\entry{rl_deprep_terminal}{37}{\code {rl_deprep_terminal}}
-\entry{rl_tty_set_default_bindings}{37}{\code {rl_tty_set_default_bindings}}
-\entry{rl_tty_unset_default_bindings}{37}{\code {rl_tty_unset_default_bindings}}
-\entry{rl_reset_terminal}{37}{\code {rl_reset_terminal}}
-\entry{rl_save_state}{37}{\code {rl_save_state}}
-\entry{rl_restore_state}{37}{\code {rl_restore_state}}
-\entry{rl_free}{37}{\code {rl_free}}
-\entry{rl_replace_line}{37}{\code {rl_replace_line}}
-\entry{rl_extend_line_buffer}{37}{\code {rl_extend_line_buffer}}
-\entry{rl_initialize}{37}{\code {rl_initialize}}
-\entry{rl_ding}{37}{\code {rl_ding}}
-\entry{rl_alphabetic}{37}{\code {rl_alphabetic}}
-\entry{rl_display_match_list}{38}{\code {rl_display_match_list}}
-\entry{_rl_uppercase_p}{38}{\code {_rl_uppercase_p}}
-\entry{_rl_lowercase_p}{38}{\code {_rl_lowercase_p}}
-\entry{_rl_digit_p}{38}{\code {_rl_digit_p}}
-\entry{_rl_to_upper}{38}{\code {_rl_to_upper}}
-\entry{_rl_to_lower}{38}{\code {_rl_to_lower}}
-\entry{_rl_digit_value}{38}{\code {_rl_digit_value}}
-\entry{rl_macro_bind}{38}{\code {rl_macro_bind}}
-\entry{rl_macro_dumper}{38}{\code {rl_macro_dumper}}
-\entry{rl_variable_bind}{38}{\code {rl_variable_bind}}
-\entry{rl_variable_value}{39}{\code {rl_variable_value}}
-\entry{rl_variable_dumper}{39}{\code {rl_variable_dumper}}
-\entry{rl_set_paren_blink_timeout}{39}{\code {rl_set_paren_blink_timeout}}
-\entry{rl_get_termcap}{39}{\code {rl_get_termcap}}
-\entry{rl_callback_handler_install}{39}{\code {rl_callback_handler_install}}
-\entry{rl_callback_read_char}{39}{\code {rl_callback_read_char}}
-\entry{rl_callback_handler_remove}{39}{\code {rl_callback_handler_remove}}
-\entry{rl_catch_signals}{42}{\code {rl_catch_signals}}
-\entry{rl_catch_sigwinch}{42}{\code {rl_catch_sigwinch}}
-\entry{rl_cleanup_after_signal}{42}{\code {rl_cleanup_after_signal}}
-\entry{rl_free_line_state}{42}{\code {rl_free_line_state}}
-\entry{rl_reset_after_signal}{42}{\code {rl_reset_after_signal}}
-\entry{rl_echo_signal_char}{42}{\code {rl_echo_signal_char}}
-\entry{rl_resize_terminal}{42}{\code {rl_resize_terminal}}
-\entry{rl_set_screen_size}{42}{\code {rl_set_screen_size}}
-\entry{rl_get_screen_size}{43}{\code {rl_get_screen_size}}
-\entry{rl_reset_screen_size}{43}{\code {rl_reset_screen_size}}
-\entry{rl_set_signals}{43}{\code {rl_set_signals}}
-\entry{rl_clear_signals}{43}{\code {rl_clear_signals}}
-\entry{rl_complete}{44}{\code {rl_complete}}
-\entry{rl_completion_entry_function}{44}{\code {rl_completion_entry_function}}
-\entry{rl_complete_internal}{44}{\code {rl_complete_internal}}
-\entry{rl_complete}{44}{\code {rl_complete}}
-\entry{rl_possible_completions}{44}{\code {rl_possible_completions}}
-\entry{rl_insert_completions}{44}{\code {rl_insert_completions}}
-\entry{rl_completion_mode}{44}{\code {rl_completion_mode}}
-\entry{rl_completion_matches}{45}{\code {rl_completion_matches}}
-\entry{rl_filename_completion_function}{45}{\code {rl_filename_completion_function}}
-\entry{rl_username_completion_function}{45}{\code {rl_username_completion_function}}
-\entry{rl_completion_entry_function}{45}{\code {rl_completion_entry_function}}
-\entry{rl_attempted_completion_function}{45}{\code {rl_attempted_completion_function}}
-\entry{rl_filename_quoting_function}{45}{\code {rl_filename_quoting_function}}
-\entry{rl_filename_dequoting_function}{46}{\code {rl_filename_dequoting_function}}
-\entry{rl_char_is_quoted_p}{46}{\code {rl_char_is_quoted_p}}
-\entry{rl_ignore_some_completions_function}{46}{\code {rl_ignore_some_completions_function}}
-\entry{rl_directory_completion_hook}{46}{\code {rl_directory_completion_hook}}
-\entry{rl_filename_rewrite_hook}{46}{\code {rl_filename_rewrite_hook}}
-\entry{rl_completion_display_matches_hook}{47}{\code {rl_completion_display_matches_hook}}
-\entry{rl_basic_word_break_characters}{47}{\code {rl_basic_word_break_characters}}
-\entry{rl_basic_quote_characters}{47}{\code {rl_basic_quote_characters}}
-\entry{rl_completer_word_break_characters}{47}{\code {rl_completer_word_break_characters}}
-\entry{rl_completion_word_break_hook}{47}{\code {rl_completion_word_break_hook}}
-\entry{rl_completer_quote_characters}{47}{\code {rl_completer_quote_characters}}
-\entry{rl_filename_quote_characters}{47}{\code {rl_filename_quote_characters}}
-\entry{rl_special_prefixes}{47}{\code {rl_special_prefixes}}
-\entry{rl_completion_query_items}{47}{\code {rl_completion_query_items}}
-\entry{rl_completion_append_character}{48}{\code {rl_completion_append_character}}
-\entry{rl_completion_suppress_append}{48}{\code {rl_completion_suppress_append}}
-\entry{rl_completion_quote_character}{48}{\code {rl_completion_quote_character}}
-\entry{rl_completion_suppress_quote}{48}{\code {rl_completion_suppress_quote}}
-\entry{rl_completion_found_quote}{48}{\code {rl_completion_found_quote}}
-\entry{rl_completion_mark_symlink_dirs}{48}{\code {rl_completion_mark_symlink_dirs}}
-\entry{rl_ignore_completion_duplicates}{48}{\code {rl_ignore_completion_duplicates}}
-\entry{rl_filename_completion_desired}{48}{\code {rl_filename_completion_desired}}
-\entry{rl_filename_quoting_desired}{49}{\code {rl_filename_quoting_desired}}
-\entry{rl_attempted_completion_over}{49}{\code {rl_attempted_completion_over}}
-\entry{rl_sort_completion_matches}{49}{\code {rl_sort_completion_matches}}
-\entry{rl_completion_type}{49}{\code {rl_completion_type}}
-\entry{rl_completion_invoking_key}{49}{\code {rl_completion_invoking_key}}
-\entry{rl_inhibit_completion}{49}{\code {rl_inhibit_completion}}
diff --git a/lib/readline/doc/rlman.fns b/lib/readline/doc/rlman.fns
deleted file mode 100644 (file)
index 936049d..0000000
+++ /dev/null
@@ -1,310 +0,0 @@
-\initial {_}
-\entry {\code {_rl_digit_p}}{38}
-\entry {\code {_rl_digit_value}}{38}
-\entry {\code {_rl_lowercase_p}}{38}
-\entry {\code {_rl_to_lower}}{38}
-\entry {\code {_rl_to_upper}}{38}
-\entry {\code {_rl_uppercase_p}}{38}
-\initial {A}
-\entry {\code {abort (C-g)}}{19}
-\entry {\code {accept-line (Newline or Return)}}{14}
-\initial {B}
-\entry {\code {backward-char (C-b)}}{14}
-\entry {\code {backward-delete-char (Rubout)}}{16}
-\entry {\code {backward-kill-line (C-x Rubout)}}{17}
-\entry {\code {backward-kill-word (M-\key {DEL})}}{17}
-\entry {\code {backward-word (M-b)}}{14}
-\entry {\code {beginning-of-history (M-<)}}{15}
-\entry {\code {beginning-of-line (C-a)}}{14}
-\entry {bell-style}{4}
-\entry {bind-tty-special-chars}{5}
-\initial {C}
-\entry {\code {call-last-kbd-macro (C-x e)}}{19}
-\entry {\code {capitalize-word (M-c)}}{16}
-\entry {\code {character-search (C-])}}{20}
-\entry {\code {character-search-backward (M-C-])}}{20}
-\entry {\code {clear-screen (C-l)}}{14}
-\entry {comment-begin}{5}
-\entry {\code {complete (\key {TAB})}}{18}
-\entry {completion-display-width}{5}
-\entry {completion-ignore-case}{5}
-\entry {completion-map-case}{5}
-\entry {completion-prefix-display-length}{5}
-\entry {completion-query-items}{5}
-\entry {convert-meta}{5}
-\entry {\code {copy-backward-word ()}}{17}
-\entry {\code {copy-forward-word ()}}{18}
-\entry {\code {copy-region-as-kill ()}}{17}
-\initial {D}
-\entry {\code {delete-char (C-d)}}{16}
-\entry {\code {delete-char-or-list ()}}{19}
-\entry {\code {delete-horizontal-space ()}}{17}
-\entry {\code {digit-argument (\kbd {M-0}, \kbd {M-1}, \dots {} \kbd {M--})}}{18}
-\entry {disable-completion}{5}
-\entry {\code {do-uppercase-version (M-a, M-b, M-\var {x}, \dots {})}}{19}
-\entry {\code {downcase-word (M-l)}}{16}
-\entry {\code {dump-functions ()}}{20}
-\entry {\code {dump-macros ()}}{20}
-\entry {\code {dump-variables ()}}{20}
-\initial {E}
-\entry {editing-mode}{6}
-\entry {\code {emacs-editing-mode (C-e)}}{20}
-\entry {enable-keypad}{6}
-\entry {\code {end-kbd-macro (C-x ))}}{19}
-\entry {\code {end-of-history (M->)}}{15}
-\entry {\code {end-of-line (C-e)}}{14}
-\entry {\code {exchange-point-and-mark (C-x C-x)}}{20}
-\entry {expand-tilde}{6}
-\initial {F}
-\entry {\code {forward-backward-delete-char ()}}{16}
-\entry {\code {forward-char (C-f)}}{14}
-\entry {\code {forward-search-history (C-s)}}{15}
-\entry {\code {forward-word (M-f)}}{14}
-\initial {H}
-\entry {history-preserve-point}{6}
-\entry {\code {history-search-backward ()}}{15}
-\entry {\code {history-search-forward ()}}{15}
-\entry {history-size}{6}
-\entry {horizontal-scroll-mode}{6}
-\initial {I}
-\entry {input-meta}{6}
-\entry {\code {insert-comment (M-#)}}{20}
-\entry {\code {insert-completions (M-*)}}{18}
-\entry {isearch-terminators}{6}
-\initial {K}
-\entry {keymap}{7}
-\entry {\code {kill-line (C-k)}}{17}
-\entry {\code {kill-region ()}}{17}
-\entry {\code {kill-whole-line ()}}{17}
-\entry {\code {kill-word (M-d)}}{17}
-\initial {M}
-\entry {mark-modified-lines}{7}
-\entry {mark-symlinked-directories}{7}
-\entry {match-hidden-files}{7}
-\entry {\code {menu-complete ()}}{18}
-\entry {\code {menu-complete-backward ()}}{19}
-\entry {menu-complete-display-prefix}{7}
-\entry {meta-flag}{6}
-\initial {N}
-\entry {\code {next-history (C-n)}}{15}
-\entry {\code {non-incremental-forward-search-history (M-n)}}{15}
-\entry {\code {non-incremental-reverse-search-history (M-p)}}{15}
-\initial {O}
-\entry {output-meta}{7}
-\entry {\code {overwrite-mode ()}}{17}
-\initial {P}
-\entry {page-completions}{7}
-\entry {\code {possible-completions (M-?)}}{18}
-\entry {\code {prefix-meta (\key {ESC})}}{19}
-\entry {\code {previous-history (C-p)}}{14}
-\initial {Q}
-\entry {\code {quoted-insert (C-q or C-v)}}{16}
-\initial {R}
-\entry {\code {re-read-init-file (C-x C-r)}}{19}
-\entry {\code {readline}}{22}
-\entry {\code {redraw-current-line ()}}{14}
-\entry {\code {reverse-search-history (C-r)}}{15}
-\entry {revert-all-at-newline}{8}
-\entry {\code {revert-line (M-r)}}{19}
-\entry {\code {rl_add_defun}}{30}
-\entry {\code {rl_add_funmap_entry}}{33}
-\entry {\code {rl_add_undo}}{34}
-\entry {\code {rl_alphabetic}}{37}
-\entry {\code {rl_already_prompted}}{26}
-\entry {\code {rl_attempted_completion_function}}{45}
-\entry {\code {rl_attempted_completion_over}}{49}
-\entry {\code {rl_basic_quote_characters}}{47}
-\entry {\code {rl_basic_word_break_characters}}{47}
-\entry {\code {rl_begin_undo_group}}{33}
-\entry {\code {rl_bind_key}}{31}
-\entry {\code {rl_bind_key_if_unbound}}{31}
-\entry {\code {rl_bind_key_if_unbound_in_map}}{31}
-\entry {\code {rl_bind_key_in_map}}{31}
-\entry {\code {rl_bind_keyseq}}{31}
-\entry {\code {rl_bind_keyseq_if_unbound}}{32}
-\entry {\code {rl_bind_keyseq_if_unbound_in_map}}{32}
-\entry {\code {rl_bind_keyseq_in_map}}{32}
-\entry {\code {rl_binding_keymap}}{27}
-\entry {\code {rl_callback_handler_install}}{39}
-\entry {\code {rl_callback_handler_remove}}{39}
-\entry {\code {rl_callback_read_char}}{39}
-\entry {\code {rl_catch_signals}}{42}
-\entry {\code {rl_catch_sigwinch}}{42}
-\entry {\code {rl_char_is_quoted_p}}{46}
-\entry {\code {rl_cleanup_after_signal}}{42}
-\entry {\code {rl_clear_message}}{35}
-\entry {\code {rl_clear_pending_input}}{36}
-\entry {\code {rl_clear_signals}}{43}
-\entry {\code {rl_complete}}{44}
-\entry {\code {rl_complete_internal}}{44}
-\entry {\code {rl_completer_quote_characters}}{47}
-\entry {\code {rl_completer_word_break_characters}}{47}
-\entry {\code {rl_completion_append_character}}{48}
-\entry {\code {rl_completion_display_matches_hook}}{47}
-\entry {\code {rl_completion_entry_function}}{44, 45}
-\entry {\code {rl_completion_found_quote}}{48}
-\entry {\code {rl_completion_invoking_key}}{49}
-\entry {\code {rl_completion_mark_symlink_dirs}}{48}
-\entry {\code {rl_completion_matches}}{45}
-\entry {\code {rl_completion_mode}}{44}
-\entry {\code {rl_completion_query_items}}{47}
-\entry {\code {rl_completion_quote_character}}{48}
-\entry {\code {rl_completion_suppress_append}}{48}
-\entry {\code {rl_completion_suppress_quote}}{48}
-\entry {\code {rl_completion_type}}{49}
-\entry {\code {rl_completion_word_break_hook}}{47}
-\entry {\code {rl_copy_keymap}}{30}
-\entry {\code {rl_copy_text}}{35}
-\entry {\code {rl_crlf}}{34}
-\entry {\code {rl_delete_text}}{35}
-\entry {\code {rl_deprep_term_function}}{27}
-\entry {\code {rl_deprep_terminal}}{37}
-\entry {\code {rl_ding}}{37}
-\entry {\code {rl_directory_completion_hook}}{46}
-\entry {\code {rl_discard_keymap}}{30}
-\entry {\code {rl_dispatching}}{25}
-\entry {\code {rl_display_match_list}}{38}
-\entry {\code {rl_display_prompt}}{26}
-\entry {\code {rl_do_undo}}{34}
-\entry {\code {rl_done}}{25}
-\entry {\code {rl_echo_signal_char}}{42}
-\entry {\code {rl_editing_mode}}{29}
-\entry {\code {rl_end}}{25}
-\entry {\code {rl_end_undo_group}}{33}
-\entry {\code {rl_erase_empty_line}}{25}
-\entry {\code {rl_event_hook}}{27}
-\entry {\code {rl_execute_next}}{36}
-\entry {\code {rl_executing_keymap}}{27}
-\entry {\code {rl_executing_macro}}{27}
-\entry {\code {rl_expand_prompt}}{35}
-\entry {\code {rl_explicit_arg}}{29}
-\entry {\code {rl_extend_line_buffer}}{37}
-\entry {\code {rl_filename_completion_desired}}{48}
-\entry {\code {rl_filename_completion_function}}{45}
-\entry {\code {rl_filename_dequoting_function}}{46}
-\entry {\code {rl_filename_quote_characters}}{47}
-\entry {\code {rl_filename_quoting_desired}}{49}
-\entry {\code {rl_filename_quoting_function}}{45}
-\entry {\code {rl_filename_rewrite_hook}}{46}
-\entry {\code {rl_forced_update_display}}{34}
-\entry {\code {rl_free}}{37}
-\entry {\code {rl_free_keymap}}{30}
-\entry {\code {rl_free_line_state}}{42}
-\entry {\code {rl_free_undo_list}}{34}
-\entry {\code {rl_function_dumper}}{33}
-\entry {\code {rl_function_of_keyseq}}{32}
-\entry {\code {rl_funmap_names}}{33}
-\entry {\code {rl_generic_bind}}{32}
-\entry {\code {rl_get_keymap}}{30}
-\entry {\code {rl_get_keymap_by_name}}{30}
-\entry {\code {rl_get_keymap_name}}{30}
-\entry {\code {rl_get_screen_size}}{43}
-\entry {\code {rl_get_termcap}}{39}
-\entry {\code {rl_getc}}{36}
-\entry {\code {rl_getc_function}}{27}
-\entry {\code {rl_gnu_readline_p}}{26}
-\entry {\code {rl_ignore_completion_duplicates}}{48}
-\entry {\code {rl_ignore_some_completions_function}}{46}
-\entry {\code {rl_inhibit_completion}}{49}
-\entry {\code {rl_initialize}}{37}
-\entry {\code {rl_insert_completions}}{44}
-\entry {\code {rl_insert_text}}{35}
-\entry {\code {rl_instream}}{26}
-\entry {\code {rl_invoking_keyseqs}}{33}
-\entry {\code {rl_invoking_keyseqs_in_map}}{33}
-\entry {\code {rl_kill_text}}{36}
-\entry {\code {rl_last_func}}{27}
-\entry {\code {rl_library_version}}{26}
-\entry {\code {rl_line_buffer}}{25}
-\entry {\code {rl_list_funmap_names}}{33}
-\entry {\code {rl_macro_bind}}{38}
-\entry {\code {rl_macro_dumper}}{38}
-\entry {\code {rl_make_bare_keymap}}{30}
-\entry {\code {rl_make_keymap}}{30}
-\entry {\code {rl_mark}}{25}
-\entry {\code {rl_message}}{35}
-\entry {\code {rl_modifying}}{34}
-\entry {\code {rl_named_function}}{32}
-\entry {\code {rl_num_chars_to_read}}{25}
-\entry {\code {rl_numeric_arg}}{29}
-\entry {\code {rl_on_new_line}}{34}
-\entry {\code {rl_on_new_line_with_prompt}}{34}
-\entry {\code {rl_outstream}}{26}
-\entry {\code {rl_parse_and_bind}}{32}
-\entry {\code {rl_pending_input}}{25}
-\entry {\code {rl_point}}{25}
-\entry {\code {rl_possible_completions}}{44}
-\entry {\code {rl_pre_input_hook}}{27}
-\entry {\code {rl_prefer_env_winsize}}{26}
-\entry {\code {rl_prep_term_function}}{27}
-\entry {\code {rl_prep_terminal}}{36}
-\entry {\code {rl_prompt}}{26}
-\entry {\code {rl_push_macro_input}}{36}
-\entry {\code {rl_read_init_file}}{32}
-\entry {\code {rl_read_key}}{36}
-\entry {\code {rl_readline_name}}{26}
-\entry {\code {rl_readline_state}}{28}
-\entry {\code {rl_readline_version}}{26}
-\entry {\code {rl_redisplay}}{34}
-\entry {\code {rl_redisplay_function}}{27}
-\entry {\code {rl_replace_line}}{37}
-\entry {\code {rl_reset_after_signal}}{42}
-\entry {\code {rl_reset_line_state}}{34}
-\entry {\code {rl_reset_screen_size}}{43}
-\entry {\code {rl_reset_terminal}}{37}
-\entry {\code {rl_resize_terminal}}{42}
-\entry {\code {rl_restore_prompt}}{35}
-\entry {\code {rl_restore_state}}{37}
-\entry {\code {rl_save_prompt}}{35}
-\entry {\code {rl_save_state}}{37}
-\entry {\code {rl_set_key}}{32}
-\entry {\code {rl_set_keyboard_input_timeout}}{36}
-\entry {\code {rl_set_keymap}}{30}
-\entry {\code {rl_set_paren_blink_timeout}}{39}
-\entry {\code {rl_set_prompt}}{35}
-\entry {\code {rl_set_screen_size}}{42}
-\entry {\code {rl_set_signals}}{43}
-\entry {\code {rl_show_char}}{34}
-\entry {\code {rl_sort_completion_matches}}{49}
-\entry {\code {rl_special_prefixes}}{47}
-\entry {\code {rl_startup_hook}}{27}
-\entry {\code {rl_stuff_char}}{36}
-\entry {\code {rl_terminal_name}}{26}
-\entry {\code {rl_tty_set_default_bindings}}{37}
-\entry {\code {rl_tty_unset_default_bindings}}{37}
-\entry {\code {rl_unbind_command_in_map}}{31}
-\entry {\code {rl_unbind_function_in_map}}{31}
-\entry {\code {rl_unbind_key}}{31}
-\entry {\code {rl_unbind_key_in_map}}{31}
-\entry {\code {rl_username_completion_function}}{45}
-\entry {\code {rl_variable_bind}}{38}
-\entry {\code {rl_variable_dumper}}{39}
-\entry {\code {rl_variable_value}}{39}
-\initial {S}
-\entry {\code {self-insert (a, b, A, 1, !, \dots {})}}{16}
-\entry {\code {set-mark (C-@)}}{19}
-\entry {show-all-if-ambiguous}{8}
-\entry {show-all-if-unmodified}{8}
-\entry {skip-completed-text}{8}
-\entry {\code {skip-csi-sequence ()}}{20}
-\entry {\code {start-kbd-macro (C-x ()}}{19}
-\initial {T}
-\entry {\code {tab-insert (M-\key {TAB})}}{16}
-\entry {\code {tilde-expand (M-~)}}{19}
-\entry {\code {transpose-chars (C-t)}}{16}
-\entry {\code {transpose-words (M-t)}}{16}
-\initial {U}
-\entry {\code {undo (C-_ or C-x C-u)}}{19}
-\entry {\code {universal-argument ()}}{18}
-\entry {\code {unix-filename-rubout ()}}{17}
-\entry {\code {unix-line-discard (C-u)}}{17}
-\entry {\code {unix-word-rubout (C-w)}}{17}
-\entry {\code {upcase-word (M-u)}}{16}
-\initial {V}
-\entry {\code {vi-editing-mode (M-C-j)}}{20}
-\entry {visible-stats}{8}
-\initial {Y}
-\entry {\code {yank (C-y)}}{18}
-\entry {\code {yank-last-arg (M-. or M-_)}}{15}
-\entry {\code {yank-nth-arg (M-C-y)}}{15}
-\entry {\code {yank-pop (M-y)}}{18}
diff --git a/lib/readline/doc/rlman.ky b/lib/readline/doc/rlman.ky
deleted file mode 100644 (file)
index e69de29..0000000
diff --git a/lib/readline/doc/rlman.log b/lib/readline/doc/rlman.log
deleted file mode 100644 (file)
index bad8027..0000000
+++ /dev/null
@@ -1,231 +0,0 @@
-This is TeX, Version 3.141592 (Web2C 7.5.4) (format=tex 2008.12.11)  8 FEB 2011 11:10
-**/usr/homes/chet/src/bash/src/lib/readline/doc/rlman.texi
-(/usr/homes/chet/src/bash/src/lib/readline/doc/rlman.texi (./texinfo.tex
-Loading texinfo [version 2009-01-18.17]:
-\bindingoffset=\dimen16
-\normaloffset=\dimen17
-\pagewidth=\dimen18
-\pageheight=\dimen19
-\outerhsize=\dimen20
-\outervsize=\dimen21
-\cornerlong=\dimen22
-\cornerthick=\dimen23
-\topandbottommargin=\dimen24
-\headlinebox=\box16
-\footlinebox=\box17
-\margin=\insert252
-\EMsimple=\toks12
-\groupbox=\box18
-\groupinvalidhelp=\toks13
-\mil=\dimen25
-\exdentamount=\skip18
-\inmarginspacing=\skip19
- pdf,
-\tempnum=\count26
-\lnkcount=\count27
-\filename=\toks14
-\filenamelength=\count28
-\pgn=\count29
-\toksA=\toks15
-\toksB=\toks16
-\toksC=\toks17
-\toksD=\toks18
-\boxA=\box19
-\countA=\count30
-\nopdfimagehelp=\toks19
- fonts,
-\sffam=\fam8
-\textleading=\dimen26
- markup,
-\fontdepth=\count31
- glyphs,
-\errorbox=\box20
-
-page headings,
-\titlepagetopglue=\skip20
-\titlepagebottomglue=\skip21
-\evenheadline=\toks20
-\oddheadline=\toks21
-\evenfootline=\toks22
-\oddfootline=\toks23
- tables,
-\tableindent=\dimen27
-\itemindent=\dimen28
-\itemmargin=\dimen29
-\itemmax=\dimen30
-\itemno=\count32
-\multitableparskip=\skip22
-\multitableparindent=\skip23
-\multitablecolspace=\dimen31
-\multitablelinespace=\skip24
-\colcount=\count33
-\everytab=\toks24
- conditionals,
-\doignorecount=\count34
- indexing,
-\whatsitskip=\skip25
-\whatsitpenalty=\count35
-\secondaryindent=\skip26
-\partialpage=\box21
-\doublecolumnhsize=\dimen32
- sectioning,
-\unnumberedno=\count36
-\chapno=\count37
-\secno=\count38
-\subsecno=\count39
-\subsubsecno=\count40
-\appendixno=\count41
-\absseclevel=\count42
-\secbase=\count43
-\chapheadingskip=\skip27
-\secheadingskip=\skip28
-\subsecheadingskip=\skip29
- toc,
-\tocfile=\write0
-\contentsrightmargin=\skip30
-\savepageno=\count44
-\lastnegativepageno=\count45
-\tocindent=\dimen33
- environments,
-\lispnarrowing=\skip31
-\envskipamount=\skip32
-\circthick=\dimen34
-\cartouter=\dimen35
-\cartinner=\dimen36
-\normbskip=\skip33
-\normpskip=\skip34
-\normlskip=\skip35
-\lskip=\skip36
-\rskip=\skip37
-\nonfillparindent=\dimen37
-\tabw=\dimen38
-
-defuns,
-\defbodyindent=\skip38
-\defargsindent=\skip39
-\deflastargmargin=\skip40
-\defunpenalty=\count46
-\parencount=\count47
-\brackcount=\count48
- macros,
-\macscribble=\write1
-\paramno=\count49
-\macname=\toks25
- cross references,
-\auxfile=\write2
-\savesfregister=\count50
- insertions,
-\footnoteno=\count51
-\SAVEfootins=\box22
-\SAVEmargin=\box23
-
-(/sw/share/texmf-dist/tex/generic/epsf/epsf.tex
-\epsffilein=\read0
-\epsfframemargin=\dimen39
-\epsfframethickness=\dimen40
-\epsfrsize=\dimen41
-\epsftmp=\dimen42
-\epsftsize=\dimen43
-\epsfxsize=\dimen44
-\epsfysize=\dimen45
-\pspoints=\dimen46
-\epsfnoopenhelp=\toks26
-)
-\noepsfhelp=\toks27
- localization,
-\nolanghelp=\toks28
-\countUTFx=\count52
-\countUTFy=\count53
-\countUTFz=\count54
- formatting,
-\defaultparindent=\dimen47
-
-and turning on texinfo input format.) (./rlman.aux)
-\openout2 = `rlman.aux'.
-
-@cpindfile=@write3
-@fnindfile=@write4
-@vrindfile=@write5
-@tpindfile=@write6
-@kyindfile=@write7
-@pgindfile=@write8
- (./version.texi) [1
-\openout3 = `rlman.cp'.
-
-\openout4 = `rlman.fn'.
-
-\openout5 = `rlman.vr'.
-
-\openout6 = `rlman.tp'.
-
-\openout7 = `rlman.ky'.
-
-\openout8 = `rlman.pg'.
-
-]
-\openout1 = `rlman.tmp'.
-
-
-(./rlman.tmp) [2] (./rlman.toc [-1]) [-2] (./rluser.texi
-@btindfile=@write9
- Chapter 1
-\openout0 = `rlman.toc'.
-
- [1
-\openout9 = `rlman.bt'.
-
-] [2]
-[3] [4] [5] [6]
-Underfull \hbox (badness 5231) in paragraph at lines 551--567
- @texttt emacs-meta[]@textrm , @texttt emacs-ctlx[]@textrm , @texttt vi[]@textr
-m , @texttt vi-move[]@textrm , @texttt vi-command[]@textrm , and
-
-@hbox(7.60416+2.12917)x433.62, glue set 3.7426
-.@glue(@leftskip) 115.63242
-.@texttt e
-.@texttt m
-.@texttt a
-.@texttt c
-.etc.
-
-[7] [8] [9] [10] [11]
-Overfull \hbox (26.43913pt too wide) in paragraph at lines 894--894
- []@texttt Meta-Control-h: backward-kill-word Text after the function name is i
-gnored[] |
-
-@hbox(6.69167+2.43333)x433.62
-.@glue(@leftskip) 28.90755
-.@hbox(0.0+0.0)x0.0
-.@texttt M
-.@texttt e
-.@texttt t
-.etc.
-
-[12] [13] [14] [15] [16] [17] [18] [19] [20]) (./rltech.texi Chapter 2 [21]
-[22] [23] [24] [25] [26] [27] [28] [29] [30] [31] [32] [33] [34] [35] [36]
-[37] [38] [39] [40] [41] [42] [43] [44] [45] [46] [47] [48]
-Underfull \hbox (badness 7379) in paragraph at lines 1910--1915
- []@textrm If an application-specific com-ple-tion func-tion as-signed to @text
-tt rl_attempted_
-
-@hbox(7.60416+2.43333)x433.62, glue set 4.19675
-.@glue(@leftskip) 28.90755
-.@hbox(0.0+0.0)x0.0
-.@textrm I
-.@textrm f
-.@glue 3.65 plus 1.825 minus 1.21666
-.etc.
-
-[49] [50] [51] [52] [53] [54] [55] [56]) Appendix A [57] (./fdl.texi [58]
-[59] [60] [61] [62] [63] [64]) (Concept Index) [65] (./rlman.cps)
-(Function and Variable Index) [66] (./rlman.fns [67] [68] [69]) [70] ) 
-Here is how much of TeX's memory you used:
- 1839 strings out of 97980
- 23025 string characters out of 1221004
- 86081 words of memory out of 1500000
- 2666 multiletter control sequences out of 10000+50000
- 32127 words of font info for 112 fonts, out of 1200000 for 2000
- 51 hyphenation exceptions out of 8191
- 16i,6n,14p,327b,534s stack positions out of 5000i,500n,6000p,200000b,5000s
-
-Output written on rlman.dvi (74 pages, 300184 bytes).
diff --git a/lib/readline/doc/rlman.pg b/lib/readline/doc/rlman.pg
deleted file mode 100644 (file)
index e69de29..0000000
diff --git a/lib/readline/doc/rlman.texinfo b/lib/readline/doc/rlman.texinfo
deleted file mode 100644 (file)
index 1ffebad..0000000
+++ /dev/null
@@ -1,108 +0,0 @@
-\input texinfo    @c -*-texinfo-*-
-@comment %**start of header (This is for running Texinfo on a region.)
-@setfilename readline.info
-@settitle GNU Readline Library
-@comment %**end of header (This is for running Texinfo on a region.)
-@synindex vr fn
-@setchapternewpage odd
-
-@include manvers.texinfo
-
-@ifinfo
-@dircategory Libraries
-@direntry
-* Readline: (readline).       The GNU readline library API
-@end direntry
-
-This document describes the GNU Readline Library, a utility which aids
-in the consistency of user interface across discrete programs that need
-to provide a command line interface.
-
-Copyright (C) 1988-2002 Free Software Foundation, Inc.
-
-Permission is granted to make and distribute verbatim copies of
-this manual provided the copyright notice and this permission notice
-pare preserved on all copies.
-
-@ignore
-Permission is granted to process this file through TeX and print the
-results, provided the printed document carries copying permission
-notice identical to this one except for the removal of this paragraph
-(this paragraph not being relevant to the printed manual).
-@end ignore
-
-Permission is granted to copy and distribute modified versions of this
-manual under the conditions for verbatim copying, provided that the entire
-resulting derived work is distributed under the terms of a permission
-notice identical to this one.
-
-Permission is granted to copy and distribute translations of this manual
-into another language, under the above conditions for modified versions,
-except that this permission notice may be stated in a translation approved
-by the Free Software Foundation.
-@end ifinfo
-
-@titlepage  
-@title GNU Readline Library
-@subtitle Edition @value{EDITION}, for @code{Readline Library} Version @value{VERSION}.
-@subtitle @value{UPDATE-MONTH}
-@author Brian Fox, Free Software Foundation
-@author Chet Ramey, Case Western Reserve University
-
-@page
-This document describes the GNU Readline Library, a utility which aids
-in the consistency of user interface across discrete programs that need
-to provide a command line interface.
-
-Published by the Free Software Foundation @*
-59 Temple Place, Suite 330, @*
-Boston, MA 02111 USA
-
-Permission is granted to make and distribute verbatim copies of
-this manual provided the copyright notice and this permission notice
-are preserved on all copies.
-
-Permission is granted to copy and distribute modified versions of this
-manual under the conditions for verbatim copying, provided that the entire
-resulting derived work is distributed under the terms of a permission
-notice identical to this one.
-
-Permission is granted to copy and distribute translations of this manual
-into another language, under the above conditions for modified versions,
-except that this permission notice may be stated in a translation approved
-by the Free Software Foundation.
-
-@vskip 0pt plus 1filll
-Copyright @copyright{} 1988-2002 Free Software Foundation, Inc.
-@end titlepage
-
-@ifinfo
-@node Top
-@top GNU Readline Library
-
-This document describes the GNU Readline Library, a utility which aids
-in the consistency of user interface across discrete programs that need
-to provide a command line interface.
-
-@menu
-* Command Line Editing::          GNU Readline User's Manual.
-* Programming with GNU Readline::  GNU Readline Programmer's Manual.
-* Concept Index::                 Index of concepts described in this manual.
-* Function and Variable Index::           Index of externally visible functions
-                                  and variables.
-@end menu
-@end ifinfo
-
-@include rluser.texinfo
-@include rltech.texinfo
-
-@node Concept Index
-@unnumbered Concept Index
-@printindex cp
-
-@node Function and Variable Index
-@unnumbered Function and Variable Index
-@printindex fn
-
-@contents
-@bye
diff --git a/lib/readline/doc/rlman.tmp b/lib/readline/doc/rlman.tmp
deleted file mode 100644 (file)
index d707328..0000000
+++ /dev/null
@@ -1,26 +0,0 @@
-
-This manual describes the GNU Readline Library
-(version @value{VERSION}, @value{UPDATED}), a library which aids in the
-consistency of user interface across discrete programs which provide
-a command line interface.
-
-Copyright @copyright{} 1988--2011 Free Software Foundation, Inc.
-
-Permission is granted to make and distribute verbatim copies of
-this manual provided the copyright notice and this permission notice
-are preserved on all copies.
-
-@quotation
-Permission is granted to copy, distribute and/or modify this document
-under the terms of the GNU Free Documentation License, Version 1.3 or
-any later version published by the Free Software Foundation; with no
-Invariant Sections, with the Front-Cover texts being ``A GNU Manual'',
-and with the Back-Cover Texts as in (a) below. A copy of the license is
-included in the section entitled ``GNU Free Documentation License''.
-
-(a) The FSF's Back-Cover Text is: You are free to copy and modify
-this GNU manual. Buying copies from GNU Press supports the FSF in
-developing GNU and promoting software freedom.''
-
-@end quotation
-@endinput 
diff --git a/lib/readline/doc/rlman.toc b/lib/readline/doc/rlman.toc
deleted file mode 100644 (file)
index 82cf5c4..0000000
+++ /dev/null
@@ -1,51 +0,0 @@
-@numchapentry{Command Line Editing}{1}{Command Line Editing}{1}
-@numsecentry{Introduction to Line Editing}{1.1}{Introduction and Notation}{1}
-@numsecentry{Readline Interaction}{1.2}{Readline Interaction}{1}
-@numsubsecentry{Readline Bare Essentials}{1.2.1}{Readline Bare Essentials}{1}
-@numsubsecentry{Readline Movement Commands}{1.2.2}{Readline Movement Commands}{2}
-@numsubsecentry{Readline Killing Commands}{1.2.3}{Readline Killing Commands}{2}
-@numsubsecentry{Readline Arguments}{1.2.4}{Readline Arguments}{3}
-@numsubsecentry{Searching for Commands in the History}{1.2.5}{Searching}{3}
-@numsecentry{Readline Init File}{1.3}{Readline Init File}{4}
-@numsubsecentry{Readline Init File Syntax}{1.3.1}{Readline Init File Syntax}{4}
-@numsubsecentry{Conditional Init Constructs}{1.3.2}{Conditional Init Constructs}{10}
-@numsubsecentry{Sample Init File}{1.3.3}{Sample Init File}{11}
-@numsecentry{Bindable Readline Commands}{1.4}{Bindable Readline Commands}{14}
-@numsubsecentry{Commands For Moving}{1.4.1}{Commands For Moving}{14}
-@numsubsecentry{Commands For Manipulating The History}{1.4.2}{Commands For History}{14}
-@numsubsecentry{Commands For Changing Text}{1.4.3}{Commands For Text}{16}
-@numsubsecentry{Killing And Yanking}{1.4.4}{Commands For Killing}{17}
-@numsubsecentry{Specifying Numeric Arguments}{1.4.5}{Numeric Arguments}{18}
-@numsubsecentry{Letting Readline Type For You}{1.4.6}{Commands For Completion}{18}
-@numsubsecentry{Keyboard Macros}{1.4.7}{Keyboard Macros}{19}
-@numsubsecentry{Some Miscellaneous Commands}{1.4.8}{Miscellaneous Commands}{19}
-@numsecentry{Readline vi Mode}{1.5}{Readline vi Mode}{21}
-@numchapentry{Programming with GNU Readline}{2}{Programming with GNU Readline}{22}
-@numsecentry{Basic Behavior}{2.1}{Basic Behavior}{22}
-@numsecentry{Custom Functions}{2.2}{Custom Functions}{23}
-@numsubsecentry{Readline Typedefs}{2.2.1}{Readline Typedefs}{24}
-@numsubsecentry{Writing a New Function}{2.2.2}{Function Writing}{24}
-@numsecentry{Readline Variables}{2.3}{Readline Variables}{25}
-@numsecentry{Readline Convenience Functions}{2.4}{Readline Convenience Functions}{29}
-@numsubsecentry{Naming a Function}{2.4.1}{Function Naming}{29}
-@numsubsecentry{Selecting a Keymap}{2.4.2}{Keymaps}{30}
-@numsubsecentry{Binding Keys}{2.4.3}{Binding Keys}{31}
-@numsubsecentry{Associating Function Names and Bindings}{2.4.4}{Associating Function Names and Bindings}{32}
-@numsubsecentry{Allowing Undoing}{2.4.5}{Allowing Undoing}{33}
-@numsubsecentry{Redisplay}{2.4.6}{Redisplay}{34}
-@numsubsecentry{Modifying Text}{2.4.7}{Modifying Text}{35}
-@numsubsecentry{Character Input}{2.4.8}{Character Input}{36}
-@numsubsecentry{Terminal Management}{2.4.9}{Terminal Management}{36}
-@numsubsecentry{Utility Functions}{2.4.10}{Utility Functions}{37}
-@numsubsecentry{Miscellaneous Functions}{2.4.11}{Miscellaneous Functions}{38}
-@numsubsecentry{Alternate Interface}{2.4.12}{Alternate Interface}{39}
-@numsubsecentry{A Readline Example}{2.4.13}{A Readline Example}{40}
-@numsecentry{Readline Signal Handling}{2.5}{Readline Signal Handling}{41}
-@numsecentry{Custom Completers}{2.6}{Custom Completers}{43}
-@numsubsecentry{How Completing Works}{2.6.1}{How Completing Works}{43}
-@numsubsecentry{Completion Functions}{2.6.2}{Completion Functions}{44}
-@numsubsecentry{Completion Variables}{2.6.3}{Completion Variables}{45}
-@numsubsecentry{A Short Completion Example}{2.6.4}{A Short Completion Example}{49}
-@appentry{GNU Free Documentation License}{A}{GNU Free Documentation License}{58}
-@unnchapentry{Concept Index}{10001}{Concept Index}{66}
-@unnchapentry{Function and Variable Index}{10002}{Function and Variable Index}{67}
diff --git a/lib/readline/doc/rlman.tp b/lib/readline/doc/rlman.tp
deleted file mode 100644 (file)
index e69de29..0000000
diff --git a/lib/readline/doc/rlman.vr b/lib/readline/doc/rlman.vr
deleted file mode 100644 (file)
index e69de29..0000000
diff --git a/lib/readline/doc/rltech.texinfo b/lib/readline/doc/rltech.texinfo
deleted file mode 100644 (file)
index 037e824..0000000
+++ /dev/null
@@ -1,2165 +0,0 @@
-@comment %**start of header (This is for running Texinfo on a region.)
-@setfilename rltech.info
-@comment %**end of header (This is for running Texinfo on a region.)
-@setchapternewpage odd
-
-@ifinfo
-This document describes the GNU Readline Library, a utility for aiding
-in the consitency of user interface across discrete programs that need
-to provide a command line interface.
-
-Copyright (C) 1988-2002 Free Software Foundation, Inc.
-
-Permission is granted to make and distribute verbatim copies of
-this manual provided the copyright notice and this permission notice
-pare preserved on all copies.
-
-@ignore
-Permission is granted to process this file through TeX and print the
-results, provided the printed document carries copying permission
-notice identical to this one except for the removal of this paragraph
-(this paragraph not being relevant to the printed manual).
-@end ignore
-
-Permission is granted to copy and distribute modified versions of this
-manual under the conditions for verbatim copying, provided that the entire
-resulting derived work is distributed under the terms of a permission
-notice identical to this one.
-
-Permission is granted to copy and distribute translations of this manual
-into another language, under the above conditions for modified versions,
-except that this permission notice may be stated in a translation approved
-by the Foundation.
-@end ifinfo
-
-@node Programming with GNU Readline
-@chapter Programming with GNU Readline
-
-This chapter describes the interface between the @sc{gnu} Readline Library and
-other programs.  If you are a programmer, and you wish to include the
-features found in @sc{gnu} Readline
-such as completion, line editing, and interactive history manipulation
-in your own programs, this section is for you.
-
-@menu
-* Basic Behavior::     Using the default behavior of Readline.
-* Custom Functions::   Adding your own functions to Readline.
-* Readline Variables::                 Variables accessible to custom
-                                       functions.
-* Readline Convenience Functions::     Functions which Readline supplies to
-                                       aid in writing your own custom
-                                       functions.
-* Readline Signal Handling::   How Readline behaves when it receives signals.
-* Custom Completers::  Supplanting or supplementing Readline's
-                       completion functions.
-@end menu
-
-@node Basic Behavior
-@section Basic Behavior
-
-Many programs provide a command line interface, such as @code{mail},
-@code{ftp}, and @code{sh}.  For such programs, the default behaviour of
-Readline is sufficient.  This section describes how to use Readline in
-the simplest way possible, perhaps to replace calls in your code to
-@code{gets()} or @code{fgets()}.
-
-@findex readline
-@cindex readline, function
-
-The function @code{readline()} prints a prompt @var{prompt}
-and then reads and returns a single line of text from the user.
-If @var{prompt} is @code{NULL} or the empty string, no prompt is displayed.
-The line @code{readline} returns is allocated with @code{malloc()};
-the caller should @code{free()} the line when it has finished with it.
-The declaration for @code{readline} in ANSI C is
-
-@example
-@code{char *readline (const char *@var{prompt});}
-@end example
-
-@noindent
-So, one might say
-@example
-@code{char *line = readline ("Enter a line: ");}
-@end example
-@noindent
-in order to read a line of text from the user.
-The line returned has the final newline removed, so only the
-text remains.
-
-If @code{readline} encounters an @code{EOF} while reading the line, and the
-line is empty at that point, then @code{(char *)NULL} is returned.
-Otherwise, the line is ended just as if a newline had been typed.
-
-If you want the user to be able to get at the line later, (with
-@key{C-p} for example), you must call @code{add_history()} to save the
-line away in a @dfn{history} list of such lines.
-
-@example
-@code{add_history (line)};
-@end example
-
-@noindent
-For full details on the GNU History Library, see the associated manual.
-
-It is preferable to avoid saving empty lines on the history list, since
-users rarely have a burning need to reuse a blank line.  Here is
-a function which usefully replaces the standard @code{gets()} library
-function, and has the advantage of no static buffer to overflow:
-
-@example
-/* A static variable for holding the line. */
-static char *line_read = (char *)NULL;
-
-/* Read a string, and return a pointer to it.
-   Returns NULL on EOF. */
-char *
-rl_gets ()
-@{
-  /* If the buffer has already been allocated,
-     return the memory to the free pool. */
-  if (line_read)
-    @{
-      free (line_read);
-      line_read = (char *)NULL;
-    @}
-
-  /* Get a line from the user. */
-  line_read = readline ("");
-
-  /* If the line has any text in it,
-     save it on the history. */
-  if (line_read && *line_read)
-    add_history (line_read);
-
-  return (line_read);
-@}
-@end example
-
-This function gives the user the default behaviour of @key{TAB}
-completion: completion on file names.  If you do not want Readline to
-complete on filenames, you can change the binding of the @key{TAB} key
-with @code{rl_bind_key()}.
-
-@example
-@code{int rl_bind_key (int @var{key}, rl_command_func_t *@var{function});}
-@end example
-
-@code{rl_bind_key()} takes two arguments: @var{key} is the character that
-you want to bind, and @var{function} is the address of the function to
-call when @var{key} is pressed.  Binding @key{TAB} to @code{rl_insert()}
-makes @key{TAB} insert itself.
-@code{rl_bind_key()} returns non-zero if @var{key} is not a valid
-ASCII character code (between 0 and 255).
-
-Thus, to disable the default @key{TAB} behavior, the following suffices:
-@example
-@code{rl_bind_key ('\t', rl_insert);}
-@end example
-
-This code should be executed once at the start of your program; you
-might write a function called @code{initialize_readline()} which
-performs this and other desired initializations, such as installing
-custom completers (@pxref{Custom Completers}).
-
-@node Custom Functions
-@section Custom Functions
-
-Readline provides many functions for manipulating the text of
-the line, but it isn't possible to anticipate the needs of all
-programs.  This section describes the various functions and variables
-defined within the Readline library which allow a user program to add
-customized functionality to Readline.
-
-Before declaring any functions that customize Readline's behavior, or
-using any functionality Readline provides in other code, an
-application writer should include the file @code{<readline/readline.h>}
-in any file that uses Readline's features.  Since some of the definitions
-in @code{readline.h} use the @code{stdio} library, the file
-@code{<stdio.h>} should be included before @code{readline.h}.
-
-@code{readline.h} defines a C preprocessor variable that should
-be treated as an integer, @code{RL_READLINE_VERSION}, which may
-be used to conditionally compile application code depending on
-the installed Readline version.  The value is a hexadecimal
-encoding of the major and minor version numbers of the library,
-of the form 0x@var{MMmm}.  @var{MM} is the two-digit major
-version number; @var{mm} is the two-digit minor version number. 
-For Readline 4.2, for example, the value of
-@code{RL_READLINE_VERSION} would be @code{0x0402}. 
-
-@menu
-* Readline Typedefs::  C declarations to make code readable.
-* Function Writing::   Variables and calling conventions.
-@end menu
-
-@node Readline Typedefs
-@subsection Readline Typedefs
-
-For readabilty, we declare a number of new object types, all pointers
-to functions.
-
-The reason for declaring these new types is to make it easier to write
-code describing pointers to C functions with appropriately prototyped
-arguments and return values.
-
-For instance, say we want to declare a variable @var{func} as a pointer
-to a function which takes two @code{int} arguments and returns an
-@code{int} (this is the type of all of the Readline bindable functions).
-Instead of the classic C declaration
-
-@code{int (*func)();}
-
-@noindent
-or the ANSI-C style declaration
-
-@code{int (*func)(int, int);}
-
-@noindent
-we may write
-
-@code{rl_command_func_t *func;}
-
-The full list of function pointer types available is
-
-@table @code
-@item typedef int rl_command_func_t (int, int);
-
-@item typedef char *rl_compentry_func_t (const char *, int);
-
-@item typedef char **rl_completion_func_t (const char *, int, int);
-
-@item typedef char *rl_quote_func_t (char *, int, char *);
-
-@item typedef char *rl_dequote_func_t (char *, int);
-
-@item typedef int rl_compignore_func_t (char **);
-
-@item typedef void rl_compdisp_func_t (char **, int, int);
-
-@item typedef int rl_hook_func_t (void);
-
-@item typedef int rl_getc_func_t (FILE *);
-
-@item typedef int rl_linebuf_func_t (char *, int);
-
-@item typedef int rl_intfunc_t (int);
-@item #define rl_ivoidfunc_t rl_hook_func_t
-@item typedef int rl_icpfunc_t (char *);
-@item typedef int rl_icppfunc_t (char **);
-
-@item typedef void rl_voidfunc_t (void);
-@item typedef void rl_vintfunc_t (int);
-@item typedef void rl_vcpfunc_t (char *);
-@item typedef void rl_vcppfunc_t (char **);
-
-@end table
-
-@node Function Writing
-@subsection Writing a New Function
-
-In order to write new functions for Readline, you need to know the
-calling conventions for keyboard-invoked functions, and the names of the
-variables that describe the current state of the line read so far.
-
-The calling sequence for a command @code{foo} looks like
-
-@example
-@code{int foo (int count, int key)}
-@end example
-
-@noindent
-where @var{count} is the numeric argument (or 1 if defaulted) and
-@var{key} is the key that invoked this function.
-
-It is completely up to the function as to what should be done with the
-numeric argument.  Some functions use it as a repeat count, some
-as a flag, and others to choose alternate behavior (refreshing the current
-line as opposed to refreshing the screen, for example).  Some choose to
-ignore it.  In general, if a
-function uses the numeric argument as a repeat count, it should be able
-to do something useful with both negative and positive arguments.
-At the very least, it should be aware that it can be passed a
-negative argument.
-
-A command function should return 0 if its action completes successfully,
-and a non-zero value if some error occurs.
-
-@node Readline Variables
-@section Readline Variables
-
-These variables are available to function writers.
-
-@deftypevar {char *} rl_line_buffer
-This is the line gathered so far.  You are welcome to modify the
-contents of the line, but see @ref{Allowing Undoing}.  The
-function @code{rl_extend_line_buffer} is available to increase
-the memory allocated to @code{rl_line_buffer}.
-@end deftypevar
-
-@deftypevar int rl_point
-The offset of the current cursor position in @code{rl_line_buffer}
-(the @emph{point}).
-@end deftypevar
-
-@deftypevar int rl_end
-The number of characters present in @code{rl_line_buffer}.  When
-@code{rl_point} is at the end of the line, @code{rl_point} and
-@code{rl_end} are equal.
-@end deftypevar
-
-@deftypevar int rl_mark
-The @var{mark} (saved position) in the current line.  If set, the mark
-and point define a @emph{region}.
-@end deftypevar
-
-@deftypevar int rl_done
-Setting this to a non-zero value causes Readline to return the current
-line immediately.
-@end deftypevar
-
-@deftypevar int rl_num_chars_to_read
-Setting this to a positive value before calling @code{readline()} causes
-Readline to return after accepting that many characters, rather
-than reading up to a character bound to @code{accept-line}.
-@end deftypevar
-
-@deftypevar int rl_pending_input
-Setting this to a value makes it the next keystroke read.  This is a
-way to stuff a single character into the input stream.
-@end deftypevar
-
-@deftypevar int rl_dispatching
-Set to a non-zero value if a function is being called from a key binding;
-zero otherwise.  Application functions can test this to discover whether
-they were called directly or by Readline's dispatching mechanism.
-@end deftypevar
-
-@deftypevar int rl_erase_empty_line
-Setting this to a non-zero value causes Readline to completely erase
-the current line, including any prompt, any time a newline is typed as
-the only character on an otherwise-empty line.  The cursor is moved to
-the beginning of the newly-blank line.
-@end deftypevar
-
-@deftypevar {char *} rl_prompt
-The prompt Readline uses.  This is set from the argument to
-@code{readline()}, and should not be assigned to directly.
-The @code{rl_set_prompt()} function (@pxref{Redisplay}) may
-be used to modify the prompt string after calling @code{readline()}.
-@end deftypevar
-
-@deftypevar int rl_already_prompted
-If an application wishes to display the prompt itself, rather than have
-Readline do it the first time @code{readline()} is called, it should set
-this variable to a non-zero value after displaying the prompt.
-The prompt must also be passed as the argument to @code{readline()} so
-the redisplay functions can update the display properly.
-The calling application is responsible for managing the value; Readline
-never sets it.
-@end deftypevar
-
-@deftypevar {const char *} rl_library_version
-The version number of this revision of the library.
-@end deftypevar
-
-@deftypevar int rl_readline_version
-An integer encoding the current version of the library.  The encoding is
-of the form 0x@var{MMmm}, where @var{MM} is the two-digit major version
-number, and @var{mm} is the two-digit minor version number.
-For example, for Readline-4.2, @code{rl_readline_version} would have the
-value 0x0402.
-@end deftypevar
-
-@deftypevar {int} rl_gnu_readline_p
-Always set to 1, denoting that this is @sc{gnu} readline rather than some
-emulation.
-@end deftypevar
-
-@deftypevar {const char *} rl_terminal_name
-The terminal type, used for initialization.  If not set by the application,
-Readline sets this to the value of the @env{TERM} environment variable
-the first time it is called.
-@end deftypevar
-
-@deftypevar {const char *} rl_readline_name
-This variable is set to a unique name by each application using Readline.
-The value allows conditional parsing of the inputrc file
-(@pxref{Conditional Init Constructs}).
-@end deftypevar
-
-@deftypevar {FILE *} rl_instream
-The stdio stream from which Readline reads input.
-If @code{NULL}, Readline defaults to @var{stdin}.
-@end deftypevar
-
-@deftypevar {FILE *} rl_outstream
-The stdio stream to which Readline performs output.
-If @code{NULL}, Readline defaults to @var{stdout}.
-@end deftypevar
-
-@deftypevar {rl_command_func_t *} rl_last_func
-The address of the last command function Readline executed.  May be used to
-test whether or not a function is being executed twice in succession, for
-example.
-@end deftypevar
-
-@deftypevar {rl_hook_func_t *} rl_startup_hook
-If non-zero, this is the address of a function to call just
-before @code{readline} prints the first prompt.
-@end deftypevar
-
-@deftypevar {rl_hook_func_t *} rl_pre_input_hook
-If non-zero, this is the address of a function to call after
-the first prompt has been printed and just before @code{readline}
-starts reading input characters.
-@end deftypevar
-
-@deftypevar {rl_hook_func_t *} rl_event_hook
-If non-zero, this is the address of a function to call periodically
-when Readline is waiting for terminal input.
-By default, this will be called at most ten times a second if there
-is no keyboard input.
-@end deftypevar
-
-@deftypevar {rl_getc_func_t *} rl_getc_function
-If non-zero, Readline will call indirectly through this pointer
-to get a character from the input stream.  By default, it is set to
-@code{rl_getc}, the default Readline character input function
-(@pxref{Character Input}).
-@end deftypevar
-
-@deftypevar {rl_voidfunc_t *} rl_redisplay_function
-If non-zero, Readline will call indirectly through this pointer
-to update the display with the current contents of the editing buffer.
-By default, it is set to @code{rl_redisplay}, the default Readline
-redisplay function (@pxref{Redisplay}).
-@end deftypevar
-
-@deftypevar {rl_vintfunc_t *} rl_prep_term_function
-If non-zero, Readline will call indirectly through this pointer
-to initialize the terminal.  The function takes a single argument, an
-@code{int} flag that says whether or not to use eight-bit characters.
-By default, this is set to @code{rl_prep_terminal}
-(@pxref{Terminal Management}).
-@end deftypevar
-
-@deftypevar {rl_voidfunc_t *} rl_deprep_term_function
-If non-zero, Readline will call indirectly through this pointer
-to reset the terminal.  This function should undo the effects of
-@code{rl_prep_term_function}.
-By default, this is set to @code{rl_deprep_terminal}
-(@pxref{Terminal Management}).
-@end deftypevar
-
-@deftypevar {Keymap} rl_executing_keymap
-This variable is set to the keymap (@pxref{Keymaps}) in which the
-currently executing readline function was found.
-@end deftypevar 
-
-@deftypevar {Keymap} rl_binding_keymap
-This variable is set to the keymap (@pxref{Keymaps}) in which the
-last key binding occurred.
-@end deftypevar 
-
-@deftypevar {char *} rl_executing_macro
-This variable is set to the text of any currently-executing macro.
-@end deftypevar
-
-@deftypevar {int} rl_readline_state
-A variable with bit values that encapsulate the current Readline state.
-A bit is set with the @code{RL_SETSTATE} macro, and unset with the
-@code{RL_UNSETSTATE} macro.  Use the @code{RL_ISSTATE} macro to test
-whether a particular state bit is set.  Current state bits include:
-
-@table @code
-@item RL_STATE_NONE
-Readline has not yet been called, nor has it begun to intialize.
-@item RL_STATE_INITIALIZING
-Readline is initializing its internal data structures.
-@item RL_STATE_INITIALIZED
-Readline has completed its initialization.
-@item RL_STATE_TERMPREPPED
-Readline has modified the terminal modes to do its own input and redisplay.
-@item RL_STATE_READCMD
-Readline is reading a command from the keyboard.
-@item RL_STATE_METANEXT
-Readline is reading more input after reading the meta-prefix character.
-@item RL_STATE_DISPATCHING
-Readline is dispatching to a command.
-@item RL_STATE_MOREINPUT
-Readline is reading more input while executing an editing command.
-@item RL_STATE_ISEARCH
-Readline is performing an incremental history search.
-@item RL_STATE_NSEARCH
-Readline is performing a non-incremental history search.
-@item RL_STATE_SEARCH
-Readline is searching backward or forward through the history for a string.
-@item RL_STATE_NUMERICARG
-Readline is reading a numeric argument.
-@item RL_STATE_MACROINPUT
-Readline is currently getting its input from a previously-defined keyboard
-macro.
-@item RL_STATE_MACRODEF
-Readline is currently reading characters defining a keyboard macro.
-@item RL_STATE_OVERWRITE
-Readline is in overwrite mode.
-@item RL_STATE_COMPLETING
-Readline is performing word completion.
-@item RL_STATE_SIGHANDLER
-Readline is currently executing the readline signal handler.
-@item RL_STATE_UNDOING
-Readline is performing an undo.
-@item RL_STATE_DONE
-Readline has read a key sequence bound to @code{accept-line}
-and is about to return the line to the caller.
-@end table
-
-@end deftypevar
-
-@deftypevar {int} rl_explicit_arg
-Set to a non-zero value if an explicit numeric argument was specified by
-the user.  Only valid in a bindable command function.
-@end deftypevar
-
-@deftypevar {int} rl_numeric_arg
-Set to the value of any numeric argument explicitly specified by the user
-before executing the current Readline function.  Only valid in a bindable
-command function.
-@end deftypevar
-
-@deftypevar {int} rl_editing_mode
-Set to a value denoting Readline's current editing mode.  A value of
-@var{1} means Readline is currently in emacs mode; @var{0}
-means that vi mode is active.
-@end deftypevar
-
-
-@node Readline Convenience Functions
-@section Readline Convenience Functions
-
-@menu
-* Function Naming::    How to give a function you write a name.
-* Keymaps::            Making keymaps.
-* Binding Keys::       Changing Keymaps.
-* Associating Function Names and Bindings::    Translate function names to
-                                               key sequences.
-* Allowing Undoing::   How to make your functions undoable.
-* Redisplay::          Functions to control line display.
-* Modifying Text::     Functions to modify @code{rl_line_buffer}.
-* Character Input::    Functions to read keyboard input.
-* Terminal Management::        Functions to manage terminal settings.
-* Utility Functions::  Generally useful functions and hooks.
-* Miscellaneous Functions::    Functions that don't fall into any category.
-* Alternate Interface::        Using Readline in a `callback' fashion.
-* A Readline Example::         An example Readline function.
-@end menu
-
-@node Function Naming
-@subsection Naming a Function
-
-The user can dynamically change the bindings of keys while using
-Readline.  This is done by representing the function with a descriptive
-name.  The user is able to type the descriptive name when referring to
-the function.  Thus, in an init file, one might find
-
-@example
-Meta-Rubout:   backward-kill-word
-@end example
-
-This binds the keystroke @key{Meta-Rubout} to the function
-@emph{descriptively} named @code{backward-kill-word}.  You, as the
-programmer, should bind the functions you write to descriptive names as
-well.  Readline provides a function for doing that:
-
-@deftypefun int rl_add_defun (const char *name, rl_command_func_t *function, int key)
-Add @var{name} to the list of named functions.  Make @var{function} be
-the function that gets called.  If @var{key} is not -1, then bind it to
-@var{function} using @code{rl_bind_key()}.
-@end deftypefun
-
-Using this function alone is sufficient for most applications.  It is
-the recommended way to add a few functions to the default functions that
-Readline has built in.  If you need to do something other
-than adding a function to Readline, you may need to use the
-underlying functions described below.
-
-@node Keymaps
-@subsection Selecting a Keymap
-
-Key bindings take place on a @dfn{keymap}.  The keymap is the
-association between the keys that the user types and the functions that
-get run.  You can make your own keymaps, copy existing keymaps, and tell
-Readline which keymap to use.
-
-@deftypefun Keymap rl_make_bare_keymap (void)
-Returns a new, empty keymap.  The space for the keymap is allocated with
-@code{malloc()}; the caller should free it by calling
-@code{rl_discard_keymap()} when done.
-@end deftypefun
-
-@deftypefun Keymap rl_copy_keymap (Keymap map)
-Return a new keymap which is a copy of @var{map}.
-@end deftypefun
-
-@deftypefun Keymap rl_make_keymap (void)
-Return a new keymap with the printing characters bound to rl_insert,
-the lowercase Meta characters bound to run their equivalents, and
-the Meta digits bound to produce numeric arguments.
-@end deftypefun
-
-@deftypefun void rl_discard_keymap (Keymap keymap)
-Free the storage associated with @var{keymap}.
-@end deftypefun
-
-Readline has several internal keymaps.  These functions allow you to
-change which keymap is active.
-
-@deftypefun Keymap rl_get_keymap (void)
-Returns the currently active keymap.
-@end deftypefun
-
-@deftypefun void rl_set_keymap (Keymap keymap)
-Makes @var{keymap} the currently active keymap.
-@end deftypefun
-
-@deftypefun Keymap rl_get_keymap_by_name (const char *name)
-Return the keymap matching @var{name}.  @var{name} is one which would
-be supplied in a @code{set keymap} inputrc line (@pxref{Readline Init File}).
-@end deftypefun
-
-@deftypefun {char *} rl_get_keymap_name (Keymap keymap)
-Return the name matching @var{keymap}.  @var{name} is one which would
-be supplied in a @code{set keymap} inputrc line (@pxref{Readline Init File}).
-@end deftypefun
-
-@node Binding Keys
-@subsection Binding Keys
-
-Key sequences are associate with functions through the keymap.
-Readline has several internal keymaps: @code{emacs_standard_keymap},
-@code{emacs_meta_keymap}, @code{emacs_ctlx_keymap},
-@code{vi_movement_keymap}, and @code{vi_insertion_keymap}.
-@code{emacs_standard_keymap} is the default, and the examples in
-this manual assume that.
-
-Since @code{readline()} installs a set of default key bindings the first
-time it is called, there is always the danger that a custom binding
-installed before the first call to @code{readline()} will be overridden.
-An alternate mechanism is to install custom key bindings in an
-initialization function assigned to the @code{rl_startup_hook} variable
-(@pxref{Readline Variables}).
-
-These functions manage key bindings.
-
-@deftypefun int rl_bind_key (int key, rl_command_func_t *function)
-Binds @var{key} to @var{function} in the currently active keymap.
-Returns non-zero in the case of an invalid @var{key}.
-@end deftypefun
-
-@deftypefun int rl_bind_key_in_map (int key, rl_command_func_t *function, Keymap map)
-Bind @var{key} to @var{function} in @var{map}.  Returns non-zero in the case
-of an invalid @var{key}.
-@end deftypefun
-
-@deftypefun int rl_unbind_key (int key)
-Bind @var{key} to the null function in the currently active keymap.
-Returns non-zero in case of error.
-@end deftypefun
-
-@deftypefun int rl_unbind_key_in_map (int key, Keymap map)
-Bind @var{key} to the null function in @var{map}.
-Returns non-zero in case of error.
-@end deftypefun
-
-@deftypefun int rl_unbind_function_in_map (rl_command_func_t *function, Keymap map)
-Unbind all keys that execute @var{function} in @var{map}.
-@end deftypefun
-
-@deftypefun int rl_unbind_command_in_map (const char *command, Keymap map)
-Unbind all keys that are bound to @var{command} in @var{map}.
-@end deftypefun
-
-@deftypefun int rl_set_key (const char *keyseq, rl_command_func_t *function, Keymap map)
-Bind the key sequence represented by the string @var{keyseq} to the function
-@var{function}.  This makes new keymaps as
-necessary.  The initial keymap in which to do bindings is @var{map}.
-@end deftypefun
-
-@deftypefun int rl_generic_bind (int type, const char *keyseq, char *data, Keymap map)
-Bind the key sequence represented by the string @var{keyseq} to the arbitrary
-pointer @var{data}.  @var{type} says what kind of data is pointed to by
-@var{data}; this can be a function (@code{ISFUNC}), a macro
-(@code{ISMACR}), or a keymap (@code{ISKMAP}).  This makes new keymaps as
-necessary.  The initial keymap in which to do bindings is @var{map}.
-@end deftypefun
-
-@deftypefun int rl_parse_and_bind (char *line)
-Parse @var{line} as if it had been read from the @code{inputrc} file and
-perform any key bindings and variable assignments found
-(@pxref{Readline Init File}).
-@end deftypefun
-
-@deftypefun int rl_read_init_file (const char *filename)
-Read keybindings and variable assignments from @var{filename}
-(@pxref{Readline Init File}).
-@end deftypefun
-
-@node Associating Function Names and Bindings
-@subsection Associating Function Names and Bindings
-
-These functions allow you to find out what keys invoke named functions
-and the functions invoked by a particular key sequence.  You may also
-associate a new function name with an arbitrary function.
-
-@deftypefun {rl_command_func_t *} rl_named_function (const char *name)
-Return the function with name @var{name}.
-@end deftypefun
-
-@deftypefun {rl_command_func_t *} rl_function_of_keyseq (const char *keyseq, Keymap map, int *type)
-Return the function invoked by @var{keyseq} in keymap @var{map}.
-If @var{map} is @code{NULL}, the current keymap is used.  If @var{type} is
-not @code{NULL}, the type of the object is returned in the @code{int} variable
-it points to (one of @code{ISFUNC}, @code{ISKMAP}, or @code{ISMACR}).
-@end deftypefun
-
-@deftypefun {char **} rl_invoking_keyseqs (rl_command_func_t *function)
-Return an array of strings representing the key sequences used to
-invoke @var{function} in the current keymap.
-@end deftypefun
-
-@deftypefun {char **} rl_invoking_keyseqs_in_map (rl_command_func_t *function, Keymap map)
-Return an array of strings representing the key sequences used to
-invoke @var{function} in the keymap @var{map}.
-@end deftypefun
-
-@deftypefun void rl_function_dumper (int readable)
-Print the readline function names and the key sequences currently
-bound to them to @code{rl_outstream}.  If @var{readable} is non-zero,
-the list is formatted in such a way that it can be made part of an
-@code{inputrc} file and re-read.
-@end deftypefun
-
-@deftypefun void rl_list_funmap_names (void)
-Print the names of all bindable Readline functions to @code{rl_outstream}.
-@end deftypefun
-
-@deftypefun {const char **} rl_funmap_names (void)
-Return a NULL terminated array of known function names.  The array is
-sorted.  The array itself is allocated, but not the strings inside.  You
-should @code{free()} the array when you are done, but not the pointers.
-@end deftypefun
-
-@deftypefun int rl_add_funmap_entry (const char *name, rl_command_func_t *function)
-Add @var{name} to the list of bindable Readline command names, and make
-@var{function} the function to be called when @var{name} is invoked.
-@end deftypefun
-
-@node Allowing Undoing
-@subsection Allowing Undoing
-
-Supporting the undo command is a painless thing, and makes your
-functions much more useful.  It is certainly easy to try
-something if you know you can undo it.
-
-If your function simply inserts text once, or deletes text once, and
-uses @code{rl_insert_text()} or @code{rl_delete_text()} to do it, then
-undoing is already done for you automatically.
-
-If you do multiple insertions or multiple deletions, or any combination
-of these operations, you should group them together into one operation.
-This is done with @code{rl_begin_undo_group()} and
-@code{rl_end_undo_group()}.
-
-The types of events that can be undone are:
-
-@smallexample
-enum undo_code @{ UNDO_DELETE, UNDO_INSERT, UNDO_BEGIN, UNDO_END @}; 
-@end smallexample
-
-Notice that @code{UNDO_DELETE} means to insert some text, and
-@code{UNDO_INSERT} means to delete some text.  That is, the undo code
-tells what to undo, not how to undo it.  @code{UNDO_BEGIN} and
-@code{UNDO_END} are tags added by @code{rl_begin_undo_group()} and
-@code{rl_end_undo_group()}.
-
-@deftypefun int rl_begin_undo_group (void)
-Begins saving undo information in a group construct.  The undo
-information usually comes from calls to @code{rl_insert_text()} and
-@code{rl_delete_text()}, but could be the result of calls to
-@code{rl_add_undo()}.
-@end deftypefun
-
-@deftypefun int rl_end_undo_group (void)
-Closes the current undo group started with @code{rl_begin_undo_group
-()}.  There should be one call to @code{rl_end_undo_group()}
-for each call to @code{rl_begin_undo_group()}.
-@end deftypefun
-
-@deftypefun void rl_add_undo (enum undo_code what, int start, int end, char *text)
-Remember how to undo an event (according to @var{what}).  The affected
-text runs from @var{start} to @var{end}, and encompasses @var{text}.
-@end deftypefun
-
-@deftypefun void rl_free_undo_list (void)
-Free the existing undo list.
-@end deftypefun
-
-@deftypefun int rl_do_undo (void)
-Undo the first thing on the undo list.  Returns @code{0} if there was
-nothing to undo, non-zero if something was undone.
-@end deftypefun
-
-Finally, if you neither insert nor delete text, but directly modify the
-existing text (e.g., change its case), call @code{rl_modifying()}
-once, just before you modify the text.  You must supply the indices of
-the text range that you are going to modify.
-
-@deftypefun int rl_modifying (int start, int end)
-Tell Readline to save the text between @var{start} and @var{end} as a
-single undo unit.  It is assumed that you will subsequently modify
-that text.
-@end deftypefun
-
-@node Redisplay
-@subsection Redisplay
-
-@deftypefun void rl_redisplay (void)
-Change what's displayed on the screen to reflect the current contents
-of @code{rl_line_buffer}.
-@end deftypefun
-
-@deftypefun int rl_forced_update_display (void)
-Force the line to be updated and redisplayed, whether or not
-Readline thinks the screen display is correct.
-@end deftypefun
-
-@deftypefun int rl_on_new_line (void)
-Tell the update functions that we have moved onto a new (empty) line,
-usually after ouputting a newline.
-@end deftypefun
-
-@deftypefun int rl_on_new_line_with_prompt (void)
-Tell the update functions that we have moved onto a new line, with
-@var{rl_prompt} already displayed.
-This could be used by applications that want to output the prompt string
-themselves, but still need Readline to know the prompt string length for
-redisplay.
-It should be used after setting @var{rl_already_prompted}.
-@end deftypefun
-
-@deftypefun int rl_reset_line_state (void)
-Reset the display state to a clean state and redisplay the current line
-starting on a new line.
-@end deftypefun
-
-@deftypefun int rl_crlf (void)
-Move the cursor to the start of the next screen line.
-@end deftypefun
-
-@deftypefun int rl_show_char (int c)
-Display character @var{c} on @code{rl_outstream}.
-If Readline has not been set to display meta characters directly, this
-will convert meta characters to a meta-prefixed key sequence.
-This is intended for use by applications which wish to do their own
-redisplay.
-@end deftypefun
-
-@deftypefun int rl_message (const char *, @dots{})
-The arguments are a format string as would be supplied to @code{printf},
-possibly containing conversion specifications such as @samp{%d}, and
-any additional arguments necessary to satisfy the conversion specifications.
-The resulting string is displayed in the @dfn{echo area}.  The echo area
-is also used to display numeric arguments and search strings.
-@end deftypefun
-
-@deftypefun int rl_clear_message (void)
-Clear the message in the echo area.
-@end deftypefun
-
-@deftypefun void rl_save_prompt (void)
-Save the local Readline prompt display state in preparation for
-displaying a new message in the message area with @code{rl_message()}.
-@end deftypefun
-
-@deftypefun void rl_restore_prompt (void)
-Restore the local Readline prompt display state saved by the most
-recent call to @code{rl_save_prompt}.
-@end deftypefun
-
-@deftypefun int rl_expand_prompt (char *prompt)
-Expand any special character sequences in @var{prompt} and set up the
-local Readline prompt redisplay variables.
-This function is called by @code{readline()}.  It may also be called to
-expand the primary prompt if the @code{rl_on_new_line_with_prompt()}
-function or @code{rl_already_prompted} variable is used.
-It returns the number of visible characters on the last line of the
-(possibly multi-line) prompt.
-@end deftypefun
-
-@deftypefun int rl_set_prompt (const char *prompt)
-Make Readline use @var{prompt} for subsequent redisplay.  This calls
-@code{rl_expand_prompt()} to expand the prompt and sets @code{rl_prompt}
-to the result.
-@end deftypefun
-
-@node Modifying Text
-@subsection Modifying Text
-
-@deftypefun int rl_insert_text (const char *text)
-Insert @var{text} into the line at the current cursor position.
-Returns the number of characters inserted.
-@end deftypefun
-
-@deftypefun int rl_delete_text (int start, int end)
-Delete the text between @var{start} and @var{end} in the current line.
-Returns the number of characters deleted.
-@end deftypefun
-
-@deftypefun {char *} rl_copy_text (int start, int end)
-Return a copy of the text between @var{start} and @var{end} in
-the current line.
-@end deftypefun
-
-@deftypefun int rl_kill_text (int start, int end)
-Copy the text between @var{start} and @var{end} in the current line
-to the kill ring, appending or prepending to the last kill if the
-last command was a kill command.  The text is deleted.
-If @var{start} is less than @var{end},
-the text is appended, otherwise prepended.  If the last command was
-not a kill, a new kill ring slot is used.
-@end deftypefun
-
-@deftypefun int rl_push_macro_input (char *macro)
-Cause @var{macro} to be inserted into the line, as if it had been invoked
-by a key bound to a macro.  Not especially useful; use
-@code{rl_insert_text()} instead.
-@end deftypefun
-
-@node Character Input
-@subsection Character Input
-
-@deftypefun int rl_read_key (void)
-Return the next character available from Readline's current input stream.
-This handles input inserted into
-the input stream via @var{rl_pending_input} (@pxref{Readline Variables})
-and @code{rl_stuff_char()}, macros, and characters read from the keyboard.
-While waiting for input, this function will call any function assigned to
-the @code{rl_event_hook} variable.
-@end deftypefun
-
-@deftypefun int rl_getc (FILE *stream)
-Return the next character available from @var{stream}, which is assumed to
-be the keyboard.
-@end deftypefun
-
-@deftypefun int rl_stuff_char (int c)
-Insert @var{c} into the Readline input stream.  It will be "read"
-before Readline attempts to read characters from the terminal with
-@code{rl_read_key()}.  Up to 512 characters may be pushed back.
-@code{rl_stuff_char} returns 1 if the character was successfully inserted;
-0 otherwise.
-@end deftypefun
-
-@deftypefun int rl_execute_next (int c)
-Make @var{c} be the next command to be executed when @code{rl_read_key()}
-is called.  This sets @var{rl_pending_input}.
-@end deftypefun
-
-@deftypefun int rl_clear_pending_input (void)
-Unset @var{rl_pending_input}, effectively negating the effect of any
-previous call to @code{rl_execute_next()}.  This works only if the
-pending input has not already been read with @code{rl_read_key()}.
-@end deftypefun
-
-@deftypefun int rl_set_keyboard_input_timeout (int u)
-While waiting for keyboard input in @code{rl_read_key()}, Readline will
-wait for @var{u} microseconds for input before calling any function
-assigned to @code{rl_event_hook}.  The default waiting period is
-one-tenth of a second.  Returns the old timeout value.
-@end deftypefun
-
-@node Terminal Management
-@subsection Terminal Management
-
-@deftypefun void rl_prep_terminal (int meta_flag)
-Modify the terminal settings for Readline's use, so @code{readline()}
-can read a single character at a time from the keyboard.
-The @var{meta_flag} argument should be non-zero if Readline should
-read eight-bit input.
-@end deftypefun
-
-@deftypefun void rl_deprep_terminal (void)
-Undo the effects of @code{rl_prep_terminal()}, leaving the terminal in
-the state in which it was before the most recent call to
-@code{rl_prep_terminal()}.
-@end deftypefun
-
-@deftypefun void rl_tty_set_default_bindings (Keymap kmap)
-Read the operating system's terminal editing characters (as would be displayed
-by @code{stty}) to their Readline equivalents.  The bindings are performed
-in @var{kmap}.
-@end deftypefun
-
-@deftypefun int rl_reset_terminal (const char *terminal_name)
-Reinitialize Readline's idea of the terminal settings using
-@var{terminal_name} as the terminal type (e.g., @code{vt100}).
-If @var{terminal_name} is @code{NULL}, the value of the @code{TERM}
-environment variable is used.
-@end deftypefun
-
-@node Utility Functions
-@subsection Utility Functions
-
-@deftypefun void rl_replace_line (const char *text, int clear_undo)
-Replace the contents of @code{rl_line_buffer} with @var{text}.
-The point and mark are preserved, if possible.
-If @var{clear_undo} is non-zero, the undo list associated with the
-current line is cleared.
-@end deftypefun
-
-@deftypefun int rl_extend_line_buffer (int len)
-Ensure that @code{rl_line_buffer} has enough space to hold @var{len}
-characters, possibly reallocating it if necessary.
-@end deftypefun
-
-@deftypefun int rl_initialize (void)
-Initialize or re-initialize Readline's internal state.
-It's not strictly necessary to call this; @code{readline()} calls it before
-reading any input.
-@end deftypefun
-
-@deftypefun int rl_ding (void)
-Ring the terminal bell, obeying the setting of @code{bell-style}.
-@end deftypefun
-
-@deftypefun int rl_alphabetic (int c)
-Return 1 if @var{c} is an alphabetic character.
-@end deftypefun
-
-@deftypefun void rl_display_match_list (char **matches, int len, int max)
-A convenience function for displaying a list of strings in
-columnar format on Readline's output stream.  @code{matches} is the list
-of strings, in argv format, such as a list of completion matches.
-@code{len} is the number of strings in @code{matches}, and @code{max}
-is the length of the longest string in @code{matches}.  This function uses
-the setting of @code{print-completions-horizontally} to select how the
-matches are displayed (@pxref{Readline Init File Syntax}).
-@end deftypefun
-
-The following are implemented as macros, defined in @code{chardefs.h}.
-Applications should refrain from using them.
-
-@deftypefun int _rl_uppercase_p (int c)
-Return 1 if @var{c} is an uppercase alphabetic character.
-@end deftypefun
-
-@deftypefun int _rl_lowercase_p (int c)
-Return 1 if @var{c} is a lowercase alphabetic character.
-@end deftypefun
-
-@deftypefun int _rl_digit_p (int c)
-Return 1 if @var{c} is a numeric character.
-@end deftypefun
-
-@deftypefun int _rl_to_upper (int c)
-If @var{c} is a lowercase alphabetic character, return the corresponding
-uppercase character.
-@end deftypefun
-
-@deftypefun int _rl_to_lower (int c)
-If @var{c} is an uppercase alphabetic character, return the corresponding
-lowercase character.
-@end deftypefun
-
-@deftypefun int _rl_digit_value (int c)
-If @var{c} is a number, return the value it represents.
-@end deftypefun
-
-@node Miscellaneous Functions
-@subsection Miscellaneous Functions
-
-@deftypefun int rl_macro_bind (const char *keyseq, const char *macro, Keymap map)
-Bind the key sequence @var{keyseq} to invoke the macro @var{macro}.
-The binding is performed in @var{map}.  When @var{keyseq} is invoked, the
-@var{macro} will be inserted into the line.  This function is deprecated;
-use @code{rl_generic_bind()} instead.
-@end deftypefun
-
-@deftypefun void rl_macro_dumper (int readable)
-Print the key sequences bound to macros and their values, using
-the current keymap, to @code{rl_outstream}.
-If @var{readable} is non-zero, the list is formatted in such a way
-that it can be made part of an @code{inputrc} file and re-read.
-@end deftypefun
-
-@deftypefun int rl_variable_bind (const char *variable, const char *value)
-Make the Readline variable @var{variable} have @var{value}.
-This behaves as if the readline command
-@samp{set @var{variable} @var{value}} had been executed in an @code{inputrc}
-file (@pxref{Readline Init File Syntax}).
-@end deftypefun
-
-@deftypefun void rl_variable_dumper (int readable)
-Print the readline variable names and their current values
-to @code{rl_outstream}.
-If @var{readable} is non-zero, the list is formatted in such a way
-that it can be made part of an @code{inputrc} file and re-read.
-@end deftypefun
-
-@deftypefun int rl_set_paren_blink_timeout (int u)
-Set the time interval (in microseconds) that Readline waits when showing
-a balancing character when @code{blink-matching-paren} has been enabled.
-@end deftypefun
-
-@deftypefun {char *} rl_get_termcap (const char *cap)
-Retrieve the string value of the termcap capability @var{cap}.
-Readline fetches the termcap entry for the current terminal name and
-uses those capabilities to move around the screen line and perform other
-terminal-specific operations, like erasing a line.  Readline does not
-use all of a terminal's capabilities, and this function will return
-values for only those capabilities Readline uses.
-@end deftypefun
-
-@node Alternate Interface
-@subsection Alternate Interface
-
-An alternate interface is available to plain @code{readline()}.  Some
-applications need to interleave keyboard I/O with file, device, or
-window system I/O, typically by using a main loop to @code{select()}
-on various file descriptors.  To accomodate this need, readline can
-also be invoked as a `callback' function from an event loop.  There
-are functions available to make this easy.
-
-@deftypefun void rl_callback_handler_install (const char *prompt, rl_vcpfunc_t *lhandler)
-Set up the terminal for readline I/O and display the initial
-expanded value of @var{prompt}.  Save the value of @var{lhandler} to
-use as a function to call when a complete line of input has been entered.
-The function takes the text of the line as an argument.
-@end deftypefun
-
-@deftypefun void rl_callback_read_char (void)
-Whenever an application determines that keyboard input is available, it
-should call @code{rl_callback_read_char()}, which will read the next
-character from the current input source.
-If that character completes the line, @code{rl_callback_read_char} will
-invoke the @var{lhandler} function saved by @code{rl_callback_handler_install}
-to process the line.
-Before calling the @var{lhandler} function, the terminal settings are
-reset to the values they had before calling
-@code{rl_callback_handler_install}.
-If the @var{lhandler} function returns,
-the terminal settings are modified for Readline's use again.
-@code{EOF} is  indicated by calling @var{lhandler} with a
-@code{NULL} line.
-@end deftypefun
-
-@deftypefun void rl_callback_handler_remove (void)
-Restore the terminal to its initial state and remove the line handler.
-This may be called from within a callback as well as independently.
-If the @var{lhandler} installed by @code{rl_callback_handler_install}
-does not exit the program, either this function or the function referred
-to by the value of @code{rl_deprep_term_function} should be called before
-the program exits to reset the terminal settings.
-@end deftypefun
-
-@node A Readline Example
-@subsection A Readline Example
-
-Here is a function which changes lowercase characters to their uppercase
-equivalents, and uppercase characters to lowercase.  If
-this function was bound to @samp{M-c}, then typing @samp{M-c} would
-change the case of the character under point.  Typing @samp{M-1 0 M-c}
-would change the case of the following 10 characters, leaving the cursor on
-the last character changed.
-
-@example
-/* Invert the case of the COUNT following characters. */
-int
-invert_case_line (count, key)
-     int count, key;
-@{
-  register int start, end, i;
-
-  start = rl_point;
-
-  if (rl_point >= rl_end)
-    return (0);
-
-  if (count < 0)
-    @{
-      direction = -1;
-      count = -count;
-    @}
-  else
-    direction = 1;
-      
-  /* Find the end of the range to modify. */
-  end = start + (count * direction);
-
-  /* Force it to be within range. */
-  if (end > rl_end)
-    end = rl_end;
-  else if (end < 0)
-    end = 0;
-
-  if (start == end)
-    return (0);
-
-  if (start > end)
-    @{
-      int temp = start;
-      start = end;
-      end = temp;
-    @}
-
-  /* Tell readline that we are modifying the line,
-     so it will save the undo information. */
-  rl_modifying (start, end);
-
-  for (i = start; i != end; i++)
-    @{
-      if (_rl_uppercase_p (rl_line_buffer[i]))
-        rl_line_buffer[i] = _rl_to_lower (rl_line_buffer[i]);
-      else if (_rl_lowercase_p (rl_line_buffer[i]))
-        rl_line_buffer[i] = _rl_to_upper (rl_line_buffer[i]);
-    @}
-  /* Move point to on top of the last character changed. */
-  rl_point = (direction == 1) ? end - 1 : start;
-  return (0);
-@}
-@end example
-
-@node Readline Signal Handling
-@section Readline Signal Handling
-
-Signals are asynchronous events sent to a process by the Unix kernel,
-sometimes on behalf of another process.  They are intended to indicate
-exceptional events, like a user pressing the interrupt key on his terminal,
-or a network connection being broken.  There is a class of signals that can
-be sent to the process currently reading input from the keyboard.  Since
-Readline changes the terminal attributes when it is called, it needs to
-perform special processing when such a signal is received in order to
-restore the terminal to a sane state, or provide application writers with
-functions to do so manually. 
-
-Readline contains an internal signal handler that is installed for a
-number of signals (@code{SIGINT}, @code{SIGQUIT}, @code{SIGTERM},
-@code{SIGALRM}, @code{SIGTSTP}, @code{SIGTTIN}, and @code{SIGTTOU}).
-When one of these signals is received, the signal handler
-will reset the terminal attributes to those that were in effect before
-@code{readline()} was called, reset the signal handling to what it was
-before @code{readline()} was called, and resend the signal to the calling
-application.
-If and when the calling application's signal handler returns, Readline
-will reinitialize the terminal and continue to accept input.
-When a @code{SIGINT} is received, the Readline signal handler performs
-some additional work, which will cause any partially-entered line to be
-aborted (see the description of @code{rl_free_line_state()} below).
-
-There is an additional Readline signal handler, for @code{SIGWINCH}, which
-the kernel sends to a process whenever the terminal's size changes (for
-example, if a user resizes an @code{xterm}).  The Readline @code{SIGWINCH}
-handler updates Readline's internal screen size information, and then calls
-any @code{SIGWINCH} signal handler the calling application has installed. 
-Readline calls the application's @code{SIGWINCH} signal handler without
-resetting the terminal to its original state.  If the application's signal
-handler does more than update its idea of the terminal size and return (for
-example, a @code{longjmp} back to a main processing loop), it @emph{must}
-call @code{rl_cleanup_after_signal()} (described below), to restore the
-terminal state. 
-
-Readline provides two variables that allow application writers to
-control whether or not it will catch certain signals and act on them
-when they are received.  It is important that applications change the
-values of these variables only when calling @code{readline()}, not in
-a signal handler, so Readline's internal signal state is not corrupted.
-
-@deftypevar int rl_catch_signals
-If this variable is non-zero, Readline will install signal handlers for
-@code{SIGINT}, @code{SIGQUIT}, @code{SIGTERM}, @code{SIGALRM},
-@code{SIGTSTP}, @code{SIGTTIN}, and @code{SIGTTOU}.
-
-The default value of @code{rl_catch_signals} is 1.
-@end deftypevar
-
-@deftypevar int rl_catch_sigwinch
-If this variable is non-zero, Readline will install a signal handler for
-@code{SIGWINCH}.
-
-The default value of @code{rl_catch_sigwinch} is 1.
-@end deftypevar
-
-If an application does not wish to have Readline catch any signals, or
-to handle signals other than those Readline catches (@code{SIGHUP},
-for example), 
-Readline provides convenience functions to do the necessary terminal
-and internal state cleanup upon receipt of a signal.
-
-@deftypefun void rl_cleanup_after_signal (void)
-This function will reset the state of the terminal to what it was before
-@code{readline()} was called, and remove the Readline signal handlers for
-all signals, depending on the values of @code{rl_catch_signals} and
-@code{rl_catch_sigwinch}.
-@end deftypefun
-
-@deftypefun void rl_free_line_state (void)
-This will free any partial state associated with the current input line
-(undo information, any partial history entry, any partially-entered
-keyboard macro, and any partially-entered numeric argument).  This
-should be called before @code{rl_cleanup_after_signal()}.  The
-Readline signal handler for @code{SIGINT} calls this to abort the
-current input line.
-@end deftypefun
-
-@deftypefun void rl_reset_after_signal (void)
-This will reinitialize the terminal and reinstall any Readline signal
-handlers, depending on the values of @code{rl_catch_signals} and
-@code{rl_catch_sigwinch}.
-@end deftypefun
-
-If an application does not wish Readline to catch @code{SIGWINCH}, it may
-call @code{rl_resize_terminal()} or @code{rl_set_screen_size()} to force
-Readline to update its idea of the terminal size when a @code{SIGWINCH}
-is received.
-
-@deftypefun void rl_resize_terminal (void)
-Update Readline's internal screen size by reading values from the kernel.
-@end deftypefun
-
-@deftypefun void rl_set_screen_size (int rows, int cols)
-Set Readline's idea of the terminal size to @var{rows} rows and
-@var{cols} columns.
-@end deftypefun
-
-If an application does not want to install a @code{SIGWINCH} handler, but
-is still interested in the screen dimensions, Readline's idea of the screen
-size may be queried.
-
-@deftypefun void rl_get_screen_size (int *rows, int *cols)
-Return Readline's idea of the terminal's size in the
-variables pointed to by the arguments.
-@end deftypefun
-
-The following functions install and remove Readline's signal handlers.
-
-@deftypefun int rl_set_signals (void)
-Install Readline's signal handler for @code{SIGINT}, @code{SIGQUIT},
-@code{SIGTERM}, @code{SIGALRM}, @code{SIGTSTP}, @code{SIGTTIN},
-@code{SIGTTOU}, and @code{SIGWINCH}, depending on the values of
-@code{rl_catch_signals} and @code{rl_catch_sigwinch}.
-@end deftypefun
-
-@deftypefun int rl_clear_signals (void)
-Remove all of the Readline signal handlers installed by
-@code{rl_set_signals()}.
-@end deftypefun
-
-@node Custom Completers
-@section Custom Completers
-
-Typically, a program that reads commands from the user has a way of
-disambiguating commands and data.  If your program is one of these, then
-it can provide completion for commands, data, or both.
-The following sections describe how your program and Readline
-cooperate to provide this service.
-
-@menu
-* How Completing Works::       The logic used to do completion.
-* Completion Functions::       Functions provided by Readline.
-* Completion Variables::       Variables which control completion.
-* A Short Completion Example:: An example of writing completer subroutines.
-@end menu
-
-@node How Completing Works
-@subsection How Completing Works
-
-In order to complete some text, the full list of possible completions
-must be available.  That is, it is not possible to accurately
-expand a partial word without knowing all of the possible words
-which make sense in that context.  The Readline library provides
-the user interface to completion, and two of the most common
-completion functions:  filename and username.  For completing other types
-of text, you must write your own completion function.  This section
-describes exactly what such functions must do, and provides an example.
-
-There are three major functions used to perform completion:
-
-@enumerate
-@item
-The user-interface function @code{rl_complete()}.  This function is
-called with the same arguments as other bindable Readline functions:
-@var{count} and @var{invoking_key}.
-It isolates the word to be completed and calls
-@code{rl_completion_matches()} to generate a list of possible completions.
-It then either lists the possible completions, inserts the possible
-completions, or actually performs the
-completion, depending on which behavior is desired.
-
-@item
-The internal function @code{rl_completion_matches()} uses an
-application-supplied @dfn{generator} function to generate the list of
-possible matches, and then returns the array of these matches.
-The caller should place the address of its generator function in
-@code{rl_completion_entry_function}.
-
-@item
-The generator function is called repeatedly from
-@code{rl_completion_matches()}, returning a string each time.  The
-arguments to the generator function are @var{text} and @var{state}.
-@var{text} is the partial word to be completed.  @var{state} is zero the
-first time the function is called, allowing the generator to perform
-any necessary initialization, and a positive non-zero integer for
-each subsequent call.  The generator function returns
-@code{(char *)NULL} to inform @code{rl_completion_matches()} that there are
-no more possibilities left.  Usually the generator function computes the
-list of possible completions when @var{state} is zero, and returns them
-one at a time on subsequent calls.  Each string the generator function
-returns as a match must be allocated with @code{malloc()}; Readline
-frees the strings when it has finished with them.
-
-@end enumerate
-
-@deftypefun int rl_complete (int ignore, int invoking_key)
-Complete the word at or before point.  You have supplied the function
-that does the initial simple matching selection algorithm (see
-@code{rl_completion_matches()}).  The default is to do filename completion.
-@end deftypefun
-
-@deftypevar {rl_compentry_func_t *} rl_completion_entry_function
-This is a pointer to the generator function for
-@code{rl_completion_matches()}.
-If the value of @code{rl_completion_entry_function} is
-@code{NULL} then the default filename generator
-function, @code{rl_filename_completion_function()}, is used.
-@end deftypevar
-
-@node Completion Functions
-@subsection Completion Functions
-
-Here is the complete list of callable completion functions present in
-Readline.
-
-@deftypefun int rl_complete_internal (int what_to_do)
-Complete the word at or before point.  @var{what_to_do} says what to do
-with the completion.  A value of @samp{?} means list the possible
-completions.  @samp{TAB} means do standard completion.  @samp{*} means
-insert all of the possible completions.  @samp{!} means to display
-all of the possible completions, if there is more than one, as well as
-performing partial completion.
-@end deftypefun
-
-@deftypefun int rl_complete (int ignore, int invoking_key)
-Complete the word at or before point.  You have supplied the function
-that does the initial simple matching selection algorithm (see
-@code{rl_completion_matches()} and @code{rl_completion_entry_function}).
-The default is to do filename
-completion.  This calls @code{rl_complete_internal()} with an
-argument depending on @var{invoking_key}.
-@end deftypefun
-
-@deftypefun int rl_possible_completions (int count, int invoking_key)
-List the possible completions.  See description of @code{rl_complete
-()}.  This calls @code{rl_complete_internal()} with an argument of
-@samp{?}.
-@end deftypefun
-
-@deftypefun int rl_insert_completions (int count, int invoking_key)
-Insert the list of possible completions into the line, deleting the
-partially-completed word.  See description of @code{rl_complete()}.
-This calls @code{rl_complete_internal()} with an argument of @samp{*}.
-@end deftypefun
-
-@deftypefun int rl_completion_mode (rl_command_func_t *cfunc)
-Returns the apppriate value to pass to @code{rl_complete_internal()}
-depending on whether @var{cfunc} was called twice in succession and
-the value of the @code{show-all-if-ambiguous} variable.
-Application-specific completion functions may use this function to present
-the same interface as @code{rl_complete()}.
-@end deftypefun
-
-@deftypefun {char **} rl_completion_matches (const char *text, rl_compentry_func_t *entry_func)
-Returns an array of strings which is a list of completions for
-@var{text}.  If there are no completions, returns @code{NULL}.
-The first entry in the returned array is the substitution for @var{text}.
-The remaining entries are the possible completions.  The array is
-terminated with a @code{NULL} pointer.
-
-@var{entry_func} is a function of two args, and returns a
-@code{char *}.  The first argument is @var{text}.  The second is a
-state argument; it is zero on the first call, and non-zero on subsequent
-calls.  @var{entry_func} returns a @code{NULL}  pointer to the caller
-when there are no more matches.
-@end deftypefun
-
-@deftypefun {char *} rl_filename_completion_function (const char *text, int state)
-A generator function for filename completion in the general case.
-@var{text} is a partial filename.
-The Bash source is a useful reference for writing custom
-completion functions (the Bash completion functions call this and other
-Readline functions).
-@end deftypefun
-
-@deftypefun {char *} rl_username_completion_function (const char *text, int state)
-A completion generator for usernames.  @var{text} contains a partial
-username preceded by a random character (usually @samp{~}).  As with all
-completion generators, @var{state} is zero on the first call and non-zero
-for subsequent calls.
-@end deftypefun
-
-@node Completion Variables
-@subsection Completion Variables
-
-@deftypevar {rl_compentry_func_t *} rl_completion_entry_function
-A pointer to the generator function for @code{rl_completion_matches()}.
-@code{NULL} means to use @code{rl_filename_completion_function()}, the default
-filename completer.
-@end deftypevar
-
-@deftypevar {rl_completion_func_t *} rl_attempted_completion_function
-A pointer to an alternative function to create matches.
-The function is called with @var{text}, @var{start}, and @var{end}.
-@var{start} and @var{end} are indices in @code{rl_line_buffer} defining
-the boundaries of @var{text}, which is a character string.
-If this function exists and returns @code{NULL}, or if this variable is
-set to @code{NULL}, then @code{rl_complete()} will call the value of
-@code{rl_completion_entry_function} to generate matches, otherwise the
-array of strings returned will be used.
-If this function sets the @code{rl_attempted_completion_over}
-variable to a non-zero value, Readline will not perform its default
-completion even if this function returns no matches.
-@end deftypevar
-
-@deftypevar {rl_quote_func_t *} rl_filename_quoting_function
-A pointer to a function that will quote a filename in an
-application-specific fashion.  This is called if filename completion is being
-attempted and one of the characters in @code{rl_filename_quote_characters}
-appears in a completed filename.  The function is called with
-@var{text}, @var{match_type}, and @var{quote_pointer}.  The @var{text}
-is the filename to be quoted.  The @var{match_type} is either
-@code{SINGLE_MATCH}, if there is only one completion match, or
-@code{MULT_MATCH}.  Some functions use this to decide whether or not to
-insert a closing quote character.  The @var{quote_pointer} is a pointer
-to any opening quote character the user typed.  Some functions choose
-to reset this character.
-@end deftypevar
-
-@deftypevar {rl_dequote_func_t *} rl_filename_dequoting_function
-A pointer to a function that will remove application-specific quoting
-characters from a filename before completion is attempted, so those
-characters do not interfere with matching the text against names in
-the filesystem.  It is called with @var{text}, the text of the word
-to be dequoted, and @var{quote_char}, which is the quoting character 
-that delimits the filename (usually @samp{'} or @samp{"}).  If
-@var{quote_char} is zero, the filename was not in an embedded string.
-@end deftypevar
-
-@deftypevar {rl_linebuf_func_t *} rl_char_is_quoted_p
-A pointer to a function to call that determines whether or not a specific
-character in the line buffer is quoted, according to whatever quoting
-mechanism the program calling Readline uses.  The function is called with
-two arguments: @var{text}, the text of the line, and @var{index}, the
-index of the character in the line.  It is used to decide whether a
-character found in @code{rl_completer_word_break_characters} should be
-used to break words for the completer.
-@end deftypevar
-
-@deftypevar {rl_compignore_func_t *} rl_ignore_some_completions_function
-This function, if defined, is called by the completer when real filename
-completion is done, after all the matching names have been generated.
-It is passed a @code{NULL} terminated array of matches.
-The first element (@code{matches[0]}) is the
-maximal substring common to all matches. This function can
-re-arrange the list of matches as required, but each element deleted
-from the array must be freed.
-@end deftypevar
-
-@deftypevar {rl_icppfunc_t *} rl_directory_completion_hook
-This function, if defined, is allowed to modify the directory portion
-of filenames Readline completes.  It is called with the address of a
-string (the current directory name) as an argument, and may modify that string.
-If the string is replaced with a new string, the old value should be freed.
-Any modified directory name should have a trailing slash.
-The modified value will be displayed as part of the completion, replacing
-the directory portion of the pathname the user typed.
-It returns an integer that should be non-zero if the function modifies
-its directory argument.
-It could be used to expand symbolic links or shell variables in pathnames.
-@end deftypevar
-
-@deftypevar {rl_compdisp_func_t *} rl_completion_display_matches_hook
-If non-zero, then this is the address of a function to call when
-completing a word would normally display the list of possible matches.
-This function is called in lieu of Readline displaying the list.
-It takes three arguments:
-(@code{char **}@var{matches}, @code{int} @var{num_matches}, @code{int} @var{max_length})
-where @var{matches} is the array of matching strings,
-@var{num_matches} is the number of strings in that array, and
-@var{max_length} is the length of the longest string in that array.
-Readline provides a convenience function, @code{rl_display_match_list},
-that takes care of doing the display to Readline's output stream.  That
-function may be called from this hook.
-@end deftypevar
-
-@deftypevar {const char *} rl_basic_word_break_characters
-The basic list of characters that signal a break between words for the
-completer routine.  The default value of this variable is the characters
-which break words for completion in Bash:
-@code{" \t\n\"\\'`@@$><=;|&@{("}.
-@end deftypevar
-
-@deftypevar {const char *} rl_basic_quote_characters
-A list of quote characters which can cause a word break.
-@end deftypevar
-
-@deftypevar {const char *} rl_completer_word_break_characters
-The list of characters that signal a break between words for
-@code{rl_complete_internal()}.  The default list is the value of
-@code{rl_basic_word_break_characters}.
-@end deftypevar
-
-@deftypevar {const char *} rl_completer_quote_characters
-A list of characters which can be used to quote a substring of the line.
-Completion occurs on the entire substring, and within the substring
-@code{rl_completer_word_break_characters} are treated as any other character,
-unless they also appear within this list.
-@end deftypevar
-
-@deftypevar {const char *} rl_filename_quote_characters
-A list of characters that cause a filename to be quoted by the completer
-when they appear in a completed filename.  The default is the null string.
-@end deftypevar
-
-@deftypevar {const char *} rl_special_prefixes
-The list of characters that are word break characters, but should be
-left in @var{text} when it is passed to the completion function.
-Programs can use this to help determine what kind of completing to do.
-For instance, Bash sets this variable to "$@@" so that it can complete
-shell variables and hostnames.
-@end deftypevar
-
-@deftypevar int rl_completion_query_items
-Up to this many items will be displayed in response to a
-possible-completions call.  After that, we ask the user if she is sure
-she wants to see them all.  The default value is 100.
-@end deftypevar
-
-@deftypevar {int} rl_completion_append_character
-When a single completion alternative matches at the end of the command
-line, this character is appended to the inserted completion text.  The
-default is a space character (@samp{ }).  Setting this to the null
-character (@samp{\0}) prevents anything being appended automatically.
-This can be changed in custom completion functions to
-provide the ``most sensible word separator character'' according to
-an application-specific command line syntax specification.
-@end deftypevar
-
-@deftypevar int rl_completion_suppress_append
-If non-zero, @var{rl_completion_append_character} is not appended to
-matches at the end of the command line, as described above.  It is
-set to 0 before any application-specific completion function is called.
-@end deftypevar
-
-@deftypevar int rl_completion_mark_symlink_dirs
-If non-zero, a slash will be appended to completed filenames that are
-symbolic links to directory names, subject to the value of the
-user-settable @var{mark-directories} variable.
-This variable exists so that application completion functions can
-override the user's global preference (set via the
-@var{mark-symlinked-directories} Readline variable) if appropriate.
-This variable is set to the user's preference before any
-application completion function is called, so unless that function
-modifies the value, the user's preferences are honored.
-@end deftypevar
-
-@deftypevar int rl_ignore_completion_duplicates
-If non-zero, then duplicates in the matches are removed.
-The default is 1.
-@end deftypevar
-
-@deftypevar int rl_filename_completion_desired
-Non-zero means that the results of the matches are to be treated as
-filenames.  This is @emph{always} zero on entry, and can only be changed
-within a completion entry generator function.  If it is set to a non-zero
-value, directory names have a slash appended and Readline attempts to
-quote completed filenames if they contain any characters in
-@code{rl_filename_quote_characters} and @code{rl_filename_quoting_desired}
-is set to a non-zero value.
-@end deftypevar
-
-@deftypevar int rl_filename_quoting_desired
-Non-zero means that the results of the matches are to be quoted using
-double quotes (or an application-specific quoting mechanism) if the
-completed filename contains any characters in
-@code{rl_filename_quote_chars}.  This is @emph{always} non-zero
-on entry, and can only be changed within a completion entry generator
-function.  The quoting is effected via a call to the function pointed to
-by @code{rl_filename_quoting_function}.
-@end deftypevar
-
-@deftypevar int rl_attempted_completion_over
-If an application-specific completion function assigned to
-@code{rl_attempted_completion_function} sets this variable to a non-zero
-value, Readline will not perform its default filename completion even
-if the application's completion function returns no matches.
-It should be set only by an application's completion function.
-@end deftypevar
-
-@deftypevar int rl_completion_type
-Set to a character describing the type of completion Readline is currently
-attempting; see the description of @code{rl_complete_internal()}
-(@pxref{Completion Functions}) for the list of characters.
-@end deftypevar
-
-@deftypevar int rl_inhibit_completion
-If this variable is non-zero, completion is inhibited.  The completion
-character will be inserted as any other bound to @code{self-insert}.
-@end deftypevar
-
-@node A Short Completion Example
-@subsection A Short Completion Example
-
-Here is a small application demonstrating the use of the GNU Readline
-library.  It is called @code{fileman}, and the source code resides in
-@file{examples/fileman.c}.  This sample application provides
-completion of command names, line editing features, and access to the
-history list.
-
-@page
-@smallexample
-/* fileman.c -- A tiny application which demonstrates how to use the
-   GNU Readline library.  This application interactively allows users
-   to manipulate files and their modes. */
-
-#include <stdio.h>
-#include <sys/types.h>
-#include <sys/file.h>
-#include <sys/stat.h>
-#include <sys/errno.h>
-
-#include <readline/readline.h>
-#include <readline/history.h>
-
-extern char *xmalloc ();
-
-/* The names of functions that actually do the manipulation. */
-int com_list __P((char *));
-int com_view __P((char *));
-int com_rename __P((char *));
-int com_stat __P((char *));
-int com_pwd __P((char *));
-int com_delete __P((char *));
-int com_help __P((char *));
-int com_cd __P((char *));
-int com_quit __P((char *));
-
-/* A structure which contains information on the commands this program
-   can understand. */
-
-typedef struct @{
-  char *name;                  /* User printable name of the function. */
-  rl_icpfunc_t *func;          /* Function to call to do the job. */
-  char *doc;                   /* Documentation for this function.  */
-@} COMMAND;
-
-COMMAND commands[] = @{
-  @{ "cd", com_cd, "Change to directory DIR" @},
-  @{ "delete", com_delete, "Delete FILE" @},
-  @{ "help", com_help, "Display this text" @},
-  @{ "?", com_help, "Synonym for `help'" @},
-  @{ "list", com_list, "List files in DIR" @},
-  @{ "ls", com_list, "Synonym for `list'" @},
-  @{ "pwd", com_pwd, "Print the current working directory" @},
-  @{ "quit", com_quit, "Quit using Fileman" @},
-  @{ "rename", com_rename, "Rename FILE to NEWNAME" @},
-  @{ "stat", com_stat, "Print out statistics on FILE" @},
-  @{ "view", com_view, "View the contents of FILE" @},
-  @{ (char *)NULL, (rl_icpfunc_t *)NULL, (char *)NULL @}
-@};
-
-/* Forward declarations. */
-char *stripwhite ();
-COMMAND *find_command ();
-
-/* The name of this program, as taken from argv[0]. */
-char *progname;
-
-/* When non-zero, this means the user is done using this program. */
-int done;
-
-char *
-dupstr (s)
-     int s;
-@{
-  char *r;
-
-  r = xmalloc (strlen (s) + 1);
-  strcpy (r, s);
-  return (r);
-@}
-
-main (argc, argv)
-     int argc;
-     char **argv;
-@{
-  char *line, *s;
-
-  progname = argv[0];
-
-  initialize_readline ();      /* Bind our completer. */
-
-  /* Loop reading and executing lines until the user quits. */
-  for ( ; done == 0; )
-    @{
-      line = readline ("FileMan: ");
-
-      if (!line)
-        break;
-
-      /* Remove leading and trailing whitespace from the line.
-         Then, if there is anything left, add it to the history list
-         and execute it. */
-      s = stripwhite (line);
-
-      if (*s)
-        @{
-          add_history (s);
-          execute_line (s);
-        @}
-
-      free (line);
-    @}
-  exit (0);
-@}
-
-/* Execute a command line. */
-int
-execute_line (line)
-     char *line;
-@{
-  register int i;
-  COMMAND *command;
-  char *word;
-
-  /* Isolate the command word. */
-  i = 0;
-  while (line[i] && whitespace (line[i]))
-    i++;
-  word = line + i;
-
-  while (line[i] && !whitespace (line[i]))
-    i++;
-
-  if (line[i])
-    line[i++] = '\0';
-
-  command = find_command (word);
-
-  if (!command)
-    @{
-      fprintf (stderr, "%s: No such command for FileMan.\n", word);
-      return (-1);
-    @}
-
-  /* Get argument to command, if any. */
-  while (whitespace (line[i]))
-    i++;
-
-  word = line + i;
-
-  /* Call the function. */
-  return ((*(command->func)) (word));
-@}
-
-/* Look up NAME as the name of a command, and return a pointer to that
-   command.  Return a NULL pointer if NAME isn't a command name. */
-COMMAND *
-find_command (name)
-     char *name;
-@{
-  register int i;
-
-  for (i = 0; commands[i].name; i++)
-    if (strcmp (name, commands[i].name) == 0)
-      return (&commands[i]);
-
-  return ((COMMAND *)NULL);
-@}
-
-/* Strip whitespace from the start and end of STRING.  Return a pointer
-   into STRING. */
-char *
-stripwhite (string)
-     char *string;
-@{
-  register char *s, *t;
-
-  for (s = string; whitespace (*s); s++)
-    ;
-    
-  if (*s == 0)
-    return (s);
-
-  t = s + strlen (s) - 1;
-  while (t > s && whitespace (*t))
-    t--;
-  *++t = '\0';
-
-  return s;
-@}
-
-/* **************************************************************** */
-/*                                                                  */
-/*                  Interface to Readline Completion                */
-/*                                                                  */
-/* **************************************************************** */
-
-char *command_generator __P((const char *, int));
-char **fileman_completion __P((const char *, int, int));
-
-/* Tell the GNU Readline library how to complete.  We want to try to
-   complete on command names if this is the first word in the line, or
-   on filenames if not. */
-initialize_readline ()
-@{
-  /* Allow conditional parsing of the ~/.inputrc file. */
-  rl_readline_name = "FileMan";
-
-  /* Tell the completer that we want a crack first. */
-  rl_attempted_completion_function = fileman_completion;
-@}
-
-/* Attempt to complete on the contents of TEXT.  START and END
-   bound the region of rl_line_buffer that contains the word to
-   complete.  TEXT is the word to complete.  We can use the entire
-   contents of rl_line_buffer in case we want to do some simple
-   parsing.  Returnthe array of matches, or NULL if there aren't any. */
-char **
-fileman_completion (text, start, end)
-     const char *text;
-     int start, end;
-@{
-  char **matches;
-
-  matches = (char **)NULL;
-
-  /* If this word is at the start of the line, then it is a command
-     to complete.  Otherwise it is the name of a file in the current
-     directory. */
-  if (start == 0)
-    matches = rl_completion_matches (text, command_generator);
-
-  return (matches);
-@}
-
-/* Generator function for command completion.  STATE lets us
-   know whether to start from scratch; without any state
-   (i.e. STATE == 0), then we start at the top of the list. */
-char *
-command_generator (text, state)
-     const char *text;
-     int state;
-@{
-  static int list_index, len;
-  char *name;
-
-  /* If this is a new word to complete, initialize now.  This
-     includes saving the length of TEXT for efficiency, and
-     initializing the index variable to 0. */
-  if (!state)
-    @{
-      list_index = 0;
-      len = strlen (text);
-    @}
-
-  /* Return the next name which partially matches from the
-     command list. */
-  while (name = commands[list_index].name)
-    @{
-      list_index++;
-
-      if (strncmp (name, text, len) == 0)
-        return (dupstr(name));
-    @}
-
-  /* If no names matched, then return NULL. */
-  return ((char *)NULL);
-@}
-
-/* **************************************************************** */
-/*                                                                  */
-/*                       FileMan Commands                           */
-/*                                                                  */
-/* **************************************************************** */
-
-/* String to pass to system ().  This is for the LIST, VIEW and RENAME
-   commands. */
-static char syscom[1024];
-
-/* List the file(s) named in arg. */
-com_list (arg)
-     char *arg;
-@{
-  if (!arg)
-    arg = "";
-
-  sprintf (syscom, "ls -FClg %s", arg);
-  return (system (syscom));
-@}
-
-com_view (arg)
-     char *arg;
-@{
-  if (!valid_argument ("view", arg))
-    return 1;
-
-  sprintf (syscom, "more %s", arg);
-  return (system (syscom));
-@}
-
-com_rename (arg)
-     char *arg;
-@{
-  too_dangerous ("rename");
-  return (1);
-@}
-
-com_stat (arg)
-     char *arg;
-@{
-  struct stat finfo;
-
-  if (!valid_argument ("stat", arg))
-    return (1);
-
-  if (stat (arg, &finfo) == -1)
-    @{
-      perror (arg);
-      return (1);
-    @}
-
-  printf ("Statistics for `%s':\n", arg);
-
-  printf ("%s has %d link%s, and is %d byte%s in length.\n", arg,
-          finfo.st_nlink,
-          (finfo.st_nlink == 1) ? "" : "s",
-          finfo.st_size,
-          (finfo.st_size == 1) ? "" : "s");
-  printf ("Inode Last Change at: %s", ctime (&finfo.st_ctime));
-  printf ("      Last access at: %s", ctime (&finfo.st_atime));
-  printf ("    Last modified at: %s", ctime (&finfo.st_mtime));
-  return (0);
-@}
-
-com_delete (arg)
-     char *arg;
-@{
-  too_dangerous ("delete");
-  return (1);
-@}
-
-/* Print out help for ARG, or for all of the commands if ARG is
-   not present. */
-com_help (arg)
-     char *arg;
-@{
-  register int i;
-  int printed = 0;
-
-  for (i = 0; commands[i].name; i++)
-    @{
-      if (!*arg || (strcmp (arg, commands[i].name) == 0))
-        @{
-          printf ("%s\t\t%s.\n", commands[i].name, commands[i].doc);
-          printed++;
-        @}
-    @}
-
-  if (!printed)
-    @{
-      printf ("No commands match `%s'.  Possibilties are:\n", arg);
-
-      for (i = 0; commands[i].name; i++)
-        @{
-          /* Print in six columns. */
-          if (printed == 6)
-            @{
-              printed = 0;
-              printf ("\n");
-            @}
-
-          printf ("%s\t", commands[i].name);
-          printed++;
-        @}
-
-      if (printed)
-        printf ("\n");
-    @}
-  return (0);
-@}
-
-/* Change to the directory ARG. */
-com_cd (arg)
-     char *arg;
-@{
-  if (chdir (arg) == -1)
-    @{
-      perror (arg);
-      return 1;
-    @}
-
-  com_pwd ("");
-  return (0);
-@}
-
-/* Print out the current working directory. */
-com_pwd (ignore)
-     char *ignore;
-@{
-  char dir[1024], *s;
-
-  s = getcwd (dir, sizeof(dir) - 1);
-  if (s == 0)
-    @{
-      printf ("Error getting pwd: %s\n", dir);
-      return 1;
-    @}
-
-  printf ("Current directory is %s\n", dir);
-  return 0;
-@}
-
-/* The user wishes to quit using this program.  Just set DONE
-   non-zero. */
-com_quit (arg)
-     char *arg;
-@{
-  done = 1;
-  return (0);
-@}
-
-/* Function which tells you that you can't do this. */
-too_dangerous (caller)
-     char *caller;
-@{
-  fprintf (stderr,
-           "%s: Too dangerous for me to distribute.\n"
-           caller);
-  fprintf (stderr, "Write it yourself.\n");
-@}
-
-/* Return non-zero if ARG is a valid argument for CALLER,
-   else print an error message and return zero. */
-int
-valid_argument (caller, arg)
-     char *caller, *arg;
-@{
-  if (!arg || !*arg)
-    @{
-      fprintf (stderr, "%s: Argument required.\n", caller);
-      return (0);
-    @}
-
-  return (1);
-@}
-@end smallexample
diff --git a/lib/readline/doc/rluser.texinfo b/lib/readline/doc/rluser.texinfo
deleted file mode 100644 (file)
index 94f851e..0000000
+++ /dev/null
@@ -1,1796 +0,0 @@
-@comment %**start of header (This is for running Texinfo on a region.)
-@setfilename rluser.info
-@comment %**end of header (This is for running Texinfo on a region.)
-@setchapternewpage odd
-
-@ignore
-This file documents the end user interface to the GNU command line
-editing features.  It is to be an appendix to manuals for programs which
-use these features.  There is a document entitled "readline.texinfo"
-which contains both end-user and programmer documentation for the
-GNU Readline Library.
-
-Copyright (C) 1988-2002 Free Software Foundation, Inc.
-
-Authored by Brian Fox and Chet Ramey.
-
-Permission is granted to process this file through Tex and print the
-results, provided the printed document carries copying permission notice
-identical to this one except for the removal of this paragraph (this
-paragraph not being relevant to the printed manual).
-
-Permission is granted to make and distribute verbatim copies of this manual
-provided the copyright notice and this permission notice are preserved on
-all copies.
-
-Permission is granted to copy and distribute modified versions of this
-manual under the conditions for verbatim copying, provided also that the
-GNU Copyright statement is available to the distributee, and provided that
-the entire resulting derived work is distributed under the terms of a
-permission notice identical to this one.
-
-Permission is granted to copy and distribute translations of this manual
-into another language, under the above conditions for modified versions.
-@end ignore
-
-@comment If you are including this manual as an appendix, then set the
-@comment variable readline-appendix.
-
-@ifclear BashFeatures
-@defcodeindex bt
-@end ifclear
-
-@node Command Line Editing
-@chapter Command Line Editing
-
-This chapter describes the basic features of the @sc{gnu}
-command line editing interface.
-@ifset BashFeatures
-Command line editing is provided by the Readline library, which is
-used by several different programs, including Bash.
-@end ifset
-
-@menu
-* Introduction and Notation::  Notation used in this text.
-* Readline Interaction::       The minimum set of commands for editing a line.
-* Readline Init File::         Customizing Readline from a user's view.
-* Bindable Readline Commands:: A description of most of the Readline commands
-                               available for binding
-* Readline vi Mode::           A short description of how to make Readline
-                               behave like the vi editor.
-@ifset BashFeatures
-* Programmable Completion::    How to specify the possible completions for
-                               a specific command.
-* Programmable Completion Builtins::   Builtin commands to specify how to
-                               complete arguments for a particular command.
-@end ifset
-@end menu
-
-@node Introduction and Notation
-@section Introduction to Line Editing
-
-The following paragraphs describe the notation used to represent
-keystrokes.
-
-The text @kbd{C-k} is read as `Control-K' and describes the character
-produced when the @key{k} key is pressed while the Control key
-is depressed.
-
-The text @kbd{M-k} is read as `Meta-K' and describes the character
-produced when the Meta key (if you have one) is depressed, and the @key{k}
-key is pressed.
-The Meta key is labeled @key{ALT} on many keyboards.
-On keyboards with two keys labeled @key{ALT} (usually to either side of
-the space bar), the @key{ALT} on the left side is generally set to
-work as a Meta key.
-The @key{ALT} key on the right may also be configured to work as a
-Meta key or may be configured as some other modifier, such as a
-Compose key for typing accented characters.
-
-If you do not have a Meta or @key{ALT} key, or another key working as
-a Meta key, the identical keystroke can be generated by typing @key{ESC}
-@emph{first}, and then typing @key{k}.
-Either process is known as @dfn{metafying} the @key{k} key.
-
-The text @kbd{M-C-k} is read as `Meta-Control-k' and describes the
-character produced by @dfn{metafying} @kbd{C-k}.
-
-In addition, several keys have their own names.  Specifically,
-@key{DEL}, @key{ESC}, @key{LFD}, @key{SPC}, @key{RET}, and @key{TAB} all
-stand for themselves when seen in this text, or in an init file
-(@pxref{Readline Init File}).
-If your keyboard lacks a @key{LFD} key, typing @key{C-j} will
-produce the desired character.
-The @key{RET} key may be labeled @key{Return} or @key{Enter} on
-some keyboards.
-
-@node Readline Interaction
-@section Readline Interaction
-@cindex interaction, readline
-
-Often during an interactive session you type in a long line of text,
-only to notice that the first word on the line is misspelled.  The
-Readline library gives you a set of commands for manipulating the text
-as you type it in, allowing you to just fix your typo, and not forcing
-you to retype the majority of the line.  Using these editing commands,
-you move the cursor to the place that needs correction, and delete or
-insert the text of the corrections.  Then, when you are satisfied with
-the line, you simply press @key{RET}.  You do not have to be at the
-end of the line to press @key{RET}; the entire line is accepted
-regardless of the location of the cursor within the line.
-
-@menu
-* Readline Bare Essentials::   The least you need to know about Readline.
-* Readline Movement Commands:: Moving about the input line.
-* Readline Killing Commands::  How to delete text, and how to get it back!
-* Readline Arguments::         Giving numeric arguments to commands.
-* Searching::                  Searching through previous lines.
-@end menu
-
-@node Readline Bare Essentials
-@subsection Readline Bare Essentials
-@cindex notation, readline
-@cindex command editing
-@cindex editing command lines
-
-In order to enter characters into the line, simply type them.  The typed
-character appears where the cursor was, and then the cursor moves one
-space to the right.  If you mistype a character, you can use your
-erase character to back up and delete the mistyped character.
-
-Sometimes you may mistype a character, and
-not notice the error until you have typed several other characters.  In
-that case, you can type @kbd{C-b} to move the cursor to the left, and then
-correct your mistake.  Afterwards, you can move the cursor to the right
-with @kbd{C-f}.
-
-When you add text in the middle of a line, you will notice that characters
-to the right of the cursor are `pushed over' to make room for the text
-that you have inserted.  Likewise, when you delete text behind the cursor,
-characters to the right of the cursor are `pulled back' to fill in the
-blank space created by the removal of the text.  A list of the bare
-essentials for editing the text of an input line follows.
-
-@table @asis
-@item @kbd{C-b}
-Move back one character.
-@item @kbd{C-f}
-Move forward one character.
-@item @key{DEL} or @key{Backspace}
-Delete the character to the left of the cursor.
-@item @kbd{C-d}
-Delete the character underneath the cursor.
-@item @w{Printing characters}
-Insert the character into the line at the cursor.
-@item @kbd{C-_} or @kbd{C-x C-u}
-Undo the last editing command.  You can undo all the way back to an
-empty line.
-@end table
-
-@noindent
-(Depending on your configuration, the @key{Backspace} key be set to
-delete the character to the left of the cursor and the @key{DEL} key set
-to delete the character underneath the cursor, like @kbd{C-d}, rather
-than the character to the left of the cursor.)
-
-@node Readline Movement Commands
-@subsection Readline Movement Commands
-
-
-The above table describes the most basic keystrokes that you need
-in order to do editing of the input line.  For your convenience, many
-other commands have been added in addition to @kbd{C-b}, @kbd{C-f},
-@kbd{C-d}, and @key{DEL}.  Here are some commands for moving more rapidly
-about the line.
-
-@table @kbd
-@item C-a
-Move to the start of the line.
-@item C-e
-Move to the end of the line.
-@item M-f
-Move forward a word, where a word is composed of letters and digits.
-@item M-b
-Move backward a word.
-@item C-l
-Clear the screen, reprinting the current line at the top.
-@end table
-
-Notice how @kbd{C-f} moves forward a character, while @kbd{M-f} moves
-forward a word.  It is a loose convention that control keystrokes
-operate on characters while meta keystrokes operate on words.
-
-@node Readline Killing Commands
-@subsection Readline Killing Commands
-
-@cindex killing text
-@cindex yanking text
-
-@dfn{Killing} text means to delete the text from the line, but to save
-it away for later use, usually by @dfn{yanking} (re-inserting)
-it back into the line.
-(`Cut' and `paste' are more recent jargon for `kill' and `yank'.)
-
-If the description for a command says that it `kills' text, then you can
-be sure that you can get the text back in a different (or the same)
-place later.
-
-When you use a kill command, the text is saved in a @dfn{kill-ring}.
-Any number of consecutive kills save all of the killed text together, so
-that when you yank it back, you get it all.  The kill
-ring is not line specific; the text that you killed on a previously
-typed line is available to be yanked back later, when you are typing
-another line.
-@cindex kill ring
-
-Here is the list of commands for killing text.
-
-@table @kbd
-@item C-k
-Kill the text from the current cursor position to the end of the line.
-
-@item M-d
-Kill from the cursor to the end of the current word, or, if between
-words, to the end of the next word.
-Word boundaries are the same as those used by @kbd{M-f}.
-
-@item M-@key{DEL}
-Kill from the cursor the start of the current word, or, if between
-words, to the start of the previous word.
-Word boundaries are the same as those used by @kbd{M-b}.
-
-@item C-w
-Kill from the cursor to the previous whitespace.  This is different than
-@kbd{M-@key{DEL}} because the word boundaries differ.
-
-@end table
-
-Here is how to @dfn{yank} the text back into the line.  Yanking
-means to copy the most-recently-killed text from the kill buffer.
-
-@table @kbd
-@item C-y
-Yank the most recently killed text back into the buffer at the cursor.
-
-@item M-y
-Rotate the kill-ring, and yank the new top.  You can only do this if
-the prior command is @kbd{C-y} or @kbd{M-y}.
-@end table
-
-@node Readline Arguments
-@subsection Readline Arguments
-
-You can pass numeric arguments to Readline commands.  Sometimes the
-argument acts as a repeat count, other times it is the @i{sign} of the
-argument that is significant.  If you pass a negative argument to a
-command which normally acts in a forward direction, that command will
-act in a backward direction.  For example, to kill text back to the
-start of the line, you might type @samp{M-- C-k}.
-
-The general way to pass numeric arguments to a command is to type meta
-digits before the command.  If the first `digit' typed is a minus
-sign (@samp{-}), then the sign of the argument will be negative.  Once
-you have typed one meta digit to get the argument started, you can type
-the remainder of the digits, and then the command.  For example, to give
-the @kbd{C-d} command an argument of 10, you could type @samp{M-1 0 C-d},
-which will delete the next ten characters on the input line.
-
-@node Searching
-@subsection Searching for Commands in the History
-
-Readline provides commands for searching through the command history
-@ifset BashFeatures
-(@pxref{Bash History Facilities})
-@end ifset
-for lines containing a specified string.
-There are two search modes:  @dfn{incremental} and @dfn{non-incremental}.
-
-Incremental searches begin before the user has finished typing the
-search string.
-As each character of the search string is typed, Readline displays
-the next entry from the history matching the string typed so far.
-An incremental search requires only as many characters as needed to
-find the desired history entry.
-To search backward in the history for a particular string, type
-@kbd{C-r}.  Typing @kbd{C-s} searches forward through the history.
-The characters present in the value of the @code{isearch-terminators} variable
-are used to terminate an incremental search.
-If that variable has not been assigned a value, the @key{ESC} and
-@kbd{C-J} characters will terminate an incremental search.
-@kbd{C-g} will abort an incremental search and restore the original line.
-When the search is terminated, the history entry containing the
-search string becomes the current line.
-
-To find other matching entries in the history list, type @kbd{C-r} or
-@kbd{C-s} as appropriate.
-This will search backward or forward in the history for the next
-entry matching the search string typed so far.
-Any other key sequence bound to a Readline command will terminate
-the search and execute that command.
-For instance, a @key{RET} will terminate the search and accept
-the line, thereby executing the command from the history list.
-A movement command will terminate the search, make the last line found
-the current line, and begin editing.
-
-Readline remembers the last incremental search string.  If two
-@kbd{C-r}s are typed without any intervening characters defining a new
-search string, any remembered search string is used.
-
-Non-incremental searches read the entire search string before starting
-to search for matching history lines.  The search string may be
-typed by the user or be part of the contents of the current line.
-
-@node Readline Init File
-@section Readline Init File
-@cindex initialization file, readline
-
-Although the Readline library comes with a set of Emacs-like
-keybindings installed by default, it is possible to use a different set
-of keybindings.
-Any user can customize programs that use Readline by putting
-commands in an @dfn{inputrc} file, conventionally in his home directory.
-The name of this
-@ifset BashFeatures
-file is taken from the value of the shell variable @env{INPUTRC}.  If
-@end ifset
-@ifclear BashFeatures
-file is taken from the value of the environment variable @env{INPUTRC}.  If
-@end ifclear
-that variable is unset, the default is @file{~/.inputrc}.
-
-When a program which uses the Readline library starts up, the
-init file is read, and the key bindings are set.
-
-In addition, the @code{C-x C-r} command re-reads this init file, thus
-incorporating any changes that you might have made to it.
-
-@menu
-* Readline Init File Syntax::  Syntax for the commands in the inputrc file.
-
-* Conditional Init Constructs::        Conditional key bindings in the inputrc file.
-
-* Sample Init File::           An example inputrc file.
-@end menu
-
-@node Readline Init File Syntax
-@subsection Readline Init File Syntax
-
-There are only a few basic constructs allowed in the
-Readline init file.  Blank lines are ignored.
-Lines beginning with a @samp{#} are comments.
-Lines beginning with a @samp{$} indicate conditional
-constructs (@pxref{Conditional Init Constructs}).  Other lines
-denote variable settings and key bindings.
-
-@table @asis
-@item Variable Settings
-You can modify the run-time behavior of Readline by
-altering the values of variables in Readline
-using the @code{set} command within the init file.
-The syntax is simple:
-
-@example
-set @var{variable} @var{value}
-@end example
-
-@noindent
-Here, for example, is how to
-change from the default Emacs-like key binding to use
-@code{vi} line editing commands:
-
-@example
-set editing-mode vi
-@end example
-
-Variable names and values, where appropriate, are recognized without regard
-to case. 
-
-@ifset BashFeatures
-The @w{@code{bind -V}} command lists the current Readline variable names
-and values.  @xref{Bash Builtins}.
-@end ifset
-
-A great deal of run-time behavior is changeable with the following
-variables.
-
-@cindex variables, readline
-@table @code
-
-@item bell-style
-@vindex bell-style
-Controls what happens when Readline wants to ring the terminal bell.
-If set to @samp{none}, Readline never rings the bell.  If set to
-@samp{visible}, Readline uses a visible bell if one is available.
-If set to @samp{audible} (the default), Readline attempts to ring
-the terminal's bell.
-
-@item comment-begin
-@vindex comment-begin
-The string to insert at the beginning of the line when the
-@code{insert-comment} command is executed.  The default value
-is @code{"#"}.
-
-@item completion-ignore-case
-If set to @samp{on}, Readline performs filename matching and completion
-in a case-insensitive fashion.
-The default value is @samp{off}.
-
-@item completion-query-items
-@vindex completion-query-items
-The number of possible completions that determines when the user is
-asked whether he wants to see the list of possibilities.  If the
-number of possible completions is greater than this value,
-Readline will ask the user whether or not he wishes to view
-them; otherwise, they are simply listed.
-This variable must be set to an integer value greater than or equal to 0.
-The default limit is @code{100}.
-
-@item convert-meta
-@vindex convert-meta
-If set to @samp{on}, Readline will convert characters with the
-eighth bit set to an @sc{ascii} key sequence by stripping the eighth
-bit and prefixing an @key{ESC} character, converting them to a
-meta-prefixed key sequence.  The default value is @samp{on}.
-
-@item disable-completion
-@vindex disable-completion
-If set to @samp{On}, Readline will inhibit word completion.
-Completion  characters will be inserted into the line as if they had
-been mapped to @code{self-insert}.  The default is @samp{off}.
-
-@item editing-mode
-@vindex editing-mode
-The @code{editing-mode} variable controls which default set of
-key bindings is used.  By default, Readline starts up in Emacs editing
-mode, where the keystrokes are most similar to Emacs.  This variable can be
-set to either @samp{emacs} or @samp{vi}.
-
-@item enable-keypad
-@vindex enable-keypad
-When set to @samp{on}, Readline will try to enable the application
-keypad when it is called.  Some systems need this to enable the
-arrow keys.  The default is @samp{off}.
-
-@item expand-tilde
-@vindex expand-tilde
-If set to @samp{on}, tilde expansion is performed when Readline
-attempts word completion.  The default is @samp{off}.
-
-@vindex history-preserve-point
-If set to @samp{on}, the history code attempts to place point at the
-same location on each history line retrived with @code{previous-history}
-or @code{next-history}.
-
-@item horizontal-scroll-mode
-@vindex horizontal-scroll-mode
-This variable can be set to either @samp{on} or @samp{off}.  Setting it
-to @samp{on} means that the text of the lines being edited will scroll
-horizontally on a single screen line when they are longer than the width
-of the screen, instead of wrapping onto a new screen line.  By default,
-this variable is set to @samp{off}.
-
-@item input-meta
-@vindex input-meta
-@vindex meta-flag
-If set to @samp{on}, Readline will enable eight-bit input (it
-will not clear the eighth bit in the characters it reads),
-regardless of what the terminal claims it can support.  The
-default value is @samp{off}.  The name @code{meta-flag} is a
-synonym for this variable.
-
-@item isearch-terminators
-@vindex isearch-terminators
-The string of characters that should terminate an incremental search without
-subsequently executing the character as a command (@pxref{Searching}).
-If this variable has not been given a value, the characters @key{ESC} and
-@kbd{C-J} will terminate an incremental search.
-
-@item keymap
-@vindex keymap
-Sets Readline's idea of the current keymap for key binding commands.
-Acceptable @code{keymap} names are
-@code{emacs},
-@code{emacs-standard},
-@code{emacs-meta},
-@code{emacs-ctlx},
-@code{vi},
-@code{vi-move},
-@code{vi-command}, and
-@code{vi-insert}.
-@code{vi} is equivalent to @code{vi-command}; @code{emacs} is
-equivalent to @code{emacs-standard}.  The default value is @code{emacs}.
-The value of the @code{editing-mode} variable also affects the
-default keymap.
-
-@item mark-directories
-If set to @samp{on}, completed directory names have a slash
-appended.  The default is @samp{on}.
-
-@item mark-modified-lines
-@vindex mark-modified-lines
-This variable, when set to @samp{on}, causes Readline to display an
-asterisk (@samp{*}) at the start of history lines which have been modified.
-This variable is @samp{off} by default.
-
-@item mark-symlinked-directories
-@vindex mark-symlinked-directories
-If set to @samp{on}, completed names which are symbolic links
-to directories have a slash appended (subject to the value of
-@code{mark-directories}).
-The default is @samp{off}.
-
-@item match-hidden-files
-@vindex match-hidden-files
-This variable, when set to @samp{on}, causes Readline to match files whose
-names begin with a @samp{.} (hidden files) when performing filename
-completion, unless the leading @samp{.} is
-supplied by the user in the filename to be completed.
-This variable is @samp{on} by default.
-
-@item output-meta
-@vindex output-meta
-If set to @samp{on}, Readline will display characters with the
-eighth bit set directly rather than as a meta-prefixed escape
-sequence.  The default is @samp{off}.
-
-@item page-completions
-@vindex page-completions
-If set to @samp{on}, Readline uses an internal @code{more}-like pager
-to display a screenful of possible completions at a time.
-This variable is @samp{on} by default.
-
-@item print-completions-horizontally
-If set to @samp{on}, Readline will display completions with matches
-sorted horizontally in alphabetical order, rather than down the screen.
-The default is @samp{off}.
-
-@item show-all-if-ambiguous
-@vindex show-all-if-ambiguous
-This alters the default behavior of the completion functions.  If
-set to @samp{on}, 
-words which have more than one possible completion cause the
-matches to be listed immediately instead of ringing the bell.
-The default value is @samp{off}.
-
-@item visible-stats
-@vindex visible-stats
-If set to @samp{on}, a character denoting a file's type
-is appended to the filename when listing possible
-completions.  The default is @samp{off}.
-
-@end table
-
-@item Key Bindings
-The syntax for controlling key bindings in the init file is
-simple.  First you need to find the name of the command that you
-want to change.  The following sections contain tables of the command
-name, the default keybinding, if any, and a short description of what
-the command does.
-
-Once you know the name of the command, simply place on a line
-in the init file the name of the key
-you wish to bind the command to, a colon, and then the name of the
-command.  The name of the key
-can be expressed in different ways, depending on what you find most
-comfortable.
-
-In addition to command names, readline allows keys to be bound
-to a string that is inserted when the key is pressed (a @var{macro}).
-
-@ifset BashFeatures
-The @w{@code{bind -p}} command displays Readline function names and
-bindings in a format that can put directly into an initialization file.
-@xref{Bash Builtins}.
-@end ifset
-
-@table @asis
-@item @w{@var{keyname}: @var{function-name} or @var{macro}}
-@var{keyname} is the name of a key spelled out in English.  For example:
-@example
-Control-u: universal-argument
-Meta-Rubout: backward-kill-word
-Control-o: "> output"
-@end example
-
-In the above example, @kbd{C-u} is bound to the function
-@code{universal-argument},
-@kbd{M-DEL} is bound to the function @code{backward-kill-word}, and
-@kbd{C-o} is bound to run the macro
-expressed on the right hand side (that is, to insert the text
-@samp{> output} into the line).
-
-A number of symbolic character names are recognized while
-processing this key binding syntax:
-@var{DEL},
-@var{ESC},
-@var{ESCAPE},
-@var{LFD},
-@var{NEWLINE},
-@var{RET},
-@var{RETURN},
-@var{RUBOUT},
-@var{SPACE},
-@var{SPC},
-and
-@var{TAB}.
-
-@item @w{"@var{keyseq}": @var{function-name} or @var{macro}}
-@var{keyseq} differs from @var{keyname} above in that strings
-denoting an entire key sequence can be specified, by placing
-the key sequence in double quotes.  Some @sc{gnu} Emacs style key
-escapes can be used, as in the following example, but the
-special character names are not recognized.
-
-@example
-"\C-u": universal-argument
-"\C-x\C-r": re-read-init-file
-"\e[11~": "Function Key 1"
-@end example
-
-In the above example, @kbd{C-u} is again bound to the function
-@code{universal-argument} (just as it was in the first example),
-@samp{@kbd{C-x} @kbd{C-r}} is bound to the function @code{re-read-init-file},
-and @samp{@key{ESC} @key{[} @key{1} @key{1} @key{~}} is bound to insert
-the text @samp{Function Key 1}.
-
-@end table
-
-The following @sc{gnu} Emacs style escape sequences are available when
-specifying key sequences:
-
-@table @code
-@item @kbd{\C-}
-control prefix
-@item @kbd{\M-}
-meta prefix
-@item @kbd{\e}
-an escape character
-@item @kbd{\\}
-backslash
-@item @kbd{\"}
-@key{"}, a double quotation mark
-@item @kbd{\'}
-@key{'}, a single quote or apostrophe
-@end table
-
-In addition to the @sc{gnu} Emacs style escape sequences, a second
-set of backslash escapes is available:
-
-@table @code
-@item \a
-alert (bell)
-@item \b
-backspace
-@item \d
-delete
-@item \f
-form feed
-@item \n
-newline
-@item \r
-carriage return
-@item \t
-horizontal tab
-@item \v
-vertical tab
-@item \@var{nnn}
-the eight-bit character whose value is the octal value @var{nnn}
-(one to three digits)
-@item \x@var{HH}
-the eight-bit character whose value is the hexadecimal value @var{HH}
-(one or two hex digits)
-@end table
-
-When entering the text of a macro, single or double quotes must
-be used to indicate a macro definition.
-Unquoted text is assumed to be a function name.
-In the macro body, the backslash escapes described above are expanded.
-Backslash will quote any other character in the macro text,
-including @samp{"} and @samp{'}.
-For example, the following binding will make @samp{@kbd{C-x} \}
-insert a single @samp{\} into the line:
-@example
-"\C-x\\": "\\"
-@end example
-
-@end table
-
-@node Conditional Init Constructs
-@subsection Conditional Init Constructs
-
-Readline implements a facility similar in spirit to the conditional
-compilation features of the C preprocessor which allows key
-bindings and variable settings to be performed as the result
-of tests.  There are four parser directives used.
-
-@table @code
-@item $if
-The @code{$if} construct allows bindings to be made based on the
-editing mode, the terminal being used, or the application using
-Readline.  The text of the test extends to the end of the line;
-no characters are required to isolate it.
-
-@table @code
-@item mode
-The @code{mode=} form of the @code{$if} directive is used to test
-whether Readline is in @code{emacs} or @code{vi} mode.
-This may be used in conjunction
-with the @samp{set keymap} command, for instance, to set bindings in
-the @code{emacs-standard} and @code{emacs-ctlx} keymaps only if
-Readline is starting out in @code{emacs} mode.
-
-@item term
-The @code{term=} form may be used to include terminal-specific
-key bindings, perhaps to bind the key sequences output by the
-terminal's function keys.  The word on the right side of the
-@samp{=} is tested against both the full name of the terminal and
-the portion of the terminal name before the first @samp{-}.  This
-allows @code{sun} to match both @code{sun} and @code{sun-cmd},
-for instance.
-
-@item application
-The @var{application} construct is used to include
-application-specific settings.  Each program using the Readline
-library sets the @var{application name}, and you can test for
-a particular value. 
-This could be used to bind key sequences to functions useful for
-a specific program.  For instance, the following command adds a
-key sequence that quotes the current or previous word in Bash:
-@example
-$if Bash
-# Quote the current or previous word
-"\C-xq": "\eb\"\ef\""
-$endif
-@end example
-@end table
-
-@item $endif
-This command, as seen in the previous example, terminates an
-@code{$if} command.
-
-@item $else
-Commands in this branch of the @code{$if} directive are executed if
-the test fails.
-
-@item $include
-This directive takes a single filename as an argument and reads commands
-and bindings from that file.
-For example, the following directive reads from @file{/etc/inputrc}:
-@example
-$include /etc/inputrc
-@end example
-@end table
-
-@node Sample Init File
-@subsection Sample Init File
-
-Here is an example of an @var{inputrc} file.  This illustrates key
-binding, variable assignment, and conditional syntax.
-
-@example
-@page
-# This file controls the behaviour of line input editing for
-# programs that use the GNU Readline library.  Existing
-# programs include FTP, Bash, and GDB.
-#
-# You can re-read the inputrc file with C-x C-r.
-# Lines beginning with '#' are comments.
-#
-# First, include any systemwide bindings and variable
-# assignments from /etc/Inputrc
-$include /etc/Inputrc
-
-#
-# Set various bindings for emacs mode.
-
-set editing-mode emacs 
-
-$if mode=emacs
-
-Meta-Control-h:        backward-kill-word      Text after the function name is ignored
-
-#
-# Arrow keys in keypad mode
-#
-#"\M-OD":        backward-char
-#"\M-OC":        forward-char
-#"\M-OA":        previous-history
-#"\M-OB":        next-history
-#
-# Arrow keys in ANSI mode
-#
-"\M-[D":        backward-char
-"\M-[C":        forward-char
-"\M-[A":        previous-history
-"\M-[B":        next-history
-#
-# Arrow keys in 8 bit keypad mode
-#
-#"\M-\C-OD":       backward-char
-#"\M-\C-OC":       forward-char
-#"\M-\C-OA":       previous-history
-#"\M-\C-OB":       next-history
-#
-# Arrow keys in 8 bit ANSI mode
-#
-#"\M-\C-[D":       backward-char
-#"\M-\C-[C":       forward-char
-#"\M-\C-[A":       previous-history
-#"\M-\C-[B":       next-history
-
-C-q: quoted-insert
-
-$endif
-
-# An old-style binding.  This happens to be the default.
-TAB: complete
-
-# Macros that are convenient for shell interaction
-$if Bash
-# edit the path
-"\C-xp": "PATH=$@{PATH@}\e\C-e\C-a\ef\C-f"
-# prepare to type a quoted word --
-# insert open and close double quotes
-# and move to just after the open quote
-"\C-x\"": "\"\"\C-b"
-# insert a backslash (testing backslash escapes
-# in sequences and macros)
-"\C-x\\": "\\"
-# Quote the current or previous word
-"\C-xq": "\eb\"\ef\""
-# Add a binding to refresh the line, which is unbound
-"\C-xr": redraw-current-line
-# Edit variable on current line.
-"\M-\C-v": "\C-a\C-k$\C-y\M-\C-e\C-a\C-y="
-$endif
-
-# use a visible bell if one is available
-set bell-style visible
-
-# don't strip characters to 7 bits when reading
-set input-meta on
-
-# allow iso-latin1 characters to be inserted rather
-# than converted to prefix-meta sequences
-set convert-meta off
-
-# display characters with the eighth bit set directly
-# rather than as meta-prefixed characters
-set output-meta on
-
-# if there are more than 150 possible completions for
-# a word, ask the user if he wants to see all of them
-set completion-query-items 150
-
-# For FTP
-$if Ftp
-"\C-xg": "get \M-?"
-"\C-xt": "put \M-?"
-"\M-.": yank-last-arg
-$endif
-@end example
-
-@node Bindable Readline Commands
-@section Bindable Readline Commands
-
-@menu
-* Commands For Moving::                Moving about the line.
-* Commands For History::       Getting at previous lines.
-* Commands For Text::          Commands for changing text.
-* Commands For Killing::       Commands for killing and yanking.
-* Numeric Arguments::          Specifying numeric arguments, repeat counts.
-* Commands For Completion::    Getting Readline to do the typing for you.
-* Keyboard Macros::            Saving and re-executing typed characters
-* Miscellaneous Commands::     Other miscellaneous commands.
-@end menu
-
-This section describes Readline commands that may be bound to key
-sequences.
-@ifset BashFeatures
-You can list your key bindings by executing
-@w{@code{bind -P}} or, for a more terse format, suitable for an
-@var{inputrc} file, @w{@code{bind -p}}.  (@xref{Bash Builtins}.)
-@end ifset
-Command names without an accompanying key sequence are unbound by default.
-
-In the following descriptions, @dfn{point} refers to the current cursor
-position, and @dfn{mark} refers to a cursor position saved by the
-@code{set-mark} command.
-The text between the point and mark is referred to as the @dfn{region}.
-
-@node Commands For Moving
-@subsection Commands For Moving
-@ftable @code
-@item beginning-of-line (C-a)
-Move to the start of the current line.
-
-@item end-of-line (C-e)
-Move to the end of the line.
-
-@item forward-char (C-f)
-Move forward a character.
-
-@item backward-char (C-b)
-Move back a character.
-
-@item forward-word (M-f)
-Move forward to the end of the next word.  Words are composed of
-letters and digits.
-
-@item backward-word (M-b)
-Move back to the start of the current or previous word.  Words are
-composed of letters and digits.
-
-@item clear-screen (C-l)
-Clear the screen and redraw the current line,
-leaving the current line at the top of the screen.
-
-@item redraw-current-line ()
-Refresh the current line.  By default, this is unbound.
-
-@end ftable
-
-@node Commands For History
-@subsection Commands For Manipulating The History
-
-@ftable @code
-@item accept-line (Newline or Return)
-@ifset BashFeatures
-Accept the line regardless of where the cursor is.
-If this line is
-non-empty, add it to the history list according to the setting of
-the @env{HISTCONTROL} and @env{HISTIGNORE} variables.
-If this line is a modified history line, then restore the history line
-to its original state.
-@end ifset
-@ifclear BashFeatures
-Accept the line regardless of where the cursor is.
-If this line is
-non-empty, it may be added to the history list for future recall with
-@code{add_history()}.
-If this line is a modified history line, the history line is restored
-to its original state.
-@end ifclear
-
-@item previous-history (C-p)
-Move `back' through the history list, fetching the previous command.
-
-@item next-history (C-n)
-Move `forward' through the history list, fetching the next command.
-
-@item beginning-of-history (M-<)
-Move to the first line in the history.
-
-@item end-of-history (M->)
-Move to the end of the input history, i.e., the line currently
-being entered.
-
-@item reverse-search-history (C-r)
-Search backward starting at the current line and moving `up' through
-the history as necessary.  This is an incremental search.
-
-@item forward-search-history (C-s)
-Search forward starting at the current line and moving `down' through
-the the history as necessary.  This is an incremental search.
-
-@item non-incremental-reverse-search-history (M-p)
-Search backward starting at the current line and moving `up'
-through the history as necessary using a non-incremental search
-for a string supplied by the user.
-
-@item non-incremental-forward-search-history (M-n)
-Search forward starting at the current line and moving `down'
-through the the history as necessary using a non-incremental search
-for a string supplied by the user.
-
-@item history-search-forward ()
-Search forward through the history for the string of characters
-between the start of the current line and the point.
-This is a non-incremental search.
-By default, this command is unbound.
-
-@item history-search-backward ()
-Search backward through the history for the string of characters
-between the start of the current line and the point.  This
-is a non-incremental search.  By default, this command is unbound.
-
-@item yank-nth-arg (M-C-y)
-Insert the first argument to the previous command (usually
-the second word on the previous line) at point.
-With an argument @var{n},
-insert the @var{n}th word from the previous command (the words
-in the previous command begin with word 0).  A negative argument
-inserts the @var{n}th word from the end of the previous command.
-
-@item yank-last-arg (M-. or M-_)
-Insert last argument to the previous command (the last word of the
-previous history entry).  With an
-argument, behave exactly like @code{yank-nth-arg}.
-Successive calls to @code{yank-last-arg} move back through the history
-list, inserting the last argument of each line in turn.
-
-@end ftable
-
-@node Commands For Text
-@subsection Commands For Changing Text
-
-@ftable @code
-@item delete-char (C-d)
-Delete the character at point.  If point is at the
-beginning of the line, there are no characters in the line, and
-the last character typed was not bound to @code{delete-char}, then
-return @sc{eof}.
-
-@item backward-delete-char (Rubout)
-Delete the character behind the cursor.  A numeric argument means
-to kill the characters instead of deleting them.
-
-@item forward-backward-delete-char ()
-Delete the character under the cursor, unless the cursor is at the
-end of the line, in which case the character behind the cursor is
-deleted.  By default, this is not bound to a key.
-
-@item quoted-insert (C-q or C-v)
-Add the next character typed to the line verbatim.  This is
-how to insert key sequences like @kbd{C-q}, for example.
-
-@ifclear BashFeatures
-@item tab-insert (M-@key{TAB})
-Insert a tab character.
-@end ifclear
-
-@item self-insert (a, b, A, 1, !, @dots{})
-Insert yourself.
-
-@item transpose-chars (C-t)
-Drag the character before the cursor forward over
-the character at the cursor, moving the
-cursor forward as well.  If the insertion point
-is at the end of the line, then this
-transposes the last two characters of the line.
-Negative arguments have no effect.
-
-@item transpose-words (M-t)
-Drag the word before point past the word after point,
-moving point past that word as well.
-If the insertion point is at the end of the line, this transposes
-the last two words on the line.
-
-@item upcase-word (M-u)
-Uppercase the current (or following) word.  With a negative argument,
-uppercase the previous word, but do not move the cursor.
-
-@item downcase-word (M-l)
-Lowercase the current (or following) word.  With a negative argument,
-lowercase the previous word, but do not move the cursor.
-
-@item capitalize-word (M-c)
-Capitalize the current (or following) word.  With a negative argument,
-capitalize the previous word, but do not move the cursor.
-
-@item overwrite-mode ()
-Toggle overwrite mode.  With an explicit positive numeric argument,
-switches to overwrite mode.  With an explicit non-positive numeric
-argument, switches to insert mode.  This command affects only
-@code{emacs} mode; @code{vi} mode does overwrite differently.
-Each call to @code{readline()} starts in insert mode.
-
-In overwrite mode, characters bound to @code{self-insert} replace
-the text at point rather than pushing the text to the right.
-Characters bound to @code{backward-delete-char} replace the character
-before point with a space.
-
-By default, this command is unbound.
-
-@end ftable
-
-@node Commands For Killing
-@subsection Killing And Yanking
-
-@ftable @code
-
-@item kill-line (C-k)
-Kill the text from point to the end of the line.
-
-@item backward-kill-line (C-x Rubout)
-Kill backward to the beginning of the line.
-
-@item unix-line-discard (C-u)
-Kill backward from the cursor to the beginning of the current line.
-
-@item kill-whole-line ()
-Kill all characters on the current line, no matter where point is.
-By default, this is unbound.
-
-@item kill-word (M-d)
-Kill from point to the end of the current word, or if between
-words, to the end of the next word.
-Word boundaries are the same as @code{forward-word}.
-
-@item backward-kill-word (M-@key{DEL})
-Kill the word behind point.
-Word boundaries are the same as @code{backward-word}.
-
-@item unix-word-rubout (C-w)
-Kill the word behind point, using white space as a word boundary.
-The killed text is saved on the kill-ring.
-
-@item delete-horizontal-space ()
-Delete all spaces and tabs around point.  By default, this is unbound.
-
-@item kill-region ()
-Kill the text in the current region.
-By default, this command is unbound.
-
-@item copy-region-as-kill ()
-Copy the text in the region to the kill buffer, so it can be yanked
-right away.  By default, this command is unbound.
-
-@item copy-backward-word ()
-Copy the word before point to the kill buffer.
-The word boundaries are the same as @code{backward-word}.
-By default, this command is unbound.
-
-@item copy-forward-word ()
-Copy the word following point to the kill buffer.
-The word boundaries are the same as @code{forward-word}.
-By default, this command is unbound.
-
-@item yank (C-y)
-Yank the top of the kill ring into the buffer at point.
-
-@item yank-pop (M-y)
-Rotate the kill-ring, and yank the new top.  You can only do this if
-the prior command is @code{yank} or @code{yank-pop}.
-@end ftable
-
-@node Numeric Arguments
-@subsection Specifying Numeric Arguments
-@ftable @code
-
-@item digit-argument (@kbd{M-0}, @kbd{M-1}, @dots{} @kbd{M--})
-Add this digit to the argument already accumulating, or start a new
-argument.  @kbd{M--} starts a negative argument.
-
-@item universal-argument ()
-This is another way to specify an argument.
-If this command is followed by one or more digits, optionally with a
-leading minus sign, those digits define the argument.
-If the command is followed by digits, executing @code{universal-argument}
-again ends the numeric argument, but is otherwise ignored.
-As a special case, if this command is immediately followed by a
-character that is neither a digit or minus sign, the argument count
-for the next command is multiplied by four.
-The argument count is initially one, so executing this function the
-first time makes the argument count four, a second time makes the
-argument count sixteen, and so on.
-By default, this is not bound to a key.
-@end ftable
-
-@node Commands For Completion
-@subsection Letting Readline Type For You
-
-@ftable @code
-@item complete (@key{TAB})
-Attempt to perform completion on the text before point.
-The actual completion performed is application-specific.
-@ifset BashFeatures
-Bash attempts completion treating the text as a variable (if the
-text begins with @samp{$}), username (if the text begins with
-@samp{~}), hostname (if the text begins with @samp{@@}), or
-command (including aliases and functions) in turn.  If none 
-of these produces a match, filename completion is attempted.
-@end ifset
-@ifclear BashFeatures
-The default is filename completion.
-@end ifclear
-
-@item possible-completions (M-?)
-List the possible completions of the text before point.
-
-@item insert-completions (M-*)
-Insert all completions of the text before point that would have
-been generated by @code{possible-completions}.
-
-@item menu-complete ()
-Similar to @code{complete}, but replaces the word to be completed
-with a single match from the list of possible completions.
-Repeated execution of @code{menu-complete} steps through the list
-of possible completions, inserting each match in turn.
-At the end of the list of completions, the bell is rung
-(subject to the setting of @code{bell-style})
-and the original text is restored.
-An argument of @var{n} moves @var{n} positions forward in the list
-of matches; a negative argument may be used to move backward
-through the list.
-This command is intended to be bound to @key{TAB}, but is unbound
-by default.
-
-@item delete-char-or-list ()
-Deletes the character under the cursor if not at the beginning or
-end of the line (like @code{delete-char}).
-If at the end of the line, behaves identically to
-@code{possible-completions}.
-This command is unbound by default.
-
-@ifset BashFeatures
-@item complete-filename (M-/)
-Attempt filename completion on the text before point.
-
-@item possible-filename-completions (C-x /)
-List the possible completions of the text before point,
-treating it as a filename.
-
-@item complete-username (M-~)
-Attempt completion on the text before point, treating
-it as a username.
-
-@item possible-username-completions (C-x ~)
-List the possible completions of the text before point,
-treating it as a username.
-
-@item complete-variable (M-$)
-Attempt completion on the text before point, treating
-it as a shell variable.
-
-@item possible-variable-completions (C-x $)
-List the possible completions of the text before point,
-treating it as a shell variable.
-
-@item complete-hostname (M-@@)
-Attempt completion on the text before point, treating
-it as a hostname.
-
-@item possible-hostname-completions (C-x @@)
-List the possible completions of the text before point,
-treating it as a hostname.
-
-@item complete-command (M-!)
-Attempt completion on the text before point, treating
-it as a command name.  Command completion attempts to
-match the text against aliases, reserved words, shell
-functions, shell builtins, and finally executable filenames,
-in that order.
-
-@item possible-command-completions (C-x !)
-List the possible completions of the text before point,
-treating it as a command name.
-
-@item dynamic-complete-history (M-@key{TAB})
-Attempt completion on the text before point, comparing
-the text against lines from the history list for possible
-completion matches.
-
-@item complete-into-braces (M-@{)
-Perform filename completion and insert the list of possible completions
-enclosed within braces so the list is available to the shell
-(@pxref{Brace Expansion}).
-
-@end ifset
-@end ftable
-
-@node Keyboard Macros
-@subsection Keyboard Macros
-@ftable @code
-
-@item start-kbd-macro (C-x ()
-Begin saving the characters typed into the current keyboard macro.
-
-@item end-kbd-macro (C-x ))
-Stop saving the characters typed into the current keyboard macro
-and save the definition.
-
-@item call-last-kbd-macro (C-x e)
-Re-execute the last keyboard macro defined, by making the characters
-in the macro appear as if typed at the keyboard.
-
-@end ftable
-
-@node Miscellaneous Commands
-@subsection Some Miscellaneous Commands
-@ftable @code
-
-@item re-read-init-file (C-x C-r)
-Read in the contents of the @var{inputrc} file, and incorporate
-any bindings or variable assignments found there.
-
-@item abort (C-g)
-Abort the current editing command and
-ring the terminal's bell (subject to the setting of
-@code{bell-style}).
-
-@item do-uppercase-version (M-a, M-b, M-@var{x}, @dots{})
-If the metafied character @var{x} is lowercase, run the command
-that is bound to the corresponding uppercase character.
-
-@item prefix-meta (@key{ESC})
-Metafy the next character typed.  This is for keyboards
-without a meta key.  Typing @samp{@key{ESC} f} is equivalent to typing
-@kbd{M-f}.
-
-@item undo (C-_ or C-x C-u)
-Incremental undo, separately remembered for each line.
-
-@item revert-line (M-r)
-Undo all changes made to this line.  This is like executing the @code{undo}
-command enough times to get back to the beginning.
-
-@ifset BashFeatures
-@item tilde-expand (M-&)
-@end ifset
-@ifclear BashFeatures
-@item tilde-expand (M-~)
-@end ifclear
-Perform tilde expansion on the current word.
-
-@item set-mark (C-@@)
-Set the mark to the point.  If a
-numeric argument is supplied, the mark is set to that position.
-
-@item exchange-point-and-mark (C-x C-x)
-Swap the point with the mark.  The current cursor position is set to
-the saved position, and the old cursor position is saved as the mark.
-
-@item character-search (C-])
-A character is read and point is moved to the next occurrence of that
-character.  A negative count searches for previous occurrences.
-
-@item character-search-backward (M-C-])
-A character is read and point is moved to the previous occurrence
-of that character.  A negative count searches for subsequent
-occurrences.
-
-@item insert-comment (M-#)
-Without a numeric argument, the value of the @code{comment-begin}
-variable is inserted at the beginning of the current line.
-If a numeric argument is supplied, this command acts as a toggle:  if
-the characters at the beginning of the line do not match the value
-of @code{comment-begin}, the value is inserted, otherwise
-the characters in @code{comment-begin} are deleted from the beginning of
-the line.
-In either case, the line is accepted as if a newline had been typed.
-@ifset BashFeatures
-The default value of @code{comment-begin} causes this command
-to make the current line a shell comment.
-If a numeric argument causes the comment character to be removed, the line
-will be executed by the shell.
-@end ifset
-
-@item dump-functions ()
-Print all of the functions and their key bindings to the
-Readline output stream.  If a numeric argument is supplied,
-the output is formatted in such a way that it can be made part
-of an @var{inputrc} file.  This command is unbound by default.
-
-@item dump-variables ()
-Print all of the settable variables and their values to the
-Readline output stream.  If a numeric argument is supplied,
-the output is formatted in such a way that it can be made part
-of an @var{inputrc} file.  This command is unbound by default.
-
-@item dump-macros ()
-Print all of the Readline key sequences bound to macros and the
-strings they output.  If a numeric argument is supplied,
-the output is formatted in such a way that it can be made part
-of an @var{inputrc} file.  This command is unbound by default.
-
-@ifset BashFeatures
-@item glob-complete-word (M-g)
-The word before point is treated as a pattern for pathname expansion,
-with an asterisk implicitly appended.  This pattern is used to
-generate a list of matching file names for possible completions.
-
-@item glob-expand-word (C-x *)
-The word before point is treated as a pattern for pathname expansion,
-and the list of matching file names is inserted, replacing the word.
-If a numeric argument is supplied, a @samp{*} is appended before
-pathname expansion.
-
-@item glob-list-expansions (C-x g)
-The list of expansions that would have been generated by
-@code{glob-expand-word} is displayed, and the line is redrawn.
-If a numeric argument is supplied, a @samp{*} is appended before
-pathname expansion.
-
-@item display-shell-version (C-x C-v)
-Display version information about the current instance of Bash.
-
-@item shell-expand-line (M-C-e)
-Expand the line as the shell does.
-This performs alias and history expansion as well as all of the shell
-word expansions (@pxref{Shell Expansions}).
-
-@item history-expand-line (M-^)
-Perform history expansion on the current line.
-
-@item magic-space ()
-Perform history expansion on the current line and insert a space
-(@pxref{History Interaction}).
-
-@item alias-expand-line ()
-Perform alias expansion on the current line (@pxref{Aliases}).
-
-@item history-and-alias-expand-line ()
-Perform history and alias expansion on the current line.
-
-@item insert-last-argument (M-. or M-_)
-A synonym for @code{yank-last-arg}.
-
-@item operate-and-get-next (C-o)
-Accept the current line for execution and fetch the next line
-relative to the current line from the history for editing.  Any
-argument is ignored.
-
-@item edit-and-execute-command (C-xC-e)
-Invoke an editor on the current command line, and execute the result as shell
-commands.
-Bash attempts to invoke
-@code{$FCEDIT}, @code{$EDITOR}, and @code{emacs}
-as the editor, in that order.
-
-@end ifset
-
-@ifclear BashFeatures
-@item emacs-editing-mode (C-e)
-When in @code{vi} command mode, this causes a switch to @code{emacs}
-editing mode.
-
-@item vi-editing-mode (M-C-j)
-When in @code{emacs} editing mode, this causes a switch to @code{vi}
-editing mode.
-
-@end ifclear
-
-@end ftable
-
-@node Readline vi Mode
-@section Readline vi Mode
-
-While the Readline library does not have a full set of @code{vi}
-editing functions, it does contain enough to allow simple editing
-of the line.  The Readline @code{vi} mode behaves as specified in
-the @sc{posix} 1003.2 standard.
-
-@ifset BashFeatures
-In order to switch interactively between @code{emacs} and @code{vi}
-editing modes, use the @samp{set -o emacs} and @samp{set -o vi}
-commands (@pxref{The Set Builtin}).
-@end ifset
-@ifclear BashFeatures
-In order to switch interactively between @code{emacs} and @code{vi}
-editing modes, use the command @kbd{M-C-j} (bound to emacs-editing-mode
-when in @code{vi} mode and to vi-editing-mode in @code{emacs} mode).
-@end ifclear
-The Readline default is @code{emacs} mode.
-
-When you enter a line in @code{vi} mode, you are already placed in
-`insertion' mode, as if you had typed an @samp{i}.  Pressing @key{ESC}
-switches you into `command' mode, where you can edit the text of the
-line with the standard @code{vi} movement keys, move to previous
-history lines with @samp{k} and subsequent lines with @samp{j}, and
-so forth.
-
-@ifset BashFeatures
-@node Programmable Completion
-@section Programmable Completion
-@cindex programmable completion
-
-When word completion is attempted for an argument to a command for
-which a completion specification (a @var{compspec}) has been defined
-using the @code{complete} builtin (@pxref{Programmable Completion Builtins}),
-the programmable completion facilities are invoked. 
-
-First, the command name is identified.
-If a compspec has been defined for that command, the
-compspec is used to generate the list of possible completions for the word.
-If the command word is a full pathname, a compspec for the full
-pathname is searched for first.
-If no compspec is found for the full pathname, an attempt is made to
-find a compspec for the portion following the final slash.
-
-Once a compspec has been found, it is used to generate the list of
-matching words.
-If a compspec is not found, the default Bash completion
-described above (@pxref{Commands For Completion}) is performed.
-
-First, the actions specified by the compspec are used.
-Only matches which are prefixed by the word being completed are
-returned.
-When the @option{-f} or @option{-d} option is used for filename or
-directory name completion, the shell variable @env{FIGNORE} is
-used to filter the matches.
-@xref{Bash Variables}, for a description of @env{FIGNORE}.
-
-Any completions specified by a filename expansion pattern to the
-@option{-G} option are generated next.
-The words generated by the pattern need not match the word being completed.
-The @env{GLOBIGNORE} shell variable is not used to filter the matches,
-but the @env{FIGNORE} shell variable is used.
-
-Next, the string specified as the argument to the @option{-W} option
-is considered.
-The string is first split using the characters in the @env{IFS}
-special variable as delimiters.
-Shell quoting is honored.
-Each word is then expanded using
-brace expansion, tilde expansion, parameter and variable expansion,
-command substitution, arithmetic expansion, and pathname expansion,
-as described above (@pxref{Shell Expansions}).
-The results are split using the rules described above
-(@pxref{Word Splitting}).
-The results of the expansion are prefix-matched against the word being
-completed, and the matching words become the possible completions.
-
-After these matches have been generated, any shell function or command
-specified with the @option{-F} and @option{-C} options is invoked.
-When the command or function is invoked, the @env{COMP_LINE} and
-@env{COMP_POINT} variables are assigned values as described above
-(@pxref{Bash Variables}).
-If a shell function is being invoked, the @env{COMP_WORDS} and
-@env{COMP_CWORD} variables are also set.
-When the function or command is invoked, the first argument is the
-name of the command whose arguments are being completed, the
-second argument is the word being completed, and the third argument
-is the word preceding the word being completed on the current command line.
-No filtering of the generated completions against the word being completed
-is performed; the function or command has complete freedom in generating
-the matches.
-
-Any function specified with @option{-F} is invoked first.
-The function may use any of the shell facilities, including the
-@code{compgen} builtin described below
-(@pxref{Programmable Completion Builtins}), to generate the matches.
-It must put the possible completions in the @env{COMPREPLY} array
-variable.
-
-Next, any command specified with the @option{-C} option is invoked
-in an environment equivalent to command substitution.
-It should print a list of completions, one per line, to
-the standard output.
-Backslash may be used to escape a newline, if necessary.
-
-After all of the possible completions are generated, any filter
-specified with the @option{-X} option is applied to the list.
-The filter is a pattern as used for pathname expansion; a @samp{&}
-in the pattern is replaced with the text of the word being completed.
-A literal @samp{&} may be escaped with a backslash; the backslash
-is removed before attempting a match.
-Any completion that matches the pattern will be removed from the list.
-A leading @samp{!} negates the pattern; in this case any completion
-not matching the pattern will be removed.
-
-Finally, any prefix and suffix specified with the @option{-P} and @option{-S}
-options are added to each member of the completion list, and the result is
-returned to the Readline completion code as the list of possible
-completions.
-
-If the previously-applied actions do not generate any matches, and the
-@option{-o dirnames} option was supplied to @code{complete} when the
-compspec was defined, directory name completion is attempted. 
-
-By default, if a compspec is found, whatever it generates is returned to
-the completion code as the full set of possible completions.
-The default Bash completions are not attempted, and the Readline default
-of filename completion is disabled.
-If the @option{-o default} option was supplied to @code{complete} when the
-compspec was defined, Readline's default completion will be performed
-if the compspec generates no matches.
-
-When a compspec indicates that directory name completion is desired,
-the programmable completion functions force Readline to append a slash
-to completed names which are symbolic links to directories, subject to
-the value of the @var{mark-directories} Readline variable, regardless
-of the setting of the @var{mark-symlinked-directories} Readline variable.
-
-@node Programmable Completion Builtins
-@section Programmable Completion Builtins
-@cindex completion builtins
-
-Two builtin commands are available to manipulate the programmable completion
-facilities.
-
-@table @code
-@item compgen
-@btindex compgen
-@example
-@code{compgen [@var{option}] [@var{word}]}
-@end example
-
-Generate possible completion matches for @var{word} according to
-the @var{option}s, which may be any option accepted by the
-@code{complete}
-builtin with the exception of @option{-p} and @option{-r}, and write
-the matches to the standard output.
-When using the @option{-F} or @option{-C} options, the various shell variables
-set by the programmable completion facilities, while available, will not
-have useful values.
-
-The matches will be generated in the same way as if the programmable
-completion code had generated them directly from a completion specification
-with the same flags.
-If @var{word} is specified, only those completions matching @var{word}
-will be displayed.
-
-The return value is true unless an invalid option is supplied, or no
-matches were generated.
-
-@item complete
-@btindex complete
-@example
-@code{complete [-abcdefgjksuv] [-o @var{comp-option}] [-A @var{action}] [-G @var{globpat}] [-W @var{wordlist}]
-[-P @var{prefix}] [-S @var{suffix}] [-X @var{filterpat}] [-F @var{function}]
-[-C @var{command}] @var{name} [@var{name} @dots{}]}
-@code{complete -pr [@var{name} @dots{}]}
-@end example
-
-Specify how arguments to each @var{name} should be completed.
-If the @option{-p} option is supplied, or if no options are supplied, existing
-completion specifications are printed in a way that allows them to be
-reused as input.
-The @option{-r} option removes a completion specification for
-each @var{name}, or, if no @var{name}s are supplied, all
-completion specifications.
-
-The process of applying these completion specifications when word completion
-is attempted is described above (@pxref{Programmable Completion}).
-
-Other options, if specified, have the following meanings.
-The arguments to the @option{-G}, @option{-W}, and @option{-X} options
-(and, if necessary, the @option{-P} and @option{-S} options)
-should be quoted to protect them from expansion before the
-@code{complete} builtin is invoked.
-
-
-@table @code
-@item -o @var{comp-option}
-The @var{comp-option} controls several aspects of the compspec's behavior
-beyond the simple generation of completions.
-@var{comp-option} may be one of: 
-
-@table @code
-
-@item default
-Use Readline's default filename completion if the compspec generates
-no matches.
-
-@item dirnames
-Perform directory name completion if the compspec generates no matches.
-
-@item filenames
-Tell Readline that the compspec generates filenames, so it can perform any
-filename\-specific processing (like adding a slash to directory names or
-suppressing trailing spaces).  This option is intended to be used with
-shell functions specified with @option{-F}.
-
-@item nospace
-Tell Readline not to append a space (the default) to words completed at
-the end of the line.
-@end table
-
-@item -A @var{action}
-The @var{action} may be one of the following to generate a list of possible
-completions:
-
-@table @code
-@item alias
-Alias names.  May also be specified as @option{-a}.
-
-@item arrayvar
-Array variable names.
-
-@item binding
-Readline key binding names (@pxref{Bindable Readline Commands}).
-
-@item builtin
-Names of shell builtin commands.  May also be specified as @option{-b}.
-
-@item command
-Command names.  May also be specified as @option{-c}.
-
-@item directory
-Directory names.  May also be specified as @option{-d}.
-
-@item disabled
-Names of disabled shell builtins.
-
-@item enabled
-Names of enabled shell builtins.
-
-@item export
-Names of exported shell variables.  May also be specified as @option{-e}.
-
-@item file
-File names.  May also be specified as @option{-f}.
-
-@item function
-Names of shell functions.
-
-@item group
-Group names.  May also be specified as @option{-g}.
-
-@item helptopic
-Help topics as accepted by the @code{help} builtin (@pxref{Bash Builtins}).
-
-@item hostname
-Hostnames, as taken from the file specified by the
-@env{HOSTFILE} shell variable (@pxref{Bash Variables}).
-
-@item job
-Job names, if job control is active.  May also be specified as @option{-j}.
-
-@item keyword
-Shell reserved words.  May also be specified as @option{-k}.
-
-@item running
-Names of running jobs, if job control is active.
-
-@item service
-Service names.  May also be specified as @option{-s}.
-
-@item setopt
-Valid arguments for the @option{-o} option to the @code{set} builtin
-(@pxref{The Set Builtin}).
-
-@item shopt
-Shell option names as accepted by the @code{shopt} builtin
-(@pxref{Bash Builtins}).
-
-@item signal
-Signal names.
-
-@item stopped
-Names of stopped jobs, if job control is active.
-
-@item user
-User names.  May also be specified as @option{-u}.
-
-@item variable
-Names of all shell variables.  May also be specified as @option{-v}.
-@end table
-
-@item -G @var{globpat}
-The filename expansion pattern @var{globpat} is expanded to generate
-the possible completions.
-
-@item -W @var{wordlist}
-The @var{wordlist} is split using the characters in the
-@env{IFS} special variable as delimiters, and each resultant word
-is expanded.
-The possible completions are the members of the resultant list which
-match the word being completed.
-
-@item -C @var{command}
-@var{command} is executed in a subshell environment, and its output is
-used as the possible completions.
-
-@item -F @var{function}
-The shell function @var{function} is executed in the current shell
-environment.
-When it finishes, the possible completions are retrieved from the value
-of the @env{COMPREPLY} array variable.
-
-@item -X @var{filterpat}
-@var{filterpat} is a pattern as used for filename expansion.
-It is applied to the list of possible completions generated by the
-preceding options and arguments, and each completion matching
-@var{filterpat} is removed from the list.
-A leading @samp{!} in @var{filterpat} negates the pattern; in this
-case, any completion not matching @var{filterpat} is removed.
-
-@item -P @var{prefix}
-@var{prefix} is added at the beginning of each possible completion
-after all other options have been applied.
-
-@item -S @var{suffix}
-@var{suffix} is appended to each possible completion
-after all other options have been applied.
-@end table
-
-The return value is true unless an invalid option is supplied, an option
-other than @option{-p} or @option{-r} is supplied without a @var{name}
-argument, an attempt is made to remove a completion specification for
-a @var{name} for which no specification exists, or
-an error occurs adding a completion specification.
-
-@end table
-@end ifset
diff --git a/lib/readline/doc/rluserman.aux b/lib/readline/doc/rluserman.aux
deleted file mode 100644 (file)
index 68ba55c..0000000
+++ /dev/null
@@ -1,69 +0,0 @@
-@xrdef{Command Line Editing-title}{Command Line Editing}
-@xrdef{Command Line Editing-snt}{Chapter@tie 1}
-@xrdef{Introduction and Notation-title}{Introduction to Line Editing}
-@xrdef{Introduction and Notation-snt}{Section@tie 1.1}
-@xrdef{Readline Interaction-title}{Readline Interaction}
-@xrdef{Readline Interaction-snt}{Section@tie 1.2}
-@xrdef{Readline Bare Essentials-title}{Readline Bare Essentials}
-@xrdef{Readline Bare Essentials-snt}{Section@tie 1.2.1}
-@xrdef{Command Line Editing-pg}{1}
-@xrdef{Introduction and Notation-pg}{1}
-@xrdef{Readline Interaction-pg}{1}
-@xrdef{Readline Bare Essentials-pg}{1}
-@xrdef{Readline Movement Commands-title}{Readline Movement Commands}
-@xrdef{Readline Movement Commands-snt}{Section@tie 1.2.2}
-@xrdef{Readline Killing Commands-title}{Readline Killing Commands}
-@xrdef{Readline Killing Commands-snt}{Section@tie 1.2.3}
-@xrdef{Readline Movement Commands-pg}{2}
-@xrdef{Readline Killing Commands-pg}{2}
-@xrdef{Readline Arguments-title}{Readline Arguments}
-@xrdef{Readline Arguments-snt}{Section@tie 1.2.4}
-@xrdef{Searching-title}{Searching for Commands in the History}
-@xrdef{Searching-snt}{Section@tie 1.2.5}
-@xrdef{Readline Arguments-pg}{3}
-@xrdef{Searching-pg}{3}
-@xrdef{Readline Init File-title}{Readline Init File}
-@xrdef{Readline Init File-snt}{Section@tie 1.3}
-@xrdef{Readline Init File Syntax-title}{Readline Init File Syntax}
-@xrdef{Readline Init File Syntax-snt}{Section@tie 1.3.1}
-@xrdef{Readline Init File-pg}{4}
-@xrdef{Readline Init File Syntax-pg}{4}
-@xrdef{Conditional Init Constructs-title}{Conditional Init Constructs}
-@xrdef{Conditional Init Constructs-snt}{Section@tie 1.3.2}
-@xrdef{Conditional Init Constructs-pg}{10}
-@xrdef{Sample Init File-title}{Sample Init File}
-@xrdef{Sample Init File-snt}{Section@tie 1.3.3}
-@xrdef{Sample Init File-pg}{11}
-@xrdef{Bindable Readline Commands-title}{Bindable Readline Commands}
-@xrdef{Bindable Readline Commands-snt}{Section@tie 1.4}
-@xrdef{Commands For Moving-title}{Commands For Moving}
-@xrdef{Commands For Moving-snt}{Section@tie 1.4.1}
-@xrdef{Commands For History-title}{Commands For Manipulating The History}
-@xrdef{Commands For History-snt}{Section@tie 1.4.2}
-@xrdef{Bindable Readline Commands-pg}{14}
-@xrdef{Commands For Moving-pg}{14}
-@xrdef{Commands For History-pg}{14}
-@xrdef{Commands For Text-title}{Commands For Changing Text}
-@xrdef{Commands For Text-snt}{Section@tie 1.4.3}
-@xrdef{Commands For Text-pg}{16}
-@xrdef{Commands For Killing-title}{Killing And Yanking}
-@xrdef{Commands For Killing-snt}{Section@tie 1.4.4}
-@xrdef{Commands For Killing-pg}{17}
-@xrdef{Numeric Arguments-title}{Specifying Numeric Arguments}
-@xrdef{Numeric Arguments-snt}{Section@tie 1.4.5}
-@xrdef{Commands For Completion-title}{Letting Readline Type For You}
-@xrdef{Commands For Completion-snt}{Section@tie 1.4.6}
-@xrdef{Numeric Arguments-pg}{18}
-@xrdef{Commands For Completion-pg}{18}
-@xrdef{Keyboard Macros-title}{Keyboard Macros}
-@xrdef{Keyboard Macros-snt}{Section@tie 1.4.7}
-@xrdef{Miscellaneous Commands-title}{Some Miscellaneous Commands}
-@xrdef{Miscellaneous Commands-snt}{Section@tie 1.4.8}
-@xrdef{Keyboard Macros-pg}{19}
-@xrdef{Miscellaneous Commands-pg}{19}
-@xrdef{Readline vi Mode-title}{Readline vi Mode}
-@xrdef{Readline vi Mode-snt}{Section@tie 1.5}
-@xrdef{Readline vi Mode-pg}{21}
-@xrdef{GNU Free Documentation License-title}{GNU Free Documentation License}
-@xrdef{GNU Free Documentation License-snt}{Appendix@tie @char65{}}
-@xrdef{GNU Free Documentation License-pg}{22}
diff --git a/lib/readline/doc/rluserman.bt b/lib/readline/doc/rluserman.bt
deleted file mode 100644 (file)
index e69de29..0000000
diff --git a/lib/readline/doc/rluserman.cp b/lib/readline/doc/rluserman.cp
deleted file mode 100644 (file)
index a8eab78..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-\entry{interaction, readline}{1}{interaction, readline}
-\entry{notation, readline}{1}{notation, readline}
-\entry{command editing}{1}{command editing}
-\entry{editing command lines}{1}{editing command lines}
-\entry{killing text}{2}{killing text}
-\entry{yanking text}{2}{yanking text}
-\entry{kill ring}{2}{kill ring}
-\entry{initialization file, readline}{4}{initialization file, readline}
-\entry{variables, readline}{4}{variables, readline}
diff --git a/lib/readline/doc/rluserman.cps b/lib/readline/doc/rluserman.cps
deleted file mode 100644 (file)
index 5589192..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-\initial {C}
-\entry {command editing}{1}
-\initial {E}
-\entry {editing command lines}{1}
-\initial {I}
-\entry {initialization file, readline}{4}
-\entry {interaction, readline}{1}
-\initial {K}
-\entry {kill ring}{2}
-\entry {killing text}{2}
-\initial {N}
-\entry {notation, readline}{1}
-\initial {V}
-\entry {variables, readline}{4}
-\initial {Y}
-\entry {yanking text}{2}
diff --git a/lib/readline/doc/rluserman.dvi b/lib/readline/doc/rluserman.dvi
deleted file mode 100644 (file)
index 5f1c044..0000000
Binary files a/lib/readline/doc/rluserman.dvi and /dev/null differ
diff --git a/lib/readline/doc/rluserman.fn b/lib/readline/doc/rluserman.fn
deleted file mode 100644 (file)
index ac36500..0000000
+++ /dev/null
@@ -1,77 +0,0 @@
-\entry{beginning-of-line (C-a)}{14}{\code {beginning-of-line (C-a)}}
-\entry{end-of-line (C-e)}{14}{\code {end-of-line (C-e)}}
-\entry{forward-char (C-f)}{14}{\code {forward-char (C-f)}}
-\entry{backward-char (C-b)}{14}{\code {backward-char (C-b)}}
-\entry{forward-word (M-f)}{14}{\code {forward-word (M-f)}}
-\entry{backward-word (M-b)}{14}{\code {backward-word (M-b)}}
-\entry{clear-screen (C-l)}{14}{\code {clear-screen (C-l)}}
-\entry{redraw-current-line ()}{14}{\code {redraw-current-line ()}}
-\entry{accept-line (Newline or Return)}{14}{\code {accept-line (Newline or Return)}}
-\entry{previous-history (C-p)}{14}{\code {previous-history (C-p)}}
-\entry{next-history (C-n)}{15}{\code {next-history (C-n)}}
-\entry{beginning-of-history (M-<)}{15}{\code {beginning-of-history (M-<)}}
-\entry{end-of-history (M->)}{15}{\code {end-of-history (M->)}}
-\entry{reverse-search-history (C-r)}{15}{\code {reverse-search-history (C-r)}}
-\entry{forward-search-history (C-s)}{15}{\code {forward-search-history (C-s)}}
-\entry{non-incremental-reverse-search-history (M-p)}{15}{\code {non-incremental-reverse-search-history (M-p)}}
-\entry{non-incremental-forward-search-history (M-n)}{15}{\code {non-incremental-forward-search-history (M-n)}}
-\entry{history-search-forward ()}{15}{\code {history-search-forward ()}}
-\entry{history-search-backward ()}{15}{\code {history-search-backward ()}}
-\entry{yank-nth-arg (M-C-y)}{15}{\code {yank-nth-arg (M-C-y)}}
-\entry{yank-last-arg (M-. or M-_)}{15}{\code {yank-last-arg (M-. or M-_)}}
-\entry{delete-char (C-d)}{16}{\code {delete-char (C-d)}}
-\entry{backward-delete-char (Rubout)}{16}{\code {backward-delete-char (Rubout)}}
-\entry{forward-backward-delete-char ()}{16}{\code {forward-backward-delete-char ()}}
-\entry{quoted-insert (C-q or C-v)}{16}{\code {quoted-insert (C-q or C-v)}}
-\entry{tab-insert (M-TAB)}{16}{\code {tab-insert (M-\key {TAB})}}
-\entry{self-insert (a, b, A, 1, !, ...{})}{16}{\code {self-insert (a, b, A, 1, !, \dots {})}}
-\entry{transpose-chars (C-t)}{16}{\code {transpose-chars (C-t)}}
-\entry{transpose-words (M-t)}{16}{\code {transpose-words (M-t)}}
-\entry{upcase-word (M-u)}{16}{\code {upcase-word (M-u)}}
-\entry{downcase-word (M-l)}{16}{\code {downcase-word (M-l)}}
-\entry{capitalize-word (M-c)}{16}{\code {capitalize-word (M-c)}}
-\entry{overwrite-mode ()}{17}{\code {overwrite-mode ()}}
-\entry{kill-line (C-k)}{17}{\code {kill-line (C-k)}}
-\entry{backward-kill-line (C-x Rubout)}{17}{\code {backward-kill-line (C-x Rubout)}}
-\entry{unix-line-discard (C-u)}{17}{\code {unix-line-discard (C-u)}}
-\entry{kill-whole-line ()}{17}{\code {kill-whole-line ()}}
-\entry{kill-word (M-d)}{17}{\code {kill-word (M-d)}}
-\entry{backward-kill-word (M-DEL)}{17}{\code {backward-kill-word (M-\key {DEL})}}
-\entry{unix-word-rubout (C-w)}{17}{\code {unix-word-rubout (C-w)}}
-\entry{unix-filename-rubout ()}{17}{\code {unix-filename-rubout ()}}
-\entry{delete-horizontal-space ()}{17}{\code {delete-horizontal-space ()}}
-\entry{kill-region ()}{17}{\code {kill-region ()}}
-\entry{copy-region-as-kill ()}{17}{\code {copy-region-as-kill ()}}
-\entry{copy-backward-word ()}{17}{\code {copy-backward-word ()}}
-\entry{copy-forward-word ()}{18}{\code {copy-forward-word ()}}
-\entry{yank (C-y)}{18}{\code {yank (C-y)}}
-\entry{yank-pop (M-y)}{18}{\code {yank-pop (M-y)}}
-\entry{digit-argument (M-0, M-1, ...{} M--)}{18}{\code {digit-argument (\kbd {M-0}, \kbd {M-1}, \dots {} \kbd {M--})}}
-\entry{universal-argument ()}{18}{\code {universal-argument ()}}
-\entry{complete (TAB)}{18}{\code {complete (\key {TAB})}}
-\entry{possible-completions (M-?)}{18}{\code {possible-completions (M-?)}}
-\entry{insert-completions (M-*)}{18}{\code {insert-completions (M-*)}}
-\entry{menu-complete ()}{18}{\code {menu-complete ()}}
-\entry{menu-complete-backward ()}{19}{\code {menu-complete-backward ()}}
-\entry{delete-char-or-list ()}{19}{\code {delete-char-or-list ()}}
-\entry{start-kbd-macro (C-x ()}{19}{\code {start-kbd-macro (C-x ()}}
-\entry{end-kbd-macro (C-x ))}{19}{\code {end-kbd-macro (C-x ))}}
-\entry{call-last-kbd-macro (C-x e)}{19}{\code {call-last-kbd-macro (C-x e)}}
-\entry{re-read-init-file (C-x C-r)}{19}{\code {re-read-init-file (C-x C-r)}}
-\entry{abort (C-g)}{19}{\code {abort (C-g)}}
-\entry{do-uppercase-version (M-a, M-b, M-x, ...{})}{19}{\code {do-uppercase-version (M-a, M-b, M-\var {x}, \dots {})}}
-\entry{prefix-meta (ESC)}{19}{\code {prefix-meta (\key {ESC})}}
-\entry{undo (C-_ or C-x C-u)}{19}{\code {undo (C-_ or C-x C-u)}}
-\entry{revert-line (M-r)}{19}{\code {revert-line (M-r)}}
-\entry{tilde-expand (M-~)}{19}{\code {tilde-expand (M-~)}}
-\entry{set-mark (C-@)}{19}{\code {set-mark (C-@)}}
-\entry{exchange-point-and-mark (C-x C-x)}{20}{\code {exchange-point-and-mark (C-x C-x)}}
-\entry{character-search (C-])}{20}{\code {character-search (C-])}}
-\entry{character-search-backward (M-C-])}{20}{\code {character-search-backward (M-C-])}}
-\entry{skip-csi-sequence ()}{20}{\code {skip-csi-sequence ()}}
-\entry{insert-comment (M-#)}{20}{\code {insert-comment (M-#)}}
-\entry{dump-functions ()}{20}{\code {dump-functions ()}}
-\entry{dump-variables ()}{20}{\code {dump-variables ()}}
-\entry{dump-macros ()}{20}{\code {dump-macros ()}}
-\entry{emacs-editing-mode (C-e)}{20}{\code {emacs-editing-mode (C-e)}}
-\entry{vi-editing-mode (M-C-j)}{20}{\code {vi-editing-mode (M-C-j)}}
diff --git a/lib/readline/doc/rluserman.fns b/lib/readline/doc/rluserman.fns
deleted file mode 100644 (file)
index 06900a7..0000000
+++ /dev/null
@@ -1,97 +0,0 @@
-\initial {A}
-\entry {\code {abort (C-g)}}{19}
-\entry {\code {accept-line (Newline or Return)}}{14}
-\initial {B}
-\entry {\code {backward-char (C-b)}}{14}
-\entry {\code {backward-delete-char (Rubout)}}{16}
-\entry {\code {backward-kill-line (C-x Rubout)}}{17}
-\entry {\code {backward-kill-word (M-\key {DEL})}}{17}
-\entry {\code {backward-word (M-b)}}{14}
-\entry {\code {beginning-of-history (M-<)}}{15}
-\entry {\code {beginning-of-line (C-a)}}{14}
-\initial {C}
-\entry {\code {call-last-kbd-macro (C-x e)}}{19}
-\entry {\code {capitalize-word (M-c)}}{16}
-\entry {\code {character-search (C-])}}{20}
-\entry {\code {character-search-backward (M-C-])}}{20}
-\entry {\code {clear-screen (C-l)}}{14}
-\entry {\code {complete (\key {TAB})}}{18}
-\entry {\code {copy-backward-word ()}}{17}
-\entry {\code {copy-forward-word ()}}{18}
-\entry {\code {copy-region-as-kill ()}}{17}
-\initial {D}
-\entry {\code {delete-char (C-d)}}{16}
-\entry {\code {delete-char-or-list ()}}{19}
-\entry {\code {delete-horizontal-space ()}}{17}
-\entry {\code {digit-argument (\kbd {M-0}, \kbd {M-1}, \dots {} \kbd {M--})}}{18}
-\entry {\code {do-uppercase-version (M-a, M-b, M-\var {x}, \dots {})}}{19}
-\entry {\code {downcase-word (M-l)}}{16}
-\entry {\code {dump-functions ()}}{20}
-\entry {\code {dump-macros ()}}{20}
-\entry {\code {dump-variables ()}}{20}
-\initial {E}
-\entry {\code {emacs-editing-mode (C-e)}}{20}
-\entry {\code {end-kbd-macro (C-x ))}}{19}
-\entry {\code {end-of-history (M->)}}{15}
-\entry {\code {end-of-line (C-e)}}{14}
-\entry {\code {exchange-point-and-mark (C-x C-x)}}{20}
-\initial {F}
-\entry {\code {forward-backward-delete-char ()}}{16}
-\entry {\code {forward-char (C-f)}}{14}
-\entry {\code {forward-search-history (C-s)}}{15}
-\entry {\code {forward-word (M-f)}}{14}
-\initial {H}
-\entry {\code {history-search-backward ()}}{15}
-\entry {\code {history-search-forward ()}}{15}
-\initial {I}
-\entry {\code {insert-comment (M-#)}}{20}
-\entry {\code {insert-completions (M-*)}}{18}
-\initial {K}
-\entry {\code {kill-line (C-k)}}{17}
-\entry {\code {kill-region ()}}{17}
-\entry {\code {kill-whole-line ()}}{17}
-\entry {\code {kill-word (M-d)}}{17}
-\initial {M}
-\entry {\code {menu-complete ()}}{18}
-\entry {\code {menu-complete-backward ()}}{19}
-\initial {N}
-\entry {\code {next-history (C-n)}}{15}
-\entry {\code {non-incremental-forward-search-history (M-n)}}{15}
-\entry {\code {non-incremental-reverse-search-history (M-p)}}{15}
-\initial {O}
-\entry {\code {overwrite-mode ()}}{17}
-\initial {P}
-\entry {\code {possible-completions (M-?)}}{18}
-\entry {\code {prefix-meta (\key {ESC})}}{19}
-\entry {\code {previous-history (C-p)}}{14}
-\initial {Q}
-\entry {\code {quoted-insert (C-q or C-v)}}{16}
-\initial {R}
-\entry {\code {re-read-init-file (C-x C-r)}}{19}
-\entry {\code {redraw-current-line ()}}{14}
-\entry {\code {reverse-search-history (C-r)}}{15}
-\entry {\code {revert-line (M-r)}}{19}
-\initial {S}
-\entry {\code {self-insert (a, b, A, 1, !, \dots {})}}{16}
-\entry {\code {set-mark (C-@)}}{19}
-\entry {\code {skip-csi-sequence ()}}{20}
-\entry {\code {start-kbd-macro (C-x ()}}{19}
-\initial {T}
-\entry {\code {tab-insert (M-\key {TAB})}}{16}
-\entry {\code {tilde-expand (M-~)}}{19}
-\entry {\code {transpose-chars (C-t)}}{16}
-\entry {\code {transpose-words (M-t)}}{16}
-\initial {U}
-\entry {\code {undo (C-_ or C-x C-u)}}{19}
-\entry {\code {universal-argument ()}}{18}
-\entry {\code {unix-filename-rubout ()}}{17}
-\entry {\code {unix-line-discard (C-u)}}{17}
-\entry {\code {unix-word-rubout (C-w)}}{17}
-\entry {\code {upcase-word (M-u)}}{16}
-\initial {V}
-\entry {\code {vi-editing-mode (M-C-j)}}{20}
-\initial {Y}
-\entry {\code {yank (C-y)}}{18}
-\entry {\code {yank-last-arg (M-. or M-_)}}{15}
-\entry {\code {yank-nth-arg (M-C-y)}}{15}
-\entry {\code {yank-pop (M-y)}}{18}
diff --git a/lib/readline/doc/rluserman.html b/lib/readline/doc/rluserman.html
deleted file mode 100644 (file)
index 1e9c579..0000000
+++ /dev/null
@@ -1,2926 +0,0 @@
-<HTML>
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
-<!-- Created on February, 8  2011 by texi2html 1.64 -->
-<!-- 
-Written by: Lionel Cons <Lionel.Cons@cern.ch> (original author)
-            Karl Berry  <karl@freefriends.org>
-            Olaf Bachmann <obachman@mathematik.uni-kl.de>
-            and many others.
-Maintained by: Olaf Bachmann <obachman@mathematik.uni-kl.de>
-Send bugs and suggestions to <texi2html@mathematik.uni-kl.de>
--->
-<HEAD>
-<TITLE>GNU Readline Library: </TITLE>
-
-<META NAME="description" CONTENT="GNU Readline Library: ">
-<META NAME="keywords" CONTENT="GNU Readline Library: ">
-<META NAME="resource-type" CONTENT="document">
-<META NAME="distribution" CONTENT="global">
-<META NAME="Generator" CONTENT="texi2html 1.64">
-
-</HEAD>
-
-<BODY LANG="" BGCOLOR="#FFFFFF" TEXT="#000000" LINK="#0000FF" VLINK="#800080" ALINK="#FF0000">
-
-<A NAME="SEC_Top"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H1>GNU Readline Library</H1></P><P>
-
-This document describes the end user interface of the GNU Readline Library,
-a utility which aids in the consistency of user interface across discrete
-programs which provide a command line interface.
-</P><P>
-
-<BLOCKQUOTE><TABLE BORDER=0 CELLSPACING=0> 
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="rluserman.html#SEC1">1. Command Line Editing</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">GNU Readline User's Manual.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="rluserman.html#SEC23">A. GNU Free Documentation License</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">License for copying this manual.</TD></TR>
-</TABLE></BLOCKQUOTE>
-<P>
-
-<HR SIZE=1>
-<A NAME="SEC1"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Top"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC2"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[ &lt;&lt; ]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Top"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC23"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<A NAME="Command Line Editing"></A>
-<H1> 1. Command Line Editing </H1>
-<!--docid::SEC1::-->
-<P>
-
-This chapter describes the basic features of the GNU
-command line editing interface.
-</P><P>
-
-<BLOCKQUOTE><TABLE BORDER=0 CELLSPACING=0> 
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="rluserman.html#SEC2">1.1 Introduction to Line Editing</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Notation used in this text.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="rluserman.html#SEC3">1.2 Readline Interaction</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">The minimum set of commands for editing a line.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="rluserman.html#SEC9">1.3 Readline Init File</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Customizing Readline from a user's view.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="rluserman.html#SEC13">1.4 Bindable Readline Commands</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">A description of most of the Readline commands
-                               available for binding</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="rluserman.html#SEC22">1.5 Readline vi Mode</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">A short description of how to make Readline
-                               behave like the vi editor.</TD></TR>
-</TABLE></BLOCKQUOTE>
-<P>
-
-<A NAME="Introduction and Notation"></A>
-<HR SIZE="6">
-<A NAME="SEC2"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC1"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC3"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[ &lt;&lt; ]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC1"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC23"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H2> 1.1 Introduction to Line Editing </H2>
-<!--docid::SEC2::-->
-<P>
-
-The following paragraphs describe the notation used to represent
-keystrokes.
-</P><P>
-
-The text <KBD>C-k</KBD> is read as `Control-K' and describes the character
-produced when the <KBD>k</KBD> key is pressed while the Control key
-is depressed.
-</P><P>
-
-The text <KBD>M-k</KBD> is read as `Meta-K' and describes the character
-produced when the Meta key (if you have one) is depressed, and the <KBD>k</KBD>
-key is pressed.
-The Meta key is labeled <KBD>ALT</KBD> on many keyboards.
-On keyboards with two keys labeled <KBD>ALT</KBD> (usually to either side of
-the space bar), the <KBD>ALT</KBD> on the left side is generally set to
-work as a Meta key.
-The <KBD>ALT</KBD> key on the right may also be configured to work as a
-Meta key or may be configured as some other modifier, such as a
-Compose key for typing accented characters.
-</P><P>
-
-If you do not have a Meta or <KBD>ALT</KBD> key, or another key working as
-a Meta key, the identical keystroke can be generated by typing <KBD>ESC</KBD>
-<EM>first</EM>, and then typing <KBD>k</KBD>.
-Either process is known as <EM>metafying</EM> the <KBD>k</KBD> key.
-</P><P>
-
-The text <KBD>M-C-k</KBD> is read as `Meta-Control-k' and describes the
-character produced by <EM>metafying</EM> <KBD>C-k</KBD>.
-</P><P>
-
-In addition, several keys have their own names.  Specifically,
-<KBD>DEL</KBD>, <KBD>ESC</KBD>, <KBD>LFD</KBD>, <KBD>SPC</KBD>, <KBD>RET</KBD>, and <KBD>TAB</KBD> all
-stand for themselves when seen in this text, or in an init file
-(see section <A HREF="rluserman.html#SEC9">1.3 Readline Init File</A>).
-If your keyboard lacks a <KBD>LFD</KBD> key, typing <KBD>C-j</KBD> will
-produce the desired character.
-The <KBD>RET</KBD> key may be labeled <KBD>Return</KBD> or <KBD>Enter</KBD> on
-some keyboards.
-</P><P>
-
-<A NAME="Readline Interaction"></A>
-<HR SIZE="6">
-<A NAME="SEC3"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC2"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC4"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC9"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC1"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC9"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H2> 1.2 Readline Interaction </H2>
-<!--docid::SEC3::-->
-<P>
-
-Often during an interactive session you type in a long line of text,
-only to notice that the first word on the line is misspelled.  The
-Readline library gives you a set of commands for manipulating the text
-as you type it in, allowing you to just fix your typo, and not forcing
-you to retype the majority of the line.  Using these editing commands,
-you move the cursor to the place that needs correction, and delete or
-insert the text of the corrections.  Then, when you are satisfied with
-the line, you simply press <KBD>RET</KBD>.  You do not have to be at the
-end of the line to press <KBD>RET</KBD>; the entire line is accepted
-regardless of the location of the cursor within the line.
-</P><P>
-
-<BLOCKQUOTE><TABLE BORDER=0 CELLSPACING=0> 
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="rluserman.html#SEC4">1.2.1 Readline Bare Essentials</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">The least you need to know about Readline.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="rluserman.html#SEC5">1.2.2 Readline Movement Commands</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Moving about the input line.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="rluserman.html#SEC6">1.2.3 Readline Killing Commands</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">How to delete text, and how to get it back!</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="rluserman.html#SEC7">1.2.4 Readline Arguments</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Giving numeric arguments to commands.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="rluserman.html#SEC8">1.2.5 Searching for Commands in the History</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Searching through previous lines.</TD></TR>
-</TABLE></BLOCKQUOTE>
-<P>
-
-<A NAME="Readline Bare Essentials"></A>
-<HR SIZE="6">
-<A NAME="SEC4"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC3"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC5"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC9"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC3"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC9"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H3> 1.2.1 Readline Bare Essentials </H3>
-<!--docid::SEC4::-->
-<P>
-
-In order to enter characters into the line, simply type them.  The typed
-character appears where the cursor was, and then the cursor moves one
-space to the right.  If you mistype a character, you can use your
-erase character to back up and delete the mistyped character.
-</P><P>
-
-Sometimes you may mistype a character, and
-not notice the error until you have typed several other characters.  In
-that case, you can type <KBD>C-b</KBD> to move the cursor to the left, and then
-correct your mistake.  Afterwards, you can move the cursor to the right
-with <KBD>C-f</KBD>.
-</P><P>
-
-When you add text in the middle of a line, you will notice that characters
-to the right of the cursor are `pushed over' to make room for the text
-that you have inserted.  Likewise, when you delete text behind the cursor,
-characters to the right of the cursor are `pulled back' to fill in the
-blank space created by the removal of the text.  A list of the bare
-essentials for editing the text of an input line follows.
-</P><P>
-
-<DL COMPACT>
-<DT><KBD>C-b</KBD>
-<DD>Move back one character.
-<DT><KBD>C-f</KBD>
-<DD>Move forward one character.
-<DT><KBD>DEL</KBD> or <KBD>Backspace</KBD>
-<DD>Delete the character to the left of the cursor.
-<DT><KBD>C-d</KBD>
-<DD>Delete the character underneath the cursor.
-<DT>Printing characters
-<DD>Insert the character into the line at the cursor.
-<DT><KBD>C-_</KBD> or <KBD>C-x C-u</KBD>
-<DD>Undo the last editing command.  You can undo all the way back to an
-empty line.
-</DL>
-<P>
-
-(Depending on your configuration, the <KBD>Backspace</KBD> key be set to
-delete the character to the left of the cursor and the <KBD>DEL</KBD> key set
-to delete the character underneath the cursor, like <KBD>C-d</KBD>, rather
-than the character to the left of the cursor.)
-</P><P>
-
-<A NAME="Readline Movement Commands"></A>
-<HR SIZE="6">
-<A NAME="SEC5"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC4"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC6"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC6"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC3"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC9"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H3> 1.2.2 Readline Movement Commands </H3>
-<!--docid::SEC5::-->
-<P>
-
-The above table describes the most basic keystrokes that you need
-in order to do editing of the input line.  For your convenience, many
-other commands have been added in addition to <KBD>C-b</KBD>, <KBD>C-f</KBD>,
-<KBD>C-d</KBD>, and <KBD>DEL</KBD>.  Here are some commands for moving more rapidly
-about the line.
-</P><P>
-
-<DL COMPACT>
-<DT><KBD>C-a</KBD>
-<DD>Move to the start of the line.
-<DT><KBD>C-e</KBD>
-<DD>Move to the end of the line.
-<DT><KBD>M-f</KBD>
-<DD>Move forward a word, where a word is composed of letters and digits.
-<DT><KBD>M-b</KBD>
-<DD>Move backward a word.
-<DT><KBD>C-l</KBD>
-<DD>Clear the screen, reprinting the current line at the top.
-</DL>
-<P>
-
-Notice how <KBD>C-f</KBD> moves forward a character, while <KBD>M-f</KBD> moves
-forward a word.  It is a loose convention that control keystrokes
-operate on characters while meta keystrokes operate on words.
-</P><P>
-
-<A NAME="Readline Killing Commands"></A>
-<HR SIZE="6">
-<A NAME="SEC6"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC5"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC7"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC7"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC3"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC9"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H3> 1.2.3 Readline Killing Commands </H3>
-<!--docid::SEC6::-->
-<P>
-
-<A NAME="IDX1"></A>
-<A NAME="IDX2"></A>
-</P><P>
-
-<EM>Killing</EM> text means to delete the text from the line, but to save
-it away for later use, usually by <EM>yanking</EM> (re-inserting)
-it back into the line.
-(`Cut' and `paste' are more recent jargon for `kill' and `yank'.)
-</P><P>
-
-If the description for a command says that it `kills' text, then you can
-be sure that you can get the text back in a different (or the same)
-place later.
-</P><P>
-
-When you use a kill command, the text is saved in a <EM>kill-ring</EM>.
-Any number of consecutive kills save all of the killed text together, so
-that when you yank it back, you get it all.  The kill
-ring is not line specific; the text that you killed on a previously
-typed line is available to be yanked back later, when you are typing
-another line.
-<A NAME="IDX3"></A>
-</P><P>
-
-Here is the list of commands for killing text.
-</P><P>
-
-<DL COMPACT>
-<DT><KBD>C-k</KBD>
-<DD>Kill the text from the current cursor position to the end of the line.
-<P>
-
-<DT><KBD>M-d</KBD>
-<DD>Kill from the cursor to the end of the current word, or, if between
-words, to the end of the next word.
-Word boundaries are the same as those used by <KBD>M-f</KBD>.
-<P>
-
-<DT><KBD>M-<KBD>DEL</KBD></KBD>
-<DD>Kill from the cursor the start of the current word, or, if between
-words, to the start of the previous word.
-Word boundaries are the same as those used by <KBD>M-b</KBD>.
-<P>
-
-<DT><KBD>C-w</KBD>
-<DD>Kill from the cursor to the previous whitespace.  This is different than
-<KBD>M-<KBD>DEL</KBD></KBD> because the word boundaries differ.
-<P>
-
-</DL>
-<P>
-
-Here is how to <EM>yank</EM> the text back into the line.  Yanking
-means to copy the most-recently-killed text from the kill buffer.
-</P><P>
-
-<DL COMPACT>
-<DT><KBD>C-y</KBD>
-<DD>Yank the most recently killed text back into the buffer at the cursor.
-<P>
-
-<DT><KBD>M-y</KBD>
-<DD>Rotate the kill-ring, and yank the new top.  You can only do this if
-the prior command is <KBD>C-y</KBD> or <KBD>M-y</KBD>.
-</DL>
-<P>
-
-<A NAME="Readline Arguments"></A>
-<HR SIZE="6">
-<A NAME="SEC7"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC6"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC8"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC8"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC3"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC9"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H3> 1.2.4 Readline Arguments </H3>
-<!--docid::SEC7::-->
-<P>
-
-You can pass numeric arguments to Readline commands.  Sometimes the
-argument acts as a repeat count, other times it is the <I>sign</I> of the
-argument that is significant.  If you pass a negative argument to a
-command which normally acts in a forward direction, that command will
-act in a backward direction.  For example, to kill text back to the
-start of the line, you might type <SAMP>`M-- C-k'</SAMP>.
-</P><P>
-
-The general way to pass numeric arguments to a command is to type meta
-digits before the command.  If the first `digit' typed is a minus
-sign (<SAMP>`-'</SAMP>), then the sign of the argument will be negative.  Once
-you have typed one meta digit to get the argument started, you can type
-the remainder of the digits, and then the command.  For example, to give
-the <KBD>C-d</KBD> command an argument of 10, you could type <SAMP>`M-1 0 C-d'</SAMP>,
-which will delete the next ten characters on the input line.
-</P><P>
-
-<A NAME="Searching"></A>
-<HR SIZE="6">
-<A NAME="SEC8"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC7"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC9"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC9"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC3"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC9"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H3> 1.2.5 Searching for Commands in the History </H3>
-<!--docid::SEC8::-->
-<P>
-
-Readline provides commands for searching through the command history
-for lines containing a specified string.
-There are two search modes:  <EM>incremental</EM> and <EM>non-incremental</EM>.
-</P><P>
-
-Incremental searches begin before the user has finished typing the
-search string.
-As each character of the search string is typed, Readline displays
-the next entry from the history matching the string typed so far.
-An incremental search requires only as many characters as needed to
-find the desired history entry.
-To search backward in the history for a particular string, type
-<KBD>C-r</KBD>.  Typing <KBD>C-s</KBD> searches forward through the history.
-The characters present in the value of the <CODE>isearch-terminators</CODE> variable
-are used to terminate an incremental search.
-If that variable has not been assigned a value, the <KBD>ESC</KBD> and
-<KBD>C-J</KBD> characters will terminate an incremental search.
-<KBD>C-g</KBD> will abort an incremental search and restore the original line.
-When the search is terminated, the history entry containing the
-search string becomes the current line.
-</P><P>
-
-To find other matching entries in the history list, type <KBD>C-r</KBD> or
-<KBD>C-s</KBD> as appropriate.
-This will search backward or forward in the history for the next
-entry matching the search string typed so far.
-Any other key sequence bound to a Readline command will terminate
-the search and execute that command.
-For instance, a <KBD>RET</KBD> will terminate the search and accept
-the line, thereby executing the command from the history list.
-A movement command will terminate the search, make the last line found
-the current line, and begin editing.
-</P><P>
-
-Readline remembers the last incremental search string.  If two
-<KBD>C-r</KBD>s are typed without any intervening characters defining a new
-search string, any remembered search string is used.
-</P><P>
-
-Non-incremental searches read the entire search string before starting
-to search for matching history lines.  The search string may be
-typed by the user or be part of the contents of the current line.
-</P><P>
-
-<A NAME="Readline Init File"></A>
-<HR SIZE="6">
-<A NAME="SEC9"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC8"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC10"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC13"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC1"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC13"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H2> 1.3 Readline Init File </H2>
-<!--docid::SEC9::-->
-<P>
-
-Although the Readline library comes with a set of Emacs-like
-keybindings installed by default, it is possible to use a different set
-of keybindings.
-Any user can customize programs that use Readline by putting
-commands in an <EM>inputrc</EM> file, conventionally in his home directory.
-The name of this
-file is taken from the value of the environment variable <CODE>INPUTRC</CODE>.  If
-that variable is unset, the default is <TT>`~/.inputrc'</TT>.  If that
-file does not exist or cannot be read, the ultimate default is
-<TT>`/etc/inputrc'</TT>.
-</P><P>
-
-When a program which uses the Readline library starts up, the
-init file is read, and the key bindings are set.
-</P><P>
-
-In addition, the <CODE>C-x C-r</CODE> command re-reads this init file, thus
-incorporating any changes that you might have made to it.
-</P><P>
-
-<BLOCKQUOTE><TABLE BORDER=0 CELLSPACING=0> 
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="rluserman.html#SEC10">1.3.1 Readline Init File Syntax</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Syntax for the commands in the inputrc file.</TD></TR>
-</TABLE>
-
-<br>
-<TABLE BORDER=0 CELLSPACING=0>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="rluserman.html#SEC11">1.3.2 Conditional Init Constructs</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Conditional key bindings in the inputrc file.</TD></TR>
-</TABLE>
-
-<br>
-<TABLE BORDER=0 CELLSPACING=0>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="rluserman.html#SEC12">1.3.3 Sample Init File</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">An example inputrc file.</TD></TR>
-</TABLE></BLOCKQUOTE>
-<P>
-
-<A NAME="Readline Init File Syntax"></A>
-<HR SIZE="6">
-<A NAME="SEC10"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC9"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC11"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC13"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC9"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC13"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H3> 1.3.1 Readline Init File Syntax </H3>
-<!--docid::SEC10::-->
-<P>
-
-There are only a few basic constructs allowed in the
-Readline init file.  Blank lines are ignored.
-Lines beginning with a <SAMP>`#'</SAMP> are comments.
-Lines beginning with a <SAMP>`$'</SAMP> indicate conditional
-constructs (see section <A HREF="rluserman.html#SEC11">1.3.2 Conditional Init Constructs</A>).  Other lines
-denote variable settings and key bindings.
-</P><P>
-
-<DL COMPACT>
-<DT>Variable Settings
-<DD>You can modify the run-time behavior of Readline by
-altering the values of variables in Readline
-using the <CODE>set</CODE> command within the init file.
-The syntax is simple:
-<P>
-
-<TABLE><tr><td>&nbsp;</td><td class=example><pre>set <VAR>variable</VAR> <VAR>value</VAR>
-</pre></td></tr></table></P><P>
-
-Here, for example, is how to
-change from the default Emacs-like key binding to use
-<CODE>vi</CODE> line editing commands:
-</P><P>
-
-<TABLE><tr><td>&nbsp;</td><td class=example><pre>set editing-mode vi
-</pre></td></tr></table></P><P>
-
-Variable names and values, where appropriate, are recognized without regard
-to case.  Unrecognized variable names are ignored.
-</P><P>
-
-Boolean variables (those that can be set to on or off) are set to on if
-the value is null or empty, <VAR>on</VAR> (case-insensitive), or 1.  Any other
-value results in the variable being set to off.
-</P><P>
-
-A great deal of run-time behavior is changeable with the following
-variables.
-</P><P>
-
-<A NAME="IDX4"></A>
-<DL COMPACT>
-
-<DT><CODE>bell-style</CODE>
-<DD><A NAME="IDX5"></A>
-Controls what happens when Readline wants to ring the terminal bell.
-If set to <SAMP>`none'</SAMP>, Readline never rings the bell.  If set to
-<SAMP>`visible'</SAMP>, Readline uses a visible bell if one is available.
-If set to <SAMP>`audible'</SAMP> (the default), Readline attempts to ring
-the terminal's bell.
-<P>
-
-<DT><CODE>bind-tty-special-chars</CODE>
-<DD><A NAME="IDX6"></A>
-If set to <SAMP>`on'</SAMP>, Readline attempts to bind the control characters  
-treated specially by the kernel's terminal driver to their Readline
-equivalents.
-<P>
-
-<DT><CODE>comment-begin</CODE>
-<DD><A NAME="IDX7"></A>
-The string to insert at the beginning of the line when the
-<CODE>insert-comment</CODE> command is executed.  The default value
-is <CODE>"#"</CODE>.
-<P>
-
-<DT><CODE>completion-display-width</CODE>
-<DD><A NAME="IDX8"></A>
-The number of screen columns used to display possible matches
-when performing completion.
-The value is ignored if it is less than 0 or greater than the terminal
-screen width.
-A value of 0 will cause matches to be displayed one per line.
-The default value is -1.
-<P>
-
-<DT><CODE>completion-ignore-case</CODE>
-<DD><A NAME="IDX9"></A>
-If set to <SAMP>`on'</SAMP>, Readline performs filename matching and completion
-in a case-insensitive fashion.
-The default value is <SAMP>`off'</SAMP>.
-<P>
-
-<DT><CODE>completion-map-case</CODE>
-<DD><A NAME="IDX10"></A>
-If set to <SAMP>`on'</SAMP>, and <VAR>completion-ignore-case</VAR> is enabled, Readline
-treats hyphens (<SAMP>`-'</SAMP>) and underscores (<SAMP>`_'</SAMP>) as equivalent when
-performing case-insensitive filename matching and completion.
-<P>
-
-<DT><CODE>completion-prefix-display-length</CODE>
-<DD><A NAME="IDX11"></A>
-The length in characters of the common prefix of a list of possible
-completions that is displayed without modification.  When set to a
-value greater than zero, common prefixes longer than this value are
-replaced with an ellipsis when displaying possible completions.
-<P>
-
-<DT><CODE>completion-query-items</CODE>
-<DD><A NAME="IDX12"></A>
-The number of possible completions that determines when the user is
-asked whether the list of possibilities should be displayed.
-If the number of possible completions is greater than this value,
-Readline will ask the user whether or not he wishes to view
-them; otherwise, they are simply listed.
-This variable must be set to an integer value greater than or equal to 0.
-A negative value means Readline should never ask.
-The default limit is <CODE>100</CODE>.
-<P>
-
-<DT><CODE>convert-meta</CODE>
-<DD><A NAME="IDX13"></A>
-If set to <SAMP>`on'</SAMP>, Readline will convert characters with the
-eighth bit set to an ASCII key sequence by stripping the eighth
-bit and prefixing an <KBD>ESC</KBD> character, converting them to a
-meta-prefixed key sequence.  The default value is <SAMP>`on'</SAMP>.
-<P>
-
-<DT><CODE>disable-completion</CODE>
-<DD><A NAME="IDX14"></A>
-If set to <SAMP>`On'</SAMP>, Readline will inhibit word completion.
-Completion  characters will be inserted into the line as if they had
-been mapped to <CODE>self-insert</CODE>.  The default is <SAMP>`off'</SAMP>.
-<P>
-
-<DT><CODE>editing-mode</CODE>
-<DD><A NAME="IDX15"></A>
-The <CODE>editing-mode</CODE> variable controls which default set of
-key bindings is used.  By default, Readline starts up in Emacs editing
-mode, where the keystrokes are most similar to Emacs.  This variable can be
-set to either <SAMP>`emacs'</SAMP> or <SAMP>`vi'</SAMP>.
-<P>
-
-<DT><CODE>echo-control-characters</CODE>
-<DD>When set to <SAMP>`on'</SAMP>, on operating systems that indicate they support it,
-readline echoes a character corresponding to a signal generated from the
-keyboard.  The default is <SAMP>`on'</SAMP>.
-<P>
-
-<DT><CODE>enable-keypad</CODE>
-<DD><A NAME="IDX16"></A>
-When set to <SAMP>`on'</SAMP>, Readline will try to enable the application
-keypad when it is called.  Some systems need this to enable the
-arrow keys.  The default is <SAMP>`off'</SAMP>.
-<P>
-
-<DT><CODE>enable-meta-key</CODE>
-<DD>When set to <SAMP>`on'</SAMP>, Readline will try to enable any meta modifier
-key the terminal claims to support when it is called.  On many terminals,
-the meta key is used to send eight-bit characters.
-The default is <SAMP>`on'</SAMP>.
-<P>
-
-<DT><CODE>expand-tilde</CODE>
-<DD><A NAME="IDX17"></A>
-If set to <SAMP>`on'</SAMP>, tilde expansion is performed when Readline
-attempts word completion.  The default is <SAMP>`off'</SAMP>.
-<P>
-
-<DT><CODE>history-preserve-point</CODE>
-<DD><A NAME="IDX18"></A>
-If set to <SAMP>`on'</SAMP>, the history code attempts to place the point (the
-current cursor position) at the
-same location on each history line retrieved with <CODE>previous-history</CODE>
-or <CODE>next-history</CODE>.  The default is <SAMP>`off'</SAMP>.
-<P>
-
-<DT><CODE>history-size</CODE>
-<DD><A NAME="IDX19"></A>
-Set the maximum number of history entries saved in the history list.  If
-set to zero, the number of entries in the history list is not limited.
-<P>
-
-<DT><CODE>horizontal-scroll-mode</CODE>
-<DD><A NAME="IDX20"></A>
-This variable can be set to either <SAMP>`on'</SAMP> or <SAMP>`off'</SAMP>.  Setting it
-to <SAMP>`on'</SAMP> means that the text of the lines being edited will scroll
-horizontally on a single screen line when they are longer than the width
-of the screen, instead of wrapping onto a new screen line.  By default,
-this variable is set to <SAMP>`off'</SAMP>.
-<P>
-
-<DT><CODE>input-meta</CODE>
-<DD><A NAME="IDX21"></A>
-<A NAME="IDX22"></A>
-If set to <SAMP>`on'</SAMP>, Readline will enable eight-bit input (it
-will not clear the eighth bit in the characters it reads),
-regardless of what the terminal claims it can support.  The
-default value is <SAMP>`off'</SAMP>.  The name <CODE>meta-flag</CODE> is a
-synonym for this variable.
-<P>
-
-<DT><CODE>isearch-terminators</CODE>
-<DD><A NAME="IDX23"></A>
-The string of characters that should terminate an incremental search without
-subsequently executing the character as a command (see section <A HREF="rluserman.html#SEC8">1.2.5 Searching for Commands in the History</A>).
-If this variable has not been given a value, the characters <KBD>ESC</KBD> and
-<KBD>C-J</KBD> will terminate an incremental search.
-<P>
-
-<DT><CODE>keymap</CODE>
-<DD><A NAME="IDX24"></A>
-Sets Readline's idea of the current keymap for key binding commands.
-Acceptable <CODE>keymap</CODE> names are
-<CODE>emacs</CODE>,
-<CODE>emacs-standard</CODE>,
-<CODE>emacs-meta</CODE>,
-<CODE>emacs-ctlx</CODE>,
-<CODE>vi</CODE>,
-<CODE>vi-move</CODE>,
-<CODE>vi-command</CODE>, and
-<CODE>vi-insert</CODE>.
-<CODE>vi</CODE> is equivalent to <CODE>vi-command</CODE>; <CODE>emacs</CODE> is
-equivalent to <CODE>emacs-standard</CODE>.  The default value is <CODE>emacs</CODE>.
-The value of the <CODE>editing-mode</CODE> variable also affects the
-default keymap.
-<P>
-
-<DT><CODE>mark-directories</CODE>
-<DD>If set to <SAMP>`on'</SAMP>, completed directory names have a slash
-appended.  The default is <SAMP>`on'</SAMP>.
-<P>
-
-<DT><CODE>mark-modified-lines</CODE>
-<DD><A NAME="IDX25"></A>
-This variable, when set to <SAMP>`on'</SAMP>, causes Readline to display an
-asterisk (<SAMP>`*'</SAMP>) at the start of history lines which have been modified.
-This variable is <SAMP>`off'</SAMP> by default.
-<P>
-
-<DT><CODE>mark-symlinked-directories</CODE>
-<DD><A NAME="IDX26"></A>
-If set to <SAMP>`on'</SAMP>, completed names which are symbolic links
-to directories have a slash appended (subject to the value of
-<CODE>mark-directories</CODE>).
-The default is <SAMP>`off'</SAMP>.
-<P>
-
-<DT><CODE>match-hidden-files</CODE>
-<DD><A NAME="IDX27"></A>
-This variable, when set to <SAMP>`on'</SAMP>, causes Readline to match files whose
-names begin with a <SAMP>`.'</SAMP> (hidden files) when performing filename
-completion.
-If set to <SAMP>`off'</SAMP>, the leading <SAMP>`.'</SAMP> must be
-supplied by the user in the filename to be completed.
-This variable is <SAMP>`on'</SAMP> by default.
-<P>
-
-<DT><CODE>menu-complete-display-prefix</CODE>
-<DD><A NAME="IDX28"></A>
-If set to <SAMP>`on'</SAMP>, menu completion displays the common prefix of the
-list of possible completions (which may be empty) before cycling through
-the list.  The default is <SAMP>`off'</SAMP>.
-<P>
-
-<DT><CODE>output-meta</CODE>
-<DD><A NAME="IDX29"></A>
-If set to <SAMP>`on'</SAMP>, Readline will display characters with the
-eighth bit set directly rather than as a meta-prefixed escape
-sequence.  The default is <SAMP>`off'</SAMP>.
-<P>
-
-<DT><CODE>page-completions</CODE>
-<DD><A NAME="IDX30"></A>
-If set to <SAMP>`on'</SAMP>, Readline uses an internal <CODE>more</CODE>-like pager
-to display a screenful of possible completions at a time.
-This variable is <SAMP>`on'</SAMP> by default.
-<P>
-
-<DT><CODE>print-completions-horizontally</CODE>
-<DD>If set to <SAMP>`on'</SAMP>, Readline will display completions with matches
-sorted horizontally in alphabetical order, rather than down the screen.
-The default is <SAMP>`off'</SAMP>.
-<P>
-
-<DT><CODE>revert-all-at-newline</CODE>
-<DD><A NAME="IDX31"></A>
-If set to <SAMP>`on'</SAMP>, Readline will undo all changes to history lines
-before returning when <CODE>accept-line</CODE> is executed.  By default,
-history lines may be modified and retain individual undo lists across
-calls to <CODE>readline</CODE>.  The default is <SAMP>`off'</SAMP>.
-<P>
-
-<DT><CODE>show-all-if-ambiguous</CODE>
-<DD><A NAME="IDX32"></A>
-This alters the default behavior of the completion functions.  If
-set to <SAMP>`on'</SAMP>, 
-words which have more than one possible completion cause the
-matches to be listed immediately instead of ringing the bell.
-The default value is <SAMP>`off'</SAMP>.
-<P>
-
-<DT><CODE>show-all-if-unmodified</CODE>
-<DD><A NAME="IDX33"></A>
-This alters the default behavior of the completion functions in
-a fashion similar to <VAR>show-all-if-ambiguous</VAR>.
-If set to <SAMP>`on'</SAMP>, 
-words which have more than one possible completion without any
-possible partial completion (the possible completions don't share
-a common prefix) cause the matches to be listed immediately instead
-of ringing the bell.
-The default value is <SAMP>`off'</SAMP>.
-<P>
-
-<DT><CODE>skip-completed-text</CODE>
-<DD><A NAME="IDX34"></A>
-If set to <SAMP>`on'</SAMP>, this alters the default completion behavior when
-inserting a single match into the line.  It's only active when
-performing completion in the middle of a word.  If enabled, readline
-does not insert characters from the completion that match characters
-after point in the word being completed, so portions of the word
-following the cursor are not duplicated.
-For instance, if this is enabled, attempting completion when the cursor
-is after the <SAMP>`e'</SAMP> in <SAMP>`Makefile'</SAMP> will result in <SAMP>`Makefile'</SAMP>
-rather than <SAMP>`Makefilefile'</SAMP>, assuming there is a single possible
-completion.
-The default value is <SAMP>`off'</SAMP>.
-<P>
-
-<DT><CODE>visible-stats</CODE>
-<DD><A NAME="IDX35"></A>
-If set to <SAMP>`on'</SAMP>, a character denoting a file's type
-is appended to the filename when listing possible
-completions.  The default is <SAMP>`off'</SAMP>.
-<P>
-
-</DL>
-<P>
-
-<DT>Key Bindings
-<DD>The syntax for controlling key bindings in the init file is
-simple.  First you need to find the name of the command that you
-want to change.  The following sections contain tables of the command
-name, the default keybinding, if any, and a short description of what
-the command does.
-<P>
-
-Once you know the name of the command, simply place on a line
-in the init file the name of the key
-you wish to bind the command to, a colon, and then the name of the
-command.
-There can be no space between the key name and the colon -- that will be
-interpreted as part of the key name.
-The name of the key can be expressed in different ways, depending on
-what you find most comfortable.
-</P><P>
-
-In addition to command names, readline allows keys to be bound
-to a string that is inserted when the key is pressed (a <VAR>macro</VAR>).
-</P><P>
-
-<DL COMPACT>
-<DT><VAR>keyname</VAR>: <VAR>function-name</VAR> or <VAR>macro</VAR>
-<DD><VAR>keyname</VAR> is the name of a key spelled out in English.  For example:
-<TABLE><tr><td>&nbsp;</td><td class=example><pre>Control-u: universal-argument
-Meta-Rubout: backward-kill-word
-Control-o: "&#62; output"
-</pre></td></tr></table><P>
-
-In the above example, <KBD>C-u</KBD> is bound to the function
-<CODE>universal-argument</CODE>,
-<KBD>M-DEL</KBD> is bound to the function <CODE>backward-kill-word</CODE>, and
-<KBD>C-o</KBD> is bound to run the macro
-expressed on the right hand side (that is, to insert the text
-<SAMP>`&#62; output'</SAMP> into the line).
-</P><P>
-
-A number of symbolic character names are recognized while
-processing this key binding syntax:
-<VAR>DEL</VAR>,
-<VAR>ESC</VAR>,
-<VAR>ESCAPE</VAR>,
-<VAR>LFD</VAR>,
-<VAR>NEWLINE</VAR>,
-<VAR>RET</VAR>,
-<VAR>RETURN</VAR>,
-<VAR>RUBOUT</VAR>,
-<VAR>SPACE</VAR>,
-<VAR>SPC</VAR>,
-and
-<VAR>TAB</VAR>.
-</P><P>
-
-<DT>"<VAR>keyseq</VAR>": <VAR>function-name</VAR> or <VAR>macro</VAR>
-<DD><VAR>keyseq</VAR> differs from <VAR>keyname</VAR> above in that strings
-denoting an entire key sequence can be specified, by placing
-the key sequence in double quotes.  Some GNU Emacs style key
-escapes can be used, as in the following example, but the
-special character names are not recognized.
-<P>
-
-<TABLE><tr><td>&nbsp;</td><td class=example><pre>"\C-u": universal-argument
-"\C-x\C-r": re-read-init-file
-"\e[11~": "Function Key 1"
-</pre></td></tr></table></P><P>
-
-In the above example, <KBD>C-u</KBD> is again bound to the function
-<CODE>universal-argument</CODE> (just as it was in the first example),
-<SAMP>`<KBD>C-x</KBD> <KBD>C-r</KBD>'</SAMP> is bound to the function <CODE>re-read-init-file</CODE>,
-and <SAMP>`<KBD>ESC</KBD> <KBD>[</KBD> <KBD>1</KBD> <KBD>1</KBD> <KBD>~</KBD>'</SAMP> is bound to insert
-the text <SAMP>`Function Key 1'</SAMP>.
-</P><P>
-
-</DL>
-<P>
-
-The following GNU Emacs style escape sequences are available when
-specifying key sequences:
-</P><P>
-
-<DL COMPACT>
-<DT><CODE><KBD>\C-</KBD></CODE>
-<DD>control prefix
-<DT><CODE><KBD>\M-</KBD></CODE>
-<DD>meta prefix
-<DT><CODE><KBD>\e</KBD></CODE>
-<DD>an escape character
-<DT><CODE><KBD>\\</KBD></CODE>
-<DD>backslash
-<DT><CODE><KBD>\"</KBD></CODE>
-<DD><KBD>"</KBD>, a double quotation mark
-<DT><CODE><KBD>\'</KBD></CODE>
-<DD><KBD>'</KBD>, a single quote or apostrophe
-</DL>
-<P>
-
-In addition to the GNU Emacs style escape sequences, a second
-set of backslash escapes is available:
-</P><P>
-
-<DL COMPACT>
-<DT><CODE>\a</CODE>
-<DD>alert (bell)
-<DT><CODE>\b</CODE>
-<DD>backspace
-<DT><CODE>\d</CODE>
-<DD>delete
-<DT><CODE>\f</CODE>
-<DD>form feed
-<DT><CODE>\n</CODE>
-<DD>newline
-<DT><CODE>\r</CODE>
-<DD>carriage return
-<DT><CODE>\t</CODE>
-<DD>horizontal tab
-<DT><CODE>\v</CODE>
-<DD>vertical tab
-<DT><CODE>\<VAR>nnn</VAR></CODE>
-<DD>the eight-bit character whose value is the octal value <VAR>nnn</VAR>
-(one to three digits)
-<DT><CODE>\x<VAR>HH</VAR></CODE>
-<DD>the eight-bit character whose value is the hexadecimal value <VAR>HH</VAR>
-(one or two hex digits)
-</DL>
-<P>
-
-When entering the text of a macro, single or double quotes must
-be used to indicate a macro definition.
-Unquoted text is assumed to be a function name.
-In the macro body, the backslash escapes described above are expanded.
-Backslash will quote any other character in the macro text,
-including <SAMP>`"'</SAMP> and <SAMP>`''</SAMP>.
-For example, the following binding will make <SAMP>`<KBD>C-x</KBD> \'</SAMP>
-insert a single <SAMP>`\'</SAMP> into the line:
-<TABLE><tr><td>&nbsp;</td><td class=example><pre>"\C-x\\": "\\"
-</pre></td></tr></table></P><P>
-
-</DL>
-<P>
-
-<A NAME="Conditional Init Constructs"></A>
-<HR SIZE="6">
-<A NAME="SEC11"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC10"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC12"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC12"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC9"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC13"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H3> 1.3.2 Conditional Init Constructs </H3>
-<!--docid::SEC11::-->
-<P>
-
-Readline implements a facility similar in spirit to the conditional
-compilation features of the C preprocessor which allows key
-bindings and variable settings to be performed as the result
-of tests.  There are four parser directives used.
-</P><P>
-
-<DL COMPACT>
-<DT><CODE>$if</CODE>
-<DD>The <CODE>$if</CODE> construct allows bindings to be made based on the
-editing mode, the terminal being used, or the application using
-Readline.  The text of the test extends to the end of the line;
-no characters are required to isolate it.
-<P>
-
-<DL COMPACT>
-<DT><CODE>mode</CODE>
-<DD>The <CODE>mode=</CODE> form of the <CODE>$if</CODE> directive is used to test
-whether Readline is in <CODE>emacs</CODE> or <CODE>vi</CODE> mode.
-This may be used in conjunction
-with the <SAMP>`set keymap'</SAMP> command, for instance, to set bindings in
-the <CODE>emacs-standard</CODE> and <CODE>emacs-ctlx</CODE> keymaps only if
-Readline is starting out in <CODE>emacs</CODE> mode.
-<P>
-
-<DT><CODE>term</CODE>
-<DD>The <CODE>term=</CODE> form may be used to include terminal-specific
-key bindings, perhaps to bind the key sequences output by the
-terminal's function keys.  The word on the right side of the
-<SAMP>`='</SAMP> is tested against both the full name of the terminal and
-the portion of the terminal name before the first <SAMP>`-'</SAMP>.  This
-allows <CODE>sun</CODE> to match both <CODE>sun</CODE> and <CODE>sun-cmd</CODE>,
-for instance.
-<P>
-
-<DT><CODE>application</CODE>
-<DD>The <VAR>application</VAR> construct is used to include
-application-specific settings.  Each program using the Readline
-library sets the <VAR>application name</VAR>, and you can test for
-a particular value. 
-This could be used to bind key sequences to functions useful for
-a specific program.  For instance, the following command adds a
-key sequence that quotes the current or previous word in Bash:
-<TABLE><tr><td>&nbsp;</td><td class=example><pre>$if Bash
-# Quote the current or previous word
-"\C-xq": "\eb\"\ef\""
-$endif
-</pre></td></tr></table></DL>
-<P>
-
-<DT><CODE>$endif</CODE>
-<DD>This command, as seen in the previous example, terminates an
-<CODE>$if</CODE> command.
-<P>
-
-<DT><CODE>$else</CODE>
-<DD>Commands in this branch of the <CODE>$if</CODE> directive are executed if
-the test fails.
-<P>
-
-<DT><CODE>$include</CODE>
-<DD>This directive takes a single filename as an argument and reads commands
-and bindings from that file.
-For example, the following directive reads from <TT>`/etc/inputrc'</TT>:
-<TABLE><tr><td>&nbsp;</td><td class=example><pre>$include /etc/inputrc
-</pre></td></tr></table></DL>
-<P>
-
-<A NAME="Sample Init File"></A>
-<HR SIZE="6">
-<A NAME="SEC12"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC11"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC13"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC13"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC9"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC13"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H3> 1.3.3 Sample Init File </H3>
-<!--docid::SEC12::-->
-<P>
-
-Here is an example of an <VAR>inputrc</VAR> file.  This illustrates key
-binding, variable assignment, and conditional syntax.
-</P><P>
-
-<TABLE><tr><td>&nbsp;</td><td class=example><pre># This file controls the behaviour of line input editing for
-# programs that use the GNU Readline library.  Existing
-# programs include FTP, Bash, and GDB.
-#
-# You can re-read the inputrc file with C-x C-r.
-# Lines beginning with '#' are comments.
-#
-# First, include any systemwide bindings and variable
-# assignments from /etc/Inputrc
-$include /etc/Inputrc
-
-#
-# Set various bindings for emacs mode.
-
-set editing-mode emacs 
-
-$if mode=emacs
-
-Meta-Control-h:        backward-kill-word      Text after the function name is ignored
-
-#
-# Arrow keys in keypad mode
-#
-#"\M-OD":        backward-char
-#"\M-OC":        forward-char
-#"\M-OA":        previous-history
-#"\M-OB":        next-history
-#
-# Arrow keys in ANSI mode
-#
-"\M-[D":        backward-char
-"\M-[C":        forward-char
-"\M-[A":        previous-history
-"\M-[B":        next-history
-#
-# Arrow keys in 8 bit keypad mode
-#
-#"\M-\C-OD":       backward-char
-#"\M-\C-OC":       forward-char
-#"\M-\C-OA":       previous-history
-#"\M-\C-OB":       next-history
-#
-# Arrow keys in 8 bit ANSI mode
-#
-#"\M-\C-[D":       backward-char
-#"\M-\C-[C":       forward-char
-#"\M-\C-[A":       previous-history
-#"\M-\C-[B":       next-history
-
-C-q: quoted-insert
-
-$endif
-
-# An old-style binding.  This happens to be the default.
-TAB: complete
-
-# Macros that are convenient for shell interaction
-$if Bash
-# edit the path
-"\C-xp": "PATH=${PATH}\e\C-e\C-a\ef\C-f"
-# prepare to type a quoted word --
-# insert open and close double quotes
-# and move to just after the open quote
-"\C-x\"": "\"\"\C-b"
-# insert a backslash (testing backslash escapes
-# in sequences and macros)
-"\C-x\\": "\\"
-# Quote the current or previous word
-"\C-xq": "\eb\"\ef\""
-# Add a binding to refresh the line, which is unbound
-"\C-xr": redraw-current-line
-# Edit variable on current line.
-"\M-\C-v": "\C-a\C-k$\C-y\M-\C-e\C-a\C-y="
-$endif
-
-# use a visible bell if one is available
-set bell-style visible
-
-# don't strip characters to 7 bits when reading
-set input-meta on
-
-# allow iso-latin1 characters to be inserted rather
-# than converted to prefix-meta sequences
-set convert-meta off
-
-# display characters with the eighth bit set directly
-# rather than as meta-prefixed characters
-set output-meta on
-
-# if there are more than 150 possible completions for
-# a word, ask the user if he wants to see all of them
-set completion-query-items 150
-
-# For FTP
-$if Ftp
-"\C-xg": "get \M-?"
-"\C-xt": "put \M-?"
-"\M-.": yank-last-arg
-$endif
-</pre></td></tr></table></P><P>
-
-<A NAME="Bindable Readline Commands"></A>
-<HR SIZE="6">
-<A NAME="SEC13"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC12"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC14"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC22"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC1"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC22"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H2> 1.4 Bindable Readline Commands </H2>
-<!--docid::SEC13::-->
-<P>
-
-<BLOCKQUOTE><TABLE BORDER=0 CELLSPACING=0> 
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="rluserman.html#SEC14">1.4.1 Commands For Moving</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Moving about the line.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="rluserman.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Getting at previous lines.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="rluserman.html#SEC16">1.4.3 Commands For Changing Text</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Commands for changing text.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="rluserman.html#SEC17">1.4.4 Killing And Yanking</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Commands for killing and yanking.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="rluserman.html#SEC18">1.4.5 Specifying Numeric Arguments</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Specifying numeric arguments, repeat counts.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="rluserman.html#SEC19">1.4.6 Letting Readline Type For You</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Getting Readline to do the typing for you.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="rluserman.html#SEC20">1.4.7 Keyboard Macros</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Saving and re-executing typed characters</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="rluserman.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Other miscellaneous commands.</TD></TR>
-</TABLE></BLOCKQUOTE>
-<P>
-
-This section describes Readline commands that may be bound to key
-sequences.
-Command names without an accompanying key sequence are unbound by default.
-</P><P>
-
-In the following descriptions, <EM>point</EM> refers to the current cursor
-position, and <EM>mark</EM> refers to a cursor position saved by the
-<CODE>set-mark</CODE> command.
-The text between the point and mark is referred to as the <EM>region</EM>.
-</P><P>
-
-<A NAME="Commands For Moving"></A>
-<HR SIZE="6">
-<A NAME="SEC14"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC13"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC15"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC22"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC13"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC22"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H3> 1.4.1 Commands For Moving </H3>
-<!--docid::SEC14::-->
-<DL COMPACT>
-<A NAME="IDX36"></A>
-<DT><CODE>beginning-of-line (C-a)</CODE>
-<DD><A NAME="IDX37"></A>
-Move to the start of the current line.
-<P>
-
-<A NAME="IDX38"></A>
-<DT><CODE>end-of-line (C-e)</CODE>
-<DD><A NAME="IDX39"></A>
-Move to the end of the line.
-<P>
-
-<A NAME="IDX40"></A>
-<DT><CODE>forward-char (C-f)</CODE>
-<DD><A NAME="IDX41"></A>
-Move forward a character.
-<P>
-
-<A NAME="IDX42"></A>
-<DT><CODE>backward-char (C-b)</CODE>
-<DD><A NAME="IDX43"></A>
-Move back a character.
-<P>
-
-<A NAME="IDX44"></A>
-<DT><CODE>forward-word (M-f)</CODE>
-<DD><A NAME="IDX45"></A>
-Move forward to the end of the next word.
-Words are composed of letters and digits.
-<P>
-
-<A NAME="IDX46"></A>
-<DT><CODE>backward-word (M-b)</CODE>
-<DD><A NAME="IDX47"></A>
-Move back to the start of the current or previous word.
-Words are composed of letters and digits.
-<P>
-
-<A NAME="IDX48"></A>
-<DT><CODE>clear-screen (C-l)</CODE>
-<DD><A NAME="IDX49"></A>
-Clear the screen and redraw the current line,
-leaving the current line at the top of the screen.
-<P>
-
-<A NAME="IDX50"></A>
-<DT><CODE>redraw-current-line ()</CODE>
-<DD><A NAME="IDX51"></A>
-Refresh the current line.  By default, this is unbound.
-<P>
-
-</DL>
-<P>
-
-<A NAME="Commands For History"></A>
-<HR SIZE="6">
-<A NAME="SEC15"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC14"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC16"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC16"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC13"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC22"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H3> 1.4.2 Commands For Manipulating The History </H3>
-<!--docid::SEC15::-->
-<P>
-
-<DL COMPACT>
-<A NAME="IDX52"></A>
-<DT><CODE>accept-line (Newline or Return)</CODE>
-<DD><A NAME="IDX53"></A>
-Accept the line regardless of where the cursor is.
-If this line is
-non-empty, it may be added to the history list for future recall with
-<CODE>add_history()</CODE>.
-If this line is a modified history line, the history line is restored
-to its original state.
-<P>
-
-<A NAME="IDX54"></A>
-<DT><CODE>previous-history (C-p)</CODE>
-<DD><A NAME="IDX55"></A>
-Move `back' through the history list, fetching the previous command.
-<P>
-
-<A NAME="IDX56"></A>
-<DT><CODE>next-history (C-n)</CODE>
-<DD><A NAME="IDX57"></A>
-Move `forward' through the history list, fetching the next command.
-<P>
-
-<A NAME="IDX58"></A>
-<DT><CODE>beginning-of-history (M-&#60;)</CODE>
-<DD><A NAME="IDX59"></A>
-Move to the first line in the history.
-<P>
-
-<A NAME="IDX60"></A>
-<DT><CODE>end-of-history (M-&#62;)</CODE>
-<DD><A NAME="IDX61"></A>
-Move to the end of the input history, i.e., the line currently
-being entered.
-<P>
-
-<A NAME="IDX62"></A>
-<DT><CODE>reverse-search-history (C-r)</CODE>
-<DD><A NAME="IDX63"></A>
-Search backward starting at the current line and moving `up' through
-the history as necessary.  This is an incremental search.
-<P>
-
-<A NAME="IDX64"></A>
-<DT><CODE>forward-search-history (C-s)</CODE>
-<DD><A NAME="IDX65"></A>
-Search forward starting at the current line and moving `down' through
-the the history as necessary.  This is an incremental search.
-<P>
-
-<A NAME="IDX66"></A>
-<DT><CODE>non-incremental-reverse-search-history (M-p)</CODE>
-<DD><A NAME="IDX67"></A>
-Search backward starting at the current line and moving `up'
-through the history as necessary using a non-incremental search
-for a string supplied by the user.
-<P>
-
-<A NAME="IDX68"></A>
-<DT><CODE>non-incremental-forward-search-history (M-n)</CODE>
-<DD><A NAME="IDX69"></A>
-Search forward starting at the current line and moving `down'
-through the the history as necessary using a non-incremental search
-for a string supplied by the user.
-<P>
-
-<A NAME="IDX70"></A>
-<DT><CODE>history-search-forward ()</CODE>
-<DD><A NAME="IDX71"></A>
-Search forward through the history for the string of characters
-between the start of the current line and the point.
-This is a non-incremental search.
-By default, this command is unbound.
-<P>
-
-<A NAME="IDX72"></A>
-<DT><CODE>history-search-backward ()</CODE>
-<DD><A NAME="IDX73"></A>
-Search backward through the history for the string of characters
-between the start of the current line and the point.  This
-is a non-incremental search.  By default, this command is unbound.
-<P>
-
-<A NAME="IDX74"></A>
-<DT><CODE>yank-nth-arg (M-C-y)</CODE>
-<DD><A NAME="IDX75"></A>
-Insert the first argument to the previous command (usually
-the second word on the previous line) at point.
-With an argument <VAR>n</VAR>,
-insert the <VAR>n</VAR>th word from the previous command (the words
-in the previous command begin with word 0).  A negative argument
-inserts the <VAR>n</VAR>th word from the end of the previous command.
-Once the argument <VAR>n</VAR> is computed, the argument is extracted
-as if the <SAMP>`!<VAR>n</VAR>'</SAMP> history expansion had been specified.
-<P>
-
-<A NAME="IDX76"></A>
-<DT><CODE>yank-last-arg (M-. or M-_)</CODE>
-<DD><A NAME="IDX77"></A>
-Insert last argument to the previous command (the last word of the
-previous history entry).
-With a numeric argument, behave exactly like <CODE>yank-nth-arg</CODE>.
-Successive calls to <CODE>yank-last-arg</CODE> move back through the history
-list, inserting the last word (or the word specified by the argument to
-the first call) of each line in turn.
-Any numeric argument supplied to these successive calls determines
-the direction to move through the history.  A negative argument switches
-the direction through the history (back or forward).
-The history expansion facilities are used to extract the last argument,
-as if the <SAMP>`!$'</SAMP> history expansion had been specified.
-<P>
-
-</DL>
-<P>
-
-<A NAME="Commands For Text"></A>
-<HR SIZE="6">
-<A NAME="SEC16"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC15"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC17"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC17"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC13"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC22"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H3> 1.4.3 Commands For Changing Text </H3>
-<!--docid::SEC16::-->
-<P>
-
-<DL COMPACT>
-<A NAME="IDX78"></A>
-<DT><CODE>delete-char (C-d)</CODE>
-<DD><A NAME="IDX79"></A>
-Delete the character at point.  If point is at the
-beginning of the line, there are no characters in the line, and
-the last character typed was not bound to <CODE>delete-char</CODE>, then
-return EOF.
-<P>
-
-<A NAME="IDX80"></A>
-<DT><CODE>backward-delete-char (Rubout)</CODE>
-<DD><A NAME="IDX81"></A>
-Delete the character behind the cursor.  A numeric argument means
-to kill the characters instead of deleting them.
-<P>
-
-<A NAME="IDX82"></A>
-<DT><CODE>forward-backward-delete-char ()</CODE>
-<DD><A NAME="IDX83"></A>
-Delete the character under the cursor, unless the cursor is at the
-end of the line, in which case the character behind the cursor is
-deleted.  By default, this is not bound to a key.
-<P>
-
-<A NAME="IDX84"></A>
-<DT><CODE>quoted-insert (C-q or C-v)</CODE>
-<DD><A NAME="IDX85"></A>
-Add the next character typed to the line verbatim.  This is
-how to insert key sequences like <KBD>C-q</KBD>, for example.
-<P>
-
-<A NAME="IDX86"></A>
-<DT><CODE>tab-insert (M-<KBD>TAB</KBD>)</CODE>
-<DD><A NAME="IDX87"></A>
-Insert a tab character.
-<P>
-
-<A NAME="IDX88"></A>
-<DT><CODE>self-insert (a, b, A, 1, !, <small>...</small>)</CODE>
-<DD><A NAME="IDX89"></A>
-Insert yourself.
-<P>
-
-<A NAME="IDX90"></A>
-<DT><CODE>transpose-chars (C-t)</CODE>
-<DD><A NAME="IDX91"></A>
-Drag the character before the cursor forward over
-the character at the cursor, moving the
-cursor forward as well.  If the insertion point
-is at the end of the line, then this
-transposes the last two characters of the line.
-Negative arguments have no effect.
-<P>
-
-<A NAME="IDX92"></A>
-<DT><CODE>transpose-words (M-t)</CODE>
-<DD><A NAME="IDX93"></A>
-Drag the word before point past the word after point,
-moving point past that word as well.
-If the insertion point is at the end of the line, this transposes
-the last two words on the line.
-<P>
-
-<A NAME="IDX94"></A>
-<DT><CODE>upcase-word (M-u)</CODE>
-<DD><A NAME="IDX95"></A>
-Uppercase the current (or following) word.  With a negative argument,
-uppercase the previous word, but do not move the cursor.
-<P>
-
-<A NAME="IDX96"></A>
-<DT><CODE>downcase-word (M-l)</CODE>
-<DD><A NAME="IDX97"></A>
-Lowercase the current (or following) word.  With a negative argument,
-lowercase the previous word, but do not move the cursor.
-<P>
-
-<A NAME="IDX98"></A>
-<DT><CODE>capitalize-word (M-c)</CODE>
-<DD><A NAME="IDX99"></A>
-Capitalize the current (or following) word.  With a negative argument,
-capitalize the previous word, but do not move the cursor.
-<P>
-
-<A NAME="IDX100"></A>
-<DT><CODE>overwrite-mode ()</CODE>
-<DD><A NAME="IDX101"></A>
-Toggle overwrite mode.  With an explicit positive numeric argument,
-switches to overwrite mode.  With an explicit non-positive numeric
-argument, switches to insert mode.  This command affects only
-<CODE>emacs</CODE> mode; <CODE>vi</CODE> mode does overwrite differently.
-Each call to <CODE>readline()</CODE> starts in insert mode.
-<P>
-
-In overwrite mode, characters bound to <CODE>self-insert</CODE> replace
-the text at point rather than pushing the text to the right.
-Characters bound to <CODE>backward-delete-char</CODE> replace the character
-before point with a space.
-</P><P>
-
-By default, this command is unbound.
-</P><P>
-
-</DL>
-<P>
-
-<A NAME="Commands For Killing"></A>
-<HR SIZE="6">
-<A NAME="SEC17"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC16"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC18"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC18"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC13"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC22"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H3> 1.4.4 Killing And Yanking </H3>
-<!--docid::SEC17::-->
-<P>
-
-<DL COMPACT>
-
-<A NAME="IDX102"></A>
-<DT><CODE>kill-line (C-k)</CODE>
-<DD><A NAME="IDX103"></A>
-Kill the text from point to the end of the line.
-<P>
-
-<A NAME="IDX104"></A>
-<DT><CODE>backward-kill-line (C-x Rubout)</CODE>
-<DD><A NAME="IDX105"></A>
-Kill backward to the beginning of the line.
-<P>
-
-<A NAME="IDX106"></A>
-<DT><CODE>unix-line-discard (C-u)</CODE>
-<DD><A NAME="IDX107"></A>
-Kill backward from the cursor to the beginning of the current line.
-<P>
-
-<A NAME="IDX108"></A>
-<DT><CODE>kill-whole-line ()</CODE>
-<DD><A NAME="IDX109"></A>
-Kill all characters on the current line, no matter where point is.
-By default, this is unbound.
-<P>
-
-<A NAME="IDX110"></A>
-<DT><CODE>kill-word (M-d)</CODE>
-<DD><A NAME="IDX111"></A>
-Kill from point to the end of the current word, or if between
-words, to the end of the next word.
-Word boundaries are the same as <CODE>forward-word</CODE>.
-<P>
-
-<A NAME="IDX112"></A>
-<DT><CODE>backward-kill-word (M-<KBD>DEL</KBD>)</CODE>
-<DD><A NAME="IDX113"></A>
-Kill the word behind point.
-Word boundaries are the same as <CODE>backward-word</CODE>.
-<P>
-
-<A NAME="IDX114"></A>
-<DT><CODE>unix-word-rubout (C-w)</CODE>
-<DD><A NAME="IDX115"></A>
-Kill the word behind point, using white space as a word boundary.
-The killed text is saved on the kill-ring.
-<P>
-
-<A NAME="IDX116"></A>
-<DT><CODE>unix-filename-rubout ()</CODE>
-<DD><A NAME="IDX117"></A>
-Kill the word behind point, using white space and the slash character
-as the word boundaries.
-The killed text is saved on the kill-ring.
-<P>
-
-<A NAME="IDX118"></A>
-<DT><CODE>delete-horizontal-space ()</CODE>
-<DD><A NAME="IDX119"></A>
-Delete all spaces and tabs around point.  By default, this is unbound.
-<P>
-
-<A NAME="IDX120"></A>
-<DT><CODE>kill-region ()</CODE>
-<DD><A NAME="IDX121"></A>
-Kill the text in the current region.
-By default, this command is unbound.
-<P>
-
-<A NAME="IDX122"></A>
-<DT><CODE>copy-region-as-kill ()</CODE>
-<DD><A NAME="IDX123"></A>
-Copy the text in the region to the kill buffer, so it can be yanked
-right away.  By default, this command is unbound.
-<P>
-
-<A NAME="IDX124"></A>
-<DT><CODE>copy-backward-word ()</CODE>
-<DD><A NAME="IDX125"></A>
-Copy the word before point to the kill buffer.
-The word boundaries are the same as <CODE>backward-word</CODE>.
-By default, this command is unbound.
-<P>
-
-<A NAME="IDX126"></A>
-<DT><CODE>copy-forward-word ()</CODE>
-<DD><A NAME="IDX127"></A>
-Copy the word following point to the kill buffer.
-The word boundaries are the same as <CODE>forward-word</CODE>.
-By default, this command is unbound.
-<P>
-
-<A NAME="IDX128"></A>
-<DT><CODE>yank (C-y)</CODE>
-<DD><A NAME="IDX129"></A>
-Yank the top of the kill ring into the buffer at point.
-<P>
-
-<A NAME="IDX130"></A>
-<DT><CODE>yank-pop (M-y)</CODE>
-<DD><A NAME="IDX131"></A>
-Rotate the kill-ring, and yank the new top.  You can only do this if
-the prior command is <CODE>yank</CODE> or <CODE>yank-pop</CODE>.
-</DL>
-<P>
-
-<A NAME="Numeric Arguments"></A>
-<HR SIZE="6">
-<A NAME="SEC18"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC17"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC19"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC19"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC13"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC22"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H3> 1.4.5 Specifying Numeric Arguments </H3>
-<!--docid::SEC18::-->
-<DL COMPACT>
-
-<A NAME="IDX132"></A>
-<DT><CODE>digit-argument (<KBD>M-0</KBD>, <KBD>M-1</KBD>, <small>...</small> <KBD>M--</KBD>)</CODE>
-<DD><A NAME="IDX133"></A>
-Add this digit to the argument already accumulating, or start a new
-argument.  <KBD>M--</KBD> starts a negative argument.
-<P>
-
-<A NAME="IDX134"></A>
-<DT><CODE>universal-argument ()</CODE>
-<DD><A NAME="IDX135"></A>
-This is another way to specify an argument.
-If this command is followed by one or more digits, optionally with a
-leading minus sign, those digits define the argument.
-If the command is followed by digits, executing <CODE>universal-argument</CODE>
-again ends the numeric argument, but is otherwise ignored.
-As a special case, if this command is immediately followed by a
-character that is neither a digit or minus sign, the argument count
-for the next command is multiplied by four.
-The argument count is initially one, so executing this function the
-first time makes the argument count four, a second time makes the
-argument count sixteen, and so on.
-By default, this is not bound to a key.
-</DL>
-<P>
-
-<A NAME="Commands For Completion"></A>
-<HR SIZE="6">
-<A NAME="SEC19"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC18"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC20"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC20"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC13"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC22"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H3> 1.4.6 Letting Readline Type For You </H3>
-<!--docid::SEC19::-->
-<P>
-
-<DL COMPACT>
-<A NAME="IDX136"></A>
-<DT><CODE>complete (<KBD>TAB</KBD>)</CODE>
-<DD><A NAME="IDX137"></A>
-Attempt to perform completion on the text before point.
-The actual completion performed is application-specific.
-The default is filename completion.
-<P>
-
-<A NAME="IDX138"></A>
-<DT><CODE>possible-completions (M-?)</CODE>
-<DD><A NAME="IDX139"></A>
-List the possible completions of the text before point.
-When displaying completions, Readline sets the number of columns used
-for display to the value of <CODE>completion-display-width</CODE>, the value of
-the environment variable <CODE>COLUMNS</CODE>, or the screen width, in that order.
-<P>
-
-<A NAME="IDX140"></A>
-<DT><CODE>insert-completions (M-*)</CODE>
-<DD><A NAME="IDX141"></A>
-Insert all completions of the text before point that would have
-been generated by <CODE>possible-completions</CODE>.
-<P>
-
-<A NAME="IDX142"></A>
-<DT><CODE>menu-complete ()</CODE>
-<DD><A NAME="IDX143"></A>
-Similar to <CODE>complete</CODE>, but replaces the word to be completed
-with a single match from the list of possible completions.
-Repeated execution of <CODE>menu-complete</CODE> steps through the list
-of possible completions, inserting each match in turn.
-At the end of the list of completions, the bell is rung
-(subject to the setting of <CODE>bell-style</CODE>)
-and the original text is restored.
-An argument of <VAR>n</VAR> moves <VAR>n</VAR> positions forward in the list
-of matches; a negative argument may be used to move backward
-through the list.
-This command is intended to be bound to <KBD>TAB</KBD>, but is unbound
-by default.
-<P>
-
-<A NAME="IDX144"></A>
-<DT><CODE>menu-complete-backward ()</CODE>
-<DD><A NAME="IDX145"></A>
-Identical to <CODE>menu-complete</CODE>, but moves backward through the list
-of possible completions, as if <CODE>menu-complete</CODE> had been given a
-negative argument.
-<P>
-
-<A NAME="IDX146"></A>
-<DT><CODE>delete-char-or-list ()</CODE>
-<DD><A NAME="IDX147"></A>
-Deletes the character under the cursor if not at the beginning or
-end of the line (like <CODE>delete-char</CODE>).
-If at the end of the line, behaves identically to
-<CODE>possible-completions</CODE>.
-This command is unbound by default.
-<P>
-
-</DL>
-<P>
-
-<A NAME="Keyboard Macros"></A>
-<HR SIZE="6">
-<A NAME="SEC20"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC19"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC21"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC21"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC13"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC22"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H3> 1.4.7 Keyboard Macros </H3>
-<!--docid::SEC20::-->
-<DL COMPACT>
-
-<A NAME="IDX148"></A>
-<DT><CODE>start-kbd-macro (C-x ()</CODE>
-<DD><A NAME="IDX149"></A>
-Begin saving the characters typed into the current keyboard macro.
-<P>
-
-<A NAME="IDX150"></A>
-<DT><CODE>end-kbd-macro (C-x ))</CODE>
-<DD><A NAME="IDX151"></A>
-Stop saving the characters typed into the current keyboard macro
-and save the definition.
-<P>
-
-<A NAME="IDX152"></A>
-<DT><CODE>call-last-kbd-macro (C-x e)</CODE>
-<DD><A NAME="IDX153"></A>
-Re-execute the last keyboard macro defined, by making the characters
-in the macro appear as if typed at the keyboard.
-<P>
-
-</DL>
-<P>
-
-<A NAME="Miscellaneous Commands"></A>
-<HR SIZE="6">
-<A NAME="SEC21"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC20"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC22"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC22"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC13"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC22"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H3> 1.4.8 Some Miscellaneous Commands </H3>
-<!--docid::SEC21::-->
-<DL COMPACT>
-
-<A NAME="IDX154"></A>
-<DT><CODE>re-read-init-file (C-x C-r)</CODE>
-<DD><A NAME="IDX155"></A>
-Read in the contents of the <VAR>inputrc</VAR> file, and incorporate
-any bindings or variable assignments found there.
-<P>
-
-<A NAME="IDX156"></A>
-<DT><CODE>abort (C-g)</CODE>
-<DD><A NAME="IDX157"></A>
-Abort the current editing command and
-ring the terminal's bell (subject to the setting of
-<CODE>bell-style</CODE>).
-<P>
-
-<A NAME="IDX158"></A>
-<DT><CODE>do-uppercase-version (M-a, M-b, M-<VAR>x</VAR>, <small>...</small>)</CODE>
-<DD><A NAME="IDX159"></A>
-If the metafied character <VAR>x</VAR> is lowercase, run the command
-that is bound to the corresponding uppercase character.
-<P>
-
-<A NAME="IDX160"></A>
-<DT><CODE>prefix-meta (<KBD>ESC</KBD>)</CODE>
-<DD><A NAME="IDX161"></A>
-Metafy the next character typed.  This is for keyboards
-without a meta key.  Typing <SAMP>`<KBD>ESC</KBD> f'</SAMP> is equivalent to typing
-<KBD>M-f</KBD>.
-<P>
-
-<A NAME="IDX162"></A>
-<DT><CODE>undo (C-_ or C-x C-u)</CODE>
-<DD><A NAME="IDX163"></A>
-Incremental undo, separately remembered for each line.
-<P>
-
-<A NAME="IDX164"></A>
-<DT><CODE>revert-line (M-r)</CODE>
-<DD><A NAME="IDX165"></A>
-Undo all changes made to this line.  This is like executing the <CODE>undo</CODE>
-command enough times to get back to the beginning.
-<P>
-
-<A NAME="IDX166"></A>
-<DT><CODE>tilde-expand (M-~)</CODE>
-<DD><A NAME="IDX167"></A>
-Perform tilde expansion on the current word.
-<P>
-
-<A NAME="IDX168"></A>
-<DT><CODE>set-mark (C-@)</CODE>
-<DD><A NAME="IDX169"></A>
-Set the mark to the point.  If a
-numeric argument is supplied, the mark is set to that position.
-<P>
-
-<A NAME="IDX170"></A>
-<DT><CODE>exchange-point-and-mark (C-x C-x)</CODE>
-<DD><A NAME="IDX171"></A>
-Swap the point with the mark.  The current cursor position is set to
-the saved position, and the old cursor position is saved as the mark.
-<P>
-
-<A NAME="IDX172"></A>
-<DT><CODE>character-search (C-])</CODE>
-<DD><A NAME="IDX173"></A>
-A character is read and point is moved to the next occurrence of that
-character.  A negative count searches for previous occurrences.
-<P>
-
-<A NAME="IDX174"></A>
-<DT><CODE>character-search-backward (M-C-])</CODE>
-<DD><A NAME="IDX175"></A>
-A character is read and point is moved to the previous occurrence
-of that character.  A negative count searches for subsequent
-occurrences.
-<P>
-
-<A NAME="IDX176"></A>
-<DT><CODE>skip-csi-sequence ()</CODE>
-<DD><A NAME="IDX177"></A>
-Read enough characters to consume a multi-key sequence such as those
-defined for keys like Home and End.  Such sequences begin with a
-Control Sequence Indicator (CSI), usually ESC-[.  If this sequence is
-bound to "\e[", keys producing such sequences will have no effect
-unless explicitly bound to a readline command, instead of inserting
-stray characters into the editing buffer.  This is unbound by default,
-but usually bound to ESC-[.
-<P>
-
-<A NAME="IDX178"></A>
-<DT><CODE>insert-comment (M-#)</CODE>
-<DD><A NAME="IDX179"></A>
-Without a numeric argument, the value of the <CODE>comment-begin</CODE>
-variable is inserted at the beginning of the current line.
-If a numeric argument is supplied, this command acts as a toggle:  if
-the characters at the beginning of the line do not match the value
-of <CODE>comment-begin</CODE>, the value is inserted, otherwise
-the characters in <CODE>comment-begin</CODE> are deleted from the beginning of
-the line.
-In either case, the line is accepted as if a newline had been typed.
-<P>
-
-<A NAME="IDX180"></A>
-<DT><CODE>dump-functions ()</CODE>
-<DD><A NAME="IDX181"></A>
-Print all of the functions and their key bindings to the
-Readline output stream.  If a numeric argument is supplied,
-the output is formatted in such a way that it can be made part
-of an <VAR>inputrc</VAR> file.  This command is unbound by default.
-<P>
-
-<A NAME="IDX182"></A>
-<DT><CODE>dump-variables ()</CODE>
-<DD><A NAME="IDX183"></A>
-Print all of the settable variables and their values to the
-Readline output stream.  If a numeric argument is supplied,
-the output is formatted in such a way that it can be made part
-of an <VAR>inputrc</VAR> file.  This command is unbound by default.
-<P>
-
-<A NAME="IDX184"></A>
-<DT><CODE>dump-macros ()</CODE>
-<DD><A NAME="IDX185"></A>
-Print all of the Readline key sequences bound to macros and the
-strings they output.  If a numeric argument is supplied,
-the output is formatted in such a way that it can be made part
-of an <VAR>inputrc</VAR> file.  This command is unbound by default.
-<P>
-
-<A NAME="IDX186"></A>
-<DT><CODE>emacs-editing-mode (C-e)</CODE>
-<DD><A NAME="IDX187"></A>
-When in <CODE>vi</CODE> command mode, this causes a switch to <CODE>emacs</CODE>
-editing mode.
-<P>
-
-<A NAME="IDX188"></A>
-<DT><CODE>vi-editing-mode (M-C-j)</CODE>
-<DD><A NAME="IDX189"></A>
-When in <CODE>emacs</CODE> editing mode, this causes a switch to <CODE>vi</CODE>
-editing mode.
-<P>
-
-</DL>
-<P>
-
-<A NAME="Readline vi Mode"></A>
-<HR SIZE="6">
-<A NAME="SEC22"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC21"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC23"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[ &lt;&lt; ]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC1"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC23"> &gt;&gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H2> 1.5 Readline vi Mode </H2>
-<!--docid::SEC22::-->
-<P>
-
-While the Readline library does not have a full set of <CODE>vi</CODE>
-editing functions, it does contain enough to allow simple editing
-of the line.  The Readline <CODE>vi</CODE> mode behaves as specified in
-the POSIX standard.
-</P><P>
-
-In order to switch interactively between <CODE>emacs</CODE> and <CODE>vi</CODE>
-editing modes, use the command <KBD>M-C-j</KBD> (bound to emacs-editing-mode
-when in <CODE>vi</CODE> mode and to vi-editing-mode in <CODE>emacs</CODE> mode).
-The Readline default is <CODE>emacs</CODE> mode.
-</P><P>
-
-When you enter a line in <CODE>vi</CODE> mode, you are already placed in
-`insertion' mode, as if you had typed an <SAMP>`i'</SAMP>.  Pressing <KBD>ESC</KBD>
-switches you into `command' mode, where you can edit the text of the
-line with the standard <CODE>vi</CODE> movement keys, move to previous
-history lines with <SAMP>`k'</SAMP> and subsequent lines with <SAMP>`j'</SAMP>, and
-so forth.
-</P><P>
-
-<A NAME="GNU Free Documentation License"></A>
-<HR SIZE="6">
-<A NAME="SEC23"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC22"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[ &gt; ]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC1"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Top"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[ &gt;&gt; ]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H1> A. GNU Free Documentation License </H1>
-<!--docid::SEC23::-->
-<P>
-
-<center>
- Version 1.3, 3 November 2008
-</center>
-</P><P>
-
-<TABLE><tr><td>&nbsp;</td><td class=display><pre style="font-family: serif">Copyright (C) 2000, 2001, 2002, 2007, 2008 Free Software Foundation, Inc.
-<A HREF="http://fsf.org/">http://fsf.org/</A>
-
-Everyone is permitted to copy and distribute verbatim copies
-of this license document, but changing it is not allowed.
-</pre></td></tr></table></P><P>
-
-<OL>
-<LI>
-PREAMBLE
-<P>
-
-The purpose of this License is to make a manual, textbook, or other
-functional and useful document <EM>free</EM> in the sense of freedom: to
-assure everyone the effective freedom to copy and redistribute it,
-with or without modifying it, either commercially or noncommercially.
-Secondarily, this License preserves for the author and publisher a way
-to get credit for their work, while not being considered responsible
-for modifications made by others.
-</P><P>
-
-This License is a kind of "copyleft", which means that derivative
-works of the document must themselves be free in the same sense.  It
-complements the GNU General Public License, which is a copyleft
-license designed for free software.
-</P><P>
-
-We have designed this License in order to use it for manuals for free
-software, because free software needs free documentation: a free
-program should come with manuals providing the same freedoms that the
-software does.  But this License is not limited to software manuals;
-it can be used for any textual work, regardless of subject matter or
-whether it is published as a printed book.  We recommend this License
-principally for works whose purpose is instruction or reference.
-</P><P>
-
-<LI>
-APPLICABILITY AND DEFINITIONS
-<P>
-
-This License applies to any manual or other work, in any medium, that
-contains a notice placed by the copyright holder saying it can be
-distributed under the terms of this License.  Such a notice grants a
-world-wide, royalty-free license, unlimited in duration, to use that
-work under the conditions stated herein.  The "Document", below,
-refers to any such manual or work.  Any member of the public is a
-licensee, and is addressed as "you".  You accept the license if you
-copy, modify or distribute the work in a way requiring permission
-under copyright law.
-</P><P>
-
-A "Modified Version" of the Document means any work containing the
-Document or a portion of it, either copied verbatim, or with
-modifications and/or translated into another language.
-</P><P>
-
-A "Secondary Section" is a named appendix or a front-matter section
-of the Document that deals exclusively with the relationship of the
-publishers or authors of the Document to the Document's overall
-subject (or to related matters) and contains nothing that could fall
-directly within that overall subject.  (Thus, if the Document is in
-part a textbook of mathematics, a Secondary Section may not explain
-any mathematics.)  The relationship could be a matter of historical
-connection with the subject or with related matters, or of legal,
-commercial, philosophical, ethical or political position regarding
-them.
-</P><P>
-
-The "Invariant Sections" are certain Secondary Sections whose titles
-are designated, as being those of Invariant Sections, in the notice
-that says that the Document is released under this License.  If a
-section does not fit the above definition of Secondary then it is not
-allowed to be designated as Invariant.  The Document may contain zero
-Invariant Sections.  If the Document does not identify any Invariant
-Sections then there are none.
-</P><P>
-
-The "Cover Texts" are certain short passages of text that are listed,
-as Front-Cover Texts or Back-Cover Texts, in the notice that says that
-the Document is released under this License.  A Front-Cover Text may
-be at most 5 words, and a Back-Cover Text may be at most 25 words.
-</P><P>
-
-A "Transparent" copy of the Document means a machine-readable copy,
-represented in a format whose specification is available to the
-general public, that is suitable for revising the document
-straightforwardly with generic text editors or (for images composed of
-pixels) generic paint programs or (for drawings) some widely available
-drawing editor, and that is suitable for input to text formatters or
-for automatic translation to a variety of formats suitable for input
-to text formatters.  A copy made in an otherwise Transparent file
-format whose markup, or absence of markup, has been arranged to thwart
-or discourage subsequent modification by readers is not Transparent.
-An image format is not Transparent if used for any substantial amount
-of text.  A copy that is not "Transparent" is called "Opaque".
-</P><P>
-
-Examples of suitable formats for Transparent copies include plain
-ASCII without markup, Texinfo input format, LaTeX input
-format, <FONT SIZE="-1">SGML</FONT> or <FONT SIZE="-1">XML</FONT> using a publicly available
-<FONT SIZE="-1">DTD</FONT>, and standard-conforming simple <FONT SIZE="-1">HTML</FONT>,
-PostScript or <FONT SIZE="-1">PDF</FONT> designed for human modification.  Examples
-of transparent image formats include <FONT SIZE="-1">PNG</FONT>, <FONT SIZE="-1">XCF</FONT> and
-<FONT SIZE="-1">JPG</FONT>.  Opaque formats include proprietary formats that can be
-read and edited only by proprietary word processors, <FONT SIZE="-1">SGML</FONT> or
-<FONT SIZE="-1">XML</FONT> for which the <FONT SIZE="-1">DTD</FONT> and/or processing tools are
-not generally available, and the machine-generated <FONT SIZE="-1">HTML</FONT>,
-PostScript or <FONT SIZE="-1">PDF</FONT> produced by some word processors for
-output purposes only.
-</P><P>
-
-The "Title Page" means, for a printed book, the title page itself,
-plus such following pages as are needed to hold, legibly, the material
-this License requires to appear in the title page.  For works in
-formats which do not have any title page as such, "Title Page" means
-the text near the most prominent appearance of the work's title,
-preceding the beginning of the body of the text.
-</P><P>
-
-The "publisher" means any person or entity that distributes copies
-of the Document to the public.
-</P><P>
-
-A section "Entitled XYZ" means a named subunit of the Document whose
-title either is precisely XYZ or contains XYZ in parentheses following
-text that translates XYZ in another language.  (Here XYZ stands for a
-specific section name mentioned below, such as "Acknowledgements",
-"Dedications", "Endorsements", or "History".)  To "Preserve the Title"
-of such a section when you modify the Document means that it remains a
-section "Entitled XYZ" according to this definition.
-</P><P>
-
-The Document may include Warranty Disclaimers next to the notice which
-states that this License applies to the Document.  These Warranty
-Disclaimers are considered to be included by reference in this
-License, but only as regards disclaiming warranties: any other
-implication that these Warranty Disclaimers may have is void and has
-no effect on the meaning of this License.
-</P><P>
-
-<LI>
-VERBATIM COPYING
-<P>
-
-You may copy and distribute the Document in any medium, either
-commercially or noncommercially, provided that this License, the
-copyright notices, and the license notice saying this License applies
-to the Document are reproduced in all copies, and that you add no other
-conditions whatsoever to those of this License.  You may not use
-technical measures to obstruct or control the reading or further
-copying of the copies you make or distribute.  However, you may accept
-compensation in exchange for copies.  If you distribute a large enough
-number of copies you must also follow the conditions in section 3.
-</P><P>
-
-You may also lend copies, under the same conditions stated above, and
-you may publicly display copies.
-</P><P>
-
-<LI>
-COPYING IN QUANTITY
-<P>
-
-If you publish printed copies (or copies in media that commonly have
-printed covers) of the Document, numbering more than 100, and the
-Document's license notice requires Cover Texts, you must enclose the
-copies in covers that carry, clearly and legibly, all these Cover
-Texts: Front-Cover Texts on the front cover, and Back-Cover Texts on
-the back cover.  Both covers must also clearly and legibly identify
-you as the publisher of these copies.  The front cover must present
-the full title with all words of the title equally prominent and
-visible.  You may add other material on the covers in addition.
-Copying with changes limited to the covers, as long as they preserve
-the title of the Document and satisfy these conditions, can be treated
-as verbatim copying in other respects.
-</P><P>
-
-If the required texts for either cover are too voluminous to fit
-legibly, you should put the first ones listed (as many as fit
-reasonably) on the actual cover, and continue the rest onto adjacent
-pages.
-</P><P>
-
-If you publish or distribute Opaque copies of the Document numbering
-more than 100, you must either include a machine-readable Transparent
-copy along with each Opaque copy, or state in or with each Opaque copy
-a computer-network location from which the general network-using
-public has access to download using public-standard network protocols
-a complete Transparent copy of the Document, free of added material.
-If you use the latter option, you must take reasonably prudent steps,
-when you begin distribution of Opaque copies in quantity, to ensure
-that this Transparent copy will remain thus accessible at the stated
-location until at least one year after the last time you distribute an
-Opaque copy (directly or through your agents or retailers) of that
-edition to the public.
-</P><P>
-
-It is requested, but not required, that you contact the authors of the
-Document well before redistributing any large number of copies, to give
-them a chance to provide you with an updated version of the Document.
-</P><P>
-
-<LI>
-MODIFICATIONS
-<P>
-
-You may copy and distribute a Modified Version of the Document under
-the conditions of sections 2 and 3 above, provided that you release
-the Modified Version under precisely this License, with the Modified
-Version filling the role of the Document, thus licensing distribution
-and modification of the Modified Version to whoever possesses a copy
-of it.  In addition, you must do these things in the Modified Version:
-</P><P>
-
-<OL>
-<LI>
-Use in the Title Page (and on the covers, if any) a title distinct
-from that of the Document, and from those of previous versions
-(which should, if there were any, be listed in the History section
-of the Document).  You may use the same title as a previous version
-if the original publisher of that version gives permission.
-<P>
-
-<LI>
-List on the Title Page, as authors, one or more persons or entities
-responsible for authorship of the modifications in the Modified
-Version, together with at least five of the principal authors of the
-Document (all of its principal authors, if it has fewer than five),
-unless they release you from this requirement.
-<P>
-
-<LI>
-State on the Title page the name of the publisher of the
-Modified Version, as the publisher.
-<P>
-
-<LI>
-Preserve all the copyright notices of the Document.
-<P>
-
-<LI>
-Add an appropriate copyright notice for your modifications
-adjacent to the other copyright notices.
-<P>
-
-<LI>
-Include, immediately after the copyright notices, a license notice
-giving the public permission to use the Modified Version under the
-terms of this License, in the form shown in the Addendum below.
-<P>
-
-<LI>
-Preserve in that license notice the full lists of Invariant Sections
-and required Cover Texts given in the Document's license notice.
-<P>
-
-<LI>
-Include an unaltered copy of this License.
-<P>
-
-<LI>
-Preserve the section Entitled "History", Preserve its Title, and add
-to it an item stating at least the title, year, new authors, and
-publisher of the Modified Version as given on the Title Page.  If
-there is no section Entitled "History" in the Document, create one
-stating the title, year, authors, and publisher of the Document as
-given on its Title Page, then add an item describing the Modified
-Version as stated in the previous sentence.
-<P>
-
-<LI>
-Preserve the network location, if any, given in the Document for
-public access to a Transparent copy of the Document, and likewise
-the network locations given in the Document for previous versions
-it was based on.  These may be placed in the "History" section.
-You may omit a network location for a work that was published at
-least four years before the Document itself, or if the original
-publisher of the version it refers to gives permission.
-<P>
-
-<LI>
-For any section Entitled "Acknowledgements" or "Dedications", Preserve
-the Title of the section, and preserve in the section all the
-substance and tone of each of the contributor acknowledgements and/or
-dedications given therein.
-<P>
-
-<LI>
-Preserve all the Invariant Sections of the Document,
-unaltered in their text and in their titles.  Section numbers
-or the equivalent are not considered part of the section titles.
-<P>
-
-<LI>
-Delete any section Entitled "Endorsements".  Such a section
-may not be included in the Modified Version.
-<P>
-
-<LI>
-Do not retitle any existing section to be Entitled "Endorsements" or
-to conflict in title with any Invariant Section.
-<P>
-
-<LI>
-Preserve any Warranty Disclaimers.
-</OL>
-<P>
-
-If the Modified Version includes new front-matter sections or
-appendices that qualify as Secondary Sections and contain no material
-copied from the Document, you may at your option designate some or all
-of these sections as invariant.  To do this, add their titles to the
-list of Invariant Sections in the Modified Version's license notice.
-These titles must be distinct from any other section titles.
-</P><P>
-
-You may add a section Entitled "Endorsements", provided it contains
-nothing but endorsements of your Modified Version by various
-parties--for example, statements of peer review or that the text has
-been approved by an organization as the authoritative definition of a
-standard.
-</P><P>
-
-You may add a passage of up to five words as a Front-Cover Text, and a
-passage of up to 25 words as a Back-Cover Text, to the end of the list
-of Cover Texts in the Modified Version.  Only one passage of
-Front-Cover Text and one of Back-Cover Text may be added by (or
-through arrangements made by) any one entity.  If the Document already
-includes a cover text for the same cover, previously added by you or
-by arrangement made by the same entity you are acting on behalf of,
-you may not add another; but you may replace the old one, on explicit
-permission from the previous publisher that added the old one.
-</P><P>
-
-The author(s) and publisher(s) of the Document do not by this License
-give permission to use their names for publicity for or to assert or
-imply endorsement of any Modified Version.
-</P><P>
-
-<LI>
-COMBINING DOCUMENTS
-<P>
-
-You may combine the Document with other documents released under this
-License, under the terms defined in section 4 above for modified
-versions, provided that you include in the combination all of the
-Invariant Sections of all of the original documents, unmodified, and
-list them all as Invariant Sections of your combined work in its
-license notice, and that you preserve all their Warranty Disclaimers.
-</P><P>
-
-The combined work need only contain one copy of this License, and
-multiple identical Invariant Sections may be replaced with a single
-copy.  If there are multiple Invariant Sections with the same name but
-different contents, make the title of each such section unique by
-adding at the end of it, in parentheses, the name of the original
-author or publisher of that section if known, or else a unique number.
-Make the same adjustment to the section titles in the list of
-Invariant Sections in the license notice of the combined work.
-</P><P>
-
-In the combination, you must combine any sections Entitled "History"
-in the various original documents, forming one section Entitled
-"History"; likewise combine any sections Entitled "Acknowledgements",
-and any sections Entitled "Dedications".  You must delete all
-sections Entitled "Endorsements."
-</P><P>
-
-<LI>
-COLLECTIONS OF DOCUMENTS
-<P>
-
-You may make a collection consisting of the Document and other documents
-released under this License, and replace the individual copies of this
-License in the various documents with a single copy that is included in
-the collection, provided that you follow the rules of this License for
-verbatim copying of each of the documents in all other respects.
-</P><P>
-
-You may extract a single document from such a collection, and distribute
-it individually under this License, provided you insert a copy of this
-License into the extracted document, and follow this License in all
-other respects regarding verbatim copying of that document.
-</P><P>
-
-<LI>
-AGGREGATION WITH INDEPENDENT WORKS
-<P>
-
-A compilation of the Document or its derivatives with other separate
-and independent documents or works, in or on a volume of a storage or
-distribution medium, is called an "aggregate" if the copyright
-resulting from the compilation is not used to limit the legal rights
-of the compilation's users beyond what the individual works permit.
-When the Document is included in an aggregate, this License does not
-apply to the other works in the aggregate which are not themselves
-derivative works of the Document.
-</P><P>
-
-If the Cover Text requirement of section 3 is applicable to these
-copies of the Document, then if the Document is less than one half of
-the entire aggregate, the Document's Cover Texts may be placed on
-covers that bracket the Document within the aggregate, or the
-electronic equivalent of covers if the Document is in electronic form.
-Otherwise they must appear on printed covers that bracket the whole
-aggregate.
-</P><P>
-
-<LI>
-TRANSLATION
-<P>
-
-Translation is considered a kind of modification, so you may
-distribute translations of the Document under the terms of section 4.
-Replacing Invariant Sections with translations requires special
-permission from their copyright holders, but you may include
-translations of some or all Invariant Sections in addition to the
-original versions of these Invariant Sections.  You may include a
-translation of this License, and all the license notices in the
-Document, and any Warranty Disclaimers, provided that you also include
-the original English version of this License and the original versions
-of those notices and disclaimers.  In case of a disagreement between
-the translation and the original version of this License or a notice
-or disclaimer, the original version will prevail.
-</P><P>
-
-If a section in the Document is Entitled "Acknowledgements",
-"Dedications", or "History", the requirement (section 4) to Preserve
-its Title (section 1) will typically require changing the actual
-title.
-</P><P>
-
-<LI>
-TERMINATION
-<P>
-
-You may not copy, modify, sublicense, or distribute the Document
-except as expressly provided under this License.  Any attempt
-otherwise to copy, modify, sublicense, or distribute it is void, and
-will automatically terminate your rights under this License.
-</P><P>
-
-However, if you cease all violation of this License, then your license
-from a particular copyright holder is reinstated (a) provisionally,
-unless and until the copyright holder explicitly and finally
-terminates your license, and (b) permanently, if the copyright holder
-fails to notify you of the violation by some reasonable means prior to
-60 days after the cessation.
-</P><P>
-
-Moreover, your license from a particular copyright holder is
-reinstated permanently if the copyright holder notifies you of the
-violation by some reasonable means, this is the first time you have
-received notice of violation of this License (for any work) from that
-copyright holder, and you cure the violation prior to 30 days after
-your receipt of the notice.
-</P><P>
-
-Termination of your rights under this section does not terminate the
-licenses of parties who have received copies or rights from you under
-this License.  If your rights have been terminated and not permanently
-reinstated, receipt of a copy of some or all of the same material does
-not give you any rights to use it.
-</P><P>
-
-<LI>
-FUTURE REVISIONS OF THIS LICENSE
-<P>
-
-The Free Software Foundation may publish new, revised versions
-of the GNU Free Documentation License from time to time.  Such new
-versions will be similar in spirit to the present version, but may
-differ in detail to address new problems or concerns.  See
-<A HREF="http://www.gnu.org/copyleft/">http://www.gnu.org/copyleft/</A>.
-</P><P>
-
-Each version of the License is given a distinguishing version number.
-If the Document specifies that a particular numbered version of this
-License "or any later version" applies to it, you have the option of
-following the terms and conditions either of that specified version or
-of any later version that has been published (not as a draft) by the
-Free Software Foundation.  If the Document does not specify a version
-number of this License, you may choose any version ever published (not
-as a draft) by the Free Software Foundation.  If the Document
-specifies that a proxy can decide which future versions of this
-License can be used, that proxy's public statement of acceptance of a
-version permanently authorizes you to choose that version for the
-Document.
-</P><P>
-
-<LI>
-RELICENSING
-<P>
-
-"Massive Multiauthor Collaboration Site" (or "MMC Site") means any
-World Wide Web server that publishes copyrightable works and also
-provides prominent facilities for anybody to edit those works.  A
-public wiki that anybody can edit is an example of such a server.  A
-"Massive Multiauthor Collaboration" (or "MMC") contained in the
-site means any set of copyrightable works thus published on the MMC
-site.
-</P><P>
-
-"CC-BY-SA" means the Creative Commons Attribution-Share Alike 3.0
-license published by Creative Commons Corporation, a not-for-profit
-corporation with a principal place of business in San Francisco,
-California, as well as future copyleft versions of that license
-published by that same organization.
-</P><P>
-
-"Incorporate" means to publish or republish a Document, in whole or
-in part, as part of another Document.
-</P><P>
-
-An MMC is "eligible for relicensing" if it is licensed under this
-License, and if all works that were first published under this License
-somewhere other than this MMC, and subsequently incorporated in whole
-or in part into the MMC, (1) had no cover texts or invariant sections,
-and (2) were thus incorporated prior to November 1, 2008.
-</P><P>
-
-The operator of an MMC Site may republish an MMC contained in the site
-under CC-BY-SA on the same site at any time before August 1, 2009,
-provided the MMC is eligible for relicensing.
-</P><P>
-
-</OL>
-<P>
-
-<A NAME="SEC24"></A>
-<H2> ADDENDUM: How to use this License for your documents </H2>
-<!--docid::SEC24::-->
-<P>
-
-To use this License in a document you have written, include a copy of
-the License in the document and put the following copyright and
-license notices just after the title page:
-</P><P>
-
-<TABLE><tr><td>&nbsp;</td><td class=smallexample><FONT SIZE=-1><pre>  Copyright (C)  <VAR>year</VAR>  <VAR>your name</VAR>.
-  Permission is granted to copy, distribute and/or modify this document
-  under the terms of the GNU Free Documentation License, Version 1.3
-  or any later version published by the Free Software Foundation;
-  with no Invariant Sections, no Front-Cover Texts, and no Back-Cover
-  Texts.  A copy of the license is included in the section entitled ``GNU
-  Free Documentation License''.
-</FONT></pre></td></tr></table></P><P>
-
-If you have Invariant Sections, Front-Cover Texts and Back-Cover Texts,
-replace the "with<small>...</small>Texts." line with this:
-</P><P>
-
-<TABLE><tr><td>&nbsp;</td><td class=smallexample><FONT SIZE=-1><pre>    with the Invariant Sections being <VAR>list their titles</VAR>, with
-    the Front-Cover Texts being <VAR>list</VAR>, and with the Back-Cover Texts
-    being <VAR>list</VAR>.
-</FONT></pre></td></tr></table></P><P>
-
-If you have Invariant Sections without Cover Texts, or some other
-combination of the three, merge those two alternatives to suit the
-situation.
-</P><P>
-
-If your document contains nontrivial examples of program code, we
-recommend releasing these examples in parallel under your choice of
-free software license, such as the GNU General Public License,
-to permit their use in free software.
-</P><P>
-
-<HR SIZE="6">
-<A NAME="SEC_Contents"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H1>Table of Contents</H1>
-<UL>
-<A NAME="TOC1" HREF="rluserman.html#SEC1">1. Command Line Editing</A>
-<BR>
-<UL>
-<A NAME="TOC2" HREF="rluserman.html#SEC2">1.1 Introduction to Line Editing</A>
-<BR>
-<A NAME="TOC3" HREF="rluserman.html#SEC3">1.2 Readline Interaction</A>
-<BR>
-<UL>
-<A NAME="TOC4" HREF="rluserman.html#SEC4">1.2.1 Readline Bare Essentials</A>
-<BR>
-<A NAME="TOC5" HREF="rluserman.html#SEC5">1.2.2 Readline Movement Commands</A>
-<BR>
-<A NAME="TOC6" HREF="rluserman.html#SEC6">1.2.3 Readline Killing Commands</A>
-<BR>
-<A NAME="TOC7" HREF="rluserman.html#SEC7">1.2.4 Readline Arguments</A>
-<BR>
-<A NAME="TOC8" HREF="rluserman.html#SEC8">1.2.5 Searching for Commands in the History</A>
-<BR>
-</UL>
-<A NAME="TOC9" HREF="rluserman.html#SEC9">1.3 Readline Init File</A>
-<BR>
-<UL>
-<A NAME="TOC10" HREF="rluserman.html#SEC10">1.3.1 Readline Init File Syntax</A>
-<BR>
-<A NAME="TOC11" HREF="rluserman.html#SEC11">1.3.2 Conditional Init Constructs</A>
-<BR>
-<A NAME="TOC12" HREF="rluserman.html#SEC12">1.3.3 Sample Init File</A>
-<BR>
-</UL>
-<A NAME="TOC13" HREF="rluserman.html#SEC13">1.4 Bindable Readline Commands</A>
-<BR>
-<UL>
-<A NAME="TOC14" HREF="rluserman.html#SEC14">1.4.1 Commands For Moving</A>
-<BR>
-<A NAME="TOC15" HREF="rluserman.html#SEC15">1.4.2 Commands For Manipulating The History</A>
-<BR>
-<A NAME="TOC16" HREF="rluserman.html#SEC16">1.4.3 Commands For Changing Text</A>
-<BR>
-<A NAME="TOC17" HREF="rluserman.html#SEC17">1.4.4 Killing And Yanking</A>
-<BR>
-<A NAME="TOC18" HREF="rluserman.html#SEC18">1.4.5 Specifying Numeric Arguments</A>
-<BR>
-<A NAME="TOC19" HREF="rluserman.html#SEC19">1.4.6 Letting Readline Type For You</A>
-<BR>
-<A NAME="TOC20" HREF="rluserman.html#SEC20">1.4.7 Keyboard Macros</A>
-<BR>
-<A NAME="TOC21" HREF="rluserman.html#SEC21">1.4.8 Some Miscellaneous Commands</A>
-<BR>
-</UL>
-<A NAME="TOC22" HREF="rluserman.html#SEC22">1.5 Readline vi Mode</A>
-<BR>
-</UL>
-<A NAME="TOC23" HREF="rluserman.html#SEC23">A. GNU Free Documentation License</A>
-<BR>
-</UL>
-<HR SIZE=1>
-<A NAME="SEC_OVERVIEW"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H1>Short Table of Contents</H1>
-<BLOCKQUOTE>
-<A NAME="TOC1" HREF="rluserman.html#SEC1">1. Command Line Editing</A>
-<BR>
-<A NAME="TOC23" HREF="rluserman.html#SEC23">A. GNU Free Documentation License</A>
-<BR>
-
-</BLOCKQUOTE>
-<HR SIZE=1>
-<A NAME="SEC_About"></A>
-<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Top">Top</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_About"> ? </A>]</TD>
-</TR></TABLE>
-<H1>About this document</H1>
-This document was generated by <I>Chet Ramey</I> on <I>February, 8  2011</I>
-using <A HREF="http://www.mathematik.uni-kl.de/~obachman/Texi2html
-"><I>texi2html</I></A>
-<P></P>  
-The buttons in the navigation panels have the following meaning:
-<P></P>
-<table border = "1">
-<TR>
-<TH> Button </TH>
-<TH> Name </TH>
-<TH> Go to </TH>
-<TH> From 1.2.3 go to</TH>
-</TR>
-<TR>
-<TD ALIGN="CENTER">
- [ &lt; ] </TD>
-<TD ALIGN="CENTER">
-Back
-</TD>
-<TD>
-previous section in reading order
-</TD>
-<TD>
-1.2.2
-</TD>
-</TR>
-<TR>
-<TD ALIGN="CENTER">
- [ &gt; ] </TD>
-<TD ALIGN="CENTER">
-Forward
-</TD>
-<TD>
-next section in reading order
-</TD>
-<TD>
-1.2.4
-</TD>
-</TR>
-<TR>
-<TD ALIGN="CENTER">
- [ &lt;&lt; ] </TD>
-<TD ALIGN="CENTER">
-FastBack
-</TD>
-<TD>
-previous or up-and-previous section 
-</TD>
-<TD>
-1.1
-</TD>
-</TR>
-<TR>
-<TD ALIGN="CENTER">
- [ Up ] </TD>
-<TD ALIGN="CENTER">
-Up
-</TD>
-<TD>
-up section
-</TD>
-<TD>
-1.2
-</TD>
-</TR>
-<TR>
-<TD ALIGN="CENTER">
- [ &gt;&gt; ] </TD>
-<TD ALIGN="CENTER">
-FastForward
-</TD>
-<TD>
-next or up-and-next section
-</TD>
-<TD>
-1.3
-</TD>
-</TR>
-<TR>
-<TD ALIGN="CENTER">
- [Top] </TD>
-<TD ALIGN="CENTER">
-Top
-</TD>
-<TD>
-cover (top) of document
-</TD>
-<TD>
- &nbsp; 
-</TD>
-</TR>
-<TR>
-<TD ALIGN="CENTER">
- [Contents] </TD>
-<TD ALIGN="CENTER">
-Contents
-</TD>
-<TD>
-table of contents
-</TD>
-<TD>
- &nbsp; 
-</TD>
-</TR>
-<TR>
-<TD ALIGN="CENTER">
- [Index] </TD>
-<TD ALIGN="CENTER">
-Index
-</TD>
-<TD>
-concept index
-</TD>
-<TD>
- &nbsp; 
-</TD>
-</TR>
-<TR>
-<TD ALIGN="CENTER">
- [ ? ] </TD>
-<TD ALIGN="CENTER">
-About
-</TD>
-<TD>
-this page
-</TD>
-<TD>
- &nbsp; 
-</TD>
-</TR>
-</TABLE>
-<P></P>
-where the <STRONG> Example </STRONG> assumes that the current position 
-is at <STRONG> Subsubsection One-Two-Three </STRONG> of a document of 
-the following structure:
-<UL>
-<LI> 1. Section One  </LI>
-<UL>
-<LI>1.1 Subsection One-One</LI>
-<UL>
-<LI> ... </LI>
-</UL>
-<LI>1.2 Subsection One-Two</LI>
-<UL>
-<LI>1.2.1 Subsubsection One-Two-One
-</LI><LI>1.2.2 Subsubsection One-Two-Two
-</LI><LI>1.2.3 Subsubsection One-Two-Three &nbsp; &nbsp; <STRONG>
-&lt;== Current Position </STRONG>
-</LI><LI>1.2.4 Subsubsection One-Two-Four
-</LI></UL>
-<LI>1.3 Subsection One-Three</LI>
-<UL>
-<LI> ... </LI>
-</UL>
-<LI>1.4 Subsection One-Four</LI>
-</UL>
-</UL>
-
-<HR SIZE=1>
-<BR>  
-<FONT SIZE="-1">
-This document was generated
-by <I>Chet Ramey</I> on <I>February, 8  2011</I>
-using <A HREF="http://www.mathematik.uni-kl.de/~obachman/Texi2html
-"><I>texi2html</I></A>
-
-</BODY>
-</HTML>
diff --git a/lib/readline/doc/rluserman.info b/lib/readline/doc/rluserman.info
deleted file mode 100644 (file)
index d92080f..0000000
+++ /dev/null
@@ -1,1875 +0,0 @@
-This is rluserman.info, produced by makeinfo version 4.13 from
-./rluserman.texi.
-
-This manual describes the end user interface of the GNU Readline Library
-(version 6.2, September 6 2010), a library which aids in the
-consistency of user interface across discrete programs which provide a
-command line interface.
-
-   Copyright (C) 1988-2011 Free Software Foundation, Inc.
-
-   Permission is granted to make and distribute verbatim copies of this
-manual provided the copyright notice and this permission notice are
-preserved on all copies.
-
-     Permission is granted to copy, distribute and/or modify this
-     document under the terms of the GNU Free Documentation License,
-     Version 1.3 or any later version published by the Free Software
-     Foundation; with no Invariant Sections, with the Front-Cover texts
-     being "A GNU Manual", and with the Back-Cover Texts as in (a)
-     below.  A copy of the license is included in the section entitled
-     "GNU Free Documentation License".
-
-     (a) The FSF's Back-Cover Text is: You are free to copy and modify
-     this GNU manual.  Buying copies from GNU Press supports the FSF in
-     developing GNU and promoting software freedom."
-
-
-INFO-DIR-SECTION Libraries
-START-INFO-DIR-ENTRY
-* RLuserman: (rluserman).       The GNU readline library User's Manual.
-END-INFO-DIR-ENTRY
-
-\1f
-File: rluserman.info,  Node: Top,  Next: Command Line Editing,  Up: (dir)
-
-GNU Readline Library
-********************
-
-This document describes the end user interface of the GNU Readline
-Library, a utility which aids in the consistency of user interface
-across discrete programs which provide a command line interface.
-
-* Menu:
-
-* Command Line Editing::          GNU Readline User's Manual.
-* GNU Free Documentation License::     License for copying this manual.
-
-\1f
-File: rluserman.info,  Node: Command Line Editing,  Next: GNU Free Documentation License,  Prev: Top,  Up: Top
-
-1 Command Line Editing
-**********************
-
-This chapter describes the basic features of the GNU command line
-editing interface.
-
-* Menu:
-
-* Introduction and Notation::  Notation used in this text.
-* Readline Interaction::       The minimum set of commands for editing a line.
-* Readline Init File::         Customizing Readline from a user's view.
-* Bindable Readline Commands:: A description of most of the Readline commands
-                               available for binding
-* Readline vi Mode::           A short description of how to make Readline
-                               behave like the vi editor.
-
-\1f
-File: rluserman.info,  Node: Introduction and Notation,  Next: Readline Interaction,  Up: Command Line Editing
-
-1.1 Introduction to Line Editing
-================================
-
-The following paragraphs describe the notation used to represent
-keystrokes.
-
-   The text `C-k' is read as `Control-K' and describes the character
-produced when the <k> key is pressed while the Control key is depressed.
-
-   The text `M-k' is read as `Meta-K' and describes the character
-produced when the Meta key (if you have one) is depressed, and the <k>
-key is pressed.  The Meta key is labeled <ALT> on many keyboards.  On
-keyboards with two keys labeled <ALT> (usually to either side of the
-space bar), the <ALT> on the left side is generally set to work as a
-Meta key.  The <ALT> key on the right may also be configured to work as
-a Meta key or may be configured as some other modifier, such as a
-Compose key for typing accented characters.
-
-   If you do not have a Meta or <ALT> key, or another key working as a
-Meta key, the identical keystroke can be generated by typing <ESC>
-_first_, and then typing <k>.  Either process is known as "metafying"
-the <k> key.
-
-   The text `M-C-k' is read as `Meta-Control-k' and describes the
-character produced by "metafying" `C-k'.
-
-   In addition, several keys have their own names.  Specifically,
-<DEL>, <ESC>, <LFD>, <SPC>, <RET>, and <TAB> all stand for themselves
-when seen in this text, or in an init file (*note Readline Init File::).
-If your keyboard lacks a <LFD> key, typing <C-j> will produce the
-desired character.  The <RET> key may be labeled <Return> or <Enter> on
-some keyboards.
-
-\1f
-File: rluserman.info,  Node: Readline Interaction,  Next: Readline Init File,  Prev: Introduction and Notation,  Up: Command Line Editing
-
-1.2 Readline Interaction
-========================
-
-Often during an interactive session you type in a long line of text,
-only to notice that the first word on the line is misspelled.  The
-Readline library gives you a set of commands for manipulating the text
-as you type it in, allowing you to just fix your typo, and not forcing
-you to retype the majority of the line.  Using these editing commands,
-you move the cursor to the place that needs correction, and delete or
-insert the text of the corrections.  Then, when you are satisfied with
-the line, you simply press <RET>.  You do not have to be at the end of
-the line to press <RET>; the entire line is accepted regardless of the
-location of the cursor within the line.
-
-* Menu:
-
-* Readline Bare Essentials::   The least you need to know about Readline.
-* Readline Movement Commands:: Moving about the input line.
-* Readline Killing Commands::  How to delete text, and how to get it back!
-* Readline Arguments::         Giving numeric arguments to commands.
-* Searching::                  Searching through previous lines.
-
-\1f
-File: rluserman.info,  Node: Readline Bare Essentials,  Next: Readline Movement Commands,  Up: Readline Interaction
-
-1.2.1 Readline Bare Essentials
-------------------------------
-
-In order to enter characters into the line, simply type them.  The typed
-character appears where the cursor was, and then the cursor moves one
-space to the right.  If you mistype a character, you can use your erase
-character to back up and delete the mistyped character.
-
-   Sometimes you may mistype a character, and not notice the error
-until you have typed several other characters.  In that case, you can
-type `C-b' to move the cursor to the left, and then correct your
-mistake.  Afterwards, you can move the cursor to the right with `C-f'.
-
-   When you add text in the middle of a line, you will notice that
-characters to the right of the cursor are `pushed over' to make room
-for the text that you have inserted.  Likewise, when you delete text
-behind the cursor, characters to the right of the cursor are `pulled
-back' to fill in the blank space created by the removal of the text.  A
-list of the bare essentials for editing the text of an input line
-follows.
-
-`C-b'
-     Move back one character.
-
-`C-f'
-     Move forward one character.
-
-<DEL> or <Backspace>
-     Delete the character to the left of the cursor.
-
-`C-d'
-     Delete the character underneath the cursor.
-
-Printing characters
-     Insert the character into the line at the cursor.
-
-`C-_' or `C-x C-u'
-     Undo the last editing command.  You can undo all the way back to an
-     empty line.
-
-(Depending on your configuration, the <Backspace> key be set to delete
-the character to the left of the cursor and the <DEL> key set to delete
-the character underneath the cursor, like `C-d', rather than the
-character to the left of the cursor.)
-
-\1f
-File: rluserman.info,  Node: Readline Movement Commands,  Next: Readline Killing Commands,  Prev: Readline Bare Essentials,  Up: Readline Interaction
-
-1.2.2 Readline Movement Commands
---------------------------------
-
-The above table describes the most basic keystrokes that you need in
-order to do editing of the input line.  For your convenience, many
-other commands have been added in addition to `C-b', `C-f', `C-d', and
-<DEL>.  Here are some commands for moving more rapidly about the line.
-
-`C-a'
-     Move to the start of the line.
-
-`C-e'
-     Move to the end of the line.
-
-`M-f'
-     Move forward a word, where a word is composed of letters and
-     digits.
-
-`M-b'
-     Move backward a word.
-
-`C-l'
-     Clear the screen, reprinting the current line at the top.
-
-   Notice how `C-f' moves forward a character, while `M-f' moves
-forward a word.  It is a loose convention that control keystrokes
-operate on characters while meta keystrokes operate on words.
-
-\1f
-File: rluserman.info,  Node: Readline Killing Commands,  Next: Readline Arguments,  Prev: Readline Movement Commands,  Up: Readline Interaction
-
-1.2.3 Readline Killing Commands
--------------------------------
-
-"Killing" text means to delete the text from the line, but to save it
-away for later use, usually by "yanking" (re-inserting) it back into
-the line.  (`Cut' and `paste' are more recent jargon for `kill' and
-`yank'.)
-
-   If the description for a command says that it `kills' text, then you
-can be sure that you can get the text back in a different (or the same)
-place later.
-
-   When you use a kill command, the text is saved in a "kill-ring".
-Any number of consecutive kills save all of the killed text together, so
-that when you yank it back, you get it all.  The kill ring is not line
-specific; the text that you killed on a previously typed line is
-available to be yanked back later, when you are typing another line.  
-
-   Here is the list of commands for killing text.
-
-`C-k'
-     Kill the text from the current cursor position to the end of the
-     line.
-
-`M-d'
-     Kill from the cursor to the end of the current word, or, if between
-     words, to the end of the next word.  Word boundaries are the same
-     as those used by `M-f'.
-
-`M-<DEL>'
-     Kill from the cursor the start of the current word, or, if between
-     words, to the start of the previous word.  Word boundaries are the
-     same as those used by `M-b'.
-
-`C-w'
-     Kill from the cursor to the previous whitespace.  This is
-     different than `M-<DEL>' because the word boundaries differ.
-
-
-   Here is how to "yank" the text back into the line.  Yanking means to
-copy the most-recently-killed text from the kill buffer.
-
-`C-y'
-     Yank the most recently killed text back into the buffer at the
-     cursor.
-
-`M-y'
-     Rotate the kill-ring, and yank the new top.  You can only do this
-     if the prior command is `C-y' or `M-y'.
-
-\1f
-File: rluserman.info,  Node: Readline Arguments,  Next: Searching,  Prev: Readline Killing Commands,  Up: Readline Interaction
-
-1.2.4 Readline Arguments
-------------------------
-
-You can pass numeric arguments to Readline commands.  Sometimes the
-argument acts as a repeat count, other times it is the sign of the
-argument that is significant.  If you pass a negative argument to a
-command which normally acts in a forward direction, that command will
-act in a backward direction.  For example, to kill text back to the
-start of the line, you might type `M-- C-k'.
-
-   The general way to pass numeric arguments to a command is to type
-meta digits before the command.  If the first `digit' typed is a minus
-sign (`-'), then the sign of the argument will be negative.  Once you
-have typed one meta digit to get the argument started, you can type the
-remainder of the digits, and then the command.  For example, to give
-the `C-d' command an argument of 10, you could type `M-1 0 C-d', which
-will delete the next ten characters on the input line.
-
-\1f
-File: rluserman.info,  Node: Searching,  Prev: Readline Arguments,  Up: Readline Interaction
-
-1.2.5 Searching for Commands in the History
--------------------------------------------
-
-Readline provides commands for searching through the command history
-for lines containing a specified string.  There are two search modes:
-"incremental" and "non-incremental".
-
-   Incremental searches begin before the user has finished typing the
-search string.  As each character of the search string is typed,
-Readline displays the next entry from the history matching the string
-typed so far.  An incremental search requires only as many characters
-as needed to find the desired history entry.  To search backward in the
-history for a particular string, type `C-r'.  Typing `C-s' searches
-forward through the history.  The characters present in the value of
-the `isearch-terminators' variable are used to terminate an incremental
-search.  If that variable has not been assigned a value, the <ESC> and
-`C-J' characters will terminate an incremental search.  `C-g' will
-abort an incremental search and restore the original line.  When the
-search is terminated, the history entry containing the search string
-becomes the current line.
-
-   To find other matching entries in the history list, type `C-r' or
-`C-s' as appropriate.  This will search backward or forward in the
-history for the next entry matching the search string typed so far.
-Any other key sequence bound to a Readline command will terminate the
-search and execute that command.  For instance, a <RET> will terminate
-the search and accept the line, thereby executing the command from the
-history list.  A movement command will terminate the search, make the
-last line found the current line, and begin editing.
-
-   Readline remembers the last incremental search string.  If two
-`C-r's are typed without any intervening characters defining a new
-search string, any remembered search string is used.
-
-   Non-incremental searches read the entire search string before
-starting to search for matching history lines.  The search string may be
-typed by the user or be part of the contents of the current line.
-
-\1f
-File: rluserman.info,  Node: Readline Init File,  Next: Bindable Readline Commands,  Prev: Readline Interaction,  Up: Command Line Editing
-
-1.3 Readline Init File
-======================
-
-Although the Readline library comes with a set of Emacs-like
-keybindings installed by default, it is possible to use a different set
-of keybindings.  Any user can customize programs that use Readline by
-putting commands in an "inputrc" file, conventionally in his home
-directory.  The name of this file is taken from the value of the
-environment variable `INPUTRC'.  If that variable is unset, the default
-is `~/.inputrc'.  If that file does not exist or cannot be read, the
-ultimate default is `/etc/inputrc'.
-
-   When a program which uses the Readline library starts up, the init
-file is read, and the key bindings are set.
-
-   In addition, the `C-x C-r' command re-reads this init file, thus
-incorporating any changes that you might have made to it.
-
-* Menu:
-
-* Readline Init File Syntax::  Syntax for the commands in the inputrc file.
-
-* Conditional Init Constructs::        Conditional key bindings in the inputrc file.
-
-* Sample Init File::           An example inputrc file.
-
-\1f
-File: rluserman.info,  Node: Readline Init File Syntax,  Next: Conditional Init Constructs,  Up: Readline Init File
-
-1.3.1 Readline Init File Syntax
--------------------------------
-
-There are only a few basic constructs allowed in the Readline init
-file.  Blank lines are ignored.  Lines beginning with a `#' are
-comments.  Lines beginning with a `$' indicate conditional constructs
-(*note Conditional Init Constructs::).  Other lines denote variable
-settings and key bindings.
-
-Variable Settings
-     You can modify the run-time behavior of Readline by altering the
-     values of variables in Readline using the `set' command within the
-     init file.  The syntax is simple:
-
-          set VARIABLE VALUE
-
-     Here, for example, is how to change from the default Emacs-like
-     key binding to use `vi' line editing commands:
-
-          set editing-mode vi
-
-     Variable names and values, where appropriate, are recognized
-     without regard to case.  Unrecognized variable names are ignored.
-
-     Boolean variables (those that can be set to on or off) are set to
-     on if the value is null or empty, ON (case-insensitive), or 1.
-     Any other value results in the variable being set to off.
-
-     A great deal of run-time behavior is changeable with the following
-     variables.
-
-    `bell-style'
-          Controls what happens when Readline wants to ring the
-          terminal bell.  If set to `none', Readline never rings the
-          bell.  If set to `visible', Readline uses a visible bell if
-          one is available.  If set to `audible' (the default),
-          Readline attempts to ring the terminal's bell.
-
-    `bind-tty-special-chars'
-          If set to `on', Readline attempts to bind the control
-          characters treated specially by the kernel's terminal driver
-          to their Readline equivalents.
-
-    `comment-begin'
-          The string to insert at the beginning of the line when the
-          `insert-comment' command is executed.  The default value is
-          `"#"'.
-
-    `completion-display-width'
-          The number of screen columns used to display possible matches
-          when performing completion.  The value is ignored if it is
-          less than 0 or greater than the terminal screen width.  A
-          value of 0 will cause matches to be displayed one per line.
-          The default value is -1.
-
-    `completion-ignore-case'
-          If set to `on', Readline performs filename matching and
-          completion in a case-insensitive fashion.  The default value
-          is `off'.
-
-    `completion-map-case'
-          If set to `on', and COMPLETION-IGNORE-CASE is enabled,
-          Readline treats hyphens (`-') and underscores (`_') as
-          equivalent when performing case-insensitive filename matching
-          and completion.
-
-    `completion-prefix-display-length'
-          The length in characters of the common prefix of a list of
-          possible completions that is displayed without modification.
-          When set to a value greater than zero, common prefixes longer
-          than this value are replaced with an ellipsis when displaying
-          possible completions.
-
-    `completion-query-items'
-          The number of possible completions that determines when the
-          user is asked whether the list of possibilities should be
-          displayed.  If the number of possible completions is greater
-          than this value, Readline will ask the user whether or not he
-          wishes to view them; otherwise, they are simply listed.  This
-          variable must be set to an integer value greater than or
-          equal to 0.  A negative value means Readline should never ask.
-          The default limit is `100'.
-
-    `convert-meta'
-          If set to `on', Readline will convert characters with the
-          eighth bit set to an ASCII key sequence by stripping the
-          eighth bit and prefixing an <ESC> character, converting them
-          to a meta-prefixed key sequence.  The default value is `on'.
-
-    `disable-completion'
-          If set to `On', Readline will inhibit word completion.
-          Completion  characters will be inserted into the line as if
-          they had been mapped to `self-insert'.  The default is `off'.
-
-    `editing-mode'
-          The `editing-mode' variable controls which default set of key
-          bindings is used.  By default, Readline starts up in Emacs
-          editing mode, where the keystrokes are most similar to Emacs.
-          This variable can be set to either `emacs' or `vi'.
-
-    `echo-control-characters'
-          When set to `on', on operating systems that indicate they
-          support it, readline echoes a character corresponding to a
-          signal generated from the keyboard.  The default is `on'.
-
-    `enable-keypad'
-          When set to `on', Readline will try to enable the application
-          keypad when it is called.  Some systems need this to enable
-          the arrow keys.  The default is `off'.
-
-    `enable-meta-key'
-          When set to `on', Readline will try to enable any meta
-          modifier key the terminal claims to support when it is
-          called.  On many terminals, the meta key is used to send
-          eight-bit characters.  The default is `on'.
-
-    `expand-tilde'
-          If set to `on', tilde expansion is performed when Readline
-          attempts word completion.  The default is `off'.
-
-    `history-preserve-point'
-          If set to `on', the history code attempts to place the point
-          (the current cursor position) at the same location on each
-          history line retrieved with `previous-history' or
-          `next-history'.  The default is `off'.
-
-    `history-size'
-          Set the maximum number of history entries saved in the
-          history list.  If set to zero, the number of entries in the
-          history list is not limited.
-
-    `horizontal-scroll-mode'
-          This variable can be set to either `on' or `off'.  Setting it
-          to `on' means that the text of the lines being edited will
-          scroll horizontally on a single screen line when they are
-          longer than the width of the screen, instead of wrapping onto
-          a new screen line.  By default, this variable is set to `off'.
-
-    `input-meta'
-          If set to `on', Readline will enable eight-bit input (it will
-          not clear the eighth bit in the characters it reads),
-          regardless of what the terminal claims it can support.  The
-          default value is `off'.  The name `meta-flag' is a synonym
-          for this variable.
-
-    `isearch-terminators'
-          The string of characters that should terminate an incremental
-          search without subsequently executing the character as a
-          command (*note Searching::).  If this variable has not been
-          given a value, the characters <ESC> and `C-J' will terminate
-          an incremental search.
-
-    `keymap'
-          Sets Readline's idea of the current keymap for key binding
-          commands.  Acceptable `keymap' names are `emacs',
-          `emacs-standard', `emacs-meta', `emacs-ctlx', `vi', `vi-move',
-          `vi-command', and `vi-insert'.  `vi' is equivalent to
-          `vi-command'; `emacs' is equivalent to `emacs-standard'.  The
-          default value is `emacs'.  The value of the `editing-mode'
-          variable also affects the default keymap.
-
-    `mark-directories'
-          If set to `on', completed directory names have a slash
-          appended.  The default is `on'.
-
-    `mark-modified-lines'
-          This variable, when set to `on', causes Readline to display an
-          asterisk (`*') at the start of history lines which have been
-          modified.  This variable is `off' by default.
-
-    `mark-symlinked-directories'
-          If set to `on', completed names which are symbolic links to
-          directories have a slash appended (subject to the value of
-          `mark-directories').  The default is `off'.
-
-    `match-hidden-files'
-          This variable, when set to `on', causes Readline to match
-          files whose names begin with a `.' (hidden files) when
-          performing filename completion.  If set to `off', the leading
-          `.' must be supplied by the user in the filename to be
-          completed.  This variable is `on' by default.
-
-    `menu-complete-display-prefix'
-          If set to `on', menu completion displays the common prefix of
-          the list of possible completions (which may be empty) before
-          cycling through the list.  The default is `off'.
-
-    `output-meta'
-          If set to `on', Readline will display characters with the
-          eighth bit set directly rather than as a meta-prefixed escape
-          sequence.  The default is `off'.
-
-    `page-completions'
-          If set to `on', Readline uses an internal `more'-like pager
-          to display a screenful of possible completions at a time.
-          This variable is `on' by default.
-
-    `print-completions-horizontally'
-          If set to `on', Readline will display completions with matches
-          sorted horizontally in alphabetical order, rather than down
-          the screen.  The default is `off'.
-
-    `revert-all-at-newline'
-          If set to `on', Readline will undo all changes to history
-          lines before returning when `accept-line' is executed.  By
-          default, history lines may be modified and retain individual
-          undo lists across calls to `readline'.  The default is `off'.
-
-    `show-all-if-ambiguous'
-          This alters the default behavior of the completion functions.
-          If set to `on', words which have more than one possible
-          completion cause the matches to be listed immediately instead
-          of ringing the bell.  The default value is `off'.
-
-    `show-all-if-unmodified'
-          This alters the default behavior of the completion functions
-          in a fashion similar to SHOW-ALL-IF-AMBIGUOUS.  If set to
-          `on', words which have more than one possible completion
-          without any possible partial completion (the possible
-          completions don't share a common prefix) cause the matches to
-          be listed immediately instead of ringing the bell.  The
-          default value is `off'.
-
-    `skip-completed-text'
-          If set to `on', this alters the default completion behavior
-          when inserting a single match into the line.  It's only
-          active when performing completion in the middle of a word.
-          If enabled, readline does not insert characters from the
-          completion that match characters after point in the word
-          being completed, so portions of the word following the cursor
-          are not duplicated.  For instance, if this is enabled,
-          attempting completion when the cursor is after the `e' in
-          `Makefile' will result in `Makefile' rather than
-          `Makefilefile', assuming there is a single possible
-          completion.  The default value is `off'.
-
-    `visible-stats'
-          If set to `on', a character denoting a file's type is
-          appended to the filename when listing possible completions.
-          The default is `off'.
-
-
-Key Bindings
-     The syntax for controlling key bindings in the init file is
-     simple.  First you need to find the name of the command that you
-     want to change.  The following sections contain tables of the
-     command name, the default keybinding, if any, and a short
-     description of what the command does.
-
-     Once you know the name of the command, simply place on a line in
-     the init file the name of the key you wish to bind the command to,
-     a colon, and then the name of the command.  There can be no space
-     between the key name and the colon - that will be interpreted as
-     part of the key name.  The name of the key can be expressed in
-     different ways, depending on what you find most comfortable.
-
-     In addition to command names, readline allows keys to be bound to
-     a string that is inserted when the key is pressed (a MACRO).
-
-    KEYNAME: FUNCTION-NAME or MACRO
-          KEYNAME is the name of a key spelled out in English.  For
-          example:
-               Control-u: universal-argument
-               Meta-Rubout: backward-kill-word
-               Control-o: "> output"
-
-          In the above example, `C-u' is bound to the function
-          `universal-argument', `M-DEL' is bound to the function
-          `backward-kill-word', and `C-o' is bound to run the macro
-          expressed on the right hand side (that is, to insert the text
-          `> output' into the line).
-
-          A number of symbolic character names are recognized while
-          processing this key binding syntax: DEL, ESC, ESCAPE, LFD,
-          NEWLINE, RET, RETURN, RUBOUT, SPACE, SPC, and TAB.
-
-    "KEYSEQ": FUNCTION-NAME or MACRO
-          KEYSEQ differs from KEYNAME above in that strings denoting an
-          entire key sequence can be specified, by placing the key
-          sequence in double quotes.  Some GNU Emacs style key escapes
-          can be used, as in the following example, but the special
-          character names are not recognized.
-
-               "\C-u": universal-argument
-               "\C-x\C-r": re-read-init-file
-               "\e[11~": "Function Key 1"
-
-          In the above example, `C-u' is again bound to the function
-          `universal-argument' (just as it was in the first example),
-          `C-x C-r' is bound to the function `re-read-init-file', and
-          `<ESC> <[> <1> <1> <~>' is bound to insert the text `Function
-          Key 1'.
-
-
-     The following GNU Emacs style escape sequences are available when
-     specifying key sequences:
-
-    `\C-'
-          control prefix
-
-    `\M-'
-          meta prefix
-
-    `\e'
-          an escape character
-
-    `\\'
-          backslash
-
-    `\"'
-          <">, a double quotation mark
-
-    `\''
-          <'>, a single quote or apostrophe
-
-     In addition to the GNU Emacs style escape sequences, a second set
-     of backslash escapes is available:
-
-    `\a'
-          alert (bell)
-
-    `\b'
-          backspace
-
-    `\d'
-          delete
-
-    `\f'
-          form feed
-
-    `\n'
-          newline
-
-    `\r'
-          carriage return
-
-    `\t'
-          horizontal tab
-
-    `\v'
-          vertical tab
-
-    `\NNN'
-          the eight-bit character whose value is the octal value NNN
-          (one to three digits)
-
-    `\xHH'
-          the eight-bit character whose value is the hexadecimal value
-          HH (one or two hex digits)
-
-     When entering the text of a macro, single or double quotes must be
-     used to indicate a macro definition.  Unquoted text is assumed to
-     be a function name.  In the macro body, the backslash escapes
-     described above are expanded.  Backslash will quote any other
-     character in the macro text, including `"' and `''.  For example,
-     the following binding will make `C-x \' insert a single `\' into
-     the line:
-          "\C-x\\": "\\"
-
-
-\1f
-File: rluserman.info,  Node: Conditional Init Constructs,  Next: Sample Init File,  Prev: Readline Init File Syntax,  Up: Readline Init File
-
-1.3.2 Conditional Init Constructs
----------------------------------
-
-Readline implements a facility similar in spirit to the conditional
-compilation features of the C preprocessor which allows key bindings
-and variable settings to be performed as the result of tests.  There
-are four parser directives used.
-
-`$if'
-     The `$if' construct allows bindings to be made based on the
-     editing mode, the terminal being used, or the application using
-     Readline.  The text of the test extends to the end of the line; no
-     characters are required to isolate it.
-
-    `mode'
-          The `mode=' form of the `$if' directive is used to test
-          whether Readline is in `emacs' or `vi' mode.  This may be
-          used in conjunction with the `set keymap' command, for
-          instance, to set bindings in the `emacs-standard' and
-          `emacs-ctlx' keymaps only if Readline is starting out in
-          `emacs' mode.
-
-    `term'
-          The `term=' form may be used to include terminal-specific key
-          bindings, perhaps to bind the key sequences output by the
-          terminal's function keys.  The word on the right side of the
-          `=' is tested against both the full name of the terminal and
-          the portion of the terminal name before the first `-'.  This
-          allows `sun' to match both `sun' and `sun-cmd', for instance.
-
-    `application'
-          The APPLICATION construct is used to include
-          application-specific settings.  Each program using the
-          Readline library sets the APPLICATION NAME, and you can test
-          for a particular value.  This could be used to bind key
-          sequences to functions useful for a specific program.  For
-          instance, the following command adds a key sequence that
-          quotes the current or previous word in Bash:
-               $if Bash
-               # Quote the current or previous word
-               "\C-xq": "\eb\"\ef\""
-               $endif
-
-`$endif'
-     This command, as seen in the previous example, terminates an `$if'
-     command.
-
-`$else'
-     Commands in this branch of the `$if' directive are executed if the
-     test fails.
-
-`$include'
-     This directive takes a single filename as an argument and reads
-     commands and bindings from that file.  For example, the following
-     directive reads from `/etc/inputrc':
-          $include /etc/inputrc
-
-\1f
-File: rluserman.info,  Node: Sample Init File,  Prev: Conditional Init Constructs,  Up: Readline Init File
-
-1.3.3 Sample Init File
-----------------------
-
-Here is an example of an INPUTRC file.  This illustrates key binding,
-variable assignment, and conditional syntax.
-
-
-     # This file controls the behaviour of line input editing for
-     # programs that use the GNU Readline library.  Existing
-     # programs include FTP, Bash, and GDB.
-     #
-     # You can re-read the inputrc file with C-x C-r.
-     # Lines beginning with '#' are comments.
-     #
-     # First, include any systemwide bindings and variable
-     # assignments from /etc/Inputrc
-     $include /etc/Inputrc
-
-     #
-     # Set various bindings for emacs mode.
-
-     set editing-mode emacs
-
-     $if mode=emacs
-
-     Meta-Control-h:   backward-kill-word      Text after the function name is ignored
-
-     #
-     # Arrow keys in keypad mode
-     #
-     #"\M-OD":        backward-char
-     #"\M-OC":        forward-char
-     #"\M-OA":        previous-history
-     #"\M-OB":        next-history
-     #
-     # Arrow keys in ANSI mode
-     #
-     "\M-[D":        backward-char
-     "\M-[C":        forward-char
-     "\M-[A":        previous-history
-     "\M-[B":        next-history
-     #
-     # Arrow keys in 8 bit keypad mode
-     #
-     #"\M-\C-OD":       backward-char
-     #"\M-\C-OC":       forward-char
-     #"\M-\C-OA":       previous-history
-     #"\M-\C-OB":       next-history
-     #
-     # Arrow keys in 8 bit ANSI mode
-     #
-     #"\M-\C-[D":       backward-char
-     #"\M-\C-[C":       forward-char
-     #"\M-\C-[A":       previous-history
-     #"\M-\C-[B":       next-history
-
-     C-q: quoted-insert
-
-     $endif
-
-     # An old-style binding.  This happens to be the default.
-     TAB: complete
-
-     # Macros that are convenient for shell interaction
-     $if Bash
-     # edit the path
-     "\C-xp": "PATH=${PATH}\e\C-e\C-a\ef\C-f"
-     # prepare to type a quoted word --
-     # insert open and close double quotes
-     # and move to just after the open quote
-     "\C-x\"": "\"\"\C-b"
-     # insert a backslash (testing backslash escapes
-     # in sequences and macros)
-     "\C-x\\": "\\"
-     # Quote the current or previous word
-     "\C-xq": "\eb\"\ef\""
-     # Add a binding to refresh the line, which is unbound
-     "\C-xr": redraw-current-line
-     # Edit variable on current line.
-     "\M-\C-v": "\C-a\C-k$\C-y\M-\C-e\C-a\C-y="
-     $endif
-
-     # use a visible bell if one is available
-     set bell-style visible
-
-     # don't strip characters to 7 bits when reading
-     set input-meta on
-
-     # allow iso-latin1 characters to be inserted rather
-     # than converted to prefix-meta sequences
-     set convert-meta off
-
-     # display characters with the eighth bit set directly
-     # rather than as meta-prefixed characters
-     set output-meta on
-
-     # if there are more than 150 possible completions for
-     # a word, ask the user if he wants to see all of them
-     set completion-query-items 150
-
-     # For FTP
-     $if Ftp
-     "\C-xg": "get \M-?"
-     "\C-xt": "put \M-?"
-     "\M-.": yank-last-arg
-     $endif
-
-\1f
-File: rluserman.info,  Node: Bindable Readline Commands,  Next: Readline vi Mode,  Prev: Readline Init File,  Up: Command Line Editing
-
-1.4 Bindable Readline Commands
-==============================
-
-* Menu:
-
-* Commands For Moving::                Moving about the line.
-* Commands For History::       Getting at previous lines.
-* Commands For Text::          Commands for changing text.
-* Commands For Killing::       Commands for killing and yanking.
-* Numeric Arguments::          Specifying numeric arguments, repeat counts.
-* Commands For Completion::    Getting Readline to do the typing for you.
-* Keyboard Macros::            Saving and re-executing typed characters
-* Miscellaneous Commands::     Other miscellaneous commands.
-
-   This section describes Readline commands that may be bound to key
-sequences.  Command names without an accompanying key sequence are
-unbound by default.
-
-   In the following descriptions, "point" refers to the current cursor
-position, and "mark" refers to a cursor position saved by the
-`set-mark' command.  The text between the point and mark is referred to
-as the "region".
-
-\1f
-File: rluserman.info,  Node: Commands For Moving,  Next: Commands For History,  Up: Bindable Readline Commands
-
-1.4.1 Commands For Moving
--------------------------
-
-`beginning-of-line (C-a)'
-     Move to the start of the current line.
-
-`end-of-line (C-e)'
-     Move to the end of the line.
-
-`forward-char (C-f)'
-     Move forward a character.
-
-`backward-char (C-b)'
-     Move back a character.
-
-`forward-word (M-f)'
-     Move forward to the end of the next word.  Words are composed of
-     letters and digits.
-
-`backward-word (M-b)'
-     Move back to the start of the current or previous word.  Words are
-     composed of letters and digits.
-
-`clear-screen (C-l)'
-     Clear the screen and redraw the current line, leaving the current
-     line at the top of the screen.
-
-`redraw-current-line ()'
-     Refresh the current line.  By default, this is unbound.
-
-
-\1f
-File: rluserman.info,  Node: Commands For History,  Next: Commands For Text,  Prev: Commands For Moving,  Up: Bindable Readline Commands
-
-1.4.2 Commands For Manipulating The History
--------------------------------------------
-
-`accept-line (Newline or Return)'
-     Accept the line regardless of where the cursor is.  If this line is
-     non-empty, it may be added to the history list for future recall
-     with `add_history()'.  If this line is a modified history line,
-     the history line is restored to its original state.
-
-`previous-history (C-p)'
-     Move `back' through the history list, fetching the previous
-     command.
-
-`next-history (C-n)'
-     Move `forward' through the history list, fetching the next command.
-
-`beginning-of-history (M-<)'
-     Move to the first line in the history.
-
-`end-of-history (M->)'
-     Move to the end of the input history, i.e., the line currently
-     being entered.
-
-`reverse-search-history (C-r)'
-     Search backward starting at the current line and moving `up'
-     through the history as necessary.  This is an incremental search.
-
-`forward-search-history (C-s)'
-     Search forward starting at the current line and moving `down'
-     through the the history as necessary.  This is an incremental
-     search.
-
-`non-incremental-reverse-search-history (M-p)'
-     Search backward starting at the current line and moving `up'
-     through the history as necessary using a non-incremental search
-     for a string supplied by the user.
-
-`non-incremental-forward-search-history (M-n)'
-     Search forward starting at the current line and moving `down'
-     through the the history as necessary using a non-incremental search
-     for a string supplied by the user.
-
-`history-search-forward ()'
-     Search forward through the history for the string of characters
-     between the start of the current line and the point.  This is a
-     non-incremental search.  By default, this command is unbound.
-
-`history-search-backward ()'
-     Search backward through the history for the string of characters
-     between the start of the current line and the point.  This is a
-     non-incremental search.  By default, this command is unbound.
-
-`yank-nth-arg (M-C-y)'
-     Insert the first argument to the previous command (usually the
-     second word on the previous line) at point.  With an argument N,
-     insert the Nth word from the previous command (the words in the
-     previous command begin with word 0).  A negative argument inserts
-     the Nth word from the end of the previous command.  Once the
-     argument N is computed, the argument is extracted as if the `!N'
-     history expansion had been specified.
-
-`yank-last-arg (M-. or M-_)'
-     Insert last argument to the previous command (the last word of the
-     previous history entry).  With a numeric argument, behave exactly
-     like `yank-nth-arg'.  Successive calls to `yank-last-arg' move
-     back through the history list, inserting the last word (or the
-     word specified by the argument to the first call) of each line in
-     turn.  Any numeric argument supplied to these successive calls
-     determines the direction to move through the history.  A negative
-     argument switches the direction through the history (back or
-     forward).  The history expansion facilities are used to extract
-     the last argument, as if the `!$' history expansion had been
-     specified.
-
-
-\1f
-File: rluserman.info,  Node: Commands For Text,  Next: Commands For Killing,  Prev: Commands For History,  Up: Bindable Readline Commands
-
-1.4.3 Commands For Changing Text
---------------------------------
-
-`delete-char (C-d)'
-     Delete the character at point.  If point is at the beginning of
-     the line, there are no characters in the line, and the last
-     character typed was not bound to `delete-char', then return EOF.
-
-`backward-delete-char (Rubout)'
-     Delete the character behind the cursor.  A numeric argument means
-     to kill the characters instead of deleting them.
-
-`forward-backward-delete-char ()'
-     Delete the character under the cursor, unless the cursor is at the
-     end of the line, in which case the character behind the cursor is
-     deleted.  By default, this is not bound to a key.
-
-`quoted-insert (C-q or C-v)'
-     Add the next character typed to the line verbatim.  This is how to
-     insert key sequences like `C-q', for example.
-
-`tab-insert (M-<TAB>)'
-     Insert a tab character.
-
-`self-insert (a, b, A, 1, !, ...)'
-     Insert yourself.
-
-`transpose-chars (C-t)'
-     Drag the character before the cursor forward over the character at
-     the cursor, moving the cursor forward as well.  If the insertion
-     point is at the end of the line, then this transposes the last two
-     characters of the line.  Negative arguments have no effect.
-
-`transpose-words (M-t)'
-     Drag the word before point past the word after point, moving point
-     past that word as well.  If the insertion point is at the end of
-     the line, this transposes the last two words on the line.
-
-`upcase-word (M-u)'
-     Uppercase the current (or following) word.  With a negative
-     argument, uppercase the previous word, but do not move the cursor.
-
-`downcase-word (M-l)'
-     Lowercase the current (or following) word.  With a negative
-     argument, lowercase the previous word, but do not move the cursor.
-
-`capitalize-word (M-c)'
-     Capitalize the current (or following) word.  With a negative
-     argument, capitalize the previous word, but do not move the cursor.
-
-`overwrite-mode ()'
-     Toggle overwrite mode.  With an explicit positive numeric argument,
-     switches to overwrite mode.  With an explicit non-positive numeric
-     argument, switches to insert mode.  This command affects only
-     `emacs' mode; `vi' mode does overwrite differently.  Each call to
-     `readline()' starts in insert mode.
-
-     In overwrite mode, characters bound to `self-insert' replace the
-     text at point rather than pushing the text to the right.
-     Characters bound to `backward-delete-char' replace the character
-     before point with a space.
-
-     By default, this command is unbound.
-
-
-\1f
-File: rluserman.info,  Node: Commands For Killing,  Next: Numeric Arguments,  Prev: Commands For Text,  Up: Bindable Readline Commands
-
-1.4.4 Killing And Yanking
--------------------------
-
-`kill-line (C-k)'
-     Kill the text from point to the end of the line.
-
-`backward-kill-line (C-x Rubout)'
-     Kill backward to the beginning of the line.
-
-`unix-line-discard (C-u)'
-     Kill backward from the cursor to the beginning of the current line.
-
-`kill-whole-line ()'
-     Kill all characters on the current line, no matter where point is.
-     By default, this is unbound.
-
-`kill-word (M-d)'
-     Kill from point to the end of the current word, or if between
-     words, to the end of the next word.  Word boundaries are the same
-     as `forward-word'.
-
-`backward-kill-word (M-<DEL>)'
-     Kill the word behind point.  Word boundaries are the same as
-     `backward-word'.
-
-`unix-word-rubout (C-w)'
-     Kill the word behind point, using white space as a word boundary.
-     The killed text is saved on the kill-ring.
-
-`unix-filename-rubout ()'
-     Kill the word behind point, using white space and the slash
-     character as the word boundaries.  The killed text is saved on the
-     kill-ring.
-
-`delete-horizontal-space ()'
-     Delete all spaces and tabs around point.  By default, this is
-     unbound.
-
-`kill-region ()'
-     Kill the text in the current region.  By default, this command is
-     unbound.
-
-`copy-region-as-kill ()'
-     Copy the text in the region to the kill buffer, so it can be yanked
-     right away.  By default, this command is unbound.
-
-`copy-backward-word ()'
-     Copy the word before point to the kill buffer.  The word
-     boundaries are the same as `backward-word'.  By default, this
-     command is unbound.
-
-`copy-forward-word ()'
-     Copy the word following point to the kill buffer.  The word
-     boundaries are the same as `forward-word'.  By default, this
-     command is unbound.
-
-`yank (C-y)'
-     Yank the top of the kill ring into the buffer at point.
-
-`yank-pop (M-y)'
-     Rotate the kill-ring, and yank the new top.  You can only do this
-     if the prior command is `yank' or `yank-pop'.
-
-\1f
-File: rluserman.info,  Node: Numeric Arguments,  Next: Commands For Completion,  Prev: Commands For Killing,  Up: Bindable Readline Commands
-
-1.4.5 Specifying Numeric Arguments
-----------------------------------
-
-`digit-argument (M-0, M-1, ... M--)'
-     Add this digit to the argument already accumulating, or start a new
-     argument.  `M--' starts a negative argument.
-
-`universal-argument ()'
-     This is another way to specify an argument.  If this command is
-     followed by one or more digits, optionally with a leading minus
-     sign, those digits define the argument.  If the command is
-     followed by digits, executing `universal-argument' again ends the
-     numeric argument, but is otherwise ignored.  As a special case, if
-     this command is immediately followed by a character that is
-     neither a digit or minus sign, the argument count for the next
-     command is multiplied by four.  The argument count is initially
-     one, so executing this function the first time makes the argument
-     count four, a second time makes the argument count sixteen, and so
-     on.  By default, this is not bound to a key.
-
-\1f
-File: rluserman.info,  Node: Commands For Completion,  Next: Keyboard Macros,  Prev: Numeric Arguments,  Up: Bindable Readline Commands
-
-1.4.6 Letting Readline Type For You
------------------------------------
-
-`complete (<TAB>)'
-     Attempt to perform completion on the text before point.  The
-     actual completion performed is application-specific.  The default
-     is filename completion.
-
-`possible-completions (M-?)'
-     List the possible completions of the text before point.  When
-     displaying completions, Readline sets the number of columns used
-     for display to the value of `completion-display-width', the value
-     of the environment variable `COLUMNS', or the screen width, in
-     that order.
-
-`insert-completions (M-*)'
-     Insert all completions of the text before point that would have
-     been generated by `possible-completions'.
-
-`menu-complete ()'
-     Similar to `complete', but replaces the word to be completed with
-     a single match from the list of possible completions.  Repeated
-     execution of `menu-complete' steps through the list of possible
-     completions, inserting each match in turn.  At the end of the list
-     of completions, the bell is rung (subject to the setting of
-     `bell-style') and the original text is restored.  An argument of N
-     moves N positions forward in the list of matches; a negative
-     argument may be used to move backward through the list.  This
-     command is intended to be bound to <TAB>, but is unbound by
-     default.
-
-`menu-complete-backward ()'
-     Identical to `menu-complete', but moves backward through the list
-     of possible completions, as if `menu-complete' had been given a
-     negative argument.
-
-`delete-char-or-list ()'
-     Deletes the character under the cursor if not at the beginning or
-     end of the line (like `delete-char').  If at the end of the line,
-     behaves identically to `possible-completions'.  This command is
-     unbound by default.
-
-
-\1f
-File: rluserman.info,  Node: Keyboard Macros,  Next: Miscellaneous Commands,  Prev: Commands For Completion,  Up: Bindable Readline Commands
-
-1.4.7 Keyboard Macros
----------------------
-
-`start-kbd-macro (C-x ()'
-     Begin saving the characters typed into the current keyboard macro.
-
-`end-kbd-macro (C-x ))'
-     Stop saving the characters typed into the current keyboard macro
-     and save the definition.
-
-`call-last-kbd-macro (C-x e)'
-     Re-execute the last keyboard macro defined, by making the
-     characters in the macro appear as if typed at the keyboard.
-
-
-\1f
-File: rluserman.info,  Node: Miscellaneous Commands,  Prev: Keyboard Macros,  Up: Bindable Readline Commands
-
-1.4.8 Some Miscellaneous Commands
----------------------------------
-
-`re-read-init-file (C-x C-r)'
-     Read in the contents of the INPUTRC file, and incorporate any
-     bindings or variable assignments found there.
-
-`abort (C-g)'
-     Abort the current editing command and ring the terminal's bell
-     (subject to the setting of `bell-style').
-
-`do-uppercase-version (M-a, M-b, M-X, ...)'
-     If the metafied character X is lowercase, run the command that is
-     bound to the corresponding uppercase character.
-
-`prefix-meta (<ESC>)'
-     Metafy the next character typed.  This is for keyboards without a
-     meta key.  Typing `<ESC> f' is equivalent to typing `M-f'.
-
-`undo (C-_ or C-x C-u)'
-     Incremental undo, separately remembered for each line.
-
-`revert-line (M-r)'
-     Undo all changes made to this line.  This is like executing the
-     `undo' command enough times to get back to the beginning.
-
-`tilde-expand (M-~)'
-     Perform tilde expansion on the current word.
-
-`set-mark (C-@)'
-     Set the mark to the point.  If a numeric argument is supplied, the
-     mark is set to that position.
-
-`exchange-point-and-mark (C-x C-x)'
-     Swap the point with the mark.  The current cursor position is set
-     to the saved position, and the old cursor position is saved as the
-     mark.
-
-`character-search (C-])'
-     A character is read and point is moved to the next occurrence of
-     that character.  A negative count searches for previous
-     occurrences.
-
-`character-search-backward (M-C-])'
-     A character is read and point is moved to the previous occurrence
-     of that character.  A negative count searches for subsequent
-     occurrences.
-
-`skip-csi-sequence ()'
-     Read enough characters to consume a multi-key sequence such as
-     those defined for keys like Home and End.  Such sequences begin
-     with a Control Sequence Indicator (CSI), usually ESC-[.  If this
-     sequence is bound to "\e[", keys producing such sequences will
-     have no effect unless explicitly bound to a readline command,
-     instead of inserting stray characters into the editing buffer.
-     This is unbound by default, but usually bound to ESC-[.
-
-`insert-comment (M-#)'
-     Without a numeric argument, the value of the `comment-begin'
-     variable is inserted at the beginning of the current line.  If a
-     numeric argument is supplied, this command acts as a toggle:  if
-     the characters at the beginning of the line do not match the value
-     of `comment-begin', the value is inserted, otherwise the
-     characters in `comment-begin' are deleted from the beginning of
-     the line.  In either case, the line is accepted as if a newline
-     had been typed.
-
-`dump-functions ()'
-     Print all of the functions and their key bindings to the Readline
-     output stream.  If a numeric argument is supplied, the output is
-     formatted in such a way that it can be made part of an INPUTRC
-     file.  This command is unbound by default.
-
-`dump-variables ()'
-     Print all of the settable variables and their values to the
-     Readline output stream.  If a numeric argument is supplied, the
-     output is formatted in such a way that it can be made part of an
-     INPUTRC file.  This command is unbound by default.
-
-`dump-macros ()'
-     Print all of the Readline key sequences bound to macros and the
-     strings they output.  If a numeric argument is supplied, the
-     output is formatted in such a way that it can be made part of an
-     INPUTRC file.  This command is unbound by default.
-
-`emacs-editing-mode (C-e)'
-     When in `vi' command mode, this causes a switch to `emacs' editing
-     mode.
-
-`vi-editing-mode (M-C-j)'
-     When in `emacs' editing mode, this causes a switch to `vi' editing
-     mode.
-
-
-\1f
-File: rluserman.info,  Node: Readline vi Mode,  Prev: Bindable Readline Commands,  Up: Command Line Editing
-
-1.5 Readline vi Mode
-====================
-
-While the Readline library does not have a full set of `vi' editing
-functions, it does contain enough to allow simple editing of the line.
-The Readline `vi' mode behaves as specified in the POSIX standard.
-
-   In order to switch interactively between `emacs' and `vi' editing
-modes, use the command `M-C-j' (bound to emacs-editing-mode when in
-`vi' mode and to vi-editing-mode in `emacs' mode).  The Readline
-default is `emacs' mode.
-
-   When you enter a line in `vi' mode, you are already placed in
-`insertion' mode, as if you had typed an `i'.  Pressing <ESC> switches
-you into `command' mode, where you can edit the text of the line with
-the standard `vi' movement keys, move to previous history lines with
-`k' and subsequent lines with `j', and so forth.
-
-\1f
-File: rluserman.info,  Node: GNU Free Documentation License,  Prev: Command Line Editing,  Up: Top
-
-Appendix A GNU Free Documentation License
-*****************************************
-
-                     Version 1.3, 3 November 2008
-
-     Copyright (C) 2000, 2001, 2002, 2007, 2008 Free Software Foundation, Inc.
-     `http://fsf.org/'
-
-     Everyone is permitted to copy and distribute verbatim copies
-     of this license document, but changing it is not allowed.
-
-  0. PREAMBLE
-
-     The purpose of this License is to make a manual, textbook, or other
-     functional and useful document "free" in the sense of freedom: to
-     assure everyone the effective freedom to copy and redistribute it,
-     with or without modifying it, either commercially or
-     noncommercially.  Secondarily, this License preserves for the
-     author and publisher a way to get credit for their work, while not
-     being considered responsible for modifications made by others.
-
-     This License is a kind of "copyleft", which means that derivative
-     works of the document must themselves be free in the same sense.
-     It complements the GNU General Public License, which is a copyleft
-     license designed for free software.
-
-     We have designed this License in order to use it for manuals for
-     free software, because free software needs free documentation: a
-     free program should come with manuals providing the same freedoms
-     that the software does.  But this License is not limited to
-     software manuals; it can be used for any textual work, regardless
-     of subject matter or whether it is published as a printed book.
-     We recommend this License principally for works whose purpose is
-     instruction or reference.
-
-  1. APPLICABILITY AND DEFINITIONS
-
-     This License applies to any manual or other work, in any medium,
-     that contains a notice placed by the copyright holder saying it
-     can be distributed under the terms of this License.  Such a notice
-     grants a world-wide, royalty-free license, unlimited in duration,
-     to use that work under the conditions stated herein.  The
-     "Document", below, refers to any such manual or work.  Any member
-     of the public is a licensee, and is addressed as "you".  You
-     accept the license if you copy, modify or distribute the work in a
-     way requiring permission under copyright law.
-
-     A "Modified Version" of the Document means any work containing the
-     Document or a portion of it, either copied verbatim, or with
-     modifications and/or translated into another language.
-
-     A "Secondary Section" is a named appendix or a front-matter section
-     of the Document that deals exclusively with the relationship of the
-     publishers or authors of the Document to the Document's overall
-     subject (or to related matters) and contains nothing that could
-     fall directly within that overall subject.  (Thus, if the Document
-     is in part a textbook of mathematics, a Secondary Section may not
-     explain any mathematics.)  The relationship could be a matter of
-     historical connection with the subject or with related matters, or
-     of legal, commercial, philosophical, ethical or political position
-     regarding them.
-
-     The "Invariant Sections" are certain Secondary Sections whose
-     titles are designated, as being those of Invariant Sections, in
-     the notice that says that the Document is released under this
-     License.  If a section does not fit the above definition of
-     Secondary then it is not allowed to be designated as Invariant.
-     The Document may contain zero Invariant Sections.  If the Document
-     does not identify any Invariant Sections then there are none.
-
-     The "Cover Texts" are certain short passages of text that are
-     listed, as Front-Cover Texts or Back-Cover Texts, in the notice
-     that says that the Document is released under this License.  A
-     Front-Cover Text may be at most 5 words, and a Back-Cover Text may
-     be at most 25 words.
-
-     A "Transparent" copy of the Document means a machine-readable copy,
-     represented in a format whose specification is available to the
-     general public, that is suitable for revising the document
-     straightforwardly with generic text editors or (for images
-     composed of pixels) generic paint programs or (for drawings) some
-     widely available drawing editor, and that is suitable for input to
-     text formatters or for automatic translation to a variety of
-     formats suitable for input to text formatters.  A copy made in an
-     otherwise Transparent file format whose markup, or absence of
-     markup, has been arranged to thwart or discourage subsequent
-     modification by readers is not Transparent.  An image format is
-     not Transparent if used for any substantial amount of text.  A
-     copy that is not "Transparent" is called "Opaque".
-
-     Examples of suitable formats for Transparent copies include plain
-     ASCII without markup, Texinfo input format, LaTeX input format,
-     SGML or XML using a publicly available DTD, and
-     standard-conforming simple HTML, PostScript or PDF designed for
-     human modification.  Examples of transparent image formats include
-     PNG, XCF and JPG.  Opaque formats include proprietary formats that
-     can be read and edited only by proprietary word processors, SGML or
-     XML for which the DTD and/or processing tools are not generally
-     available, and the machine-generated HTML, PostScript or PDF
-     produced by some word processors for output purposes only.
-
-     The "Title Page" means, for a printed book, the title page itself,
-     plus such following pages as are needed to hold, legibly, the
-     material this License requires to appear in the title page.  For
-     works in formats which do not have any title page as such, "Title
-     Page" means the text near the most prominent appearance of the
-     work's title, preceding the beginning of the body of the text.
-
-     The "publisher" means any person or entity that distributes copies
-     of the Document to the public.
-
-     A section "Entitled XYZ" means a named subunit of the Document
-     whose title either is precisely XYZ or contains XYZ in parentheses
-     following text that translates XYZ in another language.  (Here XYZ
-     stands for a specific section name mentioned below, such as
-     "Acknowledgements", "Dedications", "Endorsements", or "History".)
-     To "Preserve the Title" of such a section when you modify the
-     Document means that it remains a section "Entitled XYZ" according
-     to this definition.
-
-     The Document may include Warranty Disclaimers next to the notice
-     which states that this License applies to the Document.  These
-     Warranty Disclaimers are considered to be included by reference in
-     this License, but only as regards disclaiming warranties: any other
-     implication that these Warranty Disclaimers may have is void and
-     has no effect on the meaning of this License.
-
-  2. VERBATIM COPYING
-
-     You may copy and distribute the Document in any medium, either
-     commercially or noncommercially, provided that this License, the
-     copyright notices, and the license notice saying this License
-     applies to the Document are reproduced in all copies, and that you
-     add no other conditions whatsoever to those of this License.  You
-     may not use technical measures to obstruct or control the reading
-     or further copying of the copies you make or distribute.  However,
-     you may accept compensation in exchange for copies.  If you
-     distribute a large enough number of copies you must also follow
-     the conditions in section 3.
-
-     You may also lend copies, under the same conditions stated above,
-     and you may publicly display copies.
-
-  3. COPYING IN QUANTITY
-
-     If you publish printed copies (or copies in media that commonly
-     have printed covers) of the Document, numbering more than 100, and
-     the Document's license notice requires Cover Texts, you must
-     enclose the copies in covers that carry, clearly and legibly, all
-     these Cover Texts: Front-Cover Texts on the front cover, and
-     Back-Cover Texts on the back cover.  Both covers must also clearly
-     and legibly identify you as the publisher of these copies.  The
-     front cover must present the full title with all words of the
-     title equally prominent and visible.  You may add other material
-     on the covers in addition.  Copying with changes limited to the
-     covers, as long as they preserve the title of the Document and
-     satisfy these conditions, can be treated as verbatim copying in
-     other respects.
-
-     If the required texts for either cover are too voluminous to fit
-     legibly, you should put the first ones listed (as many as fit
-     reasonably) on the actual cover, and continue the rest onto
-     adjacent pages.
-
-     If you publish or distribute Opaque copies of the Document
-     numbering more than 100, you must either include a
-     machine-readable Transparent copy along with each Opaque copy, or
-     state in or with each Opaque copy a computer-network location from
-     which the general network-using public has access to download
-     using public-standard network protocols a complete Transparent
-     copy of the Document, free of added material.  If you use the
-     latter option, you must take reasonably prudent steps, when you
-     begin distribution of Opaque copies in quantity, to ensure that
-     this Transparent copy will remain thus accessible at the stated
-     location until at least one year after the last time you
-     distribute an Opaque copy (directly or through your agents or
-     retailers) of that edition to the public.
-
-     It is requested, but not required, that you contact the authors of
-     the Document well before redistributing any large number of
-     copies, to give them a chance to provide you with an updated
-     version of the Document.
-
-  4. MODIFICATIONS
-
-     You may copy and distribute a Modified Version of the Document
-     under the conditions of sections 2 and 3 above, provided that you
-     release the Modified Version under precisely this License, with
-     the Modified Version filling the role of the Document, thus
-     licensing distribution and modification of the Modified Version to
-     whoever possesses a copy of it.  In addition, you must do these
-     things in the Modified Version:
-
-       A. Use in the Title Page (and on the covers, if any) a title
-          distinct from that of the Document, and from those of
-          previous versions (which should, if there were any, be listed
-          in the History section of the Document).  You may use the
-          same title as a previous version if the original publisher of
-          that version gives permission.
-
-       B. List on the Title Page, as authors, one or more persons or
-          entities responsible for authorship of the modifications in
-          the Modified Version, together with at least five of the
-          principal authors of the Document (all of its principal
-          authors, if it has fewer than five), unless they release you
-          from this requirement.
-
-       C. State on the Title page the name of the publisher of the
-          Modified Version, as the publisher.
-
-       D. Preserve all the copyright notices of the Document.
-
-       E. Add an appropriate copyright notice for your modifications
-          adjacent to the other copyright notices.
-
-       F. Include, immediately after the copyright notices, a license
-          notice giving the public permission to use the Modified
-          Version under the terms of this License, in the form shown in
-          the Addendum below.
-
-       G. Preserve in that license notice the full lists of Invariant
-          Sections and required Cover Texts given in the Document's
-          license notice.
-
-       H. Include an unaltered copy of this License.
-
-       I. Preserve the section Entitled "History", Preserve its Title,
-          and add to it an item stating at least the title, year, new
-          authors, and publisher of the Modified Version as given on
-          the Title Page.  If there is no section Entitled "History" in
-          the Document, create one stating the title, year, authors,
-          and publisher of the Document as given on its Title Page,
-          then add an item describing the Modified Version as stated in
-          the previous sentence.
-
-       J. Preserve the network location, if any, given in the Document
-          for public access to a Transparent copy of the Document, and
-          likewise the network locations given in the Document for
-          previous versions it was based on.  These may be placed in
-          the "History" section.  You may omit a network location for a
-          work that was published at least four years before the
-          Document itself, or if the original publisher of the version
-          it refers to gives permission.
-
-       K. For any section Entitled "Acknowledgements" or "Dedications",
-          Preserve the Title of the section, and preserve in the
-          section all the substance and tone of each of the contributor
-          acknowledgements and/or dedications given therein.
-
-       L. Preserve all the Invariant Sections of the Document,
-          unaltered in their text and in their titles.  Section numbers
-          or the equivalent are not considered part of the section
-          titles.
-
-       M. Delete any section Entitled "Endorsements".  Such a section
-          may not be included in the Modified Version.
-
-       N. Do not retitle any existing section to be Entitled
-          "Endorsements" or to conflict in title with any Invariant
-          Section.
-
-       O. Preserve any Warranty Disclaimers.
-
-     If the Modified Version includes new front-matter sections or
-     appendices that qualify as Secondary Sections and contain no
-     material copied from the Document, you may at your option
-     designate some or all of these sections as invariant.  To do this,
-     add their titles to the list of Invariant Sections in the Modified
-     Version's license notice.  These titles must be distinct from any
-     other section titles.
-
-     You may add a section Entitled "Endorsements", provided it contains
-     nothing but endorsements of your Modified Version by various
-     parties--for example, statements of peer review or that the text
-     has been approved by an organization as the authoritative
-     definition of a standard.
-
-     You may add a passage of up to five words as a Front-Cover Text,
-     and a passage of up to 25 words as a Back-Cover Text, to the end
-     of the list of Cover Texts in the Modified Version.  Only one
-     passage of Front-Cover Text and one of Back-Cover Text may be
-     added by (or through arrangements made by) any one entity.  If the
-     Document already includes a cover text for the same cover,
-     previously added by you or by arrangement made by the same entity
-     you are acting on behalf of, you may not add another; but you may
-     replace the old one, on explicit permission from the previous
-     publisher that added the old one.
-
-     The author(s) and publisher(s) of the Document do not by this
-     License give permission to use their names for publicity for or to
-     assert or imply endorsement of any Modified Version.
-
-  5. COMBINING DOCUMENTS
-
-     You may combine the Document with other documents released under
-     this License, under the terms defined in section 4 above for
-     modified versions, provided that you include in the combination
-     all of the Invariant Sections of all of the original documents,
-     unmodified, and list them all as Invariant Sections of your
-     combined work in its license notice, and that you preserve all
-     their Warranty Disclaimers.
-
-     The combined work need only contain one copy of this License, and
-     multiple identical Invariant Sections may be replaced with a single
-     copy.  If there are multiple Invariant Sections with the same name
-     but different contents, make the title of each such section unique
-     by adding at the end of it, in parentheses, the name of the
-     original author or publisher of that section if known, or else a
-     unique number.  Make the same adjustment to the section titles in
-     the list of Invariant Sections in the license notice of the
-     combined work.
-
-     In the combination, you must combine any sections Entitled
-     "History" in the various original documents, forming one section
-     Entitled "History"; likewise combine any sections Entitled
-     "Acknowledgements", and any sections Entitled "Dedications".  You
-     must delete all sections Entitled "Endorsements."
-
-  6. COLLECTIONS OF DOCUMENTS
-
-     You may make a collection consisting of the Document and other
-     documents released under this License, and replace the individual
-     copies of this License in the various documents with a single copy
-     that is included in the collection, provided that you follow the
-     rules of this License for verbatim copying of each of the
-     documents in all other respects.
-
-     You may extract a single document from such a collection, and
-     distribute it individually under this License, provided you insert
-     a copy of this License into the extracted document, and follow
-     this License in all other respects regarding verbatim copying of
-     that document.
-
-  7. AGGREGATION WITH INDEPENDENT WORKS
-
-     A compilation of the Document or its derivatives with other
-     separate and independent documents or works, in or on a volume of
-     a storage or distribution medium, is called an "aggregate" if the
-     copyright resulting from the compilation is not used to limit the
-     legal rights of the compilation's users beyond what the individual
-     works permit.  When the Document is included in an aggregate, this
-     License does not apply to the other works in the aggregate which
-     are not themselves derivative works of the Document.
-
-     If the Cover Text requirement of section 3 is applicable to these
-     copies of the Document, then if the Document is less than one half
-     of the entire aggregate, the Document's Cover Texts may be placed
-     on covers that bracket the Document within the aggregate, or the
-     electronic equivalent of covers if the Document is in electronic
-     form.  Otherwise they must appear on printed covers that bracket
-     the whole aggregate.
-
-  8. TRANSLATION
-
-     Translation is considered a kind of modification, so you may
-     distribute translations of the Document under the terms of section
-     4.  Replacing Invariant Sections with translations requires special
-     permission from their copyright holders, but you may include
-     translations of some or all Invariant Sections in addition to the
-     original versions of these Invariant Sections.  You may include a
-     translation of this License, and all the license notices in the
-     Document, and any Warranty Disclaimers, provided that you also
-     include the original English version of this License and the
-     original versions of those notices and disclaimers.  In case of a
-     disagreement between the translation and the original version of
-     this License or a notice or disclaimer, the original version will
-     prevail.
-
-     If a section in the Document is Entitled "Acknowledgements",
-     "Dedications", or "History", the requirement (section 4) to
-     Preserve its Title (section 1) will typically require changing the
-     actual title.
-
-  9. TERMINATION
-
-     You may not copy, modify, sublicense, or distribute the Document
-     except as expressly provided under this License.  Any attempt
-     otherwise to copy, modify, sublicense, or distribute it is void,
-     and will automatically terminate your rights under this License.
-
-     However, if you cease all violation of this License, then your
-     license from a particular copyright holder is reinstated (a)
-     provisionally, unless and until the copyright holder explicitly
-     and finally terminates your license, and (b) permanently, if the
-     copyright holder fails to notify you of the violation by some
-     reasonable means prior to 60 days after the cessation.
-
-     Moreover, your license from a particular copyright holder is
-     reinstated permanently if the copyright holder notifies you of the
-     violation by some reasonable means, this is the first time you have
-     received notice of violation of this License (for any work) from
-     that copyright holder, and you cure the violation prior to 30 days
-     after your receipt of the notice.
-
-     Termination of your rights under this section does not terminate
-     the licenses of parties who have received copies or rights from
-     you under this License.  If your rights have been terminated and
-     not permanently reinstated, receipt of a copy of some or all of
-     the same material does not give you any rights to use it.
-
- 10. FUTURE REVISIONS OF THIS LICENSE
-
-     The Free Software Foundation may publish new, revised versions of
-     the GNU Free Documentation License from time to time.  Such new
-     versions will be similar in spirit to the present version, but may
-     differ in detail to address new problems or concerns.  See
-     `http://www.gnu.org/copyleft/'.
-
-     Each version of the License is given a distinguishing version
-     number.  If the Document specifies that a particular numbered
-     version of this License "or any later version" applies to it, you
-     have the option of following the terms and conditions either of
-     that specified version or of any later version that has been
-     published (not as a draft) by the Free Software Foundation.  If
-     the Document does not specify a version number of this License,
-     you may choose any version ever published (not as a draft) by the
-     Free Software Foundation.  If the Document specifies that a proxy
-     can decide which future versions of this License can be used, that
-     proxy's public statement of acceptance of a version permanently
-     authorizes you to choose that version for the Document.
-
- 11. RELICENSING
-
-     "Massive Multiauthor Collaboration Site" (or "MMC Site") means any
-     World Wide Web server that publishes copyrightable works and also
-     provides prominent facilities for anybody to edit those works.  A
-     public wiki that anybody can edit is an example of such a server.
-     A "Massive Multiauthor Collaboration" (or "MMC") contained in the
-     site means any set of copyrightable works thus published on the MMC
-     site.
-
-     "CC-BY-SA" means the Creative Commons Attribution-Share Alike 3.0
-     license published by Creative Commons Corporation, a not-for-profit
-     corporation with a principal place of business in San Francisco,
-     California, as well as future copyleft versions of that license
-     published by that same organization.
-
-     "Incorporate" means to publish or republish a Document, in whole or
-     in part, as part of another Document.
-
-     An MMC is "eligible for relicensing" if it is licensed under this
-     License, and if all works that were first published under this
-     License somewhere other than this MMC, and subsequently
-     incorporated in whole or in part into the MMC, (1) had no cover
-     texts or invariant sections, and (2) were thus incorporated prior
-     to November 1, 2008.
-
-     The operator of an MMC Site may republish an MMC contained in the
-     site under CC-BY-SA on the same site at any time before August 1,
-     2009, provided the MMC is eligible for relicensing.
-
-
-ADDENDUM: How to use this License for your documents
-====================================================
-
-To use this License in a document you have written, include a copy of
-the License in the document and put the following copyright and license
-notices just after the title page:
-
-       Copyright (C)  YEAR  YOUR NAME.
-       Permission is granted to copy, distribute and/or modify this document
-       under the terms of the GNU Free Documentation License, Version 1.3
-       or any later version published by the Free Software Foundation;
-       with no Invariant Sections, no Front-Cover Texts, and no Back-Cover
-       Texts.  A copy of the license is included in the section entitled ``GNU
-       Free Documentation License''.
-
-   If you have Invariant Sections, Front-Cover Texts and Back-Cover
-Texts, replace the "with...Texts." line with this:
-
-         with the Invariant Sections being LIST THEIR TITLES, with
-         the Front-Cover Texts being LIST, and with the Back-Cover Texts
-         being LIST.
-
-   If you have Invariant Sections without Cover Texts, or some other
-combination of the three, merge those two alternatives to suit the
-situation.
-
-   If your document contains nontrivial examples of program code, we
-recommend releasing these examples in parallel under your choice of
-free software license, such as the GNU General Public License, to
-permit their use in free software.
-
-
-\1f
-Tag Table:
-Node: Top\7f1329
-Node: Command Line Editing\7f1783
-Node: Introduction and Notation\7f2437
-Node: Readline Interaction\7f4061
-Node: Readline Bare Essentials\7f5254
-Node: Readline Movement Commands\7f7045
-Node: Readline Killing Commands\7f8012
-Node: Readline Arguments\7f9934
-Node: Searching\7f10980
-Node: Readline Init File\7f13133
-Node: Readline Init File Syntax\7f14288
-Node: Conditional Init Constructs\7f29350
-Node: Sample Init File\7f31885
-Node: Bindable Readline Commands\7f35004
-Node: Commands For Moving\7f36063
-Node: Commands For History\7f36926
-Node: Commands For Text\7f40332
-Node: Commands For Killing\7f43060
-Node: Numeric Arguments\7f45204
-Node: Commands For Completion\7f46345
-Node: Keyboard Macros\7f48316
-Node: Miscellaneous Commands\7f48889
-Node: Readline vi Mode\7f52747
-Node: GNU Free Documentation License\7f53661
-\1f
-End Tag Table
diff --git a/lib/readline/doc/rluserman.ky b/lib/readline/doc/rluserman.ky
deleted file mode 100644 (file)
index e69de29..0000000
diff --git a/lib/readline/doc/rluserman.log b/lib/readline/doc/rluserman.log
deleted file mode 100644 (file)
index 10238c5..0000000
+++ /dev/null
@@ -1,215 +0,0 @@
-This is TeX, Version 3.141592 (Web2C 7.5.4) (format=tex 2008.12.11)  8 FEB 2011 11:10
-**/usr/homes/chet/src/bash/src/lib/readline/doc/rluserman.texi
-(/usr/homes/chet/src/bash/src/lib/readline/doc/rluserman.texi (./texinfo.tex
-Loading texinfo [version 2009-01-18.17]:
-\bindingoffset=\dimen16
-\normaloffset=\dimen17
-\pagewidth=\dimen18
-\pageheight=\dimen19
-\outerhsize=\dimen20
-\outervsize=\dimen21
-\cornerlong=\dimen22
-\cornerthick=\dimen23
-\topandbottommargin=\dimen24
-\headlinebox=\box16
-\footlinebox=\box17
-\margin=\insert252
-\EMsimple=\toks12
-\groupbox=\box18
-\groupinvalidhelp=\toks13
-\mil=\dimen25
-\exdentamount=\skip18
-\inmarginspacing=\skip19
- pdf,
-\tempnum=\count26
-\lnkcount=\count27
-\filename=\toks14
-\filenamelength=\count28
-\pgn=\count29
-\toksA=\toks15
-\toksB=\toks16
-\toksC=\toks17
-\toksD=\toks18
-\boxA=\box19
-\countA=\count30
-\nopdfimagehelp=\toks19
- fonts,
-\sffam=\fam8
-\textleading=\dimen26
- markup,
-\fontdepth=\count31
- glyphs,
-\errorbox=\box20
-
-page headings,
-\titlepagetopglue=\skip20
-\titlepagebottomglue=\skip21
-\evenheadline=\toks20
-\oddheadline=\toks21
-\evenfootline=\toks22
-\oddfootline=\toks23
- tables,
-\tableindent=\dimen27
-\itemindent=\dimen28
-\itemmargin=\dimen29
-\itemmax=\dimen30
-\itemno=\count32
-\multitableparskip=\skip22
-\multitableparindent=\skip23
-\multitablecolspace=\dimen31
-\multitablelinespace=\skip24
-\colcount=\count33
-\everytab=\toks24
- conditionals,
-\doignorecount=\count34
- indexing,
-\whatsitskip=\skip25
-\whatsitpenalty=\count35
-\secondaryindent=\skip26
-\partialpage=\box21
-\doublecolumnhsize=\dimen32
- sectioning,
-\unnumberedno=\count36
-\chapno=\count37
-\secno=\count38
-\subsecno=\count39
-\subsubsecno=\count40
-\appendixno=\count41
-\absseclevel=\count42
-\secbase=\count43
-\chapheadingskip=\skip27
-\secheadingskip=\skip28
-\subsecheadingskip=\skip29
- toc,
-\tocfile=\write0
-\contentsrightmargin=\skip30
-\savepageno=\count44
-\lastnegativepageno=\count45
-\tocindent=\dimen33
- environments,
-\lispnarrowing=\skip31
-\envskipamount=\skip32
-\circthick=\dimen34
-\cartouter=\dimen35
-\cartinner=\dimen36
-\normbskip=\skip33
-\normpskip=\skip34
-\normlskip=\skip35
-\lskip=\skip36
-\rskip=\skip37
-\nonfillparindent=\dimen37
-\tabw=\dimen38
-
-defuns,
-\defbodyindent=\skip38
-\defargsindent=\skip39
-\deflastargmargin=\skip40
-\defunpenalty=\count46
-\parencount=\count47
-\brackcount=\count48
- macros,
-\macscribble=\write1
-\paramno=\count49
-\macname=\toks25
- cross references,
-\auxfile=\write2
-\savesfregister=\count50
- insertions,
-\footnoteno=\count51
-\SAVEfootins=\box22
-\SAVEmargin=\box23
-
-(/sw/share/texmf-dist/tex/generic/epsf/epsf.tex
-\epsffilein=\read0
-\epsfframemargin=\dimen39
-\epsfframethickness=\dimen40
-\epsfrsize=\dimen41
-\epsftmp=\dimen42
-\epsftsize=\dimen43
-\epsfxsize=\dimen44
-\epsfysize=\dimen45
-\pspoints=\dimen46
-\epsfnoopenhelp=\toks26
-)
-\noepsfhelp=\toks27
- localization,
-\nolanghelp=\toks28
-\countUTFx=\count52
-\countUTFy=\count53
-\countUTFz=\count54
- formatting,
-\defaultparindent=\dimen47
-
-and turning on texinfo input format.) (./rluserman.aux)
-\openout2 = `rluserman.aux'.
-
-@cpindfile=@write3
-@fnindfile=@write4
-@vrindfile=@write5
-@tpindfile=@write6
-@kyindfile=@write7
-@pgindfile=@write8
- (./version.texi)
-[1
-\openout3 = `rluserman.cp'.
-
-\openout4 = `rluserman.fn'.
-
-\openout5 = `rluserman.vr'.
-
-\openout6 = `rluserman.tp'.
-
-\openout7 = `rluserman.ky'.
-
-\openout8 = `rluserman.pg'.
-
-]
-\openout1 = `rluserman.tmp'.
-
- (./rluserman.tmp) [2] (./rluserman.toc) [-1] (./rluser.texi
-@btindfile=@write9
- Chapter 1
-\openout0 = `rluserman.toc'.
-
-
-[1
-\openout9 = `rluserman.bt'.
-
-] [2] [3] [4] [5] [6]
-Underfull \hbox (badness 5231) in paragraph at lines 551--567
- @texttt emacs-meta[]@textrm , @texttt emacs-ctlx[]@textrm , @texttt vi[]@textr
-m , @texttt vi-move[]@textrm , @texttt vi-command[]@textrm , and
-
-@hbox(7.60416+2.12917)x433.62, glue set 3.7426
-.@glue(@leftskip) 115.63242
-.@texttt e
-.@texttt m
-.@texttt a
-.@texttt c
-.etc.
-
-[7] [8] [9] [10] [11]
-Overfull \hbox (26.43913pt too wide) in paragraph at lines 894--894
- []@texttt Meta-Control-h: backward-kill-word Text after the function name is i
-gnored[] |
-
-@hbox(6.69167+2.43333)x433.62
-.@glue(@leftskip) 28.90755
-.@hbox(0.0+0.0)x0.0
-.@texttt M
-.@texttt e
-.@texttt t
-.etc.
-
-[12] [13] [14] [15] [16] [17] [18] [19] [20]) Appendix A [21] (./fdl.texi
-[22] [23] [24] [25] [26] [27] [28]) [29] ) 
-Here is how much of TeX's memory you used:
- 1743 strings out of 97980
- 20821 string characters out of 1221004
- 78011 words of memory out of 1500000
- 2579 multiletter control sequences out of 10000+50000
- 32127 words of font info for 112 fonts, out of 1200000 for 2000
- 51 hyphenation exceptions out of 8191
- 16i,6n,14p,331b,534s stack positions out of 5000i,500n,6000p,200000b,5000s
-
-Output written on rluserman.dvi (32 pages, 102724 bytes).
diff --git a/lib/readline/doc/rluserman.pg b/lib/readline/doc/rluserman.pg
deleted file mode 100644 (file)
index e69de29..0000000
diff --git a/lib/readline/doc/rluserman.ps b/lib/readline/doc/rluserman.ps
deleted file mode 100644 (file)
index 8801dea..0000000
+++ /dev/null
@@ -1,4888 +0,0 @@
-%!PS-Adobe-2.0
-%%Creator: dvips(k) 5.95a Copyright 2005 Radical Eye Software
-%%Title: rluserman.dvi
-%%Pages: 32
-%%PageOrder: Ascend
-%%BoundingBox: 0 0 595 842
-%%DocumentFonts: CMBX12 CMR10 CMTT10 CMSY10 CMMI12 CMMI10 CMCSC10
-%%+ CMSLTT10 CMTI10 CMSL10 CMTT9
-%%DocumentPaperSizes: a4
-%%EndComments
-%DVIPSWebPage: (www.radicaleye.com)
-%DVIPSCommandLine: dvips -D 300 -o rluserman.ps rluserman.dvi
-%DVIPSParameters: dpi=300
-%DVIPSSource:  TeX output 2011.02.08:1110
-%%BeginProcSet: tex.pro 0 0
-%!
-/TeXDict 300 dict def TeXDict begin/N{def}def/B{bind def}N/S{exch}N/X{S
-N}B/A{dup}B/TR{translate}N/isls false N/vsize 11 72 mul N/hsize 8.5 72
-mul N/landplus90{false}def/@rigin{isls{[0 landplus90{1 -1}{-1 1}ifelse 0
-0 0]concat}if 72 Resolution div 72 VResolution div neg scale isls{
-landplus90{VResolution 72 div vsize mul 0 exch}{Resolution -72 div hsize
-mul 0}ifelse TR}if Resolution VResolution vsize -72 div 1 add mul TR[
-matrix currentmatrix{A A round sub abs 0.00001 lt{round}if}forall round
-exch round exch]setmatrix}N/@landscape{/isls true N}B/@manualfeed{
-statusdict/manualfeed true put}B/@copies{/#copies X}B/FMat[1 0 0 -1 0 0]
-N/FBB[0 0 0 0]N/nn 0 N/IEn 0 N/ctr 0 N/df-tail{/nn 8 dict N nn begin
-/FontType 3 N/FontMatrix fntrx N/FontBBox FBB N string/base X array
-/BitMaps X/BuildChar{CharBuilder}N/Encoding IEn N end A{/foo setfont}2
-array copy cvx N load 0 nn put/ctr 0 N[}B/sf 0 N/df{/sf 1 N/fntrx FMat N
-df-tail}B/dfs{div/sf X/fntrx[sf 0 0 sf neg 0 0]N df-tail}B/E{pop nn A
-definefont setfont}B/Cw{Cd A length 5 sub get}B/Ch{Cd A length 4 sub get
-}B/Cx{128 Cd A length 3 sub get sub}B/Cy{Cd A length 2 sub get 127 sub}
-B/Cdx{Cd A length 1 sub get}B/Ci{Cd A type/stringtype ne{ctr get/ctr ctr
-1 add N}if}B/CharBuilder{save 3 1 roll S A/base get 2 index get S
-/BitMaps get S get/Cd X pop/ctr 0 N Cdx 0 Cx Cy Ch sub Cx Cw add Cy
-setcachedevice Cw Ch true[1 0 0 -1 -.1 Cx sub Cy .1 sub]{Ci}imagemask
-restore}B/D{/cc X A type/stringtype ne{]}if nn/base get cc ctr put nn
-/BitMaps get S ctr S sf 1 ne{A A length 1 sub A 2 index S get sf div put
-}if put/ctr ctr 1 add N}B/I{cc 1 add D}B/bop{userdict/bop-hook known{
-bop-hook}if/SI save N @rigin 0 0 moveto/V matrix currentmatrix A 1 get A
-mul exch 0 get A mul add .99 lt{/QV}{/RV}ifelse load def pop pop}N/eop{
-SI restore userdict/eop-hook known{eop-hook}if showpage}N/@start{
-userdict/start-hook known{start-hook}if pop/VResolution X/Resolution X
-1000 div/DVImag X/IEn 256 array N 2 string 0 1 255{IEn S A 360 add 36 4
-index cvrs cvn put}for pop 65781.76 div/vsize X 65781.76 div/hsize X}N
-/p{show}N/RMat[1 0 0 -1 0 0]N/BDot 260 string N/Rx 0 N/Ry 0 N/V{}B/RV/v{
-/Ry X/Rx X V}B statusdict begin/product where{pop false[(Display)(NeXT)
-(LaserWriter 16/600)]{A length product length le{A length product exch 0
-exch getinterval eq{pop true exit}if}{pop}ifelse}forall}{false}ifelse
-end{{gsave TR -.1 .1 TR 1 1 scale Rx Ry false RMat{BDot}imagemask
-grestore}}{{gsave TR -.1 .1 TR Rx Ry scale 1 1 false RMat{BDot}
-imagemask grestore}}ifelse B/QV{gsave newpath transform round exch round
-exch itransform moveto Rx 0 rlineto 0 Ry neg rlineto Rx neg 0 rlineto
-fill grestore}B/a{moveto}B/delta 0 N/tail{A/delta X 0 rmoveto}B/M{S p
-delta add tail}B/b{S p tail}B/c{-4 M}B/d{-3 M}B/e{-2 M}B/f{-1 M}B/g{0 M}
-B/h{1 M}B/i{2 M}B/j{3 M}B/k{4 M}B/w{0 rmoveto}B/l{p -4 w}B/m{p -3 w}B/n{
-p -2 w}B/o{p -1 w}B/q{p 1 w}B/r{p 2 w}B/s{p 3 w}B/t{p 4 w}B/x{0 S
-rmoveto}B/y{3 2 roll p a}B/bos{/SS save N}B/eos{SS restore}B end
-
-%%EndProcSet
-%%BeginProcSet: texps.pro 0 0
-%!
-TeXDict begin/rf{findfont dup length 1 add dict begin{1 index/FID ne 2
-index/UniqueID ne and{def}{pop pop}ifelse}forall[1 index 0 6 -1 roll
-exec 0 exch 5 -1 roll VResolution Resolution div mul neg 0 0]FontType 0
-ne{/Metrics exch def dict begin Encoding{exch dup type/integertype ne{
-pop pop 1 sub dup 0 le{pop}{[}ifelse}{FontMatrix 0 get div Metrics 0 get
-div def}ifelse}forall Metrics/Metrics currentdict end def}{{1 index type
-/nametype eq{exit}if exch pop}loop}ifelse[2 index currentdict end
-definefont 3 -1 roll makefont/setfont cvx]cvx def}def/ObliqueSlant{dup
-sin S cos div neg}B/SlantFont{4 index mul add}def/ExtendFont{3 -1 roll
-mul exch}def/ReEncodeFont{CharStrings rcheck{/Encoding false def dup[
-exch{dup CharStrings exch known not{pop/.notdef/Encoding true def}if}
-forall Encoding{]exch pop}{cleartomark}ifelse}if/Encoding exch def}def
-end
-
-%%EndProcSet
-%%BeginFont: CMSLTT10
-%!PS-AdobeFont-1.1: CMSLTT10 1.0
-%%CreationDate: 1991 Aug 20 16:41:43
-% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
-11 dict begin
-/FontInfo 7 dict dup begin
-/version (1.0) readonly def
-/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def
-/FullName (CMSLTT10) readonly def
-/FamilyName (Computer Modern) readonly def
-/Weight (Medium) readonly def
-/ItalicAngle -9.46 def
-/isFixedPitch true def
-end readonly def
-/FontName /CMSLTT10 def
-/PaintType 0 def
-/FontType 1 def
-/FontMatrix [0.001 0 0 0.001 0 0] readonly def
-/Encoding 256 array
-0 1 255 {1 index exch /.notdef put} for
-dup 39 /quoteright put
-dup 45 /hyphen put
-dup 48 /zero put
-dup 49 /one put
-dup 67 /C put
-dup 68 /D put
-dup 69 /E put
-dup 72 /H put
-dup 74 /J put
-dup 76 /L put
-dup 77 /M put
-dup 92 /backslash put
-dup 95 /underscore put
-dup 97 /a put
-dup 98 /b put
-dup 100 /d put
-dup 101 /e put
-dup 102 /f put
-dup 103 /g put
-dup 104 /h put
-dup 105 /i put
-dup 106 /j put
-dup 107 /k put
-dup 108 /l put
-dup 109 /m put
-dup 110 /n put
-dup 111 /o put
-dup 113 /q put
-dup 114 /r put
-dup 115 /s put
-dup 116 /t put
-dup 117 /u put
-dup 118 /v put
-dup 119 /w put
-dup 120 /x put
-dup 121 /y put
-readonly def
-/FontBBox{-20 -233 617 696}readonly def
-currentdict end
-currentfile eexec
-D9D66F633B846A97B686A97E45A3D0AA0528A405DF15F03DB1C3DA8B850431F8
-0E5F73DAC973450D1ED0530313057E971FC7E7CA88E61DA6DB9A5CD61F0F76CB
-4DE9105D0627B8DDF51A655098229920CF429CDAFC3F7788C95E7AB30E84F840
-8CED52E98DB4CFF161D2E62B0D28CB8B0AC82E7A8D2C007953BAFB3056D66079
-8064956E257D31C13509FB81A250D9E875C77A4E91CC49E9FB3C0718B2F691D4
-B4A64F351F4DD68133DED7629B0D96E5124584A16FD2AC7A3EB244A934FF059F
-ED7297B0505F3C2994AD66A3CA5D2728B034DE94B64A8AFAF341601BD4DB5858
-C9950A8BB9C598B8960609F48116ABA8C007190AF0ED335EB5BF61BA6871FA5F
-EAB5A26AEB5C7C352EB80799CEB983F19EEFA801093F62086AADD0B80BB6580F
-2CF61B1390FA56DFA1A0B61C58DEF96BA767A8A37EA44730783C600706606C60
-4EE74EA99B7C0F8E2525C8847F3D31907C3C483EFA98F6C416B6B2C343DE6370
-52FAE423008D086A76A1FFB327CC7FD84B1C66B203A4F41582F4599A82F8362D
-38108452EACCC937FFC4F3ABBFE3628DF51367DA6BA3F6826FC6522D6AC5E8EA
-00BAD300FFB6DEDAB93237704202BACD030AA824B1E97C0AFE17FCE8C75F4FA0
-B8A74329A6CF1788C7EB34DA7307411E9AD7ED8D6582884456E06E033B4FFE7D
-CD4DD8B06AD01340CCCFBC382C18CA451E4C886B01D082FF8CC5793F4727C3DF
-B52B4F1A242F31D1EB79D1E39A1D4FD13D6C5E2A42AD4B4D1CC4EE7BA0E5F80F
-802E5AB57EA15F4DE44D82AC408AA86D4BF58EF967FBC6497BBC7F017C0598AE
-32CF865DFFF0FC7FF9E6DCE9B5F2F4C7491AC674F46E8E7660452CE0A77C1EE8
-00DE382ABED85350033F8ECB97398E4E0A75D4877A107F6A909D0C76D14F9A96
-8A6CFDE3FD9D79B6FD82693A9F354BD2ECF30C6D99F7AC522F8D6C93EA214F7B
-3D0ED77F042ACDE9414264C0698E86398562E2C640DEBBA0734AB4C3ACE3907D
-CC79E6B2C6C3C3F9B01526E8CD98237D4A9B403FF8CE3132222FA60C196A19BC
-A2393AE6935C0F8B67FC1D1A12A45ED5F28B5D6A266A3ECAA5BC3429F2B2FFDD
-70F50A94CACA6AA6B2215B41EA683DF13679E9C950276294B15370256F17E3E8
-5FB8B575E7D4A3FC9BD8A5FAE6FCA53DF678F37701E83F18F1E116E901A39DCB
-C05CF72BFAF7FD8CC6A63A23C1CFC064EF32F3F67EE47B4209A5F83A5B2681C7
-8349B0C686E9D9844242C28DEC5E33DF480418F784EF676681D52ED234561B62
-4B7896DEC847A783789BFA4159279438404D596C9E6789B5C63C749AF0C3FBB3
-AADFC022B8682FD21F13460FE480C6B8CC1FB4EAC8E7AAFDCFDAD39508EF9B61
-BBCC73F90FB40E94EAC04892831753F15E06F77399F8ADB508F411A89A0399B4
-240C28E4DDDA98B9E771FE6AA0E2C8DE04DDA8AE54BD1A90DAFC1B0B66964F3E
-31475DBBC3D3BA2CA2C3D55D91917F6E496EFBCD5CBC46A27DB7E3FD229DE5AE
-A194E4B767F933C434D204BB080A5C24805A23E477BCFF6D19DB22FAFFEB97CA
-5445129773D40A43537F15EE90CC399EF58C31253BBC0177D05A1DBF23EB26D0
-159FA4D20E5E5B04A125FFF85CD1154B20BC5BFBA18F87670A2BF1A32A696A70
-4E82EBEC804D798202DAF537B468B5880FCAC75BDCFBF65FE6EBB93A1309D343
-09CCF1B81155761809E4ABA53CC9BF8D3FEC5602A6F3561CF2AF6D0A35B8876A
-8BE4CCBCB2DE4E4D07F50F9C5F831C499ADC35827F7F7BE7E1E0CE1BF2E3578E
-FA292C0CFCA10329156FC79BE3D80225794DE7062B8CE232355007F53F9184BA
-93F2C8F0EC8FD88F01397E1EC2ADBAA889C003AE4847BD08FBD9673C4B4D20D7
-53D0FD11FE4DE30AF01AF0141573DEB0B054DE244035E6161962D9BA836D42B9
-8B8006A40E357E28859D867052CE7DAA86F32641C1764A51F631CBA3FC206667
-81863B28C5BEE78C574F1946253D192C50CED9746B01CF4BEDDB5AB7492E36B0
-FDDB90206C5410551EA2F44E427B6A254FB2E965932DFA8A4465B509276CDAF3
-CFE6FC9963F801813A03D434B74273BC4FBA6FFB8545A10B453F8AC8086DA9CB
-49A701C500FD3D1577A215026EEB1AD2616223CC65E34CA84D1BAB896EE60C08
-7708BB0E5FFAC9EE1A24F72F03C13B8A275264CE267728084388365FF79B895C
-B65A33011BBEB2356016786F62EBCE765891CCEBC5A57453AA1AE771147D23C5
-7E289B67C94A4C7DBB3520A7E5BA938DDDE360FF69484CC4F31D57271BE2D19F
-7E689DD8373EC2CF7E3874711F3E3EDEEB09435AA0909418AD76074944C06BC6
-10C087339F57A1C828E1DCAC8B6F7D1F94A25133D72E68BA0C15586C997581B5
-957F59D0445D39E0F8226D4C621E9B12256EB583A7EE4A5EBD15B3E6BC9F6687
-28735EC4962332DEAD2D2A28714FB8F606B358E3E9ABC868E169E3FCEA409A48
-6998A5F444CE13F65F3F9D4B2A90CF483346348E4E6B4868C442C83726634EA4
-D4917AC8ED021012707DFC72926B58917264925482CA53A2BB96E2FC58A6083E
-4D7193E39B0B20EA7BC306FFBD70D434795176E77DC76C9643560472AC2718E2
-9A70D6973D0903263D1DEC1E82752CAC7AC2EC5442D9151BF459C27D96A28096
-42ADFD3D9FAA7A42A2EBE9CA3D7DC90AD0A6BA1B9F5224FBE0051352176DA443
-039B52443A0031BCD66485F49B55D7DBF4F4EB7E4A87DCF7A1F3F345EF85DA6D
-30CA6E389FC39930850B63E8EF3523AE1FF188DE5E26766C160A2F1631E1846D
-6DAEF695D585909E1F9A85C551B864046B534FDE0A35E54ACB3EDCF34A87CCC7
-C6073D2761CF74B07D154A4C560F5595A87250E3549E3706A402F3CC879AB051
-796A168E1197187ECF09AC42398AE4085F4C70EFDF98C387C232E3C323C6C496
-5EA1A799D2EC3E9E6C8060ACFFEB714FBBF8210D285D871A40DE8C39DF37FE1F
-241491B1B483A0B7D95DEA6E211954DCF49DA353F4A71CD9E0D144E84CE4A426
-8558F4B2BC06A7D44C961B6ADABA9759D1FF06DCFDE125D0947BC6982C375891
-72762550A44639B5E5E19EBD541848342C060714443D5E96537E1A214E9843F0
-5321B2479DFEE8DD1836B48CDDD5A117E20032334F18267B7323BCEDE5896BFC
-F0D91FA4B1AD0C4E38D9906ABD7009FB69A77CD280BF9BF43772371975CA6145
-A96F562D335A5B4D1366F728243C521B01D9008E655890AACABA0C45DCB1F45E
-BB6CABA51B1D31EA51637D0EE279B49257EE30B587E17DFF959E000AAA048D31
-F998B857205295CBE7177CDF44CC9BDA33CBC918B0AE72187BBB0BC23696F7AB
-1BB5A7D3705FE0579F20707008CD2A88D110343AA8B827A5EE6118F5D846F250
-6FDBC37270FB344E37B33F5F6DF16920CE3518BD459A8349CB87F8D9A61F36B8
-B1D26717D4BD4B8E76E283489718D38C66D0B4473D577F373F9A938705E0C620
-CD56F9B105C4E65B56E55CDD6893B3441F8B215C17E35E3EE4E734AF17C48895
-CE02A9B55C7738B8836EFEBE12AC9E6488CE6C828F2422EFBFDB4EBE80FD6E61
-0D0B85F1DFF9B8F319B0B696E90F60312506934F212454E10C673DF013C6F913
-E60BD6301A9AAB7DAFE5D6193731260024AFA425D46B4BEBD55133A3BB27B27E
-8837C39FFF999C01E9A3EB8905D2FFD482348BC97C07E7B2256CA33303322A5B
-587B1FF198422716A4577CE681B120C4D074EA2B3C275646B853360FC134D674
-0CF1007077B35E3A1D100A3C620BA005BB9F80444DC927E6AAC738DE5B3F87EE
-190B2FF31CE1B1A0AD34C19B28DE21136462A3591002EDB5CBDC06E09326733A
-8498626848549F36B077DFB2A2FCCBB775BAFC2C46BA20811049B7AF4F34C009
-71468C3641D8ED8616C21D1DC90E21A72AFE14B5F5718A42F11F46F2C3CF3FFA
-992DAAA3A3BC90073B3E2765C75F05A5EBDE85F37826131DCE2967089E8F7E69
-F16B41BCFB8914BF2F0B806CB35B133564224C0C9C1D6E3032D276D5464873D9
-0D17CC512E5CFAB6570D61E8D023D2CFE020212DB7B0FBF3D324FA5B3AFE7951
-E8382B7A8FDEBBACAE4B02CDD3D1791C79A78B9D49F20FD6F22B7E55CE36836E
-31A5B619B305CDDC722F6AC84CBC0D49835647204BDABCFF59D9F3B5EA22D533
-F316DD5EFC59A7F645AEE0BCDC07193111510563159EF684A739CE67EEB77638
-54F0C3D4E1A54801F4887BAD58EEDA68539B2A43B5B5D79369F74035966F07E1
-3FFD43FFF05F7EBA48DB0F988F34A44A0B15B028508868EFEA89F22C61DBA74C
-E04F9DBFD28DEC1EBC536587EF7A8DDD7B0ADAF459C0F22C24DC2D8C797C14B5
-9370504500422265C0AEFA2A8C367AD89ABC057E4B6043D991EA59564C1ABD06
-6C6E9147806C79DEA43EB8B7D0560DEB9C81766B9D79608A91D7AB606A7CD6C6
-276BF4F7E294BD0D0D3F94B321434B1A9CD4206E3146B3CE1113D62E7791BD79
-9AE322A997557EDC27045FA4521AB379253C27A4A234662FB4F73AE398C4C9E0
-2D4B3E7EF5F1E5BEEA50FE62B8AC0D42C131FD507D6D1735FD79F8223516E84E
-755930A2E30B80E63A6B24CD4244584BF7E93083EE46EFD9CD19A71A4B8453AB
-233710DC0AE68FAB2B1D9E3A17DE97AE09935E0056589BB7B3AFF3672B406CD8
-E914F786600C5B7AC4E8C57BB65B580A02BE8491E0D8E5817A99C4695E1D3A27
-12E5F7A945BFDB67E2CA285C3ABE5C15C870530F588E0B8686A4C551941BB2C4
-9E9A8DA9A4D4834E09A78F824F60A84C4A84B6C5748BA8D752D0CAB8CABDA89D
-8E21E4FC69C5994E3E100967DBFFA4D2E12BB0E73ED53EA1AD925855DA1A77BA
-1231422722DA75174ADD0F0BD549B6BD08114D32BB6E728DC5DBE05CC0FB960B
-F1D35253BA31654C6E6DD306285953AA681E9E1414D5F23CBF08E29A5B38F69D
-99C6E44DA0C42FB260F1E6D4E947215A0FF41F756177180D3754737C0BF59083
-C47C302D87268AAED752370EFDBC276D0AD59C5A75CA13B292437DA5A90B1713
-723728166637A3C4805B4A2BA8CA1F20B4FD331043FB69331E485BF48025BE08
-6369DBD8FAF526B08E633223D011E1E81BE662D98BD64917F09BA1F4277BA164
-4611705F5ADD316341366D3BF8CAB85A21C88F54792D05EAB91D985A557B4C99
-0BD3B4C020F20C860A6ED0E8CAD870045D69BC434F345EE42830FFCF7468CAF3
-93BD5666598D5CA7ADEC208006B7CF38AFA1A0BE24190E283841B9A5FD0696C2
-CB6FB04BE6108AB9E4CD3F772D78D7468EB761444A5B7FC8995D53880BF2616C
-522EEA33E0F27A5AA1EA25347FD12A1A95F11CF2F3625D56CF8A9FA23A4EC609
-035CD02CA0934BF6CE80DF59E1B60849B9B4A58C11E83D03BEA42A1A4AC10893
-4B92D0B99362180E29AFF2ACF9E0C99A156725071758399F318D720E37FB73DE
-9C5958CC9471C424B5F8E0C76FE28193D2C6514D0EACFEDAB7B76B713BC3AE3D
-57DA9D62396F7A7675CDBD164CE3320EC81A1ACE77EF63CC8FDD466564B8171F
-2157EC631437182AFC083A1B29C223FA944A54930A41824F76E35E5FEF17A836
-4440E9BB793DCDA897B938696458A3BD9C3DED24C2C638C3603939AF44DB144E
-5BCA51A7D729DFBE26E0884B22C0C4E3131AB82CDA170474168D89124A65B0BA
-91523CD1D67475C9D43CB7525451A27B62723867F123003A99B98F2C3C2A482F
-68FB4C42547AA6C4B9B1C8A4259A8A27305A2F0B147BBE39264F510142668128
-FE6610D8D748A20B9F75D48C3692FBFA1EBFE73A3279BD4C38DBDBA0CD429439
-F3C0FE231D0F381D369A1E356917184A4DE9CBB64F400C28B41DFD35F9F74FC1
-57F46400574ECE064CA9AAEA8D70A61F5BE95B5FDFECF87E04D4C45AC7D441A5
-88E6CF0C447DFC832179C012B46B19A7B2542EE40727DED27E08417639D6FDF7
-901CA1AF7385704E7EDF49D8A9AC990CE68A8898B02D618F8700D04426A5692F
-24640B4311C917D9D0B86E45D9D43B99DC81836AE454C14242D107BCE8E4B989
-D8CAA8C401A56CFA611923072B72EF56284AE467BB8E2B04AF81D1C968321611
-B4D1A07B8E2CD4ADA29A8DBE695BCB6F022C8C53E9F0210A0D08F9A531FBAF0A
-902E31DA6B2A3EC290F1A0EB4A5FA4FD504530AF768C15E3EB857849824EE965
-94E2F1974A60615DEDEBC4F4D8D70CA6A4385A45ECEBAC78C945ABFA42B90EA1
-17C59E615272A91488161C2B7B23A8B1F2C7119A49EB7226BEEB3A4C7CDB67DF
-11F945CF22FFED4DDCDDE1E9AD88C63A6A271883F9104CD7F596AA77CCACA8B9
-D5D772A3C0ABDE3F7BBFFD678744DB7540FBF0BDC9D00A0C7E9170A127D21C72
-4B81D78F949773598921A5D3F756CF5823ECE57613DDBEE58F3428BD29BFAC3F
-1EA57663472AEAAD48260EAC5912FC7273F102D1217BF43D6E52CFA93A991B74
-8C6489D7ABD79227C82F85E06D736602AFF3F497C64644DF79F460569F2C3BA2
-250D48D0C0EF5B4A3668BEDD804CD134A0E26FCA4BF071FEA9EB46D5AA52D66B
-4F954E3AB2BA1EA71EB9BE254AD0C5C39A408AF4D287AA24C533BE9BFC0853AC
-C31C43D8C419F5CD294ED38E56645A31FE4AB2C60D4486493ED8199461483F82
-EBDF44F1792BB87CE851105BF44213B35EA812CE967FBAF7304703315F2D126F
-12460B0EB045BC8E196C7816B105259BFDE8C8EC49A751B0DBD7367C0661EA7D
-1A79053C371DE08C233E1774998F8C86F78E4FF7E9239524A784509254D65002
-F9BE0D2A40488E0BE2DE6F336BB7337750F57F94B20764111594B2EAC17391ED
-3C20C8F3277E1E431D55893EA0CAB659ADBC502D85B75DE299044985575C09D6
-C2D275221C738B967F1C92E73FE4E43353845D74B103D6B57B442DDAB3A46B7A
-EF6E776D82B5B9873EF5B3AA77A18FA7069429441BB791123974281B720E6EB2
-6472549EB921883170FCFE289C00A159EAE56B9A8515482CBD5161B70B643718
-92D7BB3FC8E9E45F3635B242BD08FBD958C297205ED7FC812B7B70F65E979BA5
-73E7A7A348FB656843988DA4518F13814A14C336A4F2A610B5D9AD65CE1135F3
-3ACB2594B4204A0A852841F6D3EC52B4262AF8FD7B1E7A860105C85CB95D94D5
-C3BA8374B1DA93F493A25920058409C83B7529FFA6B3FFE79D7EA6F57E2E12F2
-A210EF27BF52F1A366C1B193821BD775FC92335B42854C7C11B253A653A74A7B
-D213A63B69BD0B1FFB4DFBAEBD66C1096C6F2C9B065B5F20E9B02478D1CB8595
-0F68DADA125FA3EB8B7602E94A31750DFCCDED8759E4D87110D7F7B05EC9604E
-364A9BE1D94E15B807C74E2ADC03047EE296179FD4F2C8BA93122598435D2D5F
-D3C824E327629F16631BEA2FEABEA5F49E5A9C4AE2F44D5390CE0628A6915660
-C177B8F431D31410DC7709D57275C7FC45F5EB14F71132FB3BC77C2A7B2EE446
-CEE143193419B97A5B25D1756FA017E17848159CB5FF55E5D240B4E01C83161D
-F3DC8D5D72000BDFE5F53F037CAF57994ACC60FF66417D6B5B6C9287323E201E
-A13DB21DCAE0AFBD2149E8620B22EC21144BFAED02E1B16980897218538DE59C
-E9B8009A4E0708802905AFDB35CC605097EB8CC6C48C73243364F184861B11D5
-070EBA71620C255AE2FBF270941222C302E8F0DA166423B88C3854C352B9E792
-ECD12B40F0B0A5A334695B6DC4360B0476E7993730524AB92DC9F8A74DBEA699
-F9F2C31D4DA3F4426595E729F9B7C88E7B46CC3172168F00EF3F60458D5475A0
-F1B42CDDD171E7E8C98C620CB5548F7CEB4E5BB758C197A09CCB3893D3117350
-F42328EAEB3F0034419A838D5ADCA8483BDF72F02E8821CFADC50E9A09A616E7
-4CE5E6CF698C3F919FD0110F5BFCA55E98753C67168AA91EFCDC2A4AB4CC6C18
-1DA72667621CD578C1E449F0E660B35F43244F09DE26C4ED62360AC69C8F8DAF
-DA76554E6E0F012CA451F0B946462FC564B1AEAB508EBD2B1A1E43D1E7136DB7
-8173F6C2D2837F0FBCA8864AB719C09898108A4273ADD74721F47AFB2850E12B
-CF897301AAA1432DEC0080B2D555BE3C4CE6E652C4806066CB2C19262F219291
-EBB6206B25A12120B1FB077E4638D675B3C50DE867E2C69D9B6BCA9394CA8B5F
-AA2D002D9FB8ECEFA144DBD51905024AB54D6EC3F82A0D625AFBBEEEF6C854F2
-7344A10BE1C8CA785D8C3B2DE606D00D19CFDBE7BF781AA177E651EB07705E1C
-2DD4A54DBB0ABBF1B57A1BA564FE5A9B12E39E346A387E05C4C3986D9CA23C2B
-B2E6A3B4CFD3AD177FC5366B55F11CE924691A1B4DF73830A44E67D750DACBEF
-1893527DABFB8970C3D8ADA24918158142D3EC5730F9202A7B9F61C4FFF4B09C
-C09DE278B71CA6A061396C3671D3F48E85D1E958E7AE94C0706B90B6906C7587
-CE5DC4A9EF4882C314CC987BCAD4A789A09E4D51F370DE4D4484652836363966
-C80CEDEA41FA816AD86C2D792B5B8D04489DE99F06B3C5CC0110C9F24BA5E95A
-E2D78D7FCAFB013BD160BADF4CF2D89F37EEAD80702E440CA21997CA213B96AA
-531A385C254518FD23F710EE0573E86499DFCAF6F038D74C9E617446DA8EF87F
-0861C3BB2FDF70EE95BAA0BD6728E9B4D9381C2B33E17D17BA54AA45DBDB8413
-CE1589C3E63AD7217F9C6B44FDBCAD121D3219A978EA2DBA90A27CF814B313DC
-58C578DF4381F5235499009FEB3CA7D0B4EB8F0839602341D676CD827449D24A
-D9E8223C40B5D34B0846BD9615090EAE3CB77D0B8725A3BD5B0A46558BDA5868
-3A00194345114644BD144EA11F49478FF77E259534791C200B0F98B2DDFF2106
-BB10EDDEBDEA6910C4B897B2BC1791DA
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-cleartomark
-%%EndFont 
-%%BeginFont: CMTT9
-%!PS-AdobeFont-1.1: CMTT9 1.0
-%%CreationDate: 1991 Aug 20 16:46:24
-% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
-11 dict begin
-/FontInfo 7 dict dup begin
-/version (1.0) readonly def
-/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def
-/FullName (CMTT9) readonly def
-/FamilyName (Computer Modern) readonly def
-/Weight (Medium) readonly def
-/ItalicAngle 0 def
-/isFixedPitch true def
-end readonly def
-/FontName /CMTT9 def
-/PaintType 0 def
-/FontType 1 def
-/FontMatrix [0.001 0 0 0.001 0 0] readonly def
-/Encoding 256 array
-0 1 255 {1 index exch /.notdef put} for
-dup 39 /quoteright put
-dup 40 /parenleft put
-dup 41 /parenright put
-dup 44 /comma put
-dup 45 /hyphen put
-dup 46 /period put
-dup 47 /slash put
-dup 49 /one put
-dup 51 /three put
-dup 59 /semicolon put
-dup 65 /A put
-dup 66 /B put
-dup 67 /C put
-dup 68 /D put
-dup 70 /F put
-dup 71 /G put
-dup 73 /I put
-dup 76 /L put
-dup 78 /N put
-dup 80 /P put
-dup 83 /S put
-dup 84 /T put
-dup 85 /U put
-dup 86 /V put
-dup 96 /quoteleft put
-dup 97 /a put
-dup 98 /b put
-dup 99 /c put
-dup 100 /d put
-dup 101 /e put
-dup 102 /f put
-dup 103 /g put
-dup 104 /h put
-dup 105 /i put
-dup 107 /k put
-dup 108 /l put
-dup 109 /m put
-dup 110 /n put
-dup 111 /o put
-dup 112 /p put
-dup 114 /r put
-dup 115 /s put
-dup 116 /t put
-dup 117 /u put
-dup 118 /v put
-dup 119 /w put
-dup 120 /x put
-dup 121 /y put
-readonly def
-/FontBBox{-6 -233 542 698}readonly def
-currentdict end
-currentfile eexec
-D9D66F633B846A97B686A97E45A3D0AA052A014267B7904EB3C0D3BD0B83D891
-016CA6CA4B712ADEB258FAAB9A130EE605E61F77FC1B738ABC7C51CD46EF8171
-9098D5FEE67660E69A7AB91B58F29A4D79E57022F783EB0FBBB6D4F4EC35014F
-D2DECBA99459A4C59DF0C6EBA150284454E707DC2100C15B76B4C19B84363758
-469A6C558785B226332152109871A9883487DD7710949204DDCF837E6A8708B8
-2BDBF16FBC7512FAA308A093FE5F00F963068B8232429ED8B7CF6A3D879A2D1E
-2931CE5F5D18C658602059F07BE66E6EFC9239D7AB2FB8A4CBD41675B8ECF279
-650C29E53B14AC0E392A664848C1844B1CECBB2D5CFB72D0916B675C9A9A1E35
-F12696A6F628473C604A95376468E06E295AD6F76CEB939D94113532050B9D5A
-D2F41A9EFB9424D986612313B89EFE9C8A71313340B248F6853B1EDBF02B7F9E
-F447220FE131D7D54CFB8AA1281DBAEA73E665BACB1F164552CC0CEDB63BD4B1
-4A9AE8AC6FA02242DBE8DA46B64B6BFC11762F0784F216FC8B9120D688D1705A
-438B14F5E5DEAF2A98408B3B64620DE3732A4DAE6D08D5D97E34C75DAE19EABD
-BA0796165C1151BCBFB1DF8D29A63A8300DBDB9E3323CB82D0337598B83F4F2B
-A97CF5196D4D1CEC1EDB8966E548C0D9C194C932319610FB43EA1B86322FE641
-AB48770FF13BD475A7267E142388563D1A400419C585B22A9886074687BEDF74
-D905BE8EE440BA2ABF28EAB673399B7F129B9729DD5564C681954621903B84BB
-CAF89AC5ADB2932472DF29ADA2BDBDB4D05F65F28F5F4C529613D61858E0074A
-082A852710A62A147C966F2B85B51B0BE85F11D2057C66FDD61F6C5755367980
-9F4DE680601D4DA41B46F8D2148450000413C27AA39B586B74B977B25F0FD3C0
-4BA1EBFAFDBEC531EA13DFBD6700E53818CE04D23886B8AE75DCC36BCD3189B1
-0D55FAE27D0D126E82AEF31D7B5DF27E58C30BB0867D6D7AC1DA9EFB8A2DF095
-B5B934A68EE122DA0A83B36C952431586B957990206194E89339048AA6EE4C53
-703763505ED57C494DD907D0EEA04F6B1D4C8F3BA778F4E7AA832AAB4D75F024
-61E91C6D25FD6823CB24FC863D3836C77A7D349AFA8525388E252386788B28B5
-E463F5448C9A287140C4F5FBE612C8F2C2749196D12097233794F702BE49897A
-6DB52147CE35CFED4CC9F38BF3C4AA917D990F007357194F51FF6B77E97C5208
-AE6CB3AC6AF0B5DFD252847C5F1793F5896655EC8D617DFA7FFD9CD861631156
-D178F8C3B2045AE1B4D702708822F2238A29934A870273858FDDD2B9CC74EB9A
-4F610646943F34ACF7707568F66F7CD9F3293060431C2A7AD92904FDD44E8079
-80D54755DFA1FFA2A42C954AC6DE1CBB7BD95B11999FA46F57C467CC5E4ABC3D
-965925F0572DC4368E8D5F5777A11255BFFF91E833F42339775D1BAB2137B328
-59666E88912D609777309A032B3725AC11BF5CF5EC760438BE5303A48DF475FE
-BB57771CB82751F8AE79B3D72CB9B65B192D21E1E3388AC0C9500E132F4017D2
-B6A8BFF48342C94359DCA32D9CE12D6C30011EDA9E28A57A854482FDEA0B6D15
-4574BAD94C43538D87E8DD1FA03AF5FD965C473EF1371A3F125592A0094BE7EE
-CAA3E94F48E86E66D203F3AED59CE58AA1EFE006A136D55545B506172CA14C70
-6452DD81DBC1B3721922DDCF2DF6914E354FBBE00D3CBFE8A0AB309FCC3B8B6A
-6F9F858984D90E731C80F9B050F48E670CA19D05F5D77441E15F304666154B53
-CBAE581CE6091CAC6485522E795B76C9FC509705F3EB4EF36B7CDF757A509617
-D116D7B97C1A3B7334AEF807C23F9F1B150C895E12F73265E5578C24CCBFD2F6
-3BEF1311E0E015D354F3D18BD4BA1757D95C9C583CD60057385A8BE4D14A730C
-BA4DC18D4494D7E765A4CE24E17125FCBECA981F4C2CB4A360B6441A6DB73363
-44F62B470EBD387F1918A814A7B268623F7ADE9229AD314BFA0EC784071190A4
-99FB32985881E32FAD162E8EFFEB6B33E646F97FA94B2AA53F869AA563E519A4
-2EE643CB14B64AD6FC75125203E17826E81F352F5AAA616505D10F7F123EF3E3
-8BC7C41FDE75F110629B87ECC42A3CF2A13308A737D994DBDF999E7496F9B78D
-01BC7889B7BCC46A95887C4C5C34A2BF484068B2B5A40FB408FA8A2F6BE6C3E4
-672116535B37825FDDE04CB8B873D9C022955F4AD86D33E836264BD2B907A86E
-48647DB50B10327E47259BF9262D2573BB34DC48A9D4731E58CB3617D02004ED
-5ACF344C15FF73AD804A871DAF364E51C8907FA058501B08FDD944077C49E44B
-8BAB387A220228E5239CAD4856FF52BB67F4FE3916890521F62C9A015162A0E6
-1D9333C4307B1AA0E049783917E2A8E59F47C80861EAC6C277835BDCE9A2AD9D
-8F3CA78D928D70843707E4CEA121E2AB97841F9184C7AB1D8D3EEC941FBF1213
-9A03AA68069161FFE31C367F80FE36625EC4524CAC0FDC8647558A1303DFCDE7
-B82D289ACEEDDA1227ADA57600B53C1B8C35D3F011B4B15680C2956E91E5604E
-FD866E976DC441EE935D223AE58A57E5AD0F563FCE23DB6D5E03CB0924AF8487
-7A78A88D97581E4F038690F8FE2095C2641CEDE7660EB009B7C2D1A21E425EF0
-CAA97367F222A0E230787CC239F0288E3CE2E97E88B316F57B0238C7E84A84DF
-A636A78892873B8FEB525049AEF96A04F90FDEA521DAA5315FE6090F40F34B7F
-EC8BAECC2790D7FC35EAA4034F4E95ACDA31608C24075C658750CFA390839E34
-1EA429EE352A5A77DC57AD3467E5704FA3568F1021FB4A0587B16284C3CA9918
-E342156D8675ABBC9A18865926748EE6ED03858C53F4CF5F1D08EE1C43E194CA
-4A0DFF7484F620EEAB133D8CEA80A1CEA837B7194FD9964E9C38FB3A4B41593B
-30D6B59B1A0CE6775E9A416D97987BEB3930C88E9AA25119BE8DA9F400A6C096
-ABFEF4732C562FB06C963154CE19580639CC09450196616EDB99B6B7ACA1200B
-5093FB118CD91AAC60410D522BF73D60BE20C8518A2D242576CDAC5B0FE3E337
-AFE60C493DF2DE758B10A4CA8128CB077C4E73329CC1F3BA0F2E2F2396C19384
-0C2B81621D4712A7BB68EC6163DDD4466BA03A7EC26E54881C05036CB957FD23
-57BF528E13370217A4889F3BADE81CC3658CB9EB356DE450887761DD7BB19C59
-31F8C46886EED761CC1E950086FE1A7BC469FF88780B218F2202A4F1FE006743
-4A5BCCA6D1EB301544E55172485105CF04E05E5A892D2EC0D26B4C1C65162ACD
-D0E1E922DE12FB4EE9A1C285F873E0210C756557568BA77FE33770B59197ADCE
-ADA771B078D746F5E2E096E3DA6E7FB9659819789AF94FA9A8133940EC2AAC28
-AE8DF11DEB67F5E28A8EDB6700E9D2E39F90C1975A2BD58B67BC3C64CC9CD71C
-A0CDAE7E535A207F87523C6B204BB480BC34E9E0CF52C79B6F5D0CAFBA30576A
-523D331EEABCBBFAD18B979696C7210BD5B4AE34BB106D7C9A2A84D95B22885D
-18542BFA65D9791DB2A84DFE88251BDB7C907C373B3C2E116ECB8EC2B7FDBB12
-4E40313348A394A58589C1E23C66A9024BF2057719A198D1F0FF01929FB15C46
-DDAF40B4DCF2F16BE69532711C49A0B670442C0FE53C404703610369C3E6B6C7
-22AEE42C0D314AAA1E0EA01594F9F8694C5A16F44476C42C6E07307BD9940490
-E89A6E30111B2BC725C51F5917885D5375F0A4B4F32720A6F364A6AE68B55B84
-35CA3F4215DB779C15EFD82D21129399F699F5815BA34A139A76F5EFA9774820
-51379E30298252B6CD7DFCB140E9AED951C6A527A3E59923F725A32AB2FADA37
-25AAE28C4F0FA92538D60ED5D26939090EF43A89A70104C5D6C7A26CB9E070D8
-C2F2C1BDD073814033B5325532DEEAA46FED75CE884080F4DBAD326DC98309CA
-81589FF76AC06C0FB447132349DB7886966F674B1DC3FAB46BC1BC8D4CC3D32E
-1D7A6F1EA0E77E65261552F0087FFF05A68049420D02A6C005FABCF9C975867E
-B8335E379DD474540EC81EFD7953A432E5932EC6EFEC3675CEE49848BE80618A
-A45477C9237F4F2DA7D37C6777EABBAF1B1C53DE47C4536D603E905E6C0A7E0E
-E30E854E2DA543976B97907DF179223D91D0E53094A9664C721E593958A3FDBB
-A91F79F4AACAE75408D31333293CFDE40332CBBEB470FA9CA803FDEF80D5FBE5
-8DF12584626DC7F4C1AC5B58BA2070CC29E7292324B111AA158EDC483FBD675F
-135A04191543C6CF33449EC04458A4A07B72FD2D3530B3DAD847B6F1627C2A69
-DC68BA7143D2A614574F17EC31D46326F85677F5DA9A6BEC19167EBB7FBFA0D0
-495669797774D6532FAAC83E1D587885F11F947689C745284DBB2AAA34E7E9E2
-2024A5C2BE3973DB40C1FA23352300ABDE8AC895555A432F3C068EB24D16797D
-CD48C62C308015C3BEDE20231C2DEEA689EBC3B82933FAD0E0F44BE307027B23
-4338B870F04CDDA8CE8770E02B71186B6AB50490C1811F3FA178663BDC8FBC18
-C8BA28F090A60F04FA34AA13BCB2158560B2506A2A458984E9DDD7756B84A527
-B52A76E24B0440B1DAB33DAE996020C737B01976BBF32E9FF3AE69EFFD597841
-60FE04A632FD3023EF6F66D94FCD983D2B418DC31BDCA7ED38D89BB61C598824
-9B028A89A1AF9B3D5DF82FE4AC81AF89D7B3944CAB85FF3432050917403DAC0C
-0E66EE586A3E4714CCF623C865D54FAE1F943B1C8BF2DD7396806C22F8E1F7C8
-0B644A2FE78D6FA1DBEE7B5EDC9643565D0B435BF6867843A0AA2C530ED06BAC
-91E3612069C9E45760DB8D862ACE47856D74610F3FEA376CF2C841B8A55DDB4C
-C6A00428119023F900F1E61CE840425A3BFB31DACFC751065F3E8F50602C8DAD
-2B1E213810BF12F28870C97A14574AC1D0EF2A2FF21EBA2C62D113BECD741475
-8E226A77C0E9B52AA70CC8606A72CE70063C2DEF10FE37EAC6B553076A6A77D8
-46563F37009714CDC333A46E2A4FF4E4663546CE102B1DA7F673F3766F86D82A
-2FDA1B71D681A105CB35F48DE3159D34D00EE2F26519E6FC322022D82AE2262C
-6292B221E1F3CF1712702D5C46E1C379AD2DE59E14B905C8D933CDB400376578
-A7C8134FD801216231CCB286678214E036802260DCB46EC504F055CC23779C56
-EF6674A78092CB4F700DADBC3DF9F43009A2770B9AB98F1D4E5B15CD7A1024AE
-8E612E7A5C3C964A8A21B9EED14C035E673D0FAFA8D11172C216EC721F5AA841
-69851049D93C04977246A2D21FFB7EB6ACE1DE6366D202D05046DE2CDB3E0ED4
-231828154A202C43E63BA97313AAB34B1FB9DC40E8588E2ACB81700A03CF6CA9
-178B673A2A5AA0A6A25096DA0444FFBDF89FE56EE129B725A1251936AE79A715
-4829296422CB1EFEDBCD5D1A67C38EA209B8C4C86E669B3D9303AFE9A73AB5B4
-751FCB6E2EBD6E94E7D6D94F61DA1DBEBE7DB352341400BE02367A01618DFB09
-4635C3BE9A4DAC48E689C6AE09DE15BE92B9D9A9219FB25CA900D7D3710BFF63
-1D5392049F8BA435D4DCD77DFC998A02207F0DBB34780CE632E2FC0283D4DC17
-2EF91FAC1C1027DB0CCED0389D9AB0A20E4D9BAFA70EA2512BF7BA5D0FEC73EE
-DFD4EFDD8507E71D8664527E4B0DAF2033ECE1A2326E21439199A9938D792905
-E5A9B0AD4F79290172D8B20F817247DE6A9F2FD95CB4A4312895634BE440A07A
-406D7715F6C1DA42D17577B3F290DFBBE4001EBB1CFECADD3BB4CC93A7B539BC
-9DCFD8C66C78B6C4CFB1E9F4F8E37E82878F92DE67864AE93354E78F56D54DAD
-6B9DC4CB315BDDF5D032AFC7629E10C084506F7C22CE7CBDC8648A042551DDC5
-A391F65ABB6A890920DF87C71883FA1BAB6317B325AD967EB864640AC8A3C2C8
-E41D68614E058D1CEB140588C8C5BEE436B112E7FB82FBCE2BFF44DFEEC1B587
-E36E96EBBA14930703C5A5EA3D45FF0277C39F5CDB9C4AC3655A161A838FB08F
-B0C1AA048E23276A9CB4E8BC114A0E024FAC0BCCFBCA8EFD8A48A2783D7EB4A7
-272737ED343978D2E966DA09A923C93CBB3C3E7F451390430880036479C353D4
-D687759BD75F80DF78349DC28AADEA6FCCA01039431F83E4E864AB54E899D30A
-25ADB18891C4D7A679558127B8AC5273FFF1F28BB7E682EECEB208F0C07CEB1F
-AED0DB62784BC08DCFF99656DAD754BB352C3994DC46CF27BBD463C6CE1753F7
-93774336051D9F67D95F5315AA6A543BFFC708A75700E0FB6523E576724D4F56
-813C825EAF293DC28C007E4C58353A1D5DB1047DC1B1F1F9558B114D582ECE43
-77A4260E2462BB4494A73FD20F73561123A0BAC258FBD8FEB1028039BAEBC4AC
-0E6FC625A4EF0E22AF5726BD88DF2A0AB230411EB5C54980F8B79E80041F944D
-190940C2CF0A24DFAB250EF983DC58BCFCFF40B0EAA9303A0BD0D059B6D6F835
-A1E3AD4E45EAFF511985CBED8E6A46657BCBF149089AC659043D5A09F9993ADE
-81E9C35A5C047816649E521BEA5EDB2BBC66C31901861182C5F660B80CCA72D5
-3B22D840F62B21ECCD91246233AE25FC860919493B625EC6FC6FADDA3DACC9B5
-A71C5B26E3B1ECD0AD570979BC5EA35A91AB34481CC304A7200C322B8A2AEA42
-C418E91C658D78055F2FAF4B3D68F58A284E571759CCC7F00BE3474132D4D2FE
-43DF39479E3A9C4E09AA4A338F26D5C939BD7E1CA50B86413B8E32CE63800EAD
-58C7A77A1CB9E135C7BCF1626FFF76734C321EEBEE3B059216CDE6A6912EFF6C
-BA03D1EA3EAC1F2AFA3709DC9BCC558224A20716AE930015915A254F1ADBEAC1
-941476889919D64CA0D0E9F43EF614F115A2A93273E4E77AAF46027F525A3E7A
-17E1384AB4D41D75E9C0F22C398C6A95B39D3678C55205B38E189382EA03DC4C
-21E4F1245053D5CCA7BF2A1F9AF88E0CD7AC63DDCBE447B963B6DFFEAB65EDE5
-5128F8B555D8795B16FBC856208DA44A7F0F043817B21928E257F7DEB8C930A3
-821E7A3643B5B80DA2DB936A927158F5E7BEA32AF2A1EE9F47D1EB8D420E9A9E
-C57452ACFEC2718BC31B4F7B061C932F768091271235EF6B2EB65C96E4D1ECC2
-C67C543B1A117C2E34CCE57520CE6A69EE6F89B1AE177E06B63193AD1376F86B
-A59B9A385E63EDBDB2005FD2BFB6204FFEC21823E1C5E59F363C760FD3A63F36
-118FCB0FBF612204CED17C7E6C1A30671C591A29BE9F3363DF99657C7D68AFF4
-E0C3F759A361E4D88005FBFD72C464E4F84A773A581BA27C42D9C6BC3DEA42B4
-2F185340BB74CCBB65609965C5636F1D402DFAC5EDFF4B2461FD564E11D7A789
-D391B54B30B129953A4B4F0B34771983D05B271C29855F2E1394CACDCC37DDD6
-47F5AC6123765607F1870F11CFEE08D71FB7458DCEB1AC2D772108FB49D8E71E
-9606E4B5F4F84A939EC5DEBB2F9483BD28A3412EAFB80A7351220EEA9D08B664
-4007DA4F70F4312E4F386D91A556EF9E7747454656DCF8AA85DCCCCCD04BE5DA
-DFF58B6D73B7A1EE282737061DF380CFB0DDF9A3F2F0938183ACA9F1EBD638CF
-C01E67957A3251F3B8663084CA8DF3F794BF4845B2F6D533BF19440CAABD0DEE
-C4D219CA5D9ECD045518FC25C2F12106C065AACADBF33A04E54C8268E21EC9A7
-33B0A06C01F2938818BBFD085CD071B7A11DAB70DFCB7B9F460AC2FE36174768
-083749AF773AB8A67F9B58686A1B330474C7E700C7D48A71BFFD540D268B0623
-931732B4A8BCD1C6F6FE8FD8B856214A86A5A5711AAFCFEB9E33EB5D13BAABEA
-31CF678C67D32EFAB36319F893CC85C883E22C6080FBB45A10D7DA77E1435546
-A07225F78393688C0BF9A78DD8D8CD3504C72245440144DE12012F75564FACB7
-37F39E330C8FFBDC0BC42D455955EC7F4C28EAE43AD2C57C44ABA40EF5AEFB02
-9D9DC202D3B412BA082C9452BEA8269CD3495BF7377F341AE0215CB7257DD323
-92384A3AE9766B79756AB3D6E586B1CB2A630B806B92A272B5F205683160F1F5
-CE1AAB86C03152782EC5A8C8D3B4E2B3E83ACB3F73E8672491F045116A6E8E3B
-33C7C16586D2AB91F7D052CCF0459FD1F597C9EC4095B5D931ACD616E2A9EFBE
-9E19458E5AC84F4F3D17E3234DC4229A9AF4FE10108176C9BE30074EDF251281
-8E5EE83A94446A3099836B4174FBD357A75A19AA4B4C77CD5E95B16C5395C043
-33920CEBF2339B436EE1BB5DB191C7336AF977F1385BE15D27BEABA9053DB219
-65B21B2372A7F7BE670FDA8FDA32017EBD664D03391B580C39793A73A35DC39B
-8775B92FF05C4F4F6E6AC2F1424F5D93A99214A695D1BCE41E7033AB21C5E228
-9AAA7E581CE9A5C3EB2C978345A424696C74A1BB45B6497F7E9F6D405BAEDBC8
-438CE0A26FEC8683E7E4287A3FCA76D0E5BF872E61F2E39E60D02A8ACF14BC03
-7D59924D482421891ECD4DC904CA3A2B0AA4FA574E7F4D8D090EB424258E122C
-EADF399AEDF8189C984282CA9C18D18D282F27670BF95679BAF1EBE92C781D9F
-5739F16679F6853BE2ECC51D78C2A568E5FE066AE0AA98A823E5640F420F23FC
-3CEA1216760242268B9B4673DB11BB7AC0EC9D567C3B543DFE10C062BBB64C6D
-31EA298A98755CCD95107D6B50D477889123E711EA7390C57B3AC5C363BA84A7
-C7C44F0163D7C83539EAFB8C832778C94C53CCFE8CBEDB42F90A0099FA80EB52
-89EA9F32B6CA516470AA826880402A73739CB0E60F2A4812F3B50C40D026F8B6
-F048A37875B3FB4B08C9678DD48FA7852233CD13EC6687AC34D3FFCA66583F52
-26783757F06153F0E385C54C6BF9FD4300CFC1DFC211BCC8132877B4EC99718D
-B3274971E26953478AB2AC50750ECF31C05DD41575020DF1AB0757E714D1542A
-7065D4F034000F77F9917D87665866D842CC989C6F6A7D953EFAF442A2B6E28A
-29BEDC8A940F05DAF7CE8847E136B6596DB70DCA3DB0BA45F74B1616CAC12EBD
-6D0100371E80CA9EC19241C31C0ED657F7B6B089B99E0E551FFFA0FD4885FF65
-FFE878EB3F6A77D27271824ABD182CEA177ACB0FE8363AAAF7C86E2517F31263
-0D6E3EA583CC81A62B92A4D2EDC9A8E3064C41687BD8177B56B66D0165021EC3
-AE70BB02C46F31A1DD4C39D49CE8A2592B7FECFE83D60A17C091E772DC12AE4D
-49AFB19F85486740A5DDC5CCA7209F8292974E09C2247681F7774EEC8E123DC5
-96F05CD7E98B1B5A98448B78ED6AAD144D24C1CB6F9DC811657A9BD25939B698
-7A90FC7AF543503E869FBBEB0F6FB3E5A2A9DB2841ED565F6DC88F66E5CEA418
-EFE0BA5784A3DA1A31B0F2DDCAFAF3CEEBA9A24670E196CB317D88463C885CB3
-BE980DAA9B8286F81CFCB44DC37A96E078F1C0A7BF5C17B7771A26CE394DACE2
-30586AFC49DD632E0DB344252FF8DBB01E6BD935C36A05FADCB78F11E6D37E99
-8CEC682319472DDB6563E0D91913656B26EF27295753F237B2470BB8DACA7BA5
-891EE3BC4295DB66D024E1D51AFA52C1A5855ABBEC35658CA7DEC65321BD357B
-6DEB27E7096A2BB13C1B0CC3EBD6805C154EB74D37B4C7198F13F64C5A743982
-BF5A4575753146173E76E849A2B920FB930537A4E9C9380F8434E0F6FE9488C5
-88E1F24AD6E21F815FC3204734A70AC9D29BC039AD7B6D5AC5F48CAE11DDF2D2
-B8790CA2554A3B7CA37E821F2ACFE8AD7705F1E8935CD63593F61C67C662E97C
-31A0A28A2E3E0DDA451C83F8A982C504BB3BD8F78F94FAFAAA2FCCDF11A52389
-E7AF12260C01AD272925D075F7427E5AB739CEF55134BB04369F1104EC776F52
-EA172B4151A580D871CE02295273AF53B02DB76C3339EBFEBC1975811B539A42
-0CDCB3A0637BB1B12CA0A2EA913E255E5860C600A97CFC33C809AFBCC4DE0F30
-23ACA73B56289D705655DF88E79EE020983451D4AE09E80B835508ED28129F43
-B55A7E0C17A5C5A1030C323F1BB349AD695F25F0358DD68ADD8F4F7998A4F3AA
-74FA7B7ACA2140A3B5014FF0582766905DAC463D6B8D760CF07620832059B898
-14F9413C58E808FB125DA8C4A9B1971F56643978E1663255F287A1129B291A7D
-5F8C7AF137232D3D6B7D4795FD8F5FE9EF9D6B37C0534F9E531D446C52377D04
-13CA29578ED9473A925F6F921F390FB8D126B0946D6F5EBA83725D82E615BC8E
-B5F7F865ACA5C0922CAB07F6EA948EF8DE18917126D3B62A7689F8DCF0965954
-CBE9849EDE0C1FC5BF449C9C609DAA0415B9734B4A7D98C0BA6D4EAD04C51AF5
-037FB78A165662CA89F9680622E2997827B409B408F39EBC019C77F45C424C80
-E31A50638E3D4D0273E02685D09CFDA92E07238683860585E6B44819CEB9AE7C
-967831543E0E2161A8D1DC312E99D16AE0C84B69880375DF7D0C114A96A576C6
-1BEC6918825EB9AD2B900DB1ED0244343A89C67B1548A85425AF9D08ACF0291B
-14C18FAEDCF3C80C124713BC475F3D8788AC04193820AE00F5FF6A118D41DFA6
-D4EF997C5D4D744A7898EA9387C3108EF6FD19628647F9CE7956D4641265BCA4
-770542413AE156AF4BE6DF3EA929843344F2E38951B9EE4D38D2E51A195842E6
-1436C77E7D953CAB3FB8144AFDC371B0DDE968AB88493C15585570F7DE881A17
-24C0CB6E8A3433E6E85320ADC362734A1C81C1EF9CEF1B863A803F96B5F1F61A
-05D61B9992E99BE5A52A58
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-cleartomark
-%%EndFont 
-%%BeginFont: CMR10
-%!PS-AdobeFont-1.1: CMR10 1.00B
-%%CreationDate: 1992 Feb 19 19:54:52
-% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
-11 dict begin
-/FontInfo 7 dict dup begin
-/version (1.00B) readonly def
-/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def
-/FullName (CMR10) readonly def
-/FamilyName (Computer Modern) readonly def
-/Weight (Medium) readonly def
-/ItalicAngle 0 def
-/isFixedPitch false def
-end readonly def
-/FontName /CMR10 def
-/PaintType 0 def
-/FontType 1 def
-/FontMatrix [0.001 0 0 0.001 0 0] readonly def
-/Encoding 256 array
-0 1 255 {1 index exch /.notdef put} for
-dup 11 /ff put
-dup 12 /fi put
-dup 13 /fl put
-dup 34 /quotedblright put
-dup 39 /quoteright put
-dup 40 /parenleft put
-dup 41 /parenright put
-dup 44 /comma put
-dup 45 /hyphen put
-dup 46 /period put
-dup 47 /slash put
-dup 48 /zero put
-dup 49 /one put
-dup 50 /two put
-dup 51 /three put
-dup 52 /four put
-dup 53 /five put
-dup 54 /six put
-dup 55 /seven put
-dup 56 /eight put
-dup 57 /nine put
-dup 58 /colon put
-dup 59 /semicolon put
-dup 65 /A put
-dup 66 /B put
-dup 67 /C put
-dup 68 /D put
-dup 69 /E put
-dup 70 /F put
-dup 71 /G put
-dup 72 /H put
-dup 73 /I put
-dup 74 /J put
-dup 75 /K put
-dup 76 /L put
-dup 77 /M put
-dup 78 /N put
-dup 79 /O put
-dup 80 /P put
-dup 81 /Q put
-dup 82 /R put
-dup 83 /S put
-dup 84 /T put
-dup 85 /U put
-dup 86 /V put
-dup 87 /W put
-dup 88 /X put
-dup 89 /Y put
-dup 90 /Z put
-dup 91 /bracketleft put
-dup 92 /quotedblleft put
-dup 93 /bracketright put
-dup 96 /quoteleft put
-dup 97 /a put
-dup 98 /b put
-dup 99 /c put
-dup 100 /d put
-dup 101 /e put
-dup 102 /f put
-dup 103 /g put
-dup 104 /h put
-dup 105 /i put
-dup 106 /j put
-dup 107 /k put
-dup 108 /l put
-dup 109 /m put
-dup 110 /n put
-dup 111 /o put
-dup 112 /p put
-dup 113 /q put
-dup 114 /r put
-dup 115 /s put
-dup 116 /t put
-dup 117 /u put
-dup 118 /v put
-dup 119 /w put
-dup 120 /x put
-dup 121 /y put
-dup 122 /z put
-dup 123 /endash put
-dup 124 /emdash put
-readonly def
-/FontBBox{-251 -250 1009 969}readonly def
-currentdict end
-currentfile eexec
-D9D66F633B846A97B686A97E45A3D0AA052A014267B7904EB3C0D3BD0B83D891
-016CA6CA4B712ADEB258FAAB9A130EE605E61F77FC1B738ABC7C51CD46EF8171
-9098D5FEE67660E69A7AB91B58F29A4D79E57022F783EB0FBBB6D4F4EC35014F
-D2DECBA99459A4C59DF0C6EBA150284454E707DC2100C15B76B4C19B84363758
-469A6C558785B226332152109871A9883487DD7710949204DDCF837E6A8708B8
-2BDBF16FBC7512FAA308A093FE5CF7158F1163BC1F3352E22A1452E73FECA8A4
-87100FB1FFC4C8AF409B2067537220E605DA0852CA49839E1386AF9D7A1A455F
-D1F017CE45884D76EF2CB9BC5821FD25365DDEA6E45F332B5F68A44AD8A530F0
-92A36FAC8D27F9087AFEEA2096F839A2BC4B937F24E080EF7C0F9374A18D565C
-295A05210DB96A23175AC59A9BD0147A310EF49C551A417E0A22703F94FF7B75
-409A5D417DA6730A69E310FA6A4229FC7E4F620B0FC4C63C50E99E179EB51E4C
-4BC45217722F1E8E40F1E1428E792EAFE05C5A50D38C52114DFCD24D54027CBF
-2512DD116F0463DE4052A7AD53B641A27E81E481947884CE35661B49153FA19E
-0A2A860C7B61558671303DE6AE06A80E4E450E17067676E6BBB42A9A24ACBC3E
-B0CA7B7A3BFEA84FED39CCFB6D545BB2BCC49E5E16976407AB9D94556CD4F008
-24EF579B6800B6DC3AAF840B3FC6822872368E3B4274DD06CA36AF8F6346C11B
-43C772CC242F3B212C4BD7018D71A1A74C9A94ED0093A5FB6557F4E0751047AF
-D72098ECA301B8AE68110F983796E581F106144951DF5B750432A230FDA3B575
-5A38B5E7972AABC12306A01A99FCF8189D71B8DBF49550BAEA9CF1B97CBFC7CC
-96498ECC938B1A1710B670657DE923A659DB8757147B140A48067328E7E3F9C3
-7D1888B284904301450CE0BC15EEEA00E48CCD6388F3FC3BEFD8D9C400015B65
-0F2F536D035626B1FF0A69D732C7A1836D635C30C06BED4327737029E5BA5830
-B9E88A4024C3326AD2F34F47B54739B48825AD6699F7D117EA4C4AEC4440BF6D
-AA0099DEFD326235965C63647921828BF269ECC87A2B1C8CAD6C78B6E561B007
-97BE2BC7CA32B4534075F6491BE959D1F635463E71679E527F4F456F774B2AF8
-FEF3D8C63B2F8B99FE0F73BA44B3CF15A613471EA3C7A1CD783D3EB41F4ACEE5
-20759B6A4C4466E2D80EF7C7866BAD06E5DF0434D2C607FC82C9EBD4D8902EE4
-0A7617C3AEACCB7CCE00319D0677AA6DB7E0250B51908F90A32C4175B6BFB279
-024EAE1B04D721A6C54FD62484F8949B2CE9B87D9CEE04DFF82BF14931B3CA03
-AA5F701B6F80BBCDF2C427C40A51597F0B1BFA25EDD7CE0EAF2EC676BF0059B7
-15DD5462BA30DE78A08DD533DC0E8D85F9DAFC5FD842F417265427E0F1B71834
-D2BF6EFAC3CCC40D3EF3B2E2080F148441BA45E5D0C0F7D8416730AF4BE4FC93
-1E965594E0364F0D4F1EC48004CEBDDAFB1F0EE0A8222358EAC0F62E6BFA3C9F
-46875EB4C999219B91E6147A49A668505667030CDF3495682B79C0F614AAEE68
-D976EFCDCB04127C0D7325A2211E49CD316935A0B472D1F9FFC68F7FBEBC7582
-036CB393016193A9783DD08D647E89C5BA4EFC8701BCCB6A5C027C4FA8644C06
-251B9E33FFEBB1B84AC4D4B148205C8CA7AF5EF97F2788EFB0B71473AD0F5EB4
-FC43F46602C53E53F5A6D1E445439F65967C51EAB636178FA377DB2DDE5FEF41
-9E91F3BEBCFBD3B4EBB510A0DF7F4D19C6552BC98F10E25612B1396020D7836F
-A3D3C865661DB276E428F09F048A916B4F07D8FD01AC1942A3CA342B0E531BF2
-3E9A7AF265ACE1585E331A8F8B5AE06FF085C1F349215581FC7D68D16395D934
-79B3BD866A4BF33913DEB54B4D00ED5EFF3313FBD1C5E6AC430567872BD935F2
-AF1A3F892266CEAC15DEF43BCB83DB075A69EAD7D2EA53303F65E04C5673411D
-EDFB32156120099AC210E623BADDF2991F96813AFBC1126DF53A0A776AF7D61A
-6B42225A5AAC1B0AFDDB59C5922143A156EED76E3E1ED01ECC6ED9F61B5711DC
-C5709EF5A3CED45628AC1728DFE98F07389777E04A7E407E3B007017C96F6EE7
-D0FCC0426C4D734A0B108FD2BEB48FFB6D107C5AB8EBC3584F13A40E5508AD9D
-5A081286BFCE1D5DAF5F3D86515244B4D0D77AF9820A93B7C90420FF4B8D634C
-2C5697E3E04802E2CD7B9AB8368F1A9DC214CF893AFC7BA3A8DC24B0E549E106
-F04530708DD03367D8501655B1501645F17E547C1C948DEA7A4814F22E2A1D55
-5AF16C55D6BB4EE9929C9CEE82C4D6A16D70D17AFBBC6551BB2C9D8B69F5DAE2
-5DF6C2187ACEB119EE6087BAF5E79340D115C53E710CC7E4C771F43ADE91D2E1
-1AEF7BB2E6C9ABED010A835514EEB6C9A2C93396FA12E8CD0B2F9045587E51D2
-7E059224A889B3E7620E57AB6CACFD769898B3955661824DD4AFCB9A7B218DF9
-F84B369F52E246723C7D0B26C145DA0AF81C83DAA091143FBBBD2A414114E34C
-7C994D8401119D5A46856367EE3FBBBB32155A00E5314641288A6E1FCE47F385
-71C2F7A7602F777C11884DEFEFA560333458DD227E63F3FE68A762CAB0A7308A
-FC59C9B293233DFA257E5D10BD5F12B7652C45C4C50F14F17E59A758BD7355EE
-A89B1EC954B86642B87F814F936577429C467BC8E97A481ED15E2633AD73830B
-DDE3DE50E1EC439204C7FE350C69494823725920719D613907163AD63FE83C6D
-1CB6DA81A6C816C747542CA09493306B44A7DCE934B877DD356F38D07D3E0355
-CB149BE6ED646E84DB9DB61859F6FC45BCE13EE42458D1991AC34AAE6EA72320
-3EC6346C38CA87107618ED3C46C331623D8FAACC6CF9292B8F1B407806A0D480
-8F51A5BC97F6B15807F95CA9DC14C0F5FF3AF1881346AF82F65F0C9AC200DD03
-CD20E0C06E8AA4FA8B225DAA01BF6F07ED8B9C9577F5A565755A71A40D2A453B
-AEAAB4599F617CFEB0B809856CE021E25399D38570ACF8354798FDC2DA24F0A9
-3AE098F5EB8C400569A5D4178354CCE780B8CDCA570E6051F21ADDAFFE775A26
-F9222A6DEE1BB669795728FE4DC07114AB6A8067C56D909BAB80358F39B257C5
-779834A4261613C8F2EFD82F20C9AE15E072BD78D60D77EAB14430DC51BCAC86
-DD91D1654E340719EF37A8B7C6AC8471C16680FB0FB7ABCAA8555A292AEAD439
-4C6BA6BAFB0B19F9DE59745E45D0B67C1D4DE80CFEA538A2551037E0CE7E8D57
-C10AF598A2E9F8A5F67D793D2A228E7A1ACAFDC75420318FEA23286A45CE9C45
-EA34C3E15634BE1FAA50EABD04E94F6D47CA2B78F2B129C94579D24946A8BF07
-8E870456AD04FB3D0549B59D1CABEE60F9759BA2BC06E068D2DEDDEFD8B2788E
-92CBF4B44E04781BC17A58A0A3BA1CFC463145593170F06FB4DDB90460256DBE
-572A290F44973D09EABC8D7665E1D18E1B8F5EE44985B498B6E662B87DD610ED
-CBFDFFD33F0A0C95765E24A7D071269FF7FA2D47942FBAEAAE065B7DF4A9EAC1
-FD58D7C302F9D15A2ED0969168E2FC4A021C521FC7D9C53ED3DC1A0F9AC63862
-AB2396C14CF8552EB0A8C067AB163FE0DA20E3AE1C7881AD6DB0E1D615F7F2EC
-1184C69A430487B861F5CBC52F27C53E1588AAD6FD43CE2C0EA490B257C4A36E
-06E21AA6EAB94938E002FA80E1B1295C1322A207C5A87EC49669AA2FF054BB4B
-B64B622FEAEE05CC84835178C4DA9DAD113D5C6BA75830CFCAA2077A071069A5
-258AC7E801FEA6778FB7EA7507470AD0AB6BB49210858477F53A831F9CE5CEF8
-B519C07786D0551A22E3EEB5230098FB06B390FAB4C73F0D3D03EB4890C03329
-5A0B9C67F1E16B0E1A9D4389DE67F6A950F322ADA03433E71E1DD8D4E416D9E8
-CC55EFAAE6C94CCF24980BAE71CE23916DDB17DE1E412CA5CFED25AC13109246
-A26A8F568DDC73538ECDD2BB41B9B5B020F0F1D36C8F414C24566F8F9E1352F3
-38A5D47FF00D91F43069137BAA659301C2A1EBA1AC6623DA8773643A29E498E2
-33C33DA49C290B5719BAA7E9CD8D00C803624BE63EB0100D6D093E3A1A86D653
-A3CAE4459EC25EE9D59D4AFF27CD3FE4BE831C0C31EAF27F364247114E896CD1
-6395D9516ECF3DA7D9A6B4F36245021C9CD6C332182441B79365164B1E40C5DB
-9E4B5A69DB4AD7D79979E6013435C7D70BB7E910B75F28449CFAD0443645DF30
-5AE363FD581271F587E53FA6DB88B28FE6B80F8A5CD58BE57B6B386896BF7A4A
-D1A36057CB2CC346697B21A5CAAE37A68E62BA46568F0CEC8EABCA7D1A08E7FC
-72622305F10E7BECD696DB80A170CB09BC5E27BE68733943C72A163C88485457
-D47FEA6B5D20982E5713DB5C4E499DE5DE8C2090F3006242516349955D8D7857
-0DB51BFFF42BCB28DDBEA8C2AB5431DCD10DDF05F0B59D00F65BECAD61ACCE82
-1454C36AFF83685C530C8E3A5016665E2A50287558A44E43BE485C96E3DC24E1
-8B291399BD9C9D105377497D085FE5F9037B984104E915DB9E76DDA3BD5A83CC
-ECB3DB2A2E14B90760C207F2D53D9389EA03AC1F5A6AC61E1F538DAB42800822
-BBB425E322947A26F51B3E81D2B3D0CF214D2410BE2B0F12CD978C1943A025E9
-C9E5B403936A6B7928966EEE19504D9F7994861A4A73BB3A63719DE764BE9182
-494E70BFAAC3C26CF422727BA3A2660F1B2394CD361886FDB734AA49614F4C61
-565831EA21D56CCFF58F29F2EBDB513E9D3601F405B94FC7F5FCBA22CC3E47B6
-5F71C0768FA87DA0BA8F5390C0EBB0EF2242FC8FA3AC0C3108F6772237BFEFD8
-61F3DBAB78F70D8801A2F4C615D86D011537BCB2B5ADF4A13EDF0C8BFBBBCA0C
-2C0A139999ADE8FD695D2954C79A86D885E70CD72EAEF05430AEF1A15C9F1771
-F10BC3B8C9EF931147E5EDD3EB5C8F459077AA3407829FA8092F61A909A6B67F
-B6AFC3F35F065420DD6CE2E0FE0227B06A203F334EB8B7EE4C6F27C394B86EE5
-75D6200E98B1F37F1A977B8E92BDF6C4532879A6EC1D68BE998EF2B57C50F06E
-5F30DCFAB85B51ACD1B127161A73E0BD1DA354F3025B3F92C054031D03ACF16A
-158B45606BE9E306B633061654527B904E99D6D8FC61D7D1CC69D18D94D977D4
-402BAE1BC49DD45F8772709A4F148476F9302E38BBF6F6843FC56CDFCF7F74F9
-983100F8FF980CA805AC80511BDEDA1138F12733EF1FCB50D0F60EC06D6BE1B0
-9F908DDB1278340BC780A31752A809A0B6651C5B3E5E0F2017F092849B1162BF
-2188145EEDDCD96CDF5C00AC05385492038EB2F10358D853509706635412F19B
-DA6041053C8F41970BCEDF162C1347DEDE920819734B47FD99CD38E1BEF7A7E8
-8150B295BA78BB5EEB055571F49B848E5A85175DD39DDA6364B7BD0C9C3FC42D
-EFB45AC4E52351213740B3CE676A43DBFD4D04B1691D5EEAC147DA471A3D7A00
-93CC624819D3BE17DE9D8F07FAEE4F54EDCDEB4134D9F39C3BC33857BC8A08BD
-82E23B5564415A3410CDF25ED8C3D443A0F5A9CCE3D75C5AD55DD3DD28EEC633
-82882118F09251A0DCC8349AFCA61603ABC621894DA5C1BF308399A9CCB8283B
-6F54E096CE3F2D3C11373E5356570403B418B84B06FBEE27B63D8B678FA39186
-81605E6B09B02037FC124776DAD7AE3EDF993C064EAC0DD678E13D8D78F74DC5
-22BDD780DDE77AEF1C2E2CD2239EBA6A9E8E9AF9F4F4605ABDCF22902055AB90
-3C5CECEE9B92B52EDAD5D29C3FA6964A7A7A2EECD8F9EAE1CC81D9825E8411DF
-058A838F2C335860FB3B063C824FD45825ED5481B9320FF99B60F17ED8A1C1CB
-A7E12EEF35A40266C7DE2E1DEC31AADE7626C5FC57DF545933F602F283A27D9F
-0E2C77A1BD5394944566497E01CACAF62542EC93D16CD80D4647435B6C905A31
-B94C5CC9F43D6492BB70A5E8867C7B0F58D75240B496DEBFA6DB94D8CA775A7E
-53237BB081D1A189124E6880B6D964867804BA33E0BFA961A562836F7FA1E98F
-EE78ACCF16B330473D69D52D011AB174EB440746ABAC7DD7D9AABA70ED2891D2
-47E2AB24669280D11FD453BBE591642A3FCE09EBCAF62F8E27FF0782216E6E87
-AFC464F2316DDBFF0B6736D42577AD10754C6936B6EAFB18AB6AA3AFB316B179
-B19A0561A157E90035FD26B8FDC72C2892C94957D3257C38F8B1BF14CC7C6AEB
-6FA1C4AC6F22C627BDB1CE6AC63D656D5E7410F7E516813CA3BC9EF02EE8ED4F
-B02D57B303875A7F3E1B8176892C2149C39060E2AAB5C4DEEE429B7AE36CCF51
-997C547147B3CB8DAF1E8C8B160F00A869E5FE90F8302E081307F4C92EE0B374
-EFD848E3F943E04245B6393060B126C7E2A2728F9878D7CCE3DA74525AF11C66
-3BBA0749AEEFD5B190A4A0A729784D15665A8150FDE7A8EA5CC4CF0092B2AB09
-CF8659711E84D057DEFFF2696BBB20E16D9E4B1D4D4EAF69F3BF07644B90C94F
-D11E9CF3E66CD3368E808DF69DEB6C6A3233A88D558BE5037ED5B42EDA0070DA
-3D29F04CBFF58BE922CF4C8F9688A20EA7CB644B080D2C01A2715A69D3D8B7D9
-5C0914DD83C9490E465DF0EF013B6473BC28E937C6E13A2F08CCC8B6F35544F5
-9F79AA89481CD0AAD87C6CA2391BB69A39B090208EFE1A0FF5BEC74923193F6E
-B2AED1DCDF644351089CD7460AC4987789B2D92D851E3F58B41BFD281D717863
-5CEC8AEA5CB14F52F6EA6F5156F08A1CED2312CDBD2B18BF01FE503AB86DA440
-F892BAF54438A5FA847DC0FC7121F2EB829DD00D2DF2BE54EDCC42187840D8B4
-1CE8DF33B574EF36701E2873D5824C37C6BD7DA4AC7BE64D12A21FF2A23CB9B4
-1C6FFA7D8B927745000345B5AAC5825D89E617FFC97B6C7FDE0509DE3FC6F2E2
-1508278734B33F4550D4F565B0A23C2615B49BD17B6741E086DFD50E1E6CE979
-558741605E2A314C325BC4216C2F0F809F492B1898431AC7AB4579E76A3A0F63
-E8CADD4AED7CC6C56AA12867A43CB25187686ADBD4591DD35638F5C79C961085
-BBCF38D48E756C295A0FA4E59BC1CFAEE016686A8F91CC56E37E4A8312F39837
-09A926B3713EBCCD1D82DF9DFF36C0C024975F531B42E7F61D830E2FB51BAE2D
-9A05BE87E8F052E748F8B4201C8869A64BBBD42CA4974E230E59CE541EC0C743
-7292203798D2E11AEF67156FEA12C22964785FEB4CFF473A710A5D7F97A07A40
-D5E9A182D7A96A083823DBF8B1726E8B71F0D751D506DFBC20EDD53A0368D098
-59453D360568B76B5168254027AB71D2480C63D486E855050B1F480BEDE9B4E8
-3379C0B539E33AF2E286C2A02A5D73148114F88898D7C01F408844CA50574D1D
-2B513E63ED04011F179512384C647100C1870937BBA5F404E80B6C8BBA52F6FB
-DAD5343B530919E5AE54E0C859591769580B82911BDF290777B825E417D4EFB2
-FA60EED5786B27E3109CBCCE391B855ED46262FC16A663E63E9A19CAA6C6F58A
-72AECBF5234E25B5C49D143F1084F0B571BB424A1952AB4B26366ACF83A29BEF
-75D9307731FCD44EEF157A59117360402DC446F9B58388AD66AD88B8C82631FE
-31E99E3158C25D152EF626EE76B2AAFECA33CC0B9A571C7253D3AB32DCCC1A2C
-11DED910482250F8A84E0C55FB76264A1C4F434CDD85A347B1DF702C8347CF3C
-5461B2F76AE34887964985AEAC9B7ACF13700B60B7C1446ECA269B2E5146AA31
-0F0556C5435B68B92274A4E5B554B0B7A163E15F8D4A0391F1389C3D7BAC8EC7
-A1AEE0C8C79ECD8F6C2A6011BB0FB966134FD1F75C32F515F63F6A5C15323304
-EB0F0C267F5FA8FF55D2E4D64F5184320756B78F8C043B10D267A548EB1E0CD8
-04E106687542C3231D1E8C157A9BBBB053ACA2FC0DE6413D52360CFF6ADA686B
-F2676FCD629ADFFFFE6F818EF61E5E90B2A077790B2B06E0BC1E0B9163982691
-2EC03BC185E8114DBB76298230FE8B82BFB09FE562A0D96C696784D365CAECE3
-A89A1643257B0298449320C35F91980B364D7E589DD82D69C8379B33CEEF951E
-851250D66FFA0F664D6C2A8F61F2C97E925A46547FB698321FC84CD623CC7C94
-223D2B874D39A65264E9B45EE4646BB830F2F62F8B7F391BF70CC3A9C099B7C2
-559F46ADB70B967DBA1B74300C79738BCEE6FCB3C6D9BE839A22D8C7F4930376
-82D2CA6DA3AA63ADAE47FEF0F0812A6E8D6CE62C60181E71DDA511DF008C38B7
-6741FE1D1FDB1244D04809C4DAFACD75070C10CC0937B7FBA274F64252654907
-7BFCDCB0A8095D5BA8687C93BBD90B2AA3085C047DCB8A095640310E0ED49B31
-93DD65DB30F49E3CC07AF9FD1A6EFC7D5DEE306121CF7442C0ED5A1EB49DADBD
-5A0AE4F838C46C78DDE83BAD2AA31EE6E6DD7405970CF09FA9EB5DC00889EC81
-0E42612CD085D64C74C0784C04257F0E708DD74A8D8C06F8845C2B2966FA2358
-4D5DDD2157A00C184E11300D34097737B1CB714CC71070FB05F7385CCABFECDD
-A035DBF8F2FD9B67F7402BA8F589A5AD61A5476178B404188FB908D591E4948B
-FD39377D0AEF18B82D001514B03A123F7FDD63812FD45D62EC971E93EFE90BD3
-9496C49174F0EF0F513C2BA16F6A6507968C5199519BA9D713DEE4D0C2D427C4
-078F347B5120552E2556A42E0FC37BFC7FE8181F17A01B449CF71E093695BFA2
-D53857C0E3DB972244943B67A07D5AF4FE7F6E04C8033EBD20EB55C38AFF58B0
-D04FF4AC82937A650818A480F2A40ABC3F4A26B7F4C17CDF1A7B056EA67E0D29
-01BDBF1DE76DD59523DDFBF39774AD9E4A04CFF23CE673197C6A17015449D65C
-45C56079351A5A16ED030E96D24A755B2C14B6B925D8C30A16B77981B92D2171
-1E77C0C11DBF9ADEFFA03178411F841A109EC7DC45C4C8E133725B7ADF0DA136
-4A46840677A020BE6897A9FD9AB322F27AD0B55B5500D2B48B71D4AAEFB10774
-8553F99DFCB01FC07508200B9367E6C8145D7F1248335E90D32D9E528C4B955E
-B8DEA684A010BF454070B7DAA128C0BDF6AD29810C4CCE310A30080AD36E7799
-9FD52B074E044EE02FA248087EF3D690FD6DA1AB501CCA44D132049479919EC1
-9401487835D2CAF0A89FDFFF635EFA444E8098D4CE6E2C892482F45D002C28EA
-8879170E7A34FD6AEFF140B1EA77C009F30E60B2857609EF8345A0F20F8085AD
-5E78AF3F6EE20F363468B49FC735FF32AC6382F638006B83FC283AB7ECEB0DC7
-0B67505FD5F97105EA4BA11B18AECCA6E5D7EA36C538401F16832183A17BCAF6
-BFB047542E014E2941BE29F8747E6DD07AB13B374AFA63ECA73D4134FD950C03
-DA939E892C35543DB6AE960A18D57490686E0F758061AEE74D40BBEAC328A905
-7A29FEB1EB40ECF45593C6B2829445541DB58D0E8697CCA09C47D6C86B730015
-8E920228398E492FF70A3DB13248033A61DB5542B8327797951A89317C96E68A
-5EF8784D8848222DEF31FE30A9F9E4C12D42D0DE930898DC4446509988E39196
-792F97BFC9A60C717D78D8901C5190899165A1389835DE21EA49EE01B584787B
-8849FDF0146111811047FBC3ABFFE2307E16518093AADA08DF73FDE6227D2BE0
-5DF2071FAB4F7E825B563B3059F8615DA305F51AA2B9906F1516040BD883DEE3
-922D1D905EC34D3F0400CE2492E93BDFEDD8F3230838EB248C0CEFB5ECF929DF
-D707A953953722436BEA6F5DA51A56F7668CD083E9CD7FCC8B736EF8B08442C8
-AC1AFF6DA974FE5E50D1694B3D07B2E47C0238801E7528C04C967023698E5B1B
-23DB992777B22E7448697F2B78A20B98B78A79635104930A408C18C7E6B1577F
-425F2073EE5E17A8998A38DEA4BB12834B6E842835BC711BBBB04B371CC8E532
-2490A6431876346A3A263683C153D77A5BB9B32E3D91B952172DD05C38F72F3F
-A5140DF292545E31C25B27E2791205641375EC542589D61290504CD73B560B2B
-0C2A8AE31CAACCE8BAED61AC04652F2E0977BE269D860034C429B0164585B658
-29EB62078B9B802B4E214FBE0198A76F5C9CDF072D3C3675583E44130306B5D7
-7D2F147BA926C70749525B60374CF6763E273F30F2532469BF6A7A3965E26046
-EA9E93F7D393F8EC2C021987D33A9AB30930764D1534AF53E361EA65B2B64B9B
-4E93768EA25ABF534761CF567552B0B6D52C8C53BCF5E3414A0B653FF21C8F65
-2C6132916466A286C7E498A2897C237AD5568FEBA57B72C7A87A416035CC03BC
-D1EB9DACE25516AFB3A6B6CAE2C70665002FE2DF14C2850662E43C5F05252031
-BBD84960EE0A86C8410082F441B8B594E001133C4D9DFAD9B4F38BC878C29AEC
-5EDDAA290F7FD74C9228995E107A975C70A7A37EF8E01856E978F284F1BB1453
-A44320130DAF09D7064D9867D27A55E3425F5D25B99F553C9202EE42FE8D3AD2
-6C1D34416C520E0483CC2B87ED9D9F39E563A9A0DC421C04B3B9CA8582DADC5D
-323DBCAA108F28E8F11DDB3D0F0B10D4A62C93FF9E2CED79214641160DFE8447
-93ACC0D72E8D30DFA0E368DE8E56C566D7E15E559C409EA8D913BBB18E4BBA89
-3246FD9DAACAC4C5DA87EF5B9A91D10F10D7252F7531FCBC343ECD3D2B674982
-8F0BE87B3E1CA86112FF617A8E63BA92175913CC403038265C5E35621001B6AF
-EBA934372CB68E99920797A6B154557FAA7C3C696A15EC66348E209BDF87943C
-A9F4281847F5C3C8F340C80240F1A93916880670C350B3A9E651EBA7E62F5D50
-9BE78BCDE8E0599FCB7FD9874E87E957D1117CEEC67A63B8862278E015856F2C
-E31898E7FA1436AF76FF20AF5A7E5BBAB5C23E8C0E66C975A290AB6EECC07F04
-C8A37224EBA5D046C7746168EC081B93E0EED2DA80D9754050617DA4CBD3D5AB
-C9C57C0FA2767E7FD633288652C3C4A2C8095D9E8E2A18C887B4D765B2578215
-64EE4227B2A8B3990DE2E0A4361E0C05B145837D58C4BA15CBAB0E79221759F4
-F17BB5097988872A957479DE4734BE905DDE5B8DB9A31FB9C235114974520D2C
-CB6D6284C199A880217364EDEB160F5FB7FC762819E4509FD20E27A5F865EECD
-B893551A9ED16D5E809B49B9AC67763CB67F877EC21D8E2B8A0D06E9936E84B3
-A6181D5831D67A8F2A466A71F5A4DCEF0DD7387CD5B248F2D5981A9F63D8A260
-88B568E1773B13256E440FACF2DE1041CB99397F8B4CDC8CC87447FA6FA0D670
-5B99D0BC94ECB1AD7BAB0DCC66D278E256CC3689DD3B2F036A6A3DCC8FA77FCB
-0A88AB3A3D50C245AAE20ACCEE7ADCD9FC5C9FD53B405F0FAB220385F7D92011
-E527BC0789261AAE6197377DC5BBC9F5BAE3683700F85C63C0DC59B02BF8B65A
-800DE3BB27A3E75A87F6A550C787F67B1430369268BB61CF5FA66D8F5221543F
-2CEE65CAC0BC2996F73B71783E5BB43B030C90A5FB13CD66BC659A3AC2E897C4
-500CA657F16F70759F0DA8D712F4E94BAFD3DBA866DFA8D7310A44F240522200
-C8F14C7CBF9BBC33276B623C746F7D0A4D76AB13E39DA19E1308EED0A388A23F
-D9336D3532151A416C720052128793385DF6B68D3BDDAADF8F7FFB53260B81DB
-321B33EB566593E390158B80DC631545A66C3CC2BDDB61446A6298D884389303
-E2E55D64F430F35271060417EA4350B783041A7607D44DA3452D304797C03864
-DE4CA134F33471E959A74DE4A8403BD5A1A381BE22221ADF76F0B71F29C7DE1C
-9FD94E0F158182F6DE7689A96C555D2D9F1FF664111F56B147B650BCA6FA1FAD
-9ECA4488EA201C8BB72F63BDDFBE7239F13C46C492F320B4F06F34A668F657C5
-CDD4FC447C67E1BAC54C99666DAA9E96ABC836BDF0980239245D48227C14E811
-FEA8C345C2BEE84300C746016F98893E12D296C64C2119208E4C203A8EABDFB6
-699EC1F750DB57FCBC535E0929123F36A0113E6CDAC09149CE5865B9B1DAB041
-A74C6EB8EF0E8FDD6DED8C67B849324EAB11FA732BA2EF27E11190027F657912
-31A49FDF69D97032A07C66B79FE3F39594FD7DD3BB4570A90747E908D0121A05
-27D12831D23C466F31E31C5B3CC636880DEB158BB4A2AC34114299987E9F8F53
-B0A28EEFC3A259F49CBAD20BD7BB4ACB07726033CB8ADF88E7FE0A0DBFDB10B6
-21669AE4942A298072C72522D34E16987ABB7FF0236EF31B00EF6094024AED38
-CF83EA391CA265E5C6B8B63CE728CBF008756D4F1CF35E0E39B7B17A0608FC37
-78CB7864BA7EE90401AC2CDBFE9AAE8E3F726B41DA0BBFD7E503BC01ECDDE23D
-15A1954FCAE479BC85DF88D0044F2403A75F26276D16F8F125BBA3D166DAE700
-8F0C3A51CDB950B603FC44DCEE18028B36282DA5D7C4CC9C79EF2C879A86A1AF
-467CAA95AF247AC7EC18B7282E5A9863473871C679368C9438FE626962BA0D02
-AB329F7F03BA30FBC62A855DCEC3C4099A003F8D6F6FC94D5B7FF9DA05331BE9
-21B06F9CD00C1E2C5F694307ED8D81D474E70BDED837C8973AF6405115C85E57
-7D64640D85C0FA0FED12BDC55DCA2285DF9DA4F9E48361C00AF5F61C57E4E1C9
-60FC8DEA6C2EFF9654CD220D626CBE75E183368BB8B093FC64BF13B90F935756
-F87FC508F719472F96A7E9732C2B8100354A59C88BD82BD12E485EA7680EC9A7
-FFE0A6636C8D0A423D0432561649BA335E8BACBC5126BB4F796EFCE6DF8B00F7
-01DB1C7FB57D15AFC69470774A735CFD876711AE3AF1EF970A1FE154927A0A00
-A68D4CA6899CE12A1A26CF5393446B436F40D5A47238C053F3248C5929C2B5FA
-EA441400AD4B928537A636AB45FEE4F298DCEA28FD29641C41E51926C2FA4F12
-BB1187C4F050FCD171A9EF0954EEADFD2807956D09CD6EE2A4F4B88B54F3BF6E
-653A02FCC95A3BDCE0A0FD9F3F6E74222A52E2D424857E9A4973104842E1C308
-215467C9F5F9943126BA74589C900B74CD8FCBE53DD73FC9063A5B4BFB708DD5
-B8E30211679F57FBC99D651918A04071C6163EC8205AA0BF84BAF8CE8B05193E
-DC677B30A87722E97F961F3F7024FDD5E0A54A30855E8B7A27715DD055F396F4
-E3DA37B23D51C0430D159EAE4116ADEAE6CCC19669593DB3EAFA37E960D63B0D
-34E00C124CA2A621A4D13E2EECE188BD060714E0A5D38EDB57D0FE37E01A3166
-9DAE1B44103702832F003CDC90632C47720FB444223824A893172441238C11DA
-87D57D945EFE864C0FAF9DB4019041D5BCA4B7CABAEE9264F7D0664089252A10
-142B31D8ACEB1D9C8A46A1EAD878C189BC82179911717C4D6DE3A4DDDB117D94
-851A5F735F8F64F6343B92C0C697963DEDC4FECF1D6ABC5276D6156A40C4E53C
-93559EC3E3518A3CFAA0E4F1B296E9CDCCE30FF6D429A927F85980F3A424A719
-050EE1E6DDAA47E6705E996A65E1F805333B9728F4E9E7C8B3B3E29AA68D95C9
-124F5036334D202E1E4A520F47FAEA47FD2AA761E99029365E00447F13FAD190
-DEC04F8356327345FDEB37C79E467BFF87218A40217598D40965C5E06ED0F93D
-AA40CC9445A2649F9D6D8C90FAEA395733E71F8ADE555E2166892B3FCF84C749
-268430344C7E70ED90C9858A74428382BE6E04D39174C1A52FD6727CCEDF3FA4
-55083E08ACE62339128CB8687F00C8DEAD4B7C7F2176154C5A2D2A854B72E3FC
-9EA3320B701637A137EBC3C819CB06F372B543C0E929BFF3383DF0C4B093589A
-40417511C97C3CAB64C88C26743683534320F8CD312E9B48E5683E4E05FC1A22
-7CA3CF17F181D1B581FBAD827964CE1F911F6C48CD868A9F6F1250215C1BE545
-48F29F82CF164AC3376AC9CE8485D2DEE18D515F12726E501AB86E2A904AC445
-5B3859CE24028493A520F8118834427341C7167FDC4731449E9080400929C0E0
-97328ACBC1CAED6C5042AC37E84F5A122DBBF261049BE6D7AB0E688CFA9E457D
-DCB4004DE6E5EF19D57409062F918C6FB0F09B434F30C8E609A11071BCB2B5DA
-A22F9AEA81C48989A244E8BE97BA8CF9A09E9611D47A9F77948B3FF43CE6F378
-71BB181A69867B6E6E01725992C9DD2FA6EE02107375D0C5876FCE49A3E1F3B1
-6A15DFF1BF3DB92ED9162BD4A36AEB4F3FF40E7E71B2B81FC4E372C941243F90
-C959651A8F98C0441B854097EFA8D66FC76FFD29CE9E786AFA3AF08B5C83660D
-7FE132D95866BEEE0E475F04367343112880F80DF8532D14D8EE4991858B0CFC
-2974C53D70C60BA9C6707307699397C30EE5044208F391809C2B7884D74C77EE
-52A34E2D9EBED8C9AD77F8EAF56676AF405E9A162D5970AD68959AA0C01AFDB2
-AF2E7641A58B894E5EE279E723C7BEC3ABD82D5C1BA27F68394652E942E47061
-C2C8B460209A3D141F23E97AEB68872AA946B5D8C65FBB792A8F9A456B755A95
-18434B1A9CD425243A2056307B26386E64BDA30500018C74B38D9CC6BFC7D87E
-52BAEF36B97B8C41FA46F38B4D37813EE37584E5B36FE9DDBECC8C6BF6646194
-59BF4AB637100456713A84BD505FBE9833956C028AD7C521E8C5BDA9E7088760
-1DEB596FFB35100C01D7EB2660A048F2F6AF924CA0A7C1FEE2987A590D9D5C11
-B0F7B5DECD35F54B4CCFCC7BF8370B7A3184A91ED8B963CF9D180CBC7BD83339
-66866C3B335DFDAB771A7C476650F6AA7925E12B2223EA09E7D2BF80E584298E
-3B114466520D713D3D14D73CCE9BF05DB6870D48564C12CAED2A003BCD295E3B
-0872B5FF1896822188C70CD5D25A039C49D49453AD7D379EA749A3FD3B119D1C
-68E98559EEACF0E6BE1DA9D4BEA3A827BCD4BC75AE6013EF1402F744624FFC00
-C17DD16B4E1C44B8B0FA8791FBAA3C3B6E60561523BBF45357BE6A550302D720
-11DDC010C02178E35528C3D6A40078C6ED2E0AE8F1E9C14D9769C3BE991FBC2C
-3F615E83420B9CF206A6B3C9DC5415BDE571BC3B9444BFD5269092D0EC2791C1
-2FCFDE8CACBC5729582143F36DA9CE6D36C5C66854FCE9C29F3189AEB11694B8
-08873FE32E8292FD57B9CE6E4F6B1DC76FEA98EFEBFCED91001B7FC2A78211B1
-F30DD80DF6F6973211A5D76E000D4F73DD012C62E760732C8D2A94FE6404165A
-513EAAE7958D8E80D47F8E4CCAA1C8822944ED82CDDF945E3C990F075CD530D2
-45E0143743A9310C6E493C5E8D4C6D2672C1834AAF7D570C53347AAB358B217A
-65C336328D667D6CEA6BB97EE648EDD4AB856BF8736E036B559A2BB0D476CF60
-F559841C95C1D8DC962F85E63B2C19D55B106D93B896D87D10B1AA94E36433F7
-17EFB0655E5119BA27D08E75DB75DC2895E922EA7463EE9D5FD7E2DA9B0D10D1
-9F31FF30539C079965DA102B2B61E026BF4F425AF25203F62C6606C904C35A3A
-F766B098EED1991E893128512DF0F35E2C0C196601889B6380CAC542BDAFEC17
-11C265A9C773BD7AFF7483FFACDCEA528E66DEB207D5AD57DB3D2CB955A14B1C
-75190E70CE5B650B021757BC64C5D45FA12239041ED5374147540F7E1E06ACCA
-B06DE83B2FF3CAEA93CBC27D37AFDC748881BEDC30BE2118F542ABC14C6F58F0
-A9D6E9FE325657A14462B4D67BF2EB05E5458B120821A75EA86D102DDB92E9CC
-9DF84F5905A7A3A011C8A7A62F556BB2712AE28CE5AA49295717B08727FC6BA8
-E06C6ABAD51FA0AD08E1821C547C599B4134D6DA36E10A6679425C2E6C56BB5C
-CD56CF0CF5069400F9396411AE4F4BF55988646FDFF2290935252C290153044C
-E30C6FFE0A623A697A5EA25C34FBEE0A9D429B88D1512C21E55CFC5715F76027
-1F863D57EA37AD55F910E131A7A7F7C52F4CCAE4434F300461F77305EAEDE26E
-A782B9FE2D4DADF5044F4B912B09B0AF19EDD486C433D682914650AA408C965F
-2CE16EA10005C4F63E23C5E26939C04FBE91C6C021989AB11BC1E9BAEC5ED9A2
-43F8A29BEC53480EE5841392FC2A89CB596589BE8F2F63A56B17B053C2189EDB
-1372F17B54C2CED7D1701AB04395AF3B36DA19D6B2316ADC443E068CEF52477B
-369B931C69579CCF750BB165D6BEF4205CAA35014EA9A678E4891AC0B9B28110
-D9436F71FFD26EB44053A0DC8A846CC31F1B42096CFD3CD3EF42628517FCAFF7
-FC7B26526B9CADEB536A0B583988637177F5A38370643DC4902AD7C65389676B
-2AC2E025A6BDFE6728151DD4C639847C47F00281B382CFBB9FD0833315A7B381
-03327EE5C2E7B4E107EF3685481B63676B0081BE25A5366BD5BC5E06CAC15A60
-25A2EBBB8C9FF37B73E75253EE0CECDDB404779EA69D2332EBFEE235808DE06D
-66BFE466BC0306A120701FE469606DC96BBB1549AD053D06840D530DC1928FB0
-2D8AFA1129EB725B62982248437715E44ED3C0BE04951EC65ACF23F433AF7067
-60FF11CC949E4B5E1F5C8143B8DACEBB520A490AE110F2E0148D10F2B7B9D7D8
-9B445CDCE2A80240DD31A57FBCBB1C99652E4CEEEFC56ED9A4A02A87BAF808D2
-F2F3413A885F57548170B80E001BA0BDC645F3D55BF251EAEB93141359C10BBF
-69FA01583A539E5A76D55EF88B9249487EEED62396103F854F573F91C04FC363
-B3AF64C1244BB7563E4E4837AADFB652BF189D3AC0A8454FA57CE6FF252EAED5
-E3EE3714BB613DD8BDC6128C13A0E8E0CCF2AEEF10063E32FAB2E54918FBEF3E
-1986208B7986F4084768DE289A4AF319C863FD5CF564A72EB7F437DB8DA6DA80
-D33DA28F7987F9C86547904B0F49F351D18F705C4A178B468ED43E179C43C276
-26E5054AA42CC7B5B00FC14C61C25B11A9D5A5DB3B1806F60248CBAEC06C068C
-ECC0AA85F07856F5F73C0AD13308E6FF55C6C7649B96FD3E4B291B9188ABF764
-34610CE0A73EFC9E52357A2BECB4E6ABCC3C5EF8B1350CE3B1907A104690C865
-4D6FB2A1293B00533867EECBF8B1831B753DDE5C683153533A89FC6E3FC0700B
-61CB7C10C37800B8DF5A40732F17322F4464E7057166C966F1BFDA555129648F
-CFD85AD185410961C086CD5B6FA08619FC943100369C186BA5F3E5D2D4B00CF7
-CE3D23D6166F5F2AA31B0B4CFE98CF190841F69AEFF503E7E49838E4BEB81E0E
-9DC3104632B0FB4A6A04D87D02E9C15AA4F046D39B670F5E37827EF6DA926CA2
-3686FC4E27F14D5755B9312D947096C5EB2F1277DB6E843A168261C4E36F36ED
-98B4825791F6335BB8397DB9B5A3C0561621CA93B143AC978B6549AAC5AA047D
-63F39B84E353120DB184F52CAA1E2CCE76F15AFC6CB7F3C507B2944B354E182B
-225E43C25A92C6396C9CDBDDC93E8F5FA2ECB9B9399CA05CA7CCBEC2A9CE968A
-D089CD94001FBD5F8B1E4060B6B55A7DCCF5B1972E3B532C98C555B000CD28AD
-D93033AAA45346EAD38E49B3CD0F272B5CC2609A26677761131815F64753C5A9
-CC335864E866D94ACFB45EFB67692F31C126B256B4112ABCE4C6EC415AE492AF
-B68C14AF756ACA050F179E2DC1144A744C12121F92E3985962791540BD21B304
-864BEE24C5DF20BE89A70E0D4B797338364993D66A1FE2232ADB3D1374111A63
-DCA4B98912B7E3A6E35A457185418835A5B9675C53752B8D5F53E9C01E0F6E77
-51A6350D29C04E22BA5897CCCB579DD5F90FC8482307030DBB6E8561BADFD1F1
-5FC063DEFE5178BCC1A5F4DE534704AE0E43BD1535A12CCDB14AA1D0C74B641D
-658DAACF0059A434EE6282078C1E80F85A34C3228F5F7FF83F89603613B84478
-EE02C184414F84FE7970785ECC2EDDCAAD88FF94E70D3DA9D4747F95080A3C1A
-2EEDFAF5D4ADE27B99436F2E22E18EC8D061E3DD90EC70948BD50D1EE2C8C4E3
-A0D988D36146419C05EDBA0DA61FC95218CFEED1FCBCC91F419FAE7B43D4077B
-44C025532B9AEF5C2D00F08FD4B0CC118222EA16039E16B2B21674F66AB6CD6F
-6E1F1F54DACC75DD1734EF3318D1364F840E10B44842EA2D710D2A36F3528458
-2C68D67B737B90617D3598125CC89EEC39851131EDD077DDFA9CFCD9DD7FBBF9
-DB8470B9E0DCAB56428F1508E3BDE08CB9F91630BE44D6729AB44D3F9CC25BD0
-5358EA6386EF07D8FAA843A187A9FDE319AE69E85801E6901D6CA87D8CFB171B
-FB248FF2EEF1C6AC56D9A36D648348385ADB4B8A7D614794D8F422972A9D4C80
-3F8E33F1B2FC23C480B27E3388B19FE3544AC9461525199447BE809A04714F7C
-F3E80752A16AFEB451720ED3F5DBDAAB5E4B118ACCA148ACB99AE24DC09523E0
-BFA40A88965E69C047E7F00C8A01A0588EB3B47E99293C9284599DBDD099D52A
-A0C2033D88BAE5984261681C024174906F98B99466F38D0DC29337F69B14D3F3
-50843FCBEEFD2BDB556068FD7FC654F087886E1CB17FA2279C3986A3966611C7
-DE7EC1CB51937AF2501369166E96A4DD0B124BEC75588C348B22DADE47B6BAD7
-D1F7C5AC2122B02CFD2218D962C305B2953F7B6D36E4316450A8DCE29866EDB8
-5D3B93CF031A439C48BC55A217BD7A6617E09F5677DC5986AECE3EF80FD633BF
-56D49E21D1E672027461FAD4858BAEAF550D408E71FB357886DCA559931B5149
-8CFFA9C48713600FF392D880B1002C70EA2085E64E217453F873BCC05E5F7CEE
-E5DE1C0ACC95275D4DD32E55147E507150FB2607DDB5E6D3A54F89B3CFB40232
-0D6F40457D714A60AF7DE113F9A0A2DD661FB351B58DF3B626754DCF3D51701F
-BF8B731A4A8F3A143F6782C5F0ACEF6F0774A7C07BC4554C28F2F2D080EC9183
-CD210B3E29032E28F01FA1C16832671DD1699DF342EF00452C34B2779BEC9124
-3C64C978950398237F1AA8D66A3A39A0D7088B271C054A9143D65ACDC3E1F0C7
-7E9F868F07083F55A6386337793D9E8EF88E6CB1FE850F0116B2E1088E1DF2C7
-4AC396C84CF0F35E635140E7A6A19E5E39902A2B52499071247BC39266519B64
-52F027A9EF68DA6F805C47C5B6ECC0A9ED5DB79CB1901AF8CAD2F7B9CE609BD9
-3EC6057888FA4D0AAC5B0DEF146124789E8B6903BB4EF9C05A4EF964EDEB91C1
-4CC2614FCB772D3C72B6DC4D056F185FF3C9F7C96018FBFBD40A636C33810DB4
-47FC8CBDC9962A72404AF156B17D69CBAD1F07B4E75CF402F68097E7588D78BD
-3C9DD1122ED7916C4C56D908F84B2218450E35209DE1A30E71B416898AFB1F3F
-25242B70EE33FCDBD00C2A103A3590AE3B63C5900696365B0F018B80618D0F72
-EB994FD8DCFDDA7EA3CACCF393872EFF39BAEEC6BEDEA67D03AE98F2249E84F3
-6ED37EE5E993EB96F282D0270C794F2FE622434EE5C99C8677B572D1FCE4EC13
-A1B171193307A7C8A81DED947154D90E58E2BF5281C56892201F6C8D287DDCC0
-11AB85EC27554BE0040FD227E027F74847B16D6BA060F75208D12CCE7FA44044
-A08917508036BEAF1D9B9D940C1CDB2298793700F940333A98BCD90147DCF127
-C6B99F4BF49EE656CADA2F4C7EA905A755879E7F692F4F39ADF6EAB7AEABC171
-2A72D147F1CDC0C864B12EE0816399FA7D125CAF57AF89A440D25333D568845F
-B4D6B8EBC58A521073BFBB6D9F860980767343CADF8414D5EC167D9C7BC40B5C
-97FBDD69B3DAC25E87C4D167F376472AD826A4EA0511278C8D9DD9E47F687108
-7C53C4721AEA016627E47487C871A6A6B1FA52CA703169AD6C785415CF63E06F
-CCC95C2FC29097A3F114B5BFE53D0D0D15AAAE7A81211510A28B8DDD2E9D3F5F
-9585367A2FE0E43F1CAAC3BF4D89BF38CD362B57667F97E202289EE40ACD4E76
-247E1C2BB25F65F2BF20745FE3A19CD048228ACC97CB8F66EEDE564758535AF8
-3DECCA4F5251099F649C7F296C068A69EC6EC2ABB93876CF4DB6C9D1B924570A
-5124C65A88FEC62E1DAA87BF2F22F179033EFE247A114ED8753A12F642B32D96
-7EF019414141E494C1A98B7396EDF2427C235EBE37B47A8CB2D6A9F1947A52EB
-D437C9354185B43A4AC299C20AC267FA110508FA24DF66E2EF53A781B0000D06
-2B3589A4E8FC4277A956BC7EF8CAF57FE644C44198499F566DC3843EE31E17A1
-E63B14A615A3B89AD5F16B34EFE495493112F536ABA91750DDB8FD1F558BC74B
-199FF3A48D9BD0DE21B54E3387805AD1B9F105E511569AD44D1191207557AAE5
-CDD74D81C65FC06598248A72A91E9865E736FEB8526E1532620BFEFD7CDBA684
-70F0EAACDB044A1FC37BF155BC61500A207BA16200F7A7EF5C98F7C0BA0CE63D
-DAAF59F0FD04BE25E822AC796F52829BB0048393AADDD343D25734A256C6CA04
-F3F5F041264034247668EBF3C859103930B3B08C595BF890CA60C1E429233A39
-E996C06BE6EB32CD6A1560BB6378C435A1736AFDAE01C0A13F37B8E9C3334DC3
-C385AF8FE1AAE8ABB777EC8555DE3E74A433D47217F9D05CC291D9936CB04652
-9E3DC449849E4E8A012E8DF58F8DB4D3B042445DB2A5F3E98B2005746950F402
-A22085D5DDC5FEF15D8D38DDBC6E5F8261506E3C508EFF3B7C08C1EE8E4B1349
-A845343908E5B9F93CA25ECE6AF6F3AACF4BF3350C703C582842F59CEEE1025A
-406082C780B92205B359155B095CCE851DFE85D83D6842238E0E15DE2DA0BCC9
-F03921E124EE06E5A282DF6F82B2ADD92D0BA0ADB809BBEEAF5DDF399B26A608
-7E89D51E25EC5E70277FA6A96C4F786BA1BB8478A975989F4014887BC73F16E7
-335179472B4B623F160CE46ACFA8CC210652093E8361DE1735A2AD37D923A906
-838167A8060DC4B749F6B62381ADB5B8932502DC3FB47236FD7837172F22FFF1
-2C33897F244B9873F88A29F222299D7E08F79D07FEE3E4ED09F5F9DD29E9E7CE
-450FAC5DDFD241F896AF6680B45011D095CACD10C395966A9C6DA794EF0E81DE
-68298ED97FAFBE0ACE1430713BF604E55CBD770F5B120828AF486B25776581AF
-F6D733602666FEA868B6AE2818B77E7FD71F06A4EE3CB15D19DDF679DEAF17EF
-E0DF14CDDA21C09B4A6FB966CFF6F8B58C042A7F0BD75DBB6DB7EB81C1C134DE
-D84BCF8E507600DFA6D5AB32E9A27BF4DB8EDB419C4D94C6B934B1FD9462E7F9
-CFBAFEF8FCB7D86FFDED8A7470A0A4D8113FE70EA8DE74E19C5F5ADC4B01D4C1
-B27E1393D3449B1285D6F0F0A9041B936A41C3218941B33D3472F46DDA0DEC84
-A0339B5218CBE53DE3516774BA6DEA013C9FB3039BF4DA71BD5D6A5C5CA415C8
-
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-cleartomark
-%%EndFont 
-%%BeginFont: CMBX12
-%!PS-AdobeFont-1.1: CMBX12 1.0
-%%CreationDate: 1991 Aug 20 16:34:54
-% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
-11 dict begin
-/FontInfo 7 dict dup begin
-/version (1.0) readonly def
-/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def
-/FullName (CMBX12) readonly def
-/FamilyName (Computer Modern) readonly def
-/Weight (Bold) readonly def
-/ItalicAngle 0 def
-/isFixedPitch false def
-end readonly def
-/FontName /CMBX12 def
-/PaintType 0 def
-/FontType 1 def
-/FontMatrix [0.001 0 0 0.001 0 0] readonly def
-/Encoding 256 array
-0 1 255 {1 index exch /.notdef put} for
-dup 44 /comma put
-dup 46 /period put
-dup 49 /one put
-dup 50 /two put
-dup 51 /three put
-dup 52 /four put
-dup 53 /five put
-dup 54 /six put
-dup 55 /seven put
-dup 56 /eight put
-dup 58 /colon put
-dup 65 /A put
-dup 66 /B put
-dup 67 /C put
-dup 68 /D put
-dup 69 /E put
-dup 70 /F put
-dup 71 /G put
-dup 72 /H put
-dup 73 /I put
-dup 75 /K put
-dup 76 /L put
-dup 77 /M put
-dup 78 /N put
-dup 82 /R put
-dup 83 /S put
-dup 84 /T put
-dup 85 /U put
-dup 87 /W put
-dup 89 /Y put
-dup 97 /a put
-dup 98 /b put
-dup 99 /c put
-dup 100 /d put
-dup 101 /e put
-dup 102 /f put
-dup 103 /g put
-dup 104 /h put
-dup 105 /i put
-dup 107 /k put
-dup 108 /l put
-dup 109 /m put
-dup 110 /n put
-dup 111 /o put
-dup 112 /p put
-dup 114 /r put
-dup 115 /s put
-dup 116 /t put
-dup 117 /u put
-dup 118 /v put
-dup 119 /w put
-dup 120 /x put
-dup 121 /y put
-readonly def
-/FontBBox{-53 -251 1139 750}readonly def
-currentdict end
-currentfile eexec
-D9D66F633B846A97B686A97E45A3D0AA052A014267B7904EB3C0D3BD0B83D891
-016CA6CA4B712ADEB258FAAB9A130EE605E61F77FC1B738ABC7C51CD46EF8171
-9098D5FEE67660E69A7AB91B58F29A4D79E57022F783EB0FBBB6D4F4EC35014F
-D2DECBA99459A4C59DF0C6EBA150284454E707DC2100C15B76B4C19B84363758
-469A6C558785B226332152109871A9883487DD7710949204DDCF837E6A8708B8
-2BDBF16FBC7512FAA308A093FE5F0364CD5660F74BEE96790DE35AFA90CCF712
-B1805DA88AE375A04D99598EADFC625BDC1F9C315B6CF28C9BD427F32C745C99
-AEBE70DAAED49EA45AF94F081934AA47894A370D698ABABDA4215500B190AF26
-7FCFB7DDA2BC68605A4EF61ECCA3D61C684B47FFB5887A3BEDE0B4D30E8EBABF
-20980C23312618EB0EAF289B2924FF4A334B85D98FD68545FDADB47F991E7390
-B10EE86A46A5AF8866C010225024D5E5862D49DEB5D8ECCB95D94283C50A363D
-68A49071445610F03CE3600945118A6BC0B3AA4593104E727261C68C4A47F809
-D77E4CF27B3681F6B6F3AC498E45361BF9E01FAF5527F5E3CC790D3084674B3E
-26296F3E03321B5C555D2458578A89E72D3166A3C5D740B3ABB127CF420C316D
-F957873DA04CF0DB25A73574A4DE2E4F2D5D4E8E0B430654CF7F341A1BDB3E26
-77C194764EAD58C585F49EF10843FE020F9FDFD9008D660DE50B9BD7A2A87299
-BC319E66D781101BB956E30643A19B93C8967E1AE4719F300BFE5866F0D6DA5E
-C55E171A24D3B707EFA325D47F473764E99BC8B1108D815CF2ACADFA6C4663E8
-30855D673CE98AB78F5F829F7FA226AB57F07B3E7D4E7CE30ED3B7EB0D3035C5
-148DA8D9FA34483414FDA8E3DC9E6C479E3EEE9A11A0547FC9085FA4631AD19C
-E936E0598E3197207FA7BB6E55CFD5EF72AEC12D9A9675241C7A71316B2E148D
-E2A1732B3627109EA446CB320EBBE2E78281CDF0890E2E72B6711335857F1E23
-337C75E729701E93D5BEC0630CDC7F4E957233EC09F917E5CA703C7E93841598
-0E73843FC6619DE017C8473A6D1B2BE5142DEBA285B98FA1CC5E64D2ADB981E6
-472971848451A245DDF6AA3B8225E9AC8E4630B0FF32D679EC27ACAD85C6394E
-A6F71023B660EE883D8B676837E9EBA4E42BA8F365433A900F1DC3A9F0E88A26
-3318B32500F76B1038FA6122C2AF6261B025BDD519D349966A067FB190E26763
-A5C6B1AEA2A47EAB8EB272BAE2EE33A622E85A7BDB149A6C7C3BDDFB840280EB
-3099FD3BC4081E2426D68C12D6D360F1EF8FEC18E227A4D43CC27E05ABCBA6DE
-A980A2228625FD33C772C6DB7F803DC69A967891E8D28BA667D8B04CA8A788D7
-C7C5D84B37DD98CCCD946655A12B8B5F9C3B590A001F1EFAE13F739F45C8C6B4
-257C6AA4D133412B2F9E25226E2E9CA4A3C4D31884E143A6207CCC7644C7C30E
-C870AE94C8DAA632A8B3FB90E4A67ABFDE4904E8417CD16EE5D8BDC5483E80AD
-4DE4AB6F0FE123427DB32A8BE5E0BDAFC6281D56CD83997354829EFA338991AB
-0F4ED89C6941BA491B68D608301AE9E608C34A9A035DC3E86CDB4A64EE6F4629
-315A91184FCBDFD727AF7F9A9EDB604A1A13DAFC7C46A730E8CFFFC3FFFB1E89
-9A06F637911BE1BA30E4FBF5A0C5F504004672E5609BBDA6D6308606EB8752FE
-AAD27C809B4F0DC9E5B834433115EACC92A17E214C5341A5C7D42375816F5083
-9E29261577500737B690F0D73EADFDCED50E6482414481F24216C2E7DB0677A3
-991EC0F265B919B8651C16CBB83B6016DCF8071C6E3A8D627BC4416109CCE5F8
-EA954C91C2918D804CA758C5F70551CDB5886FCC4785DEE80412A6CCDF7CE64A
-3328A3D3F38393DB98C4D02F36E0E162C161160BF721AB1947FA3B8C7AE170E9
-61AE9F8B46766E2FCE33DCE39622C4525B4F48B58C2BFEA8E96C5637785713E6
-5D550881BA5DDFDBBE0EA786C8DE9375B694ABCFDEEE060FD93620FA2FA7C80C
-CAAC497C0433736D80221CA7C96B72E2494F1B3CAEB1FD27F83682F04DAA0A3E
-DF102513E3303337E028040AB7B4117037B72AAD9A1E491B705F67361A557B57
-FE15839A3B1664CCFCC8589E2F144E7FE28E3DB055A7AF6B3C329010C2AE8FE5
-D6C32C3DB0A2FED004AF13C6C7884D921DEF0C55C5E8EFD765299C95F7869119
-DEBD617AC908DA15C2665B025BC4D5FE081B2F842C3965F2207A05E21BDAFBB2
-8B8B7018EA48AD4823695C944AA76189F8D3AF3459E1EEBFA9442AA9B845FA25
-3BDB2D6842EC70AE87EFF1A0A241D19BC3349A9F04C5A25C966D2350DDCF5C0C
-1F707723956D01B3EF7B09C7A37081AEDD0DF85D1E4392A73EEC493C85B8F1FC
-C59B1B2A1B91CB642D968B09D4178D36300E85B5E2CED0C18392DC2D498ACF2B
-45A1ADA07CFA3C0F3EDFA7B39B1F8442144C4EEA714A67CAC59A76B78C25F6BA
-49712594A8C82D3199083C9237A69B55678013A886FA4A6E5296071361E4B780
-467CA1EB1838818552E1E03256AD14E0AE84CF2034DC139ABB2D29BE20EFFB21
-4338D4CE010F1BB45767F72088554BD33BEE2AF94ACB6CE894AAAD575F2BD390
-9F6D3DDF9BA8A4EA17244774F2648C9F60464136B6382485626854EBAFC4A2F2
-996399BF2F97C7381BC50057040537F19967890E69691B6BAFC04608DF8DAE15
-EA853EC865E3A88E16276DBB11983BBFF5FBC013AAE53FDFFC0F884A82AE0701
-FBC6B117EF3A45B6959E93D0F811A85243DC3FB13219CD14106B12608CD7336B
-CD26EE6F3A13AD6EAFF464ABBFE54515FF2C44D27EEAD7FDAE9CC5BBBC71F7F2
-6B0F21E1D28B7562BE8A81E0B942467AB3AD918209A02C85048149633794F3EC
-9A4170F3994042671B63BBA3D7E1562EE494BCF10A46B5305D9AF0EDACDD6D9F
-B31FB080C264278AC82C9683EA626A191AACCEBB88E2CE31FBD5D0A7A32C90C9
-03C17D842450976AF1FD86B29CAE0ED6104E017723B18B849344A92E348C8AFB
-53DDBB08E31AB5F82283DD8EE248E691C1FE0CD9E2E57FC66D42856393B83207
-AF58C7265445940B8CF8C3A9F6356FA06255CFF230298068D0C0B51173C10B95
-90134D7CD4F54BBDB4F9FA66FE4855DAA0CB58962DC9EEF28931766F866A1F15
-0A80FE86DD8B38343A03BD67489B7A1D08A28B5E776405DC35A11D4EC08822F5
-DD00FA83DFC9EFC62217E5DCBB775AD0EDC26FFE1EE275E496B92A6E0FAEB92C
-6ECFE9E4F778ED08D0F2BE1571D988424DE1B50A8BB534748FF1ECB464C9A085
-206EEE7A0DE7CC4D5335A40AC51106CD3FC6D75A5E400CA9A0BB610F677D1816
-1BC717F63E3FB497800684E212F8DC5047B00E0F8EDAFBD5D3F1ECEB1F951B23
-C18E0CC93DE2B369B21950C4DF4981DC69725872081E9C1B4556779428603DFE
-1339BB8F5569E649CCAFD9F354344782498B8755D881B07E9C0FE50ACF956141
-6E4A36301DA057C7078D52FFB8D213D3E9086F91BE387CFB33C7744950F62C97
-1589728691863E297CF0894E6C69B3C2981664F69F095933762BFBAA6D5DDD1C
-DD1D090F0C4381B28F07E61403AB616858A86E9BB765D09B30B28277EFFF409C
-FC8009CB393B3AE2D2890A808CFEAA804FFE8C42C0E05C67959E5A23D4B2D3D6
-7CF35FA9650B37A25EC2853E9259AE291DFCFEE4822B9DC9F68EC86A1312283A
-9A789FD180C3ED673D706352785AAF7E8DF79EB323C769DD86E78FEF1D074FC7
-F501DC0D268040A74C54752A5FB0648BBD0A7D3A594C2DB890145C6B74ED5FC2
-D41466AF4F10D74E161BC5EA1C274D222AAD86F1C0EA9D51F6CB7D5FE1A6FCA1
-BA0DDEE4588814A09E5794E6BB1994F7E5CD35E3649601CE6466C8157C87377F
-3D096CCBAC9DB3B66BA616BCE5B8D44062AC65236F294C199017CBFB8BD6505B
-AA7A22D146DD002D36772C4F5162D109227CA4B92E9EE314E43B52174C593F79
-C532E1B4C5E72CD0872DC9891FDC532CD5774EFB23F82FA10B6449FC05EEE066
-2D083C30C5F288B452FBFD5BEA23B7A19EE07083CBCA87A2503B6AC0FFF65497
-6929F65E9E88B6388A84408CDCEB2874BDC72D06B033B886F448948AF3F9E581
-C4EDB3DBF7C4F22FCAA0C54B3C9CBFF77235D5E8F6CB55B48CCC5B7EE1F56358
-25B9E72DDEF7598FF08036634989CB8A416205A8A9532E2F3071A8921B2CCD4C
-370B29DB1D9406BEEE4C93C2022E3075D4D5A94292212EAA9E260ECED28A438D
-2CD8711837287D130D76A5132C8E6E09DC1AAFA65CE31C376A7DF9062AA3E3E5
-F7AC561729F9D3FC358DA3CE1D296662ACCCD3AB2779F13C8FEB5E2F0566C1DA
-9269FAF2CFF44AD65F18BD6ACE9608898139AD229F73B4C1A310890BE0775C52
-A51486A8D721E0BA5E6C2126EADFCDE9AC9CF25EC0CBAD7208C921933EF4765E
-EC4172C9E2DCD6711D770085A752283C785124317DBD66DCA7384FE9764A7CDC
-A4109FC5278C13E2646034478D6A1781FDAF21D9CD3104A2261C412E9072B617
-65294BF1E3E1994BE3670A0A51E4C8AB05B18E337808A386E1FA85C3FA4E9108
-3ADFFE6AE72E28CBC0A8DF3BFED6777390591D1261F774444885730A5B3E6C67
-5CCC8CF984129C4408BB0EB714EB4DFDCF5F8EEF9F4872518F54EB58987CEA33
-F4C2241CCAFDF2566DD874D6050C094A7969BD831EDE4E40B138824196B460AB
-15E6014BA2311D103ACF26DB9CB79CAB968943F4873D92370D367FFA082C93B4
-B4461D199ABA8129AFFFDCD69E98F5C27E1F849EF22FF0FF625D561EBC90F182
-8271DCC654627C1035B5DA0E0BD56830AC185520533EE701638D74FA392403D6
-24A9350C7A695186F896D514AA511063B2B668D8E7C1DAD8EFAD88B78B90986B
-93F59E3F3375CC2F5A84C17D43857455404193CFE58DCD7CB725C71B24844B46
-8C63970C22366756B6B0CF8AF0F5F78080CC6B1E96207E232918719B23329EC0
-0171C78C0E5DEAE224C9FCADFB6A5AAEF93DB384F44C35B5CAE6FB41736B0DD7
-77DCDB5C06CE91E862327056CA27BB2D512AC904295188EDF9DBFEBE4175F55B
-37A3CDFB2E84A9EBF74761A345363A7F10F3E99DE38D1F3B9BBE32B28588B40A
-9D8A5267B485E38C489ECC00B4C81B92DC72B5C7051448766FF9D1FAC49A7BBF
-28E672021BA5CAA75CFEDC9A2439D47D0936DD4E7D870ED4B4F4FB7A85EB21FA
-AE2A93065233AB5256BC1B97DCDADFEEE49B4317EDA13FA14F6F5B0516535981
-046AA626A560CE8ACBF67EF302115944EEA6C17E6FC19EAAF1E46231F9B8607F
-B6B1CFF13E0F2B8CB7258151CDEACB85FE82DE96F72347E6349AFA9F4DAEB0A4
-AF8D5D14E2F34C4A9C51AB1989DE4C4B164D356C30302C77053ADC1CDB5A55A2
-A20957CC440FDECF7D32C208E3F2840D37D65E817D1F677C812CD16B67933CC5
-F3DA679DC7B150CD17BF41F89687EC6B4FB201FFB8B819C5B990BD7CE655A4F8
-DF77295082E3087AA86DAC4C16B145E85ED81D45A504E39389DD1EF62E7C5432
-B66D9BA1F8E2FF7D85F83DDF43FD9AAE7E60AFF215A22F79BF128CA5019EF7AE
-7DA8501754C0D1FDF05FD87E32E4FC3F1A4A681A7CA04237B072BF59FBBB75C8
-69F6837210B528BDD8F9E9788946458347161F55D26B52AAD431606632884829
-B3B9B60191C15E89FA1F20E9CF10A1158EB130E937E79EEAF943B747AA3A3554
-01F3C8F2A7195C32A85BF892753C0AF336ABFDB001C178D00631084D35257355
-44413849A5D963EDD74F7BFE9A9EAE9B7BDE07F3CBAA5B9998F792C6F4BA0055
-3406E4839974EFF70C3774E63E317636594CCA6C14A3772CF8B4032281B76F77
-33E1034E27BF474F0968F299C17DD2C2B8A0EA3ACD5201598B41518B14CB7092
-D79F08BE6870DBF673F60F816C69F440F112035C6BD22126CB013AA67492D9F2
-126970A7A8A0F058BF7588AB4D8BD180B8CF063623AAFDD7879E98EABE7019F7
-FD0F80D4002C7258F53E3EA9B8887D9D5794A7B3423200143FCF2DB62DFFB0D4
-B58C2C91A112924AF820541F7C4D85857926245E47EE4D1A08F9CBEFA442A8B9
-46028B56C398406BFAA30BD67421C96E096E870416A6C2B7E0A2F4A61294CFB1
-568EF5C36C6F91EEFECD67671213BBC7878455DB996EA4177790E5CE860A6A1F
-38B82FE2BFA86436ED46E60BDD900B4674358CBAFF643901AEA043F330790F9D
-E5257D95ECD588145CA9CE752EECCBFAE874AEEFFD9EA12A334FB63D6DC6B0CD
-E0B86A4889736F24BBEEF7FD381AE7C4A3337BB08C650B2A8B7C89CF13D9B620
-C5149075325CEBEEF152A4409F53A3AA3EC9ADBFEF6A16C7CC4671CDEC51006F
-E5C543189EF555778D3581D735880162627CED42B13E4F2FEE33C419AA518884
-E2DFB6D6F1C9759B260E7346814DC0A7A001F33A6372F945D060222DA5D7A57B
-440CF0C215F125B9D327FBF3742C7F74A850FE6BAE73CA89B17A598CBB738AC4
-564AC942698A45A9F81008164DD56A6497751C55F1BF3D1F90851DD8E2F8C43B
-542EEF57CB577FC9733C254D44E9A1CAA3102503031F638E68A59BAE6AC1C7BC
-3A34C7D84AD76D55C7B096F6AD59E94BCC1674FA04CBC0E549C968A814632C46
-C632C393FAE776A024C3262DCF08347C4ED40D259ED7B0DA5E89B688B3F35E02
-6015A9303964EA2D5F4AA60ED1A39BABCBEA725E3504741B5E36D9E63E248F05
-A908DCA18AE5D6ADED8026CDC356D70EAD9BC7690B632752079C0C45098DF5DB
-0E3D771E61D21B20B0360530DE3A32279D16DDB6B16EA1631979CEC0065E1B28
-3C4D59FECD235B616737229EEF4F35814A51D66E2119F6EAAC11BC90A26FC3F2
-804357330EF1763CD4B456B179D133533DCB37AC701CF7E8E0BC088A154FF096
-CB67B3FAF7E2580BD4AA600CE885F7BBB02327093C1FC596AB60981141031792
-EBF76D709C573F7202BC8F8C5F19876671062C7A3F13FEB3E1BC9B4D20B0D1A2
-D1CCCD0D8AAC6490BB3D412F3DD0740BFEFE8C9EB8D8303957D68688DCA33166
-6CB2E1E15CF38094933FF947E357D9759F240006B6B64A8B8BA46A6E43D4D26E
-7A54531E3A3A900FC427887043367A14D88D5D85CC010193DAB07C2D4914DD8B
-8BC94F066A8680337453DCFC19207627515CD5B3FFD2A5C6EB109B503B353CD9
-03BE5110D30C2356D9F751A4D777425ABBBEE997A0C37809989410B5988AE768
-8F1F6E76709C1DAF36C91CB44D3DFC812D289D2F470DEE365D2F3D3A8375CD7B
-28DDF31CE000B7F885DB7286E06975EA1ECF72006765EABA9F75EE34D138E941
-80EC363FDE8B122621A1C18124202F274345C2D2DB2E7075541860DD2531A66F
-71386B3387C2788E5F0BC9CC472CAF6A8F7BBE0A0B004D85A7A5BFA067EBE167
-C5B672A4DE0DF0A39467094774E472854E19EFB3D743ECEB342180E5A97A9254
-44FA677D4440CDC88101A4113CBBE7931433D7FC85AC2FB59AEE3175F22D9270
-1813D82E1608629C5D62E5344D672B8604E7206ABFC39F00A66100E4D560D7D7
-ED8FCF0368E48F3F8551B8CF1D8011C079E20F93A37840D969583A12F4632E63
-8273C351C4803F0E1E99AEB36D69E7DB704365791F4208139FFF42CC0C355812
-9AED12F62F6F61087D7550CDF95A5DEBD271F415CB72A13010A792F81D0A78DB
-E7E03325A4832848112CF0F4DE539A06FBDDB6CA46B78E59DAA89D061F39463C
-44B80A9B8283CFEA9C258D2F2CADEB36BD58C5DA2EE26D4E08F39C48E0204E64
-536E8078BC73D3EF26D9D249F20628784E3C8CC40A54B2C25555473CF727D387
-9D3F2D4BD0CDB02F41F597DC51B74D078271F71806E48EBCDE350040F8B76174
-3D4E6C8202ADD34E5B7319733EF19BEBA4BD57011A60C954FA1ACA3B14CD28FE
-7BE9B4062277F681EA3F10AC9F9835B5FACBE7B918F2C93049B3F23CE9D99E51
-B1295363F246128C2923F8A7859FCCBB211B7426B3B19658FAD95E3467B89165
-630A85BD1542B5AEE76C7D6EF46FCC2C933407ED1FD864C9116F2F1F3CA39BC8
-32C0DB66A7E31B9C17BA34EAF0C64FE043D7FC8B512C8A79AA3374A78DC6D558
-602AC803FA2833118F5EF378A54F70A14B6DCC65CFC0760870E829176BFCC9D7
-F9F6B3219BF6835B42EFE93141C72CEBD230657B1CDF41F74DAB153694FA2FBC
-039FE701EE119540F6E7C7F7B5A303A6CF48696495B902A8EBAEDB378BF291DE
-1D9BBE8F9F82C20EFA58EB948CF5D8EDE0F1C18484534CCF51BCF65CFC833C27
-0DA24723ADA64769F7A9756B57409B3A8D0417CF7379AFC924D683B05BE96319
-4595214CC1203744C828F37B4A03F0345A3A28C87733D1A8D80F8E09C2E43A7E
-AEA179623A29B4DC070B700D3EAC2B00555DC2ED46C834D80690A64E14A8DEF9
-17F06944A47B8C800F25CBD3FC4AE700CFC30459755D57EDBEB3AB92A62F5744
-B5D19C2B6E5EA782440088C609979595F13299AD237A00CFCD8B05A1569395EC
-8D152AD848EAD77EBE4DD9F43E6A6320299823872D2095B90D65FCC36C3A28C6
-81C54FA91BDC185A6A4DDF63F76D68C79052D4B73A5DB18C5D867E69A446F4AF
-7768F227B3B85D336EA06C78535D44AC8C862BE38E135477FF0E13DFA18D957A
-5C576AE1D3290C6C79B7D95C201D1FDE254D9EB2494B3EAC175EAA43AFFFA682
-0C0A0FC25E362525154D9A0E869E2591C885E2FF480AF885B115956A5197DD9C
-D206EE00C4742D4AC78B80A6B7B3503050093C7E4E00685CBDD042E9DF3A416B
-250584D8849B7DE26A378BDD8199BA91295C7081F563D65D8A768A936F3FC310
-A98915827CD8F40AA0DEE30A63B2CB9FA1FDB58B1C7DA3F0F1AFFAA6226A13A4
-56A1FCC427844A3BA1EACCA1964E9293D3EC2AABD04E5963F5E3B1144B0796C1
-A12FB28FA42F6D68C4811582A79A341F84343DBE17B6299F538C89919C618260
-CF0D632AD2F14235BEE555BF5F70BDF168AFB7DE2433424C4124B9FC314B5F37
-8679077441C0FC4F8B2D8E4F13243AA1952E8B5A3A035328EE7C8C09800B531E
-0F70026C7E68189D7C94BE0BDAA917ECCA799E1405CF618FC6CB26053DACF36D
-DFC3ACA8EB6D20F2BC5E679D61505D23047A7C93EDB79034C2829ED267E82A82
-49BD89672F310A69B949AA35FD8CBF3CDB387C48646F81F51B909B3B86A8CF51
-1FA1637F574722576198D8AECD2CD9185481FFEFC722D929B573E1FD54B7B8E8
-CBC86FF89C45548CB06014E68CDECAADB8369B39A2ACEF79D964FAF4D821E4F6
-EF6810D72718708E1E64CE6936E58A4DC928D3E9E4AA5FCF04BB2E27353DA3C9
-7E84D43E59307E078013700155356B5F134F1D5FEB290C6EBF21DDB7E46CB54A
-5E6D4FB62C00950B02741D5344E0C265211BB6F6C55E83C27348F8D6D2761DC1
-2098A0B68DBC1C5CE163A21ED18BDFC84144E364FCEAE6A9243609DBD1B4363E
-877F2E26AF42F34E13B6C2E1E485C8BB9C7F1391122A682B9E9D5F00868EA0F2
-8080D7EEAF14E89DFCC25942E8BB917A5DEE2246DDE18F485667B2430056AF40
-524E708DCDB14DA6EA1269AF4BA225AB7BD49C86EE3B9AEBA2C8B1530A8D72FB
-7FF7602257F185DC18F8C41765CEA7BD9C054DD0CAE1C7E725D2D8D9F0195516
-555596010C69833A45506984745E6321F2C7218C07828F2D52D9A54D042B0673
-9EC77314B4877225EEF527056982395EBEB7BE86DB016ABF99C941914BB8F89E
-BAB0FBD6D390D2AACB75E4A1C0E81BF8918579E91BDCDF21DAEBA4A3B7F1A144
-C603DB6B498B5639BA86FDB53E381D3BD62BE5FA1127DAC61852A980D26A6794
-D1534DAA3240798581929CED645AC2D5B0B64850B1B4CCDEB7F8E5116990D862
-430A4C5A282AA682FA09EE612E6912405EE9B7A1AD2F329A0068CFD84E3114C0
-895DC2A112F482DE127F4825FD0C0B1A38A548596431E23099DD454A7BD9EEEF
-24DDF1E299A3C0AF869AD77DB0382A32AF58542903E9E773CB7A2847C0598855
-C372BCB4BAFB7AEC7276AEB101602415D50C021A3144CAC78EF339CAC4713A34
-20C435062AA9AD9088B3F72CF88D541B8A2914A2144D4E3BAAF8FBC29ED32C52
-EA0A4B8CE949610FE35D78D1A1195D64EE01AF77418C9D49FD7F3DC2D6B6AC03
-0712C54E2ECDF64319343C5A544AEA526EC66F956117FF7C7DB4B171F6ECCA9F
-02DC60EFEA273E3EA814B810BB44BE1A2A9FCC6126DD9312F55095D09891ACE0
-42839B6E743F729BFCF055EFEF6B49395B39A9D937AD3DD6DDC133AA88421EC1
-38118D5339EE09008149BE8D2CBD7D522595D53F0A7FCFFB00D61FFA185F653F
-0765F9C61C732E1B6EA5FD070DDC048C1F9864A31886C0E68BA6616A34D3FF27
-49922B75F719EDD3A2C083C973C5A5756016393AFB68D0E8759628170B0641E7
-7B851DCBA6090DEB21F6B805EB66234E6BA5A3D1FECE2721648747568E01D01F
-60F0147F20EE9EFAA3A5C6EFA8B72203836467EE18382EDD8723ADAC84C7AB5E
-ED8774E3A3A94CD5D6806A93CEF48CF1B50EC9B387B40C2A29F0543DC9F70425
-1C18913567DD72E7811B907FE0AB9149AE3540ED2C51B6EEC62A08BB66B29C90
-7D09797FD3EE73E9E6047DB4A02A70B974F0C1F65E94D6817F9963A8E669B036
-0ED7655B15DA44DC802AF0F667EEE2C9A0BCBD3353F6BB5DBFB3B6EEDD712274
-2DFCE6BD0253A9F42CCA1A3DE7C49D39F1FB313FBC823D21CC2B598BF4D5FA4E
-9BFA1E4DE80D12182C38F424C271F8BBCDF82253E448A59719A13E80E3DFB1DC
-B0A3E4540043FDED9EC93A66287149B751883044F673492E625F4B09F79236E9
-CD69ABE887FFE13FC076DE57C84023C77673D69E2016A8343DCB2C60CF457A85
-086C8B6602F7F1885E1C21891BA9046E0396707B7E6C28CD4383ACE90D189077
-312C10E3E5E72BD1971148429565D3E87FA4CE5D3ACAF4F8D942CF7D6265E11E
-0AE49A2DCC9A25536F272EE9E49779B158A4212F060395EBB011FF00A86070D6
-5B25B9A7028C12B7423F50F7C6B42316DA90A769B9AF0A954AB962CD8889CC11
-41CA39142313F4B953B79261D7F0BFDAD9F07C17E8B82A5E0CEE6CBC357D6E28
-6CDE8C65EF662E95B9E3B86B97DA7FBFEC49766808FBB0A8DC78B81DCB8332D0
-E47303767CC0122F4C7FB3C8749A995E72AB1D31572D4D3F688F685C32171295
-A71B398B524E50C59C64F3E8AC9EE15D7122A3689DCD293D7BE7E7D42E508150
-31A359793D72EC27ED3F367F9777587CAB3BEFE14DC2888E1F43B828618DBD02
-88B10C7EB71DA8818CE5407101D00C4E457E53A2FEC98707F407EA519BF1D45D
-9C4184939FDA36445FA204D572FA795D9FF4FB7797D50FD67931007A73FAE4C7
-234A28CAE7EBEA14B545EF35C08FE94D5D75463B8FC02ECEEECB9D65B418F2BE
-B7C6AE5C12943265ED0258F9B06E7120A59575F0DFCAA167AC38A306F7C67875
-5A8AC63E125DD07BB43909A3C6DB9D28DB0B89B2C76A007670A22403FD8D47B5
-AF8FFBF331374F803A164A0A52EF5F4380F30BB4D81C892C46A5E75F6B10DC44
-FFD825A545C957EB39F4662A5C313D2A4609E680B46BE4C1F6EE4C0DD44C9DE5
-9B03436297794A81473D9A5E4665420C6A392E98E62258155F63F5F4C43638E5
-60FFA20829DF6056B10D647F1EB2CB956A3208D6BF939A646700958F2E2DEDEE
-DA5259D90360BD586FA73F0DC23DDF7640578BBB4F8ED37D19C5AD282DF493E7
-5E1CEE7F172221CB588EB3EFB4C2F1F6889C65EA47242250B28E67C86FD054AA
-946335046D1D686849FCC3A6E1E3142BA920303B1B0884648CCC03BA7C288F3F
-000304F1BD486DDDA1D6B03E6FC5F8D98A0702ED31E043C40CB6F8FAD751CA59
-EE49D32A26A70D96AC1D18F1FF57F22F0DF11C7A7596AC01814BE9F8569BBEC4
-80072664548BBB66EB0AECD471408284E98A297D15505E8A09A4A18687B0292E
-683095D5868329B4D1BC6D44D8ECCE3E0CBE1BE8EEB80BC8CC72DE4B8AE3F4E9
-C946BD645857CFA918545309318A9064DBF3E706909E1BA3B05082CA9BE71186
-99F9E5723FA347879A8DF1B90AA81920F4784CB2B812B0666C5143FA24DB3128
-B6DC3ABA582941AD2D087063F470E120DA9410F8C219CF0FCE60996175F85FE1
-B89BD179F58D75440D7354410B03BD566AE2E5EC520B9E3452A6A71FAFFA5C28
-8AADDB077561CA7429AEB1F6864C06E5707962D4A1993D445A587FC5BC497739
-237635C313B9A65D1A6B53B129439D42C31373AAA8F7D687A4F988D7C82D4C81
-932A09B76C29A27716BCD438D4D08BA2B467FE0E2C3B50E82DC04A4B0E351B26
-2C3D421BA2C7403A5D587C62DAA65899DCDA98BDF2BE0554AEA617CFAA1298BC
-1420CDE9EA38C1EA87DCA25E25F6BB1E6279258A96BCFDED6BB2F98BE47354CB
-FAA54B69E2E74E8B7D09F7E43E3101CC7133B51159B971D566FF27B6F4EFDB38
-86C3CA1D5F2CD03D0DD7024F6CE4FA5C8F3298F4C3E58F086DD2F7B0DA9CE34C
-B0477FC7AD5C1A4ED5B94EA6E145C0FD195736527C9A2727655E134CF5EC08E5
-C0ACC6BBE2D09FD95EFC123A77D1428765CCB7F8A8529205CC4E1EE8AB4BF3BD
-66448CAF34110D7A84EAD50BC8D60CB3C37A86DC0045F5F3B87F08ED2D4AE659
-94A75FA7F021997AD683FFF284CDC8A5D2F0AFE9827F6E28BE008EB1F773B7C0
-B161996761142A37673674F1A6B0AF2C5AE6B981FFA447F1C4016CDCFEEE533F
-A95296CB5B6D53F76F3F39F01ED4552FB98B24177E385B26B180E6586A63E815
-E45E2FD4C49E9F8E0238CA0701071C2B65580E0477683257F5167F5AA91051D5
-90D70DD37239
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-cleartomark
-%%EndFont 
-%%BeginFont: CMSL10
-%!PS-AdobeFont-1.1: CMSL10 1.0
-%%CreationDate: 1991 Aug 20 16:40:20
-% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
-11 dict begin
-/FontInfo 7 dict dup begin
-/version (1.0) readonly def
-/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def
-/FullName (CMSL10) readonly def
-/FamilyName (Computer Modern) readonly def
-/Weight (Medium) readonly def
-/ItalicAngle -9.46 def
-/isFixedPitch false def
-end readonly def
-/FontName /CMSL10 def
-/PaintType 0 def
-/FontType 1 def
-/FontMatrix [0.001 0 0 0.001 0 0] readonly def
-/Encoding 256 array
-0 1 255 {1 index exch /.notdef put} for
-dup 45 /hyphen put
-dup 65 /A put
-dup 66 /B put
-dup 67 /C put
-dup 68 /D put
-dup 69 /E put
-dup 70 /F put
-dup 72 /H put
-dup 73 /I put
-dup 75 /K put
-dup 76 /L put
-dup 78 /N put
-dup 79 /O put
-dup 80 /P put
-dup 82 /R put
-dup 83 /S put
-dup 84 /T put
-dup 85 /U put
-dup 87 /W put
-dup 97 /a put
-dup 98 /b put
-dup 99 /c put
-dup 101 /e put
-dup 102 /f put
-dup 103 /g put
-dup 104 /h put
-dup 105 /i put
-dup 107 /k put
-dup 108 /l put
-dup 109 /m put
-dup 110 /n put
-dup 111 /o put
-dup 112 /p put
-dup 113 /q put
-dup 114 /r put
-dup 115 /s put
-dup 116 /t put
-dup 117 /u put
-dup 119 /w put
-dup 120 /x put
-dup 121 /y put
-readonly def
-/FontBBox{-62 -250 1123 750}readonly def
-currentdict end
-currentfile eexec
-D9D66F633B846A97B686A97E45A3D0AA0529731C99A784CCBE85B4993B2EEBDE
-3B12D472B7CF54651EF21185116A69AB1096ED4BAD2F646635E019B6417CC77B
-532F85D811C70D1429A19A5307EF63EB5C5E02C89FC6C20F6D9D89E7D91FE470
-B72BEFDA23F5DF76BE05AF4CE93137A219ED8A04A9D7D6FDF37E6B7FCDE0D90B
-986423E5960A5D9FBB4C956556E8DF90CBFAEC476FA36FD9A5C8175C9AF513FE
-D919C2DDD26BDC0D99398B9F4D03D5993DFC0930297866E1CD0A319B6B1FD958
-9429B9D40924DC059325D9D4CC0344F3F997A99E6CC0676735EBCD685AAC9142
-08DAFEC78BB41AFC2F1C219910BDF41D6279284EF600B69776CA15BC8A34347C
-30783C52AFA60FBE3E353E2AE354CF87B558776A22C776C7A0B5AB5CE1F941EF
-C2D9CAC37294BF407A671F10E4743BF842143F4F7DFEE643BA3BBD8BB9E3F24A
-BCCF7F0ADF8BA500620C81033EAE8C4EF2C1DEF13AC575F1B3BBB66F093D3B78
-5412B82B67FFA087AF57182B2230F9F2137180CA58A7D9B2C822FF04BE6CD01D
-43B2CA7058C7B953F6D9B5D6E91ECBAA5CDE1159B0E59C83DBAD96D6C8C8BAB1
-374EF652D10C0F3EE7104472C98DD3572AAF2D45A70BF7061447E21EE3C3BF23
-DF39C2D1B35B42CD5297BEBE6BC94F7C9DC6E61EC67E4F677256FED9064BD3E4
-B51A71B1D27CA4E5AA9E1D8080E6DAB5310711EEF87C40859FA935B19524AE83
-63B163FA8397BDFF443227FEDF7DB27DC35D89FB1C5E435DA0619A5C88AFC73B
-89A2DF5E767C5B536BC7167A840A0C32BD57A14DE69A7D0D819AC36FF32F908A
-5070F32983BB007437E3500799DF5E0AD3710A4C0000F0098D5BE99F2EB9C1C2
-C444FD9552D0DCA098A94B3BF176F511CEE13DB7EFFAED7C47B5ADCF8D4700F5
-7A5FD1B49560969BF5C44F3749370663A04776F749DDD7B50674D93254426C4B
-EFE264BEE7810EC93784B7C01A7F29EFD92547E13A2C7851A2E709FBD5B87850
-4A44F08F56A542DBE072D2FBC58D9E6468E1AB858DC35240E30D31C7AC13D6C5
-7D2BB634BEE96FA0E10F842B11A789F72A333DD6DDCB1BC23227EBC406E50B40
-30AF0C48E6359AB0C46898CDAF1118E46BFF8B00F54EACBC2AC262AB898C42B9
-2E080C10DE923C18AF86D75FCFFAAC63768D4F985185710865FA3225EF531068
-487FB30531B1C2A4B4AB83F8C1494E6D72B1F6A012E10A2A4ED6658E5B081DCA
-1A3FA683903F4354E3F6808212A7B2765AE1F7BFBA912B153A0C7051A50BC080
-C9DFC891A623F1F8EC6223CB3B1F2F7CA0C0E1922A3BD031801B31F970493F3A
-9954C467A04D1D826C9C17155D6D441F123FA232B0908F15EFD9BDB4B8D53E0D
-0ABD89C56213BB393753AA61EA26272566D164A8BCCD6331AA9F20393FEBF998
-E8EE3A54FB522C5ED971A45428116679B75E438CD522CE02F372141B456394F1
-D3D9B8B226AD7911D9B71F419E6B4EA2680F41EF3835715528C2338652222CF5
-07EB1831C27272592E0D7FE16F87710F2C50AB7C4F10626F7203D68FF23CC4D7
-B81B3922914942AC520B3183603EF0198C0A10957302E97A907F8CA7D499B85D
-1F849566DA34D8690ADE3A4DAF7A97E1BF2C2CC784F97F4313DD69F9F06255E4
-B15E5FF86E48FC4644A59BD7D396B64EC5DB796D909A75711742C6706229DD25
-D775B208B14D7E2C129AB980CF9359AE105504F77BFB4ACE3649995C8C5234F9
-0D312AD195458F9F751C62901AB81EADB1762D31C769D55E9FCDC64A7EE3C59A
-A13401859F5EF336EDF438E85B8E7E0EE5127B59ADED11E4075657A5E7111067
-50243C97F57BB93CE988C547F4370BFCB852D4571A3F24D0DDD387F8C366F031
-1C8188B7502BBF0DE92C5E1A2425ECF70E4F8CFF80E60680903871D565CB9B73
-12AAF237EECF3F6A4DB19FAE884D02436B2A4CFAA75B7C0787AC2C4FFE2A0CEA
-522EA455BB048CAD8C89A42361C81475EEB3C2AD1C4104C3CAB9E94C1C932A40
-6B6A582FB7CB0C7776630D3266665A275A9AA25939B6ECD5EDB28A301EA5C475
-C9BF1E6A1841D887358166BD353C506BC26D813DDF90271698E84BFFD2D71FE6
-39F6BCDFD90D5127F385BFD9C0588CB64A2D6EC213FC46DD481B990F022F42DB
-7CCBA22C48489FAF12E89524E9990C5BB71D6A8DBECDB453D4D85D3BD7BBF72F
-33D40A451DED6AA8AC14A6AEA2E0C2B300F96DF9E94ED2CE865224C5E8DFDE38
-BCF426323F00E47B62726021CE7991089BA2327C8356C32267EBA52AD586CF82
-E9A7B46857CCF56CA461B902183012FDF684C649F656CFC2284B5B7C315FAECC
-AB4E9F43EBBB945DB6E0EFD7ED536D672830F7B588592504BA5D9AC1DCFAA3E6
-94DDB28C5BDDCF3B88C6AF36DA732C2F8128AC6C6363D2AC2D62912F5736DF85
-20F2F403D712BD25932EFDD1158AD393676F41CA17F624619FC8D45F6A3A7754
-5ED156AD3BB137B036E5ABC5638260E6EEA46372771AFE123F331B4C9B2CEDB2
-C3F2196245EA2C5CC76800F336259FC8BEF686AEB4F3B1EC48BD2BF903985988
-5554AE3D7D810E2C12A6667BBB93F5CFDB223D1594E37D680CF0EC6A49F2F13B
-590B9376A0597EAE084EC0742B17C52D0214E634764CBC2289B072A7D7BF7E42
-E21F3F33DBB9B3F0DBEE1D9B4830F3893A80A6374ECD4A265D13C2950BFD73F9
-ED3867FD35A5156DA284BDD6D0540FE242E72EB708480240F876C66739EB8500
-1285AC4CCB214850B45FBE616160EF568F3F7E2A905D3D7B97B04429DC4E6E3A
-0CDB03A0238DA527F0E53F72ACA15149AA4BC4245B13BD2458B46C286C8FB1AF
-F2B8536B90A608E857B522230D32CFBD0677650DF1F48E419634A288D5120D87
-AF8648593973A460DF22B9DAB20966754EBA97A8ACA98C1F95C6C2B74E390536
-3FD20B0AADE98306888F17B41822B5FB6C7C0A9E6D7B2F6B4AC4387A645F6620
-0A24144292CF6DC22C80CC7CB653D804A33025DCD98D2856ACFBF6B5004205D6
-1AB0AA4C3AA1701897501C53291787DF77700F153E3F3FE9AF8CF7C27D371B74
-DCE77974D266CD81CCAEFF573083BCD7FBDCF9030D08D9A903D4F302471D08EB
-7A4C9A356821D436F9D612FD574ECD6FE5CAB70A1E732538BE79F53AA7FBD568
-F6CC89149DB8BB9B7427E8894DA272513251336D74D7FCB5D8B7F895667DE628
-7888E5E1EE45019B86966913C5C81ED6531649E4AC3277AF8732D51B1A0F26D3
-30DE8E8F8575F1D13348F08D76EB61275C5BC636A81A462A65E23D56C5487157
-68693587B3505F4FCE2AFEDA2E10BD7461C276BBA43DEC9271AB4F814915414F
-F7537E32A5A53B636754F1DA3F3E14DE5D18D7D57332C2F83E70D9D39450FADF
-A6D705C4A394E0DF31BD26C1130700579B61E2FC30A10ABB11098EE70506C68A
-1A1B03AEE61C841063A9ACF4A64B44B1168527B7DA12A00DECC26E9122384782
-6A8D34002A244F5BFE9D26A9ECECFDB475FFF537351BB0CF5400814B3B0083E4
-6C83B60EBE0C106125A5D95CA52857847E7E3EBF983FC00F2026E51BDD81D015
-09DF78C69D2D842009E05CBD4CBC40E1B52929E73F01922E8416C3A8DCE65673
-06D8BC8A6F08C4AF791D0154666D7945CC0904247399C216752EF57113DA6AFB
-86463D3E5820EF7F73B6459E160BD79B509BCFD02E6346F42A69B43ACCF56334
-71B053140539FDC4F1DA19CAF0691D6F81C21BAFC0B173FE185FA352E7DB9008
-AAB5F0E00BF6DB69CFAF548F51DCED2B737949C20CEDCB5A2DEB72A9BCE98B24
-3610D1CB43A1368044F7DB21215BB899AB3BD138D0DEA278F27FF808F37CE15B
-E3976C5A54C69D54EA7D5BB5E9785D8064C44DC4BDDA4F4B8B1AB4450C6468B1
-B2BEF80BE3329BDC0AD7D12F53C4AF12E248CAD37C709982DD1C256AC8B548EF
-9B2CECA35089376E92731458C5BC0DE099F17950D6F04522093D2B7BB5ACFBD3
-993A0D4254A9C70820A5D894035A8850E449DE7ED7912273F19BAE6244EC1EF4
-AC66BAF2950ACD6714252DB1A0DBB64FEB0E65F32DC52F541219D73EBB3B66B8
-A2CFCC124B4710CA9F0D734057E658040A42D1724E5F6E3DFCD83DE7BAD51FCC
-B70D8025C343242D7176F5D733DF6D439A33DA3834CAD95DC7C992FA6797F572
-FEE1DA81A9DB18F47C780F06AD6CEC736305AA41F8BA41A0F1153E8283BD1E17
-FCD9C2AA203F3835C9328FEF20459E58C595745F872DE784E8547AC485531D81
-EB2636D7D630F28D83B9F0A77CC9CA5DD2FFDACA4B178D961D08D2A18FF05D0C
-0F7CEAE2CA6DB6E11D0CD966E496B2D234F253AE97DABD9F55220EBF886B6DA0
-D60108BCC2AFE066BCBF51E69514EDF5528ADF86CC9534A6BDE291D6BEFA20A7
-F293FBFFA1C0F4A37F92C064D5F3B0623575D1002C6F70CAD0608A67E2840827
-4E9E45AE544ECD99B9DC909BEC3A45C8279A3A971BB17870FF93BD3C1ED35D3D
-E11F99DCEDB6FFF77FEC6DE3734B3607D4D49DB7DBFEA7E3BD4E9906B7F99FBC
-55309B394046AD63F2E59D568113C109D9CF04DCD2B1B0C15F71763F6C531B2C
-83B7E96E0DB04952A9241E71B75DBA88C19109C4ABD60FF7DE9B23E991F14A63
-8827593DBB7E248992E302D6C4AB51B665FA7F66520D67F15E9A221324AF89AE
-8C67B418D06A6B4B6128B149F8069DF7CBE3DA963B110442724A9E16BA691D72
-F3613865CB566D7B3B22F19292C7F39F70BA29D9EBA147B0A72D4F7FB6D07944
-33721F94B04FF9507E82DB7C2E5682A2441610C70D9D8672F3F31ACD9BB583A9
-D1585B5D2D5229A1C99F8CCD16B6CA6C1AD5FCB0254D64EBCC72867CE6C9EEDF
-BDC5538AB3E02C835C2A135D8712307A338880EA270661CFB8E03EC3944D8247
-2CF9CD961C3C0B6CF8FDD8C3AADF769FD19E357142C793D0FBC6D5CBD69D9ECA
-AE8A3F266932466EEE0DD3D32E9913BF8699F2014D1442DC5BF61A3449A6D366
-1B7F4AF08B5DF7072048C4A2DB7E527259AD046C2AC08A202D3741801C6768E9
-3465CAF7CFD73C50C019C7E60C14510FDC51832DDA6FFE385A596F69CCD153D5
-3AB08D09BD5C3AB6BB5908E460921921281F8CF6700E66BFAE45F547DA7E109A
-2526164AD366CCE796A18E73DDC09F0E0E3B480D27E2049661E435564020935C
-EBDF2079886FEEA8B84226936A59F4419F4D10045509C17A8602AFD588080586
-ADDCC0B401D1600247CC2C9A482482883192A4EACD89D3E37D475B7067275175
-399CB330DA1B148686CBF57D8A8EB10AE7DEBBF437EDF24E2ED1968F0C03B91E
-45EA897ACD82550C2316D49017655061D0D92A21FE8B23B23A895CE16DC9528C
-7624F3D349982CCE20ED8DF66446742B1DA0945D87BDE9905865BE3CE8A7B41F
-03066CFE9FE10C2A84751CBADBED2BD074450E130548D58A07FD4119160A081E
-987F4CF71B68DFE39A6DB5562E6368ED7D2A67165EB605E4F7B50073B822C7BB
-5568F8434880D1835090D0F0737B0726E661623A2971F6AFB2BA86C82051F794
-1035D35D34FE0071AA2BFC13ADEF981B63BF6F647422A2DDDFEB9900FFA8DB91
-06A08010A9428D1C52CB2636BEF03605BA3F148851CA6262B4963BABBD015FEE
-2A6F888BC9D19917C5DE5F730725D03E95B951B2DB240A74883123D40CD2788E
-3F22D9F517664D4E20AECA03AD05F6481176E37B5E68383D070A9EE5CD5578F6
-713F5720EE1BDBC20242BAE097C55605A9BE333FC2A67DEF096A6EF03723D702
-562A8031828B4A22B06C4B31626BAA2E90DB509E1FEBD522F2F288FA4075873E
-2C2769DF4942DF150032010767DA0984A2EA10FFC05D5AFFC654C16B4EDC812D
-EB8DA97B59B28583D7C7C5981A704B25886EA32D2094006AD52CE372D211A51D
-D34E86C0ACCB53966B3E4BA9793DABF6E0AEF06757BB30C141982E55017DB1F2
-A9A0BF2751B1C03E276690146B5A6D5A664D74D597EE88545DC5132C61ED4EDB
-51B4743C6C9777CBF428C4FEEBDA8D860D33121DECA25792BA03125B3A8BCB82
-8D33D87B5F0AF0DDB979A79240BE8B99285E8CA00D80570457BA6154B711D5F4
-613F0F48C6778264C938B08BDC0416510D0A17684593996690B86A4F5FF2438A
-1377231FF3B1E27E279BF7CEE12DA82B6E7C45B86CC5EB311211BF7AE6B51A51
-F84E990B2405C9EE8F9F3490008B9E6977B1820A13FA829507D9C6B9B1CB5EF7
-BDC181FDEE7C1A8E48B48BE985A036B153A6A486084B82AD3E72F919BBC149AB
-FD4346DDE9C577315A7A8C498BEA3C5C4744B9E35BCC7449F98568794D9E4F8C
-F1A6FC967F6EFDBDE2D3BA012F12771843637DBC36CD96DCFD211A702E316152
-E9B7A792F94C50DB2CEF650588CF1BD3A612227B09BE1FCC99EEA4DB9266001D
-DE800C3DFCF92F1BC2CECAFEBD6E0FFF8CFB71D644CBD75EDE2470B25DBF4382
-183DFCF9AE2B6E9DE049E17FD7CB5D5E75F69D2A5E1B456AED863F862AEFACF0
-B9A18BA25125934D99E1D68832376640271D9BF3BDE78191C286A1EA5EB52684
-3EB6EC3D1DCF031584113B0EC8BFD77A85969C11032745A8138F0C0E46ECE1B8
-A14D8FAAA919955A7D476E956DD11556EBBF0A093B5493E631BFB38DAC211615
-EDE56ADEBD3EDF75BD1BD87A90F273D4D0E221A1458552A0414A82FA53239798
-85BAE93A73DFA0C78B10F726E3D8DF94BBFA3FBC98817851DD701C778EEE1557
-26499A30C842BC1A194A764F995AA7043F7F91065A2380C846393C7CA6B9274B
-B15C45F7FC74D449769F20A7C57049AA4925158DFDB916872120333C998C496F
-73731B7B055F642EFE27DABE4C3A9411929F78C4AD869FA00E6CB649AD915206
-138C6EDD92F116E34EEC551E7ED1279C454F41E815484AEA44E5CCE017269AB2
-6430C6C3EB0589A247C163315DEE3BD11525FBE7F17490306CD1D9E68F574AA6
-37A1459E4C44F1B7963A7726357F42CBB30E5C2C4558EDB9A5BC066CEE26F18C
-63C0B37113A4481EF346C46EB5160CDFA6F8CABA14422FDBAD2C21E91F697CBD
-A2E38CC8E4B64A00E4A4A046EB1C10310EFC9249DB8303FF599CBA910DE000C7
-5BF7229CF4F475198971421DF4C7D0BF565537497E3E701E7DAFB766E722FEDE
-3EFBCA1D24776F14E988CF494CBF99B58CAE07BE36D678305AA742A4622EF268
-5F44347F7312730FFE21993C15E15188DBA3B137B997B7F0DBB323CE9B244ED5
-3409C50DE3F798AE64B703C8160BB009B40A05A6173240FDE6C9B01476D20E83
-3F9108DAA1AB3BAC0EAE04549DB2F8A7AC7FA78FA81A448F6549596BF6667947
-48326A07281D2EE40BAA1252C79FEABD510D72D53F45CF25BF7BE5858926A465
-C71CCA6927EFB422B8C23C0BD6FEFEB66FA1375B0B8C772CEE1C7C72D6DDD5F5
-7702E88ED8BA354A889A171C1304106BB08012428B5A792F9C94B8C43B6F2090
-37CDB8793C95F2310222BFCC7E1A66AF164D524F49D54A206A2E31AFD481F751
-CB4981B6916D0C624657909761348FA49DFECB3E40C22B3768D1949126EED61F
-6336803CE8329861202E2E44BDA2000286C2BD8E915CF155E27D22C53453FFF8
-46B15E1A6FB0B360BF3CEF320293A0CAE1F37A9C1123EC78B94999D8DAF0CC4C
-A69F129B1206A0CD5CE5C4C3F701B335C2CE6372A8A2E6E07A5D95C10E8D1E1A
-FFC85AB9D4D3E5A956E8116D3732001F444BBF29C59AD4BACA82D0BF6C143FCB
-E9898A6596FB71747723DA5E1F3BDD041238FBF91DDABC81CA4FC9CBFF5DE5F4
-058710E5246B8469EC1B97965D2E809DAAEEEA9DA2DAFC83672989E2A798FDC3
-A731DC25D33BA638C90CFC36250AB855E25F873981C1C134DE9E40F45CFBE0AE
-1656638D45537D94ABA65A99A66AECEC7854514DB7D2EF752B0265A0EA1E503F
-125B18BE0E1F2537F4B98DCBAA19F820088AA18752C806B74FF9E65E3F2F66C6
-ABA7B44EC7729000A951C5D470B0FDDE2D774F82D34E766069C3D242AAFCE6ED
-1E68D95FA3E18770A99040289DF75F4604CB036A67AE7D158D0A07FBBA7B64F6
-6B1F750191AC9F2291A2439DD398434D84F91C4D0ED3B457E53C7B5D8E730716
-6DB507367FC947C7DFF700504E7B5001FB683ED86B75D7326E16F40ECF8ED7E0
-76ED443BEC5337DC2A776776A0C266670378E9134EB595AE449D0D48F9BCAD81
-7147F6B3203DFD0A38227376F0696D0ADEC9BC7F06B66DFD8116FD51982019BB
-F463F6BE6563D173085A1C2A777621801FFC3220F459C77BD1302C1F6BD834B3
-742FDB9BCFB1342931DDE4CF94CD2E9F7A443A67268232853803BF62913B5BD0
-0AD7F4AEF1BBBF89961BA4282D227B1969050802DBC9A788C00E1580C4FA9A71
-ACEA2700E5A71D327345FD65F329177BF2BC1CB7111C6B46ACC4F5795B0C9AA1
-34B39915FB16EF49BCC0F3D2DA4D33F7EDD1E5707B0FF5DAAC677D2DE279A7BF
-D034EF78D146789A2D4BD929F59CD9F208236D6FD4895BCEB920A2316B520B28
-87EAC2F6889F9B53103BC5B959444884CA28D37738298600CACB58C5ABE97F0D
-D49C2C684A46B04D628A28D519BF0917E1A691921A227403D4D0C219F33CD495
-E15C5720BB584D770343520D00C15BE696642AE43B035737E29C4356BEC12269
-5B3E6D14F37011DA04B724299159BB62AE708644099CD6EB298CA66D1C0DE25E
-BB2D83615F3EE99542F0C6C82C9106F9E8284828353D5DBB4B525781F288E9EE
-C208F9355958794D41EB1350FFB308094A68C09F2E2F8CBC77385B7337A4DB71
-A37149024FCDFD6DA887243F71F48101B70665F850BA7F733EF90407BBA8CF8C
-52ECA8D93406BC12800CF57F1DC12B355A10483AE4ECE41F9EEA5840672423E2
-1D75F2306012063AF3CE75677BCAF8F048756C3D3170E256C2F863BD1E0B78E8
-6ABB9F135BD4F0EA2216B631A392B2A0064CF9166FC9A73EB7142440821029EC
-A31BD024C4262BA37BFA3FC5527772604547E09EAD0B23B7CA97FF613B340347
-D7233CEE647221C363F0F534D934CD179DE2BEA2A508DFD1313BA51136C7944B
-7253C1AFF379611C58D41EF51EF55297129294D9FC25F593E2092E83F4346A2C
-2A5E7FD1AC5823E2FDA0222D4FB31B16CA235005530012EF7DF63A7E1AC6AD24
-0629EBA16DB9943399C88201C10DA43C158D5CEF40821F3C7474846DC44A2803
-321F258F5D553D03F5B171A722CBCE7AFD8FE2F4E29B0FCF35EBF0D5ACC1A7C1
-E25934498D044430F545111A7E371F7E3A521661A47B9D525D81350305653D33
-C35E4231BC182DB7C5E9E3FBFA93D6F29C6A714F2E8D7FF27518245F05B13FE7
-12D77D9677E551F80A65F0D058BAC7E0036BEB3DCB6425D19D9AE6347C0F008D
-177F55FE1D89D4FE6ADD4CE00084B944E8F249B421D3D2778198A5AE996DCFE4
-F6BDAD4D1581BC25BCC621C07DA2C8027DBD0211E975F80A0FC73D42C1FA335F
-96573E9C69F023200B0FD6CE61797A88DCAE042B4C82CB3CF74309A392DEB8CF
-0054009E777DF45B649ABD9E549E61D66439A66FDE06CAA712EAE20EA2233E05
-D4BFC80600F8E1C4EA899874CD019D4E514CF8945E022B3F0288F7C89BD9B32B
-F683AA7BE2EDFF16C851A82CA15DC2E9A9FCC3297FFF9117522BD9741201BA93
-F471535EED70599310B05569A4241755A25D080F99F1704321708C6A4AEB60D0
-70AACAEF1675C67086021CCC3AD12979280F8999CCA21DD006462C83B88E98C9
-C785171F08636A58004A2609F4B6E58719215DF7EEABE2E9E2A33D7E38E4036A
-A48FB0EE221C10668B482E9422BF3753ADB09FEAE829E35FC8004958C576AE86
-FAF18B1BC2B15E15955661E262D6D7190744DB9105151F2DF569DF2FA2153377
-0D5B1DC947C08EB11951D5CBFB941F1892F2AD72AB54333468C0B5967A1BE22D
-2CF668465ED282FD7B3826D0BFCBE569D543EA0BC146865AB50FBE4A4800E8E3
-3E86A443F3D786BDE8FB2FB0313D8623E7895E1FE1EF78835444269AC3B55AC3
-352D7946E6032A32A86DE3F7E315AA09DB7D677EAB2B327C9A63F8FE89603707
-EFE8704ADB66CA6FAF412EB99AFE47C73CCFE17A6C6CD994E542EA044FD48A8C
-84D4EA0BC1CE5C2F997232869F0F2A3D206DCB6DAFA49ACCEDDECBC380C73592
-FD44AFBEE9392DC921CC31E8F9181AE15DCFDAD134346E25492BAB25AD450EF4
-BA0FC540E9A26744147BDD9D187B6C1CE6768086894C05017B5A70629C3F24E4
-CADB7D762E9B4168F5340D10DA9EA293889BE0590FB91EFBFE73D51348E505B9
-37A517756A19D1C720566407306BD1A97144C6FB8A9F50386D09321399C0A8B7
-BA893A54C2F514984ED7D95F3F555862A60A6A02881EECF007A59FD8BC7A05F6
-55064C5FE3EF5BA371413125EB92025F144AF939965FF75A59D9D2E154261A5A
-2FA9BA49716889B4202149988B1BF84F64AFE278E079C06F6E177AD07011A258
-FEF05A860299FDCA8AF7D6264C4881601C1E30B29A82CFC7C6D4AAB7883210EC
-2E9C5E1A1F4340CF1419E015B09B5F7E26024B40383F710C534D721C74C2D5F2
-FCBE7B48928C31D2086D769646222FC2C382C72404BB3C5461D55004B27180E8
-E82BD7C3CC78C6F220798058F15776288493570D177E250005449A6E0310957E
-F45B7D859026A071FFFFEA238915639A98B5C79FB693C37F43E4838FA8E4A8C9
-7F5EDE1DC63014DC81F7620C8A2119E8E5828B8D175FF91B87FE1F68DC817E91
-FF01989160665315034669B45A59BFC2F6E17D151476058FC8B4F0E2E2018ABA
-053085E4B95E8674E9738AE36295FC923D8F058ECA7467736609B738806DA807
-847D2F92D02E0597BBB24B0F28D6BA9D281B0635079662ACDE0293BBB8698B58
-A80F23EAA8BFC44262F260D932223131B47F3D94218CFB21DAC1908B6A31AC7E
-FAABBC90A3C3C3394D86ADF67D227D8CEE1876B2E343923017B1703635D3AE9E
-9DB6DC06E52745795255065A5321D22CDC5EC2B2B9F824C23E409B8ECC6B4490
-3D0EA2CC23BCB3CA8A60958541695F97F2D940223BA42C3B49844B628225ADCA
-6930D5783B6FA6EC5E472BA243C0FFA71AA738825EE334975A364548853F824F
-9D5149EB346E8F2D074F4715B29764F114AC0DD2B777C170AF827B157D02C2CF
-199D61FB4566D74CF4FC7B31CF5D3C2353117E7B39233E4B84B98C4535FFAD79
-8FE8593B490B484EC730B9CA552A45388103E8AAFE7E62A86C8B24A642C8BAD3
-C9919FA9619CB718AACCCB0F07945D336BA8CC7478DE959DD738441DEC374E9F
-79D2B328211873D480E5CD0ACD94AE8F57FF0E0E3B235FEB865F680A0C817A16
-7D795B8ED5CD3B5EBCBCF748DB6BC52BEFF719714E9B93C5A0800E380542DB76
-4B12A2580D76CF3996B61FCE2C5C34D06487FF1595628E977D3EBC395C6BEE24
-5EFF7388468EE52154F1030AE786DFAE691564EFDD81BF390B9DDCF1F84BC16F
-DB2E2BC4ECF193352B3C6B4BE06025BC43D0A97856D66661B80C460FA48BCB8A
-F7E7BE633E1CC52EDE7EF01258A3693D8746574B0AEC82A2618856B0B5CA131E
-B6D624ACE129E935D8C3674715D542AF4F0084B0D7C993E2B0691BB1FEFBB735
-0C0802658BF289C32EFD28BA582941B6552ABD8E03A4651AAA797475898BF848
-01BE7FEDF3CCBD26C235BC02C6F907DBD964ADDFCD1A5B0FCD45FBCD6AA6D940
-6B955CD5DCE4CFED6DE9AED7019A44EEEE1D64771F934A56C18BD5714E1E6CE8
-A39CA252042D8174B1CC1A93810BE59DD9F203A7D9075FB74FDB5CAD7B12C1D6
-1475E3C78D29D96D84030F5175074C436415A1E6AD9FA26E4C3F9C9F318AEA82
-E98B6B507FE1FCEB57E57FA712DC259C43A1121685948BFE52398DEB4E472CFF
-C09DC6C20B0D6415BBD93B3F5FA82C03B7F3E7268F9C1CD8F8A7214FD78AC592
-8391A6FB967ABD42A63ADA78B700FCFC4817C4ACE54D8EE4FEB20490B5667469
-3B105470A08E956A71389CAFBF2E96AB9D445AAC58F5597990B0FB65A8306355
-37921A387625F7BF046E9D4D11A18F6FF8E664FC1326E9AD1E4E7696D17A4AE3
-F2767EEF4968983FB8DFD7F731D2065593488D21D2CE61DD0F106E0CA36C7616
-376464D5847B3CAF77B257C6A3D6805C154EB81B614E9DE2D314E8664F3F2928
-7DBBBE43A95B071CF577FC1D4700514C0FA042ED08AA4FEEBCECC59B730A686A
-75072DBE884EECB3B6056A56A7EFF016290E52CD4E6926D0E631D454AA21CDB1
-9B355ADD5AF08D01F58A0EBF61D137CA9DEEDD270DB62FE952B457D65AE2A9F7
-70BD2AFCAF5F02F24B3B1AB9A257137CE6AD6C8415BFFDD7EF318EDA8F16C04B
-92F3BFFCE429051D035726DDBB9BE7560BD44294D6B5AB3D2D470563F9221728
-25327CE19D7E770536AFA9806E0AE707BAE02B2F1D86D102EFE83389CE027FF4
-432C4117D6C8D253C17B49871015CBA55BD6046119D7A956693B2F32A4DBD2C5
-7501EF1C8A277A4FD42347F07CDFD37EC54FA6AFB26742671D66EB4A746DBE28
-791B6E63C25111FEA59E1A0F239A2E041148E2773A491E01DB47D67611F40C4B
-3C862975C0A379DA1D15EF87A840008E02305455E6E13847
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-cleartomark
-%%EndFont 
-%%BeginFont: CMTI10
-%!PS-AdobeFont-1.1: CMTI10 1.00B
-%%CreationDate: 1992 Feb 19 19:56:16
-% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
-11 dict begin
-/FontInfo 7 dict dup begin
-/version (1.00B) readonly def
-/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def
-/FullName (CMTI10) readonly def
-/FamilyName (Computer Modern) readonly def
-/Weight (Medium) readonly def
-/ItalicAngle -14.04 def
-/isFixedPitch false def
-end readonly def
-/FontName /CMTI10 def
-/PaintType 0 def
-/FontType 1 def
-/FontMatrix [0.001 0 0 0.001 0 0] readonly def
-/Encoding 256 array
-0 1 255 {1 index exch /.notdef put} for
-dup 12 /fi put
-dup 103 /g put
-dup 105 /i put
-dup 110 /n put
-dup 114 /r put
-dup 115 /s put
-dup 116 /t put
-readonly def
-/FontBBox{-163 -250 1146 969}readonly def
-currentdict end
-currentfile eexec
-D9D66F633B846A97B686A97E45A3D0AA0529731C99A784CCBE85B4993B2EEBDE
-3B12D472B7CF54651EF21185116A69AB1096ED4BAD2F646635E019B6417CC77B
-532F85D811C70D1429A19A5307EF63EB5C5E02C89FC6C20F6D9D89E7D91FE470
-B72BEFDA23F5DF76BE05AF4CE93137A219ED8A04A9D7D6FDF37E6B7FCDE0D90B
-986423E5960A5D9FBB4C956556E8DF90CBFAEC476FA36FD9A5C8175C9AF513FE
-D919C2DDD26BDC0D99398B9F4D03D5993DFC0930297866E1CD0A319B6B1FD958
-9E3948FFB0B4E70F212EC976D65099D84E0D37A7A771C3101D6AD26A0513378F
-21EC3643079EECE0C9AB54B4772E5DCA82D0D4ACC7F42FB493AA04A3BF4A1BD6
-06ECE186315DBE9CFDCB1A0303E8D3E83027CD3AFA8F0BD466A8E8CA0E7164CF
-55B332FAD43482748DD4A1CB3F40CB1F5E67192B8216A0D8FE30F9F05BF016F5
-B5CC130A4B0796EE065495422FBA55BEE9BFD99D04464D987AC4D237C208FA86
-0B112E55CE7B3782A34BC22E3DE31755D9AFF19E490C8E43B85E17ECE87FA8B9
-1485831624D24F37C39BF9972D74E6EC4784727AC00B9C4A3AD3DA1C22BD6961
-7E0ADAF55422F22ACA5E4DCD4DF9FCD187A566B7FB661D0530454D0DD6C6C50A
-7A3875C6CBF8EC7769F32A1F3F7FC1C072BADEC97794D4E90E0035282A170402
-356E5A9CD9ABD80AC4342A5283E458A7269252F4541CBB6452B39ED54D336D0B
-19928E9CD1AB26AD83EB209E2EC75011A2643813053B5DBB0246097C4821B5F2
-C92554E9140BE35B2DBFCD98809A8EC9FC910FDE9E0D86457C70ACB056EBF90F
-244DC0A5BBD455E15D6E3180311D52CF50B0BF7D0A7F64F3A1821E0AEDBC2E7B
-AEB549FE1D51088C153799C6E089B5D5D65E1C4E2D2B430CDF1FFA23CCB25D95
-5C43C8942435D0AAA3D9055FF808F2C3C887A3C469BBD98F026D0A59E26BA9F9
-C2144CFE49A9AD892D4D31764F0AE3A10644AE3966B0A790684B14D11FA49785
-EC5565D2B2E584CBFD85125F3FAC133338DE35361943DCE9AF05FCF2840CE512
-998D42CBEC52B57B79DD63F00985881E8463396ADA47189A94DDF951A78866F0
-B8A3D9197E39335277EF2294308DA70065D910943A34F7D5F2090FB4AA42ED70
-CBA469A9F64B95A6FBA4BC89DBC93765E3AE4723162DF3F9D6BDE77DD5870ADE
-C8900D6346957B84C3CE88A8F9A12D46B8FCA50DF4433B0B8AED6A63B3DA102B
-6DF94E62408E24154BAAC66B2B249C695BC0FA37A28699D9C0F3EE94AA32E3C5
-8F8D7F803B5D25014D43A353D719B14B247A87898A960DF68C0C0BAF70C83917
-6E9F7B3ACC64DBAEF3FDCD3A80C0AB907EE342E543D607556CBE5A9089B86D1D
-E768F27D74A613F3ABF883222A8596B542EBF54E9DCE327B5682AEE5F6BCC38A
-2A052EC4018AE3189DC1963BA39ACDED8F0C60C83F8873FBBF0302010956C520
-A7F3F8ECD0F177EDF5F4D5522C5984A3678FF32EEEB570B69C142AB89467641F
-917155D646DAF3352E27BF2AA0746E062E48532256AF364EFC0F0AAE376F3017
-C712E89991FE883E0F1E1B613606E9AF74B88F5F6DA73D0D404213E34649F769
-0FD57EE53BA3AB1BE898A36A6C69C105794080673F792207DCCC4A2B4C286FA8
-0312B33A9868E0363A5F747EB5B1BD8C74C4F7409F719383A76416713D1C1CD5
-B6FEE2AC58A9F7C7BC2AB5BDFE432FFFD415BC5E2C87281D5AFB7F305BFB233F
-C94F2976074ADCA686329630F76FE55103638B3E6789D16715124F74E738F65F
-2C20A1BAA10DE8D7999BD71C25D9617996ABAC8D9D236DDFE3EC5BD58C0E23B5
-1718F4ED8FB93B5755B14432B34FBD200C85A27A8D57CA278EE5F2011424ADC2
-5EA98120F3BD3E9A5417343DE3CEAB46CD06753B4DC9748A63A1F81778E50ADD
-4D11D2674990DDBD0FA549B493D2B14A328ED349A294743BBDAA591900502401
-B2EBAB6D10E6DDC915875482CEF1C8D380396CB0C9BADAA9E16AE65B90E451E4
-31164B2EF7D6FE6B01D3F51FD511FF8B0B473A15D1FA6A3F93AAB6693F514FEC
-CD1DC7E680D2A4DC1F68FDC28DAF728260F61351AC7B0A94B0E41FBE9C0656A9
-74DFA32C245062C413EDB11F347A4FB0191947A7822960D1D433551BBD9B80B2
-4C455F4BD466FBEAA5172A9D6BE51BFDC5A00EB941A239DE2FA934B449F57F4D
-B5E8937C4F33FB22BF6D75E896E374F6777083AE87F0AD0B589BCB37B37C77B9
-DF15CB0E26A3A6A30B38B3542CFE21E1D03B98F68FB4991823714A78D1D6C723
-02BABF34BD67A073E70AFC66CC845FF87225510DCD5173F68808C3FF59FA8AE3
-B6379AB7338F1252EA8DECF059B5348BD217A31A5EB825A92DFBC3CBC7B6C092
-08821077F26B161219EC0A31B47079DC1C596A059645E62A8407D40088F7CABE
-A0E295F663A614767FAEB2DC4A54ED4DB9123B5A4038F958302D17CA2122273C
-6874C6B8A0680EB2143DAA63658748D8D6D18FEA07FD9E588DE6B14E329386C8
-A1E6E605044902C17AD8C88AA4B887489AA5817944AA6061CF7AD4177AB24BD8
-D093EE6E729CC62B89B0EBAF8EF9F1E2EA2605151E3F6FFBF26FFEEA24071ADF
-189E34D48D53FF6215F564954D7AECCA4BF90490DF52925650B794F41364DC35
-7E8FBC7318444A3BF37B5712AABF22D65B540EBB1D2558F1CFC742383D7A0235
-290164F4013B700C9BC36E79BFF016BD37CDC719172B808AB2E6635D6397433F
-96B5419A16849E79C090293F392F325F8621595D48A3945A6EB8822FDDB24300
-9C90929A3FEC02EF47788E17C790828418D8113197B771BA8DAA9AF0FBF2E181
-B45318FF2415743DEF5FA61ED8BC3187B1BE5EE1E3A3C57363BE4D70B2A4443C
-2551167A58FD9A6D4748145E7E2BAD9CB5B3862C922A2EFEDB9AFAFA7686C566
-76976BAD66FD5415E432C1E009EB49D7BF70588D598E37C6E35A47363821A9E8
-30CD209E39F5ACFA9B7F61213D7727799D110C0C007E43638DD294534D544B58
-CDDF225AFF4EDD16C38B00B4C7D42A726B855CE25217272EDF4AABC97E17BF2F
-2AD297530683FDCB7FD992200028CB6B8AC77BFDD48DE6F571716DC90CD26169
-F97FB7442E07E31B71F6A20FBC47797F656E598B7F9CB395CC8417A3928C78C8
-D07AB0CFB33225AD19D886B72C9241B46E3E2F7336B4E463EB616C7A37907A56
-6FAA23BB33A5A0CC604ECC307CA975E3EFEDAB1CFA5062D54602F283272DE03E
-6E9553F57CB7AA46306644B260B668BB80BCE0A4AEAD96E351A3588192579DF9
-EFE673F35B8B760FCE15FCA79A8DF1B0DDFE6F909A69B1F66517E5993D160D03
-38F36CDB4A671A4823A1BFD6F1691E09C97946A628144B376B7BC4DB13A214D5
-0C710605C5A51E2959A37E3B458BFCBD8586F9DF414E64EACE1FD2E47D5AB25F
-70927E04146395F6B4F5B68B6852B9D60C8962F9E0C5E4B6954AEA6970FEFC72
-7B4B324BF21A2CB2ABD997CC48B687E529F622AF45E72557157125FC4D1C58D8
-F2E84AB96B15CBC25FDFC63D30CA8679EB0821975FD333DDC43A7B80ED69ABDB
-CE8F667B2F234A12481CDDD18D6E5B468D5A5B87655D8AD2EDB8BCB88FA87E30
-A033421CB1AC2AA7C0FD0DEC85133E760A7178E7C8DC5FD394541B1796E6697B
-E9C692407D0098F2259FA18D136A3E5D4124EE15B2A396D0E24E1C3790FCA795
-FE794744F4349CDF895ACFFA5A4021D582006F2BD77FC69F81640507F7553CC5
-F5
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-cleartomark
-%%EndFont 
-%%BeginFont: CMCSC10
-%!PS-AdobeFont-1.1: CMCSC10 1.0
-%%CreationDate: 1991 Aug 18 17:46:49
-% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
-11 dict begin
-/FontInfo 7 dict dup begin
-/version (1.0) readonly def
-/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def
-/FullName (CMCSC10) readonly def
-/FamilyName (Computer Modern) readonly def
-/Weight (Medium) readonly def
-/ItalicAngle 0 def
-/isFixedPitch false def
-end readonly def
-/FontName /CMCSC10 def
-/PaintType 0 def
-/FontType 1 def
-/FontMatrix [0.001 0 0 0.001 0 0] readonly def
-/Encoding 256 array
-0 1 255 {1 index exch /.notdef put} for
-dup 97 /a put
-dup 99 /c put
-dup 101 /e put
-dup 102 /f put
-dup 103 /g put
-dup 105 /i put
-dup 110 /n put
-dup 111 /o put
-dup 112 /p put
-dup 115 /s put
-dup 117 /u put
-dup 120 /x put
-readonly def
-/FontBBox{14 -250 1077 750}readonly def
-currentdict end
-currentfile eexec
-D9D66F633B846A97B686A97E45A3D0AA0529731C99A784CCBE85B4993B2EEBDE
-3B12D472B7CF54651EF21185116A69AB1096ED4BAD2F646635E019B6417CC77B
-532F85D811C70D1429A19A5307EF63EB5C5E02C89FC6C20F6D9D89E7D91FE470
-B72BEFDA23F5DF76BE05AF4CE93137A219ED8A04A9D7D6FDF37E6B7FCDE0D90B
-986423E5960A5D9FBB4C956556E8DF90CBFAEC476FA36FD9A5C8175C9AF513FE
-D919C2DDD26BDC0D99398B9F4D03D5993DFC0930297866E1CD0A30EB76029337
-900ECFB1390CA5C0C3A04528044F266BA17BE487C79B94FAC6D6484684C5BFEA
-87BCCC77D40AD11552035E95E3007126418ED49B68468B38A14E88E68A267B98
-076F1C9769A5AFBC285E5B158EAC9F926F1D6C0B8F1D57D9C31D25AE27123518
-9D2CD92E5689E0213089BD268DA5E47525CB8EABAA4B78A15AEA34705889AB3A
-FFB8953B5B3482E52BFA0940630ADF8C0AC2177D907324299EE980E850F203CD
-B627962F43D5A678C44243CDE97853BDC6AB45FD5C09AD274DAF89929F583CC9
-CCC24BDFC68B92111055ABA5F26D2DC67C70906F71C2957701D65AE746A60C30
-40E6CB24B97FCDAD0487AE38A201FBF0E41BABD2181981A71940F1E707F91E5D
-C8CA50CB16D8702D188E56D014D92F76CE0B52ABDB9110E32438D2BBF3E6A40B
-7B005F10BB437812CAC6ED2996F7606DC962C4FDE207FF322782C343DF44CEC5
-FF06A55C630C20E9AE1B0D1C5673753C43BA0767D65D1B451CC6380D8BB3C4DC
-81E8FD8AA79BE993218686F29D3CD925566DD587F541A0DA1B1CC3BCEA2E6C7D
-5E1016F6917A871F1BBAD96AF9E867735017119A381FCF33EB2D3E1E7093FD90
-CDB0CED4818CFD9E201A03430CEC713620BE0D3254158931FB657C6877C1B3D2
-24030F377820DA58F4B95CFE645109F3F1B80DB5FACFD7D05AE2909EEFCF95AD
-9CB286C8B6C075CA2267C101B736139863186C193E31085E7C9FD88EF8BBECE3
-933542C85309013325B4BBFE9A5B606780C8580ABDA2F5D0064EBFC23939B307
-08568C3B7F5F053BF367DEBA349FABB9F760C44D100BDEEFBB01F27BFC61FCD3
-64512116F2751A1B95D2439E266074DB3B9FC76ED319B2851588B1F38F46C8FE
-040793C860F05E26700B72A766D0BF3F6F2EDEE06A26866BF0207CEF2841BCD2
-84F5873A147D5BAD18FD74DF7B77B8CF1913AD882DC1F4A94020B2A8A73237BB
-222E6B78BD1C4C0975B9B6683B5DFBFA693970DD53FB5D5CA5805B7728C11D6F
-92E6293F82E628C9FDD901010DEC199055B6682D6B2A688E3EE8759F7E592F54
-43E63699F1D60CD915365B85B8713DC4EB3EC4D2860880035348966F004FBE18
-9299E1DD0D491A5D542D450C8945321BFB9E823E18D1F33178BECAADD34378BF
-6FDE26691802F24E43CFA4ED1FB81C824F808A049085FA95CA518D9F4EE91D78
-26A8B8B461486419D598E7E341E9D43CED2402BF225B2C75CEE127D8B8633FC3
-6F4F69DBAF7134D4F3D669B35822FA701A441E5FBA3DC1F02A00B25C583EDB52
-4D4D488C6A810128777654B956C3CCE8FFB0D1985AE2A2735BA415941D1CAD5D
-62D9DBBF01CC979B8E1509F5DDD3BA6E87B14879955F978209CB398825E40199
-2B1C7D2C55251F321BAC0764D40B80D7AE1B787E5690CB5907719044B2AC832C
-C002C181088BA15AEFDA44D2305E6327358D1DC1D9B93AB1802FE9F24CF49739
-9863288D0195F5610441122648F5E38208E1AE5F01D1966DE10B8AAC02EF9F2E
-27D2383BC6D5BF9DA8F9018BABA01B70755FCA281588B85BB705FB7016F6D7D6
-8607BD0739433B54DFB87614A76902A3C122F39A21E80CC1970C5A6932C6046A
-771484EA9BD04CF0963E1D372B456C50625807B3557384F5368C520E757716F0
-16EF17F3A58F2F7EA42C9BFE2A64AE786F49213CC47B496B8F127696EDD017A2
-A07FD72357F4D847CE1EC8103EECDE35AA194F9CE466E733F66515749B3C36DB
-6F7E83B31034687CE18CBD15342723FC21689731B45C72DA278994FF8C5824A0
-EFE9F8D734D75C3C263F9D4BEACDD86406567055B1A8A5EF73ACAB4A09255E39
-BE9AD89DBF4624E686541E2FF03742C99BE71E7CE3B4756A22CA4B0121E1FC6D
-D62BB37F46B6EDA0AC3669802D1DF75B0F9F61976B2FA2DFB5AE2274CF08A000
-AB716CF047D7770A76B6577C75D806D878BC185C4117FD7BBE29E767E028633D
-257C34395F8988DE13F0F9083823F028E05D16BAB6B3E9002F01AD5039CA62BD
-07AE9C5FA71D6F234899382F90EBCC371C5501FE01E38646BC3C734C7E2C1AA2
-11355703BE46724DD85F5DB4051F65E48A3E8DA4CF8845BB4B3F39C47000E871
-AD2FB60C3161437D8C76A10377B98456BC205F3676D02132B174AC046658D059
-5E506F3C4178C400AD4E721AD613199FD1395413EC7AE6960F96849D6A26F695
-B78395941D62A7F7B6E25CD6824E78804A8CFA780E9919BA860C2951EB88DB5B
-C2F9E9AF635BD2C95C7D6AD4BA85E4B85483EEA4EF1908E3D5451AF6EE9176C2
-BA3F1622024250AC2A1F8E66811EE9C1608FDE0E91287AFBEFB43800212C90C1
-6D2D8066C742EAC7D611CB9F0590AB2AA66C17340FC81E55C339FE83B68D060B
-33A10B037B3370E351168E98E9DC4E8AB2B909879566CC28DD053B6EEB04A3EE
-6016A02EBB0E8D0BDB7F0B1B3BEC8C559F48448AFBBFFF5E11051516E9CB5F45
-6F38CEADF429570FB2DEC6E13CFB2A59D5FFBF0A2396FE9F7B3A0836C76B06CF
-9B9D99035BFF40EA918DC4A8CBF4576809F49DF330A9F742AB2FB385C9382076
-6FA8BB32BA81FA3E57E91BB6757C6E98047E9537A0595EC0F2A9BB2D3E093294
-023360099DC1D4EBE77960AB4E26211D1A75ADE1C764E5C2E80EC234F678159E
-3E64331306FB3E2BE3AE0CFEED0FC3F583E875A98694742C3DEDC35CCD9D45B5
-D4200D69F93C5B730AF952EA0DCC88EE1F6D50B9477E249C6274EA0FD849B537
-BA497FBD6617943E7BE06CAF71A0F6B13CFFBB51AEF3E042F28BFCAD6CBA2DBA
-CECBDB7BB399AF5D80487592A820F82A7255B46A0D7C739CCF16B7F60B709651
-0B91A26FF4854483DEF0336B7633C1E053BA889F4306F7398D85C3EBE21A5A41
-B7DB32141ACA892DDD4C0FE0C95328A70F53DD95940017CFA865D15FB0BB281A
-13E2CF735AB238D278FE175EB8B72337218B5F66B62FFD912FCCD0E180AA69D4
-23701D46D44EC2E80D3C4275DC7B5848F50682394C4E67ED98A2E6B41C348263
-EABA9705AA74CD35EC6E1D9DD55634102C6633ED9117DD472DA7F41705DC5772
-72A3C2D8BF6B308567D07153BC750C8CE867E40355C3D50747B757E52F7575DF
-9B5B913AF7FC3FDBEB317DA46DB498C7C044F83E46BAA00321A84DAE2DF14604
-12031AF813C994414F098824C30FC07E9B5307EFD8D01B56481BBD2EF648A69E
-7507FED42C6605B09EA047F09DFA9BE15B59B93395DF192C0FB33F6F31F325E4
-DCC9A5DFAA157D1D5B4E5BF811F6F5B0FD1E69ED7EE1A6FBC2CE14D11D6FA699
-255370376844BFF3C2BE814A1FEDD0B0854647B9B193B4984394C8602820A17C
-62704CEEC824C3C745BC615C54EE5DF86EBD79E874CC3522F8B8954C8E4A6FB4
-F715EE641A3D52C06574E8D7DCFCE83F3F8809D08A3C9C70C962D33F5B3D6128
-16EF2DCD4D6DCF0DD055AEA2293E10C1B7C2399C0DE4928F0A47E0BA652943B1
-004568BBA7CE62F12C7B58966BBF7B0327481DCCFC56218E7C4B9F0761063BA3
-BEA01AD1BC99DB3C1FE550DED79B243A7A554F2B1752F18FEE94120B708FE4DB
-5948387091DF4198859CF49ECAC3AB49CE2E5F0451EA4EDF9BD49633C9826026
-BC9E7E1544A0318C545ED1C37C64176504D175B83CF974B4ACC39F5790E24B11
-85F01604144C0E694DB7206941933B60651A800DF182E19C3BF2862E72F25F2F
-2D9BD71056559C0FE547D0C752640DD4DC6110A849CF9557FCB0643A1EE77855
-512015F57A80140FC06B8CDEABC5580B89F9F30A489696AEF2
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-cleartomark
-%%EndFont 
-%%BeginFont: CMMI10
-%!PS-AdobeFont-1.1: CMMI10 1.100
-%%CreationDate: 1996 Jul 23 07:53:57
-% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
-11 dict begin
-/FontInfo 7 dict dup begin
-/version (1.100) readonly def
-/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def
-/FullName (CMMI10) readonly def
-/FamilyName (Computer Modern) readonly def
-/Weight (Medium) readonly def
-/ItalicAngle -14.04 def
-/isFixedPitch false def
-end readonly def
-/FontName /CMMI10 def
-/PaintType 0 def
-/FontType 1 def
-/FontMatrix [0.001 0 0 0.001 0 0] readonly def
-/Encoding 256 array
-0 1 255 {1 index exch /.notdef put} for
-dup 58 /period put
-readonly def
-/FontBBox{-32 -250 1048 750}readonly def
-currentdict end
-currentfile eexec
-D9D66F633B846A97B686A97E45A3D0AA0529731C99A784CCBE85B4993B2EEBDE
-3B12D472B7CF54651EF21185116A69AB1096ED4BAD2F646635E019B6417CC77B
-532F85D811C70D1429A19A5307EF63EB5C5E02C89FC6C20F6D9D89E7D91FE470
-B72BEFDA23F5DF76BE05AF4CE93137A219ED8A04A9D7D6FDF37E6B7FCDE0D90B
-986423E5960A5D9FBB4C956556E8DF90CBFAEC476FA36FD9A5C8175C9AF513FE
-D919C2DDD26BDC0D99398B9F4D03D5993DFC0930297866E1CD0A319B6B1FD958
-9E394A533A081C36D456A09920001A3D2199583EB9B84B4DEE08E3D12939E321
-990CD249827D9648574955F61BAAA11263A91B6C3D47A5190165B0C25ABF6D3E
-6EC187E4B05182126BB0D0323D943170B795255260F9FD25F2248D04F45DFBFB
-DEF7FF8B19BFEF637B210018AE02572B389B3F76282BEB29CC301905D388C721
-59616893E774413F48DE0B408BC66DCE3FE17CB9F84D205839D58014D6A88823
-D9320AE93AF96D97A02C4D5A2BB2B8C7925C4578003959C46E3CE1A2F0EAC4BF
-8B9B325E46435BDE60BC54D72BC8ACB5C0A34413AC87045DC7B84646A324B808
-6FD8E34217213E131C3B1510415CE45420688ED9C1D27890EC68BD7C1235FAF9
-1DAB3A369DD2FC3BE5CF9655C7B7EDA7361D7E05E5831B6B8E2EEC542A7B38EE
-03BE4BAC6079D038ACB3C7C916279764547C2D51976BABA94BA9866D79F13909
-95AA39B0F03103A07CBDF441B8C5669F729020AF284B7FF52A29C6255FCAACF1
-74109050FBA2602E72593FBCBFC26E726EE4AEF97B7632BC4F5F353B5C67FED2
-3EA752A4A57B8F7FEFF1D7341D895F0A3A0BE1D8E3391970457A967EFF84F6D8
-47750B1145B8CC5BD96EE7AA99DDC9E06939E383BDA41175233D58AD263EBF19
-AFC0E2F840512D321166547B306C592B8A01E1FA2564B9A26DAC14256414E4C8
-42616728D918C74D13C349F4186EC7B9708B86467425A6FDB3A396562F7EE4D8
-40B43621744CF8A23A6E532649B66C2A0002DD04F8F39618E4F572819DD34837
-B5A08E643FDCA1505AF6A1FA3DDFD1FA758013CAED8ACDDBBB334D664DFF5B53
-9560176676ABB71BBD0EE56B4CC492C0652750227CEC6CBEEE374709231B00CD
-0DE83AFDE295B314F6C8B1FFD32251C1925D96A64D739FF1DA4926460B28B3DE
-E949AA0BA3DDB16534FBA30C32092D5F712B5E8C8D5142F35AF2906E6C219D2C
-7FD9A368C193E0EB9C7E25FF03C546B6ED993F964CEDB1B8537C617170787F37
-88D6F2AD02384B01067FE3F98257BAB958BB3BCD1001090A4502DA0638080EC6
-DB784CC8AC37CDC01B29BC481D6A05ADC6188785262358C1BF1D694BBF31C1F1
-AF117C1ACED44AAC6EB4B9A2511A6762DDE8FCCBA5
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-cleartomark
-%%EndFont 
-%%BeginFont: CMMI12
-%!PS-AdobeFont-1.1: CMMI12 1.100
-%%CreationDate: 1996 Jul 27 08:57:55
-% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
-11 dict begin
-/FontInfo 7 dict dup begin
-/version (1.100) readonly def
-/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def
-/FullName (CMMI12) readonly def
-/FamilyName (Computer Modern) readonly def
-/Weight (Medium) readonly def
-/ItalicAngle -14.04 def
-/isFixedPitch false def
-end readonly def
-/FontName /CMMI12 def
-/PaintType 0 def
-/FontType 1 def
-/FontMatrix [0.001 0 0 0.001 0 0] readonly def
-/Encoding 256 array
-0 1 255 {1 index exch /.notdef put} for
-dup 58 /period put
-readonly def
-/FontBBox{-30 -250 1026 750}readonly def
-currentdict end
-currentfile eexec
-D9D66F633B846A97B686A97E45A3D0AA0529731C99A784CCBE85B4993B2EEBDE
-3B12D472B7CF54651EF21185116A69AB1096ED4BAD2F646635E019B6417CC77B
-532F85D811C70D1429A19A5307EF63EB5C5E02C89FC6C20F6D9D89E7D91FE470
-B72BEFDA23F5DF76BE05AF4CE93137A219ED8A04A9D7D6FDF37E6B7FCDE0D90B
-986423E5960A5D9FBB4C956556E8DF90CBFAEC476FA36FD9A5C8175C9AF513FE
-D919C2DDD26BDC0D99398B9F4D03D6A8F05B47AF95EF28A9C561DBDC98C47CF5
-5250011D19E9366EB6FD153D3A100CAA6212E3D5D93990737F8D326D347B7EDC
-4391C9DF440285B8FC159D0E98D4258FC57892DCC57F7903449E07914FBE9E67
-3C15C2153C061EB541F66C11E7EE77D5D77C0B11E1AC55101DA976CCACAB6993
-EED1406FBB7FF30EAC9E90B90B2AF4EC7C273CA32F11A5C1426FF641B4A2FB2F
-4E68635C93DB835737567FAF8471CBC05078DCD4E40E25A2F4E5AF46C234CF59
-2A1CE8F39E1BA1B2A594355637E474167EAD4D97D51AF0A899B44387E1FD933A
-323AFDA6BA740534A510B4705C0A15647AFBF3E53A82BF320DD96753639BE49C
-2F79A1988863EF977B800C9DB5B42039C23EB86953713F730E03EA22FF7BB2C1
-D97D33FD77B1BDCC2A60B12CF7805CFC90C5B914C0F30A673DF9587F93E47CEA
-5932DD1930560C4F0D97547BCD805D6D854455B13A4D7382A22F562D7C55041F
-0FD294BDAA1834820F894265A667E5C97D95FF152531EF97258F56374502865D
-A1E7C0C5FB7C6FB7D3C43FEB3431095A59FBF6F61CEC6D6DEE09F4EB0FD70D77
-2A8B0A4984C6120293F6B947944BE23259F6EB64303D627353163B6505FC8A60
-00681F7A3968B6CBB49E0420A691258F5E7B07B417157803FCBE9B9FB1F80FD8
-CA0DA1186446DD565542BCCC7D339A1EB34C7F49246E8D72E987EB477C6DB757
-99AF86CEBCD7605C487A00CD2CD093098182DC57B20D78ECE0BECF3A0BF88EBA
-C866DB19F34BBBED6634AFC0F08D2AFB2A92578A6F8B4ADCD6594737FF6EED7D
-5B536DA9E3E2CADB40DB7C600EA4D100D33C3B92B1CF857E012C4EB370BA8295
-55B50047CC8911C98FE1A7BA6CDEA82D34476286E710776823690AD333DD3A49
-335002F4680DBE1C21174BF016B0DF799B01EB9D6988479A8334BBA2F8DC7146
-BC0DAE9DE3A6453B181808E68A89E0C02DAC6264D002B422EBC1CF14F65D9888
-15EE6D514D3457F7F3C6A3D17EE1DA076F73ECC392D349174DA9E4680F29CE10
-0157E42CA35F5DBFF56BFC3AA07E61A78DBE882C5AB388220C19750D3643E7C8
-23D6673027CE568A4ACCE1D12B1D9E5A43507F4AF9BC873237F65A6B95078DD2
-378007CF0F0DE7CCEF760E19D6D1D7B412EC5D4972
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-cleartomark
-%%EndFont 
-%%BeginFont: CMSY10
-%!PS-AdobeFont-1.1: CMSY10 1.0
-%%CreationDate: 1991 Aug 15 07:20:57
-% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
-11 dict begin
-/FontInfo 7 dict dup begin
-/version (1.0) readonly def
-/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def
-/FullName (CMSY10) readonly def
-/FamilyName (Computer Modern) readonly def
-/Weight (Medium) readonly def
-/ItalicAngle -14.035 def
-/isFixedPitch false def
-end readonly def
-/FontName /CMSY10 def
-/PaintType 0 def
-/FontType 1 def
-/FontMatrix [0.001 0 0 0.001 0 0] readonly def
-/Encoding 256 array
-0 1 255 {1 index exch /.notdef put} for
-dup 13 /circlecopyrt put
-readonly def
-/FontBBox{-29 -960 1116 775}readonly def
-currentdict end
-currentfile eexec
-D9D66F633B846A97B686A97E45A3D0AA052F09F9C8ADE9D907C058B87E9B6964
-7D53359E51216774A4EAA1E2B58EC3176BD1184A633B951372B4198D4E8C5EF4
-A213ACB58AA0A658908035BF2ED8531779838A960DFE2B27EA49C37156989C85
-E21B3ABF72E39A89232CD9F4237FC80C9E64E8425AA3BEF7DED60B122A52922A
-221A37D9A807DD01161779DDE7D31FF2B87F97C73D63EECDDA4C49501773468A
-27D1663E0B62F461F6E40A5D6676D1D12B51E641C1D4E8E2771864FC104F8CBF
-5B78EC1D88228725F1C453A678F58A7E1B7BD7CA700717D288EB8DA1F57C4F09
-0ABF1D42C5DDD0C384C7E22F8F8047BE1D4C1CC8E33368FB1AC82B4E96146730
-DE3302B2E6B819CB6AE455B1AF3187FFE8071AA57EF8A6616B9CB7941D44EC7A
-71A7BB3DF755178D7D2E4BB69859EFA4BBC30BD6BB1531133FD4D9438FF99F09
-4ECC068A324D75B5F696B8688EEB2F17E5ED34CCD6D047A4E3806D000C199D7C
-515DB70A8D4F6146FE068DC1E5DE8BC5703711DA090312BA3FC00A08C453C609
-C627A8BFEF75B4DEFAF34B44B356A516B765AFCDD3F5475B1F928731D09D2170
-B97E40F12CCEDF4F6BB3756C4734F6E98D74B7E942A954B1BAAB83D4AD727FF6
-DF6DC50B2223BCB5568A73A112E4860AD490554E64E780073FF3399CB4688D33
-9E8829667CD6EAEF25E0C7D2D44F2BBFA40E999325F9561514844221B50BC8FC
-4C7AD68CA7220D69125C2AF06849A3E068D18733276F0C0A6A2936D3C2C87CDE
-59CD1AF148C44F85784A5DAD569F5FF53C061056C067CE29AEF1E3BD1FD8B0B8
-71A0A638CDAC6AEEDBD5337D4683C084BB60B1859E600F59CB4E19C5FC5C6327
-EC544A68134496A9BD0B87D83AF6FDA3CB62FBF0B54FACE1F0E6A2D84B467AFF
-0F62DB
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-cleartomark
-%%EndFont 
-%%BeginFont: CMTT10
-%!PS-AdobeFont-1.1: CMTT10 1.00B
-%%CreationDate: 1992 Apr 26 10:42:42
-% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
-11 dict begin
-/FontInfo 7 dict dup begin
-/version (1.00B) readonly def
-/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def
-/FullName (CMTT10) readonly def
-/FamilyName (Computer Modern) readonly def
-/Weight (Medium) readonly def
-/ItalicAngle 0 def
-/isFixedPitch true def
-end readonly def
-/FontName /CMTT10 def
-/PaintType 0 def
-/FontType 1 def
-/FontMatrix [0.001 0 0 0.001 0 0] readonly def
-/Encoding 256 array
-0 1 255 {1 index exch /.notdef put} for
-dup 33 /exclam put
-dup 34 /quotedbl put
-dup 35 /numbersign put
-dup 36 /dollar put
-dup 39 /quoteright put
-dup 40 /parenleft put
-dup 41 /parenright put
-dup 42 /asterisk put
-dup 44 /comma put
-dup 45 /hyphen put
-dup 46 /period put
-dup 47 /slash put
-dup 48 /zero put
-dup 49 /one put
-dup 53 /five put
-dup 55 /seven put
-dup 56 /eight put
-dup 58 /colon put
-dup 60 /less put
-dup 61 /equal put
-dup 62 /greater put
-dup 63 /question put
-dup 64 /at put
-dup 65 /A put
-dup 66 /B put
-dup 67 /C put
-dup 68 /D put
-dup 69 /E put
-dup 70 /F put
-dup 71 /G put
-dup 72 /H put
-dup 73 /I put
-dup 75 /K put
-dup 76 /L put
-dup 77 /M put
-dup 78 /N put
-dup 79 /O put
-dup 80 /P put
-dup 81 /Q put
-dup 82 /R put
-dup 83 /S put
-dup 84 /T put
-dup 85 /U put
-dup 89 /Y put
-dup 91 /bracketleft put
-dup 92 /backslash put
-dup 93 /bracketright put
-dup 95 /underscore put
-dup 97 /a put
-dup 98 /b put
-dup 99 /c put
-dup 100 /d put
-dup 101 /e put
-dup 102 /f put
-dup 103 /g put
-dup 104 /h put
-dup 105 /i put
-dup 106 /j put
-dup 107 /k put
-dup 108 /l put
-dup 109 /m put
-dup 110 /n put
-dup 111 /o put
-dup 112 /p put
-dup 113 /q put
-dup 114 /r put
-dup 115 /s put
-dup 116 /t put
-dup 117 /u put
-dup 118 /v put
-dup 119 /w put
-dup 120 /x put
-dup 121 /y put
-dup 122 /z put
-dup 123 /braceleft put
-dup 125 /braceright put
-dup 126 /asciitilde put
-readonly def
-/FontBBox{-4 -235 731 800}readonly def
-currentdict end
-currentfile eexec
-D9D66F633B846A97B686A97E45A3D0AA052A014267B7904EB3C0D3BD0B83D891
-016CA6CA4B712ADEB258FAAB9A130EE605E61F77FC1B738ABC7C51CD46EF8171
-9098D5FEE67660E69A7AB91B58F29A4D79E57022F783EB0FBBB6D4F4EC35014F
-D2DECBA99459A4C59DF0C6EBA150284454E707DC2100C15B76B4C19B84363758
-469A6C558785B226332152109871A9883487DD7710949204DDCF837E6A8708B8
-2BDBF16FBC7512FAA308A093FE5F00F963068B8232429ED8B7CF6A3D879A2D19
-38DD5C4467F9DD8C5D1A2000B3A6BF2F25629BAEC199AE8BD4BA6ED9BBF7DABF
-D0E153BAB1C17900D4FCE209622ACD19E7C74C2807D0397357ED07AB460D5204
-EB3A45B7AC4D106B7303AD8348853032A745F417943F9B4FED652B835AA49727
-A8B4117AFF1D4BCE831EB510B6851796D0BE6982B76620CB3CE0C22CACDD4593
-F244C14EEC0E5A7C4AC42392F81C01BC4257FE12AF33F4BFEA9108FF11CF9714
-4DD6EC70A2C4C1E4F328A1EB25E43525FB1E16C07E28CC359DF61F426B7D41EA
-6A0C84DD63275395A503AAE908E1C82D389FD12A21E86999799E7F24A994472E
-A10EAE77096709BE0D11AAD24A30D96E15A51D720AFB3B10D2E0AC8DC1A1204B
-E8725E00D7E3A96F9978BC19377034D93D080C4391E579C34FF9FC2379CB119F
-1E5BBEA91AE20F343C6420BE1E2BD0636B04FCCC0BEE0DC2D56D66F06DB22438
-452822CBEAF03EE9EAA8398F276EC0D92A7FB978C17805DB2F4A7DFBA56FD6AF
-8670EB364F01DE8FCAFBAF657D68C3A03112915736CEABAA8BA5C0AC25288369
-5D49BD891FABEFE8699A0AE3ED85B48ACB22229E15623399C93DE7D935734ADA
-DA7A1462C111D44AD53EA35B57E5D0B5FC0B481820E43222DB8EFCD5D30E15F9
-BA304FA879392EE0BCC0E1A61E74B3A1FC3A3D170218D7244580C7AA0DC65D19
-741FA5FE6F8CBF60250ACC27454BBF0897CA4B909C83A56672958752ED4B5E79
-E18660764F155E86F09EFA9F7685F2F5027EC85A775287B30E2069DE4E4D5712
-E7D033481A53A2702BA7542C71062173039030CF28D8B9C63B5596A9B42B33E7
-D922944A38713383D3648A4AF160A3B0C8F3379BA4372BE2E7EA49AABA75AEEE
-C5DDE1D8BF68483C3D21271280ABB91D54CC819680322EAB72E1250A760BC8DA
-726405EFE420635B5B7F0B48752C06083E92BDE06401C42A2C528C8A60381227
-CEBEF0C9440DC034DAD9C19FB27A350233112B0A339366B7373CE058456E0E1F
-139936F6CC9B50441C2F5994977426AD7DC8C717E737F8C201EA55AD94908336
-FFE9568C0E6EF3202D8CD7B7A6CC203EC601F9A7E2A4395ABA3406503DECAC56
-B03219CEBD0E465EA0F635F26D984F5942E4FB186AB874F3E74CC2F2E378BD83
-57CD1B63C9DE9963587B7457D56024D95645ADE0D95DEA748A6ECC6809C2A7E8
-6A568F83BFB184B31349A771DD72ED3FFE8D16E3138EC49EC6D7524E611331C6
-DB2E16059C9A12512C7208E3B30F04273E20BAF41EF8C96BA4B17F31572BDD15
-3FB7D15CE31684D721083208D7698A31D07160927C9A7CF8B7EBE81A83C0BD46
-9CA06245FDA37F0F2DF7948A20D121660A73E079F4ABDD8F90367BDBBA323957
-062438FF3B28A3880380CDC76A055096D30FABA4AECAF238ABC2513F089A6C4D
-67EA0050A34F5DBE5FE32D9E75E67F4C87AD8115DBFC00124DB4D3F4CB62CA02
-59BFE46E90DE9ED306D6CDC51005C233BD39F41B264E2892AD23E8F93C8C61A0
-B5C5CC1021411DAB515039DCAC06E1FAEFA259E6AB07135CBB345E90E2BD64AE
-37B9A46934BEB383D3AB1787A2656FCCEA6467ECC2582807E7DED181C53829A7
-1818C3FB17567D81D1A833E0559798D06163781D7895C31B1D81CC439AD51CA0
-5E33E96253064B684F3261EF86AA8452B32E9C5907153BBD692BF8BD4AC45E3D
-7161488C716CEFAA695877B03781F64840D49C9C1BCE9D5E759BF1812712F2EE
-054A34F2153AD6C953E795B6F40AFAB115C5FCDD1864A85C1AEF5DAF40337068
-08730BA7AC580213881F8AF1F76FC830EC76BE4CE6E090A1F91618595AB6D1FB
-A885D04A4E73C9C7A923D813275810DD2B2A3AB4FAE4BDA24FC170A4BCF46E05
-572529A19B09E5ADEAADD071EAC20C5DA884C7D414F5AC5206E87E53989B7378
-BADCEEC6FCDD4B4EA03EA994FDF6A80A2E232B1A007B7554471FC1DA24901896
-9CA84283A02FA1D9176026BC1529147F19D07521A4997B70258FFC03821EED0C
-D44BC9C2E67C3CD9971954C58BF1775D61115B75E26AFCC3B7CE6E5ECB8CCDFB
-640DE440334737D63F539385F83BBF603B631AB2F750DBAE707F5D008591A05E
-9D532C165FA35B580D690138463047F77F10FD4FDC8F724367545C0F5B6AF978
-B6AFA49624EC2AEBCB2D19E9652CC920EEE40ACB479E99C7B615DD7300225276
-D45A24AA2A607E5C90C1835AA562597FBBD42465DB1AF4867E8A1A750F1E462E
-D2615B3A9E2AE194DB25B21527307997F12B45F442817D221773CF53AB0063A0
-4B188C90FC3C03EE095014485F988D8663C0EC7E1C7B99FA1CC791DD44C7CECA
-600806FE76707EB7D9355A1CF21C4325E2C83651A6FD8399C79CEE9816A4BB2F
-FC454A4A800E96D4E964627ECB39A108D418DAA5B57E6C0A3F191BE83A4B4BC7
-48A4B83F4EA66B0E2F6AF0F99FBBC9BD5A53B06967B36222AC42F2F25664E39D
-5BBB794C37EEF11E43949250AF8F207CAF47DC0E02E93F9B41C9C11BBD7146C0
-C8994D6927D054BBE65A85AB565027CC9581619D26BF75C397AA56BE2A8DE89C
-7A0E4B8E05D6A74092C5625E59BA23F65F1404A17A9DC4843A08B58234AD7592
-7BD68D345385E2B005F2B983FFCEDCE78417C904E181F3B6CF8E5CF236F23611
-D9CBE545AA643C7D1B28EBFBD2E1171057A3C8FDB9D7DABF20558C7ADE8A6B3A
-FF9878B26EDA16B0F9DA421281F849A44C76D117F4AB566FE241B0A6CCAFE2BB
-9A6436322D1CC54CFB602C0466B70565F9A7F9370BDB1C70F0C33E529CC280F2
-3C8E23EB2C0D25829496B005E711F5BA8E4680EB3CDF115E4D0F89C4B5DE8842
-12CC80649077D5B844B61BF557D316A59513F58FECE657F2A7EF3B0D320E4C33
-B4877334EFC38A29352B0240EE736EDF805C434ACAA59F32204DE64B85CF3D65
-24F0AEACE2F703252AC9A3FCB2F628928CFAA788221C41B6AC639655E39188D7
-A8118CE6697A20F3FBDA3564355DA3DE10EDDDD22BFF4690630E99A77C663AF1
-5D38A0827E81D805507A1260ABA8374501A2CB4F07E2354B2DB7E77921B6DC57
-926415E85A35379E6A0016993926231AB1DE35178E16839574A97E50DE7C1179
-0946A61E65BE962E7AB2A584F8972A2E3CF319EE4C59B82DFF6CBFDCEE8004C6
-1B7BCD417103A82B34665045DAD49A228E9A3F63F1194B952B67F89C32E68814
-705CA69F88EDEF44916D40C22C16F58BEA7A0082D4A579B7562319750BB14BEF
-0CFB256E9EA333F3AEBEDA8665E67809576D7F1892260E43C764963B70FEEBA4
-1EBAA29B62BC37AFC35AA6BF57E504ED00650B4EC61A82B6A26EE97D71FDA25E
-1358E3BDE969F1B4D04009D55D1B19DB3C8BD1671280394A19D90893347C92D0
-E4D5EABBC0E5ECB168D32491C0CBA1379E12F1E6E160290115C60706AE8C3355
-A88DDB64EC5CC2FA7539E37CCF6941F66C3275273D38DE8C370034D89BB92D1A
-B965CEE8D92E4BC4A2733E61B8C766EE4E8C5F5670DDA0CFBD8D2C76B1F9F174
-23B97C475C8B9CA7EF89A2BE521F8BC3B8C8B3AF782AF6B1EB86EEE7A64C4314
-F1E2801D117BF864C72F04BFBBA8D47535772CFBE2EE0F14D699AA33FA7D3EA2
-8AD0718637E0C3027DA0B4EA7F3CB852811E620836A18C70283DC59D90F28CD1
-C6A8668A33304BA0B01C7AEAAC07DF77EF7D21A60CED0347A0C763572CC62DB8
-6F471ECC67B78D065762D99B540F2B45BDE96D18DD1F21B52EF54C3FA1F59C08
-E919E78EFF5EA634394A90131E66165B2F5657D4650B7B716CEC85F70EF33260
-72789B321F587D277D458B6EED9010B8C29B8FD82BEB1990A0C7EAF5A763FDF0
-F3AF986BDBCB86834412CA0929D98AB3FF21D401E9A6E816587F4F98BBBF78A5
-95DFE08D14A7B4B922A49AF62B6F1852F01A593975A06878D34A3925F1650CFF
-A8232E51F57565371E0D28303F6240D95D3D948C0A2E27DC60EC9159502709E0
-CEAFE520F27409FE135DE680EB730F3F558F36079EB4189E4750B46154AC9B70
-13CA2182E44A20F4CFD8FB7F8E2FB368233040997C0E5659DE1E0619EF05CBDC
-1D2363243BD573BA0A80BCADA2DEEFAE08A83CFADEBEE198C34F76ABE83FA5C2
-F05C1B86A1E1171071975C56CB4C7C0EA35D8449F6D2948F38DE52E67E136311
-51D137A1A58C1098336E57B1FC0A17067CD6689206E12E3AFC15E3577C10CC6A
-82D177CB016609881AB665B0B5F6A1A3A9488F3C01E834D91B38DD6BF1B2B044
-837ECA3D07B8B512B4394E28B24B7477D710C8B0CEBB46F703EE77D5E56BEFDD
-1F19BB594C69802B39DB67169EC082340A20EC63382EA62A93310E58C201ED68
-D805355BA00FB8695160EC7CD16F3208E69C32BD6A0A965D0EBF2C8F4D54B096
-A82C5571064EED0F461F5A6A88F1A81A30CC9F9C8FC6CB464EB348261A5483EE
-1CF21254D894FBED7C83867CA3868DD97A273411FF8BC1DE955FA12BCD72C16B
-B5C7F36967FC770FC35C8B8E8C91C2045B1EABCDB0ADFE148E173503195BA1B2
-435323775EC6E37099C6ED935DD7E3737AD6F112D9890019F9B949C6B20185BA
-75E892A5481CC5F8F63E0ED8ADA4E501B451F6E491FB7326539C369A3A0790F0
-2F32ED0E882AF2D05F786E2F65531DCE206DFDFE1A477C71A97CDA763E33F864
-78CF67C33B0FC431BD601225ED92B2B986832A94362A9AB4D49F3FA46A82DC3A
-58EFEE09DE84EC7B7246160B867A8507A6BB985261A20F4EDD2D764429084294
-C185B5EDF9F60C4C15BB718C2732AD751549006A5B359C03C15CC605591700A2
-603B101F6A6D1F9BE767D7BB0C1454BF78274CD777525C2966A4C396A3598838
-D0C417953CC8B46A560DD721B2938E8FE23ED056DDCD5DC371983BBDDFC76DA7
-FD598F62B0433936305BC861EA69A4E32B417AB2E9049ABCC46C4345F9669741
-8A0357D30D35D3EBD33CD11D021F5BEDDEC8E62ABC7F356E1C6FD7E1AE402AB5
-C0D624F0E5CBA67779F2460E2808F3ACB78164D8C1F23058C7F3E364ACA8BB30
-49F58FE6DA46AD4241D62EDC34099D29DBE9CBC13907D51374F757C907AC9D3E
-113B7DBFF94040600E03D24728D49FBC5E5BFEB7F179C27EA0D6CE7197701703
-44B7A2B3ABAE0EED765B9C57E28612316B9B6D56CEBAECC05D478AB41C685641
-D12AE8A5AF427FA4E4C75E0221B0E2271F3A49BE14C3B97E36E80D8A77D45BEC
-C09D87DEB41CC5C1112410901ADA51B2F0852C5FF9CBADB47946B3DED2B6C3BD
-264BAF27319ED478EB6A3146C0E50E186FD80E7858675481F9DF4A4BC5015AE3
-4E05A1BECAD22851660E20507E7D600AB1CE3C1AA48BFC5F050ECF2AE550856E
-4B99C1D665A6A7FA28A9C329073A478EE162499032FB51E4B3D5830EDAF10623
-DD8D478FA68B06420C29F484BB8DE89763AA12B685462B56D6945401BD0AD7ED
-0590DF4EACB677982F261448D1D35C72A1BD8D2FD85393CF57E33AACAB30A809
-B092DF30CA7F7E7B80E423009DE411182E63A73D6D14BD0E47CF571E5440FF1A
-D8AEA199831A918E485EF589A422BB7A4F6A2CF5EAFC028277F28016693DD955
-D0B2B171C1803C7FF2BEBFB96DF72A4256F40CA88A27B7C174826DF26BE0E9F4
-52742FB8ED72D10EBC3378C3D4F75DD787684AAC74055930E53AA52DB9212C27
-514134DABBD2C488B047460AC2E9E3468671A716D790EDCBCA4158B48D590D69
-6852E057D4CA5116BC532420BC32950BA2900C8E641D63951163C34CC89C644C
-54AD91CDC59660B4AAF0700AC478222387F3DC5E249C62E4433D3C6DC997EEF9
-45784FF75384D73CA044F7A6B1ECC5F1202C2C7DBE5DD4ACD5E8D7CF5A057D58
-0BAD218558F76ECC99251B11D2FB92487FD6D7A3AA8F16FBF489A046487C8001
-64A8FD9C2D0373BB751188335332516C2F999BBED75DC6AD90CE3971706180F9
-55D8D457BF68CAE5F0BCF71EDB20B02A5A2EC92CAD3B971E9F5854BC5ACD0B5F
-DE882EB372814DA4E91EFC31FD0DA662AAAA1A69EED664ABB5E418A19A459625
-E12E85E52FCD8ACE314947162767E89D9F150BAB26CF80123938D8CDD901CC42
-BC72035A3A5EC261111A576106798BCE708FCC8EE214F2946813D955535B65C7
-FF875911B2242E7042AB34CC8A722637D8F324C6FDDB25D9DB2FD2C666244F39
-74541C5C716DCB61CAD8423C8B3402D6C6E003200A4883C213E8580734F41451
-18ECB1AF8FF6505FE28D5DB6BC742BFF13C229813196277DD6499B9D0313EA3C
-2F44DD9CDA19E20898D6B74A93FABC51BFDD49B5F4998A273C31468BB89BE757
-BDAE0DA6BD022AAA2F0584C916F7C837F0E0883F6B94823180F9FF55EDE706D1
-21CDCC806D00BA61D4A4AE33029B4F640E9D8226B8BC0670C5E6DF2EB062DE71
-2C57FFDD35CF8502B07A52B52D6D14886A010B5567185B790207D5214ECAFC0A
-0A55803E08C9BA4B8D002C7310D22F256B8232DE47B30A131720AC4870E4B85B
-6F56F74FC851E5709E914E6E46793748CB758DEBF3ADB83DE06EDD7EE36C7A21
-01A5355221898484015CEF9F9EF6F66803DA073C38CB4406BB738F57D1AA4E8B
-6002E213E26A1F3206E8B10B7AF2FB5CDFA840891CD12C816E7EB41D1A7EF62C
-D92D51C085EDA95874333A1ED73F63386D5A9AF817F7E94DC3BC489A36730800
-8DADACACB5CB2749D8E5F8389F93C1B596242C2B9317E26533414367AE8739FB
-3C7097058371BFA929594E972CD18837C892DCDDB4384DD2133622BD0E48B1F4
-3426A7EC61CF550A6CE1BF747B7FD53DDFC95CBC5F50112B97CFEC1406816763
-B2321D3B3A9168FAA4D888BD4CEEF539B4DE1810F77C0201FD5151270D8FA365
-6D58734CDEFB41A6F0F26BCB78F83A189A91B7982F5C16973E407A50BFEE424B
-AF4F1956EB06FD15BDED6C6A10F7CDEE426FDFA4B03D15BFB1CBB5919EF8DCF3
-FD3D7CA45C2DD173060FCC4AD5EAF86B1966A449B2BD255759B16D0BBDC3EB32
-9B0A9C7CA05D6D5232BB0441D182E52895FB7BFAEA92FA1DB585C78A8EAF1DD0
-13AE43CFBB182EA0ABFAD44FF4EFA5D3BFFB53945A7D36AB480645046F8A032B
-12DD38DAE64C6A6B628BEFE7E3A60FE551E7AB07A65F3C57D4BFCE9A8B5BF8AA
-F754FEA7EB86867029836D9EB89E75E154E34814E86036E279DE57BD2DB024F9
-EAE8E0DB7A36D6E01484AE6A42560189A24269CFC2EFFE3FAD0F200411D75591
-52F7FEECAF445BB88C3989B0E095C6C50A74F66221A16D990C5EABE9C2E979C9
-7A71EF59C049DAA808A09955BB8E5D3F5A266F552A9C97FBB969F87348A87CE0
-79BF91312198EC39246CFB3F30EE757AFE025B54C5880A6DCB85F67A36DE92B0
-8791F5955BEEBA9EAA842005D2A1078016D7ABE4E350553A2777E050E769A7EB
-2E91FDB7BA1D89306D0D0CB2089DC7CB2E6E8587E71A96B8DA4DD6281E20C1B1
-5F09FA228F6B99518815C0CD67795991006DF4EC59C62F083F11513434C0B469
-0F899EE4DE7481E18EDD0FD4808F0E29179EDCE6A85A87081F060AB738A0B834
-CDC1F889127395EBC582D8EB68391D779D4F25AD0E38945D53A836733F9B4B6C
-8874506F34DA3F1BE2999FDCF0D830A01CA0511605EBBA9F5002B2F0065ECC89
-9231086688B187E0742C2745CF291313FE6C95B2A8F09F38686B9CD8F15A3BD9
-683139DCA0CB799A8BBD4DEC071D17119B80C1B15D9AA564187F46DB9DC5C885
-05D4CF7593FEED08AE35852F6F233B8A3888E1029F5F60E39891A7CA92196429
-645CC8545C24A0EF4B71F86266F1C03D578D66662C560B54F219052433C99E20
-C7476D5BB198568B6282908A6B972589FD9DF13B291FAA6BF80AA07EBAE0DADB
-2A5C290163EE73C4F159DB4465797447517183D3016560167789B3FB8DDF3680
-0AD0D46B59B05BD0F8E291A970F856C9797AFE19FE207F124D65A987E6BAA0C3
-9824D499C3A9E0EBFCED03B7E8AC0EEB7EC4B26487A864E8514F91A4B993BF0A
-D2DBAE348926515E92CAAB6950B867701101DA64B59DA1246441399AD08E8926
-D49440109403612C41427CB4C3450CA80EB07D8674AD84F7899AB32A18C3351A
-1645ADBCE41C2B7BF5CFB9376F38F865FB980B94C042AF0D1D8476FC567E7114
-CB300784A257F39D85CC8EA614EA0C48AD378BF4DF1A2767E6842234389AB724
-60AB73BC51F84542B59A5DB53B664D181AC5A1A5CFF2F3971CD910F5E5A5CD38
-D09CEC52616232E8E20C4255EBCAAEF1F9192F10EBFB34AB54C8D5B8D36B579A
-5421CBAE787A0655FFACF05AD8E8E8F689B36064F058BBB26D0E6454C703B39C
-F795FECBA78C88842B44842049E90883A88039633D876ABFE54202F35BD9F9D3
-70A3E0C31AA08CF8A8966D1FCADCB91EBC5FDC24ECC9CAB104828A931F338C4E
-AE87AE252D0F3403E14600B4FA5CD4CEE37DF8C7A901444F70E3EEBB2C4137C6
-9E3EC4FB00D1313C6EC1C2BC5380F3434CF5F2635D424DA21E6316EA75FBA5CF
-7EC2CE9631201BEDF7D7982D476ACCABBC5A452B0C1C76A00B1B6AD23001C1A3
-C494E6B82B98EED261F19255CAB52A09448FDE4E523E89F2B2773863EFDBF526
-F6415FD6DF91BCFC3D93E95EBC6A53D3AB8EED7563939DFD84BF364798E656AE
-FF4D41430D9FCE65BD2F85125E5E42C1193D0235108E6312C7B97C1FEB7FCD6A
-3D79F70BE07093FDE9DC099B282F3B7F2A41C67FE72E86EC7818DD66BCE93E46
-DD9AEB93A25FB47AC96DEEAFD80BBC7114DA109FCAE205B1D08A3AD8641A400F
-F2B471D677402C2B3890EA01F971C511FB4DF6F5AF9C68FA87E44977072A29CD
-4257AB3F7EC5B6804C20D4B127F02832FDD5666AC4FDD2C0005649CC6E4F914A
-9196BE5AC7D85D4767796CB01542EFDFBFD1E51C9C415371E4A5F3D68BE2536F
-F8EDBAE2521FCFC34A4274497638D4B9B39C14CD6E31C95F32A2CDC9F78917F7
-0C004ABA38A32EFF4DA64623A454C9755A43047355D0F187A779275B00FE5764
-30E1208D1E12CF6D908D84758F236BA6185333B56AFCB2C1B4677A7B6642D4FE
-E229F34ECAC2C9DE021B051C5E7D6DECF456D161EF9E3888C38E7F477CDEFC01
-97920D696B2722340A5951953B2BDDF103C6D0C690CD04445F241CD531C81838
-ECA1A02C4ED91032106D142AA4B899ACBB21177D905B42D04A280C0B61A0F8CD
-B510DFC46E922E8FEFFF31EE58AC1BE7AF1C70D2BF11727FF8C66D628695067E
-E6EABBA97AA5A75F955FD9E9A1B21E71A8078418766FC4AF8431B4E7C674A6F8
-4E82447B81F15D6703074BE8A13BF13399722CA91E136A552E9764333F41FD8E
-2DABA04817F8DE361C2E7BC23E9A963DECE999A6CBBEC7DE08652A8888AA1137
-EE0A0E4032A4B400C9A2488A55D8E25166A8E9805CC80E7D6C2D1E7C071C2E9B
-F2E652536A4591576D99BF1DD118244BA09A8255CEBBD18FEE5C0175D4177524
-9309626DE05FF0144BE9F2EB05FB51CE924EDC4A5C6376C758A7138BEFAF9BAD
-C89BC9834A8DF3790256119864AE0652E92FDAAE5A132557910C307C8C0C3FDE
-EE3E0C17D32CB28B6A21B8DC6ED6525F8D25EE0270704828DB9006F514EFB75D
-0671DD3B138DCFB01156B43D5B775B78AA95CF109628F5FC501927741031E60A
-D46466203CFA84D9A8EF065C43101E8FE1BA60E82E01A9CA67D7329B93A11260
-4CE84119FA0CD0E41EA3B645CA3F06059E7895526876F7C2110264C84B7681ED
-0784F82E6A160B7D3A6C520E430452B18DE47224A861D1CD872433844D7BEC16
-514AA67319F17771D796C88C2A928514D4907A1E58FBC561EE444292AB0A4759
-F809BE67A4EA7F152BA841FF3C838B9725F8F89C5EF28802C586A542131F9B93
-DF668AF74A34287FD1914BCCC8B3D2C698A8109D21BFAF245274BA33AA71D9C8
-531695BB46EA91917C40FF37F46A2A69D0AD619CF7EAE936FA1EF33CB85FFF35
-A9E78CEA2C74AC6148E612E880A58DD4FE573D6A10A0EEECA7E5DFC219E89E0D
-90843757F05759785D04F6F3E7DA269888170A90488097B5A3DD1B61CF3B618D
-05C68B2940DE15065AF933A83BB9145629BB3759B49F7C86D70E5282B52D3CC0
-331FE4C8208DA7005C2E44E683E24FD0188655DA87D01C8313FB35AC1EE14448
-B1681BD5ED81F7CA640248552B7A3EFB65ACA6DC132D09BE6B608E439A9DD0AB
-ADF752BAA226A75986D226714DA5F1AD47B8BEAC12E7E32A0992CDC54CC054B5
-4287D8531E25C390CD8293776D82149E60597DAE8B2E6D332D04AD39A8786E38
-6045D1417B3E88BE4467A0BBB146C04632E5C0B7693B0BFA5512101462605402
-E089EEAEBA41666BA74FC026C200A6DCDC7781DD9A3D184C71CABDCF53CDDDBB
-84A4926F982FA96E3A14FC3ECDAD8D9C1851CADE2BB68F88E736B4F6231366E2
-D31364FF60950EE333B36A0F02A35A355B4271C4A6B067C979E440BFF3FC69FB
-CE0998138FBE60ACB07A24261DC334C900BB422328D3EEB99B8D01FBEED832D0
-2D44948433DE5A22F0701447E03E7E6280273B87BC477C8C90AABA2883C2155E
-F130A10ABB57C94E43AEE5D9D65DA7D816C3289A2FC470215F4F9C42699E52E4
-D3FAD53FE861435C255B887D7AA50176BD2E93418BD0D53BB0F86D267207282C
-41E2AD75BF872A2FA4C39A9DF160244E592FD344BDB3BA471DD7A8EF658605D5
-51223D007026DB71F97D9AC1AB7955015C9A4C4317E9F9E219B77E2C46F97741
-78ADE503EFEAD4243473D329B84C60BB96ED07D171C49D2801762C40EA7BD7C3
-B216A1401727CB6E7E7233B23CFCDE2C3D62462FF15AB69568A0BAA15E10FC2C
-C33EC5E22A4FFE258E73B59D28BE7AC90A9DE63D329353B165087D8B58194815
-9BD0A3A335E7DAC0C49B880C7D85A242D5D562F2AB1087E1A46DD94F895B074B
-F632CC49C3765B417D6CA0DC7A355C672EA4F91DFB751B468FED48090BEB0232
-0959CE3E6E40C197DF33C03DE81999F0435D46E6225EAD2226438A0E19458BE5
-579699FBEA9BE41F3D997DC4CFF1C7591289617BC2F2AA7B3A895F025E2137EF
-B9FA6565C04E516228C59DE70340C275670404E519409BC8BAA33B2802992DA3
-A721FE0B5717181621A0161811DEAB802897A06B807B2035297A7A419D3D0998
-B30D68F6B4D586FF370A0EDED183A45ECF4C517B786A67E15FFE4B6A83CA0C8B
-6F9A740281F668009D1918BB427D1B34C7355EC2D4833778CF284A21A753EEED
-664A4F84173CEA11870081F1628850457EB8AD54823C01DF2D15A1CF4B33E0A7
-4B3F3310011E6625CBBBB8E775A650F0E0631F8897988BC2EFEECB8876B48DAB
-156CFD14BBD7BDF14489A025703DACEE33A25C9D9E552FC10EB121BD990A093A
-D9BDB0334A8396E6B58E9C9285F88FB9E4E990E347F532AF0827D9F0970FCC93
-6D17A43BF518CDE57DDDC9FA18381304AC09C7E255F76D26447A1217C70258DE
-6D3078E3128216FFC5EC01A82BE8D3958300065A227F77D236B6067222E8CFD6
-208EE7ED58446D94989279689241038F67A891614078D312E5F90783906578A2
-C818ACE8990471741AD58A7CF126C552AB44027B6AADC2501AFA286B5D65C7A5
-B6463E73BC9E888A0B231351F9A90E5991C4F0E2920107B3D966ECDE01763FFD
-DF9D0635327242732B6AE089A3D7FDE1742A7D74BD0749684602447B490BE0EF
-E01BBA07497B817CF0F73D4D2F14A1B29505311D52ED90F0812EEE440D815B14
-CE44F3BCD5EA5B822073A775C137A59DEED383F80C16CF859D8187335220FB73
-217A045C39B0C3C6661A4D536880DDE06366F403F27DD632BF659435E2411A08
-C30016C471B4206531776F98DCCDF313E62F08E93EEC8FADA4C6B5EB22D5D832
-FBB0DE8BCE851FE3D6D70504242B2E720F74AE49F0DE3CFF787E9CCD3D1502FE
-1622E86CBF9088F3B65E844145C879B2CE74AE24FDE843B657F9B8876DAF23DF
-81F133F5AB4652331126F0ABF1C2CA21127CC1062C06D1C430A12740DE92A00C
-B95A50696164F5AE380C643BBC7E4982881F17BCC8F9A8E3B5E38E6F4E32419B
-19CD0D69F986F5D80B7620E42509FF0A3E4EF0D7826E543D0D8D80F3D3C0A699
-4B5CDD02272D224A0B02CBADB71524EBBA68FB57FE024A54B9DD7A74BB6BA892
-EC5241A5C20D5BDA591AFE863BFD64B63F02C77B74EC2AD5D39589AAE2245F0C
-90AB09FB11A832F0791FB9FD8F892ADAAFB519BD8EE3756E6A5E1FE67735C694
-08E7996275F52F4AFDB24FD73E8F5C1B34296D4F41CF111FF08E88E3AF691122
-F196D4DEC545F68C76A68E4DE57C2CC706D0EB631367F288A4077044979D9E5F
-9EEE710C2130FA491D114A742D3C0EA68D50AA44B88C66EFC1F281AB320F2C8C
-800B1A4A4708B96CCFBC1B4726787096D3018AA87B2DC422E563BC4751D30E2E
-63554771794D0F4F055C20F20ED3CC9E20ADF726A6C5E84D7743B5F0FA99A0EE
-4958B8D53948E195ADDB8B8E4F40E387B36C14806025A5D96DB4F6B9ECAF177A
-1A0492B360759EF671DD4616E25746919511057F40FE14F69E4F4BD67BF11EAE
-E89026AC1DED805FF27846D642EAFC51E37C8E94C6B4141170988E314D8988F2
-00D56A9D1A89D3EAE006C604060B43F328A08DCA73991776A314C20441FAA4FE
-077CA7F6ED2FE421E90E83ECEBBEB42187DB5D3EB5003A27D69DE33C56AFCB9B
-25BAFF5F4F03E8CE5AB1A619B5973FF9FA4F0AC0DD867F7C0682609FFD7F10F3
-B7E6ADF7A62368DDC8E4CA4CEE3DDD15F02281672E41FD6C2FBB00E08EB201D3
-233E7AF3718BB51996C5EAA6B848E1076A825D8C5B0CCA4A2852A6C9352137B7
-D40F18FAFD9085155798496DE75F33E972B040B6197692E3E6D43CBFBE9FE71B
-700B062083A2099E74D90F3E05D60AC091D0EA1B4C17F383ECEF98D6A50B1D91
-A82741FD6D9AFEE053B38B7CE59DD5F2782B5B360CFF78A09DC6C2093FF58127
-CD74355F7FB083746618FF6B61ED1E12E07582FEE7C78195C625BC7E90262C52
-8FC10144B4B6F99303ADDD66CCC93ABB0387E1E61C90CEFFCE16DD8CE4F6B6B4
-4F7ADBB0111456B7C2DAA99C5FF8B04FFA77DBC0D8063796296D8B8700544437
-0897BA71750E947209330045EC9DFAA919E64BCB8F1B56985D15DBA491E8E2EA
-14FC8B31CD552DC96FA440AE98D04954D3E7E5BDA0681FA27F32F9BFD5D4C365
-128BBC8AF47FAE2039F90D0F30D3DCC141B99DDA8151E0DB243E6210A1835CF1
-7154C96DBC2C723A7576580747AA18452EC87ECC2F55F41935C8FEB80A690351
-5D3F3E67970FA93DBBD626A519EFFF4756B33641F56F7D16B7712FD09C726572
-0932166A7BAADA3B47E725D74564A155E0BC1CF8E5BC05F2D4970ADF60BFF161
-01F6E31EF577F8FB7560B2CDF775834A2DEB6B337D096EC2BDF113ACF27E2A79
-6E670C2F1739206DF052D43619D20461E52DFEEFD7A7A7F31690B71EF062EF31
-C9FF3205FDBD1A2A3DEA550BD3B6373C59F4CE5CB845F9C6297FE5641EB90231
-D4F6A2F919164779CD527F1C142AD7E47A63ABC26DACAC5C278EF4AB6B4121CF
-793443E1E171870E95A2ABE098CE0A147CD373660BB20BF4ADADEFF4642FA1C7
-398796EA9FF642270D6176ABF5DFF5BB002C2C01A9C42DC3FBA1453B6632AD67
-A7EAC9074CD11D2CD46675DA0F910CB13BF42A155DFA30FE582D4FB19C6D45B1
-2F3C92947A8A2B26B81CC97421A1F5946C42171675F0A19464758E0D64A9D324
-3E3C45CE9E556FC942572D4508485E9543239F26C084D0D659D5B301928F014D
-D8574A69D9046A2A4FBA6C993341C118E0AA7366CBC7C45EF717D6233B9D3F19
-C46ED705D06962E80383E102896587999E2A9F04F020348A0EE5EE61054810C0
-26C53DFD608E885B6F2F2E2AB9E8FD67E6057D42440102D5CE2AA06982B16A3A
-6A9284F59E13EFD3EA8A5B1679864E055A8783FE74E4B2A28C5B968401836C83
-0B94AD89084B0A31B577E1CCF157851885E41FE7FF0D5D218EAECEE2D2130A32
-2FEDEDEC8B9F9223CA33A47B8CE042DD7BD35B5B24BB9F115F5D5204BCC0857F
-CE329655D72CAE8C8E15F53740727441F8B2855126BBE70F144E989C327173AB
-6996AEDAC678F5BDD16A92C2837C4EFCDCF43804BD2A145DD54170B0941BCE81
-A17771E520388AC4D0E22D6084BAA83F1F4EB1D8B2E0CB84954EDDC8E9B3A616
-ED3A91CEDDB972848E83E3AC3ECE3BA865BEC7C96A4586955682E4680B4C2364
-8054ED58647C18A3CDB8AF5C736C1E5036CB7A09CAEBBC6FA47B698DDF0AC81B
-2407B47FE67EB74B7DDAEC1AA8F0327BB005D4E375150D8FC69444FDB6D7B68C
-39CABE4C7A0FC3CD161843EEFB1A3003F109C7F187781E19CB060054FEFA21D4
-C9778A937812E8F06DD70C56424D57B4441A8D118769587B1E49F090CD179081
-3C33AA3309F3CBC69108104C7F68BA89C8C1D503507DE3A2FD2C81491DB1D511
-9876EB1AD7E66FCCC675DA4BF25F150BD3D0F622AD73C6C805F3DA6B265CBAE1
-83AEDFF42461D63EA338502AE6261988068E1C52E5EFC5BE1D0E017C2AB7FF2F
-B27E42A4A7D8CE86CB6F36F7C218CB880230EA737CC971E8D70825C7520E5E33
-C2110E3E26F51D30B8F058228E5D2C45966D9107725141908E74BBB213339E7D
-7437EECEAEBAC39BAD6A5595EF66E6B4BCE2C565596B0FC5069CFC1CF8B39600
-EF3B2BA9222991BEE9C55D4434AD761684DA2B61EA399A2B53A2D2E89CEFB6B9
-D3606854873444F53CE1A2230E3836B1DD652464551AB8ECB94CDD297C2AC906
-35B980680E12A891D6F39DBB7DCADF853394CF46FECCF0C80D8FD0A82009256B
-22926139A5CF6A06FFE6F4EF6D1843436DA4F3F2ECB504D3C91961DCB8F78ADF
-6A8D05D40225E125F7ACE0530B28BD86BEE2499AA4B62FB53329AEF6D66B1428
-6731C3E6A5AF5926F9D407E9999FCBF9580627F25AAE06DD34BDA8CBA179634C
-8558B9E23E3CDE30053F8763BC64CF595B25E8CDCEBE15915E791E7387A2F979
-20A0EACC18A38055AAF917E6C768981BFD94380D7C33EB04086236ED74FB3B50
-56B9892412BCA67DCDD27CC508CC94AD51F7FEE2D6133BB310293BA9E36DEC27
-E014283EBB9A46DA887CAEC8B98E64F9A4441D254DFB203D7897FEA54E8B6A95
-2F2D00B75E4AB45881DC1361C37AC1031AB89F280929DFB9FA92BCD87E065F50
-7D0FFF1309AD49D259D59AFA825F892EE7FB303DE51AED493436B5B0BADC8941
-D5AF414E47B3D949C5411A47E5872731E797B385AA807D2D6651A78E45A998DC
-21DD8B1F94370ED46CF165915E884537DD1B64489BDE456028592EF0C6041E59
-DC634B564B96B3A5861497DBEA1F6F06EBC125E74C94BB85022343A2BBB7B725
-C2AE27BA791FA69EEFF1B0DD3BC5B80B7CF56B52729BAE6E54810AC9D00C29B9
-C9455F039CB5EDAABA887F8598EB390D5D28AD387F429321A8D5FAF61BD8DCA8
-A25ACC7130C80D9EFEF633D47BA80022AA9CF477EC073D2FC3CBC4D685CBD238
-28E9E89BE648DEA20B1467FCFC4838141BC6ABFC046C5A80C250663637CB356A
-B58080178FCF7B78E552415D071D11625081AF4708E78D843737B7357E638DA9
-501BCEF113EE961C84339E91202E5E2AC57BE8C636141F03A9CE8E97C7C8F374
-6AFA335DCE0B6B68C7D94C1B6D0C73DFF832580B2D1B1193427578DDC1895DC7
-1A9D8B9CE3157FFD118CF111BA33F1FBD445DBEBC1D7CDA5713858CF4CDA224F
-38201BE52F2947D08F028378E787A2837AAFB1EB738EBEF4EBF2B34BCA1F0526
-8295CBC517E30CE49B86F196C26D982FFE650BC2B276583D716D1DCAF24267E7
-A551006687684174D71D920D7C1E2FA12A7C8F6B5CD4E77942D6A96A112070A8
-BCB56BCBEF93A1CE255984B93E92AA8854690A8AE7D416450869534787FDCC5C
-23AAE383E05AA31581E3F2F31531A41F516DFFCCA33BD147F100CE8C11D3D3C4
-CAB8E10DF7425F2FB07B105F60BBCB8F7429201180B4ADBBF92B992038394E5F
-346A7D4B3C12CD9A2A50884D1A465BCC81EDA8D081108DFF1D8BE67BC9C39812
-12B65A712D3ACD7527976CFE1276BEFF410D08043FA52A3EB2C6E363D5E86D24
-3D464A688F9482A7937D9F6F468B2ACAD117378FC99D98238AE59DBC628C2EDD
-04B9D0A1199A8979BDC68D0B820C22E65937CE89170483FDF9C4B3BD8B17DA90
-377561E6D1F40ADC6549A5FD336DB23AB4852E4B696DD1DF77D9C0F70F61335A
-811EC0B0D8D9C3C37CD98A906F5A2B4489C29DF8F47FD4D3E8961458135F6AA6
-77EDB4F176F23CC16D18FEC0B3911F6C75AC0909D42974887641F376E5B3EBE3
-B20B18FF22225F0C21F795D202B5F942547F427617618993AAA2B32A817F6572
-69B1FE76FACD292337F7F1432236C168A0F0D51CC6507CA9D7C8F77C784C50DE
-BD2DB783C82D68EBA9943D389E442D231DDB44F37C185B7957B623E2196CDE38
-7BBE1072868E5D91D6EF1F06BCAC2469686B7155FA86710AF9513641E0F8E260
-464C85B44E51A7C3FB93F99465D4668F996643EB238E3E550610246E00216666
-A49A3FDD0CAA12DAD03A3F6222E97CF41FAD4AC3687CE9311C742E1E7B4988E6
-F6CD130CC8187873CD106317C2217E590710FEE707DA5F2DCA5D913344E2E499
-74D0D0C519DFB8B734EE6CBDA83B09AAD538CCECFB665FF3187EF0F649EFF80C
-4498A585716BCB9EEB79CE45FC74A25D59F9F254C0F1901A655FF43F72BEE91B
-123E2CC86388FAE4E2B00C53B6137C649650D097763816B60ABD8ED1DE810EF4
-F1A080341F88874B09C1B0693653566681BB35553CD0BF07EC5322228555D459
-AC9C0E77D320C0AFB57FAC1525347AE502D6862897B7CBB9C35B7799D18EFF32
-6DE271A2C8D8B7C0929E69477A77F37858ABC14BCE690230AF617BF8AB621689
-D2C9676B355C672EA4FF369617DD0D36845DB212AB7E35FA521F8F2309228F8A
-A8C47A01259D8E4B7AC730D853357689F0654969C4FF6E8CB5331710735672AB
-CFE17A87DC58953C778736AE0CC5DB0D7CFE41AF06EF6DE0CF11B025D85999C1
-AF52A405F3081103D5A219ED332444BAB77D418B6080A7A4A932000009A60745
-AF4239B9E19485FF61A1FF624621718A798C370AE385F6F30CB522ABD981278D
-A771E952399ABFA74DB1E7505ED748DF4A794333C135AEEA368AE4FB80280565
-09BCEBC737FA30D660117415EBF6D883CCE0B9B52562424D2B874B1B70787222
-BD13ED345A6CB186F1B3686561D4E757758DE9E3A0B3287635BDDC69A3A33F27
-5BD1C166309961307C4C3FDA4D8BDE6E08D03B941FDC40105FFF53226742613F
-A43AF882FD2D142187D698B81571374A3EA501F6E6750261D2AF3C737532FA87
-7988FFAFA6A95706BB79E6D01A8114E48DC93BE207CA1037D83881F29591DE1C
-AF9098347780DC77F393469C7012C42D31A1D9CE4AE2FAD4E3948E2A50AAAE30
-292BAFA6F980DFA687FFBF8F72B4A0DA16671AD2CFD65DC351D3FE3AF51D666D
-3E0D56B5DE2A0AF4C432243E37BCA75428F6DDF078ED501F9190D1B13085EE00
-C65067368012314DD1CFC7BC946F626F8C1339A7922FE1FE7A69ECB6DD695FDD
-1D988652EE8707D2909C5D8E0CE9B4998CDD755044450F314D760CE3128CB512
-F852E26DF056F7B5E3A2A54DDAAF6351193DD4BA2923EF40D6388324AA7913A8
-49B4EAB2E6E552DE7829C0CC6FD60C0F9109411B9EDCC8ECE40E96422F0A871A
-8B2EBC60F3D77F9F25802CCEBA7418E8C1B9D9B9D64503F96CAC529082AAE772
-2B0A0A7E
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-cleartomark
-%%EndFont 
-TeXDict begin 39139632 55387786 1000 300 300 (rluserman.dvi)
-@start /Fa 134[20 3[20 20 20 20 2[20 20 20 20 2[20 20
-2[20 3[20 97[{}13 37.3599 /CMSLTT10 rf /Fb 134[20 20
-20 20 20 20 20 20 1[20 20 20 20 20 20 1[20 20 20 20 20
-20 20 20 20 20 9[20 20 20 20 2[20 1[20 1[20 2[20 1[20
-20 1[20 20 20 20 5[20 7[20 1[20 1[20 20 20 20 2[20 20
-20 39[{}48 37.3599 /CMTT9 rf /Fc 167[31 3[30 23 2[28
-1[31 38 26 1[21 1[31 33 27 1[32 30 67[{}13 41.511 /CMR10
-rf /Fd 134[32 32 1[32 34 24 24 25 1[34 31 34 51 17 32
-1[17 34 31 19 28 34 27 34 30 7[46 4[43 34 46 3[48 58
-37 48 1[23 48 1[39 40 1[44 44 46 8[31 31 31 31 31 31
-31 31 2[17 46[{}46 54.5455 /CMBX12 rf /Fe 134[24 24 33
-1[25 18 18 18 24 25 23 25 38 13 24 1[13 25 23 14 20 1[20
-25 23 9[47 1[34 33 25 33 1[31 35 34 1[28 35 1[16 34 1[30
-31 35 33 32 34 19[15 45[{}41 45.4545 /CMSL10 rf /Ff 139[15
-19 19 3[26 4[14 1[21 90[26 12[{}7 45.4545 /CMTI10 rf
-/Fg 134[24 24 24 24 24 1[24 24 24 1[24 24 1[24 24 24
-24 1[24 24 24 24 1[24 24 1[24 2[24 14[24 24 1[24 1[24
-2[24 24 24 17[24 24 2[24 5[24 39[{}33 45.4545 /CMSLTT10
-rf /Fh 135[28 2[28 1[21 2[25 29 28 4[14 1[29 24 25 1[27
-1[28 97[{}12 45.4545 /CMCSC10 rf /Fi 197[13 58[{}1 45.4545
-/CMMI10 rf /Fj 197[16 58[{}1 59.7758 /CMMI12 rf /Fk 135[43
-2[45 31 32 33 1[45 40 45 67 22 2[22 1[40 25 37 45 36
-45 39 11[62 56 5[63 1[48 4[63 51 53 62 58 1[61 15[40
-49[{}29 71.731 /CMBX12 rf /Fl 242[45 13[{}1 45.4545 /CMSY10
-rf /Fm 134[35 35 49 35 37 26 27 27 1[37 34 37 56 19 2[19
-37 34 21 31 37 30 37 33 9[69 1[52 1[37 50 3[53 64 40
-2[25 53 53 42 44 52 49 48 51 6[19 4[34 34 34 34 34 2[19
-1[19 44[{}46 59.7758 /CMBX12 rf /Fn 129[24 24 1[24 24
-24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24
-24 24 24 24 24 24 24 1[24 1[24 24 24 1[24 3[24 24 24
-24 24 24 24 24 24 24 24 1[24 24 24 24 24 24 24 24 24
-24 24 24 24 24 1[24 1[24 24 1[24 3[24 24 24 24 24 24
-1[24 24 24 24 2[24 24 24 24 33[{}77 45.4545 /CMTT10 rf
-/Fo 131[45 23 20 24 24 33 24 25 18 18 18 24 25 23 25
-38 13 24 14 13 25 23 14 20 25 20 25 23 13 2[13 23 13
-28 34 34 47 34 34 33 25 33 35 31 35 34 42 28 35 23 16
-34 36 30 31 35 33 32 34 5[13 13 23 23 23 23 23 23 23
-23 23 23 23 13 15 13 2[18 18 13 4[23 20[25 25 27 11[{}81
-45.4545 /CMR10 rf /Fp 134[51 4[38 38 40 3[54 1[27 2[27
-2[30 44 54 43 54 47 11[74 2[72 3[76 1[58 2[36 1[76 71[{}19
-86.0772 /CMBX12 rf end
-%%EndProlog
-%%BeginSetup
-%%Feature: *Resolution 300dpi
-TeXDict begin
-%%PaperSize: A4
- end
-%%EndSetup
-%%Page: 1 1
-TeXDict begin 1 0 bop 75 659 a Fp(GNU)33 b(Readline)f(Library)f(User)i
-(In)m(terface)p 75 709 1800 17 v 936 757 a Fo(Edition)15
-b(6.2,)e(for)i Fn(Readline)f(Library)g Fo(V)l(ersion)h(6.2.)1559
-811 y(Septem)o(b)q(er)h(2010)75 2467 y Fm(Chet)22 b(Ramey)-6
-b(,)23 b(Case)e(W)-6 b(estern)23 b(Reserv)n(e)f(Univ)n(ersit)n(y)75
-2534 y(Brian)g(F)-6 b(o)n(x,)23 b(F)-6 b(ree)23 b(Soft)n(w)n(are)f(F)-6
-b(oundation)p 75 2570 1800 9 v eop end
-%%Page: 2 2
-TeXDict begin 2 1 bop 75 1512 a Fo(This)19 b(man)o(ual)f(describ)q(es)i
-(the)g(end)g(user)f(in)o(terface)g(of)g(the)g(GNU)g(Readline)h(Library)
-f(\(v)o(ersion)f(6.2,)75 1567 y(Septem)o(b)q(er)e(6)f(2010\),)f(a)h
-(library)f(whic)o(h)h(aids)g(in)g(the)g(consistency)h(of)e(user)i(in)o
-(terface)f(across)f(discrete)75 1621 y(programs)g(whic)o(h)h(pro)o
-(vide)g(a)g(command)g(line)g(in)o(terface.)75 1689 y(Cop)o(yrigh)o(t)
-301 1688 y(c)289 1689 y Fl(\015)g Fo(1988{2011)e(F)l(ree)i(Soft)o(w)o
-(are)f(F)l(oundation,)g(Inc.)75 1756 y(P)o(ermission)h(is)g(gran)o(ted)
-h(to)f(mak)o(e)h(and)g(distribute)g(v)o(erbatim)e(copies)i(of)g(this)g
-(man)o(ual)f(pro)o(vided)h(the)75 1811 y(cop)o(yrigh)o(t)e(notice)h
-(and)g(this)g(p)q(ermission)f(notice)h(are)g(preserv)o(ed)h(on)f(all)f
-(copies.)195 1878 y(P)o(ermission)i(is)h(gran)o(ted)g(to)g(cop)o(y)l(,)
-h(distribute)f(and/or)g(mo)q(dify)g(this)g(do)q(cumen)o(t)h(under)195
-1933 y(the)h(terms)f(of)h(the)g(GNU)g(F)l(ree)g(Do)q(cumen)o(tation)f
-(License,)i(V)l(ersion)f(1.3)f(or)g(an)o(y)h(later)195
-1988 y(v)o(ersion)13 b(published)h(b)o(y)g(the)g(F)l(ree)f(Soft)o(w)o
-(are)g(F)l(oundation;)g(with)g(no)g(In)o(v)m(arian)o(t)h(Sections,)195
-2042 y(with)h(the)g(F)l(ron)o(t-Co)o(v)o(er)e(texts)i(b)q(eing)h(\\A)f
-(GNU)g(Man)o(ual",)f(and)h(with)g(the)g(Bac)o(k-Co)o(v)o(er)195
-2097 y(T)l(exts)h(as)g(in)g(\(a\))f(b)q(elo)o(w.)23 b(A)16
-b(cop)o(y)g(of)g(the)g(license)g(is)g(included)h(in)f(the)g(section)g
-(en)o(titled)195 2152 y(\\GNU)f(F)l(ree)g(Do)q(cumen)o(tation)f
-(License".)195 2219 y(\(a\))g(The)h(FSF's)g(Bac)o(k-Co)o(v)o(er)f(T)l
-(ext)h(is:)k(Y)l(ou)c(are)g(free)g(to)g(cop)o(y)g(and)g(mo)q(dify)g
-(this)f(GNU)195 2274 y(man)o(ual.)19 b(Buying)c(copies)g(from)f(GNU)h
-(Press)g(supp)q(orts)g(the)g(FSF)g(in)g(dev)o(eloping)f(GNU)195
-2329 y(and)h(promoting)f(soft)o(w)o(are)g(freedom.")75
-2451 y(Published)h(b)o(y)h(the)f(F)l(ree)g(Soft)o(w)o(are)f(F)l
-(oundation)75 2506 y(59)h(T)l(emple)g(Place,)f(Suite)i(330,)75
-2560 y(Boston,)e(MA)h(02111-1307)75 2615 y(USA)p eop
-end
-%%Page: -1 3
-TeXDict begin -1 2 bop 1862 -58 a Fo(i)75 149 y Fk(T)-7
-b(able)28 b(of)e(Con)n(ten)n(ts)75 320 y Fm(1)67 b(Command)22
-b(Line)h(Editing)17 b Fj(:)10 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)39
-b Fm(1)137 389 y Fo(1.1)45 b(In)o(tro)q(duction)15 b(to)f(Line)i
-(Editing)t Fi(:)7 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)h(:)18 b Fo(1)137 444 y(1.2)45 b(Readline)15
-b(In)o(teraction)5 b Fi(:)i(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)19
-b Fo(1)200 499 y(1.2.1)43 b(Readline)16 b(Bare)f(Essen)o(tials)5
-b Fi(:)h(:)h(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)19 b Fo(1)200 553 y(1.2.2)43 b(Readline)16 b(Mo)o(v)o(emen)o(t)e
-(Commands)5 b Fi(:)i(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)19
-b Fo(2)200 608 y(1.2.3)43 b(Readline)16 b(Killing)e(Commands)d
-Fi(:)6 b(:)i(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)25
-b Fo(2)200 663 y(1.2.4)43 b(Readline)16 b(Argumen)o(ts)7
-b Fi(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)h(:)f(:)g(:)21 b Fo(3)200 718 y(1.2.5)43 b(Searc)o(hing)15
-b(for)g(Commands)g(in)g(the)g(History)6 b Fi(:)g(:)h(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)20
-b Fo(3)137 773 y(1.3)45 b(Readline)15 b(Init)g(File)d
-Fi(:)7 b(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)27 b Fo(4)200
-827 y(1.3.1)43 b(Readline)16 b(Init)f(File)f(Syn)o(tax)9
-b Fi(:)e(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)23
-b Fo(4)200 882 y(1.3.2)43 b(Conditional)14 b(Init)h(Constructs)e
-Fi(:)8 b(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)29
-b Fo(10)200 937 y(1.3.3)43 b(Sample)16 b(Init)f(File)7
-b Fi(:)f(:)h(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)22 b Fo(11)137 992 y(1.4)45
-b(Bindable)15 b(Readline)h(Commands)7 b Fi(:)f(:)h(:)h(:)f(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)22 b Fo(14)200 1046 y(1.4.1)43
-b(Commands)15 b(F)l(or)g(Mo)o(ving)5 b Fi(:)h(:)h(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)20 b Fo(14)200
-1101 y(1.4.2)43 b(Commands)15 b(F)l(or)g(Manipulating)e(The)j(History)
-10 b Fi(:)c(:)h(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-25 b Fo(14)200 1156 y(1.4.3)43 b(Commands)15 b(F)l(or)g(Changing)f(T)l
-(ext)e Fi(:)7 b(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)27 b Fo(16)200
-1211 y(1.4.4)43 b(Killing)14 b(And)i(Y)l(anking)c Fi(:)c(:)f(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)27
-b Fo(17)200 1266 y(1.4.5)43 b(Sp)q(ecifying)16 b(Numeric)f(Argumen)o
-(ts)10 b Fi(:)c(:)i(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)24 b Fo(18)200
-1320 y(1.4.6)43 b(Letting)15 b(Readline)h(T)o(yp)q(e)f(F)l(or)g(Y)l(ou)
-7 b Fi(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)22 b Fo(18)200
-1375 y(1.4.7)43 b(Keyb)q(oard)16 b(Macros)c Fi(:)6 b(:)h(:)g(:)h(:)f(:)
-g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)26
-b Fo(19)200 1430 y(1.4.8)43 b(Some)16 b(Miscellaneous)e(Commands)f
-Fi(:)7 b(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)29 b Fo(19)137 1485
-y(1.5)45 b(Readline)15 b(vi)g(Mo)q(de)c Fi(:)c(:)h(:)f(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)h(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)26 b Fo(21)75 1606 y Fm(App)r(endix)d(A)80
-b(GNU)22 b(F)-6 b(ree)23 b(Do)r(cumen)n(tation)e(License)223
-1672 y Fj(:)10 b(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)37
-b Fm(22)p eop end
-%%Page: 1 4
-TeXDict begin 1 3 bop 75 -58 a Fo(Chapter)15 b(1:)k(Command)c(Line)h
-(Editing)1075 b(1)75 149 y Fk(1)41 b(Command)28 b(Line)f(Editing)75
-266 y Fo(This)15 b(c)o(hapter)g(describ)q(es)h(the)f(basic)g(features)g
-(of)f(the)i Fh(gnu)f Fo(command)g(line)g(editing)f(in)o(terface.)75
-382 y Fm(1.1)33 b(In)n(tro)r(duction)23 b(to)f(Line)h(Editing)75
-462 y Fo(The)15 b(follo)o(wing)e(paragraphs)i(describ)q(e)h(the)f
-(notation)f(used)h(to)g(represen)o(t)g(k)o(eystrok)o(es.)137
-529 y(The)k(text)e Fg(C-k)h Fo(is)f(read)i(as)e(`Con)o(trol-K')f(and)j
-(describ)q(es)f(the)h(c)o(haracter)e(pro)q(duced)i(when)g(the)f
-Fn(k)75 584 y Fo(k)o(ey)d(is)g(pressed)h(while)e(the)h(Con)o(trol)f(k)o
-(ey)h(is)g(depressed.)137 651 y(The)h(text)g Fg(M-k)f
-Fo(is)h(read)g(as)f(`Meta-K')g(and)h(describ)q(es)h(the)f(c)o(haracter)
-f(pro)q(duced)i(when)g(the)f(Meta)75 705 y(k)o(ey)g(\(if)g(y)o(ou)g(ha)
-o(v)o(e)g(one\))h(is)f(depressed,)h(and)g(the)g Fn(k)f
-Fo(k)o(ey)g(is)g(pressed.)25 b(The)17 b(Meta)e(k)o(ey)i(is)f(lab)q
-(eled)g Fn(ALT)75 760 y Fo(on)f(man)o(y)f(k)o(eyb)q(oards.)20
-b(On)15 b(k)o(eyb)q(oards)g(with)f(t)o(w)o(o)f(k)o(eys)i(lab)q(eled)g
-Fn(ALT)f Fo(\(usually)g(to)g(either)h(side)f(of)h(the)75
-815 y(space)g(bar\),)f(the)h Fn(ALT)g Fo(on)g(the)g(left)f(side)h(is)g
-(generally)f(set)h(to)f(w)o(ork)g(as)h(a)f(Meta)g(k)o(ey)l(.)20
-b(The)c Fn(ALT)e Fo(k)o(ey)h(on)75 870 y(the)f(righ)o(t)e(ma)o(y)h
-(also)g(b)q(e)h(con\014gured)g(to)f(w)o(ork)g(as)g(a)g(Meta)g(k)o(ey)g
-(or)g(ma)o(y)g(b)q(e)i(con\014gured)f(as)f(some)g(other)75
-925 y(mo)q(di\014er,)i(suc)o(h)g(as)g(a)g(Comp)q(ose)g(k)o(ey)g(for)g
-(t)o(yping)f(accen)o(ted)i(c)o(haracters.)137 992 y(If)d(y)o(ou)f(do)g
-(not)g(ha)o(v)o(e)f(a)h(Meta)g(or)f Fn(ALT)h Fo(k)o(ey)l(,)h(or)e
-(another)h(k)o(ey)g(w)o(orking)f(as)h(a)g(Meta)f(k)o(ey)l(,)i(the)f
-(iden)o(tical)75 1047 y(k)o(eystrok)o(e)h(can)i(b)q(e)f(generated)h(b)o
-(y)f(t)o(yping)f Fn(ESC)h Ff(\014rst)p Fo(,)f(and)i(then)f(t)o(yping)g
-Fn(k)p Fo(.)19 b(Either)14 b(pro)q(cess)g(is)g(kno)o(wn)75
-1101 y(as)h Fe(metafying)j Fo(the)d Fn(k)g Fo(k)o(ey)l(.)137
-1169 y(The)21 b(text)e Fg(M-C-k)h Fo(is)g(read)g(as)f(`Meta-Con)o
-(trol-k')f(and)i(describ)q(es)h(the)f(c)o(haracter)g(pro)q(duced)h(b)o
-(y)75 1223 y Fe(metafying)d Fg(C-k)p Fo(.)137 1290 y(In)h(addition,)e
-(sev)o(eral)h(k)o(eys)f(ha)o(v)o(e)h(their)g(o)o(wn)f(names.)28
-b(Sp)q(eci\014cally)l(,)19 b Fn(DEL)p Fo(,)f Fn(ESC)p
-Fo(,)g Fn(LFD)p Fo(,)g Fn(SPC)p Fo(,)g Fn(RET)p Fo(,)75
-1345 y(and)f Fn(TAB)g Fo(all)f(stand)h(for)g(themselv)o(es)g(when)h
-(seen)f(in)g(this)g(text,)g(or)g(in)g(an)g(init)f(\014le)i(\(see)f
-(Section)g(1.3)75 1400 y([Readline)e(Init)g(File],)e(page)h(4\).)20
-b(If)15 b(y)o(our)f(k)o(eyb)q(oard)h(lac)o(ks)f(a)g Fn(LFD)h
-Fo(k)o(ey)l(,)f(t)o(yping)g Fn(C-j)h Fo(will)e(pro)q(duce)j(the)75
-1455 y(desired)f(c)o(haracter.)20 b(The)15 b Fn(RET)g
-Fo(k)o(ey)g(ma)o(y)f(b)q(e)i(lab)q(eled)f Fn(Return)g
-Fo(or)f Fn(Enter)h Fo(on)g(some)g(k)o(eyb)q(oards.)75
-1571 y Fm(1.2)33 b(Readline)21 b(In)n(teraction)75 1651
-y Fo(Often)c(during)f(an)g(in)o(teractiv)o(e)f(session)g(y)o(ou)h(t)o
-(yp)q(e)h(in)f(a)g(long)f(line)h(of)g(text,)g(only)g(to)f(notice)h
-(that)g(the)75 1705 y(\014rst)g(w)o(ord)f(on)h(the)h(line)f(is)f(missp)
-q(elled.)23 b(The)16 b(Readline)h(library)e(giv)o(es)g(y)o(ou)h(a)g
-(set)g(of)g(commands)g(for)75 1760 y(manipulating)d(the)i(text)g(as)f
-(y)o(ou)h(t)o(yp)q(e)g(it)f(in,)g(allo)o(wing)f(y)o(ou)i(to)f(just)h
-(\014x)g(y)o(our)f(t)o(yp)q(o,)g(and)h(not)g(forcing)75
-1815 y(y)o(ou)f(to)f(ret)o(yp)q(e)h(the)g(ma)s(jorit)o(y)e(of)i(the)g
-(line.)19 b(Using)14 b(these)g(editing)f(commands,)h(y)o(ou)g(mo)o(v)o
-(e)f(the)h(cursor)75 1870 y(to)i(the)i(place)f(that)f(needs)i
-(correction,)f(and)g(delete)g(or)g(insert)f(the)i(text)e(of)h(the)g
-(corrections.)25 b(Then,)75 1924 y(when)13 b(y)o(ou)f(are)g
-(satis\014ed)g(with)g(the)h(line,)f(y)o(ou)g(simply)g(press)g
-Fn(RET)p Fo(.)19 b(Y)l(ou)12 b(do)h(not)f(ha)o(v)o(e)g(to)g(b)q(e)h(at)
-f(the)g(end)75 1979 y(of)k(the)h(line)f(to)g(press)h
-Fn(RET)p Fo(;)g(the)f(en)o(tire)g(line)h(is)f(accepted)h(regardless)f
-(of)g(the)h(lo)q(cation)e(of)i(the)f(cursor)75 2034 y(within)e(the)i
-(line.)75 2133 y Fd(1.2.1)30 b(Readline)20 b(Bare)g(Essen)n(tials)75
-2207 y Fo(In)d(order)e(to)h(en)o(ter)g(c)o(haracters)f(in)o(to)g(the)h
-(line,)g(simply)f(t)o(yp)q(e)h(them.)23 b(The)16 b(t)o(yp)q(ed)g(c)o
-(haracter)g(app)q(ears)75 2262 y(where)g(the)h(cursor)f(w)o(as,)f(and)h
-(then)h(the)f(cursor)g(mo)o(v)o(es)g(one)g(space)g(to)g(the)g(righ)o
-(t.)22 b(If)17 b(y)o(ou)f(mist)o(yp)q(e)f(a)75 2317 y(c)o(haracter,)f
-(y)o(ou)h(can)g(use)h(y)o(our)f(erase)g(c)o(haracter)f(to)h(bac)o(k)g
-(up)g(and)h(delete)f(the)g(mist)o(yp)q(ed)g(c)o(haracter.)137
-2384 y(Sometimes)g(y)o(ou)g(ma)o(y)g(mist)o(yp)q(e)g(a)g(c)o(haracter,)
-f(and)i(not)f(notice)g(the)g(error)g(un)o(til)g(y)o(ou)g(ha)o(v)o(e)g
-(t)o(yp)q(ed)75 2438 y(sev)o(eral)f(other)g(c)o(haracters.)19
-b(In)c(that)e(case,)i(y)o(ou)f(can)g(t)o(yp)q(e)h Fg(C-b)f
-Fo(to)g(mo)o(v)o(e)f(the)i(cursor)f(to)g(the)g(left,)g(and)75
-2493 y(then)i(correct)e(y)o(our)h(mistak)o(e.)k(Afterw)o(ards,)13
-b(y)o(ou)i(can)g(mo)o(v)o(e)g(the)g(cursor)g(to)g(the)g(righ)o(t)f
-(with)g Fg(C-f)p Fo(.)137 2560 y(When)j(y)o(ou)f(add)g(text)g(in)g(the)
-h(middle)f(of)g(a)f(line,)h(y)o(ou)g(will)f(notice)h(that)g(c)o
-(haracters)f(to)h(the)g(righ)o(t)75 2615 y(of)e(the)g(cursor)g(are)g
-(`pushed)h(o)o(v)o(er')f(to)f(mak)o(e)h(ro)q(om)g(for)f(the)i(text)f
-(that)f(y)o(ou)h(ha)o(v)o(e)g(inserted.)20 b(Lik)o(ewise,)75
-2670 y(when)f(y)o(ou)g(delete)g(text)f(b)q(ehind)i(the)f(cursor,)g(c)o
-(haracters)f(to)g(the)h(righ)o(t)e(of)h(the)h(cursor)g(are)f(`pulled)p
-eop end
-%%Page: 2 5
-TeXDict begin 2 4 bop 75 -58 a Fo(Chapter)15 b(1:)k(Command)c(Line)h
-(Editing)1075 b(2)75 149 y(bac)o(k')11 b(to)g(\014ll)f(in)i(the)f
-(blank)g(space)h(created)f(b)o(y)h(the)f(remo)o(v)m(al)f(of)h(the)h
-(text.)18 b(A)11 b(list)f(of)h(the)h(bare)f(essen)o(tials)75
-204 y(for)k(editing)f(the)h(text)g(of)g(an)g(input)g(line)g(follo)o
-(ws.)75 281 y Fg(C-b)168 b Fo(Mo)o(v)o(e)14 b(bac)o(k)h(one)h(c)o
-(haracter.)75 358 y Fg(C-f)168 b Fo(Mo)o(v)o(e)14 b(forw)o(ard)g(one)h
-(c)o(haracter.)75 434 y Fn(DEL)g Fo(or)f Fn(Backspace)315
-489 y Fo(Delete)h(the)g(c)o(haracter)g(to)f(the)h(left)g(of)g(the)g
-(cursor.)75 566 y Fg(C-d)168 b Fo(Delete)15 b(the)g(c)o(haracter)g
-(underneath)h(the)f(cursor.)75 642 y(Prin)o(ting)f(c)o(haracters)315
-697 y(Insert)h(the)h(c)o(haracter)e(in)o(to)g(the)i(line)f(at)f(the)h
-(cursor.)75 774 y Fg(C-_)g Fo(or)f Fg(C-x)h(C-u)315 829
-y Fo(Undo)i(the)g(last)e(editing)h(command.)25 b(Y)l(ou)17
-b(can)g(undo)g(all)e(the)i(w)o(a)o(y)f(bac)o(k)h(to)f(an)g(empt)o(y)315
-884 y(line.)75 960 y(\(Dep)q(ending)f(on)g(y)o(our)f(con\014guration,)g
-(the)h Fn(Backspace)e Fo(k)o(ey)i(b)q(e)g(set)g(to)f(delete)h(the)g(c)o
-(haracter)f(to)g(the)75 1015 y(left)j(of)h(the)g(cursor)g(and)g(the)h
-Fn(DEL)e Fo(k)o(ey)h(set)g(to)g(delete)g(the)g(c)o(haracter)g
-(underneath)g(the)h(cursor,)f(lik)o(e)75 1070 y Fg(C-d)p
-Fo(,)c(rather)h(than)g(the)g(c)o(haracter)g(to)f(the)i(left)e(of)h(the)
-g(cursor.\))75 1166 y Fd(1.2.2)30 b(Readline)20 b(Mo)n(v)n(emen)n(t)i
-(Commands)75 1240 y Fo(The)14 b(ab)q(o)o(v)o(e)g(table)f(describ)q(es)h
-(the)g(most)f(basic)h(k)o(eystrok)o(es)f(that)g(y)o(ou)g(need)i(in)f
-(order)f(to)g(do)h(editing)f(of)75 1295 y(the)k(input)f(line.)23
-b(F)l(or)16 b(y)o(our)g(con)o(v)o(enience,)h(man)o(y)f(other)g
-(commands)h(ha)o(v)o(e)f(b)q(een)h(added)h(in)e(addition)75
-1349 y(to)h Fg(C-b)p Fo(,)g Fg(C-f)p Fo(,)g Fg(C-d)p
-Fo(,)g(and)h Fn(DEL)p Fo(.)26 b(Here)18 b(are)f(some)g(commands)h(for)e
-(mo)o(ving)h(more)g(rapidly)g(ab)q(out)g(the)75 1404
-y(line.)75 1481 y Fg(C-a)168 b Fo(Mo)o(v)o(e)14 b(to)h(the)g(start)f
-(of)h(the)g(line.)75 1558 y Fg(C-e)168 b Fo(Mo)o(v)o(e)14
-b(to)h(the)g(end)h(of)f(the)g(line.)75 1634 y Fg(M-f)168
-b Fo(Mo)o(v)o(e)14 b(forw)o(ard)g(a)h(w)o(ord,)f(where)i(a)e(w)o(ord)h
-(is)g(comp)q(osed)g(of)g(letters)f(and)i(digits.)75 1711
-y Fg(M-b)168 b Fo(Mo)o(v)o(e)14 b(bac)o(kw)o(ard)h(a)g(w)o(ord.)75
-1788 y Fg(C-l)168 b Fo(Clear)14 b(the)i(screen,)f(reprin)o(ting)f(the)h
-(curren)o(t)g(line)g(at)g(the)g(top.)137 1864 y(Notice)d(ho)o(w)g
-Fg(C-f)g Fo(mo)o(v)o(es)f(forw)o(ard)g(a)h(c)o(haracter,)g(while)g
-Fg(M-f)g Fo(mo)o(v)o(es)f(forw)o(ard)g(a)h(w)o(ord.)18
-b(It)13 b(is)f(a)g(lo)q(ose)75 1919 y(con)o(v)o(en)o(tion)i(that)g(con)
-o(trol)g(k)o(eystrok)o(es)g(op)q(erate)h(on)f(c)o(haracters)h(while)f
-(meta)g(k)o(eystrok)o(es)g(op)q(erate)h(on)75 1974 y(w)o(ords.)75
-2071 y Fd(1.2.3)30 b(Readline)20 b(Killing)h(Commands)75
-2144 y Fe(Killing)16 b Fo(text)d(means)g(to)g(delete)g(the)g(text)g
-(from)g(the)g(line,)g(but)h(to)e(sa)o(v)o(e)h(it)f(a)o(w)o(a)o(y)g(for)
-h(later)f(use,)i(usually)75 2199 y(b)o(y)f Fe(y)o(anking)k
-Fo(\(re-inserting\))12 b(it)h(bac)o(k)g(in)o(to)g(the)g(line.)19
-b(\(`Cut')12 b(and)i(`paste')e(are)h(more)h(recen)o(t)f(jargon)g(for)75
-2254 y(`kill')g(and)j(`y)o(ank'.\))137 2319 y(If)g(the)f(description)f
-(for)h(a)g(command)g(sa)o(ys)f(that)h(it)f(`kills')f(text,)h(then)i(y)o
-(ou)f(can)g(b)q(e)h(sure)f(that)f(y)o(ou)75 2374 y(can)h(get)g(the)g
-(text)g(bac)o(k)g(in)g(a)g(di\013eren)o(t)f(\(or)h(the)g(same\))g
-(place)g(later.)137 2440 y(When)d(y)o(ou)g(use)g(a)f(kill)f(command,)i
-(the)g(text)f(is)g(sa)o(v)o(ed)g(in)h(a)f Fe(kill-ring)p
-Fo(.)17 b(An)o(y)12 b(n)o(um)o(b)q(er)g(of)f(consecutiv)o(e)75
-2495 y(kills)j(sa)o(v)o(e)h(all)f(of)h(the)h(killed)f(text)g(together,)
-f(so)h(that)g(when)h(y)o(ou)f(y)o(ank)g(it)g(bac)o(k,)g(y)o(ou)g(get)g
-(it)g(all.)20 b(The)75 2549 y(kill)15 b(ring)h(is)f(not)h(line)g(sp)q
-(eci\014c;)h(the)f(text)g(that)f(y)o(ou)h(killed)g(on)g(a)g(previously)
-f(t)o(yp)q(ed)i(line)f(is)f(a)o(v)m(ailable)75 2604 y(to)g(b)q(e)g(y)o
-(ank)o(ed)g(bac)o(k)h(later,)d(when)j(y)o(ou)f(are)g(t)o(yping)f
-(another)h(line.)137 2670 y(Here)h(is)e(the)i(list)e(of)g(commands)h
-(for)g(killing)f(text.)p eop end
-%%Page: 3 6
-TeXDict begin 3 5 bop 75 -58 a Fo(Chapter)15 b(1:)k(Command)c(Line)h
-(Editing)1075 b(3)75 149 y Fg(C-k)168 b Fo(Kill)14 b(the)i(text)e(from)
-h(the)g(curren)o(t)g(cursor)g(p)q(osition)f(to)h(the)g(end)h(of)f(the)g
-(line.)75 230 y Fg(M-d)168 b Fo(Kill)12 b(from)h(the)g(cursor)g(to)f
-(the)i(end)g(of)e(the)i(curren)o(t)f(w)o(ord,)f(or,)h(if)f(b)q(et)o(w)o
-(een)i(w)o(ords,)e(to)h(the)315 285 y(end)j(of)f(the)g(next)g(w)o(ord.)
-k(W)l(ord)c(b)q(oundaries)h(are)f(the)g(same)g(as)g(those)f(used)i(b)o
-(y)f Fg(M-f)p Fo(.)75 366 y Fg(M-DEL)120 b Fo(Kill)14
-b(from)h(the)g(cursor)g(the)h(start)e(of)h(the)g(curren)o(t)g(w)o(ord,)
-f(or,)h(if)f(b)q(et)o(w)o(een)i(w)o(ords,)e(to)h(the)315
-421 y(start)j(of)h(the)g(previous)g(w)o(ord.)31 b(W)l(ord)19
-b(b)q(oundaries)g(are)g(the)h(same)e(as)h(those)g(used)h(b)o(y)315
-476 y Fg(M-b)p Fo(.)75 557 y Fg(C-w)168 b Fo(Kill)17
-b(from)f(the)i(cursor)f(to)g(the)h(previous)f(whitespace.)27
-b(This)17 b(is)g(di\013eren)o(t)f(than)i Fg(M-DEL)315
-611 y Fo(b)q(ecause)e(the)f(w)o(ord)g(b)q(oundaries)g(di\013er.)137
-693 y(Here)21 b(is)g(ho)o(w)f(to)g Fe(y)o(ank)j Fo(the)e(text)f(bac)o
-(k)h(in)o(to)f(the)g(line.)37 b(Y)l(anking)20 b(means)h(to)f(cop)o(y)h
-(the)g(most-)75 748 y(recen)o(tly-killed)14 b(text)h(from)f(the)i(kill)
-e(bu\013er.)75 829 y Fg(C-y)168 b Fo(Y)l(ank)15 b(the)h(most)e(recen)o
-(tly)h(killed)f(text)h(bac)o(k)g(in)o(to)f(the)i(bu\013er)f(at)f(the)i
-(cursor.)75 910 y Fg(M-y)168 b Fo(Rotate)17 b(the)g(kill-ring,)f(and)h
-(y)o(ank)g(the)h(new)f(top.)26 b(Y)l(ou)17 b(can)h(only)f(do)g(this)g
-(if)f(the)i(prior)315 965 y(command)d(is)g Fg(C-y)g Fo(or)f
-Fg(M-y)p Fo(.)75 1066 y Fd(1.2.4)30 b(Readline)20 b(Argumen)n(ts)75
-1139 y Fo(Y)l(ou)g(can)f(pass)h(n)o(umeric)f(argumen)o(ts)g(to)g
-(Readline)h(commands.)32 b(Sometimes)19 b(the)h(argumen)o(t)e(acts)75
-1194 y(as)i(a)f(rep)q(eat)i(coun)o(t,)f(other)g(times)f(it)h(is)f(the)h
-Ff(sign)j Fo(of)c(the)h(argumen)o(t)g(that)f(is)h(signi\014can)o(t.)33
-b(If)20 b(y)o(ou)75 1249 y(pass)d(a)f(negativ)o(e)g(argumen)o(t)g(to)g
-(a)g(command)h(whic)o(h)g(normally)e(acts)h(in)h(a)f(forw)o(ard)g
-(direction,)g(that)75 1304 y(command)i(will)e(act)h(in)h(a)f(bac)o(kw)o
-(ard)g(direction.)26 b(F)l(or)17 b(example,)h(to)f(kill)g(text)g(bac)o
-(k)g(to)g(the)h(start)e(of)75 1359 y(the)f(line,)g(y)o(ou)g(migh)o(t)f
-(t)o(yp)q(e)h(`)p Fn(M--)f(C-k)p Fo('.)137 1427 y(The)h(general)e(w)o
-(a)o(y)g(to)h(pass)g(n)o(umeric)g(argumen)o(ts)f(to)g(a)h(command)g(is)
-g(to)f(t)o(yp)q(e)h(meta)g(digits)f(b)q(efore)75 1482
-y(the)j(command.)k(If)c(the)f(\014rst)g(`digit')f(t)o(yp)q(ed)h(is)g(a)
-h(min)o(us)f(sign)g(\(`)p Fn(-)p Fo('\),)e(then)j(the)f(sign)g(of)g
-(the)h(argumen)o(t)75 1537 y(will)i(b)q(e)i(negativ)o(e.)30
-b(Once)20 b(y)o(ou)f(ha)o(v)o(e)g(t)o(yp)q(ed)g(one)g(meta)g(digit)f
-(to)g(get)h(the)g(argumen)o(t)f(started,)h(y)o(ou)75
-1592 y(can)c(t)o(yp)q(e)f(the)h(remainder)f(of)g(the)g(digits,)f(and)i
-(then)g(the)f(command.)20 b(F)l(or)13 b(example,)h(to)g(giv)o(e)g(the)g
-Fg(C-d)75 1646 y Fo(command)19 b(an)f(argumen)o(t)g(of)g(10,)h(y)o(ou)f
-(could)h(t)o(yp)q(e)g(`)p Fn(M-1)14 b(0)h(C-d)p Fo(',)k(whic)o(h)f
-(will)f(delete)i(the)g(next)g(ten)75 1701 y(c)o(haracters)14
-b(on)i(the)f(input)g(line.)75 1802 y Fd(1.2.5)30 b(Searc)n(hing)21
-b(for)f(Commands)h(in)f(the)h(History)75 1875 y Fo(Readline)11
-b(pro)o(vides)f(commands)h(for)f(searc)o(hing)g(through)g(the)h
-(command)f(history)g(for)g(lines)g(con)o(taining)75 1930
-y(a)15 b(sp)q(eci\014ed)h(string.)j(There)c(are)g(t)o(w)o(o)f(searc)o
-(h)h(mo)q(des:)20 b Fe(incremen)o(tal)c Fo(and)g Fe(non-incremen)o(tal)
-p Fo(.)137 1999 y(Incremen)o(tal)d(searc)o(hes)g(b)q(egin)g(b)q(efore)g
-(the)g(user)g(has)g(\014nished)g(t)o(yping)f(the)h(searc)o(h)g(string.)
-18 b(As)13 b(eac)o(h)75 2054 y(c)o(haracter)k(of)g(the)h(searc)o(h)g
-(string)e(is)h(t)o(yp)q(ed,)i(Readline)f(displa)o(ys)e(the)i(next)g(en)
-o(try)f(from)g(the)h(history)75 2108 y(matc)o(hing)11
-b(the)h(string)f(t)o(yp)q(ed)h(so)g(far.)18 b(An)13 b(incremen)o(tal)e
-(searc)o(h)h(requires)f(only)h(as)g(man)o(y)f(c)o(haracters)g(as)75
-2163 y(needed)16 b(to)d(\014nd)j(the)e(desired)h(history)e(en)o(try)l
-(.)19 b(T)l(o)c(searc)o(h)f(bac)o(kw)o(ard)f(in)i(the)f(history)f(for)h
-(a)g(particular)75 2218 y(string,)f(t)o(yp)q(e)i Fg(C-r)p
-Fo(.)k(T)o(yping)c Fg(C-s)f Fo(searc)o(hes)h(forw)o(ard)e(through)h
-(the)h(history)l(.)k(The)c(c)o(haracters)f(presen)o(t)75
-2273 y(in)19 b(the)g(v)m(alue)g(of)g(the)g Fn(isearch-terminators)d
-Fo(v)m(ariable)i(are)h(used)h(to)e(terminate)g(an)h(incremen)o(tal)75
-2328 y(searc)o(h.)35 b(If)20 b(that)f(v)m(ariable)h(has)g(not)g(b)q
-(een)h(assigned)f(a)g(v)m(alue,)h(the)f Fn(ESC)g Fo(and)g
-Fg(C-J)g Fo(c)o(haracters)f(will)75 2382 y(terminate)h(an)h(incremen)o
-(tal)g(searc)o(h.)37 b Fg(C-g)21 b Fo(will)f(ab)q(ort)h(an)g(incremen)o
-(tal)f(searc)o(h)h(and)g(restore)g(the)75 2437 y(original)13
-b(line.)19 b(When)c(the)f(searc)o(h)g(is)g(terminated,)g(the)g(history)
-g(en)o(try)g(con)o(taining)f(the)i(searc)o(h)f(string)75
-2492 y(b)q(ecomes)i(the)f(curren)o(t)g(line.)137 2560
-y(T)l(o)g(\014nd)i(other)e(matc)o(hing)f(en)o(tries)h(in)h(the)f
-(history)g(list,)f(t)o(yp)q(e)h Fg(C-r)g Fo(or)g Fg(C-s)g
-Fo(as)h(appropriate.)j(This)75 2615 y(will)12 b(searc)o(h)h(bac)o(kw)o
-(ard)f(or)g(forw)o(ard)g(in)h(the)g(history)f(for)h(the)g(next)g(en)o
-(try)g(matc)o(hing)f(the)h(searc)o(h)g(string)75 2670
-y(t)o(yp)q(ed)19 b(so)g(far.)30 b(An)o(y)19 b(other)f(k)o(ey)h
-(sequence)h(b)q(ound)g(to)e(a)h(Readline)g(command)f(will)g(terminate)g
-(the)p eop end
-%%Page: 4 7
-TeXDict begin 4 6 bop 75 -58 a Fo(Chapter)15 b(1:)k(Command)c(Line)h
-(Editing)1075 b(4)75 149 y(searc)o(h)13 b(and)f(execute)i(that)e
-(command.)19 b(F)l(or)12 b(instance,)h(a)f Fn(RET)g Fo(will)g
-(terminate)f(the)i(searc)o(h)g(and)g(accept)75 204 y(the)i(line,)f
-(thereb)o(y)h(executing)f(the)h(command)g(from)f(the)g(history)g(list.)
-k(A)d(mo)o(v)o(emen)o(t)f(command)g(will)75 259 y(terminate)g(the)h
-(searc)o(h,)g(mak)o(e)g(the)g(last)f(line)h(found)h(the)f(curren)o(t)g
-(line,)f(and)i(b)q(egin)f(editing.)137 323 y(Readline)j(remem)o(b)q
-(ers)f(the)h(last)e(incremen)o(tal)h(searc)o(h)g(string.)26
-b(If)17 b(t)o(w)o(o)f Fg(C-r)p Fo(s)h(are)g(t)o(yp)q(ed)h(without)75
-378 y(an)o(y)g(in)o(terv)o(ening)f(c)o(haracters)h(de\014ning)g(a)g
-(new)h(searc)o(h)f(string,)f(an)o(y)h(remem)o(b)q(ered)h(searc)o(h)f
-(string)f(is)75 433 y(used.)137 498 y(Non-incremen)o(tal)23
-b(searc)o(hes)g(read)h(the)f(en)o(tire)g(searc)o(h)g(string)f(b)q
-(efore)i(starting)e(to)g(searc)o(h)i(for)75 552 y(matc)o(hing)c
-(history)h(lines.)37 b(The)22 b(searc)o(h)f(string)f(ma)o(y)h(b)q(e)h
-(t)o(yp)q(ed)f(b)o(y)h(the)f(user)h(or)e(b)q(e)i(part)f(of)g(the)75
-607 y(con)o(ten)o(ts)15 b(of)f(the)i(curren)o(t)f(line.)75
-718 y Fm(1.3)33 b(Readline)21 b(Init)i(File)75 797 y
-Fo(Although)e(the)h(Readline)h(library)d(comes)i(with)f(a)h(set)f(of)h
-(Emacs-lik)o(e)f(k)o(eybindings)g(installed)g(b)o(y)75
-852 y(default,)12 b(it)g(is)g(p)q(ossible)g(to)g(use)g(a)g(di\013eren)o
-(t)g(set)g(of)g(k)o(eybindings.)19 b(An)o(y)12 b(user)h(can)f
-(customize)g(programs)75 907 y(that)21 b(use)i(Readline)f(b)o(y)h
-(putting)e(commands)h(in)g(an)g Fe(inputrc)j Fo(\014le,)f(con)o(v)o(en)
-o(tionally)c(in)i(his)g(home)75 962 y(directory)l(.)c(The)12
-b(name)g(of)f(this)g(\014le)h(is)f(tak)o(en)g(from)g(the)h(v)m(alue)g
-(of)f(the)h(en)o(vironmen)o(t)f(v)m(ariable)g Fn(INPUTRC)p
-Fo(.)75 1017 y(If)17 b(that)g(v)m(ariable)f(is)h(unset,)g(the)g
-(default)g(is)g(`)p Fn(~/.inputrc)p Fo('.)23 b(If)17
-b(that)g(\014le)g(do)q(es)g(not)g(exist)g(or)f(cannot)75
-1071 y(b)q(e)g(read,)f(the)g(ultimate)f(default)h(is)f(`)p
-Fn(/etc/inputrc)p Fo('.)137 1136 y(When)h(a)g(program)f(whic)o(h)g
-(uses)h(the)g(Readline)g(library)f(starts)f(up,)i(the)g(init)f(\014le)h
-(is)f(read,)h(and)g(the)75 1191 y(k)o(ey)g(bindings)g(are)g(set.)137
-1255 y(In)f(addition,)f(the)g Fn(C-x)i(C-r)e Fo(command)g(re-reads)h
-(this)f(init)f(\014le,)i(th)o(us)f(incorp)q(orating)f(an)o(y)h(c)o
-(hanges)75 1310 y(that)h(y)o(ou)h(migh)o(t)f(ha)o(v)o(e)h(made)g(to)g
-(it.)75 1404 y Fd(1.3.1)30 b(Readline)20 b(Init)g(File)h(Syn)n(tax)75
-1477 y Fo(There)g(are)f(only)g(a)g(few)h(basic)f(constructs)g(allo)o(w)
-o(ed)f(in)h(the)h(Readline)f(init)g(\014le.)36 b(Blank)20
-b(lines)g(are)75 1532 y(ignored.)35 b(Lines)21 b(b)q(eginning)g(with)e
-(a)i(`)p Fn(#)p Fo(')e(are)h(commen)o(ts.)35 b(Lines)21
-b(b)q(eginning)g(with)f(a)g(`)p Fn($)p Fo(')f(indicate)75
-1587 y(conditional)g(constructs)i(\(see)f(Section)h(1.3.2)e
-([Conditional)g(Init)h(Constructs],)h(page)f(10\).)36
-b(Other)75 1642 y(lines)15 b(denote)g(v)m(ariable)g(settings)f(and)h(k)
-o(ey)g(bindings.)75 1716 y(V)l(ariable)f(Settings)315
-1771 y(Y)l(ou)20 b(can)h(mo)q(dify)f(the)g(run-time)g(b)q(eha)o(vior)g
-(of)f(Readline)i(b)o(y)f(altering)f(the)h(v)m(alues)g(of)315
-1826 y(v)m(ariables)c(in)h(Readline)g(using)f(the)h Fn(set)g
-Fo(command)f(within)g(the)h(init)f(\014le.)25 b(The)17
-b(syn)o(tax)315 1880 y(is)e(simple:)435 1945 y Fn(set)23
-b Fg(variable)28 b(value)315 2009 y Fo(Here,)14 b(for)f(example,)g(is)g
-(ho)o(w)g(to)g(c)o(hange)h(from)f(the)h(default)f(Emacs-lik)o(e)g(k)o
-(ey)g(binding)h(to)315 2064 y(use)i Fn(vi)e Fo(line)h(editing)g
-(commands:)435 2129 y Fn(set)23 b(editing-mode)g(vi)315
-2193 y Fo(V)l(ariable)17 b(names)g(and)h(v)m(alues,)g(where)f
-(appropriate,)g(are)g(recognized)h(without)e(regard)315
-2248 y(to)f(case.)k(Unrecognized)d(v)m(ariable)f(names)g(are)g
-(ignored.)315 2312 y(Bo)q(olean)d(v)m(ariables)g(\(those)g(that)g(can)g
-(b)q(e)i(set)e(to)g(on)g(or)g(o\013)t(\))f(are)h(set)h(to)f(on)g(if)g
-(the)h(v)m(alue)f(is)315 2367 y(n)o(ull)g(or)f(empt)o(y)l(,)h
-Fe(on)h Fo(\(case-insensitiv)o(e\),)d(or)i(1.)19 b(An)o(y)12
-b(other)g(v)m(alue)g(results)f(in)h(the)h(v)m(ariable)315
-2422 y(b)q(eing)i(set)g(to)g(o\013.)315 2486 y(A)g(great)g(deal)f(of)h
-(run-time)g(b)q(eha)o(vior)g(is)g(c)o(hangeable)g(with)f(the)i(follo)o
-(wing)c(v)m(ariables.)315 2560 y Fn(bell-style)555 2615
-y Fo(Con)o(trols)20 b(what)i(happ)q(ens)h(when)f(Readline)g(w)o(an)o
-(ts)f(to)g(ring)h(the)g(termi-)555 2670 y(nal)c(b)q(ell.)30
-b(If)19 b(set)f(to)g(`)p Fn(none)p Fo(',)g(Readline)h(nev)o(er)g(rings)
-f(the)g(b)q(ell.)30 b(If)19 b(set)g(to)p eop end
-%%Page: 5 8
-TeXDict begin 5 7 bop 75 -58 a Fo(Chapter)15 b(1:)k(Command)c(Line)h
-(Editing)1075 b(5)555 149 y(`)p Fn(visible)p Fo(',)15
-b(Readline)h(uses)h(a)f(visible)g(b)q(ell)h(if)f(one)g(is)g(a)o(v)m
-(ailable.)23 b(If)16 b(set)h(to)555 204 y(`)p Fn(audible)p
-Fo(')g(\(the)h(default\),)h(Readline)g(attempts)f(to)g(ring)g(the)h
-(terminal's)555 259 y(b)q(ell.)315 332 y Fn(bind-tty-special-chars)555
-387 y Fo(If)k(set)f(to)g(`)p Fn(on)p Fo(',)h(Readline)g(attempts)f(to)g
-(bind)h(the)f(con)o(trol)g(c)o(haracters)555 442 y(treated)17
-b(sp)q(ecially)g(b)o(y)h(the)g(k)o(ernel's)f(terminal)f(driv)o(er)h(to)
-g(their)h(Readline)555 496 y(equiv)m(alen)o(ts.)315 570
-y Fn(comment-begin)555 624 y Fo(The)d(string)e(to)h(insert)h(at)e(the)i
-(b)q(eginning)g(of)f(the)h(line)f(when)h(the)g Fn(insert-)555
-679 y(comment)f Fo(command)h(is)g(executed.)21 b(The)15
-b(default)g(v)m(alue)g(is)g Fn("#")p Fo(.)315 752 y Fn
-(completion-display-width)555 807 y Fo(The)21 b(n)o(um)o(b)q(er)g(of)g
-(screen)g(columns)f(used)i(to)e(displa)o(y)g(p)q(ossible)g(matc)o(hes)
-555 862 y(when)15 b(p)q(erforming)f(completion.)19 b(The)14
-b(v)m(alue)h(is)f(ignored)g(if)g(it)g(is)g(less)g(than)555
-917 y(0)f(or)f(greater)h(than)g(the)g(terminal)f(screen)h(width.)19
-b(A)13 b(v)m(alue)g(of)g(0)g(will)f(cause)555 971 y(matc)o(hes)j(to)f
-(b)q(e)i(displa)o(y)o(ed)f(one)g(p)q(er)h(line.)j(The)d(default)e(v)m
-(alue)i(is)f(-1.)315 1044 y Fn(completion-ignore-case)555
-1099 y Fo(If)f(set)f(to)g(`)p Fn(on)p Fo(',)g(Readline)h(p)q(erforms)f
-(\014lename)h(matc)o(hing)f(and)h(completion)555 1154
-y(in)h(a)g(case-insensitiv)o(e)f(fashion.)20 b(The)15
-b(default)g(v)m(alue)g(is)g(`)p Fn(off)p Fo('.)315 1227
-y Fn(completion-map-case)555 1282 y Fo(If)c(set)g(to)g(`)p
-Fn(on)p Fo(',)f(and)h Fe(completion-ignore-case)i Fo(is)e(enabled,)h
-(Readline)f(treats)555 1337 y(h)o(yphens)16 b(\(`)p Fn(-)p
-Fo('\))e(and)i(underscores)g(\(`)p Fn(_)p Fo('\))d(as)j(equiv)m(alen)o
-(t)f(when)h(p)q(erforming)555 1391 y(case-insensitiv)o(e)e(\014lename)i
-(matc)o(hing)e(and)h(completion.)315 1465 y Fn
-(completion-prefix-display-)o(length)555 1519 y Fo(The)h(length)f(in)h
-(c)o(haracters)f(of)g(the)h(common)f(pre\014x)h(of)f(a)h(list)e(of)h(p)
-q(ossible)555 1574 y(completions)f(that)g(is)g(displa)o(y)o(ed)g
-(without)g(mo)q(di\014cation.)19 b(When)c(set)g(to)f(a)555
-1629 y(v)m(alue)f(greater)f(than)h(zero,)f(common)h(pre\014xes)g
-(longer)f(than)h(this)f(v)m(alue)h(are)555 1684 y(replaced)i(with)g(an)
-g(ellipsis)f(when)i(displa)o(ying)e(p)q(ossible)h(completions.)315
-1757 y Fn(completion-query-items)555 1812 y Fo(The)e(n)o(um)o(b)q(er)h
-(of)e(p)q(ossible)h(completions)g(that)f(determines)h(when)h(the)f
-(user)555 1866 y(is)h(ask)o(ed)h(whether)g(the)f(list)g(of)g(p)q
-(ossibilities)f(should)i(b)q(e)g(displa)o(y)o(ed.)k(If)c(the)555
-1921 y(n)o(um)o(b)q(er)f(of)f(p)q(ossible)g(completions)f(is)h(greater)
-g(than)g(this)g(v)m(alue,)h(Readline)555 1976 y(will)e(ask)h(the)g
-(user)h(whether)f(or)g(not)g(he)g(wishes)g(to)g(view)g(them;)g
-(otherwise,)555 2031 y(they)f(are)g(simply)g(listed.)18
-b(This)12 b(v)m(ariable)f(m)o(ust)h(b)q(e)h(set)f(to)f(an)h(in)o(teger)
-g(v)m(alue)555 2086 y(greater)g(than)g(or)g(equal)g(to)g(0.)18
-b(A)13 b(negativ)o(e)e(v)m(alue)i(means)f(Readline)h(should)555
-2140 y(nev)o(er)i(ask.)20 b(The)15 b(default)g(limit)f(is)g
-Fn(100)p Fo(.)315 2213 y Fn(convert-meta)555 2268 y Fo(If)d(set)g(to)g
-(`)p Fn(on)p Fo(',)f(Readline)h(will)f(con)o(v)o(ert)g(c)o(haracters)h
-(with)f(the)h(eigh)o(th)g(bit)f(set)555 2323 y(to)15
-b(an)h Fh(asci)q(i)f Fo(k)o(ey)h(sequence)h(b)o(y)f(stripping)f(the)h
-(eigh)o(th)f(bit)h(and)g(pre\014xing)555 2378 y(an)c
-Fn(ESC)g Fo(c)o(haracter,)g(con)o(v)o(erting)f(them)h(to)f(a)h
-(meta-pre\014xed)h(k)o(ey)f(sequence.)555 2433 y(The)j(default)g(v)m
-(alue)h(is)e(`)p Fn(on)p Fo('.)315 2506 y Fn(disable-completion)555
-2560 y Fo(If)19 b(set)f(to)f(`)p Fn(On)p Fo(',)h(Readline)h(will)e
-(inhibit)g(w)o(ord)h(completion.)28 b(Completion)555
-2615 y(c)o(haracters)12 b(will)g(b)q(e)i(inserted)f(in)o(to)f(the)h
-(line)f(as)h(if)g(they)g(had)g(b)q(een)h(mapp)q(ed)555
-2670 y(to)h Fn(self-insert)p Fo(.)j(The)d(default)g(is)g(`)p
-Fn(off)p Fo('.)p eop end
-%%Page: 6 9
-TeXDict begin 6 8 bop 75 -58 a Fo(Chapter)15 b(1:)k(Command)c(Line)h
-(Editing)1075 b(6)315 149 y Fn(editing-mode)555 204 y
-Fo(The)15 b Fn(editing-mode)d Fo(v)m(ariable)i(con)o(trols)f(whic)o(h)h
-(default)g(set)g(of)g(k)o(ey)g(bind-)555 259 y(ings)e(is)g(used.)20
-b(By)12 b(default,)h(Readline)f(starts)g(up)h(in)f(Emacs)g(editing)g
-(mo)q(de,)555 314 y(where)j(the)f(k)o(eystrok)o(es)g(are)g(most)g
-(similar)f(to)g(Emacs.)20 b(This)14 b(v)m(ariable)g(can)555
-369 y(b)q(e)i(set)f(to)f(either)h(`)p Fn(emacs)p Fo(')f(or)h(`)p
-Fn(vi)p Fo('.)315 442 y Fn(echo-control-characters)555
-496 y Fo(When)h(set)e(to)h(`)p Fn(on)p Fo(',)f(on)h(op)q(erating)f
-(systems)h(that)f(indicate)h(they)g(supp)q(ort)555 551
-y(it,)g(readline)g(ec)o(ho)q(es)h(a)g(c)o(haracter)f(corresp)q(onding)h
-(to)f(a)g(signal)g(generated)555 606 y(from)f(the)i(k)o(eyb)q(oard.)k
-(The)15 b(default)g(is)f(`)p Fn(on)p Fo('.)315 679 y
-Fn(enable-keypad)555 734 y Fo(When)e(set)f(to)h(`)p Fn(on)p
-Fo(',)e(Readline)i(will)f(try)g(to)g(enable)h(the)g(application)e(k)o
-(eypad)555 789 y(when)k(it)e(is)h(called.)19 b(Some)13
-b(systems)g(need)h(this)f(to)g(enable)g(the)h(arro)o(w)e(k)o(eys.)555
-844 y(The)j(default)g(is)g(`)p Fn(off)p Fo('.)315 917
-y Fn(enable-meta-key)555 971 y Fo(When)20 b(set)g(to)f(`)p
-Fn(on)p Fo(',)h(Readline)g(will)e(try)i(to)f(enable)h(an)o(y)g(meta)f
-(mo)q(di\014er)555 1026 y(k)o(ey)i(the)g(terminal)e(claims)h(to)g(supp)
-q(ort)h(when)h(it)e(is)g(called.)37 b(On)21 b(man)o(y)555
-1081 y(terminals,)16 b(the)i(meta)f(k)o(ey)h(is)f(used)h(to)f(send)h
-(eigh)o(t-bit)e(c)o(haracters.)27 b(The)555 1136 y(default)15
-b(is)f(`)p Fn(on)p Fo('.)315 1209 y Fn(expand-tilde)555
-1264 y Fo(If)g(set)g(to)f(`)p Fn(on)p Fo(',)f(tilde)i(expansion)f(is)h
-(p)q(erformed)g(when)g(Readline)g(attempts)555 1318 y(w)o(ord)h
-(completion.)k(The)c(default)g(is)f(`)p Fn(off)p Fo('.)315
-1391 y Fn(history-preserve-point)555 1446 y Fo(If)21
-b(set)g(to)f(`)p Fn(on)p Fo(',)h(the)g(history)f(co)q(de)h(attempts)f
-(to)g(place)h(the)g(p)q(oin)o(t)f(\(the)555 1501 y(curren)o(t)d(cursor)
-h(p)q(osition\))e(at)h(the)h(same)f(lo)q(cation)f(on)i(eac)o(h)g
-(history)e(line)555 1556 y(retriev)o(ed)i(with)f Fn(previous-history)f
-Fo(or)i Fn(next-history)p Fo(.)27 b(The)18 b(default)555
-1611 y(is)d(`)p Fn(off)p Fo('.)315 1684 y Fn(history-size)555
-1738 y Fo(Set)20 b(the)f(maxim)o(um)g(n)o(um)o(b)q(er)h(of)f(history)f
-(en)o(tries)h(sa)o(v)o(ed)g(in)g(the)h(history)555 1793
-y(list.)25 b(If)17 b(set)g(to)g(zero,)g(the)g(n)o(um)o(b)q(er)h(of)f
-(en)o(tries)f(in)h(the)g(history)g(list)f(is)g(not)555
-1848 y(limited.)315 1921 y Fn(horizontal-scroll-mode)555
-1976 y Fo(This)i(v)m(ariable)f(can)h(b)q(e)g(set)g(to)f(either)h(`)p
-Fn(on)p Fo(')f(or)g(`)p Fn(off)p Fo('.)27 b(Setting)18
-b(it)f(to)g(`)p Fn(on)p Fo(')555 2031 y(means)c(that)f(the)i(text)e(of)
-h(the)g(lines)g(b)q(eing)g(edited)g(will)f(scroll)g(horizon)o(tally)555
-2086 y(on)k(a)f(single)g(screen)i(line)e(when)i(they)f(are)f(longer)g
-(than)h(the)g(width)f(of)h(the)555 2140 y(screen,)e(instead)e(of)h
-(wrapping)f(on)o(to)g(a)h(new)g(screen)h(line.)19 b(By)13
-b(default,)g(this)555 2195 y(v)m(ariable)i(is)f(set)h(to)g(`)p
-Fn(off)p Fo('.)315 2268 y Fn(input-meta)555 2323 y Fo(If)h(set)f(to)g
-(`)p Fn(on)p Fo(',)f(Readline)i(will)f(enable)g(eigh)o(t-bit)g(input)g
-(\(it)g(will)f(not)h(clear)555 2378 y(the)20 b(eigh)o(th)f(bit)g(in)h
-(the)g(c)o(haracters)f(it)g(reads\),)h(regardless)f(of)h(what)f(the)555
-2433 y(terminal)g(claims)g(it)g(can)h(supp)q(ort.)34
-b(The)20 b(default)g(v)m(alue)g(is)g(`)p Fn(off)p Fo('.)33
-b(The)555 2487 y(name)15 b Fn(meta-flag)f Fo(is)h(a)g(synon)o(ym)g(for)
-f(this)h(v)m(ariable.)315 2560 y Fn(isearch-terminators)555
-2615 y Fo(The)26 b(string)f(of)g(c)o(haracters)g(that)g(should)h
-(terminate)f(an)h(incremen)o(tal)555 2670 y(searc)o(h)12
-b(without)g(subsequen)o(tly)g(executing)h(the)f(c)o(haracter)g(as)g(a)g
-(command)p eop end
-%%Page: 7 10
-TeXDict begin 7 9 bop 75 -58 a Fo(Chapter)15 b(1:)k(Command)c(Line)h
-(Editing)1075 b(7)555 149 y(\(see)22 b(Section)g(1.2.5)f([Searc)o
-(hing],)i(page)f(3\).)40 b(If)23 b(this)f(v)m(ariable)f(has)h(not)555
-204 y(b)q(een)d(giv)o(en)e(a)g(v)m(alue,)i(the)f(c)o(haracters)e
-Fn(ESC)i Fo(and)g Fg(C-J)f Fo(will)f(terminate)h(an)555
-259 y(incremen)o(tal)d(searc)o(h.)315 344 y Fn(keymap)96
-b Fo(Sets)19 b(Readline's)h(idea)f(of)g(the)g(curren)o(t)h(k)o(eymap)f
-(for)f(k)o(ey)i(binding)f(com-)555 399 y(mands.)41 b(Acceptable)22
-b Fn(keymap)g Fo(names)g(are)f Fn(emacs)p Fo(,)i Fn(emacs-standard)p
-Fo(,)555 454 y Fn(emacs-meta)p Fo(,)49 b Fn(emacs-ctlx)p
-Fo(,)g Fn(vi)p Fo(,)h Fn(vi-move)p Fo(,)f Fn(vi-command)p
-Fo(,)g(and)555 509 y Fn(vi-insert)p Fo(.)31 b Fn(vi)20
-b Fo(is)f(equiv)m(alen)o(t)g(to)g Fn(vi-command)p Fo(;)g
-Fn(emacs)g Fo(is)g(equiv)m(alen)o(t)555 563 y(to)c Fn(emacs-standard)p
-Fo(.)20 b(The)d(default)e(v)m(alue)h(is)g Fn(emacs)p
-Fo(.)21 b(The)16 b(v)m(alue)g(of)g(the)555 618 y Fn(editing-mode)e
-Fo(v)m(ariable)g(also)g(a\013ects)h(the)g(default)g(k)o(eymap.)315
-703 y Fn(mark-directories)555 758 y Fo(If)k(set)g(to)g(`)p
-Fn(on)p Fo(',)f(completed)h(directory)g(names)g(ha)o(v)o(e)f(a)h(slash)
-g(app)q(ended.)555 813 y(The)c(default)g(is)g(`)p Fn(on)p
-Fo('.)315 898 y Fn(mark-modified-lines)555 953 y Fo(This)j(v)m
-(ariable,)f(when)i(set)e(to)h(`)p Fn(on)p Fo(',)f(causes)h(Readline)g
-(to)f(displa)o(y)g(an)h(as-)555 1008 y(terisk)e(\(`)p
-Fn(*)p Fo('\))f(at)i(the)f(start)g(of)h(history)e(lines)i(whic)o(h)f
-(ha)o(v)o(e)h(b)q(een)h(mo)q(di\014ed.)555 1063 y(This)d(v)m(ariable)f
-(is)h(`)p Fn(off)p Fo(')f(b)o(y)h(default.)315 1148 y
-Fn(mark-symlinked-directories)555 1203 y Fo(If)23 b(set)f(to)f(`)p
-Fn(on)p Fo(',)i(completed)f(names)h(whic)o(h)f(are)g(sym)o(b)q(olic)g
-(links)f(to)h(di-)555 1258 y(rectories)g(ha)o(v)o(e)h(a)g(slash)f(app)q
-(ended)j(\(sub)s(ject)e(to)f(the)i(v)m(alue)f(of)g Fn(mark-)555
-1312 y(directories)p Fo(\).)18 b(The)d(default)g(is)g(`)p
-Fn(off)p Fo('.)315 1398 y Fn(match-hidden-files)555 1452
-y Fo(This)c(v)m(ariable,)g(when)g(set)g(to)g(`)p Fn(on)p
-Fo(',)f(causes)h(Readline)h(to)e(matc)o(h)h(\014les)g(whose)555
-1507 y(names)22 b(b)q(egin)g(with)g(a)f(`)p Fn(.)p Fo(')h(\(hidden)g
-(\014les\))g(when)g(p)q(erforming)g(\014lename)555 1562
-y(completion.)35 b(If)21 b(set)g(to)f(`)p Fn(off)p Fo(',)g(the)h
-(leading)f(`)p Fn(.)p Fo(')g(m)o(ust)g(b)q(e)h(supplied)g(b)o(y)555
-1617 y(the)c(user)g(in)g(the)g(\014lename)h(to)e(b)q(e)i(completed.)25
-b(This)17 b(v)m(ariable)f(is)h(`)p Fn(on)p Fo(')f(b)o(y)555
-1672 y(default.)315 1757 y Fn(menu-complete-display-pref)o(ix)555
-1812 y Fo(If)h(set)g(to)f(`)p Fn(on)p Fo(',)f(men)o(u)i(completion)f
-(displa)o(ys)g(the)h(common)f(pre\014x)i(of)e(the)555
-1866 y(list)i(of)g(p)q(ossible)g(completions)g(\(whic)o(h)h(ma)o(y)f(b)
-q(e)h(empt)o(y\))f(b)q(efore)h(cycling)555 1921 y(through)c(the)g
-(list.)k(The)c(default)g(is)g(`)p Fn(off)p Fo('.)315
-2006 y Fn(output-meta)555 2061 y Fo(If)j(set)f(to)g(`)p
-Fn(on)p Fo(',)g(Readline)h(will)f(displa)o(y)g(c)o(haracters)f(with)i
-(the)f(eigh)o(th)g(bit)555 2116 y(set)h(directly)g(rather)f(than)h(as)g
-(a)g(meta-pre\014xed)h(escap)q(e)g(sequence.)30 b(The)555
-2171 y(default)15 b(is)f(`)p Fn(off)p Fo('.)315 2256
-y Fn(page-completions)555 2311 y Fo(If)j(set)g(to)f(`)p
-Fn(on)p Fo(',)g(Readline)h(uses)h(an)e(in)o(ternal)g
-Fn(more)p Fo(-lik)o(e)g(pager)h(to)f(displa)o(y)555 2366
-y(a)g(screenful)g(of)g(p)q(ossible)g(completions)f(at)h(a)g(time.)22
-b(This)16 b(v)m(ariable)f(is)h(`)p Fn(on)p Fo(')555 2420
-y(b)o(y)f(default.)315 2506 y Fn(print-completions-horizont)o(ally)555
-2560 y Fo(If)d(set)g(to)f(`)p Fn(on)p Fo(',)h(Readline)g(will)e(displa)
-o(y)i(completions)f(with)g(matc)o(hes)g(sorted)555 2615
-y(horizon)o(tally)20 b(in)h(alphab)q(etical)g(order,)i(rather)e(than)g
-(do)o(wn)h(the)g(screen.)555 2670 y(The)15 b(default)g(is)g(`)p
-Fn(off)p Fo('.)p eop end
-%%Page: 8 11
-TeXDict begin 8 10 bop 75 -58 a Fo(Chapter)15 b(1:)k(Command)c(Line)h
-(Editing)1075 b(8)315 149 y Fn(revert-all-at-newline)555
-204 y Fo(If)15 b(set)g(to)f(`)p Fn(on)p Fo(',)f(Readline)i(will)f(undo)
-h(all)f(c)o(hanges)g(to)h(history)e(lines)i(b)q(efore)555
-259 y(returning)f(when)h Fn(accept-line)e Fo(is)g(executed.)21
-b(By)14 b(default,)g(history)f(lines)555 314 y(ma)o(y)20
-b(b)q(e)i(mo)q(di\014ed)f(and)g(retain)f(individual)g(undo)i(lists)d
-(across)i(calls)f(to)555 369 y Fn(readline)p Fo(.)f(The)c(default)g(is)
-g(`)p Fn(off)p Fo('.)315 451 y Fn(show-all-if-ambiguous)555
-506 y Fo(This)g(alters)e(the)j(default)e(b)q(eha)o(vior)h(of)f(the)h
-(completion)f(functions.)20 b(If)15 b(set)555 560 y(to)e(`)p
-Fn(on)p Fo(',)g(w)o(ords)g(whic)o(h)g(ha)o(v)o(e)h(more)f(than)g(one)h
-(p)q(ossible)g(completion)f(cause)555 615 y(the)20 b(matc)o(hes)f(to)f
-(b)q(e)j(listed)d(immediately)g(instead)h(of)g(ringing)g(the)g(b)q
-(ell.)555 670 y(The)c(default)g(v)m(alue)h(is)e(`)p Fn(off)p
-Fo('.)315 752 y Fn(show-all-if-unmodified)555 807 y Fo(This)19
-b(alters)f(the)i(default)e(b)q(eha)o(vior)h(of)g(the)h(completion)e
-(functions)h(in)g(a)555 862 y(fashion)12 b(similar)f(to)g
-Fe(sho)o(w-all-if-am)o(biguous)r Fo(.)17 b(If)c(set)f(to)g(`)p
-Fn(on)p Fo(',)f(w)o(ords)h(whic)o(h)555 917 y(ha)o(v)o(e)j(more)g(than)
-g(one)h(p)q(ossible)f(completion)f(without)h(an)o(y)g(p)q(ossible)g
-(par-)555 971 y(tial)20 b(completion)g(\(the)h(p)q(ossible)g
-(completions)f(don't)h(share)g(a)f(common)555 1026 y(pre\014x\))15
-b(cause)h(the)f(matc)o(hes)g(to)f(b)q(e)i(listed)e(immediately)g
-(instead)h(of)f(ring-)555 1081 y(ing)h(the)g(b)q(ell.)20
-b(The)15 b(default)g(v)m(alue)g(is)g(`)p Fn(off)p Fo('.)315
-1163 y Fn(skip-completed-text)555 1218 y Fo(If)i(set)f(to)g(`)p
-Fn(on)p Fo(',)f(this)h(alters)f(the)i(default)f(completion)f(b)q(eha)o
-(vior)h(when)h(in-)555 1273 y(serting)d(a)g(single)g(matc)o(h)g(in)o
-(to)f(the)i(line.)k(It's)14 b(only)g(activ)o(e)g(when)h(p)q(erform-)555
-1328 y(ing)i(completion)f(in)h(the)h(middle)f(of)g(a)g(w)o(ord.)25
-b(If)18 b(enabled,)g(readline)f(do)q(es)555 1382 y(not)j(insert)g(c)o
-(haracters)f(from)h(the)g(completion)f(that)h(matc)o(h)g(c)o(haracters)
-555 1437 y(after)e(p)q(oin)o(t)g(in)g(the)g(w)o(ord)g(b)q(eing)h
-(completed,)g(so)f(p)q(ortions)f(of)h(the)h(w)o(ord)555
-1492 y(follo)o(wing)14 b(the)h(cursor)h(are)g(not)f(duplicated.)22
-b(F)l(or)15 b(instance,)g(if)h(this)f(is)g(en-)555 1547
-y(abled,)21 b(attempting)e(completion)g(when)i(the)f(cursor)g(is)g
-(after)g(the)g(`)p Fn(e)p Fo(')f(in)555 1601 y(`)p Fn(Makefile)p
-Fo(')e(will)g(result)h(in)h(`)p Fn(Makefile)p Fo(')e(rather)h(than)h(`)
-p Fn(Makefilefile)p Fo(',)555 1656 y(assuming)e(there)h(is)f(a)g
-(single)g(p)q(ossible)g(completion.)27 b(The)18 b(default)f(v)m(alue)
-555 1711 y(is)e(`)p Fn(off)p Fo('.)315 1793 y Fn(visible-stats)555
-1848 y Fo(If)h(set)g(to)f(`)p Fn(on)p Fo(',)g(a)h(c)o(haracter)f
-(denoting)g(a)h(\014le's)g(t)o(yp)q(e)g(is)f(app)q(ended)j(to)d(the)555
-1903 y(\014lename)g(when)h(listing)e(p)q(ossible)h(completions.)j(The)e
-(default)f(is)f(`)p Fn(off)p Fo('.)75 1985 y(Key)i(Bindings)315
-2040 y(The)21 b(syn)o(tax)f(for)h(con)o(trolling)e(k)o(ey)i(bindings)f
-(in)h(the)g(init)f(\014le)h(is)g(simple.)37 b(First)19
-b(y)o(ou)315 2095 y(need)c(to)e(\014nd)h(the)g(name)g(of)g(the)f
-(command)h(that)f(y)o(ou)h(w)o(an)o(t)f(to)g(c)o(hange.)19
-b(The)14 b(follo)o(wing)315 2149 y(sections)j(con)o(tain)h(tables)f(of)
-g(the)h(command)g(name,)g(the)g(default)g(k)o(eybinding,)g(if)f(an)o(y)
-l(,)315 2204 y(and)e(a)g(short)g(description)g(of)f(what)h(the)g
-(command)g(do)q(es.)315 2273 y(Once)k(y)o(ou)f(kno)o(w)f(the)h(name)g
-(of)g(the)g(command,)g(simply)f(place)h(on)g(a)f(line)h(in)g(the)g
-(init)315 2328 y(\014le)f(the)g(name)g(of)f(the)h(k)o(ey)g(y)o(ou)f
-(wish)h(to)f(bind)h(the)g(command)g(to,)f(a)g(colon,)h(and)g(then)315
-2382 y(the)f(name)g(of)g(the)g(command.)22 b(There)17
-b(can)f(b)q(e)h(no)f(space)g(b)q(et)o(w)o(een)h(the)f(k)o(ey)g(name)g
-(and)315 2437 y(the)k(colon)g({)g(that)g(will)f(b)q(e)i(in)o(terpreted)
-f(as)g(part)g(of)g(the)h(k)o(ey)f(name.)35 b(The)21 b(name)f(of)315
-2492 y(the)d(k)o(ey)g(can)h(b)q(e)g(expressed)g(in)f(di\013eren)o(t)f
-(w)o(a)o(ys,)h(dep)q(ending)h(on)f(what)g(y)o(ou)g(\014nd)h(most)315
-2547 y(comfortable.)315 2615 y(In)h(addition)e(to)g(command)h(names,)g
-(readline)g(allo)o(ws)e(k)o(eys)i(to)f(b)q(e)i(b)q(ound)g(to)e(a)h
-(string)315 2670 y(that)c(is)h(inserted)g(when)h(the)f(k)o(ey)g(is)g
-(pressed)h(\(a)e Fe(macro)r Fo(\).)p eop end
-%%Page: 9 12
-TeXDict begin 9 11 bop 75 -58 a Fo(Chapter)15 b(1:)k(Command)c(Line)h
-(Editing)1075 b(9)315 149 y Fe(k)o(eyname)s Fo(:)19 b
-Fe(function-name)f Fo(or)d Fe(macro)555 204 y(k)o(eyname)i
-Fo(is)d(the)g(name)h(of)f(a)g(k)o(ey)g(sp)q(elled)h(out)f(in)g
-(English.)19 b(F)l(or)13 b(example:)675 271 y Fn(Control-u:)22
-b(universal-argument)675 325 y(Meta-Rubout:)g(backward-kill-word)675
-380 y(Control-o:)g(">)i(output")555 447 y Fo(In)c(the)f(ab)q(o)o(v)o(e)
-g(example,)h Fg(C-u)f Fo(is)g(b)q(ound)h(to)f(the)g(function)g
-Fn(universal-)555 501 y(argument)p Fo(,)f Fg(M-DEL)h
-Fo(is)f(b)q(ound)i(to)e(the)h(function)g Fn(backward-kill-word)p
-Fo(,)555 556 y(and)h Fg(C-o)f Fo(is)g(b)q(ound)h(to)f(run)h(the)f
-(macro)g(expressed)h(on)g(the)f(righ)o(t)g(hand)555 611
-y(side)c(\(that)f(is,)h(to)f(insert)h(the)g(text)g(`)p
-Fn(>)f(output)p Fo(')g(in)o(to)h(the)g(line\).)555 677
-y(A)k(n)o(um)o(b)q(er)f(of)g(sym)o(b)q(olic)g(c)o(haracter)g(names)g
-(are)g(recognized)h(while)f(pro-)555 732 y(cessing)11
-b(this)f(k)o(ey)g(binding)h(syn)o(tax:)17 b Fe(DEL)p
-Fo(,)10 b Fe(ESC)t Fo(,)h Fe(ESCAPE)s Fo(,)f Fe(LFD)r
-Fo(,)g Fe(NEW-)555 787 y(LINE)s Fo(,)15 b Fe(RET)s Fo(,)h
-Fe(RETURN)5 b Fo(,)15 b Fe(R)o(UBOUT)s Fo(,)h Fe(SP)l(A)o(CE)s
-Fo(,)e Fe(SPC)t Fo(,)h(and)g Fe(T)l(AB)s Fo(.)315 865
-y Fn(")p Fe(k)o(eyseq)q Fn(")p Fo(:)20 b Fe(function-name)d
-Fo(or)e Fe(macro)555 920 y(k)o(eyseq)i Fo(di\013ers)d(from)h
-Fe(k)o(eyname)j Fo(ab)q(o)o(v)o(e)d(in)h(that)e(strings)h(denoting)g
-(an)g(en-)555 975 y(tire)h(k)o(ey)h(sequence)h(can)f(b)q(e)g(sp)q
-(eci\014ed,)h(b)o(y)f(placing)f(the)h(k)o(ey)g(sequence)h(in)555
-1029 y(double)d(quotes.)k(Some)c Fh(gnu)g Fo(Emacs)f(st)o(yle)g(k)o(ey)
-h(escap)q(es)g(can)g(b)q(e)g(used,)g(as)555 1084 y(in)i(the)g(follo)o
-(wing)d(example,)j(but)g(the)g(sp)q(ecial)g(c)o(haracter)f(names)h(are)
-f(not)555 1139 y(recognized.)675 1205 y Fn("\\C-u":)23
-b(universal-argument)675 1260 y("\\C-x\\C-r":)f(re-read-init-file)675
-1315 y("\\e[11~":)h("Function)f(Key)i(1")555 1381 y Fo(In)33
-b(the)f(ab)q(o)o(v)o(e)g(example,)k Fg(C-u)c Fo(is)g(again)f(b)q(ound)i
-(to)f(the)g(function)555 1436 y Fn(universal-argument)19
-b Fo(\(just)j(as)f(it)g(w)o(as)g(in)h(the)g(\014rst)f(example\),)i(`)p
-Fg(C-x)555 1491 y(C-r)p Fo(')14 b(is)h(b)q(ound)h(to)f(the)g(function)g
-Fn(re-read-init-file)p Fo(,)d(and)k(`)p Fn(ESC)e([)h(1)g(1)555
-1546 y(~)p Fo(')g(is)f(b)q(ound)j(to)d(insert)h(the)g(text)g(`)p
-Fn(Function)e(Key)i(1)p Fo('.)315 1624 y(The)g(follo)o(wing)e
-Fh(gnu)h Fo(Emacs)h(st)o(yle)f(escap)q(e)i(sequences)g(are)e(a)o(v)m
-(ailable)g(when)h(sp)q(ecifying)315 1679 y(k)o(ey)g(sequences:)315
-1757 y Fg(\\C-)168 b Fo(con)o(trol)14 b(pre\014x)315
-1835 y Fg(\\M-)168 b Fo(meta)15 b(pre\014x)315 1913 y
-Fg(\\e)192 b Fo(an)15 b(escap)q(e)h(c)o(haracter)315
-1991 y Fg(\\\\)192 b Fo(bac)o(kslash)315 2069 y Fg(\\)p
-Fn(")g(")p Fo(,)15 b(a)g(double)g(quotation)f(mark)315
-2147 y Fg(\\')192 b Fn(')p Fo(,)15 b(a)g(single)f(quote)h(or)g(ap)q
-(ostrophe)315 2225 y(In)f(addition)f(to)h(the)f Fh(gnu)h
-Fo(Emacs)g(st)o(yle)e(escap)q(e)j(sequences,)g(a)e(second)i(set)e(of)h
-(bac)o(kslash)315 2280 y(escap)q(es)i(is)f(a)o(v)m(ailable:)315
-2358 y Fn(\\a)192 b Fo(alert)14 b(\(b)q(ell\))315 2436
-y Fn(\\b)192 b Fo(bac)o(kspace)315 2514 y Fn(\\d)g Fo(delete)315
-2592 y Fn(\\f)g Fo(form)14 b(feed)315 2670 y Fn(\\n)192
-b Fo(newline)p eop end
-%%Page: 10 13
-TeXDict begin 10 12 bop 75 -58 a Fo(Chapter)15 b(1:)k(Command)c(Line)h
-(Editing)1053 b(10)315 149 y Fn(\\r)192 b Fo(carriage)14
-b(return)315 226 y Fn(\\t)192 b Fo(horizon)o(tal)14 b(tab)315
-302 y Fn(\\v)192 b Fo(v)o(ertical)14 b(tab)315 378 y
-Fn(\\)p Fg(nnn)144 b Fo(the)17 b(eigh)o(t-bit)f(c)o(haracter)h(whose)g
-(v)m(alue)h(is)e(the)i(o)q(ctal)e(v)m(alue)i Fe(nnn)g
-Fo(\(one)f(to)555 433 y(three)e(digits\))315 509 y Fn(\\x)p
-Fg(HH)144 b Fo(the)20 b(eigh)o(t-bit)e(c)o(haracter)h(whose)h(v)m(alue)
-g(is)f(the)h(hexadecimal)f(v)m(alue)h Fe(HH)555 564 y
-Fo(\(one)15 b(or)g(t)o(w)o(o)f(hex)h(digits\))315 640
-y(When)k(en)o(tering)f(the)h(text)f(of)g(a)h(macro,)f(single)g(or)g
-(double)h(quotes)g(m)o(ust)f(b)q(e)h(used)h(to)315 695
-y(indicate)10 b(a)h(macro)f(de\014nition.)18 b(Unquoted)11
-b(text)f(is)h(assumed)f(to)h(b)q(e)g(a)f(function)h(name.)18
-b(In)315 750 y(the)11 b(macro)f(b)q(o)q(dy)l(,)i(the)f(bac)o(kslash)f
-(escap)q(es)h(describ)q(ed)h(ab)q(o)o(v)o(e)e(are)g(expanded.)20
-b(Bac)o(kslash)315 804 y(will)f(quote)g(an)o(y)h(other)g(c)o(haracter)f
-(in)h(the)g(macro)f(text,)h(including)g(`)p Fn(")p Fo(')f(and)h(`)p
-Fn(')p Fo('.)34 b(F)l(or)315 859 y(example,)13 b(the)g(follo)o(wing)d
-(binding)j(will)f(mak)o(e)g(`)p Fg(C-x)i Fn(\\)p Fo(')f(insert)f(a)h
-(single)f(`)p Fn(\\)p Fo(')g(in)o(to)g(the)h(line:)435
-925 y Fn("\\C-x\\\\":)23 b("\\\\")75 1021 y Fd(1.3.2)30
-b(Conditional)20 b(Init)g(Constructs)75 1094 y Fo(Readline)f(implemen)o
-(ts)e(a)h(facilit)o(y)f(similar)f(in)i(spirit)g(to)f(the)i(conditional)
-e(compilation)f(features)i(of)75 1149 y(the)d(C)h(prepro)q(cessor)f
-(whic)o(h)g(allo)o(ws)f(k)o(ey)h(bindings)g(and)h(v)m(ariable)e
-(settings)h(to)f(b)q(e)i(p)q(erformed)g(as)f(the)75 1204
-y(result)g(of)f(tests.)20 b(There)15 b(are)g(four)g(parser)g(directiv)o
-(es)f(used.)75 1280 y Fn($if)168 b Fo(The)16 b Fn($if)f
-Fo(construct)g(allo)o(ws)f(bindings)i(to)f(b)q(e)h(made)g(based)g(on)f
-(the)h(editing)f(mo)q(de,)h(the)315 1335 y(terminal)i(b)q(eing)h(used,)
-h(or)f(the)g(application)f(using)g(Readline.)32 b(The)19
-b(text)g(of)f(the)i(test)315 1390 y(extends)c(to)e(the)h(end)h(of)f
-(the)g(line;)g(no)g(c)o(haracters)f(are)h(required)h(to)e(isolate)g
-(it.)315 1466 y Fn(mode)144 b Fo(The)11 b Fn(mode=)e
-Fo(form)h(of)g(the)h Fn($if)f Fo(directiv)o(e)f(is)h(used)h(to)f(test)g
-(whether)h(Readline)555 1521 y(is)j(in)h Fn(emacs)f Fo(or)g
-Fn(vi)g Fo(mo)q(de.)20 b(This)15 b(ma)o(y)f(b)q(e)h(used)g(in)g
-(conjunction)g(with)f(the)555 1575 y(`)p Fn(set)g(keymap)p
-Fo(')f(command,)g(for)h(instance,)f(to)g(set)h(bindings)f(in)h(the)g
-Fn(emacs-)555 1630 y(standard)d Fo(and)i Fn(emacs-ctlx)e
-Fo(k)o(eymaps)h(only)h(if)f(Readline)g(is)g(starting)f(out)555
-1685 y(in)k Fn(emacs)g Fo(mo)q(de.)315 1761 y Fn(term)144
-b Fo(The)14 b Fn(term=)e Fo(form)h(ma)o(y)g(b)q(e)h(used)g(to)f
-(include)h(terminal-sp)q(eci\014c)f(k)o(ey)g(bind-)555
-1816 y(ings,)18 b(p)q(erhaps)h(to)e(bind)h(the)h(k)o(ey)e(sequences)j
-(output)e(b)o(y)g(the)g(terminal's)555 1871 y(function)12
-b(k)o(eys.)18 b(The)13 b(w)o(ord)e(on)h(the)g(righ)o(t)f(side)g(of)h
-(the)g(`)p Fn(=)p Fo(')f(is)g(tested)h(against)555 1926
-y(b)q(oth)j(the)g(full)g(name)g(of)f(the)h(terminal)f(and)h(the)g(p)q
-(ortion)g(of)f(the)h(terminal)555 1980 y(name)i(b)q(efore)g(the)g
-(\014rst)f(`)p Fn(-)p Fo('.)24 b(This)16 b(allo)o(ws)f
-Fn(sun)h Fo(to)g(matc)o(h)h(b)q(oth)f Fn(sun)h Fo(and)555
-2035 y Fn(sun-cmd)p Fo(,)d(for)g(instance.)315 2111 y
-Fn(application)555 2166 y Fo(The)d Fe(application)f Fo(construct)h(is)f
-(used)i(to)e(include)h(application-sp)q(eci\014c)g(set-)555
-2221 y(tings.)18 b(Eac)o(h)12 b(program)f(using)i(the)f(Readline)h
-(library)e(sets)h(the)g Fe(application)555 2276 y(name)s
-Fo(,)f(and)h(y)o(ou)f(can)h(test)e(for)h(a)g(particular)f(v)m(alue.)19
-b(This)11 b(could)h(b)q(e)g(used)g(to)555 2331 y(bind)17
-b(k)o(ey)f(sequences)i(to)d(functions)i(useful)f(for)g(a)g(sp)q
-(eci\014c)h(program.)23 b(F)l(or)555 2385 y(instance,)16
-b(the)h(follo)o(wing)d(command)j(adds)f(a)g(k)o(ey)h(sequence)g(that)f
-(quotes)555 2440 y(the)f(curren)o(t)g(or)g(previous)g(w)o(ord)f(in)i
-(Bash:)675 2506 y Fn($if)23 b(Bash)675 2560 y(#)h(Quote)f(the)g
-(current)g(or)h(previous)f(word)675 2615 y("\\C-xq":)g
-("\\eb\\"\\ef\\"")675 2670 y($endif)p eop end
-%%Page: 11 14
-TeXDict begin 11 13 bop 75 -58 a Fo(Chapter)15 b(1:)k(Command)c(Line)h
-(Editing)1053 b(11)75 149 y Fn($endif)96 b Fo(This)15
-b(command,)f(as)h(seen)h(in)f(the)g(previous)g(example,)g(terminates)f
-(an)h Fn($if)f Fo(command.)75 229 y Fn($else)120 b Fo(Commands)15
-b(in)g(this)f(branc)o(h)i(of)e(the)i Fn($if)e Fo(directiv)o(e)h(are)g
-(executed)h(if)f(the)g(test)g(fails.)75 309 y Fn($include)48
-b Fo(This)21 b(directiv)o(e)g(tak)o(es)g(a)h(single)f(\014lename)h(as)f
-(an)h(argumen)o(t)f(and)h(reads)f(commands)315 364 y(and)e(bindings)h
-(from)e(that)h(\014le.)32 b(F)l(or)19 b(example,)h(the)f(follo)o(wing)e
-(directiv)o(e)i(reads)g(from)315 418 y(`)p Fn(/etc/inputrc)p
-Fo(':)435 486 y Fn($include)k(/etc/inputrc)75 585 y Fd(1.3.3)30
-b(Sample)20 b(Init)h(File)75 659 y Fo(Here)13 b(is)g(an)g(example)g(of)
-g(an)g Fe(inputrc)j Fo(\014le.)k(This)12 b(illustrates)g(k)o(ey)h
-(binding,)g(v)m(ariable)g(assignmen)o(t,)f(and)75 714
-y(conditional)i(syn)o(tax.)p eop end
-%%Page: 12 15
-TeXDict begin 12 14 bop 75 -58 a Fo(Chapter)15 b(1:)k(Command)c(Line)h
-(Editing)1053 b(12)195 204 y Fn(#)24 b(This)f(file)g(controls)g(the)h
-(behaviour)e(of)i(line)f(input)g(editing)g(for)195 259
-y(#)h(programs)e(that)i(use)f(the)h(GNU)f(Readline)g(library.)47
-b(Existing)195 314 y(#)24 b(programs)e(include)h(FTP,)h(Bash,)f(and)g
-(GDB.)195 369 y(#)195 423 y(#)h(You)f(can)h(re-read)f(the)g(inputrc)g
-(file)g(with)h(C-x)f(C-r.)195 478 y(#)h(Lines)f(beginning)g(with)g('#')
-g(are)h(comments.)195 533 y(#)195 588 y(#)g(First,)f(include)g(any)g
-(systemwide)g(bindings)f(and)i(variable)195 643 y(#)g(assignments)e
-(from)h(/etc/Inputrc)195 697 y($include)g(/etc/Inputrc)195
-807 y(#)195 862 y(#)h(Set)f(various)g(bindings)g(for)g(emacs)g(mode.)
-195 971 y(set)g(editing-mode)g(emacs)195 1081 y($if)g(mode=emacs)195
-1191 y(Meta-Control-h:)46 b(backward-kill-word)21 b(Text)i(after)h(the)
-f(function)g(name)g(is)h(ignored)p 1986 1201 21 38 v
-195 1300 a(#)195 1355 y(#)g(Arrow)f(keys)g(in)h(keypad)f(mode)195
-1410 y(#)195 1465 y(#"\\M-OD":)190 b(backward-char)195
-1519 y(#"\\M-OC":)g(forward-char)195 1574 y(#"\\M-OA":)g
-(previous-history)195 1629 y(#"\\M-OB":)g(next-history)195
-1684 y(#)195 1738 y(#)24 b(Arrow)f(keys)g(in)h(ANSI)f(mode)195
-1793 y(#)195 1848 y("\\M-[D":)190 b(backward-char)195
-1903 y("\\M-[C":)g(forward-char)195 1958 y("\\M-[A":)g
-(previous-history)195 2012 y("\\M-[B":)g(next-history)195
-2067 y(#)195 2122 y(#)24 b(Arrow)f(keys)g(in)h(8)g(bit)f(keypad)g(mode)
-195 2177 y(#)195 2232 y(#"\\M-\\C-OD":)165 b(backward-char)195
-2286 y(#"\\M-\\C-OC":)g(forward-char)195 2341 y(#"\\M-\\C-OA":)g
-(previous-history)195 2396 y(#"\\M-\\C-OB":)g(next-history)195
-2451 y(#)195 2506 y(#)24 b(Arrow)f(keys)g(in)h(8)g(bit)f(ANSI)g(mode)
-195 2560 y(#)195 2615 y(#"\\M-\\C-[D":)165 b(backward-char)195
-2670 y(#"\\M-\\C-[C":)g(forward-char)p eop end
-%%Page: 13 16
-TeXDict begin 13 15 bop 75 -58 a Fo(Chapter)15 b(1:)k(Command)c(Line)h
-(Editing)1053 b(13)195 149 y Fn(#"\\M-\\C-[A":)165 b(previous-history)
-195 204 y(#"\\M-\\C-[B":)g(next-history)195 314 y(C-q:)23
-b(quoted-insert)195 423 y($endif)195 533 y(#)h(An)f(old-style)g
-(binding.)47 b(This)23 b(happens)g(to)g(be)h(the)f(default.)195
-588 y(TAB:)g(complete)195 697 y(#)h(Macros)f(that)g(are)h(convenient)e
-(for)h(shell)h(interaction)195 752 y($if)f(Bash)195 807
-y(#)h(edit)f(the)g(path)195 862 y("\\C-xp":)g
-("PATH=${PATH}\\e\\C-e\\C-a\\)o(ef\\C-f")195 917 y(#)h(prepare)f(to)g
-(type)h(a)f(quoted)g(word)h(--)195 971 y(#)g(insert)f(open)g(and)h
-(close)f(double)g(quotes)195 1026 y(#)h(and)f(move)g(to)h(just)f(after)
-h(the)f(open)g(quote)195 1081 y("\\C-x\\"":)g("\\"\\"\\C-b")195
-1136 y(#)h(insert)f(a)g(backslash)g(\(testing)g(backslash)g(escapes)195
-1191 y(#)h(in)f(sequences)g(and)g(macros\))195 1245 y("\\C-x\\\\":)g
-("\\\\")195 1300 y(#)h(Quote)f(the)g(current)g(or)h(previous)f(word)195
-1355 y("\\C-xq":)g("\\eb\\"\\ef\\"")195 1410 y(#)h(Add)f(a)h(binding)f
-(to)g(refresh)g(the)h(line,)f(which)g(is)h(unbound)195
-1465 y("\\C-xr":)f(redraw-current-line)195 1519 y(#)h(Edit)f(variable)g
-(on)g(current)g(line.)195 1574 y("\\M-\\C-v":)f
-("\\C-a\\C-k$\\C-y\\M-\\C-e\\C-a\\C-y=)o(")195 1629 y($endif)195
-1738 y(#)i(use)f(a)h(visible)f(bell)g(if)h(one)f(is)h(available)195
-1793 y(set)f(bell-style)g(visible)195 1903 y(#)h(don't)f(strip)g
-(characters)g(to)g(7)h(bits)f(when)h(reading)195 1958
-y(set)f(input-meta)g(on)195 2067 y(#)h(allow)f(iso-latin1)f(characters)
-h(to)g(be)h(inserted)f(rather)195 2122 y(#)h(than)f(converted)g(to)g
-(prefix-meta)g(sequences)195 2177 y(set)g(convert-meta)g(off)195
-2286 y(#)h(display)f(characters)f(with)h(the)h(eighth)f(bit)g(set)h
-(directly)195 2341 y(#)g(rather)f(than)g(as)h(meta-prefixed)e
-(characters)195 2396 y(set)h(output-meta)g(on)195 2506
-y(#)h(if)f(there)g(are)h(more)f(than)h(150)f(possible)g(completions)f
-(for)195 2560 y(#)i(a)f(word,)h(ask)f(the)h(user)f(if)g(he)h(wants)f
-(to)h(see)f(all)h(of)f(them)195 2615 y(set)g(completion-query-items)e
-(150)p eop end
-%%Page: 14 17
-TeXDict begin 14 16 bop 75 -58 a Fo(Chapter)15 b(1:)k(Command)c(Line)h
-(Editing)1053 b(14)195 149 y Fn(#)24 b(For)f(FTP)195
-204 y($if)g(Ftp)195 259 y("\\C-xg":)g("get)g(\\M-?")195
-314 y("\\C-xt":)g("put)g(\\M-?")195 369 y("\\M-.":)g(yank-last-arg)195
-423 y($endif)75 539 y Fm(1.4)33 b(Bindable)22 b(Readline)f(Commands)75
-618 y Fo(This)12 b(section)h(describ)q(es)g(Readline)g(commands)g(that)
-f(ma)o(y)g(b)q(e)i(b)q(ound)f(to)g(k)o(ey)f(sequences.)20
-b(Command)75 673 y(names)15 b(without)f(an)h(accompan)o(ying)g(k)o(ey)g
-(sequence)h(are)f(un)o(b)q(ound)i(b)o(y)e(default.)137
-740 y(In)f(the)f(follo)o(wing)e(descriptions,)i Fe(p)q(oin)o(t)g
-Fo(refers)g(to)g(the)g(curren)o(t)g(cursor)f(p)q(osition,)h(and)g
-Fe(mark)i Fo(refers)75 795 y(to)k(a)g(cursor)g(p)q(osition)f(sa)o(v)o
-(ed)h(b)o(y)h(the)f Fn(set-mark)g Fo(command.)32 b(The)20
-b(text)f(b)q(et)o(w)o(een)g(the)h(p)q(oin)o(t)f(and)75
-850 y(mark)c(is)f(referred)i(to)e(as)h(the)g Fe(region)p
-Fo(.)75 948 y Fd(1.4.1)30 b(Commands)21 b(F)-5 b(or)19
-b(Mo)n(ving)75 1034 y Fn(beginning-of-line)13 b(\(C-a\))315
-1089 y Fo(Mo)o(v)o(e)h(to)h(the)g(start)f(of)h(the)g(curren)o(t)g
-(line.)75 1167 y Fn(end-of-line)f(\(C-e\))315 1222 y
-Fo(Mo)o(v)o(e)g(to)h(the)g(end)h(of)f(the)g(line.)75
-1301 y Fn(forward-char)f(\(C-f\))315 1356 y Fo(Mo)o(v)o(e)g(forw)o(ard)
-g(a)h(c)o(haracter.)75 1434 y Fn(backward-char)e(\(C-b\))315
-1489 y Fo(Mo)o(v)o(e)h(bac)o(k)h(a)g(c)o(haracter.)75
-1568 y Fn(forward-word)f(\(M-f\))315 1623 y Fo(Mo)o(v)o(e)g(forw)o(ard)
-g(to)g(the)i(end)g(of)e(the)h(next)h(w)o(ord.)j(W)l(ords)c(are)f(comp)q
-(osed)i(of)f(letters)f(and)315 1678 y(digits.)75 1756
-y Fn(backward-word)f(\(M-b\))315 1811 y Fo(Mo)o(v)o(e)j(bac)o(k)g(to)h
-(the)f(start)g(of)g(the)h(curren)o(t)g(or)f(previous)h(w)o(ord.)24
-b(W)l(ords)16 b(are)h(comp)q(osed)315 1866 y(of)e(letters)f(and)h
-(digits.)75 1945 y Fn(clear-screen)f(\(C-l\))315 2000
-y Fo(Clear)e(the)i(screen)g(and)f(redra)o(w)g(the)g(curren)o(t)g(line,)
-g(lea)o(ving)g(the)g(curren)o(t)g(line)g(at)g(the)g(top)315
-2054 y(of)i(the)g(screen.)75 2133 y Fn(redraw-current-line)e(\(\))315
-2188 y Fo(Refresh)j(the)f(curren)o(t)g(line.)20 b(By)15
-b(default,)g(this)f(is)h(un)o(b)q(ound.)75 2287 y Fd(1.4.2)30
-b(Commands)21 b(F)-5 b(or)19 b(Manipulating)i(The)f(History)75
-2372 y Fn(accept-line)14 b(\(Newline)g(or)h(Return\))315
-2427 y Fo(Accept)j(the)g(line)f(regardless)g(of)g(where)h(the)g(cursor)
-f(is.)26 b(If)18 b(this)f(line)g(is)h(non-empt)o(y)l(,)g(it)315
-2482 y(ma)o(y)d(b)q(e)i(added)f(to)g(the)g(history)f(list)f(for)i
-(future)g(recall)f(with)g Fn(add_history\(\))p Fo(.)20
-b(If)d(this)315 2536 y(line)e(is)g(a)f(mo)q(di\014ed)i(history)e(line,)
-h(the)g(history)f(line)h(is)g(restored)f(to)h(its)f(original)g(state.)
-75 2615 y Fn(previous-history)f(\(C-p\))315 2670 y Fo(Mo)o(v)o(e)h
-(`bac)o(k')h(through)f(the)i(history)e(list,)f(fetc)o(hing)i(the)g
-(previous)g(command.)p eop end
-%%Page: 15 18
-TeXDict begin 15 17 bop 75 -58 a Fo(Chapter)15 b(1:)k(Command)c(Line)h
-(Editing)1053 b(15)75 149 y Fn(next-history)14 b(\(C-n\))315
-204 y Fo(Mo)o(v)o(e)g(`forw)o(ard')f(through)i(the)h(history)e(list,)f
-(fetc)o(hing)i(the)g(next)h(command.)75 286 y Fn(beginning-of-history)c
-(\(M-<\))315 341 y Fo(Mo)o(v)o(e)i(to)h(the)g(\014rst)g(line)g(in)g
-(the)g(history)l(.)75 423 y Fn(end-of-history)e(\(M->\))315
-478 y Fo(Mo)o(v)o(e)h(to)h(the)g(end)h(of)f(the)g(input)g(history)l(,)f
-(i.e.,)g(the)h(line)g(curren)o(tly)g(b)q(eing)g(en)o(tered.)75
-560 y Fn(reverse-search-history)d(\(C-r\))315 615 y Fo(Searc)o(h)k(bac)
-o(kw)o(ard)e(starting)g(at)h(the)h(curren)o(t)f(line)h(and)f(mo)o(ving)
-g(`up')g(through)g(the)h(his-)315 670 y(tory)e(as)h(necessary)l(.)20
-b(This)15 b(is)g(an)g(incremen)o(tal)f(searc)o(h.)75
-752 y Fn(forward-search-history)e(\(C-s\))315 807 y Fo(Searc)o(h)j
-(forw)o(ard)e(starting)g(at)i(the)f(curren)o(t)h(line)f(and)h(mo)o
-(ving)f(`do)o(wn')g(through)g(the)h(the)315 862 y(history)f(as)h
-(necessary)l(.)20 b(This)15 b(is)g(an)g(incremen)o(tal)f(searc)o(h.)75
-944 y Fn(non-incremental-reverse-se)o(arch-hi)o(story)e(\(M-p\))315
-999 y Fo(Searc)o(h)k(bac)o(kw)o(ard)e(starting)g(at)h(the)h(curren)o(t)
-f(line)h(and)f(mo)o(ving)g(`up')g(through)g(the)h(his-)315
-1054 y(tory)h(as)h(necessary)g(using)g(a)f(non-incremen)o(tal)h(searc)o
-(h)g(for)f(a)h(string)f(supplied)h(b)o(y)g(the)315 1108
-y(user.)75 1191 y Fn(non-incremental-forward-se)o(arch-hi)o(story)12
-b(\(M-n\))315 1245 y Fo(Searc)o(h)j(forw)o(ard)e(starting)g(at)i(the)f
-(curren)o(t)h(line)f(and)h(mo)o(ving)f(`do)o(wn')g(through)g(the)h(the)
-315 1300 y(history)d(as)h(necessary)h(using)f(a)g(non-incremen)o(tal)g
-(searc)o(h)g(for)g(a)g(string)f(supplied)i(b)o(y)f(the)315
-1355 y(user.)75 1437 y Fn(history-search-forward)f(\(\))315
-1492 y Fo(Searc)o(h)21 b(forw)o(ard)e(through)i(the)f(history)g(for)g
-(the)h(string)f(of)g(c)o(haracters)g(b)q(et)o(w)o(een)h(the)315
-1547 y(start)16 b(of)h(the)h(curren)o(t)g(line)f(and)g(the)h(p)q(oin)o
-(t.)27 b(This)17 b(is)g(a)g(non-incremen)o(tal)g(searc)o(h.)27
-b(By)315 1601 y(default,)14 b(this)h(command)g(is)g(un)o(b)q(ound.)75
-1684 y Fn(history-search-backward)d(\(\))315 1738 y Fo(Searc)o(h)18
-b(bac)o(kw)o(ard)e(through)h(the)h(history)e(for)h(the)g(string)g(of)g
-(c)o(haracters)f(b)q(et)o(w)o(een)i(the)315 1793 y(start)e(of)h(the)h
-(curren)o(t)g(line)f(and)g(the)h(p)q(oin)o(t.)27 b(This)17
-b(is)g(a)g(non-incremen)o(tal)g(searc)o(h.)27 b(By)315
-1848 y(default,)14 b(this)h(command)g(is)g(un)o(b)q(ound.)75
-1930 y Fn(yank-nth-arg)f(\(M-C-y\))315 1985 y Fo(Insert)19
-b(the)f(\014rst)h(argumen)o(t)e(to)h(the)h(previous)f(command)g
-(\(usually)g(the)h(second)g(w)o(ord)315 2040 y(on)d(the)g(previous)g
-(line\))f(at)g(p)q(oin)o(t.)22 b(With)15 b(an)h(argumen)o(t)f
-Fe(n)p Fo(,)h(insert)f(the)h Fe(n)p Fo(th)g(w)o(ord)g(from)315
-2095 y(the)i(previous)f(command)g(\(the)g(w)o(ords)g(in)g(the)h
-(previous)f(command)g(b)q(egin)h(with)f(w)o(ord)315 2149
-y(0\).)33 b(A)20 b(negativ)o(e)f(argumen)o(t)g(inserts)g(the)h
-Fe(n)p Fo(th)g(w)o(ord)f(from)g(the)h(end)g(of)f(the)h(previous)315
-2204 y(command.)k(Once)17 b(the)g(argumen)o(t)e Fe(n)i
-Fo(is)f(computed,)h(the)f(argumen)o(t)g(is)g(extracted)g(as)g(if)315
-2259 y(the)f(`)p Fn(!)p Fg(n)5 b Fo(')15 b(history)f(expansion)h(had)g
-(b)q(een)i(sp)q(eci\014ed.)75 2341 y Fn(yank-last-arg)c(\(M-.)i(or)g
-(M-_\))315 2396 y Fo(Insert)j(last)e(argumen)o(t)h(to)g(the)g(previous)
-h(command)f(\(the)g(last)g(w)o(ord)g(of)g(the)g(previous)315
-2451 y(history)f(en)o(try\).)24 b(With)16 b(a)g(n)o(umeric)h(argumen)o
-(t,)f(b)q(eha)o(v)o(e)h(exactly)f(lik)o(e)g Fn(yank-nth-arg)p
-Fo(.)315 2506 y(Successiv)o(e)d(calls)e(to)h Fn(yank-last-arg)f
-Fo(mo)o(v)o(e)g(bac)o(k)i(through)f(the)g(history)g(list,)f(inserting)
-315 2560 y(the)g(last)g(w)o(ord)f(\(or)h(the)g(w)o(ord)g(sp)q
-(eci\014ed)h(b)o(y)f(the)h(argumen)o(t)e(to)h(the)g(\014rst)g(call\))f
-(of)h(eac)o(h)g(line)315 2615 y(in)18 b(turn.)29 b(An)o(y)18
-b(n)o(umeric)g(argumen)o(t)g(supplied)g(to)g(these)g(successiv)o(e)h
-(calls)e(determines)315 2670 y(the)g(direction)g(to)g(mo)o(v)o(e)g
-(through)g(the)g(history)l(.)26 b(A)17 b(negativ)o(e)g(argumen)o(t)f
-(switc)o(hes)h(the)p eop end
-%%Page: 16 19
-TeXDict begin 16 18 bop 75 -58 a Fo(Chapter)15 b(1:)k(Command)c(Line)h
-(Editing)1053 b(16)315 149 y(direction)11 b(through)g(the)g(history)g
-(\(bac)o(k)g(or)g(forw)o(ard\).)17 b(The)11 b(history)g(expansion)g
-(facilities)315 204 y(are)i(used)i(to)e(extract)g(the)h(last)e(argumen)
-o(t,)h(as)h(if)f(the)h(`)p Fn(!$)p Fo(')e(history)h(expansion)h(had)g
-(b)q(een)315 259 y(sp)q(eci\014ed.)75 364 y Fd(1.4.3)30
-b(Commands)21 b(F)-5 b(or)19 b(Changing)i(T)-5 b(ext)75
-452 y Fn(delete-char)14 b(\(C-d\))315 507 y Fo(Delete)19
-b(the)h(c)o(haracter)e(at)h(p)q(oin)o(t.)32 b(If)20 b(p)q(oin)o(t)f(is)
-g(at)f(the)i(b)q(eginning)g(of)f(the)g(line,)h(there)315
-562 y(are)e(no)h(c)o(haracters)e(in)i(the)f(line,)h(and)g(the)f(last)g
-(c)o(haracter)f(t)o(yp)q(ed)i(w)o(as)f(not)g(b)q(ound)i(to)315
-617 y Fn(delete-char)p Fo(,)13 b(then)j(return)f Fh(eof)p
-Fo(.)75 701 y Fn(backward-delete-char)d(\(Rubout\))315
-756 y Fo(Delete)j(the)g(c)o(haracter)f(b)q(ehind)i(the)g(cursor.)j(A)c
-(n)o(umeric)g(argumen)o(t)f(means)i(to)e(kill)g(the)315
-811 y(c)o(haracters)g(instead)h(of)g(deleting)g(them.)75
-896 y Fn(forward-backward-delete-ch)o(ar)d(\(\))315 951
-y Fo(Delete)19 b(the)g(c)o(haracter)f(under)i(the)f(cursor,)h(unless)f
-(the)g(cursor)g(is)g(at)f(the)h(end)h(of)f(the)315 1005
-y(line,)c(in)h(whic)o(h)g(case)f(the)h(c)o(haracter)g(b)q(ehind)g(the)g
-(cursor)g(is)f(deleted.)22 b(By)16 b(default,)g(this)315
-1060 y(is)f(not)g(b)q(ound)h(to)e(a)h(k)o(ey)l(.)75 1145
-y Fn(quoted-insert)e(\(C-q)i(or)g(C-v\))315 1200 y Fo(Add)j(the)f(next)
-g(c)o(haracter)g(t)o(yp)q(ed)g(to)f(the)i(line)e(v)o(erbatim.)25
-b(This)17 b(is)f(ho)o(w)h(to)g(insert)f(k)o(ey)315 1255
-y(sequences)g(lik)o(e)f Fg(C-q)p Fo(,)f(for)h(example.)75
-1339 y Fn(tab-insert)f(\(M-TAB\))315 1394 y Fo(Insert)h(a)g(tab)g(c)o
-(haracter.)75 1479 y Fn(self-insert)f(\(a,)g(b,)h(A,)g(1,)g(!,)g(...)o
-(\))315 1534 y Fo(Insert)g(y)o(ourself.)75 1618 y Fn(transpose-chars)e
-(\(C-t\))315 1673 y Fo(Drag)i(the)h(c)o(haracter)f(b)q(efore)h(the)h
-(cursor)e(forw)o(ard)g(o)o(v)o(er)g(the)h(c)o(haracter)f(at)h(the)g
-(cursor,)315 1728 y(mo)o(ving)h(the)g(cursor)h(forw)o(ard)e(as)i(w)o
-(ell.)26 b(If)18 b(the)g(insertion)f(p)q(oin)o(t)g(is)g(at)g(the)h(end)
-h(of)e(the)315 1783 y(line,)11 b(then)g(this)g(transp)q(oses)f(the)h
-(last)f(t)o(w)o(o)g(c)o(haracters)g(of)h(the)g(line.)18
-b(Negativ)o(e)10 b(argumen)o(ts)315 1838 y(ha)o(v)o(e)15
-b(no)g(e\013ect.)75 1922 y Fn(transpose-words)e(\(M-t\))315
-1977 y Fo(Drag)i(the)h(w)o(ord)g(b)q(efore)g(p)q(oin)o(t)g(past)g(the)g
-(w)o(ord)f(after)h(p)q(oin)o(t,)f(mo)o(ving)g(p)q(oin)o(t)h(past)g
-(that)315 2032 y(w)o(ord)d(as)h(w)o(ell.)19 b(If)14 b(the)g(insertion)g
-(p)q(oin)o(t)f(is)h(at)g(the)g(end)h(of)e(the)i(line,)e(this)h(transp)q
-(oses)g(the)315 2087 y(last)g(t)o(w)o(o)g(w)o(ords)g(on)i(the)f(line.)
-75 2172 y Fn(upcase-word)f(\(M-u\))315 2226 y Fo(Upp)q(ercase)j(the)f
-(curren)o(t)g(\(or)f(follo)o(wing\))e(w)o(ord.)22 b(With)15
-b(a)h(negativ)o(e)f(argumen)o(t,)g(upp)q(er-)315 2281
-y(case)g(the)g(previous)g(w)o(ord,)g(but)g(do)g(not)g(mo)o(v)o(e)f(the)
-i(cursor.)75 2366 y Fn(downcase-word)d(\(M-l\))315 2421
-y Fo(Lo)o(w)o(ercase)d(the)h(curren)o(t)g(\(or)f(follo)o(wing\))e(w)o
-(ord.)17 b(With)10 b(a)h(negativ)o(e)f(argumen)o(t,)g(lo)o(w)o(ercase)
-315 2476 y(the)15 b(previous)g(w)o(ord,)f(but)i(do)f(not)g(mo)o(v)o(e)f
-(the)h(cursor.)75 2560 y Fn(capitalize-word)e(\(M-c\))315
-2615 y Fo(Capitalize)c(the)i(curren)o(t)f(\(or)g(follo)o(wing\))e(w)o
-(ord.)18 b(With)10 b(a)g(negativ)o(e)g(argumen)o(t,)g(capitalize)315
-2670 y(the)15 b(previous)g(w)o(ord,)f(but)i(do)f(not)g(mo)o(v)o(e)f
-(the)h(cursor.)p eop end
-%%Page: 17 20
-TeXDict begin 17 19 bop 75 -58 a Fo(Chapter)15 b(1:)k(Command)c(Line)h
-(Editing)1053 b(17)75 149 y Fn(overwrite-mode)13 b(\(\))315
-204 y Fo(T)l(oggle)i(o)o(v)o(erwrite)g(mo)q(de.)24 b(With)16
-b(an)g(explicit)g(p)q(ositiv)o(e)g(n)o(umeric)g(argumen)o(t,)g(switc)o
-(hes)315 259 y(to)10 b(o)o(v)o(erwrite)f(mo)q(de.)19
-b(With)10 b(an)h(explicit)f(non-p)q(ositiv)o(e)g(n)o(umeric)h(argumen)o
-(t,)f(switc)o(hes)h(to)315 314 y(insert)k(mo)q(de.)20
-b(This)15 b(command)g(a\013ects)g(only)g Fn(emacs)f Fo(mo)q(de;)h
-Fn(vi)g Fo(mo)q(de)h(do)q(es)g(o)o(v)o(erwrite)315 369
-y(di\013eren)o(tly)l(.)j(Eac)o(h)c(call)f(to)h Fn(readline\(\))f
-Fo(starts)f(in)j(insert)e(mo)q(de.)315 436 y(In)h(o)o(v)o(erwrite)e(mo)
-q(de,)i(c)o(haracters)f(b)q(ound)h(to)f Fn(self-insert)f
-Fo(replace)i(the)f(text)h(at)e(p)q(oin)o(t)315 491 y(rather)20
-b(than)h(pushing)g(the)g(text)f(to)g(the)h(righ)o(t.)35
-b(Characters)20 b(b)q(ound)i(to)e Fn(backward-)315 546
-y(delete-char)14 b Fo(replace)h(the)g(c)o(haracter)g(b)q(efore)g(p)q
-(oin)o(t)g(with)f(a)h(space.)315 613 y(By)g(default,)g(this)f(command)h
-(is)g(un)o(b)q(ound.)75 714 y Fd(1.4.4)30 b(Killing)20
-b(And)h(Y)-5 b(anking)75 800 y Fn(kill-line)14 b(\(C-k\))315
-855 y Fo(Kill)g(the)i(text)e(from)h(p)q(oin)o(t)g(to)f(the)h(end)h(of)f
-(the)g(line.)75 935 y Fn(backward-kill-line)e(\(C-x)h(Rubout\))315
-990 y Fo(Kill)g(bac)o(kw)o(ard)h(to)f(the)i(b)q(eginning)f(of)g(the)g
-(line.)75 1070 y Fn(unix-line-discard)e(\(C-u\))315 1125
-y Fo(Kill)h(bac)o(kw)o(ard)h(from)f(the)i(cursor)e(to)h(the)g(b)q
-(eginning)h(of)e(the)i(curren)o(t)f(line.)75 1205 y Fn(kill-whole-line)
-e(\(\))315 1260 y Fo(Kill)k(all)h(c)o(haracters)f(on)h(the)h(curren)o
-(t)f(line,)g(no)g(matter)g(where)g(p)q(oin)o(t)g(is.)28
-b(By)19 b(default,)315 1315 y(this)c(is)f(un)o(b)q(ound.)75
-1395 y Fn(kill-word)g(\(M-d\))315 1450 y Fo(Kill)g(from)g(p)q(oin)o(t)g
-(to)g(the)h(end)g(of)f(the)h(curren)o(t)g(w)o(ord,)e(or)i(if)f(b)q(et)o
-(w)o(een)h(w)o(ords,)e(to)i(the)f(end)315 1505 y(of)h(the)g(next)g(w)o
-(ord.)20 b(W)l(ord)14 b(b)q(oundaries)i(are)f(the)g(same)g(as)g
-Fn(forward-word)p Fo(.)75 1585 y Fn(backward-kill-word)e(\(M-DEL\))315
-1640 y Fo(Kill)h(the)g(w)o(ord)g(b)q(ehind)h(p)q(oin)o(t.)20
-b(W)l(ord)14 b(b)q(oundaries)g(are)g(the)h(same)f(as)g
-Fn(backward-word)p Fo(.)75 1720 y Fn(unix-word-rubout)f(\(C-w\))315
-1775 y Fo(Kill)i(the)h(w)o(ord)f(b)q(ehind)i(p)q(oin)o(t,)e(using)h
-(white)f(space)h(as)g(a)f(w)o(ord)g(b)q(oundary)l(.)23
-b(The)16 b(killed)315 1830 y(text)f(is)f(sa)o(v)o(ed)h(on)g(the)h
-(kill-ring.)75 1910 y Fn(unix-filename-rubout)c(\(\))315
-1965 y Fo(Kill)17 b(the)i(w)o(ord)e(b)q(ehind)i(p)q(oin)o(t,)f(using)g
-(white)g(space)g(and)h(the)f(slash)g(c)o(haracter)f(as)h(the)315
-2020 y(w)o(ord)d(b)q(oundaries.)20 b(The)15 b(killed)g(text)f(is)h(sa)o
-(v)o(ed)g(on)g(the)g(kill-ring.)75 2100 y Fn(delete-horizontal-space)d
-(\(\))315 2155 y Fo(Delete)j(all)f(spaces)h(and)h(tabs)e(around)i(p)q
-(oin)o(t.)j(By)c(default,)g(this)f(is)h(un)o(b)q(ound.)75
-2235 y Fn(kill-region)f(\(\))315 2290 y Fo(Kill)g(the)i(text)e(in)h
-(the)h(curren)o(t)f(region.)k(By)c(default,)g(this)f(command)h(is)g(un)
-o(b)q(ound.)75 2370 y Fn(copy-region-as-kill)e(\(\))315
-2425 y Fo(Cop)o(y)j(the)i(text)e(in)h(the)g(region)f(to)h(the)g(kill)e
-(bu\013er,)i(so)g(it)f(can)h(b)q(e)h(y)o(ank)o(ed)f(righ)o(t)f(a)o(w)o
-(a)o(y)l(.)315 2480 y(By)f(default,)g(this)f(command)h(is)g(un)o(b)q
-(ound.)75 2560 y Fn(copy-backward-word)e(\(\))315 2615
-y Fo(Cop)o(y)19 b(the)g(w)o(ord)g(b)q(efore)g(p)q(oin)o(t)g(to)f(the)i
-(kill)e(bu\013er.)32 b(The)19 b(w)o(ord)g(b)q(oundaries)g(are)g(the)315
-2670 y(same)c(as)g Fn(backward-word)p Fo(.)j(By)d(default,)f(this)h
-(command)g(is)g(un)o(b)q(ound.)p eop end
-%%Page: 18 21
-TeXDict begin 18 20 bop 75 -58 a Fo(Chapter)15 b(1:)k(Command)c(Line)h
-(Editing)1053 b(18)75 149 y Fn(copy-forward-word)13 b(\(\))315
-204 y Fo(Cop)o(y)i(the)h(w)o(ord)e(follo)o(wing)g(p)q(oin)o(t)h(to)g
-(the)g(kill)g(bu\013er.)20 b(The)c(w)o(ord)f(b)q(oundaries)h(are)f(the)
-315 259 y(same)g(as)g Fn(forward-word)p Fo(.)j(By)d(default,)g(this)f
-(command)h(is)g(un)o(b)q(ound.)75 342 y Fn(yank)g(\(C-y\))315
-397 y Fo(Y)l(ank)g(the)h(top)f(of)f(the)i(kill)e(ring)g(in)o(to)g(the)i
-(bu\013er)f(at)f(p)q(oin)o(t.)75 479 y Fn(yank-pop)g(\(M-y\))315
-534 y Fo(Rotate)j(the)g(kill-ring,)f(and)h(y)o(ank)g(the)h(new)f(top.)
-26 b(Y)l(ou)17 b(can)h(only)f(do)g(this)g(if)f(the)i(prior)315
-589 y(command)d(is)g Fn(yank)f Fo(or)h Fn(yank-pop)p
-Fo(.)75 692 y Fd(1.4.5)30 b(Sp)r(ecifying)20 b(Numeric)h(Argumen)n(ts)
-75 779 y Fn(digit-argument)13 b(\()p Fg(M-0)p Fn(,)i
-Fg(M-1)p Fn(,)f(...)h Fg(M--)p Fn(\))315 834 y Fo(Add)f(this)f(digit)f
-(to)h(the)h(argumen)o(t)e(already)h(accum)o(ulating,)f(or)h(start)f(a)h
-(new)h(argumen)o(t.)315 889 y Fg(M--)h Fo(starts)f(a)h(negativ)o(e)f
-(argumen)o(t.)75 971 y Fn(universal-argument)f(\(\))315
-1026 y Fo(This)f(is)h(another)f(w)o(a)o(y)g(to)g(sp)q(ecify)h(an)g
-(argumen)o(t.)18 b(If)13 b(this)f(command)h(is)f(follo)o(w)o(ed)f(b)o
-(y)i(one)315 1081 y(or)h(more)h(digits,)e(optionally)g(with)h(a)h
-(leading)f(min)o(us)g(sign,)g(those)h(digits)e(de\014ne)j(the)f(ar-)315
-1136 y(gumen)o(t.)k(If)c(the)g(command)f(is)g(follo)o(w)o(ed)f(b)o(y)i
-(digits,)e(executing)h Fn(universal-argument)315 1191
-y Fo(again)h(ends)h(the)g(n)o(umeric)g(argumen)o(t,)f(but)h(is)g
-(otherwise)f(ignored.)21 b(As)16 b(a)g(sp)q(ecial)f(case,)315
-1245 y(if)h(this)g(command)g(is)g(immediately)f(follo)o(w)o(ed)g(b)o(y)
-h(a)g(c)o(haracter)g(that)g(is)g(neither)g(a)g(digit)315
-1300 y(or)d(min)o(us)h(sign,)f(the)h(argumen)o(t)g(coun)o(t)f(for)h
-(the)g(next)g(command)g(is)f(m)o(ultiplied)g(b)o(y)h(four.)315
-1355 y(The)19 b(argumen)o(t)f(coun)o(t)g(is)g(initially)f(one,)i(so)f
-(executing)h(this)f(function)h(the)f(\014rst)h(time)315
-1410 y(mak)o(es)c(the)h(argumen)o(t)f(coun)o(t)h(four,)f(a)h(second)g
-(time)f(mak)o(es)h(the)g(argumen)o(t)f(coun)o(t)g(six-)315
-1465 y(teen,)g(and)g(so)g(on.)20 b(By)15 b(default,)g(this)f(is)h(not)g
-(b)q(ound)h(to)f(a)g(k)o(ey)l(.)75 1567 y Fd(1.4.6)30
-b(Letting)20 b(Readline)g(T)n(yp)r(e)h(F)-5 b(or)19 b(Y)-5
-b(ou)75 1655 y Fn(complete)14 b(\(TAB\))315 1709 y Fo(A)o(ttempt)c(to)h
-(p)q(erform)g(completion)g(on)g(the)g(text)g(b)q(efore)h(p)q(oin)o(t.)
-18 b(The)11 b(actual)g(completion)315 1764 y(p)q(erformed)k(is)g
-(application-sp)q(eci\014c.)20 b(The)15 b(default)g(is)g(\014lename)g
-(completion.)75 1847 y Fn(possible-completions)d(\(M-?\))315
-1902 y Fo(List)17 b(the)g(p)q(ossible)g(completions)g(of)g(the)g(text)g
-(b)q(efore)h(p)q(oin)o(t.)25 b(When)18 b(displa)o(ying)e(com-)315
-1957 y(pletions,)f(Readline)i(sets)f(the)g(n)o(um)o(b)q(er)h(of)e
-(columns)h(used)h(for)f(displa)o(y)f(to)h(the)g(v)m(alue)g(of)315
-2011 y Fn(completion-display-width)p Fo(,)f(the)k(v)m(alue)f(of)g(the)g
-(en)o(vironmen)o(t)g(v)m(ariable)f Fn(COLUMNS)p Fo(,)315
-2066 y(or)e(the)g(screen)h(width,)e(in)h(that)g(order.)75
-2149 y Fn(insert-completions)e(\(M-*\))315 2204 y Fo(Insert)j(all)e
-(completions)g(of)h(the)g(text)g(b)q(efore)h(p)q(oin)o(t)e(that)h(w)o
-(ould)g(ha)o(v)o(e)g(b)q(een)h(generated)315 2258 y(b)o(y)f
-Fn(possible-completions)p Fo(.)75 2341 y Fn(menu-complete)e(\(\))315
-2396 y Fo(Similar)d(to)i Fn(complete)p Fo(,)f(but)h(replaces)g(the)g(w)
-o(ord)f(to)g(b)q(e)i(completed)e(with)h(a)f(single)h(matc)o(h)315
-2451 y(from)18 b(the)h(list)f(of)g(p)q(ossible)h(completions.)30
-b(Rep)q(eated)20 b(execution)f(of)g Fn(menu-complete)315
-2506 y Fo(steps)h(through)g(the)g(list)f(of)h(p)q(ossible)g
-(completions,)g(inserting)f(eac)o(h)h(matc)o(h)f(in)h(turn.)315
-2560 y(A)o(t)e(the)g(end)h(of)f(the)h(list)e(of)h(completions,)g(the)g
-(b)q(ell)h(is)e(rung)i(\(sub)s(ject)f(to)f(the)i(setting)315
-2615 y(of)f Fn(bell-style)p Fo(\))e(and)i(the)g(original)e(text)i(is)f
-(restored.)28 b(An)19 b(argumen)o(t)e(of)g Fe(n)i Fo(mo)o(v)o(es)e
-Fe(n)315 2670 y Fo(p)q(ositions)f(forw)o(ard)g(in)i(the)f(list)f(of)h
-(matc)o(hes;)h(a)f(negativ)o(e)f(argumen)o(t)h(ma)o(y)g(b)q(e)h(used)g
-(to)p eop end
-%%Page: 19 22
-TeXDict begin 19 21 bop 75 -58 a Fo(Chapter)15 b(1:)k(Command)c(Line)h
-(Editing)1053 b(19)315 149 y(mo)o(v)o(e)18 b(bac)o(kw)o(ard)h(through)g
-(the)g(list.)30 b(This)19 b(command)g(is)g(in)o(tended)g(to)g(b)q(e)h
-(b)q(ound)g(to)315 204 y Fn(TAB)p Fo(,)14 b(but)i(is)e(un)o(b)q(ound)j
-(b)o(y)e(default.)75 277 y Fn(menu-complete-backward)d(\(\))315
-332 y Fo(Iden)o(tical)17 b(to)g Fn(menu-complete)p Fo(,)f(but)i(mo)o(v)
-o(es)e(bac)o(kw)o(ard)h(through)g(the)h(list)e(of)h(p)q(ossible)315
-387 y(completions,)d(as)h(if)f Fn(menu-complete)g Fo(had)h(b)q(een)h
-(giv)o(en)f(a)g(negativ)o(e)f(argumen)o(t.)75 459 y Fn
-(delete-char-or-list)f(\(\))315 514 y Fo(Deletes)g(the)g(c)o(haracter)g
-(under)h(the)g(cursor)f(if)g(not)g(at)g(the)g(b)q(eginning)h(or)f(end)h
-(of)f(the)g(line)315 569 y(\(lik)o(e)g Fn(delete-char)p
-Fo(\).)18 b(If)d(at)f(the)h(end)g(of)f(the)g(line,)g(b)q(eha)o(v)o(es)h
-(iden)o(tically)e(to)h Fn(possible-)315 624 y(completions)p
-Fo(.)k(This)d(command)g(is)g(un)o(b)q(ound)h(b)o(y)f(default.)75
-716 y Fd(1.4.7)30 b(Keyb)r(oard)20 b(Macros)75 799 y
-Fn(start-kbd-macro)13 b(\(C-x)i(\(\))315 854 y Fo(Begin)g(sa)o(ving)f
-(the)i(c)o(haracters)e(t)o(yp)q(ed)i(in)o(to)e(the)h(curren)o(t)g(k)o
-(eyb)q(oard)g(macro.)75 926 y Fn(end-kbd-macro)e(\(C-x)i(\)\))315
-981 y Fo(Stop)f(sa)o(ving)e(the)i(c)o(haracters)f(t)o(yp)q(ed)h(in)o
-(to)e(the)i(curren)o(t)g(k)o(eyb)q(oard)f(macro)g(and)h(sa)o(v)o(e)f
-(the)315 1036 y(de\014nition.)75 1109 y Fn(call-last-kbd-macro)g(\(C-x)
-h(e\))315 1164 y Fo(Re-execute)19 b(the)f(last)e(k)o(eyb)q(oard)i
-(macro)f(de\014ned,)i(b)o(y)e(making)g(the)h(c)o(haracters)e(in)i(the)
-315 1218 y(macro)c(app)q(ear)i(as)f(if)f(t)o(yp)q(ed)i(at)e(the)i(k)o
-(eyb)q(oard.)75 1311 y Fd(1.4.8)30 b(Some)20 b(Miscellaneous)h
-(Commands)75 1394 y Fn(re-read-init-file)13 b(\(C-x)h(C-r\))315
-1448 y Fo(Read)e(in)e(the)h(con)o(ten)o(ts)g(of)f(the)h
-Fe(inputrc)j Fo(\014le,)d(and)h(incorp)q(orate)e(an)o(y)g(bindings)h
-(or)g(v)m(ariable)315 1503 y(assignmen)o(ts)j(found)i(there.)75
-1576 y Fn(abort)e(\(C-g\))315 1631 y Fo(Ab)q(ort)f(the)g(curren)o(t)h
-(editing)e(command)h(and)h(ring)e(the)i(terminal's)d(b)q(ell)i(\(sub)s
-(ject)g(to)g(the)315 1685 y(setting)h(of)h Fn(bell-style)p
-Fo(\).)75 1758 y Fn(do-uppercase-version)d(\(M-a,)j(M-b,)f(M-)p
-Fg(x)5 b Fn(,)15 b(...\))315 1813 y Fo(If)f(the)g(meta\014ed)g(c)o
-(haracter)f Fe(x)k Fo(is)c(lo)o(w)o(ercase,)g(run)h(the)g(command)f
-(that)h(is)f(b)q(ound)i(to)e(the)315 1868 y(corresp)q(onding)i(upp)q
-(ercase)h(c)o(haracter.)75 1941 y Fn(prefix-meta)e(\(ESC\))315
-1995 y Fo(Metafy)k(the)h(next)g(c)o(haracter)f(t)o(yp)q(ed.)30
-b(This)19 b(is)f(for)g(k)o(eyb)q(oards)h(without)f(a)g(meta)g(k)o(ey)l
-(.)315 2050 y(T)o(yping)d(`)p Fn(ESC)f(f)p Fo(')h(is)f(equiv)m(alen)o
-(t)h(to)g(t)o(yping)f Fg(M-f)p Fo(.)75 2123 y Fn(undo)h(\(C-_)f(or)h
-(C-x)g(C-u\))315 2178 y Fo(Incremen)o(tal)g(undo,)g(separately)g(remem)
-o(b)q(ered)h(for)e(eac)o(h)h(line.)75 2250 y Fn(revert-line)f(\(M-r\))
-315 2305 y Fo(Undo)j(all)e(c)o(hanges)i(made)f(to)g(this)g(line.)24
-b(This)16 b(is)g(lik)o(e)g(executing)g(the)h Fn(undo)f
-Fo(command)315 2360 y(enough)g(times)e(to)h(get)f(bac)o(k)h(to)g(the)g
-(b)q(eginning.)75 2433 y Fn(tilde-expand)f(\(M-~\))315
-2488 y Fo(P)o(erform)g(tilde)h(expansion)g(on)g(the)g(curren)o(t)g(w)o
-(ord.)75 2560 y Fn(set-mark)f(\(C-@\))315 2615 y Fo(Set)i(the)h(mark)f
-(to)f(the)i(p)q(oin)o(t.)23 b(If)17 b(a)f(n)o(umeric)g(argumen)o(t)g
-(is)f(supplied,)i(the)g(mark)e(is)h(set)315 2670 y(to)f(that)f(p)q
-(osition.)p eop end
-%%Page: 20 23
-TeXDict begin 20 22 bop 75 -58 a Fo(Chapter)15 b(1:)k(Command)c(Line)h
-(Editing)1053 b(20)75 149 y Fn(exchange-point-and-mark)12
-b(\(C-x)j(C-x\))315 204 y Fo(Sw)o(ap)g(the)h(p)q(oin)o(t)f(with)g(the)h
-(mark.)k(The)c(curren)o(t)f(cursor)h(p)q(osition)e(is)h(set)h(to)f(the)
-g(sa)o(v)o(ed)315 259 y(p)q(osition,)f(and)h(the)h(old)e(cursor)h(p)q
-(osition)f(is)h(sa)o(v)o(ed)g(as)g(the)g(mark.)75 355
-y Fn(character-search)e(\(C-]\))315 410 y Fo(A)f(c)o(haracter)g(is)g
-(read)h(and)f(p)q(oin)o(t)g(is)g(mo)o(v)o(ed)g(to)g(the)g(next)h(o)q
-(ccurrence)g(of)f(that)g(c)o(haracter.)315 465 y(A)j(negativ)o(e)g
-(coun)o(t)g(searc)o(hes)g(for)f(previous)h(o)q(ccurrences.)75
-561 y Fn(character-search-backward)d(\(M-C-]\))315 616
-y Fo(A)22 b(c)o(haracter)g(is)g(read)g(and)h(p)q(oin)o(t)f(is)g(mo)o(v)
-o(ed)g(to)g(the)g(previous)g(o)q(ccurrence)i(of)e(that)315
-671 y(c)o(haracter.)d(A)c(negativ)o(e)g(coun)o(t)g(searc)o(hes)g(for)f
-(subsequen)o(t)i(o)q(ccurrences.)75 767 y Fn(skip-csi-sequence)d(\(\))
-315 822 y Fo(Read)h(enough)g(c)o(haracters)f(to)g(consume)h(a)g(m)o
-(ulti-k)o(ey)e(sequence)j(suc)o(h)f(as)f(those)h(de\014ned)315
-877 y(for)k(k)o(eys)g(lik)o(e)g(Home)h(and)g(End.)30
-b(Suc)o(h)19 b(sequences)h(b)q(egin)f(with)f(a)g(Con)o(trol)f(Sequence)
-315 932 y(Indicator)h(\(CSI\),)g(usually)f(ESC-[.)29
-b(If)19 b(this)f(sequence)h(is)f(b)q(ound)h(to)f Fn("\\)p
-Fo(e[)p Fn(")p Fo(,)g(k)o(eys)g(pro-)315 987 y(ducing)e(suc)o(h)h
-(sequences)g(will)d(ha)o(v)o(e)i(no)g(e\013ect)g(unless)g(explicitly)e
-(b)q(ound)j(to)f(a)f(readline)315 1041 y(command,)h(instead)f(of)h
-(inserting)f(stra)o(y)f(c)o(haracters)i(in)o(to)f(the)h(editing)f
-(bu\013er.)22 b(This)15 b(is)315 1096 y(un)o(b)q(ound)h(b)o(y)g
-(default,)e(but)h(usually)g(b)q(ound)h(to)f(ESC-[.)75
-1193 y Fn(insert-comment)e(\(M-#\))315 1247 y Fo(Without)k(a)g(n)o
-(umeric)h(argumen)o(t,)f(the)h(v)m(alue)g(of)g(the)f
-Fn(comment-begin)f Fo(v)m(ariable)i(is)f(in-)315 1302
-y(serted)f(at)f(the)h(b)q(eginning)g(of)f(the)h(curren)o(t)g(line.)21
-b(If)16 b(a)g(n)o(umeric)g(argumen)o(t)f(is)g(supplied,)315
-1357 y(this)j(command)g(acts)g(as)f(a)h(toggle:)25 b(if)18
-b(the)g(c)o(haracters)g(at)f(the)i(b)q(eginning)f(of)g(the)g(line)315
-1412 y(do)d(not)g(matc)o(h)g(the)g(v)m(alue)h(of)f Fn(comment-begin)p
-Fo(,)e(the)i(v)m(alue)h(is)f(inserted,)f(otherwise)h(the)315
-1467 y(c)o(haracters)k(in)h Fn(comment-begin)e Fo(are)i(deleted)h(from)
-e(the)h(b)q(eginning)g(of)g(the)g(line.)34 b(In)315 1521
-y(either)15 b(case,)g(the)g(line)g(is)g(accepted)g(as)g(if)g(a)g
-(newline)g(had)g(b)q(een)i(t)o(yp)q(ed.)75 1618 y Fn(dump-functions)c
-(\(\))315 1673 y Fo(Prin)o(t)f(all)g(of)h(the)g(functions)g(and)h
-(their)f(k)o(ey)g(bindings)g(to)f(the)i(Readline)f(output)g(stream.)315
-1727 y(If)j(a)g(n)o(umeric)f(argumen)o(t)g(is)h(supplied,)g(the)g
-(output)f(is)h(formatted)e(in)i(suc)o(h)g(a)g(w)o(a)o(y)f(that)315
-1782 y(it)f(can)i(b)q(e)g(made)f(part)f(of)h(an)g Fe(inputrc)j
-Fo(\014le.)i(This)15 b(command)g(is)g(un)o(b)q(ound)h(b)o(y)f(default.)
-75 1879 y Fn(dump-variables)e(\(\))315 1934 y Fo(Prin)o(t)d(all)f(of)h
-(the)h(settable)f(v)m(ariables)g(and)h(their)f(v)m(alues)h(to)f(the)h
-(Readline)g(output)f(stream.)315 1988 y(If)16 b(a)g(n)o(umeric)f
-(argumen)o(t)g(is)h(supplied,)g(the)g(output)f(is)h(formatted)e(in)i
-(suc)o(h)g(a)g(w)o(a)o(y)f(that)315 2043 y(it)f(can)i(b)q(e)g(made)f
-(part)f(of)h(an)g Fe(inputrc)j Fo(\014le.)i(This)15 b(command)g(is)g
-(un)o(b)q(ound)h(b)o(y)f(default.)75 2140 y Fn(dump-macros)f(\(\))315
-2194 y Fo(Prin)o(t)i(all)g(of)g(the)h(Readline)g(k)o(ey)g(sequences)h
-(b)q(ound)g(to)e(macros)g(and)h(the)g(strings)f(they)315
-2249 y(output.)26 b(If)18 b(a)f(n)o(umeric)g(argumen)o(t)g(is)g
-(supplied,)h(the)f(output)g(is)g(formatted)f(in)i(suc)o(h)f(a)315
-2304 y(w)o(a)o(y)d(that)g(it)h(can)g(b)q(e)g(made)g(part)g(of)f(an)h
-Fe(inputrc)j Fo(\014le.)i(This)14 b(command)h(is)g(un)o(b)q(ound)h(b)o
-(y)315 2359 y(default.)75 2455 y Fn(emacs-editing-mode)d(\(C-e\))315
-2510 y Fo(When)j(in)f Fn(vi)f Fo(command)i(mo)q(de,)f(this)f(causes)i
-(a)f(switc)o(h)f(to)h Fn(emacs)f Fo(editing)h(mo)q(de.)75
-2606 y Fn(vi-editing-mode)e(\(M-C-j\))315 2661 y Fo(When)j(in)f
-Fn(emacs)f Fo(editing)h(mo)q(de,)g(this)f(causes)i(a)f(switc)o(h)f(to)h
-Fn(vi)f Fo(editing)h(mo)q(de.)p eop end
-%%Page: 21 24
-TeXDict begin 21 23 bop 75 -58 a Fo(Chapter)15 b(1:)k(Command)c(Line)h
-(Editing)1053 b(21)75 149 y Fm(1.5)33 b(Readline)21 b(vi)i(Mo)r(de)75
-229 y Fo(While)15 b(the)h(Readline)g(library)f(do)q(es)h(not)f(ha)o(v)o
-(e)g(a)h(full)f(set)h(of)f Fn(vi)g Fo(editing)g(functions,)h(it)f(do)q
-(es)h(con)o(tain)75 284 y(enough)h(to)g(allo)o(w)e(simple)h(editing)h
-(of)f(the)i(line.)25 b(The)17 b(Readline)g Fn(vi)g Fo(mo)q(de)g(b)q
-(eha)o(v)o(es)g(as)g(sp)q(eci\014ed)h(in)75 339 y(the)d
-Fh(posix)g Fo(standard.)137 406 y(In)g(order)g(to)f(switc)o(h)f(in)o
-(teractiv)o(ely)g(b)q(et)o(w)o(een)i Fn(emacs)e Fo(and)i
-Fn(vi)f Fo(editing)g(mo)q(des,)h(use)f(the)h(command)75
-461 y Fg(M-C-j)j Fo(\(b)q(ound)i(to)e(emacs-editing-mo)q(de)h(when)g
-(in)g Fn(vi)g Fo(mo)q(de)g(and)g(to)f(vi-editing-mo)q(de)h(in)g
-Fn(emacs)75 516 y Fo(mo)q(de\).)h(The)15 b(Readline)h(default)f(is)f
-Fn(emacs)h Fo(mo)q(de.)137 583 y(When)h(y)o(ou)e(en)o(ter)h(a)g(line)g
-(in)f Fn(vi)h Fo(mo)q(de,)g(y)o(ou)g(are)f(already)h(placed)g(in)g
-(`insertion')e(mo)q(de,)i(as)g(if)f(y)o(ou)75 638 y(had)h(t)o(yp)q(ed)g
-(an)g(`)p Fn(i)p Fo('.)j(Pressing)c Fn(ESC)h Fo(switc)o(hes)f(y)o(ou)g
-(in)o(to)g(`command')g(mo)q(de,)g(where)h(y)o(ou)g(can)f(edit)h(the)75
-692 y(text)h(of)h(the)g(line)f(with)h(the)g(standard)f
-Fn(vi)h Fo(mo)o(v)o(emen)o(t)f(k)o(eys,)g(mo)o(v)o(e)g(to)h(previous)f
-(history)g(lines)h(with)75 747 y(`)p Fn(k)p Fo(')d(and)i(subsequen)o(t)
-f(lines)g(with)g(`)p Fn(j)p Fo(',)f(and)h(so)g(forth.)p
-eop end
-%%Page: 22 25
-TeXDict begin 22 24 bop 75 -58 a Fo(App)q(endix)16 b(A:)f(GNU)g(F)l
-(ree)g(Do)q(cumen)o(tation)g(License)802 b(22)75 149
-y Fk(App)r(endix)26 b(A)41 b(GNU)27 b(F)-7 b(ree)26 b(Do)r(cumen)n
-(tation)j(License)679 251 y Fo(V)l(ersion)15 b(1.3,)f(3)h(No)o(v)o(em)o
-(b)q(er)g(2008)195 318 y(Cop)o(yrigh)o(t)421 317 y(c)409
-318 y Fl(\015)g Fo(2000,)f(2001,)f(2002,)h(2007,)g(2008)g(F)l(ree)h
-(Soft)o(w)o(are)f(F)l(oundation,)g(Inc.)195 373 y Fn(http://fsf.org/)
-195 482 y Fo(Ev)o(ery)o(one)h(is)f(p)q(ermitted)h(to)g(cop)o(y)g(and)g
-(distribute)g(v)o(erbatim)f(copies)195 537 y(of)h(this)f(license)i(do)q
-(cumen)o(t,)f(but)g(c)o(hanging)g(it)f(is)h(not)g(allo)o(w)o(ed.)100
-603 y(0.)29 b(PREAMBLE)165 670 y(The)19 b(purp)q(ose)g(of)f(this)g
-(License)i(is)e(to)g(mak)o(e)g(a)g(man)o(ual,)g(textb)q(o)q(ok,)h(or)f
-(other)g(functional)g(and)165 725 y(useful)d(do)q(cumen)o(t)h
-Fe(free)h Fo(in)e(the)g(sense)h(of)f(freedom:)k(to)c(assure)g(ev)o(ery)
-o(one)f(the)i(e\013ectiv)o(e)e(freedom)165 780 y(to)h(cop)o(y)h(and)g
-(redistribute)f(it,)f(with)h(or)g(without)g(mo)q(difying)g(it,)g
-(either)g(commercially)f(or)i(non-)165 834 y(commercially)l(.)25
-b(Secondarily)l(,)17 b(this)g(License)h(preserv)o(es)f(for)g(the)g
-(author)g(and)h(publisher)f(a)g(w)o(a)o(y)165 889 y(to)g(get)h(credit)g
-(for)f(their)h(w)o(ork,)f(while)h(not)g(b)q(eing)g(considered)g(resp)q
-(onsible)g(for)g(mo)q(di\014cations)165 944 y(made)d(b)o(y)g(others.)
-165 1010 y(This)c(License)i(is)e(a)g(kind)h(of)f(\\cop)o(yleft",)f
-(whic)o(h)i(means)f(that)g(deriv)m(ativ)o(e)g(w)o(orks)g(of)g(the)h(do)
-q(cumen)o(t)165 1065 y(m)o(ust)k(themselv)o(es)h(b)q(e)h(free)e(in)h
-(the)g(same)g(sense.)26 b(It)16 b(complemen)o(ts)h(the)g(GNU)g(General)
-f(Public)165 1120 y(License,)g(whic)o(h)f(is)f(a)h(cop)o(yleft)g
-(license)g(designed)g(for)g(free)g(soft)o(w)o(are.)165
-1187 y(W)l(e)g(ha)o(v)o(e)f(designed)h(this)g(License)g(in)g(order)f
-(to)g(use)h(it)f(for)h(man)o(uals)e(for)h(free)h(soft)o(w)o(are,)e(b)q
-(ecause)165 1241 y(free)21 b(soft)o(w)o(are)e(needs)j(free)f(do)q
-(cumen)o(tation:)31 b(a)21 b(free)g(program)f(should)h(come)g(with)g
-(man)o(uals)165 1296 y(pro)o(viding)13 b(the)i(same)f(freedoms)g(that)g
-(the)g(soft)o(w)o(are)f(do)q(es.)20 b(But)14 b(this)g(License)h(is)f
-(not)g(limited)g(to)165 1351 y(soft)o(w)o(are)g(man)o(uals;)g(it)g(can)
-i(b)q(e)g(used)g(for)e(an)o(y)h(textual)g(w)o(ork,)f(regardless)g(of)h
-(sub)s(ject)g(matter)f(or)165 1406 y(whether)i(it)f(is)g(published)h
-(as)g(a)f(prin)o(ted)h(b)q(o)q(ok.)21 b(W)l(e)16 b(recommend)g(this)f
-(License)i(principally)e(for)165 1461 y(w)o(orks)f(whose)h(purp)q(ose)h
-(is)f(instruction)f(or)h(reference.)100 1527 y(1.)29
-b(APPLICABILITY)17 b(AND)e(DEFINITIONS)165 1594 y(This)20
-b(License)g(applies)g(to)f(an)o(y)h(man)o(ual)f(or)g(other)h(w)o(ork,)g
-(in)g(an)o(y)f(medium,)i(that)e(con)o(tains)g(a)165 1648
-y(notice)h(placed)h(b)o(y)g(the)g(cop)o(yrigh)o(t)e(holder)i(sa)o(ying)
-f(it)g(can)h(b)q(e)g(distributed)f(under)i(the)f(terms)165
-1703 y(of)d(this)g(License.)32 b(Suc)o(h)19 b(a)g(notice)f(gran)o(ts)f
-(a)i(w)o(orld-wide,)f(ro)o(y)o(alt)o(y-free)f(license,)i(unlimited)f
-(in)165 1758 y(duration,)23 b(to)f(use)h(that)f(w)o(ork)g(under)h(the)g
-(conditions)f(stated)g(herein.)42 b(The)23 b(\\Do)q(cumen)o(t",)165
-1813 y(b)q(elo)o(w,)14 b(refers)g(to)f(an)o(y)h(suc)o(h)g(man)o(ual)g
-(or)f(w)o(ork.)19 b(An)o(y)14 b(mem)o(b)q(er)h(of)e(the)i(public)f(is)g
-(a)g(licensee,)g(and)165 1868 y(is)e(addressed)h(as)f(\\y)o(ou".)18
-b(Y)l(ou)13 b(accept)g(the)f(license)h(if)f(y)o(ou)g(cop)o(y)l(,)h(mo)q
-(dify)f(or)g(distribute)f(the)i(w)o(ork)165 1922 y(in)i(a)g(w)o(a)o(y)f
-(requiring)h(p)q(ermission)f(under)i(cop)o(yrigh)o(t)e(la)o(w.)165
-1989 y(A)j(\\Mo)q(di\014ed)g(V)l(ersion")f(of)g(the)h(Do)q(cumen)o(t)g
-(means)g(an)o(y)f(w)o(ork)g(con)o(taining)g(the)h(Do)q(cumen)o(t)f(or)
-165 2044 y(a)i(p)q(ortion)g(of)h(it,)f(either)h(copied)g(v)o(erbatim,)f
-(or)g(with)g(mo)q(di\014cations)g(and/or)g(translated)g(in)o(to)165
-2099 y(another)d(language.)165 2165 y(A)e(\\Secondary)g(Section")g(is)f
-(a)h(named)g(app)q(endix)h(or)e(a)h(fron)o(t-matter)e(section)h(of)h
-(the)g(Do)q(cumen)o(t)165 2220 y(that)d(deals)g(exclusiv)o(ely)g(with)g
-(the)h(relationship)e(of)i(the)f(publishers)h(or)f(authors)g(of)g(the)h
-(Do)q(cumen)o(t)165 2275 y(to)18 b(the)h(Do)q(cumen)o(t's)f(o)o(v)o
-(erall)f(sub)s(ject)h(\(or)g(to)g(related)g(matters\))f(and)i(con)o
-(tains)f(nothing)g(that)165 2329 y(could)i(fall)f(directly)h(within)f
-(that)g(o)o(v)o(erall)g(sub)s(ject.)34 b(\(Th)o(us,)21
-b(if)f(the)g(Do)q(cumen)o(t)g(is)g(in)g(part)f(a)165
-2384 y(textb)q(o)q(ok)12 b(of)f(mathematics,)g(a)g(Secondary)h(Section)
-g(ma)o(y)f(not)h(explain)f(an)o(y)h(mathematics.\))17
-b(The)165 2439 y(relationship)12 b(could)i(b)q(e)g(a)g(matter)e(of)i
-(historical)d(connection)j(with)f(the)h(sub)s(ject)f(or)h(with)f
-(related)165 2494 y(matters,)k(or)g(of)g(legal,)g(commercial,)g
-(philosophical,)g(ethical)g(or)g(p)q(olitical)f(p)q(osition)h
-(regarding)165 2549 y(them.)165 2615 y(The)c(\\In)o(v)m(arian)o(t)f
-(Sections")g(are)h(certain)f(Secondary)h(Sections)g(whose)g(titles)e
-(are)i(designated,)f(as)165 2670 y(b)q(eing)i(those)f(of)g(In)o(v)m
-(arian)o(t)f(Sections,)h(in)h(the)f(notice)g(that)f(sa)o(ys)h(that)g
-(the)g(Do)q(cumen)o(t)g(is)g(released)p eop end
-%%Page: 23 26
-TeXDict begin 23 25 bop 75 -58 a Fo(App)q(endix)16 b(A:)f(GNU)g(F)l
-(ree)g(Do)q(cumen)o(tation)g(License)802 b(23)165 149
-y(under)15 b(this)e(License.)20 b(If)14 b(a)g(section)f(do)q(es)h(not)g
-(\014t)f(the)h(ab)q(o)o(v)o(e)g(de\014nition)g(of)f(Secondary)h(then)g
-(it)f(is)165 204 y(not)j(allo)o(w)o(ed)e(to)h(b)q(e)i(designated)f(as)f
-(In)o(v)m(arian)o(t.)21 b(The)c(Do)q(cumen)o(t)e(ma)o(y)h(con)o(tain)f
-(zero)h(In)o(v)m(arian)o(t)165 259 y(Sections.)j(If)12
-b(the)h(Do)q(cumen)o(t)f(do)q(es)h(not)f(iden)o(tify)f(an)o(y)h(In)o(v)
-m(arian)o(t)g(Sections)g(then)h(there)f(are)g(none.)165
-334 y(The)19 b(\\Co)o(v)o(er)e(T)l(exts")g(are)h(certain)g(short)g
-(passages)g(of)f(text)h(that)g(are)g(listed,)g(as)g(F)l(ron)o(t-Co)o(v)
-o(er)165 389 y(T)l(exts)12 b(or)g(Bac)o(k-Co)o(v)o(er)g(T)l(exts,)g(in)
-h(the)f(notice)g(that)g(sa)o(ys)g(that)g(the)g(Do)q(cumen)o(t)h(is)f
-(released)g(under)165 444 y(this)g(License.)20 b(A)13
-b(F)l(ron)o(t-Co)o(v)o(er)e(T)l(ext)i(ma)o(y)f(b)q(e)i(at)e(most)g(5)h
-(w)o(ords,)f(and)h(a)g(Bac)o(k-Co)o(v)o(er)f(T)l(ext)h(ma)o(y)165
-499 y(b)q(e)j(at)e(most)h(25)f(w)o(ords.)165 574 y(A)k(\\T)l(ransparen)
-o(t")e(cop)o(y)i(of)f(the)h(Do)q(cumen)o(t)g(means)f(a)h(mac)o
-(hine-readable)f(cop)o(y)l(,)h(represen)o(ted)165 629
-y(in)g(a)f(format)g(whose)g(sp)q(eci\014cation)h(is)g(a)o(v)m(ailable)e
-(to)h(the)h(general)g(public,)g(that)f(is)g(suitable)h(for)165
-684 y(revising)d(the)h(do)q(cumen)o(t)g(straigh)o(tforw)o(ardly)d(with)
-i(generic)h(text)f(editors)g(or)g(\(for)g(images)g(com-)165
-738 y(p)q(osed)d(of)g(pixels\))f(generic)h(pain)o(t)f(programs)g(or)g
-(\(for)g(dra)o(wings\))g(some)g(widely)g(a)o(v)m(ailable)g(dra)o(wing)
-165 793 y(editor,)j(and)g(that)g(is)g(suitable)g(for)g(input)g(to)g
-(text)g(formatters)f(or)h(for)g(automatic)f(translation)g(to)165
-848 y(a)g(v)m(ariet)o(y)g(of)g(formats)f(suitable)g(for)h(input)h(to)e
-(text)h(formatters.)18 b(A)13 b(cop)o(y)h(made)f(in)g(an)h(otherwise)
-165 903 y(T)l(ransparen)o(t)k(\014le)h(format)e(whose)i(markup,)g(or)g
-(absence)g(of)g(markup,)g(has)f(b)q(een)i(arranged)f(to)165
-958 y(th)o(w)o(art)12 b(or)g(discourage)h(subsequen)o(t)h(mo)q
-(di\014cation)f(b)o(y)g(readers)g(is)g(not)g(T)l(ransparen)o(t.)18
-b(An)c(image)165 1012 y(format)i(is)h(not)f(T)l(ransparen)o(t)h(if)g
-(used)g(for)g(an)o(y)g(substan)o(tial)e(amoun)o(t)i(of)f(text.)26
-b(A)17 b(cop)o(y)g(that)f(is)165 1067 y(not)f(\\T)l(ransparen)o(t")f
-(is)h(called)f(\\Opaque".)165 1143 y(Examples)26 b(of)g(suitable)g
-(formats)f(for)h(T)l(ransparen)o(t)g(copies)g(include)h(plain)f
-Fh(asci)q(i)g Fo(without)165 1197 y(markup,)18 b(T)l(exinfo)g(input)g
-(format,)f(LaT)879 1207 y(E)905 1197 y(X)h(input)g(format,)f
-Fc(SGML)h Fo(or)f Fc(XML)i Fo(using)e(a)h(publicly)165
-1252 y(a)o(v)m(ailable)h Fc(DTD)p Fo(,)g(and)h(standard-conforming)f
-(simple)g Fc(HTML)p Fo(,)h(P)o(ostScript)f(or)g Fc(PDF)i
-Fo(designed)165 1307 y(for)e(h)o(uman)g(mo)q(di\014cation.)31
-b(Examples)19 b(of)f(transparen)o(t)h(image)f(formats)g(include)h
-Fc(PNG)p Fo(,)g Fc(X)o(CF)165 1362 y Fo(and)i Fc(JPG)p
-Fo(.)f(Opaque)h(formats)e(include)i(proprietary)e(formats)g(that)g(can)
-i(b)q(e)g(read)f(and)h(edited)165 1417 y(only)26 b(b)o(y)h(proprietary)
-f(w)o(ord)g(pro)q(cessors,)j Fc(SGML)d Fo(or)h Fc(XML)g
-Fo(for)f(whic)o(h)g(the)h Fc(DTD)g Fo(and/or)165 1471
-y(pro)q(cessing)j(to)q(ols)g(are)g(not)g(generally)g(a)o(v)m(ailable,)i
-(and)f(the)g(mac)o(hine-generated)f Fc(HTML)p Fo(,)165
-1526 y(P)o(ostScript)14 b(or)h Fc(PDF)g Fo(pro)q(duced)h(b)o(y)f(some)g
-(w)o(ord)g(pro)q(cessors)g(for)f(output)h(purp)q(oses)h(only)l(.)165
-1601 y(The)h(\\Title)f(P)o(age")g(means,)i(for)e(a)h(prin)o(ted)g(b)q
-(o)q(ok,)g(the)g(title)f(page)h(itself,)g(plus)g(suc)o(h)g(follo)o
-(wing)165 1656 y(pages)d(as)f(are)h(needed)h(to)e(hold,)h(legibly)l(,)e
-(the)i(material)e(this)i(License)g(requires)g(to)f(app)q(ear)h(in)g
-(the)165 1711 y(title)e(page.)19 b(F)l(or)13 b(w)o(orks)f(in)h(formats)
-f(whic)o(h)h(do)g(not)g(ha)o(v)o(e)g(an)o(y)g(title)f(page)h(as)g(suc)o
-(h,)h(\\Title)e(P)o(age")165 1766 y(means)j(the)h(text)e(near)i(the)f
-(most)g(prominen)o(t)f(app)q(earance)i(of)f(the)g(w)o(ork's)f(title,)g
-(preceding)i(the)165 1821 y(b)q(eginning)f(of)g(the)g(b)q(o)q(dy)h(of)f
-(the)g(text.)165 1896 y(The)j(\\publisher")e(means)i(an)o(y)f(p)q
-(erson)g(or)g(en)o(tit)o(y)f(that)h(distributes)g(copies)g(of)g(the)g
-(Do)q(cumen)o(t)165 1951 y(to)e(the)g(public.)165 2026
-y(A)g(section)f(\\En)o(titled)g(XYZ")g(means)h(a)g(named)g(subunit)g
-(of)f(the)h(Do)q(cumen)o(t)g(whose)g(title)e(either)165
-2081 y(is)g(precisely)h(XYZ)g(or)f(con)o(tains)g(XYZ)h(in)g(paren)o
-(theses)g(follo)o(wing)d(text)j(that)f(translates)f(XYZ)i(in)165
-2136 y(another)e(language.)18 b(\(Here)13 b(XYZ)f(stands)g(for)g(a)g
-(sp)q(eci\014c)i(section)e(name)g(men)o(tioned)g(b)q(elo)o(w,)h(suc)o
-(h)165 2191 y(as)h(\\Ac)o(kno)o(wledgemen)o(ts",)e(\\Dedications",)h
-(\\Endorsemen)o(ts",)g(or)g(\\History".\))18 b(T)l(o)13
-b(\\Preserv)o(e)165 2245 y(the)k(Title")e(of)i(suc)o(h)g(a)f(section)h
-(when)g(y)o(ou)f(mo)q(dify)h(the)g(Do)q(cumen)o(t)f(means)h(that)f(it)g
-(remains)g(a)165 2300 y(section)f(\\En)o(titled)f(XYZ")g(according)h
-(to)g(this)f(de\014nition.)165 2375 y(The)g(Do)q(cumen)o(t)g(ma)o(y)f
-(include)h(W)l(arran)o(t)o(y)e(Disclaimers)g(next)i(to)g(the)g(notice)f
-(whic)o(h)h(states)f(that)165 2430 y(this)j(License)i(applies)f(to)f
-(the)h(Do)q(cumen)o(t.)25 b(These)17 b(W)l(arran)o(t)o(y)e(Disclaimers)
-h(are)g(considered)i(to)165 2485 y(b)q(e)h(included)h(b)o(y)f
-(reference)g(in)g(this)f(License,)i(but)f(only)f(as)h(regards)f
-(disclaiming)f(w)o(arran)o(ties:)165 2540 y(an)o(y)h(other)g
-(implication)f(that)h(these)g(W)l(arran)o(t)o(y)f(Disclaimers)g(ma)o(y)
-g(ha)o(v)o(e)h(is)g(v)o(oid)g(and)h(has)f(no)165 2595
-y(e\013ect)d(on)g(the)g(meaning)g(of)g(this)g(License.)100
-2670 y(2.)29 b(VERBA)l(TIM)16 b(COPYING)p eop end
-%%Page: 24 27
-TeXDict begin 24 26 bop 75 -58 a Fo(App)q(endix)16 b(A:)f(GNU)g(F)l
-(ree)g(Do)q(cumen)o(tation)g(License)802 b(24)165 149
-y(Y)l(ou)19 b(ma)o(y)g(cop)o(y)f(and)i(distribute)e(the)h(Do)q(cumen)o
-(t)g(in)g(an)o(y)g(medium,)g(either)g(commercially)e(or)165
-204 y(noncommercially)l(,)k(pro)o(vided)g(that)g(this)g(License,)i(the)
-e(cop)o(yrigh)o(t)f(notices,)i(and)g(the)f(license)165
-259 y(notice)d(sa)o(ying)e(this)i(License)g(applies)g(to)f(the)h(Do)q
-(cumen)o(t)g(are)f(repro)q(duced)i(in)f(all)f(copies,)h(and)165
-314 y(that)13 b(y)o(ou)g(add)g(no)g(other)g(conditions)g(whatso)q(ev)o
-(er)f(to)h(those)g(of)g(this)g(License.)20 b(Y)l(ou)13
-b(ma)o(y)g(not)g(use)165 369 y(tec)o(hnical)j(measures)g(to)g(obstruct)
-g(or)g(con)o(trol)f(the)h(reading)g(or)g(further)h(cop)o(ying)f(of)g
-(the)g(copies)165 423 y(y)o(ou)c(mak)o(e)g(or)f(distribute.)19
-b(Ho)o(w)o(ev)o(er,)11 b(y)o(ou)h(ma)o(y)g(accept)g(comp)q(ensation)g
-(in)g(exc)o(hange)h(for)e(copies.)165 478 y(If)16 b(y)o(ou)g
-(distribute)f(a)h(large)f(enough)i(n)o(um)o(b)q(er)f(of)g(copies)g(y)o
-(ou)g(m)o(ust)f(also)g(follo)o(w)g(the)h(conditions)165
-533 y(in)f(section)g(3.)165 600 y(Y)l(ou)c(ma)o(y)e(also)h(lend)g
-(copies,)h(under)g(the)g(same)f(conditions)f(stated)h(ab)q(o)o(v)o(e,)h
-(and)f(y)o(ou)g(ma)o(y)g(publicly)165 655 y(displa)o(y)k(copies.)100
-722 y(3.)29 b(COPYING)16 b(IN)f(QUANTITY)165 789 y(If)e(y)o(ou)f
-(publish)h(prin)o(ted)f(copies)h(\(or)e(copies)i(in)f(media)h(that)e
-(commonly)h(ha)o(v)o(e)g(prin)o(ted)h(co)o(v)o(ers\))e(of)165
-844 y(the)16 b(Do)q(cumen)o(t,)g(n)o(um)o(b)q(ering)f(more)h(than)g
-(100,)e(and)i(the)g(Do)q(cumen)o(t's)g(license)g(notice)f(requires)165
-898 y(Co)o(v)o(er)h(T)l(exts,)h(y)o(ou)g(m)o(ust)g(enclose)g(the)g
-(copies)g(in)g(co)o(v)o(ers)g(that)f(carry)l(,)h(clearly)f(and)i
-(legibly)l(,)e(all)165 953 y(these)k(Co)o(v)o(er)e(T)l(exts:)29
-b(F)l(ron)o(t-Co)o(v)o(er)18 b(T)l(exts)h(on)g(the)h(fron)o(t)f(co)o(v)
-o(er,)g(and)h(Bac)o(k-Co)o(v)o(er)f(T)l(exts)g(on)165
-1008 y(the)c(bac)o(k)f(co)o(v)o(er.)19 b(Both)14 b(co)o(v)o(ers)g(m)o
-(ust)g(also)g(clearly)g(and)g(legibly)g(iden)o(tify)g(y)o(ou)g(as)g
-(the)h(publisher)165 1063 y(of)i(these)g(copies.)26 b(The)17
-b(fron)o(t)f(co)o(v)o(er)h(m)o(ust)f(presen)o(t)i(the)f(full)f(title)g
-(with)h(all)f(w)o(ords)g(of)h(the)g(title)165 1117 y(equally)e
-(prominen)o(t)g(and)g(visible.)20 b(Y)l(ou)c(ma)o(y)e(add)i(other)f
-(material)e(on)j(the)f(co)o(v)o(ers)g(in)g(addition.)165
-1172 y(Cop)o(ying)i(with)h(c)o(hanges)g(limited)f(to)g(the)h(co)o(v)o
-(ers,)g(as)g(long)f(as)h(they)g(preserv)o(e)g(the)g(title)f(of)h(the)
-165 1227 y(Do)q(cumen)o(t)g(and)h(satisfy)e(these)i(conditions,)f(can)h
-(b)q(e)g(treated)f(as)h(v)o(erbatim)e(cop)o(ying)h(in)g(other)165
-1282 y(resp)q(ects.)165 1349 y(If)f(the)f(required)h(texts)e(for)h
-(either)g(co)o(v)o(er)g(are)g(to)q(o)g(v)o(oluminous)f(to)h(\014t)g
-(legibly)l(,)f(y)o(ou)h(should)h(put)165 1404 y(the)g(\014rst)f(ones)g
-(listed)g(\(as)f(man)o(y)h(as)g(\014t)h(reasonably\))e(on)h(the)h
-(actual)f(co)o(v)o(er,)f(and)i(con)o(tin)o(ue)f(the)165
-1458 y(rest)f(on)o(to)f(adjacen)o(t)h(pages.)165 1525
-y(If)f(y)o(ou)f(publish)h(or)f(distribute)f(Opaque)j(copies)e(of)g(the)
-h(Do)q(cumen)o(t)f(n)o(um)o(b)q(ering)h(more)f(than)g(100,)165
-1580 y(y)o(ou)h(m)o(ust)f(either)h(include)g(a)g(mac)o(hine-readable)g
-(T)l(ransparen)o(t)f(cop)o(y)h(along)f(with)g(eac)o(h)h(Opaque)165
-1635 y(cop)o(y)l(,)k(or)f(state)g(in)g(or)g(with)g(eac)o(h)g(Opaque)i
-(cop)o(y)e(a)g(computer-net)o(w)o(ork)g(lo)q(cation)f(from)h(whic)o(h)
-165 1690 y(the)12 b(general)g(net)o(w)o(ork-using)f(public)h(has)g
-(access)g(to)g(do)o(wnload)f(using)h(public-standard)g(net)o(w)o(ork)
-165 1745 y(proto)q(cols)18 b(a)h(complete)h(T)l(ransparen)o(t)e(cop)o
-(y)i(of)f(the)g(Do)q(cumen)o(t,)h(free)g(of)f(added)h(material.)31
-b(If)165 1799 y(y)o(ou)19 b(use)h(the)f(latter)f(option,)i(y)o(ou)f(m)o
-(ust)g(tak)o(e)f(reasonably)h(pruden)o(t)h(steps,)g(when)g(y)o(ou)f(b)q
-(egin)165 1854 y(distribution)f(of)g(Opaque)i(copies)f(in)g(quan)o(tit)
-o(y)l(,)g(to)f(ensure)i(that)e(this)h(T)l(ransparen)o(t)f(cop)o(y)h
-(will)165 1909 y(remain)c(th)o(us)f(accessible)h(at)g(the)g(stated)g
-(lo)q(cation)e(un)o(til)i(at)f(least)g(one)i(y)o(ear)e(after)g(the)i
-(last)e(time)165 1964 y(y)o(ou)k(distribute)g(an)g(Opaque)h(cop)o(y)f
-(\(directly)g(or)g(through)g(y)o(our)g(agen)o(ts)f(or)h(retailers\))f
-(of)h(that)165 2019 y(edition)d(to)f(the)h(public.)165
-2086 y(It)i(is)g(requested,)h(but)f(not)g(required,)h(that)e(y)o(ou)h
-(con)o(tact)g(the)g(authors)g(of)f(the)i(Do)q(cumen)o(t)f(w)o(ell)165
-2140 y(b)q(efore)e(redistributing)e(an)o(y)h(large)f(n)o(um)o(b)q(er)i
-(of)e(copies,)h(to)g(giv)o(e)g(them)g(a)g(c)o(hance)h(to)e(pro)o(vide)h
-(y)o(ou)165 2195 y(with)h(an)g(up)q(dated)h(v)o(ersion)e(of)h(the)g(Do)
-q(cumen)o(t.)100 2262 y(4.)29 b(MODIFICA)l(TIONS)165
-2329 y(Y)l(ou)13 b(ma)o(y)f(cop)o(y)h(and)g(distribute)f(a)g(Mo)q
-(di\014ed)h(V)l(ersion)g(of)f(the)h(Do)q(cumen)o(t)f(under)i(the)f
-(conditions)165 2384 y(of)d(sections)g(2)g(and)h(3)f(ab)q(o)o(v)o(e,)h
-(pro)o(vided)f(that)g(y)o(ou)g(release)g(the)h(Mo)q(di\014ed)g(V)l
-(ersion)f(under)h(precisely)165 2439 y(this)j(License,)h(with)f(the)g
-(Mo)q(di\014ed)h(V)l(ersion)f(\014lling)g(the)h(role)e(of)i(the)f(Do)q
-(cumen)o(t,)g(th)o(us)h(licensing)165 2493 y(distribution)h(and)h(mo)q
-(di\014cation)f(of)h(the)g(Mo)q(di\014ed)g(V)l(ersion)g(to)f(who)q(ev)o
-(er)h(p)q(ossesses)h(a)e(cop)o(y)h(of)165 2548 y(it.)i(In)d(addition,)e
-(y)o(ou)h(m)o(ust)f(do)h(these)h(things)f(in)g(the)g(Mo)q(di\014ed)g(V)
-l(ersion:)178 2615 y(A.)30 b(Use)17 b(in)f(the)g(Title)f(P)o(age)h
-(\(and)g(on)h(the)f(co)o(v)o(ers,)g(if)f(an)o(y\))h(a)g(title)f
-(distinct)h(from)f(that)h(of)g(the)255 2670 y(Do)q(cumen)o(t,)h(and)g
-(from)f(those)h(of)f(previous)h(v)o(ersions)f(\(whic)o(h)g(should,)h
-(if)g(there)g(w)o(ere)f(an)o(y)l(,)p eop end
-%%Page: 25 28
-TeXDict begin 25 27 bop 75 -58 a Fo(App)q(endix)16 b(A:)f(GNU)g(F)l
-(ree)g(Do)q(cumen)o(tation)g(License)802 b(25)255 149
-y(b)q(e)16 b(listed)f(in)h(the)g(History)e(section)h(of)g(the)h(Do)q
-(cumen)o(t\).)21 b(Y)l(ou)16 b(ma)o(y)f(use)h(the)g(same)f(title)f(as)
-255 204 y(a)h(previous)g(v)o(ersion)f(if)h(the)g(original)e(publisher)j
-(of)f(that)f(v)o(ersion)g(giv)o(es)h(p)q(ermission.)180
-273 y(B.)30 b(List)15 b(on)g(the)g(Title)g(P)o(age,)f(as)h(authors,)f
-(one)h(or)g(more)g(p)q(ersons)g(or)g(en)o(tities)f(resp)q(onsible)i
-(for)255 328 y(authorship)d(of)f(the)h(mo)q(di\014cations)f(in)h(the)g
-(Mo)q(di\014ed)h(V)l(ersion,)f(together)f(with)g(at)h(least)f(\014v)o
-(e)255 382 y(of)g(the)g(principal)f(authors)g(of)h(the)g(Do)q(cumen)o
-(t)g(\(all)e(of)i(its)f(principal)g(authors,)h(if)f(it)g(has)h(few)o
-(er)255 437 y(than)j(\014v)o(e\),)g(unless)g(they)g(release)g(y)o(ou)g
-(from)f(this)h(requiremen)o(t.)180 506 y(C.)29 b(State)15
-b(on)g(the)h(Title)e(page)h(the)h(name)f(of)g(the)g(publisher)h(of)f
-(the)g(Mo)q(di\014ed)h(V)l(ersion,)f(as)g(the)255 560
-y(publisher.)178 629 y(D.)29 b(Preserv)o(e)15 b(all)f(the)h(cop)o
-(yrigh)o(t)f(notices)h(of)g(the)g(Do)q(cumen)o(t.)181
-697 y(E.)30 b(Add)16 b(an)g(appropriate)f(cop)o(yrigh)o(t)f(notice)h
-(for)g(y)o(our)g(mo)q(di\014cations)g(adjacen)o(t)h(to)f(the)g(other)
-255 752 y(cop)o(yrigh)o(t)f(notices.)183 821 y(F.)29
-b(Include,)15 b(immediately)e(after)g(the)h(cop)o(yrigh)o(t)e(notices,)
-i(a)f(license)h(notice)g(giving)f(the)h(public)255 875
-y(p)q(ermission)e(to)f(use)i(the)f(Mo)q(di\014ed)h(V)l(ersion)f(under)h
-(the)f(terms)g(of)f(this)h(License,)h(in)f(the)h(form)255
-930 y(sho)o(wn)i(in)g(the)g(Addendum)i(b)q(elo)o(w.)177
-999 y(G.)29 b(Preserv)o(e)11 b(in)g(that)g(license)g(notice)h(the)f
-(full)g(lists)f(of)h(In)o(v)m(arian)o(t)g(Sections)g(and)g(required)h
-(Co)o(v)o(er)255 1054 y(T)l(exts)j(giv)o(en)g(in)g(the)g(Do)q(cumen)o
-(t's)g(license)g(notice.)178 1122 y(H.)30 b(Include)16
-b(an)f(unaltered)h(cop)o(y)f(of)f(this)h(License.)196
-1191 y(I.)30 b(Preserv)o(e)16 b(the)g(section)g(En)o(titled)f
-(\\History",)f(Preserv)o(e)h(its)h(Title,)e(and)j(add)f(to)f(it)h(an)g
-(item)255 1245 y(stating)d(at)g(least)g(the)h(title,)f(y)o(ear,)g(new)i
-(authors,)e(and)h(publisher)g(of)g(the)g(Mo)q(di\014ed)g(V)l(ersion)255
-1300 y(as)h(giv)o(en)g(on)h(the)g(Title)e(P)o(age.)21
-b(If)16 b(there)g(is)f(no)h(section)f(En)o(titled)f(\\History")g(in)i
-(the)g(Do)q(cu-)255 1355 y(men)o(t,)h(create)g(one)h(stating)e(the)h
-(title,)g(y)o(ear,)g(authors,)g(and)g(publisher)h(of)f(the)g(Do)q
-(cumen)o(t)255 1410 y(as)h(giv)o(en)f(on)h(its)f(Title)g(P)o(age,)h
-(then)h(add)f(an)g(item)f(describing)h(the)g(Mo)q(di\014ed)g(V)l
-(ersion)g(as)255 1465 y(stated)d(in)g(the)g(previous)g(sen)o(tence.)189
-1533 y(J.)30 b(Preserv)o(e)16 b(the)g(net)o(w)o(ork)f(lo)q(cation,)g
-(if)h(an)o(y)l(,)g(giv)o(en)g(in)g(the)g(Do)q(cumen)o(t)g(for)g(public)
-g(access)h(to)255 1588 y(a)e(T)l(ransparen)o(t)g(cop)o(y)h(of)f(the)g
-(Do)q(cumen)o(t,)h(and)f(lik)o(ewise)g(the)g(net)o(w)o(ork)g(lo)q
-(cations)f(giv)o(en)h(in)255 1643 y(the)h(Do)q(cumen)o(t)g(for)f
-(previous)g(v)o(ersions)g(it)g(w)o(as)g(based)i(on.)k(These)c(ma)o(y)e
-(b)q(e)h(placed)g(in)g(the)255 1697 y(\\History")11 b(section.)18
-b(Y)l(ou)13 b(ma)o(y)f(omit)f(a)h(net)o(w)o(ork)g(lo)q(cation)f(for)h
-(a)g(w)o(ork)g(that)g(w)o(as)f(published)255 1752 y(at)17
-b(least)g(four)h(y)o(ears)f(b)q(efore)h(the)g(Do)q(cumen)o(t)g(itself,)
-f(or)g(if)h(the)f(original)f(publisher)i(of)g(the)255
-1807 y(v)o(ersion)c(it)h(refers)g(to)f(giv)o(es)h(p)q(ermission.)177
-1875 y(K.)30 b(F)l(or)11 b(an)o(y)h(section)f(En)o(titled)g(\\Ac)o(kno)
-o(wledgemen)o(ts")g(or)g(\\Dedications",)f(Preserv)o(e)i(the)g(Title)
-255 1930 y(of)h(the)g(section,)g(and)g(preserv)o(e)h(in)f(the)g
-(section)g(all)f(the)i(substance)f(and)h(tone)f(of)g(eac)o(h)g(of)g
-(the)255 1985 y(con)o(tributor)h(ac)o(kno)o(wledgemen)o(ts)g(and/or)h
-(dedications)f(giv)o(en)h(therein.)184 2054 y(L.)30 b(Preserv)o(e)17
-b(all)g(the)h(In)o(v)m(arian)o(t)f(Sections)g(of)h(the)f(Do)q(cumen)o
-(t,)h(unaltered)g(in)f(their)h(text)f(and)255 2108 y(in)h(their)f
-(titles.)27 b(Section)18 b(n)o(um)o(b)q(ers)g(or)g(the)g(equiv)m(alen)o
-(t)f(are)h(not)g(considered)g(part)f(of)h(the)255 2163
-y(section)d(titles.)171 2232 y(M.)29 b(Delete)15 b(an)o(y)g(section)g
-(En)o(titled)f(\\Endorsemen)o(ts".)20 b(Suc)o(h)c(a)f(section)g(ma)o(y)
-f(not)h(b)q(e)h(included)255 2286 y(in)f(the)g(Mo)q(di\014ed)h(V)l
-(ersion.)178 2355 y(N.)30 b(Do)14 b(not)f(retitle)g(an)o(y)h(existing)f
-(section)h(to)g(b)q(e)g(En)o(titled)g(\\Endorsemen)o(ts")f(or)h(to)f
-(con\015ict)h(in)255 2410 y(title)g(with)g(an)o(y)h(In)o(v)m(arian)o(t)
-g(Section.)177 2478 y(O.)30 b(Preserv)o(e)15 b(an)o(y)g(W)l(arran)o(t)o
-(y)e(Disclaimers.)165 2560 y(If)k(the)g(Mo)q(di\014ed)g(V)l(ersion)f
-(includes)h(new)g(fron)o(t-matter)e(sections)h(or)g(app)q(endices)i
-(that)e(qualify)165 2615 y(as)e(Secondary)g(Sections)g(and)g(con)o
-(tain)f(no)h(material)e(copied)i(from)f(the)h(Do)q(cumen)o(t,)g(y)o(ou)
-f(ma)o(y)h(at)165 2670 y(y)o(our)i(option)f(designate)h(some)g(or)f
-(all)g(of)h(these)h(sections)e(as)h(in)o(v)m(arian)o(t.)22
-b(T)l(o)15 b(do)i(this,)e(add)h(their)p eop end
-%%Page: 26 29
-TeXDict begin 26 28 bop 75 -58 a Fo(App)q(endix)16 b(A:)f(GNU)g(F)l
-(ree)g(Do)q(cumen)o(tation)g(License)802 b(26)165 149
-y(titles)16 b(to)h(the)h(list)f(of)g(In)o(v)m(arian)o(t)g(Sections)h
-(in)f(the)h(Mo)q(di\014ed)g(V)l(ersion's)f(license)h(notice.)27
-b(These)165 204 y(titles)14 b(m)o(ust)h(b)q(e)g(distinct)g(from)f(an)o
-(y)h(other)g(section)g(titles.)165 275 y(Y)l(ou)21 b(ma)o(y)g(add)g(a)g
-(section)g(En)o(titled)f(\\Endorsemen)o(ts",)h(pro)o(vided)g(it)g(con)o
-(tains)f(nothing)h(but)165 330 y(endorsemen)o(ts)15 b(of)f(y)o(our)h
-(Mo)q(di\014ed)g(V)l(ersion)f(b)o(y)h(v)m(arious)f(parties|for)g
-(example,)h(statemen)o(ts)e(of)165 385 y(p)q(eer)h(review)f(or)h(that)e
-(the)i(text)f(has)h(b)q(een)g(appro)o(v)o(ed)g(b)o(y)f(an)h
-(organization)d(as)j(the)f(authoritativ)o(e)165 440 y(de\014nition)i
-(of)g(a)g(standard.)165 511 y(Y)l(ou)f(ma)o(y)g(add)g(a)g(passage)g(of)
-f(up)i(to)e(\014v)o(e)i(w)o(ords)e(as)h(a)g(F)l(ron)o(t-Co)o(v)o(er)e
-(T)l(ext,)i(and)g(a)g(passage)g(of)f(up)165 566 y(to)g(25)g(w)o(ords)g
-(as)g(a)g(Bac)o(k-Co)o(v)o(er)g(T)l(ext,)g(to)g(the)g(end)i(of)e(the)g
-(list)g(of)g(Co)o(v)o(er)f(T)l(exts)i(in)f(the)h(Mo)q(di\014ed)165
-621 y(V)l(ersion.)28 b(Only)18 b(one)g(passage)f(of)h(F)l(ron)o(t-Co)o
-(v)o(er)e(T)l(ext)i(and)g(one)g(of)f(Bac)o(k-Co)o(v)o(er)g(T)l(ext)h
-(ma)o(y)f(b)q(e)165 675 y(added)d(b)o(y)g(\(or)f(through)g(arrangemen)o
-(ts)g(made)h(b)o(y\))f(an)o(y)h(one)g(en)o(tit)o(y)l(.)k(If)c(the)g(Do)
-q(cumen)o(t)g(already)165 730 y(includes)j(a)g(co)o(v)o(er)f(text)h
-(for)f(the)h(same)g(co)o(v)o(er,)f(previously)g(added)i(b)o(y)f(y)o(ou)
-g(or)f(b)o(y)h(arrangemen)o(t)165 785 y(made)h(b)o(y)f(the)h(same)f(en)
-o(tit)o(y)g(y)o(ou)g(are)g(acting)g(on)g(b)q(ehalf)h(of,)g(y)o(ou)f(ma)
-o(y)g(not)g(add)h(another;)g(but)165 840 y(y)o(ou)f(ma)o(y)f(replace)h
-(the)g(old)g(one,)g(on)g(explicit)f(p)q(ermission)g(from)h(the)g
-(previous)g(publisher)g(that)165 895 y(added)f(the)f(old)g(one.)165
-966 y(The)e(author\(s\))e(and)i(publisher\(s\))f(of)h(the)g(Do)q(cumen)
-o(t)f(do)h(not)f(b)o(y)h(this)f(License)i(giv)o(e)e(p)q(ermission)165
-1021 y(to)j(use)g(their)g(names)g(for)f(publicit)o(y)h(for)f(or)h(to)f
-(assert)h(or)f(imply)h(endorsemen)o(t)g(of)g(an)o(y)g(Mo)q(di\014ed)165
-1075 y(V)l(ersion.)100 1147 y(5.)29 b(COMBINING)16 b(DOCUMENTS)165
-1218 y(Y)l(ou)k(ma)o(y)e(com)o(bine)h(the)h(Do)q(cumen)o(t)f(with)g
-(other)g(do)q(cumen)o(ts)g(released)h(under)g(this)f(License,)165
-1273 y(under)h(the)f(terms)g(de\014ned)h(in)f(section)g(4)f(ab)q(o)o(v)
-o(e)h(for)g(mo)q(di\014ed)g(v)o(ersions,)g(pro)o(vided)g(that)f(y)o(ou)
-165 1328 y(include)13 b(in)f(the)h(com)o(bination)f(all)f(of)h(the)h
-(In)o(v)m(arian)o(t)f(Sections)h(of)f(all)f(of)i(the)f(original)f(do)q
-(cumen)o(ts,)165 1382 y(unmo)q(di\014ed,)j(and)g(list)e(them)h(all)g
-(as)g(In)o(v)m(arian)o(t)f(Sections)i(of)f(y)o(our)f(com)o(bined)i(w)o
-(ork)e(in)h(its)g(license)165 1437 y(notice,)h(and)i(that)e(y)o(ou)h
-(preserv)o(e)g(all)g(their)f(W)l(arran)o(t)o(y)g(Disclaimers.)165
-1508 y(The)h(com)o(bined)h(w)o(ork)e(need)i(only)e(con)o(tain)h(one)g
-(cop)o(y)g(of)g(this)f(License,)i(and)f(m)o(ultiple)f(iden)o(tical)165
-1563 y(In)o(v)m(arian)o(t)i(Sections)g(ma)o(y)f(b)q(e)i(replaced)g
-(with)e(a)h(single)g(cop)o(y)l(.)23 b(If)16 b(there)h(are)f(m)o
-(ultiple)f(In)o(v)m(arian)o(t)165 1618 y(Sections)e(with)g(the)g(same)g
-(name)h(but)f(di\013eren)o(t)g(con)o(ten)o(ts,)g(mak)o(e)g(the)g(title)
-f(of)h(eac)o(h)h(suc)o(h)f(section)165 1673 y(unique)18
-b(b)o(y)e(adding)h(at)g(the)g(end)g(of)g(it,)f(in)h(paren)o(theses,)g
-(the)g(name)g(of)g(the)g(original)e(author)h(or)165 1728
-y(publisher)d(of)f(that)g(section)g(if)g(kno)o(wn,)g(or)g(else)g(a)h
-(unique)g(n)o(um)o(b)q(er.)19 b(Mak)o(e)12 b(the)g(same)h(adjustmen)o
-(t)165 1782 y(to)f(the)g(section)g(titles)f(in)h(the)g(list)f(of)h(In)o
-(v)m(arian)o(t)f(Sections)h(in)g(the)h(license)f(notice)g(of)g(the)g
-(com)o(bined)165 1837 y(w)o(ork.)165 1908 y(In)21 b(the)g(com)o
-(bination,)f(y)o(ou)h(m)o(ust)f(com)o(bine)g(an)o(y)g(sections)h(En)o
-(titled)e(\\History")g(in)i(the)f(v)m(ari-)165 1963 y(ous)c(original)e
-(do)q(cumen)o(ts,)i(forming)f(one)i(section)e(En)o(titled)g
-(\\History";)g(lik)o(ewise)f(com)o(bine)i(an)o(y)165
-2018 y(sections)f(En)o(titled)g(\\Ac)o(kno)o(wledgemen)o(ts",)g(and)h
-(an)o(y)f(sections)h(En)o(titled)e(\\Dedications".)21
-b(Y)l(ou)165 2073 y(m)o(ust)15 b(delete)g(all)f(sections)h(En)o(titled)
-f(\\Endorsemen)o(ts.")100 2144 y(6.)29 b(COLLECTIONS)17
-b(OF)e(DOCUMENTS)165 2215 y(Y)l(ou)h(ma)o(y)f(mak)o(e)h(a)f(collection)
-g(consisting)g(of)g(the)h(Do)q(cumen)o(t)g(and)g(other)g(do)q(cumen)o
-(ts)g(released)165 2270 y(under)22 b(this)f(License,)i(and)e(replace)g
-(the)g(individual)g(copies)g(of)g(this)f(License)i(in)f(the)g(v)m
-(arious)165 2325 y(do)q(cumen)o(ts)h(with)e(a)h(single)g(cop)o(y)g
-(that)f(is)h(included)h(in)f(the)g(collection,)h(pro)o(vided)f(that)f
-(y)o(ou)165 2380 y(follo)o(w)d(the)h(rules)h(of)f(this)g(License)h(for)
-f(v)o(erbatim)f(cop)o(ying)h(of)g(eac)o(h)h(of)f(the)h(do)q(cumen)o(ts)
-g(in)f(all)165 2434 y(other)d(resp)q(ects.)165 2506 y(Y)l(ou)h(ma)o(y)f
-(extract)g(a)g(single)g(do)q(cumen)o(t)h(from)f(suc)o(h)h(a)g
-(collection,)e(and)i(distribute)f(it)g(individu-)165
-2560 y(ally)h(under)j(this)e(License,)h(pro)o(vided)f(y)o(ou)g(insert)g
-(a)h(cop)o(y)f(of)g(this)g(License)h(in)o(to)f(the)g(extracted)165
-2615 y(do)q(cumen)o(t,)g(and)f(follo)o(w)e(this)i(License)h(in)f(all)g
-(other)f(resp)q(ects)i(regarding)f(v)o(erbatim)f(cop)o(ying)g(of)165
-2670 y(that)f(do)q(cumen)o(t.)p eop end
-%%Page: 27 30
-TeXDict begin 27 29 bop 75 -58 a Fo(App)q(endix)16 b(A:)f(GNU)g(F)l
-(ree)g(Do)q(cumen)o(tation)g(License)802 b(27)100 149
-y(7.)29 b(A)o(GGREGA)l(TION)15 b(WITH)h(INDEPENDENT)e(W)o(ORKS)165
-221 y(A)g(compilation)e(of)i(the)g(Do)q(cumen)o(t)g(or)f(its)h(deriv)m
-(ativ)o(es)f(with)g(other)h(separate)f(and)i(indep)q(enden)o(t)165
-275 y(do)q(cumen)o(ts)i(or)f(w)o(orks,)g(in)g(or)g(on)h(a)f(v)o(olume)g
-(of)g(a)h(storage)e(or)h(distribution)g(medium,)g(is)g(called)165
-330 y(an)f(\\aggregate")e(if)h(the)i(cop)o(yrigh)o(t)d(resulting)h
-(from)h(the)g(compilation)e(is)i(not)f(used)i(to)e(limit)g(the)165
-385 y(legal)e(righ)o(ts)g(of)h(the)g(compilation's)f(users)h(b)q(ey)o
-(ond)h(what)f(the)g(individual)f(w)o(orks)h(p)q(ermit.)19
-b(When)165 440 y(the)g(Do)q(cumen)o(t)g(is)g(included)h(in)f(an)g
-(aggregate,)f(this)h(License)h(do)q(es)g(not)e(apply)h(to)g(the)g
-(other)165 495 y(w)o(orks)14 b(in)h(the)g(aggregate)f(whic)o(h)h(are)g
-(not)g(themselv)o(es)g(deriv)m(ativ)o(e)f(w)o(orks)g(of)h(the)g(Do)q
-(cumen)o(t.)165 566 y(If)d(the)f(Co)o(v)o(er)f(T)l(ext)i(requiremen)o
-(t)f(of)g(section)g(3)g(is)g(applicable)f(to)h(these)h(copies)f(of)g
-(the)g(Do)q(cumen)o(t,)165 621 y(then)h(if)e(the)i(Do)q(cumen)o(t)f(is)
-f(less)h(than)g(one)h(half)e(of)h(the)g(en)o(tire)g(aggregate,)f(the)h
-(Do)q(cumen)o(t's)g(Co)o(v)o(er)165 675 y(T)l(exts)i(ma)o(y)g(b)q(e)h
-(placed)f(on)g(co)o(v)o(ers)g(that)f(brac)o(k)o(et)h(the)g(Do)q(cumen)o
-(t)g(within)g(the)g(aggregate,)f(or)h(the)165 730 y(electronic)k(equiv)
-m(alen)o(t)g(of)g(co)o(v)o(ers)g(if)g(the)h(Do)q(cumen)o(t)f(is)g(in)g
-(electronic)g(form.)27 b(Otherwise)17 b(they)165 785
-y(m)o(ust)e(app)q(ear)g(on)g(prin)o(ted)g(co)o(v)o(ers)g(that)f(brac)o
-(k)o(et)h(the)g(whole)g(aggregate.)100 856 y(8.)29 b(TRANSLA)l(TION)165
-928 y(T)l(ranslation)18 b(is)i(considered)g(a)g(kind)g(of)f(mo)q
-(di\014cation,)h(so)g(y)o(ou)g(ma)o(y)f(distribute)g(translations)165
-982 y(of)j(the)g(Do)q(cumen)o(t)g(under)h(the)f(terms)g(of)g(section)f
-(4.)41 b(Replacing)22 b(In)o(v)m(arian)o(t)g(Sections)g(with)165
-1037 y(translations)f(requires)h(sp)q(ecial)h(p)q(ermission)f(from)g
-(their)g(cop)o(yrigh)o(t)f(holders,)j(but)f(y)o(ou)g(ma)o(y)165
-1092 y(include)13 b(translations)d(of)i(some)g(or)f(all)g(In)o(v)m
-(arian)o(t)h(Sections)g(in)g(addition)g(to)f(the)h(original)f(v)o
-(ersions)165 1147 y(of)k(these)h(In)o(v)m(arian)o(t)f(Sections.)22
-b(Y)l(ou)15 b(ma)o(y)g(include)i(a)e(translation)f(of)h(this)g
-(License,)h(and)g(all)f(the)165 1201 y(license)21 b(notices)f(in)g(the)
-h(Do)q(cumen)o(t,)g(and)g(an)o(y)f(W)l(arran)o(t)o(y)f(Disclaimers,)h
-(pro)o(vided)g(that)g(y)o(ou)165 1256 y(also)f(include)h(the)g
-(original)f(English)g(v)o(ersion)g(of)h(this)f(License)i(and)f(the)g
-(original)e(v)o(ersions)h(of)165 1311 y(those)e(notices)f(and)i
-(disclaimers.)24 b(In)18 b(case)f(of)f(a)h(disagreemen)o(t)f(b)q(et)o
-(w)o(een)i(the)f(translation)e(and)165 1366 y(the)j(original)d(v)o
-(ersion)i(of)g(this)g(License)i(or)e(a)g(notice)g(or)g(disclaimer,)g
-(the)h(original)d(v)o(ersion)i(will)165 1421 y(prev)m(ail.)165
-1492 y(If)e(a)f(section)f(in)i(the)f(Do)q(cumen)o(t)g(is)g(En)o(titled)
-f(\\Ac)o(kno)o(wledgemen)o(ts",)g(\\Dedications",)g(or)g(\\His-)165
-1547 y(tory",)f(the)h(requiremen)o(t)g(\(section)f(4\))h(to)f(Preserv)o
-(e)h(its)g(Title)f(\(section)g(1\))h(will)f(t)o(ypically)f(require)165
-1601 y(c)o(hanging)k(the)g(actual)f(title.)100 1673 y(9.)29
-b(TERMINA)l(TION)165 1744 y(Y)l(ou)15 b(ma)o(y)f(not)h(cop)o(y)l(,)f
-(mo)q(dify)l(,)h(sublicense,)g(or)f(distribute)g(the)h(Do)q(cumen)o(t)g
-(except)h(as)e(expressly)165 1799 y(pro)o(vided)19 b(under)h(this)f
-(License.)33 b(An)o(y)19 b(attempt)f(otherwise)h(to)f(cop)o(y)l(,)i(mo)
-q(dify)l(,)g(sublicense,)g(or)165 1854 y(distribute)14
-b(it)h(is)g(v)o(oid,)f(and)h(will)f(automatically)f(terminate)h(y)o
-(our)g(righ)o(ts)g(under)i(this)f(License.)165 1925 y(Ho)o(w)o(ev)o
-(er,)g(if)h(y)o(ou)g(cease)g(all)f(violation)f(of)i(this)g(License,)h
-(then)f(y)o(our)g(license)g(from)f(a)h(particular)165
-1980 y(cop)o(yrigh)o(t)h(holder)g(is)h(reinstated)f(\(a\))g(pro)o
-(visionally)l(,)f(unless)i(and)g(un)o(til)f(the)h(cop)o(yrigh)o(t)e
-(holder)165 2034 y(explicitly)j(and)i(\014nally)e(terminates)h(y)o(our)
-f(license,)j(and)e(\(b\))g(p)q(ermanen)o(tly)l(,)h(if)f(the)g(cop)o
-(yrigh)o(t)165 2089 y(holder)d(fails)f(to)h(notify)f(y)o(ou)h(of)g(the)
-g(violation)e(b)o(y)i(some)g(reasonable)g(means)g(prior)f(to)h(60)f(da)
-o(ys)165 2144 y(after)e(the)i(cessation.)165 2215 y(Moreo)o(v)o(er,)e
-(y)o(our)h(license)h(from)f(a)g(particular)g(cop)o(yrigh)o(t)f(holder)i
-(is)f(reinstated)g(p)q(ermanen)o(tly)g(if)165 2270 y(the)f(cop)o(yrigh)
-o(t)f(holder)g(noti\014es)h(y)o(ou)f(of)h(the)g(violation)e(b)o(y)h
-(some)h(reasonable)f(means,)h(this)f(is)h(the)165 2325
-y(\014rst)g(time)f(y)o(ou)g(ha)o(v)o(e)h(receiv)o(ed)g(notice)f(of)h
-(violation)e(of)h(this)h(License)g(\(for)f(an)o(y)h(w)o(ork\))f(from)g
-(that)165 2380 y(cop)o(yrigh)o(t)i(holder,)g(and)h(y)o(ou)g(cure)g(the)
-g(violation)e(prior)i(to)f(30)g(da)o(ys)h(after)f(y)o(our)g(receipt)h
-(of)g(the)165 2434 y(notice.)165 2506 y(T)l(ermination)d(of)g(y)o(our)g
-(righ)o(ts)g(under)h(this)f(section)h(do)q(es)g(not)f(terminate)g(the)h
-(licenses)f(of)h(parties)165 2560 y(who)19 b(ha)o(v)o(e)g(receiv)o(ed)g
-(copies)g(or)f(righ)o(ts)g(from)g(y)o(ou)h(under)h(this)e(License.)33
-b(If)19 b(y)o(our)g(righ)o(ts)e(ha)o(v)o(e)165 2615 y(b)q(een)d
-(terminated)e(and)i(not)e(p)q(ermanen)o(tly)h(reinstated,)f(receipt)h
-(of)g(a)g(cop)o(y)g(of)f(some)h(or)f(all)g(of)h(the)165
-2670 y(same)i(material)e(do)q(es)j(not)f(giv)o(e)f(y)o(ou)h(an)o(y)g
-(righ)o(ts)f(to)g(use)i(it.)p eop end
-%%Page: 28 31
-TeXDict begin 28 30 bop 75 -58 a Fo(App)q(endix)16 b(A:)f(GNU)g(F)l
-(ree)g(Do)q(cumen)o(tation)g(License)802 b(28)77 149
-y(10.)29 b(FUTURE)15 b(REVISIONS)j(OF)d(THIS)h(LICENSE)165
-217 y(The)21 b(F)l(ree)g(Soft)o(w)o(are)e(F)l(oundation)h(ma)o(y)g
-(publish)h(new,)h(revised)f(v)o(ersions)f(of)g(the)h(GNU)g(F)l(ree)165
-271 y(Do)q(cumen)o(tation)15 b(License)i(from)e(time)g(to)h(time.)21
-b(Suc)o(h)c(new)f(v)o(ersions)g(will)e(b)q(e)j(similar)d(in)i(spirit)
-165 326 y(to)h(the)g(presen)o(t)g(v)o(ersion,)g(but)g(ma)o(y)f
-(di\013er)h(in)g(detail)f(to)h(address)g(new)g(problems)g(or)g
-(concerns.)165 381 y(See)f Fn(http://www.gnu.org/copyle)o(ft/)p
-Fo(.)165 448 y(Eac)o(h)f(v)o(ersion)e(of)i(the)g(License)g(is)f(giv)o
-(en)g(a)h(distinguishing)e(v)o(ersion)h(n)o(um)o(b)q(er.)20
-b(If)15 b(the)g(Do)q(cumen)o(t)165 503 y(sp)q(eci\014es)23
-b(that)f(a)h(particular)e(n)o(um)o(b)q(ered)j(v)o(ersion)d(of)i(this)f
-(License)h(\\or)f(an)o(y)g(later)g(v)o(ersion")165 558
-y(applies)16 b(to)f(it,)h(y)o(ou)g(ha)o(v)o(e)g(the)g(option)f(of)h
-(follo)o(wing)e(the)i(terms)g(and)g(conditions)g(either)g(of)g(that)165
-613 y(sp)q(eci\014ed)k(v)o(ersion)e(or)h(of)f(an)o(y)h(later)f(v)o
-(ersion)g(that)g(has)h(b)q(een)h(published)g(\(not)e(as)g(a)h(draft\))f
-(b)o(y)165 667 y(the)e(F)l(ree)h(Soft)o(w)o(are)e(F)l(oundation.)22
-b(If)17 b(the)g(Do)q(cumen)o(t)f(do)q(es)g(not)g(sp)q(ecify)h(a)f(v)o
-(ersion)g(n)o(um)o(b)q(er)g(of)165 722 y(this)h(License,)h(y)o(ou)f(ma)
-o(y)f(c)o(ho)q(ose)i(an)o(y)e(v)o(ersion)h(ev)o(er)g(published)h(\(not)
-e(as)h(a)g(draft\))f(b)o(y)i(the)f(F)l(ree)165 777 y(Soft)o(w)o(are)e
-(F)l(oundation.)21 b(If)16 b(the)g(Do)q(cumen)o(t)g(sp)q(eci\014es)h
-(that)e(a)h(pro)o(xy)f(can)h(decide)h(whic)o(h)f(future)165
-832 y(v)o(ersions)f(of)h(this)g(License)h(can)f(b)q(e)h(used,)g(that)f
-(pro)o(xy's)f(public)h(statemen)o(t)g(of)g(acceptance)g(of)g(a)165
-887 y(v)o(ersion)e(p)q(ermanen)o(tly)h(authorizes)g(y)o(ou)g(to)f(c)o
-(ho)q(ose)i(that)e(v)o(ersion)g(for)h(the)g(Do)q(cumen)o(t.)77
-954 y(11.)29 b(RELICENSING)165 1021 y(\\Massiv)o(e)17
-b(Multiauthor)g(Collab)q(oration)f(Site")i(\(or)g(\\MMC)g(Site"\))f
-(means)i(an)o(y)f(W)l(orld)g(Wide)165 1076 y(W)l(eb)g(serv)o(er)g(that)
-f(publishes)h(cop)o(yrigh)o(table)e(w)o(orks)h(and)h(also)f(pro)o
-(vides)h(prominen)o(t)f(facilities)165 1131 y(for)c(an)o(yb)q(o)q(dy)h
-(to)f(edit)h(those)f(w)o(orks.)19 b(A)14 b(public)f(wiki)g(that)g(an)o
-(yb)q(o)q(dy)h(can)g(edit)g(is)f(an)h(example)f(of)165
-1186 y(suc)o(h)k(a)g(serv)o(er.)24 b(A)17 b(\\Massiv)o(e)e(Multiauthor)
-g(Collab)q(oration")g(\(or)h(\\MMC"\))f(con)o(tained)h(in)h(the)165
-1240 y(site)e(means)g(an)o(y)g(set)g(of)f(cop)o(yrigh)o(table)g(w)o
-(orks)g(th)o(us)h(published)h(on)f(the)g(MMC)g(site.)165
-1308 y(\\CC-BY-SA")j(means)f(the)h(Creativ)o(e)e(Commons)h(A)o
-(ttribution-Share)f(Alik)o(e)h(3.0)g(license)g(pub-)165
-1362 y(lished)c(b)o(y)h(Creativ)o(e)e(Commons)g(Corp)q(oration,)g(a)h
-(not-for-pro\014t)g(corp)q(oration)f(with)h(a)g(principal)165
-1417 y(place)g(of)f(business)i(in)f(San)g(F)l(rancisco,)f(California,)f
-(as)h(w)o(ell)g(as)h(future)g(cop)o(yleft)f(v)o(ersions)g(of)h(that)165
-1472 y(license)i(published)h(b)o(y)f(that)g(same)f(organization.)165
-1539 y(\\Incorp)q(orate")h(means)g(to)g(publish)g(or)g(republish)g(a)g
-(Do)q(cumen)o(t,)g(in)g(whole)g(or)g(in)g(part,)g(as)g(part)165
-1594 y(of)g(another)g(Do)q(cumen)o(t.)165 1661 y(An)e(MMC)g(is)f
-(\\eligible)g(for)g(relicensing")h(if)f(it)h(is)f(licensed)i(under)g
-(this)e(License,)i(and)f(if)g(all)f(w)o(orks)165 1716
-y(that)20 b(w)o(ere)h(\014rst)g(published)g(under)h(this)e(License)i
-(somewhere)f(other)g(than)g(this)f(MMC,)g(and)165 1771
-y(subsequen)o(tly)e(incorp)q(orated)e(in)i(whole)f(or)g(in)g(part)g(in)
-o(to)f(the)h(MMC,)f(\(1\))h(had)g(no)h(co)o(v)o(er)f(texts)165
-1826 y(or)e(in)o(v)m(arian)o(t)e(sections,)i(and)g(\(2\))f(w)o(ere)h
-(th)o(us)g(incorp)q(orated)g(prior)f(to)h(No)o(v)o(em)o(b)q(er)g(1,)f
-(2008.)165 1893 y(The)21 b(op)q(erator)e(of)h(an)g(MMC)f(Site)h(ma)o(y)
-g(republish)h(an)f(MMC)f(con)o(tained)h(in)g(the)h(site)e(under)165
-1948 y(CC-BY-SA)d(on)f(the)g(same)g(site)f(at)h(an)o(y)f(time)h(b)q
-(efore)g(August)g(1,)g(2009,)e(pro)o(vided)i(the)g(MMC)f(is)165
-2002 y(eligible)g(for)h(relicensing.)p eop end
-%%Page: 29 32
-TeXDict begin 29 31 bop 75 -58 a Fo(App)q(endix)16 b(A:)f(GNU)g(F)l
-(ree)g(Do)q(cumen)o(tation)g(License)802 b(29)75 149
-y Fm(ADDENDUM:)20 b(Ho)n(w)h(to)h(use)g(this)g(License)g(for)g(y)n(our)
-h(do)r(cumen)n(ts)75 229 y Fo(T)l(o)17 b(use)h(this)e(License)i(in)g(a)
-f(do)q(cumen)o(t)g(y)o(ou)g(ha)o(v)o(e)g(written,)g(include)g(a)g(cop)o
-(y)g(of)g(the)h(License)g(in)f(the)75 284 y(do)q(cumen)o(t)f(and)f(put)
-g(the)h(follo)o(wing)d(cop)o(yrigh)o(t)g(and)j(license)f(notices)g
-(just)g(after)f(the)h(title)f(page:)234 340 y Fb(Copyright)i(\(C\))38
-b Fa(year)k(your)19 b(name)t Fb(.)234 384 y(Permission)d(is)j(granted)e
-(to)i(copy,)e(distribute)f(and/or)h(modify)h(this)g(document)234
-427 y(under)g(the)g(terms)g(of)h(the)f(GNU)h(Free)f(Documenta)o(tio)o
-(n)e(License,)h(Version)g(1.3)234 471 y(or)i(any)g(later)e(version)g
-(published)f(by)j(the)g(Free)f(Software)e(Foundation)o(;)234
-514 y(with)i(no)h(Invariant)d(Sections,)g(no)j(Front-Cove)o(r)e(Texts,)
-g(and)h(no)h(Back-Cover)234 558 y(Texts.)37 b(A)19 b(copy)f(of)h(the)g
-(license)e(is)h(included)f(in)i(the)f(section)f(entitled)g(``GNU)234
-601 y(Free)h(Documentat)o(ion)e(License'')o(.)137 669
-y Fo(If)k(y)o(ou)g(ha)o(v)o(e)g(In)o(v)m(arian)o(t)f(Sections,)h(F)l
-(ron)o(t-Co)o(v)o(er)f(T)l(exts)g(and)h(Bac)o(k-Co)o(v)o(er)f(T)l
-(exts,)i(replace)f(the)75 724 y(\\with)s(.)10 b(.)g(.)5
-b(T)l(exts.")20 b(line)15 b(with)f(this:)273 780 y Fb(with)19
-b(the)f(Invariant)e(Sections)h(being)g Fa(list)h(their)g(titles)t
-Fb(,)f(with)273 823 y(the)i(Front-Cov)o(er)d(Texts)i(being)g
-Fa(list)t Fb(,)g(and)g(with)g(the)h(Back-Cove)o(r)d(Texts)273
-867 y(being)i Fa(list)t Fb(.)137 934 y Fo(If)g(y)o(ou)f(ha)o(v)o(e)h
-(In)o(v)m(arian)o(t)f(Sections)g(without)g(Co)o(v)o(er)f(T)l(exts,)i
-(or)f(some)g(other)g(com)o(bination)g(of)g(the)75 989
-y(three,)e(merge)g(those)g(t)o(w)o(o)f(alternativ)o(es)f(to)i(suit)f
-(the)h(situation.)137 1056 y(If)d(y)o(our)g(do)q(cumen)o(t)g(con)o
-(tains)f(non)o(trivial)f(examples)i(of)f(program)g(co)q(de,)i(w)o(e)f
-(recommend)g(releasing)75 1111 y(these)22 b(examples)f(in)g(parallel)g
-(under)h(y)o(our)f(c)o(hoice)g(of)g(free)h(soft)o(w)o(are)e(license,)i
-(suc)o(h)g(as)g(the)f(GNU)75 1166 y(General)15 b(Public)g(License,)g
-(to)g(p)q(ermit)g(their)f(use)i(in)f(free)g(soft)o(w)o(are.)p
-eop end
-%%Trailer
-
-userdict /end-hook known{end-hook}if
-%%EOF
diff --git a/lib/readline/doc/rluserman.texinfo b/lib/readline/doc/rluserman.texinfo
deleted file mode 100644 (file)
index 89abe31..0000000
+++ /dev/null
@@ -1,94 +0,0 @@
-\input texinfo    @c -*-texinfo-*-
-@comment %**start of header (This is for running Texinfo on a region.)
-@setfilename rluserman.info
-@settitle GNU Readline Library
-@comment %**end of header (This is for running Texinfo on a region.)
-@setchapternewpage odd
-
-@include manvers.texinfo
-
-@ifinfo
-@dircategory Libraries
-@direntry
-* RLuserman: (rluserman).       The GNU readline library User's Manual.
-@end direntry
-
-This document describes the end user interface of the GNU Readline Library,
-a utility which aids in the consistency of user interface across discrete
-programs that need to provide a command line interface.
-
-Copyright (C) 1988-2002 Free Software Foundation, Inc.
-
-Permission is granted to make and distribute verbatim copies of
-this manual provided the copyright notice and this permission notice
-pare preserved on all copies.
-
-@ignore
-Permission is granted to process this file through TeX and print the
-results, provided the printed document carries copying permission
-notice identical to this one except for the removal of this paragraph
-(this paragraph not being relevant to the printed manual).
-@end ignore
-
-Permission is granted to copy and distribute modified versions of this
-manual under the conditions for verbatim copying, provided that the entire
-resulting derived work is distributed under the terms of a permission
-notice identical to this one.
-
-Permission is granted to copy and distribute translations of this manual
-into another language, under the above conditions for modified versions,
-except that this permission notice may be stated in a translation approved
-by the Free Software Foundation.
-@end ifinfo
-
-@titlepage  
-@title GNU Readline Library User Interface
-@subtitle Edition @value{EDITION}, for @code{Readline Library} Version @value{VERSION}.
-@subtitle @value{UPDATE-MONTH}
-@author Brian Fox, Free Software Foundation
-@author Chet Ramey, Case Western Reserve University
-
-@page
-This document describes the end user interface of the GNU Readline Library,
-a utility which aids in the consistency of user interface across discrete
-programs that need to provide a command line interface.
-
-Published by the Free Software Foundation @*
-59 Temple Place, Suite 330, @*
-Boston, MA 02111 USA
-
-Permission is granted to make and distribute verbatim copies of
-this manual provided the copyright notice and this permission notice
-are preserved on all copies.
-
-Permission is granted to copy and distribute modified versions of this
-manual under the conditions for verbatim copying, provided that the entire
-resulting derived work is distributed under the terms of a permission
-notice identical to this one.
-
-Permission is granted to copy and distribute translations of this manual
-into another language, under the above conditions for modified versions,
-except that this permission notice may be stated in a translation approved
-by the Free Software Foundation.
-
-@vskip 0pt plus 1filll
-Copyright @copyright{} 1988-2002 Free Software Foundation, Inc.
-@end titlepage
-
-@ifinfo
-@node Top
-@top GNU Readline Library
-
-This document describes the end user interface of the GNU Readline Library,
-a utility which aids in the consistency of user interface across discrete
-programs that need to provide a command line interface.
-
-@menu
-* Command Line Editing::          GNU Readline User's Manual.
-@end menu
-@end ifinfo
-
-@include rluser.texinfo
-
-@contents
-@bye
diff --git a/lib/readline/doc/rluserman.tmp b/lib/readline/doc/rluserman.tmp
deleted file mode 100644 (file)
index 2c4c42e..0000000
+++ /dev/null
@@ -1,26 +0,0 @@
-
-This manual describes the end user interface of the GNU Readline Library
-(version @value{VERSION}, @value{UPDATED}), a library which aids in the
-consistency of user interface across discrete programs which provide
-a command line interface.
-
-Copyright @copyright{} 1988--2011 Free Software Foundation, Inc.
-
-Permission is granted to make and distribute verbatim copies of
-this manual provided the copyright notice and this permission notice
-are preserved on all copies.
-
-@quotation
-Permission is granted to copy, distribute and/or modify this document
-under the terms of the GNU Free Documentation License, Version 1.3 or
-any later version published by the Free Software Foundation; with no
-Invariant Sections, with the Front-Cover texts being ``A GNU Manual'',
-and with the Back-Cover Texts as in (a) below. A copy of the license is
-included in the section entitled ``GNU Free Documentation License''.
-
-(a) The FSF's Back-Cover Text is: You are free to copy and modify
-this GNU manual. Buying copies from GNU Press supports the FSF in
-developing GNU and promoting software freedom.''
-
-@end quotation
-@endinput 
diff --git a/lib/readline/doc/rluserman.toc b/lib/readline/doc/rluserman.toc
deleted file mode 100644 (file)
index 86c63f8..0000000
+++ /dev/null
@@ -1,23 +0,0 @@
-@numchapentry{Command Line Editing}{1}{Command Line Editing}{1}
-@numsecentry{Introduction to Line Editing}{1.1}{Introduction and Notation}{1}
-@numsecentry{Readline Interaction}{1.2}{Readline Interaction}{1}
-@numsubsecentry{Readline Bare Essentials}{1.2.1}{Readline Bare Essentials}{1}
-@numsubsecentry{Readline Movement Commands}{1.2.2}{Readline Movement Commands}{2}
-@numsubsecentry{Readline Killing Commands}{1.2.3}{Readline Killing Commands}{2}
-@numsubsecentry{Readline Arguments}{1.2.4}{Readline Arguments}{3}
-@numsubsecentry{Searching for Commands in the History}{1.2.5}{Searching}{3}
-@numsecentry{Readline Init File}{1.3}{Readline Init File}{4}
-@numsubsecentry{Readline Init File Syntax}{1.3.1}{Readline Init File Syntax}{4}
-@numsubsecentry{Conditional Init Constructs}{1.3.2}{Conditional Init Constructs}{10}
-@numsubsecentry{Sample Init File}{1.3.3}{Sample Init File}{11}
-@numsecentry{Bindable Readline Commands}{1.4}{Bindable Readline Commands}{14}
-@numsubsecentry{Commands For Moving}{1.4.1}{Commands For Moving}{14}
-@numsubsecentry{Commands For Manipulating The History}{1.4.2}{Commands For History}{14}
-@numsubsecentry{Commands For Changing Text}{1.4.3}{Commands For Text}{16}
-@numsubsecentry{Killing And Yanking}{1.4.4}{Commands For Killing}{17}
-@numsubsecentry{Specifying Numeric Arguments}{1.4.5}{Numeric Arguments}{18}
-@numsubsecentry{Letting Readline Type For You}{1.4.6}{Commands For Completion}{18}
-@numsubsecentry{Keyboard Macros}{1.4.7}{Keyboard Macros}{19}
-@numsubsecentry{Some Miscellaneous Commands}{1.4.8}{Miscellaneous Commands}{19}
-@numsecentry{Readline vi Mode}{1.5}{Readline vi Mode}{21}
-@appentry{GNU Free Documentation License}{A}{GNU Free Documentation License}{22}
diff --git a/lib/readline/doc/rluserman.tp b/lib/readline/doc/rluserman.tp
deleted file mode 100644 (file)
index e69de29..0000000
diff --git a/lib/readline/doc/rluserman.vr b/lib/readline/doc/rluserman.vr
deleted file mode 100644 (file)
index 362ac56..0000000
+++ /dev/null
@@ -1,31 +0,0 @@
-\entry{bell-style}{4}{\code {bell-style}}
-\entry{bind-tty-special-chars}{5}{\code {bind-tty-special-chars}}
-\entry{comment-begin}{5}{\code {comment-begin}}
-\entry{completion-display-width}{5}{\code {completion-display-width}}
-\entry{completion-ignore-case}{5}{\code {completion-ignore-case}}
-\entry{completion-map-case}{5}{\code {completion-map-case}}
-\entry{completion-prefix-display-length}{5}{\code {completion-prefix-display-length}}
-\entry{completion-query-items}{5}{\code {completion-query-items}}
-\entry{convert-meta}{5}{\code {convert-meta}}
-\entry{disable-completion}{5}{\code {disable-completion}}
-\entry{editing-mode}{6}{\code {editing-mode}}
-\entry{enable-keypad}{6}{\code {enable-keypad}}
-\entry{expand-tilde}{6}{\code {expand-tilde}}
-\entry{history-preserve-point}{6}{\code {history-preserve-point}}
-\entry{history-size}{6}{\code {history-size}}
-\entry{horizontal-scroll-mode}{6}{\code {horizontal-scroll-mode}}
-\entry{input-meta}{6}{\code {input-meta}}
-\entry{meta-flag}{6}{\code {meta-flag}}
-\entry{isearch-terminators}{6}{\code {isearch-terminators}}
-\entry{keymap}{7}{\code {keymap}}
-\entry{mark-modified-lines}{7}{\code {mark-modified-lines}}
-\entry{mark-symlinked-directories}{7}{\code {mark-symlinked-directories}}
-\entry{match-hidden-files}{7}{\code {match-hidden-files}}
-\entry{menu-complete-display-prefix}{7}{\code {menu-complete-display-prefix}}
-\entry{output-meta}{7}{\code {output-meta}}
-\entry{page-completions}{7}{\code {page-completions}}
-\entry{revert-all-at-newline}{8}{\code {revert-all-at-newline}}
-\entry{show-all-if-ambiguous}{8}{\code {show-all-if-ambiguous}}
-\entry{show-all-if-unmodified}{8}{\code {show-all-if-unmodified}}
-\entry{skip-completed-text}{8}{\code {skip-completed-text}}
-\entry{visible-stats}{8}{\code {visible-stats}}
diff --git a/lib/readline/doc/rluserman.vrs b/lib/readline/doc/rluserman.vrs
deleted file mode 100644 (file)
index 69a72b5..0000000
+++ /dev/null
@@ -1,44 +0,0 @@
-\initial {B}
-\entry {\code {bell-style}}{4}
-\entry {\code {bind-tty-special-chars}}{5}
-\initial {C}
-\entry {\code {comment-begin}}{5}
-\entry {\code {completion-display-width}}{5}
-\entry {\code {completion-ignore-case}}{5}
-\entry {\code {completion-map-case}}{5}
-\entry {\code {completion-prefix-display-length}}{5}
-\entry {\code {completion-query-items}}{5}
-\entry {\code {convert-meta}}{5}
-\initial {D}
-\entry {\code {disable-completion}}{5}
-\initial {E}
-\entry {\code {editing-mode}}{6}
-\entry {\code {enable-keypad}}{6}
-\entry {\code {expand-tilde}}{6}
-\initial {H}
-\entry {\code {history-preserve-point}}{6}
-\entry {\code {history-size}}{6}
-\entry {\code {horizontal-scroll-mode}}{6}
-\initial {I}
-\entry {\code {input-meta}}{6}
-\entry {\code {isearch-terminators}}{6}
-\initial {K}
-\entry {\code {keymap}}{7}
-\initial {M}
-\entry {\code {mark-modified-lines}}{7}
-\entry {\code {mark-symlinked-directories}}{7}
-\entry {\code {match-hidden-files}}{7}
-\entry {\code {menu-complete-display-prefix}}{7}
-\entry {\code {meta-flag}}{6}
-\initial {O}
-\entry {\code {output-meta}}{7}
-\initial {P}
-\entry {\code {page-completions}}{7}
-\initial {R}
-\entry {\code {revert-all-at-newline}}{8}
-\initial {S}
-\entry {\code {show-all-if-ambiguous}}{8}
-\entry {\code {show-all-if-unmodified}}{8}
-\entry {\code {skip-completed-text}}{8}
-\initial {V}
-\entry {\code {visible-stats}}{8}
diff --git a/lib/readline/examples/rlptytest.c b/lib/readline/examples/rlptytest.c
deleted file mode 100644 (file)
index 79257db..0000000
+++ /dev/null
@@ -1,337 +0,0 @@
-/*
- *
- * Another test harness for the readline callback interface.
- *
- * Author: Bob Rossi <bob@brasko.net>
- */
-
-#if defined (HAVE_CONFIG_H)
-#include <config.h>
-#endif
-
-#include <stdio.h>
-#include <sys/types.h>
-#include <errno.h>
-#include <curses.h>
-
-#include <stdlib.h>
-#include <unistd.h>
-
-#include <signal.h>
-
-#if 0  /* LINUX */
-#include <pty.h>
-#else
-#include <util.h>
-#endif
-
-#ifdef READLINE_LIBRARY
-#  include "readline.h"
-#else
-#  include <readline/readline.h>
-#endif
-
-/**
- * Master/Slave PTY used to keep readline off of stdin/stdout.
- */
-static int masterfd = -1;
-static int slavefd;
-
-void
-sigint (s)
-     int s;
-{
-  tty_reset (STDIN_FILENO);
-  close (masterfd);
-  close (slavefd);
-  printf ("\n");
-  exit (0);
-}
-
-static int 
-user_input()
-{
-  int size;
-  const int MAX = 1024;
-  char *buf = (char *)malloc(MAX+1);
-
-  size = read (STDIN_FILENO, buf, MAX);
-  if (size == -1)
-    return -1;
-
-  size = write (masterfd, buf, size);
-  if (size == -1)
-    return -1;
-
-  return 0;
-}
-
-static int 
-readline_input()
-{
-  const int MAX = 1024;
-  char *buf = (char *)malloc(MAX+1);
-  int size;
-
-  size = read (masterfd, buf, MAX);
-  if (size == -1)
-    {
-      free( buf );
-      buf = NULL;
-      return -1;
-    }
-
-  buf[size] = 0;
-
-  /* Display output from readline */
-  if ( size > 0 )
-    fprintf(stderr, "%s", buf);
-
-  free( buf );
-  buf = NULL;
-  return 0;
-}
-
-static void 
-rlctx_send_user_command(char *line)
-{
-  /* This happens when rl_callback_read_char gets EOF */
-  if ( line == NULL )
-    return;
-    
-  if (strcmp (line, "exit") == 0) {
-       tty_reset (STDIN_FILENO);
-       close (masterfd);
-       close (slavefd);
-       printf ("\n");
-       exit (0);
-  }
-  
-  /* Don't add the enter command */
-  if ( line && *line != '\0' )
-    add_history(line);
-}
-
-static void 
-custom_deprep_term_function ()
-{
-}
-
-static int 
-init_readline (int inputfd, int outputfd) 
-{
-  FILE *inputFILE, *outputFILE;
-
-  inputFILE = fdopen (inputfd, "r");
-  if (!inputFILE)
-    return -1;
-
-  outputFILE = fdopen (outputfd, "w");
-  if (!outputFILE)
-    return -1;
-
-  rl_instream = inputFILE;
-  rl_outstream = outputFILE;
-
-  /* Tell readline what the prompt is if it needs to put it back */
-  rl_callback_handler_install("(rltest):  ", rlctx_send_user_command);
-
-  /* Set the terminal type to dumb so the output of readline can be
-   * understood by tgdb */
-  if ( rl_reset_terminal("dumb") == -1 )
-    return -1;
-
-  /* For some reason, readline can not deprep the terminal.
-   * However, it doesn't matter because no other application is working on
-   * the terminal besides readline */
-  rl_deprep_term_function = custom_deprep_term_function;
-
-  using_history();
-  read_history(".history"); 
-
-  return 0;
-}
-
-static int 
-main_loop(void)
-{
-  fd_set rset;
-  int max;
-    
-  max = (masterfd > STDIN_FILENO) ? masterfd : STDIN_FILENO;
-  max = (max > slavefd) ? max : slavefd;
-
-  for (;;)
-    {
-      /* Reset the fd_set, and watch for input from GDB or stdin */
-      FD_ZERO(&rset);
-        
-      FD_SET(STDIN_FILENO, &rset);
-      FD_SET(slavefd, &rset);
-      FD_SET(masterfd, &rset);
-
-      /* Wait for input */
-      if (select(max + 1, &rset, NULL, NULL, NULL) == -1)
-        {
-          if (errno == EINTR)
-             continue;
-          else
-            return -1;
-        }
-
-      /* Input received through the pty:  Handle it 
-       * Wrote to masterfd, slave fd has that input, alert readline to read it. 
-       */
-      if (FD_ISSET(slavefd, &rset))
-        rl_callback_read_char();
-
-      /* Input received through the pty.
-       * Readline read from slavefd, and it wrote to the masterfd. 
-       */
-      if (FD_ISSET(masterfd, &rset))
-        if ( readline_input() == -1 )
-          return -1;
-
-      /* Input received:  Handle it, write to masterfd (input to readline) */
-      if (FD_ISSET(STDIN_FILENO, &rset))
-        if ( user_input() == -1 )
-          return -1;
-  }
-
-  return 0;
-}
-
-/* The terminal attributes before calling tty_cbreak */
-static struct termios save_termios;
-static struct winsize size;
-static enum { RESET, TCBREAK } ttystate = RESET;
-
-/* tty_cbreak: Sets terminal to cbreak mode. Also known as noncanonical mode.
- *    1. Signal handling is still turned on, so the user can still type those.
- *    2. echo is off
- *    3. Read in one char at a time.
- *
- * fd    - The file descriptor of the terminal
- * 
- * Returns: 0 on sucess, -1 on error
- */
-int tty_cbreak(int fd){
-   struct termios buf;
-    int ttysavefd = -1;
-   
-   if(tcgetattr(fd, &save_termios) < 0)
-      return -1;
-      
-   buf = save_termios;
-   buf.c_lflag &= ~(ECHO | ICANON);
-   buf.c_iflag &= ~(ICRNL | INLCR);
-   buf.c_cc[VMIN] = 1;
-   buf.c_cc[VTIME] = 0;
-
-#if defined (VLNEXT) && defined (_POSIX_VDISABLE)
-   buf.c_cc[VLNEXT] = _POSIX_VDISABLE;
-#endif
-
-#if defined (VDSUSP) && defined (_POSIX_VDISABLE)
-   buf.c_cc[VDSUSP] = _POSIX_VDISABLE;
-#endif
-
-  /* enable flow control; only stty start char can restart output */
-#if 0
-  buf.c_iflag |= (IXON|IXOFF);
-#ifdef IXANY
-  buf.c_iflag &= ~IXANY;
-#endif
-#endif
-
-  /* disable flow control; let ^S and ^Q through to pty */
-  buf.c_iflag &= ~(IXON|IXOFF);
-#ifdef IXANY
-  buf.c_iflag &= ~IXANY;
-#endif
-
-  if(tcsetattr(fd, TCSAFLUSH, &buf) < 0)
-      return -1;
-
-   ttystate = TCBREAK;
-   ttysavefd = fd;
-
-   /* set size */
-   if(ioctl(fd, TIOCGWINSZ, (char *)&size) < 0)
-      return -1;
-
-#ifdef DEBUG
-   err_msg("%d rows and %d cols\n", size.ws_row, size.ws_col);   
-#endif
-   
-   return (0);   
-}
-
-int 
-tty_off_xon_xoff (int fd)
-{
-  struct termios buf;
-  int ttysavefd = -1;
-
-  if(tcgetattr(fd, &buf) < 0)
-    return -1;
-     
-  buf.c_iflag &= ~(IXON|IXOFF);
-
-  if(tcsetattr(fd, TCSAFLUSH, &buf) < 0)
-    return -1;
-
-  return 0;   
-}
-
-/* tty_reset: Sets the terminal attributes back to their previous state.
- * PRE: tty_cbreak must have already been called.
- * 
- * fd    - The file descrioptor of the terminal to reset.
- * 
- * Returns: 0 on success, -1 on error
- */
-int tty_reset(int fd)
-{
-   if(ttystate != TCBREAK)
-      return (0);
-
-   if(tcsetattr(fd, TCSAFLUSH, &save_termios) < 0)
-      return (-1);
-      
-   ttystate = RESET;
-   
-   return 0;   
-}
-
-int 
-main()
-{
-  int val;
-  val = openpty (&masterfd, &slavefd, NULL, NULL, NULL);
-  if (val == -1)
-    return -1;
-
-  val = tty_off_xon_xoff (masterfd);
-  if (val == -1)
-    return -1;
-
-  val = init_readline (slavefd, slavefd);
-  if (val == -1)
-    return -1;
-
-  val = tty_cbreak (STDIN_FILENO);
-  if (val == -1)
-    return -1;
-
-  signal (SIGINT, sigint);
-
-  val = main_loop ();
-
-  tty_reset (STDIN_FILENO);
-
-  if (val == -1)
-    return -1;
-
-  return 0;
-}
diff --git a/lib/readline/examples/x b/lib/readline/examples/x
deleted file mode 100644 (file)
index 239dcab..0000000
+++ /dev/null
@@ -1 +0,0 @@
-N   3149)   5/1 To: peggy.gup@c Re: FW: Phone for Mike Dailey   (2413 chars)N   3150)   5/1 Jason Cutcher   RE: Phone for Mike Dailey       (34705 chars)N   3151)   5/1 Wizards         *****SPAM***** Relief           (7291 chars)N   3152)   5/1 FCG Help Desk   Case HD0000002533519, Medium, h (2537 chars)N   3153)   5/1 To: jrw11@case. HD0000002533519                 (2247 chars)N   3154)   5/1 Peggy Watts Gup RE: [tis-staff] Boxes back to m (12903 chars)N   3155)   5/1 Debbie Andrews  [firewall-changes] Firewa
diff --git a/lib/readline/rlptytest.c b/lib/readline/rlptytest.c
deleted file mode 100644 (file)
index ee351a9..0000000
+++ /dev/null
@@ -1,301 +0,0 @@
-/*
- *
- * Another test harness for the readline callback interface.
- *
- * Author: Bob Rossi <bob@brasko.net>
- */
-
-#if defined (HAVE_CONFIG_H)
-#include <config.h>
-#endif
-
-#include <stdio.h>
-#include <sys/types.h>
-#include <errno.h>
-#include <curses.h>
-
-#include <stdlib.h>
-#include <unistd.h>
-
-#include <signal.h>
-
-#if 0  /* LINUX */
-#include <pty.h>
-#else
-#include <util.h>
-#endif
-
-#ifdef READLINE_LIBRARY
-#  include "readline.h"
-#else
-#  include <readline/readline.h>
-#endif
-
-/**
- * Master/Slave PTY used to keep readline off of stdin/stdout.
- */
-static int masterfd = -1;
-static int slavefd;
-
-void
-sigint (s)
-     int s;
-{
-  tty_reset (STDIN_FILENO);
-  close (masterfd);
-  close (slavefd);
-  printf ("\n");
-  exit (0);
-}
-
-static int 
-user_input()
-{
-  int size;
-  const int MAX = 1024;
-  char *buf = (char *)malloc(MAX+1);
-
-  size = read (STDIN_FILENO, buf, MAX);
-  if (size == -1)
-    return -1;
-
-  size = write (masterfd, buf, size);
-  if (size == -1)
-    return -1;
-
-  return 0;
-}
-
-static int 
-readline_input()
-{
-  const int MAX = 1024;
-  char *buf = (char *)malloc(MAX+1);
-  int size;
-
-  size = read (masterfd, buf, MAX);
-  if (size == -1)
-    {
-      free( buf );
-      buf = NULL;
-      return -1;
-    }
-
-  buf[size] = 0;
-
-  /* Display output from readline */
-  if ( size > 0 )
-    fprintf(stderr, "%s", buf);
-
-  free( buf );
-  buf = NULL;
-  return 0;
-}
-
-static void 
-rlctx_send_user_command(char *line)
-{
-  /* This happens when rl_callback_read_char gets EOF */
-  if ( line == NULL )
-    return;
-    
-  if (strcmp (line, "exit") == 0) {
-       tty_reset (STDIN_FILENO);
-       close (masterfd);
-       close (slavefd);
-       printf ("\n");
-       exit (0);
-  }
-  
-  /* Don't add the enter command */
-  if ( line && *line != '\0' )
-    add_history(line);
-}
-
-static void 
-custom_deprep_term_function ()
-{
-}
-
-static int 
-init_readline (int inputfd, int outputfd) 
-{
-  FILE *inputFILE, *outputFILE;
-
-  inputFILE = fdopen (inputfd, "r");
-  if (!inputFILE)
-    return -1;
-
-  outputFILE = fdopen (outputfd, "w");
-  if (!outputFILE)
-    return -1;
-
-  rl_instream = inputFILE;
-  rl_outstream = outputFILE;
-
-  /* Tell readline what the prompt is if it needs to put it back */
-  rl_callback_handler_install("(rltest):  ", rlctx_send_user_command);
-
-  /* Set the terminal type to dumb so the output of readline can be
-   * understood by tgdb */
-  if ( rl_reset_terminal("dumb") == -1 )
-    return -1;
-
-  /* For some reason, readline can not deprep the terminal.
-   * However, it doesn't matter because no other application is working on
-   * the terminal besides readline */
-  rl_deprep_term_function = custom_deprep_term_function;
-
-  using_history();
-  read_history(".history"); 
-
-  return 0;
-}
-
-static int 
-main_loop(void)
-{
-  fd_set rset;
-  int max;
-    
-  max = (masterfd > STDIN_FILENO) ? masterfd : STDIN_FILENO;
-  max = (max > slavefd) ? max : slavefd;
-
-  for (;;)
-    {
-      /* Reset the fd_set, and watch for input from GDB or stdin */
-      FD_ZERO(&rset);
-        
-      FD_SET(STDIN_FILENO, &rset);
-      FD_SET(slavefd, &rset);
-      FD_SET(masterfd, &rset);
-
-      /* Wait for input */
-      if (select(max + 1, &rset, NULL, NULL, NULL) == -1)
-        {
-          if (errno == EINTR)
-             continue;
-          else
-            return -1;
-        }
-
-      /* Input received through the pty:  Handle it 
-       * Wrote to masterfd, slave fd has that input, alert readline to read it. 
-       */
-      if (FD_ISSET(slavefd, &rset))
-        rl_callback_read_char();
-
-      /* Input received through the pty.
-       * Readline read from slavefd, and it wrote to the masterfd. 
-       */
-      if (FD_ISSET(masterfd, &rset))
-        if ( readline_input() == -1 )
-          return -1;
-
-      /* Input received:  Handle it, write to masterfd (input to readline) */
-      if (FD_ISSET(STDIN_FILENO, &rset))
-        if ( user_input() == -1 )
-          return -1;
-  }
-
-  return 0;
-}
-
-/* The terminal attributes before calling tty_cbreak */
-static struct termios save_termios;
-static struct winsize size;
-static enum { RESET, TCBREAK } ttystate = RESET;
-
-/* tty_cbreak: Sets terminal to cbreak mode. Also known as noncanonical mode.
- *    1. Signal handling is still turned on, so the user can still type those.
- *    2. echo is off
- *    3. Read in one char at a time.
- *
- * fd    - The file descriptor of the terminal
- * 
- * Returns: 0 on sucess, -1 on error
- */
-int tty_cbreak(int fd){
-   struct termios buf;
-    int ttysavefd = -1;
-   
-   if(tcgetattr(fd, &save_termios) < 0)
-      return -1;
-      
-   buf = save_termios;
-   buf.c_lflag &= ~(ECHO | ICANON);
-   buf.c_iflag &= ~(ICRNL | INLCR);
-   buf.c_cc[VMIN] = 1;
-   buf.c_cc[VTIME] = 0;
-
-#if defined (VLNEXT) && defined (_POSIX_VDISABLE)
-   buf.c_cc[VLNEXT] = _POSIX_VDISABLE;
-#endif
-
-#if defined (VDSUSP) && defined (_POSIX_VDISABLE)
-   buf.c_cc[VDSUSP] = _POSIX_VDISABLE;
-#endif
-
-   if(tcsetattr(fd, TCSAFLUSH, &buf) < 0)
-      return -1;
-
-   ttystate = TCBREAK;
-   ttysavefd = fd;
-
-   /* set size */
-   if(ioctl(fd, TIOCGWINSZ, (char *)&size) < 0)
-      return -1;
-
-#ifdef DEBUG
-   err_msg("%d rows and %d cols\n", size.ws_row, size.ws_col);   
-#endif
-   
-   return (0);   
-}
-
-/* tty_reset: Sets the terminal attributes back to their previous state.
- * PRE: tty_cbreak must have already been called.
- * 
- * fd    - The file descrioptor of the terminal to reset.
- * 
- * Returns: 0 on success, -1 on error
- */
-int tty_reset(int fd){
-   if(ttystate != TCBREAK)
-      return (0);
-
-   if(tcsetattr(fd, TCSAFLUSH, &save_termios) < 0)
-      return (-1);
-      
-   ttystate = RESET;
-   
-   return 0;   
-}
-
-int 
-main()
-{
-  int val;
-  val = openpty (&masterfd, &slavefd, NULL, NULL, NULL);
-  if (val == -1)
-    return -1;
-
-  val = init_readline (slavefd, slavefd);
-  if (val == -1)
-    return -1;
-
-  val = tty_cbreak (STDIN_FILENO);
-  if (val == -1)
-    return -1;
-
-  signal (SIGINT, sigint);
-
-  val = main_loop ();
-
-  tty_reset (STDIN_FILENO);
-
-  if (val == -1)
-    return -1;
-
-  return 0;
-}
diff --git a/lib/termcap/grot/COPYING b/lib/termcap/grot/COPYING
deleted file mode 100644 (file)
index 2b940a4..0000000
+++ /dev/null
@@ -1,347 +0,0 @@
-                   GNU GENERAL PUBLIC LICENSE
-                      Version 2, June 1991
-
- Copyright (C) 1989, 1991 Free Software Foundation, Inc.
-     59 Temple Place, Suite 330, Boston, MA 02111-1307, USA
- Everyone is permitted to copy and distribute verbatim copies
- of this license document, but changing it is not allowed.
-
-The Free Software Foundation has exempted Bash from the requirement of
-Paragraph 2c of the General Public License.  This is to say, there is
-no requirement for Bash to print a notice when it is started
-interactively in the usual way.  We made this exception because users
-and standards expect shells not to print such messages.  This
-exception applies to any program that serves as a shell and that is
-based primarily on Bash as opposed to other GNU software.
-
-                           Preamble
-
-  The licenses for most software are designed to take away your
-freedom to share and change it.  By contrast, the GNU General Public
-License is intended to guarantee your freedom to share and change free
-software--to make sure the software is free for all its users.  This
-General Public License applies to most of the Free Software
-Foundation's software and to any other program whose authors commit to
-using it.  (Some other Free Software Foundation software is covered by
-the GNU Library General Public License instead.)  You can apply it to
-your programs, too.
-
-  When we speak of free software, we are referring to freedom, not
-price.  Our General Public Licenses are designed to make sure that you
-have the freedom to distribute copies of free software (and charge for
-this service if you wish), that you receive source code or can get it
-if you want it, that you can change the software or use pieces of it
-in new free programs; and that you know you can do these things.
-
-  To protect your rights, we need to make restrictions that forbid
-anyone to deny you these rights or to ask you to surrender the rights.
-These restrictions translate to certain responsibilities for you if you
-distribute copies of the software, or if you modify it.
-
-  For example, if you distribute copies of such a program, whether
-gratis or for a fee, you must give the recipients all the rights that
-you have.  You must make sure that they, too, receive or can get the
-source code.  And you must show them these terms so they know their
-rights.
-
-  We protect your rights with two steps: (1) copyright the software, and
-(2) offer you this license which gives you legal permission to copy,
-distribute and/or modify the software.
-
-  Also, for each author's protection and ours, we want to make certain
-that everyone understands that there is no warranty for this free
-software.  If the software is modified by someone else and passed on, we
-want its recipients to know that what they have is not the original, so
-that any problems introduced by others will not reflect on the original
-authors' reputations.
-
-  Finally, any free program is threatened constantly by software
-patents.  We wish to avoid the danger that redistributors of a free
-program will individually obtain patent licenses, in effect making the
-program proprietary.  To prevent this, we have made it clear that any
-patent must be licensed for everyone's free use or not licensed at all.
-
-  The precise terms and conditions for copying, distribution and
-modification follow.
-\f
-                   GNU GENERAL PUBLIC LICENSE
-   TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
-
-  0. This License applies to any program or other work which contains
-a notice placed by the copyright holder saying it may be distributed
-under the terms of this General Public License.  The "Program", below,
-refers to any such program or work, and a "work based on the Program"
-means either the Program or any derivative work under copyright law:
-that is to say, a work containing the Program or a portion of it,
-either verbatim or with modifications and/or translated into another
-language.  (Hereinafter, translation is included without limitation in
-the term "modification".)  Each licensee is addressed as "you".
-
-Activities other than copying, distribution and modification are not
-covered by this License; they are outside its scope.  The act of
-running the Program is not restricted, and the output from the Program
-is covered only if its contents constitute a work based on the
-Program (independent of having been made by running the Program).
-Whether that is true depends on what the Program does.
-
-  1. You may copy and distribute verbatim copies of the Program's
-source code as you receive it, in any medium, provided that you
-conspicuously and appropriately publish on each copy an appropriate
-copyright notice and disclaimer of warranty; keep intact all the
-notices that refer to this License and to the absence of any warranty;
-and give any other recipients of the Program a copy of this License
-along with the Program.
-
-You may charge a fee for the physical act of transferring a copy, and
-you may at your option offer warranty protection in exchange for a fee.
-
-  2. You may modify your copy or copies of the Program or any portion
-of it, thus forming a work based on the Program, and copy and
-distribute such modifications or work under the terms of Section 1
-above, provided that you also meet all of these conditions:
-
-    a) You must cause the modified files to carry prominent notices
-    stating that you changed the files and the date of any change.
-
-    b) You must cause any work that you distribute or publish, that in
-    whole or in part contains or is derived from the Program or any
-    part thereof, to be licensed as a whole at no charge to all third
-    parties under the terms of this License.
-
-    c) If the modified program normally reads commands interactively
-    when run, you must cause it, when started running for such
-    interactive use in the most ordinary way, to print or display an
-    announcement including an appropriate copyright notice and a
-    notice that there is no warranty (or else, saying that you provide
-    a warranty) and that users may redistribute the program under
-    these conditions, and telling the user how to view a copy of this
-    License.  (Exception: if the Program itself is interactive but
-    does not normally print such an announcement, your work based on
-    the Program is not required to print an announcement.)
-\f
-These requirements apply to the modified work as a whole.  If
-identifiable sections of that work are not derived from the Program,
-and can be reasonably considered independent and separate works in
-themselves, then this License, and its terms, do not apply to those
-sections when you distribute them as separate works.  But when you
-distribute the same sections as part of a whole which is a work based
-on the Program, the distribution of the whole must be on the terms of
-this License, whose permissions for other licensees extend to the
-entire whole, and thus to each and every part regardless of who wrote it.
-
-Thus, it is not the intent of this section to claim rights or contest
-your rights to work written entirely by you; rather, the intent is to
-exercise the right to control the distribution of derivative or
-collective works based on the Program.
-
-In addition, mere aggregation of another work not based on the Program
-with the Program (or with a work based on the Program) on a volume of
-a storage or distribution medium does not bring the other work under
-the scope of this License.
-
-  3. You may copy and distribute the Program (or a work based on it,
-under Section 2) in object code or executable form under the terms of
-Sections 1 and 2 above provided that you also do one of the following:
-
-    a) Accompany it with the complete corresponding machine-readable
-    source code, which must be distributed under the terms of Sections
-    1 and 2 above on a medium customarily used for software interchange; or,
-
-    b) Accompany it with a written offer, valid for at least three
-    years, to give any third party, for a charge no more than your
-    cost of physically performing source distribution, a complete
-    machine-readable copy of the corresponding source code, to be
-    distributed under the terms of Sections 1 and 2 above on a medium
-    customarily used for software interchange; or,
-
-    c) Accompany it with the information you received as to the offer
-    to distribute corresponding source code.  (This alternative is
-    allowed only for noncommercial distribution and only if you
-    received the program in object code or executable form with such
-    an offer, in accord with Subsection b above.)
-
-The source code for a work means the preferred form of the work for
-making modifications to it.  For an executable work, complete source
-code means all the source code for all modules it contains, plus any
-associated interface definition files, plus the scripts used to
-control compilation and installation of the executable.  However, as a
-special exception, the source code distributed need not include
-anything that is normally distributed (in either source or binary
-form) with the major components (compiler, kernel, and so on) of the
-operating system on which the executable runs, unless that component
-itself accompanies the executable.
-
-If distribution of executable or object code is made by offering
-access to copy from a designated place, then offering equivalent
-access to copy the source code from the same place counts as
-distribution of the source code, even though third parties are not
-compelled to copy the source along with the object code.
-\f
-  4. You may not copy, modify, sublicense, or distribute the Program
-except as expressly provided under this License.  Any attempt
-otherwise to copy, modify, sublicense or distribute the Program is
-void, and will automatically terminate your rights under this License.
-However, parties who have received copies, or rights, from you under
-this License will not have their licenses terminated so long as such
-parties remain in full compliance.
-
-  5. You are not required to accept this License, since you have not
-signed it.  However, nothing else grants you permission to modify or
-distribute the Program or its derivative works.  These actions are
-prohibited by law if you do not accept this License.  Therefore, by
-modifying or distributing the Program (or any work based on the
-Program), you indicate your acceptance of this License to do so, and
-all its terms and conditions for copying, distributing or modifying
-the Program or works based on it.
-
-  6. Each time you redistribute the Program (or any work based on the
-Program), the recipient automatically receives a license from the
-original licensor to copy, distribute or modify the Program subject to
-these terms and conditions.  You may not impose any further
-restrictions on the recipients' exercise of the rights granted herein.
-You are not responsible for enforcing compliance by third parties to
-this License.
-
-  7. If, as a consequence of a court judgment or allegation of patent
-infringement or for any other reason (not limited to patent issues),
-conditions are imposed on you (whether by court order, agreement or
-otherwise) that contradict the conditions of this License, they do not
-excuse you from the conditions of this License.  If you cannot
-distribute so as to satisfy simultaneously your obligations under this
-License and any other pertinent obligations, then as a consequence you
-may not distribute the Program at all.  For example, if a patent
-license would not permit royalty-free redistribution of the Program by
-all those who receive copies directly or indirectly through you, then
-the only way you could satisfy both it and this License would be to
-refrain entirely from distribution of the Program.
-
-If any portion of this section is held invalid or unenforceable under
-any particular circumstance, the balance of the section is intended to
-apply and the section as a whole is intended to apply in other
-circumstances.
-
-It is not the purpose of this section to induce you to infringe any
-patents or other property right claims or to contest validity of any
-such claims; this section has the sole purpose of protecting the
-integrity of the free software distribution system, which is
-implemented by public license practices.  Many people have made
-generous contributions to the wide range of software distributed
-through that system in reliance on consistent application of that
-system; it is up to the author/donor to decide if he or she is willing
-to distribute software through any other system and a licensee cannot
-impose that choice.
-
-This section is intended to make thoroughly clear what is believed to
-be a consequence of the rest of this License.
-\f
-  8. If the distribution and/or use of the Program is restricted in
-certain countries either by patents or by copyrighted interfaces, the
-original copyright holder who places the Program under this License
-may add an explicit geographical distribution limitation excluding
-those countries, so that distribution is permitted only in or among
-countries not thus excluded.  In such case, this License incorporates
-the limitation as if written in the body of this License.
-
-  9. The Free Software Foundation may publish revised and/or new versions
-of the General Public License from time to time.  Such new versions will
-be similar in spirit to the present version, but may differ in detail to
-address new problems or concerns.
-
-Each version is given a distinguishing version number.  If the Program
-specifies a version number of this License which applies to it and "any
-later version", you have the option of following the terms and conditions
-either of that version or of any later version published by the Free
-Software Foundation.  If the Program does not specify a version number of
-this License, you may choose any version ever published by the Free Software
-Foundation.
-
-  10. If you wish to incorporate parts of the Program into other free
-programs whose distribution conditions are different, write to the author
-to ask for permission.  For software which is copyrighted by the Free
-Software Foundation, write to the Free Software Foundation; we sometimes
-make exceptions for this.  Our decision will be guided by the two goals
-of preserving the free status of all derivatives of our free software and
-of promoting the sharing and reuse of software generally.
-
-                           NO WARRANTY
-
-  11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
-FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW.  EXCEPT WHEN
-OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
-PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
-OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.  THE ENTIRE RISK AS
-TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU.  SHOULD THE
-PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
-REPAIR OR CORRECTION.
-
-  12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
-WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
-REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
-INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
-OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
-TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
-YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
-PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
-POSSIBILITY OF SUCH DAMAGES.
-
-                    END OF TERMS AND CONDITIONS
-\f
-       Appendix: How to Apply These Terms to Your New Programs
-
-  If you develop a new program, and you want it to be of the greatest
-possible use to the public, the best way to achieve this is to make it
-free software which everyone can redistribute and change under these terms.
-
-  To do so, attach the following notices to the program.  It is safest
-to attach them to the start of each source file to most effectively
-convey the exclusion of warranty; and each file should have at least
-the "copyright" line and a pointer to where the full notice is found.
-
-    <one line to give the program's name and a brief idea of what it does.>
-    Copyright (C) 19yy  <name of author>
-
-    This program is free software; you can redistribute it and/or modify
-    it under the terms of the GNU General Public License as published by
-    the Free Software Foundation; either version 2 of the License, or
-    (at your option) any later version.
-
-    This program 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 General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with this program; if not, write to the Free Software
-    Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
-
-Also add information on how to contact you by electronic and paper mail.
-
-If the program is interactive, make it output a short notice like this
-when it starts in an interactive mode:
-
-    Gnomovision version 69, Copyright (C) 19yy name of author
-    Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
-    This is free software, and you are welcome to redistribute it
-    under certain conditions; type `show c' for details.
-
-The hypothetical commands `show w' and `show c' should show the appropriate
-parts of the General Public License.  Of course, the commands you use may
-be called something other than `show w' and `show c'; they could even be
-mouse-clicks or menu items--whatever suits your program.
-
-You should also get your employer (if you work as a programmer) or your
-school, if any, to sign a "copyright disclaimer" for the program, if
-necessary.  Here is a sample; alter the names:
-
-  Yoyodyne, Inc., hereby disclaims all copyright interest in the program
-  `Gnomovision' (which makes passes at compilers) written by James Hacker.
-
-  <signature of Ty Coon>, 1 April 1989
-  Ty Coon, President of Vice
-
-This General Public License does not permit incorporating your program into
-proprietary programs.  If your program is a subroutine library, you may
-consider it more useful to permit linking proprietary applications with the
-library.  If this is what you want to do, use the GNU Library General
-Public License instead of this License.
diff --git a/lib/termcap/grot/ChangeLog b/lib/termcap/grot/ChangeLog
deleted file mode 100644 (file)
index e8c4751..0000000
+++ /dev/null
@@ -1,137 +0,0 @@
-Wed Aug 16 20:45:44 1995  David J. MacKenzie  <djm@geech.gnu.ai.mit.edu>
-
-       * version.c: Version 1.3.
-
-       * termcap.c (tgetent): Use the user-supplied buffer even if we
-       don't find a matching terminal, so the program can set the buffer
-       if they want (`less' does this).  From Bob Pegram
-       <pegram@emba.uvm.edu>.
-
-Wed Jul 26 11:44:51 1995  David J. MacKenzie  <djm@geech.gnu.ai.mit.edu>
-
-       * termcap.c: TERMCAP_NAME -> TERMCAP_FILE.
-
-       * configure.in: Add --enable-install-termcap and --with-termcap
-       options.
-
-       * Makefile.in: Add hooks for new configure options.
-
-       * Makefile.in (DISTFILES): Add termcap.src.
-       (DEFS): Remove -DNO_ARG_ARRAY.
-       (install-data, uninstall-data): New targets.
-
-       * tparam.c (tparam): Remove arg array version and the #ifdef.
-
-       * termcap.c: Move #define of bcopy to after #include <string.h>.
-
-       * termcap.h: Prototype the arg to the tputs outfun arg.
-
-       * Makefile.in: realclean -> maintainer-clean.  Use @prefix@ and
-       @exec_prefix@.
-
-       * Makefile.in (DISTFILES): Add install-sh.
-
-Fri Apr  7 14:57:45 1995  Richard Stallman  <rms@mole.gnu.ai.mit.edu>
-
-       * termcap.c (tgetent): Don't try to return the allocated address.
-       Always return 1 if successful.
-
-Tue Feb 14 02:34:43 1995  Richard Stallman  <rms@pogo.gnu.ai.mit.edu>
-
-       * termcap.c (speeds): Make it ints.  Add some higher speeds.
-       (tputs) [emacs]: If speed is high, convert to smaller units.
-       (tputs): Really use SPEED to calculate PADCOUNT.
-
-Sat Dec 17 07:20:24 1994  Richard Stallman  <rms@mole.gnu.ai.mit.edu>
-
-       * termcap.c (tgetst1): Let ^? stand for DEL character.
-
-Thu Jun 30 04:35:50 1994  Roland McGrath  (roland@churchy.gnu.ai.mit.edu)
-
-       * configure.in: Use AC_HAVE_HEADERS instead of AC_UNISTD_H.
-       Add AC_PROG_RANLIB.
-       * Makefile.in (AR, RANLIB): New variables.
-       (install, libtermcap.a): Use them instead of hard-wired commands.
-
-Sat Jun  4 12:21:41 1994  Roland McGrath  (roland@geech.gnu.ai.mit.edu)
-
-       * termcap.c [HAVE_CONFIG_H]: Include <sys/file.h>, and include
-       <fcntl.h> #ifdef USG5, so we get O_* defns.
-
-Wed May 25 19:05:30 1994  Roland McGrath  (roland@churchy.gnu.ai.mit.edu)
-
-       * termcap.c (O_RDONLY): Define to 0 if not already defined.
-       (tgetent): Use O_RDONLY instead of explicit 0 in call to open.
-
-Wed Jan  5 22:20:15 1993  Morten Welinder  (terra@diku.dk)
-
-       * termcap.c (tgetent) [INTERNAL_TERMINAL]: Fake internal terminal 
-       without reading any files.
-       (valid_file_name, tgetent) [MSDOS]: Drive letter support.
-       (tgetent) [MSDOS]: Use text mode for database.
-
-Fri Dec 17 00:22:43 1993  Mike Long  (mike.long@analog.com)
-
-       * termcap.c (tgetent): Replaced literal filenames for termcap
-       database with preprocessor symbol TERMCAP_NAME.
-       (TERMCAP_NAME): Define if not defined.
-
-Fri Sep 10 00:35:07 1993  Roland McGrath  (roland@churchy.gnu.ai.mit.edu)
-
-       * Makefile.in (.c.o): Put -I. before -I$(srcdir).
-       * termcap.c: Include <config.h> instead of "config.h".
-       * tparam.c: Likewise.
-
-Thu Jul 29 20:53:30 1993  David J. MacKenzie  (djm@wookumz.gnu.ai.mit.edu)
-
-       * Makefile.in (config.status): Run config.status --recheck, not
-       configure, to get the right args passed.
-
-Thu Apr 15 12:45:10 1993  David J. MacKenzie  (djm@kropotkin.gnu.ai.mit.edu)
-
-       * Version 1.2.
-
-       * tparam.c [!emacs] (xmalloc, xrealloc, memory_out): New functions.
-       (tparam1): Use them.
-
-       * termcap.c, tparam.c: Use NULL or '\0' where appropriate
-       instead of 0.  Rename some vars.
-       * termcap.c (tgetent): If EOF is reached on termcap file,
-       free allocated resources before returning.
-
-       * termcap.c (tgetent): Use /etc/termcap if TERMCAP is an entry
-       for a term type other than TERM.
-       From pjr@jet.UK (Paul J Rippin).
-
-Sat Apr 10 23:55:12 1993  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
-
-       * tparam.c (tparam1): Don't set the 0200 bit on a non-0 character code.
-       From junio@twinsun.COM (Junio Hamano).
-
-Tue Dec  8 22:02:15 1992  David J. MacKenzie  (djm@kropotkin.gnu.ai.mit.edu)
-
-       * termcap.c, tparam.c: Use HAVE_STRING_H instead of USG.
-
-Thu Dec  3 13:47:56 1992  David J. MacKenzie  (djm@nutrimat.gnu.ai.mit.edu)
-
-       * termcap.c, tparam.c [HAVE_CONFIG_H]: Include config.h.
-
-Fri Oct 23 12:35:29 1992  David J. MacKenzie  (djm@goldman.gnu.ai.mit.edu)
-
-       * termcap.h [__STDC__]: Add consts.  From Franc,ois Pinard.
-
-Tue Oct 13 15:52:21 1992  David J. MacKenzie  (djm@goldman.gnu.ai.mit.edu)
-
-       * Version 1.1.
-
-Tue Sep 29 21:04:39 1992  David J. MacKenzie  (djm@geech.gnu.ai.mit.edu)
-
-       * termcap.[ch], tparam.c: Fix some lint.
-
-       * version.c: New file.
-\f
-Local Variables:
-mode: indented-text
-left-margin: 8
-version-control: never
-End:
diff --git a/lib/termcap/grot/INSTALL b/lib/termcap/grot/INSTALL
deleted file mode 100644 (file)
index 95d84c8..0000000
+++ /dev/null
@@ -1,176 +0,0 @@
-Basic Installation
-==================
-
-   These are generic installation instructions.
-
-   The `configure' shell script attempts to guess correct values for
-various system-dependent variables used during compilation.  It uses
-those values to create a `Makefile' in each directory of the package.
-It may also create one or more `.h' files containing system-dependent
-definitions.  Finally, it creates a shell script `config.status' that
-you can run in the future to recreate the current configuration, a file
-`config.cache' that saves the results of its tests to speed up
-reconfiguring, and a file `config.log' containing compiler output
-(useful mainly for debugging `configure').
-
-   If you need to do unusual things to compile the package, please try
-to figure out how `configure' could check whether to do them, and mail
-diffs or instructions to the address given in the `README' so they can
-be considered for the next release.  If at some point `config.cache'
-contains results you don't want to keep, you may remove or edit it.
-
-   The file `configure.in' is used to create `configure' by a program
-called `autoconf'.  You only need `configure.in' if you want to change
-it or regenerate `configure' using a newer version of `autoconf'.
-
-The simplest way to compile this package is:
-
-  1. `cd' to the directory containing the package's source code and type
-     `./configure' to configure the package for your system.  If you're
-     using `csh' on an old version of System V, you might need to type
-     `sh ./configure' instead to prevent `csh' from trying to execute
-     `configure' itself.
-
-     Running `configure' takes awhile.  While running, it prints some
-     messages telling which features it is checking for.
-
-  2. Type `make' to compile the package.
-
-  3. Optionally, type `make check' to run any self-tests that come with
-     the package.
-
-  4. Type `make install' to install the programs and any data files and
-     documentation.
-
-  5. You can remove the program binaries and object files from the
-     source code directory by typing `make clean'.  To also remove the
-     files that `configure' created (so you can compile the package for
-     a different kind of computer), type `make distclean'.  There is
-     also a `make maintainer-clean' target, but that is intended mainly
-     for the package's developers.  If you use it, you may have to get
-     all sorts of other programs in order to regenerate files that came
-     with the distribution.
-
-Compilers and Options
-=====================
-
-   Some systems require unusual options for compilation or linking that
-the `configure' script does not know about.  You can give `configure'
-initial values for variables by setting them in the environment.  Using
-a Bourne-compatible shell, you can do that on the command line like
-this:
-     CC=c89 CFLAGS=-O2 LIBS=-lposix ./configure
-
-Or on systems that have the `env' program, you can do it like this:
-     env CPPFLAGS=-I/usr/local/include LDFLAGS=-s ./configure
-
-Compiling For Multiple Architectures
-====================================
-
-   You can compile the package for more than one kind of computer at the
-same time, by placing the object files for each architecture in their
-own directory.  To do this, you must use a version of `make' that
-supports the `VPATH' variable, such as GNU `make'.  `cd' to the
-directory where you want the object files and executables to go and run
-the `configure' script.  `configure' automatically checks for the
-source code in the directory that `configure' is in and in `..'.
-
-   If you have to use a `make' that does not supports the `VPATH'
-variable, you have to compile the package for one architecture at a time
-in the source code directory.  After you have installed the package for
-one architecture, use `make distclean' before reconfiguring for another
-architecture.
-
-Installation Names
-==================
-
-   By default, `make install' will install the package's files in
-`/usr/local/bin', `/usr/local/man', etc.  You can specify an
-installation prefix other than `/usr/local' by giving `configure' the
-option `--prefix=PATH'.
-
-   You can specify separate installation prefixes for
-architecture-specific files and architecture-independent files.  If you
-give `configure' the option `--exec-prefix=PATH', the package will use
-PATH as the prefix for installing programs and libraries.
-Documentation and other data files will still use the regular prefix.
-
-   If the package supports it, you can cause programs to be installed
-with an extra prefix or suffix on their names by giving `configure' the
-option `--program-prefix=PREFIX' or `--program-suffix=SUFFIX'.
-
-Optional Features
-=================
-
-   Some packages pay attention to `--enable-FEATURE' options to
-`configure', where FEATURE indicates an optional part of the package.
-They may also pay attention to `--with-PACKAGE' options, where PACKAGE
-is something like `gnu-as' or `x' (for the X Window System).  The
-`README' should mention any `--enable-' and `--with-' options that the
-package recognizes.
-
-   For packages that use the X Window System, `configure' can usually
-find the X include and library files automatically, but if it doesn't,
-you can use the `configure' options `--x-includes=DIR' and
-`--x-libraries=DIR' to specify their locations.
-
-Specifying the System Type
-==========================
-
-   There may be some features `configure' can not figure out
-automatically, but needs to determine by the type of host the package
-will run on.  Usually `configure' can figure that out, but if it prints
-a message saying it can not guess the host type, give it the
-`--host=TYPE' option.  TYPE can either be a short name for the system
-type, such as `sun4', or a canonical name with three fields:
-     CPU-COMPANY-SYSTEM
-
-See the file `config.sub' for the possible values of each field.  If
-`config.sub' isn't included in this package, then this package doesn't
-need to know the host type.
-
-   If you are building compiler tools for cross-compiling, you can also
-use the `--target=TYPE' option to select the type of system they will
-produce code for and the `--build=TYPE' option to select the type of
-system on which you are compiling the package.
-
-Sharing Defaults
-================
-
-   If you want to set default values for `configure' scripts to share,
-you can create a site shell script called `config.site' that gives
-default values for variables like `CC', `cache_file', and `prefix'.
-`configure' looks for `PREFIX/share/config.site' if it exists, then
-`PREFIX/etc/config.site' if it exists.  Or, you can set the
-`CONFIG_SITE' environment variable to the location of the site script.
-A warning: not all `configure' scripts look for a site script.
-
-Operation Controls
-==================
-
-   `configure' recognizes the following options to control how it
-operates.
-
-`--cache-file=FILE'
-     Use and save the results of the tests in FILE instead of
-     `./config.cache'.  Set FILE to `/dev/null' to disable caching, for
-     debugging `configure'.
-
-`--help'
-     Print a summary of the options to `configure', and exit.
-
-`--quiet'
-`--silent'
-`-q'
-     Do not print messages saying which checks are being made.
-
-`--srcdir=DIR'
-     Look for the package's source code in directory DIR.  Usually
-     `configure' can determine that directory automatically.
-
-`--version'
-     Print the version of Autoconf used to generate the `configure'
-     script, and exit.
-
-`configure' also accepts some other, not widely useful, options.
-
diff --git a/lib/termcap/grot/Makefile.in b/lib/termcap/grot/Makefile.in
deleted file mode 100644 (file)
index e6f06ae..0000000
+++ /dev/null
@@ -1,138 +0,0 @@
-# Makefile for GNU termcap library.
-# Copyright (C) 1992, 1993, 1994 Free Software Foundation, Inc.
-
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2, or (at your option)
-# any later version.
-
-# This program 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 General Public License for more details.
-
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111 USA.
-
-#### Start of system configuration section. ####
-
-srcdir = @srcdir@
-VPATH = @srcdir@
-
-CC = @CC@
-AR = ar
-RANLIB = @RANLIB@
-
-INSTALL = @INSTALL@
-INSTALL_DATA = @INSTALL_DATA@
-
-MAKEINFO = makeinfo
-
-DEFS = @DEFS@ -DTERMCAP_FILE=\"$(termcapfile)\"
-
-CFLAGS = -g
-
-prefix = @prefix@
-exec_prefix = @exec_prefix@
-
-# Directory in which to install libtermcap.a.
-libdir = $(exec_prefix)/lib
-
-# Directory in which to install termcap.h.
-includedir = $(prefix)/include
-
-# Directory in which to optionally also install termcap.h,
-# so compilers besides gcc can find it by default.
-# If it is empty or not defined, termcap.h will only be installed in
-# includedir. 
-oldincludedir = /usr/include
-
-# Directory in which to install the documentation info files.
-infodir = $(prefix)/info
-
-# File to which `install-data' should install the data file
-# if --enable-install-termcap was given.
-termcapfile = @termcapfile@
-
-#### End of system configuration section. ####
-
-SHELL = /bin/sh
-
-SRCS = termcap.c tparam.c version.c
-OBJS = termcap.o tparam.o version.o
-HDRS = termcap.h
-DISTFILES = $(SRCS) $(HDRS) ChangeLog COPYING README INSTALL NEWS \
-termcap.src termcap.texi termcap.info* \
-texinfo.tex Makefile.in configure configure.in mkinstalldirs install-sh
-
-all:   libtermcap.a info
-
-.c.o:
-       $(CC) -c $(CPPFLAGS) $(DEFS) -I. -I$(srcdir) $(CFLAGS) $<
-
-install: all installdirs @installdata@
-       $(INSTALL_DATA) libtermcap.a $(libdir)/libtermcap.a
-       -$(RANLIB) $(libdir)/libtermcap.a
-       cd $(srcdir); $(INSTALL_DATA) termcap.h $(includedir)/termcap.h
-       -cd $(srcdir); test -z "$(oldincludedir)" || \
-         $(INSTALL_DATA) termcap.h $(oldincludedir)/termcap.h
-       cd $(srcdir); for f in termcap.info*; \
-       do $(INSTALL_DATA) $$f $(infodir)/$$f; done
-
-uninstall: @uninstalldata@
-       rm -f $(libdir)/libtermcap.a $(includedir)/termcap.h
-       test -z "$(oldincludedir)" || rm -f $(oldincludedir)/termcap.h
-       rm -f $(infodir)/termcap.info*
-
-# These are separate targets to avoid trashing the user's existing
-# termcap file unexpectedly.
-install-data:
-       $(INSTALL_DATA) ${srcdir}/termcap.src ${termcapfile}
-
-uninstall-data:
-       rm -f ${termcapfile}
-
-installdirs:
-       $(SHELL) ${srcdir}/mkinstalldirs $(bindir) $(libdir) \
-       $(includedir) $(infodir)
-
-Makefile: Makefile.in config.status
-       $(SHELL) config.status
-config.status: configure
-       $(SHELL) config.status --recheck
-configure: configure.in
-       cd $(srcdir) && autoconf
-
-libtermcap.a: $(OBJS)
-       $(AR) rc $@ $(OBJS)
-       -$(RANLIB) $@
-
-info: termcap.info
-
-termcap.info: termcap.texi
-       $(MAKEINFO) $(srcdir)/termcap.texi --output=$@
-
-TAGS:  $(SRCS)
-       etags $(SRCS)
-
-clean:
-       rm -f *.a *.o core
-
-mostlyclean: clean
-
-distclean: clean
-       rm -f Makefile config.status config.cache config.log
-
-maintainer-clean: distclean
-       @echo "This command is intended for maintainers to use;"
-       @echo "rebuilding the deleted files requires makeinfo."
-       rm -f TAGS *.info*
-
-dist: $(DISTFILES)
-       echo termcap-`sed -e '/version_string/!d' -e 's/[^0-9]*\([0-9a-z.]*\).*/\1/' -e q version.c` > .fname
-       rm -rf `cat .fname`
-       mkdir `cat .fname`
-       ln $(DISTFILES) `cat .fname`
-       tar chzf `cat .fname`.tar.gz `cat .fname`
-       rm -rf `cat .fname` .fname
diff --git a/lib/termcap/grot/NEWS b/lib/termcap/grot/NEWS
deleted file mode 100644 (file)
index e5d58b9..0000000
+++ /dev/null
@@ -1,20 +0,0 @@
-Major changes in release 1.3:
-
-Termcap data file is now included in distribution and may optionally
-  be installed, or used in a non-default location.
-Support for a fake internal terminal (no external files).
-Higher tty speeds supported.
-Portability tweaks.
-\f
-Major changes in release 1.2:
-
-For `%.', only set the high bit on NUL.
-Fix a file descriptor and memory leak.
-Add const in termcap.h prototypes.
-Configuration improvements.
-\f
-Major changes in release 1.1:
-
-Fix portability problems.
-Improve configuration and installation.
-Fix compiler warnings.
diff --git a/lib/termcap/grot/README b/lib/termcap/grot/README
deleted file mode 100644 (file)
index ba1a19c..0000000
+++ /dev/null
@@ -1,34 +0,0 @@
-This is the GNU termcap library -- a library of C functions that
-enable programs to send control strings to terminals in a way
-independent of the terminal type.  The GNU termcap library does not
-place an arbitrary limit on the size of termcap entries, unlike most
-other termcap libraries.
-
-Most of this package is also distributed with GNU Emacs, but it is
-available in this separate distribution to make it easier to install
-as -ltermcap.  However, use of termcap is discouraged.  Termcap is
-being phased out in favor of the terminfo-based ncurses library, which
-contains an emulation of the termcap library routines in addition to
-an excellent curses implementation.  ncurses is available from the
-usual GNU archive sites.
-
-See the file INSTALL for compilation and installation instructions.
-Additionally:
-
-This package contains termcap.src, the latest official termcap data
-file.  By default, it is not installed.  The current version contains
-some entries that are more than 1023 bytes long, which is the largest
-value that is safe to use with the many historical applications that
-only allocate a 1024 byte termcap buffer (telnet, for example).  If
-you make sure that all of your programs allocate buffers of at least
-2500 bytes, or let the termcap library do it by passing a NULL
-pointer, then it is safe to install the new termcap file, as described
-below.
-
-You can give configure two special options:
-  --enable-install-termcap install the termcap data file
-  --with-termcap=FILE     use data file FILE instead of /etc/termcap
-
-Please report any bugs in this library to bug-gnu-emacs@prep.ai.mit.edu.
-You can check which version of the library you have by using the RCS
-`ident' command on libtermcap.a.
diff --git a/lib/termcap/grot/configure b/lib/termcap/grot/configure
deleted file mode 100755 (executable)
index 8a885fa..0000000
+++ /dev/null
@@ -1,998 +0,0 @@
-#! /bin/sh
-
-# Guess values for system-dependent variables and create Makefiles.
-# Generated automatically using autoconf version 2.4 
-# Copyright (C) 1992, 1993, 1994 Free Software Foundation, Inc.
-#
-# This configure script is free software; the Free Software Foundation
-# gives unlimited permission to copy, distribute and modify it.
-
-# Defaults:
-ac_help=
-ac_default_prefix=/usr/local
-# Any additions from configure.in:
-ac_help="$ac_help
-  --enable-install-termcap install the termcap data file"
-ac_help="$ac_help
-  --with-termcap=FILE     use data file FILE instead of /etc/termcap"
-
-# Initialize some variables set by options.
-# The variables have the same names as the options, with
-# dashes changed to underlines.
-build=NONE
-cache_file=./config.cache
-exec_prefix=NONE
-host=NONE
-no_create=
-nonopt=NONE
-no_recursion=
-prefix=NONE
-program_prefix=NONE
-program_suffix=NONE
-program_transform_name=s,x,x,
-silent=
-site=
-srcdir=
-target=NONE
-verbose=
-x_includes=NONE
-x_libraries=NONE
-
-# Initialize some other variables.
-subdirs=
-
-ac_prev=
-for ac_option
-do
-
-  # If the previous option needs an argument, assign it.
-  if test -n "$ac_prev"; then
-    eval "$ac_prev=\$ac_option"
-    ac_prev=
-    continue
-  fi
-
-  case "$ac_option" in
-  -*=*) ac_optarg=`echo "$ac_option" | sed 's/[-_a-zA-Z0-9]*=//'` ;;
-  *) ac_optarg= ;;
-  esac
-
-  # Accept the important Cygnus configure options, so we can diagnose typos.
-
-  case "$ac_option" in
-
-  -build | --build | --buil | --bui | --bu | --b)
-    ac_prev=build ;;
-  -build=* | --build=* | --buil=* | --bui=* | --bu=* | --b=*)
-    build="$ac_optarg" ;;
-
-  -cache-file | --cache-file | --cache-fil | --cache-fi \
-  | --cache-f | --cache- | --cache | --cach | --cac | --ca | --c)
-    ac_prev=cache_file ;;
-  -cache-file=* | --cache-file=* | --cache-fil=* | --cache-fi=* \
-  | --cache-f=* | --cache-=* | --cache=* | --cach=* | --cac=* | --ca=* | --c=*)
-    cache_file="$ac_optarg" ;;
-
-  -disable-* | --disable-*)
-    ac_feature=`echo $ac_option|sed -e 's/-*disable-//'`
-    # Reject names that are not valid shell variable names.
-    if test -n "`echo $ac_feature| sed 's/[-a-zA-Z0-9_]//g'`"; then
-      { echo "configure: error: $ac_feature: invalid feature name" 1>&2; exit 1; }
-    fi
-    ac_feature=`echo $ac_feature| sed 's/-/_/g'`
-    eval "enable_${ac_feature}=no" ;;
-
-  -enable-* | --enable-*)
-    ac_feature=`echo $ac_option|sed -e 's/-*enable-//' -e 's/=.*//'`
-    # Reject names that are not valid shell variable names.
-    if test -n "`echo $ac_feature| sed 's/[-_a-zA-Z0-9]//g'`"; then
-      { echo "configure: error: $ac_feature: invalid feature name" 1>&2; exit 1; }
-    fi
-    ac_feature=`echo $ac_feature| sed 's/-/_/g'`
-    case "$ac_option" in
-      *=*) ;;
-      *) ac_optarg=yes ;;
-    esac
-    eval "enable_${ac_feature}='$ac_optarg'" ;;
-
-  -exec-prefix | --exec_prefix | --exec-prefix | --exec-prefi \
-  | --exec-pref | --exec-pre | --exec-pr | --exec-p | --exec- \
-  | --exec | --exe | --ex)
-    ac_prev=exec_prefix ;;
-  -exec-prefix=* | --exec_prefix=* | --exec-prefix=* | --exec-prefi=* \
-  | --exec-pref=* | --exec-pre=* | --exec-pr=* | --exec-p=* | --exec-=* \
-  | --exec=* | --exe=* | --ex=*)
-    exec_prefix="$ac_optarg" ;;
-
-  -gas | --gas | --ga | --g)
-    # Obsolete; use --with-gas.
-    with_gas=yes ;;
-
-  -help | --help | --hel | --he)
-    # Omit some internal or obsolete options to make the list less imposing.
-    # This message is too long to be a string in the A/UX 3.1 sh.
-    cat << EOF
-Usage: configure [options] [host]
-Options: [defaults in brackets after descriptions]
-Configuration:
-  --cache-file=FILE       cache test results in FILE
-  --help                  print this message
-  --no-create             do not create output files
-  --quiet, --silent       do not print \`checking...' messages
-  --version               print the version of autoconf that created configure
-Directory and file names:
-  --prefix=PREFIX         install architecture-independent files in PREFIX
-                          [$ac_default_prefix]
-  --exec-prefix=PREFIX    install architecture-dependent files in PREFIX
-                          [same as prefix]
-  --srcdir=DIR            find the sources in DIR [configure dir or ..]
-  --program-prefix=PREFIX prepend PREFIX to installed program names
-  --program-suffix=SUFFIX append SUFFIX to installed program names
-  --program-transform-name=PROGRAM run sed PROGRAM on installed program names
-Host type:
-  --build=BUILD           configure for building on BUILD [BUILD=HOST]
-  --host=HOST             configure for HOST [guessed]
-  --target=TARGET         configure for TARGET [TARGET=HOST]
-Features and packages:
-  --disable-FEATURE       do not include FEATURE (same as --enable-FEATURE=no)
-  --enable-FEATURE[=ARG]  include FEATURE [ARG=yes]
-  --with-PACKAGE[=ARG]    use PACKAGE [ARG=yes]
-  --without-PACKAGE       do not use PACKAGE (same as --with-PACKAGE=no)
-  --x-includes=DIR        X include files are in DIR
-  --x-libraries=DIR       X library files are in DIR
---enable and --with options recognized:$ac_help
-EOF
-    exit 0 ;;
-
-  -host | --host | --hos | --ho)
-    ac_prev=host ;;
-  -host=* | --host=* | --hos=* | --ho=*)
-    host="$ac_optarg" ;;
-
-  -nfp | --nfp | --nf)
-    # Obsolete; use --without-fp.
-    with_fp=no ;;
-
-  -no-create | --no-create | --no-creat | --no-crea | --no-cre \
-  | --no-cr | --no-c)
-    no_create=yes ;;
-
-  -no-recursion | --no-recursion | --no-recursio | --no-recursi \
-  | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r)
-    no_recursion=yes ;;
-
-  -prefix | --prefix | --prefi | --pref | --pre | --pr | --p)
-    ac_prev=prefix ;;
-  -prefix=* | --prefix=* | --prefi=* | --pref=* | --pre=* | --pr=* | --p=*)
-    prefix="$ac_optarg" ;;
-
-  -program-prefix | --program-prefix | --program-prefi | --program-pref \
-  | --program-pre | --program-pr | --program-p)
-    ac_prev=program_prefix ;;
-  -program-prefix=* | --program-prefix=* | --program-prefi=* \
-  | --program-pref=* | --program-pre=* | --program-pr=* | --program-p=*)
-    program_prefix="$ac_optarg" ;;
-
-  -program-suffix | --program-suffix | --program-suffi | --program-suff \
-  | --program-suf | --program-su | --program-s)
-    ac_prev=program_suffix ;;
-  -program-suffix=* | --program-suffix=* | --program-suffi=* \
-  | --program-suff=* | --program-suf=* | --program-su=* | --program-s=*)
-    program_suffix="$ac_optarg" ;;
-
-  -program-transform-name | --program-transform-name \
-  | --program-transform-nam | --program-transform-na \
-  | --program-transform-n | --program-transform- \
-  | --program-transform | --program-transfor \
-  | --program-transfo | --program-transf \
-  | --program-trans | --program-tran \
-  | --progr-tra | --program-tr | --program-t)
-    ac_prev=program_transform_name ;;
-  -program-transform-name=* | --program-transform-name=* \
-  | --program-transform-nam=* | --program-transform-na=* \
-  | --program-transform-n=* | --program-transform-=* \
-  | --program-transform=* | --program-transfor=* \
-  | --program-transfo=* | --program-transf=* \
-  | --program-trans=* | --program-tran=* \
-  | --progr-tra=* | --program-tr=* | --program-t=*)
-    program_transform_name="$ac_optarg" ;;
-
-  -q | -quiet | --quiet | --quie | --qui | --qu | --q \
-  | -silent | --silent | --silen | --sile | --sil)
-    silent=yes ;;
-
-  -site | --site | --sit)
-    ac_prev=site ;;
-  -site=* | --site=* | --sit=*)
-    site="$ac_optarg" ;;
-
-  -srcdir | --srcdir | --srcdi | --srcd | --src | --sr)
-    ac_prev=srcdir ;;
-  -srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=*)
-    srcdir="$ac_optarg" ;;
-
-  -target | --target | --targe | --targ | --tar | --ta | --t)
-    ac_prev=target ;;
-  -target=* | --target=* | --targe=* | --targ=* | --tar=* | --ta=* | --t=*)
-    target="$ac_optarg" ;;
-
-  -v | -verbose | --verbose | --verbos | --verbo | --verb)
-    verbose=yes ;;
-
-  -version | --version | --versio | --versi | --vers)
-    echo "configure generated by autoconf version 2.4"
-    exit 0 ;;
-
-  -with-* | --with-*)
-    ac_package=`echo $ac_option|sed -e 's/-*with-//' -e 's/=.*//'`
-    # Reject names that are not valid shell variable names.
-    if test -n "`echo $ac_package| sed 's/[-_a-zA-Z0-9]//g'`"; then
-      { echo "configure: error: $ac_package: invalid package name" 1>&2; exit 1; }
-    fi
-    ac_package=`echo $ac_package| sed 's/-/_/g'`
-    case "$ac_option" in
-      *=*) ;;
-      *) ac_optarg=yes ;;
-    esac
-    eval "with_${ac_package}='$ac_optarg'" ;;
-
-  -without-* | --without-*)
-    ac_package=`echo $ac_option|sed -e 's/-*without-//'`
-    # Reject names that are not valid shell variable names.
-    if test -n "`echo $ac_package| sed 's/[-a-zA-Z0-9_]//g'`"; then
-      { echo "configure: error: $ac_package: invalid package name" 1>&2; exit 1; }
-    fi
-    ac_package=`echo $ac_package| sed 's/-/_/g'`
-    eval "with_${ac_package}=no" ;;
-
-  --x)
-    # Obsolete; use --with-x.
-    with_x=yes ;;
-
-  -x-includes | --x-includes | --x-include | --x-includ | --x-inclu \
-  | --x-incl | --x-inc | --x-in | --x-i)
-    ac_prev=x_includes ;;
-  -x-includes=* | --x-includes=* | --x-include=* | --x-includ=* | --x-inclu=* \
-  | --x-incl=* | --x-inc=* | --x-in=* | --x-i=*)
-    x_includes="$ac_optarg" ;;
-
-  -x-libraries | --x-libraries | --x-librarie | --x-librari \
-  | --x-librar | --x-libra | --x-libr | --x-lib | --x-li | --x-l)
-    ac_prev=x_libraries ;;
-  -x-libraries=* | --x-libraries=* | --x-librarie=* | --x-librari=* \
-  | --x-librar=* | --x-libra=* | --x-libr=* | --x-lib=* | --x-li=* | --x-l=*)
-    x_libraries="$ac_optarg" ;;
-
-  -*) { echo "configure: error: $ac_option: invalid option; use --help to show usage" 1>&2; exit 1; }
-    ;;
-
-  *) 
-    if test -n "`echo $ac_option| sed 's/[-a-z0-9.]//g'`"; then
-      echo "configure: warning: $ac_option: invalid host type" 1>&2
-    fi
-    if test "x$nonopt" != xNONE; then
-      { echo "configure: error: can only configure for one host and one target at a time" 1>&2; exit 1; }
-    fi
-    nonopt="$ac_option"
-    ;;
-
-  esac
-done
-
-if test -n "$ac_prev"; then
-  { echo "configure: error: missing argument to --`echo $ac_prev | sed 's/_/-/g'`" 1>&2; exit 1; }
-fi
-
-trap 'rm -fr conftest* confdefs* core core.* *.core $ac_clean_files; exit 1' 1 2 15
-
-# File descriptor usage:
-# 0 standard input
-# 1 file creation
-# 2 errors and warnings
-# 3 some systems may open it to /dev/tty
-# 4 used on the Kubota Titan
-# 6 checking for... messages and results
-# 5 compiler messages saved in config.log
-if test "$silent" = yes; then
-  exec 6>/dev/null
-else
-  exec 6>&1
-fi
-exec 5>./config.log
-
-echo "\
-This file contains any messages produced by compilers while
-running configure, to aid debugging if configure makes a mistake.
-" 1>&5
-
-# Strip out --no-create and --no-recursion so they do not pile up.
-# Also quote any args containing shell metacharacters.
-ac_configure_args=
-for ac_arg
-do
-  case "$ac_arg" in
-  -no-create | --no-create | --no-creat | --no-crea | --no-cre \
-  | --no-cr | --no-c) ;;
-  -no-recursion | --no-recursion | --no-recursio | --no-recursi \
-  | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r) ;;
-  *" "*|*"     "*|*[\[\]\~\#\$\^\&\*\(\)\{\}\\\|\;\<\>\?]*)
-  ac_configure_args="$ac_configure_args '$ac_arg'" ;;
-  *) ac_configure_args="$ac_configure_args $ac_arg" ;;
-  esac
-done
-
-# NLS nuisances.
-# Only set LANG and LC_ALL to C if already set.
-# These must not be set unconditionally because not all systems understand
-# e.g. LANG=C (notably SCO).
-if test "${LC_ALL+set}" = set; then LC_ALL=C; export LC_ALL; fi
-if test "${LANG+set}"   = set; then LANG=C;   export LANG;   fi
-
-# confdefs.h avoids OS command line length limits that DEFS can exceed.
-rm -rf conftest* confdefs.h
-# AIX cpp loses on an empty file, so make sure it contains at least a newline.
-echo > confdefs.h
-
-# A filename unique to this package, relative to the directory that
-# configure is in, which we can look for to find out if srcdir is correct.
-ac_unique_file=termcap.h
-
-# Find the source files, if location was not specified.
-if test -z "$srcdir"; then
-  ac_srcdir_defaulted=yes
-  # Try the directory containing this script, then its parent.
-  ac_prog=$0
-  ac_confdir=`echo $ac_prog|sed 's%/[^/][^/]*$%%'`
-  test "x$ac_confdir" = "x$ac_prog" && ac_confdir=.
-  srcdir=$ac_confdir
-  if test ! -r $srcdir/$ac_unique_file; then
-    srcdir=..
-  fi
-else
-  ac_srcdir_defaulted=no
-fi
-if test ! -r $srcdir/$ac_unique_file; then
-  if test "$ac_srcdir_defaulted" = yes; then
-    { echo "configure: error: can not find sources in $ac_confdir or .." 1>&2; exit 1; }
-  else
-    { echo "configure: error: can not find sources in $srcdir" 1>&2; exit 1; }
-  fi
-fi
-srcdir=`echo "${srcdir}" | sed 's%\([^/]\)/*$%\1%'`
-
-# Prefer explicitly selected file to automatically selected ones.
-if test -z "$CONFIG_SITE"; then
-  if test "x$prefix" != xNONE; then
-    CONFIG_SITE="$prefix/share/config.site $prefix/etc/config.site"
-  else
-    CONFIG_SITE="$ac_default_prefix/share/config.site $ac_default_prefix/etc/config.site"
-  fi
-fi
-for ac_site_file in $CONFIG_SITE; do
-  if test -r "$ac_site_file"; then
-    echo "loading site script $ac_site_file"
-    . "$ac_site_file"
-  fi
-done
-
-if test -r "$cache_file"; then
-  echo "loading cache $cache_file"
-  . $cache_file
-else
-  echo "creating cache $cache_file"
-  > $cache_file
-fi
-
-ac_ext=c
-# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options.
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5 2>&5'
-ac_link='${CC-cc} -o conftest $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5 2>&5'
-
-if (echo "testing\c"; echo 1,2,3) | grep c >/dev/null; then
-  # Stardent Vistra SVR4 grep lacks -e, says ghazi@caip.rutgers.edu.
-  if (echo -n testing; echo 1,2,3) | sed s/-n/xn/ | grep xn >/dev/null; then
-    ac_n= ac_c='
-' ac_t='       '
-  else
-    ac_n=-n ac_c= ac_t=
-  fi
-else
-  ac_n= ac_c='\c' ac_t=
-fi
-
-
-
-# Check whether --enable-install-termcap or --disable-install-termcap was given.
-enableval="$enable_install_termcap"
-if test -n "$enableval"; then
-  if test $enableval = yes; then
-   installdata=install-data uninstalldata=uninstall-data
- fi
-fi
-
-
-# Check whether --with-termcap or --without-termcap was given.
-withval="$with_termcap"
-if test -n "$withval"; then
-  termcapfile=$withval
-else
-  termcapfile=/etc/termcap
-fi
-
-
-# Extract the first word of "gcc", so it can be a program name with args.
-set dummy gcc; ac_word=$2
-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
-else
-  if test -n "$CC"; then
-  ac_cv_prog_CC="$CC" # Let the user override the test.
-else
-  IFS="${IFS=  }"; ac_save_ifs="$IFS"; IFS="${IFS}:"
-  for ac_dir in $PATH; do
-    test -z "$ac_dir" && ac_dir=.
-    if test -f $ac_dir/$ac_word; then
-      ac_cv_prog_CC="gcc"
-      break
-    fi
-  done
-  IFS="$ac_save_ifs"
-  test -z "$ac_cv_prog_CC" && ac_cv_prog_CC="cc"
-fi
-fi
-CC="$ac_cv_prog_CC"
-if test -n "$CC"; then
-  echo "$ac_t""$CC" 1>&6
-else
-  echo "$ac_t""no" 1>&6
-fi
-
-
-echo $ac_n "checking whether we are using GNU C""... $ac_c" 1>&6
-if eval "test \"`echo '$''{'ac_cv_prog_gcc'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
-else
-  cat > conftest.c <<EOF
-#ifdef __GNUC__
-  yes;
-#endif
-EOF
-if ${CC-cc} -E conftest.c 2>&5 | egrep yes >/dev/null 2>&1; then
-  ac_cv_prog_gcc=yes
-else
-  ac_cv_prog_gcc=no
-fi
-fi
-echo "$ac_t""$ac_cv_prog_gcc" 1>&6
-if test $ac_cv_prog_gcc = yes; then
-  GCC=yes
-  if test "${CFLAGS+set}" != set; then
-    echo $ac_n "checking whether ${CC-cc} accepts -g""... $ac_c" 1>&6
-if eval "test \"`echo '$''{'ac_cv_prog_gcc_g'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
-else
-  echo 'void f(){}' > conftest.c
-if test -z "`${CC-cc} -g -c conftest.c 2>&1`"; then
-  ac_cv_prog_gcc_g=yes
-else
-  ac_cv_prog_gcc_g=no
-fi
-rm -f conftest*
-
-fi
-    echo "$ac_t""$ac_cv_prog_gcc_g" 1>&6
-    if test $ac_cv_prog_gcc_g = yes; then
-      CFLAGS="-g -O"
-    else
-      CFLAGS="-O"
-    fi
-  fi
-else
-  GCC=
-  test "${CFLAGS+set}" = set || CFLAGS="-g"
-fi
-
-# Extract the first word of "ranlib", so it can be a program name with args.
-set dummy ranlib; ac_word=$2
-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-if eval "test \"`echo '$''{'ac_cv_prog_RANLIB'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
-else
-  if test -n "$RANLIB"; then
-  ac_cv_prog_RANLIB="$RANLIB" # Let the user override the test.
-else
-  IFS="${IFS=  }"; ac_save_ifs="$IFS"; IFS="${IFS}:"
-  for ac_dir in $PATH; do
-    test -z "$ac_dir" && ac_dir=.
-    if test -f $ac_dir/$ac_word; then
-      ac_cv_prog_RANLIB="ranlib"
-      break
-    fi
-  done
-  IFS="$ac_save_ifs"
-  test -z "$ac_cv_prog_RANLIB" && ac_cv_prog_RANLIB=":"
-fi
-fi
-RANLIB="$ac_cv_prog_RANLIB"
-if test -n "$RANLIB"; then
-  echo "$ac_t""$RANLIB" 1>&6
-else
-  echo "$ac_t""no" 1>&6
-fi
-
-ac_aux_dir=
-for ac_dir in $srcdir $srcdir/.. $srcdir/../..; do
-  if test -f $ac_dir/install-sh; then
-    ac_aux_dir=$ac_dir
-    ac_install_sh="$ac_aux_dir/install-sh -c"
-    break
-  elif test -f $ac_dir/install.sh; then
-    ac_aux_dir=$ac_dir
-    ac_install_sh="$ac_aux_dir/install.sh -c"
-    break
-  fi
-done
-if test -z "$ac_aux_dir"; then
-  { echo "configure: error: can not find install-sh or install.sh in $srcdir $srcdir/.. $srcdir/../.." 1>&2; exit 1; }
-fi
-ac_config_guess=$ac_aux_dir/config.guess
-ac_config_sub=$ac_aux_dir/config.sub
-ac_configure=$ac_aux_dir/configure # This should be Cygnus configure.
-
-# Find a good install program.  We prefer a C program (faster),
-# so one script is as good as another.  But avoid the broken or
-# incompatible versions:
-# SysV /etc/install, /usr/sbin/install
-# SunOS /usr/etc/install
-# IRIX /sbin/install
-# AIX /bin/install
-# AFS /usr/afsws/bin/install, which mishandles nonexistent args
-# SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff"
-# ./install, which can be erroneously created by make from ./install.sh.
-echo $ac_n "checking for a BSD compatible install""... $ac_c" 1>&6
-if test -z "$INSTALL"; then
-if eval "test \"`echo '$''{'ac_cv_path_install'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
-else
-    IFS="${IFS=        }"; ac_save_ifs="$IFS"; IFS="${IFS}:"
-  for ac_dir in $PATH; do
-    # Account for people who put trailing slashes in PATH elements.
-    case "$ac_dir/" in
-    /|./|.//|/etc/*|/usr/sbin/*|/usr/etc/*|/sbin/*|/usr/afsws/bin/*|/usr/ucb/*) ;;
-    *)
-      # OSF1 and SCO ODT 3.0 have their own names for install.
-      for ac_prog in ginstall installbsd scoinst install; do
-        if test -f $ac_dir/$ac_prog; then
-         if test $ac_prog = install &&
-            grep dspmsg $ac_dir/$ac_prog >/dev/null 2>&1; then
-           # AIX install.  It has an incompatible calling convention.
-           # OSF/1 installbsd also uses dspmsg, but is usable.
-           :
-         else
-           ac_cv_path_install="$ac_dir/$ac_prog -c"
-           break 2
-         fi
-       fi
-      done
-      ;;
-    esac
-  done
-  IFS="$ac_save_ifs"
-  # As a last resort, use the slow shell script.
-  test -z "$ac_cv_path_install" && ac_cv_path_install="$ac_install_sh"
-fi
-  INSTALL="$ac_cv_path_install"
-fi
-echo "$ac_t""$INSTALL" 1>&6
-
-# Use test -z because SunOS4 sh mishandles braces in ${var-val}.
-# It thinks the first close brace ends the variable substitution.
-test -z "$INSTALL_PROGRAM" && INSTALL_PROGRAM='${INSTALL}'
-
-test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
-
-echo $ac_n "checking how to run the C preprocessor""... $ac_c" 1>&6
-# On Suns, sometimes $CPP names a directory.
-if test -n "$CPP" && test -d "$CPP"; then
-  CPP=
-fi
-if test -z "$CPP"; then
-if eval "test \"`echo '$''{'ac_cv_prog_CPP'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
-else
-    # This must be in double quotes, not single quotes, because CPP may get
-  # substituted into the Makefile and "${CC-cc}" will confuse make.
-  CPP="${CC-cc} -E"
-  # On the NeXT, cc -E runs the code through the compiler's parser,
-  # not just through cpp.
-  cat > conftest.$ac_ext <<EOF
-#line 612 "configure"
-#include "confdefs.h"
-#include <assert.h>
-Syntax Error
-EOF
-eval "$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-ac_err=`grep -v '^ *+' conftest.out`
-if test -z "$ac_err"; then
-  :
-else
-  echo "$ac_err" >&5
-  rm -rf conftest*
-  CPP="${CC-cc} -E -traditional-cpp"
-  cat > conftest.$ac_ext <<EOF
-#line 626 "configure"
-#include "confdefs.h"
-#include <assert.h>
-Syntax Error
-EOF
-eval "$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-ac_err=`grep -v '^ *+' conftest.out`
-if test -z "$ac_err"; then
-  :
-else
-  echo "$ac_err" >&5
-  rm -rf conftest*
-  CPP=/lib/cpp
-fi
-rm -f conftest*
-fi
-rm -f conftest*
-  ac_cv_prog_CPP="$CPP"
-fi
-  CPP="$ac_cv_prog_CPP"
-else
-  ac_cv_prog_CPP="$CPP"
-fi
-echo "$ac_t""$CPP" 1>&6
-
-for ac_hdr in string.h unistd.h
-do
-ac_safe=`echo "$ac_hdr" | tr './\055' '___'`
-echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
-if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
-else
-  cat > conftest.$ac_ext <<EOF
-#line 659 "configure"
-#include "confdefs.h"
-#include <$ac_hdr>
-EOF
-eval "$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-ac_err=`grep -v '^ *+' conftest.out`
-if test -z "$ac_err"; then
-  rm -rf conftest*
-  eval "ac_cv_header_$ac_safe=yes"
-else
-  echo "$ac_err" >&5
-  rm -rf conftest*
-  eval "ac_cv_header_$ac_safe=no"
-fi
-rm -f conftest*
-fi
-if eval "test \"`echo '$ac_cv_header_'$ac_safe`\" = yes"; then
-  echo "$ac_t""yes" 1>&6
-    ac_tr_hdr=HAVE_`echo $ac_hdr | tr '[a-z]./\055' '[A-Z]___'`
-  cat >> confdefs.h <<EOF
-#define $ac_tr_hdr 1
-EOF
-else
-  echo "$ac_t""no" 1>&6
-fi
-done
-
-# If we cannot run a trivial program, we must be cross compiling.
-echo $ac_n "checking whether cross-compiling""... $ac_c" 1>&6
-if eval "test \"`echo '$''{'ac_cv_c_cross'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
-else
-  if test "$cross_compiling" = yes; then
-  ac_cv_c_cross=yes
-else
-cat > conftest.$ac_ext <<EOF
-#line 696 "configure"
-#include "confdefs.h"
-main(){return(0);}
-EOF
-eval $ac_link
-if test -s conftest && (./conftest; exit) 2>/dev/null; then
-  ac_cv_c_cross=no
-else
-  ac_cv_c_cross=yes
-fi
-fi
-rm -fr conftest*
-fi
-cross_compiling=$ac_cv_c_cross
-echo "$ac_t""$ac_cv_c_cross" 1>&6
-
-echo $ac_n "checking for ANSI C header files""... $ac_c" 1>&6
-if eval "test \"`echo '$''{'ac_cv_header_stdc'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
-else
-  cat > conftest.$ac_ext <<EOF
-#line 717 "configure"
-#include "confdefs.h"
-#include <stdlib.h>
-#include <stdarg.h>
-#include <string.h>
-#include <float.h>
-EOF
-eval "$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-ac_err=`grep -v '^ *+' conftest.out`
-if test -z "$ac_err"; then
-  rm -rf conftest*
-  ac_cv_header_stdc=yes
-else
-  echo "$ac_err" >&5
-  rm -rf conftest*
-  ac_cv_header_stdc=no
-fi
-rm -f conftest*
-
-if test $ac_cv_header_stdc = yes; then
-  # SunOS 4.x string.h does not declare mem*, contrary to ANSI.
-cat > conftest.$ac_ext <<EOF
-#line 739 "configure"
-#include "confdefs.h"
-#include <string.h>
-EOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  egrep "memchr" >/dev/null 2>&1; then
-  :
-else
-  rm -rf conftest*
-  ac_cv_header_stdc=no
-fi
-rm -f conftest*
-
-fi
-
-if test $ac_cv_header_stdc = yes; then
-  # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI.
-cat > conftest.$ac_ext <<EOF
-#line 757 "configure"
-#include "confdefs.h"
-#include <stdlib.h>
-EOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  egrep "free" >/dev/null 2>&1; then
-  :
-else
-  rm -rf conftest*
-  ac_cv_header_stdc=no
-fi
-rm -f conftest*
-
-fi
-
-if test $ac_cv_header_stdc = yes; then
-  # /bin/cc in Irix-4.0.5 gets non-ANSI ctype macros unless using -ansi.
-if test "$cross_compiling" = yes; then
-  ac_cv_header_stdc=no
-else
-cat > conftest.$ac_ext <<EOF
-#line 778 "configure"
-#include "confdefs.h"
-#include <ctype.h>
-#define ISLOWER(c) ('a' <= (c) && (c) <= 'z')
-#define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c))
-#define XOR(e, f) (((e) && !(f)) || (!(e) && (f)))
-int main () { int i; for (i = 0; i < 256; i++)
-if (XOR (islower (i), ISLOWER (i)) || toupper (i) != TOUPPER (i)) exit(2);
-exit (0); }
-
-EOF
-eval $ac_link
-if test -s conftest && (./conftest; exit) 2>/dev/null; then
-  :
-else
-  ac_cv_header_stdc=no
-fi
-fi
-rm -fr conftest*
-fi
-fi
-echo "$ac_t""$ac_cv_header_stdc" 1>&6
-if test $ac_cv_header_stdc = yes; then
-  cat >> confdefs.h <<\EOF
-#define STDC_HEADERS 1
-EOF
-
-fi
-
-
-trap '' 1 2 15
-cat > confcache <<\EOF
-# This file is a shell script that caches the results of configure
-# tests run on this system so they can be shared between configure
-# scripts and configure runs.  It is not useful on other systems.
-# If it contains results you don't want to keep, you may remove or edit it.
-#
-# By default, configure uses ./config.cache as the cache file,
-# creating it if it does not exist already.  You can give configure
-# the --cache-file=FILE option to use a different cache file; that is
-# what configure does when it calls configure scripts in
-# subdirectories, so they share the cache.
-# Giving --cache-file=/dev/null disables caching, for debugging configure.
-# config.status only pays attention to the cache file if you give it the
-# --recheck option to rerun configure.
-#
-EOF
-# Ultrix sh set writes to stderr and can't be redirected directly,
-# and sets the high bit in the cache file unless we assign to the vars.
-(set) 2>&1 |
-  sed -n "s/^\([a-zA-Z0-9_]*_cv_[a-zA-Z0-9_]*\)=\(.*\)/\1=\${\1='\2'}/p" \
-  >> confcache
-if cmp -s $cache_file confcache; then
-  :
-else
-  if test -w $cache_file; then
-    echo "updating cache $cache_file"
-    cat confcache > $cache_file
-  else
-    echo "not updating unwritable cache $cache_file"
-  fi
-fi
-rm -f confcache
-
-trap 'rm -fr conftest* confdefs* core core.* *.core $ac_clean_files; exit 1' 1 2 15
-
-test "x$prefix" = xNONE && prefix=$ac_default_prefix
-# Let make expand exec_prefix.
-test "x$exec_prefix" = xNONE && exec_prefix='${prefix}'
-
-# Any assignment to VPATH causes Sun make to only execute
-# the first set of double-colon rules, so remove it if not needed.
-# If there is a colon in the path, we need to keep it.
-if test "x$srcdir" = x.; then
-  ac_vpsub='/^[        ]*VPATH[        ]*=[^:]*$/d'
-fi
-
-trap 'rm -f $CONFIG_STATUS conftest*; exit 1' 1 2 15
-
-# Transform confdefs.h into DEFS.
-# Protect against shell expansion while executing Makefile rules.
-# Protect against Makefile macro expansion.
-cat > conftest.defs <<\EOF
-s%#define \([A-Za-z_][A-Za-z0-9_]*\) \(.*\)%-D\1=\2%g
-s%[    `~#$^&*(){}\\|;'"<>?]%\\&%g
-s%\[%\\&%g
-s%\]%\\&%g
-s%\$%$$%g
-EOF
-DEFS=`sed -f conftest.defs confdefs.h | tr '\012' ' '`
-rm -f conftest.defs
-
-
-# Without the "./", some shells look in PATH for config.status.
-: ${CONFIG_STATUS=./config.status}
-
-echo creating $CONFIG_STATUS
-rm -f $CONFIG_STATUS
-cat > $CONFIG_STATUS <<EOF
-#! /bin/sh
-# Generated automatically by configure.
-# Run this file to recreate the current configuration.
-# This directory was configured as follows,
-# on host `(hostname || uname -n) 2>/dev/null | sed 1q`:
-#
-# $0 $ac_configure_args
-#
-# Compiler output produced by configure, useful for debugging
-# configure, is in ./config.log if it exists.
-
-ac_cs_usage="Usage: $CONFIG_STATUS [--recheck] [--version] [--help]"
-for ac_option
-do
-  case "\$ac_option" in
-  -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r)
-    echo "running \${CONFIG_SHELL-/bin/sh} $0 $ac_configure_args --no-create --no-recursion"
-    exec \${CONFIG_SHELL-/bin/sh} $0 $ac_configure_args --no-create --no-recursion ;;
-  -version | --version | --versio | --versi | --vers | --ver | --ve | --v)
-    echo "$CONFIG_STATUS generated by autoconf version 2.4"
-    exit 0 ;;
-  -help | --help | --hel | --he | --h)
-    echo "\$ac_cs_usage"; exit 0 ;;
-  *) echo "\$ac_cs_usage"; exit 1 ;;
-  esac
-done
-
-ac_given_srcdir=$srcdir
-ac_given_INSTALL="$INSTALL"
-
-trap 'rm -fr `echo "Makefile" | sed "s/:[^ ]*//g"` conftest*; exit 1' 1 2 15
-
-# Protect against being on the right side of a sed subst in config.status. 
-sed 's/%@/@@/; s/@%/@@/; s/%g$/@g/; /@g$/s/[\\\\&%]/\\\\&/g; 
- s/@@/%@/; s/@@/@%/; s/@g$/%g/' > conftest.subs <<\CEOF
-$ac_vpsub
-$extrasub
-s%@CFLAGS@%$CFLAGS%g
-s%@CPPFLAGS@%$CPPFLAGS%g
-s%@CXXFLAGS@%$CXXFLAGS%g
-s%@DEFS@%$DEFS%g
-s%@LDFLAGS@%$LDFLAGS%g
-s%@LIBS@%$LIBS%g
-s%@exec_prefix@%$exec_prefix%g
-s%@prefix@%$prefix%g
-s%@program_transform_name@%$program_transform_name%g
-s%@installdata@%$installdata%g
-s%@uninstalldata@%$uninstalldata%g
-s%@termcapfile@%$termcapfile%g
-s%@CC@%$CC%g
-s%@RANLIB@%$RANLIB%g
-s%@INSTALL_PROGRAM@%$INSTALL_PROGRAM%g
-s%@INSTALL_DATA@%$INSTALL_DATA%g
-s%@CPP@%$CPP%g
-
-CEOF
-EOF
-cat >> $CONFIG_STATUS <<EOF
-
-CONFIG_FILES=\${CONFIG_FILES-"Makefile"}
-EOF
-cat >> $CONFIG_STATUS <<\EOF
-for ac_file in .. $CONFIG_FILES; do if test "x$ac_file" != x..; then
-  # Support "outfile[:infile]", defaulting infile="outfile.in".
-  case "$ac_file" in
-  *:*) ac_file_in=`echo "$ac_file"|sed 's%.*:%%'`
-       ac_file=`echo "$ac_file"|sed 's%:.*%%'` ;;
-  *) ac_file_in="${ac_file}.in" ;;
-  esac
-
-  # Adjust relative srcdir, etc. for subdirectories.
-
-  # Remove last slash and all that follows it.  Not all systems have dirname.
-  ac_dir=`echo $ac_file|sed 's%/[^/][^/]*$%%'`
-  if test "$ac_dir" != "$ac_file" && test "$ac_dir" != .; then
-    # The file is in a subdirectory.
-    test ! -d "$ac_dir" && mkdir "$ac_dir"
-    ac_dir_suffix="/`echo $ac_dir|sed 's%^\./%%'`"
-    # A "../" for each directory in $ac_dir_suffix.
-    ac_dots=`echo $ac_dir_suffix|sed 's%/[^/]*%../%g'`
-  else
-    ac_dir_suffix= ac_dots=
-  fi
-
-  case "$ac_given_srcdir" in
-  .)  srcdir=.
-      if test -z "$ac_dots"; then top_srcdir=.
-      else top_srcdir=`echo $ac_dots|sed 's%/$%%'`; fi ;;
-  /*) srcdir="$ac_given_srcdir$ac_dir_suffix"; top_srcdir="$ac_given_srcdir" ;;
-  *) # Relative path.
-    srcdir="$ac_dots$ac_given_srcdir$ac_dir_suffix"
-    top_srcdir="$ac_dots$ac_given_srcdir" ;;
-  esac
-
-  case "$ac_given_INSTALL" in
-  [/$]*) INSTALL="$ac_given_INSTALL" ;;
-  *) INSTALL="$ac_dots$ac_given_INSTALL" ;;
-  esac
-  echo creating "$ac_file"
-  rm -f "$ac_file"
-  configure_input="Generated automatically from `echo $ac_file_in|sed 's%.*/%%'` by configure."
-  case "$ac_file" in
-  *Makefile*) ac_comsub="1i\\
-# $configure_input" ;;
-  *) ac_comsub= ;;
-  esac
-  sed -e "$ac_comsub
-s%@configure_input@%$configure_input%g
-s%@srcdir@%$srcdir%g
-s%@top_srcdir@%$top_srcdir%g
-s%@INSTALL@%$INSTALL%g
-" -f conftest.subs $ac_given_srcdir/$ac_file_in > $ac_file
-fi; done
-rm -f conftest.subs
-
-
-
-exit 0
-EOF
-chmod +x $CONFIG_STATUS
-rm -fr confdefs* $ac_clean_files
-test "$no_create" = yes || ${CONFIG_SHELL-/bin/sh} $CONFIG_STATUS || exit 1
-
diff --git a/lib/termcap/grot/configure.in b/lib/termcap/grot/configure.in
deleted file mode 100644 (file)
index f3f944f..0000000
+++ /dev/null
@@ -1,23 +0,0 @@
-dnl Process this file with autoconf to produce a configure script.
-AC_INIT(termcap.h)
-
-AC_ARG_ENABLE(install-termcap,
-[  --enable-install-termcap install the termcap data file],
-[if test $enableval = yes; then
-   installdata=install-data uninstalldata=uninstall-data
- fi])
-AC_SUBST(installdata)dnl
-AC_SUBST(uninstalldata)dnl
-
-AC_ARG_WITH(termcap,
-[  --with-termcap=FILE     use data file FILE instead of /etc/termcap],
-termcapfile=$withval, termcapfile=/etc/termcap)
-AC_SUBST(termcapfile)dnl
-
-AC_PROG_CC
-AC_PROG_RANLIB
-AC_PROG_INSTALL
-AC_HAVE_HEADERS(string.h unistd.h)
-AC_STDC_HEADERS
-
-AC_OUTPUT(Makefile)
diff --git a/lib/termcap/grot/termcap.info b/lib/termcap/grot/termcap.info
deleted file mode 100644 (file)
index f663195..0000000
+++ /dev/null
@@ -1,80 +0,0 @@
-This is Info file ./termcap.info, produced by Makeinfo-1.55 from the
-input file ./termcap.texi.
-
-   This file documents the termcap library of the GNU system.
-
-   Copyright (C) 1988 Free Software Foundation, Inc.
-
-   Permission is granted to make and distribute verbatim copies of this
-manual provided the copyright notice and this permission notice are
-preserved on all copies.
-
-   Permission is granted to copy and distribute modified versions of
-this manual under the conditions for verbatim copying, provided that
-the entire resulting derived work is distributed under the terms of a
-permission notice identical to this one.
-
-   Permission is granted to copy and distribute translations of this
-manual into another language, under the above conditions for modified
-versions, except that this permission notice may be stated in a
-translation approved by the Foundation.
-
-\1f
-Indirect:
-termcap.info-1: 874
-termcap.info-2: 47411
-termcap.info-3: 90390
-termcap.info-4: 138827
-\1f
-Tag Table:
-(Indirect)
-Node: Top\7f874
-Node: Introduction\7f4105
-Node: Library\7f5832
-Node: Preparation\7f6851
-Node: Find\7f8034
-Node: Interrogate\7f11492
-Node: Initialize\7f16800
-Node: Padding\7f18440
-Node: Why Pad\7f19146
-Node: Not Enough\7f20768
-Node: Describe Padding\7f23336
-Node: Output Padding\7f24826
-Node: Parameters\7f28441
-Node: Encode Parameters\7f30101
-Node: Using Parameters\7f36185
-Node: tparam\7f36780
-Node: tgoto\7f38806
-Node: Data Base\7f41361
-Node: Format\7f42257
-Node: Capability Format\7f44346
-Node: Naming\7f47411
-Node: Inheriting\7f51980
-Node: Changing\7f54224
-Node: Capabilities\7f55388
-Node: Basic\7f58127
-Node: Screen Size\7f62180
-Node: Cursor Motion\7f63920
-Node: Wrapping\7f74062
-Node: Scrolling\7f77091
-Node: Windows\7f82980
-Node: Clearing\7f83714
-Node: Insdel Line\7f85478
-Node: Insdel Char\7f90390
-Node: Standout\7f100375
-Node: Underlining\7f109433
-Node: Cursor Visibility\7f111852
-Node: Bell\7f112600
-Node: Keypad\7f113149
-Node: Meta Key\7f117864
-Node: Initialization\7f118818
-Node: Pad Specs\7f121369
-Node: Status Line\7f123422
-Node: Half-Line\7f125306
-Node: Printer\7f126108
-Node: Summary\7f127787
-Node: Var Index\7f138114
-Node: Cap Index\7f138827
-Node: Index\7f145991
-\1f
-End Tag Table
diff --git a/lib/termcap/grot/termcap.info-1 b/lib/termcap/grot/termcap.info-1
deleted file mode 100644 (file)
index a5b5da0..0000000
+++ /dev/null
@@ -1,1114 +0,0 @@
-This is Info file ./termcap.info, produced by Makeinfo-1.55 from the
-input file ./termcap.texi.
-
-   This file documents the termcap library of the GNU system.
-
-   Copyright (C) 1988 Free Software Foundation, Inc.
-
-   Permission is granted to make and distribute verbatim copies of this
-manual provided the copyright notice and this permission notice are
-preserved on all copies.
-
-   Permission is granted to copy and distribute modified versions of
-this manual under the conditions for verbatim copying, provided that
-the entire resulting derived work is distributed under the terms of a
-permission notice identical to this one.
-
-   Permission is granted to copy and distribute translations of this
-manual into another language, under the above conditions for modified
-versions, except that this permission notice may be stated in a
-translation approved by the Foundation.
-
-\1f
-File: termcap.info,  Node: Top,  Next: Introduction,  Prev: (dir),  Up: (dir)
-
-* Menu:
-
-* Introduction::  What is termcap?  Why this manual?
-* Library::     The termcap library functions.
-* Data Base::   What terminal descriptions in `/etc/termcap' look like.
-* Capabilities::  Definitions of the individual terminal capabilities:
-                 how to write them in descriptions, and how to use
-                 their values to do display updating.
-* Summary::     Brief table of capability names and their meanings.
-* Var Index::   Index of C functions and variables.
-* Cap Index::   Index of termcap capabilities.
-* Index::       Concept index.
-
- -- The Detailed Node Listing --
-
-The Termcap Library
-
-* Preparation::  Preparing to use the termcap library.
-* Find::        Finding the description of the terminal being used.
-* Interrogate::  Interrogating the description for particular capabilities.
-* Initialize::  Initialization for output using termcap.
-* Padding::     Outputting padding.
-* Parameters::  Encoding parameters such as cursor positions.
-
-Padding
-
-* Why Pad::     Explanation of padding.
-* Not Enough::  When there is not enough padding.
-* Describe Padding::  The data base says how much padding a terminal needs.
-* Output Padding::    Using `tputs' to output the needed padding.
-
-Filling In Parameters
-
-* Encode Parameters::  The language for encoding parameters.
-* Using Parameters::   Outputting a string command with parameters.
-
-Sending Display Commands with Parameters
-
-* tparam::      The general case, for GNU termcap only.
-* tgoto::       The special case of cursor motion.
-
-The Format of the Data Base
-
-* Format::      Overall format of a terminal description.
-* Capability Format::  Format of capabilities within a description.
-* Naming::      Naming conventions for terminal types.
-* Inheriting::  Inheriting part of a description from
-a related terminal type.
-* Changing::    When changes in the data base take effect.
-
-Definitions of the Terminal Capabilities
-
-* Basic::       Basic characteristics.
-* Screen Size::  Screen size, and what happens when it changes.
-* Cursor Motion::  Various ways to move the cursor.
-* Wrapping::    What happens if you write a character in the last column.
-* Scrolling::   Pushing text up and down on the screen.
-* Windows::     Limiting the part of the window that output affects.
-* Clearing::    Erasing one or many lines.
-* Insdel Line::  Making new blank lines in mid-screen; deleting lines.
-* Insdel Char::  Inserting and deleting characters within a line.
-* Standout::    Highlighting some of the text.
-* Underlining::  Underlining some of the text.
-* Cursor Visibility::  Making the cursor more or less easy to spot.
-* Bell::        Attracts user's attention; not localized on the screen.
-* Keypad::      Recognizing when function keys or arrows are typed.
-* Meta Key::    META acts like an extra shift key.
-* Initialization::  Commands used to initialize or reset the terminal.
-* Pad Specs::   Info for the kernel on how much padding is needed.
-* Status Line::  A status line displays "background" information.
-* Half-Line::   Moving by half-lines, for superscripts and subscripts.
-* Printer::     Controlling auxiliary printers of display terminals.
-
-\1f
-File: termcap.info,  Node: Introduction,  Next: Library,  Prev: Top,  Up: Top
-
-Introduction
-************
-
-   "Termcap" is a library and data base that enables programs to use
-display terminals in a terminal-independent manner.  It originated in
-Berkeley Unix.
-
-   The termcap data base describes the capabilities of hundreds of
-different display terminals in great detail.  Some examples of the
-information recorded for a terminal could include how many columns wide
-it is, what string to send to move the cursor to an arbitrary position
-(including how to encode the row and column numbers), how to scroll the
-screen up one or several lines, and how much padding is needed for such
-a scrolling operation.
-
-   The termcap library is provided for easy access this data base in
-programs that want to do terminal-independent character-based display
-output.
-
-   This manual describes the GNU version of the termcap library, which
-has some extensions over the Unix version.  All the extensions are
-identified as such, so this manual also tells you how to use the Unix
-termcap.
-
-   The GNU version of the termcap library is available free as source
-code, for use in free programs, and runs on Unix and VMS systems (at
-least).  You can find it in the GNU Emacs distribution in the files
-`termcap.c' and `tparam.c'.
-
-   This manual was written for the GNU project, whose goal is to
-develop a complete free operating system upward-compatible with Unix
-for user programs.  The project is approximately two thirds complete.
-For more information on the GNU project, including the GNU Emacs editor
-and the mostly-portable optimizing C compiler, send one dollar to
-
-     Free Software Foundation
-     675 Mass Ave
-     Cambridge, MA 02139
-
-\1f
-File: termcap.info,  Node: Library,  Next: Data Base,  Prev: Introduction,  Up: Top
-
-The Termcap Library
-*******************
-
-   The termcap library is the application programmer's interface to the
-termcap data base.  It contains functions for the following purposes:
-
-   * Finding the description of the user's terminal type (`tgetent').
-
-   * Interrogating the description for information on various topics
-     (`tgetnum', `tgetflag', `tgetstr').
-
-   * Computing and performing padding (`tputs').
-
-   * Encoding numeric parameters such as cursor positions into the
-     terminal-specific form required for display commands (`tparam',
-     `tgoto').
-
-* Menu:
-
-* Preparation::  Preparing to use the termcap library.
-* Find::        Finding the description of the terminal being used.
-* Interrogate::  Interrogating the description for particular capabilities.
-* Initialize::  Initialization for output using termcap.
-* Padding::     Outputting padding.
-* Parameters::  Encoding parameters such as cursor positions.
-
-\1f
-File: termcap.info,  Node: Preparation,  Next: Find,  Up: Library
-
-Preparing to Use the Termcap Library
-====================================
-
-   To use the termcap library in a program, you need two kinds of
-preparation:
-
-   * The compiler needs declarations of the functions and variables in
-     the library.
-
-     On GNU systems, it suffices to include the header file `termcap.h'
-     in each source file that uses these functions and variables.
-
-     On Unix systems, there is often no such header file.  Then you must
-     explictly declare the variables as external.  You can do likewise
-     for the functions, or let them be implicitly declared and cast
-     their values from type `int' to the appropriate type.
-
-     We illustrate the declarations of the individual termcap library
-     functions with ANSI C prototypes because they show how to pass the
-     arguments.  If you are not using the GNU C compiler, you probably
-     cannot use function prototypes, so omit the argument types and
-     names from your declarations.
-
-   * The linker needs to search the library.  Usually either
-     `-ltermcap' or `-ltermlib' as an argument when linking will do
-     this.
-
-\1f
-File: termcap.info,  Node: Find,  Next: Interrogate,  Prev: Preparation,  Up: Library
-
-Finding a Terminal Description: `tgetent'
-=========================================
-
-   An application program that is going to use termcap must first look
-up the description of the terminal type in use.  This is done by calling
-`tgetent', whose declaration in ANSI Standard C looks like:
-
-     int tgetent (char *BUFFER, char *TERMTYPE);
-
-This function finds the description and remembers it internally so that
-you can interrogate it about specific terminal capabilities (*note
-Interrogate::.).
-
-   The argument TERMTYPE is a string which is the name for the type of
-terminal to look up.  Usually you would obtain this from the environment
-variable `TERM' using `getenv ("TERM")'.
-
-   If you are using the GNU version of termcap, you can alternatively
-ask `tgetent' to allocate enough space.  Pass a null pointer for
-BUFFER, and `tgetent' itself allocates the storage using `malloc'.
-There is no way to get the address that was allocated, and you
-shouldn't try to free the storage.
-
-   With the Unix version of termcap, you must allocate space for the
-description yourself and pass the address of the space as the argument
-BUFFER.  There is no way you can tell how much space is needed, so the
-convention is to allocate a buffer 2048 characters long and assume that
-is enough.  (Formerly the convention was to allocate 1024 characters and
-assume that was enough.  But one day, for one kind of terminal, that was
-not enough.)
-
-   No matter how the space to store the description has been obtained,
-termcap records its address internally for use when you later
-interrogate the description with `tgetnum', `tgetstr' or `tgetflag'.  If
-the buffer was allocated by termcap, it will be freed by termcap too if
-you call `tgetent' again.  If the buffer was provided by you, you must
-make sure that its contents remain unchanged for as long as you still
-plan to interrogate the description.
-
-   The return value of `tgetent' is -1 if there is some difficulty
-accessing the data base of terminal types, 0 if the data base is
-accessible but the specified type is not defined in it, and some other
-value otherwise.
-
-   Here is how you might use the function `tgetent':
-
-     #ifdef unix
-     static char term_buffer[2048];
-     #else
-     #define term_buffer 0
-     #endif
-     
-     init_terminal_data ()
-     {
-       char *termtype = getenv ("TERM");
-       int success;
-     
-       if (termtype == 0)
-         fatal ("Specify a terminal type with `setenv TERM <yourtype>'.\n");
-     
-       success = tgetent (term_buffer, termtype);
-       if (success < 0)
-         fatal ("Could not access the termcap data base.\n");
-       if (success == 0)
-         fatal ("Terminal type `%s' is not defined.\n", termtype);
-     }
-
-Here we assume the function `fatal' prints an error message and exits.
-
-   If the environment variable `TERMCAP' is defined, its value is used
-to override the terminal type data base.  The function `tgetent' checks
-the value of `TERMCAP' automatically.  If the value starts with `/'
-then it is taken as a file name to use as the data base file, instead
-of `/etc/termcap' which is the standard data base.  If the value does
-not start with `/' then it is itself used as the terminal description,
-provided that the terminal type TERMTYPE is among the types it claims
-to apply to.  *Note Data Base::, for information on the format of a
-terminal description.
-
-\1f
-File: termcap.info,  Node: Interrogate,  Next: Initialize,  Prev: Find,  Up: Library
-
-Interrogating the Terminal Description
-======================================
-
-   Each piece of information recorded in a terminal description is
-called a "capability".  Each defined terminal capability has a
-two-letter code name and a specific meaning.  For example, the number
-of columns is named `co'.  *Note Capabilities::, for definitions of all
-the standard capability names.
-
-   Once you have found the proper terminal description with `tgetent'
-(*note Find::.), your application program must "interrogate" it for
-various terminal capabilities.  You must specify the two-letter code of
-the capability whose value you seek.
-
-   Capability values can be numeric, boolean (capability is either
-present or absent) or strings.  Any particular capability always has
-the same value type; for example, `co' always has a numeric value,
-while `am' (automatic wrap at margin) is always a flag, and `cm'
-(cursor motion command) always has a string value.  The documentation
-of each capability says which type of value it has.
-
-   There are three functions to use to get the value of a capability,
-depending on the type of value the capability has.  Here are their
-declarations in ANSI C:
-
-     int tgetnum (char *NAME);
-     int tgetflag (char *NAME);
-     char *tgetstr (char *NAME, char **AREA);
-
-`tgetnum'
-     Use `tgetnum' to get a capability value that is numeric.  The
-     argument NAME is the two-letter code name of the capability.  If
-     the capability is present, `tgetnum' returns the numeric value
-     (which is nonnegative).  If the capability is not mentioned in the
-     terminal description, `tgetnum' returns -1.
-
-`tgetflag'
-     Use `tgetflag' to get a boolean value.  If the capability NAME is
-     present in the terminal description, `tgetflag' returns 1;
-     otherwise, it returns 0.
-
-`tgetstr'
-     Use `tgetstr' to get a string value.  It returns a pointer to a
-     string which is the capability value, or a null pointer if the
-     capability is not present in the terminal description.
-
-     There are two ways `tgetstr' can find space to store the string
-     value:
-
-        * You can ask `tgetstr' to allocate the space.  Pass a null
-          pointer for the argument AREA, and `tgetstr' will use
-          `malloc' to allocate storage big enough for the value.
-          Termcap will never free this storage or refer to it again; you
-          should free it when you are finished with it.
-
-          This method is more robust, since there is no need to guess
-          how much space is needed.  But it is supported only by the GNU
-          termcap library.
-
-        * You can provide the space.  Provide for the argument AREA the
-          address of a pointer variable of type `char *'.  Before
-          calling `tgetstr', initialize the variable to point at
-          available space.  Then `tgetstr' will store the string value
-          in that space and will increment the pointer variable to
-          point after the space that has been used.  You can use the
-          same pointer variable for many calls to `tgetstr'.
-
-          There is no way to determine how much space is needed for a
-          single string, and no way for you to prevent or handle
-          overflow of the area you have provided.  However, you can be
-          sure that the total size of all the string values you will
-          obtain from the terminal description is no greater than the
-          size of the description (unless you get the same capability
-          twice).  You can determine that size with `strlen' on the
-          buffer you provided to `tgetent'.  See below for an example.
-
-          Providing the space yourself is the only method supported by
-          the Unix version of termcap.
-
-   Note that you do not have to specify a terminal type or terminal
-description for the interrogation functions.  They automatically use the
-description found by the most recent call to `tgetent'.
-
-   Here is an example of interrogating a terminal description for
-various capabilities, with conditionals to select between the Unix and
-GNU methods of providing buffer space.
-
-     char *tgetstr ();
-     
-     char *cl_string, *cm_string;
-     int height;
-     int width;
-     int auto_wrap;
-     
-     char PC;   /* For tputs.  */
-     char *BC;  /* For tgoto.  */
-     char *UP;
-     
-     interrogate_terminal ()
-     {
-     #ifdef UNIX
-       /* Here we assume that an explicit term_buffer
-          was provided to tgetent.  */
-       char *buffer
-         = (char *) malloc (strlen (term_buffer));
-     #define BUFFADDR &buffer
-     #else
-     #define BUFFADDR 0
-     #endif
-     
-       char *temp;
-     
-       /* Extract information we will use.  */
-       cl_string = tgetstr ("cl", BUFFADDR);
-       cm_string = tgetstr ("cm", BUFFADDR);
-       auto_wrap = tgetflag ("am");
-       height = tgetnum ("li");
-       width = tgetnum ("co");
-     
-       /* Extract information that termcap functions use.  */
-       temp = tgetstr ("pc", BUFFADDR);
-       PC = temp ? *temp : 0;
-       BC = tgetstr ("le", BUFFADDR);
-       UP = tgetstr ("up", BUFFADDR);
-     }
-
-*Note Padding::, for information on the variable `PC'.  *Note Using
-Parameters::, for information on `UP' and `BC'.
-
-\1f
-File: termcap.info,  Node: Initialize,  Next: Padding,  Prev: Interrogate,  Up: Library
-
-Initialization for Use of Termcap
-=================================
-
-   Before starting to output commands to a terminal using termcap, an
-application program should do two things:
-
-   * Initialize various global variables which termcap library output
-     functions refer to.  These include `PC' and `ospeed' for padding
-     (*note Output Padding::.) and `UP' and `BC' for cursor motion
-     (*note tgoto::.).
-
-   * Tell the kernel to turn off alteration and padding of
-     horizontal-tab characters sent to the terminal.
-
-   To turn off output processing in Berkeley Unix you would use `ioctl'
-with code `TIOCLSET' to set the bit named `LLITOUT', and clear the bits
-`ANYDELAY' using `TIOCSETN'.  In POSIX or System V, you must clear the
-bit named `OPOST'.  Refer to the system documentation for details.
-
-   If you do not set the terminal flags properly, some older terminals
-will not work.  This is because their commands may contain the
-characters that normally signify newline, carriage return and
-horizontal tab--characters which the kernel thinks it ought to modify
-before output.
-
-   When you change the kernel's terminal flags, you must arrange to
-restore them to their normal state when your program exits.  This
-implies that the program must catch fatal signals such as `SIGQUIT' and
-`SIGINT' and restore the old terminal flags before actually terminating.
-
-   Modern terminals' commands do not use these special characters, so
-if you do not care about problems with old terminals, you can leave the
-kernel's terminal flags unaltered.
-
-\1f
-File: termcap.info,  Node: Padding,  Next: Parameters,  Prev: Initialize,  Up: Library
-
-Padding
-=======
-
-   "Padding" means outputting null characters following a terminal
-display command that takes a long time to execute.  The terminal
-description says which commands require padding and how much; the
-function `tputs', described below, outputs a terminal command while
-extracting from it the padding information, and then outputs the
-padding that is necessary.
-
-* Menu:
-
-* Why Pad::     Explanation of padding.
-* Not Enough::  When there is not enough padding.
-* Describe Padding::  The data base says how much padding a terminal needs.
-* Output Padding::  Using `tputs' to output the needed padding.
-
-\1f
-File: termcap.info,  Node: Why Pad,  Next: Not Enough,  Up: Padding
-
-Why Pad, and How
-----------------
-
-   Most types of terminal have commands that take longer to execute
-than they do to send over a high-speed line.  For example, clearing the
-screen may take 20msec once the entire command is received.  During
-that time, on a 9600 bps line, the terminal could receive about 20
-additional output characters while still busy clearing the screen.
-Every terminal has a certain amount of buffering capacity to remember
-output characters that cannot be processed yet, but too many slow
-commands in a row can cause the buffer to fill up.  Then any additional
-output that cannot be processed immediately will be lost.
-
-   To avoid this problem, we normally follow each display command with
-enough useless charaters (usually null characters) to fill up the time
-that the display command needs to execute.  This does the job if the
-terminal throws away null characters without using up space in the
-buffer (which most terminals do).  If enough padding is used, no output
-can ever be lost.  The right amount of padding avoids loss of output
-without slowing down operation, since the time used to transmit padding
-is time that nothing else could be done.
-
-   The number of padding characters needed for an operation depends on
-the line speed.  In fact, it is proportional to the line speed.  A 9600
-baud line transmits about one character per msec, so the clear screen
-command in the example above would need about 20 characters of padding.
-At 1200 baud, however, only about 3 characters of padding are needed
-to fill up 20msec.
-
-\1f
-File: termcap.info,  Node: Not Enough,  Next: Describe Padding,  Prev: Why Pad,  Up: Padding
-
-When There Is Not Enough Padding
---------------------------------
-
-   There are several common manifestations of insufficient padding.
-
-   * Emacs displays `I-search: ^Q-' at the bottom of the screen.
-
-     This means that the terminal thought its buffer was getting full of
-     display commands, so it tried to tell the computer to stop sending
-     any.
-
-   * The screen is garbled intermittently, or the details of garbling
-     vary when you repeat the action.  (A garbled screen could be due
-     to a command which is simply incorrect, or to user option in the
-     terminal which doesn't match the assumptions of the terminal
-     description, but this usually leads to reproducible failure.)
-
-     This means that the buffer did get full, and some commands were
-     lost.  Many changeable factors can change which ones are lost.
-
-   * Screen is garbled at high output speeds but not at low speeds.
-     Padding problems nearly always go away at low speeds, usually even
-     at 1200 baud.
-
-     This means that a high enough speed permits commands to arrive
-     faster than they can be executed.
-
-   Although any obscure command on an obscure terminal might lack
-padding, in practice problems arise most often from the clearing
-commands `cl' and `cd' (*note Clearing::.), the scrolling commands `sf'
-and `sr' (*note Scrolling::.), and the line insert/delete commands `al'
-and `dl' (*note Insdel Line::.).
-
-   Occasionally the terminal description fails to define `sf' and some
-programs will use `do' instead, so you may get a problem with `do'.  If
-so, first define `sf' just like `do', then add some padding to `sf'.
-
-   The best strategy is to add a lot of padding at first, perhaps 200
-msec.  This is much more than enough; in fact, it should cause a
-visible slowdown.  (If you don't see a slowdown, the change has not
-taken effect; *note Changing::..)  If this makes the problem go away,
-you have found the right place to add padding; now reduce the amount
-until the problem comes back, then increase it again.  If the problem
-remains, either it is in some other capability or it is not a matter of
-padding at all.
-
-   Keep in mind that on many terminals the correct padding for
-insert/delete line or for scrolling is cursor-position dependent.  If
-you get problems from scrolling a large region of the screen but not
-from scrolling a small part (just a few lines moving), it may mean that
-fixed padding should be replaced with position-dependent padding.
-
-\1f
-File: termcap.info,  Node: Describe Padding,  Next: Output Padding,  Prev: Not Enough,  Up: Padding
-
-Specifying Padding in a Terminal Description
---------------------------------------------
-
-   In the terminal description, the amount of padding required by each
-display command is recorded as a sequence of digits at the front of the
-command.  These digits specify the padding time in milliseconds (msec).
-They can be followed optionally by a decimal point and one more digit,
-which is a number of tenths of msec.
-
-   Sometimes the padding needed by a command depends on the cursor
-position.  For example, the time taken by an "insert line" command is
-usually proportional to the number of lines that need to be moved down
-or cleared.  An asterisk (`*') following the padding time says that the
-time should be multiplied by the number of screen lines affected by the
-command.
-
-     :al=1.3*\E[L:
-
-is used to describe the "insert line" command for a certain terminal.
-The padding required is 1.3 msec per line affected.  The command itself
-is `ESC [ L'.
-
-   The padding time specified in this way tells `tputs' how many pad
-characters to output.  *Note Output Padding::.
-
-   Two special capability values affect padding for all commands.
-These are the `pc' and `pb'.  The variable `pc' specifies the character
-to pad with, and `pb' the speed below which no padding is needed.  The
-defaults for these variables, a null character and 0, are correct for
-most terminals.  *Note Pad Specs::.
-
-\1f
-File: termcap.info,  Node: Output Padding,  Prev: Describe Padding,  Up: Padding
-
-Performing Padding with `tputs'
--------------------------------
-
-   Use the termcap function `tputs' to output a string containing an
-optional padding spec of the form described above (*note Describe
-Padding::.).  The function `tputs' strips off and decodes the padding
-spec, outputs the rest of the string, and then outputs the appropriate
-padding.  Here is its declaration in ANSI C:
-
-     char PC;
-     short ospeed;
-     
-     int tputs (char *STRING, int NLINES, int (*OUTFUN) ());
-
-   Here STRING is the string (including padding spec) to be output;
-NLINES is the number of lines affected by the operation, which is used
-to multiply the amount of padding if the padding spec ends with a `*'.
-Finally, OUTFUN is a function (such as `fputchar') that is called to
-output each character.  When actually called, OUTFUN should expect one
-argument, a character.
-
-   The operation of `tputs' is controlled by two global variables,
-`ospeed' and `PC'.  The value of `ospeed' is supposed to be the
-terminal output speed, encoded as in the `ioctl' system call which gets
-the speed information.  This is needed to compute the number of padding
-characters.  The value of `PC' is the character used for padding.
-
-   You are responsible for storing suitable values into these variables
-before using `tputs'.  The value stored into the `PC' variable should be
-taken from the `pc' capability in the terminal description (*note Pad
-Specs::.).  Store zero in `PC' if there is no `pc' capability.
-
-   The argument NLINES requires some thought.  Normally, it should be
-the number of lines whose contents will be cleared or moved by the
-command.  For cursor motion commands, or commands that do editing
-within one line, use the value 1.  For most commands that affect
-multiple lines, such as `al' (insert a line) and `cd' (clear from the
-cursor to the end of the screen), NLINES should be the screen height
-minus the current vertical position (origin 0).  For multiple insert
-and scroll commands such as `AL' (insert multiple lines), that same
-value for NLINES is correct; the number of lines being inserted is not
-correct.
-
-   If a "scroll window" feature is used to reduce the number of lines
-affected by a command, the value of NLINES should take this into
-account.  This is because the delay time required depends on how much
-work the terminal has to do, and the scroll window feature reduces the
-work.  *Note Scrolling::.
-
-   Commands such as `ic' and `dc' (insert or delete characters) are
-problematical because the padding needed by these commands is
-proportional to the number of characters affected, which is the number
-of columns from the cursor to the end of the line.  It would be nice to
-have a way to specify such a dependence, and there is no need for
-dependence on vertical position in these commands, so it is an obvious
-idea to say that for these commands NLINES should really be the number
-of columns affected.  However, the definition of termcap clearly says
-that NLINES is always the number of lines affected, even in this case,
-where it is always 1.  It is not easy to change this rule now, because
-too many programs and terminal descriptions have been written to follow
-it.
-
-   Because NLINES is always 1 for the `ic' and `dc' strings, there is
-no reason for them to use `*', but some of them do.  These should be
-corrected by deleting the `*'.  If, some day, such entries have
-disappeared, it may be possible to change to a more useful convention
-for the NLINES argument for these operations without breaking any
-programs.
-
-\1f
-File: termcap.info,  Node: Parameters,  Prev: Padding,  Up: Library
-
-Filling In Parameters
-=====================
-
-   Some terminal control strings require numeric "parameters".  For
-example, when you move the cursor, you need to say what horizontal and
-vertical positions to move it to.  The value of the terminal's `cm'
-capability, which says how to move the cursor, cannot simply be a
-string of characters; it must say how to express the cursor position
-numbers and where to put them within the command.
-
-   The specifications of termcap include conventions as to which
-string-valued capabilities require parameters, how many parameters, and
-what the parameters mean; for example, it defines the `cm' string to
-take two parameters, the vertical and horizontal positions, with 0,0
-being the upper left corner.  These conventions are described where the
-individual commands are documented.
-
-   Termcap also defines a language used within the capability
-definition for specifying how and where to encode the parameters for
-output.  This language uses character sequences starting with `%'.
-(This is the same idea as `printf', but the details are different.)
-The language for parameter encoding is described in this section.
-
-   A program that is doing display output calls the functions `tparam'
-or `tgoto' to encode parameters according to the specifications.  These
-functions produce a string containing the actual commands to be output
-(as well a padding spec which must be processed with `tputs'; *note
-Padding::.).
-
-* Menu:
-
-* Encode Parameters::  The language for encoding parameters.
-* Using Parameters::  Outputting a string command with parameters.
-
-\1f
-File: termcap.info,  Node: Encode Parameters,  Next: Using Parameters,  Up: Parameters
-
-Describing the Encoding
------------------------
-
-   A terminal command string that requires parameters contains special
-character sequences starting with `%' to say how to encode the
-parameters.  These sequences control the actions of `tparam' and
-`tgoto'.
-
-   The parameters values passed to `tparam' or `tgoto' are considered
-to form a vector.  A pointer into this vector determines the next
-parameter to be processed.  Some of the `%'-sequences encode one
-parameter and advance the pointer to the next parameter.  Other
-`%'-sequences alter the pointer or alter the parameter values without
-generating output.
-
-   For example, the `cm' string for a standard ANSI terminal is written
-as `\E[%i%d;%dH'.  (`\E' stands for ESC.)  `cm' by convention always
-requires two parameters, the vertical and horizontal goal positions, so
-this string specifies the encoding of two parameters.  Here `%i'
-increments the two values supplied, and each `%d' encodes one of the
-values in decimal.  If the cursor position values 20,58 are encoded
-with this string, the result is `\E[21;59H'.
-
-   First, here are the `%'-sequences that generate output.  Except for
-`%%', each of them encodes one parameter and advances the pointer to
-the following parameter.
-
-`%%'
-     Output a single `%'.  This is the only way to represent a literal
-     `%' in a terminal command with parameters.  `%%' does not use up a
-     parameter.
-
-`%d'
-     As in `printf', output the next parameter in decimal.
-
-`%2'
-     Like `%02d' in `printf': output the next parameter in decimal, and
-     always use at least two digits.
-
-`%3'
-     Like `%03d' in `printf': output the next parameter in decimal, and
-     always use at least three digits.  Note that `%4' and so on are
-     *not* defined.
-
-`%.'
-     Output the next parameter as a single character whose ASCII code is
-     the parameter value.  Like `%c' in `printf'.
-
-`%+CHAR'
-     Add the next parameter to the character CHAR, and output the
-     resulting character.  For example, `%+ ' represents 0 as a space,
-     1 as `!', etc.
-
-   The following `%'-sequences specify alteration of the parameters
-(their values, or their order) rather than encoding a parameter for
-output.  They generate no output; they are used only for their side
-effects on the parameters.  Also, they do not advance the "next
-parameter" pointer except as explicitly stated.  Only `%i', `%r' and
-`%>' are defined in standard Unix termcap.  The others are GNU
-extensions.
-
-`%i'
-     Increment the next two parameters.  This is used for terminals that
-     expect cursor positions in origin 1.  For example, `%i%d,%d' would
-     output two parameters with `1' for 0, `2' for 1, etc.
-
-`%r'
-     Interchange the next two parameters.  This is used for terminals
-     whose cursor positioning command expects the horizontal position
-     first.
-
-`%s'
-     Skip the next parameter.  Do not output anything.
-
-`%b'
-     Back up one parameter.  The last parameter used will become once
-     again the next parameter to be output, and the next output command
-     will use it.  Using `%b' more than once, you can back up any
-     number of parameters, and you can refer to each parameter any
-     number of times.
-
-`%>C1C2'
-     Conditionally increment the next parameter.  Here C1 and C2 are
-     characters which stand for their ASCII codes as numbers.  If the
-     next parameter is greater than the ASCII code of C1, the ASCII
-     code of C2 is added to it.
-
-`%a OP TYPE POS'
-     Perform arithmetic on the next parameter, do not use it up, and do
-     not output anything.  Here OP specifies the arithmetic operation,
-     while TYPE and POS together specify the other operand.
-
-     Spaces are used above to separate the operands for clarity; the
-     spaces don't appear in the data base, where this sequence is
-     exactly five characters long.
-
-     The character OP says what kind of arithmetic operation to
-     perform.  It can be any of these characters:
-
-    `='
-          assign a value to the next parameter, ignoring its old value.
-          The new value comes from the other operand.
-
-    `+'
-          add the other operand to the next parameter.
-
-    `-'
-          subtract the other operand from the next parameter.
-
-    `*'
-          multiply the next parameter by the other operand.
-
-    `/'
-          divide the next parameter by the other operand.
-
-     The "other operand" may be another parameter's value or a constant;
-     the character TYPE says which.  It can be:
-
-    `p'
-          Use another parameter.  The character POS says which
-          parameter to use.  Subtract 64 from its ASCII code to get the
-          position of the desired parameter relative to this one.  Thus,
-          the character `A' as POS means the parameter after the next
-          one; the character `?' means the parameter before the next
-          one.
-
-    `c'
-          Use a constant value.  The character POS specifies the value
-          of the constant.  The 0200 bit is cleared out, so that 0200
-          can be used to represent zero.
-
-   The following `%'-sequences are special purpose hacks to compensate
-for the weird designs of obscure terminals.  They modify the next
-parameter or the next two parameters but do not generate output and do
-not use up any parameters.  `%m' is a GNU extension; the others are
-defined in standard Unix termcap.
-
-`%n'
-     Exclusive-or the next parameter with 0140, and likewise the
-     parameter after next.
-
-`%m'
-     Complement all the bits of the next parameter and the parameter
-     after next.
-
-`%B'
-     Encode the next parameter in BCD.  It alters the value of the
-     parameter by adding six times the quotient of the parameter by ten.
-     Here is a C statement that shows how the new value is computed:
-
-          PARM = (PARM / 10) * 16 + PARM % 10;
-
-`%D'
-     Transform the next parameter as needed by Delta Data terminals.
-     This involves subtracting twice the remainder of the parameter by
-     16.
-
-          PARM -= 2 * (PARM % 16);
-
-\1f
-File: termcap.info,  Node: Using Parameters,  Prev: Encode Parameters,  Up: Parameters
-
-Sending Display Commands with Parameters
-----------------------------------------
-
-   The termcap library functions `tparam' and `tgoto' serve as the
-analog of `printf' for terminal string parameters.  The newer function
-`tparam' is a GNU extension, more general but missing from Unix
-termcap.  The original parameter-encoding function is `tgoto', which is
-preferable for cursor motion.
-
-* Menu:
-
-* tparam::      The general case, for GNU termcap only.
-* tgoto::       The special case of cursor motion.
-
-\1f
-File: termcap.info,  Node: tparam,  Next: tgoto,  Up: Using Parameters
-
-`tparam'
-........
-
-   The function `tparam' can encode display commands with any number of
-parameters and allows you to specify the buffer space.  It is the
-preferred function for encoding parameters for all but the `cm'
-capability.  Its ANSI C declaration is as follows:
-
-     char *tparam (char *CTLSTRING, char *BUFFER, int SIZE, int PARM1,...)
-
-   The arguments are a control string CTLSTRING (the value of a terminal
-capability, presumably), an output buffer BUFFER and SIZE, and any
-number of integer parameters to be encoded.  The effect of `tparam' is
-to copy the control string into the buffer, encoding parameters
-according to the `%' sequences in the control string.
-
-   You describe the output buffer by its address, BUFFER, and its size
-in bytes, SIZE.  If the buffer is not big enough for the data to be
-stored in it, `tparam' calls `malloc' to get a larger buffer.  In
-either case, `tparam' returns the address of the buffer it ultimately
-uses.  If the value equals BUFFER, your original buffer was used.
-Otherwise, a new buffer was allocated, and you must free it after you
-are done with printing the results.  If you pass zero for SIZE and
-BUFFER, `tparam' always allocates the space with `malloc'.
-
-   All capabilities that require parameters also have the ability to
-specify padding, so you should use `tputs' to output the string
-produced by `tparam'.  *Note Padding::.  Here is an example.
-
-     {
-     char *buf;
-     char buffer[40];
-     
-     buf = tparam (command, buffer, 40, parm);
-     tputs (buf, 1, fputchar);
-     if (buf != buffer)
-     free (buf);
-     }
-
-   If a parameter whose value is zero is encoded with `%.'-style
-encoding, the result is a null character, which will confuse `tputs'.
-This would be a serious problem, but luckily `%.' encoding is used only
-by a few old models of terminal, and only for the `cm' capability.  To
-solve the problem, use `tgoto' rather than `tparam' to encode the `cm'
-capability.
-
-\1f
-File: termcap.info,  Node: tgoto,  Prev: tparam,  Up: Using Parameters
-
-`tgoto'
-.......
-
-   The special case of cursor motion is handled by `tgoto'.  There are
-two reasons why you might choose to use `tgoto':
-
-   * For Unix compatibility, because Unix termcap does not have
-     `tparam'.
-
-   * For the `cm' capability, since `tgoto' has a special feature to
-     avoid problems with null characters, tabs and newlines on certain
-     old terminal types that use `%.' encoding for that capability.
-
-   Here is how `tgoto' might be declared in ANSI C:
-
-     char *tgoto (char *CSTRING, int HPOS, int VPOS)
-
-   There are three arguments, the terminal description's `cm' string and
-the two cursor position numbers; `tgoto' computes the parametrized
-string in an internal static buffer and returns the address of that
-buffer.  The next time you use `tgoto' the same buffer will be reused.
-
-   Parameters encoded with `%.' encoding can generate null characters,
-tabs or newlines.  These might cause trouble: the null character because
-`tputs' would think that was the end of the string, the tab because the
-kernel or other software might expand it into spaces, and the newline
-becaue the kernel might add a carriage-return, or padding characters
-normally used for a newline.  To prevent such problems, `tgoto' is
-careful to avoid these characters.  Here is how this works: if the
-target cursor position value is such as to cause a problem (that is to
-say, zero, nine or ten), `tgoto' increments it by one, then compensates
-by appending a string to move the cursor back or up one position.
-
-   The compensation strings to use for moving back or up are found in
-global variables named `BC' and `UP'.  These are actual external C
-variables with upper case names; they are declared `char *'.  It is up
-to you to store suitable values in them, normally obtained from the
-`le' and `up' terminal capabilities in the terminal description with
-`tgetstr'.  Alternatively, if these two variables are both zero, the
-feature of avoiding nulls, tabs and newlines is turned off.
-
-   It is safe to use `tgoto' for commands other than `cm' only if you
-have stored zero in `BC' and `UP'.
-
-   Note that `tgoto' reverses the order of its operands: the horizontal
-position comes before the vertical position in the arguments to
-`tgoto', even though the vertical position comes before the horizontal
-in the parameters of the `cm' string.  If you use `tgoto' with a
-command such as `AL' that takes one parameter, you must pass the
-parameter to `tgoto' as the "vertical position".
-
-\1f
-File: termcap.info,  Node: Data Base,  Next: Capabilities,  Prev: Library,  Up: Top
-
-The Format of the Data Base
-***************************
-
-   The termcap data base of terminal descriptions is stored in the file
-`/etc/termcap'.  It contains terminal descriptions, blank lines, and
-comments.
-
-   A terminal description starts with one or more names for the
-terminal type.  The information in the description is a series of
-"capability names" and values.  The capability names have standard
-meanings (*note Capabilities::.) and their values describe the terminal.
-
-* Menu:
-
-* Format::      Overall format of a terminal description.
-* Capability Format::  Format of capabilities within a description.
-* Naming::      Naming conventions for terminal types.
-* Inheriting::  Inheriting part of a description from
-a related terminal type.
-* Changing::    When changes in the data base take effect.
-
-\1f
-File: termcap.info,  Node: Format,  Next: Capability Format,  Up: Data Base
-
-Terminal Description Format
-===========================
-
-   Aside from comments (lines starting with `#', which are ignored),
-each nonblank line in the termcap data base is a terminal description.
-A terminal description is nominally a single line, but it can be split
-into multiple lines by inserting the two characters `\ newline'.  This
-sequence is ignored wherever it appears in a description.
-
-   The preferred way to split the description is between capabilities:
-insert the four characters `: \ newline tab' immediately before any
-colon.  This allows each sub-line to start with some indentation.  This
-works because, after the `\ newline' are ignored, the result is `: tab
-:'; the first colon ends the preceding capability and the second colon
-starts the next capability.  If you split with `\ newline' alone, you
-may not add any indentation after them.
-
-   Here is a real example of a terminal description:
-
-     dw|vt52|DEC vt52:\
-             :cr=^M:do=^J:nl=^J:bl=^G:\
-             :le=^H:bs:cd=\EJ:ce=\EK:cl=\EH\EJ:\
-             :cm=\EY%+ %+ :co#80:li#24:\
-             :nd=\EC:ta=^I:pt:sr=\EI:up=\EA:\
-             :ku=\EA:kd=\EB:kr=\EC:kl=\ED:kb=^H:
-
-   Each terminal description begins with several names for the terminal
-type.  The names are separated by `|' characters, and a colon ends the
-last name.  The first name should be two characters long; it exists
-only for the sake of very old Unix systems and is never used in modern
-systems.  The last name should be a fully verbose name such as "DEC
-vt52" or "Ann Arbor Ambassador with 48 lines".  The other names should
-include whatever the user ought to be able to specify to get this
-terminal type, such as `vt52' or `aaa-48'.  *Note Naming::, for
-information on how to choose terminal type names.
-
-   After the terminal type names come the terminal capabilities,
-separated by colons and with a colon after the last one.  Each
-capability has a two-letter name, such as `cm' for "cursor motion
-string" or `li' for "number of display lines".
-
-\1f
-File: termcap.info,  Node: Capability Format,  Next: Naming,  Prev: Format,  Up: Data Base
-
-Writing the Capabilities
-========================
-
-   There are three kinds of capabilities: flags, numbers, and strings.
-Each kind has its own way of being written in the description.  Each
-defined capability has by convention a particular kind of value; for
-example, `li' always has a numeric value and `cm' always a string value.
-
-   A flag capability is thought of as having a boolean value: the value
-is true if the capability is present, false if not.  When the
-capability is present, just write its name between two colons.
-
-   A numeric capability has a value which is a nonnegative number.
-Write the capability name, a `#', and the number, between two colons.
-For example, `...:li#48:...' is how you specify the `li' capability for
-48 lines.
-
-   A string-valued capability has a value which is a sequence of
-characters.  Usually these are the characters used to perform some
-display operation.  Write the capability name, a `=', and the
-characters of the value, between two colons.  For example,
-`...:cm=\E[%i%d;%dH:...' is how the cursor motion command for a
-standard ANSI terminal would be specified.
-
-   Special characters in the string value can be expressed using
-`\'-escape sequences as in C; in addition, `\E' stands for ESC.  `^' is
-also a kind of escape character; `^' followed by CHAR stands for the
-control-equivalent of CHAR.  Thus, `^a' stands for the character
-control-a, just like `\001'.  `\' and `^' themselves can be represented
-as `\\' and `\^'.
-
-   To include a colon in the string, you must write `\072'.  You might
-ask, "Why can't `\:' be used to represent a colon?"  The reason is that
-the interrogation functions do not count slashes while looking for a
-capability.  Even if `:ce=ab\:cd:' were interpreted as giving the `ce'
-capability the value `ab:cd', it would also appear to define `cd' as a
-flag.
-
-   The string value will often contain digits at the front to specify
-padding (*note Padding::.) and/or `%'-sequences within to specify how
-to encode parameters (*note Parameters::.).  Although these things are
-not to be output literally to the terminal, they are considered part of
-the value of the capability.  They are special only when the string
-value is processed by `tputs', `tparam' or `tgoto'.  By contrast, `\'
-and `^' are considered part of the syntax for specifying the characters
-in the string.
-
-   Let's look at the VT52 example again:
-
-     dw|vt52|DEC vt52:\
-             :cr=^M:do=^J:nl=^J:bl=^G:\
-             :le=^H:bs:cd=\EJ:ce=\EK:cl=\EH\EJ:\
-             :cm=\EY%+ %+ :co#80:li#24:\
-             :nd=\EC:ta=^I:pt:sr=\EI:up=\EA:\
-             :ku=\EA:kd=\EB:kr=\EC:kl=\ED:kb=^H:
-
-   Here we see the numeric-valued capabilities `co' and `li', the flags
-`bs' and `pt', and many string-valued capabilities.  Most of the
-strings start with ESC represented as `\E'.  The rest contain control
-characters represented using `^'.  The meanings of the individual
-capabilities are defined elsewhere (*note Capabilities::.).
-
diff --git a/lib/termcap/grot/termcap.info-2 b/lib/termcap/grot/termcap.info-2
deleted file mode 100644 (file)
index 6098d62..0000000
+++ /dev/null
@@ -1,974 +0,0 @@
-This is Info file ./termcap.info, produced by Makeinfo-1.55 from the
-input file ./termcap.texi.
-
-   This file documents the termcap library of the GNU system.
-
-   Copyright (C) 1988 Free Software Foundation, Inc.
-
-   Permission is granted to make and distribute verbatim copies of this
-manual provided the copyright notice and this permission notice are
-preserved on all copies.
-
-   Permission is granted to copy and distribute modified versions of
-this manual under the conditions for verbatim copying, provided that
-the entire resulting derived work is distributed under the terms of a
-permission notice identical to this one.
-
-   Permission is granted to copy and distribute translations of this
-manual into another language, under the above conditions for modified
-versions, except that this permission notice may be stated in a
-translation approved by the Foundation.
-
-\1f
-File: termcap.info,  Node: Naming,  Next: Inheriting,  Prev: Capability Format,  Up: Data Base
-
-Terminal Type Name Conventions
-==============================
-
-   There are conventions for choosing names of terminal types.  For one
-thing, all letters should be in lower case.  The terminal type for a
-terminal in its most usual or most fundamental mode of operation should
-not have a hyphen in it.
-
-   If the same terminal has other modes of operation which require
-different terminal descriptions, these variant descriptions are given
-names made by adding suffixes with hyphens.  Such alternate descriptions
-are used for two reasons:
-
-   * When the terminal has a switch that changes its behavior.  Since
-     the computer cannot tell how the switch is set, the user must tell
-     the computer by choosing the appropriate terminal type name.
-
-     For example, the VT-100 has a setup flag that controls whether the
-     cursor wraps at the right margin.  If this flag is set to "wrap",
-     you must use the terminal type `vt100-am'.  Otherwise you must use
-     `vt100-nam'.  Plain `vt100' is defined as a synonym for either
-     `vt100-am' or `vt100-nam' depending on the preferences of the
-     local site.
-
-     The standard suffix `-am' stands for "automatic margins".
-
-   * To give the user a choice in how to use the terminal.  This is done
-     when the terminal has a switch that the computer normally controls.
-
-     For example, the Ann Arbor Ambassador can be configured with many
-     screen sizes ranging from 20 to 60 lines.  Fewer lines make bigger
-     characters but more lines let you see more of what you are editing.
-     As a result, users have different preferences.  Therefore, termcap
-     provides terminal types for many screen sizes.  If you choose type
-     `aaa-30', the terminal will be configured to use 30 lines; if you
-     choose `aaa-48', 48 lines will be used, and so on.
-
-   Here is a list of standard suffixes and their conventional meanings:
-
-`-w'
-     Short for "wide".  This is a mode that gives the terminal more
-     columns than usual.  This is normally a user option.
-
-`-am'
-     "Automatic margins".  This is an alternate description for use when
-     the terminal's margin-wrap switch is on; it contains the `am'
-     flag.  The implication is that normally the switch is off and the
-     usual description for the terminal says that the switch is off.
-
-`-nam'
-     "No automatic margins".  The opposite of `-am', this names an
-     alternative description which lacks the `am' flag.  This implies
-     that the terminal is normally operated with the margin-wrap switch
-     turned on, and the normal description of the terminal says so.
-
-`-na'
-     "No arrows".  This terminal description initializes the terminal to
-     keep its arrow keys in local mode.  This is a user option.
-
-`-rv'
-     "Reverse video".  This terminal description causes text output for
-     normal video to appear as reverse, and text output for reverse
-     video to come out as normal.  Often this description differs from
-     the usual one by interchanging the two strings which turn reverse
-     video on and off.
-
-     This is a user option; you can choose either the "reverse video"
-     variant terminal type or the normal terminal type, and termcap will
-     obey.
-
-`-s'
-     "Status".  Says to enable use of a status line which ordinary
-     output does not touch (*note Status Line::.).
-
-     Some terminals have a special line that is used only as a status
-     line.  For these terminals, there is no need for an `-s' variant;
-     the status line commands should be defined by default.  On other
-     terminals, enabling a status line means removing one screen line
-     from ordinary use and reducing the effective screen height.  For
-     these terminals, the user can choose the `-s' variant type to
-     request use of a status line.
-
-`-NLINES'
-     Says to operate with NLINES lines on the screen, for terminals
-     such as the Ambassador which provide this as an option.  Normally
-     this is a user option; by choosing the terminal type, you control
-     how many lines termcap will use.
-
-`-NPAGESp'
-     Says that the terminal has NPAGES pages worth of screen memory,
-     for terminals where this is a hardware option.
-
-`-unk'
-     Says that description is not for direct use, but only for
-     reference in `tc' capabilities.  Such a description is a kind of
-     subroutine, because it describes the common characteristics of
-     several variant descriptions that would use other suffixes in
-     place of `-unk'.
-
-\1f
-File: termcap.info,  Node: Inheriting,  Next: Changing,  Prev: Naming,  Up: Data Base
-
-Inheriting from Related Descriptions
-====================================
-
-   When two terminal descriptions are similar, their identical parts do
-not need to be given twice.  Instead, one of the two can be defined in
-terms of the other, using the `tc' capability.  We say that one
-description "refers to" the other, or "inherits from" the other.
-
-   The `tc' capability must be the last one in the terminal description,
-and its value is a string which is the name of another terminal type
-which is referred to.  For example,
-
-     N9|aaa|ambassador|aaa-30|ann arbor ambassador/30 lines:\
-             :ti=\E[2J\E[30;0;0;30p:\
-             :te=\E[60;0;0;30p\E[30;1H\E[J:\
-             :li#30:tc=aaa-unk:
-
-defines the terminal type `aaa-30' (also known as plain `aaa') in terms
-of `aaa-unk', which defines everything about the Ambassador that is
-independent of screen height.  The types `aaa-36', `aaa-48' and so on
-for other screen heights are likewise defined to inherit from `aaa-unk'.
-
-   The capabilities overridden by `aaa-30' include `li', which says how
-many lines there are, and `ti' and `te', which configure the terminal
-to use that many lines.
-
-   The effective terminal description for type `aaa' consists of the
-text shown above followed by the text of the description of `aaa-unk'.
-The `tc' capability is handled automatically by `tgetent', which finds
-the description thus referenced and combines the two descriptions
-(*note Find::.).  Therefore, only the implementor of the terminal
-descriptions needs to think about using `tc'.  Users and application
-programmers do not need to be concerned with it.
-
-   Since the reference terminal description is used last, capabilities
-specified in the referring description override any specifications of
-the same capabilities in the reference description.
-
-   The referring description can cancel out a capability without
-specifying any new value for it by means of a special trick.  Write the
-capability in the referring description, with the character `@' after
-the capability name, as follows:
-
-     NZ|aaa-30-nam|ann arbor ambassador/30 lines/no automatic-margins:\
-             :am@:tc=aaa-30:
-
-\1f
-File: termcap.info,  Node: Changing,  Prev: Inheriting,  Up: Data Base
-
-When Changes in the Data Base Take Effect
-=========================================
-
-   Each application program must read the terminal description from the
-data base, so a change in the data base is effective for all jobs
-started after the change is made.
-
-   The change will usually have no effect on a job that have been in
-existence since before the change. The program probably read the
-terminal description once, when it was started, and is continuing to
-use what it read then.  If the program does not have a feature for
-reexamining the data base, then you will need to run it again (probably
-killing the old job).
-
-   If the description in use is coming from the `TERMCAP' environment
-variable, then the data base file is effectively overridden, and
-changes in it will have no effect until you change the `TERMCAP'
-variable as well.  For example, some users' `.login' files
-automatically copy the terminal description into `TERMCAP' to speed
-startup of applications.  If you have done this, you will need to
-change the `TERMCAP' variable to make the changed data base take effect.
-
-\1f
-File: termcap.info,  Node: Capabilities,  Next: Summary,  Prev: Data Base,  Up: Top
-
-Definitions of the Terminal Capabilities
-****************************************
-
-   This section is divided into many subsections, each for one aspect of
-use of display terminals.  For writing a display program, you usually
-need only check the subsections for the operations you want to use.
-For writing a terminal description, you must read each subsection and
-fill in the capabilities described there.
-
-   String capabilities that are display commands may require numeric
-parameters (*note Parameters::.).  Most such capabilities do not use
-parameters.  When a capability requires parameters, this is explicitly
-stated at the beginning of its definition.  In simple cases, the first
-or second sentence of the definition mentions all the parameters, in
-the order they should be given, using a name in upper case for each
-one.  For example, the `rp' capability is a command that requires two
-parameters; its definition begins as follows:
-
-     String of commands to output a graphic character C, repeated N
-     times.
-
-   In complex cases or when there are many parameters, they are
-described explicitly.
-
-   When a capability is described as obsolete, this means that programs
-should not be written to look for it, but terminal descriptions should
-still be written to provide it.
-
-   When a capability is described as very obsolete, this means that it
-should be omitted from terminal descriptions as well.
-
-* Menu:
-
-* Basic::       Basic characteristics.
-* Screen Size::  Screen size, and what happens when it changes.
-* Cursor Motion::  Various ways to move the cursor.
-* Wrapping::    What happens if you write a character in the last column.
-* Scrolling::   Pushing text up and down on the screen.
-* Windows::     Limiting the part of the window that output affects.
-* Clearing::    Erasing one or many lines.
-* Insdel Line::  Making new blank lines in mid-screen; deleting lines.
-* Insdel Char::  Inserting and deleting characters within a line.
-* Standout::    Highlighting some of the text.
-* Underlining::  Underlining some of the text.
-* Cursor Visibility::  Making the cursor more or less easy to spot.
-* Bell::        Attracts user's attention; not localized on the screen.
-* Keypad::      Recognizing when function keys or arrows are typed.
-* Meta Key::    META acts like an extra shift key.
-* Initialization::  Commands used to initialize or reset the terminal.
-* Pad Specs::   Info for the kernel on how much padding is needed.
-* Status Line::  A status line displays "background" information.
-* Half-Line::   Moving by half-lines, for superscripts and subscripts.
-* Printer::     Controlling auxiliary printers of display terminals.
-
-\1f
-File: termcap.info,  Node: Basic,  Next: Screen Size,  Up: Capabilities
-
-Basic Characteristics
-=====================
-
-   This section documents the capabilities that describe the basic and
-nature of the terminal, and also those that are relevant to the output
-of graphic characters.
-
-`os'
-     Flag whose presence means that the terminal can overstrike.  This
-     means that outputting a graphic character does not erase whatever
-     was present in the same character position before.  The terminals
-     that can overstrike include printing terminals, storage tubes (all
-     obsolete nowadays), and many bit-map displays.
-
-`eo'
-     Flag whose presence means that outputting a space erases a
-     character position even if the terminal supports overstriking.  If
-     this flag is not present and overstriking is supported, output of
-     a space has no effect except to move the cursor.
-
-     (On terminals that do not support overstriking, you can always
-     assume that outputting a space at a position erases whatever
-     character was previously displayed there.)
-
-`gn'
-     Flag whose presence means that this terminal type is a generic type
-     which does not really describe any particular terminal.  Generic
-     types are intended for use as the default type assigned when the
-     user connects to the system, with the intention that the user
-     should specify what type he really has.  One example of a generic
-     type is the type `network'.
-
-     Since the generic type cannot say how to do anything interesting
-     with the terminal, termcap-using programs will always find that the
-     terminal is too weak to be supported if the user has failed to
-     specify a real terminal type in place of the generic one.  The
-     `gn' flag directs these programs to use a different error message:
-     "You have not specified your real terminal type", rather than
-     "Your terminal is not powerful enough to be used".
-
-`hc'
-     Flag whose presence means this is a hardcopy terminal.
-
-`rp'
-     String of commands to output a graphic character C, repeated N
-     times.  The first parameter value is the ASCII code for the desired
-     character, and the second parameter is the number of times to
-     repeat the character.  Often this command requires padding
-     proportional to the number of times the character is repeated.
-     This effect can be had by using parameter arithmetic with
-     `%'-sequences to compute the amount of padding, then generating
-     the result as a number at the front of the string so that `tputs'
-     will treat it as padding.
-
-`hz'
-     Flag whose presence means that the ASCII character `~' cannot be
-     output on this terminal because it is used for display commands.
-
-     Programs handle this flag by checking all text to be output and
-     replacing each `~' with some other character(s).  If this is not
-     done, the screen will be thoroughly garbled.
-
-     The old Hazeltine terminals that required such treatment are
-     probably very rare today, so you might as well not bother to
-     support this flag.
-
-`CC'
-     String whose presence means the terminal has a settable command
-     character.  The value of the string is the default command
-     character (which is usually ESC).
-
-     All the strings of commands in the terminal description should be
-     written to use the default command character.  If you are writing
-     an application program that changes the command character, use the
-     `CC' capability to figure out how to translate all the display
-     commands to work with the new command character.
-
-     Most programs have no reason to look at the `CC' capability.
-
-`xb'
-     Flag whose presence identifies Superbee terminals which are unable
-     to transmit the characters ESC and `Control-C'.  Programs which
-     support this flag are supposed to check the input for the code
-     sequences sent by the F1 and F2 keys, and pretend that ESC or
-     `Control-C' (respectively) had been read.  But this flag is
-     obsolete, and not worth supporting.
-
-\1f
-File: termcap.info,  Node: Screen Size,  Next: Cursor Motion,  Prev: Basic,  Up: Capabilities
-
-Screen Size
-===========
-
-   A terminal description has two capabilities, `co' and `li', that
-describe the screen size in columns and lines.  But there is more to
-the question of screen size than this.
-
-   On some operating systems the "screen" is really a window and the
-effective width can vary.  On some of these systems, `tgetnum' uses the
-actual width of the window to decide what value to return for the `co'
-capability, overriding what is actually written in the terminal
-description.  On other systems, it is up to the application program to
-check the actual window width using a system call.  For example, on BSD
-4.3 systems, the system call `ioctl' with code `TIOCGWINSZ' will tell
-you the current screen size.
-
-   On all window systems, termcap is powerless to advise the application
-program if the user resizes the window.  Application programs must deal
-with this possibility in a system-dependent fashion.  On some systems
-the C shell handles part of the problem by detecting changes in window
-size and setting the `TERMCAP' environment variable appropriately.
-This takes care of application programs that are started subsequently.
-It does not help application programs already running.
-
-   On some systems, including BSD 4.3, all programs using a terminal get
-a signal named `SIGWINCH' whenever the screen size changes.  Programs
-that use termcap should handle this signal by using `ioctl TIOCGWINSZ'
-to learn the new screen size.
-
-`co'
-     Numeric value, the width of the screen in character positions.
-     Even hardcopy terminals normally have a `co' capability.
-
-`li'
-     Numeric value, the height of the screen in lines.
-
-\1f
-File: termcap.info,  Node: Cursor Motion,  Next: Wrapping,  Prev: Screen Size,  Up: Capabilities
-
-Cursor Motion
-=============
-
-   Termcap assumes that the terminal has a "cursor", a spot on the
-screen where a visible mark is displayed, and that most display
-commands take effect at the position of the cursor.  It follows that
-moving the cursor to a specified location is very important.
-
-   There are many terminal capabilities for different cursor motion
-operations.  A terminal description should define as many as possible,
-but most programs do not need to use most of them.  One capability,
-`cm', moves the cursor to an arbitrary place on the screen; this by
-itself is sufficient for any application as long as there is no need to
-support hardcopy terminals or certain old, weak displays that have only
-relative motion commands.  Use of other cursor motion capabilities is an
-optimization, enabling the program to output fewer characters in some
-common cases.
-
-   If you plan to use the relative cursor motion commands in an
-application program, you must know what the starting cursor position
-is.  To do this, you must keep track of the cursor position and update
-the records each time anything is output to the terminal, including
-graphic characters.  In addition, it is necessary to know whether the
-terminal wraps after writing in the rightmost column.  *Note Wrapping::.
-
-   One other motion capability needs special mention: `nw' moves the
-cursor to the beginning of the following line, perhaps clearing all the
-starting line after the cursor, or perhaps not clearing at all.  This
-capability is a least common denominator that is probably supported
-even by terminals that cannot do most other things such as `cm' or `do'.
-Even hardcopy terminals can support `nw'.
-
-`cm'
-     String of commands to position the cursor at line L, column C.
-     Both parameters are origin-zero, and are defined relative to the
-     screen, not relative to display memory.
-
-     All display terminals except a few very obsolete ones support `cm',
-     so it is acceptable for an application program to refuse to
-     operate on terminals lacking `cm'.
-
-`ho'
-     String of commands to move the cursor to the upper left corner of
-     the screen (this position is called the "home position").  In
-     terminals where the upper left corner of the screen is not the
-     same as the beginning of display memory, this command must go to
-     the upper left corner of the screen, not the beginning of display
-     memory.
-
-     Every display terminal supports this capability, and many
-     application programs refuse to operate if the `ho' capability is
-     missing.
-
-`ll'
-     String of commands to move the cursor to the lower left corner of
-     the screen.  On some terminals, moving up from home position does
-     this, but programs should never assume that will work.  Just
-     output the `ll' string (if it is provided); if moving to home
-     position and then moving up is the best way to get there, the `ll'
-     command will do that.
-
-`cr'
-     String of commands to move the cursor to the beginning of the line
-     it is on.  If this capability is not specified, many programs
-     assume they can use the ASCII carriage return character for this.
-
-`le'
-     String of commands to move the cursor left one column.  Unless the
-     `bw' flag capability is specified, the effect is undefined if the
-     cursor is at the left margin; do not use this command there.  If
-     `bw' is present, this command may be used at the left margin, and
-     it wraps the cursor to the last column of the preceding line.
-
-`nd'
-     String of commands to move the cursor right one column.  The
-     effect is undefined if the cursor is at the right margin; do not
-     use this command there, not even if `am' is present.
-
-`up'
-     String of commands to move the cursor vertically up one line.  The
-     effect of sending this string when on the top line is undefined;
-     programs should never use it that way.
-
-`do'
-     String of commands to move the cursor vertically down one line.
-     The effect of sending this string when on the bottom line is
-     undefined; programs should never use it that way.
-
-     Some programs do use `do' to scroll up one line if used at the
-     bottom line, if `sf' is not defined but `sr' is.  This is only to
-     compensate for certain old, incorrect terminal descriptions.  (In
-     principle this might actually lead to incorrect behavior on other
-     terminals, but that seems to happen rarely if ever.)  But the
-     proper solution is that the terminal description should define
-     `sf' as well as `do' if the command is suitable for scrolling.
-
-     The original idea was that this string would not contain a newline
-     character and therefore could be used without disabling the
-     kernel's usual habit of converting of newline into a
-     carriage-return newline sequence.  But many terminal descriptions
-     do use newline in the `do' string, so this is not possible; a
-     program which sends the `do' string must disable output conversion
-     in the kernel (*note Initialize::.).
-
-`bw'
-     Flag whose presence says that `le' may be used in column zero to
-     move to the last column of the preceding line.  If this flag is
-     not present, `le' should not be used in column zero.
-
-`nw'
-     String of commands to move the cursor to start of next line,
-     possibly clearing rest of line (following the cursor) before
-     moving.
-
-`DO', `UP', `LE', `RI'
-     Strings of commands to move the cursor N lines down vertically, up
-     vertically, or N columns left or right.  Do not attempt to move
-     past any edge of the screen with these commands; the effect of
-     trying that is undefined.  Only a few terminal descriptions provide
-     these commands, and most programs do not use them.
-
-`CM'
-     String of commands to position the cursor at line L, column C,
-     relative to display memory.  Both parameters are origin-zero.
-     This capability is present only in terminals where there is a
-     difference between screen-relative and memory-relative addressing,
-     and not even in all such terminals.
-
-`ch'
-     String of commands to position the cursor at column C in the same
-     line it is on.  This is a special case of `cm' in which the
-     vertical position is not changed.  The `ch' capability is provided
-     only when it is faster to output than `cm' would be in this
-     special case.  Programs should not assume most display terminals
-     have `ch'.
-
-`cv'
-     String of commands to position the cursor at line L in the same
-     column.  This is a special case of `cm' in which the horizontal
-     position is not changed.  The `cv' capability is provided only
-     when it is faster to output than `cm' would be in this special
-     case.  Programs should not assume most display terminals have `cv'.
-
-`sc'
-     String of commands to make the terminal save the current cursor
-     position.  Only the last saved position can be used.  If this
-     capability is present, `rc' should be provided also.  Most
-     terminals have neither.
-
-`rc'
-     String of commands to make the terminal restore the last saved
-     cursor position.  If this capability is present, `sc' should be
-     provided also.  Most terminals have neither.
-
-`ff'
-     String of commands to advance to the next page, for a hardcopy
-     terminal.
-
-`ta'
-     String of commands to move the cursor right to the next hardware
-     tab stop column.  Missing if the terminal does not have any kind of
-     hardware tabs.  Do not send this command if the kernel's terminal
-     modes say that the kernel is expanding tabs into spaces.
-
-`bt'
-     String of commands to move the cursor left to the previous hardware
-     tab stop column.  Missing if the terminal has no such ability; many
-     terminals do not.  Do not send this command if the kernel's
-     terminal modes say that the kernel is expanding tabs into spaces.
-
-   The following obsolete capabilities should be included in terminal
-descriptions when appropriate, but should not be looked at by new
-programs.
-
-`nc'
-     Flag whose presence means the terminal does not support the ASCII
-     carriage return character as `cr'.  This flag is needed because
-     old programs assume, when the `cr' capability is missing, that
-     ASCII carriage return can be used for the purpose.  We use `nc' to
-     tell the old programs that carriage return may not be used.
-
-     New programs should not assume any default for `cr', so they need
-     not look at `nc'.  However, descriptions should contain `nc'
-     whenever they do not contain `cr'.
-
-`xt'
-     Flag whose presence means that the ASCII tab character may not be
-     used for cursor motion.  This flag exists because old programs
-     assume, when the `ta' capability is missing, that ASCII tab can be
-     used for the purpose.  We use `xt' to tell the old programs not to
-     use tab.
-
-     New programs should not assume any default for `ta', so they need
-     not look at `xt' in connection with cursor motion.  Note that `xt'
-     also has implications for standout mode (*note Standout::.).  It
-     is obsolete in regard to cursor motion but not in regard to
-     standout.
-
-     In fact, `xt' means that the terminal is a Teleray 1061.
-
-`bc'
-     Very obsolete alternative name for the `le' capability.
-
-`bs'
-     Flag whose presence means that the ASCII character backspace may be
-     used to move the cursor left.  Obsolete; look at `le' instead.
-
-`nl'
-     Obsolete capability which is a string that can either be used to
-     move the cursor down or to scroll.  The same string must scroll
-     when used on the bottom line and move the cursor when used on any
-     other line.  New programs should use `do' or `sf', and ignore `nl'.
-
-     If there is no `nl' capability, some old programs assume they can
-     use the newline character for this purpose.  These programs follow
-     a bad practice, but because they exist, it is still desirable to
-     define the `nl' capability in a terminal description if the best
-     way to move down is *not* a newline.
-
-\1f
-File: termcap.info,  Node: Wrapping,  Next: Scrolling,  Prev: Cursor Motion,  Up: Capabilities
-
-Wrapping
-========
-
-   "Wrapping" means moving the cursor from the right margin to the left
-margin of the following line.  Some terminals wrap automatically when a
-graphic character is output in the last column, while others do not.
-Most application programs that use termcap need to know whether the
-terminal wraps.  There are two special flag capabilities to describe
-what the terminal does when a graphic character is output in the last
-column.
-
-`am'
-     Flag whose presence means that writing a character in the last
-     column causes the cursor to wrap to the beginning of the next line.
-
-     If `am' is not present, writing in the last column leaves the
-     cursor at the place where the character was written.
-
-     Writing in the last column of the last line should be avoided on
-     terminals with `am', as it may or may not cause scrolling to occur
-     (*note Scrolling::.).  Scrolling is surely not what you would
-     intend.
-
-     If your program needs to check the `am' flag, then it also needs
-     to check the `xn' flag which indicates that wrapping happens in a
-     strange way.  Many common terminals have the `xn' flag.
-
-`xn'
-     Flag whose presence means that the cursor wraps in a strange way.
-     At least two distinct kinds of strange behavior are known; the
-     termcap data base does not contain anything to distinguish the two.
-
-     On Concept-100 terminals, output in the last column wraps the
-     cursor almost like an ordinary `am' terminal.  But if the next
-     thing output is a newline, it is ignored.
-
-     DEC VT-100 terminals (when the wrap switch is on) do a different
-     strange thing: the cursor wraps only if the next thing output is
-     another graphic character.  In fact, the wrap occurs when the
-     following graphic character is received by the terminal, before the
-     character is placed on the screen.
-
-     On both of these terminals, after writing in the last column a
-     following graphic character will be displayed in the first column
-     of the following line.  But the effect of relative cursor motion
-     characters such as newline or backspace at such a time depends on
-     the terminal.  The effect of erase or scrolling commands also
-     depends on the terminal.  You can't assume anything about what
-     they will do on a terminal that has `xn'.  So, to be safe, you
-     should never do these things at such a time on such a terminal.
-
-     To be sure of reliable results on a terminal which has the `xn'
-     flag, output a `cm' absolute positioning command after writing in
-     the last column.  Another safe thing to do is to output
-     carriage-return newline, which will leave the cursor at the
-     beginning of the following line.
-
-`LP'
-     Flag whose presence means that it is safe to write in the last
-     column of the last line without worrying about undesired
-     scrolling.  `LP' indicates the DEC flavor of `xn' strangeness.
-
-\1f
-File: termcap.info,  Node: Scrolling,  Next: Windows,  Prev: Wrapping,  Up: Capabilities
-
-Scrolling
-=========
-
-   "Scrolling" means moving the contents of the screen up or down one or
-more lines.  Moving the contents up is "forward scrolling"; moving them
-down is "reverse scrolling".
-
-   Scrolling happens after each line of output during ordinary output
-on most display terminals.  But in an application program that uses
-termcap for random-access output, scrolling happens only when
-explicitly requested with the commands in this section.
-
-   Some terminals have a "scroll region" feature.  This lets you limit
-the effect of scrolling to a specified range of lines.  Lines outside
-the range are unaffected when scrolling happens.  The scroll region
-feature is available if either `cs' or `cS' is present.
-
-`sf'
-     String of commands to scroll the screen one line up, assuming it is
-     output with the cursor at the beginning of the bottom line.
-
-`sr'
-     String of commands to scroll the screen one line down, assuming it
-     is output with the cursor at the beginning of the top line.
-
-`do'
-     A few programs will try to use `do' to do the work of `sf'.  This
-     is not really correct--it is an attempt to compensate for the
-     absence of a `sf' command in some old terminal descriptions.
-
-     Since these terminal descriptions do define `sr', perhaps at one
-     time the definition of `do' was different and it could be used for
-     scrolling as well.  But it isn't desirable to combine these two
-     functions in one capability, since scrolling often requires more
-     padding than simply moving the cursor down.  Defining `sf' and
-     `do' separately allows you to specify the padding properly.  Also,
-     all sources agree that `do' should not be relied on to do
-     scrolling.
-
-     So the best approach is to add `sf' capabilities to the
-     descriptions of these terminals, copying the definition of `do' if
-     that does scroll.
-
-`SF'
-     String of commands to scroll the screen N lines up, assuming it is
-     output with the cursor at the beginning of the bottom line.
-
-`SR'
-     String of commands to scroll the screen N lines down, assuming it
-     is output with the cursor at the beginning of the top line.
-
-`cs'
-     String of commands to set the scroll region.  This command takes
-     two parameters, START and END, which are the line numbers
-     (origin-zero) of the first line to include in the scroll region
-     and of the last line to include in it.  When a scroll region is
-     set, scrolling is limited to the specified range of lines; lines
-     outside the range are not affected by scroll commands.
-
-     Do not try to move the cursor outside the scroll region.  The
-     region remains set until explicitly removed.  To remove the scroll
-     region, use another `cs' command specifying the full height of the
-     screen.
-
-     The cursor position is undefined after the `cs' command is set, so
-     position the cursor with `cm' immediately afterward.
-
-`cS'
-     String of commands to set the scroll region using parameters in
-     different form.  The effect is the same as if `cs' were used.
-     Four parameters are required:
-
-       1. Total number of lines on the screen.
-
-       2. Number of lines above desired scroll region.
-
-       3. Number of lines below (outside of) desired scroll region.
-
-       4. Total number of lines on the screen, the same as the first
-          parameter.
-
-     This capability is a GNU extension that was invented to allow the
-     Ann Arbor Ambassador's scroll-region command to be described; it
-     could also be done by putting non-Unix `%'-sequences into a `cs'
-     string, but that would have confused Unix programs that used the
-     `cs' capability with the Unix termcap.  Currently only GNU Emacs
-     uses the `cS' capability.
-
-`ns'
-     Flag which means that the terminal does not normally scroll for
-     ordinary sequential output.  For modern terminals, this means that
-     outputting a newline in ordinary sequential output with the cursor
-     on the bottom line wraps to the top line.  For some obsolete
-     terminals, other things may happen.
-
-     The terminal may be able to scroll even if it does not normally do
-     so.  If the `sf' capability is provided, it can be used for
-     scrolling regardless of `ns'.
-
-`da'
-     Flag whose presence means that lines scrolled up off the top of the
-     screen may come back if scrolling down is done subsequently.
-
-     The `da' and `db' flags do not, strictly speaking, affect how to
-     scroll.  But programs that scroll usually need to clear the lines
-     scrolled onto the screen, if these flags are present.
-
-`db'
-     Flag whose presence means that lines scrolled down off the bottom
-     of the screen may come back if scrolling up is done subsequently.
-
-`lm'
-     Numeric value, the number of lines of display memory that the
-     terminal has.  A value of zero means that the terminal has more
-     display memory than can fit on the screen, but no fixed number of
-     lines.  (The number of lines may depend on the amount of text in
-     each line.)
-
-   Any terminal description that defines `SF' should also define `sf';
-likewise for `SR' and `sr'.  However, many terminals can only scroll by
-one line at a time, so it is common to find `sf' and not `SF', or `sr'
-without `SR'.
-
-   Therefore, all programs that use the scrolling facilities should be
-prepared to work with `sf' in the case that `SF' is absent, and
-likewise with `sr'.  On the other hand, an application program that
-uses only `sf' and not `SF' is acceptable, though slow on some
-terminals.
-
-   When outputting a scroll command with `tputs', the NLINES argument
-should be the total number of lines in the portion of the screen being
-scrolled.  Very often these commands require padding proportional to
-this number of lines.  *Note Padding::.
-
-\1f
-File: termcap.info,  Node: Windows,  Next: Clearing,  Prev: Scrolling,  Up: Capabilities
-
-Windows
-=======
-
-   A "window", in termcap, is a rectangular portion of the screen to
-which all display operations are restricted.  Wrapping, clearing,
-scrolling, insertion and deletion all operate as if the specified
-window were all the screen there was.
-
-`wi'
-     String of commands to set the terminal output screen window.  This
-     string requires four parameters, all origin-zero:
-       1. The first line to include in the window.
-
-       2. The last line to include in the window.
-
-       3. The first column to include in the window.
-
-       4. The last column to include in the window.
-
-   Most terminals do not support windows.
-
-\1f
-File: termcap.info,  Node: Clearing,  Next: Insdel Line,  Prev: Windows,  Up: Capabilities
-
-Clearing Parts of the Screen
-============================
-
-   There are several terminal capabilities for clearing parts of the
-screen to blank.  All display terminals support the `cl' string, and
-most display terminals support all of these capabilities.
-
-`cl'
-     String of commands to clear the entire screen and position the
-     cursor at the upper left corner.
-
-`cd'
-     String of commands to clear the line the cursor is on, and all the
-     lines below it, down to the bottom of the screen.  This command
-     string should be used only with the cursor in column zero; their
-     effect is undefined if the cursor is elsewhere.
-
-`ce'
-     String of commands to clear from the cursor to the end of the
-     current line.
-
-`ec'
-     String of commands to clear N characters, starting with the
-     character that the cursor is on.  This command string is expected
-     to leave the cursor position unchanged.  The parameter N should
-     never be large enough to reach past the right margin; the effect
-     of such a large parameter would be undefined.
-
-   Clear to end of line (`ce') is extremely important in programs that
-maintain an updating display.  Nearly all display terminals support this
-operation, so it is acceptable for a an application program to refuse to
-work if `ce' is not present.  However, if you do not want this
-limitation, you can accomplish clearing to end of line by outputting
-spaces until you reach the right margin.  In order to do this, you must
-know the current horizontal position.  Also, this technique assumes
-that writing a space will erase.  But this happens to be true on all
-the display terminals that fail to support `ce'.
-
-\1f
-File: termcap.info,  Node: Insdel Line,  Next: Insdel Char,  Prev: Clearing,  Up: Capabilities
-
-Insert/Delete Line
-==================
-
-   "Inserting a line" means creating a blank line in the middle of the
-screen, and pushing the existing lines of text apart.  In fact, the
-lines above the insertion point do not change, while the lines below
-move down, and one is normally lost at the bottom of the screen.
-
-   "Deleting a line" means causing the line to disappear from the
-screen, closing up the gap by moving the lines below it upward.  A new
-line appears at the bottom of the screen.  Usually this line is blank,
-but on terminals with the `db' flag it may be a line previously moved
-off the screen bottom by scrolling or line insertion.
-
-   Insertion and deletion of lines is useful in programs that maintain
-an updating display some parts of which may get longer or shorter.
-They are also useful in editors for scrolling parts of the screen, and
-for redisplaying after lines of text are killed or inserted.
-
-   Many terminals provide commands to insert or delete a single line at
-the cursor position.  Some provide the ability to insert or delete
-several lines with one command, using the number of lines to insert or
-delete as a parameter.  Always move the cursor to column zero before
-using any of these commands.
-
-`al'
-     String of commands to insert a blank line before the line the
-     cursor is on.  The existing line, and all lines below it, are
-     moved down.  The last line in the screen (or in the scroll region,
-     if one is set) disappears and in most circumstances is discarded.
-     It may not be discarded if the `db' is present (*note
-     Scrolling::.).
-
-     The cursor must be at the left margin before this command is used.
-     This command does not move the cursor.
-
-`dl'
-     String of commands to delete the line the cursor is on.  The
-     following lines move up, and a blank line appears at the bottom of
-     the screen (or bottom of the scroll region).  If the terminal has
-     the `db' flag, a nonblank line previously pushed off the screen
-     bottom may reappear at the bottom.
-
-     The cursor must be at the left margin before this command is used.
-     This command does not move the cursor.
-
-`AL'
-     String of commands to insert N blank lines before the line that
-     the cursor is on.  It is like `al' repeated N times, except that
-     it is as fast as one `al'.
-
-`DL'
-     String of commands to delete N lines starting with the line that
-     the cursor is on.  It is like `dl' repeated N times, except that
-     it is as fast as one `dl'.
-
-   Any terminal description that defines `AL' should also define `al';
-likewise for `DL' and `dl'.  However, many terminals can only insert or
-delete one line at a time, so it is common to find `al' and not `AL',
-or `dl' without `DL'.
-
-   Therefore, all programs that use the insert and delete facilities
-should be prepared to work with `al' in the case that `AL' is absent,
-and likewise with `dl'.  On the other hand, it is acceptable to write
-an application that uses only `al' and `dl' and does not look for `AL'
-or `DL' at all.
-
-   If a terminal does not support line insertion and deletion directly,
-but does support a scroll region, the effect of insertion and deletion
-can be obtained with scrolling.  However, it is up to the individual
-user program to check for this possibility and use the scrolling
-commands to get the desired result.  It is fairly important to implement
-this alternate strategy, since it is the only way to get the effect of
-line insertion and deletion on the popular VT100 terminal.
-
-   Insertion and deletion of lines is affected by the scroll region on
-terminals that have a settable scroll region.  This is useful when it is
-desirable to move any few consecutive lines up or down by a few lines.
-*Note Scrolling::.
-
-   The line pushed off the bottom of the screen is not lost if the
-terminal has the `db' flag capability; instead, it is pushed into
-display memory that does not appear on the screen.  This is the same
-thing that happens when scrolling pushes a line off the bottom of the
-screen.  Either reverse scrolling or deletion of a line can bring the
-apparently lost line back onto the bottom of the screen.  If the
-terminal has the scroll region feature as well as `db', the pushed-out
-line really is lost if a scroll region is in effect.
-
-   When outputting an insert or delete command with `tputs', the NLINES
-argument should be the total number of lines from the cursor to the
-bottom of the screen (or scroll region).  Very often these commands
-require padding proportional to this number of lines.  *Note Padding::.
-
-   For `AL' and `DL' the NLINES argument should *not* depend on the
-number of lines inserted or deleted; only the total number of lines
-affected.  This is because it is just as fast to insert two or N lines
-with `AL' as to insert one line with `al'.
-
diff --git a/lib/termcap/grot/termcap.info-3 b/lib/termcap/grot/termcap.info-3
deleted file mode 100644 (file)
index d5b309f..0000000
+++ /dev/null
@@ -1,1480 +0,0 @@
-This is Info file ./termcap.info, produced by Makeinfo-1.55 from the
-input file ./termcap.texi.
-
-   This file documents the termcap library of the GNU system.
-
-   Copyright (C) 1988 Free Software Foundation, Inc.
-
-   Permission is granted to make and distribute verbatim copies of this
-manual provided the copyright notice and this permission notice are
-preserved on all copies.
-
-   Permission is granted to copy and distribute modified versions of
-this manual under the conditions for verbatim copying, provided that
-the entire resulting derived work is distributed under the terms of a
-permission notice identical to this one.
-
-   Permission is granted to copy and distribute translations of this
-manual into another language, under the above conditions for modified
-versions, except that this permission notice may be stated in a
-translation approved by the Foundation.
-
-\1f
-File: termcap.info,  Node: Insdel Char,  Next: Standout,  Prev: Insdel Line,  Up: Capabilities
-
-Insert/Delete Character
-=======================
-
-   "Inserting a character" means creating a blank space in the middle
-of a line, and pushing the rest of the line rightward.  The character
-in the rightmost column is lost.
-
-   "Deleting a character" means causing the character to disappear from
-the screen, closing up the gap by moving the rest of the line leftward.
-A blank space appears in the rightmost column.
-
-   Insertion and deletion of characters is useful in programs that
-maintain an updating display some parts of which may get longer or
-shorter.  It is also useful in editors for redisplaying the results of
-editing within a line.
-
-   Many terminals provide commands to insert or delete a single
-character at the cursor position.  Some provide the ability to insert
-or delete several characters with one command, using the number of
-characters to insert or delete as a parameter.
-
-   Many terminals provide an insert mode in which outputting a graphic
-character has the added effect of inserting a position for that
-character.  A special command string is used to enter insert mode and
-another is used to exit it.  The reason for designing a terminal with
-an insert mode rather than an insert command is that inserting
-character positions is usually followed by writing characters into
-them.  With insert mode, this is as fast as simply writing the
-characters, except for the fixed overhead of entering and leaving
-insert mode.  However, when the line speed is great enough, padding may
-be required for the graphic characters output in insert mode.
-
-   Some terminals require you to enter insert mode and then output a
-special command for each position to be inserted.  Or they may require
-special commands to be output before or after each graphic character to
-be inserted.
-
-   Deletion of characters is usually accomplished by a straightforward
-command to delete one or several positions; but on some terminals, it
-is necessary to enter a special delete mode before using the delete
-command, and leave delete mode afterward.  Sometimes delete mode and
-insert mode are the same mode.
-
-   Some terminals make a distinction between character positions in
-which a space character has been output and positions which have been
-cleared.  On these terminals, the effect of insert or delete character
-runs to the first cleared position rather than to the end of the line.
-In fact, the effect may run to more than one line if there is no
-cleared position to stop the shift on the first line.  These terminals
-are identified by the `in' flag capability.
-
-   On terminals with the `in' flag, the technique of skipping over
-characters that you know were cleared, and then outputting text later
-on in the same line, causes later insert and delete character
-operations on that line to do nonstandard things.  A program that has
-any chance of doing this must check for the `in' flag and must be
-careful to write explicit space characters into the intermediate
-columns when `in' is present.
-
-   A plethora of terminal capabilities are needed to describe all of
-this complexity.  Here is a list of them all.  Following the list, we
-present an algorithm for programs to use to take proper account of all
-of these capabilities.
-
-`im'
-     String of commands to enter insert mode.
-
-     If the terminal has no special insert mode, but it can insert
-     characters with a special command, `im' should be defined with a
-     null value, because the `vi' editor assumes that insertion of a
-     character is impossible if `im' is not provided.
-
-     New programs should not act like `vi'.  They should pay attention
-     to `im' only if it is defined.
-
-`ei'
-     String of commands to leave insert mode.  This capability must be
-     present if `im' is.
-
-     On a few old terminals the same string is used to enter and exit
-     insert mode.  This string turns insert mode on if it was off, and
-     off it it was on.  You can tell these terminals because the `ei'
-     string equals the `im' string.  If you want to support these
-     terminals, you must always remember accurately whether insert mode
-     is in effect.  However, these terminals are obsolete, and it is
-     reasonable to refuse to support them.  On all modern terminals, you
-     can safely output `ei' at any time to ensure that insert mode is
-     turned off.
-
-`ic'
-     String of commands to insert one character position at the cursor.
-     The cursor does not move.
-
-     If outputting a graphic character while in insert mode is
-     sufficient to insert the character, then the `ic' capability
-     should be defined with a null value.
-
-     If your terminal offers a choice of ways to insert--either use
-     insert mode or use a special command--then define `im' and do not
-     define `ic', since this gives the most efficient operation when
-     several characters are to be inserted.  *Do not* define both
-     strings, for that means that *both* must be used each time
-     insertion is done.
-
-`ip'
-     String of commands to output following an inserted graphic
-     character in insert mode.  Often it is used just for a padding
-     spec, when padding is needed after an inserted character (*note
-     Padding::.).
-
-`IC'
-     String of commands to insert N character positions at and after
-     the cursor.  It has the same effect as repeating the `ic' string
-     and a space, N times.
-
-     If `IC' is provided, application programs may use it without first
-     entering insert mode.
-
-`mi'
-     Flag whose presence means it is safe to move the cursor while in
-     insert mode and assume the terminal remains in insert mode.
-
-`in'
-     Flag whose presence means that the terminal distinguishes between
-     character positions in which space characters have been output and
-     positions which have been cleared.
-
-   An application program can assume that the terminal can do character
-insertion if *any one of* the capabilities `IC', `im', `ic' or `ip' is
-provided.
-
-   To insert N blank character positions, move the cursor to the place
-to insert them and follow this algorithm:
-
-  1. If an `IC' string is provided, output it with parameter N and you
-     are finished.  Otherwise (or if you don't want to bother to look
-     for an `IC' string) follow the remaining steps.
-
-  2. Output the `im' string, if there is one, unless the terminal is
-     already in insert mode.
-
-  3. Repeat steps 4 through 6, N times.
-
-  4. Output the `ic' string if any.
-
-  5. Output a space.
-
-  6. Output the `ip' string if any.
-
-  7. Output the `ei' string, eventually, to exit insert mode.  There is
-     no need to do this right away.  If the `mi' flag is present, you
-     can move the cursor and the cursor will remain in insert mode;
-     then you can do more insertion elsewhere without reentering insert
-     mode.
-
-   To insert N graphic characters, position the cursor and follow this
-algorithm:
-
-  1. If an `IC' string is provided, output it with parameter N, then
-     output the graphic characters, and you are finished.  Otherwise
-     (or if you don't want to bother to look for an `IC' string) follow
-     the remaining steps.
-
-  2. Output the `im' string, if there is one, unless the terminal is
-     already in insert mode.
-
-  3. For each character to be output, repeat steps 4 through 6.
-
-  4. Output the `ic' string if any.
-
-  5. Output the next graphic character.
-
-  6. Output the `ip' string if any.
-
-  7. Output the `ei' string, eventually, to exit insert mode.  There is
-     no need to do this right away.  If the `mi' flag is present, you
-     can move the cursor and the cursor will remain in insert mode;
-     then you can do more insertion elsewhere without reentering insert
-     mode.
-
-   Note that this is not the same as the original Unix termcap
-specifications in one respect: it assumes that the `IC' string can be
-used without entering insert mode.  This is true as far as I know, and
-it allows you be able to avoid entering and leaving insert mode, and
-also to be able to avoid the inserted-character padding after the
-characters that go into the inserted positions.
-
-   Deletion of characters is less complicated; deleting one column is
-done by outputting the `dc' string.  However, there may be a delete
-mode that must be entered with `dm' in order to make `dc' work.
-
-`dc'
-     String of commands to delete one character position at the cursor.
-     If `dc' is not present, the terminal cannot delete characters.
-
-`DC'
-     String of commands to delete N characters starting at the cursor.
-     It has the same effect as repeating the `dc' string N times.  Any
-     terminal description that has `DC' also has `dc'.
-
-`dm'
-     String of commands to enter delete mode.  If not present, there is
-     no delete mode, and `dc' can be used at any time (assuming there is
-     a `dc').
-
-`ed'
-     String of commands to exit delete mode.  This must be present if
-     `dm' is.
-
-   To delete N character positions, position the cursor and follow these
-steps:
-
-  1. If the `DC' string is present, output it with parameter N and you
-     are finished.  Otherwise, follow the remaining steps.
-
-  2. Output the `dm' string, unless you know the terminal is already in
-     delete mode.
-
-  3. Output the `dc' string N times.
-
-  4. Output the `ed' string eventually.  If the flag capability `mi' is
-     present, you can move the cursor and do more deletion without
-     leaving and reentering delete mode.
-
-   As with the `IC' string, we have departed from the original termcap
-specifications by assuming that `DC' works without entering delete mode
-even though `dc' would not.
-
-   If the `dm' and `im' capabilities are both present and have the same
-value, it means that the terminal has one mode for both insertion and
-deletion.  It is useful for a program to know this, because then it can
-do insertions after deletions, or vice versa, without leaving
-insert/delete mode and reentering it.
-
-\1f
-File: termcap.info,  Node: Standout,  Next: Underlining,  Prev: Insdel Char,  Up: Capabilities
-
-Standout and Appearance Modes
-=============================
-
-   "Appearance modes" are modifications to the ways characters are
-displayed.  Typical appearance modes include reverse video, dim, bright,
-blinking, underlined, invisible, and alternate character set.  Each
-kind of terminal supports various among these, or perhaps none.
-
-   For each type of terminal, one appearance mode or combination of
-them that looks good for highlighted text is chosen as the "standout
-mode".  The capabilities `so' and `se' say how to enter and leave
-standout mode.  Programs that use appearance modes only to highlight
-some text generally use the standout mode so that they can work on as
-many terminals as possible.  Use of specific appearance modes other
-than "underlined" and "alternate character set" is rare.
-
-   Terminals that implement appearance modes fall into two general
-classes as to how they do it.
-
-   In some terminals, the presence or absence of any appearance mode is
-recorded separately for each character position.  In these terminals,
-each graphic character written is given the appearance modes current at
-the time it is written, and keeps those modes until it is erased or
-overwritten.  There are special commands to turn the appearance modes
-on or off for characters to be written in the future.
-
-   In other terminals, the change of appearance modes is represented by
-a marker that belongs to a certain screen position but affects all
-following screen positions until the next marker.  These markers are
-traditionally called "magic cookies".
-
-   The same capabilities (`so', `se', `mb' and so on) for turning
-appearance modes on and off are used for both magic-cookie terminals
-and per-character terminals.  On magic cookie terminals, these give the
-commands to write the magic cookies.  On per-character terminals, they
-change the current modes that affect future output and erasure.  Some
-simple applications can use these commands without knowing whether or
-not they work by means of cookies.
-
-   However, a program that maintains and updates a display needs to know
-whether the terminal uses magic cookies, and exactly what their effect
-is.  This information comes from the `sg' capability.
-
-   The `sg' capability is a numeric capability whose presence indicates
-that the terminal uses magic cookies for appearance modes.  Its value is
-the number of character positions that a magic cookie occupies.  Usually
-the cookie occupies one or more character positions on the screen, and
-these character positions are displayed as blank, but in some terminals
-the cookie has zero width.
-
-   The `sg' capability describes both the magic cookie to turn standout
-on and the cookie to turn it off.  This makes the assumption that both
-kinds of cookie have the same width on the screen.  If that is not true,
-the narrower cookie must be "widened" with spaces until it has the same
-width as the other.
-
-   On some magic cookie terminals, each line always starts with normal
-display; in other words, the scope of a magic cookie never extends over
-more than one line.  But on other terminals, one magic cookie affects
-all the lines below it unless explicitly canceled.  Termcap does not
-define any way to distinguish these two ways magic cookies can work.
-To be safe, it is best to put a cookie at the beginning of each line.
-
-   On some per-character terminals, standout mode or other appearance
-modes may be canceled by moving the cursor.  On others, moving the
-cursor has no effect on the state of the appearance modes.  The latter
-class of terminals are given the flag capability `ms' ("can move in
-standout").  All programs that might have occasion to move the cursor
-while appearance modes are turned on must check for this flag; if it is
-not present, they should reset appearance modes to normal before doing
-cursor motion.
-
-   A program that has turned on only standout mode should use `se' to
-reset the standout mode to normal.  A program that has turned on only
-alternate character set mode should use `ae' to return it to normal.
-If it is possible that any other appearance modes are turned on, use the
-`me' capability to return them to normal.
-
-   Note that the commands to turn on one appearance mode, including `so'
-and `mb' ... `mr', if used while some other appearance modes are turned
-on, may combine the two modes on some terminals but may turn off the
-mode previously enabled on other terminals.  This is because some
-terminals do not have a command to set or clear one appearance mode
-without changing the others.  Programs should not attempt to use
-appearance modes in combination except with `sa', and when switching
-from one single mode to another should always turn off the previously
-enabled mode and then turn on the new desired mode.
-
-   On some old terminals, the `so' and `se' commands may be the same
-command, which has the effect of turning standout on if it is off, or
-off it is on.  It is therefore risky for a program to output extra `se'
-commands for good measure.  Fortunately, all these terminals are
-obsolete.
-
-   Programs that update displays in which standout-text may be replaced
-with non-standout text must check for the `xs' flag.  In a per-character
-terminal, this flag says that the only way to remove standout once
-written is to clear that portion of the line with the `ce' string or
-something even more powerful (*note Clearing::.); just writing new
-characters at those screen positions will not change the modes in
-effect there.  In a magic cookie terminal, `xs' says that the only way
-to remove a cookie is to clear a portion of the line that includes the
-cookie; writing a different cookie at the same position does not work.
-
-   Such programs must also check for the `xt' flag, which means that the
-terminal is a Teleray 1061.  On this terminal it is impossible to
-position the cursor at the front of a magic cookie, so the only two
-ways to remove a cookie are (1) to delete the line it is on or (2) to
-position the cursor at least one character before it (possibly on a
-previous line) and output the `se' string, which on these terminals
-finds and removes the next `so' magic cookie on the screen.  (It may
-also be possible to remove a cookie which is not at the beginning of a
-line by clearing that line.)  The `xt' capability also has implications
-for the use of tab characters, but in that regard it is obsolete (*Note
-Cursor Motion::).
-
-`so'
-     String of commands to enter standout mode.
-
-`se'
-     String of commands to leave standout mode.
-
-`sg'
-     Numeric capability, the width on the screen of the magic cookie.
-     This capability is absent in terminals that record appearance modes
-     character by character.
-
-`ms'
-     Flag whose presence means that it is safe to move the cursor while
-     the appearance modes are not in the normal state.  If this flag is
-     absent, programs should always reset the appearance modes to
-     normal before moving the cursor.
-
-`xs'
-     Flag whose presence means that the only way to reset appearance
-     modes already on the screen is to clear to end of line.  On a
-     per-character terminal, you must clear the area where the modes
-     are set.  On a magic cookie terminal, you must clear an area
-     containing the cookie.  See the discussion above.
-
-`xt'
-     Flag whose presence means that the cursor cannot be positioned
-     right in front of a magic cookie, and that `se' is a command to
-     delete the next magic cookie following the cursor.  See discussion
-     above.
-
-`mb'
-     String of commands to enter blinking mode.
-
-`md'
-     String of commands to enter double-bright mode.
-
-`mh'
-     String of commands to enter half-bright mode.
-
-`mk'
-     String of commands to enter invisible mode.
-
-`mp'
-     String of commands to enter protected mode.
-
-`mr'
-     String of commands to enter reverse-video mode.
-
-`me'
-     String of commands to turn off all appearance modes, including
-     standout mode and underline mode.  On some terminals it also turns
-     off alternate character set mode; on others, it may not.  This
-     capability must be present if any of `mb' ... `mr' is present.
-
-`as'
-     String of commands to turn on alternate character set mode.  This
-     mode assigns some or all graphic characters an alternate picture
-     on the screen.  There is no standard as to what the alternate
-     pictures look like.
-
-`ae'
-     String of commands to turn off alternate character set mode.
-
-`sa'
-     String of commands to turn on an arbitrary combination of
-     appearance modes.  It accepts 9 parameters, each of which controls
-     a particular kind of appearance mode.  A parameter should be 1 to
-     turn its appearance mode on, or zero to turn that mode off.  Most
-     terminals do not support the `sa' capability, even among those
-     that do have various appearance modes.
-
-     The nine parameters are, in order, STANDOUT, UNDERLINE, REVERSE,
-     BLINK, HALF-BRIGHT, DOUBLE-BRIGHT, BLANK, PROTECT, ALT CHAR SET.
-
-\1f
-File: termcap.info,  Node: Underlining,  Next: Cursor Visibility,  Prev: Standout,  Up: Capabilities
-
-Underlining
-===========
-
-   Underlining on most terminals is a kind of appearance mode, much like
-standout mode.  Therefore, it may be implemented using magic cookies or
-as a flag in the terminal whose current state affects each character
-that is output.  *Note Standout::, for a full explanation.
-
-   The `ug' capability is a numeric capability whose presence indicates
-that the terminal uses magic cookies for underlining.  Its value is the
-number of character positions that a magic cookie for underlining
-occupies; it is used for underlining just as `sg' is used for standout.
-Aside from the simplest applications, it is impossible to use
-underlining correctly without paying attention to the value of `ug'.
-
-`us'
-     String of commands to turn on underline mode or to output a magic
-     cookie to start underlining.
-
-`ue'
-     String of commands to turn off underline mode or to output a magic
-     cookie to stop underlining.
-
-`ug'
-     Width of magic cookie that represents a change of underline mode;
-     or missing, if the terminal does not use a magic cookie for this.
-
-`ms'
-     Flag whose presence means that it is safe to move the cursor while
-     the appearance modes are not in the normal state.  Underlining is
-     an appearance mode.  If this flag is absent, programs should
-     always turn off underlining before moving the cursor.
-
-   There are two other, older ways of doing underlining: there can be a
-command to underline a single character, or the output of `_', the
-ASCII underscore character, as an overstrike could cause a character to
-be underlined.  New programs need not bother to handle these
-capabilities unless the author cares strongly about the obscure
-terminals which support them.  However, terminal descriptions should
-provide these capabilities when appropriate.
-
-`uc'
-     String of commands to underline the character under the cursor, and
-     move the cursor right.
-
-`ul'
-     Flag whose presence means that the terminal can underline by
-     overstriking an underscore character (`_'); some terminals can do
-     this even though they do not support overstriking in general.  An
-     implication of this flag is that when outputting new text to
-     overwrite old text, underscore characters must be treated
-     specially lest they underline the old text instead.
-
-\1f
-File: termcap.info,  Node: Cursor Visibility,  Next: Bell,  Prev: Underlining,  Up: Capabilities
-
-Cursor Visibility
-=================
-
-   Some terminals have the ability to make the cursor invisible, or to
-enhance it.  Enhancing the cursor is often done by programs that plan
-to use the cursor to indicate to the user a position of interest that
-may be anywhere on the screen--for example, the Emacs editor enhances
-the cursor on entry.  Such programs should always restore the cursor to
-normal on exit.
-
-`vs'
-     String of commands to enhance the cursor.
-
-`vi'
-     String of commands to make the cursor invisible.
-
-`ve'
-     String of commands to return the cursor to normal.
-
-   If you define either `vs' or `vi', you must also define `ve'.
-
-\1f
-File: termcap.info,  Node: Bell,  Next: Keypad,  Prev: Cursor Visibility,  Up: Capabilities
-
-Bell
-====
-
-   Here we describe commands to make the terminal ask for the user to
-pay attention to it.
-
-`bl'
-     String of commands to cause the terminal to make an audible sound.
-     If this capability is absent, the terminal has no way to make a
-     suitable sound.
-
-`vb'
-     String of commands to cause the screen to flash to attract
-     attention ("visible bell").  If this capability is absent, the
-     terminal has no way to do such a thing.
-
-\1f
-File: termcap.info,  Node: Keypad,  Next: Meta Key,  Prev: Bell,  Up: Capabilities
-
-Keypad and Function Keys
-========================
-
-   Many terminals have arrow and function keys that transmit specific
-character sequences to the computer.  Since the precise sequences used
-depend on the terminal, termcap defines capabilities used to say what
-the sequences are.  Unlike most termcap string-valued capabilities,
-these are not strings of commands to be sent to the terminal, rather
-strings that are received from the terminal.
-
-   Programs that expect to use keypad keys should check, initially, for
-a `ks' capability and send it, to make the keypad actually transmit.
-Such programs should also send the `ke' string when exiting.
-
-`ks'
-     String of commands to make the keypad keys transmit.  If this
-     capability is not provided, but the others in this section are,
-     programs may assume that the keypad keys always transmit.
-
-`ke'
-     String of commands to make the keypad keys work locally.  This
-     capability is provided only if `ks' is.
-
-`kl'
-     String of input characters sent by typing the left-arrow key.  If
-     this capability is missing, you cannot expect the terminal to have
-     a left-arrow key that transmits anything to the computer.
-
-`kr'
-     String of input characters sent by typing the right-arrow key.
-
-`ku'
-     String of input characters sent by typing the up-arrow key.
-
-`kd'
-     String of input characters sent by typing the down-arrow key.
-
-`kh'
-     String of input characters sent by typing the "home-position" key.
-
-`K1' ... `K5'
-     Strings of input characters sent by the five other keys in a 3-by-3
-     array that includes the arrow keys, if the keyboard has such a
-     3-by-3 array.  Note that one of these keys may be the
-     "home-position" key, in which case one of these capabilities will
-     have the same value as the `kh' key.
-
-`k0'
-     String of input characters sent by function key 10 (or 0, if the
-     terminal has one labeled 0).
-
-`k1' ... `k9'
-     Strings of input characters sent by function keys 1 through 9,
-     provided for those function keys that exist.
-
-`kn'
-     Number: the number of numbered function keys, if there are more
-     than 10.
-
-`l0' ... `l9'
-     Strings which are the labels appearing on the keyboard on the keys
-     described by the capabilities `k0' ... `l9'.  These capabilities
-     should be left undefined if the labels are `f0' or `f10' and `f1'
-     ... `f9'.
-
-`kH'
-     String of input characters sent by the "home down" key, if there is
-     one.
-
-`kb'
-     String of input characters sent by the "backspace" key, if there is
-     one.
-
-`ka'
-     String of input characters sent by the "clear all tabs" key, if
-     there is one.
-
-`kt'
-     String of input characters sent by the "clear tab stop this column"
-     key, if there is one.
-
-`kC'
-     String of input characters sent by the "clear screen" key, if
-     there is one.
-
-`kD'
-     String of input characters sent by the "delete character" key, if
-     there is one.
-
-`kL'
-     String of input characters sent by the "delete line" key, if there
-     is one.
-
-`kM'
-     String of input characters sent by the "exit insert mode" key, if
-     there is one.
-
-`kE'
-     String of input characters sent by the "clear to end of line" key,
-     if there is one.
-
-`kS'
-     String of input characters sent by the "clear to end of screen"
-     key, if there is one.
-
-`kI'
-     String of input characters sent by the "insert character" or "enter
-     insert mode" key, if there is one.
-
-`kA'
-     String of input characters sent by the "insert line" key, if there
-     is one.
-
-`kN'
-     String of input characters sent by the "next page" key, if there is
-     one.
-
-`kP'
-     String of input characters sent by the "previous page" key, if
-     there is one.
-
-`kF'
-     String of input characters sent by the "scroll forward" key, if
-     there is one.
-
-`kR'
-     String of input characters sent by the "scroll reverse" key, if
-     there is one.
-
-`kT'
-     String of input characters sent by the "set tab stop in this
-     column" key, if there is one.
-
-`ko'
-     String listing the other function keys the terminal has.  This is a
-     very obsolete way of describing the same information found in the
-     `kH' ... `kT' keys.  The string contains a list of two-character
-     termcap capability names, separated by commas.  The meaning is
-     that for each capability name listed, the terminal has a key which
-     sends the string which is the value of that capability.  For
-     example, the value `:ko=cl,ll,sf,sr:' says that the terminal has
-     four function keys which mean "clear screen", "home down", "scroll
-     forward" and "scroll reverse".
-
-\1f
-File: termcap.info,  Node: Meta Key,  Next: Initialization,  Prev: Keypad,  Up: Capabilities
-
-Meta Key
-========
-
-   A Meta key is a key on the keyboard that modifies each character you
-type by controlling the 0200 bit.  This bit is on if and only if the
-Meta key is held down when the character is typed.  Characters typed
-using the Meta key are called Meta characters.  Emacs uses Meta
-characters as editing commands.
-
-`km'
-     Flag whose presence means that the terminal has a Meta key.
-
-`mm'
-     String of commands to enable the functioning of the Meta key.
-
-`mo'
-     String of commands to disable the functioning of the Meta key.
-
-   If the terminal has `km' but does not have `mm' and `mo', it means
-that the Meta key always functions.  If it has `mm' and `mo', it means
-that the Meta key can be turned on or off.  Send the `mm' string to
-turn it on, and the `mo' string to turn it off.  I do not know why one
-would ever not want it to be on.
-
-\1f
-File: termcap.info,  Node: Initialization,  Next: Pad Specs,  Prev: Meta Key,  Up: Capabilities
-
-Initialization
-==============
-
-`ti'
-     String of commands to put the terminal into whatever special modes
-     are needed or appropriate for programs that move the cursor
-     nonsequentially around the screen.  Programs that use termcap to do
-     full-screen display should output this string when they start up.
-
-`te'
-     String of commands to undo what is done by the `ti' string.
-     Programs that output the `ti' string on entry should output this
-     string when they exit.
-
-`is'
-     String of commands to initialize the terminal for each login
-     session.
-
-`if'
-     String which is the name of a file containing the string of
-     commands to initialize the terminal for each session of use.
-     Normally `is' and `if' are not both used.
-
-`i1'
-`i3'
-     Two more strings of commands to initialize the terminal for each
-     login session.  The `i1' string (if defined) is output before `is'
-     or `if', and the `i3' string (if defined) is output after.
-
-     The reason for having three separate initialization strings is to
-     make it easier to define a group of related terminal types with
-     slightly different initializations.  Define two or three of the
-     strings in the basic type; then the other types can override one
-     or two of the strings.
-
-`rs'
-     String of commands to reset the terminal from any strange mode it
-     may be in.  Normally this includes the `is' string (or other
-     commands with the same effects) and more.  What would go in the
-     `rs' string but not in the `is' string are annoying or slow
-     commands to bring the terminal back from strange modes that nobody
-     would normally use.
-
-`it'
-     Numeric value, the initial spacing between hardware tab stop
-     columns when the terminal is powered up.  Programs to initialize
-     the terminal can use this to decide whether there is a need to set
-     the tab stops.  If the initial width is 8, well and good; if it is
-     not 8, then the tab stops should be set; if they cannot be set,
-     the kernel is told to convert tabs to spaces, and other programs
-     will observe this and do likewise.
-
-`ct'
-     String of commands to clear all tab stops.
-
-`st'
-     String of commands to set tab stop at current cursor column on all
-     lines.
-
-`NF'
-     Flag whose presence means that the terminal does not support
-     XON/XOFF flow control.  Programs should not send XON (`C-q') or
-     XOFF (`C-s') characters to the terminal.
-
-\1f
-File: termcap.info,  Node: Pad Specs,  Next: Status Line,  Prev: Initialization,  Up: Capabilities
-
-Padding Capabilities
-====================
-
-   There are two terminal capabilities that exist just to explain the
-proper way to obey the padding specifications in all the command string
-capabilities.  One, `pc', must be obeyed by all termcap-using programs.
-
-`pb'
-     Numeric value, the lowest baud rate at which padding is actually
-     needed.  Programs may check this and refrain from doing any
-     padding at lower speeds.
-
-`pc'
-     String of commands for padding.  The first character of this
-     string is to be used as the pad character, instead of using null
-     characters for padding.  If `pc' is not provided, use null
-     characters.  Every program that uses termcap must look up this
-     capability and use it to set the variable `PC' that is used by
-     `tputs'.  *Note Padding::.
-
-   Some termcap capabilities exist just to specify the amount of
-padding that the kernel should give to cursor motion commands used in
-ordinary sequential output.
-
-`dC'
-     Numeric value, the number of msec of padding needed for the
-     carriage-return character.
-
-`dN'
-     Numeric value, the number of msec of padding needed for the newline
-     (linefeed) character.
-
-`dB'
-     Numeric value, the number of msec of padding needed for the
-     backspace character.
-
-`dF'
-     Numeric value, the number of msec of padding needed for the
-     formfeed character.
-
-`dT'
-     Numeric value, the number of msec of padding needed for the tab
-     character.
-
-   In some systems, the kernel uses the above capabilities; in other
-systems, the kernel uses the paddings specified in the string
-capabilities `cr', `sf', `le', `ff' and `ta'.  Descriptions of
-terminals which require such padding should contain the `dC' ...  `dT'
-capabilities and also specify the appropriate padding in the
-corresponding string capabilities.  Since no modern terminals require
-padding for ordinary sequential output, you probably won't need to do
-either of these things.
-
-\1f
-File: termcap.info,  Node: Status Line,  Next: Half-Line,  Prev: Pad Specs,  Up: Capabilities
-
-Status Line
-===========
-
-   A "status line" is a line on the terminal that is not used for
-ordinary display output but instead used for a special message.  The
-intended use is for a continuously updated description of what the
-user's program is doing, and that is where the name "status line" comes
-from, but in fact it could be used for anything.  The distinguishing
-characteristic of a status line is that ordinary output to the terminal
-does not affect it; it changes only if the special status line commands
-of this section are used.
-
-`hs'
-     Flag whose presence means that the terminal has a status line.  If
-     a terminal description specifies that there is a status line, it
-     must provide the `ts' and `fs' capabilities.
-
-`ts'
-     String of commands to move the terminal cursor into the status
-     line.  Usually these commands must specifically record the old
-     cursor position for the sake of the `fs' string.
-
-`fs'
-     String of commands to move the cursor back from the status line to
-     its previous position (outside the status line).
-
-`es'
-     Flag whose presence means that other display commands work while
-     writing the status line.  In other words, one can clear parts of
-     it, insert or delete characters, move the cursor within it using
-     `ch' if there is a `ch' capability, enter and leave standout mode,
-     and so on.
-
-`ds'
-     String of commands to disable the display of the status line.  This
-     may be absent, if there is no way to disable the status line
-     display.
-
-`ws'
-     Numeric value, the width of the status line.  If this capability is
-     absent in a terminal that has a status line, it means the status
-     line is the same width as the other lines.
-
-     Note that the value of `ws' is sometimes as small as 8.
-
-\1f
-File: termcap.info,  Node: Half-Line,  Next: Printer,  Prev: Status Line,  Up: Capabilities
-
-Half-Line Motion
-================
-
-   Some terminals have commands for moving the cursor vertically by
-half-lines, useful for outputting subscripts and superscripts.  Mostly
-it is hardcopy terminals that have such features.
-
-`hu'
-     String of commands to move the cursor up half a line.  If the
-     terminal is a display, it is your responsibility to avoid moving
-     up past the top line; however, most likely the terminal that
-     supports this is a hardcopy terminal and there is nothing to be
-     concerned about.
-
-`hd'
-     String of commands to move the cursor down half a line.  If the
-     terminal is a display, it is your responsibility to avoid moving
-     down past the bottom line, etc.
-
-\1f
-File: termcap.info,  Node: Printer,  Prev: Half-Line,  Up: Capabilities
-
-Controlling Printers Attached to Terminals
-==========================================
-
-   Some terminals have attached hardcopy printer ports.  They may be
-able to copy the screen contents to the printer; they may also be able
-to redirect output to the printer.  Termcap does not have anything to
-tell the program whether the redirected output appears also on the
-screen; it does on some terminals but not all.
-
-`ps'
-     String of commands to cause the contents of the screen to be
-     printed.  If it is absent, the screen contents cannot be printed.
-
-`po'
-     String of commands to redirect further output to the printer.
-
-`pf'
-     String of commands to terminate redirection of output to the
-     printer.  This capability must be present in the description if
-     `po' is.
-
-`pO'
-     String of commands to redirect output to the printer for next N
-     characters of output, regardless of what they are.  Redirection
-     will end automatically after N characters of further output.  Until
-     then, nothing that is output can end redirection, not even the
-     `pf' string if there is one.  The number N should not be more than
-     255.
-
-     One use of this capability is to send non-text byte sequences
-     (such as bit-maps) to the printer.
-
-   Most terminals with printers do not support all of `ps', `po' and
-`pO'; any one or two of them may be supported.  To make a program that
-can send output to all kinds of printers, it is necessary to check for
-all three of these capabilities, choose the most convenient of the ones
-that are provided, and use it in its own appropriate fashion.
-
-\1f
-File: termcap.info,  Node: Summary,  Next: Var Index,  Prev: Capabilities,  Up: Top
-
-Summary of Capability Names
-***************************
-
-   Here are all the terminal capability names in alphabetical order
-with a brief description of each.  For cross references to their
-definitions, see the index of capability names (*note Cap Index::.).
-
-`ae'
-     String to turn off alternate character set mode.
-
-`al'
-     String to insert a blank line before the cursor.
-
-`AL'
-     String to insert N blank lines before the cursor.
-
-`am'
-     Flag: output to last column wraps cursor to next line.
-
-`as'
-     String to turn on alternate character set mode.like.
-
-`bc'
-     Very obsolete alternative name for the `le' capability.
-
-`bl'
-     String to sound the bell.
-
-`bs'
-     Obsolete flag: ASCII backspace may be used for leftward motion.
-
-`bt'
-     String to move the cursor left to the previous hardware tab stop
-     column.
-
-`bw'
-     Flag: `le' at left margin wraps to end of previous line.
-
-`CC'
-     String to change terminal's command character.
-
-`cd'
-     String to clear the line the cursor is on, and following lines.
-
-`ce'
-     String to clear from the cursor to the end of the line.
-
-`ch'
-     String to position the cursor at column C in the same line.
-
-`cl'
-     String to clear the entire screen and put cursor at upper left
-     corner.
-
-`cm'
-     String to position the cursor at line L, column C.
-
-`CM'
-     String to position the cursor at line L, column C, relative to
-     display memory.
-
-`co'
-     Number: width of the screen.
-
-`cr'
-     String to move cursor sideways to left margin.
-
-`cs'
-     String to set the scroll region.
-
-`cS'
-     Alternate form of string to set the scroll region.
-
-`ct'
-     String to clear all tab stops.
-
-`cv'
-     String to position the cursor at line L in the same column.
-
-`da'
-     Flag: data scrolled off top of screen may be scrolled back.
-
-`db'
-     Flag: data scrolled off bottom of screen may be scrolled back.
-
-`dB'
-     Obsolete number: msec of padding needed for the backspace
-     character.
-
-`dc'
-     String to delete one character position at the cursor.
-
-`dC'
-     Obsolete number: msec of padding needed for the carriage-return
-     character.
-
-`DC'
-     String to delete N characters starting at the cursor.
-
-`dF'
-     Obsolete number: msec of padding needed for the formfeed character.
-
-`dl'
-     String to delete the line the cursor is on.
-
-`DL'
-     String to delete N lines starting with the cursor's line.
-
-`dm'
-     String to enter delete mode.
-
-`dN'
-     Obsolete number: msec of padding needed for the newline character.
-
-`do'
-     String to move the cursor vertically down one line.
-
-`DO'
-     String to move cursor vertically down N lines.
-
-`ds'
-     String to disable the display of the status line.
-
-`dT'
-     Obsolete number: msec of padding needed for the tab character.
-
-`ec'
-     String of commands to clear N characters at cursor.
-
-`ed'
-     String to exit delete mode.
-
-`ei'
-     String to leave insert mode.
-
-`eo'
-     Flag: output of a space can erase an overstrike.
-
-`es'
-     Flag: other display commands work while writing the status line.
-
-`ff'
-     String to advance to the next page, for a hardcopy terminal.
-
-`fs'
-     String to move the cursor back from the status line to its
-     previous position (outside the status line).
-
-`gn'
-     Flag: this terminal type is generic, not real.
-
-`hc'
-     Flag: hardcopy terminal.
-
-`hd'
-     String to move the cursor down half a line.
-
-`ho'
-     String to position cursor at upper left corner.
-
-`hs'
-     Flag: the terminal has a status line.
-
-`hu'
-     String to move the cursor up half a line.
-
-`hz'
-     Flag: terminal cannot accept `~' as output.
-
-`i1'
-     String to initialize the terminal for each login session.
-
-`i3'
-     String to initialize the terminal for each login session.
-
-`ic'
-     String to insert one character position at the cursor.
-
-`IC'
-     String to insert N character positions at the cursor.
-
-`if'
-     String naming a file of commands to initialize the terminal.
-
-`im'
-     String to enter insert mode.
-
-`in'
-     Flag: outputting a space is different from moving over empty
-     positions.
-
-`ip'
-     String to output following an inserted character in insert mode.
-
-`is'
-     String to initialize the terminal for each login session.
-
-`it'
-     Number: initial spacing between hardware tab stop columns.
-
-`k0'
-     String of input sent by function key 0 or 10.
-
-`k1 ... k9'
-     Strings of input sent by function keys 1 through 9.
-
-`K1 ... K5'
-     Strings sent by the five other keys in 3-by-3 array with arrows.
-
-`ka'
-     String of input sent by the "clear all tabs" key.
-
-`kA'
-     String of input sent by the "insert line" key.
-
-`kb'
-     String of input sent by the "backspace" key.
-
-`kC'
-     String of input sent by the "clear screen" key.
-
-`kd'
-     String of input sent by typing the down-arrow key.
-
-`kD'
-     String of input sent by the "delete character" key.
-
-`ke'
-     String to make the function keys work locally.
-
-`kE'
-     String of input sent by the "clear to end of line" key.
-
-`kF'
-     String of input sent by the "scroll forward" key.
-
-`kh'
-     String of input sent by typing the "home-position" key.
-
-`kH'
-     String of input sent by the "home down" key.
-
-`kI'
-     String of input sent by the "insert character" or "enter insert
-     mode" key.
-
-`kl'
-     String of input sent by typing the left-arrow key.
-
-`kL'
-     String of input sent by the "delete line" key.
-
-`km'
-     Flag: the terminal has a Meta key.
-
-`kM'
-     String of input sent by the "exit insert mode" key.
-
-`kn'
-     Numeric value, the number of numbered function keys.
-
-`kN'
-     String of input sent by the "next page" key.
-
-`ko'
-     Very obsolete string listing the terminal's named function keys.
-
-`kP'
-     String of input sent by the "previous page" key.
-
-`kr'
-     String of input sent by typing the right-arrow key.
-
-`kR'
-     String of input sent by the "scroll reverse" key.
-
-`ks'
-     String to make the function keys transmit.
-
-`kS'
-     String of input sent by the "clear to end of screen" key.
-
-`kt'
-     String of input sent by the "clear tab stop this column" key.
-
-`kT'
-     String of input sent by the "set tab stop in this column" key.
-
-`ku'
-     String of input sent by typing the up-arrow key.
-
-`l0'
-     String on keyboard labelling function key 0 or 10.
-
-`l1 ... l9'
-     Strings on keyboard labelling function keys 1 through 9.
-
-`le'
-     String to move the cursor left one column.
-
-`LE'
-     String to move cursor left N columns.
-
-`li'
-     Number: height of the screen.
-
-`ll'
-     String to position cursor at lower left corner.
-
-`lm'
-     Number: lines of display memory.
-
-`LP'
-     Flag: writing to last column of last line will not scroll.
-
-`mb'
-     String to enter blinking mode.
-
-`md'
-     String to enter double-bright mode.
-
-`me'
-     String to turn off all appearance modes
-
-`mh'
-     String to enter half-bright mode.
-
-`mi'
-     Flag: cursor motion in insert mode is safe.
-
-`mk'
-     String to enter invisible mode.
-
-`mm'
-     String to enable the functioning of the Meta key.
-
-`mo'
-     String to disable the functioning of the Meta key.
-
-`mp'
-     String to enter protected mode.
-
-`mr'
-     String to enter reverse-video mode.
-
-`ms'
-     Flag: cursor motion in standout mode is safe.
-
-`nc'
-     Obsolete flag: do not use ASCII carriage-return on this terminal.
-
-`nd'
-     String to move the cursor right one column.
-
-`NF'
-     Flag: do not use XON/XOFF flow control.
-
-`nl'
-     Obsolete alternative name for the `do' and `sf' capabilities.
-
-`ns'
-     Flag: the terminal does not normally scroll for sequential output.
-
-`nw'
-     String to move to start of next line, possibly clearing rest of
-     old line.
-
-`os'
-     Flag: terminal can overstrike.
-
-`pb'
-     Number: the lowest baud rate at which padding is actually needed.
-
-`pc'
-     String containing character for padding.
-
-`pf'
-     String to terminate redirection of output to the printer.
-
-`po'
-     String to redirect further output to the printer.
-
-`pO'
-     String to redirect N characters ofoutput to the printer.
-
-`ps'
-     String to print the screen on the attached printer.
-
-`rc'
-     String to move to last saved cursor position.
-
-`RI'
-     String to move cursor right N columns.
-
-`rp'
-     String to output character C repeated N times.
-
-`rs'
-     String to reset the terminal from any strange modes.
-
-`sa'
-     String to turn on an arbitrary combination of appearance modes.
-
-`sc'
-     String to save the current cursor position.
-
-`se'
-     String to leave standout mode.
-
-`sf'
-     String to scroll the screen one line up.
-
-`SF'
-     String to scroll the screen N lines up.
-
-`sg'
-     Number: width of magic standout cookie.  Absent if magic cookies
-     are not used.
-
-`so'
-     String to enter standout mode.
-
-`sr'
-     String to scroll the screen one line down.
-
-`SR'
-     String to scroll the screen N line down.
-
-`st'
-     String to set tab stop at current cursor column on all lines.
-     programs.
-
-`ta'
-     String to move the cursor right to the next hardware tab stop
-     column.
-
-`te'
-     String to return terminal to settings for sequential output.
-
-`ti'
-     String to initialize terminal for random cursor motion.
-
-`ts'
-     String to move the terminal cursor into the status line.
-
-`uc'
-     String to underline one character and move cursor right.
-
-`ue'
-     String to turn off underline mode
-
-`ug'
-     Number: width of underlining magic cookie.  Absent if underlining
-     doesn't use magic cookies.
-
-`ul'
-     Flag: underline by overstriking with an underscore.
-
-`up'
-     String to move the cursor vertically up one line.
-
-`UP'
-     String to move cursor vertically up N lines.
-
-`us'
-     String to turn on underline mode
-
-`vb'
-     String to make the screen flash.
-
-`ve'
-     String to return the cursor to normal.
-
-`vi'
-     String to make the cursor invisible.
-
-`vs'
-     String to enhance the cursor.
-
-`wi'
-     String to set the terminal output screen window.
-
-`ws'
-     Number: the width of the status line.
-
-`xb'
-     Flag: superbee terminal.
-
-`xn'
-     Flag: cursor wraps in a strange way.
-
-`xs'
-     Flag: clearing a line is the only way to clear the appearance
-     modes of positions in that line (or, only way to remove magic
-     cookies on that line).
-
-`xt'
-     Flag: Teleray 1061; several strange characteristics.
-
-\1f
-File: termcap.info,  Node: Var Index,  Next: Cap Index,  Prev: Summary,  Up: Top
-
-Variable and Function Index
-***************************
-
-* Menu:
-
-* BC:                                   tgoto.
-* ospeed:                               Output Padding.
-* PC:                                   Output Padding.
-* tgetent:                              Find.
-* tgetflag:                             Interrogate.
-* tgetnum:                              Interrogate.
-* tgetstr:                              Interrogate.
-* tgoto:                                tgoto.
-* tparam:                               tparam.
-* tputs:                                Output Padding.
-* UP:                                   tgoto.
-
diff --git a/lib/termcap/grot/termcap.info-4 b/lib/termcap/grot/termcap.info-4
deleted file mode 100644 (file)
index 4b8bf79..0000000
+++ /dev/null
@@ -1,220 +0,0 @@
-This is Info file ./termcap.info, produced by Makeinfo-1.55 from the
-input file ./termcap.texi.
-
-   This file documents the termcap library of the GNU system.
-
-   Copyright (C) 1988 Free Software Foundation, Inc.
-
-   Permission is granted to make and distribute verbatim copies of this
-manual provided the copyright notice and this permission notice are
-preserved on all copies.
-
-   Permission is granted to copy and distribute modified versions of
-this manual under the conditions for verbatim copying, provided that
-the entire resulting derived work is distributed under the terms of a
-permission notice identical to this one.
-
-   Permission is granted to copy and distribute translations of this
-manual into another language, under the above conditions for modified
-versions, except that this permission notice may be stated in a
-translation approved by the Foundation.
-
-\1f
-File: termcap.info,  Node: Cap Index,  Next: Index,  Prev: Var Index,  Up: Top
-
-Capability Index
-****************
-
-* Menu:
-
-* ae:                                   Standout.
-* al:                                   Insdel Line.
-* AL:                                   Insdel Line.
-* am:                                   Wrapping.
-* as:                                   Standout.
-* bc:                                   Cursor Motion.
-* bl:                                   Bell.
-* bs:                                   Cursor Motion.
-* bt:                                   Cursor Motion.
-* bw:                                   Cursor Motion.
-* CC:                                   Basic.
-* cd:                                   Clearing.
-* ce:                                   Clearing.
-* ch:                                   Cursor Motion.
-* cl:                                   Clearing.
-* cm:                                   Cursor Motion.
-* CM:                                   Cursor Motion.
-* co:                                   Screen Size.
-* cr:                                   Cursor Motion.
-* cS:                                   Scrolling.
-* cs:                                   Scrolling.
-* ct:                                   Initialization.
-* cv:                                   Cursor Motion.
-* da:                                   Scrolling.
-* dB:                                   Pad Specs.
-* db:                                   Scrolling.
-* dC:                                   Pad Specs.
-* DC:                                   Insdel Char.
-* dc:                                   Insdel Char.
-* dF:                                   Pad Specs.
-* dl:                                   Insdel Line.
-* DL:                                   Insdel Line.
-* dm:                                   Insdel Char.
-* dN:                                   Pad Specs.
-* do:                                   Cursor Motion.
-* DO:                                   Cursor Motion.
-* ds:                                   Status Line.
-* dT:                                   Pad Specs.
-* ec:                                   Clearing.
-* ed:                                   Insdel Char.
-* ei:                                   Insdel Char.
-* eo:                                   Basic.
-* es:                                   Status Line.
-* ff:                                   Cursor Motion.
-* fs:                                   Status Line.
-* gn:                                   Basic.
-* hc:                                   Basic.
-* hd:                                   Half-Line.
-* ho:                                   Cursor Motion.
-* hs:                                   Status Line.
-* hu:                                   Half-Line.
-* hz:                                   Basic.
-* i1:                                   Initialization.
-* i3:                                   Initialization.
-* IC:                                   Insdel Char.
-* ic:                                   Insdel Char.
-* if:                                   Initialization.
-* im:                                   Insdel Char.
-* in:                                   Insdel Char.
-* ip:                                   Insdel Char.
-* is:                                   Initialization.
-* it:                                   Initialization.
-* K1...K5:                              Keypad.
-* k1...k9:                              Keypad.
-* kA...kT:                              Keypad.
-* ka...ku:                              Keypad.
-* km:                                   Meta Key.
-* l0...l9:                              Keypad.
-* le:                                   Cursor Motion.
-* LE:                                   Cursor Motion.
-* li:                                   Screen Size.
-* ll:                                   Cursor Motion.
-* lm:                                   Scrolling.
-* LP:                                   Wrapping.
-* mb:                                   Standout.
-* md:                                   Standout.
-* me:                                   Standout.
-* mh:                                   Standout.
-* mi:                                   Insdel Char.
-* mk:                                   Standout.
-* mm:                                   Meta Key.
-* mo:                                   Meta Key.
-* mp:                                   Standout.
-* mr:                                   Standout.
-* ms:                                   Standout.
-* ms:                                   Underlining.
-* nc:                                   Cursor Motion.
-* nd:                                   Cursor Motion.
-* NF:                                   Initialization.
-* nl:                                   Cursor Motion.
-* ns:                                   Scrolling.
-* nw:                                   Cursor Motion.
-* os:                                   Basic.
-* pb:                                   Pad Specs.
-* pc:                                   Pad Specs.
-* pf:                                   Printer.
-* pO:                                   Printer.
-* po:                                   Printer.
-* ps:                                   Printer.
-* rc:                                   Cursor Motion.
-* RI:                                   Cursor Motion.
-* rp:                                   Basic.
-* rs:                                   Initialization.
-* sa:                                   Standout.
-* sc:                                   Cursor Motion.
-* se:                                   Standout.
-* SF:                                   Scrolling.
-* sf:                                   Scrolling.
-* sg:                                   Standout.
-* so:                                   Standout.
-* SR:                                   Scrolling.
-* sr:                                   Scrolling.
-* st:                                   Initialization.
-* ta:                                   Cursor Motion.
-* te:                                   Initialization.
-* ti:                                   Initialization.
-* ts:                                   Status Line.
-* uc:                                   Underlining.
-* ue:                                   Underlining.
-* ug:                                   Underlining.
-* ul:                                   Underlining.
-* up:                                   Cursor Motion.
-* UP:                                   Cursor Motion.
-* us:                                   Underlining.
-* vb:                                   Bell.
-* ve:                                   Cursor Visibility.
-* vi:                                   Cursor Visibility.
-* vs:                                   Cursor Visibility.
-* wi:                                   Windows.
-* ws:                                   Status Line.
-* xb:                                   Basic.
-* xn:                                   Wrapping.
-* xs:                                   Standout.
-* xt:                                   Cursor Motion.
-* xt:                                   Standout.
-
-\1f
-File: termcap.info,  Node: Index,  Prev: Cap Index,  Up: Top
-
-Concept Index
-*************
-
-* Menu:
-
-* %:                                    Encode Parameters.
-* appearance modes:                     Standout.
-* bell:                                 Bell.
-* clearing the screen:                  Clearing.
-* command character:                    Basic.
-* cursor motion:                        Cursor Motion.
-* delete character:                     Insdel Char.
-* delete line:                          Insdel Line.
-* delete mode:                          Insdel Char.
-* description format:                   Format.
-* erasing:                              Clearing.
-* generic terminal type:                Basic.
-* home position:                        Cursor Motion.
-* inheritance:                          Inheriting.
-* initialization:                       Initialization.
-* insert character:                     Insdel Char.
-* insert line:                          Insdel Line.
-* insert mode:                          Insdel Char.
-* line speed:                           Output Padding.
-* magic cookie:                         Standout.
-* meta key:                             Meta Key.
-* names of terminal types:              Naming.
-* overstrike:                           Basic.
-* padding:                              Pad Specs.
-* padding:                              Padding.
-* parameters:                           Parameters.
-* printer:                              Printer.
-* repeat output:                        Basic.
-* reset:                                Initialization.
-* screen size:                          Screen Size.
-* screen size:                          Naming.
-* screen size:                          Screen Size.
-* scrolling:                            Scrolling.
-* standout:                             Standout.
-* status line:                          Status Line.
-* Superbee:                             Basic.
-* tab stops:                            Initialization.
-* termcap:                              Introduction.
-* terminal flags (kernel):              Initialize.
-* underlining:                          Underlining.
-* visibility:                           Cursor Visibility.
-* visible bell:                         Bell.
-* window:                               Windows.
-* wrapping:                             Wrapping.
-* wrapping:                             Naming.
-
-
diff --git a/lib/termcap/grot/termcap.src b/lib/termcap/grot/termcap.src
deleted file mode 100644 (file)
index e214fcc..0000000
+++ /dev/null
@@ -1,9888 +0,0 @@
-####### TERMINAL TYPE DESCRIPTIONS SOURCE FILE
-#
-#      Version 9.8.1
-#      termcap syntax
-#
-#      Eric S. Raymond         (current maintainer)
-#      John Kunze, Berkeley
-#      Craig Leres, Berkeley
-#
-# Please e-mail changes to terminfo@ccil.org.  The old termcap@berkeley.edu
-# address is no longer valid.
-#
-# PURPOSE OF THIS FILE:
-#
-# This file describes the capabilities of various character-cell terminals,
-# as needed by software such as screen-oriented editors.
-#
-# Pointers to related resources (including the ncurses distribution) may
-# be found at <http://www.ccil.org/~esr/ncurses.html>.
-#
-# FILE FORMAT:
-#
-# The version you are looking at may be in any of three formats: master
-# (terminfo with OT capabilities), stock terminfo, or termcap.  You can tell
-# which by the format given in the header above.
-#
-# The master format is accepted and generated by the terminfo tools in the
-# ncurses suite; it differs from stock (System V-compatible) terminfo only
-# in that it admits a group of capabilities (prefixed `OT') equivalent to
-# various obsolete termcap capabilities.  You can, thus, convert from master
-# to stock terminfo simply by filtering with `sed "/OT[^,]*,/s///"'; but if
-# you have ncurses `tic -I' is nicer.
-#
-# The termcap version is generated automatically from the master version
-# using tic -C.  This filtering leaves in the OT capabilities under their
-# original termcap names.  All translated entries fit within the
-# 1023-byte string-table limit of archaic termcap libraries except where
-# explicitly noted below.
-#
-# For details on these formats, see terminfo(5) in the ncurses distribution,
-# and termcap(5) in the 4.4BSD Unix Programmer's Manual.  Be aware that 4.4BSD
-# curses has been declared obsolete by the caretakers of the 4.4BSD sources
-# as of June 1995; they are encouraging everyone to migrate to ncurses.
-#
-# Note: unlike some other distributed terminfo files (Novell Unix & SCO's),
-# no entry in this file has embedded comments.  This is so source translation
-# to termcap only has to carry over leading comments.  Also, no name field
-# contains embedded whitespace (such whitespace confuses rdist).
-#
-# Further note: older versions of this file were often installed with an editor
-# script (reorder) that moved the most common terminal types to the front of
-# the file.  This should no longer be necessary, as the file is now ordered
-# roughly by type frequency with ANSI/VT100 and other common types up front.
-#
-# CONTINUITY WITH HISTORICAL VERSIONS:
-#
-# The last /etc/termcap version maintained by John Kunze was 8.3, dated 8/5/94.
-# Releases 9 and up are maintained by Eric Raymond as part of the ncurses
-# project.
-#
-# This file contains all the capability information present in John Kunze's
-# last version of the termcap master file, except as noted in the change 
-# comments at end of file.  Some information about very ancient obsolete
-# capabilities has been moved to comments.  Some all-numeric names of older
-# terminals have been retired.
-#
-# The 9.1.0 version of this file was translated from a syntax-corrected copy of
-# 8.3, then mechanically checked against 8.3 using Emacs Lisp code written for
-# the purpose.  Unless the ncurses tic implementation and the Lisp code were
-# making perfectly synchronized mistakes which I then failed to catch by
-# eyeball, the translation was correct and perfectly information-preserving.
-#
-# Some information has been merged in from terminfo files distributed by
-# USL and SCO (see COPYRIGHTS AND OTHER DELUSIONS below).  Much information
-# comes from vendors who maintain official terminfos for their hardware
-# (notably DEC and Wyse).
-#
-# A detailed change history is included at the end of this file.
-#
-# FILE ORGANIZATION:
-#
-# Comments in this file begin with # - they cannot appear in the middle
-# of a terminfo/termcap entry.  Individual capabilities are commented out by
-# placing a period between the colon and the capability name.
-#
-# Starting with version 9.0.0, the file is divided up into major sections
-# (headed by lines beginning with "########") and minor sections (beginning
-# with "####"); do
-#
-#      grep "^####" <file> | more
-#
-# to see a listing of section headings.  The intent of the divisions is
-# (a) to make it easier to find things, and (b) to order the database so
-# that important and frequently-encountered terminal types are near the
-# front (so that you'll get reasonable search efficiency even if you don't
-# use reorder).  Minor sections usually correspond to manufacturers or
-# standard terminal classes.  Parenthesized words following manufacturer
-# names are type prefixes or product line names used by that manufacturers.
-#
-# Finally, because this file is released in both terminfo and termcap formats,
-# most references to termcap names in comments are bracketed with colons (the
-# termcap separator) so they can be distinguished from terminfo capability
-# names.
-#
-# HOW TO READ THE ENTRIES:
-#
-# The first name in an entry is the canonical name for the model or
-# type, last entry is a verbose description.  Others are mnemonic synonyms for
-# the terminal.
-#
-# Terminal names look like <manufacturer> <model> - <modes/options>
-# The part to the left of the dash, if a dash is present, describes the
-# particular hardware of the terminal.  The part to the right may be used
-# for flags indicating special ROMs, extra memory, particular terminal modes,
-# or user preferences.
-#
-# All names should be in lower case, for consistency in typing.
-#
-# The following are conventionally used suffixes:
-#      mono    suppress color support
-#      rv      Terminal in reverse video mode (black on white)
-#      2p      Has two pages of memory.  Likewise 4p, 8p, etc.
-#      w       Wide - in 132 column mode.
-#      pp      Has a printer port which is used.
-#      na      No arrow keys - termcap ignores arrow keys which are
-#              actually there on the terminal, so the user can use
-#              the arrow keys locally.
-#      nam     No auto-margin - suppress am capability
-#      mc      Magic-cookie.  Some terminals (notably older Wyses) can
-#              only support one attribute without magic-cookie lossage.
-#              Their base entry is usually paired with another that
-#              uses magic cookies to support multiple attributes.
-#      vb      Use visible bell (flash) rather than beep.
-#
-# To easily test a new terminal description, put it in $HOME/.termcap
-# and programs will look there before looking in /etc/termcap.
-# You can also setenv TERMPATH to a list of full pathnames (separated
-# by spaces or colons) to be searched by tgetent() in the order listed.
-# The TERMCAP environment variable is usually set to the termcap
-# entry itself to avoid reading files when starting up a program.
-#
-# RELEASE 9 COMMENTS:
-#
-# To avoid search clashes, some older all-numeric names for terminals have
-# been removed (i.e., "33" for the Model 33 Teletype, "2621" for the HP2621).
-# All primary names of terminals now have alphanumeric prefixes.
-#
-# Comments marked "esr" are mostly results of applying the termcap-compiler
-# code packaged with ncurses and contemplating the resulting error messages. 
-# In many cases, these indicated obvious fixes to syntax garbled by the
-# composers.  In a few cases, I was able to deduce corrected forms for garbled
-# capabilities by looking at context.  All the information in the original
-# entries is preserved in the comments.
-#
-# I changed :MT: to :km: (the 4.4BSD name) everywhere.  I commented out some
-# capabilities (EP, dF, dT, dV, kn, ko, ma, ml, mu, xr, xx) that are no longer
-# used by BSD curses.
-#
-# Entries derived from XENIX use a termcap-extension set that showed up in
-# several entries, notably those for scoansi, ibmpcx, lisa, trs16, fos, and
-# the altos terminals.  Its signature is the use of GS/GE as an as/ae pair.
-# This set of extensions and their translations are described in the extended
-# comment at the end of this file.
-#
-# There is a second, smaller set of extensions used by AT&T terminals and
-# also described in the trailing comment.
-#
-# Besides these and the terminals mentioned above, only the psterm variants,
-# zen50, wsiris and minitel had unknown capabilities that weren't obviously
-# garbled.
-#
-# INTERPRETATION OF USER CAPABILITIES
-#
-# The System V Release 4 and XPG4 terminfo format defines ten string
-# capabilities for use by applications, u0...u9.   In this file, we use
-# certain of these capabilities to describe functions which are not covered
-# by terminfo.  The mapping is as follows:
-#
-#      u9      terminal enquire string (equivalent to ANSI DA)
-#      u8      terminal answerback description
-#      u7      cursor position request (equivalent to VT100 DSR 6)
-#      u6      cursor position report (equivalent to ANSI CPR)
-#
-# The terminal enquire string u9 should elicit an answerback response
-# from the terminal.  Common values for u9 will be ^E (on older ASCII
-# terminals) or \E[c (on newer VT100/ANSI-compatible terminals).
-#
-# The cursor position request (u7) string should elicit a cursor position
-# report.  A typical value (for ANSI/VT100 terminals) is \E[6n.
-#
-# The terminal answerback description (u8) must consist of an expected
-# answerback string.  The string may contain the following scanf(3)-like
-# escapes:
-#
-#      %c      Accept any character
-#      %[...]  Accept any number of characters in the given set
-#
-# The cursor position report (u6) string must contain two scanf(3)-style 
-# %d format elements.  The first of these must correspond to the Y coordinate
-# and the second to the %d.  The typical CPR value is \E[%d;%dR (on VT100/
-# ANSI-compatible terminals).
-#
-# These capabilities are used by tac(1m), the terminfo action checker soon
-# to be distributed with ncurses.
-# 
-# REQUEST FOR CONTACT INFORMATION AND HISTORICAL MATERIAL:
-#
-# As the ANSI standard and variants take firmer hold, and as character-cell
-# terminals are increasingly replaced by X displays, much of this file
-# is becoming a historical document (this is part of the reason for the
-# new organization, which puts ANSI types, xterm, and vt100 up front in
-# confidence that this will catch 95% of new hardware).
-#
-# For the terminal types still alive, I'd like to have manufacturer's
-# contact data (Internet address and/or snail-mail + phone).
-#
-# I'm also interested in enriching the comments so that the latter portions of
-# the file do in fact become a potted history of VDT technology as seen by
-# UNIX hackers.  Ideally, I'd like the headers for each manufacturer to
-# include its live/dead/out-of-the-business status, and for as many
-# terminal types as possible to be tagged with information like years
-# of heaviest use, popularity, and interesting features.
-#
-# I'm especially interested in identifying the obscure entries listed under
-# `Manufacturer unknown' and `Utter unknowns', before the tribal wisdom 
-# about them gets lost.
-#
-# If you have been around long enough to contribute, please read the file
-# with this in mind and send me your annotations.
-#
-# COPYRIGHTS AND OTHER DELUSIONS
-#
-# The BSD ancestor of this file had a standard Regents of the University of
-# California copyright with dates from 1980 to 1993.
-#
-# Some information has been merged in from a terminfo file SCO distributes.
-# It has an obnoxious boilerplate copyright which I'm ignoring because they 
-# took so much of the content from the ancestral BSD versions of this file
-# and didn't attribute it, thereby violating the BSD Regents' copyright.
-#
-# Not that anyone should care.  However many valid functions copyrights may
-# serve, putting one on a termcap/terminfo file with hundreds of anonymous
-# contributors makes about as much sense as copyrighting a wall-full of
-# graffiti -- it's legally dubious, ethically bogus, and patently ridiculous.
-#
-# This file deliberately has no copyright.  It belongs to no one and everyone.
-# If you claim you own it, you will merely succeed in looking like a fool. 
-# Use it as you like.  Use it at your own risk.  Copy and redistribute freely.
-# There are no guarantees anywhere.  Svaha!
-
-######## STANDARD AND SPECIAL TYPES
-#
-# This section describes terminal classes and maker brands that are still
-# quite common.
-#
-
-#### Specials
-#
-# Special "terminals".  These are used to label tty lines when you don't
-# know what kind of terminal is on it.  The characteristics of an unknown
-# terminal are the lowest common denominator - they look about like a ti 700.
-# The last one, "other", is like unknown but it allows an escape from software
-# that insists that a "real" unknown terminal is merely so far unspecified.
-#
-
-dumb:\
-       :am:\
-       :co#80:\
-       :bl=^G:cr=^M:do=^J:sf=^J:
-unknown:\
-       :gn:\
-       :tc=dumb:
-other|none of the above, but not exactly unknown:\
-       :am:gn:\
-       :co#80:\
-       :cl=^M^J:do=^J:ho=^M:
-
-arpanet|bussiplexer|dialup|ethernet|network|net|patch|plugboard|switch|network switch or dialup:\
-       :tc=unknown:
-lpr|printer|print|printing|line printer:\
-       :hc:os:\
-       :co#132:li#66:\
-       :bl=^G:cr=^M:do=^J:ff=^L:le=^H:sf=^J:
-
-#### ANSI terminals and terminal emulators
-#
-# See near the end of this file for details on ANSI conformance.
-# Don't mess with these entries!  Lots of other entries depend on them!
-#
-# This section lists entries in a least-capable to most-capable order.
-# if you're in doubt about what `ANSI' matches yours, try them in that
-# order and back off from the first that breaks.
-
-# (ansi: changed ":pt:" to ":it#8:" -- esr)
-ansi-mini|any ansi terminal with pessimistic assumptions:\
-       :am:bs:\
-       :co#80:it#8:li#24:\
-       :ce=\E[K:cl=\E[;H\E[2J:cm=\E[%i%d;%dH:do=\E[B:\
-       :ho=\E[H:le=\E[D:nd=\E[C:up=\E[A:
-
-# Color controls corresponding to the ANSI.SYS de-facto standard
-# (This is not a standalone entry)
-ansi-pc-color:\
-       :Co#8:NC#3:pa#64:\
-       :AB=\E[4%p1%dm:AF=\E[3%p1%dm:\
-       :..Sb=\E[4%?%p1%{1}%=%t4%e%p1%{3}%=%t6%e%p1%{4}%=%t1%e%p1%{6}%=%t3%e%p1%d%;m:\
-       :..Sf=\E[3%?%p1%{1}%=%t4%e%p1%{3}%=%t6%e%p1%{4}%=%t1%e%p1%{6}%=%t3%e%p1%d%;m:\
-       :op=\E[37;40m:
-
-# Procomm and some other ANSI emulations don't recognize all of the ANSI-
-# standard capabilities.  This entry deletes cuu, cuf, cud, cub, and vpa/hpa
-# capabilities, forcing curses to use repetitions of cuu1, cuf1, cud1 and cub1.
-# Also deleted ich and ich1, as QModem up to 5.03 doesn't recognize these.
-# Finally, we delete rep and ri, which seem to confuse many emulators.
-# On the other hand, we can count on these programs doing rmacs/smacs/sgr.
-# From: Eric S. Raymond <esr@snark.thyrsus.com> July 25 1995
-pcansi-mono|ibm-pc terminal programs claiming to be ansi (mono mode):\
-       :am:bs:mi:ms:pt:\
-       :co#80:it#8:li#24:\
-       :ae=\E[10m:al=\E[L:as=\E[12m:bl=^G:bt=\E[Z:cd=\E[J:\
-       :ce=\E[K:cl=\E[H\E[J:cm=\E[%i%d;%dH:cr=^M:ct=\E[2g:\
-       :dc=\E[P:dl=\E[M:do=\E[B:ho=\E[H:kb=^H:kd=\E[B:\
-       :kh=\E[H:kl=\E[D:kr=\E[C:ku=\E[A:le=\E[D:mb=\E[5m:\
-       :md=\E[1m:me=\E[0m:mk=\E[9m:mr=\E[7m:nd=\E[C:\
-       :..sa=\E[0;10%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;%?%p7%t;8%;%?%p8%t;11%;%?%p9%t;12%;m:\
-       :se=\E[m:sf=^J:so=\E[7m:st=\EH:ta=^I:ue=\E[m:up=\E[A:\
-       :us=\E[4m:
-pcansi-mono25|ansi25|ibm-pc terminal programs with 25 lines (mono mode):\
-       :li#25:\
-       :tc=pcansi-mono:
-pcansi-mono33|ansi33|ibm-pc terminal programs with 33 lines (mono mode):\
-       :li#33:\
-       :tc=pcansi-mono:
-pcansi-mono43|ansi43|ibm-pc terminal programs with 43 lines (mono mode):\
-       :li#43:\
-       :tc=pcansi-mono:
-# The color versions.  All PC emulators do color...
-pcansi|ibm-pc terminal programs claiming to be ansi:\
-       :tc=ansi-pc-color:tc=pcansi-mono:
-pcansi-25|ansi25|ibm-pc terminal programs with 25 lines:\
-       :li#25:\
-       :tc=pcansi:
-pcansi-33|ansi33|ibm-pc terminal programs with 33 lines:\
-       :li#33:\
-       :tc=pcansi:
-pcansi-43|ansi43|ibm-pc terminal programs with 43 lines:\
-       :li#43:\
-       :tc=pcansi:
-
-# From: Eric S. Raymond <esr@snark.thyrsus.com> Feb 3 1995
-# ansi-mono -- full X.364 with ANSI.SYS-compatible attributes, no color.
-# Function-key mappings aren't in X3.64 but these are pretty standard.
-# If you want pound signs rather than dollars, replace `B' with `A'
-# in the s?ds capabilities.
-ansi-mono|ANSI X3.64-1979 terminal with ANSI.SYS compatible attributes:\
-       :5i:\
-       :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:F1=\E[W:\
-       :F2=\E[X:IC=\E[%d@:LE=\E[%dD:RI=\E[%dC:SF=\E[%dS:\
-       :SR=\E[%dT:UP=\E[%dA:cb=\E[1K:ch=\E[%dG:ct=\E[2g:\
-       :cv=\E[%dd:ec=\E[%dX:ei=:im=:k1=\E[M:k2=\E[N:k3=\E[O:\
-       :k4=\E[P:k5=\E[Q:k6=\E[R:k7=\E[S:k8=\E[T:k9=\E[U:\
-       :k;=\E[V:kB=\E[Z:kI=\E[L:kb=^H:kd=\E[B:kl=\E[D:\
-       :kr=\E[C:ku=\E[A:me=\E[0;10m:nw=\r\E[S:pf=\E[4i:\
-       :po=\E[5i:..rp=%p1%c\E[%p2%{1}%-%db:s0=\E(B:s1=\E)B:\
-       :s2=\E*B:s3=\E+B:\
-       :..sa=\E[0;10%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;%?%p7%t;8%;%?%p8%t;11%;%?%p9%t;12%;m:\
-       :ta=\E[I:tc=pcansi:
-
-# ansi -- this terminfo expresses the largest subset of X3.64 that will fit in
-# standard terminfo.  Assumes ANSI.SYS-compatible attributes and color
-# From: Eric S. Raymond <esr@snark.thyrsus.com> Feb 12 1995
-ansi|ansi/pc-term compatible with color:\
-       :u6=\E[%d;%dR:u7=\E[6n:..u8=\E[?%[;0123456789]c:\
-       :u9=\E[c:tc=ansi-pc-color:tc=ansi-mono:
-
-#
-# ANSI.SYS entries
-#
-# Cannot use :pt:, it does not work (why?).  :ho: seems required (why?). [gts]
-# Caution: 4.3 BSD tset does not pass li#25 to stty rows except during login?
-# :cl: clears attributes and sets wrap at margin before clearing the screen.
-# (ansi.sys: removed obsolete ":ma=^Hh^Jj^Kk^Ll^^H:" -- esr)
-# From: greg small <gts@populi.berkeley.edu>
-ansi.sys|ansisys|PC-DOS 3.1 ANSI.SYS:\
-       :am:bs:ms:\
-       :co#80:li#25:\
-       :ae=\E[10:as=\E[12:ce=\E[K:cl=\E[m\E[7h\E[2J:\
-       :cm=\E[%i%d;%dH:ho=\E[H:\
-       :is=U1 PC-DOS 3.1 ANSI.SYS 9-23-86\n\E[m\E[7h:kd=^J:\
-       :kh=^^:kl=^H:kr=^L:ku=^K:md=\E[1m:me=\E[0;10m:\
-       :mr=\E[7m:nd=\E[C:se=\E[m:so=\E[1m:ue=\E[m:up=\E[A:\
-       :us=\E[4m:
-#
-# Define IBM PC keypad keys for vi as per MS-Kermit while using ANSI.SYS.
-# This should only be used when the terminal emulator cannot redefine the keys.
-# Since redefining keys with ansi.sys also affects PC-DOS programs, the key
-# definitions must be restored.  If the terminal emulator is quit while in vi
-# or others using :ks:ke:, the keypad keys will not be defined as per PC-DOS.
-# The PgUp and PgDn are prefixed with ESC so that tn3270 can be used on Unix
-# (^U and ^D are already defined for tn3270).  The ESC is safe for vi but it
-# does "beep".  ESC ESC i is used for Ins to avoid tn3270 ESC i for coltab.
-# Left arrow is always BS, because PC-dos can tolerate this change.
-# Caution: vi is limited to 256 string bytes, longer crashes or weirds out vi.
-# Consequently the End keypad key could not be set (it is relatively safe and
-# actually useful because it sends ^@ O, which beeps and opens a line above).
-ansi.sysk|ansisysk|PC-DOS 3.1 ANSI.SYS with keypad redefined for vi:\
-       :is=U2 PC-DOS 3.1 ANSI.SYS with keypad redefined for vi 9-29-86\n\E[;75;8p:\
-       :ke=\E[;71;0;71p\E[;72;0;72p\E[;73;0;73p\E[;77;0;77p\E[;80;0;80p\E[;81;0;81p\E[;82;0;82p\E[;83;0;83p:\
-       :ks=\E[;71;30p\E[;72;11p\E[;73;27;21p\E[;77;12p\E[;80;10p\E[;81;27;4p\E[;82;27;27;105p\E[;83;127p:tc=ansi.sys:
-#
-# Adds ins/del line/character, hence vi reverse scrolls/inserts/deletes nicer.
-nansi.sys|nansisys|PC-DOS Public Domain NANSI.SYS:\
-       :al=\E[1L:dc=\E[1P:dl=\E[1M:ei=:ic=\E[1@:im=:\
-       :is=U3 PC-DOS Public Domain NANSI.SYS 9-23-86\n:tc=ansi.sys:
-#
-# See ansi.sysk and nansi.sys above.
-nansi.sysk|nansisysk|PC-DOS Public Domain NANSI.SYS with keypad redefined for vi:\
-       :al=\E[1L:dc=\E[1P:dl=\E[1M:ei=:ic=\E[1@:im=:\
-       :is=U4 PC-DOS Public Domain NANSI.SYS with keypad redefined for vi 9-29-86\n\E[;75;8p:tc=ansi.sysk:
-
-#### ANSI console types
-#
-
-# This entry is good for the 1.1.47 version of the Linux console driver.
-#
-# It assumes that you want A_PROTECT mapped to the alternate character set
-# mode that permits IBM ROM characters to be displayed (this is the assumption
-# used by ncurses version 1.9 and after, in order not to collide with the
-# internationalization attribute values specified in the XSI Curses standard).
-#
-# We use \E11m for rmacs rather than \E12m so the acsc string can use the ROM
-# graphics for control characters such as the diamond, up arrow and down-arrow.
-# This trick could work with other Intel consoles like the att6386 and pc3.
-#
-# Note: there are numerous broken linux entries out there, which didn't screw
-# up BSD termcap but hose ncurses's smarter cursor-movement optimization.
-# One common pathology is an incorrect tab length of 4.  Also note that the 
-# hpa=\E[%dG/vpa=\E[%dd capabilities seem not to be reliable.  To reproduce
-# the bug, re-introduce them and run worm -T 200 212 from the ncurses
-# test suite, save the trace, then worm -N -T 200 212.  Observe that the first
-# run fails to properly delete some worm segments, then diff the trace files.
-#
-# From: Eric S. Raymond <esr@snark.thyrsus.com> 23 July 1995
-linux|linux console:\
-       :am:bs:eo:mi:ms:ut:xn:xo:\
-       :Co#8:co#80:it#8:li#25:pa#64:\
-       :&7=^Z:@7=\E[4~:AB=\E[4%p1%dm:AF=\E[3%p1%dm:\
-       :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:F1=\E[23~:F2=\E[24~:\
-       :F3=\E[25~:F4=\E[26~:F5=\E[28~:F6=\E[29~:F7=\E[31~:\
-       :F8=\E[32~:F9=\E[33~:FA=\E[34~:IC=\E[%d@:K2=\E[G:\
-       :S2=\E[11m:S3=\E[10m:Sb=\E[%+(m:Sf=\E[%+^^m:\
-       :ac=`\004a\261f\370g\361h\260j\331k\277l\332m\300n\305o~q\304r\362s_t\303u\264v\301w\302x\263y\371z\372{\373|\374}\375~\376.\031-\030\054\021+^P0\333:\
-       :ae=\E[10m:al=\E[L:as=\E[11m:bl=^G:cd=\E[J:ce=\E[K:\
-       :cl=\E[H\E[J:cm=\E[%i%d;%dH:cr=^M:cs=\E[%i%d;%dr:\
-       :ct=\E[3g:dc=\E[P:dl=\E[M:do=^J:ei=\E[4l:ho=\E[H:\
-       :ic=\E[@:im=\E[4h:k1=\E[[A:k2=\E[[B:k3=\E[[C:\
-       :k4=\E[[D:k5=\E[[E:k6=\E[17~:k7=\E[18~:k8=\E[19~:\
-       :k9=\E[20~:k;=\E[21~:kD=\E[3~:kI=\E[2~:kN=\E[6~:\
-       :kP=\E[5~:kb=^H:kd=\E[B:kh=\E[1~:kl=\E[D:kr=\E[C:\
-       :ku=\E[A:le=^H:mb=\E[5m:md=\E[1m:me=\E[0;10m:\
-       :mr=\E[7m:nd=\E[C:nw=^M^J:op=\E[37;40m:r1=\Ec:rc=\E8:\
-       :..sa=\E[0;10%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;%?%p7%t;8%;%?%p8%t;11%;%?%p9%t;11%;m:\
-       :sc=\E7:se=\E[m:sf=^J:so=\E[7m:sr=\EM:st=\EH:ta=^I:\
-       :u6=\E[%d;%dR:u7=\E[6n:u8=\E[?6c:u9=\E[c:ue=\E[24m:\
-       :up=\E[A:us=\E[4m:vb=\E[?5h\E[?5l:ve=\E[?25h:\
-       :vi=\E[?25l:
-linux-mono|Linux console, no color:\
-       :Co@:pa@:\
-       :AB@:Sb@:Sf@:tc=linux:
-
-# See the note on ICH/ICH1 VERSUS RMIR/SMIR near the end of file
-linux-nic|linux with ich/ich1 suppressed for non-curses programs:\
-       :IC@:ei=:ic@:im=:tc=linux:
-
-# SCO console and SOS-Syscons console for 386bsd
-# (scoansi: had unknown capabilities
-#      :Gc=N:Gd=K:Gh=M:Gl=L:Gu=J:Gv=\072:\
-#      :GC=E:GD=B:GH=D:GL=\64:GU=A:GV=\63:GR=C:RT=^J:
-#      :G1=?:G2=Z:G3=@:G4=Y:G5=;:G6=I:G7=H:G8=<:\
-#      :CW=\E[M:NU=\E[N:RF=\E[O:RC=\E[P:\
-#      :WL=\E[S:WR=\E[T:CL=\E[U:CR=\E[V:\
-# I renamed GS/GE/HM/EN/PU/PD and mapped ":pt:" to ":it#8:" -- esr)
-scoansi|SCO Extended ANSI standard crt:\
-       :am:bs:eo:pt:\
-       :co#80:it#8:li#25:\
-       :@7=\E[F:ae=\E[10m:al=\E[L:as=\E[12m:bt=\E[Z:cd=\E[J:\
-       :ce=\E[K:cl=\E[2J\E[H:cm=\E[%i%d;%dH:dc=\E[P:dl=\E[M:\
-       :do=\E[B:ei=:ho=\E[H:ic=\E[@:im=:k1=\E[M:k2=\E[N:\
-       :k3=\E[O:k4=\E[P:k5=\E[Q:k6=\E[R:k7=\E[S:k8=\E[T:\
-       :k9=\E[U:k;=\E[V:kN=\E[G:kP=\E[I:kb=^H:kd=\E[B:\
-       :kh=\E[H:kl=\E[D:kr=\E[C:ku=\E[A:mb=\E[5m:md=\E[1m:\
-       :me=\E[m:nd=\E[C:se=\E[m:sf=\E[S:so=\E[7m:sr=\E[T:\
-       :ue=\E[m:up=\E[A:us=\E[4m:
-
-# From: Eric Raymond <esr@snark.thyrsus.com> Wed Jan 18 17:14:34 EST 1995
-att6386|AT386|at386|386AT|386at|AT&T WGS 6386 console:\
-       :am:bw:eo:xo:\
-       :co#80:it#8:li#25:\
-       :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:F1=\EOZ:\
-       :F2=\EOA:IC=\E[%d@:LE=\E[%dD:RI=\E[%dC:SF=\E[%dS:\
-       :SR=\E[%dT:UP=\E[%dA:\
-       :ac=``a1fxgqh0jYk?lZm@nEooppqDrrsstCu4vAwBx3yyzz{{||}}~~:\
-       :ae=\E[10m:al=\E[1L:as=\E[12m:bl=^G:bt=\E[Z:cd=\E[J:\
-       :ce=\E[K:ch=\E[%i%dG:cl=\E[2J\E[H:cm=\E[%i%d;%dH:\
-       :cr=^M:ct=\E[2g:cv=\E[%dd:dc=\E[P:dl=\E[1M:do=\E[B:\
-       :ec=\E[%dX:ei=:ho=\E[H:ic=\E[1@:im=:is=\E[0;10;39m:\
-       :k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:k5=\EOT:k6=\EOU:\
-       :k7=\EOV:k8=\EOW:k9=\EOX:k;=\EOY:kD=\E[P:kI=\E[@:\
-       :kM=\E0:kN=\E[U:kP=\E[V:kb=^H:kd=\E[B:kh=\E[H:\
-       :kl=\E[D:kr=\E[C:ku=\E[A:le=\E[D:mb=\E[5m:md=\E[1m:\
-       :me=\E[0;10m:mk=\E[9m:mr=\E[7m:nd=\E[C:nw=\r\E[S:\
-       :..sa=\E[10m\E[0%?%p1%p3%|%t;7%;%?%p2%t;4%;%?%p4%t;5%;%?%p6%t;1%;%?%p9%t;12%e;10%;%?%p7%t;9%;m:\
-       :se=\E[m:sf=\E[S:so=\E[7m:sr=\E[T:st=\EH:ta=^I:\
-       :ue=\E[m:up=\E[A:us=\E[4m:vb=^G:tc=ansi-pc-color:
-# (pc6300plus: ":KM=/usr/lib/ua/kmap.s5:"; renamed BO/EE/CI/CV -- esr)
-pc6300plus|6300plus:\
-       :am:bs:\
-       :co#80:li#24:\
-       :al=\E[1L:bl=^G:cd=\E[0J:ce=\E[0K:cl=\E[2J\E[H:\
-       :cm=\E[%i%2;%2H:cr=^M:ct=\E[3g:dc=\E[1P:dl=\E[1M:\
-       :do=\E[B:ei=:ho=\E[H:ic=\E[1@:im=:k1=\EOc:k2=\EOd:\
-       :k3=\EOe:k4=\EOf:k5=\EOg:k6=\EOh:k7=\EOi:k8=\EOj:\
-       :k9=\EOk:k;=\EOu:kb=^H:kd=\E[B:kl=\E[D:kr=\E[C:\
-       :ku=\E[A:le=^H:mb=\E[5m:md=\E[1m:me=\E[m:mh=\E[2m:\
-       :mk=\E[9m:mr=\E[7m:nd=\E[C:nw=^M^J:se=\E[m:sf=^J:\
-       :so=\E[7m:st=\EH:ue=\E[m:up=\E[A:us=\E[4m:ve=\E[=1C:\
-       :vi=\E[=C:
-
-#
-#      Terminfo entry for the AT&T Unix PC 7300
-#      from escape(7) in Unix PC 7300 Manual.
-#      Somewhat similar to a vt100-am (but different enough
-#      to redo this from scratch.)
-#
-#      /***************************************************************
-#      *
-#      *           FONT LOADING PROGRAM FOR THE UNIX PC
-#      *
-#      *     This routine loads a font defined in the file ALTFONT
-#      *     into font memory slot #1.  Once the font has been loaded,
-#      *     it can be used as an alternative character set.
-#      *
-#      *     The call to ioctl with the argument WIOCLFONT is the key 
-#      *     to this routine.  For more information, see window(7) in 
-#      *     the PC 7300 documentation.
-#      ***************************************************************/
-#      #include <string.h>             /* needed for strcpy call */
-#      #include <sys/window.h>         /* needed for ioctl call */
-#      #define FNSIZE  60              /* font name size */
-#      #define ALTFONT  "/usr/lib/wfont/special.8.ft"  /* font file */
-#      /*
-#      *     The file /usr/lib/wfont/special.8.ft comes with the
-#      *     standard PC software.  It defines a graphics character set
-#      *     similar to that of the Teletype 5425 terminal.  To view
-#      *     this or other fonts in /usr/lib/wfont, use the command
-#      *     cfont <filename>.  For further information on fonts see
-#      *     cfont(1) in the PC 7300 documentation.
-#      */
-#      
-#      struct altfdata         /* structure for alt font data */
-#      {
-#      short   altf_slot;              /* memory slot number */
-#      char    altf_name[FNSIZE];      /* font name (file name) */
-#      };
-#      ldfont()
-#      {
-#              int wd;         /* window in which altfont will be */
-#              struct altfdata altf;
-#              altf.altf_slot=1;
-#              strcpy(altf.altf_name,ALTFONT);
-#              for (wd =1; wd < 12; wd++) {
-#                   ioctl(wd, WIOCLFONT,&altf);
-#              }
-#      }
-#
-att7300|unixpc|pc7300|3b1|s4|AT&T UNIX PC Model 7300:\
-       :am:xn:xo:\
-       :co#80:it#8:li#24:\
-       :!1=\ESV:!3=\EUD:#1=\EHL:#2=\EHM:#3=\ENJ:#4=\EBW:\
-       :%0=\Ero:%1=\Ehl:%2=\Emk:%4=\Emv:%5=\Enx:%6=\Eop:\
-       :%7=\Eot:%8=\Epv:%9=\Epr:%b=\EMV:%c=\ENX:%d=\EOT:\
-       :%e=\EPV:%g=\ERO:%h=\ERP:%i=\EFW:&0=\ECN:&1=\Ere:\
-       :&2=\Erf:&3=\Erp:&4=\Ers:&6=\Esv:&8=\Eud:&9=\EBG:\
-       :*0=\EFI:*2=\ECP:*3=\ECR:*4=\EDC:*5=\EDL:*6=\Esl:\
-       :*7=\EEN:*8=\ECI:@0=\Efi:@1=\Ebg:@2=\Ecn:@3=\Ecl:\
-       :@4=\Ecm:@5=\Ecp:@6=\Ecr:@7=\Een:@9=\Eex:AL=\E[%dL:\
-       :DL=\E[%dM:DO=\E[%dB:LE=\E[%dD:RI=\E[%dC:UP=\E[%dA:\
-       :ae=\E[10m:al=\E[L:as=\E[11m:bl=^G:bt=\E^I:cd=\E[0J:\
-       :ce=\E[0K:cl=\E[2J\E[H:cm=\E[%i%d;%dH:cr=^M:dl=\E[M:\
-       :do=\E[B:ho=\E[H:i1=^O:k1=\EOP:k2=\EOQ:k3=\EOR:\
-       :k4=\EOS:k5=\E5:k6=\E6:k7=\E7:k8=\E8:kB=\E^I:kC=\Ece:\
-       :kD=\Edc:kE=\Eci:kF=\Erd:kI=\Eim:kN=\Epg:kP=\EPG:\
-       :kR=\Eru:kS=\Ece:kb=^H:kd=\E[B:kh=\Ehm:kl=\E[D:\
-       :kr=\E[C:ku=\E[A:md=\E[7m:me=\E[0;10m:mh=\E[2m:\
-       :mr=\E[7m:nd=\E[C:nw=\EE:se=\E[0m:sf=^J:so=\E[7m:\
-       :sr=\EM:ue=\E[0m:up=\E[A:us=\E[4m:
-
-# From: <davis@unidata.ucar.edu>
-iris-ansi|iris-ansi-net|IRIS emulating ANSI terminal:\
-       :am:\
-       :co#80:it#8:li#40:\
-       :!2=\E[218q:#2=\E[143q:#4=\E[158q:%9=\E[209q:\
-       :%f=\E[210q:%i=\E[167q:&7=\E[217q:*4=\E[P:*7=\E[147q:\
-       :@7=\E[146q:@8=^M:AL=\E[%dL:DL=\E[%dM:DO=\E[%dB:\
-       :F1=\EOR:F2=\EOS:LE=\E[%dD:RI=\E[%dC:UP=\E[%dA:\
-       :al=\E[L:bl=^G:cb=\E[1K:cd=\E[J:ce=\E[K:cl=\E[H\E[2J:\
-       :cm=\E[%i%d;%dH:cr=^M:ct=\E[3g:dl=\E[M:do=^J:ho=\E[H:\
-       :is=\E[?1l\E>\E[?7h\E[100g\E[0m\E7\E[r\E8:k1=\E[001q:\
-       :k2=\E[002q:k3=\E[003q:k4=\E[004q:k5=\E[005q:\
-       :k6=\E[006q:k7=\E[007q:k8=\E[008q:k9=\EOP:k;=\EOQ:\
-       :kB=\E[Z:kD=\177:kI=\E[139q:kM=\E[146q:kN=\E[154q:\
-       :kP=\E[150q:kb=^H:kd=\E[B:kh=\E[H:kl=\E[D:kr=\E[C:\
-       :ku=\E[A:le=\E[D:md=\E[1m:me=\E[m:mr=\E[7m:nd=\E[C:\
-       :nw=\EE:pk=\EP101;%d.y%s\E\\:rc=\E8:sc=\E7:se=\E[m:\
-       :sf=\ED:so=\E[1;7m:sr=\EM:st=\EH:ta=^I:ue=\E[m:\
-       :up=\E[A:us=\E[4m:ve=\E[9/y\E[12/y\E[=6l:\
-       :vs=\E[10/y\E[=1h\E[=2l\E[=6h:
-
-# From: Alex R.N. Wetmore <aw2t@andrew.cmu.edu>
-oldpc3|oibmpc3|IBM PC 386BSD Console:\
-       :am:bs:bw:eo:\
-       :co#80:li#25:\
-       :ac=l\332q\304k\277x\263j\331m\300w\302u\264v\301t\303n\305:\
-       :cd=\E[J:ce=\E[K:cl=\Ec:cm=\E[%i%2;%2H:do=\E[B:\
-       :ho=\E[;H:kd=\E[B:kh=\E[Y:kl=\E[D:kr=\E[C:ku=\E[A:\
-       :md=\E[7m:me=\E[0m\E[1;0x\E[2;7x:nd=\E[C:\
-       :se=\E[1;0x\E[2;7x:sf=\E[S:so=\E[1;7x\E[2;0x:sr=\E[T:\
-       :ue=\E[1;0x\E[2;7x:up=\E[A:us=\E[1;7x\E[2;0x:
-
-# BSD/OS console emulator
-# The emulator supports many of the additional console features
-# listed in the iBSC2 (e.g. color and character-set selection).
-# The console will also work with fewer lines after doing
-# "stty rows NN", e.g. to use 24 lines.
-# (This is the entry BSDI ships)
-pc3|ibmpc3|IBM PC BSD/OS Console:\
-       :am:bw:eo:km:\
-       :co#80:it#8:li#25:\
-       :AL=\E[%dL:DL=\E[%dM:DO=\E[%dB:LE=\E[%dD:RI=\E[%dC:\
-       :UP=\E[%dA:al=\E[L:bl=^G:cd=\E[J:ce=\E[K:cl=\Ec:\
-       :cm=\E[%i%d;%dH:cr=^M:dl=\E[M:do=^J:ho=\E[H:kH=\E[F:\
-       :kI=\E[L:kN=\E[G:kP=\E[I:kb=^H:kd=\E[B:kh=\E[H:\
-       :kl=\E[D:kr=\E[C:ku=\E[A:le=^H:mb=\E[5m:md=\E[1m:\
-       :me=\E[0m:mh=\E[=8F:mr=\E[7m:nd=\E[C:nw=^M^J:\
-       :rc=\E[=u:sc=\E[=s:se=\E[0m:sf=^J:so=\E[7m:ta=^I:\
-       :up=\E[A:
-pc3-bold|ibmpc3|IBM PC BSD/OS Console with bold instead of underline:\
-       :ue=\E[0m:us=\E[1m:tc=pc3:
-
-# The following is a version of the ibm-pc entry distributed with PC/IX,
-# (Interactive Systems' System 3 for the Big Blue), modified by Richard
-# McIntosh at UCB/CSM.  The :pt: and :uc: have been removed from the original,
-# (the former is untrue, and the latter failed under UCB/man); standout and
-# underline modes have been added.  Note: this entry describes the "native"
-# capabilities of the PC monochrome display, without ANY emulation; most
-# communications packages (but NOT PC/IX connect) do some kind of emulation.
-pcix|PC/IX console:\
-       :am:bs:bw:eo:\
-       :co#80:li#24:\
-       :cd=\E[J:ce=\E[K:cl=\Ec:cm=\E[%i%2;%2H:do=\E[B:\
-       :ho=\E[;H:nd=\E[C:se=\E[0m:so=\E[7m:ue=\E[0m:up=\E[A:\
-       :us=\E[4m:
-
-# (ibmx: this entry formerly included the following unknown capabilities:
-#      :GC=b:GL=v:GR=t:RT=^J:\
-#      :GH=\E[196g:GV=\E[179g:\
-#      :GU=\E[193g:GD=\E[194g:\
-#      :G1=\E[191g:G2=\E[218g:G3=\E[192g:G4=\E[217g:\
-#      :CW=\E[E:NU=\E[F:RF=\E[G:RC=\E[H:\
-#      :WL=\E[K:WR=\E[L:CL=\E[M:CR=\E[N:\
-# I renamed GS/GE/WL/WR/CL/CR/PU/PD/HM/EN; also, removed a duplicate
-# ":kh=\E[Y:" -- esr)
-ibmpcx|xenix|ibmx|IBM PC xenix console display:\
-       :am:bs:ms:\
-       :co#80:li#25:\
-       :@7=\E[d:MR=\E[0m:ae=\E[10m:al=\E[L:as=\E[11m:\
-       :cd=\E[J:ce=\E[K:cl=^L:cm=\E[%d;%dH:dc=\E[P:dl=\E[M:\
-       :do=\E[B:ei=:ho=\E[H:ic=\E[@:im=:k1=\E[K:k2=\E[L:\
-       :k3=\E[M:k4=\E[N:kN=\E[e:kP=\E[Z:kb=^H:kd=\E[B:\
-       :kh=\E[Y:kl=\E[D:kr=\E[C:ku=\E[A:nd=\E[C:se=\E[0m:\
-       :so=\E[7m:ue=\E[m:up=\E[A:us=\E[4m:
-ibmc|ibmcpc|IBM PC xenix color console display:\
-       :tc=ibmpcx:
-ibmcx|ibmcpcx:\
-       :tc=ibmpcx:
-
-pcvt25h|386BSD pcvt rel 2.10 vt220 emulator video driver:\
-       :am:km:mi:ms:xn:\
-       :it#8:pb#9216:vt#3:\
-       :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:IC=\E[%d@:\
-       :LE=\E[%dD:RI=\E[%dC:SF=\E%dD:SR=\E%dM:UP=\E[%dA:\
-       :ae=^O:al=\E[L:as=^N:bl=^G:cd=\E[J:ce=\E[K:\
-       :cl=\E[H\E[J:cm=\E[%i%d;%dH:cr=^M:cs=\E[%i%d;%dr:\
-       :ct=\E[3g:dc=\E[P:dl=\E[M:do=^J:ei=\E[4l:ho=\E[H:\
-       :i1=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h\E[1;25r\E[25;1H:\
-       :ic=\E[@:im=\E[4h:k1=\E[17~:k2=\E[18~:k3=\E[19~:\
-       :k4=\E[20~:k5=\E[21~:k6=\E[23~:k7=\E[24~:k8=\E[25~:\
-       :kD=\E[3~:kH=\E[4~:kI=\E[2~:kN=\E[6~:kP=\E[5~:kb=^_:\
-       :kd=\EOB:ke=\E[?1l\E>:kh=\E[1~:kl=\EOD:kr=\EOC:\
-       :ks=\E[?1h\E=:ku=\EOA:le=^H:mb=\E[5m:md=\E[1m:\
-       :me=\E[m:mr=\E[7m:nd=\E[C:nw=^M^J:\
-       :r1=\Ec\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h:rc=\E8:\
-       :rf=/usr/share/tabset/vt100:sc=\E7:se=\E[27m:sf=\ED:\
-       :so=\E[7m:sr=\EM:st=\EH:ta=^I:ue=\E[24m:up=\E[A:\
-       :us=\E[4m:
-
-#### DEC VT100 and compatibles
-#
-# DEC terminals from the vt100 forward are collected here.  Older DEC terminals
-# and micro consoles can be found in the `obsolete' section.  More details
-# on the relationship between the VT100 and ANSI X3.64 may be found near the
-# end of this file.
-#
-# Except where noted, these entries are DEC's official terminfos.
-# Contact Bill Hedberg <hedberg@hannah.enet.dec.com> of Terminal Support
-# Engineering for more information.  Updated terminfos and termcaps 
-# are kept available at ftp://gatekeeper.dec.com/pub/DEC/termcaps.
-#
-
-# Note that the xenl glitch in vt100 is not quite the same as on the Concept,
-# since the cursor is left in a different position while in the
-# weird state (concept at beginning of next line, vt100 at end
-# of this line) so all versions of vi before 3.7 don't handle
-# xenl right on vt100. The correct way to handle xenl is when
-# you output the char in column 80, immediately output CR LF
-# and then assume you are in column 1 of the next line. If xenl
-# is on, am should be on too.
-# 
-# I assume you have smooth scroll off or are at a slow enough baud
-# rate that it doesn't matter (1200? or less). Also this assumes
-# that you set auto-nl to "on", if you set it off use vt100-nam 
-# below.
-# 
-# The padding requirements listed here are guesses. It is strongly
-# recommended that xon/xoff be enabled, as this is assumed here.
-# 
-# The vt100 uses rs2 and rf rather than is2/tbc/hts because the 
-# tab settings are in non-volatile memory and don't need to be 
-# reset upon login. Also setting the number of columns glitches 
-# the screen annoyingly. You can type "reset" to get them set.
-#
-# This is how the keypad gets assigned in Application Keypad mode.
-#      PF1 = kf1         PF2 = kf2         PF3   = kf3       PF4 = kf4
-#      7   = kf9         8   = kf10        9     = kf0       - 
-#      4   = kf5         5   = kf6         6     = kf7       ,   = kf8
-#      1   = ka1         2   = kb2         3     = ka3
-#      0   = kc1         .   = kc3         ENTER = kent
-#
-vt100|vt100-am|dec vt100 (w/advanced video):\
-       :am:mi:ms:xn:xo:\
-       :co#80:it#8:li#24:vt#3:\
-       :@8=\EOM:DO=\E[%dB:K1=\EOq:K2=\EOr:K3=\EOs:K4=\EOp:\
-       :K5=\EOn:LE=\E[%dD:RI=\E[%dC:UP=\E[%dA:\
-       :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\
-       :ae=^O:as=^N:bl=^G:cb=\E[1K:cd=\E[J:ce=\E[K:\
-       :cl=\E[H\E[J:cm=\E[%i%d;%dH:cr=^M:cs=\E[%i%d;%dr:\
-       :ct=\E[3g:do=^J:eA=\E(B\E)0:ho=\E[H:k0=\EOy:k1=\EOP:\
-       :k2=\EOQ:k3=\EOR:k4=\EOS:k5=\EOt:k6=\EOu:k7=\EOv:\
-       :k8=\EOl:k9=\EOw:k;=\EOx:kb=^H:kd=\EOB:ke=\E[?1l\E>:\
-       :kl=\EOD:kr=\EOC:ks=\E[?1h\E=:ku=\EOA:le=^H:mb=\E[5m:\
-       :md=\E[1m:me=\E[m\017:mr=\E[7m:nd=\E[C:\
-       :r2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h:rc=\E8:\
-       :..sa=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;:\
-       :sc=\E7:se=\E[m:sf=^J:so=\E[1;7m:sr=\EM:st=\EH:ta=^I:\
-       :ue=\E[m:up=\E[A:us=\E[4m:
-
-vt100nam|vt100-nam|vt100 w/no am (w/advanced video):\
-       :am@:xn@:\
-       :tc=vt100-am:
-
-# Ordinary vt100 in 132 column ("wide") mode.
-vt100-w|vt100-w-am|dec vt100 132 cols (w/advanced video):\
-       :co#132:li#24:\
-       :r2=\E>\E[?3h\E[?4l\E[?5l\E[?8h:tc=vt100-am:
-vt100-w-nam|vt100-nam-w|dec vt100 132 cols (w/advanced video):\
-       :co#132:li#14:vt@:\
-       :r2=\E>\E[?3h\E[?4l\E[?5l\E[?8h:tc=vt100-nam:
-
-# vt100 with no advanced video.
-vt100-nav|vt100 without advanced video option:\
-       :sg#1:\
-       :mb@:md@:me@:mr@:sa@:se=\E[m:so=\E[7m:ue@:us@:tc=vt100:
-vt100-nav-w|vt100-w-nav|dec vt100 132 cols 14 lines (no advanced video option):\
-       :co#132:li#14:\
-       :tc=vt100-nav:
-
-# vt100 with one of the 24 lines used as a status line.
-# We put the status line on the top.
-vt100-s|vt100-s-top|vt100-top-s|vt100 for use with sysline:\
-       :es:hs:\
-       :li#23:\
-       :cl=\E[2;1H\E[J:cm=\E[%i%+^A;%dH:cs=\E[%i%i%d;%dr:\
-       :ds=\E7\E[1;24r\E8:fs=\E8:ho=\E[2;1H:\
-       :is=\E7\E[2;24r\E8:ts=\E7\E[1;%p1%dH\E[1K:tc=vt100-am:
-
-# Status line at bottom. 
-# Clearing the screen will clobber status line.
-vt100-s-bot|vt100-bot-s|vt100 for use with sysline:\
-       :es:hs:\
-       :li#23:\
-       :ds=\E7\E[1;24r\E8:fs=\E8:is=\E[1;23r\E[23;1H:\
-       :ts=\E7\E[24;%p1%dH\E[1K:tc=vt100-am:
-
-# DEC VT100 with Advanced Video Option -- NOT DEC'S ENTRY!!!
-# This may be used as an alternate vt102 entry; it's probably better than the
-# stock one if you can live with XON/XOFF.  All the AVO gave you was smul/rmul.
-# From: Doug Gwyn <gwyn@smoke.brl.mil> 25 Jan 93
-# The following SET-UP modes are assumed for normal operation:
-#      ANSI_MODE       AUTO_XON/XOFF_ON        NEWLINE_OFF     80_COLUMNS
-#      WRAP_AROUND_ON
-# Other SET-UP modes may be set for operator convenience or communication
-# requirements; I recommend
-#      SMOOTH_SCROLL   AUTOREPEAT_ON   BLOCK_CURSOR    MARGIN_BELL_OFF
-#      SHIFTED_3_#
-# Unless you have a graphics add-on such as Digital Engineering's VT640
-# (and even then, whenever it can be arranged!) you should set
-#      INTERLACE_OFF
-# Hardware tabs are assumed to be set every 8 columns; they can be set up
-# by the "reset", "tset", or "tabs" utilities (use vt100-x, 132 columns, for
-# this).  I have included some compatible code in "rs" for the VT640 if you
-# have one.  No delays are specified; use "stty ixon -ixany" to enable DC3/DC1
-# flow control!
-# Thanks to elsie!ado (Arthur David Olson) for numerous improvements.
-vt100-avo|DEC VT100 with AVO:\
-       :ms:xo:\
-       :co#80:it#8:li#24:vt#3:\
-       :DO=\E[%dB:LE=\E[%dD:RI=\E[%dC:UP=\E[%dA:ae=^O:as=^N:\
-       :bl=^G:cd=\E[J:ce=\E[K:cl=\E[H\E[J:cm=\E[%i%d;%dH:\
-       :cr=^M:cs=\E[%i%d;%dr:ct=\E[3g:do=^J:ho=\E[H:\
-       :is=\E<\E)0:k0=\EOP:k1=\EOQ:k2=\EOR:k3=\EOS:kb=^H:\
-       :kd=\EOB:ke=\E[?1l\E>:kl=\EOD:kr=\EOC:ks=\E[?1h\E=:\
-       :ku=\EOA:l0=PF1:l1=PF2:l2=PF3:l3=PF4:le=^H:ll=\E[24H:\
-       :mb=\E[5m:md=\E[1m:me=\E[m:mr=\E[7m:nd=\E[C:nw=\EE:\
-       :rc=\E8:sc=\E7:se=\E[m:sf=^J:so=\E[7m:sr=\EM:st=\EH:\
-       :ta=^I:te=150\E[?7h:ti=\E[?7l:ue=\E[m:up=\EM:\
-       :us=\E[4m:
-
-# Most of the `vt100' emulators out there actually emulate a vt102
-# This entry (or vt102-nsgr) is probably the right thing to use for
-# these.  
-vt102|dec vt102:\
-       :mi:\
-       :al=\E[L:dc=\E[P:dl=\E[M:ei=\E[4l:im=\E[4h:tc=vt100:
-
-# Many brain-dead PC comm programs that pretend to be `vt100-compatible'
-# fail to interpret the ^O and ^N escapes properly.  Symptom: the sgr0
-# string in the canonical vt100 entry above leaves the screen littered
-# with little  snowflake or star characters (IBM PC ROM character \017 = ^O)
-# after highlight turnoffs.  This entry should fix that, and even leave
-# ACS support working, at the cost of making multiple-highlight changes 
-# slightly more expensive.
-# From: Eric S. Raymond <esr@snark.thyrsus.com> July 22 1995
-vt102-nsgr|dec vt102 with ACS support disabled:\
-       :me=\E[m:sa@:tc=vt102:
-
-# VT125 Graphics CRT.  Clear screen also erases graphics
-vt125|vt125 graphics terminal:\
-       :cl=\E[;H\E[2J\EPpS(E)\E\\:tc=vt100:
-
-# vt132 - like vt100 but slower and has ins/del line and such.
-# I'm told that smir/rmir are backwards in the terminal from the
-# manual and from the ANSI standard, this describes the actual 
-# terminal. I've never actually used a vt132 myself, so this 
-# is untested.
-#
-vt132|DEC vt132:\
-       :xn:\
-       :al=\E[L:dc=\E[P:dl=\E[M:ei=\E[4h:im=\E[4l:ip=:sf=\n:tc=vt100:
-
-# vt220:
-# This vt220 description maps F5--F9 to the second block of function keys
-# at the top of the keyboard.  The "DO" key is used as F10 to avoid conflict
-# with the key marked (ESC) on the vt220.  See vt220d for an alternate mapping.
-# PF1--PF4 are used as F1--F4.
-#
-vt220|DEC VT220 in vt100 emulation mode:\
-       :am:mi:xn:xo:\
-       :co#80:li#24:vt#3:\
-       :@7=\E[4~:ac=kkllmmjjnnwwqquuttvvxx:ae=\E(B:al=\E[L:\
-       :as=\E(0:bl=^G:cd=\E[J:ce=\E[K:cl=\E[H\E[2J:\
-       :cm=\E[%i%d;%dH:cr=^M:cs=\E[%i%d;%dr:dc=\E[P:dl=\E[M:\
-       :do=\E[B:ei=\E[4l:ho=\E[H:if=/usr/lib/tabset/vt100:\
-       :im=\E[4h:is=\E[1;24r\E[24;1H:k1=\EOP:k2=\EOQ:\
-       :k3=\EOR:k4=\EOS:k5=\E[17~:k6=\E[18~:k7=\E[19~:\
-       :k8=\E[20~:k9=\E[21~:k;=\E[29~:kD=\E[3~:kI=\E[2~:\
-       :kN=\E[6~:kP=\E[5~:kb=^H:kd=\E[B:kh=\E[1~:kl=\E[D:\
-       :kr=\E[C:ku=\E[A:le=^H:mb=\E[5m:md=\E[1m:me=\E[m:\
-       :mr=\E[7m:nd=\E[C:\
-       :r2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h:rc=\E8:\
-       :rf=/usr/lib/tabset/vt100:\
-       :..sa=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p4%t;5%;%?%p1%p3%|%t;7%;m%?%p9%t\E(0%e\E(B%;:\
-       :sc=\E7:se=\E[m:sf=20\ED:so=\E[7m:sr=14\EM:ta=^I:\
-       :ue=\E[m:up=\E[A:us=\E[4m:ve=\E[?25h:vi=\E[?25l:
-#
-# vt220d:
-# This vt220 description regards F6--F10 as the second block of function keys
-# at the top of the keyboard.  This mapping follows the description given
-# in the VT220 Programmer Reference Manual and agrees with the labeling
-# on some terminals that emulate the vt220.  There is no support for an F5.
-# See vt220 for an alternate mapping. 
-#
-vt220d|DEC VT220 in vt100 mode with DEC function key labeling:\
-       :F1=\E[23~:F2=\E[24~:F3=\E[25~:F4=\E[26~:F5=\E[28~:\
-       :F6=\E[29~:F7=\E[31~:F8=\E[32~:F9=\E[33~:FA=\E[34~:\
-       :k5@:k6=\E[17~:k7=\E[18~:k8=\E[19~:k9=\E[20~:\
-       :k;=\E[21~:tc=vt220:
-
-vt220nam|vt220-nam|v220n|VT220 in vt100 mode with no auto margins:\
-       :am@:\
-       :r2=\E>\E[?3l\E[?4l\E[?5l\E[?7l\E[?8h:tc=vt220:
-
-vt220-8|dec vt220 8 bit terminal:\
-       :5i:am:mi:ms:xn:xo:\
-       :co#80:it#8:li#24:\
-       :%0=\E[29~:%1=\E[28~:*6=\E[4~:@0=\E[1~:AL=\E[%dL:\
-       :DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:F1=\E[23~:F2=\E[24~:\
-       :F3=\E[25~:F4=\E[26~:F7=\E[31~:F8=\E[32~:F9=\E[33~:\
-       :FA=\E[34~:IC=\E[%d@:LE=\E[%dD:RA=\E[?7l:RI=\E[%dC:\
-       :SA=\E[?7h:UP=\E[%dA:\
-       :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\
-       :ae=^O:al=\E[L:as=^N:bl=^G:cb=\E[1K:cd=\E[J:ce=\E[K:\
-       :cl=\E[H\E[J:cm=\E[%i%d;%dH:cr=^M:cs=\E[%i%d;%dr:\
-       :ct=\E[3g:dc=\E[P:dl=\E[M:do=^J:eA=\E)0:ec=\E[%dX:\
-       :ei=\E[4l:ho=\E[H:if=/usr/lib/tabset/vt100:im=\E[4h:\
-       :is=\E[?7h\E[>\E[?1h\E F\E[?4l:k1=\EOP:k2=\EOQ:\
-       :k3=\EOR:k4=\EOS:k6=\E[17~:k7=\E[18~:k8=\E[19~:\
-       :k9=\E[20~:k;=\E[21~:kI=\E[2~:kN=\E[6~:kP=\E[5~:\
-       :kb=^H:kd=\E[B:kh=\E[H:kl=\E[D:kr=\E[C:ku=\E[A:\
-       :l1=pf1:l2=pf2:l3=pf3:l4=pf4:le=^H:mb=\E[5m:md=\E[1m:\
-       :me=\E[0m:mr=\E[7m:nd=\E[C:nw=\EE:pf=\E[4i:po=\E[5i:\
-       :ps=\E[i:r1=\E[?3l:rc=\E8:sc=\E7:se=\E[27m:sf=\ED:\
-       :so=\E[7m:sr=\EM:st=\EH:ta=^I:ue=\E[24m:up=\E[A:\
-       :us=\E[4m:vb=\E[?5h\E[?5l:
-
-vt320|DEC VT320 in vt100 emulation mode:\
-       :tc=vt220:
-#
-#  Use v320n for LYRIX
-#
-vt320nam|vt320-nam|v320n|DEC VT320 in vt100 emul. mode with NO AUTO WRAP mode:\
-       :am@:\
-       :r2=\E>\E[?3l\E[?4l\E[?5l\E[?7l\E[?8h:tc=vt220:
-
-vt420|DEC VT420:\
-       :am:mi:xn:xo:\
-       :co#80:li#24:vt#3:\
-       :*6=\E[4~:@0=\E[1~:\
-       :S5=\E[?0;0r\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h:\
-       :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\
-       :ae=\E(B:al=\E[L:as=\E(0:bl=^G:cd=\E[J:ce=\E[K:\
-       :cl=\E[;H\E[2J:cm=\E[%i%d;%dH:cr=^M:cs=\E[%i%d;%dr:\
-       :dc=\E[P:dl=\E[M:do=\E[B:ei=\E[4l:ho=\E[H:\
-       :i2=\E[?67h\E[64;1"p:if=/usr/lib/tabset/vt100:\
-       :im=\E[4h:is=\E[1;24r\E[24;1H:k0=\E[29~:k1=\EOP:\
-       :k2=\EOQ:k3=\EOR:k4=\EOS:k5=\E[17~:k6=\E[18~:\
-       :k7=\E[19~:k8=\E[20~:k9=\E[21~:k;=\E[29~:kD=\E[3~:\
-       :kI=\E[2~:kN=\E[6~:kP=\E[5~:kb=^H:kd=\E[B:ke=\E>:\
-       :kl=\E[D:kr=\E[C:ks=\E=:ku=\E[A:le=^H:mb=\E[5m:\
-       :md=\E[1m:me=\E[m:mr=\E[7m:nd=\E[C:\
-       :r3=\E[?67h\E[64;1"p:rc=\E8:rf=/usr/lib/tabset/vt100:\
-       :..sa=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p4%t;5%;%?%p1%p3%|%t;7%;m%?%p9%t\E(0%e\E(B%;:\
-       :se=\E[m:sf=\ED:so=\E[7m:sr=\EM:ta=^I:ue=\E[m:\
-       :up=\E[A:us=\E[4m:
-
-vt420nam|vt420-nam|v420n|DEC VT420 in vt100 emul. mode with NO AUTO WRAP mode:\
-       :am@:\
-       :tc=vt420:
-
-#
-#  DECUDK   
-#               if (key < 16) then  value = key;
-#               else if (key < 21) then value = key + 1; 
-#               else if (key < 25) then value = key + 2;
-#               else if (key < 27) then value = key + 3;
-#               else if (key < 30) then value = key + 4;
-#               else value = key + 5;
-#
-vt420pc|DEC VT420 w/PC keyboard:\
-       :@7=\E[4~:F1=\E[23~:F2=\E[24~:F3=\E[11;2~:\
-       :F4=\E[12;2~:F5=\E[13;2~:F6=\E[14;2~:F7=\E[15;2~:\
-       :F8=\E[17;2~:F9=\E[18;2~:FA=\E[19;2~:FB=\E[20;2~:\
-       :FC=\E[21;2~:FD=\E[23;2~:FE=\E[24;2~:FF=\E[23~:\
-       :FG=\E[24~:FH=\E[25~:FI=\E[26~:FJ=\E[28~:FK=\E[29~:\
-       :FL=\E[31~:FM=\E[32~:FN=\E[33~:FO=\E[34~:FP=\E[35~:\
-       :FQ=\E[36~:FR=\E[23;2~:FS=\E[24;2~:FT=\E[25;2~:\
-       :FU=\E[26;2~:FV=\E[28;2~:FW=\E[29;2~:FX=\E[31;2~:\
-       :FY=\E[32;2~:FZ=\E[33;2~:Fa=\E[34;2~:Fb=\E[35;2~:\
-       :Fc=\E[36;2~:S6=USR_TERM\072vt420pcdos\072:k1=\E[11~:\
-       :k2=\E[12~:k3=\E[13~:k4=\E[14~:k5=\E[15~:k6=\E[17~:\
-       :k7=\E[18~:k8=\E[19~:k9=\E[20~:k;=\E[21~:kD=^_:\
-       :kh=\E[H:\
-       :..px=\EP1;1|%?%{16}%p1%>%t%{0}%e%{21}%p1%>%t%{1}%e%{25}%p1%>%t%{2}%e%{27}%p1%>%t%{3}%e%{30}%p1%>%t%{4}%e%{5}%;%p1%+%d/%p2%s\E\\:tc=vt420:
-
-vt420pcdos|DEC VT420 w/PC for DOS Merge:\
-       :li#25:\
-       :S1=%?%p2%{19}%=%t\E\023\021%e%p2%{32}%<%t\E%p2%c%e%p2%{127}%=%t\E\177%e%p2%c%;:\
-       :S4=\E[?1;2r\E[34h:\
-       :S5=\E[?0;0r\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h:S6@:\
-       :me=\E[0m:sa@:tc=vt420pc:
-
-vt420f|DEC VT420 with VT kbd; VT400 mode; F1-F5 used as Fkeys:\
-       :F1=\E[23~:F2=\E[24~:F3=\E[25~:F4=\E[26~:F5=\E[28~:\
-       :F6=\E[29~:F7=\E[31~:F8=\E[32~:F9=\E[33~:FA=\E[34~:\
-       :k1=\E[11~:k2=\E[12~:k3=\E[13~:k4=\E[14~:k5=\E[15~:\
-       :k6=\E[17~:k7=\E[18~:k8=\E[19~:k9=\E[20~:k;=\E[21~:\
-       :kD=^_:kh=\E[H:l1=\EOP:l2=\EOQ:l3=\EOR:l4=\EOS:tc=vt420:
-
-vt420f-nam|v420fn|DEC VT420 no auto margins:\
-       :am@:\
-       :tc=vt420f:
-vt420pc-nam|v420pcn|DEC VT420 PC keyboard no auto margins:\
-       :am@:\
-       :tc=vt420pc:
-
-vt510|DEC VT510:\
-       :tc=vt420:
-vt510nam|vt510-nam|v510n|DEC VT510 in vt100 emul. mode with NO AUTO WRAP mode:\
-       :tc=vt420nam:
-vt510pc|DEC VT510 w/PC keyboard:\
-       :tc=vt420pc:
-vt510pc-nam|v510pcn|DEC VT510 PC keyboard no auto margins:\
-       :am@:\
-       :tc=vt420pc:
-vt510pcdos|DEC VT510 w/PC for DOS Merge:\
-       :tc=vt420pcdos:
-
-# VT520/VT525
-#
-# The VT520 is a monochrome text terminal capable of managing up to
-# four independent sessions in the terminal.  It has multiple ANSI
-# emulations (VT520, VT420, VT320, VT220, VT100, VT PCTerm, SCO Console)
-# and ASCII emulations (WY160/60, PCTerm, 50/50+, 150/120, TVI 950,
-# 925 910+, ADDS A2).  This terminfo data is for the ANSI emulations only.
-#
-# Terminal Set-Up is entered by pressing [F3], [Caps Lock]/[F3] or
-# [Alt]/[Print Screen] depending upon which keyboard and which
-# terminal mode is being used.  If Set-Up has been disabled or
-# assigned to an unknown key, Set-Up may be entered by pressing
-# [F3] as the first key after power up, regardless of keyboard type.
-vt520|DEC VT520:\
-       :am:mi:xn:xo:\
-       :co#80:li#24:vt#3:\
-       :*6=\E[4~:@0=\E[1~:\
-       :S5=\E[?0;0r\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h:\
-       :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\
-       :ae=\E(B:al=\E[L:as=\E(0:bl=^G:cd=\E[J:ce=\E[K:\
-       :cl=\E[;H\E[2J:cm=\E[%i%d;%dH:cr=^M:cs=\E[%i%d;%dr:\
-       :dc=\E[P:dl=\E[M:do=\E[B:ei=\E[4l:ho=\E[H:\
-       :i2=\E[?67h\E[64;1"p:if=/usr/lib/tabset/vt100:\
-       :im=\E[4h:is=\E[1;24r\E[24;1H:k0=\E[29~:k1=\EOP:\
-       :k2=\EOQ:k3=\EOR:k4=\EOS:k5=\E[17~:k6=\E[18~:\
-       :k7=\E[19~:k8=\E[20~:k9=\E[21~:k;=\E[29~:kD=\E[3~:\
-       :kI=\E[2~:kN=\E[6~:kP=\E[5~:kb=^H:kd=\E[B:kl=\E[D:\
-       :kr=\E[C:ku=\E[A:le=^H:mb=\E[5m:md=\E[1m:me=\E[m:\
-       :mr=\E[7m:nd=\E[C:\
-       :..px=\EP1;1|%?%{16}%p1%>%t%{0}%e%{21}%p1%>%t%{1}%e%{25}%p1%>%t%{2}%e%{27}%p1%>%t%{3}%e%{30}%p1%>%t%{4}%e%{5}%;%p1%+%d/%p2%s\E\\:\
-       :r3=\E[?67h\E[64;1"p:rc=\E8:rf=/usr/lib/tabset/vt100:\
-       :..sa=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p4%t;5%;%?%p1%p3%|%t;7%;m%?%p9%t\E(0%e\E(B%;:\
-       :se=\E[m:sf=\ED:so=\E[7m:sr=\EM:ta=^I:ue=\E[m:\
-       :up=\E[A:us=\E[4m:
-
-vt520nam|vt520-nam|v520n|DEC VT520 with NO AUTO WRAP:\
-       :am@:\
-       :tc=vt520:
-
-vt525|DEC VT525:\
-       :am:mi:xn:xo:\
-       :co#80:li#24:vt#3:\
-       :*6=\E[4~:@0=\E[1~:\
-       :S5=\E[?0;0r\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h:\
-       :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\
-       :ae=\E(B:al=\E[L:as=\E(0:bl=^G:cd=\E[J:ce=\E[K:\
-       :cl=\E[;H\E[2J:cm=\E[%i%d;%dH:cr=^M:cs=\E[%i%d;%dr:\
-       :dc=\E[P:dl=\E[M:do=\E[B:ei=\E[4l:ho=\E[H:\
-       :i2=\E[?67h\E[64;1"p:if=/usr/lib/tabset/vt100:\
-       :im=\E[4h:is=\E[1;24r\E[24;1H:k0=\E[29~:k1=\EOP:\
-       :k2=\EOQ:k3=\EOR:k4=\EOS:k5=\E[17~:k6=\E[18~:\
-       :k7=\E[19~:k8=\E[20~:k9=\E[21~:k;=\E[29~:kD=\E[3~:\
-       :kI=\E[2~:kN=\E[6~:kP=\E[5~:kb=^H:kd=\E[B:kl=\E[D:\
-       :kr=\E[C:ku=\E[A:le=^H:mb=\E[5m:md=\E[1m:me=\E[m:\
-       :mr=\E[7m:nd=\E[C:\
-       :..px=\EP1;1|%?%{16}%p1%>%t%{0}%e%{21}%p1%>%t%{1}%e%{25}%p1%>%t%{2}%e%{27}%p1%>%t%{3}%e%{30}%p1%>%t%{4}%e%{5}%;%p1%+%d/%p2%s\E\\:\
-       :r3=\E[?67h\E[64;1"p:rc=\E8:rf=/usr/lib/tabset/vt100:\
-       :..sa=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p4%t;5%;%?%p1%p3%|%t;7%;m%?%p9%t\E(0%e\E(B%;:\
-       :se=\E[m:sf=\ED:so=\E[7m:sr=\EM:ta=^I:ue=\E[m:\
-       :up=\E[A:us=\E[4m:
-
-vt525nam|vt525-nam|v525n|DEC VT525 with NO AUTO WRAP:\
-       :am@:\
-       :tc=vt525:
-
-#### Xterm variants
-#
-
-# X10/6.6      11/7/86, minus alternate screen, plus (csr)
-# (xterm: ":MT:" changed to ":km:"; mapped ":pt:" to ":it#8:";
-# removed (hs, eslok, tsl=\E[?E\E[?%i%dT, fsl=\E[?F, dsl=\E[?E)
-# as these seem not to work -- esr)
-x10term|vs100-x10|xterm terminal emulator (X10 window system):\
-       :am:bs:km:mi:ms:pt:xn:xo:\
-       :co#80:it#8:li#65:\
-       :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:al=\E[L:cd=\E[J:\
-       :ce=\E[K:cl=\E[H\E[2J:cm=\E[%i%d;%dH:cs=\E[%i%d;%dr:\
-       :dc=\E[P:dl=\E[M:do=^J:ei=\E[4l:ho=\E[H:im=\E[4h:\
-       :is=\E\E[m\E[?7h\E[?1;4l:k1=\EOP:k2=\EOQ:k3=\EOR:\
-       :k4=\EOS:kb=^H:kd=\EOB:ke=\E[?1l\E>:kl=\EOD:kr=\EOC:\
-       :ks=\E[?1h\E=:ku=\EOA:le=^H:md=\E[1m:me=\E[m:\
-       :mr=\E[7m:nd=\E[C:\
-       :rs=\E[r\E<\E[m\E[H\E[2J\E[?7h\E[?1;3;4;6l:se=\E[m:\
-       :sf=^J:so=\E[7m:sr=\EM:ue=\E[m:up=\E[A:us=\E[4m:
-# X11R6 xterm.  This is known good for the XFree86 version under Linux.
-# From: Eric S. Raymond <esr@snark.thyrsus.com> 9 Jul 1995
-# Note: If you use the line-drawing character set, the disable afterwards
-# will leave you in US-ASCII.  If you live somewhere that wants a pound sign
-# at 2/3, change rmacs to "\E(A".  Further note: cuf and cub don't seem
-# to be reliable under my xterm, so they're commented out.  Final note:
-# Older versions of this entry set/reset application keypad mode (\EO-prefix
-# cursor keys) in the [sr]mkx caps, but it wasn't necessary, and doesn't
-# actually fit the terminfo model properly.
-xterm|vs100|xterm terminal emulator (X11R6 Window System):\
-       :am:bs:km:mi:ms:pt:xn:xo:\
-       :co#80:it#8:li#65:\
-       :@7=\E[[:AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:F1=\E[23~:\
-       :F2=\E[24~:IC=\E[%d@:LE=\E[%dD:UP=\E[%dA:\
-       :ac=++\054\054..00II--``aaffgghhjjkkllmmnnooqqssttuuvvwwxx~~:\
-       :ae=\E(B:al=\E[L:as=\E(0:bl=^G:cd=\E[J:ce=\E[K:\
-       :cl=\E[H\E[2J:cm=\E[%i%d;%dH:cr=^M:cs=\E[%i%d;%dr:\
-       :ct=\E[3k:dc=\E[P:dl=\E[M:do=^J:ei=\E[4l:ho=\E[H:\
-       :ic=\E[@:im=\E[4h:\
-       :is=\E[r\E[m\E[2J\E[H\E[?7h\E[?1;3;4;6l\E[4l:\
-       :k1=\E[11~:k2=\E[12~:k3=\E[13~:k4=\E[14~:k5=\E[15~:\
-       :k6=\E[17~:k7=\E[18~:k8=\E[19~:k9=\E[20~:k;=\E[21~:\
-       :kI=\E[2~:kN=\E[6~:kP=\E[5~:kb=^H:kd=\E[B:kh=\E[@:\
-       :kl=\E[D:kr=\E[C:ku=\E[A:le=^H:md=\E[1m:me=\E[m:\
-       :mr=\E[7m:nd=\E[C:\
-       :r2=\E[r\E[m\E[2J\E[H\E[?7h\E[?1;3;4;6l\E[4l\E<:\
-       :rc=\E8:sc=\E7:se=\E[m:sf=^J:so=\E[7m:sr=\EM:ta=^I:\
-       :te=\E[2J\E[?47l\E8:ti=\E7\E[?47h:u6=\E[%d;%dR:\
-       :u7=\E[6n:u8=\E[?1;2c:u9=\E[c:ue=\E[m:up=\E[A:\
-       :us=\E[4m:
-xterm24|vs100-24|xterm terminal emulator (24 lines) (X11R6 window system):\
-       :co#80:li#24:\
-       :tc=xterm:
-xterm25|vs100-25|xterm terminal emulator (25 lines) (X11R6 window system):\
-       :co#80:li#25:\
-       :tc=xterm:
-xterm50|vs100-50|xterm terminal emulator (50 lines) (X11R6 window system):\
-       :co#80:li#50:\
-       :tc=xterm:
-xterms|vs100s|xterm terminal emulator (small) (X11R6 window system):\
-       :tc=xterm24:
-# (kterm: this had unknown capabilities ":KJ:TY=ascii:" -- esr)
-kterm|kterm kanji terminal emulator (X window system):\
-       :es:hs:\
-       :cs=\E[%i%d;%dr:ds=\E[?H:fs=\E[?F:rc=\E8:sc=\E7:\
-       :ts=\E[?E\E[?%i%dT:tc=xterm:
-
-# See the note on ICH/ICH1 VERSUS RMIR/SMIR near the end of file
-xterm-nic|xterm with ich/ich1 suppressed for non-curses programs:\
-       :IC@:ei=:ic@:im=:tc=xterm:
-
-# From: Eric S. Raymond <esr@snark.thyrsus.com> May 4 1995
-# Should work with the color xterm on the X11R6 contrib tape.
-xterm-color|xterm with color support:\
-       :tc=xterm:tc=ansi-pc-color:
-
-# From: David J. MacKenzie <djm@va.pubnix.com> 20 Apr 1995
-# Here's a termcap entry I've been using for xterm_color, which comes
-# with BSD/OS 2.0, and the X11R6 contrib tape too I think.  Besides the
-# color stuff, I also have a status line defined as the window manager
-# title bar. [I have translated it to terminfo -- ESR]
-xterm-pcolor|xterm with color used for highlights and status line:\
-       :hs:\
-       :ws#40:\
-       :ds=\E]0;\007:fs=^G:md=\E[1m\E[43m:mr=\E[7m\E[34m:\
-       :so=\E[7m\E[31m:ts=\E]0;:us=\E[4m\E[42m:tc=xterm:
-
-######## UNIX VIRTUAL TERMINALS AND VIRTUAL CONSOLES
-#
-
-# Columbus UNIX virtual terminal. This terminal also appears in 
-# UNIX 4.0 and successors as line discipline 1 (?), but is 
-# undocumented and does not really work quite right.
-cbunix|cb unix virtual terminal:\
-       :am:bs:da:db:\
-       :co#80:li#24:lm#0:\
-       :al=\EP:bl=^G:cd=\EL:ce=\EK:cl=\EL:cm=\EG%r%.%.:\
-       :cr=^M:dc=\EM:dl=\EN:do=^J:ei=:ic=\EO:im=:kd=\EB:\
-       :kh=\EE:kl=\ED:kr=\EC:ku=\EA:le=^H:nd=\EC:se=\Eb^D:\
-       :sf=^J:so=\Ea^D:ue=\Eb^A:up=\EA:us=\Ea^A:
-# (vremote: removed obsolete ":nl@:" -- esr)
-vremote|virtual remote terminal:\
-       :am@:\
-       :co#79:\
-       :tc=cbunix:
-pty|4bsd pseudo teletype:\
-       :cm=\EG%+ %+ :se=\Eb$:so=\Ea$:ue=\Eb!:us=\Ea!:tc=cbunix:
-
-# Entries for use by the FSF's `screen' program.  These came with version 3.6.2
-screen|VT 100/ANSI X3.64 virtual terminal:\
-       :am:km:mi:ms:xn:\
-       :co#80:it#8:li#24:\
-       :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:F1=\E[23~:\
-       :F2=\E[24~:IC=\E[%d@:LE=\E[%dD:RI=\E[%dC:UP=\E[%dA:\
-       :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~..--++\054\054hhII00:\
-       :ae=^O:al=\E[L:as=^N:bl=^G:bt=\E[Z:cd=\E[J:ce=\E[K:\
-       :cl=\E[H\E[J:cm=\E[%i%d;%dH:cr=^M:cs=\E[%i%d;%dr:\
-       :ct=\E[3g:dc=\E[P:dl=\E[M:do=^J:ei=\E[4l:ho=\E[H:\
-       :im=\E[4h:is=\E)0:k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:\
-       :k5=\E[15~:k6=\E[17~:k7=\E[18~:k8=\E[19~:k9=\E[20~:\
-       :k;=\E[21~:kD=\E[3~:kH=\E[4~:kI=\E[2~:kN=\E[6~:\
-       :kP=\E[5~:kb=^H:kd=\EOB:ke=\E[?1l\E>:kh=\E[1~:\
-       :kl=\EOD:kr=\EOC:ks=\E[?1h\E=:ku=\EOA:le=^H:mb=\E[5m:\
-       :md=\E[1m:me=\E[m:mr=\E[7m:nd=\E[C:nw=\EE:r2=\Ec:\
-       :rc=\E8:sc=\E7:se=\E[23m:sf=^J:so=\E[3m:sr=\EM:\
-       :st=\EH:ta=^I:ue=\E[24m:up=\EM:us=\E[4m:
-screen-w|VT 100/ANSI X3.64 virtual terminal with 132 cols:\
-       :am:km:mi:ms:xn:\
-       :co#132:it#8:li#24:\
-       :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:F1=\E[23~:\
-       :F2=\E[24~:IC=\E[%d@:LE=\E[%dD:RI=\E[%dC:UP=\E[%dA:\
-       :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~..--++\054\054hhII00:\
-       :ae=^O:al=\E[L:as=^N:bl=^G:bt=\E[Z:cd=\E[J:ce=\E[K:\
-       :cl=\E[H\E[J:cm=\E[%i%d;%dH:cr=^M:cs=\E[%i%d;%dr:\
-       :ct=\E[3g:dc=\E[P:dl=\E[M:do=^J:ei=\E[4l:ho=\E[H:\
-       :im=\E[4h:is=\E)0:k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:\
-       :k5=\E[15~:k6=\E[17~:k7=\E[18~:k8=\E[19~:k9=\E[20~:\
-       :k;=\E[21~:kD=\E[3~:kH=\E[4~:kI=\E[2~:kN=\E[6~:\
-       :kP=\E[5~:kb=^H:kd=\EOB:ke=\E[?1l\E>:kh=\E[1~:\
-       :kl=\EOD:kr=\EOC:ks=\E[?1h\E=:ku=\EOA:le=^H:mb=\E[5m:\
-       :md=\E[1m:me=\E[m:mr=\E[7m:nd=\E[C:nw=\EE:r2=\Ec:\
-       :rc=\E8:sc=\E7:se=\E[23m:sf=^J:so=\E[3m:sr=\EM:\
-       :st=\EH:ta=^I:ue=\E[24m:up=\EM:us=\E[4m:
-
-######## WORKSTATION CONSOLES
-#
-
-#### Sun consoles
-#
-
-# :is: resets scrolling region in case a previous user had used "tset vt100"
-# (sun: mapped ":pt:" to ":it#8:" -- esr)
-oldsun|Sun Microsystems Workstation console:\
-       :am:bs:km:mi:ms:pt:\
-       :co#80:it#8:li#34:\
-       :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:IC=\E[%d@:al=\E[L:\
-       :bl=^G:cd=\E[J:ce=\E[K:cl=^L:cm=\E[%i%d;%dH:cr=^M:\
-       :dc=\E[P:dl=\E[M:do=\E[B:ei=:ic=\E[@:im=:is=\E[1r:\
-       :k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:kd=\E[B:kh=\E[H:\
-       :kl=\E[D:kr=\E[C:ku=\E[A:le=^H:nd=\E[C:rs=\E[1r:\
-       :se=\E[m:sf=^J:so=\E[7m:ta=^I:up=\E[A:
-# New entry from vendor
-sun|sun1|sun2|Sun Microsystems Inc. workstation:\
-       :am:km:ms:\
-       :co#80:li#34:\
-       :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:IC=\E[%d@:al=\E[L:\
-       :bl=^G:cd=\E[J:ce=\E[K:cl=^L:cm=\E[%i%d;%dH:cr=^M:\
-       :dc=\E[P:dl=\E[M:do=^J:ei=:ho=\E[H:ic=\E[@:im=:\
-       :k1=\E[224z:k2=\E[225z:k3=\E[226z:k4=\E[227z:\
-       :k5=\E[228z:k6=\E[229z:k7=\E[230z:k8=\E[231z:\
-       :k9=\E[232z:kd=\E[B:kl=\E[D:kr=\E[C:ku=\E[A:le=^H:\
-       :md=\E[1m:me=\E[m:mr=\E[7m:nd=\E[C:r2=\E[s:\
-       :..sa=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;m:\
-       :se=\E[m:sf=^J:so=\E[7m:ta=^I:ue=\E[m:up=\E[A:\
-       :us=\E[4m:
-# From: <john@ucbrenoir>  Tue Sep 24 13:14:44 1985
-sun-s|Sun Microsystems Workstation window with status line:\
-       :hs:\
-       :ds=\E]l\E\\:fs=\E\\:ts=\E]l:tc=sun:
-sun-e-s|sun-s-e|Sun Microsystems Workstation with status hacked for emacs:\
-       :hs:\
-       :ds=\E]l\E\\:fs=\E\\:ts=\E]l:tc=sun-e:
-sun-48|Sun 48-line window:\
-       :co#80:li#48:\
-       :tc=sun:
-sun-34|Sun 34-line window:\
-       :co#80:li#34:\
-       :tc=sun:
-sun-24|Sun 24-line window:\
-       :co#80:li#24:\
-       :tc=sun:
-sun-17|Sun 17-line window:\
-       :co#80:li#17:\
-       :tc=sun:
-sun-12|Sun 12-line window:\
-       :co#80:li#12:\
-       :tc=sun:
-sun-1|Sun 1-line window for sysline:\
-       :es:hs:\
-       :co#80:li#1:\
-       :ds=^L:fs=\E[K:ts=^M:tc=sun:
-sun-e|sun-nic|sune|Sun Microsystems Workstation without insert character:\
-       :ei@:ic@:im@:tc=sun:
-sun-c|sun-cmd|Sun Microsystems Workstation console with scrollable history:\
-       :te=\E[>4h:ti=\E[>4l:tc=sun:
-
-#### Iris consoles
-#
-
-# (wsiris: this had unknown capabilities
-#      :HS=\E7F2:HE=\E7F7:\
-#      :CT#2:CZ=*Bblack,red,green,yellow,blue,magenta,cyan,*Fwhite:
-# I mapped ":pt:" to ":it#8:", removed incorrect ":cl=\Ev:" -- esr)
-wsiris|iris40|iris emulating a 40 line visual 50 (approximately):\
-       :am:bs:pt:\
-       :co#80:it#8:li#40:\
-       :al=\EL:cd=\EJ:ce=\EK:cl=\EH\EJ:cm=\EY%+ %+ :dl=\EM:\
-       :ho=\EH:is=\E7B0\E7F7\E7C2\E7R3:k0=\E0:k1=\E1:k2=\E2:\
-       :k3=\E3:k4=\E4:k5=\E5:k6=\E6:k7=\E7:k8=\E8:k9=\E9:\
-       :kd=\EB:kl=\ED:kr=\EC:ku=\EA:nd=\EC:se=\E0@:so=\E9P:\
-       :sr=\EI:ue=\E7R3\E0@:up=\EA:us=\E7R2\E9P:ve=\E>:\
-       :vs=\E;:
-
-#### Masscomp consoles
-#
-
-masscomp2:\
-       :co#64:li#21:\
-       :tc=masscomp:
-masscomp1:\
-       :co#104:li#36:\
-       :tc=masscomp:
-# (masscomp: ":MT:" changed to ":km:"; mapped ":pt:" to ":it#8:" -- esr)
-masscomp:\
-       :bs:km:mi:pt:\
-       :co#80:it#8:li#24:sg#0:\
-       :al=\E[L:cd=\E[J:ce=\E[K:cl=\E[2J:cm=\E[%i%d;%dH:\
-       :dc=\E[P:dl=\E[M:do=\E[B:ei=\E[4l:im=\E[4h:\
-       :is=\EGc\EGb\EGw:kb=^H:kd=\EOB:kl=\EOD:kr=\EOC:\
-       :ku=\EOA:nd=\E[C:se=\E[0m:so=\E[7m:ue=\EGau:up=\E[A:\
-       :us=\EGu:
-
-#### NeWS consoles
-#
-# Console terminal windows under the NeWS (Sun's Display Postscript windowing
-# environment).   Note: these have nothing to do with Sony's News workstation
-# line.
-#
-
-# Entry for NeWS's psterm from Eric Messick & Hugh Daniel
-# (psterm: unknown ":sl=\EOl:el=\ENl:" removed;
-# mapped ":pt:" to ":it#8:" -- esr)
-psterm|psterm-basic|psterm-80x34:\
-       :am:bs:hs:km:pt:ul:\
-       :co#80:it#8:li#34:\
-       :al=\EA:cd=\EB:ce=\EC:cl=^L:cm=\E%d;%d;:cs=\EE%d;%d;:\
-       :dc=\EF:dl=\EK:do=\EP:ei=\ENi:fs=\ENl:ho=\ER:im=\EOi:\
-       :is=\EN*:kd=\E[B:kl=\E[D:kr=\E[C:ku=\E[A:le=\ET:\
-       :ll=\EU:mb=\EOb:md=\EOd:me=\EN*:mr=\EOr:nd=\EV:rc=^\:\
-       :rs=\EN*:sc=^]:se=\ENo:sf=\EW:so=\EOo:sr=\EX:te=\ENt:\
-       :ti=\EOt:ts=\EOl:ue=\ENu:up=\EY:us=\EOu:vb=\EZ:
-psterm-96x48:\
-       :co#96:li#48:\
-       :tc=psterm:
-psterm-90x28:\
-       :co#90:li#28:\
-       :tc=psterm:
-psterm-80x24:\
-       :co#80:li#24:\
-       :tc=psterm:
-# This is a faster termcap for psterm.  Warning:  if you use this termcap,
-# some control characters you type will do strange things to the screen.
-# (psterm-fast: unknown ":sl=^Ol:el=^Nl:";
-# removed; mapped ":pt:" to ":it#8:" -- esr)
-psterm-fast:\
-       :am:bs:hs:km:pt:ul:\
-       :co#80:it#8:li#34:\
-       :al=^A:cd=^B:ce=^C:cl=^L:cm=\004%d;%d;:cs=\005%d;%d;:\
-       :dc=^F:dl=^K:do=^P:ei=^Ni:fs=^Nl:ho=^R:im=^Oi:is=^N*:\
-       :kd=\E[B:kl=\E[D:kr=\E[C:ku=\E[A:le=^T:ll=^U:mb=^Ob:\
-       :md=^Od:me=^N*:mr=^Or:nd=^V:rc=^\:rs=^N*:sc=^]:\
-       :se=^No:sf=^W:so=^Oo:sr=^X:te=^Nt:ti=^Ot:ts=^Ol:\
-       :ue=^Nu:up=^Y:us=^Ou:vb=^Z:
-
-#### Apollo consoles
-#
-# Apollo got bought by Hewlett-Packard.  The Apollo workstations are 
-# labeled HP700s now.
-#
-
-# From: Gary Darland <goodmanc@garnet.berkeley.edu>
-apollo:\
-       :am:bs:mi:\
-       :co#88:li#53:\
-       :al=\EI:cd=\EJ:ce=\EK:ch=\EN%d:cl=^L:cm=\EM%+ %d):\
-       :cv=\EO+ :dc=\EP:dl=\EL:do=\EB:ei=\ER:im=\EQ:nd=\EC:\
-       :se=\ET:sf=\EE:so=\ES:sr=\ED:te=\EX:ti=\EW:ue=\EV:\
-       :up=\EA:us=\EU:
-apollo_15P|apollo 15 inch display:\
-       :dN@:\
-       :tc=vt132:
-apollo_19L|apollo 19 inch display:\
-       :dN@:\
-       :tc=vt132:
-apollo_color|apollo color display:\
-       :dN@:\
-       :tc=vt132:
-
-#### Fortune Systems consoles
-#
-
-# From: Robert Nathanson <c160-3bp@Coral> via tut   Wed Oct 5, 1983
-# (This had unknown capabilities
-#      :rv=\EH:re=\EI:rg=0:\
-#      :GG=0:GV=-:GH=&:GU=%:GD=#:G1=(:G2= :G3=":G4=*:CF=\E]:\
-#      :CO=\E\\:WL=^Aa\r:WR=^Ab\r:CL=^Ac\r:CR=^Ad\r:DL=^Ae\r:RF=^Af\r:\
-#      :RC=^Ag\r:CW=^Ah\r:NU=^Aj\r:EN=^Ak\r:HM=^Al:PL=^Am\r:\
-#      :PU=^An\r:PD=^Ao\r:PR=^Ap\r:HP=^A@\r:RT=^Aq\r:TB=\r:CN=\177:MP=\E+F:
-# It had both ":bs:" and ":bs=^H:"; I removed the latter.  Also, it had
-# ":sg=0:" and ":ug=0:"; evidently the composer was trying (unnecessarily)
-# to force both magic cookie glitches off.  Once upon a time, I
-# used a Fortune myself, so I know the capabilities of the form ^A[a-z]\r are
-# function keys; thus the "Al" value for HM was certainly an error.  I renamed
-# EN/PD/PU/CO/CF according to the XENIX/TC mappings, but not HM/DL/RF/RC/RT.  
-# I think rv and re are start and end reverse video and rg is a nonexistent
-# "reverse-video-glitch" capability; I have put rv and re in with standard
-# names below.  I've removed obsolete ":nl=5^J:" as there is a :do: -- esr)
-fos|fortune|Fortune system:\
-       :am:bs:bw:\
-       :co#80:li#25:\
-       :@7=^Ak\r:ae=^O:al=\034E:as=\Eo:bl=^G:cd=\034Y:\
-       :ce=^\Z:cl=\014:cm=\034C%+ %+ :cr=^M:dc=\034W:\
-       :dl=\034R:do=\n:ei=:ho=\036:ic=\034Q:im=:is=^_..:\
-       :k1=^Aa\r:k2=^Ab\r:k3=^Ac\r:k4=^Ad\r:k5=^Ae\r:\
-       :k6=^Af\r:k7=^Ag\r:k8=^Ah\r:kN=^Ao\r:kP=^An\r:kb=^H:\
-       :kd=^Ay\r:kh=^A?\r:kl=^Aw\r:kr=^Az\r:ku=^Ax\r:le=^H:\
-       :mb=\EN:me=\EI:mr=\EH:nw=^M^J:se=^\I`:sf=^J:so=^\H`:\
-       :ta=^Z:ue=^\IP:up=\013:us=^\HP:ve=\E\\:vi=\E]:\
-       :vs=\E\072:
-
-######## COMMON TERMINAL TYPES
-#
-# This section describes terminal classes and maker brands that are still
-# quite common, but have proprietary command sets not blessed by ANSI.
-
-#### Altos
-#
-# Altos descriptions from Ted Mittelstaedt <tedm@agora.rain.com> 4 Sep 1993
-# His comments suggest they were shipped with the system.
-#
-
-# (altos2: had unknown capabilities
-#      :c0=^A`\r:c1=^Aa\r:c2=^Ab\r:c3=^Ac\r:\
-#      :c4=^Ad\r:c5=^Ae\r:c6=^Af\r:c7=^Ag\r:\
-#      :c8=^Ah\r:c9=^Ai\r:cA=^Aj\r:cB=^Ak\r:\
-#      :cC=^Al\r:cD=^Am\r:cE=^An\r:cF=^Ao\r:
-#      :XU=^Aq\r:XD=^Ar\r:XR=^As\r:XL=^At\r:\
-#      :YU=^AQ\r:YD=^AR\r:YR=^AS\r:YL=^AT\r:\
-#      :HL=^AP\r:SP=\E[i:\
-#      :IS=\E[@:DE=\E[P:IL=\E[L:NS=\E[S:PS=\E[T:\
-#      :LO=\E[0q:LC=\E[5q:LL=\E[6q:\
-# Comparison with the k* capabilities makes it obvious that the c* things are
-# shift keys.  I have renamed them to keys 32 and up accordingly.  Also,
-# :sr: was given as a boolean-- esr)
-altos2|alt2|altos-2|altos II:\
-       :co#80:it#8:li#24:sg#0:\
-       :*5=^Am\r:*8=^An\r:DL=\E[M:FM=^A`\r:FN=^Aa\r:\
-       :FO=^Ab\r:FP=^Ac\r:FQ=^Ad\r:FR=^Ae\r:FS=^Af\r:\
-       :FT=^Ag\r:FU=^Ah\r:FV=^Ai\r:FW=^Aj\r:FX=^Ak\r:\
-       :al=\E[L:cd=\E[J:ce=\E[K:cl=\E[;H\E[2J:\
-       :cm=\E[%i%d;%dH:cr=^M:dc=\E[P:do=\E[1B:ei=:ho=\E[H:\
-       :ic=\E[@:if=/usr/share/lib/tabset/vt100:im=:\
-       :is=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h:k0=^AI\r:\
-       :k1=^A@\r:k2=^AA\r:k3=^AB\r:k4=^AC\r:k5=^AD\r:\
-       :k6=^AE\r:k7=^AF\r:k8=^AG\r:k9=^AH\r:kA=^AJ\r:\
-       :kB=^AK\r:kC=^AL\r:kD=^AM\r:kE=^AN\r:kF=^AO\r:kb=^H:\
-       :kd=\E[B:kh=\E[f:kl=\E[D:kr=\E[C:ku=\E[A:le=^H:\
-       :nd=\E[1C:nw=^M^J:se=\E[m:sf=^J:so=\E[7m:ta=^I:\
-       :ue=\E[m:up=\E[1A:us=\E[4m:
-# (altos3: had unknown capabilities
-#      :c0=^A`\r:c1=^Aa\r:c2=^Ab\r:c3=^Ac\r:\
-#      :c4=^Ad\r:c5=^Ae\r:c6=^Af\r:c7=^Ag\r:\
-#      :c8=^Ah\r:c9=^Ai\r:cA=^Aj\r:cB=^Ak\r:\
-#      :cC=^Al\r:cD=^Am\r:cE=^An\r:cF=^Ao\r:
-#      :XU=^Aq\r:XD=^Ar\r:XR=^As\r:XL=^At\r:\
-#      :HL=^AP\r:SP=\E[i:\
-#      :IS=\E[@:DE=\E[P:IL=\E[L:NS=\E[S:PS=\E[T:\
-# Comparison with the k* capabilities makes it obvious that the c* things are
-# shift keys.  I have renamed them to keys 32 and up accordingly -- esr)
-altos3|alt3|altos-3|altos III:\
-       :co#80:it#8:li#24:sg#0:\
-       :*5=^Am\r:*8=^An\r:DL=\E[M:FM=^A`\r:FN=^Aa\r:\
-       :FO=^Ab\r:FP=^Ac\r:FQ=^Ad\r:FR=^Ae\r:FS=^Af\r:\
-       :FT=^Ag\r:FU=^Ah\r:FV=^Ai\r:FW=^Aj\r:FX=^Ak\r:\
-       :al=\E[L:cd=\E[J:ce=\E[K:cl=\E[;H\E[2J:\
-       :cm=\E[%i%d;%dH:cr=^M:dc=\E[P:do=\E[1B:ei=:ho=\E[H:\
-       :ic=\E[@:if=/usr/share/lib/tabset/vt100:im=:\
-       :is=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h:k0=^AI\r:\
-       :k1=^A@\r:k2=^AA\r:k3=^AB\r:k4=^AC\r:k5=^AD\r:\
-       :k6=^AE\r:k7=^AF\r:k8=^AG\r:k9=^AH\r:kA=^AJ\r:\
-       :kB=^AK\r:kC=^AL\r:kD=^AM\r:kE=^AN\r:kF=^AO\r:kb=^H:\
-       :kd=\E[B:kh=\E[f:kl=\E[D:kr=\E[C:ku=\E[A:le=^H:\
-       :mb=\E[5p:me=\E[p:nd=\E[1C:nw=^M^J:se=\E[m:sf=^J:\
-       :so=\E[7m:sr=\EM:ta=^I:ue=\E[m:up=\E[1A:us=\E[4m:
-altos4|alt4|altos-4|altos IV:\
-       :tc=wy50:
-altos5|alt5|altos-5|altos V:\
-       :tc=altos3:
-# (altos7: had unknown capabilities:
-#      :GG#0:GS=\EH^B:GE=\EH^C:\
-#      :G1=3:G2=2:G3=1:G4=5:GD=0:GU==:GH=\072:\
-#      :GV=6:GR=4:GL=9:GC=8:GI=\EH8:GF=\EH7:\
-#      :c0=^A`\r:c1=^Aa\r:c2=^Ab\r:c3=^Ac\r:\
-#      :c4=^Ad\r:c5=^Ae\r:c6=^Af\r:c7=^Ag\r:\
-#      :c8=^Ah\r:c9=^Ai\r:cA=^Aj\r:cB=^Ak\r:\
-#      :cC=^Al\r:cD=^Am\r:cE=^An\r:cF=^Ao\r:
-#      :PD=\EK:PU=\EJ:PN=\Ed#:PS=\EJ:DL=\ER:\
-# Comparison with the k* capabilities makes it obvious that the c* things are
-# shift keys.  I have renamed them to keys 32 and up accordingly -- esr)
-altos7|alt7|altos VII:\
-       :am:mi:\
-       :co#80:li#24:sg#0:\
-       :*5=^Am\r:*8=^An\r:DL=\ER:FM=^A`\r:FN=^Aa\r:FO=^Ab\r:\
-       :FP=^Ac\r:FQ=^Ad\r:FR=^Ae\r:FS=^Af\r:FT=^Ag\r:\
-       :FU=^Ah\r:FV=^Ai\r:FW=^Aj\r:FX=^Ak\r:al=\EE:cd=\EY:\
-       :ce=\ET:cl=\E+^^:cm=\E=%+ %+ :cr=^M:dc=\EW:do=^J:\
-       :ei=\Er:ho=^^:im=\Eq:\
-       :is=\E`\072\Ee(\EO\Ee6\Ec41\E~4\Ec21\Eu\E~2:k0=^AI\r:\
-       :k1=^A@\r:k2=^AA\r:k3=^AB\r:k4=^AC\r:k5=^AD\r:\
-       :k6=^AE\r:k7=^AF\r:k8=^AG\r:k9=^AH\r:kA=^AJ\r:\
-       :kB=^AK\r:kC=^AL\r:kD=^AM\r:kE=^AN\r:kF=^AO\r:kb=^H:\
-       :kd=^J:kh=^^:kl=^H:kr=^L:ku=^K:le=^H:mb=\EG2:md=\EGt:\
-       :me=\EG0:mh=\EGp:mk=\EG1:mr=\EG4:nd=^L:nw=^M^J:\
-       :se=\EG0:sf=^J:so=\EG4:sr=\Ej:ta=^I:ue=\EG0:up=^K:\
-       :us=\EG8:
-altos7pc|alt7pc|altos PC VII:\
-       :@7=\ET:tc=altos7:
-
-#### Hewlett-Packard (hp)
-#
-#      Hewlett-Packard
-#      8000 Foothills Blvd 
-#      Roseville, CA 95747
-#      Vox: 1-(916)-785-4363   (Technical response line for VDTs)
-#           1-(800)-633-3600   (General customer support)
-#
-
-# Generic HP terminal - this should (hopefully) work on any HP terminal.
-hpgeneric|hewlett-packar|hewlettpackard:\
-       :am:da:db:mi:xs:\
-       :co#80:li#24:lm#0:vt#6:\
-       :al=\EL:bl=^G:cd=\EJ:ce=\EK:ch=\E&a%dC:cl=\EH\EJ:\
-       :cm=\E&a%r%dc%dY:cr=^M:ct=\E3:cv=\E&a%dY:dc=\EP:\
-       :dl=\EM:do=^J:ei=\ER:im=\EQ:kB=\Ei:kb=^H:le=^H:\
-       :nd=\EC:se=\E&d@:sf=^J:so=\E&dJ:st=\E1:ta=^I:\
-       :ue=\E&d@:up=\EA:us=\E&dD:
-
-hp110|hewlett-packard model 110 portable:\
-       :li#16:\
-       :tc=hpgeneric:
-
-hp+pfk+cr|hp function keys with CR:\
-       :k1=\Ep\r:k2=\Eq\r:k3=\Er\r:k4=\Es\r:k5=\Et\r:\
-       :k6=\Eu\r:k7=\Ev\r:k8=\Ew\r:
-
-hp+pfk-cr|hp function keys w/o CR:\
-       :k1=\Ep:k2=\Eq:k3=\Er:k4=\Es:k5=\Et:k6=\Eu:k7=\Ev:\
-       :k8=\Ew:
-
-# The 2621s use the same keys for the arrows and function keys, 
-# but not separate escape sequences. These definitions allow the 
-# user to use those keys as arrow keys rather than as function 
-# keys.
-hp+pfk+arrows|hp alternate arrow definitions:\
-       :k1@:k2@:k3@:k4@:k5@:k6@:k7@:k8@:kF=\Er\r:kH=\Eq\r:\
-       :kR=\Es\r:kd=\Ew\r:kh=\Ep\r:kl=\Eu\r:kr=\Ev\r:\
-       :ku=\Et\r:
-
-hp+arrows|hp arrow definitions:\
-       :kF=\ES:kH=\EF:kR=\ET:kd=\EB:kh=\Eh:kl=\ED:kr=\EC:\
-       :ku=\EA:
-
-# Generic stuff from the HP 262x series
-#
-hp262x:\
-       :xs:\
-       :cd=\EJ:dc=\EP:ip=:kA=\EL:kD=\EP:kE=\EK:kF=\ES:\
-       :kI=\EQ:kL=\EM:kM=\ER:kN=\EU:kP=\EV:kR=\ET:kS=\EJ:\
-       :kd=\EB:ke=\E&s0A:kh=\Eh:kl=\ED:kr=\EC:ks=\E&s1A:\
-       :ku=\EA:mb=\E&dA:me=\E&d@:mk=\E&dS:mr=\E&dB:\
-       :..sa=\E&d%'@'%?%p1%t%'B'%|%;%?%p2%t%'D'%|%;%?%p3%t%'B'%|%;%?%p4%t%'A'%|%;%c:\
-       :se=\E&d@:sf=\ES:so=\E&dB:ta=\011:ue=\E&d@:us=\E&dD:
-# Note: no "home" on HP's since that homes to top of memory, not screen.
-# Due to severe 2621 braindamage, the only way to get the arrow keys to
-# transmit anything at all is to turn on the function key labels
-# with smkx, and even then the user has to hold down shift!
-# The default 2621 turns off the labels except when it has to to 
-# enable the function keys. If your installation prefers labels 
-# on all the time, or off all the time (at the "expense" of the 
-# function keys) move the # 2621-nl or 2621-wl labels to the 
-# front using reorder.
-# Note: there are newer ROMs for 2621's that allow you to set 
-# strap A so the regular arrow keys xmit \EA, etc, as with the 
-# 2645. However, even with this strap set, the terminal stops 
-# xmitting if you reset it, until you unset and reset the strap!
-# Since there is no way to set/unset the strap with an escape 
-# sequence, we don't use it in the default.
-# If you like, you can use 2621-ba (braindmaged arrow keys).
-hp2621-ba|2621-ba|2621 w/new rom and strap A set:\
-       :ke@:ks@:tc=hp+arrows:tc=hp2621:
-
-# 2621 with function labels. Most of the time they are off,
-# but inside vi, the function key labels appear. You have to
-# hold down shift to get them to xmit.
-hp2621|hp2621a|hp2621A|2621|2621a|2621A|hp2621-wl|2621-wl|hp 2621 w/labels:\
-       :is=\E&jA\r:ke=\E&jA:tc=hp2621-fl:
-
-# 2621 with function labels.  Most of the time they are off,
-# but inside vi, the function key labels appear.  You have to
-# hold down shift to get them to xmit.
-hp2621-fl|2621-fl|hp 2621:\
-       :xo:xs@:\
-       :pb#19200:\
-       :bt=\Ei:cm=\E&a%r%dc%dY:dc=\EP:ip=:is=\E&j@\r:\
-       :ke=\E&j@:ks=\E&jB:me=\E&d@:se=\E&d@:so=\E&dD:\
-       :ta=\011:ue=\E&d@:us=\E&dD:tc=hp+pfk+cr:tc=hpgeneric:
-
-# To use 2621p printer, setenv TERM=2621p, PRINTER=2612p
-hp2621p|2621p|2621P|hp 2621 with printer:\
-       :pf=\E&p13C:po=\E&p11C:tc=hp2621:
-
-hp2621p-a|2621p-a|hp2621p with fn as arrows:\
-       :tc=hp+pfk+arrows:tc=hp2621p:
-
-# hp2621 with k45 keyboard
-hp2621-k45|hp2621k45|2621k45|k45|hp 2621 with 45 keyboard:\
-       :kb=^H:kd=\EB:ke=\E&s0A:kh=\Eh:kl=\ED:kr=\EC:\
-       :ks=\E&s1A:ku=\EA:tc=hp2621:
-
-# This terminal should be used at 4800 baud or less. It needs padding for
-# plain characters at 9600, I guessed at an appropriate cr delay.  It really
-# wants ^E/^F handshaking, but that doesn't work well even if you write
-# software to support it.
-hp2645|hp45|hp 264x series:\
-       :pb#9600:\
-       :cr=\r:kA=\EL:kD=\EP:kE=\EK:kF=\ES:kI=\EQ:kL=\EM:\
-       :kM=\ER:kN=\EU:kP=\EV:kR=\ET:kS=\EJ:kT=\E1:kd=\EB:\
-       :ke=\E&s0A:kh=\Eh:kl=\ED:kr=\EC:ks=\E&s1A:kt=\E2:\
-       :ku=\EA:mb=\E&dA:me=\E&d@:mh=\E&dH:mr=\E&dB:\
-       :..sa=\E&d%'@'%?%p1%t%'B'%|%;%?%p2%t%'D'%|%;%?%p3%t%'B'%|%;%?%p4%t%'A'%|%;%?%p5%t%'H'%|%;%?%p6%t%'B'%|%;%c:\
-       :us=\E&dD:tc=hpgeneric:
-
-# Hp 2624 B with 4 or 10 pages of memory.
-# 
-# Some assumptions are made with this entry. These settings are 
-# NOT set up by the initialization strings.
-# 
-# Port Configuration
-#      RecvPace=Xon/Xoff
-#      XmitPace=Xon/Xoff
-#      StripNulDel=Yes
-# 
-# Terminal Configuration
-#      InhHndShk=Yes
-#      InhDC2=Yes
-#      XmitFnctn(A)=No
-#      InhEolWrp=No
-# 
-# Note: the 2624 DOES have a true "home," believe it or not!
-# 
-# The 2624 has an "error line" to which messages can be sent. 
-# This is CLOSE to what is expected for a "status line". However,
-# after a message is sent to the "error line", the next carriage 
-# return is EATEN and the "error line" is turned back off again! 
-# So I guess we can't define hs, eslok, wsl, dsl, fsl, tsl
-# 
-# This entry supports emacs (and any other program that uses raw 
-# mode) at 4800 baud and less. I couldn't get the padding right 
-# for 9.6.
-#
-hp2624|hp2624a|hp2624b|hp2624b-4p|2624-4p|2624|2624a|2624b|Hewlett Packard 2624 B:\
-       :da:db:\
-       :lm#96:\
-       :vb=\E&w13F\200\200\200\200\E&w12F\200\200\200\200\E&w13F\200\200\200\200\E&w12F:tc=hp+labels:tc=scrhp:
-
-# These attributes are not set above:
-# 
-# civis, cmdch, cnorm, csr, cub, cud, cuf, cuu, cvvis, dch, dl, 
-# ech, eo, eslok, fsl, gn, hc, hd, hu, hz, ich, ich1, if, il, in,
-# indn, iprog, is2, is3, it, ka1, ka3, kb2, kc1, kc3, kclr, kf0, 
-# kf10, khts, km, ktbc, lf0, lf1, lf10, lf2, lf3, lf4, lf5, lf6, 
-# lf7, lf8, lf9, mc5p, os, pad, pfkey*, pfloc*, pfx*, prot, rc, 
-# rep, rin, rmcup, rmdc, rmm, rs2, rs3, sc, smcup, smdc, smm, tsl,
-# uc, ul, vt, wind, wsl, xenl, xmc, xsb, xt
-# 
-# not needed if tset is used:
-#      if=/usr/lib/tabset/std,
-# 
-# This hp2626 entry does not use any of the fancy windowing stuff 
-# of the 2626.
-# 
-# Indeed, terminfo does not yet handle such stuff. Since changing 
-# any window clears memory, it is probably not possible to use 
-# this for screen opt.
-# 
-# ed is incredibly slow most of the time - I am guessing at the 
-# exact padding. Since the terminal uses xoff/xon this is intended 
-# only for cost computation, so that the terminal will prefer el 
-# or even dl1 which is probably faster!
-# 
-# \ED\EJ\EC hack for ed from Ed Bradford - apparently ed is only 
-# extra slow # on the last line of the window. 
-# 
-# The padding probably should be changed.
-#
-hp2626|hp2626a|hp2626p|2626|2626a|2626p|2626A|2626P|hp 2626:\
-       :da:db:\
-       :lm#0:pb#19200:\
-       :SF=\E&r%dD:SR=\E&r%dU:cd=\ED\EJ\EC:ip=:is=\E&j@\r:tc=hp+pfk+cr:tc=hp+labels:tc=scrhp:
-
-# This entry is for sysline. It allocates a 23 line window with 
-# a 115 line workspace for regular use, and a 1 line window for 
-# the status line.
-# 
-# This assumes port 2 is being used.
-# Turn off horizontal line, Create ws #1 with 115 lines,
-# Create ws #2 with 1 line, Create window #1 lines 1-23,
-# Create window #2 lines 24-24, Attach cursor to workspace #1.
-# Note that this clears the tabs so it must be done by tset before
-# it sets the tabs.
-#
-hp2626-s|2626-s|hp 2626 using only 23 lines:\
-       :es:hs:\
-       :li#23:\
-       :fs=\E&d@\E&w7f2p1I\E&w4f1I:\
-       :i1=\E&q3t0{0H \E&w0f115n1I \E&w0f1n2I\n\E&w2f1i0d0u22l0S \E&w2f2i0d23u23l0S \E&w7f2p1I \r:\
-       :ts=\E&w7f2p2I\E&w4f2I\r\EK\E&a%p1%dC:tc=hp2626:
-# Force terminal back to 24 lines after being 23.
-#
-hp2626-ns|2626-ns|hp 2626 using all 24 lines:\
-       :i1=\E&q3t0{0H \E&w0f118n1I \E&w0f1n2I\n\E&w2f1i0d0u23l0S \E&w3f2I \E&w7f2p1I \r:tc=hp2626:
-# Various entries useful for small windows on 2626.
-#
-hp2626-12|2626-12:\
-       :li#12:\
-       :tc=hp2626:
-hp2626-12x40|2626-12x40:\
-       :co#40:li#12:\
-       :tc=hp2626:
-hp2626-x40|2626-x40:\
-       :co#40:\
-       :tc=hp2626:
-hp2626-12-s|2626-12-s:\
-       :li#11:\
-       :tc=hp2626-s:
-# You should use this terminal at 4800 baud or less.
-#
-hp2648|hp2648a|2648a|2648A|2648|HP 2648a graphics terminal:\
-       :cl=\EH\EJ:cm=\E&a%r%dc%dY:dc=\EP:ip=:tc=hp2645:
-
-# 2640a doesn't have the Y cursor addressing feature, and C is 
-# memory relative instead of screen relative, as we need.
-#
-hp2640a|2640a|hp 2640a:\
-       :cm@:ke@:ks@:tc=hp2645:
-
-hp2640b|hp2644a|hp 264x series:\
-       :ke@:ks@:tc=hp2645:
-
-# 2621 using all 48 lines of memory, only 24 visible at any time.  
-#
-hp2621-48|48 line 2621:\
-       :li#48:\
-       :cm=\E&a%r%dc%dR:cv=\E&a%dR:ho=\EH:tc=hp2621:
-
-# 2621 with no labels ever. Also prevents vi delays on escape.
-#
-hp2621-nl|hp 2621 with no labels:\
-       :kd@:ke@:kh@:kl@:kr@:ks@:ku@:tc=hp2621-fl:
-
-# Needed for UCB ARPAVAX console, since lsi-11 expands tabs 
-# (wrong).
-#
-hp2621-nt|hp 2621 w/no tabs:\
-       :ta@:tc=hp2621:
-
-# The HP 150 terminal is a fairly vanilla HP terminal, with the 
-# clreol standout problem. It also has graphics capabilities and 
-# a touch screen, which we don't describe here.
-hp150|hewlett packard Model 150:\
-       :tc=hp2622:
-
-# Hp 2382a terminals, "the little ones." They don't have any 
-# alternate character set support and sending out ^N/^O will 
-# leave the screen blank.
-hp2382a|hp2382|hewlett packard 2382a:\
-       :da:db:\
-       :lh#1:lm#48:\
-       :ac@:ae@:as@:me=\E&d@:\
-       :..pn=\E&f0a%p1%dk%p2%l%Pa%?%ga%t%ga%d%e1%;d0L%?%ga%!%t %;%p2%s:\
-       :..sa=\E&d%{0}%Pa%?%p4%t%{1}%ga%+%Pa%;%?%p1%p3%|%p6%|%t%{2}%ga%+%Pa%;%?%p2%p6%|%t%{4}%ga%+%Pa%;%?%p1%p5%|%t%{8}%ga%+%Pa%;%?%p7%t%?%ga%ts%ga%'@'%+%e%'S'%;%e%?%ga%t%ga%'@'%+%e%'@'%;%;%c:tc=hp+labels:tc=scrhp:
-
-hp2621-a|hp2621a-a|2621-a|hp2621 with fn as arrows:\
-       :tc=hp+pfk+arrows:tc=hp2621-fl:
-
-# newer hewlett packard terminals
-
-newhpkeyboard|generic entry for HP extended keyboard:\
-       :kA=\EL:kB=\Ei:kC=\EJ:kD=\EP:kE=\EK:kF=\ET:kH=\EF:\
-       :kI=\EQ:kL=\EM:kM=\ER:kN=\EU:kP=\EV:kR=\ES:kS=\EJ:\
-       :kb=^H:kd=\EB:ke=\E&s0A:kh=\Eh:kl=\ED:kr=\EC:\
-       :ks=\E&s1A:ku=\EA:tc=hp+pfk-cr:
-
-newhp|generic entry for new hewlett packard terminals:\
-       :am:bw:mi:xo:xs:\
-       :co#80:li#24:pb#4800:\
-       :ac=T1R!U2S"W3O#V4P$t5u6w7v8\072'9(LQKWlRkT5I3@2[MAJSmFjGdHQ;Y+Z*X\0724>q\\\054x.n/:\
-       :ae=^O:al=\EL:as=^N:bl=^G:bt=\Ei:cd=\EJ:ce=\EK:cr=^M:\
-       :ct=\E3:dc=\EP:dl=\EM:do=^J:ei=\ER:i1=\E&jB:im=\EQ:\
-       :ip=:le=^H:mb=\E&dA:md=\E&dF:me=\E&d@\017:mh=\E&dH:\
-       :mk=\E&dS:mr=\E&dB:nd=\EC:nw=^M^J:\
-       :..pk=\E&f0a%p1%dk0d%p2%l%dL%p2%s:\
-       :..pl=\E&f1a%p1%dk0d%p2%l%dL%p2%s:\
-       :..px=\E&f2a%p1%dk0d%p2%l%dL%p2%s:r1=\Eg:\
-       :..sa=\E&d%{0}%Pa%?%p4%t%{1}%ga%+%Pa%;%?%p1%p3%|%p6%|%t%{2}%ga%+%Pa%;%?%p2%p6%|%t%{4}%ga%+%Pa%;%?%p1%p5%|%t%{8}%ga%+%Pa%;%?%p7%t%?%ga%ts%ga%'@'%+%e%'S'%;%e%?%ga%t%ga%'@'%+%e%'@'%;%;%c%?%p9%t\016%e\017%;:\
-       :se=\E&d@:sf=^J:so=\E&dJ:sr=\ET:st=\E1:ta=\011:\
-       :ue=\E&d@:up=\EA:us=\E&dD:tc=newhpkeyboard:
-
-memhp|memory relative addressing for new HP ttys:\
-       :vt#6:\
-       :CM=\E&a%p1%dr%p2%dC:DO=\E&a+%dR:LE=\E&a-%dC:\
-       :RI=\E&a+%dC:UP=\E&a-%dR:ch=\E&a%dC:cl=\EH\EJ:\
-       :cm=\E&a%dr%dC:cv=\E&a%dR:ho=\EH:ll=\E&a23R\r:tc=newhp:
-
-scrhp|screen relative addressing for new HP ttys:\
-       :CM=\E&a%p1%dr%p2%dC:DO=\E&a+%dR:LE=\E&a-%dC:\
-       :RI=\E&a+%dC:UP=\E&a-%dR:ch=\E&a%dC:cl=\E&a0c0Y\EJ:\
-       :cm=\E&a%dy%dC:cv=\E&a%dY:ho=\E&a0y0C:ll=\E&a0y0C\EA:tc=newhp:
-
-hp+labels|"standard" label info for new HP ttys:\
-       :Nl#8:lh#2:lw#8:\
-       :LO=\E&jB:\
-       :..pn=\E&f2a%p1%dk%p2%l%Pa%?%ga%t%ga%d%e1%;d0L%?%ga%!%t %;%p2%s:
-
-hp+printer| "standard" printer info for HP ttys:\
-       :ff=\E&p4u0C:pf=\E&p13C:po=\E&p11C:ps=\EH\E&p4dF:
-
-
-# The new hp2621b is kind of a cross between the old 2621 and the
-# new 262x series of machines. It has dip-switched options. 
-# The firmware has a bug in it such that if you give it a null 
-# length label, the following character is eaten!
-hp2621b|2621b|hp 2621b with old style keyboard:\
-       :Nl#8:lh#1:lm#48:lw#8:\
-       :LO=\E&jB:kF=\ET:kH=\EF:kR=\ES:kd=\EB:kh=\Eh:kl=\ED:\
-       :kr=\EC:ku=\EA:\
-       :..pn=\E&f0a%p1%dk%p2%l%Pa%?%ga%t%ga%d%e1%;d3L%?%ga%!%t%{32}%c%;%p2%s\E%'o'%p1%+%c\r:tc=hp2621:
-
-hp2621b-p|2621b-p|hp 2621b with printer:\
-       :tc=hp+printer:tc=hp2621b:
-
-# hp2621b - new 2621b with new extended keyboard
-# these are closer to the new 26xx series than the other 2621b
-hp2621b-kx|2621b-kx|hp 2621b with extended keyboard:\
-       :tc=newhpkeyboard:tc=hp2621b:
-
-hp2621b-kx-p|2621b-kx-p|hp 2621b with new keyboard & printer:\
-       :tc=hp+printer:tc=hp2621b-kx:
-
-# Some assumptions are made in the following entries.
-# These settings are NOT set up by the initialization strings.
-# 
-#    Port Configuration
-# RecvPace=Xon/Xoff    XmitPace=Xon/Xoff       StripNulDel=Yes
-# 
-#    Terminal Configuration
-# InhHndShk(G)=Yes     InhDC2(H)=Yes
-# XmitFnctn(A)=No              InhEolWrp=No
-#
-# 
-# Hp 2622a & hp2623a display and graphics terminals
-#
-hp2622|hp2622a|2622|2622a|hp 2622:\
-       :da:db:\
-       :lm#0:pb#19200:\
-       :is=\E&dj@\r:tc=hp+pfk+cr:tc=hp+labels:tc=scrhp:
-
-# The 2623 is a 2622 with extra graphics hardware.
-hp2623|hp2623a|2623|2623a|hp 2623:\
-       :tc=hp2622:
-
-
-hp2624b-p|hp2624b-4p-p|hewlett packard 2624 B with printer:\
-       :tc=hp+printer:tc=hp2624:
-
-# The hewlett packard B can have an optional extra 6 pages of 
-# memory.
-hp2624-10p|hp2624a-10p|hp2624b-10p|2624-10p|2624a-10p|2624b-10p|hewlett packard 2624 B w/ 10 pages of memory:\
-       :lm#240:\
-       :tc=hp2624:
-
-hp2624b-10p-p|hewlett packard 2624 B w/ extra memory & printer:\
-       :lm#240:\
-       :tc=hp2624b-p:
-
-# Color manipulations for HP terminals
-
-hp+color|hp with colors:\
-       :cc:\
-       :Co#16:NC#17:pa#7:\
-       :..Ip=\E&v%?%p2%{1000}%=%t1%e.%p2%d%;a\n%?%p3%{1000}%=%t1%e.%p3%d%;b\n%?%p4%{1000}%=%t1%e.%p4%d%;c\n%?%p5%{1000}%=%t1%e.%p5%d%;x\n%?%p6%{1000}%=%t1%e.%p6%d%;y\n%?%p7%{1000}%=%t1%e.%p7%d%;z\n%p1%dI:\
-       :oc=\E&v0m1a1b1c0I\E&v1a1I\E&v1b2I\E&v1a1b3I\E&v1c4I\E&v1a1c5I\E&v1b1c6I\E&v1x1y7I:\
-       :op=\E&v0S:sp=\E&v%dS:
-
-# is2 set screen to be 80 columns wide
-hp2397a|2397a|hp2397|2397|hewlett packard 2397A color terminal:\
-       :is=\E&w6f80X:tc=memhp:tc=hp+labels:tc=hp+color:
-
-#  HP 700/44 Setup parameters:  
-# Terminal Mode                HP-PCterm
-# Inhibit Auto Wrap    NO
-# Status Line          Host Writable
-# PC Character Set     YES
-# Twenty-Five Line Mode        YES
-# XON/XOFF             @128 or 64 (sc)
-# Keycode Mode                 NO   or YES (sc)
-# Backspace Key                BS or BS/DEL
-#
-# is2  sets pcterm; autowrap; 25 lines; pc char set; prog DEL key; \E\\?
-# does not turn off keycode mode
-# smsc sets alternate start/stop; keycode on
-#
-hpansi|hp700|hewlett packard 700/44 in HP-PCterm mode:\
-       :am:eo:xn:xo:\
-       :co#80:li#25:\
-       :@7=\E[4~:S4=\E[>11h\EPO**x0/65;1/67\E\\:\
-       :S5=\E[>11l\EP1**x0/11;1/13\E[0m\E\\:XF=g:XN=e:\
-       :ac=k\277l\332m\300j\331n\305w\302q\304u\264t\303v\301x\263:\
-       :al=\E[L:bl=^G:bt=\E[Z:cd=\E[J:ce=\E[K:cl=\E[2J\E[H:\
-       :cm=\E[%i%d;%dH:cr=^M:dc=\E[P:dl=\E[M:do=\E[B:ei=:\
-       :ho=\E[H:ic=\E[@:im=:\
-       :is=\E[44"p\E[?7h\E[>10h\E[>12h\EP1;1|3/7F\E\\:\
-       :k1=\E[17~:k2=\E[18~:k3=\E[19~:k4=\E[20~:k5=\E[21~:\
-       :k6=\E[23~:k7=\E[24~:k8=\E[25~:k9=\E[26~:k;=\E[28~:\
-       :kB=\E[Z:kN=\E[6~:kP=\E[5~:kb=^H:kd=\E[B:kh=\E[1~:\
-       :kl=\E[D:kr=\E[C:ku=\E[A:le=\E[D:nd=\E[C:se=\E[m:\
-       :sf=^J:so=\E[7m:ta=^I:ue=\E[m:up=\E[A:us=\E[4m:\
-       :ve=\E[?25h:vi=\E[?25l:
-#
-hp2392|2392|2393|239x series:\
-       :co#80:\
-       :bt=\Ei:cm=\E&a%dy%dC:cv=\E&a%dY:im=\EQ:k1=\Ep\r:\
-       :k2=\Eq\r:k3=\Er\r:k4=\Es\r:k5=\Et\r:k6=\Eu\r:\
-       :k7=\Ev\r:k8=\Ew\r:kF=\EU:kN=\Eu:kP=\Ev:kR=\EV:\
-       :kh=\Eh:ue=\E&d@:us=\E&dD:tc=hpsub:
-
-2392nam|hp2392nam|HP 239x series with no auto margins:\
-       :am@:\
-       :tc=hp2392:
-
-hpsub|hp terminals -- capability subset:\
-       :am:da:db:mi:xo:xs:\
-       :li#24:\
-       :al=\EL:bl=^G:cd=\EJ:ce=\EK:ch=\E&a%dC:cl=\EH\EJ:\
-       :cr=^M:dc=\EP:dl=\EM:do=\EB:ei=\ER:\
-       :if=/usr/lib/tabset/stdcrt:is=\E&s1A\E<\E&k0\\:kb=^H:\
-       :kd=\EB:ke=\E&s0A:kh=\Eh:kl=\ED:kr=\EC:ks=\E&s1A:\
-       :ku=\EA:le=^H:nd=\EC:se=\E&d@:sf=^J:so=\E&dB:ta=^I:\
-       :up=\EA:
-
-# HP 236 console
-# From: <ddavis@ic.berkeley.edu>
-hp236|hp236 internal terminal emulator:\
-       :am:bs:\
-       :co#80:li#24:\
-       :al=\EG:ce=\EK:cl=\EF:cm=\EE%+ %+ :dc=\EJ:dl=\EH:ei=:\
-       :ic=\EI:im=:se=\ECI:so=\EBI:up=^K:ve=\EDE:vs=\EDB:
-
-# This works on a hp300 console running Utah 4.3 BSD
-# From: Craig Leres <leres@okeeffe.berkeley.edu>
-hp300h|HP Catseye console:\
-       :am:bs:da:db:mi:xs:\
-       :co#128:li#51:lm#0:sg#0:\
-       :al=\EL:bl=^G:bt=\Ei:cd=\EJ:ce=\EK:ch=\E&a%dC:\
-       :cl=\E&a0y0C\EJ:cm=\E&a%dy%dC:cr=^M:ct=\E3:\
-       :cv=\E&a%dY:dc=\EP:dl=\EM:do=\EB:ei=\ER:\
-       :if=/usr/share/tabset/stdcrt:im=\EQ:kb=^H:kd=\EB:\
-       :ke=\E&s0A:kh=\Eh:kl=\ED:kr=\EC:ks=\E&s1A:ku=\EA:\
-       :le=^H:me=\E&d@:nd=\EC:se=\E&d@:sf=^J:so=\E&dB:ta=^I:\
-       :ue=\E&d@:up=\EA:us=\E&dD:
-# From: Greg Couch <gregc@ernie.berkeley.edu>
-# (hp9837: removed obsolete ":ko=ce,cd,al,im,dl,dc:";
-# mapped ":pt:" to ":it#8:" -- esr)
-hp9837|hp98720|hp98721|HP 9000/300 workstations:\
-       :am:bs:da:db:mi:pt:xs:\
-       :co#128:it#8:li#46:lm#0:\
-       :al=\EL:bl=^G:bt=\Ei:cd=\EJ:ce=\EK:ch=\E&a%dC:\
-       :cl=\E&a0y0C\EJ:cm=\E&a%dy%dC:ct=\E3:cv=\E&a%dY:\
-       :dc=\EP:dl=\EM:do=\EB:ei=\ER:im=\EQ:is=\E&v0m1b0i&j@:\
-       :kN=\EU:kP=\EV:kb=^H:kd=\EB:ke=\E&s0A:kh=\Eh:kl=\ED:\
-       :kr=\EC:ks=\E&s1A:ku=\EA:le=^H:me=\E&d@:nd=\EC:\
-       :se=\E&v0S:sf=^J:so=\E&v5S:st=\E1:ue=\E&d@:up=\EA:\
-       :us=\E&dD:
-# From: Charles A. Finnell of MITRE <finnell@mitre.org>, developed 07SEP90
-# (hp98550: removed obsolete ":kn#12:ko=al,cd,ce,ct,dc,dl,do,ei,im,nd,st,up:";
-# mapped ":pt:" to ":it#8:" -- esr)
-hp98550|hp98550a|HP 9000 Series 300 color console:\
-       :am:bs:da:db:mi:pt:xs:\
-       :co#128:it#8:li#49:lm#0:\
-       :ae=^O:al=\EL:as=^N:bl=^G:bt=\Ei:cd=\EJ:ce=\EK:\
-       :ch=\E&a%dC:cl=\EH\EJ:cm=\E&a%dy%dC:cr=^M:ct=\E3:\
-       :cv=\E&a%dY:dc=\EP:dl=\EM:do=^J:ei=\ER:\
-       :if=/usr/share/tabset/9837:im=\EQ:k1=\Ep:k2=\Eq:\
-       :k3=\Er:k4=\Es:k5=\Et:k6=\Eu:k7=\Ev:k8=\Ew:kA=\EL:\
-       :kC=\EJ:kD=\EP:kE=\EK:kF=\ES:kH=\EF:kI=\EQ:kL=\EM:\
-       :kM=\ER:kN=\EU:kP=\EV:kR=\ET:kS=\EJ:kT=\E1:ka=\E3:\
-       :kb=^H:kd=\EB:ke=\E&s0A:kh=\Eh:kl=\ED:kr=\EC:\
-       :ks=\E&s1A:kt=\E2:ku=\EA:le=^H:mb=\E&dA:md=\E&dJ:\
-       :me=\E&d@:mh=\E&dH:mk=\E&ds:mr=\E&dJ:nd=\EC:se=\E&d@:\
-       :sf=^J:so=\E&dJ:st=\E1:ta=^I:ue=\E&d@:up=\EA:\
-       :us=\E&dD:ve=\E*dQ:vi=\E*dR:
-# From: Victor Duchovni <vic@fine.princeton.edu>
-# (hp700-wy: removed obsolete ":ko=cl,ho,ce,bt,ta,im,ei,ce,cd:nl=^J:";
-# mapped ":pt:" to ":it#8:" -- esr)
-hp700-wy|HP700/41 emulating wyse30:\
-       :am:bs:bw:mi:ms:pt:\
-       :co#80:it#8:li#24:sg#1:ug#1:\
-       :al=0.7*\EE:bl=^G:bt=\EI:cd=\EY:ce=10\ET:cl=^Z:\
-       :cm=\E=%+ %+ :cr=^M:ct=\E0:cv=\E[%+ :dc=\EW:dl=\ER:\
-       :do=^V:ei=\Er:ho=^^:if=/usr/share/tabset/hp700-wy:\
-       :im=\Eq:is=\E~"\EC\Er\E(\EG0\003\E`9\E`1:kb=\177:\
-       :kd=^V:kh=^^:kl=^H:kr=^L:ku=^K:le=^H:ll=^^^K:nd=^L:\
-       :rs=\E~"\EC\Er\E(\EG0\003\E`9\E`1:se=10\EG0:\
-       :so=10\EG4:sr=\Ej:st=\E1:ue=10\EG0:up=^K:us=10\EG8:
-hp70092|70092a|70092A|hp70092a|hp70092A|Hewlett-Packard 70092:\
-       :am:da:db:xs:\
-       :Nl#8:co#80:lh#2:li#24:lm#0:lw#8:\
-       :LF=\E&j@:LO=\E&jB:ae=^O:al=\EL:as=^N:bl=^G:bt=\Ei:\
-       :ce=\EK:ch=\E&a%dC:cl=\E&a0y0C\EJ:cm=\E&a%dy%dC:\
-       :cr=^M:ct=\E3:cv=\E&a%dY:dc=\EP:dl=\EM:do=\EB:ei=\ER:\
-       :im=\EQ:k1=\Ep:k2=\Eq:k3=\Er:k4=\Es:k5=\Et:k6=\Eu:\
-       :k7=\Ev:k8=\Ew:kA=\EL:kC=\EJ:kD=\EP:kE=\EK:kF=\ES:\
-       :kH=\EF:kI=\EQ:kL=\EM:kM=\ER:kN=\EU:kP=\EV:kR=\ET:\
-       :kS=\EJ:kT=\E1:ka=\E3:kb=^H:kd=\EB:ke=\E&s0A:kh=\Eh:\
-       :kl=\ED:kr=\EC:ks=\E&s1A:kt=\E2:ku=\EA:le=^H:\
-       :mb=\E&dA:md=\E&dB:me=\E&d@:mh=\E&dH:mr=\E&dB:nd=\EC:\
-       :se=\E&d@:so=\E&dJ:sr=\ET:st=\E1:ta=^I:ue=\E&d@:\
-       :up=\EA:us=\E&dD:
-
-bobcat|sbobcat|HP 9000 model 300 console:\
-       :am:da:db:mi:xs:\
-       :co#128:it#8:li#47:sg#0:\
-       :al=10*\EL:bt=\Ei:cd=\EJ:ce=\EK:ch=6\E&a%dC:\
-       :cl=\EH\EJ:cm=6\E&a%dy%dC:cr=^M:cv=6\E&a%dY:dc=\EP:\
-       :dl=10*\EM:do=\EB:ei=\ER:im=\EQ:kb=^H:kd=\EB:\
-       :ke=\E&s0A:kh=\Eh:kl=\ED:kr=\EC:ks=\E&s1A:ku=\EA:\
-       :le=^H:nd=\EC:nw=^M^J:se=\E&d@:sf=^J:so=\E&dB:ta=^I:\
-       :ue=\E&d@:up=\EA:us=\E&dD:
-gator-t|HP 9000 model 237 emulating extra-tall AAA:\
-       :bw:km:mi:ul:\
-       :co#128:it#8:li#94:\
-       :AL=1*\E[%dL:DC=4\E[%dP:DL=1*\E[%dM:IC=4\E[%d@:\
-       :al=\E[L:bl=^G:bt=\E[Z:cd=\E[J:ce=\E[K:ch=\E[%i%d`:\
-       :cl=\E[H\E[J:cm=\E[%i%d;%dH:cr=^M:dc=\E[P:dl=\E[M:\
-       :do=^J:ei=:ho=\E[H:ic=\E[@:im=:kb=^H:kd=^J:kl=^H:\
-       :le=^H:me=\E[m:mr=\E[7m:nd=\E[C:nw=^M^J:\
-       :..rp=%.\E[%db:se=\E[m:so=\E[7m:ta=^I:ue=\E[m:up=\EM:\
-       :us=\E[4m:
-gator|HP 9000 model 237 emulating AAA:\
-       :bw:km:mi:ul:\
-       :co#128:it#8:li#47:\
-       :AL=1*\E[%dL:DC=4\E[%dP:DL=1*\E[%dM:IC=4\E[%d@:\
-       :al=\E[L:bl=^G:bt=\E[Z:cd=\E[J:ce=\E[K:ch=\E[%i%d`:\
-       :cl=\E[H\E[J:cm=\E[%i%d;%dH:cr=^M:dc=\E[P:dl=\E[M:\
-       :do=^J:ei=:ho=\E[H:ic=\E[@:im=:kb=^H:kd=^J:kl=^H:\
-       :le=^H:me=\E[m:mr=\E[7m:nd=\E[C:nw=^M^J:\
-       :..rp=%.\E[%db:se=\E[m:so=\E[7m:ta=^I:ue=\E[m:up=\EM:\
-       :us=\E[4m:
-gator-52|HP 9000 model 237 emulating VT52:\
-       :co#128:it#8:li#47:\
-       :bl=^G:cd=\EJ:ce=\EK:cl=\EH\EJ:..cm=\EY%+ %+ :cr=^M:\
-       :do=^J:ho=\EH:kb=^H:kd=\EB:kl=\ED:kr=\EC:ku=\EA:\
-       :le=^H:nd=\EC:nw=^M^J:sr=\EI:ta=^I:up=\EA:
-gator-52t|HP 9000 model 237 emulating extra-tall VT52:\
-       :co#128:it#8:li#94:\
-       :bl=^G:cd=\EJ:ce=\EK:cl=\EH\EJ:..cm=\EY%+ %+ :cr=^M:\
-       :do=^J:ho=\EH:kb=^H:kd=\EB:kl=\ED:kr=\EC:ku=\EA:\
-       :le=^H:nd=\EC:nw=^M^J:sr=\EI:ta=^I:up=\EA:
-
-#### Honeywell-Bull
-#
-# From: Michael Haardt <michael@gandalf.moria> 11 Jan 93
-#
-
-# Honeywell Bull terminal.  Its cursor and function keys send single
-# control characters and it has standout/underline glitch.  Most programs
-# do not like these features/bugs.  This is a dumb mode for this terminal.
-# Visual bell is realized by flashing the "keyboard locked" LED.
-dku7003-dumb|Honeywell Bull DKU 7003, dumb mode:\
-       :co#80:li#25:\
-       :cd=^_:ce=\E[K:cl=^]^_:cm=\E[%i%d;%dH:cr=^M:do=^K:\
-       :ho=^]:kb=^H:kd=^K:kh=^]:kl=^Y:kr=^X:ku=^Z:le=^Y:\
-       :nd=^X:nw=^M^J:sf=^J:ta=^I:up=^Z:vb=\E[2h\E[2l:
-# Honeywell Bull terminal.  Its cursor and function keys send single
-# control characters and it has standout/underline glitch.  Most programs
-# do not like these features/bugs.  The following entry may cause problems
-# with some programs.  Visual bell is realized by flashing the "keyboard 
-# locked" LED.
-dku7003|Honeywell Bull DKU 7003, all features described:\
-       :ms:\
-       :co#80:li#25:sg#1:ug#1:\
-       :cd=^_:ce=\E[K:cl=^]^_:cm=\E[%i%d;%dH:cr=^M:do=^K:\
-       :ho=^]:kb=^H:kd=^K:kh=^]:kl=^Y:kr=^X:ku=^Z:le=^Y:\
-       :mb=\E[5m:md=\E[7m:me=\E[0m:mh=\E[2m:mr=\E[7m:nd=^X:\
-       :nw=^M^J:se=\E[0m:sf=^J:so=\E[7m:ta=^I:ue=\E[0m:\
-       :up=^Z:us=\E[4m:vb=\E[2h\E[2l:
-
-#### Lear-Siegler (adm)
-#
-# These guys are long since out of the terminals business, but
-# in 1995 many current terminals still have an adm type as one of their
-# emulations (usually their stupidest, and usually labelled adm3, though
-# these `adm3' emulations normally have adm3a+ capabilities).
-#
-
-adm1a|adm1|lsi adm1a:\
-       :am:\
-       :co#80:li#24:\
-       :bl=^G:cl=\E;:cm=\E=%+ %+ :cr=^M:do=^J:ho=^^:le=^H:\
-       :nd=^L:sf=^J:up=^K:
-adm2|lsi adm2:\
-       :am:bs:\
-       :co#80:li#24:\
-       :al=\EE:bl=^G:cd=\EY:ce=\ET:cl=\E;:cm=\E=%+ %+ :\
-       :cr=^M:dc=\EW:dl=\ER:do=^J:ei=:ho=^^:ic=\EQ:im=:\
-       :kd=^J:kh=^^:kl=^H:kr=^L:ku=^K:le=^H:nd=^L:sf=^J:\
-       :up=^K:
-# (adm3: removed obsolete ":ma=^K^P:" -- esr)
-adm3|lsi adm3:\
-       :am:bs:\
-       :co#80:li#24:\
-       :bl=^G:cl=^Z:cr=^M:do=^J:le=^H:sf=^J:
-# The following ADM-3A switch settings are assumed for normal operation:
-#      SPACE           U/L_DISP        CLR_SCRN        24_LINE
-#      CUR_CTL         LC_EN           AUTO_NL         FDX
-# Other switches may be set for operator convenience or communication
-# requirements.  I recommend
-#      DISABLE_KB_LOCK LOCAL_OFF       103             202_OFF
-#      ETX_OFF         EOT_OFF
-# (adm3a: removed obsolete ":ma=^K^P:" -- esr)
-adm3a|lsi adm3a:\
-       :am:bs:\
-       :co#80:li#24:\
-       :bl=^G:cl=\032:cm=\E=%+ %+ :cr=^M:do=^J:ho=^^:le=^H:\
-       :nd=^L:sf=^J:up=^K:
-adm3a+|adm3aplus:\
-       :kd=^J:kl=^H:kr=^L:ku=^K:tc=adm3a:
-# (adm5: removed obsolete ":ma=^Hh^Jj^Kk^Ll^^H:" & duplicate ":do+^J:" -- esr)
-adm5|lsi adm5:\
-       :sg#1:\
-       :bl=^G:cd=\EY:ce=\ET:cr=^M:do=^J:kb=^H:kh=^^:se=\EG:\
-       :so=\EG:tc=adm3a+:
-# From: <stephen%comp.lancs.ac.uk@ucl-cs.arpa>
-# (adm11: removed obsolete ":ma=^Hh^Jj^Kk^Ll^^H:" -- esr)
-adm11|lsi adm11:\
-       :am:bs:hs:\
-       :co#80:li#24:\
-       :bl=^G:cd=\EY:ce=\ET:cl=^Z:cm=\E=%+ %+ :cr=^M:do=^J:\
-       :ds=\Eh:fs=\E(\r:kb=^H:kd=^J:kh=^^:kl=^H:kr=^L:ku=^K:\
-       :nd=^L:se=\E(:so=\E):ts=\EF\E):up=^K:
-# From: Andrew Scott Beals <bandy@lll-crg.ARPA>
-# Corrected by Olaf Siebert <rhialto@polder.ubc.kun.nl>, 11 May 1995
-# (adm12: removed obsolete ":kn:ma=j^Jk^P^K^Pl ^R^L^L :" -- esr)
-adm12|lsi adm12:\
-       :am:bs:mi:\
-       :co#80:li#24:\
-       :al=\EE:bl=^G:cd=\EY:ce=\ET:cl=^Z:cm=\E=%+ %+ :cr=^M:\
-       :dc=\EW:dl=\ER:do=^J:ei=\Er:ho=^^:im=\Eq:is=\Eq:\
-       :k0=^A0\r:k1=^A1\r:k2=^A2\r:k3=^A3\r:k4=^A4\r:\
-       :k5=^A5\r:k6=^A6\r:k7=^A7\r:k8=^A8\r:k9=^A9\r:kd=^J:\
-       :kl=^H:kr=^L:ku=^K:le=^H:mk=\EG1:nd=^L:se=\EG0:\
-       :so=\EG4:ue=\EG0:up=^K:us=\EG8:
-# (adm20: removed obsolete ":kn#7:"; mapped ":pt:" to ":it#8:" -- esr)
-adm20|lear siegler adm20:\
-       :am:bs:pt:\
-       :co#80:it#8:li#24:\
-       :al=\EE:bl=^G:bt=\EI:cd=\EY:ce=\ET:cl=^Z:\
-       :cm=\E=%i%r%+^_%+^_:cr=^M:dc=\EW:dl=\ER:ei=:ho=^^:\
-       :ic=\EQ:im=:k1=^A:k2=^B:k3=^W:k4=^D:k5=^E:k6=^X:\
-       :k7=^Z:nd=^L:se=\E(:so=\E):up=^K:
-adm21|lear siegler adm21:\
-       :sg#1:ug#1:\
-       :al=30*\EE:bl=^G:cd=\EY:ce=\ET:cr=^M:dc=\EW:\
-       :dl=30*\ER:do=^J:ei=:ic=\EQ:im=:kb=^H:kd=^J:kh=^^:\
-       :kl=^H:kr=^L:ku=^K:se=\EG0:sf=^J:so=\EG4:ue=\EG0:\
-       :us=\EG8:tc=adm3a:
-# (adm22: ":em=:" was an obvious typo for ":ei=:"; also,
-# removed obsolete ":kn#7:ko=ho:ma=j^Jk^P^K^Pl ^R^L^L :" -- esr)
-adm22|lsi adm22:\
-       :am:bs:\
-       :co#80:li#24:\
-       :al=\EE:bl=^G:bt=\EI:cd=\Ey:ce=\Et:cl=\E+:\
-       :cm=\200\E=%+ %+ :cr=^M:dc=\EW:dl=\ER:do=^J:ei=:\
-       :ho=^^:ic=\EQ:im=:\
-       :is=\E%\014\014\014\016\003\200\003\002\003\002\200\200\200\200\200\200\200\200\200\200\200:\
-       :k1=^A@\r:k2=^AA\r:k3=^AB\r:k4=^AC\r:k5=^AD\r:\
-       :k6=^AE\r:k7=^AF\r:kb=^H:kd=^J:kh=^^:kl=^H:kr=^L:\
-       :ku=^K:l1=F1:l2=F2:l3=F3:l4=F4:l5=F5:l6=F6:l7=F7:\
-       :nd=^L:se=\E(:so=\E):ta=\Ei:up=^K:
-# If the adm31 gives you trouble with standout mode, check the DIP switch in
-# position 6, bank @c11, 25% from back end of the circuit board.  Should be
-# OFF.  If there is no such switch, you have an old adm31 and must use oadm31.
-# (adm31: removed obsolete ":ma=j^Jk^P^K^Pl ^R^L^L :" -- esr)
-adm31|lsi adm31:\
-       :am:bs:mi:\
-       :co#80:li#24:\
-       :al=\EE:bl=^G:cd=\EY:ce=\ET:cl=\E*:cm=\E=%+ %+ :\
-       :cr=^M:dc=\EW:dl=\ER:do=^J:ei=\Er:ho=^^:im=\Eq:\
-       :is=\Eu\E0:k0=^A0\r:k1=^A1\r:k2=^A2\r:k3=^A3\r:\
-       :k4=^A4\r:k5=^A5\r:k6=^A6\r:k7=^A7\r:k8=^A8\r:\
-       :k9=^A9\r:kd=^J:kl=^H:kr=^L:ku=^K:le=^H:nd=^L:\
-       :se=\EG0:sf=^J:so=\EG1:ue=\EG0:up=^K:us=\EG1:
-oadm31|o31|old adm31:\
-       :so=\EG4:ue@:us@:tc=adm31:
-# ADM36 in native mode (not VT52 emulation mode)
-adm36|lsi adm36:\
-       :am:mi:\
-       :co#80:li#24:\
-       :al=\E[1L:cd=\E[0J:ce=\E[0K:cl=\E[H\E[2J:\
-       :cm=\E[%i%d;%dH:dl=\E[1M:ei=\E[4l:im=\E[4h:\
-       :is=\E[6;?7h\E[4;20;?1;?3;?6;?4l\E(B\E)B\E>:kd=\EB:\
-       :kl=\ED:kr=\EC:ku=\E[A:le=^H:nd=\E[D:up=\E[A:
-# (adm42: removed obsolete ":ma=^K^P:" -- esr)
-adm42|lsi adm42:\
-       :am:bs:\
-       :co#80:li#24:\
-       :al=\EE:bl=^G:bt=\EI:cd=\EY:ce=\ET:cl=\E;:\
-       :cm=\E=%+ %+ :cr=^M:dc=\EW:dl=\ER:do=^J:ei=\Er:\
-       :im=\Eq:ip=:kd=^J:kh=^^:kl=^H:kr=^L:ku=^K:le=^H:\
-       :nd=^L:pc=\177:se=\EG0:sf=^J:so=\EG4:ta=^I:up=^K:\
-       :vs=\EC\E3 \E3(:
-# The following termcap for the Lear Siegler ADM-42 leaves the 
-# "system line" at the bottom of the screen blank (for those who 
-# find it distracting otherwise)
-adm42-nl|lsi adm-42 with no system line:\
-       :al=\EE\EF \011:bt=\EI\EF \011:cd=\EY\EF \011:\
-       :ce=\ET\EF \011:cl=\E;\EF \011:cm=\E=%+ %+ \EF \011:\
-       :dc=\EW\EF \011:dl=\ER\EF \011:ei=\Er\EF \011:\
-       :im=\Eq\EF \011:tc=adm42:
-
-#### Prime
-#
-# Yes, Prime makes terminals.  These entries were posted by Kevin J. Cummings
-# <cummings@primerd.Prime.COM> on 14 Dec 1992 and lightly edited by esr.
-
-pt100|pt200|wren|fenix|prime pt100/pt200:\
-       :am:bw:mi:ms:\
-       :co#80:it#8:li#24:\
-       :DC=\E[%dP:DL=\E[M:DO=\E[%dB:LE=\E[%dD:RI=\E[%dC:\
-       :UP=\E[%dA:al=\E[L\E[t:bt=\E[Z:cd=\E[J\E[r:\
-       :ce=\E[K\E[t:cl=\E?:cm=\E0%+!%+!:cr=^M:dc=\E[P:\
-       :do=\ED:ei=\E[4l:ho=\E$B:im=\E[4h:kb=^H:kd=\E[B:\
-       :ke=\E[>13l:kh=\E$A:kl=\E[D:kr=\E[C:ks=\E[>13h:\
-       :ku=\E[A:le=^H:nd=\E[C:nw=^M^J:se=\E[m:sf=^J:\
-       :so=\E[2;7m:ta=^I:\
-       :ti=\E[>1l\E[>2l\E[>16l\E[4l\E[>9l\E[20l\E[>3l\E[>7h\E[>12l\E[1Q:\
-       :ue=\E[m:up=\EM:us=\E[4m:\
-       :vb=\E$E\200\200\200\200\200\200\200\200\200\200\200\200\200\200\E$P:
-pt100w|pt200w|wrenw|fenixw|prime pt100/pt200 in 132-column mode:\
-       :co#132:\
-       :cm=\E[%i%d;%dH:tc=pt100:
-pt250|Prime PT250:\
-       :so@:tc=pt100:
-pt250w|Prime PT250 in 132-column mode:\
-       :so@:tc=pt100w:
-
-#### Qume (qvt)
-#
-#      Qume, Inc.
-#      3475-A North 1st Street
-#      San Jose CA 95134
-#      Vox: (800)-457-4447
-#      Fax: (408)-473-1510
-#      Net: josed@techsupp.wyse.com (Jose D'Oliveira)
-#
-# Qume was bought by Wyse, but still (as of early 1995) has its own support
-# group and production division.
-#
-# Discontinued Qume models:
-#
-# The qvt101 and qvt102 listed here are long obsolete; so is the qvt101+
-# built to replace them, and a qvt119+ which was a 101+ with available wide
-# mode (132 columns).  There was a qvt103 which added vt100/vt131 emulations
-# and an ANSI-compatible qvt203 that replaced it.  Qume started producing
-# ANSI-compatible terminals with the qvt323 and qvt61.
-#
-# Current Qume models (as of February 1995):
-#
-# All current Qume terminals have ANSI-compatible operation modes.
-# Qume is still producing the qvt62, which features emulations for other
-# popular lines such as ADDS, and dual-host capabilities.  The qvt82 is
-# designed for use as a SCO ANSI terminal.  The qvt70 is a color terminal
-# with many emulatioms including Wyse370, Wyse 325, etc.  Their newest
-# model is the qvt520, which is vt420-compatible.
-#
-# There are some ancient printing Qume terminals under `Daisy Wheel Printers'
-
-qvt101|qvt108|qume qvt 101 and QVT 108:\
-       :sg#1:\
-       :se=\EG0:so=\EG4:tc=qvt101+:
-qvt101+|qvt101p|qume qvt 101 PLUS product:\
-       :am:bw:hs:ul:\
-       :co#80:li#24:sg#0:\
-       :al=\EE:bl=^G:bt=\EI:cd=\EY:ce=\ET:cl=^Z:\
-       :cm=\E=%+ %+ :cr=^M:ct=\E3:dc=\EW:dl=\ER:do=^J:\
-       :ds=\Eg\Ef\r:ei=:fs=^M:ho=^^:ic=\EQ:im=:k1=^A@\r:\
-       :k2=^AA\r:k3=^AB\r:k4=^AC\r:k5=^AD\r:k6=^AE\r:\
-       :k7=^AF\r:k8=^AG\r:k9=^AH\r:k;=^AI\r:kA=\EE:kB=\EI:\
-       :kE=\ET:kI=\EQ:kL=\ER:kS=\EY:kb=^H:kd=^J:kh=^^:kl=^H:\
-       :kr=^L:ku=^K:le=^H:nd=^L:pf=\EA:po=\E@:se=\E(:sf=^J:\
-       :so=\E0P\E):st=\E1:ta=^I:ts=\Eg\Ef:ue=\EG0:up=^K:\
-       :us=\EG8:vb=\Eb\Ed:ve=\E.4:vs=\E.2:
-qvt102|qume qvt 102 product:\
-       :ve=\E.:tc=qvt101:
-qvt103|qume qvt 103:\
-       :am:xn:xo:\
-       :co#80:it#8:li#24:vt#3:\
-       :DO=\E[%dB:LE=\E[%dD:RI=\E[%dC:UP=\E[%dA:bl=^G:\
-       :cd=\E[J:ce=\E[K:cl=\E[H\E[2J:cm=\E[%i%d;%dH:cr=^M:\
-       :cs=\E[%i%d;%dr:ct=\E[3g:do=^J:ho=\E[H:k1=\EOP:\
-       :k2=\EOQ:k3=\EOR:k4=\EOS:kb=^H:kd=\EOB:ke=\E[?1l\E>:\
-       :kl=\EOD:kr=\EOC:ks=\E[?1h\E=:ku=\EOA:le=^H:mb=\E[5m:\
-       :md=\E[1m:me=\E[m:mr=\E[7m:nd=\E[C:\
-       :r2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h:rc=\E8:\
-       :..sa=\E[%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;m:\
-       :sc=\E7:se=\E[m:sf=^J:so=\E[7m:sr=\EM:st=\EH:ta=^I:\
-       :ue=\E[m:up=\E[A:us=\E[4m:
-qvt103-w|qume qvt103 132 cols:\
-       :co#132:li#24:\
-       :r2=\E>\E[?3h\E[?4l\E[?5l\E[?8h:tc=qvt103:
-qvt119+|qvt119p|qvt119|qume qvt 119 and 119PLUS terminals:\
-       :am:hs:mi:ms:\
-       :co#80:li#24:sg#0:\
-       :al=\EE:bl=^G:bt=\EI:cd=\Ey:ce=\Et:cl=\E*1:\
-       :cm=\E=%+ %+ :cr=^M:ct=\E3:dc=\EW:dl=\ER:do=^J:\
-       :ds=\Eg\Ef\r:ei=\Er:fs=^M:ho=^^:im=\Eq:\
-       :is=\EDF\EC\EG0\Er\E(\E%EX:k0=^AI\r:k1=^A@\r:\
-       :k2=^AA\r:k3=^AB\r:k4=^AC\r:k5=^AD\r:k6=^AE\r:\
-       :k7=^AF\r:k8=^AG\r:k9=^AH\r:kb=^H:kd=^J:kh=^^:kl=^H:\
-       :kr=^L:ku=^K:le=^H:nd=^L:pf=\EA:po=\E@:se=\EG0:sf=^J:\
-       :so=\EG4:sr=\EJ:st=\E1:ta=^I:ts=\Eg\Ef:ue=\EG0:up=^K:\
-       :us=\EG8:vb=\En0\En1:ve=\E.4:vs=\E.2:
-qvt119+-25|qvt119p-25|QVT 119 PLUS with 25 data lines:\
-       :li#25:\
-       :tc=qvt119+:
-qvt119+-w|qvt119p-w|qvt119-w|QVT 119 and 119 PLUS in 132 column mode:\
-       :co#132:\
-       :is=\EDF\EC\EG0\Er\E(\E%\EX\En4:tc=qvt119+:
-qvt119+-25-w|qvt119p-25-w|qvt119-25-w|QVT 119 and 119 PLUS 132 by 25:\
-       :li#25:\
-       :tc=qvt119+:
-qvt203|qvt203+|qume qvt 203 Plus:\
-       :am:xn:xo:\
-       :co#80:it#8:li#24:vt#3:\
-       :DO=\E[%dB:LE=\E[%dD:RI=\E[%dC:UP=\E[%dA:al=\E[L:\
-       :bl=^G:cd=\E[J:ce=\E[K:cl=\E[H\E[2J:cm=\E[%i%d;%dH:\
-       :cr=^M:cs=\E[%i%d;%dr:ct=\E[3g:dc=\E[P:dl=\E[M:do=^J:\
-       :ei=\E[4l:ho=\E[H:im=\E[4h:ip=:k0=\E[29~:k1=\E[17~:\
-       :k2=\E[18~:k3=\E[19~:k4=\E[20~:k5=\E[21~:k6=\E[23~:\
-       :k7=\E[24~:k8=\E[25~:k9=\E[28~:kb=^H:kd=\EOB:\
-       :ke=\E[?1l\E>:kl=\EOD:kr=\EOC:ks=\E[?1h\E=:ku=\EOA:\
-       :le=^H:mb=\E[5m:md=\E[1m:me=\E[m:mr=\E[7m:nd=\E[C:\
-       :r2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h:rc=\E8:\
-       :..sa=\E[%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;m:\
-       :sc=\E7:se=\E[m:sf=\n:so=\E[7m:sr=\EM:st=\EH:ta=^I:\
-       :ue=\E[m:up=\E[A:us=\E[4m:
-qvt203-w|qvt203-w-am|qume qvt 203 PLUS in 132 cols (w/advanced video):\
-       :co#132:li#24:\
-       :r2=\E>\E[?3h\E[?4l\E[?5l\E[?8h:tc=qvt203:
-#
-#      Since a command is present for enabling 25 data lines,
-#      a specific terminfo entry may be generated for the 203.
-#      If one is desired for the QVT 119 PLUS then 25 lines must
-#      be selected in the status line (setup line 9).
-#
-qvt203-25|QVT 203 PLUS with 25 by 80 column mode:\
-       :co#80:li#25:\
-       :is=\E[=40h\E[?3l:tc=qvt203:
-qvt203-25-w|QVT 203 PLUS with 25 by 132 columns:\
-       :co#132:li#25:\
-       :r2=\E[?3h\E[=40h:tc=qvt203:
-
-#### Televideo (tvi)
-#
-#      TeleVideo
-#      550 East Brokaw Road
-#      PO Box 49048    95161
-#      San Jose CA 95112
-#      Vox: (408)-954-8333
-#      Fax: (408)-954-0623
-#
-#
-# There are some tvi terminals that require incredible amounts of padding and
-# some that don't.  I'm assuming 912 and 920 are the old slow ones,
-# and 912b, 912c, 920b, 920c are the new ones that don't need padding.
-#
-# All of these terminals (912 to 970 and the tvipt) are discontinued.  Newer
-# Televideo terminals are ANSI and PC-ANSI compatible.
-
-tvi803|televideo 803:\
-       :cl=\E*:tc=tvi950:
-
-# Vanilla tvi910 -- W. Gish <cswarren@violet> 10/29/86
-# (tvi910: removed obsolete ":ma=^Kk^Ll^R^L:";
-# mapped ":pt:" to ":it#8:"; added ":ug#0:" for terminfo translation;
-# added khome, cub1, cud1, ind, hpa, vpa, am, msgr from SCO entry -- esr)
-tvi910|televideo model 910:\
-       :am:bs:ms:pt:\
-       :co#80:it#8:li#24:sg#1:ug#0:\
-       :bl=^G:bt=\EI:cd=\EY:ce=\ET:ch=\E]%+ :cl=^Z:\
-       :cm=\E=%+ %+ :cr=^M:cv=\E[%+ :do=^J:ho=\E=\001\001:\
-       :if=/usr/share/tabset/stdcrt:k0=^AI\r:k1=^A@\r:\
-       :k2=^AA\r:k3=^AB\r:k4=^AC\r:k5=^AD\r:k6=^AE\r:\
-       :k7=^AF\r:k8=^AG\r:k9=^AH\r:kb=^H:kd=^J:kh=^^:kl=^H:\
-       :kr=^L:ku=^K:le=^H:nd=^L:se=\EG0:sf=^J:so=\EG4:\
-       :ue=\EG0:up=^K:us=\EG8:
-# From: Alan R. Rogers <rogers%albany@csnet-relay>
-# as subsequently hacked over by someone at SCO
-# (tvi910+: removed obsolete ":ma=^K^P^L :"; mapped ":pt:" to ":it#8:";
-# added ":ug#0:" for terminfo translation -- esr)
-tvi910+|910+|televideo 910+:\
-       :am:bs:ms:pt:\
-       :co#80:it#8:li#24:sg#1:ug#0:\
-       :al=\EE:bl=^G:bt=\EI:cd=\EY:ce=\ET:ch=\E]%+ :cl=^Z:\
-       :cm=\E=%+ %+ :cr=^M:cv=\E[%+ :dc=\EW:dl=\ER:do=^J:\
-       :ei=:ho=^^:ic=\EQ:if=/usr/share/tabset/stdcrt:im=:\
-       :k0=^A@\r:k1=^AA\r:k2=^AB\r:k3=^AC\r:k4=^AD\r:\
-       :k5=^AE\r:k6=^AF\r:k7=^AG\r:k8=^AH\r:k9=^AI\r:kb=^H:\
-       :kd=^J:kh=^^:kl=^H:kr=^L:ku=^K:le=^M:ll=\E=7 :nd=^L:\
-       :se=\EG0:sf=^J:so=\EG4:ue=\EG0:up=^K:us=\EG8:
-
-# (tvi912: removed obsolete ":ma=^K^P^L :";
-# mapped ":pt:" to default tabs -- esr)
-tvi912|tvi920|old televideo 912:\
-       :am:bs:pt:\
-       :co#80:li#24:sg#1:ug#1:\
-       :al=\EE:bl=^G:cd=\Ey:ce=\ET:cl=^Z:cm=\E=%+ %+ :cr=^M:\
-       :ct=\E3:dc=\EW:dl=\ER:do=^J:ei=:ho=^^:ic=\EQ:\
-       :if=/usr/share/tabset/stdcrt:im=:k0=^AI\r:k1=^A@\r:\
-       :k2=^AA\r:k3=^AB\r:k4=^AC\r:k5=^AD\r:k6=^AE\r:\
-       :k7=^AF\r:k8=^AG\r:k9=^AH\r:kb=^H:kd=^J:kl=^H:kr=^L:\
-       :ku=^K:le=^H:nd=^L:se=\Ek:sf=^J:so=\Ej:st=\E1:ta=^I:\
-       :ue=\Em:up=^K:us=\El:
-# the 912 has a <funct> key that's like shift: <funct>8 xmits "^A8\r".
-# The 920 has this plus real function keys that xmit different things.
-# Terminfo makes you use the funct key on the 912 but the real keys on the 920.
-tvi912c|tvi912b|912c|912b|tvi|new televideo 912:\
-       :al=\EE:dl=\ER:tc=tvi912:
-# set to page 1 when entering ex (\E-17 )
-# reset to page 0 when exiting ex (\E-07 )
-tvi912-2p|tvi920-2p|912-2p|920-2p|tvi-2p|televideo w/2 pages:\
-       :te=\E-07 :ti=\E-17 :tc=tvi912:
-# We got some new tvi912c terminals that act really weird on the regular 
-# termcap, so one of our gurus worked this up. Seems that cursor 
-# addressing is broken.
-tvi912cc|tvi912 at cowell college:\
-       :cm@:tc=tvi912c:
-
-tvi920b|tvi920c|new televideo 920:\
-       :al=\EE:dl=\ER:k0=^AI\r:k1=^A@\r:k2=^AA\r:k3=^AB\r:\
-       :k4=^AC\r:k5=^AD\r:k6=^AE\r:k7=^AF\r:k8=^AG\r:\
-       :k9=^AH\r:tc=tvi912:
-
-tvi924|televideo tvi924:\
-       :am:bw:hs:in:mi:ms:xn:xo:\
-       :co#80:it#8:li#24:sg#0:ws#80:\
-       :F1=^AK\r:F2=^AL\r:F3=^AM\r:F4=^AN\r:F5=^AO\r:al=\EE:\
-       :bl=^G:bt=\EI:cd=\Ey:ce=\Et:cl=\E*0:cm=\E=%+ %+ :\
-       :cr=^M:cs=\E_%+ %+ :ct=\E3:dc=\EW:dl=\ER:do=^V:\
-       :ds=\Es0:ei=:fs=^Y:ho=^^:\
-       :i1=\017\E%\E'\E(\EDF\EC\EG0\EN0\Es0\Ev0:ic=\EQ:\
-       :if=/usr/lib/tabset/stdcrt:im=:k0=^A@\r:k1=^AA\r:\
-       :k2=^AB\r:k3=^AC\r:k4=^AD\r:k5=^AE\r:k6=^AF\r:\
-       :k7=^AG\r:k8=^AH\r:k9=^AI\r:k;=^AJ\r:kA=\EE:kC=\E*0:\
-       :kD=\EW:kE=\Et:kI=\EQ:kL=\ER:kS=\Ey:kb=^H:kd=^V:\
-       :kh=^^:kl=^H:kr=^L:ku=^K:l0=F1:l1=F2:l2=F3:l3=F4:\
-       :l4=F5:l5=F6:l6=F7:l7=F8:l8=F9:l9=F10:la=F11:le=^H:\
-       :mb=\EG2:me=\EG0:mk=\EG1:nd=^L:pk=\E|%+1%s\031:\
-       :se=\EG0:sf=^J:so=\EG4:sr=\Ej:st=\E1:ta=^I:ts=\Ef:\
-       :ue=\EG0:up=^K:us=\EG8:vb=\Eb\Ed:ve=\E.3:vi=\E.0:\
-       :vs=\E.1:
-tvi924vb|924vb|televideo model 924 visual bells:\
-       :vb=\Eb\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\Ed:tc=tvi924:
-
-tvi925|925|televideo 925:\
-       :am:bw:hs:ul:\
-       :co#80:li#24:sg#1:ug#1:\
-       :al=\EE:bl=^G:bt=\EI:cd=\EY:ce=\ET:cl=^Z:\
-       :cm=\E=%+ %+ :cr=^M:ct=\E3:dc=\EW:dl=\ER:do=^V:\
-       :ds=\Eh:ei=:fs=^M\Eg:ho=^^:ic=\EQ:im=:k0=^AI\r:\
-       :k1=^A@\r:k2=^AA\r:k3=^AB\r:k4=^AC\r:k5=^AD\r:\
-       :k6=^AE\r:k7=^AF\r:k8=^AG\r:k9=^AH\r:kA=\EE:kC=^Z:\
-       :kD=\EW:kE=\ET:kI=\EQ:kL=\ER:kS=\EY:kb=^H:kd=^V:\
-       :kh=^^:kl=^H:kr=^L:ku=^K:le=^H:se=\EG0:sf=^J:so=\EG4:\
-       :st=\E1:ta=^I:ts=\Eh\Ef:ue=\EG0:up=^K:us=\EG8:\
-       :vb=\Eb\Ed:ve=\E.4:vs=\E.2:
-tvi925vb|925vb|televideo model 925 visual bells:\
-       :vb=\Eb\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\Ed:tc=tvi925:
-# Since the 925 uses a character position to store the escape sequences to go
-# in and out of both stand out and underline modes, screen positioning is
-# difficult.  The following 925 entries don't use these modes.
-tvi925n|925n|televideo model 925 no standout or underline:\
-       :se@:so@:ue@:us@:tc=tvi925:
-tvi925vbn|925vbn|televideo model 925 visual bells no so or ul:\
-       :vb=\Eb\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\Ed:tc=tvi925n:
-
-# From: Tim Curry, Univ. of Central Fla. <duke!ucf-cs!tim> 5/21/82 
-# (tvi925a: removed obsolete ":kn#12:"; mapped ":pt:" to ":it#8:" --esr)
-tvi925a|925a|TeleVideo Model 925:\
-       :am:bs:bw:pt:\
-       :co#80:it#8:li#24:sg#1:ug#1:\
-       :al=\EE:bt=\EI:cd=\EY:ce=\ET:cl=^Z:cm=\E=%+ %+ :\
-       :dc=\EW:dl=\ER:do=^V:ei=:ic=\EQ:\
-       :if=/usr/share/tabset/std:im=:is=\El:kb=^H:kd=^V:\
-       :kh=^^:kl=^H:kr=^L:ku=^K:nd=^L:se=\EG0:so=\EG4:\
-       :ue=\EG0:up=^K:us=\EG8:\
-       :vb=\Eb\200\200\200\200\200\200\200\200\200\200\200\200\200\200\Ed:\
-       :ve=\E.4:vs=\E.2:
-
-# From: Todd Litwin <litwin@litwin.jpl.nasa.gov> 28 May 1993
-# Originally Tim Curry, Univ. of Central Fla., <duke!ucf-cs!tim> 5/21/82
-# for additional capabilities, 
-# The following tvi descriptions from B:pjphar and virus!mike
-# is for all 950s.  It sets the following attributes:
-# full duplex (\EDF)           write protect off (\E()
-# conversation mode (\EC)      graphics mode off (\E%)
-# white on black (\Ed)         auto page flip off (\Ew)
-# turn off status line (\Eg)   clear status line (\Ef\r)
-# normal video (\E0)           monitor mode off (\EX or \Eu)
-# edit mode (\Er)              load blank char to space (\Ee\040)
-# line edit mode (\EO)         enable buffer control (^O)
-# protect mode off (\E\047)    duplex edit keys (\El)
-# program unshifted send key to send line all (\E016)
-# program shifted send key to send line unprotected (\E004)
-# set the following to nulls:
-#      field delimiter (\Ex0\200\200)
-#      line delimiter (\Ex1\200\200)
-#      start-protected field delimiter (\Ex2\200\200)
-#      end-protected field delimiter (\Ex3\200\200)
-# set end of text delimiter to carriage return/null (\Ex4\r\200)
-# (tvi950: early versions had ":ko=ic,dc,al,dl,cl,bt,ce,cd:"
-# and ":ma=^Vj^Kk^Hh^Ll^^H:". I mapped ":pt:" to ":it#8:";
-#
-tvi950|950|televideo950:\
-       :am:bs:hs:mi:ms:pt:xn:xo:\
-       :co#80:li#24:sg#1:ug#1:\
-       :ac=d\rc\014e\nb\011i\013:ae=^X:al=\EE:as=^U:bl=^G:\
-       :bt=\EI:cd=\Ey:ce=\Et:cl=\E*:cm=\E=%+ %+ :cr=^M:\
-       :ct=\E3:dc=\EW:dl=\ER:do=^J:ds=\Eg\Ef\r:ei=\Er:fs=^M:\
-       :ho=^^:im=\Eq:\
-       :is=\EDF\EC\Ed\EG0\Eg\Er\EO\E'\E(\E%\Ew\EX\Ee \017\011\El\E016\E004\Ex0\200\200\Ex1\200\200\Ex2\200\200\011\Ex3\200\200\Ex4\r\200\Ef\r:\
-       :k0=^A0\r:k1=^A@\r:k2=^AA\r:k3=^AB\r:k4=^AC\r:\
-       :k5=^AD\r:k6=^AE\r:k7=^AF\r:k8=^AG\r:k9=^AH\r:kA=\EE:\
-       :kB=\EI:kC=\E*:kD=\EW:kE=\Et:kL=\ER:kS=\Ey:kb=^H:\
-       :kd=^V:kh=^^:kl=^H:kr=^L:ku=^K:le=^H:nd=^L:pf=\Ea:\
-       :po=\E`:se=\EG0:sf=^J:so=\EG4:sr=\Ej:st=\E1:ta=^I:\
-       :ts=\Eg\Ef:ue=\EG0:up=^K:us=\EG8:\
-       :vb=\Eb\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\Ed:
-#
-# is for 950 with two pages adds the following:
-#      set 48 line page (\E\\2)
-#      place cursor at page 0, line 24, column 1 (\E-07 )
-#      set local (no send) edit keys (\Ek)
-#
-# two page 950 adds the following:
-#      when entering ex, set 24 line page (\E\\1)
-#      when exiting ex, reset 48 line page (\E\\2)
-#                       place cursor at 0,24,1 (\E-07 )
-#      set duplex (send) edit keys (\El) when entering vi
-#      set local (no send) edit keys (\Ek) when exiting vi
-#
-tvi950-2p|950-2p|televideo950 w/2 pages:\
-       :is=\EDF\EC\Ed\EG0\Eg\Er\EO\E'\E(\E%\Ew\EX\Ee \017\011\Ek\E016\E004\Ex0\200\200\Ex1\200\200\Ex2\200\200\011\Ex3\200\200\Ex4\r\200\E\\2\E-07 \011:\
-       :ke=\Ek:ks=\El:te=\E\\2\E-07 :ti=\E\\1\E-07 :tc=tvi950:
-#
-# is for 950 with four pages adds the following:
-#      set 96 line page (\E\\3)
-#      place cursor at page 0, line 24, column 1 (\E-07 )
-#
-# four page 950 adds the following:
-#      when entering ex, set 24 line page (\E\\1)
-#      when exiting ex, reset 96 line page (\E\\3)
-#                       place cursor at 0,24,1 (\E-07 )
-#
-tvi950-4p|950-4p|televideo950 w/4 pages:\
-       :is=\EDF\EC\Ed\EG0\Eg\Er\EO\E'\E(\E%\Ew\EX\Ee \017\011\Ek\E016\E004\Ex0\200\200\Ex1\200\200\Ex2\200\200\011\Ex3\200\200\Ex4\r\200\E\\3\E-07 \011:\
-       :ke=\Ek:ks=\El:te=\E\\3\E-07 :ti=\E\\1\E-07 :tc=tvi950:
-#
-# is for reverse video 950 changes the following:
-#      set reverse video (\Ed)
-#
-# set vb accordingly (\Ed ...nulls... \Eb)
-#
-tvi950-rv|950-rv|televideo950 rev video:\
-       :is=\EDF\EC\Eb\EG0\Eg\Er\EO\E'\E(\E%\Ew\EX\Ee \017\011\El\E016\E004\Ex0\200\200\Ex1\200\200\Ex2\200\200\011\Ex3\200\200\Ex4\r\200:\
-       :vb=\Ed\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\Eb:tc=tvi950:
-#
-# uses the appropriate entries from 950-2p and 950-rv
-#
-tvi950-rv-2p|950-rv-2p|televideo950 rev video w/2 pages:\
-       :is=\EDF\EC\Eb\EG0\Eg\Er\EO\E'\E(\E%\Ew\EX\Ee \017\011\Ek\E016\E004\Ex0\200\200\Ex1\200\200\Ex2\200\200\011\Ex3\200\200\Ex4\r\200\E\\2\E-07 :\
-       :ke=\Ek:ks=\El:te=\E\\2\E-07 :ti=\E\\1\E-07 :\
-       :vb=\Ed\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\Eb:tc=tvi950:
-#
-# uses the appropriate entries from 950-4p and 950-rv
-#
-tvi950-rv-4p|950-rv-4p|televideo950 rev video w/4 pages:\
-       :is=\EDF\EC\Eb\EG0\Er\EO\E'\E(\E%\Ew\EX\Ee \017\011\Ek\E016\E004\Ex0\200\200\Ex1\200\200\Ex2\200\200\011\Ex3\200\200\Ex4\r\200\E\\3\E-07 :\
-       :ke=\Ek:ks=\El:te=\E\\3\E-07 :ti=\E\\1\E-07 :\
-       :vb=\Ed\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\Eb:tc=tvi950:
-# From: Andreas Stolcke <stolcke@icsi.berkeley.edu>
-# (tvi955: removed obsolete ":ko=ic,dc,al,dl,cl,bt,ce,cd:ma:=^Vj^Kk^Hh^Ll^^H";
-# mapped ":pt:" to ":it#8:"; removed incorrect (and overridden) ":do=^J:";
-# fixed broken continuations in the :rs: string -- esr)
-tvi955|televideo955:\
-       :5i:am:bs:hs:mi:pt:xn:xo:\
-       :co#80:it#8:li#24:\
-       :RA=\E[=7l:RX=^N:SA=\E[=7h:SX=^O:\
-       :ac=0_`RjHkGlFmEnIoPqKsQtMuLvOwNxJ:ae=\E%:al=\EE:\
-       :as=\E$:bt=\EI:cd=\Ey:ce=\Et:cl=\E*:cm=\E=%+ %+ :\
-       :ct=\E3:dc=\EW:dl=\ER:do=^V:ds=\Eg\Ef\r:ei=\Er:fs=^M:\
-       :ho=^^:im=\Eq:is=\E[=3l\EF1\Ed\EG0\E[=5l\E%\El:\
-       :k0=^A0\r:k1=^A@\r:k2=^AA\r:k3=^AB\r:k4=^AC\r:\
-       :k5=^AD\r:k6=^AE\r:k7=^AF\r:k8=^AG\r:k9=^AH\r:kA=\EE:\
-       :kB=\EI:kC=\EY:kD=\EW:kE=\ET:kI=\EQ:kL=\ER:kM=\EQ:\
-       :kN=\EK:kP=\EJ:kT=\E1:ka=\E3:kb=^H:kd=^V:kh=^^:kl=^H:\
-       :kr=^L:kt=\E2:ku=^K:le=^H:mb=\EG2:me=\EG0\E[=5l:\
-       :mh=\E[=5h:mk=\EG1:mr=\EG4:nd=^L:pf=\Ea:po=\E`:\
-       :ps=\EP:\
-       :rs=\EDF\EC\Eg\Er\EO\E'\E(\Ew\EX\Ee \017\E0P\E6\200\E0p\E4\200\Ef\r:\
-       :se=\EG0:so=\EG4:sr=\Ej:st=\E1:ts=\Eg\Ef:ue=\EG0:\
-       :up=^K:us=\EG8:\
-       :vb=\Eb\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\Ed:\
-       :ve=\E.2:vi=\E.0:vs=\E.1:
-tvi955-w|955-w|televideo955 w/132 cols:\
-       :co#132:\
-       :cm=\E[%i%d;%dH:is=\E[=3h\EF1\Ed\EG0\E[=5l\E%\El:tc=tvi955:
-# use half-intensity as normal mode, full intensity as bold (md)
-tvi955-hb|955-hb|televideo955 half-bright:\
-       :is=\E[=3l\EF1\Ed\EG0\E[=5h\E%\El:md=\E[=5l:\
-       :me=\EG0\E[=5h:mh@:tc=tvi955:
-# From: Humberto Appleton <beto@cs.utexas.edu>, 880521 UT Austin
-# (tvi970: removed ":sg#0:"; mapped ":pt:" to ":it#8:" -- esr)
-tvi970|televideo970:\
-       :bs:da:db:mi:ms:pt:\
-       :co#80:it#8:li#24:\
-       :ae=\E(B:al=\E[L:as=\E(B:bt=\E[Z:cd=\E[0J:ce=\E[0K:\
-       :cl=\E[H\E[2J:cm=\E[%i%d;%df:dc=\E[P:dl=\E[M:do=\ED:\
-       :ei=\E[4l:im=\E[4h:\
-       :is=\E<\E[?21l\E[19h\E[1Q\E[10l\E[7l\E[H\E[2J:\
-       :k1=\E?a:k2=\E?b:k3=\E?c:k4=\E?d:k5=\E?e:k6=\E?f:\
-       :k7=\E?g:k8=\E?h:k9=\E?i:kb=^H:kd=\E[B:kh=\E[H:\
-       :kl=\E[D:kr=\E[C:ku=\E[A:nd=\E[C:se=\E[0m:so=\E[7m:\
-       :sr=\EM:ue=\E[0m:up=\EM:us=\E[4m:\
-       :vb=\E[5;m\200\200\200\200\200\200\200\200\200\E[0;m:\
-       :vs=\E[1Q:
-# From Gene Rochlin <armsis@amber> 9/19/84. 
-# Works with vi and rogue.  NOTE: Esc v sets autowrap on, Esc u sets 80 chars
-# per line (rather than 40), Esc K chooses the normal character set.  Not sure
-# padding is needed, but adapted from the tvi920c termcap.  The :so: and :us:
-# strings are klutzy, but at least use no screen space.
-# (tvipt: removed obsolete ":ma=^Kk^Ll^R^L:" -- esr)
-tvipt|televideopt:\
-       :am:bs:\
-       :co#80:li#24:\
-       :al=\EE<5*>:bt=\EI:ce=\ET:cl=^Z:cm=\E=%+ %+ :\
-       :dl=\ER<5*>:ho=^^:if=/usr/share/tabset/stdcrt:\
-       :is=\Ev\Eu\EK:kb=^H:kd=^J:kl=^H:kr=^L:ku=^K:nd=^L:\
-       :se=\EF:so=\EG1@A\EH:ue=\EF:up=^K:us=\EG1B@\EH:
-
-#### Visual (vi)
-#
-
-# (vi50: mapped ":pt:" to default 8-char tabs -- esr)
-vi50|visual 50:\
-       :am:bs:ms:pt:\
-       :co#80:li#24:\
-       :al=\EL:bl=^G:cd=\Ek:ce=\EK:cl=^Z:cm=\E=%+ %+ :cr=^M:\
-       :dl=\EM:do=^J:ho=\EH:kb=^H:kd=\EB:kh=\EH:kl=\ED:\
-       :kr=\EC:ku=\EA:le=^H:nd=^L:se=\ET:sf=^J:so=\EU:ta=^I:\
-       :up=^K:
-# From: Jeff Siegal <jbs@athena.mit.edu>
-# (vi55: mapped ":pt:" to ":it#8:" -- esr)
-vi55|Visual 55:\
-       :am:bs:mi:ms:pt:\
-       :co#80:it#8:li#24:\
-       :al=\EL:cd=\EJ:ce=\EK:cl=\Ev:cm=\EY%+ %+ :\
-       :cs=\E_%+A%+A:dc=\Ew:dl=\EM:do=^J:ei=\Eb:ho=\EH:\
-       :im=\Ea:is=\Ev\E_AX\Eb\EW\E9P\ET:kb=^H:kd=\EB:kl=\ED:\
-       :kr=\EC:ku=\EA:le=^H:nd=\EC:se=\ET:so=\EU:sr=\EI:\
-       :up=\EA:
-
-# The Visual 200 beeps when you type a character in insert mode.
-# This is a horribly obnoxious misfeature, and some of the entries
-# below try to get around the problem by ignoring the feature or
-# turning it off when inputting a character.  They are said not to
-# work well at 300 baud.  (You could always cut the wire to the bell!)
-# From: <mike@brl-vgr> Mon Nov 14 08:34:29 1983
-# (vi200: mapped ":pt:" to default 8-char tabbing -- esr)
-vi200|vis200|visual 200 with function keys:\
-       :am:bs:pt:\
-       :co#80:li#24:\
-       :al=\EL:bl=^G:cd=\Ey:ce=\Ex:cl=\Ev:cm=\EY%+ %+ :\
-       :cr=^M:dc=\EO:dl=\EM:do=^J:ei=:ho=\EH:ic=\Ei \010\Ej:\
-       :im=:is=\E3\Eb\Ej\E\\\El\EG\Ec\Ek:k0=\EP:k1=\EQ:\
-       :k2=\ER:k3=\E :k4=\E!:k5=\E":k6=\E#:k7=\E$:k8=\E%:\
-       :k9=\E&:kd=\EB:kh=\EH:kl=\ED:kr=\EC:ku=\EA:le=^H:\
-       :nd=\EC:se=\E3:sf=^J:so=\E4:sr=\EI:ta=^I:up=\EA:\
-       :ve=\Ec:vs=\Ed:
-vi200-rv-ic|visual 200 reverse video using insert char:\
-       :ei=\Ej:ic@:im=\Ei:tc=vi200-rv:
-# The older Visuals didn't come with function keys. This entry uses
-# ks and ke so that the keypad keys can be used as function keys.
-# If your version of vi doesn't support function keys you may want
-# to use vi200-f.
-# (vi200: mapped ":pt:" to ":it#8:" -- esr)
-vi200-f|visual|visual 200 no function keys:\
-       :am:bs:pt:\
-       :co#80:it#8:li#24:\
-       :al=\EL:bl=^G:cd=\Ey:ce=\Ex:cl=\Ev:cm=\EY%+ %+ :\
-       :cr=^M:dc=\EO:dl=\EM:do=^J:ei=:ho=\EH:ic=\Ei \010\Ej:\
-       :im=:is=\E3\Eb\Ej\E\\\El\EG\Ed\Ek:k0=\E?p:k1=\E?q:\
-       :k2=\E?r:k3=\E?s:k4=\E?t:k5=\E?u:k6=\E?v:k7=\E?w:\
-       :k8=\E?x:k9=\E?y:kd=\EB:ke=\E>:kh=\EH:kl=\ED:kr=\EC:\
-       :ks=\E=:ku=\EA:le=^H:nd=\EC:sf=^J:sr=\EI:ta=^I:\
-       :up=\EA:ve=\Ec:vs=\Ed:
-vi200-rv|visual 200 reverse video:\
-       :se=\E3:so=\E4:sr@:ve@:vs@:tc=vi200:
-vi200-ic|visual 200 using insert char:\
-       :ei=\Ej:ic@:im=\Ei:tc=vi200:
-
-# the function keys are programmable but we don't reprogram
-# them to their default values with "is" because programming
-# them is very verbose. maybe an "if" file should be made for
-# the 300 and they could be stuck in it.
-vi300|visual 300 ansi x3.64:\
-       :am:bw:mi:xn:\
-       :co#80:li#24:\
-       :al=\E[L:bl=^G:bt=\E[Z:cd=\E[J:ce=\E[K:cl=\E[H\E[2J:\
-       :cm=\E[%i%d;%dH:cr=^M:dc=\E[P:dl=\E[M:do=\E[B:\
-       :ei=\E[4l:ho=\E[H:im=\E[4h:\
-       :is=\E[7s\E[2;3;4;20;?5;?6l\E[12;?7h\E[1Q\E[0;1(D\E[8s:\
-       :k1=\E_A\E\\:k2=\E_B\E\\:k3=\E_C\E\\:k4=\E_D\E\\:\
-       :k5=\E_E\E\\:k6=\E_F\E\\:k7=\E_G\E\\:k8=\E_H\E\\:\
-       :k9=\E_I\E\\:kd=\E[B:kh=\E[H:kl=\E[D:kr=\E[C:ku=\E[A:\
-       :le=^H:nd=\E[C:se=\E[m:sf=^J:so=\E[1m:sr=\EM:ta=^I:\
-       :ue=\E[m:up=\E[A:us=\E[4m:
-vi300-rv|visual 300 reverse video:\
-       :bl=^G:cr=^M:do=^J:\
-       :is=\E[7s\E[2;3;4;20;?6l\E[12;?5;?7h\E[1Q\E[0;1(D\E[8s:\
-       :sf=^J:tc=vi300:
-# slow scroll doesn't work that well; if you type on the
-# keyboard while the terminal is scrolling it drops characters
-vi300-ss|visual 300 slow scroll:\
-       :bl=^G:cr=^M:do=^J:sf=^J:ve=\E[?4h:vs=\E[?4l:tc=vi300:
-# some of the vi300s have older firmware that has the command
-# sequence for setting editing extent reversed.
-ovi300|visual 300 old:\
-       :bl=^G:cr=^M:do=^J:\
-       :is=\E[7s\E[2;3;4;20;?5;?6l\E[12;?7h\E[2Q\E[0;1(D\E[8s:\
-       :sf=^J:tc=vi300:
-# if your version of ex/vi doesn't correctly implement xn
-# use this termcap for the vi300
-vi300-aw|visual 300 no autowrap:\
-       :am@:xn@:\
-       :ve=\E[?7h:vs=\E[?7l:tc=vi300:
-
-# the visual 550 is a visual 300 with tektronix graphics,
-# and with 33 lines. clear screen is modified here to
-# also clear the graphics.
-vi550|visual 550 ansi x3.64:\
-       :li#33:\
-       :bl=^G:cl=\030\E[H\E[2J:cr=^M:do=^J:sf=^J:tc=vi300:
-
-# (vi603: this had ":sb=\EM:"; sb is undefined, prob. an error for sr -- esr)
-vi603|visual603|visual 603:\
-       :hs:mi:\
-       :al=\E[L:bl=^G:cd=\E[J:ce=\E[K:cl=\E[H\E[J:\
-       :cm=\E[%i%d;%dH:cs=\E[%i%d;%dr:dc=\E[P:dl=\E[M:\
-       :ds=\EP2;1~\E\\:ei=\E[4l:fs=\E\\:im=\E[4h:\
-       :is=\E>\E[?3l\E[?4l\E[?7h\E[?8h\E[1;24r\E[24;1H:\
-       :mb=\E[5m:md=\E[1m:me=\E[m:mr=\E[7m:nd=\E[C:\
-       :rs=\E>\E[?3l\E[?4l\E[?7h\E[?8h:se=\E[27m:sf=\ED:\
-       :so=\E[7m:sr=\EM:ts=\EP2~:ue=\E[24m:up=\E[A:us=\E[4m:tc=vt100:
-
-#### Wyse (wy)
-#
-#      Wyse Technology
-#      3471 North First Street
-#      San Jose, CA 95134
-#      Vox: (408)-473-1200
-#      Fax: (408) 473-1222
-#
-# Wyse sales can be reached by phone at 1-800-GET-WYSE.  Tech support is at
-# (800)-800-WYSE (option 5 gets you a human).
-#
-# All the following entries until (but not including) wy100q are direct from
-# Wyse technical support and represent their best knowledge as of January 1995.
-# I made two trivial syntax fixes in the wyse30 entry, added OTbs everywhere
-# needed, and merged in OTug#1 entries (as indicated by the termcap version of
-# their descriptions).
-#
-# Note: The wyse75, wyse85, and wyse99 have been discontinued.
-
-#         Although the Wyse 30 can support more than one attribute
-#      it requires magic cookies to do so.  Many applications do not
-#      function well with magic cookies.  The following terminfo uses
-#      the protect mode to support one attribute (dim) without cookies.
-#      If more than one attribute is needed then the wy30-mc terminfo
-#      should be used.
-#
-wy30|wyse30|Wyse 30:\
-       :5i:am:bs:bw:hs:mi:ms:xo:\
-       :Nl#8:co#80:lh#1:li#24:lw#8:ma#1:ug#1:ws#45:\
-       :#2=\E{:&3=\Er:@8=\E7:LF=\EA11:LO=\EA10:\
-       :ac=0wa_h[jukslrmqnxqzttuyv]wpxv:ae=\EH^C:al=\EE:\
-       :as=\EH^B:bl=^G:bt=\EI:cd=\EY:ce=\ET:cl=\E+:\
-       :cm=\E=%+ %+ :cr=^M:ct=\E0:dc=\EW:dl=\ER:do=^J:\
-       :ds=\EF\r:ei=\Er:fs=^M:ho=^^:im=\Eq:ip=:\
-       :is=\E'\E(\E^3\E`9\016\024:k1=^A@\r:k2=^AA\r:\
-       :k3=^AB\r:k4=^AC\r:k5=^AD\r:k6=^AE\r:k7=^AF\r:\
-       :k8=^AG\r:kA=\EE:kB=\EI:kD=\EW:kE=\ET:kI=\EQ:kL=\ER:\
-       :kN=\EK:kP=\EJ:kS=\EY:kb=^H:kd=^J:kh=^^:kl=^H:kr=^L:\
-       :ku=^K:le=^H:ll=^^^K:me=\E(\EH\003:mh=\E`7\E):\
-       :mp=\E`7\E):nd=^L:nw=^M^J:pf=^T:pn=\Ez%+/%s\r:po=^X:\
-       :ps=\EP:px=\Ez%+?%s\177:\
-       :..sa=%?%p1%p5%p8%|%|%t\E`7\E)%e\E(%;%?%p9%t\EH\002%e\EH\003%;:\
-       :se=\E(:sf=\n:so=\E`7\E):sr=\Ej:st=\E1:ta=\011:\
-       :ts=\EF:up=^K:ve=\E`1:vi=\E`0:
-#
-#      This terminal description uses the non-hidden attribute mode
-#      (with magic cookie).
-#
-wy30-mc|wyse30-mc|wyse 30 with magic cookies:\
-       :ms@:\
-       :ma@:sg#1:ug#1:\
-       :ae=\EG0\EH\003:as=\EG0\EH\002:mb=\EG2:\
-       :me=\EG0\E(\EH\003:mh=\EGp:mk=\EG1:mp=\EG0\E):\
-       :mr=\EG4:\
-       :..sa=\EG%'0'%?%p2%p6%|%t%{8}%|%;%?%p1%p3%|%p6%|%t%{4}%|%;%?%p4%t%{2}%|%;%?%p1%p5%|%t%{64}%|%;%?%p7%t%{1}%|%;%c%?%p8%t\E)%e\E(%;%?%p9%t\EH\002%e\EH\003%;:\
-       :se=\EG0:so=\EG4:te=\EG0:ue=\EG0:us=\EG8:tc=wy30:
-#      The manditorary pause used by flash does not work with
-#      older versions of terminfo.  If you see this effect then
-#      unset xon and delete the / from the delay.
-#      i.e. change $<100/> to $<100>
-wy30-vb|wyse30-vb|wyse 30 visible bell:\
-       :vb=\E`8\E`9:tc=wy30:
-#
-#         The Wyse 50 can support one attribute (e.g. Dim, Inverse,
-#      Normal) without magic cookies by using the protect mode.
-#      The following description uses this feature, but when more
-#      than one attribute is put on the screen at once, all attributes
-#      will be changed to be the same as the last attribute given.
-#         The Wyse 50 can support more attributes when used with magic
-#      cookies.  The wy50-mc terminal description uses magic cookies
-#      to correctly handle multiple attributes on a screen.
-#
-wy50|wyse50|Wyse 50:\
-       :5i:am:bs:bw:hs:mi:ms:xo:\
-       :Nl#8:co#80:lh#1:li#24:lw#8:ma#1:ws#45:\
-       :#2=\E{:%9=\EP:&3=\Er:@8=\E7:F1=^AJ\r:F2=^AK\r:\
-       :F3=^AL\r:F4=^AM\r:F5=^AN\r:F6=^AO\r:LF=\EA11:\
-       :LO=\EA10:ac=0wa_h[jukslrmqnxqzttuyv]wpxv:ae=\EH^C:\
-       :al=\EE:as=\EH^B:bl=^G:bt=\EI:cd=\EY:ce=\ET:cl=\E+:\
-       :cm=\E=%+ %+ :cr=^M:ct=\E0:dc=\EW:dl=\ER:do=^J:\
-       :ds=\EF\r:ei=\Er:fs=^M:ho=^^:i1=\E`\072\E`9:im=\Eq:\
-       :ip=:is=\016\024\E'\E(:k1=^A@\r:k2=^AA\r:k3=^AB\r:\
-       :k4=^AC\r:k5=^AD\r:k6=^AE\r:k7=^AF\r:k8=^AG\r:\
-       :k9=^AH\r:k;=^AI\r:kA=\EE:kB=\EI:kD=\EW:kE=\ET:\
-       :kI=\EQ:kL=\ER:kN=\EK:kP=\EJ:kS=\EY:kb=^H:kd=^J:\
-       :kh=^^:kl=^H:kr=^L:ku=^K:le=^H:ll=^^^K:me=\E(\EH\003:\
-       :mh=\E`7\E):mp=\E`7\E):mr=\E`6\E):nd=^L:nw=^M^J:\
-       :pf=^T:pn=\Ez%+/%s\r:po=^X:ps=\EP:px=\Ez%+?%s\177:\
-       :..sa=%?%p1%p3%|%t\E`6\E)\n%e%p5%p8%|%t\E`7\E)%e\E(%;\n%?%p9%t\EH\002%e\EH\003%;:\
-       :se=\E(:sf=\n:so=\E`6\E):sr=\Ej:st=\E1:ta=^I:ts=\EF:\
-       :up=^K:ve=\E`1:vi=\E`0:
-#
-#      This terminal description uses the non-hidden attribute mode
-#      (with magic cookie).
-#
-wy50-mc|wyse50-mc|wyse 50 with magic cookies:\
-       :ms@:\
-       :ma@:sg#1:ug#1:\
-       :ae=\EG0\EH\003:as=\EG0\EH\002:mb=\EG2:\
-       :me=\EG0\E(\EH\003:mh=\EGp:mk=\EG1:mp=\EG0\E):\
-       :mr=\EG4:\
-       :..sa=\EG%'0'%?%p2%p6%|%t%{8}%|%;%?%p1%p3%|%p6%|%t%{4}%|%;%?%p4%t%{2}%|%;%?%p1%p5%|%t%{64}%|%;%?%p7%t%{1}%|%;%c%?%p8%t\E)%e\E(%;%?%p9%t\EH\002%e\EH\003%;:\
-       :se=\EG0:so=\EGt:te=\EG0:ue=\EG0:us=\EG8:tc=wy50:
-#      The mandatory pause used by flash does not work with
-#      older versions of terminfo.  If you see this effect then
-#      unset xon and delete the / from the delay.
-#      i.e. change $<100/> to $<100>
-wy50-vb|wyse50-vb|wyse 50 visible bell:\
-       :vb=\E`8\E`9:tc=wy50:
-wy50-w|wyse50-w|wyse 50 132-column:\
-       :Nl#16:co#132:lw#7:ws#97:\
-       :cm=\Ea%i%dR%dC:dc=\EW:i1=\E`;\E`9:tc=wy50:
-wy50-wvb|wyse50-wvb|wyse 50 132-column visible bell:\
-       :vb=\E`8\E`9:tc=wy50-w:
-#
-#      The Wyse 350 is a Wyse 50 with color.
-#      Unfortunately this means that it has magic cookies.
-#      The color attributes are designed to overlap the reverse, dim and
-#      underline attributes.  This is nice for monochrome applications
-#      because you can make underline stuff green (or any other color)
-#      but for true color applications it's not so hot because you cannot
-#      mix color with reverse, dim or underline.
-#          To further complicate things one of the attributes must be
-#      black (either the foreground or the background).  In reverse video
-#      the background changes color with black letters.  In normal video
-#      the foreground changes colors on a black background.  
-#          This terminfo uses some of the more advanced features of curses
-#      to display both color and blink.  In the final analysis I am not
-#      sure that the wy350 runs better with this terminfo than it does
-#      with the wy50 terminfo (with user adjusted colors).
-#
-wy350|wyse350|Wyse 350:\
-       :5i:am:bs:bw:hs:mi:xo:\
-       :Co#8:NC#55:Nl#8:co#80:lh#1:li#24:lw#8:pa#8:sg#1:\
-       :ug#1:ws#45:\
-       :#2=\E{:%9=\EP:&3=\Er:@8=\E7:F1=^AJ\r:F2=^AK\r:\
-       :F3=^AL\r:F4=^AM\r:F5=^AN\r:F6=^AO\r:LF=\EA11:\
-       :LO=\EA10:Sb= :\
-       :..Sf=%?%p1%{0}%=%t%{76}\n%e%p1%{1}%=%t%{64}\n%e%p1%{2}%=%t%{8}\n%e%p1%{3}%=%t%{72}\n%e%p1%{4}%=%t%{4}\n%e%p1%{5}%=%t%{68}\n%e%p1%{6}%=%t%{12}\n%e%p1%{7}%=%t%{0}\n%;%PC\n\EG%gC%gA%+%'0'%+%c:\
-       :ac=0wa_h[jukslrmqnxqzttuyv]wpxv:ae=\EG0\EH\003:\
-       :al=\EE:as=\EG0\EH\002:bl=^G:bt=\EI:cd=\EY:ce=\ET:\
-       :cl=\E+:cm=\E=%+ %+ :cr=^M:ct=\E0:dc=\EW:dl=\ER:\
-       :do=^J:ds=\EF\r:ei=\Er:fs=^M:ho=^^:i1=\E`\072\E`9:\
-       :i2=\E%?:im=\Eq:ip=:is=\016\024\E'\E(:k1=^A@\r:\
-       :k2=^AA\r:k3=^AB\r:k4=^AC\r:k5=^AD\r:k6=^AE\r:\
-       :k7=^AF\r:k8=^AG\r:k9=^AH\r:k;=^AI\r:kA=\EE:kB=\EI:\
-       :kD=\EW:kE=\ET:kI=\EQ:kL=\ER:kN=\EK:kP=\EJ:kS=\EY:\
-       :kb=^H:kd=^J:kh=^^:kl=^H:kr=^L:ku=^K:le=^H:ll=^^^K:\
-       :mb=\EG2:me=\EG0\E(\EH\003%{0}%PA%{0}%PC:mh=\EGp:\
-       :mk=\EG1:mp=\EG0\E):mr=\EG4:nd=^L:nw=^M^J:oc=\E%?:\
-       :op=\EG0:pf=^T:pn=\Ez%+/%s\r:po=^X:ps=\EP:\
-       :px=\Ez%+?%s\177:\
-       :..sa=%{0}%?%p4%t%{2}%|%;\n%?%p7%t%{1}%|%;%PA\n\EG%?%gC%t%gC%e\n%{0}%?%p1%t%{4}%|%;\n%?%p2%t%{8}%|%;\n%?%p3%t%{4}%|%;\n%?%p5%t%{64}%|%;\n%;%gA%+%'0'%+%c\n%?%p8%t\E)%e\E(%;%?%p9%t\EH\002%e\EH\003%;:\
-       :se=\EG0:sf=\n:so=\EG4:sr=\Ej:st=\E1:ta=^I:ts=\EF:\
-       :ue=\EG0:up=^K:us=\EG8:ve=\E`1:vi=\E`0:
-#      The manditorary pause used by flash does not work with
-#      older versions of terminfo.  If you see this effect then
-#      unset xon and delete the / from the delay.
-#      i.e. change $<100/> to $<100>
-wy350-vb|wyse350-vb|wyse 350 visible bell:\
-       :vb=\E`8\E`9:tc=wy350:
-wy350-w|wyse350-w|wyse 350 132-column:\
-       :Nl#16:co#132:lw#7:ws#97:\
-       :cm=\Ea%i%dR%dC:dc=\EW:i1=\E`;\E`9:tc=wy350:
-wy350-wvb|wyse350-wvb|wyse 350 132-column visible bell:\
-       :vb=\E`8\E`9:tc=wy350-w:
-#
-#      This terminfo description is untested.
-#
-wy100|wyse 100:\
-       :hs:mi:\
-       :co#80:li#24:sg#1:ug#1:\
-       :al=\EE:bl=^G:cd=\EY:ce=\ET:cl=\E;:cm=\E=%+ %+ :\
-       :cr=^M:dc=\EW:dl=\ER:do=^J:ds=\EA31:ei=\Er:fs=^M:\
-       :im=\Eq:is=\Eu\E0:k1=^A@\r:k2=^AA\r:k3=^AB\r:\
-       :k4=^AC\r:k5=^AD\r:k6=^AE\r:k7=^AF\r:k8=^AG\r:kb=^H:\
-       :kd=^J:kh=\E{:kl=^H:kr=^L:ku=^K:le=^H:nd=^L:se=\EG0:\
-       :sf=^J:so=\EG4:ts=\EF:ue=\EG0:up=^K:us=\EG8:
-#
-#      The Wyse 120/150 has most of the features of the Wyse 60.
-#
-#      This terminal does not need padding up to 9600 baud!
-#
-#      (msgr) should be set but the clear screen fails when in
-#      alt-charset mode.  Try \EcE  \E+  if the screen is really clear
-#      then set msgr.
-#
-wy120|wyse120|wy150|wyse150|Wyse 120/150:\
-       :5i:am:bs:bw:hs:km:mi:ms:xo:\
-       :Nl#8:co#80:it#8:lh#1:li#24:lw#8:pb#9601:ws#45:\
-       :#2=\E{:%9=\EP:&3=\Er:@8=\E7:F1=^AJ\r:F2=^AK\r:\
-       :F3=^AL\r:F4=^AM\r:F5=^AN\r:F6=^AO\r:LF=\EA11:\
-       :LO=\EA10:RA=\Ed.:RX=\Ec20:SA=\Ed/:SX=\Ec21\ntbc=\E0:\
-       :ac=+/\\\054.0[Iha2fxgqh1jYk?lZm@nEqDtCu4vAwBx3yszr{c~~:\
-       :ae=\EcD:al=\EE:as=\EcE:bl=^G:bt=\EI:cd=\EY:ce=\ET:\
-       :cl=\E+:cm=\E=%+ %+ :cr=^M:dc=\EW:dl=\ER:do=^J:\
-       :ds=\EF\r:ei=\Er:fs=^M:ho=^^:i1=\EcB0\EcC1:\
-       :i2=\EwJ\Ew1:im=\Eq:ip=:\
-       :is=\Ed$\EcD\E'\Er\EH\003\Ed/\EO\Ee1\Ed*\E`@\E`9\E`1\016\024\El:\
-       :k1=^A@\r:k2=^AA\r:k3=^AB\r:k4=^AC\r:k5=^AD\r:\
-       :k6=^AE\r:k7=^AF\r:k8=^AG\r:k9=^AH\r:k;=^AI\r:kA=\EE:\
-       :kB=\EI:kD=\EW:kE=\ET:kI=\EQ:kL=\ER:kN=\EK:kP=\EJ:\
-       :kS=\EY:kb=^H:kd=^J:kh=^^:kl=^H:kr=^L:ku=^K:le=^H:\
-       :ll=^^^K:mb=\EG2:me=\E(\EH\003\EG0\EcD:mh=\EGp:\
-       :mk=\EG1:mp=\E):mr=\EG4:nd=^L:nw=\r\n:pf=^T:\
-       :pl=\EZ2%+?%s\177:pn=\Ez%+/%s\r:po=\Ed#:ps=\EP:\
-       :px=\EZ1%+?%s\177:r1=\E~!\E~4:r2=\EeF\E`\072:\
-       :r3=\EwG\Ee(:\
-       :..sa=%?%p8%t\E)%e\E(%;%?%p9%t\EcE%e\EcD%;\EG%'0'%?%p2%t%{8}%|%;%?%p1%p3%|%p6%|%t%{4}%|%;%?%p4%t%{2}%|%;%?%p1%p5%|%t%{64}%|%;%?%p7%t%{1}%|%;%c:\
-       :se=\EG0:sf=\n:so=\EGt:sr=\Ej:st=\E1:ta=\011:te=\Ew1:\
-       :ti=\Ew0:ts=\EF:ue=\EG0:up=^K:us=\EG8:ve=\E`1:\
-       :vi=\E`0:
-#
-wy120-w|wyse120-w|wy150-w|wyse150-w|wyse 120/150 132-column:\
-       :Nl#16:co#132:lw#7:ws#97:\
-       :cm=\Ea%i%dR%dC:dc=\EW:ip=:r2=\E`;:tc=wy120:
-#
-wy120-25|wyse120-25|wy150-25|wyse150-25|wyse 120/150 80-column 25-lines:\
-       :Nl@:lh@:li#25:lw@:\
-       :pn@:r3=\EwG\Ee):tc=wy120:
-#
-wy120-25-w|wyse120-25-w|wy150-25-w|wyse150-25-w|wyse 120/150 132-column 25-lines:\
-       :Nl@:lh@:li#25:lw@:\
-       :pn@:r3=\EwG\Ee):tc=wy120-w:
-#
-wy120-vb|wyse120-vb|wy150-vb|wyse150-vb|Wyse 120/150 visible bell:\
-       :vb=\E`8\E`9:tc=wy120:
-#
-wy120-w-vb|wy120-wvb|wyse120-wvb|wy150-w-vb|wyse150-w-vb|Wyse 120/150 132-column visible bell:\
-       :vb=\E`8\E`9:tc=wy120-w:
-#
-#      The Wyse 60 is like the Wyse 50 but with more padding.
-#      The reset strings are slow and the pad times very depending
-#      on other parameters such as font loading.  I have tried
-#      to follow the following outline:
-#              rs1 -> set personality
-#              rs2 -> set number of columns
-#              rs3 -> set number of lines
-#              is1 -> select the proper font
-#              is2 -> do the initialization
-#              is3 -> set up display memory (2 pages)
-#
-#      The Wyse 60's that have vt100 emulation are slower than the
-#      older Wyse 60's.  This change happened mid-1987.
-#      The capabilities effected are (dch1) (dl1) (il1) (ind) (ri)
-#
-#      The meta key is only half right.  This terminal will return the
-#      high order bit set when you hit CTRL-function_key
-#
-#      It may be useful to assign two function keys with the
-#      values  \E=(\s  look at old data in page 1
-#              \E=W,   look at bottem of page 1
-#      where \s is a space ( ).
-#
-#      Note:
-#         The Wyse 60 runs faster when the XON/XOFF
-#         handshake is turned off.
-#
-wy60|wyse60|Wyse 60:\
-       :5i:am:bs:bw:hs:km:mi:ms:\
-       :Nl#8:co#80:lh#1:li#24:lw#8:ws#45:\
-       :#2=\E{:%9=\EP:&3=\Er:@8=\E7:DK=\E`b:F1=^AJ\r:\
-       :F2=^AK\r:F3=^AL\r:F4=^AM\r:F5=^AN\r:F6=^AO\r:\
-       :LF=\EA11:LO=\EA10:RA=\Ed.:RC=\E`c:RX=\Ec20:SA=\Ed/:\
-       :SX=\Ec21:\
-       :ac=+/\\\054.0[Iha2fxgqh1jYk?lZm@nEqDtCu4vAwBx3yszr{c~~:\
-       :ae=\EcD:al=\EE:as=\EcE:bl=^G:bt=\EI:cd=\EY:ce=\ET:\
-       :cl=\E+:cm=\E=%+ %+ :cr=^M:ct=\E0:dc=\EW:dl=\ER:\
-       :do=^J:ds=\EF\r:ei=\Er:fs=^M:ho=^^:i1=\EcB0\EcC1:\
-       :i2=\EwJ\Ew1:im=\Eq:ip=:\
-       :is=\Ed$\EcD\E'\Er\EH\003\Ed/\EO\Ee1\Ed*\E`@\E`9\E`1\016\024\El:\
-       :k1=^A@\r:k2=^AA\r:k3=^AB\r:k4=^AC\r:k5=^AD\r:\
-       :k6=^AE\r:k7=^AF\r:k8=^AG\r:k9=^AH\r:k;=^AI\r:kA=\EE:\
-       :kB=\EI:kD=\EW:kE=\ET:kI=\EQ:kL=\ER:kN=\EK:kP=\EJ:\
-       :kS=\EY:kb=^H:kd=^J:kh=^^:kl=^H:kr=^L:ku=^K:le=^H:\
-       :ll=^^^K:mb=\EG2:me=\E(\EH\003\EG0\EcD:mh=\EGp:\
-       :mk=\EG1:mp=\E):mr=\EG4:nd=^L:nw=\r\n:pf=^T:\
-       :pl=\EZ2%+?%s\177:pn=\Ez%+/%s\r:po=\Ed#:ps=\EP:\
-       :px=\EZ1%+?%s\177:r1=\E~!\E~4:r2=\EeG:r3=\EwG\Ee(:\
-       :..sa=%?%p8%t\E)%e\E(%;%?%p9%t\EcE%e\EcD%;\EG%'0'%?%p2%t%{8}%|%;%?%p1%p3%|%p6%|%t%{4}%|%;%?%p4%t%{2}%|%;%?%p1%p5%|%t%{64}%|%;%?%p7%t%{1}%|%;%c:\
-       :se=\EG0:sf=\n:so=\EGt:sr=\Ej:st=\E1:ta=\011:te=\Ew1:\
-       :ti=\Ew0:ts=\EF:ue=\EG0:up=^K:us=\EG8:ve=\E`1:\
-       :vi=\E`0:
-#
-wy60-w|wyse60-w|wyse 60 132-column:\
-       :Nl#16:co#132:lw#7:ws#97:\
-       :cm=\Ea%i%dR%dC:dc=\EW:ip=:r2=\EeF\E`;:tc=wy60:
-#
-wy60-25|wyse60-25|wyse 60 80-column 25-lines:\
-       :Nl@:lh@:li#25:lw@:\
-       :pn@:r3=\EwG\Ee):tc=wy60:
-wy60-25-w|wyse60-25-w|wyse 60 132-column 25-lines:\
-       :Nl@:lh@:li#25:lw@:\
-       :pn@:r3=\EwG\Ee):tc=wy60-w:
-#
-wy60-42|wyse60-42|wyse 60 80-column 42-lines:\
-       :li#42:\
-       :al=\EE:cd=\Ey:cl=\E+:cm=\E=%+ %+ :dc=\EW:dl=\ER:\
-       :i1=\EcB2\EcC3:ip=:nw=\r\n:r3=\Ee*:sf=\n:sr=\Ej:tc=wy60:
-wy60-42-w|wyse60-42-w|wyse 60 132-column 42-lines:\
-       :Nl#16:co#132:lw#7:ws#97:\
-       :cd=\Ey:cl=\E+:cm=\Ea%i%dR%dC:dc=\EW:ho=\036:ip=:\
-       :nw=\r\n:r2=\EeF\E`;:tc=wy60-42:
-#
-wy60-43|wyse60-43|wyse 60 80-column 43-lines:\
-       :Nl@:lh@:li#43:lw@:\
-       :pn@:r3=\Ee+:tc=wy60-42:
-wy60-43-w|wyse60-43-w|wyse 60 132-column 43-lines:\
-       :Nl@:lh@:li#43:lw@:\
-       :pn@:r3=\Ee+:tc=wy60-42-w:
-#
-wy60-vb|wyse60-vb|Wyse 60 visible bell:\
-       :vb=\E`8\E`9:tc=wy60:
-wy60-w-vb|wy60-wvb|wyse60-wvb|Wyse 60 132-column visible bell:\
-       :vb=\E`8\E`9:tc=wy60-w:
-
-#      The Wyse-99GT looks at lot like the Wyse 60 except that it
-#      does not have the 42/43 line mode.  In the Wyse-60 the "lines"
-#      setup parameter controls the number of lines on the screen.
-#      For the Wyse 99GT the "lines" setup parameter controls the
-#      number of lines in a page.  The screen can display 25 lines max.
-#          The Wyse-99GT also has personalities for the VT220 and
-#      Tektronix 4014.  But this has no bearing on the native mode.
-#
-#      (msgr) should be set but the clear screen fails when in
-#      alt-charset mode.  Try \EcE  \E+  if the screen is really clear
-#      then set msgr, else use msgr@.
-#
-#      u0 -> enter Tektronix mode
-#      u1 -> exit Tektronix mode
-#
-wy99gt|wyse99gt|Wyse 99gt:\
-       :ms@:\
-       :al=\EE:cd=\Ey:ce=\Et:cl=\E+:dc=\EW:dl=\ER:i2=\Ew0:\
-       :ip=:nw@:r2=\E`\072:sf=\n:sr=\Ej:ta=\011:te=\Ew0:\
-       :ti=\Ew1:u0=\E~>\E8:u1=\E[42h:tc=wy60:
-#
-wy99gt-w|wyse99gt-w|wyse 99gt 132-column:\
-       :Nl#16:co#132:lw#7:ws#97:\
-       :cd=\Ey:cl=\E+:cm=\Ea%i%dR%dC:dc=\EW:ip=:r2=\E`;:tc=wy99gt:
-#
-wy99gt-25|wyse99gt-25|wyse 99gt 80-column 25-lines:\
-       :Nl@:lh@:li#25:lw@:\
-       :pn@:r2=\E`\072:r3=\EwG\Ee):tc=wy99gt:
-#
-wy99gt-25-w|wyse99gt-25-w|wyse 99gt 132-column 25-lines:\
-       :Nl@:lh@:li#25:lw@:\
-       :pn@:r2=\E`;:tc=wy99gt-w:
-#
-wy99gt-vb|wyse99gt-vb|Wyse 99gt visible bell:\
-       :vb=\E`8\E`9:tc=wy99gt:
-#
-wy99gt-w-vb|wy99gt-wvb|wyse99gt-wvb|Wyse 99gt 132-column visible bell:\
-       :vb=\E`8\E`9:tc=wy99gt-w:
-#
-#      The Wyse 160 is combination of the WY-60 and the WY-99gt.
-#      The reset strings are slow and the pad times very depending
-#      on other parameters such as font loading.  I have tried
-#      to follow the following outline:
-#              rs1 -> set personality
-#              rs2 -> set number of columns
-#              rs3 -> set number of lines
-#              is1 -> select the proper font
-#              is2 -> do the initialization
-#              is3 -> set up display memory (2 pages)
-#
-#      The display memory may be used for either text or graphics.
-#      When "Display Memory = Shared" the terminal will have more pages
-#      but garbage may be left on the screen when you switch from
-#      graphics to text.  If "Display Memory = Unshared" then the
-#      text area will be only one page long.
-#
-wy160|wyse160|Wyse 160:\
-       :5i:am:bs:bw:hs:km:mi:ms:\
-       :Nl#8:co#80:lh#1:li#24:lw#8:ws#38:\
-       :#2=\E{:%9=\EP:&3=\Er:@8=\E7:DK=\E`b:F1=^AJ\r:\
-       :F2=^AK\r:F3=^AL\r:F4=^AM\r:F5=^AN\r:F6=^AO\r:\
-       :LF=\EA11:LO=\EA10:RA=\Ed.:RC=\E`c:RX=\Ec20:SA=\Ed/:\
-       :SX=\Ec21:\
-       :ac=+/\\\054.0[Iha2fxgqh1jYk?lZm@nEqDtCu4vAwBx3yszr{c~~:\
-       :ae=\EcD:al=\EE:as=\EcE:bl=^G:bt=\EI:cd=\EY:ce=\ET:\
-       :cl=\E+:cm=\E=%+ %+ :cr=^M:ct=\E0:dc=\EW:dl=\ER:\
-       :do=^J:ds=\EF\r:ei=\Er:fs=^M:ho=^^:i1=\EcB0\EcC1:\
-       :i2=\Ew0:im=\Eq:ip=:\
-       :is=\Ed$\EcD\E'\Er\EH\003\Ed/\EO\Ee1\Ed*\E`@\E`9\E`1\016\024\El:\
-       :k1=^A@\r:k2=^AA\r:k3=^AB\r:k4=^AC\r:k5=^AD\r:\
-       :k6=^AE\r:k7=^AF\r:k8=^AG\r:k9=^AH\r:k;=^AI\r:kA=\EE:\
-       :kB=\EI:kD=\EW:kE=\ET:kI=\EQ:kL=\ER:kN=\EK:kP=\EJ:\
-       :kS=\EY:kb=^H:kd=^J:kh=^^:kl=^H:kr=^L:ku=^K:le=^H:\
-       :ll=^^^K:mb=\EG2:me=\E(\EH\003\EG0\EcD:mh=\EGp:\
-       :mk=\EG1:mp=\E):mr=\EG4:nd=^L:nw=\r\n:pf=^T:\
-       :pl=\EZ2%+?%s\177:pn=\Ez%+/%s\r:po=\Ed#:ps=\EP:\
-       :px=\EZ1%+?%s\177:r1=\E~!\E~4:r2=\E`\072:r3=\EwG\Ee(:\
-       :..sa=%?%p8%t\E)%e\E(%;%?%p9%t\EcE%e\EcD%;\EG%'0'%?%p2%t%{8}%|%;%?%p1%p3%|%p6%|%t%{4}%|%;%?%p4%t%{2}%|%;%?%p1%p5%|%t%{64}%|%;%?%p7%t%{1}%|%;%c:\
-       :se=\EG0:sf=\n:so=\EGt:sr=\Ej:st=\E1:ta=^I:te=\Ew0:\
-       :ti=\Ew1:ts=\EF:ue=\EG0:up=^K:us=\EG8:ve=\E`1:\
-       :vi=\E`0:
-#
-wy160-w|wyse160-w|wyse 160 132-column:\
-       :Nl#16:co#132:lw#7:ws#90:\
-       :cm=\Ea%i%dR%dC:dc=\EW:r2=\EeF\E`;:tc=wy160:
-#
-wy160-25|wyse160-25|wyse 160 80-column 25-lines:\
-       :Nl@:lh@:li#25:lw@:\
-       :pn@:r3=\EwG\Ee):tc=wy160:
-wy160-25-w|wyse160-25-w|wyse 160 132-column 25-lines:\
-       :Nl@:lh@:li#25:lw@:\
-       :pn@:r3=\EwG\Ee):tc=wy160-w:
-#
-wy160-42|wyse160-42|wyse 160 80-column 42-lines:\
-       :li#42:\
-       :al=\EE:cd=\Ey:cl=\E+:dl=\ER:i1=\EcB2\EcC3:nw=\r\n:\
-       :r3=\Ee*:sf=\n:sr=\Ej:tc=wy160:
-wy160-42-w|wyse160-42-w|wyse 160 132-column 42-lines:\
-       :Nl#16:co#132:lw#7:ws#90:\
-       :cm=\Ea%i%dR%dC:dc=\EW:ip=:r2=\EeF\E`;:tc=wy160-42:
-#
-wy160-43|wyse160-43|wyse 160 80-column 43-lines:\
-       :Nl@:lh@:li#43:lw@:\
-       :pn@:r3=\Ee+:tc=wy160-42:
-wy160-43-w|wyse160-43-w|wyse 160 132-column 43-lines:\
-       :Nl@:lh@:li#43:lw@:\
-       :pn@:r3=\Ee+:tc=wy160-42-w:
-#
-wy160-vb|wyse160-vb|Wyse 160 visible bell:\
-       :vb=\E`8\E`9:tc=wy160:
-wy160-w-vb|wy160-wvb|wyse160-wvb|Wyse 160 132-column visible bell:\
-       :vb=\E`8\E`9:tc=wy160-w:
-#
-#      The Wyse 75 is a vt100 lookalike without advanced video.
-#
-#         The Wyse 75 can support one attribute (e.g. Dim, Inverse,
-#      Underline) without magic cookies.  The following description
-#      uses this capability, but when more than one attribute is
-#      put on the screen at once, all attributes will be changed
-#      to be the same as the last attribute given.
-#         The Wyse 75 can support more attributes when used with magic
-#      cookies.  The wy75-mc terminal description uses magic cookies
-#      to correctly handle multiple attributes on a screen.
-#
-wy75|wyse75|wyse 75:\
-       :5i:am:bs:hs:mi:ms:xn:xo:\
-       :co#80:li#24:ma#1:pb#1201:ug#1:ws#78:\
-       :%1=\E[28~:%9=\E[?5i:*6=\E[4~:@0=\E[1~:@8=\EOM:\
-       :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:F1=\E[23~:\
-       :F2=\E[24~:F3=\E[25~:F4=\E[26~:F5=\E[28~:F6=\E[29~:\
-       :F7=\E[31~:F8=\E[32~:F9=\E[33~:FA=\E[34~:FB=\E[35~:\
-       :IC=\E[%d@:K1=\EOw:K2=\EOu:K3=\EOy:K4=\EOq:K5=\EOs:\
-       :LE=\E[%dD:RA=\E[?7l:RI=\E[%dC:SA=\E[?7h:UP=\E[%dA:\
-       :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\
-       :ae=^O:al=\E[L:as=^N:bl=^G:bt=\E[Z:cb=\E[1K:cd=\E[J:\
-       :ce=\E[K:ch=\E[%i%dG:cl=\E[H\E[J:cm=\E[%i%d;%dH:\
-       :cr=^M:cs=\E[%i%d;%dr:ct=\E[3g:dc=\E[P:dl=\E[M:do=^J:\
-       :ds=\E[>\\\054\001\001\E[>-\001\001:eA=\E)0:\
-       :ec=\E[%dX:ei=\E[4l:fs=^A:ho=\E[H:\
-       :i1=\E[2;4;20;30l\E[?1;10l\E[12h\E[?7;8;25h:i2=\E[m:\
-       :im=\E[4h:ip=:is=\E>\E(B\E)0\017:k1=\E[?5i:k2=\E[?3i:\
-       :k3=\E[2i:k4=\E[@:k5=\E[M:k6=\E[17~:k7=\E[18~:\
-       :k8=\E[19~:k9=\E[20~:k;=\E[21~:kA=\E[L:kE=\E[K:\
-       :kI=\E[@:kL=\E[M:kN=\E[6~:kP=\E[5~:kb=^H:kd=\E[B:\
-       :ke=\E>:kh=\E[H:kl=\E[D:kr=\E[C:ks=\E[?1l\E[?7h\E=:\
-       :ku=\E[A:le=^H:me=\E[m\017:mh=\E[0t\E[2m:\
-       :mr=\E[1t\E[7m:nd=\E[C:pf=\E[4i:po=\E[5i:ps=\E[0i:\
-       :r1=\E[13l\E[3l\E!p:r2=\E[35h\E[?3l:r3=\E[?5l:rc=\E8:\
-       :..sa=%?%p5%t\E[0t%;%?%p3%p1%|%t\E[1t%;%?%p2%t\E[2t%;%?%p4%t\E[3t%;%?%p1%p2%p3%p4%p5%|%|%|%|%t\E[7m%e\E[m%;%?%p9%t\016%e\017%;:\
-       :sc=\E7:se=\E[m:sf=\n:so=\E[1t\E[7m:sr=\EM:st=\EH:\
-       :ta=^I:ts=\E[>\\\054\001:ue=\E[m:up=\E[A:\
-       :us=\E[2t\E[4m:ve=\E[?25h:vi=\E[?25l:
-#
-#      This terminal description uses the non-hidden attribute mode
-#      (with magic cookie).
-#
-wy75-mc|wyse75-mc|wyse 75 with magic cookies:\
-       :ms@:\
-       :ma@:sg#1:ug#1:\
-       :ae=\E[0p\017:as=\E[0p\016:i2=\E[m\E[p:mb=\E[2p:\
-       :me=\E[0p\017:mh=\E[1p:mk=\E[4p:mr=\E[16p:\
-       :..sa=\E[%{0}%?%p2%p6%|%t%{8}%|%;%?%p1%p3%|%p6%|%t%{16}%|%;%?%p4%t%{2}%|%;%?%p1%p5%|%t%{1}%|%;%?%p7%t%{4}%|%;%dp%?%p9%t\016%e\017%;:\
-       :se=\E[0p:so=\E[17p:ue=\E[0p:us=\E[8p:tc=wy75:
-wy75-vb|wyse75-vb|wyse 75 with visible bell:\
-       :pb@:\
-       :vb=\E[30h\E\\\054\E[30l:tc=wy75:
-wy75-w|wyse75-w|wyse 75 in 132 column mode:\
-       :co#132:ws#130:\
-       :r2=\E[35h\E[?3h:tc=wy75:
-wy75-wvb|wyse75-wvb|wyse 75 with visible bell 132 columns:\
-       :pb@:\
-       :vb=\E[30h\E\\\054\E[30l:tc=wy75-w:
-#
-#      Wyse 85 emulating a vt220 7 bit mode.
-#              24 line screen with status line.
-#
-#      The vt220 mode permits more function keys but it wipes out
-#      the escape key.  I strongly reccomend that f11 be set to
-#      escape (esc).
-#      The terminal may have to be set for 8 data bits and 2 stop
-#      bits for the arrow keys to work.
-#      The Wyse 85 runs faster with XON/XOFF enabled.  Also the
-#      (dch) and (ich) work best when XON/XOFF is set.  (ich) and
-#      (dch) leave trash on the screen when used without XON/XOFF.
-#
-wy85|wyse85|wyse 85:\
-       :5i:am:bs:hs:mi:ms:xn:xo:\
-       :co#80:it#8:li#24:ws#80:\
-       :%1=\E[28~:*6=\E[4~:@0=\E[1~:@8=\EOM:AL=\E[%dL:\
-       :DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:F1=\E[23~:F2=\E[24~:\
-       :F3=\E[25~:F4=\E[26~:F5=\E[28~:F6=\E[29~:F7=\E[31~:\
-       :F8=\E[32~:F9=\E[33~:FA=\E[34~:IC=\E[%d@:K1=\EOw:\
-       :K2=\EOu:K3=\EOy:K4=\EOq:K5=\EOs:LE=\E[%dD:RA=\E[?7l:\
-       :RI=\E[%dC:SA=\E[?7h:UP=\E[%dA:\
-       :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\
-       :ae=^O:al=\E[L:as=^N:bl=^G:bt=\E[Z:cb=\E[1K:cd=\E[J:\
-       :ce=\E[K:cl=\E[H\E[J:cm=\E[%i%d;%dH:cr=^M:\
-       :cs=\E[%i%d;%dr:ct=\E[3g:dc=\E[P:dl=\E[M:do=^J:\
-       :ds=\E[40l:eA=\E)0:ec=\E[%dX:ei=\E[4l:fs=\E[1;24r\E8:\
-       :ho=\E[H:i1=\E[62;1"p\E[?5W:i2=\E>\E(B\E)0\017\E[m:\
-       :im=\E[4h:ip=:\
-       :is=\E[2;4;20;30l\E[?1;4;10;16l\E[12h\E[?7;8;25h:\
-       :k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:k6=\E[17~:k7=\E[18~:\
-       :k8=\E[19~:k9=\E[20~:k;=\E[21~:kD=\E[3~:kI=\E[2~:\
-       :kN=\E[6~:kP=\E[5~:kb=^H:kd=\E[B:ke=\E>:kh=\E[26~:\
-       :kl=\E[D:kr=\E[C:ks=\E[?1l\E=:ku=\E[A:l1=PF1:l2=PF2:\
-       :l3=PF3:l4=PF4:le=^H:mb=\E[5m:md=\E[1m:me=\E[m\017:\
-       :mh=\E[2m:mk=\E[8m:mr=\E[7m:nd=\E[C:pf=\E[4i:\
-       :po=\E[5i:ps=\E[0i:r1=\E[13l\E[3l\E!p:\
-       :r2=\E[35h\E[?3l:r3=\E[?5l:rc=\E8:\
-       :..sa=\E[0%?%p2%t;4%;%?%p3%p1%|%t;7%;%?%p4%t;5%;%?%p5%t;2%;%?%p6%t;1%;%?%p7%t;8%;m%?%p9%t\016%e\017%;:\
-       :sc=\E7:se=\E[m:sf=\n:so=\E[7m:sr=\EM:st=\EH:ta=\011:\
-       :ts=\E[40h\E7\E[25;%i%p1%dH:ue=\E[m:up=\E[A:us=\E[4m:\
-       :ve=\E[?25h:vi=\E[?25l:
-#
-#      Wyse 85 with visual bell.
-wy85-vb|wyse85-vb|wyse 85 with visible bell:\
-       :vb=\E[30h\E\\\054\E[30l:tc=wy85:
-#
-#      Wyse 85 in 132-column mode.
-wy85-w|wyse85-w|wyse 85 in 132-column mode:\
-       :co#132:ws#132:\
-       :r2=\E[35h\E[?3h:tc=wy85:
-#
-#      Wyse 85 in 132-column mode with visual bell.
-wy85-wvb|wyse85-wvb|wyse 85 with visible bell 132-columns:\
-       :vb=\E[30h\E\\\054\E[30l:tc=wy85-w:
-#
-#      Wyse 185 emulating a vt320 7 bit mode.
-#
-#      This terminal always displays 25 lines.  These lines may be used
-#      as 24 data lines and a terminal status line (top or bottom) or
-#      25 data lines.  The 48 and 50 line modes change the page size
-#      and not the number of lines on the screen.
-#
-#      The Compose Character key can be used as a meta key if changed
-#      by set-up.
-#
-wy185|wyse185|wyse 185:\
-       :5i:am:bs:hs:km:mi:ms:xn:xo:\
-       :co#80:it#8:li#24:ws#80:\
-       :%1=\E[28~:*6=\E[4~:@0=\E[1~:@8=\EOM:AL=\E[%dL:\
-       :DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:F1=\E[23~:F2=\E[24~:\
-       :F3=\E[25~:F4=\E[26~:F5=\E[28~:F6=\E[29~:F7=\E[31~:\
-       :F8=\E[32~:F9=\E[33~:FA=\E[34~:IC=\E[%d@:K1=\EOw:\
-       :K2=\EOu:K3=\EOy:K4=\EOq:K5=\EOs:LE=\E[%dD:RA=\E[?7l:\
-       :RI=\E[%dC:SA=\E[?7h:UP=\E[%dA:\
-       :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\
-       :ae=^O:al=\E[L:as=^N:bl=^G:bt=\E[Z:cb=\E[1K:cd=\E[J:\
-       :ce=\E[K:ch=\E[%i%d`:cl=\E[H\E[J:cm=\E[%i%d;%dH:\
-       :cr=^M:cs=\E[%i%d;%dr:ct=\E[3g:cv=\E[%i%dd:dc=\E[P:\
-       :dl=\E[M:do=^J:ds=\E7\E[99;0H\E[K\E8:eA=\E)0:\
-       :ec=\E[%dX:ei=\E[4l:fs=\E[1;24r\E8:ho=\E[H:i1=\E[?5W:\
-       :i2=\E>\E(B\E)0\017\E[m:im=\E[4h:ip=:\
-       :is=\E[2;4;20;30l\E[?1;4;10;16l\E[12h\E[?7;8;25h:\
-       :k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:k6=\E[17~:k7=\E[18~:\
-       :k8=\E[19~:k9=\E[20~:k;=\E[21~:kB=\E[Z:kD=\E[3~:\
-       :kI=\E[2~:kN=\E[6~:kP=\E[5~:kb=^H:kd=\E[B:ke=\E>:\
-       :kh=\E[26~:kl=\E[D:kr=\E[C:ks=\E[?1l\E=:ku=\E[A:\
-       :l1=PF1:l2=PF2:l3=PF3:l4=PF4:le=^H:mb=\E[5m:md=\E[1m:\
-       :me=\E[m\017:mh=\E[2m:mk=\E[8m:mr=\E[7m:nd=\E[C:\
-       :pf=\E[4i:po=\E[5i:ps=\E[0i:\
-       :r1=\E[13l\E[3l\E\\\E[63;1"p\E[!p:r2=\E[35h\E[?3l:\
-       :r3=\E[?5l\E[47h\E[40l\E[r:rc=\E8:\
-       :..sa=\E[0%?%p2%t;4%;%?%p3%p1%|%t;7%;%?%p4%t;5%;%?%p5%t;2%;%?%p6%t;1%;%?%p7%t;8%;m%?%p9%t\016%e\017%;:\
-       :sc=\E7:se=\E[27m:sf=\n:so=\E[7m:sr=\EM:st=\EH:ta=^I:\
-       :te=\E[ R:ti=\E[ Q:ts=\E7\E[99;%i%p1%dH:ue=\E[24m:\
-       :up=\E[A:us=\E[4m:ve=\E[34h\E[?25h:vi=\E[?25l:\
-       :vs=\E[?25h\E[34l:
-#
-#      Wyse 185 with 24 data lines and top status (terminal status)
-wy185-24|wyse185-24|wyse 185 with 24 data lines:\
-       :hs@:\
-       :ds@:fs@:r3=\E[?5l\E[47h\E[40l\E[1;24r:ts@:tc=wy185:
-#
-#      Wyse 185 with visual bell.
-wy185-vb|wyse185-vb|wyse 185 with visible bell:\
-       :vb=\E[30h\E\\\054\E[30l:tc=wy185:
-#
-#      Wyse 185 in 132-column mode.
-wy185-w|wyse185-w|wyse 185 in 132-column mode:\
-       :co#132:ws#132:\
-       :DC=\E[%dP:IC=\E[%d@:dc=\E[P:ei=:im=:ip=:\
-       :r2=\E[35h\E[?3h:tc=wy185:
-#
-#      Wyse 185 in 132-column mode with visual bell.
-wy185-wvb|wyse185-wvb|wyse 185 with visible bell 132-columns:\
-       :vb=\E[30h\E\\\054\E[30l:tc=wy185-w:
-
-# wy325 terminfo entries
-# Done by Joe H. Davis        3-9-92
-
-# lines 25  columns 80
-#
-wy325|wyse325|Wyse-epc:\
-       :5i:am:bs:bw:hs:mi:\
-       :Nl#8:co#80:lh#1:li#24:lw#8:pb#9601:ws#45:\
-       :#2=\E{:%9=\EP:&3=\Er:@8=\E7:F1=^AJ\r:F2=^AK\r:\
-       :F3=^AL\r:F4=^AM\r:F5=^AN\r:F6=^AO\r:LF=\EA11:\
-       :LO=\EA10:RA=\Ed.:SA=\Ed/:\
-       :ac=+/\\\054.0[Iha2fxgqh1jYk?lZm@nEqDtCu4vAwBx3yszr{c~~:\
-       :ae=\EcD:al=\EE:as=\EcE:bl=^G:bt=\EI:cd=\EY:ce=\ET:\
-       :cl=\E+:cm=\E=%+ %+ :cr=^M:ct=\E0:dc=\EW:dl=\ER:\
-       :do=^J:ds=\EF\r:ei=\Er:fs=^M:ho=^^:i1=\EcB0\EcC1:\
-       :i2=\Ew0:im=\Eq:ip=:\
-       :is=\EcD\E'\Er\EH\003\Ed/\EO\Ee1\Ed*\E`@\E`9\E`1\016\024\El:\
-       :k1=^A@\r:k2=^AA\r:k3=^AB\r:k4=^AC\r:k5=^AD\r:\
-       :k6=^AE\r:k7=^AF\r:k8=^AG\r:k9=^AH\r:k;=^AI\r:kA=\EE:\
-       :kB=\EI:kD=\EW:kE=\ET:kI=\Eq:kL=\ER:kN=\EK:kP=\EJ:\
-       :kS=\EY:kb=^H:kd=^J:kh=^^:kl=^H:kr=^L:ku=^K:le=^H:\
-       :ll=^^^K:mb=\EG2:me=\E(\EH\003\EG0\EcD:mh=\EGp:\
-       :mk=\EG1:mp=\E):mr=\EG4:nd=^L:pf=^T:pl=\EZ2%+?%s\177:\
-       :pn=\Ez%+/%s\r:po=\Ed#:ps=\EP:px=\EZ1%+?%s\177:\
-       :r1=\E~!\E~4:r2=\EeF\E`\072:r3=\EwG\Ee(:\
-       :..sa=%?%p8%t\E)%e\E(%;%?%p9%t\EcE%e\EcD%;\EG%'0'%?%p2%t%{8}%|%;%?%p1%p3%|%p6%|%t%{4}%|%;%?%p4%t%{2}%|%;%?%p1%p5%|%t%{64}%|%;%?%p7%t%{1}%|%;%c:\
-       :se=\EG0:sf=\n:so=\EGt:sr=\Ej:st=\E1:ta=^I:te=\Ew0:\
-       :ti=\Ew1:ts=\EF:ue=\EG0:up=^K:us=\EG8:ve=\E`1:\
-       :vi=\E`0:
-
-#
-# lines 24  columns 80  vb 
-#
-wy325-vb|wyse325-vb|wy150-vb:\
-       :vb=\E`8\E`9:tc=wy325:
-
-#
-# lines 24  columns 132
-#
-wy325-w|wyse325-w|wy325w-24:\
-       :Nl#16:co#132:lw#7:ws#97:\
-       :cm=\Ea%i%dR%dC:dc=\EW:ip=:r2=\E`;:tc=wy325:
-#
-# lines 25  columns 80
-#
-wy325-25|wyse325-25|wy325-80:\
-       :Nl@:lh@:li#25:lw@:\
-       :pn@:r3=\EwG\Ee):tc=wy325:
-#
-# lines 25  columns 132
-#
-wy325-25w|wyse325-25w|wy325 132 columns:\
-       :Nl@:lh@:li#25:lw@:\
-       :pn@:r3=\EwG\Ee):tc=wy325-w:
-#
-# lines 25  columns 132  vb 
-#
-wy325-w-vb|wy325-wvb|wyse325-wvb:\
-       :vb=\E`8\E`9:tc=wy325-w:
-
-#
-# lines 42  columns 80
-#
-wy325-42|wyse325-42:\
-       :Nl@:lh@:li#42:lw@:\
-       :pn@:r3=\EwG\Ee):tc=wy325:
-#
-# lines 42  columns 132
-#
-wy325-42w|wyse325-42w:\
-       :Nl@:lh@:li#42:lw@:\
-       :pn@:r3=\EwG\Ee):tc=wy325-w:
-#
-# lines 42  columns 132  vb 
-#
-wy325-42w-vb|wy325-42wvb:\
-       :vb=\E`8\E`9:tc=wy325-w:
-#
-# lines 43  columns 80
-#
-wy325-43|wyse325-43:\
-       :Nl@:lh@:li#43:lw@:\
-       :pn@:r3=\EwG\Ee):tc=wy325:
-#
-# lines 43  columns 132
-#
-wy325-43w|wyse325-43w:\
-       :Nl@:lh@:li#43:lw@:\
-       :pn@:r3=\EwG\Ee):tc=wy325-w:
-#
-# lines 43  columns 132  vb 
-#
-wy325-43w-vb|wy325-43wvb:\
-       :vb=\E`8\E`9:tc=wy325-w:
-#      Wyse 370
-#
-#              24 line screen with status line.
-#
-#      The terminal may have to be set for 8 data bits and 2 stop
-#      bits for the arrow keys to work.
-#
-#      If you change keyboards the terminal will send different
-#      escape sequences.
-#      The following definition is for the basic terminal without
-#      function keys.
-#
-#      u0 -> enter Tektronix 4010/4014 mode
-#      u1 -> exit  Tektronix 4010/4014 mode
-#      u2 -> enter ASCII mode (from any ANSI mode)
-#      u3 -> exit  ASCII mode (goto native ANSI mode)
-#      u4 -> enter Tek 4207 ANSI mode (from any ANSI mode)
-#      u5 -> exit  Tek 4207 mode (goto native ANSI mode)
-#
-# (untranslatable capabilities removed to fit entry within 1023 bytes)
-# WARNING: this entry, 1201 bytes long, may core-dump older termcap libraries!
-wy370-nk|wyse 370 without function keys:\
-       :5i:am:bs:cc:hs:mi:ms:xn:xo:\
-       :Co#64:NC#48:co#80:it#8:li#24:pa#64:ws#80:\
-       :AL=\E[%dL:DC=\E[%dP:DK=\E[31h:DL=\E[%dM:DO=\E[%dB:\
-       :IC=\E[%d@::LE=\E[%dD:RA=\E[?7l:RC=\E[31l:RI=\E[%dC:\
-       :SA=\E[?7h:Sb=\E[62;%dw:Sf=\E[61;%dw:UP=\E[%dA:\
-       :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\
-       :ae=^O:al=\E[L:as=^N:bl=^G:bt=\E[Z:cb=\E[1K:cd=\E[J:\
-       :ce=\E[K:ch=\E[%i%d`:cl=\E[H\E[J:cm=\E[%i%d;%dH:\
-       :cr=^M:cs=\E[%i%d;%dr:ct=\E[3g:cv=\E[%i%dd:dc=\E[P:\
-       :dl=\E[M:do=^J:ds=\E[40l:eA=\E)0:ec=\E[%dX:ei=\E[4l:\
-       :fs=\E[1;24r\E8:ho=\E[H:i1=\E[90;1"p\E[?5W:\
-       :i2=\E>\017\E)0\E(B\E[63;0w\E[m:im=\E[4h:ip=:\
-       :is=\E[2;4;20;30;40l\E[?1;10;16l\E[12h\E[?7;8;25h:\
-       :ke=\E>:ks=\E[?1l\E=:le=^H:mb=\E[5m:md=\E[1m:\
-       :me=\E[m\017:mh=\E[2m:mk=\E[8m:mr=\E[7m:nd=\E[C:\
-       :oc=\E[60w\E[63;0w\n\E[66;1;4w\n\E[66;2;13w\n\E[66;3;16w\n\E[66;4;49w\n\E[66;5;51w\n\E[66;6;61w\n\E[66;7;64w:\
-       :op=\E[m:pf=\E[4i:po=\E[5i:ps=\E[0i:\
-       :r1=\E[13l\E[3l\E!p\E[?4i:r2=\E[35h\E[?3l:r3=\E[?5l:\
-       :rc=\E8::sc=\E7:se=\E[27m:sf=\n:so=\E[7m:sr=\EM:\
-       :st=\EH:ta=\011:te=\E[ R:ti=\E[ Q:\
-       :ts=\E[40l\E[40h\E7\E[99;%i%p1%dH:u0=\E[?38h\E8:\
-       :u1=\E[?38l\E)0:u2=\E[92;52"p:u3=\E~B:u4=\E[92;76"p::\
-       :ue=\E[24m:up=\E[A:us=\E[4m:ve=\E[34h\E[?25h:\
-       :vi=\E[?25l:vs=\E[?25h\E[34l:
-#
-#      Function key set for the ASCII (wy-50 compatable) keyboard
-#
-wy370-101k|Wyse 370 with 101 key keyboard:\
-       :@8=\EOM:F1=\E[23~:F2=\E[24~:F3=\E[25~:F4=\E[26~:\
-       :F5=\E[28~:F6=\E[29~:k1=\E[?4i:k2=\E[?3i:k3=\E[2i:\
-       :k4=\E[@:k5=\E[M:k6=\E[17~:k7=\E[18~:k8=\E[19~:\
-       :k9=\E[20~:k;=\E[21~:kA=\EOP:kB=\E[Z:kD=\EOQ:kI=\EOP:\
-       :kL=\EOQ:kN=\E[U:kP=\E[V:kb=^H:kd=\E[B:kh=\E[H:\
-       :kl=\E[D:kr=\E[C:ku=\E[A:tc=wy370-nk:
-#
-#      Function key set for the VT-320 (and wy85) compatable keyboard
-#
-wy370-105k|Wyse 370 with 105 key keyboard:\
-       :%1=\E[28~:*6=\E[4~:@0=\E[1~:@8=\EOM:F1=\E[23~:\
-       :F2=\E[24~:F3=\E[25~:F4=\E[26~:F5=\E[28~:F6=\E[29~:\
-       :F7=\E[31~:F8=\E[32~:F9=\E[33~:FA=\E[34~:K1=\EOw:\
-       :K2=\EOu:K3=\EOy:K4=\EOq:K5=\EOs:k1=\EOP:k2=\EOQ:\
-       :k3=\EOR:k4=\EOS:k6=\E[17~:k7=\E[18~:k8=\E[19~:\
-       :k9=\E[20~:k;=\E[21~:kD=\E[3~:kI=\E[2~:kN=\E[6~:\
-       :kP=\E[5~:kb=^H:kd=\E[B:kh=\E[26~:kl=\E[D:kr=\E[C:\
-       :ku=\E[A:l1=PF1:l2=PF2:l3=PF3:l4=PF4:tc=wy370-nk:
-#
-#      Function key set for the PC compatable keyboard
-#
-wy370-EPC|Wyse 370 with 102 key keyboard:\
-       :@7=\E[1~:@8=\EOM:F1=\E[23~:F2=\E[24~:k1=\EOP:\
-       :k2=\EOQ:k3=\EOR:k4=\EOS:k5=\E[M:k6=\E[17~:k7=\E[18~:\
-       :k8=\E[19~:k9=\E[20~:k;=\E[21~:kB=\E[Z:kI=\E[2~:\
-       :kN=\E[U:kP=\E[V:kb=^H:kd=\E[B:kh=\E[H:kl=\E[D:\
-       :kr=\E[C:ku=\E[A:tc=wy370-nk:
-#
-#      Set up the default WY-370.
-#
-wy370|wyse370|Wyse 370:\
-       :tc=wy370-101k:
-#
-#      Wyse 370 with visual bell.
-wy370-vb|Wyse 370 with visible bell:\
-       :vb=\E[30h\E\\\054\E[30l:tc=wy370:
-#
-#      Wyse 370 in 132-column mode.
-wy370-w|Wyse 370 in 132-column mode:\
-       :co#132:ws#132:\
-       :r2=\E[35h\E[?3h:tc=wy370:
-#
-#      Wyse 370 in 132-column mode with visual bell.
-wy370-wvb|Wyse 370 with visible bell 132-columns:\
-       :vb=\E[30h\E\\\054\E[30l:tc=wy370-w:
-wy370-rv|Wyse 370 reverse video:\
-       :r3=\E[32h\E[?5h:tc=wy370:
-#
-#      Wyse 99gt Tektronix 4010/4014 emulator,
-#
-wy99gt-tek|Wyse 99gt Tektronix 4010/4014 emulator:\
-       :am:bs:os:\
-       :co#74:li#35:\
-       :bl=^G:cl=\E^L:\
-       :..cm=\035%{3040}%{89}%p1%*%-%Py\n%p2%{55}%*%Px\n%gy%{128}%/%{31}%&%{32}%+%c\n%gy%{3}%&%{4}%*%gx%{3}%&%+%{96}%+%c\n%gy%{004}%/%{31}%&%{96}%+%c\n%gx%{128}%/%{31}%&%{32}%+%c\n%gx%{004}%/%{31}%&%{64}%+%c\037:\
-       :cr=^M:do=^J:ff=^L:\
-       :hd=\036HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH\037:\
-       :ho=^]7`x @\037:\
-       :hu=\036DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD\037:\
-       :is=\E8:le=^H:nd= :nw=^M^J:u0=\E~>\E8:u1=\E[42h:\
-       :up=^K:
-#
-#      Wyse 160 Tektronix 4010/4014 emulator,
-#
-wy160-tek|Wyse 160 Tektronix 4010/4014 emulator:\
-       :..cm=\035%{3103}%{91}%p1%*%-%Py\n%p2%{55}%*%Px\n%gy%{128}%/%{31}%&%{32}%+%c\n%gy%{3}%&%{4}%*%gx%{3}%&%+%{96}%+%c\n%gy%{004}%/%{31}%&%{96}%+%c\n%gx%{128}%/%{31}%&%{32}%+%c\n%gx%{004}%/%{31}%&%{64}%+%c\037:\
-       :ho=^]8`g @\037:tc=wy99gt-tek:
-#
-#      Wyse 370 Tektronix 4010/4014 emulator,
-#
-wy370-tek|Wyse 370 Tektronix 4010/4014 emulator:\
-       :am:bs:os:\
-       :co#80:li#36:\
-       :bl=^G:cl=\E^L:\
-       :..cm=\035%{775}%{108}%p1%*%{5}%/%-%Py\n%p2%{64}%*%{4}%+%{5}%/%Px\n%gy%{32}%/%{31}%&%{32}%+%c\n%gy%{31}%&%{96}%+%c\n%gx%{32}%/%{31}%&%{32}%+%c\n%gx%{31}%&%{64}%+%c\037:\
-       :cr=^M:do=^J:ff=^L:\
-       :hd=\036HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH\037:\
-       :ho=^]8g @\037:\
-       :hu=\036DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD\037:\
-       :is=\E8:kb=^H:kd=^J:kl=^H:kr=^I:ku=^K:le=^H:nd= :\
-       :nw=^M^J:u0=\E[?38h\E8:u1=\E[?38l\E)0:up=^K:
-
-# Vendor-supplied Wyse entries end here.
-
-# From: Eric Freudenthal <freudent@eric.ultra.nyu.edu>
-wy100q|Wyse 100 for Quotron:\
-       :bs:\
-       :co#80:li#24:sg#1:ug#1:\
-       :al=\EE:bt=\EI:cd=\EY:ce=\ET:cl=^Z:cm=\E=%+ %+ :\
-       :dc=\EW:dl=\ER:do=^J:ei=\Er:ho=^^:im=\Eq:\
-       :is=\E`\072\200\EC\EDF\E0\E'\E(\EA21:kd=^J:kl=^H:\
-       :kr=^L:ku=^K:nd=^L:se=\EG0:so=\EG4:sr=\Ej:ue=\EG0:\
-       :up=^K:us=\EG8:
-
-#### Kermit terminal emulations
-#
-# Obsolete Kermit versions may be listed in the section describing obsolete
-# non-ANSI terminal emulators later in the file.
-#
-
-# KERMIT standard all versions.
-# Straight ascii keyboard. :sr=\EI: not avail. many versions + bug prone in vi.
-# (kermit: removed obsolete ":ma=^Hh^Jj^Kk^Ll^^H:" -- esr)
-# From: greg small <gts@populi.berkeley.edu> 9-25-84
-kermit|standard kermit:\
-       :bs:\
-       :co#80:li#24:\
-       :cd=\EJ:ce=\EK:cl=\EE:cm=\EY%+ %+ :ho=\EH:\
-       :is=K0 Standard Kermit  9-25-84\n:kd=^J:kh=^^:kl=^H:\
-       :kr=^L:ku=^K:nd=\EC:up=\EA:
-kermitam|standard kermit plus auto-margin:\
-       :am:\
-       :is=K1 Standard Kermit plus Automatic Margins\n:tc=kermit:
-# IBMPC Kermit 1.2.
-# Bugs :cd:ce: do not work except at beginning of line!  :cl: does not work,
-# but fake with :cl=\EH\EJ (since :cd=\EJ: works at beginning of line).
-# From: greg small <gts@populi.berkeley.edu> 8-30-84
-pckermit|pckermit12|UCB IBMPC Kermit 1.2:\
-       :am:\
-       :li#25:\
-       :cd@:ce@:cl=\EH\EJ:\
-       :is=K2 UCB IBMPC Kermit 1.2  8-30-84\n:tc=kermit:
-# IBMPC Kermit 1.20
-# Cannot use line 25, now acts funny like ansi special scrolling region.
-# Initialization must escape from that region by cursor position to line 24.
-# Cannot use character insert because 1.20 goes crazy if insert at col 80.
-# Does not use am: because autowrap mode lost when kermit dropped and restarted.
-# (pckermit: mapped ":pt:" to ":it#8:" -- esr)
-# From: greg small <gts@populi.berkeley.edu> 12-19-84
-pckermit120|UCB IBMPC Kermit 1.20:\
-       :am@:pt:\
-       :it#8:li#24:\
-       :al=\EL:dc=\EN:dl=\EM:do=\EB:ei@:im@:\
-       :is=\EO\Eq\EJ\EY7 K3 UCB IBMPC Kermit 1.20  12-19-84\n:\
-       :se=\Eq:so=\Ep:vs=\EO\Eq\EEK3:tc=kermit:
-# MS-DOS Kermit 2.27 for the IBMPC
-# Straight ascii keyboard. :sr=\EI: not avail. many versions + bug prone in vi.
-# Cannot use line 25, now acts funny like ansi special scrolling region.
-# Initialization must escape from that region by cursor position to line 24.
-# Does not use am: because autowrap mode lost when kermit dropped and restarted.
-# Reverse video for standout like H19.
-# (msk227: removed obsolete ":ma=^Hh^Jj^Kk^Ll^^H:";
-# mapped ":pt:" to ":it#8:" -- esr)
-# From: greg small <gts@populi.berkeley.edu> 3-17-85
-msk227|mskermit227|MS-DOS Kermit 2.27 for the IBMPC:\
-       :am@:bs:pt:\
-       :co#80:it#8:li#24:\
-       :al=\EL:cd=\EJ:ce=\EK:cl=\EE:cm=\EY%+ %+ :dc=\EN:\
-       :dl=\EM:do=\EB:ei=\EO:ho=\EH:im=\E@:\
-       :is=\EO\Eq\EG\Ew\EJ\EY7 K4 MS Kermit 2.27 for the IBMPC 3-17-85\n:\
-       :kd=^J:kh=^^:kl=^H:kr=^L:ku=^K:nd=\EC:rc=\Ek:sc=\Ej:\
-       :se=\Eq:so=\Ep:up=\EA:vs=\EO\Eq\EG\EwK4:
-# MS-DOS Kermit 2.27 with automatic margins
-# From:        greg small <gts@populi.berkeley.edu> 3-17-85
-msk227am|mskermit227am|UCB MS-DOS Kermit 2.27 with automatic margins:\
-       :am:\
-       :is=\EO\Eq\EG\Ev\EJ\EY7 K5 MS Kermit 2.27 +automatic margins 3-17-85\n:\
-       :vs=\EO\Eq\EG\EvK5:tc=msk227:
-# MS-DOS Kermit 2.27 UCB 227.14 for the IBM PC
-# Automatic margins now default.  Use ansi set graphic rendition for standout,
-# underline and ul codes (:md:,:me:,:mr:).  Define function keys.
-# (msk22714: removed obsolete ":kn#10:" -- esr)
-# From: greg small <gts@populi.berkeley.edu> 3-17-85
-msk22714|mskermit22714|UCB MS-DOS Kermit 2.27 UCB 227.14 IBM PC:\
-       :am:\
-       :is=\EO\Eq\EG\Ev\EJ\EY7 K6 MS Kermit 2.27 UCB 227.14 IBM PC 3-17-85\n:\
-       :k0=\E0:k1=\E1:k2=\E2:k3=\E3:k4=\E4:k5=\E5:k6=\E6:\
-       :k7=\E7:k8=\E8:k9=\E9:md=\E[1m:me=\E[m:mr=\E[7m:\
-       :se=\E[m:so=\E[1m:ue=\E[m:us=\E[4m:vs=\EO\Eq\EG\EvK6:tc=mskermit227:
-# This was designed for a VT320 emulator, but it is probably a good start
-# at support for the VT320 itself.
-# Please send changes with explanations to bug-gnu-emacs@prep.ai.mit.edu.
-vt320-k3|MS-Kermit 3.00's vt320 emulation:\
-       :am:es:hs:km:mi:ms:xn:\
-       :co#80:it#8:li#49:pb#9600:vt#3:\
-       :AL=\E[%dL:CC=\E:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:\
-       :IC=\E[%d@:LE=\E[%dD:RI=\E[%dC:SR=\E[%dL:UP=\E[%dA:\
-       :ae=\E(B:al=\E[L:as=\E(0:bl=^G:cd=\E[J:ce=\E[K:\
-       :ch=\E[%i%dG:cl=\E[H\E[J:cm=\E[%i%d;%dH:cr=^M:\
-       :cs=\E[%i%d;%dr:ct=\E[3g:cv=\E[%i%dd:dc=\E[P:dl=\E[M:\
-       :do=^J:ds=\E[0$~:ec=\E[%dX:ei=\E[4l:fs=\E[0$}:\
-       :ho=\E[H:im=\E[4h:is=\E>\E F\E[?1l\E[?7h\E[r\E[2$~:\
-       :k0=\E[21~:k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:k6=\E[17~:\
-       :k7=\E[18~:k8=\E[19~:k9=\E[20~:kI=\E[2~:kL=\E[3~:\
-       :kN=\E[6~:kP=\E[5~:kb=^H:kd=\EOB:ke=\E[?1l\E>:\
-       :kl=\EOD:kr=\EOC:ks=\E[?1h\E=:ku=\EOA:le=^H:mb=\E[5m:\
-       :md=\E[1m:me=\E[m:mr=\E[7m:nd=\E[C:nw=^M^J:pf=\E[4i:\
-       :po=\E[5i:ps=\E[0i:\
-       :r1=\E(B\E)B\E>\E F\E[4;20l\E[12h\E[?1;5;6;38;42l\E[?7;25h\E4i\E?4i\E[m\E[r\E[2$~:\
-       :rc=\E8:sc=\E7:se=\E[27m:sf=^J:so=\E[7m:sr=\EM:\
-       :st=\EH:ta=^I:ts=\E[1$}\r\E[K:ue=\E[24m:up=\E[A:\
-       :us=\E[4m:vb=\E[?5h\E[?5l\E[?5h\E[?5l\E[?5h\E[?5l:\
-       :ve=\E[?25h:vi=\E[?25l:
-
-######## OLDER TERMINAL TYPES
-#
-# This section is devoted to older commercial terminal brands that are now
-# discontinued, but known to be still in use or represented by emulations.
-#
-
-#### AT&T (att, tty)
-#
-# This section also includes Teletype-branded VDTs.
-#
-# The AT&T/Teletype terminals group was sold to SunRiver Data Systems; for
-# details, see the header comment on the ADDS section.
-#
-# These are AT&T's official terminfo entries
-#
-att2300|ATT2300|sv80|AT&T 2300 Video Information Terminal 80 column mode:\
-       :am:eo:mi:ms:xo:\
-       :co#80:it#8:li#24:\
-       :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:F1=\E[11r:\
-       :F2=\E[12r:F3=\E[13r:F4=\E[14r:F5=\E[15r:F6=\E[16r:\
-       :IC=\E[%d@:LE=\E[%dD:RI=\E[%dC:UP=\E[%dA:al=\E[L:\
-       :bl=^G:cb=\E[1K:cd=\E[J:ce=\E[K:cl=\E[H\E[J:\
-       :cm=\E[%i%d;%dH:cr=^M:dc=\E[P:dl=\E[M:do=^J:ei=\E[4l:\
-       :ho=\E[H:im=\E[4h:k1=\E[1r:k2=\E[2r:k3=\E[3r:\
-       :k4=\E[4r:k5=\E[5r:k6=\E[6r:k7=\E[7r:k8=\E[8r:\
-       :k9=\E[9r:k;=\E[10r:kA=\E[L:kB=\E[Z:kC=\E[J:kD=\E[P:\
-       :kI=\E[@:kL=\E[M:kb=^H:kd=\E[B:kh=\E[H:kl=\E[D:\
-       :kr=\E[C:ku=\E[A:le=^H:me=\E[m:mr=\E[7m:nd=\E[C:\
-       :pf=\E[4i:po=\E[5i:ps=\E[0i:se=\E[0m:sf=^J:so=\E[7m:\
-       :ta=^I:up=\E[A:
-att2350|AT&T 2350 Video Information Terminal 80 column mode:\
-       :pf@:po@:ps@:tc=att2300:
-att2300-x40|sv40|AT&T 2300 Video Information Terminal 40 column mode:\
-       :co#40:it#5:li#23:\
-       :AL@:al@:tc=att2300:
-att2350-x40|ATT2350-x40|AT&T 2350 Video Information Terminal 40 column mode:\
-       :co#40:it#5:li#23:\
-       :AL@:al@:tc=att2350:
-
-# Must setup RETURN KEY - CR, REC'VD LF - INDEX.
-# Seems upward compatible with vt100, plus ins/del line/char.
-# On sgr, the protection parameter is ignored.
-# No check is made to make sure that only 3 parameters are output.
-#      standout= reverse + half-intensity = 3 | 5.
-#      bold= reverse + underline = 2 | 3.
-# note that half-bright blinking doesn't look different from normal blinking.
-# NOTE:you must program the function keys first, label second!
-att5410v1|att4410v1|tty5410v1|AT&T 4410/5410 80 columns - version 1:\
-       :am:hs:mi:ms:xo:\
-       :Nl#8:co#80:it#8:lh#2:li#24:lw#8:ws#80:\
-       :ac=``aaffhhggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~00++--\\\054\\\054..:\
-       :ae=^O:al=\E[L:as=^N:bl=^G:cd=\E[J:ce=\E[K:\
-       :cl=\E[H\E[J:cm=\E[%i%d;%dH:cr=^M:cs=\E[%i%d;%dr:\
-       :dc=\E[P:dl=\E[M:do=\E[B:ei=:fs=\E8:ho=\E[H:\
-       :i1=\E[?3l\E)0:\
-       :i2=\E[1;03q   f1           \EOP\E[2;03q   f2           \EOQ\E[3;03q   f3           \EOR\E[4;03q   f4           \EOS\E[5;03q   f5           \EOT\E[6;03q   f6           \EOU\E[7;03q   f7           \EOV\E[8;03q   f8           \EOW:\
-       :ic=\E[@:im=:k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:k5=\EOT:\
-       :k6=\EOU:k7=\EOV:k8=\EOW:kC=\E[2J:kH=\E[24;1H:kb=^H:\
-       :kd=\E[B:kh=\E[H:kl=\E[D:kr=\E[C:ku=\E[A:le=^H:\
-       :ll=\E[24H:mb=\E[5m:md=\E[2;7m:me=\E[m\017:mh=\E[2m:\
-       :mk=\E[8m:mr=\E[7m:nd=\E[C:nw=^M^J:\
-       :..pn=\E[%p1%d;00q%p2%\072-16s:\
-       :..px=\E[%p1%1d;%p2%l%2.2dq   f%p1%1d           %p2%s:\
-       :r2=\Ec\E[?3l\E[2;0y:rc=\E8:\
-       :..sa=\E[0%?%p1%p5%|%t;2%;%?%p2%p6%|%t;4%;%?%p4%t;5%;%?%p3%p1%|%p6%|%t;7%;%?%p7%t;8%;m%?%p9%t\016%e\017%;:\
-       :sc=\E7:se=\E[m:sf=^J:so=\E[7m:sr=\EM:ta=^I:\
-       :ts=\E7\E[25;%p1%{1}%+%dH:ue=\E[m:up=\E[A:us=\E[4m:
-
-att4410v1-w|att5410v1-w|tty5410v1-w|AT&T 4410/5410 132 columns - version 1:\
-       :co#132:ws#132:\
-       :i1=\E[?3h\E)0:r2=\Ec\E[?3h\E[2;0y:tc=att5410v1:
-
-att4410|att5410|tty5410|AT&T 4410/5410 80 columns - version 2:\
-       :..px=\E[%p1%d;%p2%l%02dq   f%p1%d           %p2%s:tc=att5410v1:
-
-att4410-nfk|att5410-nfk|4410-nfk|tty5410-nfk|5410-nfk|version 1 AT&T 4410/5410 entry without function keys:\
-       :i3@:k1@:k2@:k3@:k4@:k5@:k6@:k7@:k8@:pn@:tc=att4410:
-
-att5410-w|att4410-w|4410-w|tty5410-w|5410-w|AT&T 4410/5410 in 132 column mode:\
-       :co#132:ws#132:\
-       :i1=\E[?3h\E)0:r2=\Ec\E[?3h\E[2;0y:tc=att4410:
-
-att5410-nsl|4410-nsl|att4410-nsl|ATT4410-nsl|tty5410-nsl|tty5410 entry without pln defined:\
-       :pn@:tc=att4410:
-
-otty5410|teletype 5410 for S5R2 curses:\
-       :ts=\E7\E[25;%p1%{1}%+%dH:tc=att4410:
-
-# 5410 in terms of a vt100
-v5410|5410 in terms of a vt100:\
-       :am:mi:ms:xo:\
-       :co#80:it#8:li#24:vt#3:\
-       :@8=\EOM:K1=\EOq:K2=\EOr:K3=\EOs:K4=\EOp:K5=\EOn:\
-       :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\
-       :ae=^O:al=\E[L:as=^N:bl=^G:cb=\E[1K:cd=\E[J:ce=\E[K:\
-       :cl=\E[H\E[J:cm=\E[%i%d;%dH:cr=^M:cs=\E[%i%d;%dr:\
-       :ct=\E[3g:dc=\E[P:dl=\E[M:do=^J:eA=\E(B\E)0:ei=:\
-       :ho=\E[H:ic=\E[@:im=:k0=\EOy:k1=\EOP:k2=\EOQ:k3=\EOR:\
-       :k4=\EOS:k5=\EOt:k6=\EOu:k7=\EOv:k8=\EOl:k9=\EOw:\
-       :k;=\EOx:kb=^H:kd=\EOB:ke=\E[?1l\E>:kl=\EOD:kr=\EOC:\
-       :ks=\E[?1h\E=:ku=\EOA:le=^H:mb=\E[5m:md=\E[1m:\
-       :me=\E[m\017:mr=\E[7m:nd=\E[C:\
-       :r2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h:rc=\E8:\
-       :..sa=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;:\
-       :sc=\E7:se=\E[m:sf=^J:so=\E[1;7m:sr=\EM:st=\EH:ta=^I:\
-       :ue=\E[m:up=\E[A:us=\E[4m:
-
-# 
-# Teletype Model 5420 -- A souped up 5410, with multiple windows,
-# even! the 5420 has three modes: scroll, window or page mode
-# this terminfo should work in scroll or window mode, but doesn't
-# take advantage of any of the differences between them.
-#
-# Has memory below (2 lines!)
-# 3 pages of memory (plus some spare)
-# The 5410 sequences for cup,cvvis,dch,dl,ech,flash,home,hpa,hts would work
-# for these, but these work in both scroll and window mode...
-# Unset insert character so insert mode works
-# is1 sets 80 column mode,
-# is2 escape sequence:
-# 1) turn off all fonts
-# 2) function keys off, keyboard lock off, control display off,
-#    insert mode off, erasure mode off,
-# 3) full duplex, monitor mode off, send graphics off, nl on lf off
-# 4) reset origin mode
-# 5) set line wraparound
-# 6) exit erasure mode, positional attribute mode, and erasure extent mode
-# 7) clear margins
-# 8) program ENTER to transmit ^J,
-# We use \212 to program the ^J because a bare ^J will get translated by
-# UNIX into a CR/LF. The enter key is needed for AT&T uOMS.
-#     1      2            3              4     5     6    7  8
-# is3 set screen color to black,
-# No representation in terminfo for the delete word key: kdw1=\Ed
-# Key capabilities assume the power-up send sequence...
-# This rmcup is not strictly necessary, but it helps maximize 
-# memory usefulness: rmcup=\Ez,
-# Alternate sgr0:      sgr0=\E[0m\EW^O,
-# Alternate sgr:       sgr=\E[%?%p1%t2;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p5%t;2%;%?%p7%t;8%;m%?%p8%t\EV%;%?%p9%t^N%e^O%;,
-# smkx programs the SYS PF keys to send a set sequence.
-# It also sets up labels f1, f2, ..., f8, and sends edit keys.
-# This string causes them to send the strings kf1-kf8
-# when pressed in SYS PF mode.
-att4415|tty5420|att5420|AT&T 4415/5420 80 columns:\
-       :db:mi:xo:\
-       :Nl#8:lh#2:lm#78:lw#8:ws#55:\
-       :@1=\Et:@7=\Ez:@8=\Eent:AL=\E[%dL:\
-       :CM=\E[%i%p1%d;%p2%dt:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:\
-       :IC=\E[%d@:LE=\E[%dD:LF=\E|:LO=\E~:RI=\E[%dC:\
-       :SF=\E[%dE:SR=\E[%dF:UP=\E[%dA:bt=\E[Z:ch=\E[%+^AG:\
-       :cl=\E[x\E[J:cm=\E[%i%d;%dx:ct=\E[3g:cv=\E[%+^Ad:\
-       :ec=\E[%ds\E[%dD:ei=\E[4l:ho=\E[x:i1=\E[?3l:\
-       :i2=\E[?5l:ic@:im=\E[4h:\
-       :is=\E[0m\017\E[1;2;3;4;6l\E[12;13;14;20l\E[?6;97;99l\E[?7h\E[4i\Ex\E[21;1j\212:\
-       :k1=\EOc:k2=\EOd:k3=\EOe:k4=\EOf:k5=\EOg:k6=\EOh:\
-       :k7=\EOi:k8=\EOj:kA=\E[L:kB=\E[Z:kD=\E[P:kE=\E[2K:\
-       :kF=\E[T:kH=\Eu:kI=\E[4h:kL=\E[M:kN=\E[U:kP=\E[V:\
-       :kR=\E[S:ke=\E[19;0j\E[21;1j\212:\
-       :ks=\E[19;1j\E[21;4j\Eent:l1=F1:l2=F2:l3=F3:l4=F4:\
-       :l5=F5:l6=F6:l7=F7:l8=F8:ll=\Ew:me=\E[0m\017:mp=\EV:\
-       :pf=\E[?9i:..pn=\E[%p1%d;0;0;0q%p2%\072-16.16s:\
-       :po=\E[?4i:ps=\E[?2i:\
-       :..px=\E[%p1%d;%p2%l%02dq   F%p1%d           %p2%s:\
-       :..sa=\E[0%?%p1%p5%|%t;2%;%?%p2%p6%|%t;4%;%?%p4%t;5%;%?%p3%p1%|%p6%|%t;7%;%?%p7%t;8%;m%?%p9%t\016%e\017%;:\
-       :st=\EH:ts=\E7\E[25;%p1%{8}%+%dH:vb=\E[?5h\E[?5l:\
-       :ve=\E[11;0j:vs=\E[11;1j:tc=att4410:
-
-att4415-w|tty5420-w|att5420-w|5420-w|AT&T model 4415/5420 in 132 column mode:\
-       :co#132:lm#54:ws#97:\
-       :i1=\E[?3h:tc=att4415:
-
-att4415-rv|tty5420-rv|att5420-rv|AT&T model 4415/5420 80 columns in reverse video:\
-       :i2=\E[?5h:vb=\E[?5l\E[?5h:tc=att4415:
-
-att4415-w-rv|tty5420-w-rv|att5420-w-rv|AT&T model 4415/5420 132 columns in reverse video:\
-       :co#132:lm#54:ws#97:\
-       :i1=\E[?3h:i2=\E[?5h:vb=\E[?5l\E[?5h:tc=att4415:
-
-# Note that this mode permits programming USER PF KEYS and labels
-# However, when you program user pf labels you have to reselect
-# user pf keys to make them appear! 
-att4415+nl|4415+nl|tty5420+nl|att5420+nl|generic AT&T 4415/5420 changes for not changing labels:\
-       :k1@:k2@:k3@:k4@:k5@:k6@:k7@:k8@:\
-       :..pn=\E[%p1%d;0;0;1q%p2%\072-16.16s:\
-       :..px=\E[%p1%d;%p2%l%02d;0;1q   F%p1%d           %p2%s:
-
-att4415-nl|4415-nl|tty5420-nl|att5420-nl|AT&T 4415/5420 without changing labels:\
-       :k1@:k2@:k3@:k4@:k5@:k6@:k7@:k8@:tc=att4415+nl:tc=att4415:
-
-att4415-rv-nl|tty5420-rv-nl|att5420-rv-nl|AT&T 4415/5420 reverse video without changing labels:\
-       :k1@:k2@:k3@:k4@:k5@:k6@:k7@:k8@:tc=att4415+nl:tc=att4415-rv:
-
-att4415-w-nl|tty5420-w-nl|att5420-w-nl|AT&T 4415/5420 132 cols without changing labels:\
-       :k1@:k2@:k3@:k4@:k5@:k6@:k7@:k8@:tc=att4415+nl:tc=att4415-w:
-
-att4415-w-rv-n|tty5420-w-rv-n|att5420-w-rv-n|AT&T 4415/5420 132 cols reverse without changing labels:\
-       :k1@:k2@:k3@:k4@:k5@:k6@:k7@:k8@:tc=att4415+nl:tc=att4415-w-rv:
-
-otty5420|teletype 5420 for SVR2 curses on the 3B-20's:\
-       :ch=\E[%+^AG:cv=\E[%+^Ad:tc=tty5420:
-
-att5420_2|AT&T 5420 model 2 in 80 column mode:\
-       :am:db:hs:mi:ms:xo:\
-       :Nl#8:co#80:it#8:lh#2:li#24:lm#78:lw#8:ws#55:\
-       :@1=\Et:@7=\Ez:@8=^J:AL=\E[%dL:CM=\E[%i%p1%d;%p2%dt:\
-       :DC=\E[%dP:DL=\E[%dM:IC=\E[%d@:LE=\E[%dD:LF=\E|:\
-       :LO=\E~:RI=\E[%dC:SF=\E[%dE:SR=\E[%dF:UP=\E[%dA:\
-       :ae=^O:al=\E[L:as=^N:bt=\E[1Z:cb=\E[1K:cd=\E[0J:\
-       :ce=\E[0K:ch=\E[%+^AG:cl=\EH\EJ:cm=\E[%i%d;%dH:\
-       :cr=\EG:cs=\E[%i%d;%dr:ct=\E[3g:cv=\E[%+^Ad:dc=\E[P:\
-       :dl=\E[M:do=\E[1B:ec=\E[%ds\E[%dD:ei=:fs=\E8:ho=\E[H:\
-       :i1=\E[0;23r\Ex\Ey\E[2;0j\E[3;3j\E[4;0j\E[5;0j\E[6;0j\E[7;0j\E[8;0j\E[9;1j\E[10;0j\E[15;0j\E[16;1j\E[19;0j\E[20;1j\E[29;0j\E[1;24r:\
-       :ic=\E[@:im=:k1=\EOc:k2=\EOd:k3=\EOe:k4=\EOf:k5=\EOg:\
-       :k6=\EOh:k7=\EOi:k8=\EOj:kA=\E[L:kB=\E[Z:kC=\E[2J:\
-       :kD=\E[P:kE=\E[2K:kF=\E[T:kH=\Eu:kI=\E[4h:kL=\E[M:\
-       :kN=\E[U:kP=\E[V:kR=\E[S:kb=^H:kd=\E[B:ke=\E[19;0j:\
-       :kh=\E[H:kl=\E[D:kr=\E[C:ks=\E[19;1j:ku=\E[A:l1=F1:\
-       :l2=F2:l3=F3:l4=F4:l5=F5:l6=F6:l7=F7:l8=F8:le=^H:\
-       :ll=\Ew:mb=\E[5m:me=\E[0m\017:mh=\E[2m:mk=\E[8m:\
-       :mp=\EV:mr=\E[7m:nd=\E[1C:nw=^M^J:pf=\E[4i:\
-       :..pn=\E[%p1%d;0;0;0q%p2%\072-16.16s\E~:po=\E[5i:\
-       :ps=\E[?;2i:\
-       :..px=\E[%p1%d;%p2%l%02dq   F%p1%d           %p2%s\E~:\
-       :r2=\Ec\E[?3l\E[2;0y:rc=\E8:\
-       :..sa=\E[0%?%p1%p5%|%t;2%;%?%p2%p6%|%t;4%;%?%p4%t;5%;%?%p3%p1%|%p6%|%t;7%;%?%p7%t;8%;m%?%p9%t\016%e\017%;:\
-       :sc=\E7:se=\E[m:sf=^J:so=\E[7m:sr=\EM:st=\EH:ta=^I:\
-       :ts=\E7\E[25;%p1%{8}%+%dH:ue=\E[m:us=\E[4m:\
-       :vb=\E[?5h\E[?5l:ve=\E[11;0j:vs=\E[11;1j:
-att5420_2-w|AT&T 5420 model 2 in 132 column mode:\
-       :co#132:\
-       :i1=\E[0;23r\Ex\Ey\E[2;0j\E[3;3j\E[4;0j\E[5;1j\E[6;0j\E[7;0j\E[8;0j\E[9;1j\E[10;0j\E[15;0j\E[16;1j\E[19;0j\E[20;1j\E[29;0j\E[1;24r:tc=att5420_2:
-
-att4418|att5418|ATT5418|AT&T 5418 in 80 column mode:\
-       :am:xo:\
-       :co#80:li#24:\
-       :@8=\E[:AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:\
-       :F1=\E[n:F2=\E[o:F3=\E[H:F4=\E[I:F5=\E[J:F8=\E[K:\
-       :F9=\E[L:FA=\E[E:FB=\E[_:FC=\E[M:FD=\E[N:FE=\E[O:\
-       :IC=\E[%d@:LE=\E[%dD:RI=\E[%dC:UP=\E[%dA:ae=^O:\
-       :al=\E[1L:as=^N:bl=^G:cd=\E[0J:ce=\E[0K:cl=\E[H\E[2J:\
-       :cm=\E[%i%d;%dH:cr=^M:dc=\E[1P:dl=\E[M:do=\E[B:ei=:\
-       :ho=\E[H:i1=\E[?3l:ic=\E[1@:im=:is=\E)0\E?6l\E?5l:\
-       :k1=\E[h:k2=\E[i:k3=\E[j:k6=\E[k:k7=\E[l:k8=\E[f:\
-       :k9=\E[w:k;=\E[m:kC=\E[%:kd=\EU:kh=\Ec:kl=\E@:kr=\EA:\
-       :ku=\ES:le=\E[D:mb=\E[5m:me=\E[0m\017:mh=\E[2m:\
-       :mr=\E[7m:nd=\E[C:rc=\E8:sc=\E7:se=\E[0m:sf=^J:\
-       :so=\E[7m:ue=\E[0m:up=\E[A:us=\E[4m:
-att4418-w|att5418-w|AT&T 5418 in 132 column mode:\
-       :co#132:\
-       :i1=\E[?3h:tc=att5418:
-
-tty4420|teletype 4420:\
-       :da:db:eo:ms:ul:xo:\
-       :co#80:li#24:lm#72:\
-       :al=\EL:bl=^G:cd=\EJ:ce=\Ez:cl=\EH\EJ:cm=\EY%+ %+ :\
-       :cr=\EG:dc=\EP:dl=\EM:dm@:do=\EB:ed@:ho=\EH:k0=\EU:\
-       :k3=\E@:kA=\EL:kB=\EO:kC=\EJ:kD=\EP:kF=\ES:kI=\E^:\
-       :kL=\EM:kR=\ET:kd=\EB:kh=\EH:kl=^H:kr=\EC:ku=\EA:\
-       :l0=segment advance:l3=cursor tab:le=\ED:nd=\EC:\
-       :se=\E~:sf=\EH\EM\EY7 :so=\E}:ue=\EZ:up=\EA:us=\E\\:
-
-#  The following is a termcap entry for the Teletype 4424
-#  asynchronous keyboard-display terminal.  It supports
-#  the vi editor.  The terminal must be "set up" as follows,
-#      
-#      HIGHLIGHT DEFINITION    3-TONE
-#      DISPLAY FUNCTION        GROUP III
-#      
-#  The second entry below provides limited (a la adm3a)
-#  operation under GROUP II.
-#      
-#  This must be used with DISPLAY FUNCTION GROUP I or III
-#      and HIGHLIGHT DEFINITION 3-TONE
-# The terminal has either bold or blink, depending on options
-#
-att4424|tty4424|4424-3|teletype 4424:\
-       :am:xo:\
-       :co#80:li#24:\
-       :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:IC=\E[%d@:\
-       :LE=\E[%dD:RI=\E[%dC:UP=\E[%dA:ae=\E(B:al=\EL:\
-       :as=\E(0:bl=^G:bt=\EO:cd=\EJ:ce=\Ez:cl=\E[H\E[2J:\
-       :cm=\E[%i%d;%dH:cr=^M:cs=\E[%i%d;%dr:ct=\EF:dc=\EP:\
-       :dl=\EM:do=\EB:ei=:ho=\E[H:ic=\E^:im=:\
-       :is=\E[20l\E[?7h:k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:\
-       :kC=\EJ:kb=^H:kd=\E[B:kh=\E[H:kl=\E[D:kr=\E[C:\
-       :ku=\E[A:le=^H:mb=\E3:md=\E3:me=\EX\E~\EZ\E4\E(B:\
-       :mh=\EW:mr=\E}:nd=\EC:nw=\EE:\
-       :..sa=\E[%?%p1%t7%;%?%p2%t;4%;%?%p3%t;7%;%?%p6%t;1%;%?%p6%p4%|%t;5%;%?%p5%t;0%;m:\
-       :se=\E~:sf=^J:so=\E}:sr=\ET:st=\EH:ta=^I:ti=\E[1m:\
-       :ue=\EZ:up=\EA:us=\E\\:
-
-att4424-1|tty4424-1|teletype 4424 in display function group I:\
-       :kC@:kd=\EB:kh@:kl=\ED:kr=\EC:ku=\EA:tc=att4424:
-
-# The Teletype 5425 is really version 2 of the Teletype 5420. It 
-# is quite similar, except for some minor differences. No page 
-# mode, for example, so all of the cup sequences used above have 
-# to change back to what's being used for the 5410. Many of the 
-# option settings have changed their numbering as well.
-# 
-# This has been tested on a preliminary model.
-#
-att5425|tty5425|att4425|AT&T 4425/5425:\
-       :am:da:db:hs:mi:ms:xn:xo:\
-       :Nl#8:co#80:it#8:lh#2:li#24:lm#78:lw#8:ws#55:\
-       :@1=\Et:@7=\Ez:@8=\Eent:AL=\E[%dL:DC=\E[%dP:\
-       :DL=\E[%dM:DO=\E[%dB:IC=\E[%d@:LE=\E[%dD:LF=\E|:\
-       :LO=\E~:RI=\E[%dC:SF=\E[%dE:SR=\E[%dF:UP=\E[%dA:\
-       :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\
-       :ae=^O:al=\E[L:as=^N:bl=^G:bt=\E[Z:cb=\E[1K:cd=\E[J:\
-       :ce=\E[K:ch=\E[%+^AG:cl=\E[H\E[J:cm=\E[%i%d;%dH:\
-       :cr=^M:cs=\E[%i%d;%dr:ct=\E[3g:cv=\E[%+^Ad:dc=\E[P:\
-       :dl=\E[M:do=^J:eA=\E(B\E)0:ec=\E[%ds\E[%dD:ei=\E[4l:\
-       :fs=\E8:ho=\E[H:i1=\E<\E[?3l:i2=\E[?5l:im=\E[4h:\
-       :is=\E[0m\017\E[1;2;3;4;6l\E[12;13;14;20l\E[?6;97;99l\E[?7h\E[4i\Ex\E[25;1j\212:\
-       :k1=\EOc:k2=\EOd:k3=\EOe:k4=\EOf:k5=\EOg:k6=\EOh:\
-       :k7=\EOi:k8=\EOj:kA=\E[L:kB=\E[Z:kC=\E[J:kD=\E[P:\
-       :kE=\E[2K:kF=\E[T:kI=\E[4h:kL=\E[M:kR=\E[S:kb=^H:\
-       :kd=\E[B:ke=\E[21;0j\E[25;1j\212:kh=\E[H:kl=\E[D:\
-       :kr=\E[C:ks=\E[21;1j\E[25;4j\Eent\E~:ku=\E[A:le=^H:\
-       :ll=\E[24H:mb=\E[5m:md=\E[2;7m:me=\E[m\017:mh=\E[2m:\
-       :mk=\E[8m:mp=\EV:mr=\E[7m:nd=\E[C:nw=^M^J:pf=\E[?9i:\
-       :..pn=\E[%p1%d;0;0;0q%p2%\072-16.16s:po=\E[?4i:\
-       :ps=\E[?2i:\
-       :..px=\E[%p1%d;%p2%l%02dq   F%p1%1d           %p2%s:\
-       :r2=\Ec\E[?3l\E[2;0y:rc=\E8:\
-       :..sa=\E[0%?%p1%p5%|%t;2%;%?%p2%p6%|%t;4%;%?%p4%t;5%;%?%p3%p1%|%p6%|%t;7%;%?%p7%t;8%;m%?%p9%t\016%e\017%;:\
-       :sc=\E7:se=\E[m:sf=^J:so=\E[7m:sr=\EM:st=\EH:ta=^I:\
-       :ts=\E7\E[25;%p1%{8}%+%dH:ue=\E[m:up=\E[A:us=\E[4m:\
-       :vb=\E[?5h\E[?5l:ve=\E[12;0j:vs=\E[12;1j:
-
-att5425-nl|tty5425-nl|att4425-nl|AT&T 4425/5425 80 columns no labels:\
-       :ks=\E[21;1j\E[25;4j\Eent:tc=att4425:
-
-att5425-nl-w|tty5425-nl-w|att4425-nl-w|AT&T 4425/5425 132 columns no labels:\
-       :ks=\E[21;1j\E[25;4j\Eent:tc=att4425-w:
-
-tty5425-fk|att4425-fk|AT&T 4425/5425 without function keys:\
-       :ke@:ks@:tc=att5425:
-
-att5425-w|att4425-w|tty5425-w|teletype 4425/5425 in 132 column mode:\
-       :co#132:lm#54:ws#97:\
-       :i1=\E[?3h:tc=tty5425:
-
-tty5425-w-fk|att4425-w-fk|att5425-w-fk|AT&T 4425/5425 without function keys in wide mode:\
-       :ke@:ks@:tc=att5425-w:
-
-       
-# This had bogus capabilities: ri=\EM, ri=\E[1U, 
-att4426|tty4426|teletype 4426S:\
-       :am:da:db:xo:\
-       :co#80:li#24:lm#48:\
-       :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:IC=\E[%d@:\
-       :LE=\E[%dD:RI=\E[%dC:SF=\E[%dS:SR=\E[%dT:UP=\E[%dA:\
-       :ae=\E(B:al=\EL:as=\E(0:bl=^G:cd=\E[J:ce=\E[0K:\
-       :ch=\E[%dG:cl=\E[H\E[2J\E[1U\E[H\E[2J\E[1V:\
-       :cm=\E[%i%d;%dH:cr=^M:ct=\E[3g:cv=\E[%dd:dc=\EP:\
-       :dl=\E[M:do=\E[B:ei=:ho=\E[H:i1=\Ec\E[?7h:ic=\E^:im=:\
-       :is=\E[m\E[1;24r:k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:\
-       :k5=\EOT:k6=\EOU:k7=\EOV:k8=\EOW:kB=\EO:kC=\E[2J:\
-       :kH=\E[24;1H:kb=^H:kd=\EB:kh=\E[H:kl=\ED:kr=\EC:\
-       :ku=\EA:le=\E[D:ll=\E[24H:md=\E[5m:me=\E[0m\E(B:\
-       :mr=\E[7m:nd=\E[C:nw=^M^J:r2=\Ec\E[?3l\E[2;0y:rc=\E8:\
-       :sc=\E7:se=\E[0m:sf=^J:so=\E[5m:sr=\ET:st=\E1:ta=^I:\
-       :ue=\E[m:up=\EA:us=\E[4m:
-
-
-# Terminfo entry for the AT&T 510 A Personal Terminal
-# Function keys 9 - 16 are available only after the 
-# screen labeled (soft keys/action blocks) are labeled.  Function key
-# 9 corresponds to the leftmost touch target on the screen,
-# function key 16 corresponds to the rightmost.
-#
-# This entry is based on one done by Ernie Rice at Summit, NJ and
-# changed by Anne Gallup, Skokie, IL, ttrdc!anne
-att510a|510a|bct510a|510A|AT&T 510A Personal Terminal:\
-       :am:mi:ms:xn:xo:\
-       :Nl#8:co#80:lh#2:li#24:lw#7:\
-       :#4=\E[u:%i=\E[v:AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:\
-       :DO=\E[%dB:F1=\EOe:F2=\EOf:F3=\EOg:F4=\EOh:F5=\EOi:\
-       :F6=\EOj:LE=\E[%dD:RI=\E[%dC:UP=\E[%dA:\
-       :ac=hrisjjkkllmmnnqqttuuvvwwxx{{||}}~~-f\\\054h.e+g`b:\
-       :ae=^O:al=\E[L:as=^N:bl=^G:bt=\E[Z:cb=\E[1K:cd=\E[0J:\
-       :ce=\E[0K:cl=\E[H\E[J:cm=\E[%i%d;%dH:cr=^M:ct=\E[3g:\
-       :dc=\E[P:dl=\E[M:do=\E[1B:eA=\E(B\E)1:ff=^L:ho=\E[H:\
-       :i1=\E(B\E)1\E[2l:i2=\E[21;1|\212:k1=\EOm:k2=\EOV:\
-       :k3=\EOu:k4=\ENj:k5=\ENe:k6=\ENf:k7=\ENh:k8=\E[H:\
-       :k9=\EOc:k;=\EOd:kB=\E[Z:kF=\E[S:kR=\E[T:kb=^H:\
-       :kd=\E[B:ke=\E[19;0|:kl=\E[D:kr=\E[C:ks=\E[19;1|:\
-       :ku=\E[A:le=^H:mb=\E[5m:md=\E[2;7m:me=\E[m\017:\
-       :mh=\E[2m:mr=\E[7m:nd=\E[C:nw=\EE:pf=\E[?8i:\
-       :..pn=\E[%p1%dp%p2%\072-16s:po=\E[?4i:ps=\E[0i:\
-       :rc=\E8:\
-       :..sa=\E[0%?%p5%p6%|%t;2%;%?%p2%t;4%;%?%p4%t;5%;%?%p3%p1%|%p6%|%t;7%;m%?%p9%t\016%e\017%;:\
-       :sc=\E7:se=\E[m:sf=^J:so=\E[7m:sr=\EM:st=\EH:ta=^I:\
-       :ue=\E[m:up=\E[A:us=\E[4m:ve=\E[11;3|:vi=\E[11;0|:\
-       :vs=\E[11;2|:
-
-# Terminfo entry for the AT&T 510 D Personal Terminal
-# Function keys 9 through 16 are accessed by bringing up the
-# system blocks.
-# Function key 9 corresponds to the leftmost touch target on the screen,
-# function key 16 corresponds to the rightmost.
-#
-# There are problems with soft key labeling.  These are due to 
-# strangenesses in the native terminal that are impossible to
-# describe in a terminfo.  
-att510d|510d|bct510d|510D|AT&T 510D Personal Terminal:\
-       :am:da:db:mi:ms:xn:xo:\
-       :Nl#8:co#80:lh#2:li#24:lm#48:lw#7:\
-       :#4=\E[u:%i=\E[v:AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:\
-       :DO=\E[%dB:F1=\EOe:F2=\EOf:F3=\EOg:F4=\EOh:F5=\EOi:\
-       :F6=\EOj:IC=\E[%d@:LE=\E[%dD:LF=\E<:LO=\E?:MC=\E\072:\
-       :ML=\E4:MR=\E5:RI=\E[%dC:RX=\E[29;1|:SF=\E[%dS:\
-       :SR=\E[%dT:SX=\E[29;0|:UP=\E[%dA:\
-       :ac=hrisjjkkllmmnnqqttuuvvwwxx{{||}}~~-f\\\054h.e+g`b:\
-       :ae=^O:al=\E[L:as=^N:bl=^G:bt=\E[Z:cb=\E[1K:cd=\E[0J:\
-       :ce=\E[0K:ch=\E[%+^AG:cl=\E[H\E[J:cm=\E[%i%d;%dH:\
-       :cr=^M:ct=\E[3g:cv=\E[%+^Ad:dc=\E[P:dl=\E[M:do=\E[1B:\
-       :eA=\E(B\E)1:ei=\E[4l:ff=^L:ho=\E[H:\
-       :i1=\E(B\E)1\E[5;0|:i2=\E[21;1|\212:im=\E[4h:k1=\EOm:\
-       :k2=\EOV:k3=\EOu:k4=\ENj:k5=\ENe:k6=\ENf:k7=\ENh:\
-       :k8=\E[H:k9=\EOc:k;=\EOd:kB=\E[Z:kF=\E[S:kR=\E[T:\
-       :kb=^H:kd=\E[B:ke=\E[19;0|:kl=\E[D:kr=\E[C:\
-       :ks=\E[19;1|:ku=\E[A:le=^H:ll=\E#2:mb=\E[5m:\
-       :md=\E[2;7m:me=\E[m\017:mh=\E[2m:mk=\E[8m:mr=\E[7m:\
-       :nd=\E[C:nw=\EE:pf=\E[?8i:..pn=\E[%p1%dp%p2%\072-16s:\
-       :po=\E[?4i:ps=\E[0i:r2=\E[5;0|:rc=\E8:\
-       :..rp=%p1%c\E[%p2%{1}%-%db:\
-       :..sa=\E[0%?%p5%p6%|%t;2%;%?%p2%t;4%;%?%p4%t;5%;%?%p3%p1%|%p6%|%t;7%;%?%p7%t;8%;m%?%p9%t\016%e\017%;:\
-       :sc=\E7:se=\E[m:sf=^J:so=\E[7m:sr=\EM:st=\EH:ta=^I:\
-       :ue=\E[m:up=\E[A:us=\E[4m:ve=\E[11;3|:vs=\E[11;2|:
-
-# (untranslatable capabilities removed to fit entry within 1023 bytes)
-# WARNING: this entry, 1245 bytes long, may core-dump older termcap libraries!
-att513|att513-page|513-page|attis513-pfk|513bct|AT&T 513 Terminal using page mode:\
-       :HC:am:mi:ms:xn:xo:\
-       :Nl#8:co#80:lh#2:li#24:lw#8:\
-       :!1=\EOO:!2=\EOP:!3=\EOS:#1=\EOM:#2=\ENM:#3=\ENJ:\
-       :#4=\ENK:%0=\EOt:%1=\EOm:%2=\ENi:%3=\EOl:%4=\ENc:\
-       :%5=\ENh:%6=\EOv:%7=\EOr:%8=\ENg:%9=\EOz:%a=\EOL:\
-       :%b=\ENC:%c=\ENH:%d=\EOR:%e=\ENG:%f=\EOZ:%g=\EOT:\
-       :%h=\EOY:%i=\ENL:%j=\EOQ:&0=\EOW:&1=\EOb:&2=\ENa:\
-       :&3=\EOy:&4=\EOB:&5=\EOq:&6=\EOo:&7=\EOp:&8=\EOs:\
-       :&9=\ENB:*0=\EOX:*1=\EOU:*2=\END:*3=\EON:*4=\ENF:\
-       :*5=\ENE:*6=\ENI:*7=\ENN:*8=\EOA:*9=\EOK:@0=\EOx:\
-       :@1=\E9:@2=\EOw:@3=\EOV:@4=\EOu:@5=\ENd:@6=\EOn:\
-       :@7=\E0:@8=\Eent:@9=\EOk:AL=\E[%dL:DC=\E[%dP:\
-       :DL=\E[%dM:DO=\E[%dB:IC=\E[%d@:LE=\E[%dD:LF=\E<:\
-       :LO=\E?:RI=\E[%dC:SF=\E[%dE:SR=\E[%dF:UP=\E[%dA:\
-       :ac=hrisjjkkllmmnnqqttuuvvwwxx{{||}}~~-f\\\054h.e+g`b:\
-       :ae=^O:al=\E[L:as=^N:bl=^G:bt=\E[Z:cb=\E[1K:cd=\E[J:\
-       :ce=\E[K:ch=\E[%+^AG:cl=\E[H\E[J:cm=\E[%i%d;%dH:\
-       :cr=^M:cs=%i\E[%d;%dr:ct=\E[3g:cv=\E[%+^Ad:dc=\E[P:\
-       :dl=\E[M:do=^J:eA=\E(B\E)1:ei=\E[4l:ho=\E[H:\
-       :i1=\E?\E[3;3|\E[10;0|\E[21;1|\212\E[6;1|\E[1{\E[?99l:\
-       :im=\E[4h:k1=\EOc:k2=\EOd:k3=\EOe:k4=\EOf:k5=\EOg:\
-       :k6=\EOh:k7=\EOi:k8=\EOj:kB=\E[Z:kC=\E[J:kD=\ENf:\
-       :kE=\EOa:kF=\E[S:kI=\ENj:kL=\ENe:kN=\E[U:kP=\E[V:\
-       :kR=\E[T:kb=^H:kd=\E[B:ke=\E[19;0|\E[21;1|\212:\
-       :kh=\E[H:kl=\E[D:kr=\E[C:ks=\E[19;1|\E[21;4|\Eent:\
-       :ku=\E[A:le=^H:ll=\E#2:mb=\E[5m:md=\E[2;7m:\
-       :me=\E[m\017:mh=\E[2m:mk=\E[8m:mr=\E[7m:nd=\E[C:\
-       :nw=\EE:pf=\E[?98l\E[?8i::::po=\E[?98l\E[?4i:\
-       :ps=\E[?98l\E[0i::\
-       :r1=\E?\E[3;3|\E[10;0|\E[21;1|\212\E[6;1|\E[1{\E[?99l\E[2;0|\E[6;1|\E[8;0|\E[19;0|\E[1{\E[?99l:\
-       :r2=\E[5;0|:rc=\E8:::sc=\E7:se=\E[m:sf=^J:so=\E[7m:\
-       :sr=\EM:st=\EH:ta=^I:ue=\E[m:up=\E[A:us=\E[4m:\
-       :ve=\E[11;0|:vs=\E[11;1|:
-
-att500|bct500|500|AT&T-IS 500 terminal:\
-       :tc=att513:
-
-# 01-07-88
-# printer must be set to EMUL ANSI to accept ESC codes
-# cuu1 stops at top margin
-# is1 sets cpi 10,lpi 6,form 66,left 1,right 132,top 1,bottom 66,font
-#      and alt font ascii,wrap on,tabs cleared
-# is2 disables newline on LF,Emphasized off
-# The u0 capability sets form length
-# (untranslatable capabilities removed to fit entry within 1023 bytes)
-# WARNING: this entry, 1034 bytes long, may core-dump older termcap libraries!
-att5320|AT&T Model 5320 matrix printer:\
-       :YA:YD:\
-       :Ya#8192:Yi#10:Yj#12:Yk#100:Yl#72:Ym#120:co#132:it#8:\
-       :li#66:\
-       :DO=\E[%de:RI=\E[%da:\
-       :ZA=%?%p1%{10}%=%t\E[w%e%p1%{12}%=%t\E[2w%e%p1%{5}%=%t\E[5w%e%p1%{13}%=%p1%{14}%=%O%t\E[3w%e%p1%{16}%=%p1%{17}%=%O%t\E[4w%e%p1%{6}%=%t\E[6w%e%p1%{7}%=%t\E[7w%e%p1%{8}%=%t\E[8w%;:\
-       :ZB=%?%p1%{2}%=%t\E[4z%e%p1%{3}%=%t\E[5z%e%p1%{4}%=%t\E[6z%e%p1%{6}%=%t\E[z%e%p1%{8}%=%t\E[2z%e%p1%{12}%=%t\E[3z%;:\
-       :ZM=\E[5m:ZU=\E[m:\
-       :Zj=%?%p1%{0}%=%t\E(B%e%p1%{1}%=%t\E(A%e%p1%{2}%=%t\E(C%e%p1%{3}%=%t\E(D%e%p1%{4}%=%t\E(E%e%p1%{5}%=%t\E(H%e%p1%{6}%=%t\E(K%e%p1%{7}%=%t\E(R%e%p1%{8}%=%t\E(Q%e%p1%{9}%=%t\E(Y%e%p1%{10}%=%t\E(Z%e%p1%{11}%=%t\E(0%e%p1%{12}%=%t\E(1%e%p1%{13}%=%t\E(3%e%p1%{14}%=%ttM\ 1:\
-       :Zl=\E[;%dr:Zm=\E[%+^As:Zn=\E[;%+^As:Zp=\E[%dr:\
-       :Zy=%?%p1%{0}%=%tusascii%e%p1%{1}%=%tenglish%e%p1%{2}%=%tfinnish%e%p1%{3}%=%tjapanese%e%p1%{4}%=%tnorwegian%e%p1%{5}%=%tswedish%e%p1%{6}%=%tgermanic%e%p1%{7}%=%tfrench%e%p1%{8}%=%tcanadian_french%e%p1%{9}%=%titalian%e%p1%{10}%=%tspanish%e%p1%{11}%=%tline%e%p1%ÆM\ 1:\
-       :ch=\E[%d`:cr=^M:cv=\E[%dd:do=^J:ff=^L:i1=\Ec:\
-       :is=\E[20l\r:nd= :ta=^I:u0=\E[%dt:up=\EM:
-
-att5310|AT&T 5310 matrix printer:\
-       :co#80:\
-       :tc=att5320:
-
-# 5620 terminfo  (2.0 or later ROMS with char attributes)
-# assumptions: ind (scroll forward one line) is only done at screen bottom
-att5620|dmd|tty5620|ttydmd|5620|5620 terminal 88 columns:\
-       :NL:NP:am:xo:\
-       :co#88:it#8:li#70:\
-       :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:IC=\E[%d@:SF=\E[%dS:\
-       :SR=\E[%dT:al=\E[L:bl=^G:cd=\E[J:ce=\E[K:cl=\E[H\E[J:\
-       :cm=\E[%i%d;%dH:cr=^M:dc=\E[P:dl=\E[M:do=\E[B:ei=:\
-       :ho=\E[H:ic=\E[@:im=:kC=\E[2J:kH=\E[70;1H:kb=^H:\
-       :kd=\E[B:kh=\E[H:kl=\E[D:kr=\E[C:ku=\E[A:le=^H:\
-       :md=\E[2m:me=\E[0m:mh=\E[2m:mr=\E[7m:nd=\E[C:nw=^J:\
-       :..px=\E[%p1%d;%p2%l%dq%p2%s:r1=\Ec:rc=\E8:sc=\E7:\
-       :se=\E[0m:sf=\E[S:so=\E[7m:sr=\E[T:ta=^I:ue=\E[0m:\
-       :up=\E[A:us=\E[4m:
-
-att5620-24|dmd-24|teletype dmd 5620 in a 24x80 layer:\
-       :li#24:\
-       :tc=att5620:
-
-att5620-34|dmd-34|teletype dmd 5620 in a 34x80 layer:\
-       :li#34:\
-       :tc=att5620:
-
-# Entries for kf15 thru kf28 refer to the shifted system pf keys.
-#
-# Entries for kf29 thru kf46 refer to the alternate keypad mode
-# keys:  = * / + 7 8 9 - 4 5 6 , 1 2 3 0 . ENTER
-att605|605bct|AT&T 605  80 column  102key keyboard:\
-       :am:eo:xo:\
-       :Nl#8:co#80:li#24:lw#8:ws#80:\
-       :#4=\E[ A:%i=\E[ @:@7=\E[24;1H:DC=\E[%dP:DL=\E[%dM:\
-       :F1=\ENq:F2=\ENr:F3=\ENs:F4=\ENt:F5=\EOC:F6=\EOD:\
-       :F7=\EOE:F8=\EOF:F9=\EOG:FA=\EOH:FB=\EOI:FC=\EOJ:\
-       :FD=\ENO:FE=\ENP:FF=\ENQ:FG=\ENR:FH=\ENS:FI=\ENT:\
-       :FJ=\EOP:FK=\EOQ:FL=\EOR:FM=\EOS:FN=\EOw:FO=\EOx:\
-       :FP=\EOy:FQ=\EOm:FR=\EOt:FS=\EOu:FT=\EOv:FU=\EOl:\
-       :FV=\EOq:FW=\EOr:FX=\EOs:FY=\EOp:FZ=\EOn:Fa=\EOM:\
-       :IC=\E[%d@:LF=\E[2p:LO=\E[p:\
-       :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\
-       :ae=^O:al=\E[L:as=\E)0\016:bl=^G:bt=\E[Z:cb=\E[1K:\
-       :cd=\E[J:ce=\E[K:cl=\E[H\E[J:cm=\E[%i%d;%dH:cr=^M:\
-       :dc=\E[P:dl=\E[M:do=\E[B:ei=\E[4l:fs=\E8:\
-       :i1=\E[8;0|\E[?\E[13;20l\E[?\E[12h:ic=\E[@:im=\E[4h:\
-       :is=\E[0m\017:k1=\EOc:k2=\EOd:k3=\EOe:k4=\EOf:\
-       :k5=\EOg:k6=\EOh:k7=\EOi:k8=\EOj:k9=\ENo:k;=\ENp:\
-       :kA=\E[L:kB=\E[Z:kC=\E[2J:kD=\E[P:kF=\E[S:kI=\E[@:\
-       :kL=\E[M:kN=\E[U:kP=\E[V:kb=^H:kd=\E[B:kh=\E[H:\
-       :kl=\E[D:kr=\E[C:ku=\E[A:le=^H:ll=\E[24H:mb=\E[5m:\
-       :md=\E[1m:me=\E[m\017:mh=\E[2m:mk=\E[8m:mr=\E[7m:\
-       :nd=\E[C:nw=\EE:pf=\E[?4i:\
-       :..pn=\E[%p1%d;0;0;0q%p2%\072-16.16s:po=\E[?5i:\
-       :..px=\E[%p1%d;%p2%l%02dq   F%p1%1d           %p2%s:\
-       :r2=\Ec\E[?3l:rc=\E8:sc=\E7:se=\E[m:sf=^J:so=\E[7m:\
-       :ta=^I:ts=\E7\E[25;%i%p1%dx:ue=\E[m:up=\E[A:us=\E[4m:
-att605-pc|605bct-pc|ATT 605 in pc term mode:\
-       :@7=\E[F:AL=\E[L:S4=250\E[?11l\E[50;1|:\
-       :S5=400\E[50;0|:XF=g:XN=e:\
-       :ac=k\277l\332m\300j\331n\305w\302q\304u\264t\303v\301x\263:\
-       :al=\E[L:bt=\E[Z:dc=\E[P:dl=\E[M:do=\E[B:ei=:ic=\E[@:\
-       :im=:k1=\E[M:k2=\E[N:k3=\E[O:k4=\E[P:k5=\E[Q:k6=\E[R:\
-       :k7=\E[S:k8=\E[T:k9=\E[U:k;=\E[V:kB=\E[Z:kD=\E[P:\
-       :kI=\E[@:kL=\E[M:kN=\E[G:kP=\E[I:kd=\E[B:kh=\E[H:\
-       :kl=\E[D:kr=\E[C:ku=\E[A:le=\E[D:nd=\E[C:up=\E[A:tc=att605:
-att605-w|605bct-w|AT&T 605-w 132 column 102 key keyboard:\
-       :co#132:ws#132:\
-       :i1=\E[8;0|\E[?4;5;13;15l\E[13;20l\E[?3;7h\E[12h\E(B\E)0:tc=att605:
-att610|610bct|AT&T 610; 80 column; 98key keyboard:\
-       :am:es:hs:mi:ms:xn:xo:\
-       :Nl#8:co#80:it#8:lh#2:li#24:lw#8:ws#80:\
-       :#4=\E[ @:%i=\E[ A:AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:\
-       :DO=\E[%dB:F1=\ENq:F2=\ENr:F3=\ENs:F4=\ENt:IC=\E[%d@:\
-       :LE=\E[%dD:LF=\E[2p:LO=\E[p:RI=\E[%dC:UP=\E[%dA:\
-       :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\
-       :ae=^O:al=\E[L:as=^N:bl=^G:bt=\E[Z:cb=\E[1K:cd=\E[J:\
-       :ce=\E[K:cl=\E[H\E[J:cm=\E[%i%d;%dH:cr=^M:\
-       :cs=\E[%i%d;%dr:dc=\E[P:dl=\E[M:do=\E[B:ei=\E[4l:\
-       :fs=\E8:ho=\E[H:\
-       :i1=\E[8;0|\E[?3;4;5;13;15l\E[13;20l\E[?7h\E[12h\E(B\E)0:\
-       :i2=\E(B\E)0:im=\E[4h:is=\E[0m\017:k1=\EOc:k2=\EOd:\
-       :k3=\EOe:k4=\EOf:k5=\EOg:k6=\EOh:k7=\EOi:k8=\EOj:\
-       :k9=\ENo:k;=\ENp:kB=\E[Z:kC=\E[2J:kF=\E[S:kR=\E[T:\
-       :kb=^H:kd=\E[B:kh=\E[H:kl=\E[D:kr=\E[C:ku=\E[A:le=^H:\
-       :ll=\E[24H:mb=\E[5m:md=\E[1m:me=\E[m\017:mh=\E[2m:\
-       :mk=\E[8m:mr=\E[7m:nd=\E[C:nw=\EE:pf=\E[?4i:\
-       :..pn=\E[%p1%d;0;0;0q%p2%\072-16.16s:po=\E[?5i:\
-       :..px=\E[%p1%d;%p2%l%02dq   F%p1%1d           %p2%s:\
-       :r2=\Ec\E[?3l:rc=\E8:\
-       :..sa=\E[0%?%p6%t;1%;%?%p5%t;2%;%?%p2%t;4%;%?%p4%t;5%;%?%p3%p1%|%t;7%;%?%p7%t;8%;m%?%p9%t\016%e\017%;:\
-       :sc=\E7:se=\E[m:sf=\ED:so=\E[7m:sr=\EM:ta=^I:\
-       :ts=\E7\E[25;%i%p1%dx:ue=\E[m:up=\E[A:us=\E[4m:\
-       :vb=\E[?5h\E[?5l:ve=\E[?25h\E[?12l:vi=\E[?25l:\
-       :vs=\E[?12;25h:
-att610-w|610bct-w|AT&T 610; 132 column; 98key keyboard:\
-       :co#132:ws#132:\
-       :i1=\E[8;0|\E[?4;5;13;15l\E[13;20l\E[?3;7h\E[12h:tc=att610:
-
-att610-103k|610-103k|610bct-103k|AT&T 610; 80 column; 103key keyboard:\
-       :!1=\EOO:!2=\EOP:!3=\EOS:#1=\EOM:%0=\EOt:%1=\EOm:\
-       :%2=\ENi:%3=\EOl:%4=\ENc:%5=\ENh:%6=\EOv:%7=\EOr:\
-       :%8=\ENg:%9=\EOz:%a=\EOL:%b=\ENC:%c=\ENH:%d=\EOR:\
-       :%e=\ENG:%f=\EOZ:%g=\EOT:%h=\EOY:%j=\EOQ:&0=\EOW:\
-       :&1=\EOb:&2=\ENa:&3=\EOy:&4=\EOB:&5=\EOq:&6=\EOo:\
-       :&7=\EOp:&8=\EOs:&9=\ENB:*0=\EOX:*1=\EOU:*2=\END:\
-       :*3=\EON:*4=\ENF:*5=\ENE:*6=\ENI:*7=\ENN:*8=\EOA:\
-       :*9=\EOK:@0=\EOx:@1=\E9:@2=\EOw:@3=\EOV:@4=\EOu:\
-       :@5=\ENd:@6=\EOn:@7=\E0:@8=^M:@9=\EOk:F1@:F2@:F3@:\
-       :F4@:k9@:k;@:kD=\ENf:kE=\EOa:kI=\ENj:kL=\ENe:kM=\ENj:\
-       :kN=\E[U:kP=\E[V:tc=att610:
-att610-103k-w|610-103k-w|610bct-103k-w|AT&T 610; 132 column; 103key keyboard:\
-       :co#132:ws#132:\
-       :i1=\E[8;0|\E[?4;5;13;15l\E[13;20l\E[?3;7h\E[12h:tc=att610-103k:
-att615|615mt|AT&T 615; 80 column; 98key keyboard:\
-       :#4=\E[ A:%i=\E[ @:F5=\EOC:F6=\EOD:F7=\EOE:F8=\EOF:\
-       :F9=\EOG:FA=\EOH:FB=\EOI:FC=\EOJ:FD=\ENO:FE=\ENP:\
-       :FF=\ENQ:FG=\ENR:FH=\ENS:FI=\ENT:FJ=\EOP:FK=\EOQ:\
-       :FL=\EOR:FM=\EOS:FN=\EOw:FO=\EOx:FP=\EOy:FQ=\EOm:\
-       :FR=\EOt:FS=\EOu:FT=\EOv:FU=\EOl:FV=\EOq:FW=\EOr:\
-       :FX=\EOs:FY=\EOp:FZ=\EOn:Fa=\EOM:tc=att610:
-att615-w|615-w|615mt-w|AT&T 615; 132 column; 98key keyboard:\
-       :#4=\E[ A:%i=\E[ @:F5=\EOC:F6=\EOD:F7=\EOE:F8=\EOF:\
-       :F9=\EOG:FA=\EOH:FB=\EOI:FC=\EOJ:FD=\ENO:FE=\ENP:\
-       :FF=\ENQ:FG=\ENR:FH=\ENS:FI=\ENT:FJ=\EOP:FK=\EOQ:\
-       :FL=\EOR:FM=\EOS:FN=\EOw:FO=\EOx:FP=\EOy:FQ=\EOm:\
-       :FR=\EOt:FS=\EOu:FT=\EOv:FU=\EOl:FV=\EOq:FW=\EOr:\
-       :FX=\EOs:FY=\EOp:FZ=\EOn:Fa=\EOM:tc=att610-w:
-att615-103k|615-103k|615mt-103k|AT&T 615; 80 column; 103key keyboard:\
-       :#4=\E[ A:%i=\E[ @:tc=att610-103k:
-att615-103k-w|615-103k-w|615mt-103k-w|AT&T 615; 132 column; 103key keyboard:\
-       :#4=\E[ A:%i=\E[ @:tc=att610-103k-w:
-att620|620mtg|AT&T 620; 80 column; 98key keyboard:\
-       :am:es:hs:mi:ms:xn:xo:\
-       :Nl#8:co#80:it#8:lh#2:li#24:lw#8:ws#80:\
-       :#4=\E[ A:%i=\E[ @:AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:\
-       :DO=\E[%dB:F1=\ENq:F2=\ENr:F3=\ENs:F4=\ENt:F5=\EOC:\
-       :F6=\EOD:F7=\EOE:F8=\EOF:F9=\EOG:FA=\EOH:FB=\EOI:\
-       :FC=\EOJ:FD=\ENO:FE=\ENP:FF=\ENQ:FG=\ENR:FH=\ENS:\
-       :FI=\ENT:FJ=\EOP:FK=\EOQ:FL=\EOR:FM=\EOS:FN=\EOw:\
-       :FO=\EOx:FP=\EOy:FQ=\EOm:FR=\EOt:FS=\EOu:FT=\EOv:\
-       :FU=\EOl:FV=\EOq:FW=\EOr:FX=\EOs:FY=\EOp:FZ=\EOn:\
-       :Fa=\EOM:IC=\E[%d@:LE=\E[%dD:LF=\E[2p:LO=\E[p:\
-       :RI=\E[%dC:UP=\E[%dA:\
-       :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\
-       :ae=\E(B\017:al=\E[L:as=\E)0\016:bl=^G:bt=\E[Z:\
-       :cb=\E[1K:cd=\E[J:ce=\E[K:cl=\E[H\E[J:cm=\E[%i%d;%dH:\
-       :cr=^M:cs=\E[%i%d;%dr:dc=\E[P:dl=\E[M:do=\E[B:\
-       :ei=\E[4l:fs=\E8:ho=\E[H:\
-       :i1=\E[8;0|\E[?3;4;5;13;15l\E[13;20l\E[?7h\E[12h:\
-       :i2=\E(B\E)0:im=\E[4h:is=\E[0m\017:k1=\EOc:k2=\EOd:\
-       :k3=\EOe:k4=\EOf:k5=\EOg:k6=\EOh:k7=\EOi:k8=\EOj:\
-       :k9=\ENo:k;=\ENp:kB=\E[Z:kC=\E[2J:kF=\E[S:kR=\E[T:\
-       :kb=^H:kd=\E[B:kh=\E[H:kl=\E[D:kr=\E[C:ku=\E[A:le=^H:\
-       :ll=\E[24H:mb=\E[5m:md=\E[1m:me=\E[m\E(B\017:\
-       :mh=\E[2m:mk=\E[8m:mr=\E[7m:nd=\E[C:nw=\EE:pf=\E[?4i:\
-       :..pn=\E[%p1%d;0;0;0q%p2%\072-16.16s:po=\E[?5i:\
-       :..px=\E[%p1%d;%p2%l%02dq   F%p1%1d           %p2%s:\
-       :r2=\Ec\E[?3l:rc=\E8:\
-       :..sa=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p4%t;5%;%?%p3%p1%|%t;7%;%?%p7%t;8%;m%?%p9%t\016%e\017%;:\
-       :sc=\E7:se=\E[m:sf=\ED:so=\E[7m:sr=\EM:ta=^I:\
-       :ts=\E7\E[25;%i%p1%dx:ue=\E[m:up=\E[A:us=\E[4m:\
-       :vb=\E[?5h\E[?5l:ve=\E[?25h\E[?12l:vi=\E[?25l:\
-       :vs=\E[?12;25h:
-att620-w|620-w|620mtg-w|AT&T 620; 132 column; 98key keyboard:\
-       :co#132:ws#132:\
-       :i1=\E[8;0|\E[?4;5;13;15l\E[13;20l\E[?3;7h\E[12h:tc=att620:
-att620-103k|620-103k|620mtg-103k|AT&T 620; 80 column; 103key keyboard:\
-       :!1=\EOO:!2=\EOP:!3=\EOS:#1=\EOM:%0=\EOt:%1=\EOm:\
-       :%2=\ENi:%3=\EOl:%4=\ENc:%5=\ENh:%6=\EOv:%7=\EOr:\
-       :%8=\ENg:%9=\EOz:%a=\EOL:%b=\ENC:%c=\ENH:%d=\EOR:\
-       :%e=\ENG:%f=\EOZ:%g=\EOT:%h=\EOY:%j=\EOQ:&0=\EOW:\
-       :&1=\EOb:&2=\ENa:&3=\EOy:&4=\EOB:&5=\EOq:&6=\EOo:\
-       :&7=\EOp:&8=\EOs:&9=\ENB:*0=\EOX:*1=\EOU:*2=\END:\
-       :*3=\EON:*4=\ENF:*5=\ENE:*6=\ENI:*7=\ENN:*8=\EOA:\
-       :*9=\EOK:@0=\EOx:@1=\E9:@2=\EOw:@3=\EOV:@4=\EOu:\
-       :@5=\ENd:@6=\EOn:@7=\E0:@8=^M:@9=\EOk:F1@:F2@:F3@:\
-       :F4@:F5@:F6@:F7@:F8@:F9@:FA@:FB@:FC@:FD@:FE@:FF@:FG@:\
-       :FH@:FI@:FJ@:FK@:FL@:FM@:FN@:FO@:FP@:FQ@:FR@:FS@:FT@:\
-       :FU@:FV@:FW@:FX@:FY@:FZ@:Fa@:k9@:k;@:kD=\ENf:kE=\EOa:\
-       :kI=\ENj:kL=\ENe:kM=\ENj:kN=\E[U:kP=\E[V:tc=att620:
-
-att620-103k-w|620-103k-w|620mtg-103k-w|AT&T 620; 132 column; 103key keyboard:\
-       :co#132:ws#132:\
-       :i1=\E[8;0|\E[?4;5;13;15l\E[13;20l\E[?3;7h\E[12h:tc=att620-103k:
-
-# 630 short descriptions without \E
-att630|5630|5630DMD|630MTG|AT&T 630 windowing terminal:\
-       :NP:am:da:db:mi:ms:xo:\
-       :co#80:it#8:li#60:lm#0:\
-       :@8=^M:AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:\
-       :F1=\ENq:F2=\ENr:F3=\ENs:F4=\ENt:F5=\ENu:F6=\ENv:\
-       :F7=\ENw:F8=\ENx:F9=\ENy:FA=\ENz:FB=\EN{:FC=\EN|:\
-       :FD=\EN}:FE=\EN~:IC=\E[%d@:LE=\E[%dD:RI=\E[%dC:\
-       :SF=\E[%dS:SR=\E[%dT:UP=\E[%dA:al=\E[L:bl=^G:bt=\E[Z:\
-       :cb=\E[1K:cd=\E[J:ce=\E[K:cl=\E[H\E[J:cm=\E[%i%d;%dH:\
-       :cr=^M:dc=\E[P:dl=\E[M:do=\E[B:ei=\E[4l:ho=\E[H:\
-       :im=\E[4h:is=\E[m:k9=\ENo:k;=\ENp:kA=\E[L:kB=\E[Z:\
-       :kC=\E[2J:kD=\E[P:kI=\E[@:kL=\E[M:kb=^H:kd=\E[B:\
-       :kh=\E[H:kl=\E[D:kr=\E[C:ku=\E[A:le=^H:me=\E[m:\
-       :mr=\E[7m:nd=\E[C:nw=^M^J:pf=\E[?4i:po=\E[?5i:\
-       :..px=\E[%p1%d;%p2%l%dq%p2%s:r2=\Ec:rc=\E8:\
-       :..sa=\E[0%?%p2%t;4%;%?%p1%p3%|%p4%|%p5%|%t;7%;m:\
-       :sc=\E7:se=\E[m:sf=\ED:so=\E[7m:sr=\EM:ta=^I:ue=\E[m:\
-       :up=\E[A:us=\E[4m:
-
-
-att630-24|5630-24|5630DMD-24|630MTG-24|AT&T 630 windowing terminal 24 lines:\
-       :li#24:\
-       :tc=att630:
-
-# This entry was modified 3/13/90 by JWE.
-# fixes include additions of enacs, correcting rep, and modification
-# of kHOM.  (See comments below)
-# has status line of 80 chars
-# These were commented out: indn=\E[%p1%dS, rin=\E[%p1%dT,
-# the k25 and up keys are used for shifted system Fkeys
-# NOTE: JWE 3/13/90 The 98 key keyboard translation for shift/HOME is 
-# currently the same as khome (unshifted HOME or \E[H).  On the 102, 102+1
-# and 122 key keyboards, the 730's translation is \E[2J.  For consistency
-# kHOM has been commented out.  The user can uncomment kHOM if using the
-# 102, 102+1, or 122 key keyboards
-#       kHOM=\E[2J,
-# (untranslatable capabilities removed to fit entry within 1023 bytes)
-# WARNING: this entry, 1063 bytes long, may core-dump older termcap libraries!
-att730|730MTG|AT&T 730 windowing terminal Version:\
-       :NP:am:da:db:es:hs:mi:ms:xn:xo:\
-       :Nl#24:co#80:it#8:lh#2:li#60:lm#0:lw#8:ws#80:\
-       :#4=\E[ @:%i=\E[ A:AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:\
-       :DO=\E[%dB:F1=\ENq:F2=\ENr:F3=\ENs:F4=\ENt:F5=\ENu:\
-       :F6=\ENv:F7=\ENw:F8=\ENx:F9=\ENy:FA=\ENz:FB=\EN{:\
-       :FC=\EN|:FD=\EN}:FE=\EN~:FF=\EOC:FG=\EOD:FH=\EOE:\
-       :FI=\EOF:FJ=\EOG:FK=\EOH:FL=\EOI:FM=\EOJ:FN=\ENO:\
-       :FO=\ENP:FP=\ENQ:FQ=\ENR:FR=\ENS:FS=\ENT:FT=\EOU:\
-       :FU=\EOV:FV=\EOW:FW=\EOX:FX=\EOY:FY=\EOZ:FZ=\EO[:\
-       :Fa=\EO :Fb=\EO]:Fc=\EO^:IC=\E[%d@:LE=\E[%dD:\
-       :LF=\E[?13h:LO=\E[?13l:RI=\E[%dC:RX=\E[?21l:\
-       :SX=\E[?21h:UP=\E[%dA:ZF=\E#6:\
-       :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\
-       :ae=^O:al=\E[L:as=^N:bl=^G:bt=\E[Z:cb=\E[1K:cd=\E[J:\
-       :ce=\E[K:cl=\E[H\E[J:cm=\E[%i%d;%dH:cr=^M:\
-       :cs=\E[%i%d;%dr:dc=\E[P:dl=\E[M:do=\E[B:eA=\E(B\E)0:\
-       :ei=\E[4l:fs=\E8:ho=\E[H:\
-       :i1=\E[8;0|\E[?3;4;5;13;15l\E[13;20l\E[?7h\E[12h\E(B\E)B:\
-       :i2=\E(B\E)0:im=\E[4h:is=\E[0m\017:k1=\EOc:k2=\EOd:\
-       :k3=\EOe:k4=\EOf:k5=\EOg:k6=\EOh:k7=\EOi:k8=\EOj:\
-       :k9=\ENo:k;=\ENp:kA=\E[L:kB=\E[Z:kC=\E[2J:kF=\E[S:\
-       :kI=\E[@:kR=\E[T:kb=^H:kd=\E[B:kh=\E[H:kl=\E[D:\
-       :kr=\E[C:ku=\E[A:le=^H:mb=\E[5m:md=\E[1m:me=\E[m\017:\
-       :mh=\E[2m:mk=\E[8m:mr=\E[7m:nd=\E[C:nw=\EE:pf=\E[?4i:\
-       ::po=\E[?5i:ps=\E[?19h\E[0i::r2=\Ec\E[?3l:rc=\E8:::\
-       :sc=\E7:se=\E[27m:sf=\ED:so=\E[7m:sr=\EM:ta=^I:\
-       :ts=\E7\E[;%i%p1%dx:ue=\E[24m:up=\E[A:us=\E[4m:\
-       :vb=\E[?5h\E[?5l:ve=\E[?25h\E[?12l:vi=\E[?25l:\
-       :vs=\E[?12;25h::
-
-att730-41|730MTG-41|AT&T 730-41 windowing terminal Version:\
-       :li#41:\
-       :tc=att730:
-
-att730-24|730MTG-24|AT&T 730-24 windowing terminal Version:\
-       :li#24:\
-       :tc=att730:
-
-att730r|730MTGr|AT&T 730 rev video windowing terminal Version:\
-       :i1=\E[8;0|\E[?3;4;13;15l\E[?5h\E[13;20l\E[?7h\E[12h\E(B\E)B:\
-       :vb=\E[?5l\E[?5h:tc=att730:
-
-att730r-41|730MTG-41r|AT&T 730r-41 rev video windowing terminal Version:\
-       :li#41:\
-       :tc=att730r:
-
-att730r-24|730MTGr-24|AT&T 730r-24 rev video windowing terminal Version:\
-       :li#24:\
-       :tc=att730r:
-
-
-# 05-Aug-86:
-# The following Terminfo entry describes functions which are supported by
-# the AT&T 5430/pt505 terminal software version 2 and later.
-#
-# The following represents the screen layout along with the associated
-# bezel buttons for the 5430/pt505 terminal. The "kf" designations do
-# not appear on the screen but are shown to reference the bezel buttons.
-# The "CMD", "MAIL", and "REDRAW" buttons are shown in their approximate
-# position relative to the screen.
-#
-#
-#
-#      +----------------------------------------------------------------+
-#      |                                                                |
-# XXXX | kf0                                                       kf24 | XXXX
-#      |                                                                |
-#      |                                                                |
-# XXXX | kf1                                                       kf23 | XXXX
-#      |                                                                |
-#      |                                                                |
-# XXXX | kf2                                                       kf22 | XXXX
-#      |                                                                |
-#      |                                                                |
-# XXXX | kf3                                                       kf21 | XXXX
-#      |                                                                |
-#      |                                                                |
-# XXXX | kf4                                                       kf20 | XXXX
-#      |                                                                |
-#      |                                                                |
-# XXXX | kf5                                                       kf19 | XXXX
-#      |                                                                |
-#      |                                                                |
-# XXXX | kf6                                                       kf18 | XXXX
-#      |                                                                |
-#      |                                                                |
-# XXXX |                                                                | XXXX
-#      |                                                                |
-#      |                                                                |
-#      +----------------------------------------------------------------+
-#
-#          XXXX  XXXX  XXXX  XXXX  XXXX  XXXX  XXXX  XXXX  XXXX  XXXX
-#
-# Note: XXXX represents the screen buttons
-#                                                          CMD   REDRAW
-#
-#                                                          MAIL
-#
-# Depression of the "CMD" key sends    \E!    (kcmd)
-# Depression of the "MAIL" key sends   \E[26s (kf26)
-# "REDRAW" same as "REFRESH" (krfr)
-#
-# "kf" functions adds carriage return to output string if terminal is in
-# 'new line' mode.
-#
-# The following are functions not covered in the table above:
-#
-#       Set keyboard character (SKC): \EPn1;Pn2w
-#                       Pn1= 0 Back Space key
-#                       Pn1= 1 Break key
-#                       Pn2=   Program char (hex)
-#
-#       Screen Definition (SDF): \E[Pn1;Pn2;Pn3;Pn4;Pn5t
-#                       Pn1=     Window number (1-39)
-#                       Pn2-Pn5= Y;X;Y;X coordinates
-#
-#       Screen Selection (SSL): \E[Pnu
-#                       Pn= Window number
-#
-#       Set Terminal Modes (SM): \E[Pnh
-#                       Pn= 3 Graphics mode
-#                       Pn= > Cursor blink
-#                       Pn= < Enter new line mode
-#                       Pn= = Enter reverse insert/replace mode
-#                       Pn= ? Enter no scroll mode
-#
-#       Reset Terminal Mode (RM): \E[Pnl
-#                       Pn= 3 Exit graphics mode
-#                       Pn= > Exit cursor blink
-#                       Pn= < Exit new line mode
-#                       Pn= = Exit reverse insert/replace mode
-#                       Pn= ? Exit no scroll mode
-#
-#       Screen Status Report (SSR): \E[Pnp
-#                       Pn= 0 Request current window number
-#                       Pn= 1 Request current window dimensions
-#
-#       Device Status Report (DSR): \E[6n    Request cursor position
-#
-#       Call Status Report (CSR): \E[Pnv
-#                       Pn= 0 Call failed
-#                       Pn= 1 Call successful
-#
-#       Transparent Button String (TBS): \E[Pn1;Pn2;Pn3;{string
-#                       Pn1= Button number to be loaded
-#                       Pn2= Character count of "string"
-#                       Pn3= Key mode being loaded:
-#                               0= Unshifted
-#                               1= Shifted
-#                               2= Control
-#                       String= Text string (15 chars max)
-#
-#       Screen Number Report (SNR): \E[Pnp
-#                       Pn= Screen number
-#
-#       Screen Dimension Report (SDR): \E[Pn1;Pn2r
-#                       Pn1= Number of rows available in window
-#                       Pn2= Number of columns available in window
-#
-#       Cursor Position Report (CPR): \E[Pn1;Pn2R
-#                       Pn1= "Y" Position of cousor
-#                       Pn2= "X" Position of cursor
-#
-#       Request Answer Back (RAB): \E[c
-#
-#       Answer Back Response (ABR): \E[?;*;30;VSV
-#                       *=  0 No printer available
-#                       *=  2 Printer available
-#                       V=  Software version number
-#                       SV= Software sub version number
-#
-#       Screen Alingment Aid: \En
-#
-#       Bell (lower pitch): \E[x
-#
-#       Dial Phone Number: \EPdstring\
-#                       string= Phone number to be dialed
-#
-#       Set Phone Labels: \EPpstring\
-#                       string= Label for phone buttons
-#
-#       Set Clock: \EPchour;minute;second\
-#
-#       Position Clock: \EPsY;X\
-#                       Y= "Y" coordinate
-#                       X= "X" coordinate
-#
-#       Delete Clock: \Epr\
-#
-#       Programming The Function Buttons: \EPfPn;string\
-#                       Pn= Button number (00-06, 18-24)
-#                                         (kf00-kf06, kf18-kf24)
-#                       string= Text to sent on button depression
-#
-#       Request For Local Directory Data: \EPp12;\
-#
-#       Local Directory Data to host: \EPp11;LOCAL...DIRECTORY...DATA\
-#
-#      Request for Local Directory Data in print format: \EPp13;\
-#
-#      Enable 'Prt on Line' mode: \022 (DC2)
-#
-#      Disable 'Prt on Line' mode: \024 (DC4)
-#
-att505|pt505|att5430|gs5430|AT&T Personal Terminal 505 or 5430 GETSET terminal:\
-       :am:xo:\
-       :co#80:it#8:li#24:\
-       :&2=\E[27s:@4=\E!:AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:\
-       :DO=\E[%dB:F8=\E[18s:F9=\E[19s:FA=\E[20s:FB=\E[21s:\
-       :FC=\E[22s:FD=\E[23s:FE=\E24s:FG=\E26s:LE=\E[%dD:\
-       :RA=\E[11;1j:RI=\E[%dC:SA=\E[11;0j:UP=\E[%dA:\
-       :ae=\E[10m:al=\E[L:as=\E[11m:bl=^G:cb=\E2K:cd=\E[0J:\
-       :ce=\E[0K:cl=\E[2J\E[H:cm=\E[%d;%dH:cr=^M:dc=\E[P:\
-       :dl=\E[M:do=\E[B:ei=\E[4l:ho=\E[H:\
-       :i1=\EPr\\E[0u\E[2J\E[0;0H\E[0m\E[3l\E[<l\E[4l\E[>l\E[=l\E[?l:\
-       :im=\E[4h:k0=\E[00s:k1=\E[01s:k2=\E[02s:k3=\E[03s:\
-       :k4=\E[04s:k5=\E[05s:k6=\E[06s:kb=^H:kd=\E[B:kl=\E[D:\
-       :kr=\E[C:ku=\E[A:le=\E[D:mb=\E[5m:md=\E[1m:me=\E[0m:\
-       :mr=\E[7m:nd=\E[C:pf=\E[4i:po=\E[5i:r1=\Ec:rc=\E8:\
-       :sc=\E7:se=\E[0m:sf=^J:so=\E[1m:ta=^I:ue=\E[0m:\
-       :up=\E[A:us=\E[4m:ve=\E[>l:vs=\E[>h:
-
-#
-# The following Terminfo entry describes functions which are supported by
-# the AT&T 5430/pt505 terminal software version 1.
-#
-# The following represents the screen layout along with the associated
-# bezel buttons for the 5430/pt505 terminal. The "kf" designations do
-# not appear on the screen but are shown to reference the bezel buttons.
-# The "CMD", "MAIL", and "REDRAW" buttons are shown in their approximate
-# position relative to the screen.
-#
-#
-#
-#      +----------------------------------------------------------------+
-#      |                                                                |
-# XXXX | kf0                                                       kf24 | XXXX
-#      |                                                                |
-#      |                                                                |
-# XXXX | kf1                                                       kf23 | XXXX
-#      |                                                                |
-#      |                                                                |
-# XXXX | kf2                                                       kf22 | XXXX
-#      |                                                                |
-#      |                                                                |
-# XXXX | kf3                                                       kf21 | XXXX
-#      |                                                                |
-#      |                                                                |
-# XXXX | kf4                                                       kf20 | XXXX
-#      |                                                                |
-#      |                                                                |
-# XXXX | kf5                                                       kf19 | XXXX
-#      |                                                                |
-#      |                                                                |
-# XXXX | kf6                                                       kf18 | XXXX
-#      |                                                                |
-#      |                                                                |
-# XXXX |                                                                | XXXX
-#      |                                                                |
-#      |                                                                |
-#      +----------------------------------------------------------------+
-#
-#          XXXX  XXXX  XXXX  XXXX  XXXX  XXXX  XXXX  XXXX  XXXX  XXXX
-#
-# Note: XXXX represents the screen buttons
-#                                                          CMD   REDRAW
-#
-#                                                          MAIL
-#
-#       Depression of the "CMD" key sends    \E!    (kcmd)
-# Depression of the "MAIL" key sends   (note) (kf26)
-# "REDRAW" same as "REFRESH" (krfr)    (note)
-#
-# note: The character string sent by key 'kf26' may be user programmable
-#       to send either \E[16s, or \E[26s.
-#       The character string sent by key 'krfr' may be user programmable
-#       to send either \E[17s, or \E[27s.
-#
-# "kf" functions adds carriage return to output string if terminal is in
-# 'new line' mode.
-#
-# The following are functions not covered in the table above:
-#
-#       Set keyboard character (SKC):
-#
-#               \EPn1;Pn2w
-#
-#                       Pn1= 0 Back Space key
-#                       Pn1= 1 Break key
-#                       Pn2=   Program char (hex)
-#
-#       Screen Definition (SDF):
-#
-#               \E[Pn1;Pn2;Pn3;Pn4;Pn5t
-#
-#                       Pn1=     Window number (1-39)
-#                       Pn2-Pn5= Y;X;Y;X coordinates
-#
-#       Screen Selection (SSL):
-#
-#               \E[Pnu
-#
-#                       Pn= Window number
-#
-#       Set Terminal Modes (SM):
-#
-#               \E[Pnh
-#
-#                       Pn= 3 Graphics mode
-#                       Pn= > Cursor blink
-#                       Pn= < Enter new line mode
-#                       Pn= = Enter reverse insert/replace mode
-#                       Pn= ? Enter no scroll mode
-#
-#       Reset Terminal Mode (RM):
-#
-#               \E[Pnl
-#
-#                       Pn= 3 Exit graphics mode
-#                       Pn= > Exit cursor blink
-#                       Pn= < Exit new line mode
-#                       Pn= = Exit reverse insert/replace mode
-#                       Pn= ? Exit no scroll mode
-#
-#       Screen Status Report (SSR):
-#
-#               \E[Pnp
-#
-#                       Pn= 0 Request current window number
-#                       Pn= 1 Request current window dimensions
-#
-#       Device Status Report (DSR):
-#
-#               \E[6n    Request cursor position
-#
-#       Call Status Report (CSR):
-#
-#               \E[Pnv
-#
-#                       Pn= 0 Call failed
-#                       Pn= 1 Call successful
-#
-#       Transparent Button String (TBS):
-#
-#               \E[Pn1;Pn2;Pn3;{string
-#
-#                       Pn1= Button number to be loaded
-#                       Pn2= Character count of "string"
-#                       Pn3= Key mode being loaded:
-#                               0= Unshifted
-#                               1= Shifted
-#                               2= Control
-#                       String= Text string (15 chars max)
-#
-#       Screen Number Report (SNR):
-#
-#               \E[Pnp
-#
-#                       Pn= Screen number
-#
-#       Screen Dimension Report (SDR):
-#
-#               \E[Pn1;Pn2r
-#
-#                       Pn1= Number of rows available in window
-#                       Pn2= Number of columns available in window
-#
-#       Cursor Position Report (CPR):
-#
-#               \E[Pn1;Pn2R
-#
-#                       Pn1= "Y" Position of cousor
-#                       Pn2= "X" Position of cursor
-#
-#       Request Answer Back (RAB):
-#
-#               \E[c
-#
-#       Answer Back Response (ABR):
-#
-#               \E[?;0;30;VSV
-#
-#                       V=  Software version number
-#                       SV= Software sub version number
-#
-#       Screen Alignment Aid:
-#
-#               \En
-#
-#       Bell (lower pitch):
-#
-#               \E[x
-#
-#       Dial Phone Number:
-#
-#               \EPdstring\
-#
-#                       string= Phone number to be dialed
-#
-#       Set Phone Labels:
-#
-#               \EPpstring\
-#
-#                       string= Label for phone buttons
-#
-#       Set Clock:
-#
-#               \EPchour;minute;second\
-#
-#       Position Clock:
-#
-#               \EPsY;X\
-#
-#                       Y= "Y" coordinate
-#                       X= "X" coordinate
-#
-#       Delete Clock:
-#
-#               \Epr\
-#
-#       Programming The Function Buttons:
-#
-#               \EPfPn;string\
-#
-#                       Pn= Button number (00-06, 18-24)
-#                                         (kf00-kf06, kf18-kf24)
-#
-#                       string= Text to sent on button depression
-#
-#
-#
-#                                                      05-Aug-86
-#
-# 
-att505-24|pt505-24|gs5430-24| AT&T PT505 or 5430 GETSET version 1 24 lines:\
-       :am:xo:\
-       :co#80:it#8:li#24:\
-       :&2=\E[27s:@4=\E!:AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:\
-       :DO=\E[%dB:F8=\E[18s:F9=\E[19s:FA=\E[20s:FB=\E[21s:\
-       :FC=\E[22s:FD=\E[23s:FE=\E24s:FG=\E26s:LE=\E[%dD:\
-       :RI=\E[%dC:UP=\E[%dA:ae=\E[10m:al=\E[L:as=\E[11m:\
-       :bl=^G:cb=\E2K:cd=\E[0J:ce=\E[0K:cl=\E[2J\E[H:\
-       :cm=\E[%d;%dH:cr=^M:dc=\E[P:dl=\E[M:do=\E[B:ei=\E[4l:\
-       :ho=\E[H:\
-       :i1=\EPr\\E[0u\E[2J\E[0;0H\E[0m\E[3l\E[<l\E[4l\E[>l\E[=l\E[?l:\
-       :im=\E[4h:k0=\E[00s:k1=\E[01s:k2=\E[02s:k3=\E[03s:\
-       :k4=\E[04s:k5=\E[05s:k6=\E[06s:kb=^H:kd=\E[B:kl=\E[D:\
-       :kr=\E[C:ku=\E[A:le=\E[D:mb=\E[5m:md=\E[1m:me=\E[0m:\
-       :mr=\E[7m:nd=\E[C:r1=\Ec:se=\E[0m:sf=^J:so=\E[1m:\
-       :ta=^I:ue=\E[0m:up=\E[A:us=\E[4m:ve=\E[>l:vs=\E[>h:
-att505-22|pt505-22|gs5430-22| AT&T PT505 or 5430 GETSET version 1 22 lines:\
-       :li#22:\
-       :tc=att505-24:
-#
-# -------------------- TERMINFO FILE CAN BE SPLIT HERE -----------------------
-# This cut mark helps make life less painful for people running ncurses tic
-# on machines with relatively little RAM.  The file can be broken in half here
-# cleanly and compiled in sections -- no `use' references cross this cut
-# going forward.
-#
-
-#### Ampex (Dialogue)
-#
-# Yes, these are the same people who are better-known for making audio- and
-# videotape.  I'm told they are located in Redwood City, CA.
-
-# From: <cbosg!ucbvax!SRC:george> Fri Sep 11 22:38:32 1981
-# (ampex80: mapped ":pt:" to default tabs; some capabilities merged in from
-# SCO's entry -- esr)
-ampex80|a80|d80|dialogue|dialogue80|ampex dialogue 80:\
-       :am:bs:bw:pt:ul:\
-       :co#80:li#24:\
-       :al=\EE:bl=^G:bt=\EI:cd=\Ey:ce=\Et:cl=\E*:\
-       :cm=\E=%+ %+ :cr=^M:ct=\E3:dc=\EW:dl=\ER:do=^J:ei=:\
-       :ic=\EQ:im=:is=\EA:le=^H:nd=^L:se=\Ek:sf=^J:so=\Ej:\
-       :st=\E1:ta=^I:ue=\Em:up=^K:us=\El:
-# This entry was from somebody anonymous, Tue Aug  9 20:11:37 1983, who wrote:
-ampex175|ampex d175:\
-       :am:\
-       :co#80:li#24:\
-       :al=\EE:bl=^G:cd=\Ey:ce=\Et:cl=\E+:cm=\E=%+ %+ :\
-       :cr=^M:dc=\EW:dl=\ER:do=^J:ei=:ho=^^:ic=\EQ:im=:\
-       :is=\EX\EA\EF:kA=\EE:kD=\EW:kI=\EQ:kL=\ER:kd=^J:\
-       :kh=^^:kl=^H:kr=^L:ku=^K:le=^H:ll=^^^K:nd=^L:se=\Ek:\
-       :sf=^J:so=\Ej:te=\EF:ti=\EN:ue=\Em:up=^K:us=\El:
-# No backspace key in the main QWERTY cluster. Fortunately, it has a
-# NEWLINE/PAGE key just above RETURN that sends a strange single-character
-# code.  Given a suitable Unix (one that lets you set an echo-erase-as-BS-SP-BS
-# mode), this key can be used as the erase key; I find I like this. Because
-# some people and some systems may not, there is another termcap ("ampex175")
-# that suppresses this little eccentricity by omitting the relevant capability.
-ampex175-b|ampex d175 using left arrow for erase:\
-       :kb=^_:tc=ampex175:
-# From: Richard Bascove <atd!dsd!rcb@ucbvax.berkeley.edu>
-# (ampex210: removed obsolete ":kn#10:"; mapped ":pt:" to default tabs -- esr)
-ampex210|a210|ampex a210:\
-       :am:bs:hs:pt:xn:\
-       :co#80:li#24:sg#1:ug#1:\
-       :al=\EE:bt=\EI:cd=\Ey:ce=\Et:cl=\E*:cm=\E=%+ %+ :\
-       :dc=\EW:dl=\ER:ei=:fs=\E.2:ho=^^:ic=\EQ:\
-       :if=/usr/share/tabset/std:im=:\
-       :is=\EC\Eu\E'\E(\El\EA\E%\E{\E.2\EG0\Ed\En:k0=^A0\r:\
-       :k1=^A1\r:k2=^A2\r:k3=^A3\r:k4=^A4\r:k5=^A5\r:\
-       :k6=^A6\r:k7=^A7\r:k8=^A8\r:k9=^A9\r:kd=^V:kh=^^:\
-       :kl=^H:kr=^L:ku=^K:nd=^L:se=\EG0:so=\EG4:\
-       :ts=\E.0\Eg\E}\Ef:ue=\EG0:up=^K:us=\EG8:\
-       :vb=\EU\EX\EU\EX\EU\EX\EU\EX:
-ampex219|ampex-219|amp219|Ampex with Automargins:\
-       :hs:xn:\
-       :co#80:it#8:li#24:\
-       :bl=^G:bt=\E[Z:cd=\E[J:ce=\E[K:cl=\E[;H\E[2J:\
-       :cm=\E[%i%d;%dH:cr=^M:cs=%i\E[%2;%2r:do=\E[B:ho=\E[H:\
-       :is=\E>\E[?1l\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h:\
-       :k0=\E[21~:k1=\E[7~:k2=\E[8~:k3=\E[9~:k4=\E[10~:\
-       :k5=\E[11~:k6=\E[17~:k7=\E[18~:k8=\E[19~:k9=\E[20~:\
-       :kd=\E[B:ke=\E>:kh=\E[H:kl=\E[D:kr=\E[C:ks=\E=:\
-       :ku=\E[A:le=^H:mb=\E[5m:md=\E[1m:me=\E[0m:mh=\E[1m:\
-       :mr=\E[7m:nd=\E[C:se=\E[0m:sf=^J:so=\E[7m:sr=\EM:\
-       :ta=^I:ue=\E[0m:up=\E[A:us=\E[4m:
-ampex219w|ampex-219w|amp219w|Ampex 132 cols:\
-       :co#132:li#24:\
-       :bl=^G:cr=^M:do=^J:\
-       :is=\E>\E[?3h\E[?4l\E[?5l\E[?7h\E[?8h:sf=^J:\
-       :vs=\E[?3h:tc=ampex219:
-ampex232|ampex-232|Ampex Model 232:\
-       :am:\
-       :co#80:li#24:sg#1:ug#1:\
-       :al=5*\EE:bt=\EI:cd=\EY:ce=\ET:cl=\E+:cm=\E=%+ %+ :\
-       :dc=\EW:dl=5*\ER:do=^V:ei=:ic=\EQ:\
-       :if=/usr/lib/tabset/ampex:im=:is=\Eg\El:k0=^A@\r:\
-       :k1=^AA\r:k2=^AB\r:k3=^AC\r:k4=^AD\r:k5=^AE\r:\
-       :k6=^AF\r:k7=^AG\r:k8=^AH\r:k9=^AI\r:kb=^H:kd=^V:\
-       :kh=^^:kl=^H:kr=^L:ku=^K:le=^H:nd=^L:se=\EG0:so=\EG4:\
-       :ta=^I:ue=\EG0:up=^K:us=\EG8:\
-       :vb=\Eb\200\200\200\200\200\200\200\200\200\200\200\200\200\200\Ed:\
-       :ve=\E.4:vi=\E.0:
-ampex232w|Ampex Model 232 / 132 columns:\
-       :co#132:li#24:\
-       :if=/usr/lib/tabset/amp-132:is=\E\034Eg\El:tc=ampex232:
-
-#### Ann Arbor (aa)
-#
-
-# Originally from Mike O'Brien@Rand and Howard Katseff at Bell Labs.
-# Highly modified 6/22 by Mike O'Brien.
-# split out into several for the various screen sizes by dave-yost@rand
-# Modifications made 3/82 by Mark Horton
-# Modified by Tom Quarles at UCB for greater efficiency and more diversity
-# status line moved to top of screen, :vb: removed 5/82
-# Some unknown person at SCO then hacked the init strings to make them more
-# efficient.
-#
-# assumes the following setup:
-#   A menu: 0000 1010  0001 0000
-#   B menu: 9600  0100 1000  0000 0000  1000 0000  17  19
-#   C menu: 56   66   0    0    9600  0110 1100
-#   D menu: 0110 1001   1   0
-#
-#      Briefly, the settings are for the following modes:
-#         (values are for bit set/clear with * indicating our preference
-#          and the value used to test these termcaps)
-#      Note that many of these settings are irelevent to the termcap
-#      and are just set to the default mode of the terminal as shipped
-#      by the factory.
-#
-# A menu: 0000 1010  0001 0000
-#      Block/underline cursor*
-#      blinking/nonblinking cursor*
-#      key click/no key click*
-#      bell/no bell at column 72*
-#
-#      key pad is cursor control*/key pad is numeric
-#      return and line feed/return for <cr> key *
-#      repeat after .5 sec*/no repeat
-#      repeat at 25/15 chars per sec. *
-#
-#      hold data until pause pressed/process data unless pause pressed*
-#      slow scroll/no slow scroll*
-#      Hold in area/don't hold in area*
-#      functions keys have default*/function keys disabled on powerup
-#
-#      show/don't show position of cursor during page transmit*
-#      unused
-#      unused
-#      unused
-#
-# B menu: 9600  0100 1000  0000 0000  1000 0000  17  19
-#      Baud rate (9600*)
-#
-#      2 bits of parity - 00=odd,01=even*,10=space,11=mark
-#      1 stop bit*/2 stop bits
-#      parity error detection off*/on
-#
-#      keyboard local/on line*
-#      half/full duplex*
-#      disable/do not disable keyboard after data transmission*
-#
-#      transmit entire page/stop transmission at cursor*
-#      transfer/do not transfer protected characters*
-#      transmit all characters/transmit only selected characters*
-#      transmit all selected areas/transmit only 1 selected area*
-#
-#      transmit/do not transmit line seperators to host*
-#      transmit/do not transmit page tab stops tabs to host*
-#      transmit/do not transmit column tab stop tabs to host*
-#      transmit/do not transmit graphics control (underline,inverse..)*
-#
-#      enable*/disable auto XON/XOFF control
-#      require/do not require receipt of a DC1 from host after each LF*
-#      pause key acts as a meta key/pause key is pause*
-#      unused
-#
-#      unused
-#      unused
-#      unused
-#      unused
-#
-#      XON character (17*)
-#      XOFF character (19*)
-#
-# C menu: 56   66   0    0    9600  0110 1100
-#      number of lines to print data on (printer) (56*)
-#
-#      number of lines on a sheet of paper (printer) (66*)
-#
-#      left margin (printer) (0*)
-#
-#      number of pad chars on new line to printer (0*)
-#
-#      printer baud rate (9600*)
-#
-#      printer parity: 00=odd,01=even*,10=space,11=mark
-#      printer stop bits: 2*/1
-#      print/do not print guarded areas*
-#
-#      new line is: 01=LF,10=CR,11=CRLF*
-#      unused
-#      unused
-#
-# D menu: 0110 1001   1   0
-#      LF is newline/LF is down one line, same column*
-#      wrap to preceeding line if move left from col 1*/don't wrap
-#      wrap to next line if move right from col 80*/don't wrap
-#      backspace is/is not destructive*
-#
-#      display*/ignore DEL character
-#      display will not/will scroll*
-#      page/column tab stops*
-#      erase everything*/erase unprotected only
-#
-#      editing extent: 0=display,1=line*,2=field,3=area
-#
-#      unused
-#
-
-annarbor|4080|ann arbor 4080:\
-       :am:\
-       :co#80:li#40:\
-       :bl=^G:cl=\014:\
-       :..cm=\017%p2%{10}%/%{16}%*%p2%{10}%m%+%c%p1%?%p1%{19}%>%t%{12}%+%;%'@'%+%c:\
-       :cr=^M:ct=^^P^P:do=^J:ho=^K:kb=^^:kd=^J:kh=^K:kl=^H:\
-       :kr=^_:ku=^N:le=^H:nd=^_:sf=^J:st=^]^P1:ta=^I:up=^N:
-
-# If you're using the GNU termcap library, add
-#      :cS=\E[%d;%d;%d;%dp:
-# to these capabilities.  This is the nonstandard GNU termcap scrolling
-# capability, arguments are:
-#   1. Total number of lines on the screen.
-#   2. Number of lines above desired scroll region.
-#   3. Number of lines below (outside of) desired scroll region.
-#   4. Total number of lines on the screen, the same as the first parameter.
-# The generic Ann Arbor entry is the only one that uses this.
-aaa+unk|aaa-unk|ann arbor ambassador (internal - don't use this directly):\
-       :5i:am:km:mi:xo:\
-       :co#80:it#8:\
-       :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:F1=\EOK:\
-       :F2=\EOL:F3=\EOM:F4=\EON:F5=\EOO:F6=\EOP:F7=\EOQ:\
-       :F8=\EOR:F9=\EOS:FA=\EOT:FB=\EOU:FC=\EOV:FD=\EOW:\
-       :FE=\EOX:IC=\E[%d@:LE=\E[%dD:RI=\E[%dC:UP=\E[%dA:\
-       :al=\E[L:bl=^G:bt=\E[Z:cd=\E[J:ce=\E[K:ch=\E[%+^AG:\
-       :cl=\E[H\E[J:cm=\E[%i%d;%dH:cr=^M:ct=\E[2g:\
-       :cv=\E[%+^Ad:dc=\E[P:dl=\E[M:do=^K:ei=:ho=\E[H:\
-       :i1=\E[m\E7\E[H\E9\E8:i2=\E[1Q\E[>20;30l\EP`+x~M\E\\:\
-       :ic=\E[@:im=:k1=\EOA:k2=\EOB:k3=\EOC:k4=\EOD:k5=\EOE:\
-       :k6=\EOF:k7=\EOG:k8=\EOH:k9=\EOI:k;=\EOJ:kA=\E[L:\
-       :kB=\E[Z:kC=\E[J:kD=\E[P:kI=\E[@:kL=\E[M:kM=\E6:\
-       :kb=^H:kd=\E[B:\
-       :ke=\EP`>y~[[J`8xy~[[A`4xy~[[D`6xy~[[C`2xy~[[B\E\\:\
-       :kh=\E[H:kl=\E[D:kr=\E[C:\
-       :ks=\EP`>z~[[J`8xz~[[A`4xz~[[D`6xz~[[C`2xz~[[B\E\\:\
-       :ku=\E[A:le=^H:mb=\E[5m:md=\E[1m:me=\E[0m:mk=\E[8m:\
-       :mm=\E[>52h:mo=\E[>52l:mr=\E[7m:nd=\E[C:pO=\E[%dv:\
-       :pf=^C:po=\E[v:ps=\E[0i:rc=\E8:\
-       :..rp=%p1%c\E[%p2%{1}%-%db:\
-       :..sa=\E[%?%p1%t7;%;%?%p2%t4;%;%?%p3%t7;%;%?%p4%t5;%;%?%p6%t1;%;m:\
-       :sc=\E7:se=\E[m:sf=^K:so=\E[7m:st=\EH:ta=^I:ue=\E[m:\
-       :up=\E[A:us=\E[4m:
-
-aaa+rv:\
-       :i1=\E[7m\E7\E[H\E9\E8:mb=\E[5;7m:md=\E[1;7m:\
-       :me=\E[7m\016:mk=\E[7;8m:mr=\E[m:r1=\E[H\E[7m\E[J:\
-       :..sa=\E[%?%p1%p3%|%!%t7;%;%?%p2%t4;%;%?%p4%t5;%;%?%p6%t1;%;%?%p7%t8;%;m:\
-       :se=\E[7m:so=\E[m:ue=\E[7m:us=\E[4;7m:
-# Ambassador with the DEC option, for partial vt100 compatibility.
-aaa+dec:\
-       :ac=aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz||}}:\
-       :ae=^N:as=^O:cs=\E[%i%d;%dr:eA=\E(0:\
-       :..sa=\E[%?%p1%p3%|%!%t7;%;%?%p2%t4;%;%?%p4%t5;%;%?%p6%t1;%;%?%p7%t8;%;m%?%p9%t\017%e\016%;:
-aaa-18|ann arbor ambassador/18 lines:\
-       :li#18:\
-       :is=\E7\E[60;0;0;18p\E8:te=\E[60;0;0;18p\E[60;1H\E[K:\
-       :ti=\E[18;0;0;18p:tc=aaa+unk:
-aaa-18-rv|ann arbor ambassador/18 lines+reverse video:\
-       :tc=aaa+rv:tc=aaa-18:
-aaa-20|ann arbor ambassador/20 lines:\
-       :li#20:\
-       :is=\E7\E[60;0;0;20p\E8:te=\E[60;0;0;20p\E[60;1H\E[K:\
-       :ti=\E[20;0;0;20p:tc=aaa+unk:
-aaa-22|ann arbor ambassador/22 lines:\
-       :li#22:\
-       :is=\E7\E[60;0;0;22p\E8:te=\E[60;0;0;22p\E[60;1H\E[K:\
-       :ti=\E[22;0;0;22p:tc=aaa+unk:
-aaa-24|ann arbor ambassador/24 lines:\
-       :li#24:\
-       :is=\E7\E[60;0;0;24p\E8:te=\E[60;0;0;24p\E[60;1H\E[K:\
-       :ti=\E[24;0;0;24p:tc=aaa+unk:
-aaa-24-rv|ann arbor ambassador/24 lines+reverse video:\
-       :tc=aaa+rv:tc=aaa-24:
-aaa-26|ann arbor ambassador/26 lines:\
-       :li#26:\
-       :is=\E7\E[60;0;0;26p\E8:te=\E[60;0;0;26p\E[26;1H\E[K:\
-       :ti=\E[H\E[J\E[26;0;0;26p:tc=aaa+unk:
-aaa-28|ann arbor ambassador/28 lines:\
-       :li#28:\
-       :is=\E7\E[60;0;0;28p\E8:te=\E[60;0;0;28p\E[28;1H\E[K:\
-       :ti=\E[H\E[J\E[28;0;0;28p:tc=aaa+unk:
-aaa-30-s|aaa-s|ann arbor ambassador/30 lines w/status:\
-       :es:hs:\
-       :li#29:\
-       :ds=\E7\E[60;0;0;30p\E[1;1H\E[K\E[H\E8\r\n\E[K:\
-       :fs=\E[>51l:is=\r\n\E[A\E7\E[60;1;0;30p\E8:\
-       :te=\E[60;1;0;30p\E[29;1H\E[K:\
-       :ti=\E[H\E[J\E[30;1;0;30p\E[30;1H\E[K:\
-       :ts=\E[>51h\E[1;%p1%dH\E[2K:tc=aaa+unk:
-aaa-30-s-rv|aaa-s-rv|ann arbor ambassador/30 lines+status line+reverse video:\
-       :tc=aaa+rv:tc=aaa-30-s:
-aaa-s-ctxt|aaa-30-s-ctxt|ann arbor ambassador/30 lines+status line+save context:\
-       :te=\E[60;1;0;30p\E[59;1H\E[K:\
-       :ti=\E[30;1H\E[K\E[30;1;0;30p:tc=aaa-30-s:
-aaa-s-rv-ctxt|aaa-30-s-rv-ct|aaa-30-srvctxt|ann arbor ambassador/30 lines; status line; saving context:\
-       :te=\E[60;1;0;30p\E[59;1H\E[K:\
-       :ti=\E[30;1H\E[K\E[30;1;0;30p:tc=aaa-30-s-rv:
-aaa|aaa-30|ambas|ambassador|ann arbor ambassador/30 lines:\
-       :li#30:\
-       :is=\E7\E[60;0;0;30p\E8:te=\E[60;0;0;30p\E[30;1H\E[K:\
-       :ti=\E[H\E[J\E[30;0;0;30p:tc=aaa+unk:
-aaa-30-rv|aaa-rv|ann arbor ambassador/30 lines in reverse video:\
-       :tc=aaa+rv:tc=aaa-30:
-aaa-30-ctxt|aaa-ctxt|ann arbor ambassador/30 lines; saving context:\
-       :te=\E[60;0;0;30p\E[60;1H\E[K:ti=\E[30;0;0;30p:tc=aaa-30:
-aaa-30-rv-ctxt|aaa-rv-ctxt|ann arbor ambassador/30 lines; saving context:\
-       :te=\E[60;0;0;30p\E[60;1H\E[K:ti=\E[30;0;0;30p:tc=aaa+rv:tc=aaa-30:
-aaa-36|ann arbor ambassador/36 lines:\
-       :li#36:\
-       :is=\E7\E[60;0;0;36p\E8:te=\E[60;0;0;36p\E[36;1H\E[K:\
-       :ti=\E[H\E[J\E[36;0;0;36p:tc=aaa+unk:
-aaa-36-rv|ann arbor ambassador/36 lines+reverse video:\
-       :tc=aaa+rv:tc=aaa-36:
-aaa-40|ann arbor ambassador/40 lines:\
-       :li#40:\
-       :is=\E7\E[60;0;0;40p\E8:te=\E[60;0;0;40p\E[40;1H\E[K:\
-       :ti=\E[H\E[J\E[40;0;0;40p:tc=aaa+unk:
-aaa-40-rv|ann arbor ambassador/40 lines+reverse video:\
-       :tc=aaa+rv:tc=aaa-40:
-aaa-48|ann arbor ambassador/48 lines:\
-       :li#48:\
-       :is=\E7\E[60;0;0;48p\E8:te=\E[60;0;0;48p\E[48;1H\E[K:\
-       :ti=\E[H\E[J\E[48;0;0;48p:tc=aaa+unk:
-aaa-48-rv|ann arbor ambassador/48 lines+reverse video:\
-       :tc=aaa+rv:tc=aaa-48:
-aaa-60-s|ann arbor ambassador/59 lines plus status line:\
-       :es:hs:\
-       :li#59:\
-       :ds=\E7\E[60;0;0;60p\E[1;1H\E[K\E[H\E8\r\n\E[K:\
-       :fs=\E[>51l:is=\r\n\E[A\E7\E[60;1;0;60p\E8:\
-       :ts=\E[>51h\E[1;%p1%dH\E[2K:tc=aaa+unk:
-aaa-60-s-rv|ann arbor ambassador/59 lines+status line+reverse video:\
-       :tc=aaa+rv:tc=aaa-60-s:
-aaa-60-s-rv-dec|ann arbor ambassador/dec mode+59 lines+status line+rev video:\
-       :tc=aaa+dec:tc=aaa+rv:tc=aaa-60-s:
-aaa-60|ann arbor ambassador/60 lines:\
-       :li#60:\
-       :is=\E7\E[60;0;0;60p\E[1Q\E[m\E[>20;30l\E8:tc=aaa+unk:
-aaa-60-rv|ann arbor ambassador/60 lines+reverse video:\
-       :tc=aaa+rv:tc=aaa-60:
-aaa-db|ann arbor ambassador 30/destructive backspace:\
-       :i2=\E[1Q\E[m\E[>20l\E[>30h:le=\E[D:tc=aaa-30:
-
-guru|guru-33|guru+unk|ann arbor guru/33 lines 80 cols:\
-       :li#33:\
-       :i2=\E[>59l:is=\E7\E[255;0;0;33;80;80p\E8\E[J:\
-       :te=\E[255p\E[255;1H\E[K:ti=\E[33p:vb=\E[>59h\E[>59l:tc=aaa+unk:
-guru+rv|guru changes for reverse video:\
-       :i2=\E[>59h:vb=\E[>59l\E[>59h:
-guru-rv|guru-33-rv|ann arbor guru/33 lines+reverse video:\
-       :tc=guru+rv:tc=guru-33:
-guru+s|changes for status line:\
-       :es:hs:\
-       :ds=\E7\E[;0p\E[1;1H\E[K\E[H\E8\r\n\E[K:fs=\E[>51l:\
-       :te=\E[255;1p\E[255;1H\E[K:\
-       :ts=\E[>51h\E[1;%p1%dH\E[2K:
-guru-nctxt:\
-       :ti=\E[H\E[J\E[33p\E[255;1H\E[K:tc=guru:
-guru-s|guru-33-s|ann arbor guru/33 lines w/status line:\
-       :li#32:\
-       :is=\r\n\E[A\E7\E[255;1;0;33;80;80p\E8\E[J:\
-       :ti=\E[33;1p\E[255;1H\E[K:tc=guru+s:tc=guru+unk:
-guru-24:\
-       :co#80:li#24:\
-       :is=\E7\E[255;0;0;24;80;80p\E8\E[J:ti=\E[24p:tc=guru+unk:
-guru-44:\
-       :co#97:li#44:\
-       :is=\E7\E[255;0;0;44;97;100p\E8\E[J:ti=\E[44p:tc=guru+unk:
-guru-44-s|ann arbor guru/44 lines w/status line:\
-       :li#43:\
-       :is=\r\n\E[A\E7\E[255;1;0;44;80;80p\E8\E[J:\
-       :ti=\E[44;1p\E[255;1H\E[K:tc=guru+s:tc=guru+unk:
-guru-76|guru with 76 lines by 89 cols:\
-       :co#89:li#76:\
-       :is=\E7\E[255;0;0;76;89;100p\E8\E[J:ti=\E[76p:tc=guru+unk:
-guru-76-s|ann arbor guru/76 lines w/status line:\
-       :co#89:li#75:\
-       :is=\r\n\E[A\E7\E[255;1;0;76;89;100p\E8\E[J:\
-       :ti=\E[76;1p\E[255;1H\E[K:tc=guru+s:tc=guru+unk:
-guru-76-lp|guru-lp|guru with page bigger than line printer:\
-       :co#134:li#76:\
-       :is=\E7\E[255;0;0;76;134;134p\E8\E[J:ti=\E[76p:tc=guru+unk:
-guru-76-w|guru 76 lines by 178 cols:\
-       :co#178:li#76:\
-       :is=\E7\E[255;0;0;76;178;178p\E8\E[J:ti=\E[76p:tc=guru+unk:
-guru-76-w-s|ann arbor guru/76 lines w/status line:\
-       :co#178:li#75:\
-       :is=\r\n\E[A\E7\E[255;1;0;76;178;178p\E8\E[J:\
-       :ti=\E[76;1p\E[255;1H\E[K:tc=guru+s:tc=guru+unk:
-guru-76-wm|guru 76 lines by 178 cols with 255 cols memory:\
-       :co#178:li#76:\
-       :is=\E7\E[255;0;0;76;178;255p\E8\E[J:ti=\E[76p:tc=guru+unk:
-aaa-rv-unk:\
-       :Nl#0:lh#0:lw#0:\
-       :i1=\E[7m\E7\E[H\E9\E8:mb=\E[5;7m:md=\E[1;7m:\
-       :me=\E[7m:mk=\E[7;8m:mr=\E[m:r1=\E[H\E[7m\E[J:\
-       :..sa=\E[%?%p1%!%t7;%;%?%p2%t4;%;%?%p3%t7;%;%?%p4%t5;%;%?%p6%t1;%;%?%p7%t8;%;m:\
-       :se=\E[7m:so=\E[m:ue=\E[7m:us=\E[4;7m:
-
-#### Applied Digital Data Systems (adds)
-#
-# ADDS itself is long gone.  ADDS was bought by NCR, and the same group made
-# ADDS and NCR terminals.  When AT&T and NCR merged, the engineering for
-# terminals was merged again.  Then AT&T sold the terminal business to
-# SunRiver.  The engineers from Teletype, AT&T terminals, ADDS,
-# and NCR (who are still there) are at:
-#
-#      SunRiver Data Systems
-#      100 Marcus Boulevard
-#      Hauppauge, NY 117883-762
-#      Vox: (800)-231-5445
-#      Fax: (516)-342-7378
-#
-# Their voice mail describes the place as "SunRiver (formerly ADDS)". 
-
-# Regent: lowest common denominator, works on all regents.
-# (regent: renamed ":bc:" to ":le:" -- esr)
-regent|Adds Regent Series:\
-       :am:bs:\
-       :co#80:li#24:\
-       :bl=^G:cl=^L:cr=^M:do=^J:ho=\EY  :le=^U:ll=^A:nd=^F:\
-       :sf=^J:up=^Z:
-# Regent 100 has a bug where if computer sends escape when user is holding
-# down shift key it gets confused, so we avoid escape.
-regent100|Adds Regent 100:\
-       :sg#1:ug#1:\
-       :bl=^G:cm=\013%+ %B\020%.:k0=^B1\r:k1=^B2\r:k2=^B3\r:\
-       :k3=^B4\r:k4=^B5\r:k5=^B6\r:k6=^B7\r:k7=^B8\r:l0=F1:\
-       :l1=F2:l2=F3:l3=F4:l4=F5:l5=F6:l6=F7:l7=F8:se=\E0@:\
-       :so=\E0P:ue=\E0@:us=\E0`:tc=regent:
-regent20|Adds Regent 20:\
-       :bl=^G:cd=\Ek:ce=\EK:cm=\EY%+ %+ :tc=regent:
-regent25|Adds Regent 25:\
-       :bl=^G:kd=^J:kh=^A:kl=^U:kr=^F:ku=^Z:tc=regent20:
-regent40|Adds Regent 40:\
-       :sg#1:ug#1:\
-       :al=\EM:bl=^G:dl=\El:k0=^B1\r:k1=^B2\r:k2=^B3\r:\
-       :k3=^B4\r:k4=^B5\r:k5=^B6\r:k6=^B7\r:k7=^B8\r:l0=F1:\
-       :l1=F2:l2=F3:l3=F4:l4=F5:l5=F6:l6=F7:l7=F8:se=\E0@:\
-       :so=\E0P:ue=\E0@:us=\E0`:tc=regent25:
-regent40+|Adds Regent 40+:\
-       :is=\EB:tc=regent40:
-# (regent60: removed obsolete ":ko=dc,im,ei:" -- esr)
-regent60|regent200|Adds Regent 60:\
-       :dc=\EE:ei=\EF:im=\EF:is=\EV\EB:kD=\EE:kI=\EF:kM=\EF:\
-       :se=\ER\E0@\EV:so=\ER\E0P\EV:tc=regent40+:
-regent60na|regent 60 w/no arrow keys:\
-       :kd@:kl@:kr@:ku@:tc=regent60:
-# From: <edward@onyx.berkeley.edu> Thu Jul  9 09:27:33 1981
-# (viewpoint: added kcuf1, kf* and dl1 capabilities -- esr)
-viewpoint|addsviewpoint|adds viewpoint:\
-       :am:bs:\
-       :co#80:li#24:\
-       :bl=^G:cd=\Ek:ce=\EK:cl=^L:cm=\EY%+ %+ :cr=^M:dl=\El:\
-       :do=^J:is=\017\E0`:k0=^B1:k2=^B2:k3=^B!:k4=^B":\
-       :k5=^B#:kd=^J:kh=^A:kl=^U:kr=^F:ku=^Z:le=^H:ll=^A:\
-       :nd=^F:se=^O:sf=^J:so=^N:ue=^O:up=^Z:us=^N:\
-       :ve=\017\E0`:vs=\017\E0P:
-screwpoint|adds viewpoint with ^O bug:\
-       :am:bs:\
-       :Nl#0:co#80:lh#0:li#24:lw#0:\
-       :bl=^G:cd=\Ek:ce=\EK:cl=\014:cm=\EY%+ %+ :cr=^M:\
-       :dl=\El:do=^J:is=^G:kd=^J:kh=^A:kl=^U:kr=^F:ku=^Z:\
-       :le=^H:ll=^A:nd=^F:sf=^J:up=^Z:
-fviewpoint|flaky adds viewpoint with ^O bug:\
-       :am:bs:\
-       :co#80:li#24:\
-       :bl=^G:cd=\Ek:ce=\EK:cl=\014:cm=\EY%+ %+ :cr=^M:\
-       :dl=\El:do=^J:is=^G:kd=^J:kh=^A:kl=^U:kr=^F:ku=^Z:\
-       :le=^H:ll=^A:nd=^F:sf=^J:up=^Z:
-# From: Jay S. Rouman <jsr@dexter.mi.org> 5 Jul 92
-# The civis/cnorm/sgr/sgr0 strings were added by ESR from specs.  
-# Theory; the 3a+ wants \E0%c to set highlights, where normal=01000000,
-# underline=01100000, rev=01010000, blink=01000010,dim=01000001,
-# invis=01000100 and %c is the logical or of desired attributes.
-# There is also a `tag bit' enabling attributes, set by \E) and unset by \E(.
-vp3a+|viewpoint3a+|adds viewpoint 3a+:\
-       :am:bw:\
-       :co#80:it#8:li#24:\
-       :cd=\EY:ce=\ET:cl=\E*:cm=\E=%+ %+ :cr=^M:do=^J:ho=^^:\
-       :kb=^H:kd=^J:kh=^^:kl=^H:kr=^L:ku=^K:le=^H:me=\E(:\
-       :nd=^L:nw=^M^J:\
-       :..sa=\E0%'@'%?%p1%tQ%|%;%?%p2%t%'`'%|%;%?%p3%tP%|%;%?%p4%t%{2}%|%;%?%p5%t%{1}%|%;%?%p7%tD%|%;%c\E):\
-       :se=\E(:sf=^J:so=\E0Q\E):ta=^I:up=^K:ve=^X:vi=^W:
-vp60|viewpoint60|addsviewpoint60|adds viewpoint60:\
-       :tc=regent40:
-#
-# adds viewpoint 90 - from cornell
-# Note:  emacs sends ei occasionally to insure the terminal is out of
-#        insert mode. This unfortunately puts the viewpoint90 IN insert
-#        mode.  A hack to get around this is :ic=\EF \EF^U:.  (Also,
-#   -    :ei=:im=: must be present in the termcap translation.)
-#   -    :xs: indicates glitch that attributes stick to location
-#   -    :ms: means it's safe to move in standout mode
-#   -    :cl=\EG\Ek: clears screen and visual attributes without affecting
-#               the status line
-# Function key and label capabilities merged in from SCO.
-vp90|viewpoint90|adds viewpoint 90:\
-       :bs:bw:ms:xs:\
-       :co#80:li#24:\
-       :cd=\Ek:ce=\EK:cl=\EG\Ek:cm=\EY%+ %+ :dc=\EE:dl=\El:\
-       :do=^J:ei=:ho=\EY  :ic=\EF \EF\025:im=:k0=^B1\r:\
-       :k1=^B2\r:k2=^B3\r:k3=^B4\r:k4=^B5\r:k5=^B6\r:\
-       :k6=^B7\r:k7=^B8\r:k8=^B9\r:k9=^B\072\r:k;=^B;\r:\
-       :kb=^H:kd=^J:kh=^A:kl=^U:kr=^F:ku=^Z:l0=F1:l1=F2:\
-       :l2=F3:l3=F4:l4=F5:l5=F6:l6=F7:l7=F8:l8=F9:l9=F10:\
-       :la=F11:ll=^A:nd=^F:se=\ER\E0@\EV:sf=^J:\
-       :so=\ER\E0Q\EV:ta=^I:ue=\ER\E0@\EV:up=^Z:\
-       :us=\ER\E0`\EV:
-# Note: if return acts weird on a980, check internal switch #2
-# on the top chip on the CONTROL pc board.
-adds980|a980|adds consul 980:\
-       :am:bs:\
-       :co#80:li#24:\
-       :al=\E\016:bl=^G:cl=\014\013@:cm=\013%+@\E\005%2:\
-       :cr=^M:dl=\E\017:do=^J:k0=\E0:k1=\E1:k2=\E2:k3=\E3:\
-       :k4=\E4:k5=\E5:k6=\E6:k7=\E7:k8=\E8:k9=\E9:le=^H:\
-       :nd=\E^E01:se=^O:sf=^J:so=^Y^^^N:
-
-#### C. Itoh Electronics
-#
-# As of 1995 these people no longer make terminals (they're still in the
-# printer business).  Their terminals were all clones of the DEC VT series.
-# They're located in Orange County, CA.
-#
-
-# CIT 80  - vt-52 emulator, the termcap has been modified to remove
-#           the delay times and do an auto tab set rather than the indirect
-#           file used in vt100.
-cit80|cit-80|citoh 80:\
-       :am:bs:\
-       :co#80:li#24:\
-       :cd=\EJ:ce=\EK:cl=\E[;H\EJ:cm=\E[%i%2;%2H:cr=^M:\
-       :ff=^L:is=\E>:kd=\EOB:ke=\E[?1l\E>:kl=\EOD:kr=\EOC:\
-       :ks=\E[?1h\E=:ku=\EOA:nd=\E[C:sf=^J:up=\E[A:
-# Alternate cit101 (vt100 em) file used in vt100.
-#          Uses 23 lines so can run citsys (like h19sys).
-#      24 May 85 (mtxinu!sybase!tim) - removed 2-byte limit on :cm: cursor
-#        coordinates otherwise there is garbling on long lines in 
-#        co#132 mode; also added support for multipage memory on the Itoh.
-# From: Tim Wood <mtxinu!sybase!tim> Fri Sep 27 09:39:12 PDT 1985
-citc|Citoh fast vt100:\
-       :am:bs:xn:\
-       :co#80:li#23:\
-       :al=\E[L:cd=\E[J:ce=\E[K:cl=\E[;H\E[2J:\
-       :cm=\E[%i%d;%dH:dc=\E[P:dl=\E[M:ei=:ic=\E[@:im=:\
-       :is=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h\E[3g\E[>5g:\
-       :kd=\EOB:ke=\E[?1l\E>:kl=\EOD:kr=\EOC:ks=\E[?1h\E=:\
-       :ku=\EOA:nd=\E[C:se=\E[m:so=\E[7m:ue=\E[m:up=\E[A:\
-       :us=\E[4m:\
-       :vb=\E[?5h\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\E[?5l:\
-       :ve=\E[V\E8:vs=\E7\E[U:
-cita:\
-       :am:bs:xn:\
-       :co#80:li#23:\
-       :cd=\E[J:ce=\E[K:cl=\E[;H\E[2J:cm=\E[%i%d;%dH:\
-       :is=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h\E[3g\E[>5g:\
-       :kd=\EOB:ke=\E[?1l\E>:kl=\EOD:kr=\EOC:ks=\E[?1h\E=:\
-       :ku=\EOA:nd=\E[C:se=\E[m:so=\E[7m:ue=\E[m:up=\E[A:\
-       :us=\E[4m:\
-       :vb=\E[?5h\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\E[?5l:\
-       :ve=\E[V\E8:vs=\E7\E[U:
-cit101:\
-       :li#24:\
-       :vb@:tc=citc:
-cit101b:\
-       :li#24:\
-       :tc=citc:
-# The CIT-500 was unusual in that it had a portrait-style display.
-# (cit500: mapped ":pt:" to default tabs -- esr)
-cit500|cit-500|cit 500:\
-       :am:bs:pt:xn:\
-       :co#80:li#40:\
-       :al=\E[L:cd=50\E[J:ce=3\E[K:cl=50\E[;H\E[2J:\
-       :cm=5\E[%i%2;%2H:dc=\E[P:dl=\E[M:do=\ED:\
-       :is=\E(B\E)0\E>\E[?3l\E[?7h\E[?8h:k1=\EOP:k2=\EOQ:\
-       :k3=\EOR:k4=\EOS:kd=\EOB:ke=\E[?1l\E>:kh=\E[H:\
-       :kl=\EOD:kr=\EOC:ks=\E[?1h\E=:ku=\EOA:nd=2\E[C:\
-       :se=2\E[m:so=2\E[7m:sr=5\EM:ue=2\E[m:up=2\E[A:\
-       :us=2\E[4m:
-
-citoh|ci8510|8510|c.itoh 8510a:\
-       :co#80:it#8:\
-       :is=\E(009\054017\054025\054033\054041\054049\054057\054065\054073.:\
-       :le@:md=\E!:me=\E"\EY:rp=\ER%r%03%.:sr=\Er:ue=\EY:\
-       :us=\EX:tc=lpr:
-citoh-pica|citoh in pica:\
-       :i1=\EN:tc=citoh:
-citoh-elite|citoh in elite:\
-       :co#96:\
-       :i1=\EE:\
-       :is=\E(009\054017\054025\054033\054041\054049\054057\054065\054073\054081\054089.:tc=citoh:
-citoh-comp|citoh in compressed:\
-       :co#136:\
-       :i1=\EQ:\
-       :is=\E(009\054017\054025\054033\054041\054049\054057\054065\054073\054081\054089\054097\054105\054113\054121\054129.:tc=citoh:
-# citoh has infinite cols because we don't want lp ever inserting \n\t**.
-citoh-prop|citoh-ps|ips|citoh in proportional spacing mode:\
-       :co#32767:\
-       :i1=\EP:tc=citoh:
-citoh-6lpi|citoh in 6 lines per inch mode:\
-       :i2=\EA:tc=citoh:
-citoh-8lpi|citoh in 8 lines per inch mode:\
-       :li#88:\
-       :i2=\EB:tc=citoh:
-
-#### Control Data (cdc)
-#
-
-cdc456|cdc:\
-       :am:bs:\
-       :co#80:li#24:\
-       :al=\EL:bl=^G:cd=^X:ce=^V:cl=^Y^X:cm=\E1%+ %+ :cr=^M:\
-       :dl=\EJ:do=^J:ho=^Y:le=^H:nd=^L:sf=^J:up=^Z:
-cdc456tst:\
-       :am:bs:\
-       :co#80:li#24:\
-       :bl=^G:cl=^Y^X:cm=\E1%+ %+ :cr=^M:do=^J:le=^H:sf=^J:
-
-#### Human Designed Systems (Concept)
-#
-#      Human Designed Systems
-#      400 Fehley Drive
-#      King of Prussia, PA 19406
-#      Vox: (610)-277-8300
-#      Fax: (610)-275-5739
-#      Net: support@hds.com
-# 
-# John Martin <john@hds.com> is their termcap expert.  They're mostly out of
-# the character-terminal business now (1995) and making X terminals.  In
-# particular, the whole `Concept' line described here was discontinued long
-# ago.
-
-# From: <vax135!hpk>  Sat Jun 27 07:41:20 1981
-# Extensive changes to c108 by arpavax:eric Feb 1982
-# Some unknown person at SCO then translated it to terminfo.
-#
-# There seem to be a number of different versions of the C108 PROMS
-# (with bug fixes in its Z-80 program).
-# 
-# The first one that we had would lock out the keyboard of you
-# sent lots of short lines (like /usr/dict/words) at 9600 baud.
-# Try that on your C108 and see if it sends a ^S when you type it.
-# If so, you have an old version of the PROMs.
-# 
-# You should configure the C108 to send ^S/^Q before running this.
-# It is much faster (at 9600 baud) than the c100 because the delays
-# are not fixed.
-# new status line display entries for c108-8p:
-# is3 - init str #3 - setup term for status display - 
-# set programmer mode, select window 2, define window at last 
-# line of memory, set bkgnd stat mesg there, select window 0.
-# 
-# tsl - to status line - select window 2, home cursor, erase to 
-# end-of-window, 1/2 bright on, goto(line#0, col#?)
-# 
-# fsl - from status line - 1/2 bright off, select window 0
-# 
-# dsl - disable status display - set bkgnd status mesg with 
-# illegal window #
-# 
-# There are probably more function keys that should be added but 
-# I don't know what they are.
-#
-c108|concept108|c108-8p|concept108-8p|concept 108 w/8 pages:\
-       :i2=\EU\E z"\Ev\001\177 !p\E ;"\E z \Ev  \001\177p\Ep\n:\
-       :te=\Ev  \001\177p\Ep\r\n:tc=c108-4p:
-c108+acs|alternate charset defns for c108:\
-       :ac=l\\qLkTxUmMjE:ae=\Ej :as=\Ej!:
-c108-4p-acs|c108-4p w/ acs:\
-       :tc=c108+acs:tc=c108-4p:
-c108-8p-acs|c108-8p w/ acs:\
-       :tc=c108+acs:tc=c108-8p:
-c108-rv-8p-acs|c108-rv-8p w/ acs:\
-       :tc=c108+acs:tc=c108-rv-8p:
-c108-4p|concept108-4p|concept 108 w/4 pages:\
-       :es:hs:xo:\
-       :pb@:\
-       :..cm=\Ea%p1%?%p1%{95}%>%t\001%{96}%-%;%{32}%+%c%p2%?%p2%{95}%>%t\001%{96}%-%;%{32}%+%c:\
-       :cr=^M:dc=\E 1:ds=\E ;\177:fs=\Ee\E z :i1=\EK\E!\E F:\
-       :i2=\EU\E z"\Ev\177 !p\E ;"\E z \Ev  \001 p\Ep\n:\
-       :sf=^J:te=\Ev  \001 p\Ep\r\n:\
-       :ti=\EU\Ev  8p\Ep\r\E\025:\
-       :ts=\E z"\E?\E\005\EE\Ea %+ :ve=\Ew:vs=\EW:tc=c100:
-c108-rv|c108-rv-8p|concept 108 w/8 pages in reverse video:\
-       :te=\Ev  \002 p\Ep\r\n:ti=\EU\Ev  8p\Ep\r:tc=c108-rv-4p:
-c108-rv-4p|concept108-rv-4p|concept108rv4p|concept 108 w/4 pages in reverse video:\
-       :i1=\Ek:se=\Ee:so=\EE:vb=\EK\Ek:tc=c108-4p:
-c108-rv-4p-acs|c108-rv-4p w/ acs:\
-       :tc=c108+acs:tc=c108-rv-4p:
-c108-na|c108-na-8p|c108-8p-na|concept108-na-|concept108na8p|concept 108 w/8 pages no arrows:\
-       :k7=\E;:k8=\E<:k9=\E=:ke@:ks@:tc=c108-8p:
-c108-na-acs|c108-na w/ acs:\
-       :tc=c108+acs:tc=c108-na:
-c108-rv-na|c108-rv-na-8p|c108-8p-rv-na|concept 108 8 pages no arrows rev video:\
-       :k7=\E;:k8=\E<:k9=\E=:ke@:ks@:tc=c108-rv-8p:
-c108-rv-na-acs|c108-na w/ acs:\
-       :tc=c108+acs:tc=c108-rv-na:
-c108-w|c108-w-8p|concept108-w-8|concept108-w8p|concept 108 w/8 pages in wide mode:\
-       :co#132:\
-       :i1=\E F\E":te=\Ev  ^A0\001D\Ep\r\n:\
-       :ti=\EU\Ev  8\001D\Ep\r:tc=c108-8p:
-c108-w-acs|c108-w w/ acs:\
-       :tc=c108+acs:tc=c108-w:
-
-# Concept 100:
-# These have only window relative cursor addressing, not screen 
-# relative. To get it to work right here, smcup/rmcup (which 
-# were invented for the concept) lock you into a one page 
-# window for screen style programs.
-# 
-# To get out of the one page window, we use a clever trick:
-# we set the window size to zero ("\Ev    " in rmcup) which the 
-# terminal recognizes as an error and resets the window to all 
-# of memory.
-# 
-# This trick works on c100 but does not on c108, sigh.
-# 
-# Some tty drivers use cr3 for concept, others use nl3, hence 
-# the delays on cr and ind below. This padding is only needed at 
-# 9600 baud. One or the other is commented out depending on 
-# local conventions.
-# 
-# 2 ms padding on rmcup isn't always enough. 6 works fine. Maybe 
-# less than 6 but more than 2 will work.
-# 
-# Note: can't use function keys f7-f10 because they are 
-# indistinguishable from arrow keys (!), also, del char and 
-# clear eol use xon/xoff so they probably won't work very well.
-# 
-# Also note that we don't define insrt/del char/delline/eop/send 
-# because they don't transmit unless we reset them - I figured 
-# it was a bad idea to clobber their definitions.
-# 
-# The mc5 sequence changes the escape character to ^^ so that 
-# escapes will be passed through to the printer. Only trouble 
-# is that ^^ won't be - ^^ was chosen to be unlikely. 
-# Unfortunately, if you're sending raster bits through to be 
-# plotted, any character you choose will be likely, so we lose.
-#
-# \EQ"\EY(^W (send anything from printer to host, for xon/xoff) 
-# cannot be # in is2 because it will hang a c100 with no printer 
-# if sent twice.
-c100|concept100|concept|c104|c100-4p|hds concept 100:\
-       :am:eo:mi:ul:xn:\
-       :co#80:li#24:pb#9600:vt#8:\
-       :al=\E\022:bl=^G:cd=\E\005:ce=\E\025:cl=\E?\E\005:\
-       :cm=\Ea%+ %+ :cr=\r:dc=\E\021:dl=\E\002:do=^J:\
-       :ei=\E  :i1=\EK:i2=\Ev    \Ep\n:im=\E^P:ip=:\
-       :is=\EU\Ef\E7\E5\E8\El\ENH\E\200\Eo&\200\Eo'\E\Eo!\200\E\007!\E\010A@ \E4#\072"\E\072a\E4#;"\E\072b\E4#<"\E\072c:\
-       :k1=\E5:k2=\E6:k3=\E7:k4=\E8:k5=\E9:k6=\E\072a:\
-       :k7=\E\072b:k8=\E\072c:kA=\E^R:kB=\E':kD=\E^Q:\
-       :kE=\E^S:kF=\E[:kI=\E^P:kL=\E^B:kM=\E\200:kN=\E-:\
-       :kP=\E.:kR=\E\\:kS=\E^C:kT=\E]:kb=^H:kd=\E<:ke=\Ex:\
-       :kh=\E?:kl=\E>:kr=\E=:ks=\EX:kt=\E_:ku=\E;:le=^H:\
-       :mb=\EC:me=\EN@:mh=\EE:mk=\EH:mp=\EI:mr=\ED:nd=\E=:\
-       :pf=\036o \E\EQ!\EYP\027:po=\EQ"\EY(\027\EYD\Eo \036:\
-       :rp=\Er%.%+ :se=\Ed:sf=^J:so=\ED:ta=\011:\
-       :te=\Ev    \Ep\r\n:ti=\EU\Ev  8p\Ep\r\E\025:ue=\Eg:\
-       :up=\E;:us=\EG:vb=\Ek\EK:
-c100-rv|c100-rv-4p|concept100-rv|c100 rev video:\
-       :i1=\Ek:se=\Ee:so=\EE:vb=\EK\Ek:ve@:vs@:tc=c100:
-c100-rv-na|c100-rv-4p-na|c100 with no arrows:\
-       :ke@:ks@:tc=c100-rv:
-oc100|oconcept|c100-1p|old 1 page concept 100:\
-       :in:\
-       :i3@:tc=c100:
-
-# ht through el included to specify padding needed in raw mode.
-avt-ns|concept avt with status lins disabled:\
-       :am:eo:mi:ul:xn:xo:\
-       :co#80:it#8:li#24:lm#192:\
-       :AL=\E[%dL:DL=\E[%dM:DO=\E[%dB:IC=\E[%d@:LE=\E[%dD:\
-       :RI=\E[%dC:UP=\E[%dA:ae=\016:al=\E[L:as=\017:bl=^G:\
-       :bt=\E[Z:cd=\E[J:ce=\E[K:ch=\E[%+^AG:cl=\E[H\E[J:\
-       :cm=\E[%i%d;%dH:cr=^M:cs=\E[%i%d;%dr:ct=\E[2g:\
-       :cv=\E[%+^Ad:dc=\E[P:dl=\E[M:do=^J:ei=\E4l:ho=\E[H:\
-       :i1=\E[=103l\E[=205l:ic=\E[@:im=\E1:ip=:\
-       :is=\E[1*q\E[2!t\E[7!t\E[=4;101;119;122l\E[=107;118;207h\E)1\E[1Q\EW\E[!y\E[!z\E>\E[0\0720\07232!r\E[0*w\E[w\E2\r\n\E[2;27!t:\
-       :k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:kA=\E^C\r:kD=\E^B\r:\
-       :kI=\E^A\r:kS=\E^D\r:kb=^H:kd=\E[B:ke=\E[!z\E[0;2u:\
-       :kh=\E[H:kl=\E[D:kr=\E[C:ks=\E[1!z\E[0;3u:ku=\E[A:\
-       :le=^H:ll=\E[24H:mb=\E[5m:md=\E[1m:me=\E[m:mh=\E[1!{:\
-       :mk=\E8m:mp=\E[99m:mr=\E[7m:nd=\E[C:pf=\E[4i:\
-       :pl=\E[%d;0u#%s#:po=\E[5i:ps=\E[0i:px=\E[%d;1u#%s#:\
-       :rc=\E8:..rp=%p1%c\E[%p2%{1}%-%db:\
-       :..sa=\E[%?%p1%t7;%;%?%p2%t4;%;%?%p3%t7;%;%?%p4%t5;%;%?%p6%t1;%;m:\
-       :sc=\E7:se=\E[7!{:sf=\n:so=\E[7m:sr=\EM:st=\EH:\
-       :ta=\011:te=\E[w\E2\r\n:ti=\E[=4l\E[1;24w\E2\r:\
-       :ue=\E[4!{:up=\E[A:us=\E[4m:ve=\E[=119l:vs=\E[=119h:
-avt-rv-ns|concept avt in reverse video mode/no status line:\
-       :i1=\E[=103l\E[=205h:vb=\E[=205l\E[=205h:tc=avt-ns:
-avt-w-ns|concept avt in 132 column mode/no status line:\
-       :i1=\E[=103h\E[=205l:ti=\E[H\E[1;24;1;132w:tc=avt-ns:
-avt-w-rv-ns|concept avt in 132 column mode/no status line:\
-       :i1=\E[=103h\E[=205h:ti=\E[H\E[1;24;1;132w:\
-       :vb=\E[=205l\E[=205h:tc=avt-ns:
-
-# Concept AVT with status line. We get the status line using the
-# "Background status line" feature of the terminal. We swipe the
-# first line of memory in window 2 for the status line, keeping
-# 191 lines of memory and 24 screen lines for regular use.
-# The first line is used instead of the last so that this works
-# on both 4 and 8 page AVTs. (Note the lm#191 or 192 - this
-# assumes an 8 page AVT but lm isn't currently used anywhere.)
-#
-avt+s|concept avt status line changes:\
-       :es:hs:\
-       :lm#191:\
-       :ds=\E[0*w:fs=\E[1;1!w:\
-       :i2=\E[2w\E[2!w\E[1;1;1;80w\E[H\E[2*w\E[1!w\E2\r\n:\
-       :te=\E[2w\E2\r\n:ti=\E[2;25w\E2\r:\
-       :ts=\E[2;1!w\E[;%p1%dH\E[2K:
-avt|avt-s|concept-avt|avt w/80 columns:\
-       :tc=avt+s:tc=avt-ns:
-avt-rv|avt-s-rv|avt-rv-s|concept avt in reverse video w/status line:\
-       :i1=\E[=103l\E[=205h:vb=\E[=205l\E[=205h:tc=avt+s:tc=avt-ns:
-avt-w|avt-w-s|concept avt in 132 column mode w/status line:\
-       :i1=\E[=103h\E[=205l:ti=\E[H\E[1;24;1;132w:tc=avt+s:tc=avt-ns:
-avt-w-rv|avt-rv-w|avt-w-s-rv|avt-w-rv-s|avt 132 cols w/status line:\
-       :i1=\E[=103h\E[=205h:ti=\E[H\E[1;24;1;132w:\
-       :vb=\E[=205l\E[=205h:tc=avt+s:tc=avt-ns:
-
-#### Contel Business Systems. 
-#
-
-# Contel c300 and c320 terminals. 
-contel300|contel320|c300|Contel Business Systems C-300 or C-320:\
-       :am:in:xo:\
-       :co#80:li#24:sg#1:\
-       :al=\EL:bl=^G:cd=\EJ:ce=\EI:cl=\EK:cm=\EX%+ \EY%+ :\
-       :cr=^M:ct=\E3:dc=\EO:dl=\EM:do=^J:ei=:ho=\EH:ic=\EN:\
-       :im=:ip=:k0=\ERJ:k1=\ERA:k2=\ERB:k3=\ERC:k4=\ERD:\
-       :k5=\ERE:k6=\ERF:k7=\ERG:k8=\ERH:k9=\ERI:kb=^H:le=^H:\
-       :ll=\EH\EA:nd=\EC:se=\E!\200:sf=^J:so=\E!\r:st=\E1:\
-       :up=\EA:vb=\020\002\020\003:
-# Contel c301 and c321 terminals.
-contel301|contel321|c301|c321|Contel Business Systems C-301 or C-321:\
-       :am:in:xo:\
-       :co#80:li#24:sg#1:\
-       :al=\EL:bl=^G:cd=\EJ:ce=\EI:cl=\EK:cm=\EX%+ \EY%+ :\
-       :cr=^M:ct=\E3:dc=\EO:dl=\EM:do=^J:ho=\EH:k0=\ERJ:\
-       :k1=\ERA:k2=\ERB:k3=\ERC:k4=\ERD:k5=\ERE:k6=\ERF:\
-       :k7=\ERG:k8=\ERH:k9=\ERI:kb=^H:le=^H:ll=\EH\EA:\
-       :nd=\EC:se=\E!\200:sf=^J:so=\E!\r:st=\E1:up=\EA:
-
-#### Data General (dg)
-#
-# According to James Carlson <carlson@xylogics.com> writing in January 1995,
-# the terminals group at Data General was shut down in 1991; all these
-# terminals have thus been discontinued.
-#
-
-dg200|data general dasher 200:\
-       :NL:am:bw:\
-       :co#80:li#24:\
-       :bl=^G:ce=^K:cl=^L:cm=\020%r%.%.:cr=^M:do=^Z:ho=^H:\
-       :k0=^^z:k1=^^q:k2=^^r:k3=^^s:k4=^^t:k5=^^u:k6=^^v:\
-       :k7=^^w:k8=^^x:k9=^^y:kd=^Z:kh=^H:kl=^Y:kr=^X:ku=^W:\
-       :l0=f10:le=^Y:nd=^X:nw=^J:se=^^E:sf=^J:so=^^D:ue=^U:\
-       :up=^W:us=^T:
-#
-# dg450 and dg200 from cornell
-dg450|dg6134|data general 6134:\
-       :bs@:\
-       :nd=^X:tc=dg200:
-# Note: lesser Dasher terminals will not work with vi because vi insists upon
-# having a command to move straight down from any position on the bottom line
-# and scroll the screen up, or a direct vertical scroll command.  The 460 and
-# above have both, the D210/211, for instance, has neither.  We must use ANSI
-# mode rather than DG mode because standard UNIX tty drivers assume that ^H is
-# backspace on all terminals.  This is not so in DG mode.
-# (dg460-ansi: removed obsolete ":kn#6:"; also removed ":mu=\EW:", on the
-# grounds that there is no matching ":ml:"; mapped ":pt:" to default tabs; 
-# fixed garbled ":k9=\E[00\:z:" capability -- esr)
-dg460-ansi|Data General Dasher 460, ANSI-mode:\
-       :am:bs:ms:pt:ul:\
-       :co#80:li#24:\
-       :al=\E[L:cd=\E[J:ce=\E[K:cl=\E[2J:cm=\E[%i%2;%2H:\
-       :dc=\E[P:dl=\E[M:do=\E[B:ei=:ho=\E[H:ic=\E[@:im=:\
-       :is=^^F@:k0=\E[001z:k1=\E[002z:k2=\E[003z:k3=\E[004z:\
-       :k4=\E[005z:k5=\E[006z:k6=\E[007z:k7=\E[008z:\
-       :k8=\E[009z:k9=\E[010z:kb=\E[D:kd=\E[B:kh=\E[H:\
-       :kl=\E[D:kr=\E[C:ku=\E[A:l0=f1:l1=f2:l2=f3:l3=f4:\
-       :l4=f5:l5=f6:l6=f7:l7=f8:l9=f10:le=^H:mb=\E[5m:\
-       :me=\E[0m:mh=\E[2m:mr=\E[7m:nd=\E[C:nl=\ED:se=\E[0m:\
-       :sf=\E[S:so=\E[7m:sr=\E[T:ue=\E[05:up=\E[A:us=\E[4m:
-# From: Wayne Throop <mcnc!rti-sel!rtp47!throopw>
-# Data General 605x     
-# Ought to work for a Model 6242, Type D210 as well as a 605x.
-# Note that the cursor-down key transmits ^Z.  Job control users, beware!
-dg6053|data general 6053:\
-       :am:bs:bw:pt:ul:\
-       :co#80:li#24:\
-       :bl=^G:ce=^K:cl=^L:cm=\020%r%.%.:cr=^M:do=^Z:ho=^H:\
-       :is=^R:k0=^^q:k1=^^r:k2=^^s:k3=^^t:k4=^^u:k5=^^v:\
-       :k6=^^w:k7=^^x:k8=^^y:kb=^Y:kd=^Z:kh=^H:kl=^Y:kr=^X:\
-       :ku=^W:le=^Y:nd=^X:nw=^M^Z:se=\200^^E:\
-       :so=\200\200\200\200\200\036D:ta=^I:te=^L:ti=^L^R:\
-       :ue=^U:up=^W:us=^T:ve=^L:vs=^L^R:
-# From: Peter N. Wan <ihnp4!gatech!gacsr!wan>
-# courtesy of Carlos Rucalde of Vantage Software, Inc.
-dgd211|Data General d211:\
-       :am:bw:\
-       :co#80:li#24:\
-       :ce=^K:cl=^L:..cm=\020%r%.%.:cr=^M:do=^Z:ho=^H:kb=^Y:\
-       :kd=^Z:kh=^H:kl=^Y:kr=^X:ku=^W:le=^Y:nd=^X:nw=^M^Z:\
-       :se=00\036E\200/>:so=00\036D\200\200\200\200\200/>:\
-       :ta=^I:te=^L:ti=^L^R:ue=^U:up=^W:us=^T:ve=^L:vs=^L^R:
-# From: Joan Walter <joanw@BRL.ARPA>
-# Data General/One
-#  David Holub got the dg1 to work with jove with this termcap
-#   by making li#23 and co#78 to comply with obvious terminal
-#   capabilities.  Still waiting for documentation.
-# Data General/One from  modified DG Dasher DG210/211 (bw removed)
-# From: Peter N. Wan <ihnp4!gatech!gacsr!wan>
-# courtesy of Carlos Rucalde of Vantage Software, Inc.
-dg1|Data General/One:\
-       :am:\
-       :co#78:li#23:\
-       :ce=^K:cl=^L:cm=\020%r%.%.:cr=^M:do=^Z:ho=^H:kb=^Y:\
-       :kd=^Z:kh=^H:kl=^Y:kr=^X:ku=^W:le=^Y:nd=^X:nw=^M^Z:\
-       :ta=^I:up=^W:
-
-#### Datamedia (dm)
-#
-
-cs10|colorscan|Datamedia Color Scan 10:\
-       :ms:\
-       :co#80:li#24:\
-       :bl=^G:cd=\E[J:ce=\E[K:cl=\E[;H\E[J:cm=\E[%i%02;%02H:\
-       :cr=^M:do=^J:k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:kd=\E[B:\
-       :kl=\E[D:kr=\E[C:ku=\E[A:le=^H:nd=\E[C:se=\E[m:sf=^J:\
-       :so=\E[7m:ue=\E[m:up=\E[A:us=\E[4m:
-cs10-w|Datamedia Color Scan 10 with 132 columns:\
-       :co#132:\
-       :cm=\E[%i%02;%03H:tc=cs10:
-
-# (dm1520: removed obsolete ":ma=^\ ^_^P^YH:";
-# mapped ":pt:" to default tabs -- esr)
-dm1520|dm1521|datamedia 1520:\
-       :am:bs:pt:xn:\
-       :co#80:li#24:\
-       :bl=^G:cd=^K:ce=^]:cl=^L:cm=\036%r%+ %+ :cr=^M:do=^J:\
-       :ho=^Y:kd=^J:kh=^Y:kl=^H:kr=^\:ku=^_:le=^H:nd=^\:\
-       :sf=^J:ta=^I:up=^_:
-dm2500|datamedia2500|datamedia 2500:\
-       :bs:nc:\
-       :co#80:li#24:\
-       :al=\020\n\030\035\030\035:bl=^G:ce=^W:cl=^^^^\177:\
-       :cm=\014%r%n%.%.:dc=\020\010\030\035:\
-       :dl=\020\032\030\035:dm=^P:do=^J:ed=^X^]:\
-       :ei=\377\377\030\035:ho=^B:ic=\020\034\030\035:im=^P:\
-       :le=^H:nd=^\:pc=\377:se=^X^]:sf=^J:so=^N:up=^Z:
-# dmchat is like DM2500, but DOES need "all that padding" (jcm 1/31/82)
-# also, has a meta-key (:km:)
-# From: <goldberger@su-csli.arpa>
-# (dmchat: ":MT:" changed to ":km:" -- esr)
-dmchat|dmchat version of datamedia 2500:\
-       :km:\
-       :al=1*\020\n\030\035\030\035:dl=2\020\032\030\035:tc=dm2500:
-# (dm3025: ":MT:" changed to ":km:"; mapped ":pt:" to default tabs -- esr)
-dm3025|datamedia 3025a:\
-       :bs:km:pt:\
-       :co#80:li#24:\
-       :al=\EP\n\EQ:bl=^G:cd=\EJ:ce=\EK:cl=\EM:\
-       :cm=\EY%r%+ %+ :cr=^M:dc=\010:dl=\EP\EA\EQ:dm=\EP:\
-       :do=^J:ed=\EQ:ei=\EQ:ho=\EH:im=\EP:ip=:is=\EQ\EU\EV:\
-       :le=^H:nd=\EC:se=\EO0:sf=^J:so=\EO1:ta=^I:up=\EA:
-# (dm3045: mapped ":pt:" to default tabs -- esr)
-dm3045|datamedia 3045a:\
-       :am:bs:eo:pt:ul:xn:\
-       :co#80:li#24:\
-       :bl=^G:cd=\EJ:ce=\EK:cl=\EM:cm=\EY%r%+ %+ :cr=^M:\
-       :dc=\EB:do=^J:ei=\EP:ho=\EH:im=\EP:ip=:is=\EU\EV:\
-       :k0=\Ey\r:k1=\Ep\r:k2=\Eq\r:k3=\Er\r:k4=\Es\r:\
-       :k5=\Et\r:k6=\Eu\r:k7=\Ev\r:k8=\Ew\r:k9=\Ex\r:kh=\EH:\
-       :kr=\EC:ku=\EA:le=^H:nd=\EC:pc=\177:sf=^J:ta=^I:\
-       :up=\EA:
-# dm80/1 is a vt100 lookalike, but it doesn't seem to need any padding.
-dm80|dmdt80|dt80|datamedia dt80/1:\
-       :cd=\E[J:ce=\E[K:cl=\E[2J\E[H:cm=%i\E[%d;%dH:do=^J:\
-       :ho=\E[H:nd=\E[C:pf=\E[4i:po=\E[5i:ps=\E[0i:se=\E[m:\
-       :so=\E[7m:sr=\EM:ue=\E[m:up=\E[A:us=\E[4m:tc=vt100:
-# except in 132 column mode, where it needs a little padding.
-# This is still less padding than the vt100, and you can always turn on
-# the ^S/^Q handshaking, so you can use vt100 flavors for things like
-# reverse video.
-dm80w|dmdt80w|dt80w|datamedia dt80/1 in 132 char mode:\
-       :co#132:\
-       :cd=20\E[0J:ce=20\E[0K:cl=50\E[H\E[2J:\
-       :cm=5\E[%i%d;%dH:do=^J:up=5\E[A:tc=dm80:
-
-#### Falco
-#
-#      Falco Data Products
-#      440 Potrero Avenue
-#      Sunnyvale, CA 940864-196
-#      Vox: (800)-325-2648
-#      Fax: (408)-745-7860
-#      Net: techsup@charm.sys.falco.com
-#
-# Current Falco models as of 1995 are generally ANSI-compatible and support
-# emulations of DEC VT-series, Wyse, and Televideo types.
-
-# Test version for Falco ts-1. See "arpavax.hickman@ucb" for info
-# (falco: mapped ":pt:" to default tabs -- esr)
-# This terminal was released around 1983 and was discontinued long ago.
-falco|ts1|ts-1|falco ts-1:\
-       :am:bs:pt:\
-       :co#80:li#24:\
-       :al=\EE:bl=^G:cd=\EY:ce=\ET\EG0\010:cl=\E*:\
-       :cm=\E=%+ %+ :cr=^M:dc=\EW:dl=\ER:do=^J:ei=\Er:ho=^^:\
-       :im=\Eq:is=\Eu\E3:k0=^A0\r:kd=^J:kl=^H:kr=^L:ku=^K:\
-       :le=^H:nd=^L:se=\Eg0:sf=^J:so=\Eg1:ta=^I:ue=\Eg0:\
-       :up=^K:us=\Eg1:
-# (falco-p: mapped ":pt:" to default tabs -- esr)
-falco-p|ts1p|ts-1p|falco ts-1 with paging option:\
-       :am:bs:da:db:mi:ms:pt:ul:\
-       :co#80:li#24:\
-       :al=\EE:bl=^G:bt=\EI:cd=\EY:ce=\ET\EG0\010\Eg0:\
-       :cl=\E*:cm=\E=%+ %+ :cr=^M:dc=\EW:dl=\ER:do=\E[B:\
-       :ei=\Er:im=\Eq:is=\EZ\E3\E_c:kd=\E[B:kh=\E[H:kl=\E[D:\
-       :kr=\E[C:ku=\E[A:le=^H:nd=\E[C:se=\Eg0:sf=^J:so=\Eg4:\
-       :ta=^I:te=\E_b:ti=\E_d:ue=\Eg0:up=\E[A:us=\Eg1:
-ts100|ts100-sp|falco ts100-sp:\
-       :am:mi:ms:xn:xo:\
-       :co#80:it#8:li#24:vt#3:\
-       :@8=\EOM:DO=\E[%dB:K1=\EOq:K2=\EOr:K3=\EOs:K4=\EOp:\
-       :K5=\EOn:LE=\E[%dD:RI=\E[%dC:UP=\E[%dA:\
-       :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\
-       :ae=^O:al=\E~E:as=^N:bl=^G:cb=\E[1K:cd=\E[J:ce=\E[K:\
-       :cl=\E[H\E[J:cm=\E[%i%d;%dH:cr=^M:cs=\E[%i%d;%dr:\
-       :ct=\E[3g:dc=\E~W:dl=\E~R:do=^J:eA=\E(B\E)0:ei=:\
-       :ho=\E[H:i1=\E~)\E~ea:ic=\E~Q:im=:k0=\EOy:k1=\EOP:\
-       :k2=\EOQ:k3=\EOR:k4=\EOS:k5=\EOt:k6=\EOu:k7=\EOv:\
-       :k8=\EOl:k9=\EOw:k;=\EOx:kb=^H:kd=\EOB:ke=\E[?1l\E>:\
-       :kl=\EOD:kr=\EOC:ks=\E[?1h\E=:ku=\EOA:le=^H:mb=\E[5m:\
-       :md=\E[1m:me=\E[m\017:mr=\E[7m:nd=\E[C:\
-       :r2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h:rc=\E8:\
-       :..sa=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;:\
-       :sc=\E7:se=\E[m:sf=^J:so=\E[1;7m:sr=\EM:st=\EH:ta=^I:\
-       :ue=\E[m:up=\E[A:us=\E[4m:
-ts100-ctxt|falco ts-100 saving context:\
-       :te=\E~_b:ti=\E~_d\E[2J:tc=ts100:
-
-#### Florida Computer Graphics
-#
-
-#      Florida Computer Graphics Beacon System, using terminal emulator
-#      program "host.com", as provided by FCG.  Entry provided by
-#      David Bryant (cbosg!djb) 1/7/83.
-#      This description is for an early release of the "host" program.
-#      Known bug: ed clears the whole screen, so it's commented out.
-#
-beacon|FCG Beacon System:\
-       :am:da:db:\
-       :co#80:li#32:\
-       :al=\EE:bl=\ESTART\r\E37\r\EEND\r:ce=\ET:cl=\EZ:\
-       :cm=\E=%+ %+ :cr=^M:dc=\EW:dl=\ER:do=^J:ei=:ho=\EH:\
-       :ic=\EQ:im=:le=^H:mb=\ESTART\r\E61\0541\r\EEND\r:\
-       :me=\ESTART\r\E78\r\E70\0540\r\EEND\r:\
-       :mr=\ESTART\r\E59\0541\r\EEND\r:nd=\EV:\
-       :se=\ESTART\r\E70\0540\r\EEND\r:sf=^J:\
-       :so=\ESTART\r\E70\0546\r\EEND\r:\
-       :ti=\ESTART\r\E2\0540\r\E12\r\EEND\r:\
-       :ue=\ESTART\r\E60\0540\r\EEND\r:up=\EU:\
-       :us=\ESTART\r\E60\0541\r\EEND\r:
-
-#### Fluke
-#
-
-# The 1720a differences from ANSI: no auto margin, destructive 
-# tabs, # of lines, funny highlighting and underlining
-f1720|f1720a|fluke 1720A:\
-       :xt:\
-       :co#80:li#16:sg#1:ug#1:\
-       :bl=^G:cd=\E[J:ce=\E[K:cl=\E[;H\E[2J:cm=\E[%i%d;%dH:\
-       :cr=^M:do=\E[B:is=\E[;H\E[2J:kd=^]:kl=^_:kr=^^:ku=^\:\
-       :le=^H:nd=\E[C:se=\E[m:sf=\ED:so=\E[7m:sr=\EM:\
-       :ue=\E[m:up=\E[A:us=\E[4m:
-
-#### Liberty Electronics (Freedom)
-#
-#      Liberty Electronics
-#      48089 Fremont Blvd
-#      Fremont CA 94538
-#      Vox: (510)-623-6000
-#      Fax: (510)-623-7021
-
-# From: <faletti@berkeley.edu>
-f100|freedom|freedom100|freedom model 100:\
-       :am:bw:hs:mi:ms:xo:\
-       :co#80:li#24:\
-       :ae=\E$:al=\EE:as=\E%:bl=^G:bt=\EI:cd=\EY:ce=\ET:\
-       :ch=\E]%+ :cl=^Z:cm=\E=%+ %+ :cr=^M:ct=\E3:cv=\E[%+ :\
-       :dc=\EW:dl=\ER:do=^J:ds=\Eg\Ef\r:ei=\Er:fs=^M:ho=^^:\
-       :im=\Eq:ip=:is=\Eg\Ef\r\Ed:k1=^A@\r:k2=^AA\r:\
-       :k3=^AB\r:k4=^AC\r:k5=^AD\r:k6=^AE\r:k7=^AF\r:\
-       :k8=^AG\r:k9=^AH\r:k;=^AI\r:kB=\EI:kb=^H:kd=^V:kh=^^:\
-       :kl=^H:kr=^L:ku=^K:le=^H:nd=^L:se=\EG0:sf=^J:so=\EG4:\
-       :sr=\Ej:st=\E1:ta=^I:ts=\Eg\Ef:ue=\EG0:up=^K:us=\EG8:\
-       :vb=\Eb\Ed:
-f100-rv|freedom-rv|freedom 100 in reverse video:\
-       :is=\Eg\Ef\r\Eb:vb=\Ed\Eb:tc=f100:
-# The f110 and f200 have problems with vi(1).  They use the ^V
-# code for the down cursor key. When kcud1 is defined in terminfo
-# as ^V, the Control Character Quoting capability (^V in insert mode)
-# is lost! It cannot be remapped in vi because it is necessary to enter
-# a ^V to to quote the ^V that is being remapped!!!
-# 
-# f110 users will have to decide whether
-# to lose the down cursor key or the quoting capability. We will opt
-# initially for leaving the quoting capability out, since use of VI
-# is not generally applicable to most interactive applications
-# 
-# The same applies to f200 users, except that another option exists.
-# This option has been chosen locally. It will not be distributed unless
-# a user runs into this problem and requests assistance. Very few users,
-# if any, should run into this problem. The local solution is in
-# vifix.local.ti. The f200 has the ability to reprogram the down cursor
-# key. The key is reprogrammed to ^J (linefeed). This value is remembered
-# in non-volatile RAM, so powering the terminal off and on will not cause
-# the change to be lost. The terminfo definition for the f200 is changed
-# to identify kcud1 as ^J instead of ^V.
-f110|freedom110|Liberty Freedom 110:\
-       :am:es:hs:mi:ms:xo:\
-       :co#80:it#8:li#24:ws#80:\
-       :ae=\E%%:al=\EE:as=\E$:bl=^G:bt=\EI:cd=\EY:ce=\ET:\
-       :ch=\E]%+ :cl=^Z:cm=\E=%+ %+ :cr=^M:ct=\E3:cv=\E[%+ :\
-       :dc=\EW:dl=\ER:do=^V:ds=\Ef\r:ei=\Er\EO:fs=^M:ho=^^:\
-       :k0=^AI\r:k1=^A@\r:k2=^AA\r:k3=^AB\r:k4=^AC\r:\
-       :k5=^AD\r:k6=^AE\r:k7=^AF\r:k8=^AG\r:k9=^AH\r:kA=\EE:\
-       :kC=^^:kD=\EW:kE=\ET:kI=\EQ:kL=\ER:kS=\EY:kb=^H:\
-       :kd=^V:kl=^H:kr=^L:ku=^K:le=^H:mb=\EG2:md=\EG0:\
-       :me=\EG0:mh=\EG@:mk=\EG1:mr=\EG4:nd=^L:pf=\Ea:po=\E`:\
-       :se=\EG0:sf=^J:so=\EG<:sr=\EJ\nsmir=\EO\Eq:st=\E1:\
-       :ts=\Ef:ue=\EG0:up=^K:us=\EG8:\
-       :vb=\Eb\200\200\200\200\Ed:ve=\E.2:vi=\E.1:vs=\E.2:
-f110-14|Liberty Freedom 110 14inch:\
-       :dc@:tc=f110:
-f110-w|Liberty Freedom 110 - 132 cols:\
-       :co#132:\
-       :tc=f110:
-f110-14w|Liberty Freedom 110 14in/132 cols:\
-       :co#132:\
-       :dc@:tc=f110:
-f200|freedom200|Liberty Freedom 200:\
-       :am:es:hs:mi:ms:xo:\
-       :co#80:it#8:li#24:ws#80:\
-       :ae=\E%%:al=\EE:as=\E$:bl=^G:bt=\EI:cd=\EY:ce=\ET:\
-       :ch=\E]%+ :cl=^Z:cm=\E=%+ %+ :cr=^M:cs=\Em0%+ %+ :\
-       :ct=\E3:cv=\E[%+ :dc=\EW:dl=\ER:do=^V:ds=\Ef\r:\
-       :ei=\Er:fs=^M:ho=^^:im=\Eq:k0=^AI\r:k1=^A@\r:\
-       :k2=^AA\r:k3=^AB\r:k4=^AC\r:k5=^AD\r:k6=^AE\r:\
-       :k7=^AF\r:k8=^AG\r:k9=^AH\r:kA=\EE:kC=^^:kD=\EW:\
-       :kE=\ET:kI=\EQ:kL=\ER:kS=\EY:kb=^H:kd=^V:kl=^H:kr=^L:\
-       :ku=^K:le=^H:mb=\EG2:md=\EG0:me=\EG0:mh=\EG@:mk=\EG1:\
-       :mr=\EG4:nd=^L:pf=\Ea:po=\E`:se=\EG0:sf=^J:so=\EG<:\
-       :sr=\EJ:st=\E1:ts=\Ef:ue=\EG0:up=^K:us=\EG8:\
-       :vb=\Eo\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\En:\
-       :ve=\E.1:vi=\E.0:vs=\E.1:
-f200-w|Liberty Freedom 200 - 132 cols:\
-       :co#132:\
-       :tc=f200:
-f200vi|Liberty Freedom 200 for vi:\
-       :am:es:hs:mi:ms:xo:\
-       :co#80:it#8:li#24:ws#80:\
-       :ae=\E%%:al=\EE:as=\E$:bl=^G:bt=\EI:cd=\EY:ce=\ET:\
-       :ch=\E]%+ :cl=^Z:cm=\E=%+ %+ :cr=^M:cs=\Em0%+ %+ :\
-       :ct=\E3:cv=\E[%+ :dc=\EW:dl=\ER:do=^V:ds=\Ef\r:\
-       :ei=\Er:fs=^M:ho=^^:im=\Eq:k0=^AI\r:k1=^A@\r:\
-       :k2=^AA\r:k3=^AB\r:k4=^AC\r:k5=^AD\r:k6=^AE\r:\
-       :k7=^AF\r:k8=^AG\r:k9=^AH\r:kA=\EE:kC=^^:kD=\EW:\
-       :kE=\ET:kI=\EQ:kL=\ER:kS=\EY:kb=^H:kd=^J:kl=^H:kr=^L:\
-       :ku=^K:le=^H:mb=\EG2:md=\EG0:me=\EG0:mh=\EG@:mk=\EG1:\
-       :mr=\EG4:nd=^L:pf=\Ea:po=\E`:se=\EG0:sf=^J:so=\EG<:\
-       :sr=\EJ:st=\E1:ts=\Ef:ue=\EG0:up=^K:us=\EG8:\
-       :vb=\Eb\200\200\200\200\Ed:ve=\E.1:vi=\E.0:vs=\E.1:
-f200vi-w|Liberty Freedom 200 - 132 cols for vi:\
-       :co#132:\
-       :tc=f200vi:
-
-#### GraphOn (go)
-#
-#      Graphon Corporation
-#      544 Division Street
-#      Campbell, CA 95008
-#      Vox: (408)-370-4080
-#      Fax: (408)-370-5047
-#      Net: troy@graphon.com (Troy Morrison)
-#
-#
-# The go140 and go225 have been discontinued.  GraphOn now makes X terminals,
-# including one odd hybrid that starts out life on power-up as a character
-# terminal, than can be switched to X graphics mode (driven over the serial
-# line) by an escape sequence.  No info on this beast yet.
-
-# (go140: mapped ":pt:" to default tabs -- esr)
-go140|graphon go-140:\
-       :bs:pt:\
-       :co#80:li#24:\
-       :al=\E[L:cd=10\E[J:ce=\E[K:cl=10\E[;H\E[2J:\
-       :cm=\E[%i%2;%2H:dc=\E[P:dl=\E[M:ei=\E[4l:\
-       :if=/usr/share/tabset/vt100:im=\E[4h:\
-       :is=\E<\E=\E[?3l\E[?7l\E(B\E[J\E7\E[;r\E8\E[m\E[q:\
-       :k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:kd=\EOB:\
-       :ke=\E[?1l\E>:kh=\E[H:kl=\EOD:kr=\EOC:ks=\E[?1h\E=:\
-       :ku=\EOA:nd=\E[C:se=\E[m:so=\E[7m:sr=\EM:ue=\E[m:\
-       :up=\E[A:us=\E[4m:
-go140w|graphon go-140 in 132 column mode:\
-       :co#132:\
-       :is=\E<\E=\E[?3h\E[?7h\E(B\E[J\E7\E[;r\E8\E[m\E[q:tc=go140:
-# Hacked up vt200 termcap to handle GO-225/VT220
-# From: <edm@nwnexus.WA.COM>
-# (go225: mapped ":pt:" to default tabs -- esr)
-go225|go-225|Graphon 225:\
-       :am:bs:mi:pt:xn:\
-       :co#80:li#25:vt#3:\
-       :al=\E[L:cd=\E[J:ce=\E[K:cl=\E[H\E[J:cm=\E[%i%d;%dH:\
-       :cs=\E[%i%d;%dr:dc=\E[P:dl=\E[M:do=^J:ei=\E[4l:\
-       :ho=\E[H:im=\E[4h:\
-       :is=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h:k1=\EOP:\
-       :k2=\EOQ:k3=\EOR:k4=\EOS:kb=^H:kd=\E[B:ke=\E>:\
-       :kh=\E[H:kl=\E[D:kr=\E[C:ks=\E=:ku=\E[A:le=^H:\
-       :mb=\E[5m:md=\E[1m:me=\E[m:mr=\E[7m:nd=\E[C:rc=\E8:\
-       :rf=/usr/share/tabset/vt100:rs=\E[!p\E[?7h\E[2;1;1#w:\
-       :sc=\E7:se=\E[27m:sf=\ED:so=\E[7m:sr=\EM:\
-       :te=\E[!p\E[?7h\E[2;1;1#w:ti=\E[2;0#w\E[1;25r:\
-       :ue=\E[24m:up=\E[A:us=\E[4m:
-
-#### Harris (Beehive)
-#
-# Bletch.  These guys shared the Terminal Brain Damage laurels with Hazeltine.
-# Their terminal group is ancient history now (1995) though the parent
-# company is still in business.
-#
-
-# Beehive documentation is undated and marked Preliminary and has no figures
-# so we must have early Superbee2 (Model 600, according to phone conversation
-# with mfr.). It has proved reliable except for some missing padding
-# (notably after \EK and nl at bottom of screen).
-# 
-# The key idea is that AEP mode is poison for cup & that US's in 
-# the local memory should be avoided like the plague. That means 
-# that the 2048 character local buffer is used as 25 lines of 80 
-# characters, period. No scrolling local memory, folks. It also 
-# appears that we cannot use naked INS LINE feature since it uses
-# US. The sbi fakes il1 with an 80-space insert that may be too 
-# slow at low speeds; also spaces get converted to \040 which is 
-# too long for some programs (not vi).  DEL LINE is ok but slow.
-# 
-# The nl string is designed for last line of screen ONLY; cup to 
-# 25th line corrects the motion inherent in scrolling to Page 1.
-# 
-# There is one understood bug. It is that the screen appears to
-# pop to a new (blank) page after a nel, or leave a half-line 
-# elipsis to a quad that is the extra 48 memory locations. The 
-# data received is dumped into memory but not displayed.  Not to 
-# worry if cup is being used; the lines not displayed will be, 
-# whenever the cursor is moved up there. Since cup is addressed 
-# relative to MEMORY of window, nothing is lost; but beware of 
-# relative cursor motion (cuu1,cud1,cuf1,cub1). Recommended, therefore, 
-# is setenv MORE -c .
-# 
-# WARNING: Not all features tested.
-# 
-# Timings are assembled from 3 sources. Some timings may reflect 
-# SB2/Model 300 that were used if more conservative.
-# Tested on a Model 600 at 1200 and 9600 bd.
-# 
-# The BACKSPACEkb option is cute. The NEWLINE key, so cleverly 
-# placed on the keyboard and useless because of AEP, is made 
-# into a backspace key. In use ESC must be pressed twice (to send)
-# and sending ^C must be prefixed by ESC to avoid that wierd 
-# transmit mode associated with ENTER key.
-# 
-# IF TERMINAL EVER GOES CATATONIC with the cursor buzzing across 
-# the screen, then it has dropped into ENTER mode; hit 
-# RESET--ONLINE--!tset.
-# 
-# As delivered this machine has a FATAL feature that will throw 
-# it into that strange transmit state (SPOW) if the space bar is 
-# hit after a CR is received, but before receiving a LF (or a 
-# few others).
-# 
-# The circuits MUST be modified to eliminate the SPOW latch. 
-# This is done by strapping on chip A46 of the I/O board; cut 
-# the p.c. connection to Pin 5 and strap Pin 5 to Pin 8 of that 
-# chip. This mod has been checked out on a Mod 600 of Superbee II.
-# With this modification absurdly high timings on cr are 
-# unnecessary.
-# 
-# NOTE WELL that the rear panel switch should be set to CR/LF, 
-# not AEP!
-#
-sb1|beehive superbee:\
-       :am:bw:da:db:mi:ul:xb:\
-       :co#80:li#25:sg#1:ug#1:\
-       :al=\EN\EL\EQ                                                                                \EP \EO\ER\EA:\
-       :bl=^G:bt=\E`:cd=\EJ:ce=\EK:cl=\EH\EJ:cm=\EF%r%03%03:\
-       :cr=\r:ct=\E3:dc=\EP:dl=\EM:do=^J:ei=\ER:ho=\EH:\
-       :im=\EQ\EO:is=\EE\EX\EZ\EO\Eb\Eg\ER:k0=\E2:k1=\Ep:\
-       :k2=\Eq:k3=\Er:k4=\Es:k5=\Et:k6=\Eu:k7=\Ev:k8=\Ew:\
-       :k9=\E1:kE=\EK:kI=\EQ\EO:kL=\EM:kM=\ER:kS=\EJ:kb=^_:\
-       :kd=\EB:kh=\EH:kl=\ED:kr=\EC:ku=\EA:l0=TAB CLEAR:\
-       :l9=TAB SET:le=^H:nd=\EC:se=\E_3:sf=^J:so=\E_1:\
-       :st=\E1:ta=^I:ti=\EO:ue=\E_3:up=\EA:us=\E_0:
-sbi|superbee|beehive superbee at Indiana U.:\
-       :xb:\
-       :al=1\EN\EL\EQ \EP \EO\ER\EA:cr=\r:tc=sb1:
-# Alternate (older) description of Superbee - f1=escape, f2=^C.
-# Note: there are at least 3 kinds of superbees in the world.  The sb1
-# holds onto escapes and botches ^C's.  The sb2 is the best of the 3.
-# The sb3 puts garbage on the bottom of the screen when you scroll with
-# the switch in the back set to CRLF instead of AEP.  This description
-# is tested on the sb2 but should work on all with either switch setting.
-# The f1/f2 business is for the sb1 and the xsb can be taken out for
-# the other two if you want to try to hit that tiny escape key.
-# This description is tricky: being able to use cup depends on there being
-# 2048 bytes of memory and the hairy nl string.
-superbee-xsb|beehive super bee:\
-       :am:bs:da:db:pt:xb:\
-       :co#80:dC#10:it#8:li#25:\
-       :cd=\EJ:ce=\EK:cl=\EH\EJ:cm=\EF%r%3%3:cr=\r:ct=\E3:\
-       :dc=\EP:dl=\EM:do=^J:ho=\EH:is=\EH\EJ:k1=\Ep:k2=\Eq:\
-       :k3=\Er:k4=\Es:k5=\Et:k6=\Eu:k7=\Ev:k8=\Ew:kd=\EB:\
-       :kh=\EH:kl=\ED:kr=\EC:ku=\EA:le=^H:nd=\EC:\
-       :nl=\n\200\200\200\n\200\200\200\EA\EK\200\200\200\ET\ET:\
-       :se=\E_3:\
-       :sf=\n\200\200\200\n\200\200\200\EA\EK\200\200\200\ET\ET:\
-       :so=\E_1:st=\E1:up=\EA:ve=^J:
-# This loses on lines > 80 chars long, use at your own risk
-superbeeic|super bee with insert char:\
-       :ei=\ER:ic=:im=\EQ:tc=superbee-xsb:
-sb2|sb3|fixed superbee:\
-       :xb@:\
-       :tc=superbee:
-
-# Reports are that most of these Beehive entries (except superbee) have not
-# been tested and do not work right.  :se: is a trouble spot.  Be warned.
-
-# (bee: removed obsolete ":ko=al,bt,ce,cl,dc,dl,ei,ho,ic,im:" -- esr)
-beehive|bee|harris beehive:\
-       :am:bs:mi:\
-       :co#80:li#24:\
-       :al=\EL:bt=\E>:cd=\EJ:ce=\EK:cl=\EE:cm=\EF%+ %+ :\
-       :dc=\EP:dl=\EM:do=\EB:ei=\E@:ho=\EH:ic=:im=\EQ:kb=^H:\
-       :kd=\EB:kh=\EH:kl=\ED:kr=\EC:ku=\EA:nd=\EC:se=\Ed@:\
-       :so=\EdP:ue=\Ed@:up=\EA:us=\Ed`:
-# set tab is ^F, clear (one) tab is ^V, no way to clear all tabs.
-# good grief - does this entry make sg/ug when it doesn't have to?
-# look at those spaces in se/so.  Seems strange to me...
-# (bh3m: mapped ":pt:" to default tabs -- esr)
-beehive3|bh3m|beehiveIIIm:\
-       :am:bs:pt:\
-       :co#80:li#20:\
-       :al=\023:bl=^G:cd=^R:ce=^P:cl=^E^R:cr=^M:dl=\021:\
-       :do=^J:ho=^E:if=/usr/share/tabset/beehive:le=^H:\
-       :ll=^E^K:nd=^L:se= ^_:sf=^J:so=^] :ta=^I:up=^K:
-beehive4|bh4|beehive 4:\
-       :am:\
-       :co#80:li#24:\
-       :bl=^G:cd=\EJ:ce=\EK:cl=\EE:cr=^M:do=^J:ho=\EH:\
-       :le=\ED:nd=\EC:sf=^J:up=\EA:
-# (microb: mapped ":pt:" to default tabs -- esr)
-microb|microbee|micro bee series:\
-       :am:bs:pt:\
-       :co#80:li#24:\
-       :bl=^G:cd=\EJ:ce=\EK:cl=\EE:cm=\EF%+ %+ :cr=^M:do=^J:\
-       :k1=\Ep:k2=\Eq:k3=\Er:k4=\Es:k5=\Et:k6=\Eu:k7=\Ev:\
-       :k8=\Ew:k9=\Ex:kd=\EB:kh=\EH:kl=\ED:kr=\EC:ku=\EA:\
-       :le=^H:nd=\EC:se=\Ed@ :sf=^J:so= \EdP:ta=^I:ue=\Ed@:\
-       :up=\EA:us=\Ed`:
-
-# 8675, 8686, and bee from Cyrus Rahman
-# (8675: changed k10, k11...k16 to k;, F1...F6 -- esr)
-ha8675|harris 8675:\
-       :F1=^W:F2=\ER:F3=\EE:F4=\EI:F5=\Ei:F6=\Eg:\
-       :is=\ES\E#\E*\Eh\Em\E?\E1\E9\E@\EX\EU:k1=^F:k2=^P:\
-       :k3=^N:k4=^V:k5=^J:k6=^T:k7=^H:k8=\177:k9=\Ee:k;=\Ed:tc=bee:
-# (8686: changed k10, k11...k16 to k;, F1...F6; fixed broken continuation
-# in :is: -- esr)
-ha8686|harris 8686:\
-       :F1=\EW:F2=\002\E{\003:F3=\002\E|\003:F4=\002\E}\003:\
-       :F5=\002\E~\003:F6=\002\E\177\003:\
-       :is=\ES\E#\E*\Eh\Em\E?\E1\E9\E@\EX\EU\E"*Z01\E"8F35021B7C83#\E"8F45021B7D83#\E"8F55021B7E83#\E"8F65021B7F83#\E"8F75021B7383#\E"8F851BD7#\E"8F95021B7083#\E"8FA5021B7183#\E"8FB5021B7283#:\
-       :k1=\002\Ep\003:k2=\002\Eq\003:k3=\002\Er\003:\
-       :k4=\002\Es\003:k5=\E3:k6=\EI:k7=\ER:k8=\EJ:k9=\E(:\
-       :k;=\Ej:tc=bee:
-
-#### Hazeltine
-#
-# Hazeltine appears to be out of the business now (1995).  These guys were 
-# co-owners of the Terminal Brain Damage Hall Of Fame along with Harris.
-# Good riddance.
-#
-# The ony contact information I have dates from 1993 and is:
-#
-# Customer Service Division
-# 15 Law Drive
-# P.O. Box 2076
-# Fairfield, NJ 07007-2078
-#
-# Since :nd: is blank, when you want to erase something you
-# are out of luck.  You will have to do ^L's a lot to
-# redraw the screen.  h1000 is untested.  It doesn't work in
-# vi - this terminal is too dumb for even vi.  (The code is
-# there but it isn't debugged for this case.)
-h1000|hazeltine 1000:\
-       :bs:\
-       :co#80:li#12:\
-       :bl=^G:cl=^L:cr=^M:do=^J:ho=^K:le=^H:nd= :sf=^J:
-# From: <cbosg!ucbvax!pur-ee!cincy!chris> Thu Aug 20 09:09:18 1981
-h1420|hazeltine 1420:\
-       :am:bs:\
-       :co#80:li#24:\
-       :al=\E^Z:bl=^G:cd=\E^X:ce=\E^O:cl=\E^\:\
-       :cm=\E\021%r%.%+ :cr=^M:dl=\E^S:do=^J:le=^H:nd=^P:\
-       :se=\E^Y:sf=^J:so=\E^_:ta=^N:up=\E^L:
-# New "safe" cursor movement (11/87) from cgs@umd5.umd.edu.  Prevents freakout
-# with out-of-range args and tn3270.  No hz since it needs to receive ~'s.
-h1500|hazeltine 1500:\
-       :am:bs:hz:\
-       :co#80:li#24:\
-       :al=~\032:bl=^G:cd=~\030:ce=~^O:cl=~^\:\
-       :cm=~\021%r%>^^ %+`%+`:cr=^M:dl=~\023:do=~^K:ho=~^R:\
-       :kd=^J:kh=~^R:kl=^H:kr=^P:ku=~^L:le=^H:nd=^P:se=~^Y:\
-       :sf=^J:so=~^_:up=~^L:
-# h1510 assumed to be in sane escape mode.  Else use h1500.
-# (h1510: early versions of this entry apparently had ":se=\E^_:so=\E^Y:",
-# but these caps were commented out in 8.3; also, removed incorrect
-# and overridden ":do=^J:" -- esr)
-h1510|hazeltine 1510:\
-       :am:bs:\
-       :co#80:li#24:\
-       :al=\E^Z:bl=^G:cd=\E^X:ce=\E^O:cl=\E^\:\
-       :cm=\E\021%r%.%.:cr=^M:dl=\E^S:do=\E^K:le=^H:nd=^P:\
-       :sf=^J:up=\E^L:
-# (h1520: removed incorrect and overridden ":do=^J:" -- esr)
-h1520|hazeltine 1520:\
-       :am:bs:hz:\
-       :co#80:li#24:\
-       :al=~^Z:bl=^G:cd=~^X:ce=~^O:cl=~^\:cm=~\021%r%.%.:\
-       :cr=^M:dl=~^S:do=~^K:ho=~^R:le=^H:nd=^P:se=~^Y:sf=^J:\
-       :so=~^_:up=~^L:
-# Note: the h1552 appears to be the first Hazeltine terminal which
-# is not braindamaged.  It has tildes and backprimes and everything!
-# Be sure the auto lf/cr switch is set to cr.
-h1552|hazeltine 1552:\
-       :al=\EE:dl=\EO:do=^J:k1=\EP:k2=\EQ:k3=\ER:l1=blue:\
-       :l2=red:l3=green:tc=vt52:
-h1552rv|hazeltine 1552 reverse video:\
-       :do=^J:se=\ET:so=\ES:tc=h1552:
-# Note: h2000 won't work well because of a clash between upper case and ~'s.
-h2000|hazeltine 2000:\
-       :am:bs:nc:\
-       :co#74:li#27:\
-       :al=~\032:bl=^G:cl=~\034:cm=~\021%r%.%.:dl=~\023:\
-       :do=^J:ho=~^R:le=^H:pc=\177:sf=^J:
-# Date: Fri Jul 23 10:27:53 1982.  Some unknown person wrote:
-# I tested this termcap entry for the Hazeltine Esprit with vi. It seems
-# to work ok. There is one problem though if one types a lot of garbage
-# characters very fast vi seems not able to keep up and hangs while trying
-# to insert. That's in insert mode while trying to insert in the middle of
-# a line. It might be because the Esprit doesn't have insert char and delete
-# char as a built in function. Vi has to delete to end of line and then 
-# redraw the rest of the line.
-esprit|Hazeltine Esprit I:\
-       :am:bw:\
-       :co#80:li#24:\
-       :al=\E^Z:bl=^G:bt=\E^T:cd=\E^W:ce=\E^O:cl=\E^\:\
-       :cm=\E\021%r%.%.:cr=^M:dl=\E^S:do=\E^K:ho=\E^R:\
-       :is=\E?:k0=^B0^J:k1=^B1^J:k2=^B2^J:k3=^B3^J:k4=^B4^J:\
-       :k5=^B5^J:k6=^B6^J:k7=^B7^J:k8=^B8^J:k9=^B9^J:kb=^H:\
-       :kd=\E^K:ke=\E>:kh=\E^R:kl=^H:kr=^P:ks=\E<:ku=\E^L:\
-       :l0=0:l1=1:l2=2:l3=3:l4=4:l5=5:l6=6:l7=7:l8=8:l9=9:\
-       :le=^H:nd=^P:se=\E^Y:sf=^J:so=\E^_:up=\E^L:
-esprit-am|hazeltine esprit auto-margin:\
-       :am:\
-       :tc=esprit:
-
-#### IBM
-#
-
-ibm327x|line mode IBM 3270 style:\
-       :gn:\
-       :ce=^M:cl=^M^J:ho=^M:
-# From: J.B. Nicholson-Owens <jeffo@uiuc.edu> 8 Mar 94
-ibm3101|i3101|IBM 3101-10:\
-       :am:bs:pt:xo:\
-       :co#80:li#24:\
-       :bl=^G:cd=\EJ:ce=\EI:cl=\EK:cm=\EY%+ %+ :cr=^M:\
-       :ct=\E1:do=^J:ho=\EH:if=/usr/share/tabset/ibm3101:\
-       :kb=^H:kd=\EB:kl=\ED:kr=\EC:ku=\EA:le=^H:nd=\EC:\
-       :nw=^M^J:sf=^J:st=\E0:ta=^I:up=\EA:
-#   Received from the IBM terminals division (given to DRB)
-#   June 1988 for PS/2 OS 2.2.3 cut
-ibm3151|i3151:\
-       :me=\E4@:\
-       :..sa=\E4%{64}%?%p1%{0}%>%p1%{4}%<%&%t%{8}%|%;%?%p1%{7}%=%t%{16}%|%;%?%p2%t%{1}%|%;%?%p3%t%{4}%|%;%?%p4%t%{2}%|%;%c:\
-       :se=\E4@:so=\E4A:ue=\E4@:us=\E4B:tc=ibm3163:
-# From: Mark Easter <marke@fsi-ssd.csg.ssd.fsi.com> 29 Oct 1992 
-# I commented out some IBM extensions.
-ibm3161|ibm3163|wy60-316X|wyse60-316X|IBM 3161/3163 display:\
-       :am:mi:ms:\
-       :co#80:it#8:li#24:\
-       :F1=\Ek\r:F2=\El\r:F3=\E!a\r:F4=\E!b\r:F5=\E!c\r:\
-       :F6=\E!d\r:F7=\E!e\r:F8=\E!f\r:F9=\E!g\r:FA=\E!h\r:\
-       :FB=\E!i\r:FC=\E!j\r:FD=\E!k\r:FE=\E!l\r:bl=^G:\
-       :cd=\EJ:ce=\EI:cl=\EH\EJ:cm=\EY%+ %+ :cr=^M:dc=\EQ:\
-       :dl=\EO:do=\EB:ho=\EH:k1=\Ea\r:k2=\Eb\r:k3=\Ec\r:\
-       :k4=\Ed\r:k5=\Ee\r:k6=\Ef\r:k7=\Eg\r:k8=\Eh\r:\
-       :k9=\Ei\r:k;=\Ej\r:kA=\EN:kC=\EL\r:kD=\EQ:kE=\EI:\
-       :kI=\EP \010:kL=\EO:kS=\EJ:kT=\E0:ka=\E 1:kb=^H:\
-       :kd=\EB:kh=\EH:kl=\ED:kr=\EC:kt=\E1:ku=\EA:le=\ED:\
-       :mb=\E4D:md=\E4H:me=\E4@\E<@:mk=\E4P:mr=\E4A:nd=\EC:\
-       :..sa=\E4%'@'%?%p1%t%'A'%|%;\n%?%p2%t%'B'%|%;\n%?%p3%t%'A'%|%;\n%?%p4%t%'D'%|%;\n%?%p5%t%'@'%|%;\n%?%p6%t%'H'%|%;\n%?%p7%t%'P'%|%;%c\n%?%p9%t\E>A%e\E<@%;:\
-       :se=\E4@:sf=^J:so=\E4A:te=\E>A:ti=\E>A:ue=\E4@:\
-       :up=\EA:us=\E4B:
-
-# How the 3164 sgr string works:
-#      %{32}           # push space for no special video characteristics
-#      %?%p2%t%{1}%|%; # if p2 set, then OR the 1 bit for reverse
-#      %?%p3%t%{4}%|%; # if p3 set, then OR the 4 bit for blink
-#      %?%p4%t%{2}%|%; # if p4 set, then OR the 2 bit for underline
-#      %c              # pop Pa1
-#      %{39}%p1%-      # calculate 32 + (7 - p1) for foreground
-#      %c              # pop Pa2 
-#      %{64}           # use only black background for now
-#      %c              # pop Pa3
-ibm3164|i3164|3164:\
-       :mb=\E4D:md=\E4H:me=\E4@:\
-       :..sa=\E4%{32}%?%p2%t%{1}%|%;%?%p3%t%{4}%|%;%?%p4%t%{2}%|%;%c%{39}%p1%-%c%{64}%c:tc=ibm3163:
-
-# (ibmaed: mapped ":pt:" to default tabs -- esr)
-ibmaed|IBM Experimental display:\
-       :am:bs:eo:ms:pt:\
-       :co#80:li#52:\
-       :al=\EN:cd=\EJ:ce=\EI:cl=\EH\EK:cm=\EY%+ %+ :dc=\EQ:\
-       :dl=\EO:do=\EB:ei=:ho=\EH:ic=\EP:im=:kb=^H:kd=\EB:\
-       :kl=\ED:kr=\EC:ku=\EA:nd=\EC:se=\E0:so=\E0:ue=:\
-       :up=\EA:us=:vb=\EG:
-ibm-apl|apl|IBM apl terminal simulator:\
-       :li#25:\
-       :tc=dm1520:
-# (ibmmono: this had an unknown `sb' boolean, I changed it to `bs'.  
-# Also it had ":I0=f10:" which pretty obviously should be "l0=f10" -- esr)
-ibmmono|ibm5151|IBM workstation monochrome:\
-       :bs:es:hs:\
-       :al=\EL:dl=\EM:ds=\Ej\EY8 \EI\Ek:fs=\Ek:k0=\E<:\
-       :k1=\ES:k2=\ET:k3=\EU:k4=\EV:k5=\EW:k6=\EP:k7=\EQ:\
-       :k8=\ER:k9=\EY:kF=\EE:kI=\200:kN=\EE:kP=\Eg:kR=\EG:\
-       :kb=^H:kh=\EH:l0=f10:md=\EZ:me=\Ew\Eq\Ez\EB:\
-       :mk=\EF\Ef0;\Eb0;:mr=\Ep:se=\Ez:so=\EZ:sr=\EA:\
-       :ts=\Ej\EY8%+ \Eo:ue=\Ew:us=\EW:tc=ibm3101:
-ibmega-c|ibm5154-c|IBM Enhanced Color Display:\
-       :se=\EB:so=\EF\Ef3;:ue=\EB:us=\EF\Ef2;:tc=ibmmono:
-# ibmapa* and ibmmono entries come from ACIS 4.3 distribution
-rtpc|ibmapa16|ibm6155|IBM 6155 Extended Monochrome Graphics Display:\
-       :li#32:\
-       :ds=\Ej\EY@ \EI\Ek:ts=\Ej\EY@%+ \Eo:tc=ibmmono:
-# Advanced Monochrome (6153) and Color (6154) Graphics Display:
-ibmapa8c|ibmapa8|ibm6154|ibm6153|IBM 6153/4 Advanced Graphics Display:\
-       :li#31:\
-       :ds=\Ej\EY? \EI\Ek:ts=\Ej\EY?%+ \Eo:tc=ibmmono:
-ibmapa8c-c|ibm6154-c|IBM 6154 Advanced Color Graphics Display:\
-       :li#31:\
-       :ds=\Ej\EY? \EI\Ek:mh=\EF\Ef7;:ts=\Ej\EY?%+ \Eo:tc=ibmega-c:
-# From: Marc Pawliger <marc@ibminet.awdpa.ibm.com>
-# also in /usr/lpp/bos/bsdsysadmin.
-# (hft-c: this entry had :kb=\E[D:kf=\E[C: on the line with ku/kd/kh; this was
-# pretty obviously mislabeled for :le: and :nd:; also ":ul=\E[4m:" was clearly
-# a typo for ":us=\E[4m:"; also ":el=\E[K:" was a typo for ":ce=\E[K:".
-# There was an unknown boolean ":ht:" which I assume was meant to set 
-# hardware tabs, so I have insrted it#8. Finally, "ac=^N" paired with the
-# ae looked like a typo for ":as=^N:" -- esr)
-ibm8512|ibm8513|hft-c|IBM High Function Terminal:\
-       :am:mi:ms:\
-       :co#80:it#8:li#25:\
-       :AL=\E[%dL:DL=\E[%dM:ae=^O:al=\E[L:as=^N:cd=\E[J:\
-       :ce=\E[K:cl=\E[H\E[J:cm=\E[%i%d;%dH:dl=\E[M:dm=\E[4h:\
-       :do=^J:ec=\E[%dX:ed=\E[4l:ei=\E[4l:ho=\E[H:im=\E[4h:\
-       :is=\Eb\E[m\017\E[?7h:k0=\E[010q:k1=\E[001q:\
-       :k2=\E[002q:k3=\E[003q:k4=\E[004q:k5=\E[005q:\
-       :k6=\E[006q:k7=\E[007q:k8=\E[008q:k9=\E[009q:kd=\E[B:\
-       :kh=\E[H:ku=\E[A:le=\E[D:mb=\E[5m:md=\E[1m:me=\E[m:\
-       :mr=\E[7m:nd=\E[C:rc=\E[u:\
-       :rs=\Eb\E[m\017\E[?7h\E[H\E[J:sc=\E[s:se=\E[m:\
-       :so=\E[7m:te=\E[20h:ti=\E[20;4l\E[?7h\Eb:ue=\E[m:\
-       :up=\E[A:us=\E[4m:
-hft|AIWS High Function Terminal:\
-       :am:xo:\
-       :co#80:li#25:\
-       :al=\E[L:bl=^G:cd=\E[J:ce=\E[K:cl=\E[H\E[2J:\
-       :cm=\E[%i%d;%dH:cr=^M:dc=\E[P:dl=\E[M:do=^J:ei=\E6:\
-       :ho=\E[H:ic=\E[@:im=\E6:k1=\E[001q:k2=\E[002q:\
-       :k3=\E[003q:k4=\E[004q:k5=\E[005q:k6=\E[006q:\
-       :k7=\E[007q:k8=\E[008q:k9=\E[009q:kN=\E[153q:\
-       :kP=\E[159q:ka=\E[010q:kb=^H:kd=\E[B:kh=\E[H:kl=\E[D:\
-       :kr=\E[C:ku=\E[A:le=^H:mb=\E[5m:md=\E[1m:me=\E[0m:\
-       :mk=\E[8m:mr=\E[7m:nd=\E[C:se=\E[m:sf=^J:so=\E[7m:\
-       :ta=^I:ue=\E[m:up=\E[A:us=\E[4m:
-# From: <pryor@math.berkeley.edu>
-ibm5081|ibmmpel|IBM 5081 1024x1024 256/4096 color display:\
-       :es:hs:\
-       :li#33:\
-       :ds=\Ej\EYA \EI\Ek:fs=\Ek:ts=\Ej\EYA%+ \Eo:tc=ibmmono:
-ibm5081-c|ibmmpel-c|IBM 5081 1024x1024 256/4096 enhanced color display:\
-       :es:hs:\
-       :li#33:\
-       :ds=\Ej\EYA \EI\Ek:fs=\Ek:ts=\Ej\EYA%+ \Eo:tc=ibmega-c:
-ibm-system1|system1|ibm system/1 computer:\
-       :am:xt:\
-       :co#80:li#24:\
-       :bl=^G:cl=^Z:cm=\005%+ %+ :ho=^K:le=^H:nd=^\:sf=^J:\
-       :up=^^:
-
-#### Infoton/General Terminal Corp.
-#
-
-# gt100 sounds like something DEC would come out with.  Let's hope they don't.
-i100|gt100|gt100a|General Terminal 100A (formerly Infoton 100):\
-       :am:bs:\
-       :co#80:li#24:\
-       :al=\EL:bl=^G:cd=\EJ:ce=\EK:cl=^L:cm=\Ef%r%+ %+ :\
-       :cr=^M:dl=\EM:do=^J:ho=\EH:le=^H:nd=\EC:se=\Ea:sf=^J:\
-       :so=\Eb:up=\EA:vb=\Eb\Ea:
-i400|infoton 400:\
-       :am:bs:\
-       :co#80:li#25:\
-       :al=\E[L:bl=^G:ce=\E[N:cl=\E[2J:cm=%i\E[%3;%3H:cr=^M:\
-       :dc=\E[4h\E[2Q\E[P\E[4l\E[0Q:dl=\E[M:do=^J:\
-       :ei=\E[4l\E[0Q:im=\E[4h\E[2Q:le=^H:nd=\E[C:sf=^J:\
-       :up=\E[A:
-# (addrinfo: removed obsolete ":bc=^Z:" -- esr)
-addrinfo:\
-       :am:\
-       :co#80:li#24:\
-       :bl=^G:cd=^K:cl=^L:..cm=\037%p1%{1}%-%c%p2%{1}%-%c:\
-       :cr=^M:do=^J:ho=^H:le=^Z:ll=^H^\:nd=^Y:sf=^J:up=^\:
-infoton:\
-       :am:\
-       :Nl#0:co#80:lh#0:li#24:lw#0:\
-       :bl=^G:cd=^K:cl=^L:cr=^M:do=^J:le=^Z:ll=^H^\:nd=^Y:\
-       :sf=^J:up=^\:
-# (infotonKAS: removed obsolete ":bc=^Z:" -- esr)
-infotonKAS:\
-       :am:\
-       :co#80:li#24:\
-       :bl=^G:cd=^K:cl=^L:cr=^M:do=^J:le=^Z:ll=^H^\:nd=^Y:\
-       :sf=^J:up=^\:
-
-#### Interactive Systems Corp
-#
-# ISC used to sell OEMed and customized hardware to support ISC UNIX.
-# ISC UNIX still exists in 1995, but ISC itself is no more; they got
-# bought out by Sun.
-#
-
-# From: <cithep!eric>  Wed Sep 16 08:06:44 1981
-# (intext: removed obsolete ":ma=^K^P^R^L^L :";
-# mapped ":pt:" to default tabs, removed obsolete ":bc=^_:", also the
-# ":le=^_:" later overridden -- esr)
-intext|Interactive Systems Corporation modified owl 1200:\
-       :am:\
-       :co#80:li#24:sg#1:\
-       :al=\020:bl=^G:bt=^Y:cd=\026J:ce=^Kp^R:cl=\014:\
-       :cm=\017%+ %+ :cr=^M:dc=\022:dl=\021:do=^J:ei=^V<:\
-       :im=^V;:ip=:k0=^VJ\r:k1=^VA\r:k2=^VB\r:k3=^VC\r:\
-       :k4=^VD\r:k5=^VE\r:k6=^VF\r:k7=^VG\r:k8=^VH\r:\
-       :k9=^VI\r:kb=^H:kd=^J:ke=^V9:kh=^Z:kl=^_:kr=^^:\
-       :ks=\036\072\264\026%:ku=^\:le=^H:nd=^^:se=^V# :\
-       :sf=^J:so=^V$\054:ta=^I:up=^\:
-intext2|intextii|INTERACTIVE modified owl 1251:\
-       :am:bw:ul:\
-       :co#80:li#24:sg#0:\
-       :al=\E[L:bl=^G:bt=\E[Z:cd=\E[J:ce=\E[K:ch=\E[%+^AG:\
-       :cl=\E[H\E[2J:cm=\E[%i%d;%dH:cr=^M:dc=\E[P:dl=\E[M:\
-       :do=\E[B:ei=:ic=\E[@:im=:k0=\E@\r:k1=\EP\r:k2=\EQ\r:\
-       :k3=\ES\r:k4=\ET\r:k5=\EU\r:k6=\EV\r:k7=\EW\r:\
-       :k8=\EX\r:k9=\EY\r:kb=^H:kd=\EB\r:kh=\ER\r:kl=\ED\r:\
-       :kr=\EC\r:ku=\EA\r:l0=REFRSH:l1=DEL CH:l2=TABSET:\
-       :l3=GOTO:l4=+PAGE:l5=+SRCH:l6=-PAGE:l7=-SRCH:l8=LEFT:\
-       :l9=RIGHT:nd=\E[C:se=\E[2 D:sf=\E[S:so=\E[6 D:\
-       :sr=\E[T:ta=^I:ue=\E[2 D:up=\E[A:us=\E[18 D:\
-       :vb=\E[;;;;;;;;;2;;u\E[;;;;;;;;;1;;u:
-
-#### Kimtron (abm, kt)
-#
-# Kimtron entries include (undocumented) codes for: enter dim mode (:mh:),
-# enter bold mode (:md:), enter reverse mode (:mr:), turn off all attributes
-# (:me:).
-
-# Kimtron ABM 85 added by Dual Systems
-# (abm85: mapped ":pt:" to default tabs; removed duplicated ":kd=^J:" -- esr)
-abm85|Kimtron ABM 85:\
-       :am:bs:bw:ms:pt:\
-       :co#80:li#24:sg#1:ug#1:\
-       :al=\EE:bt=\EI:cd=\Ey:ce=\Et:cl=\E*:cm=\E=%+ %+ :\
-       :dc=\EW:dl=\ER:do=^J:ei=\Er:\
-       :if=/usr/share/tabset/stdcrt:im=\EQ:\
-       :is=\EC\EX\Eg\En\E%\Er\E(\Ek\Em\Eq:kb=^H:kd=^J:kh=^^:\
-       :kl=^H:kr=^L:ku=^K:nd=^L:se=\Ek:so=\Ej:ue=\Em:up=^K:\
-       :us=\El:
-# Kimtron ABM 85H added by Dual Systems.
-# Some notes about the 85h entries:
-# 1) there are several firmware revs of 85H in the world. Use o85h for
-#    firmware revs prior to SP51
-# 2) Make sure to use 85h entry if the terminal is in 85H mode and the
-#    85e entry if it is in 920 emulation mode. They are incompatible in
-#    some places and NOT software settable i.e., :is: can't fix change it)
-# 3) In 85h mode, the arrow keys and special functions transmit when
-#    the terminal is in dup-edit, and work only locally in local-edit.
-#    Vi won't swallow `del char' for instance, but :vs: turns on
-#    dup-edit anyway so that the arrow keys will work right. If the
-#    arrow keys don't work the way you like, change :vs:, :ve:, and :is:.
-#    920E mode does not have software commands to toggle between dup
-#    and local edit, so you get whatever was set last on the terminal.
-# 4) :vb: attribute is nice, but seems too slow to work correctly (\Eb<pad>\Ed)
-# 5) Make sure `hidden' attributes are selected. If `embedded' attributes
-#    are selected, the entries :sg@: and :ug@: should be removed.
-# 6) auto new-line should be on (selectable from setup mode only)
-#
-# From: Erik Fair <fair@ucbarpa>  Sun Oct 27 07:21:05 1985
-abm85h|85H|85h|Kimtron ABM 85H, 85H mode:\
-       :hs:\
-       :sg@:ug@:\
-       :ds=\Ee:fs=^M:im=\EZ:\
-       :is=\EC\EN\EX\024\016\EA\Ea\E%\E9\Ee\Er\En\E"\E}\E'\E(\Ef\r\EG0\Ed\E.4\El:\
-       :kd=^V:me=\E(\EG0:mh=\E):mr=\EG4:se=\EG0:so=\EG4:\
-       :ts=\Eg\Ef:ue=\EG0:us=\EG8:vb@:ve=\E.4:vs=\E.2:tc=abm85:
-abm85e|85E|85e|Kimtron ABM 85H, 920E mode:\
-       :sg@:ug@:\
-       :im=\EZ:\
-       :is=\EC\EX\EA\E%\E9\Ee\Er\En\E"\E}\E'\E(\Ef\r\Ek\Eq\Em:\
-       :me=\E(\Ek:mh=\E):mr=\Ej:vb@:tc=abm85:
-abm85h-o|oabm85h|o85h|Kimtron ABM 85H, old firmware rev.:\
-       :sg@:ug@:\
-       :im=\EZ:\
-       :is=\E}\EC\EX\Ee\En\E%\Er\E(\Ek\Em\Eq\Ed\ET\EC\E9\EF:\
-       :me=\E(\Ek:mh=\E):mr=\Ej:\
-       :vb=\200\200\200\007\200\200\200:tc=abm85:
-# From: <malman@bbn-vax.arpa>
-# (kt7: removed obsolete ":ko=ic,dc,al,dl,cl,ce,cd,bt:", ":ma=^V^J^L :";
-# mapped ":pt:" to default tabs -- esr)
-kt7|kimtron model kt-7:\
-       :am:bs:pt:\
-       :co#80:li#24:\
-       :al=\EE:bt=\EI:cd=\EY:ce=\ET:cl=^Z:cm=\E=%+ %+ :\
-       :dc=\EW:dl=\ER:do=^V:ei=:fs=\Eg:ho=^^:ic=\EQ:\
-       :if=/usr/share/tabset/stdcrt:im=:is=\El\E":k0=^AI\r:\
-       :k1=^A@\r:k2=^AA\r:k3=^AB\r:k4=^AC\r:k5=^AD\r:\
-       :k6=^AE\r:k7=^AF\r:k8=^AG\r:k9=^AH\r:kb=^H:kd=^V:\
-       :kh=^^:kl=^H:kr=^L:ku=^K:nd=^L:se=\EG0:so=\EG4:\
-       :ts=\Ef:ue=\EG0:up=^K:us=\EG8:
-
-#### Microterm (act, mime)
-#
-# The mime1 entries refer to the Microterm Mime I or Mime II.
-# The default mime is assumed to be in enhanced act iv mode.
-#
-
-# New "safe" cursor movement (5/87) from reuss@umd5.umd.edu.  Prevents freakout with
-# out-of-range args on Sytek multiplexors.  No ":so=^N:" and ":se=^N:" since 
-# it gets confused and it's too dim anyway.  No ic since Sytek insists ^S 
-# means xoff.
-# (act4: found ":ic=2^S:ei=:im=:ip=.1*^V:" commented out in 8.3 -- esr)
-act4|microterm|microterm act iv:\
-       :am:bs:\
-       :co#80:li#24:\
-       :al=2.3*\001<2.3*/>:bl=^G:cd=2.2*\037:ce=.1*\036:\
-       :cl=12\014:cm=\024%+^X%>/0%+P:cr=^M:dc=.1*\004:\
-       :dl=2.3*\027:do=^K:ho=^]:kd=^K:kl=^H:kr=^X:ku=^Z:\
-       :le=^H:nd=^X:sf=^J:up=^Z:
-# The padding on :sr: and :ta: for act5 and mime is a guess and not final.
-# The act 5 has hardware tabs, but they are in columns 8, 16, 24, 32, 41 (!)...
-# (microterm5: removed obsolete ":ma==^Z^P^Xl^Kj:" -- esr)
-act5|microterm5|microterm act v:\
-       :kd=^K:kl=^H:kr=^X:ku=^Z:sr=\EH:uc=^H\EA:tc=act4:
-# Act V in split screen mode.  act5s is not tested and said not to work.
-act5s|skinny act5:\
-       :co#39:li#48:\
-       :te=\EQ:ti=\EP:tc=act5:
-# Mimes using brightness for standout.  Half bright is really dim unless
-# you turn up the brightness so far that lines show up on the screen.
-mime-fb|full bright mime1:\
-       :is=^S\E:se=^S:so=^Y:tc=mime:
-mime-hb|half bright mime1:\
-       :is=^Y\E:se=^Y:so=^S:tc=mime:
-# (mime: removed obsolete ":ma=^X ^K^J^Z^P:"; removed ":do=^K:" that overrode
-# the more plausible ":do=^J:"; mapped ":pt:" to ":it#8:" -- esr)
-# uc was at one time disabled to get around a curses bug, be wary of it
-mime|mime1|mime2|mimei|mimeii|microterm mime1:\
-       :am:bs:pt:\
-       :co#80:it#8:li#24:vt#9:\
-       :al=\001:bl=^G:cd=^_:ce=^^:cl=^]^C:\
-       :cm=\024%+^X%> 0%+P:cr=^M:dl=\027:do=^J:ho=^]:\
-       :is=^S\E^Q:kd=^K:kl=^H:kr=^X:ku=^Z:le=^H:nd=^X:sf=^J:\
-       :sr=\022:ta=\011:uc=^U:up=^Z:
-# These termcaps (for mime 2a) put the terminal in low intensity mode
-# since high intensity mode is so obnoxious.
-mime2a-s|microterm mime2a (emulating an enhanced soroc iq120):\
-       :am:bs:\
-       :co#80:li#24:\
-       :al=\001:bl=^G:cd=\EJ:ce=\EK:cl=\EL:cm=\E=%+ %+ :\
-       :cr=^M:dc=\ED:dl=\027:do=^J:ei=^Z:ho=^^:im=\EE:ip=:\
-       :is=\E):kd=^J:kl=^H:kr=^L:ku=^K:le=^H:nd=^L:se=\E;:\
-       :sf=^J:so=\E\072:sr=\EI:ue=\E7:up=\EI:us=\E6:
-# This is the preferred mode (but ^X can't be used as a kill character)
-# (mime2a: replaced ":pt:" with SCO's "it#8" -- esr)
-mime2a|mime2a-v|microterm mime2a (emulating an enhanced vt52):\
-       :bs:pt:\
-       :co#80:it#8:li#24:\
-       :al=\001:bl=^G:cd=\EQ:ce=\EP:cl=\EL:cm=\EY%+ %+ :\
-       :cr=^M:dc=^N:dl=\027:do=^J:ei=^Z:ho=\EH:im=^O:ip=:\
-       :is=^Y:kd=\EB:kl=\ED:kr=\EC:ku=\EA:le=^H:nd=\EC:\
-       :se=\E9:sf=^J:so=\E8:sr=\EA:ta=^I:ue=\E5:up=\EA:\
-       :us=\E4:
-# (mime3a: removed obsolete ":ma=^X ^K^J^Z^P:" -- esr)
-mime3a|mime1 emulating 3a:\
-       :am@:\
-       :kd=^K:kl=^H:kr=^X:ku=^Z:tc=adm3a:
-# (mime3ax: mapped ":pt:" to default tabs -- esr)
-mime3ax|mime-3ax|mime1 emulating enhanced 3a:\
-       :pt:\
-       :it#8:\
-       :al=\001:cd=^_:ce=^X:dl=\027:ta=\011:tc=mime3a:
-# Wed Mar  9 18:53:21 1983
-# We run our terminals at 2400 baud, so there might be some timing problems at
-# higher speeds. The major improvements in this model are the terminal now 
-# scrolls down and insert mode works without redrawing the rest of the line
-# to the right of the cursor. This is done with a bit of a kludge using the
-# exit graphics mode to get out of insert, but it does not appear to hurt
-# anything when using vi at least. If you have some users using act4s with
-# programs that use curses and graphics mode this could be a problem.
-mime314|mm314|mime 314:\
-       :am:\
-       :co#80:li#24:\
-       :al=^A:cd=^_:ce=^^:cl=^L:cm=\024%.%.:dc=^D:dl=^W:\
-       :ei=^V:ho=^]:im=^S:kd=^K:kl=^H:kr=^X:ku=^Z:le=^H:\
-       :nd=^X:ta=^I:up=^Z:
-# Fri Aug  5 08:11:57 1983
-# This entry works for the ergo 4000 with the following setups:
-# ansi,wraparound,newline disabled, xon/xoff disabled in both
-# setup a & c.
-#      
-# WARNING!!! There are multiple versions of ERGO 4000 microcode
-# Be advised that very early versions DO NOT WORK RIGHT !!  
-# Microterm does have a ROM exchange program- use it or lose big
-ergo4000|microterm ergo 4000:\
-       :da:db:ms:\
-       :co#80:li#66:\
-       :AL=\E[1L:bl=^G:cd=\E[0J:ce=\E[0K:cl=\E[H\E[2J:\
-       :cm=\E[%i%d;%dH:cr=^M:dc=\E[1P:dl=\E[1M:do=\E[B:\
-       :ei=\E[4l:im=\E[4h:\
-       :is=\E<\E=\E[?1l\E[?4l\E[?5l\E[?7h\E[?8h:k1=\EOP:\
-       :k2=\EOQ:k3=\EOR:k4=\EOS:kd=\E[B:ke=\E=:kl=\E[D:\
-       :kr=\E[C:ks=\E=:ku=\E[A:l1=pf1:l2=pf2:l3=pf3:l4=pf4:\
-       :le=^H:nd=\E[C:se=\E[0m:sf=\ED:so=\E[7m:sr=\EM:ta=^I:\
-       :up=\E[A:
-
-#### NCR 
-#
-# NCR's terminal group was merged with AT&T's when AT&T bought the company.
-# For what happened to that group, see the ADDS section.
-#
-
-# From <root@goliath.un.atlantaga.NCR.COM>, init string hacked by SCO.
-ncr7900i|7900i|ncr7900|7900|ncr 7900 model 1:\
-       :am:bw:ul:\
-       :co#80:li#24:sg#1:ug#1:\
-       :bl=^G:cd=\Ek:ce=\EK:cl=^L:cm=\E1%r%.%.:cr=^M:do=^J:\
-       :is=\E0@\010\E3\E4\E7:kd=^J:kh=^A:kl=^U:kr=^F:ku=^Z:\
-       :le=^H:ll=^A:mb=\E0B:me=\E0@:mh=\E0A:mr=\E0P:nd=^F:\
-       :pf=^T:po=^R:\
-       :..sa=\E0%p5%'@'%+%p4%{2}%*%+%p3%{16}%*%+%p2%{32}%*%+%p1%{17}%*%+%c:\
-       :se=\E0@:sf=^J:so=\E0Q:ue=\E0@:up=^Z:us=\E0`:
-ncr7900i-na|ncr7900-na|7900-na|ncr 7900 model 1 with no arrows:\
-       :kd@:kl@:kr@:ku@:tc=ncr7900i:
-ncr7900iv|ncr 7900 model 4:\
-       :am:bw:es:hs:\
-       :co#80:li#24:\
-       :al=\E^N:bl=^G:cl=^L:cm=\013%+@\E\005%02:cr=^M:\
-       :dl=\E^O:do=^J:ds=\Ey1:fs=\Ek\Ey5:ho=\013@\E^E00:\
-       :k1=\ES:k2=\ET:k3=\EU:k4=\EV:k5=\EW:k6=\EP:k7=\EQ:\
-       :k8=\ER:kb=^H:kd=\EB:kh=\EH:kl=\ED:kr=\EC:ku=\EA:\
-       :l6=blue:l7=red:l8=white:le=^H:nw=^M^J:sf=^J:\
-       :ts=\Ej\Ex5\Ex1\EY8%p1%{32}%+%c\Eo:
-ncr7901|7901|ncr 7901 model:\
-       :am:bw:ul:\
-       :co#80:li#24:\
-       :bl=^G:cd=\Ek:ce=\EK:ch=\020%+^J:cl=^L:cm=\EY%+ %+ :\
-       :cr=^M:cv=\013%+@:do=^J:is=\E4^O:kC=^L:kd=^J:kh=^H:\
-       :kl=^U:kr=^F:ku=^Z:le=^H:ll=^A:mb=\E0B:me=^O:mh=\E0A:\
-       :mr=\E0P:nd=^F:pf=^T:po=^R:\
-       :..sa=\E0%p5%'@'%+%p4%{2}%*%+%p3%{16}%*%+%p2%{32}%*%+%p1%{17}%*%+%c\016:\
-       :se=^O:sf=^J:so=\E0Q\016:ue=^O:up=^Z:us=\E0`\016:\
-       :ve=^X:vi=^W:
-
-#### Perkin-Elmer (Owl)
-#
-# These are official terminfo entries from within Perkin-Elmer.
-#
-
-bantam|pe550|pe6100|perkin elmer 550:\
-       :co#80:li#24:\
-       :bl=^G:ce=\EI:cl=\EK:cm=\EX%+ \EY%+ :cr=^M:do=^J:\
-       :ho=\EH:le=^H:ll=\EH\EA:nd=\EC:sf=^J:up=\EA:
-fox|pe1100|perkin elmer 1100:\
-       :am:\
-       :co#80:li#24:\
-       :bl=^G:cd=\EJ:ce=\EI:cl=\EH\EJ:cm=\EX%+ \EY%+ :cr=^M:\
-       :ct=\E3:do=^J:ho=\EH:le=^H:ll=\EH\EA:nd=\EC:sf=^J:\
-       :st=\E1:up=\EA:vb=\020\002\020\003:
-owl|pe1200|perkin elmer 1200:\
-       :am:in:\
-       :co#80:li#24:\
-       :al=\EL:bl=^G:cd=\EJ:ce=\EI:cl=\EH\EJ:\
-       :cm=\EX%+ \EY%+ :cr=^M:ct=\E3:dc=\EO:dl=\EM:do=^J:\
-       :ei=:ho=\EH:ic=\EN:im=:ip=:k0=\ERJ:k1=\ERA:k2=\ERB:\
-       :k3=\ERC:k4=\ERD:k5=\ERE:k6=\ERF:k7=\ERG:k8=\ERH:\
-       :k9=\ERI:kb=^H:le=^H:ll=\EH\EA:nd=\EC:se=\E!\200:\
-       :sf=^J:so=\E!^H:st=\E1:up=\EA:vb=\020\002\020\003:
-pe1251|pe6300|pe6312|perkin elmer 1251:\
-       :am:\
-       :co#80:it#8:li#24:pb#300:sg#1:vt#8:\
-       :bl=^G:cd=\EJ:ce=\EI:cl=\EK:cm=\EX%+ \EY%+ :cr=^M:\
-       :ct=\E3:do=\EB:ho=\EH:k0=\ERA:k1=\ERB:k2=\ERC:\
-       :k3=\ERD:k4=\ERE:k5=\ERF:k6=\ERG:k7=\ERH:k8=\ERI:\
-       :k9=\ERJ:k;=\ERK:le=\ED:nd=\EC:sf=^J:st=\E1:up=\EA:
-pe7000m|perkin elmer 7000 series monochrome monitor:\
-       :am:\
-       :co#80:li#24:\
-       :bl=^G:bt=\E!Y:cd=\EJ:ce=\EI:cl=\EK:cm=\ES%+ %+ :\
-       :cr=^M:do=\EB:ho=\EH:i1=\E!\200\EW  7o\Egf\ES7 :\
-       :k0=\E!\200:k1=\E!^A:k2=\E!^B:k3=\E!^C:k4=\E!^D:\
-       :k5=\E!^E:k6=\E!^F:k7=\E!^G:k8=\E!^H:k9=\E!^I:\
-       :k;=\E!^J:kb=^H:kd=\E!U:kh=\E!S:kl=\E!V:kr=\E!W:\
-       :ku=\E!T:le=\ED:ll=\ES7 :nd=\EC:se=\E!\200:sf=^J:\
-       :so=\E!^H:sr=\ER:ue=\E!\200:up=\EA:us=\E! :
-pe7000c|perkin elmer 7000 series colour monitor:\
-       :am:\
-       :co#80:li#24:\
-       :bl=^G:bt=\E!Y:cd=\EJ:ce=\EI:cl=\EK:cm=\ES%+ %+ :\
-       :cr=^M:do=\EB:ho=\EH:\
-       :i1=\E!\200\EW  7o\Egf\Eb0\Ec7\ES7 :k0=\E!\200:\
-       :k1=\E!^A:k2=\E!^B:k3=\E!^C:k4=\E!^D:k5=\E!^E:\
-       :k6=\E!^F:k7=\E!^G:k8=\E!^H:k9=\E!^I:k;=\E!^J:kb=^H:\
-       :kd=\E!U:kh=\E!S:kl=\E!V:kr=\E!W:ku=\E!T:le=\ED:\
-       :ll=\ES7 :nd=\EC:se=\Eb0:sf=^J:so=\Eb2:sr=\ER:\
-       :ue=\E!\200:up=\EA:us=\E! :
-
-#### Sperry Univac
-#
-# Sperry Univac has merged with Burroughs to form Unisys.
-#
-
-# This entry is for the Sperry UTS30 terminal running the TTY 
-# utility under control of CP/M Plus 1R1. The functionality 
-# provided is comparable to the DEC vt100.
-uts30|sperry uts30 with cp/m@1R1:\
-       :am:bw:hs:\
-       :co#80:li#24:ws#40:\
-       :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:IC=\E[%d@:\
-       :LE=\E[%dD:RI=\E[%dC:SF=\E[%dB:SR=\E[%dA:UP=\E[%dA:\
-       :ae=\Ed:al=\EN:as=\EF:bl=^G:cd=\E[J:ce=\E[K:cl=^L:\
-       :cm=\E[%i%d;%dH:cr=^M:cs=\EU%+ %+ :dc=\EM:dl=\EL:\
-       :do=\EB:ei=:fs=^M:ho=\E[H:ic=\EO:im=:\
-       :is=\E[U 7\E[24;1H:kb=^H:kd=\EOB:kh=\E[H:kl=\EOD:\
-       :kr=\EOC:ku=\EOA:le=^H:mb=\E[5m:md=\E[1m:me=\E[m:\
-       :mr=\E[7m:nd=\EC:\
-       :r2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h:rc=\EX:\
-       :rf=/usr/lib/tabset/vt100:sc=\EW:se=\E[m:sf=^J:\
-       :so=\E[7m:sr=\EI:ta=^I:ts=\E]:uc=\EPB:ue=\E[m:\
-       :up=\E[A:us=\E[4m:ve=\ES:vi=\ER:
-
-#### Tandem
-#
-# Tandem builds these things for use with its line of fault-tolerant
-# transaction-processing computers.  They aren't generally available
-# on the merchant market, and so are fairly uncommon.
-#
-
-tandem6510|adm3a repackaged by Tandem:\
-       :tc=adm3a:
-
-# A funny series of terminal that TANDEM uses.  The actual model numbers
-# have a fourth digit after 653 that designates minor variants.  These are
-# natively block-mode and rather ugly, but they have a character mode which
-# this doubtless(?) exploits.  There is a 6520 that is slightly dumber.
-# (tandem653: had ":sb=\ES:", probably someone's mistake for sf -- esr)
-tandem653|t653x|Tandem 653x multipage terminal:\
-       :am:bs:da:db:hs:\
-       :co#80:li#24:sg#1:ug#1:ws#64:\
-       :cd=\EJ:ce=\EK:cl=\EI:cm=\023%+ %+ :do=^J:ds=\Eo\r:\
-       :fs=^M:ho=\EH:if=/usr/share/tabset/tandem653:le=^H:\
-       :nd=\EC:se=\E6 :sf=\ES:so=\E6$:sr=\ET:ts=\Eo:ue=\E6 :\
-       :up=\EA:us=\E60:
-
-#### Tandy/Radio Shack
-#
-# Tandy has a line of VDTs distinct from its microcomputers.
-#
-
-dmterm|deskmate terminal:\
-       :am:bw:\
-       :co#80:li#24:\
-       :al=\EP:bl=^G:cd=\EJ:ce=\EK:cl=\Ej:cm=\EY%+ %+ :\
-       :cr=^M:dc=\ES:dl=\ER:do=\EB:ei=:ho=\EH:ic=\EQ:im=:\
-       :k0=\E1:k1=\E2:k2=\E3:k3=\E4:k4=\E5:k5=\E6:k6=\E7:\
-       :k7=\E8:k8=\E9:k9=\E0:kd=\EB:kh=\EH:kl=\ED:kr=\EC:\
-       :ku=\EA:l0=f1:l1=f2:l2=f3:l3=f4:l4=f5:l5=f6:l6=f7:\
-       :l7=f8:l8=f9:l9=f10:le=^H:ll=\EE:nd=\EC:se=\EG0:\
-       :sf=\EX:so=\EG4:ta=^I:up=\EA:ve=\EG6:vi=\EG5:
-dt100|dt-100|Tandy DT-100 terminal:\
-       :xo:\
-       :co#80:li#24:sg#1:ug#1:\
-       :ac=kkllmmjjnnwwvvttuuqqxx:ae=^O:al=\E[L:as=^N:bl=^G:\
-       :cd=\E[J:ce=\E[K:cl=\E[;H\E[2J:cm=\010\E[%i%d;%dH:\
-       :cr=^M:cs=\E[%2;%2r:dc=\E[P:dl=\E[M:do=\E[B:ei=:\
-       :ho=\E[H:ic=\E[@:im=:is=\E[?3l\E)0\E(B:k1=\E[?3i:\
-       :k2=\E[2i:k3=\E[@:k4=\E[M:k5=\E[17~:k6=\E[18~:\
-       :k7=\E[19~:k8=\E[20~:k9=\E[21~:k;=\E[?5i:kN=\E[29~:\
-       :kP=\E[28~:kd=\E[B:kh=\E[H:kl=\E[D:kr=\E[C:ku=\E[A:\
-       :l1=f1:l2=f2:l3=f3:l4=f4:l5=f5:l6=f6:l7=f7:l8=f8:\
-       :le=^H:nd=\E[C:se=\E[m:sf=^J:so=\E[7m:sr=\EM:ta=^I:\
-       :ue=\E[m:up=\E[A:us=\E[4m:ve=\E[?25h:vi=\E[?25l:
-dt100w|dt-100w|Tandy DT-100 terminal:\
-       :co#132:\
-       :bl=^G:cr=^M:do=^J:is=\E[?3l\E)0\E(B:sf=^J:tc=dt100:
-dt110|Tandy DT-110 emulating ansi:\
-       :xo:\
-       :co#80:li#24:\
-       :@7=\E[K:ac=kkllmmjjnnwwvvuuttqqxx:ae=^O:al=\E[0L:\
-       :as=^N:bl=^G:cd=\E[0J:ce=\E[0K:cl=\E[;H\E[2J:\
-       :cm=\010\E[%i%d;%dH:cr=^M:cs=\E[%i%d;%dr:dc=\E[0P:\
-       :dl=\E[0M:do=\E[0B:eA=\E(B\E)0:ei=:ho=\E[H:ic=\E[0@:\
-       :im=:is=\E[?3l\E)0\E(B:k1=\E[1~:k2=\E[2~:k3=\E[3~:\
-       :k4=\E[4~:k5=\E[5~:k6=\E[6~:k7=\E[7~:k8=\E[8~:\
-       :k9=\E[9~:k;=\E[10~:kI=\E[@:kN=\E[26~:kP=\E[25~:\
-       :kd=\E[B:kh=\E[G:kl=\E[D:kr=\E[C:ku=\E[A:l0=f1:l1=f2:\
-       :l2=f3:l3=f4:l4=f5:l5=f6:l6=f7:l7=f8:l8=f9:l9=f10:\
-       :le=^H:nd=\E[C:se=\E[0m:sf=^J:so=\E[7m:sr=\EM:ta=^I:\
-       :ue=\E[0m:up=\E[0A:us=\E[4m:ve=\E[?25h:vi=\E[?25l:
-dt200|td200|Tandy 200:\
-       :am:xt:\
-       :co#40:li#16:\
-       :al=\EL:bl=^G:cd=^L:ce=\EK:cl=\EE:cm=\EY%+ %+ :cr=^M:\
-       :dl=\EM:do=^_:kd=^_:kl=^]:kr=^\:ku=^^:le=^H:nd=^\:\
-       :se=\Eq:sf=^J:so=\Ep:up=\EA:
-pt210|TRS-80 PT-210 printing terminal:\
-       :hc:os:\
-       :co#80:\
-       :bl=^G:cr=^M:do=^J:sf=^J:
-
-#### Tektronix (tek)
-#
-# Tektronix tubes are graphics terminals.  Most of them use modified 
-# oscilloscope technology incorporating a long-persistence green phosphor,
-# and support vector graphics on a main screen with an attached "dialogue
-# area" for interactive text.
-#
-
-tek|tek4012|4012|tektronix 4012:\
-       :os:\
-       :co#75:li#35:\
-       :bl=^G:cl=\E\014:cr=^M:do=^J:ff=\014:is=\E^O:le=^H:
-tek4013|4013|tektronix 4013:\
-       :ae=\E^O:as=\E^N:tc=tek4012:
-tek4014|4014|tektronix 4014:\
-       :co#81:li#38:\
-       :is=\E\017\E9:tc=tek4012:
-tek4015|4015|tektronix 4015:\
-       :ae=\E^O:as=\E^N:tc=tek4014:
-tek4014-sm|4014-sm|tektronix 4014 in small font:\
-       :co#121:li#58:\
-       :is=\E\017\E\072:tc=tek4014:
-tek4015-sm|4015-sm|tektronix 4015 in small font:\
-       :ae=\E^O:as=\E^N:tc=tek4014-sm:
-tek4023|4023|tex|tektronix 4023:\
-       :am:\
-       :co#80:li#24:vt#4:\
-       :bl=^G:cl=\E\014:cm=\034%r%+ %+ :cr=^M:do=^J:le=^H:\
-       :nd=^I:se=^_@:sf=^J:so=^_P:
-# It is recommended that you run the 4025 at 4800 baud or less;
-# various bugs in the terminal appear at 9600.  It wedges at the
-# bottom of memory (try "cat /usr/dict/words"); ^S and ^Q typed
-# on keyboard don't work.  You have to hit BREAK twice to get
-# one break at any speed - this is a documented feature.
-# Can't use cursor motion because it's memory relative, and 
-# because it only works in the workspace, not the monitor.  
-# Same for home. Likewise, standout only works in the workspace.
-# 
-# el was commented out since vi and rogue seem to work better 
-# simulating it with lots of spaces!
-# 
-# il1 and il had 145ms of padding, but that slowed down vi's ^U 
-# and didn't seem necessary.
-#
-tek4024|tek4025|tek4027|tektronix 4024/4025/4027:\
-       :am:da:db:\
-       :co#80:it#8:li#34:lm#0:\
-       :AL=\037up\r\037ili %d\r:CC=^_:DL=\037dli %d\r\006:\
-       :DO=\037dow %d\r:LE=\037lef %d\r:RI=\037rig %d\r:\
-       :UP=\037up %d\r:al=\037up\r\037ili\r:bl=^G:\
-       :cd=\037dli 50\r:cl=\037era\r\n\n:cr=^M:dc=\037dch\r:\
-       :dl=\037dli\r\006:do=^F^J:ei=:ic=\037ich\r \010:im=:\
-       :is=!com 31\r\n\037sto 9 17 25 33 41 49 57 65 73\r:\
-       :ke=\037lea p2\r\037lea p4\r\037lea p6\r\037lea p8\r\037lea f5\r:\
-       :ks=\037lea p4 /h/\r\037lea p8 /k/\r\037lea p6 / /\r\037lea p2 /j/\r\037lea f5 /H/\r:\
-       :le=^H:nd=\037rig\r:sf=^F^J:ta=^I:up=^K:
-tek4025-17|4025-17|4027-17|tek 4025 17 line window:\
-       :li#17:\
-       :tc=tek4025:
-tek4025-17-ws|4025-17-ws|4025-17ws|4027-17ws|4027-17-ws|tek 4025 17 line window in workspace:\
-       :is=!com 31\r\n\037sto 9 17 25 33 41 49 57 65 73\r\037wor 17\r\037mon 17\r:\
-       :se=\037att s\r:so=\037att e\r:te=\037mon h\r:\
-       :ti=\037wor h\r:tc=tek4025-17:
-tek4025-ex|tek4027-ex|tek 4025/4027 w/!:\
-       :is=\037com 33\r\n!sto 9 17 25 33 41 49 57 65 73\r:\
-       :te=\037com 33\r:ti=!com 31\r:tc=tek4025:
-# Tektronix 4025a
-# From: Doug Gwyn <gwyn@brl-smoke.ARPA>
-# The following status modes are assumed for normal operation (replace the
-# initial "!" by whatever the current command character is):
-#      !COM 29                 # NOTE: changes command character to GS (^])
-#      ^]DUP
-#      ^]ECH R
-#      ^]EOL
-#      ^]RSS T
-#      ^]SNO N
-#      ^]STO 9 17 25 33 41 49 57 65 73
-# Other modes may be set according to communication requirements.
-# If the command character is inadvertently changed, termcap can't restore it.
-# Insert-character cannot be made to work on both top and bottom rows.
-# Clear-to-end-of-display emulation via !DLI 988 is too groady to use, alas.
-# There also seems to be a problem with vertical motion, perhaps involving
-# delete/insert-line, following a typed carriage return.  This terminal sucks.
-# Delays not specified; use "stty ixon -ixany" to enable DC3/DC1 flow control!
-# (tek4025a: mapped ":pt:" to default tabs; removed obsolete ":xx:".
-# This may mean the tek4025a entry won't work any more. -- esr)
-tek4025a|4025a|Tektronix 4025A:\
-       :am:bs:bw:da:db:pt:xo:\
-       :co#80:li#34:\
-       :CC=^]:DC=\035dch %d;:DL=\035dli %d;:DO=\035dow %d;:\
-       :LE=\035lef %d;:RI=\035rig %d;:SF=\035dow %d;:\
-       :UP=\035up %d;:al=\013\035ili;:bl=^G:bt=\035bac;:\
-       :ce=\035dch 80;:ch=\r\035rig %d;:\
-       :cl=\035era;\n\035rup;:cr=^M:ct=\035sto;:dc=\035dch;:\
-       :dl=\035dli;:do=^J:le=^H:nd=\035rig;:\
-       :rs=!com 29\035del 0\035rss t\035buf\035buf n\035cle\035dis\035dup\035ech r\035eol\035era g\035for n\035pad 203\035pad 209\035sno n\035sto 9 17 25 33 41 49 57 65 73\035wor 0;:\
-       :sf=^J:ta=^I:up=^K:
-# From: cbosg!teklabs!davem Wed Sep 16 21:11:41 1981
-# Here's the command file that I use to get rogue to work on the 4025.
-# It should work with any program using the old curses (e.g. it better
-# not try to scroll, or cursor addressing won't work.  Also, you can't
-# see the cursor.)
-# (This "learns" the arrow keys for rogue. I have adapted it for termcap - mrh)
-# (tek4025-cr: mapped ":pt:" to default tabs -- esr)
-tek4025-cr|4025-cr|tek 4025 for curses and rogue:\
-       :am:bs:pt:\
-       :co#80:li#33:\
-       :cl=\037era;:cm=\037jum%i%d\054%d;:do=^F^J:\
-       :is=!com 31\r\n\037sto 9 17 25 33 41 49 57 65 73\r:\
-       :le=^H:nd=\037rig;:nl=^F^J:te=\037wor 0:\
-       :ti=\037wor 33h:up=^K:
-# next two lines commented out since curses only allows 128 chars, sigh.
-#      :ti=\037lea p1/b/\037lea p2/j/\037lea p3/n/\037lea p4/h/\037lea p5/ /\037lea p6/l/\037lea p7/y/\037lea p8/k/\037lea p9/u/\037lea p./f/\037lea pt/`era w/13\037lea p0/s/\037wor 33h:\
-#      :te=\037lea p1\037lea p2\037lea p3\037lea p4\037lea pt\037lea p5\037lea p6\037lea p7\037lea p8\037lea p9/la/13\037lea p.\037lea p0\037wor 0:
-tek4025ex|4025ex|4027ex|tek 4025 w/!:\
-       :is=\037com 33\r\n!sto 9\05417\05425\05433\05441\05449\05457\05465\05473\r:\
-       :te=\037com 33\r:ti=!com 31\r:tc=tek4025:
-tek4105|4105|tektronix 4105:\
-       :am:mi:ms:ul:xn:xt:\
-       :co#79:it#8:li#29:\
-       :ae=\E[0m:al=\E[1L:as=\E[1m:bl=^G:bt=\E[Z:cd=\E[J:\
-       :ce=\E[K:cl=\E[2J\E[H:cm=\E[%i%2;%2H:cr=^M:ct=\E[1g:\
-       :dc=\E[1P:dl=\E[1M:do=\E[1B:ei=\E[4l:ho=\E[H:\
-       :i1=\E%!1\E[0m:im=\E[4h:is=\E%!1\E[?6141\E[0m:kb=^H:\
-       :kd=\E[1B:kl=\E[1D:kr=\E[1C:ku=\E[1A:mb=\E[=3;<7m:\
-       :md=\E[=7;<4m:me=\E[=0;<1m:mh=\E[=1;<6m:mk=\E[=6;<5:\
-       :mr=\E[=1;<3m:nd=\E[1C:se=\E[=0;<1m:sf=\E[S:\
-       :so=\E[=2;<3m:sr=\E[T:ta=^I:ti=\E%!1\E[?6l\E[2J:\
-       :ue=\E[=0;<1m:up=\E[1A:us=\E[=5;<2m:
-
-tek4105-30|4105-30|4015 emulating 30 line vt100:\
-       :am:mi:ms:xn:xo:\
-       :co#80:it#8:li#30:vt#3:\
-       :@8=\EOM:DO=\E[%dB:K1=\EOq:K2=\EOr:K3=\EOs:K4=\EOp:\
-       :K5=\EOn:LE=\E[%dD:RI=\E[%dC:UP=\E[%dA:\
-       :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\
-       :ae=^O:as=^N:bl=^G:cb=\E[1K:cd=\E[J:ce=\E[K:\
-       :cl=\E[H\E[J:cm=\E[%i%d;%dH:cr=^M:cs=\E[%i%d;%dr:\
-       :ct=\E[3g:do=^J:eA=\E(B\E)0:ho=\E[H:k0=\EOy:k1=\EOP:\
-       :k2=\EOQ:k3=\EOR:k4=\EOS:k5=\EOt:k6=\EOu:k7=\EOv:\
-       :k8=\EOl:k9=\EOw:k;=\EOx:kb=^H:kd=\EOB:ke=\E[?1l\E>:\
-       :kl=\EOD:kr=\EOC:ks=\E[?1h\E=:ku=\EOA:le=^H:mb=\E[5m:\
-       :md=\E[1m:me=\E[m\017:mr=\E[7m:nd=\E[C:\
-       :r2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h:rc=\E8:\
-       :..sa=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;:\
-       :sc=\E7:se=\E[m:sf=^J:so=\E[1;7m:sr=\EM:st=\EH:ta=^I:\
-       :ue=\E[m:up=\E[A:us=\E[4m:
-
-tek4107|tek4109|4107|4109|tektronix terminals 4107 4109:\
-       :am:mi:ms:ul:xn:xt:\
-       :co#79:it#8:li#29:\
-       :bl=^G:cd=\EJ:ce=\EK:cl=\ELZ:cm=\EY%+ %+ :cr=^M:\
-       :do=^J:kb=^H:kd=\EB:kl=\ED:kr=\EC:ku=\EA:le=^H:\
-       :mb=\E%!1\E[5m\E%!0:md=\E%!1\E[1m\E%!0:\
-       :me=\E%!1\E[m\E%!0:mh=\E%!1\E[<0m\E%!0:\
-       :mr=\E%!1\E[7m\E%0:nd=\EC:\
-       :..sa=\E%%!1\E[%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;m\E%%!0:\
-       :se=\E%!1\E[m\E%!0:sf=^J:so=\E%!1\E[7;5m\E%!0:sr=\EI:\
-       :ta=^I:ue=\E%!1\E[m\E%!0:up=\EA:us=\E%!1\E[4m\E%!0:\
-       :ve=\E%!0:vs=\E%!3:
-# Tektronix 4207 with sysline.  In the ancestral termcap file this was 4107-s;
-# see the note attached to tek4207.
-tek4207-s|Tektronix 4207 with sysline but no memory:\
-       :es:hs:\
-       :ds=\E7\E[?6l\E[2K\E[?6h\E8:fs=\E[?6h\E8:\
-       :i2=\E7\E[?6l\E[2K\E[?6h\E8:\
-       :is=\E%!1\E[2;32r\E[132D\E[2g\EH\E[8C\EH\E[8C\EH\E[8C\EH\E[8C\EH\E[8C\EH\E[8C\EH\E[8C\EH\E[8C\EH\E[8C\EH\E[J:\
-       :ts=\E7\E[?6l\E[2K\E[;%i%df:tc=tek4107:
-
-# The 4110 series may be a wonderful graphics series, but they make the 4025
-# look good for screen editing.  In the dialog area, you can't move the cursor
-# off the bottom line.  Out of the dialog area, ^K moves it up, but there
-# is no way to scroll.
-# 
-# Note that there is a floppy for free from Tek that makes the 
-# 4112 emulate the vt52 (use the vt52 termcap). There is also
-# an expected enhancement that will use ANSI standard sequences.
-# 
-# 4112 in non-dialog area pretending to scroll. It really wraps 
-# but vi is said to work (more or less) in this mode.
-# 
-# 'vi' works reasonably well with this entry.
-#
-otek4112|o4112-nd|otek4113|otek4114|tektronix 4110 series:\
-       :am:\
-       :co#80:li#34:\
-       :bl=^G:cl=\E^L:cr=^M:do=^J:le=^H:sf=^J:te=\EKA1\ELV1:\
-       :ti=\EKA0\ELV0\EMG0:up=^K:
-# The 4112 with the ANSI compatibility enhancement
-tek4112|tek4114|tektronix 4110 series:\
-       :am:bs:db:\
-       :co#80:li#34:\
-       :al=\E[L:bt=\E[Z:cd=\E[0J:ce=\E[0K:cl=\E[2J\E[0;0H:\
-       :cm=\E[%i%d;%dH:dc=\E[P:dl=\E[M:ei=:ic=\E[@:im=:\
-       :is=\E3!1:nd=\E[C:se=\E[m:sf=\E7\E[0;0H\E[M\E8:\
-       :so=\E[7m:sr=\E7\E[0;0H\E[L\E8:ue=\E[m:up=\EM:\
-       :us=\E[4m:ve=:vs=:
-tek4112-nd|4112-nd|4112 not in dialog area:\
-       :ns:\
-       :up=^K:tc=tek4112:
-tek4112-5|4112-5|4112 in 5 line dialog area:\
-       :li#5:\
-       :tc=tek4112:
-# (tek4113: this used to have ":nd=\LM1 \LM0:", someone's mistake;
-# removed ":as=\E^N:ae=\E^O:", which had been commented out in 8.3.
-# Note, the !0 and !1 sequences in :te:/:ti:/:ve:/:vs: were previously \0410
-# and \0411 sequences...I don't *think* they were supposed to be 4-digit
-# octal -- esr)
-tek4113|tektronix 4113 color graphics, 5 line dialog area:\
-       :am:bs:da:eo:\
-       :co#80:li#5:\
-       :cl=\ELZ:do=^J:is=\EKA1\ELL5\ELV0\ELV1:le=^H:\
-       :nd=\ELM1 \ELM0:uc=\010\ELM1_\ELM0:\
-       :vb=\ERBA4\ERBA4\ERBA4\ERBA4\ERBA4\ERBA4\ERBA4\ERBA4\ERBA4\ERBA4\ERB0:
-tek4113-34|4113-34|tektronix 4113 color graphics, 34 line dialog area:\
-       :li#34:\
-       :is=\EKA1\ELLB2\ELV0\ELV1:tc=tek4113:
-# :ns: left off to allow vi visual mode. APL font (:as=\E^N:/:ae=\E^O:) not 
-# supported here. :uc: is slow, but looks nice. Suggest setenv MORE -up .
-# :vb: needs enough delay to let you see the background color being toggled.
-# (tek4113-nd: mapped ":pt:" to default tabs -- esr)
-tek4113-nd|4113-nd|tektronix 4113 color graphics, no dialog area:\
-       :am:bs:eo:pt:\
-       :co#80:li#34:\
-       :cl=\E^L:do=^J:ho=\ELF7l\177 @:\
-       :is=\ELZ\EKA0\ELF7l\177 @:le=^H:ll=\ELF hl @:nd=^I:\
-       :se=\EMT1:so=\EMT2:uc=\010\EMG1_\EMG0:up=^K:\
-       :vb=\ERBA4\ERBA4\ERBA4\ERBA4\ERBA4\ERBA4\ERBA4\ERBA4\ERBA4\ERBA4\ERB0:\
-       :vs=\ELZ\EKA0:
-# This entry is from Tek. Inc.  (Brian Biehl)
-# (tek4115: mapped ":pt:" to default tabs; :bc: renamed to :le: -- esr)
-otek4115|Tektronix 4115:\
-       :am:bs:da:db:eo:pt:\
-       :co#80:li#34:\
-       :al=\E[L:bt=\E[Z:cd=\E[J:ce=\E[K:cl=\E[;H\E[2J:\
-       :cm=\E[%i%d;%dH:dc=\E[P:dl=\E[M:do=\E[B:ei=\E[4l:\
-       :ho=\E[;H:if=/usr/share/tabset/vt100:im=\E[4h:\
-       :is=\E%!0\E%\014\ELV0\EKA1\ELBB2\ENU@=\ELLB2\ELM0\ELV1\EKYA?\E%!1\E[<1l\E[?7h\E[?8h\E[34;1H\E[34B\E[0m:\
-       :kb=^H:ke=\E>:ks=\E=:le=\E[D:nd=\E[C:se=\E[m:\
-       :so=\E[7m:sr=\EM:te=\E%!0\ELBG8\E%!1\E[34;1H\E[J:\
-       :ti=\E%!0\ELBB2\E%!1:ue=\E[m:up=\E[A:us=\E[4m:\
-       :ve=\E%!0\ELBG8\E%!1\E[34;1H:vs=\E%!0\ELBB2\E%!1:
-tek4115|newer tektronix 4115 entry with more ANSI capabilities:\
-       :am:xo:\
-       :co#80:li#34:\
-       :AL=\E[%dL:DL=\E[%dM:DO=\E[%dB:IC=\E[%d@:LE=\E[%dD:\
-       :RI=\E[%dC:UP=\E[%dA:al=\E[L:bl=^G:bt=\E[Z:cd=\E[J:\
-       :ce=\E[K:ch=\E[%+^AG:cl=\E[H\E[J:cm=\E[%i%d;%dH:\
-       :cr=^M:ct=\E[2g:cv=\E[%+^Ad:dc=\E[P:dl=\E[M:do=^J:\
-       :ei=:ho=\E[H:ic=\E[@:im=:kb=^H:kd=\E[B:kh=\E[H:\
-       :kl=\E[D:kr=\E[C:ku=\E[A:le=^H:mb=\E[5m:md=\E[1m:\
-       :me=\E[0m:mk=\E[8m:mr=\E[7m:nd=\E[C:\
-       :..rp=%p1%c\E[%p2%{1}%-%db:\
-       :..sa=\E[%?%p1%t7;%;%?%p2%t4;%;%?%p3%t7;%;%?%p4%t5;%;%?%p6%t1;%;m:\
-       :se=\E[m:sf=^J:so=\E[7m:st=\EH:ta=^I:ue=\E[m:up=\E[A:\
-       :us=\E[4m:
-# The tek4125 emulates a vt100 incorrectly - the scrolling region
-# command is ignored.  The following entry replaces the :cs: with the needed
-# :al:, :dl:, and :im:; removes some cursor pad commands that the tek4125
-# chokes on; and adds a lot of initialization for the tek dialog area.
-# Note that this entry uses all 34 lines and sets the cursor color to green.
-# Steve Jacobson 8/85
-# (tek4125: there were two "\!"s in the is that I replaced with "\E!" -- esr)
-tek4125|4125:\
-       :li#34:\
-       :al=\E[1L:cs@:dl=\E[1M:im=\E1:\
-       :is=\E%\E!0\EQD1\EUX03\EKA\ELBB2\ELCE0\ELI100\ELJ2\ELLB2\ELM0\ELS1\ELX00\ELV1\E%\E!1\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h:\
-       :ks=\E=:rc@:sc@:tc=vt100:
-
-# From: <jcoker@ucbic>
-# (tek4107: mapped ":pt:" to default tabs.  This was the termcap file's
-# entry for the 4107/4207, but SCO supplied another, less capable 4107 entry. 
-# So we'll use that for 4107 and note that if jcoker wasn't confused you
-# may be able to use this one. -- esr)
-tek4207|Tektronix 4207 graphics terminal with memory:\
-       :am:bs:bw:mi:pt:ul:xn:\
-       :co#80:li#32:\
-       :al=3\E[L:bt=\E[Z:cd=\E[J:ce=5\E[K:cl=156\E[H\E[J:\
-       :cm=\E[%i%d;%dH:dc=4\E[P:dl=3\E[M:do=^J:ei=:ho=\E[H:\
-       :ic=4\E[@:im=:\
-       :is=\E%!0\ELBP0\E%!1\E[H\E[2g\EH\E[8C\EH\E[8C\EH\E[8C\EH\E[8C\EH\E[8C\EH\E[8C\EH\E[8C\EH\E[8C\EH\E[8C\EH\E[J:\
-       :kd=\ED:kh=\E[H:kl=\E[D:kr=\E[C:ku=\EM:le=^H:\
-       :mb=\E[5m:md=\E[1m:me=\E[m:mr=\E[7m:nd=\E[C:se=\E[m:\
-       :so=\E[7m:te=\E[?6h\E%!0\ELBP0\E%!1\E[32;1f:\
-       :ti=\E[?6l\E[H\E[J:ue=\E[m:up=\EM:us=\E[4m:
-
-# From: <carolyn@dali.berkeley.edu>  Thu Oct 31 12:54:27 1985
-# (tek4404: There was a "\!" in :ti: that I replaced with "\E!";
-# also mapped ":pt:" to default tabs -- esr)
-tek4404|4404:\
-       :bs:pt:\
-       :co#80:li#32:\
-       :al=\E[1L:cd=\E[J:ce=\E[K:cl=\E[;H\E[2J:\
-       :cm=\E[%i%d;%dH:cs=\E[%i%d;%dr:dc=\E[P:dl=\E[1M:\
-       :do=^J:ei=\E[4l:ho=\E[H:im=\E[4h:kd=\E[B:ke=\E[?1h:\
-       :kl=\E[D:kr=\E[C:ks=\E[?1l:ku=\E[A:mb=\E[5m:md=\E[1m:\
-       :me=\E[m:nd=\E[C:rc=\E8:sc=\E7:se=\E[27m:so=\E[7m:\
-       :ta=\E[2I:te=\E[1;1H\E[0J\E[?6h\E[?1l:\
-       :ti=\E%\E!1\E[1;32r\E[?6l\E>:ue=\E[m:up=\E[A:\
-       :us=\E[4m:
-# t500 is a local entry for the oddball Tek 500 owned by Fluke 
-# Labs
-#
-t500|Tek series 500:\
-       :am:bw:\
-       :co#80:li#25:\
-       :bl=^G:cl=\005:cm=\E=%+ %+ :cr=^M:do=^J:ho=^T:le=^H:\
-       :sf=^J:
-# I added the is string - straight Unix has ESC ; in the login 
-# string which sets a ct8500 into monitor mode (aka 4025 snoopy 
-# mode). The is string here cleans up a few things (but not 
-# everything).
-#
-ct8500|tektronix ct8500:\
-       :am:bw:da:db:\
-       :co#80:li#25:\
-       :al=\E^L:bl=^G:bt=\E^I:cd=\E^U:ce=\E^T:cl=\E^E:\
-       :cm=\E|%+ %+ :cr=^M:dc=\E^]:dl=\E^M:do=^J:ei=:\
-       :ic=\E^\:im=:is=\037\EZ\Ek:le=^H:me=\E :nd=\ES:\
-       :se=\E :sf=^J:so=\E$:sr=\E^A:ta=^I:ue=\E :up=\ER:\
-       :us=\E!:
-
-# Tektronix 4205 terminal.
-#
-# am is not defined because the wrap around occurs not when the char.
-# is placed in the 80'th column, but when we are attempting to type
-# the 81'st character on the line.
-#
-# Bold, dim, and standout are simulated by colors and thus not allowed
-# with colors.  The tektronix color table is mapped into the RGB color
-# table by setf/setb. All colors are reset to factory specifications by oc.
-# The initc cap uses RGB notation to define colors.  for arguments 1-3 the 
-# interval (0-1000) is broken into 8 smaller sub-intervals (125).  Each sub-
-# interval then maps into pre-defined value.
-# (untranslatable capabilities removed to fit entry within 1023 bytes)
-# WARNING: this entry, 1264 bytes long, may core-dump older termcap libraries!
-tek4205|4205|tektronix 4205:\
-       :cc:mi:ms:\
-       :Co#8:NC#49:co#80:it#8:li#30:pa#63:\
-       :AL=\E[%dL:DO=\E[%dB:IC=\E[%d@::LE=\E[%dD:RI=\E[%dC::\
-       ::UP=\E[%dA:\
-       :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\
-       :ae=^O:al=\E[1L:as=^N:bl=^G:bt=\E[Z:cb=\E[1K:cd=\E[J:\
-       :ce=\E[K:cl=\E[2J\E[H:cm=\E[%i%d;%dH:cr=^M:ct=\E[1g:\
-       :dc=\E[1P:dl=\E[1M:do=\E[B:eA=\E)0:ec=\E%dX:ei=\E[4l:\
-       :ho=\E[H:i1=\E%!0\ETM1\E%!1\E[0m:im=\E[4h:k0=\EOA:\
-       :k1=\EOB:k2=\EOC:k3=\EOD:k4=\EP:k5=\EQ:k6=\ER:k7=\ES:\
-       :kb=^H:kd=\E[B:kl=\E[D:kr=\E[C:ku=\E[A:le=\E[D:\
-       :mb=\E[5m:md=\E[=7;<4m:me=\E[=0;<1m\E[24;25;27m\017:\
-       :mh=\E[=1;<6m:mk=\E[=6;<5:mr=\E[7m:nd=\E[C:\
-       :oc=\E%!0\n\ETFB0\n0000\n1F4F4F4\n2F400\n30F40\n4A4C<F4\n50F4F4\n6F40F4\n7F4F40\n\E%!1:\
-       :op=\E[39;40m:se=\E[=0;<1m:sf=\ED:so=\E[=2;<3m:\
-       :sr=\EM:ta=^I:ti=\E%%!1\E[?6l\E[2J:ue=\E[24m:up=\E[A:\
-       :us=\E[4m:
-
-#### Teletype (tty)
-#
-# These are the hardcopy Teletypes from before AT&T bought the company,
-# clattering electromechanical dinosaurs in Bakelite cases that printed on
-# pulpy yellow roll paper.  If you remember these you go back a ways.
-# Teletype-branded VDTs are listed in the AT&T section.
-#
-# The earliest UNIXes were designed to use these clunkers; nroff and a few
-# other programs still default to emitting codes for the Model 37.
-#
-
-tty33|model 33 teletype:\
-       :hc:os:xo:\
-       :co#72:\
-       :bl=^G:cr=^M:do=^J:sf=^J:
-tty35|model 35 teletype:\
-       :tc=tty33:
-tty37|model 37 teletype:\
-       :bs:hc:os:xo:\
-       :bl=^G:cr=^M:do=^J:hd=\E9:hu=\E8:le=^H:sf=^J:up=\E7:
-
-# There are known to be at least three flavors of the tty40, all seem more
-# like IBM half duplex forms fillers than ASCII terminals.  They have lots of
-# awful braindamage, such as printing a visible newline indicator after each
-# newline.  The 40-1 is a half duplex terminal and is hopeless.  The 40-2 is
-# braindamaged but has hope and is described here.  The 40-4 is a 3270
-# lookalike and beyond hope.  The terminal has visible bell but I don't know
-# it - it's null here to prevent it from showing the BL character.
-# There is an \EG in :nl: because of a bug in old vi (if stty says you have
-# a "newline" style terminal (-crmode) vi figures all it needs is nl
-# to get crlf, even if :cr: is not ^M.)
-# (tty40: removed obsolete ":nl=\EG\EB:", it's just do+cr -- esr)
-tty40|ds40|ds40-2|dataspeed40|teletype dataspeed 40/2:\
-       :xo:\
-       :co#80:li#24:\
-       :al=\EL:cd=\EJ:cl=\EH\EJ:cr=\EG:ct=\EH\E2:dc=\EP:\
-       :dl=\EM:do=\EB:ei=:ho=\EH:ic=\E^:im=:kb=^]:kl=^H:\
-       :le=^H:nd=\EC:pf=^T:po=\022:r2=\023\ER:se=\E4:sf=\ES:\
-       :so=\E3:sr=\ET:st=\E1:ta=\E@:up=\E7:
-tty43|model 43 teletype:\
-       :am:bs:hc:os:xo:\
-       :co#132:\
-       :bl=^G:cr=^M:do=^J:kb=^H:le=^H:sf=^J:
-
-#### Tymshare
-#
-
-scanset|sc410|sc415|Tymshare Scan Set:\
-       :am:bw:ms:\
-       :co#80:li#24:\
-       :ac=l<m-k4j%q\\\054x5:ae=^O:as=^N:bl=^G:cd=\EJ:\
-       :ce=\EK:cl=\EH\EJ:cm=\EY%+ %+ :cr=^M:do=^J:ho=\EH:\
-       :kd=\EB:kl=\ED:kr=\EC:ku=\EA:le=^H:nd=^I:pf=\E;0:\
-       :po=\E;0:ps=\E;3:r1=\E>:rc=^C:sc=^B:sf=^J:up=^K:
-
-scanset-n|Tymshare Scan Set in 40 col mode:\
-       :r2=\E<:tc=scanset:
-
-#### Volker-Craig (vc)
-#
-
-# Missing in vc303a and vc303 descriptions:  they scroll 2 lines at a time
-# every other linefeed.
-vc303a|vc403a|volker-craig 303a:\
-       :am:bs:ns:\
-       :co#80:li#24:\
-       :bl=^G:ce=\026:cl=\030:cr=^M:do=^J:ho=\031:kd=^J:\
-       :kl=^H:kr=^U:ku=^Z:le=^H:ll=^P:nd=^U:up=^Z:
-vc303|vc103|vc203|volker-craig 303:\
-       :am:bs:ns:\
-       :co#80:li#24:\
-       :bl=^G:cl=\014:cr=^M:do=^J:ho=\013:kd=^J:kl=^H:kr=^I:\
-       :ku=^N:le=^H:ll=\017W:nd=^I:up=^N:
-# (vc404: removed obsolete ":ma=^Z^P^U :" -- esr)
-vc404|volker-craig 404:\
-       :am:bs:\
-       :co#80:li#24:\
-       :bl=^G:cd=\027:ce=\026:cl=\030:cm=\020%+ %+ :cr=^M:\
-       :do=^J:ho=\031:kd=^J:kl=^H:kr=^U:ku=^Z:le=^H:nd=^U:\
-       :sf=^J:up=^Z:
-vc404-s|volker-craig 404 w/standout mode:\
-       :do=^J:se=^O:so=^N:tc=vc404:
-# (vc404-na: removed obsolete ":ma@:" -- esr)
-vc404-na|volker-craig 404 w/no arrow keys:\
-       :kr@:ku@:tc=vc404:
-vc404-s-na|volker-craig 404 w/standout mode and no arrow keys:\
-       :se=^O:so=^N:tc=vc404-na:
-# From: <wolfgang@cs.sfu.ca>
-vc414|vc414h|Volker-Craig 414H in sane escape mode.:\
-       :am:bs:\
-       :co#80:li#24:\
-       :al=\E\032:cd=\E^X:ce=10\E\017:cl=\E\034:dc=\E3:\
-       :do=\E^K:ei=:ic=\E\072:im=:k0=\EA:k1=\EB:k2=\EC:\
-       :k3=\ED:k4=\EE:k5=\EF:k6=\EG:k7=\EH:kd=\E^K:kh=\E^R:\
-       :kl=^H:kr=^P:ku=\E^L:l0=PF1:l1=PF2:l2=PF3:l3=PF4:\
-       :l4=PF5:l5=PF6:l6=PF7:l7=PF8:nd=^P:se=\E^_:so=\E^Y:\
-       :up=\E^L:
-vc414h-noxon:\
-       :cm=\E\021%r%.%.:dl=\E\023:ho=\E^R:tc=vc414h:
-vc415|volker-craig 415:\
-       :cl=^L:tc=vc404:
-
-######## OBSOLETE PERSONAL-MICRO CONSOLES AND EMULATIONS
-#
-
-#### IBM PC and clones
-#
-
-# The pcplot IBM-PC terminal emulation program is really messed up. It is
-# supposed to emulate a vt-100, but emulates the wraparound bug incorrectly,
-# doesn't support scrolling regions, ignores add line commands, and ignores
-# delete line commands. Consequently, the resulting behavior looks like a
-# crude adm3a-type terminal.
-# Steve Jacobson 8/85
-pcplot:\
-       :xn@:\
-       :cs@:rc@:sc@:tc=vt100:
-# (kaypro: removed obsolete ":ma=^K^P:" -- esr)
-kaypro|kaypro2|kaypro II:\
-       :am:bs:\
-       :co#80:li#24:\
-       :cl=1\032:cm=\E=%+ %+ :ho=^^:kd=^J:kl=^H:kr=^L:ku=^K:\
-       :nd=^L:up=^K:
-sanyo55|sanyo|sanyo mbc-55x pc compatible:\
-       :am:bs:\
-       :co#80:li#25:\
-       :cd=\E[J:ce=\E[K:cl=\E[H\E[J:cm=\E[%i%d;%dH:nd=\E[C:\
-       :se=\E[m:so=\E[7m:ue=\E[m:up=\E[A:us=\E[4m:
-
-# From IBM, Thu May  5 19:35:27 1983
-ibmpc|ibm-pc|ibm5051|5051|IBM Personal Computer (no ANSI.SYS):\
-       :am:\
-       :co#80:li#24:\
-       :bl=^G:cl=^L^K:cr=^M^^:do=^J:ho=^K:im=\200R:kd=^_:\
-       :le=^]:nd=^\:sf=\n:up=^^:
-
-#### Apple
-#
-
-# apple -- works with an Apple ][+ that is equipped with a Videx 80 column
-# card in slot 3. A special routine must be installed at the apple end to
-# enable scroll down, here indicated with a ^U.  The Videx card must have 
-# inverse char set, which is used as standout.
-apple|apple-v80|Apple][+ w/Videx80 & custom scroll down:\
-       :am:xn:\
-       :co#80:li#24:\
-       :ae=^Z3:as=^Z2:bl=^G:cd=\013:ce=\035:cl=\014:\
-       :..cm=\r\036%r%p1%{32}%+%c%p2%{32}%+%c$<6>:cr=^M:\
-       :do=^J:ho=\031:le=\010:nd=^\:se=^Z2:sf=^J:so=^Z3:\
-       :sr=^P:up=^_:
-# (appleII: mapped ":pt:" to default tabs -- esr)
-appleII|apple ii plus:\
-       :am:bs:pt:\
-       :co#80:li#24:\
-       :cd=^K:ce=^]:cl=^L:cm=\036%r%+ %+ :do=^J:ho=\E^Y:\
-       :is=\024T1\016:kd=^J:kr=^U:nd=^\:se=^N:so=^O:up=^_:\
-       :vb=\024G1\024T1:ve=^TC2:vs=^TC6:
-# Originally by Gary Ford 21NOV83
-# From: <ee178aci%sdcc7@SDCSVAX.ARPA>  Fri Oct 11 21:27:00 1985
-apple-80|apple II with smarterm 80 col:\
-       :am:bs:bw:\
-       :co#80:li#24:\
-       :bt=^R:cd=10*\013:ce=10\035:cl=10*\014:\
-       :cm=\036%r%+ %+ :cr=10*\r:do=^J:ho=^Y:le=^H:nd=^\:\
-       :up=^_:
-apple-soroc|apple emulating soroc 120:\
-       :am:\
-       :co#80:li#24:\
-       :bl=^G:cd=\EY:ce=\ET:cl=\E*:cm=\E=%+ %+ :cr=^M:do=^J:\
-       :ho=^^:kd=^J:kl=^H:kr=^L:ku=^K:le=^H:nd=^L:sf=^J:\
-       :up=^K:
-# From Peter Harrison, Computer Graphics Lab, San Francisco
-#   ucbvax!ucsfmis!harrison  .....uucp
-#   ucbvax!ucsfmis!harrison@BERKELEY   .......ARPA
-# "These two work.  If you don't have the inverse video chip for the
-# Apple with videx then remove the so and se fields."
-# (DaleApple: mapped ":pt:" to default tabs -- esr)
-DaleApple|Apple with videx videoterm 80 column board with inverse video:\
-       :am:bs:pt:xn:\
-       :co#80:li#24:\
-       :cd=^K:ce=^]:cl=300\014:cm=\036%r%+ %+ :do=^J:ho=^Y:\
-       :kd=^J:kh=^Y:kl=^H:kr=^U:le=^H:nd=^\:se=^Z2:so=^Z3:\
-       :up=^_:
-# (lisa: this had forms-drawing capabilities
-#      :GV=`:GH=a:G1=c:G2=f:G3=e:G4=d:GU=u:GD=s:GC=b:GL=v:GR=t:
-# I renamed GS/GE/CO/CF, mapped ":pt:" to default tabs -- esr)
-lisa|apple lisa console display, black on white:\
-       :am:bs:eo:ms:pt:\
-       :co#88:li#32:\
-       :ae=\E[10m:al=\E[L:as=\E[11m:cd=\E[J:ce=\E[K:cl=^L:\
-       :cm=\E[%i%d;%dH:dc=\E[P:dl=\E[M:do=\E[B:ei=:ho=\E[H:\
-       :ic=\E[@:im=:is=\E>\E[0m\014:kb=^H:kd=\E[B:kl=\E[D:\
-       :kr=\E[C:ku=\E[A:nd=\E[C:se=\E[m:so=\E[7m:ue=\E[m:\
-       :up=\E[A:us=\E[4m:vi=\E[5h:vs=\E[5l:
-liswb|apple lisa console display, white on black:\
-       :is=\E>\E[0;7m\014:se=\E[0;7m:so=\E[0m:ue=\E[0;7m:\
-       :us=\E[4m:tc=lisa:
-mac|macintosh|Macintosh with MacTerminal:\
-       :xn:\
-       :dN#30:\
-       :al=20\E[L:dc=7\E[P:dl=20\E[M:ei=:ic=9\E[@:im=:ip=7:tc=vt100:
-
-#### Radio Shack/Tandy
-#
-
-# (coco3: This had "ta" used incorrectly as a boolean and bl given as "bl#7".
-# I read these as mistakes for ":it#8:" and ":bl=\007:" respectively -- esr)
-# From: <{pbrown,ctl}@ocf.berkeley.edu> 12 Mar 90
-coco3|os9LII|Tandy CoCo3 24*80 OS9 Level II:\
-       :am:bs:\
-       :co#80:it#8:li#24:\
-       :al=^_0:bl=^G:cd=^K:ce=^D:cl=5*\014:cm=2\002%r%+ %+ :\
-       :dl=^_1:do=^J:ho=^A:kd=^J:kl=^H:kr=^I:ku=^L:mb=^_":\
-       :md=\E\072^A:me=\037!\E\072\200:mr=^_ :nd=^F:se=^_!:\
-       :so=^_ :ue=^_#:up=^I:us=^_":ve=^E!:vi=^E :
-trs80|trs-80|radio shack trs-80 Model I:\
-       :am:bs:\
-       :co#64:li#16:\
-       :bl=^G:cr=^M:do=^J:le=^H:sf=^J:
-# (trs2: mapped ":pt:" to default tabs; removed obsolete ":nl=^_:" -- esr)
-trs2|trsII|trs80II|Radio Shack Model II using P&T CP/M:\
-       :am:bs:ms:pt:\
-       :co#80:li#24:\
-       :al=^D:bl=^G:cd=^B:ce=^A:cl=^L:cm=\EY%+ %+ :cr=^M:\
-       :dl=^K:do=^_:ho=^F:kb=^H:kd=^_:kl=^\:kr=^]:ku=^^:\
-       :nd=^]:se=^O:sf=^J:so=^N:up=^^:
-# From: Kevin Braunsdorf <ksb@mentor.cc.purdue.edu>
-# (This had unknown capabilities
-#      :GV=s:GH=u:GU=e:GD=c:G1=`:G2=_:G3=b:G4=a:\
-#      :BN=\E[?33h:BF=\E[?33l:UC=\E[_ q:BC=\E[\177 q:\
-#      :CN=\ERC:CF=\ERc:NR=\ERD:NM=\ER@:
-# I renamed GS/GE,also deleted the unnecessary ":kn#2:", ":sg#0:"
-# and mapped ":pt:" to default tabs -- esr)
-trs16|trs-80 model 16 console:\
-       :am:bs:pt:\
-       :co#80:li#24:sg#0:\
-       :ae=\ERg:al=\EL:as=\ERG:bl=^G:cd=\EJ:ce=\EK:cl=^L:\
-       :cm=\EY%+ %+ :cr=^M:dc=\EQ:dl=\EM:do=\EB:ei=:ho=\EH:\
-       :ic=\EP:im=:k0=^A:k1=^B:k2=^D:k3=^L:k4=^U:k5=^P:\
-       :k6=^N:k7=^S:kb=^H:kd=\EB:kh=^W:kl=\ED:kr=\EC:ku=\EA:\
-       :l0=f1:l1=f2:l2=f3:l3=f4:l4=f5:l5=f6:l6=f7:l7=f8:\
-       :le=^H:nd=\EC:pf=\E]+:po=\E]=:se=\ER@:sf=^J:so=\ERD:\
-       :ta=^I:up=\EA:ve=\ERC:vi=\ERc:
-# From: Suk Lee <..!{decvax,linus,allegra,ihnp4}!utcsrgv!spoo>
-# (civis/cnorm added from SCO description)
-trs100|Radio Shack Model 100:\
-       :am:bs:xt:\
-       :co#40:li#8:\
-       :al=\EL:bl=^G:cd=\EJ:ce=\EK:cl=\EE:cm=\EY%+ %+ :\
-       :cr=^M:dl=\EM:do=^J:ho=\EH:kb=^H:kd=^_:kl=^]:kr=^\:\
-       :ku=^^:le=^H:nd=\EC:se=\Eq:sf=^J:so=\Ep:up=\EA:\
-       :ve=\EP:vi=\EQ:
-trs200|Tandy 200:\
-       :am:xt:\
-       :co#40:li#16:\
-       :al=\EL:bl=^G:cd=^L:ce=\EK:cl=\EE:cm=\EY%+ %+ :cr=^M:\
-       :dl=\EM:do=^_:kd=^_:kl=^]:kr=^\:ku=^^:le=^H:nd=^\:\
-       :se=\Eq:sf=^J:so=\Ep:up=\EA:
-trs600|Tandy Model 600:\
-       :am:\
-       :co#80:li#15:\
-       :bl=^G:cl=\EH\EE:cm=\EY%+ 040%+ :cr=^M:do=\EB:kd=\EB:\
-       :kl=\ED:kr=\EC:ku=\EA:le=^H:nd=\EC:sf=^J:ta=^I:\
-       :up=\EA:
-
-#### Atari ST
-#
-
-# From: Simson L. Garfinkel <simsong@media-lab.mit.edu>
-# (atari: mapped ":pt:" to default tabs -- esr)
-atari|atari st:\
-       :am:bs:pt:\
-       :co#80:li#25:\
-       :al=\EL:cd=\EJ:ce=\EK:cl=\EH\EJ:cm=\EY%+ %+ :dl=\EM:\
-       :do=\EB:kd=\EB:kl=\ED:kr=\EC:ku=\EA:nd=\EC:se=\Eq:\
-       :so=\Ep:sr=\EI:up=\EA:
-# UniTerm terminal program for the Atari ST:  49-line VT220 emulation mode
-# From: Paul M. Aoki <aoki@ucbvax.berkeley.edu>
-uniterm|uniterm49|UniTerm VT220 emulator, 49 lines:\
-       :li#49:\
-       :is=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h\E[1;49r\E[49;1H:tc=vt220:
-
-#### Commodore Business Machines
-#
-# Formerly located in West Chester, PA; went spectacularly bust in 1994
-# after years of shaky engineering and egregious mismanagement.  Made one
-# really nice machine (the Amiga) and boatloads of nasty ones (PET, C-64,
-# C-128, VIC-20).  The C-64 is said to have been the most popular machine
-# ever (most units sold); they can still be found gathering dust in closets
-# everywhere.
-#
-
-# From: Kent Polk <kent@swrinde.nde.swri.edu>, 30 May 90
-# Added a few more entries, converted caret-type control sequence (^x) entries
-# to '\0xx' entries since a couple of people mentioned losing '^x' sequences.
-#
-# :as:, :ae:                   Support for alternate character sets.
-# :ve=\E[\040p:vi=\E[\060\040p:        cursor visible/invisible.
-# :xn:  vt100 kludginess at column 80/NEWLINE ignore after 80 cols(Concept)
-#     This one appears to fix a problem I always had with a line ending
-#     at 'width+1' (I think) followed by a blank line in vi. The blank
-#     line tended to disappear and reappear depending on how the screen
-#     was refreshed. Note that this is probably needed only if you use
-#     something like a Dnet Fterm with the window sized to some peculiar
-#     dimension larger than 80 columns.
-# :k0=\E9~:    map F10 to k0 - could have F0-9 -> k0-9, but ... F10 was 'k;'
-# (amiga: removed obsolete ":kn#10:" -- esr)
-amiga|Amiga ANSI:\
-       :am:bs:bw:xn:\
-       :co#80:li#24:\
-       :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:IC=\E[%d@:\
-       :LE=\E[%dD:RI=\E[%dC:SF=\E[%dS:SR=\E[%dT:UP=\E[%dA:\
-       :ae=^O:al=\E[L:as=^N:bl=^G:bt=\E[Z:cd=\E[J:ce=\E[K:\
-       :cl=\E[H\E[J:cm=\E[%i%d;%dH:dc=\E[P:dl=\E[M:do=\E[B:\
-       :ei=:ho=\E[H:ic=\E[@:im=:is=\E[20l:k0=\E9~:k1=\E0~:\
-       :k2=\E1~:k3=\E2~:k4=\E3~:k5=\E4~:k6=\E5~:k7=\E6~:\
-       :k8=\E7~:k9=\E8~:kb=^H:kd=\EB:kl=\ED:kr=\EC:ku=\EA:\
-       :le=\E[D:mb=\E[7;2m:md=\E[1m:me=\E[0m:mh=\E[2m:\
-       :mk=\E[8m:mr=\E[7m:nd=\E[C:rs=\Ec:se=\E[0m:sf=\E[S:\
-       :so=\E[7m:sr=\E[T:ue=\E[0m:up=\E[A:us=\E[4m:vb=^G:\
-       :ve=\E[ p:vi=\E[0 p:
-
-# The legendary home of B1FF...
-vic20|vic|VIC-20 Personal Computer:\
-       :am:\
-       :co#22:li#20:\
-       :bl=^G:cl=^K^L:cr=^M:do=^J:ho=^L:nd=^\:sf=^J:up=^^:
-
-#### CompuColor
-#
-# These were consoles for a line of Z80-based micros dating from around 1977.
-#
-
-# These compucolors appear similar, but they at least have different
-# sized screens.  I don't know what's going on here.
-# (compucolor: removed obsolete ":bc=^Z:" -- esr)
-compucolor|isc8001|intecolor:\
-       :am:\
-       :co#80:li#47:\
-       :al=\EU:bl=^G:cl=\014:cr=\r:dl=\EV\034:do=\n:\
-       :ei=\022\EK:im=\023\EQ:kd=^J:kh=^H:kl=^Z:kr=^Y:ku=^\:\
-       :le=\032:nd=\031:sf=\n:ue=\022:up=\034:us=\021:
-# (compucolor2: mapped ":pt:" to default tabs,
-# removed obsolete ":bc=^Z:" -- esr)
-compucolor2|compucolorII:\
-       :am:pt:\
-       :co#64:li#32:\
-       :bl=^G:cl=^L:cm=\003%r%.%.:cr=^M:do=^J:ho=^H:le=^Z:\
-       :nd=^Y:sf=^J:ta=^I:up=^\:
-
-#### Exidy Sorcerer
-#
-
-# (exidy: mapped ":pt:" to default tabs -- esr)
-exidy|exidy2500|exidy sorcerer as dm2500:\
-       :am:\
-       :co#64:li#30:\
-       :al=^P^J^X:bl=^G:cd=^X:ce=^W:cl=^^:\
-       :..cm=\014%p2%'`'%^%c%p1%'`'%^%c:cr=^M:dc=^H:\
-       :dl=^P^Z^X:dm=^P:do=^J:ei=^X:ho=^B:ic=^\:im=^P:le=^H:\
-       :nd=^\:se=^X:sf=^J:so=^N:ta=^I:up=^Z:
-ex3000:\
-       :co#80:li#24:\
-       :bl=^G:cr=^M:do=^J:ho=^Q:sf=^J:
-# This came from the comp ctr who got it from some user.  Smart indeed!
-# (sexidy: looks like an Exidy Sorcerer in some bizarre emulation mode;
-# removed obsolete ":ma=^x^J:"; removed obsolete ":bc=^A:"; removed 
-# incorrect (and overridden) ":le=^H:" -- esr)
-sexidy|exidy smart:\
-       :bs:\
-       :co#64:li#24:\
-       :bl=^G:cl=^L:cr=^M:do=^J:ho=^Q:kd=^S:le=^A:nd=^S:\
-       :sf=^J:up=^W:
-
-#### Osborne
-#
-# Thu Jul  7 03:55:16 1983
-#      
-# As an aside, be careful; it may sound like an anomaly on the 
-# Osborne, but with the 80-column upgrade, it's too easy to 
-# enter lines >80 columns!
-#      
-# I've already had several comments...
-# The Osborne-1 with the 80-col option is capable of being 
-# 52,80, or 104 characters wide; default to 80 for compatibility 
-# with most systems.
-#      
-# The tab is destructive on the Ozzie; make sure to 'stty -tabs'.
-ozzie|osborne|osborne1|osborne 1:\
-       :ms:ul:xt:\
-       :co#104:li#24:\
-       :al=\EE:bl=^G:ce=\ET:cl=^Z:cm=\E=%+ %+ :cr=^M:dc=\EW:\
-       :dl=\ER:do=^J:ei=:ic=\EQ:im=:kd=^J:kl=^H:kr=^L:ku=^K:\
-       :le=^H:nd=^L:se=\E(:sf=^J:so=\E):ue=\Em:up=^K:us=\El:
-
-#### Console types for UNIX clones
-#
-
-# According to the Coherent 2.3 manual, the PC console is similar
-# to a z19. The differences seem to be (1) 25 lines, (2) no status
-# line, (3) standout is broken, (4) ins/del line is broken, (5)
-# has blinking and bold.
-pc-coherent|pcz19|coherent|IBM PC console running Coherent:\
-       :am:mi:\
-       :co#80:it#8:li#25:\
-       :bl=^G:cd=\EJ:ce=\EK:cl=\EE:cm=\EY%+ %+ :cr=^M:\
-       :dc=\EN:do=\EB:ei=\EO:ho=\EH:im=\E@:kb=^H:kd=\EB:\
-       :kh=\EH:kl=\ED:kr=\EC:ku=\EA:le=^H:nd=\EC:se=\Eq:\
-       :sf=^J:so=\Ep:sr=\EI:ta=^I:up=\EA:
-
-# According to the Venix 1.1 manual, the PC console is similar
-# to a DEC vt52.  Differences seem to be (1) arrow keys send 
-# different strings, (2) enhanced standout, (3) added insert/delete line.
-# Note in particular that it doesn't have automatic margins (am).
-# There are other keys (f1-f10, pgup, pgdn, backtab, insch, delch)
-# not described here.
-pc-venix|venix|IBM PC console running Venix:\
-       :co#80:it#8:li#25:\
-       :al=\EL:bl=^G:cd=\EJ:ce=\EK:cl=\EH\EJ:cm=\EY%+ %+ :\
-       :cr=^M:dl=\EM:do=^J:kb=^H:kd=\EP:kh=\EG:kl=\EK:\
-       :kr=\EM:ku=\EH:le=^H:nd=\EC:sf=^J:sr=\EI:ta=^I:\
-       :up=\EA:
-
-#### Miscellaneous microcomputer consoles
-#
-# If you know anything more about any of these, please tell me.
-
-# I don't know which, if either, of these sols to believe.
-# ^S is an arrow key!  Boy is this guy in for a surprise...
-sol|sol1|sol terminal computer:\
-       :am:\
-       :co#64:li#16:\
-       :bl=^G:cl=^K:cm=\E\021%.\E\022%.:cr=^M:do=^J:ho=^N:\
-       :kd=^Z:kl=^A:kr=^S:ku=^W:le=^H:nd=^S:sf=^J:up=^W:
-sol2|sol terminal computer:\
-       :am:mi:xn:\
-       :co#64:li#16:\
-       :al=20\EL:bl=^G:cd=20\EJ:ce=\EK:cl=20\EE:\
-       :cm=\EY%+ %+ :cr=^M:dc=\EN:dl=20\EM:do=^J:ei=\EO:\
-       :ho=\EH:im=\E@:kd=\ED:kh=\EH:kl=\EL:kr=\ER:ku=\EU:\
-       :le=^H:nd=\EC:sf=\n:ta=^I:up=\EA:ve=\EX:vs=^N^Lv:
-# basis from Peter Harrison, Computer Graphics Lab, San Francisco
-#   ucbvax!ucsfmis!harrison ...uucp / ucbvax!ucsfmis!harrison@BERKELEY ...ARPA
-# (basis: removed obsolete ":ma=^K^P^R^L^L :nl=5000*^J:" -- esr)
-basis|BASIS108 computer with terminal translation table active:\
-       :cd=\EY:ce=\ET:cl=300\E*:do=5000\n:kb=^H:kd=^J:kl=^H:\
-       :kr=^L:ku=^K:se=\E):so=\E(:tc=adm3a:
-# luna's BMC terminal emulator
-luna|luna68k|LUNA68K Bitmap console:\
-       :co#88:li#46:\
-       :tc=ansi-mini:
-microkit|mkt|microkit terminal computer:\
-       :am:mi:xn:\
-       :co#40:li#23:\
-       :al=\El:bl=^G:cd=\Ej:ce=\Ek:cl=\Ee:cm=\Ey%+ %+ :\
-       :cr=^M:dc=\En:dl=\Em:do=^J:ei=\Eo:ho=\Eh:im=\E@:\
-       :kd=\Ed:kh=\Eh:kl=\El:kr=\Er:ku=\Eu:le=^H:nd=\Ec:\
-       :sf=^J:ta=^I:up=\Ea:ve=\Ex:vs=\016\014zv:
-megatek|pegasus workstation terminal emulator:\
-       :am:os:\
-       :co#83:li#60:\
-       :
-# The Xerox 820 was an early Z80 micro that went nowhere (I think)
-xerox820|x820|Xerox 820:\
-       :am:\
-       :co#80:li#24:\
-       :bl=^G:cd=^Q:ce=^X:cl=1^Z:cm=\E=%+ %+ :cr=^M:do=^J:\
-       :ho=^^:le=^H:nd=^L:sf=^J:up=^K:
-
-#### Videotex and teletext
-#
-
-# standard-issue France Telecom minitel terminal (made by Philips)
-# (m2-nam: had unknown ":zd=\E[1m:zb=\E[5m:zc=lkmjqxtuwvn:";
-# also deleted unnecessary ":ug#0:sg#0:"; mapped ":pt:" to "" -- esr)
-m2-nam|minitel|minitel-2|minitel-2-nam|France Telecom Minitel:\
-       :am@:bs:pt:xn:\
-       :co#80:it#8:li#24:\
-       :ae=\E(B:al=\E[L:as=\E(0:cd=\E[J:ce=\E[K:cl=\E[H\E[J:\
-       :cm=\E[%i%d;%dH:dc=\E[P:dl=\E[M:ei=\E[4l:ho=\E[H:\
-       :im=\E[4h:ip=7:is=\E[1;24r\E[24;1H:k1=\EOP:k2=\EOQ:\
-       :k3=\EOR:k4=\EOS:kd=\E[B:kh=\E[H:kl=\E[D:kr=\E[C:\
-       :ku=\E[A:nd=\E[C:se=\E[m:sf=^J:so=\E[7m:sr=\EM:\
-       :ue=\E[m:up=\E[A:us=\E[4m:
-# From: Joel Rubin <jmrubin@coral.berkeley.edu>
-# This is a preliminary TERMCAP for VIDTEX, a terminal program sold by 
-# Compuserve.  Line and column numbers are computer-dependent (I have a
-# Commodore '64); you should use the meta-B option to shut off clean-breaking
-# of lines.  No key codes included since some of them are programmable and
-# most are machine-specific.  Works on vi if you don't use clean-breaking.
-# Very similar to the IBM 3101 termcap.  Escape-D used for backspace because
-# control-H is destructive backspace.  There seem to be a few weirdnesses
-# (especially at the beginning of a wrapped line), and the cursor does not,
-# unfortunately, flash.
-# (vid: mapped ":pt:" to default tabs; changed :bc: to :le: -- esr)
-vid|vidtex|Compuserve vidtex program:\
-       :am:pt:\
-       :co#40:li#25:\
-       :cd=\EJ:ce=\EK:cl=^L:cm=\EY%+ %+ :ho=\EH:le=\ED:\
-       :nd=\EC:up=\EA:
-# This (inherited from the Emacs termcap.dat file) is probably *way* obsolete!
-rsvidtx|Radio Shack VIDEOTEX:\
-       :co#32:li#16:\
-       :cd=\EJ:ce=\EK:cl=\EH\EJ:..cm=\EY%+ %+ :cr=^M:do=^J:\
-       :kb=^H:kd=^J:kl=^H:nd=\EC:nw=^M^J:sf=^J:ta=^I:up=\EA:
-
-######## OBSOLETE VDT TYPES
-#
-# These terminals are *long* dead -- these entries are retained for
-# historical interest only.
-
-#### AED
-#
-# Advanced Electronic Devices made its name manufacturing super-expensive
-# vector-graphics displays and frame buffers in the late 1970s.  They used
-# to be in Sunnyvale CA 94086 on Pastoria Avenue.  They're long gone now.
-#
-
-# From: Giles Billingsley <gilesb%ucbcad@berkeley.edu>
-# rewritten 8/82 for newer AEDs and better operation of vi, etc.
-# (bel/cr/cub1/cud1/ind added from SCO entry, which doesn't have db or the
-# humongous is2, thus they are commented out here -- esr)
-aed|AED|aed512|AED512|aed 512:\
-       :bs:\
-       :co#64:li#40:\
-       :bl=^G:cl=^L:cr=^M:do=^J:le=^H:nd=\Ei0800\001:\
-       :se=\E[00C80\001:\
-       :sf=\E;1100\072004=000200??;1300'\200\001\n\E\072004=0002??00;1200\001\n:\
-       :so=\E\07200>8000140[80C00\001:\
-       :te=\E\07200>8000100{804<0??00001000L80\072004=000200??\001:\
-       :ti=\E\07200>8000140{<04<0??00001010L<0\072004=0002??00\001:\
-       :uc=\Ei???>l0800i0102\001:ue=\E\07200>8000100\001:\
-       :up=^K:us=\E\07200>8000140\001:\
-       :vb=\EK0001??0000K0001202080\001:\
-       :ve=\E\072004=000200??\001:
-aed-ucb|AED-UCB|aed512-ucb|AED512-UCB|aed 512 w/o UCB ROM:\
-       :bs:db:\
-       :co#64:li#40:\
-       :cl=^L:if=/usr/share/tabset/aed512:nd=\Ei0800\001:\
-       :se=\E[00C80\001:so=\E\07200>8000140[80C00\001:\
-       :te=\E\07200>8000100{804<0??00001000L80\072004=000200??\001:\
-       :ti=\E\07200>8000140{<04<0??00001010L<0\072004=0002??00\001:\
-       :uc=\Ei???>l0800i0102\001:ue=\E\07200>8000100\001:\
-       :up=^K:us=\E\07200>8000140\001:\
-       :vb=\EK0001??0000K0001202080\001:\
-       :ve=\E\E\E\E\E\E\E\072004=000200??\001:
-
-#### Amtek Business Machines
-#
-
-# (abm80: early versions of this entry apparently had ":se=\E^_:so=\E^Y",
-# but these caps were commented out in 8.3; also, removed overridden
-# ":do=^J:" -- esr)
-abm80|amtek business machines 80:\
-       :am:bs:bw:\
-       :co#80:li#24:\
-       :al=\E^Z:bt=^T:cd=\E^X:ce=\E^O:cl=\E^\:\
-       :cm=\E\021%r%+ %+ :dl=\E^S:do=\E^K:ho=\E^R:le=^H:\
-       :nd=^P:up=\E^L:
-
-#### Bell Labs blit terminals
-#
-# These were AT&T's official entries.
-#
-
-blit|jerq|blit running teletype rom:\
-       :am:eo:ul:xo:\
-       :co#87:it#8:li#72:\
-       :AL=\EF%+ :DC=\Ee%+ :DL=\EE%+ :IC=\Ef%+ :al=\EF!:\
-       :bl=^G:ce=\EK:cl=^L:cm=\EY%r%+ %+ :cr=^M:dc=\Ee!:\
-       :dl=\EE!:do=^J:ei=:ic=\Ef!:im=:k1=\Ex:k2=\Ey:k3=\Ez:\
-       :kb=^H:kd=\EB:kl=\ED:kr=\EC:ku=\EA:le=\ED:nd=\EC:\
-       :sf=^J:ta=^I:up=\EA:
-
-cbblit|fixterm|blit running columbus code:\
-       :co#88:\
-       :cd=\EJ:ei=\ER:ic@:im=\EQ:pO=\EP%03:pf=^T:po=^R:\
-       :se=\EV!:so=\EU!:ue=\EV":us=\EU":vb=\E^G:tc=blit:
-
-oblit|ojerq|first version of blit rom:\
-       :am:da:db:eo:mi:ul:xo:\
-       :co#88:it#8:li#72:\
-       :AL=\Ef%+ :DL=\Ee%+ :al=\EF:bl=^G:cd=\EJ:ce=\EK:\
-       :cl=^L:cm=\EY%r%+ %+ :cr=^M:dc=\EO:dl=\EE:do=^J:\
-       :ei=\ER:im=\EQ:kb=^H:le=\ED:nd=\EC:sf=^J:ta=^I:\
-       :up=\EA:vb=\E^G:
-
-daleblit|daleterm|blit running Dale DeJager's ROM:\
-       :da@:db@:\
-       :kd=\EB:kl=\ED:kr=\EC:ku=\EA:se=\EV!:so=\EU!:ue=\EV":\
-       :us=\EU":tc=oblit:
-
-#### Bolt, Beranek & Newman (bbn)
-#
-# The BitGraph was a product of the now-defunct BBN Computer Corporation.
-# The parent company, best known as the architects of the Internet, is
-# still around.
-#
-
-# Entries for the BitGraph terminals.  The problem 
-# with scrolling in vi can only be fixed by getting BBN to put 
-# smarter scroll logic in the terminal or changing vi or padding 
-# scrolls with about 500 ms delay.
-#      
-# I always thought the problem was related to the terminal 
-# counting newlines in its input buffer before scrolling and 
-# then moving the screen that much. Then vi comes along and 
-# paints lines in on the bottom line of the screen, so you get 
-# this big white gap.
-
-bitgraph|bbn bitgraph:\
-       :tc=bg3.10rv:
-bg3.10rv|bgrv|bbn bitgraph (reverse video):\
-       :tc=bg2.0rv:
-bg3.10nv|bgnv|bbn bitgraph (normal video):\
-       :tc=bg2.0nv:
-bg3.10|bgn|bbn bitgraph (no init):\
-       :tc=bg2.0:
-bg2.0rv|bbn bitgraph (reverse video):\
-       :is=\E>\E[?5h\E[?7h:vb=\E[?5l\E[?5h:tc=bg2.0:
-bg2.0nv|bbn bitgraph (normal video):\
-       :is=\E>\E[?5l\E[?7h:vb=\E[?5h\E[?5l:tc=bg2.0:
-bg2.0|bbn bitgraph (no init):\
-       :xn:\
-       :co#85:li#64:\
-       :al=\E[L:bl=^G:cd=\E[J:ce=\E[K:cl=\E[H\E[J:\
-       :cm=%i\E[%d;%dH:cr=^M:cs=\E[%i%d;%dr:dl=\E[M:do=\E[B:\
-       :k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:kd=\E[B:ke=\E>:\
-       :kl=\E[D:kr=\E[C:ks=\E=:ku=\E[A:l1=PF1:l2=PF2:l3=PF3:\
-       :l4=PF4:le=^H:nd=\E[C:rc=\E8:sc=\E7:se=\E[0m:sf=\n:\
-       :so=\E[7m:ta=^I:up=\E[A:
-bg1.25rv|bbn bitgraph (reverse video):\
-       :is=\E>\E[?5h\E[?7h:vb=\E[?5l\E[?5h:tc=bg1.25:
-bg1.25nv|bbn bitgraph (normal video):\
-       :is=\E>\E[?5l\E[?7h:vb=\E[?5h\E[?5l:tc=bg1.25:
-bg1.25|bbn bitgraph:\
-       :co#85:li#64:\
-       :al=\E[L:bl=^G:cd=\E[J:ce=\E[K:cl=\E[H\E[J:\
-       :cm=%i\E[%d;%dH:cr=^M:dl=\E[M:do=\E[B:k1=\EP:k2=\EQ:\
-       :k3=\ER:k4=\ES:kd=\EB:ke=\E>:kl=\ED:kr=\EC:ks=\E=:\
-       :ku=\EA:l1=PF1:l2=PF2:l3=PF3:l4=PF4:le=^H:\
-       :ll=\E[64;1H:nd=\E[C:se=\E[0m:sf=\n:so=\E[7m:ta=^I:\
-       :up=\E[A:
-
-#### Chromatics
-#
-
-# cg7900: Following is revised version. As I mentioned, I recompiled 
-# curses in order to accomadate the large amount of definition.
-# I have put the long strings in ti/te. Ti sets up a window 
-# that is smaller than the screen, and puts up a warning message 
-# outside the window. Te erases the warning message, puts the 
-# window back to be the whole screen, and puts the cursor at just
-# below the small window. A defined vs and ve to really turn 
-# the cursor on and off, but I have taken this out since I don't 
-# like the cursor being turned off when vi exits.   
-cg7900|chromatics|chromatics 7900:\
-       :am:\
-       :co#80:li#40:\
-       :al=^A>2:bl=^G:cd=^Al:ce=^A`:cl=^L:\
-       :cm=\001M%r%d\\\054%d\\\054:cr=^M:dc=^A<1:dl=^A<2:\
-       :do=^J:ei=:ho=^\:ic=^A>1:im=:le=^H:ll=^A|:nd=^]:\
-       :se=\001C1\\\054\001c2\\\054:sf=^J:\
-       :so=\001C4\\\054\001c7\\\054:\
-       :te=\001W0\\\05440\\\05485\\\05448\\\054\014\001W0\\\0540\\\05485\\\05448\\\054\001M0\\\05440\\\054:\
-       :ti=\001P0\001O1\001R1\001C4\\\054\001c0\\\054\014\001M0\\\05442\\\054WARNING DOUBLE ENTER ESCAPE and \025\001C1\\\054\001c2\\\054\001W0\\\0540\\\05479\\\05439\\\054:\
-       :uc=\001\001_\001\200:up=^K:
-
-#### Computer Automation
-#
-
-ca22851|computer automation 22851:\
-       :am:\
-       :co#80:li#24:\
-       :bl=^G:cd=^\:ce=^]:cl=\014:cm=\002%i%.%.:cr=^M:do=^J:\
-       :ho=^^:kd=^W:kh=^^:kl=^U:ku=^V:le=^U:nd=^I:sf=^J:\
-       :up=^V:
-
-#### Cybernex
-#
-
-# This entry has correct padding and the undocumented "ri" capability
-cyb83|xl83|cybernex xl-83:\
-       :am:bs:\
-       :co#80:li#24:\
-       :bl=^G:cd=\020:ce=\017:cl=\014:cm=\027%+ %+ :cr=^M:\
-       :do=^J:ho=^K:kd=^J:kl=^H:kr=^I:ku=^N:le=^H:nd=^I:\
-       :sf=^J:sr=^N:up=^N:
-# (mdl110: removed obsolete ":ma=^Z^P:" and overridden ":cd=145^NA^W:" -- esr)
-cyb110|mdl110|cybernex mdl-110:\
-       :am:bs:\
-       :co#80:li#24:\
-       :al=\016A\016\035:bl=^G:cd=\016@\026:ce=\016@\026:\
-       :cl=\030:cm=\020%+ %+ :cr=^M:dc=\016A\036:\
-       :dl=\016A\016\036:do=^J:ei=:ho=^Y:ic=\016A\035:im=:\
-       :le=^H:nd=^U:se=^NG:sf=^J:so=^NF:ta=\011:up=^Z:
-
-#### Datapoint
-#
-# Datapoint is gone.  They used to be headquartered in Texas.
-# They created ARCnet, an Ethernet competitor that flourished for a while
-# in the early 1980s before 3COM got wise and cut its prices.  The service
-# side of Datapoint still lives (1995) in the form of Intelogic Trace.
-#
-
-dp3360|datapoint|datapoint 3360:\
-       :am:bs:\
-       :co#82:li#25:\
-       :bl=^G:cd=^_:ce=^^:cl=^]^_:cr=^M:do=^J:ho=^]:le=^H:\
-       :nd=^X:sf=^J:up=^Z:
-
-#### DEC terminals (Obsolete types: DECwriter and vt40/42/50)
-#
-# These entries are DEC's official terminfos for its older terminals.
-# Contact Bill Hedberg <hedberg@hannah.enet.dec.com> of Terminal Support
-# Engineering for more information.  Updated terminfos and termcaps 
-# are kept available at ftp://gatekeeper.dec.com/pub/DEC/termcaps.
-#
-
-gt40|dec gt40:\
-       :os:\
-       :co#72:li#30:\
-       :bl=^G:cr=^M:do=^J:le=^H:
-gt42|dec gt42:\
-       :os:\
-       :co#72:li#40:\
-       :bl=^G:cr=^M:do=^J:le=^H:
-vt50|dec vt50:\
-       :co#80:li#12:\
-       :bl=^G:cd=\EJ:ce=\EK:cl=\EH\EJ:cr=^M:do=^J:le=^H:\
-       :nd=\EC:sf=^J:ta=^I:up=\EA:
-vt50h|dec vt50h:\
-       :co#80:li#12:\
-       :bl=^G:cd=\EJ:ce=\EK:cl=\EH\EJ:cm=\EY%+ %+ :cr=^M:\
-       :do=^J:le=^H:nd=\EC:sf=^J:sr=\EI:ta=^I:up=\EA:
-vt52|dec vt52:\
-       :co#80:it#8:li#24:\
-       :bl=^G:cd=\EJ:ce=\EK:cl=\EH\EJ:cm=\EY%+ %+ :cr=^M:\
-       :do=^J:kb=^H:kd=\EB:kl=\ED:kr=\EC:ku=\EA:le=^H:\
-       :nd=\EC:sf=^J:sr=\EI:ta=^I:up=\EA:
-vt61|vt-61|vt61.5:\
-       :co#80:li#24:\
-       :bl=^G:cd=\EJ:ce=\EK:cl=\EH\EJ:cm=\EY%+ %+ :cr=\r:\
-       :do=^J:kd=\EB:kl=\ED:kr=\EC:ku=\EA:le=^H:nd=\EC:\
-       :sf=\n:sr=\EI:ta=^I:up=\EA:
-
-# The gigi does standout with red!
-gigi|vk100|dec gigi graphics terminal:\
-       :am:xn:\
-       :co#84:li#24:\
-       :DO=\E[%dB:LE=\E[%r%dD:RI=\E[%dC:UP=\E[%dA:bl=^G:\
-       :cd=\E[J:ce=\E[K:cl=\E[;H\E[2J:cm=\E[%i%d;%dH:cr=^M:\
-       :do=^J:is=\E>\E[?3l\E[?4l\E[?5l\E[?20l\E[?7h\E[?8h:\
-       :k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:kd=\EOB:\
-       :ke=\E[?1l\E>:kh=\E[H:kl=\EOD:kr=\EOC:ks=\E[?1h\E=:\
-       :ku=\EOA:le=^H:nd=\E[C:se=\E[m:sf=^J:so=\E[7;31m:\
-       :sr=\EM:ta=^I:ue=\E[m:up=\E[A:us=\E[4m:
-
-# DEC PRO-350 console (VT220-style).  The 350 was DEC's attempt to produce
-# a PC differentiated from the IBM clones.  It was a total, ludicrous,
-# grossly-overpriced failure (among other things, DEC's OS didn't include
-# a format program, so you had to buy pre-formatted floppies from DEC at
-# a hefty premium!).
-# (pro350: mapped ":pt:" to default tabs -- esr)
-pro350|decpro|dec pro console:\
-       :bs:pt:\
-       :co#80:li#24:\
-       :ae=\EG:as=\EF:cd=\EJ:ce=\EK:cl=\EH\EJ:cm=\EY%+ %+ :\
-       :do=\EB:ho=\EH:k0=\EE:k1=\EF:k2=\EG:k3=\EH:k4=\EI:\
-       :k5=\EJ:k6=\Ei:k7=\Ej:kd=\EB:kh=\EH:kl=\ED:kr=\EC:\
-       :ku=\EA:nd=\EC:se=\E^N:so=\E^H:sr=\EI:ue=\E^C:up=\EA:\
-       :us=\E^D:
-
-dw1|decwriter I:\
-       :hc:os:\
-       :co#72:\
-       :bl=^G:cr=^M:do=^J:le=^H:sf=^J:
-dw2|decwriter|dw|decwriter II:\
-       :hc:os:\
-       :co#132:\
-       :bl=^G:cr=^M:do=^J:kb=^H:le=^H:sf=^J:
-
-# \E(B         Use U.S. character set (otherwise # => british pound !)
-# \E[20l       Disable "linefeed newline" mode (else puts \r after \n,\f,\v)
-# \E[w         10 char/in pitch
-# \E[1;132     full width horizontal margins
-# \E[2g                clear all tab stops
-# \E[z         6 lines/in
-# \E[66t       66 lines/page (for \f)
-# \E[1;66r     full vertical page can be printed
-# \E[4g                clear vertical tab stops
-# \E>          disable alternate keypad mode (so it transmits numbers!)
-# \E[%i%du     set tab stop at column %d (origin == 1)
-#              (Full syntax is \E[n;n;n;n;n;...;nu where each 'n' is 
-#              a tab stop)
-#
-#       The dw3 does standout with wide characters.
-#
-dw3|la120|decwriter III:\
-       :hc:os:\
-       :co#132:\
-       :bl=^G:cr=^M:do=^J:\
-       :i1=\E(B\E[20l\E[w\E[0;132s\E[2g\E[z\E[66t\E[1;66r\E[4g\E>:\
-       :is=\E[9;17;25;33;41;49;57;65;73;81;89;97;105;113;121;129u\r:\
-       :kb=^H:le=^H:se=\E[w:sf=^J:so=\E[6w:ta=^I:
-dw4|decwriter IV:\
-       :am:hc:os:\
-       :co#132:\
-       :bl=^G:cr=^M:do=^J:is=\Ec:k0=\EOP:k1=\EOQ:k2=\EOR:\
-       :k3=\EOS:kb=^H:le=^H:sf=^J:ta=^I:
-
-#### Delta Data (dd)
-#
-
-# Untested. The cup sequence is hairy enough that it probably needs work.
-# The idea is ctrl(O), dd(row), dd(col), where dd(x) is x - 2*(x%16) + '9'.
-# There are BSD-derived termcap entries floating around for this puppy
-# that are *certainly* wrong.
-delta|dd5000|delta data 5000:\
-       :am:\
-       :co#80:li#27:\
-       :bl=^G:ce=^NU:cl=^NR:cm=\017%+^P%+^P:dc=^NV:do=^J:\
-       :ho=^NQ:le=^H:nd=^Y:sf=^J:up=^Z:
-
-#### Digital Data Research (ddr)
-#
-
-# (ddr: mapped ":pt:" to default tabs -- esr)
-ddr|rebus3180|ddr3180|Rebus/DDR 3180 vt100 emulator:\
-       :am:bs:pt:xn:\
-       :co#80:li#24:vt#3:\
-       :cd=50\E[J:ce=3\E[K:cl=50\E[;H\E[2J:cm=5\E[%i%d;%dH:\
-       :cs=\E[%i%d;%dr:do=^J:ho=\E[H:is=\E[1;24r\E[24;1H:\
-       :k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:kb=^H:kd=\E[B:\
-       :ke=\E[?1l\E>:kl=\E[D:kr=\E[C:ks=\E[?1h\E=:ku=\E[A:\
-       :le=^H:mb=2\E[5m:md=2\E[1m:me=2\E[m:mr=2\E[7m:\
-       :nd=2\E[C:rc=\E8:rf=/usr/share/lib/tabset/vt100:\
-       :rs=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h:sc=\E7:se=\E[m:\
-       :sf=5\ED:so=\E[7m:sr=5\EM:ue=2\E[m:up=2\E[A:\
-       :us=2\E[4m:
-
-#### General Electric (ge)
-#
-
-terminet1200|terminet300|tn1200|tn300|terminet|GE terminet 1200:\
-       :hc:os:\
-       :co#120:\
-       :bl=^G:cr=^M:do=^J:sf=^J:
-
-#### Heathkit/Zenith
-#
-
-h19-a|heath-ansi|heathkit-a|heathkit h19 ansi mode:\
-       :am:mi:ms:\
-       :co#80:it#8:li#24:\
-       :ae=\E[11m:al=\E[1L:as=\E[10m:bl=^G:cd=\E[J:ce=\E[K:\
-       :cl=\E[2J:cm=\E[%i%d;%dH:cr=^M:dc=\E[1P:dl=\E[1M:\
-       :do=\E[1B:ei=\E[4l:ho=\E[H:im=\E[4h:\
-       :is=\E<\E[>1;2;3;4;5;6;7;8;9l\E[0m\E[11m\E[?7h:\
-       :k1=\EOS:k2=\EOT:k3=\EOU:k4=\EOV:k5=\EOW:k6=\EOP:\
-       :k7=\EOQ:k8=\EOR:kb=^H:kd=\E[1B:kh=\E[H:kl=\E[1D:\
-       :kr=\E[1C:ku=\E[1A:l6=blue:l7=red:l8=white:le=^H:\
-       :nd=\E[1C:se=\E[0m:sf=^J:so=\E[7m:sr=\EM:ta=^I:\
-       :up=\E[1A:ve=\E[>4l:vs=\E[>4h:
-h19-bs|heathkit w/keypad shifted:\
-       :ke=\Eu:ks=\Et:tc=h19-b:
-h19-smul|heathkit w/keypad shifted/underscore cursor:\
-       :ke=\Eu:ks=\Et:tc=h19-u:
-h19|heath|h19-b|heathkit|heath-19|z19|zenith|heathkit h19:\
-       :am:es:hs:mi:ms:\
-       :co#80:it#8:li#24:\
-       :ae=\EG:al=\EL:as=\EF:bl=^G:cd=\EJ:ce=\EK:cl=\EE:\
-       :cm=\EY%+ %+ :cr=^M:dc=\EN:dl=\EM:do=\EB:ei=\EO:\
-       :fs=\Ek\Ey5:ho=\EH:im=\E@:k1=\ES:k2=\ET:k3=\EU:\
-       :k4=\EV:k5=\EW:k6=\EP:k7=\EQ:k8=\ER:kb=^H:kd=\EB:\
-       :kh=\EH:kl=\ED:kr=\EC:ku=\EA:l6=blue:l7=red:l8=white:\
-       :le=^H:nd=\EC:se=\Eq:sf=^J:so=\Ep:sr=\EI:ta=^I:\
-       :ts=\Ej\Ex5\EY8%p1%{32}%+%c\Eo\Eo:up=\EA:ve=\Ey4:\
-       :vs=\Ex4:
-h19-u|heathkit with underscore cursor:\
-       :ve@:vs@:tc=h19-b:
-alto-h19|altoh19|altoheath|alto-heath|alto emulating heathkit h19:\
-       :li#60:\
-       :al=\EL:dl=\EM:tc=h19:
-
-# The major problem with the Z29 is that it requires more 
-# padding than the Z19. Once again, here's a little termcap 
-# entry for it that will do the trick. 
-# 
-# The problem declaring an H19 to be synonomous with a Z29 is that
-# it needs more padding. It especially loses if a program attempts
-# to put the Z29 into insert mode and insert text at 9600 baud. It
-# even loses worse if the program attempts to insert tabs at 9600
-# baud. Adding padding to text that is inserted loses because in 
-# order to make the Z29 not die, one must add so much padding that
-# whenever the program tries to use insert mode, the effective 
-# rate is about 110 baud.
-# 
-# What program would want to put the terminal into insert mode 
-# and shove stuff at it at 9600 baud you ask?  
-# 
-# Emacs. Emacs seems to want to do the mathematically optimal 
-# thing in doing a redisplay rather than the practical thing.
-# When it is about to output a line on top of a line that is 
-# already on the screen, instead of just killing to the end of 
-# the line and outputing the new line, it compares the old line 
-# and the new line and if there are any similarities, it 
-# constructs the new line by deleting the text on the old line 
-# on the terminal that is already there and then inserting new
-# text into the line to transform it into the new line that is 
-# to be displayed. The Z29 does not react kindly to this.
-# 
-# But don't cry for too long.... There is a solution. You can make
-# a termcap entry for the Z29 that says the Z29 has no insert mode.
-# Then Emacs cannot use it. "Oh, no, but now inserting into a 
-# line will be really slow", you say. Well there is a sort of a
-# solution to that too. There is an insert character option on 
-# the Z29 that will insert one character. Unfortunately, it 
-# involves putting the terminal into ansi mode, inserting the 
-# character, and changing it back to H19 mode. All this takes 12 
-# characters. Pretty expensive to insert one character, but it 
-# works. Either Emacs doesn't try to use its inserting hack when 
-# it's only given an insert character ability or the Z29 doesn't 
-# require padding with this (the former is probably more likely, 
-# but I haven't checked it out).
-z29|zenith29|z29b|zenith z29b:\
-       :am:ms:\
-       :co#80:li#24:\
-       :ae=\EF:al=\EL:as=\EG:bl=^G:bt=\E-:cd=\EJ:ce=\EK:\
-       :cl=\EE:cm=\EY%+ %+ :cr=^M:dc=\EN:dl=\EM:do=\EB:ei=:\
-       :ho=\EH:ic=\E<\E[1@\E[?2h:im=:is=\E<\E[?2h\Ev:k0=\E~:\
-       :k1=\ES:k2=\ET:k3=\EU:k4=\EV:k5=\EW:k6=\EP:k7=\EQ:\
-       :k8=\ER:k9=\E0I:kb=^H:kd=\EB:kh=\EH:kl=\ED:kr=\EC:\
-       :ku=\EA:l0=home:le=^H:nd=\EC:se=\Eq:sf=\n:so=\Ep:\
-       :sr=\EI:ta=^I:ue=\Es0:up=\EA:us=\Es8:ve=\Ey4:vs=\Ex4:
-
-# From: Brad Brahms <Brahms@USC-ECLC>
-z100|h100|z110|z-100|h-100|heath/zenith z-100 pc with color monitor:\
-       :ve=\Ey4\Em70:vs=\Ex4\Em71:tc=z100bw:
-# (z100bw: removed obsolete ":kn#10:"; mapped ":pt:" to default tabs -- esr)
-z100bw|h100bw|z110bw|z-100bw|h-100bw|heath/zenith z-100 pc:\
-       :bs:mi:ms:pt:\
-       :co#80:li#24:\
-       :ae=\EG:al=5*\EL:as=\EF:cd=\EJ:ce=\EK:cl=5*\EE:\
-       :cm=1*\EY%+ %+ :dc=1*\EN:dl=5*\EM:do=\EB:ei=\EO:\
-       :ho=\EH:im=\E@:k0=\EJ:k1=\ES:k2=\ET:k3=\EU:k4=\EV:\
-       :k5=\EW:k6=\EP:k7=\EQ:k8=\ER:k9=\EOI:kb=^H:kd=\EB:\
-       :kh=\EH:kl=\ED:kr=\EC:ku=\EA:nd=\EC:se=\Eq:so=\Ep:\
-       :sr=\EI:up=\EA:ve=\Ey4:vs=\Ex4:
-p19:\
-       :al=2*\EL:dl=2*\EM:tc=h19-b:
-# From: <ucscc!B.fiatlux@ucbvax.berkeley.edu>
-# (ztx: mapped ":pt:" to default tabs; removed duplicate :sr: -- esr)
-ztx|ztx11|zt-1|htx11|ztx-1-a|ztx-10/11:\
-       :am:bs:es:hs:pt:\
-       :co#80:li#24:\
-       :al=\EL:cd=\EJ:ce=\EK:cl=\EE:cm=\EY%+ %+ :dl=\EM:\
-       :do=^J:ds=\Ey1:fs=\Ek\Ey5:ho=\EH:\
-       :is=\Ej\EH\Eq\Ek\Ev\Ey1\Ey5\EG\Ey8\Ey9\Ey>:k0=\ES:\
-       :k1=\EB:k2=\EU:k3=\EV:k4=\EW:k5=\EP:k6=\EQ:k7=\ER:\
-       :kb=^H:kd=\EB:kl=\ED:kr=\EC:ku=\EA:le=^H:nd=\EC:\
-       :se=\Eq:so=\Es5:sr=\EI:ts=\Ej\Ex5\Ex1\EY8%+ \Eo:\
-       :ue=\Eq:up=\EA:us=\Es2:
-
-#### IMS International (ims)
-#
-# There was a company called IMS International located in Carson City, 
-# Nevada, that flourished from the mid-70s to mid-80s.  They made S-100
-# bus/Z80 hardware and a line of terminals called Ultimas.  
-
-# From: Erik Fair <fair@ucbarpa.berkeley.edu>  Sun Oct 27 07:21:05 1985
-ims950-b|bare ims950 no init string:\
-       :is@:tc=ims950:
-ims950-ns|ims950 w/no standout:\
-       :se@:so@:ue@:us@:tc=ims950:
-# (ims950: removed obsolete ":ko@:" -- esr)
-ims950|ims televideo 950 emulation:\
-       :xn@:\
-       :k0@:k1@:k2@:k3@:k4@:k5@:k6@:k7@:k8@:k9@:kb@:kd@:kh@:\
-       :kl@:kr@:ku@:vb@:tc=tvi950:
-# (ims950-rv: removed obsolete ":ko@:" -- esr)
-ims950-rv|ims tvi950 rev video:\
-       :xn@:\
-       :k0@:k1@:k2@:k3@:k4@:k5@:k6@:k7@:k8@:k9@:kb@:kd@:kh@:\
-       :kl@:kr@:ku@:vb@:tc=tvi950-rv:
-# (ims-ansi: mapped ":pt:" to default tabs -- esr)
-ims-ansi|ultima2|ultimaII|IMS Ultima II:\
-       :am:bs:pt:\
-       :co#80:li#24:\
-       :cd=\E[0J:ce=\E[0K:cl=\E[;H\E[2J:cm=\E[%i%2;%2H:\
-       :do=\ED:if=/usr/share/tabset/vt100:\
-       :is=\E[0m\E[>14l\E[?1;?5;20l\E>\E[1m\r:kd=\E[B:\
-       :kh=\E[H:kl=\E[D:kr=\E[C:ku=\E[A:se=\E[0m\E[1m:\
-       :so=\E[7m:sr=\EM:ue=\E[0m\E[1m:up=\EM:us=\E[4m:
-
-#### Intertec Data Systems
-#
-# I think this company is long dead as of 1995.  They made an early CP/M
-# micro called the "Intertec Superbrain" that was moderately popular,
-# then sank out of sight.
-#
-
-superbrain|intertec superbrain:\
-       :am:bw:\
-       :co#80:li#24:\
-       :bl=^G:cd=\E~k<10*>:ce=\E~K:cl=\014:cm=\EY%+ %+ :\
-       :cr=^M:do=^J:kd=^J:kl=^U:kr=^F:ku=^K:le=^H:nd=^F:\
-       :sf=^J:ta=^I:te=^L:ti=^L:up=^K:
-intertube|intertec|Intertec InterTube:\
-       :am:\
-       :co#80:li#25:\
-       :bl=^G:cl=^L:cm=\EY%+ %+ :cr=^M:do=^J:ho=^A:le=^H:\
-       :nd=^F:se=\E0@:sf=^J:so=\E0P:up=^Z:
-# The intertube 2 has the "full duplex" problem like the tek 4025: if you
-# are typing and a command comes in, the keystrokes you type get interspersed
-# with the command and it messes up
-it2|intertube2|intertec data systems intertube 2:\
-       :am:\
-       :co#80:li#25:\
-       :bl=^G:ce=\EK:ch=\020%+^J:cl=^L:cm=\016%.\020%+^J:\
-       :cr=^M:cv=\013%.:do=^J:ho=^A:le=^H:ll=^K^X\r:nd=^F:\
-       :se=\E0@:sf=^J:so=\E0P:up=^Z:
-
-#### Modgraph
-#
-# These people used to be reachable at:
-#
-#      Modgraph, Inc
-#      1393 Main Street,
-#      Waltham, MA 02154
-#      Vox: (617)-890-5796.
-#
-# However, if you call that number today you'll get an insurance company.
-# I think Modgraph is long gone.
-#
-
-modgraph|mod|modgraph terminal emulating vt100:\
-       :xn@:\
-       :co#80:li#24:\
-       :is=\E^9;0s\E^7;1s\E[3g\E^11;9s\E^11;17s\E^11;25s\E^11;33s\E^11;41s\E^11;49s\E^11;57s\E^11;65s\E^11;73s\E^11;81s\E^11;89s:\
-       :rf@:sr=5\EM\E[K:vs=\E^9;0s\E^7;1s:tc=vt100:
-# (modgraph2: mapped ":pt:" to default tabs -- esr)
-# The GX-1000 manual is dated 1984
-modgraph2|modgraph gx-1000, set to 80x24, keypad not enabled:\
-       :am:bs:da:db:pt:\
-       :co#80:li#24:\
-       :cd=50\EJ:ce=3\EK:cl=50\EH\EJ:cm=5\EY%+ %+ :\
-       :is=\E<\E^5;2s\E^7;1s\E[3g\E^11;9s\E^11;17s\E^11;25s\E^11;33s\E^11;41s\E^11;49s\E^11;57s\E^11;65s\E^11;73s\E^11;81s\E^11;89s\E^12;0s\E^14;2s\E^15;9s\E^25;1s\E^9;1s\E^27;1:\
-       :nd=2\EC:sr=5\EI:up=2\EA:
-
-#### Morrow Designs
-# 
-# This was George Morrow's company.  They started in the late 1970s making
-# S100-bus machines.  They used to be reachable at:
-#
-#        Morrow
-#        600 McCormick St.
-#        San Leandro, CA 94577
-#
-# but they're long gone now (1995).
-#
-
-# The mt70 terminal was shipped with the Morrow MD-3 microcomputer. 
-# Jeff's specimen was dated June 1984.
-# From: Jeff Wieland <wieland@acn.purdue.edu> 24 Feb 1995
-mt70|mt-70|Morrow MD-70; native Morrow mode:\
-       :am:mi:ms:xo:\
-       :co#80:it#8:li#24:\
-       :%1=^AO\r:F1=^A`\r:F2=^Aa\r:F3=^Ab\r:F4=^Ac\r:\
-       :F5=^Ad\r:F6=^Ae\r:F7=^Af\r:F8=^Ag\r:F9=^Ah\r:\
-       :FA=^Ai\r:ac=+z\\\054{.yOi-x`|jGkFlEmDnHtLuKvNwMxIqJ:\
-       :ae=\E%:al=\EE:as=\E$:bl=^G:bt=\EI:cd=\EY:ce=\ET:\
-       :cl=^Z:cm=\E=%+ %+ :cr=^M:ct=\E0:dc=\EW:dl=\ER:do=^J:\
-       :ei=:ho=^^:i1=\E"2\EG0\E]:ic=\EQ:im=:k1=^A@\r:\
-       :k2=^AA\r:k3=^AB\r:k4=^AC\r:k5=^AD\r:k6=^AE\r:\
-       :k7=^AF\r:k8=^AG\r:k9=^AH\r:k;=^AI\r:kB=^A^Z\r:\
-       :kC=^An\r:kD=\177:kb=^H:kd=^AK\r:kh=^AN\r:kl=^AL\r:\
-       :kr=^AM\r:ku=^AJ\r:le=^H:me=\EG0:mh=\EG2:mr=\EG4:\
-       :nd=^L:nw=^_:se=\EG0:sf=^J:so=\EG4:ta=^I:\
-       :ti=\E"2\EG0\E]:up=^K:us=\EG1:vb=\EK1\EK0:ve=\E"2:\
-       :vi=\E"0:
-
-#### Netronics
-#
-# The Netronics Smarterm 80 was a kit-built terminal that came in at least two
-# flavors, a first 40-column version, and a second 64-column version released
-# about 1983.
-
-# (netx: removed obsolete ":ma=j^Jk^Pl :" -- esr)
-netx|netronics:\
-       :bs:\
-       :co#64:li#16:\
-       :bl=^G:cd=\006\005:ce=\005:cl=\014:cm=\E=%+@%+@:\
-       :cr=^M:do=^J:ho=^D:le=^H:nd=\E+@A:sf=^J:sr=\E=@@\013:\
-       :up=^K:
-smartvid|Netronics Smartvid 80:\
-       :am:bw:eo:ms:xs:\
-       :co#80:li#24:sg#1:ug#1:\
-       :ae=\EGB:as=\EG@:bl=^G:bt=\EI:cd=\EY:ce=\ET:cl=^L:\
-       :cm=\E=%+ %+ :cr=^M:dc=\EW:dl=\ER:do=^J:ei=\ED:ho=^Z:\
-       :ic=\EQ:im=\EC:le=^H:ll=^Z^K:nd=^A:se=\EG@:sf=^J:\
-       :so=\EGC:sr=^K:ta=\Ei:te=^Z^K:ue=\EG@:up=^K:us=\EGA:\
-       :ve=^Z^K:
-smarterm|smarterm-s|netronics smarterm 80x24 naked terminal:\
-       :am:ul:\
-       :co#80:li#24:sg#1:ug#1:\
-       :al=\EE:bl=^G:bt=\EI:cd=\EY:ce=\ET:cl=^L:\
-       :cm=\E=%+ %+ :cr=^M:dc=\EW:dl=\ER:do=^J:ei=\ED:ho=^Z:\
-       :ic=\EQ:im=\EC:le=^H:nd=^A:sf=^J:ta=^I:ue=\EG@:\
-       :us=\EGA:
-
-#### Omron
-#
-# This company is still around in 1995, manufacturing point-of-sale systems.
-
-omron|Omron 8025AG:\
-       :am:bs:da:db:\
-       :co#80:li#24:\
-       :al=\EL:bl=^G:cd=\ER:ce=\EK:cl=\EJ:cr=^M:dc=\EP:\
-       :dl=\EM:do=^J:ho=\EH:le=^H:nd=\EC:se=\E4:sf=\ES:\
-       :so=\Ef:sr=\ET:up=\EA:vs=\EN:
-
-#### Soroc
-#
-
-# (soroc120: removed obsolete ":ma=^K^P^R^L^L :" -- esr)
-soroc120|iq120|soroc iq120:\
-       :cd=\EY:ce=\ET:cl=\E*:do=^J:kd=^J:kl=^H:kr=^L:ku=^K:tc=adm3a:
-soroc140|iq140|soroc iq140:\
-       :am:mi:\
-       :co#80:li#24:\
-       :al=\Ee:bl=^G:bt=\EI:cd=\Ey:ce=\Et:cl=\E+:\
-       :cm=\E=%+ %+ :cr=^M:dc=\Ew:dl=\Er:do=^J:ei=\E8:ho=^^:\
-       :im=\E9:k0=^A0\r:k1=^A@\r:k2=^AA\r:k3=^AB\r:k4=^AC\r:\
-       :k5=^AD\r:k6=^AE\r:k7=^AF\r:k8=^AG\r:k9=^AH\r:kb=^H:\
-       :kh=^^:kr=^L:ku=^K:le=^H:ll=^^^K:nd=^L:se=\E\177:\
-       :sf=^J:so=\E\177:ue=\E^A:up=^K:us=\E^A:
-
-#### Southwest Technical Products
-#
-# These guys made an early personal micro called the M6800.  
-# The ct82 was probably its console terminal.
-#
-
-# (swtp: removed obsolete ":bc=^D:" -- esr)
-swtp|ct82|southwest technical products ct82:\
-       :am:\
-       :co#82:li#20:\
-       :al=^^Y:bl=^G:cd=^V:ce=^F:cl=^L:cm=\013%r%.%.:cr=^M:\
-       :dc=^^H:dl=^Z:do=^J:ei=:ho=^P:ic=^^X:im=:\
-       :is=\034\022\036\023\036\004\035\027\011\023\036\035\036\017\035\027\022\011:\
-       :le=^D:ll=^C:nd=^S:se=^^^F:sf=^N:so=^^^V:sr=^O:up=^A:
-
-#### Synertek
-#
-# Bob Manson <manson@pattyr.acs.ohio-state.edu> writes (28 Apr 1995):
-#
-# Synertek used to make ICs, various 6502-based single-board process
-# control and hobbyist computers, and assorted peripherals including a
-# series of small inexpensive terminals (I think they were one of the
-# first to have a "terminal-on-a-keyboard", where the terminal itself
-# was only slightly larger than the keyboard).
-#
-# They apparently had a KTM-1 model, which I've never seen. The KTM-2/40
-# was a 40x24 terminal that could connect to a standard TV through a
-# video modulator.  The KTM-2/80 was the 80-column version (the 2/40
-# could be upgraded to the 2/80 by adding 2 2114 SRAMs and a new ROM).
-# I have a KTM-2/80 still in working order.  The KTM-2s had fully
-# socketed parts, used 2 6507s, a 6532 as keyboard scanner, a program
-# ROM and 2 ROMs as character generators. They were incredibly simple,
-# and I've never had any problems with mine (witness the fact that mine
-# was made in 1981 and is still working great... I've blown the video
-# output transistor a couple of times, but it's a 2N2222 :-)
-#
-# The KTM-3 (which is what is listed in the terminfo file) was their
-# attempt at putting a KTM-2 in a box (and some models came with a
-# CRT). It wasn't much different from the KTM-2 hardware-wise, but the
-# control and escape sequences are very different. The KTM-3 was always
-# real broken, at least according to the folks I've talked to about it.
-# 
-# The padding in the entry is probably off--these terminals were very
-# slow (it takes like 100ms for the KTM-2 to clear the screen...) And
-# anyone with any sanity replaced the ROMs with something that provided
-# a reasonable subset of VT100 functionality, since the usual ROMs were
-# obviously very primitive... oh, you could get an upgraded ROM from
-# Synertek for some incredible amount of money, but what hacker with an
-# EPROM burner would do that? :)
-# 
-# Sorry I don't have any contact info; I believe they were located in
-# Sunnyvale, and I'm fairly sure they are still manufacturing ICs
-# (they've gone to ASICs and FPGAs), but I doubt they're in the computer
-# business these days.
-
-# Tested, seems to work fine with vi.
-synertek|ktm|synertek380|synertek ktm 3/80 tubeless terminal:\
-       :am:\
-       :co#80:li#24:\
-       :cd=\EJ:ce=\EK:cl=^Z:cm=\E=%+ %+ :le=^H:nd=^L:up=^K:
-
-#### Tab Office Products
-#
-#      TAB Products Co. - Palo Alto, California
-#      Electronic Office Products,
-#      1451 California Avenue 94304
-#
-# I think they're out of business.
-#
-
-# The tab 132 uses xon/xoff, so no padding needed.
-# :ks:/:ke: have nothing to do with arrow keys.
-# :is: sets 80 col mode, normal video, autowrap on (for :am:).
-# Seems to be no way to get rid of status line.
-# The manual for this puppy was dated June 1981.  It claims to be VT52-
-# compatible.
-tab132|tab|tab132-15|tab 132/15:\
-       :da:db:\
-       :co#80:dN@:li#24:lm#96:\
-       :al=\E[L:cm=\E[%i%d;%dH:dc=\E[P:dl=\E[M:do=^J:\
-       :ei=\E[4l:im=\E[4h:is=\E[?7h\E[?3l\E[?5l:kd=\E[B:ke@:\
-       :kl=\E[D:ks@:ku=\E[A:tc=vt100:
-tab132-w:\
-       :co#132:\
-       :is=\E[?7h\E[?3h\E[?5l:tc=tab132:
-tab132-rv:\
-       :is=\E[?7h\E[?3l\E[?5h:tc=tab132:
-tab132-w-rv:\
-       :is=\E[?7h\E[?3h\E[?5h:tc=tab132-w:
-
-
-#### Teleray
-#
-#      Research Incorporated
-#      6425 Flying Cloud Drive
-#      Eden Prairie, MN 55344
-#      Vox: (612)-941-3300
-#
-# The Teleray terminals were all discontinued in 1992-93.  RI still services
-# and repairs these beasts, but no longer manufactures them.  The Teleray
-# people believe that all the types listed below are very rare now (1995).
-# There was a newer line of Telerays (Model 7, Model 20, Model 30, and
-# Model 100) that were ANSI-compatible.
-#
-# Note two things called "teleray".  Reorder should move the common one
-# to the front if you have either.  A dumb teleray with the cursor stuck
-# on the bottom and no obvious model number is probably a 3700.
-#
-
-t3700|dumb teleray 3700:\
-       :bs:\
-       :co#80:li#24:\
-       :bl=^G:cl=^L:cr=^M:do=^J:le=^H:sf=^J:
-# (t3800: mapped ":pt:" to default tabs -- esr)
-t3800|teleray 3800 series:\
-       :bs:pt:\
-       :co#80:li#24:\
-       :bl=^G:cd=\EJ:ce=\EK:cl=^L:cm=\EY%+ %+ :cr=^M:do=^J:\
-       :ho=\EH:le=^H:ll=\EY7 :nd=\EC:sf=^J:ta=^I:up=^K:
-# (t1061: mapped ":pt:" to default tabs -- esr)
-t1061|teleray|teleray 1061:\
-       :am:km:xs:xt:\
-       :co#80:li#24:sg#1:ug#1:\
-       :al=\EL:bl=^G:cd=\EJ:ce=\EK:cl=\014:cm=\EY%+ %+ :\
-       :cr=^M:ct=\EG:dc=\EQ:dl=\EM:do=^J:ei=:ho=\EH:ic=\EP:\
-       :im=:ip=:\
-       :is=\Ee\EU01^Z1\EV\EU02^Z2\EV\EU03^Z3\EV\EU04^Z4\EV\EU05^Z5\EV\EU06^Z6\EV\EU07^Z7\EV\EU08^Z8\EV\Ef:\
-       :k1=^Z1:k2=^Z2:k3=^Z3:k4=^Z4:k5=^Z5:k6=^Z6:k7=^Z7:\
-       :k8=^Z8:le=^H:nd=\EC:se=\ER@:sf=^J:so= \ERD:st=\EF:\
-       :ta=^I:ue=\ER@:up=\EA:us=\ERH:
-t1061f|teleray 1061 with fast PROMs:\
-       :al=\EL:dl=\EM:ip@:tc=t1061:
-# "Teleray Arpa Special", offically designated as
-# "Teleray Arpa network model 10" with "Special feature 720".
-# This is the new (1981) fast microcode updating the older "arpa" proms
-# (which gave meta-key and progmmable-fxn keys).  720 is much much faster,
-# converts the keypad to programmable function keys, and has other goodies.
-# Standout mode is still broken (magic cookie, etc) so is suppressed as no
-# programs handle such lossage properly.
-# Note: this is NOT the old termcap's "t1061f with fast proms."
-# From: J. Lepreau <lepreau@utah-cs> Tue Feb  1 06:39:37 1983, Univ of Utah
-# (t10: mapped ":pt:" to default tabs;
-# removed overridden ":so@:se@:us@:ue@:" -- esr)
-t10|teleray 10 special:\
-       :bs:km:pt:xs:xt:\
-       :co#80:li#24:sg#2:ug#1:\
-       :al=\EL:cd=\EJ:ce=\EK:cl=30\Ej:cm=\EY%+ %+ :dc=\EQ:\
-       :dl=\EM:ei=:ho=\EH:ic=\EP:im=:nd=\EC:pc=\200:se=\ER@:\
-       :sf=\Eq:so=\ERD:sr=\Ep:ue=\ER@:up=\EA:us=\ERH:
-# teleray 16 - map the arrow keys for vi/rogue, shifted to up/down page, and
-# back/forth words. Put the function keys (f1-f10) where they can be
-# found, and turn off the other magic keys along the top row, except
-# for line/local. Do the magic appropriate to make the page shifts work.
-# Also toggle ^S/^Q for those of us who use Emacs.
-t16|teleray 16:\
-       :am:da:db:mi:xs:xt:\
-       :co#80:li#24:\
-       :al=\E[L:bl=^G:cd=\E[0J:ce=\E[0K:cl=\E[H\E[2J:\
-       :cm=%i\E[%d;%df:cr=^M:dc=\E[P:dl=\E[M:do=\E[B:\
-       :ei=\E[4l:ho=\E[H:im=\E[4h:k1=^Z1:k2=^Z2:k3=^Z3:\
-       :k4=^Z4:k5=^Z5:k6=^Z6:k7=^Z7:k8=^Z8:k9=^Z9:k;=^Z0:\
-       :le=^H:nd=\E[C:se=\E[m:sf=^J:so=\E[7m:sr=\E[T:ta=^I:\
-       :te=\E[V\E[24;1f\E[?38h:ti=\E[U\E[?38l:ue=\E[m:\
-       :up=\E[A:us=\E[4m:
-
-#### Texas Instruments (ti)
-#
-
-ti700|ti733|ti735|ti silent 700:\
-       :bs:hc:os:\
-       :co#80:dC#162:\
-       :bl=^G:cr=\r:do=^J:le=^H:sf=^J:
-ti743|ti745|ti silent 745:\
-       :bs:hc:os:\
-       :co#80:\
-       :bl=^G:cr=^M:do=^J:le=^H:sf=^J:
-ti800|ti omni 800:\
-       :bs:hc:os:\
-       :co#132:\
-       :bl=^G:cr=^M:do=^J:le=^H:sf=^J:
-ti924|Texas Instruments 924 VDT 8859/1 7 bit CTRL:\
-       :am:xo:\
-       :co#80:it#8:li#24:\
-       :al=\E[L:bl=^G:cd=\E[J:ce=\E[K:cl=\E[2J\E[H:\
-       :cm=%i\E[%d;%dH:cr=^M:cs=%i\E[%d;%dr:ct=\E[3g:\
-       :dl=\E[M:do=\E[B:ho=\E[H:k1=\EOP:k2=\EOQ:k3=\EOR:\
-       :k4=\EOS:k5=\E[16~:k6=\E[17~:k7=\E[18~:k8=\E[19~:\
-       :k9=\E[20~:kD=\E[P:kI=\E[@:kb=^H:kd=\E[B:kl=\E[D:\
-       :kr=\E[C:ku=\E[A:le=\E[D:mb=\E[5m:md=\E[1m:me=\E[0m:\
-       :mr=\E[7m:nd=\E[C:rc=\E8:sc=\E7:se=\E[m:sf=\ED:\
-       :so=\E[7m:sr=\EM:st=\EH:ta=^I:ue=\E[m:up=\E[A:\
-       :us=\E[4m:ve=\E[?25h:vi=\E[?25l:vs=\E[?31h:
-ti924-8|Texas Instruments 924 VDT 8859/1 8 bit CTRL:\
-       :am:xo:\
-       :co#80:it#8:li#24:\
-       :al=\E[L:bl=^G:cd=\E[J:ce=\E[K:cl=\E[2J\E[H:\
-       :cm=%i\E[%d;%dH:cr=^M:cs=%i\E[%d;%dr:ct=\E[3g:\
-       :dl=\E[M:do=\E[B:ho=\E[H:k1=P\217>:k2=Q\217>:\
-       :k3=R\217>:k4=S\217>:k5=~\23316>:k6=~\23317>:\
-       :k7=~\23318>:k8=~\23319>:k9=~\23320>:kD=P\233>:\
-       :kI=@\233>:kb=^H:kd=\E[B:kl=\E[D:kr=\E[C:ku=\E[A:\
-       :le=\E[D:mb=\E[5m:md=\E[1m:me=\E[0m:mr=\E[7m:nd=\E[C:\
-       :rc=\E8:sc=\E7:se=\E[m:sf=\ED:so=\E[7m:sr=\EM:st=\EH:\
-       :ta=^I:ue=\E[m:up=\E[A:us=\E[4m:ve=\E[?25h:\
-       :vi=\E[?25l:vs=\E[?31h:
-ti924w|Texas Instruments 924 VDT 7 bit - 132 column mode:\
-       :co#132:\
-       :tc=ti924:
-ti924-8w|Texas Instruments 924 VDT 8 bit - 132 column mode:\
-       :co#132:\
-       :tc=ti924-8:
-em931-9|Texas Instruments 924 Emulator in the 931 Mode:\
-       :tc=ti931:
-em924|Texas Instruments 924 Emulator in the 924 Mode:\
-       :tc=ti924:
-em931|Texas Instruments 931 Emulator:\
-       :tc=ti931:
-ti931|Texas Instruments 931 VDT:\
-       :am:xo:\
-       :co#80:li#24:\
-       :LE=ENTR:al=\EN:bl=^G:cd=\EJ:ce=\EI:cl=\EL:\
-       :cm=\EY%+ %+ :cr=^M:dc=\EQ:dl=\EO:do=\EB:ei=:ho=\EH:\
-       :ic=\ER\EP\EM:im=:is=\EGB\E(@B@@\E):k1=\Ei1:k2=\Ei2:\
-       :k3=\Ei3:k4=\Ei4:k5=\Ei5:k6=\Ei6:k7=\Ei7:k8=\Ei8:\
-       :k9=\Ei9:kA=\EN:kD=\EQ:kI=\EP:kL=\EO:kd=\EB:kl=\ED:\
-       :kr=\EC:ku=\EA:le=\ED:mb=\E4P:me=\E4@:mk=\E4H:\
-       :mr=\E4B:nd=\EC:se=\E4@:sf=\Ea:so=\E4A:sr=\Eb:\
-       :ue=\E4@:up=\EA:us=\E4D:ve=\E4@:
-ti926|Texas Instruments 926 VDT 8859/1 7 bit CTRL:\
-       :cs@:sf=\E[1S:sr=\E[1T:tc=ti924:
-ti926-8|Texas Instruments 926 VDT 8859/1 8 bit CTRL:\
-       :cs@:sf=S\2331>:sr=T\2331>:tc=ti924-8:
-ti_ansi|basic entry for ti928:\
-       :am:eo:ut:xn:xo:\
-       :Co#8:co#80:it#8:li#25:pa#64:\
-       :@7=\E[F:Sb=\E[4%dm:Sf=\E[3%dm:al=\E[L:bl=^G:bt=\E[Z:\
-       :cd=\E[J:ce=\E[K:cl=\E[2J\E[H:cm=\E[%i%d;%dH:cr=^M:\
-       :cs=\E[%i%d;%dr:dc=\E[P:dl=\E[M:do=\E[B:ei=:ho=\E[H:\
-       :ic=\E[@:im=:k0=\E[V:k1=\E[M:k2=\E[N:k3=\E[O:k4=\E[P:\
-       :k5=\E[Q:k6=\E[R:k7=\E[S:k8=\E[T:k9=\E[U:kN=\E[G:\
-       :kP=\E[I:kb=^H:kd=\E[B:kh=\E[H:kl=\E[D:kr=\E[C:\
-       :ku=\E[A:le=^H:mb=\E[5m:md=\E[1m:me=\E[m:nd=\E[C:\
-       :op=\E[37;40m:se=\E[m:sf=\E[S:so=\E[7m:sr=\E[T:ta=^I:\
-       :ue=\E[m:up=\E[A:us=\E[4m:
-#
-#       928 VDT 7 bit control mode
-#
-ti928|Texas Instruments 928 VDT 8859/1 7 bit CTRL::\
-       :%9=\E[35~:@7=\E_1\E\\:@8=\E[8~:F1=\E[29~:F2=\E[31~:\
-       :F3=\E[32~:F5=\E[34~:k1=\E[17~:k2=\E[18~:k3=\E[19~:\
-       :k4=\E[20~:k5=\E[21~:k6=\E[23~:k7=\E[24~:k8=\E[25~:\
-       :k9=\E[26~:k;=\E[28~:kD=\E[P:kI=\E[@:kN=\E[S:kP=\E[T:tc=ti_ansi:
-#
-#       928 VDT 8 bit control mode
-#
-ti928-8|Texas Instruments 928 VDT 8859/1 8 bit CTRL::\
-       :%9=\23335~:@7=\2371\234:@8=\2338~:F1=\23329~:\
-       :F2=\23331~:F3=\23332~:F5=\23334~:k1=\23317~:\
-       :k2=\23318~:k3=\23319~:k4=\23320~:k5=\23321~:\
-       :k6=\23323~:k7=\23324~:k8=\23325~:k9=\23326~:\
-       :k;=\23328~:kD=\233P:kI=\233@:kN=\233S:kP=\233T:\
-       :kh=\233H:tc=ti_ansi:
-
-#### Zentec (zen)
-#
-
-# (zen30: removed obsolete ":ma=^L ^R^L^K^P:" -- esr)
-zen30|z30|zentec 30:\
-       :am:bs:mi:ul:\
-       :co#80:li#24:\
-       :al=\EE:bl=^G:cd=\EY:ce=\ET:cl=\E*:cm=\E=%+ %+ :\
-       :cr=^M:dc=\EW:dl=\ER:do=^J:ei=\Er:ho=^^:im=\Eq:le=^H:\
-       :nd=^L:se=\EG0:sf=^J:so=\EG6:up=^K:
-# (zen50: this had unknown capabilities
-#      :BS=^U:CL=^V:CR=^B:
-# UK/DK/RK/LK/HM were someone's aliases for ku/kd/kl/kr/kh,
-# which were also in the original entry -- esr)
-# (zen50: removed obsolete ":ma=^Hh^Ll^Jj^Kk:" -- esr)
-zen50|z50|zentec zephyr:\
-       :am:bs:\
-       :co#80:li#24:sg#1:\
-       :al=\EE:cd=\EY:ce=\ET:cl=\E+:cm=\E=%+ %+ :dc=\EW:\
-       :dl=\ER:ei=:ic=\EQ:im=:kd=^J:kh=^^:kl=^H:kr=^L:ku=^K:\
-       :se=\EGO:so=\EG4:up=^K:
-
-######## OTHER OBSOLETE TYPES
-#
-# These terminals are *long* dead -- these entries are retained for
-# historical interest only.
-
-#### Obsolete non-ANSI software emulations
-#
-
-# CTRM terminal emulator
-# 1. underlining is not allowed with colors: first, is is simulated by 
-# black on white, second, it disables background color manipulations.
-# 2. BLINKING, REVERSE and BOLD are allowed with colors,
-# so we have to save their status in the static registers A, B and H
-# respectively, to be able to restore them when color changes
-# (because any color change turns off ALL attributes)
-# 3. "enter_bold_mode" and "enter_reverse_mode" sequences alternates modes,
-# rather then simply  entering them.  Thus we have to check the
-# static register B and H to determine the status, before sending the 
-# escape sequence.
-# 4. sgr0 now must set the status of all 3 register (A,B,H) to zero
-# and then reset colors
-# 5. implementation of the protect mode would badly penalize the performance.
-# we would have to use \E&bn sequence to turn off colors (as well as all
-# other attributes), and keep the status of protect mode in yet another
-# static variable.  If someone really need this mode, they would have to
-# create another terminfo entry.
-# 6. original color-pair is white on black.
-# store the information about colors into static registers
-# 7. set foreground color.  it performs the following steps.
-#   1) turn off all attributes
-#   2) turn on the background and video attribues that have been turned
-#      on before (this information is stored in static registers X,Y,Z,A,B,H,D).
-#   3) turn on foreground attributes
-#   4) store information about foreground into U,V,W static registers
-# 8. turn on background: similar to turn on foreground above
-ctrm|C terminal emulator:\
-       :am:ut:xo:\
-       :Co#8:NC#2:Nl#0:co#80:lh#0:li#24:lm#0:lw#0:pa#63:\
-       :pb#19200:vt#6:\
-       :..Sb=\E&bn\n%?%gA%t\E&dA%;\n%?%gB%t\E&dB%;\n%?%gH%t\E&dH%;\n%?%gU%t\E&bR%;\n%?%gV%t\E&bG%;\n%?%gW%t\E&bB%;\n\n%?%p1%{1}%&%t\E&bb%{1}%e%{0}%;%PZ\n%?%p1%{2}%&%t\E&bg%{1}%e%{0}%;%PY\n%?%p1%{4}%&%t\E&br%{1}%e%{0}%;%PX:\
-       :..Sf=\E&bn\n%?%gA%t\E&dA%;\n%?%gB%t\E&dB%;\n%?%gH%t\E&dH%;\n%?%gX%t\E&br%;\n%?%gY%t\E&bg%;\n%?%gZ%t\E&bb%;\n\n%?%p1%{1}%&%t\E&bB%{1}%e%{0}%;%PW\n%?%p1%{2}%&%t\E&bG%{1}%e%{0}%;%PV\n%?%p1%{4}%&%t\E&bR%{1}%e%{0}%;%PU:\
-       :al=\EL:bl=^G:bt=\Ei:cd=\EJ:ce=\EK:ch=\E&a%dC:\
-       :cl=\EH\EJ:cm=\E&a%r%dc%dY:cr=^M:ct=\E3:cv=\E&a%dY:\
-       :dc=\EP:dl=\EM:do=^J:ei=\ER:im=\EQ:ip=:is=\E&jA\r:\
-       :k1=\Ep\r:k2=\Eq\r:k3=\Er\r:k4=\Es\r:k5=\Et\r:\
-       :k6=\Eu\r:k7=\Ev\r:k8=\Ew\r:kb=^H:kd=\Ew\r:ke=\E&jA:\
-       :kh=\Ep\r:kl=\Eu\r:kr=\Ev\r:ks=\E&jB:ku=\Et\r:le=^H:\
-       :mb=\E&dA%{1}%PA:md=%?%gH%{0}%=%t\E&dH%{1}%PH%;:\
-       :me=\E&d@%{0}%PA%{0}%PB%{0}%PH:\
-       :mr=%?%gB%{0}%=%t\E&dB%{1}%PB%;:nd=\EC:\
-       :op=\E&bn\E&bB\E&bG\E&bR\n%{0}%PX%{0}%PY%{0}%PZ\n%{1}%PW%{1}%PV%{1}%PU:\
-       :..sa=\E&d@%{0}%PA%{0}%PB%{0}%PD%{0}%PH\n%?%p1%p3%p5%|%|%t\E&dB%{1}%PB%;\n%?%p4%t\E&dA%{1}%PA%;\n%?%p6%t\E&dH%{1}%PH%;\n%?%p2%t\E&dD%;:\
-       :sf=^J:so=\E&dD:st=\E1:ta=\011:up=\EA:us=\E&dD:
-
-# gs6300 - can't use blue foreground, it clashes with underline;
-# it's simulated with cyan
-gs6300|emots|AT&T PC6300 with EMOTS Terminal Emulator:\
-       :am:ms:ut:xo:\
-       :Co#8:co#80:it#8:li#24:pa#63:\
-       :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:IC=\E[%d@:\
-       :LE=\E[%dD:LF=\E|:RI=\E[%dC:Sb=\E[?;%dm:\
-       :..Sf=\E[?%?%p1%{0}%=%t0\n%e%p1%{1}%=%t2\n%e%p1%{1}%-%d%;m:\
-       :UP=\E[%dA:\
-       :ac=\\\054\\\054..--++``aaffgghhiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\
-       :ae=\E[10m:al=\E[L:as=\E[11m:bl=^G:cd=\E[J:ce=\E[K:\
-       :cl=\E[H\E[J:cm=\E[%i%d;%dH:cr=^M:dc=\E[P:dl=\E[M:\
-       :do=^J:ei=:ho=\E[H:ic=\E[@:im=:is=\E[0m:k1=\E[0s:\
-       :k2=\E[24s:k3=\E[1s:k4=\E[23s:k5=\E[2s:k6=\E[22s:\
-       :k7=\E[3s:k8=\E[21s:kB=^R^I:kb=^H:kd=\E[B:kh=\E[H:\
-       :kl=\E[D:kr=\E[C:ku=\E[A:le=^H:mb=\E[5m:md=\E[1m:\
-       :me=\E[m\E[10m:mr=\E[7m:nd=\E[C:op=\E[?;m:pf=\E[4i:\
-       :po=\E[5i:r1=\Ec:sf=^J:so=\E[1m:sr=\E[L:ta=^I:\
-       :up=\E[A:us=\E[4m:
-
-# From: <earle@smeagol.UUCP> 29 Oct 85 05:40:18 GMT
-# MS-Kermit with Heath-19 emulation mode enabled
-# (h19k: changed ":pt@:" to ":it@"
-h19k|h19kermit|heathkit emulation provided by Kermit (no auto margin):\
-       :am@:da:db:xt:\
-       :it@:\
-       :ta@:tc=h19-u:
-
-# pc52 - can't use blue foreground, it clashes with underline;
-# it's simulated with cyan
-# bold means: white on black bold, so it not allowed with colors
-# rev means: black on white, also not allowed
-# smso and dim are simulated with colors, ditto
-# smul is allowed, even though it always means white foreground:
-# it is too important to leave out.
-pc52|dec vt52 for PC:\
-       :am:ms:ut:\
-       :Co#8:NC#53:co#80:it#8:li#25:pa#63:\
-       :Sb=\Ec%d:..Sf=\Eb%?%p1%{1}%=%t3\n%e%p1%d%;:al=\EL:\
-       :bl=^G:cd=\EJ:ce=\EK:cl=\EH\EJ:cm=\EY%+ %+ :cr=^M:\
-       :dl=\EM:do=^J:k1=\Ea:k2=\Eb:k3=\Ec:k4=\Ed:k5=\Ee:\
-       :k6=\Ef:k7=\Eg:k8=\Eh:k9=\Ei:k;=\Ej:kb=^H:kd=\ED:\
-       :kl=\EL:kr=\ER:ku=\EU:le=^H:mb=\Eo:md=\Ebo\Ec0:\
-       :me=\Eb7\Ec0\Et:mh=\Eb3\Ec0:mr=\Ep:nd=\EC:\
-       :op=\Eb7\Ec0:se=\Eb7\Ec0:sf=^J:so=\Eb6\Ec4:sr=\EI:\
-       :ta=^I:up=\EA:us=\Es:
-
-# vs100 emulator using tsim
-# From: <lai@decwrl.dec.com>
-# (vs100t: had Al/Dl in front of obvious AL/DL capabilities;
-# also mapped ":pt:" to default tabs -- esr)
-vs100t|tsim|vs100-tsim:\
-       :am:bs:pt:\
-       :co#80:li#24:\
-       :AL=\E+%+ :DL=\E-%+ :al=\EI:cd=\EQ:ce=\EL:cl=\EE:\
-       :cm=\EM%+ %+ :cs=\ES%+ %+ :dc=\Ed:dl=\ED:do=^J:ei=:\
-       :ho=\EH:ic=\Ei:im=:is=\ER:nd=\En:rs=\ER:se=\Er:\
-       :so=\Eh:ue=\Ev:up=^K:us=\Eu:
-
-# From: Rick Thomas <ihnp4!btlunix!rbt>
-xtalk|IBM PC with xtalk communication program (versions up to 3.4):\
-       :am:mi:ms:xo:\
-       :co#80:it#8:li#24:sg#1:vt#3:\
-       :@8=\EOM:DO=\E[%dB:K1=\EOq:K2=\EOr:K3=\EOs:K4=\EOp:\
-       :K5=\EOn:LE=\E[%dD:RI=\E[%dC:UP=\E[%dA:\
-       :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\
-       :ae=^O:al=\E[L:as=^N:bl=^G:cb=\E[1K:cd=\E[J:ce=\E[K:\
-       :cl=\E[H\E[J:cm=\E[%i%d;%dH:cr=^M:ct=\E[3g:dl=\E[M:\
-       :do=^J:eA=\E(B\E)0:ho=\E[H:k0=\EOy:k1=\EOP:k2=\EOQ:\
-       :k3=\EOR:k4=\EOS:k5=\EOt:k6=\EOu:k7=\EOv:k8=\EOl:\
-       :k9=\EOw:k;=\EOx:kb=^H:kd=\EOB:ke=\E[?1l\E>:kl=\EOD:\
-       :kr=\EOC:ks=\E[?1h\E=:ku=\EOA:le=^H:nd=\E[C:\
-       :r2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h:se=\E[m :sf=^J:\
-       :so=\E[7m :sr=\EM:st=\EH:ta=^I:up=\E[A:
-
-# YTERM standard version 1.0.
-# Straight old ascii keyboard except function keys are Yale (e.g.,ASCII.KBD).
-# Only 80 tab columns (else yterm 1.1 bug).  No :xn: in 1.0.
-# Cannot use termcap :sr=\EM: because vi will not work, too bad.
-# vi string is given so that yterm is reset each vi startup.
-# (yterm10: removed obsolete ":EP:" and ":ma=\bh^Jj\vk\fl\1eH:" capabilities;
-# mapped ":pt:" to default tabs -- esr)
-# From: greg small <gts@populi.berkeley.edu> 9-25-84
-yterm10|yterm 1.0 UCB ascii.kbd:\
-       :am:bs:pt:\
-       :co#80:li#24:\
-       :cd=^K:ce=^]:cl=^L:cm=\036%r%+ %+ :ho=^Y:\
-       :is=\017\E[7i\E[m\E[?7h\E[?3g\r\EHY0  for \EHYTERM 1.\EH0 with A\EHSCII.KBD\EH 9-13-84\EH        \EH        \EH        \EH        \EH\n:\
-       :k0=\E0:k1=\E1:k2=\E2:k3=\E3:k4=\E4:k5=\E5:k6=\E6:\
-       :k7=\E7:k8=\E8:k9=\E9:kd=^J:kh=^^:kl=^H:kr=^L:ku=^K:\
-       :nd=^\:rc=\E8:sc=\E7:se=\E[m:so=\E[7m:ue=\E[m:up=^_:\
-       :us=\E[4m:\
-       :vs=\017\E[7i\E[m\E[?7h\E[?3g\r\EHY0      \EH        \EH        \EH        \EH        \EH        \EH        \EH        \EH        \EH\r:
-# YTERM variant version 1.1.  Version 1.1 has :xn:.
-# From: greg small <gts@populi.berkeley.edu> 9-13-84
-yterm11|yterm 1.1 UCB ascii.kbd:\
-       :xn:\
-       :is=\017\E[7i\E[m\E[?7h\E[?3g\r\EHY1  for \EHYTERM 1.\EH1 with A\EHSCII.KBD\EH 9-13-84\EH        \EH        \EH        \EH        \EH\n:tc=yterm10:
-# YTERM 1.0 variant no autowrap or tabs
-# X does not remember autowrap or tabs when T is deleted and restarted.
-# (yterm: changed ":pt@:" to ":it@:" -- esr)
-yterm10nat|yterm 1.0 UCB ascii.kbd no autowrap or tabs:\
-       :am@:\
-       :it@:\
-       :is=\017\E[7i\E[m\E[?7l\E[?3g\rY2  for YTERM 1.0 with ASCII.KBD 9-20-84 no autowrap or tabs\n:\
-       :vs=\017\E[7i\E[m\E[?7l\E[?3g\rY2\r:tc=yterm10:
-
-# The official PC terminal emulator program of the AT&T Product Centers.
-# Note - insert mode commented out - doesn't seem to work on AT&T PC.
-simterm|attpc running simterm:\
-       :am:\
-       :co#80:li#24:\
-       :al=\EL:bl=^G:cd=\EJ:ce=\EK:cl=\EH\EJ:cm=\E=%+ %+ :\
-       :cr=^M:dc=\ER:dl=\EM:do=\EB:ho=\EH:im=\EQ:le=^H:\
-       :nd=\EC:sf=^J:so=\E&dB:te=\EVE:ti=\EVS:up=\EA:
-
-#### Daisy wheel printers
-#
-
-# This section collects Diablo, DTC, Xerox, Qume, and other daisy
-# wheel terminals.  These are now largely obsolete.
-#
-# This is an "experimental" entry for the SRI Agiles.
-# It has been tried in a minimal way -- the Agile did not blow up!
-# However, it has not been exhaustively tested.
-# Anyone who tries it and finds it wanting should get in touch with:
-# From: Ralph Keirstead <ralph@sri-unix>
-#      EK352; SRI International; 333 Ravenswood Avenue; Menlo Park, CA 94025
-# (agile: I removed an incorrect ":pl:" -- esr)
-agile|agiles|sri agiles:\
-       :hc:os:\
-       :co#132:\
-       :bl=^G:cr=^M:ct=\E2:do=^J:hd=\E9:hu=\E0:is=\EE\EF\EJ:\
-       :kb=^H:le=^H:sf=^J:st=\E1:ta=^I:up=\E^J:
-# (1620: mapped ":pt:" to default tabs -- esr)
-diablo1620|diablo1720|diablo450|ipsi|diablo 1620:\
-       :bs:hc:os:pt:\
-       :co#132:\
-       :ch=\E\011%i%.:ct=\E2:do=^J:hd=\ED:hu=\EU:\
-       :if=/usr/share/tabset/xerox1720:kb=^H:le=^H:st=\E1:\
-       :up=\E^J:
-diablo1620-m8|diablo1640-m8|diablo 1620 w/8 column left margin:\
-       :co#124:\
-       :do=^J:is=\r        \E9:tc=diablo1620:
-diablo1640|diablo1730|diablo1740|diablo630|x1700|diablo|xerox|diablo 1640:\
-       :bl=^G:if=/usr/share/tabset/xerox1730:se=\E&:so=\EW:\
-       :ue=\ER:us=\EE:tc=diablo1620:
-diablo1640-lm|diablo-lm|xerox-lm|diablo 1640 with indented left margin:\
-       :co#124:\
-       :if=/usr/share/tabset/xerox1730-lm:se=\E&:so=\EW:\
-       :ue=\ER:us=\EE:tc=diablo1620:
-diablo1740-lm|630-lm|1730-lm|x1700-lm:\
-       :tc=diablo1640-lm:
-# DTC 382 with VDU.  Has no :cd: so we fake it with :ce:.  Standout
-# (so="^P \002^PF:") works but won't go away without dynamite (":se=^P \200:").
-# The terminal has tabs, but I'm getting tired of fighting the braindamage. 
-# If no tab is set or the terminal's in a bad mood, it glitches the screen
-# around all of memory.  Note that return puts a blank ("a return character")
-# in the space the cursor was at, so we use ^P return (and thus ^P newline for
-# newline).  Note also that if you turn off pt and let Unix expand tabs,
-# curses won't work (current version) because it doesn't turn off this bit,
-# and cursor addressing sends a tab for row/column 9.  What a losing terminal!
-# I have been unable to get tabs set in all 96 lines - it always leaves at
-# least one line with no tabs in it, and once you tab through that line,
-# it completely weirds out.
-dtc382|DTC 382:\
-       :am:da:db:xs:\
-       :co#80:li#24:lm#96:\
-       :al=^P^Z:bl=^G:cd=\020\025\020\023\020\023:ce=^P^U:\
-       :cl=\020\035:cm=\020\021%r%.%.:cr=^P^M:dc=^X:dl=^P^S:\
-       :ei=^Pi:ho=^P^R:im=^PI:le=^H:nd=^PR:pc=\177:sf=^J:\
-       :te=\020\035:ue=^P \200:up=^P^L:us=^P ^P:ve=^Pb:\
-       :vs=^PB:
-dtc300s|DTC 300s:\
-       :hc:os:\
-       :co#132:\
-       :bl=^G:cr=^M:ct=\E3:do=^J:ff=^L:hd=\Eh:hu=\EH:kb=^H:\
-       :le=^H:sf=^J:st=\E1:ta=^I:up=^Z:
-gsi:\
-       :hc:os:\
-       :co#132:\
-       :bl=^G:cr=^M:do=^J:hd=\Eh:hu=\EH:le=^H:sf=^J:ta=^I:\
-       :up=^Z:
-aj830|aj832|aj|anderson jacobson:\
-       :bs:hc:os:\
-       :bl=^G:cr=^M:do=^J:hd=\E9:hu=\E8:le=^H:sf=^J:up=\E7:
-# From: Chris Torek <chris@gyre.umd.edu> Thu, 7 Nov 85 18:21:58 EST
-aj510|AJ510|Anderson-Jacobson model 510:\
-       :am:bs:mi:\
-       :co#80:li#24:\
-       :al=2*\E&I:cd=\E'P:ce=\E'L:cl=^L:cm=\E#%+ %+ :\
-       :dc=.1*\E'D:dl=2*\E&D:ei=\E'J:ic=:im=\E'I:ip=.1*:\
-       :kd=\EZ:kl=\EW:kr=\EX:ku=\EY:nd=\EX:pc=\177:se=\E"I:\
-       :so=\E"I:te=\E"N:ti=\E"N:ue=\E"U:up=\EY:us=\E"U:
-# From: <cbosg!ucbvax!pur-ee!cincy!chris> Thu Aug 20 09:09:18 1981
-# This is incomplete, but it's a start.
-# (5520: mapped ":pt:" to default tabs -- esr)
-nec5520|nec|spinwriter|nec 5520:\
-       :bs:hc:os:pt:\
-       :co#132:\
-       :bl=^G:cr=^M:ct=\E3:do=^J:ff=^L:hd=\E]s\n\E]W:\
-       :hu=\E]s\E9\E]W:kb=^H:le=^H:sf=^J:st=\E1:ta=^I:\
-       :up=\E9:
-# (qume5: mapped ":pt:" to default tabs -- esr)
-qume5|qume|Qume Sprint 5:\
-       :bs:hc:os:pt:\
-       :co#80:\
-       :bl=^G:cr=^M:ct=\E3:do=^J:ff=^L:hd=\Eh:hu=\EH:kb=^H:\
-       :le=^H:sf=^J:st=\E1:ta=^I:up=^Z:
-# I suspect the xerox1720 is the same as the diablo 1620.
-# (x1720: mapped ":pt:" to default tabs -- esr)
-xerox1720|x1720|x1750|xerox 1720:\
-       :bs:hc:os:pt:\
-       :co#132:\
-       :bl=^G:cr=^M:ct=\E2:do=^J:ff=^L:le=^H:sf=^J:st=\E1:\
-       :ta=^I:
-
-#### Miscellaneous obsolete terminals, manufacturers unknown
-#
-# If you have any information about these (like, a manufacturer's name, 
-# and a date on the serial-number plate) please send it!
-
-cad68-3|cgc3|cad68 basic monitor transparent mode size 3 chars:\
-       :am:bs:\
-       :co#73:li#36:\
-       :cl=^Z:ho=^^:nd=^L:up=^K:
-cad68-2|cgc2|cad68 basic monitor transparent mode size 2 chars:\
-       :am:bs:\
-       :co#85:li#39:\
-       :cl=^Z:ho=^^:k1=\E5:k2=\E6:k3=\E7:k4=\E8:kd=\E2:\
-       :kl=\E3:kr=\E4:ku=\E1:nd=^L:se=\Em^C:so=\Em^L:up=^K:
-cdi|cdi1203:\
-       :am:bs:hc:os:\
-       :co#80:\
-       :bl=^G:cr=\r:do=^J:le=^H:sf=^J:
-cops10|cops|cops-10:\
-       :am:bw:\
-       :co#80:li#24:\
-       :bl=^G:cd=^W:ce=^V:cl=30^X:cm=\020%+ %+ :cr=^M:do=^J:\
-       :kb=^H:kd=^J:kh=^Y:kl=^H:kr=^L:ku=^K:le=^H:nd=^L:\
-       :sf=^J:up=^K:
-# (d132: removed duplicate ":ic=\E5:" -- esr)
-d132|datagraphix|datagraphix 132a:\
-       :da:db:in:\
-       :co#80:li#30:\
-       :al=\E3:bl=^G:cl=^L:cr=^M:dc=\E6:do=^J:ei=:ho=\Et:\
-       :ic=\E5:im=:nd=\El:sf=\Ev:sr=\Ew:up=\Ek:ve=\Em\En:\
-       :vs=\Ex:
-# I'm told the d800 was an early portable terminal that looked a lot like the
-# original Compaq portable.
-# (d800: mapped ":pt:" to default tabs -- esr)
-d800|Direct 800/A:\
-       :am:bs:da:db:ms:pt:xs:\
-       :co#80:li#24:\
-       :ae=\E[0m:as=\E[1m:bl=^G:cd=\E[J:ce=\E[K:\
-       :cl=\E[1;1H\E[2J:cm=\E[%i%d;%dH:cr=^M:do=^J:k1=\EOP:\
-       :k2=\EOQ:k3=\EOR:k4=\EOS:k5=\EOT:k6=\EOU:k7=\EOV:\
-       :k8=\EOW:kd=\E[B:kl=\E[D:kr=\E[C:ku=\E[A:le=^H:\
-       :nd=\E[C:se=\E[0m:sf=\ED:so=\E[7m:sr=\EM:ta=^I:\
-       :ue=\E[0m:up=\E[A:us=\E[4m:ve=\E[>12h:vs=\E[>12l:
-digilog|digilog 333:\
-       :bs:\
-       :co#80:li#16:\
-       :bl=^G:ce=^X:cr=^M:do=^J:ho=^N:le=^H:nd=^I:sf=^J:\
-       :up=^O:
-env230|envision230|envision 230 graphics terminal:\
-       :am:mi:ms:xo:\
-       :co#80:it#8:li#24:vt#3:\
-       :@8=\EOM:DO=\E[%dB:K1=\EOq:K2=\EOr:K3=\EOs:K4=\EOp:\
-       :K5=\EOn:LE=\E[%dD:RI=\E[%dC:UP=\E[%dA:\
-       :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:\
-       :ae=^O:as=^N:bl=^G:cb=\E[1K:cd=\E[J:ce=\E[K:\
-       :cl=\E[H\E[J:cm=\E[%i%d;%dH:cr=^M:cs=\E[%i%d;%dr:\
-       :ct=\E[3g:do=^J:eA=\E(B\E)0:ho=\E[H:k0=\EOy:k1=\EOP:\
-       :k2=\EOQ:k3=\EOR:k4=\EOS:k5=\EOt:k6=\EOu:k7=\EOv:\
-       :k8=\EOl:k9=\EOw:k;=\EOx:kb=^H:kd=\EOB:ke=\E[?1l\E>:\
-       :kl=\EOD:kr=\EOC:ks=\E[?1h\E=:ku=\EOA:le=^H:mb=\E[5m:\
-       :md=\E[1m:me=\E[m\017:mr=\E[7m:nd=\E[C:pf=\E[4i:\
-       :po=\E[5i:ps=\E[0i:\
-       :r2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h:rc=\E8:\
-       :..sa=\E[%?%p1%t;1%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;m:\
-       :sc=\E7:se=\E[0m<2>:sf=^J:so=\E[1m<2>:sr=\EM:st=\EH:\
-       :ta=^I:ue=\E[m:up=\E[A:us=\E[4m:
-# These execuports were impact-printer ttys with a 30- or maybe 15-cps acoustic
-# coupler attached, the whole rig fitting in a suitcase and more or less
-# portable.  Hot stuff for c.1977 :-) -- esr
-ep48|ep4080|execuport 4080:\
-       :am:bs:os:\
-       :co#80:\
-       :bl=^G:cr=^M:do=^J:hd=^\:hu=^^:le=^H:sf=^J:
-ep40|ep4000|execuport 4000:\
-       :am:bs:os:\
-       :co#136:\
-       :bl=^G:cr=^M:do=^J:hd=^\:hu=^^:le=^H:sf=^J:
-# From: Paul Leondis <unllab@amber.berkeley.edu>
-ifmr|Informer D304:\
-       :am:bs:\
-       :co#80:li#24:\
-       :cd=\E/:ce=\EQ:cl=\EZ:cm=\EY%r%+ %+ :dc=\E\\:do=^J:\
-       :ei=:ho=\EH:ic=\E[:im=:nd=\EC:se=\EK:so=\EJ:sr=\En:\
-       :up=\EA:
-# This used to say "de#001202" which presumably refers to the stty bits
-# that need to be set for some version of Unix.  We need the real delay
-# requirements in MS.
-mw2|Multiwriter 2:\
-       :hc:os:\
-       :co#132:\
-       :bl=^G:cr=^M:do=^J:sf=^J:
-# Entry largely based on wy60 and has the features of wy60ak.
-opus3n1+|Esprit  Opus3n1+ in wy60 mode with ANSI arrow keys +:\
-       :am:bw:hs:km:mi:ms:ul:xo:\
-       :Nl#8:co#80:lh#1:li#24:lw#8:ws#80:\
-       :#2=\E{:%9=\EP:&3=\Er:@7=\E[F:@8=\E7:F1=^AJ\r:\
-       :F2=^AK\r:F3=^AL\r:F4=^AM\r:F5=^AN\r:F6=^AO\r:\
-       :LF=\EA11:LO=\EA10:RA=\Ed.:RX=\Ec20:SA=\Ed/:SX=\Ec21:\
-       :ac=0wa_h[jukslrmqnxqzttuyv]wpxv:ae=\EH^C:al=\EE:\
-       :as=\EH^B:bl=^G:bt=\EI:cd=\EY:ce=\ET:cl=\E*:\
-       :cm=\Ea%i%dR%dC:cr=^M:ct=\E0:dc=\EW:dl=\ER:do=^J:\
-       :ds=\Ez(\r:ei=\Er:fs=^M:ho=\036:\
-       :if=/usr/lib/tabset/std:im=\Eq:ip=:\
-       :is=\E`\072\Ee(\EO\Ee6\Ec41\E~4\Ec21\Ed/\Ezz&\E[A\037\Ezz'\E[B\037\Ezz(\E[D\037\Ezz)\E[C\037\Ezz<\E[Q\037\Ezz`\E[F\037\EA1*\EZH12:\
-       :k1=^A@\r:k2=^AA\r:k3=^AB\r:k4=^AC\r:k5=^AD\r:\
-       :k6=^AE\r:k7=^AF\r:k8=^AG\r:k9=^AH\r:k;=^AI\r:kA=\EE:\
-       :kB=\EI:kD=\EW:kE=\ET:kI=\EQ:kL=\ER:kN=\EK:kP=\EJ:\
-       :kS=\EY:kb=^H:kd=\E[B:kh=^^:kl=\E[D:kr=\E[C:ku=\E[A:\
-       :le=^H:mb=\EG2:me=\E(\EH\003\EG0\EcD:mh=\EGp:mk=\EG1:\
-       :mp=\E):mr=\EG4:nd=^L:nw=\r\n:pf=^T:pl=\EZ2%+?%s\177:\
-       :pn=\Ez%+/%s\r:po=^R:ps=\EP:px=\EZ1%+?%s\177:\
-       :r1=\E~!\E~4:r2=\EeF:r3=\EwG\Ee(:\
-       :..sa=%?%p8%t\E)%e\E(%;%?%p9%t\EH\002%e\EH\003%;\EG%'0'%?%p2%p6%|%t%{8}%|%;%?%p1%p3%|%p6%|%t%{4}%|%;%?%p4%t%{2}%|%;%?%p1%p5%|%t%{64}%|%;%?%p7%t%{1}%|%;%c:\
-       :se=\EG0:sf=^J:so=\EG4:sr=\Ej:st=\E1:ta=\011:\
-       :ti=\Ezz&\E[A\037\Ezz'\E[B\037\Ezz(\E[D\037\Ezz)\E[C\037\Ezz<\E[Q\037:\
-       :ts=\Ez(:uc=\EG8%p1%c\EG0:ue=\EG0:up=^K:us=\EG8:\
-       :ve=\E`1:vi=\E`0:
-# (ps300: changed ":pt@:" to "it@" -- esr)
-ps300|Picture System 300:\
-       :xt:\
-       :it@:\
-       :se@:so@:ue@:us@:tc=vt100:
-ramtek|ramtek 6000:\
-       :am:\
-       :co#78:li#24:\
-       :bl=^G:cl=[alpha]\n[erase]\n:cr=^M:do=^J:le=^H:sf=^J:
-# Upper case terminal, uses lower case for control sequences!!!
-tec400|tec scope:\
-       :sg#1:\
-       :al=e:cd=s:ce=c:cl=f:..cm=l%p2%~%c%p1%~%c:dc=t:dl=u:\
-       :do=h:ei=:ho=i:ic=d:im=:le=w:nd=g:se=|:so={:up=x:
-# From: <ucbvax!geoff> Mon Sep 21 21:15:45 1981
-# This entry has been tested.
-tec500|tec 500:\
-       :am:bs:\
-       :co#80:li#24:\
-       :bl=^G:cl=\032:cm=\E=%+ %+ :cr=^M:do=^J:ho=^^:le=^H:\
-       :nd=^L:se=^\:sf=^J:so=^]:up=^K:
-# tec is untested, and taken from CB/Unix virtual terminal driver.
-# I would appreciate more information on this terminal, such as the
-# manufacturer and the model number.  There are too many tecs in here.
-# (tec: removed obsolete ":ma=^K^P^_ :" -- esr)
-tec:\
-       :am:bs:\
-       :co#80:li#24:\
-       :bl=^G:cl=^L:cr=^M:do=^J:ho=^^:le=^H:nd=^_:sf=^J:\
-       :up=^K:
-teletec|Teletec Datascreen:\
-       :am:bs:\
-       :co#80:li#24:\
-       :bl=^G:cl=^L:cr=^M:do=^J:ho=^^:le=^H:nd=^_:sf=^J:\
-       :up=^K:
-# Terak made a PDP-11 based box with a bitmapped display that ran UCSD
-# Pascal as the native O/S. It was quite a nice box, and there were several
-# at Berkeley.
-terak|Terak emulating Datamedia 1520:\
-       :tc=dm1520:
-# From: Mark Dornfeld <romwa@ucbvax.berkeley.edu>
-#              This termcap is for the LANPAR Technologies VISION 3220
-#      terminal.  The function key definitions k0-k5 represent the
-#      edit keypad: FIND, INSERT HERE, REMOVE, SELECT, PREV SCREEN,
-#      NEXT SCREEN. The key definitions k6-k9 represent the PF1 to
-#      PF4 keys.
-# (v3220: mapped ":pt:" to default tabs, removed obsolete ":kn#10:" -- esr)
-v3220|LANPAR Vision II model 3220/3221/3222:\
-       :am:bs:mi:pt:xn:\
-       :co#80:li#24:\
-       :al=\E[L:cd=\E[J:ce=\E[K:cl=\E[H\E[J:cm=\E[%i%d;%dH:\
-       :dc=\E[P:dl=\E[M:ei=\E[4l:im=\E[4h:\
-       :is=\E>\E[?3l\E[?7h\E[?8h\E[p:k0=\E[1~:k1=\E[2~:\
-       :k2=\E[3~:k3=\E[4~:k4=\E[5~:k5=\E[6~:k6=\E[OP:\
-       :k7=\E[OQ:k8=\E[OR:k9=\E[OS:kd=\E[B:ke=\E>:kh=\E[H:\
-       :kl=\E[D:kr=\E[C:ks=\E=:ku=\E[A:nd=\E[C:se=\E[m:\
-       :so=\E[7m:sr=\EM:ue=\E[m:up=\E[A:us=\E[4m:
-# Does anybody know where these "wind" terminals came from?
-wind:\
-       :bs:\
-       :co#80:li#24:\
-       :cl=\EnP(\Eo:cm=\Ep%r%.%.:ho=\Ep\200\200:k1=\E5:\
-       :k2=\E6:k3=\E7:k4=\E8:kd=\E2:kl=\E3:kr=\E4:ku=\E1:\
-       :nd=^L:nl=^]:se=\Em^C:so=\Em^L:up=^K:
-wind16:\
-       :bs:\
-       :co#80:li#16:\
-       :cl=\EnP\020\Eo:cm=\Ep%r%.%.:ho=\Ep\200\200:nd=^L:\
-       :nl=^]:se=\Em^C:so=\Em^L:up=^K:
-wind40:\
-       :bs:\
-       :co#80:li#40:\
-       :cl=\EnP(\Eo:cm=\Ep%r%.%.:ho=\Ep\200\200:nd=^L:nl=^]:\
-       :se=\Em^C:so=\Em^L:up=^K:
-# (wind50: corrected :cl=\EnP\128\062\Eo: -- esr)
-wind50:\
-       :bs:\
-       :co#88:li#50:\
-       :cl=\EnP2\Eo:cm=\Ep%r%.%.:ho=\Ep\200\200:k1=\E5:\
-       :k2=\E6:k3=\E7:k4=\E8:kd=\E2:kl=\E3:kr=\E4:ku=\E1:\
-       :nd=^L:nl=^]:se=\Em^C:so=\Em^L:up=^K:
-# (xitex: removed obsolete ":ma=j^Jk^Pl :" -- esr)
-xitex|xitex sct-100:\
-       :bs:\
-       :co#64:li#16:\
-       :bl=^G:cd=\006\005:ce=\005:cl=\014:cm=\E=%+@%+@:\
-       :cr=^M:do=^J:ho=^D:le=^H:nd=\E+@A:sf=^J:sr=\E=@@\013:\
-       :up=^K:
-plasma|plasma panel:\
-       :am:bs:\
-       :co#85:li#45:\
-       :bl=^G:cl=^L:cr=^M:do=^J:ho=^^:le=^H:nd=^X:sf=^J:\
-       :up=^V:
-
-#### Homebrew and custom terminals
-#
-
-# Nu machine parameters taken from mit-vax.
-#                                              smc - 5/21/85
-#
-nuterminal:\
-       :am:mi:ms:\
-       :co#80:it#8:li#24:\
-       :ae=\EG:al=1*\EL:as=\EF:cd=60\EJ:ce=10\EK:cl=60\EE:\
-       :..cm=\EY%+ %+ :cr=^M:dc=2.5*\EN:dl=1*\EM:do=\EB:\
-       :ei=\EO:ho=\EH:im=\E@:ip=2.5*:k1=\ES:k2=\ET:k3=\EU:\
-       :k4=\EV:k5=\EW:k6=\EP:k7=\EQ:k8=\ER:kb=^H:kd=\EB:\
-       :kh=\EH:kl=\ED:kr=\EC:ku=\EA:l6=blue:l7=red:l8=white:\
-       :le=^H:nd=\EC:nw=^M^J:se=\Eq:sf=^J:so=\Ep:sr=\EI:\
-       :ta=^I:up=\EA:ve=\Ey4:vs=\Ex4:
-nu24|nuwindow:\
-       :mi:ms:\
-       :co#86:it#8:li#24:\
-       :ae=\EG:al=1*\EL:as=\EF:cd=\EJ:ce=\EK:cl=\EE:\
-       :..cm=\EY%+ %+ :cr=^M:dl=1*\EM:do=\EB:ei=\EO:ho=\EH:\
-       :im=\E@:ip=2.5*:kb=^H:kd=\EB:kh=\EH:kl=\ED:kr=\EC:\
-       :ku=\EA:le=^H:nd=\EC:nw=^M^J:se=\Eq:sf=^J:so=\Ep:\
-       :sr=\EI:ta=^I:up=\EA:ve=\Ey4:vs=\Ex4:
-bnu|nu51|bnuwindow:\
-       :co#86:li#51:\
-       :tc=nuterminal:
-fnu|nu61|fnuwindow:\
-       :co#86:li#61:\
-       :tc=nuterminal:
-nunix-30|nu-telnet-30|nu-half -- Half nu screen thru telnet:\
-       :am:\
-       :co#78:it#8:li#30:\
-       :al=\EL:cd=\EJ:ce=\EK:cl=\EE:..cm=\EY%+ %+ :cr=^M:\
-       :dl=\EM:do=\EB:ho=\EH:ip=2.5*:kb=^H:kd=^J:kl=^H:\
-       :le=^H:nd=\EC:nw=^M^J:se=\Eq:sf=^J:so=\Ep:sr=\EI:\
-       :ta=^I:up=\EA:
-nunix-61|nu-telnet-61|nu-full| Full nu screen thru telnet:\
-       :co#78:li#61:\
-       :tc=nunix-30:
-
-bch|bc|bill croft homebrew:\
-       :am:bs:\
-       :co#96:li#72:\
-       :cl=^Z:cm=\E=%+ %+ :do=^J:ho=^^:le=^H:nd=^L:up=^K:\
-       :vb=:
-nucterm|rayterm|NUC homebrew:\
-       :am:bs:\
-       :co#80:li#24:\
-       :bl=^G:cd=^E:ce=^A:cl=\014:cr=^M:do=^J:ho=^B:le=^H:\
-       :ll=^K:nd=^C:sf=^J:up=^N:
-carlock|klc:\
-       :am:bs:\
-       :co#80:li#24:\
-       :al=^E:bl=^G:ce=^U:cl=\032:cm=\E=%+ %+ :cr=^M:\
-       :dc=\177:dl=^D:do=^J:ei=^T:ho=^^:im=^T:nd=^L:se=^V:\
-       :sf=^J:so=^V:up=^K:vb=\EV\EV:
-# uVAX
-qdss|qdcons|qdss glass tty:\
-       :am:bs:\
-       :co#128:li#57:\
-       :cl=1\032:cm=\E=%.%.:do=^J:le=^H:nd=^L:up=^K:
-# (ubell: removed obsolete ":ma=j^Jk^P^K^Pl :";
-# mapped ":pt:" to default tabs; removed obsolete ":bc=^Y:" -- esr)
-ubell|ubellchar:\
-       :am:bs:pt:\
-       :co#80:li#24:\
-       :bl=^G:ce=\Ed:cl=^Z:cm=\E=%+ %+ :cr=^M:do=^J:ho=^^:\
-       :le=^H:nd=^L:sf=^J:ta=^I:up=^K:
-ttywilliams:\
-       :am:\
-       :co#80:li#12:\
-       :bl=^G:ce=^_:cl=^^:cr=^M:do=^K:ho=^]:le=^Y:nd=^X:\
-       :sf=^J:up=^Z:
-######## ICH/ICH1 VERSUS RMIR/SMIR
-#
-# Some non-curses applications get confused if both ich/ich1 and rmir/smir
-# are present; the symptom is doubled characters in an update using insert.
-# These applications are technically correct; in both 4.3BSD termcap and
-# terminfo, you're not actually supposed to specify both ich/ich1 and rmir/smir
-# unless the terminal needs both.  This requirement is now rare; most ich
-# sequences do not require previous smir, and most smir insert modes do not
-# require ich1 before each character.
-#
-# For ncurses-based applications this is not a problem, as ncurses uses
-# one or the other as appropriate but never mixes the two.  Therefore we
-# have not corrected entries like `linux' and `xterm' that specify both.
-# If you see doubled characters from these, use the linux-nic and xterm-nic
-# entries that suppress ich/ich1.
-#
-######## ANSI/VT100/PC-TERM TERMINAL STANDARDS
-#
-# ANSI Standard (X3.64) Control Sequences for Video Terminals and Peripherals
-# 
-# Most of the content of this comment is adapted from a table prepared by
-# Richard Shuford, based on a 1984 Byte article.  Terminfo correspondences
-# and discussion of some terminfo-related issues have been added.
-#
-# The table is a complete list of the defined ANSI X.364 control sequences.
-# In the main table, \E stands for an escape (\033) character, SPC for space.
-# Pn stands for a single numeric parameter to be inserted in decimal ASCII.
-# Ps stands for a list of such parameters separated by semicolons
-#
-#                                                   Default    Type
-# Sequence     Sequence                             Parameter   or
-# Mnemonic     Name              Sequence           Value      Mode   terminfo
-# -----------------------------------------------------------------------------
-# APC  Applicatn Program Command \E Fe               -         Delim  -
-# CBT  Cursor Backward Tab       \E [ Pn Z           1         eF     cbt
-# CCH  Cancel Previous Character \E T                -         -      -
-# CHA  Cursor Horzntal Absolute  \E [ Pn G           1         eF     hpa (1)
-# CHT  Cursor Horizontal Tab     \E [ Pn I           1         eF     tab (2)
-# CNL  Cursor Next Line          \E [ Pn E           1         eF     nel (3)
-# CPL  Cursor Preceding Line     \E [ Pn F           1         eF     -
-# CPR  Cursor Position Report    \E [ Pn ; Pn R      1, 1      -      -
-# CSI  Control Sequence Intro    \E [                -         Intro  -
-# CTC  Cursor Tab Control        \E [ Ps W           0         eF     -
-# CUB  Cursor Backward           \E [ Pn D           1         eF     cub
-# CUD  Cursor Down               \E [ Pn B           1         eF     cud
-# CUF  Cursor Forward            \E [ Pn C           1         eF     cuf
-# CUP  Cursor Position           \E [ Pn ; Pn H      1, 1      eF     cup (4)
-# CUU  Cursor Up                 \E [ Pn A           1         eF     cuu
-# CVT  Cursor Vertical Tab       \E [ Pn Y           -         eF     -
-# DA   Device Attributes         \E [ Pn c           0         -      -
-# DAQ  Define Area Qualification \E [ Ps o           0         -      -
-# DCH  Delete Character          \E [ Pn P           1         eF     dch
-# DCS  Device Control String     \E P                -         Delim  -
-# DL   Delete Line               \E [ Pn M           1         eF     dl
-# DMI  Disable Manual Input      \E \                -         Fs     -
-# DSR  Device Status Report      \E [ Ps n           0         -      -
-# EA   Erase in Area             \E [ Ps O           0         eF     -
-# ECH  Erase Character           \E [ Pn X           1         eF     ech
-# ED   Erase in Display          \E [ Ps J           0         eF     ed  (5)
-# EF   Erase in Field            \E [ Ps N           0         eF     -
-# EL   Erase in Line             \E [ Ps K           0         eF     el  (5)
-# EMI  Enable Manual Input       \E b                          Fs     -
-# EPA  End of Protected Area     \E W                -         -      -
-# ESA  End of Selected Area      \E G                -         -      -
-# FNT  Font Selection            \E [ Pn ; Pn SPC D  0, 0      FE     -
-# GSM  Graphic Size Modify       \E [ Pn ; Pn SPC B  100, 100  FE     -
-# GSS  Graphic Size Selection    \E [ Pn SPC C       none      FE     -
-# HPA  Horz Position Absolute    \E [ Pn `           1         FE     (1)
-# HPR  Horz Position Relative    \E [ Pn a           1         FE     (6)
-# HTJ  Horz Tab w/Justification  \E I                -         FE     (2)
-# HTS  Horizontal Tab Set        \E H                -         FE     hts
-# HVP  Horz & Vertical Position  \E [ Pn ; Pn f      1, 1      FE     (4)
-# ICH  Insert Character          \E [ Pn @           1         eF     ich
-# IL   Insert Line               \E [ Pn L           1         eF     il
-# IND  Index                     \E D                -         FE     -
-# INT  Interrupt                 \E a                -         Fs     -
-# JFY  Justify                   \E [ Ps SPC F       0         FE     -
-# MC   Media Copy                \E [ Ps i           0         -      -
-# MW   Message Waiting           \E U                -         -      -
-# NEL  Next Line                 \E E                -         FE     nel (3)
-# NP   Next Page                 \E [ Pn U           1         eF     -
-# OSC  Operating System Command  \E ]                -         Delim  -
-# PLD  Partial Line Down         \E K                -         FE     -
-# PLU  Partial Line Up           \E L                -         FE     -
-# PM   Privacy Message           \E ^                -         Delim  -
-# PP   Preceding Page            \E [ Pn V           1         eF     -
-# PU1  Private Use 1             \E Q                -         -      -
-# PU2  Private Use 2             \E R                -         -      -
-# QUAD Typographic Quadding      \E [ Ps SPC H       0         FE     -
-# REP  Repeat Char or Control    \E [ Pn b           1         -      rep
-# RI   Reverse Index             \E M                -         FE     -
-# RIS  Reset to Initial State    \E c                -         Fs     -
-# RM   Reset Mode                \E [ Ps l           none      -      -
-# SD   Scroll Down               \E [ Pn T           1         eF     rin
-# SEM  Select Edit Extent Mode   \E [ Ps Q           0         -      -
-# SGR  Select Graphic Rendition  \E [ Ps m           0         FE     sgr (7)
-# SL   Scroll Left               \E [ Pn SPC @       1         eF     -
-# SM   Select Mode               \E [ Ps h           none      -      -
-# SPA  Start of Protected Area   \E V                -         -      -
-# SPI  Spacing Increment         \E [ Pn ; Pn SPC G  none      FE     -
-# SR   Scroll Right              \E [ Pn SPC A       1         eF     -
-# SS2  Single Shift 2 (G2 set)   \E N                -         Intro  -
-# SS3  Single Shift 3 (G3 set)   \E O                -         Intro  -
-# SSA  Start of Selected Area    \E F                -         -      -
-# ST   String Terminator         \E \                -         Delim  -
-# STS  Set Transmit State        \E S                -         -      -
-# SU   Scroll Up                 \E [ Pn S           1         eF     indn
-# TBC  Tab Clear                 \E [ Ps g           0         FE     tbc
-# TSS  Thin Space Specification  \E [ Pn SC E        none      FE     -
-# VPA  Vert Position Absolute    \E [ Pn d           1         FE     vpa
-# VPR  Vert Position Relative    \E [ Pn e           1         FE     (8)
-# VTS  Vertical Tabulation Set   \E J                -         FE     -
-# 
-# ---------------------------------------------------------------------------
-#
-# Notes:
-#
-# (1) There seems to be some confusion abroad between CHA and HPA.  Most
-# `ANSI' terminals accept the CHA sequence, not the HPA. but terminfo calls
-# the capability (hpa).
-#
-# (2) CHT corresponds to terminfo (tab).  Usually it has the value ^I.
-# Occasionally (as on, for example, certain HP terminals) this has the HTJ
-# value.
-#
-# (3) terminfo (nel) is usually \r\n rather than ANSI \EE.
-#
-# (4) CUP and HVP are identical in effect.  Some ANSI.SYS versions accept
-# HVP, but always allow CUP as an alternate.
-#
-# (5) See the VT100 discussion for the meaning of the ED parameter.
-# 
-# (6) Some ANSI.SYS versions accept HPR, but more commonly `ANSI' terminals
-# use CUF for this function and ignore HPR
-#
-# (7) In SGR, the ANSI.SYS values for attributes are now nearly universal.
-#
-# (8) Some ANSI.SYS versions accept VPR, but more commonly `ANSI' terminals
-# use CUD for this function and ignore VPR.
-#
-# ---------------------------------------------------------------------------
-# 
-# Abbreviations:
-#
-# Intro  an Introducer of some kind of defined sequence; the normal 7-bit
-#        X3.64 Control Sequence Introducer is the two characters "Escape ["
-# 
-# Delim  a Delimiter
-# 
-# x/y    identifies a character by position in the ASCII table (column/row)
-# 
-# eF     editor function (see explanation)
-# 
-# FE     format effector (see explanation)
-# 
-# F      is a Final character in
-#             an Escape sequence (F from 3/0 to 7/14 in the ASCII table)
-#             a control sequence (F from 4/0 to 7/14)
-# 
-# Gs     is a graphic character appearing in strings (Gs ranges from
-#        2/0 to 7/14) in the ASCII table
-# 
-# Ce     is a control represented as a single bit combination in the C1 set
-#        of controls in an 8-bit character set
-# 
-# C0     the familiar set of 7-bit ASCII control characters
-# 
-# C1     roughly, the set of control characters available only in 8-bit systems.
-#        This is too complicated to explain fully here, so read Jim Fleming's
-#        article in the February 1983 BYTE, especially pages 214 through 224.
-# 
-# Fe     is a Final character of a 2-character Escape sequence that has an
-#        equivalent representation in an 8-bit environment as a Ce-type
-#        (Fe ranges from 4/0 to 5/15)
-# 
-# Fs     is a Final character of a 2-character Escape sequence that is
-#        standardized internationally with identical representation in 7-bit
-#        and 8-bit environments and is independent of the currently
-#        designated C0 and C1 control sets (Fs ranges from 6/0 to 7/14)
-# 
-# I      is an Intermediate character from 2/0 to 2/15 (inclusive) in the
-#        ASCII table
-# 
-# P      is a parameter character from 3/0 to 3/15 (inclusive) in the ASCII
-#        table
-# 
-# Pn     is a numeric parameter in a control sequence, a string of zero or
-#        more characters ranging from 3/0 to 3/9 in the ASCII table
-# 
-# Ps     is a variable number of selective parameters in a control sequence
-#        with each selective parameter separated from the other by the code
-#        3/11 (which usually represents a semicolon); Ps ranges from
-#        3/0 to 3/9 and includes 3/11
-# 
-# Format Effectors versus Editor Functions
-# 
-# A format effector specifies how following output is to be displayed.
-# An editor function allows you to modify the display.  Informally
-# format effectors may be destructive; format effectors should not be.
-# 
-# For instance, a format effector that moves the "active position" (the 
-# cursor or equivalent) one space to the left would be useful when you want to
-# create an overstrike, a compound character made of two standard characters
-# overlaid. Control-H, the Backspace character, is actually supposed to be a
-# format effector, so you can do this. But many systems use it in a
-# nonstandard fashion, as an editor function, deleting the character to the
-# left of the cursor and moving the cursor left. When Control-H is assumed to
-# be an editor function, you cannot predict whether its use will create an
-# overstrike unless you also know whether the output device is in an "insert
-# mode" or an "overwrite mode". When Control-H is used as a format effector,
-# its effect can always be predicted. The familiar characters carriage
-# return, linefeed, formfeed, etc., are defined as format effectors.
-#
-# The ANSI Standard
-# 
-# The complete document describing the standard,  "ANSI X3.64-1979:
-# Additional Controls for Use with the American National Standard
-# Code for Information Interchange," can be ordered for $13.50 (plus
-# $4 postage) from
-# 
-#      Standards Sales Department
-#      American National Standards Institute
-#      1430 Broadway
-#      New York, NY 10018
-#      212/354-3300
-# 
-# It's best to read the full standard before using it. It also helps
-# to have copies of the related standards "X3.4-1977: American
-# National Standard Code for Information Interchange" (the ASCII
-# standard) and "X3.41.1974: Code-Extension Techniques for Use with
-# the 7-Bit Coded Character Set of American National Standard for
-# Information Interchange."
-# 
-# NOTES ON THE DEC VT100 IMPLEMENTATION
-# 
-# Control sequences implemented in the VT100 are as follows:
-# 
-#      CPR, CUB, CUD, CUF, CUP, CUU, DA, DSR, ED, EL, HTS, HVP, IND,
-#      LNM, NEL, RI, RIS, RM, SGR, SM, TBC
-# 
-# plus several private DEC commands.
-# 
-# Erasing parts of the display (EL and ED) in the VT100 is performed thus:
-# 
-#      Erase from cursor to end of line           Esc [ 0 K    or Esc [ K
-#      Erase from beginning of line to cursor     Esc [ 1 K
-#      Erase line containing cursor               Esc [ 2 K
-#      Erase from cursor to end of screen         Esc [ 0 J    or Esc [ J
-#      Erase from beginning of screen to cursor   Esc [ 1 J
-#      Erase entire screen                        Esc [ 2 J
-# 
-# The VT100 responds to receiving the DA (Device Attributes) control
-# 
-#      Esc [ c    (or Esc [ 0 c)
-# 
-# by transmitting the sequence
-# 
-#      Esc [ ? l ; Ps c
-# 
-# where Ps is a character that describes installed options.
-# 
-# The VT100's cursor location can be read with the DSR (Device Status
-# Report) control
-# 
-#      Esc [ 6 n
-# 
-# The VT100 reports by transmitting the CPR sequence
-# 
-#      Esc [ Pl ; Pc R
-# 
-# where Pl is the line number and Pc is the column number (in decimal).
-# 
-# The specification for the DEC VT100 is document EK-VT100-UG-003.
-# 
-# NOTES ON `PC-TERM' COMPATIBILITY
-#
-# The MS-DOS ANSI.SYS driver has set the de-facto standard for attribute
-# and color values in the SGR string.  These are as follows:
-#
-# 0    all attributes off
-# 1    foreground bright
-# 4    underscore on
-# 5    blink on/background bright (not reliable with brown)
-# 7    reverse-video
-# 8    set blank (non-display)
-# 10   set primary font
-# 11   set first alternate font (on PCs, display ROM characters 1-31)
-# 12   set second alternate font (on PCs, display IBM high-half chars)
-#
-#                      Color attribute sets
-# 3n   set foreground color       / 0=black, 1=red,     2=green, 3=brown,
-# 4n   set background color       \ 4=blue,  5=magenta, 6=cyan,  7=white
-# Bright black becomes gray.  Bright brown becomes yellow,
-#      
-# * Many VGA cards (such as the Paradise and compatibles) do the wrong thing
-#   when you try to set a "bright brown" (yellow) background with attribute
-#   5 (you get a blinking yellow foreground instead).  A few displays
-#   (including the System V console) support an attribute 6 that undoes this
-#   braindamage.
-#
-# * Some older versions of ANSI.SYS have a bug that causes thems to require
-#   ESC [ Pn k as EL rather than the ANSI ESC [ Pn K.
-
-######## NONSTANDARD CAPABILITY TRANSLATIONS USED IN THIS FILE
-#
-# The historical termcap file entries were written primarily in 4.4BSD termcap.
-# The 4.4BSD termcap set was substantially larger than the original 4.1BSD set,
-# with the extension names chosen for compatibility with the termcap names
-# assigned in System V terminfo.  There are some variant extension sets out
-# there.  We try to describe them here.
-#
-# XENIX extensions:
-#
-# The XENIX extensions include a set of function-key capabilities as follows:
-#
-#       code   XENIX variable name     terminfo name   name clashes?
-#      ----    -------------------     -------------   -----------------------
-#      CL      key_char_left
-#      CR      key_char_right
-#      CW      key_change_window                       create_window
-#      EN      key_end                 kend
-#      HM      key_home                khome
-#      HP      ??
-#      LD      key_delete_line         kdl1
-#      LF      key_linefeed                            label_off
-#      NU      key_next_unlocked_cell
-#      PD      key_page_down           knp
-#      PL      ??
-#      PN      start_print             mc5
-#      PR      ??
-#      PS      stop_print              mc4
-#      PU      key_page_up             kpp             pulse
-#      RC      key_recalc                              remove_clock
-#      RF      key_toggle_ref                          req_for_input
-#      RT      key_return              kent
-#      UP      key_up_arrow            kcuu1           parm_up_cursor
-#      WL      key_word_left
-#      WR      key_word_right
-#
-# The XENIX extensions also include the following character-set and highlight
-# capabilities:
-#
-#      XENIX   terminfo        function
-#      -----   --------        ------------------------------
-#      GS      smacs           start alternate character set
-#      GE      rmacs           end alternate character set
-#      GG                      :as:/:ae: glitch (analogous to :sg:/:ug:)
-#      bo      blink           begin blink (not used in /etc/termcap)
-#      be                      end blink (not used in /etc/termcap)
-#      bb                      blink glitch  (not used in /etc/termcap)
-#      it      dim             begin dim (not used in /etc/termcap)
-#      ie                      end dim (not used in /etc/termcap)
-#      ig                      dim glitch  (not used in /etc/termcap)
-#
-# XENIX also supposedly uses the following forms-drawing capabilities:
-#
-#      single  double type
-#      ------  ------  -------------
-#      gv      GV      vertical line (|)
-#      gh      GH      horizontal line (-)
-#      g1      G1      top right corner
-#      g4      G4      bottom right corner (_|)
-#      g2      G2      top left corner
-#      g3      G3      bottom left corner (|_)
-#      gd      GD      down-tick character (T)
-#      gl      GL      left-tick character (-|)
-#      gr      GR      right-tick character (|-)
-#      gc      GC      middle intersection (-|-)
-#      gu      GU      up-tick character (_|_)
-#
-# However, there is some confusion about case.  The scoansi entry uses
-# mixed-case versions of these, and the historical ibmpcx, lisa, trs16, and fos
-# entries have only the uppercase versions.  Accordingly, the ncurses tools
-# don't try to translate these.
-#
-# AT&T Extensions:
-#
-# The old AT&T 5410, 5420, 5425, pc6300plus, 610, and s4 entries used a set of
-# nonstandard capabilities.  Its signature is the KM capability, used to name
-# some sort of keymap file.  EE, BO, CI, CV, XS, DS, FL and FE are in this
-# set.  Comments in the original, and a little cross-checking with other AT&T
-# documentation, seem to establish that BO=:mr: (start reverse video), DS=:mh:
-# (start dim), XS=:mk: (secure/invisible mode), EE=:me: (end highlights),
-# FL=:LO: (enable soft labels), FE=:LF: (disable soft labels), CI=:vi: (make
-# cursor invisible), and CV=:ve: (make cursor normal).
-#
-# TC Extensions:
-#
-# There is a set of extended termcaps associated with something
-# called the "Terminal Control" or TC package created by MainStream Systems,
-# Winfield Kansas.  This one also uses GS/GE for as/ae, and also uses
-# CF for civis and CO for cvvis.  Finally, they define a boolean :ct:
-# that flags color terminals.
-
-######## CHANGE HISTORY
-#
-# 9.1.0 (Wed Feb  1 04:50:32 EST 1995):
-#      * First terminfo master translated from 8.3.
-# 9.2.0 (Wed Feb  1 12:21:45 EST 1995):
-#      * Replaced Wyse entries with updated entries supplied by vendor.
-# 9.3.0 (Mon Feb  6 19:14:40 EST 1995):
-#      * Added contact & status info from G. Clark Brown <clark@sssi.com>.
-# 9.3.1 (Tue Feb  7 12:00:24 EST 1995):
-#      * Better XENIX keycap translation.  Describe TC termcaps.
-#      * Contact and history info supplied by Qume.
-# 9.3.2 (Sat Feb 11 23:40:02 EST 1995):
-#      * Raided the Shufort FTP site for recent termcaps/terminfos.
-#      * Added information on X3.64 and VT100 standard escape sequences.
-# 9.3.3 (Mon Feb 13 12:26:15 EST 1995):
-#      * Added a correct X11R6 xterm entry.
-#      * Fixed terminfo translations of padding.
-# 9.3.4 (Wed Feb 22 19:27:34 EST 1995):
-#      * Added correct acsc/smacs/rmacs strings for vt100 and xterm.
-#      * Added u6/u7/u8/u9 capabilities.
-#      * Added PCVT entry.
-# 9.3.5 (Thu Feb 23 09:37:12 EST 1995):
-#      * Emacs uses :so:, not :mr:, for its mode line.  Fix linux entry
-#        to use reverse-video standout so Emacs will look right.
-#      * Added el1 capability to ansi.
-#      * Added smacs/rmacs to ansi.sys.
-# 9.4.0 (Sat Feb 25 16:43:25 EST 1995):
-#      * New mt70 entry.
-#      * Added COPYRIGHTS AND OTHER DELUSIONS.
-#      * Added AT&T 23xx & 500/513, vt220 and vt420, opus3n1+, netronics
-#        smartvid & smarterm, ampex 175 & 219 & 232,
-#        env230, falco ts100, fluke, intertube, superbrain, ncr7901, vic20,
-#        ozzie, trs200, tr600, Tandy & Texas Instruments VDTs, intext2,
-#        screwpoint, fviewpoint, Contel Business Systems, Datamedia Colorscan,
-#        adm36, mime314, ergo4000, ca22851.  Replaced att7300, esprit, dd5500.
-#      * Replaced the Perkin-Elmer entries with vendor's official ones.
-#      * Restored the old minimal-ansi entry, luna needs it.
-#      * Fixed some incorrect ip and proportional-padding translations.
-# 9.4.1 (Mon Feb 27 14:18:33 EST 1995):
-#      * Fix linux & AT386 sgr strings to do A_ALTCHARSET turnoff correctly.
-#      * Make the xterm entry 65 lines again; create xterm25 and xterm24
-#        to force a particular height.
-#      * Added beehive4 and reorganized other Harris entries.
-# 9.4.2 (Thu Mar  9 01:45:44 EST 1995):
-#      * Merged in DEC's official entries for its terminals.  The only old
-#        entry I kept was Doug Gwyn's alternate vt100 (as vt100-avo).
-#      * Replaced the translated BBN Bitgraph entries with purpose-built
-#        ones from AT&T's SVr3.
-#      * Replaced the AT&T entries with AT&T's official terminfos.
-#      * Added teleray 16, vc415, cops10. 
-#      * Merged in many individual capabilities from SCO terminfo files.
-# 9.4.3 (Mon Mar 13 02:37:53 EST 1995):
-#      * Typo fixes.
-#      * Change linux entry so A_PROTECT enables IBM-PC ROM characters.
-# 9.4.4 (Mon Mar 27 12:32:35 EST 1995):
-#      * Added tty35, Ann Arbor Guru series. vi300 and 550, cg7900, tvi803,
-#        pt210, ibm3164, IBM System 1, ctrm, Tymshare scanset, dt200, adm21,
-#        simterm, citoh and variants.
-#      * Replaced sol entry with sol1 and sol2.
-#      * Replaced Qume QVT and Freedom-series entries with purpose-built
-#        terminfo entries.
-#      * Enhanced vt220, tvi910, tvi924, hpterm, hp2645, adm42, tek
-#        and dg200 entries using caps from from SCO.
-#      * Added the usual set of function-key mappings to ANSI entry.
-#      * Corrected xterm's function-key capabilities.
-# 9.4.5 (Tue Mar 28 14:27:49 EST 1995):
-#      * Fix in xterm entry, cub and cud are not reliable under X11R6.
-# 9.4.6 (Thu Mar 30 14:52:15 EST 1995):
-#      * Fix in xterm entry, get the arrow keys right.
-#      * Change some \0 escapes to \200.
-# 9.4.7 (Tue Apr  4 11:27:11 EDT 1995)
-#      * Added apple (Videx card), adm1a, oadm31.
-#      * Fixed malformed ampex csr.
-#      * Fixed act4, cyb110; they had old-style prefix padding left in. 
-#      * Changed mandatory to advisory padding in many entries.
-#      * Replaced HP entries up to hpsub with purpose-built ones.
-#      * Blank rmir/smir/rmdc/smdc capabilities removed.
-#      * Small fixes merged in from SCO entries for lpr, fos, tvi910+, tvi924.
-# 9.4.8 (Fri Apr  7 09:36:34 EDT 199):
-#      * Replaced the Ann Arbor entries with SCO's, the init strings are
-#        more efficient (but the entries otherwise identical).
-#      * Added dg211 from Shuford archive.
-#      * Added synertek, apple-soroc, ibmpc, pc-venix, pc-coherent, xtalk,
-#        adm42-nl, pc52, gs6300, xerox820, uts30.
-#      * Pull SCO's padding into vi200 entry.
-#      * Improved capabilities for tvi4107 and other Televideo and Viewpoint
-#        entries merged in from SCO's descriptions.
-#      * Fixed old-style prefix padding on zen50, h1500.
-#      * Moved old superbee entry to superbee-xsb, pulled in new superbee
-#        entry from SCO's description.
-#      * Reorganized the special entries.
-#      * Added lm#0 to cbunix and virtual entries.
-#
-# 9.5.0 (Mon Apr 10 11:30:00 EDT 1995):
-#      * Restored cdc456tst.
-#      * Fixed sb1 entry, SCO erroneously left out the xsb glitch.
-#      * Added megatek, beacon, microkit.
-#      * Freeze for ncurses-1.9 release.
-#
-# 9.5.1 (Fri Apr 21 12:46:42 EDT 1995):
-#      * Added historical data for TAB.
-#      * Comment fixes from David MacKenzie.
-#      * Added the new BSDI pc3 entry.
-#
-# 9.5.2 (Tue Apr 25 17:27:52 EDT 1995)
-#      * A change in the tic -C logic now ensures that all entries in 
-#        the termcap translation will fit in < 1024 bytes.
-#      * Added `bobcat' and `gator' HP consoles and the Nu machine entries
-#        from GNU termcap file.  This merges in all their local information.
-#
-# 9.5.3 (Tue Apr 25 22:28:13 EDT 1995)
-#      * Changed tic -C logic to dump all capabilities used by GNU termcap.
-#      * Added warnings about entries with long translations (restoring
-#        all the GNU termcaps pushes a few over the edge).
-#
-# 9.5.4 (Wed Apr 26 15:35:09 EDT 1995)
-#      * Yet another tic change, and a couple of entry tweaks, to reduce the
-#        number of long (> 1024) termcap translations back to 0.
-#
-# 9.6.0 (Mon May  1 10:35:54 EDT 1995)
-#      * Added kf13-kf20 to Linux entry.
-#      * Regularize Prime terminal names.
-#      * Historical data on Synertek.
-#      * Freeze for ncurses-1.9.1.
-#
-# 9.6.1 (Sat May  6 02:00:52 EDT 1995):
-#      * Added true xterm-color entry, renamed djm's pseudo-color entry.
-#      * Eliminate whitespace in short name fields, this tanks some scripts.
-#      * Name field changes to shorten some long entries.
-#      * Termcap translation now automatically generates empty rmir/smir
-#        when ich1/ich is present (copes with an ancient vi bug).
-#      * Added `screen' entries from FSF's screen-3.6.2.
-#      * Added linux-nic and xterm-nic entries.
-#
-# 9.6.2 (Sat May  6 17:00:55 EDT 1995):
-#      * Change linux entry to use smacs=\E[11m and have an explicit acsc,
-#        eliminating some special-case code in ncurses.
-#
-# 9.7.0 (Tue May  9 18:03:12 EDT 1995):
-#      * Added vt320-k3, rsvidtx from the Emacs termcap.dat file.  I think
-#        that captures everything unique from it.
-#      * Added reorder script generator.
-#      * Freeze for ncurses 1.9.2 release.
-#
-# 9.7.1 (Thu Jun 29 09:35:22 EDT 1995):
-#      * Added Sean Farley's kspd, flash, rs1 capabilities for linux.
-#      * Added Olaf Siebert's corrections for adm12.
-#      * ansi-pc-color now includes the colors and pairs caps, so that
-#        entries which use it will inherit them automatically.
-#      * The linux entry can now recognize the center (keypad 5) key.
-#      * Removed some junk that found its way into Linux acsc.
-#
-# 9.8.0 (Fri Jul  7 04:46:57 EDT 1995):
-#      * Add 50% cut mark as a desperate hack to reduce tic's core usage.
-#      * xterm doesn't try to use application keypad mode any more.
-#      * Freeze for ncurses-1.9.3 release.
-#
-# 9.8.1 (Thu Jul 19 17:02:12 EDT 1995):
-#      * Added corrected sun entry from vendor.
-#      * Added csr capability to linux entry.
-#      * Peter Wemm says the at386 hpa should be \E[%i%p1%dG, not \E[%p1%dG.
-#      * Added vt102-nsgr to cope with stupid IBM PC `VT100' emulators.
-#      * Some commented-out caps in long entries come back in, my code 
-#        for computing string-table lengths had a bug in it.
-#      * pcansi series modified to fit comm-program reality better.
-#
-######## REORDER
-#
-# Older termcap distributions featured a kluge called `reorder' intended to
-# time-optimize access to selected terminals by moving them to the front of
-# the file.  This is obsolete under terminfo, but for completeness's sake
-# we give a reorder script generator here (strip off the leading #s to use).
-#
-#: mkreorder --  generate script to optimize access to given terminal types
-#:
-#: entries named on command line will be sorted to the front in reverse order
-#echo "ed -- termcap <<EOF"
-#for x in $*
-#do
-#      echo "/^$x[|:]/;.,/^[a-z#]/-1m0"
-#done
-#echo "0a"
-#echo "."
-#echo "w termcap.sorted"
-#echo "q"
-#echo "EOF"
-#:end of script
-#
-# Invoke this script like this:
-#
-#      mkreorder h19 wy60 vt100 >reorder
-#
-# The following sets edit modes for GNU EMACS
-# Local Variables:
-# fill-prefix:"\t"
-# fill-column:75
-# End:
-######## SHANTIH!  SHANTIH!  SHANTIH!
diff --git a/lib/termcap/grot/termcap.texi b/lib/termcap/grot/termcap.texi
deleted file mode 100644 (file)
index eab49e8..0000000
+++ /dev/null
@@ -1,3617 +0,0 @@
-\input texinfo  @c -*-texinfo-*-
-@setfilename termcap.info
-@settitle The Termcap Library
-@smallbook
-
-@ifinfo
-This file documents the termcap library of the GNU system.
-
-Copyright (C) 1988 Free Software Foundation, Inc.
-
-Permission is granted to make and distribute verbatim copies of
-this manual provided the copyright notice and this permission notice
-are preserved on all copies.
-
-@ignore
-Permission is granted to process this file through TeX and print the
-results, provided the printed document carries copying permission
-notice identical to this one except for the removal of this paragraph
-(this paragraph not being relevant to the printed manual).
-
-@end ignore
-Permission is granted to copy and distribute modified versions of this
-manual under the conditions for verbatim copying, provided that the entire
-resulting derived work is distributed under the terms of a permission
-notice identical to this one.
-
-Permission is granted to copy and distribute translations of this manual
-into another language, under the above conditions for modified versions,
-except that this permission notice may be stated in a translation approved
-by the Foundation.
-@end ifinfo
-
-@setchapternewpage odd
-
-@c @shorttitlepage The Termcap Manual
-
-@titlepage
-@ignore
-@sp 6
-@center @titlefont{Termcap}
-@sp 1
-@center The Termcap Library and Data Base
-@sp 4
-@center Second Edition
-@sp 1
-@center December 1992
-@sp 5
-@center Richard M. Stallman
-@sp 1
-@center Free Software Foundation
-@end ignore
-
-@c Real title page
-@title The Termcap Manual
-@subtitle The Termcap Library and Data Base
-@subtitle Second Edition
-@subtitle December 1992
-@author Richard M. Stallman
-@page
-@vskip 0pt plus 1filll
-Copyright @copyright{} 1988 Free Software Foundation, Inc.
-
-Published by the Free Software Foundation
-(59 Temple Place, Suite 330, Boston, MA 02111 USA).
-Printed copies are available for $10 each.
-
-Permission is granted to make and distribute verbatim copies of
-this manual provided the copyright notice and this permission notice
-are preserved on all copies.
-
-Permission is granted to copy and distribute modified versions of this
-manual under the conditions for verbatim copying, provided that the entire
-resulting derived work is distributed under the terms of a permission
-notice identical to this one.
-
-Permission is granted to copy and distribute translations of this manual
-into another language, under the above conditions for modified versions,
-except that this permission notice may be stated in a translation approved
-by the Foundation.
-@sp 2
-Cover art by Etienne Suvasa.
-@end titlepage
-@page
-
-@synindex vr fn
-
-@node Top, Introduction, (dir), (dir)
-
-@menu
-* Introduction::  What is termcap?  Why this manual?
-* Library::     The termcap library functions.
-* Data Base::   What terminal descriptions in @file{/etc/termcap} look like.
-* Capabilities::  Definitions of the individual terminal capabilities:
-                 how to write them in descriptions, and how to use
-                 their values to do display updating.
-* Summary::     Brief table of capability names and their meanings.
-* Var Index::   Index of C functions and variables.
-* Cap Index::   Index of termcap capabilities.
-* Index::       Concept index.
-
- --- The Detailed Node Listing ---
-
-The Termcap Library
-
-* Preparation::  Preparing to use the termcap library.
-* Find::        Finding the description of the terminal being used.
-* Interrogate::  Interrogating the description for particular capabilities.
-* Initialize::  Initialization for output using termcap.
-* Padding::     Outputting padding.
-* Parameters::  Encoding parameters such as cursor positions.
-
-Padding
-
-* Why Pad::     Explanation of padding.
-* Not Enough::  When there is not enough padding.
-* Describe Padding::  The data base says how much padding a terminal needs.
-* Output Padding::    Using @code{tputs} to output the needed padding.
-
-Filling In Parameters
-
-* Encode Parameters::  The language for encoding parameters.
-* Using Parameters::   Outputting a string command with parameters.
-
-Sending Display Commands with Parameters
-
-* tparam::      The general case, for GNU termcap only.
-* tgoto::       The special case of cursor motion.
-
-The Format of the Data Base
-
-* Format::      Overall format of a terminal description.
-* Capability Format::  Format of capabilities within a description.
-* Naming::      Naming conventions for terminal types.
-* Inheriting::  Inheriting part of a description from
-a related terminal type.
-* Changing::    When changes in the data base take effect.
-
-Definitions of the Terminal Capabilities
-
-* Basic::       Basic characteristics.
-* Screen Size::  Screen size, and what happens when it changes.
-* Cursor Motion::  Various ways to move the cursor.
-* Wrapping::    What happens if you write a character in the last column.
-* Scrolling::   Pushing text up and down on the screen.
-* Windows::     Limiting the part of the window that output affects.
-* Clearing::    Erasing one or many lines.
-* Insdel Line::  Making new blank lines in mid-screen; deleting lines.
-* Insdel Char::  Inserting and deleting characters within a line.
-* Standout::    Highlighting some of the text.
-* Underlining::  Underlining some of the text.
-* Cursor Visibility::  Making the cursor more or less easy to spot.
-* Bell::        Attracts user's attention; not localized on the screen.
-* Keypad::      Recognizing when function keys or arrows are typed.
-* Meta Key::    @key{META} acts like an extra shift key.
-* Initialization::  Commands used to initialize or reset the terminal.
-* Pad Specs::   Info for the kernel on how much padding is needed.
-* Status Line::  A status line displays ``background'' information.
-* Half-Line::   Moving by half-lines, for superscripts and subscripts.
-* Printer::     Controlling auxiliary printers of display terminals.
-@end menu
-
-@node Introduction, Library, Top, Top
-@unnumbered Introduction
-
-@cindex termcap
-@dfn{Termcap} is a library and data base that enables programs to use
-display terminals in a terminal-independent manner.  It originated in
-Berkeley Unix.
-
-The termcap data base describes the capabilities of hundreds of different
-display terminals in great detail.  Some examples of the information
-recorded for a terminal could include how many columns wide it is, what
-string to send to move the cursor to an arbitrary position (including how
-to encode the row and column numbers), how to scroll the screen up one or
-several lines, and how much padding is needed for such a scrolling
-operation.
-
-The termcap library is provided for easy access this data base in programs
-that want to do terminal-independent character-based display output.
-
-This manual describes the GNU version of the termcap library, which has
-some extensions over the Unix version.  All the extensions are identified
-as such, so this manual also tells you how to use the Unix termcap.
-
-The GNU version of the termcap library is available free as source code,
-for use in free programs, and runs on Unix and VMS systems (at least).  You
-can find it in the GNU Emacs distribution in the files @file{termcap.c} and
-@file{tparam.c}.
-
-This manual was written for the GNU project, whose goal is to develop a
-complete free operating system upward-compatible with Unix for user
-programs.  The project is approximately two thirds complete.  For more
-information on the GNU project, including the GNU Emacs editor and the
-mostly-portable optimizing C compiler, send one dollar to
-
-@display
-Free Software Foundation
-675 Mass Ave
-Cambridge, MA 02139
-@end display
-
-@node Library, Data Base, Introduction, Top
-@chapter The Termcap Library
-
-The termcap library is the application programmer's interface to the
-termcap data base.  It contains functions for the following purposes:
-
-@itemize @bullet
-@item
-Finding the description of the user's terminal type (@code{tgetent}).
-
-@item
-Interrogating the description for information on various topics
-(@code{tgetnum}, @code{tgetflag}, @code{tgetstr}).
-
-@item
-Computing and performing padding (@code{tputs}).
-
-@item
-Encoding numeric parameters such as cursor positions into the
-terminal-specific form required for display commands (@code{tparam},
-@code{tgoto}).
-@end itemize
-
-@menu
-* Preparation::  Preparing to use the termcap library.
-* Find::        Finding the description of the terminal being used.
-* Interrogate::  Interrogating the description for particular capabilities.
-* Initialize::  Initialization for output using termcap.
-* Padding::     Outputting padding.
-* Parameters::  Encoding parameters such as cursor positions.
-@end menu
-
-@node Preparation, Find,  , Library
-@section Preparing to Use the Termcap Library
-
-To use the termcap library in a program, you need two kinds of preparation:
-
-@itemize @bullet
-@item
-The compiler needs declarations of the functions and variables in the
-library.
-
-On GNU systems, it suffices to include the header file
-@file{termcap.h} in each source file that uses these functions and
-variables.@refill
-
-On Unix systems, there is often no such header file.  Then you must
-explictly declare the variables as external.  You can do likewise for
-the functions, or let them be implicitly declared and cast their
-values from type @code{int} to the appropriate type.
-
-We illustrate the declarations of the individual termcap library
-functions with ANSI C prototypes because they show how to pass the
-arguments.  If you are not using the GNU C compiler, you probably
-cannot use function prototypes, so omit the argument types and names
-from your declarations.
-
-@item
-The linker needs to search the library.  Usually either
-@samp{-ltermcap} or @samp{-ltermlib} as an argument when linking will
-do this.@refill
-@end itemize
-
-@node Find, Interrogate, Preparation, Library
-@section Finding a Terminal Description: @code{tgetent}
-
-@findex tgetent
-An application program that is going to use termcap must first look up the
-description of the terminal type in use.  This is done by calling
-@code{tgetent}, whose declaration in ANSI Standard C looks like:
-
-@example
-int tgetent (char *@var{buffer}, char *@var{termtype});
-@end example
-
-@noindent
-This function finds the description and remembers it internally so that
-you can interrogate it about specific terminal capabilities
-(@pxref{Interrogate}).
-
-The argument @var{termtype} is a string which is the name for the type of
-terminal to look up.  Usually you would obtain this from the environment
-variable @code{TERM} using @code{getenv ("TERM")}.
-
-If you are using the GNU version of termcap, you can alternatively ask
-@code{tgetent} to allocate enough space.  Pass a null pointer for
-@var{buffer}, and @code{tgetent} itself allocates the storage using
-@code{malloc}.  There is no way to get the address that was allocated,
-and you shouldn't try to free the storage.@refill
-
-With the Unix version of termcap, you must allocate space for the
-description yourself and pass the address of the space as the argument
-@var{buffer}.  There is no way you can tell how much space is needed, so
-the convention is to allocate a buffer 2048 characters long and assume that
-is enough.  (Formerly the convention was to allocate 1024 characters and
-assume that was enough.  But one day, for one kind of terminal, that was
-not enough.)
-
-No matter how the space to store the description has been obtained,
-termcap records its address internally for use when you later interrogate
-the description with @code{tgetnum}, @code{tgetstr} or @code{tgetflag}.  If
-the buffer was allocated by termcap, it will be freed by termcap too if you
-call @code{tgetent} again.  If the buffer was provided by you, you must
-make sure that its contents remain unchanged for as long as you still plan
-to interrogate the description.@refill
-
-The return value of @code{tgetent} is @minus{}1 if there is some difficulty
-accessing the data base of terminal types, 0 if the data base is accessible
-but the specified type is not defined in it, and some other value
-otherwise.
-
-Here is how you might use the function @code{tgetent}:
-
-@smallexample
-#ifdef unix
-static char term_buffer[2048];
-#else
-#define term_buffer 0
-#endif
-
-init_terminal_data ()
-@{
-  char *termtype = getenv ("TERM");
-  int success;
-
-  if (termtype == 0)
-    fatal ("Specify a terminal type with `setenv TERM <yourtype>'.\n");
-
-  success = tgetent (term_buffer, termtype);
-  if (success < 0)
-    fatal ("Could not access the termcap data base.\n");
-  if (success == 0)
-    fatal ("Terminal type `%s' is not defined.\n", termtype);
-@}
-@end smallexample
-
-@noindent
-Here we assume the function @code{fatal} prints an error message and exits.
-
-If the environment variable @code{TERMCAP} is defined, its value is used to
-override the terminal type data base.  The function @code{tgetent} checks
-the value of @code{TERMCAP} automatically.  If the value starts with
-@samp{/} then it is taken as a file name to use as the data base file,
-instead of @file{/etc/termcap} which is the standard data base.  If the
-value does not start with @samp{/} then it is itself used as the terminal
-description, provided that the terminal type @var{termtype} is among the
-types it claims to apply to.  @xref{Data Base}, for information on the
-format of a terminal description.@refill
-
-@node Interrogate, Initialize, Find, Library
-@section Interrogating the Terminal Description
-
-Each piece of information recorded in a terminal description is called a
-@dfn{capability}.  Each defined terminal capability has a two-letter code
-name and a specific meaning.  For example, the number of columns is named
-@samp{co}.  @xref{Capabilities}, for definitions of all the standard
-capability names.
-
-Once you have found the proper terminal description with @code{tgetent}
-(@pxref{Find}), your application program must @dfn{interrogate} it for
-various terminal capabilities.  You must specify the two-letter code of
-the capability whose value you seek.
-
-Capability values can be numeric, boolean (capability is either present or
-absent) or strings.  Any particular capability always has the same value
-type; for example, @samp{co} always has a numeric value, while @samp{am}
-(automatic wrap at margin) is always a flag, and @samp{cm} (cursor motion
-command) always has a string value.  The documentation of each capability
-says which type of value it has.@refill
-
-There are three functions to use to get the value of a capability,
-depending on the type of value the capability has.  Here are their
-declarations in ANSI C:
-
-@findex tgetnum
-@findex tgetflag
-@findex tgetstr
-@example
-int tgetnum (char *@var{name});
-int tgetflag (char *@var{name});
-char *tgetstr (char *@var{name}, char **@var{area});
-@end example
-
-@table @code
-@item tgetnum
-Use @code{tgetnum} to get a capability value that is numeric.  The
-argument @var{name} is the two-letter code name of the capability.  If
-the capability is present, @code{tgetnum} returns the numeric value
-(which is nonnegative).  If the capability is not mentioned in the
-terminal description, @code{tgetnum} returns @minus{}1.
-
-@item tgetflag
-Use @code{tgetflag} to get a boolean value.  If the capability
-@var{name} is present in the terminal description, @code{tgetflag}
-returns 1; otherwise, it returns 0.
-
-@item tgetstr
-Use @code{tgetstr} to get a string value.  It returns a pointer to a
-string which is the capability value, or a null pointer if the
-capability is not present in the terminal description.
-
-There are two ways @code{tgetstr} can find space to store the string value:
-
-@itemize @bullet
-@item
-You can ask @code{tgetstr} to allocate the space.  Pass a null
-pointer for the argument @var{area}, and @code{tgetstr} will use
-@code{malloc} to allocate storage big enough for the value.
-Termcap will never free this storage or refer to it again; you
-should free it when you are finished with it.
-
-This method is more robust, since there is no need to guess how
-much space is needed.  But it is supported only by the GNU
-termcap library.
-
-@item
-You can provide the space.  Provide for the argument @var{area} the
-address of a pointer variable of type @code{char *}.  Before calling
-@code{tgetstr}, initialize the variable to point at available space.
-Then @code{tgetstr} will store the string value in that space and will
-increment the pointer variable to point after the space that has been
-used.  You can use the same pointer variable for many calls to
-@code{tgetstr}.
-
-There is no way to determine how much space is needed for a single
-string, and no way for you to prevent or handle overflow of the area
-you have provided.  However, you can be sure that the total size of
-all the string values you will obtain from the terminal description is
-no greater than the size of the description (unless you get the same
-capability twice).  You can determine that size with @code{strlen} on
-the buffer you provided to @code{tgetent}.  See below for an example.
-
-Providing the space yourself is the only method supported by the Unix
-version of termcap.
-@end itemize
-@end table
-
-Note that you do not have to specify a terminal type or terminal
-description for the interrogation functions.  They automatically use the
-description found by the most recent call to @code{tgetent}.
-
-Here is an example of interrogating a terminal description for various
-capabilities, with conditionals to select between the Unix and GNU methods
-of providing buffer space.
-
-@example
-char *tgetstr ();
-
-char *cl_string, *cm_string;
-int height;
-int width;
-int auto_wrap;
-
-char PC;   /* For tputs.  */
-char *BC;  /* For tgoto.  */
-char *UP;
-
-interrogate_terminal ()
-@{
-#ifdef UNIX
-  /* Here we assume that an explicit term_buffer
-     was provided to tgetent.  */
-  char *buffer
-    = (char *) malloc (strlen (term_buffer));
-#define BUFFADDR &buffer
-#else
-#define BUFFADDR 0
-#endif
-
-  char *temp;
-
-  /* Extract information we will use.  */
-  cl_string = tgetstr ("cl", BUFFADDR);
-  cm_string = tgetstr ("cm", BUFFADDR);
-  auto_wrap = tgetflag ("am");
-  height = tgetnum ("li");
-  width = tgetnum ("co");
-
-  /* Extract information that termcap functions use.  */
-  temp = tgetstr ("pc", BUFFADDR);
-  PC = temp ? *temp : 0;
-  BC = tgetstr ("le", BUFFADDR);
-  UP = tgetstr ("up", BUFFADDR);
-@}
-@end example
-
-@noindent
-@xref{Padding}, for information on the variable @code{PC}.  @xref{Using
-Parameters}, for information on @code{UP} and @code{BC}.
-
-@node Initialize, Padding, Interrogate, Library
-@section Initialization for Use of Termcap
-@cindex terminal flags (kernel)
-
-Before starting to output commands to a terminal using termcap,
-an application program should do two things:
-
-@itemize @bullet
-@item
-Initialize various global variables which termcap library output
-functions refer to.  These include @code{PC} and @code{ospeed} for
-padding (@pxref{Output Padding}) and @code{UP} and @code{BC} for
-cursor motion (@pxref{tgoto}).@refill
-
-@item
-Tell the kernel to turn off alteration and padding of horizontal-tab
-characters sent to the terminal.
-@end itemize
-
-To turn off output processing in Berkeley Unix you would use @code{ioctl}
-with code @code{TIOCLSET} to set the bit named @code{LLITOUT}, and clear
-the bits @code{ANYDELAY} using @code{TIOCSETN}.  In POSIX or System V, you
-must clear the bit named @code{OPOST}.  Refer to the system documentation
-for details.@refill
-
-If you do not set the terminal flags properly, some older terminals will
-not work.  This is because their commands may contain the characters that
-normally signify newline, carriage return and horizontal tab---characters
-which the kernel thinks it ought to modify before output.
-
-When you change the kernel's terminal flags, you must arrange to restore
-them to their normal state when your program exits.  This implies that the
-program must catch fatal signals such as @code{SIGQUIT} and @code{SIGINT}
-and restore the old terminal flags before actually terminating.
-
-Modern terminals' commands do not use these special characters, so if you
-do not care about problems with old terminals, you can leave the kernel's
-terminal flags unaltered.
-
-@node Padding, Parameters, Initialize, Library
-@section Padding
-@cindex padding
-
-@dfn{Padding} means outputting null characters following a terminal display
-command that takes a long time to execute.  The terminal description says
-which commands require padding and how much; the function @code{tputs},
-described below, outputs a terminal command while extracting from it the
-padding information, and then outputs the padding that is necessary.
-
-@menu
-* Why Pad::     Explanation of padding.
-* Not Enough::  When there is not enough padding.
-* Describe Padding::  The data base says how much padding a terminal needs.
-* Output Padding::  Using @code{tputs} to output the needed padding.
-@end menu
-
-@node Why Pad, Not Enough,  , Padding
-@subsection Why Pad, and How
-
-Most types of terminal have commands that take longer to execute than they
-do to send over a high-speed line.  For example, clearing the screen may
-take 20msec once the entire command is received.  During that time, on a
-9600 bps line, the terminal could receive about 20 additional output
-characters while still busy clearing the screen.  Every terminal has a
-certain amount of buffering capacity to remember output characters that
-cannot be processed yet, but too many slow commands in a row can cause the
-buffer to fill up.  Then any additional output that cannot be processed
-immediately will be lost.
-
-To avoid this problem, we normally follow each display command with enough
-useless charaters (usually null characters) to fill up the time that the
-display command needs to execute.  This does the job if the terminal throws
-away null characters without using up space in the buffer (which most
-terminals do).  If enough padding is used, no output can ever be lost.  The
-right amount of padding avoids loss of output without slowing down
-operation, since the time used to transmit padding is time that nothing
-else could be done.
-
-The number of padding characters needed for an operation depends on the
-line speed.  In fact, it is proportional to the line speed.  A 9600 baud
-line transmits about one character per msec, so the clear screen command in
-the example above would need about 20 characters of padding.  At 1200 baud,
-however, only about 3 characters of padding are needed to fill up 20msec.
-
-@node Not Enough, Describe Padding, Why Pad, Padding
-@subsection When There Is Not Enough Padding
-
-There are several common manifestations of insufficient padding.
-
-@itemize @bullet
-@item
-Emacs displays @samp{I-search: ^Q-} at the bottom of the screen.
-
-This means that the terminal thought its buffer was getting full of
-display commands, so it tried to tell the computer to stop sending
-any.
-
-@item
-The screen is garbled intermittently, or the details of garbling vary
-when you repeat the action.  (A garbled screen could be due to a
-command which is simply incorrect, or to user option in the terminal
-which doesn't match the assumptions of the terminal description, but
-this usually leads to reproducible failure.)
-
-This means that the buffer did get full, and some commands were lost.
-Many changeable factors can change which ones are lost.
-
-@item
-Screen is garbled at high output speeds but not at low speeds.
-Padding problems nearly always go away at low speeds, usually even at
-1200 baud.
-
-This means that a high enough speed permits commands to arrive faster
-than they can be executed.
-@end itemize
-
-Although any obscure command on an obscure terminal might lack padding,
-in practice problems arise most often from the clearing commands
-@samp{cl} and @samp{cd} (@pxref{Clearing}), the scrolling commands
-@samp{sf} and @samp{sr} (@pxref{Scrolling}), and the line insert/delete
-commands @samp{al} and @samp{dl} (@pxref{Insdel Line}).
-
-Occasionally the terminal description fails to define @samp{sf} and some
-programs will use @samp{do} instead, so you may get a problem with
-@samp{do}.  If so, first define @samp{sf} just like @samp{do}, then
-add some padding to @samp{sf}.
-
-The best strategy is to add a lot of padding at first, perhaps 200 msec.
-This is much more than enough; in fact, it should cause a visible slowdown.
-(If you don't see a slowdown, the change has not taken effect;
-@pxref{Changing}.)  If this makes the problem go away, you have found the
-right place to add padding; now reduce the amount until the problem comes
-back, then increase it again.  If the problem remains, either it is in some
-other capability or it is not a matter of padding at all.
-
-Keep in mind that on many terminals the correct padding for insert/delete
-line or for scrolling is cursor-position dependent.  If you get problems
-from scrolling a large region of the screen but not from scrolling a small
-part (just a few lines moving), it may mean that fixed padding should be
-replaced with position-dependent padding.
-
-@node Describe Padding, Output Padding, Not Enough, Padding
-@subsection Specifying Padding in a Terminal Description
-
-In the terminal description, the amount of padding required by each display
-command is recorded as a sequence of digits at the front of the command.
-These digits specify the padding time in milliseconds (msec).  They can be
-followed optionally by a decimal point and one more digit, which is a
-number of tenths of msec.
-
-Sometimes the padding needed by a command depends on the cursor position.
-For example, the time taken by an ``insert line'' command is usually
-proportional to the number of lines that need to be moved down or cleared.
-An asterisk (@samp{*}) following the padding time says that the time
-should be multiplied by the number of screen lines affected by the command.
-
-@example
-:al=1.3*\E[L:
-@end example
-
-@noindent
-is used to describe the ``insert line'' command for a certain terminal.
-The padding required is 1.3 msec per line affected.  The command itself is
-@samp{@key{ESC} [ L}.
-
-The padding time specified in this way tells @code{tputs} how many pad
-characters to output.  @xref{Output Padding}.
-
-Two special capability values affect padding for all commands.  These are
-the @samp{pc} and @samp{pb}.  The variable @samp{pc} specifies the
-character to pad with, and @samp{pb} the speed below which no padding is
-needed.  The defaults for these variables, a null character and 0,
-are correct for most terminals.  @xref{Pad Specs}.
-
-@node Output Padding,  , Describe Padding, Padding
-@subsection Performing Padding with @code{tputs}
-@cindex line speed
-
-@findex tputs
-Use the termcap function @code{tputs} to output a string containing an
-optional padding spec of the form described above (@pxref{Describe
-Padding}).  The function @code{tputs} strips off and decodes the padding
-spec, outputs the rest of the string, and then outputs the appropriate
-padding.  Here is its declaration in ANSI C:
-
-@example
-char PC;
-short ospeed;
-
-int tputs (char *@var{string}, int @var{nlines}, int (*@var{outfun}) ());
-@end example
-
-Here @var{string} is the string (including padding spec) to be output;
-@var{nlines} is the number of lines affected by the operation, which is
-used to multiply the amount of padding if the padding spec ends with a
-@samp{*}.  Finally, @var{outfun} is a function (such as @code{fputchar})
-that is called to output each character.  When actually called,
-@var{outfun} should expect one argument, a character.
-
-@vindex ospeed
-@vindex PC
-The operation of @code{tputs} is controlled by two global variables,
-@code{ospeed} and @code{PC}.  The value of @code{ospeed} is supposed to be
-the terminal output speed, encoded as in the @code{ioctl} system call which
-gets the speed information.  This is needed to compute the number of
-padding characters.  The value of @code{PC} is the character used for
-padding.
-
-You are responsible for storing suitable values into these variables before
-using @code{tputs}.  The value stored into the @code{PC} variable should be
-taken from the @samp{pc} capability in the terminal description (@pxref{Pad
-Specs}).  Store zero in @code{PC} if there is no @samp{pc}
-capability.@refill
-
-The argument @var{nlines} requires some thought.  Normally, it should be
-the number of lines whose contents will be cleared or moved by the command.
-For cursor motion commands, or commands that do editing within one line,
-use the value 1.  For most commands that affect multiple lines, such as
-@samp{al} (insert a line) and @samp{cd} (clear from the cursor to the end
-of the screen), @var{nlines} should be the screen height minus the current
-vertical position (origin 0).  For multiple insert and scroll commands such
-as @samp{AL} (insert multiple lines), that same value for @var{nlines} is
-correct; the number of lines being inserted is @i{not} correct.@refill
-
-If a ``scroll window'' feature is used to reduce the number of lines
-affected by a command, the value of @var{nlines} should take this into
-account.  This is because the delay time required depends on how much work
-the terminal has to do, and the scroll window feature reduces the work.
-@xref{Scrolling}.
-
-Commands such as @samp{ic} and @samp{dc} (insert or delete characters) are
-problematical because the padding needed by these commands is proportional
-to the number of characters affected, which is the number of columns from
-the cursor to the end of the line.  It would be nice to have a way to
-specify such a dependence, and there is no need for dependence on vertical
-position in these commands, so it is an obvious idea to say that for these
-commands @var{nlines} should really be the number of columns affected.
-However, the definition of termcap clearly says that @var{nlines} is always
-the number of lines affected, even in this case, where it is always 1.  It
-is not easy to change this rule now, because too many programs and terminal
-descriptions have been written to follow it.
-
-Because @var{nlines} is always 1 for the @samp{ic} and @samp{dc} strings,
-there is no reason for them to use @samp{*}, but some of them do.  These
-should be corrected by deleting the @samp{*}.  If, some day, such entries
-have disappeared, it may be possible to change to a more useful convention
-for the @var{nlines} argument for these operations without breaking any
-programs.
-
-@node Parameters,  , Padding, Library
-@section Filling In Parameters
-@cindex parameters
-
-Some terminal control strings require numeric @dfn{parameters}.  For
-example, when you move the cursor, you need to say what horizontal and
-vertical positions to move it to.  The value of the terminal's @samp{cm}
-capability, which says how to move the cursor, cannot simply be a string of
-characters; it must say how to express the cursor position numbers and
-where to put them within the command.
-
-The specifications of termcap include conventions as to which string-valued
-capabilities require parameters, how many parameters, and what the
-parameters mean; for example, it defines the @samp{cm} string to take
-two parameters, the vertical and horizontal positions, with 0,0 being the
-upper left corner.  These conventions are described where the individual
-commands are documented.
-
-Termcap also defines a language used within the capability definition for
-specifying how and where to encode the parameters for output.  This language
-uses character sequences starting with @samp{%}.  (This is the same idea as
-@code{printf}, but the details are different.)  The language for parameter
-encoding is described in this section.
-
-A program that is doing display output calls the functions @code{tparam} or
-@code{tgoto} to encode parameters according to the specifications.  These
-functions produce a string containing the actual commands to be output (as
-well a padding spec which must be processed with @code{tputs};
-@pxref{Padding}).
-
-@menu
-* Encode Parameters::  The language for encoding parameters.
-* Using Parameters::  Outputting a string command with parameters.
-@end menu
-
-@node Encode Parameters, Using Parameters,  , Parameters
-@subsection Describing the Encoding
-@cindex %
-
-A terminal command string that requires parameters contains special
-character sequences starting with @samp{%} to say how to encode the
-parameters.  These sequences control the actions of @code{tparam} and
-@code{tgoto}.
-
-The parameters values passed to @code{tparam} or @code{tgoto} are
-considered to form a vector.  A pointer into this vector determines
-the next parameter to be processed.  Some of the @samp{%}-sequences
-encode one parameter and advance the pointer to the next parameter.
-Other @samp{%}-sequences alter the pointer or alter the parameter
-values without generating output.
-
-For example, the @samp{cm} string for a standard ANSI terminal is written
-as @samp{\E[%i%d;%dH}.  (@samp{\E} stands for @key{ESC}.)  @samp{cm} by
-convention always requires two parameters, the vertical and horizontal goal
-positions, so this string specifies the encoding of two parameters.  Here
-@samp{%i} increments the two values supplied, and each @samp{%d} encodes
-one of the values in decimal.  If the cursor position values 20,58 are
-encoded with this string, the result is @samp{\E[21;59H}.
-
-First, here are the @samp{%}-sequences that generate output.  Except for
-@samp{%%}, each of them encodes one parameter and advances the pointer
-to the following parameter.
-
-@table @samp
-@item %%
-Output a single @samp{%}.  This is the only way to represent a literal
-@samp{%} in a terminal command with parameters.  @samp{%%} does not
-use up a parameter.
-
-@item %d
-As in @code{printf}, output the next parameter in decimal.
-
-@item %2
-Like @samp{%02d} in @code{printf}: output the next parameter in
-decimal, and always use at least two digits.
-
-@item %3
-Like @samp{%03d} in @code{printf}: output the next parameter in
-decimal, and always use at least three digits.  Note that @samp{%4}
-and so on are @emph{not} defined.
-
-@item %.
-Output the next parameter as a single character whose ASCII code is
-the parameter value.  Like @samp{%c} in @code{printf}.
-
-@item %+@var{char}
-Add the next parameter to the character @var{char}, and output the
-resulting character.  For example, @samp{%+ } represents 0 as a space,
-1 as @samp{!}, etc.
-@end table
-
-The following @samp{%}-sequences specify alteration of the parameters
-(their values, or their order) rather than encoding a parameter for output.
-They generate no output; they are used only for their side effects
-on the parameters.  Also, they do not advance the ``next parameter'' pointer
-except as explicitly stated.  Only @samp{%i}, @samp{%r} and @samp{%>} are
-defined in standard Unix termcap.  The others are GNU extensions.@refill
-
-@table @samp
-@item %i
-Increment the next two parameters.  This is used for terminals that
-expect cursor positions in origin 1.  For example, @samp{%i%d,%d} would
-output two parameters with @samp{1} for 0, @samp{2} for 1, etc.
-
-@item %r
-Interchange the next two parameters.  This is used for terminals whose
-cursor positioning command expects the horizontal position first.
-
-@item %s
-Skip the next parameter.  Do not output anything.
-
-@item %b
-Back up one parameter.  The last parameter used will become once again
-the next parameter to be output, and the next output command will use
-it.  Using @samp{%b} more than once, you can back up any number of
-parameters, and you can refer to each parameter any number of times.
-
-@item %>@var{c1}@var{c2}
-Conditionally increment the next parameter.  Here @var{c1} and
-@var{c2} are characters which stand for their ASCII codes as numbers.
-If the next parameter is greater than the ASCII code of @var{c1}, the
-ASCII code of @var{c2} is added to it.@refill
-
-@item %a @var{op} @var{type} @var{pos}
-Perform arithmetic on the next parameter, do not use it up, and do not
-output anything.  Here @var{op} specifies the arithmetic operation,
-while @var{type} and @var{pos} together specify the other operand.
-
-Spaces are used above to separate the operands for clarity; the spaces
-don't appear in the data base, where this sequence is exactly five
-characters long.
-
-The character @var{op} says what kind of arithmetic operation to
-perform.  It can be any of these characters:
-
-@table @samp
-@item =
-assign a value to the next parameter, ignoring its old value.
-The new value comes from the other operand.
-
-@item +
-add the other operand to the next parameter.
-
-@item -
-subtract the other operand from the next parameter.
-
-@item *
-multiply the next parameter by the other operand.
-
-@item /
-divide the next parameter by the other operand.
-@end table
-
-The ``other operand'' may be another parameter's value or a constant;
-the character @var{type} says which.  It can be:
-
-@table @samp
-@item p
-Use another parameter.  The character @var{pos} says which
-parameter to use.  Subtract 64 from its ASCII code to get the
-position of the desired parameter relative to this one.  Thus,
-the character @samp{A} as @var{pos} means the parameter after the
-next one; the character @samp{?} means the parameter before the
-next one.
-
-@item c
-Use a constant value.  The character @var{pos} specifies the
-value of the constant.  The 0200 bit is cleared out, so that 0200
-can be used to represent zero.
-@end table
-@end table
-
-The following @samp{%}-sequences are special purpose hacks to compensate
-for the weird designs of obscure terminals.  They modify the next parameter
-or the next two parameters but do not generate output and do not use up any
-parameters.  @samp{%m} is a GNU extension; the others are defined in
-standard Unix termcap.
-
-@table @samp
-@item %n
-Exclusive-or the next parameter with 0140, and likewise the parameter
-after next.
-
-@item %m
-Complement all the bits of the next parameter and the parameter after next.
-
-@item %B
-Encode the next parameter in BCD.  It alters the value of the
-parameter by adding six times the quotient of the parameter by ten.
-Here is a C statement that shows how the new value is computed:
-
-@example
-@var{parm} = (@var{parm} / 10) * 16 + @var{parm} % 10;
-@end example
-
-@item %D
-Transform the next parameter as needed by Delta Data terminals.
-This involves subtracting twice the remainder of the parameter by 16.
-
-@example
-@var{parm} -= 2 * (@var{parm} % 16);
-@end example
-@end table
-
-@node Using Parameters,  , Encode Parameters, Parameters
-@subsection Sending Display Commands with Parameters
-
-The termcap library functions @code{tparam} and @code{tgoto} serve as the
-analog of @code{printf} for terminal string parameters.  The newer function
-@code{tparam} is a GNU extension, more general but missing from Unix
-termcap.  The original parameter-encoding function is @code{tgoto}, which
-is preferable for cursor motion.
-
-@menu
-* tparam::      The general case, for GNU termcap only.
-* tgoto::       The special case of cursor motion.
-@end menu
-
-@node tparam, tgoto,  , Using Parameters
-@subsubsection @code{tparam}
-
-@findex tparam
-The function @code{tparam} can encode display commands with any number of
-parameters and allows you to specify the buffer space.  It is the preferred
-function for encoding parameters for all but the @samp{cm} capability.  Its
-ANSI C declaration is as follows:
-
-@smallexample
-char *tparam (char *@var{ctlstring}, char *@var{buffer}, int @var{size}, int @var{parm1},...)
-@end smallexample
-
-The arguments are a control string @var{ctlstring} (the value of a terminal
-capability, presumably), an output buffer @var{buffer} and @var{size}, and
-any number of integer parameters to be encoded.  The effect of
-@code{tparam} is to copy the control string into the buffer, encoding
-parameters according to the @samp{%} sequences in the control string.
-
-You describe the output buffer by its address, @var{buffer}, and its size
-in bytes, @var{size}.  If the buffer is not big enough for the data to be
-stored in it, @code{tparam} calls @code{malloc} to get a larger buffer.  In
-either case, @code{tparam} returns the address of the buffer it ultimately
-uses.  If the value equals @var{buffer}, your original buffer was used.
-Otherwise, a new buffer was allocated, and you must free it after you are
-done with printing the results.  If you pass zero for @var{size} and
-@var{buffer}, @code{tparam} always allocates the space with @code{malloc}.
-
-All capabilities that require parameters also have the ability to specify
-padding, so you should use @code{tputs} to output the string produced by
-@code{tparam}.  @xref{Padding}.  Here is an example.
-
-@example
-@{
-char *buf;
-char buffer[40];
-
-buf = tparam (command, buffer, 40, parm);
-tputs (buf, 1, fputchar);
-if (buf != buffer)
-free (buf);
-@}
-@end example
-
-If a parameter whose value is zero is encoded with @samp{%.}-style
-encoding, the result is a null character, which will confuse @code{tputs}.
-This would be a serious problem, but luckily @samp{%.} encoding is used
-only by a few old models of terminal, and only for the @samp{cm}
-capability.  To solve the problem, use @code{tgoto} rather than
-@code{tparam} to encode the @samp{cm} capability.@refill
-
-@node tgoto,  , tparam, Using Parameters
-@subsubsection @code{tgoto}
-
-@findex tgoto
-The special case of cursor motion is handled by @code{tgoto}.  There
-are two reasons why you might choose to use @code{tgoto}:
-
-@itemize @bullet
-@item
-For Unix compatibility, because Unix termcap does not have @code{tparam}.
-
-@item
-For the @samp{cm} capability, since @code{tgoto} has a special feature
-to avoid problems with null characters, tabs and newlines on certain old
-terminal types that use @samp{%.} encoding for that capability.
-@end itemize
-
-Here is how @code{tgoto} might be declared in ANSI C:
-
-@example
-char *tgoto (char *@var{cstring}, int @var{hpos}, int @var{vpos})
-@end example
-
-There are three arguments, the terminal description's @samp{cm} string and
-the two cursor position numbers; @code{tgoto} computes the parametrized
-string in an internal static buffer and returns the address of that buffer.
-The next time you use @code{tgoto} the same buffer will be reused.
-
-@vindex UP
-@vindex BC
-Parameters encoded with @samp{%.} encoding can generate null characters,
-tabs or newlines.  These might cause trouble: the null character because
-@code{tputs} would think that was the end of the string, the tab because
-the kernel or other software might expand it into spaces, and the newline
-becaue the kernel might add a carriage-return, or padding characters
-normally used for a newline.  To prevent such problems, @code{tgoto} is
-careful to avoid these characters.  Here is how this works: if the target
-cursor position value is such as to cause a problem (that is to say, zero,
-nine or ten), @code{tgoto} increments it by one, then compensates by
-appending a string to move the cursor back or up one position.
-
-The compensation strings to use for moving back or up are found in global
-variables named @code{BC} and @code{UP}.  These are actual external C
-variables with upper case names; they are declared @code{char *}.  It is up
-to you to store suitable values in them, normally obtained from the
-@samp{le} and @samp{up} terminal capabilities in the terminal description
-with @code{tgetstr}.  Alternatively, if these two variables are both zero,
-the feature of avoiding nulls, tabs and newlines is turned off.
-
-It is safe to use @code{tgoto} for commands other than @samp{cm} only if
-you have stored zero in @code{BC} and @code{UP}.
-
-Note that @code{tgoto} reverses the order of its operands: the horizontal
-position comes before the vertical position in the arguments to
-@code{tgoto}, even though the vertical position comes before the horizontal
-in the parameters of the @samp{cm} string.  If you use @code{tgoto} with a
-command such as @samp{AL} that takes one parameter, you must pass the
-parameter to @code{tgoto} as the ``vertical position''.@refill
-
-@node Data Base, Capabilities, Library, Top
-@chapter The Format of the Data Base
-
-The termcap data base of terminal descriptions is stored in the file
-@file{/etc/termcap}.  It contains terminal descriptions, blank lines, and
-comments.
-
-A terminal description starts with one or more names for the terminal type.
-The information in the description is a series of @dfn{capability names}
-and values.  The capability names have standard meanings
-(@pxref{Capabilities}) and their values describe the terminal.
-
-@menu
-* Format::      Overall format of a terminal description.
-* Capability Format::  Format of capabilities within a description.
-* Naming::      Naming conventions for terminal types.
-* Inheriting::  Inheriting part of a description from
-a related terminal type.
-* Changing::    When changes in the data base take effect.
-@end menu
-
-@node Format, Capability Format,  , Data Base
-@section Terminal Description Format
-@cindex description format
-
-Aside from comments (lines starting with @samp{#}, which are ignored), each
-nonblank line in the termcap data base is a terminal description.
-A terminal description is nominally a single line, but it can be split
-into multiple lines by inserting the two characters @samp{\ newline}.
-This sequence is ignored wherever it appears in a description.
-
-The preferred way to split the description is between capabilities: insert
-the four characters @samp{: \ newline tab} immediately before any colon.
-This allows each sub-line to start with some indentation.  This works
-because, after the @samp{\ newline} are ignored, the result is @samp{: tab
-:}; the first colon ends the preceding capability and the second colon
-starts the next capability.  If you split with @samp{\ newline} alone, you
-may not add any indentation after them.
-
-Here is a real example of a terminal description:
-
-@example
-dw|vt52|DEC vt52:\
-        :cr=^M:do=^J:nl=^J:bl=^G:\
-        :le=^H:bs:cd=\EJ:ce=\EK:cl=\EH\EJ:\
-        :cm=\EY%+ %+ :co#80:li#24:\
-        :nd=\EC:ta=^I:pt:sr=\EI:up=\EA:\
-        :ku=\EA:kd=\EB:kr=\EC:kl=\ED:kb=^H:
-@end example
-
-Each terminal description begins with several names for the terminal type.
-The names are separated by @samp{|} characters, and a colon ends the last
-name.  The first name should be two characters long; it exists only for the
-sake of very old Unix systems and is never used in modern systems.  The
-last name should be a fully verbose name such as ``DEC vt52'' or ``Ann
-Arbor Ambassador with 48 lines''.  The other names should include whatever
-the user ought to be able to specify to get this terminal type, such as
-@samp{vt52} or @samp{aaa-48}.  @xref{Naming}, for information on how to
-choose terminal type names.
-
-After the terminal type names come the terminal capabilities, separated by
-colons and with a colon after the last one.  Each capability has a
-two-letter name, such as @samp{cm} for ``cursor motion string'' or @samp{li}
-for ``number of display lines''.
-
-@node Capability Format, Naming, Format, Data Base
-@section Writing the Capabilities
-
-There are three kinds of capabilities: flags, numbers, and strings.  Each
-kind has its own way of being written in the description.  Each defined
-capability has by convention a particular kind of value; for example,
-@samp{li} always has a numeric value and @samp{cm} always a string value.
-
-A flag capability is thought of as having a boolean value: the value is
-true if the capability is present, false if not.  When the capability is
-present, just write its name between two colons.
-
-A numeric capability has a value which is a nonnegative number.  Write the
-capability name, a @samp{#}, and the number, between two colons.  For
-example, @samp{@dots{}:li#48:@dots{}} is how you specify the @samp{li}
-capability for 48 lines.@refill
-
-A string-valued capability has a value which is a sequence of characters.
-Usually these are the characters used to perform some display operation.
-Write the capability name, a @samp{=}, and the characters of the value,
-between two colons.  For example, @samp{@dots{}:cm=\E[%i%d;%dH:@dots{}} is
-how the cursor motion command for a standard ANSI terminal would be
-specified.@refill
-
-Special characters in the string value can be expressed using
-@samp{\}-escape sequences as in C; in addition, @samp{\E} stands for
-@key{ESC}.  @samp{^} is also a kind of escape character; @samp{^} followed
-by @var{char} stands for the control-equivalent of @var{char}.  Thus,
-@samp{^a} stands for the character control-a, just like @samp{\001}.
-@samp{\} and @samp{^} themselves can be represented as @samp{\\} and
-@samp{\^}.@refill
-
-To include a colon in the string, you must write @samp{\072}.  You might
-ask, ``Why can't @samp{\:} be used to represent a colon?''  The reason is
-that the interrogation functions do not count slashes while looking for a
-capability.  Even if @samp{:ce=ab\:cd:} were interpreted as giving the
-@samp{ce} capability the value @samp{ab:cd}, it would also appear to define
-@samp{cd} as a flag.
-
-The string value will often contain digits at the front to specify padding
-(@pxref{Padding}) and/or @samp{%}-sequences within to specify how to encode
-parameters (@pxref{Parameters}).  Although these things are not to be
-output literally to the terminal, they are considered part of the value of
-the capability.  They are special only when the string value is processed
-by @code{tputs}, @code{tparam} or @code{tgoto}.  By contrast, @samp{\} and
-@samp{^} are considered part of the syntax for specifying the characters
-in the string.
-
-Let's look at the VT52 example again:
-
-@example
-dw|vt52|DEC vt52:\
-        :cr=^M:do=^J:nl=^J:bl=^G:\
-        :le=^H:bs:cd=\EJ:ce=\EK:cl=\EH\EJ:\
-        :cm=\EY%+ %+ :co#80:li#24:\     
-        :nd=\EC:ta=^I:pt:sr=\EI:up=\EA:\
-        :ku=\EA:kd=\EB:kr=\EC:kl=\ED:kb=^H:
-@end example
-
-Here we see the numeric-valued capabilities @samp{co} and @samp{li}, the
-flags @samp{bs} and @samp{pt}, and many string-valued capabilities.  Most
-of the strings start with @key{ESC} represented as @samp{\E}.  The rest
-contain control characters represented using @samp{^}.  The meanings of the
-individual capabilities are defined elsewhere (@pxref{Capabilities}).
-
-@node Naming, Inheriting, Capability Format, Data Base
-@section Terminal Type Name Conventions
-@cindex names of terminal types
-
-There are conventions for choosing names of terminal types.  For one thing,
-all letters should be in lower case.  The terminal type for a terminal in
-its most usual or most fundamental mode of operation should not have a
-hyphen in it.
-
-If the same terminal has other modes of operation which require
-different terminal descriptions, these variant descriptions are given
-names made by adding suffixes with hyphens.  Such alternate descriptions
-are used for two reasons:
-
-@itemize @bullet
-@item
-When the terminal has a switch that changes its behavior.  Since the
-computer cannot tell how the switch is set, the user must tell the
-computer by choosing the appropriate terminal type name.
-
-@cindex wrapping
-For example, the VT-100 has a setup flag that controls whether the
-cursor wraps at the right margin.  If this flag is set to ``wrap'',
-you must use the terminal type @samp{vt100-am}.  Otherwise you must
-use @samp{vt100-nam}.  Plain @samp{vt100} is defined as a synonym for
-either @samp{vt100-am} or @samp{vt100-nam} depending on the
-preferences of the local site.@refill
-
-The standard suffix @samp{-am} stands for ``automatic margins''.
-
-@item
-To give the user a choice in how to use the terminal.  This is done
-when the terminal has a switch that the computer normally controls.
-
-@cindex screen size
-For example, the Ann Arbor Ambassador can be configured with many
-screen sizes ranging from 20 to 60 lines.  Fewer lines make bigger
-characters but more lines let you see more of what you are editing.
-As a result, users have different preferences.  Therefore, termcap
-provides terminal types for many screen sizes.  If you choose type
-@samp{aaa-30}, the terminal will be configured to use 30 lines; if you
-choose @samp{aaa-48}, 48 lines will be used, and so on.
-@end itemize
-
-Here is a list of standard suffixes and their conventional meanings:
-
-@table @samp
-@item -w
-Short for ``wide''.  This is a mode that gives the terminal more
-columns than usual.  This is normally a user option.
-
-@item -am
-``Automatic margins''.  This is an alternate description for use when
-the terminal's margin-wrap switch is on; it contains the @samp{am}
-flag.  The implication is that normally the switch is off and the
-usual description for the terminal says that the switch is off.
-
-@item -nam
-``No automatic margins''.  The opposite of @samp{-am}, this names an
-alternative description which lacks the @samp{am} flag.  This implies
-that the terminal is normally operated with the margin-wrap switch
-turned on, and the normal description of the terminal says so.
-
-@item -na
-``No arrows''.  This terminal description initializes the terminal to
-keep its arrow keys in local mode.  This is a user option.
-
-@item -rv
-``Reverse video''.  This terminal description causes text output for
-normal video to appear as reverse, and text output for reverse video
-to come out as normal.  Often this description differs from the usual
-one by interchanging the two strings which turn reverse video on and
-off.@refill
-
-This is a user option; you can choose either the ``reverse video''
-variant terminal type or the normal terminal type, and termcap will
-obey.
-
-@item -s
-``Status''.  Says to enable use of a status line which ordinary output
-does not touch (@pxref{Status Line}).
-
-Some terminals have a special line that is used only as a status line.
-For these terminals, there is no need for an @samp{-s} variant; the
-status line commands should be defined by default.  On other
-terminals, enabling a status line means removing one screen line from
-ordinary use and reducing the effective screen height.  For these
-terminals, the user can choose the @samp{-s} variant type to request
-use of a status line.
-
-@item -@var{nlines}
-Says to operate with @var{nlines} lines on the screen, for terminals
-such as the Ambassador which provide this as an option.  Normally this
-is a user option; by choosing the terminal type, you control how many
-lines termcap will use.
-
-@item -@var{npages}p
-Says that the terminal has @var{npages} pages worth of screen memory,
-for terminals where this is a hardware option.
-
-@item -unk
-Says that description is not for direct use, but only for reference in
-@samp{tc} capabilities.  Such a description is a kind of subroutine,
-because it describes the common characteristics of several variant
-descriptions that would use other suffixes in place of @samp{-unk}.
-@end table
-
-@node Inheriting, Changing, Naming, Data Base
-@section Inheriting from Related Descriptions
-
-@cindex inheritance
-When two terminal descriptions are similar, their identical parts do not
-need to be given twice.  Instead, one of the two can be defined in terms of
-the other, using the @samp{tc} capability.  We say that one description
-@dfn{refers to} the other, or @dfn{inherits from} the other.
-
-The @samp{tc} capability must be the last one in the terminal description,
-and its value is a string which is the name of another terminal type which
-is referred to.  For example,
-
-@example
-N9|aaa|ambassador|aaa-30|ann arbor ambassador/30 lines:\
-        :ti=\E[2J\E[30;0;0;30p:\
-        :te=\E[60;0;0;30p\E[30;1H\E[J:\
-        :li#30:tc=aaa-unk:
-@end example
-
-@noindent
-defines the terminal type @samp{aaa-30} (also known as plain @samp{aaa}) in
-terms of @samp{aaa-unk}, which defines everything about the Ambassador that
-is independent of screen height.  The types @samp{aaa-36}, @samp{aaa-48}
-and so on for other screen heights are likewise defined to inherit from
-@samp{aaa-unk}.
-
-The capabilities overridden by @samp{aaa-30} include @samp{li}, which says
-how many lines there are, and @samp{ti} and @samp{te}, which configure the
-terminal to use that many lines.
-
-The effective terminal description for type @samp{aaa} consists of the text
-shown above followed by the text of the description of @samp{aaa-unk}.  The
-@samp{tc} capability is handled automatically by @code{tgetent}, which
-finds the description thus referenced and combines the two descriptions
-(@pxref{Find}).  Therefore, only the implementor of the terminal
-descriptions needs to think about using @samp{tc}.  Users and application
-programmers do not need to be concerned with it.
-
-Since the reference terminal description is used last, capabilities
-specified in the referring description override any specifications of the
-same capabilities in the reference description.
-
-The referring description can cancel out a capability without specifying
-any new value for it by means of a special trick.  Write the capability in
-the referring description, with the character @samp{@@} after the capability
-name, as follows:
-
-@smallexample
-NZ|aaa-30-nam|ann arbor ambassador/30 lines/no automatic-margins:\
-        :am@@:tc=aaa-30:
-@end smallexample
-
-@node Changing,  , Inheriting, Data Base
-@section When Changes in the Data Base Take Effect
-
-Each application program must read the terminal description from the
-data base, so a change in the data base is effective for all jobs started
-after the change is made.
-
-The change will usually have no effect on a job that have been in existence
-since before the change. The program probably read the terminal description
-once, when it was started, and is continuing to use what it read then.
-If the program does not have a feature for reexamining the data base, then
-you will need to run it again (probably killing the old job).
-
-If the description in use is coming from the @code{TERMCAP} environment
-variable, then the data base file is effectively overridden, and changes in
-it will have no effect until you change the @code{TERMCAP} variable as
-well.  For example, some users' @file{.login} files automatically copy the
-terminal description into @code{TERMCAP} to speed startup of applications.
-If you have done this, you will need to change the @code{TERMCAP} variable
-to make the changed data base take effect.
-
-@node Capabilities, Summary, Data Base, Top
-@chapter Definitions of the Terminal Capabilities
-
-This section is divided into many subsections, each for one aspect of
-use of display terminals.  For writing a display program, you usually need
-only check the subsections for the operations you want to use.  For writing
-a terminal description, you must read each subsection and fill in the
-capabilities described there.
-
-String capabilities that are display commands may require numeric
-parameters (@pxref{Parameters}).  Most such capabilities do not use
-parameters.  When a capability requires parameters, this is explicitly
-stated at the beginning of its definition.  In simple cases, the first or
-second sentence of the definition mentions all the parameters, in the order
-they should be given, using a name
-@iftex
-in italics
-@end iftex
-@ifinfo
-in upper case
-@end ifinfo
-for each one.  For example, the @samp{rp} capability is a command that
-requires two parameters; its definition begins as follows:
-
-@quotation
-String of commands to output a graphic character @var{c}, repeated @var{n}
-times.
-@end quotation
-
-In complex cases or when there are many parameters, they are described
-explicitly.
-
-When a capability is described as obsolete, this means that programs should
-not be written to look for it, but terminal descriptions should still be
-written to provide it.
-
-When a capability is described as very obsolete, this means that it should
-be omitted from terminal descriptions as well.
-
-@menu
-* Basic::       Basic characteristics.
-* Screen Size::  Screen size, and what happens when it changes.
-* Cursor Motion::  Various ways to move the cursor.
-* Wrapping::    What happens if you write a character in the last column.
-* Scrolling::   Pushing text up and down on the screen.
-* Windows::     Limiting the part of the window that output affects.
-* Clearing::    Erasing one or many lines.
-* Insdel Line::  Making new blank lines in mid-screen; deleting lines.
-* Insdel Char::  Inserting and deleting characters within a line.
-* Standout::    Highlighting some of the text.
-* Underlining::  Underlining some of the text.
-* Cursor Visibility::  Making the cursor more or less easy to spot.
-* Bell::        Attracts user's attention; not localized on the screen.
-* Keypad::      Recognizing when function keys or arrows are typed.
-* Meta Key::    @key{META} acts like an extra shift key.
-* Initialization::  Commands used to initialize or reset the terminal.
-* Pad Specs::   Info for the kernel on how much padding is needed.
-* Status Line::  A status line displays ``background'' information.
-* Half-Line::   Moving by half-lines, for superscripts and subscripts.
-* Printer::     Controlling auxiliary printers of display terminals.
-@end menu
-
-@node Basic, Screen Size,  , Capabilities
-@section Basic Characteristics
-
-This section documents the capabilities that describe the basic and
-nature of the terminal, and also those that are relevant to the output
-of graphic characters.
-
-@table @samp
-@item os
-@kindex os
-@cindex overstrike
-Flag whose presence means that the terminal can overstrike.  This
-means that outputting a graphic character does not erase whatever was
-present in the same character position before.  The terminals that can
-overstrike include printing terminals, storage tubes (all obsolete
-nowadays), and many bit-map displays.
-
-@item eo
-@kindex eo
-Flag whose presence means that outputting a space erases a character
-position even if the terminal supports overstriking.  If this flag is
-not present and overstriking is supported, output of a space has no
-effect except to move the cursor.
-
-(On terminals that do not support overstriking, you can always assume
-that outputting a space at a position erases whatever character was
-previously displayed there.)
-
-@item gn
-@kindex gn
-@cindex generic terminal type
-Flag whose presence means that this terminal type is a generic type
-which does not really describe any particular terminal.  Generic types
-are intended for use as the default type assigned when the user
-connects to the system, with the intention that the user should
-specify what type he really has.  One example of a generic type
-is the type @samp{network}.
-
-Since the generic type cannot say how to do anything interesting with
-the terminal, termcap-using programs will always find that the
-terminal is too weak to be supported if the user has failed to specify
-a real terminal type in place of the generic one.  The @samp{gn} flag
-directs these programs to use a different error message: ``You have
-not specified your real terminal type'', rather than ``Your terminal
-is not powerful enough to be used''.
-
-@item hc
-@kindex hc
-Flag whose presence means this is a hardcopy terminal.
-
-@item rp
-@kindex rp
-@cindex repeat output
-String of commands to output a graphic character @var{c}, repeated @var{n}
-times.  The first parameter value is the ASCII code for the desired
-character, and the second parameter is the number of times to repeat the
-character.  Often this command requires padding proportional to the 
-number of times the character is repeated.  This effect can be had by
-using parameter arithmetic with @samp{%}-sequences to compute the
-amount of padding, then generating the result as a number at the front
-of the string so that @code{tputs} will treat it as padding.
-
-@item hz
-@kindex hz
-Flag whose presence means that the ASCII character @samp{~} cannot be
-output on this terminal because it is used for display commands.
-
-Programs handle this flag by checking all text to be output and
-replacing each @samp{~} with some other character(s).  If this is not
-done, the screen will be thoroughly garbled.
-
-The old Hazeltine terminals that required such treatment are probably
-very rare today, so you might as well not bother to support this flag.
-
-@item CC
-@kindex CC
-@cindex command character
-String whose presence means the terminal has a settable command
-character.  The value of the string is the default command character
-(which is usually @key{ESC}).
-
-All the strings of commands in the terminal description should be
-written to use the default command character.  If you are writing an
-application program that changes the command character, use the
-@samp{CC} capability to figure out how to translate all the display
-commands to work with the new command character.
-
-Most programs have no reason to look at the @samp{CC} capability.
-
-@item xb
-@kindex xb
-@cindex Superbee
-Flag whose presence identifies Superbee terminals which are unable to
-transmit the characters @key{ESC} and @kbd{Control-C}.  Programs which
-support this flag are supposed to check the input for the code sequences
-sent by the @key{F1} and @key{F2} keys, and pretend that @key{ESC}
-or @kbd{Control-C} (respectively) had been read.  But this flag is
-obsolete, and not worth supporting.
-@end table
-
-@node Screen Size, Cursor Motion, Basic, Capabilities
-@section Screen Size
-@cindex screen size
-
-A terminal description has two capabilities, @samp{co} and @samp{li},
-that describe the screen size in columns and lines.  But there is more
-to the question of screen size than this.
-
-On some operating systems the ``screen'' is really a window and the
-effective width can vary.  On some of these systems, @code{tgetnum}
-uses the actual width of the window to decide what value to return for
-the @samp{co} capability, overriding what is actually written in the
-terminal description.  On other systems, it is up to the application
-program to check the actual window width using a system call.  For
-example, on BSD 4.3 systems, the system call @code{ioctl} with code
-@code{TIOCGWINSZ} will tell you the current screen size.
-
-On all window systems, termcap is powerless to advise the application
-program if the user resizes the window.  Application programs must
-deal with this possibility in a system-dependent fashion.  On some
-systems the C shell handles part of the problem by detecting changes
-in window size and setting the @code{TERMCAP} environment variable
-appropriately.  This takes care of application programs that are
-started subsequently.  It does not help application programs already
-running.
-
-On some systems, including BSD 4.3, all programs using a terminal get
-a signal named @code{SIGWINCH} whenever the screen size changes.
-Programs that use termcap should handle this signal by using
-@code{ioctl TIOCGWINSZ} to learn the new screen size.
-
-@table @samp
-@item co
-@kindex co
-@cindex screen size
-Numeric value, the width of the screen in character positions.  Even
-hardcopy terminals normally have a @samp{co} capability.
-
-@item li
-@kindex li
-Numeric value, the height of the screen in lines.
-@end table
-
-@node Cursor Motion, Wrapping, Screen Size, Capabilities
-@section Cursor Motion
-@cindex cursor motion
-
-Termcap assumes that the terminal has a @dfn{cursor}, a spot on the screen
-where a visible mark is displayed, and that most display commands take
-effect at the position of the cursor.  It follows that moving the cursor
-to a specified location is very important.
-
-There are many terminal capabilities for different cursor motion
-operations.  A terminal description should define as many as possible, but
-most programs do not need to use most of them.  One capability, @samp{cm},
-moves the cursor to an arbitrary place on the screen; this by itself is
-sufficient for any application as long as there is no need to support
-hardcopy terminals or certain old, weak displays that have only relative
-motion commands.  Use of other cursor motion capabilities is an
-optimization, enabling the program to output fewer characters in some
-common cases.
-
-If you plan to use the relative cursor motion commands in an application
-program, you must know what the starting cursor position is.  To do this,
-you must keep track of the cursor position and update the records each
-time anything is output to the terminal, including graphic characters.
-In addition, it is necessary to know whether the terminal wraps after
-writing in the rightmost column.  @xref{Wrapping}.
-
-One other motion capability needs special mention: @samp{nw} moves the
-cursor to the beginning of the following line, perhaps clearing all the
-starting line after the cursor, or perhaps not clearing at all.  This
-capability is a least common denominator that is probably supported even by
-terminals that cannot do most other things such as @samp{cm} or @samp{do}.
-Even hardcopy terminals can support @samp{nw}.
-
-@table @asis
-@item @samp{cm}
-@kindex cm
-String of commands to position the cursor at line @var{l}, column @var{c}.
-Both parameters are origin-zero, and are defined relative to the
-screen, not relative to display memory.
-
-All display terminals except a few very obsolete ones support @samp{cm},
-so it is acceptable for an application program to refuse to operate on
-terminals lacking @samp{cm}.
-
-@item @samp{ho}
-@kindex ho
-@cindex home position
-String of commands to move the cursor to the upper left corner of the
-screen (this position is called the @dfn{home position}).  In
-terminals where the upper left corner of the screen is not the same as
-the beginning of display memory, this command must go to the upper
-left corner of the screen, not the beginning of display memory.
-
-Every display terminal supports this capability, and many application
-programs refuse to operate if the @samp{ho} capability is missing.
-
-@item @samp{ll}
-@kindex ll
-String of commands to move the cursor to the lower left corner of the
-screen.  On some terminals, moving up from home position does this,
-but programs should never assume that will work.  Just output the
-@samp{ll} string (if it is provided); if moving to home position and
-then moving up is the best way to get there, the @samp{ll} command
-will do that.
-
-@item @samp{cr}
-@kindex cr
-String of commands to move the cursor to the beginning of the line it
-is on.  If this capability is not specified, many programs assume
-they can use the ASCII carriage return character for this.
-
-@item @samp{le}
-@kindex le
-String of commands to move the cursor left one column.  Unless the
-@samp{bw} flag capability is specified, the effect is undefined if the
-cursor is at the left margin; do not use this command there.  If
-@samp{bw} is present, this command may be used at the left margin, and
-it wraps the cursor to the last column of the preceding line.
-
-@item @samp{nd}
-@kindex nd
-String of commands to move the cursor right one column.  The effect is
-undefined if the cursor is at the right margin; do not use this
-command there, not even if @samp{am} is present.
-
-@item @samp{up}
-@kindex up
-String of commands to move the cursor vertically up one line.  The
-effect of sending this string when on the top line is undefined;
-programs should never use it that way.
-
-@item @samp{do}
-@kindex do
-String of commands to move the cursor vertically down one line.  The
-effect of sending this string when on the bottom line is undefined;
-programs should never use it that way.
-
-Some programs do use @samp{do} to scroll up one line if used at the
-bottom line, if @samp{sf} is not defined but @samp{sr} is.  This is
-only to compensate for certain old, incorrect terminal descriptions.
-(In principle this might actually lead to incorrect behavior on other
-terminals, but that seems to happen rarely if ever.)  But the proper
-solution is that the terminal description should define @samp{sf} as
-well as @samp{do} if the command is suitable for scrolling.
-
-The original idea was that this string would not contain a newline
-character and therefore could be used without disabling the kernel's
-usual habit of converting of newline into a carriage-return newline
-sequence.  But many terminal descriptions do use newline in the
-@samp{do} string, so this is not possible; a program which sends the
-@samp{do} string must disable output conversion in the kernel
-(@pxref{Initialize}).
-
-@item @samp{bw}
-@kindex bw
-Flag whose presence says that @samp{le} may be used in column zero
-to move to the last column of the preceding line.  If this flag
-is not present, @samp{le} should not be used in column zero.
-
-@item @samp{nw}
-@kindex nw
-String of commands to move the cursor to start of next line, possibly
-clearing rest of line (following the cursor) before moving.
-
-@item @samp{DO}, @samp{UP}, @samp{LE}, @samp{RI}
-@kindex DO
-@kindex LE
-@kindex RI
-@kindex UP
-Strings of commands to move the cursor @var{n} lines down vertically,
-up vertically, or @var{n} columns left or right.  Do not attempt to
-move past any edge of the screen with these commands; the effect of
-trying that is undefined.  Only a few terminal descriptions provide
-these commands, and most programs do not use them.
-
-@item @samp{CM}
-@kindex CM
-String of commands to position the cursor at line @var{l}, column
-@var{c}, relative to display memory.  Both parameters are origin-zero.
-This capability is present only in terminals where there is a
-difference between screen-relative and memory-relative addressing, and
-not even in all such terminals.
-
-@item @samp{ch}
-@kindex ch
-String of commands to position the cursor at column @var{c} in the
-same line it is on.  This is a special case of @samp{cm} in which the
-vertical position is not changed.  The @samp{ch} capability is
-provided only when it is faster to output than @samp{cm} would be in
-this special case.  Programs should not assume most display terminals
-have @samp{ch}.
-
-@item @samp{cv}
-@kindex cv
-String of commands to position the cursor at line @var{l} in the same
-column.  This is a special case of @samp{cm} in which the horizontal
-position is not changed.  The @samp{cv} capability is provided only
-when it is faster to output than @samp{cm} would be in this special
-case.  Programs should not assume most display terminals have
-@samp{cv}.
-
-@item @samp{sc}
-@kindex sc
-String of commands to make the terminal save the current cursor
-position.  Only the last saved position can be used.  If this
-capability is present, @samp{rc} should be provided also.  Most
-terminals have neither.
-
-@item @samp{rc}
-@kindex rc
-String of commands to make the terminal restore the last saved cursor
-position.  If this capability is present, @samp{sc} should be provided
-also.  Most terminals have neither.
-
-@item @samp{ff}
-@kindex ff
-String of commands to advance to the next page, for a hardcopy
-terminal.
-
-@item @samp{ta}
-@kindex ta
-String of commands to move the cursor right to the next hardware tab
-stop column.  Missing if the terminal does not have any kind of
-hardware tabs.  Do not send this command if the kernel's terminal
-modes say that the kernel is expanding tabs into spaces.
-
-@item @samp{bt}
-@kindex bt
-String of commands to move the cursor left to the previous hardware
-tab stop column.  Missing if the terminal has no such ability; many
-terminals do not.  Do not send this command if the kernel's terminal
-modes say that the kernel is expanding tabs into spaces.
-@end table
-
-The following obsolete capabilities should be included in terminal
-descriptions when appropriate, but should not be looked at by new programs.
-
-@table @samp
-@item nc
-@kindex nc
-Flag whose presence means the terminal does not support the ASCII
-carriage return character as @samp{cr}.  This flag is needed because
-old programs assume, when the @samp{cr} capability is missing, that
-ASCII carriage return can be used for the purpose.  We use @samp{nc}
-to tell the old programs that carriage return may not be used.
-
-New programs should not assume any default for @samp{cr}, so they need
-not look at @samp{nc}.  However, descriptions should contain @samp{nc}
-whenever they do not contain @samp{cr}.
-
-@item xt
-@kindex xt
-Flag whose presence means that the ASCII tab character may not be used
-for cursor motion.  This flag exists because old programs assume, when
-the @samp{ta} capability is missing, that ASCII tab can be used for
-the purpose.  We use @samp{xt} to tell the old programs not to use tab.
-
-New programs should not assume any default for @samp{ta}, so they need
-not look at @samp{xt} in connection with cursor motion.  Note that
-@samp{xt} also has implications for standout mode (@pxref{Standout}).
-It is obsolete in regard to cursor motion but not in regard to
-standout.
-
-In fact, @samp{xt} means that the terminal is a Teleray 1061.
-
-@item bc
-@kindex bc
-Very obsolete alternative name for the @samp{le} capability.
-
-@item bs
-@kindex bs
-Flag whose presence means that the ASCII character backspace may be
-used to move the cursor left.  Obsolete; look at @samp{le} instead.
-
-@item nl
-@kindex nl
-Obsolete capability which is a string that can either be used to move
-the cursor down or to scroll.  The same string must scroll when used
-on the bottom line and move the cursor when used on any other line.
-New programs should use @samp{do} or @samp{sf}, and ignore @samp{nl}.
-
-If there is no @samp{nl} capability, some old programs assume they can
-use the newline character for this purpose.  These programs follow a
-bad practice, but because they exist, it is still desirable to define
-the @samp{nl} capability in a terminal description if the best way to
-move down is @emph{not} a newline.
-@end table
-
-@node Wrapping, Scrolling, Cursor Motion, Capabilities
-@section Wrapping
-@cindex wrapping
-
-@dfn{Wrapping} means moving the cursor from the right margin to the left
-margin of the following line.  Some terminals wrap automatically when a
-graphic character is output in the last column, while others do not.  Most
-application programs that use termcap need to know whether the terminal
-wraps.  There are two special flag capabilities to describe what the
-terminal does when a graphic character is output in the last column.
-
-@table @samp
-@item am
-@kindex am
-Flag whose presence means that writing a character in the last column
-causes the cursor to wrap to the beginning of the next line.
-
-If @samp{am} is not present, writing in the last column leaves the
-cursor at the place where the character was written.
-
-Writing in the last column of the last line should be avoided on
-terminals with @samp{am}, as it may or may not cause scrolling to
-occur (@pxref{Scrolling}).  Scrolling is surely not what you would
-intend.
-
-If your program needs to check the @samp{am} flag, then it also needs
-to check the @samp{xn} flag which indicates that wrapping happens in a
-strange way.  Many common terminals have the @samp{xn} flag.
-
-@item xn
-@kindex xn
-Flag whose presence means that the cursor wraps in a strange way.  At
-least two distinct kinds of strange behavior are known; the termcap
-data base does not contain anything to distinguish the two.
-
-On Concept-100 terminals, output in the last column wraps the cursor
-almost like an ordinary @samp{am} terminal.  But if the next thing
-output is a newline, it is ignored.
-
-DEC VT-100 terminals (when the wrap switch is on) do a different
-strange thing: the cursor wraps only if the next thing output is
-another graphic character.  In fact, the wrap occurs when the
-following graphic character is received by the terminal, before the
-character is placed on the screen.
-
-On both of these terminals, after writing in the last column a
-following graphic character will be displayed in the first column of
-the following line.  But the effect of relative cursor motion
-characters such as newline or backspace at such a time depends on the
-terminal.  The effect of erase or scrolling commands also depends on
-the terminal.  You can't assume anything about what they will do on a
-terminal that has @samp{xn}.  So, to be safe, you should never do
-these things at such a time on such a terminal.
-
-To be sure of reliable results on a terminal which has the @samp{xn}
-flag, output a @samp{cm} absolute positioning command after writing in
-the last column.  Another safe thing to do is to output carriage-return
-newline, which will leave the cursor at the beginning of the following
-line.
-
-@item LP
-@kindex LP
-Flag whose presence means that it is safe to write in the last column of
-the last line without worrying about undesired scrolling.  @samp{LP}
-indicates the DEC flavor of @samp{xn} strangeness.
-@end table
-
-@node Scrolling, Windows, Wrapping, Capabilities
-@section Scrolling
-@cindex scrolling
-
-@dfn{Scrolling} means moving the contents of the screen up or down one or
-more lines.  Moving the contents up is @dfn{forward scrolling}; moving them
-down is @dfn{reverse scrolling}.
-
-Scrolling happens after each line of output during ordinary output on most
-display terminals.  But in an application program that uses termcap for
-random-access output, scrolling happens only when explicitly requested with
-the commands in this section.
-
-Some terminals have a @dfn{scroll region} feature.  This lets you limit
-the effect of scrolling to a specified range of lines.  Lines outside the
-range are unaffected when scrolling happens.  The scroll region feature
-is available if either @samp{cs} or @samp{cS} is present.
-
-@table @samp
-@item sf
-@kindex sf
-String of commands to scroll the screen one line up, assuming it is
-output with the cursor at the beginning of the bottom line.
-
-@item sr
-@kindex sr
-String of commands to scroll the screen one line down, assuming it is
-output with the cursor at the beginning of the top line.
-
-@item do
-A few programs will try to use @samp{do} to do the work of @samp{sf}.
-This is not really correct---it is an attempt to compensate for the
-absence of a @samp{sf} command in some old terminal descriptions.
-
-Since these terminal descriptions do define @samp{sr}, perhaps at one
-time the definition of @samp{do} was different and it could be used
-for scrolling as well.  But it isn't desirable to combine these two
-functions in one capability, since scrolling often requires more
-padding than simply moving the cursor down.  Defining @samp{sf} and
-@samp{do} separately allows you to specify the padding properly.
-Also, all sources agree that @samp{do} should not be relied on to do
-scrolling.
-
-So the best approach is to add @samp{sf} capabilities to the
-descriptions of these terminals, copying the definition of @samp{do}
-if that does scroll.
-
-@item SF
-@kindex SF
-String of commands to scroll the screen @var{n} lines up, assuming it
-is output with the cursor at the beginning of the bottom line.
-
-@item SR
-@kindex SR
-String of commands to scroll the screen @var{n} lines down, assuming it
-is output with the cursor at the beginning of the top line.
-
-@item cs
-@kindex cs
-String of commands to set the scroll region.  This command takes two
-parameters, @var{start} and @var{end}, which are the line numbers
-(origin-zero) of the first line to include in the scroll region and of
-the last line to include in it.  When a scroll region is set,
-scrolling is limited to the specified range of lines; lines outside
-the range are not affected by scroll commands.
-
-Do not try to move the cursor outside the scroll region.  The region
-remains set until explicitly removed.  To remove the scroll region,
-use another @samp{cs} command specifying the full height of the
-screen.
-
-The cursor position is undefined after the @samp{cs} command is set,
-so position the cursor with @samp{cm} immediately afterward.
-
-@item cS
-@kindex cS
-String of commands to set the scroll region using parameters in
-different form.  The effect is the same as if @samp{cs} were used.
-Four parameters are required:
-
-@enumerate
-@item
-Total number of lines on the screen.
-@item
-Number of lines above desired scroll region.
-@item
-Number of lines below (outside of) desired scroll region.
-@item
-Total number of lines on the screen, the same as the first parameter.
-@end enumerate
-
-This capability is a GNU extension that was invented to allow the Ann
-Arbor Ambassador's scroll-region command to be described; it could
-also be done by putting non-Unix @samp{%}-sequences into a @samp{cs}
-string, but that would have confused Unix programs that used the
-@samp{cs} capability with the Unix termcap.  Currently only GNU Emacs
-uses the @samp{cS} capability.
-
-@item ns
-@kindex ns
-Flag which means that the terminal does not normally scroll for
-ordinary sequential output.  For modern terminals, this means that
-outputting a newline in ordinary sequential output with the cursor on
-the bottom line wraps to the top line.  For some obsolete terminals,
-other things may happen.
-
-The terminal may be able to scroll even if it does not normally do so.
-If the @samp{sf} capability is provided, it can be used for scrolling
-regardless of @samp{ns}.
-
-@item da
-@kindex da
-Flag whose presence means that lines scrolled up off the top of the
-screen may come back if scrolling down is done subsequently.
-
-The @samp{da} and @samp{db} flags do not, strictly speaking, affect
-how to scroll.  But programs that scroll usually need to clear the
-lines scrolled onto the screen, if these flags are present.
-
-@item db
-@kindex db
-Flag whose presence means that lines scrolled down off the bottom of
-the screen may come back if scrolling up is done subsequently.
-
-@item lm
-@kindex lm
-Numeric value, the number of lines of display memory that the terminal
-has.  A value of zero means that the terminal has more display memory
-than can fit on the screen, but no fixed number of lines.  (The number
-of lines may depend on the amount of text in each line.)
-@end table
-
-Any terminal description that defines @samp{SF} should also define @samp{sf};
-likewise for @samp{SR} and @samp{sr}.  However, many terminals can only
-scroll by one line at a time, so it is common to find @samp{sf} and not
-@samp{SF}, or @samp{sr} without @samp{SR}.@refill
-
-Therefore, all programs that use the scrolling facilities should be
-prepared to work with @samp{sf} in the case that @samp{SF} is absent, and
-likewise with @samp{sr}.  On the other hand, an application program that
-uses only @samp{sf} and not @samp{SF} is acceptable, though slow on some
-terminals.@refill
-
-When outputting a scroll command with @code{tputs}, the @var{nlines}
-argument should be the total number of lines in the portion of the screen
-being scrolled.  Very often these commands require padding proportional to
-this number of lines.  @xref{Padding}.
-
-@node Windows, Clearing, Scrolling, Capabilities
-@section Windows
-@cindex window
-
-A @dfn{window}, in termcap, is a rectangular portion of the screen to which
-all display operations are restricted.  Wrapping, clearing, scrolling,
-insertion and deletion all operate as if the specified window were all the
-screen there was.
-
-@table @samp
-@item wi
-@kindex wi
-String of commands to set the terminal output screen window.
-This string requires four parameters, all origin-zero:
-@enumerate
-@item
-The first line to include in the window.
-@item
-The last line to include in the window.
-@item
-The first column to include in the window.
-@item
-The last column to include in the window.
-@end enumerate
-@end table
-
-Most terminals do not support windows.
-
-@node Clearing, Insdel Line, Windows, Capabilities
-@section Clearing Parts of the Screen
-@cindex erasing
-@cindex clearing the screen
-
-There are several terminal capabilities for clearing parts of the screen
-to blank.  All display terminals support the @samp{cl} string, and most
-display terminals support all of these capabilities.
-
-@table @samp
-@item cl
-@kindex cl
-String of commands to clear the entire screen and position the cursor
-at the upper left corner.
-
-@item cd
-@kindex cd
-String of commands to clear the line the cursor is on, and all the
-lines below it, down to the bottom of the screen.  This command string
-should be used only with the cursor in column zero; their effect is
-undefined if the cursor is elsewhere.
-
-@item ce
-@kindex ce
-String of commands to clear from the cursor to the end of the current
-line.
-
-@item ec
-@kindex ec
-String of commands to clear @var{n} characters, starting with the
-character that the cursor is on.  This command string is expected to
-leave the cursor position unchanged.  The parameter @var{n} should never
-be large enough to reach past the right margin; the effect of such a
-large parameter would be undefined.
-@end table
-
-Clear to end of line (@samp{ce}) is extremely important in programs that
-maintain an updating display.  Nearly all display terminals support this
-operation, so it is acceptable for a an application program to refuse to
-work if @samp{ce} is not present.  However, if you do not want this
-limitation, you can accomplish clearing to end of line by outputting spaces
-until you reach the right margin.  In order to do this, you must know the
-current horizontal position.  Also, this technique assumes that writing a
-space will erase.  But this happens to be true on all the display terminals
-that fail to support @samp{ce}.
-
-@node Insdel Line, Insdel Char, Clearing, Capabilities
-@section Insert/Delete Line
-
-@cindex insert line
-@cindex delete line
-@dfn{Inserting a line} means creating a blank line in the middle
-of the screen, and pushing the existing lines of text apart.  In fact,
-the lines above the insertion point do not change, while the lines below
-move down, and one is normally lost at the bottom of the screen.
-
-@dfn{Deleting a line} means causing the line to disappear from the screen,
-closing up the gap by moving the lines below it upward.  A new line
-appears at the bottom of the screen.  Usually this line is blank, but
-on terminals with the @samp{db} flag it may be a line previously moved
-off the screen bottom by scrolling or line insertion.
-
-Insertion and deletion of lines is useful in programs that maintain an
-updating display some parts of which may get longer or shorter.  They are
-also useful in editors for scrolling parts of the screen, and for
-redisplaying after lines of text are killed or inserted.
-
-Many terminals provide commands to insert or delete a single line at the
-cursor position.  Some provide the ability to insert or delete several
-lines with one command, using the number of lines to insert or delete as a
-parameter.  Always move the cursor to column zero before using any of
-these commands.
-
-@table @samp
-@item al
-@kindex al
-String of commands to insert a blank line before the line the cursor
-is on.  The existing line, and all lines below it, are moved down.
-The last line in the screen (or in the scroll region, if one is set)
-disappears and in most circumstances is discarded.  It may not be
-discarded if the @samp{db} is present (@pxref{Scrolling}).
-
-The cursor must be at the left margin before this command is used.
-This command does not move the cursor.
-
-@item dl
-@kindex dl
-String of commands to delete the line the cursor is on.  The following
-lines move up, and a blank line appears at the bottom of the screen
-(or bottom of the scroll region).  If the terminal has the @samp{db}
-flag, a nonblank line previously pushed off the screen bottom may
-reappear at the bottom.
-
-The cursor must be at the left margin before this command is used.
-This command does not move the cursor.
-
-@item AL
-@kindex AL
-String of commands to insert @var{n} blank lines before the line that
-the cursor is on.  It is like @samp{al} repeated @var{n} times, except
-that it is as fast as one @samp{al}.
-
-@item DL
-@kindex DL
-String of commands to delete @var{n} lines starting with the line that
-the cursor is on.  It is like @samp{dl} repeated @var{n} times, except
-that it is as fast as one @samp{dl}.
-@end table
-
-Any terminal description that defines @samp{AL} should also define
-@samp{al}; likewise for @samp{DL} and @samp{dl}.  However, many terminals
-can only insert or delete one line at a time, so it is common to find
-@samp{al} and not @samp{AL}, or @samp{dl} without @samp{DL}.@refill
-
-Therefore, all programs that use the insert and delete facilities should be
-prepared to work with @samp{al} in the case that @samp{AL} is absent, and
-likewise with @samp{dl}.  On the other hand, it is acceptable to write
-an application that uses only @samp{al} and @samp{dl} and does not look
-for @samp{AL} or @samp{DL} at all.@refill
-
-If a terminal does not support line insertion and deletion directly,
-but does support a scroll region, the effect of insertion and deletion
-can be obtained with scrolling.  However, it is up to the individual
-user program to check for this possibility and use the scrolling
-commands to get the desired result.  It is fairly important to implement
-this alternate strategy, since it is the only way to get the effect of
-line insertion and deletion on the popular VT100 terminal.
-
-Insertion and deletion of lines is affected by the scroll region on
-terminals that have a settable scroll region.  This is useful when it is
-desirable to move any few consecutive lines up or down by a few lines.
-@xref{Scrolling}.
-
-The line pushed off the bottom of the screen is not lost if the terminal
-has the @samp{db} flag capability; instead, it is pushed into display
-memory that does not appear on the screen.  This is the same thing that
-happens when scrolling pushes a line off the bottom of the screen.
-Either reverse scrolling or deletion of a line can bring the apparently
-lost line back onto the bottom of the screen.  If the terminal has the
-scroll region feature as well as @samp{db}, the pushed-out line really
-is lost if a scroll region is in effect.
-
-When outputting an insert or delete command with @code{tputs}, the
-@var{nlines} argument should be the total number of lines from the cursor
-to the bottom of the screen (or scroll region).  Very often these commands
-require padding proportional to this number of lines.  @xref{Padding}.
-
-For @samp{AL} and @samp{DL} the @var{nlines} argument should @emph{not}
-depend on the number of lines inserted or deleted; only the total number of
-lines affected.  This is because it is just as fast to insert two or
-@var{n} lines with @samp{AL} as to insert one line with @samp{al}.
-
-@node Insdel Char, Standout, Insdel Line, Capabilities
-@section Insert/Delete Character
-@cindex insert character
-@cindex delete character
-
-@dfn{Inserting a character} means creating a blank space in the middle of a
-line, and pushing the rest of the line rightward.  The character in the
-rightmost column is lost.
-
-@dfn{Deleting a character} means causing the character to disappear from
-the screen, closing up the gap by moving the rest of the line leftward.  A
-blank space appears in the rightmost column.
-
-Insertion and deletion of characters is useful in programs that maintain an
-updating display some parts of which may get longer or shorter.  It is also
-useful in editors for redisplaying the results of editing within a line.
-
-Many terminals provide commands to insert or delete a single character at
-the cursor position.  Some provide the ability to insert or delete several
-characters with one command, using the number of characters to insert or
-delete as a parameter.
-
-@cindex insert mode
-Many terminals provide an insert mode in which outputting a graphic
-character has the added effect of inserting a position for that character.
-A special command string is used to enter insert mode and another is used
-to exit it.  The reason for designing a terminal with an insert mode rather
-than an insert command is that inserting character positions is usually
-followed by writing characters into them.  With insert mode, this is as
-fast as simply writing the characters, except for the fixed overhead of
-entering and leaving insert mode.  However, when the line speed is great
-enough, padding may be required for the graphic characters output in insert
-mode.
-
-Some terminals require you to enter insert mode and then output a special
-command for each position to be inserted.  Or they may require special
-commands to be output before or after each graphic character to be
-inserted.
-
-@cindex delete mode
-Deletion of characters is usually accomplished by a straightforward command
-to delete one or several positions; but on some terminals, it is necessary
-to enter a special delete mode before using the delete command, and leave
-delete mode afterward.  Sometimes delete mode and insert mode are the same
-mode.
-
-Some terminals make a distinction between character positions in which a
-space character has been output and positions which have been cleared.  On
-these terminals, the effect of insert or delete character runs to the first
-cleared position rather than to the end of the line.  In fact, the effect
-may run to more than one line if there is no cleared position to stop the
-shift on the first line.  These terminals are identified by the @samp{in}
-flag capability.
-
-On terminals with the @samp{in} flag, the technique of skipping over
-characters that you know were cleared, and then outputting text later on in
-the same line, causes later insert and delete character operations on that
-line to do nonstandard things.  A program that has any chance of doing this
-must check for the @samp{in} flag and must be careful to write explicit
-space characters into the intermediate columns when @samp{in} is present.
-
-A plethora of terminal capabilities are needed to describe all of this
-complexity.  Here is a list of them all.  Following the list, we present
-an algorithm for programs to use to take proper account of all of these
-capabilities.
-
-@table @samp
-@item im
-@kindex im
-String of commands to enter insert mode.
-
-If the terminal has no special insert mode, but it can insert
-characters with a special command, @samp{im} should be defined with a
-null value, because the @samp{vi} editor assumes that insertion of a
-character is impossible if @samp{im} is not provided.
-
-New programs should not act like @samp{vi}.  They should pay attention
-to @samp{im} only if it is defined.
-
-@item ei
-@kindex ei
-String of commands to leave insert mode.  This capability must be
-present if @samp{im} is.
-
-On a few old terminals the same string is used to enter and exit
-insert mode.  This string turns insert mode on if it was off, and off
-it it was on.  You can tell these terminals because the @samp{ei}
-string equals the @samp{im} string.  If you want to support these
-terminals, you must always remember accurately whether insert mode is
-in effect.  However, these terminals are obsolete, and it is
-reasonable to refuse to support them.  On all modern terminals, you
-can safely output @samp{ei} at any time to ensure that insert mode is
-turned off.
-
-@item ic
-@kindex ic
-String of commands to insert one character position at the cursor.
-The cursor does not move.
-
-If outputting a graphic character while in insert mode is sufficient
-to insert the character, then the @samp{ic} capability should be
-defined with a null value.
-
-If your terminal offers a choice of ways to insert---either use insert
-mode or use a special command---then define @samp{im} and do not define
-@samp{ic}, since this gives the most efficient operation when several
-characters are to be inserted.  @emph{Do not} define both strings, for
-that means that @emph{both} must be used each time insertion is done.
-
-@item ip
-@kindex ip
-String of commands to output following an inserted graphic character
-in insert mode.  Often it is used just for a padding spec, when padding
-is needed after an inserted character (@pxref{Padding}).
-
-@item IC
-@kindex IC
-String of commands to insert @var{n} character positions at and after
-the cursor.  It has the same effect as repeating the @samp{ic} string
-and a space, @var{n} times.
-
-If @samp{IC} is provided, application programs may use it without first
-entering insert mode.
-
-@item mi
-@kindex mi
-Flag whose presence means it is safe to move the cursor while in insert
-mode and assume the terminal remains in insert mode.
-
-@item in
-@kindex in
-Flag whose presence means that the terminal distinguishes between
-character positions in which space characters have been output and
-positions which have been cleared.
-@end table
-
-An application program can assume that the terminal can do character
-insertion if @emph{any one of} the capabilities @samp{IC}, @samp{im},
-@samp{ic} or @samp{ip} is provided.
-
-To insert @var{n} blank character positions, move the cursor to the place
-to insert them and follow this algorithm:
-
-@enumerate
-@item
-If an @samp{IC} string is provided, output it with parameter @var{n}
-and you are finished.  Otherwise (or if you don't want to bother to
-look for an @samp{IC} string) follow the remaining steps.
-
-@item
-Output the @samp{im} string, if there is one, unless the terminal is
-already in insert mode.
-
-@item
-Repeat steps 4 through 6, @var{n} times.
-
-@item
-Output the @samp{ic} string if any.
-
-@item
-Output a space.
-
-@item
-Output the @samp{ip} string if any.
-
-@item
-Output the @samp{ei} string, eventually, to exit insert mode.  There
-is no need to do this right away.  If the @samp{mi} flag is present,
-you can move the cursor and the cursor will remain in insert mode;
-then you can do more insertion elsewhere without reentering insert
-mode.
-@end enumerate
-
-To insert @var{n} graphic characters, position the cursor and follow this
-algorithm:
-
-@enumerate
-@item
-If an @samp{IC} string is provided, output it with parameter @var{n},
-then output the graphic characters, and you are finished.  Otherwise
-(or if you don't want to bother to look for an @samp{IC} string)
-follow the remaining steps.
-
-@item
-Output the @samp{im} string, if there is one, unless the terminal is
-already in insert mode.
-
-@item
-For each character to be output, repeat steps 4 through 6.
-
-@item
-Output the @samp{ic} string if any.
-
-@item
-Output the next graphic character.
-
-@item
-Output the @samp{ip} string if any.
-
-@item
-Output the @samp{ei} string, eventually, to exit insert mode.  There
-is no need to do this right away.  If the @samp{mi} flag is present,
-you can move the cursor and the cursor will remain in insert mode;
-then you can do more insertion elsewhere without reentering insert
-mode.
-@end enumerate
-
-Note that this is not the same as the original Unix termcap specifications
-in one respect: it assumes that the @samp{IC} string can be used without
-entering insert mode.  This is true as far as I know, and it allows you be
-able to avoid entering and leaving insert mode, and also to be able to
-avoid the inserted-character padding after the characters that go into the
-inserted positions.
-
-Deletion of characters is less complicated; deleting one column is done by
-outputting the @samp{dc} string.  However, there may be a delete mode that
-must be entered with @samp{dm} in order to make @samp{dc} work.
-
-@table @samp
-@item dc
-@kindex dc
-String of commands to delete one character position at the cursor.  If
-@samp{dc} is not present, the terminal cannot delete characters.
-
-@item DC
-@kindex DC
-String of commands to delete @var{n} characters starting at the cursor.
-It has the same effect as repeating the @samp{dc} string @var{n} times.
-Any terminal description that has @samp{DC} also has @samp{dc}.
-
-@item dm
-@kindex dm
-String of commands to enter delete mode.  If not present, there is no
-delete mode, and @samp{dc} can be used at any time (assuming there is
-a @samp{dc}).
-
-@item ed
-@kindex ed
-String of commands to exit delete mode.  This must be present if
-@samp{dm} is.
-@end table
-
-To delete @var{n} character positions, position the cursor and follow these
-steps:
-
-@enumerate
-@item
-If the @samp{DC} string is present, output it with parameter @var{n}
-and you are finished.  Otherwise, follow the remaining steps.
-
-@item
-Output the @samp{dm} string, unless you know the terminal is already
-in delete mode.
-
-@item
-Output the @samp{dc} string @var{n} times.
-
-@item
-Output the @samp{ed} string eventually.  If the flag capability
-@samp{mi} is present, you can move the cursor and do more deletion
-without leaving and reentering delete mode.
-@end enumerate
-
-As with the @samp{IC} string, we have departed from the original termcap
-specifications by assuming that @samp{DC} works without entering delete
-mode even though @samp{dc} would not.
-
-If the @samp{dm} and @samp{im} capabilities are both present and have the
-same value, it means that the terminal has one mode for both insertion and
-deletion.  It is useful for a program to know this, because then it can do
-insertions after deletions, or vice versa, without leaving insert/delete
-mode and reentering it.
-
-@node Standout, Underlining, Insdel Char, Capabilities
-@section Standout and Appearance Modes
-@cindex appearance modes
-@cindex standout
-@cindex magic cookie
-
-@dfn{Appearance modes} are modifications to the ways characters are
-displayed.  Typical appearance modes include reverse video, dim, bright,
-blinking, underlined, invisible, and alternate character set.  Each kind of
-terminal supports various among these, or perhaps none.
-
-For each type of terminal, one appearance mode or combination of them that
-looks good for highlighted text is chosen as the @dfn{standout mode}.  The
-capabilities @samp{so} and @samp{se} say how to enter and leave standout
-mode.  Programs that use appearance modes only to highlight some text
-generally use the standout mode so that they can work on as many terminals
-as possible.  Use of specific appearance modes other than ``underlined''
-and ``alternate character set'' is rare.
-
-Terminals that implement appearance modes fall into two general classes as
-to how they do it.
-
-In some terminals, the presence or absence of any appearance mode is
-recorded separately for each character position.  In these terminals, each
-graphic character written is given the appearance modes current at the time
-it is written, and keeps those modes until it is erased or overwritten.
-There are special commands to turn the appearance modes on or off for
-characters to be written in the future.
-
-In other terminals, the change of appearance modes is represented by a
-marker that belongs to a certain screen position but affects all following
-screen positions until the next marker.  These markers are traditionally
-called @dfn{magic cookies}.
-
-The same capabilities (@samp{so}, @samp{se}, @samp{mb} and so on) for
-turning appearance modes on and off are used for both magic-cookie
-terminals and per-character terminals.  On magic cookie terminals, these
-give the commands to write the magic cookies.  On per-character terminals,
-they change the current modes that affect future output and erasure.  Some
-simple applications can use these commands without knowing whether or not
-they work by means of cookies.
-
-However, a program that maintains and updates a display needs to know
-whether the terminal uses magic cookies, and exactly what their effect is.
-This information comes from the @samp{sg} capability.
-
-The @samp{sg} capability is a numeric capability whose presence indicates
-that the terminal uses magic cookies for appearance modes.  Its value is
-the number of character positions that a magic cookie occupies.  Usually
-the cookie occupies one or more character positions on the screen, and these
-character positions are displayed as blank, but in some terminals the
-cookie has zero width.
-
-The @samp{sg} capability describes both the magic cookie to turn standout
-on and the cookie to turn it off.  This makes the assumption that both
-kinds of cookie have the same width on the screen.  If that is not true,
-the narrower cookie must be ``widened'' with spaces until it has the same
-width as the other.
-
-On some magic cookie terminals, each line always starts with normal
-display; in other words, the scope of a magic cookie never extends over
-more than one line.  But on other terminals, one magic cookie affects all
-the lines below it unless explicitly canceled.  Termcap does not define any
-way to distinguish these two ways magic cookies can work.  To be safe, it
-is best to put a cookie at the beginning of each line.
-
-On some per-character terminals, standout mode or other appearance modes
-may be canceled by moving the cursor.  On others, moving the cursor has no
-effect on the state of the appearance modes.  The latter class of terminals
-are given the flag capability @samp{ms} (``can move in standout'').  All
-programs that might have occasion to move the cursor while appearance modes
-are turned on must check for this flag; if it is not present, they should
-reset appearance modes to normal before doing cursor motion.
-
-A program that has turned on only standout mode should use @samp{se} to
-reset the standout mode to normal.  A program that has turned on only
-alternate character set mode should use @samp{ae} to return it to normal.
-If it is possible that any other appearance modes are turned on, use the
-@samp{me} capability to return them to normal.
-
-Note that the commands to turn on one appearance mode, including @samp{so}
-and @samp{mb} @dots{} @samp{mr}, if used while some other appearance modes
-are turned on, may combine the two modes on some terminals but may turn off
-the mode previously enabled on other terminals.  This is because some
-terminals do not have a command to set or clear one appearance mode without
-changing the others.  Programs should not attempt to use appearance modes
-in combination except with @samp{sa}, and when switching from one single
-mode to another should always turn off the previously enabled mode and then
-turn on the new desired mode.
-
-On some old terminals, the @samp{so} and @samp{se} commands may be the same
-command, which has the effect of turning standout on if it is off, or off
-it is on.  It is therefore risky for a program to output extra @samp{se}
-commands for good measure.  Fortunately, all these terminals are obsolete.
-
-Programs that update displays in which standout-text may be replaced with
-non-standout text must check for the @samp{xs} flag.  In a per-character
-terminal, this flag says that the only way to remove standout once written is
-to clear that portion of the line with the @samp{ce} string or something
-even more powerful (@pxref{Clearing}); just writing new characters at those
-screen positions will not change the modes in effect there.  In a magic
-cookie terminal, @samp{xs} says that the only way to remove a cookie is to
-clear a portion of the line that includes the cookie; writing a different
-cookie at the same position does not work.
-
-Such programs must also check for the @samp{xt} flag, which means that the
-terminal is a Teleray 1061.  On this terminal it is impossible to position
-the cursor at the front of a magic cookie, so the only two ways to remove a
-cookie are (1) to delete the line it is on or (2) to position the cursor at
-least one character before it (possibly on a previous line) and output the
-@samp{se} string, which on these terminals finds and removes the next
-@samp{so} magic cookie on the screen.  (It may also be possible to remove a
-cookie which is not at the beginning of a line by clearing that line.)  The
-@samp{xt} capability also has implications for the use of tab characters,
-but in that regard it is obsolete (@xref{Cursor Motion}).
-
-@table @samp
-@item so
-@kindex so
-String of commands to enter standout mode.
-
-@item se
-@kindex se
-String of commands to leave standout mode.
-
-@item sg
-@kindex sg
-Numeric capability, the width on the screen of the magic cookie.  This
-capability is absent in terminals that record appearance modes
-character by character.
-
-@item ms
-@kindex ms
-Flag whose presence means that it is safe to move the cursor while the
-appearance modes are not in the normal state.  If this flag is absent,
-programs should always reset the appearance modes to normal before
-moving the cursor.
-
-@item xs
-@kindex xs
-Flag whose presence means that the only way to reset appearance modes
-already on the screen is to clear to end of line.  On a per-character
-terminal, you must clear the area where the modes are set.  On a magic
-cookie terminal, you must clear an area containing the cookie.
-See the discussion above.
-
-@item xt
-@kindex xt
-Flag whose presence means that the cursor cannot be positioned right
-in front of a magic cookie, and that @samp{se} is a command to delete
-the next magic cookie following the cursor.  See discussion above.
-
-@item mb
-@kindex mb
-String of commands to enter blinking mode.
-
-@item md
-@kindex md
-String of commands to enter double-bright mode.
-
-@item mh
-@kindex mh
-String of commands to enter half-bright mode.
-
-@item mk
-@kindex mk
-String of commands to enter invisible mode.
-
-@item mp
-@kindex mp
-String of commands to enter protected mode.
-
-@item mr
-@kindex mr
-String of commands to enter reverse-video mode.
-
-@item me
-@kindex me
-String of commands to turn off all appearance modes, including
-standout mode and underline mode.  On some terminals it also turns off
-alternate character set mode; on others, it may not.  This capability
-must be present if any of @samp{mb} @dots{} @samp{mr} is present.
-
-@item as
-@kindex as
-String of commands to turn on alternate character set mode.  This mode
-assigns some or all graphic characters an alternate picture on the
-screen.  There is no standard as to what the alternate pictures look
-like.
-
-@item ae
-@kindex ae
-String of commands to turn off alternate character set mode.
-
-@item sa
-@kindex sa
-String of commands to turn on an arbitrary combination of appearance
-modes.  It accepts 9 parameters, each of which controls a particular
-kind of appearance mode.  A parameter should be 1 to turn its appearance
-mode on, or zero to turn that mode off.  Most terminals do not support
-the @samp{sa} capability, even among those that do have various
-appearance modes.
-
-The nine parameters are, in order, @var{standout}, @var{underline},
-@var{reverse}, @var{blink}, @var{half-bright}, @var{double-bright},
-@var{blank}, @var{protect}, @var{alt char set}.
-@end table
-
-@node Underlining, Cursor Visibility, Standout, Capabilities
-@section Underlining
-@cindex underlining
-
-Underlining on most terminals is a kind of appearance mode, much like
-standout mode.  Therefore, it may be implemented using magic cookies or as
-a flag in the terminal whose current state affects each character that is
-output.  @xref{Standout}, for a full explanation.
-
-The @samp{ug} capability is a numeric capability whose presence indicates
-that the terminal uses magic cookies for underlining.  Its value is the
-number of character positions that a magic cookie for underlining occupies;
-it is used for underlining just as @samp{sg} is used for standout.  Aside
-from the simplest applications, it is impossible to use underlining
-correctly without paying attention to the value of @samp{ug}.
-
-@table @samp
-@item us
-@kindex us
-String of commands to turn on underline mode or to output a magic cookie
-to start underlining.
-
-@item ue
-@kindex ue
-String of commands to turn off underline mode or to output a magic
-cookie to stop underlining.
-
-@item ug
-@kindex ug
-Width of magic cookie that represents a change of underline mode;
-or missing, if the terminal does not use a magic cookie for this.
-
-@item ms
-@kindex ms
-Flag whose presence means that it is safe to move the cursor while the
-appearance modes are not in the normal state.  Underlining is an
-appearance mode.  If this flag is absent, programs should always turn
-off underlining before moving the cursor.
-@end table
-
-There are two other, older ways of doing underlining: there can be a
-command to underline a single character, or the output of @samp{_}, the
-ASCII underscore character, as an overstrike could cause a character to be
-underlined.  New programs need not bother to handle these capabilities
-unless the author cares strongly about the obscure terminals which support
-them.  However, terminal descriptions should provide these capabilities
-when appropriate.
-
-@table @samp
-@item uc
-@kindex uc
-String of commands to underline the character under the cursor, and
-move the cursor right.
-
-@item ul
-@kindex ul
-Flag whose presence means that the terminal can underline by
-overstriking an underscore character (@samp{_}); some terminals can do
-this even though they do not support overstriking in general.  An
-implication of this flag is that when outputting new text to overwrite
-old text, underscore characters must be treated specially lest they
-underline the old text instead.
-@end table
-
-@node Cursor Visibility, Bell, Underlining, Capabilities
-@section Cursor Visibility
-@cindex visibility
-
-Some terminals have the ability to make the cursor invisible, or to enhance
-it.  Enhancing the cursor is often done by programs that plan to use the
-cursor to indicate to the user a position of interest that may be anywhere
-on the screen---for example, the Emacs editor enhances the cursor on entry.
-Such programs should always restore the cursor to normal on exit.
-
-@table @samp
-@item vs
-@kindex vs
-String of commands to enhance the cursor.
-
-@item vi
-@kindex vi
-String of commands to make the cursor invisible.
-
-@item ve
-@kindex ve
-String of commands to return the cursor to normal.
-@end table
-
-If you define either @samp{vs} or @samp{vi}, you must also define @samp{ve}.
-
-@node Bell, Keypad, Cursor Visibility, Capabilities
-@section Bell
-@cindex bell
-@cindex visible bell
-
-Here we describe commands to make the terminal ask for the user to pay
-attention to it.
-
-@table @samp
-@item bl
-@kindex bl
-String of commands to cause the terminal to make an audible sound.  If
-this capability is absent, the terminal has no way to make a suitable
-sound.
-
-@item vb
-@kindex vb
-String of commands to cause the screen to flash to attract attention
-(``visible bell'').  If this capability is absent, the terminal has no
-way to do such a thing.
-@end table
-
-@node Keypad, Meta Key, Bell, Capabilities
-@section Keypad and Function Keys
-
-Many terminals have arrow and function keys that transmit specific
-character sequences to the computer.  Since the precise sequences used
-depend on the terminal, termcap defines capabilities used to say what the
-sequences are.  Unlike most termcap string-valued capabilities, these are
-not strings of commands to be sent to the terminal, rather strings that
-are received from the terminal.
-
-Programs that expect to use keypad keys should check, initially, for a
-@samp{ks} capability and send it, to make the keypad actually transmit.
-Such programs should also send the @samp{ke} string when exiting.
-
-@table @asis
-@item @samp{ks}
-@kindex ka@dots{}ku
-String of commands to make the keypad keys transmit.  If this
-capability is not provided, but the others in this section are,
-programs may assume that the keypad keys always transmit.
-
-@item @samp{ke}
-String of commands to make the keypad keys work locally.  This
-capability is provided only if @samp{ks} is.
-
-@item @samp{kl}
-String of input characters sent by typing the left-arrow key.  If this
-capability is missing, you cannot expect the terminal to have a
-left-arrow key that transmits anything to the computer.
-
-@item @samp{kr}
-String of input characters sent by typing the right-arrow key.
-
-@item @samp{ku}
-String of input characters sent by typing the up-arrow key.
-
-@item @samp{kd}
-String of input characters sent by typing the down-arrow key.
-
-@item @samp{kh}
-String of input characters sent by typing the ``home-position'' key.
-
-@item @samp{K1} @dots{} @samp{K5}
-@kindex K1@dots{}K5
-Strings of input characters sent by the five other keys in a 3-by-3
-array that includes the arrow keys, if the keyboard has such a 3-by-3
-array.  Note that one of these keys may be the ``home-position'' key,
-in which case one of these capabilities will have the same value as
-the @samp{kh} key.
-
-@item @samp{k0}
-String of input characters sent by function key 10 (or 0, if the terminal
-has one labeled 0).
-
-@item @samp{k1} @dots{} @samp{k9}
-@kindex k1@dots{}k9
-Strings of input characters sent by function keys 1 through 9,
-provided for those function keys that exist.
-
-@item @samp{kn}
-Number: the number of numbered function keys, if there are more than
-10.
-
-@item @samp{l0} @dots{} @samp{l9}
-@kindex l0@dots{}l9
-Strings which are the labels appearing on the keyboard on the keys
-described by the capabilities @samp{k0} @dots{} @samp{l9}.  These
-capabilities should be left undefined if the labels are @samp{f0} or
-@samp{f10} and @samp{f1} @dots{} @samp{f9}.@refill
-
-@item @samp{kH}
-@kindex kA@dots{}kT
-String of input characters sent by the ``home down'' key, if there is
-one.
-
-@item @samp{kb}
-String of input characters sent by the ``backspace'' key, if there is
-one.
-
-@item @samp{ka}
-String of input characters sent by the ``clear all tabs'' key, if there
-is one.
-
-@item @samp{kt}
-String of input characters sent by the ``clear tab stop this column''
-key, if there is one.
-
-@item @samp{kC}
-String of input characters sent by the ``clear screen'' key, if there is
-one.
-
-@item @samp{kD}
-String of input characters sent by the ``delete character'' key, if
-there is one.
-
-@item @samp{kL}
-String of input characters sent by the ``delete line'' key, if there is
-one.
-
-@item @samp{kM}
-String of input characters sent by the ``exit insert mode'' key, if
-there is one.
-
-@item @samp{kE}
-String of input characters sent by the ``clear to end of line'' key, if
-there is one.
-
-@item @samp{kS}
-String of input characters sent by the ``clear to end of screen'' key,
-if there is one.
-
-@item @samp{kI}
-String of input characters sent by the ``insert character'' or ``enter
-insert mode'' key, if there is one.
-
-@item @samp{kA}
-String of input characters sent by the ``insert line'' key, if there is
-one.
-
-@item @samp{kN}
-String of input characters sent by the ``next page'' key, if there is
-one.
-
-@item @samp{kP}
-String of input characters sent by the ``previous page'' key, if there is
-one.
-
-@item @samp{kF}
-String of input characters sent by the ``scroll forward'' key, if there
-is one.
-
-@item @samp{kR}
-String of input characters sent by the ``scroll reverse'' key, if there
-is one.
-
-@item @samp{kT}
-String of input characters sent by the ``set tab stop in this column''
-key, if there is one.
-
-@item @samp{ko}
-String listing the other function keys the terminal has.  This is a
-very obsolete way of describing the same information found in the
-@samp{kH} @dots{} @samp{kT} keys.  The string contains a list of
-two-character termcap capability names, separated by commas.  The
-meaning is that for each capability name listed, the terminal has a
-key which sends the string which is the value of that capability.  For
-example, the value @samp{:ko=cl,ll,sf,sr:} says that the terminal has
-four function keys which mean ``clear screen'', ``home down'',
-``scroll forward'' and ``scroll reverse''.@refill
-@end table
-
-@node Meta Key, Initialization, Keypad, Capabilities
-@section Meta Key
-
-@cindex meta key
-A Meta key is a key on the keyboard that modifies each character you type
-by controlling the 0200 bit.  This bit is on if and only if the Meta key is
-held down when the character is typed.  Characters typed using the Meta key
-are called Meta characters.  Emacs uses Meta characters as editing
-commands.
-
-@table @samp
-@item km
-@kindex km
-Flag whose presence means that the terminal has a Meta key.
-
-@item mm
-@kindex mm
-String of commands to enable the functioning of the Meta key.
-
-@item mo
-@kindex mo
-String of commands to disable the functioning of the Meta key.
-@end table
-
-If the terminal has @samp{km} but does not have @samp{mm} and @samp{mo}, it
-means that the Meta key always functions.  If it has @samp{mm} and
-@samp{mo}, it means that the Meta key can be turned on or off.  Send the
-@samp{mm} string to turn it on, and the @samp{mo} string to turn it off.
-I do not know why one would ever not want it to be on.
-
-@node Initialization, Pad Specs, Meta Key, Capabilities
-@section Initialization
-@cindex reset
-@cindex initialization
-@cindex tab stops
-
-@table @samp
-@item ti
-@kindex ti
-String of commands to put the terminal into whatever special modes are
-needed or appropriate for programs that move the cursor
-nonsequentially around the screen.  Programs that use termcap to do
-full-screen display should output this string when they start up.
-
-@item te
-@kindex te
-String of commands to undo what is done by the @samp{ti} string.
-Programs that output the @samp{ti} string on entry should output this
-string when they exit.
-
-@item is
-@kindex is
-String of commands to initialize the terminal for each login session.
-
-@item if
-@kindex if
-String which is the name of a file containing the string of commands
-to initialize the terminal for each session of use.  Normally @samp{is}
-and @samp{if} are not both used.
-
-@item i1
-@itemx i3
-@kindex i1
-@kindex i3
-Two more strings of commands to initialize the terminal for each login
-session.  The @samp{i1} string (if defined) is output before @samp{is}
-or @samp{if}, and the @samp{i3} string (if defined) is output after.
-
-The reason for having three separate initialization strings is to make
-it easier to define a group of related terminal types with slightly
-different initializations.  Define two or three of the strings in the
-basic type; then the other types can override one or two of the
-strings.
-
-@item rs
-@kindex rs
-String of commands to reset the terminal from any strange mode it may
-be in.  Normally this includes the @samp{is} string (or other commands
-with the same effects) and more.  What would go in the @samp{rs}
-string but not in the @samp{is} string are annoying or slow commands
-to bring the terminal back from strange modes that nobody would
-normally use.
-
-@item it
-@kindex it
-Numeric value, the initial spacing between hardware tab stop columns
-when the terminal is powered up.  Programs to initialize the terminal
-can use this to decide whether there is a need to set the tab stops.
-If the initial width is 8, well and good; if it is not 8, then the
-tab stops should be set; if they cannot be set, the kernel is told
-to convert tabs to spaces, and other programs will observe this and do
-likewise.
-
-@item ct
-@kindex ct
-String of commands to clear all tab stops.
-
-@item st
-@kindex st
-String of commands to set tab stop at current cursor column on all
-lines.
-
-@item NF
-@kindex NF
-Flag whose presence means that the terminal does not support XON/XOFF
-flow control.  Programs should not send XON (@kbd{C-q}) or XOFF
-(@kbd{C-s}) characters to the terminal.
-@end table
-
-@node Pad Specs, Status Line, Initialization, Capabilities
-@section Padding Capabilities
-@cindex padding
-
-There are two terminal capabilities that exist just to explain the proper
-way to obey the padding specifications in all the command string
-capabilities.  One, @samp{pc}, must be obeyed by all termcap-using
-programs.
-
-@table @samp
-@item pb
-@kindex pb
-Numeric value, the lowest baud rate at which padding is actually
-needed.  Programs may check this and refrain from doing any padding at
-lower speeds.
-
-@item pc
-@kindex pc
-String of commands for padding.  The first character of this string is
-to be used as the pad character, instead of using null characters for
-padding.  If @samp{pc} is not provided, use null characters.  Every
-program that uses termcap must look up this capability and use it to
-set the variable @code{PC} that is used by @code{tputs}.
-@xref{Padding}.
-@end table
-
-Some termcap capabilities exist just to specify the amount of padding that
-the kernel should give to cursor motion commands used in ordinary
-sequential output.
-
-@table @samp
-@item dC
-@kindex dC
-Numeric value, the number of msec of padding needed for the
-carriage-return character.
-
-@item dN
-@kindex dN
-Numeric value, the number of msec of padding needed for the newline
-(linefeed) character.
-
-@item dB
-@kindex dB
-Numeric value, the number of msec of padding needed for the backspace
-character.
-
-@item dF
-@kindex dF
-Numeric value, the number of msec of padding needed for the formfeed
-character.
-
-@item dT
-@kindex dT
-Numeric value, the number of msec of padding needed for the tab
-character.
-@end table
-
-In some systems, the kernel uses the above capabilities; in other systems,
-the kernel uses the paddings specified in the string capabilities
-@samp{cr}, @samp{sf}, @samp{le}, @samp{ff} and @samp{ta}.  Descriptions of
-terminals which require such padding should contain the @samp{dC} @dots{}
-@samp{dT} capabilities and also specify the appropriate padding in the
-corresponding string capabilities.  Since no modern terminals require
-padding for ordinary sequential output, you probably won't need to do
-either of these things.
-
-@node Status Line, Half-Line, Pad Specs, Capabilities
-@section Status Line
-
-@cindex status line
-A @dfn{status line} is a line on the terminal that is not used for ordinary
-display output but instead used for a special message.  The intended use is
-for a continuously updated description of what the user's program is doing,
-and that is where the name ``status line'' comes from, but in fact it could
-be used for anything.  The distinguishing characteristic of a status line
-is that ordinary output to the terminal does not affect it; it changes only
-if the special status line commands of this section are used.
-
-@table @samp
-@item hs
-@kindex hs
-Flag whose presence means that the terminal has a status line.  If a
-terminal description specifies that there is a status line, it must
-provide the @samp{ts} and @samp{fs} capabilities.
-
-@item ts
-@kindex ts
-String of commands to move the terminal cursor into the status line.
-Usually these commands must specifically record the old cursor
-position for the sake of the @samp{fs} string.
-
-@item fs
-@kindex fs
-String of commands to move the cursor back from the status line to its
-previous position (outside the status line).
-
-@item es
-@kindex es
-Flag whose presence means that other display commands work while
-writing the status line.  In other words, one can clear parts of it,
-insert or delete characters, move the cursor within it using @samp{ch}
-if there is a @samp{ch} capability, enter and leave standout mode, and
-so on.
-
-@item ds
-@kindex ds
-String of commands to disable the display of the status line.  This
-may be absent, if there is no way to disable the status line display.
-
-@item ws
-@kindex ws
-Numeric value, the width of the status line.  If this capability is
-absent in a terminal that has a status line, it means the status line
-is the same width as the other lines.
-
-Note that the value of @samp{ws} is sometimes as small as 8.
-@end table
-
-@node Half-Line, Printer, Status Line, Capabilities
-@section Half-Line Motion
-
-Some terminals have commands for moving the cursor vertically by half-lines,
-useful for outputting subscripts and superscripts.  Mostly it is hardcopy
-terminals that have such features.
-
-@table @samp
-@item hu
-@kindex hu
-String of commands to move the cursor up half a line.  If the terminal
-is a display, it is your responsibility to avoid moving up past the
-top line; however, most likely the terminal that supports this is a
-hardcopy terminal and there is nothing to be concerned about.
-
-@item hd
-@kindex hd
-String of commands to move the cursor down half a line.  If the
-terminal is a display, it is your responsibility to avoid moving down
-past the bottom line, etc.
-@end table
-
-@node Printer,  , Half-Line, Capabilities
-@section Controlling Printers Attached to Terminals
-@cindex printer
-
-Some terminals have attached hardcopy printer ports.  They may be able to
-copy the screen contents to the printer; they may also be able to redirect
-output to the printer.  Termcap does not have anything to tell the program
-whether the redirected output appears also on the screen; it does on some
-terminals but not all.
-
-@table @samp
-@item ps
-@kindex ps
-String of commands to cause the contents of the screen to be printed.
-If it is absent, the screen contents cannot be printed.
-
-@item po
-@kindex po
-String of commands to redirect further output to the printer.
-
-@item pf
-@kindex pf
-String of commands to terminate redirection of output to the printer.
-This capability must be present in the description if @samp{po} is.
-
-@item pO
-@kindex pO
-String of commands to redirect output to the printer for next @var{n}
-characters of output, regardless of what they are.  Redirection will
-end automatically after @var{n} characters of further output.  Until
-then, nothing that is output can end redirection, not even the
-@samp{pf} string if there is one.  The number @var{n} should not be
-more than 255.
-
-One use of this capability is to send non-text byte sequences (such as
-bit-maps) to the printer.
-@end table
-
-Most terminals with printers do not support all of @samp{ps}, @samp{po} and
-@samp{pO}; any one or two of them may be supported.  To make a program that
-can send output to all kinds of printers, it is necessary to check for all
-three of these capabilities, choose the most convenient of the ones that
-are provided, and use it in its own appropriate fashion.
-
-@node Summary, Var Index, Capabilities, Top
-@chapter Summary of Capability Names
-
-Here are all the terminal capability names in alphabetical order
-with a brief description of each.  For cross references to their definitions,
-see the index of capability names (@pxref{Cap Index}).
-
-@table @samp
-@item ae
-String to turn off alternate character set mode.
-@item al
-String to insert a blank line before the cursor.
-@item AL
-String to insert @var{n} blank lines before the cursor.
-@item am
-Flag: output to last column wraps cursor to next line.
-@item as
-String to turn on alternate character set mode.like.
-@item bc
-Very obsolete alternative name for the @samp{le} capability.
-@item bl
-String to sound the bell.
-@item bs
-Obsolete flag: ASCII backspace may be used for leftward motion.
-@item bt
-String to move the cursor left to the previous hardware tab stop column.
-@item bw
-Flag: @samp{le} at left margin wraps to end of previous line.
-@item CC
-String to change terminal's command character.
-@item cd
-String to clear the line the cursor is on, and following lines.
-@item ce
-String to clear from the cursor to the end of the line.
-@item ch
-String to position the cursor at column @var{c} in the same line.
-@item cl
-String to clear the entire screen and put cursor at upper left corner.
-@item cm
-String to position the cursor at line @var{l}, column @var{c}.
-@item CM
-String to position the cursor at line @var{l}, column
-@var{c}, relative to display memory.
-@item co
-Number: width of the screen.
-@item cr
-String to move cursor sideways to left margin.
-@item cs
-String to set the scroll region.
-@item cS
-Alternate form of string to set the scroll region.
-@item ct
-String to clear all tab stops.
-@item cv
-String to position the cursor at line @var{l} in the same column.
-@item da
-Flag: data scrolled off top of screen may be scrolled back.
-@item db
-Flag: data scrolled off bottom of screen may be scrolled back.
-@item dB
-Obsolete number: msec of padding needed for the backspace character.
-@item dc
-String to delete one character position at the cursor.
-@item dC
-Obsolete number: msec of padding needed for the carriage-return character.
-@item DC
-String to delete @var{n} characters starting at the cursor.
-@item dF
-Obsolete number: msec of padding needed for the formfeed character.
-@item dl
-String to delete the line the cursor is on.
-@item DL
-String to delete @var{n} lines starting with the cursor's line.
-@item dm
-String to enter delete mode.
-@item dN
-Obsolete number: msec of padding needed for the newline character.
-@item do
-String to move the cursor vertically down one line.
-@item DO
-String to move cursor vertically down @var{n} lines.
-@item ds
-String to disable the display of the status line.
-@item dT
-Obsolete number: msec of padding needed for the tab character.
-@item ec
-String of commands to clear @var{n} characters at cursor.
-@item ed
-String to exit delete mode.
-@item ei
-String to leave insert mode.
-@item eo
-Flag: output of a space can erase an overstrike.
-@item es
-Flag: other display commands work while writing the status line.
-@item ff
-String to advance to the next page, for a hardcopy terminal.
-@item fs
-String to move the cursor back from the status line to its
-previous position (outside the status line).
-@item gn
-Flag: this terminal type is generic, not real.
-@item hc
-Flag: hardcopy terminal.
-@item hd
-String to move the cursor down half a line.
-@item ho
-String to position cursor at upper left corner.
-@item hs
-Flag: the terminal has a status line.
-@item hu
-String to move the cursor up half a line.
-@item hz
-Flag: terminal cannot accept @samp{~} as output.
-@item i1
-String to initialize the terminal for each login session.
-@item i3
-String to initialize the terminal for each login session.
-@item ic
-String to insert one character position at the cursor.
-@item IC
-String to insert @var{n} character positions at the cursor.
-@item if
-String naming a file of commands to initialize the terminal.
-@item im
-String to enter insert mode.
-@item in
-Flag: outputting a space is different from moving over empty positions.
-@item ip
-String to output following an inserted character in insert mode.
-@item is
-String to initialize the terminal for each login session.
-@item it
-Number: initial spacing between hardware tab stop columns.
-@item k0
-String of input sent by function key 0 or 10.
-@item k1 @dots{} k9
-Strings of input sent by function keys 1 through 9.
-@item K1 @dots{} K5
-Strings sent by the five other keys in 3-by-3 array with arrows.
-@item ka
-String of input sent by the ``clear all tabs'' key.
-@item kA
-String of input sent by the ``insert line'' key.
-@item kb
-String of input sent by the ``backspace'' key.
-@item kC
-String of input sent by the ``clear screen'' key.
-@item kd
-String of input sent by typing the down-arrow key.
-@item kD
-String of input sent by the ``delete character'' key.
-@item ke
-String to make the function keys work locally.
-@item kE
-String of input sent by the ``clear to end of line'' key.
-@item kF
-String of input sent by the ``scroll forward'' key.
-@item kh
-String of input sent by typing the ``home-position'' key.
-@item kH
-String of input sent by the ``home down'' key.
-@item kI
-String of input sent by the ``insert character'' or ``enter
-insert mode'' key.
-@item kl
-String of input sent by typing the left-arrow key.
-@item kL
-String of input sent by the ``delete line'' key.
-@item km
-Flag: the terminal has a Meta key.
-@item kM
-String of input sent by the ``exit insert mode'' key.
-@item kn
-Numeric value, the number of numbered function keys.
-@item kN
-String of input sent by the ``next page'' key.
-@item ko
-Very obsolete string listing the terminal's named function keys.
-@item kP
-String of input sent by the ``previous page'' key.
-@item kr
-String of input sent by typing the right-arrow key.
-@item kR
-String of input sent by the ``scroll reverse'' key.
-@item ks
-String to make the function keys transmit.
-@item kS
-String of input sent by the ``clear to end of screen'' key.
-@item kt
-String of input sent by the ``clear tab stop this column'' key.
-@item kT
-String of input sent by the ``set tab stop in this column'' key.
-@item ku
-String of input sent by typing the up-arrow key.
-@item l0
-String on keyboard labelling function key 0 or 10.
-@item l1 @dots{} l9
-Strings on keyboard labelling function keys 1 through 9.
-@item le
-String to move the cursor left one column.
-@item LE
-String to move cursor left @var{n} columns.
-@item li
-Number: height of the screen.
-@item ll
-String to position cursor at lower left corner.
-@item lm
-Number: lines of display memory.
-@item LP
-Flag: writing to last column of last line will not scroll.
-@item mb
-String to enter blinking mode.
-@item md
-String to enter double-bright mode.
-@item me
-String to turn off all appearance modes
-@item mh
-String to enter half-bright mode.
-@item mi
-Flag: cursor motion in insert mode is safe.
-@item mk
-String to enter invisible mode.
-@item mm
-String to enable the functioning of the Meta key.
-@item mo
-String to disable the functioning of the Meta key.
-@item mp
-String to enter protected mode.
-@item mr
-String to enter reverse-video mode.
-@item ms
-Flag: cursor motion in standout mode is safe.
-@item nc
-Obsolete flag: do not use ASCII carriage-return on this terminal.
-@item nd
-String to move the cursor right one column.
-@item NF
-Flag: do not use XON/XOFF flow control.
-@item nl
-Obsolete alternative name for the @samp{do} and @samp{sf} capabilities.
-@item ns
-Flag: the terminal does not normally scroll for sequential output.
-@item nw
-String to move to start of next line, possibly clearing rest of old line.
-@item os
-Flag: terminal can overstrike.
-@item pb
-Number: the lowest baud rate at which padding is actually needed.
-@item pc
-String containing character for padding.
-@item pf
-String to terminate redirection of output to the printer.
-@item po
-String to redirect further output to the printer.
-@item pO
-String to redirect @var{n} characters ofoutput to the printer.
-@item ps
-String to print the screen on the attached printer.
-@item rc
-String to move to last saved cursor position.
-@item RI
-String to move cursor right @var{n} columns.
-@item rp
-String to output character @var{c} repeated @var{n} times.
-@item rs
-String to reset the terminal from any strange modes.
-@item sa
-String to turn on an arbitrary combination of appearance modes.
-@item sc
-String to save the current cursor position.
-@item se
-String to leave standout mode.
-@item sf
-String to scroll the screen one line up.
-@item SF
-String to scroll the screen @var{n} lines up.
-@item sg
-Number: width of magic standout cookie.  Absent if magic cookies are
-not used.
-@item so
-String to enter standout mode.
-@item sr
-String to scroll the screen one line down.
-@item SR
-String to scroll the screen @var{n} line down.
-@item st
-String to set tab stop at current cursor column on all lines.
-programs.
-@item ta
-String to move the cursor right to the next hardware tab stop column.
-@item te
-String to return terminal to settings for sequential output.
-@item ti
-String to initialize terminal for random cursor motion.
-@item ts
-String to move the terminal cursor into the status line.
-@item uc
-String to underline one character and move cursor right.
-@item ue
-String to turn off underline mode
-@item ug
-Number: width of underlining magic cookie.  Absent if underlining
-doesn't use magic cookies.
-@item ul
-Flag: underline by overstriking with an underscore.
-@item up
-String to move the cursor vertically up one line.
-@item UP
-String to move cursor vertically up @var{n} lines.
-@item us
-String to turn on underline mode
-@item vb
-String to make the screen flash.
-@item ve
-String to return the cursor to normal.
-@item vi
-String to make the cursor invisible.
-@item vs
-String to enhance the cursor.
-@item wi
-String to set the terminal output screen window.
-@item ws
-Number: the width of the status line.
-@item xb
-Flag: superbee terminal.
-@item xn
-Flag: cursor wraps in a strange way.
-@item xs
-Flag: clearing a line is the only way to clear the appearance modes of
-positions in that line (or, only way to remove magic cookies on that
-line).
-@item xt
-Flag: Teleray 1061; several strange characteristics.
-@end table
-
-@node Var Index, Cap Index, Summary, Top
-@unnumbered Variable and Function Index
-
-@printindex fn
-
-@node Cap Index, Index, Var Index, Top
-@unnumbered Capability Index
-
-@printindex ky
-
-@node Index,  , Cap Index, Top
-@unnumbered Concept Index
-
-@printindex cp
-
-@contents
-@bye
diff --git a/lib/termcap/grot/texinfo.tex b/lib/termcap/grot/texinfo.tex
deleted file mode 100644 (file)
index f62e9f5..0000000
+++ /dev/null
@@ -1,4422 +0,0 @@
-%% TeX macros to handle texinfo files
-
-%   Copyright (C) 1985, 86, 88, 90, 91, 92, 93, 1994 Free Software Foundation, Inc.
-
-%This texinfo.tex file is free software; you can redistribute it and/or
-%modify it under the terms of the GNU General Public License as
-%published by the Free Software Foundation; either version 2, or (at
-%your option) any later version.
-
-%This texinfo.tex file 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
-%General Public License for more details.
-
-%You should have received a copy of the GNU General Public License
-%along with this texinfo.tex file; see the file COPYING.  If not, write
-%to the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139,
-%USA.
-
-
-%In other words, you are welcome to use, share and improve this program.
-%You are forbidden to forbid anyone else to use, share and improve
-%what you give them.   Help stamp out software-hoarding!
-
-
-% Send bug reports to bug-texinfo@prep.ai.mit.edu.
-% Please include a *precise* test case in each bug report.
-
-
-% Make it possible to create a .fmt file just by loading this file:
-% if the underlying format is not loaded, start by loading it now.
-% Added by gildea November 1993.
-\expandafter\ifx\csname fmtname\endcsname\relax\input plain\fi
-
-% This automatically updates the version number based on RCS.
-\def\deftexinfoversion$#1: #2 ${\def\texinfoversion{#2}}
-\deftexinfoversion$Revision: 2.146 $
-\message{Loading texinfo package [Version \texinfoversion]:}
-
-% If in a .fmt file, print the version number
-% and turn on active characters that we couldn't do earlier because
-% they might have appeared in the input file name.
-\everyjob{\message{[Texinfo version \texinfoversion]}\message{}
-  \catcode`+=\active \catcode`\_=\active}
-
-% Save some parts of plain tex whose names we will redefine.
-
-\let\ptextilde=\~
-\let\ptexlbrace=\{
-\let\ptexrbrace=\}
-\let\ptexdots=\dots
-\let\ptexdot=\.
-\let\ptexstar=\*
-\let\ptexend=\end
-\let\ptexbullet=\bullet
-\let\ptexb=\b
-\let\ptexc=\c
-\let\ptexi=\i
-\let\ptext=\t
-\let\ptexl=\l
-\let\ptexL=\L
-
-% Be sure we're in horizontal mode when doing a tie, since we make space
-% equivalent to this in @example-like environments. Otherwise, a space
-% at the beginning of a line will start with \penalty -- and
-% since \penalty is valid in vertical mode, we'd end up putting the
-% penalty on the vertical list instead of in the new paragraph.
-{\catcode`@ = 11
- \gdef\tie{\leavevmode\penalty\@M\ }
-}
-\let\~ = \tie                  % And make it available as @~.
-
-\message{Basics,}
-\chardef\other=12
-
-% If this character appears in an error message or help string, it
-% starts a new line in the output.
-\newlinechar = `^^J
-
-% Set up fixed words for English.
-\ifx\putwordChapter\undefined{\gdef\putwordChapter{Chapter}}\fi%
-\def\putwordInfo{Info}%
-\ifx\putwordSee\undefined{\gdef\putwordSee{See}}\fi%
-\ifx\putwordsee\undefined{\gdef\putwordsee{see}}\fi%
-\ifx\putwordfile\undefined{\gdef\putwordfile{file}}\fi%
-\ifx\putwordpage\undefined{\gdef\putwordpage{page}}\fi%
-\ifx\putwordsection\undefined{\gdef\putwordsection{section}}\fi%
-\ifx\putwordSection\undefined{\gdef\putwordSection{Section}}\fi%
-\ifx\putwordTableofContents\undefined{\gdef\putwordTableofContents{Table of Contents}}\fi%
-\ifx\putwordShortContents\undefined{\gdef\putwordShortContents{Short Contents}}\fi%
-\ifx\putwordAppendix\undefined{\gdef\putwordAppendix{Appendix}}\fi%
-
-% Ignore a token.
-%
-\def\gobble#1{}
-
-\hyphenation{ap-pen-dix}
-\hyphenation{mini-buf-fer mini-buf-fers}
-\hyphenation{eshell}
-
-% Margin to add to right of even pages, to left of odd pages.
-\newdimen \bindingoffset  \bindingoffset=0pt
-\newdimen \normaloffset   \normaloffset=\hoffset
-\newdimen\pagewidth \newdimen\pageheight
-\pagewidth=\hsize \pageheight=\vsize
-
-% Sometimes it is convenient to have everything in the transcript file
-% and nothing on the terminal.  We don't just call \tracingall here,
-% since that produces some useless output on the terminal.
-%
-\def\gloggingall{\begingroup \globaldefs = 1 \loggingall \endgroup}%
-\def\loggingall{\tracingcommands2 \tracingstats2
-   \tracingpages1 \tracingoutput1 \tracinglostchars1
-   \tracingmacros2 \tracingparagraphs1 \tracingrestores1
-   \showboxbreadth\maxdimen\showboxdepth\maxdimen
-}%
-
-%---------------------Begin change-----------------------
-%
-%%%% For @cropmarks command.
-% Dimensions to add cropmarks at corners Added by P. A. MacKay, 12 Nov. 1986
-%
-\newdimen\cornerlong \newdimen\cornerthick
-\newdimen \topandbottommargin
-\newdimen \outerhsize \newdimen \outervsize
-\cornerlong=1pc\cornerthick=.3pt       % These set size of cropmarks
-\outerhsize=7in
-%\outervsize=9.5in
-% Alternative @smallbook page size is 9.25in
-\outervsize=9.25in
-\topandbottommargin=.75in
-%
-%---------------------End change-----------------------
-
-% \onepageout takes a vbox as an argument.  Note that \pagecontents
-% does insertions itself, but you have to call it yourself.
-\chardef\PAGE=255  \output={\onepageout{\pagecontents\PAGE}}
-\def\onepageout#1{\hoffset=\normaloffset
-\ifodd\pageno  \advance\hoffset by \bindingoffset
-\else \advance\hoffset by -\bindingoffset\fi
-{\escapechar=`\\\relax % makes sure backslash is used in output files.
-\shipout\vbox{{\let\hsize=\pagewidth \makeheadline} \pagebody{#1}%
-{\let\hsize=\pagewidth \makefootline}}}%
-\advancepageno \ifnum\outputpenalty>-20000 \else\dosupereject\fi}
-
-%%%% For @cropmarks command %%%%
-
-% Here is a modification of the main output routine for Near East Publications
-% This provides right-angle cropmarks at all four corners.
-% The contents of the page are centerlined into the cropmarks,
-% and any desired binding offset is added as an \hskip on either
-% site of the centerlined box.  (P. A. MacKay, 12 November, 1986)
-%
-\def\croppageout#1{\hoffset=0pt % make sure this doesn't mess things up
-{\escapechar=`\\\relax % makes sure backslash is used in output files.
-                \shipout
-                \vbox to \outervsize{\hsize=\outerhsize
-                 \vbox{\line{\ewtop\hfill\ewtop}}
-                 \nointerlineskip
-                 \line{\vbox{\moveleft\cornerthick\nstop}
-                       \hfill
-                       \vbox{\moveright\cornerthick\nstop}}
-                 \vskip \topandbottommargin
-                 \centerline{\ifodd\pageno\hskip\bindingoffset\fi
-                       \vbox{
-                       {\let\hsize=\pagewidth \makeheadline}
-                       \pagebody{#1}
-                       {\let\hsize=\pagewidth \makefootline}}
-                       \ifodd\pageno\else\hskip\bindingoffset\fi}
-                \vskip \topandbottommargin plus1fill minus1fill
-                 \boxmaxdepth\cornerthick
-                 \line{\vbox{\moveleft\cornerthick\nsbot}
-                       \hfill
-                       \vbox{\moveright\cornerthick\nsbot}}
-                 \nointerlineskip
-                 \vbox{\line{\ewbot\hfill\ewbot}}
-       }}
-  \advancepageno
-  \ifnum\outputpenalty>-20000 \else\dosupereject\fi}
-%
-% Do @cropmarks to get crop marks
-\def\cropmarks{\let\onepageout=\croppageout }
-
-\newinsert\margin \dimen\margin=\maxdimen
-
-\def\pagebody#1{\vbox to\pageheight{\boxmaxdepth=\maxdepth #1}}
-{\catcode`\@ =11
-\gdef\pagecontents#1{\ifvoid\topins\else\unvbox\topins\fi
-% marginal hacks, juha@viisa.uucp (Juha Takala)
-\ifvoid\margin\else % marginal info is present
-  \rlap{\kern\hsize\vbox to\z@{\kern1pt\box\margin \vss}}\fi
-\dimen@=\dp#1 \unvbox#1
-\ifvoid\footins\else\vskip\skip\footins\footnoterule \unvbox\footins\fi
-\ifr@ggedbottom \kern-\dimen@ \vfil \fi}
-}
-
-%
-% Here are the rules for the cropmarks.  Note that they are
-% offset so that the space between them is truly \outerhsize or \outervsize
-% (P. A. MacKay, 12 November, 1986)
-%
-\def\ewtop{\vrule height\cornerthick depth0pt width\cornerlong}
-\def\nstop{\vbox
-  {\hrule height\cornerthick depth\cornerlong width\cornerthick}}
-\def\ewbot{\vrule height0pt depth\cornerthick width\cornerlong}
-\def\nsbot{\vbox
-  {\hrule height\cornerlong depth\cornerthick width\cornerthick}}
-
-% Parse an argument, then pass it to #1.  The argument is the rest of
-% the input line (except we remove a trailing comment).  #1 should be a
-% macro which expects an ordinary undelimited TeX argument.
-%
-\def\parsearg#1{%
-  \let\next = #1%
-  \begingroup
-    \obeylines
-    \futurelet\temp\parseargx
-}
-
-% If the next token is an obeyed space (from an @example environment or
-% the like), remove it and recurse.  Otherwise, we're done.
-\def\parseargx{%
-  % \obeyedspace is defined far below, after the definition of \sepspaces.
-  \ifx\obeyedspace\temp
-    \expandafter\parseargdiscardspace
-  \else
-    \expandafter\parseargline
-  \fi
-}
-
-% Remove a single space (as the delimiter token to the macro call).
-{\obeyspaces %
- \gdef\parseargdiscardspace {\futurelet\temp\parseargx}}
-
-{\obeylines %
-  \gdef\parseargline#1^^M{%
-    \endgroup % End of the group started in \parsearg.
-    %
-    % First remove any @c comment, then any @comment.
-    % Result of each macro is put in \toks0.
-    \argremovec #1\c\relax %
-    \expandafter\argremovecomment \the\toks0 \comment\relax %
-    %
-    % Call the caller's macro, saved as \next in \parsearg.
-    \expandafter\next\expandafter{\the\toks0}%
-  }%
-}
-
-% Since all \c{,omment} does is throw away the argument, we can let TeX
-% do that for us.  The \relax here is matched by the \relax in the call
-% in \parseargline; it could be more or less anything, its purpose is
-% just to delimit the argument to the \c.
-\def\argremovec#1\c#2\relax{\toks0 = {#1}}
-\def\argremovecomment#1\comment#2\relax{\toks0 = {#1}}
-
-% \argremovec{,omment} might leave us with trailing spaces, though; e.g.,
-%    @end itemize  @c foo
-% will have two active spaces as part of the argument with the
-% `itemize'.  Here we remove all active spaces from #1, and assign the
-% result to \toks0.
-%
-% This loses if there are any *other* active characters besides spaces
-% in the argument -- _ ^ +, for example -- since they get expanded.
-% Fortunately, Texinfo does not define any such commands.  (If it ever
-% does, the catcode of the characters in questionwill have to be changed
-% here.)  But this means we cannot call \removeactivespaces as part of
-% \argremovec{,omment}, since @c uses \parsearg, and thus the argument
-% that \parsearg gets might well have any character at all in it.
-%
-\def\removeactivespaces#1{%
-  \begingroup
-    \ignoreactivespaces
-    \edef\temp{#1}%
-    \global\toks0 = \expandafter{\temp}%
-  \endgroup
-}
-
-% Change the active space to expand to nothing.
-%
-\begingroup
-  \obeyspaces
-  \gdef\ignoreactivespaces{\obeyspaces\let =\empty}
-\endgroup
-
-
-\def\flushcr{\ifx\par\lisppar \def\next##1{}\else \let\next=\relax \fi \next}
-
-%% These are used to keep @begin/@end levels from running away
-%% Call \inENV within environments (after a \begingroup)
-\newif\ifENV \ENVfalse \def\inENV{\ifENV\relax\else\ENVtrue\fi}
-\def\ENVcheck{%
-\ifENV\errmessage{Still within an environment.  Type Return to continue.}
-\endgroup\fi} % This is not perfect, but it should reduce lossage
-
-% @begin foo  is the same as @foo, for now.
-\newhelp\EMsimple{Type <Return> to continue.}
-
-\outer\def\begin{\parsearg\beginxxx}
-
-\def\beginxxx #1{%
-\expandafter\ifx\csname #1\endcsname\relax
-{\errhelp=\EMsimple \errmessage{Undefined command @begin #1}}\else
-\csname #1\endcsname\fi}
-
-% @end foo executes the definition of \Efoo.
-%
-\def\end{\parsearg\endxxx}
-\def\endxxx #1{%
-  \removeactivespaces{#1}%
-  \edef\endthing{\the\toks0}%
-  %
-  \expandafter\ifx\csname E\endthing\endcsname\relax
-    \expandafter\ifx\csname \endthing\endcsname\relax
-      % There's no \foo, i.e., no ``environment'' foo.
-      \errhelp = \EMsimple
-      \errmessage{Undefined command `@end \endthing'}%
-    \else
-      \unmatchedenderror\endthing
-    \fi
-  \else
-    % Everything's ok; the right environment has been started.
-    \csname E\endthing\endcsname
-  \fi
-}
-
-% There is an environment #1, but it hasn't been started.  Give an error.
-%
-\def\unmatchedenderror#1{%
-  \errhelp = \EMsimple
-  \errmessage{This `@end #1' doesn't have a matching `@#1'}%
-}
-
-% Define the control sequence \E#1 to give an unmatched @end error.
-%
-\def\defineunmatchedend#1{%
-  \expandafter\def\csname E#1\endcsname{\unmatchedenderror{#1}}%
-}
-
-
-% Single-spacing is done by various environments (specifically, in
-% \nonfillstart and \quotations).
-\newskip\singlespaceskip \singlespaceskip = 12.5pt
-\def\singlespace{%
-  % Why was this kern here?  It messes up equalizing space above and below
-  % environments.  --karl, 6may93
-  %{\advance \baselineskip by -\singlespaceskip
-  %\kern \baselineskip}%
-  \setleading \singlespaceskip
-}
-
-%% Simple single-character @ commands
-
-% @@ prints an @
-% Kludge this until the fonts are right (grr).
-\def\@{{\tt \char '100}}
-
-% This is turned off because it was never documented
-% and you can use @w{...} around a quote to suppress ligatures.
-%% Define @` and @' to be the same as ` and '
-%% but suppressing ligatures.
-%\def\`{{`}}
-%\def\'{{'}}
-
-% Used to generate quoted braces.
-
-\def\mylbrace {{\tt \char '173}}
-\def\myrbrace {{\tt \char '175}}
-\let\{=\mylbrace
-\let\}=\myrbrace
-
-% @: forces normal size whitespace following.
-\def\:{\spacefactor=1000 }
-
-% @* forces a line break.
-\def\*{\hfil\break\hbox{}\ignorespaces}
-
-% @. is an end-of-sentence period.
-\def\.{.\spacefactor=3000 }
-
-% @enddots{} is an end-of-sentence ellipsis.
-\gdef\enddots{$\mathinner{\ldotp\ldotp\ldotp\ldotp}$\spacefactor=3000}
-
-% @! is an end-of-sentence bang.
-\gdef\!{!\spacefactor=3000 }
-
-% @? is an end-of-sentence query.
-\gdef\?{?\spacefactor=3000 }
-
-% @w prevents a word break.  Without the \leavevmode, @w at the
-% beginning of a paragraph, when TeX is still in vertical mode, would
-% produce a whole line of output instead of starting the paragraph.
-\def\w#1{\leavevmode\hbox{#1}}
-
-% @group ... @end group forces ... to be all on one page, by enclosing
-% it in a TeX vbox.  We use \vtop instead of \vbox to construct the box
-% to keep its height that of a normal line.  According to the rules for
-% \topskip (p.114 of the TeXbook), the glue inserted is
-% max (\topskip - \ht (first item), 0).  If that height is large,
-% therefore, no glue is inserted, and the space between the headline and
-% the text is small, which looks bad.
-%
-\def\group{\begingroup
-  \ifnum\catcode13=\active \else
-    \errhelp = \groupinvalidhelp
-    \errmessage{@group invalid in context where filling is enabled}%
-  \fi
-  %
-  % The \vtop we start below produces a box with normal height and large
-  % depth; thus, TeX puts \baselineskip glue before it, and (when the
-  % next line of text is done) \lineskip glue after it.  (See p.82 of
-  % the TeXbook.)  Thus, space below is not quite equal to space
-  % above.  But it's pretty close.
-  \def\Egroup{%
-    \egroup           % End the \vtop.
-    \endgroup         % End the \group.
-  }%
-  %
-  \vtop\bgroup
-    % We have to put a strut on the last line in case the @group is in
-    % the midst of an example, rather than completely enclosing it.
-    % Otherwise, the interline space between the last line of the group
-    % and the first line afterwards is too small.  But we can't put the
-    % strut in \Egroup, since there it would be on a line by itself.
-    % Hence this just inserts a strut at the beginning of each line.
-    \everypar = {\strut}%
-    %
-    % Since we have a strut on every line, we don't need any of TeX's
-    % normal interline spacing.
-    \offinterlineskip
-    %
-    % OK, but now we have to do something about blank
-    % lines in the input in @example-like environments, which normally
-    % just turn into \lisppar, which will insert no space now that we've
-    % turned off the interline space.  Simplest is to make them be an
-    % empty paragraph.
-    \ifx\par\lisppar
-      \edef\par{\leavevmode \par}%
-      %
-      % Reset ^^M's definition to new definition of \par.
-      \obeylines
-    \fi
-    %
-    % Do @comment since we are called inside an environment such as
-    % @example, where each end-of-line in the input causes an
-    % end-of-line in the output.  We don't want the end-of-line after
-    % the `@group' to put extra space in the output.  Since @group
-    % should appear on a line by itself (according to the Texinfo
-    % manual), we don't worry about eating any user text.
-    \comment
-}
-%
-% TeX puts in an \escapechar (i.e., `@') at the beginning of the help
-% message, so this ends up printing `@group can only ...'.
-%
-\newhelp\groupinvalidhelp{%
-group can only be used in environments such as @example,^^J%
-where each line of input produces a line of output.}
-
-% @need space-in-mils
-% forces a page break if there is not space-in-mils remaining.
-
-\newdimen\mil  \mil=0.001in
-
-\def\need{\parsearg\needx}
-
-% Old definition--didn't work.
-%\def\needx #1{\par %
-%% This method tries to make TeX break the page naturally
-%% if the depth of the box does not fit.
-%{\baselineskip=0pt%
-%\vtop to #1\mil{\vfil}\kern -#1\mil\penalty 10000
-%\prevdepth=-1000pt
-%}}
-
-\def\needx#1{%
-  % Go into vertical mode, so we don't make a big box in the middle of a
-  % paragraph.
-  \par
-  %
-  % Don't add any leading before our big empty box, but allow a page
-  % break, since the best break might be right here.
-  \allowbreak
-  \nointerlineskip
-  \vtop to #1\mil{\vfil}%
-  %
-  % TeX does not even consider page breaks if a penalty added to the
-  % main vertical list is 10000 or more.  But in order to see if the
-  % empty box we just added fits on the page, we must make it consider
-  % page breaks.  On the other hand, we don't want to actually break the
-  % page after the empty box.  So we use a penalty of 9999.
-  %
-  % There is an extremely small chance that TeX will actually break the
-  % page at this \penalty, if there are no other feasible breakpoints in
-  % sight.  (If the user is using lots of big @group commands, which
-  % almost-but-not-quite fill up a page, TeX will have a hard time doing
-  % good page breaking, for example.)  However, I could not construct an
-  % example where a page broke at this \penalty; if it happens in a real
-  % document, then we can reconsider our strategy.
-  \penalty9999
-  %
-  % Back up by the size of the box, whether we did a page break or not.
-  \kern -#1\mil
-  %
-  % Do not allow a page break right after this kern.
-  \nobreak
-}
-
-% @br   forces paragraph break
-
-\let\br = \par
-
-% @dots{}  output some dots
-
-\def\dots{$\ldots$}
-
-% @page    forces the start of a new page
-
-\def\page{\par\vfill\supereject}
-
-% @exdent text....
-% outputs text on separate line in roman font, starting at standard page margin
-
-% This records the amount of indent in the innermost environment.
-% That's how much \exdent should take out.
-\newskip\exdentamount
-
-% This defn is used inside fill environments such as @defun.
-\def\exdent{\parsearg\exdentyyy}
-\def\exdentyyy #1{{\hfil\break\hbox{\kern -\exdentamount{\rm#1}}\hfil\break}}
-
-% This defn is used inside nofill environments such as @example.
-\def\nofillexdent{\parsearg\nofillexdentyyy}
-\def\nofillexdentyyy #1{{\advance \leftskip by -\exdentamount
-\leftline{\hskip\leftskip{\rm#1}}}}
-
-%\hbox{{\rm#1}}\hfil\break}}
-
-% @include file    insert text of that file as input.
-
-\def\include{\parsearg\includezzz}
-%Use \input\thisfile to avoid blank after \input, which may be an active
-%char (in which case the blank would become the \input argument).
-%The grouping keeps the value of \thisfile correct even when @include
-%is nested.
-\def\includezzz #1{\begingroup
-\def\thisfile{#1}\input\thisfile
-\endgroup}
-
-\def\thisfile{}
-
-% @center line   outputs that line, centered
-
-\def\center{\parsearg\centerzzz}
-\def\centerzzz #1{{\advance\hsize by -\leftskip
-\advance\hsize by -\rightskip
-\centerline{#1}}}
-
-% @sp n   outputs n lines of vertical space
-
-\def\sp{\parsearg\spxxx}
-\def\spxxx #1{\par \vskip #1\baselineskip}
-
-% @comment ...line which is ignored...
-% @c is the same as @comment
-% @ignore ... @end ignore  is another way to write a comment
-
-\def\comment{\catcode 64=\other \catcode 123=\other \catcode 125=\other%
-\parsearg \commentxxx}
-
-\def\commentxxx #1{\catcode 64=0 \catcode 123=1 \catcode 125=2 }
-
-\let\c=\comment
-
-% Prevent errors for section commands.
-% Used in @ignore and in failing conditionals.
-\def\ignoresections{%
-\let\chapter=\relax
-\let\unnumbered=\relax
-\let\top=\relax
-\let\unnumberedsec=\relax
-\let\unnumberedsection=\relax
-\let\unnumberedsubsec=\relax
-\let\unnumberedsubsection=\relax
-\let\unnumberedsubsubsec=\relax
-\let\unnumberedsubsubsection=\relax
-\let\section=\relax
-\let\subsec=\relax
-\let\subsubsec=\relax
-\let\subsection=\relax
-\let\subsubsection=\relax
-\let\appendix=\relax
-\let\appendixsec=\relax
-\let\appendixsection=\relax
-\let\appendixsubsec=\relax
-\let\appendixsubsection=\relax
-\let\appendixsubsubsec=\relax
-\let\appendixsubsubsection=\relax
-\let\contents=\relax
-\let\smallbook=\relax
-\let\titlepage=\relax
-}
-
-% Used in nested conditionals, where we have to parse the Texinfo source
-% and so want to turn off most commands, in case they are used
-% incorrectly.
-%
-\def\ignoremorecommands{%
-  \let\defcv = \relax
-  \let\deffn = \relax
-  \let\deffnx = \relax
-  \let\defindex = \relax
-  \let\defivar = \relax
-  \let\defmac = \relax
-  \let\defmethod = \relax
-  \let\defop = \relax
-  \let\defopt = \relax
-  \let\defspec = \relax
-  \let\deftp = \relax
-  \let\deftypefn = \relax
-  \let\deftypefun = \relax
-  \let\deftypevar = \relax
-  \let\deftypevr = \relax
-  \let\defun = \relax
-  \let\defvar = \relax
-  \let\defvr = \relax
-  \let\ref = \relax
-  \let\xref = \relax
-  \let\printindex = \relax
-  \let\pxref = \relax
-  \let\settitle = \relax
-  \let\include = \relax
-  \let\lowersections = \relax
-  \let\down = \relax
-  \let\raisesections = \relax
-  \let\up = \relax
-  \let\set = \relax
-  \let\clear = \relax
-  \let\item = \relax
-  \let\message = \relax
-}
-
-% Ignore @ignore ... @end ignore.
-%
-\def\ignore{\doignore{ignore}}
-
-% Also ignore @ifinfo, @ifhtml, @html, @menu, and @direntry text.
-%
-\def\ifinfo{\doignore{ifinfo}}
-\def\ifhtml{\doignore{ifhtml}}
-\def\html{\doignore{html}}
-\def\menu{\doignore{menu}}
-\def\direntry{\doignore{direntry}}
-
-% Ignore text until a line `@end #1'.
-%
-\def\doignore#1{\begingroup
-  % Don't complain about control sequences we have declared \outer.
-  \ignoresections
-  %
-  % Define a command to swallow text until we reach `@end #1'.
-  \long\def\doignoretext##1\end #1{\enddoignore}%
-  %
-  % Make sure that spaces turn into tokens that match what \doignoretext wants.
-  \catcode32 = 10
-  %
-  % And now expand that command.
-  \doignoretext
-}
-
-% What we do to finish off ignored text.
-%
-\def\enddoignore{\endgroup\ignorespaces}%
-
-\newif\ifwarnedobs\warnedobsfalse
-\def\obstexwarn{%
-  \ifwarnedobs\relax\else
-  % We need to warn folks that they may have trouble with TeX 3.0.
-  % This uses \immediate\write16 rather than \message to get newlines.
-    \immediate\write16{}
-    \immediate\write16{***WARNING*** for users of Unix TeX 3.0!}
-    \immediate\write16{This manual trips a bug in TeX version 3.0 (tex hangs).}
-    \immediate\write16{If you are running another version of TeX, relax.}
-    \immediate\write16{If you are running Unix TeX 3.0, kill this TeX process.}
-    \immediate\write16{  Then upgrade your TeX installation if you can.}
-    \immediate\write16{If you are stuck with version 3.0, run the}
-    \immediate\write16{  script ``tex3patch'' from the Texinfo distribution}
-    \immediate\write16{  to use a workaround.}
-    \immediate\write16{}
-    \warnedobstrue
-    \fi
-}
-
-% **In TeX 3.0, setting text in \nullfont hangs tex.  For a
-% workaround (which requires the file ``dummy.tfm'' to be installed),
-% uncomment the following line:
-%%%%%\font\nullfont=dummy\let\obstexwarn=\relax
-
-% Ignore text, except that we keep track of conditional commands for
-% purposes of nesting, up to an `@end #1' command.
-%
-\def\nestedignore#1{%
-  \obstexwarn
-  % We must actually expand the ignored text to look for the @end
-  % command, so that nested ignore constructs work.  Thus, we put the
-  % text into a \vbox and then do nothing with the result.  To minimize
-  % the change of memory overflow, we follow the approach outlined on
-  % page 401 of the TeXbook: make the current font be a dummy font.
-  %
-  \setbox0 = \vbox\bgroup
-    % Don't complain about control sequences we have declared \outer.
-    \ignoresections
-    %
-    % Define `@end #1' to end the box, which will in turn undefine the
-    % @end command again.
-    \expandafter\def\csname E#1\endcsname{\egroup\ignorespaces}%
-    %
-    % We are going to be parsing Texinfo commands.  Most cause no
-    % trouble when they are used incorrectly, but some commands do
-    % complicated argument parsing or otherwise get confused, so we
-    % undefine them.
-    %
-    % We can't do anything about stray @-signs, unfortunately;
-    % they'll produce `undefined control sequence' errors.
-    \ignoremorecommands
-    %
-    % Set the current font to be \nullfont, a TeX primitive, and define
-    % all the font commands to also use \nullfont.  We don't use
-    % dummy.tfm, as suggested in the TeXbook, because not all sites
-    % might have that installed.  Therefore, math mode will still
-    % produce output, but that should be an extremely small amount of
-    % stuff compared to the main input.
-    %
-    \nullfont
-    \let\tenrm = \nullfont  \let\tenit = \nullfont  \let\tensl = \nullfont
-    \let\tenbf = \nullfont  \let\tentt = \nullfont  \let\smallcaps = \nullfont
-    \let\tensf = \nullfont
-    % Similarly for index fonts (mostly for their use in
-    % smallexample)
-    \let\indrm = \nullfont  \let\indit = \nullfont  \let\indsl = \nullfont
-    \let\indbf = \nullfont  \let\indtt = \nullfont  \let\indsc = \nullfont
-    \let\indsf = \nullfont
-    %
-    % Don't complain when characters are missing from the fonts.
-    \tracinglostchars = 0
-    %
-    % Don't bother to do space factor calculations.
-    \frenchspacing
-    %
-    % Don't report underfull hboxes.
-    \hbadness = 10000
-    %
-    % Do minimal line-breaking.
-    \pretolerance = 10000
-    %
-    % Do not execute instructions in @tex
-    \def\tex{\doignore{tex}}
-}
-
-% @set VAR sets the variable VAR to an empty value.
-% @set VAR REST-OF-LINE sets VAR to the value REST-OF-LINE.
-%
-% Since we want to separate VAR from REST-OF-LINE (which might be
-% empty), we can't just use \parsearg; we have to insert a space of our
-% own to delimit the rest of the line, and then take it out again if we
-% didn't need it.
-%
-\def\set{\parsearg\setxxx}
-\def\setxxx#1{\setyyy#1 \endsetyyy}
-\def\setyyy#1 #2\endsetyyy{%
-  \def\temp{#2}%
-  \ifx\temp\empty \global\expandafter\let\csname SET#1\endcsname = \empty
-  \else \setzzz{#1}#2\endsetzzz % Remove the trailing space \setxxx inserted.
-  \fi
-}
-% Can't use \xdef to pre-expand #2 and save some time, since \temp or
-% \next or other control sequences that we've defined might get us into
-% an infinite loop. Consider `@set foo @cite{bar}'.
-\def\setzzz#1#2 \endsetzzz{\expandafter\gdef\csname SET#1\endcsname{#2}}
-
-% @clear VAR clears (i.e., unsets) the variable VAR.
-%
-\def\clear{\parsearg\clearxxx}
-\def\clearxxx#1{\global\expandafter\let\csname SET#1\endcsname=\relax}
-
-% @value{foo} gets the text saved in variable foo.
-%
-\def\value#1{\expandafter
-               \ifx\csname SET#1\endcsname\relax
-                       {\{No value for ``#1''\}}
-               \else \csname SET#1\endcsname \fi}
-
-% @ifset VAR ... @end ifset reads the `...' iff VAR has been defined
-% with @set.
-%
-\def\ifset{\parsearg\ifsetxxx}
-\def\ifsetxxx #1{%
-  \expandafter\ifx\csname SET#1\endcsname\relax
-    \expandafter\ifsetfail
-  \else
-    \expandafter\ifsetsucceed
-  \fi
-}
-\def\ifsetsucceed{\conditionalsucceed{ifset}}
-\def\ifsetfail{\nestedignore{ifset}}
-\defineunmatchedend{ifset}
-
-% @ifclear VAR ... @end ifclear reads the `...' iff VAR has never been
-% defined with @set, or has been undefined with @clear.
-%
-\def\ifclear{\parsearg\ifclearxxx}
-\def\ifclearxxx #1{%
-  \expandafter\ifx\csname SET#1\endcsname\relax
-    \expandafter\ifclearsucceed
-  \else
-    \expandafter\ifclearfail
-  \fi
-}
-\def\ifclearsucceed{\conditionalsucceed{ifclear}}
-\def\ifclearfail{\nestedignore{ifclear}}
-\defineunmatchedend{ifclear}
-
-% @iftex always succeeds; we read the text following, through @end
-% iftex).  But `@end iftex' should be valid only after an @iftex.
-%
-\def\iftex{\conditionalsucceed{iftex}}
-\defineunmatchedend{iftex}
-
-% We can't just want to start a group at @iftex (for example) and end it
-% at @end iftex, since then @set commands inside the conditional have no
-% effect (they'd get reverted at the end of the group).  So we must
-% define \Eiftex to redefine itself to be its previous value.  (We can't
-% just define it to fail again with an ``unmatched end'' error, since
-% the @ifset might be nested.)
-%
-\def\conditionalsucceed#1{%
-  \edef\temp{%
-    % Remember the current value of \E#1.
-    \let\nece{prevE#1} = \nece{E#1}%
-    %
-    % At the `@end #1', redefine \E#1 to be its previous value.
-    \def\nece{E#1}{\let\nece{E#1} = \nece{prevE#1}}%
-  }%
-  \temp
-}
-
-% We need to expand lots of \csname's, but we don't want to expand the
-% control sequences after we've constructed them.
-%
-\def\nece#1{\expandafter\noexpand\csname#1\endcsname}
-
-% @asis just yields its argument.  Used with @table, for example.
-%
-\def\asis#1{#1}
-
-% @math means output in math mode.
-% We don't use $'s directly in the definition of \math because control
-% sequences like \math are expanded when the toc file is written.  Then,
-% we read the toc file back, the $'s will be normal characters (as they
-% should be, according to the definition of Texinfo).  So we must use a
-% control sequence to switch into and out of math mode.
-%
-% This isn't quite enough for @math to work properly in indices, but it
-% seems unlikely it will ever be needed there.
-%
-\let\implicitmath = $
-\def\math#1{\implicitmath #1\implicitmath}
-
-% @bullet and @minus need the same treatment as @math, just above.
-\def\bullet{\implicitmath\ptexbullet\implicitmath}
-\def\minus{\implicitmath-\implicitmath}
-
-\def\node{\ENVcheck\parsearg\nodezzz}
-\def\nodezzz#1{\nodexxx [#1,]}
-\def\nodexxx[#1,#2]{\gdef\lastnode{#1}}
-\let\nwnode=\node
-\let\lastnode=\relax
-
-\def\donoderef{\ifx\lastnode\relax\else
-\expandafter\expandafter\expandafter\setref{\lastnode}\fi
-\global\let\lastnode=\relax}
-
-\def\unnumbnoderef{\ifx\lastnode\relax\else
-\expandafter\expandafter\expandafter\unnumbsetref{\lastnode}\fi
-\global\let\lastnode=\relax}
-
-\def\appendixnoderef{\ifx\lastnode\relax\else
-\expandafter\expandafter\expandafter\appendixsetref{\lastnode}\fi
-\global\let\lastnode=\relax}
-
-\let\refill=\relax
-
-% @setfilename is done at the beginning of every texinfo file.
-% So open here the files we need to have open while reading the input.
-% This makes it possible to make a .fmt file for texinfo.
-\def\setfilename{%
-   \readauxfile
-   \opencontents
-   \openindices
-   \fixbackslash  % Turn off hack to swallow `\input texinfo'.
-   \global\let\setfilename=\comment % Ignore extra @setfilename cmds.
-   \comment % Ignore the actual filename.
-}
-
-\outer\def\bye{\pagealignmacro\tracingstats=1\ptexend}
-
-\def\inforef #1{\inforefzzz #1,,,,**}
-\def\inforefzzz #1,#2,#3,#4**{\putwordSee{} \putwordInfo{} \putwordfile{} \file{\ignorespaces #3{}},
-  node \samp{\ignorespaces#1{}}}
-
-\message{fonts,}
-
-% Font-change commands.
-
-% Texinfo supports the sans serif font style, which plain TeX does not.
-% So we set up a \sf analogous to plain's \rm, etc.
-\newfam\sffam
-\def\sf{\fam=\sffam \tensf}
-\let\li = \sf % Sometimes we call it \li, not \sf.
-
-%% Try out Computer Modern fonts at \magstephalf
-\let\mainmagstep=\magstephalf
-
-% Set the font macro #1 to the font named #2, adding on the
-% specified font prefix (normally `cm').
-\def\setfont#1#2{\font#1=\fontprefix#2}
-
-% Use cm as the default font prefix.
-% To specify the font prefix, you must define \fontprefix
-% before you read in texinfo.tex.
-\ifx\fontprefix\undefined
-\def\fontprefix{cm}
-\fi
-
-\ifx\bigger\relax
-\let\mainmagstep=\magstep1
-\setfont\textrm{r12}
-\setfont\texttt{tt12}
-\else
-\setfont\textrm{r10 scaled \mainmagstep}
-\setfont\texttt{tt10 scaled \mainmagstep}
-\fi
-% Instead of cmb10, you many want to use cmbx10.
-% cmbx10 is a prettier font on its own, but cmb10
-% looks better when embedded in a line with cmr10.
-\setfont\textbf{b10 scaled \mainmagstep}
-\setfont\textit{ti10 scaled \mainmagstep}
-\setfont\textsl{sl10 scaled \mainmagstep}
-\setfont\textsf{ss10 scaled \mainmagstep}
-\setfont\textsc{csc10 scaled \mainmagstep}
-\font\texti=cmmi10 scaled \mainmagstep
-\font\textsy=cmsy10 scaled \mainmagstep
-
-% A few fonts for @defun, etc.
-\setfont\defbf{bx10 scaled \magstep1} %was 1314
-\setfont\deftt{tt10 scaled \magstep1}
-\def\df{\let\tentt=\deftt \let\tenbf = \defbf \bf}
-
-% Fonts for indices and small examples.
-% We actually use the slanted font rather than the italic,
-% because texinfo normally uses the slanted fonts for that.
-% Do not make many font distinctions in general in the index, since they
-% aren't very useful.
-\setfont\ninett{tt9}
-\setfont\indrm{r9}
-\setfont\indit{sl9}
-\let\indsl=\indit
-\let\indtt=\ninett
-\let\indsf=\indrm
-\let\indbf=\indrm
-\setfont\indsc{csc10 at 9pt}
-\font\indi=cmmi9
-\font\indsy=cmsy9
-
-% Fonts for headings
-\setfont\chaprm{bx12 scaled \magstep2}
-\setfont\chapit{ti12 scaled \magstep2}
-\setfont\chapsl{sl12 scaled \magstep2}
-\setfont\chaptt{tt12 scaled \magstep2}
-\setfont\chapsf{ss12 scaled \magstep2}
-\let\chapbf=\chaprm
-\setfont\chapsc{csc10 scaled\magstep3}
-\font\chapi=cmmi12 scaled \magstep2
-\font\chapsy=cmsy10 scaled \magstep3
-
-\setfont\secrm{bx12 scaled \magstep1}
-\setfont\secit{ti12 scaled \magstep1}
-\setfont\secsl{sl12 scaled \magstep1}
-\setfont\sectt{tt12 scaled \magstep1}
-\setfont\secsf{ss12 scaled \magstep1}
-\setfont\secbf{bx12 scaled \magstep1}
-\setfont\secsc{csc10 scaled\magstep2}
-\font\seci=cmmi12 scaled \magstep1
-\font\secsy=cmsy10 scaled \magstep2
-
-% \setfont\ssecrm{bx10 scaled \magstep1}    % This size an font looked bad.
-% \setfont\ssecit{cmti10 scaled \magstep1}    % The letters were too crowded.
-% \setfont\ssecsl{sl10 scaled \magstep1}
-% \setfont\ssectt{tt10 scaled \magstep1}
-% \setfont\ssecsf{ss10 scaled \magstep1}
-
-%\setfont\ssecrm{b10 scaled 1315}      % Note the use of cmb rather than cmbx.
-%\setfont\ssecit{ti10 scaled 1315}     % Also, the size is a little larger than
-%\setfont\ssecsl{sl10 scaled 1315}     % being scaled magstep1.
-%\setfont\ssectt{tt10 scaled 1315}
-%\setfont\ssecsf{ss10 scaled 1315}
-
-%\let\ssecbf=\ssecrm
-
-\setfont\ssecrm{bx12 scaled \magstephalf}
-\setfont\ssecit{ti12 scaled \magstephalf}
-\setfont\ssecsl{sl12 scaled \magstephalf}
-\setfont\ssectt{tt12 scaled \magstephalf}
-\setfont\ssecsf{ss12 scaled \magstephalf}
-\setfont\ssecbf{bx12 scaled \magstephalf}
-\setfont\ssecsc{csc10 scaled \magstep1}
-\font\sseci=cmmi12 scaled \magstephalf
-\font\ssecsy=cmsy10 scaled \magstep1
-% The smallcaps and symbol fonts should actually be scaled \magstep1.5,
-% but that is not a standard magnification.
-
-% Fonts for title page:
-\setfont\titlerm{bx12 scaled \magstep3}
-\let\authorrm = \secrm
-
-% In order for the font changes to affect most math symbols and letters,
-% we have to define the \textfont of the standard families.  Since
-% texinfo doesn't allow for producing subscripts and superscripts, we
-% don't bother to reset \scriptfont and \scriptscriptfont (which would
-% also require loading a lot more fonts).
-%
-\def\resetmathfonts{%
-  \textfont0 = \tenrm \textfont1 = \teni \textfont2 = \tensy
-  \textfont\itfam = \tenit \textfont\slfam = \tensl \textfont\bffam = \tenbf
-  \textfont\ttfam = \tentt \textfont\sffam = \tensf
-}
-
-
-% The font-changing commands redefine the meanings of \tenSTYLE, instead
-% of just \STYLE.  We do this so that font changes will continue to work
-% in math mode, where it is the current \fam that is relevant in most
-% cases, not the current.  Plain TeX does, for example,
-% \def\bf{\fam=\bffam \tenbf}  By redefining \tenbf, we obviate the need
-% to redefine \bf itself.
-\def\textfonts{%
-  \let\tenrm=\textrm \let\tenit=\textit \let\tensl=\textsl
-  \let\tenbf=\textbf \let\tentt=\texttt \let\smallcaps=\textsc
-  \let\tensf=\textsf \let\teni=\texti \let\tensy=\textsy
-  \resetmathfonts}
-\def\chapfonts{%
-  \let\tenrm=\chaprm \let\tenit=\chapit \let\tensl=\chapsl
-  \let\tenbf=\chapbf \let\tentt=\chaptt \let\smallcaps=\chapsc
-  \let\tensf=\chapsf \let\teni=\chapi \let\tensy=\chapsy
-  \resetmathfonts}
-\def\secfonts{%
-  \let\tenrm=\secrm \let\tenit=\secit \let\tensl=\secsl
-  \let\tenbf=\secbf \let\tentt=\sectt \let\smallcaps=\secsc
-  \let\tensf=\secsf \let\teni=\seci \let\tensy=\secsy
-  \resetmathfonts}
-\def\subsecfonts{%
-  \let\tenrm=\ssecrm \let\tenit=\ssecit \let\tensl=\ssecsl
-  \let\tenbf=\ssecbf \let\tentt=\ssectt \let\smallcaps=\ssecsc
-  \let\tensf=\ssecsf \let\teni=\sseci \let\tensy=\ssecsy
-  \resetmathfonts}
-\def\indexfonts{%
-  \let\tenrm=\indrm \let\tenit=\indit \let\tensl=\indsl
-  \let\tenbf=\indbf \let\tentt=\indtt \let\smallcaps=\indsc
-  \let\tensf=\indsf \let\teni=\indi \let\tensy=\indsy
-  \resetmathfonts}
-
-% Set up the default fonts, so we can use them for creating boxes.
-%
-\textfonts
-
-% Count depth in font-changes, for error checks
-\newcount\fontdepth \fontdepth=0
-
-% Fonts for short table of contents.
-\setfont\shortcontrm{r12}
-\setfont\shortcontbf{bx12}
-\setfont\shortcontsl{sl12}
-
-%% Add scribe-like font environments, plus @l for inline lisp (usually sans
-%% serif) and @ii for TeX italic
-
-% \smartitalic{ARG} outputs arg in italics, followed by an italic correction
-% unless the following character is such as not to need one.
-\def\smartitalicx{\ifx\next,\else\ifx\next-\else\ifx\next.\else\/\fi\fi\fi}
-\def\smartitalic#1{{\sl #1}\futurelet\next\smartitalicx}
-
-\let\i=\smartitalic
-\let\var=\smartitalic
-\let\dfn=\smartitalic
-\let\emph=\smartitalic
-\let\cite=\smartitalic
-
-\def\b#1{{\bf #1}}
-\let\strong=\b
-
-% We can't just use \exhyphenpenalty, because that only has effect at
-% the end of a paragraph.  Restore normal hyphenation at the end of the
-% group within which \nohyphenation is presumably called.
-%
-\def\nohyphenation{\hyphenchar\font = -1  \aftergroup\restorehyphenation}
-\def\restorehyphenation{\hyphenchar\font = `- }
-
-\def\t#1{%
-  {\tt \rawbackslash \frenchspacing #1}%
-  \null
-}
-\let\ttfont=\t
-\def\samp #1{`\tclose{#1}'\null}
-\def\key #1{{\tt \nohyphenation \uppercase{#1}}\null}
-\def\ctrl #1{{\tt \rawbackslash \hat}#1}
-
-\let\file=\samp
-
-% @code is a modification of @t,
-% which makes spaces the same size as normal in the surrounding text.
-\def\tclose#1{%
-  {%
-    % Change normal interword space to be same as for the current font.
-    \spaceskip = \fontdimen2\font
-    %
-    % Switch to typewriter.
-    \tt
-    %
-    % But `\ ' produces the large typewriter interword space.
-    \def\ {{\spaceskip = 0pt{} }}%
-    %
-    % Turn off hyphenation.
-    \nohyphenation
-    %
-    \rawbackslash
-    \frenchspacing
-    #1%
-  }%
-  \null
-}
-
-% We *must* turn on hyphenation at `-' and `_' in \code.
-% Otherwise, it is too hard to avoid overful hboxes
-% in the Emacs manual, the Library manual, etc.
-
-% Unfortunately, TeX uses one parameter (\hyphenchar) to control
-% both hyphenation at - and hyphenation within words.
-% We must therefore turn them both off (\tclose does that)
-% and arrange explicitly to hyphenate an a dash.
-%  -- rms.
-{
-\catcode`\-=\active
-\catcode`\_=\active
-\global\def\code{\begingroup \catcode`\-=\active \let-\codedash \catcode`\_=\active \let_\codeunder \codex}
-% The following is used by \doprintindex to insure that long function names
-% wrap around.  It is necessary for - and _ to be active before the index is
-% read from the file, as \entry parses the arguments long before \code is
-% ever called.  -- mycroft
-\global\def\indexbreaks{\catcode`\-=\active \let-\realdash \catcode`\_=\active \let_\realunder}
-}
-
-\def\realdash{-}
-\def\realunder{_}
-\def\codedash{-\discretionary{}{}{}}
-\def\codeunder{\normalunderscore\discretionary{}{}{}}
-\def\codex #1{\tclose{#1}\endgroup}
-
-%\let\exp=\tclose  %Was temporary
-
-% @kbd is like @code, except that if the argument is just one @key command,
-% then @kbd has no effect.
-
-\def\xkey{\key}
-\def\kbdfoo#1#2#3\par{\def\one{#1}\def\three{#3}\def\threex{??}%
-\ifx\one\xkey\ifx\threex\three \key{#2}%
-\else\tclose{\look}\fi
-\else\tclose{\look}\fi}
-
-% Typeset a dimension, e.g., `in' or `pt'.  The only reason for the
-% argument is to make the input look right: @dmn{pt} instead of
-% @dmn{}pt.
-%
-\def\dmn#1{\thinspace #1}
-
-\def\kbd#1{\def\look{#1}\expandafter\kbdfoo\look??\par}
-
-\def\l#1{{\li #1}\null}                %
-
-\def\r#1{{\rm #1}}             % roman font
-% Use of \lowercase was suggested.
-\def\sc#1{{\smallcaps#1}}      % smallcaps font
-\def\ii#1{{\it #1}}            % italic font
-
-\message{page headings,}
-
-\newskip\titlepagetopglue \titlepagetopglue = 1.5in
-\newskip\titlepagebottomglue \titlepagebottomglue = 2pc
-
-% First the title page.  Must do @settitle before @titlepage.
-\def\titlefont#1{{\titlerm #1}}
-
-\newif\ifseenauthor
-\newif\iffinishedtitlepage
-
-\def\shorttitlepage{\parsearg\shorttitlepagezzz}
-\def\shorttitlepagezzz #1{\begingroup\hbox{}\vskip 1.5in \chaprm \centerline{#1}%
-       \endgroup\page\hbox{}\page}
-
-\def\titlepage{\begingroup \parindent=0pt \textfonts
-   \let\subtitlerm=\tenrm
-% I deinstalled the following change because \cmr12 is undefined.
-% This change was not in the ChangeLog anyway.  --rms.
-%   \let\subtitlerm=\cmr12
-   \def\subtitlefont{\subtitlerm \normalbaselineskip = 13pt \normalbaselines}%
-   %
-   \def\authorfont{\authorrm \normalbaselineskip = 16pt \normalbaselines}%
-   %
-   % Leave some space at the very top of the page.
-   \vglue\titlepagetopglue
-   %
-   % Now you can print the title using @title.
-   \def\title{\parsearg\titlezzz}%
-   \def\titlezzz##1{\leftline{\titlefont{##1}}
-                   % print a rule at the page bottom also.
-                   \finishedtitlepagefalse
-                   \vskip4pt \hrule height 4pt width \hsize \vskip4pt}%
-   % No rule at page bottom unless we print one at the top with @title.
-   \finishedtitlepagetrue
-   %
-   % Now you can put text using @subtitle.
-   \def\subtitle{\parsearg\subtitlezzz}%
-   \def\subtitlezzz##1{{\subtitlefont \rightline{##1}}}%
-   %
-   % @author should come last, but may come many times.
-   \def\author{\parsearg\authorzzz}%
-   \def\authorzzz##1{\ifseenauthor\else\vskip 0pt plus 1filll\seenauthortrue\fi
-      {\authorfont \leftline{##1}}}%
-   %
-   % Most title ``pages'' are actually two pages long, with space
-   % at the top of the second.  We don't want the ragged left on the second.
-   \let\oldpage = \page
-   \def\page{%
-      \iffinishedtitlepage\else
-        \finishtitlepage
-      \fi
-      \oldpage
-      \let\page = \oldpage
-      \hbox{}}%
-%   \def\page{\oldpage \hbox{}}
-}
-
-\def\Etitlepage{%
-   \iffinishedtitlepage\else
-      \finishtitlepage
-   \fi
-   % It is important to do the page break before ending the group,
-   % because the headline and footline are only empty inside the group.
-   % If we use the new definition of \page, we always get a blank page
-   % after the title page, which we certainly don't want.
-   \oldpage
-   \endgroup
-   \HEADINGSon
-}
-
-\def\finishtitlepage{%
-   \vskip4pt \hrule height 2pt width \hsize
-   \vskip\titlepagebottomglue
-   \finishedtitlepagetrue
-}
-
-%%% Set up page headings and footings.
-
-\let\thispage=\folio
-
-\newtoks \evenheadline    % Token sequence for heading line of even pages
-\newtoks \oddheadline     % Token sequence for heading line of odd pages
-\newtoks \evenfootline    % Token sequence for footing line of even pages
-\newtoks \oddfootline     % Token sequence for footing line of odd pages
-
-% Now make Tex use those variables
-\headline={{\textfonts\rm \ifodd\pageno \the\oddheadline
-                            \else \the\evenheadline \fi}}
-\footline={{\textfonts\rm \ifodd\pageno \the\oddfootline
-                            \else \the\evenfootline \fi}\HEADINGShook}
-\let\HEADINGShook=\relax
-
-% Commands to set those variables.
-% For example, this is what  @headings on  does
-% @evenheading @thistitle|@thispage|@thischapter
-% @oddheading @thischapter|@thispage|@thistitle
-% @evenfooting @thisfile||
-% @oddfooting ||@thisfile
-
-\def\evenheading{\parsearg\evenheadingxxx}
-\def\oddheading{\parsearg\oddheadingxxx}
-\def\everyheading{\parsearg\everyheadingxxx}
-
-\def\evenfooting{\parsearg\evenfootingxxx}
-\def\oddfooting{\parsearg\oddfootingxxx}
-\def\everyfooting{\parsearg\everyfootingxxx}
-
-{\catcode`\@=0 %
-
-\gdef\evenheadingxxx #1{\evenheadingyyy #1@|@|@|@|\finish}
-\gdef\evenheadingyyy #1@|#2@|#3@|#4\finish{%
-\global\evenheadline={\rlap{\centerline{#2}}\line{#1\hfil#3}}}
-
-\gdef\oddheadingxxx #1{\oddheadingyyy #1@|@|@|@|\finish}
-\gdef\oddheadingyyy #1@|#2@|#3@|#4\finish{%
-\global\oddheadline={\rlap{\centerline{#2}}\line{#1\hfil#3}}}
-
-\gdef\everyheadingxxx #1{\everyheadingyyy #1@|@|@|@|\finish}
-\gdef\everyheadingyyy #1@|#2@|#3@|#4\finish{%
-\global\evenheadline={\rlap{\centerline{#2}}\line{#1\hfil#3}}
-\global\oddheadline={\rlap{\centerline{#2}}\line{#1\hfil#3}}}
-
-\gdef\evenfootingxxx #1{\evenfootingyyy #1@|@|@|@|\finish}
-\gdef\evenfootingyyy #1@|#2@|#3@|#4\finish{%
-\global\evenfootline={\rlap{\centerline{#2}}\line{#1\hfil#3}}}
-
-\gdef\oddfootingxxx #1{\oddfootingyyy #1@|@|@|@|\finish}
-\gdef\oddfootingyyy #1@|#2@|#3@|#4\finish{%
-\global\oddfootline={\rlap{\centerline{#2}}\line{#1\hfil#3}}}
-
-\gdef\everyfootingxxx #1{\everyfootingyyy #1@|@|@|@|\finish}
-\gdef\everyfootingyyy #1@|#2@|#3@|#4\finish{%
-\global\evenfootline={\rlap{\centerline{#2}}\line{#1\hfil#3}}
-\global\oddfootline={\rlap{\centerline{#2}}\line{#1\hfil#3}}}
-%
-}% unbind the catcode of @.
-
-% @headings double     turns headings on for double-sided printing.
-% @headings single     turns headings on for single-sided printing.
-% @headings off                turns them off.
-% @headings on         same as @headings double, retained for compatibility.
-% @headings after      turns on double-sided headings after this page.
-% @headings doubleafter        turns on double-sided headings after this page.
-% @headings singleafter turns on single-sided headings after this page.
-% By default, they are off.
-
-\def\headings #1 {\csname HEADINGS#1\endcsname}
-
-\def\HEADINGSoff{
-\global\evenheadline={\hfil} \global\evenfootline={\hfil}
-\global\oddheadline={\hfil} \global\oddfootline={\hfil}}
-\HEADINGSoff
-% When we turn headings on, set the page number to 1.
-% For double-sided printing, put current file name in lower left corner,
-% chapter name on inside top of right hand pages, document
-% title on inside top of left hand pages, and page numbers on outside top
-% edge of all pages.
-\def\HEADINGSdouble{
-%\pagealignmacro
-\global\pageno=1
-\global\evenfootline={\hfil}
-\global\oddfootline={\hfil}
-\global\evenheadline={\line{\folio\hfil\thistitle}}
-\global\oddheadline={\line{\thischapter\hfil\folio}}
-}
-% For single-sided printing, chapter title goes across top left of page,
-% page number on top right.
-\def\HEADINGSsingle{
-%\pagealignmacro
-\global\pageno=1
-\global\evenfootline={\hfil}
-\global\oddfootline={\hfil}
-\global\evenheadline={\line{\thischapter\hfil\folio}}
-\global\oddheadline={\line{\thischapter\hfil\folio}}
-}
-\def\HEADINGSon{\HEADINGSdouble}
-
-\def\HEADINGSafter{\let\HEADINGShook=\HEADINGSdoublex}
-\let\HEADINGSdoubleafter=\HEADINGSafter
-\def\HEADINGSdoublex{%
-\global\evenfootline={\hfil}
-\global\oddfootline={\hfil}
-\global\evenheadline={\line{\folio\hfil\thistitle}}
-\global\oddheadline={\line{\thischapter\hfil\folio}}
-}
-
-\def\HEADINGSsingleafter{\let\HEADINGShook=\HEADINGSsinglex}
-\def\HEADINGSsinglex{%
-\global\evenfootline={\hfil}
-\global\oddfootline={\hfil}
-\global\evenheadline={\line{\thischapter\hfil\folio}}
-\global\oddheadline={\line{\thischapter\hfil\folio}}
-}
-
-% Subroutines used in generating headings
-% Produces Day Month Year style of output.
-\def\today{\number\day\space
-\ifcase\month\or
-January\or February\or March\or April\or May\or June\or
-July\or August\or September\or October\or November\or December\fi
-\space\number\year}
-
-% Use this if you want the Month Day, Year style of output.
-%\def\today{\ifcase\month\or
-%January\or February\or March\or April\or May\or June\or
-%July\or August\or September\or October\or November\or December\fi
-%\space\number\day, \number\year}
-
-% @settitle line...  specifies the title of the document, for headings
-% It generates no output of its own
-
-\def\thistitle{No Title}
-\def\settitle{\parsearg\settitlezzz}
-\def\settitlezzz #1{\gdef\thistitle{#1}}
-
-\message{tables,}
-
-% @tabs -- simple alignment
-
-% These don't work.  For one thing, \+ is defined as outer.
-% So these macros cannot even be defined.
-
-%\def\tabs{\parsearg\tabszzz}
-%\def\tabszzz #1{\settabs\+#1\cr}
-%\def\tabline{\parsearg\tablinezzz}
-%\def\tablinezzz #1{\+#1\cr}
-%\def\&{&}
-
-% Tables -- @table, @ftable, @vtable, @item(x), @kitem(x), @xitem(x).
-
-% default indentation of table text
-\newdimen\tableindent \tableindent=.8in
-% default indentation of @itemize and @enumerate text
-\newdimen\itemindent  \itemindent=.3in
-% margin between end of table item and start of table text.
-\newdimen\itemmargin  \itemmargin=.1in
-
-% used internally for \itemindent minus \itemmargin
-\newdimen\itemmax
-
-% Note @table, @vtable, and @vtable define @item, @itemx, etc., with
-% these defs.
-% They also define \itemindex
-% to index the item name in whatever manner is desired (perhaps none).
-
-\newif\ifitemxneedsnegativevskip
-
-\def\itemxpar{\par\ifitemxneedsnegativevskip\vskip-\parskip\nobreak\fi}
-
-\def\internalBitem{\smallbreak \parsearg\itemzzz}
-\def\internalBitemx{\itemxpar \parsearg\itemzzz}
-
-\def\internalBxitem "#1"{\def\xitemsubtopix{#1} \smallbreak \parsearg\xitemzzz}
-\def\internalBxitemx "#1"{\def\xitemsubtopix{#1} \itemxpar \parsearg\xitemzzz}
-
-\def\internalBkitem{\smallbreak \parsearg\kitemzzz}
-\def\internalBkitemx{\itemxpar \parsearg\kitemzzz}
-
-\def\kitemzzz #1{\dosubind {kw}{\code{#1}}{for {\bf \lastfunction}}%
-                 \itemzzz {#1}}
-
-\def\xitemzzz #1{\dosubind {kw}{\code{#1}}{for {\bf \xitemsubtopic}}%
-                 \itemzzz {#1}}
-
-\def\itemzzz #1{\begingroup %
-  \advance\hsize by -\rightskip
-  \advance\hsize by -\tableindent
-  \setbox0=\hbox{\itemfont{#1}}%
-  \itemindex{#1}%
-  \nobreak % This prevents a break before @itemx.
-  %
-  % Be sure we are not still in the middle of a paragraph.
-  %{\parskip = 0in
-  %\par
-  %}%
-  %
-  % If the item text does not fit in the space we have, put it on a line
-  % by itself, and do not allow a page break either before or after that
-  % line.  We do not start a paragraph here because then if the next
-  % command is, e.g., @kindex, the whatsit would get put into the
-  % horizontal list on a line by itself, resulting in extra blank space.
-  \ifdim \wd0>\itemmax
-    %
-    % Make this a paragraph so we get the \parskip glue and wrapping,
-    % but leave it ragged-right.
-    \begingroup
-      \advance\leftskip by-\tableindent
-      \advance\hsize by\tableindent
-      \advance\rightskip by0pt plus1fil
-      \leavevmode\unhbox0\par
-    \endgroup
-    %
-    % We're going to be starting a paragraph, but we don't want the
-    % \parskip glue -- logically it's part of the @item we just started.
-    \nobreak \vskip-\parskip
-    %
-    % Stop a page break at the \parskip glue coming up.  Unfortunately
-    % we can't prevent a possible page break at the following
-    % \baselineskip glue.
-    \nobreak
-    \endgroup
-    \itemxneedsnegativevskipfalse
-  \else
-    % The item text fits into the space.  Start a paragraph, so that the
-    % following text (if any) will end up on the same line.  Since that
-    % text will be indented by \tableindent, we make the item text be in
-    % a zero-width box.
-    \noindent
-    \rlap{\hskip -\tableindent\box0}\ignorespaces%
-    \endgroup%
-    \itemxneedsnegativevskiptrue%
-  \fi
-}
-
-\def\item{\errmessage{@item while not in a table}}
-\def\itemx{\errmessage{@itemx while not in a table}}
-\def\kitem{\errmessage{@kitem while not in a table}}
-\def\kitemx{\errmessage{@kitemx while not in a table}}
-\def\xitem{\errmessage{@xitem while not in a table}}
-\def\xitemx{\errmessage{@xitemx while not in a table}}
-
-%% Contains a kludge to get @end[description] to work
-\def\description{\tablez{\dontindex}{1}{}{}{}{}}
-
-\def\table{\begingroup\inENV\obeylines\obeyspaces\tablex}
-{\obeylines\obeyspaces%
-\gdef\tablex #1^^M{%
-\tabley\dontindex#1        \endtabley}}
-
-\def\ftable{\begingroup\inENV\obeylines\obeyspaces\ftablex}
-{\obeylines\obeyspaces%
-\gdef\ftablex #1^^M{%
-\tabley\fnitemindex#1        \endtabley
-\def\Eftable{\endgraf\afterenvbreak\endgroup}%
-\let\Etable=\relax}}
-
-\def\vtable{\begingroup\inENV\obeylines\obeyspaces\vtablex}
-{\obeylines\obeyspaces%
-\gdef\vtablex #1^^M{%
-\tabley\vritemindex#1        \endtabley
-\def\Evtable{\endgraf\afterenvbreak\endgroup}%
-\let\Etable=\relax}}
-
-\def\dontindex #1{}
-\def\fnitemindex #1{\doind {fn}{\code{#1}}}%
-\def\vritemindex #1{\doind {vr}{\code{#1}}}%
-
-{\obeyspaces %
-\gdef\tabley#1#2 #3 #4 #5 #6 #7\endtabley{\endgroup%
-\tablez{#1}{#2}{#3}{#4}{#5}{#6}}}
-
-\def\tablez #1#2#3#4#5#6{%
-\aboveenvbreak %
-\begingroup %
-\def\Edescription{\Etable}% Neccessary kludge.
-\let\itemindex=#1%
-\ifnum 0#3>0 \advance \leftskip by #3\mil \fi %
-\ifnum 0#4>0 \tableindent=#4\mil \fi %
-\ifnum 0#5>0 \advance \rightskip by #5\mil \fi %
-\def\itemfont{#2}%
-\itemmax=\tableindent %
-\advance \itemmax by -\itemmargin %
-\advance \leftskip by \tableindent %
-\exdentamount=\tableindent
-\parindent = 0pt
-\parskip = \smallskipamount
-\ifdim \parskip=0pt \parskip=2pt \fi%
-\def\Etable{\endgraf\afterenvbreak\endgroup}%
-\let\item = \internalBitem %
-\let\itemx = \internalBitemx %
-\let\kitem = \internalBkitem %
-\let\kitemx = \internalBkitemx %
-\let\xitem = \internalBxitem %
-\let\xitemx = \internalBxitemx %
-}
-
-% This is the counter used by @enumerate, which is really @itemize
-
-\newcount \itemno
-
-\def\itemize{\parsearg\itemizezzz}
-
-\def\itemizezzz #1{%
-  \begingroup % ended by the @end itemsize
-  \itemizey {#1}{\Eitemize}
-}
-
-\def\itemizey #1#2{%
-\aboveenvbreak %
-\itemmax=\itemindent %
-\advance \itemmax by -\itemmargin %
-\advance \leftskip by \itemindent %
-\exdentamount=\itemindent
-\parindent = 0pt %
-\parskip = \smallskipamount %
-\ifdim \parskip=0pt \parskip=2pt \fi%
-\def#2{\endgraf\afterenvbreak\endgroup}%
-\def\itemcontents{#1}%
-\let\item=\itemizeitem}
-
-% Set sfcode to normal for the chars that usually have another value.
-% These are `.?!:;,'
-\def\frenchspacing{\sfcode46=1000 \sfcode63=1000 \sfcode33=1000
-  \sfcode58=1000 \sfcode59=1000 \sfcode44=1000 }
-
-% \splitoff TOKENS\endmark defines \first to be the first token in
-% TOKENS, and \rest to be the remainder.
-%
-\def\splitoff#1#2\endmark{\def\first{#1}\def\rest{#2}}%
-
-% Allow an optional argument of an uppercase letter, lowercase letter,
-% or number, to specify the first label in the enumerated list.  No
-% argument is the same as `1'.
-%
-\def\enumerate{\parsearg\enumeratezzz}
-\def\enumeratezzz #1{\enumeratey #1  \endenumeratey}
-\def\enumeratey #1 #2\endenumeratey{%
-  \begingroup % ended by the @end enumerate
-  %
-  % If we were given no argument, pretend we were given `1'.
-  \def\thearg{#1}%
-  \ifx\thearg\empty \def\thearg{1}\fi
-  %
-  % Detect if the argument is a single token.  If so, it might be a
-  % letter.  Otherwise, the only valid thing it can be is a number.
-  % (We will always have one token, because of the test we just made.
-  % This is a good thing, since \splitoff doesn't work given nothing at
-  % all -- the first parameter is undelimited.)
-  \expandafter\splitoff\thearg\endmark
-  \ifx\rest\empty
-    % Only one token in the argument.  It could still be anything.
-    % A ``lowercase letter'' is one whose \lccode is nonzero.
-    % An ``uppercase letter'' is one whose \lccode is both nonzero, and
-    %   not equal to itself.
-    % Otherwise, we assume it's a number.
-    %
-    % We need the \relax at the end of the \ifnum lines to stop TeX from
-    % continuing to look for a <number>.
-    %
-    \ifnum\lccode\expandafter`\thearg=0\relax
-      \numericenumerate % a number (we hope)
-    \else
-      % It's a letter.
-      \ifnum\lccode\expandafter`\thearg=\expandafter`\thearg\relax
-        \lowercaseenumerate % lowercase letter
-      \else
-        \uppercaseenumerate % uppercase letter
-      \fi
-    \fi
-  \else
-    % Multiple tokens in the argument.  We hope it's a number.
-    \numericenumerate
-  \fi
-}
-
-% An @enumerate whose labels are integers.  The starting integer is
-% given in \thearg.
-%
-\def\numericenumerate{%
-  \itemno = \thearg
-  \startenumeration{\the\itemno}%
-}
-
-% The starting (lowercase) letter is in \thearg.
-\def\lowercaseenumerate{%
-  \itemno = \expandafter`\thearg
-  \startenumeration{%
-    % Be sure we're not beyond the end of the alphabet.
-    \ifnum\itemno=0
-      \errmessage{No more lowercase letters in @enumerate; get a bigger
-                  alphabet}%
-    \fi
-    \char\lccode\itemno
-  }%
-}
-
-% The starting (uppercase) letter is in \thearg.
-\def\uppercaseenumerate{%
-  \itemno = \expandafter`\thearg
-  \startenumeration{%
-    % Be sure we're not beyond the end of the alphabet.
-    \ifnum\itemno=0
-      \errmessage{No more uppercase letters in @enumerate; get a bigger
-                  alphabet}
-    \fi
-    \char\uccode\itemno
-  }%
-}
-
-% Call itemizey, adding a period to the first argument and supplying the
-% common last two arguments.  Also subtract one from the initial value in
-% \itemno, since @item increments \itemno.
-%
-\def\startenumeration#1{%
-  \advance\itemno by -1
-  \itemizey{#1.}\Eenumerate\flushcr
-}
-
-% @alphaenumerate and @capsenumerate are abbreviations for giving an arg
-% to @enumerate.
-%
-\def\alphaenumerate{\enumerate{a}}
-\def\capsenumerate{\enumerate{A}}
-\def\Ealphaenumerate{\Eenumerate}
-\def\Ecapsenumerate{\Eenumerate}
-
-% Definition of @item while inside @itemize.
-
-\def\itemizeitem{%
-\advance\itemno by 1
-{\let\par=\endgraf \smallbreak}%
-\ifhmode \errmessage{\in hmode at itemizeitem}\fi
-{\parskip=0in \hskip 0pt
-\hbox to 0pt{\hss \itemcontents\hskip \itemmargin}%
-\vadjust{\penalty 1200}}%
-\flushcr}
-
-% @multitable macros
-% Amy Hendrickson, 8/18/94
-%
-% @multitable ... @endmultitable will make as many columns as desired.
-% Contents of each column will wrap at width given in preamble. Width
-% can be specified either with sample text given in a template line,
-% or in percent of \hsize, the current width of text on page.
-
-% Table can continue over pages but will only break between lines.
-
-% To make preamble:
-%
-% Either define widths of columns in terms of percent of \hsize: 
-%   @multitable @percentofhsize .2 .3 .5
-%   @item ...
-%
-%   Numbers following @percentofhsize are the percent of the total
-%   current hsize to be used for each column. You may use as many
-%   columns as desired.
-
-% Or use a template:
-%   @multitable {Column 1 template} {Column 2 template} {Column 3 template}
-%   @item ...
-%   using the widest term desired in each column.
-
-
-% Each new table line starts with @item, each subsequent new column 
-% starts with @tab. Empty columns may be produced by supplying @tab's
-% with nothing between them for as many times as empty columns are needed,
-% ie, @tab@tab@tab will produce two empty columns.
-
-% @item, @tab, @multicolumn or @endmulticolumn do not need to be on their
-% own lines, but it will not hurt if they are.
-
-% Sample multitable:
-
-%   @multitable {Column 1 template} {Column 2 template} {Column 3 template}
-%   @item first col stuff @tab second col stuff @tab third col
-%   @item 
-%   first col stuff 
-%   @tab 
-%   second col stuff 
-%   @tab 
-%   third col 
-%   @item first col stuff @tab second col stuff 
-%   @tab Many paragraphs of text may be used in any column.
-%     
-%         They will wrap at the width determined by the template.
-%   @item@tab@tab This will be in third column.
-%   @endmultitable
-
-% Default dimensions may be reset by user.
-% @intableparskip will set vertical space between paragraphs in table.
-% @intableparindent will set paragraph indent in table.
-% @spacebetweencols will set horizontal space to be left between columns.
-% @spacebetweenlines will set vertical space to be left between lines.
-
-%%%%
-% Dimensions 
-
-\newdimen\intableparskip
-\newdimen\intableparindent
-\newdimen\spacebetweencols
-\newdimen\spacebetweenlines
-\intableparskip=0pt
-\intableparindent=6pt
-\spacebetweencols=12pt
-\spacebetweenlines=12pt
-
-%%%%
-% Macros used to set up halign preamble:
-\let\endsetuptable\relax
-\def\xendsetuptable{\endsetuptable}
-\let\percentofhsize\relax
-\def\xpercentofhsize{\percentofhsize}
-\newif\ifsetpercent
-
-\newcount\colcount
-\def\setuptable#1{\def\firstarg{#1}%
-\ifx\firstarg\xendsetuptable\let\go\relax%
-\else
-  \ifx\firstarg\xpercentofhsize\global\setpercenttrue%
-  \else
-    \ifsetpercent
-       \if#1.\else%
-       \global\advance\colcount by1 %
-       \expandafter\xdef\csname col\the\colcount\endcsname{.#1\hsize}%
-       \fi
-    \else
-       \global\advance\colcount by1
-       \setbox0=\hbox{#1}%
-       \expandafter\xdef\csname col\the\colcount\endcsname{\the\wd0}%
-    \fi%
-  \fi%
-  \let\go\setuptable%
-\fi\go}
-%%%%
-% multitable syntax
-\def\tab{&}
-
-%%%%
-% @multitable ... @endmultitable definitions:
-
-\def\multitable#1\item{\bgroup
-\let\item\cr
-\tolerance=9500
-\hbadness=9500
-\parskip=\intableparskip
-\parindent=\intableparindent
-\overfullrule=0pt
-\global\colcount=0\relax%
-\def\Emultitable{\global\setpercentfalse\global\everycr{}\cr\egroup\egroup}%
- % To parse everything between @multitable and @item :
-\def\one{#1}\expandafter\setuptable\one\endsetuptable
- % Need to reset this to 0 after \setuptable.
-\global\colcount=0\relax% 
- %
- % This preamble sets up a generic column definition, which will
- % be used as many times as user calls for columns.
- % \vtop will set a single line and will also let text wrap and 
- % continue for many paragraphs if desired.
-\halign\bgroup&\global\advance\colcount by 1\relax%
-\vtop{\hsize=\expandafter\csname col\the\colcount\endcsname
- % In order to keep entries from bumping into each other
- % we will add a \leftskip of \spacebetweencols to all columns after
- % the first one.
- %  If a template has been used, we will add \spacebetweencols 
- % to the width of each template entry.
- %  If user has set preamble in terms of percent of \hsize
- % we will use that dimension as the width of the column, and
- % the \leftskip will keep entries from bumping into each other.
- % Table will start at left margin and final column will justify at
- % right margin.
-\ifnum\colcount=1
-\else
-  \ifsetpercent
-  \else
-   % If user has <not> set preamble in terms of percent of \hsize
-   % we will advance \hsize by \spacebetweencols 
-  \advance\hsize by \spacebetweencols
-  \fi
- % In either case we will make \leftskip=\spacebetweencols:
-\leftskip=\spacebetweencols
-\fi
-\noindent##}\cr%
- % \everycr will reset column counter, \colcount, at the end of
- % each line. Every column  entry will cause \colcount to advance by one. 
- % The table preamble
- % looks at the current \colcount to find the correct column width.
-\global\everycr{\noalign{\nointerlineskip\vskip\spacebetweenlines
-\filbreak%% keeps underfull box messages off when table breaks over pages.
-\global\colcount=0\relax}}}
-
-\message{indexing,}
-% Index generation facilities
-
-% Define \newwrite to be identical to plain tex's \newwrite
-% except not \outer, so it can be used within \newindex.
-{\catcode`\@=11
-\gdef\newwrite{\alloc@7\write\chardef\sixt@@n}}
-
-% \newindex {foo} defines an index named foo.
-% It automatically defines \fooindex such that
-% \fooindex ...rest of line... puts an entry in the index foo.
-% It also defines \fooindfile to be the number of the output channel for
-% the file that        accumulates this index.  The file's extension is foo.
-% The name of an index should be no more than 2 characters long
-% for the sake of vms.
-
-\def\newindex #1{
-\expandafter\newwrite \csname#1indfile\endcsname% Define number for output file
-\openout \csname#1indfile\endcsname \jobname.#1        % Open the file
-\expandafter\xdef\csname#1index\endcsname{%    % Define \xxxindex
-\noexpand\doindex {#1}}
-}
-
-% @defindex foo  ==  \newindex{foo}
-
-\def\defindex{\parsearg\newindex}
-
-% Define @defcodeindex, like @defindex except put all entries in @code.
-
-\def\newcodeindex #1{
-\expandafter\newwrite \csname#1indfile\endcsname% Define number for output file
-\openout \csname#1indfile\endcsname \jobname.#1        % Open the file
-\expandafter\xdef\csname#1index\endcsname{%    % Define \xxxindex
-\noexpand\docodeindex {#1}}
-}
-
-\def\defcodeindex{\parsearg\newcodeindex}
-
-% @synindex foo bar    makes index foo feed into index bar.
-% Do this instead of @defindex foo if you don't want it as a separate index.
-\def\synindex #1 #2 {%
-\expandafter\let\expandafter\synindexfoo\expandafter=\csname#2indfile\endcsname
-\expandafter\let\csname#1indfile\endcsname=\synindexfoo
-\expandafter\xdef\csname#1index\endcsname{%    % Define \xxxindex
-\noexpand\doindex {#2}}%
-}
-
-% @syncodeindex foo bar   similar, but put all entries made for index foo
-% inside @code.
-\def\syncodeindex #1 #2 {%
-\expandafter\let\expandafter\synindexfoo\expandafter=\csname#2indfile\endcsname
-\expandafter\let\csname#1indfile\endcsname=\synindexfoo
-\expandafter\xdef\csname#1index\endcsname{%    % Define \xxxindex
-\noexpand\docodeindex {#2}}%
-}
-
-% Define \doindex, the driver for all \fooindex macros.
-% Argument #1 is generated by the calling \fooindex macro,
-%  and it is "foo", the name of the index.
-
-% \doindex just uses \parsearg; it calls \doind for the actual work.
-% This is because \doind is more useful to call from other macros.
-
-% There is also \dosubind {index}{topic}{subtopic}
-% which makes an entry in a two-level index such as the operation index.
-
-\def\doindex#1{\edef\indexname{#1}\parsearg\singleindexer}
-\def\singleindexer #1{\doind{\indexname}{#1}}
-
-% like the previous two, but they put @code around the argument.
-\def\docodeindex#1{\edef\indexname{#1}\parsearg\singlecodeindexer}
-\def\singlecodeindexer #1{\doind{\indexname}{\code{#1}}}
-
-\def\indexdummies{%
-% Take care of the plain tex accent commands.
-\def\"{\realbackslash "}%
-\def\`{\realbackslash `}%
-\def\'{\realbackslash '}%
-\def\^{\realbackslash ^}%
-\def\~{\realbackslash ~}%
-\def\={\realbackslash =}%
-\def\b{\realbackslash b}%
-\def\c{\realbackslash c}%
-\def\d{\realbackslash d}%
-\def\u{\realbackslash u}%
-\def\v{\realbackslash v}%
-\def\H{\realbackslash H}%
-% Take care of the plain tex special European modified letters.
-\def\oe{\realbackslash oe}%
-\def\ae{\realbackslash ae}%
-\def\aa{\realbackslash aa}%
-\def\OE{\realbackslash OE}%
-\def\AE{\realbackslash AE}%
-\def\AA{\realbackslash AA}%
-\def\o{\realbackslash o}%
-\def\O{\realbackslash O}%
-\def\l{\realbackslash l}%
-\def\L{\realbackslash L}%
-\def\ss{\realbackslash ss}%
-% Take care of texinfo commands likely to appear in an index entry.
-\def\_{{\realbackslash _}}%
-\def\w{\realbackslash w }%
-\def\bf{\realbackslash bf }%
-\def\rm{\realbackslash rm }%
-\def\sl{\realbackslash sl }%
-\def\sf{\realbackslash sf}%
-\def\tt{\realbackslash tt}%
-\def\gtr{\realbackslash gtr}%
-\def\less{\realbackslash less}%
-\def\hat{\realbackslash hat}%
-\def\char{\realbackslash char}%
-\def\TeX{\realbackslash TeX}%
-\def\dots{\realbackslash dots }%
-\def\copyright{\realbackslash copyright }%
-\def\tclose##1{\realbackslash tclose {##1}}%
-\def\code##1{\realbackslash code {##1}}%
-\def\samp##1{\realbackslash samp {##1}}%
-\def\t##1{\realbackslash r {##1}}%
-\def\r##1{\realbackslash r {##1}}%
-\def\i##1{\realbackslash i {##1}}%
-\def\b##1{\realbackslash b {##1}}%
-\def\cite##1{\realbackslash cite {##1}}%
-\def\key##1{\realbackslash key {##1}}%
-\def\file##1{\realbackslash file {##1}}%
-\def\var##1{\realbackslash var {##1}}%
-\def\kbd##1{\realbackslash kbd {##1}}%
-\def\dfn##1{\realbackslash dfn {##1}}%
-\def\emph##1{\realbackslash emph {##1}}%
-}
-
-% \indexnofonts no-ops all font-change commands.
-% This is used when outputting the strings to sort the index by.
-\def\indexdummyfont#1{#1}
-\def\indexdummytex{TeX}
-\def\indexdummydots{...}
-
-\def\indexnofonts{%
-% Just ignore accents.
-\let\"=\indexdummyfont
-\let\`=\indexdummyfont
-\let\'=\indexdummyfont
-\let\^=\indexdummyfont
-\let\~=\indexdummyfont
-\let\==\indexdummyfont
-\let\b=\indexdummyfont
-\let\c=\indexdummyfont
-\let\d=\indexdummyfont
-\let\u=\indexdummyfont
-\let\v=\indexdummyfont
-\let\H=\indexdummyfont
-% Take care of the plain tex special European modified letters.
-\def\oe{oe}%
-\def\ae{ae}%
-\def\aa{aa}%
-\def\OE{OE}%
-\def\AE{AE}%
-\def\AA{AA}%
-\def\o{o}%
-\def\O{O}%
-\def\l{l}%
-\def\L{L}%
-\def\ss{ss}%
-\let\w=\indexdummyfont
-\let\t=\indexdummyfont
-\let\r=\indexdummyfont
-\let\i=\indexdummyfont
-\let\b=\indexdummyfont
-\let\emph=\indexdummyfont
-\let\strong=\indexdummyfont
-\let\cite=\indexdummyfont
-\let\sc=\indexdummyfont
-%Don't no-op \tt, since it isn't a user-level command
-% and is used in the definitions of the active chars like <, >, |...
-%\let\tt=\indexdummyfont
-\let\tclose=\indexdummyfont
-\let\code=\indexdummyfont
-\let\file=\indexdummyfont
-\let\samp=\indexdummyfont
-\let\kbd=\indexdummyfont
-\let\key=\indexdummyfont
-\let\var=\indexdummyfont
-\let\TeX=\indexdummytex
-\let\dots=\indexdummydots
-}
-
-% To define \realbackslash, we must make \ not be an escape.
-% We must first make another character (@) an escape
-% so we do not become unable to do a definition.
-
-{\catcode`\@=0 \catcode`\\=\other
-@gdef@realbackslash{\}}
-
-\let\indexbackslash=0  %overridden during \printindex.
-
-\let\SETmarginindex=\relax %initialize!
-% workhorse for all \fooindexes
-% #1 is name of index, #2 is stuff to put there
-\def\doind #1#2{%
-% Put the index entry in the margin if desired.
-\ifx\SETmarginindex\relax\else%
-\insert\margin{\hbox{\vrule height8pt depth3pt width0pt #2}}%
-\fi%
-{\count10=\lastpenalty %
-{\indexdummies % Must do this here, since \bf, etc expand at this stage
-\escapechar=`\\%
-{\let\folio=0% Expand all macros now EXCEPT \folio
-\def\rawbackslashxx{\indexbackslash}% \indexbackslash isn't defined now
-% so it will be output as is; and it will print as backslash in the indx.
-%
-% Now process the index-string once, with all font commands turned off,
-% to get the string to sort the index by.
-{\indexnofonts
-\xdef\temp1{#2}%
-}%
-% Now produce the complete index entry.  We process the index-string again,
-% this time with font commands expanded, to get what to print in the index.
-\edef\temp{%
-\write \csname#1indfile\endcsname{%
-\realbackslash entry {\temp1}{\folio}{#2}}}%
-\temp }%
-}\penalty\count10}}
-
-\def\dosubind #1#2#3{%
-{\count10=\lastpenalty %
-{\indexdummies % Must do this here, since \bf, etc expand at this stage
-\escapechar=`\\%
-{\let\folio=0%
-\def\rawbackslashxx{\indexbackslash}%
-%
-% Now process the index-string once, with all font commands turned off,
-% to get the string to sort the index by.
-{\indexnofonts
-\xdef\temp1{#2 #3}%
-}%
-% Now produce the complete index entry.  We process the index-string again,
-% this time with font commands expanded, to get what to print in the index.
-\edef\temp{%
-\write \csname#1indfile\endcsname{%
-\realbackslash entry {\temp1}{\folio}{#2}{#3}}}%
-\temp }%
-}\penalty\count10}}
-
-% The index entry written in the file actually looks like
-%  \entry {sortstring}{page}{topic}
-% or
-%  \entry {sortstring}{page}{topic}{subtopic}
-% The texindex program reads in these files and writes files
-% containing these kinds of lines:
-%  \initial {c}
-%     before the first topic whose initial is c
-%  \entry {topic}{pagelist}
-%     for a topic that is used without subtopics
-%  \primary {topic}
-%     for the beginning of a topic that is used with subtopics
-%  \secondary {subtopic}{pagelist}
-%     for each subtopic.
-
-% Define the user-accessible indexing commands
-% @findex, @vindex, @kindex, @cindex.
-
-\def\findex {\fnindex}
-\def\kindex {\kyindex}
-\def\cindex {\cpindex}
-\def\vindex {\vrindex}
-\def\tindex {\tpindex}
-\def\pindex {\pgindex}
-
-\def\cindexsub {\begingroup\obeylines\cindexsub}
-{\obeylines %
-\gdef\cindexsub "#1" #2^^M{\endgroup %
-\dosubind{cp}{#2}{#1}}}
-
-% Define the macros used in formatting output of the sorted index material.
-
-% This is what you call to cause a particular index to get printed.
-% Write
-% @unnumbered Function Index
-% @printindex fn
-
-\def\printindex{\parsearg\doprintindex}
-
-\def\doprintindex#1{%
-  \tex
-  \dobreak \chapheadingskip {10000}
-  \catcode`\%=\other\catcode`\&=\other\catcode`\#=\other
-  \catcode`\$=\other
-  \catcode`\~=\other
-  \indexbreaks
-  %
-  % The following don't help, since the chars were translated
-  % when the raw index was written, and their fonts were discarded
-  % due to \indexnofonts.
-  %\catcode`\"=\active
-  %\catcode`\^=\active
-  %\catcode`\_=\active
-  %\catcode`\|=\active
-  %\catcode`\<=\active
-  %\catcode`\>=\active
-  % %
-  \def\indexbackslash{\rawbackslashxx}
-  \indexfonts\rm \tolerance=9500 \advance\baselineskip -1pt
-  \begindoublecolumns
-  %
-  % See if the index file exists and is nonempty.
-  \openin 1 \jobname.#1s
-  \ifeof 1
-    % \enddoublecolumns gets confused if there is no text in the index,
-    % and it loses the chapter title and the aux file entries for the
-    % index.  The easiest way to prevent this problem is to make sure
-    % there is some text.
-    (Index is nonexistent)
-    \else
-    %
-    % If the index file exists but is empty, then \openin leaves \ifeof
-    % false.  We have to make TeX try to read something from the file, so
-    % it can discover if there is anything in it.
-    \read 1 to \temp
-    \ifeof 1
-      (Index is empty)
-    \else
-      \input \jobname.#1s
-    \fi
-  \fi
-  \closein 1
-  \enddoublecolumns
-  \Etex
-}
-
-% These macros are used by the sorted index file itself.
-% Change them to control the appearance of the index.
-
-% Same as \bigskipamount except no shrink.
-% \balancecolumns gets confused if there is any shrink.
-\newskip\initialskipamount \initialskipamount 12pt plus4pt
-
-\def\initial #1{%
-{\let\tentt=\sectt \let\tt=\sectt \let\sf=\sectt
-\ifdim\lastskip<\initialskipamount
-\removelastskip \penalty-200 \vskip \initialskipamount\fi
-\line{\secbf#1\hfill}\kern 2pt\penalty10000}}
-
-% This typesets a paragraph consisting of #1, dot leaders, and then #2
-% flush to the right margin.  It is used for index and table of contents
-% entries.  The paragraph is indented by \leftskip.
-%
-\def\entry #1#2{\begingroup
-  %
-  % Start a new paragraph if necessary, so our assignments below can't
-  % affect previous text.
-  \par
-  %
-  % Do not fill out the last line with white space.
-  \parfillskip = 0in
-  %
-  % No extra space above this paragraph.
-  \parskip = 0in
-  %
-  % Do not prefer a separate line ending with a hyphen to fewer lines.
-  \finalhyphendemerits = 0
-  %
-  % \hangindent is only relevant when the entry text and page number
-  % don't both fit on one line.  In that case, bob suggests starting the
-  % dots pretty far over on the line.  Unfortunately, a large
-  % indentation looks wrong when the entry text itself is broken across
-  % lines.  So we use a small indentation and put up with long leaders.
-  %
-  % \hangafter is reset to 1 (which is the value we want) at the start
-  % of each paragraph, so we need not do anything with that.
-  \hangindent=2em
-  %
-  % When the entry text needs to be broken, just fill out the first line
-  % with blank space.
-  \rightskip = 0pt plus1fil
-  %
-  % Start a ``paragraph'' for the index entry so the line breaking
-  % parameters we've set above will have an effect.
-  \noindent
-  %
-  % Insert the text of the index entry.  TeX will do line-breaking on it.
-  #1%
-  % The following is kluged to not output a line of dots in the index if
-  % there are no page numbers.  The next person who breaks this will be
-  % cursed by a Unix daemon.
-  \def\tempa{{\rm }}%
-  \def\tempb{#2}%
-  \edef\tempc{\tempa}%
-  \edef\tempd{\tempb}%
-  \ifx\tempc\tempd\ \else%
-    %
-    % If we must, put the page number on a line of its own, and fill out
-    % this line with blank space.  (The \hfil is overwhelmed with the
-    % fill leaders glue in \indexdotfill if the page number does fit.)
-    \hfil\penalty50
-    \null\nobreak\indexdotfill % Have leaders before the page number.
-    %
-    % The `\ ' here is removed by the implicit \unskip that TeX does as
-    % part of (the primitive) \par.  Without it, a spurious underfull
-    % \hbox ensues.
-    \ #2% The page number ends the paragraph.
-  \fi%
-  \par
-\endgroup}
-
-% Like \dotfill except takes at least 1 em.
-\def\indexdotfill{\cleaders
-  \hbox{$\mathsurround=0pt \mkern1.5mu ${\it .}$ \mkern1.5mu$}\hskip 1em plus 1fill}
-
-\def\primary #1{\line{#1\hfil}}
-
-\newskip\secondaryindent \secondaryindent=0.5cm
-
-\def\secondary #1#2{
-{\parfillskip=0in \parskip=0in
-\hangindent =1in \hangafter=1
-\noindent\hskip\secondaryindent\hbox{#1}\indexdotfill #2\par
-}}
-
-%% Define two-column mode, which is used in indexes.
-%% Adapted from the TeXbook, page 416.
-\catcode `\@=11
-
-\newbox\partialpage
-
-\newdimen\doublecolumnhsize
-
-\def\begindoublecolumns{\begingroup
-  % Grab any single-column material above us.
-  \output = {\global\setbox\partialpage
-    =\vbox{\unvbox255\kern -\topskip \kern \baselineskip}}%
-  \eject
-  %
-  % Now switch to the double-column output routine.
-  \output={\doublecolumnout}%
-  %
-  % Change the page size parameters.  We could do this once outside this
-  % routine, in each of @smallbook, @afourpaper, and the default 8.5x11
-  % format, but then we repeat the same computation.  Repeating a couple
-  % of assignments once per index is clearly meaningless for the
-  % execution time, so we may as well do it once.
-  %
-  % First we halve the line length, less a little for the gutter between
-  % the columns.  We compute the gutter based on the line length, so it
-  % changes automatically with the paper format.  The magic constant
-  % below is chosen so that the gutter has the same value (well, +- <
-  % 1pt) as it did when we hard-coded it.
-  %
-  % We put the result in a separate register, \doublecolumhsize, so we
-  % can restore it in \pagesofar, after \hsize itself has (potentially)
-  % been clobbered.
-  %
-  \doublecolumnhsize = \hsize
-    \advance\doublecolumnhsize by -.04154\hsize
-    \divide\doublecolumnhsize by 2
-  \hsize = \doublecolumnhsize
-  %
-  % Double the \vsize as well.  (We don't need a separate register here,
-  % since nobody clobbers \vsize.)
-  \vsize = 2\vsize
-  \doublecolumnpagegoal
-}
-
-\def\enddoublecolumns{\eject \endgroup \pagegoal=\vsize \unvbox\partialpage}
-
-\def\doublecolumnsplit{\splittopskip=\topskip \splitmaxdepth=\maxdepth
-  \global\dimen@=\pageheight \global\advance\dimen@ by-\ht\partialpage
-  \global\setbox1=\vsplit255 to\dimen@ \global\setbox0=\vbox{\unvbox1}
-  \global\setbox3=\vsplit255 to\dimen@ \global\setbox2=\vbox{\unvbox3}
-  \ifdim\ht0>\dimen@ \setbox255=\vbox{\unvbox0\unvbox2} \global\setbox255=\copy5 \fi
-  \ifdim\ht2>\dimen@ \setbox255=\vbox{\unvbox0\unvbox2} \global\setbox255=\copy5 \fi
-}
-\def\doublecolumnpagegoal{%
-  \dimen@=\vsize \advance\dimen@ by-2\ht\partialpage \global\pagegoal=\dimen@
-}
-\def\pagesofar{\unvbox\partialpage %
-  \hsize=\doublecolumnhsize % have to restore this since output routine
-  \wd0=\hsize \wd2=\hsize \hbox to\pagewidth{\box0\hfil\box2}}
-\def\doublecolumnout{%
-  \setbox5=\copy255
-  {\vbadness=10000 \doublecolumnsplit}
-  \ifvbox255
-    \setbox0=\vtop to\dimen@{\unvbox0}
-    \setbox2=\vtop to\dimen@{\unvbox2}
-    \onepageout\pagesofar \unvbox255 \penalty\outputpenalty
-  \else
-    \setbox0=\vbox{\unvbox5}
-    \ifvbox0
-      \dimen@=\ht0 \advance\dimen@ by\topskip \advance\dimen@ by-\baselineskip
-      \divide\dimen@ by2 \splittopskip=\topskip \splitmaxdepth=\maxdepth
-      {\vbadness=10000
-       \loop \global\setbox5=\copy0
-          \setbox1=\vsplit5 to\dimen@
-          \setbox3=\vsplit5 to\dimen@
-          \ifvbox5 \global\advance\dimen@ by1pt \repeat
-        \setbox0=\vbox to\dimen@{\unvbox1}
-        \setbox2=\vbox to\dimen@{\unvbox3}
-        \global\setbox\partialpage=\vbox{\pagesofar}
-        \doublecolumnpagegoal
-      }
-    \fi
-  \fi
-}
-
-\catcode `\@=\other
-\message{sectioning,}
-% Define chapters, sections, etc.
-
-\newcount \chapno
-\newcount \secno        \secno=0
-\newcount \subsecno     \subsecno=0
-\newcount \subsubsecno  \subsubsecno=0
-
-% This counter is funny since it counts through charcodes of letters A, B, ...
-\newcount \appendixno  \appendixno = `\@
-\def\appendixletter{\char\the\appendixno}
-
-\newwrite \contentsfile
-% This is called from \setfilename.
-\def\opencontents{\openout \contentsfile = \jobname.toc}
-
-% Each @chapter defines this as the name of the chapter.
-% page headings and footings can use it.  @section does likewise
-
-\def\thischapter{} \def\thissection{}
-\def\seccheck#1{\if \pageno<0 %
-\errmessage{@#1 not allowed after generating table of contents}\fi
-%
-}
-
-\def\chapternofonts{%
-\let\rawbackslash=\relax%
-\let\frenchspacing=\relax%
-\def\result{\realbackslash result}
-\def\equiv{\realbackslash equiv}
-\def\expansion{\realbackslash expansion}
-\def\print{\realbackslash print}
-\def\TeX{\realbackslash TeX}
-\def\dots{\realbackslash dots}
-\def\copyright{\realbackslash copyright}
-\def\tt{\realbackslash tt}
-\def\bf{\realbackslash bf }
-\def\w{\realbackslash w}
-\def\less{\realbackslash less}
-\def\gtr{\realbackslash gtr}
-\def\hat{\realbackslash hat}
-\def\char{\realbackslash char}
-\def\tclose##1{\realbackslash tclose {##1}}
-\def\code##1{\realbackslash code {##1}}
-\def\samp##1{\realbackslash samp {##1}}
-\def\r##1{\realbackslash r {##1}}
-\def\b##1{\realbackslash b {##1}}
-\def\key##1{\realbackslash key {##1}}
-\def\file##1{\realbackslash file {##1}}
-\def\kbd##1{\realbackslash kbd {##1}}
-% These are redefined because @smartitalic wouldn't work inside xdef.
-\def\i##1{\realbackslash i {##1}}
-\def\cite##1{\realbackslash cite {##1}}
-\def\var##1{\realbackslash var {##1}}
-\def\emph##1{\realbackslash emph {##1}}
-\def\dfn##1{\realbackslash dfn {##1}}
-}
-
-\newcount\absseclevel % used to calculate proper heading level
-\newcount\secbase\secbase=0 % @raise/lowersections modify this count
-
-% @raisesections: treat @section as chapter, @subsection as section, etc.
-\def\raisesections{\global\advance\secbase by -1}
-\let\up=\raisesections % original BFox name
-
-% @lowersections: treat @chapter as section, @section as subsection, etc.
-\def\lowersections{\global\advance\secbase by 1}
-\let\down=\lowersections % original BFox name
-
-% Choose a numbered-heading macro
-% #1 is heading level if unmodified by @raisesections or @lowersections
-% #2 is text for heading
-\def\numhead#1#2{\absseclevel=\secbase\advance\absseclevel by #1
-\ifcase\absseclevel
-  \chapterzzz{#2}
-\or
-  \seczzz{#2}
-\or
-  \numberedsubseczzz{#2}
-\or
-  \numberedsubsubseczzz{#2}
-\else
-  \ifnum \absseclevel<0
-    \chapterzzz{#2}
-  \else
-    \numberedsubsubseczzz{#2}
-  \fi
-\fi
-}
-
-% like \numhead, but chooses appendix heading levels
-\def\apphead#1#2{\absseclevel=\secbase\advance\absseclevel by #1
-\ifcase\absseclevel
-  \appendixzzz{#2}
-\or
-  \appendixsectionzzz{#2}
-\or
-  \appendixsubseczzz{#2}
-\or
-  \appendixsubsubseczzz{#2}
-\else
-  \ifnum \absseclevel<0
-    \appendixzzz{#2}
-  \else
-    \appendixsubsubseczzz{#2}
-  \fi
-\fi
-}
-
-% like \numhead, but chooses numberless heading levels
-\def\unnmhead#1#2{\absseclevel=\secbase\advance\absseclevel by #1
-\ifcase\absseclevel
-  \unnumberedzzz{#2}
-\or
-  \unnumberedseczzz{#2}
-\or
-  \unnumberedsubseczzz{#2}
-\or
-  \unnumberedsubsubseczzz{#2}
-\else
-  \ifnum \absseclevel<0
-    \unnumberedzzz{#2}
-  \else
-    \unnumberedsubsubseczzz{#2}
-  \fi
-\fi
-}
-
-
-\def\thischaptername{No Chapter Title}
-\outer\def\chapter{\parsearg\chapteryyy}
-\def\chapteryyy #1{\numhead0{#1}} % normally numhead0 calls chapterzzz
-\def\chapterzzz #1{\seccheck{chapter}%
-\secno=0 \subsecno=0 \subsubsecno=0
-\global\advance \chapno by 1 \message{\putwordChapter \the\chapno}%
-\chapmacro {#1}{\the\chapno}%
-\gdef\thissection{#1}%
-\gdef\thischaptername{#1}%
-% We don't substitute the actual chapter name into \thischapter
-% because we don't want its macros evaluated now.
-\xdef\thischapter{\putwordChapter{} \the\chapno: \noexpand\thischaptername}%
-{\chapternofonts%
-\edef\temp{{\realbackslash chapentry {#1}{\the\chapno}{\noexpand\folio}}}%
-\escapechar=`\\%
-\write \contentsfile \temp  %
-\donoderef %
-\global\let\section = \numberedsec
-\global\let\subsection = \numberedsubsec
-\global\let\subsubsection = \numberedsubsubsec
-}}
-
-\outer\def\appendix{\parsearg\appendixyyy}
-\def\appendixyyy #1{\apphead0{#1}} % normally apphead0 calls appendixzzz
-\def\appendixzzz #1{\seccheck{appendix}%
-\secno=0 \subsecno=0 \subsubsecno=0
-\global\advance \appendixno by 1 \message{Appendix \appendixletter}%
-\chapmacro {#1}{\putwordAppendix{} \appendixletter}%
-\gdef\thissection{#1}%
-\gdef\thischaptername{#1}%
-\xdef\thischapter{\putwordAppendix{} \appendixletter: \noexpand\thischaptername}%
-{\chapternofonts%
-\edef\temp{{\realbackslash chapentry
-  {#1}{\putwordAppendix{} \appendixletter}{\noexpand\folio}}}%
-\escapechar=`\\%
-\write \contentsfile \temp  %
-\appendixnoderef %
-\global\let\section = \appendixsec
-\global\let\subsection = \appendixsubsec
-\global\let\subsubsection = \appendixsubsubsec
-}}
-
-\outer\def\top{\parsearg\unnumberedyyy}
-\outer\def\unnumbered{\parsearg\unnumberedyyy}
-\def\unnumberedyyy #1{\unnmhead0{#1}} % normally unnmhead0 calls unnumberedzzz
-\def\unnumberedzzz #1{\seccheck{unnumbered}%
-\secno=0 \subsecno=0 \subsubsecno=0
-%
-% This used to be simply \message{#1}, but TeX fully expands the
-% argument to \message.  Therefore, if #1 contained @-commands, TeX
-% expanded them.  For example, in `@unnumbered The @cite{Book}', TeX
-% expanded @cite (which turns out to cause errors because \cite is meant
-% to be executed, not expanded).
-%
-% Anyway, we don't want the fully-expanded definition of @cite to appear
-% as a result of the \message, we just want `@cite' itself.  We use
-% \the<toks register> to achieve this: TeX expands \the<toks> only once,
-% simply yielding the contents of the <toks register>.
-\toks0 = {#1}\message{(\the\toks0)}%
-%
-\unnumbchapmacro {#1}%
-\gdef\thischapter{#1}\gdef\thissection{#1}%
-{\chapternofonts%
-\edef\temp{{\realbackslash unnumbchapentry {#1}{\noexpand\folio}}}%
-\escapechar=`\\%
-\write \contentsfile \temp  %
-\unnumbnoderef %
-\global\let\section = \unnumberedsec
-\global\let\subsection = \unnumberedsubsec
-\global\let\subsubsection = \unnumberedsubsubsec
-}}
-
-\outer\def\numberedsec{\parsearg\secyyy}
-\def\secyyy #1{\numhead1{#1}} % normally calls seczzz
-\def\seczzz #1{\seccheck{section}%
-\subsecno=0 \subsubsecno=0 \global\advance \secno by 1 %
-\gdef\thissection{#1}\secheading {#1}{\the\chapno}{\the\secno}%
-{\chapternofonts%
-\edef\temp{{\realbackslash secentry %
-{#1}{\the\chapno}{\the\secno}{\noexpand\folio}}}%
-\escapechar=`\\%
-\write \contentsfile \temp %
-\donoderef %
-\penalty 10000 %
-}}
-
-\outer\def\appenixsection{\parsearg\appendixsecyyy}
-\outer\def\appendixsec{\parsearg\appendixsecyyy}
-\def\appendixsecyyy #1{\apphead1{#1}} % normally calls appendixsectionzzz
-\def\appendixsectionzzz #1{\seccheck{appendixsection}%
-\subsecno=0 \subsubsecno=0 \global\advance \secno by 1 %
-\gdef\thissection{#1}\secheading {#1}{\appendixletter}{\the\secno}%
-{\chapternofonts%
-\edef\temp{{\realbackslash secentry %
-{#1}{\appendixletter}{\the\secno}{\noexpand\folio}}}%
-\escapechar=`\\%
-\write \contentsfile \temp %
-\appendixnoderef %
-\penalty 10000 %
-}}
-
-\outer\def\unnumberedsec{\parsearg\unnumberedsecyyy}
-\def\unnumberedsecyyy #1{\unnmhead1{#1}} % normally calls unnumberedseczzz
-\def\unnumberedseczzz #1{\seccheck{unnumberedsec}%
-\plainsecheading {#1}\gdef\thissection{#1}%
-{\chapternofonts%
-\edef\temp{{\realbackslash unnumbsecentry{#1}{\noexpand\folio}}}%
-\escapechar=`\\%
-\write \contentsfile \temp %
-\unnumbnoderef %
-\penalty 10000 %
-}}
-
-\outer\def\numberedsubsec{\parsearg\numberedsubsecyyy}
-\def\numberedsubsecyyy #1{\numhead2{#1}} % normally calls numberedsubseczzz
-\def\numberedsubseczzz #1{\seccheck{subsection}%
-\gdef\thissection{#1}\subsubsecno=0 \global\advance \subsecno by 1 %
-\subsecheading {#1}{\the\chapno}{\the\secno}{\the\subsecno}%
-{\chapternofonts%
-\edef\temp{{\realbackslash subsecentry %
-{#1}{\the\chapno}{\the\secno}{\the\subsecno}{\noexpand\folio}}}%
-\escapechar=`\\%
-\write \contentsfile \temp %
-\donoderef %
-\penalty 10000 %
-}}
-
-\outer\def\appendixsubsec{\parsearg\appendixsubsecyyy}
-\def\appendixsubsecyyy #1{\apphead2{#1}} % normally calls appendixsubseczzz
-\def\appendixsubseczzz #1{\seccheck{appendixsubsec}%
-\gdef\thissection{#1}\subsubsecno=0 \global\advance \subsecno by 1 %
-\subsecheading {#1}{\appendixletter}{\the\secno}{\the\subsecno}%
-{\chapternofonts%
-\edef\temp{{\realbackslash subsecentry %
-{#1}{\appendixletter}{\the\secno}{\the\subsecno}{\noexpand\folio}}}%
-\escapechar=`\\%
-\write \contentsfile \temp %
-\appendixnoderef %
-\penalty 10000 %
-}}
-
-\outer\def\unnumberedsubsec{\parsearg\unnumberedsubsecyyy}
-\def\unnumberedsubsecyyy #1{\unnmhead2{#1}} %normally calls unnumberedsubseczzz
-\def\unnumberedsubseczzz #1{\seccheck{unnumberedsubsec}%
-\plainsecheading {#1}\gdef\thissection{#1}%
-{\chapternofonts%
-\edef\temp{{\realbackslash unnumbsubsecentry{#1}{\noexpand\folio}}}%
-\escapechar=`\\%
-\write \contentsfile \temp %
-\unnumbnoderef %
-\penalty 10000 %
-}}
-
-\outer\def\numberedsubsubsec{\parsearg\numberedsubsubsecyyy}
-\def\numberedsubsubsecyyy #1{\numhead3{#1}} % normally numberedsubsubseczzz
-\def\numberedsubsubseczzz #1{\seccheck{subsubsection}%
-\gdef\thissection{#1}\global\advance \subsubsecno by 1 %
-\subsubsecheading {#1}
-  {\the\chapno}{\the\secno}{\the\subsecno}{\the\subsubsecno}%
-{\chapternofonts%
-\edef\temp{{\realbackslash subsubsecentry %
-  {#1}
-  {\the\chapno}{\the\secno}{\the\subsecno}{\the\subsubsecno}
-  {\noexpand\folio}}}%
-\escapechar=`\\%
-\write \contentsfile \temp %
-\donoderef %
-\penalty 10000 %
-}}
-
-\outer\def\appendixsubsubsec{\parsearg\appendixsubsubsecyyy}
-\def\appendixsubsubsecyyy #1{\apphead3{#1}} % normally appendixsubsubseczzz
-\def\appendixsubsubseczzz #1{\seccheck{appendixsubsubsec}%
-\gdef\thissection{#1}\global\advance \subsubsecno by 1 %
-\subsubsecheading {#1}
-  {\appendixletter}{\the\secno}{\the\subsecno}{\the\subsubsecno}%
-{\chapternofonts%
-\edef\temp{{\realbackslash subsubsecentry{#1}%
-  {\appendixletter}
-  {\the\secno}{\the\subsecno}{\the\subsubsecno}{\noexpand\folio}}}%
-\escapechar=`\\%
-\write \contentsfile \temp %
-\appendixnoderef %
-\penalty 10000 %
-}}
-
-\outer\def\unnumberedsubsubsec{\parsearg\unnumberedsubsubsecyyy}
-\def\unnumberedsubsubsecyyy #1{\unnmhead3{#1}} %normally unnumberedsubsubseczzz
-\def\unnumberedsubsubseczzz #1{\seccheck{unnumberedsubsubsec}%
-\plainsecheading {#1}\gdef\thissection{#1}%
-{\chapternofonts%
-\edef\temp{{\realbackslash unnumbsubsubsecentry{#1}{\noexpand\folio}}}%
-\escapechar=`\\%
-\write \contentsfile \temp %
-\unnumbnoderef %
-\penalty 10000 %
-}}
-
-% These are variants which are not "outer", so they can appear in @ifinfo.
-% Actually, they should now be obsolete; ordinary section commands should work.
-\def\infotop{\parsearg\unnumberedzzz}
-\def\infounnumbered{\parsearg\unnumberedzzz}
-\def\infounnumberedsec{\parsearg\unnumberedseczzz}
-\def\infounnumberedsubsec{\parsearg\unnumberedsubseczzz}
-\def\infounnumberedsubsubsec{\parsearg\unnumberedsubsubseczzz}
-
-\def\infoappendix{\parsearg\appendixzzz}
-\def\infoappendixsec{\parsearg\appendixseczzz}
-\def\infoappendixsubsec{\parsearg\appendixsubseczzz}
-\def\infoappendixsubsubsec{\parsearg\appendixsubsubseczzz}
-
-\def\infochapter{\parsearg\chapterzzz}
-\def\infosection{\parsearg\sectionzzz}
-\def\infosubsection{\parsearg\subsectionzzz}
-\def\infosubsubsection{\parsearg\subsubsectionzzz}
-
-% These macros control what the section commands do, according
-% to what kind of chapter we are in (ordinary, appendix, or unnumbered).
-% Define them by default for a numbered chapter.
-\global\let\section = \numberedsec
-\global\let\subsection = \numberedsubsec
-\global\let\subsubsection = \numberedsubsubsec
-
-% Define @majorheading, @heading and @subheading
-
-% NOTE on use of \vbox for chapter headings, section headings, and
-% such:
-%      1) We use \vbox rather than the earlier \line to permit
-%         overlong headings to fold.
-%      2) \hyphenpenalty is set to 10000 because hyphenation in a
-%         heading is obnoxious; this forbids it.
-%       3) Likewise, headings look best if no \parindent is used, and
-%          if justification is not attempted.  Hence \raggedright.
-
-
-\def\majorheading{\parsearg\majorheadingzzz}
-\def\majorheadingzzz #1{%
-{\advance\chapheadingskip by 10pt \chapbreak }%
-{\chapfonts \vbox{\hyphenpenalty=10000\tolerance=5000
-                  \parindent=0pt\raggedright
-                  \rm #1\hfill}}\bigskip \par\penalty 200}
-
-\def\chapheading{\parsearg\chapheadingzzz}
-\def\chapheadingzzz #1{\chapbreak %
-{\chapfonts \vbox{\hyphenpenalty=10000\tolerance=5000
-                  \parindent=0pt\raggedright
-                  \rm #1\hfill}}\bigskip \par\penalty 200}
-
-\def\heading{\parsearg\secheadingi}
-
-\def\subheading{\parsearg\subsecheadingi}
-
-\def\subsubheading{\parsearg\subsubsecheadingi}
-
-% These macros generate a chapter, section, etc. heading only
-% (including whitespace, linebreaking, etc. around it),
-% given all the information in convenient, parsed form.
-
-%%% Args are the skip and penalty (usually negative)
-\def\dobreak#1#2{\par\ifdim\lastskip<#1\removelastskip\penalty#2\vskip#1\fi}
-
-\def\setchapterstyle #1 {\csname CHAPF#1\endcsname}
-
-%%% Define plain chapter starts, and page on/off switching for it
-% Parameter controlling skip before chapter headings (if needed)
-
-\newskip \chapheadingskip \chapheadingskip = 30pt plus 8pt minus 4pt
-
-\def\chapbreak{\dobreak \chapheadingskip {-4000}}
-\def\chappager{\par\vfill\supereject}
-\def\chapoddpage{\chappager \ifodd\pageno \else \hbox to 0pt{} \chappager\fi}
-
-\def\setchapternewpage #1 {\csname CHAPPAG#1\endcsname}
-
-\def\CHAPPAGoff{
-\global\let\pchapsepmacro=\chapbreak
-\global\let\pagealignmacro=\chappager}
-
-\def\CHAPPAGon{
-\global\let\pchapsepmacro=\chappager
-\global\let\pagealignmacro=\chappager
-\global\def\HEADINGSon{\HEADINGSsingle}}
-
-\def\CHAPPAGodd{
-\global\let\pchapsepmacro=\chapoddpage
-\global\let\pagealignmacro=\chapoddpage
-\global\def\HEADINGSon{\HEADINGSdouble}}
-
-\CHAPPAGon
-
-\def\CHAPFplain{
-\global\let\chapmacro=\chfplain
-\global\let\unnumbchapmacro=\unnchfplain}
-
-\def\chfplain #1#2{%
-  \pchapsepmacro
-  {%
-    \chapfonts \vbox{\hyphenpenalty=10000\tolerance=5000
-                     \parindent=0pt\raggedright
-                     \rm #2\enspace #1}%
-  }%
-  \bigskip
-  \penalty5000
-}
-
-\def\unnchfplain #1{%
-\pchapsepmacro %
-{\chapfonts \vbox{\hyphenpenalty=10000\tolerance=5000
-                  \parindent=0pt\raggedright
-                  \rm #1\hfill}}\bigskip \par\penalty 10000 %
-}
-\CHAPFplain % The default
-
-\def\unnchfopen #1{%
-\chapoddpage {\chapfonts \vbox{\hyphenpenalty=10000\tolerance=5000
-                       \parindent=0pt\raggedright
-                       \rm #1\hfill}}\bigskip \par\penalty 10000 %
-}
-
-\def\chfopen #1#2{\chapoddpage {\chapfonts
-\vbox to 3in{\vfil \hbox to\hsize{\hfil #2} \hbox to\hsize{\hfil #1} \vfil}}%
-\par\penalty 5000 %
-}
-
-\def\CHAPFopen{
-\global\let\chapmacro=\chfopen
-\global\let\unnumbchapmacro=\unnchfopen}
-
-% Parameter controlling skip before section headings.
-
-\newskip \subsecheadingskip  \subsecheadingskip = 17pt plus 8pt minus 4pt
-\def\subsecheadingbreak{\dobreak \subsecheadingskip {-500}}
-
-\newskip \secheadingskip  \secheadingskip = 21pt plus 8pt minus 4pt
-\def\secheadingbreak{\dobreak \secheadingskip {-1000}}
-
-% @paragraphindent  is defined for the Info formatting commands only.
-\let\paragraphindent=\comment
-
-% Section fonts are the base font at magstep2, which produces
-% a size a bit more than 14 points in the default situation.
-
-\def\secheading #1#2#3{\secheadingi {#2.#3\enspace #1}}
-\def\plainsecheading #1{\secheadingi {#1}}
-\def\secheadingi #1{{\advance \secheadingskip by \parskip %
-\secheadingbreak}%
-{\secfonts \vbox{\hyphenpenalty=10000\tolerance=5000
-                 \parindent=0pt\raggedright
-                 \rm #1\hfill}}%
-\ifdim \parskip<10pt \kern 10pt\kern -\parskip\fi \penalty 10000 }
-
-
-% Subsection fonts are the base font at magstep1,
-% which produces a size of 12 points.
-
-\def\subsecheading #1#2#3#4{\subsecheadingi {#2.#3.#4\enspace #1}}
-\def\subsecheadingi #1{{\advance \subsecheadingskip by \parskip %
-\subsecheadingbreak}%
-{\subsecfonts \vbox{\hyphenpenalty=10000\tolerance=5000
-                     \parindent=0pt\raggedright
-                     \rm #1\hfill}}%
-\ifdim \parskip<10pt \kern 10pt\kern -\parskip\fi \penalty 10000 }
-
-\def\subsubsecfonts{\subsecfonts} % Maybe this should change:
-                                 % Perhaps make sssec fonts scaled
-                                 % magstep half
-\def\subsubsecheading #1#2#3#4#5{\subsubsecheadingi {#2.#3.#4.#5\enspace #1}}
-\def\subsubsecheadingi #1{{\advance \subsecheadingskip by \parskip %
-\subsecheadingbreak}%
-{\subsubsecfonts \vbox{\hyphenpenalty=10000\tolerance=5000
-                       \parindent=0pt\raggedright
-                       \rm #1\hfill}}%
-\ifdim \parskip<10pt \kern 10pt\kern -\parskip\fi \penalty 10000}
-
-
-\message{toc printing,}
-
-% Finish up the main text and prepare to read what we've written
-% to \contentsfile.
-
-\newskip\contentsrightmargin \contentsrightmargin=1in
-\def\startcontents#1{%
-   \pagealignmacro
-   \immediate\closeout \contentsfile
-   \ifnum \pageno>0
-      \pageno = -1             % Request roman numbered pages.
-   \fi
-   % Don't need to put `Contents' or `Short Contents' in the headline.
-   % It is abundantly clear what they are.
-   \unnumbchapmacro{#1}\def\thischapter{}%
-   \begingroup                 % Set up to handle contents files properly.
-      \catcode`\\=0  \catcode`\{=1  \catcode`\}=2  \catcode`\@=11
-      \catcode`\^=7 % to see ^^e4 as \"a etc. juha@piuha.ydi.vtt.fi
-      \raggedbottom             % Worry more about breakpoints than the bottom.
-      \advance\hsize by -\contentsrightmargin % Don't use the full line length.
-}
-
-
-% Normal (long) toc.
-\outer\def\contents{%
-   \startcontents{\putwordTableofContents}%
-      \input \jobname.toc
-   \endgroup
-   \vfill \eject
-}
-
-% And just the chapters.
-\outer\def\summarycontents{%
-   \startcontents{\putwordShortContents}%
-      %
-      \let\chapentry = \shortchapentry
-      \let\unnumbchapentry = \shortunnumberedentry
-      % We want a true roman here for the page numbers.
-      \secfonts
-      \let\rm=\shortcontrm \let\bf=\shortcontbf \let\sl=\shortcontsl
-      \rm
-      \advance\baselineskip by 1pt % Open it up a little.
-      \def\secentry ##1##2##3##4{}
-      \def\unnumbsecentry ##1##2{}
-      \def\subsecentry ##1##2##3##4##5{}
-      \def\unnumbsubsecentry ##1##2{}
-      \def\subsubsecentry ##1##2##3##4##5##6{}
-      \def\unnumbsubsubsecentry ##1##2{}
-      \input \jobname.toc
-   \endgroup
-   \vfill \eject
-}
-\let\shortcontents = \summarycontents
-
-% These macros generate individual entries in the table of contents.
-% The first argument is the chapter or section name.
-% The last argument is the page number.
-% The arguments in between are the chapter number, section number, ...
-
-% Chapter-level things, for both the long and short contents.
-\def\chapentry#1#2#3{\dochapentry{#2\labelspace#1}{#3}}
-
-% See comments in \dochapentry re vbox and related settings
-\def\shortchapentry#1#2#3{%
-  \tocentry{\shortchaplabel{#2}\labelspace #1}{\doshortpageno{#3}}%
-}
-
-% Typeset the label for a chapter or appendix for the short contents.
-% The arg is, e.g. `Appendix A' for an appendix, or `3' for a chapter.
-% We could simplify the code here by writing out an \appendixentry
-% command in the toc file for appendices, instead of using \chapentry
-% for both, but it doesn't seem worth it.
-\setbox0 = \hbox{\shortcontrm \putwordAppendix }
-\newdimen\shortappendixwidth \shortappendixwidth = \wd0
-
-\def\shortchaplabel#1{%
-  % We typeset #1 in a box of constant width, regardless of the text of
-  % #1, so the chapter titles will come out aligned.
-  \setbox0 = \hbox{#1}%
-  \dimen0 = \ifdim\wd0 > \shortappendixwidth \shortappendixwidth \else 0pt \fi
-  %
-  % This space should be plenty, since a single number is .5em, and the
-  % widest letter (M) is 1em, at least in the Computer Modern fonts.
-  % (This space doesn't include the extra space that gets added after
-  % the label; that gets put in in \shortchapentry above.)
-  \advance\dimen0 by 1.1em
-  \hbox to \dimen0{#1\hfil}%
-}
-
-\def\unnumbchapentry#1#2{\dochapentry{#1}{#2}}
-\def\shortunnumberedentry#1#2{\tocentry{#1}{\doshortpageno{#2}}}
-
-% Sections.
-\def\secentry#1#2#3#4{\dosecentry{#2.#3\labelspace#1}{#4}}
-\def\unnumbsecentry#1#2{\dosecentry{#1}{#2}}
-
-% Subsections.
-\def\subsecentry#1#2#3#4#5{\dosubsecentry{#2.#3.#4\labelspace#1}{#5}}
-\def\unnumbsubsecentry#1#2{\dosubsecentry{#1}{#2}}
-
-% And subsubsections.
-\def\subsubsecentry#1#2#3#4#5#6{%
-  \dosubsubsecentry{#2.#3.#4.#5\labelspace#1}{#6}}
-\def\unnumbsubsubsecentry#1#2{\dosubsubsecentry{#1}{#2}}
-
-
-% This parameter controls the indentation of the various levels.
-\newdimen\tocindent \tocindent = 3pc
-
-% Now for the actual typesetting. In all these, #1 is the text and #2 is the
-% page number.
-%
-% If the toc has to be broken over pages, we would want to be at chapters
-% if at all possible; hence the \penalty.
-\def\dochapentry#1#2{%
-   \penalty-300 \vskip\baselineskip
-   \begingroup
-     \chapentryfonts
-     \tocentry{#1}{\dopageno{#2}}%
-   \endgroup
-   \nobreak\vskip .25\baselineskip
-}
-
-\def\dosecentry#1#2{\begingroup
-  \secentryfonts \leftskip=\tocindent
-  \tocentry{#1}{\dopageno{#2}}%
-\endgroup}
-
-\def\dosubsecentry#1#2{\begingroup
-  \subsecentryfonts \leftskip=2\tocindent
-  \tocentry{#1}{\dopageno{#2}}%
-\endgroup}
-
-\def\dosubsubsecentry#1#2{\begingroup
-  \subsubsecentryfonts \leftskip=3\tocindent
-  \tocentry{#1}{\dopageno{#2}}%
-\endgroup}
-
-% Final typesetting of a toc entry; we use the same \entry macro as for
-% the index entries, but we want to suppress hyphenation here.  (We
-% can't do that in the \entry macro, since index entries might consist
-% of hyphenated-identifiers-that-do-not-fit-on-a-line-and-nothing-else.)
-%
-% \turnoffactive is for the sake of @" used for umlauts.
-\def\tocentry#1#2{\begingroup
-  \hyphenpenalty = 10000
-  \entry{\turnoffactive #1}{\turnoffactive #2}%
-\endgroup}
-
-% Space between chapter (or whatever) number and the title.
-\def\labelspace{\hskip1em \relax}
-
-\def\dopageno#1{{\rm #1}}
-\def\doshortpageno#1{{\rm #1}}
-
-\def\chapentryfonts{\secfonts \rm}
-\def\secentryfonts{\textfonts}
-\let\subsecentryfonts = \textfonts
-\let\subsubsecentryfonts = \textfonts
-
-
-\message{environments,}
-
-% Since these characters are used in examples, it should be an even number of
-% \tt widths. Each \tt character is 1en, so two makes it 1em.
-% Furthermore, these definitions must come after we define our fonts.
-\newbox\dblarrowbox    \newbox\longdblarrowbox
-\newbox\pushcharbox    \newbox\bullbox
-\newbox\equivbox       \newbox\errorbox
-
-\let\ptexequiv = \equiv
-
-%{\tentt
-%\global\setbox\dblarrowbox = \hbox to 1em{\hfil$\Rightarrow$\hfil}
-%\global\setbox\longdblarrowbox = \hbox to 1em{\hfil$\mapsto$\hfil}
-%\global\setbox\pushcharbox = \hbox to 1em{\hfil$\dashv$\hfil}
-%\global\setbox\equivbox = \hbox to 1em{\hfil$\ptexequiv$\hfil}
-% Adapted from the manmac format (p.420 of TeXbook)
-%\global\setbox\bullbox = \hbox to 1em{\kern.15em\vrule height .75ex width .85ex
-%                                      depth .1ex\hfil}
-%}
-
-\def\point{$\star$}
-
-\def\result{\leavevmode\raise.15ex\hbox to 1em{\hfil$\Rightarrow$\hfil}}
-\def\expansion{\leavevmode\raise.1ex\hbox to 1em{\hfil$\mapsto$\hfil}}
-\def\print{\leavevmode\lower.1ex\hbox to 1em{\hfil$\dashv$\hfil}}
-
-\def\equiv{\leavevmode\lower.1ex\hbox to 1em{\hfil$\ptexequiv$\hfil}}
-
-% Adapted from the TeXbook's \boxit.
-{\tentt \global\dimen0 = 3em}% Width of the box.
-\dimen2 = .55pt % Thickness of rules
-% The text. (`r' is open on the right, `e' somewhat less so on the left.)
-\setbox0 = \hbox{\kern-.75pt \tensf error\kern-1.5pt}
-
-\global\setbox\errorbox=\hbox to \dimen0{\hfil
-   \hsize = \dimen0 \advance\hsize by -5.8pt % Space to left+right.
-   \advance\hsize by -2\dimen2 % Rules.
-   \vbox{
-      \hrule height\dimen2
-      \hbox{\vrule width\dimen2 \kern3pt          % Space to left of text.
-         \vtop{\kern2.4pt \box0 \kern2.4pt}% Space above/below.
-         \kern3pt\vrule width\dimen2}% Space to right.
-      \hrule height\dimen2}
-    \hfil}
-
-% The @error{} command.
-\def\error{\leavevmode\lower.7ex\copy\errorbox}
-
-% @tex ... @end tex    escapes into raw Tex temporarily.
-% One exception: @ is still an escape character, so that @end tex works.
-% But \@ or @@ will get a plain tex @ character.
-
-\def\tex{\begingroup
-\catcode `\\=0 \catcode `\{=1 \catcode `\}=2
-\catcode `\$=3 \catcode `\&=4 \catcode `\#=6
-\catcode `\^=7 \catcode `\_=8 \catcode `\~=13 \let~=\tie
-\catcode `\%=14
-\catcode 43=12
-\catcode`\"=12
-\catcode`\==12
-\catcode`\|=12
-\catcode`\<=12
-\catcode`\>=12
-\escapechar=`\\
-%
-\let\~=\ptextilde
-\let\{=\ptexlbrace
-\let\}=\ptexrbrace
-\let\.=\ptexdot
-\let\*=\ptexstar
-\let\dots=\ptexdots
-\def\@{@}%
-\let\bullet=\ptexbullet
-\let\b=\ptexb \let\c=\ptexc \let\i=\ptexi \let\t=\ptext \let\l=\ptexl
-\let\L=\ptexL
-%
-\let\Etex=\endgroup}
-
-% Define @lisp ... @endlisp.
-% @lisp does a \begingroup so it can rebind things,
-% including the definition of @endlisp (which normally is erroneous).
-
-% Amount to narrow the margins by for @lisp.
-\newskip\lispnarrowing \lispnarrowing=0.4in
-
-% This is the definition that ^^M gets inside @lisp, @example, and other
-% such environments.  \null is better than a space, since it doesn't
-% have any width.
-\def\lisppar{\null\endgraf}
-
-% Make each space character in the input produce a normal interword
-% space in the output.  Don't allow a line break at this space, as this
-% is used only in environments like @example, where each line of input
-% should produce a line of output anyway.
-%
-{\obeyspaces %
-\gdef\sepspaces{\obeyspaces\let =\tie}}
-
-% Define \obeyedspace to be our active space, whatever it is.  This is
-% for use in \parsearg.
-{\sepspaces%
-\global\let\obeyedspace= }
-
-% This space is always present above and below environments.
-\newskip\envskipamount \envskipamount = 0pt
-
-% Make spacing and below environment symmetrical.  We use \parskip here
-% to help in doing that, since in @example-like environments \parskip
-% is reset to zero; thus the \afterenvbreak inserts no space -- but the
-% start of the next paragraph will insert \parskip
-%
-\def\aboveenvbreak{{\advance\envskipamount by \parskip
-\endgraf \ifdim\lastskip<\envskipamount
-\removelastskip \penalty-50 \vskip\envskipamount \fi}}
-
-\let\afterenvbreak = \aboveenvbreak
-
-% \nonarrowing is a flag.  If "set", @lisp etc don't narrow margins.
-\let\nonarrowing=\relax
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-% \cartouche: draw rectangle w/rounded corners around argument
-\font\circle=lcircle10
-\newdimen\circthick
-\newdimen\cartouter\newdimen\cartinner
-\newskip\normbskip\newskip\normpskip\newskip\normlskip
-\circthick=\fontdimen8\circle
-%
-\def\ctl{{\circle\char'013\hskip -6pt}}% 6pt from pl file: 1/2charwidth
-\def\ctr{{\hskip 6pt\circle\char'010}}
-\def\cbl{{\circle\char'012\hskip -6pt}}
-\def\cbr{{\hskip 6pt\circle\char'011}}
-\def\carttop{\hbox to \cartouter{\hskip\lskip
-       \ctl\leaders\hrule height\circthick\hfil\ctr
-       \hskip\rskip}}
-\def\cartbot{\hbox to \cartouter{\hskip\lskip
-       \cbl\leaders\hrule height\circthick\hfil\cbr
-       \hskip\rskip}}
-%
-\newskip\lskip\newskip\rskip
-
-\long\def\cartouche{%
-\begingroup
-       \lskip=\leftskip \rskip=\rightskip
-       \leftskip=0pt\rightskip=0pt %we want these *outside*.
-       \cartinner=\hsize \advance\cartinner by-\lskip
-                         \advance\cartinner by-\rskip
-       \cartouter=\hsize
-       \advance\cartouter by 18pt % allow for 3pt kerns on either
-%                                   side, and for 6pt waste from
-%                                   each corner char
-       \normbskip=\baselineskip \normpskip=\parskip \normlskip=\lineskip
-       % Flag to tell @lisp, etc., not to narrow margin.
-       \let\nonarrowing=\comment
-       \vbox\bgroup
-               \baselineskip=0pt\parskip=0pt\lineskip=0pt
-               \carttop
-               \hbox\bgroup
-                       \hskip\lskip
-                       \vrule\kern3pt
-                       \vbox\bgroup
-                               \hsize=\cartinner
-                               \kern3pt
-                               \begingroup
-                                       \baselineskip=\normbskip
-                                       \lineskip=\normlskip
-                                       \parskip=\normpskip
-                                       \vskip -\parskip
-\def\Ecartouche{%
-                               \endgroup
-                               \kern3pt
-                       \egroup
-                       \kern3pt\vrule
-                       \hskip\rskip
-               \egroup
-               \cartbot
-       \egroup
-\endgroup
-}}
-
-
-% This macro is called at the beginning of all the @example variants,
-% inside a group.
-\def\nonfillstart{%
-  \aboveenvbreak
-  \inENV % This group ends at the end of the body
-  \hfuzz = 12pt % Don't be fussy
-  \sepspaces % Make spaces be word-separators rather than space tokens.
-  \singlespace
-  \let\par = \lisppar % don't ignore blank lines
-  \obeylines % each line of input is a line of output
-  \parskip = 0pt
-  \parindent = 0pt
-  \emergencystretch = 0pt % don't try to avoid overfull boxes
-  % @cartouche defines \nonarrowing to inhibit narrowing
-  % at next level down.
-  \ifx\nonarrowing\relax
-    \advance \leftskip by \lispnarrowing
-    \exdentamount=\lispnarrowing
-    \let\exdent=\nofillexdent
-    \let\nonarrowing=\relax
-  \fi
-}
-
-% To ending an @example-like environment, we first end the paragraph
-% (via \afterenvbreak's vertical glue), and then the group.  That way we
-% keep the zero \parskip that the environments set -- \parskip glue
-% will be inserted at the beginning of the next paragraph in the
-% document, after the environment.
-%
-\def\nonfillfinish{\afterenvbreak\endgroup}%
-
-% This macro is
-\def\lisp{\begingroup
-  \nonfillstart
-  \let\Elisp = \nonfillfinish
-  \tt
-  \rawbackslash % have \ input char produce \ char from current font
-  \gobble
-}
-
-% Define the \E... control sequence only if we are inside the
-% environment, so the error checking in \end will work.
-%
-% We must call \lisp last in the definition, since it reads the
-% return following the @example (or whatever) command.
-%
-\def\example{\begingroup \def\Eexample{\nonfillfinish\endgroup}\lisp}
-\def\smallexample{\begingroup \def\Esmallexample{\nonfillfinish\endgroup}\lisp}
-\def\smalllisp{\begingroup \def\Esmalllisp{\nonfillfinish\endgroup}\lisp}
-
-% @smallexample and @smalllisp.  This is not used unless the @smallbook
-% command is given.  Originally contributed by Pavel@xerox.
-%
-\def\smalllispx{\begingroup
-  \nonfillstart
-  \let\Esmalllisp = \nonfillfinish
-  \let\Esmallexample = \nonfillfinish
-  %
-  % Smaller interline space and fonts for small examples.
-  \setleading{10pt}%
-  \indexfonts \tt
-  \rawbackslash % make \ output the \ character from the current font (tt)
-  \gobble
-}
-
-% This is @display; same as @lisp except use roman font.
-%
-\def\display{\begingroup
-  \nonfillstart
-  \let\Edisplay = \nonfillfinish
-  \gobble
-}
-
-% This is @format; same as @display except don't narrow margins.
-%
-\def\format{\begingroup
-  \let\nonarrowing = t
-  \nonfillstart
-  \let\Eformat = \nonfillfinish
-  \gobble
-}
-
-% @flushleft (same as @format) and @flushright.
-%
-\def\flushleft{\begingroup
-  \let\nonarrowing = t
-  \nonfillstart
-  \let\Eflushleft = \nonfillfinish
-  \gobble
-}
-\def\flushright{\begingroup
-  \let\nonarrowing = t
-  \nonfillstart
-  \let\Eflushright = \nonfillfinish
-  \advance\leftskip by 0pt plus 1fill
-  \gobble}
-
-% @quotation does normal linebreaking (hence we can't use \nonfillstart)
-% and narrows the margins.
-%
-\def\quotation{%
-  \begingroup\inENV %This group ends at the end of the @quotation body
-  {\parskip=0pt \aboveenvbreak}% because \aboveenvbreak inserts \parskip
-  \singlespace
-  \parindent=0pt
-  % We have retained a nonzero parskip for the environment, since we're
-  % doing normal filling. So to avoid extra space below the environment...
-  \def\Equotation{\parskip = 0pt \nonfillfinish}%
-  %
-  % @cartouche defines \nonarrowing to inhibit narrowing at next level down.
-  \ifx\nonarrowing\relax
-    \advance\leftskip by \lispnarrowing
-    \advance\rightskip by \lispnarrowing
-    \exdentamount = \lispnarrowing
-    \let\nonarrowing = \relax
-  \fi
-}
-
-\message{defuns,}
-% Define formatter for defuns
-% First, allow user to change definition object font (\df) internally
-\def\setdeffont #1 {\csname DEF#1\endcsname}
-
-\newskip\defbodyindent \defbodyindent=.4in
-\newskip\defargsindent \defargsindent=50pt
-\newskip\deftypemargin \deftypemargin=12pt
-\newskip\deflastargmargin \deflastargmargin=18pt
-
-\newcount\parencount
-% define \functionparens, which makes ( and ) and & do special things.
-% \functionparens affects the group it is contained in.
-\def\activeparens{%
-\catcode`\(=\active \catcode`\)=\active \catcode`\&=\active
-\catcode`\[=\active \catcode`\]=\active}
-
-% Make control sequences which act like normal parenthesis chars.
-\let\lparen = ( \let\rparen = )
-
-{\activeparens % Now, smart parens don't turn on until &foo (see \amprm)
-
-% Be sure that we always have a definition for `(', etc.  For example,
-% if the fn name has parens in it, \boldbrax will not be in effect yet,
-% so TeX would otherwise complain about undefined control sequence.
-\global\let(=\lparen \global\let)=\rparen
-\global\let[=\lbrack \global\let]=\rbrack
-
-\gdef\functionparens{\boldbrax\let&=\amprm\parencount=0 }
-\gdef\boldbrax{\let(=\opnr\let)=\clnr\let[=\lbrb\let]=\rbrb}
-% This is used to turn on special parens
-% but make & act ordinary (given that it's active).
-\gdef\boldbraxnoamp{\let(=\opnr\let)=\clnr\let[=\lbrb\let]=\rbrb\let&=\ampnr}
-
-% Definitions of (, ) and & used in args for functions.
-% This is the definition of ( outside of all parentheses.
-\gdef\oprm#1 {{\rm\char`\(}#1 \bf \let(=\opnested %
-\global\advance\parencount by 1 }
-%
-% This is the definition of ( when already inside a level of parens.
-\gdef\opnested{\char`\(\global\advance\parencount by 1 }
-%
-\gdef\clrm{% Print a paren in roman if it is taking us back to depth of 0.
-% also in that case restore the outer-level definition of (.
-\ifnum \parencount=1 {\rm \char `\)}\sl \let(=\oprm \else \char `\) \fi
-\global\advance \parencount by -1 }
-% If we encounter &foo, then turn on ()-hacking afterwards
-\gdef\amprm#1 {{\rm\&#1}\let(=\oprm \let)=\clrm\ }
-%
-\gdef\normalparens{\boldbrax\let&=\ampnr}
-} % End of definition inside \activeparens
-%% These parens (in \boldbrax) actually are a little bolder than the
-%% contained text.  This is especially needed for [ and ]
-\def\opnr{{\sf\char`\(}} \def\clnr{{\sf\char`\)}} \def\ampnr{\&}
-\def\lbrb{{\bf\char`\[}} \def\rbrb{{\bf\char`\]}}
-
-% First, defname, which formats the header line itself.
-% #1 should be the function name.
-% #2 should be the type of definition, such as "Function".
-
-\def\defname #1#2{%
-% Get the values of \leftskip and \rightskip as they were
-% outside the @def...
-\dimen2=\leftskip
-\advance\dimen2 by -\defbodyindent
-\dimen3=\rightskip
-\advance\dimen3 by -\defbodyindent
-\noindent        %
-\setbox0=\hbox{\hskip \deflastargmargin{\rm #2}\hskip \deftypemargin}%
-\dimen0=\hsize \advance \dimen0 by -\wd0 % compute size for first line
-\dimen1=\hsize \advance \dimen1 by -\defargsindent %size for continuations
-\parshape 2 0in \dimen0 \defargsindent \dimen1     %
-% Now output arg 2 ("Function" or some such)
-% ending at \deftypemargin from the right margin,
-% but stuck inside a box of width 0 so it does not interfere with linebreaking
-{% Adjust \hsize to exclude the ambient margins,
-% so that \rightline will obey them.
-\advance \hsize by -\dimen2 \advance \hsize by -\dimen3
-\rlap{\rightline{{\rm #2}\hskip \deftypemargin}}}%
-% Make all lines underfull and no complaints:
-\tolerance=10000 \hbadness=10000
-\advance\leftskip by -\defbodyindent
-\exdentamount=\defbodyindent
-{\df #1}\enskip        % Generate function name
-}
-
-% Actually process the body of a definition
-% #1 should be the terminating control sequence, such as \Edefun.
-% #2 should be the "another name" control sequence, such as \defunx.
-% #3 should be the control sequence that actually processes the header,
-%    such as \defunheader.
-
-\def\defparsebody #1#2#3{\begingroup\inENV% Environment for definitionbody
-\medbreak %
-% Define the end token that this defining construct specifies
-% so that it will exit this group.
-\def#1{\endgraf\endgroup\medbreak}%
-\def#2{\begingroup\obeylines\activeparens\spacesplit#3}%
-\parindent=0in
-\advance\leftskip by \defbodyindent \advance \rightskip by \defbodyindent
-\exdentamount=\defbodyindent
-\begingroup %
-\catcode 61=\active % 61 is `='
-\obeylines\activeparens\spacesplit#3}
-
-\def\defmethparsebody #1#2#3#4 {\begingroup\inENV %
-\medbreak %
-% Define the end token that this defining construct specifies
-% so that it will exit this group.
-\def#1{\endgraf\endgroup\medbreak}%
-\def#2##1 {\begingroup\obeylines\activeparens\spacesplit{#3{##1}}}%
-\parindent=0in
-\advance\leftskip by \defbodyindent \advance \rightskip by \defbodyindent
-\exdentamount=\defbodyindent
-\begingroup\obeylines\activeparens\spacesplit{#3{#4}}}
-
-\def\defopparsebody #1#2#3#4#5 {\begingroup\inENV %
-\medbreak %
-% Define the end token that this defining construct specifies
-% so that it will exit this group.
-\def#1{\endgraf\endgroup\medbreak}%
-\def#2##1 ##2 {\def#4{##1}%
-\begingroup\obeylines\activeparens\spacesplit{#3{##2}}}%
-\parindent=0in
-\advance\leftskip by \defbodyindent \advance \rightskip by \defbodyindent
-\exdentamount=\defbodyindent
-\begingroup\obeylines\activeparens\spacesplit{#3{#5}}}
-
-% These parsing functions are similar to the preceding ones
-% except that they do not make parens into active characters.
-% These are used for "variables" since they have no arguments.
-
-\def\defvarparsebody #1#2#3{\begingroup\inENV% Environment for definitionbody
-\medbreak %
-% Define the end token that this defining construct specifies
-% so that it will exit this group.
-\def#1{\endgraf\endgroup\medbreak}%
-\def#2{\begingroup\obeylines\spacesplit#3}%
-\parindent=0in
-\advance\leftskip by \defbodyindent \advance \rightskip by \defbodyindent
-\exdentamount=\defbodyindent
-\begingroup %
-\catcode 61=\active %
-\obeylines\spacesplit#3}
-
-% This is used for \def{tp,vr}parsebody.  It could probably be used for
-% some of the others, too, with some judicious conditionals.
-% 
-\def\parsebodycommon#1#2#3{%
-  \begingroup\inENV %
-  \medbreak %
-  % Define the end token that this defining construct specifies
-  % so that it will exit this group.
-  \def#1{\endgraf\endgroup\medbreak}%
-  \def#2##1 {\begingroup\obeylines\spacesplit{#3{##1}}}%
-  \parindent=0in
-  \advance\leftskip by \defbodyindent \advance \rightskip by \defbodyindent
-  \exdentamount=\defbodyindent
-  \begingroup\obeylines
-}
-
-\def\defvrparsebody#1#2#3#4 {%
-  \parsebodycommon{#1}{#2}{#3}%
-  \spacesplit{#3{#4}}%
-}
-
-% This loses on `@deftp {Data Type} {struct termios}' -- it thinks the
-% type is just `struct', because we lose the braces in `{struct
-% termios}' when \spacesplit reads its undelimited argument.  Sigh.
-% \let\deftpparsebody=\defvrparsebody
-%
-% So, to get around this, we put \empty in with the type name.  That
-% way, TeX won't find exactly `{...}' as an undelimited argument, and
-% won't strip off the braces.
-%
-\def\deftpparsebody #1#2#3#4 {%
-  \parsebodycommon{#1}{#2}{#3}%
-  \spacesplit{\parsetpheaderline{#3{#4}}}\empty
-}
-
-% Fine, but then we have to eventually remove the \empty *and* the
-% braces (if any).  That's what this does, putting the result in \tptemp.
-% 
-\def\removeemptybraces\empty#1\relax{\def\tptemp{#1}}%
-
-% After \spacesplit has done its work, this is called -- #1 is the final
-% thing to call, #2 the type name (which starts with \empty), and #3
-% (which might be empty) the arguments.
-% 
-\def\parsetpheaderline#1#2#3{%
-  \removeemptybraces#2\relax
-  #1{\tptemp}{#3}%
-}%
-
-\def\defopvarparsebody #1#2#3#4#5 {\begingroup\inENV %
-\medbreak %
-% Define the end token that this defining construct specifies
-% so that it will exit this group.
-\def#1{\endgraf\endgroup\medbreak}%
-\def#2##1 ##2 {\def#4{##1}%
-\begingroup\obeylines\spacesplit{#3{##2}}}%
-\parindent=0in
-\advance\leftskip by \defbodyindent \advance \rightskip by \defbodyindent
-\exdentamount=\defbodyindent
-\begingroup\obeylines\spacesplit{#3{#5}}}
-
-% Split up #2 at the first space token.
-% call #1 with two arguments:
-%  the first is all of #2 before the space token,
-%  the second is all of #2 after that space token.
-% If #2 contains no space token, all of it is passed as the first arg
-% and the second is passed as empty.
-
-{\obeylines
-\gdef\spacesplit#1#2^^M{\endgroup\spacesplitfoo{#1}#2 \relax\spacesplitfoo}%
-\long\gdef\spacesplitfoo#1#2 #3#4\spacesplitfoo{%
-\ifx\relax #3%
-#1{#2}{}\else #1{#2}{#3#4}\fi}}
-
-% So much for the things common to all kinds of definitions.
-
-% Define @defun.
-
-% First, define the processing that is wanted for arguments of \defun
-% Use this to expand the args and terminate the paragraph they make up
-
-\def\defunargs #1{\functionparens \sl
-% Expand, preventing hyphenation at `-' chars.
-% Note that groups don't affect changes in \hyphenchar.
-\hyphenchar\tensl=0
-#1%
-\hyphenchar\tensl=45
-\ifnum\parencount=0 \else \errmessage{unbalanced parens in @def arguments}\fi%
-\interlinepenalty=10000
-\advance\rightskip by 0pt plus 1fil
-\endgraf\penalty 10000\vskip -\parskip\penalty 10000%
-}
-
-\def\deftypefunargs #1{%
-% Expand, preventing hyphenation at `-' chars.
-% Note that groups don't affect changes in \hyphenchar.
-% Use \boldbraxnoamp, not \functionparens, so that & is not special.
-\boldbraxnoamp
-\tclose{#1}% avoid \code because of side effects on active chars
-\interlinepenalty=10000
-\advance\rightskip by 0pt plus 1fil
-\endgraf\penalty 10000\vskip -\parskip\penalty 10000%
-}
-
-% Do complete processing of one @defun or @defunx line already parsed.
-
-% @deffn Command forward-char nchars
-
-\def\deffn{\defmethparsebody\Edeffn\deffnx\deffnheader}
-
-\def\deffnheader #1#2#3{\doind {fn}{\code{#2}}%
-\begingroup\defname {#2}{#1}\defunargs{#3}\endgroup %
-\catcode 61=\other % Turn off change made in \defparsebody
-}
-
-% @defun == @deffn Function
-
-\def\defun{\defparsebody\Edefun\defunx\defunheader}
-
-\def\defunheader #1#2{\doind {fn}{\code{#1}}% Make entry in function index
-\begingroup\defname {#1}{Function}%
-\defunargs {#2}\endgroup %
-\catcode 61=\other % Turn off change made in \defparsebody
-}
-
-% @deftypefun int foobar (int @var{foo}, float @var{bar})
-
-\def\deftypefun{\defparsebody\Edeftypefun\deftypefunx\deftypefunheader}
-
-% #1 is the data type.  #2 is the name and args.
-\def\deftypefunheader #1#2{\deftypefunheaderx{#1}#2 \relax}
-% #1 is the data type, #2 the name, #3 the args.
-\def\deftypefunheaderx #1#2 #3\relax{%
-\doind {fn}{\code{#2}}% Make entry in function index
-\begingroup\defname {\defheaderxcond#1\relax$$$#2}{Function}%
-\deftypefunargs {#3}\endgroup %
-\catcode 61=\other % Turn off change made in \defparsebody
-}
-
-% @deftypefn {Library Function} int foobar (int @var{foo}, float @var{bar})
-
-\def\deftypefn{\defmethparsebody\Edeftypefn\deftypefnx\deftypefnheader}
-
-% \defheaderxcond#1\relax$$$
-% puts #1 in @code, followed by a space, but does nothing if #1 is null.
-\def\defheaderxcond#1#2$$${\ifx#1\relax\else\code{#1#2} \fi}
-
-% #1 is the classification.  #2 is the data type.  #3 is the name and args.
-\def\deftypefnheader #1#2#3{\deftypefnheaderx{#1}{#2}#3 \relax}
-% #1 is the classification, #2 the data type, #3 the name, #4 the args.
-\def\deftypefnheaderx #1#2#3 #4\relax{%
-\doind {fn}{\code{#3}}% Make entry in function index
-\begingroup
-\normalparens % notably, turn off `&' magic, which prevents
-%               at least some C++ text from working
-\defname {\defheaderxcond#2\relax$$$#3}{#1}%
-\deftypefunargs {#4}\endgroup %
-\catcode 61=\other % Turn off change made in \defparsebody
-}
-
-% @defmac == @deffn Macro
-
-\def\defmac{\defparsebody\Edefmac\defmacx\defmacheader}
-
-\def\defmacheader #1#2{\doind {fn}{\code{#1}}% Make entry in function index
-\begingroup\defname {#1}{Macro}%
-\defunargs {#2}\endgroup %
-\catcode 61=\other % Turn off change made in \defparsebody
-}
-
-% @defspec == @deffn Special Form
-
-\def\defspec{\defparsebody\Edefspec\defspecx\defspecheader}
-
-\def\defspecheader #1#2{\doind {fn}{\code{#1}}% Make entry in function index
-\begingroup\defname {#1}{Special Form}%
-\defunargs {#2}\endgroup %
-\catcode 61=\other % Turn off change made in \defparsebody
-}
-
-% This definition is run if you use @defunx
-% anywhere other than immediately after a @defun or @defunx.
-
-\def\deffnx #1 {\errmessage{@deffnx in invalid context}}
-\def\defunx #1 {\errmessage{@defunx in invalid context}}
-\def\defmacx #1 {\errmessage{@defmacx in invalid context}}
-\def\defspecx #1 {\errmessage{@defspecx in invalid context}}
-\def\deftypefnx #1 {\errmessage{@deftypefnx in invalid context}}
-\def\deftypeunx #1 {\errmessage{@deftypeunx in invalid context}}
-
-% @defmethod, and so on
-
-% @defop {Funny Method} foo-class frobnicate argument
-
-\def\defop #1 {\def\defoptype{#1}%
-\defopparsebody\Edefop\defopx\defopheader\defoptype}
-
-\def\defopheader #1#2#3{%
-\dosubind {fn}{\code{#2}}{on #1}% Make entry in function index
-\begingroup\defname {#2}{\defoptype{} on #1}%
-\defunargs {#3}\endgroup %
-}
-
-% @defmethod == @defop Method
-
-\def\defmethod{\defmethparsebody\Edefmethod\defmethodx\defmethodheader}
-
-\def\defmethodheader #1#2#3{%
-\dosubind {fn}{\code{#2}}{on #1}% entry in function index
-\begingroup\defname {#2}{Method on #1}%
-\defunargs {#3}\endgroup %
-}
-
-% @defcv {Class Option} foo-class foo-flag
-
-\def\defcv #1 {\def\defcvtype{#1}%
-\defopvarparsebody\Edefcv\defcvx\defcvarheader\defcvtype}
-
-\def\defcvarheader #1#2#3{%
-\dosubind {vr}{\code{#2}}{of #1}% Make entry in var index
-\begingroup\defname {#2}{\defcvtype{} of #1}%
-\defvarargs {#3}\endgroup %
-}
-
-% @defivar == @defcv {Instance Variable}
-
-\def\defivar{\defvrparsebody\Edefivar\defivarx\defivarheader}
-
-\def\defivarheader #1#2#3{%
-\dosubind {vr}{\code{#2}}{of #1}% Make entry in var index
-\begingroup\defname {#2}{Instance Variable of #1}%
-\defvarargs {#3}\endgroup %
-}
-
-% These definitions are run if you use @defmethodx, etc.,
-% anywhere other than immediately after a @defmethod, etc.
-
-\def\defopx #1 {\errmessage{@defopx in invalid context}}
-\def\defmethodx #1 {\errmessage{@defmethodx in invalid context}}
-\def\defcvx #1 {\errmessage{@defcvx in invalid context}}
-\def\defivarx #1 {\errmessage{@defivarx in invalid context}}
-
-% Now @defvar
-
-% First, define the processing that is wanted for arguments of @defvar.
-% This is actually simple: just print them in roman.
-% This must expand the args and terminate the paragraph they make up
-\def\defvarargs #1{\normalparens #1%
-\interlinepenalty=10000
-\endgraf\penalty 10000\vskip -\parskip\penalty 10000}
-
-% @defvr Counter foo-count
-
-\def\defvr{\defvrparsebody\Edefvr\defvrx\defvrheader}
-
-\def\defvrheader #1#2#3{\doind {vr}{\code{#2}}%
-\begingroup\defname {#2}{#1}\defvarargs{#3}\endgroup}
-
-% @defvar == @defvr Variable
-
-\def\defvar{\defvarparsebody\Edefvar\defvarx\defvarheader}
-
-\def\defvarheader #1#2{\doind {vr}{\code{#1}}% Make entry in var index
-\begingroup\defname {#1}{Variable}%
-\defvarargs {#2}\endgroup %
-}
-
-% @defopt == @defvr {User Option}
-
-\def\defopt{\defvarparsebody\Edefopt\defoptx\defoptheader}
-
-\def\defoptheader #1#2{\doind {vr}{\code{#1}}% Make entry in var index
-\begingroup\defname {#1}{User Option}%
-\defvarargs {#2}\endgroup %
-}
-
-% @deftypevar int foobar
-
-\def\deftypevar{\defvarparsebody\Edeftypevar\deftypevarx\deftypevarheader}
-
-% #1 is the data type.  #2 is the name.
-\def\deftypevarheader #1#2{%
-\doind {vr}{\code{#2}}% Make entry in variables index
-\begingroup\defname {\defheaderxcond#1\relax$$$#2}{Variable}%
-\interlinepenalty=10000
-\endgraf\penalty 10000\vskip -\parskip\penalty 10000
-\endgroup}
-
-% @deftypevr {Global Flag} int enable
-
-\def\deftypevr{\defvrparsebody\Edeftypevr\deftypevrx\deftypevrheader}
-
-\def\deftypevrheader #1#2#3{\doind {vr}{\code{#3}}%
-\begingroup\defname {\defheaderxcond#2\relax$$$#3}{#1}
-\interlinepenalty=10000
-\endgraf\penalty 10000\vskip -\parskip\penalty 10000
-\endgroup}
-
-% This definition is run if you use @defvarx
-% anywhere other than immediately after a @defvar or @defvarx.
-
-\def\defvrx #1 {\errmessage{@defvrx in invalid context}}
-\def\defvarx #1 {\errmessage{@defvarx in invalid context}}
-\def\defoptx #1 {\errmessage{@defoptx in invalid context}}
-\def\deftypevarx #1 {\errmessage{@deftypevarx in invalid context}}
-\def\deftypevrx #1 {\errmessage{@deftypevrx in invalid context}}
-
-% Now define @deftp
-% Args are printed in bold, a slight difference from @defvar.
-
-\def\deftpargs #1{\bf \defvarargs{#1}}
-
-% @deftp Class window height width ...
-
-\def\deftp{\deftpparsebody\Edeftp\deftpx\deftpheader}
-
-\def\deftpheader #1#2#3{\doind {tp}{\code{#2}}%
-\begingroup\defname {#2}{#1}\deftpargs{#3}\endgroup}
-
-% This definition is run if you use @deftpx, etc
-% anywhere other than immediately after a @deftp, etc.
-
-\def\deftpx #1 {\errmessage{@deftpx in invalid context}}
-
-\message{cross reference,}
-% Define cross-reference macros
-\newwrite \auxfile
-
-\newif\ifhavexrefs  % True if xref values are known.
-\newif\ifwarnedxrefs  % True if we warned once that they aren't known.
-
-% \setref{foo} defines a cross-reference point named foo.
-
-\def\setref#1{%
-\dosetq{#1-title}{Ytitle}%
-\dosetq{#1-pg}{Ypagenumber}%
-\dosetq{#1-snt}{Ysectionnumberandtype}}
-
-\def\unnumbsetref#1{%
-\dosetq{#1-title}{Ytitle}%
-\dosetq{#1-pg}{Ypagenumber}%
-\dosetq{#1-snt}{Ynothing}}
-
-\def\appendixsetref#1{%
-\dosetq{#1-title}{Ytitle}%
-\dosetq{#1-pg}{Ypagenumber}%
-\dosetq{#1-snt}{Yappendixletterandtype}}
-
-% \xref, \pxref, and \ref generate cross-references to specified points.
-% For \xrefX, #1 is the node name, #2 the name of the Info
-% cross-reference, #3 the printed node name, #4 the name of the Info
-% file, #5 the name of the printed manual.  All but the node name can be
-% omitted.
-%
-\def\pxref#1{\putwordsee{} \xrefX[#1,,,,,,,]}
-\def\xref#1{\putwordSee{} \xrefX[#1,,,,,,,]}
-\def\ref#1{\xrefX[#1,,,,,,,]}
-\def\xrefX[#1,#2,#3,#4,#5,#6]{\begingroup
-  \def\printedmanual{\ignorespaces #5}%
-  \def\printednodename{\ignorespaces #3}%
-  \setbox1=\hbox{\printedmanual}%
-  \setbox0=\hbox{\printednodename}%
-  \ifdim \wd0 = 0pt
-    % No printed node name was explicitly given.
-    \ifx\SETxref-automatic-section-title\relax %
-      % Use the actual chapter/section title appear inside
-      % the square brackets.  Use the real section title if we have it.
-      \ifdim \wd1>0pt%
-        % It is in another manual, so we don't have it.
-        \def\printednodename{\ignorespaces #1}%
-      \else
-        \ifhavexrefs
-          % We know the real title if we have the xref values.
-          \def\printednodename{\refx{#1-title}}%
-        \else
-          % Otherwise just copy the Info node name.
-          \def\printednodename{\ignorespaces #1}%
-        \fi%
-      \fi
-      \def\printednodename{#1-title}%
-    \else
-      % Use the node name inside the square brackets.
-      \def\printednodename{\ignorespaces #1}%
-    \fi
-  \fi
-  %
-  % If we use \unhbox0 and \unhbox1 to print the node names, TeX does not
-  % insert empty discretionaries after hyphens, which means that it will
-  % not find a line break at a hyphen in a node names.  Since some manuals
-  % are best written with fairly long node names, containing hyphens, this
-  % is a loss.  Therefore, we give the text of the node name again, so it
-  % is as if TeX is seeing it for the first time.
-  \ifdim \wd1 > 0pt
-    \putwordsection{} ``\printednodename'' in \cite{\printedmanual}%
-  \else
-    % _ (for example) has to be the character _ for the purposes of the
-    % control sequence corresponding to the node, but it has to expand
-    % into the usual \leavevmode...\vrule stuff for purposes of
-    % printing. So we \turnoffactive for the \refx-snt, back on for the
-    % printing, back off for the \refx-pg.
-    {\turnoffactive \refx{#1-snt}{}}%
-    \space [\printednodename],\space
-    \turnoffactive \putwordpage\tie\refx{#1-pg}{}%
-  \fi
-\endgroup}
-
-% \dosetq is the interface for calls from other macros
-
-% Use \turnoffactive so that punctuation chars such as underscore
-% work in node names.
-\def\dosetq #1#2{{\let\folio=0 \turnoffactive \auxhat%
-\edef\next{\write\auxfile{\internalsetq {#1}{#2}}}%
-\next}}
-
-% \internalsetq {foo}{page} expands into
-% CHARACTERS 'xrdef {foo}{...expansion of \Ypage...}
-% When the aux file is read, ' is the escape character
-
-\def\internalsetq #1#2{'xrdef {#1}{\csname #2\endcsname}}
-
-% Things to be expanded by \internalsetq
-
-\def\Ypagenumber{\folio}
-
-\def\Ytitle{\thissection}
-
-\def\Ynothing{}
-
-\def\Ysectionnumberandtype{%
-\ifnum\secno=0 \putwordChapter\xreftie\the\chapno %
-\else \ifnum \subsecno=0 \putwordSection\xreftie\the\chapno.\the\secno %
-\else \ifnum \subsubsecno=0 %
-\putwordSection\xreftie\the\chapno.\the\secno.\the\subsecno %
-\else %
-\putwordSection\xreftie\the\chapno.\the\secno.\the\subsecno.\the\subsubsecno %
-\fi \fi \fi }
-
-\def\Yappendixletterandtype{%
-\ifnum\secno=0 \putwordAppendix\xreftie'char\the\appendixno{}%
-\else \ifnum \subsecno=0 \putwordSection\xreftie'char\the\appendixno.\the\secno %
-\else \ifnum \subsubsecno=0 %
-\putwordSection\xreftie'char\the\appendixno.\the\secno.\the\subsecno %
-\else %
-\putwordSection\xreftie'char\the\appendixno.\the\secno.\the\subsecno.\the\subsubsecno %
-\fi \fi \fi }
-
-\gdef\xreftie{'tie}
-
-% Use TeX 3.0's \inputlineno to get the line number, for better error
-% messages, but if we're using an old version of TeX, don't do anything.
-%
-\ifx\inputlineno\thisisundefined
-  \let\linenumber = \empty % Non-3.0.
-\else
-  \def\linenumber{\the\inputlineno:\space}
-\fi
-
-% Define \refx{NAME}{SUFFIX} to reference a cross-reference string named NAME.
-% If its value is nonempty, SUFFIX is output afterward.
-
-\def\refx#1#2{%
-  \expandafter\ifx\csname X#1\endcsname\relax
-    % If not defined, say something at least.
-    $\langle$un\-de\-fined$\rangle$%
-    \ifhavexrefs
-      \message{\linenumber Undefined cross reference `#1'.}%
-    \else
-      \ifwarnedxrefs\else
-        \global\warnedxrefstrue
-        \message{Cross reference values unknown; you must run TeX again.}%
-      \fi
-    \fi
-  \else
-    % It's defined, so just use it.
-    \csname X#1\endcsname
-  \fi
-  #2% Output the suffix in any case.
-}
-
-% Read the last existing aux file, if any.  No error if none exists.
-
-% This is the macro invoked by entries in the aux file.
-\def\xrdef #1#2{
-{\catcode`\'=\other\expandafter \gdef \csname X#1\endcsname {#2}}}
-
-\def\readauxfile{%
-\begingroup
-\catcode `\^^@=\other
-\catcode `\\ 1=\other
-\catcode `\\ 2=\other
-\catcode `\^^C=\other
-\catcode `\^^D=\other
-\catcode `\^^E=\other
-\catcode `\^^F=\other
-\catcode `\^^G=\other
-\catcode `\^^H=\other
-\catcode `\\v=\other
-\catcode `\^^L=\other
-\catcode `\\ e=\other
-\catcode `\\ f=\other
-\catcode `\\10=\other
-\catcode `\\11=\other
-\catcode `\\12=\other
-\catcode `\\13=\other
-\catcode `\\14=\other
-\catcode `\\15=\other
-\catcode `\\16=\other
-\catcode `\\17=\other
-\catcode `\\18=\other
-\catcode `\\19=\other
-\catcode 26=\other
-\catcode `\^^[=\other
-\catcode `\^^\=\other
-\catcode `\^^]=\other
-\catcode `\^^^=\other
-\catcode `\^^_=\other
-\catcode `\@=\other
-\catcode `\^=\other
-\catcode `\~=\other
-\catcode `\[=\other
-\catcode `\]=\other
-\catcode`\"=\other
-\catcode`\_=\other
-\catcode`\|=\other
-\catcode`\<=\other
-\catcode`\>=\other
-\catcode `\$=\other
-\catcode `\#=\other
-\catcode `\&=\other
-% `\+ does not work, so use 43.
-\catcode 43=\other
-% Make the characters 128-255 be printing characters
-{%
-  \count 1=128
-  \def\loop{%
-    \catcode\count 1=\other
-    \advance\count 1 by 1
-    \ifnum \count 1<256 \loop \fi
-  }%
-}%
-% the aux file uses ' as the escape.
-% Turn off \ as an escape so we do not lose on
-% entries which were dumped with control sequences in their names.
-% For example, 'xrdef {$\leq $-fun}{page ...} made by @defun ^^
-% Reference to such entries still does not work the way one would wish,
-% but at least they do not bomb out when the aux file is read in.
-\catcode `\{=1 \catcode `\}=2
-\catcode `\%=\other
-\catcode `\'=0
-\catcode`\^=7 % to make ^^e4 etc usable in xref tags 
-\catcode `\\=\other
-\openin 1 \jobname.aux
-\ifeof 1 \else \closein 1 \input \jobname.aux \global\havexrefstrue
-\global\warnedobstrue
-\fi
-% Open the new aux file.  Tex will close it automatically at exit.
-\openout \auxfile=\jobname.aux
-\endgroup}
-
-
-% Footnotes.
-
-\newcount \footnoteno
-
-% The trailing space in the following definition for supereject is
-% vital for proper filling; pages come out unaligned when you do a
-% pagealignmacro call if that space before the closing brace is
-% removed.
-\def\supereject{\par\penalty -20000\footnoteno =0 }
-
-% @footnotestyle is meaningful for info output only..
-\let\footnotestyle=\comment
-
-\let\ptexfootnote=\footnote
-
-{\catcode `\@=11
-%
-% Auto-number footnotes.  Otherwise like plain.
-\gdef\footnote{%
-  \global\advance\footnoteno by \@ne
-  \edef\thisfootno{$^{\the\footnoteno}$}%
-  %
-  % In case the footnote comes at the end of a sentence, preserve the
-  % extra spacing after we do the footnote number.
-  \let\@sf\empty
-  \ifhmode\edef\@sf{\spacefactor\the\spacefactor}\/\fi
-  %
-  % Remove inadvertent blank space before typesetting the footnote number.
-  \unskip
-  \thisfootno\@sf
-  \footnotezzz
-}%
-
-% Don't bother with the trickery in plain.tex to not require the
-% footnote text as a parameter.  Our footnotes don't need to be so general.
-%
-\long\gdef\footnotezzz#1{\insert\footins{%
-  % We want to typeset this text as a normal paragraph, even if the
-  % footnote reference occurs in (for example) a display environment.
-  % So reset some parameters.
-  \interlinepenalty\interfootnotelinepenalty
-  \splittopskip\ht\strutbox % top baseline for broken footnotes
-  \splitmaxdepth\dp\strutbox
-  \floatingpenalty\@MM
-  \leftskip\z@skip
-  \rightskip\z@skip
-  \spaceskip\z@skip
-  \xspaceskip\z@skip
-  \parindent\defaultparindent
-  %
-  % Hang the footnote text off the number.
-  \hang
-  \textindent{\thisfootno}%
-  %
-  % Don't crash into the line above the footnote text.  Since this
-  % expands into a box, it must come within the paragraph, lest it
-  % provide a place where TeX can split the footnote.
-  \footstrut
-  #1\strut}%
-}
-
-}%end \catcode `\@=11
-
-% Set the baselineskip to #1, and the lineskip and strut size
-% correspondingly.  There is no deep meaning behind these magic numbers
-% used as factors; they just match (closely enough) what Knuth defined.
-%
-\def\lineskipfactor{.08333}
-\def\strutheightpercent{.70833}
-\def\strutdepthpercent {.29167}
-%
-\def\setleading#1{%
-  \normalbaselineskip = #1\relax
-  \normallineskip = \lineskipfactor\normalbaselineskip
-  \normalbaselines
-  \setbox\strutbox =\hbox{%
-    \vrule width0pt height\strutheightpercent\baselineskip
-                    depth \strutdepthpercent \baselineskip
-  }%
-}
-
-% @| inserts a changebar to the left of the current line.  It should
-% surround any changed text.  This approach does *not* work if the
-% change spans more than two lines of output.  To handle that, we would
-% have adopt a much more difficult approach (putting marks into the main
-% vertical list for the beginning and end of each change).
-%
-\def\|{%
-  % \vadjust can only be used in horizontal mode.
-  \leavevmode
-  %
-  % Append this vertical mode material after the current line in the output.
-  \vadjust{%
-    % We want to insert a rule with the height and depth of the current
-    % leading; that is exactly what \strutbox is supposed to record.
-    \vskip-\baselineskip
-    %
-    % \vadjust-items are inserted at the left edge of the type.  So
-    % the \llap here moves out into the left-hand margin.
-    \llap{%
-      %
-      % For a thicker or thinner bar, change the `1pt'.
-      \vrule height\baselineskip width1pt
-      %
-      % This is the space between the bar and the text.
-      \hskip 12pt
-    }%
-  }%
-}
-
-% For a final copy, take out the rectangles
-% that mark overfull boxes (in case you have decided
-% that the text looks ok even though it passes the margin).
-%
-\def\finalout{\overfullrule=0pt}
-
-
-% End of control word definitions.
-
-\message{and turning on texinfo input format.}
-
-\def\openindices{%
-   \newindex{cp}%
-   \newcodeindex{fn}%
-   \newcodeindex{vr}%
-   \newcodeindex{tp}%
-   \newcodeindex{ky}%
-   \newcodeindex{pg}%
-}
-
-% Set some numeric style parameters, for 8.5 x 11 format.
-
-%\hsize = 6.5in
-\newdimen\defaultparindent \defaultparindent = 15pt
-\parindent = \defaultparindent
-\parskip 18pt plus 1pt
-\setleading{15pt}
-\advance\topskip by 1.2cm
-
-% Prevent underfull vbox error messages.
-\vbadness=10000
-
-% Following George Bush, just get rid of widows and orphans.
-\widowpenalty=10000
-\clubpenalty=10000
-
-% Use TeX 3.0's \emergencystretch to help line breaking, but if we're
-% using an old version of TeX, don't do anything.  We want the amount of
-% stretch added to depend on the line length, hence the dependence on
-% \hsize.  This makes it come to about 9pt for the 8.5x11 format.
-%
-\ifx\emergencystretch\thisisundefined
-  % Allow us to assign to \emergencystretch anyway.
-  \def\emergencystretch{\dimen0}%
-\else
-  \emergencystretch = \hsize
-  \divide\emergencystretch by 45
-\fi
-
-% Use @smallbook to reset parameters for 7x9.5 format  (or else 7x9.25)
-\def\smallbook{
-
-% These values for secheadingskip and subsecheadingskip are
-% experiments.  RJC 7 Aug 1992
-\global\secheadingskip = 17pt plus 6pt minus 3pt
-\global\subsecheadingskip = 14pt plus 6pt minus 3pt
-
-\global\lispnarrowing = 0.3in
-\setleading{12pt}
-\advance\topskip by -1cm
-\global\parskip 3pt plus 1pt
-\global\hsize = 5in
-\global\vsize=7.5in
-\global\tolerance=700
-\global\hfuzz=1pt
-\global\contentsrightmargin=0pt
-\global\deftypemargin=0pt
-\global\defbodyindent=.5cm
-
-\global\pagewidth=\hsize
-\global\pageheight=\vsize
-
-\global\let\smalllisp=\smalllispx
-\global\let\smallexample=\smalllispx
-\global\def\Esmallexample{\Esmalllisp}
-}
-
-% Use @afourpaper to print on European A4 paper.
-\def\afourpaper{
-\global\tolerance=700
-\global\hfuzz=1pt
-\setleading{12pt}
-\global\parskip 15pt plus 1pt
-
-\global\vsize= 53\baselineskip
-\advance\vsize by \topskip
-%\global\hsize=   5.85in     % A4 wide 10pt
-\global\hsize=  6.5in
-\global\outerhsize=\hsize
-\global\advance\outerhsize by 0.5in
-\global\outervsize=\vsize
-\global\advance\outervsize by 0.6in
-
-\global\pagewidth=\hsize
-\global\pageheight=\vsize
-}
-
-% Allow control of the text dimensions.  Parameters in order: textheight;
-% textwidth; \voffset; \hoffset (!); binding offset.  All require a dimension;
-% header is additional; added length extends the bottom of the page.
-
-\def\changepagesizes#1#2#3#4#5{
- \global\vsize= #1
- \advance\vsize by \topskip
- \global\voffset= #3
- \global\hsize= #2
- \global\outerhsize=\hsize
- \global\advance\outerhsize by 0.5in
- \global\outervsize=\vsize
- \global\advance\outervsize by 0.6in
- \global\pagewidth=\hsize
- \global\pageheight=\vsize
- \global\normaloffset= #4
- \global\bindingoffset= #5}
-
-% This layout is compatible with Latex on A4 paper.
-
-\def\afourlatex{\changepagesizes{22cm}{15cm}{7mm}{4.6mm}{5mm}}
-
-% Use @afourwide to print on European A4 paper in wide format.
-\def\afourwide{\afourpaper
-\changepagesizes{9.5in}{6.5in}{\hoffset}{\normaloffset}{\bindingoffset}}
-
-% Define macros to output various characters with catcode for normal text.
-\catcode`\"=\other
-\catcode`\~=\other
-\catcode`\^=\other
-\catcode`\_=\other
-\catcode`\|=\other
-\catcode`\<=\other
-\catcode`\>=\other
-\catcode`\+=\other
-\def\normaldoublequote{"}
-\def\normaltilde{~}
-\def\normalcaret{^}
-\def\normalunderscore{_}
-\def\normalverticalbar{|}
-\def\normalless{<}
-\def\normalgreater{>}
-\def\normalplus{+}
-
-% This macro is used to make a character print one way in ttfont
-% where it can probably just be output, and another way in other fonts,
-% where something hairier probably needs to be done.
-%
-% #1 is what to print if we are indeed using \tt; #2 is what to print
-% otherwise.  Since all the Computer Modern typewriter fonts have zero
-% interword stretch (and shrink), and it is reasonable to expect all
-% typewriter fonts to have this, we can check that font parameter.
-%
-\def\ifusingtt#1#2{\ifdim \fontdimen3\the\font=0pt #1\else #2\fi}
-
-% Turn off all special characters except @
-% (and those which the user can use as if they were ordinary).
-% Most of these we simply print from the \tt font, but for some, we can
-% use math or other variants that look better in normal text.
-
-\catcode`\"=\active
-\def\activedoublequote{{\tt \char '042}}
-\let"=\activedoublequote
-\catcode`\~=\active
-\def~{{\tt \char '176}}
-\chardef\hat=`\^
-\catcode`\^=\active
-\def\auxhat{\def^{'hat}}
-\def^{{\tt \hat}}
-
-\catcode`\_=\active
-\def_{\ifusingtt\normalunderscore\_}
-% Subroutine for the previous macro.
-\def\_{\lvvmode \kern.06em \vbox{\hrule width.3em height.1ex}}
-
-% \lvvmode is equivalent in function to \leavevmode.
-% Using \leavevmode runs into trouble when written out to
-% an index file due to the expansion of \leavevmode into ``\unhbox
-% \voidb@x'' ---which looks to TeX like ``\unhbox \voidb\x'' due to our
-% magic tricks with @.
-\def\lvvmode{\vbox to 0pt{}}
-
-\catcode`\|=\active
-\def|{{\tt \char '174}}
-\chardef \less=`\<
-\catcode`\<=\active
-\def<{{\tt \less}}
-\chardef \gtr=`\>
-\catcode`\>=\active
-\def>{{\tt \gtr}}
-\catcode`\+=\active
-\def+{{\tt \char 43}}
-%\catcode 27=\active
-%\def^^[{$\diamondsuit$}
-
-% Set up an active definition for =, but don't enable it most of the time.
-{\catcode`\==\active
-\global\def={{\tt \char 61}}}
-
-\catcode`+=\active
-\catcode`\_=\active
-
-% If a .fmt file is being used, characters that might appear in a file
-% name cannot be active until we have parsed the command line.
-% So turn them off again, and have \everyjob (or @setfilename) turn them on.
-% \otherifyactive is called near the end of this file.
-\def\otherifyactive{\catcode`+=\other \catcode`\_=\other}
-
-\catcode`\@=0
-
-% \rawbackslashxx output one backslash character in current font
-\global\chardef\rawbackslashxx=`\\
-%{\catcode`\\=\other
-%@gdef@rawbackslashxx{\}}
-
-% \rawbackslash redefines \ as input to do \rawbackslashxx.
-{\catcode`\\=\active
-@gdef@rawbackslash{@let\=@rawbackslashxx }}
-
-% \normalbackslash outputs one backslash in fixed width font.
-\def\normalbackslash{{\tt\rawbackslashxx}}
-
-% Say @foo, not \foo, in error messages.
-\escapechar=`\@
-
-% \catcode 17=0   % Define control-q
-\catcode`\\=\active
-
-% Used sometimes to turn off (effectively) the active characters
-% even after parsing them.
-@def@turnoffactive{@let"=@normaldoublequote
-@let\=@realbackslash
-@let~=@normaltilde
-@let^=@normalcaret
-@let_=@normalunderscore
-@let|=@normalverticalbar
-@let<=@normalless
-@let>=@normalgreater
-@let+=@normalplus}
-
-@def@normalturnoffactive{@let"=@normaldoublequote
-@let\=@normalbackslash
-@let~=@normaltilde
-@let^=@normalcaret
-@let_=@normalunderscore
-@let|=@normalverticalbar
-@let<=@normalless
-@let>=@normalgreater
-@let+=@normalplus}
-
-% Make _ and + \other characters, temporarily.
-% This is canceled by @fixbackslash.
-@otherifyactive
-
-% If a .fmt file is being used, we don't want the `\input texinfo' to show up.
-% That is what \eatinput is for; after that, the `\' should revert to printing
-% a backslash.
-%
-@gdef@eatinput input texinfo{@fixbackslash}
-@global@let\ = @eatinput
-
-% On the other hand, perhaps the file did not have a `\input texinfo'. Then
-% the first `\{ in the file would cause an error. This macro tries to fix
-% that, assuming it is called before the first `\' could plausibly occur.
-% Also back turn on active characters that might appear in the input
-% file name, in case not using a pre-dumped format.
-%
-@gdef@fixbackslash{@ifx\@eatinput @let\ = @normalbackslash @fi
-  @catcode`+=@active @catcode`@_=@active}
-
-%% These look ok in all fonts, so just make them not special.  The @rm below
-%% makes sure that the current font starts out as the newly loaded cmr10
-@catcode`@$=@other @catcode`@%=@other @catcode`@&=@other @catcode`@#=@other
-
-@textfonts
-@rm
-
-@c Local variables:
-@c page-delimiter: "^\\\\message"
-@c End:
diff --git a/lib/tilde/ChangeLog b/lib/tilde/ChangeLog
deleted file mode 100644 (file)
index 986db67..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-Mon Jul 13 12:01:51 1992  Brian Fox  (bfox@cubit)
-
-       * tilde.c: (tilde_expand_word) If there is no variable $HOME, then
-       look up the user's home directory in the password database.
-
-
diff --git a/lib/tilde/doc/Makefile b/lib/tilde/doc/Makefile
deleted file mode 100644 (file)
index a2246db..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-clean distclean mostlyclean maintainer-clean:
-       rm -f tilde.??
-
-all:
-       cp tilde.texi tilde.info
diff --git a/lib/tilde/doc/tilde.texi b/lib/tilde/doc/tilde.texi
deleted file mode 100644 (file)
index e69de29..0000000
diff --git a/po/._hr.po b/po/._hr.po
deleted file mode 100644 (file)
index 059ef4e..0000000
Binary files a/po/._hr.po and /dev/null differ
diff --git a/po/Makevars.template b/po/Makevars.template
deleted file mode 100644 (file)
index 32692ab..0000000
+++ /dev/null
@@ -1,41 +0,0 @@
-# Makefile variables for PO directory in any package using GNU gettext.
-
-# Usually the message domain is the same as the package name.
-DOMAIN = $(PACKAGE)
-
-# These two variables depend on the location of this directory.
-subdir = po
-top_builddir = ..
-
-# These options get passed to xgettext.
-XGETTEXT_OPTIONS = --keyword=_ --keyword=N_
-
-# This is the copyright holder that gets inserted into the header of the
-# $(DOMAIN).pot file.  Set this to the copyright holder of the surrounding
-# package.  (Note that the msgstr strings, extracted from the package's
-# sources, belong to the copyright holder of the package.)  Translators are
-# expected to transfer the copyright for their translations to this person
-# or entity, or to disclaim their copyright.  The empty string stands for
-# the public domain; in this case the translators are expected to disclaim
-# their copyright.
-COPYRIGHT_HOLDER = Free Software Foundation, Inc.
-
-# This is the email address or URL to which the translators shall report
-# bugs in the untranslated strings:
-# - Strings which are not entire sentences, see the maintainer guidelines
-#   in the GNU gettext documentation, section 'Preparing Strings'.
-# - Strings which use unclear terms or require additional context to be
-#   understood.
-# - Strings which make invalid assumptions about notation of date, time or
-#   money.
-# - Pluralisation problems.
-# - Incorrect English spelling.
-# - Incorrect formatting.
-# It can be your email address, or a mailing list address where translators
-# can write to without being subscribed, or the URL of a web page through
-# which the translators can contact you.
-MSGID_BUGS_ADDRESS =
-
-# This is the list of locale categories, beyond LC_MESSAGES, for which the
-# message catalogs shall be used.  It is usually empty.
-EXTRA_LOCALE_CATEGORIES =
diff --git a/po/bash-3.1.pot b/po/bash-3.1.pot
deleted file mode 100644 (file)
index c96e866..0000000
+++ /dev/null
@@ -1,2568 +0,0 @@
-# SOME DESCRIPTIVE TITLE.
-# Copyright (C) YEAR Free Software Foundation, Inc.
-# This file is distributed under the same license as the PACKAGE package.
-# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
-#
-#, fuzzy
-msgid ""
-msgstr ""
-"Project-Id-Version: PACKAGE VERSION\n"
-"POT-Creation-Date: 2005-10-03 17:31-0400\n"
-"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
-"Language-Team: LANGUAGE <LL@li.org>\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=CHARSET\n"
-"Content-Transfer-Encoding: 8bit\n"
-
-#: arrayfunc.c:48
-msgid "bad array subscript"
-msgstr ""
-
-#: arrayfunc.c:360
-#, c-format
-msgid "%s: cannot assign to non-numeric index"
-msgstr ""
-
-#: bashhist.c:328
-#, c-format
-msgid "%s: cannot create: %s"
-msgstr ""
-
-#: bashline.c:2947
-msgid "bash_execute_unix_command: cannot find keymap for command"
-msgstr ""
-
-#: bashline.c:2996
-#, c-format
-msgid "%s: first non-whitespace character is not `\"'"
-msgstr ""
-
-#: bashline.c:3025
-#, c-format
-msgid "no closing `%c' in %s"
-msgstr ""
-
-#: bashline.c:3059
-#, c-format
-msgid "%s: missing colon separator"
-msgstr ""
-
-#: builtins/bind.def:194
-#, c-format
-msgid "`%s': invalid keymap name"
-msgstr ""
-
-#: builtins/bind.def:233
-#, c-format
-msgid "%s: cannot read: %s"
-msgstr ""
-
-#: builtins/bind.def:248
-#, c-format
-msgid "`%s': cannot unbind"
-msgstr ""
-
-#: builtins/bind.def:283
-#, c-format
-msgid "`%s': unknown function name"
-msgstr ""
-
-#: builtins/bind.def:291
-#, c-format
-msgid "%s is not bound to any keys.\n"
-msgstr ""
-
-#: builtins/bind.def:295
-#, c-format
-msgid "%s can be invoked via "
-msgstr ""
-
-#: builtins/break.def:128
-msgid "only meaningful in a `for', `while', or `until' loop"
-msgstr ""
-
-#: builtins/caller.def:132
-msgid "Returns the context of the current subroutine call."
-msgstr ""
-
-#: builtins/caller.def:133 builtins/caller.def:137 builtins/pushd.def:660
-#: builtins/pushd.def:668 builtins/pushd.def:671 builtins/pushd.def:681
-#: builtins/pushd.def:685 builtins/pushd.def:689 builtins/pushd.def:692
-#: builtins/pushd.def:695 builtins/pushd.def:704 builtins/pushd.def:708
-#: builtins/pushd.def:712 builtins/pushd.def:715
-msgid " "
-msgstr ""
-
-#: builtins/caller.def:134
-msgid "Without EXPR, returns returns \"$line $filename\".  With EXPR,"
-msgstr ""
-
-#: builtins/caller.def:135
-msgid "returns \"$line $subroutine $filename\"; this extra information"
-msgstr ""
-
-#: builtins/caller.def:136
-msgid "can be used used to provide a stack trace."
-msgstr ""
-
-#: builtins/caller.def:138
-msgid "The value of EXPR indicates how many call frames to go back before the"
-msgstr ""
-
-#: builtins/caller.def:139
-msgid "current one; the top frame is frame 0."
-msgstr ""
-
-#: builtins/cd.def:203
-msgid "HOME not set"
-msgstr ""
-
-#: builtins/cd.def:215
-msgid "OLDPWD not set"
-msgstr ""
-
-#: builtins/common.c:133 test.c:921
-msgid "too many arguments"
-msgstr ""
-
-#: builtins/common.c:157 shell.c:474 shell.c:747
-#, c-format
-msgid "%s: option requires an argument"
-msgstr ""
-
-#: builtins/common.c:164
-#, c-format
-msgid "%s: numeric argument required"
-msgstr ""
-
-#: builtins/common.c:171
-#, c-format
-msgid "%s: not found"
-msgstr ""
-
-#: builtins/common.c:180 shell.c:760
-#, c-format
-msgid "%s: invalid option"
-msgstr ""
-
-#: builtins/common.c:187
-#, c-format
-msgid "%s: invalid option name"
-msgstr ""
-
-#: builtins/common.c:194 general.c:231 general.c:236
-#, c-format
-msgid "`%s': not a valid identifier"
-msgstr ""
-
-#: builtins/common.c:201
-#, c-format
-msgid "%s: invalid number"
-msgstr ""
-
-#: builtins/common.c:208
-#, c-format
-msgid "%s: invalid signal specification"
-msgstr ""
-
-#: builtins/common.c:215
-#, c-format
-msgid "`%s': not a pid or valid job spec"
-msgstr ""
-
-#: builtins/common.c:222 error.c:453
-#, c-format
-msgid "%s: readonly variable"
-msgstr ""
-
-#: builtins/common.c:230
-#, c-format
-msgid "%s: %s out of range"
-msgstr ""
-
-#: builtins/common.c:230 builtins/common.c:232
-msgid "argument"
-msgstr ""
-
-#: builtins/common.c:232
-#, c-format
-msgid "%s out of range"
-msgstr ""
-
-#: builtins/common.c:240
-#, c-format
-msgid "%s: no such job"
-msgstr ""
-
-#: builtins/common.c:248
-#, c-format
-msgid "%s: no job control"
-msgstr ""
-
-#: builtins/common.c:250
-msgid "no job control"
-msgstr ""
-
-#: builtins/common.c:260
-#, c-format
-msgid "%s: restricted"
-msgstr ""
-
-#: builtins/common.c:262
-msgid "restricted"
-msgstr ""
-
-#: builtins/common.c:270
-#, c-format
-msgid "%s: not a shell builtin"
-msgstr ""
-
-#: builtins/common.c:276
-#, c-format
-msgid "write error: %s"
-msgstr ""
-
-#: builtins/common.c:484
-#, c-format
-msgid "%s: error retrieving current directory: %s: %s\n"
-msgstr ""
-
-#: builtins/common.c:550 builtins/common.c:552
-#, c-format
-msgid "%s: ambiguous job spec"
-msgstr ""
-
-#: builtins/complete.def:251
-#, c-format
-msgid "%s: invalid action name"
-msgstr ""
-
-#: builtins/complete.def:381 builtins/complete.def:524
-#, c-format
-msgid "%s: no completion specification"
-msgstr ""
-
-#: builtins/complete.def:571
-msgid "warning: -F option may not work as you expect"
-msgstr ""
-
-#: builtins/complete.def:573
-msgid "warning: -C option may not work as you expect"
-msgstr ""
-
-#: builtins/declare.def:105
-msgid "can only be used in a function"
-msgstr ""
-
-#: builtins/declare.def:301
-msgid "cannot use `-f' to make functions"
-msgstr ""
-
-#: builtins/declare.def:313 execute_cmd.c:3986
-#, c-format
-msgid "%s: readonly function"
-msgstr ""
-
-#: builtins/declare.def:401
-#, c-format
-msgid "%s: cannot destroy array variables in this way"
-msgstr ""
-
-#: builtins/enable.def:128 builtins/enable.def:136
-msgid "dynamic loading not available"
-msgstr ""
-
-#: builtins/enable.def:303
-#, c-format
-msgid "cannot open shared object %s: %s"
-msgstr ""
-
-#: builtins/enable.def:326
-#, c-format
-msgid "cannot find %s in shared object %s: %s"
-msgstr ""
-
-#: builtins/enable.def:450
-#, c-format
-msgid "%s: not dynamically loaded"
-msgstr ""
-
-#: builtins/enable.def:465
-#, c-format
-msgid "%s: cannot delete: %s"
-msgstr ""
-
-#: builtins/evalfile.c:129 execute_cmd.c:3852 shell.c:1408
-#, c-format
-msgid "%s: is a directory"
-msgstr ""
-
-#: builtins/evalfile.c:134
-#, c-format
-msgid "%s: not a regular file"
-msgstr ""
-
-#: builtins/evalfile.c:142
-#, c-format
-msgid "%s: file is too large"
-msgstr ""
-
-#: builtins/exec.def:205
-#, c-format
-msgid "%s: cannot execute: %s"
-msgstr ""
-
-#: builtins/exit.def:83
-msgid "not login shell: use `exit'"
-msgstr ""
-
-#: builtins/exit.def:111
-msgid "There are stopped jobs.\n"
-msgstr ""
-
-#: builtins/fc.def:259
-msgid "no command found"
-msgstr ""
-
-#: builtins/fc.def:329
-msgid "history specification"
-msgstr ""
-
-#: builtins/fc.def:350
-#, c-format
-msgid "%s: cannot open temp file: %s"
-msgstr ""
-
-#: builtins/fg_bg.def:149
-#, c-format
-msgid "job %d started without job control"
-msgstr ""
-
-#: builtins/getopt.c:109
-#, c-format
-msgid "%s: illegal option -- %c\n"
-msgstr ""
-
-#: builtins/getopt.c:110
-#, c-format
-msgid "%s: option requires an argument -- %c\n"
-msgstr ""
-
-#: builtins/hash.def:83
-msgid "hashing disabled"
-msgstr ""
-
-#: builtins/hash.def:128
-#, c-format
-msgid "%s: hash table empty\n"
-msgstr ""
-
-#: builtins/help.def:108
-msgid "Shell commands matching keywords `"
-msgstr ""
-
-#: builtins/help.def:110
-msgid "Shell commands matching keyword `"
-msgstr ""
-
-#: builtins/help.def:138
-#, c-format
-msgid ""
-"no help topics match `%s'.  Try `help help' or `man -k %s' or `info %s'."
-msgstr ""
-
-#: builtins/help.def:164
-#, c-format
-msgid "%s: cannot open: %s"
-msgstr ""
-
-#: builtins/help.def:182
-msgid ""
-"These shell commands are defined internally.  Type `help' to see this list.\n"
-"Type `help name' to find out more about the function `name'.\n"
-"Use `info bash' to find out more about the shell in general.\n"
-"Use `man -k' or `info' to find out more about commands not in this list.\n"
-"\n"
-"A star (*) next to a name means that the command is disabled.\n"
-"\n"
-msgstr ""
-
-#: builtins/history.def:150
-msgid "cannot use more than one of -anrw"
-msgstr ""
-
-#: builtins/history.def:182
-msgid "history position"
-msgstr ""
-
-#: builtins/history.def:400
-#, c-format
-msgid "%s: history expansion failed"
-msgstr ""
-
-#: builtins/jobs.def:99
-msgid "no other options allowed with `-x'"
-msgstr ""
-
-#: builtins/kill.def:187
-#, c-format
-msgid "%s: arguments must be process or job IDs"
-msgstr ""
-
-#: builtins/kill.def:250
-msgid "Unknown error"
-msgstr ""
-
-#: builtins/let.def:94 builtins/let.def:119 expr.c:497 expr.c:512
-msgid "expression expected"
-msgstr ""
-
-#: builtins/printf.def:327
-#, c-format
-msgid "`%s': missing format character"
-msgstr ""
-
-#: builtins/printf.def:502
-#, c-format
-msgid "`%c': invalid format character"
-msgstr ""
-
-#: builtins/printf.def:708
-msgid "missing hex digit for \\x"
-msgstr ""
-
-#: builtins/pushd.def:173
-msgid "no other directory"
-msgstr ""
-
-#: builtins/pushd.def:440
-msgid "<no current directory>"
-msgstr ""
-
-#: builtins/pushd.def:657
-msgid "Display the list of currently remembered directories.  Directories"
-msgstr ""
-
-#: builtins/pushd.def:658
-msgid "find their way onto the list with the `pushd' command; you can get"
-msgstr ""
-
-#: builtins/pushd.def:659
-msgid "back up through the list with the `popd' command."
-msgstr ""
-
-#: builtins/pushd.def:661
-msgid "The -l flag specifies that `dirs' should not print shorthand versions"
-msgstr ""
-
-#: builtins/pushd.def:662
-msgid "of directories which are relative to your home directory.  This means"
-msgstr ""
-
-#: builtins/pushd.def:663
-msgid "that `~/bin' might be displayed as `/homes/bfox/bin'.  The -v flag"
-msgstr ""
-
-#: builtins/pushd.def:664
-msgid "causes `dirs' to print the directory stack with one entry per line,"
-msgstr ""
-
-#: builtins/pushd.def:665
-msgid "prepending the directory name with its position in the stack.  The -p"
-msgstr ""
-
-#: builtins/pushd.def:666
-msgid "flag does the same thing, but the stack position is not prepended."
-msgstr ""
-
-#: builtins/pushd.def:667
-msgid "The -c flag clears the directory stack by deleting all of the elements."
-msgstr ""
-
-#: builtins/pushd.def:669
-msgid "+N   displays the Nth entry counting from the left of the list shown by"
-msgstr ""
-
-#: builtins/pushd.def:670 builtins/pushd.def:673
-msgid "     dirs when invoked without options, starting with zero."
-msgstr ""
-
-#: builtins/pushd.def:672
-msgid ""
-"-N   displays the Nth entry counting from the right of the list shown by"
-msgstr ""
-
-#: builtins/pushd.def:678
-msgid "Adds a directory to the top of the directory stack, or rotates"
-msgstr ""
-
-#: builtins/pushd.def:679
-msgid "the stack, making the new top of the stack the current working"
-msgstr ""
-
-#: builtins/pushd.def:680
-msgid "directory.  With no arguments, exchanges the top two directories."
-msgstr ""
-
-#: builtins/pushd.def:682
-msgid "+N   Rotates the stack so that the Nth directory (counting"
-msgstr ""
-
-#: builtins/pushd.def:683
-msgid "     from the left of the list shown by `dirs', starting with"
-msgstr ""
-
-#: builtins/pushd.def:684 builtins/pushd.def:688
-msgid "     zero) is at the top."
-msgstr ""
-
-#: builtins/pushd.def:686
-msgid "-N   Rotates the stack so that the Nth directory (counting"
-msgstr ""
-
-#: builtins/pushd.def:687
-msgid "     from the right of the list shown by `dirs', starting with"
-msgstr ""
-
-#: builtins/pushd.def:690
-msgid "-n   suppress the normal change of directory when adding directories"
-msgstr ""
-
-#: builtins/pushd.def:691
-msgid "     to the stack, so only the stack is manipulated."
-msgstr ""
-
-#: builtins/pushd.def:693
-msgid "dir  adds DIR to the directory stack at the top, making it the"
-msgstr ""
-
-#: builtins/pushd.def:694
-msgid "     new current working directory."
-msgstr ""
-
-#: builtins/pushd.def:696 builtins/pushd.def:716
-msgid "You can see the directory stack with the `dirs' command."
-msgstr ""
-
-#: builtins/pushd.def:701
-msgid "Removes entries from the directory stack.  With no arguments,"
-msgstr ""
-
-#: builtins/pushd.def:702
-msgid "removes the top directory from the stack, and cd's to the new"
-msgstr ""
-
-#: builtins/pushd.def:703
-msgid "top directory."
-msgstr ""
-
-#: builtins/pushd.def:705
-msgid "+N   removes the Nth entry counting from the left of the list"
-msgstr ""
-
-#: builtins/pushd.def:706
-msgid "     shown by `dirs', starting with zero.  For example: `popd +0'"
-msgstr ""
-
-#: builtins/pushd.def:707
-msgid "     removes the first directory, `popd +1' the second."
-msgstr ""
-
-#: builtins/pushd.def:709
-msgid "-N   removes the Nth entry counting from the right of the list"
-msgstr ""
-
-#: builtins/pushd.def:710
-msgid "     shown by `dirs', starting with zero.  For example: `popd -0'"
-msgstr ""
-
-#: builtins/pushd.def:711
-msgid "     removes the last directory, `popd -1' the next to last."
-msgstr ""
-
-#: builtins/pushd.def:713
-msgid "-n   suppress the normal change of directory when removing directories"
-msgstr ""
-
-#: builtins/pushd.def:714
-msgid "     from the stack, so only the stack is manipulated."
-msgstr ""
-
-#: builtins/read.def:211
-#, c-format
-msgid "%s: invalid timeout specification"
-msgstr ""
-
-#: builtins/read.def:234
-#, c-format
-msgid "%s: invalid file descriptor specification"
-msgstr ""
-
-#: builtins/read.def:241
-#, c-format
-msgid "%d: invalid file descriptor: %s"
-msgstr ""
-
-#: builtins/read.def:474
-#, c-format
-msgid "read error: %d: %s"
-msgstr ""
-
-#: builtins/return.def:63
-msgid "can only `return' from a function or sourced script"
-msgstr ""
-
-#: builtins/set.def:745
-msgid "cannot simultaneously unset a function and a variable"
-msgstr ""
-
-#: builtins/set.def:782
-#, c-format
-msgid "%s: cannot unset"
-msgstr ""
-
-#: builtins/set.def:789
-#, c-format
-msgid "%s: cannot unset: readonly %s"
-msgstr ""
-
-#: builtins/set.def:800
-#, c-format
-msgid "%s: not an array variable"
-msgstr ""
-
-#: builtins/setattr.def:166
-#, c-format
-msgid "%s: not a function"
-msgstr ""
-
-#: builtins/shift.def:66 builtins/shift.def:72
-msgid "shift count"
-msgstr ""
-
-#: builtins/shopt.def:227
-msgid "cannot set and unset shell options simultaneously"
-msgstr ""
-
-#: builtins/shopt.def:292
-#, c-format
-msgid "%s: invalid shell option name"
-msgstr ""
-
-#: builtins/source.def:117
-msgid "filename argument required"
-msgstr ""
-
-#: builtins/source.def:137
-#, c-format
-msgid "%s: file not found"
-msgstr ""
-
-#: builtins/suspend.def:93
-msgid "cannot suspend"
-msgstr ""
-
-#: builtins/suspend.def:103
-msgid "cannot suspend a login shell"
-msgstr ""
-
-#: builtins/type.def:232
-#, c-format
-msgid "%s is aliased to `%s'\n"
-msgstr ""
-
-#: builtins/type.def:253
-#, c-format
-msgid "%s is a shell keyword\n"
-msgstr ""
-
-#: builtins/type.def:273
-#, c-format
-msgid "%s is a function\n"
-msgstr ""
-
-#: builtins/type.def:298
-#, c-format
-msgid "%s is a shell builtin\n"
-msgstr ""
-
-#: builtins/type.def:319
-#, c-format
-msgid "%s is %s\n"
-msgstr ""
-
-#: builtins/type.def:339
-#, c-format
-msgid "%s is hashed (%s)\n"
-msgstr ""
-
-#: builtins/ulimit.def:344
-#, c-format
-msgid "%s: invalid limit argument"
-msgstr ""
-
-#: builtins/ulimit.def:370
-#, c-format
-msgid "`%c': bad command"
-msgstr ""
-
-#: builtins/ulimit.def:399
-#, c-format
-msgid "%s: cannot get limit: %s"
-msgstr ""
-
-#: builtins/ulimit.def:437
-#, c-format
-msgid "%s: cannot modify limit: %s"
-msgstr ""
-
-#: builtins/umask.def:112
-msgid "octal number"
-msgstr ""
-
-#: builtins/umask.def:226
-#, c-format
-msgid "`%c': invalid symbolic mode operator"
-msgstr ""
-
-#: builtins/umask.def:281
-#, c-format
-msgid "`%c': invalid symbolic mode character"
-msgstr ""
-
-#: error.c:165
-#, c-format
-msgid "last command: %s\n"
-msgstr ""
-
-#: error.c:173
-msgid "Aborting..."
-msgstr ""
-
-#: error.c:260
-#, c-format
-msgid "%s: warning: "
-msgstr ""
-
-#: error.c:405
-msgid "unknown command error"
-msgstr ""
-
-#: error.c:406
-msgid "bad command type"
-msgstr ""
-
-#: error.c:407
-msgid "bad connector"
-msgstr ""
-
-#: error.c:408
-msgid "bad jump"
-msgstr ""
-
-#: error.c:446
-#, c-format
-msgid "%s: unbound variable"
-msgstr ""
-
-#: eval.c:176
-msgid "\atimed out waiting for input: auto-logout\n"
-msgstr ""
-
-#: execute_cmd.c:471
-#, c-format
-msgid "cannot redirect standard input from /dev/null: %s"
-msgstr ""
-
-#: execute_cmd.c:1036
-#, c-format
-msgid "TIMEFORMAT: `%c': invalid format character"
-msgstr ""
-
-#: execute_cmd.c:3551
-#, c-format
-msgid "%s: restricted: cannot specify `/' in command names"
-msgstr ""
-
-#: execute_cmd.c:3639
-#, c-format
-msgid "%s: command not found"
-msgstr ""
-
-#: execute_cmd.c:3876
-#, c-format
-msgid "%s: %s: bad interpreter"
-msgstr ""
-
-#: execute_cmd.c:3913
-#, c-format
-msgid "%s: cannot execute binary file"
-msgstr ""
-
-#: execute_cmd.c:4025
-#, c-format
-msgid "cannot duplicate fd %d to fd %d"
-msgstr ""
-
-#: expr.c:240
-msgid "expression recursion level exceeded"
-msgstr ""
-
-#: expr.c:264
-msgid "recursion stack underflow"
-msgstr ""
-
-#: expr.c:375
-msgid "syntax error in expression"
-msgstr ""
-
-#: expr.c:415
-msgid "attempted assignment to non-variable"
-msgstr ""
-
-#: expr.c:436 expr.c:441 expr.c:751
-msgid "division by 0"
-msgstr ""
-
-#: expr.c:467
-msgid "bug: bad expassign token"
-msgstr ""
-
-#: expr.c:509
-msgid "`:' expected for conditional expression"
-msgstr ""
-
-#: expr.c:776
-msgid "exponent less than 0"
-msgstr ""
-
-#: expr.c:821
-msgid "identifier expected after pre-increment or pre-decrement"
-msgstr ""
-
-#: expr.c:849
-msgid "missing `)'"
-msgstr ""
-
-#: expr.c:892
-msgid "syntax error: operand expected"
-msgstr ""
-
-#: expr.c:1178
-msgid "invalid number"
-msgstr ""
-
-#: expr.c:1182
-msgid "invalid arithmetic base"
-msgstr ""
-
-#: expr.c:1202
-msgid "value too great for base"
-msgstr ""
-
-#: general.c:62
-msgid "getcwd: cannot access parent directories"
-msgstr ""
-
-#: input.c:231
-#, c-format
-msgid "cannot allocate new file descriptor for bash input from fd %d"
-msgstr ""
-
-#: input.c:239
-#, c-format
-msgid "save_bash_input: buffer already exists for new fd %d"
-msgstr ""
-
-#: jobs.c:923
-#, c-format
-msgid "deleting stopped job %d with process group %ld"
-msgstr ""
-
-#: jobs.c:1308
-#, c-format
-msgid "describe_pid: %ld: no such pid"
-msgstr ""
-
-#: jobs.c:1981 nojobs.c:648
-#, c-format
-msgid "wait: pid %ld is not a child of this shell"
-msgstr ""
-
-#: jobs.c:2180
-#, c-format
-msgid "wait_for: No record of process %ld"
-msgstr ""
-
-#: jobs.c:2435
-#, c-format
-msgid "wait_for_job: job %d is stopped"
-msgstr ""
-
-#: jobs.c:2657
-#, c-format
-msgid "%s: job has terminated"
-msgstr ""
-
-#: jobs.c:2666
-#, c-format
-msgid "%s: job %d already in background"
-msgstr ""
-
-#: jobs.c:3452
-msgid "no job control in this shell"
-msgstr ""
-
-#: lib/malloc/malloc.c:298
-#, c-format
-msgid "malloc: failed assertion: %s\n"
-msgstr ""
-
-#: lib/malloc/malloc.c:314
-#, c-format
-msgid ""
-"\r\n"
-"malloc: %s:%d: assertion botched\r\n"
-msgstr ""
-
-#: lib/malloc/malloc.c:740
-msgid "malloc: block on free list clobbered"
-msgstr ""
-
-#: lib/malloc/malloc.c:817
-msgid "free: called with already freed block argument"
-msgstr ""
-
-#: lib/malloc/malloc.c:820
-msgid "free: called with unallocated block argument"
-msgstr ""
-
-#: lib/malloc/malloc.c:839
-msgid "free: underflow detected; mh_nbytes out of range"
-msgstr ""
-
-#: lib/malloc/malloc.c:845
-msgid "free: start and end chunk sizes differ"
-msgstr ""
-
-#: lib/malloc/malloc.c:942
-msgid "realloc: called with unallocated block argument"
-msgstr ""
-
-#: lib/malloc/malloc.c:957
-msgid "realloc: underflow detected; mh_nbytes out of range"
-msgstr ""
-
-#: lib/malloc/malloc.c:963
-msgid "realloc: start and end chunk sizes differ"
-msgstr ""
-
-#: lib/malloc/table.c:175
-msgid "register_alloc: alloc table is full with FIND_ALLOC?\n"
-msgstr ""
-
-#: lib/malloc/table.c:182
-#, c-format
-msgid "register_alloc: %p already in table as allocated?\n"
-msgstr ""
-
-#: lib/malloc/table.c:218
-#, c-format
-msgid "register_free: %p already in table as free?\n"
-msgstr ""
-
-#: lib/malloc/watch.c:46
-msgid "allocated"
-msgstr ""
-
-#: lib/malloc/watch.c:48
-msgid "freed"
-msgstr ""
-
-#: lib/malloc/watch.c:50
-msgid "requesting resize"
-msgstr ""
-
-#: lib/malloc/watch.c:52
-msgid "just resized"
-msgstr ""
-
-#: lib/malloc/watch.c:54
-msgid "bug: unknown operation"
-msgstr ""
-
-#: lib/malloc/watch.c:56
-#, c-format
-msgid "malloc: watch alert: %p %s "
-msgstr ""
-
-#: lib/sh/fmtulong.c:101
-msgid "invalid base"
-msgstr ""
-
-#: lib/sh/netopen.c:158
-#, c-format
-msgid "%s: host unknown"
-msgstr ""
-
-#: lib/sh/netopen.c:165
-#, c-format
-msgid "%s: invalid service"
-msgstr ""
-
-#: lib/sh/netopen.c:296
-#, c-format
-msgid "%s: bad network path specification"
-msgstr ""
-
-#: lib/sh/netopen.c:336
-msgid "network operations not supported"
-msgstr ""
-
-#: mailcheck.c:386
-msgid "You have mail in $_"
-msgstr ""
-
-#: mailcheck.c:411
-msgid "You have new mail in $_"
-msgstr ""
-
-#: mailcheck.c:427
-#, c-format
-msgid "The mail in %s has been read\n"
-msgstr ""
-
-#: make_cmd.c:322
-msgid "syntax error: arithmetic expression required"
-msgstr ""
-
-#: make_cmd.c:324
-msgid "syntax error: `;' unexpected"
-msgstr ""
-
-#: make_cmd.c:325
-#, c-format
-msgid "syntax error: `((%s))'"
-msgstr ""
-
-#: make_cmd.c:566
-#, c-format
-msgid "make_here_document: bad instruction type %d"
-msgstr ""
-
-#: make_cmd.c:736
-#, c-format
-msgid "make_redirection: redirection instruction `%d' out of range"
-msgstr ""
-
-#: parse.y:2747
-#, c-format
-msgid "unexpected EOF while looking for matching `%c'"
-msgstr ""
-
-#: parse.y:3043
-msgid "unexpected EOF while looking for `]]'"
-msgstr ""
-
-#: parse.y:3048
-#, c-format
-msgid "syntax error in conditional expression: unexpected token `%s'"
-msgstr ""
-
-#: parse.y:3052
-msgid "syntax error in conditional expression"
-msgstr ""
-
-#: parse.y:3130
-#, c-format
-msgid "unexpected token `%s', expected `)'"
-msgstr ""
-
-#: parse.y:3134
-msgid "expected `)'"
-msgstr ""
-
-#: parse.y:3162
-#, c-format
-msgid "unexpected argument `%s' to conditional unary operator"
-msgstr ""
-
-#: parse.y:3166
-msgid "unexpected argument to conditional unary operator"
-msgstr ""
-
-#: parse.y:3203
-#, c-format
-msgid "unexpected token `%s', conditional binary operator expected"
-msgstr ""
-
-#: parse.y:3207
-msgid "conditional binary operator expected"
-msgstr ""
-
-#: parse.y:3223
-#, c-format
-msgid "unexpected argument `%s' to conditional binary operator"
-msgstr ""
-
-#: parse.y:3227
-msgid "unexpected argument to conditional binary operator"
-msgstr ""
-
-#: parse.y:3238
-#, c-format
-msgid "unexpected token `%c' in conditional command"
-msgstr ""
-
-#: parse.y:3241
-#, c-format
-msgid "unexpected token `%s' in conditional command"
-msgstr ""
-
-#: parse.y:3245
-#, c-format
-msgid "unexpected token %d in conditional command"
-msgstr ""
-
-#: parse.y:4461
-#, c-format
-msgid "syntax error near unexpected token `%s'"
-msgstr ""
-
-#: parse.y:4479
-#, c-format
-msgid "syntax error near `%s'"
-msgstr ""
-
-#: parse.y:4489
-msgid "syntax error: unexpected end of file"
-msgstr ""
-
-#: parse.y:4489
-msgid "syntax error"
-msgstr ""
-
-#: parse.y:4551
-#, c-format
-msgid "Use \"%s\" to leave the shell.\n"
-msgstr ""
-
-#: parse.y:4710
-msgid "unexpected EOF while looking for matching `)'"
-msgstr ""
-
-#: pcomplete.c:1001
-#, c-format
-msgid "completion: function `%s' not found"
-msgstr ""
-
-#: pcomplib.c:179
-#, c-format
-msgid "progcomp_insert: %s: NULL COMPSPEC"
-msgstr ""
-
-#: print_cmd.c:264
-#, c-format
-msgid "print_command: bad connector `%d'"
-msgstr ""
-
-#: print_cmd.c:1236
-#, c-format
-msgid "cprintf: `%c': invalid format character"
-msgstr ""
-
-#: redir.c:99
-msgid "file descriptor out of range"
-msgstr ""
-
-#: redir.c:141
-#, c-format
-msgid "%s: ambiguous redirect"
-msgstr ""
-
-#: redir.c:145
-#, c-format
-msgid "%s: cannot overwrite existing file"
-msgstr ""
-
-#: redir.c:150
-#, c-format
-msgid "%s: restricted: cannot redirect output"
-msgstr ""
-
-#: redir.c:155
-#, c-format
-msgid "cannot create temp file for here document: %s"
-msgstr ""
-
-#: redir.c:509
-msgid "/dev/(tcp|udp)/host/port not supported without networking"
-msgstr ""
-
-#: redir.c:956
-msgid "redirection error: cannot duplicate fd"
-msgstr ""
-
-#: shell.c:309
-msgid "could not find /tmp, please create!"
-msgstr ""
-
-#: shell.c:313
-msgid "/tmp must be a valid directory name"
-msgstr ""
-
-#: shell.c:849
-#, c-format
-msgid "%c%c: invalid option"
-msgstr ""
-
-#: shell.c:1598
-msgid "I have no name!"
-msgstr ""
-
-#: shell.c:1733
-#, c-format
-msgid ""
-"Usage:\t%s [GNU long option] [option] ...\n"
-"\t%s [GNU long option] [option] script-file ...\n"
-msgstr ""
-
-#: shell.c:1735
-msgid "GNU long options:\n"
-msgstr ""
-
-#: shell.c:1739
-msgid "Shell options:\n"
-msgstr ""
-
-#: shell.c:1740
-msgid "\t-irsD or -c command or -O shopt_option\t\t(invocation only)\n"
-msgstr ""
-
-#: shell.c:1755
-#, c-format
-msgid "\t-%s or -o option\n"
-msgstr ""
-
-#: shell.c:1761
-#, c-format
-msgid "Type `%s -c \"help set\"' for more information about shell options.\n"
-msgstr ""
-
-#: shell.c:1762
-#, c-format
-msgid "Type `%s -c help' for more information about shell builtin commands.\n"
-msgstr ""
-
-#: shell.c:1763
-msgid "Use the `bashbug' command to report bugs.\n"
-msgstr ""
-
-#: sig.c:494
-#, c-format
-msgid "sigprocmask: %d: invalid operation"
-msgstr ""
-
-#: subst.c:1123
-#, c-format
-msgid "bad substitution: no closing `%s' in %s"
-msgstr ""
-
-#: subst.c:2269
-#, c-format
-msgid "%s: cannot assign list to array member"
-msgstr ""
-
-#: subst.c:4208 subst.c:4224
-msgid "cannot make pipe for process substitution"
-msgstr ""
-
-#: subst.c:4255
-msgid "cannot make child for process substitution"
-msgstr ""
-
-#: subst.c:4300
-#, c-format
-msgid "cannot open named pipe %s for reading"
-msgstr ""
-
-#: subst.c:4302
-#, c-format
-msgid "cannot open named pipe %s for writing"
-msgstr ""
-
-#: subst.c:4310
-#, c-format
-msgid "cannout reset nodelay mode for fd %d"
-msgstr ""
-
-#: subst.c:4320
-#, c-format
-msgid "cannot duplicate named pipe %s as fd %d"
-msgstr ""
-
-#: subst.c:4495
-msgid "cannot make pipe for command substitution"
-msgstr ""
-
-#: subst.c:4531
-msgid "cannot make child for command substitution"
-msgstr ""
-
-#: subst.c:4548
-msgid "command_substitute: cannot duplicate pipe as fd 1"
-msgstr ""
-
-#: subst.c:5013
-#, c-format
-msgid "%s: parameter null or not set"
-msgstr ""
-
-#: subst.c:5287
-#, c-format
-msgid "%s: substring expression < 0"
-msgstr ""
-
-#: subst.c:6058
-#, c-format
-msgid "%s: bad substitution"
-msgstr ""
-
-#: subst.c:6134
-#, c-format
-msgid "$%s: cannot assign in this way"
-msgstr ""
-
-#: subst.c:7687
-#, c-format
-msgid "no match: %s"
-msgstr ""
-
-#: test.c:154
-msgid "argument expected"
-msgstr ""
-
-#: test.c:163
-#, c-format
-msgid "%s: integer expression expected"
-msgstr ""
-
-#: test.c:361
-msgid "`)' expected"
-msgstr ""
-
-#: test.c:363
-#, c-format
-msgid "`)' expected, found %s"
-msgstr ""
-
-#: test.c:378 test.c:787 test.c:790
-#, c-format
-msgid "%s: unary operator expected"
-msgstr ""
-
-#: test.c:543 test.c:830
-#, c-format
-msgid "%s: binary operator expected"
-msgstr ""
-
-#: test.c:905
-msgid "missing `]'"
-msgstr ""
-
-#: trap.c:194
-msgid "invalid signal number"
-msgstr ""
-
-#: trap.c:309
-#, c-format
-msgid "run_pending_traps: bad value in trap_list[%d]: %p"
-msgstr ""
-
-#: trap.c:313
-#, c-format
-msgid ""
-"run_pending_traps: signal handler is SIG_DFL, resending %d (%s) to myself"
-msgstr ""
-
-#: trap.c:349
-#, c-format
-msgid "trap_handler: bad signal %d"
-msgstr ""
-
-#: variables.c:320
-#, c-format
-msgid "error importing function definition for `%s'"
-msgstr ""
-
-#: variables.c:692
-#, c-format
-msgid "shell level (%d) too high, resetting to 1"
-msgstr ""
-
-#: variables.c:1651
-msgid "make_local_variable: no function context at current scope"
-msgstr ""
-
-#: variables.c:2807
-msgid "all_local_variables: no function context at current scope"
-msgstr ""
-
-#: variables.c:3021 variables.c:3030
-#, c-format
-msgid "invalid character %d in exportstr for %s"
-msgstr ""
-
-#: variables.c:3036
-#, c-format
-msgid "no `=' in exportstr for %s"
-msgstr ""
-
-#: variables.c:3463
-msgid "pop_var_context: head of shell_variables not a function context"
-msgstr ""
-
-#: variables.c:3476
-msgid "pop_var_context: no global_variables context"
-msgstr ""
-
-#: variables.c:3548
-msgid "pop_scope: head of shell_variables not a temporary environment scope"
-msgstr ""
-
-#: version.c:82
-msgid "Copyright (C) 2005 Free Software Foundation, Inc.\n"
-msgstr ""
-
-#: xmalloc.c:93
-#, c-format
-msgid "xmalloc: cannot allocate %lu bytes (%lu bytes allocated)"
-msgstr ""
-
-#: xmalloc.c:95
-#, c-format
-msgid "xmalloc: cannot allocate %lu bytes"
-msgstr ""
-
-#: xmalloc.c:115
-#, c-format
-msgid "xrealloc: cannot reallocate %lu bytes (%lu bytes allocated)"
-msgstr ""
-
-#: xmalloc.c:117
-#, c-format
-msgid "xrealloc: cannot allocate %lu bytes"
-msgstr ""
-
-#: xmalloc.c:151
-#, c-format
-msgid "xmalloc: %s:%d: cannot allocate %lu bytes (%lu bytes allocated)"
-msgstr ""
-
-#: xmalloc.c:153
-#, c-format
-msgid "xmalloc: %s:%d: cannot allocate %lu bytes"
-msgstr ""
-
-#: xmalloc.c:175
-#, c-format
-msgid "xrealloc: %s:%d: cannot reallocate %lu bytes (%lu bytes allocated)"
-msgstr ""
-
-#: xmalloc.c:177
-#, c-format
-msgid "xrealloc: %s:%d: cannot allocate %lu bytes"
-msgstr ""
-
-#: builtins.c:244
-msgid ""
-" `alias' with no arguments or with the -p option prints the list\n"
-"    of aliases in the form alias NAME=VALUE on standard output.\n"
-"    Otherwise, an alias is defined for each NAME whose VALUE is given.\n"
-"    A trailing space in VALUE causes the next word to be checked for\n"
-"    alias substitution when the alias is expanded.  Alias returns\n"
-"    true unless a NAME is given for which no alias has been defined."
-msgstr ""
-
-#: builtins.c:257
-msgid ""
-" Remove NAMEs from the list of defined aliases.  If the -a option is given,\n"
-"    then remove all alias definitions."
-msgstr ""
-
-#: builtins.c:266
-msgid ""
-" Bind a key sequence to a Readline function or a macro, or set\n"
-"    a Readline variable.  The non-option argument syntax is equivalent\n"
-"    to that found in ~/.inputrc, but must be passed as a single argument:\n"
-"    bind '\"\\C-x\\C-r\": re-read-init-file'.\n"
-"    bind accepts the following options:\n"
-"      -m  keymap         Use `keymap' as the keymap for the duration of "
-"this\n"
-"                         command.  Acceptable keymap names are emacs,\n"
-"                         emacs-standard, emacs-meta, emacs-ctlx, vi, vi-"
-"move,\n"
-"                         vi-command, and vi-insert.\n"
-"      -l                 List names of functions.\n"
-"      -P                 List function names and bindings.\n"
-"      -p                 List functions and bindings in a form that can be\n"
-"                         reused as input.\n"
-"      -r  keyseq         Remove the binding for KEYSEQ.\n"
-"      -x  keyseq:shell-command\tCause SHELL-COMMAND to be executed when\n"
-"    \t\t\t\tKEYSEQ is entered.\n"
-"      -f  filename       Read key bindings from FILENAME.\n"
-"      -q  function-name  Query about which keys invoke the named function.\n"
-"      -u  function-name  Unbind all keys which are bound to the named "
-"function.\n"
-"      -V                 List variable names and values\n"
-"      -v                 List variable names and values in a form that can\n"
-"                         be reused as input.\n"
-"      -S                 List key sequences that invoke macros and their "
-"values\n"
-"      -s                 List key sequences that invoke macros and their "
-"values\n"
-"                         in a form that can be reused as input."
-msgstr ""
-
-#: builtins.c:297
-msgid ""
-" Exit from within a FOR, WHILE or UNTIL loop.  If N is specified,\n"
-"    break N levels."
-msgstr ""
-
-#: builtins.c:304
-msgid ""
-" Resume the next iteration of the enclosing FOR, WHILE or UNTIL loop.\n"
-"    If N is specified, resume at the N-th enclosing loop."
-msgstr ""
-
-#: builtins.c:311
-msgid ""
-" Run a shell builtin.  This is useful when you wish to rename a\n"
-"    shell builtin to be a function, but need the functionality of the\n"
-"    builtin within the function itself."
-msgstr ""
-
-#: builtins.c:320
-msgid ""
-" Returns the context of the current subroutine call.\n"
-"    \n"
-"    Without EXPR, returns returns \"$line $filename\".  With EXPR,\n"
-"    returns \"$line $subroutine $filename\"; this extra information\n"
-"    can be used used to provide a stack trace.\n"
-"    \n"
-"    The value of EXPR indicates how many call frames to go back before the\n"
-"    current one; the top frame is frame 0."
-msgstr ""
-
-#: builtins.c:334
-msgid ""
-" Change the current directory to DIR.  The variable $HOME is the\n"
-"    default DIR.  The variable CDPATH defines the search path for\n"
-"    the directory containing DIR.  Alternative directory names in CDPATH\n"
-"    are separated by a colon (:).  A null directory name is the same as\n"
-"    the current directory, i.e. `.'.  If DIR begins with a slash (/),\n"
-"    then CDPATH is not used.  If the directory is not found, and the\n"
-"    shell option `cdable_vars' is set, then try the word as a variable\n"
-"    name.  If that variable has a value, then cd to the value of that\n"
-"    variable.  The -P option says to use the physical directory structure\n"
-"    instead of following symbolic links; the -L option forces symbolic "
-"links\n"
-"    to be followed."
-msgstr ""
-
-#: builtins.c:350
-msgid ""
-" Print the current working directory.  With the -P option, pwd prints\n"
-"    the physical directory, without any symbolic links; the -L option\n"
-"    makes pwd follow symbolic links."
-msgstr ""
-
-#: builtins.c:358
-msgid " No effect; the command does nothing.  A zero exit code is returned."
-msgstr ""
-
-#: builtins.c:364
-msgid " Return a successful result."
-msgstr ""
-
-#: builtins.c:370
-msgid " Return an unsuccessful result."
-msgstr ""
-
-#: builtins.c:376
-msgid ""
-" Runs COMMAND with ARGS ignoring shell functions.  If you have a shell\n"
-"    function called `ls', and you wish to call the command `ls', you can\n"
-"    say \"command ls\".  If the -p option is given, a default value is used\n"
-"    for PATH that is guaranteed to find all of the standard utilities.  If\n"
-"    the -V or -v option is given, a string is printed describing COMMAND.\n"
-"    The -V option produces a more verbose description."
-msgstr ""
-
-#: builtins.c:387
-msgid ""
-" Declare variables and/or give them attributes.  If no NAMEs are\n"
-"    given, then display the values of variables instead.  The -p option\n"
-"    will display the attributes and values of each NAME.\n"
-"    \n"
-"    The flags are:\n"
-"    \n"
-"      -a\tto make NAMEs arrays (if supported)\n"
-"      -f\tto select from among function names only\n"
-"      -F\tto display function names (and line number and source file name "
-"if\n"
-"    \tdebugging) without definitions\n"
-"      -i\tto make NAMEs have the `integer' attribute\n"
-"      -r\tto make NAMEs readonly\n"
-"      -t\tto make NAMEs have the `trace' attribute\n"
-"      -x\tto make NAMEs export\n"
-"    \n"
-"    Variables with the integer attribute have arithmetic evaluation (see\n"
-"    `let') done when the variable is assigned to.\n"
-"    \n"
-"    When displaying values of variables, -f displays a function's name\n"
-"    and definition.  The -F option restricts the display to function\n"
-"    name only.\n"
-"    \n"
-"    Using `+' instead of `-' turns off the given attribute instead.  When\n"
-"    used in a function, makes NAMEs local, as with the `local' command."
-msgstr ""
-
-#: builtins.c:416
-msgid " Obsolete.  See `declare'."
-msgstr ""
-
-#: builtins.c:422
-msgid ""
-" Create a local variable called NAME, and give it VALUE.  LOCAL\n"
-"    can only be used within a function; it makes the variable NAME\n"
-"    have a visible scope restricted to that function and its children."
-msgstr ""
-
-#: builtins.c:431
-msgid ""
-" Output the ARGs.  If -n is specified, the trailing newline is\n"
-"    suppressed.  If the -e option is given, interpretation of the\n"
-"    following backslash-escaped characters is turned on:\n"
-"    \t\\a\talert (bell)\n"
-"    \t\\b\tbackspace\n"
-"    \t\\c\tsuppress trailing newline\n"
-"    \t\\E\tescape character\n"
-"    \t\\f\tform feed\n"
-"    \t\\n\tnew line\n"
-"    \t\\r\tcarriage return\n"
-"    \t\\t\thorizontal tab\n"
-"    \t\\v\tvertical tab\n"
-"    \t\\\\\tbackslash\n"
-"    \t\\num\tthe character whose ASCII code is NUM (octal).\n"
-"    \n"
-"    You can explicitly turn off the interpretation of the above characters\n"
-"    with the -E option."
-msgstr ""
-
-#: builtins.c:455
-msgid ""
-" Output the ARGs.  If -n is specified, the trailing newline is suppressed."
-msgstr ""
-
-#: builtins.c:462
-msgid ""
-" Enable and disable builtin shell commands.  This allows\n"
-"    you to use a disk command which has the same name as a shell\n"
-"    builtin without specifying a full pathname.  If -n is used, the\n"
-"    NAMEs become disabled; otherwise NAMEs are enabled.  For example,\n"
-"    to use the `test' found in $PATH instead of the shell builtin\n"
-"    version, type `enable -n test'.  On systems supporting dynamic\n"
-"    loading, the -f option may be used to load new builtins from the\n"
-"    shared object FILENAME.  The -d option will delete a builtin\n"
-"    previously loaded with -f.  If no non-option names are given, or\n"
-"    the -p option is supplied, a list of builtins is printed.  The\n"
-"    -a option means to print every builtin with an indication of whether\n"
-"    or not it is enabled.  The -s option restricts the output to the "
-"POSIX.2\n"
-"    `special' builtins.  The -n option displays a list of all disabled "
-"builtins."
-msgstr ""
-
-#: builtins.c:480
-msgid " Read ARGs as input to the shell and execute the resulting command(s)."
-msgstr ""
-
-#: builtins.c:486
-msgid ""
-" Getopts is used by shell procedures to parse positional parameters.\n"
-"    \n"
-"    OPTSTRING contains the option letters to be recognized; if a letter\n"
-"    is followed by a colon, the option is expected to have an argument,\n"
-"    which should be separated from it by white space.\n"
-"    \n"
-"    Each time it is invoked, getopts will place the next option in the\n"
-"    shell variable $name, initializing name if it does not exist, and\n"
-"    the index of the next argument to be processed into the shell\n"
-"    variable OPTIND.  OPTIND is initialized to 1 each time the shell or\n"
-"    a shell script is invoked.  When an option requires an argument,\n"
-"    getopts places that argument into the shell variable OPTARG.\n"
-"    \n"
-"    getopts reports errors in one of two ways.  If the first character\n"
-"    of OPTSTRING is a colon, getopts uses silent error reporting.  In\n"
-"    this mode, no error messages are printed.  If an invalid option is\n"
-"    seen, getopts places the option character found into OPTARG.  If a\n"
-"    required argument is not found, getopts places a ':' into NAME and\n"
-"    sets OPTARG to the option character found.  If getopts is not in\n"
-"    silent mode, and an invalid option is seen, getopts places '?' into\n"
-"    NAME and unsets OPTARG.  If a required argument is not found, a '?'\n"
-"    is placed in NAME, OPTARG is unset, and a diagnostic message is\n"
-"    printed.\n"
-"    \n"
-"    If the shell variable OPTERR has the value 0, getopts disables the\n"
-"    printing of error messages, even if the first character of\n"
-"    OPTSTRING is not a colon.  OPTERR has the value 1 by default.\n"
-"    \n"
-"    Getopts normally parses the positional parameters ($0 - $9), but if\n"
-"    more arguments are given, they are parsed instead."
-msgstr ""
-
-#: builtins.c:521
-msgid ""
-" Exec FILE, replacing this shell with the specified program.\n"
-"    If FILE is not specified, the redirections take effect in this\n"
-"    shell.  If the first argument is `-l', then place a dash in the\n"
-"    zeroth arg passed to FILE, as login does.  If the `-c' option\n"
-"    is supplied, FILE is executed with a null environment.  The `-a'\n"
-"    option means to make set argv[0] of the executed process to NAME.\n"
-"    If the file cannot be executed and the shell is not interactive,\n"
-"    then the shell exits, unless the shell option `execfail' is set."
-msgstr ""
-
-#: builtins.c:534
-msgid ""
-" Exit the shell with a status of N.  If N is omitted, the exit status\n"
-"    is that of the last command executed."
-msgstr ""
-
-#: builtins.c:541
-msgid " Logout of a login shell."
-msgstr ""
-
-#: builtins.c:548
-msgid ""
-" fc is used to list or edit and re-execute commands from the history list.\n"
-"    FIRST and LAST can be numbers specifying the range, or FIRST can be a\n"
-"    string, which means the most recent command beginning with that\n"
-"    string.\n"
-"    \n"
-"       -e ENAME selects which editor to use.  Default is FCEDIT, then "
-"EDITOR,\n"
-"          then vi.\n"
-"    \n"
-"       -l means list lines instead of editing.\n"
-"       -n means no line numbers listed.\n"
-"       -r means reverse the order of the lines (making it newest listed "
-"first).\n"
-"    \n"
-"    With the `fc -s [pat=rep ...] [command]' format, the command is\n"
-"    re-executed after the substitution OLD=NEW is performed.\n"
-"    \n"
-"    A useful alias to use with this is r='fc -s', so that typing `r cc'\n"
-"    runs the last command beginning with `cc' and typing `r' re-executes\n"
-"    the last command."
-msgstr ""
-
-#: builtins.c:573
-msgid ""
-" Place JOB_SPEC in the foreground, and make it the current job.  If\n"
-"    JOB_SPEC is not present, the shell's notion of the current job is\n"
-"    used."
-msgstr ""
-
-#: builtins.c:583
-msgid ""
-" Place each JOB_SPEC in the background, as if it had been started with\n"
-"    `&'.  If JOB_SPEC is not present, the shell's notion of the current\n"
-"    job is used."
-msgstr ""
-
-#: builtins.c:592
-msgid ""
-" For each NAME, the full pathname of the command is determined and\n"
-"    remembered.  If the -p option is supplied, PATHNAME is used as the\n"
-"    full pathname of NAME, and no path search is performed.  The -r\n"
-"    option causes the shell to forget all remembered locations.  The -d\n"
-"    option causes the shell to forget the remembered location of each NAME.\n"
-"    If the -t option is supplied the full pathname to which each NAME\n"
-"    corresponds is printed.  If multiple NAME arguments are supplied with\n"
-"    -t, the NAME is printed before the hashed full pathname.  The -l option\n"
-"    causes output to be displayed in a format that may be reused as input.\n"
-"    If no arguments are given, information about remembered commands is "
-"displayed."
-msgstr ""
-
-#: builtins.c:608
-msgid ""
-" Display helpful information about builtin commands.  If PATTERN is\n"
-"    specified, gives detailed help on all commands matching PATTERN,\n"
-"    otherwise a list of the builtins is printed.  The -s option\n"
-"    restricts the output for each builtin command matching PATTERN to\n"
-"    a short usage synopsis."
-msgstr ""
-
-#: builtins.c:620
-msgid ""
-" Display the history list with line numbers.  Lines listed with\n"
-"    with a `*' have been modified.  Argument of N says to list only\n"
-"    the last N lines.  The `-c' option causes the history list to be\n"
-"    cleared by deleting all of the entries.  The `-d' option deletes\n"
-"    the history entry at offset OFFSET.  The `-w' option writes out the\n"
-"    current history to the history file;  `-r' means to read the file and\n"
-"    append the contents to the history list instead.  `-a' means\n"
-"    to append history lines from this session to the history file.\n"
-"    Argument `-n' means to read all history lines not already read\n"
-"    from the history file and append them to the history list.\n"
-"    \n"
-"    If FILENAME is given, then that is used as the history file else\n"
-"    if $HISTFILE has a value, that is used, else ~/.bash_history.\n"
-"    If the -s option is supplied, the non-option ARGs are appended to\n"
-"    the history list as a single entry.  The -p option means to perform\n"
-"    history expansion on each ARG and display the result, without storing\n"
-"    anything in the history list.\n"
-"    \n"
-"    If the $HISTTIMEFORMAT variable is set and not null, its value is used\n"
-"    as a format string for strftime(3) to print the time stamp associated\n"
-"    with each displayed history entry.  No time stamps are printed otherwise."
-msgstr ""
-
-#: builtins.c:648
-msgid ""
-" Lists the active jobs.  The -l option lists process id's in addition\n"
-"    to the normal information; the -p option lists process id's only.\n"
-"    If -n is given, only processes that have changed status since the last\n"
-"    notification are printed.  JOBSPEC restricts output to that job.  The\n"
-"    -r and -s options restrict output to running and stopped jobs only,\n"
-"    respectively.  Without options, the status of all active jobs is\n"
-"    printed.  If -x is given, COMMAND is run after all job specifications\n"
-"    that appear in ARGS have been replaced with the process ID of that "
-"job's\n"
-"    process group leader."
-msgstr ""
-
-#: builtins.c:664
-msgid ""
-" By default, removes each JOBSPEC argument from the table of active jobs.\n"
-"    If the -h option is given, the job is not removed from the table, but "
-"is\n"
-"    marked so that SIGHUP is not sent to the job if the shell receives a\n"
-"    SIGHUP.  The -a option, when JOBSPEC is not supplied, means to remove "
-"all\n"
-"    jobs from the job table; the -r option means to remove only running jobs."
-msgstr ""
-
-#: builtins.c:675
-msgid ""
-" Send the processes named by PID (or JOBSPEC) the signal SIGSPEC.  If\n"
-"    SIGSPEC is not present, then SIGTERM is assumed.  An argument of `-l'\n"
-"    lists the signal names; if arguments follow `-l' they are assumed to\n"
-"    be signal numbers for which names should be listed.  Kill is a shell\n"
-"    builtin for two reasons: it allows job IDs to be used instead of\n"
-"    process IDs, and, if you have reached the limit on processes that\n"
-"    you can create, you don't have to start a process to kill another one."
-msgstr ""
-
-#: builtins.c:687
-msgid ""
-" Each ARG is an arithmetic expression to be evaluated.  Evaluation\n"
-"    is done in fixed-width integers with no check for overflow, though\n"
-"    division by 0 is trapped and flagged as an error.  The following\n"
-"    list of operators is grouped into levels of equal-precedence operators.\n"
-"    The levels are listed in order of decreasing precedence.\n"
-"    \n"
-"    \tid++, id--\tvariable post-increment, post-decrement\n"
-"    \t++id, --id\tvariable pre-increment, pre-decrement\n"
-"    \t-, +\t\tunary minus, plus\n"
-"    \t!, ~\t\tlogical and bitwise negation\n"
-"    \t**\t\texponentiation\n"
-"    \t*, /, %\t\tmultiplication, division, remainder\n"
-"    \t+, -\t\taddition, subtraction\n"
-"    \t<<, >>\t\tleft and right bitwise shifts\n"
-"    \t<=, >=, <, >\tcomparison\n"
-"    \t==, !=\t\tequality, inequality\n"
-"    \t&\t\tbitwise AND\n"
-"    \t^\t\tbitwise XOR\n"
-"    \t|\t\tbitwise OR\n"
-"    \t&&\t\tlogical AND\n"
-"    \t||\t\tlogical OR\n"
-"    \texpr ? expr : expr\n"
-"    \t\t\tconditional operator\n"
-"    \t=, *=, /=, %=,\n"
-"    \t+=, -=, <<=, >>=,\n"
-"    \t&=, ^=, |=\tassignment\n"
-"    \n"
-"    Shell variables are allowed as operands.  The name of the variable\n"
-"    is replaced by its value (coerced to a fixed-width integer) within\n"
-"    an expression.  The variable need not have its integer attribute\n"
-"    turned on to be used in an expression.\n"
-"    \n"
-"    Operators are evaluated in order of precedence.  Sub-expressions in\n"
-"    parentheses are evaluated first and may override the precedence\n"
-"    rules above.\n"
-"    \n"
-"    If the last ARG evaluates to 0, let returns 1; 0 is returned\n"
-"    otherwise."
-msgstr ""
-
-#: builtins.c:730
-msgid ""
-" One line is read from the standard input, or from file descriptor FD if "
-"the\n"
-"    -u option is supplied, and the first word is assigned to the first "
-"NAME,\n"
-"    the second word to the second NAME, and so on, with leftover words "
-"assigned\n"
-"    to the last NAME.  Only the characters found in $IFS are recognized as "
-"word\n"
-"    delimiters.  If no NAMEs are supplied, the line read is stored in the "
-"REPLY\n"
-"    variable.  If the -r option is given, this signifies `raw' input, and\n"
-"    backslash escaping is disabled.  The -d option causes read to continue\n"
-"    until the first character of DELIM is read, rather than newline.  If the "
-"-p\n"
-"    option is supplied, the string PROMPT is output without a trailing "
-"newline\n"
-"    before attempting to read.  If -a is supplied, the words read are "
-"assigned\n"
-"    to sequential indices of ARRAY, starting at zero.  If -e is supplied "
-"and\n"
-"    the shell is interactive, readline is used to obtain the line.  If -n "
-"is\n"
-"    supplied with a non-zero NCHARS argument, read returns after NCHARS\n"
-"    characters have been read.  The -s option causes input coming from a\n"
-"    terminal to not be echoed.\n"
-"    \n"
-"    The -t option causes read to time out and return failure if a complete "
-"line\n"
-"    of input is not read within TIMEOUT seconds.  If the TMOUT variable is "
-"set,\n"
-"    its value is the default timeout.  The return code is zero, unless end-"
-"of-file\n"
-"    is encountered, read times out, or an invalid file descriptor is "
-"supplied as\n"
-"    the argument to -u."
-msgstr ""
-
-#: builtins.c:756
-msgid ""
-" Causes a function to exit with the return value specified by N.  If N\n"
-"    is omitted, the return status is that of the last command."
-msgstr ""
-
-#: builtins.c:763
-msgid ""
-"     -a  Mark variables which are modified or created for export.\n"
-"        -b  Notify of job termination immediately.\n"
-"        -e  Exit immediately if a command exits with a non-zero status.\n"
-"        -f  Disable file name generation (globbing).\n"
-"        -h  Remember the location of commands as they are looked up.\n"
-"        -k  All assignment arguments are placed in the environment for a\n"
-"            command, not just those that precede the command name.\n"
-"        -m  Job control is enabled.\n"
-"        -n  Read commands but do not execute them.\n"
-"        -o option-name\n"
-"            Set the variable corresponding to option-name:\n"
-"                allexport    same as -a\n"
-"                braceexpand  same as -B\n"
-"                emacs        use an emacs-style line editing interface\n"
-"                errexit      same as -e\n"
-"                errtrace     same as -E\n"
-"                functrace    same as -T\n"
-"                hashall      same as -h\n"
-"                histexpand   same as -H\n"
-"                history      enable command history\n"
-"                ignoreeof    the shell will not exit upon reading EOF\n"
-"                interactive-comments\n"
-"                             allow comments to appear in interactive "
-"commands\n"
-"                keyword      same as -k\n"
-"                monitor      same as -m\n"
-"                noclobber    same as -C\n"
-"                noexec       same as -n\n"
-"                noglob       same as -f\n"
-"                nolog        currently accepted but ignored\n"
-"                notify       same as -b\n"
-"                nounset      same as -u\n"
-"                onecmd       same as -t\n"
-"                physical     same as -P\n"
-"                pipefail     the return value of a pipeline is the status "
-"of\n"
-"                             the last command to exit with a non-zero "
-"status,\n"
-"                             or zero if no command exited with a non-zero "
-"status\n"
-"                posix        change the behavior of bash where the default\n"
-"                             operation differs from the 1003.2 standard to\n"
-"                             match the standard\n"
-"                privileged   same as -p\n"
-"                verbose      same as -v\n"
-"                vi           use a vi-style line editing interface\n"
-"                xtrace       same as -x\n"
-"        -p  Turned on whenever the real and effective user ids do not "
-"match.\n"
-"            Disables processing of the $ENV file and importing of shell\n"
-"            functions.  Turning this option off causes the effective uid "
-"and\n"
-"            gid to be set to the real uid and gid.\n"
-"        -t  Exit after reading and executing one command.\n"
-"        -u  Treat unset variables as an error when substituting.\n"
-"        -v  Print shell input lines as they are read.\n"
-"        -x  Print commands and their arguments as they are executed.\n"
-"        -B  the shell will perform brace expansion\n"
-"        -C  If set, disallow existing regular files to be overwritten\n"
-"            by redirection of output.\n"
-"        -E  If set, the ERR trap is inherited by shell functions.\n"
-"        -H  Enable ! style history substitution.  This flag is on\n"
-"            by default when the shell is interactive.\n"
-"        -P  If set, do not follow symbolic links when executing commands\n"
-"            such as cd which change the current directory.\n"
-"        -T  If set, the DEBUG trap is inherited by shell functions.\n"
-"        -   Assign any remaining arguments to the positional parameters.\n"
-"            The -x and -v options are turned off.\n"
-"    \n"
-"    Using + rather than - causes these flags to be turned off.  The\n"
-"    flags can also be used upon invocation of the shell.  The current\n"
-"    set of flags may be found in $-.  The remaining n ARGs are positional\n"
-"    parameters and are assigned, in order, to $1, $2, .. $n.  If no\n"
-"    ARGs are given, all shell variables are printed."
-msgstr ""
-
-#: builtins.c:836
-msgid ""
-" For each NAME, remove the corresponding variable or function.  Given\n"
-"    the `-v', unset will only act on variables.  Given the `-f' flag,\n"
-"    unset will only act on functions.  With neither flag, unset first\n"
-"    tries to unset a variable, and if that fails, then tries to unset a\n"
-"    function.  Some variables cannot be unset; also see readonly."
-msgstr ""
-
-#: builtins.c:846
-msgid ""
-" NAMEs are marked for automatic export to the environment of\n"
-"    subsequently executed commands.  If the -f option is given,\n"
-"    the NAMEs refer to functions.  If no NAMEs are given, or if `-p'\n"
-"    is given, a list of all names that are exported in this shell is\n"
-"    printed.  An argument of `-n' says to remove the export property\n"
-"    from subsequent NAMEs.  An argument of `--' disables further option\n"
-"    processing."
-msgstr ""
-
-#: builtins.c:858
-msgid ""
-" The given NAMEs are marked readonly and the values of these NAMEs may\n"
-"    not be changed by subsequent assignment.  If the -f option is given,\n"
-"    then functions corresponding to the NAMEs are so marked.  If no\n"
-"    arguments are given, or if `-p' is given, a list of all readonly names\n"
-"    is printed.  The `-a' option means to treat each NAME as\n"
-"    an array variable.  An argument of `--' disables further option\n"
-"    processing."
-msgstr ""
-
-#: builtins.c:870
-msgid ""
-" The positional parameters from $N+1 ... are renamed to $1 ...  If N is\n"
-"    not given, it is assumed to be 1."
-msgstr ""
-
-#: builtins.c:877 builtins.c:886
-msgid ""
-" Read and execute commands from FILENAME and return.  The pathnames\n"
-"    in $PATH are used to find the directory containing FILENAME.  If any\n"
-"    ARGUMENTS are supplied, they become the positional parameters when\n"
-"    FILENAME is executed."
-msgstr ""
-
-#: builtins.c:896
-msgid ""
-" Suspend the execution of this shell until it receives a SIGCONT\n"
-"    signal.  The `-f' if specified says not to complain about this\n"
-"    being a login shell if it is; just suspend anyway."
-msgstr ""
-
-#: builtins.c:905
-msgid ""
-" Exits with a status of 0 (true) or 1 (false) depending on\n"
-"    the evaluation of EXPR.  Expressions may be unary or binary.  Unary\n"
-"    expressions are often used to examine the status of a file.  There\n"
-"    are string operators as well, and numeric comparison operators.\n"
-"    \n"
-"    File operators:\n"
-"    \n"
-"        -a FILE        True if file exists.\n"
-"        -b FILE        True if file is block special.\n"
-"        -c FILE        True if file is character special.\n"
-"        -d FILE        True if file is a directory.\n"
-"        -e FILE        True if file exists.\n"
-"        -f FILE        True if file exists and is a regular file.\n"
-"        -g FILE        True if file is set-group-id.\n"
-"        -h FILE        True if file is a symbolic link.\n"
-"        -L FILE        True if file is a symbolic link.\n"
-"        -k FILE        True if file has its `sticky' bit set.\n"
-"        -p FILE        True if file is a named pipe.\n"
-"        -r FILE        True if file is readable by you.\n"
-"        -s FILE        True if file exists and is not empty.\n"
-"        -S FILE        True if file is a socket.\n"
-"        -t FD          True if FD is opened on a terminal.\n"
-"        -u FILE        True if the file is set-user-id.\n"
-"        -w FILE        True if the file is writable by you.\n"
-"        -x FILE        True if the file is executable by you.\n"
-"        -O FILE        True if the file is effectively owned by you.\n"
-"        -G FILE        True if the file is effectively owned by your group.\n"
-"        -N FILE        True if the file has been modified since it was last "
-"read.\n"
-"    \n"
-"      FILE1 -nt FILE2  True if file1 is newer than file2 (according to\n"
-"                       modification date).\n"
-"    \n"
-"      FILE1 -ot FILE2  True if file1 is older than file2.\n"
-"    \n"
-"      FILE1 -ef FILE2  True if file1 is a hard link to file2.\n"
-"    \n"
-"    String operators:\n"
-"    \n"
-"        -z STRING      True if string is empty.\n"
-"    \n"
-"        -n STRING\n"
-"        STRING         True if string is not empty.\n"
-"    \n"
-"        STRING1 = STRING2\n"
-"                       True if the strings are equal.\n"
-"        STRING1 != STRING2\n"
-"                       True if the strings are not equal.\n"
-"        STRING1 < STRING2\n"
-"                       True if STRING1 sorts before STRING2 "
-"lexicographically.\n"
-"        STRING1 > STRING2\n"
-"                       True if STRING1 sorts after STRING2 "
-"lexicographically.\n"
-"    \n"
-"    Other operators:\n"
-"    \n"
-"        -o OPTION      True if the shell option OPTION is enabled.\n"
-"        ! EXPR         True if expr is false.\n"
-"        EXPR1 -a EXPR2 True if both expr1 AND expr2 are true.\n"
-"        EXPR1 -o EXPR2 True if either expr1 OR expr2 is true.\n"
-"    \n"
-"        arg1 OP arg2   Arithmetic tests.  OP is one of -eq, -ne,\n"
-"                       -lt, -le, -gt, or -ge.\n"
-"    \n"
-"    Arithmetic binary operators return true if ARG1 is equal, not-equal,\n"
-"    less-than, less-than-or-equal, greater-than, or greater-than-or-equal\n"
-"    than ARG2."
-msgstr ""
-
-#: builtins.c:975
-msgid ""
-" This is a synonym for the \"test\" builtin, but the last\n"
-"    argument must be a literal `]', to match the opening `['."
-msgstr ""
-
-#: builtins.c:982
-msgid ""
-" Print the accumulated user and system times for processes run from\n"
-"    the shell."
-msgstr ""
-
-#: builtins.c:989
-msgid ""
-" The command ARG is to be read and executed when the shell receives\n"
-"    signal(s) SIGNAL_SPEC.  If ARG is absent (and a single SIGNAL_SPEC\n"
-"    is supplied) or `-', each specified signal is reset to its original\n"
-"    value.  If ARG is the null string each SIGNAL_SPEC is ignored by the\n"
-"    shell and by the commands it invokes.  If a SIGNAL_SPEC is EXIT (0)\n"
-"    the command ARG is executed on exit from the shell.  If a SIGNAL_SPEC\n"
-"    is DEBUG, ARG is executed after every simple command.  If the`-p' "
-"option\n"
-"    is supplied then the trap commands associated with each SIGNAL_SPEC are\n"
-"    displayed.  If no arguments are supplied or if only `-p' is given, trap\n"
-"    prints the list of commands associated with each signal.  Each "
-"SIGNAL_SPEC\n"
-"    is either a signal name in <signal.h> or a signal number.  Signal names\n"
-"    are case insensitive and the SIG prefix is optional.  `trap -l' prints\n"
-"    a list of signal names and their corresponding numbers.  Note that a\n"
-"    signal can be sent to the shell with \"kill -signal $$\"."
-msgstr ""
-
-#: builtins.c:1008
-msgid ""
-" For each NAME, indicate how it would be interpreted if used as a\n"
-"    command name.\n"
-"    \n"
-"    If the -t option is used, `type' outputs a single word which is one of\n"
-"    `alias', `keyword', `function', `builtin', `file' or `', if NAME is an\n"
-"    alias, shell reserved word, shell function, shell builtin, disk file,\n"
-"    or unfound, respectively.\n"
-"    \n"
-"    If the -p flag is used, `type' either returns the name of the disk\n"
-"    file that would be executed, or nothing if `type -t NAME' would not\n"
-"    return `file'.\n"
-"    \n"
-"    If the -a flag is used, `type' displays all of the places that contain\n"
-"    an executable named `file'.  This includes aliases, builtins, and\n"
-"    functions, if and only if the -p flag is not also used.\n"
-"    \n"
-"    The -f flag suppresses shell function lookup.\n"
-"    \n"
-"    The -P flag forces a PATH search for each NAME, even if it is an alias,\n"
-"    builtin, or function, and returns the name of the disk file that would\n"
-"    be executed."
-msgstr ""
-
-#: builtins.c:1035
-msgid ""
-" Ulimit provides control over the resources available to processes\n"
-"    started by the shell, on systems that allow such control.  If an\n"
-"    option is given, it is interpreted as follows:\n"
-"    \n"
-"        -S\tuse the `soft' resource limit\n"
-"        -H\tuse the `hard' resource limit\n"
-"        -a\tall current limits are reported\n"
-"        -c\tthe maximum size of core files created\n"
-"        -d\tthe maximum size of a process's data segment\n"
-"        -f\tthe maximum size of files created by the shell\n"
-"        -i  the maximum number of pending signals\n"
-"        -l\tthe maximum size a process may lock into memory\n"
-"        -m\tthe maximum resident set size\n"
-"        -n\tthe maximum number of open file descriptors\n"
-"        -p\tthe pipe buffer size\n"
-"        -q  the maximum number of bytes in POSIX message queues\n"
-"        -s\tthe maximum stack size\n"
-"        -t\tthe maximum amount of cpu time in seconds\n"
-"        -u\tthe maximum number of user processes\n"
-"        -v\tthe size of virtual memory\n"
-"        -x  the maximum number of file locks\n"
-"    \n"
-"    If LIMIT is given, it is the new value of the specified resource;\n"
-"    the special LIMIT values `soft', `hard', and `unlimited' stand for\n"
-"    the current soft limit, the current hard limit, and no limit, "
-"respectively.\n"
-"    Otherwise, the current value of the specified resource is printed.\n"
-"    If no option is given, then -f is assumed.  Values are in 1024-byte\n"
-"    increments, except for -t, which is in seconds, -p, which is in\n"
-"    increments of 512 bytes, and -u, which is an unscaled number of\n"
-"    processes."
-msgstr ""
-
-#: builtins.c:1071
-msgid ""
-" The user file-creation mask is set to MODE.  If MODE is omitted, or if\n"
-"    `-S' is supplied, the current value of the mask is printed.  The `-S'\n"
-"    option makes the output symbolic; otherwise an octal number is output.\n"
-"    If `-p' is supplied, and MODE is omitted, the output is in a form\n"
-"    that may be used as input.  If MODE begins with a digit, it is\n"
-"    interpreted as an octal number, otherwise it is a symbolic mode string\n"
-"    like that accepted by chmod(1)."
-msgstr ""
-
-#: builtins.c:1084
-msgid ""
-" Wait for the specified process and report its termination status.  If\n"
-"    N is not given, all currently active child processes are waited for,\n"
-"    and the return code is zero.  N may be a process ID or a job\n"
-"    specification; if a job spec is given, all processes in the job's\n"
-"    pipeline are waited for."
-msgstr ""
-
-#: builtins.c:1096
-msgid ""
-" Wait for the specified process and report its termination status.  If\n"
-"    N is not given, all currently active child processes are waited for,\n"
-"    and the return code is zero.  N is a process ID; if it is not given,\n"
-"    all child processes of the shell are waited for."
-msgstr ""
-
-#: builtins.c:1106
-msgid ""
-" The `for' loop executes a sequence of commands for each member in a\n"
-"    list of items.  If `in WORDS ...;' is not present, then `in \"$@\"' is\n"
-"    assumed.  For each element in WORDS, NAME is set to that element, and\n"
-"    the COMMANDS are executed."
-msgstr ""
-
-#: builtins.c:1115
-msgid ""
-" Equivalent to\n"
-"    \t(( EXP1 ))\n"
-"    \twhile (( EXP2 )); do\n"
-"    \t\tCOMMANDS\n"
-"    \t\t(( EXP3 ))\n"
-"    \tdone\n"
-"    EXP1, EXP2, and EXP3 are arithmetic expressions.  If any expression is\n"
-"    omitted, it behaves as if it evaluates to 1."
-msgstr ""
-
-#: builtins.c:1128
-msgid ""
-" The WORDS are expanded, generating a list of words.  The\n"
-"    set of expanded words is printed on the standard error, each\n"
-"    preceded by a number.  If `in WORDS' is not present, `in \"$@\"'\n"
-"    is assumed.  The PS3 prompt is then displayed and a line read\n"
-"    from the standard input.  If the line consists of the number\n"
-"    corresponding to one of the displayed words, then NAME is set\n"
-"    to that word.  If the line is empty, WORDS and the prompt are\n"
-"    redisplayed.  If EOF is read, the command completes.  Any other\n"
-"    value read causes NAME to be set to null.  The line read is saved\n"
-"    in the variable REPLY.  COMMANDS are executed after each selection\n"
-"    until a break command is executed."
-msgstr ""
-
-#: builtins.c:1144
-msgid ""
-" Execute PIPELINE and print a summary of the real time, user CPU time,\n"
-"    and system CPU time spent executing PIPELINE when it terminates.\n"
-"    The return status is the return status of PIPELINE.  The `-p' option\n"
-"    prints the timing summary in a slightly different format.  This uses\n"
-"    the value of the TIMEFORMAT variable as the output format."
-msgstr ""
-
-#: builtins.c:1154
-msgid ""
-" Selectively execute COMMANDS based upon WORD matching PATTERN.  The\n"
-"    `|' is used to separate multiple patterns."
-msgstr ""
-
-#: builtins.c:1161
-msgid ""
-" The `if COMMANDS' list is executed.  If its exit status is zero, then the\n"
-"    `then COMMANDS' list is executed.  Otherwise, each `elif COMMANDS' list "
-"is\n"
-"    executed in turn, and if its exit status is zero, the corresponding\n"
-"    `then COMMANDS' list is executed and the if command completes.  "
-"Otherwise,\n"
-"    the `else COMMANDS' list is executed, if present.  The exit status of "
-"the\n"
-"    entire construct is the exit status of the last command executed, or "
-"zero\n"
-"    if no condition tested true."
-msgstr ""
-
-#: builtins.c:1173
-msgid ""
-" Expand and execute COMMANDS as long as the final command in the\n"
-"    `while' COMMANDS has an exit status of zero."
-msgstr ""
-
-#: builtins.c:1180
-msgid ""
-" Expand and execute COMMANDS as long as the final command in the\n"
-"    `until' COMMANDS has an exit status which is not zero."
-msgstr ""
-
-#: builtins.c:1187
-msgid ""
-" Create a simple command invoked by NAME which runs COMMANDS.\n"
-"    Arguments on the command line along with NAME are passed to the\n"
-"    function as $0 .. $n."
-msgstr ""
-
-#: builtins.c:1195
-msgid ""
-" Run a set of commands in a group.  This is one way to redirect an\n"
-"    entire set of commands."
-msgstr ""
-
-#: builtins.c:1202
-msgid ""
-" Equivalent to the JOB_SPEC argument to the `fg' command.  Resume a\n"
-"    stopped or background job.  JOB_SPEC can specify either a job name\n"
-"    or a job number.  Following JOB_SPEC with a `&' places the job in\n"
-"    the background, as if the job specification had been supplied as an\n"
-"    argument to `bg'."
-msgstr ""
-
-#: builtins.c:1212
-msgid ""
-" The EXPRESSION is evaluated according to the rules for arithmetic\n"
-"    evaluation.  Equivalent to \"let EXPRESSION\"."
-msgstr ""
-
-#: builtins.c:1219
-msgid ""
-" Returns a status of 0 or 1 depending on the evaluation of the conditional\n"
-"    expression EXPRESSION.  Expressions are composed of the same primaries "
-"used\n"
-"    by the `test' builtin, and may be combined using the following "
-"operators\n"
-"    \n"
-"    \t( EXPRESSION )\tReturns the value of EXPRESSION\n"
-"    \t! EXPRESSION\tTrue if EXPRESSION is false; else false\n"
-"    \tEXPR1 && EXPR2\tTrue if both EXPR1 and EXPR2 are true; else false\n"
-"    \tEXPR1 || EXPR2\tTrue if either EXPR1 or EXPR2 is true; else false\n"
-"    \n"
-"    When the `==' and `!=' operators are used, the string to the right of "
-"the\n"
-"    operator is used as a pattern and pattern matching is performed.  The\n"
-"    && and || operators do not evaluate EXPR2 if EXPR1 is sufficient to\n"
-"    determine the expression's value."
-msgstr ""
-
-#: builtins.c:1237
-msgid ""
-" BASH_VERSION    Version information for this Bash.\n"
-"    CDPATH          A colon-separated list of directories to search\n"
-"    \t\tfor directries given as arguments to `cd'.\n"
-"    GLOBIGNORE\tA colon-separated list of patterns describing filenames to\n"
-"    \t\tbe ignored by pathname expansion.\n"
-"    HISTFILE        The name of the file where your command history is "
-"stored.\n"
-"    HISTFILESIZE    The maximum number of lines this file can contain.\n"
-"    HISTSIZE        The maximum number of history lines that a running\n"
-"    \t\tshell can access.\n"
-"    HOME            The complete pathname to your login directory.\n"
-"    HOSTNAME\tThe name of the current host.\n"
-"    HOSTTYPE        The type of CPU this version of Bash is running under.\n"
-"    IGNOREEOF       Controls the action of the shell on receipt of an EOF\n"
-"    \t\tcharacter as the sole input.  If set, then the value\n"
-"    \t\tof it is the number of EOF characters that can be seen\n"
-"    \t\tin a row on an empty line before the shell will exit\n"
-"    \t\t(default 10).  When unset, EOF signifies the end of input.\n"
-"    MACHTYPE\tA string describing the current system Bash is running on.\n"
-"    MAILCHECK\tHow often, in seconds, Bash checks for new mail.\n"
-"    MAILPATH\tA colon-separated list of filenames which Bash checks\n"
-"    \t\tfor new mail.\n"
-"    OSTYPE\t\tThe version of Unix this version of Bash is running on.\n"
-"    PATH            A colon-separated list of directories to search when\n"
-"    \t\tlooking for commands.\n"
-"    PROMPT_COMMAND  A command to be executed before the printing of each\n"
-"    \t\tprimary prompt.\n"
-"    PS1             The primary prompt string.\n"
-"    PS2             The secondary prompt string.\n"
-"    PWD\t\tThe full pathname of the current directory.\n"
-"    SHELLOPTS\tA colon-separated list of enabled shell options.\n"
-"    TERM            The name of the current terminal type.\n"
-"    TIMEFORMAT\tThe output format for timing statistics displayed by the\n"
-"    \t\t`time' reserved word.\n"
-"    auto_resume     Non-null means a command word appearing on a line by\n"
-"    \t\titself is first looked for in the list of currently\n"
-"    \t\tstopped jobs.  If found there, that job is foregrounded.\n"
-"    \t\tA value of `exact' means that the command word must\n"
-"    \t\texactly match a command in the list of stopped jobs.  A\n"
-"    \t\tvalue of `substring' means that the command word must\n"
-"    \t\tmatch a substring of the job.  Any other value means that\n"
-"    \t\tthe command must be a prefix of a stopped job.\n"
-"    histchars       Characters controlling history expansion and quick\n"
-"    \t\tsubstitution.  The first character is the history\n"
-"    \t\tsubstitution character, usually `!'.  The second is\n"
-"    \t\tthe `quick substitution' character, usually `^'.  The\n"
-"    \t\tthird is the `history comment' character, usually `#'.\n"
-"    HISTIGNORE\tA colon-separated list of patterns used to decide which\n"
-"    \t\tcommands should be saved on the history list.\n"
-msgstr ""
-
-#: builtins.c:1292
-msgid ""
-" Adds a directory to the top of the directory stack, or rotates\n"
-"    the stack, making the new top of the stack the current working\n"
-"    directory.  With no arguments, exchanges the top two directories.\n"
-"    \n"
-"    +N\tRotates the stack so that the Nth directory (counting\n"
-"    \tfrom the left of the list shown by `dirs', starting with\n"
-"    \tzero) is at the top.\n"
-"    \n"
-"    -N\tRotates the stack so that the Nth directory (counting\n"
-"    \tfrom the right of the list shown by `dirs', starting with\n"
-"    \tzero) is at the top.\n"
-"    \n"
-"    -n\tsuppress the normal change of directory when adding directories\n"
-"    \tto the stack, so only the stack is manipulated.\n"
-"    \n"
-"    dir\tadds DIR to the directory stack at the top, making it the\n"
-"    \tnew current working directory.\n"
-"    \n"
-"    You can see the directory stack with the `dirs' command."
-msgstr ""
-
-#: builtins.c:1318
-msgid ""
-" Removes entries from the directory stack.  With no arguments,\n"
-"    removes the top directory from the stack, and cd's to the new\n"
-"    top directory.\n"
-"    \n"
-"    +N\tremoves the Nth entry counting from the left of the list\n"
-"    \tshown by `dirs', starting with zero.  For example: `popd +0'\n"
-"    \tremoves the first directory, `popd +1' the second.\n"
-"    \n"
-"    -N\tremoves the Nth entry counting from the right of the list\n"
-"    \tshown by `dirs', starting with zero.  For example: `popd -0'\n"
-"    \tremoves the last directory, `popd -1' the next to last.\n"
-"    \n"
-"    -n\tsuppress the normal change of directory when removing directories\n"
-"    \tfrom the stack, so only the stack is manipulated.\n"
-"    \n"
-"    You can see the directory stack with the `dirs' command."
-msgstr ""
-
-#: builtins.c:1341
-msgid ""
-" Display the list of currently remembered directories.  Directories\n"
-"    find their way onto the list with the `pushd' command; you can get\n"
-"    back up through the list with the `popd' command.\n"
-"    \n"
-"    The -l flag specifies that `dirs' should not print shorthand versions\n"
-"    of directories which are relative to your home directory.  This means\n"
-"    that `~/bin' might be displayed as `/homes/bfox/bin'.  The -v flag\n"
-"    causes `dirs' to print the directory stack with one entry per line,\n"
-"    prepending the directory name with its position in the stack.  The -p\n"
-"    flag does the same thing, but the stack position is not prepended.\n"
-"    The -c flag clears the directory stack by deleting all of the elements.\n"
-"    \n"
-"    +N\tdisplays the Nth entry counting from the left of the list shown by\n"
-"    \tdirs when invoked without options, starting with zero.\n"
-"    \n"
-"    -N\tdisplays the Nth entry counting from the right of the list shown by\n"
-"    \tdirs when invoked without options, starting with zero."
-msgstr ""
-
-#: builtins.c:1364
-msgid ""
-" Toggle the values of variables controlling optional behavior.\n"
-"    The -s flag means to enable (set) each OPTNAME; the -u flag\n"
-"    unsets each OPTNAME.  The -q flag suppresses output; the exit\n"
-"    status indicates whether each OPTNAME is set or unset.  The -o\n"
-"    option restricts the OPTNAMEs to those defined for use with\n"
-"    `set -o'.  With no options, or with the -p option, a list of all\n"
-"    settable options is displayed, with an indication of whether or\n"
-"    not each is set."
-msgstr ""
-
-#: builtins.c:1377
-msgid ""
-" printf formats and prints ARGUMENTS under control of the FORMAT. FORMAT\n"
-"    is a character string which contains three types of objects: plain\n"
-"    characters, which are simply copied to standard output, character "
-"escape\n"
-"    sequences which are converted and copied to the standard output, and\n"
-"    format specifications, each of which causes printing of the next "
-"successive\n"
-"    argument.  In addition to the standard printf(1) formats, %b means to\n"
-"    expand backslash escape sequences in the corresponding argument, and %q\n"
-"    means to quote the argument in a way that can be reused as shell input.\n"
-"    If the -v option is supplied, the output is placed into the value of "
-"the\n"
-"    shell variable VAR rather than being sent to the standard output."
-msgstr ""
-
-#: builtins.c:1393
-msgid ""
-" For each NAME, specify how arguments are to be completed.\n"
-"    If the -p option is supplied, or if no options are supplied, existing\n"
-"    completion specifications are printed in a way that allows them to be\n"
-"    reused as input.  The -r option removes a completion specification for\n"
-"    each NAME, or, if no NAMEs are supplied, all completion specifications."
-msgstr ""
-
-#: builtins.c:1405
-msgid ""
-" Display the possible completions depending on the options.  Intended\n"
-"    to be used from within a shell function generating possible "
-"completions.\n"
-"    If the optional WORD argument is supplied, matches against WORD are\n"
-"    generated."
-msgstr ""
diff --git a/po/bash-3.2.pot b/po/bash-3.2.pot
deleted file mode 100644 (file)
index 4a79cc4..0000000
+++ /dev/null
@@ -1,2578 +0,0 @@
-# SOME DESCRIPTIVE TITLE.
-# Copyright (C) YEAR Free Software Foundation, Inc.
-# This file is distributed under the same license as the PACKAGE package.
-# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
-#
-#, fuzzy
-msgid ""
-msgstr ""
-"Project-Id-Version: PACKAGE VERSION\n"
-"POT-Creation-Date: 2006-10-23 17:20-0400\n"
-"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
-"Language-Team: LANGUAGE <LL@li.org>\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=CHARSET\n"
-"Content-Transfer-Encoding: 8bit\n"
-
-#: arrayfunc.c:48
-msgid "bad array subscript"
-msgstr ""
-
-#: arrayfunc.c:362
-#, c-format
-msgid "%s: cannot assign to non-numeric index"
-msgstr ""
-
-#: bashhist.c:331
-#, c-format
-msgid "%s: cannot create: %s"
-msgstr ""
-
-#: bashline.c:3030
-msgid "bash_execute_unix_command: cannot find keymap for command"
-msgstr ""
-
-#: bashline.c:3079
-#, c-format
-msgid "%s: first non-whitespace character is not `\"'"
-msgstr ""
-
-#: bashline.c:3108
-#, c-format
-msgid "no closing `%c' in %s"
-msgstr ""
-
-#: bashline.c:3142
-#, c-format
-msgid "%s: missing colon separator"
-msgstr ""
-
-#: builtins/bind.def:194
-#, c-format
-msgid "`%s': invalid keymap name"
-msgstr ""
-
-#: builtins/bind.def:233
-#, c-format
-msgid "%s: cannot read: %s"
-msgstr ""
-
-#: builtins/bind.def:248
-#, c-format
-msgid "`%s': cannot unbind"
-msgstr ""
-
-#: builtins/bind.def:283
-#, c-format
-msgid "`%s': unknown function name"
-msgstr ""
-
-#: builtins/bind.def:291
-#, c-format
-msgid "%s is not bound to any keys.\n"
-msgstr ""
-
-#: builtins/bind.def:295
-#, c-format
-msgid "%s can be invoked via "
-msgstr ""
-
-#: builtins/break.def:128
-msgid "only meaningful in a `for', `while', or `until' loop"
-msgstr ""
-
-#: builtins/caller.def:131
-msgid "Returns the context of the current subroutine call."
-msgstr ""
-
-#: builtins/caller.def:132 builtins/caller.def:136 builtins/pushd.def:666
-#: builtins/pushd.def:674 builtins/pushd.def:677 builtins/pushd.def:687
-#: builtins/pushd.def:691 builtins/pushd.def:695 builtins/pushd.def:698
-#: builtins/pushd.def:701 builtins/pushd.def:710 builtins/pushd.def:714
-#: builtins/pushd.def:718 builtins/pushd.def:721
-msgid " "
-msgstr ""
-
-#: builtins/caller.def:133
-msgid "Without EXPR, returns returns \"$line $filename\".  With EXPR,"
-msgstr ""
-
-#: builtins/caller.def:134
-msgid "returns \"$line $subroutine $filename\"; this extra information"
-msgstr ""
-
-#: builtins/caller.def:135
-msgid "can be used used to provide a stack trace."
-msgstr ""
-
-#: builtins/caller.def:137
-msgid "The value of EXPR indicates how many call frames to go back before the"
-msgstr ""
-
-#: builtins/caller.def:138
-msgid "current one; the top frame is frame 0."
-msgstr ""
-
-#: builtins/cd.def:204
-msgid "HOME not set"
-msgstr ""
-
-#: builtins/cd.def:216
-msgid "OLDPWD not set"
-msgstr ""
-
-#: builtins/common.c:133 test.c:822
-msgid "too many arguments"
-msgstr ""
-
-#: builtins/common.c:157 shell.c:474 shell.c:748
-#, c-format
-msgid "%s: option requires an argument"
-msgstr ""
-
-#: builtins/common.c:164
-#, c-format
-msgid "%s: numeric argument required"
-msgstr ""
-
-#: builtins/common.c:171
-#, c-format
-msgid "%s: not found"
-msgstr ""
-
-#: builtins/common.c:180 shell.c:761
-#, c-format
-msgid "%s: invalid option"
-msgstr ""
-
-#: builtins/common.c:187
-#, c-format
-msgid "%s: invalid option name"
-msgstr ""
-
-#: builtins/common.c:194 general.c:230 general.c:235
-#, c-format
-msgid "`%s': not a valid identifier"
-msgstr ""
-
-#: builtins/common.c:201
-#, c-format
-msgid "%s: invalid number"
-msgstr ""
-
-#: builtins/common.c:208
-#, c-format
-msgid "%s: invalid signal specification"
-msgstr ""
-
-#: builtins/common.c:215
-#, c-format
-msgid "`%s': not a pid or valid job spec"
-msgstr ""
-
-#: builtins/common.c:222 error.c:451
-#, c-format
-msgid "%s: readonly variable"
-msgstr ""
-
-#: builtins/common.c:230
-#, c-format
-msgid "%s: %s out of range"
-msgstr ""
-
-#: builtins/common.c:230 builtins/common.c:232
-msgid "argument"
-msgstr ""
-
-#: builtins/common.c:232
-#, c-format
-msgid "%s out of range"
-msgstr ""
-
-#: builtins/common.c:240
-#, c-format
-msgid "%s: no such job"
-msgstr ""
-
-#: builtins/common.c:248
-#, c-format
-msgid "%s: no job control"
-msgstr ""
-
-#: builtins/common.c:250
-msgid "no job control"
-msgstr ""
-
-#: builtins/common.c:260
-#, c-format
-msgid "%s: restricted"
-msgstr ""
-
-#: builtins/common.c:262
-msgid "restricted"
-msgstr ""
-
-#: builtins/common.c:270
-#, c-format
-msgid "%s: not a shell builtin"
-msgstr ""
-
-#: builtins/common.c:276
-#, c-format
-msgid "write error: %s"
-msgstr ""
-
-#: builtins/common.c:481
-#, c-format
-msgid "%s: error retrieving current directory: %s: %s\n"
-msgstr ""
-
-#: builtins/common.c:547 builtins/common.c:549
-#, c-format
-msgid "%s: ambiguous job spec"
-msgstr ""
-
-#: builtins/complete.def:251
-#, c-format
-msgid "%s: invalid action name"
-msgstr ""
-
-#: builtins/complete.def:381 builtins/complete.def:524
-#, c-format
-msgid "%s: no completion specification"
-msgstr ""
-
-#: builtins/complete.def:571
-msgid "warning: -F option may not work as you expect"
-msgstr ""
-
-#: builtins/complete.def:573
-msgid "warning: -C option may not work as you expect"
-msgstr ""
-
-#: builtins/declare.def:106
-msgid "can only be used in a function"
-msgstr ""
-
-#: builtins/declare.def:306
-msgid "cannot use `-f' to make functions"
-msgstr ""
-
-#: builtins/declare.def:318 execute_cmd.c:4073
-#, c-format
-msgid "%s: readonly function"
-msgstr ""
-
-#: builtins/declare.def:406
-#, c-format
-msgid "%s: cannot destroy array variables in this way"
-msgstr ""
-
-#: builtins/enable.def:128 builtins/enable.def:136
-msgid "dynamic loading not available"
-msgstr ""
-
-#: builtins/enable.def:303
-#, c-format
-msgid "cannot open shared object %s: %s"
-msgstr ""
-
-#: builtins/enable.def:326
-#, c-format
-msgid "cannot find %s in shared object %s: %s"
-msgstr ""
-
-#: builtins/enable.def:450
-#, c-format
-msgid "%s: not dynamically loaded"
-msgstr ""
-
-#: builtins/enable.def:465
-#, c-format
-msgid "%s: cannot delete: %s"
-msgstr ""
-
-#: builtins/evalfile.c:129 execute_cmd.c:3930 shell.c:1409
-#, c-format
-msgid "%s: is a directory"
-msgstr ""
-
-#: builtins/evalfile.c:134
-#, c-format
-msgid "%s: not a regular file"
-msgstr ""
-
-#: builtins/evalfile.c:142
-#, c-format
-msgid "%s: file is too large"
-msgstr ""
-
-#: builtins/exec.def:205
-#, c-format
-msgid "%s: cannot execute: %s"
-msgstr ""
-
-#: builtins/exit.def:83
-msgid "not login shell: use `exit'"
-msgstr ""
-
-#: builtins/exit.def:111
-msgid "There are stopped jobs.\n"
-msgstr ""
-
-#: builtins/fc.def:258
-msgid "no command found"
-msgstr ""
-
-#: builtins/fc.def:328
-msgid "history specification"
-msgstr ""
-
-#: builtins/fc.def:349
-#, c-format
-msgid "%s: cannot open temp file: %s"
-msgstr ""
-
-#: builtins/fg_bg.def:149
-#, c-format
-msgid "job %d started without job control"
-msgstr ""
-
-#: builtins/getopt.c:109
-#, c-format
-msgid "%s: illegal option -- %c\n"
-msgstr ""
-
-#: builtins/getopt.c:110
-#, c-format
-msgid "%s: option requires an argument -- %c\n"
-msgstr ""
-
-#: builtins/hash.def:84
-msgid "hashing disabled"
-msgstr ""
-
-#: builtins/hash.def:130
-#, c-format
-msgid "%s: hash table empty\n"
-msgstr ""
-
-#: builtins/help.def:108
-msgid "Shell commands matching keywords `"
-msgstr ""
-
-#: builtins/help.def:110
-msgid "Shell commands matching keyword `"
-msgstr ""
-
-#: builtins/help.def:138
-#, c-format
-msgid ""
-"no help topics match `%s'.  Try `help help' or `man -k %s' or `info %s'."
-msgstr ""
-
-#: builtins/help.def:164
-#, c-format
-msgid "%s: cannot open: %s"
-msgstr ""
-
-#: builtins/help.def:182
-msgid ""
-"These shell commands are defined internally.  Type `help' to see this list.\n"
-"Type `help name' to find out more about the function `name'.\n"
-"Use `info bash' to find out more about the shell in general.\n"
-"Use `man -k' or `info' to find out more about commands not in this list.\n"
-"\n"
-"A star (*) next to a name means that the command is disabled.\n"
-"\n"
-msgstr ""
-
-#: builtins/history.def:150
-msgid "cannot use more than one of -anrw"
-msgstr ""
-
-#: builtins/history.def:182
-msgid "history position"
-msgstr ""
-
-#: builtins/history.def:400
-#, c-format
-msgid "%s: history expansion failed"
-msgstr ""
-
-#: builtins/jobs.def:99
-msgid "no other options allowed with `-x'"
-msgstr ""
-
-#: builtins/kill.def:187
-#, c-format
-msgid "%s: arguments must be process or job IDs"
-msgstr ""
-
-#: builtins/kill.def:250
-msgid "Unknown error"
-msgstr ""
-
-#: builtins/let.def:94 builtins/let.def:119 expr.c:498 expr.c:513
-msgid "expression expected"
-msgstr ""
-
-#: builtins/printf.def:339
-#, c-format
-msgid "`%s': missing format character"
-msgstr ""
-
-#: builtins/printf.def:516
-#, c-format
-msgid "`%c': invalid format character"
-msgstr ""
-
-#: builtins/printf.def:722
-msgid "missing hex digit for \\x"
-msgstr ""
-
-#: builtins/pushd.def:175
-msgid "no other directory"
-msgstr ""
-
-#: builtins/pushd.def:442
-msgid "<no current directory>"
-msgstr ""
-
-#: builtins/pushd.def:663
-msgid "Display the list of currently remembered directories.  Directories"
-msgstr ""
-
-#: builtins/pushd.def:664
-msgid "find their way onto the list with the `pushd' command; you can get"
-msgstr ""
-
-#: builtins/pushd.def:665
-msgid "back up through the list with the `popd' command."
-msgstr ""
-
-#: builtins/pushd.def:667
-msgid "The -l flag specifies that `dirs' should not print shorthand versions"
-msgstr ""
-
-#: builtins/pushd.def:668
-msgid "of directories which are relative to your home directory.  This means"
-msgstr ""
-
-#: builtins/pushd.def:669
-msgid "that `~/bin' might be displayed as `/homes/bfox/bin'.  The -v flag"
-msgstr ""
-
-#: builtins/pushd.def:670
-msgid "causes `dirs' to print the directory stack with one entry per line,"
-msgstr ""
-
-#: builtins/pushd.def:671
-msgid "prepending the directory name with its position in the stack.  The -p"
-msgstr ""
-
-#: builtins/pushd.def:672
-msgid "flag does the same thing, but the stack position is not prepended."
-msgstr ""
-
-#: builtins/pushd.def:673
-msgid "The -c flag clears the directory stack by deleting all of the elements."
-msgstr ""
-
-#: builtins/pushd.def:675
-msgid "+N   displays the Nth entry counting from the left of the list shown by"
-msgstr ""
-
-#: builtins/pushd.def:676 builtins/pushd.def:679
-msgid "     dirs when invoked without options, starting with zero."
-msgstr ""
-
-#: builtins/pushd.def:678
-msgid ""
-"-N   displays the Nth entry counting from the right of the list shown by"
-msgstr ""
-
-#: builtins/pushd.def:684
-msgid "Adds a directory to the top of the directory stack, or rotates"
-msgstr ""
-
-#: builtins/pushd.def:685
-msgid "the stack, making the new top of the stack the current working"
-msgstr ""
-
-#: builtins/pushd.def:686
-msgid "directory.  With no arguments, exchanges the top two directories."
-msgstr ""
-
-#: builtins/pushd.def:688
-msgid "+N   Rotates the stack so that the Nth directory (counting"
-msgstr ""
-
-#: builtins/pushd.def:689
-msgid "     from the left of the list shown by `dirs', starting with"
-msgstr ""
-
-#: builtins/pushd.def:690 builtins/pushd.def:694
-msgid "     zero) is at the top."
-msgstr ""
-
-#: builtins/pushd.def:692
-msgid "-N   Rotates the stack so that the Nth directory (counting"
-msgstr ""
-
-#: builtins/pushd.def:693
-msgid "     from the right of the list shown by `dirs', starting with"
-msgstr ""
-
-#: builtins/pushd.def:696
-msgid "-n   suppress the normal change of directory when adding directories"
-msgstr ""
-
-#: builtins/pushd.def:697
-msgid "     to the stack, so only the stack is manipulated."
-msgstr ""
-
-#: builtins/pushd.def:699
-msgid "dir  adds DIR to the directory stack at the top, making it the"
-msgstr ""
-
-#: builtins/pushd.def:700
-msgid "     new current working directory."
-msgstr ""
-
-#: builtins/pushd.def:702 builtins/pushd.def:722
-msgid "You can see the directory stack with the `dirs' command."
-msgstr ""
-
-#: builtins/pushd.def:707
-msgid "Removes entries from the directory stack.  With no arguments,"
-msgstr ""
-
-#: builtins/pushd.def:708
-msgid "removes the top directory from the stack, and cd's to the new"
-msgstr ""
-
-#: builtins/pushd.def:709
-msgid "top directory."
-msgstr ""
-
-#: builtins/pushd.def:711
-msgid "+N   removes the Nth entry counting from the left of the list"
-msgstr ""
-
-#: builtins/pushd.def:712
-msgid "     shown by `dirs', starting with zero.  For example: `popd +0'"
-msgstr ""
-
-#: builtins/pushd.def:713
-msgid "     removes the first directory, `popd +1' the second."
-msgstr ""
-
-#: builtins/pushd.def:715
-msgid "-N   removes the Nth entry counting from the right of the list"
-msgstr ""
-
-#: builtins/pushd.def:716
-msgid "     shown by `dirs', starting with zero.  For example: `popd -0'"
-msgstr ""
-
-#: builtins/pushd.def:717
-msgid "     removes the last directory, `popd -1' the next to last."
-msgstr ""
-
-#: builtins/pushd.def:719
-msgid "-n   suppress the normal change of directory when removing directories"
-msgstr ""
-
-#: builtins/pushd.def:720
-msgid "     from the stack, so only the stack is manipulated."
-msgstr ""
-
-#: builtins/read.def:210
-#, c-format
-msgid "%s: invalid timeout specification"
-msgstr ""
-
-#: builtins/read.def:233
-#, c-format
-msgid "%s: invalid file descriptor specification"
-msgstr ""
-
-#: builtins/read.def:240
-#, c-format
-msgid "%d: invalid file descriptor: %s"
-msgstr ""
-
-#: builtins/read.def:478
-#, c-format
-msgid "read error: %d: %s"
-msgstr ""
-
-#: builtins/return.def:63
-msgid "can only `return' from a function or sourced script"
-msgstr ""
-
-#: builtins/set.def:744
-msgid "cannot simultaneously unset a function and a variable"
-msgstr ""
-
-#: builtins/set.def:781
-#, c-format
-msgid "%s: cannot unset"
-msgstr ""
-
-#: builtins/set.def:788
-#, c-format
-msgid "%s: cannot unset: readonly %s"
-msgstr ""
-
-#: builtins/set.def:799
-#, c-format
-msgid "%s: not an array variable"
-msgstr ""
-
-#: builtins/setattr.def:166
-#, c-format
-msgid "%s: not a function"
-msgstr ""
-
-#: builtins/shift.def:66 builtins/shift.def:72
-msgid "shift count"
-msgstr ""
-
-#: builtins/shopt.def:227
-msgid "cannot set and unset shell options simultaneously"
-msgstr ""
-
-#: builtins/shopt.def:292
-#, c-format
-msgid "%s: invalid shell option name"
-msgstr ""
-
-#: builtins/source.def:115
-msgid "filename argument required"
-msgstr ""
-
-#: builtins/source.def:135
-#, c-format
-msgid "%s: file not found"
-msgstr ""
-
-#: builtins/suspend.def:95
-msgid "cannot suspend"
-msgstr ""
-
-#: builtins/suspend.def:105
-msgid "cannot suspend a login shell"
-msgstr ""
-
-#: builtins/type.def:232
-#, c-format
-msgid "%s is aliased to `%s'\n"
-msgstr ""
-
-#: builtins/type.def:253
-#, c-format
-msgid "%s is a shell keyword\n"
-msgstr ""
-
-#: builtins/type.def:273
-#, c-format
-msgid "%s is a function\n"
-msgstr ""
-
-#: builtins/type.def:298
-#, c-format
-msgid "%s is a shell builtin\n"
-msgstr ""
-
-#: builtins/type.def:319
-#, c-format
-msgid "%s is %s\n"
-msgstr ""
-
-#: builtins/type.def:339
-#, c-format
-msgid "%s is hashed (%s)\n"
-msgstr ""
-
-#: builtins/ulimit.def:352
-#, c-format
-msgid "%s: invalid limit argument"
-msgstr ""
-
-#: builtins/ulimit.def:378
-#, c-format
-msgid "`%c': bad command"
-msgstr ""
-
-#: builtins/ulimit.def:407
-#, c-format
-msgid "%s: cannot get limit: %s"
-msgstr ""
-
-#: builtins/ulimit.def:445
-#, c-format
-msgid "%s: cannot modify limit: %s"
-msgstr ""
-
-#: builtins/umask.def:112
-msgid "octal number"
-msgstr ""
-
-#: builtins/umask.def:226
-#, c-format
-msgid "`%c': invalid symbolic mode operator"
-msgstr ""
-
-#: builtins/umask.def:281
-#, c-format
-msgid "`%c': invalid symbolic mode character"
-msgstr ""
-
-#: error.c:163
-#, c-format
-msgid "last command: %s\n"
-msgstr ""
-
-#: error.c:171
-msgid "Aborting..."
-msgstr ""
-
-#: error.c:258
-#, c-format
-msgid "%s: warning: "
-msgstr ""
-
-#: error.c:403
-msgid "unknown command error"
-msgstr ""
-
-#: error.c:404
-msgid "bad command type"
-msgstr ""
-
-#: error.c:405
-msgid "bad connector"
-msgstr ""
-
-#: error.c:406
-msgid "bad jump"
-msgstr ""
-
-#: error.c:444
-#, c-format
-msgid "%s: unbound variable"
-msgstr ""
-
-#: eval.c:176
-msgid "\atimed out waiting for input: auto-logout\n"
-msgstr ""
-
-#: execute_cmd.c:474
-#, c-format
-msgid "cannot redirect standard input from /dev/null: %s"
-msgstr ""
-
-#: execute_cmd.c:1058
-#, c-format
-msgid "TIMEFORMAT: `%c': invalid format character"
-msgstr ""
-
-#: execute_cmd.c:3629
-#, c-format
-msgid "%s: restricted: cannot specify `/' in command names"
-msgstr ""
-
-#: execute_cmd.c:3717
-#, c-format
-msgid "%s: command not found"
-msgstr ""
-
-#: execute_cmd.c:3963
-#, c-format
-msgid "%s: %s: bad interpreter"
-msgstr ""
-
-#: execute_cmd.c:4000
-#, c-format
-msgid "%s: cannot execute binary file"
-msgstr ""
-
-#: execute_cmd.c:4112
-#, c-format
-msgid "cannot duplicate fd %d to fd %d"
-msgstr ""
-
-#: expr.c:241
-msgid "expression recursion level exceeded"
-msgstr ""
-
-#: expr.c:265
-msgid "recursion stack underflow"
-msgstr ""
-
-#: expr.c:376
-msgid "syntax error in expression"
-msgstr ""
-
-#: expr.c:416
-msgid "attempted assignment to non-variable"
-msgstr ""
-
-#: expr.c:437 expr.c:442 expr.c:752
-msgid "division by 0"
-msgstr ""
-
-#: expr.c:468
-msgid "bug: bad expassign token"
-msgstr ""
-
-#: expr.c:510
-msgid "`:' expected for conditional expression"
-msgstr ""
-
-#: expr.c:777
-msgid "exponent less than 0"
-msgstr ""
-
-#: expr.c:822
-msgid "identifier expected after pre-increment or pre-decrement"
-msgstr ""
-
-#: expr.c:850
-msgid "missing `)'"
-msgstr ""
-
-#: expr.c:893 expr.c:1171
-msgid "syntax error: operand expected"
-msgstr ""
-
-#: expr.c:1173
-msgid "syntax error: invalid arithmetic operator"
-msgstr ""
-
-#: expr.c:1251
-msgid "invalid number"
-msgstr ""
-
-#: expr.c:1255
-msgid "invalid arithmetic base"
-msgstr ""
-
-#: expr.c:1275
-msgid "value too great for base"
-msgstr ""
-
-#: general.c:61
-msgid "getcwd: cannot access parent directories"
-msgstr ""
-
-#: input.c:237
-#, c-format
-msgid "cannot allocate new file descriptor for bash input from fd %d"
-msgstr ""
-
-#: input.c:245
-#, c-format
-msgid "save_bash_input: buffer already exists for new fd %d"
-msgstr ""
-
-#: jobs.c:876
-#, c-format
-msgid "forked pid %d appears in running job %d"
-msgstr ""
-
-#: jobs.c:983
-#, c-format
-msgid "deleting stopped job %d with process group %ld"
-msgstr ""
-
-#: jobs.c:1378
-#, c-format
-msgid "describe_pid: %ld: no such pid"
-msgstr ""
-
-#: jobs.c:2061 nojobs.c:575
-#, c-format
-msgid "wait: pid %ld is not a child of this shell"
-msgstr ""
-
-#: jobs.c:2265
-#, c-format
-msgid "wait_for: No record of process %ld"
-msgstr ""
-
-#: jobs.c:2524
-#, c-format
-msgid "wait_for_job: job %d is stopped"
-msgstr ""
-
-#: jobs.c:2746
-#, c-format
-msgid "%s: job has terminated"
-msgstr ""
-
-#: jobs.c:2755
-#, c-format
-msgid "%s: job %d already in background"
-msgstr ""
-
-#: jobs.c:3546
-msgid "no job control in this shell"
-msgstr ""
-
-#: lib/malloc/malloc.c:298
-#, c-format
-msgid "malloc: failed assertion: %s\n"
-msgstr ""
-
-#: lib/malloc/malloc.c:314
-#, c-format
-msgid ""
-"\r\n"
-"malloc: %s:%d: assertion botched\r\n"
-msgstr ""
-
-#: lib/malloc/malloc.c:799
-msgid "malloc: block on free list clobbered"
-msgstr ""
-
-#: lib/malloc/malloc.c:876
-msgid "free: called with already freed block argument"
-msgstr ""
-
-#: lib/malloc/malloc.c:879
-msgid "free: called with unallocated block argument"
-msgstr ""
-
-#: lib/malloc/malloc.c:898
-msgid "free: underflow detected; mh_nbytes out of range"
-msgstr ""
-
-#: lib/malloc/malloc.c:904
-msgid "free: start and end chunk sizes differ"
-msgstr ""
-
-#: lib/malloc/malloc.c:1003
-msgid "realloc: called with unallocated block argument"
-msgstr ""
-
-#: lib/malloc/malloc.c:1018
-msgid "realloc: underflow detected; mh_nbytes out of range"
-msgstr ""
-
-#: lib/malloc/malloc.c:1024
-msgid "realloc: start and end chunk sizes differ"
-msgstr ""
-
-#: lib/malloc/table.c:176
-msgid "register_alloc: alloc table is full with FIND_ALLOC?\n"
-msgstr ""
-
-#: lib/malloc/table.c:183
-#, c-format
-msgid "register_alloc: %p already in table as allocated?\n"
-msgstr ""
-
-#: lib/malloc/table.c:219
-#, c-format
-msgid "register_free: %p already in table as free?\n"
-msgstr ""
-
-#: lib/malloc/watch.c:46
-msgid "allocated"
-msgstr ""
-
-#: lib/malloc/watch.c:48
-msgid "freed"
-msgstr ""
-
-#: lib/malloc/watch.c:50
-msgid "requesting resize"
-msgstr ""
-
-#: lib/malloc/watch.c:52
-msgid "just resized"
-msgstr ""
-
-#: lib/malloc/watch.c:54
-msgid "bug: unknown operation"
-msgstr ""
-
-#: lib/malloc/watch.c:56
-#, c-format
-msgid "malloc: watch alert: %p %s "
-msgstr ""
-
-#: lib/sh/fmtulong.c:101
-msgid "invalid base"
-msgstr ""
-
-#: lib/sh/netopen.c:168
-#, c-format
-msgid "%s: host unknown"
-msgstr ""
-
-#: lib/sh/netopen.c:175
-#, c-format
-msgid "%s: invalid service"
-msgstr ""
-
-#: lib/sh/netopen.c:306
-#, c-format
-msgid "%s: bad network path specification"
-msgstr ""
-
-#: lib/sh/netopen.c:346
-msgid "network operations not supported"
-msgstr ""
-
-#: mailcheck.c:386
-msgid "You have mail in $_"
-msgstr ""
-
-#: mailcheck.c:411
-msgid "You have new mail in $_"
-msgstr ""
-
-#: mailcheck.c:427
-#, c-format
-msgid "The mail in %s has been read\n"
-msgstr ""
-
-#: make_cmd.c:322
-msgid "syntax error: arithmetic expression required"
-msgstr ""
-
-#: make_cmd.c:324
-msgid "syntax error: `;' unexpected"
-msgstr ""
-
-#: make_cmd.c:325
-#, c-format
-msgid "syntax error: `((%s))'"
-msgstr ""
-
-#: make_cmd.c:566
-#, c-format
-msgid "make_here_document: bad instruction type %d"
-msgstr ""
-
-#: make_cmd.c:741
-#, c-format
-msgid "make_redirection: redirection instruction `%d' out of range"
-msgstr ""
-
-#: parse.y:2759
-#, c-format
-msgid "unexpected EOF while looking for matching `%c'"
-msgstr ""
-
-#: parse.y:3071
-msgid "unexpected EOF while looking for `]]'"
-msgstr ""
-
-#: parse.y:3076
-#, c-format
-msgid "syntax error in conditional expression: unexpected token `%s'"
-msgstr ""
-
-#: parse.y:3080
-msgid "syntax error in conditional expression"
-msgstr ""
-
-#: parse.y:3158
-#, c-format
-msgid "unexpected token `%s', expected `)'"
-msgstr ""
-
-#: parse.y:3162
-msgid "expected `)'"
-msgstr ""
-
-#: parse.y:3190
-#, c-format
-msgid "unexpected argument `%s' to conditional unary operator"
-msgstr ""
-
-#: parse.y:3194
-msgid "unexpected argument to conditional unary operator"
-msgstr ""
-
-#: parse.y:3234
-#, c-format
-msgid "unexpected token `%s', conditional binary operator expected"
-msgstr ""
-
-#: parse.y:3238
-msgid "conditional binary operator expected"
-msgstr ""
-
-#: parse.y:3255
-#, c-format
-msgid "unexpected argument `%s' to conditional binary operator"
-msgstr ""
-
-#: parse.y:3259
-msgid "unexpected argument to conditional binary operator"
-msgstr ""
-
-#: parse.y:3270
-#, c-format
-msgid "unexpected token `%c' in conditional command"
-msgstr ""
-
-#: parse.y:3273
-#, c-format
-msgid "unexpected token `%s' in conditional command"
-msgstr ""
-
-#: parse.y:3277
-#, c-format
-msgid "unexpected token %d in conditional command"
-msgstr ""
-
-#: parse.y:4523
-#, c-format
-msgid "syntax error near unexpected token `%s'"
-msgstr ""
-
-#: parse.y:4541
-#, c-format
-msgid "syntax error near `%s'"
-msgstr ""
-
-#: parse.y:4551
-msgid "syntax error: unexpected end of file"
-msgstr ""
-
-#: parse.y:4551
-msgid "syntax error"
-msgstr ""
-
-#: parse.y:4613
-#, c-format
-msgid "Use \"%s\" to leave the shell.\n"
-msgstr ""
-
-#: parse.y:4775
-msgid "unexpected EOF while looking for matching `)'"
-msgstr ""
-
-#: pcomplete.c:1002
-#, c-format
-msgid "completion: function `%s' not found"
-msgstr ""
-
-#: pcomplib.c:179
-#, c-format
-msgid "progcomp_insert: %s: NULL COMPSPEC"
-msgstr ""
-
-#: print_cmd.c:264
-#, c-format
-msgid "print_command: bad connector `%d'"
-msgstr ""
-
-#: print_cmd.c:1236
-#, c-format
-msgid "cprintf: `%c': invalid format character"
-msgstr ""
-
-#: redir.c:99
-msgid "file descriptor out of range"
-msgstr ""
-
-#: redir.c:141
-#, c-format
-msgid "%s: ambiguous redirect"
-msgstr ""
-
-#: redir.c:145
-#, c-format
-msgid "%s: cannot overwrite existing file"
-msgstr ""
-
-#: redir.c:150
-#, c-format
-msgid "%s: restricted: cannot redirect output"
-msgstr ""
-
-#: redir.c:155
-#, c-format
-msgid "cannot create temp file for here document: %s"
-msgstr ""
-
-#: redir.c:509
-msgid "/dev/(tcp|udp)/host/port not supported without networking"
-msgstr ""
-
-#: redir.c:965
-msgid "redirection error: cannot duplicate fd"
-msgstr ""
-
-#: shell.c:309
-msgid "could not find /tmp, please create!"
-msgstr ""
-
-#: shell.c:313
-msgid "/tmp must be a valid directory name"
-msgstr ""
-
-#: shell.c:850
-#, c-format
-msgid "%c%c: invalid option"
-msgstr ""
-
-#: shell.c:1600
-msgid "I have no name!"
-msgstr ""
-
-#: shell.c:1735
-#, c-format
-msgid ""
-"Usage:\t%s [GNU long option] [option] ...\n"
-"\t%s [GNU long option] [option] script-file ...\n"
-msgstr ""
-
-#: shell.c:1737
-msgid "GNU long options:\n"
-msgstr ""
-
-#: shell.c:1741
-msgid "Shell options:\n"
-msgstr ""
-
-#: shell.c:1742
-msgid "\t-irsD or -c command or -O shopt_option\t\t(invocation only)\n"
-msgstr ""
-
-#: shell.c:1757
-#, c-format
-msgid "\t-%s or -o option\n"
-msgstr ""
-
-#: shell.c:1763
-#, c-format
-msgid "Type `%s -c \"help set\"' for more information about shell options.\n"
-msgstr ""
-
-#: shell.c:1764
-#, c-format
-msgid "Type `%s -c help' for more information about shell builtin commands.\n"
-msgstr ""
-
-#: shell.c:1765
-msgid "Use the `bashbug' command to report bugs.\n"
-msgstr ""
-
-#: sig.c:557
-#, c-format
-msgid "sigprocmask: %d: invalid operation"
-msgstr ""
-
-#: subst.c:1160
-#, c-format
-msgid "bad substitution: no closing `%s' in %s"
-msgstr ""
-
-#: subst.c:2328
-#, c-format
-msgid "%s: cannot assign list to array member"
-msgstr ""
-
-#: subst.c:4265 subst.c:4281
-msgid "cannot make pipe for process substitution"
-msgstr ""
-
-#: subst.c:4312
-msgid "cannot make child for process substitution"
-msgstr ""
-
-#: subst.c:4357
-#, c-format
-msgid "cannot open named pipe %s for reading"
-msgstr ""
-
-#: subst.c:4359
-#, c-format
-msgid "cannot open named pipe %s for writing"
-msgstr ""
-
-#: subst.c:4367
-#, c-format
-msgid "cannout reset nodelay mode for fd %d"
-msgstr ""
-
-#: subst.c:4377
-#, c-format
-msgid "cannot duplicate named pipe %s as fd %d"
-msgstr ""
-
-#: subst.c:4552
-msgid "cannot make pipe for command substitution"
-msgstr ""
-
-#: subst.c:4588
-msgid "cannot make child for command substitution"
-msgstr ""
-
-#: subst.c:4605
-msgid "command_substitute: cannot duplicate pipe as fd 1"
-msgstr ""
-
-#: subst.c:5068
-#, c-format
-msgid "%s: parameter null or not set"
-msgstr ""
-
-#: subst.c:5342
-#, c-format
-msgid "%s: substring expression < 0"
-msgstr ""
-
-#: subst.c:6179
-#, c-format
-msgid "%s: bad substitution"
-msgstr ""
-
-#: subst.c:6255
-#, c-format
-msgid "$%s: cannot assign in this way"
-msgstr ""
-
-#: subst.c:7826
-#, c-format
-msgid "no match: %s"
-msgstr ""
-
-#: test.c:145
-msgid "argument expected"
-msgstr ""
-
-#: test.c:154
-#, c-format
-msgid "%s: integer expression expected"
-msgstr ""
-
-#: test.c:262
-msgid "`)' expected"
-msgstr ""
-
-#: test.c:264
-#, c-format
-msgid "`)' expected, found %s"
-msgstr ""
-
-#: test.c:279 test.c:688 test.c:691
-#, c-format
-msgid "%s: unary operator expected"
-msgstr ""
-
-#: test.c:444 test.c:731
-#, c-format
-msgid "%s: binary operator expected"
-msgstr ""
-
-#: test.c:806
-msgid "missing `]'"
-msgstr ""
-
-#: trap.c:200
-msgid "invalid signal number"
-msgstr ""
-
-#: trap.c:315
-#, c-format
-msgid "run_pending_traps: bad value in trap_list[%d]: %p"
-msgstr ""
-
-#: trap.c:319
-#, c-format
-msgid ""
-"run_pending_traps: signal handler is SIG_DFL, resending %d (%s) to myself"
-msgstr ""
-
-#: trap.c:355
-#, c-format
-msgid "trap_handler: bad signal %d"
-msgstr ""
-
-#: variables.c:334
-#, c-format
-msgid "error importing function definition for `%s'"
-msgstr ""
-
-#: variables.c:711
-#, c-format
-msgid "shell level (%d) too high, resetting to 1"
-msgstr ""
-
-#: variables.c:1670
-msgid "make_local_variable: no function context at current scope"
-msgstr ""
-
-#: variables.c:2813
-msgid "all_local_variables: no function context at current scope"
-msgstr ""
-
-#: variables.c:3030 variables.c:3039
-#, c-format
-msgid "invalid character %d in exportstr for %s"
-msgstr ""
-
-#: variables.c:3045
-#, c-format
-msgid "no `=' in exportstr for %s"
-msgstr ""
-
-#: variables.c:3472
-msgid "pop_var_context: head of shell_variables not a function context"
-msgstr ""
-
-#: variables.c:3485
-msgid "pop_var_context: no global_variables context"
-msgstr ""
-
-#: variables.c:3557
-msgid "pop_scope: head of shell_variables not a temporary environment scope"
-msgstr ""
-
-#: version.c:82
-msgid "Copyright (C) 2006 Free Software Foundation, Inc.\n"
-msgstr ""
-
-#: xmalloc.c:93
-#, c-format
-msgid "xmalloc: cannot allocate %lu bytes (%lu bytes allocated)"
-msgstr ""
-
-#: xmalloc.c:95
-#, c-format
-msgid "xmalloc: cannot allocate %lu bytes"
-msgstr ""
-
-#: xmalloc.c:115
-#, c-format
-msgid "xrealloc: cannot reallocate %lu bytes (%lu bytes allocated)"
-msgstr ""
-
-#: xmalloc.c:117
-#, c-format
-msgid "xrealloc: cannot allocate %lu bytes"
-msgstr ""
-
-#: xmalloc.c:151
-#, c-format
-msgid "xmalloc: %s:%d: cannot allocate %lu bytes (%lu bytes allocated)"
-msgstr ""
-
-#: xmalloc.c:153
-#, c-format
-msgid "xmalloc: %s:%d: cannot allocate %lu bytes"
-msgstr ""
-
-#: xmalloc.c:175
-#, c-format
-msgid "xrealloc: %s:%d: cannot reallocate %lu bytes (%lu bytes allocated)"
-msgstr ""
-
-#: xmalloc.c:177
-#, c-format
-msgid "xrealloc: %s:%d: cannot allocate %lu bytes"
-msgstr ""
-
-#: builtins.c:244
-msgid ""
-"`alias' with no arguments or with the -p option prints the list\n"
-"    of aliases in the form alias NAME=VALUE on standard output.\n"
-"    Otherwise, an alias is defined for each NAME whose VALUE is given.\n"
-"    A trailing space in VALUE causes the next word to be checked for\n"
-"    alias substitution when the alias is expanded.  Alias returns\n"
-"    true unless a NAME is given for which no alias has been defined."
-msgstr ""
-
-#: builtins.c:257
-msgid ""
-"Remove NAMEs from the list of defined aliases.  If the -a option is given,\n"
-"    then remove all alias definitions."
-msgstr ""
-
-#: builtins.c:266
-msgid ""
-"Bind a key sequence to a Readline function or a macro, or set\n"
-"    a Readline variable.  The non-option argument syntax is equivalent\n"
-"    to that found in ~/.inputrc, but must be passed as a single argument:\n"
-"    bind '\"\\C-x\\C-r\": re-read-init-file'.\n"
-"    bind accepts the following options:\n"
-"      -m  keymap         Use `keymap' as the keymap for the duration of "
-"this\n"
-"                         command.  Acceptable keymap names are emacs,\n"
-"                         emacs-standard, emacs-meta, emacs-ctlx, vi, vi-"
-"move,\n"
-"                         vi-command, and vi-insert.\n"
-"      -l                 List names of functions.\n"
-"      -P                 List function names and bindings.\n"
-"      -p                 List functions and bindings in a form that can be\n"
-"                         reused as input.\n"
-"      -r  keyseq         Remove the binding for KEYSEQ.\n"
-"      -x  keyseq:shell-command\tCause SHELL-COMMAND to be executed when\n"
-"    \t\t\t\tKEYSEQ is entered.\n"
-"      -f  filename       Read key bindings from FILENAME.\n"
-"      -q  function-name  Query about which keys invoke the named function.\n"
-"      -u  function-name  Unbind all keys which are bound to the named "
-"function.\n"
-"      -V                 List variable names and values\n"
-"      -v                 List variable names and values in a form that can\n"
-"                         be reused as input.\n"
-"      -S                 List key sequences that invoke macros and their "
-"values\n"
-"      -s                 List key sequences that invoke macros and their "
-"values\n"
-"                         in a form that can be reused as input."
-msgstr ""
-
-#: builtins.c:297
-msgid ""
-"Exit from within a FOR, WHILE or UNTIL loop.  If N is specified,\n"
-"    break N levels."
-msgstr ""
-
-#: builtins.c:304
-msgid ""
-"Resume the next iteration of the enclosing FOR, WHILE or UNTIL loop.\n"
-"    If N is specified, resume at the N-th enclosing loop."
-msgstr ""
-
-#: builtins.c:311
-msgid ""
-"Run a shell builtin.  This is useful when you wish to rename a\n"
-"    shell builtin to be a function, but need the functionality of the\n"
-"    builtin within the function itself."
-msgstr ""
-
-#: builtins.c:320
-msgid ""
-"Returns the context of the current subroutine call.\n"
-"    \n"
-"    Without EXPR, returns \"$line $filename\".  With EXPR,\n"
-"    returns \"$line $subroutine $filename\"; this extra information\n"
-"    can be used to provide a stack trace.\n"
-"    \n"
-"    The value of EXPR indicates how many call frames to go back before the\n"
-"    current one; the top frame is frame 0."
-msgstr ""
-
-#: builtins.c:334
-msgid ""
-"Change the current directory to DIR.  The variable $HOME is the\n"
-"    default DIR.  The variable CDPATH defines the search path for\n"
-"    the directory containing DIR.  Alternative directory names in CDPATH\n"
-"    are separated by a colon (:).  A null directory name is the same as\n"
-"    the current directory, i.e. `.'.  If DIR begins with a slash (/),\n"
-"    then CDPATH is not used.  If the directory is not found, and the\n"
-"    shell option `cdable_vars' is set, then try the word as a variable\n"
-"    name.  If that variable has a value, then cd to the value of that\n"
-"    variable.  The -P option says to use the physical directory structure\n"
-"    instead of following symbolic links; the -L option forces symbolic "
-"links\n"
-"    to be followed."
-msgstr ""
-
-#: builtins.c:350
-msgid ""
-"Print the current working directory.  With the -P option, pwd prints\n"
-"    the physical directory, without any symbolic links; the -L option\n"
-"    makes pwd follow symbolic links."
-msgstr ""
-
-#: builtins.c:358
-msgid "No effect; the command does nothing.  A zero exit code is returned."
-msgstr ""
-
-#: builtins.c:364
-msgid "Return a successful result."
-msgstr ""
-
-#: builtins.c:370
-msgid "Return an unsuccessful result."
-msgstr ""
-
-#: builtins.c:376
-msgid ""
-"Runs COMMAND with ARGS ignoring shell functions.  If you have a shell\n"
-"    function called `ls', and you wish to call the command `ls', you can\n"
-"    say \"command ls\".  If the -p option is given, a default value is used\n"
-"    for PATH that is guaranteed to find all of the standard utilities.  If\n"
-"    the -V or -v option is given, a string is printed describing COMMAND.\n"
-"    The -V option produces a more verbose description."
-msgstr ""
-
-#: builtins.c:387
-msgid ""
-"Declare variables and/or give them attributes.  If no NAMEs are\n"
-"    given, then display the values of variables instead.  The -p option\n"
-"    will display the attributes and values of each NAME.\n"
-"    \n"
-"    The flags are:\n"
-"    \n"
-"      -a\tto make NAMEs arrays (if supported)\n"
-"      -f\tto select from among function names only\n"
-"      -F\tto display function names (and line number and source file name "
-"if\n"
-"    \tdebugging) without definitions\n"
-"      -i\tto make NAMEs have the `integer' attribute\n"
-"      -r\tto make NAMEs readonly\n"
-"      -t\tto make NAMEs have the `trace' attribute\n"
-"      -x\tto make NAMEs export\n"
-"    \n"
-"    Variables with the integer attribute have arithmetic evaluation (see\n"
-"    `let') done when the variable is assigned to.\n"
-"    \n"
-"    When displaying values of variables, -f displays a function's name\n"
-"    and definition.  The -F option restricts the display to function\n"
-"    name only.\n"
-"    \n"
-"    Using `+' instead of `-' turns off the given attribute instead.  When\n"
-"    used in a function, makes NAMEs local, as with the `local' command."
-msgstr ""
-
-#: builtins.c:416
-msgid "Obsolete.  See `declare'."
-msgstr ""
-
-#: builtins.c:422
-msgid ""
-"Create a local variable called NAME, and give it VALUE.  LOCAL\n"
-"    can only be used within a function; it makes the variable NAME\n"
-"    have a visible scope restricted to that function and its children."
-msgstr ""
-
-#: builtins.c:431
-msgid ""
-"Output the ARGs.  If -n is specified, the trailing newline is\n"
-"    suppressed.  If the -e option is given, interpretation of the\n"
-"    following backslash-escaped characters is turned on:\n"
-"    \t\\a\talert (bell)\n"
-"    \t\\b\tbackspace\n"
-"    \t\\c\tsuppress trailing newline\n"
-"    \t\\E\tescape character\n"
-"    \t\\f\tform feed\n"
-"    \t\\n\tnew line\n"
-"    \t\\r\tcarriage return\n"
-"    \t\\t\thorizontal tab\n"
-"    \t\\v\tvertical tab\n"
-"    \t\\\\\tbackslash\n"
-"    \t\\0nnn\tthe character whose ASCII code is NNN (octal).  NNN can be\n"
-"    \t\t0 to 3 octal digits\n"
-"    \n"
-"    You can explicitly turn off the interpretation of the above characters\n"
-"    with the -E option."
-msgstr ""
-
-#: builtins.c:456
-msgid ""
-"Output the ARGs.  If -n is specified, the trailing newline is suppressed."
-msgstr ""
-
-#: builtins.c:463
-msgid ""
-"Enable and disable builtin shell commands.  This allows\n"
-"    you to use a disk command which has the same name as a shell\n"
-"    builtin without specifying a full pathname.  If -n is used, the\n"
-"    NAMEs become disabled; otherwise NAMEs are enabled.  For example,\n"
-"    to use the `test' found in $PATH instead of the shell builtin\n"
-"    version, type `enable -n test'.  On systems supporting dynamic\n"
-"    loading, the -f option may be used to load new builtins from the\n"
-"    shared object FILENAME.  The -d option will delete a builtin\n"
-"    previously loaded with -f.  If no non-option names are given, or\n"
-"    the -p option is supplied, a list of builtins is printed.  The\n"
-"    -a option means to print every builtin with an indication of whether\n"
-"    or not it is enabled.  The -s option restricts the output to the "
-"POSIX.2\n"
-"    `special' builtins.  The -n option displays a list of all disabled "
-"builtins."
-msgstr ""
-
-#: builtins.c:481
-msgid "Read ARGs as input to the shell and execute the resulting command(s)."
-msgstr ""
-
-#: builtins.c:487
-msgid ""
-"Getopts is used by shell procedures to parse positional parameters.\n"
-"    \n"
-"    OPTSTRING contains the option letters to be recognized; if a letter\n"
-"    is followed by a colon, the option is expected to have an argument,\n"
-"    which should be separated from it by white space.\n"
-"    \n"
-"    Each time it is invoked, getopts will place the next option in the\n"
-"    shell variable $name, initializing name if it does not exist, and\n"
-"    the index of the next argument to be processed into the shell\n"
-"    variable OPTIND.  OPTIND is initialized to 1 each time the shell or\n"
-"    a shell script is invoked.  When an option requires an argument,\n"
-"    getopts places that argument into the shell variable OPTARG.\n"
-"    \n"
-"    getopts reports errors in one of two ways.  If the first character\n"
-"    of OPTSTRING is a colon, getopts uses silent error reporting.  In\n"
-"    this mode, no error messages are printed.  If an invalid option is\n"
-"    seen, getopts places the option character found into OPTARG.  If a\n"
-"    required argument is not found, getopts places a ':' into NAME and\n"
-"    sets OPTARG to the option character found.  If getopts is not in\n"
-"    silent mode, and an invalid option is seen, getopts places '?' into\n"
-"    NAME and unsets OPTARG.  If a required argument is not found, a '?'\n"
-"    is placed in NAME, OPTARG is unset, and a diagnostic message is\n"
-"    printed.\n"
-"    \n"
-"    If the shell variable OPTERR has the value 0, getopts disables the\n"
-"    printing of error messages, even if the first character of\n"
-"    OPTSTRING is not a colon.  OPTERR has the value 1 by default.\n"
-"    \n"
-"    Getopts normally parses the positional parameters ($0 - $9), but if\n"
-"    more arguments are given, they are parsed instead."
-msgstr ""
-
-#: builtins.c:522
-msgid ""
-"Exec FILE, replacing this shell with the specified program.\n"
-"    If FILE is not specified, the redirections take effect in this\n"
-"    shell.  If the first argument is `-l', then place a dash in the\n"
-"    zeroth arg passed to FILE, as login does.  If the `-c' option\n"
-"    is supplied, FILE is executed with a null environment.  The `-a'\n"
-"    option means to make set argv[0] of the executed process to NAME.\n"
-"    If the file cannot be executed and the shell is not interactive,\n"
-"    then the shell exits, unless the shell option `execfail' is set."
-msgstr ""
-
-#: builtins.c:535
-msgid ""
-"Exit the shell with a status of N.  If N is omitted, the exit status\n"
-"    is that of the last command executed."
-msgstr ""
-
-#: builtins.c:542
-msgid "Logout of a login shell."
-msgstr ""
-
-#: builtins.c:549
-msgid ""
-"fc is used to list or edit and re-execute commands from the history list.\n"
-"    FIRST and LAST can be numbers specifying the range, or FIRST can be a\n"
-"    string, which means the most recent command beginning with that\n"
-"    string.\n"
-"    \n"
-"       -e ENAME selects which editor to use.  Default is FCEDIT, then "
-"EDITOR,\n"
-"          then vi.\n"
-"    \n"
-"       -l means list lines instead of editing.\n"
-"       -n means no line numbers listed.\n"
-"       -r means reverse the order of the lines (making it newest listed "
-"first).\n"
-"    \n"
-"    With the `fc -s [pat=rep ...] [command]' format, the command is\n"
-"    re-executed after the substitution OLD=NEW is performed.\n"
-"    \n"
-"    A useful alias to use with this is r='fc -s', so that typing `r cc'\n"
-"    runs the last command beginning with `cc' and typing `r' re-executes\n"
-"    the last command."
-msgstr ""
-
-#: builtins.c:574
-msgid ""
-"Place JOB_SPEC in the foreground, and make it the current job.  If\n"
-"    JOB_SPEC is not present, the shell's notion of the current job is\n"
-"    used."
-msgstr ""
-
-#: builtins.c:584
-msgid ""
-"Place each JOB_SPEC in the background, as if it had been started with\n"
-"    `&'.  If JOB_SPEC is not present, the shell's notion of the current\n"
-"    job is used."
-msgstr ""
-
-#: builtins.c:593
-msgid ""
-"For each NAME, the full pathname of the command is determined and\n"
-"    remembered.  If the -p option is supplied, PATHNAME is used as the\n"
-"    full pathname of NAME, and no path search is performed.  The -r\n"
-"    option causes the shell to forget all remembered locations.  The -d\n"
-"    option causes the shell to forget the remembered location of each NAME.\n"
-"    If the -t option is supplied the full pathname to which each NAME\n"
-"    corresponds is printed.  If multiple NAME arguments are supplied with\n"
-"    -t, the NAME is printed before the hashed full pathname.  The -l option\n"
-"    causes output to be displayed in a format that may be reused as input.\n"
-"    If no arguments are given, information about remembered commands is "
-"displayed."
-msgstr ""
-
-#: builtins.c:609
-msgid ""
-"Display helpful information about builtin commands.  If PATTERN is\n"
-"    specified, gives detailed help on all commands matching PATTERN,\n"
-"    otherwise a list of the builtins is printed.  The -s option\n"
-"    restricts the output for each builtin command matching PATTERN to\n"
-"    a short usage synopsis."
-msgstr ""
-
-#: builtins.c:621
-msgid ""
-"Display the history list with line numbers.  Lines listed with\n"
-"    with a `*' have been modified.  Argument of N says to list only\n"
-"    the last N lines.  The `-c' option causes the history list to be\n"
-"    cleared by deleting all of the entries.  The `-d' option deletes\n"
-"    the history entry at offset OFFSET.  The `-w' option writes out the\n"
-"    current history to the history file;  `-r' means to read the file and\n"
-"    append the contents to the history list instead.  `-a' means\n"
-"    to append history lines from this session to the history file.\n"
-"    Argument `-n' means to read all history lines not already read\n"
-"    from the history file and append them to the history list.\n"
-"    \n"
-"    If FILENAME is given, then that is used as the history file else\n"
-"    if $HISTFILE has a value, that is used, else ~/.bash_history.\n"
-"    If the -s option is supplied, the non-option ARGs are appended to\n"
-"    the history list as a single entry.  The -p option means to perform\n"
-"    history expansion on each ARG and display the result, without storing\n"
-"    anything in the history list.\n"
-"    \n"
-"    If the $HISTTIMEFORMAT variable is set and not null, its value is used\n"
-"    as a format string for strftime(3) to print the time stamp associated\n"
-"    with each displayed history entry.  No time stamps are printed otherwise."
-msgstr ""
-
-#: builtins.c:649
-msgid ""
-"Lists the active jobs.  The -l option lists process id's in addition\n"
-"    to the normal information; the -p option lists process id's only.\n"
-"    If -n is given, only processes that have changed status since the last\n"
-"    notification are printed.  JOBSPEC restricts output to that job.  The\n"
-"    -r and -s options restrict output to running and stopped jobs only,\n"
-"    respectively.  Without options, the status of all active jobs is\n"
-"    printed.  If -x is given, COMMAND is run after all job specifications\n"
-"    that appear in ARGS have been replaced with the process ID of that "
-"job's\n"
-"    process group leader."
-msgstr ""
-
-#: builtins.c:665
-msgid ""
-"By default, removes each JOBSPEC argument from the table of active jobs.\n"
-"    If the -h option is given, the job is not removed from the table, but "
-"is\n"
-"    marked so that SIGHUP is not sent to the job if the shell receives a\n"
-"    SIGHUP.  The -a option, when JOBSPEC is not supplied, means to remove "
-"all\n"
-"    jobs from the job table; the -r option means to remove only running jobs."
-msgstr ""
-
-#: builtins.c:676
-msgid ""
-"Send the processes named by PID (or JOBSPEC) the signal SIGSPEC.  If\n"
-"    SIGSPEC is not present, then SIGTERM is assumed.  An argument of `-l'\n"
-"    lists the signal names; if arguments follow `-l' they are assumed to\n"
-"    be signal numbers for which names should be listed.  Kill is a shell\n"
-"    builtin for two reasons: it allows job IDs to be used instead of\n"
-"    process IDs, and, if you have reached the limit on processes that\n"
-"    you can create, you don't have to start a process to kill another one."
-msgstr ""
-
-#: builtins.c:688
-msgid ""
-"Each ARG is an arithmetic expression to be evaluated.  Evaluation\n"
-"    is done in fixed-width integers with no check for overflow, though\n"
-"    division by 0 is trapped and flagged as an error.  The following\n"
-"    list of operators is grouped into levels of equal-precedence operators.\n"
-"    The levels are listed in order of decreasing precedence.\n"
-"    \n"
-"    \tid++, id--\tvariable post-increment, post-decrement\n"
-"    \t++id, --id\tvariable pre-increment, pre-decrement\n"
-"    \t-, +\t\tunary minus, plus\n"
-"    \t!, ~\t\tlogical and bitwise negation\n"
-"    \t**\t\texponentiation\n"
-"    \t*, /, %\t\tmultiplication, division, remainder\n"
-"    \t+, -\t\taddition, subtraction\n"
-"    \t<<, >>\t\tleft and right bitwise shifts\n"
-"    \t<=, >=, <, >\tcomparison\n"
-"    \t==, !=\t\tequality, inequality\n"
-"    \t&\t\tbitwise AND\n"
-"    \t^\t\tbitwise XOR\n"
-"    \t|\t\tbitwise OR\n"
-"    \t&&\t\tlogical AND\n"
-"    \t||\t\tlogical OR\n"
-"    \texpr ? expr : expr\n"
-"    \t\t\tconditional operator\n"
-"    \t=, *=, /=, %=,\n"
-"    \t+=, -=, <<=, >>=,\n"
-"    \t&=, ^=, |=\tassignment\n"
-"    \n"
-"    Shell variables are allowed as operands.  The name of the variable\n"
-"    is replaced by its value (coerced to a fixed-width integer) within\n"
-"    an expression.  The variable need not have its integer attribute\n"
-"    turned on to be used in an expression.\n"
-"    \n"
-"    Operators are evaluated in order of precedence.  Sub-expressions in\n"
-"    parentheses are evaluated first and may override the precedence\n"
-"    rules above.\n"
-"    \n"
-"    If the last ARG evaluates to 0, let returns 1; 0 is returned\n"
-"    otherwise."
-msgstr ""
-
-#: builtins.c:731
-msgid ""
-"One line is read from the standard input, or from file descriptor FD if the\n"
-"    -u option is supplied, and the first word is assigned to the first "
-"NAME,\n"
-"    the second word to the second NAME, and so on, with leftover words "
-"assigned\n"
-"    to the last NAME.  Only the characters found in $IFS are recognized as "
-"word\n"
-"    delimiters.  If no NAMEs are supplied, the line read is stored in the "
-"REPLY\n"
-"    variable.  If the -r option is given, this signifies `raw' input, and\n"
-"    backslash escaping is disabled.  The -d option causes read to continue\n"
-"    until the first character of DELIM is read, rather than newline.  If the "
-"-p\n"
-"    option is supplied, the string PROMPT is output without a trailing "
-"newline\n"
-"    before attempting to read.  If -a is supplied, the words read are "
-"assigned\n"
-"    to sequential indices of ARRAY, starting at zero.  If -e is supplied "
-"and\n"
-"    the shell is interactive, readline is used to obtain the line.  If -n "
-"is\n"
-"    supplied with a non-zero NCHARS argument, read returns after NCHARS\n"
-"    characters have been read.  The -s option causes input coming from a\n"
-"    terminal to not be echoed.\n"
-"    \n"
-"    The -t option causes read to time out and return failure if a complete "
-"line\n"
-"    of input is not read within TIMEOUT seconds.  If the TMOUT variable is "
-"set,\n"
-"    its value is the default timeout.  The return code is zero, unless end-"
-"of-file\n"
-"    is encountered, read times out, or an invalid file descriptor is "
-"supplied as\n"
-"    the argument to -u."
-msgstr ""
-
-#: builtins.c:757
-msgid ""
-"Causes a function to exit with the return value specified by N.  If N\n"
-"    is omitted, the return status is that of the last command."
-msgstr ""
-
-#: builtins.c:764
-msgid ""
-"    -a  Mark variables which are modified or created for export.\n"
-"        -b  Notify of job termination immediately.\n"
-"        -e  Exit immediately if a command exits with a non-zero status.\n"
-"        -f  Disable file name generation (globbing).\n"
-"        -h  Remember the location of commands as they are looked up.\n"
-"        -k  All assignment arguments are placed in the environment for a\n"
-"            command, not just those that precede the command name.\n"
-"        -m  Job control is enabled.\n"
-"        -n  Read commands but do not execute them.\n"
-"        -o option-name\n"
-"            Set the variable corresponding to option-name:\n"
-"                allexport    same as -a\n"
-"                braceexpand  same as -B\n"
-"                emacs        use an emacs-style line editing interface\n"
-"                errexit      same as -e\n"
-"                errtrace     same as -E\n"
-"                functrace    same as -T\n"
-"                hashall      same as -h\n"
-"                histexpand   same as -H\n"
-"                history      enable command history\n"
-"                ignoreeof    the shell will not exit upon reading EOF\n"
-"                interactive-comments\n"
-"                             allow comments to appear in interactive "
-"commands\n"
-"                keyword      same as -k\n"
-"                monitor      same as -m\n"
-"                noclobber    same as -C\n"
-"                noexec       same as -n\n"
-"                noglob       same as -f\n"
-"                nolog        currently accepted but ignored\n"
-"                notify       same as -b\n"
-"                nounset      same as -u\n"
-"                onecmd       same as -t\n"
-"                physical     same as -P\n"
-"                pipefail     the return value of a pipeline is the status "
-"of\n"
-"                             the last command to exit with a non-zero "
-"status,\n"
-"                             or zero if no command exited with a non-zero "
-"status\n"
-"                posix        change the behavior of bash where the default\n"
-"                             operation differs from the 1003.2 standard to\n"
-"                             match the standard\n"
-"                privileged   same as -p\n"
-"                verbose      same as -v\n"
-"                vi           use a vi-style line editing interface\n"
-"                xtrace       same as -x\n"
-"        -p  Turned on whenever the real and effective user ids do not "
-"match.\n"
-"            Disables processing of the $ENV file and importing of shell\n"
-"            functions.  Turning this option off causes the effective uid "
-"and\n"
-"            gid to be set to the real uid and gid.\n"
-"        -t  Exit after reading and executing one command.\n"
-"        -u  Treat unset variables as an error when substituting.\n"
-"        -v  Print shell input lines as they are read.\n"
-"        -x  Print commands and their arguments as they are executed.\n"
-"        -B  the shell will perform brace expansion\n"
-"        -C  If set, disallow existing regular files to be overwritten\n"
-"            by redirection of output.\n"
-"        -E  If set, the ERR trap is inherited by shell functions.\n"
-"        -H  Enable ! style history substitution.  This flag is on\n"
-"            by default when the shell is interactive.\n"
-"        -P  If set, do not follow symbolic links when executing commands\n"
-"            such as cd which change the current directory.\n"
-"        -T  If set, the DEBUG trap is inherited by shell functions.\n"
-"        -   Assign any remaining arguments to the positional parameters.\n"
-"            The -x and -v options are turned off.\n"
-"    \n"
-"    Using + rather than - causes these flags to be turned off.  The\n"
-"    flags can also be used upon invocation of the shell.  The current\n"
-"    set of flags may be found in $-.  The remaining n ARGs are positional\n"
-"    parameters and are assigned, in order, to $1, $2, .. $n.  If no\n"
-"    ARGs are given, all shell variables are printed."
-msgstr ""
-
-#: builtins.c:837
-msgid ""
-"For each NAME, remove the corresponding variable or function.  Given\n"
-"    the `-v', unset will only act on variables.  Given the `-f' flag,\n"
-"    unset will only act on functions.  With neither flag, unset first\n"
-"    tries to unset a variable, and if that fails, then tries to unset a\n"
-"    function.  Some variables cannot be unset; also see readonly."
-msgstr ""
-
-#: builtins.c:847
-msgid ""
-"NAMEs are marked for automatic export to the environment of\n"
-"    subsequently executed commands.  If the -f option is given,\n"
-"    the NAMEs refer to functions.  If no NAMEs are given, or if `-p'\n"
-"    is given, a list of all names that are exported in this shell is\n"
-"    printed.  An argument of `-n' says to remove the export property\n"
-"    from subsequent NAMEs.  An argument of `--' disables further option\n"
-"    processing."
-msgstr ""
-
-#: builtins.c:859
-msgid ""
-"The given NAMEs are marked readonly and the values of these NAMEs may\n"
-"    not be changed by subsequent assignment.  If the -f option is given,\n"
-"    then functions corresponding to the NAMEs are so marked.  If no\n"
-"    arguments are given, or if `-p' is given, a list of all readonly names\n"
-"    is printed.  The `-a' option means to treat each NAME as\n"
-"    an array variable.  An argument of `--' disables further option\n"
-"    processing."
-msgstr ""
-
-#: builtins.c:871
-msgid ""
-"The positional parameters from $N+1 ... are renamed to $1 ...  If N is\n"
-"    not given, it is assumed to be 1."
-msgstr ""
-
-#: builtins.c:878 builtins.c:887
-msgid ""
-"Read and execute commands from FILENAME and return.  The pathnames\n"
-"    in $PATH are used to find the directory containing FILENAME.  If any\n"
-"    ARGUMENTS are supplied, they become the positional parameters when\n"
-"    FILENAME is executed."
-msgstr ""
-
-#: builtins.c:897
-msgid ""
-"Suspend the execution of this shell until it receives a SIGCONT\n"
-"    signal.  The `-f' if specified says not to complain about this\n"
-"    being a login shell if it is; just suspend anyway."
-msgstr ""
-
-#: builtins.c:906
-msgid ""
-"Exits with a status of 0 (true) or 1 (false) depending on\n"
-"    the evaluation of EXPR.  Expressions may be unary or binary.  Unary\n"
-"    expressions are often used to examine the status of a file.  There\n"
-"    are string operators as well, and numeric comparison operators.\n"
-"    \n"
-"    File operators:\n"
-"    \n"
-"        -a FILE        True if file exists.\n"
-"        -b FILE        True if file is block special.\n"
-"        -c FILE        True if file is character special.\n"
-"        -d FILE        True if file is a directory.\n"
-"        -e FILE        True if file exists.\n"
-"        -f FILE        True if file exists and is a regular file.\n"
-"        -g FILE        True if file is set-group-id.\n"
-"        -h FILE        True if file is a symbolic link.\n"
-"        -L FILE        True if file is a symbolic link.\n"
-"        -k FILE        True if file has its `sticky' bit set.\n"
-"        -p FILE        True if file is a named pipe.\n"
-"        -r FILE        True if file is readable by you.\n"
-"        -s FILE        True if file exists and is not empty.\n"
-"        -S FILE        True if file is a socket.\n"
-"        -t FD          True if FD is opened on a terminal.\n"
-"        -u FILE        True if the file is set-user-id.\n"
-"        -w FILE        True if the file is writable by you.\n"
-"        -x FILE        True if the file is executable by you.\n"
-"        -O FILE        True if the file is effectively owned by you.\n"
-"        -G FILE        True if the file is effectively owned by your group.\n"
-"        -N FILE        True if the file has been modified since it was last "
-"read.\n"
-"    \n"
-"      FILE1 -nt FILE2  True if file1 is newer than file2 (according to\n"
-"                       modification date).\n"
-"    \n"
-"      FILE1 -ot FILE2  True if file1 is older than file2.\n"
-"    \n"
-"      FILE1 -ef FILE2  True if file1 is a hard link to file2.\n"
-"    \n"
-"    String operators:\n"
-"    \n"
-"        -z STRING      True if string is empty.\n"
-"    \n"
-"        -n STRING\n"
-"        STRING         True if string is not empty.\n"
-"    \n"
-"        STRING1 = STRING2\n"
-"                       True if the strings are equal.\n"
-"        STRING1 != STRING2\n"
-"                       True if the strings are not equal.\n"
-"        STRING1 < STRING2\n"
-"                       True if STRING1 sorts before STRING2 "
-"lexicographically.\n"
-"        STRING1 > STRING2\n"
-"                       True if STRING1 sorts after STRING2 "
-"lexicographically.\n"
-"    \n"
-"    Other operators:\n"
-"    \n"
-"        -o OPTION      True if the shell option OPTION is enabled.\n"
-"        ! EXPR         True if expr is false.\n"
-"        EXPR1 -a EXPR2 True if both expr1 AND expr2 are true.\n"
-"        EXPR1 -o EXPR2 True if either expr1 OR expr2 is true.\n"
-"    \n"
-"        arg1 OP arg2   Arithmetic tests.  OP is one of -eq, -ne,\n"
-"                       -lt, -le, -gt, or -ge.\n"
-"    \n"
-"    Arithmetic binary operators return true if ARG1 is equal, not-equal,\n"
-"    less-than, less-than-or-equal, greater-than, or greater-than-or-equal\n"
-"    than ARG2."
-msgstr ""
-
-#: builtins.c:976
-msgid ""
-"This is a synonym for the \"test\" builtin, but the last\n"
-"    argument must be a literal `]', to match the opening `['."
-msgstr ""
-
-#: builtins.c:983
-msgid ""
-"Print the accumulated user and system times for processes run from\n"
-"    the shell."
-msgstr ""
-
-#: builtins.c:990
-msgid ""
-"The command ARG is to be read and executed when the shell receives\n"
-"    signal(s) SIGNAL_SPEC.  If ARG is absent (and a single SIGNAL_SPEC\n"
-"    is supplied) or `-', each specified signal is reset to its original\n"
-"    value.  If ARG is the null string each SIGNAL_SPEC is ignored by the\n"
-"    shell and by the commands it invokes.  If a SIGNAL_SPEC is EXIT (0)\n"
-"    the command ARG is executed on exit from the shell.  If a SIGNAL_SPEC\n"
-"    is DEBUG, ARG is executed after every simple command.  If the`-p' "
-"option\n"
-"    is supplied then the trap commands associated with each SIGNAL_SPEC are\n"
-"    displayed.  If no arguments are supplied or if only `-p' is given, trap\n"
-"    prints the list of commands associated with each signal.  Each "
-"SIGNAL_SPEC\n"
-"    is either a signal name in <signal.h> or a signal number.  Signal names\n"
-"    are case insensitive and the SIG prefix is optional.  `trap -l' prints\n"
-"    a list of signal names and their corresponding numbers.  Note that a\n"
-"    signal can be sent to the shell with \"kill -signal $$\"."
-msgstr ""
-
-#: builtins.c:1009
-msgid ""
-"For each NAME, indicate how it would be interpreted if used as a\n"
-"    command name.\n"
-"    \n"
-"    If the -t option is used, `type' outputs a single word which is one of\n"
-"    `alias', `keyword', `function', `builtin', `file' or `', if NAME is an\n"
-"    alias, shell reserved word, shell function, shell builtin, disk file,\n"
-"    or unfound, respectively.\n"
-"    \n"
-"    If the -p flag is used, `type' either returns the name of the disk\n"
-"    file that would be executed, or nothing if `type -t NAME' would not\n"
-"    return `file'.\n"
-"    \n"
-"    If the -a flag is used, `type' displays all of the places that contain\n"
-"    an executable named `file'.  This includes aliases, builtins, and\n"
-"    functions, if and only if the -p flag is not also used.\n"
-"    \n"
-"    The -f flag suppresses shell function lookup.\n"
-"    \n"
-"    The -P flag forces a PATH search for each NAME, even if it is an alias,\n"
-"    builtin, or function, and returns the name of the disk file that would\n"
-"    be executed."
-msgstr ""
-
-#: builtins.c:1036
-msgid ""
-"Ulimit provides control over the resources available to processes\n"
-"    started by the shell, on systems that allow such control.  If an\n"
-"    option is given, it is interpreted as follows:\n"
-"    \n"
-"        -S\tuse the `soft' resource limit\n"
-"        -H\tuse the `hard' resource limit\n"
-"        -a\tall current limits are reported\n"
-"        -c\tthe maximum size of core files created\n"
-"        -d\tthe maximum size of a process's data segment\n"
-"        -e\tthe maximum scheduling priority (`nice')\n"
-"        -f\tthe maximum size of files written by the shell and its children\n"
-"        -i\tthe maximum number of pending signals\n"
-"        -l\tthe maximum size a process may lock into memory\n"
-"        -m\tthe maximum resident set size\n"
-"        -n\tthe maximum number of open file descriptors\n"
-"        -p\tthe pipe buffer size\n"
-"        -q\tthe maximum number of bytes in POSIX message queues\n"
-"        -r\tthe maximum real-time scheduling priority\n"
-"        -s\tthe maximum stack size\n"
-"        -t\tthe maximum amount of cpu time in seconds\n"
-"        -u\tthe maximum number of user processes\n"
-"        -v\tthe size of virtual memory\n"
-"        -x\tthe maximum number of file locks\n"
-"    \n"
-"    If LIMIT is given, it is the new value of the specified resource;\n"
-"    the special LIMIT values `soft', `hard', and `unlimited' stand for\n"
-"    the current soft limit, the current hard limit, and no limit, "
-"respectively.\n"
-"    Otherwise, the current value of the specified resource is printed.\n"
-"    If no option is given, then -f is assumed.  Values are in 1024-byte\n"
-"    increments, except for -t, which is in seconds, -p, which is in\n"
-"    increments of 512 bytes, and -u, which is an unscaled number of\n"
-"    processes."
-msgstr ""
-
-#: builtins.c:1074
-msgid ""
-"The user file-creation mask is set to MODE.  If MODE is omitted, or if\n"
-"    `-S' is supplied, the current value of the mask is printed.  The `-S'\n"
-"    option makes the output symbolic; otherwise an octal number is output.\n"
-"    If `-p' is supplied, and MODE is omitted, the output is in a form\n"
-"    that may be used as input.  If MODE begins with a digit, it is\n"
-"    interpreted as an octal number, otherwise it is a symbolic mode string\n"
-"    like that accepted by chmod(1)."
-msgstr ""
-
-#: builtins.c:1087
-msgid ""
-"Wait for the specified process and report its termination status.  If\n"
-"    N is not given, all currently active child processes are waited for,\n"
-"    and the return code is zero.  N may be a process ID or a job\n"
-"    specification; if a job spec is given, all processes in the job's\n"
-"    pipeline are waited for."
-msgstr ""
-
-#: builtins.c:1099
-msgid ""
-"Wait for the specified process and report its termination status.  If\n"
-"    N is not given, all currently active child processes are waited for,\n"
-"    and the return code is zero.  N is a process ID; if it is not given,\n"
-"    all child processes of the shell are waited for."
-msgstr ""
-
-#: builtins.c:1109
-msgid ""
-"The `for' loop executes a sequence of commands for each member in a\n"
-"    list of items.  If `in WORDS ...;' is not present, then `in \"$@\"' is\n"
-"    assumed.  For each element in WORDS, NAME is set to that element, and\n"
-"    the COMMANDS are executed."
-msgstr ""
-
-#: builtins.c:1118
-msgid ""
-"Equivalent to\n"
-"    \t(( EXP1 ))\n"
-"    \twhile (( EXP2 )); do\n"
-"    \t\tCOMMANDS\n"
-"    \t\t(( EXP3 ))\n"
-"    \tdone\n"
-"    EXP1, EXP2, and EXP3 are arithmetic expressions.  If any expression is\n"
-"    omitted, it behaves as if it evaluates to 1."
-msgstr ""
-
-#: builtins.c:1131
-msgid ""
-"The WORDS are expanded, generating a list of words.  The\n"
-"    set of expanded words is printed on the standard error, each\n"
-"    preceded by a number.  If `in WORDS' is not present, `in \"$@\"'\n"
-"    is assumed.  The PS3 prompt is then displayed and a line read\n"
-"    from the standard input.  If the line consists of the number\n"
-"    corresponding to one of the displayed words, then NAME is set\n"
-"    to that word.  If the line is empty, WORDS and the prompt are\n"
-"    redisplayed.  If EOF is read, the command completes.  Any other\n"
-"    value read causes NAME to be set to null.  The line read is saved\n"
-"    in the variable REPLY.  COMMANDS are executed after each selection\n"
-"    until a break command is executed."
-msgstr ""
-
-#: builtins.c:1147
-msgid ""
-"Execute PIPELINE and print a summary of the real time, user CPU time,\n"
-"    and system CPU time spent executing PIPELINE when it terminates.\n"
-"    The return status is the return status of PIPELINE.  The `-p' option\n"
-"    prints the timing summary in a slightly different format.  This uses\n"
-"    the value of the TIMEFORMAT variable as the output format."
-msgstr ""
-
-#: builtins.c:1157
-msgid ""
-"Selectively execute COMMANDS based upon WORD matching PATTERN.  The\n"
-"    `|' is used to separate multiple patterns."
-msgstr ""
-
-#: builtins.c:1164
-msgid ""
-"The `if COMMANDS' list is executed.  If its exit status is zero, then the\n"
-"    `then COMMANDS' list is executed.  Otherwise, each `elif COMMANDS' list "
-"is\n"
-"    executed in turn, and if its exit status is zero, the corresponding\n"
-"    `then COMMANDS' list is executed and the if command completes.  "
-"Otherwise,\n"
-"    the `else COMMANDS' list is executed, if present.  The exit status of "
-"the\n"
-"    entire construct is the exit status of the last command executed, or "
-"zero\n"
-"    if no condition tested true."
-msgstr ""
-
-#: builtins.c:1176
-msgid ""
-"Expand and execute COMMANDS as long as the final command in the\n"
-"    `while' COMMANDS has an exit status of zero."
-msgstr ""
-
-#: builtins.c:1183
-msgid ""
-"Expand and execute COMMANDS as long as the final command in the\n"
-"    `until' COMMANDS has an exit status which is not zero."
-msgstr ""
-
-#: builtins.c:1190
-msgid ""
-"Create a simple command invoked by NAME which runs COMMANDS.\n"
-"    Arguments on the command line along with NAME are passed to the\n"
-"    function as $0 .. $n."
-msgstr ""
-
-#: builtins.c:1198
-msgid ""
-"Run a set of commands in a group.  This is one way to redirect an\n"
-"    entire set of commands."
-msgstr ""
-
-#: builtins.c:1205
-msgid ""
-"Equivalent to the JOB_SPEC argument to the `fg' command.  Resume a\n"
-"    stopped or background job.  JOB_SPEC can specify either a job name\n"
-"    or a job number.  Following JOB_SPEC with a `&' places the job in\n"
-"    the background, as if the job specification had been supplied as an\n"
-"    argument to `bg'."
-msgstr ""
-
-#: builtins.c:1215
-msgid ""
-"The EXPRESSION is evaluated according to the rules for arithmetic\n"
-"    evaluation.  Equivalent to \"let EXPRESSION\"."
-msgstr ""
-
-#: builtins.c:1222
-msgid ""
-"Returns a status of 0 or 1 depending on the evaluation of the conditional\n"
-"    expression EXPRESSION.  Expressions are composed of the same primaries "
-"used\n"
-"    by the `test' builtin, and may be combined using the following "
-"operators\n"
-"    \n"
-"    \t( EXPRESSION )\tReturns the value of EXPRESSION\n"
-"    \t! EXPRESSION\tTrue if EXPRESSION is false; else false\n"
-"    \tEXPR1 && EXPR2\tTrue if both EXPR1 and EXPR2 are true; else false\n"
-"    \tEXPR1 || EXPR2\tTrue if either EXPR1 or EXPR2 is true; else false\n"
-"    \n"
-"    When the `==' and `!=' operators are used, the string to the right of "
-"the\n"
-"    operator is used as a pattern and pattern matching is performed.  The\n"
-"    && and || operators do not evaluate EXPR2 if EXPR1 is sufficient to\n"
-"    determine the expression's value."
-msgstr ""
-
-#: builtins.c:1240
-msgid ""
-"BASH_VERSION\tVersion information for this Bash.\n"
-"    CDPATH\tA colon-separated list of directories to search\n"
-"    \t\tfor directries given as arguments to `cd'.\n"
-"    GLOBIGNORE\tA colon-separated list of patterns describing filenames to\n"
-"    \t\tbe ignored by pathname expansion.\n"
-"    HISTFILE\tThe name of the file where your command history is stored.\n"
-"    HISTFILESIZE\tThe maximum number of lines this file can contain.\n"
-"    HISTSIZE\tThe maximum number of history lines that a running\n"
-"    \t\tshell can access.\n"
-"    HOME\tThe complete pathname to your login directory.\n"
-"    HOSTNAME\tThe name of the current host.\n"
-"    HOSTTYPE\tThe type of CPU this version of Bash is running under.\n"
-"    IGNOREEOF\tControls the action of the shell on receipt of an EOF\n"
-"    \t\tcharacter as the sole input.  If set, then the value\n"
-"    \t\tof it is the number of EOF characters that can be seen\n"
-"    \t\tin a row on an empty line before the shell will exit\n"
-"    \t\t(default 10).  When unset, EOF signifies the end of input.\n"
-"    MACHTYPE\tA string describing the current system Bash is running on.\n"
-"    MAILCHECK\tHow often, in seconds, Bash checks for new mail.\n"
-"    MAILPATH\tA colon-separated list of filenames which Bash checks\n"
-"    \t\tfor new mail.\n"
-"    OSTYPE\tThe version of Unix this version of Bash is running on.\n"
-"    PATH\tA colon-separated list of directories to search when\n"
-"    \t\tlooking for commands.\n"
-"    PROMPT_COMMAND\tA command to be executed before the printing of each\n"
-"    \t\tprimary prompt.\n"
-"    PS1\t\tThe primary prompt string.\n"
-"    PS2\t\tThe secondary prompt string.\n"
-"    PWD\t\tThe full pathname of the current directory.\n"
-"    SHELLOPTS\tA colon-separated list of enabled shell options.\n"
-"    TERM\tThe name of the current terminal type.\n"
-"    TIMEFORMAT\tThe output format for timing statistics displayed by the\n"
-"    \t\t`time' reserved word.\n"
-"    auto_resume\tNon-null means a command word appearing on a line by\n"
-"    \t\titself is first looked for in the list of currently\n"
-"    \t\tstopped jobs.  If found there, that job is foregrounded.\n"
-"    \t\tA value of `exact' means that the command word must\n"
-"    \t\texactly match a command in the list of stopped jobs.  A\n"
-"    \t\tvalue of `substring' means that the command word must\n"
-"    \t\tmatch a substring of the job.  Any other value means that\n"
-"    \t\tthe command must be a prefix of a stopped job.\n"
-"    histchars\tCharacters controlling history expansion and quick\n"
-"    \t\tsubstitution.  The first character is the history\n"
-"    \t\tsubstitution character, usually `!'.  The second is\n"
-"    \t\tthe `quick substitution' character, usually `^'.  The\n"
-"    \t\tthird is the `history comment' character, usually `#'.\n"
-"    HISTIGNORE\tA colon-separated list of patterns used to decide which\n"
-"    \t\tcommands should be saved on the history list.\n"
-msgstr ""
-
-#: builtins.c:1295
-msgid ""
-"Adds a directory to the top of the directory stack, or rotates\n"
-"    the stack, making the new top of the stack the current working\n"
-"    directory.  With no arguments, exchanges the top two directories.\n"
-"    \n"
-"    +N\tRotates the stack so that the Nth directory (counting\n"
-"    \tfrom the left of the list shown by `dirs', starting with\n"
-"    \tzero) is at the top.\n"
-"    \n"
-"    -N\tRotates the stack so that the Nth directory (counting\n"
-"    \tfrom the right of the list shown by `dirs', starting with\n"
-"    \tzero) is at the top.\n"
-"    \n"
-"    -n\tsuppress the normal change of directory when adding directories\n"
-"    \tto the stack, so only the stack is manipulated.\n"
-"    \n"
-"    dir\tadds DIR to the directory stack at the top, making it the\n"
-"    \tnew current working directory.\n"
-"    \n"
-"    You can see the directory stack with the `dirs' command."
-msgstr ""
-
-#: builtins.c:1321
-msgid ""
-"Removes entries from the directory stack.  With no arguments,\n"
-"    removes the top directory from the stack, and cd's to the new\n"
-"    top directory.\n"
-"    \n"
-"    +N\tremoves the Nth entry counting from the left of the list\n"
-"    \tshown by `dirs', starting with zero.  For example: `popd +0'\n"
-"    \tremoves the first directory, `popd +1' the second.\n"
-"    \n"
-"    -N\tremoves the Nth entry counting from the right of the list\n"
-"    \tshown by `dirs', starting with zero.  For example: `popd -0'\n"
-"    \tremoves the last directory, `popd -1' the next to last.\n"
-"    \n"
-"    -n\tsuppress the normal change of directory when removing directories\n"
-"    \tfrom the stack, so only the stack is manipulated.\n"
-"    \n"
-"    You can see the directory stack with the `dirs' command."
-msgstr ""
-
-#: builtins.c:1344
-msgid ""
-"Display the list of currently remembered directories.  Directories\n"
-"    find their way onto the list with the `pushd' command; you can get\n"
-"    back up through the list with the `popd' command.\n"
-"    \n"
-"    The -l flag specifies that `dirs' should not print shorthand versions\n"
-"    of directories which are relative to your home directory.  This means\n"
-"    that `~/bin' might be displayed as `/homes/bfox/bin'.  The -v flag\n"
-"    causes `dirs' to print the directory stack with one entry per line,\n"
-"    prepending the directory name with its position in the stack.  The -p\n"
-"    flag does the same thing, but the stack position is not prepended.\n"
-"    The -c flag clears the directory stack by deleting all of the elements.\n"
-"    \n"
-"    +N\tdisplays the Nth entry counting from the left of the list shown by\n"
-"    \tdirs when invoked without options, starting with zero.\n"
-"    \n"
-"    -N\tdisplays the Nth entry counting from the right of the list shown by\n"
-"    \tdirs when invoked without options, starting with zero."
-msgstr ""
-
-#: builtins.c:1367
-msgid ""
-"Toggle the values of variables controlling optional behavior.\n"
-"    The -s flag means to enable (set) each OPTNAME; the -u flag\n"
-"    unsets each OPTNAME.  The -q flag suppresses output; the exit\n"
-"    status indicates whether each OPTNAME is set or unset.  The -o\n"
-"    option restricts the OPTNAMEs to those defined for use with\n"
-"    `set -o'.  With no options, or with the -p option, a list of all\n"
-"    settable options is displayed, with an indication of whether or\n"
-"    not each is set."
-msgstr ""
-
-#: builtins.c:1380
-msgid ""
-"printf formats and prints ARGUMENTS under control of the FORMAT. FORMAT\n"
-"    is a character string which contains three types of objects: plain\n"
-"    characters, which are simply copied to standard output, character "
-"escape\n"
-"    sequences which are converted and copied to the standard output, and\n"
-"    format specifications, each of which causes printing of the next "
-"successive\n"
-"    argument.  In addition to the standard printf(1) formats, %b means to\n"
-"    expand backslash escape sequences in the corresponding argument, and %q\n"
-"    means to quote the argument in a way that can be reused as shell input.\n"
-"    If the -v option is supplied, the output is placed into the value of "
-"the\n"
-"    shell variable VAR rather than being sent to the standard output."
-msgstr ""
-
-#: builtins.c:1396
-msgid ""
-"For each NAME, specify how arguments are to be completed.\n"
-"    If the -p option is supplied, or if no options are supplied, existing\n"
-"    completion specifications are printed in a way that allows them to be\n"
-"    reused as input.  The -r option removes a completion specification for\n"
-"    each NAME, or, if no NAMEs are supplied, all completion specifications."
-msgstr ""
-
-#: builtins.c:1408
-msgid ""
-"Display the possible completions depending on the options.  Intended\n"
-"    to be used from within a shell function generating possible "
-"completions.\n"
-"    If the optional WORD argument is supplied, matches against WORD are\n"
-"    generated."
-msgstr ""
diff --git a/po/bash-4.0.pot b/po/bash-4.0.pot
deleted file mode 100644 (file)
index 3f78e05..0000000
+++ /dev/null
@@ -1,3824 +0,0 @@
-# SOME DESCRIPTIVE TITLE.
-# Copyright (C) YEAR Free Software Foundation, Inc.
-# This file is distributed under the same license as the PACKAGE package.
-# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
-#
-#, fuzzy
-msgid ""
-msgstr ""
-"Project-Id-Version: PACKAGE VERSION\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2009-02-19 14:53-0500\n"
-"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
-"Language-Team: LANGUAGE <LL@li.org>\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=CHARSET\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Plural-Forms: nplurals=INTEGER; plural=EXPRESSION;\n"
-
-#: arrayfunc.c:50
-msgid "bad array subscript"
-msgstr ""
-
-#: arrayfunc.c:313 builtins/declare.def:474
-#, c-format
-msgid "%s: cannot convert indexed to associative array"
-msgstr ""
-
-#: arrayfunc.c:479
-#, c-format
-msgid "%s: invalid associative array key"
-msgstr ""
-
-#: arrayfunc.c:481
-#, c-format
-msgid "%s: cannot assign to non-numeric index"
-msgstr ""
-
-#: arrayfunc.c:517
-#, c-format
-msgid "%s: %s: must use subscript when assigning associative array"
-msgstr ""
-
-#: bashhist.c:379
-#, c-format
-msgid "%s: cannot create: %s"
-msgstr ""
-
-#: bashline.c:3413
-msgid "bash_execute_unix_command: cannot find keymap for command"
-msgstr ""
-
-#: bashline.c:3491
-#, c-format
-msgid "%s: first non-whitespace character is not `\"'"
-msgstr ""
-
-#: bashline.c:3520
-#, c-format
-msgid "no closing `%c' in %s"
-msgstr ""
-
-#: bashline.c:3554
-#, c-format
-msgid "%s: missing colon separator"
-msgstr ""
-
-#: builtins/bind.def:120 builtins/bind.def:123
-msgid "line editing not enabled"
-msgstr ""
-
-#: builtins/bind.def:206
-#, c-format
-msgid "`%s': invalid keymap name"
-msgstr ""
-
-#: builtins/bind.def:245
-#, c-format
-msgid "%s: cannot read: %s"
-msgstr ""
-
-#: builtins/bind.def:260
-#, c-format
-msgid "`%s': cannot unbind"
-msgstr ""
-
-#: builtins/bind.def:295 builtins/bind.def:325
-#, c-format
-msgid "`%s': unknown function name"
-msgstr ""
-
-#: builtins/bind.def:303
-#, c-format
-msgid "%s is not bound to any keys.\n"
-msgstr ""
-
-#: builtins/bind.def:307
-#, c-format
-msgid "%s can be invoked via "
-msgstr ""
-
-#: builtins/break.def:77 builtins/break.def:117
-msgid "loop count"
-msgstr ""
-
-#: builtins/break.def:137
-msgid "only meaningful in a `for', `while', or `until' loop"
-msgstr ""
-
-#: builtins/caller.def:133
-msgid ""
-"Returns the context of the current subroutine call.\n"
-"    \n"
-"    Without EXPR, returns "
-msgstr ""
-
-#: builtins/cd.def:215
-msgid "HOME not set"
-msgstr ""
-
-#: builtins/cd.def:227
-msgid "OLDPWD not set"
-msgstr ""
-
-#: builtins/common.c:101
-#, c-format
-msgid "line %d: "
-msgstr ""
-
-#: builtins/common.c:139 error.c:260
-#, c-format
-msgid "warning: "
-msgstr ""
-
-#: builtins/common.c:153
-#, c-format
-msgid "%s: usage: "
-msgstr ""
-
-#: builtins/common.c:166 test.c:822
-msgid "too many arguments"
-msgstr ""
-
-#: builtins/common.c:191 shell.c:493 shell.c:774
-#, c-format
-msgid "%s: option requires an argument"
-msgstr ""
-
-#: builtins/common.c:198
-#, c-format
-msgid "%s: numeric argument required"
-msgstr ""
-
-#: builtins/common.c:205
-#, c-format
-msgid "%s: not found"
-msgstr ""
-
-#: builtins/common.c:214 shell.c:787
-#, c-format
-msgid "%s: invalid option"
-msgstr ""
-
-#: builtins/common.c:221
-#, c-format
-msgid "%s: invalid option name"
-msgstr ""
-
-#: builtins/common.c:228 general.c:231 general.c:236
-#, c-format
-msgid "`%s': not a valid identifier"
-msgstr ""
-
-#: builtins/common.c:238
-msgid "invalid octal number"
-msgstr ""
-
-#: builtins/common.c:240
-msgid "invalid hex number"
-msgstr ""
-
-#: builtins/common.c:242 expr.c:1255
-msgid "invalid number"
-msgstr ""
-
-#: builtins/common.c:250
-#, c-format
-msgid "%s: invalid signal specification"
-msgstr ""
-
-#: builtins/common.c:257
-#, c-format
-msgid "`%s': not a pid or valid job spec"
-msgstr ""
-
-#: builtins/common.c:264 error.c:453
-#, c-format
-msgid "%s: readonly variable"
-msgstr ""
-
-#: builtins/common.c:272
-#, c-format
-msgid "%s: %s out of range"
-msgstr ""
-
-#: builtins/common.c:272 builtins/common.c:274
-msgid "argument"
-msgstr ""
-
-#: builtins/common.c:274
-#, c-format
-msgid "%s out of range"
-msgstr ""
-
-#: builtins/common.c:282
-#, c-format
-msgid "%s: no such job"
-msgstr ""
-
-#: builtins/common.c:290
-#, c-format
-msgid "%s: no job control"
-msgstr ""
-
-#: builtins/common.c:292
-msgid "no job control"
-msgstr ""
-
-#: builtins/common.c:302
-#, c-format
-msgid "%s: restricted"
-msgstr ""
-
-#: builtins/common.c:304
-msgid "restricted"
-msgstr ""
-
-#: builtins/common.c:312
-#, c-format
-msgid "%s: not a shell builtin"
-msgstr ""
-
-#: builtins/common.c:321
-#, c-format
-msgid "write error: %s"
-msgstr ""
-
-#: builtins/common.c:329
-#, c-format
-msgid "error setting terminal attributes: %s"
-msgstr ""
-
-#: builtins/common.c:331
-#, c-format
-msgid "error getting terminal attributes: %s"
-msgstr ""
-
-#: builtins/common.c:563
-#, c-format
-msgid "%s: error retrieving current directory: %s: %s\n"
-msgstr ""
-
-#: builtins/common.c:629 builtins/common.c:631
-#, c-format
-msgid "%s: ambiguous job spec"
-msgstr ""
-
-#: builtins/complete.def:270
-#, c-format
-msgid "%s: invalid action name"
-msgstr ""
-
-#: builtins/complete.def:430 builtins/complete.def:615
-#: builtins/complete.def:813
-#, c-format
-msgid "%s: no completion specification"
-msgstr ""
-
-#: builtins/complete.def:667
-msgid "warning: -F option may not work as you expect"
-msgstr ""
-
-#: builtins/complete.def:669
-msgid "warning: -C option may not work as you expect"
-msgstr ""
-
-#: builtins/complete.def:786
-msgid "not currently executing completion function"
-msgstr ""
-
-#: builtins/declare.def:122
-msgid "can only be used in a function"
-msgstr ""
-
-#: builtins/declare.def:353
-msgid "cannot use `-f' to make functions"
-msgstr ""
-
-#: builtins/declare.def:365 execute_cmd.c:4818
-#, c-format
-msgid "%s: readonly function"
-msgstr ""
-
-#: builtins/declare.def:461
-#, c-format
-msgid "%s: cannot destroy array variables in this way"
-msgstr ""
-
-#: builtins/declare.def:468
-#, c-format
-msgid "%s: cannot convert associative to indexed array"
-msgstr ""
-
-#: builtins/enable.def:137 builtins/enable.def:145
-msgid "dynamic loading not available"
-msgstr ""
-
-#: builtins/enable.def:312
-#, c-format
-msgid "cannot open shared object %s: %s"
-msgstr ""
-
-#: builtins/enable.def:335
-#, c-format
-msgid "cannot find %s in shared object %s: %s"
-msgstr ""
-
-#: builtins/enable.def:459
-#, c-format
-msgid "%s: not dynamically loaded"
-msgstr ""
-
-#: builtins/enable.def:474
-#, c-format
-msgid "%s: cannot delete: %s"
-msgstr ""
-
-#: builtins/evalfile.c:134 builtins/hash.def:169 execute_cmd.c:4675
-#: shell.c:1439
-#, c-format
-msgid "%s: is a directory"
-msgstr ""
-
-#: builtins/evalfile.c:139
-#, c-format
-msgid "%s: not a regular file"
-msgstr ""
-
-#: builtins/evalfile.c:147
-#, c-format
-msgid "%s: file is too large"
-msgstr ""
-
-#: builtins/evalfile.c:185 execute_cmd.c:4745 shell.c:1449
-#, c-format
-msgid "%s: cannot execute binary file"
-msgstr ""
-
-#: builtins/exec.def:212
-#, c-format
-msgid "%s: cannot execute: %s"
-msgstr ""
-
-#: builtins/exit.def:65
-#, c-format
-msgid "logout\n"
-msgstr ""
-
-#: builtins/exit.def:88
-msgid "not login shell: use `exit'"
-msgstr ""
-
-#: builtins/exit.def:120
-#, c-format
-msgid "There are stopped jobs.\n"
-msgstr ""
-
-#: builtins/exit.def:122
-#, c-format
-msgid "There are running jobs.\n"
-msgstr ""
-
-#: builtins/fc.def:261
-msgid "no command found"
-msgstr ""
-
-#: builtins/fc.def:341
-msgid "history specification"
-msgstr ""
-
-#: builtins/fc.def:362
-#, c-format
-msgid "%s: cannot open temp file: %s"
-msgstr ""
-
-#: builtins/fg_bg.def:149 builtins/jobs.def:282
-msgid "current"
-msgstr ""
-
-#: builtins/fg_bg.def:158
-#, c-format
-msgid "job %d started without job control"
-msgstr ""
-
-#: builtins/getopt.c:110
-#, c-format
-msgid "%s: illegal option -- %c\n"
-msgstr ""
-
-#: builtins/getopt.c:111
-#, c-format
-msgid "%s: option requires an argument -- %c\n"
-msgstr ""
-
-#: builtins/hash.def:92
-msgid "hashing disabled"
-msgstr ""
-
-#: builtins/hash.def:138
-#, c-format
-msgid "%s: hash table empty\n"
-msgstr ""
-
-#: builtins/hash.def:244
-#, c-format
-msgid "hits\tcommand\n"
-msgstr ""
-
-#: builtins/help.def:130
-#, c-format
-msgid "Shell commands matching keyword `"
-msgid_plural "Shell commands matching keywords `"
-msgstr[0] ""
-msgstr[1] ""
-
-#: builtins/help.def:168
-#, c-format
-msgid ""
-"no help topics match `%s'.  Try `help help' or `man -k %s' or `info %s'."
-msgstr ""
-
-#: builtins/help.def:185
-#, c-format
-msgid "%s: cannot open: %s"
-msgstr ""
-
-#: builtins/help.def:337
-#, c-format
-msgid ""
-"These shell commands are defined internally.  Type `help' to see this list.\n"
-"Type `help name' to find out more about the function `name'.\n"
-"Use `info bash' to find out more about the shell in general.\n"
-"Use `man -k' or `info' to find out more about commands not in this list.\n"
-"\n"
-"A star (*) next to a name means that the command is disabled.\n"
-"\n"
-msgstr ""
-
-#: builtins/history.def:154
-msgid "cannot use more than one of -anrw"
-msgstr ""
-
-#: builtins/history.def:186
-msgid "history position"
-msgstr ""
-
-#: builtins/history.def:365
-#, c-format
-msgid "%s: history expansion failed"
-msgstr ""
-
-#: builtins/inlib.def:71
-#, c-format
-msgid "%s: inlib failed"
-msgstr ""
-
-#: builtins/jobs.def:109
-msgid "no other options allowed with `-x'"
-msgstr ""
-
-#: builtins/kill.def:197
-#, c-format
-msgid "%s: arguments must be process or job IDs"
-msgstr ""
-
-#: builtins/kill.def:260
-msgid "Unknown error"
-msgstr ""
-
-#: builtins/let.def:95 builtins/let.def:120 expr.c:501 expr.c:516
-msgid "expression expected"
-msgstr ""
-
-#: builtins/mapfile.def:241 builtins/read.def:272
-#, c-format
-msgid "%s: invalid file descriptor specification"
-msgstr ""
-
-#: builtins/mapfile.def:249 builtins/read.def:279
-#, c-format
-msgid "%d: invalid file descriptor: %s"
-msgstr ""
-
-#: builtins/mapfile.def:258 builtins/mapfile.def:296
-#, c-format
-msgid "%s: invalid line count"
-msgstr ""
-
-#: builtins/mapfile.def:269
-#, c-format
-msgid "%s: invalid array origin"
-msgstr ""
-
-#: builtins/mapfile.def:286
-#, c-format
-msgid "%s: invalid callback quantum"
-msgstr ""
-
-#: builtins/mapfile.def:318
-msgid "empty array variable name"
-msgstr ""
-
-#: builtins/mapfile.def:339
-msgid "array variable support required"
-msgstr ""
-
-#: builtins/printf.def:367
-#, c-format
-msgid "`%s': missing format character"
-msgstr ""
-
-#: builtins/printf.def:544
-#, c-format
-msgid "`%c': invalid format character"
-msgstr ""
-
-#: builtins/printf.def:571
-#, c-format
-msgid "warning: %s: %s"
-msgstr ""
-
-#: builtins/printf.def:750
-msgid "missing hex digit for \\x"
-msgstr ""
-
-#: builtins/pushd.def:195
-msgid "no other directory"
-msgstr ""
-
-#: builtins/pushd.def:462
-msgid "<no current directory>"
-msgstr ""
-
-#: builtins/pushd.def:506
-msgid "directory stack empty"
-msgstr ""
-
-#: builtins/pushd.def:508
-msgid "directory stack index"
-msgstr ""
-
-#: builtins/pushd.def:683
-msgid ""
-"Display the list of currently remembered directories.  Directories\n"
-"    find their way onto the list with the `pushd' command; you can get\n"
-"    back up through the list with the `popd' command.\n"
-"    \n"
-"    Options:\n"
-"      -c\tclear the directory stack by deleting all of the elements\n"
-"      -l\tdo not print tilde-prefixed versions of directories relative\n"
-"    \tto your home directory\n"
-"      -p\tprint the directory stack with one entry per line\n"
-"      -v\tprint the directory stack with one entry per line prefixed\n"
-"    \twith its position in the stack\n"
-"    \n"
-"    Arguments:\n"
-"      +N\tDisplays the Nth entry counting from the left of the list shown "
-"by\n"
-"    \tdirs when invoked without options, starting with zero.\n"
-"    \n"
-"      -N\tDisplays the Nth entry counting from the right of the list shown "
-"by\n"
-"\tdirs when invoked without options, starting with zero."
-msgstr ""
-
-#: builtins/pushd.def:705
-msgid ""
-"Adds a directory to the top of the directory stack, or rotates\n"
-"    the stack, making the new top of the stack the current working\n"
-"    directory.  With no arguments, exchanges the top two directories.\n"
-"    \n"
-"    Options:\n"
-"      -n\tSuppresses the normal change of directory when adding\n"
-"    \tdirectories to the stack, so only the stack is manipulated.\n"
-"    \n"
-"    Arguments:\n"
-"      +N\tRotates the stack so that the Nth directory (counting\n"
-"    \tfrom the left of the list shown by `dirs', starting with\n"
-"    \tzero) is at the top.\n"
-"    \n"
-"      -N\tRotates the stack so that the Nth directory (counting\n"
-"    \tfrom the right of the list shown by `dirs', starting with\n"
-"    \tzero) is at the top.\n"
-"    \n"
-"      dir\tAdds DIR to the directory stack at the top, making it the\n"
-"    \tnew current working directory.\n"
-"    \n"
-"    The `dirs' builtin displays the directory stack."
-msgstr ""
-
-#: builtins/pushd.def:730
-msgid ""
-"Removes entries from the directory stack.  With no arguments, removes\n"
-"    the top directory from the stack, and changes to the new top directory.\n"
-"    \n"
-"    Options:\n"
-"      -n\tSuppresses the normal change of directory when removing\n"
-"    \tdirectories from the stack, so only the stack is manipulated.\n"
-"    \n"
-"    Arguments:\n"
-"      +N\tRemoves the Nth entry counting from the left of the list\n"
-"    \tshown by `dirs', starting with zero.  For example: `popd +0'\n"
-"    \tremoves the first directory, `popd +1' the second.\n"
-"    \n"
-"      -N\tRemoves the Nth entry counting from the right of the list\n"
-"    \tshown by `dirs', starting with zero.  For example: `popd -0'\n"
-"    \tremoves the last directory, `popd -1' the next to last.\n"
-"    \n"
-"    The `dirs' builtin displays the directory stack."
-msgstr ""
-
-#: builtins/read.def:248
-#, c-format
-msgid "%s: invalid timeout specification"
-msgstr ""
-
-#: builtins/read.def:574
-#, c-format
-msgid "read error: %d: %s"
-msgstr ""
-
-#: builtins/return.def:73
-msgid "can only `return' from a function or sourced script"
-msgstr ""
-
-#: builtins/set.def:768
-msgid "cannot simultaneously unset a function and a variable"
-msgstr ""
-
-#: builtins/set.def:805
-#, c-format
-msgid "%s: cannot unset"
-msgstr ""
-
-#: builtins/set.def:812
-#, c-format
-msgid "%s: cannot unset: readonly %s"
-msgstr ""
-
-#: builtins/set.def:823
-#, c-format
-msgid "%s: not an array variable"
-msgstr ""
-
-#: builtins/setattr.def:186
-#, c-format
-msgid "%s: not a function"
-msgstr ""
-
-#: builtins/shift.def:71 builtins/shift.def:77
-msgid "shift count"
-msgstr ""
-
-#: builtins/shopt.def:254
-msgid "cannot set and unset shell options simultaneously"
-msgstr ""
-
-#: builtins/shopt.def:319
-#, c-format
-msgid "%s: invalid shell option name"
-msgstr ""
-
-#: builtins/source.def:128
-msgid "filename argument required"
-msgstr ""
-
-#: builtins/source.def:153
-#, c-format
-msgid "%s: file not found"
-msgstr ""
-
-#: builtins/suspend.def:101
-msgid "cannot suspend"
-msgstr ""
-
-#: builtins/suspend.def:111
-msgid "cannot suspend a login shell"
-msgstr ""
-
-#: builtins/type.def:234
-#, c-format
-msgid "%s is aliased to `%s'\n"
-msgstr ""
-
-#: builtins/type.def:255
-#, c-format
-msgid "%s is a shell keyword\n"
-msgstr ""
-
-#: builtins/type.def:274
-#, c-format
-msgid "%s is a function\n"
-msgstr ""
-
-#: builtins/type.def:296
-#, c-format
-msgid "%s is a shell builtin\n"
-msgstr ""
-
-#: builtins/type.def:317 builtins/type.def:391
-#, c-format
-msgid "%s is %s\n"
-msgstr ""
-
-#: builtins/type.def:337
-#, c-format
-msgid "%s is hashed (%s)\n"
-msgstr ""
-
-#: builtins/ulimit.def:372
-#, c-format
-msgid "%s: invalid limit argument"
-msgstr ""
-
-#: builtins/ulimit.def:398
-#, c-format
-msgid "`%c': bad command"
-msgstr ""
-
-#: builtins/ulimit.def:427
-#, c-format
-msgid "%s: cannot get limit: %s"
-msgstr ""
-
-#: builtins/ulimit.def:453
-msgid "limit"
-msgstr ""
-
-#: builtins/ulimit.def:465 builtins/ulimit.def:765
-#, c-format
-msgid "%s: cannot modify limit: %s"
-msgstr ""
-
-#: builtins/umask.def:118
-msgid "octal number"
-msgstr ""
-
-#: builtins/umask.def:231
-#, c-format
-msgid "`%c': invalid symbolic mode operator"
-msgstr ""
-
-#: builtins/umask.def:286
-#, c-format
-msgid "`%c': invalid symbolic mode character"
-msgstr ""
-
-#: error.c:89 error.c:320 error.c:322 error.c:324
-msgid " line "
-msgstr ""
-
-#: error.c:164
-#, c-format
-msgid "last command: %s\n"
-msgstr ""
-
-#: error.c:172
-#, c-format
-msgid "Aborting..."
-msgstr ""
-
-#: error.c:405
-msgid "unknown command error"
-msgstr ""
-
-#: error.c:406
-msgid "bad command type"
-msgstr ""
-
-#: error.c:407
-msgid "bad connector"
-msgstr ""
-
-#: error.c:408
-msgid "bad jump"
-msgstr ""
-
-#: error.c:446
-#, c-format
-msgid "%s: unbound variable"
-msgstr ""
-
-#: eval.c:181
-#, c-format
-msgid "\atimed out waiting for input: auto-logout\n"
-msgstr ""
-
-#: execute_cmd.c:491
-#, c-format
-msgid "cannot redirect standard input from /dev/null: %s"
-msgstr ""
-
-#: execute_cmd.c:1112
-#, c-format
-msgid "TIMEFORMAT: `%c': invalid format character"
-msgstr ""
-
-#: execute_cmd.c:2011
-msgid "pipe error"
-msgstr ""
-
-#: execute_cmd.c:4363
-#, c-format
-msgid "%s: restricted: cannot specify `/' in command names"
-msgstr ""
-
-#: execute_cmd.c:4454
-#, c-format
-msgid "%s: command not found"
-msgstr ""
-
-#: execute_cmd.c:4708
-#, c-format
-msgid "%s: %s: bad interpreter"
-msgstr ""
-
-#: execute_cmd.c:4857
-#, c-format
-msgid "cannot duplicate fd %d to fd %d"
-msgstr ""
-
-#: expr.c:241
-msgid "expression recursion level exceeded"
-msgstr ""
-
-#: expr.c:265
-msgid "recursion stack underflow"
-msgstr ""
-
-#: expr.c:379
-msgid "syntax error in expression"
-msgstr ""
-
-#: expr.c:419
-msgid "attempted assignment to non-variable"
-msgstr ""
-
-#: expr.c:440 expr.c:445 expr.c:756
-msgid "division by 0"
-msgstr ""
-
-#: expr.c:471
-msgid "bug: bad expassign token"
-msgstr ""
-
-#: expr.c:513
-msgid "`:' expected for conditional expression"
-msgstr ""
-
-#: expr.c:781
-msgid "exponent less than 0"
-msgstr ""
-
-#: expr.c:826
-msgid "identifier expected after pre-increment or pre-decrement"
-msgstr ""
-
-#: expr.c:854
-msgid "missing `)'"
-msgstr ""
-
-#: expr.c:897 expr.c:1175
-msgid "syntax error: operand expected"
-msgstr ""
-
-#: expr.c:1177
-msgid "syntax error: invalid arithmetic operator"
-msgstr ""
-
-#: expr.c:1201
-#, c-format
-msgid "%s%s%s: %s (error token is \"%s\")"
-msgstr ""
-
-#: expr.c:1259
-msgid "invalid arithmetic base"
-msgstr ""
-
-#: expr.c:1279
-msgid "value too great for base"
-msgstr ""
-
-#: expr.c:1328
-#, c-format
-msgid "%s: expression error\n"
-msgstr ""
-
-#: general.c:61
-msgid "getcwd: cannot access parent directories"
-msgstr ""
-
-#: input.c:94 subst.c:4559
-#, c-format
-msgid "cannot reset nodelay mode for fd %d"
-msgstr ""
-
-#: input.c:258
-#, c-format
-msgid "cannot allocate new file descriptor for bash input from fd %d"
-msgstr ""
-
-#: input.c:266
-#, c-format
-msgid "save_bash_input: buffer already exists for new fd %d"
-msgstr ""
-
-#: jobs.c:466
-msgid "start_pipeline: pgrp pipe"
-msgstr ""
-
-#: jobs.c:887
-#, c-format
-msgid "forked pid %d appears in running job %d"
-msgstr ""
-
-#: jobs.c:1005
-#, c-format
-msgid "deleting stopped job %d with process group %ld"
-msgstr ""
-
-#: jobs.c:1110
-#, c-format
-msgid "add_process: process %5ld (%s) in the_pipeline"
-msgstr ""
-
-#: jobs.c:1113
-#, c-format
-msgid "add_process: pid %5ld (%s) marked as still alive"
-msgstr ""
-
-#: jobs.c:1401
-#, c-format
-msgid "describe_pid: %ld: no such pid"
-msgstr ""
-
-#: jobs.c:1416
-#, c-format
-msgid "Signal %d"
-msgstr ""
-
-#: jobs.c:1430 jobs.c:1455
-msgid "Done"
-msgstr ""
-
-#: jobs.c:1435 siglist.c:122
-msgid "Stopped"
-msgstr ""
-
-#: jobs.c:1439
-#, c-format
-msgid "Stopped(%s)"
-msgstr ""
-
-#: jobs.c:1443
-msgid "Running"
-msgstr ""
-
-#: jobs.c:1457
-#, c-format
-msgid "Done(%d)"
-msgstr ""
-
-#: jobs.c:1459
-#, c-format
-msgid "Exit %d"
-msgstr ""
-
-#: jobs.c:1462
-msgid "Unknown status"
-msgstr ""
-
-#: jobs.c:1549
-#, c-format
-msgid "(core dumped) "
-msgstr ""
-
-#: jobs.c:1568
-#, c-format
-msgid "  (wd: %s)"
-msgstr ""
-
-#: jobs.c:1771
-#, c-format
-msgid "child setpgid (%ld to %ld)"
-msgstr ""
-
-#: jobs.c:2099 nojobs.c:585
-#, c-format
-msgid "wait: pid %ld is not a child of this shell"
-msgstr ""
-
-#: jobs.c:2326
-#, c-format
-msgid "wait_for: No record of process %ld"
-msgstr ""
-
-#: jobs.c:2598
-#, c-format
-msgid "wait_for_job: job %d is stopped"
-msgstr ""
-
-#: jobs.c:2820
-#, c-format
-msgid "%s: job has terminated"
-msgstr ""
-
-#: jobs.c:2829
-#, c-format
-msgid "%s: job %d already in background"
-msgstr ""
-
-#: jobs.c:3492
-#, c-format
-msgid "%s: line %d: "
-msgstr ""
-
-#: jobs.c:3506 nojobs.c:814
-#, c-format
-msgid " (core dumped)"
-msgstr ""
-
-#: jobs.c:3518 jobs.c:3531
-#, c-format
-msgid "(wd now: %s)\n"
-msgstr ""
-
-#: jobs.c:3563
-msgid "initialize_job_control: getpgrp failed"
-msgstr ""
-
-#: jobs.c:3623
-msgid "initialize_job_control: line discipline"
-msgstr ""
-
-#: jobs.c:3633
-msgid "initialize_job_control: setpgid"
-msgstr ""
-
-#: jobs.c:3661
-#, c-format
-msgid "cannot set terminal process group (%d)"
-msgstr ""
-
-#: jobs.c:3666
-msgid "no job control in this shell"
-msgstr ""
-
-#: lib/malloc/malloc.c:296
-#, c-format
-msgid "malloc: failed assertion: %s\n"
-msgstr ""
-
-#: lib/malloc/malloc.c:312
-#, c-format
-msgid ""
-"\r\n"
-"malloc: %s:%d: assertion botched\r\n"
-msgstr ""
-
-#: lib/malloc/malloc.c:313
-msgid "unknown"
-msgstr ""
-
-#: lib/malloc/malloc.c:797
-msgid "malloc: block on free list clobbered"
-msgstr ""
-
-#: lib/malloc/malloc.c:874
-msgid "free: called with already freed block argument"
-msgstr ""
-
-#: lib/malloc/malloc.c:877
-msgid "free: called with unallocated block argument"
-msgstr ""
-
-#: lib/malloc/malloc.c:896
-msgid "free: underflow detected; mh_nbytes out of range"
-msgstr ""
-
-#: lib/malloc/malloc.c:902
-msgid "free: start and end chunk sizes differ"
-msgstr ""
-
-#: lib/malloc/malloc.c:1001
-msgid "realloc: called with unallocated block argument"
-msgstr ""
-
-#: lib/malloc/malloc.c:1016
-msgid "realloc: underflow detected; mh_nbytes out of range"
-msgstr ""
-
-#: lib/malloc/malloc.c:1022
-msgid "realloc: start and end chunk sizes differ"
-msgstr ""
-
-#: lib/malloc/table.c:177
-#, c-format
-msgid "register_alloc: alloc table is full with FIND_ALLOC?\n"
-msgstr ""
-
-#: lib/malloc/table.c:184
-#, c-format
-msgid "register_alloc: %p already in table as allocated?\n"
-msgstr ""
-
-#: lib/malloc/table.c:220
-#, c-format
-msgid "register_free: %p already in table as free?\n"
-msgstr ""
-
-#: lib/sh/fmtulong.c:101
-msgid "invalid base"
-msgstr ""
-
-#: lib/sh/netopen.c:168
-#, c-format
-msgid "%s: host unknown"
-msgstr ""
-
-#: lib/sh/netopen.c:175
-#, c-format
-msgid "%s: invalid service"
-msgstr ""
-
-#: lib/sh/netopen.c:306
-#, c-format
-msgid "%s: bad network path specification"
-msgstr ""
-
-#: lib/sh/netopen.c:346
-msgid "network operations not supported"
-msgstr ""
-
-#: mailcheck.c:433
-msgid "You have mail in $_"
-msgstr ""
-
-#: mailcheck.c:458
-msgid "You have new mail in $_"
-msgstr ""
-
-#: mailcheck.c:474
-#, c-format
-msgid "The mail in %s has been read\n"
-msgstr ""
-
-#: make_cmd.c:322
-msgid "syntax error: arithmetic expression required"
-msgstr ""
-
-#: make_cmd.c:324
-msgid "syntax error: `;' unexpected"
-msgstr ""
-
-#: make_cmd.c:325
-#, c-format
-msgid "syntax error: `((%s))'"
-msgstr ""
-
-#: make_cmd.c:567
-#, c-format
-msgid "make_here_document: bad instruction type %d"
-msgstr ""
-
-#: make_cmd.c:651
-#, c-format
-msgid "here-document at line %d delimited by end-of-file (wanted `%s')"
-msgstr ""
-
-#: make_cmd.c:746
-#, c-format
-msgid "make_redirection: redirection instruction `%d' out of range"
-msgstr ""
-
-#: parse.y:2986 parse.y:3218
-#, c-format
-msgid "unexpected EOF while looking for matching `%c'"
-msgstr ""
-
-#: parse.y:3722
-msgid "unexpected EOF while looking for `]]'"
-msgstr ""
-
-#: parse.y:3727
-#, c-format
-msgid "syntax error in conditional expression: unexpected token `%s'"
-msgstr ""
-
-#: parse.y:3731
-msgid "syntax error in conditional expression"
-msgstr ""
-
-#: parse.y:3809
-#, c-format
-msgid "unexpected token `%s', expected `)'"
-msgstr ""
-
-#: parse.y:3813
-msgid "expected `)'"
-msgstr ""
-
-#: parse.y:3841
-#, c-format
-msgid "unexpected argument `%s' to conditional unary operator"
-msgstr ""
-
-#: parse.y:3845
-msgid "unexpected argument to conditional unary operator"
-msgstr ""
-
-#: parse.y:3885
-#, c-format
-msgid "unexpected token `%s', conditional binary operator expected"
-msgstr ""
-
-#: parse.y:3889
-msgid "conditional binary operator expected"
-msgstr ""
-
-#: parse.y:3906
-#, c-format
-msgid "unexpected argument `%s' to conditional binary operator"
-msgstr ""
-
-#: parse.y:3910
-msgid "unexpected argument to conditional binary operator"
-msgstr ""
-
-#: parse.y:3921
-#, c-format
-msgid "unexpected token `%c' in conditional command"
-msgstr ""
-
-#: parse.y:3924
-#, c-format
-msgid "unexpected token `%s' in conditional command"
-msgstr ""
-
-#: parse.y:3928
-#, c-format
-msgid "unexpected token %d in conditional command"
-msgstr ""
-
-#: parse.y:5195
-#, c-format
-msgid "syntax error near unexpected token `%s'"
-msgstr ""
-
-#: parse.y:5213
-#, c-format
-msgid "syntax error near `%s'"
-msgstr ""
-
-#: parse.y:5223
-msgid "syntax error: unexpected end of file"
-msgstr ""
-
-#: parse.y:5223
-msgid "syntax error"
-msgstr ""
-
-#: parse.y:5285
-#, c-format
-msgid "Use \"%s\" to leave the shell.\n"
-msgstr ""
-
-#: parse.y:5447
-msgid "unexpected EOF while looking for matching `)'"
-msgstr ""
-
-#: pcomplete.c:1018
-#, c-format
-msgid "completion: function `%s' not found"
-msgstr ""
-
-#: pcomplib.c:179
-#, c-format
-msgid "progcomp_insert: %s: NULL COMPSPEC"
-msgstr ""
-
-#: print_cmd.c:285
-#, c-format
-msgid "print_command: bad connector `%d'"
-msgstr ""
-
-#: print_cmd.c:1348
-#, c-format
-msgid "cprintf: `%c': invalid format character"
-msgstr ""
-
-#: redir.c:105
-msgid "file descriptor out of range"
-msgstr ""
-
-#: redir.c:148
-#, c-format
-msgid "%s: ambiguous redirect"
-msgstr ""
-
-#: redir.c:152
-#, c-format
-msgid "%s: cannot overwrite existing file"
-msgstr ""
-
-#: redir.c:157
-#, c-format
-msgid "%s: restricted: cannot redirect output"
-msgstr ""
-
-#: redir.c:162
-#, c-format
-msgid "cannot create temp file for here-document: %s"
-msgstr ""
-
-#: redir.c:517
-msgid "/dev/(tcp|udp)/host/port not supported without networking"
-msgstr ""
-
-#: redir.c:1023
-msgid "redirection error: cannot duplicate fd"
-msgstr ""
-
-#: shell.c:328
-msgid "could not find /tmp, please create!"
-msgstr ""
-
-#: shell.c:332
-msgid "/tmp must be a valid directory name"
-msgstr ""
-
-#: shell.c:876
-#, c-format
-msgid "%c%c: invalid option"
-msgstr ""
-
-#: shell.c:1638
-msgid "I have no name!"
-msgstr ""
-
-#: shell.c:1778
-#, c-format
-msgid "GNU bash, version %s-(%s)\n"
-msgstr ""
-
-#: shell.c:1779
-#, c-format
-msgid ""
-"Usage:\t%s [GNU long option] [option] ...\n"
-"\t%s [GNU long option] [option] script-file ...\n"
-msgstr ""
-
-#: shell.c:1781
-msgid "GNU long options:\n"
-msgstr ""
-
-#: shell.c:1785
-msgid "Shell options:\n"
-msgstr ""
-
-#: shell.c:1786
-msgid "\t-irsD or -c command or -O shopt_option\t\t(invocation only)\n"
-msgstr ""
-
-#: shell.c:1801
-#, c-format
-msgid "\t-%s or -o option\n"
-msgstr ""
-
-#: shell.c:1807
-#, c-format
-msgid "Type `%s -c \"help set\"' for more information about shell options.\n"
-msgstr ""
-
-#: shell.c:1808
-#, c-format
-msgid "Type `%s -c help' for more information about shell builtin commands.\n"
-msgstr ""
-
-#: shell.c:1809
-#, c-format
-msgid "Use the `bashbug' command to report bugs.\n"
-msgstr ""
-
-#: sig.c:583
-#, c-format
-msgid "sigprocmask: %d: invalid operation"
-msgstr ""
-
-#: siglist.c:47
-msgid "Bogus signal"
-msgstr ""
-
-#: siglist.c:50
-msgid "Hangup"
-msgstr ""
-
-#: siglist.c:54
-msgid "Interrupt"
-msgstr ""
-
-#: siglist.c:58
-msgid "Quit"
-msgstr ""
-
-#: siglist.c:62
-msgid "Illegal instruction"
-msgstr ""
-
-#: siglist.c:66
-msgid "BPT trace/trap"
-msgstr ""
-
-#: siglist.c:74
-msgid "ABORT instruction"
-msgstr ""
-
-#: siglist.c:78
-msgid "EMT instruction"
-msgstr ""
-
-#: siglist.c:82
-msgid "Floating point exception"
-msgstr ""
-
-#: siglist.c:86
-msgid "Killed"
-msgstr ""
-
-#: siglist.c:90
-msgid "Bus error"
-msgstr ""
-
-#: siglist.c:94
-msgid "Segmentation fault"
-msgstr ""
-
-#: siglist.c:98
-msgid "Bad system call"
-msgstr ""
-
-#: siglist.c:102
-msgid "Broken pipe"
-msgstr ""
-
-#: siglist.c:106
-msgid "Alarm clock"
-msgstr ""
-
-#: siglist.c:110
-msgid "Terminated"
-msgstr ""
-
-#: siglist.c:114
-msgid "Urgent IO condition"
-msgstr ""
-
-#: siglist.c:118
-msgid "Stopped (signal)"
-msgstr ""
-
-#: siglist.c:126
-msgid "Continue"
-msgstr ""
-
-#: siglist.c:134
-msgid "Child death or stop"
-msgstr ""
-
-#: siglist.c:138
-msgid "Stopped (tty input)"
-msgstr ""
-
-#: siglist.c:142
-msgid "Stopped (tty output)"
-msgstr ""
-
-#: siglist.c:146
-msgid "I/O ready"
-msgstr ""
-
-#: siglist.c:150
-msgid "CPU limit"
-msgstr ""
-
-#: siglist.c:154
-msgid "File limit"
-msgstr ""
-
-#: siglist.c:158
-msgid "Alarm (virtual)"
-msgstr ""
-
-#: siglist.c:162
-msgid "Alarm (profile)"
-msgstr ""
-
-#: siglist.c:166
-msgid "Window changed"
-msgstr ""
-
-#: siglist.c:170
-msgid "Record lock"
-msgstr ""
-
-#: siglist.c:174
-msgid "User signal 1"
-msgstr ""
-
-#: siglist.c:178
-msgid "User signal 2"
-msgstr ""
-
-#: siglist.c:182
-msgid "HFT input data pending"
-msgstr ""
-
-#: siglist.c:186
-msgid "power failure imminent"
-msgstr ""
-
-#: siglist.c:190
-msgid "system crash imminent"
-msgstr ""
-
-#: siglist.c:194
-msgid "migrate process to another CPU"
-msgstr ""
-
-#: siglist.c:198
-msgid "programming error"
-msgstr ""
-
-#: siglist.c:202
-msgid "HFT monitor mode granted"
-msgstr ""
-
-#: siglist.c:206
-msgid "HFT monitor mode retracted"
-msgstr ""
-
-#: siglist.c:210
-msgid "HFT sound sequence has completed"
-msgstr ""
-
-#: siglist.c:214
-msgid "Information request"
-msgstr ""
-
-#: siglist.c:222
-msgid "Unknown Signal #"
-msgstr ""
-
-#: siglist.c:224
-#, c-format
-msgid "Unknown Signal #%d"
-msgstr ""
-
-#: subst.c:1181 subst.c:1302
-#, c-format
-msgid "bad substitution: no closing `%s' in %s"
-msgstr ""
-
-#: subst.c:2458
-#, c-format
-msgid "%s: cannot assign list to array member"
-msgstr ""
-
-#: subst.c:4456 subst.c:4472
-msgid "cannot make pipe for process substitution"
-msgstr ""
-
-#: subst.c:4504
-msgid "cannot make child for process substitution"
-msgstr ""
-
-#: subst.c:4549
-#, c-format
-msgid "cannot open named pipe %s for reading"
-msgstr ""
-
-#: subst.c:4551
-#, c-format
-msgid "cannot open named pipe %s for writing"
-msgstr ""
-
-#: subst.c:4569
-#, c-format
-msgid "cannot duplicate named pipe %s as fd %d"
-msgstr ""
-
-#: subst.c:4765
-msgid "cannot make pipe for command substitution"
-msgstr ""
-
-#: subst.c:4799
-msgid "cannot make child for command substitution"
-msgstr ""
-
-#: subst.c:4816
-msgid "command_substitute: cannot duplicate pipe as fd 1"
-msgstr ""
-
-#: subst.c:5318
-#, c-format
-msgid "%s: parameter null or not set"
-msgstr ""
-
-#: subst.c:5608
-#, c-format
-msgid "%s: substring expression < 0"
-msgstr ""
-
-#: subst.c:6660
-#, c-format
-msgid "%s: bad substitution"
-msgstr ""
-
-#: subst.c:6740
-#, c-format
-msgid "$%s: cannot assign in this way"
-msgstr ""
-
-#: subst.c:7499
-#, c-format
-msgid "bad substitution: no closing \"`\" in %s"
-msgstr ""
-
-#: subst.c:8375
-#, c-format
-msgid "no match: %s"
-msgstr ""
-
-#: test.c:145
-msgid "argument expected"
-msgstr ""
-
-#: test.c:154
-#, c-format
-msgid "%s: integer expression expected"
-msgstr ""
-
-#: test.c:262
-msgid "`)' expected"
-msgstr ""
-
-#: test.c:264
-#, c-format
-msgid "`)' expected, found %s"
-msgstr ""
-
-#: test.c:279 test.c:688 test.c:691
-#, c-format
-msgid "%s: unary operator expected"
-msgstr ""
-
-#: test.c:444 test.c:731
-#, c-format
-msgid "%s: binary operator expected"
-msgstr ""
-
-#: test.c:806
-msgid "missing `]'"
-msgstr ""
-
-#: trap.c:201
-msgid "invalid signal number"
-msgstr ""
-
-#: trap.c:324
-#, c-format
-msgid "run_pending_traps: bad value in trap_list[%d]: %p"
-msgstr ""
-
-#: trap.c:328
-#, c-format
-msgid ""
-"run_pending_traps: signal handler is SIG_DFL, resending %d (%s) to myself"
-msgstr ""
-
-#: trap.c:372
-#, c-format
-msgid "trap_handler: bad signal %d"
-msgstr ""
-
-#: variables.c:358
-#, c-format
-msgid "error importing function definition for `%s'"
-msgstr ""
-
-#: variables.c:736
-#, c-format
-msgid "shell level (%d) too high, resetting to 1"
-msgstr ""
-
-#: variables.c:1898
-msgid "make_local_variable: no function context at current scope"
-msgstr ""
-
-#: variables.c:3127
-msgid "all_local_variables: no function context at current scope"
-msgstr ""
-
-#: variables.c:3344 variables.c:3353
-#, c-format
-msgid "invalid character %d in exportstr for %s"
-msgstr ""
-
-#: variables.c:3359
-#, c-format
-msgid "no `=' in exportstr for %s"
-msgstr ""
-
-#: variables.c:3794
-msgid "pop_var_context: head of shell_variables not a function context"
-msgstr ""
-
-#: variables.c:3807
-msgid "pop_var_context: no global_variables context"
-msgstr ""
-
-#: variables.c:3881
-msgid "pop_scope: head of shell_variables not a temporary environment scope"
-msgstr ""
-
-#: version.c:46
-msgid "Copyright (C) 2009 Free Software Foundation, Inc."
-msgstr ""
-
-#: version.c:47
-msgid ""
-"License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl."
-"html>\n"
-msgstr ""
-
-#: version.c:86
-#, c-format
-msgid "GNU bash, version %s (%s)\n"
-msgstr ""
-
-#: version.c:91
-#, c-format
-msgid "This is free software; you are free to change and redistribute it.\n"
-msgstr ""
-
-#: version.c:92
-#, c-format
-msgid "There is NO WARRANTY, to the extent permitted by law.\n"
-msgstr ""
-
-#: xmalloc.c:92
-#, c-format
-msgid "xmalloc: cannot allocate %lu bytes (%lu bytes allocated)"
-msgstr ""
-
-#: xmalloc.c:94
-#, c-format
-msgid "xmalloc: cannot allocate %lu bytes"
-msgstr ""
-
-#: xmalloc.c:114
-#, c-format
-msgid "xrealloc: cannot reallocate %lu bytes (%lu bytes allocated)"
-msgstr ""
-
-#: xmalloc.c:116
-#, c-format
-msgid "xrealloc: cannot allocate %lu bytes"
-msgstr ""
-
-#: xmalloc.c:150
-#, c-format
-msgid "xmalloc: %s:%d: cannot allocate %lu bytes (%lu bytes allocated)"
-msgstr ""
-
-#: xmalloc.c:152
-#, c-format
-msgid "xmalloc: %s:%d: cannot allocate %lu bytes"
-msgstr ""
-
-#: xmalloc.c:174
-#, c-format
-msgid "xrealloc: %s:%d: cannot reallocate %lu bytes (%lu bytes allocated)"
-msgstr ""
-
-#: xmalloc.c:176
-#, c-format
-msgid "xrealloc: %s:%d: cannot allocate %lu bytes"
-msgstr ""
-
-#: builtins.c:43
-msgid "alias [-p] [name[=value] ... ]"
-msgstr ""
-
-#: builtins.c:47
-msgid "unalias [-a] name [name ...]"
-msgstr ""
-
-#: builtins.c:51
-msgid ""
-"bind [-lpvsPVS] [-m keymap] [-f filename] [-q name] [-u name] [-r keyseq] [-"
-"x keyseq:shell-command] [keyseq:readline-function or readline-command]"
-msgstr ""
-
-#: builtins.c:54
-msgid "break [n]"
-msgstr ""
-
-#: builtins.c:56
-msgid "continue [n]"
-msgstr ""
-
-#: builtins.c:58
-msgid "builtin [shell-builtin [arg ...]]"
-msgstr ""
-
-#: builtins.c:61
-msgid "caller [expr]"
-msgstr ""
-
-#: builtins.c:64
-msgid "cd [-L|-P] [dir]"
-msgstr ""
-
-#: builtins.c:66
-msgid "pwd [-LP]"
-msgstr ""
-
-#: builtins.c:68
-msgid ":"
-msgstr ""
-
-#: builtins.c:70
-msgid "true"
-msgstr ""
-
-#: builtins.c:72
-msgid "false"
-msgstr ""
-
-#: builtins.c:74
-msgid "command [-pVv] command [arg ...]"
-msgstr ""
-
-#: builtins.c:76
-msgid "declare [-aAfFilrtux] [-p] [name[=value] ...]"
-msgstr ""
-
-#: builtins.c:78
-msgid "typeset [-aAfFilrtux] [-p] name[=value] ..."
-msgstr ""
-
-#: builtins.c:80
-msgid "local [option] name[=value] ..."
-msgstr ""
-
-#: builtins.c:83
-msgid "echo [-neE] [arg ...]"
-msgstr ""
-
-#: builtins.c:87
-msgid "echo [-n] [arg ...]"
-msgstr ""
-
-#: builtins.c:90
-msgid "enable [-a] [-dnps] [-f filename] [name ...]"
-msgstr ""
-
-#: builtins.c:92
-msgid "eval [arg ...]"
-msgstr ""
-
-#: builtins.c:94
-msgid "getopts optstring name [arg]"
-msgstr ""
-
-#: builtins.c:96
-msgid "exec [-cl] [-a name] [command [arguments ...]] [redirection ...]"
-msgstr ""
-
-#: builtins.c:98
-msgid "exit [n]"
-msgstr ""
-
-#: builtins.c:100
-msgid "logout [n]"
-msgstr ""
-
-#: builtins.c:103
-msgid "fc [-e ename] [-lnr] [first] [last] or fc -s [pat=rep] [command]"
-msgstr ""
-
-#: builtins.c:107
-msgid "fg [job_spec]"
-msgstr ""
-
-#: builtins.c:111
-msgid "bg [job_spec ...]"
-msgstr ""
-
-#: builtins.c:114
-msgid "hash [-lr] [-p pathname] [-dt] [name ...]"
-msgstr ""
-
-#: builtins.c:117
-msgid "help [-ds] [pattern ...]"
-msgstr ""
-
-#: builtins.c:121
-msgid ""
-"history [-c] [-d offset] [n] or history -anrw [filename] or history -ps arg "
-"[arg...]"
-msgstr ""
-
-#: builtins.c:125
-msgid "jobs [-lnprs] [jobspec ...] or jobs -x command [args]"
-msgstr ""
-
-#: builtins.c:129
-msgid "disown [-h] [-ar] [jobspec ...]"
-msgstr ""
-
-#: builtins.c:132
-msgid ""
-"kill [-s sigspec | -n signum | -sigspec] pid | jobspec ... or kill -l "
-"[sigspec]"
-msgstr ""
-
-#: builtins.c:134
-msgid "let arg [arg ...]"
-msgstr ""
-
-#: builtins.c:136
-msgid ""
-"read [-ers] [-a array] [-d delim] [-i text] [-n nchars] [-p prompt] [-t "
-"timeout] [-u fd] [name ...]"
-msgstr ""
-
-#: builtins.c:138
-msgid "return [n]"
-msgstr ""
-
-#: builtins.c:140
-msgid "set [--abefhkmnptuvxBCHP] [-o option-name] [arg ...]"
-msgstr ""
-
-#: builtins.c:142
-msgid "unset [-f] [-v] [name ...]"
-msgstr ""
-
-#: builtins.c:144
-msgid "export [-fn] [name[=value] ...] or export -p"
-msgstr ""
-
-#: builtins.c:146
-msgid "readonly [-af] [name[=value] ...] or readonly -p"
-msgstr ""
-
-#: builtins.c:148
-msgid "shift [n]"
-msgstr ""
-
-#: builtins.c:150
-msgid "source filename [arguments]"
-msgstr ""
-
-#: builtins.c:152
-msgid ". filename [arguments]"
-msgstr ""
-
-#: builtins.c:155
-msgid "suspend [-f]"
-msgstr ""
-
-#: builtins.c:158
-msgid "test [expr]"
-msgstr ""
-
-#: builtins.c:160
-msgid "[ arg... ]"
-msgstr ""
-
-#: builtins.c:162
-msgid "times"
-msgstr ""
-
-#: builtins.c:164
-msgid "trap [-lp] [[arg] signal_spec ...]"
-msgstr ""
-
-#: builtins.c:166
-msgid "type [-afptP] name [name ...]"
-msgstr ""
-
-#: builtins.c:169
-msgid "ulimit [-SHacdefilmnpqrstuvx] [limit]"
-msgstr ""
-
-#: builtins.c:172
-msgid "umask [-p] [-S] [mode]"
-msgstr ""
-
-#: builtins.c:175
-msgid "wait [id]"
-msgstr ""
-
-#: builtins.c:179
-msgid "wait [pid]"
-msgstr ""
-
-#: builtins.c:182
-msgid "for NAME [in WORDS ... ] ; do COMMANDS; done"
-msgstr ""
-
-#: builtins.c:184
-msgid "for (( exp1; exp2; exp3 )); do COMMANDS; done"
-msgstr ""
-
-#: builtins.c:186
-msgid "select NAME [in WORDS ... ;] do COMMANDS; done"
-msgstr ""
-
-#: builtins.c:188
-msgid "time [-p] pipeline"
-msgstr ""
-
-#: builtins.c:190
-msgid "case WORD in [PATTERN [| PATTERN]...) COMMANDS ;;]... esac"
-msgstr ""
-
-#: builtins.c:192
-msgid ""
-"if COMMANDS; then COMMANDS; [ elif COMMANDS; then COMMANDS; ]... [ else "
-"COMMANDS; ] fi"
-msgstr ""
-
-#: builtins.c:194
-msgid "while COMMANDS; do COMMANDS; done"
-msgstr ""
-
-#: builtins.c:196
-msgid "until COMMANDS; do COMMANDS; done"
-msgstr ""
-
-#: builtins.c:198
-msgid "coproc [NAME] command [redirections]"
-msgstr ""
-
-#: builtins.c:200
-msgid "function name { COMMANDS ; } or name () { COMMANDS ; }"
-msgstr ""
-
-#: builtins.c:202
-msgid "{ COMMANDS ; }"
-msgstr ""
-
-#: builtins.c:204
-msgid "job_spec [&]"
-msgstr ""
-
-#: builtins.c:206
-msgid "(( expression ))"
-msgstr ""
-
-#: builtins.c:208
-msgid "[[ expression ]]"
-msgstr ""
-
-#: builtins.c:210
-msgid "variables - Names and meanings of some shell variables"
-msgstr ""
-
-#: builtins.c:213
-msgid "pushd [-n] [+N | -N | dir]"
-msgstr ""
-
-#: builtins.c:217
-msgid "popd [-n] [+N | -N]"
-msgstr ""
-
-#: builtins.c:221
-msgid "dirs [-clpv] [+N] [-N]"
-msgstr ""
-
-#: builtins.c:224
-msgid "shopt [-pqsu] [-o] [optname ...]"
-msgstr ""
-
-#: builtins.c:226
-msgid "printf [-v var] format [arguments]"
-msgstr ""
-
-#: builtins.c:229
-msgid ""
-"complete [-abcdefgjksuv] [-pr] [-o option] [-A action] [-G globpat] [-W "
-"wordlist]  [-F function] [-C command] [-X filterpat] [-P prefix] [-S suffix] "
-"[name ...]"
-msgstr ""
-
-#: builtins.c:233
-msgid ""
-"compgen [-abcdefgjksuv] [-o option]  [-A action] [-G globpat] [-W wordlist]  "
-"[-F function] [-C command] [-X filterpat] [-P prefix] [-S suffix] [word]"
-msgstr ""
-
-#: builtins.c:237
-msgid "compopt [-o|+o option] [name ...]"
-msgstr ""
-
-#: builtins.c:240
-msgid ""
-"mapfile [-n count] [-O origin] [-s count] [-t] [-u fd] [-C callback] [-c "
-"quantum] [array]"
-msgstr ""
-
-#: builtins.c:242
-msgid ""
-"readarray [-n count] [-O origin] [-s count] [-t] [-u fd] [-C callback] [-c "
-"quantum] [array]"
-msgstr ""
-
-#: builtins.c:254
-msgid ""
-"Define or display aliases.\n"
-"    \n"
-"    Without arguments, `alias' prints the list of aliases in the reusable\n"
-"    form `alias NAME=VALUE' on standard output.\n"
-"    \n"
-"    Otherwise, an alias is defined for each NAME whose VALUE is given.\n"
-"    A trailing space in VALUE causes the next word to be checked for\n"
-"    alias substitution when the alias is expanded.\n"
-"    \n"
-"    Options:\n"
-"      -p\tPrint all defined aliases in a reusable format\n"
-"    \n"
-"    Exit Status:\n"
-"    alias returns true unless a NAME is supplied for which no alias has "
-"been\n"
-"    defined."
-msgstr ""
-
-#: builtins.c:276
-msgid ""
-"Remove each NAME from the list of defined aliases.\n"
-"    \n"
-"    Options:\n"
-"      -a\tremove all alias definitions.\n"
-"    \n"
-"    Return success unless a NAME is not an existing alias."
-msgstr ""
-
-#: builtins.c:289
-msgid ""
-"Set Readline key bindings and variables.\n"
-"    \n"
-"    Bind a key sequence to a Readline function or a macro, or set a\n"
-"    Readline variable.  The non-option argument syntax is equivalent to\n"
-"    that found in ~/.inputrc, but must be passed as a single argument:\n"
-"    e.g., bind '\"\\C-x\\C-r\": re-read-init-file'.\n"
-"    \n"
-"    Options:\n"
-"      -m  keymap         Use KEYMAP as the keymap for the duration of this\n"
-"                         command.  Acceptable keymap names are emacs,\n"
-"                         emacs-standard, emacs-meta, emacs-ctlx, vi, vi-"
-"move,\n"
-"                         vi-command, and vi-insert.\n"
-"      -l                 List names of functions.\n"
-"      -P                 List function names and bindings.\n"
-"      -p                 List functions and bindings in a form that can be\n"
-"                         reused as input.\n"
-"      -S                 List key sequences that invoke macros and their "
-"values\n"
-"      -s                 List key sequences that invoke macros and their "
-"values\n"
-"                         in a form that can be reused as input.\n"
-"      -V                 List variable names and values\n"
-"      -v                 List variable names and values in a form that can\n"
-"                         be reused as input.\n"
-"      -q  function-name  Query about which keys invoke the named function.\n"
-"      -u  function-name  Unbind all keys which are bound to the named "
-"function.\n"
-"      -r  keyseq         Remove the binding for KEYSEQ.\n"
-"      -f  filename       Read key bindings from FILENAME.\n"
-"      -x  keyseq:shell-command\tCause SHELL-COMMAND to be executed when\n"
-"    \t\t\t\tKEYSEQ is entered.\n"
-"    \n"
-"    Exit Status:\n"
-"    bind returns 0 unless an unrecognized option is given or an error occurs."
-msgstr ""
-
-#: builtins.c:326
-msgid ""
-"Exit for, while, or until loops.\n"
-"    \n"
-"    Exit a FOR, WHILE or UNTIL loop.  If N is specified, break N enclosing\n"
-"    loops.\n"
-"    \n"
-"    Exit Status:\n"
-"    The exit status is 0 unless N is not greater than or equal to 1."
-msgstr ""
-
-#: builtins.c:338
-msgid ""
-"Resume for, while, or until loops.\n"
-"    \n"
-"    Resumes the next iteration of the enclosing FOR, WHILE or UNTIL loop.\n"
-"    If N is specified, resumes the Nth enclosing loop.\n"
-"    \n"
-"    Exit Status:\n"
-"    The exit status is 0 unless N is not greater than or equal to 1."
-msgstr ""
-
-#: builtins.c:350
-msgid ""
-"Execute shell builtins.\n"
-"    \n"
-"    Execute SHELL-BUILTIN with arguments ARGs without performing command\n"
-"    lookup.  This is useful when you wish to reimplement a shell builtin\n"
-"    as a shell function, but need to execute the builtin within the "
-"function.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns the exit status of SHELL-BUILTIN, or false if SHELL-BUILTIN is\n"
-"    not a shell builtin.."
-msgstr ""
-
-#: builtins.c:365
-msgid ""
-"Return the context of the current subroutine call.\n"
-"    \n"
-"    Without EXPR, returns \"$line $filename\".  With EXPR, returns\n"
-"    \"$line $subroutine $filename\"; this extra information can be used to\n"
-"    provide a stack trace.\n"
-"    \n"
-"    The value of EXPR indicates how many call frames to go back before the\n"
-"    current one; the top frame is frame 0.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns 0 unless the shell is not executing a shell function or EXPR\n"
-"    is invalid."
-msgstr ""
-
-#: builtins.c:383
-msgid ""
-"Change the shell working directory.\n"
-"    \n"
-"    Change the current directory to DIR.  The default DIR is the value of "
-"the\n"
-"    HOME shell variable.\n"
-"    \n"
-"    The variable CDPATH defines the search path for the directory "
-"containing\n"
-"    DIR.  Alternative directory names in CDPATH are separated by a colon "
-"(:).\n"
-"    A null directory name is the same as the current directory.  If DIR "
-"begins\n"
-"    with a slash (/), then CDPATH is not used.\n"
-"    \n"
-"    If the directory is not found, and the shell option `cdable_vars' is "
-"set,\n"
-"    the word is assumed to be  a variable name.  If that variable has a "
-"value,\n"
-"    its value is used for DIR.\n"
-"    \n"
-"    Options:\n"
-"        -L\tforce symbolic links to be followed\n"
-"        -P\tuse the physical directory structure without following symbolic\n"
-"    \tlinks\n"
-"    \n"
-"    The default is to follow symbolic links, as if `-L' were specified.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns 0 if the directory is changed; non-zero otherwise."
-msgstr ""
-
-#: builtins.c:411
-msgid ""
-"Print the name of the current working directory.\n"
-"    \n"
-"    Options:\n"
-"      -L\tprint the value of $PWD if it names the current working\n"
-"    \tdirectory\n"
-"      -P\tprint the physical directory, without any symbolic links\n"
-"    \n"
-"    By default, `pwd' behaves as if `-L' were specified.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns 0 unless an invalid option is given or the current directory\n"
-"    cannot be read."
-msgstr ""
-
-#: builtins.c:428
-msgid ""
-"Null command.\n"
-"    \n"
-"    No effect; the command does nothing.\n"
-"    \n"
-"    Exit Status:\n"
-"    Always succeeds."
-msgstr ""
-
-#: builtins.c:439
-msgid ""
-"Return a successful result.\n"
-"    \n"
-"    Exit Status:\n"
-"    Always succeeds."
-msgstr ""
-
-#: builtins.c:448
-msgid ""
-"Return an unsuccessful result.\n"
-"    \n"
-"    Exit Status:\n"
-"    Always fails."
-msgstr ""
-
-#: builtins.c:457
-msgid ""
-"Execute a simple command or display information about commands.\n"
-"    \n"
-"    Runs COMMAND with ARGS suppressing  shell function lookup, or display\n"
-"    information about the specified COMMANDs.  Can be used to invoke "
-"commands\n"
-"    on disk when a function with the same name exists.\n"
-"    \n"
-"    Options:\n"
-"      -p\tuse a default value for PATH that is guaranteed to find all of\n"
-"    \tthe standard utilities\n"
-"      -v\tprint a description of COMMAND similar to the `type' builtin\n"
-"      -V\tprint a more verbose description of each COMMAND\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns exit status of COMMAND, or failure if COMMAND is not found."
-msgstr ""
-
-#: builtins.c:476
-msgid ""
-"Set variable values and attributes.\n"
-"    \n"
-"    Declare variables and give them attributes.  If no NAMEs are given,\n"
-"    display the attributes and values of all variables.\n"
-"    \n"
-"    Options:\n"
-"      -f\trestrict action or display to function names and definitions\n"
-"      -F\trestrict display to function names only (plus line number and\n"
-"    \tsource file when debugging)\n"
-"      -p\tdisplay the attributes and value of each NAME\n"
-"    \n"
-"    Options which set attributes:\n"
-"      -a\tto make NAMEs indexed arrays (if supported)\n"
-"      -A\tto make NAMEs associative arrays (if supported)\n"
-"      -i\tto make NAMEs have the `integer' attribute\n"
-"      -l\tto convert NAMEs to lower case on assignment\n"
-"      -r\tto make NAMEs readonly\n"
-"      -t\tto make NAMEs have the `trace' attribute\n"
-"      -u\tto convert NAMEs to upper case on assignment\n"
-"      -x\tto make NAMEs export\n"
-"    \n"
-"    Using `+' instead of `-' turns off the given attribute.\n"
-"    \n"
-"    Variables with the integer attribute have arithmetic evaluation (see\n"
-"    the `let' command) performed when the variable is assigned a value.\n"
-"    \n"
-"    When used in a function, `declare' makes NAMEs local, as with the "
-"`local'\n"
-"    command.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless an invalid option is supplied or an error occurs."
-msgstr ""
-
-#: builtins.c:512
-msgid ""
-"Set variable values and attributes.\n"
-"    \n"
-"    Obsolete.  See `help declare'."
-msgstr ""
-
-#: builtins.c:520
-msgid ""
-"Define local variables.\n"
-"    \n"
-"    Create a local variable called NAME, and give it VALUE.  OPTION can\n"
-"    be any option accepted by `declare'.\n"
-"    \n"
-"    Local variables can only be used within a function; they are visible\n"
-"    only to the function where they are defined and its children.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless an invalid option is supplied, an error occurs,\n"
-"    or the shell is not executing a function."
-msgstr ""
-
-#: builtins.c:537
-msgid ""
-"Write arguments to the standard output.\n"
-"    \n"
-"    Display the ARGs on the standard output followed by a newline.\n"
-"    \n"
-"    Options:\n"
-"      -n\tdo not append a newline\n"
-"      -e\tenable interpretation of the following backslash escapes\n"
-"      -E\texplicitly suppress interpretation of backslash escapes\n"
-"    \n"
-"    `echo' interprets the following backslash-escaped characters:\n"
-"      \\a\talert (bell)\n"
-"      \\b\tbackspace\n"
-"      \\c\tsuppress further output\n"
-"      \\e\tescape character\n"
-"      \\f\tform feed\n"
-"      \\n\tnew line\n"
-"      \\r\tcarriage return\n"
-"      \\t\thorizontal tab\n"
-"      \\v\tvertical tab\n"
-"      \\\\\tbackslash\n"
-"      \\0nnn\tthe character whose ASCII code is NNN (octal).  NNN can be\n"
-"    \t0 to 3 octal digits\n"
-"      \\xHH\tthe eight-bit character whose value is HH (hexadecimal).  HH\n"
-"    \tcan be one or two hex digits\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless a write error occurs."
-msgstr ""
-
-#: builtins.c:571
-msgid ""
-"Write arguments to the standard output.\n"
-"    \n"
-"    Display the ARGs on the standard output followed by a newline.\n"
-"    \n"
-"    Options:\n"
-"      -n\tdo not append a newline\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless a write error occurs."
-msgstr ""
-
-#: builtins.c:586
-msgid ""
-"Enable and disable shell builtins.\n"
-"    \n"
-"    Enables and disables builtin shell commands.  Disabling allows you to\n"
-"    execute a disk command which has the same name as a shell builtin\n"
-"    without using a full pathname.\n"
-"    \n"
-"    Options:\n"
-"      -a\tprint a list of builtins showing whether or not each is enabled\n"
-"      -n\tdisable each NAME or display a list of disabled builtins\n"
-"      -p\tprint the list of builtins in a reusable format\n"
-"      -s\tprint only the names of Posix `special' builtins\n"
-"    \n"
-"    Options controlling dynamic loading:\n"
-"      -f\tLoad builtin NAME from shared object FILENAME\n"
-"      -d\tRemove a builtin loaded with -f\n"
-"    \n"
-"    Without options, each NAME is enabled.\n"
-"    \n"
-"    To use the `test' found in $PATH instead of the shell builtin\n"
-"    version, type `enable -n test'.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless NAME is not a shell builtin or an error occurs."
-msgstr ""
-
-#: builtins.c:614
-msgid ""
-"Execute arguments as a shell command.\n"
-"    \n"
-"    Combine ARGs into a single string, use the result as input to the "
-"shell,\n"
-"    and execute the resulting commands.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns exit status of command or success if command is null."
-msgstr ""
-
-#: builtins.c:626
-msgid ""
-"Parse option arguments.\n"
-"    \n"
-"    Getopts is used by shell procedures to parse positional parameters\n"
-"    as options.\n"
-"    \n"
-"    OPTSTRING contains the option letters to be recognized; if a letter\n"
-"    is followed by a colon, the option is expected to have an argument,\n"
-"    which should be separated from it by white space.\n"
-"    \n"
-"    Each time it is invoked, getopts will place the next option in the\n"
-"    shell variable $name, initializing name if it does not exist, and\n"
-"    the index of the next argument to be processed into the shell\n"
-"    variable OPTIND.  OPTIND is initialized to 1 each time the shell or\n"
-"    a shell script is invoked.  When an option requires an argument,\n"
-"    getopts places that argument into the shell variable OPTARG.\n"
-"    \n"
-"    getopts reports errors in one of two ways.  If the first character\n"
-"    of OPTSTRING is a colon, getopts uses silent error reporting.  In\n"
-"    this mode, no error messages are printed.  If an invalid option is\n"
-"    seen, getopts places the option character found into OPTARG.  If a\n"
-"    required argument is not found, getopts places a ':' into NAME and\n"
-"    sets OPTARG to the option character found.  If getopts is not in\n"
-"    silent mode, and an invalid option is seen, getopts places '?' into\n"
-"    NAME and unsets OPTARG.  If a required argument is not found, a '?'\n"
-"    is placed in NAME, OPTARG is unset, and a diagnostic message is\n"
-"    printed.\n"
-"    \n"
-"    If the shell variable OPTERR has the value 0, getopts disables the\n"
-"    printing of error messages, even if the first character of\n"
-"    OPTSTRING is not a colon.  OPTERR has the value 1 by default.\n"
-"    \n"
-"    Getopts normally parses the positional parameters ($0 - $9), but if\n"
-"    more arguments are given, they are parsed instead.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success if an option is found; fails if the end of options is\n"
-"    encountered or an error occurs."
-msgstr ""
-
-#: builtins.c:668
-msgid ""
-"Replace the shell with the given command.\n"
-"    \n"
-"    Execute COMMAND, replacing this shell with the specified program.\n"
-"    ARGUMENTS become the arguments to COMMAND.  If COMMAND is not "
-"specified,\n"
-"    any redirections take effect in the current shell.\n"
-"    \n"
-"    Options:\n"
-"      -a name\tpass NAME as the zeroth argument to COMMAND\n"
-"      -c\t\texecute COMMAND with an empty environment\n"
-"      -l\t\tplace a dash in the zeroth argument to COMMAND\n"
-"    \n"
-"    If the command cannot be executed, a non-interactive shell exits, "
-"unless\n"
-"    the shell option `execfail' is set.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless COMMAND is not found or a redirection error "
-"occurs."
-msgstr ""
-
-#: builtins.c:689
-msgid ""
-"Exit the shell.\n"
-"    \n"
-"    Exits the shell with a status of N.  If N is omitted, the exit status\n"
-"    is that of the last command executed."
-msgstr ""
-
-#: builtins.c:698
-msgid ""
-"Exit a login shell.\n"
-"    \n"
-"    Exits a login shell with exit status N.  Returns an error if not "
-"executed\n"
-"    in a login shell."
-msgstr ""
-
-#: builtins.c:708
-msgid ""
-"Display or execute commands from the history list.\n"
-"    \n"
-"    fc is used to list or edit and re-execute commands from the history "
-"list.\n"
-"    FIRST and LAST can be numbers specifying the range, or FIRST can be a\n"
-"    string, which means the most recent command beginning with that\n"
-"    string.\n"
-"    \n"
-"    Options:\n"
-"      -e ENAME\tselect which editor to use.  Default is FCEDIT, then "
-"EDITOR,\n"
-"    \t\tthen vi\n"
-"      -l \tlist lines instead of editing\n"
-"      -n\tomit line numbers when listing\n"
-"      -r\treverse the order of the lines (newest listed first)\n"
-"    \n"
-"    With the `fc -s [pat=rep ...] [command]' format, COMMAND is\n"
-"    re-executed after the substitution OLD=NEW is performed.\n"
-"    \n"
-"    A useful alias to use with this is r='fc -s', so that typing `r cc'\n"
-"    runs the last command beginning with `cc' and typing `r' re-executes\n"
-"    the last command.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success or status of executed command; non-zero if an error "
-"occurs."
-msgstr ""
-
-#: builtins.c:738
-msgid ""
-"Move job to the foreground.\n"
-"    \n"
-"    Place the job identified by JOB_SPEC in the foreground, making it the\n"
-"    current job.  If JOB_SPEC is not present, the shell's notion of the\n"
-"    current job is used.\n"
-"    \n"
-"    Exit Status:\n"
-"    Status of command placed in foreground, or failure if an error occurs."
-msgstr ""
-
-#: builtins.c:753
-msgid ""
-"Move jobs to the background.\n"
-"    \n"
-"    Place the jobs identified by each JOB_SPEC in the background, as if "
-"they\n"
-"    had been started with `&'.  If JOB_SPEC is not present, the shell's "
-"notion\n"
-"    of the current job is used.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless job control is not enabled or an error occurs."
-msgstr ""
-
-#: builtins.c:767
-msgid ""
-"Remember or display program locations.\n"
-"    \n"
-"    Determine and remember the full pathname of each command NAME.  If\n"
-"    no arguments are given, information about remembered commands is "
-"displayed.\n"
-"    \n"
-"    Options:\n"
-"      -d\t\tforget the remembered location of each NAME\n"
-"      -l\t\tdisplay in a format that may be reused as input\n"
-"      -p pathname\tuse PATHNAME is the full pathname of NAME\n"
-"      -r\t\tforget all remembered locations\n"
-"      -t\t\tprint the remembered location of each NAME, preceding\n"
-"    \t\teach location with the corresponding NAME if multiple\n"
-"    \t\tNAMEs are given\n"
-"    Arguments:\n"
-"      NAME\t\tEach NAME is searched for in $PATH and added to the list\n"
-"    \t\tof remembered commands.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless NAME is not found or an invalid option is given."
-msgstr ""
-
-#: builtins.c:792
-msgid ""
-"Display information about builtin commands.\n"
-"    \n"
-"    Displays brief summaries of builtin commands.  If PATTERN is\n"
-"    specified, gives detailed help on all commands matching PATTERN,\n"
-"    otherwise the list of help topics is printed.\n"
-"    \n"
-"    Options:\n"
-"      -d\toutput short description for each topic\n"
-"      -m\tdisplay usage in pseudo-manpage format\n"
-"      -s\toutput only a short usage synopsis for each topic matching\n"
-"    \tPATTERN\n"
-"    \n"
-"    Arguments:\n"
-"      PATTERN\tPattern specifiying a help topic\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless PATTERN is not found or an invalid option is "
-"given."
-msgstr ""
-
-#: builtins.c:816
-msgid ""
-"Display or manipulate the history list.\n"
-"    \n"
-"    Display the history list with line numbers, prefixing each modified\n"
-"    entry with a `*'.  An argument of N lists only the last N entries.\n"
-"    \n"
-"    Options:\n"
-"      -c\tclear the history list by deleting all of the entries\n"
-"      -d offset\tdelete the history entry at offset OFFSET.\n"
-"    \n"
-"      -a\tappend history lines from this session to the history file\n"
-"      -n\tread all history lines not already read from the history file\n"
-"      -r\tread the history file and append the contents to the history\n"
-"    \tlist\n"
-"      -w\twrite the current history to the history file\n"
-"    \tand append them to the history list\n"
-"    \n"
-"      -p\tperform history expansion on each ARG and display the result\n"
-"    \twithout storing it in the history list\n"
-"      -s\tappend the ARGs to the history list as a single entry\n"
-"    \n"
-"    If FILENAME is given, it is used as the history file.  Otherwise,\n"
-"    if $HISTFILE has a value, that is used, else ~/.bash_history.\n"
-"    \n"
-"    If the $HISTTIMEFORMAT variable is set and not null, its value is used\n"
-"    as a format string for strftime(3) to print the time stamp associated\n"
-"    with each displayed history entry.  No time stamps are printed "
-"otherwise.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless an invalid option is given or an error occurs."
-msgstr ""
-
-#: builtins.c:852
-msgid ""
-"Display status of jobs.\n"
-"    \n"
-"    Lists the active jobs.  JOBSPEC restricts output to that job.\n"
-"    Without options, the status of all active jobs is displayed.\n"
-"    \n"
-"    Options:\n"
-"      -l\tlists process IDs in addition to the normal information\n"
-"      -n\tlist only processes that have changed status since the last\n"
-"    \tnotification\n"
-"      -p\tlists process IDs only\n"
-"      -r\trestrict output to running jobs\n"
-"      -s\trestrict output to stopped jobs\n"
-"    \n"
-"    If -x is supplied, COMMAND is run after all job specifications that\n"
-"    appear in ARGS have been replaced with the process ID of that job's\n"
-"    process group leader.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless an invalid option is given or an error occurs.\n"
-"    If -x is used, returns the exit status of COMMAND."
-msgstr ""
-
-#: builtins.c:879
-msgid ""
-"Remove jobs from current shell.\n"
-"    \n"
-"    Removes each JOBSPEC argument from the table of active jobs.  Without\n"
-"    any JOBSPECs, the shell uses its notion of the current job.\n"
-"    \n"
-"    Options:\n"
-"      -a\tremove all jobs if JOBSPEC is not supplied\n"
-"      -h\tmark each JOBSPEC so that SIGHUP is not sent to the job if the\n"
-"    \tshell receives a SIGHUP\n"
-"      -r\tremove only running jobs\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless an invalid option or JOBSPEC is given."
-msgstr ""
-
-#: builtins.c:898
-msgid ""
-"Send a signal to a job.\n"
-"    \n"
-"    Send the processes identified by PID or JOBSPEC the signal named by\n"
-"    SIGSPEC or SIGNUM.  If neither SIGSPEC nor SIGNUM is present, then\n"
-"    SIGTERM is assumed.\n"
-"    \n"
-"    Options:\n"
-"      -s sig\tSIG is a signal name\n"
-"      -n sig\tSIG is a signal number\n"
-"      -l\tlist the signal names; if arguments follow `-l' they are\n"
-"    \tassumed to be signal numbers for which names should be listed\n"
-"    \n"
-"    Kill is a shell builtin for two reasons: it allows job IDs to be used\n"
-"    instead of process IDs, and allows processes to be killed if the limit\n"
-"    on processes that you can create is reached.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless an invalid option is given or an error occurs."
-msgstr ""
-
-#: builtins.c:921
-msgid ""
-"Evaluate arithmetic expressions.\n"
-"    \n"
-"    Evaluate each ARG as an arithmetic expression.  Evaluation is done in\n"
-"    fixed-width integers with no check for overflow, though division by 0\n"
-"    is trapped and flagged as an error.  The following list of operators is\n"
-"    grouped into levels of equal-precedence operators.  The levels are "
-"listed\n"
-"    in order of decreasing precedence.\n"
-"    \n"
-"    \tid++, id--\tvariable post-increment, post-decrement\n"
-"    \t++id, --id\tvariable pre-increment, pre-decrement\n"
-"    \t-, +\t\tunary minus, plus\n"
-"    \t!, ~\t\tlogical and bitwise negation\n"
-"    \t**\t\texponentiation\n"
-"    \t*, /, %\t\tmultiplication, division, remainder\n"
-"    \t+, -\t\taddition, subtraction\n"
-"    \t<<, >>\t\tleft and right bitwise shifts\n"
-"    \t<=, >=, <, >\tcomparison\n"
-"    \t==, !=\t\tequality, inequality\n"
-"    \t&\t\tbitwise AND\n"
-"    \t^\t\tbitwise XOR\n"
-"    \t|\t\tbitwise OR\n"
-"    \t&&\t\tlogical AND\n"
-"    \t||\t\tlogical OR\n"
-"    \texpr ? expr : expr\n"
-"    \t\t\tconditional operator\n"
-"    \t=, *=, /=, %=,\n"
-"    \t+=, -=, <<=, >>=,\n"
-"    \t&=, ^=, |=\tassignment\n"
-"    \n"
-"    Shell variables are allowed as operands.  The name of the variable\n"
-"    is replaced by its value (coerced to a fixed-width integer) within\n"
-"    an expression.  The variable need not have its integer attribute\n"
-"    turned on to be used in an expression.\n"
-"    \n"
-"    Operators are evaluated in order of precedence.  Sub-expressions in\n"
-"    parentheses are evaluated first and may override the precedence\n"
-"    rules above.\n"
-"    \n"
-"    Exit Status:\n"
-"    If the last ARG evaluates to 0, let returns 1; let returns 0 otherwise.."
-msgstr ""
-
-#: builtins.c:966
-msgid ""
-"Read a line from the standard input and split it into fields.\n"
-"    \n"
-"    Reads a single line from the standard input, or from file descriptor FD\n"
-"    if the -u option is supplied.  The line is split into fields as with "
-"word\n"
-"    splitting, and the first word is assigned to the first NAME, the second\n"
-"    word to the second NAME, and so on, with any leftover words assigned to\n"
-"    the last NAME.  Only the characters found in $IFS are recognized as "
-"word\n"
-"    delimiters.\n"
-"    \n"
-"    If no NAMEs are supplied, the line read is stored in the REPLY "
-"variable.\n"
-"    \n"
-"    Options:\n"
-"      -a array\tassign the words read to sequential indices of the array\n"
-"    \t\tvariable ARRAY, starting at zero\n"
-"      -d delim\tcontinue until the first character of DELIM is read, rather\n"
-"    \t\tthan newline\n"
-"      -e\t\tuse Readline to obtain the line in an interactive shell\n"
-"      -i text\tUse TEXT as the initial text for Readline\n"
-"      -n nchars\treturn after reading NCHARS characters rather than waiting\n"
-"    \t\tfor a newline\n"
-"      -p prompt\toutput the string PROMPT without a trailing newline before\n"
-"    \t\tattempting to read\n"
-"      -r\t\tdo not allow backslashes to escape any characters\n"
-"      -s\t\tdo not echo input coming from a terminal\n"
-"      -t timeout\ttime out and return failure if a complete line of input "
-"is\n"
-"    \t\tnot read withint TIMEOUT seconds.  The value of the TMOUT\n"
-"    \t\tvariable is the default timeout.  TIMEOUT may be a\n"
-"    \t\tfractional number.  If TIMEOUT is 0, read returns success only\n"
-"    \t\tif input is available on the specified file descriptor.  The\n"
-"    \t\texit status is greater than 128 if the timeout is exceeded\n"
-"      -u fd\t\tread from file descriptor FD instead of the standard input\n"
-"    \n"
-"    Exit Status:\n"
-"    The return code is zero, unless end-of-file is encountered, read times "
-"out,\n"
-"    or an invalid file descriptor is supplied as the argument to -u."
-msgstr ""
-
-#: builtins.c:1006
-msgid ""
-"Return from a shell function.\n"
-"    \n"
-"    Causes a function or sourced script to exit with the return value\n"
-"    specified by N.  If N is omitted, the return status is that of the\n"
-"    last command executed within the function or script.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns N, or failure if the shell is not executing a function or script."
-msgstr ""
-
-#: builtins.c:1019
-msgid ""
-"Set or unset values of shell options and positional parameters.\n"
-"    \n"
-"    Change the value of shell attributes and positional parameters, or\n"
-"    display the names and values of shell variables.\n"
-"    \n"
-"    Options:\n"
-"      -a  Mark variables which are modified or created for export.\n"
-"      -b  Notify of job termination immediately.\n"
-"      -e  Exit immediately if a command exits with a non-zero status.\n"
-"      -f  Disable file name generation (globbing).\n"
-"      -h  Remember the location of commands as they are looked up.\n"
-"      -k  All assignment arguments are placed in the environment for a\n"
-"          command, not just those that precede the command name.\n"
-"      -m  Job control is enabled.\n"
-"      -n  Read commands but do not execute them.\n"
-"      -o option-name\n"
-"          Set the variable corresponding to option-name:\n"
-"              allexport    same as -a\n"
-"              braceexpand  same as -B\n"
-"              emacs        use an emacs-style line editing interface\n"
-"              errexit      same as -e\n"
-"              errtrace     same as -E\n"
-"              functrace    same as -T\n"
-"              hashall      same as -h\n"
-"              histexpand   same as -H\n"
-"              history      enable command history\n"
-"              ignoreeof    the shell will not exit upon reading EOF\n"
-"              interactive-comments\n"
-"                           allow comments to appear in interactive commands\n"
-"              keyword      same as -k\n"
-"              monitor      same as -m\n"
-"              noclobber    same as -C\n"
-"              noexec       same as -n\n"
-"              noglob       same as -f\n"
-"              nolog        currently accepted but ignored\n"
-"              notify       same as -b\n"
-"              nounset      same as -u\n"
-"              onecmd       same as -t\n"
-"              physical     same as -P\n"
-"              pipefail     the return value of a pipeline is the status of\n"
-"                           the last command to exit with a non-zero status,\n"
-"                           or zero if no command exited with a non-zero "
-"status\n"
-"              posix        change the behavior of bash where the default\n"
-"                           operation differs from the Posix standard to\n"
-"                           match the standard\n"
-"              privileged   same as -p\n"
-"              verbose      same as -v\n"
-"              vi           use a vi-style line editing interface\n"
-"              xtrace       same as -x\n"
-"      -p  Turned on whenever the real and effective user ids do not match.\n"
-"          Disables processing of the $ENV file and importing of shell\n"
-"          functions.  Turning this option off causes the effective uid and\n"
-"          gid to be set to the real uid and gid.\n"
-"      -t  Exit after reading and executing one command.\n"
-"      -u  Treat unset variables as an error when substituting.\n"
-"      -v  Print shell input lines as they are read.\n"
-"      -x  Print commands and their arguments as they are executed.\n"
-"      -B  the shell will perform brace expansion\n"
-"      -C  If set, disallow existing regular files to be overwritten\n"
-"          by redirection of output.\n"
-"      -E  If set, the ERR trap is inherited by shell functions.\n"
-"      -H  Enable ! style history substitution.  This flag is on\n"
-"          by default when the shell is interactive.\n"
-"      -P  If set, do not follow symbolic links when executing commands\n"
-"          such as cd which change the current directory.\n"
-"      -T  If set, the DEBUG trap is inherited by shell functions.\n"
-"      -   Assign any remaining arguments to the positional parameters.\n"
-"          The -x and -v options are turned off.\n"
-"    \n"
-"    Using + rather than - causes these flags to be turned off.  The\n"
-"    flags can also be used upon invocation of the shell.  The current\n"
-"    set of flags may be found in $-.  The remaining n ARGs are positional\n"
-"    parameters and are assigned, in order, to $1, $2, .. $n.  If no\n"
-"    ARGs are given, all shell variables are printed.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless an invalid option is given."
-msgstr ""
-
-#: builtins.c:1101
-msgid ""
-"Unset values and attributes of shell variables and functions.\n"
-"    \n"
-"    For each NAME, remove the corresponding variable or function.\n"
-"    \n"
-"    Options:\n"
-"      -f\ttreat each NAME as a shell function\n"
-"      -v\ttreat each NAME as a shell variable\n"
-"    \n"
-"    Without options, unset first tries to unset a variable, and if that "
-"fails,\n"
-"    tries to unset a function.\n"
-"    \n"
-"    Some variables cannot be unset; also see `readonly'.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless an invalid option is given or a NAME is read-only."
-msgstr ""
-
-#: builtins.c:1121
-msgid ""
-"Set export attribute for shell variables.\n"
-"    \n"
-"    Marks each NAME for automatic export to the environment of subsequently\n"
-"    executed commands.  If VALUE is supplied, assign VALUE before "
-"exporting.\n"
-"    \n"
-"    Options:\n"
-"      -f\trefer to shell functions\n"
-"      -n\tremove the export property from each NAME\n"
-"      -p\tdisplay a list of all exported variables and functions\n"
-"    \n"
-"    An argument of `--' disables further option processing.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless an invalid option is given or NAME is invalid."
-msgstr ""
-
-#: builtins.c:1140
-msgid ""
-"Mark shell variables as unchangeable.\n"
-"    \n"
-"    Mark each NAME as read-only; the values of these NAMEs may not be\n"
-"    changed by subsequent assignment.  If VALUE is supplied, assign VALUE\n"
-"    before marking as read-only.\n"
-"    \n"
-"    Options:\n"
-"      -a\trefer to indexed array variables\n"
-"      -A\trefer to associative array variables\n"
-"      -f\trefer to shell functions\n"
-"      -p\tdisplay a list of all readonly variables and functions\n"
-"    \n"
-"    An argument of `--' disables further option processing.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless an invalid option is given or NAME is invalid."
-msgstr ""
-
-#: builtins.c:1161
-msgid ""
-"Shift positional parameters.\n"
-"    \n"
-"    Rename the positional parameters $N+1,$N+2 ... to $1,$2 ...  If N is\n"
-"    not given, it is assumed to be 1.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless N is negative or greater than $#."
-msgstr ""
-
-#: builtins.c:1173 builtins.c:1188
-msgid ""
-"Execute commands from a file in the current shell.\n"
-"    \n"
-"    Read and execute commands from FILENAME in the current shell.  The\n"
-"    entries in $PATH are used to find the directory containing FILENAME.\n"
-"    If any ARGUMENTS are supplied, they become the positional parameters\n"
-"    when FILENAME is executed.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns the status of the last command executed in FILENAME; fails if\n"
-"    FILENAME cannot be read."
-msgstr ""
-
-#: builtins.c:1204
-msgid ""
-"Suspend shell execution.\n"
-"    \n"
-"    Suspend the execution of this shell until it receives a SIGCONT signal.\n"
-"    Unless forced, login shells cannot be suspended.\n"
-"    \n"
-"    Options:\n"
-"      -f\tforce the suspend, even if the shell is a login shell\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless job control is not enabled or an error occurs."
-msgstr ""
-
-#: builtins.c:1220
-msgid ""
-"Evaluate conditional expression.\n"
-"    \n"
-"    Exits with a status of 0 (true) or 1 (false) depending on\n"
-"    the evaluation of EXPR.  Expressions may be unary or binary.  Unary\n"
-"    expressions are often used to examine the status of a file.  There\n"
-"    are string operators as well, and numeric comparison operators.\n"
-"    \n"
-"    File operators:\n"
-"    \n"
-"      -a FILE        True if file exists.\n"
-"      -b FILE        True if file is block special.\n"
-"      -c FILE        True if file is character special.\n"
-"      -d FILE        True if file is a directory.\n"
-"      -e FILE        True if file exists.\n"
-"      -f FILE        True if file exists and is a regular file.\n"
-"      -g FILE        True if file is set-group-id.\n"
-"      -h FILE        True if file is a symbolic link.\n"
-"      -L FILE        True if file is a symbolic link.\n"
-"      -k FILE        True if file has its `sticky' bit set.\n"
-"      -p FILE        True if file is a named pipe.\n"
-"      -r FILE        True if file is readable by you.\n"
-"      -s FILE        True if file exists and is not empty.\n"
-"      -S FILE        True if file is a socket.\n"
-"      -t FD          True if FD is opened on a terminal.\n"
-"      -u FILE        True if the file is set-user-id.\n"
-"      -w FILE        True if the file is writable by you.\n"
-"      -x FILE        True if the file is executable by you.\n"
-"      -O FILE        True if the file is effectively owned by you.\n"
-"      -G FILE        True if the file is effectively owned by your group.\n"
-"      -N FILE        True if the file has been modified since it was last "
-"read.\n"
-"    \n"
-"      FILE1 -nt FILE2  True if file1 is newer than file2 (according to\n"
-"                       modification date).\n"
-"    \n"
-"      FILE1 -ot FILE2  True if file1 is older than file2.\n"
-"    \n"
-"      FILE1 -ef FILE2  True if file1 is a hard link to file2.\n"
-"    \n"
-"    String operators:\n"
-"    \n"
-"      -z STRING      True if string is empty.\n"
-"    \n"
-"      -n STRING\n"
-"         STRING      True if string is not empty.\n"
-"    \n"
-"      STRING1 = STRING2\n"
-"                     True if the strings are equal.\n"
-"      STRING1 != STRING2\n"
-"                     True if the strings are not equal.\n"
-"      STRING1 < STRING2\n"
-"                     True if STRING1 sorts before STRING2 "
-"lexicographically.\n"
-"      STRING1 > STRING2\n"
-"                     True if STRING1 sorts after STRING2 lexicographically.\n"
-"    \n"
-"    Other operators:\n"
-"    \n"
-"      -o OPTION      True if the shell option OPTION is enabled.\n"
-"      ! EXPR         True if expr is false.\n"
-"      EXPR1 -a EXPR2 True if both expr1 AND expr2 are true.\n"
-"      EXPR1 -o EXPR2 True if either expr1 OR expr2 is true.\n"
-"    \n"
-"      arg1 OP arg2   Arithmetic tests.  OP is one of -eq, -ne,\n"
-"                     -lt, -le, -gt, or -ge.\n"
-"    \n"
-"    Arithmetic binary operators return true if ARG1 is equal, not-equal,\n"
-"    less-than, less-than-or-equal, greater-than, or greater-than-or-equal\n"
-"    than ARG2.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success if EXPR evaluates to true; fails if EXPR evaluates to\n"
-"    false or an invalid argument is given."
-msgstr ""
-
-#: builtins.c:1296
-msgid ""
-"Evaluate conditional expression.\n"
-"    \n"
-"    This is a synonym for the \"test\" builtin, but the last argument must\n"
-"    be a literal `]', to match the opening `['."
-msgstr ""
-
-#: builtins.c:1305
-msgid ""
-"Display process times.\n"
-"    \n"
-"    Prints the accumulated user and system times for the shell and all of "
-"its\n"
-"    child processes.\n"
-"    \n"
-"    Exit Status:\n"
-"    Always succeeds."
-msgstr ""
-
-#: builtins.c:1317
-msgid ""
-"Trap signals and other events.\n"
-"    \n"
-"    Defines and activates handlers to be run when the shell receives "
-"signals\n"
-"    or other conditions.\n"
-"    \n"
-"    ARG is a command to be read and executed when the shell receives the\n"
-"    signal(s) SIGNAL_SPEC.  If ARG is absent (and a single SIGNAL_SPEC\n"
-"    is supplied) or `-', each specified signal is reset to its original\n"
-"    value.  If ARG is the null string each SIGNAL_SPEC is ignored by the\n"
-"    shell and by the commands it invokes.\n"
-"    \n"
-"    If a SIGNAL_SPEC is EXIT (0) ARG is executed on exit from the shell.  "
-"If\n"
-"    a SIGNAL_SPEC is DEBUG, ARG is executed before every simple command.\n"
-"    \n"
-"    If no arguments are supplied, trap prints the list of commands "
-"associated\n"
-"    with each signal.\n"
-"    \n"
-"    Options:\n"
-"      -l\tprint a list of signal names and their corresponding numbers\n"
-"      -p\tdisplay the trap commands associated with each SIGNAL_SPEC\n"
-"    \n"
-"    Each SIGNAL_SPEC is either a signal name in <signal.h> or a signal "
-"number.\n"
-"    Signal names are case insensitive and the SIG prefix is optional.  A\n"
-"    signal may be sent to the shell with \"kill -signal $$\".\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless a SIGSPEC is invalid or an invalid option is "
-"given."
-msgstr ""
-
-#: builtins.c:1349
-msgid ""
-"Display information about command type.\n"
-"    \n"
-"    For each NAME, indicate how it would be interpreted if used as a\n"
-"    command name.\n"
-"    \n"
-"    Options:\n"
-"      -a\tdisplay all locations containing an executable named NAME;\n"
-"    \tincludes aliases, builtins, and functions, if and only if\n"
-"    \tthe `-p' option is not also used\n"
-"      -f\tsuppress shell function lookup\n"
-"      -P\tforce a PATH search for each NAME, even if it is an alias,\n"
-"    \tbuiltin, or function, and returns the name of the disk file\n"
-"    \tthat would be executed\n"
-"      -p\treturns either the name of the disk file that would be executed,\n"
-"    \tor nothing if `type -t NAME' would not return `file'.\n"
-"      -t\toutput a single word which is one of `alias', `keyword',\n"
-"    \t`function', `builtin', `file' or `', if NAME is an alias, shell\n"
-"    \treserved word, shell function, shell builtin, disk file, or not\n"
-"    \tfound, respectively\n"
-"    \n"
-"    Arguments:\n"
-"      NAME\tCommand name to be interpreted.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success if all of the NAMEs are found; fails if any are not "
-"found."
-msgstr ""
-
-#: builtins.c:1380
-msgid ""
-"Modify shell resource limits.\n"
-"    \n"
-"    Provides control over the resources available to the shell and "
-"processes\n"
-"    it creates, on systems that allow such control.\n"
-"    \n"
-"    Options:\n"
-"      -S\tuse the `soft' resource limit\n"
-"      -H\tuse the `hard' resource limit\n"
-"      -a\tall current limits are reported\n"
-"      -b\tthe socket buffer size\n"
-"      -c\tthe maximum size of core files created\n"
-"      -d\tthe maximum size of a process's data segment\n"
-"      -e\tthe maximum scheduling priority (`nice')\n"
-"      -f\tthe maximum size of files written by the shell and its children\n"
-"      -i\tthe maximum number of pending signals\n"
-"      -l\tthe maximum size a process may lock into memory\n"
-"      -m\tthe maximum resident set size\n"
-"      -n\tthe maximum number of open file descriptors\n"
-"      -p\tthe pipe buffer size\n"
-"      -q\tthe maximum number of bytes in POSIX message queues\n"
-"      -r\tthe maximum real-time scheduling priority\n"
-"      -s\tthe maximum stack size\n"
-"      -t\tthe maximum amount of cpu time in seconds\n"
-"      -u\tthe maximum number of user processes\n"
-"      -v\tthe size of virtual memory\n"
-"      -x\tthe maximum number of file locks\n"
-"    \n"
-"    If LIMIT is given, it is the new value of the specified resource; the\n"
-"    special LIMIT values `soft', `hard', and `unlimited' stand for the\n"
-"    current soft limit, the current hard limit, and no limit, respectively.\n"
-"    Otherwise, the current value of the specified resource is printed.  If\n"
-"    no option is given, then -f is assumed.\n"
-"    \n"
-"    Values are in 1024-byte increments, except for -t, which is in seconds,\n"
-"    -p, which is in increments of 512 bytes, and -u, which is an unscaled\n"
-"    number of processes.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless an invalid option is supplied or an error occurs."
-msgstr ""
-
-#: builtins.c:1425
-msgid ""
-"Display or set file mode mask.\n"
-"    \n"
-"    Sets the user file-creation mask to MODE.  If MODE is omitted, prints\n"
-"    the current value of the mask.\n"
-"    \n"
-"    If MODE begins with a digit, it is interpreted as an octal number;\n"
-"    otherwise it is a symbolic mode string like that accepted by chmod(1).\n"
-"    \n"
-"    Options:\n"
-"      -p\tif MODE is omitted, output in a form that may be reused as input\n"
-"      -S\tmakes the output symbolic; otherwise an octal number is output\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless MODE is invalid or an invalid option is given."
-msgstr ""
-
-#: builtins.c:1445
-msgid ""
-"Wait for job completion and return exit status.\n"
-"    \n"
-"    Waits for the process identified by ID, which may be a process ID or a\n"
-"    job specification, and reports its termination status.  If ID is not\n"
-"    given, waits for all currently active child processes, and the return\n"
-"    status is zero.  If ID is a a job specification, waits for all "
-"processes\n"
-"    in the job's pipeline.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns the status of ID; fails if ID is invalid or an invalid option "
-"is\n"
-"    given."
-msgstr ""
-
-#: builtins.c:1463
-msgid ""
-"Wait for process completion and return exit status.\n"
-"    \n"
-"    Waits for the specified process and reports its termination status.  If\n"
-"    PID is not given, all currently active child processes are waited for,\n"
-"    and the return code is zero.  PID must be a process ID.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns the status of ID; fails if ID is invalid or an invalid option "
-"is\n"
-"    given."
-msgstr ""
-
-#: builtins.c:1478
-msgid ""
-"Execute commands for each member in a list.\n"
-"    \n"
-"    The `for' loop executes a sequence of commands for each member in a\n"
-"    list of items.  If `in WORDS ...;' is not present, then `in \"$@\"' is\n"
-"    assumed.  For each element in WORDS, NAME is set to that element, and\n"
-"    the COMMANDS are executed.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns the status of the last command executed."
-msgstr ""
-
-#: builtins.c:1492
-msgid ""
-"Arithmetic for loop.\n"
-"    \n"
-"    Equivalent to\n"
-"    \t(( EXP1 ))\n"
-"    \twhile (( EXP2 )); do\n"
-"    \t\tCOMMANDS\n"
-"    \t\t(( EXP3 ))\n"
-"    \tdone\n"
-"    EXP1, EXP2, and EXP3 are arithmetic expressions.  If any expression is\n"
-"    omitted, it behaves as if it evaluates to 1.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns the status of the last command executed."
-msgstr ""
-
-#: builtins.c:1510
-msgid ""
-"Select words from a list and execute commands.\n"
-"    \n"
-"    The WORDS are expanded, generating a list of words.  The\n"
-"    set of expanded words is printed on the standard error, each\n"
-"    preceded by a number.  If `in WORDS' is not present, `in \"$@\"'\n"
-"    is assumed.  The PS3 prompt is then displayed and a line read\n"
-"    from the standard input.  If the line consists of the number\n"
-"    corresponding to one of the displayed words, then NAME is set\n"
-"    to that word.  If the line is empty, WORDS and the prompt are\n"
-"    redisplayed.  If EOF is read, the command completes.  Any other\n"
-"    value read causes NAME to be set to null.  The line read is saved\n"
-"    in the variable REPLY.  COMMANDS are executed after each selection\n"
-"    until a break command is executed.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns the status of the last command executed."
-msgstr ""
-
-#: builtins.c:1531
-msgid ""
-"Report time consumed by pipeline's execution.\n"
-"    \n"
-"    Execute PIPELINE and print a summary of the real time, user CPU time,\n"
-"    and system CPU time spent executing PIPELINE when it terminates.\n"
-"    \n"
-"    Options:\n"
-"      -p\tprint the timing summary in the portable Posix format\n"
-"    \n"
-"    The value of the TIMEFORMAT variable is used as the output format.\n"
-"    \n"
-"    Exit Status:\n"
-"    The return status is the return status of PIPELINE."
-msgstr ""
-
-#: builtins.c:1548
-msgid ""
-"Execute commands based on pattern matching.\n"
-"    \n"
-"    Selectively execute COMMANDS based upon WORD matching PATTERN.  The\n"
-"    `|' is used to separate multiple patterns.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns the status of the last command executed."
-msgstr ""
-
-#: builtins.c:1560
-msgid ""
-"Execute commands based on conditional.\n"
-"    \n"
-"    The `if COMMANDS' list is executed.  If its exit status is zero, then "
-"the\n"
-"    `then COMMANDS' list is executed.  Otherwise, each `elif COMMANDS' list "
-"is\n"
-"    executed in turn, and if its exit status is zero, the corresponding\n"
-"    `then COMMANDS' list is executed and the if command completes.  "
-"Otherwise,\n"
-"    the `else COMMANDS' list is executed, if present.  The exit status of "
-"the\n"
-"    entire construct is the exit status of the last command executed, or "
-"zero\n"
-"    if no condition tested true.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns the status of the last command executed."
-msgstr ""
-
-#: builtins.c:1577
-msgid ""
-"Execute commands as long as a test succeeds.\n"
-"    \n"
-"    Expand and execute COMMANDS as long as the final command in the\n"
-"    `while' COMMANDS has an exit status of zero.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns the status of the last command executed."
-msgstr ""
-
-#: builtins.c:1589
-msgid ""
-"Execute commands as long as a test does not succeed.\n"
-"    \n"
-"    Expand and execute COMMANDS as long as the final command in the\n"
-"    `until' COMMANDS has an exit status which is not zero.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns the status of the last command executed."
-msgstr ""
-
-#: builtins.c:1601
-msgid ""
-"Create a coprocess named NAME.\n"
-"    \n"
-"    Execute COMMAND asynchronously, with the standard output and standard\n"
-"    input of the command connected via a pipe to file descriptors assigned\n"
-"    to indices 0 and 1 of an array variable NAME in the executing shell.\n"
-"    The default NAME is \"COPROC\".\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns the exit status of COMMAND."
-msgstr ""
-
-#: builtins.c:1615
-msgid ""
-"Define shell function.\n"
-"    \n"
-"    Create a shell function named NAME.  When invoked as a simple command,\n"
-"    NAME runs COMMANDs in the calling shell's context.  When NAME is "
-"invoked,\n"
-"    the arguments are passed to the function as $1...$n, and the function's\n"
-"    name is in $FUNCNAME.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless NAME is readonly."
-msgstr ""
-
-#: builtins.c:1629
-msgid ""
-"Group commands as a unit.\n"
-"    \n"
-"    Run a set of commands in a group.  This is one way to redirect an\n"
-"    entire set of commands.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns the status of the last command executed."
-msgstr ""
-
-#: builtins.c:1641
-msgid ""
-"Resume job in foreground.\n"
-"    \n"
-"    Equivalent to the JOB_SPEC argument to the `fg' command.  Resume a\n"
-"    stopped or background job.  JOB_SPEC can specify either a job name\n"
-"    or a job number.  Following JOB_SPEC with a `&' places the job in\n"
-"    the background, as if the job specification had been supplied as an\n"
-"    argument to `bg'.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns the status of the resumed job."
-msgstr ""
-
-#: builtins.c:1656
-msgid ""
-"Evaluate arithmetic expression.\n"
-"    \n"
-"    The EXPRESSION is evaluated according to the rules for arithmetic\n"
-"    evaluation.  Equivalent to \"let EXPRESSION\".\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns 1 if EXPRESSION evaluates to 0; returns 0 otherwise."
-msgstr ""
-
-#: builtins.c:1668
-msgid ""
-"Execute conditional command.\n"
-"    \n"
-"    Returns a status of 0 or 1 depending on the evaluation of the "
-"conditional\n"
-"    expression EXPRESSION.  Expressions are composed of the same primaries "
-"used\n"
-"    by the `test' builtin, and may be combined using the following "
-"operators:\n"
-"    \n"
-"      ( EXPRESSION )\tReturns the value of EXPRESSION\n"
-"      ! EXPRESSION\t\tTrue if EXPRESSION is false; else false\n"
-"      EXPR1 && EXPR2\tTrue if both EXPR1 and EXPR2 are true; else false\n"
-"      EXPR1 || EXPR2\tTrue if either EXPR1 or EXPR2 is true; else false\n"
-"    \n"
-"    When the `==' and `!=' operators are used, the string to the right of\n"
-"    the operator is used as a pattern and pattern matching is performed.\n"
-"    When the `=~' operator is used, the string to the right of the operator\n"
-"    is matched as a regular expression.\n"
-"    \n"
-"    The && and || operators do not evaluate EXPR2 if EXPR1 is sufficient to\n"
-"    determine the expression's value.\n"
-"    \n"
-"    Exit Status:\n"
-"    0 or 1 depending on value of EXPRESSION."
-msgstr ""
-
-#: builtins.c:1694
-msgid ""
-"Common shell variable names and usage.\n"
-"    \n"
-"    BASH_VERSION\tVersion information for this Bash.\n"
-"    CDPATH\tA colon-separated list of directories to search\n"
-"    \t\tfor directories given as arguments to `cd'.\n"
-"    GLOBIGNORE\tA colon-separated list of patterns describing filenames to\n"
-"    \t\tbe ignored by pathname expansion.\n"
-"    HISTFILE\tThe name of the file where your command history is stored.\n"
-"    HISTFILESIZE\tThe maximum number of lines this file can contain.\n"
-"    HISTSIZE\tThe maximum number of history lines that a running\n"
-"    \t\tshell can access.\n"
-"    HOME\tThe complete pathname to your login directory.\n"
-"    HOSTNAME\tThe name of the current host.\n"
-"    HOSTTYPE\tThe type of CPU this version of Bash is running under.\n"
-"    IGNOREEOF\tControls the action of the shell on receipt of an EOF\n"
-"    \t\tcharacter as the sole input.  If set, then the value\n"
-"    \t\tof it is the number of EOF characters that can be seen\n"
-"    \t\tin a row on an empty line before the shell will exit\n"
-"    \t\t(default 10).  When unset, EOF signifies the end of input.\n"
-"    MACHTYPE\tA string describing the current system Bash is running on.\n"
-"    MAILCHECK\tHow often, in seconds, Bash checks for new mail.\n"
-"    MAILPATH\tA colon-separated list of filenames which Bash checks\n"
-"    \t\tfor new mail.\n"
-"    OSTYPE\tThe version of Unix this version of Bash is running on.\n"
-"    PATH\tA colon-separated list of directories to search when\n"
-"    \t\tlooking for commands.\n"
-"    PROMPT_COMMAND\tA command to be executed before the printing of each\n"
-"    \t\tprimary prompt.\n"
-"    PS1\t\tThe primary prompt string.\n"
-"    PS2\t\tThe secondary prompt string.\n"
-"    PWD\t\tThe full pathname of the current directory.\n"
-"    SHELLOPTS\tA colon-separated list of enabled shell options.\n"
-"    TERM\tThe name of the current terminal type.\n"
-"    TIMEFORMAT\tThe output format for timing statistics displayed by the\n"
-"    \t\t`time' reserved word.\n"
-"    auto_resume\tNon-null means a command word appearing on a line by\n"
-"    \t\titself is first looked for in the list of currently\n"
-"    \t\tstopped jobs.  If found there, that job is foregrounded.\n"
-"    \t\tA value of `exact' means that the command word must\n"
-"    \t\texactly match a command in the list of stopped jobs.  A\n"
-"    \t\tvalue of `substring' means that the command word must\n"
-"    \t\tmatch a substring of the job.  Any other value means that\n"
-"    \t\tthe command must be a prefix of a stopped job.\n"
-"    histchars\tCharacters controlling history expansion and quick\n"
-"    \t\tsubstitution.  The first character is the history\n"
-"    \t\tsubstitution character, usually `!'.  The second is\n"
-"    \t\tthe `quick substitution' character, usually `^'.  The\n"
-"    \t\tthird is the `history comment' character, usually `#'.\n"
-"    HISTIGNORE\tA colon-separated list of patterns used to decide which\n"
-"    \t\tcommands should be saved on the history list.\n"
-msgstr ""
-
-#: builtins.c:1751
-msgid ""
-"Add directories to stack.\n"
-"    \n"
-"    Adds a directory to the top of the directory stack, or rotates\n"
-"    the stack, making the new top of the stack the current working\n"
-"    directory.  With no arguments, exchanges the top two directories.\n"
-"    \n"
-"    Options:\n"
-"      -n\tSuppresses the normal change of directory when adding\n"
-"    \tdirectories to the stack, so only the stack is manipulated.\n"
-"    \n"
-"    Arguments:\n"
-"      +N\tRotates the stack so that the Nth directory (counting\n"
-"    \tfrom the left of the list shown by `dirs', starting with\n"
-"    \tzero) is at the top.\n"
-"    \n"
-"      -N\tRotates the stack so that the Nth directory (counting\n"
-"    \tfrom the right of the list shown by `dirs', starting with\n"
-"    \tzero) is at the top.\n"
-"    \n"
-"      dir\tAdds DIR to the directory stack at the top, making it the\n"
-"    \tnew current working directory.\n"
-"    \n"
-"    The `dirs' builtin displays the directory stack.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless an invalid argument is supplied or the directory\n"
-"    change fails."
-msgstr ""
-
-#: builtins.c:1785
-msgid ""
-"Remove directories from stack.\n"
-"    \n"
-"    Removes entries from the directory stack.  With no arguments, removes\n"
-"    the top directory from the stack, and changes to the new top directory.\n"
-"    \n"
-"    Options:\n"
-"      -n\tSuppresses the normal change of directory when removing\n"
-"    \tdirectories from the stack, so only the stack is manipulated.\n"
-"    \n"
-"    Arguments:\n"
-"      +N\tRemoves the Nth entry counting from the left of the list\n"
-"    \tshown by `dirs', starting with zero.  For example: `popd +0'\n"
-"    \tremoves the first directory, `popd +1' the second.\n"
-"    \n"
-"      -N\tRemoves the Nth entry counting from the right of the list\n"
-"    \tshown by `dirs', starting with zero.  For example: `popd -0'\n"
-"    \tremoves the last directory, `popd -1' the next to last.\n"
-"    \n"
-"    The `dirs' builtin displays the directory stack.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless an invalid argument is supplied or the directory\n"
-"    change fails."
-msgstr ""
-
-#: builtins.c:1815
-msgid ""
-"Display directory stack.\n"
-"    \n"
-"    Display the list of currently remembered directories.  Directories\n"
-"    find their way onto the list with the `pushd' command; you can get\n"
-"    back up through the list with the `popd' command.\n"
-"    \n"
-"    Options:\n"
-"      -c\tclear the directory stack by deleting all of the elements\n"
-"      -l\tdo not print tilde-prefixed versions of directories relative\n"
-"    \tto your home directory\n"
-"      -p\tprint the directory stack with one entry per line\n"
-"      -v\tprint the directory stack with one entry per line prefixed\n"
-"    \twith its position in the stack\n"
-"    \n"
-"    Arguments:\n"
-"      +N\tDisplays the Nth entry counting from the left of the list shown "
-"by\n"
-"    \tdirs when invoked without options, starting with zero.\n"
-"    \n"
-"      -N\tDisplays the Nth entry counting from the right of the list shown "
-"by\n"
-"    \tdirs when invoked without options, starting with zero.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless an invalid option is supplied or an error occurs."
-msgstr ""
-
-#: builtins.c:1844
-msgid ""
-"Set and unset shell options.\n"
-"    \n"
-"    Change the setting of each shell option OPTNAME.  Without any option\n"
-"    arguments, list all shell options with an indication of whether or not "
-"each\n"
-"    is set.\n"
-"    \n"
-"    Options:\n"
-"      -o\trestrict OPTNAMEs to those defined for use with `set -o'\n"
-"      -p\tprint each shell option with an indication of its status\n"
-"      -q\tsuppress output\n"
-"      -s\tenable (set) each OPTNAME\n"
-"      -u\tdisable (unset) each OPTNAME\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success if OPTNAME is enabled; fails if an invalid option is\n"
-"    given or OPTNAME is disabled."
-msgstr ""
-
-#: builtins.c:1865
-msgid ""
-"Formats and prints ARGUMENTS under control of the FORMAT.\n"
-"    \n"
-"    Options:\n"
-"      -v var\tassign the output to shell variable VAR rather than\n"
-"    \t\tdisplay it on the standard output\n"
-"    \n"
-"    FORMAT is a character string which contains three types of objects: "
-"plain\n"
-"    characters, which are simply copied to standard output; character "
-"escape\n"
-"    sequences, which are converted and copied to the standard output; and\n"
-"    format specifications, each of which causes printing of the next "
-"successive\n"
-"    argument.\n"
-"    \n"
-"    In addition to the standard format specifications described in printf"
-"(1)\n"
-"    and printf(3), printf interprets:\n"
-"    \n"
-"      %b\texpand backslash escape sequences in the corresponding argument\n"
-"      %q\tquote the argument in a way that can be reused as shell input\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless an invalid option is given or a write or "
-"assignment\n"
-"    error occurs."
-msgstr ""
-
-#: builtins.c:1892
-msgid ""
-"Specify how arguments are to be completed by Readline.\n"
-"    \n"
-"    For each NAME, specify how arguments are to be completed.  If no "
-"options\n"
-"    are supplied, existing completion specifications are printed in a way "
-"that\n"
-"    allows them to be reused as input.\n"
-"    \n"
-"    Options:\n"
-"      -p\tprint existing completion specifications in a reusable format\n"
-"      -r\tremove a completion specification for each NAME, or, if no\n"
-"    \tNAMEs are supplied, all completion specifications\n"
-"    \n"
-"    When completion is attempted, the actions are applied in the order the\n"
-"    uppercase-letter options are listed above.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless an invalid option is supplied or an error occurs."
-msgstr ""
-
-#: builtins.c:1915
-msgid ""
-"Display possible completions depending on the options.\n"
-"    \n"
-"    Intended to be used from within a shell function generating possible\n"
-"    completions.  If the optional WORD argument is supplied, matches "
-"against\n"
-"    WORD are generated.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless an invalid option is supplied or an error occurs."
-msgstr ""
-
-#: builtins.c:1930
-msgid ""
-"Modify or display completion options.\n"
-"    \n"
-"    Modify the completion options for each NAME, or, if no NAMEs are "
-"supplied,\n"
-"    the completion currently begin executed.  If no OPTIONs are givenm, "
-"print\n"
-"    the completion options for each NAME or the current completion "
-"specification.\n"
-"    \n"
-"    Options:\n"
-"    \t-o option\tSet completion option OPTION for each NAME\n"
-"    \n"
-"    Using `+o' instead of `-o' turns off the specified option.\n"
-"    \n"
-"    Arguments:\n"
-"    \n"
-"    Each NAME refers to a command for which a completion specification must\n"
-"    have previously been defined using the `complete' builtin.  If no NAMEs\n"
-"    are supplied, compopt must be called by a function currently generating\n"
-"    completions, and the options for that currently-executing completion\n"
-"    generator are modified.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless an invalid option is supplied or NAME does not\n"
-"    have a completion specification defined."
-msgstr ""
-
-#: builtins.c:1958
-msgid ""
-"Read lines from the standard input into an array variable.\n"
-"    \n"
-"    Read lines from the standard input into the array variable ARRAY, or "
-"from\n"
-"    file descriptor FD if the -u option is supplied.  The variable MAPFILE "
-"is\n"
-"    the default ARRAY.\n"
-"    \n"
-"    Options:\n"
-"      -n count\tCopy at most COUNT lines.  If COUNT is 0, all lines are "
-"copied.\n"
-"      -O origin\tBegin assigning to ARRAY at index ORIGIN.  The default "
-"index is 0.\n"
-"      -s count \tDiscard the first COUNT lines read.\n"
-"      -t\t\tRemove a trailing newline from each line read.\n"
-"      -u fd\t\tRead lines from file descriptor FD instead of the standard "
-"input.\n"
-"      -C callback\tEvaluate CALLBACK each time QUANTUM lines are read.\n"
-"      -c quantum\tSpecify the number of lines read between each call to "
-"CALLBACK.\n"
-"    \n"
-"    Arguments:\n"
-"      ARRAY\t\tArray variable name to use for file data.\n"
-"    \n"
-"    If -C is supplied without -c, the default quantum is 5000.  When\n"
-"    CALLBACK is evaluated, it is supplied the index of the next array\n"
-"    element to be assigned as an additional argument.\n"
-"    \n"
-"    If not supplied with an explicit origin, mapfile will clear ARRAY "
-"before\n"
-"    assigning to it.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless an invalid option is given or ARRAY is readonly."
-msgstr ""
-
-#: builtins.c:1990
-msgid ""
-"Read lines from a file into an array variable.\n"
-"    \n"
-"    A synonym for `mapfile'."
-msgstr ""
diff --git a/po/bash-4.1.pot b/po/bash-4.1.pot
deleted file mode 100644 (file)
index 68d33f8..0000000
+++ /dev/null
@@ -1,3919 +0,0 @@
-# SOME DESCRIPTIVE TITLE.
-# Copyright (C) YEAR Free Software Foundation, Inc.
-# This file is distributed under the same license as the PACKAGE package.
-# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
-#
-#, fuzzy
-msgid ""
-msgstr ""
-"Project-Id-Version: PACKAGE VERSION\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2009-12-30 08:25-0500\n"
-"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
-"Language-Team: LANGUAGE <LL@li.org>\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=CHARSET\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Plural-Forms: nplurals=INTEGER; plural=EXPRESSION;\n"
-
-#: arrayfunc.c:50
-msgid "bad array subscript"
-msgstr ""
-
-#: arrayfunc.c:313 builtins/declare.def:481
-#, c-format
-msgid "%s: cannot convert indexed to associative array"
-msgstr ""
-
-#: arrayfunc.c:480
-#, c-format
-msgid "%s: invalid associative array key"
-msgstr ""
-
-#: arrayfunc.c:482
-#, c-format
-msgid "%s: cannot assign to non-numeric index"
-msgstr ""
-
-#: arrayfunc.c:518
-#, c-format
-msgid "%s: %s: must use subscript when assigning associative array"
-msgstr ""
-
-#: bashhist.c:383
-#, c-format
-msgid "%s: cannot create: %s"
-msgstr ""
-
-#: bashline.c:3457
-msgid "bash_execute_unix_command: cannot find keymap for command"
-msgstr ""
-
-#: bashline.c:3543
-#, c-format
-msgid "%s: first non-whitespace character is not `\"'"
-msgstr ""
-
-#: bashline.c:3572
-#, c-format
-msgid "no closing `%c' in %s"
-msgstr ""
-
-#: bashline.c:3606
-#, c-format
-msgid "%s: missing colon separator"
-msgstr ""
-
-#: builtins/alias.def:132
-#, c-format
-msgid "`%s': invalid alias name"
-msgstr ""
-
-#: builtins/bind.def:120 builtins/bind.def:123
-msgid "line editing not enabled"
-msgstr ""
-
-#: builtins/bind.def:206
-#, c-format
-msgid "`%s': invalid keymap name"
-msgstr ""
-
-#: builtins/bind.def:245
-#, c-format
-msgid "%s: cannot read: %s"
-msgstr ""
-
-#: builtins/bind.def:260
-#, c-format
-msgid "`%s': cannot unbind"
-msgstr ""
-
-#: builtins/bind.def:295 builtins/bind.def:325
-#, c-format
-msgid "`%s': unknown function name"
-msgstr ""
-
-#: builtins/bind.def:303
-#, c-format
-msgid "%s is not bound to any keys.\n"
-msgstr ""
-
-#: builtins/bind.def:307
-#, c-format
-msgid "%s can be invoked via "
-msgstr ""
-
-#: builtins/break.def:77 builtins/break.def:117
-msgid "loop count"
-msgstr ""
-
-#: builtins/break.def:137
-msgid "only meaningful in a `for', `while', or `until' loop"
-msgstr ""
-
-#: builtins/caller.def:133
-msgid ""
-"Returns the context of the current subroutine call.\n"
-"    \n"
-"    Without EXPR, returns "
-msgstr ""
-
-#: builtins/caller.def:135
-msgid ""
-".  With EXPR, returns\n"
-"    "
-msgstr ""
-
-#: builtins/caller.def:136
-msgid ""
-"; this extra information can be used to\n"
-"    provide a stack trace.\n"
-"    \n"
-"    The value of EXPR indicates how many call frames to go back before the\n"
-"    current one; the top frame is frame 0."
-msgstr ""
-
-#: builtins/cd.def:215
-msgid "HOME not set"
-msgstr ""
-
-#: builtins/cd.def:227
-msgid "OLDPWD not set"
-msgstr ""
-
-#: builtins/common.c:101
-#, c-format
-msgid "line %d: "
-msgstr ""
-
-#: builtins/common.c:139 error.c:261
-#, c-format
-msgid "warning: "
-msgstr ""
-
-#: builtins/common.c:153
-#, c-format
-msgid "%s: usage: "
-msgstr ""
-
-#: builtins/common.c:166 test.c:827
-msgid "too many arguments"
-msgstr ""
-
-#: builtins/common.c:191 shell.c:499 shell.c:782
-#, c-format
-msgid "%s: option requires an argument"
-msgstr ""
-
-#: builtins/common.c:198
-#, c-format
-msgid "%s: numeric argument required"
-msgstr ""
-
-#: builtins/common.c:205
-#, c-format
-msgid "%s: not found"
-msgstr ""
-
-#: builtins/common.c:214 shell.c:795
-#, c-format
-msgid "%s: invalid option"
-msgstr ""
-
-#: builtins/common.c:221
-#, c-format
-msgid "%s: invalid option name"
-msgstr ""
-
-#: builtins/common.c:228 general.c:231 general.c:236
-#, c-format
-msgid "`%s': not a valid identifier"
-msgstr ""
-
-#: builtins/common.c:238
-msgid "invalid octal number"
-msgstr ""
-
-#: builtins/common.c:240
-msgid "invalid hex number"
-msgstr ""
-
-#: builtins/common.c:242 expr.c:1256
-msgid "invalid number"
-msgstr ""
-
-#: builtins/common.c:250
-#, c-format
-msgid "%s: invalid signal specification"
-msgstr ""
-
-#: builtins/common.c:257
-#, c-format
-msgid "`%s': not a pid or valid job spec"
-msgstr ""
-
-#: builtins/common.c:264 error.c:454
-#, c-format
-msgid "%s: readonly variable"
-msgstr ""
-
-#: builtins/common.c:272
-#, c-format
-msgid "%s: %s out of range"
-msgstr ""
-
-#: builtins/common.c:272 builtins/common.c:274
-msgid "argument"
-msgstr ""
-
-#: builtins/common.c:274
-#, c-format
-msgid "%s out of range"
-msgstr ""
-
-#: builtins/common.c:282
-#, c-format
-msgid "%s: no such job"
-msgstr ""
-
-#: builtins/common.c:290
-#, c-format
-msgid "%s: no job control"
-msgstr ""
-
-#: builtins/common.c:292
-msgid "no job control"
-msgstr ""
-
-#: builtins/common.c:302
-#, c-format
-msgid "%s: restricted"
-msgstr ""
-
-#: builtins/common.c:304
-msgid "restricted"
-msgstr ""
-
-#: builtins/common.c:312
-#, c-format
-msgid "%s: not a shell builtin"
-msgstr ""
-
-#: builtins/common.c:321
-#, c-format
-msgid "write error: %s"
-msgstr ""
-
-#: builtins/common.c:329
-#, c-format
-msgid "error setting terminal attributes: %s"
-msgstr ""
-
-#: builtins/common.c:331
-#, c-format
-msgid "error getting terminal attributes: %s"
-msgstr ""
-
-#: builtins/common.c:563
-#, c-format
-msgid "%s: error retrieving current directory: %s: %s\n"
-msgstr ""
-
-#: builtins/common.c:629 builtins/common.c:631
-#, c-format
-msgid "%s: ambiguous job spec"
-msgstr ""
-
-#: builtins/complete.def:276
-#, c-format
-msgid "%s: invalid action name"
-msgstr ""
-
-#: builtins/complete.def:449 builtins/complete.def:644
-#: builtins/complete.def:853
-#, c-format
-msgid "%s: no completion specification"
-msgstr ""
-
-#: builtins/complete.def:696
-msgid "warning: -F option may not work as you expect"
-msgstr ""
-
-#: builtins/complete.def:698
-msgid "warning: -C option may not work as you expect"
-msgstr ""
-
-#: builtins/complete.def:826
-msgid "not currently executing completion function"
-msgstr ""
-
-#: builtins/declare.def:122
-msgid "can only be used in a function"
-msgstr ""
-
-#: builtins/declare.def:360
-msgid "cannot use `-f' to make functions"
-msgstr ""
-
-#: builtins/declare.def:372 execute_cmd.c:4937
-#, c-format
-msgid "%s: readonly function"
-msgstr ""
-
-#: builtins/declare.def:468
-#, c-format
-msgid "%s: cannot destroy array variables in this way"
-msgstr ""
-
-#: builtins/declare.def:475
-#, c-format
-msgid "%s: cannot convert associative to indexed array"
-msgstr ""
-
-#: builtins/enable.def:137 builtins/enable.def:145
-msgid "dynamic loading not available"
-msgstr ""
-
-#: builtins/enable.def:312
-#, c-format
-msgid "cannot open shared object %s: %s"
-msgstr ""
-
-#: builtins/enable.def:335
-#, c-format
-msgid "cannot find %s in shared object %s: %s"
-msgstr ""
-
-#: builtins/enable.def:459
-#, c-format
-msgid "%s: not dynamically loaded"
-msgstr ""
-
-#: builtins/enable.def:474
-#, c-format
-msgid "%s: cannot delete: %s"
-msgstr ""
-
-#: builtins/evalfile.c:134 builtins/hash.def:169 execute_cmd.c:4794
-#: shell.c:1452
-#, c-format
-msgid "%s: is a directory"
-msgstr ""
-
-#: builtins/evalfile.c:139
-#, c-format
-msgid "%s: not a regular file"
-msgstr ""
-
-#: builtins/evalfile.c:147
-#, c-format
-msgid "%s: file is too large"
-msgstr ""
-
-#: builtins/evalfile.c:185 builtins/evalfile.c:203 execute_cmd.c:4864
-#: shell.c:1462
-#, c-format
-msgid "%s: cannot execute binary file"
-msgstr ""
-
-#: builtins/exec.def:212
-#, c-format
-msgid "%s: cannot execute: %s"
-msgstr ""
-
-#: builtins/exit.def:65
-#, c-format
-msgid "logout\n"
-msgstr ""
-
-#: builtins/exit.def:88
-msgid "not login shell: use `exit'"
-msgstr ""
-
-#: builtins/exit.def:120
-#, c-format
-msgid "There are stopped jobs.\n"
-msgstr ""
-
-#: builtins/exit.def:122
-#, c-format
-msgid "There are running jobs.\n"
-msgstr ""
-
-#: builtins/fc.def:262
-msgid "no command found"
-msgstr ""
-
-#: builtins/fc.def:349
-msgid "history specification"
-msgstr ""
-
-#: builtins/fc.def:370
-#, c-format
-msgid "%s: cannot open temp file: %s"
-msgstr ""
-
-#: builtins/fg_bg.def:149 builtins/jobs.def:282
-msgid "current"
-msgstr ""
-
-#: builtins/fg_bg.def:158
-#, c-format
-msgid "job %d started without job control"
-msgstr ""
-
-#: builtins/getopt.c:110
-#, c-format
-msgid "%s: illegal option -- %c\n"
-msgstr ""
-
-#: builtins/getopt.c:111
-#, c-format
-msgid "%s: option requires an argument -- %c\n"
-msgstr ""
-
-#: builtins/hash.def:92
-msgid "hashing disabled"
-msgstr ""
-
-#: builtins/hash.def:138
-#, c-format
-msgid "%s: hash table empty\n"
-msgstr ""
-
-#: builtins/hash.def:244
-#, c-format
-msgid "hits\tcommand\n"
-msgstr ""
-
-#: builtins/help.def:130
-#, c-format
-msgid "Shell commands matching keyword `"
-msgid_plural "Shell commands matching keywords `"
-msgstr[0] ""
-msgstr[1] ""
-
-#: builtins/help.def:168
-#, c-format
-msgid ""
-"no help topics match `%s'.  Try `help help' or `man -k %s' or `info %s'."
-msgstr ""
-
-#: builtins/help.def:185
-#, c-format
-msgid "%s: cannot open: %s"
-msgstr ""
-
-#: builtins/help.def:337
-#, c-format
-msgid ""
-"These shell commands are defined internally.  Type `help' to see this list.\n"
-"Type `help name' to find out more about the function `name'.\n"
-"Use `info bash' to find out more about the shell in general.\n"
-"Use `man -k' or `info' to find out more about commands not in this list.\n"
-"\n"
-"A star (*) next to a name means that the command is disabled.\n"
-"\n"
-msgstr ""
-
-#: builtins/history.def:154
-msgid "cannot use more than one of -anrw"
-msgstr ""
-
-#: builtins/history.def:186
-msgid "history position"
-msgstr ""
-
-#: builtins/history.def:365
-#, c-format
-msgid "%s: history expansion failed"
-msgstr ""
-
-#: builtins/inlib.def:71
-#, c-format
-msgid "%s: inlib failed"
-msgstr ""
-
-#: builtins/jobs.def:109
-msgid "no other options allowed with `-x'"
-msgstr ""
-
-#: builtins/kill.def:200
-#, c-format
-msgid "%s: arguments must be process or job IDs"
-msgstr ""
-
-#: builtins/kill.def:263
-msgid "Unknown error"
-msgstr ""
-
-#: builtins/let.def:95 builtins/let.def:120 expr.c:501 expr.c:516
-msgid "expression expected"
-msgstr ""
-
-#: builtins/mapfile.def:165
-#, c-format
-msgid "%s: not an indexed array"
-msgstr ""
-
-#: builtins/mapfile.def:249 builtins/read.def:279
-#, c-format
-msgid "%s: invalid file descriptor specification"
-msgstr ""
-
-#: builtins/mapfile.def:257 builtins/read.def:286
-#, c-format
-msgid "%d: invalid file descriptor: %s"
-msgstr ""
-
-#: builtins/mapfile.def:266 builtins/mapfile.def:304
-#, c-format
-msgid "%s: invalid line count"
-msgstr ""
-
-#: builtins/mapfile.def:277
-#, c-format
-msgid "%s: invalid array origin"
-msgstr ""
-
-#: builtins/mapfile.def:294
-#, c-format
-msgid "%s: invalid callback quantum"
-msgstr ""
-
-#: builtins/mapfile.def:326
-msgid "empty array variable name"
-msgstr ""
-
-#: builtins/mapfile.def:347
-msgid "array variable support required"
-msgstr ""
-
-#: builtins/printf.def:374
-#, c-format
-msgid "`%s': missing format character"
-msgstr ""
-
-#: builtins/printf.def:551
-#, c-format
-msgid "`%c': invalid format character"
-msgstr ""
-
-#: builtins/printf.def:578
-#, c-format
-msgid "warning: %s: %s"
-msgstr ""
-
-#: builtins/printf.def:757
-msgid "missing hex digit for \\x"
-msgstr ""
-
-#: builtins/pushd.def:195
-msgid "no other directory"
-msgstr ""
-
-#: builtins/pushd.def:462
-msgid "<no current directory>"
-msgstr ""
-
-#: builtins/pushd.def:506
-msgid "directory stack empty"
-msgstr ""
-
-#: builtins/pushd.def:508
-msgid "directory stack index"
-msgstr ""
-
-#: builtins/pushd.def:683
-msgid ""
-"Display the list of currently remembered directories.  Directories\n"
-"    find their way onto the list with the `pushd' command; you can get\n"
-"    back up through the list with the `popd' command.\n"
-"    \n"
-"    Options:\n"
-"      -c\tclear the directory stack by deleting all of the elements\n"
-"      -l\tdo not print tilde-prefixed versions of directories relative\n"
-"    \tto your home directory\n"
-"      -p\tprint the directory stack with one entry per line\n"
-"      -v\tprint the directory stack with one entry per line prefixed\n"
-"    \twith its position in the stack\n"
-"    \n"
-"    Arguments:\n"
-"      +N\tDisplays the Nth entry counting from the left of the list shown "
-"by\n"
-"    \tdirs when invoked without options, starting with zero.\n"
-"    \n"
-"      -N\tDisplays the Nth entry counting from the right of the list shown "
-"by\n"
-"\tdirs when invoked without options, starting with zero."
-msgstr ""
-
-#: builtins/pushd.def:705
-msgid ""
-"Adds a directory to the top of the directory stack, or rotates\n"
-"    the stack, making the new top of the stack the current working\n"
-"    directory.  With no arguments, exchanges the top two directories.\n"
-"    \n"
-"    Options:\n"
-"      -n\tSuppresses the normal change of directory when adding\n"
-"    \tdirectories to the stack, so only the stack is manipulated.\n"
-"    \n"
-"    Arguments:\n"
-"      +N\tRotates the stack so that the Nth directory (counting\n"
-"    \tfrom the left of the list shown by `dirs', starting with\n"
-"    \tzero) is at the top.\n"
-"    \n"
-"      -N\tRotates the stack so that the Nth directory (counting\n"
-"    \tfrom the right of the list shown by `dirs', starting with\n"
-"    \tzero) is at the top.\n"
-"    \n"
-"      dir\tAdds DIR to the directory stack at the top, making it the\n"
-"    \tnew current working directory.\n"
-"    \n"
-"    The `dirs' builtin displays the directory stack."
-msgstr ""
-
-#: builtins/pushd.def:730
-msgid ""
-"Removes entries from the directory stack.  With no arguments, removes\n"
-"    the top directory from the stack, and changes to the new top directory.\n"
-"    \n"
-"    Options:\n"
-"      -n\tSuppresses the normal change of directory when removing\n"
-"    \tdirectories from the stack, so only the stack is manipulated.\n"
-"    \n"
-"    Arguments:\n"
-"      +N\tRemoves the Nth entry counting from the left of the list\n"
-"    \tshown by `dirs', starting with zero.  For example: `popd +0'\n"
-"    \tremoves the first directory, `popd +1' the second.\n"
-"    \n"
-"      -N\tRemoves the Nth entry counting from the right of the list\n"
-"    \tshown by `dirs', starting with zero.  For example: `popd -0'\n"
-"    \tremoves the last directory, `popd -1' the next to last.\n"
-"    \n"
-"    The `dirs' builtin displays the directory stack."
-msgstr ""
-
-#: builtins/read.def:252
-#, c-format
-msgid "%s: invalid timeout specification"
-msgstr ""
-
-#: builtins/read.def:588
-#, c-format
-msgid "read error: %d: %s"
-msgstr ""
-
-#: builtins/return.def:73
-msgid "can only `return' from a function or sourced script"
-msgstr ""
-
-#: builtins/set.def:768
-msgid "cannot simultaneously unset a function and a variable"
-msgstr ""
-
-#: builtins/set.def:805
-#, c-format
-msgid "%s: cannot unset"
-msgstr ""
-
-#: builtins/set.def:812
-#, c-format
-msgid "%s: cannot unset: readonly %s"
-msgstr ""
-
-#: builtins/set.def:823
-#, c-format
-msgid "%s: not an array variable"
-msgstr ""
-
-#: builtins/setattr.def:186
-#, c-format
-msgid "%s: not a function"
-msgstr ""
-
-#: builtins/shift.def:71 builtins/shift.def:77
-msgid "shift count"
-msgstr ""
-
-#: builtins/shopt.def:260
-msgid "cannot set and unset shell options simultaneously"
-msgstr ""
-
-#: builtins/shopt.def:325
-#, c-format
-msgid "%s: invalid shell option name"
-msgstr ""
-
-#: builtins/source.def:128
-msgid "filename argument required"
-msgstr ""
-
-#: builtins/source.def:153
-#, c-format
-msgid "%s: file not found"
-msgstr ""
-
-#: builtins/suspend.def:101
-msgid "cannot suspend"
-msgstr ""
-
-#: builtins/suspend.def:111
-msgid "cannot suspend a login shell"
-msgstr ""
-
-#: builtins/type.def:234
-#, c-format
-msgid "%s is aliased to `%s'\n"
-msgstr ""
-
-#: builtins/type.def:255
-#, c-format
-msgid "%s is a shell keyword\n"
-msgstr ""
-
-#: builtins/type.def:274
-#, c-format
-msgid "%s is a function\n"
-msgstr ""
-
-#: builtins/type.def:296
-#, c-format
-msgid "%s is a shell builtin\n"
-msgstr ""
-
-#: builtins/type.def:317 builtins/type.def:391
-#, c-format
-msgid "%s is %s\n"
-msgstr ""
-
-#: builtins/type.def:337
-#, c-format
-msgid "%s is hashed (%s)\n"
-msgstr ""
-
-#: builtins/ulimit.def:372
-#, c-format
-msgid "%s: invalid limit argument"
-msgstr ""
-
-#: builtins/ulimit.def:398
-#, c-format
-msgid "`%c': bad command"
-msgstr ""
-
-#: builtins/ulimit.def:427
-#, c-format
-msgid "%s: cannot get limit: %s"
-msgstr ""
-
-#: builtins/ulimit.def:453
-msgid "limit"
-msgstr ""
-
-#: builtins/ulimit.def:465 builtins/ulimit.def:765
-#, c-format
-msgid "%s: cannot modify limit: %s"
-msgstr ""
-
-#: builtins/umask.def:118
-msgid "octal number"
-msgstr ""
-
-#: builtins/umask.def:231
-#, c-format
-msgid "`%c': invalid symbolic mode operator"
-msgstr ""
-
-#: builtins/umask.def:286
-#, c-format
-msgid "`%c': invalid symbolic mode character"
-msgstr ""
-
-#: error.c:90 error.c:321 error.c:323 error.c:325
-msgid " line "
-msgstr ""
-
-#: error.c:165
-#, c-format
-msgid "last command: %s\n"
-msgstr ""
-
-#: error.c:173
-#, c-format
-msgid "Aborting..."
-msgstr ""
-
-#: error.c:406
-msgid "unknown command error"
-msgstr ""
-
-#: error.c:407
-msgid "bad command type"
-msgstr ""
-
-#: error.c:408
-msgid "bad connector"
-msgstr ""
-
-#: error.c:409
-msgid "bad jump"
-msgstr ""
-
-#: error.c:447
-#, c-format
-msgid "%s: unbound variable"
-msgstr ""
-
-#: eval.c:181
-#, c-format
-msgid "\atimed out waiting for input: auto-logout\n"
-msgstr ""
-
-#: execute_cmd.c:497
-#, c-format
-msgid "cannot redirect standard input from /dev/null: %s"
-msgstr ""
-
-#: execute_cmd.c:1162
-#, c-format
-msgid "TIMEFORMAT: `%c': invalid format character"
-msgstr ""
-
-#: execute_cmd.c:2075
-msgid "pipe error"
-msgstr ""
-
-#: execute_cmd.c:4481
-#, c-format
-msgid "%s: restricted: cannot specify `/' in command names"
-msgstr ""
-
-#: execute_cmd.c:4572
-#, c-format
-msgid "%s: command not found"
-msgstr ""
-
-#: execute_cmd.c:4827
-#, c-format
-msgid "%s: %s: bad interpreter"
-msgstr ""
-
-#: execute_cmd.c:4976
-#, c-format
-msgid "cannot duplicate fd %d to fd %d"
-msgstr ""
-
-#: expr.c:241
-msgid "expression recursion level exceeded"
-msgstr ""
-
-#: expr.c:265
-msgid "recursion stack underflow"
-msgstr ""
-
-#: expr.c:379
-msgid "syntax error in expression"
-msgstr ""
-
-#: expr.c:419
-msgid "attempted assignment to non-variable"
-msgstr ""
-
-#: expr.c:440 expr.c:445 expr.c:756
-msgid "division by 0"
-msgstr ""
-
-#: expr.c:471
-msgid "bug: bad expassign token"
-msgstr ""
-
-#: expr.c:513
-msgid "`:' expected for conditional expression"
-msgstr ""
-
-#: expr.c:781
-msgid "exponent less than 0"
-msgstr ""
-
-#: expr.c:826
-msgid "identifier expected after pre-increment or pre-decrement"
-msgstr ""
-
-#: expr.c:854
-msgid "missing `)'"
-msgstr ""
-
-#: expr.c:897 expr.c:1176
-msgid "syntax error: operand expected"
-msgstr ""
-
-#: expr.c:1178
-msgid "syntax error: invalid arithmetic operator"
-msgstr ""
-
-#: expr.c:1202
-#, c-format
-msgid "%s%s%s: %s (error token is \"%s\")"
-msgstr ""
-
-#: expr.c:1260
-msgid "invalid arithmetic base"
-msgstr ""
-
-#: expr.c:1280
-msgid "value too great for base"
-msgstr ""
-
-#: expr.c:1329
-#, c-format
-msgid "%s: expression error\n"
-msgstr ""
-
-#: general.c:61
-msgid "getcwd: cannot access parent directories"
-msgstr ""
-
-#: input.c:94 subst.c:4857
-#, c-format
-msgid "cannot reset nodelay mode for fd %d"
-msgstr ""
-
-#: input.c:258
-#, c-format
-msgid "cannot allocate new file descriptor for bash input from fd %d"
-msgstr ""
-
-#: input.c:266
-#, c-format
-msgid "save_bash_input: buffer already exists for new fd %d"
-msgstr ""
-
-#: jobs.c:466
-msgid "start_pipeline: pgrp pipe"
-msgstr ""
-
-#: jobs.c:887
-#, c-format
-msgid "forked pid %d appears in running job %d"
-msgstr ""
-
-#: jobs.c:1005
-#, c-format
-msgid "deleting stopped job %d with process group %ld"
-msgstr ""
-
-#: jobs.c:1110
-#, c-format
-msgid "add_process: process %5ld (%s) in the_pipeline"
-msgstr ""
-
-#: jobs.c:1113
-#, c-format
-msgid "add_process: pid %5ld (%s) marked as still alive"
-msgstr ""
-
-#: jobs.c:1401
-#, c-format
-msgid "describe_pid: %ld: no such pid"
-msgstr ""
-
-#: jobs.c:1416
-#, c-format
-msgid "Signal %d"
-msgstr ""
-
-#: jobs.c:1430 jobs.c:1455
-msgid "Done"
-msgstr ""
-
-#: jobs.c:1435 siglist.c:123
-msgid "Stopped"
-msgstr ""
-
-#: jobs.c:1439
-#, c-format
-msgid "Stopped(%s)"
-msgstr ""
-
-#: jobs.c:1443
-msgid "Running"
-msgstr ""
-
-#: jobs.c:1457
-#, c-format
-msgid "Done(%d)"
-msgstr ""
-
-#: jobs.c:1459
-#, c-format
-msgid "Exit %d"
-msgstr ""
-
-#: jobs.c:1462
-msgid "Unknown status"
-msgstr ""
-
-#: jobs.c:1549
-#, c-format
-msgid "(core dumped) "
-msgstr ""
-
-#: jobs.c:1568
-#, c-format
-msgid "  (wd: %s)"
-msgstr ""
-
-#: jobs.c:1776
-#, c-format
-msgid "child setpgid (%ld to %ld)"
-msgstr ""
-
-#: jobs.c:2104 nojobs.c:585
-#, c-format
-msgid "wait: pid %ld is not a child of this shell"
-msgstr ""
-
-#: jobs.c:2331
-#, c-format
-msgid "wait_for: No record of process %ld"
-msgstr ""
-
-#: jobs.c:2607
-#, c-format
-msgid "wait_for_job: job %d is stopped"
-msgstr ""
-
-#: jobs.c:2829
-#, c-format
-msgid "%s: job has terminated"
-msgstr ""
-
-#: jobs.c:2838
-#, c-format
-msgid "%s: job %d already in background"
-msgstr ""
-
-#: jobs.c:3059
-msgid "waitchld: turning on WNOHANG to avoid indefinite block"
-msgstr ""
-
-#: jobs.c:3508
-#, c-format
-msgid "%s: line %d: "
-msgstr ""
-
-#: jobs.c:3522 nojobs.c:814
-#, c-format
-msgid " (core dumped)"
-msgstr ""
-
-#: jobs.c:3534 jobs.c:3547
-#, c-format
-msgid "(wd now: %s)\n"
-msgstr ""
-
-#: jobs.c:3579
-msgid "initialize_job_control: getpgrp failed"
-msgstr ""
-
-#: jobs.c:3639
-msgid "initialize_job_control: line discipline"
-msgstr ""
-
-#: jobs.c:3649
-msgid "initialize_job_control: setpgid"
-msgstr ""
-
-#: jobs.c:3677
-#, c-format
-msgid "cannot set terminal process group (%d)"
-msgstr ""
-
-#: jobs.c:3682
-msgid "no job control in this shell"
-msgstr ""
-
-#: lib/malloc/malloc.c:296
-#, c-format
-msgid "malloc: failed assertion: %s\n"
-msgstr ""
-
-#: lib/malloc/malloc.c:312
-#, c-format
-msgid ""
-"\r\n"
-"malloc: %s:%d: assertion botched\r\n"
-msgstr ""
-
-#: lib/malloc/malloc.c:313
-msgid "unknown"
-msgstr ""
-
-#: lib/malloc/malloc.c:797
-msgid "malloc: block on free list clobbered"
-msgstr ""
-
-#: lib/malloc/malloc.c:874
-msgid "free: called with already freed block argument"
-msgstr ""
-
-#: lib/malloc/malloc.c:877
-msgid "free: called with unallocated block argument"
-msgstr ""
-
-#: lib/malloc/malloc.c:896
-msgid "free: underflow detected; mh_nbytes out of range"
-msgstr ""
-
-#: lib/malloc/malloc.c:902
-msgid "free: start and end chunk sizes differ"
-msgstr ""
-
-#: lib/malloc/malloc.c:1001
-msgid "realloc: called with unallocated block argument"
-msgstr ""
-
-#: lib/malloc/malloc.c:1016
-msgid "realloc: underflow detected; mh_nbytes out of range"
-msgstr ""
-
-#: lib/malloc/malloc.c:1022
-msgid "realloc: start and end chunk sizes differ"
-msgstr ""
-
-#: lib/malloc/table.c:177
-#, c-format
-msgid "register_alloc: alloc table is full with FIND_ALLOC?\n"
-msgstr ""
-
-#: lib/malloc/table.c:184
-#, c-format
-msgid "register_alloc: %p already in table as allocated?\n"
-msgstr ""
-
-#: lib/malloc/table.c:220
-#, c-format
-msgid "register_free: %p already in table as free?\n"
-msgstr ""
-
-#: lib/sh/fmtulong.c:101
-msgid "invalid base"
-msgstr ""
-
-#: lib/sh/netopen.c:168
-#, c-format
-msgid "%s: host unknown"
-msgstr ""
-
-#: lib/sh/netopen.c:175
-#, c-format
-msgid "%s: invalid service"
-msgstr ""
-
-#: lib/sh/netopen.c:306
-#, c-format
-msgid "%s: bad network path specification"
-msgstr ""
-
-#: lib/sh/netopen.c:346
-msgid "network operations not supported"
-msgstr ""
-
-#: locale.c:192
-#, c-format
-msgid "setlocale: LC_ALL: cannot change locale (%s)"
-msgstr ""
-
-#: locale.c:194
-#, c-format
-msgid "setlocale: LC_ALL: cannot change locale (%s): %s"
-msgstr ""
-
-#: locale.c:247
-#, c-format
-msgid "setlocale: %s: cannot change locale (%s)"
-msgstr ""
-
-#: locale.c:249
-#, c-format
-msgid "setlocale: %s: cannot change locale (%s): %s"
-msgstr ""
-
-#: mailcheck.c:433
-msgid "You have mail in $_"
-msgstr ""
-
-#: mailcheck.c:458
-msgid "You have new mail in $_"
-msgstr ""
-
-#: mailcheck.c:474
-#, c-format
-msgid "The mail in %s has been read\n"
-msgstr ""
-
-#: make_cmd.c:323
-msgid "syntax error: arithmetic expression required"
-msgstr ""
-
-#: make_cmd.c:325
-msgid "syntax error: `;' unexpected"
-msgstr ""
-
-#: make_cmd.c:326
-#, c-format
-msgid "syntax error: `((%s))'"
-msgstr ""
-
-#: make_cmd.c:575
-#, c-format
-msgid "make_here_document: bad instruction type %d"
-msgstr ""
-
-#: make_cmd.c:659
-#, c-format
-msgid "here-document at line %d delimited by end-of-file (wanted `%s')"
-msgstr ""
-
-#: make_cmd.c:756
-#, c-format
-msgid "make_redirection: redirection instruction `%d' out of range"
-msgstr ""
-
-#: parse.y:3133 parse.y:3369
-#, c-format
-msgid "unexpected EOF while looking for matching `%c'"
-msgstr ""
-
-#: parse.y:3951
-msgid "unexpected EOF while looking for `]]'"
-msgstr ""
-
-#: parse.y:3956
-#, c-format
-msgid "syntax error in conditional expression: unexpected token `%s'"
-msgstr ""
-
-#: parse.y:3960
-msgid "syntax error in conditional expression"
-msgstr ""
-
-#: parse.y:4038
-#, c-format
-msgid "unexpected token `%s', expected `)'"
-msgstr ""
-
-#: parse.y:4042
-msgid "expected `)'"
-msgstr ""
-
-#: parse.y:4070
-#, c-format
-msgid "unexpected argument `%s' to conditional unary operator"
-msgstr ""
-
-#: parse.y:4074
-msgid "unexpected argument to conditional unary operator"
-msgstr ""
-
-#: parse.y:4120
-#, c-format
-msgid "unexpected token `%s', conditional binary operator expected"
-msgstr ""
-
-#: parse.y:4124
-msgid "conditional binary operator expected"
-msgstr ""
-
-#: parse.y:4146
-#, c-format
-msgid "unexpected argument `%s' to conditional binary operator"
-msgstr ""
-
-#: parse.y:4150
-msgid "unexpected argument to conditional binary operator"
-msgstr ""
-
-#: parse.y:4161
-#, c-format
-msgid "unexpected token `%c' in conditional command"
-msgstr ""
-
-#: parse.y:4164
-#, c-format
-msgid "unexpected token `%s' in conditional command"
-msgstr ""
-
-#: parse.y:4168
-#, c-format
-msgid "unexpected token %d in conditional command"
-msgstr ""
-
-#: parse.y:5459
-#, c-format
-msgid "syntax error near unexpected token `%s'"
-msgstr ""
-
-#: parse.y:5477
-#, c-format
-msgid "syntax error near `%s'"
-msgstr ""
-
-#: parse.y:5487
-msgid "syntax error: unexpected end of file"
-msgstr ""
-
-#: parse.y:5487
-msgid "syntax error"
-msgstr ""
-
-#: parse.y:5549
-#, c-format
-msgid "Use \"%s\" to leave the shell.\n"
-msgstr ""
-
-#: parse.y:5711
-msgid "unexpected EOF while looking for matching `)'"
-msgstr ""
-
-#: pcomplete.c:1030
-#, c-format
-msgid "completion: function `%s' not found"
-msgstr ""
-
-#: pcomplib.c:179
-#, c-format
-msgid "progcomp_insert: %s: NULL COMPSPEC"
-msgstr ""
-
-#: print_cmd.c:290
-#, c-format
-msgid "print_command: bad connector `%d'"
-msgstr ""
-
-#: print_cmd.c:363
-#, c-format
-msgid "xtrace_set: %d: invalid file descriptor"
-msgstr ""
-
-#: print_cmd.c:368
-msgid "xtrace_set: NULL file pointer"
-msgstr ""
-
-#: print_cmd.c:372
-#, c-format
-msgid "xtrace fd (%d) != fileno xtrace fp (%d)"
-msgstr ""
-
-#: print_cmd.c:1461
-#, c-format
-msgid "cprintf: `%c': invalid format character"
-msgstr ""
-
-#: redir.c:110
-msgid "file descriptor out of range"
-msgstr ""
-
-#: redir.c:166
-#, c-format
-msgid "%s: ambiguous redirect"
-msgstr ""
-
-#: redir.c:170
-#, c-format
-msgid "%s: cannot overwrite existing file"
-msgstr ""
-
-#: redir.c:175
-#, c-format
-msgid "%s: restricted: cannot redirect output"
-msgstr ""
-
-#: redir.c:180
-#, c-format
-msgid "cannot create temp file for here-document: %s"
-msgstr ""
-
-#: redir.c:184
-#, c-format
-msgid "%s: cannot assign fd to variable"
-msgstr ""
-
-#: redir.c:544
-msgid "/dev/(tcp|udp)/host/port not supported without networking"
-msgstr ""
-
-#: redir.c:1101
-msgid "redirection error: cannot duplicate fd"
-msgstr ""
-
-#: shell.c:332
-msgid "could not find /tmp, please create!"
-msgstr ""
-
-#: shell.c:336
-msgid "/tmp must be a valid directory name"
-msgstr ""
-
-#: shell.c:884
-#, c-format
-msgid "%c%c: invalid option"
-msgstr ""
-
-#: shell.c:1651
-msgid "I have no name!"
-msgstr ""
-
-#: shell.c:1793
-#, c-format
-msgid "GNU bash, version %s-(%s)\n"
-msgstr ""
-
-#: shell.c:1794
-#, c-format
-msgid ""
-"Usage:\t%s [GNU long option] [option] ...\n"
-"\t%s [GNU long option] [option] script-file ...\n"
-msgstr ""
-
-#: shell.c:1796
-msgid "GNU long options:\n"
-msgstr ""
-
-#: shell.c:1800
-msgid "Shell options:\n"
-msgstr ""
-
-#: shell.c:1801
-msgid "\t-irsD or -c command or -O shopt_option\t\t(invocation only)\n"
-msgstr ""
-
-#: shell.c:1816
-#, c-format
-msgid "\t-%s or -o option\n"
-msgstr ""
-
-#: shell.c:1822
-#, c-format
-msgid "Type `%s -c \"help set\"' for more information about shell options.\n"
-msgstr ""
-
-#: shell.c:1823
-#, c-format
-msgid "Type `%s -c help' for more information about shell builtin commands.\n"
-msgstr ""
-
-#: shell.c:1824
-#, c-format
-msgid "Use the `bashbug' command to report bugs.\n"
-msgstr ""
-
-#: sig.c:626
-#, c-format
-msgid "sigprocmask: %d: invalid operation"
-msgstr ""
-
-#: siglist.c:48
-msgid "Bogus signal"
-msgstr ""
-
-#: siglist.c:51
-msgid "Hangup"
-msgstr ""
-
-#: siglist.c:55
-msgid "Interrupt"
-msgstr ""
-
-#: siglist.c:59
-msgid "Quit"
-msgstr ""
-
-#: siglist.c:63
-msgid "Illegal instruction"
-msgstr ""
-
-#: siglist.c:67
-msgid "BPT trace/trap"
-msgstr ""
-
-#: siglist.c:75
-msgid "ABORT instruction"
-msgstr ""
-
-#: siglist.c:79
-msgid "EMT instruction"
-msgstr ""
-
-#: siglist.c:83
-msgid "Floating point exception"
-msgstr ""
-
-#: siglist.c:87
-msgid "Killed"
-msgstr ""
-
-#: siglist.c:91
-msgid "Bus error"
-msgstr ""
-
-#: siglist.c:95
-msgid "Segmentation fault"
-msgstr ""
-
-#: siglist.c:99
-msgid "Bad system call"
-msgstr ""
-
-#: siglist.c:103
-msgid "Broken pipe"
-msgstr ""
-
-#: siglist.c:107
-msgid "Alarm clock"
-msgstr ""
-
-#: siglist.c:111
-msgid "Terminated"
-msgstr ""
-
-#: siglist.c:115
-msgid "Urgent IO condition"
-msgstr ""
-
-#: siglist.c:119
-msgid "Stopped (signal)"
-msgstr ""
-
-#: siglist.c:127
-msgid "Continue"
-msgstr ""
-
-#: siglist.c:135
-msgid "Child death or stop"
-msgstr ""
-
-#: siglist.c:139
-msgid "Stopped (tty input)"
-msgstr ""
-
-#: siglist.c:143
-msgid "Stopped (tty output)"
-msgstr ""
-
-#: siglist.c:147
-msgid "I/O ready"
-msgstr ""
-
-#: siglist.c:151
-msgid "CPU limit"
-msgstr ""
-
-#: siglist.c:155
-msgid "File limit"
-msgstr ""
-
-#: siglist.c:159
-msgid "Alarm (virtual)"
-msgstr ""
-
-#: siglist.c:163
-msgid "Alarm (profile)"
-msgstr ""
-
-#: siglist.c:167
-msgid "Window changed"
-msgstr ""
-
-#: siglist.c:171
-msgid "Record lock"
-msgstr ""
-
-#: siglist.c:175
-msgid "User signal 1"
-msgstr ""
-
-#: siglist.c:179
-msgid "User signal 2"
-msgstr ""
-
-#: siglist.c:183
-msgid "HFT input data pending"
-msgstr ""
-
-#: siglist.c:187
-msgid "power failure imminent"
-msgstr ""
-
-#: siglist.c:191
-msgid "system crash imminent"
-msgstr ""
-
-#: siglist.c:195
-msgid "migrate process to another CPU"
-msgstr ""
-
-#: siglist.c:199
-msgid "programming error"
-msgstr ""
-
-#: siglist.c:203
-msgid "HFT monitor mode granted"
-msgstr ""
-
-#: siglist.c:207
-msgid "HFT monitor mode retracted"
-msgstr ""
-
-#: siglist.c:211
-msgid "HFT sound sequence has completed"
-msgstr ""
-
-#: siglist.c:215
-msgid "Information request"
-msgstr ""
-
-#: siglist.c:223
-msgid "Unknown Signal #"
-msgstr ""
-
-#: siglist.c:225
-#, c-format
-msgid "Unknown Signal #%d"
-msgstr ""
-
-#: subst.c:1333 subst.c:1454
-#, c-format
-msgid "bad substitution: no closing `%s' in %s"
-msgstr ""
-
-#: subst.c:2735
-#, c-format
-msgid "%s: cannot assign list to array member"
-msgstr ""
-
-#: subst.c:4754 subst.c:4770
-msgid "cannot make pipe for process substitution"
-msgstr ""
-
-#: subst.c:4802
-msgid "cannot make child for process substitution"
-msgstr ""
-
-#: subst.c:4847
-#, c-format
-msgid "cannot open named pipe %s for reading"
-msgstr ""
-
-#: subst.c:4849
-#, c-format
-msgid "cannot open named pipe %s for writing"
-msgstr ""
-
-#: subst.c:4867
-#, c-format
-msgid "cannot duplicate named pipe %s as fd %d"
-msgstr ""
-
-#: subst.c:5063
-msgid "cannot make pipe for command substitution"
-msgstr ""
-
-#: subst.c:5097
-msgid "cannot make child for command substitution"
-msgstr ""
-
-#: subst.c:5114
-msgid "command_substitute: cannot duplicate pipe as fd 1"
-msgstr ""
-
-#: subst.c:5617
-#, c-format
-msgid "%s: parameter null or not set"
-msgstr ""
-
-#: subst.c:5907
-#, c-format
-msgid "%s: substring expression < 0"
-msgstr ""
-
-#: subst.c:6965
-#, c-format
-msgid "%s: bad substitution"
-msgstr ""
-
-#: subst.c:7045
-#, c-format
-msgid "$%s: cannot assign in this way"
-msgstr ""
-
-#: subst.c:7374
-msgid ""
-"future versions of the shell will force evaluation as an arithmetic "
-"substitution"
-msgstr ""
-
-#: subst.c:7839
-#, c-format
-msgid "bad substitution: no closing \"`\" in %s"
-msgstr ""
-
-#: subst.c:8720
-#, c-format
-msgid "no match: %s"
-msgstr ""
-
-#: test.c:146
-msgid "argument expected"
-msgstr ""
-
-#: test.c:155
-#, c-format
-msgid "%s: integer expression expected"
-msgstr ""
-
-#: test.c:263
-msgid "`)' expected"
-msgstr ""
-
-#: test.c:265
-#, c-format
-msgid "`)' expected, found %s"
-msgstr ""
-
-#: test.c:280 test.c:693 test.c:696
-#, c-format
-msgid "%s: unary operator expected"
-msgstr ""
-
-#: test.c:449 test.c:736
-#, c-format
-msgid "%s: binary operator expected"
-msgstr ""
-
-#: test.c:811
-msgid "missing `]'"
-msgstr ""
-
-#: trap.c:203
-msgid "invalid signal number"
-msgstr ""
-
-#: trap.c:327
-#, c-format
-msgid "run_pending_traps: bad value in trap_list[%d]: %p"
-msgstr ""
-
-#: trap.c:331
-#, c-format
-msgid ""
-"run_pending_traps: signal handler is SIG_DFL, resending %d (%s) to myself"
-msgstr ""
-
-#: trap.c:380
-#, c-format
-msgid "trap_handler: bad signal %d"
-msgstr ""
-
-#: variables.c:363
-#, c-format
-msgid "error importing function definition for `%s'"
-msgstr ""
-
-#: variables.c:748
-#, c-format
-msgid "shell level (%d) too high, resetting to 1"
-msgstr ""
-
-#: variables.c:1915
-msgid "make_local_variable: no function context at current scope"
-msgstr ""
-
-#: variables.c:3159
-msgid "all_local_variables: no function context at current scope"
-msgstr ""
-
-#: variables.c:3376
-#, c-format
-msgid "%s has null exportstr"
-msgstr ""
-
-#: variables.c:3381 variables.c:3390
-#, c-format
-msgid "invalid character %d in exportstr for %s"
-msgstr ""
-
-#: variables.c:3396
-#, c-format
-msgid "no `=' in exportstr for %s"
-msgstr ""
-
-#: variables.c:3835
-msgid "pop_var_context: head of shell_variables not a function context"
-msgstr ""
-
-#: variables.c:3848
-msgid "pop_var_context: no global_variables context"
-msgstr ""
-
-#: variables.c:3922
-msgid "pop_scope: head of shell_variables not a temporary environment scope"
-msgstr ""
-
-#: variables.c:4678
-#, c-format
-msgid "%s: %s: cannot open as FILE"
-msgstr ""
-
-#: variables.c:4683
-#, c-format
-msgid "%s: %s: invalid value for trace file descriptor"
-msgstr ""
-
-#: version.c:46
-msgid "Copyright (C) 2009 Free Software Foundation, Inc."
-msgstr ""
-
-#: version.c:47
-msgid ""
-"License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl."
-"html>\n"
-msgstr ""
-
-#: version.c:86 version2.c:83
-#, c-format
-msgid "GNU bash, version %s (%s)\n"
-msgstr ""
-
-#: version.c:91 version2.c:88
-#, c-format
-msgid "This is free software; you are free to change and redistribute it.\n"
-msgstr ""
-
-#: version.c:92 version2.c:89
-#, c-format
-msgid "There is NO WARRANTY, to the extent permitted by law.\n"
-msgstr ""
-
-#: version2.c:86
-#, c-format
-msgid "Copyright (C) 2009 Free Software Foundation, Inc.\n"
-msgstr ""
-
-#: version2.c:87
-#, c-format
-msgid ""
-"License GPLv2+: GNU GPL version 2 or later <http://gnu.org/licenses/gpl."
-"html>\n"
-msgstr ""
-
-#: xmalloc.c:91
-#, c-format
-msgid "%s: cannot allocate %lu bytes (%lu bytes allocated)"
-msgstr ""
-
-#: xmalloc.c:93
-#, c-format
-msgid "%s: cannot allocate %lu bytes"
-msgstr ""
-
-#: xmalloc.c:163
-#, c-format
-msgid "%s: %s:%d: cannot allocate %lu bytes (%lu bytes allocated)"
-msgstr ""
-
-#: xmalloc.c:165
-#, c-format
-msgid "%s: %s:%d: cannot allocate %lu bytes"
-msgstr ""
-
-#: builtins.c:43
-msgid "alias [-p] [name[=value] ... ]"
-msgstr ""
-
-#: builtins.c:47
-msgid "unalias [-a] name [name ...]"
-msgstr ""
-
-#: builtins.c:51
-msgid ""
-"bind [-lpvsPVS] [-m keymap] [-f filename] [-q name] [-u name] [-r keyseq] [-"
-"x keyseq:shell-command] [keyseq:readline-function or readline-command]"
-msgstr ""
-
-#: builtins.c:54
-msgid "break [n]"
-msgstr ""
-
-#: builtins.c:56
-msgid "continue [n]"
-msgstr ""
-
-#: builtins.c:58
-msgid "builtin [shell-builtin [arg ...]]"
-msgstr ""
-
-#: builtins.c:61
-msgid "caller [expr]"
-msgstr ""
-
-#: builtins.c:64
-msgid "cd [-L|-P] [dir]"
-msgstr ""
-
-#: builtins.c:66
-msgid "pwd [-LP]"
-msgstr ""
-
-#: builtins.c:68
-msgid ":"
-msgstr ""
-
-#: builtins.c:70
-msgid "true"
-msgstr ""
-
-#: builtins.c:72
-msgid "false"
-msgstr ""
-
-#: builtins.c:74
-msgid "command [-pVv] command [arg ...]"
-msgstr ""
-
-#: builtins.c:76
-msgid "declare [-aAfFilrtux] [-p] [name[=value] ...]"
-msgstr ""
-
-#: builtins.c:78
-msgid "typeset [-aAfFilrtux] [-p] name[=value] ..."
-msgstr ""
-
-#: builtins.c:80
-msgid "local [option] name[=value] ..."
-msgstr ""
-
-#: builtins.c:83
-msgid "echo [-neE] [arg ...]"
-msgstr ""
-
-#: builtins.c:87
-msgid "echo [-n] [arg ...]"
-msgstr ""
-
-#: builtins.c:90
-msgid "enable [-a] [-dnps] [-f filename] [name ...]"
-msgstr ""
-
-#: builtins.c:92
-msgid "eval [arg ...]"
-msgstr ""
-
-#: builtins.c:94
-msgid "getopts optstring name [arg]"
-msgstr ""
-
-#: builtins.c:96
-msgid "exec [-cl] [-a name] [command [arguments ...]] [redirection ...]"
-msgstr ""
-
-#: builtins.c:98
-msgid "exit [n]"
-msgstr ""
-
-#: builtins.c:100
-msgid "logout [n]"
-msgstr ""
-
-#: builtins.c:103
-msgid "fc [-e ename] [-lnr] [first] [last] or fc -s [pat=rep] [command]"
-msgstr ""
-
-#: builtins.c:107
-msgid "fg [job_spec]"
-msgstr ""
-
-#: builtins.c:111
-msgid "bg [job_spec ...]"
-msgstr ""
-
-#: builtins.c:114
-msgid "hash [-lr] [-p pathname] [-dt] [name ...]"
-msgstr ""
-
-#: builtins.c:117
-msgid "help [-dms] [pattern ...]"
-msgstr ""
-
-#: builtins.c:121
-msgid ""
-"history [-c] [-d offset] [n] or history -anrw [filename] or history -ps arg "
-"[arg...]"
-msgstr ""
-
-#: builtins.c:125
-msgid "jobs [-lnprs] [jobspec ...] or jobs -x command [args]"
-msgstr ""
-
-#: builtins.c:129
-msgid "disown [-h] [-ar] [jobspec ...]"
-msgstr ""
-
-#: builtins.c:132
-msgid ""
-"kill [-s sigspec | -n signum | -sigspec] pid | jobspec ... or kill -l "
-"[sigspec]"
-msgstr ""
-
-#: builtins.c:134
-msgid "let arg [arg ...]"
-msgstr ""
-
-#: builtins.c:136
-msgid ""
-"read [-ers] [-a array] [-d delim] [-i text] [-n nchars] [-N nchars] [-p "
-"prompt] [-t timeout] [-u fd] [name ...]"
-msgstr ""
-
-#: builtins.c:138
-msgid "return [n]"
-msgstr ""
-
-#: builtins.c:140
-msgid "set [--abefhkmnptuvxBCHP] [-o option-name] [arg ...]"
-msgstr ""
-
-#: builtins.c:142
-msgid "unset [-f] [-v] [name ...]"
-msgstr ""
-
-#: builtins.c:144
-msgid "export [-fn] [name[=value] ...] or export -p"
-msgstr ""
-
-#: builtins.c:146
-msgid "readonly [-af] [name[=value] ...] or readonly -p"
-msgstr ""
-
-#: builtins.c:148
-msgid "shift [n]"
-msgstr ""
-
-#: builtins.c:150
-msgid "source filename [arguments]"
-msgstr ""
-
-#: builtins.c:152
-msgid ". filename [arguments]"
-msgstr ""
-
-#: builtins.c:155
-msgid "suspend [-f]"
-msgstr ""
-
-#: builtins.c:158
-msgid "test [expr]"
-msgstr ""
-
-#: builtins.c:160
-msgid "[ arg... ]"
-msgstr ""
-
-#: builtins.c:162
-msgid "times"
-msgstr ""
-
-#: builtins.c:164
-msgid "trap [-lp] [[arg] signal_spec ...]"
-msgstr ""
-
-#: builtins.c:166
-msgid "type [-afptP] name [name ...]"
-msgstr ""
-
-#: builtins.c:169
-msgid "ulimit [-SHacdefilmnpqrstuvx] [limit]"
-msgstr ""
-
-#: builtins.c:172
-msgid "umask [-p] [-S] [mode]"
-msgstr ""
-
-#: builtins.c:175
-msgid "wait [id]"
-msgstr ""
-
-#: builtins.c:179
-msgid "wait [pid]"
-msgstr ""
-
-#: builtins.c:182
-msgid "for NAME [in WORDS ... ] ; do COMMANDS; done"
-msgstr ""
-
-#: builtins.c:184
-msgid "for (( exp1; exp2; exp3 )); do COMMANDS; done"
-msgstr ""
-
-#: builtins.c:186
-msgid "select NAME [in WORDS ... ;] do COMMANDS; done"
-msgstr ""
-
-#: builtins.c:188
-msgid "time [-p] pipeline"
-msgstr ""
-
-#: builtins.c:190
-msgid "case WORD in [PATTERN [| PATTERN]...) COMMANDS ;;]... esac"
-msgstr ""
-
-#: builtins.c:192
-msgid ""
-"if COMMANDS; then COMMANDS; [ elif COMMANDS; then COMMANDS; ]... [ else "
-"COMMANDS; ] fi"
-msgstr ""
-
-#: builtins.c:194
-msgid "while COMMANDS; do COMMANDS; done"
-msgstr ""
-
-#: builtins.c:196
-msgid "until COMMANDS; do COMMANDS; done"
-msgstr ""
-
-#: builtins.c:198
-msgid "coproc [NAME] command [redirections]"
-msgstr ""
-
-#: builtins.c:200
-msgid "function name { COMMANDS ; } or name () { COMMANDS ; }"
-msgstr ""
-
-#: builtins.c:202
-msgid "{ COMMANDS ; }"
-msgstr ""
-
-#: builtins.c:204
-msgid "job_spec [&]"
-msgstr ""
-
-#: builtins.c:206
-msgid "(( expression ))"
-msgstr ""
-
-#: builtins.c:208
-msgid "[[ expression ]]"
-msgstr ""
-
-#: builtins.c:210
-msgid "variables - Names and meanings of some shell variables"
-msgstr ""
-
-#: builtins.c:213
-msgid "pushd [-n] [+N | -N | dir]"
-msgstr ""
-
-#: builtins.c:217
-msgid "popd [-n] [+N | -N]"
-msgstr ""
-
-#: builtins.c:221
-msgid "dirs [-clpv] [+N] [-N]"
-msgstr ""
-
-#: builtins.c:224
-msgid "shopt [-pqsu] [-o] [optname ...]"
-msgstr ""
-
-#: builtins.c:226
-msgid "printf [-v var] format [arguments]"
-msgstr ""
-
-#: builtins.c:229
-msgid ""
-"complete [-abcdefgjksuv] [-pr] [-DE] [-o option] [-A action] [-G globpat] [-"
-"W wordlist]  [-F function] [-C command] [-X filterpat] [-P prefix] [-S "
-"suffix] [name ...]"
-msgstr ""
-
-#: builtins.c:233
-msgid ""
-"compgen [-abcdefgjksuv] [-o option]  [-A action] [-G globpat] [-W wordlist]  "
-"[-F function] [-C command] [-X filterpat] [-P prefix] [-S suffix] [word]"
-msgstr ""
-
-#: builtins.c:237
-msgid "compopt [-o|+o option] [-DE] [name ...]"
-msgstr ""
-
-#: builtins.c:240
-msgid ""
-"mapfile [-n count] [-O origin] [-s count] [-t] [-u fd] [-C callback] [-c "
-"quantum] [array]"
-msgstr ""
-
-#: builtins.c:242
-msgid ""
-"readarray [-n count] [-O origin] [-s count] [-t] [-u fd] [-C callback] [-c "
-"quantum] [array]"
-msgstr ""
-
-#: builtins.c:254
-msgid ""
-"Define or display aliases.\n"
-"    \n"
-"    Without arguments, `alias' prints the list of aliases in the reusable\n"
-"    form `alias NAME=VALUE' on standard output.\n"
-"    \n"
-"    Otherwise, an alias is defined for each NAME whose VALUE is given.\n"
-"    A trailing space in VALUE causes the next word to be checked for\n"
-"    alias substitution when the alias is expanded.\n"
-"    \n"
-"    Options:\n"
-"      -p\tPrint all defined aliases in a reusable format\n"
-"    \n"
-"    Exit Status:\n"
-"    alias returns true unless a NAME is supplied for which no alias has "
-"been\n"
-"    defined."
-msgstr ""
-
-#: builtins.c:276
-msgid ""
-"Remove each NAME from the list of defined aliases.\n"
-"    \n"
-"    Options:\n"
-"      -a\tremove all alias definitions.\n"
-"    \n"
-"    Return success unless a NAME is not an existing alias."
-msgstr ""
-
-#: builtins.c:289
-msgid ""
-"Set Readline key bindings and variables.\n"
-"    \n"
-"    Bind a key sequence to a Readline function or a macro, or set a\n"
-"    Readline variable.  The non-option argument syntax is equivalent to\n"
-"    that found in ~/.inputrc, but must be passed as a single argument:\n"
-"    e.g., bind '\"\\C-x\\C-r\": re-read-init-file'.\n"
-"    \n"
-"    Options:\n"
-"      -m  keymap         Use KEYMAP as the keymap for the duration of this\n"
-"                         command.  Acceptable keymap names are emacs,\n"
-"                         emacs-standard, emacs-meta, emacs-ctlx, vi, vi-"
-"move,\n"
-"                         vi-command, and vi-insert.\n"
-"      -l                 List names of functions.\n"
-"      -P                 List function names and bindings.\n"
-"      -p                 List functions and bindings in a form that can be\n"
-"                         reused as input.\n"
-"      -S                 List key sequences that invoke macros and their "
-"values\n"
-"      -s                 List key sequences that invoke macros and their "
-"values\n"
-"                         in a form that can be reused as input.\n"
-"      -V                 List variable names and values\n"
-"      -v                 List variable names and values in a form that can\n"
-"                         be reused as input.\n"
-"      -q  function-name  Query about which keys invoke the named function.\n"
-"      -u  function-name  Unbind all keys which are bound to the named "
-"function.\n"
-"      -r  keyseq         Remove the binding for KEYSEQ.\n"
-"      -f  filename       Read key bindings from FILENAME.\n"
-"      -x  keyseq:shell-command\tCause SHELL-COMMAND to be executed when\n"
-"    \t\t\t\tKEYSEQ is entered.\n"
-"    \n"
-"    Exit Status:\n"
-"    bind returns 0 unless an unrecognized option is given or an error occurs."
-msgstr ""
-
-#: builtins.c:326
-msgid ""
-"Exit for, while, or until loops.\n"
-"    \n"
-"    Exit a FOR, WHILE or UNTIL loop.  If N is specified, break N enclosing\n"
-"    loops.\n"
-"    \n"
-"    Exit Status:\n"
-"    The exit status is 0 unless N is not greater than or equal to 1."
-msgstr ""
-
-#: builtins.c:338
-msgid ""
-"Resume for, while, or until loops.\n"
-"    \n"
-"    Resumes the next iteration of the enclosing FOR, WHILE or UNTIL loop.\n"
-"    If N is specified, resumes the Nth enclosing loop.\n"
-"    \n"
-"    Exit Status:\n"
-"    The exit status is 0 unless N is not greater than or equal to 1."
-msgstr ""
-
-#: builtins.c:350
-msgid ""
-"Execute shell builtins.\n"
-"    \n"
-"    Execute SHELL-BUILTIN with arguments ARGs without performing command\n"
-"    lookup.  This is useful when you wish to reimplement a shell builtin\n"
-"    as a shell function, but need to execute the builtin within the "
-"function.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns the exit status of SHELL-BUILTIN, or false if SHELL-BUILTIN is\n"
-"    not a shell builtin.."
-msgstr ""
-
-#: builtins.c:365
-msgid ""
-"Return the context of the current subroutine call.\n"
-"    \n"
-"    Without EXPR, returns \"$line $filename\".  With EXPR, returns\n"
-"    \"$line $subroutine $filename\"; this extra information can be used to\n"
-"    provide a stack trace.\n"
-"    \n"
-"    The value of EXPR indicates how many call frames to go back before the\n"
-"    current one; the top frame is frame 0.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns 0 unless the shell is not executing a shell function or EXPR\n"
-"    is invalid."
-msgstr ""
-
-#: builtins.c:383
-msgid ""
-"Change the shell working directory.\n"
-"    \n"
-"    Change the current directory to DIR.  The default DIR is the value of "
-"the\n"
-"    HOME shell variable.\n"
-"    \n"
-"    The variable CDPATH defines the search path for the directory "
-"containing\n"
-"    DIR.  Alternative directory names in CDPATH are separated by a colon "
-"(:).\n"
-"    A null directory name is the same as the current directory.  If DIR "
-"begins\n"
-"    with a slash (/), then CDPATH is not used.\n"
-"    \n"
-"    If the directory is not found, and the shell option `cdable_vars' is "
-"set,\n"
-"    the word is assumed to be  a variable name.  If that variable has a "
-"value,\n"
-"    its value is used for DIR.\n"
-"    \n"
-"    Options:\n"
-"        -L\tforce symbolic links to be followed\n"
-"        -P\tuse the physical directory structure without following symbolic\n"
-"    \tlinks\n"
-"    \n"
-"    The default is to follow symbolic links, as if `-L' were specified.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns 0 if the directory is changed; non-zero otherwise."
-msgstr ""
-
-#: builtins.c:411
-msgid ""
-"Print the name of the current working directory.\n"
-"    \n"
-"    Options:\n"
-"      -L\tprint the value of $PWD if it names the current working\n"
-"    \tdirectory\n"
-"      -P\tprint the physical directory, without any symbolic links\n"
-"    \n"
-"    By default, `pwd' behaves as if `-L' were specified.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns 0 unless an invalid option is given or the current directory\n"
-"    cannot be read."
-msgstr ""
-
-#: builtins.c:428
-msgid ""
-"Null command.\n"
-"    \n"
-"    No effect; the command does nothing.\n"
-"    \n"
-"    Exit Status:\n"
-"    Always succeeds."
-msgstr ""
-
-#: builtins.c:439
-msgid ""
-"Return a successful result.\n"
-"    \n"
-"    Exit Status:\n"
-"    Always succeeds."
-msgstr ""
-
-#: builtins.c:448
-msgid ""
-"Return an unsuccessful result.\n"
-"    \n"
-"    Exit Status:\n"
-"    Always fails."
-msgstr ""
-
-#: builtins.c:457
-msgid ""
-"Execute a simple command or display information about commands.\n"
-"    \n"
-"    Runs COMMAND with ARGS suppressing  shell function lookup, or display\n"
-"    information about the specified COMMANDs.  Can be used to invoke "
-"commands\n"
-"    on disk when a function with the same name exists.\n"
-"    \n"
-"    Options:\n"
-"      -p\tuse a default value for PATH that is guaranteed to find all of\n"
-"    \tthe standard utilities\n"
-"      -v\tprint a description of COMMAND similar to the `type' builtin\n"
-"      -V\tprint a more verbose description of each COMMAND\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns exit status of COMMAND, or failure if COMMAND is not found."
-msgstr ""
-
-#: builtins.c:476
-msgid ""
-"Set variable values and attributes.\n"
-"    \n"
-"    Declare variables and give them attributes.  If no NAMEs are given,\n"
-"    display the attributes and values of all variables.\n"
-"    \n"
-"    Options:\n"
-"      -f\trestrict action or display to function names and definitions\n"
-"      -F\trestrict display to function names only (plus line number and\n"
-"    \tsource file when debugging)\n"
-"      -p\tdisplay the attributes and value of each NAME\n"
-"    \n"
-"    Options which set attributes:\n"
-"      -a\tto make NAMEs indexed arrays (if supported)\n"
-"      -A\tto make NAMEs associative arrays (if supported)\n"
-"      -i\tto make NAMEs have the `integer' attribute\n"
-"      -l\tto convert NAMEs to lower case on assignment\n"
-"      -r\tto make NAMEs readonly\n"
-"      -t\tto make NAMEs have the `trace' attribute\n"
-"      -u\tto convert NAMEs to upper case on assignment\n"
-"      -x\tto make NAMEs export\n"
-"    \n"
-"    Using `+' instead of `-' turns off the given attribute.\n"
-"    \n"
-"    Variables with the integer attribute have arithmetic evaluation (see\n"
-"    the `let' command) performed when the variable is assigned a value.\n"
-"    \n"
-"    When used in a function, `declare' makes NAMEs local, as with the "
-"`local'\n"
-"    command.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless an invalid option is supplied or an error occurs."
-msgstr ""
-
-#: builtins.c:512
-msgid ""
-"Set variable values and attributes.\n"
-"    \n"
-"    Obsolete.  See `help declare'."
-msgstr ""
-
-#: builtins.c:520
-msgid ""
-"Define local variables.\n"
-"    \n"
-"    Create a local variable called NAME, and give it VALUE.  OPTION can\n"
-"    be any option accepted by `declare'.\n"
-"    \n"
-"    Local variables can only be used within a function; they are visible\n"
-"    only to the function where they are defined and its children.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless an invalid option is supplied, an error occurs,\n"
-"    or the shell is not executing a function."
-msgstr ""
-
-#: builtins.c:537
-msgid ""
-"Write arguments to the standard output.\n"
-"    \n"
-"    Display the ARGs on the standard output followed by a newline.\n"
-"    \n"
-"    Options:\n"
-"      -n\tdo not append a newline\n"
-"      -e\tenable interpretation of the following backslash escapes\n"
-"      -E\texplicitly suppress interpretation of backslash escapes\n"
-"    \n"
-"    `echo' interprets the following backslash-escaped characters:\n"
-"      \\a\talert (bell)\n"
-"      \\b\tbackspace\n"
-"      \\c\tsuppress further output\n"
-"      \\e\tescape character\n"
-"      \\f\tform feed\n"
-"      \\n\tnew line\n"
-"      \\r\tcarriage return\n"
-"      \\t\thorizontal tab\n"
-"      \\v\tvertical tab\n"
-"      \\\\\tbackslash\n"
-"      \\0nnn\tthe character whose ASCII code is NNN (octal).  NNN can be\n"
-"    \t0 to 3 octal digits\n"
-"      \\xHH\tthe eight-bit character whose value is HH (hexadecimal).  HH\n"
-"    \tcan be one or two hex digits\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless a write error occurs."
-msgstr ""
-
-#: builtins.c:571
-msgid ""
-"Write arguments to the standard output.\n"
-"    \n"
-"    Display the ARGs on the standard output followed by a newline.\n"
-"    \n"
-"    Options:\n"
-"      -n\tdo not append a newline\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless a write error occurs."
-msgstr ""
-
-#: builtins.c:586
-msgid ""
-"Enable and disable shell builtins.\n"
-"    \n"
-"    Enables and disables builtin shell commands.  Disabling allows you to\n"
-"    execute a disk command which has the same name as a shell builtin\n"
-"    without using a full pathname.\n"
-"    \n"
-"    Options:\n"
-"      -a\tprint a list of builtins showing whether or not each is enabled\n"
-"      -n\tdisable each NAME or display a list of disabled builtins\n"
-"      -p\tprint the list of builtins in a reusable format\n"
-"      -s\tprint only the names of Posix `special' builtins\n"
-"    \n"
-"    Options controlling dynamic loading:\n"
-"      -f\tLoad builtin NAME from shared object FILENAME\n"
-"      -d\tRemove a builtin loaded with -f\n"
-"    \n"
-"    Without options, each NAME is enabled.\n"
-"    \n"
-"    To use the `test' found in $PATH instead of the shell builtin\n"
-"    version, type `enable -n test'.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless NAME is not a shell builtin or an error occurs."
-msgstr ""
-
-#: builtins.c:614
-msgid ""
-"Execute arguments as a shell command.\n"
-"    \n"
-"    Combine ARGs into a single string, use the result as input to the "
-"shell,\n"
-"    and execute the resulting commands.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns exit status of command or success if command is null."
-msgstr ""
-
-#: builtins.c:626
-msgid ""
-"Parse option arguments.\n"
-"    \n"
-"    Getopts is used by shell procedures to parse positional parameters\n"
-"    as options.\n"
-"    \n"
-"    OPTSTRING contains the option letters to be recognized; if a letter\n"
-"    is followed by a colon, the option is expected to have an argument,\n"
-"    which should be separated from it by white space.\n"
-"    \n"
-"    Each time it is invoked, getopts will place the next option in the\n"
-"    shell variable $name, initializing name if it does not exist, and\n"
-"    the index of the next argument to be processed into the shell\n"
-"    variable OPTIND.  OPTIND is initialized to 1 each time the shell or\n"
-"    a shell script is invoked.  When an option requires an argument,\n"
-"    getopts places that argument into the shell variable OPTARG.\n"
-"    \n"
-"    getopts reports errors in one of two ways.  If the first character\n"
-"    of OPTSTRING is a colon, getopts uses silent error reporting.  In\n"
-"    this mode, no error messages are printed.  If an invalid option is\n"
-"    seen, getopts places the option character found into OPTARG.  If a\n"
-"    required argument is not found, getopts places a ':' into NAME and\n"
-"    sets OPTARG to the option character found.  If getopts is not in\n"
-"    silent mode, and an invalid option is seen, getopts places '?' into\n"
-"    NAME and unsets OPTARG.  If a required argument is not found, a '?'\n"
-"    is placed in NAME, OPTARG is unset, and a diagnostic message is\n"
-"    printed.\n"
-"    \n"
-"    If the shell variable OPTERR has the value 0, getopts disables the\n"
-"    printing of error messages, even if the first character of\n"
-"    OPTSTRING is not a colon.  OPTERR has the value 1 by default.\n"
-"    \n"
-"    Getopts normally parses the positional parameters ($0 - $9), but if\n"
-"    more arguments are given, they are parsed instead.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success if an option is found; fails if the end of options is\n"
-"    encountered or an error occurs."
-msgstr ""
-
-#: builtins.c:668
-msgid ""
-"Replace the shell with the given command.\n"
-"    \n"
-"    Execute COMMAND, replacing this shell with the specified program.\n"
-"    ARGUMENTS become the arguments to COMMAND.  If COMMAND is not "
-"specified,\n"
-"    any redirections take effect in the current shell.\n"
-"    \n"
-"    Options:\n"
-"      -a name\tpass NAME as the zeroth argument to COMMAND\n"
-"      -c\t\texecute COMMAND with an empty environment\n"
-"      -l\t\tplace a dash in the zeroth argument to COMMAND\n"
-"    \n"
-"    If the command cannot be executed, a non-interactive shell exits, "
-"unless\n"
-"    the shell option `execfail' is set.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless COMMAND is not found or a redirection error "
-"occurs."
-msgstr ""
-
-#: builtins.c:689
-msgid ""
-"Exit the shell.\n"
-"    \n"
-"    Exits the shell with a status of N.  If N is omitted, the exit status\n"
-"    is that of the last command executed."
-msgstr ""
-
-#: builtins.c:698
-msgid ""
-"Exit a login shell.\n"
-"    \n"
-"    Exits a login shell with exit status N.  Returns an error if not "
-"executed\n"
-"    in a login shell."
-msgstr ""
-
-#: builtins.c:708
-msgid ""
-"Display or execute commands from the history list.\n"
-"    \n"
-"    fc is used to list or edit and re-execute commands from the history "
-"list.\n"
-"    FIRST and LAST can be numbers specifying the range, or FIRST can be a\n"
-"    string, which means the most recent command beginning with that\n"
-"    string.\n"
-"    \n"
-"    Options:\n"
-"      -e ENAME\tselect which editor to use.  Default is FCEDIT, then "
-"EDITOR,\n"
-"    \t\tthen vi\n"
-"      -l \tlist lines instead of editing\n"
-"      -n\tomit line numbers when listing\n"
-"      -r\treverse the order of the lines (newest listed first)\n"
-"    \n"
-"    With the `fc -s [pat=rep ...] [command]' format, COMMAND is\n"
-"    re-executed after the substitution OLD=NEW is performed.\n"
-"    \n"
-"    A useful alias to use with this is r='fc -s', so that typing `r cc'\n"
-"    runs the last command beginning with `cc' and typing `r' re-executes\n"
-"    the last command.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success or status of executed command; non-zero if an error "
-"occurs."
-msgstr ""
-
-#: builtins.c:738
-msgid ""
-"Move job to the foreground.\n"
-"    \n"
-"    Place the job identified by JOB_SPEC in the foreground, making it the\n"
-"    current job.  If JOB_SPEC is not present, the shell's notion of the\n"
-"    current job is used.\n"
-"    \n"
-"    Exit Status:\n"
-"    Status of command placed in foreground, or failure if an error occurs."
-msgstr ""
-
-#: builtins.c:753
-msgid ""
-"Move jobs to the background.\n"
-"    \n"
-"    Place the jobs identified by each JOB_SPEC in the background, as if "
-"they\n"
-"    had been started with `&'.  If JOB_SPEC is not present, the shell's "
-"notion\n"
-"    of the current job is used.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless job control is not enabled or an error occurs."
-msgstr ""
-
-#: builtins.c:767
-msgid ""
-"Remember or display program locations.\n"
-"    \n"
-"    Determine and remember the full pathname of each command NAME.  If\n"
-"    no arguments are given, information about remembered commands is "
-"displayed.\n"
-"    \n"
-"    Options:\n"
-"      -d\t\tforget the remembered location of each NAME\n"
-"      -l\t\tdisplay in a format that may be reused as input\n"
-"      -p pathname\tuse PATHNAME is the full pathname of NAME\n"
-"      -r\t\tforget all remembered locations\n"
-"      -t\t\tprint the remembered location of each NAME, preceding\n"
-"    \t\teach location with the corresponding NAME if multiple\n"
-"    \t\tNAMEs are given\n"
-"    Arguments:\n"
-"      NAME\t\tEach NAME is searched for in $PATH and added to the list\n"
-"    \t\tof remembered commands.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless NAME is not found or an invalid option is given."
-msgstr ""
-
-#: builtins.c:792
-msgid ""
-"Display information about builtin commands.\n"
-"    \n"
-"    Displays brief summaries of builtin commands.  If PATTERN is\n"
-"    specified, gives detailed help on all commands matching PATTERN,\n"
-"    otherwise the list of help topics is printed.\n"
-"    \n"
-"    Options:\n"
-"      -d\toutput short description for each topic\n"
-"      -m\tdisplay usage in pseudo-manpage format\n"
-"      -s\toutput only a short usage synopsis for each topic matching\n"
-"    \tPATTERN\n"
-"    \n"
-"    Arguments:\n"
-"      PATTERN\tPattern specifiying a help topic\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless PATTERN is not found or an invalid option is "
-"given."
-msgstr ""
-
-#: builtins.c:816
-msgid ""
-"Display or manipulate the history list.\n"
-"    \n"
-"    Display the history list with line numbers, prefixing each modified\n"
-"    entry with a `*'.  An argument of N lists only the last N entries.\n"
-"    \n"
-"    Options:\n"
-"      -c\tclear the history list by deleting all of the entries\n"
-"      -d offset\tdelete the history entry at offset OFFSET.\n"
-"    \n"
-"      -a\tappend history lines from this session to the history file\n"
-"      -n\tread all history lines not already read from the history file\n"
-"      -r\tread the history file and append the contents to the history\n"
-"    \tlist\n"
-"      -w\twrite the current history to the history file\n"
-"    \tand append them to the history list\n"
-"    \n"
-"      -p\tperform history expansion on each ARG and display the result\n"
-"    \twithout storing it in the history list\n"
-"      -s\tappend the ARGs to the history list as a single entry\n"
-"    \n"
-"    If FILENAME is given, it is used as the history file.  Otherwise,\n"
-"    if $HISTFILE has a value, that is used, else ~/.bash_history.\n"
-"    \n"
-"    If the $HISTTIMEFORMAT variable is set and not null, its value is used\n"
-"    as a format string for strftime(3) to print the time stamp associated\n"
-"    with each displayed history entry.  No time stamps are printed "
-"otherwise.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless an invalid option is given or an error occurs."
-msgstr ""
-
-#: builtins.c:852
-msgid ""
-"Display status of jobs.\n"
-"    \n"
-"    Lists the active jobs.  JOBSPEC restricts output to that job.\n"
-"    Without options, the status of all active jobs is displayed.\n"
-"    \n"
-"    Options:\n"
-"      -l\tlists process IDs in addition to the normal information\n"
-"      -n\tlist only processes that have changed status since the last\n"
-"    \tnotification\n"
-"      -p\tlists process IDs only\n"
-"      -r\trestrict output to running jobs\n"
-"      -s\trestrict output to stopped jobs\n"
-"    \n"
-"    If -x is supplied, COMMAND is run after all job specifications that\n"
-"    appear in ARGS have been replaced with the process ID of that job's\n"
-"    process group leader.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless an invalid option is given or an error occurs.\n"
-"    If -x is used, returns the exit status of COMMAND."
-msgstr ""
-
-#: builtins.c:879
-msgid ""
-"Remove jobs from current shell.\n"
-"    \n"
-"    Removes each JOBSPEC argument from the table of active jobs.  Without\n"
-"    any JOBSPECs, the shell uses its notion of the current job.\n"
-"    \n"
-"    Options:\n"
-"      -a\tremove all jobs if JOBSPEC is not supplied\n"
-"      -h\tmark each JOBSPEC so that SIGHUP is not sent to the job if the\n"
-"    \tshell receives a SIGHUP\n"
-"      -r\tremove only running jobs\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless an invalid option or JOBSPEC is given."
-msgstr ""
-
-#: builtins.c:898
-msgid ""
-"Send a signal to a job.\n"
-"    \n"
-"    Send the processes identified by PID or JOBSPEC the signal named by\n"
-"    SIGSPEC or SIGNUM.  If neither SIGSPEC nor SIGNUM is present, then\n"
-"    SIGTERM is assumed.\n"
-"    \n"
-"    Options:\n"
-"      -s sig\tSIG is a signal name\n"
-"      -n sig\tSIG is a signal number\n"
-"      -l\tlist the signal names; if arguments follow `-l' they are\n"
-"    \tassumed to be signal numbers for which names should be listed\n"
-"    \n"
-"    Kill is a shell builtin for two reasons: it allows job IDs to be used\n"
-"    instead of process IDs, and allows processes to be killed if the limit\n"
-"    on processes that you can create is reached.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless an invalid option is given or an error occurs."
-msgstr ""
-
-#: builtins.c:921
-msgid ""
-"Evaluate arithmetic expressions.\n"
-"    \n"
-"    Evaluate each ARG as an arithmetic expression.  Evaluation is done in\n"
-"    fixed-width integers with no check for overflow, though division by 0\n"
-"    is trapped and flagged as an error.  The following list of operators is\n"
-"    grouped into levels of equal-precedence operators.  The levels are "
-"listed\n"
-"    in order of decreasing precedence.\n"
-"    \n"
-"    \tid++, id--\tvariable post-increment, post-decrement\n"
-"    \t++id, --id\tvariable pre-increment, pre-decrement\n"
-"    \t-, +\t\tunary minus, plus\n"
-"    \t!, ~\t\tlogical and bitwise negation\n"
-"    \t**\t\texponentiation\n"
-"    \t*, /, %\t\tmultiplication, division, remainder\n"
-"    \t+, -\t\taddition, subtraction\n"
-"    \t<<, >>\t\tleft and right bitwise shifts\n"
-"    \t<=, >=, <, >\tcomparison\n"
-"    \t==, !=\t\tequality, inequality\n"
-"    \t&\t\tbitwise AND\n"
-"    \t^\t\tbitwise XOR\n"
-"    \t|\t\tbitwise OR\n"
-"    \t&&\t\tlogical AND\n"
-"    \t||\t\tlogical OR\n"
-"    \texpr ? expr : expr\n"
-"    \t\t\tconditional operator\n"
-"    \t=, *=, /=, %=,\n"
-"    \t+=, -=, <<=, >>=,\n"
-"    \t&=, ^=, |=\tassignment\n"
-"    \n"
-"    Shell variables are allowed as operands.  The name of the variable\n"
-"    is replaced by its value (coerced to a fixed-width integer) within\n"
-"    an expression.  The variable need not have its integer attribute\n"
-"    turned on to be used in an expression.\n"
-"    \n"
-"    Operators are evaluated in order of precedence.  Sub-expressions in\n"
-"    parentheses are evaluated first and may override the precedence\n"
-"    rules above.\n"
-"    \n"
-"    Exit Status:\n"
-"    If the last ARG evaluates to 0, let returns 1; let returns 0 otherwise.."
-msgstr ""
-
-#: builtins.c:966
-msgid ""
-"Read a line from the standard input and split it into fields.\n"
-"    \n"
-"    Reads a single line from the standard input, or from file descriptor FD\n"
-"    if the -u option is supplied.  The line is split into fields as with "
-"word\n"
-"    splitting, and the first word is assigned to the first NAME, the second\n"
-"    word to the second NAME, and so on, with any leftover words assigned to\n"
-"    the last NAME.  Only the characters found in $IFS are recognized as "
-"word\n"
-"    delimiters.\n"
-"    \n"
-"    If no NAMEs are supplied, the line read is stored in the REPLY "
-"variable.\n"
-"    \n"
-"    Options:\n"
-"      -a array\tassign the words read to sequential indices of the array\n"
-"    \t\tvariable ARRAY, starting at zero\n"
-"      -d delim\tcontinue until the first character of DELIM is read, rather\n"
-"    \t\tthan newline\n"
-"      -e\t\tuse Readline to obtain the line in an interactive shell\n"
-"      -i text\tUse TEXT as the initial text for Readline\n"
-"      -n nchars\treturn after reading NCHARS characters rather than waiting\n"
-"    \t\tfor a newline, but honor a delimiter if fewer than NCHARS\n"
-"    \t\tcharacters are read before the delimiter\n"
-"      -N nchars\treturn only after reading exactly NCHARS characters, "
-"unless\n"
-"    \t\tEOF is encountered or read times out, ignoring any delimiter\n"
-"      -p prompt\toutput the string PROMPT without a trailing newline before\n"
-"    \t\tattempting to read\n"
-"      -r\t\tdo not allow backslashes to escape any characters\n"
-"      -s\t\tdo not echo input coming from a terminal\n"
-"      -t timeout\ttime out and return failure if a complete line of input "
-"is\n"
-"    \t\tnot read withint TIMEOUT seconds.  The value of the TMOUT\n"
-"    \t\tvariable is the default timeout.  TIMEOUT may be a\n"
-"    \t\tfractional number.  If TIMEOUT is 0, read returns success only\n"
-"    \t\tif input is available on the specified file descriptor.  The\n"
-"    \t\texit status is greater than 128 if the timeout is exceeded\n"
-"      -u fd\t\tread from file descriptor FD instead of the standard input\n"
-"    \n"
-"    Exit Status:\n"
-"    The return code is zero, unless end-of-file is encountered, read times "
-"out,\n"
-"    or an invalid file descriptor is supplied as the argument to -u."
-msgstr ""
-
-#: builtins.c:1009
-msgid ""
-"Return from a shell function.\n"
-"    \n"
-"    Causes a function or sourced script to exit with the return value\n"
-"    specified by N.  If N is omitted, the return status is that of the\n"
-"    last command executed within the function or script.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns N, or failure if the shell is not executing a function or script."
-msgstr ""
-
-#: builtins.c:1022
-msgid ""
-"Set or unset values of shell options and positional parameters.\n"
-"    \n"
-"    Change the value of shell attributes and positional parameters, or\n"
-"    display the names and values of shell variables.\n"
-"    \n"
-"    Options:\n"
-"      -a  Mark variables which are modified or created for export.\n"
-"      -b  Notify of job termination immediately.\n"
-"      -e  Exit immediately if a command exits with a non-zero status.\n"
-"      -f  Disable file name generation (globbing).\n"
-"      -h  Remember the location of commands as they are looked up.\n"
-"      -k  All assignment arguments are placed in the environment for a\n"
-"          command, not just those that precede the command name.\n"
-"      -m  Job control is enabled.\n"
-"      -n  Read commands but do not execute them.\n"
-"      -o option-name\n"
-"          Set the variable corresponding to option-name:\n"
-"              allexport    same as -a\n"
-"              braceexpand  same as -B\n"
-"              emacs        use an emacs-style line editing interface\n"
-"              errexit      same as -e\n"
-"              errtrace     same as -E\n"
-"              functrace    same as -T\n"
-"              hashall      same as -h\n"
-"              histexpand   same as -H\n"
-"              history      enable command history\n"
-"              ignoreeof    the shell will not exit upon reading EOF\n"
-"              interactive-comments\n"
-"                           allow comments to appear in interactive commands\n"
-"              keyword      same as -k\n"
-"              monitor      same as -m\n"
-"              noclobber    same as -C\n"
-"              noexec       same as -n\n"
-"              noglob       same as -f\n"
-"              nolog        currently accepted but ignored\n"
-"              notify       same as -b\n"
-"              nounset      same as -u\n"
-"              onecmd       same as -t\n"
-"              physical     same as -P\n"
-"              pipefail     the return value of a pipeline is the status of\n"
-"                           the last command to exit with a non-zero status,\n"
-"                           or zero if no command exited with a non-zero "
-"status\n"
-"              posix        change the behavior of bash where the default\n"
-"                           operation differs from the Posix standard to\n"
-"                           match the standard\n"
-"              privileged   same as -p\n"
-"              verbose      same as -v\n"
-"              vi           use a vi-style line editing interface\n"
-"              xtrace       same as -x\n"
-"      -p  Turned on whenever the real and effective user ids do not match.\n"
-"          Disables processing of the $ENV file and importing of shell\n"
-"          functions.  Turning this option off causes the effective uid and\n"
-"          gid to be set to the real uid and gid.\n"
-"      -t  Exit after reading and executing one command.\n"
-"      -u  Treat unset variables as an error when substituting.\n"
-"      -v  Print shell input lines as they are read.\n"
-"      -x  Print commands and their arguments as they are executed.\n"
-"      -B  the shell will perform brace expansion\n"
-"      -C  If set, disallow existing regular files to be overwritten\n"
-"          by redirection of output.\n"
-"      -E  If set, the ERR trap is inherited by shell functions.\n"
-"      -H  Enable ! style history substitution.  This flag is on\n"
-"          by default when the shell is interactive.\n"
-"      -P  If set, do not follow symbolic links when executing commands\n"
-"          such as cd which change the current directory.\n"
-"      -T  If set, the DEBUG trap is inherited by shell functions.\n"
-"      -   Assign any remaining arguments to the positional parameters.\n"
-"          The -x and -v options are turned off.\n"
-"    \n"
-"    Using + rather than - causes these flags to be turned off.  The\n"
-"    flags can also be used upon invocation of the shell.  The current\n"
-"    set of flags may be found in $-.  The remaining n ARGs are positional\n"
-"    parameters and are assigned, in order, to $1, $2, .. $n.  If no\n"
-"    ARGs are given, all shell variables are printed.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless an invalid option is given."
-msgstr ""
-
-#: builtins.c:1104
-msgid ""
-"Unset values and attributes of shell variables and functions.\n"
-"    \n"
-"    For each NAME, remove the corresponding variable or function.\n"
-"    \n"
-"    Options:\n"
-"      -f\ttreat each NAME as a shell function\n"
-"      -v\ttreat each NAME as a shell variable\n"
-"    \n"
-"    Without options, unset first tries to unset a variable, and if that "
-"fails,\n"
-"    tries to unset a function.\n"
-"    \n"
-"    Some variables cannot be unset; also see `readonly'.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless an invalid option is given or a NAME is read-only."
-msgstr ""
-
-#: builtins.c:1124
-msgid ""
-"Set export attribute for shell variables.\n"
-"    \n"
-"    Marks each NAME for automatic export to the environment of subsequently\n"
-"    executed commands.  If VALUE is supplied, assign VALUE before "
-"exporting.\n"
-"    \n"
-"    Options:\n"
-"      -f\trefer to shell functions\n"
-"      -n\tremove the export property from each NAME\n"
-"      -p\tdisplay a list of all exported variables and functions\n"
-"    \n"
-"    An argument of `--' disables further option processing.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless an invalid option is given or NAME is invalid."
-msgstr ""
-
-#: builtins.c:1143
-msgid ""
-"Mark shell variables as unchangeable.\n"
-"    \n"
-"    Mark each NAME as read-only; the values of these NAMEs may not be\n"
-"    changed by subsequent assignment.  If VALUE is supplied, assign VALUE\n"
-"    before marking as read-only.\n"
-"    \n"
-"    Options:\n"
-"      -a\trefer to indexed array variables\n"
-"      -A\trefer to associative array variables\n"
-"      -f\trefer to shell functions\n"
-"      -p\tdisplay a list of all readonly variables and functions\n"
-"    \n"
-"    An argument of `--' disables further option processing.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless an invalid option is given or NAME is invalid."
-msgstr ""
-
-#: builtins.c:1164
-msgid ""
-"Shift positional parameters.\n"
-"    \n"
-"    Rename the positional parameters $N+1,$N+2 ... to $1,$2 ...  If N is\n"
-"    not given, it is assumed to be 1.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless N is negative or greater than $#."
-msgstr ""
-
-#: builtins.c:1176 builtins.c:1191
-msgid ""
-"Execute commands from a file in the current shell.\n"
-"    \n"
-"    Read and execute commands from FILENAME in the current shell.  The\n"
-"    entries in $PATH are used to find the directory containing FILENAME.\n"
-"    If any ARGUMENTS are supplied, they become the positional parameters\n"
-"    when FILENAME is executed.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns the status of the last command executed in FILENAME; fails if\n"
-"    FILENAME cannot be read."
-msgstr ""
-
-#: builtins.c:1207
-msgid ""
-"Suspend shell execution.\n"
-"    \n"
-"    Suspend the execution of this shell until it receives a SIGCONT signal.\n"
-"    Unless forced, login shells cannot be suspended.\n"
-"    \n"
-"    Options:\n"
-"      -f\tforce the suspend, even if the shell is a login shell\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless job control is not enabled or an error occurs."
-msgstr ""
-
-#: builtins.c:1223
-msgid ""
-"Evaluate conditional expression.\n"
-"    \n"
-"    Exits with a status of 0 (true) or 1 (false) depending on\n"
-"    the evaluation of EXPR.  Expressions may be unary or binary.  Unary\n"
-"    expressions are often used to examine the status of a file.  There\n"
-"    are string operators as well, and numeric comparison operators.\n"
-"    \n"
-"    File operators:\n"
-"    \n"
-"      -a FILE        True if file exists.\n"
-"      -b FILE        True if file is block special.\n"
-"      -c FILE        True if file is character special.\n"
-"      -d FILE        True if file is a directory.\n"
-"      -e FILE        True if file exists.\n"
-"      -f FILE        True if file exists and is a regular file.\n"
-"      -g FILE        True if file is set-group-id.\n"
-"      -h FILE        True if file is a symbolic link.\n"
-"      -L FILE        True if file is a symbolic link.\n"
-"      -k FILE        True if file has its `sticky' bit set.\n"
-"      -p FILE        True if file is a named pipe.\n"
-"      -r FILE        True if file is readable by you.\n"
-"      -s FILE        True if file exists and is not empty.\n"
-"      -S FILE        True if file is a socket.\n"
-"      -t FD          True if FD is opened on a terminal.\n"
-"      -u FILE        True if the file is set-user-id.\n"
-"      -w FILE        True if the file is writable by you.\n"
-"      -x FILE        True if the file is executable by you.\n"
-"      -O FILE        True if the file is effectively owned by you.\n"
-"      -G FILE        True if the file is effectively owned by your group.\n"
-"      -N FILE        True if the file has been modified since it was last "
-"read.\n"
-"    \n"
-"      FILE1 -nt FILE2  True if file1 is newer than file2 (according to\n"
-"                       modification date).\n"
-"    \n"
-"      FILE1 -ot FILE2  True if file1 is older than file2.\n"
-"    \n"
-"      FILE1 -ef FILE2  True if file1 is a hard link to file2.\n"
-"    \n"
-"    String operators:\n"
-"    \n"
-"      -z STRING      True if string is empty.\n"
-"    \n"
-"      -n STRING\n"
-"         STRING      True if string is not empty.\n"
-"    \n"
-"      STRING1 = STRING2\n"
-"                     True if the strings are equal.\n"
-"      STRING1 != STRING2\n"
-"                     True if the strings are not equal.\n"
-"      STRING1 < STRING2\n"
-"                     True if STRING1 sorts before STRING2 "
-"lexicographically.\n"
-"      STRING1 > STRING2\n"
-"                     True if STRING1 sorts after STRING2 lexicographically.\n"
-"    \n"
-"    Other operators:\n"
-"    \n"
-"      -o OPTION      True if the shell option OPTION is enabled.\n"
-"      ! EXPR         True if expr is false.\n"
-"      EXPR1 -a EXPR2 True if both expr1 AND expr2 are true.\n"
-"      EXPR1 -o EXPR2 True if either expr1 OR expr2 is true.\n"
-"    \n"
-"      arg1 OP arg2   Arithmetic tests.  OP is one of -eq, -ne,\n"
-"                     -lt, -le, -gt, or -ge.\n"
-"    \n"
-"    Arithmetic binary operators return true if ARG1 is equal, not-equal,\n"
-"    less-than, less-than-or-equal, greater-than, or greater-than-or-equal\n"
-"    than ARG2.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success if EXPR evaluates to true; fails if EXPR evaluates to\n"
-"    false or an invalid argument is given."
-msgstr ""
-
-#: builtins.c:1299
-msgid ""
-"Evaluate conditional expression.\n"
-"    \n"
-"    This is a synonym for the \"test\" builtin, but the last argument must\n"
-"    be a literal `]', to match the opening `['."
-msgstr ""
-
-#: builtins.c:1308
-msgid ""
-"Display process times.\n"
-"    \n"
-"    Prints the accumulated user and system times for the shell and all of "
-"its\n"
-"    child processes.\n"
-"    \n"
-"    Exit Status:\n"
-"    Always succeeds."
-msgstr ""
-
-#: builtins.c:1320
-msgid ""
-"Trap signals and other events.\n"
-"    \n"
-"    Defines and activates handlers to be run when the shell receives "
-"signals\n"
-"    or other conditions.\n"
-"    \n"
-"    ARG is a command to be read and executed when the shell receives the\n"
-"    signal(s) SIGNAL_SPEC.  If ARG is absent (and a single SIGNAL_SPEC\n"
-"    is supplied) or `-', each specified signal is reset to its original\n"
-"    value.  If ARG is the null string each SIGNAL_SPEC is ignored by the\n"
-"    shell and by the commands it invokes.\n"
-"    \n"
-"    If a SIGNAL_SPEC is EXIT (0) ARG is executed on exit from the shell.  "
-"If\n"
-"    a SIGNAL_SPEC is DEBUG, ARG is executed before every simple command.\n"
-"    \n"
-"    If no arguments are supplied, trap prints the list of commands "
-"associated\n"
-"    with each signal.\n"
-"    \n"
-"    Options:\n"
-"      -l\tprint a list of signal names and their corresponding numbers\n"
-"      -p\tdisplay the trap commands associated with each SIGNAL_SPEC\n"
-"    \n"
-"    Each SIGNAL_SPEC is either a signal name in <signal.h> or a signal "
-"number.\n"
-"    Signal names are case insensitive and the SIG prefix is optional.  A\n"
-"    signal may be sent to the shell with \"kill -signal $$\".\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless a SIGSPEC is invalid or an invalid option is "
-"given."
-msgstr ""
-
-#: builtins.c:1352
-msgid ""
-"Display information about command type.\n"
-"    \n"
-"    For each NAME, indicate how it would be interpreted if used as a\n"
-"    command name.\n"
-"    \n"
-"    Options:\n"
-"      -a\tdisplay all locations containing an executable named NAME;\n"
-"    \tincludes aliases, builtins, and functions, if and only if\n"
-"    \tthe `-p' option is not also used\n"
-"      -f\tsuppress shell function lookup\n"
-"      -P\tforce a PATH search for each NAME, even if it is an alias,\n"
-"    \tbuiltin, or function, and returns the name of the disk file\n"
-"    \tthat would be executed\n"
-"      -p\treturns either the name of the disk file that would be executed,\n"
-"    \tor nothing if `type -t NAME' would not return `file'.\n"
-"      -t\toutput a single word which is one of `alias', `keyword',\n"
-"    \t`function', `builtin', `file' or `', if NAME is an alias, shell\n"
-"    \treserved word, shell function, shell builtin, disk file, or not\n"
-"    \tfound, respectively\n"
-"    \n"
-"    Arguments:\n"
-"      NAME\tCommand name to be interpreted.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success if all of the NAMEs are found; fails if any are not "
-"found."
-msgstr ""
-
-#: builtins.c:1383
-msgid ""
-"Modify shell resource limits.\n"
-"    \n"
-"    Provides control over the resources available to the shell and "
-"processes\n"
-"    it creates, on systems that allow such control.\n"
-"    \n"
-"    Options:\n"
-"      -S\tuse the `soft' resource limit\n"
-"      -H\tuse the `hard' resource limit\n"
-"      -a\tall current limits are reported\n"
-"      -b\tthe socket buffer size\n"
-"      -c\tthe maximum size of core files created\n"
-"      -d\tthe maximum size of a process's data segment\n"
-"      -e\tthe maximum scheduling priority (`nice')\n"
-"      -f\tthe maximum size of files written by the shell and its children\n"
-"      -i\tthe maximum number of pending signals\n"
-"      -l\tthe maximum size a process may lock into memory\n"
-"      -m\tthe maximum resident set size\n"
-"      -n\tthe maximum number of open file descriptors\n"
-"      -p\tthe pipe buffer size\n"
-"      -q\tthe maximum number of bytes in POSIX message queues\n"
-"      -r\tthe maximum real-time scheduling priority\n"
-"      -s\tthe maximum stack size\n"
-"      -t\tthe maximum amount of cpu time in seconds\n"
-"      -u\tthe maximum number of user processes\n"
-"      -v\tthe size of virtual memory\n"
-"      -x\tthe maximum number of file locks\n"
-"    \n"
-"    If LIMIT is given, it is the new value of the specified resource; the\n"
-"    special LIMIT values `soft', `hard', and `unlimited' stand for the\n"
-"    current soft limit, the current hard limit, and no limit, respectively.\n"
-"    Otherwise, the current value of the specified resource is printed.  If\n"
-"    no option is given, then -f is assumed.\n"
-"    \n"
-"    Values are in 1024-byte increments, except for -t, which is in seconds,\n"
-"    -p, which is in increments of 512 bytes, and -u, which is an unscaled\n"
-"    number of processes.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless an invalid option is supplied or an error occurs."
-msgstr ""
-
-#: builtins.c:1428
-msgid ""
-"Display or set file mode mask.\n"
-"    \n"
-"    Sets the user file-creation mask to MODE.  If MODE is omitted, prints\n"
-"    the current value of the mask.\n"
-"    \n"
-"    If MODE begins with a digit, it is interpreted as an octal number;\n"
-"    otherwise it is a symbolic mode string like that accepted by chmod(1).\n"
-"    \n"
-"    Options:\n"
-"      -p\tif MODE is omitted, output in a form that may be reused as input\n"
-"      -S\tmakes the output symbolic; otherwise an octal number is output\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless MODE is invalid or an invalid option is given."
-msgstr ""
-
-#: builtins.c:1448
-msgid ""
-"Wait for job completion and return exit status.\n"
-"    \n"
-"    Waits for the process identified by ID, which may be a process ID or a\n"
-"    job specification, and reports its termination status.  If ID is not\n"
-"    given, waits for all currently active child processes, and the return\n"
-"    status is zero.  If ID is a a job specification, waits for all "
-"processes\n"
-"    in the job's pipeline.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns the status of ID; fails if ID is invalid or an invalid option "
-"is\n"
-"    given."
-msgstr ""
-
-#: builtins.c:1466
-msgid ""
-"Wait for process completion and return exit status.\n"
-"    \n"
-"    Waits for the specified process and reports its termination status.  If\n"
-"    PID is not given, all currently active child processes are waited for,\n"
-"    and the return code is zero.  PID must be a process ID.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns the status of ID; fails if ID is invalid or an invalid option "
-"is\n"
-"    given."
-msgstr ""
-
-#: builtins.c:1481
-msgid ""
-"Execute commands for each member in a list.\n"
-"    \n"
-"    The `for' loop executes a sequence of commands for each member in a\n"
-"    list of items.  If `in WORDS ...;' is not present, then `in \"$@\"' is\n"
-"    assumed.  For each element in WORDS, NAME is set to that element, and\n"
-"    the COMMANDS are executed.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns the status of the last command executed."
-msgstr ""
-
-#: builtins.c:1495
-msgid ""
-"Arithmetic for loop.\n"
-"    \n"
-"    Equivalent to\n"
-"    \t(( EXP1 ))\n"
-"    \twhile (( EXP2 )); do\n"
-"    \t\tCOMMANDS\n"
-"    \t\t(( EXP3 ))\n"
-"    \tdone\n"
-"    EXP1, EXP2, and EXP3 are arithmetic expressions.  If any expression is\n"
-"    omitted, it behaves as if it evaluates to 1.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns the status of the last command executed."
-msgstr ""
-
-#: builtins.c:1513
-msgid ""
-"Select words from a list and execute commands.\n"
-"    \n"
-"    The WORDS are expanded, generating a list of words.  The\n"
-"    set of expanded words is printed on the standard error, each\n"
-"    preceded by a number.  If `in WORDS' is not present, `in \"$@\"'\n"
-"    is assumed.  The PS3 prompt is then displayed and a line read\n"
-"    from the standard input.  If the line consists of the number\n"
-"    corresponding to one of the displayed words, then NAME is set\n"
-"    to that word.  If the line is empty, WORDS and the prompt are\n"
-"    redisplayed.  If EOF is read, the command completes.  Any other\n"
-"    value read causes NAME to be set to null.  The line read is saved\n"
-"    in the variable REPLY.  COMMANDS are executed after each selection\n"
-"    until a break command is executed.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns the status of the last command executed."
-msgstr ""
-
-#: builtins.c:1534
-msgid ""
-"Report time consumed by pipeline's execution.\n"
-"    \n"
-"    Execute PIPELINE and print a summary of the real time, user CPU time,\n"
-"    and system CPU time spent executing PIPELINE when it terminates.\n"
-"    \n"
-"    Options:\n"
-"      -p\tprint the timing summary in the portable Posix format\n"
-"    \n"
-"    The value of the TIMEFORMAT variable is used as the output format.\n"
-"    \n"
-"    Exit Status:\n"
-"    The return status is the return status of PIPELINE."
-msgstr ""
-
-#: builtins.c:1551
-msgid ""
-"Execute commands based on pattern matching.\n"
-"    \n"
-"    Selectively execute COMMANDS based upon WORD matching PATTERN.  The\n"
-"    `|' is used to separate multiple patterns.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns the status of the last command executed."
-msgstr ""
-
-#: builtins.c:1563
-msgid ""
-"Execute commands based on conditional.\n"
-"    \n"
-"    The `if COMMANDS' list is executed.  If its exit status is zero, then "
-"the\n"
-"    `then COMMANDS' list is executed.  Otherwise, each `elif COMMANDS' list "
-"is\n"
-"    executed in turn, and if its exit status is zero, the corresponding\n"
-"    `then COMMANDS' list is executed and the if command completes.  "
-"Otherwise,\n"
-"    the `else COMMANDS' list is executed, if present.  The exit status of "
-"the\n"
-"    entire construct is the exit status of the last command executed, or "
-"zero\n"
-"    if no condition tested true.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns the status of the last command executed."
-msgstr ""
-
-#: builtins.c:1580
-msgid ""
-"Execute commands as long as a test succeeds.\n"
-"    \n"
-"    Expand and execute COMMANDS as long as the final command in the\n"
-"    `while' COMMANDS has an exit status of zero.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns the status of the last command executed."
-msgstr ""
-
-#: builtins.c:1592
-msgid ""
-"Execute commands as long as a test does not succeed.\n"
-"    \n"
-"    Expand and execute COMMANDS as long as the final command in the\n"
-"    `until' COMMANDS has an exit status which is not zero.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns the status of the last command executed."
-msgstr ""
-
-#: builtins.c:1604
-msgid ""
-"Create a coprocess named NAME.\n"
-"    \n"
-"    Execute COMMAND asynchronously, with the standard output and standard\n"
-"    input of the command connected via a pipe to file descriptors assigned\n"
-"    to indices 0 and 1 of an array variable NAME in the executing shell.\n"
-"    The default NAME is \"COPROC\".\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns the exit status of COMMAND."
-msgstr ""
-
-#: builtins.c:1618
-msgid ""
-"Define shell function.\n"
-"    \n"
-"    Create a shell function named NAME.  When invoked as a simple command,\n"
-"    NAME runs COMMANDs in the calling shell's context.  When NAME is "
-"invoked,\n"
-"    the arguments are passed to the function as $1...$n, and the function's\n"
-"    name is in $FUNCNAME.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless NAME is readonly."
-msgstr ""
-
-#: builtins.c:1632
-msgid ""
-"Group commands as a unit.\n"
-"    \n"
-"    Run a set of commands in a group.  This is one way to redirect an\n"
-"    entire set of commands.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns the status of the last command executed."
-msgstr ""
-
-#: builtins.c:1644
-msgid ""
-"Resume job in foreground.\n"
-"    \n"
-"    Equivalent to the JOB_SPEC argument to the `fg' command.  Resume a\n"
-"    stopped or background job.  JOB_SPEC can specify either a job name\n"
-"    or a job number.  Following JOB_SPEC with a `&' places the job in\n"
-"    the background, as if the job specification had been supplied as an\n"
-"    argument to `bg'.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns the status of the resumed job."
-msgstr ""
-
-#: builtins.c:1659
-msgid ""
-"Evaluate arithmetic expression.\n"
-"    \n"
-"    The EXPRESSION is evaluated according to the rules for arithmetic\n"
-"    evaluation.  Equivalent to \"let EXPRESSION\".\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns 1 if EXPRESSION evaluates to 0; returns 0 otherwise."
-msgstr ""
-
-#: builtins.c:1671
-msgid ""
-"Execute conditional command.\n"
-"    \n"
-"    Returns a status of 0 or 1 depending on the evaluation of the "
-"conditional\n"
-"    expression EXPRESSION.  Expressions are composed of the same primaries "
-"used\n"
-"    by the `test' builtin, and may be combined using the following "
-"operators:\n"
-"    \n"
-"      ( EXPRESSION )\tReturns the value of EXPRESSION\n"
-"      ! EXPRESSION\t\tTrue if EXPRESSION is false; else false\n"
-"      EXPR1 && EXPR2\tTrue if both EXPR1 and EXPR2 are true; else false\n"
-"      EXPR1 || EXPR2\tTrue if either EXPR1 or EXPR2 is true; else false\n"
-"    \n"
-"    When the `==' and `!=' operators are used, the string to the right of\n"
-"    the operator is used as a pattern and pattern matching is performed.\n"
-"    When the `=~' operator is used, the string to the right of the operator\n"
-"    is matched as a regular expression.\n"
-"    \n"
-"    The && and || operators do not evaluate EXPR2 if EXPR1 is sufficient to\n"
-"    determine the expression's value.\n"
-"    \n"
-"    Exit Status:\n"
-"    0 or 1 depending on value of EXPRESSION."
-msgstr ""
-
-#: builtins.c:1697
-msgid ""
-"Common shell variable names and usage.\n"
-"    \n"
-"    BASH_VERSION\tVersion information for this Bash.\n"
-"    CDPATH\tA colon-separated list of directories to search\n"
-"    \t\tfor directories given as arguments to `cd'.\n"
-"    GLOBIGNORE\tA colon-separated list of patterns describing filenames to\n"
-"    \t\tbe ignored by pathname expansion.\n"
-"    HISTFILE\tThe name of the file where your command history is stored.\n"
-"    HISTFILESIZE\tThe maximum number of lines this file can contain.\n"
-"    HISTSIZE\tThe maximum number of history lines that a running\n"
-"    \t\tshell can access.\n"
-"    HOME\tThe complete pathname to your login directory.\n"
-"    HOSTNAME\tThe name of the current host.\n"
-"    HOSTTYPE\tThe type of CPU this version of Bash is running under.\n"
-"    IGNOREEOF\tControls the action of the shell on receipt of an EOF\n"
-"    \t\tcharacter as the sole input.  If set, then the value\n"
-"    \t\tof it is the number of EOF characters that can be seen\n"
-"    \t\tin a row on an empty line before the shell will exit\n"
-"    \t\t(default 10).  When unset, EOF signifies the end of input.\n"
-"    MACHTYPE\tA string describing the current system Bash is running on.\n"
-"    MAILCHECK\tHow often, in seconds, Bash checks for new mail.\n"
-"    MAILPATH\tA colon-separated list of filenames which Bash checks\n"
-"    \t\tfor new mail.\n"
-"    OSTYPE\tThe version of Unix this version of Bash is running on.\n"
-"    PATH\tA colon-separated list of directories to search when\n"
-"    \t\tlooking for commands.\n"
-"    PROMPT_COMMAND\tA command to be executed before the printing of each\n"
-"    \t\tprimary prompt.\n"
-"    PS1\t\tThe primary prompt string.\n"
-"    PS2\t\tThe secondary prompt string.\n"
-"    PWD\t\tThe full pathname of the current directory.\n"
-"    SHELLOPTS\tA colon-separated list of enabled shell options.\n"
-"    TERM\tThe name of the current terminal type.\n"
-"    TIMEFORMAT\tThe output format for timing statistics displayed by the\n"
-"    \t\t`time' reserved word.\n"
-"    auto_resume\tNon-null means a command word appearing on a line by\n"
-"    \t\titself is first looked for in the list of currently\n"
-"    \t\tstopped jobs.  If found there, that job is foregrounded.\n"
-"    \t\tA value of `exact' means that the command word must\n"
-"    \t\texactly match a command in the list of stopped jobs.  A\n"
-"    \t\tvalue of `substring' means that the command word must\n"
-"    \t\tmatch a substring of the job.  Any other value means that\n"
-"    \t\tthe command must be a prefix of a stopped job.\n"
-"    histchars\tCharacters controlling history expansion and quick\n"
-"    \t\tsubstitution.  The first character is the history\n"
-"    \t\tsubstitution character, usually `!'.  The second is\n"
-"    \t\tthe `quick substitution' character, usually `^'.  The\n"
-"    \t\tthird is the `history comment' character, usually `#'.\n"
-"    HISTIGNORE\tA colon-separated list of patterns used to decide which\n"
-"    \t\tcommands should be saved on the history list.\n"
-msgstr ""
-
-#: builtins.c:1754
-msgid ""
-"Add directories to stack.\n"
-"    \n"
-"    Adds a directory to the top of the directory stack, or rotates\n"
-"    the stack, making the new top of the stack the current working\n"
-"    directory.  With no arguments, exchanges the top two directories.\n"
-"    \n"
-"    Options:\n"
-"      -n\tSuppresses the normal change of directory when adding\n"
-"    \tdirectories to the stack, so only the stack is manipulated.\n"
-"    \n"
-"    Arguments:\n"
-"      +N\tRotates the stack so that the Nth directory (counting\n"
-"    \tfrom the left of the list shown by `dirs', starting with\n"
-"    \tzero) is at the top.\n"
-"    \n"
-"      -N\tRotates the stack so that the Nth directory (counting\n"
-"    \tfrom the right of the list shown by `dirs', starting with\n"
-"    \tzero) is at the top.\n"
-"    \n"
-"      dir\tAdds DIR to the directory stack at the top, making it the\n"
-"    \tnew current working directory.\n"
-"    \n"
-"    The `dirs' builtin displays the directory stack.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless an invalid argument is supplied or the directory\n"
-"    change fails."
-msgstr ""
-
-#: builtins.c:1788
-msgid ""
-"Remove directories from stack.\n"
-"    \n"
-"    Removes entries from the directory stack.  With no arguments, removes\n"
-"    the top directory from the stack, and changes to the new top directory.\n"
-"    \n"
-"    Options:\n"
-"      -n\tSuppresses the normal change of directory when removing\n"
-"    \tdirectories from the stack, so only the stack is manipulated.\n"
-"    \n"
-"    Arguments:\n"
-"      +N\tRemoves the Nth entry counting from the left of the list\n"
-"    \tshown by `dirs', starting with zero.  For example: `popd +0'\n"
-"    \tremoves the first directory, `popd +1' the second.\n"
-"    \n"
-"      -N\tRemoves the Nth entry counting from the right of the list\n"
-"    \tshown by `dirs', starting with zero.  For example: `popd -0'\n"
-"    \tremoves the last directory, `popd -1' the next to last.\n"
-"    \n"
-"    The `dirs' builtin displays the directory stack.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless an invalid argument is supplied or the directory\n"
-"    change fails."
-msgstr ""
-
-#: builtins.c:1818
-msgid ""
-"Display directory stack.\n"
-"    \n"
-"    Display the list of currently remembered directories.  Directories\n"
-"    find their way onto the list with the `pushd' command; you can get\n"
-"    back up through the list with the `popd' command.\n"
-"    \n"
-"    Options:\n"
-"      -c\tclear the directory stack by deleting all of the elements\n"
-"      -l\tdo not print tilde-prefixed versions of directories relative\n"
-"    \tto your home directory\n"
-"      -p\tprint the directory stack with one entry per line\n"
-"      -v\tprint the directory stack with one entry per line prefixed\n"
-"    \twith its position in the stack\n"
-"    \n"
-"    Arguments:\n"
-"      +N\tDisplays the Nth entry counting from the left of the list shown "
-"by\n"
-"    \tdirs when invoked without options, starting with zero.\n"
-"    \n"
-"      -N\tDisplays the Nth entry counting from the right of the list shown "
-"by\n"
-"    \tdirs when invoked without options, starting with zero.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless an invalid option is supplied or an error occurs."
-msgstr ""
-
-#: builtins.c:1847
-msgid ""
-"Set and unset shell options.\n"
-"    \n"
-"    Change the setting of each shell option OPTNAME.  Without any option\n"
-"    arguments, list all shell options with an indication of whether or not "
-"each\n"
-"    is set.\n"
-"    \n"
-"    Options:\n"
-"      -o\trestrict OPTNAMEs to those defined for use with `set -o'\n"
-"      -p\tprint each shell option with an indication of its status\n"
-"      -q\tsuppress output\n"
-"      -s\tenable (set) each OPTNAME\n"
-"      -u\tdisable (unset) each OPTNAME\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success if OPTNAME is enabled; fails if an invalid option is\n"
-"    given or OPTNAME is disabled."
-msgstr ""
-
-#: builtins.c:1868
-msgid ""
-"Formats and prints ARGUMENTS under control of the FORMAT.\n"
-"    \n"
-"    Options:\n"
-"      -v var\tassign the output to shell variable VAR rather than\n"
-"    \t\tdisplay it on the standard output\n"
-"    \n"
-"    FORMAT is a character string which contains three types of objects: "
-"plain\n"
-"    characters, which are simply copied to standard output; character "
-"escape\n"
-"    sequences, which are converted and copied to the standard output; and\n"
-"    format specifications, each of which causes printing of the next "
-"successive\n"
-"    argument.\n"
-"    \n"
-"    In addition to the standard format specifications described in printf"
-"(1)\n"
-"    and printf(3), printf interprets:\n"
-"    \n"
-"      %b\texpand backslash escape sequences in the corresponding argument\n"
-"      %q\tquote the argument in a way that can be reused as shell input\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless an invalid option is given or a write or "
-"assignment\n"
-"    error occurs."
-msgstr ""
-
-#: builtins.c:1895
-msgid ""
-"Specify how arguments are to be completed by Readline.\n"
-"    \n"
-"    For each NAME, specify how arguments are to be completed.  If no "
-"options\n"
-"    are supplied, existing completion specifications are printed in a way "
-"that\n"
-"    allows them to be reused as input.\n"
-"    \n"
-"    Options:\n"
-"      -p\tprint existing completion specifications in a reusable format\n"
-"      -r\tremove a completion specification for each NAME, or, if no\n"
-"    \tNAMEs are supplied, all completion specifications\n"
-"      -D\tapply the completions and actions as the default for commands\n"
-"    \twithout any specific completion defined\n"
-"      -E\tapply the completions and actions to \"empty\" commands --\n"
-"    \tcompletion attempted on a blank line\n"
-"    \n"
-"    When completion is attempted, the actions are applied in the order the\n"
-"    uppercase-letter options are listed above.  The -D option takes\n"
-"    precedence over -E.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless an invalid option is supplied or an error occurs."
-msgstr ""
-
-#: builtins.c:1923
-msgid ""
-"Display possible completions depending on the options.\n"
-"    \n"
-"    Intended to be used from within a shell function generating possible\n"
-"    completions.  If the optional WORD argument is supplied, matches "
-"against\n"
-"    WORD are generated.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless an invalid option is supplied or an error occurs."
-msgstr ""
-
-#: builtins.c:1938
-msgid ""
-"Modify or display completion options.\n"
-"    \n"
-"    Modify the completion options for each NAME, or, if no NAMEs are "
-"supplied,\n"
-"    the completion currently begin executed.  If no OPTIONs are givenm, "
-"print\n"
-"    the completion options for each NAME or the current completion "
-"specification.\n"
-"    \n"
-"    Options:\n"
-"    \t-o option\tSet completion option OPTION for each NAME\n"
-"    \t-D\t\tChange options for the \"default\" command completion\n"
-"    \t-E\t\tChange options for the \"empty\" command completion\n"
-"    \n"
-"    Using `+o' instead of `-o' turns off the specified option.\n"
-"    \n"
-"    Arguments:\n"
-"    \n"
-"    Each NAME refers to a command for which a completion specification must\n"
-"    have previously been defined using the `complete' builtin.  If no NAMEs\n"
-"    are supplied, compopt must be called by a function currently generating\n"
-"    completions, and the options for that currently-executing completion\n"
-"    generator are modified.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless an invalid option is supplied or NAME does not\n"
-"    have a completion specification defined."
-msgstr ""
-
-#: builtins.c:1968
-msgid ""
-"Read lines from the standard input into an indexed array variable.\n"
-"    \n"
-"    Read lines from the standard input into the indexed array variable "
-"ARRAY, or\n"
-"    from file descriptor FD if the -u option is supplied.  The variable "
-"MAPFILE\n"
-"    is the default ARRAY.\n"
-"    \n"
-"    Options:\n"
-"      -n count\tCopy at most COUNT lines.  If COUNT is 0, all lines are "
-"copied.\n"
-"      -O origin\tBegin assigning to ARRAY at index ORIGIN.  The default "
-"index is 0.\n"
-"      -s count \tDiscard the first COUNT lines read.\n"
-"      -t\t\tRemove a trailing newline from each line read.\n"
-"      -u fd\t\tRead lines from file descriptor FD instead of the standard "
-"input.\n"
-"      -C callback\tEvaluate CALLBACK each time QUANTUM lines are read.\n"
-"      -c quantum\tSpecify the number of lines read between each call to "
-"CALLBACK.\n"
-"    \n"
-"    Arguments:\n"
-"      ARRAY\t\tArray variable name to use for file data.\n"
-"    \n"
-"    If -C is supplied without -c, the default quantum is 5000.  When\n"
-"    CALLBACK is evaluated, it is supplied the index of the next array\n"
-"    element to be assigned as an additional argument.\n"
-"    \n"
-"    If not supplied with an explicit origin, mapfile will clear ARRAY "
-"before\n"
-"    assigning to it.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless an invalid option is given or ARRAY is readonly "
-"or\n"
-"    not an indexed array."
-msgstr ""
-
-#: builtins.c:2001
-msgid ""
-"Read lines from a file into an array variable.\n"
-"    \n"
-"    A synonym for `mapfile'."
-msgstr ""
diff --git a/po/bash-4.2.pot b/po/bash-4.2.pot
deleted file mode 100644 (file)
index e54dabd..0000000
+++ /dev/null
@@ -1,3944 +0,0 @@
-# SOME DESCRIPTIVE TITLE.
-# Copyright (C) YEAR Free Software Foundation, Inc.
-# This file is distributed under the same license as the PACKAGE package.
-# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
-#
-#, fuzzy
-msgid ""
-msgstr ""
-"Project-Id-Version: PACKAGE VERSION\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2011-01-28 22:09-0500\n"
-"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
-"Language-Team: LANGUAGE <LL@li.org>\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=CHARSET\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Plural-Forms: nplurals=INTEGER; plural=EXPRESSION;\n"
-
-#: arrayfunc.c:50
-msgid "bad array subscript"
-msgstr ""
-
-#: arrayfunc.c:313 builtins/declare.def:487
-#, c-format
-msgid "%s: cannot convert indexed to associative array"
-msgstr ""
-
-#: arrayfunc.c:480
-#, c-format
-msgid "%s: invalid associative array key"
-msgstr ""
-
-#: arrayfunc.c:482
-#, c-format
-msgid "%s: cannot assign to non-numeric index"
-msgstr ""
-
-#: arrayfunc.c:518
-#, c-format
-msgid "%s: %s: must use subscript when assigning associative array"
-msgstr ""
-
-#: bashhist.c:387
-#, c-format
-msgid "%s: cannot create: %s"
-msgstr ""
-
-#: bashline.c:3498
-msgid "bash_execute_unix_command: cannot find keymap for command"
-msgstr ""
-
-#: bashline.c:3584
-#, c-format
-msgid "%s: first non-whitespace character is not `\"'"
-msgstr ""
-
-#: bashline.c:3613
-#, c-format
-msgid "no closing `%c' in %s"
-msgstr ""
-
-#: bashline.c:3647
-#, c-format
-msgid "%s: missing colon separator"
-msgstr ""
-
-#: builtins/alias.def:132
-#, c-format
-msgid "`%s': invalid alias name"
-msgstr ""
-
-#: builtins/bind.def:120 builtins/bind.def:123
-msgid "line editing not enabled"
-msgstr ""
-
-#: builtins/bind.def:206
-#, c-format
-msgid "`%s': invalid keymap name"
-msgstr ""
-
-#: builtins/bind.def:245
-#, c-format
-msgid "%s: cannot read: %s"
-msgstr ""
-
-#: builtins/bind.def:260
-#, c-format
-msgid "`%s': cannot unbind"
-msgstr ""
-
-#: builtins/bind.def:295 builtins/bind.def:325
-#, c-format
-msgid "`%s': unknown function name"
-msgstr ""
-
-#: builtins/bind.def:303
-#, c-format
-msgid "%s is not bound to any keys.\n"
-msgstr ""
-
-#: builtins/bind.def:307
-#, c-format
-msgid "%s can be invoked via "
-msgstr ""
-
-#: builtins/break.def:77 builtins/break.def:117
-msgid "loop count"
-msgstr ""
-
-#: builtins/break.def:137
-msgid "only meaningful in a `for', `while', or `until' loop"
-msgstr ""
-
-#: builtins/caller.def:133
-msgid ""
-"Returns the context of the current subroutine call.\n"
-"    \n"
-"    Without EXPR, returns "
-msgstr ""
-
-#: builtins/cd.def:235
-msgid "HOME not set"
-msgstr ""
-
-#: builtins/cd.def:247
-msgid "OLDPWD not set"
-msgstr ""
-
-#: builtins/common.c:101
-#, c-format
-msgid "line %d: "
-msgstr ""
-
-#: builtins/common.c:139 error.c:261
-#, c-format
-msgid "warning: "
-msgstr ""
-
-#: builtins/common.c:153
-#, c-format
-msgid "%s: usage: "
-msgstr ""
-
-#: builtins/common.c:166 test.c:832
-msgid "too many arguments"
-msgstr ""
-
-#: builtins/common.c:191 shell.c:500 shell.c:782
-#, c-format
-msgid "%s: option requires an argument"
-msgstr ""
-
-#: builtins/common.c:198
-#, c-format
-msgid "%s: numeric argument required"
-msgstr ""
-
-#: builtins/common.c:205
-#, c-format
-msgid "%s: not found"
-msgstr ""
-
-#: builtins/common.c:214 shell.c:795
-#, c-format
-msgid "%s: invalid option"
-msgstr ""
-
-#: builtins/common.c:221
-#, c-format
-msgid "%s: invalid option name"
-msgstr ""
-
-#: builtins/common.c:228 general.c:231 general.c:236
-#, c-format
-msgid "`%s': not a valid identifier"
-msgstr ""
-
-#: builtins/common.c:238
-msgid "invalid octal number"
-msgstr ""
-
-#: builtins/common.c:240
-msgid "invalid hex number"
-msgstr ""
-
-#: builtins/common.c:242 expr.c:1362
-msgid "invalid number"
-msgstr ""
-
-#: builtins/common.c:250
-#, c-format
-msgid "%s: invalid signal specification"
-msgstr ""
-
-#: builtins/common.c:257
-#, c-format
-msgid "`%s': not a pid or valid job spec"
-msgstr ""
-
-#: builtins/common.c:264 error.c:454
-#, c-format
-msgid "%s: readonly variable"
-msgstr ""
-
-#: builtins/common.c:272
-#, c-format
-msgid "%s: %s out of range"
-msgstr ""
-
-#: builtins/common.c:272 builtins/common.c:274
-msgid "argument"
-msgstr ""
-
-#: builtins/common.c:274
-#, c-format
-msgid "%s out of range"
-msgstr ""
-
-#: builtins/common.c:282
-#, c-format
-msgid "%s: no such job"
-msgstr ""
-
-#: builtins/common.c:290
-#, c-format
-msgid "%s: no job control"
-msgstr ""
-
-#: builtins/common.c:292
-msgid "no job control"
-msgstr ""
-
-#: builtins/common.c:302
-#, c-format
-msgid "%s: restricted"
-msgstr ""
-
-#: builtins/common.c:304
-msgid "restricted"
-msgstr ""
-
-#: builtins/common.c:312
-#, c-format
-msgid "%s: not a shell builtin"
-msgstr ""
-
-#: builtins/common.c:321
-#, c-format
-msgid "write error: %s"
-msgstr ""
-
-#: builtins/common.c:329
-#, c-format
-msgid "error setting terminal attributes: %s"
-msgstr ""
-
-#: builtins/common.c:331
-#, c-format
-msgid "error getting terminal attributes: %s"
-msgstr ""
-
-#: builtins/common.c:563
-#, c-format
-msgid "%s: error retrieving current directory: %s: %s\n"
-msgstr ""
-
-#: builtins/common.c:629 builtins/common.c:631
-#, c-format
-msgid "%s: ambiguous job spec"
-msgstr ""
-
-#: builtins/complete.def:276
-#, c-format
-msgid "%s: invalid action name"
-msgstr ""
-
-#: builtins/complete.def:449 builtins/complete.def:644
-#: builtins/complete.def:853
-#, c-format
-msgid "%s: no completion specification"
-msgstr ""
-
-#: builtins/complete.def:696
-msgid "warning: -F option may not work as you expect"
-msgstr ""
-
-#: builtins/complete.def:698
-msgid "warning: -C option may not work as you expect"
-msgstr ""
-
-#: builtins/complete.def:826
-msgid "not currently executing completion function"
-msgstr ""
-
-#: builtins/declare.def:124
-msgid "can only be used in a function"
-msgstr ""
-
-#: builtins/declare.def:366
-msgid "cannot use `-f' to make functions"
-msgstr ""
-
-#: builtins/declare.def:378 execute_cmd.c:5105
-#, c-format
-msgid "%s: readonly function"
-msgstr ""
-
-#: builtins/declare.def:474
-#, c-format
-msgid "%s: cannot destroy array variables in this way"
-msgstr ""
-
-#: builtins/declare.def:481
-#, c-format
-msgid "%s: cannot convert associative to indexed array"
-msgstr ""
-
-#: builtins/enable.def:137 builtins/enable.def:145
-msgid "dynamic loading not available"
-msgstr ""
-
-#: builtins/enable.def:312
-#, c-format
-msgid "cannot open shared object %s: %s"
-msgstr ""
-
-#: builtins/enable.def:335
-#, c-format
-msgid "cannot find %s in shared object %s: %s"
-msgstr ""
-
-#: builtins/enable.def:459
-#, c-format
-msgid "%s: not dynamically loaded"
-msgstr ""
-
-#: builtins/enable.def:474
-#, c-format
-msgid "%s: cannot delete: %s"
-msgstr ""
-
-#: builtins/evalfile.c:135 builtins/hash.def:171 execute_cmd.c:4961
-#: shell.c:1457
-#, c-format
-msgid "%s: is a directory"
-msgstr ""
-
-#: builtins/evalfile.c:140
-#, c-format
-msgid "%s: not a regular file"
-msgstr ""
-
-#: builtins/evalfile.c:148
-#, c-format
-msgid "%s: file is too large"
-msgstr ""
-
-#: builtins/evalfile.c:182 builtins/evalfile.c:200 execute_cmd.c:5032
-#: shell.c:1467
-#, c-format
-msgid "%s: cannot execute binary file"
-msgstr ""
-
-#: builtins/exec.def:154 builtins/exec.def:156 builtins/exec.def:228
-#, c-format
-msgid "%s: cannot execute: %s"
-msgstr ""
-
-#: builtins/exit.def:65
-#, c-format
-msgid "logout\n"
-msgstr ""
-
-#: builtins/exit.def:88
-msgid "not login shell: use `exit'"
-msgstr ""
-
-#: builtins/exit.def:120
-#, c-format
-msgid "There are stopped jobs.\n"
-msgstr ""
-
-#: builtins/exit.def:122
-#, c-format
-msgid "There are running jobs.\n"
-msgstr ""
-
-#: builtins/fc.def:262
-msgid "no command found"
-msgstr ""
-
-#: builtins/fc.def:312 builtins/fc.def:359
-msgid "history specification"
-msgstr ""
-
-#: builtins/fc.def:380
-#, c-format
-msgid "%s: cannot open temp file: %s"
-msgstr ""
-
-#: builtins/fg_bg.def:149 builtins/jobs.def:282
-msgid "current"
-msgstr ""
-
-#: builtins/fg_bg.def:158
-#, c-format
-msgid "job %d started without job control"
-msgstr ""
-
-#: builtins/getopt.c:110
-#, c-format
-msgid "%s: illegal option -- %c\n"
-msgstr ""
-
-#: builtins/getopt.c:111
-#, c-format
-msgid "%s: option requires an argument -- %c\n"
-msgstr ""
-
-#: builtins/hash.def:92
-msgid "hashing disabled"
-msgstr ""
-
-#: builtins/hash.def:138
-#, c-format
-msgid "%s: hash table empty\n"
-msgstr ""
-
-#: builtins/hash.def:245
-#, c-format
-msgid "hits\tcommand\n"
-msgstr ""
-
-#: builtins/help.def:130
-#, c-format
-msgid "Shell commands matching keyword `"
-msgid_plural "Shell commands matching keywords `"
-msgstr[0] ""
-msgstr[1] ""
-
-#: builtins/help.def:168
-#, c-format
-msgid ""
-"no help topics match `%s'.  Try `help help' or `man -k %s' or `info %s'."
-msgstr ""
-
-#: builtins/help.def:185
-#, c-format
-msgid "%s: cannot open: %s"
-msgstr ""
-
-#: builtins/help.def:337
-#, c-format
-msgid ""
-"These shell commands are defined internally.  Type `help' to see this list.\n"
-"Type `help name' to find out more about the function `name'.\n"
-"Use `info bash' to find out more about the shell in general.\n"
-"Use `man -k' or `info' to find out more about commands not in this list.\n"
-"\n"
-"A star (*) next to a name means that the command is disabled.\n"
-"\n"
-msgstr ""
-
-#: builtins/history.def:154
-msgid "cannot use more than one of -anrw"
-msgstr ""
-
-#: builtins/history.def:186
-msgid "history position"
-msgstr ""
-
-#: builtins/history.def:365
-#, c-format
-msgid "%s: history expansion failed"
-msgstr ""
-
-#: builtins/inlib.def:71
-#, c-format
-msgid "%s: inlib failed"
-msgstr ""
-
-#: builtins/jobs.def:109
-msgid "no other options allowed with `-x'"
-msgstr ""
-
-#: builtins/kill.def:198
-#, c-format
-msgid "%s: arguments must be process or job IDs"
-msgstr ""
-
-#: builtins/kill.def:261
-msgid "Unknown error"
-msgstr ""
-
-#: builtins/let.def:95 builtins/let.def:120 expr.c:552 expr.c:567
-msgid "expression expected"
-msgstr ""
-
-#: builtins/mapfile.def:172
-#, c-format
-msgid "%s: not an indexed array"
-msgstr ""
-
-#: builtins/mapfile.def:256 builtins/read.def:279
-#, c-format
-msgid "%s: invalid file descriptor specification"
-msgstr ""
-
-#: builtins/mapfile.def:264 builtins/read.def:286
-#, c-format
-msgid "%d: invalid file descriptor: %s"
-msgstr ""
-
-#: builtins/mapfile.def:273 builtins/mapfile.def:311
-#, c-format
-msgid "%s: invalid line count"
-msgstr ""
-
-#: builtins/mapfile.def:284
-#, c-format
-msgid "%s: invalid array origin"
-msgstr ""
-
-#: builtins/mapfile.def:301
-#, c-format
-msgid "%s: invalid callback quantum"
-msgstr ""
-
-#: builtins/mapfile.def:333
-msgid "empty array variable name"
-msgstr ""
-
-#: builtins/mapfile.def:354
-msgid "array variable support required"
-msgstr ""
-
-#: builtins/printf.def:394
-#, c-format
-msgid "`%s': missing format character"
-msgstr ""
-
-#: builtins/printf.def:448
-#, c-format
-msgid "`%c': invalid time format specification"
-msgstr ""
-
-#: builtins/printf.def:635
-#, c-format
-msgid "`%c': invalid format character"
-msgstr ""
-
-#: builtins/printf.def:662
-#, c-format
-msgid "warning: %s: %s"
-msgstr ""
-
-#: builtins/printf.def:840
-msgid "missing hex digit for \\x"
-msgstr ""
-
-#: builtins/printf.def:855
-#, c-format
-msgid "missing unicode digit for \\%c"
-msgstr ""
-
-#: builtins/pushd.def:195
-msgid "no other directory"
-msgstr ""
-
-#: builtins/pushd.def:462
-msgid "<no current directory>"
-msgstr ""
-
-#: builtins/pushd.def:506
-msgid "directory stack empty"
-msgstr ""
-
-#: builtins/pushd.def:508
-msgid "directory stack index"
-msgstr ""
-
-#: builtins/pushd.def:683
-msgid ""
-"Display the list of currently remembered directories.  Directories\n"
-"    find their way onto the list with the `pushd' command; you can get\n"
-"    back up through the list with the `popd' command.\n"
-"    \n"
-"    Options:\n"
-"      -c\tclear the directory stack by deleting all of the elements\n"
-"      -l\tdo not print tilde-prefixed versions of directories relative\n"
-"    \tto your home directory\n"
-"      -p\tprint the directory stack with one entry per line\n"
-"      -v\tprint the directory stack with one entry per line prefixed\n"
-"    \twith its position in the stack\n"
-"    \n"
-"    Arguments:\n"
-"      +N\tDisplays the Nth entry counting from the left of the list shown "
-"by\n"
-"    \tdirs when invoked without options, starting with zero.\n"
-"    \n"
-"      -N\tDisplays the Nth entry counting from the right of the list shown "
-"by\n"
-"\tdirs when invoked without options, starting with zero."
-msgstr ""
-
-#: builtins/pushd.def:705
-msgid ""
-"Adds a directory to the top of the directory stack, or rotates\n"
-"    the stack, making the new top of the stack the current working\n"
-"    directory.  With no arguments, exchanges the top two directories.\n"
-"    \n"
-"    Options:\n"
-"      -n\tSuppresses the normal change of directory when adding\n"
-"    \tdirectories to the stack, so only the stack is manipulated.\n"
-"    \n"
-"    Arguments:\n"
-"      +N\tRotates the stack so that the Nth directory (counting\n"
-"    \tfrom the left of the list shown by `dirs', starting with\n"
-"    \tzero) is at the top.\n"
-"    \n"
-"      -N\tRotates the stack so that the Nth directory (counting\n"
-"    \tfrom the right of the list shown by `dirs', starting with\n"
-"    \tzero) is at the top.\n"
-"    \n"
-"      dir\tAdds DIR to the directory stack at the top, making it the\n"
-"    \tnew current working directory.\n"
-"    \n"
-"    The `dirs' builtin displays the directory stack."
-msgstr ""
-
-#: builtins/pushd.def:730
-msgid ""
-"Removes entries from the directory stack.  With no arguments, removes\n"
-"    the top directory from the stack, and changes to the new top directory.\n"
-"    \n"
-"    Options:\n"
-"      -n\tSuppresses the normal change of directory when removing\n"
-"    \tdirectories from the stack, so only the stack is manipulated.\n"
-"    \n"
-"    Arguments:\n"
-"      +N\tRemoves the Nth entry counting from the left of the list\n"
-"    \tshown by `dirs', starting with zero.  For example: `popd +0'\n"
-"    \tremoves the first directory, `popd +1' the second.\n"
-"    \n"
-"      -N\tRemoves the Nth entry counting from the right of the list\n"
-"    \tshown by `dirs', starting with zero.  For example: `popd -0'\n"
-"    \tremoves the last directory, `popd -1' the next to last.\n"
-"    \n"
-"    The `dirs' builtin displays the directory stack."
-msgstr ""
-
-#: builtins/read.def:252
-#, c-format
-msgid "%s: invalid timeout specification"
-msgstr ""
-
-#: builtins/read.def:588
-#, c-format
-msgid "read error: %d: %s"
-msgstr ""
-
-#: builtins/return.def:73
-msgid "can only `return' from a function or sourced script"
-msgstr ""
-
-#: builtins/set.def:771
-msgid "cannot simultaneously unset a function and a variable"
-msgstr ""
-
-#: builtins/set.def:808
-#, c-format
-msgid "%s: cannot unset"
-msgstr ""
-
-#: builtins/set.def:815
-#, c-format
-msgid "%s: cannot unset: readonly %s"
-msgstr ""
-
-#: builtins/set.def:826
-#, c-format
-msgid "%s: not an array variable"
-msgstr ""
-
-#: builtins/setattr.def:186
-#, c-format
-msgid "%s: not a function"
-msgstr ""
-
-#: builtins/shift.def:71 builtins/shift.def:77
-msgid "shift count"
-msgstr ""
-
-#: builtins/shopt.def:264
-msgid "cannot set and unset shell options simultaneously"
-msgstr ""
-
-#: builtins/shopt.def:329
-#, c-format
-msgid "%s: invalid shell option name"
-msgstr ""
-
-#: builtins/source.def:130
-msgid "filename argument required"
-msgstr ""
-
-#: builtins/source.def:155
-#, c-format
-msgid "%s: file not found"
-msgstr ""
-
-#: builtins/suspend.def:101
-msgid "cannot suspend"
-msgstr ""
-
-#: builtins/suspend.def:111
-msgid "cannot suspend a login shell"
-msgstr ""
-
-#: builtins/type.def:234
-#, c-format
-msgid "%s is aliased to `%s'\n"
-msgstr ""
-
-#: builtins/type.def:255
-#, c-format
-msgid "%s is a shell keyword\n"
-msgstr ""
-
-#: builtins/type.def:274
-#, c-format
-msgid "%s is a function\n"
-msgstr ""
-
-#: builtins/type.def:296
-#, c-format
-msgid "%s is a shell builtin\n"
-msgstr ""
-
-#: builtins/type.def:317 builtins/type.def:391
-#, c-format
-msgid "%s is %s\n"
-msgstr ""
-
-#: builtins/type.def:337
-#, c-format
-msgid "%s is hashed (%s)\n"
-msgstr ""
-
-#: builtins/ulimit.def:376
-#, c-format
-msgid "%s: invalid limit argument"
-msgstr ""
-
-#: builtins/ulimit.def:402
-#, c-format
-msgid "`%c': bad command"
-msgstr ""
-
-#: builtins/ulimit.def:431
-#, c-format
-msgid "%s: cannot get limit: %s"
-msgstr ""
-
-#: builtins/ulimit.def:457
-msgid "limit"
-msgstr ""
-
-#: builtins/ulimit.def:469 builtins/ulimit.def:769
-#, c-format
-msgid "%s: cannot modify limit: %s"
-msgstr ""
-
-#: builtins/umask.def:118
-msgid "octal number"
-msgstr ""
-
-#: builtins/umask.def:231
-#, c-format
-msgid "`%c': invalid symbolic mode operator"
-msgstr ""
-
-#: builtins/umask.def:286
-#, c-format
-msgid "`%c': invalid symbolic mode character"
-msgstr ""
-
-#: error.c:90 error.c:321 error.c:323 error.c:325
-msgid " line "
-msgstr ""
-
-#: error.c:165
-#, c-format
-msgid "last command: %s\n"
-msgstr ""
-
-#: error.c:173
-#, c-format
-msgid "Aborting..."
-msgstr ""
-
-#: error.c:406
-msgid "unknown command error"
-msgstr ""
-
-#: error.c:407
-msgid "bad command type"
-msgstr ""
-
-#: error.c:408
-msgid "bad connector"
-msgstr ""
-
-#: error.c:409
-msgid "bad jump"
-msgstr ""
-
-#: error.c:447
-#, c-format
-msgid "%s: unbound variable"
-msgstr ""
-
-#: eval.c:181
-#, c-format
-msgid "\atimed out waiting for input: auto-logout\n"
-msgstr ""
-
-#: execute_cmd.c:504
-#, c-format
-msgid "cannot redirect standard input from /dev/null: %s"
-msgstr ""
-
-#: execute_cmd.c:1168
-#, c-format
-msgid "TIMEFORMAT: `%c': invalid format character"
-msgstr ""
-
-#: execute_cmd.c:2121
-msgid "pipe error"
-msgstr ""
-
-#: execute_cmd.c:4640
-#, c-format
-msgid "%s: restricted: cannot specify `/' in command names"
-msgstr ""
-
-#: execute_cmd.c:4735
-#, c-format
-msgid "%s: command not found"
-msgstr ""
-
-#: execute_cmd.c:4959
-#, c-format
-msgid "%s: %s"
-msgstr ""
-
-#: execute_cmd.c:4995
-#, c-format
-msgid "%s: %s: bad interpreter"
-msgstr ""
-
-#: execute_cmd.c:5144
-#, c-format
-msgid "cannot duplicate fd %d to fd %d"
-msgstr ""
-
-#: expr.c:256
-msgid "expression recursion level exceeded"
-msgstr ""
-
-#: expr.c:280
-msgid "recursion stack underflow"
-msgstr ""
-
-#: expr.c:422
-msgid "syntax error in expression"
-msgstr ""
-
-#: expr.c:463
-msgid "attempted assignment to non-variable"
-msgstr ""
-
-#: expr.c:486 expr.c:491 expr.c:807
-msgid "division by 0"
-msgstr ""
-
-#: expr.c:517
-msgid "bug: bad expassign token"
-msgstr ""
-
-#: expr.c:564
-msgid "`:' expected for conditional expression"
-msgstr ""
-
-#: expr.c:832
-msgid "exponent less than 0"
-msgstr ""
-
-#: expr.c:887
-msgid "identifier expected after pre-increment or pre-decrement"
-msgstr ""
-
-#: expr.c:910
-msgid "missing `)'"
-msgstr ""
-
-#: expr.c:959 expr.c:1282
-msgid "syntax error: operand expected"
-msgstr ""
-
-#: expr.c:1284
-msgid "syntax error: invalid arithmetic operator"
-msgstr ""
-
-#: expr.c:1308
-#, c-format
-msgid "%s%s%s: %s (error token is \"%s\")"
-msgstr ""
-
-#: expr.c:1366
-msgid "invalid arithmetic base"
-msgstr ""
-
-#: expr.c:1386
-msgid "value too great for base"
-msgstr ""
-
-#: expr.c:1435
-#, c-format
-msgid "%s: expression error\n"
-msgstr ""
-
-#: general.c:61
-msgid "getcwd: cannot access parent directories"
-msgstr ""
-
-#: input.c:94 subst.c:5082
-#, c-format
-msgid "cannot reset nodelay mode for fd %d"
-msgstr ""
-
-#: input.c:260
-#, c-format
-msgid "cannot allocate new file descriptor for bash input from fd %d"
-msgstr ""
-
-#: input.c:268
-#, c-format
-msgid "save_bash_input: buffer already exists for new fd %d"
-msgstr ""
-
-#: jobs.c:468
-msgid "start_pipeline: pgrp pipe"
-msgstr ""
-
-#: jobs.c:889
-#, c-format
-msgid "forked pid %d appears in running job %d"
-msgstr ""
-
-#: jobs.c:1007
-#, c-format
-msgid "deleting stopped job %d with process group %ld"
-msgstr ""
-
-#: jobs.c:1112
-#, c-format
-msgid "add_process: process %5ld (%s) in the_pipeline"
-msgstr ""
-
-#: jobs.c:1115
-#, c-format
-msgid "add_process: pid %5ld (%s) marked as still alive"
-msgstr ""
-
-#: jobs.c:1430
-#, c-format
-msgid "describe_pid: %ld: no such pid"
-msgstr ""
-
-#: jobs.c:1445
-#, c-format
-msgid "Signal %d"
-msgstr ""
-
-#: jobs.c:1459 jobs.c:1484
-msgid "Done"
-msgstr ""
-
-#: jobs.c:1464 siglist.c:123
-msgid "Stopped"
-msgstr ""
-
-#: jobs.c:1468
-#, c-format
-msgid "Stopped(%s)"
-msgstr ""
-
-#: jobs.c:1472
-msgid "Running"
-msgstr ""
-
-#: jobs.c:1486
-#, c-format
-msgid "Done(%d)"
-msgstr ""
-
-#: jobs.c:1488
-#, c-format
-msgid "Exit %d"
-msgstr ""
-
-#: jobs.c:1491
-msgid "Unknown status"
-msgstr ""
-
-#: jobs.c:1578
-#, c-format
-msgid "(core dumped) "
-msgstr ""
-
-#: jobs.c:1597
-#, c-format
-msgid "  (wd: %s)"
-msgstr ""
-
-#: jobs.c:1805
-#, c-format
-msgid "child setpgid (%ld to %ld)"
-msgstr ""
-
-#: jobs.c:2133 nojobs.c:585
-#, c-format
-msgid "wait: pid %ld is not a child of this shell"
-msgstr ""
-
-#: jobs.c:2360
-#, c-format
-msgid "wait_for: No record of process %ld"
-msgstr ""
-
-#: jobs.c:2637
-#, c-format
-msgid "wait_for_job: job %d is stopped"
-msgstr ""
-
-#: jobs.c:2859
-#, c-format
-msgid "%s: job has terminated"
-msgstr ""
-
-#: jobs.c:2868
-#, c-format
-msgid "%s: job %d already in background"
-msgstr ""
-
-#: jobs.c:3089
-msgid "waitchld: turning on WNOHANG to avoid indefinite block"
-msgstr ""
-
-#: jobs.c:3538
-#, c-format
-msgid "%s: line %d: "
-msgstr ""
-
-#: jobs.c:3552 nojobs.c:814
-#, c-format
-msgid " (core dumped)"
-msgstr ""
-
-#: jobs.c:3564 jobs.c:3577
-#, c-format
-msgid "(wd now: %s)\n"
-msgstr ""
-
-#: jobs.c:3609
-msgid "initialize_job_control: getpgrp failed"
-msgstr ""
-
-#: jobs.c:3669
-msgid "initialize_job_control: line discipline"
-msgstr ""
-
-#: jobs.c:3679
-msgid "initialize_job_control: setpgid"
-msgstr ""
-
-#: jobs.c:3707
-#, c-format
-msgid "cannot set terminal process group (%d)"
-msgstr ""
-
-#: jobs.c:3712
-msgid "no job control in this shell"
-msgstr ""
-
-#: lib/malloc/malloc.c:296
-#, c-format
-msgid "malloc: failed assertion: %s\n"
-msgstr ""
-
-#: lib/malloc/malloc.c:312
-#, c-format
-msgid ""
-"\r\n"
-"malloc: %s:%d: assertion botched\r\n"
-msgstr ""
-
-#: lib/malloc/malloc.c:313
-msgid "unknown"
-msgstr ""
-
-#: lib/malloc/malloc.c:797
-msgid "malloc: block on free list clobbered"
-msgstr ""
-
-#: lib/malloc/malloc.c:874
-msgid "free: called with already freed block argument"
-msgstr ""
-
-#: lib/malloc/malloc.c:877
-msgid "free: called with unallocated block argument"
-msgstr ""
-
-#: lib/malloc/malloc.c:896
-msgid "free: underflow detected; mh_nbytes out of range"
-msgstr ""
-
-#: lib/malloc/malloc.c:902
-msgid "free: start and end chunk sizes differ"
-msgstr ""
-
-#: lib/malloc/malloc.c:1001
-msgid "realloc: called with unallocated block argument"
-msgstr ""
-
-#: lib/malloc/malloc.c:1016
-msgid "realloc: underflow detected; mh_nbytes out of range"
-msgstr ""
-
-#: lib/malloc/malloc.c:1022
-msgid "realloc: start and end chunk sizes differ"
-msgstr ""
-
-#: lib/malloc/table.c:177
-#, c-format
-msgid "register_alloc: alloc table is full with FIND_ALLOC?\n"
-msgstr ""
-
-#: lib/malloc/table.c:184
-#, c-format
-msgid "register_alloc: %p already in table as allocated?\n"
-msgstr ""
-
-#: lib/malloc/table.c:220
-#, c-format
-msgid "register_free: %p already in table as free?\n"
-msgstr ""
-
-#: lib/sh/fmtulong.c:101
-msgid "invalid base"
-msgstr ""
-
-#: lib/sh/netopen.c:168
-#, c-format
-msgid "%s: host unknown"
-msgstr ""
-
-#: lib/sh/netopen.c:175
-#, c-format
-msgid "%s: invalid service"
-msgstr ""
-
-#: lib/sh/netopen.c:306
-#, c-format
-msgid "%s: bad network path specification"
-msgstr ""
-
-#: lib/sh/netopen.c:346
-msgid "network operations not supported"
-msgstr ""
-
-#: locale.c:192
-#, c-format
-msgid "setlocale: LC_ALL: cannot change locale (%s)"
-msgstr ""
-
-#: locale.c:194
-#, c-format
-msgid "setlocale: LC_ALL: cannot change locale (%s): %s"
-msgstr ""
-
-#: locale.c:247
-#, c-format
-msgid "setlocale: %s: cannot change locale (%s)"
-msgstr ""
-
-#: locale.c:249
-#, c-format
-msgid "setlocale: %s: cannot change locale (%s): %s"
-msgstr ""
-
-#: mailcheck.c:433
-msgid "You have mail in $_"
-msgstr ""
-
-#: mailcheck.c:458
-msgid "You have new mail in $_"
-msgstr ""
-
-#: mailcheck.c:474
-#, c-format
-msgid "The mail in %s has been read\n"
-msgstr ""
-
-#: make_cmd.c:323
-msgid "syntax error: arithmetic expression required"
-msgstr ""
-
-#: make_cmd.c:325
-msgid "syntax error: `;' unexpected"
-msgstr ""
-
-#: make_cmd.c:326
-#, c-format
-msgid "syntax error: `((%s))'"
-msgstr ""
-
-#: make_cmd.c:575
-#, c-format
-msgid "make_here_document: bad instruction type %d"
-msgstr ""
-
-#: make_cmd.c:659
-#, c-format
-msgid "here-document at line %d delimited by end-of-file (wanted `%s')"
-msgstr ""
-
-#: make_cmd.c:756
-#, c-format
-msgid "make_redirection: redirection instruction `%d' out of range"
-msgstr ""
-
-#: parse.y:3173 parse.y:3444
-#, c-format
-msgid "unexpected EOF while looking for matching `%c'"
-msgstr ""
-
-#: parse.y:4025
-msgid "unexpected EOF while looking for `]]'"
-msgstr ""
-
-#: parse.y:4030
-#, c-format
-msgid "syntax error in conditional expression: unexpected token `%s'"
-msgstr ""
-
-#: parse.y:4034
-msgid "syntax error in conditional expression"
-msgstr ""
-
-#: parse.y:4112
-#, c-format
-msgid "unexpected token `%s', expected `)'"
-msgstr ""
-
-#: parse.y:4116
-msgid "expected `)'"
-msgstr ""
-
-#: parse.y:4144
-#, c-format
-msgid "unexpected argument `%s' to conditional unary operator"
-msgstr ""
-
-#: parse.y:4148
-msgid "unexpected argument to conditional unary operator"
-msgstr ""
-
-#: parse.y:4194
-#, c-format
-msgid "unexpected token `%s', conditional binary operator expected"
-msgstr ""
-
-#: parse.y:4198
-msgid "conditional binary operator expected"
-msgstr ""
-
-#: parse.y:4220
-#, c-format
-msgid "unexpected argument `%s' to conditional binary operator"
-msgstr ""
-
-#: parse.y:4224
-msgid "unexpected argument to conditional binary operator"
-msgstr ""
-
-#: parse.y:4235
-#, c-format
-msgid "unexpected token `%c' in conditional command"
-msgstr ""
-
-#: parse.y:4238
-#, c-format
-msgid "unexpected token `%s' in conditional command"
-msgstr ""
-
-#: parse.y:4242
-#, c-format
-msgid "unexpected token %d in conditional command"
-msgstr ""
-
-#: parse.y:5566
-#, c-format
-msgid "syntax error near unexpected token `%s'"
-msgstr ""
-
-#: parse.y:5584
-#, c-format
-msgid "syntax error near `%s'"
-msgstr ""
-
-#: parse.y:5594
-msgid "syntax error: unexpected end of file"
-msgstr ""
-
-#: parse.y:5594
-msgid "syntax error"
-msgstr ""
-
-#: parse.y:5656
-#, c-format
-msgid "Use \"%s\" to leave the shell.\n"
-msgstr ""
-
-#: parse.y:5818
-msgid "unexpected EOF while looking for matching `)'"
-msgstr ""
-
-#: pcomplete.c:1030
-#, c-format
-msgid "completion: function `%s' not found"
-msgstr ""
-
-#: pcomplib.c:182
-#, c-format
-msgid "progcomp_insert: %s: NULL COMPSPEC"
-msgstr ""
-
-#: print_cmd.c:296
-#, c-format
-msgid "print_command: bad connector `%d'"
-msgstr ""
-
-#: print_cmd.c:368
-#, c-format
-msgid "xtrace_set: %d: invalid file descriptor"
-msgstr ""
-
-#: print_cmd.c:373
-msgid "xtrace_set: NULL file pointer"
-msgstr ""
-
-#: print_cmd.c:377
-#, c-format
-msgid "xtrace fd (%d) != fileno xtrace fp (%d)"
-msgstr ""
-
-#: print_cmd.c:1478
-#, c-format
-msgid "cprintf: `%c': invalid format character"
-msgstr ""
-
-#: redir.c:122
-msgid "file descriptor out of range"
-msgstr ""
-
-#: redir.c:178
-#, c-format
-msgid "%s: ambiguous redirect"
-msgstr ""
-
-#: redir.c:182
-#, c-format
-msgid "%s: cannot overwrite existing file"
-msgstr ""
-
-#: redir.c:187
-#, c-format
-msgid "%s: restricted: cannot redirect output"
-msgstr ""
-
-#: redir.c:192
-#, c-format
-msgid "cannot create temp file for here-document: %s"
-msgstr ""
-
-#: redir.c:196
-#, c-format
-msgid "%s: cannot assign fd to variable"
-msgstr ""
-
-#: redir.c:548
-msgid "/dev/(tcp|udp)/host/port not supported without networking"
-msgstr ""
-
-#: redir.c:818 redir.c:930 redir.c:993 redir.c:1136
-msgid "redirection error: cannot duplicate fd"
-msgstr ""
-
-#: shell.c:333
-msgid "could not find /tmp, please create!"
-msgstr ""
-
-#: shell.c:337
-msgid "/tmp must be a valid directory name"
-msgstr ""
-
-#: shell.c:884
-#, c-format
-msgid "%c%c: invalid option"
-msgstr ""
-
-#: shell.c:1652
-msgid "I have no name!"
-msgstr ""
-
-#: shell.c:1795
-#, c-format
-msgid "GNU bash, version %s-(%s)\n"
-msgstr ""
-
-#: shell.c:1796
-#, c-format
-msgid ""
-"Usage:\t%s [GNU long option] [option] ...\n"
-"\t%s [GNU long option] [option] script-file ...\n"
-msgstr ""
-
-#: shell.c:1798
-msgid "GNU long options:\n"
-msgstr ""
-
-#: shell.c:1802
-msgid "Shell options:\n"
-msgstr ""
-
-#: shell.c:1803
-msgid "\t-irsD or -c command or -O shopt_option\t\t(invocation only)\n"
-msgstr ""
-
-#: shell.c:1818
-#, c-format
-msgid "\t-%s or -o option\n"
-msgstr ""
-
-#: shell.c:1824
-#, c-format
-msgid "Type `%s -c \"help set\"' for more information about shell options.\n"
-msgstr ""
-
-#: shell.c:1825
-#, c-format
-msgid "Type `%s -c help' for more information about shell builtin commands.\n"
-msgstr ""
-
-#: shell.c:1826
-#, c-format
-msgid "Use the `bashbug' command to report bugs.\n"
-msgstr ""
-
-#: sig.c:638
-#, c-format
-msgid "sigprocmask: %d: invalid operation"
-msgstr ""
-
-#: siglist.c:48
-msgid "Bogus signal"
-msgstr ""
-
-#: siglist.c:51
-msgid "Hangup"
-msgstr ""
-
-#: siglist.c:55
-msgid "Interrupt"
-msgstr ""
-
-#: siglist.c:59
-msgid "Quit"
-msgstr ""
-
-#: siglist.c:63
-msgid "Illegal instruction"
-msgstr ""
-
-#: siglist.c:67
-msgid "BPT trace/trap"
-msgstr ""
-
-#: siglist.c:75
-msgid "ABORT instruction"
-msgstr ""
-
-#: siglist.c:79
-msgid "EMT instruction"
-msgstr ""
-
-#: siglist.c:83
-msgid "Floating point exception"
-msgstr ""
-
-#: siglist.c:87
-msgid "Killed"
-msgstr ""
-
-#: siglist.c:91
-msgid "Bus error"
-msgstr ""
-
-#: siglist.c:95
-msgid "Segmentation fault"
-msgstr ""
-
-#: siglist.c:99
-msgid "Bad system call"
-msgstr ""
-
-#: siglist.c:103
-msgid "Broken pipe"
-msgstr ""
-
-#: siglist.c:107
-msgid "Alarm clock"
-msgstr ""
-
-#: siglist.c:111
-msgid "Terminated"
-msgstr ""
-
-#: siglist.c:115
-msgid "Urgent IO condition"
-msgstr ""
-
-#: siglist.c:119
-msgid "Stopped (signal)"
-msgstr ""
-
-#: siglist.c:127
-msgid "Continue"
-msgstr ""
-
-#: siglist.c:135
-msgid "Child death or stop"
-msgstr ""
-
-#: siglist.c:139
-msgid "Stopped (tty input)"
-msgstr ""
-
-#: siglist.c:143
-msgid "Stopped (tty output)"
-msgstr ""
-
-#: siglist.c:147
-msgid "I/O ready"
-msgstr ""
-
-#: siglist.c:151
-msgid "CPU limit"
-msgstr ""
-
-#: siglist.c:155
-msgid "File limit"
-msgstr ""
-
-#: siglist.c:159
-msgid "Alarm (virtual)"
-msgstr ""
-
-#: siglist.c:163
-msgid "Alarm (profile)"
-msgstr ""
-
-#: siglist.c:167
-msgid "Window changed"
-msgstr ""
-
-#: siglist.c:171
-msgid "Record lock"
-msgstr ""
-
-#: siglist.c:175
-msgid "User signal 1"
-msgstr ""
-
-#: siglist.c:179
-msgid "User signal 2"
-msgstr ""
-
-#: siglist.c:183
-msgid "HFT input data pending"
-msgstr ""
-
-#: siglist.c:187
-msgid "power failure imminent"
-msgstr ""
-
-#: siglist.c:191
-msgid "system crash imminent"
-msgstr ""
-
-#: siglist.c:195
-msgid "migrate process to another CPU"
-msgstr ""
-
-#: siglist.c:199
-msgid "programming error"
-msgstr ""
-
-#: siglist.c:203
-msgid "HFT monitor mode granted"
-msgstr ""
-
-#: siglist.c:207
-msgid "HFT monitor mode retracted"
-msgstr ""
-
-#: siglist.c:211
-msgid "HFT sound sequence has completed"
-msgstr ""
-
-#: siglist.c:215
-msgid "Information request"
-msgstr ""
-
-#: siglist.c:223
-msgid "Unknown Signal #"
-msgstr ""
-
-#: siglist.c:225
-#, c-format
-msgid "Unknown Signal #%d"
-msgstr ""
-
-#: subst.c:1333 subst.c:1502
-#, c-format
-msgid "bad substitution: no closing `%s' in %s"
-msgstr ""
-
-#: subst.c:2795
-#, c-format
-msgid "%s: cannot assign list to array member"
-msgstr ""
-
-#: subst.c:4979 subst.c:4995
-msgid "cannot make pipe for process substitution"
-msgstr ""
-
-#: subst.c:5027
-msgid "cannot make child for process substitution"
-msgstr ""
-
-#: subst.c:5072
-#, c-format
-msgid "cannot open named pipe %s for reading"
-msgstr ""
-
-#: subst.c:5074
-#, c-format
-msgid "cannot open named pipe %s for writing"
-msgstr ""
-
-#: subst.c:5092
-#, c-format
-msgid "cannot duplicate named pipe %s as fd %d"
-msgstr ""
-
-#: subst.c:5284
-msgid "cannot make pipe for command substitution"
-msgstr ""
-
-#: subst.c:5322
-msgid "cannot make child for command substitution"
-msgstr ""
-
-#: subst.c:5339
-msgid "command_substitute: cannot duplicate pipe as fd 1"
-msgstr ""
-
-#: subst.c:5859
-#, c-format
-msgid "%s: parameter null or not set"
-msgstr ""
-
-#: subst.c:6125 subst.c:6140
-#, c-format
-msgid "%s: substring expression < 0"
-msgstr ""
-
-#: subst.c:7271
-#, c-format
-msgid "%s: bad substitution"
-msgstr ""
-
-#: subst.c:7347
-#, c-format
-msgid "$%s: cannot assign in this way"
-msgstr ""
-
-#: subst.c:7684
-msgid ""
-"future versions of the shell will force evaluation as an arithmetic "
-"substitution"
-msgstr ""
-
-#: subst.c:8149
-#, c-format
-msgid "bad substitution: no closing \"`\" in %s"
-msgstr ""
-
-#: subst.c:9036
-#, c-format
-msgid "no match: %s"
-msgstr ""
-
-#: test.c:146
-msgid "argument expected"
-msgstr ""
-
-#: test.c:155
-#, c-format
-msgid "%s: integer expression expected"
-msgstr ""
-
-#: test.c:263
-msgid "`)' expected"
-msgstr ""
-
-#: test.c:265
-#, c-format
-msgid "`)' expected, found %s"
-msgstr ""
-
-#: test.c:280 test.c:698 test.c:701
-#, c-format
-msgid "%s: unary operator expected"
-msgstr ""
-
-#: test.c:449 test.c:741
-#, c-format
-msgid "%s: binary operator expected"
-msgstr ""
-
-#: test.c:816
-msgid "missing `]'"
-msgstr ""
-
-#: trap.c:207
-msgid "invalid signal number"
-msgstr ""
-
-#: trap.c:337
-#, c-format
-msgid "run_pending_traps: bad value in trap_list[%d]: %p"
-msgstr ""
-
-#: trap.c:341
-#, c-format
-msgid ""
-"run_pending_traps: signal handler is SIG_DFL, resending %d (%s) to myself"
-msgstr ""
-
-#: trap.c:393
-#, c-format
-msgid "trap_handler: bad signal %d"
-msgstr ""
-
-#: variables.c:363
-#, c-format
-msgid "error importing function definition for `%s'"
-msgstr ""
-
-#: variables.c:755
-#, c-format
-msgid "shell level (%d) too high, resetting to 1"
-msgstr ""
-
-#: variables.c:1932
-msgid "make_local_variable: no function context at current scope"
-msgstr ""
-
-#: variables.c:3182
-msgid "all_local_variables: no function context at current scope"
-msgstr ""
-
-#: variables.c:3427
-#, c-format
-msgid "%s has null exportstr"
-msgstr ""
-
-#: variables.c:3432 variables.c:3441
-#, c-format
-msgid "invalid character %d in exportstr for %s"
-msgstr ""
-
-#: variables.c:3447
-#, c-format
-msgid "no `=' in exportstr for %s"
-msgstr ""
-
-#: variables.c:3891
-msgid "pop_var_context: head of shell_variables not a function context"
-msgstr ""
-
-#: variables.c:3904
-msgid "pop_var_context: no global_variables context"
-msgstr ""
-
-#: variables.c:3978
-msgid "pop_scope: head of shell_variables not a temporary environment scope"
-msgstr ""
-
-#: variables.c:4786
-#, c-format
-msgid "%s: %s: cannot open as FILE"
-msgstr ""
-
-#: variables.c:4791
-#, c-format
-msgid "%s: %s: invalid value for trace file descriptor"
-msgstr ""
-
-#: version.c:46
-msgid "Copyright (C) 2011 Free Software Foundation, Inc."
-msgstr ""
-
-#: version.c:47
-msgid ""
-"License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl."
-"html>\n"
-msgstr ""
-
-#: version.c:86 version2.c:83
-#, c-format
-msgid "GNU bash, version %s (%s)\n"
-msgstr ""
-
-#: version.c:91 version2.c:88
-#, c-format
-msgid "This is free software; you are free to change and redistribute it.\n"
-msgstr ""
-
-#: version.c:92 version2.c:89
-#, c-format
-msgid "There is NO WARRANTY, to the extent permitted by law.\n"
-msgstr ""
-
-#: version2.c:86
-#, c-format
-msgid "Copyright (C) 2009 Free Software Foundation, Inc.\n"
-msgstr ""
-
-#: version2.c:87
-#, c-format
-msgid ""
-"License GPLv2+: GNU GPL version 2 or later <http://gnu.org/licenses/gpl."
-"html>\n"
-msgstr ""
-
-#: xmalloc.c:91
-#, c-format
-msgid "%s: cannot allocate %lu bytes (%lu bytes allocated)"
-msgstr ""
-
-#: xmalloc.c:93
-#, c-format
-msgid "%s: cannot allocate %lu bytes"
-msgstr ""
-
-#: xmalloc.c:163
-#, c-format
-msgid "%s: %s:%d: cannot allocate %lu bytes (%lu bytes allocated)"
-msgstr ""
-
-#: xmalloc.c:165
-#, c-format
-msgid "%s: %s:%d: cannot allocate %lu bytes"
-msgstr ""
-
-#: builtins.c:43
-msgid "alias [-p] [name[=value] ... ]"
-msgstr ""
-
-#: builtins.c:47
-msgid "unalias [-a] name [name ...]"
-msgstr ""
-
-#: builtins.c:51
-msgid ""
-"bind [-lpvsPVS] [-m keymap] [-f filename] [-q name] [-u name] [-r keyseq] [-"
-"x keyseq:shell-command] [keyseq:readline-function or readline-command]"
-msgstr ""
-
-#: builtins.c:54
-msgid "break [n]"
-msgstr ""
-
-#: builtins.c:56
-msgid "continue [n]"
-msgstr ""
-
-#: builtins.c:58
-msgid "builtin [shell-builtin [arg ...]]"
-msgstr ""
-
-#: builtins.c:61
-msgid "caller [expr]"
-msgstr ""
-
-#: builtins.c:64
-msgid "cd [-L|[-P [-e]]] [dir]"
-msgstr ""
-
-#: builtins.c:66
-msgid "pwd [-LP]"
-msgstr ""
-
-#: builtins.c:68
-msgid ":"
-msgstr ""
-
-#: builtins.c:70
-msgid "true"
-msgstr ""
-
-#: builtins.c:72
-msgid "false"
-msgstr ""
-
-#: builtins.c:74
-msgid "command [-pVv] command [arg ...]"
-msgstr ""
-
-#: builtins.c:76
-msgid "declare [-aAfFgilrtux] [-p] [name[=value] ...]"
-msgstr ""
-
-#: builtins.c:78
-msgid "typeset [-aAfFgilrtux] [-p] name[=value] ..."
-msgstr ""
-
-#: builtins.c:80
-msgid "local [option] name[=value] ..."
-msgstr ""
-
-#: builtins.c:83
-msgid "echo [-neE] [arg ...]"
-msgstr ""
-
-#: builtins.c:87
-msgid "echo [-n] [arg ...]"
-msgstr ""
-
-#: builtins.c:90
-msgid "enable [-a] [-dnps] [-f filename] [name ...]"
-msgstr ""
-
-#: builtins.c:92
-msgid "eval [arg ...]"
-msgstr ""
-
-#: builtins.c:94
-msgid "getopts optstring name [arg]"
-msgstr ""
-
-#: builtins.c:96
-msgid "exec [-cl] [-a name] [command [arguments ...]] [redirection ...]"
-msgstr ""
-
-#: builtins.c:98
-msgid "exit [n]"
-msgstr ""
-
-#: builtins.c:100
-msgid "logout [n]"
-msgstr ""
-
-#: builtins.c:103
-msgid "fc [-e ename] [-lnr] [first] [last] or fc -s [pat=rep] [command]"
-msgstr ""
-
-#: builtins.c:107
-msgid "fg [job_spec]"
-msgstr ""
-
-#: builtins.c:111
-msgid "bg [job_spec ...]"
-msgstr ""
-
-#: builtins.c:114
-msgid "hash [-lr] [-p pathname] [-dt] [name ...]"
-msgstr ""
-
-#: builtins.c:117
-msgid "help [-dms] [pattern ...]"
-msgstr ""
-
-#: builtins.c:121
-msgid ""
-"history [-c] [-d offset] [n] or history -anrw [filename] or history -ps arg "
-"[arg...]"
-msgstr ""
-
-#: builtins.c:125
-msgid "jobs [-lnprs] [jobspec ...] or jobs -x command [args]"
-msgstr ""
-
-#: builtins.c:129
-msgid "disown [-h] [-ar] [jobspec ...]"
-msgstr ""
-
-#: builtins.c:132
-msgid ""
-"kill [-s sigspec | -n signum | -sigspec] pid | jobspec ... or kill -l "
-"[sigspec]"
-msgstr ""
-
-#: builtins.c:134
-msgid "let arg [arg ...]"
-msgstr ""
-
-#: builtins.c:136
-msgid ""
-"read [-ers] [-a array] [-d delim] [-i text] [-n nchars] [-N nchars] [-p "
-"prompt] [-t timeout] [-u fd] [name ...]"
-msgstr ""
-
-#: builtins.c:138
-msgid "return [n]"
-msgstr ""
-
-#: builtins.c:140
-msgid "set [-abefhkmnptuvxBCHP] [-o option-name] [--] [arg ...]"
-msgstr ""
-
-#: builtins.c:142
-msgid "unset [-f] [-v] [name ...]"
-msgstr ""
-
-#: builtins.c:144
-msgid "export [-fn] [name[=value] ...] or export -p"
-msgstr ""
-
-#: builtins.c:146
-msgid "readonly [-aAf] [name[=value] ...] or readonly -p"
-msgstr ""
-
-#: builtins.c:148
-msgid "shift [n]"
-msgstr ""
-
-#: builtins.c:150
-msgid "source filename [arguments]"
-msgstr ""
-
-#: builtins.c:152
-msgid ". filename [arguments]"
-msgstr ""
-
-#: builtins.c:155
-msgid "suspend [-f]"
-msgstr ""
-
-#: builtins.c:158
-msgid "test [expr]"
-msgstr ""
-
-#: builtins.c:160
-msgid "[ arg... ]"
-msgstr ""
-
-#: builtins.c:162
-msgid "times"
-msgstr ""
-
-#: builtins.c:164
-msgid "trap [-lp] [[arg] signal_spec ...]"
-msgstr ""
-
-#: builtins.c:166
-msgid "type [-afptP] name [name ...]"
-msgstr ""
-
-#: builtins.c:169
-msgid "ulimit [-SHacdefilmnpqrstuvx] [limit]"
-msgstr ""
-
-#: builtins.c:172
-msgid "umask [-p] [-S] [mode]"
-msgstr ""
-
-#: builtins.c:175
-msgid "wait [id]"
-msgstr ""
-
-#: builtins.c:179
-msgid "wait [pid]"
-msgstr ""
-
-#: builtins.c:182
-msgid "for NAME [in WORDS ... ] ; do COMMANDS; done"
-msgstr ""
-
-#: builtins.c:184
-msgid "for (( exp1; exp2; exp3 )); do COMMANDS; done"
-msgstr ""
-
-#: builtins.c:186
-msgid "select NAME [in WORDS ... ;] do COMMANDS; done"
-msgstr ""
-
-#: builtins.c:188
-msgid "time [-p] pipeline"
-msgstr ""
-
-#: builtins.c:190
-msgid "case WORD in [PATTERN [| PATTERN]...) COMMANDS ;;]... esac"
-msgstr ""
-
-#: builtins.c:192
-msgid ""
-"if COMMANDS; then COMMANDS; [ elif COMMANDS; then COMMANDS; ]... [ else "
-"COMMANDS; ] fi"
-msgstr ""
-
-#: builtins.c:194
-msgid "while COMMANDS; do COMMANDS; done"
-msgstr ""
-
-#: builtins.c:196
-msgid "until COMMANDS; do COMMANDS; done"
-msgstr ""
-
-#: builtins.c:198
-msgid "coproc [NAME] command [redirections]"
-msgstr ""
-
-#: builtins.c:200
-msgid "function name { COMMANDS ; } or name () { COMMANDS ; }"
-msgstr ""
-
-#: builtins.c:202
-msgid "{ COMMANDS ; }"
-msgstr ""
-
-#: builtins.c:204
-msgid "job_spec [&]"
-msgstr ""
-
-#: builtins.c:206
-msgid "(( expression ))"
-msgstr ""
-
-#: builtins.c:208
-msgid "[[ expression ]]"
-msgstr ""
-
-#: builtins.c:210
-msgid "variables - Names and meanings of some shell variables"
-msgstr ""
-
-#: builtins.c:213
-msgid "pushd [-n] [+N | -N | dir]"
-msgstr ""
-
-#: builtins.c:217
-msgid "popd [-n] [+N | -N]"
-msgstr ""
-
-#: builtins.c:221
-msgid "dirs [-clpv] [+N] [-N]"
-msgstr ""
-
-#: builtins.c:224
-msgid "shopt [-pqsu] [-o] [optname ...]"
-msgstr ""
-
-#: builtins.c:226
-msgid "printf [-v var] format [arguments]"
-msgstr ""
-
-#: builtins.c:229
-msgid ""
-"complete [-abcdefgjksuv] [-pr] [-DE] [-o option] [-A action] [-G globpat] [-"
-"W wordlist]  [-F function] [-C command] [-X filterpat] [-P prefix] [-S "
-"suffix] [name ...]"
-msgstr ""
-
-#: builtins.c:233
-msgid ""
-"compgen [-abcdefgjksuv] [-o option]  [-A action] [-G globpat] [-W wordlist]  "
-"[-F function] [-C command] [-X filterpat] [-P prefix] [-S suffix] [word]"
-msgstr ""
-
-#: builtins.c:237
-msgid "compopt [-o|+o option] [-DE] [name ...]"
-msgstr ""
-
-#: builtins.c:240
-msgid ""
-"mapfile [-n count] [-O origin] [-s count] [-t] [-u fd] [-C callback] [-c "
-"quantum] [array]"
-msgstr ""
-
-#: builtins.c:242
-msgid ""
-"readarray [-n count] [-O origin] [-s count] [-t] [-u fd] [-C callback] [-c "
-"quantum] [array]"
-msgstr ""
-
-#: builtins.c:254
-msgid ""
-"Define or display aliases.\n"
-"    \n"
-"    Without arguments, `alias' prints the list of aliases in the reusable\n"
-"    form `alias NAME=VALUE' on standard output.\n"
-"    \n"
-"    Otherwise, an alias is defined for each NAME whose VALUE is given.\n"
-"    A trailing space in VALUE causes the next word to be checked for\n"
-"    alias substitution when the alias is expanded.\n"
-"    \n"
-"    Options:\n"
-"      -p\tPrint all defined aliases in a reusable format\n"
-"    \n"
-"    Exit Status:\n"
-"    alias returns true unless a NAME is supplied for which no alias has "
-"been\n"
-"    defined."
-msgstr ""
-
-#: builtins.c:276
-msgid ""
-"Remove each NAME from the list of defined aliases.\n"
-"    \n"
-"    Options:\n"
-"      -a\tremove all alias definitions.\n"
-"    \n"
-"    Return success unless a NAME is not an existing alias."
-msgstr ""
-
-#: builtins.c:289
-msgid ""
-"Set Readline key bindings and variables.\n"
-"    \n"
-"    Bind a key sequence to a Readline function or a macro, or set a\n"
-"    Readline variable.  The non-option argument syntax is equivalent to\n"
-"    that found in ~/.inputrc, but must be passed as a single argument:\n"
-"    e.g., bind '\"\\C-x\\C-r\": re-read-init-file'.\n"
-"    \n"
-"    Options:\n"
-"      -m  keymap         Use KEYMAP as the keymap for the duration of this\n"
-"                         command.  Acceptable keymap names are emacs,\n"
-"                         emacs-standard, emacs-meta, emacs-ctlx, vi, vi-"
-"move,\n"
-"                         vi-command, and vi-insert.\n"
-"      -l                 List names of functions.\n"
-"      -P                 List function names and bindings.\n"
-"      -p                 List functions and bindings in a form that can be\n"
-"                         reused as input.\n"
-"      -S                 List key sequences that invoke macros and their "
-"values\n"
-"      -s                 List key sequences that invoke macros and their "
-"values\n"
-"                         in a form that can be reused as input.\n"
-"      -V                 List variable names and values\n"
-"      -v                 List variable names and values in a form that can\n"
-"                         be reused as input.\n"
-"      -q  function-name  Query about which keys invoke the named function.\n"
-"      -u  function-name  Unbind all keys which are bound to the named "
-"function.\n"
-"      -r  keyseq         Remove the binding for KEYSEQ.\n"
-"      -f  filename       Read key bindings from FILENAME.\n"
-"      -x  keyseq:shell-command\tCause SHELL-COMMAND to be executed when\n"
-"    \t\t\t\tKEYSEQ is entered.\n"
-"    \n"
-"    Exit Status:\n"
-"    bind returns 0 unless an unrecognized option is given or an error occurs."
-msgstr ""
-
-#: builtins.c:326
-msgid ""
-"Exit for, while, or until loops.\n"
-"    \n"
-"    Exit a FOR, WHILE or UNTIL loop.  If N is specified, break N enclosing\n"
-"    loops.\n"
-"    \n"
-"    Exit Status:\n"
-"    The exit status is 0 unless N is not greater than or equal to 1."
-msgstr ""
-
-#: builtins.c:338
-msgid ""
-"Resume for, while, or until loops.\n"
-"    \n"
-"    Resumes the next iteration of the enclosing FOR, WHILE or UNTIL loop.\n"
-"    If N is specified, resumes the Nth enclosing loop.\n"
-"    \n"
-"    Exit Status:\n"
-"    The exit status is 0 unless N is not greater than or equal to 1."
-msgstr ""
-
-#: builtins.c:350
-msgid ""
-"Execute shell builtins.\n"
-"    \n"
-"    Execute SHELL-BUILTIN with arguments ARGs without performing command\n"
-"    lookup.  This is useful when you wish to reimplement a shell builtin\n"
-"    as a shell function, but need to execute the builtin within the "
-"function.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns the exit status of SHELL-BUILTIN, or false if SHELL-BUILTIN is\n"
-"    not a shell builtin.."
-msgstr ""
-
-#: builtins.c:365
-msgid ""
-"Return the context of the current subroutine call.\n"
-"    \n"
-"    Without EXPR, returns \"$line $filename\".  With EXPR, returns\n"
-"    \"$line $subroutine $filename\"; this extra information can be used to\n"
-"    provide a stack trace.\n"
-"    \n"
-"    The value of EXPR indicates how many call frames to go back before the\n"
-"    current one; the top frame is frame 0.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns 0 unless the shell is not executing a shell function or EXPR\n"
-"    is invalid."
-msgstr ""
-
-#: builtins.c:383
-msgid ""
-"Change the shell working directory.\n"
-"    \n"
-"    Change the current directory to DIR.  The default DIR is the value of "
-"the\n"
-"    HOME shell variable.\n"
-"    \n"
-"    The variable CDPATH defines the search path for the directory "
-"containing\n"
-"    DIR.  Alternative directory names in CDPATH are separated by a colon "
-"(:).\n"
-"    A null directory name is the same as the current directory.  If DIR "
-"begins\n"
-"    with a slash (/), then CDPATH is not used.\n"
-"    \n"
-"    If the directory is not found, and the shell option `cdable_vars' is "
-"set,\n"
-"    the word is assumed to be  a variable name.  If that variable has a "
-"value,\n"
-"    its value is used for DIR.\n"
-"    \n"
-"    Options:\n"
-"        -L\tforce symbolic links to be followed\n"
-"        -P\tuse the physical directory structure without following symbolic\n"
-"    \tlinks\n"
-"        -e\tif the -P option is supplied, and the current working directory\n"
-"    \tcannot be determined successfully, exit with a non-zero status\n"
-"    \n"
-"    The default is to follow symbolic links, as if `-L' were specified.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns 0 if the directory is changed, and if $PWD is set successfully "
-"when\n"
-"    -P is used; non-zero otherwise."
-msgstr ""
-
-#: builtins.c:414
-msgid ""
-"Print the name of the current working directory.\n"
-"    \n"
-"    Options:\n"
-"      -L\tprint the value of $PWD if it names the current working\n"
-"    \tdirectory\n"
-"      -P\tprint the physical directory, without any symbolic links\n"
-"    \n"
-"    By default, `pwd' behaves as if `-L' were specified.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns 0 unless an invalid option is given or the current directory\n"
-"    cannot be read."
-msgstr ""
-
-#: builtins.c:431
-msgid ""
-"Null command.\n"
-"    \n"
-"    No effect; the command does nothing.\n"
-"    \n"
-"    Exit Status:\n"
-"    Always succeeds."
-msgstr ""
-
-#: builtins.c:442
-msgid ""
-"Return a successful result.\n"
-"    \n"
-"    Exit Status:\n"
-"    Always succeeds."
-msgstr ""
-
-#: builtins.c:451
-msgid ""
-"Return an unsuccessful result.\n"
-"    \n"
-"    Exit Status:\n"
-"    Always fails."
-msgstr ""
-
-#: builtins.c:460
-msgid ""
-"Execute a simple command or display information about commands.\n"
-"    \n"
-"    Runs COMMAND with ARGS suppressing  shell function lookup, or display\n"
-"    information about the specified COMMANDs.  Can be used to invoke "
-"commands\n"
-"    on disk when a function with the same name exists.\n"
-"    \n"
-"    Options:\n"
-"      -p\tuse a default value for PATH that is guaranteed to find all of\n"
-"    \tthe standard utilities\n"
-"      -v\tprint a description of COMMAND similar to the `type' builtin\n"
-"      -V\tprint a more verbose description of each COMMAND\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns exit status of COMMAND, or failure if COMMAND is not found."
-msgstr ""
-
-#: builtins.c:479
-msgid ""
-"Set variable values and attributes.\n"
-"    \n"
-"    Declare variables and give them attributes.  If no NAMEs are given,\n"
-"    display the attributes and values of all variables.\n"
-"    \n"
-"    Options:\n"
-"      -f\trestrict action or display to function names and definitions\n"
-"      -F\trestrict display to function names only (plus line number and\n"
-"    \tsource file when debugging)\n"
-"      -g\tcreate global variables when used in a shell function; otherwise\n"
-"    \tignored\n"
-"      -p\tdisplay the attributes and value of each NAME\n"
-"    \n"
-"    Options which set attributes:\n"
-"      -a\tto make NAMEs indexed arrays (if supported)\n"
-"      -A\tto make NAMEs associative arrays (if supported)\n"
-"      -i\tto make NAMEs have the `integer' attribute\n"
-"      -l\tto convert NAMEs to lower case on assignment\n"
-"      -r\tto make NAMEs readonly\n"
-"      -t\tto make NAMEs have the `trace' attribute\n"
-"      -u\tto convert NAMEs to upper case on assignment\n"
-"      -x\tto make NAMEs export\n"
-"    \n"
-"    Using `+' instead of `-' turns off the given attribute.\n"
-"    \n"
-"    Variables with the integer attribute have arithmetic evaluation (see\n"
-"    the `let' command) performed when the variable is assigned a value.\n"
-"    \n"
-"    When used in a function, `declare' makes NAMEs local, as with the "
-"`local'\n"
-"    command.  The `-g' option suppresses this behavior.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless an invalid option is supplied or an error occurs."
-msgstr ""
-
-#: builtins.c:517
-msgid ""
-"Set variable values and attributes.\n"
-"    \n"
-"    Obsolete.  See `help declare'."
-msgstr ""
-
-#: builtins.c:525
-msgid ""
-"Define local variables.\n"
-"    \n"
-"    Create a local variable called NAME, and give it VALUE.  OPTION can\n"
-"    be any option accepted by `declare'.\n"
-"    \n"
-"    Local variables can only be used within a function; they are visible\n"
-"    only to the function where they are defined and its children.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless an invalid option is supplied, an error occurs,\n"
-"    or the shell is not executing a function."
-msgstr ""
-
-#: builtins.c:542
-msgid ""
-"Write arguments to the standard output.\n"
-"    \n"
-"    Display the ARGs on the standard output followed by a newline.\n"
-"    \n"
-"    Options:\n"
-"      -n\tdo not append a newline\n"
-"      -e\tenable interpretation of the following backslash escapes\n"
-"      -E\texplicitly suppress interpretation of backslash escapes\n"
-"    \n"
-"    `echo' interprets the following backslash-escaped characters:\n"
-"      \\a\talert (bell)\n"
-"      \\b\tbackspace\n"
-"      \\c\tsuppress further output\n"
-"      \\e\tescape character\n"
-"      \\f\tform feed\n"
-"      \\n\tnew line\n"
-"      \\r\tcarriage return\n"
-"      \\t\thorizontal tab\n"
-"      \\v\tvertical tab\n"
-"      \\\\\tbackslash\n"
-"      \\0nnn\tthe character whose ASCII code is NNN (octal).  NNN can be\n"
-"    \t0 to 3 octal digits\n"
-"      \\xHH\tthe eight-bit character whose value is HH (hexadecimal).  HH\n"
-"    \tcan be one or two hex digits\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless a write error occurs."
-msgstr ""
-
-#: builtins.c:576
-msgid ""
-"Write arguments to the standard output.\n"
-"    \n"
-"    Display the ARGs on the standard output followed by a newline.\n"
-"    \n"
-"    Options:\n"
-"      -n\tdo not append a newline\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless a write error occurs."
-msgstr ""
-
-#: builtins.c:591
-msgid ""
-"Enable and disable shell builtins.\n"
-"    \n"
-"    Enables and disables builtin shell commands.  Disabling allows you to\n"
-"    execute a disk command which has the same name as a shell builtin\n"
-"    without using a full pathname.\n"
-"    \n"
-"    Options:\n"
-"      -a\tprint a list of builtins showing whether or not each is enabled\n"
-"      -n\tdisable each NAME or display a list of disabled builtins\n"
-"      -p\tprint the list of builtins in a reusable format\n"
-"      -s\tprint only the names of Posix `special' builtins\n"
-"    \n"
-"    Options controlling dynamic loading:\n"
-"      -f\tLoad builtin NAME from shared object FILENAME\n"
-"      -d\tRemove a builtin loaded with -f\n"
-"    \n"
-"    Without options, each NAME is enabled.\n"
-"    \n"
-"    To use the `test' found in $PATH instead of the shell builtin\n"
-"    version, type `enable -n test'.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless NAME is not a shell builtin or an error occurs."
-msgstr ""
-
-#: builtins.c:619
-msgid ""
-"Execute arguments as a shell command.\n"
-"    \n"
-"    Combine ARGs into a single string, use the result as input to the "
-"shell,\n"
-"    and execute the resulting commands.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns exit status of command or success if command is null."
-msgstr ""
-
-#: builtins.c:631
-msgid ""
-"Parse option arguments.\n"
-"    \n"
-"    Getopts is used by shell procedures to parse positional parameters\n"
-"    as options.\n"
-"    \n"
-"    OPTSTRING contains the option letters to be recognized; if a letter\n"
-"    is followed by a colon, the option is expected to have an argument,\n"
-"    which should be separated from it by white space.\n"
-"    \n"
-"    Each time it is invoked, getopts will place the next option in the\n"
-"    shell variable $name, initializing name if it does not exist, and\n"
-"    the index of the next argument to be processed into the shell\n"
-"    variable OPTIND.  OPTIND is initialized to 1 each time the shell or\n"
-"    a shell script is invoked.  When an option requires an argument,\n"
-"    getopts places that argument into the shell variable OPTARG.\n"
-"    \n"
-"    getopts reports errors in one of two ways.  If the first character\n"
-"    of OPTSTRING is a colon, getopts uses silent error reporting.  In\n"
-"    this mode, no error messages are printed.  If an invalid option is\n"
-"    seen, getopts places the option character found into OPTARG.  If a\n"
-"    required argument is not found, getopts places a ':' into NAME and\n"
-"    sets OPTARG to the option character found.  If getopts is not in\n"
-"    silent mode, and an invalid option is seen, getopts places '?' into\n"
-"    NAME and unsets OPTARG.  If a required argument is not found, a '?'\n"
-"    is placed in NAME, OPTARG is unset, and a diagnostic message is\n"
-"    printed.\n"
-"    \n"
-"    If the shell variable OPTERR has the value 0, getopts disables the\n"
-"    printing of error messages, even if the first character of\n"
-"    OPTSTRING is not a colon.  OPTERR has the value 1 by default.\n"
-"    \n"
-"    Getopts normally parses the positional parameters ($0 - $9), but if\n"
-"    more arguments are given, they are parsed instead.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success if an option is found; fails if the end of options is\n"
-"    encountered or an error occurs."
-msgstr ""
-
-#: builtins.c:673
-msgid ""
-"Replace the shell with the given command.\n"
-"    \n"
-"    Execute COMMAND, replacing this shell with the specified program.\n"
-"    ARGUMENTS become the arguments to COMMAND.  If COMMAND is not "
-"specified,\n"
-"    any redirections take effect in the current shell.\n"
-"    \n"
-"    Options:\n"
-"      -a name\tpass NAME as the zeroth argument to COMMAND\n"
-"      -c\t\texecute COMMAND with an empty environment\n"
-"      -l\t\tplace a dash in the zeroth argument to COMMAND\n"
-"    \n"
-"    If the command cannot be executed, a non-interactive shell exits, "
-"unless\n"
-"    the shell option `execfail' is set.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless COMMAND is not found or a redirection error "
-"occurs."
-msgstr ""
-
-#: builtins.c:694
-msgid ""
-"Exit the shell.\n"
-"    \n"
-"    Exits the shell with a status of N.  If N is omitted, the exit status\n"
-"    is that of the last command executed."
-msgstr ""
-
-#: builtins.c:703
-msgid ""
-"Exit a login shell.\n"
-"    \n"
-"    Exits a login shell with exit status N.  Returns an error if not "
-"executed\n"
-"    in a login shell."
-msgstr ""
-
-#: builtins.c:713
-msgid ""
-"Display or execute commands from the history list.\n"
-"    \n"
-"    fc is used to list or edit and re-execute commands from the history "
-"list.\n"
-"    FIRST and LAST can be numbers specifying the range, or FIRST can be a\n"
-"    string, which means the most recent command beginning with that\n"
-"    string.\n"
-"    \n"
-"    Options:\n"
-"      -e ENAME\tselect which editor to use.  Default is FCEDIT, then "
-"EDITOR,\n"
-"    \t\tthen vi\n"
-"      -l \tlist lines instead of editing\n"
-"      -n\tomit line numbers when listing\n"
-"      -r\treverse the order of the lines (newest listed first)\n"
-"    \n"
-"    With the `fc -s [pat=rep ...] [command]' format, COMMAND is\n"
-"    re-executed after the substitution OLD=NEW is performed.\n"
-"    \n"
-"    A useful alias to use with this is r='fc -s', so that typing `r cc'\n"
-"    runs the last command beginning with `cc' and typing `r' re-executes\n"
-"    the last command.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success or status of executed command; non-zero if an error "
-"occurs."
-msgstr ""
-
-#: builtins.c:743
-msgid ""
-"Move job to the foreground.\n"
-"    \n"
-"    Place the job identified by JOB_SPEC in the foreground, making it the\n"
-"    current job.  If JOB_SPEC is not present, the shell's notion of the\n"
-"    current job is used.\n"
-"    \n"
-"    Exit Status:\n"
-"    Status of command placed in foreground, or failure if an error occurs."
-msgstr ""
-
-#: builtins.c:758
-msgid ""
-"Move jobs to the background.\n"
-"    \n"
-"    Place the jobs identified by each JOB_SPEC in the background, as if "
-"they\n"
-"    had been started with `&'.  If JOB_SPEC is not present, the shell's "
-"notion\n"
-"    of the current job is used.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless job control is not enabled or an error occurs."
-msgstr ""
-
-#: builtins.c:772
-msgid ""
-"Remember or display program locations.\n"
-"    \n"
-"    Determine and remember the full pathname of each command NAME.  If\n"
-"    no arguments are given, information about remembered commands is "
-"displayed.\n"
-"    \n"
-"    Options:\n"
-"      -d\t\tforget the remembered location of each NAME\n"
-"      -l\t\tdisplay in a format that may be reused as input\n"
-"      -p pathname\tuse PATHNAME is the full pathname of NAME\n"
-"      -r\t\tforget all remembered locations\n"
-"      -t\t\tprint the remembered location of each NAME, preceding\n"
-"    \t\teach location with the corresponding NAME if multiple\n"
-"    \t\tNAMEs are given\n"
-"    Arguments:\n"
-"      NAME\t\tEach NAME is searched for in $PATH and added to the list\n"
-"    \t\tof remembered commands.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless NAME is not found or an invalid option is given."
-msgstr ""
-
-#: builtins.c:797
-msgid ""
-"Display information about builtin commands.\n"
-"    \n"
-"    Displays brief summaries of builtin commands.  If PATTERN is\n"
-"    specified, gives detailed help on all commands matching PATTERN,\n"
-"    otherwise the list of help topics is printed.\n"
-"    \n"
-"    Options:\n"
-"      -d\toutput short description for each topic\n"
-"      -m\tdisplay usage in pseudo-manpage format\n"
-"      -s\toutput only a short usage synopsis for each topic matching\n"
-"    \tPATTERN\n"
-"    \n"
-"    Arguments:\n"
-"      PATTERN\tPattern specifiying a help topic\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless PATTERN is not found or an invalid option is "
-"given."
-msgstr ""
-
-#: builtins.c:821
-msgid ""
-"Display or manipulate the history list.\n"
-"    \n"
-"    Display the history list with line numbers, prefixing each modified\n"
-"    entry with a `*'.  An argument of N lists only the last N entries.\n"
-"    \n"
-"    Options:\n"
-"      -c\tclear the history list by deleting all of the entries\n"
-"      -d offset\tdelete the history entry at offset OFFSET.\n"
-"    \n"
-"      -a\tappend history lines from this session to the history file\n"
-"      -n\tread all history lines not already read from the history file\n"
-"      -r\tread the history file and append the contents to the history\n"
-"    \tlist\n"
-"      -w\twrite the current history to the history file\n"
-"    \tand append them to the history list\n"
-"    \n"
-"      -p\tperform history expansion on each ARG and display the result\n"
-"    \twithout storing it in the history list\n"
-"      -s\tappend the ARGs to the history list as a single entry\n"
-"    \n"
-"    If FILENAME is given, it is used as the history file.  Otherwise,\n"
-"    if $HISTFILE has a value, that is used, else ~/.bash_history.\n"
-"    \n"
-"    If the $HISTTIMEFORMAT variable is set and not null, its value is used\n"
-"    as a format string for strftime(3) to print the time stamp associated\n"
-"    with each displayed history entry.  No time stamps are printed "
-"otherwise.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless an invalid option is given or an error occurs."
-msgstr ""
-
-#: builtins.c:857
-msgid ""
-"Display status of jobs.\n"
-"    \n"
-"    Lists the active jobs.  JOBSPEC restricts output to that job.\n"
-"    Without options, the status of all active jobs is displayed.\n"
-"    \n"
-"    Options:\n"
-"      -l\tlists process IDs in addition to the normal information\n"
-"      -n\tlist only processes that have changed status since the last\n"
-"    \tnotification\n"
-"      -p\tlists process IDs only\n"
-"      -r\trestrict output to running jobs\n"
-"      -s\trestrict output to stopped jobs\n"
-"    \n"
-"    If -x is supplied, COMMAND is run after all job specifications that\n"
-"    appear in ARGS have been replaced with the process ID of that job's\n"
-"    process group leader.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless an invalid option is given or an error occurs.\n"
-"    If -x is used, returns the exit status of COMMAND."
-msgstr ""
-
-#: builtins.c:884
-msgid ""
-"Remove jobs from current shell.\n"
-"    \n"
-"    Removes each JOBSPEC argument from the table of active jobs.  Without\n"
-"    any JOBSPECs, the shell uses its notion of the current job.\n"
-"    \n"
-"    Options:\n"
-"      -a\tremove all jobs if JOBSPEC is not supplied\n"
-"      -h\tmark each JOBSPEC so that SIGHUP is not sent to the job if the\n"
-"    \tshell receives a SIGHUP\n"
-"      -r\tremove only running jobs\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless an invalid option or JOBSPEC is given."
-msgstr ""
-
-#: builtins.c:903
-msgid ""
-"Send a signal to a job.\n"
-"    \n"
-"    Send the processes identified by PID or JOBSPEC the signal named by\n"
-"    SIGSPEC or SIGNUM.  If neither SIGSPEC nor SIGNUM is present, then\n"
-"    SIGTERM is assumed.\n"
-"    \n"
-"    Options:\n"
-"      -s sig\tSIG is a signal name\n"
-"      -n sig\tSIG is a signal number\n"
-"      -l\tlist the signal names; if arguments follow `-l' they are\n"
-"    \tassumed to be signal numbers for which names should be listed\n"
-"    \n"
-"    Kill is a shell builtin for two reasons: it allows job IDs to be used\n"
-"    instead of process IDs, and allows processes to be killed if the limit\n"
-"    on processes that you can create is reached.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless an invalid option is given or an error occurs."
-msgstr ""
-
-#: builtins.c:926
-msgid ""
-"Evaluate arithmetic expressions.\n"
-"    \n"
-"    Evaluate each ARG as an arithmetic expression.  Evaluation is done in\n"
-"    fixed-width integers with no check for overflow, though division by 0\n"
-"    is trapped and flagged as an error.  The following list of operators is\n"
-"    grouped into levels of equal-precedence operators.  The levels are "
-"listed\n"
-"    in order of decreasing precedence.\n"
-"    \n"
-"    \tid++, id--\tvariable post-increment, post-decrement\n"
-"    \t++id, --id\tvariable pre-increment, pre-decrement\n"
-"    \t-, +\t\tunary minus, plus\n"
-"    \t!, ~\t\tlogical and bitwise negation\n"
-"    \t**\t\texponentiation\n"
-"    \t*, /, %\t\tmultiplication, division, remainder\n"
-"    \t+, -\t\taddition, subtraction\n"
-"    \t<<, >>\t\tleft and right bitwise shifts\n"
-"    \t<=, >=, <, >\tcomparison\n"
-"    \t==, !=\t\tequality, inequality\n"
-"    \t&\t\tbitwise AND\n"
-"    \t^\t\tbitwise XOR\n"
-"    \t|\t\tbitwise OR\n"
-"    \t&&\t\tlogical AND\n"
-"    \t||\t\tlogical OR\n"
-"    \texpr ? expr : expr\n"
-"    \t\t\tconditional operator\n"
-"    \t=, *=, /=, %=,\n"
-"    \t+=, -=, <<=, >>=,\n"
-"    \t&=, ^=, |=\tassignment\n"
-"    \n"
-"    Shell variables are allowed as operands.  The name of the variable\n"
-"    is replaced by its value (coerced to a fixed-width integer) within\n"
-"    an expression.  The variable need not have its integer attribute\n"
-"    turned on to be used in an expression.\n"
-"    \n"
-"    Operators are evaluated in order of precedence.  Sub-expressions in\n"
-"    parentheses are evaluated first and may override the precedence\n"
-"    rules above.\n"
-"    \n"
-"    Exit Status:\n"
-"    If the last ARG evaluates to 0, let returns 1; let returns 0 otherwise."
-msgstr ""
-
-#: builtins.c:971
-msgid ""
-"Read a line from the standard input and split it into fields.\n"
-"    \n"
-"    Reads a single line from the standard input, or from file descriptor FD\n"
-"    if the -u option is supplied.  The line is split into fields as with "
-"word\n"
-"    splitting, and the first word is assigned to the first NAME, the second\n"
-"    word to the second NAME, and so on, with any leftover words assigned to\n"
-"    the last NAME.  Only the characters found in $IFS are recognized as "
-"word\n"
-"    delimiters.\n"
-"    \n"
-"    If no NAMEs are supplied, the line read is stored in the REPLY "
-"variable.\n"
-"    \n"
-"    Options:\n"
-"      -a array\tassign the words read to sequential indices of the array\n"
-"    \t\tvariable ARRAY, starting at zero\n"
-"      -d delim\tcontinue until the first character of DELIM is read, rather\n"
-"    \t\tthan newline\n"
-"      -e\t\tuse Readline to obtain the line in an interactive shell\n"
-"      -i text\tUse TEXT as the initial text for Readline\n"
-"      -n nchars\treturn after reading NCHARS characters rather than waiting\n"
-"    \t\tfor a newline, but honor a delimiter if fewer than NCHARS\n"
-"    \t\tcharacters are read before the delimiter\n"
-"      -N nchars\treturn only after reading exactly NCHARS characters, "
-"unless\n"
-"    \t\tEOF is encountered or read times out, ignoring any delimiter\n"
-"      -p prompt\toutput the string PROMPT without a trailing newline before\n"
-"    \t\tattempting to read\n"
-"      -r\t\tdo not allow backslashes to escape any characters\n"
-"      -s\t\tdo not echo input coming from a terminal\n"
-"      -t timeout\ttime out and return failure if a complete line of input "
-"is\n"
-"    \t\tnot read withint TIMEOUT seconds.  The value of the TMOUT\n"
-"    \t\tvariable is the default timeout.  TIMEOUT may be a\n"
-"    \t\tfractional number.  If TIMEOUT is 0, read returns success only\n"
-"    \t\tif input is available on the specified file descriptor.  The\n"
-"    \t\texit status is greater than 128 if the timeout is exceeded\n"
-"      -u fd\t\tread from file descriptor FD instead of the standard input\n"
-"    \n"
-"    Exit Status:\n"
-"    The return code is zero, unless end-of-file is encountered, read times "
-"out,\n"
-"    or an invalid file descriptor is supplied as the argument to -u."
-msgstr ""
-
-#: builtins.c:1014
-msgid ""
-"Return from a shell function.\n"
-"    \n"
-"    Causes a function or sourced script to exit with the return value\n"
-"    specified by N.  If N is omitted, the return status is that of the\n"
-"    last command executed within the function or script.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns N, or failure if the shell is not executing a function or script."
-msgstr ""
-
-#: builtins.c:1027
-msgid ""
-"Set or unset values of shell options and positional parameters.\n"
-"    \n"
-"    Change the value of shell attributes and positional parameters, or\n"
-"    display the names and values of shell variables.\n"
-"    \n"
-"    Options:\n"
-"      -a  Mark variables which are modified or created for export.\n"
-"      -b  Notify of job termination immediately.\n"
-"      -e  Exit immediately if a command exits with a non-zero status.\n"
-"      -f  Disable file name generation (globbing).\n"
-"      -h  Remember the location of commands as they are looked up.\n"
-"      -k  All assignment arguments are placed in the environment for a\n"
-"          command, not just those that precede the command name.\n"
-"      -m  Job control is enabled.\n"
-"      -n  Read commands but do not execute them.\n"
-"      -o option-name\n"
-"          Set the variable corresponding to option-name:\n"
-"              allexport    same as -a\n"
-"              braceexpand  same as -B\n"
-"              emacs        use an emacs-style line editing interface\n"
-"              errexit      same as -e\n"
-"              errtrace     same as -E\n"
-"              functrace    same as -T\n"
-"              hashall      same as -h\n"
-"              histexpand   same as -H\n"
-"              history      enable command history\n"
-"              ignoreeof    the shell will not exit upon reading EOF\n"
-"              interactive-comments\n"
-"                           allow comments to appear in interactive commands\n"
-"              keyword      same as -k\n"
-"              monitor      same as -m\n"
-"              noclobber    same as -C\n"
-"              noexec       same as -n\n"
-"              noglob       same as -f\n"
-"              nolog        currently accepted but ignored\n"
-"              notify       same as -b\n"
-"              nounset      same as -u\n"
-"              onecmd       same as -t\n"
-"              physical     same as -P\n"
-"              pipefail     the return value of a pipeline is the status of\n"
-"                           the last command to exit with a non-zero status,\n"
-"                           or zero if no command exited with a non-zero "
-"status\n"
-"              posix        change the behavior of bash where the default\n"
-"                           operation differs from the Posix standard to\n"
-"                           match the standard\n"
-"              privileged   same as -p\n"
-"              verbose      same as -v\n"
-"              vi           use a vi-style line editing interface\n"
-"              xtrace       same as -x\n"
-"      -p  Turned on whenever the real and effective user ids do not match.\n"
-"          Disables processing of the $ENV file and importing of shell\n"
-"          functions.  Turning this option off causes the effective uid and\n"
-"          gid to be set to the real uid and gid.\n"
-"      -t  Exit after reading and executing one command.\n"
-"      -u  Treat unset variables as an error when substituting.\n"
-"      -v  Print shell input lines as they are read.\n"
-"      -x  Print commands and their arguments as they are executed.\n"
-"      -B  the shell will perform brace expansion\n"
-"      -C  If set, disallow existing regular files to be overwritten\n"
-"          by redirection of output.\n"
-"      -E  If set, the ERR trap is inherited by shell functions.\n"
-"      -H  Enable ! style history substitution.  This flag is on\n"
-"          by default when the shell is interactive.\n"
-"      -P  If set, do not follow symbolic links when executing commands\n"
-"          such as cd which change the current directory.\n"
-"      -T  If set, the DEBUG trap is inherited by shell functions.\n"
-"      --  Assign any remaining arguments to the positional parameters.\n"
-"          If there are no remaining arguments, the positional parameters\n"
-"          are unset.\n"
-"      -   Assign any remaining arguments to the positional parameters.\n"
-"          The -x and -v options are turned off.\n"
-"    \n"
-"    Using + rather than - causes these flags to be turned off.  The\n"
-"    flags can also be used upon invocation of the shell.  The current\n"
-"    set of flags may be found in $-.  The remaining n ARGs are positional\n"
-"    parameters and are assigned, in order, to $1, $2, .. $n.  If no\n"
-"    ARGs are given, all shell variables are printed.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless an invalid option is given."
-msgstr ""
-
-#: builtins.c:1112
-msgid ""
-"Unset values and attributes of shell variables and functions.\n"
-"    \n"
-"    For each NAME, remove the corresponding variable or function.\n"
-"    \n"
-"    Options:\n"
-"      -f\ttreat each NAME as a shell function\n"
-"      -v\ttreat each NAME as a shell variable\n"
-"    \n"
-"    Without options, unset first tries to unset a variable, and if that "
-"fails,\n"
-"    tries to unset a function.\n"
-"    \n"
-"    Some variables cannot be unset; also see `readonly'.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless an invalid option is given or a NAME is read-only."
-msgstr ""
-
-#: builtins.c:1132
-msgid ""
-"Set export attribute for shell variables.\n"
-"    \n"
-"    Marks each NAME for automatic export to the environment of subsequently\n"
-"    executed commands.  If VALUE is supplied, assign VALUE before "
-"exporting.\n"
-"    \n"
-"    Options:\n"
-"      -f\trefer to shell functions\n"
-"      -n\tremove the export property from each NAME\n"
-"      -p\tdisplay a list of all exported variables and functions\n"
-"    \n"
-"    An argument of `--' disables further option processing.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless an invalid option is given or NAME is invalid."
-msgstr ""
-
-#: builtins.c:1151
-msgid ""
-"Mark shell variables as unchangeable.\n"
-"    \n"
-"    Mark each NAME as read-only; the values of these NAMEs may not be\n"
-"    changed by subsequent assignment.  If VALUE is supplied, assign VALUE\n"
-"    before marking as read-only.\n"
-"    \n"
-"    Options:\n"
-"      -a\trefer to indexed array variables\n"
-"      -A\trefer to associative array variables\n"
-"      -f\trefer to shell functions\n"
-"      -p\tdisplay a list of all readonly variables and functions\n"
-"    \n"
-"    An argument of `--' disables further option processing.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless an invalid option is given or NAME is invalid."
-msgstr ""
-
-#: builtins.c:1172
-msgid ""
-"Shift positional parameters.\n"
-"    \n"
-"    Rename the positional parameters $N+1,$N+2 ... to $1,$2 ...  If N is\n"
-"    not given, it is assumed to be 1.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless N is negative or greater than $#."
-msgstr ""
-
-#: builtins.c:1184 builtins.c:1199
-msgid ""
-"Execute commands from a file in the current shell.\n"
-"    \n"
-"    Read and execute commands from FILENAME in the current shell.  The\n"
-"    entries in $PATH are used to find the directory containing FILENAME.\n"
-"    If any ARGUMENTS are supplied, they become the positional parameters\n"
-"    when FILENAME is executed.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns the status of the last command executed in FILENAME; fails if\n"
-"    FILENAME cannot be read."
-msgstr ""
-
-#: builtins.c:1215
-msgid ""
-"Suspend shell execution.\n"
-"    \n"
-"    Suspend the execution of this shell until it receives a SIGCONT signal.\n"
-"    Unless forced, login shells cannot be suspended.\n"
-"    \n"
-"    Options:\n"
-"      -f\tforce the suspend, even if the shell is a login shell\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless job control is not enabled or an error occurs."
-msgstr ""
-
-#: builtins.c:1231
-msgid ""
-"Evaluate conditional expression.\n"
-"    \n"
-"    Exits with a status of 0 (true) or 1 (false) depending on\n"
-"    the evaluation of EXPR.  Expressions may be unary or binary.  Unary\n"
-"    expressions are often used to examine the status of a file.  There\n"
-"    are string operators and numeric comparison operators as well.\n"
-"    \n"
-"    The behavior of test depends on the number of arguments.  Read the\n"
-"    bash manual page for the complete specification.\n"
-"    \n"
-"    File operators:\n"
-"    \n"
-"      -a FILE        True if file exists.\n"
-"      -b FILE        True if file is block special.\n"
-"      -c FILE        True if file is character special.\n"
-"      -d FILE        True if file is a directory.\n"
-"      -e FILE        True if file exists.\n"
-"      -f FILE        True if file exists and is a regular file.\n"
-"      -g FILE        True if file is set-group-id.\n"
-"      -h FILE        True if file is a symbolic link.\n"
-"      -L FILE        True if file is a symbolic link.\n"
-"      -k FILE        True if file has its `sticky' bit set.\n"
-"      -p FILE        True if file is a named pipe.\n"
-"      -r FILE        True if file is readable by you.\n"
-"      -s FILE        True if file exists and is not empty.\n"
-"      -S FILE        True if file is a socket.\n"
-"      -t FD          True if FD is opened on a terminal.\n"
-"      -u FILE        True if the file is set-user-id.\n"
-"      -w FILE        True if the file is writable by you.\n"
-"      -x FILE        True if the file is executable by you.\n"
-"      -O FILE        True if the file is effectively owned by you.\n"
-"      -G FILE        True if the file is effectively owned by your group.\n"
-"      -N FILE        True if the file has been modified since it was last "
-"read.\n"
-"    \n"
-"      FILE1 -nt FILE2  True if file1 is newer than file2 (according to\n"
-"                       modification date).\n"
-"    \n"
-"      FILE1 -ot FILE2  True if file1 is older than file2.\n"
-"    \n"
-"      FILE1 -ef FILE2  True if file1 is a hard link to file2.\n"
-"    \n"
-"    String operators:\n"
-"    \n"
-"      -z STRING      True if string is empty.\n"
-"    \n"
-"      -n STRING\n"
-"         STRING      True if string is not empty.\n"
-"    \n"
-"      STRING1 = STRING2\n"
-"                     True if the strings are equal.\n"
-"      STRING1 != STRING2\n"
-"                     True if the strings are not equal.\n"
-"      STRING1 < STRING2\n"
-"                     True if STRING1 sorts before STRING2 "
-"lexicographically.\n"
-"      STRING1 > STRING2\n"
-"                     True if STRING1 sorts after STRING2 lexicographically.\n"
-"    \n"
-"    Other operators:\n"
-"    \n"
-"      -o OPTION      True if the shell option OPTION is enabled.\n"
-"      -v VAR\t True if the shell variable VAR is set\n"
-"      ! EXPR         True if expr is false.\n"
-"      EXPR1 -a EXPR2 True if both expr1 AND expr2 are true.\n"
-"      EXPR1 -o EXPR2 True if either expr1 OR expr2 is true.\n"
-"    \n"
-"      arg1 OP arg2   Arithmetic tests.  OP is one of -eq, -ne,\n"
-"                     -lt, -le, -gt, or -ge.\n"
-"    \n"
-"    Arithmetic binary operators return true if ARG1 is equal, not-equal,\n"
-"    less-than, less-than-or-equal, greater-than, or greater-than-or-equal\n"
-"    than ARG2.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success if EXPR evaluates to true; fails if EXPR evaluates to\n"
-"    false or an invalid argument is given."
-msgstr ""
-
-#: builtins.c:1311
-msgid ""
-"Evaluate conditional expression.\n"
-"    \n"
-"    This is a synonym for the \"test\" builtin, but the last argument must\n"
-"    be a literal `]', to match the opening `['."
-msgstr ""
-
-#: builtins.c:1320
-msgid ""
-"Display process times.\n"
-"    \n"
-"    Prints the accumulated user and system times for the shell and all of "
-"its\n"
-"    child processes.\n"
-"    \n"
-"    Exit Status:\n"
-"    Always succeeds."
-msgstr ""
-
-#: builtins.c:1332
-msgid ""
-"Trap signals and other events.\n"
-"    \n"
-"    Defines and activates handlers to be run when the shell receives "
-"signals\n"
-"    or other conditions.\n"
-"    \n"
-"    ARG is a command to be read and executed when the shell receives the\n"
-"    signal(s) SIGNAL_SPEC.  If ARG is absent (and a single SIGNAL_SPEC\n"
-"    is supplied) or `-', each specified signal is reset to its original\n"
-"    value.  If ARG is the null string each SIGNAL_SPEC is ignored by the\n"
-"    shell and by the commands it invokes.\n"
-"    \n"
-"    If a SIGNAL_SPEC is EXIT (0) ARG is executed on exit from the shell.  "
-"If\n"
-"    a SIGNAL_SPEC is DEBUG, ARG is executed before every simple command.  "
-"If\n"
-"    a SIGNAL_SPEC is RETURN, ARG is executed each time a shell function or "
-"a\n"
-"    script run by the . or source builtins finishes executing.  A "
-"SIGNAL_SPEC\n"
-"    of ERR means to execute ARG each time a command's failure would cause "
-"the\n"
-"    shell to exit when the -e option is enabled.\n"
-"    \n"
-"    If no arguments are supplied, trap prints the list of commands "
-"associated\n"
-"    with each signal.\n"
-"    \n"
-"    Options:\n"
-"      -l\tprint a list of signal names and their corresponding numbers\n"
-"      -p\tdisplay the trap commands associated with each SIGNAL_SPEC\n"
-"    \n"
-"    Each SIGNAL_SPEC is either a signal name in <signal.h> or a signal "
-"number.\n"
-"    Signal names are case insensitive and the SIG prefix is optional.  A\n"
-"    signal may be sent to the shell with \"kill -signal $$\".\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless a SIGSPEC is invalid or an invalid option is "
-"given."
-msgstr ""
-
-#: builtins.c:1368
-msgid ""
-"Display information about command type.\n"
-"    \n"
-"    For each NAME, indicate how it would be interpreted if used as a\n"
-"    command name.\n"
-"    \n"
-"    Options:\n"
-"      -a\tdisplay all locations containing an executable named NAME;\n"
-"    \tincludes aliases, builtins, and functions, if and only if\n"
-"    \tthe `-p' option is not also used\n"
-"      -f\tsuppress shell function lookup\n"
-"      -P\tforce a PATH search for each NAME, even if it is an alias,\n"
-"    \tbuiltin, or function, and returns the name of the disk file\n"
-"    \tthat would be executed\n"
-"      -p\treturns either the name of the disk file that would be executed,\n"
-"    \tor nothing if `type -t NAME' would not return `file'.\n"
-"      -t\toutput a single word which is one of `alias', `keyword',\n"
-"    \t`function', `builtin', `file' or `', if NAME is an alias, shell\n"
-"    \treserved word, shell function, shell builtin, disk file, or not\n"
-"    \tfound, respectively\n"
-"    \n"
-"    Arguments:\n"
-"      NAME\tCommand name to be interpreted.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success if all of the NAMEs are found; fails if any are not "
-"found."
-msgstr ""
-
-#: builtins.c:1399
-msgid ""
-"Modify shell resource limits.\n"
-"    \n"
-"    Provides control over the resources available to the shell and "
-"processes\n"
-"    it creates, on systems that allow such control.\n"
-"    \n"
-"    Options:\n"
-"      -S\tuse the `soft' resource limit\n"
-"      -H\tuse the `hard' resource limit\n"
-"      -a\tall current limits are reported\n"
-"      -b\tthe socket buffer size\n"
-"      -c\tthe maximum size of core files created\n"
-"      -d\tthe maximum size of a process's data segment\n"
-"      -e\tthe maximum scheduling priority (`nice')\n"
-"      -f\tthe maximum size of files written by the shell and its children\n"
-"      -i\tthe maximum number of pending signals\n"
-"      -l\tthe maximum size a process may lock into memory\n"
-"      -m\tthe maximum resident set size\n"
-"      -n\tthe maximum number of open file descriptors\n"
-"      -p\tthe pipe buffer size\n"
-"      -q\tthe maximum number of bytes in POSIX message queues\n"
-"      -r\tthe maximum real-time scheduling priority\n"
-"      -s\tthe maximum stack size\n"
-"      -t\tthe maximum amount of cpu time in seconds\n"
-"      -u\tthe maximum number of user processes\n"
-"      -v\tthe size of virtual memory\n"
-"      -x\tthe maximum number of file locks\n"
-"    \n"
-"    If LIMIT is given, it is the new value of the specified resource; the\n"
-"    special LIMIT values `soft', `hard', and `unlimited' stand for the\n"
-"    current soft limit, the current hard limit, and no limit, respectively.\n"
-"    Otherwise, the current value of the specified resource is printed.  If\n"
-"    no option is given, then -f is assumed.\n"
-"    \n"
-"    Values are in 1024-byte increments, except for -t, which is in seconds,\n"
-"    -p, which is in increments of 512 bytes, and -u, which is an unscaled\n"
-"    number of processes.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless an invalid option is supplied or an error occurs."
-msgstr ""
-
-#: builtins.c:1444
-msgid ""
-"Display or set file mode mask.\n"
-"    \n"
-"    Sets the user file-creation mask to MODE.  If MODE is omitted, prints\n"
-"    the current value of the mask.\n"
-"    \n"
-"    If MODE begins with a digit, it is interpreted as an octal number;\n"
-"    otherwise it is a symbolic mode string like that accepted by chmod(1).\n"
-"    \n"
-"    Options:\n"
-"      -p\tif MODE is omitted, output in a form that may be reused as input\n"
-"      -S\tmakes the output symbolic; otherwise an octal number is output\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless MODE is invalid or an invalid option is given."
-msgstr ""
-
-#: builtins.c:1464
-msgid ""
-"Wait for job completion and return exit status.\n"
-"    \n"
-"    Waits for the process identified by ID, which may be a process ID or a\n"
-"    job specification, and reports its termination status.  If ID is not\n"
-"    given, waits for all currently active child processes, and the return\n"
-"    status is zero.  If ID is a a job specification, waits for all "
-"processes\n"
-"    in the job's pipeline.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns the status of ID; fails if ID is invalid or an invalid option "
-"is\n"
-"    given."
-msgstr ""
-
-#: builtins.c:1482
-msgid ""
-"Wait for process completion and return exit status.\n"
-"    \n"
-"    Waits for the specified process and reports its termination status.  If\n"
-"    PID is not given, all currently active child processes are waited for,\n"
-"    and the return code is zero.  PID must be a process ID.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns the status of ID; fails if ID is invalid or an invalid option "
-"is\n"
-"    given."
-msgstr ""
-
-#: builtins.c:1497
-msgid ""
-"Execute commands for each member in a list.\n"
-"    \n"
-"    The `for' loop executes a sequence of commands for each member in a\n"
-"    list of items.  If `in WORDS ...;' is not present, then `in \"$@\"' is\n"
-"    assumed.  For each element in WORDS, NAME is set to that element, and\n"
-"    the COMMANDS are executed.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns the status of the last command executed."
-msgstr ""
-
-#: builtins.c:1511
-msgid ""
-"Arithmetic for loop.\n"
-"    \n"
-"    Equivalent to\n"
-"    \t(( EXP1 ))\n"
-"    \twhile (( EXP2 )); do\n"
-"    \t\tCOMMANDS\n"
-"    \t\t(( EXP3 ))\n"
-"    \tdone\n"
-"    EXP1, EXP2, and EXP3 are arithmetic expressions.  If any expression is\n"
-"    omitted, it behaves as if it evaluates to 1.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns the status of the last command executed."
-msgstr ""
-
-#: builtins.c:1529
-msgid ""
-"Select words from a list and execute commands.\n"
-"    \n"
-"    The WORDS are expanded, generating a list of words.  The\n"
-"    set of expanded words is printed on the standard error, each\n"
-"    preceded by a number.  If `in WORDS' is not present, `in \"$@\"'\n"
-"    is assumed.  The PS3 prompt is then displayed and a line read\n"
-"    from the standard input.  If the line consists of the number\n"
-"    corresponding to one of the displayed words, then NAME is set\n"
-"    to that word.  If the line is empty, WORDS and the prompt are\n"
-"    redisplayed.  If EOF is read, the command completes.  Any other\n"
-"    value read causes NAME to be set to null.  The line read is saved\n"
-"    in the variable REPLY.  COMMANDS are executed after each selection\n"
-"    until a break command is executed.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns the status of the last command executed."
-msgstr ""
-
-#: builtins.c:1550
-msgid ""
-"Report time consumed by pipeline's execution.\n"
-"    \n"
-"    Execute PIPELINE and print a summary of the real time, user CPU time,\n"
-"    and system CPU time spent executing PIPELINE when it terminates.\n"
-"    \n"
-"    Options:\n"
-"      -p\tprint the timing summary in the portable Posix format\n"
-"    \n"
-"    The value of the TIMEFORMAT variable is used as the output format.\n"
-"    \n"
-"    Exit Status:\n"
-"    The return status is the return status of PIPELINE."
-msgstr ""
-
-#: builtins.c:1567
-msgid ""
-"Execute commands based on pattern matching.\n"
-"    \n"
-"    Selectively execute COMMANDS based upon WORD matching PATTERN.  The\n"
-"    `|' is used to separate multiple patterns.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns the status of the last command executed."
-msgstr ""
-
-#: builtins.c:1579
-msgid ""
-"Execute commands based on conditional.\n"
-"    \n"
-"    The `if COMMANDS' list is executed.  If its exit status is zero, then "
-"the\n"
-"    `then COMMANDS' list is executed.  Otherwise, each `elif COMMANDS' list "
-"is\n"
-"    executed in turn, and if its exit status is zero, the corresponding\n"
-"    `then COMMANDS' list is executed and the if command completes.  "
-"Otherwise,\n"
-"    the `else COMMANDS' list is executed, if present.  The exit status of "
-"the\n"
-"    entire construct is the exit status of the last command executed, or "
-"zero\n"
-"    if no condition tested true.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns the status of the last command executed."
-msgstr ""
-
-#: builtins.c:1596
-msgid ""
-"Execute commands as long as a test succeeds.\n"
-"    \n"
-"    Expand and execute COMMANDS as long as the final command in the\n"
-"    `while' COMMANDS has an exit status of zero.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns the status of the last command executed."
-msgstr ""
-
-#: builtins.c:1608
-msgid ""
-"Execute commands as long as a test does not succeed.\n"
-"    \n"
-"    Expand and execute COMMANDS as long as the final command in the\n"
-"    `until' COMMANDS has an exit status which is not zero.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns the status of the last command executed."
-msgstr ""
-
-#: builtins.c:1620
-msgid ""
-"Create a coprocess named NAME.\n"
-"    \n"
-"    Execute COMMAND asynchronously, with the standard output and standard\n"
-"    input of the command connected via a pipe to file descriptors assigned\n"
-"    to indices 0 and 1 of an array variable NAME in the executing shell.\n"
-"    The default NAME is \"COPROC\".\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns the exit status of COMMAND."
-msgstr ""
-
-#: builtins.c:1634
-msgid ""
-"Define shell function.\n"
-"    \n"
-"    Create a shell function named NAME.  When invoked as a simple command,\n"
-"    NAME runs COMMANDs in the calling shell's context.  When NAME is "
-"invoked,\n"
-"    the arguments are passed to the function as $1...$n, and the function's\n"
-"    name is in $FUNCNAME.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless NAME is readonly."
-msgstr ""
-
-#: builtins.c:1648
-msgid ""
-"Group commands as a unit.\n"
-"    \n"
-"    Run a set of commands in a group.  This is one way to redirect an\n"
-"    entire set of commands.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns the status of the last command executed."
-msgstr ""
-
-#: builtins.c:1660
-msgid ""
-"Resume job in foreground.\n"
-"    \n"
-"    Equivalent to the JOB_SPEC argument to the `fg' command.  Resume a\n"
-"    stopped or background job.  JOB_SPEC can specify either a job name\n"
-"    or a job number.  Following JOB_SPEC with a `&' places the job in\n"
-"    the background, as if the job specification had been supplied as an\n"
-"    argument to `bg'.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns the status of the resumed job."
-msgstr ""
-
-#: builtins.c:1675
-msgid ""
-"Evaluate arithmetic expression.\n"
-"    \n"
-"    The EXPRESSION is evaluated according to the rules for arithmetic\n"
-"    evaluation.  Equivalent to \"let EXPRESSION\".\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns 1 if EXPRESSION evaluates to 0; returns 0 otherwise."
-msgstr ""
-
-#: builtins.c:1687
-msgid ""
-"Execute conditional command.\n"
-"    \n"
-"    Returns a status of 0 or 1 depending on the evaluation of the "
-"conditional\n"
-"    expression EXPRESSION.  Expressions are composed of the same primaries "
-"used\n"
-"    by the `test' builtin, and may be combined using the following "
-"operators:\n"
-"    \n"
-"      ( EXPRESSION )\tReturns the value of EXPRESSION\n"
-"      ! EXPRESSION\t\tTrue if EXPRESSION is false; else false\n"
-"      EXPR1 && EXPR2\tTrue if both EXPR1 and EXPR2 are true; else false\n"
-"      EXPR1 || EXPR2\tTrue if either EXPR1 or EXPR2 is true; else false\n"
-"    \n"
-"    When the `==' and `!=' operators are used, the string to the right of\n"
-"    the operator is used as a pattern and pattern matching is performed.\n"
-"    When the `=~' operator is used, the string to the right of the operator\n"
-"    is matched as a regular expression.\n"
-"    \n"
-"    The && and || operators do not evaluate EXPR2 if EXPR1 is sufficient to\n"
-"    determine the expression's value.\n"
-"    \n"
-"    Exit Status:\n"
-"    0 or 1 depending on value of EXPRESSION."
-msgstr ""
-
-#: builtins.c:1713
-msgid ""
-"Common shell variable names and usage.\n"
-"    \n"
-"    BASH_VERSION\tVersion information for this Bash.\n"
-"    CDPATH\tA colon-separated list of directories to search\n"
-"    \t\tfor directories given as arguments to `cd'.\n"
-"    GLOBIGNORE\tA colon-separated list of patterns describing filenames to\n"
-"    \t\tbe ignored by pathname expansion.\n"
-"    HISTFILE\tThe name of the file where your command history is stored.\n"
-"    HISTFILESIZE\tThe maximum number of lines this file can contain.\n"
-"    HISTSIZE\tThe maximum number of history lines that a running\n"
-"    \t\tshell can access.\n"
-"    HOME\tThe complete pathname to your login directory.\n"
-"    HOSTNAME\tThe name of the current host.\n"
-"    HOSTTYPE\tThe type of CPU this version of Bash is running under.\n"
-"    IGNOREEOF\tControls the action of the shell on receipt of an EOF\n"
-"    \t\tcharacter as the sole input.  If set, then the value\n"
-"    \t\tof it is the number of EOF characters that can be seen\n"
-"    \t\tin a row on an empty line before the shell will exit\n"
-"    \t\t(default 10).  When unset, EOF signifies the end of input.\n"
-"    MACHTYPE\tA string describing the current system Bash is running on.\n"
-"    MAILCHECK\tHow often, in seconds, Bash checks for new mail.\n"
-"    MAILPATH\tA colon-separated list of filenames which Bash checks\n"
-"    \t\tfor new mail.\n"
-"    OSTYPE\tThe version of Unix this version of Bash is running on.\n"
-"    PATH\tA colon-separated list of directories to search when\n"
-"    \t\tlooking for commands.\n"
-"    PROMPT_COMMAND\tA command to be executed before the printing of each\n"
-"    \t\tprimary prompt.\n"
-"    PS1\t\tThe primary prompt string.\n"
-"    PS2\t\tThe secondary prompt string.\n"
-"    PWD\t\tThe full pathname of the current directory.\n"
-"    SHELLOPTS\tA colon-separated list of enabled shell options.\n"
-"    TERM\tThe name of the current terminal type.\n"
-"    TIMEFORMAT\tThe output format for timing statistics displayed by the\n"
-"    \t\t`time' reserved word.\n"
-"    auto_resume\tNon-null means a command word appearing on a line by\n"
-"    \t\titself is first looked for in the list of currently\n"
-"    \t\tstopped jobs.  If found there, that job is foregrounded.\n"
-"    \t\tA value of `exact' means that the command word must\n"
-"    \t\texactly match a command in the list of stopped jobs.  A\n"
-"    \t\tvalue of `substring' means that the command word must\n"
-"    \t\tmatch a substring of the job.  Any other value means that\n"
-"    \t\tthe command must be a prefix of a stopped job.\n"
-"    histchars\tCharacters controlling history expansion and quick\n"
-"    \t\tsubstitution.  The first character is the history\n"
-"    \t\tsubstitution character, usually `!'.  The second is\n"
-"    \t\tthe `quick substitution' character, usually `^'.  The\n"
-"    \t\tthird is the `history comment' character, usually `#'.\n"
-"    HISTIGNORE\tA colon-separated list of patterns used to decide which\n"
-"    \t\tcommands should be saved on the history list.\n"
-msgstr ""
-
-#: builtins.c:1770
-msgid ""
-"Add directories to stack.\n"
-"    \n"
-"    Adds a directory to the top of the directory stack, or rotates\n"
-"    the stack, making the new top of the stack the current working\n"
-"    directory.  With no arguments, exchanges the top two directories.\n"
-"    \n"
-"    Options:\n"
-"      -n\tSuppresses the normal change of directory when adding\n"
-"    \tdirectories to the stack, so only the stack is manipulated.\n"
-"    \n"
-"    Arguments:\n"
-"      +N\tRotates the stack so that the Nth directory (counting\n"
-"    \tfrom the left of the list shown by `dirs', starting with\n"
-"    \tzero) is at the top.\n"
-"    \n"
-"      -N\tRotates the stack so that the Nth directory (counting\n"
-"    \tfrom the right of the list shown by `dirs', starting with\n"
-"    \tzero) is at the top.\n"
-"    \n"
-"      dir\tAdds DIR to the directory stack at the top, making it the\n"
-"    \tnew current working directory.\n"
-"    \n"
-"    The `dirs' builtin displays the directory stack.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless an invalid argument is supplied or the directory\n"
-"    change fails."
-msgstr ""
-
-#: builtins.c:1804
-msgid ""
-"Remove directories from stack.\n"
-"    \n"
-"    Removes entries from the directory stack.  With no arguments, removes\n"
-"    the top directory from the stack, and changes to the new top directory.\n"
-"    \n"
-"    Options:\n"
-"      -n\tSuppresses the normal change of directory when removing\n"
-"    \tdirectories from the stack, so only the stack is manipulated.\n"
-"    \n"
-"    Arguments:\n"
-"      +N\tRemoves the Nth entry counting from the left of the list\n"
-"    \tshown by `dirs', starting with zero.  For example: `popd +0'\n"
-"    \tremoves the first directory, `popd +1' the second.\n"
-"    \n"
-"      -N\tRemoves the Nth entry counting from the right of the list\n"
-"    \tshown by `dirs', starting with zero.  For example: `popd -0'\n"
-"    \tremoves the last directory, `popd -1' the next to last.\n"
-"    \n"
-"    The `dirs' builtin displays the directory stack.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless an invalid argument is supplied or the directory\n"
-"    change fails."
-msgstr ""
-
-#: builtins.c:1834
-msgid ""
-"Display directory stack.\n"
-"    \n"
-"    Display the list of currently remembered directories.  Directories\n"
-"    find their way onto the list with the `pushd' command; you can get\n"
-"    back up through the list with the `popd' command.\n"
-"    \n"
-"    Options:\n"
-"      -c\tclear the directory stack by deleting all of the elements\n"
-"      -l\tdo not print tilde-prefixed versions of directories relative\n"
-"    \tto your home directory\n"
-"      -p\tprint the directory stack with one entry per line\n"
-"      -v\tprint the directory stack with one entry per line prefixed\n"
-"    \twith its position in the stack\n"
-"    \n"
-"    Arguments:\n"
-"      +N\tDisplays the Nth entry counting from the left of the list shown "
-"by\n"
-"    \tdirs when invoked without options, starting with zero.\n"
-"    \n"
-"      -N\tDisplays the Nth entry counting from the right of the list shown "
-"by\n"
-"    \tdirs when invoked without options, starting with zero.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless an invalid option is supplied or an error occurs."
-msgstr ""
-
-#: builtins.c:1863
-msgid ""
-"Set and unset shell options.\n"
-"    \n"
-"    Change the setting of each shell option OPTNAME.  Without any option\n"
-"    arguments, list all shell options with an indication of whether or not "
-"each\n"
-"    is set.\n"
-"    \n"
-"    Options:\n"
-"      -o\trestrict OPTNAMEs to those defined for use with `set -o'\n"
-"      -p\tprint each shell option with an indication of its status\n"
-"      -q\tsuppress output\n"
-"      -s\tenable (set) each OPTNAME\n"
-"      -u\tdisable (unset) each OPTNAME\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success if OPTNAME is enabled; fails if an invalid option is\n"
-"    given or OPTNAME is disabled."
-msgstr ""
-
-#: builtins.c:1884
-msgid ""
-"Formats and prints ARGUMENTS under control of the FORMAT.\n"
-"    \n"
-"    Options:\n"
-"      -v var\tassign the output to shell variable VAR rather than\n"
-"    \t\tdisplay it on the standard output\n"
-"    \n"
-"    FORMAT is a character string which contains three types of objects: "
-"plain\n"
-"    characters, which are simply copied to standard output; character "
-"escape\n"
-"    sequences, which are converted and copied to the standard output; and\n"
-"    format specifications, each of which causes printing of the next "
-"successive\n"
-"    argument.\n"
-"    \n"
-"    In addition to the standard format specifications described in printf"
-"(1)\n"
-"    and printf(3), printf interprets:\n"
-"    \n"
-"      %b\texpand backslash escape sequences in the corresponding argument\n"
-"      %q\tquote the argument in a way that can be reused as shell input\n"
-"      %(fmt)T output the date-time string resulting from using FMT as a "
-"format\n"
-"            string for strftime(3)\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless an invalid option is given or a write or "
-"assignment\n"
-"    error occurs."
-msgstr ""
-
-#: builtins.c:1913
-msgid ""
-"Specify how arguments are to be completed by Readline.\n"
-"    \n"
-"    For each NAME, specify how arguments are to be completed.  If no "
-"options\n"
-"    are supplied, existing completion specifications are printed in a way "
-"that\n"
-"    allows them to be reused as input.\n"
-"    \n"
-"    Options:\n"
-"      -p\tprint existing completion specifications in a reusable format\n"
-"      -r\tremove a completion specification for each NAME, or, if no\n"
-"    \tNAMEs are supplied, all completion specifications\n"
-"      -D\tapply the completions and actions as the default for commands\n"
-"    \twithout any specific completion defined\n"
-"      -E\tapply the completions and actions to \"empty\" commands --\n"
-"    \tcompletion attempted on a blank line\n"
-"    \n"
-"    When completion is attempted, the actions are applied in the order the\n"
-"    uppercase-letter options are listed above.  The -D option takes\n"
-"    precedence over -E.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless an invalid option is supplied or an error occurs."
-msgstr ""
-
-#: builtins.c:1941
-msgid ""
-"Display possible completions depending on the options.\n"
-"    \n"
-"    Intended to be used from within a shell function generating possible\n"
-"    completions.  If the optional WORD argument is supplied, matches "
-"against\n"
-"    WORD are generated.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless an invalid option is supplied or an error occurs."
-msgstr ""
-
-#: builtins.c:1956
-msgid ""
-"Modify or display completion options.\n"
-"    \n"
-"    Modify the completion options for each NAME, or, if no NAMEs are "
-"supplied,\n"
-"    the completion currently being executed.  If no OPTIONs are given, "
-"print\n"
-"    the completion options for each NAME or the current completion "
-"specification.\n"
-"    \n"
-"    Options:\n"
-"    \t-o option\tSet completion option OPTION for each NAME\n"
-"    \t-D\t\tChange options for the \"default\" command completion\n"
-"    \t-E\t\tChange options for the \"empty\" command completion\n"
-"    \n"
-"    Using `+o' instead of `-o' turns off the specified option.\n"
-"    \n"
-"    Arguments:\n"
-"    \n"
-"    Each NAME refers to a command for which a completion specification must\n"
-"    have previously been defined using the `complete' builtin.  If no NAMEs\n"
-"    are supplied, compopt must be called by a function currently generating\n"
-"    completions, and the options for that currently-executing completion\n"
-"    generator are modified.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless an invalid option is supplied or NAME does not\n"
-"    have a completion specification defined."
-msgstr ""
-
-#: builtins.c:1986
-msgid ""
-"Read lines from the standard input into an indexed array variable.\n"
-"    \n"
-"    Read lines from the standard input into the indexed array variable "
-"ARRAY, or\n"
-"    from file descriptor FD if the -u option is supplied.  The variable "
-"MAPFILE\n"
-"    is the default ARRAY.\n"
-"    \n"
-"    Options:\n"
-"      -n count\tCopy at most COUNT lines.  If COUNT is 0, all lines are "
-"copied.\n"
-"      -O origin\tBegin assigning to ARRAY at index ORIGIN.  The default "
-"index is 0.\n"
-"      -s count \tDiscard the first COUNT lines read.\n"
-"      -t\t\tRemove a trailing newline from each line read.\n"
-"      -u fd\t\tRead lines from file descriptor FD instead of the standard "
-"input.\n"
-"      -C callback\tEvaluate CALLBACK each time QUANTUM lines are read.\n"
-"      -c quantum\tSpecify the number of lines read between each call to "
-"CALLBACK.\n"
-"    \n"
-"    Arguments:\n"
-"      ARRAY\t\tArray variable name to use for file data.\n"
-"    \n"
-"    If -C is supplied without -c, the default quantum is 5000.  When\n"
-"    CALLBACK is evaluated, it is supplied the index of the next array\n"
-"    element to be assigned and the line to be assigned to that element\n"
-"    as additional arguments.\n"
-"    \n"
-"    If not supplied with an explicit origin, mapfile will clear ARRAY "
-"before\n"
-"    assigning to it.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless an invalid option is given or ARRAY is readonly "
-"or\n"
-"    not an indexed array."
-msgstr ""
-
-#: builtins.c:2020
-msgid ""
-"Read lines from a file into an array variable.\n"
-"    \n"
-"    A synonym for `mapfile'."
-msgstr ""
diff --git a/po/builtins.pot b/po/builtins.pot
deleted file mode 100644 (file)
index e30179c..0000000
+++ /dev/null
@@ -1,2845 +0,0 @@
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:244
-msgid "`alias' with no arguments or with the -p option prints the list"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:245
-msgid "of aliases in the form alias NAME=VALUE on standard output."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:246
-msgid "Otherwise, an alias is defined for each NAME whose VALUE is given."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:247
-msgid "A trailing space in VALUE causes the next word to be checked for"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:248
-msgid "alias substitution when the alias is expanded.  Alias returns"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:249
-msgid "true unless a NAME is given for which no alias has been defined."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:257
-msgid ""
-"Remove NAMEs from the list of defined aliases.  If the -a option is given,"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:258
-msgid "then remove all alias definitions."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:266
-msgid "Bind a key sequence to a Readline function or a macro, or set"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:267
-msgid "a Readline variable.  The non-option argument syntax is equivalent"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:268
-msgid "to that found in ~/.inputrc, but must be passed as a single argument:"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:269
-msgid "bind '\"\\C-x\\C-r\": re-read-init-file'."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:270
-msgid "bind accepts the following options:"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:271
-msgid ""
-"  -m  keymap         Use `keymap' as the keymap for the duration of this"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:272
-msgid "                     command.  Acceptable keymap names are emacs,"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:273
-msgid ""
-"                     emacs-standard, emacs-meta, emacs-ctlx, vi, vi-move,"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:274
-msgid "                     vi-command, and vi-insert."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:275
-msgid "  -l                 List names of functions."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:276
-msgid "  -P                 List function names and bindings."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:277
-msgid "  -p                 List functions and bindings in a form that can be"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:278
-msgid "                     reused as input."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:279
-msgid "  -r  keyseq         Remove the binding for KEYSEQ."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:280
-msgid "  -x  keyseq:shell-command\tCause SHELL-COMMAND to be executed when"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:281
-msgid "\t\t\t\tKEYSEQ is entered."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:282
-msgid "  -f  filename       Read key bindings from FILENAME."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:283
-msgid "  -q  function-name  Query about which keys invoke the named function."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:284
-msgid ""
-"  -u  function-name  Unbind all keys which are bound to the named function."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:285
-msgid "  -V                 List variable names and values"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:286
-msgid "  -v                 List variable names and values in a form that can"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:287
-msgid "                     be reused as input."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:288
-msgid ""
-"  -S                 List key sequences that invoke macros and their values"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:289
-msgid ""
-"  -s                 List key sequences that invoke macros and their values"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:290
-msgid "                     in a form that can be reused as input."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:297
-msgid "Exit from within a FOR, WHILE or UNTIL loop.  If N is specified,"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:298
-msgid "break N levels."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:304
-msgid "Resume the next iteration of the enclosing FOR, WHILE or UNTIL loop."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:305
-msgid "If N is specified, resume at the N-th enclosing loop."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:311
-msgid "Run a shell builtin.  This is useful when you wish to rename a"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:312
-msgid "shell builtin to be a function, but need the functionality of the"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:313
-msgid "builtin within the function itself."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:320
-msgid "Returns the context of the current subroutine call."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:321
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:325
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:390
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:392
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:401
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:404
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:408
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:445
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:487
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:491
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:498
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:509
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:513
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:552
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:555
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:559
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:562
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:630
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:637
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:692
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:713
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:718
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:722
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:745
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:835
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:919
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:921
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:943
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:946
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:948
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:950
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:952
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:954
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:957
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:966
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:968
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:973
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:976
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1019
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1024
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1028
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1032
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1034
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1047
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1062
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1226
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1231
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1305
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1309
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1313
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1316
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1319
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1331
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1335
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1339
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1342
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1354
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1362
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1365
-msgid ""
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:322
-msgid "Without EXPR, returns returns \"$line $filename\".  With EXPR,"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:323
-msgid "returns \"$line $subroutine $filename\"; this extra information"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:324
-msgid "can be used used to provide a stack trace."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:326
-msgid "The value of EXPR indicates how many call frames to go back before the"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:327
-msgid "current one; the top frame is frame 0."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:334
-msgid "Change the current directory to DIR.  The variable $HOME is the"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:335
-msgid "default DIR.  The variable CDPATH defines the search path for"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:336
-msgid "the directory containing DIR.  Alternative directory names in CDPATH"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:337
-msgid "are separated by a colon (:).  A null directory name is the same as"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:338
-msgid "the current directory, i.e. `.'.  If DIR begins with a slash (/),"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:339
-msgid "then CDPATH is not used.  If the directory is not found, and the"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:340
-msgid "shell option `cdable_vars' is set, then try the word as a variable"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:341
-msgid "name.  If that variable has a value, then cd to the value of that"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:342
-msgid "variable.  The -P option says to use the physical directory structure"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:343
-msgid ""
-"instead of following symbolic links; the -L option forces symbolic links"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:344
-msgid "to be followed."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:350
-msgid "Print the current working directory.  With the -P option, pwd prints"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:351
-msgid "the physical directory, without any symbolic links; the -L option"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:352
-msgid "makes pwd follow symbolic links."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:358
-msgid "No effect; the command does nothing.  A zero exit code is returned."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:364
-msgid "Return a successful result."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:370
-msgid "Return an unsuccessful result."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:376
-msgid "Runs COMMAND with ARGS ignoring shell functions.  If you have a shell"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:377
-msgid "function called `ls', and you wish to call the command `ls', you can"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:378
-msgid "say \"command ls\".  If the -p option is given, a default value is used"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:379
-msgid "for PATH that is guaranteed to find all of the standard utilities.  If"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:380
-msgid "the -V or -v option is given, a string is printed describing COMMAND."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:381
-msgid "The -V option produces a more verbose description."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:387
-msgid "Declare variables and/or give them attributes.  If no NAMEs are"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:388
-msgid "given, then display the values of variables instead.  The -p option"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:389
-msgid "will display the attributes and values of each NAME."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:391
-msgid "The flags are:"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:393
-msgid "  -a\tto make NAMEs arrays (if supported)"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:394
-msgid "  -f\tto select from among function names only"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:395
-msgid ""
-"  -F\tto display function names (and line number and source file name if"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:396
-msgid "\tdebugging) without definitions"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:397
-msgid "  -i\tto make NAMEs have the `integer' attribute"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:398
-msgid "  -r\tto make NAMEs readonly"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:399
-msgid "  -t\tto make NAMEs have the `trace' attribute"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:400
-msgid "  -x\tto make NAMEs export"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:402
-msgid "Variables with the integer attribute have arithmetic evaluation (see"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:403
-msgid "`let') done when the variable is assigned to."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:405
-msgid "When displaying values of variables, -f displays a function's name"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:406
-msgid "and definition.  The -F option restricts the display to function"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:407
-msgid "name only."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:409
-msgid "Using `+' instead of `-' turns off the given attribute instead.  When"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:410
-msgid "used in a function, makes NAMEs local, as with the `local' command."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:416
-msgid "Obsolete.  See `declare'."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:422
-msgid "Create a local variable called NAME, and give it VALUE.  LOCAL"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:423
-msgid "can only be used within a function; it makes the variable NAME"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:424
-msgid "have a visible scope restricted to that function and its children."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:431
-msgid "Output the ARGs.  If -n is specified, the trailing newline is"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:432
-msgid "suppressed.  If the -e option is given, interpretation of the"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:433
-msgid "following backslash-escaped characters is turned on:"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:434
-msgid "\t\\a\talert (bell)"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:435
-msgid "\t\\b\tbackspace"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:436
-msgid "\t\\c\tsuppress trailing newline"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:437
-msgid "\t\\E\tescape character"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:438
-msgid "\t\\f\tform feed"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:439
-msgid "\t\\n\tnew line"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:440
-msgid "\t\\r\tcarriage return"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:441
-msgid "\t\\t\thorizontal tab"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:442
-msgid "\t\\v\tvertical tab"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:443
-msgid "\t\\\\\tbackslash"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:444
-msgid "\t\\num\tthe character whose ASCII code is NUM (octal)."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:446
-msgid "You can explicitly turn off the interpretation of the above characters"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:447
-msgid "with the -E option."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:455
-msgid ""
-"Output the ARGs.  If -n is specified, the trailing newline is suppressed."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:462
-msgid "Enable and disable builtin shell commands.  This allows"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:463
-msgid "you to use a disk command which has the same name as a shell"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:464
-msgid "builtin without specifying a full pathname.  If -n is used, the"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:465
-msgid "NAMEs become disabled; otherwise NAMEs are enabled.  For example,"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:466
-msgid "to use the `test' found in $PATH instead of the shell builtin"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:467
-msgid "version, type `enable -n test'.  On systems supporting dynamic"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:468
-msgid "loading, the -f option may be used to load new builtins from the"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:469
-msgid "shared object FILENAME.  The -d option will delete a builtin"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:470
-msgid "previously loaded with -f.  If no non-option names are given, or"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:471
-msgid "the -p option is supplied, a list of builtins is printed.  The"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:472
-msgid "-a option means to print every builtin with an indication of whether"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:473
-msgid ""
-"or not it is enabled.  The -s option restricts the output to the POSIX.2"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:474
-msgid ""
-"`special' builtins.  The -n option displays a list of all disabled builtins."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:480
-msgid "Read ARGs as input to the shell and execute the resulting command(s)."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:486
-msgid "Getopts is used by shell procedures to parse positional parameters."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:488
-msgid "OPTSTRING contains the option letters to be recognized; if a letter"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:489
-msgid "is followed by a colon, the option is expected to have an argument,"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:490
-msgid "which should be separated from it by white space."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:492
-msgid "Each time it is invoked, getopts will place the next option in the"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:493
-msgid "shell variable $name, initializing name if it does not exist, and"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:494
-msgid "the index of the next argument to be processed into the shell"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:495
-msgid "variable OPTIND.  OPTIND is initialized to 1 each time the shell or"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:496
-msgid "a shell script is invoked.  When an option requires an argument,"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:497
-msgid "getopts places that argument into the shell variable OPTARG."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:499
-msgid "getopts reports errors in one of two ways.  If the first character"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:500
-msgid "of OPTSTRING is a colon, getopts uses silent error reporting.  In"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:501
-msgid "this mode, no error messages are printed.  If an invalid option is"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:502
-msgid "seen, getopts places the option character found into OPTARG.  If a"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:503
-msgid "required argument is not found, getopts places a ':' into NAME and"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:504
-msgid "sets OPTARG to the option character found.  If getopts is not in"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:505
-msgid "silent mode, and an invalid option is seen, getopts places '?' into"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:506
-msgid "NAME and unsets OPTARG.  If a required argument is not found, a '?'"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:507
-msgid "is placed in NAME, OPTARG is unset, and a diagnostic message is"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:508
-msgid "printed."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:510
-msgid "If the shell variable OPTERR has the value 0, getopts disables the"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:511
-msgid "printing of error messages, even if the first character of"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:512
-msgid "OPTSTRING is not a colon.  OPTERR has the value 1 by default."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:514
-msgid "Getopts normally parses the positional parameters ($0 - $9), but if"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:515
-msgid "more arguments are given, they are parsed instead."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:521
-msgid "Exec FILE, replacing this shell with the specified program."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:522
-msgid "If FILE is not specified, the redirections take effect in this"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:523
-msgid "shell.  If the first argument is `-l', then place a dash in the"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:524
-msgid "zeroth arg passed to FILE, as login does.  If the `-c' option"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:525
-msgid "is supplied, FILE is executed with a null environment.  The `-a'"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:526
-msgid "option means to make set argv[0] of the executed process to NAME."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:527
-msgid "If the file cannot be executed and the shell is not interactive,"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:528
-msgid "then the shell exits, unless the shell option `execfail' is set."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:534
-msgid "Exit the shell with a status of N.  If N is omitted, the exit status"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:535
-msgid "is that of the last command executed."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:541
-msgid "Logout of a login shell."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:548
-msgid ""
-"fc is used to list or edit and re-execute commands from the history list."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:549
-msgid "FIRST and LAST can be numbers specifying the range, or FIRST can be a"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:550
-msgid "string, which means the most recent command beginning with that"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:551
-msgid "string."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:553
-msgid ""
-"   -e ENAME selects which editor to use.  Default is FCEDIT, then EDITOR,"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:554
-msgid "      then vi."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:556
-msgid "   -l means list lines instead of editing."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:557
-msgid "   -n means no line numbers listed."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:558
-msgid ""
-"   -r means reverse the order of the lines (making it newest listed first)."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:560
-msgid "With the `fc -s [pat=rep ...] [command]' format, the command is"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:561
-msgid "re-executed after the substitution OLD=NEW is performed."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:563
-msgid "A useful alias to use with this is r='fc -s', so that typing `r cc'"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:564
-msgid "runs the last command beginning with `cc' and typing `r' re-executes"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:565
-msgid "the last command."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:573
-msgid "Place JOB_SPEC in the foreground, and make it the current job.  If"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:574
-msgid "JOB_SPEC is not present, the shell's notion of the current job is"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:575
-msgid "used."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:583
-msgid "Place JOB_SPEC in the background, as if it had been started with"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:584
-msgid "`&'.  If JOB_SPEC is not present, the shell's notion of the current"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:585
-msgid "job is used."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:592
-msgid "For each NAME, the full pathname of the command is determined and"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:593
-msgid "remembered.  If the -p option is supplied, PATHNAME is used as the"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:594
-msgid "full pathname of NAME, and no path search is performed.  The -r"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:595
-msgid "option causes the shell to forget all remembered locations.  The -d"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:596
-msgid "option causes the shell to forget the remembered location of each NAME."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:597
-msgid "If the -t option is supplied the full pathname to which each NAME"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:598
-msgid "corresponds is printed.  If multiple NAME arguments are supplied with"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:599
-msgid "-t, the NAME is printed before the hashed full pathname.  The -l option"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:600
-msgid "causes output to be displayed in a format that may be reused as input."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:601
-msgid ""
-"If no arguments are given, information about remembered commands is "
-"displayed."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:608
-msgid "Display helpful information about builtin commands.  If PATTERN is"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:609
-msgid "specified, gives detailed help on all commands matching PATTERN,"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:610
-msgid "otherwise a list of the builtins is printed.  The -s option"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:611
-msgid "restricts the output for each builtin command matching PATTERN to"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:612
-msgid "a short usage synopsis."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:620
-msgid "Display the history list with line numbers.  Lines listed with"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:621
-msgid "with a `*' have been modified.  Argument of N says to list only"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:622
-msgid "the last N lines.  The `-c' option causes the history list to be"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:623
-msgid "cleared by deleting all of the entries.  The `-d' option deletes"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:624
-msgid "the history entry at offset OFFSET.  The `-w' option writes out the"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:625
-msgid "current history to the history file;  `-r' means to read the file and"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:626
-msgid "append the contents to the history list instead.  `-a' means"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:627
-msgid "to append history lines from this session to the history file."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:628
-msgid "Argument `-n' means to read all history lines not already read"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:629
-msgid "from the history file and append them to the history list."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:631
-msgid "If FILENAME is given, then that is used as the history file else"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:632
-msgid "if $HISTFILE has a value, that is used, else ~/.bash_history."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:633
-msgid "If the -s option is supplied, the non-option ARGs are appended to"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:634
-msgid "the history list as a single entry.  The -p option means to perform"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:635
-msgid "history expansion on each ARG and display the result, without storing"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:636
-msgid "anything in the history list."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:638
-msgid "If the $HISTTIMEFORMAT variable is set and not null, its value is used"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:639
-msgid "as a format string for strftime(3) to print the time stamp associated"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:640
-msgid ""
-"with each displayed history entry.  No time stamps are printed otherwise."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:648
-msgid "Lists the active jobs.  The -l option lists process id's in addition"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:649
-msgid "to the normal information; the -p option lists process id's only."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:650
-msgid "If -n is given, only processes that have changed status since the last"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:651
-msgid "notification are printed.  JOBSPEC restricts output to that job.  The"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:652
-msgid "-r and -s options restrict output to running and stopped jobs only,"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:653
-msgid "respectively.  Without options, the status of all active jobs is"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:654
-msgid "printed.  If -x is given, COMMAND is run after all job specifications"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:655
-msgid ""
-"that appear in ARGS have been replaced with the process ID of that job's"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:656
-msgid "process group leader."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:664
-msgid ""
-"By default, removes each JOBSPEC argument from the table of active jobs."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:665
-msgid ""
-"If the -h option is given, the job is not removed from the table, but is"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:666
-msgid "marked so that SIGHUP is not sent to the job if the shell receives a"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:667
-msgid ""
-"SIGHUP.  The -a option, when JOBSPEC is not supplied, means to remove all"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:668
-msgid ""
-"jobs from the job table; the -r option means to remove only running jobs."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:675
-msgid "Send the processes named by PID (or JOB) the signal SIGSPEC.  If"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:676
-msgid "SIGSPEC is not present, then SIGTERM is assumed.  An argument of `-l'"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:677
-msgid "lists the signal names; if arguments follow `-l' they are assumed to"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:678
-msgid "be signal numbers for which names should be listed.  Kill is a shell"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:679
-msgid "builtin for two reasons: it allows job IDs to be used instead of"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:680
-msgid "process IDs, and, if you have reached the limit on processes that"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:681
-msgid "you can create, you don't have to start a process to kill another one."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:687
-msgid "Each ARG is an arithmetic expression to be evaluated.  Evaluation"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:688
-msgid "is done in fixed-width integers with no check for overflow, though"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:689
-msgid "division by 0 is trapped and flagged as an error.  The following"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:690
-msgid "list of operators is grouped into levels of equal-precedence operators."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:691
-msgid "The levels are listed in order of decreasing precedence."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:693
-msgid "\tid++, id--\tvariable post-increment, post-decrement"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:694
-msgid "\t++id, --id\tvariable pre-increment, pre-decrement"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:695
-msgid "\t-, +\t\tunary minus, plus"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:696
-msgid "\t!, ~\t\tlogical and bitwise negation"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:697
-msgid "\t**\t\texponentiation"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:698
-msgid "\t*, /, %\t\tmultiplication, division, remainder"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:699
-msgid "\t+, -\t\taddition, subtraction"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:700
-msgid "\t<<, >>\t\tleft and right bitwise shifts"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:701
-msgid "\t<=, >=, <, >\tcomparison"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:702
-msgid "\t==, !=\t\tequality, inequality"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:703
-msgid "\t&\t\tbitwise AND"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:704
-msgid "\t^\t\tbitwise XOR"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:705
-msgid "\t|\t\tbitwise OR"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:706
-msgid "\t&&\t\tlogical AND"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:707
-msgid "\t||\t\tlogical OR"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:708
-msgid "\texpr ? expr : expr"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:709
-msgid "\t\t\tconditional operator"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:710
-msgid "\t=, *=, /=, %=,"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:711
-msgid "\t+=, -=, <<=, >>=,"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:712
-msgid "\t&=, ^=, |=\tassignment"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:714
-msgid "Shell variables are allowed as operands.  The name of the variable"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:715
-msgid "is replaced by its value (coerced to a fixed-width integer) within"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:716
-msgid "an expression.  The variable need not have its integer attribute"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:717
-msgid "turned on to be used in an expression."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:719
-msgid "Operators are evaluated in order of precedence.  Sub-expressions in"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:720
-msgid "parentheses are evaluated first and may override the precedence"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:721
-msgid "rules above."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:723
-msgid "If the last ARG evaluates to 0, let returns 1; 0 is returned"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:724
-msgid "otherwise."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:730
-msgid ""
-"One line is read from the standard input, or from file descriptor FD if the"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:731
-msgid ""
-"-u option is supplied, and the first word is assigned to the first NAME,"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:732
-msgid ""
-"the second word to the second NAME, and so on, with leftover words assigned"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:733
-msgid ""
-"to the last NAME.  Only the characters found in $IFS are recognized as word"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:734
-msgid ""
-"delimiters.  If no NAMEs are supplied, the line read is stored in the REPLY"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:735
-msgid "variable.  If the -r option is given, this signifies `raw' input, and"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:736
-msgid "backslash escaping is disabled.  The -d option causes read to continue"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:737
-msgid ""
-"until the first character of DELIM is read, rather than newline.  If the -p"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:738
-msgid ""
-"option is supplied, the string PROMPT is output without a trailing newline"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:739
-msgid ""
-"before attempting to read.  If -a is supplied, the words read are assigned"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:740
-msgid ""
-"to sequential indices of ARRAY, starting at zero.  If -e is supplied and"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:741
-msgid ""
-"the shell is interactive, readline is used to obtain the line.  If -n is"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:742
-msgid "supplied with a non-zero NCHARS argument, read returns after NCHARS"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:743
-msgid "characters have been read.  The -s option causes input coming from a"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:744
-msgid "terminal to not be echoed."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:746
-msgid ""
-"The -t option causes read to time out and return failure if a complete line"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:747
-msgid ""
-"of input is not read within TIMEOUT seconds.  If the TMOUT variable is set,"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:748
-msgid ""
-"its value is the default timeout.  The return code is zero, unless end-of-"
-"file"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:749
-msgid ""
-"is encountered, read times out, or an invalid file descriptor is supplied as"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:750
-msgid "the argument to -u."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:756
-msgid "Causes a function to exit with the return value specified by N.  If N"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:757
-msgid "is omitted, the return status is that of the last command."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:763
-msgid "    -a  Mark variables which are modified or created for export."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:764
-msgid "    -b  Notify of job termination immediately."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:765
-msgid "    -e  Exit immediately if a command exits with a non-zero status."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:766
-msgid "    -f  Disable file name generation (globbing)."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:767
-msgid "    -h  Remember the location of commands as they are looked up."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:768
-msgid "    -k  All assignment arguments are placed in the environment for a"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:769
-msgid "        command, not just those that precede the command name."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:770
-msgid "    -m  Job control is enabled."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:771
-msgid "    -n  Read commands but do not execute them."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:772
-msgid "    -o option-name"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:773
-msgid "        Set the variable corresponding to option-name:"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:774
-msgid "            allexport    same as -a"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:775
-msgid "            braceexpand  same as -B"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:777
-msgid "            emacs        use an emacs-style line editing interface"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:779
-msgid "            errexit      same as -e"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:780
-msgid "            errtrace     same as -E"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:781
-msgid "            functrace    same as -T"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:782
-msgid "            hashall      same as -h"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:784
-msgid "            histexpand   same as -H"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:787
-msgid "            history      enable command history"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:789
-msgid "            ignoreeof    the shell will not exit upon reading EOF"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:790
-msgid "            interactive-comments"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:791
-msgid ""
-"                         allow comments to appear in interactive commands"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:792
-msgid "            keyword      same as -k"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:793
-msgid "            monitor      same as -m"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:794
-msgid "            noclobber    same as -C"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:795
-msgid "            noexec       same as -n"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:796
-msgid "            noglob       same as -f"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:797
-msgid "            nolog        currently accepted but ignored"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:798
-msgid "            notify       same as -b"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:799
-msgid "            nounset      same as -u"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:800
-msgid "            onecmd       same as -t"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:801
-msgid "            physical     same as -P"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:802
-msgid ""
-"            pipefail     the return value of a pipeline is the status of"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:803
-msgid ""
-"                         the last command to exit with a non-zero status,"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:804
-msgid ""
-"                         or zero if no command exited with a non-zero status"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:805
-msgid "            posix        change the behavior of bash where the default"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:806
-msgid "                         operation differs from the 1003.2 standard to"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:807
-msgid "                         match the standard"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:808
-msgid "            privileged   same as -p"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:809
-msgid "            verbose      same as -v"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:811
-msgid "            vi           use a vi-style line editing interface"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:813
-msgid "            xtrace       same as -x"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:814
-msgid ""
-"    -p  Turned on whenever the real and effective user ids do not match."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:815
-msgid "        Disables processing of the $ENV file and importing of shell"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:816
-msgid ""
-"        functions.  Turning this option off causes the effective uid and"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:817
-msgid "        gid to be set to the real uid and gid."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:818
-msgid "    -t  Exit after reading and executing one command."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:819
-msgid "    -u  Treat unset variables as an error when substituting."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:820
-msgid "    -v  Print shell input lines as they are read."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:821
-msgid "    -x  Print commands and their arguments as they are executed."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:823
-msgid "    -B  the shell will perform brace expansion"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:825
-msgid "    -C  If set, disallow existing regular files to be overwritten"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:826
-msgid "        by redirection of output."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:827
-msgid "    -E  If set, the ERR trap is inherited by shell functions."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:829
-msgid "    -H  Enable ! style history substitution.  This flag is on"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:830
-msgid "        by default."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:832
-msgid "    -P  If set, do not follow symbolic links when executing commands"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:833
-msgid "        such as cd which change the current directory."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:834
-msgid "    -T  If set, the DEBUG trap is inherited by shell functions."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:836
-msgid "Using + rather than - causes these flags to be turned off.  The"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:837
-msgid "flags can also be used upon invocation of the shell.  The current"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:838
-msgid "set of flags may be found in $-.  The remaining n ARGs are positional"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:839
-msgid "parameters and are assigned, in order, to $1, $2, .. $n.  If no"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:840
-msgid "ARGs are given, all shell variables are printed."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:846
-msgid "For each NAME, remove the corresponding variable or function.  Given"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:847
-msgid "the `-v', unset will only act on variables.  Given the `-f' flag,"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:848
-msgid "unset will only act on functions.  With neither flag, unset first"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:849
-msgid "tries to unset a variable, and if that fails, then tries to unset a"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:850
-msgid "function.  Some variables cannot be unset; also see readonly."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:856
-msgid "NAMEs are marked for automatic export to the environment of"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:857
-msgid "subsequently executed commands.  If the -f option is given,"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:858
-msgid "the NAMEs refer to functions.  If no NAMEs are given, or if `-p'"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:859
-msgid "is given, a list of all names that are exported in this shell is"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:860
-msgid "printed.  An argument of `-n' says to remove the export property"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:861
-msgid "from subsequent NAMEs.  An argument of `--' disables further option"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:862
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:874
-msgid "processing."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:868
-msgid "The given NAMEs are marked readonly and the values of these NAMEs may"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:869
-msgid "not be changed by subsequent assignment.  If the -f option is given,"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:870
-msgid "then functions corresponding to the NAMEs are so marked.  If no"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:871
-msgid "arguments are given, or if `-p' is given, a list of all readonly names"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:872
-msgid "is printed.  The `-a' option means to treat each NAME as"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:873
-msgid "an array variable.  An argument of `--' disables further option"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:880
-msgid "The positional parameters from $N+1 ... are renamed to $1 ...  If N is"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:881
-msgid "not given, it is assumed to be 1."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:887
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:896
-msgid "Read and execute commands from FILENAME and return.  The pathnames"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:888
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:897
-msgid "in $PATH are used to find the directory containing FILENAME.  If any"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:889
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:898
-msgid "ARGUMENTS are supplied, they become the positional parameters when"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:890
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:899
-msgid "FILENAME is executed."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:906
-msgid "Suspend the execution of this shell until it receives a SIGCONT"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:907
-msgid "signal.  The `-f' if specified says not to complain about this"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:908
-msgid "being a login shell if it is; just suspend anyway."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:915
-msgid "Exits with a status of 0 (true) or 1 (false) depending on"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:916
-msgid "the evaluation of EXPR.  Expressions may be unary or binary.  Unary"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:917
-msgid "expressions are often used to examine the status of a file.  There"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:918
-msgid "are string operators as well, and numeric comparison operators."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:920
-msgid "File operators:"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:922
-msgid "    -a FILE        True if file exists."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:923
-msgid "    -b FILE        True if file is block special."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:924
-msgid "    -c FILE        True if file is character special."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:925
-msgid "    -d FILE        True if file is a directory."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:926
-msgid "    -e FILE        True if file exists."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:927
-msgid "    -f FILE        True if file exists and is a regular file."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:928
-msgid "    -g FILE        True if file is set-group-id."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:929
-msgid "    -h FILE        True if file is a symbolic link."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:930
-msgid "    -L FILE        True if file is a symbolic link."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:931
-msgid "    -k FILE        True if file has its `sticky' bit set."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:932
-msgid "    -p FILE        True if file is a named pipe."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:933
-msgid "    -r FILE        True if file is readable by you."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:934
-msgid "    -s FILE        True if file exists and is not empty."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:935
-msgid "    -S FILE        True if file is a socket."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:936
-msgid "    -t FD          True if FD is opened on a terminal."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:937
-msgid "    -u FILE        True if the file is set-user-id."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:938
-msgid "    -w FILE        True if the file is writable by you."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:939
-msgid "    -x FILE        True if the file is executable by you."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:940
-msgid "    -O FILE        True if the file is effectively owned by you."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:941
-msgid "    -G FILE        True if the file is effectively owned by your group."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:942
-msgid ""
-"    -N FILE        True if the file has been modified since it was last read."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:944
-msgid "  FILE1 -nt FILE2  True if file1 is newer than file2 (according to"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:945
-msgid "                   modification date)."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:947
-msgid "  FILE1 -ot FILE2  True if file1 is older than file2."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:949
-msgid "  FILE1 -ef FILE2  True if file1 is a hard link to file2."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:951
-msgid "String operators:"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:953
-msgid "    -z STRING      True if string is empty."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:955
-msgid "    -n STRING"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:956
-msgid "    STRING         True if string is not empty."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:958
-msgid "    STRING1 = STRING2"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:959
-msgid "                   True if the strings are equal."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:960
-msgid "    STRING1 != STRING2"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:961
-msgid "                   True if the strings are not equal."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:962
-msgid "    STRING1 < STRING2"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:963
-msgid ""
-"                   True if STRING1 sorts before STRING2 lexicographically."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:964
-msgid "    STRING1 > STRING2"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:965
-msgid ""
-"                   True if STRING1 sorts after STRING2 lexicographically."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:967
-msgid "Other operators:"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:969
-msgid "    -o OPTION      True if the shell option OPTION is enabled."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:970
-msgid "    ! EXPR         True if expr is false."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:971
-msgid "    EXPR1 -a EXPR2 True if both expr1 AND expr2 are true."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:972
-msgid "    EXPR1 -o EXPR2 True if either expr1 OR expr2 is true."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:974
-msgid "    arg1 OP arg2   Arithmetic tests.  OP is one of -eq, -ne,"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:975
-msgid "                   -lt, -le, -gt, or -ge."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:977
-msgid "Arithmetic binary operators return true if ARG1 is equal, not-equal,"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:978
-msgid "less-than, less-than-or-equal, greater-than, or greater-than-or-equal"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:979
-msgid "than ARG2."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:985
-msgid "This is a synonym for the \"test\" builtin, but the last"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:986
-msgid "argument must be a literal `]', to match the opening `['."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:992
-msgid "Print the accumulated user and system times for processes run from"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:993
-msgid "the shell."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:999
-msgid "The command ARG is to be read and executed when the shell receives"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1000
-msgid "signal(s) SIGNAL_SPEC.  If ARG is absent all specified signals are"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1001
-msgid "reset to their original values.  If ARG is the null string each"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1002
-msgid "SIGNAL_SPEC is ignored by the shell and by the commands it invokes."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1003
-msgid "If a SIGNAL_SPEC is EXIT (0) the command ARG is executed on exit from"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1004
-msgid "the shell.  If a SIGNAL_SPEC is DEBUG, ARG is executed after every"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1005
-msgid "command.  If ARG is `-p' then the trap commands associated with"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1006
-msgid "each SIGNAL_SPEC are displayed.  If no arguments are supplied or if"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1007
-msgid "only `-p' is given, trap prints the list of commands associated with"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1008
-msgid ""
-"each signal number.  Each SIGNAL_SPEC is either a signal name in <signal.h>"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1009
-msgid "or a signal number.  `trap -l' prints a list of signal names and their"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1010
-msgid "corresponding numbers.  Note that a signal can be sent to the shell"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1011
-msgid "with \"kill -signal $$\"."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1017
-msgid "For each NAME, indicate how it would be interpreted if used as a"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1018
-msgid "command name."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1020
-msgid "If the -t option is used, `type' outputs a single word which is one of"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1021
-msgid "`alias', `keyword', `function', `builtin', `file' or `', if NAME is an"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1022
-msgid "alias, shell reserved word, shell function, shell builtin, disk file,"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1023
-msgid "or unfound, respectively."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1025
-msgid "If the -p flag is used, `type' either returns the name of the disk"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1026
-msgid "file that would be executed, or nothing if `type -t NAME' would not"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1027
-msgid "return `file'."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1029
-msgid "If the -a flag is used, `type' displays all of the places that contain"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1030
-msgid "an executable named `file'.  This includes aliases, builtins, and"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1031
-msgid "functions, if and only if the -p flag is not also used."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1033
-msgid "The -f flag suppresses shell function lookup."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1035
-msgid "The -P flag forces a PATH search for each NAME, even if it is an alias,"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1036
-msgid "builtin, or function, and returns the name of the disk file that would"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1037
-msgid "be executed."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1044
-msgid "Ulimit provides control over the resources available to processes"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1045
-msgid "started by the shell, on systems that allow such control.  If an"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1046
-msgid "option is given, it is interpreted as follows:"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1048
-msgid "    -S\tuse the `soft' resource limit"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1049
-msgid "    -H\tuse the `hard' resource limit"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1050
-msgid "    -a\tall current limits are reported"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1051
-msgid "    -c\tthe maximum size of core files created"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1052
-msgid "    -d\tthe maximum size of a process's data segment"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1053
-msgid "    -f\tthe maximum size of files created by the shell"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1054
-msgid "    -l\tthe maximum size a process may lock into memory"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1055
-msgid "    -m\tthe maximum resident set size"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1056
-msgid "    -n\tthe maximum number of open file descriptors"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1057
-msgid "    -p\tthe pipe buffer size"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1058
-msgid "    -s\tthe maximum stack size"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1059
-msgid "    -t\tthe maximum amount of cpu time in seconds"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1060
-msgid "    -u\tthe maximum number of user processes"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1061
-msgid "    -v\tthe size of virtual memory"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1063
-msgid "If LIMIT is given, it is the new value of the specified resource;"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1064
-msgid "the special LIMIT values `soft', `hard', and `unlimited' stand for"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1065
-msgid ""
-"the current soft limit, the current hard limit, and no limit, respectively."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1066
-msgid "Otherwise, the current value of the specified resource is printed."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1067
-msgid "If no option is given, then -f is assumed.  Values are in 1024-byte"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1068
-msgid "increments, except for -t, which is in seconds, -p, which is in"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1069
-msgid "increments of 512 bytes, and -u, which is an unscaled number of"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1070
-msgid "processes."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1077
-msgid "The user file-creation mask is set to MODE.  If MODE is omitted, or if"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1078
-msgid "`-S' is supplied, the current value of the mask is printed.  The `-S'"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1079
-msgid "option makes the output symbolic; otherwise an octal number is output."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1080
-msgid "If `-p' is supplied, and MODE is omitted, the output is in a form"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1081
-msgid "that may be used as input.  If MODE begins with a digit, it is"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1082
-msgid "interpreted as an octal number, otherwise it is a symbolic mode string"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1083
-msgid "like that accepted by chmod(1)."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1090
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1102
-msgid "Wait for the specified process and report its termination status.  If"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1091
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1103
-msgid "N is not given, all currently active child processes are waited for,"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1092
-msgid "and the return code is zero.  N may be a process ID or a job"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1093
-msgid "specification; if a job spec is given, all processes in the job's"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1094
-msgid "pipeline are waited for."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1104
-msgid "and the return code is zero.  N is a process ID; if it is not given,"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1105
-msgid "all child processes of the shell are waited for."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1112
-msgid "The `for' loop executes a sequence of commands for each member in a"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1113
-msgid "list of items.  If `in WORDS ...;' is not present, then `in \"$@\"' is"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1114
-msgid "assumed.  For each element in WORDS, NAME is set to that element, and"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1115
-msgid "the COMMANDS are executed."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1121
-msgid "Equivalent to"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1122
-msgid "\t(( EXP1 ))"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1123
-msgid "\twhile (( EXP2 )); do"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1124
-msgid "\t\tCOMMANDS"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1125
-msgid "\t\t(( EXP3 ))"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1126
-msgid "\tdone"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1127
-msgid "EXP1, EXP2, and EXP3 are arithmetic expressions.  If any expression is"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1128
-msgid "omitted, it behaves as if it evaluates to 1."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1134
-msgid "The WORDS are expanded, generating a list of words.  The"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1135
-msgid "set of expanded words is printed on the standard error, each"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1136
-msgid "preceded by a number.  If `in WORDS' is not present, `in \"$@\"'"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1137
-msgid "is assumed.  The PS3 prompt is then displayed and a line read"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1138
-msgid "from the standard input.  If the line consists of the number"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1139
-msgid "corresponding to one of the displayed words, then NAME is set"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1140
-msgid "to that word.  If the line is empty, WORDS and the prompt are"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1141
-msgid "redisplayed.  If EOF is read, the command completes.  Any other"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1142
-msgid "value read causes NAME to be set to null.  The line read is saved"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1143
-msgid "in the variable REPLY.  COMMANDS are executed after each selection"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1144
-msgid "until a break command is executed."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1150
-msgid "Execute PIPELINE and print a summary of the real time, user CPU time,"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1151
-msgid "and system CPU time spent executing PIPELINE when it terminates."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1152
-msgid "The return status is the return status of PIPELINE.  The `-p' option"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1153
-msgid "prints the timing summary in a slightly different format.  This uses"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1154
-msgid "the value of the TIMEFORMAT variable as the output format."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1160
-msgid "Selectively execute COMMANDS based upon WORD matching PATTERN.  The"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1161
-msgid "`|' is used to separate multiple patterns."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1167
-msgid ""
-"The if COMMANDS are executed.  If the exit status is zero, then the then"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1168
-msgid ""
-"COMMANDS are executed.  Otherwise, each of the elif COMMANDS are executed"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1169
-msgid ""
-"in turn, and if the exit status is zero, the corresponding then COMMANDS"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1170
-msgid ""
-"are executed and the if command completes.  Otherwise, the else COMMANDS"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1171
-msgid ""
-"are executed, if present.  The exit status is the exit status of the last"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1172
-msgid "command executed, or zero if no condition tested true."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1178
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1185
-msgid "Expand and execute COMMANDS as long as the final command in the"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1179
-msgid "`while' COMMANDS has an exit status of zero."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1186
-msgid "`until' COMMANDS has an exit status which is not zero."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1192
-msgid "Create a simple command invoked by NAME which runs COMMANDS."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1193
-msgid "Arguments on the command line along with NAME are passed to the"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1194
-msgid "function as $0 .. $n."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1200
-msgid "Run a set of commands in a group.  This is one way to redirect an"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1201
-msgid "entire set of commands."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1207
-msgid "This is similar to the `fg' command.  Resume a stopped or background"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1208
-msgid "job.  If you specifiy DIGITS, then that job is used.  If you specify"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1209
-msgid "WORD, then the job whose name begins with WORD is used.  Following the"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1210
-msgid "job specification with a `&' places the job in the background."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1216
-msgid "The EXPRESSION is evaluated according to the rules for arithmetic"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1217
-msgid "evaluation.  Equivalent to \"let EXPRESSION\"."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1223
-msgid ""
-"Returns a status of 0 or 1 depending on the evaluation of the conditional"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1224
-msgid ""
-"expression EXPRESSION.  Expressions are composed of the same primaries used"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1225
-msgid ""
-"by the `test' builtin, and may be combined using the following operators"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1227
-msgid "\t( EXPRESSION )\tReturns the value of EXPRESSION"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1228
-msgid "\t! EXPRESSION\tTrue if EXPRESSION is false; else false"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1229
-msgid "\tEXPR1 && EXPR2\tTrue if both EXPR1 and EXPR2 are true; else false"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1230
-msgid "\tEXPR1 || EXPR2\tTrue if either EXPR1 or EXPR2 is true; else false"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1232
-msgid ""
-"When the `==' and `!=' operators are used, the string to the right of the"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1233
-msgid "operator is used as a pattern and pattern matching is performed.  The"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1234
-msgid "&& and || operators do not evaluate EXPR2 if EXPR1 is sufficient to"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1235
-msgid "determine the expression's value."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1241
-msgid "BASH_VERSION    Version information for this Bash."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1242
-msgid "CDPATH          A colon separated list of directories to search"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1243
-msgid "\t\twhen the argument to `cd' is not found in the current"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1244
-msgid "\t\tdirectory."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1245
-msgid "GLOBIGNORE\tA colon-separated list of patterns describing filenames to"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1246
-msgid "\t\tbe ignored by pathname expansion."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1248
-msgid ""
-"HISTFILE        The name of the file where your command history is stored."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1249
-msgid "HISTFILESIZE    The maximum number of lines this file can contain."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1250
-msgid "HISTSIZE        The maximum number of history lines that a running"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1251
-msgid "\t\tshell can access."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1253
-msgid "HOME            The complete pathname to your login directory."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1254
-msgid "HOSTNAME\tThe name of the current host."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1255
-msgid "HOSTTYPE        The type of CPU this version of Bash is running under."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1256
-msgid "IGNOREEOF       Controls the action of the shell on receipt of an EOF"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1257
-msgid "\t\tcharacter as the sole input.  If set, then the value"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1258
-msgid "\t\tof it is the number of EOF characters that can be seen"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1259
-msgid "\t\tin a row on an empty line before the shell will exit"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1260
-msgid "\t\t(default 10).  When unset, EOF signifies the end of input."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1261
-msgid "MACHTYPE\tA string describing the current system Bash is running on."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1262
-msgid "MAILCHECK\tHow often, in seconds, Bash checks for new mail."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1263
-msgid "MAILPATH\tA colon-separated list of filenames which Bash checks"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1264
-msgid "\t\tfor new mail."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1265
-msgid "OSTYPE\t\tThe version of Unix this version of Bash is running on."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1266
-msgid "PATH            A colon-separated list of directories to search when"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1267
-msgid "\t\tlooking for commands."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1268
-msgid "PROMPT_COMMAND  A command to be executed before the printing of each"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1269
-msgid "\t\tprimary prompt."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1270
-msgid "PS1             The primary prompt string."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1271
-msgid "PS2             The secondary prompt string."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1272
-msgid "PWD\t\tThe full pathname of the current directory."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1273
-msgid "SHELLOPTS\tA colon-separated list of enabled shell options."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1274
-msgid "TERM            The name of the current terminal type."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1275
-msgid "TIMEFORMAT\tThe output format for timing statistics displayed by the"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1276
-msgid "\t\t`time' reserved word."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1277
-msgid "auto_resume     Non-null means a command word appearing on a line by"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1278
-msgid "\t\titself is first looked for in the list of currently"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1279
-msgid "\t\tstopped jobs.  If found there, that job is foregrounded."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1280
-msgid "\t\tA value of `exact' means that the command word must"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1281
-msgid "\t\texactly match a command in the list of stopped jobs.  A"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1282
-msgid "\t\tvalue of `substring' means that the command word must"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1283
-msgid "\t\tmatch a substring of the job.  Any other value means that"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1284
-msgid "\t\tthe command must be a prefix of a stopped job."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1287
-msgid "histchars       Characters controlling history expansion and quick"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1288
-msgid "\t\tsubstitution.  The first character is the history"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1289
-msgid "\t\tsubstitution character, usually `!'.  The second is"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1290
-msgid "\t\tthe `quick substitution' character, usually `^'.  The"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1291
-msgid "\t\tthird is the `history comment' character, usually `#'."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1293
-msgid "HISTIGNORE\tA colon-separated list of patterns used to decide which"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1294
-msgid "\t\tcommands should be saved on the history list."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1302
-msgid "Adds a directory to the top of the directory stack, or rotates"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1303
-msgid "the stack, making the new top of the stack the current working"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1304
-msgid "directory.  With no arguments, exchanges the top two directories."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1306
-msgid "+N\tRotates the stack so that the Nth directory (counting"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1307
-msgid "\tfrom the left of the list shown by `dirs', starting with"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1308
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1312
-msgid "\tzero) is at the top."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1310
-msgid "-N\tRotates the stack so that the Nth directory (counting"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1311
-msgid "\tfrom the right of the list shown by `dirs', starting with"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1314
-msgid "-n\tsuppress the normal change of directory when adding directories"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1315
-msgid "\tto the stack, so only the stack is manipulated."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1317
-msgid "dir\tadds DIR to the directory stack at the top, making it the"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1318
-msgid "\tnew current working directory."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1320
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1343
-msgid "You can see the directory stack with the `dirs' command."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1328
-msgid "Removes entries from the directory stack.  With no arguments,"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1329
-msgid "removes the top directory from the stack, and cd's to the new"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1330
-msgid "top directory."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1332
-msgid "+N\tremoves the Nth entry counting from the left of the list"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1333
-msgid "\tshown by `dirs', starting with zero.  For example: `popd +0'"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1334
-msgid "\tremoves the first directory, `popd +1' the second."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1336
-msgid "-N\tremoves the Nth entry counting from the right of the list"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1337
-msgid "\tshown by `dirs', starting with zero.  For example: `popd -0'"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1338
-msgid "\tremoves the last directory, `popd -1' the next to last."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1340
-msgid "-n\tsuppress the normal change of directory when removing directories"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1341
-msgid "\tfrom the stack, so only the stack is manipulated."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1351
-msgid "Display the list of currently remembered directories.  Directories"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1352
-msgid "find their way onto the list with the `pushd' command; you can get"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1353
-msgid "back up through the list with the `popd' command."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1355
-msgid "The -l flag specifies that `dirs' should not print shorthand versions"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1356
-msgid "of directories which are relative to your home directory.  This means"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1357
-msgid "that `~/bin' might be displayed as `/homes/bfox/bin'.  The -v flag"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1358
-msgid "causes `dirs' to print the directory stack with one entry per line,"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1359
-msgid "prepending the directory name with its position in the stack.  The -p"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1360
-msgid "flag does the same thing, but the stack position is not prepended."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1361
-msgid "The -c flag clears the directory stack by deleting all of the elements."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1363
-msgid "+N\tdisplays the Nth entry counting from the left of the list shown by"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1364
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1367
-msgid "\tdirs when invoked without options, starting with zero."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1366
-msgid "-N\tdisplays the Nth entry counting from the right of the list shown by"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1374
-msgid "Toggle the values of variables controlling optional behavior."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1375
-msgid "The -s flag means to enable (set) each OPTNAME; the -u flag"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1376
-msgid "unsets each OPTNAME.  The -q flag suppresses output; the exit"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1377
-msgid "status indicates whether each OPTNAME is set or unset.  The -o"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1378
-msgid "option restricts the OPTNAMEs to those defined for use with"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1379
-msgid "`set -o'.  With no options, or with the -p option, a list of all"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1380
-msgid "settable options is displayed, with an indication of whether or"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1381
-msgid "not each is set."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1387
-msgid "printf formats and prints ARGUMENTS under control of the FORMAT. FORMAT"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1388
-msgid "is a character string which contains three types of objects: plain"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1389
-msgid ""
-"characters, which are simply copied to standard output, character escape"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1390
-msgid "sequences which are converted and copied to the standard output, and"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1391
-msgid ""
-"format specifications, each of which causes printing of the next successive"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1392
-msgid "argument.  In addition to the standard printf(1) formats, %b means to"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1393
-msgid "expand backslash escape sequences in the corresponding argument, and %q"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1394
-msgid "means to quote the argument in a way that can be reused as shell input."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1401
-msgid "For each NAME, specify how arguments are to be completed."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1402
-msgid "If the -p option is supplied, or if no options are supplied, existing"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1403
-msgid "completion specifications are printed in a way that allows them to be"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1404
-msgid "reused as input.  The -r option removes a completion specification for"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1405
-msgid "each NAME, or, if no NAMEs are supplied, all completion specifications."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1413
-msgid "Display the possible completions depending on the options.  Intended"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1414
-msgid ""
-"to be used from within a shell function generating possible completions."
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1415
-msgid "If the optional WORD argument is supplied, matches against WORD are"
-msgstr ""
-
-#: /usr/local/build/bash/bash-20031218/builtins/builtins.c:1416
-msgid "generated."
-msgstr ""
diff --git a/po/foo.new.po b/po/foo.new.po
deleted file mode 100644 (file)
index b4771c0..0000000
+++ /dev/null
@@ -1,5521 +0,0 @@
-# English translations for GNU bash package.
-# Copyright (C) 2011 Free Software Foundation, Inc.
-# This file is distributed under the same license as the GNU bash package.
-# Automatically generated, 2011.
-#
-# All this catalog "translates" are quotation characters.
-# The msgids must be ASCII and therefore cannot contain real quotation
-# characters, only substitutes like grave accent (0x60), apostrophe (0x27)
-# and double quote (0x22). These substitutes look strange; see
-# http://www.cl.cam.ac.uk/~mgk25/ucs/quotes.html
-#
-# This catalog translates grave accent (0x60) and apostrophe (0x27) to
-# left single quotation mark (U+2018) and right single quotation mark (U+2019).
-# It also translates pairs of apostrophe (0x27) to
-# left single quotation mark (U+2018) and right single quotation mark (U+2019)
-# and pairs of quotation mark (0x22) to
-# left double quotation mark (U+201C) and right double quotation mark (U+201D).
-#
-# When output to an UTF-8 terminal, the quotation characters appear perfectly.
-# When output to an ISO-8859-1 terminal, the single quotation marks are
-# transliterated to apostrophes (by iconv in glibc 2.2 or newer) or to
-# grave/acute accent (by libiconv), and the double quotation marks are
-# transliterated to 0x22.
-# When output to an ASCII terminal, the single quotation marks are
-# transliterated to apostrophes, and the double quotation marks are
-# transliterated to 0x22.
-#
-msgid ""
-msgstr ""
-"Project-Id-Version: GNU bash 4.2-release\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2012-03-05 21:31-0500\n"
-"PO-Revision-Date: 2011-01-28 22:09-0500\n"
-"Last-Translator: Automatically generated\n"
-"Language-Team: none\n"
-"Language: \n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-
-#: arrayfunc.c:51
-msgid "bad array subscript"
-msgstr "bad array subscript"
-
-#: arrayfunc.c:330 builtins/declare.def:487
-#, c-format
-msgid "%s: cannot convert indexed to associative array"
-msgstr "%s: cannot convert indexed to associative array"
-
-#: arrayfunc.c:513
-#, c-format
-msgid "%s: invalid associative array key"
-msgstr "%s: invalid associative array key"
-
-#: arrayfunc.c:515
-#, c-format
-msgid "%s: cannot assign to non-numeric index"
-msgstr "%s: cannot assign to non-numeric index"
-
-#: arrayfunc.c:557
-#, c-format
-msgid "%s: %s: must use subscript when assigning associative array"
-msgstr "%s: %s: must use subscript when assigning associative array"
-
-#: bashhist.c:388
-#, c-format
-msgid "%s: cannot create: %s"
-msgstr "%s: cannot create: %s"
-
-#: bashline.c:3841
-msgid "bash_execute_unix_command: cannot find keymap for command"
-msgstr "bash_execute_unix_command: cannot find keymap for command"
-
-#: bashline.c:3928
-#, c-format
-msgid "%s: first non-whitespace character is not `\"'"
-msgstr "%s: first non-whitespace character is not ‘\"’"
-
-#: bashline.c:3957
-#, c-format
-msgid "no closing `%c' in %s"
-msgstr "no closing ‘%c’ in %s"
-
-#: bashline.c:3991
-#, c-format
-msgid "%s: missing colon separator"
-msgstr "%s: missing colon separator"
-
-#: builtins/alias.def:132
-#, c-format
-msgid "`%s': invalid alias name"
-msgstr "‘%s’: invalid alias name"
-
-#: builtins/bind.def:123 builtins/bind.def:126
-msgid "line editing not enabled"
-msgstr "line editing not enabled"
-
-#: builtins/bind.def:212
-#, c-format
-msgid "`%s': invalid keymap name"
-msgstr "‘%s’: invalid keymap name"
-
-#: builtins/bind.def:251
-#, c-format
-msgid "%s: cannot read: %s"
-msgstr "%s: cannot read: %s"
-
-#: builtins/bind.def:266
-#, c-format
-msgid "`%s': cannot unbind"
-msgstr "‘%s’: cannot unbind"
-
-#: builtins/bind.def:304 builtins/bind.def:334
-#, c-format
-msgid "`%s': unknown function name"
-msgstr "‘%s’: unknown function name"
-
-#: builtins/bind.def:312
-#, c-format
-msgid "%s is not bound to any keys.\n"
-msgstr "%s is not bound to any keys.\n"
-
-#: builtins/bind.def:316
-#, c-format
-msgid "%s can be invoked via "
-msgstr "%s can be invoked via "
-
-#: builtins/break.def:77 builtins/break.def:117
-msgid "loop count"
-msgstr "loop count"
-
-#: builtins/break.def:137
-msgid "only meaningful in a `for', `while', or `until' loop"
-msgstr "only meaningful in a ‘for’, ‘while’, or ‘until’ loop"
-
-#: builtins/caller.def:133
-msgid ""
-"Returns the context of the current subroutine call.\n"
-"    \n"
-"    Without EXPR, returns "
-msgstr ""
-"Returns the context of the current subroutine call.\n"
-"    \n"
-"    Without EXPR, returns "
-
-#: builtins/cd.def:239
-msgid "HOME not set"
-msgstr "HOME not set"
-
-#: builtins/cd.def:247 builtins/common.c:166 test.c:832
-msgid "too many arguments"
-msgstr "too many arguments"
-
-#: builtins/cd.def:258
-msgid "OLDPWD not set"
-msgstr "OLDPWD not set"
-
-#: builtins/common.c:101
-#, c-format
-msgid "line %d: "
-msgstr "line %d: "
-
-#: builtins/common.c:139 error.c:265
-#, c-format
-msgid "warning: "
-msgstr "warning: "
-
-#: builtins/common.c:153
-#, c-format
-msgid "%s: usage: "
-msgstr "%s: usage: "
-
-#: builtins/common.c:191 shell.c:504 shell.c:786
-#, c-format
-msgid "%s: option requires an argument"
-msgstr "%s: option requires an argument"
-
-#: builtins/common.c:198
-#, c-format
-msgid "%s: numeric argument required"
-msgstr "%s: numeric argument required"
-
-#: builtins/common.c:205
-#, c-format
-msgid "%s: not found"
-msgstr "%s: not found"
-
-#: builtins/common.c:214 shell.c:799
-#, c-format
-msgid "%s: invalid option"
-msgstr "%s: invalid option"
-
-#: builtins/common.c:221
-#, c-format
-msgid "%s: invalid option name"
-msgstr "%s: invalid option name"
-
-#: builtins/common.c:228 general.c:234 general.c:239
-#, c-format
-msgid "`%s': not a valid identifier"
-msgstr "‘%s’: not a valid identifier"
-
-#: builtins/common.c:238
-msgid "invalid octal number"
-msgstr "invalid octal number"
-
-#: builtins/common.c:240
-msgid "invalid hex number"
-msgstr "invalid hex number"
-
-#: builtins/common.c:242 expr.c:1431
-msgid "invalid number"
-msgstr "invalid number"
-
-#: builtins/common.c:250
-#, c-format
-msgid "%s: invalid signal specification"
-msgstr "%s: invalid signal specification"
-
-#: builtins/common.c:257
-#, c-format
-msgid "`%s': not a pid or valid job spec"
-msgstr "‘%s’: not a pid or valid job spec"
-
-#: builtins/common.c:264 error.c:458
-#, c-format
-msgid "%s: readonly variable"
-msgstr "%s: readonly variable"
-
-#: builtins/common.c:272
-#, c-format
-msgid "%s: %s out of range"
-msgstr "%s: %s out of range"
-
-#: builtins/common.c:272 builtins/common.c:274
-msgid "argument"
-msgstr "argument"
-
-#: builtins/common.c:274
-#, c-format
-msgid "%s out of range"
-msgstr "%s out of range"
-
-#: builtins/common.c:282
-#, c-format
-msgid "%s: no such job"
-msgstr "%s: no such job"
-
-#: builtins/common.c:290
-#, c-format
-msgid "%s: no job control"
-msgstr "%s: no job control"
-
-#: builtins/common.c:292
-msgid "no job control"
-msgstr "no job control"
-
-#: builtins/common.c:302
-#, c-format
-msgid "%s: restricted"
-msgstr "%s: restricted"
-
-#: builtins/common.c:304
-msgid "restricted"
-msgstr "restricted"
-
-#: builtins/common.c:312
-#, c-format
-msgid "%s: not a shell builtin"
-msgstr "%s: not a shell builtin"
-
-#: builtins/common.c:321
-#, c-format
-msgid "write error: %s"
-msgstr "write error: %s"
-
-#: builtins/common.c:329
-#, c-format
-msgid "error setting terminal attributes: %s"
-msgstr "error setting terminal attributes: %s"
-
-#: builtins/common.c:331
-#, c-format
-msgid "error getting terminal attributes: %s"
-msgstr "error getting terminal attributes: %s"
-
-#: builtins/common.c:563
-#, c-format
-msgid "%s: error retrieving current directory: %s: %s\n"
-msgstr "%s: error retrieving current directory: %s: %s\n"
-
-#: builtins/common.c:629 builtins/common.c:631
-#, c-format
-msgid "%s: ambiguous job spec"
-msgstr "%s: ambiguous job spec"
-
-#: builtins/complete.def:277
-#, c-format
-msgid "%s: invalid action name"
-msgstr "%s: invalid action name"
-
-#: builtins/complete.def:450 builtins/complete.def:645
-#: builtins/complete.def:855
-#, c-format
-msgid "%s: no completion specification"
-msgstr "%s: no completion specification"
-
-#: builtins/complete.def:697
-msgid "warning: -F option may not work as you expect"
-msgstr "warning: -F option may not work as you expect"
-
-#: builtins/complete.def:699
-msgid "warning: -C option may not work as you expect"
-msgstr "warning: -C option may not work as you expect"
-
-#: builtins/complete.def:828
-msgid "not currently executing completion function"
-msgstr "not currently executing completion function"
-
-#: builtins/declare.def:124
-msgid "can only be used in a function"
-msgstr "can only be used in a function"
-
-#: builtins/declare.def:366
-msgid "cannot use `-f' to make functions"
-msgstr "cannot use ‘-f’ to make functions"
-
-#: builtins/declare.def:378 execute_cmd.c:5253
-#, c-format
-msgid "%s: readonly function"
-msgstr "%s: readonly function"
-
-#: builtins/declare.def:474
-#, c-format
-msgid "%s: cannot destroy array variables in this way"
-msgstr "%s: cannot destroy array variables in this way"
-
-#: builtins/declare.def:481 builtins/read.def:702
-#, c-format
-msgid "%s: cannot convert associative to indexed array"
-msgstr "%s: cannot convert associative to indexed array"
-
-#: builtins/enable.def:137 builtins/enable.def:145
-msgid "dynamic loading not available"
-msgstr "dynamic loading not available"
-
-#: builtins/enable.def:312
-#, c-format
-msgid "cannot open shared object %s: %s"
-msgstr "cannot open shared object %s: %s"
-
-#: builtins/enable.def:335
-#, c-format
-msgid "cannot find %s in shared object %s: %s"
-msgstr "cannot find %s in shared object %s: %s"
-
-#: builtins/enable.def:459
-#, c-format
-msgid "%s: not dynamically loaded"
-msgstr "%s: not dynamically loaded"
-
-#: builtins/enable.def:474
-#, c-format
-msgid "%s: cannot delete: %s"
-msgstr "%s: cannot delete: %s"
-
-#: builtins/evalfile.c:135 builtins/hash.def:171 execute_cmd.c:5100
-#: shell.c:1461
-#, c-format
-msgid "%s: is a directory"
-msgstr "%s: is a directory"
-
-#: builtins/evalfile.c:140
-#, c-format
-msgid "%s: not a regular file"
-msgstr "%s: not a regular file"
-
-#: builtins/evalfile.c:148
-#, c-format
-msgid "%s: file is too large"
-msgstr "%s: file is too large"
-
-#: builtins/evalfile.c:182 builtins/evalfile.c:200 shell.c:1471
-#, c-format
-msgid "%s: cannot execute binary file"
-msgstr "%s: cannot execute binary file"
-
-#: builtins/exec.def:154 builtins/exec.def:156 builtins/exec.def:228
-#, c-format
-msgid "%s: cannot execute: %s"
-msgstr "%s: cannot execute: %s"
-
-#: builtins/exit.def:65
-#, c-format
-msgid "logout\n"
-msgstr "logout\n"
-
-#: builtins/exit.def:88
-msgid "not login shell: use `exit'"
-msgstr "not login shell: use ‘exit’"
-
-#: builtins/exit.def:120
-#, c-format
-msgid "There are stopped jobs.\n"
-msgstr "There are stopped jobs.\n"
-
-#: builtins/exit.def:122
-#, c-format
-msgid "There are running jobs.\n"
-msgstr "There are running jobs.\n"
-
-#: builtins/fc.def:262
-msgid "no command found"
-msgstr "no command found"
-
-#: builtins/fc.def:312 builtins/fc.def:359
-msgid "history specification"
-msgstr "history specification"
-
-#: builtins/fc.def:380
-#, c-format
-msgid "%s: cannot open temp file: %s"
-msgstr "%s: cannot open temp file: %s"
-
-#: builtins/fg_bg.def:149 builtins/jobs.def:282
-msgid "current"
-msgstr "current"
-
-#: builtins/fg_bg.def:158
-#, c-format
-msgid "job %d started without job control"
-msgstr "job %d started without job control"
-
-#: builtins/getopt.c:110
-#, c-format
-msgid "%s: illegal option -- %c\n"
-msgstr "%s: illegal option -- %c\n"
-
-#: builtins/getopt.c:111
-#, c-format
-msgid "%s: option requires an argument -- %c\n"
-msgstr "%s: option requires an argument -- %c\n"
-
-#: builtins/hash.def:92
-msgid "hashing disabled"
-msgstr "hashing disabled"
-
-#: builtins/hash.def:138
-#, c-format
-msgid "%s: hash table empty\n"
-msgstr "%s: hash table empty\n"
-
-#: builtins/hash.def:245
-#, c-format
-msgid "hits\tcommand\n"
-msgstr "hits\tcommand\n"
-
-#: builtins/help.def:130
-#, c-format
-msgid "Shell commands matching keyword `"
-msgid_plural "Shell commands matching keywords `"
-msgstr[0] "Shell commands matching keyword `"
-msgstr[1] "Shell commands matching keywords `"
-
-#: builtins/help.def:168
-#, c-format
-msgid ""
-"no help topics match `%s'.  Try `help help' or `man -k %s' or `info %s'."
-msgstr ""
-"no help topics match ‘%s’.  Try ‘help help’ or ‘man -k %s’ or ‘info %s’."
-
-#: builtins/help.def:185
-#, c-format
-msgid "%s: cannot open: %s"
-msgstr "%s: cannot open: %s"
-
-#: builtins/help.def:337
-#, c-format
-msgid ""
-"These shell commands are defined internally.  Type `help' to see this list.\n"
-"Type `help name' to find out more about the function `name'.\n"
-"Use `info bash' to find out more about the shell in general.\n"
-"Use `man -k' or `info' to find out more about commands not in this list.\n"
-"\n"
-"A star (*) next to a name means that the command is disabled.\n"
-"\n"
-msgstr ""
-"These shell commands are defined internally.  Type ‘help’ to see this list.\n"
-"Type ‘help name’ to find out more about the function ‘name’.\n"
-"Use ‘info bash’ to find out more about the shell in general.\n"
-"Use ‘man -k’ or ‘info’ to find out more about commands not in this list.\n"
-"\n"
-"A star (*) next to a name means that the command is disabled.\n"
-"\n"
-
-#: builtins/history.def:154
-msgid "cannot use more than one of -anrw"
-msgstr "cannot use more than one of -anrw"
-
-#: builtins/history.def:186
-msgid "history position"
-msgstr "history position"
-
-#: builtins/history.def:366
-#, c-format
-msgid "%s: history expansion failed"
-msgstr "%s: history expansion failed"
-
-#: builtins/inlib.def:71
-#, c-format
-msgid "%s: inlib failed"
-msgstr "%s: inlib failed"
-
-#: builtins/jobs.def:109
-msgid "no other options allowed with `-x'"
-msgstr "no other options allowed with ‘-x’"
-
-#: builtins/kill.def:198
-#, c-format
-msgid "%s: arguments must be process or job IDs"
-msgstr "%s: arguments must be process or job IDs"
-
-#: builtins/kill.def:261
-msgid "Unknown error"
-msgstr "Unknown error"
-
-#: builtins/let.def:95 builtins/let.def:120 expr.c:577 expr.c:592
-msgid "expression expected"
-msgstr "expression expected"
-
-#: builtins/mapfile.def:172
-#, c-format
-msgid "%s: not an indexed array"
-msgstr "%s: not an indexed array"
-
-#: builtins/mapfile.def:256 builtins/read.def:299
-#, c-format
-msgid "%s: invalid file descriptor specification"
-msgstr "%s: invalid file descriptor specification"
-
-#: builtins/mapfile.def:264 builtins/read.def:306
-#, c-format
-msgid "%d: invalid file descriptor: %s"
-msgstr "%d: invalid file descriptor: %s"
-
-#: builtins/mapfile.def:273 builtins/mapfile.def:311
-#, c-format
-msgid "%s: invalid line count"
-msgstr "%s: invalid line count"
-
-#: builtins/mapfile.def:284
-#, c-format
-msgid "%s: invalid array origin"
-msgstr "%s: invalid array origin"
-
-#: builtins/mapfile.def:301
-#, c-format
-msgid "%s: invalid callback quantum"
-msgstr "%s: invalid callback quantum"
-
-#: builtins/mapfile.def:333
-msgid "empty array variable name"
-msgstr "empty array variable name"
-
-#: builtins/mapfile.def:354
-msgid "array variable support required"
-msgstr "array variable support required"
-
-#: builtins/printf.def:397
-#, c-format
-msgid "`%s': missing format character"
-msgstr "‘%s’: missing format character"
-
-#: builtins/printf.def:451
-#, c-format
-msgid "`%c': invalid time format specification"
-msgstr "‘%c’: invalid time format specification"
-
-#: builtins/printf.def:647
-#, c-format
-msgid "`%c': invalid format character"
-msgstr "‘%c’: invalid format character"
-
-#: builtins/printf.def:673
-#, c-format
-msgid "warning: %s: %s"
-msgstr "warning: %s: %s"
-
-#: builtins/printf.def:854
-msgid "missing hex digit for \\x"
-msgstr "missing hex digit for \\x"
-
-#: builtins/printf.def:869
-#, c-format
-msgid "missing unicode digit for \\%c"
-msgstr "missing unicode digit for \\%c"
-
-#: builtins/pushd.def:195
-msgid "no other directory"
-msgstr "no other directory"
-
-#: builtins/pushd.def:462
-msgid "<no current directory>"
-msgstr "<no current directory>"
-
-#: builtins/pushd.def:506
-msgid "directory stack empty"
-msgstr "directory stack empty"
-
-#: builtins/pushd.def:508
-msgid "directory stack index"
-msgstr "directory stack index"
-
-#: builtins/pushd.def:683
-msgid ""
-"Display the list of currently remembered directories.  Directories\n"
-"    find their way onto the list with the `pushd' command; you can get\n"
-"    back up through the list with the `popd' command.\n"
-"    \n"
-"    Options:\n"
-"      -c\tclear the directory stack by deleting all of the elements\n"
-"      -l\tdo not print tilde-prefixed versions of directories relative\n"
-"    \tto your home directory\n"
-"      -p\tprint the directory stack with one entry per line\n"
-"      -v\tprint the directory stack with one entry per line prefixed\n"
-"    \twith its position in the stack\n"
-"    \n"
-"    Arguments:\n"
-"      +N\tDisplays the Nth entry counting from the left of the list shown "
-"by\n"
-"    \tdirs when invoked without options, starting with zero.\n"
-"    \n"
-"      -N\tDisplays the Nth entry counting from the right of the list shown "
-"by\n"
-"\tdirs when invoked without options, starting with zero."
-msgstr ""
-"Display the list of currently remembered directories.  Directories\n"
-"    find their way onto the list with the ‘pushd’ command; you can get\n"
-"    back up through the list with the ‘popd’ command.\n"
-"    \n"
-"    Options:\n"
-"      -c\tclear the directory stack by deleting all of the elements\n"
-"      -l\tdo not print tilde-prefixed versions of directories relative\n"
-"    \tto your home directory\n"
-"      -p\tprint the directory stack with one entry per line\n"
-"      -v\tprint the directory stack with one entry per line prefixed\n"
-"    \twith its position in the stack\n"
-"    \n"
-"    Arguments:\n"
-"      +N\tDisplays the Nth entry counting from the left of the list shown "
-"by\n"
-"    \tdirs when invoked without options, starting with zero.\n"
-"    \n"
-"      -N\tDisplays the Nth entry counting from the right of the list shown "
-"by\n"
-"\tdirs when invoked without options, starting with zero."
-
-#: builtins/pushd.def:705
-msgid ""
-"Adds a directory to the top of the directory stack, or rotates\n"
-"    the stack, making the new top of the stack the current working\n"
-"    directory.  With no arguments, exchanges the top two directories.\n"
-"    \n"
-"    Options:\n"
-"      -n\tSuppresses the normal change of directory when adding\n"
-"    \tdirectories to the stack, so only the stack is manipulated.\n"
-"    \n"
-"    Arguments:\n"
-"      +N\tRotates the stack so that the Nth directory (counting\n"
-"    \tfrom the left of the list shown by `dirs', starting with\n"
-"    \tzero) is at the top.\n"
-"    \n"
-"      -N\tRotates the stack so that the Nth directory (counting\n"
-"    \tfrom the right of the list shown by `dirs', starting with\n"
-"    \tzero) is at the top.\n"
-"    \n"
-"      dir\tAdds DIR to the directory stack at the top, making it the\n"
-"    \tnew current working directory.\n"
-"    \n"
-"    The `dirs' builtin displays the directory stack."
-msgstr ""
-"Adds a directory to the top of the directory stack, or rotates\n"
-"    the stack, making the new top of the stack the current working\n"
-"    directory.  With no arguments, exchanges the top two directories.\n"
-"    \n"
-"    Options:\n"
-"      -n\tSuppresses the normal change of directory when adding\n"
-"    \tdirectories to the stack, so only the stack is manipulated.\n"
-"    \n"
-"    Arguments:\n"
-"      +N\tRotates the stack so that the Nth directory (counting\n"
-"    \tfrom the left of the list shown by ‘dirs’, starting with\n"
-"    \tzero) is at the top.\n"
-"    \n"
-"      -N\tRotates the stack so that the Nth directory (counting\n"
-"    \tfrom the right of the list shown by ‘dirs’, starting with\n"
-"    \tzero) is at the top.\n"
-"    \n"
-"      dir\tAdds DIR to the directory stack at the top, making it the\n"
-"    \tnew current working directory.\n"
-"    \n"
-"    The ‘dirs’ builtin displays the directory stack."
-
-#: builtins/pushd.def:730
-msgid ""
-"Removes entries from the directory stack.  With no arguments, removes\n"
-"    the top directory from the stack, and changes to the new top directory.\n"
-"    \n"
-"    Options:\n"
-"      -n\tSuppresses the normal change of directory when removing\n"
-"    \tdirectories from the stack, so only the stack is manipulated.\n"
-"    \n"
-"    Arguments:\n"
-"      +N\tRemoves the Nth entry counting from the left of the list\n"
-"    \tshown by `dirs', starting with zero.  For example: `popd +0'\n"
-"    \tremoves the first directory, `popd +1' the second.\n"
-"    \n"
-"      -N\tRemoves the Nth entry counting from the right of the list\n"
-"    \tshown by `dirs', starting with zero.  For example: `popd -0'\n"
-"    \tremoves the last directory, `popd -1' the next to last.\n"
-"    \n"
-"    The `dirs' builtin displays the directory stack."
-msgstr ""
-"Removes entries from the directory stack.  With no arguments, removes\n"
-"    the top directory from the stack, and changes to the new top directory.\n"
-"    \n"
-"    Options:\n"
-"      -n\tSuppresses the normal change of directory when removing\n"
-"    \tdirectories from the stack, so only the stack is manipulated.\n"
-"    \n"
-"    Arguments:\n"
-"      +N\tRemoves the Nth entry counting from the left of the list\n"
-"    \tshown by ‘dirs’, starting with zero.  For example: ‘popd +0’\n"
-"    \tremoves the first directory, ‘popd +1’ the second.\n"
-"    \n"
-"      -N\tRemoves the Nth entry counting from the right of the list\n"
-"    \tshown by ‘dirs’, starting with zero.  For example: ‘popd -0’\n"
-"    \tremoves the last directory, ‘popd -1’ the next to last.\n"
-"    \n"
-"    The ‘dirs’ builtin displays the directory stack."
-
-#: builtins/read.def:272
-#, c-format
-msgid "%s: invalid timeout specification"
-msgstr "%s: invalid timeout specification"
-
-#: builtins/read.def:644
-#, c-format
-msgid "read error: %d: %s"
-msgstr "read error: %d: %s"
-
-#: builtins/return.def:75
-msgid "can only `return' from a function or sourced script"
-msgstr "can only ‘return’ from a function or sourced script"
-
-#: builtins/set.def:771
-msgid "cannot simultaneously unset a function and a variable"
-msgstr "cannot simultaneously unset a function and a variable"
-
-#: builtins/set.def:812
-#, c-format
-msgid "%s: cannot unset"
-msgstr "%s: cannot unset"
-
-#: builtins/set.def:829
-#, c-format
-msgid "%s: cannot unset: readonly %s"
-msgstr "%s: cannot unset: readonly %s"
-
-#: builtins/set.def:841
-#, c-format
-msgid "%s: not an array variable"
-msgstr "%s: not an array variable"
-
-#: builtins/setattr.def:186
-#, c-format
-msgid "%s: not a function"
-msgstr "%s: not a function"
-
-#: builtins/shift.def:71 builtins/shift.def:77
-msgid "shift count"
-msgstr "shift count"
-
-#: builtins/shopt.def:277
-msgid "cannot set and unset shell options simultaneously"
-msgstr "cannot set and unset shell options simultaneously"
-
-#: builtins/shopt.def:342
-#, c-format
-msgid "%s: invalid shell option name"
-msgstr "%s: invalid shell option name"
-
-#: builtins/source.def:130
-msgid "filename argument required"
-msgstr "filename argument required"
-
-#: builtins/source.def:155
-#, c-format
-msgid "%s: file not found"
-msgstr "%s: file not found"
-
-#: builtins/suspend.def:101
-msgid "cannot suspend"
-msgstr "cannot suspend"
-
-#: builtins/suspend.def:111
-msgid "cannot suspend a login shell"
-msgstr "cannot suspend a login shell"
-
-#: builtins/type.def:234
-#, c-format
-msgid "%s is aliased to `%s'\n"
-msgstr "%s is aliased to ‘%s’\n"
-
-#: builtins/type.def:255
-#, c-format
-msgid "%s is a shell keyword\n"
-msgstr "%s is a shell keyword\n"
-
-#: builtins/type.def:274
-#, c-format
-msgid "%s is a function\n"
-msgstr "%s is a function\n"
-
-#: builtins/type.def:296
-#, c-format
-msgid "%s is a shell builtin\n"
-msgstr "%s is a shell builtin\n"
-
-#: builtins/type.def:317 builtins/type.def:393
-#, c-format
-msgid "%s is %s\n"
-msgstr "%s is %s\n"
-
-#: builtins/type.def:337
-#, c-format
-msgid "%s is hashed (%s)\n"
-msgstr "%s is hashed (%s)\n"
-
-#: builtins/ulimit.def:379
-#, c-format
-msgid "%s: invalid limit argument"
-msgstr "%s: invalid limit argument"
-
-#: builtins/ulimit.def:405
-#, c-format
-msgid "`%c': bad command"
-msgstr "‘%c’: bad command"
-
-#: builtins/ulimit.def:434
-#, c-format
-msgid "%s: cannot get limit: %s"
-msgstr "%s: cannot get limit: %s"
-
-#: builtins/ulimit.def:460
-msgid "limit"
-msgstr "limit"
-
-#: builtins/ulimit.def:472 builtins/ulimit.def:772
-#, c-format
-msgid "%s: cannot modify limit: %s"
-msgstr "%s: cannot modify limit: %s"
-
-#: builtins/umask.def:118
-msgid "octal number"
-msgstr "octal number"
-
-#: builtins/umask.def:231
-#, c-format
-msgid "`%c': invalid symbolic mode operator"
-msgstr "‘%c’: invalid symbolic mode operator"
-
-#: builtins/umask.def:286
-#, c-format
-msgid "`%c': invalid symbolic mode character"
-msgstr "‘%c’: invalid symbolic mode character"
-
-#: error.c:90 error.c:325 error.c:327 error.c:329
-msgid " line "
-msgstr " line "
-
-#: error.c:165
-#, c-format
-msgid "last command: %s\n"
-msgstr "last command: %s\n"
-
-#: error.c:173
-#, c-format
-msgid "Aborting..."
-msgstr "Aborting..."
-
-#: error.c:410
-msgid "unknown command error"
-msgstr "unknown command error"
-
-#: error.c:411
-msgid "bad command type"
-msgstr "bad command type"
-
-#: error.c:412
-msgid "bad connector"
-msgstr "bad connector"
-
-#: error.c:413
-msgid "bad jump"
-msgstr "bad jump"
-
-#: error.c:451
-#, c-format
-msgid "%s: unbound variable"
-msgstr "%s: unbound variable"
-
-#: eval.c:181
-#, c-format
-msgid "\atimed out waiting for input: auto-logout\n"
-msgstr "\atimed out waiting for input: auto-logout\n"
-
-#: execute_cmd.c:504
-#, c-format
-msgid "cannot redirect standard input from /dev/null: %s"
-msgstr "cannot redirect standard input from /dev/null: %s"
-
-#: execute_cmd.c:1199
-#, c-format
-msgid "TIMEFORMAT: `%c': invalid format character"
-msgstr "TIMEFORMAT: ‘%c’: invalid format character"
-
-#: execute_cmd.c:2240
-msgid "pipe error"
-msgstr "pipe error"
-
-#: execute_cmd.c:4284
-#, c-format
-msgid "%s: maximum function nesting level exceeded (%d)"
-msgstr ""
-
-#: execute_cmd.c:4777
-#, c-format
-msgid "%s: restricted: cannot specify `/' in command names"
-msgstr "%s: restricted: cannot specify ‘/’ in command names"
-
-#: execute_cmd.c:4872
-#, c-format
-msgid "%s: command not found"
-msgstr "%s: command not found"
-
-#: execute_cmd.c:5098
-#, c-format
-msgid "%s: %s"
-msgstr "%s: %s"
-
-#: execute_cmd.c:5135
-#, c-format
-msgid "%s: %s: bad interpreter"
-msgstr "%s: %s: bad interpreter"
-
-#: execute_cmd.c:5172
-#, fuzzy, c-format
-msgid "%s: cannot execute binary file: %s"
-msgstr "%s: cannot execute binary file"
-
-#: execute_cmd.c:5244
-#, fuzzy, c-format
-msgid "`%s': is a special builtin"
-msgstr "%s is a shell builtin\n"
-
-#: execute_cmd.c:5296
-#, c-format
-msgid "cannot duplicate fd %d to fd %d"
-msgstr "cannot duplicate fd %d to fd %d"
-
-#: expr.c:258
-msgid "expression recursion level exceeded"
-msgstr "expression recursion level exceeded"
-
-#: expr.c:282
-msgid "recursion stack underflow"
-msgstr "recursion stack underflow"
-
-#: expr.c:430
-msgid "syntax error in expression"
-msgstr "syntax error in expression"
-
-#: expr.c:474
-msgid "attempted assignment to non-variable"
-msgstr "attempted assignment to non-variable"
-
-#: expr.c:493 expr.c:838
-msgid "division by 0"
-msgstr "division by 0"
-
-#: expr.c:540
-msgid "bug: bad expassign token"
-msgstr "bug: bad expassign token"
-
-#: expr.c:589
-msgid "`:' expected for conditional expression"
-msgstr "‘:’ expected for conditional expression"
-
-#: expr.c:895
-msgid "exponent less than 0"
-msgstr "exponent less than 0"
-
-#: expr.c:948
-msgid "identifier expected after pre-increment or pre-decrement"
-msgstr "identifier expected after pre-increment or pre-decrement"
-
-#: expr.c:973
-msgid "missing `)'"
-msgstr "missing ‘)’"
-
-#: expr.c:1024 expr.c:1351
-msgid "syntax error: operand expected"
-msgstr "syntax error: operand expected"
-
-#: expr.c:1353
-msgid "syntax error: invalid arithmetic operator"
-msgstr "syntax error: invalid arithmetic operator"
-
-#: expr.c:1377
-#, c-format
-msgid "%s%s%s: %s (error token is \"%s\")"
-msgstr "%s%s%s: %s (error token is “%s”)"
-
-#: expr.c:1435
-msgid "invalid arithmetic base"
-msgstr "invalid arithmetic base"
-
-#: expr.c:1455
-msgid "value too great for base"
-msgstr "value too great for base"
-
-#: expr.c:1504
-#, c-format
-msgid "%s: expression error\n"
-msgstr "%s: expression error\n"
-
-#: general.c:61
-msgid "getcwd: cannot access parent directories"
-msgstr "getcwd: cannot access parent directories"
-
-#: input.c:99 subst.c:5094
-#, c-format
-msgid "cannot reset nodelay mode for fd %d"
-msgstr "cannot reset nodelay mode for fd %d"
-
-#: input.c:265
-#, c-format
-msgid "cannot allocate new file descriptor for bash input from fd %d"
-msgstr "cannot allocate new file descriptor for bash input from fd %d"
-
-#: input.c:273
-#, c-format
-msgid "save_bash_input: buffer already exists for new fd %d"
-msgstr "save_bash_input: buffer already exists for new fd %d"
-
-#: jobs.c:470
-msgid "start_pipeline: pgrp pipe"
-msgstr "start_pipeline: pgrp pipe"
-
-#: jobs.c:891
-#, c-format
-msgid "forked pid %d appears in running job %d"
-msgstr "forked pid %d appears in running job %d"
-
-#: jobs.c:1009
-#, c-format
-msgid "deleting stopped job %d with process group %ld"
-msgstr "deleting stopped job %d with process group %ld"
-
-#: jobs.c:1114
-#, c-format
-msgid "add_process: process %5ld (%s) in the_pipeline"
-msgstr "add_process: process %5ld (%s) in the_pipeline"
-
-#: jobs.c:1117
-#, c-format
-msgid "add_process: pid %5ld (%s) marked as still alive"
-msgstr "add_process: pid %5ld (%s) marked as still alive"
-
-#: jobs.c:1432
-#, c-format
-msgid "describe_pid: %ld: no such pid"
-msgstr "describe_pid: %ld: no such pid"
-
-#: jobs.c:1447
-#, c-format
-msgid "Signal %d"
-msgstr "Signal %d"
-
-#: jobs.c:1461 jobs.c:1486
-msgid "Done"
-msgstr "Done"
-
-#: jobs.c:1466 siglist.c:123
-msgid "Stopped"
-msgstr "Stopped"
-
-#: jobs.c:1470
-#, c-format
-msgid "Stopped(%s)"
-msgstr "Stopped(%s)"
-
-#: jobs.c:1474
-msgid "Running"
-msgstr "Running"
-
-#: jobs.c:1488
-#, c-format
-msgid "Done(%d)"
-msgstr "Done(%d)"
-
-#: jobs.c:1490
-#, c-format
-msgid "Exit %d"
-msgstr "Exit %d"
-
-#: jobs.c:1493
-msgid "Unknown status"
-msgstr "Unknown status"
-
-#: jobs.c:1580
-#, c-format
-msgid "(core dumped) "
-msgstr "(core dumped) "
-
-#: jobs.c:1599
-#, c-format
-msgid "  (wd: %s)"
-msgstr "  (wd: %s)"
-
-#: jobs.c:1807
-#, c-format
-msgid "child setpgid (%ld to %ld)"
-msgstr "child setpgid (%ld to %ld)"
-
-#: jobs.c:2135 nojobs.c:585
-#, c-format
-msgid "wait: pid %ld is not a child of this shell"
-msgstr "wait: pid %ld is not a child of this shell"
-
-#: jobs.c:2372
-#, c-format
-msgid "wait_for: No record of process %ld"
-msgstr "wait_for: No record of process %ld"
-
-#: jobs.c:2653
-#, c-format
-msgid "wait_for_job: job %d is stopped"
-msgstr "wait_for_job: job %d is stopped"
-
-#: jobs.c:2875
-#, c-format
-msgid "%s: job has terminated"
-msgstr "%s: job has terminated"
-
-#: jobs.c:2884
-#, c-format
-msgid "%s: job %d already in background"
-msgstr "%s: job %d already in background"
-
-#: jobs.c:3105
-msgid "waitchld: turning on WNOHANG to avoid indefinite block"
-msgstr "waitchld: turning on WNOHANG to avoid indefinite block"
-
-#: jobs.c:3571
-#, c-format
-msgid "%s: line %d: "
-msgstr "%s: line %d: "
-
-#: jobs.c:3585 nojobs.c:818
-#, c-format
-msgid " (core dumped)"
-msgstr " (core dumped)"
-
-#: jobs.c:3597 jobs.c:3610
-#, c-format
-msgid "(wd now: %s)\n"
-msgstr "(wd now: %s)\n"
-
-#: jobs.c:3642
-msgid "initialize_job_control: getpgrp failed"
-msgstr "initialize_job_control: getpgrp failed"
-
-#: jobs.c:3703
-msgid "initialize_job_control: line discipline"
-msgstr "initialize_job_control: line discipline"
-
-#: jobs.c:3713
-msgid "initialize_job_control: setpgid"
-msgstr "initialize_job_control: setpgid"
-
-#: jobs.c:3734 jobs.c:3743
-#, c-format
-msgid "cannot set terminal process group (%d)"
-msgstr "cannot set terminal process group (%d)"
-
-#: jobs.c:3748
-msgid "no job control in this shell"
-msgstr "no job control in this shell"
-
-#: lib/malloc/malloc.c:296
-#, c-format
-msgid "malloc: failed assertion: %s\n"
-msgstr "malloc: failed assertion: %s\n"
-
-#: lib/malloc/malloc.c:312
-#, c-format
-msgid ""
-"\r\n"
-"malloc: %s:%d: assertion botched\r\n"
-msgstr ""
-"\r\n"
-"malloc: %s:%d: assertion botched\r\n"
-
-#: lib/malloc/malloc.c:313
-msgid "unknown"
-msgstr "unknown"
-
-#: lib/malloc/malloc.c:797
-msgid "malloc: block on free list clobbered"
-msgstr "malloc: block on free list clobbered"
-
-#: lib/malloc/malloc.c:874
-msgid "free: called with already freed block argument"
-msgstr "free: called with already freed block argument"
-
-#: lib/malloc/malloc.c:877
-msgid "free: called with unallocated block argument"
-msgstr "free: called with unallocated block argument"
-
-#: lib/malloc/malloc.c:896
-msgid "free: underflow detected; mh_nbytes out of range"
-msgstr "free: underflow detected; mh_nbytes out of range"
-
-#: lib/malloc/malloc.c:902
-msgid "free: start and end chunk sizes differ"
-msgstr "free: start and end chunk sizes differ"
-
-#: lib/malloc/malloc.c:1001
-msgid "realloc: called with unallocated block argument"
-msgstr "realloc: called with unallocated block argument"
-
-#: lib/malloc/malloc.c:1016
-msgid "realloc: underflow detected; mh_nbytes out of range"
-msgstr "realloc: underflow detected; mh_nbytes out of range"
-
-#: lib/malloc/malloc.c:1022
-msgid "realloc: start and end chunk sizes differ"
-msgstr "realloc: start and end chunk sizes differ"
-
-#: lib/malloc/table.c:177
-#, c-format
-msgid "register_alloc: alloc table is full with FIND_ALLOC?\n"
-msgstr "register_alloc: alloc table is full with FIND_ALLOC?\n"
-
-#: lib/malloc/table.c:184
-#, c-format
-msgid "register_alloc: %p already in table as allocated?\n"
-msgstr "register_alloc: %p already in table as allocated?\n"
-
-#: lib/malloc/table.c:220
-#, c-format
-msgid "register_free: %p already in table as free?\n"
-msgstr "register_free: %p already in table as free?\n"
-
-#: lib/sh/fmtulong.c:102
-msgid "invalid base"
-msgstr "invalid base"
-
-#: lib/sh/netopen.c:168
-#, c-format
-msgid "%s: host unknown"
-msgstr "%s: host unknown"
-
-#: lib/sh/netopen.c:175
-#, c-format
-msgid "%s: invalid service"
-msgstr "%s: invalid service"
-
-#: lib/sh/netopen.c:306
-#, c-format
-msgid "%s: bad network path specification"
-msgstr "%s: bad network path specification"
-
-#: lib/sh/netopen.c:346
-msgid "network operations not supported"
-msgstr "network operations not supported"
-
-#: locale.c:204
-#, c-format
-msgid "setlocale: LC_ALL: cannot change locale (%s)"
-msgstr "setlocale: LC_ALL: cannot change locale (%s)"
-
-#: locale.c:206
-#, c-format
-msgid "setlocale: LC_ALL: cannot change locale (%s): %s"
-msgstr "setlocale: LC_ALL: cannot change locale (%s): %s"
-
-#: locale.c:263
-#, c-format
-msgid "setlocale: %s: cannot change locale (%s)"
-msgstr "setlocale: %s: cannot change locale (%s)"
-
-#: locale.c:265
-#, c-format
-msgid "setlocale: %s: cannot change locale (%s): %s"
-msgstr "setlocale: %s: cannot change locale (%s): %s"
-
-#: mailcheck.c:433
-msgid "You have mail in $_"
-msgstr "You have mail in $_"
-
-#: mailcheck.c:458
-msgid "You have new mail in $_"
-msgstr "You have new mail in $_"
-
-#: mailcheck.c:474
-#, c-format
-msgid "The mail in %s has been read\n"
-msgstr "The mail in %s has been read\n"
-
-#: make_cmd.c:323
-msgid "syntax error: arithmetic expression required"
-msgstr "syntax error: arithmetic expression required"
-
-#: make_cmd.c:325
-msgid "syntax error: `;' unexpected"
-msgstr "syntax error: ‘;’ unexpected"
-
-#: make_cmd.c:326
-#, c-format
-msgid "syntax error: `((%s))'"
-msgstr "syntax error: ‘((%s))’"
-
-#: make_cmd.c:578
-#, c-format
-msgid "make_here_document: bad instruction type %d"
-msgstr "make_here_document: bad instruction type %d"
-
-#: make_cmd.c:662
-#, c-format
-msgid "here-document at line %d delimited by end-of-file (wanted `%s')"
-msgstr "here-document at line %d delimited by end-of-file (wanted ‘%s’)"
-
-#: make_cmd.c:759
-#, c-format
-msgid "make_redirection: redirection instruction `%d' out of range"
-msgstr "make_redirection: redirection instruction ‘%d’ out of range"
-
-#: parse.y:3173 parse.y:3448
-#, c-format
-msgid "unexpected EOF while looking for matching `%c'"
-msgstr "unexpected EOF while looking for matching ‘%c’"
-
-#: parse.y:4038
-msgid "unexpected EOF while looking for `]]'"
-msgstr "unexpected EOF while looking for ‘]]’"
-
-#: parse.y:4043
-#, c-format
-msgid "syntax error in conditional expression: unexpected token `%s'"
-msgstr "syntax error in conditional expression: unexpected token ‘%s’"
-
-#: parse.y:4047
-msgid "syntax error in conditional expression"
-msgstr "syntax error in conditional expression"
-
-#: parse.y:4125
-#, c-format
-msgid "unexpected token `%s', expected `)'"
-msgstr "unexpected token ‘%s’, expected ‘)’"
-
-#: parse.y:4129
-msgid "expected `)'"
-msgstr "expected ‘)’"
-
-#: parse.y:4157
-#, c-format
-msgid "unexpected argument `%s' to conditional unary operator"
-msgstr "unexpected argument ‘%s’ to conditional unary operator"
-
-#: parse.y:4161
-msgid "unexpected argument to conditional unary operator"
-msgstr "unexpected argument to conditional unary operator"
-
-#: parse.y:4207
-#, c-format
-msgid "unexpected token `%s', conditional binary operator expected"
-msgstr "unexpected token ‘%s’, conditional binary operator expected"
-
-#: parse.y:4211
-msgid "conditional binary operator expected"
-msgstr "conditional binary operator expected"
-
-#: parse.y:4233
-#, c-format
-msgid "unexpected argument `%s' to conditional binary operator"
-msgstr "unexpected argument ‘%s’ to conditional binary operator"
-
-#: parse.y:4237
-msgid "unexpected argument to conditional binary operator"
-msgstr "unexpected argument to conditional binary operator"
-
-#: parse.y:4248
-#, c-format
-msgid "unexpected token `%c' in conditional command"
-msgstr "unexpected token ‘%c’ in conditional command"
-
-#: parse.y:4251
-#, c-format
-msgid "unexpected token `%s' in conditional command"
-msgstr "unexpected token ‘%s’ in conditional command"
-
-#: parse.y:4255
-#, c-format
-msgid "unexpected token %d in conditional command"
-msgstr "unexpected token %d in conditional command"
-
-#: parse.y:5590
-#, c-format
-msgid "syntax error near unexpected token `%s'"
-msgstr "syntax error near unexpected token ‘%s’"
-
-#: parse.y:5608
-#, c-format
-msgid "syntax error near `%s'"
-msgstr "syntax error near ‘%s’"
-
-#: parse.y:5618
-msgid "syntax error: unexpected end of file"
-msgstr "syntax error: unexpected end of file"
-
-#: parse.y:5618
-msgid "syntax error"
-msgstr "syntax error"
-
-#: parse.y:5680
-#, c-format
-msgid "Use \"%s\" to leave the shell.\n"
-msgstr "Use “%s” to leave the shell.\n"
-
-#: parse.y:5842
-msgid "unexpected EOF while looking for matching `)'"
-msgstr "unexpected EOF while looking for matching ‘)’"
-
-#: pcomplete.c:1079
-#, c-format
-msgid "completion: function `%s' not found"
-msgstr "completion: function ‘%s’ not found"
-
-#: pcomplib.c:182
-#, c-format
-msgid "progcomp_insert: %s: NULL COMPSPEC"
-msgstr "progcomp_insert: %s: NULL COMPSPEC"
-
-#: print_cmd.c:300
-#, c-format
-msgid "print_command: bad connector `%d'"
-msgstr "print_command: bad connector ‘%d’"
-
-#: print_cmd.c:373
-#, c-format
-msgid "xtrace_set: %d: invalid file descriptor"
-msgstr "xtrace_set: %d: invalid file descriptor"
-
-#: print_cmd.c:378
-msgid "xtrace_set: NULL file pointer"
-msgstr "xtrace_set: NULL file pointer"
-
-#: print_cmd.c:382
-#, c-format
-msgid "xtrace fd (%d) != fileno xtrace fp (%d)"
-msgstr "xtrace fd (%d) != fileno xtrace fp (%d)"
-
-#: print_cmd.c:1503
-#, c-format
-msgid "cprintf: `%c': invalid format character"
-msgstr "cprintf: ‘%c’: invalid format character"
-
-#: redir.c:122
-msgid "file descriptor out of range"
-msgstr "file descriptor out of range"
-
-#: redir.c:178
-#, c-format
-msgid "%s: ambiguous redirect"
-msgstr "%s: ambiguous redirect"
-
-#: redir.c:182
-#, c-format
-msgid "%s: cannot overwrite existing file"
-msgstr "%s: cannot overwrite existing file"
-
-#: redir.c:187
-#, c-format
-msgid "%s: restricted: cannot redirect output"
-msgstr "%s: restricted: cannot redirect output"
-
-#: redir.c:192
-#, c-format
-msgid "cannot create temp file for here-document: %s"
-msgstr "cannot create temp file for here-document: %s"
-
-#: redir.c:196
-#, c-format
-msgid "%s: cannot assign fd to variable"
-msgstr "%s: cannot assign fd to variable"
-
-#: redir.c:548
-msgid "/dev/(tcp|udp)/host/port not supported without networking"
-msgstr "/dev/(tcp|udp)/host/port not supported without networking"
-
-#: redir.c:818 redir.c:930 redir.c:993 redir.c:1142
-msgid "redirection error: cannot duplicate fd"
-msgstr "redirection error: cannot duplicate fd"
-
-#: shell.c:337
-msgid "could not find /tmp, please create!"
-msgstr "could not find /tmp, please create!"
-
-#: shell.c:341
-msgid "/tmp must be a valid directory name"
-msgstr "/tmp must be a valid directory name"
-
-#: shell.c:888
-#, c-format
-msgid "%c%c: invalid option"
-msgstr "%c%c: invalid option"
-
-#: shell.c:1662
-msgid "I have no name!"
-msgstr "I have no name!"
-
-#: shell.c:1807
-#, c-format
-msgid "GNU bash, version %s-(%s)\n"
-msgstr "GNU bash, version %s-(%s)\n"
-
-#: shell.c:1808
-#, c-format
-msgid ""
-"Usage:\t%s [GNU long option] [option] ...\n"
-"\t%s [GNU long option] [option] script-file ...\n"
-msgstr ""
-"Usage:\t%s [GNU long option] [option] ...\n"
-"\t%s [GNU long option] [option] script-file ...\n"
-
-#: shell.c:1810
-msgid "GNU long options:\n"
-msgstr "GNU long options:\n"
-
-#: shell.c:1814
-msgid "Shell options:\n"
-msgstr "Shell options:\n"
-
-#: shell.c:1815
-msgid "\t-irsD or -c command or -O shopt_option\t\t(invocation only)\n"
-msgstr "\t-irsD or -c command or -O shopt_option\t\t(invocation only)\n"
-
-#: shell.c:1830
-#, c-format
-msgid "\t-%s or -o option\n"
-msgstr "\t-%s or -o option\n"
-
-#: shell.c:1836
-#, c-format
-msgid "Type `%s -c \"help set\"' for more information about shell options.\n"
-msgstr "Type ‘%s -c “help set”’ for more information about shell options.\n"
-
-#: shell.c:1837
-#, c-format
-msgid "Type `%s -c help' for more information about shell builtin commands.\n"
-msgstr "Type ‘%s -c help’ for more information about shell builtin commands.\n"
-
-#: shell.c:1838
-#, c-format
-msgid "Use the `bashbug' command to report bugs.\n"
-msgstr "Use the ‘bashbug’ command to report bugs.\n"
-
-#: sig.c:647
-#, c-format
-msgid "sigprocmask: %d: invalid operation"
-msgstr "sigprocmask: %d: invalid operation"
-
-#: siglist.c:48
-msgid "Bogus signal"
-msgstr "Bogus signal"
-
-#: siglist.c:51
-msgid "Hangup"
-msgstr "Hangup"
-
-#: siglist.c:55
-msgid "Interrupt"
-msgstr "Interrupt"
-
-#: siglist.c:59
-msgid "Quit"
-msgstr "Quit"
-
-#: siglist.c:63
-msgid "Illegal instruction"
-msgstr "Illegal instruction"
-
-#: siglist.c:67
-msgid "BPT trace/trap"
-msgstr "BPT trace/trap"
-
-#: siglist.c:75
-msgid "ABORT instruction"
-msgstr "ABORT instruction"
-
-#: siglist.c:79
-msgid "EMT instruction"
-msgstr "EMT instruction"
-
-#: siglist.c:83
-msgid "Floating point exception"
-msgstr "Floating point exception"
-
-#: siglist.c:87
-msgid "Killed"
-msgstr "Killed"
-
-#: siglist.c:91
-msgid "Bus error"
-msgstr "Bus error"
-
-#: siglist.c:95
-msgid "Segmentation fault"
-msgstr "Segmentation fault"
-
-#: siglist.c:99
-msgid "Bad system call"
-msgstr "Bad system call"
-
-#: siglist.c:103
-msgid "Broken pipe"
-msgstr "Broken pipe"
-
-#: siglist.c:107
-msgid "Alarm clock"
-msgstr "Alarm clock"
-
-#: siglist.c:111
-msgid "Terminated"
-msgstr "Terminated"
-
-#: siglist.c:115
-msgid "Urgent IO condition"
-msgstr "Urgent IO condition"
-
-#: siglist.c:119
-msgid "Stopped (signal)"
-msgstr "Stopped (signal)"
-
-#: siglist.c:127
-msgid "Continue"
-msgstr "Continue"
-
-#: siglist.c:135
-msgid "Child death or stop"
-msgstr "Child death or stop"
-
-#: siglist.c:139
-msgid "Stopped (tty input)"
-msgstr "Stopped (tty input)"
-
-#: siglist.c:143
-msgid "Stopped (tty output)"
-msgstr "Stopped (tty output)"
-
-#: siglist.c:147
-msgid "I/O ready"
-msgstr "I/O ready"
-
-#: siglist.c:151
-msgid "CPU limit"
-msgstr "CPU limit"
-
-#: siglist.c:155
-msgid "File limit"
-msgstr "File limit"
-
-#: siglist.c:159
-msgid "Alarm (virtual)"
-msgstr "Alarm (virtual)"
-
-#: siglist.c:163
-msgid "Alarm (profile)"
-msgstr "Alarm (profile)"
-
-#: siglist.c:167
-msgid "Window changed"
-msgstr "Window changed"
-
-#: siglist.c:171
-msgid "Record lock"
-msgstr "Record lock"
-
-#: siglist.c:175
-msgid "User signal 1"
-msgstr "User signal 1"
-
-#: siglist.c:179
-msgid "User signal 2"
-msgstr "User signal 2"
-
-#: siglist.c:183
-msgid "HFT input data pending"
-msgstr "HFT input data pending"
-
-#: siglist.c:187
-msgid "power failure imminent"
-msgstr "power failure imminent"
-
-#: siglist.c:191
-msgid "system crash imminent"
-msgstr "system crash imminent"
-
-#: siglist.c:195
-msgid "migrate process to another CPU"
-msgstr "migrate process to another CPU"
-
-#: siglist.c:199
-msgid "programming error"
-msgstr "programming error"
-
-#: siglist.c:203
-msgid "HFT monitor mode granted"
-msgstr "HFT monitor mode granted"
-
-#: siglist.c:207
-msgid "HFT monitor mode retracted"
-msgstr "HFT monitor mode retracted"
-
-#: siglist.c:211
-msgid "HFT sound sequence has completed"
-msgstr "HFT sound sequence has completed"
-
-#: siglist.c:215
-msgid "Information request"
-msgstr "Information request"
-
-#: siglist.c:223
-msgid "Unknown Signal #"
-msgstr "Unknown Signal #"
-
-#: siglist.c:225
-#, c-format
-msgid "Unknown Signal #%d"
-msgstr "Unknown Signal #%d"
-
-#: subst.c:1335 subst.c:1506
-#, c-format
-msgid "bad substitution: no closing `%s' in %s"
-msgstr "bad substitution: no closing ‘%s’ in %s"
-
-#: subst.c:2801
-#, c-format
-msgid "%s: cannot assign list to array member"
-msgstr "%s: cannot assign list to array member"
-
-#: subst.c:4991 subst.c:5007
-msgid "cannot make pipe for process substitution"
-msgstr "cannot make pipe for process substitution"
-
-#: subst.c:5039
-msgid "cannot make child for process substitution"
-msgstr "cannot make child for process substitution"
-
-#: subst.c:5084
-#, c-format
-msgid "cannot open named pipe %s for reading"
-msgstr "cannot open named pipe %s for reading"
-
-#: subst.c:5086
-#, c-format
-msgid "cannot open named pipe %s for writing"
-msgstr "cannot open named pipe %s for writing"
-
-#: subst.c:5104
-#, c-format
-msgid "cannot duplicate named pipe %s as fd %d"
-msgstr "cannot duplicate named pipe %s as fd %d"
-
-#: subst.c:5296
-msgid "cannot make pipe for command substitution"
-msgstr "cannot make pipe for command substitution"
-
-#: subst.c:5334
-msgid "cannot make child for command substitution"
-msgstr "cannot make child for command substitution"
-
-#: subst.c:5351
-msgid "command_substitute: cannot duplicate pipe as fd 1"
-msgstr "command_substitute: cannot duplicate pipe as fd 1"
-
-#: subst.c:5875
-#, c-format
-msgid "%s: parameter null or not set"
-msgstr "%s: parameter null or not set"
-
-#: subst.c:6141 subst.c:6156
-#, c-format
-msgid "%s: substring expression < 0"
-msgstr "%s: substring expression < 0"
-
-#: subst.c:7284
-#, c-format
-msgid "%s: bad substitution"
-msgstr "%s: bad substitution"
-
-#: subst.c:7361
-#, c-format
-msgid "$%s: cannot assign in this way"
-msgstr "$%s: cannot assign in this way"
-
-#: subst.c:7697
-msgid ""
-"future versions of the shell will force evaluation as an arithmetic "
-"substitution"
-msgstr ""
-"future versions of the shell will force evaluation as an arithmetic "
-"substitution"
-
-#: subst.c:8165
-#, c-format
-msgid "bad substitution: no closing \"`\" in %s"
-msgstr "bad substitution: no closing “`” in %s"
-
-#: subst.c:9056
-#, c-format
-msgid "no match: %s"
-msgstr "no match: %s"
-
-#: test.c:146
-msgid "argument expected"
-msgstr "argument expected"
-
-#: test.c:155
-#, c-format
-msgid "%s: integer expression expected"
-msgstr "%s: integer expression expected"
-
-#: test.c:263
-msgid "`)' expected"
-msgstr "‘)’ expected"
-
-#: test.c:265
-#, c-format
-msgid "`)' expected, found %s"
-msgstr "‘)’ expected, found %s"
-
-#: test.c:280 test.c:698 test.c:701
-#, c-format
-msgid "%s: unary operator expected"
-msgstr "%s: unary operator expected"
-
-#: test.c:449 test.c:741
-#, c-format
-msgid "%s: binary operator expected"
-msgstr "%s: binary operator expected"
-
-#: test.c:816
-msgid "missing `]'"
-msgstr "missing ‘]’"
-
-#: trap.c:209
-msgid "invalid signal number"
-msgstr "invalid signal number"
-
-#: trap.c:329
-#, c-format
-msgid "run_pending_traps: bad value in trap_list[%d]: %p"
-msgstr "run_pending_traps: bad value in trap_list[%d]: %p"
-
-#: trap.c:333
-#, c-format
-msgid ""
-"run_pending_traps: signal handler is SIG_DFL, resending %d (%s) to myself"
-msgstr ""
-"run_pending_traps: signal handler is SIG_DFL, resending %d (%s) to myself"
-
-#: trap.c:379
-#, c-format
-msgid "trap_handler: bad signal %d"
-msgstr "trap_handler: bad signal %d"
-
-#: variables.c:366
-#, c-format
-msgid "error importing function definition for `%s'"
-msgstr "error importing function definition for ‘%s’"
-
-#: variables.c:764
-#, c-format
-msgid "shell level (%d) too high, resetting to 1"
-msgstr "shell level (%d) too high, resetting to 1"
-
-#: variables.c:1941
-msgid "make_local_variable: no function context at current scope"
-msgstr "make_local_variable: no function context at current scope"
-
-#: variables.c:3192
-msgid "all_local_variables: no function context at current scope"
-msgstr "all_local_variables: no function context at current scope"
-
-#: variables.c:3437
-#, c-format
-msgid "%s has null exportstr"
-msgstr "%s has null exportstr"
-
-#: variables.c:3442 variables.c:3451
-#, c-format
-msgid "invalid character %d in exportstr for %s"
-msgstr "invalid character %d in exportstr for %s"
-
-#: variables.c:3457
-#, c-format
-msgid "no `=' in exportstr for %s"
-msgstr "no ‘=’ in exportstr for %s"
-
-#: variables.c:3917
-msgid "pop_var_context: head of shell_variables not a function context"
-msgstr "pop_var_context: head of shell_variables not a function context"
-
-#: variables.c:3930
-msgid "pop_var_context: no global_variables context"
-msgstr "pop_var_context: no global_variables context"
-
-#: variables.c:4004
-msgid "pop_scope: head of shell_variables not a temporary environment scope"
-msgstr "pop_scope: head of shell_variables not a temporary environment scope"
-
-#: variables.c:4821
-#, c-format
-msgid "%s: %s: cannot open as FILE"
-msgstr "%s: %s: cannot open as FILE"
-
-#: variables.c:4826
-#, c-format
-msgid "%s: %s: invalid value for trace file descriptor"
-msgstr "%s: %s: invalid value for trace file descriptor"
-
-#: version.c:46
-msgid "Copyright (C) 2011 Free Software Foundation, Inc."
-msgstr "Copyright (C) 2011 Free Software Foundation, Inc."
-
-#: version.c:47
-msgid ""
-"License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl."
-"html>\n"
-msgstr ""
-"License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl."
-"html>\n"
-
-#: version.c:86 version2.c:83
-#, c-format
-msgid "GNU bash, version %s (%s)\n"
-msgstr "GNU bash, version %s (%s)\n"
-
-#: version.c:91 version2.c:88
-#, c-format
-msgid "This is free software; you are free to change and redistribute it.\n"
-msgstr "This is free software; you are free to change and redistribute it.\n"
-
-#: version.c:92 version2.c:89
-#, c-format
-msgid "There is NO WARRANTY, to the extent permitted by law.\n"
-msgstr "There is NO WARRANTY, to the extent permitted by law.\n"
-
-#: version2.c:86
-#, c-format
-msgid "Copyright (C) 2009 Free Software Foundation, Inc.\n"
-msgstr "Copyright (C) 2009 Free Software Foundation, Inc.\n"
-
-#: version2.c:87
-#, c-format
-msgid ""
-"License GPLv2+: GNU GPL version 2 or later <http://gnu.org/licenses/gpl."
-"html>\n"
-msgstr ""
-"License GPLv2+: GNU GPL version 2 or later <http://gnu.org/licenses/gpl."
-"html>\n"
-
-#: xmalloc.c:91
-#, c-format
-msgid "%s: cannot allocate %lu bytes (%lu bytes allocated)"
-msgstr "%s: cannot allocate %lu bytes (%lu bytes allocated)"
-
-#: xmalloc.c:93
-#, c-format
-msgid "%s: cannot allocate %lu bytes"
-msgstr "%s: cannot allocate %lu bytes"
-
-#: xmalloc.c:163
-#, c-format
-msgid "%s: %s:%d: cannot allocate %lu bytes (%lu bytes allocated)"
-msgstr "%s: %s:%d: cannot allocate %lu bytes (%lu bytes allocated)"
-
-#: xmalloc.c:165
-#, c-format
-msgid "%s: %s:%d: cannot allocate %lu bytes"
-msgstr "%s: %s:%d: cannot allocate %lu bytes"
-
-#: builtins.c:43
-msgid "alias [-p] [name[=value] ... ]"
-msgstr "alias [-p] [name[=value] ... ]"
-
-#: builtins.c:47
-msgid "unalias [-a] name [name ...]"
-msgstr "unalias [-a] name [name ...]"
-
-#: builtins.c:51
-#, fuzzy
-msgid ""
-"bind [-lpsvPSVX] [-m keymap] [-f filename] [-q name] [-u name] [-r keyseq] [-"
-"x keyseq:shell-command] [keyseq:readline-function or readline-command]"
-msgstr ""
-"bind [-lpvsPVS] [-m keymap] [-f filename] [-q name] [-u name] [-r keyseq] [-"
-"x keyseq:shell-command] [keyseq:readline-function or readline-command]"
-
-#: builtins.c:54
-msgid "break [n]"
-msgstr "break [n]"
-
-#: builtins.c:56
-msgid "continue [n]"
-msgstr "continue [n]"
-
-#: builtins.c:58
-msgid "builtin [shell-builtin [arg ...]]"
-msgstr "builtin [shell-builtin [arg ...]]"
-
-#: builtins.c:61
-msgid "caller [expr]"
-msgstr "caller [expr]"
-
-#: builtins.c:64
-msgid "cd [-L|[-P [-e]]] [dir]"
-msgstr "cd [-L|[-P [-e]]] [dir]"
-
-#: builtins.c:66
-msgid "pwd [-LP]"
-msgstr "pwd [-LP]"
-
-#: builtins.c:68
-msgid ":"
-msgstr ":"
-
-#: builtins.c:70
-msgid "true"
-msgstr "true"
-
-#: builtins.c:72
-msgid "false"
-msgstr "false"
-
-#: builtins.c:74
-msgid "command [-pVv] command [arg ...]"
-msgstr "command [-pVv] command [arg ...]"
-
-#: builtins.c:76
-msgid "declare [-aAfFgilrtux] [-p] [name[=value] ...]"
-msgstr "declare [-aAfFgilrtux] [-p] [name[=value] ...]"
-
-#: builtins.c:78
-msgid "typeset [-aAfFgilrtux] [-p] name[=value] ..."
-msgstr "typeset [-aAfFgilrtux] [-p] name[=value] ..."
-
-#: builtins.c:80
-msgid "local [option] name[=value] ..."
-msgstr "local [option] name[=value] ..."
-
-#: builtins.c:83
-msgid "echo [-neE] [arg ...]"
-msgstr "echo [-neE] [arg ...]"
-
-#: builtins.c:87
-msgid "echo [-n] [arg ...]"
-msgstr "echo [-n] [arg ...]"
-
-#: builtins.c:90
-msgid "enable [-a] [-dnps] [-f filename] [name ...]"
-msgstr "enable [-a] [-dnps] [-f filename] [name ...]"
-
-#: builtins.c:92
-msgid "eval [arg ...]"
-msgstr "eval [arg ...]"
-
-#: builtins.c:94
-msgid "getopts optstring name [arg]"
-msgstr "getopts optstring name [arg]"
-
-#: builtins.c:96
-msgid "exec [-cl] [-a name] [command [arguments ...]] [redirection ...]"
-msgstr "exec [-cl] [-a name] [command [arguments ...]] [redirection ...]"
-
-#: builtins.c:98
-msgid "exit [n]"
-msgstr "exit [n]"
-
-#: builtins.c:100
-msgid "logout [n]"
-msgstr "logout [n]"
-
-#: builtins.c:103
-msgid "fc [-e ename] [-lnr] [first] [last] or fc -s [pat=rep] [command]"
-msgstr "fc [-e ename] [-lnr] [first] [last] or fc -s [pat=rep] [command]"
-
-#: builtins.c:107
-msgid "fg [job_spec]"
-msgstr "fg [job_spec]"
-
-#: builtins.c:111
-msgid "bg [job_spec ...]"
-msgstr "bg [job_spec ...]"
-
-#: builtins.c:114
-msgid "hash [-lr] [-p pathname] [-dt] [name ...]"
-msgstr "hash [-lr] [-p pathname] [-dt] [name ...]"
-
-#: builtins.c:117
-msgid "help [-dms] [pattern ...]"
-msgstr "help [-dms] [pattern ...]"
-
-#: builtins.c:121
-msgid ""
-"history [-c] [-d offset] [n] or history -anrw [filename] or history -ps arg "
-"[arg...]"
-msgstr ""
-"history [-c] [-d offset] [n] or history -anrw [filename] or history -ps arg "
-"[arg...]"
-
-#: builtins.c:125
-msgid "jobs [-lnprs] [jobspec ...] or jobs -x command [args]"
-msgstr "jobs [-lnprs] [jobspec ...] or jobs -x command [args]"
-
-#: builtins.c:129
-msgid "disown [-h] [-ar] [jobspec ...]"
-msgstr "disown [-h] [-ar] [jobspec ...]"
-
-#: builtins.c:132
-msgid ""
-"kill [-s sigspec | -n signum | -sigspec] pid | jobspec ... or kill -l "
-"[sigspec]"
-msgstr ""
-"kill [-s sigspec | -n signum | -sigspec] pid | jobspec ... or kill -l "
-"[sigspec]"
-
-#: builtins.c:134
-msgid "let arg [arg ...]"
-msgstr "let arg [arg ...]"
-
-#: builtins.c:136
-msgid ""
-"read [-ers] [-a array] [-d delim] [-i text] [-n nchars] [-N nchars] [-p "
-"prompt] [-t timeout] [-u fd] [name ...]"
-msgstr ""
-"read [-ers] [-a array] [-d delim] [-i text] [-n nchars] [-N nchars] [-p "
-"prompt] [-t timeout] [-u fd] [name ...]"
-
-#: builtins.c:138
-msgid "return [n]"
-msgstr "return [n]"
-
-#: builtins.c:140
-msgid "set [-abefhkmnptuvxBCHP] [-o option-name] [--] [arg ...]"
-msgstr "set [-abefhkmnptuvxBCHP] [-o option-name] [--] [arg ...]"
-
-#: builtins.c:142
-msgid "unset [-f] [-v] [name ...]"
-msgstr "unset [-f] [-v] [name ...]"
-
-#: builtins.c:144
-msgid "export [-fn] [name[=value] ...] or export -p"
-msgstr "export [-fn] [name[=value] ...] or export -p"
-
-#: builtins.c:146
-msgid "readonly [-aAf] [name[=value] ...] or readonly -p"
-msgstr "readonly [-aAf] [name[=value] ...] or readonly -p"
-
-#: builtins.c:148
-msgid "shift [n]"
-msgstr "shift [n]"
-
-#: builtins.c:150
-msgid "source filename [arguments]"
-msgstr "source filename [arguments]"
-
-#: builtins.c:152
-msgid ". filename [arguments]"
-msgstr ". filename [arguments]"
-
-#: builtins.c:155
-msgid "suspend [-f]"
-msgstr "suspend [-f]"
-
-#: builtins.c:158
-msgid "test [expr]"
-msgstr "test [expr]"
-
-#: builtins.c:160
-msgid "[ arg... ]"
-msgstr "[ arg... ]"
-
-#: builtins.c:162
-msgid "times"
-msgstr "times"
-
-#: builtins.c:164
-msgid "trap [-lp] [[arg] signal_spec ...]"
-msgstr "trap [-lp] [[arg] signal_spec ...]"
-
-#: builtins.c:166
-msgid "type [-afptP] name [name ...]"
-msgstr "type [-afptP] name [name ...]"
-
-#: builtins.c:169
-#, fuzzy
-msgid "ulimit [-SHabcdefilmnpqrstuvxT] [limit]"
-msgstr "ulimit [-SHacdefilmnpqrstuvx] [limit]"
-
-#: builtins.c:172
-msgid "umask [-p] [-S] [mode]"
-msgstr "umask [-p] [-S] [mode]"
-
-#: builtins.c:175
-#, fuzzy
-msgid "wait [id ...]"
-msgstr "wait [id]"
-
-#: builtins.c:179
-msgid "wait [pid]"
-msgstr "wait [pid]"
-
-#: builtins.c:182
-msgid "for NAME [in WORDS ... ] ; do COMMANDS; done"
-msgstr "for NAME [in WORDS ... ] ; do COMMANDS; done"
-
-#: builtins.c:184
-msgid "for (( exp1; exp2; exp3 )); do COMMANDS; done"
-msgstr "for (( exp1; exp2; exp3 )); do COMMANDS; done"
-
-#: builtins.c:186
-msgid "select NAME [in WORDS ... ;] do COMMANDS; done"
-msgstr "select NAME [in WORDS ... ;] do COMMANDS; done"
-
-#: builtins.c:188
-msgid "time [-p] pipeline"
-msgstr "time [-p] pipeline"
-
-#: builtins.c:190
-msgid "case WORD in [PATTERN [| PATTERN]...) COMMANDS ;;]... esac"
-msgstr "case WORD in [PATTERN [| PATTERN]...) COMMANDS ;;]... esac"
-
-#: builtins.c:192
-msgid ""
-"if COMMANDS; then COMMANDS; [ elif COMMANDS; then COMMANDS; ]... [ else "
-"COMMANDS; ] fi"
-msgstr ""
-"if COMMANDS; then COMMANDS; [ elif COMMANDS; then COMMANDS; ]... [ else "
-"COMMANDS; ] fi"
-
-#: builtins.c:194
-msgid "while COMMANDS; do COMMANDS; done"
-msgstr "while COMMANDS; do COMMANDS; done"
-
-#: builtins.c:196
-msgid "until COMMANDS; do COMMANDS; done"
-msgstr "until COMMANDS; do COMMANDS; done"
-
-#: builtins.c:198
-msgid "coproc [NAME] command [redirections]"
-msgstr "coproc [NAME] command [redirections]"
-
-#: builtins.c:200
-msgid "function name { COMMANDS ; } or name () { COMMANDS ; }"
-msgstr "function name { COMMANDS ; } or name () { COMMANDS ; }"
-
-#: builtins.c:202
-msgid "{ COMMANDS ; }"
-msgstr "{ COMMANDS ; }"
-
-#: builtins.c:204
-msgid "job_spec [&]"
-msgstr "job_spec [&]"
-
-#: builtins.c:206
-msgid "(( expression ))"
-msgstr "(( expression ))"
-
-#: builtins.c:208
-msgid "[[ expression ]]"
-msgstr "[[ expression ]]"
-
-#: builtins.c:210
-msgid "variables - Names and meanings of some shell variables"
-msgstr "variables - Names and meanings of some shell variables"
-
-#: builtins.c:213
-msgid "pushd [-n] [+N | -N | dir]"
-msgstr "pushd [-n] [+N | -N | dir]"
-
-#: builtins.c:217
-msgid "popd [-n] [+N | -N]"
-msgstr "popd [-n] [+N | -N]"
-
-#: builtins.c:221
-msgid "dirs [-clpv] [+N] [-N]"
-msgstr "dirs [-clpv] [+N] [-N]"
-
-#: builtins.c:224
-msgid "shopt [-pqsu] [-o] [optname ...]"
-msgstr "shopt [-pqsu] [-o] [optname ...]"
-
-#: builtins.c:226
-msgid "printf [-v var] format [arguments]"
-msgstr "printf [-v var] format [arguments]"
-
-#: builtins.c:229
-msgid ""
-"complete [-abcdefgjksuv] [-pr] [-DE] [-o option] [-A action] [-G globpat] [-"
-"W wordlist]  [-F function] [-C command] [-X filterpat] [-P prefix] [-S "
-"suffix] [name ...]"
-msgstr ""
-"complete [-abcdefgjksuv] [-pr] [-DE] [-o option] [-A action] [-G globpat] [-"
-"W wordlist]  [-F function] [-C command] [-X filterpat] [-P prefix] [-S "
-"suffix] [name ...]"
-
-#: builtins.c:233
-msgid ""
-"compgen [-abcdefgjksuv] [-o option]  [-A action] [-G globpat] [-W wordlist]  "
-"[-F function] [-C command] [-X filterpat] [-P prefix] [-S suffix] [word]"
-msgstr ""
-"compgen [-abcdefgjksuv] [-o option]  [-A action] [-G globpat] [-W wordlist]  "
-"[-F function] [-C command] [-X filterpat] [-P prefix] [-S suffix] [word]"
-
-#: builtins.c:237
-msgid "compopt [-o|+o option] [-DE] [name ...]"
-msgstr "compopt [-o|+o option] [-DE] [name ...]"
-
-#: builtins.c:240
-msgid ""
-"mapfile [-n count] [-O origin] [-s count] [-t] [-u fd] [-C callback] [-c "
-"quantum] [array]"
-msgstr ""
-"mapfile [-n count] [-O origin] [-s count] [-t] [-u fd] [-C callback] [-c "
-"quantum] [array]"
-
-#: builtins.c:242
-msgid ""
-"readarray [-n count] [-O origin] [-s count] [-t] [-u fd] [-C callback] [-c "
-"quantum] [array]"
-msgstr ""
-"readarray [-n count] [-O origin] [-s count] [-t] [-u fd] [-C callback] [-c "
-"quantum] [array]"
-
-#: builtins.c:254
-msgid ""
-"Define or display aliases.\n"
-"    \n"
-"    Without arguments, `alias' prints the list of aliases in the reusable\n"
-"    form `alias NAME=VALUE' on standard output.\n"
-"    \n"
-"    Otherwise, an alias is defined for each NAME whose VALUE is given.\n"
-"    A trailing space in VALUE causes the next word to be checked for\n"
-"    alias substitution when the alias is expanded.\n"
-"    \n"
-"    Options:\n"
-"      -p\tPrint all defined aliases in a reusable format\n"
-"    \n"
-"    Exit Status:\n"
-"    alias returns true unless a NAME is supplied for which no alias has "
-"been\n"
-"    defined."
-msgstr ""
-"Define or display aliases.\n"
-"    \n"
-"    Without arguments, ‘alias’ prints the list of aliases in the reusable\n"
-"    form ‘alias NAME=VALUE’ on standard output.\n"
-"    \n"
-"    Otherwise, an alias is defined for each NAME whose VALUE is given.\n"
-"    A trailing space in VALUE causes the next word to be checked for\n"
-"    alias substitution when the alias is expanded.\n"
-"    \n"
-"    Options:\n"
-"      -p\tPrint all defined aliases in a reusable format\n"
-"    \n"
-"    Exit Status:\n"
-"    alias returns true unless a NAME is supplied for which no alias has "
-"been\n"
-"    defined."
-
-#: builtins.c:276
-msgid ""
-"Remove each NAME from the list of defined aliases.\n"
-"    \n"
-"    Options:\n"
-"      -a\tremove all alias definitions.\n"
-"    \n"
-"    Return success unless a NAME is not an existing alias."
-msgstr ""
-"Remove each NAME from the list of defined aliases.\n"
-"    \n"
-"    Options:\n"
-"      -a\tremove all alias definitions.\n"
-"    \n"
-"    Return success unless a NAME is not an existing alias."
-
-#: builtins.c:289
-#, fuzzy
-msgid ""
-"Set Readline key bindings and variables.\n"
-"    \n"
-"    Bind a key sequence to a Readline function or a macro, or set a\n"
-"    Readline variable.  The non-option argument syntax is equivalent to\n"
-"    that found in ~/.inputrc, but must be passed as a single argument:\n"
-"    e.g., bind '\"\\C-x\\C-r\": re-read-init-file'.\n"
-"    \n"
-"    Options:\n"
-"      -m  keymap         Use KEYMAP as the keymap for the duration of this\n"
-"                         command.  Acceptable keymap names are emacs,\n"
-"                         emacs-standard, emacs-meta, emacs-ctlx, vi, vi-"
-"move,\n"
-"                         vi-command, and vi-insert.\n"
-"      -l                 List names of functions.\n"
-"      -P                 List function names and bindings.\n"
-"      -p                 List functions and bindings in a form that can be\n"
-"                         reused as input.\n"
-"      -S                 List key sequences that invoke macros and their "
-"values\n"
-"      -s                 List key sequences that invoke macros and their "
-"values\n"
-"                         in a form that can be reused as input.\n"
-"      -V                 List variable names and values\n"
-"      -v                 List variable names and values in a form that can\n"
-"                         be reused as input.\n"
-"      -q  function-name  Query about which keys invoke the named function.\n"
-"      -u  function-name  Unbind all keys which are bound to the named "
-"function.\n"
-"      -r  keyseq         Remove the binding for KEYSEQ.\n"
-"      -f  filename       Read key bindings from FILENAME.\n"
-"      -x  keyseq:shell-command\tCause SHELL-COMMAND to be executed when\n"
-"    \t\t\t\tKEYSEQ is entered.\n"
-"      -X\t\t     List key sequences bound with -x and associated commands\n"
-"                         in a form that can be reused as input.\n"
-"    \n"
-"    Exit Status:\n"
-"    bind returns 0 unless an unrecognized option is given or an error occurs."
-msgstr ""
-"Set Readline key bindings and variables.\n"
-"    \n"
-"    Bind a key sequence to a Readline function or a macro, or set a\n"
-"    Readline variable.  The non-option argument syntax is equivalent to\n"
-"    that found in ~/.inputrc, but must be passed as a single argument:\n"
-"    e.g., bind '“\\C-x\\C-r”: re-read-init-file'.\n"
-"    \n"
-"    Options:\n"
-"      -m  keymap         Use KEYMAP as the keymap for the duration of this\n"
-"                         command.  Acceptable keymap names are emacs,\n"
-"                         emacs-standard, emacs-meta, emacs-ctlx, vi, vi-"
-"move,\n"
-"                         vi-command, and vi-insert.\n"
-"      -l                 List names of functions.\n"
-"      -P                 List function names and bindings.\n"
-"      -p                 List functions and bindings in a form that can be\n"
-"                         reused as input.\n"
-"      -S                 List key sequences that invoke macros and their "
-"values\n"
-"      -s                 List key sequences that invoke macros and their "
-"values\n"
-"                         in a form that can be reused as input.\n"
-"      -V                 List variable names and values\n"
-"      -v                 List variable names and values in a form that can\n"
-"                         be reused as input.\n"
-"      -q  function-name  Query about which keys invoke the named function.\n"
-"      -u  function-name  Unbind all keys which are bound to the named "
-"function.\n"
-"      -r  keyseq         Remove the binding for KEYSEQ.\n"
-"      -f  filename       Read key bindings from FILENAME.\n"
-"      -x  keyseq:shell-command\tCause SHELL-COMMAND to be executed when\n"
-"    \t\t\t\tKEYSEQ is entered.\n"
-"    \n"
-"    Exit Status:\n"
-"    bind returns 0 unless an unrecognized option is given or an error occurs."
-
-#: builtins.c:328
-msgid ""
-"Exit for, while, or until loops.\n"
-"    \n"
-"    Exit a FOR, WHILE or UNTIL loop.  If N is specified, break N enclosing\n"
-"    loops.\n"
-"    \n"
-"    Exit Status:\n"
-"    The exit status is 0 unless N is not greater than or equal to 1."
-msgstr ""
-"Exit for, while, or until loops.\n"
-"    \n"
-"    Exit a FOR, WHILE or UNTIL loop.  If N is specified, break N enclosing\n"
-"    loops.\n"
-"    \n"
-"    Exit Status:\n"
-"    The exit status is 0 unless N is not greater than or equal to 1."
-
-#: builtins.c:340
-msgid ""
-"Resume for, while, or until loops.\n"
-"    \n"
-"    Resumes the next iteration of the enclosing FOR, WHILE or UNTIL loop.\n"
-"    If N is specified, resumes the Nth enclosing loop.\n"
-"    \n"
-"    Exit Status:\n"
-"    The exit status is 0 unless N is not greater than or equal to 1."
-msgstr ""
-"Resume for, while, or until loops.\n"
-"    \n"
-"    Resumes the next iteration of the enclosing FOR, WHILE or UNTIL loop.\n"
-"    If N is specified, resumes the Nth enclosing loop.\n"
-"    \n"
-"    Exit Status:\n"
-"    The exit status is 0 unless N is not greater than or equal to 1."
-
-#: builtins.c:352
-msgid ""
-"Execute shell builtins.\n"
-"    \n"
-"    Execute SHELL-BUILTIN with arguments ARGs without performing command\n"
-"    lookup.  This is useful when you wish to reimplement a shell builtin\n"
-"    as a shell function, but need to execute the builtin within the "
-"function.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns the exit status of SHELL-BUILTIN, or false if SHELL-BUILTIN is\n"
-"    not a shell builtin.."
-msgstr ""
-"Execute shell builtins.\n"
-"    \n"
-"    Execute SHELL-BUILTIN with arguments ARGs without performing command\n"
-"    lookup.  This is useful when you wish to reimplement a shell builtin\n"
-"    as a shell function, but need to execute the builtin within the "
-"function.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns the exit status of SHELL-BUILTIN, or false if SHELL-BUILTIN is\n"
-"    not a shell builtin.."
-
-#: builtins.c:367
-msgid ""
-"Return the context of the current subroutine call.\n"
-"    \n"
-"    Without EXPR, returns \"$line $filename\".  With EXPR, returns\n"
-"    \"$line $subroutine $filename\"; this extra information can be used to\n"
-"    provide a stack trace.\n"
-"    \n"
-"    The value of EXPR indicates how many call frames to go back before the\n"
-"    current one; the top frame is frame 0.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns 0 unless the shell is not executing a shell function or EXPR\n"
-"    is invalid."
-msgstr ""
-"Return the context of the current subroutine call.\n"
-"    \n"
-"    Without EXPR, returns “$line $filename”.  With EXPR, returns\n"
-"    “$line $subroutine $filename”; this extra information can be used to\n"
-"    provide a stack trace.\n"
-"    \n"
-"    The value of EXPR indicates how many call frames to go back before the\n"
-"    current one; the top frame is frame 0.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns 0 unless the shell is not executing a shell function or EXPR\n"
-"    is invalid."
-
-#: builtins.c:385
-#, fuzzy
-msgid ""
-"Change the shell working directory.\n"
-"    \n"
-"    Change the current directory to DIR.  The default DIR is the value of "
-"the\n"
-"    HOME shell variable.\n"
-"    \n"
-"    The variable CDPATH defines the search path for the directory "
-"containing\n"
-"    DIR.  Alternative directory names in CDPATH are separated by a colon "
-"(:).\n"
-"    A null directory name is the same as the current directory.  If DIR "
-"begins\n"
-"    with a slash (/), then CDPATH is not used.\n"
-"    \n"
-"    If the directory is not found, and the shell option `cdable_vars' is "
-"set,\n"
-"    the word is assumed to be  a variable name.  If that variable has a "
-"value,\n"
-"    its value is used for DIR.\n"
-"    \n"
-"    Options:\n"
-"        -L\tforce symbolic links to be followed: resolve symbolic links in\n"
-"    \tDIR after processing instances of `..'\n"
-"        -P\tuse the physical directory structure without following symbolic\n"
-"    \tlinks: resolve symbolic links in DIR before processing instances\n"
-"    \tof `..'\n"
-"        -e\tif the -P option is supplied, and the current working directory\n"
-"    \tcannot be determined successfully, exit with a non-zero status\n"
-"    \n"
-"    The default is to follow symbolic links, as if `-L' were specified.\n"
-"    `..' is processed by removing the immediately previous pathname "
-"component\n"
-"    back to a slash or the beginning of DIR.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns 0 if the directory is changed, and if $PWD is set successfully "
-"when\n"
-"    -P is used; non-zero otherwise."
-msgstr ""
-"Change the shell working directory.\n"
-"    \n"
-"    Change the current directory to DIR.  The default DIR is the value of "
-"the\n"
-"    HOME shell variable.\n"
-"    \n"
-"    The variable CDPATH defines the search path for the directory "
-"containing\n"
-"    DIR.  Alternative directory names in CDPATH are separated by a colon "
-"(:).\n"
-"    A null directory name is the same as the current directory.  If DIR "
-"begins\n"
-"    with a slash (/), then CDPATH is not used.\n"
-"    \n"
-"    If the directory is not found, and the shell option ‘cdable_vars’ is "
-"set,\n"
-"    the word is assumed to be  a variable name.  If that variable has a "
-"value,\n"
-"    its value is used for DIR.\n"
-"    \n"
-"    Options:\n"
-"        -L\tforce symbolic links to be followed\n"
-"        -P\tuse the physical directory structure without following symbolic\n"
-"    \tlinks\n"
-"        -e\tif the -P option is supplied, and the current working directory\n"
-"    \tcannot be determined successfully, exit with a non-zero status\n"
-"    \n"
-"    The default is to follow symbolic links, as if ‘-L’ were specified.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns 0 if the directory is changed, and if $PWD is set successfully "
-"when\n"
-"    -P is used; non-zero otherwise."
-
-#: builtins.c:420
-msgid ""
-"Print the name of the current working directory.\n"
-"    \n"
-"    Options:\n"
-"      -L\tprint the value of $PWD if it names the current working\n"
-"    \tdirectory\n"
-"      -P\tprint the physical directory, without any symbolic links\n"
-"    \n"
-"    By default, `pwd' behaves as if `-L' were specified.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns 0 unless an invalid option is given or the current directory\n"
-"    cannot be read."
-msgstr ""
-"Print the name of the current working directory.\n"
-"    \n"
-"    Options:\n"
-"      -L\tprint the value of $PWD if it names the current working\n"
-"    \tdirectory\n"
-"      -P\tprint the physical directory, without any symbolic links\n"
-"    \n"
-"    By default, ‘pwd’ behaves as if ‘-L’ were specified.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns 0 unless an invalid option is given or the current directory\n"
-"    cannot be read."
-
-#: builtins.c:437
-msgid ""
-"Null command.\n"
-"    \n"
-"    No effect; the command does nothing.\n"
-"    \n"
-"    Exit Status:\n"
-"    Always succeeds."
-msgstr ""
-"Null command.\n"
-"    \n"
-"    No effect; the command does nothing.\n"
-"    \n"
-"    Exit Status:\n"
-"    Always succeeds."
-
-#: builtins.c:448
-msgid ""
-"Return a successful result.\n"
-"    \n"
-"    Exit Status:\n"
-"    Always succeeds."
-msgstr ""
-"Return a successful result.\n"
-"    \n"
-"    Exit Status:\n"
-"    Always succeeds."
-
-#: builtins.c:457
-msgid ""
-"Return an unsuccessful result.\n"
-"    \n"
-"    Exit Status:\n"
-"    Always fails."
-msgstr ""
-"Return an unsuccessful result.\n"
-"    \n"
-"    Exit Status:\n"
-"    Always fails."
-
-#: builtins.c:466
-msgid ""
-"Execute a simple command or display information about commands.\n"
-"    \n"
-"    Runs COMMAND with ARGS suppressing  shell function lookup, or display\n"
-"    information about the specified COMMANDs.  Can be used to invoke "
-"commands\n"
-"    on disk when a function with the same name exists.\n"
-"    \n"
-"    Options:\n"
-"      -p\tuse a default value for PATH that is guaranteed to find all of\n"
-"    \tthe standard utilities\n"
-"      -v\tprint a description of COMMAND similar to the `type' builtin\n"
-"      -V\tprint a more verbose description of each COMMAND\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns exit status of COMMAND, or failure if COMMAND is not found."
-msgstr ""
-"Execute a simple command or display information about commands.\n"
-"    \n"
-"    Runs COMMAND with ARGS suppressing  shell function lookup, or display\n"
-"    information about the specified COMMANDs.  Can be used to invoke "
-"commands\n"
-"    on disk when a function with the same name exists.\n"
-"    \n"
-"    Options:\n"
-"      -p\tuse a default value for PATH that is guaranteed to find all of\n"
-"    \tthe standard utilities\n"
-"      -v\tprint a description of COMMAND similar to the ‘type’ builtin\n"
-"      -V\tprint a more verbose description of each COMMAND\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns exit status of COMMAND, or failure if COMMAND is not found."
-
-#: builtins.c:485
-msgid ""
-"Set variable values and attributes.\n"
-"    \n"
-"    Declare variables and give them attributes.  If no NAMEs are given,\n"
-"    display the attributes and values of all variables.\n"
-"    \n"
-"    Options:\n"
-"      -f\trestrict action or display to function names and definitions\n"
-"      -F\trestrict display to function names only (plus line number and\n"
-"    \tsource file when debugging)\n"
-"      -g\tcreate global variables when used in a shell function; otherwise\n"
-"    \tignored\n"
-"      -p\tdisplay the attributes and value of each NAME\n"
-"    \n"
-"    Options which set attributes:\n"
-"      -a\tto make NAMEs indexed arrays (if supported)\n"
-"      -A\tto make NAMEs associative arrays (if supported)\n"
-"      -i\tto make NAMEs have the `integer' attribute\n"
-"      -l\tto convert NAMEs to lower case on assignment\n"
-"      -r\tto make NAMEs readonly\n"
-"      -t\tto make NAMEs have the `trace' attribute\n"
-"      -u\tto convert NAMEs to upper case on assignment\n"
-"      -x\tto make NAMEs export\n"
-"    \n"
-"    Using `+' instead of `-' turns off the given attribute.\n"
-"    \n"
-"    Variables with the integer attribute have arithmetic evaluation (see\n"
-"    the `let' command) performed when the variable is assigned a value.\n"
-"    \n"
-"    When used in a function, `declare' makes NAMEs local, as with the "
-"`local'\n"
-"    command.  The `-g' option suppresses this behavior.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless an invalid option is supplied or an error occurs."
-msgstr ""
-"Set variable values and attributes.\n"
-"    \n"
-"    Declare variables and give them attributes.  If no NAMEs are given,\n"
-"    display the attributes and values of all variables.\n"
-"    \n"
-"    Options:\n"
-"      -f\trestrict action or display to function names and definitions\n"
-"      -F\trestrict display to function names only (plus line number and\n"
-"    \tsource file when debugging)\n"
-"      -g\tcreate global variables when used in a shell function; otherwise\n"
-"    \tignored\n"
-"      -p\tdisplay the attributes and value of each NAME\n"
-"    \n"
-"    Options which set attributes:\n"
-"      -a\tto make NAMEs indexed arrays (if supported)\n"
-"      -A\tto make NAMEs associative arrays (if supported)\n"
-"      -i\tto make NAMEs have the ‘integer’ attribute\n"
-"      -l\tto convert NAMEs to lower case on assignment\n"
-"      -r\tto make NAMEs readonly\n"
-"      -t\tto make NAMEs have the ‘trace’ attribute\n"
-"      -u\tto convert NAMEs to upper case on assignment\n"
-"      -x\tto make NAMEs export\n"
-"    \n"
-"    Using ‘+’ instead of ‘-’ turns off the given attribute.\n"
-"    \n"
-"    Variables with the integer attribute have arithmetic evaluation (see\n"
-"    the ‘let’ command) performed when the variable is assigned a value.\n"
-"    \n"
-"    When used in a function, ‘declare’ makes NAMEs local, as with the "
-"‘local’\n"
-"    command.  The ‘-g’ option suppresses this behavior.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless an invalid option is supplied or an error occurs."
-
-#: builtins.c:523
-msgid ""
-"Set variable values and attributes.\n"
-"    \n"
-"    Obsolete.  See `help declare'."
-msgstr ""
-"Set variable values and attributes.\n"
-"    \n"
-"    Obsolete.  See ‘help declare’."
-
-#: builtins.c:531
-msgid ""
-"Define local variables.\n"
-"    \n"
-"    Create a local variable called NAME, and give it VALUE.  OPTION can\n"
-"    be any option accepted by `declare'.\n"
-"    \n"
-"    Local variables can only be used within a function; they are visible\n"
-"    only to the function where they are defined and its children.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless an invalid option is supplied, an error occurs,\n"
-"    or the shell is not executing a function."
-msgstr ""
-"Define local variables.\n"
-"    \n"
-"    Create a local variable called NAME, and give it VALUE.  OPTION can\n"
-"    be any option accepted by ‘declare’.\n"
-"    \n"
-"    Local variables can only be used within a function; they are visible\n"
-"    only to the function where they are defined and its children.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless an invalid option is supplied, an error occurs,\n"
-"    or the shell is not executing a function."
-
-#: builtins.c:548
-#, fuzzy
-msgid ""
-"Write arguments to the standard output.\n"
-"    \n"
-"    Display the ARGs, separated by a single space character and followed by "
-"a\n"
-"    newline, on the standard output.\n"
-"    \n"
-"    Options:\n"
-"      -n\tdo not append a newline\n"
-"      -e\tenable interpretation of the following backslash escapes\n"
-"      -E\texplicitly suppress interpretation of backslash escapes\n"
-"    \n"
-"    `echo' interprets the following backslash-escaped characters:\n"
-"      \\a\talert (bell)\n"
-"      \\b\tbackspace\n"
-"      \\c\tsuppress further output\n"
-"      \\e\tescape character\n"
-"      \\E\tescape character\n"
-"      \\f\tform feed\n"
-"      \\n\tnew line\n"
-"      \\r\tcarriage return\n"
-"      \\t\thorizontal tab\n"
-"      \\v\tvertical tab\n"
-"      \\\\\tbackslash\n"
-"      \\0nnn\tthe character whose ASCII code is NNN (octal).  NNN can be\n"
-"    \t0 to 3 octal digits\n"
-"      \\xHH\tthe eight-bit character whose value is HH (hexadecimal).  HH\n"
-"    \tcan be one or two hex digits\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless a write error occurs."
-msgstr ""
-"Write arguments to the standard output.\n"
-"    \n"
-"    Display the ARGs on the standard output followed by a newline.\n"
-"    \n"
-"    Options:\n"
-"      -n\tdo not append a newline\n"
-"      -e\tenable interpretation of the following backslash escapes\n"
-"      -E\texplicitly suppress interpretation of backslash escapes\n"
-"    \n"
-"    ‘echo’ interprets the following backslash-escaped characters:\n"
-"      \\a\talert (bell)\n"
-"      \\b\tbackspace\n"
-"      \\c\tsuppress further output\n"
-"      \\e\tescape character\n"
-"      \\f\tform feed\n"
-"      \\n\tnew line\n"
-"      \\r\tcarriage return\n"
-"      \\t\thorizontal tab\n"
-"      \\v\tvertical tab\n"
-"      \\\\\tbackslash\n"
-"      \\0nnn\tthe character whose ASCII code is NNN (octal).  NNN can be\n"
-"    \t0 to 3 octal digits\n"
-"      \\xHH\tthe eight-bit character whose value is HH (hexadecimal).  HH\n"
-"    \tcan be one or two hex digits\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless a write error occurs."
-
-#: builtins.c:584
-msgid ""
-"Write arguments to the standard output.\n"
-"    \n"
-"    Display the ARGs on the standard output followed by a newline.\n"
-"    \n"
-"    Options:\n"
-"      -n\tdo not append a newline\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless a write error occurs."
-msgstr ""
-"Write arguments to the standard output.\n"
-"    \n"
-"    Display the ARGs on the standard output followed by a newline.\n"
-"    \n"
-"    Options:\n"
-"      -n\tdo not append a newline\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless a write error occurs."
-
-#: builtins.c:599
-msgid ""
-"Enable and disable shell builtins.\n"
-"    \n"
-"    Enables and disables builtin shell commands.  Disabling allows you to\n"
-"    execute a disk command which has the same name as a shell builtin\n"
-"    without using a full pathname.\n"
-"    \n"
-"    Options:\n"
-"      -a\tprint a list of builtins showing whether or not each is enabled\n"
-"      -n\tdisable each NAME or display a list of disabled builtins\n"
-"      -p\tprint the list of builtins in a reusable format\n"
-"      -s\tprint only the names of Posix `special' builtins\n"
-"    \n"
-"    Options controlling dynamic loading:\n"
-"      -f\tLoad builtin NAME from shared object FILENAME\n"
-"      -d\tRemove a builtin loaded with -f\n"
-"    \n"
-"    Without options, each NAME is enabled.\n"
-"    \n"
-"    To use the `test' found in $PATH instead of the shell builtin\n"
-"    version, type `enable -n test'.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless NAME is not a shell builtin or an error occurs."
-msgstr ""
-"Enable and disable shell builtins.\n"
-"    \n"
-"    Enables and disables builtin shell commands.  Disabling allows you to\n"
-"    execute a disk command which has the same name as a shell builtin\n"
-"    without using a full pathname.\n"
-"    \n"
-"    Options:\n"
-"      -a\tprint a list of builtins showing whether or not each is enabled\n"
-"      -n\tdisable each NAME or display a list of disabled builtins\n"
-"      -p\tprint the list of builtins in a reusable format\n"
-"      -s\tprint only the names of Posix ‘special’ builtins\n"
-"    \n"
-"    Options controlling dynamic loading:\n"
-"      -f\tLoad builtin NAME from shared object FILENAME\n"
-"      -d\tRemove a builtin loaded with -f\n"
-"    \n"
-"    Without options, each NAME is enabled.\n"
-"    \n"
-"    To use the ‘test’ found in $PATH instead of the shell builtin\n"
-"    version, type ‘enable -n test’.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless NAME is not a shell builtin or an error occurs."
-
-#: builtins.c:627
-msgid ""
-"Execute arguments as a shell command.\n"
-"    \n"
-"    Combine ARGs into a single string, use the result as input to the "
-"shell,\n"
-"    and execute the resulting commands.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns exit status of command or success if command is null."
-msgstr ""
-"Execute arguments as a shell command.\n"
-"    \n"
-"    Combine ARGs into a single string, use the result as input to the "
-"shell,\n"
-"    and execute the resulting commands.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns exit status of command or success if command is null."
-
-#: builtins.c:639
-msgid ""
-"Parse option arguments.\n"
-"    \n"
-"    Getopts is used by shell procedures to parse positional parameters\n"
-"    as options.\n"
-"    \n"
-"    OPTSTRING contains the option letters to be recognized; if a letter\n"
-"    is followed by a colon, the option is expected to have an argument,\n"
-"    which should be separated from it by white space.\n"
-"    \n"
-"    Each time it is invoked, getopts will place the next option in the\n"
-"    shell variable $name, initializing name if it does not exist, and\n"
-"    the index of the next argument to be processed into the shell\n"
-"    variable OPTIND.  OPTIND is initialized to 1 each time the shell or\n"
-"    a shell script is invoked.  When an option requires an argument,\n"
-"    getopts places that argument into the shell variable OPTARG.\n"
-"    \n"
-"    getopts reports errors in one of two ways.  If the first character\n"
-"    of OPTSTRING is a colon, getopts uses silent error reporting.  In\n"
-"    this mode, no error messages are printed.  If an invalid option is\n"
-"    seen, getopts places the option character found into OPTARG.  If a\n"
-"    required argument is not found, getopts places a ':' into NAME and\n"
-"    sets OPTARG to the option character found.  If getopts is not in\n"
-"    silent mode, and an invalid option is seen, getopts places '?' into\n"
-"    NAME and unsets OPTARG.  If a required argument is not found, a '?'\n"
-"    is placed in NAME, OPTARG is unset, and a diagnostic message is\n"
-"    printed.\n"
-"    \n"
-"    If the shell variable OPTERR has the value 0, getopts disables the\n"
-"    printing of error messages, even if the first character of\n"
-"    OPTSTRING is not a colon.  OPTERR has the value 1 by default.\n"
-"    \n"
-"    Getopts normally parses the positional parameters ($0 - $9), but if\n"
-"    more arguments are given, they are parsed instead.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success if an option is found; fails if the end of options is\n"
-"    encountered or an error occurs."
-msgstr ""
-"Parse option arguments.\n"
-"    \n"
-"    Getopts is used by shell procedures to parse positional parameters\n"
-"    as options.\n"
-"    \n"
-"    OPTSTRING contains the option letters to be recognized; if a letter\n"
-"    is followed by a colon, the option is expected to have an argument,\n"
-"    which should be separated from it by white space.\n"
-"    \n"
-"    Each time it is invoked, getopts will place the next option in the\n"
-"    shell variable $name, initializing name if it does not exist, and\n"
-"    the index of the next argument to be processed into the shell\n"
-"    variable OPTIND.  OPTIND is initialized to 1 each time the shell or\n"
-"    a shell script is invoked.  When an option requires an argument,\n"
-"    getopts places that argument into the shell variable OPTARG.\n"
-"    \n"
-"    getopts reports errors in one of two ways.  If the first character\n"
-"    of OPTSTRING is a colon, getopts uses silent error reporting.  In\n"
-"    this mode, no error messages are printed.  If an invalid option is\n"
-"    seen, getopts places the option character found into OPTARG.  If a\n"
-"    required argument is not found, getopts places a ‘:’ into NAME and\n"
-"    sets OPTARG to the option character found.  If getopts is not in\n"
-"    silent mode, and an invalid option is seen, getopts places ‘?’ into\n"
-"    NAME and unsets OPTARG.  If a required argument is not found, a ‘?’\n"
-"    is placed in NAME, OPTARG is unset, and a diagnostic message is\n"
-"    printed.\n"
-"    \n"
-"    If the shell variable OPTERR has the value 0, getopts disables the\n"
-"    printing of error messages, even if the first character of\n"
-"    OPTSTRING is not a colon.  OPTERR has the value 1 by default.\n"
-"    \n"
-"    Getopts normally parses the positional parameters ($0 - $9), but if\n"
-"    more arguments are given, they are parsed instead.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success if an option is found; fails if the end of options is\n"
-"    encountered or an error occurs."
-
-#: builtins.c:681
-msgid ""
-"Replace the shell with the given command.\n"
-"    \n"
-"    Execute COMMAND, replacing this shell with the specified program.\n"
-"    ARGUMENTS become the arguments to COMMAND.  If COMMAND is not "
-"specified,\n"
-"    any redirections take effect in the current shell.\n"
-"    \n"
-"    Options:\n"
-"      -a name\tpass NAME as the zeroth argument to COMMAND\n"
-"      -c\t\texecute COMMAND with an empty environment\n"
-"      -l\t\tplace a dash in the zeroth argument to COMMAND\n"
-"    \n"
-"    If the command cannot be executed, a non-interactive shell exits, "
-"unless\n"
-"    the shell option `execfail' is set.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless COMMAND is not found or a redirection error "
-"occurs."
-msgstr ""
-"Replace the shell with the given command.\n"
-"    \n"
-"    Execute COMMAND, replacing this shell with the specified program.\n"
-"    ARGUMENTS become the arguments to COMMAND.  If COMMAND is not "
-"specified,\n"
-"    any redirections take effect in the current shell.\n"
-"    \n"
-"    Options:\n"
-"      -a name\tpass NAME as the zeroth argument to COMMAND\n"
-"      -c\t\texecute COMMAND with an empty environment\n"
-"      -l\t\tplace a dash in the zeroth argument to COMMAND\n"
-"    \n"
-"    If the command cannot be executed, a non-interactive shell exits, "
-"unless\n"
-"    the shell option ‘execfail’ is set.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless COMMAND is not found or a redirection error "
-"occurs."
-
-#: builtins.c:702
-msgid ""
-"Exit the shell.\n"
-"    \n"
-"    Exits the shell with a status of N.  If N is omitted, the exit status\n"
-"    is that of the last command executed."
-msgstr ""
-"Exit the shell.\n"
-"    \n"
-"    Exits the shell with a status of N.  If N is omitted, the exit status\n"
-"    is that of the last command executed."
-
-#: builtins.c:711
-msgid ""
-"Exit a login shell.\n"
-"    \n"
-"    Exits a login shell with exit status N.  Returns an error if not "
-"executed\n"
-"    in a login shell."
-msgstr ""
-"Exit a login shell.\n"
-"    \n"
-"    Exits a login shell with exit status N.  Returns an error if not "
-"executed\n"
-"    in a login shell."
-
-#: builtins.c:721
-msgid ""
-"Display or execute commands from the history list.\n"
-"    \n"
-"    fc is used to list or edit and re-execute commands from the history "
-"list.\n"
-"    FIRST and LAST can be numbers specifying the range, or FIRST can be a\n"
-"    string, which means the most recent command beginning with that\n"
-"    string.\n"
-"    \n"
-"    Options:\n"
-"      -e ENAME\tselect which editor to use.  Default is FCEDIT, then "
-"EDITOR,\n"
-"    \t\tthen vi\n"
-"      -l \tlist lines instead of editing\n"
-"      -n\tomit line numbers when listing\n"
-"      -r\treverse the order of the lines (newest listed first)\n"
-"    \n"
-"    With the `fc -s [pat=rep ...] [command]' format, COMMAND is\n"
-"    re-executed after the substitution OLD=NEW is performed.\n"
-"    \n"
-"    A useful alias to use with this is r='fc -s', so that typing `r cc'\n"
-"    runs the last command beginning with `cc' and typing `r' re-executes\n"
-"    the last command.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success or status of executed command; non-zero if an error "
-"occurs."
-msgstr ""
-"Display or execute commands from the history list.\n"
-"    \n"
-"    fc is used to list or edit and re-execute commands from the history "
-"list.\n"
-"    FIRST and LAST can be numbers specifying the range, or FIRST can be a\n"
-"    string, which means the most recent command beginning with that\n"
-"    string.\n"
-"    \n"
-"    Options:\n"
-"      -e ENAME\tselect which editor to use.  Default is FCEDIT, then "
-"EDITOR,\n"
-"    \t\tthen vi\n"
-"      -l \tlist lines instead of editing\n"
-"      -n\tomit line numbers when listing\n"
-"      -r\treverse the order of the lines (newest listed first)\n"
-"    \n"
-"    With the ‘fc -s [pat=rep ...] [command]’ format, COMMAND is\n"
-"    re-executed after the substitution OLD=NEW is performed.\n"
-"    \n"
-"    A useful alias to use with this is r='fc -s', so that typing ‘r cc’\n"
-"    runs the last command beginning with ‘cc’ and typing ‘r’ re-executes\n"
-"    the last command.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success or status of executed command; non-zero if an error "
-"occurs."
-
-#: builtins.c:751
-msgid ""
-"Move job to the foreground.\n"
-"    \n"
-"    Place the job identified by JOB_SPEC in the foreground, making it the\n"
-"    current job.  If JOB_SPEC is not present, the shell's notion of the\n"
-"    current job is used.\n"
-"    \n"
-"    Exit Status:\n"
-"    Status of command placed in foreground, or failure if an error occurs."
-msgstr ""
-"Move job to the foreground.\n"
-"    \n"
-"    Place the job identified by JOB_SPEC in the foreground, making it the\n"
-"    current job.  If JOB_SPEC is not present, the shell's notion of the\n"
-"    current job is used.\n"
-"    \n"
-"    Exit Status:\n"
-"    Status of command placed in foreground, or failure if an error occurs."
-
-#: builtins.c:766
-msgid ""
-"Move jobs to the background.\n"
-"    \n"
-"    Place the jobs identified by each JOB_SPEC in the background, as if "
-"they\n"
-"    had been started with `&'.  If JOB_SPEC is not present, the shell's "
-"notion\n"
-"    of the current job is used.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless job control is not enabled or an error occurs."
-msgstr ""
-"Move jobs to the background.\n"
-"    \n"
-"    Place the jobs identified by each JOB_SPEC in the background, as if "
-"they\n"
-"    had been started with ‘&’.  If JOB_SPEC is not present, the shell's "
-"notion\n"
-"    of the current job is used.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless job control is not enabled or an error occurs."
-
-#: builtins.c:780
-msgid ""
-"Remember or display program locations.\n"
-"    \n"
-"    Determine and remember the full pathname of each command NAME.  If\n"
-"    no arguments are given, information about remembered commands is "
-"displayed.\n"
-"    \n"
-"    Options:\n"
-"      -d\t\tforget the remembered location of each NAME\n"
-"      -l\t\tdisplay in a format that may be reused as input\n"
-"      -p pathname\tuse PATHNAME is the full pathname of NAME\n"
-"      -r\t\tforget all remembered locations\n"
-"      -t\t\tprint the remembered location of each NAME, preceding\n"
-"    \t\teach location with the corresponding NAME if multiple\n"
-"    \t\tNAMEs are given\n"
-"    Arguments:\n"
-"      NAME\t\tEach NAME is searched for in $PATH and added to the list\n"
-"    \t\tof remembered commands.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless NAME is not found or an invalid option is given."
-msgstr ""
-"Remember or display program locations.\n"
-"    \n"
-"    Determine and remember the full pathname of each command NAME.  If\n"
-"    no arguments are given, information about remembered commands is "
-"displayed.\n"
-"    \n"
-"    Options:\n"
-"      -d\t\tforget the remembered location of each NAME\n"
-"      -l\t\tdisplay in a format that may be reused as input\n"
-"      -p pathname\tuse PATHNAME is the full pathname of NAME\n"
-"      -r\t\tforget all remembered locations\n"
-"      -t\t\tprint the remembered location of each NAME, preceding\n"
-"    \t\teach location with the corresponding NAME if multiple\n"
-"    \t\tNAMEs are given\n"
-"    Arguments:\n"
-"      NAME\t\tEach NAME is searched for in $PATH and added to the list\n"
-"    \t\tof remembered commands.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless NAME is not found or an invalid option is given."
-
-#: builtins.c:805
-msgid ""
-"Display information about builtin commands.\n"
-"    \n"
-"    Displays brief summaries of builtin commands.  If PATTERN is\n"
-"    specified, gives detailed help on all commands matching PATTERN,\n"
-"    otherwise the list of help topics is printed.\n"
-"    \n"
-"    Options:\n"
-"      -d\toutput short description for each topic\n"
-"      -m\tdisplay usage in pseudo-manpage format\n"
-"      -s\toutput only a short usage synopsis for each topic matching\n"
-"    \tPATTERN\n"
-"    \n"
-"    Arguments:\n"
-"      PATTERN\tPattern specifiying a help topic\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless PATTERN is not found or an invalid option is "
-"given."
-msgstr ""
-"Display information about builtin commands.\n"
-"    \n"
-"    Displays brief summaries of builtin commands.  If PATTERN is\n"
-"    specified, gives detailed help on all commands matching PATTERN,\n"
-"    otherwise the list of help topics is printed.\n"
-"    \n"
-"    Options:\n"
-"      -d\toutput short description for each topic\n"
-"      -m\tdisplay usage in pseudo-manpage format\n"
-"      -s\toutput only a short usage synopsis for each topic matching\n"
-"    \tPATTERN\n"
-"    \n"
-"    Arguments:\n"
-"      PATTERN\tPattern specifiying a help topic\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless PATTERN is not found or an invalid option is "
-"given."
-
-#: builtins.c:829
-msgid ""
-"Display or manipulate the history list.\n"
-"    \n"
-"    Display the history list with line numbers, prefixing each modified\n"
-"    entry with a `*'.  An argument of N lists only the last N entries.\n"
-"    \n"
-"    Options:\n"
-"      -c\tclear the history list by deleting all of the entries\n"
-"      -d offset\tdelete the history entry at offset OFFSET.\n"
-"    \n"
-"      -a\tappend history lines from this session to the history file\n"
-"      -n\tread all history lines not already read from the history file\n"
-"      -r\tread the history file and append the contents to the history\n"
-"    \tlist\n"
-"      -w\twrite the current history to the history file\n"
-"    \tand append them to the history list\n"
-"    \n"
-"      -p\tperform history expansion on each ARG and display the result\n"
-"    \twithout storing it in the history list\n"
-"      -s\tappend the ARGs to the history list as a single entry\n"
-"    \n"
-"    If FILENAME is given, it is used as the history file.  Otherwise,\n"
-"    if $HISTFILE has a value, that is used, else ~/.bash_history.\n"
-"    \n"
-"    If the $HISTTIMEFORMAT variable is set and not null, its value is used\n"
-"    as a format string for strftime(3) to print the time stamp associated\n"
-"    with each displayed history entry.  No time stamps are printed "
-"otherwise.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless an invalid option is given or an error occurs."
-msgstr ""
-"Display or manipulate the history list.\n"
-"    \n"
-"    Display the history list with line numbers, prefixing each modified\n"
-"    entry with a ‘*’.  An argument of N lists only the last N entries.\n"
-"    \n"
-"    Options:\n"
-"      -c\tclear the history list by deleting all of the entries\n"
-"      -d offset\tdelete the history entry at offset OFFSET.\n"
-"    \n"
-"      -a\tappend history lines from this session to the history file\n"
-"      -n\tread all history lines not already read from the history file\n"
-"      -r\tread the history file and append the contents to the history\n"
-"    \tlist\n"
-"      -w\twrite the current history to the history file\n"
-"    \tand append them to the history list\n"
-"    \n"
-"      -p\tperform history expansion on each ARG and display the result\n"
-"    \twithout storing it in the history list\n"
-"      -s\tappend the ARGs to the history list as a single entry\n"
-"    \n"
-"    If FILENAME is given, it is used as the history file.  Otherwise,\n"
-"    if $HISTFILE has a value, that is used, else ~/.bash_history.\n"
-"    \n"
-"    If the $HISTTIMEFORMAT variable is set and not null, its value is used\n"
-"    as a format string for strftime(3) to print the time stamp associated\n"
-"    with each displayed history entry.  No time stamps are printed "
-"otherwise.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless an invalid option is given or an error occurs."
-
-#: builtins.c:865
-msgid ""
-"Display status of jobs.\n"
-"    \n"
-"    Lists the active jobs.  JOBSPEC restricts output to that job.\n"
-"    Without options, the status of all active jobs is displayed.\n"
-"    \n"
-"    Options:\n"
-"      -l\tlists process IDs in addition to the normal information\n"
-"      -n\tlist only processes that have changed status since the last\n"
-"    \tnotification\n"
-"      -p\tlists process IDs only\n"
-"      -r\trestrict output to running jobs\n"
-"      -s\trestrict output to stopped jobs\n"
-"    \n"
-"    If -x is supplied, COMMAND is run after all job specifications that\n"
-"    appear in ARGS have been replaced with the process ID of that job's\n"
-"    process group leader.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless an invalid option is given or an error occurs.\n"
-"    If -x is used, returns the exit status of COMMAND."
-msgstr ""
-"Display status of jobs.\n"
-"    \n"
-"    Lists the active jobs.  JOBSPEC restricts output to that job.\n"
-"    Without options, the status of all active jobs is displayed.\n"
-"    \n"
-"    Options:\n"
-"      -l\tlists process IDs in addition to the normal information\n"
-"      -n\tlist only processes that have changed status since the last\n"
-"    \tnotification\n"
-"      -p\tlists process IDs only\n"
-"      -r\trestrict output to running jobs\n"
-"      -s\trestrict output to stopped jobs\n"
-"    \n"
-"    If -x is supplied, COMMAND is run after all job specifications that\n"
-"    appear in ARGS have been replaced with the process ID of that job's\n"
-"    process group leader.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless an invalid option is given or an error occurs.\n"
-"    If -x is used, returns the exit status of COMMAND."
-
-#: builtins.c:892
-msgid ""
-"Remove jobs from current shell.\n"
-"    \n"
-"    Removes each JOBSPEC argument from the table of active jobs.  Without\n"
-"    any JOBSPECs, the shell uses its notion of the current job.\n"
-"    \n"
-"    Options:\n"
-"      -a\tremove all jobs if JOBSPEC is not supplied\n"
-"      -h\tmark each JOBSPEC so that SIGHUP is not sent to the job if the\n"
-"    \tshell receives a SIGHUP\n"
-"      -r\tremove only running jobs\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless an invalid option or JOBSPEC is given."
-msgstr ""
-"Remove jobs from current shell.\n"
-"    \n"
-"    Removes each JOBSPEC argument from the table of active jobs.  Without\n"
-"    any JOBSPECs, the shell uses its notion of the current job.\n"
-"    \n"
-"    Options:\n"
-"      -a\tremove all jobs if JOBSPEC is not supplied\n"
-"      -h\tmark each JOBSPEC so that SIGHUP is not sent to the job if the\n"
-"    \tshell receives a SIGHUP\n"
-"      -r\tremove only running jobs\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless an invalid option or JOBSPEC is given."
-
-#: builtins.c:911
-msgid ""
-"Send a signal to a job.\n"
-"    \n"
-"    Send the processes identified by PID or JOBSPEC the signal named by\n"
-"    SIGSPEC or SIGNUM.  If neither SIGSPEC nor SIGNUM is present, then\n"
-"    SIGTERM is assumed.\n"
-"    \n"
-"    Options:\n"
-"      -s sig\tSIG is a signal name\n"
-"      -n sig\tSIG is a signal number\n"
-"      -l\tlist the signal names; if arguments follow `-l' they are\n"
-"    \tassumed to be signal numbers for which names should be listed\n"
-"    \n"
-"    Kill is a shell builtin for two reasons: it allows job IDs to be used\n"
-"    instead of process IDs, and allows processes to be killed if the limit\n"
-"    on processes that you can create is reached.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless an invalid option is given or an error occurs."
-msgstr ""
-"Send a signal to a job.\n"
-"    \n"
-"    Send the processes identified by PID or JOBSPEC the signal named by\n"
-"    SIGSPEC or SIGNUM.  If neither SIGSPEC nor SIGNUM is present, then\n"
-"    SIGTERM is assumed.\n"
-"    \n"
-"    Options:\n"
-"      -s sig\tSIG is a signal name\n"
-"      -n sig\tSIG is a signal number\n"
-"      -l\tlist the signal names; if arguments follow ‘-l’ they are\n"
-"    \tassumed to be signal numbers for which names should be listed\n"
-"    \n"
-"    Kill is a shell builtin for two reasons: it allows job IDs to be used\n"
-"    instead of process IDs, and allows processes to be killed if the limit\n"
-"    on processes that you can create is reached.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless an invalid option is given or an error occurs."
-
-#: builtins.c:934
-msgid ""
-"Evaluate arithmetic expressions.\n"
-"    \n"
-"    Evaluate each ARG as an arithmetic expression.  Evaluation is done in\n"
-"    fixed-width integers with no check for overflow, though division by 0\n"
-"    is trapped and flagged as an error.  The following list of operators is\n"
-"    grouped into levels of equal-precedence operators.  The levels are "
-"listed\n"
-"    in order of decreasing precedence.\n"
-"    \n"
-"    \tid++, id--\tvariable post-increment, post-decrement\n"
-"    \t++id, --id\tvariable pre-increment, pre-decrement\n"
-"    \t-, +\t\tunary minus, plus\n"
-"    \t!, ~\t\tlogical and bitwise negation\n"
-"    \t**\t\texponentiation\n"
-"    \t*, /, %\t\tmultiplication, division, remainder\n"
-"    \t+, -\t\taddition, subtraction\n"
-"    \t<<, >>\t\tleft and right bitwise shifts\n"
-"    \t<=, >=, <, >\tcomparison\n"
-"    \t==, !=\t\tequality, inequality\n"
-"    \t&\t\tbitwise AND\n"
-"    \t^\t\tbitwise XOR\n"
-"    \t|\t\tbitwise OR\n"
-"    \t&&\t\tlogical AND\n"
-"    \t||\t\tlogical OR\n"
-"    \texpr ? expr : expr\n"
-"    \t\t\tconditional operator\n"
-"    \t=, *=, /=, %=,\n"
-"    \t+=, -=, <<=, >>=,\n"
-"    \t&=, ^=, |=\tassignment\n"
-"    \n"
-"    Shell variables are allowed as operands.  The name of the variable\n"
-"    is replaced by its value (coerced to a fixed-width integer) within\n"
-"    an expression.  The variable need not have its integer attribute\n"
-"    turned on to be used in an expression.\n"
-"    \n"
-"    Operators are evaluated in order of precedence.  Sub-expressions in\n"
-"    parentheses are evaluated first and may override the precedence\n"
-"    rules above.\n"
-"    \n"
-"    Exit Status:\n"
-"    If the last ARG evaluates to 0, let returns 1; let returns 0 otherwise."
-msgstr ""
-"Evaluate arithmetic expressions.\n"
-"    \n"
-"    Evaluate each ARG as an arithmetic expression.  Evaluation is done in\n"
-"    fixed-width integers with no check for overflow, though division by 0\n"
-"    is trapped and flagged as an error.  The following list of operators is\n"
-"    grouped into levels of equal-precedence operators.  The levels are "
-"listed\n"
-"    in order of decreasing precedence.\n"
-"    \n"
-"    \tid++, id--\tvariable post-increment, post-decrement\n"
-"    \t++id, --id\tvariable pre-increment, pre-decrement\n"
-"    \t-, +\t\tunary minus, plus\n"
-"    \t!, ~\t\tlogical and bitwise negation\n"
-"    \t**\t\texponentiation\n"
-"    \t*, /, %\t\tmultiplication, division, remainder\n"
-"    \t+, -\t\taddition, subtraction\n"
-"    \t<<, >>\t\tleft and right bitwise shifts\n"
-"    \t<=, >=, <, >\tcomparison\n"
-"    \t==, !=\t\tequality, inequality\n"
-"    \t&\t\tbitwise AND\n"
-"    \t^\t\tbitwise XOR\n"
-"    \t|\t\tbitwise OR\n"
-"    \t&&\t\tlogical AND\n"
-"    \t||\t\tlogical OR\n"
-"    \texpr ? expr : expr\n"
-"    \t\t\tconditional operator\n"
-"    \t=, *=, /=, %=,\n"
-"    \t+=, -=, <<=, >>=,\n"
-"    \t&=, ^=, |=\tassignment\n"
-"    \n"
-"    Shell variables are allowed as operands.  The name of the variable\n"
-"    is replaced by its value (coerced to a fixed-width integer) within\n"
-"    an expression.  The variable need not have its integer attribute\n"
-"    turned on to be used in an expression.\n"
-"    \n"
-"    Operators are evaluated in order of precedence.  Sub-expressions in\n"
-"    parentheses are evaluated first and may override the precedence\n"
-"    rules above.\n"
-"    \n"
-"    Exit Status:\n"
-"    If the last ARG evaluates to 0, let returns 1; let returns 0 otherwise."
-
-#: builtins.c:979
-#, fuzzy
-msgid ""
-"Read a line from the standard input and split it into fields.\n"
-"    \n"
-"    Reads a single line from the standard input, or from file descriptor FD\n"
-"    if the -u option is supplied.  The line is split into fields as with "
-"word\n"
-"    splitting, and the first word is assigned to the first NAME, the second\n"
-"    word to the second NAME, and so on, with any leftover words assigned to\n"
-"    the last NAME.  Only the characters found in $IFS are recognized as "
-"word\n"
-"    delimiters.\n"
-"    \n"
-"    If no NAMEs are supplied, the line read is stored in the REPLY "
-"variable.\n"
-"    \n"
-"    Options:\n"
-"      -a array\tassign the words read to sequential indices of the array\n"
-"    \t\tvariable ARRAY, starting at zero\n"
-"      -d delim\tcontinue until the first character of DELIM is read, rather\n"
-"    \t\tthan newline\n"
-"      -e\t\tuse Readline to obtain the line in an interactive shell\n"
-"      -i text\tUse TEXT as the initial text for Readline\n"
-"      -n nchars\treturn after reading NCHARS characters rather than waiting\n"
-"    \t\tfor a newline, but honor a delimiter if fewer than NCHARS\n"
-"    \t\tcharacters are read before the delimiter\n"
-"      -N nchars\treturn only after reading exactly NCHARS characters, "
-"unless\n"
-"    \t\tEOF is encountered or read times out, ignoring any delimiter\n"
-"      -p prompt\toutput the string PROMPT without a trailing newline before\n"
-"    \t\tattempting to read\n"
-"      -r\t\tdo not allow backslashes to escape any characters\n"
-"      -s\t\tdo not echo input coming from a terminal\n"
-"      -t timeout\ttime out and return failure if a complete line of input "
-"is\n"
-"    \t\tnot read withint TIMEOUT seconds.  The value of the TMOUT\n"
-"    \t\tvariable is the default timeout.  TIMEOUT may be a\n"
-"    \t\tfractional number.  If TIMEOUT is 0, read returns immediately,\n"
-"    \t\twithout trying to read any data, returning success only if\n"
-"    \t\tinput is available on the specified file descriptor.  The\n"
-"    \t\texit status is greater than 128 if the timeout is exceeded\n"
-"      -u fd\t\tread from file descriptor FD instead of the standard input\n"
-"    \n"
-"    Exit Status:\n"
-"    The return code is zero, unless end-of-file is encountered, read times "
-"out\n"
-"    (in which case it's greater than 128), a variable assignment error "
-"occurs,\n"
-"    or an invalid file descriptor is supplied as the argument to -u."
-msgstr ""
-"Read a line from the standard input and split it into fields.\n"
-"    \n"
-"    Reads a single line from the standard input, or from file descriptor FD\n"
-"    if the -u option is supplied.  The line is split into fields as with "
-"word\n"
-"    splitting, and the first word is assigned to the first NAME, the second\n"
-"    word to the second NAME, and so on, with any leftover words assigned to\n"
-"    the last NAME.  Only the characters found in $IFS are recognized as "
-"word\n"
-"    delimiters.\n"
-"    \n"
-"    If no NAMEs are supplied, the line read is stored in the REPLY "
-"variable.\n"
-"    \n"
-"    Options:\n"
-"      -a array\tassign the words read to sequential indices of the array\n"
-"    \t\tvariable ARRAY, starting at zero\n"
-"      -d delim\tcontinue until the first character of DELIM is read, rather\n"
-"    \t\tthan newline\n"
-"      -e\t\tuse Readline to obtain the line in an interactive shell\n"
-"      -i text\tUse TEXT as the initial text for Readline\n"
-"      -n nchars\treturn after reading NCHARS characters rather than waiting\n"
-"    \t\tfor a newline, but honor a delimiter if fewer than NCHARS\n"
-"    \t\tcharacters are read before the delimiter\n"
-"      -N nchars\treturn only after reading exactly NCHARS characters, "
-"unless\n"
-"    \t\tEOF is encountered or read times out, ignoring any delimiter\n"
-"      -p prompt\toutput the string PROMPT without a trailing newline before\n"
-"    \t\tattempting to read\n"
-"      -r\t\tdo not allow backslashes to escape any characters\n"
-"      -s\t\tdo not echo input coming from a terminal\n"
-"      -t timeout\ttime out and return failure if a complete line of input "
-"is\n"
-"    \t\tnot read withint TIMEOUT seconds.  The value of the TMOUT\n"
-"    \t\tvariable is the default timeout.  TIMEOUT may be a\n"
-"    \t\tfractional number.  If TIMEOUT is 0, read returns success only\n"
-"    \t\tif input is available on the specified file descriptor.  The\n"
-"    \t\texit status is greater than 128 if the timeout is exceeded\n"
-"      -u fd\t\tread from file descriptor FD instead of the standard input\n"
-"    \n"
-"    Exit Status:\n"
-"    The return code is zero, unless end-of-file is encountered, read times "
-"out,\n"
-"    or an invalid file descriptor is supplied as the argument to -u."
-
-#: builtins.c:1024
-msgid ""
-"Return from a shell function.\n"
-"    \n"
-"    Causes a function or sourced script to exit with the return value\n"
-"    specified by N.  If N is omitted, the return status is that of the\n"
-"    last command executed within the function or script.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns N, or failure if the shell is not executing a function or script."
-msgstr ""
-"Return from a shell function.\n"
-"    \n"
-"    Causes a function or sourced script to exit with the return value\n"
-"    specified by N.  If N is omitted, the return status is that of the\n"
-"    last command executed within the function or script.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns N, or failure if the shell is not executing a function or script."
-
-#: builtins.c:1037
-#, fuzzy
-msgid ""
-"Set or unset values of shell options and positional parameters.\n"
-"    \n"
-"    Change the value of shell attributes and positional parameters, or\n"
-"    display the names and values of shell variables.\n"
-"    \n"
-"    Options:\n"
-"      -a  Mark variables which are modified or created for export.\n"
-"      -b  Notify of job termination immediately.\n"
-"      -e  Exit immediately if a command exits with a non-zero status.\n"
-"      -f  Disable file name generation (globbing).\n"
-"      -h  Remember the location of commands as they are looked up.\n"
-"      -k  All assignment arguments are placed in the environment for a\n"
-"          command, not just those that precede the command name.\n"
-"      -m  Job control is enabled.\n"
-"      -n  Read commands but do not execute them.\n"
-"      -o option-name\n"
-"          Set the variable corresponding to option-name:\n"
-"              allexport    same as -a\n"
-"              braceexpand  same as -B\n"
-"              emacs        use an emacs-style line editing interface\n"
-"              errexit      same as -e\n"
-"              errtrace     same as -E\n"
-"              functrace    same as -T\n"
-"              hashall      same as -h\n"
-"              histexpand   same as -H\n"
-"              history      enable command history\n"
-"              ignoreeof    the shell will not exit upon reading EOF\n"
-"              interactive-comments\n"
-"                           allow comments to appear in interactive commands\n"
-"              keyword      same as -k\n"
-"              monitor      same as -m\n"
-"              noclobber    same as -C\n"
-"              noexec       same as -n\n"
-"              noglob       same as -f\n"
-"              nolog        currently accepted but ignored\n"
-"              notify       same as -b\n"
-"              nounset      same as -u\n"
-"              onecmd       same as -t\n"
-"              physical     same as -P\n"
-"              pipefail     the return value of a pipeline is the status of\n"
-"                           the last command to exit with a non-zero status,\n"
-"                           or zero if no command exited with a non-zero "
-"status\n"
-"              posix        change the behavior of bash where the default\n"
-"                           operation differs from the Posix standard to\n"
-"                           match the standard\n"
-"              privileged   same as -p\n"
-"              verbose      same as -v\n"
-"              vi           use a vi-style line editing interface\n"
-"              xtrace       same as -x\n"
-"      -p  Turned on whenever the real and effective user ids do not match.\n"
-"          Disables processing of the $ENV file and importing of shell\n"
-"          functions.  Turning this option off causes the effective uid and\n"
-"          gid to be set to the real uid and gid.\n"
-"      -t  Exit after reading and executing one command.\n"
-"      -u  Treat unset variables as an error when substituting.\n"
-"      -v  Print shell input lines as they are read.\n"
-"      -x  Print commands and their arguments as they are executed.\n"
-"      -B  the shell will perform brace expansion\n"
-"      -C  If set, disallow existing regular files to be overwritten\n"
-"          by redirection of output.\n"
-"      -E  If set, the ERR trap is inherited by shell functions.\n"
-"      -H  Enable ! style history substitution.  This flag is on\n"
-"          by default when the shell is interactive.\n"
-"      -P  If set, do not resolve symbolic links when executing commands\n"
-"          such as cd which change the current directory.\n"
-"      -T  If set, the DEBUG trap is inherited by shell functions.\n"
-"      --  Assign any remaining arguments to the positional parameters.\n"
-"          If there are no remaining arguments, the positional parameters\n"
-"          are unset.\n"
-"      -   Assign any remaining arguments to the positional parameters.\n"
-"          The -x and -v options are turned off.\n"
-"    \n"
-"    Using + rather than - causes these flags to be turned off.  The\n"
-"    flags can also be used upon invocation of the shell.  The current\n"
-"    set of flags may be found in $-.  The remaining n ARGs are positional\n"
-"    parameters and are assigned, in order, to $1, $2, .. $n.  If no\n"
-"    ARGs are given, all shell variables are printed.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless an invalid option is given."
-msgstr ""
-"Set or unset values of shell options and positional parameters.\n"
-"    \n"
-"    Change the value of shell attributes and positional parameters, or\n"
-"    display the names and values of shell variables.\n"
-"    \n"
-"    Options:\n"
-"      -a  Mark variables which are modified or created for export.\n"
-"      -b  Notify of job termination immediately.\n"
-"      -e  Exit immediately if a command exits with a non-zero status.\n"
-"      -f  Disable file name generation (globbing).\n"
-"      -h  Remember the location of commands as they are looked up.\n"
-"      -k  All assignment arguments are placed in the environment for a\n"
-"          command, not just those that precede the command name.\n"
-"      -m  Job control is enabled.\n"
-"      -n  Read commands but do not execute them.\n"
-"      -o option-name\n"
-"          Set the variable corresponding to option-name:\n"
-"              allexport    same as -a\n"
-"              braceexpand  same as -B\n"
-"              emacs        use an emacs-style line editing interface\n"
-"              errexit      same as -e\n"
-"              errtrace     same as -E\n"
-"              functrace    same as -T\n"
-"              hashall      same as -h\n"
-"              histexpand   same as -H\n"
-"              history      enable command history\n"
-"              ignoreeof    the shell will not exit upon reading EOF\n"
-"              interactive-comments\n"
-"                           allow comments to appear in interactive commands\n"
-"              keyword      same as -k\n"
-"              monitor      same as -m\n"
-"              noclobber    same as -C\n"
-"              noexec       same as -n\n"
-"              noglob       same as -f\n"
-"              nolog        currently accepted but ignored\n"
-"              notify       same as -b\n"
-"              nounset      same as -u\n"
-"              onecmd       same as -t\n"
-"              physical     same as -P\n"
-"              pipefail     the return value of a pipeline is the status of\n"
-"                           the last command to exit with a non-zero status,\n"
-"                           or zero if no command exited with a non-zero "
-"status\n"
-"              posix        change the behavior of bash where the default\n"
-"                           operation differs from the Posix standard to\n"
-"                           match the standard\n"
-"              privileged   same as -p\n"
-"              verbose      same as -v\n"
-"              vi           use a vi-style line editing interface\n"
-"              xtrace       same as -x\n"
-"      -p  Turned on whenever the real and effective user ids do not match.\n"
-"          Disables processing of the $ENV file and importing of shell\n"
-"          functions.  Turning this option off causes the effective uid and\n"
-"          gid to be set to the real uid and gid.\n"
-"      -t  Exit after reading and executing one command.\n"
-"      -u  Treat unset variables as an error when substituting.\n"
-"      -v  Print shell input lines as they are read.\n"
-"      -x  Print commands and their arguments as they are executed.\n"
-"      -B  the shell will perform brace expansion\n"
-"      -C  If set, disallow existing regular files to be overwritten\n"
-"          by redirection of output.\n"
-"      -E  If set, the ERR trap is inherited by shell functions.\n"
-"      -H  Enable ! style history substitution.  This flag is on\n"
-"          by default when the shell is interactive.\n"
-"      -P  If set, do not follow symbolic links when executing commands\n"
-"          such as cd which change the current directory.\n"
-"      -T  If set, the DEBUG trap is inherited by shell functions.\n"
-"      --  Assign any remaining arguments to the positional parameters.\n"
-"          If there are no remaining arguments, the positional parameters\n"
-"          are unset.\n"
-"      -   Assign any remaining arguments to the positional parameters.\n"
-"          The -x and -v options are turned off.\n"
-"    \n"
-"    Using + rather than - causes these flags to be turned off.  The\n"
-"    flags can also be used upon invocation of the shell.  The current\n"
-"    set of flags may be found in $-.  The remaining n ARGs are positional\n"
-"    parameters and are assigned, in order, to $1, $2, .. $n.  If no\n"
-"    ARGs are given, all shell variables are printed.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless an invalid option is given."
-
-#: builtins.c:1122
-msgid ""
-"Unset values and attributes of shell variables and functions.\n"
-"    \n"
-"    For each NAME, remove the corresponding variable or function.\n"
-"    \n"
-"    Options:\n"
-"      -f\ttreat each NAME as a shell function\n"
-"      -v\ttreat each NAME as a shell variable\n"
-"    \n"
-"    Without options, unset first tries to unset a variable, and if that "
-"fails,\n"
-"    tries to unset a function.\n"
-"    \n"
-"    Some variables cannot be unset; also see `readonly'.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless an invalid option is given or a NAME is read-only."
-msgstr ""
-"Unset values and attributes of shell variables and functions.\n"
-"    \n"
-"    For each NAME, remove the corresponding variable or function.\n"
-"    \n"
-"    Options:\n"
-"      -f\ttreat each NAME as a shell function\n"
-"      -v\ttreat each NAME as a shell variable\n"
-"    \n"
-"    Without options, unset first tries to unset a variable, and if that "
-"fails,\n"
-"    tries to unset a function.\n"
-"    \n"
-"    Some variables cannot be unset; also see ‘readonly’.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless an invalid option is given or a NAME is read-only."
-
-#: builtins.c:1142
-msgid ""
-"Set export attribute for shell variables.\n"
-"    \n"
-"    Marks each NAME for automatic export to the environment of subsequently\n"
-"    executed commands.  If VALUE is supplied, assign VALUE before "
-"exporting.\n"
-"    \n"
-"    Options:\n"
-"      -f\trefer to shell functions\n"
-"      -n\tremove the export property from each NAME\n"
-"      -p\tdisplay a list of all exported variables and functions\n"
-"    \n"
-"    An argument of `--' disables further option processing.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless an invalid option is given or NAME is invalid."
-msgstr ""
-"Set export attribute for shell variables.\n"
-"    \n"
-"    Marks each NAME for automatic export to the environment of subsequently\n"
-"    executed commands.  If VALUE is supplied, assign VALUE before "
-"exporting.\n"
-"    \n"
-"    Options:\n"
-"      -f\trefer to shell functions\n"
-"      -n\tremove the export property from each NAME\n"
-"      -p\tdisplay a list of all exported variables and functions\n"
-"    \n"
-"    An argument of ‘--’ disables further option processing.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless an invalid option is given or NAME is invalid."
-
-#: builtins.c:1161
-msgid ""
-"Mark shell variables as unchangeable.\n"
-"    \n"
-"    Mark each NAME as read-only; the values of these NAMEs may not be\n"
-"    changed by subsequent assignment.  If VALUE is supplied, assign VALUE\n"
-"    before marking as read-only.\n"
-"    \n"
-"    Options:\n"
-"      -a\trefer to indexed array variables\n"
-"      -A\trefer to associative array variables\n"
-"      -f\trefer to shell functions\n"
-"      -p\tdisplay a list of all readonly variables and functions\n"
-"    \n"
-"    An argument of `--' disables further option processing.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless an invalid option is given or NAME is invalid."
-msgstr ""
-"Mark shell variables as unchangeable.\n"
-"    \n"
-"    Mark each NAME as read-only; the values of these NAMEs may not be\n"
-"    changed by subsequent assignment.  If VALUE is supplied, assign VALUE\n"
-"    before marking as read-only.\n"
-"    \n"
-"    Options:\n"
-"      -a\trefer to indexed array variables\n"
-"      -A\trefer to associative array variables\n"
-"      -f\trefer to shell functions\n"
-"      -p\tdisplay a list of all readonly variables and functions\n"
-"    \n"
-"    An argument of ‘--’ disables further option processing.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless an invalid option is given or NAME is invalid."
-
-#: builtins.c:1182
-msgid ""
-"Shift positional parameters.\n"
-"    \n"
-"    Rename the positional parameters $N+1,$N+2 ... to $1,$2 ...  If N is\n"
-"    not given, it is assumed to be 1.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless N is negative or greater than $#."
-msgstr ""
-"Shift positional parameters.\n"
-"    \n"
-"    Rename the positional parameters $N+1,$N+2 ... to $1,$2 ...  If N is\n"
-"    not given, it is assumed to be 1.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless N is negative or greater than $#."
-
-#: builtins.c:1194 builtins.c:1209
-msgid ""
-"Execute commands from a file in the current shell.\n"
-"    \n"
-"    Read and execute commands from FILENAME in the current shell.  The\n"
-"    entries in $PATH are used to find the directory containing FILENAME.\n"
-"    If any ARGUMENTS are supplied, they become the positional parameters\n"
-"    when FILENAME is executed.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns the status of the last command executed in FILENAME; fails if\n"
-"    FILENAME cannot be read."
-msgstr ""
-"Execute commands from a file in the current shell.\n"
-"    \n"
-"    Read and execute commands from FILENAME in the current shell.  The\n"
-"    entries in $PATH are used to find the directory containing FILENAME.\n"
-"    If any ARGUMENTS are supplied, they become the positional parameters\n"
-"    when FILENAME is executed.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns the status of the last command executed in FILENAME; fails if\n"
-"    FILENAME cannot be read."
-
-#: builtins.c:1225
-msgid ""
-"Suspend shell execution.\n"
-"    \n"
-"    Suspend the execution of this shell until it receives a SIGCONT signal.\n"
-"    Unless forced, login shells cannot be suspended.\n"
-"    \n"
-"    Options:\n"
-"      -f\tforce the suspend, even if the shell is a login shell\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless job control is not enabled or an error occurs."
-msgstr ""
-"Suspend shell execution.\n"
-"    \n"
-"    Suspend the execution of this shell until it receives a SIGCONT signal.\n"
-"    Unless forced, login shells cannot be suspended.\n"
-"    \n"
-"    Options:\n"
-"      -f\tforce the suspend, even if the shell is a login shell\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless job control is not enabled or an error occurs."
-
-#: builtins.c:1241
-msgid ""
-"Evaluate conditional expression.\n"
-"    \n"
-"    Exits with a status of 0 (true) or 1 (false) depending on\n"
-"    the evaluation of EXPR.  Expressions may be unary or binary.  Unary\n"
-"    expressions are often used to examine the status of a file.  There\n"
-"    are string operators and numeric comparison operators as well.\n"
-"    \n"
-"    The behavior of test depends on the number of arguments.  Read the\n"
-"    bash manual page for the complete specification.\n"
-"    \n"
-"    File operators:\n"
-"    \n"
-"      -a FILE        True if file exists.\n"
-"      -b FILE        True if file is block special.\n"
-"      -c FILE        True if file is character special.\n"
-"      -d FILE        True if file is a directory.\n"
-"      -e FILE        True if file exists.\n"
-"      -f FILE        True if file exists and is a regular file.\n"
-"      -g FILE        True if file is set-group-id.\n"
-"      -h FILE        True if file is a symbolic link.\n"
-"      -L FILE        True if file is a symbolic link.\n"
-"      -k FILE        True if file has its `sticky' bit set.\n"
-"      -p FILE        True if file is a named pipe.\n"
-"      -r FILE        True if file is readable by you.\n"
-"      -s FILE        True if file exists and is not empty.\n"
-"      -S FILE        True if file is a socket.\n"
-"      -t FD          True if FD is opened on a terminal.\n"
-"      -u FILE        True if the file is set-user-id.\n"
-"      -w FILE        True if the file is writable by you.\n"
-"      -x FILE        True if the file is executable by you.\n"
-"      -O FILE        True if the file is effectively owned by you.\n"
-"      -G FILE        True if the file is effectively owned by your group.\n"
-"      -N FILE        True if the file has been modified since it was last "
-"read.\n"
-"    \n"
-"      FILE1 -nt FILE2  True if file1 is newer than file2 (according to\n"
-"                       modification date).\n"
-"    \n"
-"      FILE1 -ot FILE2  True if file1 is older than file2.\n"
-"    \n"
-"      FILE1 -ef FILE2  True if file1 is a hard link to file2.\n"
-"    \n"
-"    String operators:\n"
-"    \n"
-"      -z STRING      True if string is empty.\n"
-"    \n"
-"      -n STRING\n"
-"         STRING      True if string is not empty.\n"
-"    \n"
-"      STRING1 = STRING2\n"
-"                     True if the strings are equal.\n"
-"      STRING1 != STRING2\n"
-"                     True if the strings are not equal.\n"
-"      STRING1 < STRING2\n"
-"                     True if STRING1 sorts before STRING2 "
-"lexicographically.\n"
-"      STRING1 > STRING2\n"
-"                     True if STRING1 sorts after STRING2 lexicographically.\n"
-"    \n"
-"    Other operators:\n"
-"    \n"
-"      -o OPTION      True if the shell option OPTION is enabled.\n"
-"      -v VAR\t True if the shell variable VAR is set\n"
-"      ! EXPR         True if expr is false.\n"
-"      EXPR1 -a EXPR2 True if both expr1 AND expr2 are true.\n"
-"      EXPR1 -o EXPR2 True if either expr1 OR expr2 is true.\n"
-"    \n"
-"      arg1 OP arg2   Arithmetic tests.  OP is one of -eq, -ne,\n"
-"                     -lt, -le, -gt, or -ge.\n"
-"    \n"
-"    Arithmetic binary operators return true if ARG1 is equal, not-equal,\n"
-"    less-than, less-than-or-equal, greater-than, or greater-than-or-equal\n"
-"    than ARG2.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success if EXPR evaluates to true; fails if EXPR evaluates to\n"
-"    false or an invalid argument is given."
-msgstr ""
-"Evaluate conditional expression.\n"
-"    \n"
-"    Exits with a status of 0 (true) or 1 (false) depending on\n"
-"    the evaluation of EXPR.  Expressions may be unary or binary.  Unary\n"
-"    expressions are often used to examine the status of a file.  There\n"
-"    are string operators and numeric comparison operators as well.\n"
-"    \n"
-"    The behavior of test depends on the number of arguments.  Read the\n"
-"    bash manual page for the complete specification.\n"
-"    \n"
-"    File operators:\n"
-"    \n"
-"      -a FILE        True if file exists.\n"
-"      -b FILE        True if file is block special.\n"
-"      -c FILE        True if file is character special.\n"
-"      -d FILE        True if file is a directory.\n"
-"      -e FILE        True if file exists.\n"
-"      -f FILE        True if file exists and is a regular file.\n"
-"      -g FILE        True if file is set-group-id.\n"
-"      -h FILE        True if file is a symbolic link.\n"
-"      -L FILE        True if file is a symbolic link.\n"
-"      -k FILE        True if file has its ‘sticky’ bit set.\n"
-"      -p FILE        True if file is a named pipe.\n"
-"      -r FILE        True if file is readable by you.\n"
-"      -s FILE        True if file exists and is not empty.\n"
-"      -S FILE        True if file is a socket.\n"
-"      -t FD          True if FD is opened on a terminal.\n"
-"      -u FILE        True if the file is set-user-id.\n"
-"      -w FILE        True if the file is writable by you.\n"
-"      -x FILE        True if the file is executable by you.\n"
-"      -O FILE        True if the file is effectively owned by you.\n"
-"      -G FILE        True if the file is effectively owned by your group.\n"
-"      -N FILE        True if the file has been modified since it was last "
-"read.\n"
-"    \n"
-"      FILE1 -nt FILE2  True if file1 is newer than file2 (according to\n"
-"                       modification date).\n"
-"    \n"
-"      FILE1 -ot FILE2  True if file1 is older than file2.\n"
-"    \n"
-"      FILE1 -ef FILE2  True if file1 is a hard link to file2.\n"
-"    \n"
-"    String operators:\n"
-"    \n"
-"      -z STRING      True if string is empty.\n"
-"    \n"
-"      -n STRING\n"
-"         STRING      True if string is not empty.\n"
-"    \n"
-"      STRING1 = STRING2\n"
-"                     True if the strings are equal.\n"
-"      STRING1 != STRING2\n"
-"                     True if the strings are not equal.\n"
-"      STRING1 < STRING2\n"
-"                     True if STRING1 sorts before STRING2 "
-"lexicographically.\n"
-"      STRING1 > STRING2\n"
-"                     True if STRING1 sorts after STRING2 lexicographically.\n"
-"    \n"
-"    Other operators:\n"
-"    \n"
-"      -o OPTION      True if the shell option OPTION is enabled.\n"
-"      -v VAR\t True if the shell variable VAR is set\n"
-"      ! EXPR         True if expr is false.\n"
-"      EXPR1 -a EXPR2 True if both expr1 AND expr2 are true.\n"
-"      EXPR1 -o EXPR2 True if either expr1 OR expr2 is true.\n"
-"    \n"
-"      arg1 OP arg2   Arithmetic tests.  OP is one of -eq, -ne,\n"
-"                     -lt, -le, -gt, or -ge.\n"
-"    \n"
-"    Arithmetic binary operators return true if ARG1 is equal, not-equal,\n"
-"    less-than, less-than-or-equal, greater-than, or greater-than-or-equal\n"
-"    than ARG2.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success if EXPR evaluates to true; fails if EXPR evaluates to\n"
-"    false or an invalid argument is given."
-
-#: builtins.c:1321
-msgid ""
-"Evaluate conditional expression.\n"
-"    \n"
-"    This is a synonym for the \"test\" builtin, but the last argument must\n"
-"    be a literal `]', to match the opening `['."
-msgstr ""
-"Evaluate conditional expression.\n"
-"    \n"
-"    This is a synonym for the “test” builtin, but the last argument must\n"
-"    be a literal ‘]’, to match the opening ‘[’."
-
-#: builtins.c:1330
-msgid ""
-"Display process times.\n"
-"    \n"
-"    Prints the accumulated user and system times for the shell and all of "
-"its\n"
-"    child processes.\n"
-"    \n"
-"    Exit Status:\n"
-"    Always succeeds."
-msgstr ""
-"Display process times.\n"
-"    \n"
-"    Prints the accumulated user and system times for the shell and all of "
-"its\n"
-"    child processes.\n"
-"    \n"
-"    Exit Status:\n"
-"    Always succeeds."
-
-#: builtins.c:1342
-msgid ""
-"Trap signals and other events.\n"
-"    \n"
-"    Defines and activates handlers to be run when the shell receives "
-"signals\n"
-"    or other conditions.\n"
-"    \n"
-"    ARG is a command to be read and executed when the shell receives the\n"
-"    signal(s) SIGNAL_SPEC.  If ARG is absent (and a single SIGNAL_SPEC\n"
-"    is supplied) or `-', each specified signal is reset to its original\n"
-"    value.  If ARG is the null string each SIGNAL_SPEC is ignored by the\n"
-"    shell and by the commands it invokes.\n"
-"    \n"
-"    If a SIGNAL_SPEC is EXIT (0) ARG is executed on exit from the shell.  "
-"If\n"
-"    a SIGNAL_SPEC is DEBUG, ARG is executed before every simple command.  "
-"If\n"
-"    a SIGNAL_SPEC is RETURN, ARG is executed each time a shell function or "
-"a\n"
-"    script run by the . or source builtins finishes executing.  A "
-"SIGNAL_SPEC\n"
-"    of ERR means to execute ARG each time a command's failure would cause "
-"the\n"
-"    shell to exit when the -e option is enabled.\n"
-"    \n"
-"    If no arguments are supplied, trap prints the list of commands "
-"associated\n"
-"    with each signal.\n"
-"    \n"
-"    Options:\n"
-"      -l\tprint a list of signal names and their corresponding numbers\n"
-"      -p\tdisplay the trap commands associated with each SIGNAL_SPEC\n"
-"    \n"
-"    Each SIGNAL_SPEC is either a signal name in <signal.h> or a signal "
-"number.\n"
-"    Signal names are case insensitive and the SIG prefix is optional.  A\n"
-"    signal may be sent to the shell with \"kill -signal $$\".\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless a SIGSPEC is invalid or an invalid option is "
-"given."
-msgstr ""
-"Trap signals and other events.\n"
-"    \n"
-"    Defines and activates handlers to be run when the shell receives "
-"signals\n"
-"    or other conditions.\n"
-"    \n"
-"    ARG is a command to be read and executed when the shell receives the\n"
-"    signal(s) SIGNAL_SPEC.  If ARG is absent (and a single SIGNAL_SPEC\n"
-"    is supplied) or ‘-’, each specified signal is reset to its original\n"
-"    value.  If ARG is the null string each SIGNAL_SPEC is ignored by the\n"
-"    shell and by the commands it invokes.\n"
-"    \n"
-"    If a SIGNAL_SPEC is EXIT (0) ARG is executed on exit from the shell.  "
-"If\n"
-"    a SIGNAL_SPEC is DEBUG, ARG is executed before every simple command.  "
-"If\n"
-"    a SIGNAL_SPEC is RETURN, ARG is executed each time a shell function or "
-"a\n"
-"    script run by the . or source builtins finishes executing.  A "
-"SIGNAL_SPEC\n"
-"    of ERR means to execute ARG each time a command's failure would cause "
-"the\n"
-"    shell to exit when the -e option is enabled.\n"
-"    \n"
-"    If no arguments are supplied, trap prints the list of commands "
-"associated\n"
-"    with each signal.\n"
-"    \n"
-"    Options:\n"
-"      -l\tprint a list of signal names and their corresponding numbers\n"
-"      -p\tdisplay the trap commands associated with each SIGNAL_SPEC\n"
-"    \n"
-"    Each SIGNAL_SPEC is either a signal name in <signal.h> or a signal "
-"number.\n"
-"    Signal names are case insensitive and the SIG prefix is optional.  A\n"
-"    signal may be sent to the shell with “kill -signal $$”.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless a SIGSPEC is invalid or an invalid option is "
-"given."
-
-#: builtins.c:1378
-msgid ""
-"Display information about command type.\n"
-"    \n"
-"    For each NAME, indicate how it would be interpreted if used as a\n"
-"    command name.\n"
-"    \n"
-"    Options:\n"
-"      -a\tdisplay all locations containing an executable named NAME;\n"
-"    \tincludes aliases, builtins, and functions, if and only if\n"
-"    \tthe `-p' option is not also used\n"
-"      -f\tsuppress shell function lookup\n"
-"      -P\tforce a PATH search for each NAME, even if it is an alias,\n"
-"    \tbuiltin, or function, and returns the name of the disk file\n"
-"    \tthat would be executed\n"
-"      -p\treturns either the name of the disk file that would be executed,\n"
-"    \tor nothing if `type -t NAME' would not return `file'.\n"
-"      -t\toutput a single word which is one of `alias', `keyword',\n"
-"    \t`function', `builtin', `file' or `', if NAME is an alias, shell\n"
-"    \treserved word, shell function, shell builtin, disk file, or not\n"
-"    \tfound, respectively\n"
-"    \n"
-"    Arguments:\n"
-"      NAME\tCommand name to be interpreted.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success if all of the NAMEs are found; fails if any are not "
-"found."
-msgstr ""
-"Display information about command type.\n"
-"    \n"
-"    For each NAME, indicate how it would be interpreted if used as a\n"
-"    command name.\n"
-"    \n"
-"    Options:\n"
-"      -a\tdisplay all locations containing an executable named NAME;\n"
-"    \tincludes aliases, builtins, and functions, if and only if\n"
-"    \tthe ‘-p’ option is not also used\n"
-"      -f\tsuppress shell function lookup\n"
-"      -P\tforce a PATH search for each NAME, even if it is an alias,\n"
-"    \tbuiltin, or function, and returns the name of the disk file\n"
-"    \tthat would be executed\n"
-"      -p\treturns either the name of the disk file that would be executed,\n"
-"    \tor nothing if ‘type -t NAME’ would not return ‘file’.\n"
-"      -t\toutput a single word which is one of ‘alias’, ‘keyword’,\n"
-"    \t‘function’, ‘builtin’, ‘file’ or ‘’, if NAME is an alias, shell\n"
-"    \treserved word, shell function, shell builtin, disk file, or not\n"
-"    \tfound, respectively\n"
-"    \n"
-"    Arguments:\n"
-"      NAME\tCommand name to be interpreted.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success if all of the NAMEs are found; fails if any are not "
-"found."
-
-#: builtins.c:1409
-#, fuzzy
-msgid ""
-"Modify shell resource limits.\n"
-"    \n"
-"    Provides control over the resources available to the shell and "
-"processes\n"
-"    it creates, on systems that allow such control.\n"
-"    \n"
-"    Options:\n"
-"      -S\tuse the `soft' resource limit\n"
-"      -H\tuse the `hard' resource limit\n"
-"      -a\tall current limits are reported\n"
-"      -b\tthe socket buffer size\n"
-"      -c\tthe maximum size of core files created\n"
-"      -d\tthe maximum size of a process's data segment\n"
-"      -e\tthe maximum scheduling priority (`nice')\n"
-"      -f\tthe maximum size of files written by the shell and its children\n"
-"      -i\tthe maximum number of pending signals\n"
-"      -l\tthe maximum size a process may lock into memory\n"
-"      -m\tthe maximum resident set size\n"
-"      -n\tthe maximum number of open file descriptors\n"
-"      -p\tthe pipe buffer size\n"
-"      -q\tthe maximum number of bytes in POSIX message queues\n"
-"      -r\tthe maximum real-time scheduling priority\n"
-"      -s\tthe maximum stack size\n"
-"      -t\tthe maximum amount of cpu time in seconds\n"
-"      -u\tthe maximum number of user processes\n"
-"      -v\tthe size of virtual memory\n"
-"      -x\tthe maximum number of file locks\n"
-"      -T    the maximum number of threads\n"
-"    \n"
-"    Not all options are available on all platforms.\n"
-"    \n"
-"    If LIMIT is given, it is the new value of the specified resource; the\n"
-"    special LIMIT values `soft', `hard', and `unlimited' stand for the\n"
-"    current soft limit, the current hard limit, and no limit, respectively.\n"
-"    Otherwise, the current value of the specified resource is printed.  If\n"
-"    no option is given, then -f is assumed.\n"
-"    \n"
-"    Values are in 1024-byte increments, except for -t, which is in seconds,\n"
-"    -p, which is in increments of 512 bytes, and -u, which is an unscaled\n"
-"    number of processes.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless an invalid option is supplied or an error occurs."
-msgstr ""
-"Modify shell resource limits.\n"
-"    \n"
-"    Provides control over the resources available to the shell and "
-"processes\n"
-"    it creates, on systems that allow such control.\n"
-"    \n"
-"    Options:\n"
-"      -S\tuse the ‘soft’ resource limit\n"
-"      -H\tuse the ‘hard’ resource limit\n"
-"      -a\tall current limits are reported\n"
-"      -b\tthe socket buffer size\n"
-"      -c\tthe maximum size of core files created\n"
-"      -d\tthe maximum size of a process's data segment\n"
-"      -e\tthe maximum scheduling priority (‘nice’)\n"
-"      -f\tthe maximum size of files written by the shell and its children\n"
-"      -i\tthe maximum number of pending signals\n"
-"      -l\tthe maximum size a process may lock into memory\n"
-"      -m\tthe maximum resident set size\n"
-"      -n\tthe maximum number of open file descriptors\n"
-"      -p\tthe pipe buffer size\n"
-"      -q\tthe maximum number of bytes in POSIX message queues\n"
-"      -r\tthe maximum real-time scheduling priority\n"
-"      -s\tthe maximum stack size\n"
-"      -t\tthe maximum amount of cpu time in seconds\n"
-"      -u\tthe maximum number of user processes\n"
-"      -v\tthe size of virtual memory\n"
-"      -x\tthe maximum number of file locks\n"
-"    \n"
-"    If LIMIT is given, it is the new value of the specified resource; the\n"
-"    special LIMIT values ‘soft’, ‘hard’, and ‘unlimited’ stand for the\n"
-"    current soft limit, the current hard limit, and no limit, respectively.\n"
-"    Otherwise, the current value of the specified resource is printed.  If\n"
-"    no option is given, then -f is assumed.\n"
-"    \n"
-"    Values are in 1024-byte increments, except for -t, which is in seconds,\n"
-"    -p, which is in increments of 512 bytes, and -u, which is an unscaled\n"
-"    number of processes.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless an invalid option is supplied or an error occurs."
-
-#: builtins.c:1457
-msgid ""
-"Display or set file mode mask.\n"
-"    \n"
-"    Sets the user file-creation mask to MODE.  If MODE is omitted, prints\n"
-"    the current value of the mask.\n"
-"    \n"
-"    If MODE begins with a digit, it is interpreted as an octal number;\n"
-"    otherwise it is a symbolic mode string like that accepted by chmod(1).\n"
-"    \n"
-"    Options:\n"
-"      -p\tif MODE is omitted, output in a form that may be reused as input\n"
-"      -S\tmakes the output symbolic; otherwise an octal number is output\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless MODE is invalid or an invalid option is given."
-msgstr ""
-"Display or set file mode mask.\n"
-"    \n"
-"    Sets the user file-creation mask to MODE.  If MODE is omitted, prints\n"
-"    the current value of the mask.\n"
-"    \n"
-"    If MODE begins with a digit, it is interpreted as an octal number;\n"
-"    otherwise it is a symbolic mode string like that accepted by chmod(1).\n"
-"    \n"
-"    Options:\n"
-"      -p\tif MODE is omitted, output in a form that may be reused as input\n"
-"      -S\tmakes the output symbolic; otherwise an octal number is output\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless MODE is invalid or an invalid option is given."
-
-#: builtins.c:1477
-#, fuzzy
-msgid ""
-"Wait for job completion and return exit status.\n"
-"    \n"
-"    Waits for each process identified by an ID, which may be a process ID or "
-"a\n"
-"    job specification, and reports its termination status.  If ID is not\n"
-"    given, waits for all currently active child processes, and the return\n"
-"    status is zero.  If ID is a a job specification, waits for all "
-"processes\n"
-"    in that job's pipeline.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns the status of the last ID; fails if ID is invalid or an invalid\n"
-"    option is given."
-msgstr ""
-"Wait for job completion and return exit status.\n"
-"    \n"
-"    Waits for the process identified by ID, which may be a process ID or a\n"
-"    job specification, and reports its termination status.  If ID is not\n"
-"    given, waits for all currently active child processes, and the return\n"
-"    status is zero.  If ID is a a job specification, waits for all "
-"processes\n"
-"    in the job's pipeline.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns the status of ID; fails if ID is invalid or an invalid option "
-"is\n"
-"    given."
-
-#: builtins.c:1495
-msgid ""
-"Wait for process completion and return exit status.\n"
-"    \n"
-"    Waits for the specified process and reports its termination status.  If\n"
-"    PID is not given, all currently active child processes are waited for,\n"
-"    and the return code is zero.  PID must be a process ID.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns the status of ID; fails if ID is invalid or an invalid option "
-"is\n"
-"    given."
-msgstr ""
-"Wait for process completion and return exit status.\n"
-"    \n"
-"    Waits for the specified process and reports its termination status.  If\n"
-"    PID is not given, all currently active child processes are waited for,\n"
-"    and the return code is zero.  PID must be a process ID.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns the status of ID; fails if ID is invalid or an invalid option "
-"is\n"
-"    given."
-
-#: builtins.c:1510
-msgid ""
-"Execute commands for each member in a list.\n"
-"    \n"
-"    The `for' loop executes a sequence of commands for each member in a\n"
-"    list of items.  If `in WORDS ...;' is not present, then `in \"$@\"' is\n"
-"    assumed.  For each element in WORDS, NAME is set to that element, and\n"
-"    the COMMANDS are executed.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns the status of the last command executed."
-msgstr ""
-"Execute commands for each member in a list.\n"
-"    \n"
-"    The ‘for’ loop executes a sequence of commands for each member in a\n"
-"    list of items.  If ‘in WORDS ...;’ is not present, then ‘in “$@”’ is\n"
-"    assumed.  For each element in WORDS, NAME is set to that element, and\n"
-"    the COMMANDS are executed.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns the status of the last command executed."
-
-#: builtins.c:1524
-msgid ""
-"Arithmetic for loop.\n"
-"    \n"
-"    Equivalent to\n"
-"    \t(( EXP1 ))\n"
-"    \twhile (( EXP2 )); do\n"
-"    \t\tCOMMANDS\n"
-"    \t\t(( EXP3 ))\n"
-"    \tdone\n"
-"    EXP1, EXP2, and EXP3 are arithmetic expressions.  If any expression is\n"
-"    omitted, it behaves as if it evaluates to 1.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns the status of the last command executed."
-msgstr ""
-"Arithmetic for loop.\n"
-"    \n"
-"    Equivalent to\n"
-"    \t(( EXP1 ))\n"
-"    \twhile (( EXP2 )); do\n"
-"    \t\tCOMMANDS\n"
-"    \t\t(( EXP3 ))\n"
-"    \tdone\n"
-"    EXP1, EXP2, and EXP3 are arithmetic expressions.  If any expression is\n"
-"    omitted, it behaves as if it evaluates to 1.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns the status of the last command executed."
-
-#: builtins.c:1542
-msgid ""
-"Select words from a list and execute commands.\n"
-"    \n"
-"    The WORDS are expanded, generating a list of words.  The\n"
-"    set of expanded words is printed on the standard error, each\n"
-"    preceded by a number.  If `in WORDS' is not present, `in \"$@\"'\n"
-"    is assumed.  The PS3 prompt is then displayed and a line read\n"
-"    from the standard input.  If the line consists of the number\n"
-"    corresponding to one of the displayed words, then NAME is set\n"
-"    to that word.  If the line is empty, WORDS and the prompt are\n"
-"    redisplayed.  If EOF is read, the command completes.  Any other\n"
-"    value read causes NAME to be set to null.  The line read is saved\n"
-"    in the variable REPLY.  COMMANDS are executed after each selection\n"
-"    until a break command is executed.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns the status of the last command executed."
-msgstr ""
-"Select words from a list and execute commands.\n"
-"    \n"
-"    The WORDS are expanded, generating a list of words.  The\n"
-"    set of expanded words is printed on the standard error, each\n"
-"    preceded by a number.  If ‘in WORDS’ is not present, ‘in “$@”’\n"
-"    is assumed.  The PS3 prompt is then displayed and a line read\n"
-"    from the standard input.  If the line consists of the number\n"
-"    corresponding to one of the displayed words, then NAME is set\n"
-"    to that word.  If the line is empty, WORDS and the prompt are\n"
-"    redisplayed.  If EOF is read, the command completes.  Any other\n"
-"    value read causes NAME to be set to null.  The line read is saved\n"
-"    in the variable REPLY.  COMMANDS are executed after each selection\n"
-"    until a break command is executed.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns the status of the last command executed."
-
-#: builtins.c:1563
-msgid ""
-"Report time consumed by pipeline's execution.\n"
-"    \n"
-"    Execute PIPELINE and print a summary of the real time, user CPU time,\n"
-"    and system CPU time spent executing PIPELINE when it terminates.\n"
-"    \n"
-"    Options:\n"
-"      -p\tprint the timing summary in the portable Posix format\n"
-"    \n"
-"    The value of the TIMEFORMAT variable is used as the output format.\n"
-"    \n"
-"    Exit Status:\n"
-"    The return status is the return status of PIPELINE."
-msgstr ""
-"Report time consumed by pipeline's execution.\n"
-"    \n"
-"    Execute PIPELINE and print a summary of the real time, user CPU time,\n"
-"    and system CPU time spent executing PIPELINE when it terminates.\n"
-"    \n"
-"    Options:\n"
-"      -p\tprint the timing summary in the portable Posix format\n"
-"    \n"
-"    The value of the TIMEFORMAT variable is used as the output format.\n"
-"    \n"
-"    Exit Status:\n"
-"    The return status is the return status of PIPELINE."
-
-#: builtins.c:1580
-msgid ""
-"Execute commands based on pattern matching.\n"
-"    \n"
-"    Selectively execute COMMANDS based upon WORD matching PATTERN.  The\n"
-"    `|' is used to separate multiple patterns.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns the status of the last command executed."
-msgstr ""
-"Execute commands based on pattern matching.\n"
-"    \n"
-"    Selectively execute COMMANDS based upon WORD matching PATTERN.  The\n"
-"    ‘|’ is used to separate multiple patterns.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns the status of the last command executed."
-
-#: builtins.c:1592
-msgid ""
-"Execute commands based on conditional.\n"
-"    \n"
-"    The `if COMMANDS' list is executed.  If its exit status is zero, then "
-"the\n"
-"    `then COMMANDS' list is executed.  Otherwise, each `elif COMMANDS' list "
-"is\n"
-"    executed in turn, and if its exit status is zero, the corresponding\n"
-"    `then COMMANDS' list is executed and the if command completes.  "
-"Otherwise,\n"
-"    the `else COMMANDS' list is executed, if present.  The exit status of "
-"the\n"
-"    entire construct is the exit status of the last command executed, or "
-"zero\n"
-"    if no condition tested true.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns the status of the last command executed."
-msgstr ""
-"Execute commands based on conditional.\n"
-"    \n"
-"    The ‘if COMMANDS’ list is executed.  If its exit status is zero, then "
-"the\n"
-"    ‘then COMMANDS’ list is executed.  Otherwise, each ‘elif COMMANDS’ list "
-"is\n"
-"    executed in turn, and if its exit status is zero, the corresponding\n"
-"    ‘then COMMANDS’ list is executed and the if command completes.  "
-"Otherwise,\n"
-"    the ‘else COMMANDS’ list is executed, if present.  The exit status of "
-"the\n"
-"    entire construct is the exit status of the last command executed, or "
-"zero\n"
-"    if no condition tested true.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns the status of the last command executed."
-
-#: builtins.c:1609
-msgid ""
-"Execute commands as long as a test succeeds.\n"
-"    \n"
-"    Expand and execute COMMANDS as long as the final command in the\n"
-"    `while' COMMANDS has an exit status of zero.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns the status of the last command executed."
-msgstr ""
-"Execute commands as long as a test succeeds.\n"
-"    \n"
-"    Expand and execute COMMANDS as long as the final command in the\n"
-"    ‘while’ COMMANDS has an exit status of zero.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns the status of the last command executed."
-
-#: builtins.c:1621
-msgid ""
-"Execute commands as long as a test does not succeed.\n"
-"    \n"
-"    Expand and execute COMMANDS as long as the final command in the\n"
-"    `until' COMMANDS has an exit status which is not zero.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns the status of the last command executed."
-msgstr ""
-"Execute commands as long as a test does not succeed.\n"
-"    \n"
-"    Expand and execute COMMANDS as long as the final command in the\n"
-"    ‘until’ COMMANDS has an exit status which is not zero.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns the status of the last command executed."
-
-#: builtins.c:1633
-msgid ""
-"Create a coprocess named NAME.\n"
-"    \n"
-"    Execute COMMAND asynchronously, with the standard output and standard\n"
-"    input of the command connected via a pipe to file descriptors assigned\n"
-"    to indices 0 and 1 of an array variable NAME in the executing shell.\n"
-"    The default NAME is \"COPROC\".\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns the exit status of COMMAND."
-msgstr ""
-"Create a coprocess named NAME.\n"
-"    \n"
-"    Execute COMMAND asynchronously, with the standard output and standard\n"
-"    input of the command connected via a pipe to file descriptors assigned\n"
-"    to indices 0 and 1 of an array variable NAME in the executing shell.\n"
-"    The default NAME is “COPROC”.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns the exit status of COMMAND."
-
-#: builtins.c:1647
-msgid ""
-"Define shell function.\n"
-"    \n"
-"    Create a shell function named NAME.  When invoked as a simple command,\n"
-"    NAME runs COMMANDs in the calling shell's context.  When NAME is "
-"invoked,\n"
-"    the arguments are passed to the function as $1...$n, and the function's\n"
-"    name is in $FUNCNAME.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless NAME is readonly."
-msgstr ""
-"Define shell function.\n"
-"    \n"
-"    Create a shell function named NAME.  When invoked as a simple command,\n"
-"    NAME runs COMMANDs in the calling shell's context.  When NAME is "
-"invoked,\n"
-"    the arguments are passed to the function as $1...$n, and the function's\n"
-"    name is in $FUNCNAME.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless NAME is readonly."
-
-#: builtins.c:1661
-msgid ""
-"Group commands as a unit.\n"
-"    \n"
-"    Run a set of commands in a group.  This is one way to redirect an\n"
-"    entire set of commands.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns the status of the last command executed."
-msgstr ""
-"Group commands as a unit.\n"
-"    \n"
-"    Run a set of commands in a group.  This is one way to redirect an\n"
-"    entire set of commands.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns the status of the last command executed."
-
-#: builtins.c:1673
-msgid ""
-"Resume job in foreground.\n"
-"    \n"
-"    Equivalent to the JOB_SPEC argument to the `fg' command.  Resume a\n"
-"    stopped or background job.  JOB_SPEC can specify either a job name\n"
-"    or a job number.  Following JOB_SPEC with a `&' places the job in\n"
-"    the background, as if the job specification had been supplied as an\n"
-"    argument to `bg'.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns the status of the resumed job."
-msgstr ""
-"Resume job in foreground.\n"
-"    \n"
-"    Equivalent to the JOB_SPEC argument to the ‘fg’ command.  Resume a\n"
-"    stopped or background job.  JOB_SPEC can specify either a job name\n"
-"    or a job number.  Following JOB_SPEC with a ‘&’ places the job in\n"
-"    the background, as if the job specification had been supplied as an\n"
-"    argument to ‘bg’.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns the status of the resumed job."
-
-#: builtins.c:1688
-msgid ""
-"Evaluate arithmetic expression.\n"
-"    \n"
-"    The EXPRESSION is evaluated according to the rules for arithmetic\n"
-"    evaluation.  Equivalent to \"let EXPRESSION\".\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns 1 if EXPRESSION evaluates to 0; returns 0 otherwise."
-msgstr ""
-"Evaluate arithmetic expression.\n"
-"    \n"
-"    The EXPRESSION is evaluated according to the rules for arithmetic\n"
-"    evaluation.  Equivalent to “let EXPRESSION”.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns 1 if EXPRESSION evaluates to 0; returns 0 otherwise."
-
-#: builtins.c:1700
-msgid ""
-"Execute conditional command.\n"
-"    \n"
-"    Returns a status of 0 or 1 depending on the evaluation of the "
-"conditional\n"
-"    expression EXPRESSION.  Expressions are composed of the same primaries "
-"used\n"
-"    by the `test' builtin, and may be combined using the following "
-"operators:\n"
-"    \n"
-"      ( EXPRESSION )\tReturns the value of EXPRESSION\n"
-"      ! EXPRESSION\t\tTrue if EXPRESSION is false; else false\n"
-"      EXPR1 && EXPR2\tTrue if both EXPR1 and EXPR2 are true; else false\n"
-"      EXPR1 || EXPR2\tTrue if either EXPR1 or EXPR2 is true; else false\n"
-"    \n"
-"    When the `==' and `!=' operators are used, the string to the right of\n"
-"    the operator is used as a pattern and pattern matching is performed.\n"
-"    When the `=~' operator is used, the string to the right of the operator\n"
-"    is matched as a regular expression.\n"
-"    \n"
-"    The && and || operators do not evaluate EXPR2 if EXPR1 is sufficient to\n"
-"    determine the expression's value.\n"
-"    \n"
-"    Exit Status:\n"
-"    0 or 1 depending on value of EXPRESSION."
-msgstr ""
-"Execute conditional command.\n"
-"    \n"
-"    Returns a status of 0 or 1 depending on the evaluation of the "
-"conditional\n"
-"    expression EXPRESSION.  Expressions are composed of the same primaries "
-"used\n"
-"    by the ‘test’ builtin, and may be combined using the following "
-"operators:\n"
-"    \n"
-"      ( EXPRESSION )\tReturns the value of EXPRESSION\n"
-"      ! EXPRESSION\t\tTrue if EXPRESSION is false; else false\n"
-"      EXPR1 && EXPR2\tTrue if both EXPR1 and EXPR2 are true; else false\n"
-"      EXPR1 || EXPR2\tTrue if either EXPR1 or EXPR2 is true; else false\n"
-"    \n"
-"    When the ‘==’ and ‘!=’ operators are used, the string to the right of\n"
-"    the operator is used as a pattern and pattern matching is performed.\n"
-"    When the ‘=~’ operator is used, the string to the right of the operator\n"
-"    is matched as a regular expression.\n"
-"    \n"
-"    The && and || operators do not evaluate EXPR2 if EXPR1 is sufficient to\n"
-"    determine the expression's value.\n"
-"    \n"
-"    Exit Status:\n"
-"    0 or 1 depending on value of EXPRESSION."
-
-#: builtins.c:1726
-msgid ""
-"Common shell variable names and usage.\n"
-"    \n"
-"    BASH_VERSION\tVersion information for this Bash.\n"
-"    CDPATH\tA colon-separated list of directories to search\n"
-"    \t\tfor directories given as arguments to `cd'.\n"
-"    GLOBIGNORE\tA colon-separated list of patterns describing filenames to\n"
-"    \t\tbe ignored by pathname expansion.\n"
-"    HISTFILE\tThe name of the file where your command history is stored.\n"
-"    HISTFILESIZE\tThe maximum number of lines this file can contain.\n"
-"    HISTSIZE\tThe maximum number of history lines that a running\n"
-"    \t\tshell can access.\n"
-"    HOME\tThe complete pathname to your login directory.\n"
-"    HOSTNAME\tThe name of the current host.\n"
-"    HOSTTYPE\tThe type of CPU this version of Bash is running under.\n"
-"    IGNOREEOF\tControls the action of the shell on receipt of an EOF\n"
-"    \t\tcharacter as the sole input.  If set, then the value\n"
-"    \t\tof it is the number of EOF characters that can be seen\n"
-"    \t\tin a row on an empty line before the shell will exit\n"
-"    \t\t(default 10).  When unset, EOF signifies the end of input.\n"
-"    MACHTYPE\tA string describing the current system Bash is running on.\n"
-"    MAILCHECK\tHow often, in seconds, Bash checks for new mail.\n"
-"    MAILPATH\tA colon-separated list of filenames which Bash checks\n"
-"    \t\tfor new mail.\n"
-"    OSTYPE\tThe version of Unix this version of Bash is running on.\n"
-"    PATH\tA colon-separated list of directories to search when\n"
-"    \t\tlooking for commands.\n"
-"    PROMPT_COMMAND\tA command to be executed before the printing of each\n"
-"    \t\tprimary prompt.\n"
-"    PS1\t\tThe primary prompt string.\n"
-"    PS2\t\tThe secondary prompt string.\n"
-"    PWD\t\tThe full pathname of the current directory.\n"
-"    SHELLOPTS\tA colon-separated list of enabled shell options.\n"
-"    TERM\tThe name of the current terminal type.\n"
-"    TIMEFORMAT\tThe output format for timing statistics displayed by the\n"
-"    \t\t`time' reserved word.\n"
-"    auto_resume\tNon-null means a command word appearing on a line by\n"
-"    \t\titself is first looked for in the list of currently\n"
-"    \t\tstopped jobs.  If found there, that job is foregrounded.\n"
-"    \t\tA value of `exact' means that the command word must\n"
-"    \t\texactly match a command in the list of stopped jobs.  A\n"
-"    \t\tvalue of `substring' means that the command word must\n"
-"    \t\tmatch a substring of the job.  Any other value means that\n"
-"    \t\tthe command must be a prefix of a stopped job.\n"
-"    histchars\tCharacters controlling history expansion and quick\n"
-"    \t\tsubstitution.  The first character is the history\n"
-"    \t\tsubstitution character, usually `!'.  The second is\n"
-"    \t\tthe `quick substitution' character, usually `^'.  The\n"
-"    \t\tthird is the `history comment' character, usually `#'.\n"
-"    HISTIGNORE\tA colon-separated list of patterns used to decide which\n"
-"    \t\tcommands should be saved on the history list.\n"
-msgstr ""
-"Common shell variable names and usage.\n"
-"    \n"
-"    BASH_VERSION\tVersion information for this Bash.\n"
-"    CDPATH\tA colon-separated list of directories to search\n"
-"    \t\tfor directories given as arguments to ‘cd’.\n"
-"    GLOBIGNORE\tA colon-separated list of patterns describing filenames to\n"
-"    \t\tbe ignored by pathname expansion.\n"
-"    HISTFILE\tThe name of the file where your command history is stored.\n"
-"    HISTFILESIZE\tThe maximum number of lines this file can contain.\n"
-"    HISTSIZE\tThe maximum number of history lines that a running\n"
-"    \t\tshell can access.\n"
-"    HOME\tThe complete pathname to your login directory.\n"
-"    HOSTNAME\tThe name of the current host.\n"
-"    HOSTTYPE\tThe type of CPU this version of Bash is running under.\n"
-"    IGNOREEOF\tControls the action of the shell on receipt of an EOF\n"
-"    \t\tcharacter as the sole input.  If set, then the value\n"
-"    \t\tof it is the number of EOF characters that can be seen\n"
-"    \t\tin a row on an empty line before the shell will exit\n"
-"    \t\t(default 10).  When unset, EOF signifies the end of input.\n"
-"    MACHTYPE\tA string describing the current system Bash is running on.\n"
-"    MAILCHECK\tHow often, in seconds, Bash checks for new mail.\n"
-"    MAILPATH\tA colon-separated list of filenames which Bash checks\n"
-"    \t\tfor new mail.\n"
-"    OSTYPE\tThe version of Unix this version of Bash is running on.\n"
-"    PATH\tA colon-separated list of directories to search when\n"
-"    \t\tlooking for commands.\n"
-"    PROMPT_COMMAND\tA command to be executed before the printing of each\n"
-"    \t\tprimary prompt.\n"
-"    PS1\t\tThe primary prompt string.\n"
-"    PS2\t\tThe secondary prompt string.\n"
-"    PWD\t\tThe full pathname of the current directory.\n"
-"    SHELLOPTS\tA colon-separated list of enabled shell options.\n"
-"    TERM\tThe name of the current terminal type.\n"
-"    TIMEFORMAT\tThe output format for timing statistics displayed by the\n"
-"    \t\t‘time’ reserved word.\n"
-"    auto_resume\tNon-null means a command word appearing on a line by\n"
-"    \t\titself is first looked for in the list of currently\n"
-"    \t\tstopped jobs.  If found there, that job is foregrounded.\n"
-"    \t\tA value of ‘exact’ means that the command word must\n"
-"    \t\texactly match a command in the list of stopped jobs.  A\n"
-"    \t\tvalue of ‘substring’ means that the command word must\n"
-"    \t\tmatch a substring of the job.  Any other value means that\n"
-"    \t\tthe command must be a prefix of a stopped job.\n"
-"    histchars\tCharacters controlling history expansion and quick\n"
-"    \t\tsubstitution.  The first character is the history\n"
-"    \t\tsubstitution character, usually ‘!’.  The second is\n"
-"    \t\tthe ‘quick substitution’ character, usually ‘^’.  The\n"
-"    \t\tthird is the ‘history comment’ character, usually ‘#’.\n"
-"    HISTIGNORE\tA colon-separated list of patterns used to decide which\n"
-"    \t\tcommands should be saved on the history list.\n"
-
-#: builtins.c:1783
-msgid ""
-"Add directories to stack.\n"
-"    \n"
-"    Adds a directory to the top of the directory stack, or rotates\n"
-"    the stack, making the new top of the stack the current working\n"
-"    directory.  With no arguments, exchanges the top two directories.\n"
-"    \n"
-"    Options:\n"
-"      -n\tSuppresses the normal change of directory when adding\n"
-"    \tdirectories to the stack, so only the stack is manipulated.\n"
-"    \n"
-"    Arguments:\n"
-"      +N\tRotates the stack so that the Nth directory (counting\n"
-"    \tfrom the left of the list shown by `dirs', starting with\n"
-"    \tzero) is at the top.\n"
-"    \n"
-"      -N\tRotates the stack so that the Nth directory (counting\n"
-"    \tfrom the right of the list shown by `dirs', starting with\n"
-"    \tzero) is at the top.\n"
-"    \n"
-"      dir\tAdds DIR to the directory stack at the top, making it the\n"
-"    \tnew current working directory.\n"
-"    \n"
-"    The `dirs' builtin displays the directory stack.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless an invalid argument is supplied or the directory\n"
-"    change fails."
-msgstr ""
-"Add directories to stack.\n"
-"    \n"
-"    Adds a directory to the top of the directory stack, or rotates\n"
-"    the stack, making the new top of the stack the current working\n"
-"    directory.  With no arguments, exchanges the top two directories.\n"
-"    \n"
-"    Options:\n"
-"      -n\tSuppresses the normal change of directory when adding\n"
-"    \tdirectories to the stack, so only the stack is manipulated.\n"
-"    \n"
-"    Arguments:\n"
-"      +N\tRotates the stack so that the Nth directory (counting\n"
-"    \tfrom the left of the list shown by ‘dirs’, starting with\n"
-"    \tzero) is at the top.\n"
-"    \n"
-"      -N\tRotates the stack so that the Nth directory (counting\n"
-"    \tfrom the right of the list shown by ‘dirs’, starting with\n"
-"    \tzero) is at the top.\n"
-"    \n"
-"      dir\tAdds DIR to the directory stack at the top, making it the\n"
-"    \tnew current working directory.\n"
-"    \n"
-"    The ‘dirs’ builtin displays the directory stack.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless an invalid argument is supplied or the directory\n"
-"    change fails."
-
-#: builtins.c:1817
-msgid ""
-"Remove directories from stack.\n"
-"    \n"
-"    Removes entries from the directory stack.  With no arguments, removes\n"
-"    the top directory from the stack, and changes to the new top directory.\n"
-"    \n"
-"    Options:\n"
-"      -n\tSuppresses the normal change of directory when removing\n"
-"    \tdirectories from the stack, so only the stack is manipulated.\n"
-"    \n"
-"    Arguments:\n"
-"      +N\tRemoves the Nth entry counting from the left of the list\n"
-"    \tshown by `dirs', starting with zero.  For example: `popd +0'\n"
-"    \tremoves the first directory, `popd +1' the second.\n"
-"    \n"
-"      -N\tRemoves the Nth entry counting from the right of the list\n"
-"    \tshown by `dirs', starting with zero.  For example: `popd -0'\n"
-"    \tremoves the last directory, `popd -1' the next to last.\n"
-"    \n"
-"    The `dirs' builtin displays the directory stack.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless an invalid argument is supplied or the directory\n"
-"    change fails."
-msgstr ""
-"Remove directories from stack.\n"
-"    \n"
-"    Removes entries from the directory stack.  With no arguments, removes\n"
-"    the top directory from the stack, and changes to the new top directory.\n"
-"    \n"
-"    Options:\n"
-"      -n\tSuppresses the normal change of directory when removing\n"
-"    \tdirectories from the stack, so only the stack is manipulated.\n"
-"    \n"
-"    Arguments:\n"
-"      +N\tRemoves the Nth entry counting from the left of the list\n"
-"    \tshown by ‘dirs’, starting with zero.  For example: ‘popd +0’\n"
-"    \tremoves the first directory, ‘popd +1’ the second.\n"
-"    \n"
-"      -N\tRemoves the Nth entry counting from the right of the list\n"
-"    \tshown by ‘dirs’, starting with zero.  For example: ‘popd -0’\n"
-"    \tremoves the last directory, ‘popd -1’ the next to last.\n"
-"    \n"
-"    The ‘dirs’ builtin displays the directory stack.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless an invalid argument is supplied or the directory\n"
-"    change fails."
-
-#: builtins.c:1847
-msgid ""
-"Display directory stack.\n"
-"    \n"
-"    Display the list of currently remembered directories.  Directories\n"
-"    find their way onto the list with the `pushd' command; you can get\n"
-"    back up through the list with the `popd' command.\n"
-"    \n"
-"    Options:\n"
-"      -c\tclear the directory stack by deleting all of the elements\n"
-"      -l\tdo not print tilde-prefixed versions of directories relative\n"
-"    \tto your home directory\n"
-"      -p\tprint the directory stack with one entry per line\n"
-"      -v\tprint the directory stack with one entry per line prefixed\n"
-"    \twith its position in the stack\n"
-"    \n"
-"    Arguments:\n"
-"      +N\tDisplays the Nth entry counting from the left of the list shown "
-"by\n"
-"    \tdirs when invoked without options, starting with zero.\n"
-"    \n"
-"      -N\tDisplays the Nth entry counting from the right of the list shown "
-"by\n"
-"    \tdirs when invoked without options, starting with zero.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless an invalid option is supplied or an error occurs."
-msgstr ""
-"Display directory stack.\n"
-"    \n"
-"    Display the list of currently remembered directories.  Directories\n"
-"    find their way onto the list with the ‘pushd’ command; you can get\n"
-"    back up through the list with the ‘popd’ command.\n"
-"    \n"
-"    Options:\n"
-"      -c\tclear the directory stack by deleting all of the elements\n"
-"      -l\tdo not print tilde-prefixed versions of directories relative\n"
-"    \tto your home directory\n"
-"      -p\tprint the directory stack with one entry per line\n"
-"      -v\tprint the directory stack with one entry per line prefixed\n"
-"    \twith its position in the stack\n"
-"    \n"
-"    Arguments:\n"
-"      +N\tDisplays the Nth entry counting from the left of the list shown "
-"by\n"
-"    \tdirs when invoked without options, starting with zero.\n"
-"    \n"
-"      -N\tDisplays the Nth entry counting from the right of the list shown "
-"by\n"
-"    \tdirs when invoked without options, starting with zero.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless an invalid option is supplied or an error occurs."
-
-#: builtins.c:1876
-msgid ""
-"Set and unset shell options.\n"
-"    \n"
-"    Change the setting of each shell option OPTNAME.  Without any option\n"
-"    arguments, list all shell options with an indication of whether or not "
-"each\n"
-"    is set.\n"
-"    \n"
-"    Options:\n"
-"      -o\trestrict OPTNAMEs to those defined for use with `set -o'\n"
-"      -p\tprint each shell option with an indication of its status\n"
-"      -q\tsuppress output\n"
-"      -s\tenable (set) each OPTNAME\n"
-"      -u\tdisable (unset) each OPTNAME\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success if OPTNAME is enabled; fails if an invalid option is\n"
-"    given or OPTNAME is disabled."
-msgstr ""
-"Set and unset shell options.\n"
-"    \n"
-"    Change the setting of each shell option OPTNAME.  Without any option\n"
-"    arguments, list all shell options with an indication of whether or not "
-"each\n"
-"    is set.\n"
-"    \n"
-"    Options:\n"
-"      -o\trestrict OPTNAMEs to those defined for use with ‘set -o’\n"
-"      -p\tprint each shell option with an indication of its status\n"
-"      -q\tsuppress output\n"
-"      -s\tenable (set) each OPTNAME\n"
-"      -u\tdisable (unset) each OPTNAME\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success if OPTNAME is enabled; fails if an invalid option is\n"
-"    given or OPTNAME is disabled."
-
-#: builtins.c:1897
-#, fuzzy
-msgid ""
-"Formats and prints ARGUMENTS under control of the FORMAT.\n"
-"    \n"
-"    Options:\n"
-"      -v var\tassign the output to shell variable VAR rather than\n"
-"    \t\tdisplay it on the standard output\n"
-"    \n"
-"    FORMAT is a character string which contains three types of objects: "
-"plain\n"
-"    characters, which are simply copied to standard output; character "
-"escape\n"
-"    sequences, which are converted and copied to the standard output; and\n"
-"    format specifications, each of which causes printing of the next "
-"successive\n"
-"    argument.\n"
-"    \n"
-"    In addition to the standard format specifications described in printf"
-"(1),\n"
-"    printf interprets:\n"
-"    \n"
-"      %b\texpand backslash escape sequences in the corresponding argument\n"
-"      %q\tquote the argument in a way that can be reused as shell input\n"
-"      %(fmt)T output the date-time string resulting from using FMT as a "
-"format\n"
-"            string for strftime(3)\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless an invalid option is given or a write or "
-"assignment\n"
-"    error occurs."
-msgstr ""
-"Formats and prints ARGUMENTS under control of the FORMAT.\n"
-"    \n"
-"    Options:\n"
-"      -v var\tassign the output to shell variable VAR rather than\n"
-"    \t\tdisplay it on the standard output\n"
-"    \n"
-"    FORMAT is a character string which contains three types of objects: "
-"plain\n"
-"    characters, which are simply copied to standard output; character "
-"escape\n"
-"    sequences, which are converted and copied to the standard output; and\n"
-"    format specifications, each of which causes printing of the next "
-"successive\n"
-"    argument.\n"
-"    \n"
-"    In addition to the standard format specifications described in printf"
-"(1)\n"
-"    and printf(3), printf interprets:\n"
-"    \n"
-"      %b\texpand backslash escape sequences in the corresponding argument\n"
-"      %q\tquote the argument in a way that can be reused as shell input\n"
-"      %(fmt)T output the date-time string resulting from using FMT as a "
-"format\n"
-"            string for strftime(3)\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless an invalid option is given or a write or "
-"assignment\n"
-"    error occurs."
-
-#: builtins.c:1926
-msgid ""
-"Specify how arguments are to be completed by Readline.\n"
-"    \n"
-"    For each NAME, specify how arguments are to be completed.  If no "
-"options\n"
-"    are supplied, existing completion specifications are printed in a way "
-"that\n"
-"    allows them to be reused as input.\n"
-"    \n"
-"    Options:\n"
-"      -p\tprint existing completion specifications in a reusable format\n"
-"      -r\tremove a completion specification for each NAME, or, if no\n"
-"    \tNAMEs are supplied, all completion specifications\n"
-"      -D\tapply the completions and actions as the default for commands\n"
-"    \twithout any specific completion defined\n"
-"      -E\tapply the completions and actions to \"empty\" commands --\n"
-"    \tcompletion attempted on a blank line\n"
-"    \n"
-"    When completion is attempted, the actions are applied in the order the\n"
-"    uppercase-letter options are listed above.  The -D option takes\n"
-"    precedence over -E.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless an invalid option is supplied or an error occurs."
-msgstr ""
-"Specify how arguments are to be completed by Readline.\n"
-"    \n"
-"    For each NAME, specify how arguments are to be completed.  If no "
-"options\n"
-"    are supplied, existing completion specifications are printed in a way "
-"that\n"
-"    allows them to be reused as input.\n"
-"    \n"
-"    Options:\n"
-"      -p\tprint existing completion specifications in a reusable format\n"
-"      -r\tremove a completion specification for each NAME, or, if no\n"
-"    \tNAMEs are supplied, all completion specifications\n"
-"      -D\tapply the completions and actions as the default for commands\n"
-"    \twithout any specific completion defined\n"
-"      -E\tapply the completions and actions to “empty” commands --\n"
-"    \tcompletion attempted on a blank line\n"
-"    \n"
-"    When completion is attempted, the actions are applied in the order the\n"
-"    uppercase-letter options are listed above.  The -D option takes\n"
-"    precedence over -E.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless an invalid option is supplied or an error occurs."
-
-#: builtins.c:1954
-msgid ""
-"Display possible completions depending on the options.\n"
-"    \n"
-"    Intended to be used from within a shell function generating possible\n"
-"    completions.  If the optional WORD argument is supplied, matches "
-"against\n"
-"    WORD are generated.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless an invalid option is supplied or an error occurs."
-msgstr ""
-"Display possible completions depending on the options.\n"
-"    \n"
-"    Intended to be used from within a shell function generating possible\n"
-"    completions.  If the optional WORD argument is supplied, matches "
-"against\n"
-"    WORD are generated.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless an invalid option is supplied or an error occurs."
-
-#: builtins.c:1969
-msgid ""
-"Modify or display completion options.\n"
-"    \n"
-"    Modify the completion options for each NAME, or, if no NAMEs are "
-"supplied,\n"
-"    the completion currently being executed.  If no OPTIONs are given, "
-"print\n"
-"    the completion options for each NAME or the current completion "
-"specification.\n"
-"    \n"
-"    Options:\n"
-"    \t-o option\tSet completion option OPTION for each NAME\n"
-"    \t-D\t\tChange options for the \"default\" command completion\n"
-"    \t-E\t\tChange options for the \"empty\" command completion\n"
-"    \n"
-"    Using `+o' instead of `-o' turns off the specified option.\n"
-"    \n"
-"    Arguments:\n"
-"    \n"
-"    Each NAME refers to a command for which a completion specification must\n"
-"    have previously been defined using the `complete' builtin.  If no NAMEs\n"
-"    are supplied, compopt must be called by a function currently generating\n"
-"    completions, and the options for that currently-executing completion\n"
-"    generator are modified.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless an invalid option is supplied or NAME does not\n"
-"    have a completion specification defined."
-msgstr ""
-"Modify or display completion options.\n"
-"    \n"
-"    Modify the completion options for each NAME, or, if no NAMEs are "
-"supplied,\n"
-"    the completion currently being executed.  If no OPTIONs are given, "
-"print\n"
-"    the completion options for each NAME or the current completion "
-"specification.\n"
-"    \n"
-"    Options:\n"
-"    \t-o option\tSet completion option OPTION for each NAME\n"
-"    \t-D\t\tChange options for the “default” command completion\n"
-"    \t-E\t\tChange options for the “empty” command completion\n"
-"    \n"
-"    Using ‘+o’ instead of ‘-o’ turns off the specified option.\n"
-"    \n"
-"    Arguments:\n"
-"    \n"
-"    Each NAME refers to a command for which a completion specification must\n"
-"    have previously been defined using the ‘complete’ builtin.  If no NAMEs\n"
-"    are supplied, compopt must be called by a function currently generating\n"
-"    completions, and the options for that currently-executing completion\n"
-"    generator are modified.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless an invalid option is supplied or NAME does not\n"
-"    have a completion specification defined."
-
-#: builtins.c:1999
-msgid ""
-"Read lines from the standard input into an indexed array variable.\n"
-"    \n"
-"    Read lines from the standard input into the indexed array variable "
-"ARRAY, or\n"
-"    from file descriptor FD if the -u option is supplied.  The variable "
-"MAPFILE\n"
-"    is the default ARRAY.\n"
-"    \n"
-"    Options:\n"
-"      -n count\tCopy at most COUNT lines.  If COUNT is 0, all lines are "
-"copied.\n"
-"      -O origin\tBegin assigning to ARRAY at index ORIGIN.  The default "
-"index is 0.\n"
-"      -s count \tDiscard the first COUNT lines read.\n"
-"      -t\t\tRemove a trailing newline from each line read.\n"
-"      -u fd\t\tRead lines from file descriptor FD instead of the standard "
-"input.\n"
-"      -C callback\tEvaluate CALLBACK each time QUANTUM lines are read.\n"
-"      -c quantum\tSpecify the number of lines read between each call to "
-"CALLBACK.\n"
-"    \n"
-"    Arguments:\n"
-"      ARRAY\t\tArray variable name to use for file data.\n"
-"    \n"
-"    If -C is supplied without -c, the default quantum is 5000.  When\n"
-"    CALLBACK is evaluated, it is supplied the index of the next array\n"
-"    element to be assigned and the line to be assigned to that element\n"
-"    as additional arguments.\n"
-"    \n"
-"    If not supplied with an explicit origin, mapfile will clear ARRAY "
-"before\n"
-"    assigning to it.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless an invalid option is given or ARRAY is readonly "
-"or\n"
-"    not an indexed array."
-msgstr ""
-"Read lines from the standard input into an indexed array variable.\n"
-"    \n"
-"    Read lines from the standard input into the indexed array variable "
-"ARRAY, or\n"
-"    from file descriptor FD if the -u option is supplied.  The variable "
-"MAPFILE\n"
-"    is the default ARRAY.\n"
-"    \n"
-"    Options:\n"
-"      -n count\tCopy at most COUNT lines.  If COUNT is 0, all lines are "
-"copied.\n"
-"      -O origin\tBegin assigning to ARRAY at index ORIGIN.  The default "
-"index is 0.\n"
-"      -s count \tDiscard the first COUNT lines read.\n"
-"      -t\t\tRemove a trailing newline from each line read.\n"
-"      -u fd\t\tRead lines from file descriptor FD instead of the standard "
-"input.\n"
-"      -C callback\tEvaluate CALLBACK each time QUANTUM lines are read.\n"
-"      -c quantum\tSpecify the number of lines read between each call to "
-"CALLBACK.\n"
-"    \n"
-"    Arguments:\n"
-"      ARRAY\t\tArray variable name to use for file data.\n"
-"    \n"
-"    If -C is supplied without -c, the default quantum is 5000.  When\n"
-"    CALLBACK is evaluated, it is supplied the index of the next array\n"
-"    element to be assigned and the line to be assigned to that element\n"
-"    as additional arguments.\n"
-"    \n"
-"    If not supplied with an explicit origin, mapfile will clear ARRAY "
-"before\n"
-"    assigning to it.\n"
-"    \n"
-"    Exit Status:\n"
-"    Returns success unless an invalid option is given or ARRAY is readonly "
-"or\n"
-"    not an indexed array."
-
-#: builtins.c:2033
-msgid ""
-"Read lines from a file into an array variable.\n"
-"    \n"
-"    A synonym for `mapfile'."
-msgstr ""
-"Read lines from a file into an array variable.\n"
-"    \n"
-"    A synonym for ‘mapfile’."
diff --git a/po/readline.po b/po/readline.po
deleted file mode 100644 (file)
index 61c4da3..0000000
+++ /dev/null
@@ -1,177 +0,0 @@
-# SOME DESCRIPTIVE TITLE.
-# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
-# This file is distributed under the same license as the PACKAGE package.
-# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
-#
-#: lib/readline/bind.c:2076 lib/readline/bind.c:2078 lib/readline/bind.c:2080
-#: lib/readline/bind.c:2082 lib/readline/display.c:461
-#: lib/readline/display.c:881 lib/readline/display.c:1921
-#: lib/readline/histexpand.c:1267 lib/readline/histexpand.c:1275
-#: lib/readline/nls.c:116
-#, fuzzy
-msgid ""
-msgstr ""
-"Project-Id-Version: PACKAGE VERSION\n"
-"POT-Creation-Date: 2005-10-03 17:39-0400\n"
-"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
-"Language-Team: LANGUAGE <LL@li.org>\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=CHARSET\n"
-"Content-Transfer-Encoding: 8bit\n"
-
-#: lib/readline/bind.c:890
-#, c-format
-msgid "readline: %s: line %d: %s\n"
-msgstr ""
-
-#: lib/readline/bind.c:893
-#, c-format
-msgid "readline: %s\n"
-msgstr ""
-
-#: lib/readline/bind.c:916
-msgid "other"
-msgstr ""
-
-#: lib/readline/bind.c:1006
-msgid "$else found without matching $if"
-msgstr ""
-
-#: lib/readline/bind.c:1036
-msgid "$endif without matching $if"
-msgstr ""
-
-#: lib/readline/bind.c:1113
-msgid "unknown parser directive"
-msgstr ""
-
-#: lib/readline/bind.c:1174
-msgid "no closing `\"' in key binding"
-msgstr ""
-
-#: lib/readline/bind.c:1999
-#, c-format
-msgid "# %s (not bound)\n"
-msgstr ""
-
-#: lib/readline/bind.c:2017
-#, c-format
-msgid "%s is not bound to any keys\n"
-msgstr ""
-
-#: lib/readline/bind.c:2023
-#, c-format
-msgid "%s can be found on "
-msgstr ""
-
-#: lib/readline/bind.c:2080
-#, c-format
-msgid "%s%s outputs %s\n"
-msgstr ""
-
-#: lib/readline/bind.c:2150
-#, c-format
-msgid "%s is set to `%s'\n"
-msgstr ""
-
-#: lib/readline/bind.c:2168
-#, c-format
-msgid "bell-style is set to `%s'\n"
-msgstr ""
-
-#: lib/readline/bind.c:2174
-#, c-format
-msgid "comment-begin is set to `%s'\n"
-msgstr ""
-
-#: lib/readline/bind.c:2180
-#, c-format
-msgid "completion-query-items is set to `%d'\n"
-msgstr ""
-
-#: lib/readline/bind.c:2186
-#, c-format
-msgid "editing-mode is set to `%s'\n"
-msgstr ""
-
-#: lib/readline/bind.c:2198
-#, c-format
-msgid "isearch-terminators is set to \"%s\"\n"
-msgstr ""
-
-#: lib/readline/bind.c:2210
-#, c-format
-msgid "keymap is set to `%s'\n"
-msgstr ""
-
-#: lib/readline/callback.c:113
-msgid "readline: readline_callback_read_char() called with no handler!\r\n"
-msgstr ""
-
-#: lib/readline/complete.c:1418
-#, c-format
-msgid "Display all %d possibilities? (y or n)"
-msgstr ""
-
-#: lib/readline/complete.c:1756
-#, c-format
-msgid ""
-"\r\n"
-"readline: bad value %d for what_to_do in rl_complete\n"
-msgstr ""
-
-#: lib/readline/display.c:2061
-#, c-format
-msgid "readline: debug: insert_some_chars: count (%d) != col (%d)\n"
-msgstr ""
-
-#: lib/readline/histexpand.c:379
-msgid "event not found"
-msgstr ""
-
-#: lib/readline/histexpand.c:383
-msgid "bad word specifier"
-msgstr ""
-
-#: lib/readline/histexpand.c:387
-msgid "substitution failed"
-msgstr ""
-
-#: lib/readline/histexpand.c:391
-msgid "unrecognized history modifier"
-msgstr ""
-
-#: lib/readline/histexpand.c:395
-msgid "no previous substitution"
-msgstr ""
-
-#: lib/readline/histexpand.c:399
-msgid "unknown expansion error"
-msgstr ""
-
-#: lib/readline/isearch.c:179
-msgid "reverse-"
-msgstr ""
-
-#: lib/readline/isearch.c:183
-msgid "i-search)`"
-msgstr ""
-
-#: lib/readline/rltty.c:467
-#, c-format
-msgid "readline: warning: %s\n"
-msgstr ""
-
-#: lib/readline/rltty.c:478
-msgid "turning on OPOST for terminal\r"
-msgstr ""
-
-#: lib/readline/rltty.c:504
-msgid "turning off output flushing"
-msgstr ""
-
-#: lib/readline/xmalloc.c:47
-#, c-format
-msgid "%s: out of virtual memory\n"
-msgstr ""
diff --git a/po/t-en@quot.gmo b/po/t-en@quot.gmo
deleted file mode 100644 (file)
index d6de28a..0000000
Binary files a/po/t-en@quot.gmo and /dev/null differ
diff --git a/support/bash.icon.ps b/support/bash.icon.ps
deleted file mode 100644 (file)
index 772e63e..0000000
+++ /dev/null
@@ -1,93 +0,0 @@
-%!PS-Adobe-2.0 EPSF-2.0
-%%Title: bash.icon.ps
-%%Creator: XV Version 3.00  Rev: 3/30/93  -  by John Bradley
-%%BoundingBox: 274 372 338 420
-%%Pages: 1
-%%DocumentFonts:
-%%EndComments
-%%EndProlog
-
-%%Page: 1 1
-
-% remember original state
-/origstate save def
-
-% build a temporary dictionary
-20 dict begin
-
-% define string to hold a scanline's worth of data
-/pix 8 string def
-
-% lower left corner
-274 372 translate
-
-% size of image (on paper, in 1/72inch coords)
-64.00800 48.02400 scale
-
-% dimensions of data
-64 48 1
-
-% mapping matrix
-[64 0 0 -48 0 48]
-
-{currentfile pix readhexstring pop}
-image
-fff99ff3dfffffff
-f9e67ffd3fffffff
-67fffafefe00ffff
-9fffc73f78053fff
-bfffbbcf45d08fff
-78bf6f67177643ff
-e01efdf6eeee89ff
-8e26dfb9bbbb94ff
-bf88cde9ddddc97f
-bfe07aad777772bf
-5ffabbf8eeeee93f
-bdf545fdbbbbba5f
-777effdddddddd1f
-bffbdef97777744f
-bfafbffceeeeed2f
-ddfdffbdbbbbba47
-dbefbfd9dddddca7
-effffbfb77777657
-eeffff78000000a7
-f7efbbf7fffffc57
-73fdffb03ffc7ca7
-7ddbedc99ffe7c57
-be7fff999ffe7ca7
-dfbbb7199ffe7c57
-afdff89998e21ca7
-6ff01788325a0c57
-f3ffff899e4e4ca7
-ff7ffe1998424c57
-ff9dfd9992724ca7
-ffe3c399925a4c57
-ffffbf90384644a7
-ffdff99ffffffc57
-ffdffd80000000a7
-ffbffeb777777657
-ffffffaeeeeeeea7
-ffffffbbbbbbba57
-ffffff9ddddddca6
-ffffffb777777652
-fffff7aeeeeeeea2
-fffff7bbbbbbba54
-fffff39cddddcc04
-fffb639657756650
-feb0952ea6a82600
-7c4a850a22a0a204
-bb268a14d5451402
-23b38c000000002a
-8a2b650ad48a8b3c
-443d6a74a28acb4c
-
-
-showpage
-
-% stop using temporary dictionary
-end
-
-% restore original state
-origstate restore
-
-%%Trailer
diff --git a/support/bash.install b/support/bash.install
deleted file mode 100644 (file)
index 6829b4f..0000000
+++ /dev/null
@@ -1,32 +0,0 @@
-#! /bin/sh
-PATH=/bin:/usr/bin:/sbin:/usr/sbin:/usr/ucb:/usr/lib:/usr/etc:/etc
-
-PROG=bash
-O=root
-NEWDIR=$HOME/install
-MODE=0755
-
-if [ -f /bsd ]; then
-       NEWVERS=$NEWDIR/bash.bsd386
-       DEST=/bin
-       O=bin
-       G=bin
-elif [ -d /usr/ibm ]; then
-       NEWVERS=$NEWDIR/bash.ibm032
-       DEST=/bin
-       G=staff
-else
-       NEWVERS=$NEWDIR/bash.sun4
-       DEST=/bin
-       G=staff
-fi
-
-install -c -o ${O} -g ${G} -m ${MODE} -s ${NEWVERS} ${DEST}/${PROG}.new
-
-# swap new and old version; save old version as ${PROG}.old
-cd $DEST
-rm -f ${PROG}.old
-mv ${PROG} ${PROG}.old
-mv ${PROG}.new ${PROG}
-
-exit 0
diff --git a/support/bash.xv b/support/bash.xv
deleted file mode 100644 (file)
index 35d5690..0000000
+++ /dev/null
@@ -1,35 +0,0 @@
-#define bash_width 64
-#define bash_height 48
-static char bash_bits[] = {
-   0x00, 0x60, 0x06, 0x30, 0x04, 0x00, 0x00, 0x00, 0x60, 0x98, 0x01, 0x40,
-   0x03, 0x00, 0x00, 0x00, 0x19, 0x00, 0xa0, 0x80, 0x80, 0xff, 0x00, 0x00,
-   0x06, 0x00, 0x1c, 0x03, 0xe1, 0x5f, 0x03, 0x00, 0x02, 0x00, 0x22, 0x0c,
-   0x5d, 0xf4, 0x0e, 0x00, 0xe1, 0x02, 0x09, 0x19, 0x17, 0x91, 0x3d, 0x00,
-   0xf8, 0x87, 0x40, 0x90, 0x88, 0x88, 0x6e, 0x00, 0x8e, 0x9b, 0x04, 0x62,
-   0x22, 0x22, 0xd6, 0x00, 0x02, 0xee, 0x4c, 0x68, 0x44, 0x44, 0x6c, 0x01,
-   0x02, 0xf8, 0xa1, 0x4a, 0x11, 0x11, 0xb1, 0x02, 0x05, 0xa0, 0x22, 0xe0,
-   0x88, 0x88, 0x68, 0x03, 0x42, 0x50, 0x5d, 0x40, 0x22, 0x22, 0xa2, 0x05,
-   0x11, 0x81, 0x00, 0x44, 0x44, 0x44, 0x44, 0x07, 0x02, 0x20, 0x84, 0x60,
-   0x11, 0x11, 0xd1, 0x0d, 0x02, 0x0a, 0x02, 0xc0, 0x88, 0x88, 0x48, 0x0b,
-   0x44, 0x40, 0x00, 0x42, 0x22, 0x22, 0xa2, 0x1d, 0x24, 0x08, 0x02, 0x64,
-   0x44, 0x44, 0xc4, 0x1a, 0x08, 0x00, 0x20, 0x20, 0x11, 0x11, 0x91, 0x15,
-   0x88, 0x00, 0x00, 0xe1, 0xff, 0xff, 0xff, 0x1a, 0x10, 0x08, 0x22, 0x10,
-   0x00, 0x00, 0xc0, 0x15, 0x31, 0x40, 0x00, 0xf2, 0x03, 0xc0, 0xc1, 0x1a,
-   0x41, 0x24, 0x48, 0x6c, 0x06, 0x80, 0xc1, 0x15, 0x82, 0x01, 0x00, 0x66,
-   0x06, 0x80, 0xc1, 0x1a, 0x04, 0x22, 0x12, 0x67, 0x06, 0x80, 0xc1, 0x15,
-   0x0a, 0x04, 0xe0, 0x66, 0xe6, 0xb8, 0xc7, 0x1a, 0x09, 0xf0, 0x17, 0xee,
-   0xb3, 0xa5, 0xcf, 0x15, 0x30, 0x00, 0x00, 0x6e, 0x86, 0x8d, 0xcd, 0x1a,
-   0x00, 0x01, 0x80, 0x67, 0xe6, 0xbd, 0xcd, 0x15, 0x00, 0x46, 0x40, 0x66,
-   0xb6, 0xb1, 0xcd, 0x1a, 0x00, 0x38, 0x3c, 0x66, 0xb6, 0xa5, 0xcd, 0x15,
-   0x00, 0x00, 0x02, 0xf6, 0xe3, 0x9d, 0xdd, 0x1a, 0x00, 0x04, 0x60, 0x06,
-   0x00, 0x00, 0xc0, 0x15, 0x00, 0x04, 0x40, 0xfe, 0xff, 0xff, 0xff, 0x1a,
-   0x00, 0x02, 0x80, 0x12, 0x11, 0x11, 0x91, 0x15, 0x00, 0x00, 0x00, 0x8a,
-   0x88, 0x88, 0x88, 0x1a, 0x00, 0x00, 0x00, 0x22, 0x22, 0x22, 0xa2, 0x15,
-   0x00, 0x00, 0x00, 0x46, 0x44, 0x44, 0xc4, 0x9a, 0x00, 0x00, 0x00, 0x12,
-   0x11, 0x11, 0x91, 0xb5, 0x00, 0x00, 0x10, 0x8a, 0x88, 0x88, 0x88, 0xba,
-   0x00, 0x00, 0x10, 0x22, 0x22, 0x22, 0xa2, 0xd5, 0x00, 0x00, 0x30, 0xc6,
-   0x44, 0x44, 0xcc, 0xdf, 0x00, 0x20, 0x39, 0x96, 0x15, 0x51, 0x99, 0xf5,
-   0x80, 0xf2, 0x56, 0x8b, 0x9a, 0xea, 0x9b, 0xff, 0xc1, 0xad, 0x5e, 0xaf,
-   0xbb, 0xfa, 0xba, 0xdf, 0x22, 0x9b, 0xae, 0xd7, 0x54, 0x5d, 0xd7, 0xbf,
-   0x3b, 0x32, 0xce, 0xff, 0xff, 0xff, 0xff, 0xab, 0xae, 0x2b, 0x59, 0xaf,
-   0xd4, 0xae, 0x2e, 0xc3, 0xdd, 0x43, 0xa9, 0xd1, 0xba, 0xae, 0x2c, 0xcd};
diff --git a/support/copyright-comment b/support/copyright-comment
deleted file mode 100644 (file)
index 83f7544..0000000
+++ /dev/null
@@ -1,13 +0,0 @@
-   Bash is free software: you can redistribute it and/or modify
-   it under the terms of the GNU General Public License as published by
-   the Free Software Foundation, either version 3 of the License, or
-   (at your option) any later version.
-
-   Bash 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 General Public License for more details.
-
-   You should have received a copy of the GNU General Public License
-   along with Bash.  If not, see <http://www.gnu.org/licenses/>.
-*/
diff --git a/support/copyright-def b/support/copyright-def
deleted file mode 100644 (file)
index 1d083e4..0000000
+++ /dev/null
@@ -1,12 +0,0 @@
-Bash is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 3 of the License, or
-(at your option) any later version.
-
-Bash 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 General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with Bash.  If not, see <http://www.gnu.org/licenses/>.
diff --git a/support/copyright-makefile b/support/copyright-makefile
deleted file mode 100644 (file)
index e9f3fab..0000000
+++ /dev/null
@@ -1,13 +0,0 @@
-#   This program is free software: you can redistribute it and/or modify
-#   it under the terms of the GNU General Public License as published by
-#   the Free Software Foundation, either version 3 of the License, or
-#   (at your option) any later version.
-#
-#   This program 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 General Public License for more details.
-#
-#   You should have received a copy of the GNU General Public License
-#   along with this program.  If not, see <http://www.gnu.org/licenses/>.
-#
diff --git a/support/deblank.sh b/support/deblank.sh
deleted file mode 100644 (file)
index c226139..0000000
+++ /dev/null
@@ -1,2 +0,0 @@
-#! /bin/sh
-perl -pi -e 's/[ \t]+$//;' "$@"
diff --git a/support/endian.c b/support/endian.c
deleted file mode 100644 (file)
index 3c92ae8..0000000
+++ /dev/null
@@ -1,150 +0,0 @@
-/* endian.c -- A trick for determining the byte order of a machine. */
-
-/* Copyright (C) 1993 Free Software Foundation, Inc.
-
-   This file is part of GNU Bash, the Bourne Again SHell.
-
-   Bash is free software: you can redistribute it and/or modify
-   it under the terms of the GNU General Public License as published by
-   the Free Software Foundation, either version 3 of the License, or
-   (at your option) any later version.
-
-   Bash 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 General Public License for more details.
-
-   You should have received a copy of the GNU General Public License
-   along with Bash.  If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#include "config.h"
-
-#include <sys/types.h>
-#include <stdio.h>
-#include "bashansi.h"
-
-/* The name of this program, as taken from argv[0]. */
-char *progname;
-
-/* The name of the source file that this code is made from. */
-char source_name[256];
-
-/* The name of the define.  Either "BIG_ENDIAN" or "LITTLE_ENDIAN". */
-char *endian_define;
-
-char string[9];
-char nstring[9];
-
-/* Stuff "1234" into a long, and compare it against a character string
-   "1234".  If the results are EQ, the machine is big endian like a 68000
-   or Sparc, otherwise it is little endian, like a Vax, or 386. */
-main (argc, argv)
-     int argc;
-     char **argv;
-{
-#if defined (__STDC__)
-  register size_t i;
-#else
-  register int i;
-#endif /* !__STDC__ */
-  FILE *stream = (FILE *)NULL;
-  char *stream_name = "stdout";
-  union {
-      unsigned long l;
-      char s[sizeof (long)];
-  } u;
-
-  progname = argv[0];
-
-  for (i = strlen (progname); i > 0; i--)
-    if (progname[i] == '/')
-      {
-       progname = progname + i + 1;
-       break;
-      }
-
-  strcpy (source_name, progname);
-  for (i = strlen (source_name); i > 0; i--)
-    if (source_name[i] == '.')
-      {
-       source_name[i] = '\0';
-       break;
-      }
-
-  strcat (source_name, ".c");
-
-  if (argc == 1)
-    {
-      stream_name = "stdout";
-      stream = stdout;
-    }
-  else if (argc == 2)
-    {
-      stream_name = argv[1];
-      stream = fopen (stream_name, "w");
-    }
-  else
-    {
-      fprintf (stderr, "Usage: %s [output-file]\n", progname);
-      exit (1);
-    }
-
-  if (!stream)
-    {
-      fprintf (stderr, "%s: %s Cannot be opened or written to.\n",
-              progname, stream_name);
-      exit (2);
-    }
-
-  if (sizeof (long int) == 4)
-    {
-      u.l = 0x04030201L;
-      (void) strcpy (string, "4321");
-    }
-  else if (sizeof (long int) == 8)
-    {
-#if defined (__GNUC__)
-      unsigned long fake_out_gcc;
-
-      fake_out_gcc = (0x08070605L << 31);
-      fake_out_gcc = (fake_out_gcc << 1);
-      u.l = fake_out_gcc | 0x04030201L;
-#else
-      u.l = (0x08070605L << 32) | 0x04030201L;
-#endif /* !__GNUC__ */
-      (void) strcpy (string, "87654321");
-    }
-  else
-    {
-      fprintf (stderr,
-              "%s: sizeof (long int) = %d, which isn't handled here.\n",
-              progname, sizeof (long int));
-      exit (2);
-    }
-
-  for (i = 0; i < sizeof (long); i++)
-    nstring[i] = u.s[i] + '0';
-  nstring[i] = '\0';
-
-  if (strcmp (nstring, string) == 0)
-    endian_define = "BIG_ENDIAN";
-  else
-    endian_define = "LITTLE_ENDIAN";
-
-  fprintf (stream, "/* %s - Define BIG or LITTLE endian. */\n\n", stream_name);
-  fprintf (stream,
-"/* This file was automatically created by `%s'.  You shouldn't\n\
-   edit this file, because your changes will be overwritten.  Instead,\n\
-   edit the source code file `%s'. */\n\n",
-          progname, source_name);
-
-  fprintf (stream, "#if !defined (%s)\n", endian_define);
-  fprintf (stream, "#  define %s\n", endian_define);
-  fprintf (stream, "#endif /* %s */\n", endian_define);
-
-  if (stream != stdout)
-    fclose (stream);
-
-  exit (0);
-}
diff --git a/support/mail-shell b/support/mail-shell
deleted file mode 100644 (file)
index 09ed155..0000000
+++ /dev/null
@@ -1,127 +0,0 @@
-#! /bin/bash
-#
-# mail-shell -- mail out the shell
-#
-# usage: mail-shell -t tarball recipient
-#
-# Chet Ramey
-# chet@ins.CWRU.Edu
-#
-
-# Copyright (C) 1995-2009 by Chester Ramey
-#
-#   This program is free software: you can redistribute it and/or modify
-#   it under the terms of the GNU General Public License as published by
-#   the Free Software Foundation, either version 3 of the License, or
-#   (at your option) any later version.
-#
-#   This program 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 General Public License for more details.
-#
-#   You should have received a copy of the GNU General Public License
-#   along with this program.  If not, see <http://www.gnu.org/licenses/>.
-#
-
-
-PATH=/usr/ucb:/bin:/usr/bin:/usr/local/bin/gnu:/usr/local/bin:.
-
-trap 'rm -f x?? ${UUFILE}' 0 1 2 3 6 15
-
-prog=`basename $0`
-
-TARFILE=bash.tar
-VERS=2.05b
-
-while getopts t: opt
-do
-       case $opt in
-       t)      TARFILE=$OPTARG ;;
-       *)      echo usage: $prog [ -t tarfile ] recipient 1>&2
-               exit 1
-       esac
-done
-
-shift $(( $OPTIND - 1 ))
-
-case "$TARFILE" in
-bash-*.tar)    VERS=${TARFILE%%.tar} ; VERS=${VERS#bash-} ;;
-esac
-
-GZFILE=${TARFILE}.gz
-UUFILE=${GZFILE}.uu
-
-if [ $# -ne 1 ] ; then
-       echo usage: $0 recipient
-       exit 1
-fi
-
-recip=$1
-i=1
-
-if [ ! -f ${TARFILE} ] && [ ! -f ${GZFILE} ]; then
-       echo "$prog: no file ${TARFILE}, aborting"
-       exit 1
-fi
-
-if [ ! -f ${GZFILE} ] ; then
-       echo "$prog: no gzipped tar file ${GZFILE}"
-       echo "$prog: gzipping ${TARFILE}"
-       gzip ${TARFILE}
-fi
-
-if [ ! -f ${UUFILE} ] ; then
-       echo "$prog: no uuencoded tar file ${UUFILE}"
-       echo "$prog: uuencoding ${GZFILE}"
-       uuencode ${GZFILE} < ${GZFILE} > ${UUFILE}
-fi
-
-files=$(echo x??)
-
-if [ "$files" = 'x??' ] ; then
-       echo "$prog: no split of ${UUFILE} exists"
-       echo "$prog: splitting ${UUFILE}"
-       split ${UUFILE}
-fi
-
-count()
-{
-       echo $#
-}
-
-parts=$(count x??)
-
-if [ -x /usr/ucb/mail ]; then
-       MAIL=/usr/ucb/mail
-elif [ -x /usr/ucb/Mail ]; then
-       MAIL=/usr/ucb/Mail
-elif [ -x /usr/bin/mailx ]; then
-       MAIL=/usr/bin/mailx
-elif [ -x /usr/bin/mail ]; then
-       MAIL=/usr/bin/mail
-else
-       MAIL=/bin/mail
-fi
-
-$MAIL -s "bash-${VERS} shipment coming" $recip <<EOF
-
-Hi.  Here is version ${VERS} of bash.  Expect $parts messages.
-Each is part of a uuencoded tar file of the bash sources.  When
-you get all $parts messages, cat them all together into the file
-${UUFILE}, and run uudecode on this file.  You will have a
-gzipped tar file named ${GZFILE}.  gunzip it, cd into a source
-directory (the tar archive extracts into its own directory), and
-untar.
-
-Chet
-EOF
-
-for file in x??
-do
-       echo mailing part $i to $recip
-       /usr/ucb/mail -s "${UUFILE} part $i of $parts" $recip < $file
-       i=$(( $i + 1 ))
-done
-
-exit 0
diff --git a/support/memtest.c b/support/memtest.c
deleted file mode 100644 (file)
index 39ffd0f..0000000
+++ /dev/null
@@ -1,151 +0,0 @@
-/*
- * malloc test program.
- *
- * to build:
- *     make x.o
- *     gcc -g -o x x.o xmalloc.o lib/malloc/libmalloc.a
- */
-
-/* Copyright (C) 2002 Free Software Foundation, Inc.
-
-   This file is part of GNU Bash, the Bourne Again SHell.
-
-   Bash is free software: you can redistribute it and/or modify
-   it under the terms of the GNU General Public License as published by
-   the Free Software Foundation, either version 3 of the License, or
-   (at your option) any later version.
-
-   Bash 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 General Public License for more details.
-
-   You should have received a copy of the GNU General Public License
-   along with Bash.  If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#include <stdio.h>
-#include <stdarg.h>
-#include <stdlib.h>
-
-#define USING_BASH_MALLOC
-#define HAVE_STRINGIZE
-
-#include "xmalloc.h"
-
-int interrupt_immediately = 0;
-
-static char    xp[64];
-
-main(int c, char **v)
-{
-       char    *p;
-
-       malloc_set_register(1);
-
-#if 0
-       free (xp);      /* free unallocated memory */
-#endif
-
-#if 0
-       p = xrealloc(xp, 128);
-#endif
-
-#if 0
-       /*
-        * request an amount so that the bucket changes when the malloc
-        * overhead is added to the requested size.  This had better
-        * succeed.
-        */
-       p = xmalloc(25);
-       p[0] = 'a';
-       p[1] = '\0';
-       free(p);        /* sanity check on underflow checks in free() */
-#endif
-
-#if 0
-       p = xmalloc(28);
-       /* This works for little-endian machines like i386. */
-       p[-4] = '\7';   /* underflow */
-       p = xrealloc(p, 128);   /* realloc corrupted memory */
-#endif
-
-#if 0
-       p = xmalloc(28);
-       /* This works for little-endian machines like i386. */
-       p[-4] = '\7';   /* underflow */
-       free(p);
-#endif
-
-#if 0
-       p = xmalloc(2);
-       free(p);
-       free(p);        /* duplicate free */
-#endif
-
-#if 0
-       p = xmalloc(32);
-       free(p);
-       p = xrealloc(p, 128);   /* realloc freed mem */
-#endif
-
-#if 0
-       p = xmalloc(64);
-       p[64] = '\0';
-       p = xrealloc(p, 128);   /* overflow */
-#endif
-
-#if 0
-       p = xmalloc(64);
-       p[64] = '\0';
-       free(p);                /* overflow */
-#endif
-
-#if 0
-       p = xmalloc(64);
-       p[-1] = 'a';
-       free (p);               /* underflow */
-#endif
-
-#if 0
-       p = xmalloc(64);
-       p[-1] = 'a';
-       p = xrealloc(p, 129);   /* underflow */
-#endif
-
-       mregister_dump_table();
-       exit(0);
-}
-
-void
-fatal_error(const char *format, ...)
-{
-       va_list args;
-
-       fprintf(stderr, "malloc-test: ");
-       va_start(args, format);
-       vfprintf(stderr, format, args);
-       fprintf(stderr, "\n");
-       va_end(args);
-       exit(2);
-}
-
-void
-programming_error(const char *format, ...)
-{
-       va_list args;
-
-       fprintf(stderr, "malloc-test: ");
-       va_start(args, format);
-       vfprintf(stderr, format, args);
-       fprintf(stderr, "\n");
-       va_end(args);
-
-       abort();
-}
-
-int
-signal_is_trapped(int n)
-{
-       return 0;
-}
diff --git a/support/mk-takehome b/support/mk-takehome
deleted file mode 100755 (executable)
index c9126cc..0000000
+++ /dev/null
@@ -1,57 +0,0 @@
-#! /bin/bash
-
-DATE=$(date +%Y%m%d)
-
-PARENT=/fs2/chet/bash
-FROOT=bash-$DATE
-DIR=$PARENT/$FROOT
-TARF=${FROOT}.tar
-SRC=/usr/homes/chet/src/bash/src
-
-fflag= sflag=
-while getopts "fs" opt
-do
-       case $opt in
-       f)      fflag=1 ;;
-       s)      sflag=1 ;;
-       *)      echo "mk-takehome: usage: mk-takehome [-fs]" 2>&1
-               exit 2;;
-       esac
-done
-
-shift $(($OPTIND - 1))
-
-if [ -n "$fflag" ]; then
-       rm -rf "$DIR"
-fi
-
-mkdir $DIR || exit 1
-
-cd $DIR || exit 1
-
-cd $SRC || exit 1
-
-tar cf - . | (cd $DIR ; tar xvpf - )
-
-cd $DIR || exit 1
-
-find . -type f -name '*~' -print | xargs rm -f
-
-find . -type d -name 'savedir' -print | xargs rm -rf
-
-rm parser-built y.tab.c y.tab.h
-# bison -y -d parse.y          # make sure y.tab.h present for dependencies
-
-rm -f d d? ddd ddd?            # convention for temp diff files
-
-cd $PARENT || exit 1
-
-tar cvf ${TARF} $FROOT
-
-gzip -v ${TARF}
-
-REMHOST=z4
-
-if [ -n "$sflag" ]; then
-       scp ${TARF}.gz ${REMHOST}:
-fi
diff --git a/support/mkdep b/support/mkdep
deleted file mode 100755 (executable)
index a79c90a..0000000
+++ /dev/null
@@ -1,102 +0,0 @@
-#!/bin/sh -
-#
-#      BSDI $Id: mkdep.gcc.sh,v 2.1 1995/02/03 12:54:13 polk Exp $
-#
-# Copyright (c) 1991, 1993
-#      The Regents of the University of California.  All rights reserved.
-#
-# Redistribution and use in source and binary forms, with or without
-# modification, are permitted provided that the following conditions
-# are met:
-# 1. Redistributions of source code must retain the above copyright
-#    notice, this list of conditions and the following disclaimer.
-# 2. Redistributions in binary form must reproduce the above copyright
-#    notice, this list of conditions and the following disclaimer in the
-#    documentation and/or other materials provided with the distribution.
-# 3. All advertising materials mentioning features or use of this software
-#    must display the following acknowledgement:
-#      This product includes software developed by the University of
-#      California, Berkeley and its contributors.
-# 4. Neither the name of the University nor the names of its contributors
-#    may be used to endorse or promote products derived from this software
-#    without specific prior written permission.
-#
-# THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
-# ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-# ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
-# FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
-# DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
-# OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
-# HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
-# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
-# OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
-# SUCH DAMAGE.
-#
-#      @(#)mkdep.gcc.sh        8.1 (Berkeley) 6/6/93
-#
-
-PATH=/bin:/usr/bin:/usr/gnu/bin:/usr/local/bin:/usr/local/bin/gnu
-export PATH
-
-cpp=${CPP:-gcc}
-#trad="-notraditional"
-
-D=depends                      # default dependency file is depends
-append=0
-pflag=
-
-usage()
-{
-       echo 'usage: mkdep [-t] [-p] [-f depend_file] [-c compiler] [cc_flags] file ...' >&2
-}
-
-while getopts "2af:c:pt" opt; do
-       case "$opt" in
-       # -2 => gcc2 -- this option is temporary, hence not documented
-       2)      cpp=${CPP:-gcc2} ; trad= ;;
-       # -a appends to the depend file
-       a)      append=1;;
-       # -c specifies the compiler to use
-       c)      CPP=$OPTARG ;;
-       # -f allows you to select a makefile name
-       f)      D=$OPTARG ;;
-       # the -p flag produces "program: program.c" style dependencies
-       # so .o's don't get produced
-       p)      pflag=p ;;
-       # -t means use -traditional with gnu cpp
-       t)      trad="-traditional" ;;
-       \?)     usage ; exit 2;;
-       esac
-done
-
-shift $(( $OPTIND - 1 ))
-
-if [ $# = 0 ] ; then
-       usage
-       exit 1
-fi
-
-TMP=/tmp/mkdep$$
-
-trap 'rm -f $TMP ; exit 1' 1 2 3 13 15
-
-if [ x$pflag = x ]; then
-       $cpp $trad -M $* | sed -e 's; \./; ;g' > $TMP
-else
-       $cpp $trad -M $* | sed -e 's;\.o *:;:;' -e 's; \./; ;g' > $TMP
-fi
-
-if [ $? != 0 ]; then
-       echo 'mkdep: compile failed.'
-       rm -f $TMP
-       exit 1
-fi
-
-if [ $append = 1 ]; then
-       cat $TMP >> $D
-       rm -f $TMP
-else
-       mv $TMP $D
-fi
-exit 0
diff --git a/support/mkdist b/support/mkdist
deleted file mode 100755 (executable)
index 282431d..0000000
+++ /dev/null
@@ -1,129 +0,0 @@
-#! /bin/bash -
-#
-# mkdist - make a distribution directory from a master manifest file
-#
-# usage: mkdist [-m manifest] [-s srcdir] [-r rootname] [-t] [-v] version
-#
-# SRCDIR defaults to src
-# MANIFEST defaults to $SRCDIR/MANIFEST
-#
-# Chet Ramey
-# chet@po.cwru.edu
-
-# Copyright (C) 1996-2002 Free Software Foundation, Inc.
-#
-#   This program is free software: you can redistribute it and/or modify
-#   it under the terms of the GNU General Public License as published by
-#   the Free Software Foundation, either version 3 of the License, or
-#   (at your option) any later version.
-#
-#   This program 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 General Public License for more details.
-#
-#   You should have received a copy of the GNU General Public License
-#   along with this program.  If not, see <http://www.gnu.org/licenses/>.
-#
-
-SRCDIR=src
-ROOTNAME=bash
-
-usage()
-{
-       echo usage: mkdist [-m manifest] [-s srcdir] [-r rootname] [-t] [-v] version 1>&2
-       exit 2
-}
-
-vmsg()
-{
-       if [ -n "$verbose" ]; then
-               echo mkdist: "$@"
-       fi
-}
-
-while getopts m:s:r:tv name
-do
-       case $name in
-       m)      MANIFEST=$OPTARG ;;
-       s)      SRCDIR=$OPTARG ;;
-       r)      ROOTNAME=$OPTARG ;;
-       t)      maketar=yes ;;
-       v)      verbose=yes ;;
-       ?)      usage ;;
-       esac
-done
-
-: ${MANIFEST:=$SRCDIR/MANIFEST}
-
-vmsg using $MANIFEST
-
-shift $(( $OPTIND - 1 ))
-
-if [ $# -lt 1 ]; then
-       usage
-fi
-
-version=$1
-newdir=${ROOTNAME}-$version
-
-tarfile=${newdir}.tar
-
-vmsg creating distribution for $ROOTNAME version $version in $newdir
-
-if [ ! -d $newdir ]; then
-       mkdir $newdir || { echo $0: cannot make directory $newdir 1>&2 ; exit 1; }
-fi
-
-dirmode=755
-filmode=644
-
-while read fname type mode
-do
-       [ -z "$fname" ] && continue
-
-       case "$fname" in
-       \#*)    continue ;;
-       esac
-
-       case "$type" in
-       d)      mkdir $newdir/$fname ;;
-       f)      cp -p $SRCDIR/$fname $newdir/$fname ;;
-       s)      ln -s $mode $newdir/$fname ; mode= ;;           # symlink
-       l)      ln $mode $newdir/$fname ; mode= ;;              # hard link
-       *)      echo "unknown file type $type" 1>&2 ;;
-       esac
-
-       if [ -n "$mode" ]; then
-               chmod $mode $newdir/$fname
-       fi
-
-done < $MANIFEST
-
-# cut off the `-alpha' in something like `2.0-alpha', leaving just the
-# numeric version
-#version=${version%%-*}
-
-#case "$version" in
-#*.*.*)        vers=${version%.*} ;;
-#*.*)  vers=${version} ;;
-#esac
-
-#echo $vers > $newdir/.distribution
-
-#case "$version" in
-#*.*.*)        plevel=${version##*.} ;;
-#*)    plevel=0 ;;
-#esac
-#[ -z "$plevel" ] && plevel=0
-#echo ${plevel} > $newdir/.patchlevel
-
-vmsg $newdir created
-
-if [ -n "$maketar" ]; then
-       tar cf ${tarfile} $newdir
-       gzip $tarfile
-       vmsg ${tarfile}.gz created
-fi
-
-exit 0
diff --git a/support/mkdocdist b/support/mkdocdist
deleted file mode 100755 (executable)
index 8cd414c..0000000
+++ /dev/null
@@ -1,101 +0,0 @@
-#! /bin/bash -
-#
-# mkdocdist - make a distribution directory containing formatted
-#            documentation from a master manifest file
-#
-# usage: mkdocdist [-m manifest] [-s srcdir] [-r rootname] [-v] version
-#
-# SRCDIR defaults to src
-# MANIFEST defaults to $SRCDIR/MANIFEST.doc
-#
-# Chet Ramey
-# chet@po.cwru.edu
-
-# Copyright (C) 1996-2002 Free Software Foundation, Inc.
-#
-#   This program is free software: you can redistribute it and/or modify
-#   it under the terms of the GNU General Public License as published by
-#   the Free Software Foundation, either version 3 of the License, or
-#   (at your option) any later version.
-#
-#   This program 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 General Public License for more details.
-#
-#   You should have received a copy of the GNU General Public License
-#   along with this program.  If not, see <http://www.gnu.org/licenses/>.
-#
-
-SRCDIR=src
-ROOTNAME=bash-doc
-
-usage()
-{
-       echo usage: mkdocdist [-m manifest] [-s srcdir] [-r rootname] [-v] version 1>&2
-       exit 2
-}
-
-vmsg()
-{
-       if [ -n "$verbose" ]; then
-               echo mkdocdist: "$@"
-       fi
-}
-
-while getopts m:s:r:v name
-do
-       case $name in
-       m)      MANIFEST=$OPTARG ;;
-       s)      SRCDIR=$OPTARG ;;
-       r)      ROOTNAME=$OPTARG ;;
-       v)      verbose=yes ;;
-       ?)      usage ;;
-       esac
-done
-
-: ${MANIFEST:=$SRCDIR/MANIFEST.doc}
-
-vmsg using $MANIFEST
-
-shift $(( $OPTIND - 1 ))
-
-if [ $# -lt 1 ]; then
-       usage
-fi
-
-version=$1
-newdir=${ROOTNAME}-$version
-
-vmsg creating documentation distribution for $ROOTNAME version $version in $newdir
-
-if [ ! -d $newdir ]; then
-       mkdir $newdir || { echo $0: cannot make directory $newdir 1>&2 ; exit 1; }
-fi
-
-dirmode=755
-filmode=644
-
-while read fname type mode
-do
-       [ -z "$fname" ] && continue
-
-       case "$fname" in
-       \#*)    continue ;;
-       esac
-
-       case "$type" in
-       d)      mkdir $newdir/$fname ;;
-       f)      cp -p $SRCDIR/$fname $newdir/$fname ;;
-       *)      echo "unknown file type $type" 1>&2 ;;
-       esac
-
-       if [ -n "$mode" ]; then
-               chmod $mode $newdir/$fname
-       fi
-
-done < $MANIFEST
-
-vmsg $newdir created
-
-exit 0
diff --git a/support/mknewvers.sh b/support/mknewvers.sh
deleted file mode 100644 (file)
index da74f74..0000000
+++ /dev/null
@@ -1,113 +0,0 @@
-#! /bin/bash
-#
-# Simple program to make new version files for the shell.
-#
-# Chet Ramey
-# chet@po.cwru.edu
-
-# Copyright (C) 1996-2002 Free Software Foundation, Inc.
-#
-#   This program is free software: you can redistribute it and/or modify
-#   it under the terms of the GNU General Public License as published by
-#   the Free Software Foundation, either version 3 of the License, or
-#   (at your option) any later version.
-#
-#   This program 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 General Public License for more details.
-#
-#   You should have received a copy of the GNU General Public License
-#   along with this program.  If not, see <http://www.gnu.org/licenses/>.
-#
-
-PROGNAME=`basename $0`
-USAGE="$PROGNAME [-M] [-m] [-p] [version]"
-
-while [ $# -gt 0 ]; do
-       case "$1" in
-       -n)     shift; debug=yes;;
-       -M)     shift; major_version=yes ;;
-       -m)     shift; minor_version=yes ;;
-       -p)     shift; patch_level=yes ;;
-       -*)     echo "$PROGNAME: usage: $USAGE" >&2 ; exit 2 ;;
-       *)      break;;
-       esac
-done
-
-if [ -n "$1" ]; then
-       NEWVERSION="$1";
-fi
-
-DISTFILE=_distribution
-PATCHFILE=_patchlevel
-
-dist_version=`cat $DISTFILE`
-PATCH=`cat $PATCHFILE`
-
-# making new version files from a new version argument
-if [ -n "$NEWVERSION" ]; then
-       case "$NEWVERSION" in
-       *.*.*)  PATCH=${NEWVERSION##*.} ;;
-       *)      PATCH=0 ;;
-       esac
-
-       case "$NEWVERSION" in
-       *.*.*)  vers=${NEWVERSION%.*} ;;
-       *)      vers=${NEWVERSION} ;;
-       esac
-
-       case "$vers" in
-       *.*)    MAJOR=${vers%.*} MINOR=${vers##*.} ;;
-       *)      MAJOR=${vers} MINOR=0 ;;
-       esac
-
-       if [ -n "$debug" ]; then
-               echo "echo ${MAJOR}.${MINOR} > $DISTFILE"
-               echo "echo ${PATCH} > $PATCHFILE"
-       else
-               echo ${MAJOR}.${MINOR} > $DISTFILE
-               echo ${PATCH} > $PATCHFILE
-       fi
-
-       echo "$PROGNAME: running autoconf..."
-       autoconf
-
-       exit 0
-fi
-
-case "$dist_version" in
-*.*.*) vers=${dist_version%.*} ;;
-*.*)   vers=${dist_version} ;;
-esac
-
-case "$vers" in
-*.*)   MAJOR=${vers%.*} MINOR=${vers##*.} ;;
-*)     MAJOR=${vers} MINOR=0 ;;
-esac
-
-# incrementing the major version
-if [ -n "$major_version" ]; then
-       MAJOR=`expr $MAJOR + 1`
-fi
-
-if [ -n "$minor_version" ]; then
-       $MINOR=`echo $minor_version | awk '{printf "%02d\n", $1+1}'`
-fi
-       
-if [ -n "$patch_level" ]; then
-       PATCH=`expr $PATCH + 1`
-fi
-
-if [ -n "$debug" ]; then
-       echo "echo ${MAJOR}.${MINOR} > $DISTFILE"
-       echo "echo ${PATCH} > $PATCHFILE"
-else
-       echo ${MAJOR}.${MINOR} > $DISTFILE
-       echo ${PATCH} > $PATCHFILE
-fi
-
-echo "$PROGNAME: running autoconf..."
-autoconf
-
-exit 0
diff --git a/support/mksnap b/support/mksnap
deleted file mode 100755 (executable)
index ed487da..0000000
+++ /dev/null
@@ -1,59 +0,0 @@
-#! /bin/bash -
-#
-# mksnap -- make a snapshot copy of the bash source tree in a new directory
-#          named by the date
-#
-# Chet Ramey
-# chet@po.cwru.edu
-
-# Copyright (C) 1996-2002 by Chester Ramey
-#
-#   This program is free software: you can redistribute it and/or modify
-#   it under the terms of the GNU General Public License as published by
-#   the Free Software Foundation, either version 3 of the License, or
-#   (at your option) any later version.
-#
-#   This program 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 General Public License for more details.
-#
-#   You should have received a copy of the GNU General Public License
-#   along with this program.  If not, see <http://www.gnu.org/licenses/>.
-#
-
-SRCDIR="src"
-SRCARG="-s src"
-ROOTNAME="-r bash"
-
-usage()
-{
-       echo usage: mksnap [-m manifest] [-s srcdir] [-r rootname] [-v] 1>&2
-       exit 2
-}
-
-vmsg()
-{
-       if [ -n "$verbose" ]; then
-               echo mksnap: "$@"
-       fi
-}
-
-while getopts m:s:r:v name
-do
-       case $name in
-       m)      MANIFEST="-m $OPTARG" ;;
-       s)      SRCDIR="$OPTARG" SRCARG="-s $OPTARG" ;;
-       r)      ROOTNAME="-r $OPTARG" ;;
-       v)      verbose=-v ;;
-       ?)      usage ;;
-       esac
-done
-
-VERSION=`date "+%Y%m%d"`
-
-vmsg calling mkdist $verbose
-
-/bin/bash $SRCDIR/support/mkdist $verbose $SRCARG $MANIFEST $ROOTNAME $VERSION
-
-exit 0
diff --git a/support/relicense b/support/relicense
deleted file mode 100644 (file)
index bb4aa77..0000000
+++ /dev/null
@@ -1,56 +0,0 @@
-#! /bin/sh
-#
-# relicense - change copyrights between GPL2 and GPL3
-#
-# usage: relicense [n]
-#
-# n is `2' or `3'.  The default `n' is 2
-#
-# Chet Ramey
-# chet.ramey@case.edu
-#
-SRC=/usr/homes/chet/src/bash/src
-
-V=2
-
-if [ ! -f parse.y ]; then
-       echo "relicense: must be run from source directory to be relicensed" >&2
-       exit 2
-fi
-
-case "$1" in
-2)     V=2 ;;
-3)     V=3 ;;
-"")    ;;
-*)     echo "relicense: usage: relicense [2|3]" >&2  ; exit 2 ;;
-esac
-
-LIC2="version 2 of the License"
-LIC3="version 3 of the License"
-
-VS2='GPLv2+: GNU GPL version 2 or later'
-VS3='GPLv3+: GNU GPL version 3 or later'
-
-case "$V" in
-2)     PAT1="$LIC3" REP1="$LIC2" PAT2="$VS3" REP2="$VS2" ;;
-3)     PAT1="$LIC2" REP1="$LIC3" PAT2="$VS2" REP2="$VS3" ;;
-esac
-
-find . -type f -print |
-       while read fn ; do
-               BASE=${fn##*/}
-               sed -e "s|$PAT1|$REP1|g" -e "s|$PAT2|$REP2|g" < $fn > /tmp/$BASE && touch -r $fn /tmp/$BASE
-               cmp -s /tmp/$BASE $fn || mv /tmp/$BASE $fn
-               echo $fn
-               rm -f /tmp/$BASE
-       done
-
-echo "relicense: copying appropriate license file"
-case "$V" in
-2)     cp -p $SRC/COPYINGv2 COPYING
-       cp -p $SRC/COPYINGv2 lib/readline/COPYING ;;
-3)     cp -p $SRC/COPYINGv3 COPYING
-       cp -p $SRC/COPYINGv3 lib/readline/COPYING ;;
-esac
-
-exit 0
diff --git a/support/texi2dvi-0.43 b/support/texi2dvi-0.43
deleted file mode 100755 (executable)
index 5439e08..0000000
+++ /dev/null
@@ -1,568 +0,0 @@
-#! /bin/sh
-# texi2dvi --- produce DVI (or PDF) files from Texinfo (or LaTeX) sources.
-# $Id: texi2dvi,v 0.43 1999/09/28 19:36:53 karl Exp $
-#
-# Copyright (C) 1992, 93, 94, 95, 96, 97, 98, 99 Free Software Foundation, Inc.
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2, or (at your option)
-# any later version.
-#
-# This program 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 General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, you can either send email to this
-# program's maintainer or write to: The Free Software Foundation,
-# Inc.; 59 Temple Place, Suite 330; Boston, MA 02111-1307, USA.
-#
-# Original author: Noah Friedman <friedman@gnu.org>.
-#
-# Please send bug reports, etc. to bug-texinfo@gnu.org.
-# If possible, please send a copy of the output of the script called with
-# the `--debug' option when making a bug report.
-
-# This string is expanded by rcs automatically when this file is checked out.
-rcs_revision='$Revision: 0.43 $'
-rcs_version=`set - $rcs_revision; echo $2`
-program=`echo $0 | sed -e 's!.*/!!'`
-version="texi2dvi (GNU Texinfo 4.0) $rcs_version
-
-Copyright (C) 1999 Free Software Foundation, Inc.
-There is NO warranty.  You may redistribute this software
-under the terms of the GNU General Public License.
-For more information about these matters, see the files named COPYING."
-
-usage="Usage: $program [OPTION]... FILE...
-
-Run each Texinfo or LaTeX FILE through TeX in turn until all
-cross-references are resolved, building all indices.  The directory
-containing each FILE is searched for included files.  The suffix of FILE
-is used to determine its language (LaTeX or Texinfo).
-
-Makeinfo is used to perform Texinfo macro expansion before running TeX
-when needed.
-
-Options:
-  -@                   Use @input instead of \input; for preloaded Texinfo.
-  -b, --batch          No interaction.
-  -c, --clean          Remove all auxiliary files.
-  -D, --debug          Turn on shell debugging (set -x).
-  -e, --expand         Force macro expansion using makeinfo.
-  -I DIR               Search DIR for Texinfo files.
-  -h, --help           Display this help and exit successfully.
-  -l, --language=LANG  Specify the LANG of FILE: LaTeX or Texinfo.
-  -p, --pdf            Use pdftex or pdflatex for processing.
-  -q, --quiet          No output unless errors (implies --batch).
-  -s, --silent         Same as --quiet.
-  -t, --texinfo=CMD    Insert CMD after @setfilename in copy of input file.
-                       Multiple values accumulate.
-  -v, --version        Display version information and exit successfully.
-  -V, --verbose        Report on what is done.
-
-The values of the BIBTEX, LATEX (or PDFLATEX), MAKEINDEX, MAKEINFO,
-TEX (or PDFTEX), and TEXINDEX environment variables are used to run
-those commands, if they are set.
-
-Email bug reports to <bug-texinfo@gnu.org>,
-general questions and discussion to <help-texinfo@gnu.org>."
-
-# Initialize variables for option overriding and otherwise.
-# Don't use `unset' since old bourne shells don't have this command.
-# Instead, assign them an empty value.
-escape='\'
-batch=false     # eval for batch mode
-clean=
-debug=
-expand=         # t for expansion via makeinfo
-oformat=dvi
-set_language=
-miincludes=     # makeinfo include path
-textra=
-tmpdir=${TMPDIR:-/tmp}/t2d$$  # avoid collisions on 8.3 filesystems.
-txincludes=     # TEXINPUTS extensions
-txiprereq=19990129 # minimum texinfo.tex version to have macro expansion
-quiet=          # by default let the tools' message be displayed
-verbose=false   # echo for verbose mode
-
-orig_pwd=`pwd`
-
-# Systems which define $COMSPEC or $ComSpec use semicolons to separate
-# directories in TEXINPUTS.
-if test -n "$COMSPEC$ComSpec"; then
-  path_sep=";"
-else
-  path_sep=":"
-fi
-
-# Save this so we can construct a new TEXINPUTS path for each file.
-TEXINPUTS_orig="$TEXINPUTS"
-# Unfortunately makeindex does not read TEXINPUTS.
-INDEXSTYLE_orig="$INDEXSTYLE"
-export TEXINPUTS INDEXSTYLE
-
-# Push a token among the arguments that will be used to notice when we
-# ended options/arguments parsing.
-# Use "set dummy ...; shift" rather than 'set - ..." because on
-# Solaris set - turns off set -x (but keeps set -e).
-# Use ${1+"$@"} rather than "$@" because Digital Unix and Ultrix 4.3
-# still expand "$@" to a single argument (the empty string) rather
-# than nothing at all.
-arg_sep="$$--$$"
-set dummy ${1+"$@"} "$arg_sep"; shift
-
-# \f
-# Parse command line arguments.
-while test x"$1" != x"$arg_sep"; do
-
-  # Handle --option=value by splitting apart and putting back on argv.
-  case "$1" in
-    --*=*)
-      opt=`echo "$1" | sed -e 's/=.*//'`
-      val=`echo "$1" | sed -e 's/[^=]*=//'`
-      shift
-      set dummy "$opt" "$val" ${1+"$@"}; shift
-      ;;
-  esac
-
-  # This recognizes --quark as --quiet.  So what.
-  case "$1" in
-    -@ ) escape=@;;
-    # Silently and without documentation accept -b and --b[atch] as synonyms.
-    -b | --b*) batch=eval;;
-    -q | -s | --q* | --s*) quiet=t; batch=eval;;
-    -c | --c*) clean=t;;
-    -D | --d*) debug=t;;
-    -e | --e*) expand=t;;
-    -h | --h*) echo "$usage"; exit 0;;
-    -I | --I*)
-      shift
-      miincludes="$miincludes -I $1"
-      txincludes="$txincludes$path_sep$1"
-      ;;
-    -l | --l*) shift; set_language=$1;;
-    -p | --p*) oformat=pdf;;
-    -t | --t*) shift; textra="$textra\\
-$1";;
-    -v | --vers*) echo "$version"; exit 0;;
-    -V | --verb*) verbose=echo;;
-    --) # What remains are not options.
-      shift
-      while test x"$1" != x"$arg_sep"; do
-        set dummy ${1+"$@"} "$1"; shift
-        shift
-      done
-      break;;
-    -*)
-      echo "$0: Unknown or ambiguous option \`$1'." >&2
-      echo "$0: Try \`--help' for more information." >&2
-      exit 1;;
-    *) set dummy ${1+"$@"} "$1"; shift;;
-   esac
-   shift
-done
-# Pop the token
-shift
-
-# Interpret remaining command line args as filenames.
-if test $# = 0; then
-  echo "$0: Missing file arguments." >&2
-  echo "$0: Try \`--help' for more information." >&2
-  exit 2
-fi
-
-# Prepare the temporary directory.  Remove it at exit, unless debugging.
-if test -z "$debug"; then
-  trap "cd / && rm -rf $tmpdir" 0 1 2 15
-fi
-
-# Create the temporary directory with strict rights
-(umask 077 && mkdir $tmpdir) || exit 1
-
-# Prepare the tools we might need.  This may be extra work in some
-# cases, but improves the readibility of the script.
-utildir=$tmpdir/utils
-mkdir $utildir || exit 1
-
-# A sed script that preprocesses Texinfo sources in order to keep the
-# iftex sections only.  We want to remove non TeX sections, and
-# comment (with `@c texi2dvi') TeX sections so that makeinfo does not
-# try to parse them.  Nevertheless, while commenting TeX sections,
-# don't comment @macro/@end macro so that makeinfo does propagate
-# them.  Unfortunately makeinfo --iftex --no-ifhtml --no-ifinfo
-# doesn't work well enough (yet) to use that, so work around with sed.
-comment_iftex_sed=$utildir/comment.sed
-cat <<EOF >$comment_iftex_sed
-/^@tex/,/^@end tex/{
-  s/^/@c texi2dvi/
-}
-/^@iftex/,/^@end iftex/{
-  s/^/@c texi2dvi/
-  /^@c texi2dvi@macro/,/^@c texi2dvi@end macro/{
-    s/^@c texi2dvi//
-  }
-}
-/^@html/,/^@end html/d
-/^@ifhtml/,/^@end ifhtml/d
-/^@ifnottex/,/^@end ifnottex/d
-/^@ifinfo/,/^@end ifinfo/{
-  /^@node/p
-  /^@menu/,/^@end menu/p
-  d
-}
-EOF
-# Uncommenting is simple: Remove any leading `@c texi2dvi'.
-uncomment_iftex_sed=$utildir/uncomment.sed
-cat <<EOF >$uncomment_iftex_sed
-s/^@c texi2dvi//
-EOF
-
-# A shell script that computes the list of xref files.
-# Takes the filename (without extension) of which we look for xref
-# files as argument.  The index files must be reported last.
-get_xref_files=$utildir/get_xref.sh
-cat <<\EOF >$get_xref_files
-#! /bin/sh
-
-# Get list of xref files (indexes, tables and lists).
-# Find all files having root filename with a two-letter extension,
-# saves the ones that are really Texinfo-related files.  .?o? catches
-# LaTeX tables and lists.
-for this_file in "$1".?o? "$1".aux "$1".?? "$1".idx; do
-  # If file is empty, skip it.
-  test -s "$this_file" || continue
-  # If the file is not suitable to be an index or xref file, don't
-  # process it.  The file can't be if its first character is not a
-  # backslash or single quote.
-  first_character=`sed -n '1s/^\(.\).*$/\1/p;q' $this_file`
-  if test "x$first_character" = "x\\" \
-     || test "x$first_character" = "x'"; then
-    xref_files="$xref_files ./$this_file"
-  fi
-done
-echo "$xref_files"
-EOF
-chmod 500 $get_xref_files
-
-# File descriptor usage:
-# 0 standard input
-# 1 standard output (--verbose messages)
-# 2 standard error
-# 3 some systems may open it to /dev/tty
-# 4 used on the Kubota Titan
-# 5 tools output (turned off by --quiet)
-
-# Tools' output.  If quiet, discard, else redirect to the message flow.
-if test "$quiet" = t; then
-  exec 5>/dev/null
-else
-  exec 5>&1
-fi
-
-# Enable tracing
-test "$debug" = t && set -x
-
-# \f
-# TeXify files.
-
-for command_line_filename in ${1+"$@"}; do
-  $verbose "Processing $command_line_filename ..."
-
-  # If the COMMAND_LINE_FILENAME is not absolute (e.g., --debug.tex),
-  # prepend `./' in order to avoid that the tools take it as an option.
-  echo "$command_line_filename" | egrep '^(/|[A-z]:/)' >/dev/null \
-  || command_line_filename="./$command_line_filename"
-
-  # See if the file exists.  If it doesn't we're in trouble since, even
-  # though the user may be able to reenter a valid filename at the tex
-  # prompt (assuming they're attending the terminal), this script won't
-  # be able to find the right xref files and so forth.
-  if test ! -r "$command_line_filename"; then
-    echo "$0: Could not read $command_line_filename, skipping." >&2
-    continue
-  fi
-
-  # Get the name of the current directory.  We want the full path
-  # because in clean mode we are in tmp, in which case a relative
-  # path has no meaning.
-  filename_dir=`echo $command_line_filename | sed 's!/[^/]*$!!;s!^$!.!'`
-  filename_dir=`cd "$filename_dir" >/dev/null && pwd`
-
-  # Strip directory part but leave extension.
-  filename_ext=`basename "$command_line_filename"`
-  # Strip extension.
-  filename_noext=`echo "$filename_ext" | sed 's/\.[^.]*$//'`
-  ext=`echo "$filename_ext" | sed 's/^.*\.//'`
-
-  # _src.  Use same basename since we want to generate aux files with
-  # the same basename as the manual.  If --expand, then output the
-  # macro-expanded file to here, else copy the original file.
-  tmpdir_src=$tmpdir/src
-  filename_src=$tmpdir_src/$filename_noext.$ext
-
-  # _xtr.  The file with the user's extra commands.
-  tmpdir_xtr=$tmpdir/xtr
-  filename_xtr=$tmpdir_xtr/$filename_noext.$ext
-
-  # _bak.  Copies of the previous xref files (another round is run if
-  # they differ from the new one).
-  tmpdir_bak=$tmpdir/bak
-
-  # Make all those directories and give up if we can't succeed.
-  mkdir $tmpdir_src $tmpdir_xtr $tmpdir_bak || exit 1
-
-  # Source file might include additional sources.  Put `.' and
-  # directory where source file(s) reside in TEXINPUTS before anything
-  # else.  `.' goes first to ensure that any old .aux, .cps,
-  # etc. files in ${directory} don't get used in preference to fresher
-  # files in `.'.  Include orig_pwd in case we are in clean mode, where
-  # we've cd'd to a temp directory.
-  common=".$path_sep$orig_pwd$path_sep$filename_dir$path_sep$txincludes$path_sep"
-   TEXINPUTS="$common$TEXINPUTS_orig"
-  INDEXSTYLE="$common$INDEXSTYLE_orig"
-
-  # If the user explicitly specified the language, use that.
-  # Otherwise, if the first line is \input texinfo, assume it's texinfo.
-  # Otherwise, guess from the file extension.
-  if test -n "$set_language"; then
-    language=$set_language
-  elif sed 1q "$command_line_filename" | fgrep 'input texinfo' >/dev/null; then
-    language=texinfo
-  else
-    language=
-  fi
-
-  # Get the type of the file (latex or texinfo) from the given language
-  # we just guessed, or from the file extension if not set yet.
-  case ${language:-$filename_ext} in
-    [lL]a[tT]e[xX] | *.ltx | *.tex)
-      # Assume a LaTeX file.  LaTeX needs bibtex and uses latex for
-      # compilation.  No makeinfo.
-      bibtex=${BIBTEX:-bibtex}
-      makeinfo= # no point in running makeinfo on latex source.
-      texindex=${MAKEINDEX:-makeindex}
-      if test $oformat = dvi; then
-        tex=${LATEX:-latex}
-      else
-        tex=${PDFLATEX:-pdflatex}
-      fi
-      ;;
-
-    *)
-      # Assume a Texinfo file.  Texinfo files need makeinfo, texindex and tex.
-      bibtex=
-      texindex=${TEXINDEX:-texindex}
-      if test $oformat = dvi; then
-        tex=${TEX:-tex}
-      else
-        tex=${PDFTEX:-pdftex}
-      fi
-      # Unless required by the user, makeinfo expansion is wanted only
-      # if texinfo.tex is too old.
-      if test "$expand" = t; then
-        makeinfo=${MAKEINFO:-makeinfo}
-      else
-        # Check if texinfo.tex performs macro expansion by looking for
-        # its version.  The version is a date of the form YEAR-MO-DA.
-        # We don't need to use [0-9] to match the digits since anyway
-        # the comparison with $txiprereq, a number, will fail with non
-        # digits.
-        txiversion_tex=txiversion.tex
-        echo '\input texinfo.tex @bye' >$tmpdir/$txiversion_tex
-        # Run in the tmpdir to avoid leaving files.
-        eval `cd $tmpdir >/dev/null \
-                    && $tex $txiversion_tex 2>/dev/null \
-| sed -n 's/^.*\[\(.*\)version \(....\)-\(..\)-\(..\).*$/txiformat=\1 txiversion="\2\3\4"/p'`
-        $verbose "texinfo.tex preloaded as \`$txiformat', version is \`$txiversion' ..."
-        if test "$txiprereq" -le "$txiversion" >/dev/null 2>&1; then
-          makeinfo=
-        else
-          makeinfo=${MAKEINFO:-makeinfo}
-        fi
-        # As long as we had to run TeX, offer the user this convenience
-        if test "$txiformat" = Texinfo; then
-          escape=@
-        fi
-      fi
-      ;;
-  esac
-
-  # Expand macro commands in the original source file using Makeinfo.
-  # Always use `end' footnote style, since the `separate' style
-  #   generates different output (arguably this is a bug in -E).
-  # Discard main info output, the user asked to run TeX, not makeinfo.
-  if test -n "$makeinfo"; then
-    $verbose "Macro-expanding $command_line_filename to $filename_src ..."
-    sed -f $comment_iftex_sed "$command_line_filename" \
-      | $makeinfo --footnote-style=end -I "$filename_dir" $miincludes \
-        -o /dev/null --macro-expand=- \
-      | sed -f $uncomment_iftex_sed >"$filename_src"
-    filename_input=$filename_src
-  fi
-
-  # If makeinfo failed (or was not even run), use the original file as input.
-  if test $? -ne 0 \
-     || test ! -r "$filename_src"; then
-    $verbose "Reverting to $command_line_filename ..."
-    filename_input=$filename_dir/$filename_ext
-  fi
-
-  # Used most commonly for @finalout, @smallbook, etc.
-  if test -n "$textra"; then
-    $verbose "Inserting extra commands: $textra"
-    sed '/^@setfilename/a\
-'"$textra" "$filename_input" >$filename_xtr
-    filename_input=$filename_xtr
-  fi
-
-  # If clean mode was specified, then move to the temporary directory.
-  if test "$clean" = t; then
-    $verbose "cd $tmpdir_src"
-    cd "$tmpdir_src" || exit 1
-  fi
-
-  while :; do # will break out of loop below
-    orig_xref_files=`$get_xref_files "$filename_noext"`
-
-    # Save copies of originals for later comparison.
-    if test -n "$orig_xref_files"; then
-      $verbose "Backing up xref files: `echo $orig_xref_files | sed 's|\./||g'`"
-      cp $orig_xref_files $tmpdir_bak
-    fi
-
-    # Run bibtex on current file.
-    # - If its input (AUX) exists.
-    # - If AUX contains both `\bibdata' and `\bibstyle'.
-    # - If some citations are missing (LOG contains `Citation').
-    #   or the LOG complains of a missing .bbl
-    #
-    # We run bibtex first, because I can see reasons for the indexes
-    # to change after bibtex is run, but I see no reason for the
-    # converse.
-    #
-    # Don't try to be too smart.  Running bibtex only if the bbl file
-    # exists and is older than the LaTeX file is wrong, since the
-    # document might include files that have changed.  Because there
-    # can be several AUX (if there are \include's), but a single LOG,
-    # looking for missing citations in LOG is easier, though we take
-    # the risk to match false messages.
-    if test -n "$bibtex" \
-       && test -r "$filename_noext.aux" \
-       && test -r "$filename_noext.log" \
-       && (grep '^\\bibdata[{]'  "$filename_noext.aux" \
-           && grep '^\\bibstyle[{]' "$filename_noext.aux" \
-           && (grep 'Warning:.*Citation.*undefined' "$filename_noext.log" \
-               || grep 'No file .*\.bbl\.' "$filename_noext.log")) \
-          >/dev/null 2>&1; \
-    then
-      $verbose "Running $bibtex $filename_noext ..."
-      if $bibtex "$filename_noext" >&5; then :; else
-        echo "$0: $bibtex exited with bad status, quitting." >&2
-        exit 1
-      fi
-    fi
-
-    # What we'll run texindex on -- exclude non-index files.
-    # Since we know index files are last, it is correct to remove everything
-    # before .aux and .?o?.
-    index_files=`echo "$orig_xref_files" \
-                 | sed "s!.*\.aux!!g;
-                        s!./$filename_noext\..o.!!g;
-                        s/^[ ]*//;s/[ ]*$//"`
-    # Run texindex (or makeindex) on current index files.  If they
-    # already exist, and after running TeX a first time the index
-    # files don't change, then there's no reason to run TeX again.
-    # But we won't know that if the index files are out of date or
-    # nonexistent.
-    if test -n "$texindex" && test -n "$index_files"; then
-      $verbose "Running $texindex $index_files ..."
-      if $texindex $index_files 2>&5 1>&2; then :; else
-         echo "$0: $texindex exited with bad status, quitting." >&2
-         exit 1
-      fi
-    fi
-
-    # Finally, run TeX.
-    # Prevent $ESCAPE from being interpreted by the shell if it happens
-    # to be `/'.
-    $batch tex_args="\\${escape}nonstopmode\ \\${escape}input"
-    $verbose "Running $cmd ..."
-    cmd="$tex $tex_args $filename_input"
-    if $cmd >&5; then :; else
-      echo "$0: $tex exited with bad status, quitting." >&2
-      echo "$0: see $filename_noext.log for errors." >&2
-      test "$clean" = t \
-        && cp "$filename_noext.log" "$orig_pwd"
-      exit 1
-    fi
-
-
-    # Decide if looping again is needed.
-    finished=t
-
-    # LaTeX (and the package changebar) report in the LOG file if it
-    # should be rerun.  This is needed for files included from
-    # subdirs, since texi2dvi does not try to compare xref files in
-    # subdirs.  Performing xref files test is still good since LaTeX
-    # does not report changes in xref files.
-    if fgrep "Rerun to get" "$filename_noext.log" >/dev/null 2>&1; then
-      finished=
-    fi
-
-    # Check if xref files changed.
-    new_xref_files=`$get_xref_files "$filename_noext"`
-    $verbose "Original xref files = `echo $orig_xref_files | sed 's|\./||g'`"
-    $verbose "New xref files      = `echo $new_xref_files | sed 's|\./||g'`"
-
-    # If old and new lists don't at least have the same file list,
-    # then one file or another has definitely changed.
-    test "x$orig_xref_files" != "x$new_xref_files" && finished=
-
-    # File list is the same.  We must compare each file until we find
-    # a difference.
-    if test -n "$finished"; then
-      for this_file in $new_xref_files; do
-        $verbose "Comparing xref file `echo $this_file | sed 's|\./||g'` ..."
-        # cmp -s returns nonzero exit status if files differ.
-        if cmp -s "$this_file" "$tmpdir_bak/$this_file"; then :; else
-          # We only need to keep comparing until we find one that
-          # differs, because we'll have to run texindex & tex again no
-          # matter how many more there might be.
-          finished=
-          $verbose "xref file `echo $this_file | sed 's|\./||g'` differed ..."
-          test "$debug" = t && diff -c "$tmpdir_bak/$this_file" "$this_file"
-          break
-        fi
-      done
-    fi
-
-    # If finished, exit the loop, else rerun the loop.
-    test -n "$finished" && break
-  done
-
-  # If we were in clean mode, compilation was in a tmp directory.
-  # Copy the DVI (or PDF) file into the directory where the compilation
-  # has been done.  (The temp dir is about to get removed anyway.)
-  # We also return to the original directory so that
-  # - the next file is processed in correct conditions
-  # - the temporary file can be removed
-  if test -n "$clean"; then
-    $verbose "Copying $oformat file from `pwd` to $orig_pwd"
-    cp -p "./$filename_noext.$oformat" "$orig_pwd"
-    cd / # in case $orig_pwd is on a different drive (for DOS)
-    cd $orig_pwd || exit 1
-  fi
-
-  # Remove temporary files.
-  if test "x$debug" = "x"; then
-    $verbose "Removing $tmpdir_src $tmpdir_xtr $tmpdir_bak ..."
-    cd /
-    rm -rf $tmpdir_src $tmpdir_xtr $tmpdir_bak
-  fi
-done
-
-$verbose "$0 done."
-exit 0 # exit successfully, not however we ended the loop.
diff --git a/support/texi2dvi-0.46 b/support/texi2dvi-0.46
deleted file mode 100755 (executable)
index db09865..0000000
+++ /dev/null
@@ -1,604 +0,0 @@
-#! /bin/sh
-# texi2dvi --- produce DVI (or PDF) files from Texinfo (or LaTeX) sources.
-# $Id: texi2dvi,v 0.46 2001/06/07 18:43:25 karl Exp $
-#
-# Copyright (C) 1992, 93, 94, 95, 96, 97, 98, 99, 2001
-# Free Software Foundation, Inc.
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2, or (at your option)
-# any later version.
-#
-# This program 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 General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, you can either send email to this
-# program's maintainer or write to: The Free Software Foundation,
-# Inc.; 59 Temple Place, Suite 330; Boston, MA 02111-1307, USA.
-#
-# Original author: Noah Friedman <friedman@gnu.org>.
-#
-# Please send bug reports, etc. to bug-texinfo@gnu.org.
-# If possible, please send a copy of the output of the script called with
-# the `--debug' option when making a bug report.
-
-# This string is expanded by rcs automatically when this file is checked out.
-rcs_revision='$Revision: 0.46 $'
-rcs_version=`set - $rcs_revision; echo $2`
-program=`echo $0 | sed -e 's!.*/!!'`
-version="texi2dvi (GNU Texinfo 4.0) $rcs_version
-
-Copyright (C) 1999 Free Software Foundation, Inc.
-There is NO warranty.  You may redistribute this software
-under the terms of the GNU General Public License.
-For more information about these matters, see the files named COPYING."
-
-usage="Usage: $program [OPTION]... FILE...
-
-Run each Texinfo or LaTeX FILE through TeX in turn until all
-cross-references are resolved, building all indices.  The directory
-containing each FILE is searched for included files.  The suffix of FILE
-is used to determine its language (LaTeX or Texinfo).
-
-Makeinfo is used to perform Texinfo macro expansion before running TeX
-when needed.
-
-Operation modes:
-  -b, --batch         no interaction
-  -c, --clean         remove all auxiliary files
-  -D, --debug         turn on shell debugging (set -x)
-  -h, --help          display this help and exit successfully
-  -o, --output=OFILE  leave output in OFILE (implies --clean);
-                      Only one input FILE may be specified in this case
-  -q, --quiet         no output unless errors (implies --batch)
-  -s, --silent        same as --quiet
-  -v, --version       display version information and exit successfully
-  -V, --verbose       report on what is done
-
-TeX tuning:
-  -@                   use @input instead of \input; for preloaded Texinfo
-  -e, --expand         force macro expansion using makeinfo
-  -I DIR               search DIR for Texinfo files
-  -l, --language=LANG  specify the LANG of FILE (LaTeX or Texinfo)
-  -p, --pdf            use pdftex or pdflatex for processing
-  -t, --texinfo=CMD    insert CMD after @setfilename in copy of input file
-                       multiple values accumulate
-
-The values of the BIBTEX, LATEX (or PDFLATEX), MAKEINDEX, MAKEINFO,
-TEX (or PDFTEX), and TEXINDEX environment variables are used to run
-those commands, if they are set.
-
-Email bug reports to <bug-texinfo@gnu.org>,
-general questions and discussion to <help-texinfo@gnu.org>."
-
-# Initialize variables for option overriding and otherwise.
-# Don't use `unset' since old bourne shells don't have this command.
-# Instead, assign them an empty value.
-batch=false     # eval for batch mode
-clean=
-debug=
-escape='\'
-expand=         # t for expansion via makeinfo
-miincludes=     # makeinfo include path
-oformat=dvi
-oname=         # --output
-quiet=          # by default let the tools' message be displayed
-set_language=
-textra=
-tmpdir=${TMPDIR:-/tmp}/t2d$$  # avoid collisions on 8.3 filesystems.
-txincludes=     # TEXINPUTS extensions
-txiprereq=19990129 # minimum texinfo.tex version to have macro expansion
-verbose=false   # echo for verbose mode
-
-orig_pwd=`pwd`
-
-# Systems which define $COMSPEC or $ComSpec use semicolons to separate
-# directories in TEXINPUTS.
-if test -n "$COMSPEC$ComSpec"; then
-  path_sep=";"
-else
-  path_sep=":"
-fi
-
-# Save this so we can construct a new TEXINPUTS path for each file.
-TEXINPUTS_orig="$TEXINPUTS"
-# Unfortunately makeindex does not read TEXINPUTS.
-INDEXSTYLE_orig="$INDEXSTYLE"
-export TEXINPUTS INDEXSTYLE
-
-# Push a token among the arguments that will be used to notice when we
-# ended options/arguments parsing.
-# Use "set dummy ...; shift" rather than 'set - ..." because on
-# Solaris set - turns off set -x (but keeps set -e).
-# Use ${1+"$@"} rather than "$@" because Digital Unix and Ultrix 4.3
-# still expand "$@" to a single argument (the empty string) rather
-# than nothing at all.
-arg_sep="$$--$$"
-set dummy ${1+"$@"} "$arg_sep"; shift
-
-# \f
-# Parse command line arguments.
-while test x"$1" != x"$arg_sep"; do
-
-  # Handle --option=value by splitting apart and putting back on argv.
-  case "$1" in
-    --*=*)
-      opt=`echo "$1" | sed -e 's/=.*//'`
-      val=`echo "$1" | sed -e 's/[^=]*=//'`
-      shift
-      set dummy "$opt" "$val" ${1+"$@"}; shift
-      ;;
-  esac
-
-  # This recognizes --quark as --quiet.  So what.
-  case "$1" in
-    -@ ) escape=@;;
-    # Silently and without documentation accept -b and --b[atch] as synonyms.
-    -b | --b*) batch=eval;;
-    -q | -s | --q* | --s*) quiet=t; batch=eval;;
-    -c | --c*) clean=t;;
-    -D | --d*) debug=t;;
-    -e | --e*) expand=t;;
-    -h | --h*) echo "$usage"; exit 0;;
-    -I | --I*)
-      shift
-      miincludes="$miincludes -I $1"
-      txincludes="$txincludes$path_sep$1"
-      ;;
-    -l | --l*) shift; set_language=$1;;
-    -o | --o*)
-      shift
-      clean=t
-      case "$1" in
-        /* | ?:/*) oname=$1;;
-                *) oname="$orig_pwd/$1";;
-      esac;;
-    -p | --p*) oformat=pdf;;
-    -t | --t*) shift; textra="$textra\\
-$1";;
-    -v | --vers*) echo "$version"; exit 0;;
-    -V | --verb*) verbose=echo;;
-    --) # What remains are not options.
-      shift
-      while test x"$1" != x"$arg_sep"; do
-        set dummy ${1+"$@"} "$1"; shift
-        shift
-      done
-      break;;
-    -*)
-      echo "$0: Unknown or ambiguous option \`$1'." >&2
-      echo "$0: Try \`--help' for more information." >&2
-      exit 1;;
-    *) set dummy ${1+"$@"} "$1"; shift;;
-   esac
-   shift
-done
-# Pop the token
-shift
-
-# Interpret remaining command line args as filenames.
-case $# in
- 0)
-  echo "$0: Missing file arguments." >&2
-  echo "$0: Try \`--help' for more information." >&2
-  exit 2
-  ;;
- 1) ;;
- *)
-  if test -n "$oname"; then
-    echo "$0: Can't use option \`--output' with more than one argument." >&2
-    exit 2
-  fi
-  ;;
-esac
-
-# Prepare the temporary directory.  Remove it at exit, unless debugging.
-if test -z "$debug"; then
-  trap "cd / && rm -rf $tmpdir" 0 1 2 15
-fi
-
-# Create the temporary directory with strict rights
-(umask 077 && mkdir $tmpdir) || exit 1
-
-# Prepare the tools we might need.  This may be extra work in some
-# cases, but improves the readibility of the script.
-utildir=$tmpdir/utils
-mkdir $utildir || exit 1
-
-# A sed script that preprocesses Texinfo sources in order to keep the
-# iftex sections only.  We want to remove non TeX sections, and
-# comment (with `@c texi2dvi') TeX sections so that makeinfo does not
-# try to parse them.  Nevertheless, while commenting TeX sections,
-# don't comment @macro/@end macro so that makeinfo does propagate
-# them.  Unfortunately makeinfo --iftex --no-ifhtml --no-ifinfo
-# doesn't work well enough (yet) to use that, so work around with sed.
-comment_iftex_sed=$utildir/comment.sed
-cat <<EOF >$comment_iftex_sed
-/^@tex/,/^@end tex/{
-  s/^/@c texi2dvi/
-}
-/^@iftex/,/^@end iftex/{
-  s/^/@c texi2dvi/
-  /^@c texi2dvi@macro/,/^@c texi2dvi@end macro/{
-    s/^@c texi2dvi//
-  }
-}
-/^@html/,/^@end html/{
-  s/^/@c (texi2dvi)/
-}
-/^@ifhtml/,/^@end ifhtml/{
-  s/^/@c (texi2dvi)/
-}
-/^@ifnottex/,/^@end ifnottex/{
-  s/^/@c (texi2dvi)/
-}
-/^@ifinfo/,/^@end ifinfo/{
-  /^@node/p
-  /^@menu/,/^@end menu/p
-  t
-  s/^/@c (texi2dvi)/
-}
-s/^@ifnotinfo/@c texi2dvi@ifnotinfo/
-s/^@end ifnotinfo/@c texi2dvi@end ifnotinfo/
-EOF
-# Uncommenting is simple: Remove any leading `@c texi2dvi'.
-uncomment_iftex_sed=$utildir/uncomment.sed
-cat <<EOF >$uncomment_iftex_sed
-s/^@c texi2dvi//
-EOF
-
-# A shell script that computes the list of xref files.
-# Takes the filename (without extension) of which we look for xref
-# files as argument.  The index files must be reported last.
-get_xref_files=$utildir/get_xref.sh
-cat <<\EOF >$get_xref_files
-#! /bin/sh
-
-# Get list of xref files (indexes, tables and lists).
-# Find all files having root filename with a two-letter extension,
-# saves the ones that are really Texinfo-related files.  .?o? catches
-# LaTeX tables and lists.
-for this_file in "$1".?o? "$1".aux "$1".?? "$1".idx; do
-  # If file is empty, skip it.
-  test -s "$this_file" || continue
-  # If the file is not suitable to be an index or xref file, don't
-  # process it.  The file can't be if its first character is not a
-  # backslash or single quote.
-  first_character=`sed -n '1s/^\(.\).*$/\1/p;q' $this_file`
-  if test "x$first_character" = "x\\" \
-     || test "x$first_character" = "x'"; then
-    xref_files="$xref_files ./$this_file"
-  fi
-done
-echo "$xref_files"
-EOF
-chmod 500 $get_xref_files
-
-# File descriptor usage:
-# 0 standard input
-# 1 standard output (--verbose messages)
-# 2 standard error
-# 3 some systems may open it to /dev/tty
-# 4 used on the Kubota Titan
-# 5 tools output (turned off by --quiet)
-
-# Tools' output.  If quiet, discard, else redirect to the message flow.
-if test "$quiet" = t; then
-  exec 5>/dev/null
-else
-  exec 5>&1
-fi
-
-# Enable tracing
-test "$debug" = t && set -x
-
-# \f
-# TeXify files.
-
-for command_line_filename in ${1+"$@"}; do
-  $verbose "Processing $command_line_filename ..."
-
-  # If the COMMAND_LINE_FILENAME is not absolute (e.g., --debug.tex),
-  # prepend `./' in order to avoid that the tools take it as an option.
-  echo "$command_line_filename" | egrep '^(/|[A-z]:/)' >/dev/null \
-  || command_line_filename="./$command_line_filename"
-
-  # See if the file exists.  If it doesn't we're in trouble since, even
-  # though the user may be able to reenter a valid filename at the tex
-  # prompt (assuming they're attending the terminal), this script won't
-  # be able to find the right xref files and so forth.
-  if test ! -r "$command_line_filename"; then
-    echo "$0: Could not read $command_line_filename, skipping." >&2
-    continue
-  fi
-
-  # Get the name of the current directory.  We want the full path
-  # because in clean mode we are in tmp, in which case a relative
-  # path has no meaning.
-  filename_dir=`echo $command_line_filename | sed 's!/[^/]*$!!;s!^$!.!'`
-  filename_dir=`cd "$filename_dir" >/dev/null && pwd`
-
-  # Strip directory part but leave extension.
-  filename_ext=`basename "$command_line_filename"`
-  # Strip extension.
-  filename_noext=`echo "$filename_ext" | sed 's/\.[^.]*$//'`
-  ext=`echo "$filename_ext" | sed 's/^.*\.//'`
-
-  # _src.  Use same basename since we want to generate aux files with
-  # the same basename as the manual.  If --expand, then output the
-  # macro-expanded file to here, else copy the original file.
-  tmpdir_src=$tmpdir/src
-  filename_src=$tmpdir_src/$filename_noext.$ext
-
-  # _xtr.  The file with the user's extra commands.
-  tmpdir_xtr=$tmpdir/xtr
-  filename_xtr=$tmpdir_xtr/$filename_noext.$ext
-
-  # _bak.  Copies of the previous xref files (another round is run if
-  # they differ from the new one).
-  tmpdir_bak=$tmpdir/bak
-
-  # Make all those directories and give up if we can't succeed.
-  mkdir $tmpdir_src $tmpdir_xtr $tmpdir_bak || exit 1
-
-  # Source file might include additional sources.  Put `.' and
-  # directory where source file(s) reside in TEXINPUTS before anything
-  # else.  `.' goes first to ensure that any old .aux, .cps,
-  # etc. files in ${directory} don't get used in preference to fresher
-  # files in `.'.  Include orig_pwd in case we are in clean mode, where
-  # we've cd'd to a temp directory.
-  common=".$path_sep$orig_pwd$path_sep$filename_dir$path_sep$txincludes$path_sep"
-   TEXINPUTS="$common$TEXINPUTS_orig"
-  INDEXSTYLE="$common$INDEXSTYLE_orig"
-
-  # If the user explicitly specified the language, use that.
-  # Otherwise, if the first line is \input texinfo, assume it's texinfo.
-  # Otherwise, guess from the file extension.
-  if test -n "$set_language"; then
-    language=$set_language
-  elif sed 1q "$command_line_filename" | fgrep 'input texinfo' >/dev/null; then
-    language=texinfo
-  else
-    language=
-  fi
-
-  # Get the type of the file (latex or texinfo) from the given language
-  # we just guessed, or from the file extension if not set yet.
-  case ${language:-$filename_ext} in
-    [lL]a[tT]e[xX] | *.ltx | *.tex)
-      # Assume a LaTeX file.  LaTeX needs bibtex and uses latex for
-      # compilation.  No makeinfo.
-      bibtex=${BIBTEX:-bibtex}
-      makeinfo= # no point in running makeinfo on latex source.
-      texindex=${MAKEINDEX:-makeindex}
-      if test $oformat = dvi; then
-        tex=${LATEX:-latex}
-      else
-        tex=${PDFLATEX:-pdflatex}
-      fi
-      ;;
-
-    *)
-      # Assume a Texinfo file.  Texinfo files need makeinfo, texindex and tex.
-      bibtex=
-      texindex=${TEXINDEX:-texindex}
-      if test $oformat = dvi; then
-        tex=${TEX:-tex}
-      else
-        tex=${PDFTEX:-pdftex}
-      fi
-      # Unless required by the user, makeinfo expansion is wanted only
-      # if texinfo.tex is too old.
-      if test "$expand" = t; then
-        makeinfo=${MAKEINFO:-makeinfo}
-      else
-        # Check if texinfo.tex performs macro expansion by looking for
-        # its version.  The version is a date of the form YEAR-MO-DA.
-        # We don't need to use [0-9] to match the digits since anyway
-        # the comparison with $txiprereq, a number, will fail with non
-        # digits.
-        txiversion_tex=txiversion.tex
-        echo '\input texinfo.tex @bye' >$tmpdir/$txiversion_tex
-        # Run in the tmpdir to avoid leaving files.
-        eval `cd $tmpdir >/dev/null &&
-              $tex $txiversion_tex 2>/dev/null |
-              sed -n 's/^.*\[\(.*\)version \(....\)-\(..\)-\(..\).*$/txiformat=\1 txiversion="\2\3\4"/p'`
-        $verbose "texinfo.tex preloaded as \`$txiformat', version is \`$txiversion' ..."
-        if test "$txiprereq" -le "$txiversion" >/dev/null 2>&1; then
-          makeinfo=
-        else
-          makeinfo=${MAKEINFO:-makeinfo}
-        fi
-        # As long as we had to run TeX, offer the user this convenience
-        if test "$txiformat" = Texinfo; then
-          escape=@
-        fi
-      fi
-      ;;
-  esac
-
-  # Expand macro commands in the original source file using Makeinfo.
-  # Always use `end' footnote style, since the `separate' style
-  #   generates different output (arguably this is a bug in -E).
-  # Discard main info output, the user asked to run TeX, not makeinfo.
-  if test -n "$makeinfo"; then
-    $verbose "Macro-expanding $command_line_filename to $filename_src ..."
-    sed -f $comment_iftex_sed "$command_line_filename" \
-      | $makeinfo --footnote-style=end -I "$filename_dir" $miincludes \
-        -o /dev/null --macro-expand=- \
-      | sed -f $uncomment_iftex_sed >"$filename_src"
-    filename_input=$filename_src
-  fi
-
-  # If makeinfo failed (or was not even run), use the original file as input.
-  if test $? -ne 0 \
-     || test ! -r "$filename_src"; then
-    $verbose "Reverting to $command_line_filename ..."
-    filename_input=$filename_dir/$filename_ext
-  fi
-
-  # Used most commonly for @finalout, @smallbook, etc.
-  if test -n "$textra"; then
-    $verbose "Inserting extra commands: $textra"
-    sed '/^@setfilename/a\
-'"$textra" "$filename_input" >$filename_xtr
-    filename_input=$filename_xtr
-  fi
-
-  # If clean mode was specified, then move to the temporary directory.
-  if test "$clean" = t; then
-    $verbose "cd $tmpdir_src"
-    cd "$tmpdir_src" || exit 1
-  fi
-
-  while :; do # will break out of loop below
-    orig_xref_files=`$get_xref_files "$filename_noext"`
-
-    # Save copies of originals for later comparison.
-    if test -n "$orig_xref_files"; then
-      $verbose "Backing up xref files: `echo $orig_xref_files | sed 's|\./||g'`"
-      cp $orig_xref_files $tmpdir_bak
-    fi
-
-    # Run bibtex on current file.
-    # - If its input (AUX) exists.
-    # - If AUX contains both `\bibdata' and `\bibstyle'.
-    # - If some citations are missing (LOG contains `Citation').
-    #   or the LOG complains of a missing .bbl
-    #
-    # We run bibtex first, because I can see reasons for the indexes
-    # to change after bibtex is run, but I see no reason for the
-    # converse.
-    #
-    # Don't try to be too smart.  Running bibtex only if the bbl file
-    # exists and is older than the LaTeX file is wrong, since the
-    # document might include files that have changed.  Because there
-    # can be several AUX (if there are \include's), but a single LOG,
-    # looking for missing citations in LOG is easier, though we take
-    # the risk to match false messages.
-    if test -n "$bibtex" \
-       && test -r "$filename_noext.aux" \
-       && test -r "$filename_noext.log" \
-       && (grep '^\\bibdata[{]'  "$filename_noext.aux" \
-           && grep '^\\bibstyle[{]' "$filename_noext.aux" \
-           && (grep 'Warning:.*Citation.*undefined' "$filename_noext.log" \
-               || grep 'No file .*\.bbl\.' "$filename_noext.log")) \
-          >/dev/null 2>&1; \
-    then
-      $verbose "Running $bibtex $filename_noext ..."
-      if $bibtex "$filename_noext" >&5; then :; else
-        echo "$0: $bibtex exited with bad status, quitting." >&2
-        exit 1
-      fi
-    fi
-
-    # What we'll run texindex on -- exclude non-index files.
-    # Since we know index files are last, it is correct to remove everything
-    # before .aux and .?o?.
-    index_files=`echo "$orig_xref_files" \
-                 | sed "s!.*\.aux!!g;
-                        s!./$filename_noext\..o.!!g;
-                        s/^[ ]*//;s/[ ]*$//"`
-    # Run texindex (or makeindex) on current index files.  If they
-    # already exist, and after running TeX a first time the index
-    # files don't change, then there's no reason to run TeX again.
-    # But we won't know that if the index files are out of date or
-    # nonexistent.
-    if test -n "$texindex" && test -n "$index_files"; then
-      $verbose "Running $texindex $index_files ..."
-      if $texindex $index_files 2>&5 1>&2; then :; else
-         echo "$0: $texindex exited with bad status, quitting." >&2
-         exit 1
-      fi
-    fi
-
-    # Finally, run TeX.
-    # Prevent $ESCAPE from being interpreted by the shell if it happens
-    # to be `/'.
-    $batch tex_args="\\${escape}nonstopmode\ \\${escape}input"
-    $verbose "Running $cmd ..."
-    cmd="$tex $tex_args $filename_input"
-    if $cmd >&5; then :; else
-      echo "$0: $tex exited with bad status, quitting." >&2
-      echo "$0: see $filename_noext.log for errors." >&2
-      test "$clean" = t \
-        && cp "$filename_noext.log" "$orig_pwd"
-      exit 1
-    fi
-
-
-    # Decide if looping again is needed.
-    finished=t
-
-    # LaTeX (and the package changebar) report in the LOG file if it
-    # should be rerun.  This is needed for files included from
-    # subdirs, since texi2dvi does not try to compare xref files in
-    # subdirs.  Performing xref files test is still good since LaTeX
-    # does not report changes in xref files.
-    if fgrep "Rerun to get" "$filename_noext.log" >/dev/null 2>&1; then
-      finished=
-    fi
-
-    # Check if xref files changed.
-    new_xref_files=`$get_xref_files "$filename_noext"`
-    $verbose "Original xref files = `echo $orig_xref_files | sed 's|\./||g'`"
-    $verbose "New xref files      = `echo $new_xref_files | sed 's|\./||g'`"
-
-    # If old and new lists don't at least have the same file list,
-    # then one file or another has definitely changed.
-    test "x$orig_xref_files" != "x$new_xref_files" && finished=
-
-    # File list is the same.  We must compare each file until we find
-    # a difference.
-    if test -n "$finished"; then
-      for this_file in $new_xref_files; do
-        $verbose "Comparing xref file `echo $this_file | sed 's|\./||g'` ..."
-        # cmp -s returns nonzero exit status if files differ.
-        if cmp -s "$this_file" "$tmpdir_bak/$this_file"; then :; else
-          # We only need to keep comparing until we find one that
-          # differs, because we'll have to run texindex & tex again no
-          # matter how many more there might be.
-          finished=
-          $verbose "xref file `echo $this_file | sed 's|\./||g'` differed ..."
-          test "$debug" = t && diff -c "$tmpdir_bak/$this_file" "$this_file"
-          break
-        fi
-      done
-    fi
-
-    # If finished, exit the loop, else rerun the loop.
-    test -n "$finished" && break
-  done
-
-  # If we were in clean mode, compilation was in a tmp directory.
-  # Copy the DVI (or PDF) file into the directory where the compilation
-  # has been done.  (The temp dir is about to get removed anyway.)
-  # We also return to the original directory so that
-  # - the next file is processed in correct conditions
-  # - the temporary file can be removed
-  if test -n "$clean"; then
-    if test -n "$oname"; then
-       dest=$oname
-    else
-       dest=$orig_pwd
-    fi
-    $verbose "Copying $oformat file from `pwd` to $dest"
-    cp -p "./$filename_noext.$oformat" "$dest"
-    cd / # in case $orig_pwd is on a different drive (for DOS)
-    cd $orig_pwd || exit 1
-  fi
-
-  # Remove temporary files.
-  if test "x$debug" = "x"; then
-    $verbose "Removing $tmpdir_src $tmpdir_xtr $tmpdir_bak ..."
-    cd /
-    rm -rf $tmpdir_src $tmpdir_xtr $tmpdir_bak
-  fi
-done
-
-$verbose "$0 done."
-exit 0 # exit successfully, not however we ended the loop.
diff --git a/support/texi2dvi-1.14 b/support/texi2dvi-1.14
deleted file mode 100755 (executable)
index 010b586..0000000
+++ /dev/null
@@ -1,660 +0,0 @@
-#! /bin/sh
-# texi2dvi --- produce DVI (or PDF) files from Texinfo (or LaTeX) sources.
-# $Id: texi2dvi,v 1.14 2003/02/05 00:42:33 karl Exp $
-#
-# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2001,
-# 2002, 2003 Free Software Foundation, Inc.
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2, or (at your option)
-# any later version.
-#
-# This program 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 General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, you can either send email to this
-# program's maintainer or write to: The Free Software Foundation,
-# Inc.; 59 Temple Place, Suite 330; Boston, MA 02111-1307, USA.
-#
-# Original author: Noah Friedman <friedman@gnu.org>.
-#
-# Please send bug reports, etc. to bug-texinfo@gnu.org.
-# If possible, please send a copy of the output of the script called with
-# the `--debug' option when making a bug report.
-
-# This string is expanded by rcs automatically when this file is checked out.
-rcs_revision='$Revision: 1.14 $'
-rcs_version=`set - $rcs_revision; echo $2`
-program=`echo $0 | sed -e 's!.*/!!'`
-version="texi2dvi (GNU Texinfo 4.5) $rcs_version
-
-Copyright (C) 2003 Free Software Foundation, Inc.
-There is NO warranty.  You may redistribute this software
-under the terms of the GNU General Public License.
-For more information about these matters, see the files named COPYING."
-
-usage="Usage: $program [OPTION]... FILE...
-
-Run each Texinfo or LaTeX FILE through TeX in turn until all
-cross-references are resolved, building all indices.  The directory
-containing each FILE is searched for included files.  The suffix of FILE
-is used to determine its language (LaTeX or Texinfo).
-
-Makeinfo is used to perform Texinfo macro expansion before running TeX
-when needed.
-
-Operation modes:
-  -b, --batch         no interaction
-  -c, --clean         remove all auxiliary files
-  -D, --debug         turn on shell debugging (set -x)
-  -h, --help          display this help and exit successfully
-  -o, --output=OFILE  leave output in OFILE (implies --clean);
-                      Only one input FILE may be specified in this case
-  -q, --quiet         no output unless errors (implies --batch)
-  -s, --silent        same as --quiet
-  -v, --version       display version information and exit successfully
-  -V, --verbose       report on what is done
-
-TeX tuning:
-  -@                   use @input instead of \input; for preloaded Texinfo
-  -e, -E, --expand     force macro expansion using makeinfo
-  -I DIR               search DIR for Texinfo files
-  -l, --language=LANG  specify the LANG of FILE (LaTeX or Texinfo)
-  -p, --pdf            use pdftex or pdflatex for processing
-  -t, --texinfo=CMD    insert CMD after @setfilename in copy of input file
-                       multiple values accumulate
-
-The values of the BIBTEX, LATEX (or PDFLATEX), MAKEINDEX, MAKEINFO,
-TEX (or PDFTEX), and TEXINDEX environment variables are used to run
-those commands, if they are set.
-
-Email bug reports to <bug-texinfo@gnu.org>,
-general questions and discussion to <help-texinfo@gnu.org>.
-Texinfo home page: http://www.gnu.org/software/texinfo/"
-
-# Initialize variables for option overriding and otherwise.
-# Don't use `unset' since old bourne shells don't have this command.
-# Instead, assign them an empty value.
-batch=false     # eval for batch mode
-clean=
-debug=
-escape='\'
-expand=         # t for expansion via makeinfo
-miincludes=     # makeinfo include path
-oformat=dvi
-oname=          # --output
-quiet=          # by default let the tools' message be displayed
-set_language=
-textra=
-tmpdir=${TMPDIR:-/tmp}/t2d$$  # avoid collisions on 8.3 filesystems.
-txincludes=     # TEXINPUTS extensions, with trailing colon
-txiprereq=19990129 # minimum texinfo.tex version to have macro expansion
-verbose=false   # echo for verbose mode
-
-orig_pwd=`pwd`
-
-# Systems which define $COMSPEC or $ComSpec use semicolons to separate
-# directories in TEXINPUTS.
-if test -n "$COMSPEC$ComSpec"; then
-  path_sep=";"
-else
-  path_sep=":"
-fi
-
-# Pacify verbose cds.
-CDPATH=${ZSH_VERSION+.}$path_sep
-
-# In case someone crazy insists on using grep -E.
-: ${EGREP=egrep}
-
-# Save this so we can construct a new TEXINPUTS path for each file.
-TEXINPUTS_orig="$TEXINPUTS"
-# Unfortunately makeindex does not read TEXINPUTS.
-INDEXSTYLE_orig="$INDEXSTYLE"
-export TEXINPUTS INDEXSTYLE
-
-# Push a token among the arguments that will be used to notice when we
-# ended options/arguments parsing.
-# Use "set dummy ...; shift" rather than 'set - ..." because on
-# Solaris set - turns off set -x (but keeps set -e).
-# Use ${1+"$@"} rather than "$@" because Digital Unix and Ultrix 4.3
-# still expand "$@" to a single argument (the empty string) rather
-# than nothing at all.
-arg_sep="$$--$$"
-set dummy ${1+"$@"} "$arg_sep"; shift
-
-# \f
-# Parse command line arguments.
-while test x"$1" != x"$arg_sep"; do
-
-  # Handle --option=value by splitting apart and putting back on argv.
-  case "$1" in
-    --*=*)
-      opt=`echo "$1" | sed -e 's/=.*//'`
-      val=`echo "$1" | sed -e 's/[^=]*=//'`
-      shift
-      set dummy "$opt" "$val" ${1+"$@"}; shift
-      ;;
-  esac
-
-  # This recognizes --quark as --quiet.  So what.
-  case "$1" in
-    -@ ) escape=@;;
-    # Silently and without documentation accept -b and --b[atch] as synonyms.
-    -b | --b*) batch=eval;;
-    -q | -s | --q* | --s*) quiet=t; batch=eval;;
-    -c | --c*) clean=t;;
-    -D | --d*) debug=t;;
-    -e | -E | --e*) expand=t;;
-    -h | --h*) echo "$usage"; exit 0;;
-    -I | --I*)
-      shift
-      miincludes="$miincludes -I $1"
-      txincludes="$txincludes$1$path_sep"
-      ;;
-    -l | --l*) shift; set_language=$1;;
-    -o | --o*)
-      shift
-      clean=t
-      case "$1" in
-        /* | ?:/*) oname=$1;;
-                *) oname="$orig_pwd/$1";;
-      esac;;
-    -p | --p*) oformat=pdf;;
-    -t | --t*) shift; textra="$textra\\
-$1";;
-    -v | --vers*) echo "$version"; exit 0;;
-    -V | --verb*) verbose=echo;;
-    --) # What remains are not options.
-      shift
-      while test x"$1" != x"$arg_sep"; do
-        set dummy ${1+"$@"} "$1"; shift
-        shift
-      done
-      break;;
-    -*)
-      echo "$0: Unknown or ambiguous option \`$1'." >&2
-      echo "$0: Try \`--help' for more information." >&2
-      exit 1;;
-    *) set dummy ${1+"$@"} "$1"; shift;;
-   esac
-   shift
-done
-# Pop the token
-shift
-
-# Interpret remaining command line args as filenames.
-case $# in
- 0)
-  echo "$0: Missing file arguments." >&2
-  echo "$0: Try \`--help' for more information." >&2
-  exit 2
-  ;;
- 1) ;;
- *)
-  if test -n "$oname"; then
-    echo "$0: Can't use option \`--output' with more than one argument." >&2
-    exit 2
-  fi
-  ;;
-esac
-
-# Prepare the temporary directory.  Remove it at exit, unless debugging.
-if test -z "$debug"; then
-  trap "cd / && rm -rf $tmpdir" 0 1 2 15
-fi
-
-# Create the temporary directory with strict rights
-(umask 077 && mkdir $tmpdir) || exit 1
-
-# Prepare the tools we might need.  This may be extra work in some
-# cases, but improves the readibility of the script.
-utildir=$tmpdir/utils
-mkdir $utildir || exit 1
-
-# A sed script that preprocesses Texinfo sources in order to keep the
-# iftex sections only.  We want to remove non TeX sections, and
-# comment (with `@c texi2dvi') TeX sections so that makeinfo does not
-# try to parse them.  Nevertheless, while commenting TeX sections,
-# don't comment @macro/@end macro so that makeinfo does propagate
-# them.  Unfortunately makeinfo --iftex --no-ifhtml --no-ifinfo
-# doesn't work well enough (yet) to use that, so work around with sed.
-comment_iftex_sed=$utildir/comment.sed
-cat <<EOF >$comment_iftex_sed
-/^@tex/,/^@end tex/{
-  s/^/@c texi2dvi/
-}
-/^@iftex/,/^@end iftex/{
-  s/^/@c texi2dvi/
-  /^@c texi2dvi@macro/,/^@c texi2dvi@end macro/{
-    s/^@c texi2dvi//
-  }
-}
-/^@html/,/^@end html/{
-  s/^/@c (texi2dvi)/
-}
-/^@ifhtml/,/^@end ifhtml/{
-  s/^/@c (texi2dvi)/
-}
-/^@ifnottex/,/^@end ifnottex/{
-  s/^/@c (texi2dvi)/
-}
-/^@ifinfo/,/^@end ifinfo/{
-  /^@node/p
-  /^@menu/,/^@end menu/p
-  t
-  s/^/@c (texi2dvi)/
-}
-s/^@ifnotinfo/@c texi2dvi@ifnotinfo/
-s/^@end ifnotinfo/@c texi2dvi@end ifnotinfo/
-EOF
-# Uncommenting is simple: Remove any leading `@c texi2dvi'.
-uncomment_iftex_sed=$utildir/uncomment.sed
-cat <<EOF >$uncomment_iftex_sed
-s/^@c texi2dvi//
-EOF
-
-# A shell script that computes the list of xref files.
-# Takes the filename (without extension) of which we look for xref
-# files as argument.  The index files must be reported last.
-get_xref_files=$utildir/get_xref.sh
-cat <<\EOF >$get_xref_files
-#! /bin/sh
-
-# Get list of xref files (indexes, tables and lists).
-# Find all files having root filename with a two-letter extension,
-# saves the ones that are really Texinfo-related files.  .?o? catches
-# many files: .toc, .log, LaTeX tables and lists, FiXme's .lox, maybe more.
-for this_file in "$1".?o? "$1".aux "$1".?? "$1".idx; do
-  # If file is empty, skip it.
-  test -s "$this_file" || continue
-  # If the file is not suitable to be an index or xref file, don't
-  # process it.  The file can't be if its first character is not a
-  # backslash or single quote.
-  first_character=`sed -n '1s/^\(.\).*$/\1/p;q' $this_file`
-  if test "x$first_character" = "x\\" \
-     || test "x$first_character" = "x'"; then
-    xref_files="$xref_files ./$this_file"
-  fi
-done
-echo "$xref_files"
-EOF
-chmod 500 $get_xref_files
-
-# File descriptor usage:
-# 0 standard input
-# 1 standard output (--verbose messages)
-# 2 standard error
-# 3 some systems may open it to /dev/tty
-# 4 used on the Kubota Titan
-# 5 tools output (turned off by --quiet)
-
-# Tools' output.  If quiet, discard, else redirect to the message flow.
-if test "$quiet" = t; then
-  exec 5>/dev/null
-else
-  exec 5>&1
-fi
-
-# Enable tracing
-test "$debug" = t && set -x
-
-# \f
-# TeXify files.
-
-for command_line_filename in ${1+"$@"}; do
-  $verbose "Processing $command_line_filename ..."
-
-  # If the COMMAND_LINE_FILENAME is not absolute (e.g., --debug.tex),
-  # prepend `./' in order to avoid that the tools take it as an option.
-  echo "$command_line_filename" | $EGREP '^(/|[A-z]:/)' >/dev/null \
-  || command_line_filename="./$command_line_filename"
-
-  # See if the file exists.  If it doesn't we're in trouble since, even
-  # though the user may be able to reenter a valid filename at the tex
-  # prompt (assuming they're attending the terminal), this script won't
-  # be able to find the right xref files and so forth.
-  if test ! -r "$command_line_filename"; then
-    echo "$0: Could not read $command_line_filename, skipping." >&2
-    continue
-  fi
-
-  # Get the name of the current directory.  We want the full path
-  # because in clean mode we are in tmp, in which case a relative
-  # path has no meaning.
-  filename_dir=`echo $command_line_filename | sed 's!/[^/]*$!!;s!^$!.!'`
-  filename_dir=`cd "$filename_dir" >/dev/null && pwd`
-
-  # Strip directory part but leave extension.
-  filename_ext=`basename "$command_line_filename"`
-  # Strip extension.
-  filename_noext=`echo "$filename_ext" | sed 's/\.[^.]*$//'`
-  ext=`echo "$filename_ext" | sed 's/^.*\.//'`
-
-  # _src.  Use same basename since we want to generate aux files with
-  # the same basename as the manual.  If --expand, then output the
-  # macro-expanded file to here, else copy the original file.
-  tmpdir_src=$tmpdir/src
-  filename_src=$tmpdir_src/$filename_noext.$ext
-
-  # _xtr.  The file with the user's extra commands.
-  tmpdir_xtr=$tmpdir/xtr
-  filename_xtr=$tmpdir_xtr/$filename_noext.$ext
-
-  # _bak.  Copies of the previous xref files (another round is run if
-  # they differ from the new one).
-  tmpdir_bak=$tmpdir/bak
-
-  # Make all those directories and give up if we can't succeed.
-  mkdir $tmpdir_src $tmpdir_xtr $tmpdir_bak || exit 1
-
-  # Source file might include additional sources.
-  # We want `.:$orig_pwd' before anything else.  (We'll add `.:' later
-  # after all other directories have been turned into absolute paths.)
-  # `.' goes first to ensure that any old .aux, .cps,
-  # etc. files in ${directory} don't get used in preference to fresher
-  # files in `.'.  Include orig_pwd in case we are in clean mode, where
-  # we've cd'd to a temp directory.
-  common="$orig_pwd$path_sep$filename_dir$path_sep$txincludes"
-   TEXINPUTS="$common$TEXINPUTS_orig"
-  INDEXSTYLE="$common$INDEXSTYLE_orig"
-
-  # Convert relative paths to absolute paths, so we can run in another
-  # directory (e.g., in --clean mode, or during the macro-support
-  # detection.)
-  #
-  # Empty path components are meaningful to tex.  We rewrite them
-  # as `EMPTY' so they don't get lost when we split on $path_sep.
-   TEXINPUTS=`echo $TEXINPUTS  |sed 's/^:/EMPTY:/;s/:$/:EMPTY/;s/::/:EMPTY:/g'`
-  INDEXSTYLE=`echo $INDEXSTYLE |sed 's/^:/EMPTY:/;s/:$/:EMPTY/;s/::/:EMPTY:/g'`
-  save_IFS=$IFS
-  IFS=$path_sep
-  set x $TEXINPUTS; shift
-  TEXINPUTS=.
-  for dir
-  do
-    case $dir in
-      EMPTY)
-        TEXINPUTS=$TEXINPUTS$path_sep
-        ;;
-      [\\/]* | ?:[\\/]*)        # Absolute paths don't need to be expansed.
-        TEXINPUTS=$TEXINPUTS$path_sep$dir
-        ;;
-      *)
-        abs=`cd "$dir" && pwd` && TEXINPUTS=$TEXINPUTS$path_sep$abs
-        ;;
-    esac
-  done
-  set x $INDEXSTYLE; shift
-  INDEXSTYLE=.
-  for dir
-  do
-    case $dir in
-      EMPTY)
-        INDEXSTYLE=$INDEXSTYLE$path_sep
-        ;;
-      [\\/]* | ?:[\\/]*)        # Absolute paths don't need to be expansed.
-        INDEXSTYLE=$INDEXSTYLE$path_sep$dir
-        ;;
-      *)
-        abs=`cd "$dir" && pwd` && INDEXSTYLE=$INDEXSTYLE$path_sep$abs
-        ;;
-    esac
-  done
-  IFS=$save_IFS
-
-  # If the user explicitly specified the language, use that.
-  # Otherwise, if the first line is \input texinfo, assume it's texinfo.
-  # Otherwise, guess from the file extension.
-  if test -n "$set_language"; then
-    language=$set_language
-  elif sed 1q "$command_line_filename" | grep 'input texinfo' >/dev/null; then
-    language=texinfo
-  else
-    language=
-  fi
-
-  # Get the type of the file (latex or texinfo) from the given language
-  # we just guessed, or from the file extension if not set yet.
-  case ${language:-$filename_ext} in
-    [lL]a[tT]e[xX] | *.ltx | *.tex)
-      # Assume a LaTeX file.  LaTeX needs bibtex and uses latex for
-      # compilation.  No makeinfo.
-      bibtex=${BIBTEX:-bibtex}
-      makeinfo= # no point in running makeinfo on latex source.
-      texindex=${MAKEINDEX:-makeindex}
-      if test $oformat = dvi; then
-        tex=${LATEX:-latex}
-      else
-        tex=${PDFLATEX:-pdflatex}
-      fi
-      ;;
-
-    *)
-      # Assume a Texinfo file.  Texinfo files need makeinfo, texindex and tex.
-      bibtex=
-      texindex=${TEXINDEX:-texindex}
-      if test $oformat = dvi; then
-        tex=${TEX:-tex}
-      else
-        tex=${PDFTEX:-pdftex}
-      fi
-      # Unless required by the user, makeinfo expansion is wanted only
-      # if texinfo.tex is too old.
-      if test "$expand" = t; then
-        makeinfo=${MAKEINFO:-makeinfo}
-      else
-        # Check if texinfo.tex performs macro expansion by looking for
-        # its version.  The version is a date of the form YEAR-MO-DA.
-        # We don't need to use [0-9] to match the digits since anyway
-        # the comparison with $txiprereq, a number, will fail with non
-        # digits.
-        txiversion_tex=txiversion.tex
-        echo '\input texinfo.tex @bye' >$tmpdir/$txiversion_tex
-        # Run in the tmpdir to avoid leaving files.
-        eval `cd $tmpdir >/dev/null &&
-              $tex $txiversion_tex 2>/dev/null |
-              sed -n 's/^.*\[\(.*\)version \(....\)-\(..\)-\(..\).*$/txiformat=\1 txiversion="\2\3\4"/p'`
-        $verbose "texinfo.tex preloaded as \`$txiformat', version is \`$txiversion' ..."
-        if test "$txiprereq" -le "$txiversion" >/dev/null 2>&1; then
-          makeinfo=
-        else
-          makeinfo=${MAKEINFO:-makeinfo}
-        fi
-        # As long as we had to run TeX, offer the user this convenience
-        if test "$txiformat" = Texinfo; then
-          escape=@
-        fi
-      fi
-      ;;
-  esac
-
-  # Expand macro commands in the original source file using Makeinfo.
-  # Always use `end' footnote style, since the `separate' style
-  #   generates different output (arguably this is a bug in -E).
-  # Discard main info output, the user asked to run TeX, not makeinfo.
-  if test -n "$makeinfo"; then
-    $verbose "Macro-expanding $command_line_filename to $filename_src ..."
-    sed -f $comment_iftex_sed "$command_line_filename" \
-      | $makeinfo --footnote-style=end -I "$filename_dir" $miincludes \
-        -o /dev/null --macro-expand=- \
-      | sed -f $uncomment_iftex_sed >"$filename_src"
-    filename_input=$filename_src
-  fi
-
-  # If makeinfo failed (or was not even run), use the original file as input.
-  if test $? -ne 0 \
-     || test ! -r "$filename_src"; then
-    $verbose "Reverting to $command_line_filename ..."
-    filename_input=$filename_dir/$filename_ext
-  fi
-
-  # Used most commonly for @finalout, @smallbook, etc.
-  if test -n "$textra"; then
-    $verbose "Inserting extra commands: $textra"
-    sed '/^@setfilename/a\
-'"$textra" "$filename_input" >$filename_xtr
-    filename_input=$filename_xtr
-  fi
-
-  # If clean mode was specified, then move to the temporary directory.
-  if test "$clean" = t; then
-    $verbose "cd $tmpdir_src"
-    cd "$tmpdir_src" || exit 1
-  fi
-
-  while :; do # will break out of loop below
-    orig_xref_files=`$get_xref_files "$filename_noext"`
-
-    # Save copies of originals for later comparison.
-    if test -n "$orig_xref_files"; then
-      $verbose "Backing up xref files: `echo $orig_xref_files | sed 's|\./||g'`"
-      cp $orig_xref_files $tmpdir_bak
-    fi
-
-    # Run bibtex on current file.
-    # - If its input (AUX) exists.
-    # - If AUX contains both `\bibdata' and `\bibstyle'.
-    # - If some citations are missing (LOG contains `Citation').
-    #   or the LOG complains of a missing .bbl
-    #
-    # We run bibtex first, because I can see reasons for the indexes
-    # to change after bibtex is run, but I see no reason for the
-    # converse.
-    #
-    # Don't try to be too smart.  Running bibtex only if the bbl file
-    # exists and is older than the LaTeX file is wrong, since the
-    # document might include files that have changed.  Because there
-    # can be several AUX (if there are \include's), but a single LOG,
-    # looking for missing citations in LOG is easier, though we take
-    # the risk to match false messages.
-    if test -n "$bibtex" \
-       && test -r "$filename_noext.aux" \
-       && test -r "$filename_noext.log" \
-       && (grep '^\\bibdata[{]'  "$filename_noext.aux" \
-           && grep '^\\bibstyle[{]' "$filename_noext.aux" \
-           && (grep 'Warning:.*Citation.*undefined' "$filename_noext.log" \
-               || grep 'No file .*\.bbl\.' "$filename_noext.log")) \
-          >/dev/null 2>&1; \
-    then
-      $verbose "Running $bibtex $filename_noext ..."
-      if $bibtex "$filename_noext" >&5; then :; else
-        echo "$0: $bibtex exited with bad status, quitting." >&2
-        exit 1
-      fi
-    fi
-
-    # What we'll run texindex on -- exclude non-index files.
-    # Since we know index files are last, it is correct to remove everything
-    # before .aux and .?o?.  But don't really do <anything>o<anything>
-    # -- don't match whitespace as <anything>.
-    # Otherwise, if orig_xref_files contains something like
-    #   foo.xo foo.whatever
-    # the space after the o will get matched.
-    index_files=`echo "$orig_xref_files" \
-                 | sed "s!.*\.aux!!g;
-                        s!./$filename_noext\.[^ ]o[^ ]!!g;
-                        s/^[ ]*//;s/[ ]*$//"`
-    # Run texindex (or makeindex) on current index files.  If they
-    # already exist, and after running TeX a first time the index
-    # files don't change, then there's no reason to run TeX again.
-    # But we won't know that if the index files are out of date or
-    # nonexistent.
-    if test -n "$texindex" && test -n "$index_files"; then
-      $verbose "Running $texindex $index_files ..."
-      if $texindex $index_files 2>&5 1>&2; then :; else
-         echo "$0: $texindex exited with bad status, quitting." >&2
-         exit 1
-      fi
-    fi
-
-    # Finally, run TeX.
-    # Prevent $ESCAPE from being interpreted by the shell if it happens
-    # to be `/'.
-    $batch tex_args="\\${escape}nonstopmode\ \\${escape}input"
-    cmd="$tex $tex_args $filename_input"
-    $verbose "Running $cmd ..."
-    if $cmd >&5; then :; else
-      echo "$0: $tex exited with bad status, quitting." >&2
-      echo "$0: see $filename_noext.log for errors." >&2
-      test "$clean" = t \
-        && cp "$filename_noext.log" "$orig_pwd"
-      exit 1
-    fi
-
-
-    # Decide if looping again is needed.
-    finished=t
-
-    # LaTeX (and the package changebar) report in the LOG file if it
-    # should be rerun.  This is needed for files included from
-    # subdirs, since texi2dvi does not try to compare xref files in
-    # subdirs.  Performing xref files test is still good since LaTeX
-    # does not report changes in xref files.
-    if grep "Rerun to get" "$filename_noext.log" >/dev/null 2>&1; then
-      finished=
-    fi
-
-    # Check if xref files changed.
-    new_xref_files=`$get_xref_files "$filename_noext"`
-    $verbose "Original xref files = `echo $orig_xref_files | sed 's|\./||g'`"
-    $verbose "New xref files      = `echo $new_xref_files | sed 's|\./||g'`"
-
-    # If old and new lists don't at least have the same file list,
-    # then one file or another has definitely changed.
-    test "x$orig_xref_files" != "x$new_xref_files" && finished=
-
-    # File list is the same.  We must compare each file until we find
-    # a difference.
-    if test -n "$finished"; then
-      for this_file in $new_xref_files; do
-        $verbose "Comparing xref file `echo $this_file | sed 's|\./||g'` ..."
-        # cmp -s returns nonzero exit status if files differ.
-        if cmp -s "$this_file" "$tmpdir_bak/$this_file"; then :; else
-          # We only need to keep comparing until we find one that
-          # differs, because we'll have to run texindex & tex again no
-          # matter how many more there might be.
-          finished=
-          $verbose "xref file `echo $this_file | sed 's|\./||g'` differed ..."
-          test "$debug" = t && diff -c "$tmpdir_bak/$this_file" "$this_file"
-          break
-        fi
-      done
-    fi
-
-    # If finished, exit the loop, else rerun the loop.
-    test -n "$finished" && break
-  done
-
-  # If we were in clean mode, compilation was in a tmp directory.
-  # Copy the DVI (or PDF) file into the directory where the compilation
-  # has been done.  (The temp dir is about to get removed anyway.)
-  # We also return to the original directory so that
-  # - the next file is processed in correct conditions
-  # - the temporary file can be removed
-  if test -n "$clean"; then
-    if test -n "$oname"; then
-       dest=$oname
-    else
-       dest=$orig_pwd
-    fi
-    $verbose "Copying $oformat file from `pwd` to $dest"
-    cp -p "./$filename_noext.$oformat" "$dest"
-    cd / # in case $orig_pwd is on a different drive (for DOS)
-    cd $orig_pwd || exit 1
-  fi
-
-  # Remove temporary files.
-  if test "x$debug" = "x"; then
-    $verbose "Removing $tmpdir_src $tmpdir_xtr $tmpdir_bak ..."
-    cd /
-    rm -rf $tmpdir_src $tmpdir_xtr $tmpdir_bak
-  fi
-done
-
-$verbose "$0 done."
-exit 0 # exit successfully, not however we ended the loop.
diff --git a/support/texi2html-1.64 b/support/texi2html-1.64
deleted file mode 100755 (executable)
index bdb3bee..0000000
+++ /dev/null
@@ -1,5429 +0,0 @@
-#! /usr/bin/perl
-'di ';
-'ig 00 ';
-#+##############################################################################
-#
-# texi2html: Program to transform Texinfo documents to HTML
-#
-#    Copyright (C) 1999, 2000  Free Software Foundation, Inc.
-#
-#    This program is free software; you can redistribute it and/or modify
-#    it under the terms of the GNU General Public License as published by
-#    the Free Software Foundation; either version 2 of the License, or
-#    (at your option) any later version.
-#
-#    This program 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 General Public License for more details.
-#
-#    You should have received a copy of the GNU General Public License
-#    along with this program; if not, write to the Free Software
-#    Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-# 
-#-##############################################################################
-
-# This requires perl version 5 or higher
-require 5.0;
-
-#++##############################################################################
-#
-# NOTE FOR DEBUGGING THIS SCRIPT:
-# You can run 'perl texi2html.pl' directly, provided you have
-# the environment variable T2H_HOME set to the directory containing
-# the texi2html.init file
-#
-#--##############################################################################
-
-# CVS version:
-# $Id: texi2html.pl,v 1.55 2000/07/27 14:39:41 obachman Exp $
-
-# Homepage:
-$T2H_HOMEPAGE = <<EOT;
-http://www.mathematik.uni-kl.de/~obachman/Texi2html
-EOT
-
-# Authors:  
-$T2H_AUTHORS = <<EOT;
-Written by: Lionel Cons <Lionel.Cons\@cern.ch> (original author)
-            Karl Berry  <karl\@freefriends.org>
-            Olaf Bachmann <obachman\@mathematik.uni-kl.de>
-            and many others.
-Maintained by: Olaf Bachmann <obachman\@mathematik.uni-kl.de>
-Send bugs and suggestions to <texi2html\@mathematik.uni-kl.de>
-EOT
-
-# Version: set in configure.in
-$THISVERSION = '1.64';
-$THISPROG = "texi2html $THISVERSION";  # program name and version
-  
-# The man page for this program is included at the end of this file and can be
-# viewed using the command 'nroff -man texi2html'.
-
-# Identity:
-
-$T2H_TODAY = &pretty_date;             # like "20 September 1993"
-# the eval prevents this from breaking on system which do not have
-# a proper getpwuid implemented
-eval { ($T2H_USER = (getpwuid ($<))[6]) =~ s/,.*//;}; # Who am i
-
-#+++############################################################################
-#                                                                              #
-# Initialization                                                               #
-# Pasted content of File $(srcdir)/texi2html.init: Default initializations     # 
-#                                                                              #
-#---############################################################################
-
-# leave this within comments, and keep the require statement
-# This way, you can directly run texi2html.pl, if $ENV{T2H_HOME}/texi2html.init
-# exists.
-
-# 
-# -*-perl-*-
-######################################################################
-# File: texi2html.init
-#
-# Sets default values for command-line arguments and for various customizable
-# procedures
-#
-# A copy of this file is pasted into the beginning of texi2html by
-# 'make texi2html'
-#
-# Copy this file and make changes to it, if you like.
-# Afterwards, either, load it with command-line option -init_file <your_init_file>
-#
-# $Id: texi2html.init,v 1.34 2000/07/27 14:09:02 obachman Exp $
-
-######################################################################
-# stuff which can also be set by command-line options
-#
-#
-# Note: values set here, overwrite values set by the command-line
-# options before -init_file and might still be overwritten by
-# command-line arguments following the -init_file option
-#
-
-# T2H_OPTIONS is a hash whose keys are the (long) names of valid
-# command-line options and whose values are a hash with the following keys:
-# type    ==> one of !|=i|:i|=s|:s (see GetOpt::Long for more info)
-# linkage ==> ref to scalar, array, or subroutine (see GetOpt::Long for more info)
-# verbose ==> short description of option (displayed by -h)
-# noHelp  ==> if 1 -> for "not so important options": only print description on -h 1
-#                2 -> for obsolete options: only print description on -h 2
-
-$T2H_DEBUG = 0;
-$T2H_OPTIONS -> {debug} =
-{
- type => '=i',
- linkage => \$main::T2H_DEBUG,
- verbose => 'output HTML with debuging information',
-};
-
-$T2H_DOCTYPE = '<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">'; 
-$T2H_OPTIONS -> {doctype} = 
-{
- type => '=s',
- linkage => \$main::T2H_DOCTYPE,
- verbose => 'document type which is output in header of HTML files',
- noHelp => 1
-};
-
-$T2H_CHECK = 0;
-$T2H_OPTIONS -> {check} =
-{
- type => '!',
- linkage => \$main::T2H_CHECK,
- verbose => 'if set, only check files and output all things that may be Texinfo commands',
- noHelp => 1
-};
-
-# -expand
-# if set to "tex" (or, "info") expand @iftex and @tex (or, @ifinfo) sections
-# else, neither expand @iftex, @tex, nor @ifinfo sections
-$T2H_EXPAND = "info";
-$T2H_OPTIONS -> {expand} = 
-{
- type => '=s',
- linkage => \$T2H_EXPAND,
- verbose => 'Expand info|tex|none section of texinfo source',
-};
-
-# - glossary
-#if set, uses section named `Footnotes' for glossary
-$T2H_USE_GLOSSARY = 0;
-T2H_OPTIONS -> {glossary} =
-{
- type => '!',
- linkage => \$T2H_USE_GLOSSARY,
- verbose => "if set, uses section named `Footnotes' for glossary",
- noHelp  => 1,
-};
-
-
-# -invisible
-# $T2H_INVISIBLE_MARK is the text used to create invisible destination
-# anchors for index links (you can for instance use the invisible.xbm
-# file shipped with this program). This is a workaround for a known
-# bug of many WWW browsers, including netscape.
-# For me, it works fine without it -- on the contrary: if there, it
-# inserts space between headers and start of text (obachman 3/99)
-$T2H_INVISIBLE_MARK = '';
-# $T2H_INVISIBLE_MARK = '&#160;';
-$T2H_OPTIONS -> {invisible} =
-{
- type => '=s',
- linkage => \$T2H_INVISIBLE_MARK,
- verbose => 'use text in invisble anchot',
- noHelp  => 1,
-};
-
-# -iso
-# if set, ISO8879 characters are used for special symbols (like copyright, etc)
-$T2H_USE_ISO = 0;
-$T2H_OPTIONS -> {iso} =
-{
- type => 'iso',
- linkage => \$T2H_USE_ISO,
- verbose => 'if set, ISO8879 characters are used for special symbols (like copyright, etc)',
- noHelp => 1,
-};
-
-# -I
-# list directories where @include files are searched for (besides the
-# directory of the doc file) additional '-I' args add to this list
-@T2H_INCLUDE_DIRS = (".");
-$T2H_OPTIONS -> {I} =
-{
- type => '=s',
- linkage => \@T2H_INCLUDE_DIRS,
- verbose => 'append $s to the @include search path',
-};
-
-# -top_file
-# uses file of this name for top-level file
-# extension is manipulated appropriately, if necessary.
-# If empty, <basename of document>.html is used
-# Typically, you would set this to "index.html".
-$T2H_TOP_FILE = '';
-$T2H_OPTIONS -> {top_file} =
-{
- type => '=s',
- linkage => \$T2H_TOP_FILE,
- verbose => 'use $s as top file, instead of <docname>.html',
-};
-
-
-# -toc_file
-# uses file of this name for table of contents file
-# extension is manipulated appropriately, if necessary.
-# If empty, <basename of document>_toc.html is used
-$T2H_TOC_FILE = '';
-$T2H_OPTIONS -> {toc_file} =
-{
- type => '=s',
- linkage => \$T2H_TOC_FILE,
- verbose => 'use $s as ToC file, instead of <docname>_toc.html',
-};
-
-# -frames
-# if set, output two additional files which use HTML 4.0 "frames".
-$T2H_FRAMES = 0;
-$T2H_OPTIONS -> {frames} =
-{
- type => '!',
- linkage => \$T2H_FRAMES,
- verbose => 'output files which use HTML 4.0 frames (experimental)',
- noHelp => 1,
-};
-
-
-# -menu | -nomenu
-# if set, show the Texinfo menus
-$T2H_SHOW_MENU = 1;
-$T2H_OPTIONS -> {menu} =
-{
- type => '!',
- linkage => \$T2H_SHOW_MENU,
- verbose => 'ouput Texinfo menus',
-};
-
-# -number | -nonumber
-# if set, number sections and show section names and numbers in references 
-# and menus
-$T2H_NUMBER_SECTIONS = 1;
-$T2H_OPTIONS -> {number} =
-{
- type => '!',
- linkage => \$T2H_NUMBER_SECTIONS,
- verbose => 'use numbered sections'
-};
-
-# if set, and T2H_NUMBER_SECTIONS is set, then use node names in menu
-# entries, instead of section names
-$T2H_NODE_NAME_IN_MENU = 0;
-
-# if set and menu entry equals menu descr, then do not print menu descr.
-# Likewise, if node name equals entry name, do not print entry name.
-$T2H_AVOID_MENU_REDUNDANCY = 1;
-
-# -split section|chapter|none 
-# if set to 'section' (resp. 'chapter') create one html file per (sub)section
-# (resp. chapter) and separate pages for Top, ToC, Overview, Index,
-# Glossary, About.
-# otherwise, create monolithic html file which contains whole document
-#$T2H_SPLIT = 'section';
-$T2H_SPLIT = '';
-$T2H_OPTIONS -> {split} =
-{
- type => '=s',
- linkage => \$T2H_SPLIT,
- verbose => 'split document on section|chapter else no splitting',
-};
-
-# -section_navigation|-no-section_navigation
-# if set, then navigation panels are printed at the beginning of each section
-# and, possibly at the end (depending on whether or not there were more than 
-# $T2H_WORDS_IN_PAGE  words on page
-# This is most useful if you do not want to have section navigation 
-# on -split chapter
-$T2H_SECTION_NAVIGATION = 1;
-$T2H_OPTIONS -> {sec_nav} =
-{
- type => '!',
- linkage => \$T2H_SECTION_NAVIGATION,
- verbose => 'output navigation panels for each section',
-};
-
-# -subdir
-# if set put result files in this directory
-# if not set result files are put into current directory
-#$T2H_SUBDIR = 'html';
-$T2H_SUBDIR = '';
-$T2H_OPTIONS -> {subdir} =
-{
- type => '=s',
- linkage => \$T2H_SUBDIR,
- verbose => 'put HTML files in directory $s, instead of $cwd',
-};
-
-# -short_extn
-# If this is set all HTML file will have extension ".htm" instead of
-# ".html". This is helpful when shipping the document to PC systems.
-$T2H_SHORTEXTN = 0;
-$T2H_OPTIONS -> {short_ext} =
-{
- type => '!',
- linkage => \$T2H_SHORTEXTN,
- verbose => 'use "htm" extension for output HTML files',
-};
-
-
-# -prefix
-# Set the output file prefix, prepended to all .html, .gif and .pl files.
-# By default, this is the basename of the document
-$T2H_PREFIX = '';
-$T2H_OPTIONS -> {prefix} =
-{
- type => '=s',
- linkage => \$T2H_PREFIX,
- verbose => 'use as prefix for output files, instead of <docname>',
-};
-
-# -o filename
-# If set, generate monolithic document output html into $filename
-$T2H_OUT = '';
-$T2H_OPTIONS -> {out_file} =
-{
- type => '=s',
- linkage => sub {$main::T2H_OUT = @_[1]; $T2H_SPLIT = '';},
- verbose => 'if set, all HTML output goes into file $s',
-};
-
-# -short_ref
-#if set cross-references are given without section numbers
-$T2H_SHORT_REF = '';
-$T2H_OPTIONS -> {short_ref} =
-{
- type => '!',
- linkage => \$T2H_SHORT_REF,
- verbose => 'if set, references are without section numbers',
-};
-
-# -idx_sum
-# if value is set, then for each @prinindex $what
-# $docu_name_$what.idx is created which contains lines of the form
-# $key\t$ref sorted alphabetically (case matters)
-$T2H_IDX_SUMMARY = 0;
-$T2H_OPTIONS -> {idx_sum} =
-{
- type => '!',
- linkage => \$T2H_IDX_SUMMARY,
- verbose => 'if set, also output index summary',
- noHelp  => 1,
-};
-
-# -verbose
-# if set, chatter about what we are doing
-$T2H_VERBOSE = '';
-$T2H_OPTIONS -> {Verbose} =
-{
- type => '!',
- linkage => \$T2H_VERBOSE,
- verbose => 'print progress info to stdout',
-};
-
-# -lang
-# For page titles use $T2H_WORDS->{$T2H_LANG}->{...} as title.
-# To add a new language, supply list of titles (see $T2H_WORDS below).
-# and use ISO 639 language codes (see e.g. perl module Locale-Codes-1.02 
-# for  definitions)
-# Default's to 'en' if not set or no @documentlanguage is specified
-$T2H_LANG = '';
-$T2H_OPTIONS -> {lang} =
-{
- type => '=s',
- linkage => sub {SetDocumentLanguage($_[1])},
- verbose => 'use $s as document language (ISO 639 encoding)',
-};
-
-# -l2h
-# if set, uses latex2html for generation of math content 
-$T2H_L2H = '';
-$T2H_OPTIONS -> {l2h} =
-{
- type => '!',
- linkage => \$T2H_L2H,
- verbose => 'if set, uses latex2html for @math and @tex',
-};
-
-######################
-# The following options are only relevant if $T2H_L2H is set
-#
-# -l2h_l2h
-# name/location of latex2html progam
-$T2H_L2H_L2H = "latex2html";
-$T2H_OPTIONS -> {l2h_l2h} =
-{
- type => '=s',
- linkage => \$T2H_L2H_L2H,
- verbose => 'program to use for latex2html translation',
- noHelp => 1,
-};
-
-# -l2h_skip
-# if set, skips actual call to latex2html tries to reuse previously generated 
-# content, instead
-$T2H_L2H_SKIP = '';
-$T2H_OPTIONS -> {l2h_skip} =
-{
- type => '!',
- linkage => \$T2H_L2H_SKIP,
- verbose => 'if set, tries to reuse previously latex2html output',
- noHelp => 1,
-};
-
-# -l2h_tmp
-# if set, l2h uses this directory for temporarary files. The path
-# leading to this directory may not contain a dot (i.e., a "."),
-# otherwise, l2h will fail
-$T2H_L2H_TMP = '';
-$T2H_OPTIONS -> {l2h_tmp} =
-{
- type => '=s',
- linkage => \$T2H_L2H_TMP,
- verbose => 'if set, uses $s as temporary latex2html directory',
- noHelp => 1,
-};
-
-# if set, cleans intermediate files (they all have the prefix $doc_l2h_) 
-# of l2h 
-$T2H_L2H_CLEAN = 1;
-$T2H_OPTIONS -> {l2h_clean} =
-{
- type => '!',
- linkage => \$T2H_L2H_CLEAN,
- verbose => 'if set, do not keep intermediate latex2html files for later reuse',
- noHelp => 1,
-};
-
-$T2H_OPTIONS -> {D} =
-{
- type => '=s',
- linkage => sub {$main::value{@_[1]} = 1;},
- verbose => 'equivalent to Texinfo "@set $s 1"',
- noHelp => 1,
-};
-
-$T2H_OPTIONS -> {init_file} =
-{
- type => '=s',
- linkage => \&LoadInitFile,
- verbose => 'load init file $s'
-};
-
-
-##############################################################################
-#
-# The following can only be set in the init file
-#
-##############################################################################
-
-# if set, center @image by default
-# otherwise, do not center by default
-$T2H_CENTER_IMAGE = 1;
-
-# used as identation for block enclosing command @example, etc
-# If not empty, must be enclosed in <td></td>
-$T2H_EXAMPLE_INDENT_CELL = '<td>&nbsp;</td>';
-# same as above, only for @small
-$T2H_SMALL_EXAMPLE_INDENT_CELL = '<td>&nbsp;</td>';
-# font size for @small
-$T2H_SMALL_FONT_SIZE = '-1';
-
-# if non-empty, and no @..heading appeared in Top node, then
-# use this as header for top node/section, otherwise use value of 
-# @settitle or @shorttitle (in that order)
-$T2H_TOP_HEADING = '';
-
-# if set, use this chapter for 'Index' button, else
-# use first chapter whose name matches 'index' (case insensitive)
-$T2H_INDEX_CHAPTER = '';
-
-# if set and $T2H_SPLIT is set, then split index pages at the next letter
-# after they have more than that many entries
-$T2H_SPLIT_INDEX = 100;
-
-# if set (e.g., to index.html) replace hrefs to this file 
-# (i.e., to index.html) by ./
-$T2H_HREF_DIR_INSTEAD_FILE = '';
-
-########################################################################
-# Language dependencies: 
-# To add a new language extend T2H_WORDS hash and create $T2H_<...>_WORDS hash
-# To redefine one word, simply do:
-# $T2H_WORDS->{<language>}->{<word>} = 'whatever' in your personal init file.
-#
-$T2H_WORDS_EN =
-{
- # titles  of pages
- 'ToC_Title' => 'Table of Contents',
- 'Overview_Title' => 'Short Table of Contents',
- 'Index_Title' => 'Index',
- 'About_Title' => 'About this document',
- 'Footnotes_Title' => 'Footnotes',
- 'See' => 'See',
- 'see' => 'see',
- 'section' => 'section',
-# If necessary, we could extend this as follows: 
-#  # text for buttons
-#  'Top_Button' => 'Top',
-#  'ToC_Button' => 'Contents',
-#  'Overview_Button' => 'Overview',
-#  'Index_button' => 'Index',
-#  'Back_Button' => 'Back',
-#  'FastBack_Button' => 'FastBack',
-#  'Prev_Button' => 'Prev',
-#  'Up_Button' => 'Up',
-#  'Next_Button' => 'Next',
-#  'Forward_Button' =>'Forward',
-#  'FastWorward_Button' => 'FastForward',
-#  'First_Button' => 'First',
-#  'Last_Button' => 'Last',
-#  'About_Button' => 'About'
-};
-
-$T2H_WORD_DE =
-{
- 'ToC_Title' => 'Inhaltsverzeichniss',
- 'Overview_Title' => 'Kurzes Inhaltsverzeichniss',
- 'Index_Title' => 'Index',
- 'About_Title' => '&Uuml;ber dieses Dokument',
- 'Footnotes_Title' => 'Fu&szlig;noten',
- 'See' => 'Siehe',
- 'see' => 'siehe',
- 'section' => 'Abschnitt',
-};
-
-$T2H_WORD_NL =
-{
- 'ToC_Title' => 'Inhoudsopgave',
- 'Overview_Title' => 'Korte inhoudsopgave',
- 'Index_Title' => 'Index', #Not sure ;-)
- 'About_Title' => 'No translation available!', #No translation available!
- 'Footnotes_Title' => 'No translation available!', #No translation available!
- 'See' => 'Zie',
- 'see' => 'zie',
- 'section' => 'sectie',
-};
-
-$T2H_WORD_ES =
-{
- 'ToC_Title' => '&iacute;ndice General',
- 'Overview_Title' => 'Resumen del Contenido',
- 'Index_Title' => 'Index', #Not sure ;-)
- 'About_Title' => 'No translation available!', #No translation available!
- 'Footnotes_Title' => 'Fu&szlig;noten',
- 'See' => 'V&eacute;ase',
- 'see' => 'v&eacute;ase',
- 'section' => 'secci&oacute;n',
-};
-
-$T2H_WORD_NO =
-{
- 'ToC_Title' => 'Innholdsfortegnelse',
- 'Overview_Title' => 'Kort innholdsfortegnelse',
- 'Index_Title' => 'Indeks', #Not sure ;-)
- 'About_Title' => 'No translation available!', #No translation available!
- 'Footnotes_Title' => 'No translation available!',
- 'See' => 'Se',
- 'see' => 'se',
- 'section' => 'avsnitt',
-};
-
-$T2H_WORD_PT =
-{
- 'ToC_Title' => 'Sum&aacute;rio',
- 'Overview_Title' => 'Breve Sum&aacute;rio',
- 'Index_Title' => '&Iacute;ndice', #Not sure ;-)
- 'About_Title' => 'No translation available!', #No translation available!
- 'Footnotes_Title' => 'No translation available!',
- 'See' => 'Veja',
- 'see' => 'veja',
- 'section' => 'Se&ccedil;&atilde;o',
-};
-
-$T2H_WORDS =
-{
- 'en' => $T2H_WORDS_EN,
- 'de' => $T2H_WORDS_DE,
- 'nl' => $T2H_WORDS_NL,
- 'es' => $T2H_WORDS_ES,
- 'no' => $T2H_WORDS_NO,
- 'pt' => $T2H_WORDS_PT
-};
-
-@MONTH_NAMES_EN =
-(
- 'January', 'February', 'March', 'April', 'May',
- 'June', 'July', 'August', 'September', 'October',
- 'November', 'December'
-);
-
-@MONTH_NAMES_DE =
-(
- 'Januar', 'Februar', 'M&auml;rz', 'April', 'Mai',
- 'Juni', 'Juli', 'August', 'September', 'Oktober',
- 'November', 'Dezember'
-);
-
-@MONTH_NAMES_NL =
-(
- 'Januari', 'Februari', 'Maart', 'April', 'Mei',
- 'Juni', 'Juli', 'Augustus', 'September', 'Oktober',
- 'November', 'December'
-);
-
-@MONTH_NAMES_ES =
-(
- 'enero', 'febrero', 'marzo', 'abril', 'mayo',
- 'junio', 'julio', 'agosto', 'septiembre', 'octubre',
- 'noviembre', 'diciembre'
-);
-
-@MONTH_NAMES_NO =
-(
-
- 'januar', 'februar', 'mars', 'april', 'mai',
- 'juni', 'juli', 'august', 'september', 'oktober',
- 'november', 'desember'
-);
-
-@MONTH_NAMES_PT =
-(
- 'Janeiro', 'Fevereiro', 'Mar&ccedil;o', 'Abril', 'Maio',
- 'Junho', 'Julho', 'Agosto', 'Setembro', 'Outubro',
- 'Novembro', 'Dezembro'
-);
-
-
-$MONTH_NAMES =
-{
-    'en' => \@MONTH_NAMES_EN,
-    'de' => \@MONTH_NAMES_DE,
-    'es' => \@MONTH_NAMES_ES,
-    'nl' => \@MONTH_NAMES_NL,
-    'no' => \@MONTH_NAMES_NO,
-    'pt' => \@MONTH_NAMES_PT
-};
-########################################################################
-# Control of Page layout:
-# You can make changes of the Page layout at two levels:
-# 1.) For small changes, it is often enough to change the value of
-#     some global string/hash/array variables
-# 2.) For larger changes, reimplement one of the T2H_DEFAULT_<fnc>* routines,
-#     give them another name, and assign them to the respective
-#     $T2H_<fnc> variable.
-
-# As a general interface, the hashes T2H_HREF, T2H_NAME, T2H_NODE hold 
-# href, html-name, node-name of
-# This     -- current section (resp. html page)
-# Top      -- top page ($T2H_TOP_FILE)
-# Contents -- Table of contents
-# Overview -- Short table of contents
-# Index    -- Index page
-# About    -- page which explain "navigation buttons"
-# First    -- first node 
-# Last     -- last node
-#
-# Whether or not the following hash values are set, depends on the context 
-# (all values are w.r.t. 'This' section)
-# Next        -- next node of texinfo
-# Prev        -- previous node of texinfo
-# Up          -- up node of texinfo
-# Forward     -- next node in reading order
-# Back        -- previous node in reading order
-# FastForward -- if leave node, up and next, else next node
-# FastBackward-- if leave node, up and prev, else prev node
-#
-# Furthermore, the following global variabels are set:
-# $T2H_THISDOC{title}     -- title as set by @setttile
-# $T2H_THISDOC{fulltitle} -- full title as set by @title...
-# $T2H_THISDOC{subtitle}  -- subtitle as set by @subtitle
-# $T2H_THISDOC{author}    -- author as set by @author
-# 
-# and pointer to arrays of lines which need to be printed by t2h_print_lines 
-# $T2H_OVERVIEW      -- lines of short table of contents
-# $T2H_TOC           -- lines of table of contents
-# $T2H_TOP           -- lines of Top texinfo node 
-# $T2H_THIS_SECTION  -- lines of 'This' section
-
-#
-# There are the following subs which control the layout:
-#
-$T2H_print_section            = \&T2H_DEFAULT_print_section;
-$T2H_print_Top_header         = \&T2H_DEFAULT_print_Top_header;       
-$T2H_print_Top_footer        = \&T2H_DEFAULT_print_Top_footer;       
-$T2H_print_Top               = \&T2H_DEFAULT_print_Top;              
-$T2H_print_Toc               = \&T2H_DEFAULT_print_Toc;              
-$T2H_print_Overview          = \&T2H_DEFAULT_print_Overview;         
-$T2H_print_Footnotes         = \&T2H_DEFAULT_print_Footnotes;        
-$T2H_print_About             = \&T2H_DEFAULT_print_About;            
-$T2H_print_misc_header       = \&T2H_DEFAULT_print_misc_header;      
-$T2H_print_misc_footer       = \&T2H_DEFAULT_print_misc_footer;      
-$T2H_print_misc                      = \&T2H_DEFAULT_print_misc;
-$T2H_print_chapter_header     = \&T2H_DEFAULT_print_chapter_header;      
-$T2H_print_chapter_footer     = \&T2H_DEFAULT_print_chapter_footer;      
-$T2H_print_page_head         = \&T2H_DEFAULT_print_page_head;        
-$T2H_print_page_foot         = \&T2H_DEFAULT_print_page_foot;        
-$T2H_print_head_navigation    = \&T2H_DEFAULT_print_head_navigation;  
-$T2H_print_foot_navigation    = \&T2H_DEFAULT_print_foot_navigation;  
-$T2H_button_icon_img         = \&T2H_DEFAULT_button_icon_img;        
-$T2H_print_navigation        = \&T2H_DEFAULT_print_navigation;       
-$T2H_about_body                      = \&T2H_DEFAULT_about_body;            
-$T2H_print_frame              = \&T2H_DEFAULT_print_frame;
-$T2H_print_toc_frame          = \&T2H_DEFAULT_print_toc_frame;
-
-########################################################################
-# Layout for html for every sections
-#
-sub T2H_DEFAULT_print_section
-{
-  my $fh = shift;
-  local $T2H_BUTTONS = \@T2H_SECTION_BUTTONS;
-  &$T2H_print_head_navigation($fh) if $T2H_SECTION_NAVIGATION;
-  my $nw = t2h_print_lines($fh);
-  if ($T2H_SPLIT eq 'section' && $T2H_SECTION_NAVIGATION)
-  {
-    &$T2H_print_foot_navigation($fh, $nw);
-  }
-  else
-  {
-    print $fh '<HR SIZE="6">' . "\n";
-  }
-}
-
-###################################################################
-# Layout of top-page I recommend that you use @ifnothtml, @ifhtml,
-# @html within the Top texinfo node to specify content of top-level
-# page. 
-#
-# If you enclose everything in @ifnothtml, then title, subtitle,
-# author and overview is printed
-# T2H_HREF of Next, Prev, Up, Forward, Back are not defined
-# if $T2H_SPLIT then Top page is in its own html file
-sub T2H_DEFAULT_print_Top_header
-{
-  &$T2H_print_page_head(@_) if $T2H_SPLIT;
-  t2h_print_label(@_); # this needs to be called, otherwise no label set
-  &$T2H_print_head_navigation(@_);
-}
-sub T2H_DEFAULT_print_Top_footer
-{
-  &$T2H_print_foot_navigation(@_);
-  &$T2H_print_page_foot(@_) if $T2H_SPLIT; 
-}
-sub T2H_DEFAULT_print_Top
-{
-  my $fh = shift;
-
-  # for redefining navigation buttons use:
-  # local $T2H_BUTTONS = [...];
-  # as it is, 'Top', 'Contents', 'Index', 'About' are printed
-  local $T2H_BUTTONS = \@T2H_MISC_BUTTONS;
-  &$T2H_print_Top_header($fh);
-  if ($T2H_THIS_SECTION)
-  {
-    # if top-level node has content, then print it with extra header
-    print $fh "<H1>$T2H_NAME{Top}</H1>"
-      unless ($T2H_HAS_TOP_HEADING);
-    t2h_print_lines($fh, $T2H_THIS_SECTION)
-  }
-  else
-  {
-    # top-level node is fully enclosed in @ifnothtml
-    # print fulltitle, subtitle, author, Overview
-    print $fh 
-      "<CENTER>\n<H1>" .
-      join("</H1>\n<H1>", split(/\n/,  $T2H_THISDOC{fulltitle})) .
-      "</H1>\n";
-    print $fh "<H2>$T2H_THISDOC{subtitle}</H2>\n" if $T2H_THISDOC{subtitle};
-    print $fh "$T2H_THISDOC{author}\n" if $T2H_THISDOC{author};
-    print $fh <<EOT;
-</CENTER>
-<HR>
-<P></P>  
-<H2> Overview: </H2>
-<BLOCKQUOTE>  
-EOT
-    t2h_print_lines($fh, $T2H_OVERVIEW);
-    print $fh "</BLOCKQUOTE>\n";
-  }
-  &$T2H_print_Top_footer($fh);
-}
-
-###################################################################
-# Layout of Toc, Overview, and Footnotes pages
-# By default, we use "normal" layout 
-# T2H_HREF of Next, Prev, Up, Forward, Back, etc are not defined
-# use: local $T2H_BUTTONS = [...] to redefine navigation buttons
-sub T2H_DEFAULT_print_Toc
-{
-  return &$T2H_print_misc(@_);
-}
-sub T2H_DEFAULT_print_Overview
-{
-  return &$T2H_print_misc(@_);
-}
-sub T2H_DEFAULT_print_Footnotes
-{
-  return &$T2H_print_misc(@_);
-}
-sub T2H_DEFAULT_print_About
-{
-  return &$T2H_print_misc(@_);
-}
-
-sub T2H_DEFAULT_print_misc_header
-{
-  &$T2H_print_page_head(@_) if $T2H_SPLIT;
-  # this needs to be called, otherwise, no labels are set
-  t2h_print_label(@_); 
-  &$T2H_print_head_navigation(@_);
-}
-sub T2H_DEFAULT_print_misc_footer
-{
-  &$T2H_print_foot_navigation(@_);
-  &$T2H_print_page_foot(@_) if $T2H_SPLIT; 
-}
-sub T2H_DEFAULT_print_misc
-{
-  my $fh = shift;
-  local $T2H_BUTTONS = \@T2H_MISC_BUTTONS;
-  &$T2H_print_misc_header($fh);
-  print $fh "<H1>$T2H_NAME{This}</H1>\n";
-  t2h_print_lines($fh);
-  &$T2H_print_misc_footer($fh);
-}
-
-###################################################################
-# chapter_header and chapter_footer are only called if
-# T2H_SPLIT eq 'chapter'
-# chapter_header: after print_page_header, before print_section
-# chapter_footer: after print_section of last section, before print_page_footer
-# 
-# If you want to get rid of navigation stuff after each section,
-# redefine print_section such that it does not call print_navigation,
-# and put print_navigation into print_chapter_header
-@T2H_CHAPTER_BUTTONS =
-  (
-   'FastBack', 'FastForward', ' ', 
-   ' ', ' ', ' ', ' ',
-   'Top', 'Contents', 'Index', 'About', 
-  );
-
-sub T2H_DEFAULT_print_chapter_header
-{
-  # nothing to do there, by default
-  if (! $T2H_SECTION_NAVIGATION)
-  {
-    my $fh = shift;
-    local $T2H_BUTTONS = \@T2H_CHAPTER_BUTTONS;
-    &$T2H_print_navigation($fh);
-    print $fh "\n<HR SIZE=2>\n";
-  }
-}
-
-sub T2H_DEFAULT_print_chapter_footer
-{
-  local $T2H_BUTTONS = \@T2H_CHAPTER_BUTTONS;
-  &$T2H_print_navigation(@_);
-}
-###################################################################
-$T2H_TODAY = &pretty_date;             # like "20 September 1993"
-
-sub pretty_date {
-    local($sec, $min, $hour, $mday, $mon, $year, $wday, $yday, $isdst);
-
-    ($sec, $min, $hour, $mday, $mon, $year, $wday, $yday, $isdst) = localtime(time);
-    $year += ($year < 70) ? 2000 : 1900;
-    # obachman: Let's do it as the Americans do
-    return($MONTH_NAMES->{$T2H_LANG}[$mon] . ", " . $mday . " " . $year);
-}
-
-
-###################################################################
-# Layout of standard header and footer
-#
-
-# Set the default body text, inserted between <BODY ... > 
-###$T2H_BODYTEXT = 'LANG="EN" BGCOLOR="#FFFFFF" TEXT="#000000" LINK="#0000FF" VLINK="#800080" ALINK="#FF0000"';
-$T2H_BODYTEXT = 'LANG="' . $T2H_LANG . '" BGCOLOR="#FFFFFF" TEXT="#000000" LINK="#0000FF" VLINK="#800080" ALINK="#FF0000"';
-# text inserted after <BODY ...>
-$T2H_AFTER_BODY_OPEN = '';
-#text inserted before </BODY>
-$T2H_PRE_BODY_CLOSE = '';
-# this is used in footer
-$T2H_ADDRESS = "by <I>$T2H_USER</I> " if $T2H_USER;
-$T2H_ADDRESS .= "on <I>$T2H_TODAY</I>";
-# this is added inside <HEAD></HEAD> after <TITLE> and some META NAME stuff
-# can be used for <style> <script>, <meta> tags
-$T2H_EXTRA_HEAD = '';
-
-sub T2H_DEFAULT_print_page_head
-{
-  my $fh = shift; 
-  my $longtitle = "$T2H_THISDOC{title}: $T2H_NAME{This}";
-  print $fh <<EOT;
-<HTML>
-$T2H_DOCTYPE
-<!-- Created on $T2H_TODAY by $THISPROG -->
-<!-- 
-$T2H_AUTHORS 
--->
-<HEAD>
-<TITLE>$longtitle</TITLE>
-
-<META NAME="description" CONTENT="$longtitle">
-<META NAME="keywords" CONTENT="$longtitle">
-<META NAME="resource-type" CONTENT="document">
-<META NAME="distribution" CONTENT="global">
-<META NAME="Generator" CONTENT="$THISPROG">
-$T2H_EXTRA_HEAD
-</HEAD>
-
-<BODY $T2H_BODYTEXT>
-$T2H_AFTER_BODY_OPEN
-EOT
-}
-
-sub T2H_DEFAULT_print_page_foot
-{
-  my $fh = shift;
-  print $fh <<EOT;
-<BR>  
-<FONT SIZE="-1">
-This document was generated
-$T2H_ADDRESS
-using <A HREF="$T2H_HOMEPAGE"><I>texi2html</I></A>
-$T2H_PRE_BODY_CLOSE
-</BODY>
-</HTML>
-EOT
-}
-
-###################################################################
-# Layout of navigation panel
-
-# if this is set, then a vertical navigation panel is used
-$T2H_VERTICAL_HEAD_NAVIGATION = 0;
-sub T2H_DEFAULT_print_head_navigation
-{
-  my $fh = shift;
-  if ($T2H_VERTICAL_HEAD_NAVIGATION)
-  {
-    print $fh <<EOT;
-<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="0">
-<TR VALIGN="TOP">
-<TD ALIGN="LEFT">
-EOT
-  }
-  &$T2H_print_navigation($fh, $T2H_VERTICAL_HEAD_NAVIGATION);
-  if ($T2H_VERTICAL_HEAD_NAVIGATION)
-  {
-    print $fh <<EOT;
-</TD>
-<TD ALIGN="LEFT">
-EOT
-  }
-  elsif ($T2H_SPLIT eq 'section')
-  {
-    print $fh "<HR SIZE=1>\n";
-  }
-}
-
-# Specifies the minimum page length required before a navigation panel
-# is placed at the bottom of a page (the default is that of latex2html)
-# T2H_THIS_WORDS_IN_PAGE holds number of words of current page
-$T2H_WORDS_IN_PAGE = 300;
-sub T2H_DEFAULT_print_foot_navigation
-{
-  my $fh = shift;
-  my $nwords = shift;
-  if ($T2H_VERTICAL_HEAD_NAVIGATION)
-  {
-    print $fh <<EOT;
-</TD>
-</TR>
-</TABLE>
-EOT
-  }
-  print $fh "<HR SIZE=1>\n";
-  &$T2H_print_navigation($fh) if ($nwords >= $T2H_WORDS_IN_PAGE)
-}
-
-######################################################################
-# navigation panel
-#
-# specify in this array which "buttons" should appear in which order
-# in the navigation panel for sections; use ' ' for empty buttons (space)
-@T2H_SECTION_BUTTONS =
-  (
-   'Back', 'Forward', ' ', 'FastBack', 'Up', 'FastForward',  
-   ' ', ' ', ' ', ' ',
-   'Top', 'Contents', 'Index', 'About', 
-  );
-
-# buttons for misc stuff
-@T2H_MISC_BUTTONS = ('Top', 'Contents', 'Index', 'About');
-
-# insert here name of icon images for buttons 
-# Icons are used, if $T2H_ICONS and resp. value are set
-%T2H_ACTIVE_ICONS =
-  (
-   'Top',      '',
-   'Contents', '',
-   'Overview', '',
-   'Index',    '',
-   'Back',     '',
-   'FastBack', '',
-   'Prev',     '',
-   'Up',       '',
-   'Next',     '',
-   'Forward',  '',
-   'FastForward', '',
-   'About' ,    '',
-   'First',    '',
-   'Last',     '',
-   ' ',        ''
-  );
-
-# insert here name of icon images for these, if button is inactive
-%T2H_PASSIVE_ICONS =
-  (
-   'Top',      '',
-   'Contents', '',
-   'Overview', '',
-   'Index',    '',
-   'Back',     '',
-   'FastBack', '',
-   'Prev',     '',
-   'Up',       '',
-   'Next',     '',
-   'Forward',  '',
-   'FastForward', '',
-   'About',     '',
-   'First',    '',
-   'Last',     '',
-  );
-
-# how to create IMG tag
-sub T2H_DEFAULT_button_icon_img
-{
-  my $button = shift;
-  my $icon = shift;
-  my $name = shift;
-  return qq{<IMG SRC="$icon" BORDER="0" ALT="$button: $name" ALIGN="MIDDLE">};
-}
-
-# Names of text as alternative for icons
-%T2H_NAVIGATION_TEXT =
-  (
-   'Top',      'Top',
-   'Contents', 'Contents',
-   'Overview', 'Overview',
-   'Index',    'Index',
-   ' ',        ' &nbsp; ',
-   'Back',     ' &lt; ',
-   'FastBack', ' &lt;&lt; ',
-   'Prev',     'Prev',
-   'Up',       ' Up ',
-   'Next',     'Next',
-   'Forward',  ' &gt; ',
-   'FastForward',  ' &gt;&gt; ',
-   'About',     ' ? ',
-   'First',    ' |&lt; ',
-   'Last',     ' &gt;| '
-  );
-
-sub T2H_DEFAULT_print_navigation
-{
-  my $fh = shift;
-  my $vertical = shift;
-  my $spacing = 1;
-  print $fh "<TABLE CELLPADDING=$spacing CELLSPACING=$spacing BORDER=0>\n";
-
-  print $fh "<TR>" unless $vertical;
-  for $button (@$T2H_BUTTONS)
-  {
-    print $fh qq{<TR VALIGN="TOP" ALIGN="LEFT">\n} if $vertical;
-    print $fh qq{<TD VALIGN="MIDDLE" ALIGN="LEFT">};
-
-    if (ref($button) eq 'CODE')
-    {
-      &$button($fh, $vertical);
-    }
-    elsif ($button eq ' ')
-    { # handle space button
-      print $fh 
-       $T2H_ICONS && $T2H_ACTIVE_ICONS{' '} ? 
-        &$T2H_button_icon_img($button, $T2H_ACTIVE_ICONS{' '}) :
-        $T2H_NAVIGATION_TEXT{' '};
-      next;
-    }
-    elsif ($T2H_HREF{$button})
-    { # button is active
-      print $fh   
-        $T2H_ICONS && $T2H_ACTIVE_ICONS{$button} ? # use icon ? 
-          t2h_anchor('', $T2H_HREF{$button},  # yes
-                   &$T2H_button_icon_img($button,
-                                       $T2H_ACTIVE_ICONS{$button},
-                                       $T2H_NAME{$button})) 
-        : # use text
-        "[" . 
-        t2h_anchor('', $T2H_HREF{$button}, $T2H_NAVIGATION_TEXT{$button}) .
-        "]";  
-    }
-    else
-    { # button is passive 
-      print $fh 
-       $T2H_ICONS && $T2H_PASSIVE_ICONS{$button} ?
-        &$T2H_button_icon_img($button,
-                              $T2H_PASSIVE_ICONS{$button},
-                              $T2H_NAME{$button}) :
-        
-        "[" . $T2H_NAVIGATION_TEXT{$button} . "]";
-    }
-    print $fh "</TD>\n";
-    print $fh "</TR>\n" if $vertical;
-  }
-  print $fh "</TR>" unless $vertical;
-  print $fh "</TABLE>\n";
-}
-
-######################################################################
-# Frames: this is from "Richard Y. Kim" <ryk@coho.net>
-# Should be improved to be more conforming to other _print* functions
-
-sub T2H_DEFAULT_print_frame
-{
-  my $fh = shift;
-  print $fh <<EOT;
-<HTML>
-<HEAD><TITLE>$T2H_THISDOC{title}</TITLE></HEAD>
-<FRAMESET cols="140,*"> 
-  <FRAME name=toc  src="$docu_toc_frame_file">
-  <FRAME name=main src="$docu_doc">
-</FRAMESET> 
-</HTML>
-EOT
-}
-
-sub T2H_DEFAULT_print_toc_frame
-{
-  my $fh = shift;
-  &$T2H_print_page_head($fh);
-  print $fh <<EOT;
-<H2>Content</H2>
-EOT
-  print $fh map {s/HREF=/target=\"main\" HREF=/; $_;} @stoc_lines;
-  print $fh "</BODY></HTML>\n";
-}
-
-######################################################################
-# About page
-#
-
-# T2H_PRE_ABOUT might be a function
-$T2H_PRE_ABOUT = <<EOT;
-This document was generated $T2H_ADDRESS
-using <A HREF="$T2H_HOMEPAGE"><I>texi2html</I></A>
-<P></P>  
-EOT
-$T2H_AFTER_ABOUT = '';
-
-sub T2H_DEFAULT_about_body
-{
-  my $about;
-  if (ref($T2H_PRE_ABOUT) eq 'CODE')
-  {
-    $about = &$T2H_PRE_ABOUT();
-  }
-  else
-  {
-    $about = $T2H_PRE_ABOUT;
-  }
-  $about .= <<EOT;
-The buttons in the navigation panels have the following meaning:
-<P></P>
-<table border = "1">
-<TR>
-<TH> Button </TH>
-<TH> Name </TH>
-<TH> Go to </TH>
-<TH> From 1.2.3 go to</TH>
-</TR>
-EOT
-  
-  for $button (@T2H_SECTION_BUTTONS)
-  {
-    next if $button eq ' ' || ref($button) eq 'CODE';
-    $about .= <<EOT;
-<TR>
-<TD ALIGN="CENTER">
-EOT
-    $about .=  
-      ($T2H_ICONS && $T2H_ACTIVE_ICONS{$button} ?
-       &$T2H_button_icon_img($button, $T2H_ACTIVE_ICONS{$button}) :
-       " [" . $T2H_NAVIGATION_TEXT{$button} . "] ");
-    $about .= <<EOT;
-</TD>
-<TD ALIGN="CENTER">
-$button
-</TD>
-<TD>
-$T2H_BUTTONS_GOTO{$button}
-</TD>
-<TD>
-$T2H_BUTTONS_EXAMPLE{$button}
-</TD>
-</TR>
-EOT
-  }
-
-  $about .= <<EOT;
-</TABLE>
-<P></P>
-where the <STRONG> Example </STRONG> assumes that the current position 
-is at <STRONG> Subsubsection One-Two-Three </STRONG> of a document of 
-the following structure:
-<UL>
-<LI> 1. Section One  </LI>
-<UL>
-<LI>1.1 Subsection One-One</LI>
-<UL>
-<LI> ... </LI>
-</UL>
-<LI>1.2 Subsection One-Two</LI>
-<UL>
-<LI>1.2.1 Subsubsection One-Two-One
-</LI><LI>1.2.2 Subsubsection One-Two-Two
-</LI><LI>1.2.3 Subsubsection One-Two-Three &nbsp; &nbsp; <STRONG>
-&lt;== Current Position </STRONG>
-</LI><LI>1.2.4 Subsubsection One-Two-Four
-</LI></UL>
-<LI>1.3 Subsection One-Three</LI>
-<UL>
-<LI> ... </LI>
-</UL>
-<LI>1.4 Subsection One-Four</LI>
-</UL>
-</UL>
-$T2H_AFTER_ABOUT
-EOT
-  return $about;  
-}
-
-  
-%T2H_BUTTONS_GOTO =
-  (
-   'Top',      'cover (top) of document',
-   'Contents', 'table of contents',
-   'Overview', 'short table of contents',
-   'Index',    'concept index',
-   'Back',     'previous section in reading order',
-   'FastBack', 'previous or up-and-previous section ',
-   'Prev',     'previous section same level',
-   'Up',       'up section',
-   'Next',     'next section same level',
-   'Forward',  'next section in reading order',
-   'FastForward', 'next or up-and-next section',
-   'About' ,    'this page',
-   'First',    'first section in reading order',
-   'Last',     'last section in reading order',
-  );
-
-%T2H_BUTTONS_EXAMPLE = 
-(
-   'Top',      ' &nbsp; ',
-   'Contents', ' &nbsp; ',
-   'Overview', ' &nbsp; ',
-   'Index',    ' &nbsp; ',
-   'Back',     '1.2.2',
-   'FastBack', '1.1',
-   'Prev',     '1.2.2',
-   'Up',       '1.2',
-   'Next',     '1.2.4',
-   'Forward',  '1.2.4',
-   'FastForward', '1.3',
-   'About',     ' &nbsp; ',
-   'First',    '1.',
-   'Last',     '1.2.4',
-);
-
-
-######################################################################
-# from here on, its l2h init stuff 
-#
-
-## initialization for latex2html as for Singular manual generation
-## obachman 3/99
-
-#
-# Options controlling Titles, File-Names, Tracing and Sectioning
-#
-$TITLE = '';
-
-$SHORTEXTN = 0;
-
-$LONG_TITLES = 0;
-
-$DESTDIR = ''; # should be overwritten by cmd-line argument
-
-$NO_SUBDIR = 0;# should be overwritten by cmd-line argument
-
-$PREFIX = '';  # should be overwritten by cmd-line argument
-
-$AUTO_PREFIX = 0; # this is needed, so that prefix settings are used
-
-$AUTO_LINK = 0; 
-
-$SPLIT = 0;
-
-$MAX_LINK_DEPTH = 0;
-
-$TMP = ''; # should be overwritten by cmd-line argument
-
-$DEBUG = 0;
-
-$VERBOSE = 1;
-
-#
-# Options controlling Extensions and Special Features 
-#
-$HTML_VERSION = "3.2";
-
-$TEXDEFS = 1; # we absolutely need that
-
-$EXTERNAL_FILE = '';
-
-$SCALABLE_FONTS = 1;
-
-$NO_SIMPLE_MATH = 1;
-
-$LOCAL_ICONS = 1;
-
-$SHORT_INDEX = 0;
-
-$NO_FOOTNODE = 1;
-
-$ADDRESS = '';
-
-$INFO = '';
-
-#
-# Switches controlling Image Generation 
-#
-$ASCII_MODE = 0;
-
-$NOLATEX = 0;
-
-$EXTERNAL_IMAGES = 0;
-
-$PS_IMAGES = 0;
-
-$NO_IMAGES = 0;
-
-$IMAGES_ONLY = 0;
-
-$REUSE = 2;
-
-$ANTI_ALIAS = 1;
-
-$ANTI_ALIAS_TEXT = 1;
-
-#
-#Switches controlling Navigation Panels
-#
-$NO_NAVIGATION = 1;
-$ADDRESS = '';
-$INFO = 0;              # 0 = do not make a "About this document..." section 
-
-#
-#Switches for Linking to other documents 
-#
-# actuall -- we don't care
-
-$MAX_SPLIT_DEPTH = 0;  # Stop making separate files at this depth
-
-$MAX_LINK_DEPTH = 0;    # Stop showing child nodes at this depth   
-
-$NOLATEX = 0;           # 1 = do not pass unknown environments to Latex
-
-$EXTERNAL_IMAGES = 0;   # 1 = leave the images outside the document 
-
-$ASCII_MODE = 0;        # 1 = do not use any icons or internal images
-
-# 1 =  use links to external postscript images rather than inlined bitmap
-# images.
-$PS_IMAGES = 0;
-$SHOW_SECTION_NUMBERS = 0;
-
-### Other global variables ###############################################
-$CHILDLINE = "";
-
-# This is the line width measured in pixels and it is used to right justify
-# equations and equation arrays; 
-$LINE_WIDTH = 500;             
-
-# Used in conjunction with AUTO_NAVIGATION
-$WORDS_IN_PAGE = 300;  
-
-# Affects ONLY the way accents are processed 
-$default_language = 'english'; 
-
-# The value of this variable determines how many words to use in each 
-# title that is added to the navigation panel (see below)
-# 
-$WORDS_IN_NAVIGATION_PANEL_TITLES = 0;
-
-# This number will determine the size of the equations, special characters,
-# and anything which will be converted into an inlined image
-# *except* "image generating environments" such as "figure", "table" 
-# or "minipage".
-# Effective values are those greater than 0.
-# Sensible values are between 0.1 - 4.
-$MATH_SCALE_FACTOR = 1.5;
-
-# This number will determine the size of 
-# image generating environments such as "figure", "table" or "minipage".
-# Effective values are those greater than 0.
-# Sensible values are between 0.1 - 4.
-$FIGURE_SCALE_FACTOR = 1.6;
-
-
-#  If both of the following two variables are set then the "Up" button
-#  of the navigation panel in the first node/page of a converted document
-#  will point to $EXTERNAL_UP_LINK. $EXTERNAL_UP_TITLE should be set
-#  to some text which describes this external link.
-$EXTERNAL_UP_LINK = "";
-$EXTERNAL_UP_TITLE = "";
-
-# If this is set then the resulting HTML will look marginally better if viewed 
-# with Netscape.
-$NETSCAPE_HTML = 1;
-
-# Valid paper sizes are "letter", "legal", "a4","a3","a2" and "a0"
-# Paper sizes has no effect other than in the time it takes to create inlined
-# images and in whether large images can be created at all ie
-#  - larger paper sizes *MAY* help with large image problems 
-#  - smaller paper sizes are quicker to handle
-$PAPERSIZE = "a4";
-
-# Replace "english" with another language in order to tell LaTeX2HTML that you 
-# want some generated section titles (eg "Table of Contents" or "References")
-# to appear in a different language. Currently only "english" and "french"
-# is supported but it is very easy to add your own. See the example in the
-# file "latex2html.config" 
-$TITLES_LANGUAGE = "english";
-
-1;     # This must be the last non-comment line
-
-# End File texi2html.init
-######################################################################
-
-
-require "$ENV{T2H_HOME}/texi2html.init" 
-  if ($0 =~ /\.pl$/ &&
-      -e "$ENV{T2H_HOME}/texi2html.init" && -r "$ENV{T2H_HOME}/texi2html.init");
-
-#+++############################################################################
-#                                                                              #
-# Initialization                                                               #
-# Pasted content of File $(srcdir)/MySimple.pm: Command-line processing        #
-#                                                                              #
-#---############################################################################
-
-# leave this within comments, and keep the require statement
-# This way, you can directly run texi2html.pl, if $ENV{T2H_HOME}/texi2html.init
-# exists.
-
-# 
-package Getopt::MySimple;
-
-# Name:
-#      Getopt::MySimple.
-#
-# Documentation:
-#      POD-style (incomplete) documentation is in file MySimple.pod
-#
-# Tabs:
-#      4 spaces || die.
-#
-# Author:
-#      Ron Savage      rpsavage@ozemail.com.au.
-#      1.00    19-Aug-97       Initial version.
-#      1.10    13-Oct-97       Add arrays of switches (eg '=s@').
-#      1.20     3-Dec-97       Add 'Help' on a per-switch basis.
-#      1.30    11-Dec-97       Change 'Help' to 'verbose'. Make all hash keys lowercase.
-#      1.40    10-Nov-98       Change width of help report. Restructure tests.
-#               1-Jul-00        Modifications for Texi2html
-
-# --------------------------------------------------------------------------
-# Locally modified by obachman (Display type instead of env, order by cmp)
-# $Id: MySimple.pm,v 1.1 2000/07/03 08:44:13 obachman Exp $
-
-# use strict;
-# no strict 'refs';
-
-use vars qw(@EXPORT @EXPORT_OK @ISA);
-use vars qw($fieldWidth $opt $VERSION);
-
-use Exporter();
-use Getopt::Long;
-
-@ISA           = qw(Exporter);
-@EXPORT                = qw();
-@EXPORT_OK     = qw($opt);     # An alias for $self -> {'opt'}.
-
-# --------------------------------------------------------------------------
-
-$fieldWidth    = 20;
-$VERSION       = '1.41';
-
-# --------------------------------------------------------------------------
-
-sub byOrder
-{
-       my($self) = @_;
-       
-       return uc($a) cmp (uc($b));
-}
-
-# --------------------------------------------------------------------------
-
-sub dumpOptions
-{
-       my($self) = @_;
-
-       print 'Option', ' ' x ($fieldWidth - length('Option') ), "Value\n";
-
-       for (sort byOrder keys(%{$self -> {'opt'} }) )
-       {
-         print "-$_", ' ' x ($fieldWidth - (1 + length) ), "${$self->{'opt'} }{$_}\n";
-       }
-
-       print "\n";
-
-}      # End of dumpOptions.
-
-# --------------------------------------------------------------------------
-# Return:
-#      0 -> Error.
-#      1 -> Ok.
-
-sub getOptions
-{
-       push(@_, 0) if ($#_ == 2);      # Default for $ignoreCase is 0.
-       push(@_, 1) if ($#_ == 3);      # Default for $helpThenExit is 1.
-
-       my($self, $default, $helpText, $versionText, 
-          $helpThenExit, $versionThenExit, $ignoreCase) = @_;
-       
-       $helpThenExit = 1 unless (defined($helpThenExit));
-       $versionThenExit = 1 unless (defined($versionThenExit));
-       $ignoreCase = 0 unless (defined($ignoreCase));
-
-       $self -> {'default'}            = $default;
-       $self -> {'helpText'}           = $helpText;
-       $self -> {'versionText'}        = $versionText;
-       $Getopt::Long::ignorecase       = $ignoreCase;
-
-       unless (defined($self -> {'default'}{'help'}))
-       {
-         $self -> {'default'}{'help'} = 
-         { 
-          type => ':i', 
-          default => '',
-          linkage => sub {$self->helpOptions($_[1]); exit (0) if $helpThenExit;},
-          verbose => "print help and exit"
-         };
-       }
-
-       unless (defined($self -> {'default'}{'version'}))
-       {
-         $self -> {'default'}{'version'} = 
-         { 
-          type => '', 
-          default => '',
-          linkage => sub {print $self->{'versionText'};  exit (0) if versionTheExit;},
-          verbose => "print version and exit"
-         };
-       }
-
-       for (keys(%{$self -> {'default'} }) )
-       {
-         my $type = ${$self -> {'default'} }{$_}{'type'};
-         push(@{$self -> {'type'} }, "$_$type");
-         $self->{'opt'}->{$_} =  ${$self -> {'default'} }{$_}{'linkage'}
-            if ${$self -> {'default'} }{$_}{'linkage'};
-       }
-
-       my($result) = &GetOptions($self -> {'opt'}, @{$self -> {'type'} });
-
-        return $result unless $result;
-
-       for (keys(%{$self -> {'default'} }) )
-       {
-          if (! defined(${$self -> {'opt'} }{$_})) #{
-            {
-            ${$self -> {'opt'} }{$_} = ${$self -> {'default'} }{$_}{'default'};
-            }
-       }
-
-       $result;
-}      # End of getOptions.
-
-# --------------------------------------------------------------------------
-
-sub helpOptions
-{
-       my($self) = shift;
-       my($noHelp) = shift;
-       $noHelp = 0 unless $noHelp;
-       my($optwidth, $typewidth, $defaultwidth, $maxlinewidth, $valind, $valwidth) 
-         = (10, 5, 9, 78, 4, 11);
-
-       print "$self->{'helpText'}" if ($self -> {'helpText'});
-
-       print ' Option', ' ' x ($optwidth - length('Option') -1 ),
-               'Type', ' ' x ($typewidth - length('Type') + 1),
-               'Default', ' ' x ($defaultwidth - length('Default') ),
-               "Description\n";
-
-       for (sort byOrder keys(%{$self -> {'default'} }) )
-       {
-         my($line, $help, $option, $val);
-         $option = $_;
-         next if ${$self->{'default'} }{$_}{'noHelp'} && ${$self->{'default'} }{$_}{'noHelp'} > $noHelp;
-               $line = " -$_ " . ' ' x ($optwidth - (2 + length) ) .
-                       "${$self->{'default'} }{$_}{'type'} ".
-                       ' ' x ($typewidth - (1+length(${$self -> {'default'} }{$_}{'type'}) ));
-
-                 $val = ${$self->{'default'} }{$_}{'linkage'};
-                if ($val)
-                {
-                  if (ref($val) eq 'SCALAR')
-                 {
-                   $val = $$val; 
-                 }
-                 else
-                 {
-                   $val = '';
-                 }
-                }
-               else
-               {
-                 $val = ${$self->{'default'} }{$_}{'default'};
-               }
-               $line .= "$val  ";
-               $line .= ' ' x ($optwidth + $typewidth + $defaultwidth + 1 - length($line));
-               
-               if (defined(${$self -> {'default'} }{$_}{'verbose'}) &&
-                 ${$self -> {'default'} }{$_}{'verbose'} ne '')
-             {
-               $help = "${$self->{'default'} }{$_}{'verbose'}";
-             }
-             else
-             {
-               $help = ' ';
-             }
-             if ((length("$line") + length($help)) < $maxlinewidth)
-             {
-               print $line , $help, "\n";
-             }
-             else
-             {
-               print $line, "\n", ' ' x $valind, $help, "\n";
-             }
-             for $val (sort byOrder keys(%{${$self->{'default'}}{$option}{'values'}}))
-             {
-               print ' ' x ($valind + 2);
-               print $val, '  ', ' ' x ($valwidth - length($val) - 2);
-               print ${$self->{'default'}}{$option}{'values'}{$val}, "\n";
-             }
-       }
-
-       print <<EOT;
-Note: 'Options' may be abbreviated. 'Type' specifications mean:
- <none>| !    no argument: variable is set to 1 on -foo (or, to 0 on -nofoo)
-    =s | :s   mandatory (or, optional)  string argument
-    =i | :i   mandatory (or, optional)  integer argument
-EOT
-}      # End of helpOptions.
-
-#-------------------------------------------------------------------
-
-sub new
-{
-       my($class)                              = @_;
-       my($self)                               = {};
-       $self -> {'default'}    = {};
-       $self -> {'helpText'}   = '';
-       $self -> {'opt'}                = {};
-       $opt                                    = $self -> {'opt'};      # An alias for $self -> {'opt'}.
-       $self -> {'type'}               = ();
-
-       return bless $self, $class;
-
-}      # End of new.
-
-# --------------------------------------------------------------------------
-
-1;
-
-# End MySimple.pm
-
-require "$ENV{T2H_HOME}/MySimple.pm" 
-  if ($0 =~ /\.pl$/ &&
-      -e "$ENV{T2H_HOME}/texi2html.init" && -r "$ENV{T2H_HOME}/texi2html.init");
-
-package main;
-
-#+++############################################################################
-#                                                                              #
-# Constants                                                                    #
-#                                                                              #
-#---############################################################################
-
-$DEBUG_TOC   =  1;
-$DEBUG_INDEX =  2;
-$DEBUG_BIB   =  4;
-$DEBUG_GLOSS =  8;
-$DEBUG_DEF   = 16;
-$DEBUG_HTML  = 32;
-$DEBUG_USER  = 64;
-$DEBUG_L2H   = 128;
-
-
-$BIBRE = '\[[\w\/-]+\]';               # RE for a bibliography reference
-$FILERE = '[\/\w.+-]+';                        # RE for a file name
-$VARRE = '[^\s\{\}]+';                 # RE for a variable name
-$NODERE = '[^,:]+';                    # RE for a node name
-$NODESRE = '[^:]+';                    # RE for a list of node names
-
-$ERROR = "***";                                # prefix for errors 
-$WARN  = "**";                          # prefix for warnings
-  
-                                        # program home page
-$PROTECTTAG = "_ThisIsProtected_";     # tag to recognize protected sections
-
-$CHAPTEREND = "<!-- End chapter -->\n"; # to know where a chpater ends
-$SECTIONEND = "<!-- End section -->\n"; # to know where section ends
-$TOPEND     = "<!-- End top     -->\n"; # to know where top ends
-
-  
-
-#
-# pre-defined indices
-#
-$index_properties =
-{
- 'c' => { name => 'cp'},
- 'f' => { name => 'fn', code => 1},
- 'v' => { name => 'vr', code => 1},
- 'k' => { name => 'ky', code => 1},
- 'p' => { name => 'pg', code => 1},
- 't' => { name => 'tp', code => 1}
-};
-
-
-%predefined_index = (
-                   'cp', 'c',
-                   'fn', 'f',
-                   'vr', 'v',
-                   'ky', 'k',
-                   'pg', 'p',
-                   'tp', 't',
-                   );
-
-#
-# valid indices
-#
-%valid_index = (
-                   'c', 1,
-                   'f', 1,
-                   'v', 1,
-                   'k', 1,
-                   'p', 1,
-                   't', 1,
-               );
-
-#
-# texinfo section names to level
-#
-%sec2level = (
-             'top', 0,
-             'chapter', 1,
-             'unnumbered', 1,
-             'majorheading', 1,
-             'chapheading', 1,
-             'appendix', 1,
-             'section', 2,
-             'unnumberedsec', 2,
-             'heading', 2,
-             'appendixsec', 2,
-             'appendixsection', 2,
-             'subsection', 3,
-             'unnumberedsubsec', 3,
-             'subheading', 3,
-             'appendixsubsec', 3,
-             'subsubsection', 4,
-             'unnumberedsubsubsec', 4,
-             'subsubheading', 4,
-             'appendixsubsubsec', 4,
-             );
-
-#
-# accent map, TeX command to ISO name
-#
-%accent_map = (
-              '"',  'uml',
-              '~',  'tilde',
-              '^',  'circ',
-              '`',  'grave',
-              '\'', 'acute',
-              );
-
-#
-# texinfo "simple things" (@foo) to HTML ones
-#
-%simple_map = (
-              # cf. makeinfo.c
-              "*", "<BR>",             # HTML+
-              " ", " ",
-              "\t", " ",
-              "-", "&#173;",   # soft hyphen
-              "\n", "\n",
-              "|", "",
-              'tab', '<\/TD><TD>',
-              # spacing commands
-              ":", "",
-              "!", "!",
-              "?", "?",
-              ".", ".",
-              "-", "",
-              );
-
-#
-# texinfo "things" (@foo{}) to HTML ones
-#
-%things_map = (
-              'TeX', 'TeX',
-              'br', '<P>',             # paragraph break
-              'bullet', '*',
-              'copyright', '(C)',
-              'dots', '<small>...<\/small>',
-              'enddots', '<small>....<\/small>',
-              'equiv', '==',
-              'error', 'error-->',
-              'expansion', '==>',
-              'minus', '-',
-              'point', '-!-',
-              'print', '-|',
-              'result', '=>',
-              'today', $T2H_TODAY,
-              'aa', '&aring;',
-              'AA', '&Aring;',
-              'ae', '&aelig;',
-              'oe', '&#156;',
-              'AE', '&AElig;',
-              'OE', '&#140;',
-              'o',  '&oslash;',
-              'O',  '&Oslash;',
-              'ss', '&szlig;',
-              'l', '\/l',
-              'L', '\/L',
-              'exclamdown', '&iexcl;',
-              'questiondown', '&iquest;',
-              'pounds', '&pound;'
-              );
-
-#
-# texinfo styles (@foo{bar}) to HTML ones
-#
-%style_map = (
-             'acronym', '&do_acronym',
-             'asis', '',
-             'b', 'B',
-             'cite', 'CITE',
-             'code', 'CODE',
-             'command', 'CODE',
-             'ctrl', '&do_ctrl',       # special case
-             'dfn', 'EM',              # DFN tag is illegal in the standard
-             'dmn', '',                # useless
-             'email', '&do_email',     # insert a clickable email address
-             'emph', 'EM',
-             'env', 'CODE',
-             'file', '"TT',            # will put quotes, cf. &apply_style
-             'i', 'I',
-             'kbd', 'KBD',
-             'key', 'KBD',
-             'math', '&do_math',
-             'option', '"SAMP',        # will put quotes, cf. &apply_style
-             'r', '',                  # unsupported
-             'samp', '"SAMP',          # will put quotes, cf. &apply_style
-             'sc', '&do_sc',           # special case
-             'strong', 'STRONG',
-             't', 'TT',
-             'titlefont', '',          # useless
-             'uref', '&do_uref',       # insert a clickable URL
-             'url', '&do_url',         # insert a clickable URL
-             'var', 'VAR',
-             'w', '',                  # unsupported
-             'H', '&do_accent',
-             'dotaccent', '&do_accent',
-             'ringaccent','&do_accent',
-             'tieaccent', '&do_accent',
-             'u','&do_accent',
-             'ubaraccent','&do_accent',
-             'udotaccent','&do_accent',
-             'v', '&do_accent',
-             ',', '&do_accent',
-             'dotless', '&do_accent'
-             );
-
-#
-# texinfo format (@foo/@end foo) to HTML ones
-#
-%format_map = (
-              'quotation', 'BLOCKQUOTE',
-              # lists
-              'itemize', 'UL',
-              'enumerate', 'OL',
-              # poorly supported
-              'flushleft', 'PRE',
-              'flushright', 'PRE',
-              );
-
-#
-# an eval of these $complex_format_map->{what}->[0] yields beginning
-# an eval of these $complex_format_map->{what}->[1] yieleds end
-$complex_format_map =
-{
- example => 
- [
-  q{"<TABLE><tr>$T2H_EXAMPLE_INDENT_CELL<td class=example><pre>"},
-  q{'</pre></td></tr></table>'}
- ],
- smallexample => 
- [
-  q{"<TABLE><tr>$T2H_SMALL_EXAMPLE_INDENT_CELL<td class=smallexample><FONT SIZE=$T2H_SMALL_FONT_SIZE><pre>"},
-  q{'</FONT></pre></td></tr></table>'}
- ],
- display =>
- [
-  q{"<TABLE><tr>$T2H_EXAMPLE_INDENT_CELL<td class=display><pre " . 'style="font-family: serif">'},
-  q{'</pre></td></tr></table>'}
- ],
- smalldisplay =>
- [
-  q{"<TABLE><tr>$T2H_SMALL_EXAMPLE_INDENT_CELL<td class=smalldisplay><FONT SIZE=$T2H_SMALL_FONT_SIZE><pre " . 'style="font-family: serif">'},
-  q{'</pre></FONT></td></tr></table>'}
- ]
-};
-
-$complex_format_map->{lisp} = $complex_format_map->{example};
-$complex_format_map->{smalllisp} = $complex_format_map->{smallexample};
-$complex_format_map->{format} = $complex_format_map->{display};
-$complex_format_map->{smallformat} = $complex_format_map->{smalldisplay};
-
-#
-# texinfo definition shortcuts to real ones
-#
-%def_map = (
-           # basic commands
-           'deffn', 0,
-           'defvr', 0,
-           'deftypefn', 0,
-           'deftypevr', 0,
-           'defcv', 0,
-           'defop', 0,
-           'deftp', 0,
-           # basic x commands
-           'deffnx', 0,
-           'defvrx', 0,
-           'deftypefnx', 0,
-           'deftypevrx', 0,
-           'defcvx', 0,
-           'defopx', 0,
-           'deftpx', 0,
-           # shortcuts
-           'defun', 'deffn Function',
-           'defmac', 'deffn Macro',
-           'defspec', 'deffn {Special Form}',
-           'defvar', 'defvr Variable',
-           'defopt', 'defvr {User Option}',
-           'deftypefun', 'deftypefn Function',
-           'deftypevar', 'deftypevr Variable',
-           'defivar', 'defcv {Instance Variable}',
-           'deftypeivar', 'defcv {Instance Variable}', # NEW: FIXME
-           'defmethod', 'defop Method',
-           'deftypemethod', 'defop Method', # NEW:FIXME
-           # x shortcuts
-           'defunx', 'deffnx Function',
-           'defmacx', 'deffnx Macro',
-           'defspecx', 'deffnx {Special Form}',
-           'defvarx', 'defvrx Variable',
-           'defoptx', 'defvrx {User Option}',
-           'deftypefunx', 'deftypefnx Function',
-           'deftypevarx', 'deftypevrx Variable',
-           'defivarx', 'defcvx {Instance Variable}',
-           'defmethodx', 'defopx Method',
-           );
-
-#
-# things to skip
-#
-%to_skip = (
-           # comments
-           'c', 1,
-           'comment', 1,
-            'ifnotinfo', 1,
-            'ifnottex', 1,
-           'ifhtml', 1,
-           'end ifhtml', 1,
-            'end ifnotinfo', 1,
-            'end ifnottex', 1,
-           # useless
-           'detailmenu', 1,
-            'direntry', 1,
-           'contents', 1,
-           'shortcontents', 1,
-           'summarycontents', 1,
-           'footnotestyle', 1,
-           'end ifclear', 1,
-           'end ifset', 1,
-           'titlepage', 1,
-           'end titlepage', 1,
-           # unsupported commands (formatting)
-           'afourpaper', 1,
-           'cropmarks', 1,
-           'finalout', 1,
-           'headings', 1,
-            'sp', 1,
-           'need', 1,
-           'page', 1,
-           'setchapternewpage', 1,
-           'everyheading', 1,
-           'everyfooting', 1,
-           'evenheading', 1,
-           'evenfooting', 1,
-           'oddheading', 1,
-           'oddfooting', 1,
-           'smallbook', 1,
-           'vskip', 1,
-           'filbreak', 1,
-           'paragraphindent', 1,
-           # unsupported formats
-           'cartouche', 1,
-           'end cartouche', 1,
-           'group', 1,
-           'end group', 1,
-           );
-
-#+++############################################################################
-#                                                                              #
-# Argument parsing, initialisation                                             #
-#                                                                              #
-#---############################################################################
-
-#
-# flush stdout and stderr after every write
-#
-select(STDERR);
-$| = 1;
-select(STDOUT);
-$| = 1;
-
-
-%value = ();                           # hold texinfo variables, see also -D
-$use_bibliography = 1;
-$use_acc = 1;
-
-#
-# called on -init-file
-sub LoadInitFile
-{
-  my $init_file = shift;
-  # second argument is value of options
-  $init_file = shift;
-  if (-f $init_file)
-  {
-    print "# reading initialization file from $init_file\n" 
-      if ($T2H_VERBOSE);
-    require($init_file);
-  }
-  else
-  {
-    print "$ERROR Error: can't read init file $int_file\n";
-    $init_file = '';
-  }
-}
-
-#
-# called on -lang
-sub SetDocumentLanguage
-{
-  my $lang = shift;
-  if (! exists($T2H_WORDS->{$lang}))
-  {
-    warn "$ERROR: Language specs for '$lang' do not exists. Reverting to '" . 
-      ($T2H_LANG ? T2H_LANG : "en") . "'\n";
-  }
-  else
-  {
-    print "# using '$lang' as document language\n" if ($T2H_VERBOSE);
-    $T2H_LANG = $lang;
-  }
-}
-
-##
-## obsolete cmd line options
-##
-$T2H_OBSOLETE_OPTIONS -> {'no-section_navigation'} =
-{
- type => '!',
- linkage => sub {$main::T2H_SECTION_NAVIGATION = 0;},
- verbose => 'obsolete, use -nosec_nav',
- noHelp => 2,
-};
-$T2H_OBSOLETE_OPTIONS -> {use_acc} =
-{
- type => '!',
- linkage => \$use_acc,
- verbose => 'obsolete',
- noHelp => 2
-};
-$T2H_OBSOLETE_OPTIONS -> {expandinfo} =
-{
- type => '!',
- linkage => sub {$main::T2H_EXPAND = 'info';},
- verbose => 'obsolete, use "-expand info" instead',
- noHelp => 2,
-};
-$T2H_OBSOLETE_OPTIONS -> {expandtex} =
-{
- type => '!',
- linkage => sub {$main::T2H_EXPAND = 'tex';},
- verbose => 'obsolete, use "-expand tex" instead',
- noHelp => 2,
-};
-$T2H_OBSOLETE_OPTIONS -> {monolithic} =
-{
- type => '!',
- linkage => sub {$main::T2H_SPLIT = '';},
- verbose => 'obsolete, use "-split no" instead',
- noHelp => 2
-};
-$T2H_OBSOLETE_OPTIONS -> {split_node} =
-{
- type => '!',
- linkage => sub{$main::T2H_SPLIT = 'section';},
- verbose => 'obsolete, use "-split section" instead',
- noHelp => 2,
-};
-$T2H_OBSOLETE_OPTIONS -> {split_chapter} =
-{
- type => '!',
- linkage => sub{$main::T2H_SPLIT = 'chapter';},
- verbose => 'obsolete, use "-split chapter" instead',
- noHelp => 2,
-};
-$T2H_OBSOLETE_OPTIONS -> {no_verbose} =
-{
- type => '!',
- linkage => sub {$main::T2H_VERBOSE = 0;},
- verbose => 'obsolete, use -noverbose instead',
- noHelp => 2,
-};
-$T2H_OBSOLETE_OPTIONS -> {output_file} =
-{
- type => '=s',
- linkage => sub {$main::T2H_OUT = @_[1]; $T2H_SPLIT = '';},
- verbose => 'obsolete, use -out_file instead',
- noHelp => 2
-};
-
-$T2H_OBSOLETE_OPTIONS -> {section_navigation} =
-{
- type => '!',
- linkage => \$T2H_SECTION_NAVIGATION,
- verbose => 'obsolete, use -sec_nav instead',
- noHelp => 2,
-};
-
-$T2H_OBSOLETE_OPTIONS -> {verbose} =
-{
- type => '!',
- linkage => \$T2H_VERBOSE,
- verbose => 'obsolete, use -Verbose instead',
- noHelp => 2
-};
-
-# read initialzation from $sysconfdir/texi2htmlrc or $HOME/.texi2htmlrc
-my $home = $ENV{HOME};
-defined($home) or $home = '';
-foreach $i ('/usr/local/etc/texi2htmlrc', "$home/.texi2htmlrc") {
-    if (-f $i) {
-       print "# reading initialization file from $i\n" 
-           if ($T2H_VERBOSE);
-       require($i);
-    }
-}
-
-
-#+++############################################################################
-#                                                                              #
-# parse command-line options
-#                                                                              #
-#---############################################################################
-$T2H_USAGE_TEXT = <<EOT;
-Usage: texi2html  [OPTIONS] TEXINFO-FILE
-Translates Texinfo source documentation to HTML.
-EOT
-$T2H_FAILURE_TEXT = <<EOT;
-Try 'texi2html -help' for usage instructions.
-EOT
-$options = new Getopt::MySimple;
-
-# some older version of GetOpt::Long don't have 
-# Getopt::Long::Configure("pass_through")
-eval {Getopt::Long::Configure("pass_through");};
-$Configure_failed = $@ && <<EOT;
-**WARNING: Parsing of obsolete command-line options could have failed. 
-           Consider to use only documented command-line options (run
-           'texi2html -help 2' for a complete list) or upgrade to perl 
-           version 5.005 or higher.
-EOT
-
-if (! $options->getOptions($T2H_OPTIONS, $T2H_USAGE_TEXT, "$THISVERSION\n"))
-{
-  print $Configure_failed if $Configure_failed;
-  die $T2H_FAILURE_TEXT;
-}
-
-if (@ARGV > 1)
-{
-  eval {Getopt::Long::Configure("no_pass_through");};
-  if (! $options->getOptions($T2H_OBSOLETE_OPTIONS, $T2H_USAGE_TEXT, "$THISVERSION\n"))
-  {
-    print $Configure_failed if $Configure_failed;
-    die $T2H_FAILURE_TEXT;
-  }
-}
-
-if ($T2H_CHECK) {
-    die "Need file to check\n$T2H_FAILURE_TEXT" unless @ARGV > 0;
-    &check;
-    exit;
-}
-
-#+++############################################################################
-#                                                                              #
-# evaluation of cmd line options
-#                                                                              #
-#---############################################################################
-
-if ($T2H_EXPAND eq 'info') 
-{
-  $to_skip{'ifinfo'} = 1;
-  $to_skip{'end ifinfo'} = 1;
-} 
-elsif ($T2H_EXPAND eq 'tex')
-{
-  $to_skip{'iftex'} = 1;
-  $to_skip{'end iftex'} = 1;
-  
-}
-
-$T2H_INVISIBLE_MARK = '<IMG SRC="invisible.xbm">' if $T2H_INVISIBLE_MARK eq 'xbm';
-
-#
-# file name buisness
-#
-die "Need exactly one file to translate\n$T2H_FAILURE_TEXT" unless @ARGV == 1;
-$docu = shift(@ARGV);
-if ($docu =~ /.*\//) {
-    chop($docu_dir = $&);
-    $docu_name = $';
-} else {
-    $docu_dir = '.';
-    $docu_name = $docu;
-}
-unshift(@T2H_INCLUDE_DIRS, $docu_dir);
-$docu_name =~ s/\.te?x(i|info)?$//;    # basename of the document
-$docu_name = $T2H_PREFIX if ($T2H_PREFIX);
-
-# subdir
-if ($T2H_SUBDIR && ! $T2H_OUT)
-{
-  $T2H_SUBDIR =~ s|/*$||;
-  unless (-d "$T2H_SUBDIR" && -w "$T2H_SUBDIR")
-  {
-    if ( mkdir($T2H_SUBDIR, oct(755)))
-    {
-      print "# created directory $T2H_SUBDIR\n" if ($T2H_VERBOSE);
-    }
-    else
-    {
-      warn "$ERROR can't create directory $T2H_SUBDIR. Put results into current directory\n";
-      $T2H_SUBDIR = '';
-    }
-  }
-}
-
-if ($T2H_SUBDIR && ! $T2H_OUT)
-{
-  $docu_rdir = "$T2H_SUBDIR/";
-  print "# putting result files into directory $docu_rdir\n" if ($T2H_VERBOSE);
-}
-else
-{
-  if ($T2H_OUT && $T2H_OUT =~ m|(.*)/|)
-  {
-    $docu_rdir = "$1/";
-    print "# putting result files into directory $docu_rdir\n" if ($T2H_VERBOSE);
-  }
-  else
-  {
-    print "# putting result files into current directory \n" if ($T2H_VERBOSE);
-    $docu_rdir = '';
-  }
-}
-
-# extension
-if ($T2H_SHORTEXTN)
-{
-  $docu_ext = "htm";
-}
-else
-{
-  $docu_ext = "html";
-}
-if ($T2H_TOP_FILE =~ /\..*$/)
-{
-  $T2H_TOP_FILE = $`.".$docu_ext";
-}
-
-# result files
-if (! $T2H_OUT && ($T2H_SPLIT =~ /section/i || $T2H_SPLIT =~ /node/i))
-{
-  $T2H_SPLIT = 'section';
-}
-elsif (! $T2H_OUT && $T2H_SPLIT =~ /chapter/i)
-{
-  $T2H_SPLIT = 'chapter'
-}
-else
-{
-  undef $T2H_SPLIT;
-}
-
-$docu_doc = "$docu_name.$docu_ext";            # document's contents
-$docu_doc_file = "$docu_rdir$docu_doc";
-if ($T2H_SPLIT) 
-{
-  $docu_toc  = $T2H_TOC_FILE || "${docu_name}_toc.$docu_ext"; # document's table of contents
-  $docu_stoc = "${docu_name}_ovr.$docu_ext"; # document's short toc
-  $docu_foot = "${docu_name}_fot.$docu_ext"; # document's footnotes
-  $docu_about = "${docu_name}_abt.$docu_ext"; # about this document
-  $docu_top  = $T2H_TOP_FILE || $docu_doc;
-}
-else
-{
-  if ($T2H_OUT)
-  {
-    $docu_doc = $T2H_OUT;
-    $docu_doc =~ s|.*/||;
-  }
-  $docu_toc = $docu_foot = $docu_stoc = $docu_about = $docu_top = $docu_doc;
-}
-
-$docu_toc_file  = "$docu_rdir$docu_toc";
-$docu_stoc_file = "$docu_rdir$docu_stoc";
-$docu_foot_file = "$docu_rdir$docu_foot";
-$docu_about_file = "$docu_rdir$docu_about";
-$docu_top_file  = "$docu_rdir$docu_top";
-
-$docu_frame_file =     "$docu_rdir${docu_name}_frame.$docu_ext";
-$docu_toc_frame_file = "$docu_rdir${docu_name}_toc_frame.$docu_ext";
-
-#
-# variables
-#
-$value{'html'} = 1;                    # predefine html (the output format)
-$value{'texi2html'} = $THISVERSION;    # predefine texi2html (the translator)
-# _foo: internal to track @foo
-foreach ('_author', '_title', '_subtitle',
-        '_settitle', '_setfilename', '_shorttitle') {
-    $value{$_} = '';                   # prevent -w warnings
-}
-%node2sec = ();                                # node to section name
-%sec2node = ();                                # section to node name
-%sec2number = ();                       # section to number
-%number2sec = ();                       # number to section 
-%idx2node = ();                         # index keys to node
-%node2href = ();                       # node to HREF
-%node2next = ();                       # node to next
-%node2prev = ();                       # node to prev
-%node2up   = ();                       # node to up
-%bib2href = ();                                # bibliography reference to HREF
-%gloss2href = ();                      # glossary term to HREF
-@sections = ();                                # list of sections
-%tag2pro = ();                         # protected sections
-
-#
-# initial indexes
-#
-$bib_num = 0;
-$foot_num = 0;
-$gloss_num = 0;
-$idx_num = 0;
-$sec_num = 0;
-$doc_num = 0;
-$html_num = 0;
-
-#
-# can I use ISO8879 characters? (HTML+)
-#
-if ($T2H_USE_ISO) {
-    $things_map{'bullet'} = "&bull;";
-    $things_map{'copyright'} = "&copy;";
-    $things_map{'dots'} = "&hellip;";
-    $things_map{'equiv'} = "&equiv;";
-    $things_map{'expansion'} = "&rarr;";
-    $things_map{'point'} = "&lowast;";
-    $things_map{'result'} = "&rArr;";
-}
-
-#
-# read texi2html extensions (if any)
-#
-$extensions = 'texi2html.ext'; # extensions in working directory
-if (-f $extensions) {
-    print "# reading extensions from $extensions\n" if $T2H_VERBOSE;
-    require($extensions);
-}
-($progdir = $0) =~ s/[^\/]+$//;
-if ($progdir && ($progdir ne './')) {
-    $extensions = "${progdir}texi2html.ext"; # extensions in texi2html directory
-    if (-f $extensions) {
-       print "# reading extensions from $extensions\n" if $T2H_VERBOSE;
-       require($extensions);
-    }
-}
-
-
-print "# reading from $docu\n" if $T2H_VERBOSE;
-
-#########################################################################
-#
-# latex2html stuff
-# 
-# latex2html conversions consist of three stages:
-# 1) ToLatex: Put "latex" code into a latex file
-# 2) ToHtml: Use latex2html to generate corresponding html code and images
-# 3) FromHtml: Extract generated code and images from latex2html run
-#
-
-##########################
-# default settings
-#
-
-# defaults for files and names
-
-sub l2h_Init 
-{
-  local($root) = @_;
-  
-  return 0 unless ($root);
-  
-  $l2h_name =  "${root}_l2h";
-  
-  $l2h_latex_file = "$docu_rdir${l2h_name}.tex";
-  $l2h_cache_file = "${docu_rdir}l2h_cache.pm";
-  $T2H_L2H_L2H = "latex2html" unless ($T2H_L2H_L2H);
-  
-  # destination dir -- generated images are put there, should be the same
-  # as dir of enclosing html document -- 
-  $l2h_html_file = "$docu_rdir${l2h_name}.html";
-  $l2h_prefix = "${l2h_name}_";
-  return 1;
-}
-
-
-##########################
-# 
-# First stage: Generation of Latex file
-# Initialize with: l2h_InitToLatex
-# Add content with: l2h_ToLatex($text) --> HTML placeholder comment
-# Finish with: l2h_FinishToLatex
-# 
-
-$l2h_latex_preample = <<EOT;
-% This document was automatically generated by the l2h extenstion of texi2html
-% DO NOT EDIT !!!
-\\documentclass{article}
-\\usepackage{html}
-\\begin{document}
-EOT
-
-$l2h_latex_closing = <<EOT;
-\\end{document}
-EOT
-
-# return used latex 1, if l2h could be initalized properly, 0 otherwise
-sub l2h_InitToLatex
-{
-  %l2h_to_latex = ();
-  unless ($T2H_L2H_SKIP)
-  {
-    unless (open(L2H_LATEX, ">$l2h_latex_file"))
-    {
-      warn "$ERROR Error l2h: Can't open latex file '$latex_file' for writing\n";
-      return 0;
-    }  
-    print "# l2h: use ${l2h_latex_file} as latex file\n" if ($T2H_VERBOSE);
-    print L2H_LATEX $l2h_latex_preample;
-  }
-  # open database for caching
-  l2h_InitCache();
-  $l2h_latex_count = 0;
-  $l2h_to_latex_count = 0;
-  $l2h_cached_count = 0;
-  return  1;
-}
-
-# print text (1st arg) into latex file (if not already there), return
-# HTML commentary which can be later on replaced by the latex2html
-# generated text
-sub l2h_ToLatex
-{
-  my($text) = @_;
-  my($count);
-  
-  $l2h_to_latex_count++;
-  $text =~ s/(\s*)$//;
-  
-  # try whether we can cache it
-  my $cached_text = l2h_FromCache($text);
-  if ($cached_text)
-  {
-    $l2h_cached_count++;
-    return $cached_text;
-  }
-  
-  # try whether we have text already on things to do
-  unless ($count = $l2h_to_latex{$text})
-  {
-    $count = $l2h_latex_count;
-    $l2h_latex_count++;
-    $l2h_to_latex{$text} = $count;
-    $l2h_to_latex[$count] = $text;
-    unless ($T2H_L2H_SKIP)
-    {
-      print L2H_LATEX "\\begin{rawhtml}\n";
-      print L2H_LATEX "<!-- l2h_begin ${l2h_name} ${count} -->\n";
-      print L2H_LATEX "\\end{rawhtml}\n";
-      
-      print L2H_LATEX "$text\n";
-      
-      print L2H_LATEX "\\begin{rawhtml}\n";
-      print L2H_LATEX "<!-- l2h_end ${l2h_name} ${count} -->\n";
-      print L2H_LATEX "\\end{rawhtml}\n";
-    }
-  }
-  return "<!-- l2h_replace ${l2h_name} ${count} -->"; 
-}
-
-# print closing into latex file and close it
-sub l2h_FinishToLatex
-{
-  local ($reused);
-  
-  $reused = $l2h_to_latex_count - $l2h_latex_count - $l2h_cached_count;
-  unless ($T2H_L2H_SKIP)
-  {
-    print L2H_LATEX $l2h_latex_closing;
-    close(L2H_LATEX);
-  }
-  print "# l2h: finished to latex ($l2h_cached_count cached, $reused reused, $l2h_latex_count contents)\n" if ($T2H_VERBOSE);
-  unless ($l2h_latex_count)
-  {
-    l2h_Finish();
-    return 0;
-  }
-  return 1;
-}
-
-###################################
-# Second stage: Use latex2html to generate corresponding html code and images
-#
-# l2h_ToHtml([$l2h_latex_file, [$l2h_html_dir]]):
-#   Call latex2html on $l2h_latex_file
-#   Put images (prefixed with $l2h_name."_") and html file(s) in $l2h_html_dir
-#   Return 1, on success
-#          0, otherwise
-#
-sub l2h_ToHtml
-{
-  local($call, $ext, $root, $dotbug);
-  
-  if ($T2H_L2H_SKIP)
-  {
-    print "# l2h: skipping latex2html run\n" if ($T2H_VERBOSE);
-    return 1;
-  }
-  
-  # Check for dot in directory where dvips will work
-  if ($T2H_L2H_TMP)
-  {
-    if ($T2H_L2H_TMP =~ /\./)
-    {
-      warn "$ERROR Warning l2h: l2h_tmp dir contains a dot. Use /tmp, instead\n";
-      $dotbug = 1;
-    }
-  }
-  else
-  {
-    if (&getcwd =~ /\./)
-    {
-     warn "$ERROR Warning l2h: current dir contains a dot. Use /tmp as l2h_tmp dir \n";
-     $dotbug = 1;
-   }
-  }
-  # fix it, if necessary and hope that it works 
-  $T2H_L2H_TMP = "/tmp" if ($dotbug);
-    
-  $call = $T2H_L2H_L2H;
-  # use init file, if specified
-  $call = $call . " -init_file " . $init_file if ($init_file && -f $init_file);
-  # set output dir
-  $call .=  ($docu_rdir ? " -dir $docu_rdir" : " -no_subdir");
-  # use l2h_tmp, if specified
-  $call = $call . " -tmp $T2H_L2H_TMP" if ($T2H_L2H_TMP);
-  # options we want to be sure of
-  $call = $call ." -address 0 -info 0 -split 0 -no_navigation -no_auto_link";
-  $call = $call ." -prefix ${l2h_prefix} $l2h_latex_file"; 
-
-  print "# l2h: executing '$call'\n" if ($T2H_VERBOSE);
-  if (system($call))
-  {
-    warn "l2h ***Error: '${call}' did not succeed\n";
-    return 0;
-  }
-  else
-  {
-    print "# l2h: latex2html finished successfully\n" if ($T2H_VERBOSE);
-    return 1;
-  }
-}
-
-# this is directly pasted over from latex2html
-sub getcwd {
-    local($_) = `pwd`;
-
-    die "'pwd' failed (out of memory?)\n"
-       unless length;
-    chop;
-    $_;
-}
-
-
-##########################
-# Third stage: Extract generated contents from latex2html run
-# Initialize with: l2h_InitFromHtml
-#   open $l2h_html_file for reading
-#   reads in contents into array indexed by numbers
-#   return 1,  on success -- 0, otherwise
-# Extract Html code with: l2h_FromHtml($text)
-#   replaces in $text all previosuly inserted comments by generated html code
-#   returns (possibly changed) $text
-# Finish with: l2h_FinishFromHtml
-#   closes $l2h_html_dir/$l2h_name.".$docu_ext" 
-
-sub l2h_InitFromHtml
-{
-  local($h_line, $h_content, $count, %l2h_img);
-
-  if (! open(L2H_HTML, "<${l2h_html_file}"))
-  {
-    print "$ERROR Error l2h: Can't open ${l2h_html_file} for reading\n";
-    return 0;
-  }
-  print "# l2h: use ${l2h_html_file} as html file\n" if ($T2H_VERBOSE);
-
-  $l2h_html_count = 0;
-  
-  while ($h_line = <L2H_HTML>)
-  {
-    if ($h_line =~ /^<!-- l2h_begin $l2h_name ([0-9]+) -->/)
-    {
-      $count = $1;
-      $h_content = "";
-      while ($h_line = <L2H_HTML>)
-      {
-       if ($h_line =~ /^<!-- l2h_end $l2h_name $count -->/)
-       {
-         chomp $h_content;
-         chomp $h_content;
-         $l2h_html_count++;
-         $h_content = l2h_ToCache($count, $h_content);
-         $l2h_from_html[$count] = $h_content;
-         $h_content = '';
-         last;
-       }
-       $h_content = $h_content.$h_line;
-      }
-      if ($hcontent)
-      {
-       print "$ERROR Warning l2h: l2h_end $l2h_name $count not found\n" 
-         if ($T2H_VERBOSE);
-       close(L2H_HTML);
-       return 0;
-      }
-    }
-  }
-  print "# l2h: Got $l2h_html_count of $l2h_latex_count html contents\n"
-    if ($T2H_VERBOSE);
-
-  close(L2H_HTML);
-  return 1;
-}
-
-sub l2h_FromHtml
-{
-  local($text) = @_;
-  local($done, $to_do, $count);
-  
-  $to_do = $text;
-  
-  while ($to_do =~ /([^\000]*)<!-- l2h_replace $l2h_name ([0-9]+) -->([^\000]*)/)
-  {
-    $to_do = $1;
-    $count = $2;
-    $done = $3.$done;
-    
-    $done = "<!-- l2h_end $l2h_name $count -->".$done
-      if ($T2H_DEBUG & $DEBUG_L2H);
-
-    $done = &l2h_ExtractFromHtml($count) . $done;
-
-    $done = "<!-- l2h_begin $l2h_name $count -->".$done
-      if ($T2H_DEBUG & $DEBUG_L2H);
-  }
-  return $to_do.$done;
-}
-
-
-sub l2h_ExtractFromHtml
-{
-  local($count) = @_;
-  
-  return $l2h_from_html[$count] if ($l2h_from_html[$count]);
-  
-  if ($count >= 0 && $count < $l2h_latex_count)
-  {
-    # now we are in trouble
-    local($l_l2h, $_);
-
-    $l2h_extract_error++;
-    print "$ERROR l2h: can't extract content $count from html\n" 
-      if ($T2H_VERBOSE);
-    # try simple (ordinary) substition (without l2h)
-    $l_l2h = $T2H_L2H;
-    $T2H_L2H = 0;
-    $_ = $l2h_to_latex{$count};
-    $_ = &substitute_style($_); 
-    &unprotect_texi;
-    $_ = "<!-- l2h: ". __LINE__ . " use texi2html -->" . $_
-      if ($T2H_DEBUG & $DEBUG_L2H);
-    $T2H_L2H = $l_l2h;
-    return $_;
-  }
-  else
-  {
-    # now we have been incorrectly called
-    $l2h_range_error++;
-    print "$ERROR l2h: Request of $count content which is out of valide range [0,$l2h_latex_count)\n";
-    return "<!-- l2h: ". __LINE__ . " out of range count $count -->"
-      if ($T2H_DEBUG & $DEBUG_L2H);
-    return "<!-- l2h: out of range count $count -->";
-  }
-}
-    
-sub l2h_FinishFromHtml
-{
-  if ($T2H_VERBOSE)
-  {
-    if ($l2h_extract_error + $l2h_range_error)
-    {
-      print "# l2h: finished from html ($l2h_extract_error extract and $l2h_range_error errors)\n";
-    }
-    else
-    {
-      print "# l2h: finished from html (no errors)\n";
-    }
-  }
-}
-
-sub l2h_Finish
-{
-  l2h_StoreCache();
-  if ($T2H_L2H_CLEAN)
-  {
-    print "# l2h: removing temporary files generated by l2h extension\n"
-      if $T2H_VERBOSE;
-    while (<"$docu_rdir$l2h_name"*>)
-    {
-      unlink $_;
-    }
-  }
-  print "# l2h: Finished\n" if $T2H_VERBOSE;
-  return 1;
-}
-
-##############################
-# stuff for l2h caching
-#
-
-# I tried doing this with a dbm data base, but it did not store all
-# keys/values. Hence, I did as latex2html does it
-sub l2h_InitCache
-{
-  if (-r "$l2h_cache_file")
-  {
-    my $rdo = do "$l2h_cache_file";
-    warn("$ERROR l2h Error: could not load $docu_rdir$l2h_cache_file: $@\n")
-      unless ($rdo);
-  }
-}
-
-sub l2h_StoreCache
-{
-  return unless $l2h_latex_count;
-  
-  my ($key, $value);
-  open(FH, ">$l2h_cache_file") || return warn"$ERROR l2h Error: could not open $docu_rdir$l2h_cache_file for writing: $!\n";
-
-  
-  while (($key, $value) = each %l2h_cache)
-  {
-    # escape stuff
-    $key =~ s|/|\\/|g;
-    $key =~ s|\\\\/|\\/|g;
-    # weird, a \ at the end of the key results in an error
-    # maybe this also broke the dbm database stuff
-    $key =~ s|\\$|\\\\|;
-    $value =~ s/\|/\\\|/g; 
-    $value =~ s/\\\\\|/\\\|/g; 
-    $value =~ s|\\\\|\\\\\\\\|g;
-    print FH "\n\$l2h_cache_key = q/$key/;\n";
-    print FH "\$l2h_cache{\$l2h_cache_key} = q|$value|;\n";
-  }
-  print FH "1;";
-  close(FH);
-}
-
-# return cached html, if it exists for text, and if all pictures
-# are there, as well
-sub l2h_FromCache
-{
-  my $text = shift;
-  my $cached = $l2h_cache{$text};
-  if ($cached)
-  {
-    while ($cached =~ m/SRC="(.*?)"/g)
-    {
-      unless (-e "$docu_rdir$1")
-      {
-       return undef;
-      }
-    }
-    return $cached;
-  }
-  return undef;
-}
-
-# insert generated html into cache, move away images, 
-# return transformed html
-$maximage = 1;
-sub l2h_ToCache
-{
-  my $count = shift;
-  my $content = shift;
-  my @images = ($content =~ /SRC="(.*?)"/g);
-  my ($src, $dest);
-
-  for $src (@images)
-  {
-    $dest = $l2h_img{$src};
-    unless ($dest)
-    {
-      my $ext;
-      if ($src =~ /.*\.(.*)$/ && $1 ne $docu_ext)
-      {
-       $ext = $1;
-      }
-      else
-      {
-       warn "$ERROR: L2h image $src has invalid extension\n";
-       next;
-      }
-      while (-e "$docu_rdir${docu_name}_$maximage.$ext") { $maximage++;}
-      $dest = "${docu_name}_$maximage.$ext";
-      system("cp -f $docu_rdir$src $docu_rdir$dest");
-      $l2h_img{$src} = $dest;
-      unlink "$docu_rdir$src" unless ($DEBUG & DEBUG_L2H);
-    }
-    $content =~ s/$src/$dest/g;
-  }
-  $l2h_cache{$l2h_to_latex[$count]} = $content;
-  return $content;
-}
-
-
-#+++############################################################################
-#                                                                              #
-# Pass 1: read source, handle command, variable, simple substitution           #
-#                                                                              #
-#---############################################################################
-
-@lines = ();                           # whole document
-@toc_lines = ();                       # table of contents
-@stoc_lines = ();                      # table of contents
-$curlevel = 0;                         # current level in TOC
-$node = '';                            # current node name
-$node_next = '';                        # current node next name               
-$node_prev = '';                        # current node prev name
-$node_up = '';                          # current node up name
-$in_table = 0;                         # am I inside a table
-$table_type = '';                      # type of table ('', 'f', 'v', 'multi')
-@tables = ();                          # nested table support
-$in_bibliography = 0;                  # am I inside a bibliography
-$in_glossary = 0;                      # am I inside a glossary
-$in_top = 0;                           # am I inside the top node
-$has_top = 0;                          # did I see a top node?
-$has_top_command = 0;                  # did I see @top for automatic pointers?
-$in_pre = 0;                           # am I inside a preformatted section
-$in_list = 0;                          # am I inside a list
-$in_html = 0;                          # am I inside an HTML section
-$first_line = 1;                       # is it the first line
-$dont_html = 0;                                # don't protect HTML on this line
-$deferred_ref = '';                    # deferred reference for indexes
-@html_stack = ();                      # HTML elements stack
-$html_element = '';                    # current HTML element
-&html_reset;
-%macros = ();                           # macros
-
-# init l2h
-$T2H_L2H = &l2h_Init($docu_name) if ($T2H_L2H);
-$T2H_L2H = &l2h_InitToLatex      if ($T2H_L2H);    
-
-# build code for simple substitutions
-# the maps used (%simple_map and %things_map) MUST be aware of this
-# watch out for regexps, / and escaped characters!
-$subst_code = '';
-foreach (keys(%simple_map)) {
-    ($re = $_) =~ s/(\W)/\\$1/g; # protect regexp chars
-    $subst_code .= "s/\\\@$re/$simple_map{$_}/g;\n";
-}
-foreach (keys(%things_map)) {
-    $subst_code .= "s/\\\@$_\\{\\}/$things_map{$_}/g;\n";
-}
-if ($use_acc) {
-    # accentuated characters
-    foreach (keys(%accent_map)) {
-       if ($_ eq "`") {
-           $subst_code .= "s/$;3";
-       } elsif ($_ eq "'") {
-           $subst_code .= "s/$;4";
-       } else {
-           $subst_code .= "s/\\\@\\$_";
-       }
-       $subst_code .= "([a-z])/&\${1}$accent_map{$_};/gi;\n";
-    }
-}
-eval("sub simple_substitutions { $subst_code }");
-
-&init_input;
-INPUT_LINE: while ($_ = &next_line) {
-    #
-    # remove \input on the first lines only
-    #
-    if ($first_line) {
-       next if /^\\input/;
-       $first_line = 0;
-    }
-    # non-@ substitutions cf. texinfmt.el
-    #
-    # parse texinfo tags
-    #
-    $tag = '';
-    $end_tag = '';
-    if (/^\s*\@end\s+(\w+)\b/) {
-       $end_tag = $1;
-    } elsif (/^\s*\@(\w+)\b/) {
-       $tag = $1;
-    }
-    #
-    # handle @html / @end html
-    #
-    if ($in_html) {
-       if ($end_tag eq 'html') {
-           $in_html = 0;
-       } else {
-           $tag2pro{$in_html} .= $_;
-       }
-       next;
-    } elsif ($tag eq 'html') {
-       $in_html = $PROTECTTAG . ++$html_num;
-       push(@lines, $in_html);
-       next;
-    }
-
-    #
-    # try to remove inlined comments
-    # syntax from tex-mode.el comment-start-skip
-    #
-    s/((^|[^\@])(\@\@)*)\@c(omment | |\{|$).*/$1/;
-
-# Sometimes I use @c right at the end of  a line ( to suppress the line feed )
-#    s/((^|[^\@])(\@\@)*)\@c(omment)?$/$1/;
-#     s/((^|[^\@])(\@\@)*)\@c(omment)? .*/$1/;
-#     s/(.*)\@c{.*?}(.*)/$1$2/;
-#     s/(.*)\@comment{.*?}(.*)/$1$2/;
-#     s/^(.*)\@c /$1/;
-#     s/^(.*)\@comment /$1/;
-
-    #############################################################
-    # value substitution before macro expansion, so that
-    # it works in macro arguments                          
-    s/\@value{($VARRE)}/$value{$1}/eg;
-                           
-    #############################################################
-    # macro substitution
-    while (/\@(\w+)/g)
-    {
-      if (exists($macros->{$1}))    
-      {
-       my $before = $`;
-       my $name = $1;
-       my $after = $';
-       my @args;
-       my $args;
-       if ($after =~ /^\s*{(.*?[^\\])}(.*)/)  
-       {
-         $args = $1;
-         $after = $2;
-       }
-       elsif (@{$macros->{$name}->{Args}} == 1)
-       {
-         $args = $after;
-         $args =~ s/^\s*//;
-         $args =~ s/\s*$//;
-         $after = '';
-       }
-       $args =~ s|\\\\|\\|g;
-       $args =~ s|\\{|{|g;
-        $args =~ s|\\}|}|g;
-       if (@{$macros->{$name}->{Args}} > 1)
-       {
-         $args =~ s/(^|[^\\]),/$1$;/g ;
-         $args =~ s|\\,|,|g;
-         @args = split(/$;\s*/, $args) if (@{$macros->{$name}->{Args}} > 1);
-       }
-       else
-       {
-         $args =~ s|\\,|,|g;
-         @args = ($args);
-       }
-       my $macrobody = $macros->{$name}->{Body};
-       for ($i=0; $i<=$#args; $i++)
-       {
-         $macrobody =~ s|\\$macros->{$name}->{Args}->[$i]\\|$args[$i]|g;
-       }
-       $macrobody =~ s|\\\\|\\|g;
-       $_ = $before . $macrobody . $after;
-       unshift @input_spool, map {$_ = $_."\n"} split(/\n/, $_);
-       next INPUT_LINE;
-      }
-    }                          #
-                           
-    
-    #
-    # try to skip the line
-    #
-    if ($end_tag) {
-        $in_titlepage = 0 if $end_tag eq 'titlepage';
-       next if $to_skip{"end $end_tag"};
-    } elsif ($tag) {
-      $in_titlepage = 1 if $tag eq 'titlepage';
-      next if $to_skip{$tag};
-      last if $tag eq 'bye';
-    }
-    if ($in_top) {
-       # parsing the top node
-       if ($tag eq 'node' || 
-           ($sec2level{$tag} && $tag !~ /unnumbered/ && $tag !~ /heading/))
-       {
-           # no more in top
-           $in_top = 0;
-           push(@lines, $TOPEND);
-       }
-    }
-    unless ($in_pre) {
-       s/``/\"/g;
-       s/''/\"/g;
-       s/([\w ])---([\w ])/$1--$2/g;
-    }
-    #
-    # analyze the tag
-    #
-    if ($tag) {
-       # skip lines
-       &skip_until($tag), next if $tag eq 'ignore';
-       &skip_until($tag), next if $tag eq 'ifnothtml';
-       if ($tag eq 'ifinfo')
-       {
-         &skip_until($tag), next unless $T2H_EXPAND eq 'info';
-       }
-       if ($tag eq 'iftex')
-       {
-         &skip_until($tag), next unless $T2H_EXPAND eq 'tex';
-       } 
-       if ($tag eq 'tex')
-       {
-         # add to latex2html file
-         if ($T2H_EXPAND eq 'tex' && $T2H_L2H && ! $in_pre)
-         {
-           # add space to the end -- tex(i2dvi) does this, as well 
-           push(@lines, &l2h_ToLatex(&string_until($tag) . " "));
-         }
-         else
-         {
-           &skip_until($tag);
-         }
-         next;
-       }
-       if ($tag eq 'titlepage')
-       {
-         next;
-       }
-       # handle special tables
-       if ($tag =~ /^(|f|v|multi)table$/) {
-           $table_type = $1;
-           $tag = 'table';
-       }
-       # special cases
-       if ($tag eq 'top' || ($tag eq 'node' && /^\@node\s+top\s*,/i)) {
-           $in_top = 1;
-           $has_top = 1;
-           $has_top_command = 1 if $tag eq 'top';
-           @lines = (); # ignore all lines before top (title page garbage)
-           next;
-       } elsif ($tag eq 'node') {
-         if ($in_top)
-         {
-           $in_top = 0;
-           push(@lines, $TOPEND);
-         }
-         warn "$ERROR Bad node line: $_" unless $_ =~ /^\@node\s$NODESRE$/o;
-         # request of "Richard Y. Kim" <ryk@ap.com>
-         s/^\@node\s+//;
-         $_ = &protect_html($_); # if node contains '&' for instance
-         ($node, $node_next, $node_prev, $node_up) = split(/,/);
-         &normalise_node($node);
-         &normalise_node($node_next);
-         &normalise_node($node_prev);
-         &normalise_node($node_up);
-         $node =~ /\"/ ?
-           push @lines, &html_debug("<A NAME='$node'></A>\n", __LINE__) :
-           push @lines, &html_debug("<A NAME=\"$node\"></A>\n", __LINE__);
-         next;
-       } elsif ($tag eq 'include') {
-           if (/^\@include\s+($FILERE)\s*$/o) {
-               $file = LocateIncludeFile($1);
-               if ($file && -e $file) {
-                   &open($file);
-                   print "# including $file\n" if $T2H_VERBOSE;
-               } else {
-                   warn "$ERROR Can't find $1, skipping";
-               }
-           } else {
-               warn "$ERROR Bad include line: $_";
-           }
-           next;
-       } elsif ($tag eq 'ifclear') {
-           if (/^\@ifclear\s+($VARRE)\s*$/o) {
-               next unless defined($value{$1});
-               &skip_until($tag);
-           } else {
-               warn "$ERROR Bad ifclear line: $_";
-           }
-           next;
-       } elsif ($tag eq 'ifset') {
-           if (/^\@ifset\s+($VARRE)\s*$/o) {
-               next if defined($value{$1});
-               &skip_until($tag);
-           } else {
-               warn "$ERROR Bad ifset line: $_";
-           }
-           next;
-       } elsif ($tag eq 'menu') {
-           unless ($T2H_SHOW_MENU) {
-               &skip_until($tag);
-               next;
-           }
-           &html_push_if($tag);
-           push(@lines, &html_debug('', __LINE__));
-       } elsif ($format_map{$tag}) {
-           $in_pre = 1 if $format_map{$tag} eq 'PRE';
-           &html_push_if($format_map{$tag});
-           push(@lines, &html_debug('', __LINE__));
-           $in_list++ if $format_map{$tag} eq 'UL' || $format_map{$tag} eq 'OL' ;
-#          push(@lines, &debug("<BLOCKQUOTE>\n", __LINE__))
-#            if $tag =~ /example/i;
-           # sunshine@sunshineco.com: <PRE>bla</PRE> looks better than
-           # <PRE>\nbla</PRE> (at least on NeXTstep browser
-           push(@lines, &debug("<$format_map{$tag}>" . 
-                               ($in_pre ? '' : "\n"), __LINE__));
-           next;
-       }
-       elsif (exists $complex_format_map->{$tag})
-       {
-         my $start = eval $complex_format_map->{$tag}->[0];
-         if ($@)
-         {
-           print "$ERROR: eval of complex_format_map->{$tag}->[0] $complex_format_map->{$tag}->[0]: $@";
-           $start = '<pre>'
-         }
-         $in_pre = 1 if $start =~ /<pre/;
-         push(@lines, html_debug($start. ($in_pre ? '' : "\n"), __LINE__));
-         next;
-       } elsif ($tag eq 'table') {
-         # anorland@hem2.passagen.se
-         # if (/^\s*\@(|f|v|multi)table\s+\@(\w+)/) {
-            if (/^\s*\@(|f|v|multi)table\s+\@(\w+)|(\{[^\}]*\})/) {
-               $in_table = $2;
-               unshift(@tables, join($;, $table_type, $in_table));
-               if ($table_type eq "multi") {
-                   # don't use borders -- gets confused by empty cells
-                   push(@lines, &debug("<TABLE>\n", __LINE__));
-                   &html_push_if('TABLE');
-               } else {
-                   push(@lines, &debug("<DL COMPACT>\n", __LINE__));
-                   &html_push_if('DL');
-               }
-               push(@lines, &html_debug('', __LINE__));
-           } else {
-               warn "$ERROR Bad table line: $_";
-           }
-           next;
-       } 
-       elsif ($tag eq 'synindex' || $tag eq 'syncodeindex') 
-       {
-         if (/^\@$tag\s+(\w+)\s+(\w+)\s*$/) 
-         {
-           my $from = $1;
-           my $to = $2;
-           my $prefix_from = IndexName2Prefix($from);
-           my $prefix_to = IndexName2Prefix($to);
-
-           warn("$ERROR unknown from index name $from ind syn*index line: $_"), next
-             unless $prefix_from;
-           warn("$ERROR unknown to index name $to ind syn*index line: $_"), next
-             unless $prefix_to;
-
-           if ($tag eq 'syncodeindex')
-           {
-             $index_properties->{$prefix_to}->{'from_code'}->{$prefix_from} = 1;
-           }
-           else
-           {
-              $index_properties->{$prefix_to}->{'from'}->{$prefix_from} = 1;
-           }
-         } 
-         else 
-         {
-           warn "$ERROR Bad syn*index line: $_";
-         }
-         next;
-       } 
-       elsif ($tag eq 'defindex' || $tag eq 'defcodeindex') 
-       {
-         if (/^\@$tag\s+(\w+)\s*$/) 
-         {
-           my $name = $1;
-           $index_properties->{$name}->{name} = $name;
-           $index_properties->{$name}->{code} = 1 if $tag eq 'defcodeindex';
-         } 
-         else 
-         {
-           warn "$ERROR Bad defindex line: $_";
-         }
-         next;
-       }
-       elsif (/^\@printindex/)
-       {
-         push (@lines, "<!--::${section}::-->$_");
-         next;
-       }
-       elsif ($tag eq 'sp') {
-           push(@lines, &debug("<P>\n", __LINE__));
-           next;
-       } elsif ($tag eq 'center') {
-           push(@lines, &debug("<center>\n", __LINE__));
-           s/\@center//;
-       } elsif ($tag eq 'setref') {
-           &protect_html; # if setref contains '&' for instance
-           if (/^\@$tag\s*{($NODERE)}\s*$/) {
-               $setref = $1;
-               $setref =~ s/\s+/ /g; # normalize
-               $setref =~ s/ $//;
-               $node2sec{$setref} = $name;
-               $sec2node{$name} = $setref;
-               $node2href{$setref} = "$docu_doc#$docid";
-           } else {
-               warn "$ERROR Bad setref line: $_";
-           }
-           next;
-       } elsif ($tag eq 'lowersections') {
-           local ($sec, $level);
-           while (($sec, $level) = each %sec2level) {
-               $sec2level{$sec} = $level + 1;
-           }
-           next;
-       } elsif ($tag eq 'raisesections') {
-           local ($sec, $level);
-           while (($sec, $level) = each %sec2level) {
-               $sec2level{$sec} = $level - 1;
-           }
-           next;
-       }
-       elsif ($tag eq 'macro' || $tag eq 'rmacro')
-       {
-         if (/^\@$tag\s*(\w+)\s*(.*)/)
-         {
-           my $name = $1;
-           my @args;
-           @args = split(/\s*,\s*/ , $1)
-             if ($2 =~ /^\s*{(.*)}\s*/);
-           
-           $macros->{$name}->{Args} = \@args;
-           $macros->{$name}->{Body} = '';
-           while (($_ = &next_line) && $_ !~ /\@end $tag/)
-           {
-             $macros->{$name}->{Body} .= $_;
-           }
-           die "ERROR: No closing '\@end $tag' found for macro definition of '$name'\n"
-             unless (/\@end $tag/);
-           chomp $macros->{$name}->{Body};
-         }
-         else
-         {
-           warn "$ERROR: Bad macro defintion $_"
-         }
-         next;
-       }
-       elsif ($tag eq 'unmacro')
-       {
-         delete $macros->{$1} if (/^\@unmacro\s*(\w+)/);
-         next;
-       }
-       elsif ($tag eq 'documentlanguage')
-       {
-         SetDocumentLanguage($1) if (!$T2H_LANG && /documentlanguage\s*(\w+)/);
-       }
-       elsif (defined($def_map{$tag})) {
-           if ($def_map{$tag}) {
-               s/^\@$tag\s+//;
-               $tag = $def_map{$tag};
-               $_ = "\@$tag $_";
-               $tag =~ s/\s.*//;
-           }
-       } elsif (defined($user_sub{$tag})) {
-           s/^\@$tag\s+//;
-           $sub = $user_sub{$tag};
-           print "# user $tag = $sub, arg: $_" if $T2H_DEBUG & $DEBUG_USER;
-           if (defined(&$sub)) {
-               chop($_);
-               &$sub($_);
-           } else {
-               warn "$ERROR Bad user sub for $tag: $sub\n";
-           }
-           next;
-         } 
-       if (defined($def_map{$tag})) {
-           s/^\@$tag\s+//;
-           if ($tag =~ /x$/) {
-               # extra definition line
-               $tag = $`;
-               $is_extra = 1;
-           } else {
-               $is_extra = 0;
-           }
-           while (/\{([^\{\}]*)\}/) {
-               # this is a {} construct
-               ($before, $contents, $after) = ($`, $1, $');
-               # protect spaces
-               $contents =~ s/\s+/$;9/g;
-               # restore $_ protecting {}
-               $_ = "$before$;7$contents$;8$after";
-           }
-           @args = split(/\s+/, &protect_html($_));
-           foreach (@args) {
-               s/$;9/ /g;      # unprotect spaces
-               s/$;7/\{/g;     # ... {
-               s/$;8/\}/g;     # ... }
-           }
-           $type = shift(@args);
-           $type =~ s/^\{(.*)\}$/$1/;
-           print "# def ($tag): {$type} ", join(', ', @args), "\n"
-               if $T2H_DEBUG & $DEBUG_DEF;
-           $type .= ':'; # it's nicer like this
-           my $name = shift(@args);
-           $name =~ s/^\{(.*)\}$/$1/;
-           if ($is_extra) {
-               $_ = &debug("<DT>", __LINE__);
-           } else {
-               $_ = &debug("<DL>\n<DT>", __LINE__);
-           }
-           if ($tag eq 'deffn' || $tag eq 'defvr' || $tag eq 'deftp') {
-               $_ .= "<U>$type</U> <B>$name</B>";
-               $_ .= " <I>@args</I>" if @args;
-           } elsif ($tag eq 'deftypefn' || $tag eq 'deftypevr'
-                    || $tag eq 'defcv' || $tag eq 'defop') {
-               $ftype = $name;
-               $name = shift(@args);
-               $name =~ s/^\{(.*)\}$/$1/;
-               $_ .= "<U>$type</U> $ftype <B>$name</B>";
-               $_ .= " <I>@args</I>" if @args;
-           } else {
-               warn "$ERROR Unknown definition type: $tag\n";
-               $_ .= "<U>$type</U> <B>$name</B>";
-               $_ .= " <I>@args</I>" if @args;
-           }
-           $_ .= &debug("\n<DD>", __LINE__);
-           $name = &unprotect_html($name);
-           if ($tag eq 'deffn' || $tag eq 'deftypefn') {
-             EnterIndexEntry('f', $name, $docu_doc, $section, \@lines);
-#              unshift(@input_spool, "\@findex $name\n");
-           } elsif ($tag eq 'defop') {
-             EnterIndexEntry('f', "$name on $ftype", $docu_doc, $section, \@lines);
-#              unshift(@input_spool, "\@findex $name on $ftype\n");
-           } elsif ($tag eq 'defvr' || $tag eq 'deftypevr' || $tag eq 'defcv') {
-             EnterIndexEntry('v', $name, $docu_doc, $section, \@lines);
-#              unshift(@input_spool, "\@vindex $name\n");
-           } else {
-             EnterIndexEntry('t', $name, $docu_doc, $section, \@lines);
-#              unshift(@input_spool, "\@tindex $name\n");
-           }
-           $dont_html = 1;
-       }
-    } elsif ($end_tag) {
-       if ($format_map{$end_tag}) {
-           $in_pre = 0 if $format_map{$end_tag} eq 'PRE';
-           $in_list-- if $format_map{$end_tag} eq 'UL' || $format_map{$end_tag} eq 'OL' ;
-           &html_pop_if('P');
-           &html_pop_if('LI');
-           &html_pop_if();
-           push(@lines, &debug("</$format_map{$end_tag}>\n", __LINE__));
-           push(@lines, &html_debug('', __LINE__));
-       }
-       elsif (exists $complex_format_map->{$end_tag})
-       {
-         my $end = eval $complex_format_map->{$end_tag}->[1];
-         if ($@)
-         {
-           print "$ERROR: eval of complex_format_map->{$end_tag}->[1] $complex_format_map->{$end_tag}->[0]: $@";
-           $end = '</pre>'
-         }
-         $in_pre = 0 if $end =~ m|</pre>|;
-         push(@lines, html_debug($end, __LINE__));
-       } elsif ($end_tag =~ /^(|f|v|multi)table$/) {
-           unless (@tables) {
-               warn "$ERROR \@end $end_tag without \@*table\n";
-               next;
-           }
-           &html_pop_if('P');
-           ($table_type, $in_table) = split($;, shift(@tables));
-           unless ($1 eq $table_type) {
-               warn "$ERROR \@end $end_tag without matching \@$end_tag\n";
-               next;
-           }
-           if ($table_type eq "multi") {
-               push(@lines, "</TR></TABLE>\n");
-               &html_pop_if('TR');
-           } else {
-               push(@lines, "</DL>\n");
-               &html_pop_if('DD');
-           }
-           &html_pop_if();
-           if (@tables) {
-               ($table_type, $in_table) = split($;, $tables[0]);
-           } else {
-               $in_table = 0;
-           }
-       } elsif (defined($def_map{$end_tag})) {
-           push(@lines, &debug("</DL>\n", __LINE__));
-       } elsif ($end_tag eq 'menu') {
-           &html_pop_if();
-           push(@lines, $_); # must keep it for pass 2
-       } 
-       next;
-    }
-    #############################################################
-    # anchor insertion
-    while (/\@anchor\s*\{(.*?)\}/)
-    {
-      $_ = $`.$';
-      my $anchor = $1;
-      $anchor = &normalise_node($anchor);
-      push @lines, &html_debug("<A NAME=\"$anchor\"></A>\n");
-      $node2href{$anchor} = "$docu_doc#$anchor";
-      next INPUT_LINE if $_ =~ /^\s*$/;
-    }
-
-    #############################################################
-    # index entry generation, after value substitutions
-    if (/^\@(\w+?)index\s+/)
-    {
-      EnterIndexEntry($1, $', $docu_doc, $section, \@lines);
-      next;
-    }
-    #
-    # protect texi and HTML things
-    &protect_texi;
-    $_ = &protect_html($_) unless $dont_html;
-    $dont_html = 0;
-    # substitution (unsupported things)
-    s/^\@exdent\s+//g;
-    s/\@noindent\s+//g;
-    s/\@refill\s+//g;
-    # other substitutions
-    &simple_substitutions;
-    s/\@footnote\{/\@footnote$docu_doc\{/g; # mark footnotes, cf. pass 4
-    #
-    # analyze the tag again
-    #
-    if ($tag) {
-      if (defined($sec2level{$tag}) && $sec2level{$tag} > 0) {
-           if (/^\@$tag\s+(.+)$/) {
-               $name = $1;
-               $name = &normalise_node($name);
-               $level = $sec2level{$tag};
-               # check for index
-               $first_index_chapter = $name
-                 if ($level == 1 && !$first_index_chapter && 
-                     $name =~ /index/i);
-               if ($in_top && /heading/){
-                   $T2H_HAS_TOP_HEADING = 1;
-                    $_ = &debug("<H$level>$name</H$level>\n", __LINE__);
-                   &html_push_if('body');
-                   print "# top heading, section $name, level $level\n"
-                       if $T2H_DEBUG & $DEBUG_TOC;
-               }
-               else
-               {
-                 unless (/^\@\w*heading/)
-                 {
-                   unless (/^\@unnumbered/)
-                   {
-                     my $number = &update_sec_num($tag, $level);
-                     $name = $number. ' ' . $name if $T2H_NUMBER_SECTIONS;
-                     $sec2number{$name} = $number;
-                     $number2sec{$number} = $name;
-                   }
-                   if (defined($toplevel))
-                   {
-                     push @lines, ($level==$toplevel ? $CHAPTEREND : $SECTIONEND);
-                   }
-                   else
-                   {
-                     # first time we see a "section"
-                     unless ($level == 1) 
-                     {
-                       warn "$WARN The first section found is not of level 1: $_";
-                     }
-                     $toplevel = $level;
-                   }
-                   push(@sections, $name);
-                   next_doc() if ($T2H_SPLIT eq 'section' ||
-                                  $T2H_SPLIT && $level == $toplevel);
-                 }
-                 $sec_num++;
-                 $docid = "SEC$sec_num";
-                 $tocid = (/^\@\w*heading/ ? undef : "TOC$sec_num");
-                 # check biblio and glossary
-                 $in_bibliography = ($name =~ /^([A-Z]|\d+)?(\.\d+)*\s*bibliography$/i);
-                 $in_glossary = ($name =~ /^([A-Z]|\d+)?(\.\d+)*\s*glossary$/i);
-                 # check node
-                 if ($node)
-                 {
-                   warn "$ERROR Duplicate node found: $node\n"
-                     if ($node2sec{$node});
-                 }
-                 else
-                 {
-                   $name .= ' ' while ($node2sec{$name});
-                   $node = $name;
-                 }
-                 $name .= ' ' while ($sec2node{$name});
-                 $section = $name; 
-                 $node2sec{$node} = $name;
-                 $sec2node{$name} = $node;
-                 $node2href{$node} = "$docu_doc#$docid";
-                 $node2next{$node} = $node_next;
-                 $node2prev{$node} = $node_prev;
-                 $node2up{$node} = $node_up;
-                 print "# node $node, section $name, level $level\n"
-                   if $T2H_DEBUG & $DEBUG_TOC;
-
-                 $node = '';
-                 $node_next = '';
-                 $node_prev = '';
-                 $node_next = '';
-                 if ($tocid)
-                 {
-                   # update TOC
-                   while ($level > $curlevel) {
-                     $curlevel++;
-                     push(@toc_lines, "<UL>\n");
-                   }
-                   while ($level < $curlevel) {
-                     $curlevel--;
-                     push(@toc_lines, "</UL>\n");
-                   }
-                   $_ = &t2h_anchor($tocid, "$docu_doc#$docid", $name, 1);
-                   $_ = &substitute_style($_);
-                   push(@stoc_lines, "$_<BR>\n") if ($level == 1);
-                   if ($T2H_NUMBER_SECTIONS)
-                   {
-                     push(@toc_lines, $_ . "<BR>\n")
-                   }
-                   else
-                   {
-                     push(@toc_lines, "<LI>" . $_ ."</LI>");
-                   }
-                 }
-                 else
-                 {
-                   push(@lines, &html_debug("<A NAME=\"$docid\"></A>\n", 
-                                          __LINE__));
-                 }
-                 # update DOC
-                 push(@lines, &html_debug('', __LINE__));
-                 &html_reset;
-                 $_ =  "<H$level> $name </H$level>\n<!--docid::${docid}::-->\n";
-                 $_ = &debug($_, __LINE__);
-                 push(@lines, &html_debug('', __LINE__));
-               }
-               # update DOC
-               foreach $line (split(/\n+/, $_)) {
-                   push(@lines, "$line\n");
-               }
-               next;
-           } else {
-               warn "$ERROR Bad section line: $_";
-           }
-       } else {
-           # track variables
-           $value{$1} = Unprotect_texi($2), next if /^\@set\s+($VARRE)\s+(.*)$/o;
-           delete $value{$1}, next if /^\@clear\s+($VARRE)\s*$/o;
-           # store things
-           $value{'_shorttitle'} = Unprotect_texi($1), next if /^\@shorttitle\s+(.*)$/;
-           $value{'_setfilename'}   = Unprotect_texi($1), next if /^\@setfilename\s+(.*)$/;
-           $value{'_settitle'}      = Unprotect_texi($1), next if /^\@settitle\s+(.*)$/;
-           $value{'_author'}   .= Unprotect_texi($1)."\n", next if /^\@author\s+(.*)$/;
-           $value{'_subtitle'} .= Unprotect_texi($1)."\n", next if /^\@subtitle\s+(.*)$/;
-           $value{'_title'}    .= Unprotect_texi($1)."\n", next if /^\@title\s+(.*)$/;
-
-           # list item
-           if (/^\s*\@itemx?\s+/) {
-               $what = $';
-               $what =~ s/\s+$//;
-               if ($in_bibliography && $use_bibliography) {
-                   if ($what =~ /^$BIBRE$/o) {
-                       $id = 'BIB' . ++$bib_num;
-                       $bib2href{$what} = "$docu_doc#$id";
-                       print "# found bibliography for '$what' id $id\n"
-                           if $T2H_DEBUG & $DEBUG_BIB;
-                       $what = &t2h_anchor($id, '', $what);
-                   }
-               } elsif ($in_glossary && $T2H_USE_GLOSSARY) {
-                   $id = 'GLOSS' . ++$gloss_num;
-                   $entry = $what;
-                   $entry =~ tr/A-Z/a-z/ unless $entry =~ /^[A-Z\s]+$/;
-                   $gloss2href{$entry} = "$docu_doc#$id";
-                   print "# found glossary for '$entry' id $id\n"
-                       if $T2H_DEBUG & $DEBUG_GLOSS;
-                   $what = &t2h_anchor($id, '', $what);
-               }
-               elsif ($in_table && ($table_type eq 'f' || $table_type eq 'v'))
-               {
-                 EnterIndexEntry($table_type, $what, $docu_doc, $section, \@lines);
-               }
-               &html_pop_if('P');
-               if ($html_element eq 'DL' || $html_element eq 'DD') {
-                   if ($things_map{$in_table} && !$what) {
-                       # special case to allow @table @bullet for instance
-                       push(@lines, &debug("<DT>$things_map{$in_table}\n", __LINE__));
-                   } else {
-                       push(@lines, &debug("<DT>\@$in_table\{$what\}\n", __LINE__));
-                   }
-                   push(@lines, "<DD>");
-                   &html_push('DD') unless $html_element eq 'DD';
-                   if ($table_type) { # add also an index
-                       unshift(@input_spool, "\@${table_type}index $what\n");
-                   }
-               } elsif ($html_element eq 'TABLE') {
-                   push(@lines, &debug("<TR><TD>$what</TD>\n", __LINE__));
-                   &html_push('TR');
-               } elsif ($html_element eq 'TR') {
-                   push(@lines, &debug("</TR>\n", __LINE__));
-                   push(@lines, &debug("<TR><TD>$what</TD>\n", __LINE__));
-               } else {
-                   push(@lines, &debug("<LI>$what\n", __LINE__));
-                   &html_push('LI') unless $html_element eq 'LI';
-               }
-               push(@lines, &html_debug('', __LINE__));
-               if ($deferred_ref) {
-                   push(@lines, &debug("$deferred_ref\n", __LINE__));
-                   $deferred_ref = '';
-               }
-               next;
-           } elsif (/^\@tab\s+(.*)$/) {
-               push(@lines, "<TD>$1</TD>\n");
-               next;
-           }
-       }
-    }
-    # paragraph separator
-    if ($_ eq "\n" && ! $in_pre) {
-       next if $#lines >= 0 && $lines[$#lines] eq "\n";
-       if ($html_element eq 'P') {
-           push (@lines, &debug("</P><P>\n", __LINE__));
-       }
-#      else
-#      {
-#        push(@lines, "<P></P>\n");
-#        $_ = &debug("<P></P>\n", __LINE__);
-#      }
-        elsif ($html_element eq 'body' || $html_element eq 'BLOCKQUOTE' || $html_element eq 'DD' || $html_element eq 'LI') 
-       {
-         &html_push('P');
-         push(@lines, &debug("<P>\n", __LINE__));
-       }
-      }
-    # otherwise
-    push(@lines, $_) unless $in_titlepage;
-    push(@lines, &debug("</center>\n", __LINE__))  if ($tag eq 'center');
-}
-
-# finish TOC
-$level = 0;
-while ($level < $curlevel) {
-    $curlevel--;
-    push(@toc_lines, "</UL>\n");
-}
-
-print "# end of pass 1\n" if $T2H_VERBOSE;
-
-SetDocumentLanguage('en') unless ($T2H_LANG);
-#+++############################################################################
-#                                                                              #
-# Stuff related to Index generation                                            #
-#                                                                              #
-#---############################################################################
-
-sub EnterIndexEntry
-{
-  my $prefix = shift;
-  my $key = shift;
-  my $docu_doc = shift;
-  my $section = shift;
-  my $lines = shift;
-  local $_;
-
-  warn "$ERROR Undefined index command: $_", next
-    unless (exists ($index_properties->{$prefix}));
-  $key =~ s/\s+$//;
-  $_ = $key;
-  &protect_texi;
-  $key = $_;
-  $_ = &protect_html($_);
-  my $html_key = substitute_style($_);
-  my $id;
-  $key = remove_style($key);
-  $key = remove_things($key);
-  $_ = $key;
-  &unprotect_texi;
-  $key = $_;
-  while (exists $index->{$prefix}->{$key}) {$key .= ' '};
-  if ($lines->[$#lines] =~ /^<!--docid::(.+)::-->$/)
-  {
-    $id = $1;
-  }
-  else
-  {
-    $id = 'IDX' . ++$idx_num;
-    push(@$lines, &t2h_anchor($id, '', $T2H_INVISIBLE_MARK, !$in_pre));
-  }
-  $index->{$prefix}->{$key}->{html_key} = $html_key;
-  $index->{$prefix}->{$key}->{section} = $section;
-  $index->{$prefix}->{$key}->{href} = "$docu_doc#$id";
-  print "# found ${prefix}index  for '$key' with id $id\n"
-    if $T2H_DEBUG & $DEBUG_INDEX;
-}
-
-sub IndexName2Prefix
-{
-  my $name = shift;
-  my $prefix;
-
-  for $prefix (keys %$index_properties)
-  {
-    return $prefix if ($index_properties->{$prefix}->{name} eq $name);
-  }
-  return undef;
-}
-
-sub GetIndexEntries
-{
-  my $normal = shift;
-  my $code = shift;
-  my ($entries, $prefix, $key) = ({});
-  
-  for $prefix (keys %$normal)
-  {
-    for $key (keys %{$index->{$prefix}})
-    {
-      $entries->{$key} = {%{$index->{$prefix}->{$key}}};
-    }
-  }
-
-  if (defined($code))
-  {
-    for $prefix (keys %$code)
-    {
-      unless (exists $normal->{$keys})
-      {
-       for $key (keys %{$index->{$prefix}})
-       {
-         $entries->{$key} = {%{$index->{$prefix}->{$key}}};
-         $entries->{$key}->{html_key} = "<CODE>$entries->{$key}->{html_key}</CODE>";
-       }
-      }
-    }
-  }
-  return $entries;
-}
-
-sub byAlpha
-{
-  if ($a =~ /^[A-Za-z]/)
-  {
-    if ($b =~ /^[A-Za-z]/)
-    {
-      return lc($a) cmp lc($b);
-    }
-    else
-    {
-      return 1;
-    }
-  }
-  elsif ($b =~ /^[A-Za-z]/)
-  {
-    return -1;
-  }
-  else
-  {
-    return lc($a) cmp lc($b);
-  } 
-}
-
-sub GetIndexPages
-{
-  my $entries = shift;
-  my (@Letters, $key);
-  my ($EntriesByLetter, $Pages, $page) = ({}, [], {});
-  my @keys = sort byAlpha keys %$entries;
-
-  for $key (@keys)
-  {
-    push @{$EntriesByLetter->{uc(substr($key,0, 1))}} , $entries->{$key};
-  }
-  @Letters = sort byAlpha keys %$EntriesByLetter;
-  
-  $T2H_SPLIT_INDEX = 0 unless ($T2H_SPLIT);
-
-  unless ($T2H_SPLIT_INDEX)
-  {
-    $page->{First} = $Letters[0];
-    $page->{Last} = $Letters[$#Letters];
-    $page->{Letters} = \@Letters;
-    $page->{EntriesByLetter} = $EntriesByLetter;
-    push @$Pages, $page;
-    return $Pages;
-  }
-
-  if ($T2H_SPLIT_INDEX =~ /^\d+$/)
-  {
-    my $i = 0;
-    my ($prev_letter, $letter);
-    $page->{First} = $Letters[0];
-    for $letter (@Letters)
-    {
-      if ($i > $T2H_SPLIT_INDEX)
-      {
-       $page->{Last} = $prev_letter;
-       push @$Pages, {%$page};
-       $page->{Letters} = [];
-       $page->{EntriesByLetter} = {};
-       $page->{First} = $letter;
-       $i=0;
-      }
-      push @{$page->{Letters}}, $letter;
-      $page->{EntriesByLetter}->{$letter} = [@{$EntriesByLetter->{$letter}}];
-      $i += scalar(@{$EntriesByLetter->{$letter}});
-      $prev_letter = $letter;
-    }
-    $page->{Last} = $Letters[$#Letters];
-    push @$Pages, {%$page};
-  }
-  return $Pages;
-}
-
-sub GetIndexSummary
-{
-  my $first_page = shift;
-  my $Pages = shift;
-  my $name = shift;
-  my ($page, $letter, $summary, $i, $l1, $l2, $l);
-
-  $i = 0;
-  $summary = '<table><tr><th valign=top>Jump to: &nbsp; </th><td>';
-  
-  for $page ($first_page, @$Pages)
-  {
-    for $letter (@{$page->{Letters}})
-    {
-      $l = t2h_anchor('', "$page->{href}#${name}_$letter", "<b>$letter</b>", 
-                     0, 'style="text-decoration:none"') . "\n &nbsp; \n";
-      
-      if ($letter =~ /^[A-Za-z]/)
-      {
-       $l2 .= $l;
-      }
-      else
-      {
-       $l1 .= $l;
-      }
-    }
-  }
-  $summary .= $l1 . "<BR>\n" if ($l1);
-  $summary .= $l2 . '</td></tr></table><br>';
-  return $summary;
-}
-
-sub PrintIndexPage
-{
-  my $lines = shift;
-  my $summary = shift;
-  my $page = shift;
-  my $name = shift;
-
-  push @$lines, $summary;
-
-  push @$lines , <<EOT;
-<P></P>
-<TABLE border=0>
-<TR><TD></TD><TH ALIGN=LEFT>Index Entry</TH><TH ALIGN=LEFT> Section</TH></TR>
-<TR><TD COLSPAN=3> <HR></TD></TR>
-EOT
-
-  for $letter (@{$page->{Letters}})
-  {
-    push @$lines, "<TR><TH><A NAME=\"${name}_$letter\"></A>$letter</TH><TD></TD><TD></TD></TR>\n";
-    for $entry (@{$page->{EntriesByLetter}->{$letter}})
-    {
-      push @$lines, 
-      "<TR><TD></TD><TD valign=top>" . 
-       t2h_anchor('', $entry->{href}, $entry->{html_key}) .
-         "</TD><TD valign=top>" . 
-           t2h_anchor('', sec_href($entry->{section}), clean_name($entry->{section})) .
-             "</TD></TR>\n";
-    }
-    push @$lines, "<TR><TD COLSPAN=3> <HR></TD></TR>\n";
-  }
-  push @$lines, "</TABLE><P></P>";
-  push @$lines, $summary;
-}
-
-sub PrintIndex
-{
-  my $lines = shift;
-  my $name = shift;
-  my $section = shift;
-  $section = 'Top' unless $section;
-  my $prefix = IndexName2Prefix($name);
-
-  warn ("$ERROR printindex: bad index name: $name"), return 
-    unless $prefix;
-
-  if ($index_properties->{$prefix}->{code})
-  {
-    $index_properties->{$prefix}->{from_code}->{$prefix} = 1;
-  }
-  else
-  {
-    $index_properties->{$prefix}->{from}->{$prefix}= 1;
-  }
-
-  my $Entries = GetIndexEntries($index_properties->{$prefix}->{from}, 
-                               $index_properties->{$prefix}->{from_code});
-  return unless %$Entries;
-
-  if ($T2H_IDX_SUMMARY)
-  {
-    my $key;
-    open(FHIDX, ">$docu_rdir$docu_name" . "_$name.idx")
-      || die "Can't open > $docu_rdir$docu_name" . "_$name.idx for writing: $!\n";
-    print "# writing $name index summary in $docu_rdir$docu_name" . "_$name.idx...\n" if $T2H_VERBOSE;
-
-    for $key (sort keys %$Entries)
-    {
-      print FHIDX "$key\t$Entries->{$key}->{href}\n";
-    }
-  }
-
-  my $Pages = GetIndexPages($Entries);
-  my $page;
-  my $first_page = shift @$Pages;
-  my $sec_name = $section;
-  # remove section number
-  $sec_name =~ s/.*? // if $sec_name =~ /^([A-Z]|\d+)\./;
-
-  ($first_page->{href} = sec_href($section)) =~ s/\#.*$//;
-  # Update tree structure of document
-  if (@$Pages)
-  {
-    my $sec;
-    my @after;
-
-    while (@sections && $sections[$#sections] ne $section)
-    {
-      unshift @after, pop @sections;
-    }
-
-    for $page (@$Pages)
-    {
-      my $node = ($page->{First} ne $page->{Last} ? 
-                 "$sec_name: $page->{First} -- $page->{Last}" :
-                 "$sec_name: $page->{First}");
-      push @sections, $node;
-      $node2sec{$node} = $node;
-      $sec2node{$node} = $node;
-      $node2up{$node} = $section;
-      $page->{href} = next_doc();
-      $page->{name} = $node;
-      $node2href{$node} = $page->{href};
-      if ($prev_node)
-      {
-       $node2next{$prev_node} = $node;
-       $node2prev{$node} = $prev_node;
-      }
-      $prev_node = $node;
-    }
-    push @sections, @after;
-  }
-
-  my $summary = GetIndexSummary($first_page, $Pages, $name);
-  PrintIndexPage($lines, $summary, $first_page, $name);
-  for $page (@$Pages)
-  {
-    push @$lines, ($T2H_SPLIT eq 'chapter' ? $CHAPTEREND : $SECTIONEND);
-    push @$lines, "<H2 ALIGN=\"Left\">$page->{name}</H2>\n";
-    PrintIndexPage($lines, $summary, $page, $name);
-  }
-}
-
-
-#+++############################################################################
-#                                                                              #
-# Pass 2/3: handle style, menu, index, cross-reference                         #
-#                                                                              #
-#---############################################################################
-
-@lines2 = ();                          # whole document (2nd pass)
-@lines3 = ();                          # whole document (3rd pass)
-$in_menu = 0;                          # am I inside a menu
-
-while (@lines) {
-    $_ = shift(@lines);
-    #
-    # special case (protected sections)
-    #
-    if (/^$PROTECTTAG/o) {
-       push(@lines2, $_);
-       next;
-    }
-    #
-    # menu
-    #
-    if (/^\@menu\b/)
-    {
-      $in_menu = 1;
-      $in_menu_listing = 1;
-      push(@lines2, &debug("<BLOCKQUOTE><TABLE BORDER=0 CELLSPACING=0> \n", __LINE__));
-      next;
-    }
-    if (/^\@end\s+menu\b/)
-    {
-      if ($in_menu_listing)
-      {
-       push(@lines2, &debug("</TABLE></BLOCKQUOTE>\n", __LINE__));
-      }
-      else
-      {
-       push(@lines2, &debug("</BLOCKQUOTE>\n", __LINE__));
-      }
-      $in_menu = 0;
-      $in_menu_listing = 0;
-      next;
-    }
-    if ($in_menu) 
-    {
-      my ($node, $name, $descr);
-      if (/^\*\s+($NODERE)::/o)
-      {
-       $node = $1;
-       $descr = $';
-      }
-      elsif (/^\*\s+(.+):\s+([^\t,\.\n]+)[\t,\.\n]/)
-      {
-       $name = $1;
-       $node = $2;
-       $descr = $';
-      }
-      elsif (/^\*/) 
-      {
-       warn "$ERROR Bad menu line: $_";
-      }
-      else
-      {
-       if ($in_menu_listing)
-       {
-         $in_menu_listing = 0;
-         push(@lines2, &debug("</TABLE>\n", __LINE__));
-       }
-       # should be like verbatim -- preseve spaces, etc
-       s/ /\&nbsp;/g;
-       $_ .= "<br>\n";
-       push(@lines2, $_);
-      }
-      if ($node)
-      {
-       if (! $in_menu_listing)
-       {
-         $in_menu_listing = 1;
-         push(@lines2, &debug("<TABLE BORDER=0 CELLSPACING=0>\n", __LINE__));
-       }
-       # look for continuation
-       while ($lines[0] =~ /^\s+\w+/)
-       {
-         $descr .= shift(@lines);
-       }
-       &menu_entry($node, $name, $descr);
-      } 
-      next;
-    }
-    #
-    # printindex
-    #
-    PrintIndex(\@lines2, $2, $1), next
-      if (/^<!--::(.*)::-->\@printindex\s+(\w+)/);
-    #
-    # simple style substitutions
-    #
-    $_ = &substitute_style($_);
-    #
-    # xref
-    #
-    while (/\@(x|px|info|)ref{([^{}]+)(}?)/) {
-       # note: Texinfo may accept other characters
-       ($type, $nodes, $full) = ($1, $2, $3);
-       ($before, $after) = ($`, $');
-       if (! $full && $after) {
-           warn "$ERROR Bad xref (no ending } on line): $_";
-           $_ = "$before$;0${type}ref\{$nodes$after";
-           next; # while xref
-       }
-       if ($type eq 'x') {
-           $type = "$T2H_WORDS->{$T2H_LANG}->{'See'} ";
-       } elsif ($type eq 'px') {
-           $type = "$T2H_WORDS->{$T2H_LANG}->{'see'} ";
-       } elsif ($type eq 'info') {
-           $type = "$T2H_WORDS->{$T2H_LANG}->{'See'} Info";
-       } else {
-           $type = '';
-       }
-       unless ($full) {
-           $next = shift(@lines);
-           $next = &substitute_style($next);
-           chop($nodes); # remove final newline
-           if ($next =~ /\}/) { # split on 2 lines
-               $nodes .= " $`";
-               $after = $';
-           } else {
-               $nodes .= " $next";
-               $next = shift(@lines);
-               $next = &substitute_style($next);
-               chop($nodes);
-               if ($next =~ /\}/) { # split on 3 lines
-                   $nodes .= " $`";
-                   $after = $';
-               } else {
-                   warn "$ERROR Bad xref (no ending }): $_";
-                   $_ = "$before$;0xref\{$nodes$after";
-                   unshift(@lines, $next);
-                   next; # while xref
-               }
-           }
-       }
-       $nodes =~ s/\s+/ /g; # remove useless spaces
-       @args = split(/\s*,\s*/, $nodes);
-       $node = $args[0]; # the node is always the first arg
-       $node = &normalise_node($node);
-       $sec = $args[2] || $args[1] || $node2sec{$node};
-       $href = $node2href{$node};
-       if (@args == 5) { # reference to another manual
-           $sec = $args[2] || $node;
-           $man = $args[4] || $args[3];
-           $_ = "${before}${type}$T2H_WORDS->{$T2H_LANG}->{'section'} `$sec' in \@cite{$man}$after";
-       } elsif ($type =~ /Info/) { # inforef
-           warn "$ERROR Wrong number of arguments: $_" unless @args == 3;
-           ($nn, $_, $in) = @args;
-           $_ = "${before}${type} file `$in', node `$nn'$after";
-       } elsif ($sec && $href && ! $T2H_SHORT_REF) {
-           $_  = "${before}${type}";
-           $_ .= "$T2H_WORDS->{$T2H_LANG}->{'section'} " if ${type};
-           $_ .= &t2h_anchor('', $href, $sec) . $after;
-       } 
-       elsif ($href)
-       {
-         $_ = "${before}${type} " . 
-           &t2h_anchor('', $href, $args[2] || $args[1] || $node) . 
-             $after;
-       }
-       else {
-           warn "$ERROR Undefined node ($node): $_";
-           $_ = "$before$;0xref{$nodes}$after";
-       }
-    }
-
-    # replace images
-    s[\@image\s*{(.+?)}]
-    {
-     my @args = split (/\s*,\s*/, $1);
-     my $base = $args[0];
-     my $image = 
-       LocateIncludeFile("$base.png") || 
-       LocateIncludeFile("$base.jpg") ||
-       LocateIncludeFile("$base.gif");
-     warn "$ERROR no image file for $base: $_" unless ($image && -e $image);
-     "<IMG SRC=\"$image\" ALT=\"$base\">";
-     ($T2H_CENTER_IMAGE ?
-      "<CENTER><IMG SRC=\"$image\" ALT=\"$base\"></CENTER>" :
-      "<IMG SRC=\"$image\" ALT=\"$base\">");
-    }eg;
-
-    #
-    # try to guess bibliography references or glossary terms
-    #
-    unless (/^<H\d><A NAME=\"SEC\d/) {
-       if ($use_bibliography) {
-           $done = '';
-           while (/$BIBRE/o) {
-               ($pre, $what, $post) = ($`, $&, $');
-               $href = $bib2href{$what};
-               if (defined($href) && $post !~ /^[^<]*<\/A>/) {
-                   $done .= $pre . &t2h_anchor('', $href, $what);
-               } else {
-                   $done .= "$pre$what";
-               }
-               $_ = $post;
-           }
-           $_ = $done . $_;
-       }
-       if ($T2H_USE_GLOSSARY) {
-           $done = '';
-           while (/\b\w+\b/) {
-               ($pre, $what, $post) = ($`, $&, $');
-               $entry = $what;
-               $entry =~ tr/A-Z/a-z/ unless $entry =~ /^[A-Z\s]+$/;
-               $href = $gloss2href{$entry};
-               if (defined($href) && $post !~ /^[^<]*<\/A>/) {
-                   $done .= $pre . &t2h_anchor('', $href, $what);
-               } else {
-                   $done .= "$pre$what";
-               }
-               $_ = $post;
-           }
-           $_ = $done . $_;
-       }
-    }
-    # otherwise
-    push(@lines2, $_);
-}
-print "# end of pass 2\n" if $T2H_VERBOSE;
-
-#
-# split style substitutions
-#
-while (@lines2) {
-    $_ = shift(@lines2);
-    #
-    # special case (protected sections)
-    #
-    if (/^$PROTECTTAG/o) {
-       push(@lines3, $_);
-       next;
-    }
-    #
-    # split style substitutions
-    #
-    $old = '';
-    while ($old ne $_) {
-        $old = $_;
-       if (/\@(\w+)\{/) {
-           ($before, $style, $after) = ($`, $1, $');
-           if (defined($style_map{$style})) {
-               $_ = $after;
-               $text = '';
-               $after = '';
-               $failed = 1;
-               while (@lines2) {
-                   if (/\}/) {
-                       $text .= $`;
-                       $after = $';
-                       $failed = 0;
-                       last;
-                   } else {
-                       $text .= $_;
-                       $_ = shift(@lines2);
-                   }
-               }
-               if ($failed) {
-                   die "* Bad syntax (\@$style) after: $before\n";
-               } else {
-                   $text = &apply_style($style, $text);
-                   $_ = "$before$text$after";
-               }
-           }
-       }
-    }
-    # otherwise
-    push(@lines3, $_);
-}
-print "# end of pass 3\n" if $T2H_VERBOSE;
-       
-#+++############################################################################
-#                                                                              #
-# Pass 4: foot notes, final cleanup                                            #
-#                                                                              #
-#---############################################################################
-
-@foot_lines = ();                      # footnotes
-@doc_lines = ();                       # final document
-$end_of_para = 0;                      # true if last line is <P>
-       
-while (@lines3) {
-    $_ = shift(@lines3);
-    #
-    # special case (protected sections)
-    #
-    if (/^$PROTECTTAG/o) {
-       push(@doc_lines, $_);
-       $end_of_para = 0;
-       next;
-    }
-    #
-    # footnotes
-    #
-    while (/\@footnote([^\{\s]+)\{/) {
-       ($before, $d, $after) = ($`, $1, $');
-       $_ = $after;
-       $text = '';
-       $after = '';
-       $failed = 1;
-       while (@lines3) {
-           if (/\}/) {
-               $text .= $`;
-               $after = $';
-               $failed = 0;
-               last;
-           } else {
-               $text .= $_;
-               $_ = shift(@lines3);
-           }
-       }
-       if ($failed) {
-           die "* Bad syntax (\@footnote) after: $before\n";
-       } else {
-           $foot_num++;
-           $docid  = "DOCF$foot_num";
-           $footid = "FOOT$foot_num";
-           $foot = "($foot_num)";
-           push(@foot_lines, "<H3>" . &t2h_anchor($footid, "$d#$docid", $foot) . "</H3>\n");
-           $text = "<P>$text" unless $text =~ /^\s*<P>/;
-           push(@foot_lines, "$text\n");
-           $_ = $before . &t2h_anchor($docid, "$docu_foot#$footid", $foot) . $after;
-       }
-    }
-    #
-    # remove unnecessary <P>
-    #
-    if (/^\s*<P>\s*$/) {
-       next if $end_of_para++;
-    } else {
-       $end_of_para = 0;
-    }
-    # otherwise
-    push(@doc_lines, $_);
-}
-       
-print "# end of pass 4\n" if $T2H_VERBOSE;
-
-#+++############################################################################
-#                                                                              #
-# Pass 5: print things                                                         #
-#                                                                              #
-#---############################################################################
-
-$T2H_L2H = &l2h_FinishToLatex if ($T2H_L2H);
-$T2H_L2H = &l2h_ToHtml        if ($T2H_L2H);
-$T2H_L2H = &l2h_InitFromHtml  if ($T2H_L2H);
-
-# fix node2up, node2prev, node2next, if desired
-if ($has_top_command)
-{
-  for $section (keys %sec2number)
-  {
-    $node = $sec2node{$section};
-    $node2up{$node} = Sec2UpNode($section) unless $node2up{$node};
-    $node2prev{$node} = Sec2PrevNode($section) unless $node2prev{$node};
-    $node2next{$node} = Sec2NextNode($section) unless $node2next{$node};
-  }
-}
-
-# prepare %T2H_THISDOC
-$T2H_THISDOC{fulltitle} = $value{'_title'} || $value{'_settitle'} || "Untitled Document";
-$T2H_THISDOC{title} = $value{'_settitle'} || $T2H_THISDOC{fulltitle};
-$T2H_THISDOC{author} = $value{'_author'};
-$T2H_THISDOC{subtitle} = $value{'_subtitle'};
-$T2H_THISDOC{shorttitle} = $value{'_shorttitle'};
-for $key (keys %T2H_THISDOC)
-{
-  $_ = &substitute_style($T2H_THISDOC{$key});
-  &unprotect_texi;
-  s/\s*$//;
-  $T2H_THISDOC{$key} = $_;
-}
-
-# if no sections, then simply print document as is
-unless (@sections)
-{
-  print "# Writing content into $docu_top_file \n" if $T2H_VERBOSE;
-  open(FILE, "> $docu_top_file") 
-    || die "$ERROR: Can't open $docu_top_file for writing: $!\n";
-
-  &$T2H_print_page_head(\*FILE);
-  $T2H_THIS_SECTION = \@doc_lines;
-  t2h_print_lines(\*FILE);
-  &$T2H_print_foot_navigation(\*FILE);
-  &$T2H_print_page_foot(\*FILE);
-  close(FILE);
-  goto Finish;
-}
-
-# initialize $T2H_HREF, $T2H_NAME
-%T2H_HREF = 
-  (
-   'First' ,   sec_href($sections[0]),
-   'Last',     sec_href($sections[$#sections]),
-   'About',     $docu_about. '#SEC_About',
-  );
-
-# prepare TOC, OVERVIEW, TOP
-$T2H_TOC = \@toc_lines;
-$T2H_OVERVIEW = \@stoc_lines;
-if ($has_top)
-{
-  while (1)
-  {
-    $_ = shift @doc_lines;
-    last if /$TOPEND/;
-    push @$T2H_TOP, $_;
-  }
-  $T2H_HREF{'Top'} = $docu_top . '#SEC_Top';
-}
-else
-{
-  $T2H_HREF{'Top'} = $T2H_HREF{First};
-}
-
-$node2href{Top} = $T2H_HREF{Top};
-$T2H_HREF{Contents} = $docu_toc.'#SEC_Contents' if @toc_lines;
-$T2H_HREF{Overview} = $docu_stoc.'#SEC_OVERVIEW' if @stoc_lines;
-
-# settle on index
-if ($T2H_INDEX_CHAPTER)
-{
-  $T2H_HREF{Index} = $node2href{normalise_node($T2H_INDEX_CHAPTER)};
-  warn "$ERROR T2H_INDEX_CHAPTER '$T2H_INDEX_CHAPTER' not found\n"
-    unless $T2H_HREF{Index};
-}
-if (! $T2H_HREF{Index} && $first_index_chapter)
-{
-  $T2H_INDEX_CHAPTER = $first_index_chapter;
-  $T2H_HREF{Index} = $node2href{$T2H_INDEX_CHAPTER};
-}
-
-print "# Using '" . clean_name($T2H_INDEX_CHAPTER) . "' as index page\n"
-  if ($T2H_VERBOSE && $T2H_HREF{Index});
-
-%T2H_NAME =
-  (
-   'First',   clean_name($sec2node{$sections[0]}),
-   'Last',    clean_name($sec2node{$sections[$#sections]}),
-   'About',    $T2H_WORDS->{$T2H_LANG}->{'About_Title'},
-   'Contents', $T2H_WORDS->{$T2H_LANG}->{'ToC_Title'},
-   'Overview', $T2H_WORDS->{$T2H_LANG}->{'Overview_Title'},
-   'Index' ,   clean_name($T2H_INDEX_CHAPTER),
-   'Top',      clean_name($T2H_TOP_HEADING || $T2H_THISDOC{'title'} || $T2H_THISDOC{'shorttitle'}),
-  );
-
-#############################################################################
-# print frame and frame toc file
-#
-if ( $T2H_FRAMES )
-{
-  open(FILE, "> $docu_frame_file") 
-    || die "$ERROR: Can't open $docu_frame_file for writing: $!\n";
-  print "# Creating frame in $docu_frame_file ...\n" if $T2H_VERBOSE;
-  &$T2H_print_frame(\*FILE);
-  close(FILE);
-
-  open(FILE, "> $docu_toc_frame_file") 
-    || die "$ERROR: Can't open $docu_toc_frame_file for writing: $!\n";
-  print "# Creating toc frame in $docu_frame_file ...\n" if $T2H_VERBOSE;
-   &$T2H_print_toc_frame(\*FILE);
-  close(FILE);
-}
-
-
-#############################################################################
-# print Top
-#
-open(FILE, "> $docu_top_file") 
-  || die "$ERROR: Can't open $docu_top_file for writing: $!\n";
-&$T2H_print_page_head(\*FILE) unless ($T2H_SPLIT);
-
-if ($has_top)
-{
-  print "# Creating Top in $docu_top_file ...\n" if $T2H_VERBOSE;
-  $T2H_THIS_SECTION = $T2H_TOP;
-  $T2H_HREF{This} = $T2H_HREF{Top};
-  $T2H_NAME{This} = $T2H_NAME{Top};
-  &$T2H_print_Top(\*FILE);
-}
-  
-close(FILE) if $T2H_SPLIT;
-
-#############################################################################
-# Print sections
-#
-$T2H_NODE{Forward} = $sec2node{$sections[0]};
-$T2H_NAME{Forward} = &clean_name($sec2node{$sections[0]});
-$T2H_HREF{Forward} = sec_href($sections[0]);
-$T2H_NODE{This} = 'Top';
-$T2H_NAME{This} = $T2H_NAME{Top};
-$T2H_HREF{This} = $T2H_HREF{Top};
-if ($T2H_SPLIT)
-{
-  print "# writing " . scalar(@sections) . 
-    " sections in $docu_rdir$docu_name"."_[1..$doc_num]"
-         if $T2H_VERBOSE;
-  $previous = ($T2H_SPLIT eq 'chapter' ? $CHAPTEREND : $SECTIONEND);
-  undef $FH;
-  $doc_num = 0;
-}
-else
-{
-  print "# writing " . scalar(@sections) . " sections in $docu_top_file ..." 
-    if $T2H_VERBOSE;
-  $FH = \*FILE;
-  $previous = '';
-}
-
-$counter = 0;
-# loop through sections
-while ($section = shift(@sections)) 
-{
-  if ($T2H_SPLIT && ($T2H_SPLIT eq 'section' || $previous eq $CHAPTEREND))
-  { 
-    if ($FH)
-    {
-      #close previous page
-      &$T2H_print_chapter_footer($FH) if $T2H_SPLIT eq 'chapter';
-      &$T2H_print_page_foot($FH);
-      close($FH);
-      undef $FH;
-    }
-  }
-  $T2H_NAME{Back} = $T2H_NAME{This};
-  $T2H_HREF{Back} = $T2H_HREF{This};
-  $T2H_NODE{Back} = $T2H_NODE{This};
-  $T2H_NAME{This} = $T2H_NAME{Forward};
-  $T2H_HREF{This} = $T2H_HREF{Forward};
-  $T2H_NODE{This} = $T2H_NODE{Forward};
-  if ($sections[0])
-  {
-    $T2H_NODE{Forward} = $sec2node{$sections[0]};
-    $T2H_NAME{Forward} = &clean_name($T2H_NODE{Forward});
-    $T2H_HREF{Forward} = sec_href($sections[0]);
-  }
-  else
-  {
-    undef $T2H_HREF{Forward}, $T2H_NODE{Forward}, $T2H_NAME{Forward};
-  }
-
-  $node = $node2up{$T2H_NODE{This}};
-  $T2H_HREF{Up} = $node2href{$node};
-  if ($T2H_HREF{Up} eq $T2H_HREF{This} || ! $T2H_HREF{Up})
-  {
-    $T2H_NAME{Up} = $T2H_NAME{Top};
-    $T2H_HREF{Up} = $T2H_HREF{Top};
-    $T2H_NODE{Up} = 'Up';
-  }
-  else
-  {
-    $T2H_NAME{Up} = &clean_name($node);
-    $T2H_NODE{Up} = $node;
-  }
-
-  $node = $T2H_NODE{This};
-  $node = $node2prev{$node};
-  $T2H_NAME{Prev} = &clean_name($node);
-  $T2H_HREF{Prev} = $node2href{$node};
-  $T2H_NODE{Prev} = $node;
-
-  $node = $T2H_NODE{This};
-  if ($node2up{$node} && $node2up{$node} ne 'Top'&&
-      ($node2prev{$node} eq $T2H_NODE{Back} || ! $node2prev{$node}))
-  {
-    $node = $node2up{$node};
-    while ($node && $node ne $node2up{$node} && ! $node2prev{$node})
-    {
-      $node = $node2up{$node};
-    }
-    $node = $node2prev{$node} 
-      unless $node2up{$node} eq 'Top' || ! $node2up{$node};
-  }
-  else
-  {
-    $node = $node2prev{$node};
-  }
-  $T2H_NAME{FastBack} = &clean_name($node);
-  $T2H_HREF{FastBack} = $node2href{$node};
-  $T2H_NODE{FastBack} = $node;
-  
-  $node = $T2H_NODE{This};
-  $node = $node2next{$node};
-  $T2H_NAME{Next} = &clean_name($node);
-  $T2H_HREF{Next} = $node2href{$node};
-  $T2H_NODE{Next} = $node;
-
-  $node = $T2H_NODE{This};
-  if ($node2up{$node} && $node2up{$node} ne 'Top'&& 
-      ($node2next{$node} eq $T2H_NODE{Forward} || ! $node2next{$node}))
-  {
-    $node = $node2up{$node};
-    while ($node && $node ne $node2up{$node} && ! $node2next{$node})
-    {
-      $node = $node2up{$node};
-    }
-  }
-  $node = $node2next{$node};
-  $T2H_NAME{FastForward} = &clean_name($node);
-  $T2H_HREF{FastForward} = $node2href{$node};
-  $T2H_NODE{FastForward} = $node;
-
-  if (! defined($FH))
-  {
-    my $file = $T2H_HREF{This};
-    $file =~ s/\#.*$//;
-    open(FILE, "> $docu_rdir$file") || 
-      die "$ERROR: Can't open $docu_rdir$file for writing: $!\n";
-    $FH = \*FILE;
-    &$T2H_print_page_head($FH);
-    t2h_print_label($FH);
-    &$T2H_print_chapter_header($FH) if $T2H_SPLIT eq 'chapter';
-  }
-  else
-  {
-    t2h_print_label($FH);
-  }
-
-  $T2H_THIS_SECTION = [];
-  while (@doc_lines) {
-    $_ = shift(@doc_lines);
-    last if ($_ eq $SECTIONEND || $_ eq $CHAPTEREND);
-    push(@$T2H_THIS_SECTION, $_);
-  }
-  $previous = $_;
-  &$T2H_print_section($FH);
-
-  if ($T2H_VERBOSE)
-  {
-    $counter++;
-    print "." if $counter =~ /00$/;
-  }
-}
-if ($T2H_SPLIT)
-{
-  &$T2H_print_chapter_footer($FH) if $T2H_SPLIT eq 'chapter';
-  &$T2H_print_page_foot($FH);
-  close($FH);
-}
-print "\n" if $T2H_VERBOSE;
-
-#############################################################################
-# Print ToC, Overview, Footnotes
-#
-undef $T2H_HREF{Prev};
-undef $T2H_HREF{Next};
-undef $T2H_HREF{Back};
-undef $T2H_HREF{Forward};
-undef $T2H_HREF{Up};
-
-if (@foot_lines)
-{
-  print "# writing Footnotes in $docu_foot_file...\n" if $T2H_VERBOSE;
-  open (FILE, "> $docu_foot_file") || die "$ERROR: Can't open $docu_foot_file for writing: $!\n"
-      if $T2H_SPLIT;
-  $T2H_HREF{This} = $docu_foot;
-  $T2H_NAME{This} = $T2H_WORDS->{$T2H_LANG}->{'Footnotes_Title'};
-  $T2H_THIS_SECTION = \@foot_lines;
-  &$T2H_print_Footnotes(\*FILE);
-  close(FILE) if $T2H_SPLIT;
-}
-
-if (@toc_lines)
-{
-  print "# writing Toc in $docu_toc_file...\n" if $T2H_VERBOSE;
-  open (FILE, "> $docu_toc_file") || die "$ERROR: Can't open $docu_toc_file for writing: $!\n"
-      if $T2H_SPLIT;
-  $T2H_HREF{This} = $T2H_HREF{Contents};
-  $T2H_NAME{This} = $T2H_NAME{Contents};
-  $T2H_THIS_SECTION = \@toc_lines;
-  &$T2H_print_Toc(\*FILE);
-  close(FILE) if $T2H_SPLIT;
-}
-
-if (@stoc_lines)
-{
-  print "# writing Overview in $docu_stoc_file...\n" if $T2H_VERBOSE;
-  open (FILE, "> $docu_stoc_file") || die "$ERROR: Can't open $docu_stoc_file for writing: $!\n"
-      if $T2H_SPLIT;
-  
-  $T2H_HREF{This} = $T2H_HREF{Overview};
-  $T2H_NAME{This} = $T2H_NAME{Overview};
-  $T2H_THIS_SECTION = \@stoc_lines;
-  unshift @$T2H_THIS_SECTION, "<BLOCKQUOTE>\n";
-  push @$T2H_THIS_SECTION, "\n</BLOCKQUOTE>\n";
-  &$T2H_print_Overview(\*FILE);
-  close(FILE) if $T2H_SPLIT;
-}
-
-if ($about_body = &$T2H_about_body())
-{
-  print "# writing About in $docu_about_file...\n" if $T2H_VERBOSE;
-  open (FILE, "> $docu_about_file") || die "$ERROR: Can't open $docu_about_file for writing: $!\n"
-      if $T2H_SPLIT;
-  
-  $T2H_HREF{This} = $T2H_HREF{About};
-  $T2H_NAME{This} = $T2H_NAME{About};
-  $T2H_THIS_SECTION = [$about_body];
-  &$T2H_print_About(\*FILE);
-  close(FILE) if $T2H_SPLIT;
-}
-
-unless ($T2H_SPLIT)
-{
-  &$T2H_print_page_foot(\*FILE);
-  close (FILE);
-}
-  
-Finish:
-&l2h_FinishFromHtml if ($T2H_L2H);
-&l2h_Finish if($T2H_L2H);
-print "# that's all folks\n" if $T2H_VERBOSE;
-
-exit(0);
-
-#+++############################################################################
-#                                                                              #
-# Low level functions                                                          #
-#                                                                              #
-#---############################################################################
-
-sub LocateIncludeFile
-{
-  my $file = shift;
-  my $dir;
-
-  return $file if (-e $file && -r $file);
-  foreach $dir (@T2H_INCLUDE_DIRS)
-  {
-    return "$dir/$file" if (-e "$dir/$file" && -r "$dir/$file");
-  }
-  return undef;
-}
-
-sub clean_name 
-{
-  local ($_);
-  $_ = &remove_style($_[0]);
-  &unprotect_texi;
-  return $_;
-}
-
-sub update_sec_num {
-    local($name, $level) = @_;
-    my $ret;
-
-    $level--; # here we start at 0
-    if ($name =~ /^appendix/ || defined(@appendix_sec_num)) {
-       # appendix style
-       if (defined(@appendix_sec_num)) {
-           &incr_sec_num($level, @appendix_sec_num);
-       } else {
-           @appendix_sec_num = ('A', 0, 0, 0);
-       }
-       $ret = join('.', @appendix_sec_num[0..$level]);
-    } else {
-       # normal style
-       if (defined(@normal_sec_num)) 
-       {
-         &incr_sec_num($level, @normal_sec_num);
-       } 
-       else 
-       {
-         @normal_sec_num = (1, 0, 0, 0);
-       }
-       $ret = join('.', @normal_sec_num[0..$level]);
-    }
-    
-    $ret .= "." if $level == 0;
-    return $ret;
-}
-
-sub incr_sec_num {
-    local($level, $l);
-    $level = shift(@_);
-    $_[$level]++;
-    foreach $l ($level+1 .. 3) {
-       $_[$l] = 0;
-    }
-}
-
-sub Sec2UpNode
-{
-  my $sec = shift;
-  my $num = $sec2number{$sec};
-
-  return '' unless $num;
-  return 'Top' unless $num =~ /\.\d+/;
-  $num =~ s/\.[^\.]*$//;
-  $num = $num . '.' unless $num =~ /\./;
-  return $sec2node{$number2sec{$num}};
-}
-
-sub Sec2PrevNode
-{
-  my $sec = shift;
-  my $num = $sec2number{$sec};
-  my ($i, $post);
-  
-  if ($num =~ /(\w+)(\.$|$)/)
-  {
-    $num = $`;
-    $i = $1;
-    $post = $2;
-    if ($i eq 'A')
-    {
-      $i = $normal_sec_num[0];
-    }
-    elsif ($i ne '1')
-    {
-      # unfortunately, -- operator is not magical
-      $i = chr(ord($i) + 1);
-    }
-    else
-    {
-      return '';
-    }
-    return $sec2node{$number2sec{$num . $i . $post}}
-  }
-  return '';
-}
-
-sub Sec2NextNode
-{
-  my $sec = shift;
-  my $num = $sec2number{$sec};
-  my $i;
-
-  if ($num =~ /(\w+)(\.$|$)/)
-  {
-    $num = $`;
-    $i = $1;
-    $post = $2;
-    if ($post eq '.' && $i eq $normal_sec_num[0])
-    {
-      $i = 'A';
-    }
-    else
-    {
-      $i++;
-    }
-    return $sec2node{$number2sec{$num . $i . $post}}
-  }
-  return '';
-}
-
-sub check {
-    local($_, %seen, %context, $before, $match, $after);
-
-    while (<>) {
-       if (/\@(\*|\.|\:|\@|\{|\})/) {
-           $seen{$&}++;
-           $context{$&} .= "> $_" if $T2H_VERBOSE;
-           $_ = "$`XX$'";
-           redo;
-       }
-       if (/\@(\w+)/) {
-           ($before, $match, $after) = ($`, $&, $');
-           if ($before =~ /\b[\w-]+$/ && $after =~ /^[\w-.]*\b/) { # e-mail address
-               $seen{'e-mail address'}++;
-               $context{'e-mail address'} .= "> $_" if $T2H_VERBOSE;
-           } else {
-               $seen{$match}++;
-               $context{$match} .= "> $_" if $T2H_VERBOSE;
-           }
-           $match =~ s/^\@/X/;
-           $_ = "$before$match$after";
-           redo;
-       }
-    }
-    
-    foreach (sort(keys(%seen))) {
-       if ($T2H_VERBOSE) {
-           print "$_\n";
-           print $context{$_};
-       } else {
-           print "$_ ($seen{$_})\n";
-       }
-    }
-}
-
-sub open {
-    local($name) = @_;
-
-    ++$fh_name;
-    if (open($fh_name, $name)) {
-       unshift(@fhs, $fh_name);
-    } else {
-       warn "$ERROR Can't read file $name: $!\n";
-    }
-}
-
-sub init_input {
-    @fhs = ();                 # hold the file handles to read
-    @input_spool = ();         # spooled lines to read
-    $fh_name = 'FH000';
-    &open($docu);
-}
-
-sub next_line {
-    local($fh, $line);
-
-    if (@input_spool) {
-       $line = shift(@input_spool);
-       return($line);
-    }
-    while (@fhs) {
-       $fh = $fhs[0];
-       $line = <$fh>;
-       return($line) if $line;
-       close($fh);
-       shift(@fhs);
-    }
-    return(undef);
-}
-
-# used in pass 1, use &next_line
-sub skip_until {
-    local($tag) = @_;
-    local($_);
-
-    while ($_ = &next_line) {
-       return if /^\@end\s+$tag\s*$/;
-    }
-    die "* Failed to find '$tag' after: " . $lines[$#lines];
-}
-
-# used in pass 1 for l2h use &next_line
-sub string_until {
-    local($tag) = @_;
-    local($_, $string);
-
-    while ($_ = &next_line) {
-       return $string if /^\@end\s+$tag\s*$/;
-#      $_ =~ s/hbox/mbox/g;
-       $string = $string.$_;
-    }
-    die "* Failed to find '$tag' after: " . $lines[$#lines];
-}
-
-#
-# HTML stacking to have a better HTML output
-#
-
-sub html_reset {
-    @html_stack = ('html');
-    $html_element = 'body';
-}
-
-sub html_push {
-    local($what) = @_;
-    push(@html_stack, $html_element);
-    $html_element = $what;
-}
-
-sub html_push_if {
-    local($what) = @_;
-    push(@html_stack, $html_element)
-       if ($html_element && $html_element ne 'P');
-    $html_element = $what;
-}
-
-sub html_pop {
-    $html_element = pop(@html_stack);
-}
-
-sub html_pop_if {
-    local($elt);
-
-    if (@_) {
-       foreach $elt (@_) {
-           if ($elt eq $html_element) {
-               $html_element = pop(@html_stack) if @html_stack;
-               last;
-           }
-       }
-    } else {
-       $html_element = pop(@html_stack) if @html_stack;
-    }
-}
-
-sub html_debug {
-    local($what, $line) = @_;
-    if ($T2H_DEBUG & $DEBUG_HTML)
-    {
-     $what = "\n" unless $what;
-     return("<!-- $line @html_stack, $html_element -->$what")
-    }  
-    return($what);
-}
-
-# to debug the output...
-sub debug {
-    local($what, $line) = @_;
-    return("<!-- $line -->$what")
-       if $T2H_DEBUG & $DEBUG_HTML;
-    return($what);
-}
-
-sub SimpleTexi2Html
-{
-  local $_ = $_[0];
-  &protect_texi;
-  &protect_html;
-  $_ = substitute_style($_);
-  $_[0]  = $_;
-}
-
-sub normalise_node {
-  local $_ = $_[0];
-  s/\s+/ /g;
-  s/ $//;
-  s/^ //;
-  &protect_texi;
-  &protect_html;
-  $_ = substitute_style($_);
-  $_[0]  = $_;
-}
-
-sub menu_entry 
-{
-  my ($node, $name, $descr) = @_;
-  my ($href, $entry);
-  
-  &normalise_node($node);
-  $href = $node2href{$node};
-  if ($href) 
-  {
-    $descr =~ s/^\s+//;
-    $descr =~ s/\s*$//;
-    $descr = SimpleTexi2Html($descr);
-    if ($T2H_NUMBER_SECTIONS && !$T2H_NODE_NAME_IN_MENU && $node2sec{$node})
-    {
-      $entry = $node2sec{$node};
-      $name = '';
-    }
-    else
-    {
-      &normalise_node($name);
-      $entry = ($name && ($name ne $node || ! $T2H_AVOID_MENU_REDUNDANCY) 
-               ? "$name : $node" : $node);
-    }
-
-    if ($T2H_AVOID_MENU_REDUNDANCY && $descr)
-    {
-      my $clean_entry = $entry;
-      $clean_entry =~ s/^.*? // if ($clean_entry =~ /^([A-Z]|\d+)\.[\d\.]* /);
-      $clean_entry =~ s/[^\w]//g;
-      my $clean_descr = $descr;
-      $clean_descr =~ s/[^\w]//g;
-      $descr = '' if ($clean_entry eq $clean_descr)
-    }
-    push(@lines2,&debug('<TR><TD ALIGN="left" VALIGN="TOP">' . 
-                       &t2h_anchor('', $href, $entry) . 
-                       '</TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">' . 
-                       $descr . 
-                       "</TD></TR>\n", __LINE__));
-  }
-  elsif ($node =~ /^\(.*\)\w+/)
-  {
-    push(@lines2,&debug('<TR><TD ALIGN="left" VALIGN="TOP">' . 
-                       $entry . 
-                       '</TD><TD ALIGN="left" VALIGN="TOP">' . $descr . 
-                       "</TD></TR>\n", __LINE__))
-  }
-  else
-  {
-    warn "$ERROR Undefined node of menu_entry ($node): $_";
-  }
-}
-
-sub do_ctrl { "^$_[0]" }
-
-sub do_email {
-    local($addr, $text) = split(/,\s*/, $_[0]);
-
-    $text = $addr unless $text;
-    &t2h_anchor('', "mailto:$addr", $text);
-}
-
-sub do_sc 
-{ 
-  # l2h does this much better
-  return &l2h_ToLatex("{\\sc ".&unprotect_html($_[0])."}") if ($T2H_L2H);
-  return "\U$_[0]\E";
-}
-
-sub do_math
-{
-  return &l2h_ToLatex("\$".&unprotect_html($_[0])."\$") if ($T2H_L2H);
-  return "<EM>".$text."</EM>";
-}
-
-sub do_uref {
-    local($url, $text, $only_text) = split(/,\s*/, $_[0]);
-
-    $text = $only_text if $only_text;
-    $text = $url unless $text;
-    &t2h_anchor('', $url, $text);
-}
-
-sub do_url { &t2h_anchor('', $_[0], $_[0]) }
-
-sub do_acronym
-{
-  return '<FONT SIZE="-1">' . $_[0] . '</FONT>';
-}
-
-sub do_accent
-{
-  return "&$_[0]acute;" if $_[1] eq 'H';
-  return "$_[0]." if $_[1] eq 'dotaccent';
-  return "$_[0]*" if $_[1] eq 'ringaccent';
-  return "$_[0]".'[' if $_[1] eq 'tieaccent';
-  return "$_[0]".'(' if $_[1] eq 'u';
-  return "$_[0]_" if $_[1] eq 'ubaraccent';
-  return ".$_[0]" if $_[1] eq 'udotaccent';
-  return "$_[0]&lt;" if $_[1] eq 'v';
-  return "&$_[0]cedil;" if $_[1] eq ',';
-  return "$_[0]" if $_[1] eq 'dotless';
-  return undef;
-}
-
-sub apply_style {
-    local($texi_style, $text) = @_;
-    local($style);
-
-    $style = $style_map{$texi_style};
-    if (defined($style)) { # known style
-       if ($style =~ /^\"/) { # add quotes
-           $style = $';
-           $text = "\`$text\'";
-       }
-       if ($style =~ /^\&/) { # custom
-           $style = $';
-           $text = &$style($text, $texi_style);
-       } elsif ($style) { # good style
-           $text = "<$style>$text</$style>";
-       } else { # no style
-       }
-    } else { # unknown style
-       $text = undef;
-    }
-    return($text);
-}
-
-# remove Texinfo styles
-sub remove_style {
-    local($_) = @_;
-    1 while(s/\@\w+{([^\{\}]+)}/$1/g);
-    return($_);
-}
-
-sub remove_things
-{
-  local ($_) = @_;
-  s|\@(\w+)\{\}|$1|g;
-  return $_;
-}
-
-sub substitute_style {
-    local($_) = @_;
-    local($changed, $done, $style, $text);
-
-    &simple_substitutions;
-    $changed = 1;
-    while ($changed) {
-       $changed = 0;
-       $done = '';
-       while (/\@(\w+){([^\{\}]+)}/ || /\@(,){([^\{\}]+)}/) {
-           $text = &apply_style($1, $2);
-           if ($text) {
-               $_ = "$`$text$'";
-               $changed = 1;
-           } else {
-               $done .= "$`\@$1";
-               $_ = "{$2}$'";
-           }
-       }
-        $_ = $done . $_;
-    }
-    return($_);
-}
-
-sub t2h_anchor {
-    local($name, $href, $text, $newline, $extra_attribs) = @_;
-    local($result);
-
-    $result = "<A";
-    $result .= " NAME=\"$name\"" if $name;
-    if ($href)
-    {
-      $href =~ s|^$T2H_HREF_DIR_INSTEAD_FILE|./| 
-       if ($T2H_HREF_DIR_INSTEAD_FILE);
-      $result .= ($href =~ /\"/ ? " HREF='$href'"  : " HREF=\"$href\"");
-    }
-    $result .= " $extra_attribs" if $extra_attribs;
-    $result .= ">$text</A>";
-    $result .= "\n" if $newline;
-    return($result);
-}
-
-sub pretty_date {
-    local(@MoY, $sec, $min, $hour, $mday, $mon, $year, $wday, $yday, $isdst);
-
-    @MoY = ('January', 'February', 'March', 'April', 'May', 'June',
-           'July', 'August', 'September', 'October', 'November', 'December');
-    ($sec, $min, $hour, $mday, $mon, $year, $wday, $yday, $isdst) = localtime(time);
-    $year += ($year < 70) ? 2000 : 1900;
-    # obachman: Let's do it as the Americans do
-    return("$MoY[$mon], $mday  $year");
-}
-
-sub doc_href {
-    local($num) = @_;
-
-    return("${docu_name}_$num.$docu_ext");
-}
-
-sub sec_href
-{
-  return $node2href{$sec2node{$_[0]}};
-}
-
-sub next_doc {
-    $docu_doc = &doc_href(++$doc_num);
-}
-
-sub t2h_print_lines {
-    my ($fh, $lines) = @_;
-    local($_);
-    $lines = $T2H_THIS_SECTION unless $lines;
-    my $cnt = 0;
-    for (@$lines) 
-    {
-       $_ = l2h_FromHtml($_) if ($T2H_L2H);
-       if (/^$PROTECTTAG/o) {
-           $_ = $tag2pro{$_};
-       } else {
-           &unprotect_texi;
-       }
-       print $fh $_;
-       $cnt += split(/\W*\s+\W*/);
-    }
-    return $cnt;
-}
-
-sub protect_texi {
-    # protect @ { } ` '
-    s/\@\@/$;0/go;
-    s/\@\{/$;1/go;
-    s/\@\}/$;2/go;
-    s/\@\`/$;3/go;
-    s/\@\'/$;4/go;
-}
-
-sub protect_html {
-    local($what) = @_;
-    # protect & < >
-    $what =~ s/\&/\&\#38;/g;
-    $what =~ s/\</\&\#60;/g;
-    $what =~ s/\>/\&\#62;/g;
-    # restore anything in quotes
-    # this fixes my problem where I had:
-    # < IMG SRC="leftarrow.gif" ALT="<--" >  but what if I wanted &#60; in my ALT text ??
-    # maybe byte stuffing or some other technique should be used.
-    $what =~ s/\"([^\&]+)\&\#60;(.*)\"/"$1<$2"/g;
-    $what =~ s/\"([^\&]+)\&\#62;(.*)\"/"$1>$2"/g;
-    $what =~ s/\"([^\&]+)\&\#38;(.*)\"/"$1&$2"/g;
-    # but recognize some HTML things
-    $what =~ s/\&\#60;\/A\&\#62;/<\/A>/g;            # </A>
-    $what =~ s/\&\#60;A ([^\&]+)\&\#62;/<A $1>/g;     # <A [^&]+>
-    $what =~ s/\&\#60;IMG ([^\&]+)\&\#62;/<IMG $1>/g; # <IMG [^&]+>
-    return($what);
-}
-
-sub unprotect_texi {
-    s/$;0/\@/go;
-    s/$;1/\{/go;
-    s/$;2/\}/go;
-    s/$;3/\`/go;
-    s/$;4/\'/go;
-}
-
-sub Unprotect_texi 
-{
-  local $_ = shift;
-  &unprotect_texi;
-  return($_);
-}
-
-sub unprotect_html {
-    local($what) = @_;
-    $what =~ s/\&\#38;/\&/g;
-    $what =~ s/\&\#60;/\</g;
-    $what =~ s/\&\#62;/\>/g;
-    return($what);
-}
-
-sub t2h_print_label
-{
-    my $fh = shift;
-    my $href = shift || $T2H_HREF{This};
-    $href =~ s/.*#(.*)$/$1/;
-    print $fh qq{<A NAME="$href"></A>\n};
-}
-
-##############################################################################
-
-       # These next few lines are legal in both Perl and nroff.
-
-.00 ;                  # finish .ig
-'di                    \" finish diversion--previous line must be blank
-.nr nl 0-1             \" fake up transition to first page again
-.nr % 0                        \" start at page 1
-'; __END__ ############# From here on it's a standard manual page ############
-.so /usr/local/man/man1/texi2html.1
diff --git a/support/texi2html.debug b/support/texi2html.debug
deleted file mode 100755 (executable)
index dbe15cd..0000000
+++ /dev/null
@@ -1,5439 +0,0 @@
-#! /usr/bin/perl
-'di ';
-'ig 00 ';
-#+##############################################################################
-#
-# texi2html: Program to transform Texinfo documents to HTML
-#
-#    Copyright (C) 1999, 2000  Free Software Foundation, Inc.
-#
-#    This program is free software; you can redistribute it and/or modify
-#    it under the terms of the GNU General Public License as published by
-#    the Free Software Foundation; either version 2 of the License, or
-#    (at your option) any later version.
-#
-#    This program 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 General Public License for more details.
-#
-#    You should have received a copy of the GNU General Public License
-#    along with this program; if not, write to the Free Software
-#    Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-# 
-#-##############################################################################
-
-# This requires perl version 5 or higher
-require 5.0;
-
-#++##############################################################################
-#
-# NOTE FOR DEBUGGING THIS SCRIPT:
-# You can run 'perl texi2html.pl' directly, provided you have
-# the environment variable T2H_HOME set to the directory containing
-# the texi2html.init file
-#
-#--##############################################################################
-
-# CVS version:
-# $Id: texi2html.pl,v 1.55 2000/07/27 14:39:41 obachman Exp $
-
-# Homepage:
-$T2H_HOMEPAGE = <<EOT;
-http://www.mathematik.uni-kl.de/~obachman/Texi2html
-EOT
-
-# Authors:  
-$T2H_AUTHORS = <<EOT;
-Written by: Lionel Cons <Lionel.Cons\@cern.ch> (original author)
-            Karl Berry  <karl\@freefriends.org>
-            Olaf Bachmann <obachman\@mathematik.uni-kl.de>
-            and many others.
-Maintained by: Olaf Bachmann <obachman\@mathematik.uni-kl.de>
-Send bugs and suggestions to <texi2html\@mathematik.uni-kl.de>
-EOT
-
-# Version: set in configure.in
-$THISVERSION = '1.64';
-$THISPROG = "texi2html $THISVERSION";  # program name and version
-  
-# The man page for this program is included at the end of this file and can be
-# viewed using the command 'nroff -man texi2html'.
-
-# Identity:
-
-$T2H_TODAY = &pretty_date;             # like "20 September 1993"
-# the eval prevents this from breaking on system which do not have
-# a proper getpwuid implemented
-eval { ($T2H_USER = (getpwuid ($<))[6]) =~ s/,.*//;}; # Who am i
-
-#+++############################################################################
-#                                                                              #
-# Initialization                                                               #
-# Pasted content of File $(srcdir)/texi2html.init: Default initializations     # 
-#                                                                              #
-#---############################################################################
-
-# leave this within comments, and keep the require statement
-# This way, you can directly run texi2html.pl, if $ENV{T2H_HOME}/texi2html.init
-# exists.
-
-# 
-# -*-perl-*-
-######################################################################
-# File: texi2html.init
-#
-# Sets default values for command-line arguments and for various customizable
-# procedures
-#
-# A copy of this file is pasted into the beginning of texi2html by
-# 'make texi2html'
-#
-# Copy this file and make changes to it, if you like.
-# Afterwards, either, load it with command-line option -init_file <your_init_file>
-#
-# $Id: texi2html.init,v 1.34 2000/07/27 14:09:02 obachman Exp $
-
-######################################################################
-# stuff which can also be set by command-line options
-#
-#
-# Note: values set here, overwrite values set by the command-line
-# options before -init_file and might still be overwritten by
-# command-line arguments following the -init_file option
-#
-
-# T2H_OPTIONS is a hash whose keys are the (long) names of valid
-# command-line options and whose values are a hash with the following keys:
-# type    ==> one of !|=i|:i|=s|:s (see GetOpt::Long for more info)
-# linkage ==> ref to scalar, array, or subroutine (see GetOpt::Long for more info)
-# verbose ==> short description of option (displayed by -h)
-# noHelp  ==> if 1 -> for "not so important options": only print description on -h 1
-#                2 -> for obsolete options: only print description on -h 2
-
-$T2H_DEBUG = 0;
-$T2H_OPTIONS -> {debug} =
-{
- type => '=i',
- linkage => \$main::T2H_DEBUG,
- verbose => 'output HTML with debuging information',
-};
-
-$T2H_DOCTYPE = '<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">'; 
-$T2H_OPTIONS -> {doctype} = 
-{
- type => '=s',
- linkage => \$main::T2H_DOCTYPE,
- verbose => 'document type which is output in header of HTML files',
- noHelp => 1
-};
-
-$T2H_CHECK = 0;
-$T2H_OPTIONS -> {check} =
-{
- type => '!',
- linkage => \$main::T2H_CHECK,
- verbose => 'if set, only check files and output all things that may be Texinfo commands',
- noHelp => 1
-};
-
-# -expand
-# if set to "tex" (or, "info") expand @iftex and @tex (or, @ifinfo) sections
-# else, neither expand @iftex, @tex, nor @ifinfo sections
-$T2H_EXPAND = "info";
-$T2H_OPTIONS -> {expand} = 
-{
- type => '=s',
- linkage => \$T2H_EXPAND,
- verbose => 'Expand info|tex|none section of texinfo source',
-};
-
-# - glossary
-#if set, uses section named `Footnotes' for glossary
-$T2H_USE_GLOSSARY = 0;
-T2H_OPTIONS -> {glossary} =
-{
- type => '!',
- linkage => \$T2H_USE_GLOSSARY,
- verbose => "if set, uses section named `Footnotes' for glossary",
- noHelp  => 1,
-};
-
-
-# -invisible
-# $T2H_INVISIBLE_MARK is the text used to create invisible destination
-# anchors for index links (you can for instance use the invisible.xbm
-# file shipped with this program). This is a workaround for a known
-# bug of many WWW browsers, including netscape.
-# For me, it works fine without it -- on the contrary: if there, it
-# inserts space between headers and start of text (obachman 3/99)
-$T2H_INVISIBLE_MARK = '';
-# $T2H_INVISIBLE_MARK = '&#160;';
-$T2H_OPTIONS -> {invisible} =
-{
- type => '=s',
- linkage => \$T2H_INVISIBLE_MARK,
- verbose => 'use text in invisble anchot',
- noHelp  => 1,
-};
-
-# -iso
-# if set, ISO8879 characters are used for special symbols (like copyright, etc)
-$T2H_USE_ISO = 0;
-$T2H_OPTIONS -> {iso} =
-{
- type => 'iso',
- linkage => \$T2H_USE_ISO,
- verbose => 'if set, ISO8879 characters are used for special symbols (like copyright, etc)',
- noHelp => 1,
-};
-
-# -I
-# list directories where @include files are searched for (besides the
-# directory of the doc file) additional '-I' args add to this list
-@T2H_INCLUDE_DIRS = (".");
-$T2H_OPTIONS -> {I} =
-{
- type => '=s',
- linkage => \@T2H_INCLUDE_DIRS,
- verbose => 'append $s to the @include search path',
-};
-
-# -top_file
-# uses file of this name for top-level file
-# extension is manipulated appropriately, if necessary.
-# If empty, <basename of document>.html is used
-# Typically, you would set this to "index.html".
-$T2H_TOP_FILE = '';
-$T2H_OPTIONS -> {top_file} =
-{
- type => '=s',
- linkage => \$T2H_TOP_FILE,
- verbose => 'use $s as top file, instead of <docname>.html',
-};
-
-
-# -toc_file
-# uses file of this name for table of contents file
-# extension is manipulated appropriately, if necessary.
-# If empty, <basename of document>_toc.html is used
-$T2H_TOC_FILE = '';
-$T2H_OPTIONS -> {toc_file} =
-{
- type => '=s',
- linkage => \$T2H_TOC_FILE,
- verbose => 'use $s as ToC file, instead of <docname>_toc.html',
-};
-
-# -frames
-# if set, output two additional files which use HTML 4.0 "frames".
-$T2H_FRAMES = 0;
-$T2H_OPTIONS -> {frames} =
-{
- type => '!',
- linkage => \$T2H_FRAMES,
- verbose => 'output files which use HTML 4.0 frames (experimental)',
- noHelp => 1,
-};
-
-
-# -menu | -nomenu
-# if set, show the Texinfo menus
-$T2H_SHOW_MENU = 1;
-$T2H_OPTIONS -> {menu} =
-{
- type => '!',
- linkage => \$T2H_SHOW_MENU,
- verbose => 'ouput Texinfo menus',
-};
-
-# -number | -nonumber
-# if set, number sections and show section names and numbers in references 
-# and menus
-$T2H_NUMBER_SECTIONS = 1;
-$T2H_OPTIONS -> {number} =
-{
- type => '!',
- linkage => \$T2H_NUMBER_SECTIONS,
- verbose => 'use numbered sections'
-};
-
-# if set, and T2H_NUMBER_SECTIONS is set, then use node names in menu
-# entries, instead of section names
-$T2H_NODE_NAME_IN_MENU = 0;
-
-# if set and menu entry equals menu descr, then do not print menu descr.
-# Likewise, if node name equals entry name, do not print entry name.
-$T2H_AVOID_MENU_REDUNDANCY = 1;
-
-# -split section|chapter|none 
-# if set to 'section' (resp. 'chapter') create one html file per (sub)section
-# (resp. chapter) and separate pages for Top, ToC, Overview, Index,
-# Glossary, About.
-# otherwise, create monolithic html file which contains whole document
-#$T2H_SPLIT = 'section';
-$T2H_SPLIT = '';
-$T2H_OPTIONS -> {split} =
-{
- type => '=s',
- linkage => \$T2H_SPLIT,
- verbose => 'split document on section|chapter else no splitting',
-};
-
-# -section_navigation|-no-section_navigation
-# if set, then navigation panels are printed at the beginning of each section
-# and, possibly at the end (depending on whether or not there were more than 
-# $T2H_WORDS_IN_PAGE  words on page
-# This is most useful if you do not want to have section navigation 
-# on -split chapter
-$T2H_SECTION_NAVIGATION = 1;
-$T2H_OPTIONS -> {sec_nav} =
-{
- type => '!',
- linkage => \$T2H_SECTION_NAVIGATION,
- verbose => 'output navigation panels for each section',
-};
-
-# -subdir
-# if set put result files in this directory
-# if not set result files are put into current directory
-#$T2H_SUBDIR = 'html';
-$T2H_SUBDIR = '';
-$T2H_OPTIONS -> {subdir} =
-{
- type => '=s',
- linkage => \$T2H_SUBDIR,
- verbose => 'put HTML files in directory $s, instead of $cwd',
-};
-
-# -short_extn
-# If this is set all HTML file will have extension ".htm" instead of
-# ".html". This is helpful when shipping the document to PC systems.
-$T2H_SHORTEXTN = 0;
-$T2H_OPTIONS -> {short_ext} =
-{
- type => '!',
- linkage => \$T2H_SHORTEXTN,
- verbose => 'use "htm" extension for output HTML files',
-};
-
-
-# -prefix
-# Set the output file prefix, prepended to all .html, .gif and .pl files.
-# By default, this is the basename of the document
-$T2H_PREFIX = '';
-$T2H_OPTIONS -> {prefix} =
-{
- type => '=s',
- linkage => \$T2H_PREFIX,
- verbose => 'use as prefix for output files, instead of <docname>',
-};
-
-# -o filename
-# If set, generate monolithic document output html into $filename
-$T2H_OUT = '';
-$T2H_OPTIONS -> {out_file} =
-{
- type => '=s',
- linkage => sub {$main::T2H_OUT = @_[1]; $T2H_SPLIT = '';},
- verbose => 'if set, all HTML output goes into file $s',
-};
-
-# -short_ref
-#if set cross-references are given without section numbers
-$T2H_SHORT_REF = '';
-$T2H_OPTIONS -> {short_ref} =
-{
- type => '!',
- linkage => \$T2H_SHORT_REF,
- verbose => 'if set, references are without section numbers',
-};
-
-# -idx_sum
-# if value is set, then for each @prinindex $what
-# $docu_name_$what.idx is created which contains lines of the form
-# $key\t$ref sorted alphabetically (case matters)
-$T2H_IDX_SUMMARY = 0;
-$T2H_OPTIONS -> {idx_sum} =
-{
- type => '!',
- linkage => \$T2H_IDX_SUMMARY,
- verbose => 'if set, also output index summary',
- noHelp  => 1,
-};
-
-# -verbose
-# if set, chatter about what we are doing
-$T2H_VERBOSE = '';
-$T2H_OPTIONS -> {Verbose} =
-{
- type => '!',
- linkage => \$T2H_VERBOSE,
- verbose => 'print progress info to stdout',
-};
-
-# -lang
-# For page titles use $T2H_WORDS->{$T2H_LANG}->{...} as title.
-# To add a new language, supply list of titles (see $T2H_WORDS below).
-# and use ISO 639 language codes (see e.g. perl module Locale-Codes-1.02 
-# for  definitions)
-# Default's to 'en' if not set or no @documentlanguage is specified
-$T2H_LANG = '';
-$T2H_OPTIONS -> {lang} =
-{
- type => '=s',
- linkage => sub {SetDocumentLanguage($_[1])},
- verbose => 'use $s as document language (ISO 639 encoding)',
-};
-
-# -l2h
-# if set, uses latex2html for generation of math content 
-$T2H_L2H = '';
-$T2H_OPTIONS -> {l2h} =
-{
- type => '!',
- linkage => \$T2H_L2H,
- verbose => 'if set, uses latex2html for @math and @tex',
-};
-
-######################
-# The following options are only relevant if $T2H_L2H is set
-#
-# -l2h_l2h
-# name/location of latex2html progam
-$T2H_L2H_L2H = "latex2html";
-$T2H_OPTIONS -> {l2h_l2h} =
-{
- type => '=s',
- linkage => \$T2H_L2H_L2H,
- verbose => 'program to use for latex2html translation',
- noHelp => 1,
-};
-
-# -l2h_skip
-# if set, skips actual call to latex2html tries to reuse previously generated 
-# content, instead
-$T2H_L2H_SKIP = '';
-$T2H_OPTIONS -> {l2h_skip} =
-{
- type => '!',
- linkage => \$T2H_L2H_SKIP,
- verbose => 'if set, tries to reuse previously latex2html output',
- noHelp => 1,
-};
-
-# -l2h_tmp
-# if set, l2h uses this directory for temporarary files. The path
-# leading to this directory may not contain a dot (i.e., a "."),
-# otherwise, l2h will fail
-$T2H_L2H_TMP = '';
-$T2H_OPTIONS -> {l2h_tmp} =
-{
- type => '=s',
- linkage => \$T2H_L2H_TMP,
- verbose => 'if set, uses $s as temporary latex2html directory',
- noHelp => 1,
-};
-
-# if set, cleans intermediate files (they all have the prefix $doc_l2h_) 
-# of l2h 
-$T2H_L2H_CLEAN = 1;
-$T2H_OPTIONS -> {l2h_clean} =
-{
- type => '!',
- linkage => \$T2H_L2H_CLEAN,
- verbose => 'if set, do not keep intermediate latex2html files for later reuse',
- noHelp => 1,
-};
-
-$T2H_OPTIONS -> {D} =
-{
- type => '=s',
- linkage => sub {$main::value{@_[1]} = 1;},
- verbose => 'equivalent to Texinfo "@set $s 1"',
- noHelp => 1,
-};
-
-$T2H_OPTIONS -> {init_file} =
-{
- type => '=s',
- linkage => \&LoadInitFile,
- verbose => 'load init file $s'
-};
-
-
-##############################################################################
-#
-# The following can only be set in the init file
-#
-##############################################################################
-
-# if set, center @image by default
-# otherwise, do not center by default
-$T2H_CENTER_IMAGE = 1;
-
-# used as identation for block enclosing command @example, etc
-# If not empty, must be enclosed in <td></td>
-$T2H_EXAMPLE_INDENT_CELL = '<td>&nbsp;</td>';
-# same as above, only for @small
-$T2H_SMALL_EXAMPLE_INDENT_CELL = '<td>&nbsp;</td>';
-# font size for @small
-$T2H_SMALL_FONT_SIZE = '-1';
-
-# if non-empty, and no @..heading appeared in Top node, then
-# use this as header for top node/section, otherwise use value of 
-# @settitle or @shorttitle (in that order)
-$T2H_TOP_HEADING = '';
-
-# if set, use this chapter for 'Index' button, else
-# use first chapter whose name matches 'index' (case insensitive)
-$T2H_INDEX_CHAPTER = '';
-
-# if set and $T2H_SPLIT is set, then split index pages at the next letter
-# after they have more than that many entries
-$T2H_SPLIT_INDEX = 100;
-
-# if set (e.g., to index.html) replace hrefs to this file 
-# (i.e., to index.html) by ./
-$T2H_HREF_DIR_INSTEAD_FILE = '';
-
-########################################################################
-# Language dependencies: 
-# To add a new language extend T2H_WORDS hash and create $T2H_<...>_WORDS hash
-# To redefine one word, simply do:
-# $T2H_WORDS->{<language>}->{<word>} = 'whatever' in your personal init file.
-#
-$T2H_WORDS_EN =
-{
- # titles  of pages
- 'ToC_Title' => 'Table of Contents',
- 'Overview_Title' => 'Short Table of Contents',
- 'Index_Title' => 'Index',
- 'About_Title' => 'About this document',
- 'Footnotes_Title' => 'Footnotes',
- 'See' => 'See',
- 'see' => 'see',
- 'section' => 'section',
-# If necessary, we could extend this as follows: 
-#  # text for buttons
-#  'Top_Button' => 'Top',
-#  'ToC_Button' => 'Contents',
-#  'Overview_Button' => 'Overview',
-#  'Index_button' => 'Index',
-#  'Back_Button' => 'Back',
-#  'FastBack_Button' => 'FastBack',
-#  'Prev_Button' => 'Prev',
-#  'Up_Button' => 'Up',
-#  'Next_Button' => 'Next',
-#  'Forward_Button' =>'Forward',
-#  'FastWorward_Button' => 'FastForward',
-#  'First_Button' => 'First',
-#  'Last_Button' => 'Last',
-#  'About_Button' => 'About'
-};
-
-$T2H_WORD_DE =
-{
- 'ToC_Title' => 'Inhaltsverzeichniss',
- 'Overview_Title' => 'Kurzes Inhaltsverzeichniss',
- 'Index_Title' => 'Index',
- 'About_Title' => '&Uuml;ber dieses Dokument',
- 'Footnotes_Title' => 'Fu&szlig;noten',
- 'See' => 'Siehe',
- 'see' => 'siehe',
- 'section' => 'Abschnitt',
-};
-
-$T2H_WORD_NL =
-{
- 'ToC_Title' => 'Inhoudsopgave',
- 'Overview_Title' => 'Korte inhoudsopgave',
- 'Index_Title' => 'Index', #Not sure ;-)
- 'About_Title' => 'No translation available!', #No translation available!
- 'Footnotes_Title' => 'No translation available!', #No translation available!
- 'See' => 'Zie',
- 'see' => 'zie',
- 'section' => 'sectie',
-};
-
-$T2H_WORD_ES =
-{
- 'ToC_Title' => '&iacute;ndice General',
- 'Overview_Title' => 'Resumen del Contenido',
- 'Index_Title' => 'Index', #Not sure ;-)
- 'About_Title' => 'No translation available!', #No translation available!
- 'Footnotes_Title' => 'Fu&szlig;noten',
- 'See' => 'V&eacute;ase',
- 'see' => 'v&eacute;ase',
- 'section' => 'secci&oacute;n',
-};
-
-$T2H_WORD_NO =
-{
- 'ToC_Title' => 'Innholdsfortegnelse',
- 'Overview_Title' => 'Kort innholdsfortegnelse',
- 'Index_Title' => 'Indeks', #Not sure ;-)
- 'About_Title' => 'No translation available!', #No translation available!
- 'Footnotes_Title' => 'No translation available!',
- 'See' => 'Se',
- 'see' => 'se',
- 'section' => 'avsnitt',
-};
-
-$T2H_WORD_PT =
-{
- 'ToC_Title' => 'Sum&aacute;rio',
- 'Overview_Title' => 'Breve Sum&aacute;rio',
- 'Index_Title' => '&Iacute;ndice', #Not sure ;-)
- 'About_Title' => 'No translation available!', #No translation available!
- 'Footnotes_Title' => 'No translation available!',
- 'See' => 'Veja',
- 'see' => 'veja',
- 'section' => 'Se&ccedil;&atilde;o',
-};
-
-$T2H_WORDS =
-{
- 'en' => $T2H_WORDS_EN,
- 'de' => $T2H_WORDS_DE,
- 'nl' => $T2H_WORDS_NL,
- 'es' => $T2H_WORDS_ES,
- 'no' => $T2H_WORDS_NO,
- 'pt' => $T2H_WORDS_PT
-};
-
-@MONTH_NAMES_EN =
-(
- 'January', 'February', 'March', 'April', 'May',
- 'June', 'July', 'August', 'September', 'October',
- 'November', 'December'
-);
-
-@MONTH_NAMES_DE =
-(
- 'Januar', 'Februar', 'M&auml;rz', 'April', 'Mai',
- 'Juni', 'Juli', 'August', 'September', 'Oktober',
- 'November', 'Dezember'
-);
-
-@MONTH_NAMES_NL =
-(
- 'Januari', 'Februari', 'Maart', 'April', 'Mei',
- 'Juni', 'Juli', 'Augustus', 'September', 'Oktober',
- 'November', 'December'
-);
-
-@MONTH_NAMES_ES =
-(
- 'enero', 'febrero', 'marzo', 'abril', 'mayo',
- 'junio', 'julio', 'agosto', 'septiembre', 'octubre',
- 'noviembre', 'diciembre'
-);
-
-@MONTH_NAMES_NO =
-(
-
- 'januar', 'februar', 'mars', 'april', 'mai',
- 'juni', 'juli', 'august', 'september', 'oktober',
- 'november', 'desember'
-);
-
-@MONTH_NAMES_PT =
-(
- 'Janeiro', 'Fevereiro', 'Mar&ccedil;o', 'Abril', 'Maio',
- 'Junho', 'Julho', 'Agosto', 'Setembro', 'Outubro',
- 'Novembro', 'Dezembro'
-);
-
-
-$MONTH_NAMES =
-{
-    'en' => \@MONTH_NAMES_EN,
-    'de' => \@MONTH_NAMES_DE,
-    'es' => \@MONTH_NAMES_ES,
-    'nl' => \@MONTH_NAMES_NL,
-    'no' => \@MONTH_NAMES_NO,
-    'pt' => \@MONTH_NAMES_PT
-};
-########################################################################
-# Control of Page layout:
-# You can make changes of the Page layout at two levels:
-# 1.) For small changes, it is often enough to change the value of
-#     some global string/hash/array variables
-# 2.) For larger changes, reimplement one of the T2H_DEFAULT_<fnc>* routines,
-#     give them another name, and assign them to the respective
-#     $T2H_<fnc> variable.
-
-# As a general interface, the hashes T2H_HREF, T2H_NAME, T2H_NODE hold 
-# href, html-name, node-name of
-# This     -- current section (resp. html page)
-# Top      -- top page ($T2H_TOP_FILE)
-# Contents -- Table of contents
-# Overview -- Short table of contents
-# Index    -- Index page
-# About    -- page which explain "navigation buttons"
-# First    -- first node 
-# Last     -- last node
-#
-# Whether or not the following hash values are set, depends on the context 
-# (all values are w.r.t. 'This' section)
-# Next        -- next node of texinfo
-# Prev        -- previous node of texinfo
-# Up          -- up node of texinfo
-# Forward     -- next node in reading order
-# Back        -- previous node in reading order
-# FastForward -- if leave node, up and next, else next node
-# FastBackward-- if leave node, up and prev, else prev node
-#
-# Furthermore, the following global variabels are set:
-# $T2H_THISDOC{title}     -- title as set by @setttile
-# $T2H_THISDOC{fulltitle} -- full title as set by @title...
-# $T2H_THISDOC{subtitle}  -- subtitle as set by @subtitle
-# $T2H_THISDOC{author}    -- author as set by @author
-# 
-# and pointer to arrays of lines which need to be printed by t2h_print_lines 
-# $T2H_OVERVIEW      -- lines of short table of contents
-# $T2H_TOC           -- lines of table of contents
-# $T2H_TOP           -- lines of Top texinfo node 
-# $T2H_THIS_SECTION  -- lines of 'This' section
-
-#
-# There are the following subs which control the layout:
-#
-$T2H_print_section            = \&T2H_DEFAULT_print_section;
-$T2H_print_Top_header         = \&T2H_DEFAULT_print_Top_header;       
-$T2H_print_Top_footer        = \&T2H_DEFAULT_print_Top_footer;       
-$T2H_print_Top               = \&T2H_DEFAULT_print_Top;              
-$T2H_print_Toc               = \&T2H_DEFAULT_print_Toc;              
-$T2H_print_Overview          = \&T2H_DEFAULT_print_Overview;         
-$T2H_print_Footnotes         = \&T2H_DEFAULT_print_Footnotes;        
-$T2H_print_About             = \&T2H_DEFAULT_print_About;            
-$T2H_print_misc_header       = \&T2H_DEFAULT_print_misc_header;      
-$T2H_print_misc_footer       = \&T2H_DEFAULT_print_misc_footer;      
-$T2H_print_misc                      = \&T2H_DEFAULT_print_misc;
-$T2H_print_chapter_header     = \&T2H_DEFAULT_print_chapter_header;      
-$T2H_print_chapter_footer     = \&T2H_DEFAULT_print_chapter_footer;      
-$T2H_print_page_head         = \&T2H_DEFAULT_print_page_head;        
-$T2H_print_page_foot         = \&T2H_DEFAULT_print_page_foot;        
-$T2H_print_head_navigation    = \&T2H_DEFAULT_print_head_navigation;  
-$T2H_print_foot_navigation    = \&T2H_DEFAULT_print_foot_navigation;  
-$T2H_button_icon_img         = \&T2H_DEFAULT_button_icon_img;        
-$T2H_print_navigation        = \&T2H_DEFAULT_print_navigation;       
-$T2H_about_body                      = \&T2H_DEFAULT_about_body;            
-$T2H_print_frame              = \&T2H_DEFAULT_print_frame;
-$T2H_print_toc_frame          = \&T2H_DEFAULT_print_toc_frame;
-
-########################################################################
-# Layout for html for every sections
-#
-sub T2H_DEFAULT_print_section
-{
-  my $fh = shift;
-  local $T2H_BUTTONS = \@T2H_SECTION_BUTTONS;
-  &$T2H_print_head_navigation($fh) if $T2H_SECTION_NAVIGATION;
-  my $nw = t2h_print_lines($fh);
-  if ($T2H_SPLIT eq 'section' && $T2H_SECTION_NAVIGATION)
-  {
-    &$T2H_print_foot_navigation($fh, $nw);
-  }
-  else
-  {
-    print $fh '<HR SIZE="6">' . "\n";
-  }
-}
-
-###################################################################
-# Layout of top-page I recommend that you use @ifnothtml, @ifhtml,
-# @html within the Top texinfo node to specify content of top-level
-# page. 
-#
-# If you enclose everything in @ifnothtml, then title, subtitle,
-# author and overview is printed
-# T2H_HREF of Next, Prev, Up, Forward, Back are not defined
-# if $T2H_SPLIT then Top page is in its own html file
-sub T2H_DEFAULT_print_Top_header
-{
-  &$T2H_print_page_head(@_) if $T2H_SPLIT;
-  t2h_print_label(@_); # this needs to be called, otherwise no label set
-  &$T2H_print_head_navigation(@_);
-}
-sub T2H_DEFAULT_print_Top_footer
-{
-  &$T2H_print_foot_navigation(@_);
-  &$T2H_print_page_foot(@_) if $T2H_SPLIT; 
-}
-sub T2H_DEFAULT_print_Top
-{
-  my $fh = shift;
-
-  # for redefining navigation buttons use:
-  # local $T2H_BUTTONS = [...];
-  # as it is, 'Top', 'Contents', 'Index', 'About' are printed
-  local $T2H_BUTTONS = \@T2H_MISC_BUTTONS;
-  &$T2H_print_Top_header($fh);
-  if ($T2H_THIS_SECTION)
-  {
-    # if top-level node has content, then print it with extra header
-    print $fh "<H1>$T2H_NAME{Top}</H1>"
-      unless ($T2H_HAS_TOP_HEADING);
-    t2h_print_lines($fh, $T2H_THIS_SECTION)
-  }
-  else
-  {
-    # top-level node is fully enclosed in @ifnothtml
-    # print fulltitle, subtitle, author, Overview
-    print $fh 
-      "<CENTER>\n<H1>" .
-      join("</H1>\n<H1>", split(/\n/,  $T2H_THISDOC{fulltitle})) .
-      "</H1>\n";
-    print $fh "<H2>$T2H_THISDOC{subtitle}</H2>\n" if $T2H_THISDOC{subtitle};
-    print $fh "$T2H_THISDOC{author}\n" if $T2H_THISDOC{author};
-    print $fh <<EOT;
-</CENTER>
-<HR>
-<P></P>  
-<H2> Overview: </H2>
-<BLOCKQUOTE>  
-EOT
-    t2h_print_lines($fh, $T2H_OVERVIEW);
-    print $fh "</BLOCKQUOTE>\n";
-  }
-  &$T2H_print_Top_footer($fh);
-}
-
-###################################################################
-# Layout of Toc, Overview, and Footnotes pages
-# By default, we use "normal" layout 
-# T2H_HREF of Next, Prev, Up, Forward, Back, etc are not defined
-# use: local $T2H_BUTTONS = [...] to redefine navigation buttons
-sub T2H_DEFAULT_print_Toc
-{
-  return &$T2H_print_misc(@_);
-}
-sub T2H_DEFAULT_print_Overview
-{
-  return &$T2H_print_misc(@_);
-}
-sub T2H_DEFAULT_print_Footnotes
-{
-  return &$T2H_print_misc(@_);
-}
-sub T2H_DEFAULT_print_About
-{
-  return &$T2H_print_misc(@_);
-}
-
-sub T2H_DEFAULT_print_misc_header
-{
-  &$T2H_print_page_head(@_) if $T2H_SPLIT;
-  # this needs to be called, otherwise, no labels are set
-  t2h_print_label(@_); 
-  &$T2H_print_head_navigation(@_);
-}
-sub T2H_DEFAULT_print_misc_footer
-{
-  &$T2H_print_foot_navigation(@_);
-  &$T2H_print_page_foot(@_) if $T2H_SPLIT; 
-}
-sub T2H_DEFAULT_print_misc
-{
-  my $fh = shift;
-  local $T2H_BUTTONS = \@T2H_MISC_BUTTONS;
-  &$T2H_print_misc_header($fh);
-  print $fh "<H1>$T2H_NAME{This}</H1>\n";
-  t2h_print_lines($fh);
-  &$T2H_print_misc_footer($fh);
-}
-
-###################################################################
-# chapter_header and chapter_footer are only called if
-# T2H_SPLIT eq 'chapter'
-# chapter_header: after print_page_header, before print_section
-# chapter_footer: after print_section of last section, before print_page_footer
-# 
-# If you want to get rid of navigation stuff after each section,
-# redefine print_section such that it does not call print_navigation,
-# and put print_navigation into print_chapter_header
-@T2H_CHAPTER_BUTTONS =
-  (
-   'FastBack', 'FastForward', ' ', 
-   ' ', ' ', ' ', ' ',
-   'Top', 'Contents', 'Index', 'About', 
-  );
-
-sub T2H_DEFAULT_print_chapter_header
-{
-  # nothing to do there, by default
-  if (! $T2H_SECTION_NAVIGATION)
-  {
-    my $fh = shift;
-    local $T2H_BUTTONS = \@T2H_CHAPTER_BUTTONS;
-    &$T2H_print_navigation($fh);
-    print $fh "\n<HR SIZE=2>\n";
-  }
-}
-
-sub T2H_DEFAULT_print_chapter_footer
-{
-  local $T2H_BUTTONS = \@T2H_CHAPTER_BUTTONS;
-  &$T2H_print_navigation(@_);
-}
-###################################################################
-$T2H_TODAY = &pretty_date;             # like "20 September 1993"
-
-sub pretty_date {
-    local($sec, $min, $hour, $mday, $mon, $year, $wday, $yday, $isdst);
-
-    ($sec, $min, $hour, $mday, $mon, $year, $wday, $yday, $isdst) = localtime(time);
-    $year += ($year < 70) ? 2000 : 1900;
-    # obachman: Let's do it as the Americans do
-    return($MONTH_NAMES->{$T2H_LANG}[$mon] . ", " . $mday . " " . $year);
-}
-
-
-###################################################################
-# Layout of standard header and footer
-#
-
-# Set the default body text, inserted between <BODY ... > 
-###$T2H_BODYTEXT = 'LANG="EN" BGCOLOR="#FFFFFF" TEXT="#000000" LINK="#0000FF" VLINK="#800080" ALINK="#FF0000"';
-$T2H_BODYTEXT = 'LANG="' . $T2H_LANG . '" BGCOLOR="#FFFFFF" TEXT="#000000" LINK="#0000FF" VLINK="#800080" ALINK="#FF0000"';
-# text inserted after <BODY ...>
-$T2H_AFTER_BODY_OPEN = '';
-#text inserted before </BODY>
-$T2H_PRE_BODY_CLOSE = '';
-# this is used in footer
-$T2H_ADDRESS = "by <I>$T2H_USER</I> " if $T2H_USER;
-$T2H_ADDRESS .= "on <I>$T2H_TODAY</I>";
-# this is added inside <HEAD></HEAD> after <TITLE> and some META NAME stuff
-# can be used for <style> <script>, <meta> tags
-$T2H_EXTRA_HEAD = '';
-
-sub T2H_DEFAULT_print_page_head
-{
-  my $fh = shift; 
-  my $longtitle = "$T2H_THISDOC{title}: $T2H_NAME{This}";
-  print $fh <<EOT;
-<HTML>
-$T2H_DOCTYPE
-<!-- Created on $T2H_TODAY by $THISPROG -->
-<!-- 
-$T2H_AUTHORS 
--->
-<HEAD>
-<TITLE>$longtitle</TITLE>
-
-<META NAME="description" CONTENT="$longtitle">
-<META NAME="keywords" CONTENT="$longtitle">
-<META NAME="resource-type" CONTENT="document">
-<META NAME="distribution" CONTENT="global">
-<META NAME="Generator" CONTENT="$THISPROG">
-$T2H_EXTRA_HEAD
-</HEAD>
-
-<BODY $T2H_BODYTEXT>
-$T2H_AFTER_BODY_OPEN
-EOT
-}
-
-sub T2H_DEFAULT_print_page_foot
-{
-  my $fh = shift;
-  print $fh <<EOT;
-<BR>  
-<FONT SIZE="-1">
-This document was generated
-$T2H_ADDRESS
-using <A HREF="$T2H_HOMEPAGE"><I>texi2html</I></A>
-$T2H_PRE_BODY_CLOSE
-</BODY>
-</HTML>
-EOT
-}
-
-###################################################################
-# Layout of navigation panel
-
-# if this is set, then a vertical navigation panel is used
-$T2H_VERTICAL_HEAD_NAVIGATION = 0;
-sub T2H_DEFAULT_print_head_navigation
-{
-  my $fh = shift;
-  if ($T2H_VERTICAL_HEAD_NAVIGATION)
-  {
-    print $fh <<EOT;
-<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="0">
-<TR VALIGN="TOP">
-<TD ALIGN="LEFT">
-EOT
-  }
-  &$T2H_print_navigation($fh, $T2H_VERTICAL_HEAD_NAVIGATION);
-  if ($T2H_VERTICAL_HEAD_NAVIGATION)
-  {
-    print $fh <<EOT;
-</TD>
-<TD ALIGN="LEFT">
-EOT
-  }
-  elsif ($T2H_SPLIT eq 'section')
-  {
-    print $fh "<HR SIZE=1>\n";
-  }
-}
-
-# Specifies the minimum page length required before a navigation panel
-# is placed at the bottom of a page (the default is that of latex2html)
-# T2H_THIS_WORDS_IN_PAGE holds number of words of current page
-$T2H_WORDS_IN_PAGE = 300;
-sub T2H_DEFAULT_print_foot_navigation
-{
-  my $fh = shift;
-  my $nwords = shift;
-  if ($T2H_VERTICAL_HEAD_NAVIGATION)
-  {
-    print $fh <<EOT;
-</TD>
-</TR>
-</TABLE>
-EOT
-  }
-  print $fh "<HR SIZE=1>\n";
-  &$T2H_print_navigation($fh) if ($nwords >= $T2H_WORDS_IN_PAGE)
-}
-
-######################################################################
-# navigation panel
-#
-# specify in this array which "buttons" should appear in which order
-# in the navigation panel for sections; use ' ' for empty buttons (space)
-@T2H_SECTION_BUTTONS =
-  (
-   'Back', 'Forward', ' ', 'FastBack', 'Up', 'FastForward',  
-   ' ', ' ', ' ', ' ',
-   'Top', 'Contents', 'Index', 'About', 
-  );
-
-# buttons for misc stuff
-@T2H_MISC_BUTTONS = ('Top', 'Contents', 'Index', 'About');
-
-# insert here name of icon images for buttons 
-# Icons are used, if $T2H_ICONS and resp. value are set
-%T2H_ACTIVE_ICONS =
-  (
-   'Top',      '',
-   'Contents', '',
-   'Overview', '',
-   'Index',    '',
-   'Back',     '',
-   'FastBack', '',
-   'Prev',     '',
-   'Up',       '',
-   'Next',     '',
-   'Forward',  '',
-   'FastForward', '',
-   'About' ,    '',
-   'First',    '',
-   'Last',     '',
-   ' ',        ''
-  );
-
-# insert here name of icon images for these, if button is inactive
-%T2H_PASSIVE_ICONS =
-  (
-   'Top',      '',
-   'Contents', '',
-   'Overview', '',
-   'Index',    '',
-   'Back',     '',
-   'FastBack', '',
-   'Prev',     '',
-   'Up',       '',
-   'Next',     '',
-   'Forward',  '',
-   'FastForward', '',
-   'About',     '',
-   'First',    '',
-   'Last',     '',
-  );
-
-# how to create IMG tag
-sub T2H_DEFAULT_button_icon_img
-{
-  my $button = shift;
-  my $icon = shift;
-  my $name = shift;
-  return qq{<IMG SRC="$icon" BORDER="0" ALT="$button: $name" ALIGN="MIDDLE">};
-}
-
-# Names of text as alternative for icons
-%T2H_NAVIGATION_TEXT =
-  (
-   'Top',      'Top',
-   'Contents', 'Contents',
-   'Overview', 'Overview',
-   'Index',    'Index',
-   ' ',        ' &nbsp; ',
-   'Back',     ' &lt; ',
-   'FastBack', ' &lt;&lt; ',
-   'Prev',     'Prev',
-   'Up',       ' Up ',
-   'Next',     'Next',
-   'Forward',  ' &gt; ',
-   'FastForward',  ' &gt;&gt; ',
-   'About',     ' ? ',
-   'First',    ' |&lt; ',
-   'Last',     ' &gt;| '
-  );
-
-sub T2H_DEFAULT_print_navigation
-{
-  my $fh = shift;
-  my $vertical = shift;
-  my $spacing = 1;
-  print $fh "<TABLE CELLPADDING=$spacing CELLSPACING=$spacing BORDER=0>\n";
-
-  print $fh "<TR>" unless $vertical;
-  for $button (@$T2H_BUTTONS)
-  {
-    print $fh qq{<TR VALIGN="TOP" ALIGN="LEFT">\n} if $vertical;
-    print $fh qq{<TD VALIGN="MIDDLE" ALIGN="LEFT">};
-
-    if (ref($button) eq 'CODE')
-    {
-      &$button($fh, $vertical);
-    }
-    elsif ($button eq ' ')
-    { # handle space button
-      print $fh 
-       $T2H_ICONS && $T2H_ACTIVE_ICONS{' '} ? 
-        &$T2H_button_icon_img($button, $T2H_ACTIVE_ICONS{' '}) :
-        $T2H_NAVIGATION_TEXT{' '};
-      next;
-    }
-    elsif ($T2H_HREF{$button})
-    { # button is active
-      print $fh   
-        $T2H_ICONS && $T2H_ACTIVE_ICONS{$button} ? # use icon ? 
-          t2h_anchor('', $T2H_HREF{$button},  # yes
-                   &$T2H_button_icon_img($button,
-                                       $T2H_ACTIVE_ICONS{$button},
-                                       $T2H_NAME{$button})) 
-        : # use text
-        "[" . 
-        t2h_anchor('', $T2H_HREF{$button}, $T2H_NAVIGATION_TEXT{$button}) .
-        "]";  
-    }
-    else
-    { # button is passive 
-      print $fh 
-       $T2H_ICONS && $T2H_PASSIVE_ICONS{$button} ?
-        &$T2H_button_icon_img($button,
-                              $T2H_PASSIVE_ICONS{$button},
-                              $T2H_NAME{$button}) :
-        
-        "[" . $T2H_NAVIGATION_TEXT{$button} . "]";
-    }
-    print $fh "</TD>\n";
-    print $fh "</TR>\n" if $vertical;
-  }
-  print $fh "</TR>" unless $vertical;
-  print $fh "</TABLE>\n";
-}
-
-######################################################################
-# Frames: this is from "Richard Y. Kim" <ryk@coho.net>
-# Should be improved to be more conforming to other _print* functions
-
-sub T2H_DEFAULT_print_frame
-{
-  my $fh = shift;
-  print $fh <<EOT;
-<HTML>
-<HEAD><TITLE>$T2H_THISDOC{title}</TITLE></HEAD>
-<FRAMESET cols="140,*"> 
-  <FRAME name=toc  src="$docu_toc_frame_file">
-  <FRAME name=main src="$docu_doc">
-</FRAMESET> 
-</HTML>
-EOT
-}
-
-sub T2H_DEFAULT_print_toc_frame
-{
-  my $fh = shift;
-  &$T2H_print_page_head($fh);
-  print $fh <<EOT;
-<H2>Content</H2>
-EOT
-  print $fh map {s/HREF=/target=\"main\" HREF=/; $_;} @stoc_lines;
-  print $fh "</BODY></HTML>\n";
-}
-
-######################################################################
-# About page
-#
-
-# T2H_PRE_ABOUT might be a function
-$T2H_PRE_ABOUT = <<EOT;
-This document was generated $T2H_ADDRESS
-using <A HREF="$T2H_HOMEPAGE"><I>texi2html</I></A>
-<P></P>  
-EOT
-$T2H_AFTER_ABOUT = '';
-
-sub T2H_DEFAULT_about_body
-{
-  my $about;
-  if (ref($T2H_PRE_ABOUT) eq 'CODE')
-  {
-    $about = &$T2H_PRE_ABOUT();
-  }
-  else
-  {
-    $about = $T2H_PRE_ABOUT;
-  }
-  $about .= <<EOT;
-The buttons in the navigation panels have the following meaning:
-<P></P>
-<table border = "1">
-<TR>
-<TH> Button </TH>
-<TH> Name </TH>
-<TH> Go to </TH>
-<TH> From 1.2.3 go to</TH>
-</TR>
-EOT
-  
-  for $button (@T2H_SECTION_BUTTONS)
-  {
-    next if $button eq ' ' || ref($button) eq 'CODE';
-    $about .= <<EOT;
-<TR>
-<TD ALIGN="CENTER">
-EOT
-    $about .=  
-      ($T2H_ICONS && $T2H_ACTIVE_ICONS{$button} ?
-       &$T2H_button_icon_img($button, $T2H_ACTIVE_ICONS{$button}) :
-       " [" . $T2H_NAVIGATION_TEXT{$button} . "] ");
-    $about .= <<EOT;
-</TD>
-<TD ALIGN="CENTER">
-$button
-</TD>
-<TD>
-$T2H_BUTTONS_GOTO{$button}
-</TD>
-<TD>
-$T2H_BUTTONS_EXAMPLE{$button}
-</TD>
-</TR>
-EOT
-  }
-
-  $about .= <<EOT;
-</TABLE>
-<P></P>
-where the <STRONG> Example </STRONG> assumes that the current position 
-is at <STRONG> Subsubsection One-Two-Three </STRONG> of a document of 
-the following structure:
-<UL>
-<LI> 1. Section One  </LI>
-<UL>
-<LI>1.1 Subsection One-One</LI>
-<UL>
-<LI> ... </LI>
-</UL>
-<LI>1.2 Subsection One-Two</LI>
-<UL>
-<LI>1.2.1 Subsubsection One-Two-One
-</LI><LI>1.2.2 Subsubsection One-Two-Two
-</LI><LI>1.2.3 Subsubsection One-Two-Three &nbsp; &nbsp; <STRONG>
-&lt;== Current Position </STRONG>
-</LI><LI>1.2.4 Subsubsection One-Two-Four
-</LI></UL>
-<LI>1.3 Subsection One-Three</LI>
-<UL>
-<LI> ... </LI>
-</UL>
-<LI>1.4 Subsection One-Four</LI>
-</UL>
-</UL>
-$T2H_AFTER_ABOUT
-EOT
-  return $about;  
-}
-
-  
-%T2H_BUTTONS_GOTO =
-  (
-   'Top',      'cover (top) of document',
-   'Contents', 'table of contents',
-   'Overview', 'short table of contents',
-   'Index',    'concept index',
-   'Back',     'previous section in reading order',
-   'FastBack', 'previous or up-and-previous section ',
-   'Prev',     'previous section same level',
-   'Up',       'up section',
-   'Next',     'next section same level',
-   'Forward',  'next section in reading order',
-   'FastForward', 'next or up-and-next section',
-   'About' ,    'this page',
-   'First',    'first section in reading order',
-   'Last',     'last section in reading order',
-  );
-
-%T2H_BUTTONS_EXAMPLE = 
-(
-   'Top',      ' &nbsp; ',
-   'Contents', ' &nbsp; ',
-   'Overview', ' &nbsp; ',
-   'Index',    ' &nbsp; ',
-   'Back',     '1.2.2',
-   'FastBack', '1.1',
-   'Prev',     '1.2.2',
-   'Up',       '1.2',
-   'Next',     '1.2.4',
-   'Forward',  '1.2.4',
-   'FastForward', '1.3',
-   'About',     ' &nbsp; ',
-   'First',    '1.',
-   'Last',     '1.2.4',
-);
-
-
-######################################################################
-# from here on, its l2h init stuff 
-#
-
-## initialization for latex2html as for Singular manual generation
-## obachman 3/99
-
-#
-# Options controlling Titles, File-Names, Tracing and Sectioning
-#
-$TITLE = '';
-
-$SHORTEXTN = 0;
-
-$LONG_TITLES = 0;
-
-$DESTDIR = ''; # should be overwritten by cmd-line argument
-
-$NO_SUBDIR = 0;# should be overwritten by cmd-line argument
-
-$PREFIX = '';  # should be overwritten by cmd-line argument
-
-$AUTO_PREFIX = 0; # this is needed, so that prefix settings are used
-
-$AUTO_LINK = 0; 
-
-$SPLIT = 0;
-
-$MAX_LINK_DEPTH = 0;
-
-$TMP = ''; # should be overwritten by cmd-line argument
-
-$DEBUG = 0;
-
-$VERBOSE = 1;
-
-#
-# Options controlling Extensions and Special Features 
-#
-$HTML_VERSION = "3.2";
-
-$TEXDEFS = 1; # we absolutely need that
-
-$EXTERNAL_FILE = '';
-
-$SCALABLE_FONTS = 1;
-
-$NO_SIMPLE_MATH = 1;
-
-$LOCAL_ICONS = 1;
-
-$SHORT_INDEX = 0;
-
-$NO_FOOTNODE = 1;
-
-$ADDRESS = '';
-
-$INFO = '';
-
-#
-# Switches controlling Image Generation 
-#
-$ASCII_MODE = 0;
-
-$NOLATEX = 0;
-
-$EXTERNAL_IMAGES = 0;
-
-$PS_IMAGES = 0;
-
-$NO_IMAGES = 0;
-
-$IMAGES_ONLY = 0;
-
-$REUSE = 2;
-
-$ANTI_ALIAS = 1;
-
-$ANTI_ALIAS_TEXT = 1;
-
-#
-#Switches controlling Navigation Panels
-#
-$NO_NAVIGATION = 1;
-$ADDRESS = '';
-$INFO = 0;              # 0 = do not make a "About this document..." section 
-
-#
-#Switches for Linking to other documents 
-#
-# actuall -- we don't care
-
-$MAX_SPLIT_DEPTH = 0;  # Stop making separate files at this depth
-
-$MAX_LINK_DEPTH = 0;    # Stop showing child nodes at this depth   
-
-$NOLATEX = 0;           # 1 = do not pass unknown environments to Latex
-
-$EXTERNAL_IMAGES = 0;   # 1 = leave the images outside the document 
-
-$ASCII_MODE = 0;        # 1 = do not use any icons or internal images
-
-# 1 =  use links to external postscript images rather than inlined bitmap
-# images.
-$PS_IMAGES = 0;
-$SHOW_SECTION_NUMBERS = 0;
-
-### Other global variables ###############################################
-$CHILDLINE = "";
-
-# This is the line width measured in pixels and it is used to right justify
-# equations and equation arrays; 
-$LINE_WIDTH = 500;             
-
-# Used in conjunction with AUTO_NAVIGATION
-$WORDS_IN_PAGE = 300;  
-
-# Affects ONLY the way accents are processed 
-$default_language = 'english'; 
-
-# The value of this variable determines how many words to use in each 
-# title that is added to the navigation panel (see below)
-# 
-$WORDS_IN_NAVIGATION_PANEL_TITLES = 0;
-
-# This number will determine the size of the equations, special characters,
-# and anything which will be converted into an inlined image
-# *except* "image generating environments" such as "figure", "table" 
-# or "minipage".
-# Effective values are those greater than 0.
-# Sensible values are between 0.1 - 4.
-$MATH_SCALE_FACTOR = 1.5;
-
-# This number will determine the size of 
-# image generating environments such as "figure", "table" or "minipage".
-# Effective values are those greater than 0.
-# Sensible values are between 0.1 - 4.
-$FIGURE_SCALE_FACTOR = 1.6;
-
-
-#  If both of the following two variables are set then the "Up" button
-#  of the navigation panel in the first node/page of a converted document
-#  will point to $EXTERNAL_UP_LINK. $EXTERNAL_UP_TITLE should be set
-#  to some text which describes this external link.
-$EXTERNAL_UP_LINK = "";
-$EXTERNAL_UP_TITLE = "";
-
-# If this is set then the resulting HTML will look marginally better if viewed 
-# with Netscape.
-$NETSCAPE_HTML = 1;
-
-# Valid paper sizes are "letter", "legal", "a4","a3","a2" and "a0"
-# Paper sizes has no effect other than in the time it takes to create inlined
-# images and in whether large images can be created at all ie
-#  - larger paper sizes *MAY* help with large image problems 
-#  - smaller paper sizes are quicker to handle
-$PAPERSIZE = "a4";
-
-# Replace "english" with another language in order to tell LaTeX2HTML that you 
-# want some generated section titles (eg "Table of Contents" or "References")
-# to appear in a different language. Currently only "english" and "french"
-# is supported but it is very easy to add your own. See the example in the
-# file "latex2html.config" 
-$TITLES_LANGUAGE = "english";
-
-1;     # This must be the last non-comment line
-
-# End File texi2html.init
-######################################################################
-
-
-require "$ENV{T2H_HOME}/texi2html.init" 
-  if ($0 =~ /\.pl$/ &&
-      -e "$ENV{T2H_HOME}/texi2html.init" && -r "$ENV{T2H_HOME}/texi2html.init");
-
-#+++############################################################################
-#                                                                              #
-# Initialization                                                               #
-# Pasted content of File $(srcdir)/MySimple.pm: Command-line processing        #
-#                                                                              #
-#---############################################################################
-
-# leave this within comments, and keep the require statement
-# This way, you can directly run texi2html.pl, if $ENV{T2H_HOME}/texi2html.init
-# exists.
-
-# 
-package Getopt::MySimple;
-
-# Name:
-#      Getopt::MySimple.
-#
-# Documentation:
-#      POD-style (incomplete) documentation is in file MySimple.pod
-#
-# Tabs:
-#      4 spaces || die.
-#
-# Author:
-#      Ron Savage      rpsavage@ozemail.com.au.
-#      1.00    19-Aug-97       Initial version.
-#      1.10    13-Oct-97       Add arrays of switches (eg '=s@').
-#      1.20     3-Dec-97       Add 'Help' on a per-switch basis.
-#      1.30    11-Dec-97       Change 'Help' to 'verbose'. Make all hash keys lowercase.
-#      1.40    10-Nov-98       Change width of help report. Restructure tests.
-#               1-Jul-00        Modifications for Texi2html
-
-# --------------------------------------------------------------------------
-# Locally modified by obachman (Display type instead of env, order by cmp)
-# $Id: MySimple.pm,v 1.1 2000/07/03 08:44:13 obachman Exp $
-
-# use strict;
-# no strict 'refs';
-
-use vars qw(@EXPORT @EXPORT_OK @ISA);
-use vars qw($fieldWidth $opt $VERSION);
-
-use Exporter();
-use Getopt::Long;
-
-@ISA           = qw(Exporter);
-@EXPORT                = qw();
-@EXPORT_OK     = qw($opt);     # An alias for $self -> {'opt'}.
-
-# --------------------------------------------------------------------------
-
-$fieldWidth    = 20;
-$VERSION       = '1.41';
-
-# --------------------------------------------------------------------------
-
-sub byOrder
-{
-       my($self) = @_;
-       
-       return uc($a) cmp (uc($b));
-}
-
-# --------------------------------------------------------------------------
-
-sub dumpOptions
-{
-       my($self) = @_;
-
-       print 'Option', ' ' x ($fieldWidth - length('Option') ), "Value\n";
-
-       for (sort byOrder keys(%{$self -> {'opt'} }) )
-       {
-         print "-$_", ' ' x ($fieldWidth - (1 + length) ), "${$self->{'opt'} }{$_}\n";
-       }
-
-       print "\n";
-
-}      # End of dumpOptions.
-
-# --------------------------------------------------------------------------
-# Return:
-#      0 -> Error.
-#      1 -> Ok.
-
-sub getOptions
-{
-       push(@_, 0) if ($#_ == 2);      # Default for $ignoreCase is 0.
-       push(@_, 1) if ($#_ == 3);      # Default for $helpThenExit is 1.
-
-       my($self, $default, $helpText, $versionText, 
-          $helpThenExit, $versionThenExit, $ignoreCase) = @_;
-       
-       $helpThenExit = 1 unless (defined($helpThenExit));
-       $versionThenExit = 1 unless (defined($versionThenExit));
-       $ignoreCase = 0 unless (defined($ignoreCase));
-
-       $self -> {'default'}            = $default;
-       $self -> {'helpText'}           = $helpText;
-       $self -> {'versionText'}        = $versionText;
-       $Getopt::Long::ignorecase       = $ignoreCase;
-
-       unless (defined($self -> {'default'}{'help'}))
-       {
-         $self -> {'default'}{'help'} = 
-         { 
-          type => ':i', 
-          default => '',
-          linkage => sub {$self->helpOptions($_[1]); exit (0) if $helpThenExit;},
-          verbose => "print help and exit"
-         };
-       }
-
-       unless (defined($self -> {'default'}{'version'}))
-       {
-         $self -> {'default'}{'version'} = 
-         { 
-          type => '', 
-          default => '',
-          linkage => sub {print $self->{'versionText'};  exit (0) if versionTheExit;},
-          verbose => "print version and exit"
-         };
-       }
-
-       for (keys(%{$self -> {'default'} }) )
-       {
-         my $type = ${$self -> {'default'} }{$_}{'type'};
-         push(@{$self -> {'type'} }, "$_$type");
-         $self->{'opt'}->{$_} =  ${$self -> {'default'} }{$_}{'linkage'}
-            if ${$self -> {'default'} }{$_}{'linkage'};
-       }
-
-       my($result) = &GetOptions($self -> {'opt'}, @{$self -> {'type'} });
-
-        return $result unless $result;
-
-       for (keys(%{$self -> {'default'} }) )
-       {
-          if (! defined(${$self -> {'opt'} }{$_})) #{
-            {
-            ${$self -> {'opt'} }{$_} = ${$self -> {'default'} }{$_}{'default'};
-            }
-       }
-
-       $result;
-}      # End of getOptions.
-
-# --------------------------------------------------------------------------
-
-sub helpOptions
-{
-       my($self) = shift;
-       my($noHelp) = shift;
-       $noHelp = 0 unless $noHelp;
-       my($optwidth, $typewidth, $defaultwidth, $maxlinewidth, $valind, $valwidth) 
-         = (10, 5, 9, 78, 4, 11);
-
-       print "$self->{'helpText'}" if ($self -> {'helpText'});
-
-       print ' Option', ' ' x ($optwidth - length('Option') -1 ),
-               'Type', ' ' x ($typewidth - length('Type') + 1),
-               'Default', ' ' x ($defaultwidth - length('Default') ),
-               "Description\n";
-
-       for (sort byOrder keys(%{$self -> {'default'} }) )
-       {
-         my($line, $help, $option, $val);
-         $option = $_;
-         next if ${$self->{'default'} }{$_}{'noHelp'} && ${$self->{'default'} }{$_}{'noHelp'} > $noHelp;
-               $line = " -$_ " . ' ' x ($optwidth - (2 + length) ) .
-                       "${$self->{'default'} }{$_}{'type'} ".
-                       ' ' x ($typewidth - (1+length(${$self -> {'default'} }{$_}{'type'}) ));
-
-                 $val = ${$self->{'default'} }{$_}{'linkage'};
-                if ($val)
-                {
-                  if (ref($val) eq 'SCALAR')
-                 {
-                   $val = $$val; 
-                 }
-                 else
-                 {
-                   $val = '';
-                 }
-                }
-               else
-               {
-                 $val = ${$self->{'default'} }{$_}{'default'};
-               }
-               $line .= "$val  ";
-               $line .= ' ' x ($optwidth + $typewidth + $defaultwidth + 1 - length($line));
-               
-               if (defined(${$self -> {'default'} }{$_}{'verbose'}) &&
-                 ${$self -> {'default'} }{$_}{'verbose'} ne '')
-             {
-               $help = "${$self->{'default'} }{$_}{'verbose'}";
-             }
-             else
-             {
-               $help = ' ';
-             }
-             if ((length("$line") + length($help)) < $maxlinewidth)
-             {
-               print $line , $help, "\n";
-             }
-             else
-             {
-               print $line, "\n", ' ' x $valind, $help, "\n";
-             }
-             for $val (sort byOrder keys(%{${$self->{'default'}}{$option}{'values'}}))
-             {
-               print ' ' x ($valind + 2);
-               print $val, '  ', ' ' x ($valwidth - length($val) - 2);
-               print ${$self->{'default'}}{$option}{'values'}{$val}, "\n";
-             }
-       }
-
-       print <<EOT;
-Note: 'Options' may be abbreviated. 'Type' specifications mean:
- <none>| !    no argument: variable is set to 1 on -foo (or, to 0 on -nofoo)
-    =s | :s   mandatory (or, optional)  string argument
-    =i | :i   mandatory (or, optional)  integer argument
-EOT
-}      # End of helpOptions.
-
-#-------------------------------------------------------------------
-
-sub new
-{
-       my($class)                              = @_;
-       my($self)                               = {};
-       $self -> {'default'}    = {};
-       $self -> {'helpText'}   = '';
-       $self -> {'opt'}                = {};
-       $opt                                    = $self -> {'opt'};      # An alias for $self -> {'opt'}.
-       $self -> {'type'}               = ();
-
-       return bless $self, $class;
-
-}      # End of new.
-
-# --------------------------------------------------------------------------
-
-1;
-
-# End MySimple.pm
-
-require "$ENV{T2H_HOME}/MySimple.pm" 
-  if ($0 =~ /\.pl$/ &&
-      -e "$ENV{T2H_HOME}/texi2html.init" && -r "$ENV{T2H_HOME}/texi2html.init");
-
-package main;
-
-#+++############################################################################
-#                                                                              #
-# Constants                                                                    #
-#                                                                              #
-#---############################################################################
-
-$DEBUG_TOC   =  1;
-$DEBUG_INDEX =  2;
-$DEBUG_BIB   =  4;
-$DEBUG_GLOSS =  8;
-$DEBUG_DEF   = 16;
-$DEBUG_HTML  = 32;
-$DEBUG_USER  = 64;
-$DEBUG_L2H   = 128;
-
-
-$BIBRE = '\[[\w\/-]+\]';               # RE for a bibliography reference
-$FILERE = '[\/\w.+-]+';                        # RE for a file name
-$VARRE = '[^\s\{\}]+';                 # RE for a variable name
-$NODERE = '[^,:]+';                    # RE for a node name
-$NODESRE = '[^:]+';                    # RE for a list of node names
-
-$ERROR = "***";                                # prefix for errors 
-$WARN  = "**";                          # prefix for warnings
-  
-                                        # program home page
-$PROTECTTAG = "_ThisIsProtected_";     # tag to recognize protected sections
-
-$CHAPTEREND = "<!-- End chapter -->\n"; # to know where a chpater ends
-$SECTIONEND = "<!-- End section -->\n"; # to know where section ends
-$TOPEND     = "<!-- End top     -->\n"; # to know where top ends
-
-  
-
-#
-# pre-defined indices
-#
-$index_properties =
-{
- 'c' => { name => 'cp'},
- 'f' => { name => 'fn', code => 1},
- 'v' => { name => 'vr', code => 1},
- 'k' => { name => 'ky', code => 1},
- 'p' => { name => 'pg', code => 1},
- 't' => { name => 'tp', code => 1}
-};
-
-
-%predefined_index = (
-                   'cp', 'c',
-                   'fn', 'f',
-                   'vr', 'v',
-                   'ky', 'k',
-                   'pg', 'p',
-                   'tp', 't',
-                   );
-
-#
-# valid indices
-#
-%valid_index = (
-                   'c', 1,
-                   'f', 1,
-                   'v', 1,
-                   'k', 1,
-                   'p', 1,
-                   't', 1,
-               );
-
-#
-# texinfo section names to level
-#
-%sec2level = (
-             'top', 0,
-             'chapter', 1,
-             'unnumbered', 1,
-             'majorheading', 1,
-             'chapheading', 1,
-             'appendix', 1,
-             'section', 2,
-             'unnumberedsec', 2,
-             'heading', 2,
-             'appendixsec', 2,
-             'appendixsection', 2,
-             'subsection', 3,
-             'unnumberedsubsec', 3,
-             'subheading', 3,
-             'appendixsubsec', 3,
-             'subsubsection', 4,
-             'unnumberedsubsubsec', 4,
-             'subsubheading', 4,
-             'appendixsubsubsec', 4,
-             );
-
-#
-# accent map, TeX command to ISO name
-#
-%accent_map = (
-              '"',  'uml',
-              '~',  'tilde',
-              '^',  'circ',
-              '`',  'grave',
-              '\'', 'acute',
-              );
-
-#
-# texinfo "simple things" (@foo) to HTML ones
-#
-%simple_map = (
-              # cf. makeinfo.c
-              "*", "<BR>",             # HTML+
-              " ", " ",
-              "\t", " ",
-              "-", "&#173;",   # soft hyphen
-              "\n", "\n",
-              "|", "",
-              'tab', '<\/TD><TD>',
-              # spacing commands
-              ":", "",
-              "!", "!",
-              "?", "?",
-              ".", ".",
-              "-", "",
-              );
-
-#
-# texinfo "things" (@foo{}) to HTML ones
-#
-%things_map = (
-              'TeX', 'TeX',
-              'br', '<P>',             # paragraph break
-              'bullet', '*',
-              'copyright', '(C)',
-              'dots', '<small>...<\/small>',
-              'enddots', '<small>....<\/small>',
-              'equiv', '==',
-              'error', 'error-->',
-              'expansion', '==>',
-              'minus', '-',
-              'point', '-!-',
-              'print', '-|',
-              'result', '=>',
-              'today', $T2H_TODAY,
-              'aa', '&aring;',
-              'AA', '&Aring;',
-              'ae', '&aelig;',
-              'oe', '&#156;',
-              'AE', '&AElig;',
-              'OE', '&#140;',
-              'o',  '&oslash;',
-              'O',  '&Oslash;',
-              'ss', '&szlig;',
-              'l', '\/l',
-              'L', '\/L',
-              'exclamdown', '&iexcl;',
-              'questiondown', '&iquest;',
-              'pounds', '&pound;'
-              );
-
-#
-# texinfo styles (@foo{bar}) to HTML ones
-#
-%style_map = (
-             'acronym', '&do_acronym',
-             'asis', '',
-             'b', 'B',
-             'cite', 'CITE',
-             'code', 'CODE',
-             'command', 'CODE',
-             'ctrl', '&do_ctrl',       # special case
-             'dfn', 'EM',              # DFN tag is illegal in the standard
-             'dmn', '',                # useless
-             'email', '&do_email',     # insert a clickable email address
-             'emph', 'EM',
-             'env', 'CODE',
-             'file', '"TT',            # will put quotes, cf. &apply_style
-             'i', 'I',
-             'kbd', 'KBD',
-             'key', 'KBD',
-             'math', '&do_math',
-             'option', '"SAMP',        # will put quotes, cf. &apply_style
-             'r', '',                  # unsupported
-             'samp', '"SAMP',          # will put quotes, cf. &apply_style
-             'sc', '&do_sc',           # special case
-             'strong', 'STRONG',
-             't', 'TT',
-             'titlefont', '',          # useless
-             'uref', '&do_uref',       # insert a clickable URL
-             'url', '&do_url',         # insert a clickable URL
-             'var', 'VAR',
-             'w', '',                  # unsupported
-             'H', '&do_accent',
-             'dotaccent', '&do_accent',
-             'ringaccent','&do_accent',
-             'tieaccent', '&do_accent',
-             'u','&do_accent',
-             'ubaraccent','&do_accent',
-             'udotaccent','&do_accent',
-             'v', '&do_accent',
-             ',', '&do_accent',
-             'dotless', '&do_accent'
-             );
-
-#
-# texinfo format (@foo/@end foo) to HTML ones
-#
-%format_map = (
-              'quotation', 'BLOCKQUOTE',
-              # lists
-              'itemize', 'UL',
-              'enumerate', 'OL',
-              # poorly supported
-              'flushleft', 'PRE',
-              'flushright', 'PRE',
-              );
-
-#
-# an eval of these $complex_format_map->{what}->[0] yields beginning
-# an eval of these $complex_format_map->{what}->[1] yieleds end
-$complex_format_map =
-{
- example => 
- [
-  q{"<TABLE><tr>$T2H_EXAMPLE_INDENT_CELL<td class=example><pre>"},
-  q{'</pre></td></tr></table>'}
- ],
- smallexample => 
- [
-  q{"<TABLE><tr>$T2H_SMALL_EXAMPLE_INDENT_CELL<td class=smallexample><FONT SIZE=$T2H_SMALL_FONT_SIZE><pre>"},
-  q{'</FONT></pre></td></tr></table>'}
- ],
- display =>
- [
-  q{"<TABLE><tr>$T2H_EXAMPLE_INDENT_CELL<td class=display><pre " . 'style="font-family: serif">'},
-  q{'</pre></td></tr></table>'}
- ],
- smalldisplay =>
- [
-  q{"<TABLE><tr>$T2H_SMALL_EXAMPLE_INDENT_CELL<td class=smalldisplay><FONT SIZE=$T2H_SMALL_FONT_SIZE><pre " . 'style="font-family: serif">'},
-  q{'</pre></FONT></td></tr></table>'}
- ]
-};
-
-$complex_format_map->{lisp} = $complex_format_map->{example};
-$complex_format_map->{smalllisp} = $complex_format_map->{smallexample};
-$complex_format_map->{format} = $complex_format_map->{display};
-$complex_format_map->{smallformat} = $complex_format_map->{smalldisplay};
-
-#
-# texinfo definition shortcuts to real ones
-#
-%def_map = (
-           # basic commands
-           'deffn', 0,
-           'defvr', 0,
-           'deftypefn', 0,
-           'deftypevr', 0,
-           'defcv', 0,
-           'defop', 0,
-           'deftp', 0,
-           # basic x commands
-           'deffnx', 0,
-           'defvrx', 0,
-           'deftypefnx', 0,
-           'deftypevrx', 0,
-           'defcvx', 0,
-           'defopx', 0,
-           'deftpx', 0,
-           # shortcuts
-           'defun', 'deffn Function',
-           'defmac', 'deffn Macro',
-           'defspec', 'deffn {Special Form}',
-           'defvar', 'defvr Variable',
-           'defopt', 'defvr {User Option}',
-           'deftypefun', 'deftypefn Function',
-           'deftypevar', 'deftypevr Variable',
-           'defivar', 'defcv {Instance Variable}',
-           'deftypeivar', 'defcv {Instance Variable}', # NEW: FIXME
-           'defmethod', 'defop Method',
-           'deftypemethod', 'defop Method', # NEW:FIXME
-           # x shortcuts
-           'defunx', 'deffnx Function',
-           'defmacx', 'deffnx Macro',
-           'defspecx', 'deffnx {Special Form}',
-           'defvarx', 'defvrx Variable',
-           'defoptx', 'defvrx {User Option}',
-           'deftypefunx', 'deftypefnx Function',
-           'deftypevarx', 'deftypevrx Variable',
-           'defivarx', 'defcvx {Instance Variable}',
-           'defmethodx', 'defopx Method',
-           );
-
-#
-# things to skip
-#
-%to_skip = (
-           # comments
-           'c', 1,
-           'comment', 1,
-            'ifnotinfo', 1,
-            'ifnottex', 1,
-           'ifhtml', 1,
-           'end ifhtml', 1,
-            'end ifnotinfo', 1,
-            'end ifnottex', 1,
-           # useless
-           'detailmenu', 1,
-            'direntry', 1,
-           'contents', 1,
-           'shortcontents', 1,
-           'summarycontents', 1,
-           'footnotestyle', 1,
-           'end ifclear', 1,
-           'end ifset', 1,
-           'titlepage', 1,
-           'end titlepage', 1,
-           # unsupported commands (formatting)
-           'afourpaper', 1,
-           'cropmarks', 1,
-           'finalout', 1,
-           'headings', 1,
-            'sp', 1,
-           'need', 1,
-           'page', 1,
-           'setchapternewpage', 1,
-           'everyheading', 1,
-           'everyfooting', 1,
-           'evenheading', 1,
-           'evenfooting', 1,
-           'oddheading', 1,
-           'oddfooting', 1,
-           'smallbook', 1,
-           'vskip', 1,
-           'filbreak', 1,
-           'paragraphindent', 1,
-           # unsupported formats
-           'cartouche', 1,
-           'end cartouche', 1,
-           'group', 1,
-           'end group', 1,
-           );
-
-#+++############################################################################
-#                                                                              #
-# Argument parsing, initialisation                                             #
-#                                                                              #
-#---############################################################################
-
-#
-# flush stdout and stderr after every write
-#
-select(STDERR);
-$| = 1;
-select(STDOUT);
-$| = 1;
-
-
-%value = ();                           # hold texinfo variables, see also -D
-$use_bibliography = 1;
-$use_acc = 1;
-
-#
-# called on -init-file
-sub LoadInitFile
-{
-  my $init_file = shift;
-  # second argument is value of options
-  $init_file = shift;
-  if (-f $init_file)
-  {
-    print "# reading initialization file from $init_file\n" 
-      if ($T2H_VERBOSE);
-    require($init_file);
-  }
-  else
-  {
-    print "$ERROR Error: can't read init file $int_file\n";
-    $init_file = '';
-  }
-}
-
-#
-# called on -lang
-sub SetDocumentLanguage
-{
-  my $lang = shift;
-  if (! exists($T2H_WORDS->{$lang}))
-  {
-    warn "$ERROR: Language specs for '$lang' do not exists. Reverting to '" . 
-      ($T2H_LANG ? T2H_LANG : "en") . "'\n";
-  }
-  else
-  {
-    print "# using '$lang' as document language\n" if ($T2H_VERBOSE);
-    $T2H_LANG = $lang;
-  }
-}
-
-##
-## obsolete cmd line options
-##
-$T2H_OBSOLETE_OPTIONS -> {'no-section_navigation'} =
-{
- type => '!',
- linkage => sub {$main::T2H_SECTION_NAVIGATION = 0;},
- verbose => 'obsolete, use -nosec_nav',
- noHelp => 2,
-};
-$T2H_OBSOLETE_OPTIONS -> {use_acc} =
-{
- type => '!',
- linkage => \$use_acc,
- verbose => 'obsolete',
- noHelp => 2
-};
-$T2H_OBSOLETE_OPTIONS -> {expandinfo} =
-{
- type => '!',
- linkage => sub {$main::T2H_EXPAND = 'info';},
- verbose => 'obsolete, use "-expand info" instead',
- noHelp => 2,
-};
-$T2H_OBSOLETE_OPTIONS -> {expandtex} =
-{
- type => '!',
- linkage => sub {$main::T2H_EXPAND = 'tex';},
- verbose => 'obsolete, use "-expand tex" instead',
- noHelp => 2,
-};
-$T2H_OBSOLETE_OPTIONS -> {monolithic} =
-{
- type => '!',
- linkage => sub {$main::T2H_SPLIT = '';},
- verbose => 'obsolete, use "-split no" instead',
- noHelp => 2
-};
-$T2H_OBSOLETE_OPTIONS -> {split_node} =
-{
- type => '!',
- linkage => sub{$main::T2H_SPLIT = 'section';},
- verbose => 'obsolete, use "-split section" instead',
- noHelp => 2,
-};
-$T2H_OBSOLETE_OPTIONS -> {split_chapter} =
-{
- type => '!',
- linkage => sub{$main::T2H_SPLIT = 'chapter';},
- verbose => 'obsolete, use "-split chapter" instead',
- noHelp => 2,
-};
-$T2H_OBSOLETE_OPTIONS -> {no_verbose} =
-{
- type => '!',
- linkage => sub {$main::T2H_VERBOSE = 0;},
- verbose => 'obsolete, use -noverbose instead',
- noHelp => 2,
-};
-$T2H_OBSOLETE_OPTIONS -> {output_file} =
-{
- type => '=s',
- linkage => sub {$main::T2H_OUT = @_[1]; $T2H_SPLIT = '';},
- verbose => 'obsolete, use -out_file instead',
- noHelp => 2
-};
-
-$T2H_OBSOLETE_OPTIONS -> {section_navigation} =
-{
- type => '!',
- linkage => \$T2H_SECTION_NAVIGATION,
- verbose => 'obsolete, use -sec_nav instead',
- noHelp => 2,
-};
-
-$T2H_OBSOLETE_OPTIONS -> {verbose} =
-{
- type => '!',
- linkage => \$T2H_VERBOSE,
- verbose => 'obsolete, use -Verbose instead',
- noHelp => 2
-};
-
-# read initialzation from $sysconfdir/texi2htmlrc or $HOME/.texi2htmlrc
-my $home = $ENV{HOME};
-defined($home) or $home = '';
-foreach $i ('/usr/local/etc/texi2htmlrc', "$home/.texi2htmlrc") {
-    if (-f $i) {
-       print "# reading initialization file from $i\n" 
-           if ($T2H_VERBOSE);
-       require($i);
-    }
-}
-
-
-#+++############################################################################
-#                                                                              #
-# parse command-line options
-#                                                                              #
-#---############################################################################
-$T2H_USAGE_TEXT = <<EOT;
-Usage: texi2html  [OPTIONS] TEXINFO-FILE
-Translates Texinfo source documentation to HTML.
-EOT
-$T2H_FAILURE_TEXT = <<EOT;
-Try 'texi2html -help' for usage instructions.
-EOT
-$options = new Getopt::MySimple;
-
-# some older version of GetOpt::Long don't have 
-# Getopt::Long::Configure("pass_through")
-eval {Getopt::Long::Configure("pass_through");};
-$Configure_failed = $@ && <<EOT;
-**WARNING: Parsing of obsolete command-line options could have failed. 
-           Consider to use only documented command-line options (run
-           'texi2html -help 2' for a complete list) or upgrade to perl 
-           version 5.005 or higher.
-EOT
-
-if (! $options->getOptions($T2H_OPTIONS, $T2H_USAGE_TEXT, "$THISVERSION\n"))
-{
-  print $Configure_failed if $Configure_failed;
-  die $T2H_FAILURE_TEXT;
-}
-
-if (@ARGV > 1)
-{
-  eval {Getopt::Long::Configure("no_pass_through");};
-  if (! $options->getOptions($T2H_OBSOLETE_OPTIONS, $T2H_USAGE_TEXT, "$THISVERSION\n"))
-  {
-    print $Configure_failed if $Configure_failed;
-    die $T2H_FAILURE_TEXT;
-  }
-}
-
-if ($T2H_CHECK) {
-    die "Need file to check\n$T2H_FAILURE_TEXT" unless @ARGV > 0;
-    &check;
-    exit;
-}
-
-#+++############################################################################
-#                                                                              #
-# evaluation of cmd line options
-#                                                                              #
-#---############################################################################
-
-if ($T2H_EXPAND eq 'info') 
-{
-  $to_skip{'ifinfo'} = 1;
-  $to_skip{'end ifinfo'} = 1;
-} 
-elsif ($T2H_EXPAND eq 'tex')
-{
-  $to_skip{'iftex'} = 1;
-  $to_skip{'end iftex'} = 1;
-  
-}
-
-$T2H_INVISIBLE_MARK = '<IMG SRC="invisible.xbm">' if $T2H_INVISIBLE_MARK eq 'xbm';
-
-#
-# file name buisness
-#
-die "Need exactly one file to translate\n$T2H_FAILURE_TEXT" unless @ARGV == 1;
-$docu = shift(@ARGV);
-if ($docu =~ /.*\//) {
-    chop($docu_dir = $&);
-    $docu_name = $';
-} else {
-    $docu_dir = '.';
-    $docu_name = $docu;
-}
-unshift(@T2H_INCLUDE_DIRS, $docu_dir);
-$docu_name =~ s/\.te?x(i|info)?$//;    # basename of the document
-$docu_name = $T2H_PREFIX if ($T2H_PREFIX);
-
-# subdir
-if ($T2H_SUBDIR && ! $T2H_OUT)
-{
-  $T2H_SUBDIR =~ s|/*$||;
-  unless (-d "$T2H_SUBDIR" && -w "$T2H_SUBDIR")
-  {
-    if ( mkdir($T2H_SUBDIR, oct(755)))
-    {
-      print "# created directory $T2H_SUBDIR\n" if ($T2H_VERBOSE);
-    }
-    else
-    {
-      warn "$ERROR can't create directory $T2H_SUBDIR. Put results into current directory\n";
-      $T2H_SUBDIR = '';
-    }
-  }
-}
-
-if ($T2H_SUBDIR && ! $T2H_OUT)
-{
-  $docu_rdir = "$T2H_SUBDIR/";
-  print "# putting result files into directory $docu_rdir\n" if ($T2H_VERBOSE);
-}
-else
-{
-  if ($T2H_OUT && $T2H_OUT =~ m|(.*)/|)
-  {
-    $docu_rdir = "$1/";
-    print "# putting result files into directory $docu_rdir\n" if ($T2H_VERBOSE);
-  }
-  else
-  {
-    print "# putting result files into current directory \n" if ($T2H_VERBOSE);
-    $docu_rdir = '';
-  }
-}
-
-# extension
-if ($T2H_SHORTEXTN)
-{
-  $docu_ext = "htm";
-}
-else
-{
-  $docu_ext = "html";
-}
-if ($T2H_TOP_FILE =~ /\..*$/)
-{
-  $T2H_TOP_FILE = $`.".$docu_ext";
-}
-
-# result files
-if (! $T2H_OUT && ($T2H_SPLIT =~ /section/i || $T2H_SPLIT =~ /node/i))
-{
-  $T2H_SPLIT = 'section';
-}
-elsif (! $T2H_OUT && $T2H_SPLIT =~ /chapter/i)
-{
-  $T2H_SPLIT = 'chapter'
-}
-else
-{
-  undef $T2H_SPLIT;
-}
-
-$docu_doc = "$docu_name.$docu_ext";            # document's contents
-$docu_doc_file = "$docu_rdir$docu_doc";
-if ($T2H_SPLIT) 
-{
-  $docu_toc  = $T2H_TOC_FILE || "${docu_name}_toc.$docu_ext"; # document's table of contents
-  $docu_stoc = "${docu_name}_ovr.$docu_ext"; # document's short toc
-  $docu_foot = "${docu_name}_fot.$docu_ext"; # document's footnotes
-  $docu_about = "${docu_name}_abt.$docu_ext"; # about this document
-  $docu_top  = $T2H_TOP_FILE || $docu_doc;
-}
-else
-{
-  if ($T2H_OUT)
-  {
-    $docu_doc = $T2H_OUT;
-    $docu_doc =~ s|.*/||;
-  }
-  $docu_toc = $docu_foot = $docu_stoc = $docu_about = $docu_top = $docu_doc;
-}
-
-$docu_toc_file  = "$docu_rdir$docu_toc";
-$docu_stoc_file = "$docu_rdir$docu_stoc";
-$docu_foot_file = "$docu_rdir$docu_foot";
-$docu_about_file = "$docu_rdir$docu_about";
-$docu_top_file  = "$docu_rdir$docu_top";
-
-$docu_frame_file =     "$docu_rdir${docu_name}_frame.$docu_ext";
-$docu_toc_frame_file = "$docu_rdir${docu_name}_toc_frame.$docu_ext";
-
-#
-# variables
-#
-$value{'html'} = 1;                    # predefine html (the output format)
-$value{'texi2html'} = $THISVERSION;    # predefine texi2html (the translator)
-# _foo: internal to track @foo
-foreach ('_author', '_title', '_subtitle',
-        '_settitle', '_setfilename', '_shorttitle') {
-    $value{$_} = '';                   # prevent -w warnings
-}
-%node2sec = ();                                # node to section name
-%sec2node = ();                                # section to node name
-%sec2number = ();                       # section to number
-%number2sec = ();                       # number to section 
-%idx2node = ();                         # index keys to node
-%node2href = ();                       # node to HREF
-%node2next = ();                       # node to next
-%node2prev = ();                       # node to prev
-%node2up   = ();                       # node to up
-%bib2href = ();                                # bibliography reference to HREF
-%gloss2href = ();                      # glossary term to HREF
-@sections = ();                                # list of sections
-%tag2pro = ();                         # protected sections
-
-#
-# initial indexes
-#
-$bib_num = 0;
-$foot_num = 0;
-$gloss_num = 0;
-$idx_num = 0;
-$sec_num = 0;
-$doc_num = 0;
-$html_num = 0;
-
-#
-# can I use ISO8879 characters? (HTML+)
-#
-if ($T2H_USE_ISO) {
-    $things_map{'bullet'} = "&bull;";
-    $things_map{'copyright'} = "&copy;";
-    $things_map{'dots'} = "&hellip;";
-    $things_map{'equiv'} = "&equiv;";
-    $things_map{'expansion'} = "&rarr;";
-    $things_map{'point'} = "&lowast;";
-    $things_map{'result'} = "&rArr;";
-}
-
-#
-# read texi2html extensions (if any)
-#
-$extensions = 'texi2html.ext'; # extensions in working directory
-if (-f $extensions) {
-    print "# reading extensions from $extensions\n" if $T2H_VERBOSE;
-    require($extensions);
-}
-($progdir = $0) =~ s/[^\/]+$//;
-if ($progdir && ($progdir ne './')) {
-    $extensions = "${progdir}texi2html.ext"; # extensions in texi2html directory
-    if (-f $extensions) {
-       print "# reading extensions from $extensions\n" if $T2H_VERBOSE;
-       require($extensions);
-    }
-}
-
-
-print "# reading from $docu\n" if $T2H_VERBOSE;
-
-#########################################################################
-#
-# latex2html stuff
-# 
-# latex2html conversions consist of three stages:
-# 1) ToLatex: Put "latex" code into a latex file
-# 2) ToHtml: Use latex2html to generate corresponding html code and images
-# 3) FromHtml: Extract generated code and images from latex2html run
-#
-
-##########################
-# default settings
-#
-
-# defaults for files and names
-
-sub l2h_Init 
-{
-  local($root) = @_;
-  
-  return 0 unless ($root);
-  
-  $l2h_name =  "${root}_l2h";
-  
-  $l2h_latex_file = "$docu_rdir${l2h_name}.tex";
-  $l2h_cache_file = "${docu_rdir}l2h_cache.pm";
-  $T2H_L2H_L2H = "latex2html" unless ($T2H_L2H_L2H);
-  
-  # destination dir -- generated images are put there, should be the same
-  # as dir of enclosing html document -- 
-  $l2h_html_file = "$docu_rdir${l2h_name}.html";
-  $l2h_prefix = "${l2h_name}_";
-  return 1;
-}
-
-
-##########################
-# 
-# First stage: Generation of Latex file
-# Initialize with: l2h_InitToLatex
-# Add content with: l2h_ToLatex($text) --> HTML placeholder comment
-# Finish with: l2h_FinishToLatex
-# 
-
-$l2h_latex_preample = <<EOT;
-% This document was automatically generated by the l2h extenstion of texi2html
-% DO NOT EDIT !!!
-\\documentclass{article}
-\\usepackage{html}
-\\begin{document}
-EOT
-
-$l2h_latex_closing = <<EOT;
-\\end{document}
-EOT
-
-# return used latex 1, if l2h could be initalized properly, 0 otherwise
-sub l2h_InitToLatex
-{
-  %l2h_to_latex = ();
-  unless ($T2H_L2H_SKIP)
-  {
-    unless (open(L2H_LATEX, ">$l2h_latex_file"))
-    {
-      warn "$ERROR Error l2h: Can't open latex file '$latex_file' for writing\n";
-      return 0;
-    }  
-    print "# l2h: use ${l2h_latex_file} as latex file\n" if ($T2H_VERBOSE);
-    print L2H_LATEX $l2h_latex_preample;
-  }
-  # open database for caching
-  l2h_InitCache();
-  $l2h_latex_count = 0;
-  $l2h_to_latex_count = 0;
-  $l2h_cached_count = 0;
-  return  1;
-}
-
-# print text (1st arg) into latex file (if not already there), return
-# HTML commentary which can be later on replaced by the latex2html
-# generated text
-sub l2h_ToLatex
-{
-  my($text) = @_;
-  my($count);
-  
-  $l2h_to_latex_count++;
-  $text =~ s/(\s*)$//;
-  
-  # try whether we can cache it
-  my $cached_text = l2h_FromCache($text);
-  if ($cached_text)
-  {
-    $l2h_cached_count++;
-    return $cached_text;
-  }
-  
-  # try whether we have text already on things to do
-  unless ($count = $l2h_to_latex{$text})
-  {
-    $count = $l2h_latex_count;
-    $l2h_latex_count++;
-    $l2h_to_latex{$text} = $count;
-    $l2h_to_latex[$count] = $text;
-    unless ($T2H_L2H_SKIP)
-    {
-      print L2H_LATEX "\\begin{rawhtml}\n";
-      print L2H_LATEX "<!-- l2h_begin ${l2h_name} ${count} -->\n";
-      print L2H_LATEX "\\end{rawhtml}\n";
-      
-      print L2H_LATEX "$text\n";
-      
-      print L2H_LATEX "\\begin{rawhtml}\n";
-      print L2H_LATEX "<!-- l2h_end ${l2h_name} ${count} -->\n";
-      print L2H_LATEX "\\end{rawhtml}\n";
-    }
-  }
-  return "<!-- l2h_replace ${l2h_name} ${count} -->"; 
-}
-
-# print closing into latex file and close it
-sub l2h_FinishToLatex
-{
-  local ($reused);
-  
-  $reused = $l2h_to_latex_count - $l2h_latex_count - $l2h_cached_count;
-  unless ($T2H_L2H_SKIP)
-  {
-    print L2H_LATEX $l2h_latex_closing;
-    close(L2H_LATEX);
-  }
-  print "# l2h: finished to latex ($l2h_cached_count cached, $reused reused, $l2h_latex_count contents)\n" if ($T2H_VERBOSE);
-  unless ($l2h_latex_count)
-  {
-    l2h_Finish();
-    return 0;
-  }
-  return 1;
-}
-
-###################################
-# Second stage: Use latex2html to generate corresponding html code and images
-#
-# l2h_ToHtml([$l2h_latex_file, [$l2h_html_dir]]):
-#   Call latex2html on $l2h_latex_file
-#   Put images (prefixed with $l2h_name."_") and html file(s) in $l2h_html_dir
-#   Return 1, on success
-#          0, otherwise
-#
-sub l2h_ToHtml
-{
-  local($call, $ext, $root, $dotbug);
-  
-  if ($T2H_L2H_SKIP)
-  {
-    print "# l2h: skipping latex2html run\n" if ($T2H_VERBOSE);
-    return 1;
-  }
-  
-  # Check for dot in directory where dvips will work
-  if ($T2H_L2H_TMP)
-  {
-    if ($T2H_L2H_TMP =~ /\./)
-    {
-      warn "$ERROR Warning l2h: l2h_tmp dir contains a dot. Use /tmp, instead\n";
-      $dotbug = 1;
-    }
-  }
-  else
-  {
-    if (&getcwd =~ /\./)
-    {
-     warn "$ERROR Warning l2h: current dir contains a dot. Use /tmp as l2h_tmp dir \n";
-     $dotbug = 1;
-   }
-  }
-  # fix it, if necessary and hope that it works 
-  $T2H_L2H_TMP = "/tmp" if ($dotbug);
-    
-  $call = $T2H_L2H_L2H;
-  # use init file, if specified
-  $call = $call . " -init_file " . $init_file if ($init_file && -f $init_file);
-  # set output dir
-  $call .=  ($docu_rdir ? " -dir $docu_rdir" : " -no_subdir");
-  # use l2h_tmp, if specified
-  $call = $call . " -tmp $T2H_L2H_TMP" if ($T2H_L2H_TMP);
-  # options we want to be sure of
-  $call = $call ." -address 0 -info 0 -split 0 -no_navigation -no_auto_link";
-  $call = $call ." -prefix ${l2h_prefix} $l2h_latex_file"; 
-
-  print "# l2h: executing '$call'\n" if ($T2H_VERBOSE);
-  if (system($call))
-  {
-    warn "l2h ***Error: '${call}' did not succeed\n";
-    return 0;
-  }
-  else
-  {
-    print "# l2h: latex2html finished successfully\n" if ($T2H_VERBOSE);
-    return 1;
-  }
-}
-
-# this is directly pasted over from latex2html
-sub getcwd {
-    local($_) = `pwd`;
-
-    die "'pwd' failed (out of memory?)\n"
-       unless length;
-    chop;
-    $_;
-}
-
-
-##########################
-# Third stage: Extract generated contents from latex2html run
-# Initialize with: l2h_InitFromHtml
-#   open $l2h_html_file for reading
-#   reads in contents into array indexed by numbers
-#   return 1,  on success -- 0, otherwise
-# Extract Html code with: l2h_FromHtml($text)
-#   replaces in $text all previosuly inserted comments by generated html code
-#   returns (possibly changed) $text
-# Finish with: l2h_FinishFromHtml
-#   closes $l2h_html_dir/$l2h_name.".$docu_ext" 
-
-sub l2h_InitFromHtml
-{
-  local($h_line, $h_content, $count, %l2h_img);
-
-  if (! open(L2H_HTML, "<${l2h_html_file}"))
-  {
-    print "$ERROR Error l2h: Can't open ${l2h_html_file} for reading\n";
-    return 0;
-  }
-  print "# l2h: use ${l2h_html_file} as html file\n" if ($T2H_VERBOSE);
-
-  $l2h_html_count = 0;
-  
-  while ($h_line = <L2H_HTML>)
-  {
-    if ($h_line =~ /^<!-- l2h_begin $l2h_name ([0-9]+) -->/)
-    {
-      $count = $1;
-      $h_content = "";
-      while ($h_line = <L2H_HTML>)
-      {
-       if ($h_line =~ /^<!-- l2h_end $l2h_name $count -->/)
-       {
-         chomp $h_content;
-         chomp $h_content;
-         $l2h_html_count++;
-         $h_content = l2h_ToCache($count, $h_content);
-         $l2h_from_html[$count] = $h_content;
-         $h_content = '';
-         last;
-       }
-       $h_content = $h_content.$h_line;
-      }
-      if ($hcontent)
-      {
-       print "$ERROR Warning l2h: l2h_end $l2h_name $count not found\n" 
-         if ($T2H_VERBOSE);
-       close(L2H_HTML);
-       return 0;
-      }
-    }
-  }
-  print "# l2h: Got $l2h_html_count of $l2h_latex_count html contents\n"
-    if ($T2H_VERBOSE);
-
-  close(L2H_HTML);
-  return 1;
-}
-
-sub l2h_FromHtml
-{
-  local($text) = @_;
-  local($done, $to_do, $count);
-  
-  $to_do = $text;
-  
-  while ($to_do =~ /([^\000]*)<!-- l2h_replace $l2h_name ([0-9]+) -->([^\000]*)/)
-  {
-    $to_do = $1;
-    $count = $2;
-    $done = $3.$done;
-    
-    $done = "<!-- l2h_end $l2h_name $count -->".$done
-      if ($T2H_DEBUG & $DEBUG_L2H);
-
-    $done = &l2h_ExtractFromHtml($count) . $done;
-
-    $done = "<!-- l2h_begin $l2h_name $count -->".$done
-      if ($T2H_DEBUG & $DEBUG_L2H);
-  }
-  return $to_do.$done;
-}
-
-
-sub l2h_ExtractFromHtml
-{
-  local($count) = @_;
-  
-  return $l2h_from_html[$count] if ($l2h_from_html[$count]);
-  
-  if ($count >= 0 && $count < $l2h_latex_count)
-  {
-    # now we are in trouble
-    local($l_l2h, $_);
-
-    $l2h_extract_error++;
-    print "$ERROR l2h: can't extract content $count from html\n" 
-      if ($T2H_VERBOSE);
-    # try simple (ordinary) substition (without l2h)
-    $l_l2h = $T2H_L2H;
-    $T2H_L2H = 0;
-    $_ = $l2h_to_latex{$count};
-    $_ = &substitute_style($_); 
-    &unprotect_texi;
-    $_ = "<!-- l2h: ". __LINE__ . " use texi2html -->" . $_
-      if ($T2H_DEBUG & $DEBUG_L2H);
-    $T2H_L2H = $l_l2h;
-    return $_;
-  }
-  else
-  {
-    # now we have been incorrectly called
-    $l2h_range_error++;
-    print "$ERROR l2h: Request of $count content which is out of valide range [0,$l2h_latex_count)\n";
-    return "<!-- l2h: ". __LINE__ . " out of range count $count -->"
-      if ($T2H_DEBUG & $DEBUG_L2H);
-    return "<!-- l2h: out of range count $count -->";
-  }
-}
-    
-sub l2h_FinishFromHtml
-{
-  if ($T2H_VERBOSE)
-  {
-    if ($l2h_extract_error + $l2h_range_error)
-    {
-      print "# l2h: finished from html ($l2h_extract_error extract and $l2h_range_error errors)\n";
-    }
-    else
-    {
-      print "# l2h: finished from html (no errors)\n";
-    }
-  }
-}
-
-sub l2h_Finish
-{
-  l2h_StoreCache();
-  if ($T2H_L2H_CLEAN)
-  {
-    print "# l2h: removing temporary files generated by l2h extension\n"
-      if $T2H_VERBOSE;
-    while (<"$docu_rdir$l2h_name"*>)
-    {
-      unlink $_;
-    }
-  }
-  print "# l2h: Finished\n" if $T2H_VERBOSE;
-  return 1;
-}
-
-##############################
-# stuff for l2h caching
-#
-
-# I tried doing this with a dbm data base, but it did not store all
-# keys/values. Hence, I did as latex2html does it
-sub l2h_InitCache
-{
-  if (-r "$l2h_cache_file")
-  {
-    my $rdo = do "$l2h_cache_file";
-    warn("$ERROR l2h Error: could not load $docu_rdir$l2h_cache_file: $@\n")
-      unless ($rdo);
-  }
-}
-
-sub l2h_StoreCache
-{
-  return unless $l2h_latex_count;
-  
-  my ($key, $value);
-  open(FH, ">$l2h_cache_file") || return warn"$ERROR l2h Error: could not open $docu_rdir$l2h_cache_file for writing: $!\n";
-
-  
-  while (($key, $value) = each %l2h_cache)
-  {
-    # escape stuff
-    $key =~ s|/|\\/|g;
-    $key =~ s|\\\\/|\\/|g;
-    # weird, a \ at the end of the key results in an error
-    # maybe this also broke the dbm database stuff
-    $key =~ s|\\$|\\\\|;
-    $value =~ s/\|/\\\|/g; 
-    $value =~ s/\\\\\|/\\\|/g; 
-    $value =~ s|\\\\|\\\\\\\\|g;
-    print FH "\n\$l2h_cache_key = q/$key/;\n";
-    print FH "\$l2h_cache{\$l2h_cache_key} = q|$value|;\n";
-  }
-  print FH "1;";
-  close(FH);
-}
-
-# return cached html, if it exists for text, and if all pictures
-# are there, as well
-sub l2h_FromCache
-{
-  my $text = shift;
-  my $cached = $l2h_cache{$text};
-  if ($cached)
-  {
-    while ($cached =~ m/SRC="(.*?)"/g)
-    {
-      unless (-e "$docu_rdir$1")
-      {
-       return undef;
-      }
-    }
-    return $cached;
-  }
-  return undef;
-}
-
-# insert generated html into cache, move away images, 
-# return transformed html
-$maximage = 1;
-sub l2h_ToCache
-{
-  my $count = shift;
-  my $content = shift;
-  my @images = ($content =~ /SRC="(.*?)"/g);
-  my ($src, $dest);
-
-  for $src (@images)
-  {
-    $dest = $l2h_img{$src};
-    unless ($dest)
-    {
-      my $ext;
-      if ($src =~ /.*\.(.*)$/ && $1 ne $docu_ext)
-      {
-       $ext = $1;
-      }
-      else
-      {
-       warn "$ERROR: L2h image $src has invalid extension\n";
-       next;
-      }
-      while (-e "$docu_rdir${docu_name}_$maximage.$ext") { $maximage++;}
-      $dest = "${docu_name}_$maximage.$ext";
-      system("cp -f $docu_rdir$src $docu_rdir$dest");
-      $l2h_img{$src} = $dest;
-      unlink "$docu_rdir$src" unless ($DEBUG & DEBUG_L2H);
-    }
-    $content =~ s/$src/$dest/g;
-  }
-  $l2h_cache{$l2h_to_latex[$count]} = $content;
-  return $content;
-}
-
-
-#+++############################################################################
-#                                                                              #
-# Pass 1: read source, handle command, variable, simple substitution           #
-#                                                                              #
-#---############################################################################
-
-@lines = ();                           # whole document
-@toc_lines = ();                       # table of contents
-@stoc_lines = ();                      # table of contents
-$curlevel = 0;                         # current level in TOC
-$node = '';                            # current node name
-$node_next = '';                        # current node next name               
-$node_prev = '';                        # current node prev name
-$node_up = '';                          # current node up name
-$in_table = 0;                         # am I inside a table
-$table_type = '';                      # type of table ('', 'f', 'v', 'multi')
-@tables = ();                          # nested table support
-$in_bibliography = 0;                  # am I inside a bibliography
-$in_glossary = 0;                      # am I inside a glossary
-$in_top = 0;                           # am I inside the top node
-$has_top = 0;                          # did I see a top node?
-$has_top_command = 0;                  # did I see @top for automatic pointers?
-$in_pre = 0;                           # am I inside a preformatted section
-$in_list = 0;                          # am I inside a list
-$in_html = 0;                          # am I inside an HTML section
-$first_line = 1;                       # is it the first line
-$dont_html = 0;                                # don't protect HTML on this line
-$deferred_ref = '';                    # deferred reference for indexes
-@html_stack = ();                      # HTML elements stack
-$html_element = '';                    # current HTML element
-&html_reset;
-%macros = ();                           # macros
-
-# init l2h
-$T2H_L2H = &l2h_Init($docu_name) if ($T2H_L2H);
-$T2H_L2H = &l2h_InitToLatex      if ($T2H_L2H);    
-
-# build code for simple substitutions
-# the maps used (%simple_map and %things_map) MUST be aware of this
-# watch out for regexps, / and escaped characters!
-$subst_code = '';
-foreach (keys(%simple_map)) {
-    ($re = $_) =~ s/(\W)/\\$1/g; # protect regexp chars
-    $subst_code .= "s/\\\@$re/$simple_map{$_}/g;\n";
-}
-foreach (keys(%things_map)) {
-    $subst_code .= "s/\\\@$_\\{\\}/$things_map{$_}/g;\n";
-}
-if ($use_acc) {
-    # accentuated characters
-    foreach (keys(%accent_map)) {
-       if ($_ eq "`") {
-           $subst_code .= "s/$;3";
-       } elsif ($_ eq "'") {
-           $subst_code .= "s/$;4";
-       } else {
-           $subst_code .= "s/\\\@\\$_";
-       }
-       $subst_code .= "([a-z])/&\${1}$accent_map{$_};/gi;\n";
-    }
-}
-eval("sub simple_substitutions { $subst_code }");
-
-&init_input;
-INPUT_LINE: while ($_ = &next_line) {
-    #
-    # remove \input on the first lines only
-    #
-    if ($first_line) {
-       next if /^\\input/;
-       $first_line = 0;
-    }
-    # non-@ substitutions cf. texinfmt.el
-    #
-    # parse texinfo tags
-    #
-    $tag = '';
-    $end_tag = '';
-    if (/^\s*\@end\s+(\w+)\b/) {
-       $end_tag = $1;
-    } elsif (/^\s*\@(\w+)\b/) {
-       $tag = $1;
-    }
-    #
-    # handle @html / @end html
-    #
-    if ($in_html) {
-       if ($end_tag eq 'html') {
-           $in_html = 0;
-       } else {
-           $tag2pro{$in_html} .= $_;
-       }
-       next;
-    } elsif ($tag eq 'html') {
-       $in_html = $PROTECTTAG . ++$html_num;
-       push(@lines, $in_html);
-       next;
-    }
-
-    #
-    # try to remove inlined comments
-    # syntax from tex-mode.el comment-start-skip
-    #
-    s/((^|[^\@])(\@\@)*)\@c(omment | |\{|$).*/$1/;
-
-# Sometimes I use @c right at the end of  a line ( to suppress the line feed )
-#    s/((^|[^\@])(\@\@)*)\@c(omment)?$/$1/;
-#     s/((^|[^\@])(\@\@)*)\@c(omment)? .*/$1/;
-#     s/(.*)\@c{.*?}(.*)/$1$2/;
-#     s/(.*)\@comment{.*?}(.*)/$1$2/;
-#     s/^(.*)\@c /$1/;
-#     s/^(.*)\@comment /$1/;
-
-    #############################################################
-    # value substitution before macro expansion, so that
-    # it works in macro arguments                          
-    s/\@value{($VARRE)}/$value{$1}/eg;
-                           
-    #############################################################
-    # macro substitution
-    while (/\@(\w+)/g)
-    {
-      if (exists($macros->{$1}))    
-      {
-       my $before = $`;
-       my $name = $1;
-       my $after = $';
-       my @args;
-       my $args;
-       if ($after =~ /^\s*{(.*?[^\\])}(.*)/)  
-       {
-         $args = $1;
-         $after = $2;
-       }
-       elsif (@{$macros->{$name}->{Args}} == 1)
-       {
-         $args = $after;
-         $args =~ s/^\s*//;
-         $args =~ s/\s*$//;
-         $after = '';
-       }
-       $args =~ s|\\\\|\\|g;
-       $args =~ s|\\{|{|g;
-        $args =~ s|\\}|}|g;
-       if (@{$macros->{$name}->{Args}} > 1)
-       {
-         $args =~ s/(^|[^\\]),/$1$;/g ;
-         $args =~ s|\\,|,|g;
-         @args = split(/$;\s*/, $args) if (@{$macros->{$name}->{Args}} > 1);
-       }
-       else
-       {
-         $args =~ s|\\,|,|g;
-         @args = ($args);
-       }
-       my $macrobody = $macros->{$name}->{Body};
-       for ($i=0; $i<=$#args; $i++)
-       {
-         $macrobody =~ s|\\$macros->{$name}->{Args}->[$i]\\|$args[$i]|g;
-       }
-       $macrobody =~ s|\\\\|\\|g;
-       $_ = $before . $macrobody . $after;
-       unshift @input_spool, map {$_ = $_."\n"} split(/\n/, $_);
-       next INPUT_LINE;
-      }
-    }                          #
-                           
-    
-    #
-    # try to skip the line
-    #
-    if ($end_tag) {
-        $in_titlepage = 0 if $end_tag eq 'titlepage';
-       next if $to_skip{"end $end_tag"};
-    } elsif ($tag) {
-      $in_titlepage = 1 if $tag eq 'titlepage';
-      next if $to_skip{$tag};
-      last if $tag eq 'bye';
-    }
-    if ($in_top) {
-       # parsing the top node
-       if ($tag eq 'node' || 
-           ($sec2level{$tag} && $tag !~ /unnumbered/ && $tag !~ /heading/))
-       {
-           # no more in top
-           $in_top = 0;
-           push(@lines, $TOPEND);
-       }
-    }
-    unless ($in_pre) {
-       s/``/\"/g;
-       s/''/\"/g;
-       s/([\w ])---([\w ])/$1--$2/g;
-    }
-    #
-    # analyze the tag
-    #
-    if ($tag) {
-       # skip lines
-       &skip_until($tag), next if $tag eq 'ignore';
-       &skip_until($tag), next if $tag eq 'ifnothtml';
-       if ($tag eq 'ifinfo')
-       {
-         &skip_until($tag), next unless $T2H_EXPAND eq 'info';
-       }
-       if ($tag eq 'iftex')
-       {
-         &skip_until($tag), next unless $T2H_EXPAND eq 'tex';
-       } 
-       if ($tag eq 'tex')
-       {
-         # add to latex2html file
-         if ($T2H_EXPAND eq 'tex' && $T2H_L2H && ! $in_pre)
-         {
-           # add space to the end -- tex(i2dvi) does this, as well 
-           push(@lines, &l2h_ToLatex(&string_until($tag) . " "));
-         }
-         else
-         {
-           &skip_until($tag);
-         }
-         next;
-       }
-       if ($tag eq 'titlepage')
-       {
-         next;
-       }
-       # handle special tables
-       if ($tag =~ /^(|f|v|multi)table$/) {
-           $table_type = $1;
-           $tag = 'table';
-       }
-       # special cases
-       if ($tag eq 'top' || ($tag eq 'node' && /^\@node\s+top\s*,/i)) {
-           $in_top = 1;
-           $has_top = 1;
-           $has_top_command = 1 if $tag eq 'top';
-           @lines = (); # ignore all lines before top (title page garbage)
-           next;
-       } elsif ($tag eq 'node') {
-         if ($in_top)
-         {
-           $in_top = 0;
-           push(@lines, $TOPEND);
-         }
-         warn "$ERROR Bad node line: $_" unless $_ =~ /^\@node\s$NODESRE$/o;
-         # request of "Richard Y. Kim" <ryk@ap.com>
-         s/^\@node\s+//;
-         $_ = &protect_html($_); # if node contains '&' for instance
-         ($node, $node_next, $node_prev, $node_up) = split(/,/);
-         &normalise_node($node);
-         &normalise_node($node_next);
-         &normalise_node($node_prev);
-         &normalise_node($node_up);
-         $node =~ /\"/ ?
-           push @lines, &html_debug("<A NAME='$node'></A>\n", __LINE__) :
-           push @lines, &html_debug("<A NAME=\"$node\"></A>\n", __LINE__);
-         next;
-       } elsif ($tag eq 'include') {
-           if (/^\@include\s+($FILERE)\s*$/o) {
-               $file = LocateIncludeFile($1);
-               if ($file && -e $file) {
-                   &open($file);
-                   print "# including $file\n" if $T2H_VERBOSE;
-               } else {
-                   warn "$ERROR Can't find $1, skipping";
-               }
-           } else {
-               warn "$ERROR Bad include line: $_";
-           }
-           next;
-       } elsif ($tag eq 'ifclear') {
-           if (/^\@ifclear\s+($VARRE)\s*$/o) {
-               next unless defined($value{$1});
-               &skip_until($tag);
-           } else {
-               warn "$ERROR Bad ifclear line: $_";
-           }
-           next;
-       } elsif ($tag eq 'ifset') {
-           if (/^\@ifset\s+($VARRE)\s*$/o) {
-               next if defined($value{$1});
-               &skip_until($tag);
-           } else {
-               warn "$ERROR Bad ifset line: $_";
-           }
-           next;
-       } elsif ($tag eq 'menu') {
-           unless ($T2H_SHOW_MENU) {
-               &skip_until($tag);
-               next;
-           }
-           &html_push_if($tag);
-           push(@lines, &html_debug('', __LINE__));
-       } elsif ($format_map{$tag}) {
-           $in_pre = 1 if $format_map{$tag} eq 'PRE';
-           &html_push_if($format_map{$tag});
-           push(@lines, &html_debug('', __LINE__));
-           $in_list++ if $format_map{$tag} eq 'UL' || $format_map{$tag} eq 'OL' ;
-#          push(@lines, &debug("<BLOCKQUOTE>\n", __LINE__))
-#            if $tag =~ /example/i;
-           # sunshine@sunshineco.com: <PRE>bla</PRE> looks better than
-           # <PRE>\nbla</PRE> (at least on NeXTstep browser
-           push(@lines, &debug("<$format_map{$tag}>" . 
-                               ($in_pre ? '' : "\n"), __LINE__));
-           next;
-       }
-       elsif (exists $complex_format_map->{$tag})
-       {
-         my $start = eval $complex_format_map->{$tag}->[0];
-         if ($@)
-         {
-           print "$ERROR: eval of complex_format_map->{$tag}->[0] $complex_format_map->{$tag}->[0]: $@";
-           $start = '<pre>'
-         }
-         $in_pre = 1 if $start =~ /<pre/;
-         push(@lines, html_debug($start. ($in_pre ? '' : "\n"), __LINE__));
-         next;
-       } elsif ($tag eq 'table') {
-         # anorland@hem2.passagen.se
-         # if (/^\s*\@(|f|v|multi)table\s+\@(\w+)/) {
-            if (/^\s*\@(|f|v|multi)table\s+\@(\w+)|(\{[^\}]*\})/) {
-               $in_table = $2;
-               unshift(@tables, join($;, $table_type, $in_table));
-               if ($table_type eq "multi") {
-                   # don't use borders -- gets confused by empty cells
-                   push(@lines, &debug("<TABLE>\n", __LINE__));
-                   &html_push_if('TABLE');
-               } else {
-                   push(@lines, &debug("<DL COMPACT>\n", __LINE__));
-                   &html_push_if('DL');
-               }
-               push(@lines, &html_debug('', __LINE__));
-           } else {
-               warn "$ERROR Bad table line: $_";
-           }
-           next;
-       } 
-       elsif ($tag eq 'synindex' || $tag eq 'syncodeindex') 
-       {
-         if (/^\@$tag\s+(\w+)\s+(\w+)\s*$/) 
-         {
-           my $from = $1;
-           my $to = $2;
-           my $prefix_from = IndexName2Prefix($from);
-           my $prefix_to = IndexName2Prefix($to);
-
-           warn("$ERROR unknown from index name $from ind syn*index line: $_"), next
-             unless $prefix_from;
-           warn("$ERROR unknown to index name $to ind syn*index line: $_"), next
-             unless $prefix_to;
-
-           if ($tag eq 'syncodeindex')
-           {
-             $index_properties->{$prefix_to}->{'from_code'}->{$prefix_from} = 1;
-           }
-           else
-           {
-              $index_properties->{$prefix_to}->{'from'}->{$prefix_from} = 1;
-           }
-         } 
-         else 
-         {
-           warn "$ERROR Bad syn*index line: $_";
-         }
-         next;
-       } 
-       elsif ($tag eq 'defindex' || $tag eq 'defcodeindex') 
-       {
-         if (/^\@$tag\s+(\w+)\s*$/) 
-         {
-           my $name = $1;
-           $index_properties->{$name}->{name} = $name;
-           $index_properties->{$name}->{code} = 1 if $tag eq 'defcodeindex';
-         } 
-         else 
-         {
-           warn "$ERROR Bad defindex line: $_";
-         }
-         next;
-       }
-       elsif (/^\@printindex/)
-       {
-         push (@lines, "<!--::${section}::-->$_");
-         next;
-       }
-       elsif ($tag eq 'sp') {
-           push(@lines, &debug("<P>\n", __LINE__));
-           next;
-       } elsif ($tag eq 'center') {
-           push(@lines, &debug("<center>\n", __LINE__));
-           s/\@center//;
-       } elsif ($tag eq 'setref') {
-           &protect_html; # if setref contains '&' for instance
-           if (/^\@$tag\s*{($NODERE)}\s*$/) {
-               $setref = $1;
-               $setref =~ s/\s+/ /g; # normalize
-               $setref =~ s/ $//;
-               $node2sec{$setref} = $name;
-               $sec2node{$name} = $setref;
-               $node2href{$setref} = "$docu_doc#$docid";
-           } else {
-               warn "$ERROR Bad setref line: $_";
-           }
-           next;
-       } elsif ($tag eq 'lowersections') {
-           local ($sec, $level);
-           while (($sec, $level) = each %sec2level) {
-               $sec2level{$sec} = $level + 1;
-           }
-           next;
-       } elsif ($tag eq 'raisesections') {
-           local ($sec, $level);
-           while (($sec, $level) = each %sec2level) {
-               $sec2level{$sec} = $level - 1;
-           }
-           next;
-       }
-       elsif ($tag eq 'macro' || $tag eq 'rmacro')
-       {
-         if (/^\@$tag\s*(\w+)\s*(.*)/)
-         {
-           my $name = $1;
-           my @args;
-           @args = split(/\s*,\s*/ , $1)
-             if ($2 =~ /^\s*{(.*)}\s*/);
-           
-           $macros->{$name}->{Args} = \@args;
-           $macros->{$name}->{Body} = '';
-           while (($_ = &next_line) && $_ !~ /\@end $tag/)
-           {
-             $macros->{$name}->{Body} .= $_;
-           }
-           die "ERROR: No closing '\@end $tag' found for macro definition of '$name'\n"
-             unless (/\@end $tag/);
-           chomp $macros->{$name}->{Body};
-         }
-         else
-         {
-           warn "$ERROR: Bad macro defintion $_"
-         }
-         next;
-       }
-       elsif ($tag eq 'unmacro')
-       {
-         delete $macros->{$1} if (/^\@unmacro\s*(\w+)/);
-         next;
-       }
-       elsif ($tag eq 'documentlanguage')
-       {
-         SetDocumentLanguage($1) if (!$T2H_LANG && /documentlanguage\s*(\w+)/);
-       }
-       elsif (defined($def_map{$tag})) {
-           if ($def_map{$tag}) {
-               s/^\@$tag\s+//;
-               $tag = $def_map{$tag};
-               $_ = "\@$tag $_";
-               $tag =~ s/\s.*//;
-           }
-       } elsif (defined($user_sub{$tag})) {
-           s/^\@$tag\s+//;
-           $sub = $user_sub{$tag};
-           print "# user $tag = $sub, arg: $_" if $T2H_DEBUG & $DEBUG_USER;
-           if (defined(&$sub)) {
-               chop($_);
-               &$sub($_);
-           } else {
-               warn "$ERROR Bad user sub for $tag: $sub\n";
-           }
-           next;
-         } 
-       if (defined($def_map{$tag})) {
-           s/^\@$tag\s+//;
-           if ($tag =~ /x$/) {
-               # extra definition line
-               $tag = $`;
-               $is_extra = 1;
-           } else {
-               $is_extra = 0;
-           }
-           while (/\{([^\{\}]*)\}/) {
-               # this is a {} construct
-               ($before, $contents, $after) = ($`, $1, $');
-               # protect spaces
-               $contents =~ s/\s+/$;9/g;
-               # restore $_ protecting {}
-               $_ = "$before$;7$contents$;8$after";
-           }
-           @args = split(/\s+/, &protect_html($_));
-           foreach (@args) {
-               s/$;9/ /g;      # unprotect spaces
-               s/$;7/\{/g;     # ... {
-               s/$;8/\}/g;     # ... }
-           }
-           $type = shift(@args);
-           $type =~ s/^\{(.*)\}$/$1/;
-           print "# def ($tag): {$type} ", join(', ', @args), "\n"
-               if $T2H_DEBUG & $DEBUG_DEF;
-           $type .= ':'; # it's nicer like this
-           my $name = shift(@args);
-           $name =~ s/^\{(.*)\}$/$1/;
-           if ($is_extra) {
-               $_ = &debug("<DT>", __LINE__);
-           } else {
-               $_ = &debug("<DL>\n<DT>", __LINE__);
-           }
-           if ($tag eq 'deffn' || $tag eq 'defvr' || $tag eq 'deftp') {
-               $_ .= "<U>$type</U> <B>$name</B>";
-               $_ .= " <I>@args</I>" if @args;
-           } elsif ($tag eq 'deftypefn' || $tag eq 'deftypevr'
-                    || $tag eq 'defcv' || $tag eq 'defop') {
-               $ftype = $name;
-               $name = shift(@args);
-               $name =~ s/^\{(.*)\}$/$1/;
-               $_ .= "<U>$type</U> $ftype <B>$name</B>";
-               $_ .= " <I>@args</I>" if @args;
-           } else {
-               warn "$ERROR Unknown definition type: $tag\n";
-               $_ .= "<U>$type</U> <B>$name</B>";
-               $_ .= " <I>@args</I>" if @args;
-           }
-           $_ .= &debug("\n<DD>", __LINE__);
-           $name = &unprotect_html($name);
-           if ($tag eq 'deffn' || $tag eq 'deftypefn') {
-             EnterIndexEntry('f', $name, $docu_doc, $section, \@lines);
-#              unshift(@input_spool, "\@findex $name\n");
-           } elsif ($tag eq 'defop') {
-             EnterIndexEntry('f', "$name on $ftype", $docu_doc, $section, \@lines);
-#              unshift(@input_spool, "\@findex $name on $ftype\n");
-           } elsif ($tag eq 'defvr' || $tag eq 'deftypevr' || $tag eq 'defcv') {
-             EnterIndexEntry('v', $name, $docu_doc, $section, \@lines);
-#              unshift(@input_spool, "\@vindex $name\n");
-           } else {
-             EnterIndexEntry('t', $name, $docu_doc, $section, \@lines);
-#              unshift(@input_spool, "\@tindex $name\n");
-           }
-           $dont_html = 1;
-       }
-    } elsif ($end_tag) {
-       if ($format_map{$end_tag}) {
-           $in_pre = 0 if $format_map{$end_tag} eq 'PRE';
-           $in_list-- if $format_map{$end_tag} eq 'UL' || $format_map{$end_tag} eq 'OL' ;
-           &html_pop_if('P');
-           &html_pop_if('LI');
-           &html_pop_if();
-           push(@lines, &debug("</$format_map{$end_tag}>\n", __LINE__));
-           push(@lines, &html_debug('', __LINE__));
-       }
-       elsif (exists $complex_format_map->{$end_tag})
-       {
-         my $end = eval $complex_format_map->{$end_tag}->[1];
-         if ($@)
-         {
-           print "$ERROR: eval of complex_format_map->{$end_tag}->[1] $complex_format_map->{$end_tag}->[0]: $@";
-           $end = '</pre>'
-         }
-         $in_pre = 0 if $end =~ m|</pre>|;
-         push(@lines, html_debug($end, __LINE__));
-       } elsif ($end_tag =~ /^(|f|v|multi)table$/) {
-           unless (@tables) {
-               warn "$ERROR \@end $end_tag without \@*table\n";
-               next;
-           }
-           &html_pop_if('P');
-           ($table_type, $in_table) = split($;, shift(@tables));
-           unless ($1 eq $table_type) {
-               warn "$ERROR \@end $end_tag without matching \@$end_tag\n";
-               next;
-           }
-           if ($table_type eq "multi") {
-               push(@lines, "</TR></TABLE>\n");
-               &html_pop_if('TR');
-           } else {
-               push(@lines, "</DL>\n");
-               &html_pop_if('DD');
-           }
-           &html_pop_if();
-           if (@tables) {
-               ($table_type, $in_table) = split($;, $tables[0]);
-           } else {
-               $in_table = 0;
-           }
-       } elsif (defined($def_map{$end_tag})) {
-           push(@lines, &debug("</DL>\n", __LINE__));
-       } elsif ($end_tag eq 'menu') {
-           &html_pop_if();
-           push(@lines, $_); # must keep it for pass 2
-       } 
-       next;
-    }
-    #############################################################
-    # anchor insertion
-    while (/\@anchor\s*\{(.*?)\}/)
-    {
-      $_ = $`.$';
-      my $anchor = $1;
-      $anchor = &normalise_node($anchor);
-      push @lines, &html_debug("<A NAME=\"$anchor\"></A>\n");
-      $node2href{$anchor} = "$docu_doc#$anchor";
-      next INPUT_LINE if $_ =~ /^\s*$/;
-    }
-
-    #############################################################
-    # index entry generation, after value substitutions
-    if (/^\@(\w+?)index\s+/)
-    {
-      EnterIndexEntry($1, $', $docu_doc, $section, \@lines);
-      next;
-    }
-    #
-    # protect texi and HTML things
-    &protect_texi;
-    $_ = &protect_html($_) unless $dont_html;
-    $dont_html = 0;
-    # substitution (unsupported things)
-    s/^\@exdent\s+//g;
-    s/\@noindent\s+//g;
-    s/\@refill\s+//g;
-    # other substitutions
-    &simple_substitutions;
-    s/\@footnote\{/\@footnote$docu_doc\{/g; # mark footnotes, cf. pass 4
-    #
-    # analyze the tag again
-    #
-    if ($tag) {
-      if (defined($sec2level{$tag}) && $sec2level{$tag} > 0) {
-           if (/^\@$tag\s+(.+)$/) {
-               $name = $1;
-               $name = &normalise_node($name);
-               $level = $sec2level{$tag};
-               # check for index
-#              $first_index_chapter = $name
-               $first_index_chapter = $node
-                 if ($level == 1 && !$first_index_chapter && 
-                     $name =~ /index/i);
-if ($level == 1 && $name =~ /index/i) {
-  print "# at level 1 found '" . $name . "' as matching index name (node = '" . $node . "')\n";
-  print "# first index chapter = '" . $first_index_chapter . "' \n";
-}
-               if ($in_top && /heading/){
-                   $T2H_HAS_TOP_HEADING = 1;
-                    $_ = &debug("<H$level>$name</H$level>\n", __LINE__);
-                   &html_push_if('body');
-                   print "# top heading, section $name, level $level\n"
-                       if $T2H_DEBUG & $DEBUG_TOC;
-               }
-               else
-               {
-                 unless (/^\@\w*heading/)
-                 {
-                   unless (/^\@unnumbered/)
-                   {
-                     my $number = &update_sec_num($tag, $level);
-                     $name = $number. ' ' . $name if $T2H_NUMBER_SECTIONS;
-                     $sec2number{$name} = $number;
-                     $number2sec{$number} = $name;
-                   }
-                   if (defined($toplevel))
-                   {
-                     push @lines, ($level==$toplevel ? $CHAPTEREND : $SECTIONEND);
-                   }
-                   else
-                   {
-                     # first time we see a "section"
-                     unless ($level == 1) 
-                     {
-                       warn "$WARN The first section found is not of level 1: $_";
-                     }
-                     $toplevel = $level;
-                   }
-                   push(@sections, $name);
-                   next_doc() if ($T2H_SPLIT eq 'section' ||
-                                  $T2H_SPLIT && $level == $toplevel);
-                 }
-                 $sec_num++;
-                 $docid = "SEC$sec_num";
-                 $tocid = (/^\@\w*heading/ ? undef : "TOC$sec_num");
-                 # check biblio and glossary
-                 $in_bibliography = ($name =~ /^([A-Z]|\d+)?(\.\d+)*\s*bibliography$/i);
-                 $in_glossary = ($name =~ /^([A-Z]|\d+)?(\.\d+)*\s*glossary$/i);
-                 # check node
-                 if ($node)
-                 {
-                   warn "$ERROR Duplicate node found: $node\n"
-                     if ($node2sec{$node});
-                 }
-                 else
-                 {
-                   $name .= ' ' while ($node2sec{$name});
-                   $node = $name;
-                 }
-                 $name .= ' ' while ($sec2node{$name});
-                 $section = $name; 
-                 $node2sec{$node} = $name;
-                 $sec2node{$name} = $node;
-                 $node2href{$node} = "$docu_doc#$docid";
-print "# set node2href for '" . $node . "' (" . $name . ") to '" . $node2href{$node} . "'\n"
-  if ($node =~ /index/i);
-                 $node2next{$node} = $node_next;
-                 $node2prev{$node} = $node_prev;
-                 $node2up{$node} = $node_up;
-                 print "# node $node, section $name, level $level\n"
-                   if $T2H_DEBUG & $DEBUG_TOC;
-
-                 $node = '';
-                 $node_next = '';
-                 $node_prev = '';
-                 $node_next = '';
-                 if ($tocid)
-                 {
-                   # update TOC
-                   while ($level > $curlevel) {
-                     $curlevel++;
-                     push(@toc_lines, "<UL>\n");
-                   }
-                   while ($level < $curlevel) {
-                     $curlevel--;
-                     push(@toc_lines, "</UL>\n");
-                   }
-                   $_ = &t2h_anchor($tocid, "$docu_doc#$docid", $name, 1);
-                   $_ = &substitute_style($_);
-                   push(@stoc_lines, "$_<BR>\n") if ($level == 1);
-                   if ($T2H_NUMBER_SECTIONS)
-                   {
-                     push(@toc_lines, $_ . "<BR>\n")
-                   }
-                   else
-                   {
-                     push(@toc_lines, "<LI>" . $_ ."</LI>");
-                   }
-                 }
-                 else
-                 {
-                   push(@lines, &html_debug("<A NAME=\"$docid\"></A>\n", 
-                                          __LINE__));
-                 }
-                 # update DOC
-                 push(@lines, &html_debug('', __LINE__));
-                 &html_reset;
-                 $_ =  "<H$level> $name </H$level>\n<!--docid::${docid}::-->\n";
-                 $_ = &debug($_, __LINE__);
-                 push(@lines, &html_debug('', __LINE__));
-               }
-               # update DOC
-               foreach $line (split(/\n+/, $_)) {
-                   push(@lines, "$line\n");
-               }
-               next;
-           } else {
-               warn "$ERROR Bad section line: $_";
-           }
-       } else {
-           # track variables
-           $value{$1} = Unprotect_texi($2), next if /^\@set\s+($VARRE)\s+(.*)$/o;
-           delete $value{$1}, next if /^\@clear\s+($VARRE)\s*$/o;
-           # store things
-           $value{'_shorttitle'} = Unprotect_texi($1), next if /^\@shorttitle\s+(.*)$/;
-           $value{'_setfilename'}   = Unprotect_texi($1), next if /^\@setfilename\s+(.*)$/;
-           $value{'_settitle'}      = Unprotect_texi($1), next if /^\@settitle\s+(.*)$/;
-           $value{'_author'}   .= Unprotect_texi($1)."\n", next if /^\@author\s+(.*)$/;
-           $value{'_subtitle'} .= Unprotect_texi($1)."\n", next if /^\@subtitle\s+(.*)$/;
-           $value{'_title'}    .= Unprotect_texi($1)."\n", next if /^\@title\s+(.*)$/;
-
-           # list item
-           if (/^\s*\@itemx?\s+/) {
-               $what = $';
-               $what =~ s/\s+$//;
-               if ($in_bibliography && $use_bibliography) {
-                   if ($what =~ /^$BIBRE$/o) {
-                       $id = 'BIB' . ++$bib_num;
-                       $bib2href{$what} = "$docu_doc#$id";
-                       print "# found bibliography for '$what' id $id\n"
-                           if $T2H_DEBUG & $DEBUG_BIB;
-                       $what = &t2h_anchor($id, '', $what);
-                   }
-               } elsif ($in_glossary && $T2H_USE_GLOSSARY) {
-                   $id = 'GLOSS' . ++$gloss_num;
-                   $entry = $what;
-                   $entry =~ tr/A-Z/a-z/ unless $entry =~ /^[A-Z\s]+$/;
-                   $gloss2href{$entry} = "$docu_doc#$id";
-                   print "# found glossary for '$entry' id $id\n"
-                       if $T2H_DEBUG & $DEBUG_GLOSS;
-                   $what = &t2h_anchor($id, '', $what);
-               }
-               elsif ($in_table && ($table_type eq 'f' || $table_type eq 'v'))
-               {
-                 EnterIndexEntry($table_type, $what, $docu_doc, $section, \@lines);
-               }
-               &html_pop_if('P');
-               if ($html_element eq 'DL' || $html_element eq 'DD') {
-                   if ($things_map{$in_table} && !$what) {
-                       # special case to allow @table @bullet for instance
-                       push(@lines, &debug("<DT>$things_map{$in_table}\n", __LINE__));
-                   } else {
-                       push(@lines, &debug("<DT>\@$in_table\{$what\}\n", __LINE__));
-                   }
-                   push(@lines, "<DD>");
-                   &html_push('DD') unless $html_element eq 'DD';
-                   if ($table_type) { # add also an index
-                       unshift(@input_spool, "\@${table_type}index $what\n");
-                   }
-               } elsif ($html_element eq 'TABLE') {
-                   push(@lines, &debug("<TR><TD>$what</TD>\n", __LINE__));
-                   &html_push('TR');
-               } elsif ($html_element eq 'TR') {
-                   push(@lines, &debug("</TR>\n", __LINE__));
-                   push(@lines, &debug("<TR><TD>$what</TD>\n", __LINE__));
-               } else {
-                   push(@lines, &debug("<LI>$what\n", __LINE__));
-                   &html_push('LI') unless $html_element eq 'LI';
-               }
-               push(@lines, &html_debug('', __LINE__));
-               if ($deferred_ref) {
-                   push(@lines, &debug("$deferred_ref\n", __LINE__));
-                   $deferred_ref = '';
-               }
-               next;
-           } elsif (/^\@tab\s+(.*)$/) {
-               push(@lines, "<TD>$1</TD>\n");
-               next;
-           }
-       }
-    }
-    # paragraph separator
-    if ($_ eq "\n" && ! $in_pre) {
-       next if $#lines >= 0 && $lines[$#lines] eq "\n";
-       if ($html_element eq 'P') {
-           push (@lines, &debug("</P><P>\n", __LINE__));
-       }
-#      else
-#      {
-#        push(@lines, "<P></P>\n");
-#        $_ = &debug("<P></P>\n", __LINE__);
-#      }
-        elsif ($html_element eq 'body' || $html_element eq 'BLOCKQUOTE' || $html_element eq 'DD' || $html_element eq 'LI') 
-       {
-         &html_push('P');
-         push(@lines, &debug("<P>\n", __LINE__));
-       }
-      }
-    # otherwise
-    push(@lines, $_) unless $in_titlepage;
-    push(@lines, &debug("</center>\n", __LINE__))  if ($tag eq 'center');
-}
-
-# finish TOC
-$level = 0;
-while ($level < $curlevel) {
-    $curlevel--;
-    push(@toc_lines, "</UL>\n");
-}
-
-print "# end of pass 1\n" if $T2H_VERBOSE;
-
-SetDocumentLanguage('en') unless ($T2H_LANG);
-#+++############################################################################
-#                                                                              #
-# Stuff related to Index generation                                            #
-#                                                                              #
-#---############################################################################
-
-sub EnterIndexEntry
-{
-  my $prefix = shift;
-  my $key = shift;
-  my $docu_doc = shift;
-  my $section = shift;
-  my $lines = shift;
-  local $_;
-
-  warn "$ERROR Undefined index command: $_", next
-    unless (exists ($index_properties->{$prefix}));
-  $key =~ s/\s+$//;
-  $_ = $key;
-  &protect_texi;
-  $key = $_;
-  $_ = &protect_html($_);
-  my $html_key = substitute_style($_);
-  my $id;
-  $key = remove_style($key);
-  $key = remove_things($key);
-  $_ = $key;
-  &unprotect_texi;
-  $key = $_;
-  while (exists $index->{$prefix}->{$key}) {$key .= ' '};
-  if ($lines->[$#lines] =~ /^<!--docid::(.+)::-->$/)
-  {
-    $id = $1;
-  }
-  else
-  {
-    $id = 'IDX' . ++$idx_num;
-    push(@$lines, &t2h_anchor($id, '', $T2H_INVISIBLE_MARK, !$in_pre));
-  }
-  $index->{$prefix}->{$key}->{html_key} = $html_key;
-  $index->{$prefix}->{$key}->{section} = $section;
-  $index->{$prefix}->{$key}->{href} = "$docu_doc#$id";
-  print "# found ${prefix}index  for '$key' with id $id\n"
-    if $T2H_DEBUG & $DEBUG_INDEX;
-}
-
-sub IndexName2Prefix
-{
-  my $name = shift;
-  my $prefix;
-
-  for $prefix (keys %$index_properties)
-  {
-    return $prefix if ($index_properties->{$prefix}->{name} eq $name);
-  }
-  return undef;
-}
-
-sub GetIndexEntries
-{
-  my $normal = shift;
-  my $code = shift;
-  my ($entries, $prefix, $key) = ({});
-  
-  for $prefix (keys %$normal)
-  {
-    for $key (keys %{$index->{$prefix}})
-    {
-      $entries->{$key} = {%{$index->{$prefix}->{$key}}};
-    }
-  }
-
-  if (defined($code))
-  {
-    for $prefix (keys %$code)
-    {
-      unless (exists $normal->{$keys})
-      {
-       for $key (keys %{$index->{$prefix}})
-       {
-         $entries->{$key} = {%{$index->{$prefix}->{$key}}};
-         $entries->{$key}->{html_key} = "<CODE>$entries->{$key}->{html_key}</CODE>";
-       }
-      }
-    }
-  }
-  return $entries;
-}
-
-sub byAlpha
-{
-  if ($a =~ /^[A-Za-z]/)
-  {
-    if ($b =~ /^[A-Za-z]/)
-    {
-      return lc($a) cmp lc($b);
-    }
-    else
-    {
-      return 1;
-    }
-  }
-  elsif ($b =~ /^[A-Za-z]/)
-  {
-    return -1;
-  }
-  else
-  {
-    return lc($a) cmp lc($b);
-  } 
-}
-
-sub GetIndexPages
-{
-  my $entries = shift;
-  my (@Letters, $key);
-  my ($EntriesByLetter, $Pages, $page) = ({}, [], {});
-  my @keys = sort byAlpha keys %$entries;
-
-  for $key (@keys)
-  {
-    push @{$EntriesByLetter->{uc(substr($key,0, 1))}} , $entries->{$key};
-  }
-  @Letters = sort byAlpha keys %$EntriesByLetter;
-  
-  $T2H_SPLIT_INDEX = 0 unless ($T2H_SPLIT);
-
-  unless ($T2H_SPLIT_INDEX)
-  {
-    $page->{First} = $Letters[0];
-    $page->{Last} = $Letters[$#Letters];
-    $page->{Letters} = \@Letters;
-    $page->{EntriesByLetter} = $EntriesByLetter;
-    push @$Pages, $page;
-    return $Pages;
-  }
-
-  if ($T2H_SPLIT_INDEX =~ /^\d+$/)
-  {
-    my $i = 0;
-    my ($prev_letter, $letter);
-    $page->{First} = $Letters[0];
-    for $letter (@Letters)
-    {
-      if ($i > $T2H_SPLIT_INDEX)
-      {
-       $page->{Last} = $prev_letter;
-       push @$Pages, {%$page};
-       $page->{Letters} = [];
-       $page->{EntriesByLetter} = {};
-       $page->{First} = $letter;
-       $i=0;
-      }
-      push @{$page->{Letters}}, $letter;
-      $page->{EntriesByLetter}->{$letter} = [@{$EntriesByLetter->{$letter}}];
-      $i += scalar(@{$EntriesByLetter->{$letter}});
-      $prev_letter = $letter;
-    }
-    $page->{Last} = $Letters[$#Letters];
-    push @$Pages, {%$page};
-  }
-  return $Pages;
-}
-
-sub GetIndexSummary
-{
-  my $first_page = shift;
-  my $Pages = shift;
-  my $name = shift;
-  my ($page, $letter, $summary, $i, $l1, $l2, $l);
-
-  $i = 0;
-  $summary = '<table><tr><th valign=top>Jump to: &nbsp; </th><td>';
-  
-  for $page ($first_page, @$Pages)
-  {
-    for $letter (@{$page->{Letters}})
-    {
-      $l = t2h_anchor('', "$page->{href}#${name}_$letter", "<b>$letter</b>", 
-                     0, 'style="text-decoration:none"') . "\n &nbsp; \n";
-      
-      if ($letter =~ /^[A-Za-z]/)
-      {
-       $l2 .= $l;
-      }
-      else
-      {
-       $l1 .= $l;
-      }
-    }
-  }
-  $summary .= $l1 . "<BR>\n" if ($l1);
-  $summary .= $l2 . '</td></tr></table><br>';
-  return $summary;
-}
-
-sub PrintIndexPage
-{
-  my $lines = shift;
-  my $summary = shift;
-  my $page = shift;
-  my $name = shift;
-
-  push @$lines, $summary;
-
-  push @$lines , <<EOT;
-<P></P>
-<TABLE border=0>
-<TR><TD></TD><TH ALIGN=LEFT>Index Entry</TH><TH ALIGN=LEFT> Section</TH></TR>
-<TR><TD COLSPAN=3> <HR></TD></TR>
-EOT
-
-  for $letter (@{$page->{Letters}})
-  {
-    push @$lines, "<TR><TH><A NAME=\"${name}_$letter\"></A>$letter</TH><TD></TD><TD></TD></TR>\n";
-    for $entry (@{$page->{EntriesByLetter}->{$letter}})
-    {
-      push @$lines, 
-      "<TR><TD></TD><TD valign=top>" . 
-       t2h_anchor('', $entry->{href}, $entry->{html_key}) .
-         "</TD><TD valign=top>" . 
-           t2h_anchor('', sec_href($entry->{section}), clean_name($entry->{section})) .
-             "</TD></TR>\n";
-    }
-    push @$lines, "<TR><TD COLSPAN=3> <HR></TD></TR>\n";
-  }
-  push @$lines, "</TABLE><P></P>";
-  push @$lines, $summary;
-}
-
-sub PrintIndex
-{
-  my $lines = shift;
-  my $name = shift;
-  my $section = shift;
-  $section = 'Top' unless $section;
-  my $prefix = IndexName2Prefix($name);
-
-  warn ("$ERROR printindex: bad index name: $name"), return 
-    unless $prefix;
-
-  if ($index_properties->{$prefix}->{code})
-  {
-    $index_properties->{$prefix}->{from_code}->{$prefix} = 1;
-  }
-  else
-  {
-    $index_properties->{$prefix}->{from}->{$prefix}= 1;
-  }
-
-  my $Entries = GetIndexEntries($index_properties->{$prefix}->{from}, 
-                               $index_properties->{$prefix}->{from_code});
-  return unless %$Entries;
-
-  if ($T2H_IDX_SUMMARY)
-  {
-    my $key;
-    open(FHIDX, ">$docu_rdir$docu_name" . "_$name.idx")
-      || die "Can't open > $docu_rdir$docu_name" . "_$name.idx for writing: $!\n";
-    print "# writing $name index summary in $docu_rdir$docu_name" . "_$name.idx...\n" if $T2H_VERBOSE;
-
-    for $key (sort keys %$Entries)
-    {
-      print FHIDX "$key\t$Entries->{$key}->{href}\n";
-    }
-  }
-
-  my $Pages = GetIndexPages($Entries);
-  my $page;
-  my $first_page = shift @$Pages;
-  my $sec_name = $section;
-  # remove section number
-  $sec_name =~ s/.*? // if $sec_name =~ /^([A-Z]|\d+)\./;
-
-  ($first_page->{href} = sec_href($section)) =~ s/\#.*$//;
-  # Update tree structure of document
-  if (@$Pages)
-  {
-    my $sec;
-    my @after;
-
-    while (@sections && $sections[$#sections] ne $section)
-    {
-      unshift @after, pop @sections;
-    }
-
-    for $page (@$Pages)
-    {
-      my $node = ($page->{First} ne $page->{Last} ? 
-                 "$sec_name: $page->{First} -- $page->{Last}" :
-                 "$sec_name: $page->{First}");
-      push @sections, $node;
-      $node2sec{$node} = $node;
-      $sec2node{$node} = $node;
-      $node2up{$node} = $section;
-      $page->{href} = next_doc();
-      $page->{name} = $node;
-      $node2href{$node} = $page->{href};
-      if ($prev_node)
-      {
-       $node2next{$prev_node} = $node;
-       $node2prev{$node} = $prev_node;
-      }
-      $prev_node = $node;
-    }
-    push @sections, @after;
-  }
-
-  my $summary = GetIndexSummary($first_page, $Pages, $name);
-  PrintIndexPage($lines, $summary, $first_page, $name);
-  for $page (@$Pages)
-  {
-    push @$lines, ($T2H_SPLIT eq 'chapter' ? $CHAPTEREND : $SECTIONEND);
-    push @$lines, "<H2 ALIGN=\"Left\">$page->{name}</H2>\n";
-    PrintIndexPage($lines, $summary, $page, $name);
-  }
-}
-
-
-#+++############################################################################
-#                                                                              #
-# Pass 2/3: handle style, menu, index, cross-reference                         #
-#                                                                              #
-#---############################################################################
-
-@lines2 = ();                          # whole document (2nd pass)
-@lines3 = ();                          # whole document (3rd pass)
-$in_menu = 0;                          # am I inside a menu
-
-while (@lines) {
-    $_ = shift(@lines);
-    #
-    # special case (protected sections)
-    #
-    if (/^$PROTECTTAG/o) {
-       push(@lines2, $_);
-       next;
-    }
-    #
-    # menu
-    #
-    if (/^\@menu\b/)
-    {
-      $in_menu = 1;
-      $in_menu_listing = 1;
-      push(@lines2, &debug("<BLOCKQUOTE><TABLE BORDER=0 CELLSPACING=0> \n", __LINE__));
-      next;
-    }
-    if (/^\@end\s+menu\b/)
-    {
-      if ($in_menu_listing)
-      {
-       push(@lines2, &debug("</TABLE></BLOCKQUOTE>\n", __LINE__));
-      }
-      else
-      {
-       push(@lines2, &debug("</BLOCKQUOTE>\n", __LINE__));
-      }
-      $in_menu = 0;
-      $in_menu_listing = 0;
-      next;
-    }
-    if ($in_menu) 
-    {
-      my ($node, $name, $descr);
-      if (/^\*\s+($NODERE)::/o)
-      {
-       $node = $1;
-       $descr = $';
-      }
-      elsif (/^\*\s+(.+):\s+([^\t,\.\n]+)[\t,\.\n]/)
-      {
-       $name = $1;
-       $node = $2;
-       $descr = $';
-      }
-      elsif (/^\*/) 
-      {
-       warn "$ERROR Bad menu line: $_";
-      }
-      else
-      {
-       if ($in_menu_listing)
-       {
-         $in_menu_listing = 0;
-         push(@lines2, &debug("</TABLE>\n", __LINE__));
-       }
-       # should be like verbatim -- preseve spaces, etc
-       s/ /\&nbsp;/g;
-       $_ .= "<br>\n";
-       push(@lines2, $_);
-      }
-      if ($node)
-      {
-       if (! $in_menu_listing)
-       {
-         $in_menu_listing = 1;
-         push(@lines2, &debug("<TABLE BORDER=0 CELLSPACING=0>\n", __LINE__));
-       }
-       # look for continuation
-       while ($lines[0] =~ /^\s+\w+/)
-       {
-         $descr .= shift(@lines);
-       }
-       &menu_entry($node, $name, $descr);
-      } 
-      next;
-    }
-    #
-    # printindex
-    #
-    PrintIndex(\@lines2, $2, $1), next
-      if (/^<!--::(.*)::-->\@printindex\s+(\w+)/);
-    #
-    # simple style substitutions
-    #
-    $_ = &substitute_style($_);
-    #
-    # xref
-    #
-    while (/\@(x|px|info|)ref{([^{}]+)(}?)/) {
-       # note: Texinfo may accept other characters
-       ($type, $nodes, $full) = ($1, $2, $3);
-       ($before, $after) = ($`, $');
-       if (! $full && $after) {
-           warn "$ERROR Bad xref (no ending } on line): $_";
-           $_ = "$before$;0${type}ref\{$nodes$after";
-           next; # while xref
-       }
-       if ($type eq 'x') {
-           $type = "$T2H_WORDS->{$T2H_LANG}->{'See'} ";
-       } elsif ($type eq 'px') {
-           $type = "$T2H_WORDS->{$T2H_LANG}->{'see'} ";
-       } elsif ($type eq 'info') {
-           $type = "$T2H_WORDS->{$T2H_LANG}->{'See'} Info";
-       } else {
-           $type = '';
-       }
-       unless ($full) {
-           $next = shift(@lines);
-           $next = &substitute_style($next);
-           chop($nodes); # remove final newline
-           if ($next =~ /\}/) { # split on 2 lines
-               $nodes .= " $`";
-               $after = $';
-           } else {
-               $nodes .= " $next";
-               $next = shift(@lines);
-               $next = &substitute_style($next);
-               chop($nodes);
-               if ($next =~ /\}/) { # split on 3 lines
-                   $nodes .= " $`";
-                   $after = $';
-               } else {
-                   warn "$ERROR Bad xref (no ending }): $_";
-                   $_ = "$before$;0xref\{$nodes$after";
-                   unshift(@lines, $next);
-                   next; # while xref
-               }
-           }
-       }
-       $nodes =~ s/\s+/ /g; # remove useless spaces
-       @args = split(/\s*,\s*/, $nodes);
-       $node = $args[0]; # the node is always the first arg
-       $node = &normalise_node($node);
-       $sec = $args[2] || $args[1] || $node2sec{$node};
-       $href = $node2href{$node};
-       if (@args == 5) { # reference to another manual
-           $sec = $args[2] || $node;
-           $man = $args[4] || $args[3];
-           $_ = "${before}${type}$T2H_WORDS->{$T2H_LANG}->{'section'} `$sec' in \@cite{$man}$after";
-       } elsif ($type =~ /Info/) { # inforef
-           warn "$ERROR Wrong number of arguments: $_" unless @args == 3;
-           ($nn, $_, $in) = @args;
-           $_ = "${before}${type} file `$in', node `$nn'$after";
-       } elsif ($sec && $href && ! $T2H_SHORT_REF) {
-           $_  = "${before}${type}";
-           $_ .= "$T2H_WORDS->{$T2H_LANG}->{'section'} " if ${type};
-           $_ .= &t2h_anchor('', $href, $sec) . $after;
-       } 
-       elsif ($href)
-       {
-         $_ = "${before}${type} " . 
-           &t2h_anchor('', $href, $args[2] || $args[1] || $node) . 
-             $after;
-       }
-       else {
-           warn "$ERROR Undefined node ($node): $_";
-           $_ = "$before$;0xref{$nodes}$after";
-       }
-    }
-
-    # replace images
-    s[\@image\s*{(.+?)}]
-    {
-     my @args = split (/\s*,\s*/, $1);
-     my $base = $args[0];
-     my $image = 
-       LocateIncludeFile("$base.png") || 
-       LocateIncludeFile("$base.jpg") ||
-       LocateIncludeFile("$base.gif");
-     warn "$ERROR no image file for $base: $_" unless ($image && -e $image);
-     "<IMG SRC=\"$image\" ALT=\"$base\">";
-     ($T2H_CENTER_IMAGE ?
-      "<CENTER><IMG SRC=\"$image\" ALT=\"$base\"></CENTER>" :
-      "<IMG SRC=\"$image\" ALT=\"$base\">");
-    }eg;
-
-    #
-    # try to guess bibliography references or glossary terms
-    #
-    unless (/^<H\d><A NAME=\"SEC\d/) {
-       if ($use_bibliography) {
-           $done = '';
-           while (/$BIBRE/o) {
-               ($pre, $what, $post) = ($`, $&, $');
-               $href = $bib2href{$what};
-               if (defined($href) && $post !~ /^[^<]*<\/A>/) {
-                   $done .= $pre . &t2h_anchor('', $href, $what);
-               } else {
-                   $done .= "$pre$what";
-               }
-               $_ = $post;
-           }
-           $_ = $done . $_;
-       }
-       if ($T2H_USE_GLOSSARY) {
-           $done = '';
-           while (/\b\w+\b/) {
-               ($pre, $what, $post) = ($`, $&, $');
-               $entry = $what;
-               $entry =~ tr/A-Z/a-z/ unless $entry =~ /^[A-Z\s]+$/;
-               $href = $gloss2href{$entry};
-               if (defined($href) && $post !~ /^[^<]*<\/A>/) {
-                   $done .= $pre . &t2h_anchor('', $href, $what);
-               } else {
-                   $done .= "$pre$what";
-               }
-               $_ = $post;
-           }
-           $_ = $done . $_;
-       }
-    }
-    # otherwise
-    push(@lines2, $_);
-}
-print "# end of pass 2\n" if $T2H_VERBOSE;
-
-#
-# split style substitutions
-#
-while (@lines2) {
-    $_ = shift(@lines2);
-    #
-    # special case (protected sections)
-    #
-    if (/^$PROTECTTAG/o) {
-       push(@lines3, $_);
-       next;
-    }
-    #
-    # split style substitutions
-    #
-    $old = '';
-    while ($old ne $_) {
-        $old = $_;
-       if (/\@(\w+)\{/) {
-           ($before, $style, $after) = ($`, $1, $');
-           if (defined($style_map{$style})) {
-               $_ = $after;
-               $text = '';
-               $after = '';
-               $failed = 1;
-               while (@lines2) {
-                   if (/\}/) {
-                       $text .= $`;
-                       $after = $';
-                       $failed = 0;
-                       last;
-                   } else {
-                       $text .= $_;
-                       $_ = shift(@lines2);
-                   }
-               }
-               if ($failed) {
-                   die "* Bad syntax (\@$style) after: $before\n";
-               } else {
-                   $text = &apply_style($style, $text);
-                   $_ = "$before$text$after";
-               }
-           }
-       }
-    }
-    # otherwise
-    push(@lines3, $_);
-}
-print "# end of pass 3\n" if $T2H_VERBOSE;
-       
-#+++############################################################################
-#                                                                              #
-# Pass 4: foot notes, final cleanup                                            #
-#                                                                              #
-#---############################################################################
-
-@foot_lines = ();                      # footnotes
-@doc_lines = ();                       # final document
-$end_of_para = 0;                      # true if last line is <P>
-       
-while (@lines3) {
-    $_ = shift(@lines3);
-    #
-    # special case (protected sections)
-    #
-    if (/^$PROTECTTAG/o) {
-       push(@doc_lines, $_);
-       $end_of_para = 0;
-       next;
-    }
-    #
-    # footnotes
-    #
-    while (/\@footnote([^\{\s]+)\{/) {
-       ($before, $d, $after) = ($`, $1, $');
-       $_ = $after;
-       $text = '';
-       $after = '';
-       $failed = 1;
-       while (@lines3) {
-           if (/\}/) {
-               $text .= $`;
-               $after = $';
-               $failed = 0;
-               last;
-           } else {
-               $text .= $_;
-               $_ = shift(@lines3);
-           }
-       }
-       if ($failed) {
-           die "* Bad syntax (\@footnote) after: $before\n";
-       } else {
-           $foot_num++;
-           $docid  = "DOCF$foot_num";
-           $footid = "FOOT$foot_num";
-           $foot = "($foot_num)";
-           push(@foot_lines, "<H3>" . &t2h_anchor($footid, "$d#$docid", $foot) . "</H3>\n");
-           $text = "<P>$text" unless $text =~ /^\s*<P>/;
-           push(@foot_lines, "$text\n");
-           $_ = $before . &t2h_anchor($docid, "$docu_foot#$footid", $foot) . $after;
-       }
-    }
-    #
-    # remove unnecessary <P>
-    #
-    if (/^\s*<P>\s*$/) {
-       next if $end_of_para++;
-    } else {
-       $end_of_para = 0;
-    }
-    # otherwise
-    push(@doc_lines, $_);
-}
-       
-print "# end of pass 4\n" if $T2H_VERBOSE;
-
-#+++############################################################################
-#                                                                              #
-# Pass 5: print things                                                         #
-#                                                                              #
-#---############################################################################
-
-$T2H_L2H = &l2h_FinishToLatex if ($T2H_L2H);
-$T2H_L2H = &l2h_ToHtml        if ($T2H_L2H);
-$T2H_L2H = &l2h_InitFromHtml  if ($T2H_L2H);
-
-# fix node2up, node2prev, node2next, if desired
-if ($has_top_command)
-{
-  for $section (keys %sec2number)
-  {
-    $node = $sec2node{$section};
-    $node2up{$node} = Sec2UpNode($section) unless $node2up{$node};
-    $node2prev{$node} = Sec2PrevNode($section) unless $node2prev{$node};
-    $node2next{$node} = Sec2NextNode($section) unless $node2next{$node};
-  }
-}
-
-# prepare %T2H_THISDOC
-$T2H_THISDOC{fulltitle} = $value{'_title'} || $value{'_settitle'} || "Untitled Document";
-$T2H_THISDOC{title} = $value{'_settitle'} || $T2H_THISDOC{fulltitle};
-$T2H_THISDOC{author} = $value{'_author'};
-$T2H_THISDOC{subtitle} = $value{'_subtitle'};
-$T2H_THISDOC{shorttitle} = $value{'_shorttitle'};
-for $key (keys %T2H_THISDOC)
-{
-  $_ = &substitute_style($T2H_THISDOC{$key});
-  &unprotect_texi;
-  s/\s*$//;
-  $T2H_THISDOC{$key} = $_;
-}
-
-# if no sections, then simply print document as is
-unless (@sections)
-{
-  print "# Writing content into $docu_top_file \n" if $T2H_VERBOSE;
-  open(FILE, "> $docu_top_file") 
-    || die "$ERROR: Can't open $docu_top_file for writing: $!\n";
-
-  &$T2H_print_page_head(\*FILE);
-  $T2H_THIS_SECTION = \@doc_lines;
-  t2h_print_lines(\*FILE);
-  &$T2H_print_foot_navigation(\*FILE);
-  &$T2H_print_page_foot(\*FILE);
-  close(FILE);
-  goto Finish;
-}
-
-# initialize $T2H_HREF, $T2H_NAME
-%T2H_HREF = 
-  (
-   'First' ,   sec_href($sections[0]),
-   'Last',     sec_href($sections[$#sections]),
-   'About',     $docu_about. '#SEC_About',
-  );
-
-# prepare TOC, OVERVIEW, TOP
-$T2H_TOC = \@toc_lines;
-$T2H_OVERVIEW = \@stoc_lines;
-if ($has_top)
-{
-  while (1)
-  {
-    $_ = shift @doc_lines;
-    last if /$TOPEND/;
-    push @$T2H_TOP, $_;
-  }
-  $T2H_HREF{'Top'} = $docu_top . '#SEC_Top';
-}
-else
-{
-  $T2H_HREF{'Top'} = $T2H_HREF{First};
-}
-
-$node2href{Top} = $T2H_HREF{Top};
-$T2H_HREF{Contents} = $docu_toc.'#SEC_Contents' if @toc_lines;
-$T2H_HREF{Overview} = $docu_stoc.'#SEC_OVERVIEW' if @stoc_lines;
-
-# settle on index
-if ($T2H_INDEX_CHAPTER)
-{
-  $T2H_HREF{Index} = $node2href{normalise_node($T2H_INDEX_CHAPTER)};
-  warn "$ERROR T2H_INDEX_CHAPTER '$T2H_INDEX_CHAPTER' not found\n"
-    unless $T2H_HREF{Index};
-}
-if (! $T2H_HREF{Index} && $first_index_chapter)
-{
-  $T2H_INDEX_CHAPTER = $first_index_chapter;
-  $T2H_HREF{Index} = $node2href{$T2H_INDEX_CHAPTER};
-print "# Set Index HREF to '" . clean_name($T2H_INDEX_CHAPTER) . "' \n";
-}
-
-print "# Using '" . clean_name($T2H_INDEX_CHAPTER) . "' as index page\n"
-  if ($T2H_VERBOSE && $T2H_HREF{Index});
-
-print "# Using '" . $T2H_HREF{Index} . "' as index href\n";
-
-%T2H_NAME =
-  (
-   'First',   clean_name($sec2node{$sections[0]}),
-   'Last',    clean_name($sec2node{$sections[$#sections]}),
-   'About',    $T2H_WORDS->{$T2H_LANG}->{'About_Title'},
-   'Contents', $T2H_WORDS->{$T2H_LANG}->{'ToC_Title'},
-   'Overview', $T2H_WORDS->{$T2H_LANG}->{'Overview_Title'},
-   'Index' ,   clean_name($T2H_INDEX_CHAPTER),
-   'Top',      clean_name($T2H_TOP_HEADING || $T2H_THISDOC{'title'} || $T2H_THISDOC{'shorttitle'}),
-  );
-
-#############################################################################
-# print frame and frame toc file
-#
-if ( $T2H_FRAMES )
-{
-  open(FILE, "> $docu_frame_file") 
-    || die "$ERROR: Can't open $docu_frame_file for writing: $!\n";
-  print "# Creating frame in $docu_frame_file ...\n" if $T2H_VERBOSE;
-  &$T2H_print_frame(\*FILE);
-  close(FILE);
-
-  open(FILE, "> $docu_toc_frame_file") 
-    || die "$ERROR: Can't open $docu_toc_frame_file for writing: $!\n";
-  print "# Creating toc frame in $docu_frame_file ...\n" if $T2H_VERBOSE;
-   &$T2H_print_toc_frame(\*FILE);
-  close(FILE);
-}
-
-
-#############################################################################
-# print Top
-#
-open(FILE, "> $docu_top_file") 
-  || die "$ERROR: Can't open $docu_top_file for writing: $!\n";
-&$T2H_print_page_head(\*FILE) unless ($T2H_SPLIT);
-
-if ($has_top)
-{
-  print "# Creating Top in $docu_top_file ...\n" if $T2H_VERBOSE;
-  $T2H_THIS_SECTION = $T2H_TOP;
-  $T2H_HREF{This} = $T2H_HREF{Top};
-  $T2H_NAME{This} = $T2H_NAME{Top};
-  &$T2H_print_Top(\*FILE);
-}
-  
-close(FILE) if $T2H_SPLIT;
-
-#############################################################################
-# Print sections
-#
-$T2H_NODE{Forward} = $sec2node{$sections[0]};
-$T2H_NAME{Forward} = &clean_name($sec2node{$sections[0]});
-$T2H_HREF{Forward} = sec_href($sections[0]);
-$T2H_NODE{This} = 'Top';
-$T2H_NAME{This} = $T2H_NAME{Top};
-$T2H_HREF{This} = $T2H_HREF{Top};
-if ($T2H_SPLIT)
-{
-  print "# writing " . scalar(@sections) . 
-    " sections in $docu_rdir$docu_name"."_[1..$doc_num]"
-         if $T2H_VERBOSE;
-  $previous = ($T2H_SPLIT eq 'chapter' ? $CHAPTEREND : $SECTIONEND);
-  undef $FH;
-  $doc_num = 0;
-}
-else
-{
-  print "# writing " . scalar(@sections) . " sections in $docu_top_file ..." 
-    if $T2H_VERBOSE;
-  $FH = \*FILE;
-  $previous = '';
-}
-
-$counter = 0;
-# loop through sections
-while ($section = shift(@sections)) 
-{
-  if ($T2H_SPLIT && ($T2H_SPLIT eq 'section' || $previous eq $CHAPTEREND))
-  { 
-    if ($FH)
-    {
-      #close previous page
-      &$T2H_print_chapter_footer($FH) if $T2H_SPLIT eq 'chapter';
-      &$T2H_print_page_foot($FH);
-      close($FH);
-      undef $FH;
-    }
-  }
-  $T2H_NAME{Back} = $T2H_NAME{This};
-  $T2H_HREF{Back} = $T2H_HREF{This};
-  $T2H_NODE{Back} = $T2H_NODE{This};
-  $T2H_NAME{This} = $T2H_NAME{Forward};
-  $T2H_HREF{This} = $T2H_HREF{Forward};
-  $T2H_NODE{This} = $T2H_NODE{Forward};
-  if ($sections[0])
-  {
-    $T2H_NODE{Forward} = $sec2node{$sections[0]};
-    $T2H_NAME{Forward} = &clean_name($T2H_NODE{Forward});
-    $T2H_HREF{Forward} = sec_href($sections[0]);
-  }
-  else
-  {
-    undef $T2H_HREF{Forward}, $T2H_NODE{Forward}, $T2H_NAME{Forward};
-  }
-
-  $node = $node2up{$T2H_NODE{This}};
-  $T2H_HREF{Up} = $node2href{$node};
-  if ($T2H_HREF{Up} eq $T2H_HREF{This} || ! $T2H_HREF{Up})
-  {
-    $T2H_NAME{Up} = $T2H_NAME{Top};
-    $T2H_HREF{Up} = $T2H_HREF{Top};
-    $T2H_NODE{Up} = 'Up';
-  }
-  else
-  {
-    $T2H_NAME{Up} = &clean_name($node);
-    $T2H_NODE{Up} = $node;
-  }
-
-  $node = $T2H_NODE{This};
-  $node = $node2prev{$node};
-  $T2H_NAME{Prev} = &clean_name($node);
-  $T2H_HREF{Prev} = $node2href{$node};
-  $T2H_NODE{Prev} = $node;
-
-  $node = $T2H_NODE{This};
-  if ($node2up{$node} && $node2up{$node} ne 'Top'&&
-      ($node2prev{$node} eq $T2H_NODE{Back} || ! $node2prev{$node}))
-  {
-    $node = $node2up{$node};
-    while ($node && $node ne $node2up{$node} && ! $node2prev{$node})
-    {
-      $node = $node2up{$node};
-    }
-    $node = $node2prev{$node} 
-      unless $node2up{$node} eq 'Top' || ! $node2up{$node};
-  }
-  else
-  {
-    $node = $node2prev{$node};
-  }
-  $T2H_NAME{FastBack} = &clean_name($node);
-  $T2H_HREF{FastBack} = $node2href{$node};
-  $T2H_NODE{FastBack} = $node;
-  
-  $node = $T2H_NODE{This};
-  $node = $node2next{$node};
-  $T2H_NAME{Next} = &clean_name($node);
-  $T2H_HREF{Next} = $node2href{$node};
-  $T2H_NODE{Next} = $node;
-
-  $node = $T2H_NODE{This};
-  if ($node2up{$node} && $node2up{$node} ne 'Top'&& 
-      ($node2next{$node} eq $T2H_NODE{Forward} || ! $node2next{$node}))
-  {
-    $node = $node2up{$node};
-    while ($node && $node ne $node2up{$node} && ! $node2next{$node})
-    {
-      $node = $node2up{$node};
-    }
-  }
-  $node = $node2next{$node};
-  $T2H_NAME{FastForward} = &clean_name($node);
-  $T2H_HREF{FastForward} = $node2href{$node};
-  $T2H_NODE{FastForward} = $node;
-
-  if (! defined($FH))
-  {
-    my $file = $T2H_HREF{This};
-    $file =~ s/\#.*$//;
-    open(FILE, "> $docu_rdir$file") || 
-      die "$ERROR: Can't open $docu_rdir$file for writing: $!\n";
-    $FH = \*FILE;
-    &$T2H_print_page_head($FH);
-    t2h_print_label($FH);
-    &$T2H_print_chapter_header($FH) if $T2H_SPLIT eq 'chapter';
-  }
-  else
-  {
-    t2h_print_label($FH);
-  }
-
-  $T2H_THIS_SECTION = [];
-  while (@doc_lines) {
-    $_ = shift(@doc_lines);
-    last if ($_ eq $SECTIONEND || $_ eq $CHAPTEREND);
-    push(@$T2H_THIS_SECTION, $_);
-  }
-  $previous = $_;
-  &$T2H_print_section($FH);
-
-  if ($T2H_VERBOSE)
-  {
-    $counter++;
-    print "." if $counter =~ /00$/;
-  }
-}
-if ($T2H_SPLIT)
-{
-  &$T2H_print_chapter_footer($FH) if $T2H_SPLIT eq 'chapter';
-  &$T2H_print_page_foot($FH);
-  close($FH);
-}
-print "\n" if $T2H_VERBOSE;
-
-#############################################################################
-# Print ToC, Overview, Footnotes
-#
-undef $T2H_HREF{Prev};
-undef $T2H_HREF{Next};
-undef $T2H_HREF{Back};
-undef $T2H_HREF{Forward};
-undef $T2H_HREF{Up};
-
-if (@foot_lines)
-{
-  print "# writing Footnotes in $docu_foot_file...\n" if $T2H_VERBOSE;
-  open (FILE, "> $docu_foot_file") || die "$ERROR: Can't open $docu_foot_file for writing: $!\n"
-      if $T2H_SPLIT;
-  $T2H_HREF{This} = $docu_foot;
-  $T2H_NAME{This} = $T2H_WORDS->{$T2H_LANG}->{'Footnotes_Title'};
-  $T2H_THIS_SECTION = \@foot_lines;
-  &$T2H_print_Footnotes(\*FILE);
-  close(FILE) if $T2H_SPLIT;
-}
-
-if (@toc_lines)
-{
-  print "# writing Toc in $docu_toc_file...\n" if $T2H_VERBOSE;
-  open (FILE, "> $docu_toc_file") || die "$ERROR: Can't open $docu_toc_file for writing: $!\n"
-      if $T2H_SPLIT;
-  $T2H_HREF{This} = $T2H_HREF{Contents};
-  $T2H_NAME{This} = $T2H_NAME{Contents};
-  $T2H_THIS_SECTION = \@toc_lines;
-  &$T2H_print_Toc(\*FILE);
-  close(FILE) if $T2H_SPLIT;
-}
-
-if (@stoc_lines)
-{
-  print "# writing Overview in $docu_stoc_file...\n" if $T2H_VERBOSE;
-  open (FILE, "> $docu_stoc_file") || die "$ERROR: Can't open $docu_stoc_file for writing: $!\n"
-      if $T2H_SPLIT;
-  
-  $T2H_HREF{This} = $T2H_HREF{Overview};
-  $T2H_NAME{This} = $T2H_NAME{Overview};
-  $T2H_THIS_SECTION = \@stoc_lines;
-  unshift @$T2H_THIS_SECTION, "<BLOCKQUOTE>\n";
-  push @$T2H_THIS_SECTION, "\n</BLOCKQUOTE>\n";
-  &$T2H_print_Overview(\*FILE);
-  close(FILE) if $T2H_SPLIT;
-}
-
-if ($about_body = &$T2H_about_body())
-{
-  print "# writing About in $docu_about_file...\n" if $T2H_VERBOSE;
-  open (FILE, "> $docu_about_file") || die "$ERROR: Can't open $docu_about_file for writing: $!\n"
-      if $T2H_SPLIT;
-  
-  $T2H_HREF{This} = $T2H_HREF{About};
-  $T2H_NAME{This} = $T2H_NAME{About};
-  $T2H_THIS_SECTION = [$about_body];
-  &$T2H_print_About(\*FILE);
-  close(FILE) if $T2H_SPLIT;
-}
-
-unless ($T2H_SPLIT)
-{
-  &$T2H_print_page_foot(\*FILE);
-  close (FILE);
-}
-  
-Finish:
-&l2h_FinishFromHtml if ($T2H_L2H);
-&l2h_Finish if($T2H_L2H);
-print "# that's all folks\n" if $T2H_VERBOSE;
-
-exit(0);
-
-#+++############################################################################
-#                                                                              #
-# Low level functions                                                          #
-#                                                                              #
-#---############################################################################
-
-sub LocateIncludeFile
-{
-  my $file = shift;
-  my $dir;
-
-  return $file if (-e $file && -r $file);
-  foreach $dir (@T2H_INCLUDE_DIRS)
-  {
-    return "$dir/$file" if (-e "$dir/$file" && -r "$dir/$file");
-  }
-  return undef;
-}
-
-sub clean_name 
-{
-  local ($_);
-  $_ = &remove_style($_[0]);
-  &unprotect_texi;
-  return $_;
-}
-
-sub update_sec_num {
-    local($name, $level) = @_;
-    my $ret;
-
-    $level--; # here we start at 0
-    if ($name =~ /^appendix/ || defined(@appendix_sec_num)) {
-       # appendix style
-       if (defined(@appendix_sec_num)) {
-           &incr_sec_num($level, @appendix_sec_num);
-       } else {
-           @appendix_sec_num = ('A', 0, 0, 0);
-       }
-       $ret = join('.', @appendix_sec_num[0..$level]);
-    } else {
-       # normal style
-       if (defined(@normal_sec_num)) 
-       {
-         &incr_sec_num($level, @normal_sec_num);
-       } 
-       else 
-       {
-         @normal_sec_num = (1, 0, 0, 0);
-       }
-       $ret = join('.', @normal_sec_num[0..$level]);
-    }
-    
-    $ret .= "." if $level == 0;
-    return $ret;
-}
-
-sub incr_sec_num {
-    local($level, $l);
-    $level = shift(@_);
-    $_[$level]++;
-    foreach $l ($level+1 .. 3) {
-       $_[$l] = 0;
-    }
-}
-
-sub Sec2UpNode
-{
-  my $sec = shift;
-  my $num = $sec2number{$sec};
-
-  return '' unless $num;
-  return 'Top' unless $num =~ /\.\d+/;
-  $num =~ s/\.[^\.]*$//;
-  $num = $num . '.' unless $num =~ /\./;
-  return $sec2node{$number2sec{$num}};
-}
-
-sub Sec2PrevNode
-{
-  my $sec = shift;
-  my $num = $sec2number{$sec};
-  my ($i, $post);
-  
-  if ($num =~ /(\w+)(\.$|$)/)
-  {
-    $num = $`;
-    $i = $1;
-    $post = $2;
-    if ($i eq 'A')
-    {
-      $i = $normal_sec_num[0];
-    }
-    elsif ($i ne '1')
-    {
-      # unfortunately, -- operator is not magical
-      $i = chr(ord($i) + 1);
-    }
-    else
-    {
-      return '';
-    }
-    return $sec2node{$number2sec{$num . $i . $post}}
-  }
-  return '';
-}
-
-sub Sec2NextNode
-{
-  my $sec = shift;
-  my $num = $sec2number{$sec};
-  my $i;
-
-  if ($num =~ /(\w+)(\.$|$)/)
-  {
-    $num = $`;
-    $i = $1;
-    $post = $2;
-    if ($post eq '.' && $i eq $normal_sec_num[0])
-    {
-      $i = 'A';
-    }
-    else
-    {
-      $i++;
-    }
-    return $sec2node{$number2sec{$num . $i . $post}}
-  }
-  return '';
-}
-
-sub check {
-    local($_, %seen, %context, $before, $match, $after);
-
-    while (<>) {
-       if (/\@(\*|\.|\:|\@|\{|\})/) {
-           $seen{$&}++;
-           $context{$&} .= "> $_" if $T2H_VERBOSE;
-           $_ = "$`XX$'";
-           redo;
-       }
-       if (/\@(\w+)/) {
-           ($before, $match, $after) = ($`, $&, $');
-           if ($before =~ /\b[\w-]+$/ && $after =~ /^[\w-.]*\b/) { # e-mail address
-               $seen{'e-mail address'}++;
-               $context{'e-mail address'} .= "> $_" if $T2H_VERBOSE;
-           } else {
-               $seen{$match}++;
-               $context{$match} .= "> $_" if $T2H_VERBOSE;
-           }
-           $match =~ s/^\@/X/;
-           $_ = "$before$match$after";
-           redo;
-       }
-    }
-    
-    foreach (sort(keys(%seen))) {
-       if ($T2H_VERBOSE) {
-           print "$_\n";
-           print $context{$_};
-       } else {
-           print "$_ ($seen{$_})\n";
-       }
-    }
-}
-
-sub open {
-    local($name) = @_;
-
-    ++$fh_name;
-    if (open($fh_name, $name)) {
-       unshift(@fhs, $fh_name);
-    } else {
-       warn "$ERROR Can't read file $name: $!\n";
-    }
-}
-
-sub init_input {
-    @fhs = ();                 # hold the file handles to read
-    @input_spool = ();         # spooled lines to read
-    $fh_name = 'FH000';
-    &open($docu);
-}
-
-sub next_line {
-    local($fh, $line);
-
-    if (@input_spool) {
-       $line = shift(@input_spool);
-       return($line);
-    }
-    while (@fhs) {
-       $fh = $fhs[0];
-       $line = <$fh>;
-       return($line) if $line;
-       close($fh);
-       shift(@fhs);
-    }
-    return(undef);
-}
-
-# used in pass 1, use &next_line
-sub skip_until {
-    local($tag) = @_;
-    local($_);
-
-    while ($_ = &next_line) {
-       return if /^\@end\s+$tag\s*$/;
-    }
-    die "* Failed to find '$tag' after: " . $lines[$#lines];
-}
-
-# used in pass 1 for l2h use &next_line
-sub string_until {
-    local($tag) = @_;
-    local($_, $string);
-
-    while ($_ = &next_line) {
-       return $string if /^\@end\s+$tag\s*$/;
-#      $_ =~ s/hbox/mbox/g;
-       $string = $string.$_;
-    }
-    die "* Failed to find '$tag' after: " . $lines[$#lines];
-}
-
-#
-# HTML stacking to have a better HTML output
-#
-
-sub html_reset {
-    @html_stack = ('html');
-    $html_element = 'body';
-}
-
-sub html_push {
-    local($what) = @_;
-    push(@html_stack, $html_element);
-    $html_element = $what;
-}
-
-sub html_push_if {
-    local($what) = @_;
-    push(@html_stack, $html_element)
-       if ($html_element && $html_element ne 'P');
-    $html_element = $what;
-}
-
-sub html_pop {
-    $html_element = pop(@html_stack);
-}
-
-sub html_pop_if {
-    local($elt);
-
-    if (@_) {
-       foreach $elt (@_) {
-           if ($elt eq $html_element) {
-               $html_element = pop(@html_stack) if @html_stack;
-               last;
-           }
-       }
-    } else {
-       $html_element = pop(@html_stack) if @html_stack;
-    }
-}
-
-sub html_debug {
-    local($what, $line) = @_;
-    if ($T2H_DEBUG & $DEBUG_HTML)
-    {
-     $what = "\n" unless $what;
-     return("<!-- $line @html_stack, $html_element -->$what")
-    }  
-    return($what);
-}
-
-# to debug the output...
-sub debug {
-    local($what, $line) = @_;
-    return("<!-- $line -->$what")
-       if $T2H_DEBUG & $DEBUG_HTML;
-    return($what);
-}
-
-sub SimpleTexi2Html
-{
-  local $_ = $_[0];
-  &protect_texi;
-  &protect_html;
-  $_ = substitute_style($_);
-  $_[0]  = $_;
-}
-
-sub normalise_node {
-  local $_ = $_[0];
-  s/\s+/ /g;
-  s/ $//;
-  s/^ //;
-  &protect_texi;
-  &protect_html;
-  $_ = substitute_style($_);
-  $_[0]  = $_;
-}
-
-sub menu_entry 
-{
-  my ($node, $name, $descr) = @_;
-  my ($href, $entry);
-  
-  &normalise_node($node);
-  $href = $node2href{$node};
-  if ($href) 
-  {
-    $descr =~ s/^\s+//;
-    $descr =~ s/\s*$//;
-    $descr = SimpleTexi2Html($descr);
-    if ($T2H_NUMBER_SECTIONS && !$T2H_NODE_NAME_IN_MENU && $node2sec{$node})
-    {
-      $entry = $node2sec{$node};
-      $name = '';
-    }
-    else
-    {
-      &normalise_node($name);
-      $entry = ($name && ($name ne $node || ! $T2H_AVOID_MENU_REDUNDANCY) 
-               ? "$name : $node" : $node);
-    }
-
-    if ($T2H_AVOID_MENU_REDUNDANCY && $descr)
-    {
-      my $clean_entry = $entry;
-      $clean_entry =~ s/^.*? // if ($clean_entry =~ /^([A-Z]|\d+)\.[\d\.]* /);
-      $clean_entry =~ s/[^\w]//g;
-      my $clean_descr = $descr;
-      $clean_descr =~ s/[^\w]//g;
-      $descr = '' if ($clean_entry eq $clean_descr)
-    }
-    push(@lines2,&debug('<TR><TD ALIGN="left" VALIGN="TOP">' . 
-                       &t2h_anchor('', $href, $entry) . 
-                       '</TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">' . 
-                       $descr . 
-                       "</TD></TR>\n", __LINE__));
-  }
-  elsif ($node =~ /^\(.*\)\w+/)
-  {
-    push(@lines2,&debug('<TR><TD ALIGN="left" VALIGN="TOP">' . 
-                       $entry . 
-                       '</TD><TD ALIGN="left" VALIGN="TOP">' . $descr . 
-                       "</TD></TR>\n", __LINE__))
-  }
-  else
-  {
-    warn "$ERROR Undefined node of menu_entry ($node): $_";
-  }
-}
-
-sub do_ctrl { "^$_[0]" }
-
-sub do_email {
-    local($addr, $text) = split(/,\s*/, $_[0]);
-
-    $text = $addr unless $text;
-    &t2h_anchor('', "mailto:$addr", $text);
-}
-
-sub do_sc 
-{ 
-  # l2h does this much better
-  return &l2h_ToLatex("{\\sc ".&unprotect_html($_[0])."}") if ($T2H_L2H);
-  return "\U$_[0]\E";
-}
-
-sub do_math
-{
-  return &l2h_ToLatex("\$".&unprotect_html($_[0])."\$") if ($T2H_L2H);
-  return "<EM>".$text."</EM>";
-}
-
-sub do_uref {
-    local($url, $text, $only_text) = split(/,\s*/, $_[0]);
-
-    $text = $only_text if $only_text;
-    $text = $url unless $text;
-    &t2h_anchor('', $url, $text);
-}
-
-sub do_url { &t2h_anchor('', $_[0], $_[0]) }
-
-sub do_acronym
-{
-  return '<FONT SIZE="-1">' . $_[0] . '</FONT>';
-}
-
-sub do_accent
-{
-  return "&$_[0]acute;" if $_[1] eq 'H';
-  return "$_[0]." if $_[1] eq 'dotaccent';
-  return "$_[0]*" if $_[1] eq 'ringaccent';
-  return "$_[0]".'[' if $_[1] eq 'tieaccent';
-  return "$_[0]".'(' if $_[1] eq 'u';
-  return "$_[0]_" if $_[1] eq 'ubaraccent';
-  return ".$_[0]" if $_[1] eq 'udotaccent';
-  return "$_[0]&lt;" if $_[1] eq 'v';
-  return "&$_[0]cedil;" if $_[1] eq ',';
-  return "$_[0]" if $_[1] eq 'dotless';
-  return undef;
-}
-
-sub apply_style {
-    local($texi_style, $text) = @_;
-    local($style);
-
-    $style = $style_map{$texi_style};
-    if (defined($style)) { # known style
-       if ($style =~ /^\"/) { # add quotes
-           $style = $';
-           $text = "\`$text\'";
-       }
-       if ($style =~ /^\&/) { # custom
-           $style = $';
-           $text = &$style($text, $texi_style);
-       } elsif ($style) { # good style
-           $text = "<$style>$text</$style>";
-       } else { # no style
-       }
-    } else { # unknown style
-       $text = undef;
-    }
-    return($text);
-}
-
-# remove Texinfo styles
-sub remove_style {
-    local($_) = @_;
-    1 while(s/\@\w+{([^\{\}]+)}/$1/g);
-    return($_);
-}
-
-sub remove_things
-{
-  local ($_) = @_;
-  s|\@(\w+)\{\}|$1|g;
-  return $_;
-}
-
-sub substitute_style {
-    local($_) = @_;
-    local($changed, $done, $style, $text);
-
-    &simple_substitutions;
-    $changed = 1;
-    while ($changed) {
-       $changed = 0;
-       $done = '';
-       while (/\@(\w+){([^\{\}]+)}/ || /\@(,){([^\{\}]+)}/) {
-           $text = &apply_style($1, $2);
-           if ($text) {
-               $_ = "$`$text$'";
-               $changed = 1;
-           } else {
-               $done .= "$`\@$1";
-               $_ = "{$2}$'";
-           }
-       }
-        $_ = $done . $_;
-    }
-    return($_);
-}
-
-sub t2h_anchor {
-    local($name, $href, $text, $newline, $extra_attribs) = @_;
-    local($result);
-
-    $result = "<A";
-    $result .= " NAME=\"$name\"" if $name;
-    if ($href)
-    {
-      $href =~ s|^$T2H_HREF_DIR_INSTEAD_FILE|./| 
-       if ($T2H_HREF_DIR_INSTEAD_FILE);
-      $result .= ($href =~ /\"/ ? " HREF='$href'"  : " HREF=\"$href\"");
-    }
-    $result .= " $extra_attribs" if $extra_attribs;
-    $result .= ">$text</A>";
-    $result .= "\n" if $newline;
-    return($result);
-}
-
-sub pretty_date {
-    local(@MoY, $sec, $min, $hour, $mday, $mon, $year, $wday, $yday, $isdst);
-
-    @MoY = ('January', 'February', 'March', 'April', 'May', 'June',
-           'July', 'August', 'September', 'October', 'November', 'December');
-    ($sec, $min, $hour, $mday, $mon, $year, $wday, $yday, $isdst) = localtime(time);
-    $year += ($year < 70) ? 2000 : 1900;
-    # obachman: Let's do it as the Americans do
-    return("$MoY[$mon], $mday  $year");
-}
-
-sub doc_href {
-    local($num) = @_;
-
-    return("${docu_name}_$num.$docu_ext");
-}
-
-sub sec_href
-{
-  return $node2href{$sec2node{$_[0]}};
-}
-
-sub next_doc {
-    $docu_doc = &doc_href(++$doc_num);
-}
-
-sub t2h_print_lines {
-    my ($fh, $lines) = @_;
-    local($_);
-    $lines = $T2H_THIS_SECTION unless $lines;
-    my $cnt = 0;
-    for (@$lines) 
-    {
-       $_ = l2h_FromHtml($_) if ($T2H_L2H);
-       if (/^$PROTECTTAG/o) {
-           $_ = $tag2pro{$_};
-       } else {
-           &unprotect_texi;
-       }
-       print $fh $_;
-       $cnt += split(/\W*\s+\W*/);
-    }
-    return $cnt;
-}
-
-sub protect_texi {
-    # protect @ { } ` '
-    s/\@\@/$;0/go;
-    s/\@\{/$;1/go;
-    s/\@\}/$;2/go;
-    s/\@\`/$;3/go;
-    s/\@\'/$;4/go;
-}
-
-sub protect_html {
-    local($what) = @_;
-    # protect & < >
-    $what =~ s/\&/\&\#38;/g;
-    $what =~ s/\</\&\#60;/g;
-    $what =~ s/\>/\&\#62;/g;
-    # restore anything in quotes
-    # this fixes my problem where I had:
-    # < IMG SRC="leftarrow.gif" ALT="<--" >  but what if I wanted &#60; in my ALT text ??
-    # maybe byte stuffing or some other technique should be used.
-    $what =~ s/\"([^\&]+)\&\#60;(.*)\"/"$1<$2"/g;
-    $what =~ s/\"([^\&]+)\&\#62;(.*)\"/"$1>$2"/g;
-    $what =~ s/\"([^\&]+)\&\#38;(.*)\"/"$1&$2"/g;
-    # but recognize some HTML things
-    $what =~ s/\&\#60;\/A\&\#62;/<\/A>/g;            # </A>
-    $what =~ s/\&\#60;A ([^\&]+)\&\#62;/<A $1>/g;     # <A [^&]+>
-    $what =~ s/\&\#60;IMG ([^\&]+)\&\#62;/<IMG $1>/g; # <IMG [^&]+>
-    return($what);
-}
-
-sub unprotect_texi {
-    s/$;0/\@/go;
-    s/$;1/\{/go;
-    s/$;2/\}/go;
-    s/$;3/\`/go;
-    s/$;4/\'/go;
-}
-
-sub Unprotect_texi 
-{
-  local $_ = shift;
-  &unprotect_texi;
-  return($_);
-}
-
-sub unprotect_html {
-    local($what) = @_;
-    $what =~ s/\&\#38;/\&/g;
-    $what =~ s/\&\#60;/\</g;
-    $what =~ s/\&\#62;/\>/g;
-    return($what);
-}
-
-sub t2h_print_label
-{
-    my $fh = shift;
-    my $href = shift || $T2H_HREF{This};
-    $href =~ s/.*#(.*)$/$1/;
-    print $fh qq{<A NAME="$href"></A>\n};
-}
-
-##############################################################################
-
-       # These next few lines are legal in both Perl and nroff.
-
-.00 ;                  # finish .ig
-'di                    \" finish diversion--previous line must be blank
-.nr nl 0-1             \" fake up transition to first page again
-.nr % 0                        \" start at page 1
-'; __END__ ############# From here on it's a standard manual page ############
-.so /usr/local/man/man1/texi2html.1
diff --git a/support/version2.c b/support/version2.c
deleted file mode 100644 (file)
index 83e2b13..0000000
+++ /dev/null
@@ -1,91 +0,0 @@
-/* version.c -- distribution and version numbers. */
-
-/* Copyright (C) 1989-2009 Free Software Foundation, Inc.
-
-   This file is part of GNU Bash, the Bourne Again SHell.
-
-   Bash is free software: you can redistribute it and/or modify
-   it under the terms of the GNU General Public License as published by
-   the Free Software Foundation, either version 2 of the License, or
-   (at your option) any later version.
-
-   Bash 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 General Public License for more details.
-
-   You should have received a copy of the GNU General Public License
-   along with Bash.  If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#include <config.h>
-
-#include <stdio.h>
-
-#include "stdc.h"
-
-#include "version.h"
-#include "patchlevel.h"
-#include "conftypes.h"
-
-#include "bashintl.h"
-
-extern char *shell_name;
-
-/* Defines from version.h */
-const char * const dist_version = DISTVERSION;
-const int patch_level = PATCHLEVEL;
-const int build_version = BUILDVERSION;
-#ifdef RELSTATUS
-const char * const release_status = RELSTATUS;
-#else
-const char * const release_status = (char *)0;
-#endif
-const char * const sccs_version = SCCSVERSION;
-
-/* If == 31, shell compatible with bash-3.1, == 32 with bash-3.2, and so on */
-int shell_compatibility_level = DEFAULT_COMPAT_LEVEL;
-
-/* Functions for getting, setting, and displaying the shell version. */
-
-/* Forward declarations so we don't have to include externs.h */
-extern char *shell_version_string __P((void));
-extern void show_shell_version __P((int));
-
-/* Give version information about this shell. */
-char *
-shell_version_string ()
-{
-  static char tt[32] = { '\0' };
-
-  if (tt[0] == '\0')
-    {
-      if (release_status)
-#if defined (HAVE_SNPRINTF)
-       snprintf (tt, sizeof (tt), "%s.%d(%d)-%s", dist_version, patch_level, build_version, release_status);
-#else
-       sprintf (tt, "%s.%d(%d)-%s", dist_version, patch_level, build_version, release_status);
-#endif
-      else
-#if defined (HAVE_SNPRINTF)
-       snprintf (tt, sizeof (tt), "%s.%d(%d)", dist_version, patch_level, build_version);
-#else
-       sprintf (tt, "%s.%d(%d)", dist_version, patch_level, build_version);
-#endif
-    }
-  return tt;
-}
-
-void
-show_shell_version (extended)
-     int extended;
-{
-  printf (_("GNU bash, version %s (%s)\n"), shell_version_string (), MACHTYPE);
-  if (extended)
-    {
-      printf (_("Copyright (C) 2009 Free Software Foundation, Inc.\n"));
-      printf (_("License GPLv2+: GNU GPL version 2 or later <http://gnu.org/licenses/gpl.html>\n"));
-      printf (_("This is free software; you are free to change and redistribute it.\n"));
-      printf (_("There is NO WARRANTY, to the extent permitted by law.\n"));
-    }
-}
diff --git a/tests/-i b/tests/-i
deleted file mode 100644 (file)
index e69de29..0000000
diff --git a/tests/RUN-ONE-TEST b/tests/RUN-ONE-TEST
deleted file mode 100755 (executable)
index 3efcf32..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-BUILD_DIR=/usr/local/build/chet/bash/bash-current
-THIS_SH=$BUILD_DIR/bash
-PATH=$PATH:$BUILD_DIR
-
-export THIS_SH PATH
-
-rm -f /tmp/xx
-
-/bin/sh "$@"
diff --git a/tests/RUN-ONE-TEST.gprof b/tests/RUN-ONE-TEST.gprof
deleted file mode 100755 (executable)
index b29a64f..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-BUILD_DIR=/usr/local/build/bash/bash-20041216-gprof
-THIS_SH=$BUILD_DIR/bash
-PATH=$PATH:$BUILD_DIR
-
-export THIS_SH PATH
-
-rm -f /tmp/xx
-
-/bin/sh "$@"
diff --git a/tests/RUN-ONE-TEST.ksh b/tests/RUN-ONE-TEST.ksh
deleted file mode 100644 (file)
index 82461f4..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-BUILD_DIR=/usr/local/build/bash/bash-current
-THIS_SH=ksh93
-PATH=$PATH:$BUILD_DIR
-
-export THIS_SH PATH
-
-rm -f /tmp/xx
-
-/bin/sh "$@"
diff --git a/tests/RUN-TEST-SCRIPT b/tests/RUN-TEST-SCRIPT
deleted file mode 100755 (executable)
index 75fe594..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-BUILD_DIR=/usr/local/build/chet/bash/bash-current
-THIS_SH=$BUILD_DIR/bash
-PATH=$PATH:$BUILD_DIR
-
-export THIS_SH PATH
-
-${THIS_SH} "$@"
diff --git a/tests/braces-tests b/tests/braces-tests
deleted file mode 100644 (file)
index d31a5e3..0000000
+++ /dev/null
@@ -1,24 +0,0 @@
-echo ff{c,b,a}
-echo f{d,e,f}g
-echo {l,n,m}xyz
-echo {abc\,def}
-echo {abc}
-
-echo \{a,b,c,d,e}
-echo {x,y,\{a,b,c}}
-echo {x\,y,\{abc\},trie}
-
-echo /usr/{ucb/{ex,edit},lib/{ex,how_ex}}
-
-echo XXXX\{`echo a b c | tr ' ' ','`\}
-eval echo XXXX\{`echo a b c | tr ' ' ','`\}
-
-echo {}
-echo { }
-echo }
-echo {
-echo abcd{efgh
-
-echo foo {1,2} bar
-echo `zecho foo {1,2} bar`
-echo $(zecho foo {1,2} bar)
diff --git a/tests/cond-regexp.sub b/tests/cond-regexp.sub
deleted file mode 100644 (file)
index 47e46f0..0000000
+++ /dev/null
@@ -1,49 +0,0 @@
-VAR='[[:alpha:]]'
-
-[[ $VAR =~ '[[:alpha:]]' ]] && echo match 1
-
-[[ a =~ '[[:alpha:]]' ]] || echo match 2
-
-[[ a =~ [[:alpha:]] ]] && echo match 3
-
-[[ a =~ $VAR ]] && echo match 4
-
-[[ a =~ "$VAR" ]] || echo match 5
-
-line=aab
-[[ $line =~ [[:space:]]*(a)?b ]] && echo match 6
-
-V="alphabet"
-[[ $V == alphabet ]] && echo yes 1
-[[ $V == "alphabet" ]] && echo yes 2
-[[ $V == 'alphabet' ]] && echo yes 3
-[[ $V =~ alphabet ]] && echo yes 4
-[[ $V =~ "alphabet" ]] && echo yes 5
-[[ $V =~ 'alphabet' ]] && echo yes 6
-
-DOG="Dog name - 01 - Wiggles"
-REPAT='([[:alpha:][:blank:]]*)- ([[:digit:]]*) - (.*)$'
-if [[ $DOG =~ ([[:alpha:][:blank:]]*)-\ ([[:digit:]]*)\ -\ (.*)$ ]]
-then
-   echo Dog ${BASH_REMATCH[2]} is ${BASH_REMATCH[3]}
-fi
-if [[ $DOG =~ $REPAT ]]
-then
-   echo Dog ${BASH_REMATCH[2]} is ${BASH_REMATCH[3]}
-fi
-
-[[ $REPAT =~ "$REPAT" ]] && echo rematch 1
-
-v="one two buckle my shoe"
-[[ ${v} =~ "one two" ]] && echo matches 7
-
-[[ ${v} =~ (one two) ]] && echo matches 8
-
-[[ ${v} =~ one\ two ]] && echo matches 9
-
-# problems in pre-patched bash-4.2
-[[ "hello\ 1world" =~ llo\ 1 ]] && echo match control-a 1
-[[ "hello\ 1world" =~ \ 1world ]] && echo match control-a 2
-[[ "hello\ 1world" =~ \ 1world$ ]] && echo match control-a 3
-[[ "hello\ 1world" =~ \ 1 ]] && echo match control-a 4
-[[ "hello\ 1world" =~ o\ 1world$ ]] && echo match control-a 5
diff --git a/tests/cprint1.sub b/tests/cprint1.sub
deleted file mode 100644 (file)
index 4273045..0000000
+++ /dev/null
@@ -1,48 +0,0 @@
-a()
-{
-       cat <<-'+' | tr "\t" " " | tr -s " "
-               cat - | utkSort
-               itkSchemaToColumnType
-               atkCacheToColumnType \"$npName\" | atkActiveTableLineSelect
-| utkSort
-               atkCacheToColumnType \"$npName\" |
-atkTransactionTableLineSelect | utkSort
-               itkDirToColumnType \"$dirName\" | atkActiveTableLineSelect |
-utkSort
-               itkDirToColumnType \"$dirName\" | atkActiveTableLineSelect |
-utkSort
-       +
-}
-
-type a
-
-b()
-{
-       cat /etc/passwd | cat - <<-'+' | tr -s " "
-       more
-       passwords
-       from
-       the
-       file
-       +
-}
-
-type b
-
-c()
-{
-       cat /etc/passwd | tr -s " " | cat - <<-'+' | cat - <<-'foo'
-       more
-       passwords
-       from
-       the
-       file
-       +
-last
-bunch
-of
-words
-foo
-}
-
-type c
diff --git a/tests/cracauer-testsuite/DOC b/tests/cracauer-testsuite/DOC
deleted file mode 100644 (file)
index 30e8150..0000000
+++ /dev/null
@@ -1,13 +0,0 @@
-The scripts './test01.sh' to './test05.sh' all echo to stdout what
-they should do and what behaviour is expected. Test them interactivly.
-
-Do a 'make' first to build a sample program that makes use of SIGQUIT
-and SIGINT. Links the shell to test to './testshell' or './testcsh'.
-
-Remember to 
-   stty quit '^\'
-after each test. It seens resetting the terminal sometimes doesn't
-reset the keys as well.
-
-The file OBSERVATIONS contains the misbehaviour I found.
-
diff --git a/tests/cracauer-testsuite/Makefile b/tests/cracauer-testsuite/Makefile
deleted file mode 100644 (file)
index 103bb93..0000000
+++ /dev/null
@@ -1,12 +0,0 @@
-ALL = catcher
-
-all: $(ALL)
-
-DEPSTUFF = Makefile
-
-CFLAGS = -O -g -Wall -D_POSIX_SOURCE
-
-catcher: $(DEPSTUFF) catcher.c 
-
-clean:
-       -rm $(ALL) *.core core *.o
diff --git a/tests/cracauer-testsuite/OBSERVATIONS b/tests/cracauer-testsuite/OBSERVATIONS
deleted file mode 100644 (file)
index b856d08..0000000
+++ /dev/null
@@ -1,84 +0,0 @@
-CRA = my diffs.
-BDE = Bruce diffs.
-
-BDE version 19980212:
-
-Test 2: It should send SIGQUIT to cat, it doesn't.
-
-Test 9: can't break wait()
-
-%% older notes:
-
-test2:
-  trap '' 2
-  while : ; do cat ; echo -n $? ; done
-test6:
-  trap '' 3
-  while : ; do cat ; echo -n $? ; done
-
-The trapped signal should be ignored. If SIGINT is ignored (test 2),
-SIGQUIT exits `cat`, but not the shell (means the loop will continue
-and `cat` will be called again). 
-
-If SIGQUIT is ignored, SIGINT both exit the whole script.
-
-I'm not sure this asymmetric behaviour is intended, but currently CRA
-and BDE versions has is.
-
-I think SIGTERM should exit the script in all cases immedeatly. CRA
-version does this, BDE version ignores SIGTERM.
-
-bash1 falls over completely on these tests.
-
-bash2 works like CRA version.
-
-Other tests:
-------------
-
-BDE version fails on 5, the shell terminated while the forground child
-is running (like the unpatched FreeBSD sh did). 
-
-BDE version handles SIGQUIT seperately from SIGINT in test 1, and 3,
-but not in test 4 and 5.
-
-bash2 fails on 5, it gets a SIGQUIT that was sent to a
-SIGQUIT-catching process after that process exits. Reliably, it
-doesn't matter how much time was passed between SIGQUIT to process and
-exit or process.
-
-As Bruce noted, bash version 1 fails on test 2 like my version of sh
-does. bash1 doesn't have the bash2 problem on test 5 (getting signals
-that were caught by the child after the child exits).
-
-zsh fails on test 1 and 5 in a similar way bash2 failed on 5: After a
-child exits that received SIGINT, it terminates immedeatly.
-
-I wonder how bash 2 manages to fail on test 5, but to pass test 1...
-
-csh fails on test 1 in two ways:
-- when the SIGINT/SIGQUIT-catching child receives both SIGQUIT and
-  SIGINT, csh exits immedeatly, while the child is still running.
-- when only one or more SIGQUIT are delivered to the child, csh gets
-  it after the child exits and terminates with coredump.
-
-csh also ignores SIGQUIT where SIGINT is caught.
-
-test2.csh is different from test1.sh in that all signals should be
-caught. csh fails in that it sometimes gets SIGQUIT and exits with
-coredump (the shell, not the child). 
-
-
-Other stuff not directly relevant to these fixes:
-=================================================
-
-csh oddness:
-------------
-
-When the "catcher" program resets the terminal, there's a time-window
-where C-g is mapped to SIGQUIT, but "catcher" already exited. In other
-word, if you type C-g while in "catcher", then immedeatly C-d, csh
-will get SIGQUIT. I thought that remapping the terminal keys should
-have been done before the shell is re-entered. The same happens to
-tcsh. 
-
-With sh variants I didn't manage to deliver SIGQUIT by C-g.
diff --git a/tests/cracauer-testsuite/QUESTIONS b/tests/cracauer-testsuite/QUESTIONS
deleted file mode 100644 (file)
index a1620be..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Should the background job be killed in test 3?
diff --git a/tests/cracauer-testsuite/catcher.c b/tests/cracauer-testsuite/catcher.c
deleted file mode 100644 (file)
index f2de71c..0000000
+++ /dev/null
@@ -1,142 +0,0 @@
-#undef VERBOSE
-
-#include <stdio.h>
-#include <signal.h>
-#include <unistd.h>
-#include <fcntl.h>
-#include <errno.h>
-
-#include <sys/types.h>
-#include <termios.h>
-
-#include <sys/ttydefaults.h>
-
-#define BUFSIZE 65536
-
-struct termios ttystate;
-struct termios oldttystate;
-int cleanupP = 0;
-
-#ifndef CTRL
-#define CTRL(x) (x&037)
-#endif
-
-int _global_fd;
-
-void handler2(int sig)
-{
-#define TMP "Async action on sigint (2)\n"
-  write(1,TMP,sizeof(TMP)-1);
-#undef TMP
-}
-
-void handler3(int sig)
-{
-#define TMP "Async action on sigquit (3)\n"
-  write(1,TMP,sizeof(TMP)-1);
-#undef TMP
-}
-
-void cleanup()
-{
-  if (cleanupP) {
-    printf("Resettung terminal\n");
-    if (tcsetattr(_global_fd, TCSANOW, &oldttystate) < 0) {
-      perror("ioctl reset /dev/tty");
-    }
-  }
-  close(_global_fd);
-}
-
-static void exit_handler(int sig)
-#ifdef __GNUC__
-    __attribute__ ((noreturn))
-#endif
-;
-static void exit_handler(int sig)
-{
-  cleanup();
-  if (sig)
-    printf("Exiting on signal %d\n",sig);
-  exit(0);
-}
-
-int main()
-{
-  char c[BUFSIZE];
-  pid_t pgrp;
-
-#ifdef VERBOSE
-  printf("I'm PID %d\n",getpid());
-#endif
-
-  if ( (  _global_fd = open("/dev/tty",O_RDONLY)) < 1) {
-    perror("open /dev/tty");
-    exit_handler(0);
-  }
-  
-  if ( (pgrp = tcgetpgrp(_global_fd)) < 0) {
-    perror("Can't get pgrp\n");
-    exit_handler(0);
-  }
-#ifdef VERBOSE
-  printf("tty pgrp is %ld\n",(long)pgrp);
-#endif
-
-  if ( tcsetpgrp(_global_fd, pgrp) < 0) {
-    perror("Can't set pgrp\n");
-    exit_handler(0);
-  }
-
-  if (tcgetattr(_global_fd, &oldttystate) < 0) {
-    perror("ioctl1 /dev/tty");
-    exit_handler(0);
-  }
-  ttystate = oldttystate;
-  ttystate.c_lflag &= ~ICANON;
-  ttystate.c_lflag &= ~ECHO;
-  ttystate.c_cc[VQUIT] = CTRL('g'); /* From sys/ttydefaults.h */
-  if (tcsetattr(_global_fd, TCSANOW, &ttystate) < 0) {
-    perror("ioctl2 /dev/tty");
-    exit_handler(0);
-  }
-  cleanupP = 1;
-
-  {
-    struct sigaction siga;
-    
-    sigemptyset(&siga.sa_mask);
-    siga.sa_flags = 0;
-
-    siga.sa_handler = handler2;
-    sigaction(SIGINT, &siga, (struct sigaction *)0);
-    siga.sa_handler = handler3;
-    sigaction(SIGQUIT, &siga, (struct sigaction *)0);
-
-    siga.sa_handler = exit_handler;
-    sigaction(SIGHUP, &siga, (struct sigaction *)0);
-    sigaction(SIGTERM, &siga, (struct sigaction *)0);
-  }
-
-  printf("Use C-c and C-g for async actions, end with C-d\n");
-  while (1) {
-    switch (read(_global_fd,c,1)) {
-    case -1:
-      if (errno == EINTR)
-       continue;
-      perror("stdin read");
-      exit_handler(0);
-    case 0:
-      printf("Exiting on stdin EOF (should happen only in cannon mode\n");
-      exit_handler(0);
-    default:
-      if (c[0] == CEOF) { /* From sys/ttydefaults.h */
-       printf("Exiting on stdin EOF (hopefully only in noncannon mode)\n");
-       exit_handler(0);
-      }
-      printf("You typed: '%c' (0x%X)\n",c[0],c[0]);
-    }
-  }
-  exit_handler(0);
-  return 0;
-}
diff --git a/tests/cracauer-testsuite/lib.csh b/tests/cracauer-testsuite/lib.csh
deleted file mode 100644 (file)
index b8e8a77..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-# I don't have a clue about csh programming...
-
-alias docatcher '\
-    echo "Trigger some async actions, shell should not exit" \
-    echo "Then exit catcher with C-d" \
-    ./catcher'
-
diff --git a/tests/cracauer-testsuite/lib.sh b/tests/cracauer-testsuite/lib.sh
deleted file mode 100644 (file)
index 8e87565..0000000
+++ /dev/null
@@ -1,14 +0,0 @@
-docatcher()
-{
-    echo 'Trigger some async actions, shell should not exit'
-    echo 'Then exit catcher with C-d'
-    if [ ! -f ./catcher ] ; then
-       make catcher
-    fi
-    ./catcher
-}
-
-endless()
-{
-    while : ; do foo=1 ; done
-}
\ No newline at end of file
diff --git a/tests/cracauer-testsuite/test01.csh b/tests/cracauer-testsuite/test01.csh
deleted file mode 100644 (file)
index bf50bc7..0000000
+++ /dev/null
@@ -1,12 +0,0 @@
-#!./testcsh -f
-
-echo 'Test 1: See whether child can work on SIGINT and SIGQUIT without'
-echo '        terminating the shell around it. See if the shell is'
-echo '        interruptable afterwards'
-
-source lib.csh
-
-docatcher
-echo "No try to exit shell loop with C-c, C-\ or SIGTERM"
-while (1)
-end
diff --git a/tests/cracauer-testsuite/test01.sh b/tests/cracauer-testsuite/test01.sh
deleted file mode 100644 (file)
index fabf8fb..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-#!./testshell
-
-echo 'Test 1: See whether child can work on SIGINT and SIGQUIT without'
-echo '        terminating the shell around it. See if the shell is'
-echo '        interruptable afterwards'
-
-if [ $ZSH_VERSION ] ; then
-    source lib.sh
-else
-    . lib.sh
-fi
-
-docatcher
-echo 'Now try to exit shell loop with C-c, C-\ or SIGTERM'
-endless
diff --git a/tests/cracauer-testsuite/test02.csh b/tests/cracauer-testsuite/test02.csh
deleted file mode 100644 (file)
index a60d70a..0000000
+++ /dev/null
@@ -1,13 +0,0 @@
-#!./testcsh -f
-
-echo 'Test 2: You should not be able to end cat using anything besides SIGKILL'
-
-source lib.csh
-
-onintr -
-
-while (1)
-    echo cat
-    cat
-    echo Exited with $?
-end
diff --git a/tests/cracauer-testsuite/test02.sh b/tests/cracauer-testsuite/test02.sh
deleted file mode 100644 (file)
index 4c6f82d..0000000
+++ /dev/null
@@ -1,10 +0,0 @@
-#!./testshell
-
-echo 'Test 2: You should not be able to exit `cat` with SIGINT.'
-echo '        SIGQUIT should abort `cat` (with coredump) while'
-echo '        the shell should continue and call `cat` again.'
-echo '        SIGTERM should exit the whole script.'
-
-set -x
-trap '' 2
-while : ; do cat ; echo -n $? ; done
diff --git a/tests/cracauer-testsuite/test03.sh b/tests/cracauer-testsuite/test03.sh
deleted file mode 100644 (file)
index 955d6dd..0000000
+++ /dev/null
@@ -1,18 +0,0 @@
-#!./testshell 
-
-echo 'Test 3: A background job is being started, then the shell loops.'
-echo '        You should be able to break the shell loop with C-c.'
-echo '        This goes wrong if the shell blocks signals when'
-echo '        starting any child. It should do so only for foreground'
-echo '        jobs.'
-
-if [ $ZSH_VERSION ] ; then
-    source lib.sh
-else
-    . lib.sh
-fi
-
-echo Starting job
-gzip < /dev/zero | wc &
-echo 'Now try to break this loop'
-endless
diff --git a/tests/cracauer-testsuite/test04.sh b/tests/cracauer-testsuite/test04.sh
deleted file mode 100644 (file)
index 962aa7a..0000000
+++ /dev/null
@@ -1,18 +0,0 @@
-#!./testshell 
-
-echo 'Test 4: Three shells all loop. You should be able to terminate this'
-echo '        script with just one SIGINT or SIGQUIT'
-
-if [ $ZSH_VERSION ] ; then
-    source lib.sh
-else
-    . lib.sh
-fi
-
-(
-    (
-       endless
-    )
-    endless
-)
-endless
diff --git a/tests/cracauer-testsuite/test05.sh b/tests/cracauer-testsuite/test05.sh
deleted file mode 100644 (file)
index cbef1ae..0000000
+++ /dev/null
@@ -1,23 +0,0 @@
-#!./testshell 
-
-echo 'Test 5: The SIGINT/SIGQUIT-catching program is being run'
-echo '     A: The shell should not exit on signals while this program runs.'
-echo '     B: After you exited it via C-d, you should be able to end this'
-echo '        script with its 3 subhells with just one signal'
-echo '        script with just one SIGINT or SIGQUIT'
-
-if [ $ZSH_VERSION ] ; then
-    source lib.sh
-else
-    . lib.sh
-fi
-
-(
-    (
-       docatcher
-       echo "Now try to exit with one SIGINT"
-       endless
-    )
-    endless
-)
-endless
diff --git a/tests/cracauer-testsuite/test06.sh b/tests/cracauer-testsuite/test06.sh
deleted file mode 100644 (file)
index ce1b911..0000000
+++ /dev/null
@@ -1,10 +0,0 @@
-#!./testshell
-
-echo 'Test 2: You should not be able to exit `cat` with SIGQUIT.'
-echo '        SIGINT should exit `cat` (without coredump) while'
-echo '        the shell should continue and call `cat` again.'
-echo '        SIGTERM should exit the whole script.'
-
-set -x
-trap '' 3
-while : ; do cat ; echo -n $? ; done
diff --git a/tests/cracauer-testsuite/test07.csh b/tests/cracauer-testsuite/test07.csh
deleted file mode 100644 (file)
index 9909e32..0000000
+++ /dev/null
@@ -1,19 +0,0 @@
-#!./testcsh -f
-
-echo 'Test 7: See whether child can work on SIGINT and SIGQUIT without'
-echo '        terminating the shell around it. See if the shell'
-echo '        continues the script after the child exits'
-
-source lib.csh
-
-echo
-echo 'After the catching program, you should see 4 lines of text, sent'
-echo 'with one second delay each'
-docatcher
-echo 'You should see 3 more lines'
-sleep 1
-echo 'You should see 2 more lines'
-sleep 1
-echo 'You should see 1 more line'
-sleep 1
-echo 'Done'
diff --git a/tests/cracauer-testsuite/test07.sh b/tests/cracauer-testsuite/test07.sh
deleted file mode 100644 (file)
index 2f87ce4..0000000
+++ /dev/null
@@ -1,23 +0,0 @@
-#!./testshell
-
-echo 'Test 7: See whether child can work on SIGINT and SIGQUIT without'
-echo '        terminating the shell around it. See if the shell'
-echo '        continues the script after the child exits'
-
-if [ $ZSH_VERSION ] ; then
-    source lib.sh
-else
-    . lib.sh
-fi
-
-echo
-echo 'After the catching program, you should see 4 lines of text, sent'
-echo 'with one second delay each'
-docatcher
-echo 'You should see 3 more lines'
-sleep 1
-echo 'You should see 2 more lines'
-sleep 1
-echo 'You should see 1 more line'
-sleep 1
-echo 'Done'
diff --git a/tests/cracauer-testsuite/test08.sh b/tests/cracauer-testsuite/test08.sh
deleted file mode 100644 (file)
index 87bde69..0000000
+++ /dev/null
@@ -1,19 +0,0 @@
-#!./testshell
-
-echo 'Test 8: Start a child that is to be interrupted by SIGINT.'
-echo '        The shell should not continue with the script'
-
-if [ $ZSH_VERSION ] ; then
-    source lib.sh
-else
-    . lib.sh
-fi
-
-echo
-echo 'Should exit immedeatly after you break cat by SIGINT'
-echo cat
-cat
-sleep 1
-echo 'If you see this, you have a problem'
-sleep 1
-echo 'If you see this, you have even more problems'
diff --git a/tests/cracauer-testsuite/test09.sh b/tests/cracauer-testsuite/test09.sh
deleted file mode 100644 (file)
index d12cb53..0000000
+++ /dev/null
@@ -1,14 +0,0 @@
-#!./testshell
-
-trap 'echo I am a trap' 2
-
-echo 'Try to break wait using SIGINT before wc completes'
-echo 'After you break wait, it should print "I am a trap"'
-echo 'and then "Going on"'
-echo 'wc &'
-gzip < /kernel | wc &
-p=$!
-echo wait
-wait
-echo "Going on"
-kill $p
diff --git a/tests/cracauer-testsuite/test10.sh b/tests/cracauer-testsuite/test10.sh
deleted file mode 100644 (file)
index a3bdc62..0000000
+++ /dev/null
@@ -1,4 +0,0 @@
-#!./testshell
-
-echo 'You should be able to end the script with one SIGINT'
-(while :; do wc /kernel > /dev/null ; done)
diff --git a/tests/cracauer-testsuite/test11.sh b/tests/cracauer-testsuite/test11.sh
deleted file mode 100644 (file)
index b56d68c..0000000
+++ /dev/null
@@ -1,13 +0,0 @@
-#!./testshell
-
-echo 'Test 11 (variant of 9):'
-echo 'Try to break wait using SIGINT before wc completes' 
-echo 'After you break wait, it should NOT print "Going on"'
-
-echo 'wc &'
-gzip < /kernel | wc &
-p=$!
-echo wait
-wait
-echo "Going on"
-kill $p
diff --git a/tests/cracauer-testsuite/test12.sh b/tests/cracauer-testsuite/test12.sh
deleted file mode 100644 (file)
index b724eae..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-#!./testshell
-
-echo 'Test 12 (Variant of test10):'
-echo 'You should be able to end the script with one SIGINT'
-(while :; do ./catcher ; done)
diff --git a/tests/cracauer-testsuite/test13.sh b/tests/cracauer-testsuite/test13.sh
deleted file mode 100644 (file)
index f4b8bb8..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-#!./testshell
-
-echo 'Test 13 (variant of Test 1):'
-echo 'On SIGINT, cat should exit (and be restarted by the shell loop)'
-echo 'and the Text "I am a trap" should be printed'
-
-set -x
-trap 'echo I am a trap' 2
-while : ; do cat ; echo -n $? ; done
diff --git a/tests/exp-tests b/tests/exp-tests
deleted file mode 100644 (file)
index 884b5a6..0000000
+++ /dev/null
@@ -1,380 +0,0 @@
-#
-# A suite of tests for bash word expansions
-#
-# This tests parameter and variable expansion, with an empahsis on
-# proper quoting behavior.
-#
-# Chet Ramey
-
-#
-# If you comment out the body of this function, you can do a diff against
-# `expansion-tests.right' to see if the shell is behaving correctly
-#
-expect()
-{
-       echo expect "$@"
-}
-
-# Test the substitution quoting characters (CTLESC and CTLNUL) in different
-# combinations
-
-expect "<^A>"
-recho `echo '\ 1'`
-expect "<^A>"
-recho `echo "\ 1"`
-expect "<^B>"
-recho `echo '\ 2'`
-expect "<^B>"
-recho `echo "\ 2"`
-expect "<^A>"
-recho `echo \ 1`
-expect "<^B>"
-recho `echo \ 2`
-
-# Test null strings without variable expansion
-expect "<abcdefgh>"
-recho abcd""efgh
-expect "<abcdefgh>"
-recho abcd''efgh
-expect "<abcdefgh>"
-recho ""abcdefgh
-expect "<abcdefgh>"
-recho ''abcdefgh
-expect "<abcd>"
-recho abcd""
-expect "<abcd>"
-recho abcd''
-
-# Test the quirky behavior of $@ in ""
-expect nothing
-recho "$@"
-expect "< >"
-recho " $@"
-expect "<-->"
-recho "-${@}-"
-
-# Test null strings with variable expansion that fails
-expect '<>'
-recho $xxx""
-expect '<>'
-recho ""$xxx
-expect '<>'
-recho $xxx''
-expect '<>'
-recho ''$xxx
-expect '<>'
-recho $xxx""$yyy
-expect '<>'
-recho $xxx''$yyy
-
-# Test null strings with variable expansion that succeeds
-xxx=abc
-yyy=def
-
-expect '<abc>'
-recho $xxx""
-expect '<abc>'
-recho ""$xxx
-expect '<abc>'
-recho $xxx''
-expect '<abc>'
-recho ''$xxx
-expect '<abcdef>'
-recho $xxx""$yyy
-expect '<abcdef>'
-recho $xxx''$yyy
-
-unset xxx yyy
-
-# Test the unquoted special quoting characters
-expect "<^A>"
-recho \ 1
-expect "<^B>"
-recho \ 2
-expect "<^A>"
-recho "\ 1"
-expect "<^B>"
-recho "\ 2"
-expect "<^A>"
-recho '\ 1'
-expect "<^B>"
-recho '\ 2'
-
-# Test expansion of a variable that is unset
-expect nothing
-recho $xxx
-expect '<>'
-recho "$xxx"
-
-expect nothing
-recho "$xxx${@}"
-
-# Test empty string expansion
-expect '<>'
-recho ""
-expect '<>'
-recho ''
-
-# Test command substitution with (disabled) history substitution
-expect '<Hello World!>'
-# set +H
-recho "`echo \"Hello world!\"`"
-
-# Test some shell special characters
-expect '<`>'
-recho "\`"
-expect '<">'
-recho "\""
-expect '<\^A>'
-recho "\\ 1"
-
-expect '<\$>'
-recho "\\$"
-
-expect '<\\>'
-recho "\\\\"
-
-# This should give argv[1] = a argv[2] = b
-expect '<a> <b>'
-FOO=`echo 'a b' | tr ' ' '\012'`
-recho $FOO
-
-# This should give argv[1] = ^A argv[2] = ^B
-expect '<^A> <^B>'
-FOO=`echo '\ 1 \ 2' | tr ' ' '\012'`
-recho $FOO
-
-# Test quoted and unquoted globbing characters
-expect '<**>'
-recho "*"*
-
-expect '<\.\./*/>'
-recho "\.\./*/"
-
-# Test patterns that come up when the shell quotes funny character
-# combinations
-expect '<^A^B^A^B>'
-recho '\ 1\ 2\ 1\ 2'
-expect '<^A^A>'
-recho '\ 1\ 1'
-expect '<^A^B>'
-recho '\ 1\ 2'
-expect '<^A^A^B>'
-recho '\ 1\ 1\ 2'
-
-# More tests of "$@"
-set abc def ghi jkl
-expect '<  abc> <def> <ghi> <jkl  >'
-recho "  $@  "
-expect '<  abc> <def> <ghi> <jkl  >'
-recho "${1+  $@  }"
-
-set abc def ghi jkl
-expect '<--abc> <def> <ghi> <jkl-->'
-recho "--$@--"
-
-set "a b" cd ef gh
-expect '<a b> <cd> <ef> <gh>'
-recho ${1+"$@"}
-expect '<a b> <cd> <ef> <gh>'
-recho ${foo:-"$@"}
-expect '<a b> <cd> <ef> <gh>'
-recho "${@}"
-
-expect '<  >'
-recho "  "
-expect '< - >'
-recho " - "
-
-# Test combinations of different types of quoting in a fully-quoted string
-# (so the WHOLLY_QUOTED tests fail and it doesn't get set)
-expect '</^root:/{s/^[^:]*:[^:]*:\([^:]*\).*$/\1/>'
-recho "/^root:/{s/^[^:]*:[^:]*:\([^:]*\).*"'$'"/\1/"
-
-# Test the various Posix parameter expansions
-
-expect '<foo bar>'
-recho "${x:-$(echo "foo bar")}"
-expect '<foo> <bar>'
-recho ${x:-$(echo "foo bar")}
-
-unset X
-expect '<abc>'
-recho ${X:=abc}
-expect '<abc>'
-recho $X
-
-set a b c
-expect '<posix>'
-recho ${3:+posix}
-
-POSIX=/usr/posix
-expect '<10>'
-recho ${#POSIX}
-
-# remove shortest trailing match
-x=file.c
-expect '<file.o>'
-recho ${x%.c}.o
-
-# remove longest trailing match
-x=posix/src/std
-expect '<posix>'
-recho ${x%%/*}
-
-# remove shortest leading pattern
-x=$HOME/src/cmd
-expect '</src/cmd>'
-recho ${x#$HOME}
-
-# remove longest leading pattern
-x=/one/two/three
-expect '<three>'
-recho ${x##*/}
-
-# pattern removal of patterns that don't match
-z=abcdef
-
-expect '<abcdef>'
-recho ${z#xyz}
-expect '<abcdef>'
-recho ${z##xyz}
-
-expect '<abcdef>'
-recho ${z%xyz}
-expect '<abcdef>'
-recho ${z%%xyz}
-
-# Command substitution and the quirky differences between `` and $()
-
-expect '<\$x>'
-recho '\$x'
-
-expect '<$x>'
-recho `echo '\$x'`
-
-expect '<\$x>'
-recho $(echo '\$x')
-
-# The difference between $* "$*" and "$@"
-
-set "abc" "def ghi" "jkl"
-
-expect '<abc> <def> <ghi> <jkl>'
-recho $*
-
-expect '<abc def ghi jkl>'
-recho "$*"
-
-OIFS="$IFS"
-IFS=":$IFS"
-
-# The special behavior of "$*", using the first character of $IFS as separator
-expect '<abc:def ghi:jkl>'
-recho "$*"
-
-IFS="$OIFS"
-
-expect '<abc> <def ghi> <jkl>'
-recho "$@"
-
-expect '<xxabc> <def ghi> <jklyy>'
-recho "xx$@yy"
-
-expect '<abc> <def ghi> <jklabc> <def ghi> <jkl>'
-recho "$@$@"
-
-foo=abc
-bar=def
-
-expect '<abcdef>'
-recho "$foo""$bar"
-
-unset foo
-set $foo bar '' xyz "$foo" abc
-
-expect '<bar> <> <xyz> <> <abc>'
-recho "$@"
-
-# More tests of quoting and deferred evaluation
-
-foo=10 x=foo
-y='$'$x
-expect '<$foo>'
-recho $y
-eval y='$'$x
-expect '<10>'
-recho $y
-
-# case statements
-
-NL='
-'
-x='ab
-cd'
-
-expect '<newline expected>'
-case "$x" in
-*$NL*) recho "newline expected" ;;
-esac
-
-expect '<got it>'
-case \? in
-*"?"*) recho "got it" ;;
-esac
-
-expect '<got it>'
-case \? in
-*\?*) recho "got it" ;;
-esac
-
-set one two three four five
-expect '<one> <three> <five>'
-recho $1 $3 ${5} $8 ${9}
-
-# length tests on positional parameters and some special parameters
-
-expect '<5> <5>'
-recho $# ${#}
-expect '<3>'
-recho ${#1}
-expect '<1>'
-recho ${##}
-expect '<1>'
-recho ${#?}
-expect '<5>'
-recho ${#@}
-expect '<5>'
-recho ${#*}
-expect '<5>'
-recho "${#@}"
-expect '<5>'
-recho "${#*}"
-
-expect '<42>'
-recho $((28 + 14))
-expect '<26>'
-recho $[ 13 * 2 ]
-
-expect '<\>'
-recho `echo \\\\`
-
-expect '<~>'
-recho '~'
-
-expect nothing
-recho $!
-expect nothing
-recho ${!}
-
-# test word splitting of assignment statements not preceding a command
-a="a b c d e"
-declare b=$a
-expect '<a> <b> <c> <d> <e>'
-recho $b
-
-a="a?b?c"
-
-echo ${a//\\?/ }
-
-echo ${a//\?/ }
diff --git a/tests/extglob2.sub b/tests/extglob2.sub
deleted file mode 100644 (file)
index f4a3b37..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-LANG=en_US.UTF-8
-
-shopt -s extglob
-a="aaaäöü"
-
-echo "${a}" "${a//?aa}" "${a//\aaa}"
-exit 0 
diff --git a/tests/glob-test b/tests/glob-test
deleted file mode 100644 (file)
index d32988b..0000000
+++ /dev/null
@@ -1,388 +0,0 @@
-export LC_COLLATE=C
-#
-# test the shell globbing
-#
-expect()
-{
-       echo expect "$@"
-}
-
-# First, a test that bash-2.01.1 fails
-${THIS_SH} ./glob1.sub
-
-MYDIR=$PWD     # save where we are
-
-TESTDIR=/tmp/glob-test
-mkdir $TESTDIR
-builtin cd $TESTDIR || { echo $0: cannot cd to $TESTDIR >&2 ; exit 1; }
-rm -rf *
-
-touch a b c d abc abd abe bb bcd ca cb dd de Beware
-mkdir bdir
-
-# see if `regular' globbing works right
-expect '<a> <abc> <abd> <abe> <X*>'
-recho a* X*
-
-expect '<a> <abc> <abd> <abe>'
-recho \a*
-
-# see if null glob expansion works
-shopt -s nullglob
-
-expect '<a> <abc> <abd> <abe>'
-recho a* X*
-
-shopt -u nullglob
-
-# see if the failglob option works
-
-mkdir tmp
-touch tmp/l1 tmp/l2 tmp/l3
-builtin echo tmp/l[12] tmp/*4 tmp/*3
-shopt -s failglob
-builtin echo tmp/l[12] tmp/*4 tmp/*3
-rm -r tmp
-shopt -u failglob
-
-# see if the code that expands directories only works
-expect '<bdir/>'
-recho b*/
-
-# Test quoted and unquoted globbing characters
-expect '<*>'
-recho \*
-
-expect '<a*>'
-recho 'a*'
-
-expect '<a*>'
-recho a\*
-
-expect '<c> <ca> <cb> <a*> <*q*>'
-recho c* a\* *q*
-
-expect '<**>'
-recho "*"*
-
-expect '<**>'
-recho \**
-
-expect '<\.\./*/>'
-recho "\.\./*/"
-
-expect '<s/\..*//>'
-recho 's/\..*//'
-
-# Pattern from Larry Wall's Configure that caused bash to blow up
-expect '</^root:/{s/^[^:]*:[^:]*:\([^:]*\).*$/\1/>'
-recho "/^root:/{s/^[^:]*:[^:]*:\([^:]*\).*"'$'"/\1/"
-
-# Make sure character classes work properly
-
-expect '<abc> <abd> <abe> <bb> <cb>'
-recho [a-c]b*
-
-expect '<abd> <abe> <bb> <bcd> <bdir> <ca> <cb> <dd> <de>'
-recho [a-y]*[^c]
-
-expect '<abd> <abe>'
-recho a*[^c]
-
-touch a-b aXb
-expect '<a-b> <aXb>'
-recho a[X-]b
-
-touch .x .y
-expect '<Beware> <d> <dd> <de>'
-recho [^a-c]*
-
-# Make sure that filenames with embedded globbing characters are handled
-# properly
-mkdir a\*b
-> a\*b/ooo
-
-expect '<a*b/ooo>'
-recho a\*b/*
-
-expect '<a*b/ooo>'
-recho a\*?/*
-
-expect '<no match>'
-cmd='echo !7'
-case "$cmd" in
-*\\!*) echo match ;;
-*) echo no match ;;
-esac
-
-expect '<not there>'
-file='r.*'
-case $file in
-*.\*) echo not there ;;
-*) echo there ;;
-esac
-
-# examples from the Posix.2 spec (d11.2, p. 243)
-expect '<abc>'
-recho a[b]c
-
-expect '<abc>'
-recho a["b"]c
-
-expect '<abc>'
-recho a[\b]c
-
-expect '<abc>'
-recho a?c
-
-expect '<match 1>'
-case abc in
-a"b"c) echo 'match 1' ;;
-*)     echo 'BAD match 1' ;;
-esac
-
-expect '<match 2>'
-case abc in
-a*c)   echo 'match 2' ;;
-*)     echo 'BAD match 2' ;;
-esac
-
-expect '<ok 1>'
-case abc in
-"a?c") echo 'bad 1' ;;
-*)     echo 'ok 1' ;;
-esac
-
-expect '<ok 2>'
-case abc in
-a\*c)  echo 'bad 2' ;;
-*)     echo 'ok 2' ;;
-esac
-
-expect '<ok 3>'
-case abc in
-a\[b]c)        echo 'bad 3' ;;
-*)     echo 'ok 3' ;;
-esac
-
-expect '<ok 4>'
-case "$nosuchvar" in
-"")    echo 'ok 4' ;;
-*)     echo 'bad 4' ;;
-esac
-
-# This is very odd, but sh and ksh seem to agree
-expect '<ok 5>'
-case abc in
-a["\b"]c) echo 'ok 5' ;;
-*)     echo 'bad 5' ;;
-esac
-
-mkdir man
-mkdir man/man1
-touch man/man1/bash.1
-expect '<man/man1/bash.1>'
-recho */man*/bash.*
-expect '<man/man1/bash.1>'
-recho $(echo */man*/bash.*)
-expect '<man/man1/bash.1>'
-recho "$(echo */man*/bash.*)"
-
-# tests with multiple `*'s
-case abc in
-a***c) echo ok 1;;
-esac
-
-case abc in
-a*****?c)      echo ok 2;;
-esac
-
-case abc in
-?*****??)      echo ok 3;;
-esac
-
-case abc in
-*****??)       echo ok 4;;
-esac
-
-case abc in
-*****??c)      echo ok 5;;
-esac
-
-case abc in
-?*****?c)      echo ok 6;;
-esac
-
-case abc in
-?***?****c)    echo ok 7;;
-esac
-
-case abc in
-?***?****?)    echo ok 8;;
-esac
-
-case abc in
-?***?****)     echo ok 9;;
-esac
-
-case abc in
-*******c)      echo ok 10;;
-esac
-
-case abc in
-*******?)      echo ok 11;;
-esac
-
-case abcdecdhjk in
-a*cd**?**??k)  echo ok 20;;
-esac
-
-case abcdecdhjk in
-a**?**cd**?**??k)      echo ok 21;;
-esac
-
-case abcdecdhjk in
-a**?**cd**?**??k***)   echo ok 22;;
-esac
-
-case abcdecdhjk in
-a**?**cd**?**??***k)   echo ok 23;;
-esac
-
-case abcdecdhjk in
-a**?**cd**?**??***k**) echo ok 24;;
-esac
-
-case abcdecdhjk in
-a****c**?**??*****)    echo ok 25;;
-esac
-
-case '-' in
-[-abc])        echo ok 26 ;;
-esac
-
-case '-' in
-[abc-]) echo ok 27 ;;
-esac
-
-case '\' in
-\\)    echo ok 28 ;;
-esac
-
-case '\' in
-[\\])  echo ok 29 ;;
-esac
-
-case '\' in
-'\')   echo ok 30 ;;
-esac
-
-case '[' in
-[[])   echo ok 31 ;;
-esac
-
-# a `[' without a closing `]' is just another character to match, in the
-# bash implementation
-case '[' in
-[)     echo ok 32 ;;
-esac
-
-case '[abc' in
-[*)    echo 'ok 33';;
-esac
-
-# a right bracket shall lose its special meaning and represent itself in
-# a bracket expression if it occurs first in the list.  -- POSIX.2 2.8.3.2
-case ']' in
-[]])   echo ok 34 ;;
-esac
-
-case '-' in
-[]-])  echo ok 35 ;;
-esac
-
-# a backslash should just escape the next character in this context
-case p in
-[a-\z])        echo ok 36 ;;
-esac
-
-# this was a bug in all versions up to bash-2.04-release
-case "/tmp" in
-[/\\]*) echo ok 37 ;;
-esac
-
-# none of these should output anything
-
-case abc in
-??**********?****?)    echo bad 1;;
-esac
-
-case abc in
-??**********?****c)    echo bad 2;;
-esac
-
-case abc in
-?************c****?****)       echo bad 3;;
-esac
-
-case abc in
-*c*?**)        echo bad 4;;
-esac
-
-case abc in
-a*****c*?**)   echo bad 5;;
-esac
-
-case abc in
-a********???*******)   echo bad 6;;
-esac
-
-case 'a' in
-[])    echo bad 7 ;;
-esac
-
-case '[' in
-[abc)  echo bad 8;;
-esac
-
-# let's start testing the case-insensitive globbing code
-recho b*
-
-shopt -s nocaseglob
-recho b*
-
-recho [b]*
-shopt -u nocaseglob
-
-# make sure set -f works right
-set -f
-recho *
-set +f
-
-# test out the GLOBIGNORE code
-GLOBIGNORE='.*:*c:*e:?'
-recho *
-
-GLOBIGNORE='.*:*b:*d:?'
-recho *
-
-# see if GLOBIGNORE can substitute for `set -f'
-GLOBIGNORE='.*:*'
-recho *
-
-unset GLOBIGNORE
-expect '<man/man1/bash.1>'
-recho */man*/bash.*
-
-# make sure null values for GLOBIGNORE have no effect
-GLOBIGNORE=
-expect '<man/man1/bash.1>'
-recho */man*/bash.*
-
-# this is for the benefit of pure coverage, so it writes the pcv file
-# in the right place, and for gprof
-builtin cd $MYDIR
-
-rm -rf $TESTDIR
-
-exit 0
diff --git a/tests/infile b/tests/infile
deleted file mode 100644 (file)
index 94ebaf9..0000000
+++ /dev/null
@@ -1,4 +0,0 @@
-1
-2
-3
-4
diff --git a/tests/local-tests b/tests/local-tests
deleted file mode 100644 (file)
index 8cb92a0..0000000
+++ /dev/null
@@ -1,4 +0,0 @@
-PATH=/usr/local/bin:/usr/ucb:/bin:/usr/bin:.
-export PATH
-
-gmake tests
diff --git a/tests/misc/input-line-2.sh b/tests/misc/input-line-2.sh
deleted file mode 100644 (file)
index b3e126e..0000000
+++ /dev/null
@@ -1,4 +0,0 @@
-echo before calling input-line.sub
-${THIS_SH} < ./input-line.sub
-this line for input-line.sub
-echo finished with input-line.sub
diff --git a/tests/misc/minus-e b/tests/misc/minus-e
deleted file mode 100644 (file)
index be67ec5..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-set -e
-if set +e
-then
-       false
-fi
-echo hi
diff --git a/tests/misc/minus-e.right b/tests/misc/minus-e.right
deleted file mode 100644 (file)
index 45b983b..0000000
+++ /dev/null
@@ -1 +0,0 @@
-hi
diff --git a/tests/misc/read-nchars-int.tests b/tests/misc/read-nchars-int.tests
deleted file mode 100644 (file)
index 40b1f98..0000000
+++ /dev/null
@@ -1,11 +0,0 @@
-# interactive
-
-# from tty
-read -n 3 -p 'enter three chars: ' xyz
-echo
-echo $xyz
-
-# using readline
-read -p 'enter 3 chars: ' -e -n 3 abc
-# readline outputs a newline for us, so we don't need the extra echo
-echo $abc
diff --git a/tests/misc/regress/README b/tests/misc/regress/README
deleted file mode 100644 (file)
index d78925f..0000000
+++ /dev/null
@@ -1,12 +0,0 @@
-This is Geoff Collyer's `sh' regression test.  It will run each test
-on sh and ../../bash, and on ksh if you have it.  I have `real' ksh;
-the PD ksh is different and will fail some of the tests.
-
-Expect some small variations in the sh and bash output, since some
-of the tests work from the output of `date' or on the current dat
-returned by `getdate'.
-
-Don't expect `getdate' to exist unless you're running C News.  If you
-don't have it, run
-
-       make -f getdate.mk getdate
diff --git a/tests/misc/regress/geoff.post b/tests/misc/regress/geoff.post
deleted file mode 100644 (file)
index 3e9f2de..0000000
+++ /dev/null
@@ -1,152 +0,0 @@
-Newsgroups: comp.os.coherent
-Subject: sh clones evaluated (was Re: C News)
-Organization: Software Tool & Die Netnews Research Center
-References: <138198@allan.sublink.org> <920725204@umunk.GUN.de>
-       <9207260813.30@rmkhome.UUCP> <1992Jul27.200244.2456@acme.gen.nz>
-       <Bs0x7K.2pp@world.std.com> <9207291604.00@rmkhome.UUCP>
-       <Bs84t1.3Fx@world.std.com> <9208011403.38@rmkhome.UUCP>
-
-I've reevaluated the allegedly-sh-compatible shells I have on hand (sh,
-bash, ash, zsh and a redistributable ksh).  bash seems to have improved
-since I last looked at it and seems to run inews and subordinates
-correctly, and passes the diagnostic tests I extracted from inews and
-anne.jones.  ash, zsh and redistributable ksh each fail three of the six
-tests.  This saddens me, as ash is an elegant and relatively small piece
-of work, whereas bash is bloated and complicated.
-
-I've enclosed the test scripts (shx?), driver script (shx) and results
-(log) below.  A couple caveats:  shx4 (a quoting test) uses the C News
-getdate command; there may be newer versions of the shells tested - this
-evaluation is decidedly informal.  Here's a quick summary: sh and bash
-passed all tests; ash can't parse "<&$fd" and doesn't understand quoting;
-redistributable ksh dumps core on a newline inside backquotes, doesn't
-understand quoting, and botches waiting on background processes; zsh
-doesn't understand sh quoting (in particular, it sees ! as a job control
-character, even inside quotes), and botches waiting for background
-processes.
-
-
-# To unbundle, sh this file
-echo log 1>&2
-sed 's/^X//' >log <<'!'
-X:; ./shx
-
-sh:
-X<&$fd ok
-nlbq   Mon Aug  3 02:45:00 EDT 1992
-bang   geoff
-quote  712824302
-setbq  defmsgid=<1992Aug3.024502.6176@host>
-bgwait sleep done... wait 6187
-
-
-bash:
-X<&$fd ok
-nlbq   Mon Aug  3 02:45:09 EDT 1992
-bang   geoff
-quote  712824311
-setbq  defmsgid=<1992Aug3.024512.6212@host>
-bgwait sleep done... wait 6223
-
-
-ash:
-X<&$fd shx1: 4: Syntax error: Bad fd number
-nlbq   Mon Aug  3 02:45:19 EDT 1992
-bang   geoff
-quote  getdate: `"now"' not a valid date
-
-setbq  defmsgid=<1992Aug3.` echo 024521
-bgwait sleep done... wait 6241
-
-
-ksh:
-X<&$fd ok
-nlbq   ./shx: 6248 Memory fault - core dumped
-bang   geoff
-quote  getdate: `"now"' not a valid date
-
-setbq  defmsgid=<1992Aug3.024530.6257@host>
-bgwait no such job: 6265
-wait 6265
-sleep done... 
-
-zsh:
-X<&$fd ok
-nlbq   Mon Aug 3 02:45:36 EDT 1992
-bang   shx3: event not found: /s/ [4]
-quote  712824337
-setbq  defmsgid=<..6290@host>
-bgwait shx7: unmatched " [9]
-sleep done... 
-X:; 
-!
-echo shx 1>&2
-sed 's/^X//' >shx <<'!'
-X#! /bin/sh
-for cmd in sh bash ash ksh zsh
-do
-X      echo
-X      echo $cmd:
-X      for demo in shx?
-X      do
-X              $cmd $demo
-X      done
-done
-!
-echo shx1 1>&2
-sed 's/^X//' >shx1 <<'!'
-X# ash fails this one
-echo -n '<&$fd '
-fd=3
-echo ok <&$fd
-!
-echo shx2 1>&2
-sed 's/^X//' >shx2 <<'!'
-X# pd ksh fails this one
-echo -n "nlbq  "
-date=`
-date`
-echo "$date"
-!
-echo shx3 1>&2
-sed 's/^X//' >shx3 <<'!'
-X# zsh fails this one
-echo -n 'bang  '
-echo 'geoff    tty??   Aug  3 02:35' |
-X    sed -e 's/[        ].*//' -e '/!/s/^.*!//'
-!
-echo shx4 1>&2
-sed 's/^X//' >shx4 <<'!'
-X# ash, pd ksh fail this one
-echo -n "quote "
-expiry="now"
-timet="` getdate \"$expiry\" `"
-echo "$timet"
-!
-echo shx5 1>&2
-sed 's/^X//' >shx5 <<'!'
-X# ash, zsh fail this one
-echo -n "setbq "
-host=host
-date="`date`"
-echo defmsgid="`set $date; echo \<$6$2$3.\`  echo $4 | tr -d : \`.$$@$host\>`"
-!
-echo shx7 1>&2
-sed 's/^X//' >shx7 <<'!'
-X# pd ksh and zsh fail this one
-echo -n "bgwait        "
-X(
-X      sleep 2
-X      echo -n "sleep done... "
-X) &
-waitcmd="wait $!"
-eval $waitcmd
-echo "$waitcmd"
-!
-echo shx8 1>&2
-sed 's/^X//' >shx8 <<'!'
-X# in case gcx7 is really breaks this shell
-sleep 3
-echo
-!
-exit 0
diff --git a/tests/misc/regress/getdate.mk b/tests/misc/regress/getdate.mk
deleted file mode 100644 (file)
index 543242e..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-all:   getdate
-
-getdate.c:     getdate.y
-       yacc getdate.y
-       mv y.tab.c getdate.c
-
-getdate:       getdate.c
-       $(CC) -o $@ getdate.c 
-       rm -f getdate.c getdate.o
diff --git a/tests/misc/regress/getdate.y b/tests/misc/regress/getdate.y
deleted file mode 100644 (file)
index 1df3773..0000000
+++ /dev/null
@@ -1,553 +0,0 @@
-%token ID MONTH DAY MERIDIAN NUMBER UNIT MUNIT SUNIT ZONE DAYZONE AGO
-%{
-       /*      Steven M. Bellovin (unc!smb)                    */
-       /*      Dept. of Computer Science                       */
-       /*      University of North Carolina at Chapel Hill     */
-       /*      @(#)getdate.y   2.13    9/16/86 */
-
-#include <stdio.h>
-#include <sys/types.h>
-#include <ctype.h>
-#include <time.h>
-#define        timezone        tmzn    /* ugly hack for obscure name clash */
-#include <sys/timeb.h>
-
-#define daysec (24L*60L*60L)
-
-       static int timeflag, zoneflag, dateflag, dayflag, relflag;
-       static time_t relsec, relmonth;
-       static int hh, mm, ss, merid, daylight;
-       static int dayord, dayreq;
-       static int month, day, year;
-       static int ourzone;
-
-#define AM 1
-#define PM 2
-#define DAYLIGHT 1
-#define STANDARD 2
-#define MAYBE    3
-%}
-
-%%
-timedate:              /* empty */
-       | timedate item;
-
-item:  tspec =
-               {timeflag++;}
-       | zone =
-               {zoneflag++;}
-       | dtspec =
-               {dateflag++;}
-       | dyspec =
-               {dayflag++;}
-       | rspec =
-               {relflag++;}
-       | nspec;
-
-nspec: NUMBER =
-               {if (timeflag && dateflag && !relflag) year = $1;
-               else {timeflag++;hh = $1/100;mm = $1%100;ss = 0;merid = 24;}};
-
-tspec: NUMBER MERIDIAN =
-               {hh = $1; mm = 0; ss = 0; merid = $2;}
-       | NUMBER ':' NUMBER =
-               {hh = $1; mm = $3; merid = 24;}
-       | NUMBER ':' NUMBER MERIDIAN =
-               {hh = $1; mm = $3; merid = $4;}
-       | NUMBER ':' NUMBER NUMBER =
-               {hh = $1; mm = $3; merid = 24;
-               daylight = STANDARD; ourzone = $4%100 + 60*$4/100;}
-       | NUMBER ':' NUMBER ':' NUMBER =
-               {hh = $1; mm = $3; ss = $5; merid = 24;}
-       | NUMBER ':' NUMBER ':' NUMBER MERIDIAN =
-               {hh = $1; mm = $3; ss = $5; merid = $6;}
-       | NUMBER ':' NUMBER ':' NUMBER NUMBER =
-               {hh = $1; mm = $3; ss = $5; merid = 24;
-               daylight = STANDARD; ourzone = $6%100 + 60*$6/100;};
-
-zone:  ZONE =
-               {ourzone = $1; daylight = STANDARD;}
-       | DAYZONE =
-               {ourzone = $1; daylight = DAYLIGHT;};
-
-dyspec:        DAY =
-               {dayord = 1; dayreq = $1;}
-       | DAY ',' =
-               {dayord = 1; dayreq = $1;}
-       | NUMBER DAY =
-               {dayord = $1; dayreq = $2;};
-
-dtspec:        NUMBER '/' NUMBER =
-               {month = $1; day = $3;}
-       | NUMBER '/' NUMBER '/' NUMBER =
-               {month = $1; day = $3; year = $5;}
-       | MONTH NUMBER =
-               {month = $1; day = $2;}
-       | MONTH NUMBER ',' NUMBER =
-               {month = $1; day = $2; year = $4;}
-       | NUMBER MONTH =
-               {month = $2; day = $1;}
-       | NUMBER MONTH NUMBER =
-               {month = $2; day = $1; year = $3;};
-
-
-rspec: NUMBER UNIT =
-               {relsec +=  60L * $1 * $2;}
-       | NUMBER MUNIT =
-               {relmonth += $1 * $2;}
-       | NUMBER SUNIT =
-               {relsec += $1;}
-       | UNIT =
-               {relsec +=  60L * $1;}
-       | MUNIT =
-               {relmonth += $1;}
-       | SUNIT =
-               {relsec++;}
-       | rspec AGO =
-               {relsec = -relsec; relmonth = -relmonth;};
-%%
-
-static int mdays[12] =
-       {31, 0, 31,  30, 31, 30,  31, 31, 30,  31, 30, 31};
-#define epoch 1970
-
-extern struct tm *localtime();
-
-static time_t
-dateconv(mm, dd, yy, h, m, s, mer, zone, dayflag)
-int mm, dd, yy, h, m, s, mer, zone, dayflag;
-{
-       time_t tod, jdate;
-       register int i;
-       time_t timeconv();
-
-       if (yy < 0) yy = -yy;
-       if (yy < 100) yy += 1900;
-       mdays[1] = 28 + (yy%4 == 0 && (yy%100 != 0 || yy%400 == 0));
-       if (yy < epoch || yy > 1999 || mm < 1 || mm > 12 ||
-               dd < 1 || dd > mdays[--mm]) return (-1);
-       jdate = dd-1;
-        for (i=0; i<mm; i++) jdate += mdays[i];
-       for (i = epoch; i < yy; i++) jdate += 365 + (i%4 == 0);
-       jdate *= daysec;
-       jdate += zone * 60L;
-       if ((tod = timeconv(h, m, s, mer)) < 0) return (-1);
-       jdate += tod;
-       if (dayflag==DAYLIGHT || (dayflag==MAYBE&&localtime(&jdate)->tm_isdst))
-               jdate += -1*60*60;
-       return (jdate);
-}
-
-static time_t
-dayconv(ord, day, now)
-int ord, day; time_t now;
-{
-       register struct tm *loctime;
-       time_t tod;
-       time_t daylcorr();
-
-       tod = now;
-       loctime = localtime(&tod);
-       tod += daysec * ((day - loctime->tm_wday + 7) % 7);
-       tod += 7*daysec*(ord<=0?ord:ord-1);
-       return daylcorr(tod, now);
-}
-
-static time_t
-timeconv(hh, mm, ss, mer)
-register int hh, mm, ss, mer;
-{
-       if (mm < 0 || mm > 59 || ss < 0 || ss > 59) return (-1);
-       switch (mer) {
-               case AM: if (hh < 1 || hh > 12) return(-1);
-                        return (60L * ((hh%12)*60L + mm)+ss);
-               case PM: if (hh < 1 || hh > 12) return(-1);
-                        return (60L * ((hh%12 +12)*60L + mm)+ss);
-               case 24: if (hh < 0 || hh > 23) return (-1);
-                        return (60L * (hh*60L + mm)+ss);
-               default: return (-1);
-       }
-}
-
-static time_t
-monthadd(sdate, relmonth)
-time_t sdate, relmonth;
-{
-       struct tm *ltime;
-       time_t dateconv();
-       time_t daylcorr();
-       int mm, yy;
-
-       if (relmonth == 0) return 0;
-       ltime = localtime(&sdate);
-       mm = 12*ltime->tm_year + ltime->tm_mon + relmonth;
-       yy = mm/12;
-       mm = mm%12 + 1;
-       return daylcorr(dateconv(mm, ltime->tm_mday, yy, ltime->tm_hour,
-               ltime->tm_min, ltime->tm_sec, 24, ourzone, MAYBE), sdate);
-}
-
-static time_t
-daylcorr(future, now)
-time_t future, now;
-{
-       int fdayl, nowdayl;
-
-       nowdayl = (localtime(&now)->tm_hour+1) % 24;
-       fdayl = (localtime(&future)->tm_hour+1) % 24;
-       return (future-now) + 60L*60L*(nowdayl-fdayl);
-}
-
-static char *lptr;
-
-yylex()
-{
-       extern int yylval;
-       int sign;
-       register char c;
-       register char *p;
-       char idbuf[20];
-       int pcnt;
-
-       for (;;) {
-               while (isspace(*lptr)) lptr++;
-
-               if (isdigit(c = *lptr) || c == '-' || c == '+') {
-                       if (c== '-' || c == '+') {
-                               if (c=='-') sign = -1;
-                               else sign = 1;
-                               if (!isdigit(*++lptr)) {
-                                       /* yylval = sign; return (NUMBER); */
-                                       return yylex(); /* skip the '-' sign */
-                               }
-                       } else sign = 1;
-                       yylval = 0;
-                       while (isdigit(c = *lptr++)) yylval = 10*yylval + c - '0';
-                       yylval *= sign;
-                       lptr--;
-                       return (NUMBER);
-
-               } else if (isalpha(c)) {
-                       p = idbuf;
-                       while (isalpha(c = *lptr++) || c=='.')
-                               if (p < &idbuf[sizeof(idbuf)-1])
-                                       *p++ = c;
-                       *p = '\0';
-                       lptr--;
-                       return (lookup(idbuf));
-               }
-
-               else if (c == '(') {
-                       pcnt = 0;
-                       do {
-                               c = *lptr++;
-                               if (c == '\0') return(c);
-                               else if (c == '(') pcnt++;
-                               else if (c == ')') pcnt--;
-                       } while (pcnt > 0);
-               }
-
-               else return (*lptr++);
-       }
-}
-
-struct table {
-       char *name;
-       int type, value;
-};
-
-static struct table mdtab[] = {
-       {"January", MONTH, 1},
-       {"February", MONTH, 2},
-       {"March", MONTH, 3},
-       {"April", MONTH, 4},
-       {"May", MONTH, 5},
-       {"June", MONTH, 6},
-       {"July", MONTH, 7},
-       {"August", MONTH, 8},
-       {"September", MONTH, 9},
-       {"Sept", MONTH, 9},
-       {"October", MONTH, 10},
-       {"November", MONTH, 11},
-       {"December", MONTH, 12},
-
-       {"Sunday", DAY, 0},
-       {"Monday", DAY, 1},
-       {"Tuesday", DAY, 2},
-       {"Tues", DAY, 2},
-       {"Wednesday", DAY, 3},
-       {"Wednes", DAY, 3},
-       {"Thursday", DAY, 4},
-       {"Thur", DAY, 4},
-       {"Thurs", DAY, 4},
-       {"Friday", DAY, 5},
-       {"Saturday", DAY, 6},
-       {0, 0, 0}};
-
-#define HRS *60
-#define HALFHR 30
-static struct table mztab[] = {
-       {"a.m.", MERIDIAN, AM},
-       {"am", MERIDIAN, AM},
-       {"p.m.", MERIDIAN, PM},
-       {"pm", MERIDIAN, PM},
-       {"nst", ZONE, 3 HRS + HALFHR},          /* Newfoundland */
-       {"n.s.t.", ZONE, 3 HRS + HALFHR},
-       {"ast", ZONE, 4 HRS},           /* Atlantic */
-       {"a.s.t.", ZONE, 4 HRS},
-       {"adt", DAYZONE, 4 HRS},
-       {"a.d.t.", DAYZONE, 4 HRS},
-       {"est", ZONE, 5 HRS},           /* Eastern */
-       {"e.s.t.", ZONE, 5 HRS},
-       {"edt", DAYZONE, 5 HRS},
-       {"e.d.t.", DAYZONE, 5 HRS},
-       {"cst", ZONE, 6 HRS},           /* Central */
-       {"c.s.t.", ZONE, 6 HRS},
-       {"cdt", DAYZONE, 6 HRS},
-       {"c.d.t.", DAYZONE, 6 HRS},
-       {"mst", ZONE, 7 HRS},           /* Mountain */
-       {"m.s.t.", ZONE, 7 HRS},
-       {"mdt", DAYZONE, 7 HRS},
-       {"m.d.t.", DAYZONE, 7 HRS},
-       {"pst", ZONE, 8 HRS},           /* Pacific */
-       {"p.s.t.", ZONE, 8 HRS},
-       {"pdt", DAYZONE, 8 HRS},
-       {"p.d.t.", DAYZONE, 8 HRS},
-       {"yst", ZONE, 9 HRS},           /* Yukon */
-       {"y.s.t.", ZONE, 9 HRS},
-       {"ydt", DAYZONE, 9 HRS},
-       {"y.d.t.", DAYZONE, 9 HRS},
-       {"hst", ZONE, 10 HRS},          /* Hawaii */
-       {"h.s.t.", ZONE, 10 HRS},
-       {"hdt", DAYZONE, 10 HRS},
-       {"h.d.t.", DAYZONE, 10 HRS},
-
-       {"gmt", ZONE, 0 HRS},
-       {"g.m.t.", ZONE, 0 HRS},
-       {"ut", ZONE, 0 HRS},
-       {"u.t.", ZONE, 0 HRS},
-       {"bst", DAYZONE, 0 HRS},                /* British Summer Time */
-       {"b.s.t.", DAYZONE, 0 HRS},
-       {"eet", ZONE, 0 HRS},           /* European Eastern Time */
-       {"e.e.t.", ZONE, 0 HRS},
-       {"eest", DAYZONE, 0 HRS},       /* European Eastern Summer Time */
-       {"e.e.s.t.", DAYZONE, 0 HRS},
-       {"met", ZONE, -1 HRS},          /* Middle European Time */
-       {"m.e.t.", ZONE, -1 HRS},
-       {"mest", DAYZONE, -1 HRS},      /* Middle European Summer Time */
-       {"m.e.s.t.", DAYZONE, -1 HRS},
-       {"wet", ZONE, -2 HRS },         /* Western European Time */
-       {"w.e.t.", ZONE, -2 HRS },
-       {"west", DAYZONE, -2 HRS},      /* Western European Summer Time */
-       {"w.e.s.t.", DAYZONE, -2 HRS},
-
-       {"jst", ZONE, -9 HRS},          /* Japan Standard Time */
-       {"j.s.t.", ZONE, -9 HRS},       /* Japan Standard Time */
-                                       /* No daylight savings time */
-
-       {"aest", ZONE, -10 HRS},        /* Australian Eastern Time */
-       {"a.e.s.t.", ZONE, -10 HRS},
-       {"aesst", DAYZONE, -10 HRS},    /* Australian Eastern Summer Time */
-       {"a.e.s.s.t.", DAYZONE, -10 HRS},
-       {"acst", ZONE, -(9 HRS + HALFHR)},      /* Australian Central Time */
-       {"a.c.s.t.", ZONE, -(9 HRS + HALFHR)},
-       {"acsst", DAYZONE, -(9 HRS + HALFHR)},  /* Australian Central Summer */
-       {"a.c.s.s.t.", DAYZONE, -(9 HRS + HALFHR)},
-       {"awst", ZONE, -8 HRS},         /* Australian Western Time */
-       {"a.w.s.t.", ZONE, -8 HRS},     /* (no daylight time there, I'm told */
-       {0, 0, 0}};
-
-static struct table unittb[] = {
-       {"year", MUNIT, 12},
-       {"month", MUNIT, 1},
-       {"fortnight", UNIT, 14*24*60},
-       {"week", UNIT, 7*24*60},
-       {"day", UNIT, 1*24*60},
-       {"hour", UNIT, 60},
-       {"minute", UNIT, 1},
-       {"min", UNIT, 1},
-       {"second", SUNIT, 1},
-       {"sec", SUNIT, 1},
-       {0, 0, 0}};
-
-static struct table othertb[] = {
-       {"tomorrow", UNIT, 1*24*60},
-       {"yesterday", UNIT, -1*24*60},
-       {"today", UNIT, 0},
-       {"now", UNIT, 0},
-       {"last", NUMBER, -1},
-       {"this", UNIT, 0},
-       {"next", NUMBER, 2},
-       {"first", NUMBER, 1},
-       /* {"second", NUMBER, 2}, */
-       {"third", NUMBER, 3},
-       {"fourth", NUMBER, 4},
-       {"fifth", NUMBER, 5},
-       {"sixth", NUMBER, 6},
-       {"seventh", NUMBER, 7},
-       {"eigth", NUMBER, 8},
-       {"ninth", NUMBER, 9},
-       {"tenth", NUMBER, 10},
-       {"eleventh", NUMBER, 11},
-       {"twelfth", NUMBER, 12},
-       {"ago", AGO, 1},
-       {0, 0, 0}};
-
-static struct table milzone[] = {
-       {"a", ZONE, 1 HRS},
-       {"b", ZONE, 2 HRS},
-       {"c", ZONE, 3 HRS},
-       {"d", ZONE, 4 HRS},
-       {"e", ZONE, 5 HRS},
-       {"f", ZONE, 6 HRS},
-       {"g", ZONE, 7 HRS},
-       {"h", ZONE, 8 HRS},
-       {"i", ZONE, 9 HRS},
-       {"k", ZONE, 10 HRS},
-       {"l", ZONE, 11 HRS},
-       {"m", ZONE, 12 HRS},
-       {"n", ZONE, -1 HRS},
-       {"o", ZONE, -2 HRS},
-       {"p", ZONE, -3 HRS},
-       {"q", ZONE, -4 HRS},
-       {"r", ZONE, -5 HRS},
-       {"s", ZONE, -6 HRS},
-       {"t", ZONE, -7 HRS},
-       {"u", ZONE, -8 HRS},
-       {"v", ZONE, -9 HRS},
-       {"w", ZONE, -10 HRS},
-       {"x", ZONE, -11 HRS},
-       {"y", ZONE, -12 HRS},
-       {"z", ZONE, 0 HRS},
-       {0, 0, 0}};
-
-static
-lookup(id)
-char *id;
-{
-#define gotit (yylval=i->value,  i->type)
-#define getid for(j=idvar, k=id; *j++ = *k++; )
-
-       char idvar[20];
-       register char *j, *k;
-       register struct table *i;
-       int abbrev;
-
-       getid;
-       if (strlen(idvar) == 3) abbrev = 1;
-       else if (strlen(idvar) == 4 && idvar[3] == '.') {
-               abbrev = 1;
-               idvar[3] = '\0';
-       }
-       else abbrev = 0;
-
-       if (islower(*idvar)) *idvar = toupper(*idvar);
-
-       for (i = mdtab; i->name; i++) {
-               k = idvar;
-               for (j = i->name; *j++ == *k++;) {
-                       if (abbrev && j==i->name+3) return gotit;
-                       if (j[-1] == 0) return gotit;
-               }
-       }
-
-       getid;
-       for (i = mztab; i->name; i++)
-               if (strcmp(i->name, idvar) == 0) return gotit;
-
-       for (j = idvar; *j; j++)
-               if (isupper(*j)) *j = tolower(*j);
-       for (i=mztab; i->name; i++)
-               if (strcmp(i->name, idvar) == 0) return gotit;
-
-       getid;
-       for (i=unittb; i->name; i++)
-               if (strcmp(i->name, idvar) == 0) return gotit;
-
-       if (idvar[strlen(idvar)-1] == 's')
-               idvar[strlen(idvar)-1] = '\0';
-       for (i=unittb; i->name; i++)
-               if (strcmp(i->name, idvar) == 0) return gotit;
-
-       getid;
-       for (i = othertb; i->name; i++)
-               if (strcmp(i->name, idvar) == 0) return gotit;
-
-       getid;
-       if (strlen(idvar) == 1 && isalpha(*idvar)) {
-               if (isupper(*idvar)) *idvar = tolower(*idvar);
-               for (i = milzone; i->name; i++)
-                       if (strcmp(i->name, idvar) == 0) return gotit;
-       }
-
-       return(ID);
-}
-
-time_t
-getdate(p, now)
-char *p;
-struct timeb *now;
-{
-#define mcheck(f)      if (f>1) err++
-       time_t monthadd();
-       int err;
-       struct tm *lt;
-       struct timeb ftz;
-
-       time_t sdate, tod;
-
-       lptr = p;
-       if (now == ((struct timeb *) NULL)) {
-               now = &ftz;
-               ftime(&ftz);
-       }
-       lt = localtime(&now->time);
-       year = lt->tm_year;
-       month = lt->tm_mon+1;
-       day = lt->tm_mday;
-       relsec = 0; relmonth = 0;
-       timeflag=zoneflag=dateflag=dayflag=relflag=0;
-       ourzone = now->timezone;
-       daylight = MAYBE;
-       hh = mm = ss = 0;
-       merid = 24;
-
-       if (err = yyparse()) return (-1);
-
-       mcheck(timeflag);
-       mcheck(zoneflag);
-       mcheck(dateflag);
-       mcheck(dayflag);
-
-       if (err) return (-1);
-       if (dateflag || timeflag || dayflag) {
-               sdate = dateconv(month,day,year,hh,mm,ss,merid,ourzone,daylight);
-               if (sdate < 0) return -1;
-       }
-       else {
-               sdate = now->time;
-               if (relflag == 0)
-                       sdate -= (lt->tm_sec + lt->tm_min*60 +
-                               lt->tm_hour*(60L*60L));
-       }
-
-       sdate += relsec;
-       sdate += monthadd(sdate, relmonth);
-
-       if (dayflag && !dateflag) {
-               tod = dayconv(dayord, dayreq, sdate);
-               sdate += tod;
-       }
-
-       return sdate;
-}
-
-yyerror(s) char *s;
-{}
-
-main(c, v)
-int    c;
-char   **v;
-{
-       printf("%d\n", getdate(v[1], (struct timeb *)0));
-}
diff --git a/tests/misc/regress/shx b/tests/misc/regress/shx
deleted file mode 100644 (file)
index feb2bc8..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-#! /bin/sh
-
-if ksh -c 'echo ""' >/dev/null 2>&1; then
-       ksh=ksh
-fi
-
-for cmd in sh ../../bash $ksh
-do
-       echo
-       echo $cmd:
-       for demo in shx[0-9]
-       do
-               $cmd $demo
-       done
-done
diff --git a/tests/misc/regress/shx1 b/tests/misc/regress/shx1
deleted file mode 100644 (file)
index 73c5e8a..0000000
+++ /dev/null
@@ -1,4 +0,0 @@
-# ash fails this one
-echo -n '<&$fd '
-fd=3
-echo ok <&$fd
diff --git a/tests/misc/regress/shx2 b/tests/misc/regress/shx2
deleted file mode 100644 (file)
index 03cff5b..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-# pd ksh fails this one
-echo -n "nlbq  "
-date=`
-date`
-echo "$date"
diff --git a/tests/misc/regress/shx3 b/tests/misc/regress/shx3
deleted file mode 100644 (file)
index 1fbbb37..0000000
+++ /dev/null
@@ -1,4 +0,0 @@
-# zsh fails this one
-echo -n 'bang  '
-echo 'geoff    tty??   Aug  3 02:35' |
-    sed -e 's/[         ].*//' -e '/!/s/^.*!//'
diff --git a/tests/misc/regress/shx4 b/tests/misc/regress/shx4
deleted file mode 100644 (file)
index 9ae7781..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-# ash, pd ksh fail this one
-echo -n "quote "
-expiry="now"
-timet="` getdate \"$expiry\" `"
-echo "$timet"
diff --git a/tests/misc/regress/shx5 b/tests/misc/regress/shx5
deleted file mode 100644 (file)
index bd7ad0e..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-# ash, zsh fail this one
-echo -n "setbq "
-host=host
-date="`date`"
-echo defmsgid="`set $date; echo \<$6$2$3.\`  echo $4 | tr -d : \`.$$@$host\>`"
diff --git a/tests/misc/regress/shx7 b/tests/misc/regress/shx7
deleted file mode 100644 (file)
index 12ba1ec..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-# pd ksh and zsh fail this one
-echo -n "bgwait        "
-(
-       sleep 2
-       echo -n "sleep done... "
-) &
-waitcmd="wait $!"
-eval $waitcmd
-echo "$waitcmd"
diff --git a/tests/misc/regress/shx8 b/tests/misc/regress/shx8
deleted file mode 100644 (file)
index b466ec1..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-# in case gcx7 is really breaks this shell
-sleep 3
-echo
diff --git a/tests/misc/run-input-test-2 b/tests/misc/run-input-test-2
deleted file mode 100644 (file)
index ffbac4c..0000000
+++ /dev/null
@@ -1,2 +0,0 @@
-cat ./input-line-2.sh | ${THIS_SH} > /tmp/xx
-diff /tmp/xx input.right && rm -f /tmp/xx
diff --git a/tests/misc/run-minus-e b/tests/misc/run-minus-e
deleted file mode 100644 (file)
index 2a91a3d..0000000
+++ /dev/null
@@ -1,2 +0,0 @@
-${THIS_SH} ./minus-e > /tmp/xx
-diff /tmp/xx minus-e.right && rm -f /tmp/xx
diff --git a/tests/misc/test.patmatch b/tests/misc/test.patmatch
deleted file mode 100644 (file)
index 88b5631..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-# these will work only if test.c has been compiled with -DPATTERN_MATCHING
-# to get =~ and !~
-
-[ a =\~ a ] && echo OK || echo BAD
-[ a !~ b ] && echo OK || echo BAD
-
-[ a =\~ \* ] && echo OK || echo BAD
-[ a =\~ \? ] && echo OK || echo BAD
-[ abc !~ \? ] && echo OK || echo BAD
-
-[ '' =\~ \* ] && echo OK || echo BAD
-[ '' !~ \?\* ] && echo OK || echo BAD
-
-[ a =\~ \[abc] ] && echo OK || echo BAD
-[ x !~ \[abc] ] && echo OK || echo BAD
diff --git a/tests/posix-ifs.sh b/tests/posix-ifs.sh
deleted file mode 100644 (file)
index cf9a898..0000000
+++ /dev/null
@@ -1,257 +0,0 @@
-# Usage: $SHELL ifs.sh
-#
-# This script generates 6856 tests for the set(1) and read(1)
-# builtins w.r.t. IFS whitespace and non-whitespace characters.
-# Each failed test produces one line on the standard output that
-# contains the test along with the expected and actual results.
-# The last output line contains the test result counts.  ordered>0
-# are the number of tests where IFS=": " produced different results
-# than IFS=" :".  If a test fails the same way for IFS=": " and
-# IFS=" :" then the second output line is suppressed.
-
-TESTS=6856
-
-ksh_read=0
-echo 1 | read ksh_read
-ksh_arith=0
-eval '((ksh_arith+=1))' 2>/dev/null
-
-failed=0
-ordered=0
-passed=0
-
-split()
-{
-       i=$1 s=$2 r=$3 S='' R=''
-       for ifs in ': ' ' :'
-       do      IFS=$ifs
-               set x $i
-               shift
-               IFS=' '
-               g="[$#]"
-               while   :
-               do      case $# in
-                       0)      break ;;
-                       esac
-                       g="$g($1)"
-                       shift
-               done
-               case $g in
-               "$s")   case $ksh_arith in
-                       1)      ((passed+=1)) ;;
-                       *)      passed=`expr $passed + 1` ;;
-                       esac
-                       case $S in
-                       '')     S=$g
-                               ;;
-                       "$g")   ;;
-                       *)      case $ksh_arith in
-                               1)      ((ordered+=1)) ;;
-                               *)      ordered=`expr $ordered + 1` ;;
-                               esac
-                               ;;
-                       esac
-                       ;;
-               "$S")   case $ksh_arith in
-                       1)      ((failed+=1)) ;;
-                       *)      failed=`expr $failed + 1` ;;
-                       esac
-                       ;;
-               *)      case $ksh_arith in
-                       1)      ((failed+=1)) ;;
-                       *)      failed=`expr $failed + 1` ;;
-                       esac
-                       case $s in
-                       "$S")   ;;
-                       ?0*)    echo "IFS=\"$ifs\"; x=\"$i\"; set x \$x; shift; echo \"[\$#]\" # expected \"$s\" got \"$g\"" ;;
-                       ?1*)    echo "IFS=\"$ifs\"; x=\"$i\"; set x \$x; shift; echo \"[\$#](\$1)\" # expected \"$s\" got \"$g\"" ;;
-                       ?2*)    echo "IFS=\"$ifs\"; x=\"$i\"; set x \$x; shift; echo \"[\$#](\$1)(\$2)\" # expected \"$s\" got \"$g\"" ;;
-                       ?3*)    echo "IFS=\"$ifs\"; x=\"$i\"; set x \$x; shift; echo \"[\$#](\$1)(\$2)(\$3)\" # expected \"$s\" got \"$g\"" ;;
-                       *)      echo TEST ERROR i="'$i'" s="'$s'" ;;
-                       esac
-                       case $S in
-                       '')     S=$g
-                               ;;
-                       "$g")   ;;
-                       *)      case $ksh_arith in
-                               1)      ((ordered+=1)) ;;
-                               *)      ordered=`expr $ordered + 1` ;;
-                               esac
-                               ;;
-                       esac
-               esac
-               case $ksh_read in
-               1)      echo "$i" | IFS=$ifs read x y; g="($x)($y)" ;;
-               *)      g=`export ifs; echo "$i" | ( IFS=$ifs; read x y; echo "($x)($y)" )` ;;
-               esac
-               case $g in
-               "$r")   case $ksh_arith in
-                       1)      ((passed+=1)) ;;
-                       *)      passed=`expr $passed + 1` ;;
-                       esac
-                       case $R in
-                       '')     R=$g
-                               ;;
-                       "$g")   ;;
-                       *)      case $ksh_arith in
-                               1)      ((ordered+=1)) ;;
-                               *)      ordered=`expr $ordered + 1` ;;
-                               esac
-                               ;;
-                       esac
-                       ;;
-               "$R")   case $ksh_arith in
-                       1)      ((failed+=1)) ;;
-                       *)      failed=`expr $failed + 1` ;;
-                       esac
-                       ;;
-               *)      case $ksh_arith in
-                       1)      ((failed+=1)) ;;
-                       *)      failed=`expr $failed + 1` ;;
-                       esac
-                       case $r in
-                       "$R")   ;;
-                       *)      echo "echo \"$i\" | ( IFS=\"$ifs\" read x y; echo \"(\$x)(\$y)\" ) # expected \"$r\" got \"$g\"" ;;
-                       esac
-                       case $R in
-                       '')     R=$g
-                               ;;
-                       "$g")   ;;
-                       *)      case $ksh_arith in
-                               1)      ((ordered+=1)) ;;
-                               *)      ordered=`expr $ordered + 1` ;;
-                               esac
-                               ;;
-                       esac
-                       ;;
-               esac
-       done
-}
-
-for str in     \
-       '-'     \
-       'a'     \
-       '- -'   \
-       '- a'   \
-       'a -'   \
-       'a b'   \
-       '- - -' \
-       '- - a' \
-       '- a -' \
-       '- a b' \
-       'a - -' \
-       'a - b' \
-       'a b -' \
-       'a b c' \
-
-do
-       IFS=' '
-       set x $str
-
-       shift
-       case $# in
-       0)      continue ;;
-       esac
-
-       f1=$1
-       case $f1 in
-       '-')    f1='' ;;
-       esac
-
-       shift
-       case $# in
-       0)      for d0 in '' ' '
-               do
-                       for d1 in '' ' ' ':' ' :' ': ' ' : '
-                       do
-                               case $f1$d1 in
-                               '')     split "$d0$f1$d1" "[0]" "()()" ;;
-                               ' ')    ;;
-                               *)      split "$d0$f1$d1" "[1]($f1)" "($f1)()" ;;
-                               esac
-                       done
-               done
-               continue
-               ;;
-       esac
-       f2=$1
-       case $f2 in
-       '-')    f2='' ;;
-       esac
-
-       shift
-       case $# in
-       0)      for d0 in '' ' '
-               do
-                       for d1 in ' ' ':' ' :' ': ' ' : '
-                       do
-                               case ' ' in
-                               $f1$d1|$d1$f2)  continue ;;
-                               esac
-                               for d2 in '' ' ' ':' ' :' ': ' ' : '
-                               do
-                                       case $f2$d2 in
-                                       '')     split "$d0$f1$d1$f2$d2" "[1]($f1)" "($f1)()" ;;
-                                       ' ')    ;;
-                                       *)      split "$d0$f1$d1$f2$d2" "[2]($f1)($f2)" "($f1)($f2)" ;;
-                                       esac
-                               done
-                       done
-               done
-               continue
-               ;;
-       esac
-       f3=$1
-       case $f3 in
-       '-')    f3='' ;;
-       esac
-
-       shift
-       case $# in
-       0)      for d0 in '' ' '
-               do
-                       for d1 in ':' ' :' ': ' ' : '
-                       do
-                               case ' ' in
-                               $f1$d1|$d1$f2)  continue ;;
-                               esac
-                               for d2 in ' ' ':' ' :' ': ' ' : '
-                               do
-                                       case $f2$d2 in
-                                       ' ')    continue ;;
-                                       esac
-                                       case ' ' in
-                                       $f2$d2|$d2$f3)  continue ;;
-                                       esac
-                                       for d3 in '' ' ' ':' ' :' ': ' ' : '
-                                       do
-                                               case $f3$d3 in
-                                               '')     split "$d0$f1$d1$f2$d2$f3$d3" "[2]($f1)($f2)" "($f1)($f2)" ;;
-                                               ' ')    ;;
-                                               *)      x=$f2$d2$f3$d3
-                                                       x=${x#' '}
-                                                       x=${x%' '}
-                                                       split "$d0$f1$d1$f2$d2$f3$d3" "[3]($f1)($f2)($f3)" "($f1)($x)"
-                                                       ;;
-                                               esac
-                                       done
-                               done
-                       done
-               done
-               continue
-               ;;
-       esac
-done
-case $ksh_arith in
-1)     ((tests=passed+failed)) ;;
-*)     tests=`expr $passed + $failed` ;;
-esac
-case $ordered in
-0)     ordered="" ;;
-*)     ordered=" ordered $ordered" ;;
-esac
-case $tests in
-$TESTS)        fatal="" ;;
-*)     fatal=" -- fundamental IFS error -- $TESTS tests expected"
-esac
-echo "# tests $tests passed $passed failed $failed$ordered$fatal"
diff --git a/tests/printf.right.raw b/tests/printf.right.raw
deleted file mode 100644 (file)
index 903d147..0000000
Binary files a/tests/printf.right.raw and /dev/null differ
diff --git a/tests/run-gprof b/tests/run-gprof
deleted file mode 100644 (file)
index 87d5086..0000000
+++ /dev/null
@@ -1,53 +0,0 @@
-#! /bin/sh
-
-PATH=.:$PATH   # just to get recho/zecho/printenv if not run via `make tests'
-export PATH
-
-# unset BASH_ENV only if it is set
-[ "${BASH_ENV+set}" = "set" ] && unset BASH_ENV
-# ditto for SHELLOPTS
-#[ "${SHELLOPTS+set}" = "set" ] && unset SHELLOPTS
-
-: ${THIS_SH:=../bash}
-export THIS_SH
-
-rm -f gmon.sum
-
-${THIS_SH} ./version
-
-rm -f /tmp/xx
-
-# prime the pump; gprof complains if gmon.sum is empty
-[ -f bash.gmon ] && gprof -s ${THIS_SH} bash.gmon >/dev/null
-
-echo Any output from any test, unless otherwise noted, indicates a possible anomaly
-
-for x in run-*
-do
-       case $x in
-       $0|run-all|run-minimal|run-gprof)       ;;
-       *.orig|*~) ;;
-       *)      echo $x ; sh $x
-               if [ -f /tmp/bash.gmon ]; then
-                       if [ -f bash.gmon ]; then
-                               gprof -s ${THIS_SH} gmon.sum bash.gmon /tmp/bash.gmon >/dev/null
-                       else
-                               gprof -s ${THIS_SH} gmon.sum /tmp/bash.gmon >/dev/null                          
-                       fi
-               else
-                       gprof -s ${THIS_SH} gmon.sum bash.gmon >/dev/null
-               fi
-               rm -f /tmp/bash.gmon bash.gmon
-               ;;
-       esac
-done
-
-gprof -s ${THIS_SH} gmon.sum ./-specialname.gmon ./ohio-state.gmon > /dev/null
-rm -f ./-specialname.gmon ./ohio-state.gmon
-
-if [ -f specialname.gmon ]; then
-       gprof -s ${THIS_SH} gmon.sum ./specialname.gmon > /dev/null
-       rm -f specialname.gmon
-fi
-
-exit 0
diff --git a/tests/set-e-test b/tests/set-e-test
deleted file mode 100644 (file)
index 1fdf360..0000000
+++ /dev/null
@@ -1,105 +0,0 @@
-if : ; then
-       set -e
-       N=95
-       while :; do
-               # expr returns 1 if expression is null or 0
-               set +e
-               N_MOD_100=`expr $N % 100`
-               set -e
-               echo $N_MOD_100
-               N=`expr $N + 1`
-               if [ $N -eq 110 ]; then
-                       break
-               fi
-       done
-       set +e
-fi
-
-(
-set -e
-false
-echo bad
-)
-echo $?
-
-x=$(
-set -e
-false
-echo bad
-)
-echo $? $x
-
-# command subst should not inherit -e
-set -e
-echo $(false; echo ok)
-
-if set +e
-then
-       false
-fi
-echo hi
-
-set -e
-
-# a failing command in the compound list following a while, until, or
-# if should not cause the shell to exit
-
-while false; do
-       echo hi
-done
-echo while succeeded
-
-x=1
-until (( x == 4 )); do
-       x=4
-done
-echo until succeeded: $x
-
-if false; then
-       echo oops
-fi
-echo if succeeded
-
-# failing commands that are part of an AND or OR list should not
-# cause the shell to exit
-false && echo AND list failed
-echo AND list succeeded
-
-false || echo OR list succeeded
-
-! false
-echo ! succeeded
-
-# make sure eval preserves the state of the -e flag and `!' reserved word
-set -e
-if eval false; then
-       echo oops
-fi
-echo eval succeeded
-
-! eval false
-echo ! eval succeeded -- 1
-
-! eval '(exit 5)'
-echo ! eval succeeded -- 2
-
-set -e
-until builtin false; do echo a; break; done
-echo $?
-
-until eval false; do echo b; break; done
-echo $?
-
-: ${TMPDIR:=/tmp}
-FN=$TMPDIR/set-e-$$
-cat > $FN << EOF
-false
-echo after 1
-false
-EOF
-
-set -e
-until . $FN; do echo a; break; done
-echo $?
-
-rm -f $FN
diff --git a/tests/tilde-tests b/tests/tilde-tests
deleted file mode 100644 (file)
index f5f5309..0000000
+++ /dev/null
@@ -1,66 +0,0 @@
-# this is needed because posix mode restricts tilde expansion to assignment
-# statements preceding a command, instead of the default of expanding all
-# assignment statements on the line (e.g., after `export').  Without this,
-# the next-to-last test fails
-set +o posix
-
-HOME=/usr/xyz
-SHELL=~/bash
-echo ~ch\et
-echo ~/"foo"
-echo "~chet"/"foo"
-echo \~chet/"foo"
-echo \~chet/bar
-echo ~\chet/bar
-echo ~chet""/bar
-echo ":~chet/"
-echo abcd~chet
-echo "SHELL=~/bash"
-echo $SHELL
-echo abcd:~chet
-path=/usr/ucb:/bin:~/bin:~/tmp/bin:/usr/bin
-echo $path
-
-cd /usr
-cd /tmp
-echo ~-
-echo ~+
-
-XPATH=/bin:/usr/bin:.
-
-# yes tilde expansion
-PPATH=$XPATH:~/bin
-echo "$PPATH"
-
-# no tilde expansion
-PPATH="$XPATH:~/bin"
-echo "$PPATH"
-
-# yes tilde expansion
-export PPATH=$XPATH:~/bin
-echo "$PPATH"
-declare -x PPATH=$XPATH:~/bin
-echo "$PPATH"
-
-# no tilde expansion
-export PPATH="$XPATH:~/bin"
-echo "$PPATH"
-declare -x PPATH="$XPATH:~/bin"
-echo "$PPATH"
-
-# more tests of tilde expansion when executing case commands
-case ~ in
-$HOME) echo ok 1;;
-*) echo bad 1 ;;
-esac
-
-case ~ in
-~)     echo ok 2 ;;
-\~)    echo bad 2a ;;
-*)     echo bad 2b ;;
-esac
-
-case $unset in
-"")    echo ok 3 ;;
-*)     echo bad 3 ;;
-esac
diff --git a/tests/time.tests b/tests/time.tests
deleted file mode 100644 (file)
index 06881e9..0000000
+++ /dev/null
@@ -1,22 +0,0 @@
-printf "time /dev/null:\n"
-time ${THIS_SH} /dev/null
-
-printf "\nPOSIX: time -p /dev/null:\n"
-time -p ${THIS_SH} /dev/null
-
-printf "\nBSD time /dev/null:\n"
-TIMEFORMAT=$'\t%1R real\t%1U user\t%1S sys'
-time ${THIS_SH} /dev/null
-
-printf "\nSYSV time /dev/null:\n"
-TIMEFORMAT=$'\nreal\t%1R\nuser\t%1U\nsys\t%1S'
-time ${THIS_SH} /dev/null
-
-printf "\nksh time /dev/null:\n"
-TIMEFORMAT=$'\nreal\t%2lR\nuser\t%2lU\nsys\t%2lS'
-time ${THIS_SH} /dev/null
-
-printf "\ntimes:\n"
-times
-
-exit 0